diff --git a/CHANGELOG.md b/CHANGELOG.md index caaa52c0a..cd87d4cb3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -15,6 +15,27 @@ versions, and the entries below say what each tag does and does not claim. ## Unreleased +- Source packages (#161, SPEC.md §10.5, `PK-01`..`PK-04`, language 1.2 only). + A project declares `[[source_package]]` tables (`package`, `version`, `kind` + `path`, `path`), each naming a member project of the workspace an optional + `lexlean-workspace.toml` at the repository root lists, and imports its + modules by their own Lean names (`\importmodule{LexLeanStd.Text}`). The lock + gains `[[source_package]]` rows (tree digest over the package's manifest and + source files, manifest digest, version, prefix, its own packages) that every + command recomputes; a changed byte or version is `LLC0105` naming both + digests, a pin for an undeclared package `LLC0106`, a module prefix claimed + twice `LLC0107`, a project or path outside the workspace rule `LLC0108` + (a symlink or an escaping path is `LLS8001`), and an import of a package the + scope does not declare `LLR3009`. A package definition is an ordinary + definition of the importing project: its own `production:` roots are not + roots of the importer and nothing is re-exported. `verify` replays the + package modules under the package's prefix, with the package as their + `origin` in the build manifest, the snapshot, and the attestation; `fmt` + never writes a package file. The schema change moves the language-1.2 + compiler-semantics ID once; languages 1.0 and 1.1, and a language-1.2 project + without source packages, keep their bytes apart from that identity. The + register gains `PK-01`..`PK-04` (401 rows with `SL-01` and `LM-01`..`LM-03`, `LM-13`); `PK-05` (the `bootstrap/` pilot + imports `stdlib/`) follows #153 and #160. - The first component of the compiler's own pipeline as language-1.2 source: the exact axiom-output parser (SPEC.md §17.23, §22.5, `BS-01`, #92 step 4; no new diagnostic code, no change to the language-1.2 identity). diff --git a/CONFORMANCE.md b/CONFORMANCE.md index 696c8b338..0b7ba65a3 100644 --- a/CONFORMANCE.md +++ b/CONFORMANCE.md @@ -336,6 +336,15 @@ the error registry does not sanction (R5, `ERRORS.md`). | `OR-07` | `build` | An oracle that was not acquired, whose checkout is not the pin, that did not build, that crashed, was killed, overran its time (and with it everything it started), wrote nothing or an IR defining nothing, or whose generator failed without refusing a program, a fetch that fails leaving nothing that a later run takes for a checkout, a cache that is not the pin discarded and fetched once more, a transient failure of the network tried again twice and a permanent one not, and a comparison over no root or no case, are each unavailable and never validated, which fails the gate on the normative host and is reported as not validated elsewhere, while the oracle's own structured refusals are answers and a tool that is not meant to overrun its time is given a generous one; and a disagreement fails closed with a record of both sides' evidence for every difference. | | `OR-08` | `build` | The oracle is validation evidence and an input to no identity: no file the shipped crate, the language data, the schemas, the compiler project, the committed examples' records, or the authority and ledger files hold names the oracle, its pinned commit, or its digest, so that planting any of them in any of those places fails audit-oracle-isolation; no input of the compiler-semantics ID names it, an oracle field in a build manifest, a preservation record, an attestation, a snapshot, a compiler input, or a GNAF certificate fails its closed schema, and no module of the conformance crate but the oracle's own uses it, so that removing it changes none of them. | +## packages + +| ID | Level | Statement | +| --- | --- | --- | +| `PK-01` | `build` | A language-1.2 project that declares a source package by its identifier, version, kind `path`, and the member directory a `lexlean-workspace.toml` lists locks it by the tree digest of its manifest and source files, its manifest digest, its version, its module prefix, and its own packages, and the configuration and the lock read back to the bytes written; a project without a source package keeps its bytes, and a package of another kind, a source package in another language, a changed byte or version (LLC0105), an undeclared package (LLC0106), a module prefix claimed twice (LLC0107), a project or a package outside the workspace (LLC0108), a path that escapes it, and a symlink (LLS8001) are each refused with the named code. | +| `PK-02` | `build` | A module of a project imports only modules of its own project and modules of the packages the project declares, and a module of a package only modules of itself and of the packages its own manifest declares: a package module is a module of the importing project under its own module prefix, a module of a package the project does not declare fails with LLR3009, and an import cycle through a package fails with LLR3003. | +| `PK-03` | `build` | An importing project builds and verifies under the pinned Lean offline, and its package modules are generated, elaborated, replayed with `leanchecker`, and audited for their exact axioms under the package's module prefix with the package as their origin in the records; the source ID of the project changes with the pins, and no file of the package is written by `fmt`, `build`, or `verify`. | +| `PK-04` | `build` | A production root of the importing project whose closure reaches a definition of a package certifies and exports over that closure as it does for a definition of its own module, the `production:` roots of a package are not roots of the importing project, and the importer publishes no certificate of the package's own. | + ## preservation | ID | Level | Statement | diff --git a/ERRORS.md b/ERRORS.md index 1117215ac..b12724992 100644 --- a/ERRORS.md +++ b/ERRORS.md @@ -88,6 +88,30 @@ Duplicate module or case-folded path collision. Class: `cli-configuration`. Exit code: 2. +## `LLC0105` --- Source package is not the package the lock pins + +A source package's version, source, module prefix, manifest digest, tree digest, or declared packages differ from the lock's row, naming the package and both digests. + +Class: `cli-configuration`. Exit code: 2. + +## `LLC0106` --- Source package undeclared or declared with two sources + +The lock pins a source package the project does not declare, or one identifier names two sources in the closure. + +Class: `cli-configuration`. Exit code: 2. + +## `LLC0107` --- Module prefix claimed by two sources + +A module prefix is claimed by the project and a source package, or by two source packages, equal or one beneath the other, or an import names a module both the project and a package provide. + +Class: `cli-configuration`. Exit code: 2. + +## `LLC0108` --- Source package outside the workspace rule + +A project that declares a source package is outside any workspace or is not a member of it, a package is not a member of the workspace, or the workspace file or a package is malformed. + +Class: `cli-configuration`. Exit code: 2. + ## `LLC0201` --- Production request malformed A production request is not a closed `lexlean/production-request/1` document: an unknown or missing field, another spec, roots, targets, or evidence that are empty, unsorted, or repeated, a root, package, or path that is not of its form, or a package name used twice for one target. @@ -256,6 +280,12 @@ Model artifact bytes violate the declared schema, type, or role. Class: `language`. Exit code: 1. +## `LLR3009` --- Import of a module of a source package the importing scope does not declare + +A module imports a module of a source package that the project, or the package the module belongs to, does not declare. + +Class: `language`. Exit code: 1. + ## `LLS8001` --- Path escape, symlink, special file, or filesystem identity conflict Path escape, symlink, special file, or filesystem identity conflict. diff --git a/README.md b/README.md index 4ef9a76c3..b15e44d90 100644 --- a/README.md +++ b/README.md @@ -104,6 +104,10 @@ nested byte-data declarations are not restricted by interactive defaults. Project child timeout/output limits and full kernel/axiom verification remain mandatory. These are generated backend settings, not caller-provided options. +## Source packages + +A language-1.2 project imports the modules of another project of its workspace without copying them: `[[source_package]]` in `lexlean.toml` names a member directory listed by `lexlean-workspace.toml`, `lexlean.lock` pins the package by the digest of its manifest and source files, every command recomputes the pin, imports are closed to the project's own modules and the declared packages, and `verify` replays the package's modules under its module prefix with the package as their origin (SPEC.md §10.5, `PK-01`..`PK-04`; the workspace the cases use is [tests/packages/workspace](tests/packages/workspace/)). + ## Examples that verify under the pinned toolchain The [compiler/](compiler/) project defines the production realization calculus (SPEC.md §17.14) in LexLean and passes the same gates as an example; its hand-constructed target programs live under [compiler/fixtures/](compiler/fixtures/). Its `Gnaf` module states GNAF requests over that calculus (SPEC.md §17.15): the complete-system universe, machine contract, and objective order, all fixed before any optimizer, with a kernel-checked theorem that the universe is complete. The requests themselves live under [compiler/gnaf/](compiler/gnaf/), and [compiler/gnaf.manifest.json](compiler/gnaf.manifest.json) is the dependency manifest UOR-GNAF §20 requires. Its `Certification` module checks GNAF certificates (SPEC.md §17.18) under [compiler/certificates/](compiler/certificates/): a global optimum, an argmin, or a complete Pareto frontier is certified from evidence for every system of the universe rather than by enumerating it, with the soundness of the checker proved in [compiler/proofs/](compiler/proofs/); local normality, correctness, and representation-minimality are separate, weaker statuses, and an incomplete certificate names its first open obligation. The target fixtures' Rust packages (§17.16) live under [compiler/rust/](compiler/rust/). @@ -138,7 +142,7 @@ just vv # the complete normative acceptance gate (SPEC.md §9.2) just release # vv, then the §30 release criterion; refused until 1.0.0 ``` -All 398 registered conformance IDs are implemented and pass; `just vv` runs clean from a checkout with the pinned toolchain installed. +All 402 registered conformance IDs are implemented and pass; `just vv` runs clean from a checkout with the pinned toolchain installed. The differential against the independent generator `lean4-prod` (SPEC.md §17.19, `OR-01`..`OR-08`) acquires it at its pinned commit: from the checkout `LEXLEAN_ORACLE_DIR` names, or by fetching the commit with `git` into the Cargo target directory (`LEXLEAN_ORACLE_CACHE` overrides), and builds it with the pinned Lean and Rust toolchains. It is validation evidence only and no input to any identity. An oracle that cannot be acquired, is not the pinned files, or fails is unavailable: that fails the gate on Linux x86-64 and is printed as `NOT VALIDATED` elsewhere, and is never reported as agreement. @@ -180,6 +184,7 @@ Every row is validated by `just vv`; the IDs link the claim to its register row, | The runtime of generated Lean as native modules: the portable, collection, model, and reasoning runtimes of language 1.2 are LexLean source that every generated module imports, migrated losslessly and audited against their exact axioms, the released runtime text of languages 1.0 and 1.1 is frozen data equal to their released output, and no other Lean runtime text remains in the compiler but the decoder of core module 2 | `RT-01`..`RT-04` | `build` | | The standard library: language-1.2 source beside the compiler whose members are certified production roots, each validated against Rust's standard library by a seeded differential of its evaluator and rustc realizations; bytes and text over `Bytes` | `SL-01` | `build` | | The bootstrap project: the compiler's own components as language-1.2 source compiled by LexLean's production pipeline to certified Rust packages, the first being the exact axiom-output parser and its closed Lean-name check, each held to the Rust it replaces (the stage-0 oracle) by the committed golden vectors and a seeded differential of its evaluator and rustc realizations, with planted defects detected and the production export committed | `BS-01` | `build` | +| Source packages: a language-1.2 project imports the modules of a locked, content-addressed package of its workspace: `[[source_package]]` and `lexlean-workspace.toml`, the pins in `lexlean.lock` recomputed by every command, imports closed at link, no re-export of a package's production roots, and the package's modules replayed by the importer's `verify` with their origin in the records | `PK-01`..`PK-04` | `build` | | The literal `nat-add-zero` example, the Lean-verified feature examples, and the complete negative fixture suite | `EX-01`..`EX-08` | `build` | | Language-1.2 text components, first slice: tokenizers and their round-trip laws, with the laws carried as one native core module the generated modules import rather than authored Lean text (context windows, text generators, text classifiers, adapters, and composition follow in their own slices and add their rows then) | `LM-01`, `LM-02`, `LM-03`, `LM-13` | `build` | diff --git a/SPEC.md b/SPEC.md index 2a9ec7451..3d81e07df 100644 --- a/SPEC.md +++ b/SPEC.md @@ -703,6 +703,7 @@ A LexLean project contains: - a valid Lake workspace; - one or more `.lex.tex` modules under configured source roots; - zero or more local lexicon packages; +- in language 1.2, zero or more source packages, member projects of the project's workspace that it imports modules from (§10.5); - `.lexlean/`, reserved for generated and verified artifacts. No project file may override the language grammar, backend, verifier sequence, axiom-audit parser, source-map format, or verified artifact set. @@ -748,10 +749,11 @@ The parsed project has one canonical TOML serialization used by `project_config_ 1. scalar top-level keys in the order shown by the schema example; 2. `lexicon_source` tables sorted by `package`, with keys in the order `package`, `kind`, then kind-specific fields; 3. language 1.2 only: `artifact_source` tables sorted by `sha256`, with keys in the order `sha256`, `path`, omitted entirely when there are none, so a project without artifacts keeps its bytes; -4. `[limits]` with keys in the order shown; -5. optional `[pdf]` last, with keys in the order shown; -6. basic quoted strings, decimal integers, arrays with comma-space separators, LF line endings, and one final LF; -7. no comments, blank leading lines, or trailing spaces. +4. language 1.2 only: `source_package` tables sorted by `package`, with keys in the order `package`, `version`, `kind`, `path`, omitted entirely when there are none, so a project without source packages keeps its bytes; +5. `[limits]` with keys in the order shown; +6. optional `[pdf]` last, with keys in the order shown; +7. basic quoted strings, decimal integers, arrays with comma-space separators, LF line endings, and one final LF; +8. no comments, blank leading lines, or trailing spaces. Input whitespace does not affect this canonical serialization. A project may be semantically valid before formatting, but `lexlean lock --check` and repository examples require canonical bytes. @@ -771,6 +773,7 @@ Input whitespace does not affect this canonical serialization. A project may be | `lean_toolchain` | Exactly the language-1.0 toolchain string. | | `lexicon_source` | Unique by package and sorted by package identifier. | | `artifact_source` | Language 1.2 only (another language rejects the field, `LLC0101`): optional `[[artifact_source]]` tables `sha256 = "<64 lowercase hex>"`, `path = ""`, sorted by `sha256`, unique by digest and by path, never beneath the build root. Each names the content-addressed bytes of one model artifact (§17.12); `check`, `build`, `fmt`, and `verify` read the file, confined (§25.1), and require its SHA-256 to equal the configured digest (`LLR3007`). Artifacts are never fetched. | +| `source_package` | Language 1.2 only (another language rejects the field, `LLC0101`): optional `[[source_package]]` tables `package = ""`, `version = ""`, `kind = "path"`, `path = ""`, sorted and unique by `package`, with `package` an identifier of the form of `name` and `version` a string of at most 64 ASCII letters, digits, `.`, `+`, and `-` that begins with a letter or digit. `path` is resolved from the workspace root, not the project's (§10.5); a kind other than `path` is `LLC0101`, and a path that is absolute or has a `..` segment escapes the workspace and is `LLS8001`. | | `limits` | Every listed positive integer is required. There are no hidden compiler defaults. | #### Lexicon-source forms @@ -848,6 +851,31 @@ The project `lean-toolchain` MUST contain the exact toolchain string. `lexlean l If both Lake configuration forms exist, locking fails. Verification requires the recorded files to match and requires all manifest dependencies to be locally available. +### 10.5 Source packages + +A language-1.2 project imports the modules of another project, a *source package*, without copying them. A source package is a project: its own `lexlean.toml` names its `module_prefix`, its `source_roots`, its language (1.2), and its own source packages, and `entrypoints` may name any of its modules, since a library has no distinguished one. Its modules keep its prefix: a module `Text` of a package whose prefix is `LexLeanStd` is the Lean module `LexLeanStd.Text` in every project that imports it. Nothing is fetched: a package is read from a directory of the workspace, `kind` is `path` and nothing else, and a package of any other kind is refused rather than treated as a later extension. + +**The workspace.** Until now every read of a project lay inside the project (§25.1). A package lives beside the projects that use it, so one widening is made, stated narrowly. An optional `lexlean-workspace.toml` at the root of a repository lists the member project directories: + +```toml +spec = "lexlean/workspace/1" +members = ["app", "base", "lib"] +``` + +`members` are unique, sorted, workspace-relative directories (no `..`, no leading separator), and the file carries no comment. The workspace of a project is the nearest proper ancestor of its canonical root that holds the file. A project that declares a source package must be a member of its workspace, and a `source_package` path must name a member, resolved from the workspace root. A project outside any workspace, a project its workspace does not list, a path that names no member, and a malformed workspace file are `LLC0108`: a stray file higher in the tree grants nothing to a project it does not list. No path component from the workspace root to a package may be a symlink, and a path with a `..` segment is an escape; both are `LLS8001`. Of a package, only its `lexlean.toml` and the files beneath its `source_roots` are read, and a symlink or a special file among them is `LLS8001`. A project that declares no source package reads nothing outside its own root, and has no workspace. + +**The manifest of a package** declares language 1.2, no `artifact_source`, no `[pdf]`, and only builtin `lexicon_source`s: those would read files outside what the pin covers, or glossaries the importing project does not have. A violation is `LLC0101`. The glossaries a package module uses (`\useglossary`) are resolved in the closure of the importing project, so a package that uses one the project does not load fails `LLR3001`. + +**The pin.** `lexlean.lock` (§11) carries one `[[source_package]]` row for every package in the transitive closure of the project's declarations, sorted by `id`: the identifier, the declared `version`, `kind`, the workspace-relative `source`, the package's `module_prefix`, `tree_sha256` over the package's `lexlean.toml` and every regular file beneath its `source_roots` (the tree digest of §11.5, over package-relative paths in bytewise order), `manifest_sha256` over its `lexlean.toml`, and `imports`, the `id@version` of the packages its own manifest declares, sorted. The digests are recomputed by every command: `lock --check`, `check`, `fmt`, `build`, and `verify` read the package and require the lock's row to be the package as it now is. A changed byte, a changed version, source, prefix, or declared package is `LLC0105`, naming the package and the locked and the found values, before anything is linked. A row for a package the closure of the project's declarations does not reach is `LLC0106`, and so is one identifier with two sources. `lexlean lock` writes the rows, and a package that depends on itself or on the importing project is `LLR3003`. + +**One source per module prefix.** The importing project's prefix and each package's must not be equal, and none may lie beneath another (`a.b` is beneath `a`); two sources that claim a prefix are `LLC0107`. + +**Closed imports.** A module of the importing project may import modules of the project, written as before, and modules of the packages the project declares itself, written with the package's prefix: `\importmodule{LexLeanStd.Text}`. A module of a package may import the modules of that package, written as inside the package, and the modules of the packages its own manifest declares, written with their prefixes. A module of a package the importing scope does not declare, though the closure holds it, is `LLR3009`; one no source provides is `LLR3005`; a name both the scope's own modules and a declared package provide is `LLC0107`; a cycle of packages or of modules is `LLR3003`. The package's modules that no import reaches are not linked. Inside the linked project a package module is named by its Lean name, `LexLeanStd.Text`, which is its key in every record; its references to a sibling are read under that key. + +**Production.** A package's `production:` clauses make roots of the package project, built when the package is built. Imported by another project, a package definition is an ordinary definition: no module of a package is analysed for production roots, the certificates are those of the closure of the importing project's roots, and the package's own certified roots are not republished by the importer. There is no re-export. + +**Verification and identity.** The modules of every package the project reaches are generated, elaborated, replayed with `leanchecker`, and audited as part of the importing project's `verify`, under the package's prefix. The build manifest's module rows, the semantic snapshot's modules, and the attestation (`origins`, by Lean module) name the package as their `origin`; the document of a package module is linked and rendered like any other, and `fmt` never rewrites a package file, which is the package's own. Nothing crosses runs (§9.4): there is no cache of a built package. The source ID (§21.3) hashes the canonical lock, and so the pins, and the bytes of every linked package module. `source_package` and the lock rows are part of the language-1.2 schemas, so they move the language-1.2 compiler-semantics ID (§21.2) once; languages 1.0 and 1.1 are unchanged, and so is a language-1.2 project that declares no source package, apart from that identity. + --- ## 11. Lock file @@ -892,6 +920,20 @@ imports = ["lexlean.core@1.0.0"] An optional `[pdf]` lock record mirrors the configured provider and records the hashes of every declared resource. +Language 1.2 only, a project that declares source packages (§10.5) has, after the `[[package]]` rows, one `[[source_package]]` row for every package in the transitive closure of its declarations, and a project that declares none has none: + +```toml +[[source_package]] +id = "lib" +version = "1.0.0" +kind = "path" +source = "lib" +module_prefix = "PkgLib" +tree_sha256 = "..." +manifest_sha256 = "..." +imports = ["base@1.0.0"] +``` + Language-1.2 model artifacts (§10.1, §17.12) have no lock rows: each is pinned by its `sha256` in `lexlean.toml`, whose canonical bytes the lock's project digest and the source ID cover, and every `check`, `build`, `fmt`, and @@ -901,6 +943,7 @@ digest and the source ID cover, and every `check`, `build`, `fmt`, and - `workspace_file` rows sort by `path`. - `package` rows sort by `(id, version)`. +- `source_package` rows sort by `id`, and their `imports` by `id`. - package `imports` sort lexicographically and contain no duplicates. - all keys use the order shown by the schema formatter. - lowercase hexadecimal is mandatory. @@ -8249,7 +8292,7 @@ LexLean: - canonicalizes the project root once; - rejects non-UTF-8 logical paths; -- rejects symlinks in source roots, lexicon packages, lock inputs, build roots, and declared PDF resources; +- rejects symlinks in source roots, lexicon packages, source packages (§10.5), lock inputs, build roots, and declared PDF resources; - rejects any normalized `..` escape; - rejects duplicate files by filesystem identity; - detects case-fold collisions before output; @@ -8350,6 +8393,10 @@ The initial registry MUST include at least these exact codes and meanings: | `LLC0102` | Missing, stale, or noncanonical lock file. | | `LLC0103` | Unsupported schema or language version. | | `LLC0104` | Duplicate module or case-folded path collision. | +| `LLC0105` | Source package is not the package the lock pins (§10.5). | +| `LLC0106` | Source package undeclared, or declared with two sources (§10.5). | +| `LLC0107` | Module prefix claimed by two sources (§10.5). | +| `LLC0108` | Source package outside the workspace rule (§10.5). | | `LLC0201` | Production request malformed (§24.7). | | `LLC0202` | Requested root is not a production root (§24.7). | | `LLC0203` | Unknown or mismatched production target (§24.7). | @@ -8372,6 +8419,7 @@ The initial registry MUST include at least these exact codes and meanings: | `LLR3006` | Unsafe canonical form or raw renderer output. | | `LLR3007` | Model artifact unavailable or its digest or length mismatched (§10.1, §17.12). | | `LLR3008` | Model artifact bytes violate the declared schema, type, or role (§17.12). | +| `LLR3009` | Import of a module of a source package the importing scope does not declare (§10.5). | | `LLT4001` | Arity, binder, category, or conservative type mismatch. | | `LLT4002` | Unresolved overloaded entry. | | `LLT4003` | External-interface probe mismatch. | @@ -9496,14 +9544,16 @@ Every row below is normative, has honesty level `build`, and MUST be copied byte | `RT-04` | `runtime` | No Lean runtime text remains in the language-1.2 compiler: a generated language-1.2 module imports the runtime modules whose constants it names and declares nothing under a runtime namespace, and the only Lean runtime text in the compiler's source outside unit-test items, in one string literal or in several written together, is the decoder of core module 2, which loads native modules and so cannot be one; a runtime text planted in any of its shapes, raw or escaped, with or without a namespace line, split across literals, or after a test module, is found. | §17.12, §18.1 | | `SL-01` | `stdlib` | The standard library's `Text` module is language-1.2 source whose seven members over `Bytes` (`startsWith`, `endsWith`, `trim`, `lines`, `splitOn`, `joinWith`, `find`) are production roots eligible for `rust-std` with exactly their declared effects; each member's lowered program under the calculus evaluator and its rendered `rust-std` package under the pinned rustc agree with Rust's `starts_with`, `ends_with`, `trim_ascii`, `lines`, `split`, `join`, and `find` on a seeded corpus; a planted defect in a member is detected; and the certified packages the production export publishes for it are the committed ones. | §17.22 | | `BS-01` | `bootstrap` | The axiom-output parser of SPEC.md §22.5 is language-1.2 source in the `bootstrap/` project: `parseAuditOutput` and the closed Lean-name check `isClosedLeanName` are production roots eligible for `rust-std` with exactly their declared effects; the parser's lowered program under the calculus evaluator agrees with the Rust parser `verify::axiom` on the result, the rejection message, and the attributed declaration for every committed golden vector (accepted, accepted-wrapped, and rejected); both roots' rendered `rust-std` packages under the pinned rustc agree with the Rust oracle on a large seeded corpus of generated, wrapped, and mutated audit outputs with no disagreement; a planted defect in the source is detected; and the certified packages the production export publishes for the project are the committed ones. | §17.23, §22.5 | - - +| `PK-01` | `packages` | A language-1.2 project that declares a source package by its identifier, version, kind `path`, and the member directory a `lexlean-workspace.toml` lists locks it by the tree digest of its manifest and source files, its manifest digest, its version, its module prefix, and its own packages, and the configuration and the lock read back to the bytes written; a project without a source package keeps its bytes, and a package of another kind, a source package in another language, a changed byte or version (LLC0105), an undeclared package (LLC0106), a module prefix claimed twice (LLC0107), a project or a package outside the workspace (LLC0108), a path that escapes it, and a symlink (LLS8001) are each refused with the named code. | §10.5, §11.1, §25.1 | +| `PK-02` | `packages` | A module of a project imports only modules of its own project and modules of the packages the project declares, and a module of a package only modules of itself and of the packages its own manifest declares: a package module is a module of the importing project under its own module prefix, a module of a package the project does not declare fails with LLR3009, and an import cycle through a package fails with LLR3003. | §10.5, §15.1 | +| `PK-03` | `packages` | An importing project builds and verifies under the pinned Lean offline, and its package modules are generated, elaborated, replayed with `leanchecker`, and audited for their exact axioms under the package's module prefix with the package as their origin in the records; the source ID of the project changes with the pins, and no file of the package is written by `fmt`, `build`, or `verify`. | §10.5, §21.3, §22 | +| `PK-04` | `packages` | A production root of the importing project whose closure reaches a definition of a package certifies and exports over that closure as it does for a definition of its own module, the `production:` roots of a package are not roots of the importing project, and the importer publishes no certificate of the package's own. | §10.5, §17.13 | | `LM-01` | `language-models` | A `tokenizer` is a closed language-1.2 declaration whose scheme is `byte_level` or `longest_match` and whose vocabulary is a #29 artifact with role `vocabulary` and schema `utf8_lines`; tokens are `uint32`, the single bytes are the ids 0..255 present always as the byte fallback, the vocabulary pieces take the ids from 256 in artifact order, and the declaration elaborates to `encode` and `decode` over `bytes` together with `encodeText` and `decodeText` over `string` through `utf8_encode` and `utf8_decode`, so a scheme outside the closed enumeration, a vocabulary whose role or schema is not the one stated, or a token outside `uint32` is refused as a schema violation (`LLT4001`) or by the artifact rules (`LLR3007`). | §17.12 | | `LM-02` | `language-models` | A tokenizer's laws are generated and kernel-checked: `roundtrip` states that for every byte string `b`, `decode (encode b)` is `some b`; `text_roundtrip` states the same over `string`; and `in_range` states that every token a decode produces indexes the vocabulary, so the round trip also fixes the token boundaries, and a tokenizer whose elaboration does not close these laws fails verification. | §17.12 | | `LM-03` | `language-models` | Text that is not valid UTF-8 is refused and never tokenized: an artifact whose bytes do not decode under the `utf8_lines` schema — invalid UTF-8, a CR, or a missing final LF — fails by its artifact rules before any byte is decoded, and a text offered to `encodeText` that is not valid UTF-8 is refused rather than transcoded. | §17.12 | | `LM-13` | `language-models` | The text laws a tokenizer elaborates through are LexLean source and not authored text: the module that states them is one language-1.2 native core module of the embedded `language/text-1.2` project, the project holds no file of Lean source, no independently authored Lean file anywhere in the release tree declares the `LexLeanText` namespace or lies under its module root, and the one-time migration input is absent; the registry lists only that module, the declarations and their exact axiom policies are read from its native data, which the compiler embeds and hashes into the language-1.2 semantics, and a module that declares a text component imports the generated module rather than splicing any Lean text. | §17.10, §17.12 | -**Total required capability IDs:** 398. +**Total required capability IDs:** 402. No row may be downgraded to `some-true` or `open`. Upstream Lean facts are ledger/authority rows, not substitutions for these build behaviors. diff --git a/VERIFICATION.md b/VERIFICATION.md index 90529fa3c..77b079879 100644 --- a/VERIFICATION.md +++ b/VERIFICATION.md @@ -8350,3 +8350,54 @@ mismatch (`LLV7013`); the module binds such a call to a `let` first, and spells a decimal without `iterate_until`. Lean's exact axiom policy was aligned declaration by declaration (`Quot.sound`, `propext` for the `UInt8` range checks and byte comparison, as the spike on #92 measured). +### source packages can fail + +The cases of the `packages` suite (`PK-01`..`PK-04`, SPEC.md §10.5) were written +before the implementation (R3). `conformance_pk_01` first failed, with the +configuration, the workspace, and the pins in place and the pin comparison not +yet in `lock --check`, at its first refusal: + +```text +expected LLC0105, found ["LLC0102"] (LLC0102: lexlean.lock is stale or noncanonical; run `lexlean lock`) +``` + +Each defect below was planted, the named case run with +`cargo test -p repo-conformance --test conformance -- --exact --test-threads=1`, +and the defect removed. The observed lines are the cases' own. + +| Planted defect | Case | Observed | +| --- | --- | --- | +| the tree digest covers the manifest alone (a source file of the package is not pinned) | `conformance_pk_01` | `the project is refused`: a changed byte of the package is not refused | +| `check_pins` is not called when linking (a lock read before the package changed is trusted) | `conformance_pk_01` | `linking reads the package again` | +| a project the workspace file does not list is accepted | `conformance_pk_01` | `expected LLC0108, found ["LLC0102"]` | +| a symlink in the path of a package is not refused as such | `conformance_pk_01` | `expected LLS8001, found ["LLC0108"]` | +| two sources may claim one module prefix | `conformance_pk_01` | `two sources claim PkgLib` | +| an import may name a module of any package of the closure | `conformance_pk_02` | `check fails` (the undeclared import is accepted) | +| the production roots of a package are analysed | `conformance_pk_04` | `` `PkgBase.Core`: only the importing project's own roots are analysed `` (left: true) | +| `fmt` visits the modules of a package | `conformance_pk_03` | `` `base:src`: No such file or directory `` (it reads the package as if it were the project) | +| the build manifest names no origin | `conformance_pk_03` | `the manifest names the origin of a package module` | +| the attestation names no origin | `conformance_pk_03` | `the modules of a package carry the package as their origin` (left: `Null`) | + +One plant was not caught where it was first made: removing `check_pins` from +`load_locked` alone left `conformance_pk_03` green, because `read_current_lock` +makes the same comparison first. The comparison at link is the one that reads +the package after the lock was read, so `conformance_pk_01` now links with a +lock read before a byte of the package changed and requires `LLC0105`; the +plant above is the one it caught. + +Measured on Linux x86-64 with Lean 4.32.1: `conformance_pk_01` and +`conformance_pk_02` run in under 3 s, `conformance_pk_03` (the importing +project formatted, built, and verified, with every module replayed and audited) +in 185 s, and `conformance_pk_04` (a root whose closure reaches a definition of +`lib` and of `base` certified and exported) in 188 s. + +Languages 1.0 and 1.1 are unchanged. After the schema change, in a scratch +checkout whose language-1.2 locks were regenerated, `cargo xtask check-golden +--write` left every file of `nat-add-zero`, `peano-arithmetic`, +`propositional-logic`, `list-induction`, `semantic-1.1`, and `uor-atlas` +untouched. The language-1.2 example `language-1.2`, which declares no source +package, differs from its committed oracles in identities and the digests +derived from them alone (the compiler-semantics, source, semantic, and build +IDs, and the digests of its lock and its source map); the committed +language-1.2 records are regenerated in the wave the maintainer names, not by +this change. diff --git a/bootstrap/expected/build/manifest.json b/bootstrap/expected/build/manifest.json index ad3ffad65..622821b29 100644 --- a/bootstrap/expected/build/manifest.json +++ b/bootstrap/expected/build/manifest.json @@ -1 +1 @@ -{"build_id":"926150e003cfd6aba9deb2efae713e6477fe971dece782542cb30b9eb140fa1d","compiler":{"semantics_id":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","version":"0.3.0"},"inputs":[{"byte_length":2684,"kind":"lexicon","path":"embedded","sha256":"3bc0fb09d706ffa7d5a1363302ea87c049acc7c7dcafde63c62682620c11be9b"},{"byte_length":14885,"kind":"lexicon","path":"embedded","sha256":"e0db021e01b91d651c43921d66f6b0023c8efbf17cac2ec53192ce5305e4e1ac"},{"byte_length":36197,"kind":"lexicon","path":"embedded","sha256":"827317cae68c162f3a96c8a8de4e53ab348e7d3724fd2b834fa85ecde1a1b392"},{"byte_length":1597,"kind":"lock","path":"lexlean.lock","sha256":"41d45ae532cd8911bf471895ede85deab5002ad61d6d0b646c1bdb013e85b88e"},{"byte_length":649,"kind":"project-config","path":"lexlean.toml","sha256":"7165f2fed5d1b4ece471ea2b9fdbf107c48272617d8bd5d3875f719e2aecc0ef"},{"byte_length":27337,"kind":"source","path":"src/AxiomOutput.lex.tex","sha256":"9f046a50790b9f317a465924703c96839422f20e631a6f6162cc6514955e8567"},{"byte_length":7566,"kind":"source","path":"src/Text.lex.tex","sha256":"2c97a6b06a1c39aa660edc43f366b753175279f9dc99bbea9bb7f900eb1b9a07"}],"language":"1.2","lean_toolchain":"leanprover/lean4:v4.32.1","modules":[{"lean_module":"LexLeanBoot.AxiomOutput","module":"AxiomOutput","source_path":"src/AxiomOutput.lex.tex"},{"lean_module":"LexLeanBoot.Text","module":"Text","source_path":"src/Text.lex.tex"}],"outputs":[{"byte_length":24570,"kind":"coverage","path":"coverage/LexLeanBoot/AxiomOutput.coverage.json","sha256":"6744a9da2d8960d1c47f4b6eb6a3daeb067b18f762068dbfc001e243edd4305a"},{"byte_length":11380,"kind":"coverage","path":"coverage/LexLeanBoot/Text.coverage.json","sha256":"c0881d9014e5b68860d66a91e8b2c98df6d7eb12ec496e96a61919d213135fbe"},{"byte_length":24423,"kind":"lean","path":"modules/LexLeanBoot/AxiomOutput.lean","sha256":"d20ec2a16744b6e60acf522fdcb0a630aff7fbcab276b9195877dde56a6fb6ec"},{"byte_length":7430,"kind":"lean","path":"modules/LexLeanBoot/Text.lean","sha256":"e8b2e69674901a2cc22df8ed6d57c9ff866a6183af1ca1ea0d9349a9d692774a"},{"byte_length":10609,"kind":"lexicon-closure","path":"lexicons/AxiomOutput.closure.json","sha256":"1c324105489cc204750e32e49064ccecc7492da50c3d06e2cd742f46a2453e49"},{"byte_length":10602,"kind":"lexicon-closure","path":"lexicons/Text.closure.json","sha256":"1ad76d0ba0c5e4c958f3593285ad434936f9745f4c422cdd592be86889c16500"},{"byte_length":21662,"kind":"map","path":"maps/LexLeanBoot/AxiomOutput.map.json","sha256":"81a5b4632cb6083019db91800e5305232e3412a215b6926ae33146b9932ad2c1"},{"byte_length":6809,"kind":"map","path":"maps/LexLeanBoot/Text.map.json","sha256":"47bfba5ec052f2bcc66007071e89d8f20d11905f84a45f76bf85d5aa5ff0bd77"},{"byte_length":82621,"kind":"production-eligibility","path":"production/LexLeanBoot/AxiomOutput.eligibility.json","sha256":"2b52cea44f9fd8ee919dd859dd61b3080b169c1beacc08bf659506b40a0967e4"},{"byte_length":41576,"kind":"tex","path":"modules/LexLeanBoot/AxiomOutput.tex","sha256":"ad135d29ad26672ffd88c07d46e3079dc37ba65c78e24ff417171cd09749b7f3"},{"byte_length":12481,"kind":"tex","path":"modules/LexLeanBoot/Text.tex","sha256":"d4de10930e392066953a378eb6d932711017de2316051cc07db8d0f2596722b9"}],"project":"bootstrap","selection":["AxiomOutput","Text"],"semantic_id":"adb40bbfc73b1dc6b7a95dab0c348a2752ede8bc8cffbc4bfb49bce333d9aceb","source_id":"3f41dc0286cbb4e5618c5f0a330c60e2e4f7245869b4343f0b3859285a3d4f7e","spec":"lexlean/build-manifest/1"} +{"build_id":"4dc6de8d0d733053f79e4947163e50ad68f64adc4b3507643cc6790f2fe55431","compiler":{"semantics_id":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","version":"0.3.0"},"inputs":[{"byte_length":2684,"kind":"lexicon","path":"embedded","sha256":"3bc0fb09d706ffa7d5a1363302ea87c049acc7c7dcafde63c62682620c11be9b"},{"byte_length":14885,"kind":"lexicon","path":"embedded","sha256":"e0db021e01b91d651c43921d66f6b0023c8efbf17cac2ec53192ce5305e4e1ac"},{"byte_length":36197,"kind":"lexicon","path":"embedded","sha256":"827317cae68c162f3a96c8a8de4e53ab348e7d3724fd2b834fa85ecde1a1b392"},{"byte_length":1597,"kind":"lock","path":"lexlean.lock","sha256":"88207b13daf7c5b83305e6e6244852f57227a11ae960433f8554cfac69c7a60b"},{"byte_length":649,"kind":"project-config","path":"lexlean.toml","sha256":"7165f2fed5d1b4ece471ea2b9fdbf107c48272617d8bd5d3875f719e2aecc0ef"},{"byte_length":27337,"kind":"source","path":"src/AxiomOutput.lex.tex","sha256":"9f046a50790b9f317a465924703c96839422f20e631a6f6162cc6514955e8567"},{"byte_length":7566,"kind":"source","path":"src/Text.lex.tex","sha256":"2c97a6b06a1c39aa660edc43f366b753175279f9dc99bbea9bb7f900eb1b9a07"}],"language":"1.2","lean_toolchain":"leanprover/lean4:v4.32.1","modules":[{"lean_module":"LexLeanBoot.AxiomOutput","module":"AxiomOutput","source_path":"src/AxiomOutput.lex.tex"},{"lean_module":"LexLeanBoot.Text","module":"Text","source_path":"src/Text.lex.tex"}],"outputs":[{"byte_length":24570,"kind":"coverage","path":"coverage/LexLeanBoot/AxiomOutput.coverage.json","sha256":"6744a9da2d8960d1c47f4b6eb6a3daeb067b18f762068dbfc001e243edd4305a"},{"byte_length":11380,"kind":"coverage","path":"coverage/LexLeanBoot/Text.coverage.json","sha256":"c0881d9014e5b68860d66a91e8b2c98df6d7eb12ec496e96a61919d213135fbe"},{"byte_length":24423,"kind":"lean","path":"modules/LexLeanBoot/AxiomOutput.lean","sha256":"d20ec2a16744b6e60acf522fdcb0a630aff7fbcab276b9195877dde56a6fb6ec"},{"byte_length":7430,"kind":"lean","path":"modules/LexLeanBoot/Text.lean","sha256":"e8b2e69674901a2cc22df8ed6d57c9ff866a6183af1ca1ea0d9349a9d692774a"},{"byte_length":10609,"kind":"lexicon-closure","path":"lexicons/AxiomOutput.closure.json","sha256":"1c324105489cc204750e32e49064ccecc7492da50c3d06e2cd742f46a2453e49"},{"byte_length":10602,"kind":"lexicon-closure","path":"lexicons/Text.closure.json","sha256":"1ad76d0ba0c5e4c958f3593285ad434936f9745f4c422cdd592be86889c16500"},{"byte_length":21662,"kind":"map","path":"maps/LexLeanBoot/AxiomOutput.map.json","sha256":"372a84eaaa1754de94d4e43daa98418b3c0ffb4a1f5c33e6756e6a6aa0448c43"},{"byte_length":6809,"kind":"map","path":"maps/LexLeanBoot/Text.map.json","sha256":"c83503e77bc94eea41bd0f22f4a20515f11b518d3384568faac644e6943cdc51"},{"byte_length":82621,"kind":"production-eligibility","path":"production/LexLeanBoot/AxiomOutput.eligibility.json","sha256":"2b52cea44f9fd8ee919dd859dd61b3080b169c1beacc08bf659506b40a0967e4"},{"byte_length":41576,"kind":"tex","path":"modules/LexLeanBoot/AxiomOutput.tex","sha256":"ad135d29ad26672ffd88c07d46e3079dc37ba65c78e24ff417171cd09749b7f3"},{"byte_length":12481,"kind":"tex","path":"modules/LexLeanBoot/Text.tex","sha256":"d4de10930e392066953a378eb6d932711017de2316051cc07db8d0f2596722b9"}],"project":"bootstrap","selection":["AxiomOutput","Text"],"semantic_id":"5ba510b7049a3e59c5f1ffb1f0a6611dd35ecbdb9904f2d3213052229b253f48","source_id":"d24d87e6939b30919be5d863ae8caee196592ffc1481d8490690c0f435e12acf","spec":"lexlean/build-manifest/1"} diff --git a/bootstrap/expected/build/maps/LexLeanBoot/AxiomOutput.map.json b/bootstrap/expected/build/maps/LexLeanBoot/AxiomOutput.map.json index dad20d792..b19a685ba 100644 --- a/bootstrap/expected/build/maps/LexLeanBoot/AxiomOutput.map.json +++ b/bootstrap/expected/build/maps/LexLeanBoot/AxiomOutput.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/LexLeanBoot/AxiomOutput.lean"},{"id":1,"kind":"tex","path":"modules/LexLeanBoot/AxiomOutput.tex"}],"mappings":[{"artifact":0,"gen_end":316,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":27337,"src_start":0},{"artifact":0,"gen_end":433,"gen_start":316,"node":1,"role":"declaration","source":0,"src_end":346,"src_start":140},{"artifact":0,"gen_end":524,"gen_start":433,"node":2,"role":"declaration","source":0,"src_end":504,"src_start":348},{"artifact":0,"gen_end":731,"gen_start":524,"node":3,"role":"declaration","source":0,"src_end":778,"src_start":506},{"artifact":0,"gen_end":842,"gen_start":731,"node":4,"role":"declaration","source":0,"src_end":921,"src_start":780},{"artifact":0,"gen_end":973,"gen_start":842,"node":5,"role":"declaration","source":0,"src_end":1072,"src_start":923},{"artifact":0,"gen_end":1079,"gen_start":973,"node":6,"role":"declaration","source":0,"src_end":1217,"src_start":1074},{"artifact":0,"gen_end":1257,"gen_start":1079,"node":7,"role":"declaration","source":0,"src_end":1441,"src_start":1219},{"artifact":0,"gen_end":1479,"gen_start":1257,"node":8,"role":"declaration","source":0,"src_end":1708,"src_start":1443},{"artifact":0,"gen_end":1647,"gen_start":1479,"node":9,"role":"declaration","source":0,"src_end":1921,"src_start":1710},{"artifact":0,"gen_end":1852,"gen_start":1647,"node":10,"role":"declaration","source":0,"src_end":2197,"src_start":1923},{"artifact":0,"gen_end":2178,"gen_start":1852,"node":11,"role":"declaration","source":0,"src_end":2597,"src_start":2199},{"artifact":0,"gen_end":2416,"gen_start":2178,"node":12,"role":"declaration","source":0,"src_end":2897,"src_start":2599},{"artifact":0,"gen_end":2695,"gen_start":2416,"node":13,"role":"declaration","source":0,"src_end":3228,"src_start":2899},{"artifact":0,"gen_end":3012,"gen_start":2695,"node":14,"role":"declaration","source":0,"src_end":3587,"src_start":3230},{"artifact":0,"gen_end":3351,"gen_start":3012,"node":15,"role":"declaration","source":0,"src_end":4049,"src_start":3589},{"artifact":0,"gen_end":3623,"gen_start":3351,"node":16,"role":"declaration","source":0,"src_end":4434,"src_start":4051},{"artifact":0,"gen_end":3865,"gen_start":3623,"node":17,"role":"declaration","source":0,"src_end":4697,"src_start":4436},{"artifact":0,"gen_end":4103,"gen_start":3865,"node":18,"role":"declaration","source":0,"src_end":4998,"src_start":4699},{"artifact":0,"gen_end":5635,"gen_start":4103,"node":19,"role":"declaration","source":0,"src_end":6529,"src_start":5000},{"artifact":0,"gen_end":6158,"gen_start":5635,"node":20,"role":"declaration","source":0,"src_end":7003,"src_start":6531},{"artifact":0,"gen_end":6266,"gen_start":6158,"node":21,"role":"declaration","source":0,"src_end":7180,"src_start":7005},{"artifact":0,"gen_end":6599,"gen_start":6266,"node":22,"role":"declaration","source":0,"src_end":7580,"src_start":7182},{"artifact":0,"gen_end":7100,"gen_start":6599,"node":23,"role":"declaration","source":0,"src_end":8094,"src_start":7582},{"artifact":0,"gen_end":7359,"gen_start":7100,"node":24,"role":"declaration","source":0,"src_end":8390,"src_start":8096},{"artifact":0,"gen_end":7757,"gen_start":7359,"node":25,"role":"declaration","source":0,"src_end":8760,"src_start":8392},{"artifact":0,"gen_end":8100,"gen_start":7757,"node":26,"role":"declaration","source":0,"src_end":9103,"src_start":8762},{"artifact":0,"gen_end":8627,"gen_start":8100,"node":27,"role":"declaration","source":0,"src_end":9615,"src_start":9105},{"artifact":0,"gen_end":8931,"gen_start":8627,"node":28,"role":"declaration","source":0,"src_end":9959,"src_start":9617},{"artifact":0,"gen_end":9706,"gen_start":8931,"node":29,"role":"declaration","source":0,"src_end":10720,"src_start":9961},{"artifact":0,"gen_end":9909,"gen_start":9706,"node":30,"role":"declaration","source":0,"src_end":11020,"src_start":10722},{"artifact":0,"gen_end":10192,"gen_start":9909,"node":31,"role":"declaration","source":0,"src_end":11336,"src_start":11022},{"artifact":0,"gen_end":10379,"gen_start":10192,"node":32,"role":"declaration","source":0,"src_end":11589,"src_start":11338},{"artifact":0,"gen_end":10758,"gen_start":10379,"node":33,"role":"declaration","source":0,"src_end":11943,"src_start":11591},{"artifact":0,"gen_end":10980,"gen_start":10758,"node":34,"role":"declaration","source":0,"src_end":12164,"src_start":11945},{"artifact":0,"gen_end":12501,"gen_start":10980,"node":35,"role":"declaration","source":0,"src_end":13333,"src_start":12166},{"artifact":0,"gen_end":12916,"gen_start":12501,"node":36,"role":"declaration","source":0,"src_end":13711,"src_start":13335},{"artifact":0,"gen_end":13277,"gen_start":12916,"node":37,"role":"declaration","source":0,"src_end":14128,"src_start":13713},{"artifact":0,"gen_end":13362,"gen_start":13277,"node":38,"role":"declaration","source":0,"src_end":14293,"src_start":14130},{"artifact":0,"gen_end":13575,"gen_start":13362,"node":39,"role":"declaration","source":0,"src_end":14563,"src_start":14295},{"artifact":0,"gen_end":14311,"gen_start":13575,"node":40,"role":"declaration","source":0,"src_end":15445,"src_start":14565},{"artifact":0,"gen_end":14933,"gen_start":14311,"node":41,"role":"declaration","source":0,"src_end":16223,"src_start":15447},{"artifact":0,"gen_end":15218,"gen_start":14933,"node":42,"role":"declaration","source":0,"src_end":16598,"src_start":16225},{"artifact":0,"gen_end":15496,"gen_start":15218,"node":43,"role":"declaration","source":0,"src_end":16944,"src_start":16600},{"artifact":0,"gen_end":15747,"gen_start":15496,"node":44,"role":"declaration","source":0,"src_end":17191,"src_start":16946},{"artifact":0,"gen_end":16249,"gen_start":15747,"node":45,"role":"declaration","source":0,"src_end":17873,"src_start":17193},{"artifact":0,"gen_end":16912,"gen_start":16249,"node":46,"role":"declaration","source":0,"src_end":18754,"src_start":17875},{"artifact":0,"gen_end":17027,"gen_start":16912,"node":47,"role":"declaration","source":0,"src_end":18910,"src_start":18756},{"artifact":0,"gen_end":17194,"gen_start":17027,"node":48,"role":"declaration","source":0,"src_end":19135,"src_start":18912},{"artifact":0,"gen_end":17335,"gen_start":17194,"node":49,"role":"declaration","source":0,"src_end":19339,"src_start":19137},{"artifact":0,"gen_end":17522,"gen_start":17335,"node":50,"role":"declaration","source":0,"src_end":19550,"src_start":19341},{"artifact":0,"gen_end":18024,"gen_start":17522,"node":51,"role":"declaration","source":0,"src_end":20200,"src_start":19552},{"artifact":0,"gen_end":18630,"gen_start":18024,"node":52,"role":"declaration","source":0,"src_end":20831,"src_start":20202},{"artifact":0,"gen_end":19241,"gen_start":18630,"node":53,"role":"declaration","source":0,"src_end":21454,"src_start":20833},{"artifact":0,"gen_end":19999,"gen_start":19241,"node":54,"role":"declaration","source":0,"src_end":22228,"src_start":21456},{"artifact":0,"gen_end":20165,"gen_start":19999,"node":55,"role":"declaration","source":0,"src_end":22471,"src_start":22230},{"artifact":0,"gen_end":20327,"gen_start":20165,"node":56,"role":"declaration","source":0,"src_end":22662,"src_start":22473},{"artifact":0,"gen_end":20469,"gen_start":20327,"node":57,"role":"declaration","source":0,"src_end":22849,"src_start":22664},{"artifact":0,"gen_end":20939,"gen_start":20469,"node":58,"role":"declaration","source":0,"src_end":23425,"src_start":22851},{"artifact":0,"gen_end":21213,"gen_start":20939,"node":59,"role":"declaration","source":0,"src_end":23793,"src_start":23427},{"artifact":0,"gen_end":21949,"gen_start":21213,"node":60,"role":"declaration","source":0,"src_end":24592,"src_start":23795},{"artifact":0,"gen_end":22982,"gen_start":21949,"node":61,"role":"declaration","source":0,"src_end":25727,"src_start":24594},{"artifact":0,"gen_end":24024,"gen_start":22982,"node":62,"role":"declaration","source":0,"src_end":26835,"src_start":25729},{"artifact":0,"gen_end":24394,"gen_start":24024,"node":63,"role":"declaration","source":0,"src_end":27301,"src_start":26837},{"artifact":0,"gen_end":24423,"gen_start":24394,"node":0,"role":"declaration","source":0,"src_end":27337,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":64,"role":"declaration","source":0,"src_end":27337,"src_start":0},{"artifact":1,"gen_end":398,"gen_start":134,"node":65,"role":"declaration","source":0,"src_end":346,"src_start":140},{"artifact":1,"gen_end":600,"gen_start":398,"node":66,"role":"declaration","source":0,"src_end":504,"src_start":348},{"artifact":1,"gen_end":940,"gen_start":600,"node":67,"role":"declaration","source":0,"src_end":778,"src_start":506},{"artifact":1,"gen_end":1298,"gen_start":940,"node":68,"role":"declaration","source":0,"src_end":921,"src_start":780},{"artifact":1,"gen_end":1676,"gen_start":1298,"node":69,"role":"declaration","source":0,"src_end":1072,"src_start":923},{"artifact":1,"gen_end":2029,"gen_start":1676,"node":70,"role":"declaration","source":0,"src_end":1217,"src_start":1074},{"artifact":1,"gen_end":2566,"gen_start":2029,"node":71,"role":"declaration","source":0,"src_end":1441,"src_start":1219},{"artifact":1,"gen_end":3147,"gen_start":2566,"node":72,"role":"declaration","source":0,"src_end":1708,"src_start":1443},{"artifact":1,"gen_end":3564,"gen_start":3147,"node":73,"role":"declaration","source":0,"src_end":1921,"src_start":1710},{"artifact":1,"gen_end":4016,"gen_start":3564,"node":74,"role":"declaration","source":0,"src_end":2197,"src_start":1923},{"artifact":1,"gen_end":4614,"gen_start":4016,"node":75,"role":"declaration","source":0,"src_end":2597,"src_start":2199},{"artifact":1,"gen_end":5122,"gen_start":4614,"node":76,"role":"declaration","source":0,"src_end":2897,"src_start":2599},{"artifact":1,"gen_end":5671,"gen_start":5122,"node":77,"role":"declaration","source":0,"src_end":3228,"src_start":2899},{"artifact":1,"gen_end":6258,"gen_start":5671,"node":78,"role":"declaration","source":0,"src_end":3587,"src_start":3230},{"artifact":1,"gen_end":6867,"gen_start":6258,"node":79,"role":"declaration","source":0,"src_end":4049,"src_start":3589},{"artifact":1,"gen_end":7604,"gen_start":6867,"node":80,"role":"declaration","source":0,"src_end":4434,"src_start":4051},{"artifact":1,"gen_end":8093,"gen_start":7604,"node":81,"role":"declaration","source":0,"src_end":4697,"src_start":4436},{"artifact":1,"gen_end":8601,"gen_start":8093,"node":82,"role":"declaration","source":0,"src_end":4998,"src_start":4699},{"artifact":1,"gen_end":10403,"gen_start":8601,"node":83,"role":"declaration","source":0,"src_end":6529,"src_start":5000},{"artifact":1,"gen_end":11280,"gen_start":10403,"node":84,"role":"declaration","source":0,"src_end":7003,"src_start":6531},{"artifact":1,"gen_end":11658,"gen_start":11280,"node":85,"role":"declaration","source":0,"src_end":7180,"src_start":7005},{"artifact":1,"gen_end":12342,"gen_start":11658,"node":86,"role":"declaration","source":0,"src_end":7580,"src_start":7182},{"artifact":1,"gen_end":13268,"gen_start":12342,"node":87,"role":"declaration","source":0,"src_end":8094,"src_start":7582},{"artifact":1,"gen_end":13821,"gen_start":13268,"node":88,"role":"declaration","source":0,"src_end":8390,"src_start":8096},{"artifact":1,"gen_end":14514,"gen_start":13821,"node":89,"role":"declaration","source":0,"src_end":8760,"src_start":8392},{"artifact":1,"gen_end":15104,"gen_start":14514,"node":90,"role":"declaration","source":0,"src_end":9103,"src_start":8762},{"artifact":1,"gen_end":15878,"gen_start":15104,"node":91,"role":"declaration","source":0,"src_end":9615,"src_start":9105},{"artifact":1,"gen_end":16429,"gen_start":15878,"node":92,"role":"declaration","source":0,"src_end":9959,"src_start":9617},{"artifact":1,"gen_end":17540,"gen_start":16429,"node":93,"role":"declaration","source":0,"src_end":10720,"src_start":9961},{"artifact":1,"gen_end":18013,"gen_start":17540,"node":94,"role":"declaration","source":0,"src_end":11020,"src_start":10722},{"artifact":1,"gen_end":18647,"gen_start":18013,"node":95,"role":"declaration","source":0,"src_end":11336,"src_start":11022},{"artifact":1,"gen_end":19081,"gen_start":18647,"node":96,"role":"declaration","source":0,"src_end":11589,"src_start":11338},{"artifact":1,"gen_end":19787,"gen_start":19081,"node":97,"role":"declaration","source":0,"src_end":11943,"src_start":11591},{"artifact":1,"gen_end":20256,"gen_start":19787,"node":98,"role":"declaration","source":0,"src_end":12164,"src_start":11945},{"artifact":1,"gen_end":22024,"gen_start":20256,"node":99,"role":"declaration","source":0,"src_end":13333,"src_start":12166},{"artifact":1,"gen_end":22699,"gen_start":22024,"node":100,"role":"declaration","source":0,"src_end":13711,"src_start":13335},{"artifact":1,"gen_end":23330,"gen_start":22699,"node":101,"role":"declaration","source":0,"src_end":14128,"src_start":13713},{"artifact":1,"gen_end":23685,"gen_start":23330,"node":102,"role":"declaration","source":0,"src_end":14293,"src_start":14130},{"artifact":1,"gen_end":24145,"gen_start":23685,"node":103,"role":"declaration","source":0,"src_end":14563,"src_start":14295},{"artifact":1,"gen_end":25153,"gen_start":24145,"node":104,"role":"declaration","source":0,"src_end":15445,"src_start":14565},{"artifact":1,"gen_end":26049,"gen_start":25153,"node":105,"role":"declaration","source":0,"src_end":16223,"src_start":15447},{"artifact":1,"gen_end":26604,"gen_start":26049,"node":106,"role":"declaration","source":0,"src_end":16598,"src_start":16225},{"artifact":1,"gen_end":27131,"gen_start":26604,"node":107,"role":"declaration","source":0,"src_end":16944,"src_start":16600},{"artifact":1,"gen_end":27642,"gen_start":27131,"node":108,"role":"declaration","source":0,"src_end":17191,"src_start":16946},{"artifact":1,"gen_end":28401,"gen_start":27642,"node":109,"role":"declaration","source":0,"src_end":17873,"src_start":17193},{"artifact":1,"gen_end":29305,"gen_start":28401,"node":110,"role":"declaration","source":0,"src_end":18754,"src_start":17875},{"artifact":1,"gen_end":29667,"gen_start":29305,"node":111,"role":"declaration","source":0,"src_end":18910,"src_start":18756},{"artifact":1,"gen_end":30081,"gen_start":29667,"node":112,"role":"declaration","source":0,"src_end":19135,"src_start":18912},{"artifact":1,"gen_end":30469,"gen_start":30081,"node":113,"role":"declaration","source":0,"src_end":19339,"src_start":19137},{"artifact":1,"gen_end":30903,"gen_start":30469,"node":114,"role":"declaration","source":0,"src_end":19550,"src_start":19341},{"artifact":1,"gen_end":31676,"gen_start":30903,"node":115,"role":"declaration","source":0,"src_end":20200,"src_start":19552},{"artifact":1,"gen_end":32632,"gen_start":31676,"node":116,"role":"declaration","source":0,"src_end":20831,"src_start":20202},{"artifact":1,"gen_end":33515,"gen_start":32632,"node":117,"role":"declaration","source":0,"src_end":21454,"src_start":20833},{"artifact":1,"gen_end":34543,"gen_start":33515,"node":118,"role":"declaration","source":0,"src_end":22228,"src_start":21456},{"artifact":1,"gen_end":34957,"gen_start":34543,"node":119,"role":"declaration","source":0,"src_end":22471,"src_start":22230},{"artifact":1,"gen_end":35367,"gen_start":34957,"node":120,"role":"declaration","source":0,"src_end":22662,"src_start":22473},{"artifact":1,"gen_end":35756,"gen_start":35367,"node":121,"role":"declaration","source":0,"src_end":22849,"src_start":22664},{"artifact":1,"gen_end":36498,"gen_start":35756,"node":122,"role":"declaration","source":0,"src_end":23425,"src_start":22851},{"artifact":1,"gen_end":37042,"gen_start":36498,"node":123,"role":"declaration","source":0,"src_end":23793,"src_start":23427},{"artifact":1,"gen_end":38049,"gen_start":37042,"node":124,"role":"declaration","source":0,"src_end":24592,"src_start":23795},{"artifact":1,"gen_end":39342,"gen_start":38049,"node":125,"role":"declaration","source":0,"src_end":25727,"src_start":24594},{"artifact":1,"gen_end":40723,"gen_start":39342,"node":126,"role":"declaration","source":0,"src_end":26835,"src_start":25729},{"artifact":1,"gen_end":41561,"gen_start":40723,"node":127,"role":"declaration","source":0,"src_end":27301,"src_start":26837},{"artifact":1,"gen_end":41576,"gen_start":41561,"node":64,"role":"declaration","source":0,"src_end":27337,"src_start":0}],"module":"AxiomOutput","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"},{"id":40,"kind":"semantic-declaration"},{"id":41,"kind":"semantic-declaration"},{"id":42,"kind":"semantic-declaration"},{"id":43,"kind":"semantic-declaration"},{"id":44,"kind":"semantic-declaration"},{"id":45,"kind":"semantic-declaration"},{"id":46,"kind":"semantic-declaration"},{"id":47,"kind":"semantic-declaration"},{"id":48,"kind":"semantic-declaration"},{"id":49,"kind":"semantic-declaration"},{"id":50,"kind":"semantic-declaration"},{"id":51,"kind":"semantic-declaration"},{"id":52,"kind":"semantic-declaration"},{"id":53,"kind":"semantic-declaration"},{"id":54,"kind":"semantic-declaration"},{"id":55,"kind":"semantic-declaration"},{"id":56,"kind":"semantic-declaration"},{"id":57,"kind":"semantic-declaration"},{"id":58,"kind":"semantic-declaration"},{"id":59,"kind":"semantic-declaration"},{"id":60,"kind":"semantic-declaration"},{"id":61,"kind":"semantic-declaration"},{"id":62,"kind":"semantic-declaration"},{"id":63,"kind":"semantic-declaration"},{"id":64,"kind":"semantic-latex-module"},{"id":65,"kind":"semantic-declaration"},{"id":66,"kind":"semantic-declaration"},{"id":67,"kind":"semantic-declaration"},{"id":68,"kind":"semantic-declaration"},{"id":69,"kind":"semantic-declaration"},{"id":70,"kind":"semantic-declaration"},{"id":71,"kind":"semantic-declaration"},{"id":72,"kind":"semantic-declaration"},{"id":73,"kind":"semantic-declaration"},{"id":74,"kind":"semantic-declaration"},{"id":75,"kind":"semantic-declaration"},{"id":76,"kind":"semantic-declaration"},{"id":77,"kind":"semantic-declaration"},{"id":78,"kind":"semantic-declaration"},{"id":79,"kind":"semantic-declaration"},{"id":80,"kind":"semantic-declaration"},{"id":81,"kind":"semantic-declaration"},{"id":82,"kind":"semantic-declaration"},{"id":83,"kind":"semantic-declaration"},{"id":84,"kind":"semantic-declaration"},{"id":85,"kind":"semantic-declaration"},{"id":86,"kind":"semantic-declaration"},{"id":87,"kind":"semantic-declaration"},{"id":88,"kind":"semantic-declaration"},{"id":89,"kind":"semantic-declaration"},{"id":90,"kind":"semantic-declaration"},{"id":91,"kind":"semantic-declaration"},{"id":92,"kind":"semantic-declaration"},{"id":93,"kind":"semantic-declaration"},{"id":94,"kind":"semantic-declaration"},{"id":95,"kind":"semantic-declaration"},{"id":96,"kind":"semantic-declaration"},{"id":97,"kind":"semantic-declaration"},{"id":98,"kind":"semantic-declaration"},{"id":99,"kind":"semantic-declaration"},{"id":100,"kind":"semantic-declaration"},{"id":101,"kind":"semantic-declaration"},{"id":102,"kind":"semantic-declaration"},{"id":103,"kind":"semantic-declaration"},{"id":104,"kind":"semantic-declaration"},{"id":105,"kind":"semantic-declaration"},{"id":106,"kind":"semantic-declaration"},{"id":107,"kind":"semantic-declaration"},{"id":108,"kind":"semantic-declaration"},{"id":109,"kind":"semantic-declaration"},{"id":110,"kind":"semantic-declaration"},{"id":111,"kind":"semantic-declaration"},{"id":112,"kind":"semantic-declaration"},{"id":113,"kind":"semantic-declaration"},{"id":114,"kind":"semantic-declaration"},{"id":115,"kind":"semantic-declaration"},{"id":116,"kind":"semantic-declaration"},{"id":117,"kind":"semantic-declaration"},{"id":118,"kind":"semantic-declaration"},{"id":119,"kind":"semantic-declaration"},{"id":120,"kind":"semantic-declaration"},{"id":121,"kind":"semantic-declaration"},{"id":122,"kind":"semantic-declaration"},{"id":123,"kind":"semantic-declaration"},{"id":124,"kind":"semantic-declaration"},{"id":125,"kind":"semantic-declaration"},{"id":126,"kind":"semantic-declaration"},{"id":127,"kind":"semantic-declaration"}],"semantic_id":"adb40bbfc73b1dc6b7a95dab0c348a2752ede8bc8cffbc4bfb49bce333d9aceb","source_id":"3f41dc0286cbb4e5618c5f0a330c60e2e4f7245869b4343f0b3859285a3d4f7e","sources":[{"id":0,"kind":"file","path":"src/AxiomOutput.lex.tex","sha256":"9f046a50790b9f317a465924703c96839422f20e631a6f6162cc6514955e8567"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/LexLeanBoot/AxiomOutput.lean"},{"id":1,"kind":"tex","path":"modules/LexLeanBoot/AxiomOutput.tex"}],"mappings":[{"artifact":0,"gen_end":316,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":27337,"src_start":0},{"artifact":0,"gen_end":433,"gen_start":316,"node":1,"role":"declaration","source":0,"src_end":346,"src_start":140},{"artifact":0,"gen_end":524,"gen_start":433,"node":2,"role":"declaration","source":0,"src_end":504,"src_start":348},{"artifact":0,"gen_end":731,"gen_start":524,"node":3,"role":"declaration","source":0,"src_end":778,"src_start":506},{"artifact":0,"gen_end":842,"gen_start":731,"node":4,"role":"declaration","source":0,"src_end":921,"src_start":780},{"artifact":0,"gen_end":973,"gen_start":842,"node":5,"role":"declaration","source":0,"src_end":1072,"src_start":923},{"artifact":0,"gen_end":1079,"gen_start":973,"node":6,"role":"declaration","source":0,"src_end":1217,"src_start":1074},{"artifact":0,"gen_end":1257,"gen_start":1079,"node":7,"role":"declaration","source":0,"src_end":1441,"src_start":1219},{"artifact":0,"gen_end":1479,"gen_start":1257,"node":8,"role":"declaration","source":0,"src_end":1708,"src_start":1443},{"artifact":0,"gen_end":1647,"gen_start":1479,"node":9,"role":"declaration","source":0,"src_end":1921,"src_start":1710},{"artifact":0,"gen_end":1852,"gen_start":1647,"node":10,"role":"declaration","source":0,"src_end":2197,"src_start":1923},{"artifact":0,"gen_end":2178,"gen_start":1852,"node":11,"role":"declaration","source":0,"src_end":2597,"src_start":2199},{"artifact":0,"gen_end":2416,"gen_start":2178,"node":12,"role":"declaration","source":0,"src_end":2897,"src_start":2599},{"artifact":0,"gen_end":2695,"gen_start":2416,"node":13,"role":"declaration","source":0,"src_end":3228,"src_start":2899},{"artifact":0,"gen_end":3012,"gen_start":2695,"node":14,"role":"declaration","source":0,"src_end":3587,"src_start":3230},{"artifact":0,"gen_end":3351,"gen_start":3012,"node":15,"role":"declaration","source":0,"src_end":4049,"src_start":3589},{"artifact":0,"gen_end":3623,"gen_start":3351,"node":16,"role":"declaration","source":0,"src_end":4434,"src_start":4051},{"artifact":0,"gen_end":3865,"gen_start":3623,"node":17,"role":"declaration","source":0,"src_end":4697,"src_start":4436},{"artifact":0,"gen_end":4103,"gen_start":3865,"node":18,"role":"declaration","source":0,"src_end":4998,"src_start":4699},{"artifact":0,"gen_end":5635,"gen_start":4103,"node":19,"role":"declaration","source":0,"src_end":6529,"src_start":5000},{"artifact":0,"gen_end":6158,"gen_start":5635,"node":20,"role":"declaration","source":0,"src_end":7003,"src_start":6531},{"artifact":0,"gen_end":6266,"gen_start":6158,"node":21,"role":"declaration","source":0,"src_end":7180,"src_start":7005},{"artifact":0,"gen_end":6599,"gen_start":6266,"node":22,"role":"declaration","source":0,"src_end":7580,"src_start":7182},{"artifact":0,"gen_end":7100,"gen_start":6599,"node":23,"role":"declaration","source":0,"src_end":8094,"src_start":7582},{"artifact":0,"gen_end":7359,"gen_start":7100,"node":24,"role":"declaration","source":0,"src_end":8390,"src_start":8096},{"artifact":0,"gen_end":7757,"gen_start":7359,"node":25,"role":"declaration","source":0,"src_end":8760,"src_start":8392},{"artifact":0,"gen_end":8100,"gen_start":7757,"node":26,"role":"declaration","source":0,"src_end":9103,"src_start":8762},{"artifact":0,"gen_end":8627,"gen_start":8100,"node":27,"role":"declaration","source":0,"src_end":9615,"src_start":9105},{"artifact":0,"gen_end":8931,"gen_start":8627,"node":28,"role":"declaration","source":0,"src_end":9959,"src_start":9617},{"artifact":0,"gen_end":9706,"gen_start":8931,"node":29,"role":"declaration","source":0,"src_end":10720,"src_start":9961},{"artifact":0,"gen_end":9909,"gen_start":9706,"node":30,"role":"declaration","source":0,"src_end":11020,"src_start":10722},{"artifact":0,"gen_end":10192,"gen_start":9909,"node":31,"role":"declaration","source":0,"src_end":11336,"src_start":11022},{"artifact":0,"gen_end":10379,"gen_start":10192,"node":32,"role":"declaration","source":0,"src_end":11589,"src_start":11338},{"artifact":0,"gen_end":10758,"gen_start":10379,"node":33,"role":"declaration","source":0,"src_end":11943,"src_start":11591},{"artifact":0,"gen_end":10980,"gen_start":10758,"node":34,"role":"declaration","source":0,"src_end":12164,"src_start":11945},{"artifact":0,"gen_end":12501,"gen_start":10980,"node":35,"role":"declaration","source":0,"src_end":13333,"src_start":12166},{"artifact":0,"gen_end":12916,"gen_start":12501,"node":36,"role":"declaration","source":0,"src_end":13711,"src_start":13335},{"artifact":0,"gen_end":13277,"gen_start":12916,"node":37,"role":"declaration","source":0,"src_end":14128,"src_start":13713},{"artifact":0,"gen_end":13362,"gen_start":13277,"node":38,"role":"declaration","source":0,"src_end":14293,"src_start":14130},{"artifact":0,"gen_end":13575,"gen_start":13362,"node":39,"role":"declaration","source":0,"src_end":14563,"src_start":14295},{"artifact":0,"gen_end":14311,"gen_start":13575,"node":40,"role":"declaration","source":0,"src_end":15445,"src_start":14565},{"artifact":0,"gen_end":14933,"gen_start":14311,"node":41,"role":"declaration","source":0,"src_end":16223,"src_start":15447},{"artifact":0,"gen_end":15218,"gen_start":14933,"node":42,"role":"declaration","source":0,"src_end":16598,"src_start":16225},{"artifact":0,"gen_end":15496,"gen_start":15218,"node":43,"role":"declaration","source":0,"src_end":16944,"src_start":16600},{"artifact":0,"gen_end":15747,"gen_start":15496,"node":44,"role":"declaration","source":0,"src_end":17191,"src_start":16946},{"artifact":0,"gen_end":16249,"gen_start":15747,"node":45,"role":"declaration","source":0,"src_end":17873,"src_start":17193},{"artifact":0,"gen_end":16912,"gen_start":16249,"node":46,"role":"declaration","source":0,"src_end":18754,"src_start":17875},{"artifact":0,"gen_end":17027,"gen_start":16912,"node":47,"role":"declaration","source":0,"src_end":18910,"src_start":18756},{"artifact":0,"gen_end":17194,"gen_start":17027,"node":48,"role":"declaration","source":0,"src_end":19135,"src_start":18912},{"artifact":0,"gen_end":17335,"gen_start":17194,"node":49,"role":"declaration","source":0,"src_end":19339,"src_start":19137},{"artifact":0,"gen_end":17522,"gen_start":17335,"node":50,"role":"declaration","source":0,"src_end":19550,"src_start":19341},{"artifact":0,"gen_end":18024,"gen_start":17522,"node":51,"role":"declaration","source":0,"src_end":20200,"src_start":19552},{"artifact":0,"gen_end":18630,"gen_start":18024,"node":52,"role":"declaration","source":0,"src_end":20831,"src_start":20202},{"artifact":0,"gen_end":19241,"gen_start":18630,"node":53,"role":"declaration","source":0,"src_end":21454,"src_start":20833},{"artifact":0,"gen_end":19999,"gen_start":19241,"node":54,"role":"declaration","source":0,"src_end":22228,"src_start":21456},{"artifact":0,"gen_end":20165,"gen_start":19999,"node":55,"role":"declaration","source":0,"src_end":22471,"src_start":22230},{"artifact":0,"gen_end":20327,"gen_start":20165,"node":56,"role":"declaration","source":0,"src_end":22662,"src_start":22473},{"artifact":0,"gen_end":20469,"gen_start":20327,"node":57,"role":"declaration","source":0,"src_end":22849,"src_start":22664},{"artifact":0,"gen_end":20939,"gen_start":20469,"node":58,"role":"declaration","source":0,"src_end":23425,"src_start":22851},{"artifact":0,"gen_end":21213,"gen_start":20939,"node":59,"role":"declaration","source":0,"src_end":23793,"src_start":23427},{"artifact":0,"gen_end":21949,"gen_start":21213,"node":60,"role":"declaration","source":0,"src_end":24592,"src_start":23795},{"artifact":0,"gen_end":22982,"gen_start":21949,"node":61,"role":"declaration","source":0,"src_end":25727,"src_start":24594},{"artifact":0,"gen_end":24024,"gen_start":22982,"node":62,"role":"declaration","source":0,"src_end":26835,"src_start":25729},{"artifact":0,"gen_end":24394,"gen_start":24024,"node":63,"role":"declaration","source":0,"src_end":27301,"src_start":26837},{"artifact":0,"gen_end":24423,"gen_start":24394,"node":0,"role":"declaration","source":0,"src_end":27337,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":64,"role":"declaration","source":0,"src_end":27337,"src_start":0},{"artifact":1,"gen_end":398,"gen_start":134,"node":65,"role":"declaration","source":0,"src_end":346,"src_start":140},{"artifact":1,"gen_end":600,"gen_start":398,"node":66,"role":"declaration","source":0,"src_end":504,"src_start":348},{"artifact":1,"gen_end":940,"gen_start":600,"node":67,"role":"declaration","source":0,"src_end":778,"src_start":506},{"artifact":1,"gen_end":1298,"gen_start":940,"node":68,"role":"declaration","source":0,"src_end":921,"src_start":780},{"artifact":1,"gen_end":1676,"gen_start":1298,"node":69,"role":"declaration","source":0,"src_end":1072,"src_start":923},{"artifact":1,"gen_end":2029,"gen_start":1676,"node":70,"role":"declaration","source":0,"src_end":1217,"src_start":1074},{"artifact":1,"gen_end":2566,"gen_start":2029,"node":71,"role":"declaration","source":0,"src_end":1441,"src_start":1219},{"artifact":1,"gen_end":3147,"gen_start":2566,"node":72,"role":"declaration","source":0,"src_end":1708,"src_start":1443},{"artifact":1,"gen_end":3564,"gen_start":3147,"node":73,"role":"declaration","source":0,"src_end":1921,"src_start":1710},{"artifact":1,"gen_end":4016,"gen_start":3564,"node":74,"role":"declaration","source":0,"src_end":2197,"src_start":1923},{"artifact":1,"gen_end":4614,"gen_start":4016,"node":75,"role":"declaration","source":0,"src_end":2597,"src_start":2199},{"artifact":1,"gen_end":5122,"gen_start":4614,"node":76,"role":"declaration","source":0,"src_end":2897,"src_start":2599},{"artifact":1,"gen_end":5671,"gen_start":5122,"node":77,"role":"declaration","source":0,"src_end":3228,"src_start":2899},{"artifact":1,"gen_end":6258,"gen_start":5671,"node":78,"role":"declaration","source":0,"src_end":3587,"src_start":3230},{"artifact":1,"gen_end":6867,"gen_start":6258,"node":79,"role":"declaration","source":0,"src_end":4049,"src_start":3589},{"artifact":1,"gen_end":7604,"gen_start":6867,"node":80,"role":"declaration","source":0,"src_end":4434,"src_start":4051},{"artifact":1,"gen_end":8093,"gen_start":7604,"node":81,"role":"declaration","source":0,"src_end":4697,"src_start":4436},{"artifact":1,"gen_end":8601,"gen_start":8093,"node":82,"role":"declaration","source":0,"src_end":4998,"src_start":4699},{"artifact":1,"gen_end":10403,"gen_start":8601,"node":83,"role":"declaration","source":0,"src_end":6529,"src_start":5000},{"artifact":1,"gen_end":11280,"gen_start":10403,"node":84,"role":"declaration","source":0,"src_end":7003,"src_start":6531},{"artifact":1,"gen_end":11658,"gen_start":11280,"node":85,"role":"declaration","source":0,"src_end":7180,"src_start":7005},{"artifact":1,"gen_end":12342,"gen_start":11658,"node":86,"role":"declaration","source":0,"src_end":7580,"src_start":7182},{"artifact":1,"gen_end":13268,"gen_start":12342,"node":87,"role":"declaration","source":0,"src_end":8094,"src_start":7582},{"artifact":1,"gen_end":13821,"gen_start":13268,"node":88,"role":"declaration","source":0,"src_end":8390,"src_start":8096},{"artifact":1,"gen_end":14514,"gen_start":13821,"node":89,"role":"declaration","source":0,"src_end":8760,"src_start":8392},{"artifact":1,"gen_end":15104,"gen_start":14514,"node":90,"role":"declaration","source":0,"src_end":9103,"src_start":8762},{"artifact":1,"gen_end":15878,"gen_start":15104,"node":91,"role":"declaration","source":0,"src_end":9615,"src_start":9105},{"artifact":1,"gen_end":16429,"gen_start":15878,"node":92,"role":"declaration","source":0,"src_end":9959,"src_start":9617},{"artifact":1,"gen_end":17540,"gen_start":16429,"node":93,"role":"declaration","source":0,"src_end":10720,"src_start":9961},{"artifact":1,"gen_end":18013,"gen_start":17540,"node":94,"role":"declaration","source":0,"src_end":11020,"src_start":10722},{"artifact":1,"gen_end":18647,"gen_start":18013,"node":95,"role":"declaration","source":0,"src_end":11336,"src_start":11022},{"artifact":1,"gen_end":19081,"gen_start":18647,"node":96,"role":"declaration","source":0,"src_end":11589,"src_start":11338},{"artifact":1,"gen_end":19787,"gen_start":19081,"node":97,"role":"declaration","source":0,"src_end":11943,"src_start":11591},{"artifact":1,"gen_end":20256,"gen_start":19787,"node":98,"role":"declaration","source":0,"src_end":12164,"src_start":11945},{"artifact":1,"gen_end":22024,"gen_start":20256,"node":99,"role":"declaration","source":0,"src_end":13333,"src_start":12166},{"artifact":1,"gen_end":22699,"gen_start":22024,"node":100,"role":"declaration","source":0,"src_end":13711,"src_start":13335},{"artifact":1,"gen_end":23330,"gen_start":22699,"node":101,"role":"declaration","source":0,"src_end":14128,"src_start":13713},{"artifact":1,"gen_end":23685,"gen_start":23330,"node":102,"role":"declaration","source":0,"src_end":14293,"src_start":14130},{"artifact":1,"gen_end":24145,"gen_start":23685,"node":103,"role":"declaration","source":0,"src_end":14563,"src_start":14295},{"artifact":1,"gen_end":25153,"gen_start":24145,"node":104,"role":"declaration","source":0,"src_end":15445,"src_start":14565},{"artifact":1,"gen_end":26049,"gen_start":25153,"node":105,"role":"declaration","source":0,"src_end":16223,"src_start":15447},{"artifact":1,"gen_end":26604,"gen_start":26049,"node":106,"role":"declaration","source":0,"src_end":16598,"src_start":16225},{"artifact":1,"gen_end":27131,"gen_start":26604,"node":107,"role":"declaration","source":0,"src_end":16944,"src_start":16600},{"artifact":1,"gen_end":27642,"gen_start":27131,"node":108,"role":"declaration","source":0,"src_end":17191,"src_start":16946},{"artifact":1,"gen_end":28401,"gen_start":27642,"node":109,"role":"declaration","source":0,"src_end":17873,"src_start":17193},{"artifact":1,"gen_end":29305,"gen_start":28401,"node":110,"role":"declaration","source":0,"src_end":18754,"src_start":17875},{"artifact":1,"gen_end":29667,"gen_start":29305,"node":111,"role":"declaration","source":0,"src_end":18910,"src_start":18756},{"artifact":1,"gen_end":30081,"gen_start":29667,"node":112,"role":"declaration","source":0,"src_end":19135,"src_start":18912},{"artifact":1,"gen_end":30469,"gen_start":30081,"node":113,"role":"declaration","source":0,"src_end":19339,"src_start":19137},{"artifact":1,"gen_end":30903,"gen_start":30469,"node":114,"role":"declaration","source":0,"src_end":19550,"src_start":19341},{"artifact":1,"gen_end":31676,"gen_start":30903,"node":115,"role":"declaration","source":0,"src_end":20200,"src_start":19552},{"artifact":1,"gen_end":32632,"gen_start":31676,"node":116,"role":"declaration","source":0,"src_end":20831,"src_start":20202},{"artifact":1,"gen_end":33515,"gen_start":32632,"node":117,"role":"declaration","source":0,"src_end":21454,"src_start":20833},{"artifact":1,"gen_end":34543,"gen_start":33515,"node":118,"role":"declaration","source":0,"src_end":22228,"src_start":21456},{"artifact":1,"gen_end":34957,"gen_start":34543,"node":119,"role":"declaration","source":0,"src_end":22471,"src_start":22230},{"artifact":1,"gen_end":35367,"gen_start":34957,"node":120,"role":"declaration","source":0,"src_end":22662,"src_start":22473},{"artifact":1,"gen_end":35756,"gen_start":35367,"node":121,"role":"declaration","source":0,"src_end":22849,"src_start":22664},{"artifact":1,"gen_end":36498,"gen_start":35756,"node":122,"role":"declaration","source":0,"src_end":23425,"src_start":22851},{"artifact":1,"gen_end":37042,"gen_start":36498,"node":123,"role":"declaration","source":0,"src_end":23793,"src_start":23427},{"artifact":1,"gen_end":38049,"gen_start":37042,"node":124,"role":"declaration","source":0,"src_end":24592,"src_start":23795},{"artifact":1,"gen_end":39342,"gen_start":38049,"node":125,"role":"declaration","source":0,"src_end":25727,"src_start":24594},{"artifact":1,"gen_end":40723,"gen_start":39342,"node":126,"role":"declaration","source":0,"src_end":26835,"src_start":25729},{"artifact":1,"gen_end":41561,"gen_start":40723,"node":127,"role":"declaration","source":0,"src_end":27301,"src_start":26837},{"artifact":1,"gen_end":41576,"gen_start":41561,"node":64,"role":"declaration","source":0,"src_end":27337,"src_start":0}],"module":"AxiomOutput","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"},{"id":40,"kind":"semantic-declaration"},{"id":41,"kind":"semantic-declaration"},{"id":42,"kind":"semantic-declaration"},{"id":43,"kind":"semantic-declaration"},{"id":44,"kind":"semantic-declaration"},{"id":45,"kind":"semantic-declaration"},{"id":46,"kind":"semantic-declaration"},{"id":47,"kind":"semantic-declaration"},{"id":48,"kind":"semantic-declaration"},{"id":49,"kind":"semantic-declaration"},{"id":50,"kind":"semantic-declaration"},{"id":51,"kind":"semantic-declaration"},{"id":52,"kind":"semantic-declaration"},{"id":53,"kind":"semantic-declaration"},{"id":54,"kind":"semantic-declaration"},{"id":55,"kind":"semantic-declaration"},{"id":56,"kind":"semantic-declaration"},{"id":57,"kind":"semantic-declaration"},{"id":58,"kind":"semantic-declaration"},{"id":59,"kind":"semantic-declaration"},{"id":60,"kind":"semantic-declaration"},{"id":61,"kind":"semantic-declaration"},{"id":62,"kind":"semantic-declaration"},{"id":63,"kind":"semantic-declaration"},{"id":64,"kind":"semantic-latex-module"},{"id":65,"kind":"semantic-declaration"},{"id":66,"kind":"semantic-declaration"},{"id":67,"kind":"semantic-declaration"},{"id":68,"kind":"semantic-declaration"},{"id":69,"kind":"semantic-declaration"},{"id":70,"kind":"semantic-declaration"},{"id":71,"kind":"semantic-declaration"},{"id":72,"kind":"semantic-declaration"},{"id":73,"kind":"semantic-declaration"},{"id":74,"kind":"semantic-declaration"},{"id":75,"kind":"semantic-declaration"},{"id":76,"kind":"semantic-declaration"},{"id":77,"kind":"semantic-declaration"},{"id":78,"kind":"semantic-declaration"},{"id":79,"kind":"semantic-declaration"},{"id":80,"kind":"semantic-declaration"},{"id":81,"kind":"semantic-declaration"},{"id":82,"kind":"semantic-declaration"},{"id":83,"kind":"semantic-declaration"},{"id":84,"kind":"semantic-declaration"},{"id":85,"kind":"semantic-declaration"},{"id":86,"kind":"semantic-declaration"},{"id":87,"kind":"semantic-declaration"},{"id":88,"kind":"semantic-declaration"},{"id":89,"kind":"semantic-declaration"},{"id":90,"kind":"semantic-declaration"},{"id":91,"kind":"semantic-declaration"},{"id":92,"kind":"semantic-declaration"},{"id":93,"kind":"semantic-declaration"},{"id":94,"kind":"semantic-declaration"},{"id":95,"kind":"semantic-declaration"},{"id":96,"kind":"semantic-declaration"},{"id":97,"kind":"semantic-declaration"},{"id":98,"kind":"semantic-declaration"},{"id":99,"kind":"semantic-declaration"},{"id":100,"kind":"semantic-declaration"},{"id":101,"kind":"semantic-declaration"},{"id":102,"kind":"semantic-declaration"},{"id":103,"kind":"semantic-declaration"},{"id":104,"kind":"semantic-declaration"},{"id":105,"kind":"semantic-declaration"},{"id":106,"kind":"semantic-declaration"},{"id":107,"kind":"semantic-declaration"},{"id":108,"kind":"semantic-declaration"},{"id":109,"kind":"semantic-declaration"},{"id":110,"kind":"semantic-declaration"},{"id":111,"kind":"semantic-declaration"},{"id":112,"kind":"semantic-declaration"},{"id":113,"kind":"semantic-declaration"},{"id":114,"kind":"semantic-declaration"},{"id":115,"kind":"semantic-declaration"},{"id":116,"kind":"semantic-declaration"},{"id":117,"kind":"semantic-declaration"},{"id":118,"kind":"semantic-declaration"},{"id":119,"kind":"semantic-declaration"},{"id":120,"kind":"semantic-declaration"},{"id":121,"kind":"semantic-declaration"},{"id":122,"kind":"semantic-declaration"},{"id":123,"kind":"semantic-declaration"},{"id":124,"kind":"semantic-declaration"},{"id":125,"kind":"semantic-declaration"},{"id":126,"kind":"semantic-declaration"},{"id":127,"kind":"semantic-declaration"}],"semantic_id":"5ba510b7049a3e59c5f1ffb1f0a6611dd35ecbdb9904f2d3213052229b253f48","source_id":"d24d87e6939b30919be5d863ae8caee196592ffc1481d8490690c0f435e12acf","sources":[{"id":0,"kind":"file","path":"src/AxiomOutput.lex.tex","sha256":"9f046a50790b9f317a465924703c96839422f20e631a6f6162cc6514955e8567"}],"spec":"lexlean/source-map/1"} diff --git a/bootstrap/expected/build/maps/LexLeanBoot/Text.map.json b/bootstrap/expected/build/maps/LexLeanBoot/Text.map.json index 229222331..13f6116e3 100644 --- a/bootstrap/expected/build/maps/LexLeanBoot/Text.map.json +++ b/bootstrap/expected/build/maps/LexLeanBoot/Text.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/LexLeanBoot/Text.lean"},{"id":1,"kind":"tex","path":"modules/LexLeanBoot/Text.tex"}],"mappings":[{"artifact":0,"gen_end":278,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":7566,"src_start":0},{"artifact":0,"gen_end":612,"gen_start":278,"node":1,"role":"declaration","source":0,"src_end":426,"src_start":113},{"artifact":0,"gen_end":761,"gen_start":612,"node":2,"role":"declaration","source":0,"src_end":607,"src_start":428},{"artifact":0,"gen_end":941,"gen_start":761,"node":3,"role":"declaration","source":0,"src_end":834,"src_start":609},{"artifact":0,"gen_end":1182,"gen_start":941,"node":4,"role":"declaration","source":0,"src_end":1085,"src_start":836},{"artifact":0,"gen_end":1483,"gen_start":1182,"node":5,"role":"declaration","source":0,"src_end":1373,"src_start":1087},{"artifact":0,"gen_end":1949,"gen_start":1483,"node":6,"role":"declaration","source":0,"src_end":1804,"src_start":1375},{"artifact":0,"gen_end":2385,"gen_start":1949,"node":7,"role":"declaration","source":0,"src_end":2233,"src_start":1806},{"artifact":0,"gen_end":2697,"gen_start":2385,"node":8,"role":"declaration","source":0,"src_end":2598,"src_start":2235},{"artifact":0,"gen_end":2933,"gen_start":2697,"node":9,"role":"declaration","source":0,"src_end":2845,"src_start":2600},{"artifact":0,"gen_end":3178,"gen_start":2933,"node":10,"role":"declaration","source":0,"src_end":3092,"src_start":2847},{"artifact":0,"gen_end":3836,"gen_start":3178,"node":11,"role":"declaration","source":0,"src_end":3859,"src_start":3094},{"artifact":0,"gen_end":4453,"gen_start":3836,"node":12,"role":"declaration","source":0,"src_end":4438,"src_start":3861},{"artifact":0,"gen_end":4668,"gen_start":4453,"node":13,"role":"declaration","source":0,"src_end":4650,"src_start":4440},{"artifact":0,"gen_end":5316,"gen_start":4668,"node":14,"role":"declaration","source":0,"src_end":5408,"src_start":4652},{"artifact":0,"gen_end":5999,"gen_start":5316,"node":15,"role":"declaration","source":0,"src_end":6032,"src_start":5410},{"artifact":0,"gen_end":6506,"gen_start":5999,"node":16,"role":"declaration","source":0,"src_end":6559,"src_start":6034},{"artifact":0,"gen_end":6820,"gen_start":6506,"node":17,"role":"declaration","source":0,"src_end":6871,"src_start":6561},{"artifact":0,"gen_end":7408,"gen_start":6820,"node":18,"role":"declaration","source":0,"src_end":7530,"src_start":6873},{"artifact":0,"gen_end":7430,"gen_start":7408,"node":0,"role":"declaration","source":0,"src_end":7566,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":19,"role":"declaration","source":0,"src_end":7566,"src_start":0},{"artifact":1,"gen_end":715,"gen_start":134,"node":20,"role":"declaration","source":0,"src_end":426,"src_start":113},{"artifact":1,"gen_end":1111,"gen_start":715,"node":21,"role":"declaration","source":0,"src_end":607,"src_start":428},{"artifact":1,"gen_end":1538,"gen_start":1111,"node":22,"role":"declaration","source":0,"src_end":834,"src_start":609},{"artifact":1,"gen_end":2027,"gen_start":1538,"node":23,"role":"declaration","source":0,"src_end":1085,"src_start":836},{"artifact":1,"gen_end":2611,"gen_start":2027,"node":24,"role":"declaration","source":0,"src_end":1373,"src_start":1087},{"artifact":1,"gen_end":3324,"gen_start":2611,"node":25,"role":"declaration","source":0,"src_end":1804,"src_start":1375},{"artifact":1,"gen_end":4131,"gen_start":3324,"node":26,"role":"declaration","source":0,"src_end":2233,"src_start":1806},{"artifact":1,"gen_end":4809,"gen_start":4131,"node":27,"role":"declaration","source":0,"src_end":2598,"src_start":2235},{"artifact":1,"gen_end":5328,"gen_start":4809,"node":28,"role":"declaration","source":0,"src_end":2845,"src_start":2600},{"artifact":1,"gen_end":5901,"gen_start":5328,"node":29,"role":"declaration","source":0,"src_end":3092,"src_start":2847},{"artifact":1,"gen_end":6806,"gen_start":5901,"node":30,"role":"declaration","source":0,"src_end":3859,"src_start":3094},{"artifact":1,"gen_end":7759,"gen_start":6806,"node":31,"role":"declaration","source":0,"src_end":4438,"src_start":3861},{"artifact":1,"gen_end":8222,"gen_start":7759,"node":32,"role":"declaration","source":0,"src_end":4650,"src_start":4440},{"artifact":1,"gen_end":9117,"gen_start":8222,"node":33,"role":"declaration","source":0,"src_end":5408,"src_start":4652},{"artifact":1,"gen_end":10125,"gen_start":9117,"node":34,"role":"declaration","source":0,"src_end":6032,"src_start":5410},{"artifact":1,"gen_end":10968,"gen_start":10125,"node":35,"role":"declaration","source":0,"src_end":6559,"src_start":6034},{"artifact":1,"gen_end":11529,"gen_start":10968,"node":36,"role":"declaration","source":0,"src_end":6871,"src_start":6561},{"artifact":1,"gen_end":12466,"gen_start":11529,"node":37,"role":"declaration","source":0,"src_end":7530,"src_start":6873},{"artifact":1,"gen_end":12481,"gen_start":12466,"node":19,"role":"declaration","source":0,"src_end":7566,"src_start":0}],"module":"Text","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-latex-module"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"}],"semantic_id":"adb40bbfc73b1dc6b7a95dab0c348a2752ede8bc8cffbc4bfb49bce333d9aceb","source_id":"3f41dc0286cbb4e5618c5f0a330c60e2e4f7245869b4343f0b3859285a3d4f7e","sources":[{"id":0,"kind":"file","path":"src/Text.lex.tex","sha256":"2c97a6b06a1c39aa660edc43f366b753175279f9dc99bbea9bb7f900eb1b9a07"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/LexLeanBoot/Text.lean"},{"id":1,"kind":"tex","path":"modules/LexLeanBoot/Text.tex"}],"mappings":[{"artifact":0,"gen_end":278,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":7566,"src_start":0},{"artifact":0,"gen_end":612,"gen_start":278,"node":1,"role":"declaration","source":0,"src_end":426,"src_start":113},{"artifact":0,"gen_end":761,"gen_start":612,"node":2,"role":"declaration","source":0,"src_end":607,"src_start":428},{"artifact":0,"gen_end":941,"gen_start":761,"node":3,"role":"declaration","source":0,"src_end":834,"src_start":609},{"artifact":0,"gen_end":1182,"gen_start":941,"node":4,"role":"declaration","source":0,"src_end":1085,"src_start":836},{"artifact":0,"gen_end":1483,"gen_start":1182,"node":5,"role":"declaration","source":0,"src_end":1373,"src_start":1087},{"artifact":0,"gen_end":1949,"gen_start":1483,"node":6,"role":"declaration","source":0,"src_end":1804,"src_start":1375},{"artifact":0,"gen_end":2385,"gen_start":1949,"node":7,"role":"declaration","source":0,"src_end":2233,"src_start":1806},{"artifact":0,"gen_end":2697,"gen_start":2385,"node":8,"role":"declaration","source":0,"src_end":2598,"src_start":2235},{"artifact":0,"gen_end":2933,"gen_start":2697,"node":9,"role":"declaration","source":0,"src_end":2845,"src_start":2600},{"artifact":0,"gen_end":3178,"gen_start":2933,"node":10,"role":"declaration","source":0,"src_end":3092,"src_start":2847},{"artifact":0,"gen_end":3836,"gen_start":3178,"node":11,"role":"declaration","source":0,"src_end":3859,"src_start":3094},{"artifact":0,"gen_end":4453,"gen_start":3836,"node":12,"role":"declaration","source":0,"src_end":4438,"src_start":3861},{"artifact":0,"gen_end":4668,"gen_start":4453,"node":13,"role":"declaration","source":0,"src_end":4650,"src_start":4440},{"artifact":0,"gen_end":5316,"gen_start":4668,"node":14,"role":"declaration","source":0,"src_end":5408,"src_start":4652},{"artifact":0,"gen_end":5999,"gen_start":5316,"node":15,"role":"declaration","source":0,"src_end":6032,"src_start":5410},{"artifact":0,"gen_end":6506,"gen_start":5999,"node":16,"role":"declaration","source":0,"src_end":6559,"src_start":6034},{"artifact":0,"gen_end":6820,"gen_start":6506,"node":17,"role":"declaration","source":0,"src_end":6871,"src_start":6561},{"artifact":0,"gen_end":7408,"gen_start":6820,"node":18,"role":"declaration","source":0,"src_end":7530,"src_start":6873},{"artifact":0,"gen_end":7430,"gen_start":7408,"node":0,"role":"declaration","source":0,"src_end":7566,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":19,"role":"declaration","source":0,"src_end":7566,"src_start":0},{"artifact":1,"gen_end":715,"gen_start":134,"node":20,"role":"declaration","source":0,"src_end":426,"src_start":113},{"artifact":1,"gen_end":1111,"gen_start":715,"node":21,"role":"declaration","source":0,"src_end":607,"src_start":428},{"artifact":1,"gen_end":1538,"gen_start":1111,"node":22,"role":"declaration","source":0,"src_end":834,"src_start":609},{"artifact":1,"gen_end":2027,"gen_start":1538,"node":23,"role":"declaration","source":0,"src_end":1085,"src_start":836},{"artifact":1,"gen_end":2611,"gen_start":2027,"node":24,"role":"declaration","source":0,"src_end":1373,"src_start":1087},{"artifact":1,"gen_end":3324,"gen_start":2611,"node":25,"role":"declaration","source":0,"src_end":1804,"src_start":1375},{"artifact":1,"gen_end":4131,"gen_start":3324,"node":26,"role":"declaration","source":0,"src_end":2233,"src_start":1806},{"artifact":1,"gen_end":4809,"gen_start":4131,"node":27,"role":"declaration","source":0,"src_end":2598,"src_start":2235},{"artifact":1,"gen_end":5328,"gen_start":4809,"node":28,"role":"declaration","source":0,"src_end":2845,"src_start":2600},{"artifact":1,"gen_end":5901,"gen_start":5328,"node":29,"role":"declaration","source":0,"src_end":3092,"src_start":2847},{"artifact":1,"gen_end":6806,"gen_start":5901,"node":30,"role":"declaration","source":0,"src_end":3859,"src_start":3094},{"artifact":1,"gen_end":7759,"gen_start":6806,"node":31,"role":"declaration","source":0,"src_end":4438,"src_start":3861},{"artifact":1,"gen_end":8222,"gen_start":7759,"node":32,"role":"declaration","source":0,"src_end":4650,"src_start":4440},{"artifact":1,"gen_end":9117,"gen_start":8222,"node":33,"role":"declaration","source":0,"src_end":5408,"src_start":4652},{"artifact":1,"gen_end":10125,"gen_start":9117,"node":34,"role":"declaration","source":0,"src_end":6032,"src_start":5410},{"artifact":1,"gen_end":10968,"gen_start":10125,"node":35,"role":"declaration","source":0,"src_end":6559,"src_start":6034},{"artifact":1,"gen_end":11529,"gen_start":10968,"node":36,"role":"declaration","source":0,"src_end":6871,"src_start":6561},{"artifact":1,"gen_end":12466,"gen_start":11529,"node":37,"role":"declaration","source":0,"src_end":7530,"src_start":6873},{"artifact":1,"gen_end":12481,"gen_start":12466,"node":19,"role":"declaration","source":0,"src_end":7566,"src_start":0}],"module":"Text","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-latex-module"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"}],"semantic_id":"5ba510b7049a3e59c5f1ffb1f0a6611dd35ecbdb9904f2d3213052229b253f48","source_id":"d24d87e6939b30919be5d863ae8caee196592ffc1481d8490690c0f435e12acf","sources":[{"id":0,"kind":"file","path":"src/Text.lex.tex","sha256":"2c97a6b06a1c39aa660edc43f366b753175279f9dc99bbea9bb7f900eb1b9a07"}],"spec":"lexlean/source-map/1"} diff --git a/bootstrap/expected/verify/audit/LexLeanAudit.Aadb40bbfc73b1dc6b7a95dab0c348a27.LexLeanBoot.AxiomOutput.lean b/bootstrap/expected/verify/audit/LexLeanAudit.A5ba510b7049a3e59c5f1ffb1f0a6611d.LexLeanBoot.AxiomOutput.lean similarity index 100% rename from bootstrap/expected/verify/audit/LexLeanAudit.Aadb40bbfc73b1dc6b7a95dab0c348a27.LexLeanBoot.AxiomOutput.lean rename to bootstrap/expected/verify/audit/LexLeanAudit.A5ba510b7049a3e59c5f1ffb1f0a6611d.LexLeanBoot.AxiomOutput.lean diff --git a/bootstrap/expected/verify/audit/LexLeanAudit.A5ba510b7049a3e59c5f1ffb1f0a6611d.LexLeanBoot.AxiomOutput.process.json b/bootstrap/expected/verify/audit/LexLeanAudit.A5ba510b7049a3e59c5f1ffb1f0a6611d.LexLeanBoot.AxiomOutput.process.json new file mode 100644 index 000000000..e7ed934d0 --- /dev/null +++ b/bootstrap/expected/verify/audit/LexLeanAudit.A5ba510b7049a3e59c5f1ffb1f0a6611d.LexLeanBoot.AxiomOutput.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A5ba510b7049a3e59c5f1ffb1f0a6611d.LexLeanBoot.AxiomOutput.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A5ba510b7049a3e59c5f1ffb1f0a6611d.LexLeanBoot.AxiomOutput","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanBoot.AxiomOutput.Record' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.Rejection' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.Scan' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.afterLabel' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.afterLocation' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.allDigits' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.auditStep' depends on axioms: [propext]\n'LexLeanBoot.AxiomOutput.axiomList' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.byteIn' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.byteIs' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.cat' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.collectStep' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.continuation' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.decimal' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.digit' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.digitStep' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.dropWhiteEnd' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.envelope' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.extend' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.finish' depends on axioms: [propext]\n'LexLeanBoot.AxiomOutput.fitsWord' depends on axioms: [propext]\n'LexLeanBoot.AxiomOutput.headOf' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.inRange' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.insertAxiom' depends on axioms: [propext]\n'LexLeanBoot.AxiomOutput.insertEntry' depends on axioms: [propext]\n'LexLeanBoot.AxiomOutput.isClosedLeanName' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.isCount' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.isFirst' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.isLater' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.isWord' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.lastStep' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.lessBytes' depends on axioms: [propext]\n'LexLeanBoot.AxiomOutput.listLength' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.listed' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.located' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.malformed' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.nameMode' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.nameStep' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.notLean' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.parseAuditOutput' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.parsePayload' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.parsed' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.quoted' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.refuse' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.rejected' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.reversed' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.scanStep' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.significant' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.skipWhite' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.splitLast' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.splitOnce' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.startsWhite' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.stop' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.stripPrefix' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.stripSuffix' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.tailOf' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.terminates' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.text' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.trimmed' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.unrecognized' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.whiteEnding' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.whiteLength' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.zeroStep' does not depend on any axioms\n","stdout_sha256":"bd365d474943e5184f5b9e376d67d1c8fca4b097fa1da5b05bae624f013e1d09","tool":"lean"} diff --git a/bootstrap/expected/verify/audit/LexLeanAudit.Aadb40bbfc73b1dc6b7a95dab0c348a27.LexLeanBoot.Text.lean b/bootstrap/expected/verify/audit/LexLeanAudit.A5ba510b7049a3e59c5f1ffb1f0a6611d.LexLeanBoot.Text.lean similarity index 100% rename from bootstrap/expected/verify/audit/LexLeanAudit.Aadb40bbfc73b1dc6b7a95dab0c348a27.LexLeanBoot.Text.lean rename to bootstrap/expected/verify/audit/LexLeanAudit.A5ba510b7049a3e59c5f1ffb1f0a6611d.LexLeanBoot.Text.lean diff --git a/bootstrap/expected/verify/audit/LexLeanAudit.A5ba510b7049a3e59c5f1ffb1f0a6611d.LexLeanBoot.Text.process.json b/bootstrap/expected/verify/audit/LexLeanAudit.A5ba510b7049a3e59c5f1ffb1f0a6611d.LexLeanBoot.Text.process.json new file mode 100644 index 000000000..e8b12ed3d --- /dev/null +++ b/bootstrap/expected/verify/audit/LexLeanAudit.A5ba510b7049a3e59c5f1ffb1f0a6611d.LexLeanBoot.Text.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A5ba510b7049a3e59c5f1ffb1f0a6611d.LexLeanBoot.Text.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A5ba510b7049a3e59c5f1ffb1f0a6611d.LexLeanBoot.Text","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanBoot.Text.byteAt' does not depend on any axioms\n'LexLeanBoot.Text.chomp' does not depend on any axioms\n'LexLeanBoot.Text.endsWith' does not depend on any axioms\n'LexLeanBoot.Text.find' does not depend on any axioms\n'LexLeanBoot.Text.isSpace' does not depend on any axioms\n'LexLeanBoot.Text.joinWith' does not depend on any axioms\n'LexLeanBoot.Text.lineStep' does not depend on any axioms\n'LexLeanBoot.Text.lines' does not depend on any axioms\n'LexLeanBoot.Text.matchAt' does not depend on any axioms\n'LexLeanBoot.Text.reverse' does not depend on any axioms\n'LexLeanBoot.Text.sliceOr' does not depend on any axioms\n'LexLeanBoot.Text.spaceAt' does not depend on any axioms\n'LexLeanBoot.Text.splitOn' does not depend on any axioms\n'LexLeanBoot.Text.splitStep' does not depend on any axioms\n'LexLeanBoot.Text.startsWith' does not depend on any axioms\n'LexLeanBoot.Text.trim' does not depend on any axioms\n'LexLeanBoot.Text.trimEnd' does not depend on any axioms\n'LexLeanBoot.Text.trimStart' does not depend on any axioms\n","stdout_sha256":"f123b29dcd243a53b7c289ef056e99264e1132f910ec78803c53edf0c6543bc0","tool":"lean"} diff --git a/bootstrap/expected/verify/audit/LexLeanAudit.Aadb40bbfc73b1dc6b7a95dab0c348a27.LexLeanRuntime.Collections.lean b/bootstrap/expected/verify/audit/LexLeanAudit.A5ba510b7049a3e59c5f1ffb1f0a6611d.LexLeanRuntime.Collections.lean similarity index 100% rename from bootstrap/expected/verify/audit/LexLeanAudit.Aadb40bbfc73b1dc6b7a95dab0c348a27.LexLeanRuntime.Collections.lean rename to bootstrap/expected/verify/audit/LexLeanAudit.A5ba510b7049a3e59c5f1ffb1f0a6611d.LexLeanRuntime.Collections.lean diff --git a/bootstrap/expected/verify/audit/LexLeanAudit.A5ba510b7049a3e59c5f1ffb1f0a6611d.LexLeanRuntime.Collections.process.json b/bootstrap/expected/verify/audit/LexLeanAudit.A5ba510b7049a3e59c5f1ffb1f0a6611d.LexLeanRuntime.Collections.process.json new file mode 100644 index 000000000..f99ad750c --- /dev/null +++ b/bootstrap/expected/verify/audit/LexLeanAudit.A5ba510b7049a3e59c5f1ffb1f0a6611d.LexLeanRuntime.Collections.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A5ba510b7049a3e59c5f1ffb1f0a6611d.LexLeanRuntime.Collections.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A5ba510b7049a3e59c5f1ffb1f0a6611d.LexLeanRuntime.Collections","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanCollections.Key' does not depend on any axioms\n'LexLeanCollections.Key.casesOn' does not depend on any axioms\n'LexLeanCollections.Key.compare' does not depend on any axioms\n'LexLeanCollections.Key.ctorIdx' does not depend on any axioms\n'LexLeanCollections.Key.mk._flat_ctor' does not depend on any axioms\n'LexLeanCollections.Key.mk.noConfusion' does not depend on any axioms\n'LexLeanCollections.Key.noConfusion' does not depend on any axioms\n'LexLeanCollections.Key.noConfusionType' does not depend on any axioms\n'LexLeanCollections.Key.recOn' does not depend on any axioms\n'LexLeanCollections.compareCodes' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._f' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._sunfold' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._unsafe_rec' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.match_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.match_4' does not depend on any axioms\n'LexLeanCollections.containsElement' does not depend on any axioms\n'LexLeanCollections.containsElement._f' does not depend on any axioms\n'LexLeanCollections.containsElement._sunfold' does not depend on any axioms\n'LexLeanCollections.containsElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.graphNodes' does not depend on any axioms\n'LexLeanCollections.graphReachable' depends on axioms: [propext]\n'LexLeanCollections.graphSuccessors' does not depend on any axioms\n'LexLeanCollections.graphTopological' does not depend on any axioms\n'LexLeanCollections.insertElement' does not depend on any axioms\n'LexLeanCollections.insertElement._f' does not depend on any axioms\n'LexLeanCollections.insertElement._sunfold' does not depend on any axioms\n'LexLeanCollections.insertElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.insertElement.match_1' does not depend on any axioms\n'LexLeanCollections.insertEntry' does not depend on any axioms\n'LexLeanCollections.insertEntry._f' does not depend on any axioms\n'LexLeanCollections.insertEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.insertEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.insertEntry.match_1' does not depend on any axioms\n'LexLeanCollections.insertEntry.match_3' does not depend on any axioms\n'LexLeanCollections.instKeyBool' depends on axioms: [propext]\n'LexLeanCollections.instKeyInt' does not depend on any axioms\n'LexLeanCollections.instKeyInt16' does not depend on any axioms\n'LexLeanCollections.instKeyInt32' does not depend on any axioms\n'LexLeanCollections.instKeyInt64' does not depend on any axioms\n'LexLeanCollections.instKeyInt8' does not depend on any axioms\n'LexLeanCollections.instKeyNat' does not depend on any axioms\n'LexLeanCollections.instKeyProd' depends on axioms: [propext]\n'LexLeanCollections.instKeyString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanCollections.instKeyUInt16' does not depend on any axioms\n'LexLeanCollections.instKeyUInt32' does not depend on any axioms\n'LexLeanCollections.instKeyUInt64' does not depend on any axioms\n'LexLeanCollections.instKeyUInt8' does not depend on any axioms\n'LexLeanCollections.iterate' does not depend on any axioms\n'LexLeanCollections.iterate._f' does not depend on any axioms\n'LexLeanCollections.iterate._sunfold' does not depend on any axioms\n'LexLeanCollections.iterate._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.iterate.match_1' does not depend on any axioms\n'LexLeanCollections.iterateUntil' does not depend on any axioms\n'LexLeanCollections.iterateUntil._f' does not depend on any axioms\n'LexLeanCollections.iterateUntil._sunfold' does not depend on any axioms\n'LexLeanCollections.iterateUntil._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.iterateUntil.match_1' does not depend on any axioms\n'LexLeanCollections.lessThan' depends on axioms: [propext]\n'LexLeanCollections.lessThan._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.lessThan.match_1' depends on axioms: [propext]\n'LexLeanCollections.listFold' does not depend on any axioms\n'LexLeanCollections.lookupEntry' does not depend on any axioms\n'LexLeanCollections.lookupEntry._f' does not depend on any axioms\n'LexLeanCollections.lookupEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.lookupEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.mapContains' does not depend on any axioms\n'LexLeanCollections.mapEntries' does not depend on any axioms\n'LexLeanCollections.mapFold' does not depend on any axioms\n'LexLeanCollections.mapInsert' does not depend on any axioms\n'LexLeanCollections.mapKeys' does not depend on any axioms\n'LexLeanCollections.mapLookup' does not depend on any axioms\n'LexLeanCollections.mapRemove' does not depend on any axioms\n'LexLeanCollections.mapSize' does not depend on any axioms\n'LexLeanCollections.mapValues' does not depend on any axioms\n'LexLeanCollections.reachableFrom' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._f' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._sunfold' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._unsafe_rec' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom.match_1' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom.match_4' does not depend on any axioms\n'LexLeanCollections.removeElement' does not depend on any axioms\n'LexLeanCollections.removeElement._f' does not depend on any axioms\n'LexLeanCollections.removeElement._sunfold' does not depend on any axioms\n'LexLeanCollections.removeElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.removeEntry' does not depend on any axioms\n'LexLeanCollections.removeEntry._f' does not depend on any axioms\n'LexLeanCollections.removeEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.removeEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.setContains' does not depend on any axioms\n'LexLeanCollections.setDifference' does not depend on any axioms\n'LexLeanCollections.setElements' does not depend on any axioms\n'LexLeanCollections.setFold' does not depend on any axioms\n'LexLeanCollections.setInsert' does not depend on any axioms\n'LexLeanCollections.setIntersection' does not depend on any axioms\n'LexLeanCollections.setRemove' does not depend on any axioms\n'LexLeanCollections.setSize' does not depend on any axioms\n'LexLeanCollections.setUnion' does not depend on any axioms\n'LexLeanCollections.topological' does not depend on any axioms\n'LexLeanCollections.topological._f' does not depend on any axioms\n'LexLeanCollections.topological._sunfold' does not depend on any axioms\n'LexLeanCollections.topological._unsafe_rec' does not depend on any axioms\n","stdout_sha256":"b75acc0e99e23684c3cc876eacbfc93f47161cfee8a7440df17fa45f321c8c6a","tool":"lean"} diff --git a/bootstrap/expected/verify/audit/LexLeanAudit.Aadb40bbfc73b1dc6b7a95dab0c348a27.LexLeanRuntime.Portable.lean b/bootstrap/expected/verify/audit/LexLeanAudit.A5ba510b7049a3e59c5f1ffb1f0a6611d.LexLeanRuntime.Portable.lean similarity index 100% rename from bootstrap/expected/verify/audit/LexLeanAudit.Aadb40bbfc73b1dc6b7a95dab0c348a27.LexLeanRuntime.Portable.lean rename to bootstrap/expected/verify/audit/LexLeanAudit.A5ba510b7049a3e59c5f1ffb1f0a6611d.LexLeanRuntime.Portable.lean diff --git a/bootstrap/expected/verify/audit/LexLeanAudit.A5ba510b7049a3e59c5f1ffb1f0a6611d.LexLeanRuntime.Portable.process.json b/bootstrap/expected/verify/audit/LexLeanAudit.A5ba510b7049a3e59c5f1ffb1f0a6611d.LexLeanRuntime.Portable.process.json new file mode 100644 index 000000000..ae4ac903d --- /dev/null +++ b/bootstrap/expected/verify/audit/LexLeanAudit.A5ba510b7049a3e59c5f1ffb1f0a6611d.LexLeanRuntime.Portable.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A5ba510b7049a3e59c5f1ffb1f0a6611d.LexLeanRuntime.Portable.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A5ba510b7049a3e59c5f1ffb1f0a6611d.LexLeanRuntime.Portable","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanRuntime.Appendable' does not depend on any axioms\n'LexLeanRuntime.Appendable.append' does not depend on any axioms\n'LexLeanRuntime.Appendable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Appendable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Appendable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Appendable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Appendable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Appendable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Appendable.recOn' does not depend on any axioms\n'LexLeanRuntime.Decimal' does not depend on any axioms\n'LexLeanRuntime.Decimal.casesOn' does not depend on any axioms\n'LexLeanRuntime.Decimal.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Decimal.format' does not depend on any axioms\n'LexLeanRuntime.Decimal.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Decimal.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Decimal.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Decimal.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Decimal.parse' does not depend on any axioms\n'LexLeanRuntime.Decimal.recOn' does not depend on any axioms\n'LexLeanRuntime.Fixed' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitAnd' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitNot' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitOr' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitXor' does not depend on any axioms\n'LexLeanRuntime.Fixed.casesOn' does not depend on any axioms\n'LexLeanRuntime.Fixed.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Fixed.fromInt' does not depend on any axioms\n'LexLeanRuntime.Fixed.maximum' does not depend on any axioms\n'LexLeanRuntime.Fixed.minimum' does not depend on any axioms\n'LexLeanRuntime.Fixed.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Fixed.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Fixed.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Fixed.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Fixed.recOn' does not depend on any axioms\n'LexLeanRuntime.Fixed.shiftLeft' does not depend on any axioms\n'LexLeanRuntime.Fixed.shiftRight' does not depend on any axioms\n'LexLeanRuntime.Fixed.toToMathInt' does not depend on any axioms\n'LexLeanRuntime.Indexable' does not depend on any axioms\n'LexLeanRuntime.Indexable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Indexable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Indexable.index' does not depend on any axioms\n'LexLeanRuntime.Indexable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Indexable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Indexable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Indexable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Indexable.recOn' does not depend on any axioms\n'LexLeanRuntime.Lengthable' does not depend on any axioms\n'LexLeanRuntime.Lengthable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Lengthable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Lengthable.length' does not depend on any axioms\n'LexLeanRuntime.Lengthable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Lengthable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Lengthable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Lengthable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Lengthable.recOn' does not depend on any axioms\n'LexLeanRuntime.Quotient' does not depend on any axioms\n'LexLeanRuntime.Quotient.casesOn' does not depend on any axioms\n'LexLeanRuntime.Quotient.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Quotient.isZero' does not depend on any axioms\n'LexLeanRuntime.Quotient.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Quotient.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Quotient.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Quotient.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Quotient.quotient' does not depend on any axioms\n'LexLeanRuntime.Quotient.recOn' does not depend on any axioms\n'LexLeanRuntime.Quotient.remainder' does not depend on any axioms\n'LexLeanRuntime.Sliceable' does not depend on any axioms\n'LexLeanRuntime.Sliceable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Sliceable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Sliceable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Sliceable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Sliceable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Sliceable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Sliceable.recOn' does not depend on any axioms\n'LexLeanRuntime.Sliceable.slice' does not depend on any axioms\n'LexLeanRuntime.ToMathInt' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.casesOn' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.noConfusion' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.recOn' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.toInt' does not depend on any axioms\n'LexLeanRuntime.append' does not depend on any axioms\n'LexLeanRuntime.bitAnd' does not depend on any axioms\n'LexLeanRuntime.bitNot' does not depend on any axioms\n'LexLeanRuntime.bitOr' does not depend on any axioms\n'LexLeanRuntime.bitXor' does not depend on any axioms\n'LexLeanRuntime.checkedAdd' does not depend on any axioms\n'LexLeanRuntime.checkedAddInt64' does not depend on any axioms\n'LexLeanRuntime.checkedConvert' does not depend on any axioms\n'LexLeanRuntime.checkedFromInt' does not depend on any axioms\n'LexLeanRuntime.checkedMultiply' does not depend on any axioms\n'LexLeanRuntime.checkedMultiplyInt64' does not depend on any axioms\n'LexLeanRuntime.checkedMultiplyInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.checkedNegate' does not depend on any axioms\n'LexLeanRuntime.checkedNegateInt64' does not depend on any axioms\n'LexLeanRuntime.checkedQuotient' does not depend on any axioms\n'LexLeanRuntime.checkedQuotientInt64' does not depend on any axioms\n'LexLeanRuntime.checkedSubtract' does not depend on any axioms\n'LexLeanRuntime.checkedSubtractInt64' does not depend on any axioms\n'LexLeanRuntime.compareBytes' depends on axioms: [propext]\n'LexLeanRuntime.divideMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._f' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._sunfold' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.equal' does not depend on any axioms\n'LexLeanRuntime.formatDecimal' does not depend on any axioms\n'LexLeanRuntime.index' does not depend on any axioms\n'LexLeanRuntime.instAppendableByteArray' does not depend on any axioms\n'LexLeanRuntime.instAppendableList' does not depend on any axioms\n'LexLeanRuntime.instDecimalInt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instDecimalInt.match_1' does not depend on any axioms\n'LexLeanRuntime.instDecimalOfFixedOfToString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instFixedInt16' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt32' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt64' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt8' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt16' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt32' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt64' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt8' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instIndexableByteArrayUInt8' does not depend on any axioms\n'LexLeanRuntime.instIndexableList' does not depend on any axioms\n'LexLeanRuntime.instLengthableByteArray' does not depend on any axioms\n'LexLeanRuntime.instLengthableList' does not depend on any axioms\n'LexLeanRuntime.instLengthableString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instQuotientInt' does not depend on any axioms\n'LexLeanRuntime.instQuotientNat' does not depend on any axioms\n'LexLeanRuntime.instSliceableByteArray' does not depend on any axioms\n'LexLeanRuntime.instSliceableList' does not depend on any axioms\n'LexLeanRuntime.instToMathIntInt' does not depend on any axioms\n'LexLeanRuntime.join' depends on axioms: [propext]\n'LexLeanRuntime.length' does not depend on any axioms\n'LexLeanRuntime.listIndex' does not depend on any axioms\n'LexLeanRuntime.listIndex._f' does not depend on any axioms\n'LexLeanRuntime.listIndex._sunfold' does not depend on any axioms\n'LexLeanRuntime.listIndex._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.listIndex.match_1' does not depend on any axioms\n'LexLeanRuntime.magnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.multiply' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._f' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._sunfold' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.negate' does not depend on any axioms\n'LexLeanRuntime.parseDecimal' does not depend on any axioms\n'LexLeanRuntime.quotient' does not depend on any axioms\n'LexLeanRuntime.remainder' does not depend on any axioms\n'LexLeanRuntime.shiftLeft' does not depend on any axioms\n'LexLeanRuntime.shiftRight' does not depend on any axioms\n'LexLeanRuntime.signedMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.slice' does not depend on any axioms\n'LexLeanRuntime.splitExact' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.subtract' does not depend on any axioms\n'LexLeanRuntime.utf8Decode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.utf8Encode' does not depend on any axioms\n","stdout_sha256":"73fea1d9e9e9f0a2f1363b9f284eeeb9e434430e9fa910260b9526bad864641e","tool":"lean"} diff --git a/bootstrap/expected/verify/audit/LexLeanAudit.Aadb40bbfc73b1dc6b7a95dab0c348a27.LexLeanBoot.AxiomOutput.process.json b/bootstrap/expected/verify/audit/LexLeanAudit.Aadb40bbfc73b1dc6b7a95dab0c348a27.LexLeanBoot.AxiomOutput.process.json deleted file mode 100644 index 761403b59..000000000 --- a/bootstrap/expected/verify/audit/LexLeanAudit.Aadb40bbfc73b1dc6b7a95dab0c348a27.LexLeanBoot.AxiomOutput.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Aadb40bbfc73b1dc6b7a95dab0c348a27.LexLeanBoot.AxiomOutput.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Aadb40bbfc73b1dc6b7a95dab0c348a27.LexLeanBoot.AxiomOutput","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanBoot.AxiomOutput.Record' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.Rejection' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.Scan' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.afterLabel' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.afterLocation' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.allDigits' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.auditStep' depends on axioms: [propext]\n'LexLeanBoot.AxiomOutput.axiomList' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.byteIn' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.byteIs' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.cat' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.collectStep' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.continuation' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.decimal' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.digit' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.digitStep' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.dropWhiteEnd' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.envelope' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.extend' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.finish' depends on axioms: [propext]\n'LexLeanBoot.AxiomOutput.fitsWord' depends on axioms: [propext]\n'LexLeanBoot.AxiomOutput.headOf' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.inRange' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.insertAxiom' depends on axioms: [propext]\n'LexLeanBoot.AxiomOutput.insertEntry' depends on axioms: [propext]\n'LexLeanBoot.AxiomOutput.isClosedLeanName' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.isCount' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.isFirst' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.isLater' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.isWord' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.lastStep' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.lessBytes' depends on axioms: [propext]\n'LexLeanBoot.AxiomOutput.listLength' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.listed' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.located' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.malformed' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.nameMode' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.nameStep' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.notLean' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.parseAuditOutput' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.parsePayload' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.parsed' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.quoted' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.refuse' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.rejected' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.reversed' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.scanStep' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.significant' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.skipWhite' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.splitLast' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.splitOnce' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.startsWhite' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.stop' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.stripPrefix' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.stripSuffix' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.tailOf' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.terminates' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.text' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.trimmed' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.unrecognized' does not depend on any axioms\n'LexLeanBoot.AxiomOutput.whiteEnding' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.whiteLength' depends on axioms: [propext, Quot.sound]\n'LexLeanBoot.AxiomOutput.zeroStep' does not depend on any axioms\n","stdout_sha256":"bd365d474943e5184f5b9e376d67d1c8fca4b097fa1da5b05bae624f013e1d09","tool":"lean"} diff --git a/bootstrap/expected/verify/audit/LexLeanAudit.Aadb40bbfc73b1dc6b7a95dab0c348a27.LexLeanBoot.Text.process.json b/bootstrap/expected/verify/audit/LexLeanAudit.Aadb40bbfc73b1dc6b7a95dab0c348a27.LexLeanBoot.Text.process.json deleted file mode 100644 index 1498f857d..000000000 --- a/bootstrap/expected/verify/audit/LexLeanAudit.Aadb40bbfc73b1dc6b7a95dab0c348a27.LexLeanBoot.Text.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Aadb40bbfc73b1dc6b7a95dab0c348a27.LexLeanBoot.Text.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Aadb40bbfc73b1dc6b7a95dab0c348a27.LexLeanBoot.Text","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanBoot.Text.byteAt' does not depend on any axioms\n'LexLeanBoot.Text.chomp' does not depend on any axioms\n'LexLeanBoot.Text.endsWith' does not depend on any axioms\n'LexLeanBoot.Text.find' does not depend on any axioms\n'LexLeanBoot.Text.isSpace' does not depend on any axioms\n'LexLeanBoot.Text.joinWith' does not depend on any axioms\n'LexLeanBoot.Text.lineStep' does not depend on any axioms\n'LexLeanBoot.Text.lines' does not depend on any axioms\n'LexLeanBoot.Text.matchAt' does not depend on any axioms\n'LexLeanBoot.Text.reverse' does not depend on any axioms\n'LexLeanBoot.Text.sliceOr' does not depend on any axioms\n'LexLeanBoot.Text.spaceAt' does not depend on any axioms\n'LexLeanBoot.Text.splitOn' does not depend on any axioms\n'LexLeanBoot.Text.splitStep' does not depend on any axioms\n'LexLeanBoot.Text.startsWith' does not depend on any axioms\n'LexLeanBoot.Text.trim' does not depend on any axioms\n'LexLeanBoot.Text.trimEnd' does not depend on any axioms\n'LexLeanBoot.Text.trimStart' does not depend on any axioms\n","stdout_sha256":"f123b29dcd243a53b7c289ef056e99264e1132f910ec78803c53edf0c6543bc0","tool":"lean"} diff --git a/bootstrap/expected/verify/audit/LexLeanAudit.Aadb40bbfc73b1dc6b7a95dab0c348a27.LexLeanRuntime.Collections.process.json b/bootstrap/expected/verify/audit/LexLeanAudit.Aadb40bbfc73b1dc6b7a95dab0c348a27.LexLeanRuntime.Collections.process.json deleted file mode 100644 index a6a12d905..000000000 --- a/bootstrap/expected/verify/audit/LexLeanAudit.Aadb40bbfc73b1dc6b7a95dab0c348a27.LexLeanRuntime.Collections.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Aadb40bbfc73b1dc6b7a95dab0c348a27.LexLeanRuntime.Collections.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Aadb40bbfc73b1dc6b7a95dab0c348a27.LexLeanRuntime.Collections","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanCollections.Key' does not depend on any axioms\n'LexLeanCollections.Key.casesOn' does not depend on any axioms\n'LexLeanCollections.Key.compare' does not depend on any axioms\n'LexLeanCollections.Key.ctorIdx' does not depend on any axioms\n'LexLeanCollections.Key.mk._flat_ctor' does not depend on any axioms\n'LexLeanCollections.Key.mk.noConfusion' does not depend on any axioms\n'LexLeanCollections.Key.noConfusion' does not depend on any axioms\n'LexLeanCollections.Key.noConfusionType' does not depend on any axioms\n'LexLeanCollections.Key.recOn' does not depend on any axioms\n'LexLeanCollections.compareCodes' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._f' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._sunfold' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._unsafe_rec' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.match_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.match_4' does not depend on any axioms\n'LexLeanCollections.containsElement' does not depend on any axioms\n'LexLeanCollections.containsElement._f' does not depend on any axioms\n'LexLeanCollections.containsElement._sunfold' does not depend on any axioms\n'LexLeanCollections.containsElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.graphNodes' does not depend on any axioms\n'LexLeanCollections.graphReachable' depends on axioms: [propext]\n'LexLeanCollections.graphSuccessors' does not depend on any axioms\n'LexLeanCollections.graphTopological' does not depend on any axioms\n'LexLeanCollections.insertElement' does not depend on any axioms\n'LexLeanCollections.insertElement._f' does not depend on any axioms\n'LexLeanCollections.insertElement._sunfold' does not depend on any axioms\n'LexLeanCollections.insertElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.insertElement.match_1' does not depend on any axioms\n'LexLeanCollections.insertEntry' does not depend on any axioms\n'LexLeanCollections.insertEntry._f' does not depend on any axioms\n'LexLeanCollections.insertEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.insertEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.insertEntry.match_1' does not depend on any axioms\n'LexLeanCollections.insertEntry.match_3' does not depend on any axioms\n'LexLeanCollections.instKeyBool' depends on axioms: [propext]\n'LexLeanCollections.instKeyInt' does not depend on any axioms\n'LexLeanCollections.instKeyInt16' does not depend on any axioms\n'LexLeanCollections.instKeyInt32' does not depend on any axioms\n'LexLeanCollections.instKeyInt64' does not depend on any axioms\n'LexLeanCollections.instKeyInt8' does not depend on any axioms\n'LexLeanCollections.instKeyNat' does not depend on any axioms\n'LexLeanCollections.instKeyProd' depends on axioms: [propext]\n'LexLeanCollections.instKeyString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanCollections.instKeyUInt16' does not depend on any axioms\n'LexLeanCollections.instKeyUInt32' does not depend on any axioms\n'LexLeanCollections.instKeyUInt64' does not depend on any axioms\n'LexLeanCollections.instKeyUInt8' does not depend on any axioms\n'LexLeanCollections.iterate' does not depend on any axioms\n'LexLeanCollections.iterate._f' does not depend on any axioms\n'LexLeanCollections.iterate._sunfold' does not depend on any axioms\n'LexLeanCollections.iterate._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.iterate.match_1' does not depend on any axioms\n'LexLeanCollections.iterateUntil' does not depend on any axioms\n'LexLeanCollections.iterateUntil._f' does not depend on any axioms\n'LexLeanCollections.iterateUntil._sunfold' does not depend on any axioms\n'LexLeanCollections.iterateUntil._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.iterateUntil.match_1' does not depend on any axioms\n'LexLeanCollections.lessThan' depends on axioms: [propext]\n'LexLeanCollections.lessThan._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.lessThan.match_1' depends on axioms: [propext]\n'LexLeanCollections.listFold' does not depend on any axioms\n'LexLeanCollections.lookupEntry' does not depend on any axioms\n'LexLeanCollections.lookupEntry._f' does not depend on any axioms\n'LexLeanCollections.lookupEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.lookupEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.mapContains' does not depend on any axioms\n'LexLeanCollections.mapEntries' does not depend on any axioms\n'LexLeanCollections.mapFold' does not depend on any axioms\n'LexLeanCollections.mapInsert' does not depend on any axioms\n'LexLeanCollections.mapKeys' does not depend on any axioms\n'LexLeanCollections.mapLookup' does not depend on any axioms\n'LexLeanCollections.mapRemove' does not depend on any axioms\n'LexLeanCollections.mapSize' does not depend on any axioms\n'LexLeanCollections.mapValues' does not depend on any axioms\n'LexLeanCollections.reachableFrom' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._f' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._sunfold' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._unsafe_rec' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom.match_1' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom.match_4' does not depend on any axioms\n'LexLeanCollections.removeElement' does not depend on any axioms\n'LexLeanCollections.removeElement._f' does not depend on any axioms\n'LexLeanCollections.removeElement._sunfold' does not depend on any axioms\n'LexLeanCollections.removeElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.removeEntry' does not depend on any axioms\n'LexLeanCollections.removeEntry._f' does not depend on any axioms\n'LexLeanCollections.removeEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.removeEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.setContains' does not depend on any axioms\n'LexLeanCollections.setDifference' does not depend on any axioms\n'LexLeanCollections.setElements' does not depend on any axioms\n'LexLeanCollections.setFold' does not depend on any axioms\n'LexLeanCollections.setInsert' does not depend on any axioms\n'LexLeanCollections.setIntersection' does not depend on any axioms\n'LexLeanCollections.setRemove' does not depend on any axioms\n'LexLeanCollections.setSize' does not depend on any axioms\n'LexLeanCollections.setUnion' does not depend on any axioms\n'LexLeanCollections.topological' does not depend on any axioms\n'LexLeanCollections.topological._f' does not depend on any axioms\n'LexLeanCollections.topological._sunfold' does not depend on any axioms\n'LexLeanCollections.topological._unsafe_rec' does not depend on any axioms\n","stdout_sha256":"b75acc0e99e23684c3cc876eacbfc93f47161cfee8a7440df17fa45f321c8c6a","tool":"lean"} diff --git a/bootstrap/expected/verify/audit/LexLeanAudit.Aadb40bbfc73b1dc6b7a95dab0c348a27.LexLeanRuntime.Portable.process.json b/bootstrap/expected/verify/audit/LexLeanAudit.Aadb40bbfc73b1dc6b7a95dab0c348a27.LexLeanRuntime.Portable.process.json deleted file mode 100644 index 4f2ed57dd..000000000 --- a/bootstrap/expected/verify/audit/LexLeanAudit.Aadb40bbfc73b1dc6b7a95dab0c348a27.LexLeanRuntime.Portable.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Aadb40bbfc73b1dc6b7a95dab0c348a27.LexLeanRuntime.Portable.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Aadb40bbfc73b1dc6b7a95dab0c348a27.LexLeanRuntime.Portable","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanRuntime.Appendable' does not depend on any axioms\n'LexLeanRuntime.Appendable.append' does not depend on any axioms\n'LexLeanRuntime.Appendable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Appendable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Appendable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Appendable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Appendable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Appendable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Appendable.recOn' does not depend on any axioms\n'LexLeanRuntime.Decimal' does not depend on any axioms\n'LexLeanRuntime.Decimal.casesOn' does not depend on any axioms\n'LexLeanRuntime.Decimal.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Decimal.format' does not depend on any axioms\n'LexLeanRuntime.Decimal.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Decimal.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Decimal.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Decimal.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Decimal.parse' does not depend on any axioms\n'LexLeanRuntime.Decimal.recOn' does not depend on any axioms\n'LexLeanRuntime.Fixed' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitAnd' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitNot' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitOr' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitXor' does not depend on any axioms\n'LexLeanRuntime.Fixed.casesOn' does not depend on any axioms\n'LexLeanRuntime.Fixed.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Fixed.fromInt' does not depend on any axioms\n'LexLeanRuntime.Fixed.maximum' does not depend on any axioms\n'LexLeanRuntime.Fixed.minimum' does not depend on any axioms\n'LexLeanRuntime.Fixed.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Fixed.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Fixed.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Fixed.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Fixed.recOn' does not depend on any axioms\n'LexLeanRuntime.Fixed.shiftLeft' does not depend on any axioms\n'LexLeanRuntime.Fixed.shiftRight' does not depend on any axioms\n'LexLeanRuntime.Fixed.toToMathInt' does not depend on any axioms\n'LexLeanRuntime.Indexable' does not depend on any axioms\n'LexLeanRuntime.Indexable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Indexable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Indexable.index' does not depend on any axioms\n'LexLeanRuntime.Indexable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Indexable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Indexable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Indexable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Indexable.recOn' does not depend on any axioms\n'LexLeanRuntime.Lengthable' does not depend on any axioms\n'LexLeanRuntime.Lengthable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Lengthable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Lengthable.length' does not depend on any axioms\n'LexLeanRuntime.Lengthable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Lengthable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Lengthable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Lengthable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Lengthable.recOn' does not depend on any axioms\n'LexLeanRuntime.Quotient' does not depend on any axioms\n'LexLeanRuntime.Quotient.casesOn' does not depend on any axioms\n'LexLeanRuntime.Quotient.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Quotient.isZero' does not depend on any axioms\n'LexLeanRuntime.Quotient.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Quotient.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Quotient.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Quotient.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Quotient.quotient' does not depend on any axioms\n'LexLeanRuntime.Quotient.recOn' does not depend on any axioms\n'LexLeanRuntime.Quotient.remainder' does not depend on any axioms\n'LexLeanRuntime.Sliceable' does not depend on any axioms\n'LexLeanRuntime.Sliceable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Sliceable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Sliceable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Sliceable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Sliceable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Sliceable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Sliceable.recOn' does not depend on any axioms\n'LexLeanRuntime.Sliceable.slice' does not depend on any axioms\n'LexLeanRuntime.ToMathInt' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.casesOn' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.noConfusion' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.recOn' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.toInt' does not depend on any axioms\n'LexLeanRuntime.append' does not depend on any axioms\n'LexLeanRuntime.bitAnd' does not depend on any axioms\n'LexLeanRuntime.bitNot' does not depend on any axioms\n'LexLeanRuntime.bitOr' does not depend on any axioms\n'LexLeanRuntime.bitXor' does not depend on any axioms\n'LexLeanRuntime.checkedAdd' does not depend on any axioms\n'LexLeanRuntime.checkedAddInt64' does not depend on any axioms\n'LexLeanRuntime.checkedConvert' does not depend on any axioms\n'LexLeanRuntime.checkedFromInt' does not depend on any axioms\n'LexLeanRuntime.checkedMultiply' does not depend on any axioms\n'LexLeanRuntime.checkedMultiplyInt64' does not depend on any axioms\n'LexLeanRuntime.checkedMultiplyInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.checkedNegate' does not depend on any axioms\n'LexLeanRuntime.checkedNegateInt64' does not depend on any axioms\n'LexLeanRuntime.checkedQuotient' does not depend on any axioms\n'LexLeanRuntime.checkedQuotientInt64' does not depend on any axioms\n'LexLeanRuntime.checkedSubtract' does not depend on any axioms\n'LexLeanRuntime.checkedSubtractInt64' does not depend on any axioms\n'LexLeanRuntime.compareBytes' depends on axioms: [propext]\n'LexLeanRuntime.divideMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._f' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._sunfold' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.equal' does not depend on any axioms\n'LexLeanRuntime.formatDecimal' does not depend on any axioms\n'LexLeanRuntime.index' does not depend on any axioms\n'LexLeanRuntime.instAppendableByteArray' does not depend on any axioms\n'LexLeanRuntime.instAppendableList' does not depend on any axioms\n'LexLeanRuntime.instDecimalInt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instDecimalInt.match_1' does not depend on any axioms\n'LexLeanRuntime.instDecimalOfFixedOfToString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instFixedInt16' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt32' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt64' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt8' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt16' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt32' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt64' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt8' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instIndexableByteArrayUInt8' does not depend on any axioms\n'LexLeanRuntime.instIndexableList' does not depend on any axioms\n'LexLeanRuntime.instLengthableByteArray' does not depend on any axioms\n'LexLeanRuntime.instLengthableList' does not depend on any axioms\n'LexLeanRuntime.instLengthableString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instQuotientInt' does not depend on any axioms\n'LexLeanRuntime.instQuotientNat' does not depend on any axioms\n'LexLeanRuntime.instSliceableByteArray' does not depend on any axioms\n'LexLeanRuntime.instSliceableList' does not depend on any axioms\n'LexLeanRuntime.instToMathIntInt' does not depend on any axioms\n'LexLeanRuntime.join' depends on axioms: [propext]\n'LexLeanRuntime.length' does not depend on any axioms\n'LexLeanRuntime.listIndex' does not depend on any axioms\n'LexLeanRuntime.listIndex._f' does not depend on any axioms\n'LexLeanRuntime.listIndex._sunfold' does not depend on any axioms\n'LexLeanRuntime.listIndex._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.listIndex.match_1' does not depend on any axioms\n'LexLeanRuntime.magnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.multiply' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._f' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._sunfold' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.negate' does not depend on any axioms\n'LexLeanRuntime.parseDecimal' does not depend on any axioms\n'LexLeanRuntime.quotient' does not depend on any axioms\n'LexLeanRuntime.remainder' does not depend on any axioms\n'LexLeanRuntime.shiftLeft' does not depend on any axioms\n'LexLeanRuntime.shiftRight' does not depend on any axioms\n'LexLeanRuntime.signedMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.slice' does not depend on any axioms\n'LexLeanRuntime.splitExact' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.subtract' does not depend on any axioms\n'LexLeanRuntime.utf8Decode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.utf8Encode' does not depend on any axioms\n","stdout_sha256":"73fea1d9e9e9f0a2f1363b9f284eeeb9e434430e9fa910260b9526bad864641e","tool":"lean"} diff --git a/bootstrap/expected/verify/extract/LexLeanExtract.Xadb40bbfc73b1dc6b7a95dab0c348a27.lean b/bootstrap/expected/verify/extract/LexLeanExtract.X5ba510b7049a3e59c5f1ffb1f0a6611d.lean similarity index 100% rename from bootstrap/expected/verify/extract/LexLeanExtract.Xadb40bbfc73b1dc6b7a95dab0c348a27.lean rename to bootstrap/expected/verify/extract/LexLeanExtract.X5ba510b7049a3e59c5f1ffb1f0a6611d.lean diff --git a/bootstrap/expected/verify/extract/process.json b/bootstrap/expected/verify/extract/process.json index 7c32e86e8..fc48bdec0 100644 --- a/bootstrap/expected/verify/extract/process.json +++ b/bootstrap/expected/verify/extract/process.json @@ -1 +1 @@ -{"argv":["env","lean","$STAGING/extract/LexLeanExtract.Xadb40bbfc73b1dc6b7a95dab0c348a27.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanExtract.Xadb40bbfc73b1dc6b7a95dab0c348a27","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"{\"spec\":\"lexlean/lcnf-extraction/2\",\"lean\":{\"version\":\"4.32.1\",\"githash\":\"f054605aea4b840552cca2e725580bffd1e1b704\"},\"roots\":[\"LexLeanBoot.AxiomOutput.isClosedLeanName\",\"LexLeanBoot.AxiomOutput.parseAuditOutput\"],\"constants\":[{\"name\":\"LexLeanCollections.iterateUntil\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Nat\",\"Option\",\"Prod\",\"Nat.brecOn\",\"LexLeanCollections.iterateUntil._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}}}}},\"parameters\":[{\"id\":\"_uniq.65\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.68\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]}},\"borrow\":false},{\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.79\",\"parameters\":[{\"id\":\"_uniq.76\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"},{\"kind\":\"fvar\",\"id\":\"_uniq.77\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.78\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.79\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.121\",\"parameters\":[{\"id\":\"_uniq.91\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.92\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.101\",\"parameters\":[{\"id\":\"_uniq.98\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.92\"},{\"kind\":\"fvar\",\"id\":\"_uniq.99\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.100\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.101\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.106\",\"parameters\":[{\"id\":\"_uniq.104\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.68\"},{\"kind\":\"fvar\",\"id\":\"_uniq.91\"},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.105\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.106\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.68\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"discriminant\":\"_uniq.115\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.102\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.116\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.117\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.118\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.107\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.118\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.119\"}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.121\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Nat\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"discriminant\":\"_uniq.69\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Nat.zero\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.128\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.80\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.128\"}}},{\"kind\":\"constructor\",\"constructor\":\"Nat.succ\",\"parameters\":[{\"id\":\"_uniq.129\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.130\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.122\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.129\"},{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.130\"}}}]}}}}}},\"uses\":[\"Bool\",\"Nat\",\"Option\",\"PUnit\",\"Prod\",\"Bool.false\",\"Bool.true\",\"LexLeanCollections.iterateUntil\",\"Nat.succ\",\"Nat.zero\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.listFold\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"List.foldl\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":2}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}}},\"parameters\":[{\"id\":\"_uniq.53\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}}},\"borrow\":false},{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},\"borrow\":false},{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},\"value\":{\"kind\":\"const\",\"name\":\"List.foldl\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.64\"}}},\"uses\":[\"List\",\"List.foldl\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.Appendable\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.Appendable.mk\",\"parameters\":1,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"bvar\",\"index\":2}}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}}}}]}},{\"name\":\"LexLeanRuntime.Fixed\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.Fixed.mk\",\"parameters\":1,\"fields\":10,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"bvar\",\"index\":2}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":4},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":5},\"codomain\":{\"kind\":\"bvar\",\"index\":6}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":5},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":6},\"codomain\":{\"kind\":\"bvar\",\"index\":7}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":6},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":7},\"codomain\":{\"kind\":\"bvar\",\"index\":8}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":7},\"codomain\":{\"kind\":\"bvar\",\"index\":8}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":8},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":10}]}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":9},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":11}]}}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":10}]}}}}}}}}}}}}}]}},{\"name\":\"LexLeanRuntime.Indexable\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":2,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.Indexable.mk\",\"parameters\":2,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]}}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2},{\"kind\":\"bvar\",\"index\":1}]}}}}}]}},{\"name\":\"LexLeanRuntime.Lengthable\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.Lengthable.mk\",\"parameters\":1,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}}}}]}},{\"name\":\"LexLeanRuntime.Quotient\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.Quotient.mk\",\"parameters\":1,\"fields\":3,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"bvar\",\"index\":2}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}}}]}},{\"name\":\"LexLeanRuntime.Sliceable\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.Sliceable.mk\",\"parameters\":1,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}}}}]}},{\"name\":\"LexLeanRuntime.ToMathInt\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.ToMathInt.mk\",\"parameters\":1,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}}}}]}},{\"name\":\"LexLeanRuntime.append\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.Appendable.append\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}},\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"borrow\":false},{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"borrow\":false},{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Appendable\",\"index\":0,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.39\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.40\"}}}},\"uses\":[\"LexLeanRuntime.Appendable\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.checkedFromInt\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"Option\",\"ite\",\"Int.decLt\",\"Int.instLTInt\",\"LT.lt\",\"LexLeanRuntime.Fixed\",\"Option.none\",\"Option.some\",\"LexLeanRuntime.Fixed.fromInt\",\"LexLeanRuntime.Fixed.maximum\",\"LexLeanRuntime.Fixed.minimum\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]}}}},\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"borrow\":false},{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":2,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"discriminant\":\"_uniq.33\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":3,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.43\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"discriminant\":\"_uniq.44\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.45\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":1,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.47\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.49\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.50\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.51\"}}}]}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.53\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.54\"}}}]}}}},\"uses\":[\"Decidable\",\"Int\",\"Option\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Int.decLt\",\"LexLeanRuntime.Fixed\",\"Option.none\",\"Option.some\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.checkedSubtract\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"instHSub\",\"HSub.hSub\",\"Int.instSub\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.checkedFromInt\",\"LexLeanRuntime.Fixed.toToMathInt\",\"LexLeanRuntime.ToMathInt.toInt\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}},\"parameters\":[{\"id\":\"_uniq.19\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"borrow\":false},{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instSub\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HSub\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHSub\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HSub\",\"index\":0,\"value\":\"_uniq.24\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":0,\"value\":\"_uniq.20\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.ToMathInt\",\"index\":0,\"value\":\"_uniq.49\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.53\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.53\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.25\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedFromInt\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}}}}}}}}}},\"uses\":[\"HSub\",\"Int\",\"Option\",\"Sub\",\"instHSub\",\"Int.instSub\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.ToMathInt\",\"LexLeanRuntime.checkedFromInt\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.compareBytes\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"List\",\"UInt8\",\"ByteArray.toList\",\"List.instOrd\",\"Ord.compare\",\"UInt8.instOrd\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Ord\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOrd\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Ord\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.instOrd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Ord\",\"index\":0,\"value\":\"_uniq.14\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.toList\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.toList\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.23\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.26\"}}}}}}}},\"uses\":[\"ByteArray\",\"List\",\"Ord\",\"Ordering\",\"UInt8\",\"ByteArray.toList\",\"List.instOrd\",\"UInt8.instOrd\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.equal\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"BEq\",\"BEq.beq\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}}}},\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"borrow\":false},{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},\"borrow\":false},{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"BEq\",\"index\":0,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.25\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.26\"}}}},\"uses\":[\"BEq\",\"Bool\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.index\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"LexLeanRuntime.Indexable\",\"LexLeanRuntime.Indexable.index\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1},{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}}},\"parameters\":[{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"borrow\":false},{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},\"borrow\":false},{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Indexable\",\"index\":0,\"value\":\"_uniq.26\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.34\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.35\"}}}},\"uses\":[\"Nat\",\"Option\",\"LexLeanRuntime.Indexable\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instAppendableByteArray\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"ByteArray.append\",\"LexLeanRuntime.Appendable.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.1\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.fastAppend\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.2\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.1\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.2\"}}}},\"uses\":[\"ByteArray\",\"ByteArray.fastAppend\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.Appendable.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instFixedUInt8\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"Nat\",\"Option\",\"UInt32\",\"UInt8\",\"instLTNat\",\"instOfNat\",\"instOfNatNat\",\"ite\",\"Int.ofNat\",\"LT.lt\",\"Nat.decLt\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"UInt32.toNat\",\"UInt8.complement\",\"UInt8.land\",\"UInt8.lor\",\"UInt8.ofInt\",\"UInt8.ofNat\",\"UInt8.shiftLeft\",\"UInt8.shiftRight\",\"UInt8.toNat\",\"UInt8.xor\",\"LexLeanRuntime.Fixed.mk\",\"LexLeanRuntime.ToMathInt.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.16\",\"parameters\":[{\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int.ofNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.15\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.ofInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.20\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"255\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.23\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.land\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.lor\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.xor\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.complement\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.53\",\"parameters\":[{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"8\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.43\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"discriminant\":\"_uniq.45\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.46\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.47\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.48\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.ofNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.shiftLeft\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.51\"}}}}}]}}}}}}},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.78\",\"parameters\":[{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"8\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.68\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.66\"},{\"kind\":\"fvar\",\"id\":\"_uniq.69\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"discriminant\":\"_uniq.70\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.71\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.72\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.73\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.ofNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.66\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.shiftRight\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.75\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.76\"}}}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.78\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.79\"}}}}}}}}}}}}}}}}}},\"uses\":[\"Decidable\",\"Int\",\"Nat\",\"OfNat\",\"Option\",\"UInt32\",\"UInt8\",\"instOfNat\",\"instOfNatNat\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Int.ofNat\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.ToMathInt\",\"Nat.decLt\",\"Option.none\",\"Option.some\",\"UInt32.toNat\",\"UInt8.complement\",\"UInt8.land\",\"UInt8.lor\",\"UInt8.ofInt\",\"UInt8.ofNat\",\"UInt8.shiftLeft\",\"UInt8.shiftRight\",\"UInt8.toNat\",\"UInt8.xor\",\"LexLeanRuntime.Fixed.mk\",\"LexLeanRuntime.ToMathInt.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instIndexableByteArrayUInt8\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Array\",\"ByteArray\",\"Nat\",\"UInt8\",\"instLTNat\",\"Array.instGetElem?NatLtSize\",\"Array.size\",\"ByteArray.data\",\"GetElem?.getElem?\",\"LT.lt\",\"LexLeanRuntime.Indexable.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.59\",\"parameters\":[{\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"GetElem?\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Array.instGetElem?NatLtSize\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"GetElem?\",\"index\":1,\"value\":\"_uniq.9\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.data\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.58\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.60\"}}}},\"uses\":[\"Array\",\"ByteArray\",\"GetElem?\",\"Nat\",\"Option\",\"UInt8\",\"Array.instGetElem?NatLtSize\",\"ByteArray.data\",\"LexLeanRuntime.Indexable\",\"LexLeanRuntime.Indexable.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"ByteArray.size\",\"LexLeanRuntime.Lengthable.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.1\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.size\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.5\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.1\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.5\"}}}},\"uses\":[\"ByteArray\",\"Nat\",\"ByteArray.size\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.Lengthable.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instQuotientNat\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instBEqOfDecidableEq\",\"instDecidableEqNat\",\"instOfNatNat\",\"BEq.beq\",\"Nat.div\",\"Nat.mod\",\"OfNat.ofNat\",\"LexLeanRuntime.Quotient.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.2\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"Nat.div\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.3\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"Nat.mod\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.15\",\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"BEq\",\"index\":0,\"value\":\"_uniq.9\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.12\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.10\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.14\"}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.2\"},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.25\"}}}}}},\"uses\":[\"BEq\",\"Bool\",\"Decidable\",\"Nat\",\"OfNat\",\"instBEqOfDecidableEq\",\"instDecidableEqNat\",\"instOfNatNat\",\"LexLeanRuntime.Quotient\",\"Nat.div\",\"Nat.mod\",\"LexLeanRuntime.Quotient.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instSliceableByteArray\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Nat\",\"Option\",\"instAddNat\",\"instHAdd\",\"instLENat\",\"ite\",\"ByteArray.extract\",\"ByteArray.size\",\"HAdd.hAdd\",\"LE.le\",\"Nat.decLe\",\"Option.none\",\"Option.some\",\"LexLeanRuntime.Sliceable.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.33\",\"parameters\":[{\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.23\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.size\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.decLe\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.26\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.28\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.extract\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}}}}]}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.39\"}}}},\"uses\":[\"Add\",\"ByteArray\",\"Decidable\",\"HAdd\",\"Nat\",\"Option\",\"instAddNat\",\"instHAdd\",\"ByteArray.extract\",\"ByteArray.size\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.Sliceable\",\"Nat.decLe\",\"Option.none\",\"Option.some\",\"LexLeanRuntime.Sliceable.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.length\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.Lengthable.length\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}}},\"parameters\":[{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Lengthable\",\"index\":0,\"value\":\"_uniq.16\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.18\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.19\"}}}},\"uses\":[\"Nat\",\"LexLeanRuntime.Lengthable\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.quotient\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"LexLeanRuntime.Quotient\",\"LexLeanRuntime.Quotient.isZero\",\"LexLeanRuntime.Quotient.quotient\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":3},\"codomain\":{\"kind\":\"bvar\",\"index\":4}}}}}},\"parameters\":[{\"id\":\"_uniq.39\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"borrow\":false},{\"id\":\"_uniq.41\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"borrow\":false},{\"id\":\"_uniq.42\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"borrow\":false},{\"id\":\"_uniq.43\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Quotient\",\"index\":2,\"value\":\"_uniq.40\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.52\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"discriminant\":\"_uniq.55\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Quotient\",\"index\":0,\"value\":\"_uniq.40\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.59\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.60\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.43\"}}]}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.Quotient\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.remainder\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"LexLeanRuntime.Quotient\",\"LexLeanRuntime.Quotient.isZero\",\"LexLeanRuntime.Quotient.remainder\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":3},\"codomain\":{\"kind\":\"bvar\",\"index\":4}}}}}},\"parameters\":[{\"id\":\"_uniq.39\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"borrow\":false},{\"id\":\"_uniq.41\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"borrow\":false},{\"id\":\"_uniq.42\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"borrow\":false},{\"id\":\"_uniq.43\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Quotient\",\"index\":2,\"value\":\"_uniq.40\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.52\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"discriminant\":\"_uniq.55\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Quotient\",\"index\":1,\"value\":\"_uniq.40\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.59\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.60\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.43\"}}]}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.Quotient\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.slice\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"LexLeanRuntime.Sliceable\",\"LexLeanRuntime.Sliceable.slice\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":4}]}}}}}},\"parameters\":[{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"borrow\":false},{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},\"borrow\":false},{\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]}}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Sliceable\",\"index\":0,\"value\":\"_uniq.24\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.28\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.29\"}}}},\"uses\":[\"Nat\",\"Option\",\"LexLeanRuntime.Sliceable\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.subtract\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Sub\",\"instHSub\",\"HSub.hSub\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}},\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"borrow\":false},{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"borrow\":false},{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HSub\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instHSub\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HSub\",\"index\":0,\"value\":\"_uniq.39\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}}}},\"uses\":[\"HSub\",\"Sub\",\"instHSub\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.utf8Encode\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"String\",\"String.toUTF8\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"String.toUTF8\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}},\"uses\":[\"ByteArray\",\"String\",\"String.toUTF8\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"kind\":\"inductive\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanBoot.AxiomOutput.Record.mk\",\"parameters\":0,\"fields\":3,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}}}}}]}},{\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"kind\":\"inductive\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanBoot.AxiomOutput.Rejection.mk\",\"parameters\":0,\"fields\":2,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]}}}}]}},{\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"kind\":\"inductive\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanBoot.AxiomOutput.Scan.between\",\"parameters\":0,\"fields\":2,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}}}},{\"name\":\"LexLeanBoot.AxiomOutput.Scan.inside\",\"parameters\":0,\"fields\":4,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}}}}}},{\"name\":\"LexLeanBoot.AxiomOutput.Scan.stopped\",\"parameters\":0,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}}}]}},{\"name\":\"LexLeanBoot.AxiomOutput.afterLabel\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Option\",\"Unit\",\"Option.none\",\"LexLeanBoot.AxiomOutput.stripPrefix\",\"LexLeanBoot.AxiomOutput.text\",\"LexLeanBoot.AxiomOutput.isWord.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.34\",\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"info: \"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.stripPrefix\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.33\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.34\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.41\",\"parameters\":[{\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.40\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.41\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\" \"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.stripPrefix\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.52\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.42\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.54\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.35\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.56\"}}}]}}}}}}}}},\"uses\":[\"ByteArray\",\"Option\",\"PUnit\",\"String\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"LexLeanBoot.AxiomOutput.stripPrefix\",\"LexLeanBoot.AxiomOutput.text\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.afterLocation\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Option\",\"Prod\",\"Unit\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.none\",\"Prod.fst\",\"Prod.snd\",\"LexLeanBoot.AxiomOutput.afterLabel\",\"LexLeanBoot.AxiomOutput.isCount\",\"LexLeanBoot.AxiomOutput.splitOnce\",\"LexLeanBoot.AxiomOutput.text\",\"LexLeanBoot.AxiomOutput.afterLocation.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.170\",\"parameters\":[{\"id\":\"_uniq.80\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.80\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.85\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.80\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.87\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.146\",\"parameters\":[{\"id\":\"_uniq.93\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.93\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.97\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.93\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.99\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.afterLabel\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.100\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.101\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.111\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.isCount\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.86\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.113\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.111\"},{\"kind\":\"fvar\",\"id\":\"_uniq.112\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.113\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.114\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.115\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.116\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.isCount\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.125\"},{\"kind\":\"fvar\",\"id\":\"_uniq.112\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.126\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.127\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.128\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.128\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.129\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.138\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.isCount\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.98\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.139\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.138\"},{\"kind\":\"fvar\",\"id\":\"_uniq.112\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.139\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.140\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.141\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.141\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.142\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.102\"}}]}}}}]}}}}]}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.147\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.146\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.153\",\"parameters\":[{\"id\":\"_uniq.151\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.152\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.152\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.154\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.153\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.162\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\":\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.163\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.162\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.164\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.splitOnce\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.69\"},{\"kind\":\"fvar\",\"id\":\"_uniq.163\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.164\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.165\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.166\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.154\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.165\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.166\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.167\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.168\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.147\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.167\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.168\"}}}]}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.171\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.170\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.193\",\"parameters\":[{\"id\":\"_uniq.174\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.176\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.afterLabel\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.69\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.177\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.176\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.186\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.isCount\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.68\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.187\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.188\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.186\"},{\"kind\":\"fvar\",\"id\":\"_uniq.187\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.188\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.189\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.190\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.190\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.191\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.177\"}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.194\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.193\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.202\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"-\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.203\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.202\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.204\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.splitOnce\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.68\"},{\"kind\":\"fvar\",\"id\":\"_uniq.203\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.204\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.205\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.206\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.194\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.205\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.206\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.207\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.208\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.171\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.207\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.208\"}}}]}}}}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Decidable\",\"Option\",\"PUnit\",\"Prod\",\"String\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"LexLeanBoot.AxiomOutput.afterLabel\",\"LexLeanBoot.AxiomOutput.isCount\",\"LexLeanBoot.AxiomOutput.splitOnce\",\"LexLeanBoot.AxiomOutput.text\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.allDigits\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Nat\",\"instOfNatNat\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"Nat.beq\",\"OfNat.ofNat\",\"Prod.fst\",\"LexLeanBoot.AxiomOutput.digitStep\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.11\",\"parameters\":[{\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.digitStep\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.10\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.15\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.17\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.19\"}}}}}}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"instOfNatNat\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"Nat.beq\",\"LexLeanBoot.AxiomOutput.digitStep\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.auditStep\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Except\",\"List\",\"Option\",\"Prod\",\"UInt8\",\"Unit\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"ByteArray.instBEq\",\"ByteArray.mk\",\"Except.ok\",\"LexLeanRuntime.equal\",\"List.nil\",\"List.toArray\",\"Option.some\",\"LexLeanBoot.AxiomOutput.Record\",\"LexLeanBoot.AxiomOutput.Rejection\",\"LexLeanBoot.AxiomOutput.cat\",\"LexLeanBoot.AxiomOutput.insertEntry\",\"LexLeanBoot.AxiomOutput.quoted\",\"LexLeanBoot.AxiomOutput.refuse\",\"LexLeanBoot.AxiomOutput.text\",\"LexLeanBoot.AxiomOutput.Record.axioms\",\"LexLeanBoot.AxiomOutput.Record.declaration\",\"LexLeanBoot.AxiomOutput.Record.expected\",\"LexLeanBoot.AxiomOutput.auditStep.match_1\",\"LexLeanBoot.AxiomOutput.insertEntry.match_1\",\"LexLeanBoot.AxiomOutput.isWord.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}}},\"parameters\":[{\"id\":\"_uniq.69\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"borrow\":false},{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.77\",\"parameters\":[{\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.69\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.77\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.190\",\"parameters\":[{\"id\":\"_uniq.85\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.95\",\"parameters\":[{\"id\":\"_uniq.94\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.94\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.95\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.104\",\"parameters\":[{\"id\":\"_uniq.100\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.toArray\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.101\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.102\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.103\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.104\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanBoot.AxiomOutput.Record\",\"index\":2,\"value\":\"_uniq.70\"},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.183\",\"parameters\":[{\"id\":\"_uniq.121\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.121\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"duplicate record for \"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.124\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.123\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanBoot.AxiomOutput.Record\",\"index\":0,\"value\":\"_uniq.70\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.quoted\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.125\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.127\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.cat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.124\"},{\"kind\":\"fvar\",\"id\":\"_uniq.126\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.128\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.122\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.129\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.refuse\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.127\"},{\"kind\":\"fvar\",\"id\":\"_uniq.128\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.130\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.129\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.131\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"expected a record for \"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.132\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.131\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.quoted\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.122\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.cat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.132\"},{\"kind\":\"fvar\",\"id\":\"_uniq.133\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.135\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\", found \"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.135\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.137\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.cat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.134\"},{\"kind\":\"fvar\",\"id\":\"_uniq.136\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.138\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.cat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.137\"},{\"kind\":\"fvar\",\"id\":\"_uniq.126\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.139\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.refuse\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.138\"},{\"kind\":\"fvar\",\"id\":\"_uniq.128\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.140\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.139\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.149\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.instBEq\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.150\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.149\"},{\"kind\":\"fvar\",\"id\":\"_uniq.125\"},{\"kind\":\"fvar\",\"id\":\"_uniq.122\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.151\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.152\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.150\"},{\"kind\":\"fvar\",\"id\":\"_uniq.151\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"discriminant\":\"_uniq.152\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.153\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.140\"}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.154\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.160\",\"parameters\":[{\"id\":\"_uniq.158\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.159\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.158\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.159\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.161\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.160\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.166\",\"parameters\":[{\"id\":\"_uniq.165\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.130\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.167\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.166\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.175\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanBoot.AxiomOutput.Record\",\"index\":1,\"value\":\"_uniq.70\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.176\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.insertEntry\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.125\"},{\"kind\":\"fvar\",\"id\":\"_uniq.175\"},{\"kind\":\"fvar\",\"id\":\"_uniq.85\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"discriminant\":\"_uniq.176\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.177\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.178\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.167\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.177\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.178\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.179\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.180\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.161\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.179\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.180\"}}}]}}}}}}}}]}}}}}}}}}}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.186\",\"parameters\":[{\"id\":\"_uniq.184\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.185\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.105\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.184\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.183\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.185\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.189\",\"parameters\":[{\"id\":\"_uniq.187\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.188\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.96\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.187\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.183\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.188\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"discriminant\":\"_uniq.116\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.186\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.117\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.119\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.189\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.119\"}]}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.191\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.190\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Except\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"discriminant\":\"_uniq.69\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Except.error\",\"parameters\":[{\"id\":\"_uniq.202\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.203\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.78\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.202\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.203\"}}},{\"kind\":\"constructor\",\"constructor\":\"Except.ok\",\"parameters\":[{\"id\":\"_uniq.204\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.205\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.191\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.204\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.205\"}}}]}}}}}},\"uses\":[\"Array\",\"BEq\",\"Bool\",\"ByteArray\",\"Decidable\",\"Except\",\"List\",\"Option\",\"PUnit\",\"Prod\",\"String\",\"UInt8\",\"instDecidableEqBool\",\"Bool.true\",\"ByteArray.instBEq\",\"ByteArray.mk\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Except.error\",\"Except.ok\",\"LexLeanRuntime.equal\",\"List.nil\",\"List.toArray\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"LexLeanBoot.AxiomOutput.Record\",\"LexLeanBoot.AxiomOutput.Rejection\",\"LexLeanBoot.AxiomOutput.cat\",\"LexLeanBoot.AxiomOutput.insertEntry\",\"LexLeanBoot.AxiomOutput.quoted\",\"LexLeanBoot.AxiomOutput.refuse\",\"LexLeanBoot.AxiomOutput.text\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.axiomList\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Except\",\"List\",\"Prod\",\"UInt8\",\"Unit\",\"Except.ok\",\"LexLeanCollections.listFold\",\"List.nil\",\"OfNat.ofNat\",\"UInt8.instOfNat\",\"LexLeanBoot.AxiomOutput.collectStep\",\"LexLeanBoot.AxiomOutput.malformed\",\"LexLeanBoot.AxiomOutput.parsed\",\"LexLeanBoot.AxiomOutput.text\",\"LexLeanBoot.Text.splitOn\",\"LexLeanBoot.AxiomOutput.axiomList.match_1\",\"LexLeanBoot.AxiomOutput.collectStep.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}}},\"parameters\":[{\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.62\",\"parameters\":[{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.malformed\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.61\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.62\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.107\",\"parameters\":[{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.80\",\"parameters\":[{\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"an axiom list cannot be empty\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.77\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.malformed\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.78\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.79\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.80\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.91\",\"parameters\":[{\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.89\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.parsed\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.90\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.91\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"discriminant\":\"_uniq.70\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.81\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.101\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.102\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.103\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.104\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.92\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.105\"}}}]}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.107\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.124\",\"parameters\":[{\"id\":\"_uniq.121\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"borrow\":false},{\"id\":\"_uniq.122\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.collectStep\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.121\"},{\"kind\":\"fvar\",\"id\":\"_uniq.122\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.123\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.125\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.127\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"44\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.128\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.127\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.129\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.128\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.130\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.splitOn\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},{\"kind\":\"fvar\",\"id\":\"_uniq.129\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.131\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.124\"},{\"kind\":\"fvar\",\"id\":\"_uniq.126\"},{\"kind\":\"fvar\",\"id\":\"_uniq.130\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Except\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"discriminant\":\"_uniq.131\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Except.error\",\"parameters\":[{\"id\":\"_uniq.132\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.63\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.132\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.133\"}}},{\"kind\":\"constructor\",\"constructor\":\"Except.ok\",\"parameters\":[{\"id\":\"_uniq.134\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.135\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.108\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.134\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.135\"}}}]}}}}}}}}}}}}}},\"uses\":[\"ByteArray\",\"Except\",\"List\",\"Nat\",\"OfNat\",\"PUnit\",\"Prod\",\"String\",\"UInt8\",\"Except.error\",\"Except.ok\",\"LexLeanCollections.listFold\",\"List.cons\",\"List.nil\",\"UInt8.instOfNat\",\"Unit.unit\",\"LexLeanBoot.AxiomOutput.collectStep\",\"LexLeanBoot.AxiomOutput.malformed\",\"LexLeanBoot.AxiomOutput.parsed\",\"LexLeanBoot.AxiomOutput.text\",\"LexLeanBoot.Text.splitOn\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.byteIn\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Nat\",\"Option\",\"UInt8\",\"Unit\",\"Bool.false\",\"LexLeanBoot.AxiomOutput.inRange\",\"LexLeanBoot.Text.byteAt\",\"LexLeanBoot.AxiomOutput.inRange.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}}}},\"parameters\":[{\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.53\",\"parameters\":[{\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.inRange\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.52\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.53\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.60\",\"parameters\":[{\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.59\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.60\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.byteAt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.69\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.61\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.71\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.54\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.72\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.73\"}}}]}}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Nat\",\"Option\",\"PUnit\",\"UInt8\",\"Bool.false\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"LexLeanBoot.AxiomOutput.inRange\",\"LexLeanBoot.Text.byteAt\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.byteIs\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Nat\",\"Option\",\"UInt8\",\"Unit\",\"instBEqOfDecidableEq\",\"instDecidableEqUInt8\",\"Bool.false\",\"LexLeanRuntime.equal\",\"LexLeanBoot.Text.byteAt\",\"LexLeanBoot.AxiomOutput.inRange.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}}},\"parameters\":[{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.50\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqUInt8\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.49\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.50\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.57\",\"parameters\":[{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.56\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.57\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.byteAt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.66\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.58\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.68\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.51\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.69\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.70\"}}}]}}}}}}},\"uses\":[\"BEq\",\"Bool\",\"ByteArray\",\"Decidable\",\"Nat\",\"Option\",\"PUnit\",\"UInt8\",\"instBEqOfDecidableEq\",\"instDecidableEqUInt8\",\"Bool.false\",\"LexLeanRuntime.equal\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"LexLeanBoot.Text.byteAt\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.cat\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableByteArray\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.14\"}}}},\"uses\":[\"ByteArray\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableByteArray\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.collectStep\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Except\",\"List\",\"Option\",\"Unit\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Except.error\",\"Except.ok\",\"LexLeanBoot.AxiomOutput.cat\",\"LexLeanBoot.AxiomOutput.insertAxiom\",\"LexLeanBoot.AxiomOutput.isClosedLeanName\",\"LexLeanBoot.AxiomOutput.notLean\",\"LexLeanBoot.AxiomOutput.quoted\",\"LexLeanBoot.AxiomOutput.text\",\"LexLeanBoot.AxiomOutput.trimmed\",\"LexLeanBoot.AxiomOutput.collectStep.match_1\",\"LexLeanBoot.AxiomOutput.insertAxiom.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}}},\"parameters\":[{\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"borrow\":false},{\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.59\",\"parameters\":[{\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.51\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.59\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.116\",\"parameters\":[{\"id\":\"_uniq.65\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.trimmed\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.67\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.isClosedLeanName\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.68\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.77\"},{\"kind\":\"fvar\",\"id\":\"_uniq.78\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.79\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.80\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.notLean\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.68\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.82\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.83\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.89\",\"parameters\":[{\"id\":\"_uniq.87\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.88\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.89\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.100\",\"parameters\":[{\"id\":\"_uniq.94\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"duplicate axiom name \"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.95\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.quoted\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.68\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.cat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.96\"},{\"kind\":\"fvar\",\"id\":\"_uniq.97\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.98\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.99\"}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.100\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.insertAxiom\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.68\"},{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.109\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.110\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.111\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.101\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.110\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.111\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.112\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.113\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.90\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.112\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.113\"}}}]}}}}}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.116\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Except\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.51\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Except.error\",\"parameters\":[{\"id\":\"_uniq.128\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.129\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.60\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.128\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.129\"}}},{\"kind\":\"constructor\",\"constructor\":\"Except.ok\",\"parameters\":[{\"id\":\"_uniq.130\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.131\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.117\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.130\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.131\"}}}]}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Decidable\",\"Except\",\"List\",\"Option\",\"PUnit\",\"String\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Except.error\",\"Except.ok\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"LexLeanBoot.AxiomOutput.cat\",\"LexLeanBoot.AxiomOutput.insertAxiom\",\"LexLeanBoot.AxiomOutput.isClosedLeanName\",\"LexLeanBoot.AxiomOutput.notLean\",\"LexLeanBoot.AxiomOutput.quoted\",\"LexLeanBoot.AxiomOutput.text\",\"LexLeanBoot.AxiomOutput.trimmed\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.continuation\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Nat\",\"Option\",\"instDecidableEqBool\",\"instOfNatNat\",\"ite\",\"Bool.true\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"Nat.beq\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"LexLeanBoot.AxiomOutput.startsWhite\",\"LexLeanBoot.AxiomOutput.trimmed\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.trimmed\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.17\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.startsWhite\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.29\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.42\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.43\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.46\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.47\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.48\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.49\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.50\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.51\"}}}]}}}}}}}}}]}}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Decidable\",\"Nat\",\"OfNat\",\"Option\",\"instDecidableEqBool\",\"instOfNatNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"Nat.beq\",\"Option.none\",\"Option.some\",\"LexLeanBoot.AxiomOutput.startsWhite\",\"LexLeanBoot.AxiomOutput.trimmed\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.decimal\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Nat\",\"instDecidableEqBool\",\"instOfNatNat\",\"ite\",\"Bool.true\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableByteArray\",\"Nat.beq\",\"OfNat.ofNat\",\"LexLeanBoot.AxiomOutput.digit\",\"LexLeanBoot.AxiomOutput.significant\",\"LexLeanBoot.AxiomOutput.text\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.19\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"10000000000000000000\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.23\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.digit\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1000000000000000000\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.27\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.digit\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"100000000000000000\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.31\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.digit\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"10000000000000000\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.35\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.digit\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1000000000000000\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.39\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.digit\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"100000000000000\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.43\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.digit\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"10000000000000\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.46\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.47\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.digit\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1000000000000\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.51\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.digit\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"100000000000\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.55\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.digit\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"10000000000\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.59\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.digit\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1000000000\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.63\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.digit\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"100000000\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.66\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.67\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.digit\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.68\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"10000000\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.71\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.digit\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.72\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1000000\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.75\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.digit\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"100000\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.78\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.79\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.digit\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"10000\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.82\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.83\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.digit\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1000\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.86\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.87\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.digit\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"100\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.90\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.91\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.digit\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"10\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.94\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.95\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.digit\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.96\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.98\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.99\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.digit\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.100\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.97\"},{\"kind\":\"fvar\",\"id\":\"_uniq.101\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.93\"},{\"kind\":\"fvar\",\"id\":\"_uniq.102\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.89\"},{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.85\"},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"},{\"kind\":\"fvar\",\"id\":\"_uniq.105\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.77\"},{\"kind\":\"fvar\",\"id\":\"_uniq.106\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},{\"kind\":\"fvar\",\"id\":\"_uniq.107\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.69\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.110\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"fvar\",\"id\":\"_uniq.109\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.111\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"},{\"kind\":\"fvar\",\"id\":\"_uniq.110\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.111\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.113\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.112\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"},{\"kind\":\"fvar\",\"id\":\"_uniq.113\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.115\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.116\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.118\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.117\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.118\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.120\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.119\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.121\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.significant\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.120\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.121\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.131\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.132\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.131\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.132\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.133\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.135\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.134\"},{\"kind\":\"fvar\",\"id\":\"_uniq.135\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"discriminant\":\"_uniq.136\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.137\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.122\"}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.138\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.20\"}}]}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Decidable\",\"Nat\",\"OfNat\",\"String\",\"instDecidableEqBool\",\"instOfNatNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableByteArray\",\"Nat.beq\",\"LexLeanBoot.AxiomOutput.digit\",\"LexLeanBoot.AxiomOutput.significant\",\"LexLeanBoot.AxiomOutput.text\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.digit\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"LexLeanRuntime.instQuotientNat\",\"LexLeanRuntime.quotient\",\"LexLeanRuntime.remainder\",\"OfNat.ofNat\",\"LexLeanBoot.AxiomOutput.text\",\"LexLeanBoot.Text.sliceOr\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"0123456789\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instQuotientNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.17\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.quotient\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"10\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.21\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.remainder\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.25\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.sliceOr\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.27\"}}}}}}}}}}}}}}}}},\"uses\":[\"ByteArray\",\"Nat\",\"OfNat\",\"String\",\"instOfNatNat\",\"LexLeanRuntime.Quotient\",\"LexLeanRuntime.instQuotientNat\",\"LexLeanRuntime.quotient\",\"LexLeanRuntime.remainder\",\"LexLeanBoot.AxiomOutput.text\",\"LexLeanBoot.Text.sliceOr\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.digitStep\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Nat\",\"Option\",\"UInt8\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"ite\",\"Bool.true\",\"HAdd.hAdd\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"UInt8.instOfNat\",\"LexLeanBoot.AxiomOutput.byteIn\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"48\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.25\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"57\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.28\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.byteIn\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.32\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.34\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.37\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.40\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.38\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.43\"}}}}}}}}}}]}}}}}}}}}}},\"uses\":[\"Add\",\"Bool\",\"ByteArray\",\"Decidable\",\"HAdd\",\"Nat\",\"OfNat\",\"Option\",\"UInt8\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"UInt8.instOfNat\",\"LexLeanBoot.AxiomOutput.byteIn\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.dropWhiteEnd\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Nat\",\"Option\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"instSubNat\",\"ite\",\"Bool.false\",\"Bool.true\",\"HAdd.hAdd\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"Nat.ble\",\"Nat.blt\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Prod.fst\",\"LexLeanBoot.AxiomOutput.whiteEnding\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.63\",\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.39\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.whiteEnding\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.62\",\"parameters\":[{\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.54\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.56\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.57\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.58\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.60\"}}}}}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.44\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.45\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.62\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.46\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.47\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.49\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.50\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.62\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]}}}}}}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"},{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.66\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.67\"}}}}}}},\"uses\":[\"Add\",\"Bool\",\"ByteArray\",\"Decidable\",\"HAdd\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"Sub\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"instSubNat\",\"Bool.false\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"Nat.ble\",\"Nat.blt\",\"Option.none\",\"Option.some\",\"LexLeanBoot.AxiomOutput.whiteEnding\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.envelope\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Option\",\"Unit\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.some\",\"LexLeanBoot.AxiomOutput.located\",\"LexLeanBoot.AxiomOutput.stripPrefix\",\"LexLeanBoot.AxiomOutput.text\",\"LexLeanBoot.Text.startsWith\",\"LexLeanBoot.AxiomOutput.isWord.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"'\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.startsWith\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.37\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.38\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.46\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.45\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.46\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.53\",\"parameters\":[{\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.located\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.52\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.53\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"info: \"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.stripPrefix\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.64\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.54\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.66\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.47\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.68\"}}}]}}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.71\"}}}]}}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Decidable\",\"Option\",\"PUnit\",\"String\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"LexLeanBoot.AxiomOutput.located\",\"LexLeanBoot.AxiomOutput.stripPrefix\",\"LexLeanBoot.AxiomOutput.text\",\"LexLeanBoot.Text.startsWith\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.extend\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Except\",\"List\",\"Option\",\"Prod\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"List.cons\",\"Prod.fst\",\"Prod.snd\",\"LexLeanBoot.AxiomOutput.Record\",\"LexLeanBoot.AxiomOutput.Scan\",\"LexLeanBoot.AxiomOutput.parsePayload\",\"LexLeanBoot.AxiomOutput.stop\",\"LexLeanBoot.AxiomOutput.tailOf\",\"LexLeanBoot.AxiomOutput.terminates\",\"LexLeanBoot.AxiomOutput.Record.mk\",\"LexLeanBoot.AxiomOutput.Scan.between\",\"LexLeanBoot.AxiomOutput.Scan.inside\",\"LexLeanBoot.AxiomOutput.extend.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}}}}},\"parameters\":[{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.terminates\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.48\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"discriminant\":\"_uniq.50\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.51\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan.inside\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.56\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.57\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.64\",\"parameters\":[{\"id\":\"_uniq.62\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.stop\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.63\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.64\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.75\",\"parameters\":[{\"id\":\"_uniq.68\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.68\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.68\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.69\"},{\"kind\":\"fvar\",\"id\":\"_uniq.70\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.71\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.tailOf\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan.between\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.72\"},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.74\"}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.75\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.parsePayload\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Except\",\"result_type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"discriminant\":\"_uniq.87\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Except.error\",\"parameters\":[{\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.89\"}}},{\"kind\":\"constructor\",\"constructor\":\"Except.ok\",\"parameters\":[{\"id\":\"_uniq.90\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.76\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.90\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.91\"}}}]}}}}}}}]}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Decidable\",\"Except\",\"List\",\"Option\",\"Prod\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Except.error\",\"Except.ok\",\"List.cons\",\"LexLeanBoot.AxiomOutput.Record\",\"LexLeanBoot.AxiomOutput.Scan\",\"LexLeanBoot.AxiomOutput.parsePayload\",\"LexLeanBoot.AxiomOutput.stop\",\"LexLeanBoot.AxiomOutput.tailOf\",\"LexLeanBoot.AxiomOutput.terminates\",\"LexLeanBoot.AxiomOutput.Record.mk\",\"LexLeanBoot.AxiomOutput.Scan.between\",\"LexLeanBoot.AxiomOutput.Scan.inside\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.finish\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Except\",\"List\",\"Option\",\"Prod\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Except.error\",\"Except.ok\",\"LexLeanCollections.listFold\",\"List.nil\",\"Nat.beq\",\"Option.none\",\"LexLeanBoot.AxiomOutput.Record\",\"LexLeanBoot.AxiomOutput.Rejection\",\"LexLeanBoot.AxiomOutput.Scan\",\"LexLeanBoot.AxiomOutput.auditStep\",\"LexLeanBoot.AxiomOutput.cat\",\"LexLeanBoot.AxiomOutput.decimal\",\"LexLeanBoot.AxiomOutput.listLength\",\"LexLeanBoot.AxiomOutput.refuse\",\"LexLeanBoot.AxiomOutput.reversed\",\"LexLeanBoot.AxiomOutput.text\",\"LexLeanBoot.AxiomOutput.scanStep.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}}},\"parameters\":[{\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.66\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.81\",\"parameters\":[{\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.80\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.81\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.100\",\"parameters\":[{\"id\":\"_uniq.92\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.93\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.94\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.95\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}}}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"unterminated axiom payload: \"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.96\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.cat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.97\"},{\"kind\":\"fvar\",\"id\":\"_uniq.94\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.refuse\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.98\"},{\"kind\":\"fvar\",\"id\":\"_uniq.95\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.99\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}}}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.100\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.155\",\"parameters\":[{\"id\":\"_uniq.108\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.109\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.111\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"expected \"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.111\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.113\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.listLength\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.66\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.decimal\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.113\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.cat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.112\"},{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\" audit records, found \"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.116\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.118\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.cat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.115\"},{\"kind\":\"fvar\",\"id\":\"_uniq.117\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.listLength\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.120\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.decimal\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.119\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.121\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.cat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.118\"},{\"kind\":\"fvar\",\"id\":\"_uniq.120\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.refuse\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.121\"},{\"kind\":\"fvar\",\"id\":\"_uniq.122\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.124\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.123\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.119\"},{\"kind\":\"fvar\",\"id\":\"_uniq.113\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.135\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.133\"},{\"kind\":\"fvar\",\"id\":\"_uniq.134\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"discriminant\":\"_uniq.135\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.136\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.124\"}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.137\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.143\",\"parameters\":[{\"id\":\"_uniq.140\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"borrow\":false},{\"id\":\"_uniq.141\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.142\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.auditStep\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.140\"},{\"kind\":\"fvar\",\"id\":\"_uniq.141\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.142\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.144\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.151\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.144\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.152\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.reversed\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.153\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.143\"},{\"kind\":\"fvar\",\"id\":\"_uniq.151\"},{\"kind\":\"fvar\",\"id\":\"_uniq.152\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.153\"}}}}}}}]}}}}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.156\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.155\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"LexLeanBoot.AxiomOutput.Scan\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"discriminant\":\"_uniq.65\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"LexLeanBoot.AxiomOutput.Scan.between\",\"parameters\":[{\"id\":\"_uniq.169\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.170\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.171\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.156\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.169\"},{\"kind\":\"fvar\",\"id\":\"_uniq.170\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.171\"}}},{\"kind\":\"constructor\",\"constructor\":\"LexLeanBoot.AxiomOutput.Scan.inside\",\"parameters\":[{\"id\":\"_uniq.172\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.173\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.174\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.175\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.176\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.101\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.172\"},{\"kind\":\"fvar\",\"id\":\"_uniq.173\"},{\"kind\":\"fvar\",\"id\":\"_uniq.174\"},{\"kind\":\"fvar\",\"id\":\"_uniq.175\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.176\"}}},{\"kind\":\"constructor\",\"constructor\":\"LexLeanBoot.AxiomOutput.Scan.stopped\",\"parameters\":[{\"id\":\"_uniq.177\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.178\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.82\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.177\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.178\"}}}]}}}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Decidable\",\"Except\",\"List\",\"Nat\",\"Option\",\"Prod\",\"String\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Except.error\",\"Except.ok\",\"LexLeanCollections.listFold\",\"List.nil\",\"Nat.beq\",\"Option.none\",\"LexLeanBoot.AxiomOutput.Record\",\"LexLeanBoot.AxiomOutput.Rejection\",\"LexLeanBoot.AxiomOutput.Scan\",\"LexLeanBoot.AxiomOutput.auditStep\",\"LexLeanBoot.AxiomOutput.cat\",\"LexLeanBoot.AxiomOutput.decimal\",\"LexLeanBoot.AxiomOutput.listLength\",\"LexLeanBoot.AxiomOutput.refuse\",\"LexLeanBoot.AxiomOutput.reversed\",\"LexLeanBoot.AxiomOutput.text\",\"LexLeanBoot.AxiomOutput.Scan.between\",\"LexLeanBoot.AxiomOutput.Scan.inside\",\"LexLeanBoot.AxiomOutput.Scan.stopped\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.fitsWord\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Nat\",\"Ordering\",\"UInt8\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instDecidableEqOrdering\",\"instOfNatNat\",\"ite\",\"Bool.false\",\"Bool.not\",\"Bool.true\",\"ByteArray.mk\",\"LexLeanRuntime.compareBytes\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"List.cons\",\"List.nil\",\"List.toArray\",\"Nat.beq\",\"Nat.blt\",\"OfNat.ofNat\",\"UInt8.instOfNat\",\"LexLeanBoot.AxiomOutput.text\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"20\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.24\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.28\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.38\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.39\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.40\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.41\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.42\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqOrdering\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"18446744073709551615\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.compareBytes\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.51\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.52\"},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.toArray\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.58\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.toArray\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.compareBytes\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.not\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.64\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.65\"}}}}}}}}}}}}}}}}}}}}}}}]}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.67\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.68\"}}}]}}}}}}}}}},\"uses\":[\"Array\",\"BEq\",\"Bool\",\"ByteArray\",\"Decidable\",\"List\",\"Nat\",\"OfNat\",\"Ordering\",\"String\",\"UInt8\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instDecidableEqOrdering\",\"instOfNatNat\",\"Bool.false\",\"Bool.not\",\"Bool.true\",\"ByteArray.mk\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.compareBytes\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"List.cons\",\"List.nil\",\"List.toArray\",\"Nat.beq\",\"Nat.blt\",\"UInt8.instOfNat\",\"LexLeanBoot.AxiomOutput.text\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.headOf\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"List\",\"Option\",\"Unit\",\"Option.none\",\"Option.some\",\"LexLeanBoot.AxiomOutput.axiomList.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.37\",\"parameters\":[{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.36\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.37\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.48\",\"parameters\":[{\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.47\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.48\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.29\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.38\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.59\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.49\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.62\"}}}]}}}}}},\"uses\":[\"ByteArray\",\"List\",\"Option\",\"PUnit\",\"List.cons\",\"List.nil\",\"Option.none\",\"Option.some\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.inRange\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Option\",\"UInt8\",\"Unit\",\"Bool.false\",\"Bool.true\",\"LexLeanRuntime.checkedSubtract\",\"LexLeanRuntime.instFixedUInt8\",\"LexLeanBoot.AxiomOutput.inRange.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}}},\"parameters\":[{\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.88\",\"parameters\":[{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.65\",\"parameters\":[{\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.64\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.72\",\"parameters\":[{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.71\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.72\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instFixedUInt8\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedSubtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.82\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.73\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.84\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.85\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.66\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.85\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.86\"}}}]}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.88\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.93\",\"parameters\":[{\"id\":\"_uniq.91\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.92\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.93\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instFixedUInt8\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedSubtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.102\"},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.103\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.94\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.104\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.105\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.106\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.89\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.106\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.107\"}}}]}}}}}}}},\"uses\":[\"Bool\",\"Option\",\"PUnit\",\"UInt8\",\"Bool.false\",\"Bool.true\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.checkedSubtract\",\"LexLeanRuntime.instFixedUInt8\",\"Option.none\",\"Option.some\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.insertAxiom\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"List\",\"Option\",\"List.brecOn\",\"LexLeanBoot.AxiomOutput.insertAxiom._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}}},\"parameters\":[{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.72\",\"parameters\":[{\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.68\"},{\"kind\":\"fvar\",\"id\":\"_uniq.69\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.71\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.72\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.148\",\"parameters\":[{\"id\":\"_uniq.83\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.85\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.instBEq\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.94\"},{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.95\"},{\"kind\":\"fvar\",\"id\":\"_uniq.96\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.97\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.98\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.lessBytes\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.107\"},{\"kind\":\"fvar\",\"id\":\"_uniq.96\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.108\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.109\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.118\",\"parameters\":[{\"id\":\"_uniq.115\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.115\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.116\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.117\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.118\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.125\",\"parameters\":[{\"id\":\"_uniq.123\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.124\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.124\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.125\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.insertAxiom\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.85\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.134\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.135\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.126\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.135\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.136\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.137\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.138\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.119\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.137\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.138\"}}}]}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.140\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.141\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.85\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.142\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.141\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.143\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.142\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.143\"}}}}}]}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.145\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.146\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.146\"}}}]}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.149\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.148\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.62\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.158\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.73\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.158\"}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.159\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.160\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.161\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.149\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.61\"},{\"kind\":\"fvar\",\"id\":\"_uniq.159\"},{\"kind\":\"fvar\",\"id\":\"_uniq.160\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.161\"}}}]}}}}}},\"uses\":[\"BEq\",\"Bool\",\"ByteArray\",\"Decidable\",\"List\",\"Option\",\"PUnit\",\"instDecidableEqBool\",\"Bool.true\",\"ByteArray.instBEq\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.equal\",\"List.cons\",\"List.nil\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"LexLeanBoot.AxiomOutput.insertAxiom\",\"LexLeanBoot.AxiomOutput.lessBytes\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.insertEntry\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"List\",\"Option\",\"Prod\",\"List.brecOn\",\"LexLeanBoot.AxiomOutput.insertEntry._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}}}},\"parameters\":[{\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.78\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.93\",\"parameters\":[{\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.88\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"},{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.89\"},{\"kind\":\"fvar\",\"id\":\"_uniq.90\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.91\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.92\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.93\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.175\",\"parameters\":[{\"id\":\"_uniq.107\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.108\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.109\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"borrow\":false},{\"id\":\"_uniq.110\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}}}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.instBEq\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.120\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.109\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.121\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.119\"},{\"kind\":\"fvar\",\"id\":\"_uniq.107\"},{\"kind\":\"fvar\",\"id\":\"_uniq.120\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.121\"},{\"kind\":\"fvar\",\"id\":\"_uniq.122\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"discriminant\":\"_uniq.123\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.124\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.lessBytes\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.107\"},{\"kind\":\"fvar\",\"id\":\"_uniq.120\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.133\"},{\"kind\":\"fvar\",\"id\":\"_uniq.122\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"discriminant\":\"_uniq.134\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.135\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.144\",\"parameters\":[{\"id\":\"_uniq.141\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.142\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.109\"},{\"kind\":\"fvar\",\"id\":\"_uniq.141\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.143\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.142\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.143\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.145\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.144\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.151\",\"parameters\":[{\"id\":\"_uniq.149\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.150\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.150\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.152\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.151\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.160\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.insertEntry\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.107\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"},{\"kind\":\"fvar\",\"id\":\"_uniq.110\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"discriminant\":\"_uniq.160\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.161\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.162\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.152\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.161\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.162\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.163\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.164\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.145\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.163\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.164\"}}}]}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.166\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.167\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.107\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.168\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.109\"},{\"kind\":\"fvar\",\"id\":\"_uniq.110\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.169\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.167\"},{\"kind\":\"fvar\",\"id\":\"_uniq.168\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.170\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.169\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.170\"}}}}}}]}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.172\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.173\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.173\"}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.176\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}}}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.175\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"discriminant\":\"_uniq.78\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.185\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.94\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.76\"},{\"kind\":\"fvar\",\"id\":\"_uniq.77\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.185\"}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.186\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"borrow\":false},{\"id\":\"_uniq.187\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.188\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.176\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.76\"},{\"kind\":\"fvar\",\"id\":\"_uniq.77\"},{\"kind\":\"fvar\",\"id\":\"_uniq.186\"},{\"kind\":\"fvar\",\"id\":\"_uniq.187\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.188\"}}}]}}}}}},\"uses\":[\"BEq\",\"Bool\",\"ByteArray\",\"Decidable\",\"List\",\"Option\",\"PUnit\",\"Prod\",\"instDecidableEqBool\",\"Bool.true\",\"ByteArray.instBEq\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.equal\",\"List.cons\",\"List.nil\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"Unit.unit\",\"LexLeanBoot.AxiomOutput.insertEntry\",\"LexLeanBoot.AxiomOutput.lessBytes\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.isClosedLeanName\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Nat\",\"Prod\",\"instOfNatNat\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"Nat.beq\",\"OfNat.ofNat\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"LexLeanBoot.AxiomOutput.nameStep\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.11\",\"parameters\":[{\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.nameStep\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.10\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.15\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.18\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.19\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.24\"}}}}}}}}}}}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"instOfNatNat\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"Nat.beq\",\"Prod.mk\",\"LexLeanBoot.AxiomOutput.nameStep\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.isCount\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"LexLeanBoot.AxiomOutput.isWord\",\"LexLeanBoot.AxiomOutput.trimmed\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.trimmed\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.isWord\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.8\"}}}},\"uses\":[\"Bool\",\"ByteArray\",\"LexLeanBoot.AxiomOutput.isWord\",\"LexLeanBoot.AxiomOutput.trimmed\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.isFirst\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"UInt8\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instDecidableEqUInt8\",\"ite\",\"Bool.true\",\"LexLeanRuntime.equal\",\"OfNat.ofNat\",\"UInt8.instOfNat\",\"LexLeanBoot.AxiomOutput.inRange\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"65\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"90\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.25\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.inRange\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.29\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"97\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.40\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"122\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.43\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.inRange\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.46\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.47\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqUInt8\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"95\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.53\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.55\"}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}}]}}}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.60\"}}}]}}}}}}}}}}},\"uses\":[\"BEq\",\"Bool\",\"Decidable\",\"Nat\",\"OfNat\",\"UInt8\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instDecidableEqUInt8\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.equal\",\"UInt8.instOfNat\",\"LexLeanBoot.AxiomOutput.inRange\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.isLater\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"UInt8\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instDecidableEqUInt8\",\"ite\",\"Bool.true\",\"LexLeanRuntime.equal\",\"OfNat.ofNat\",\"UInt8.instOfNat\",\"LexLeanBoot.AxiomOutput.inRange\",\"LexLeanBoot.AxiomOutput.isFirst\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.isFirst\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.26\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"48\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.37\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"57\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.40\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.inRange\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.43\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqUInt8\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"63\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.58\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.61\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.62\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"39\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.64\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.66\"}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.67\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.68\"}}}]}}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.71\"}}}]}}}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.73\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.74\"}}}]}}}}},\"uses\":[\"BEq\",\"Bool\",\"Decidable\",\"Nat\",\"OfNat\",\"UInt8\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instDecidableEqUInt8\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.equal\",\"UInt8.instOfNat\",\"LexLeanBoot.AxiomOutput.inRange\",\"LexLeanBoot.AxiomOutput.isFirst\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.isWord\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Nat\",\"Option\",\"Unit\",\"instDecidableEqBool\",\"instOfNatNat\",\"ite\",\"Bool.false\",\"Bool.true\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"Nat.blt\",\"OfNat.ofNat\",\"LexLeanBoot.AxiomOutput.allDigits\",\"LexLeanBoot.AxiomOutput.fitsWord\",\"LexLeanBoot.AxiomOutput.significant\",\"LexLeanBoot.AxiomOutput.stripPrefix\",\"LexLeanBoot.AxiomOutput.text\",\"LexLeanBoot.AxiomOutput.isWord.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.42\",\"parameters\":[{\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.41\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.42\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.48\",\"parameters\":[{\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.33\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.48\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"+\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.stripPrefix\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.103\",\"parameters\":[{\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.64\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.significant\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.fitsWord\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.66\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.67\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.77\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.78\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.79\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.82\"},{\"kind\":\"fvar\",\"id\":\"_uniq.83\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.84\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.85\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.86\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.87\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.allDigits\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.96\"},{\"kind\":\"fvar\",\"id\":\"_uniq.83\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.97\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.98\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.99\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.100\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.68\"}}]}}}}]}}}}}}}}}}}}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.109\",\"parameters\":[{\"id\":\"_uniq.107\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.43\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.107\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.103\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.106\",\"parameters\":[{\"id\":\"_uniq.104\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.49\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.104\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.103\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.105\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.59\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.106\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.62\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.109\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}}]}}}}}}}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Decidable\",\"Nat\",\"OfNat\",\"Option\",\"PUnit\",\"String\",\"instDecidableEqBool\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"Nat.blt\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"LexLeanBoot.AxiomOutput.allDigits\",\"LexLeanBoot.AxiomOutput.fitsWord\",\"LexLeanBoot.AxiomOutput.significant\",\"LexLeanBoot.AxiomOutput.stripPrefix\",\"LexLeanBoot.AxiomOutput.text\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.lastStep\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Nat\",\"Option\",\"instDecidableEqBool\",\"instOfNatNat\",\"instSubNat\",\"ite\",\"Bool.true\",\"LexLeanRuntime.subtract\",\"Nat.blt\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"LexLeanBoot.Text.matchAt\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}}},\"parameters\":[{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.matchAt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.35\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.46\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.47\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.48\"},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.49\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.50\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.51\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.52\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.55\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.58\"}}}}}}}}]}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.61\"}}}]}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Decidable\",\"Nat\",\"OfNat\",\"Option\",\"Sub\",\"instDecidableEqBool\",\"instOfNatNat\",\"instSubNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.subtract\",\"Nat.blt\",\"Option.none\",\"Option.some\",\"LexLeanBoot.Text.matchAt\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.lessBytes\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Ordering\",\"UInt8\",\"instBEqOfDecidableEq\",\"instDecidableEqOrdering\",\"ByteArray.mk\",\"LexLeanRuntime.compareBytes\",\"LexLeanRuntime.equal\",\"List.cons\",\"List.nil\",\"List.toArray\",\"OfNat.ofNat\",\"UInt8.instOfNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqOrdering\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.compareBytes\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.toArray\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.toArray\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.compareBytes\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.28\"}}}}}}}}}}}}}}}},\"uses\":[\"Array\",\"BEq\",\"Bool\",\"ByteArray\",\"Decidable\",\"List\",\"Nat\",\"OfNat\",\"Ordering\",\"UInt8\",\"instBEqOfDecidableEq\",\"instDecidableEqOrdering\",\"ByteArray.mk\",\"LexLeanRuntime.compareBytes\",\"LexLeanRuntime.equal\",\"List.cons\",\"List.nil\",\"List.toArray\",\"UInt8.instOfNat\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.listLength\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"HAdd.hAdd\",\"LexLeanCollections.listFold\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.13\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.26\",\"parameters\":[{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.18\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.20\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.23\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.21\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.25\"}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.28\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.30\"}}}}}}},\"uses\":[\"Add\",\"HAdd\",\"List\",\"Nat\",\"OfNat\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"LexLeanCollections.listFold\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.listed\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Except\",\"List\",\"Option\",\"Prod\",\"Unit\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Prod.fst\",\"Prod.snd\",\"LexLeanBoot.AxiomOutput.axiomList\",\"LexLeanBoot.AxiomOutput.isClosedLeanName\",\"LexLeanBoot.AxiomOutput.malformed\",\"LexLeanBoot.AxiomOutput.notLean\",\"LexLeanBoot.AxiomOutput.splitLast\",\"LexLeanBoot.AxiomOutput.text\",\"LexLeanBoot.AxiomOutput.unrecognized\",\"LexLeanBoot.AxiomOutput.afterLocation.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}}},\"parameters\":[{\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.80\",\"parameters\":[{\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.52\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.57\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.52\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.59\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.axiomList\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.58\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.61\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.notLean\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.malformed\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.64\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.isClosedLeanName\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"},{\"kind\":\"fvar\",\"id\":\"_uniq.75\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"discriminant\":\"_uniq.76\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.77\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.65\"}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.78\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.62\"}}]}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.80\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.87\",\"parameters\":[{\"id\":\"_uniq.85\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.unrecognized\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.86\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.87\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"' depends on axioms: [\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.96\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.splitLast\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"},{\"kind\":\"fvar\",\"id\":\"_uniq.97\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"discriminant\":\"_uniq.98\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.88\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.99\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.100\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.101\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.81\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.101\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.102\"}}}]}}}}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Decidable\",\"Except\",\"List\",\"Option\",\"PUnit\",\"Prod\",\"String\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"LexLeanBoot.AxiomOutput.axiomList\",\"LexLeanBoot.AxiomOutput.isClosedLeanName\",\"LexLeanBoot.AxiomOutput.malformed\",\"LexLeanBoot.AxiomOutput.notLean\",\"LexLeanBoot.AxiomOutput.splitLast\",\"LexLeanBoot.AxiomOutput.text\",\"LexLeanBoot.AxiomOutput.unrecognized\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.located\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Option\",\"Prod\",\"Unit\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.none\",\"Prod.fst\",\"Prod.snd\",\"LexLeanBoot.AxiomOutput.afterLocation\",\"LexLeanBoot.AxiomOutput.isCount\",\"LexLeanBoot.AxiomOutput.splitOnce\",\"LexLeanBoot.AxiomOutput.text\",\"LexLeanBoot.AxiomOutput.afterLocation.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.158\",\"parameters\":[{\"id\":\"_uniq.68\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.135\",\"parameters\":[{\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.110\",\"parameters\":[{\"id\":\"_uniq.82\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.74\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.87\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.82\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.89\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.82\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.91\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.afterLocation\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.90\"},{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.93\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.isCount\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.105\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.106\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.107\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.108\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.94\"}}]}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.111\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.110\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.117\",\"parameters\":[{\"id\":\"_uniq.115\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.116\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.118\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.117\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.74\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.127\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\":\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.128\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.127\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.129\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.splitOnce\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.126\"},{\"kind\":\"fvar\",\"id\":\"_uniq.128\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.129\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.130\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.131\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.118\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.130\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.131\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.132\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.111\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.132\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.133\"}}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.135\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.140\",\"parameters\":[{\"id\":\"_uniq.138\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.139\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.139\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.141\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.140\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.149\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.68\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.150\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\":\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.151\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.150\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.152\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.splitOnce\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.149\"},{\"kind\":\"fvar\",\"id\":\"_uniq.151\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.152\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.153\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.154\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.141\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.153\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.154\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.155\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.156\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.136\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.155\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.156\"}}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.159\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.158\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.163\",\"parameters\":[{\"id\":\"_uniq.161\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.162\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.162\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.164\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.163\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.172\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\":\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.173\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.172\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.174\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.splitOnce\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.173\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.174\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.175\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.176\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.164\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.175\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.176\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.177\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.178\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.159\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.177\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.178\"}}}]}}}}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Decidable\",\"Option\",\"PUnit\",\"Prod\",\"String\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"LexLeanBoot.AxiomOutput.afterLocation\",\"LexLeanBoot.AxiomOutput.isCount\",\"LexLeanBoot.AxiomOutput.splitOnce\",\"LexLeanBoot.AxiomOutput.text\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.malformed\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"List\",\"Prod\",\"Except.error\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}},\"uses\":[\"ByteArray\",\"Except\",\"List\",\"Prod\",\"Except.error\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.nameMode\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Nat\",\"UInt8\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instDecidableEqUInt8\",\"instOfNatNat\",\"ite\",\"Bool.true\",\"LexLeanRuntime.equal\",\"Nat.beq\",\"OfNat.ofNat\",\"UInt8.instOfNat\",\"LexLeanBoot.AxiomOutput.isFirst\",\"LexLeanBoot.AxiomOutput.isLater\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.38\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.42\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.43\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqUInt8\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"46\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.57\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.60\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.isFirst\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.70\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.71\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.72\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.82\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.83\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.85\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.86\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.38\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.87\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.88\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.isLater\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.97\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.98\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.99\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.38\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.100\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.101\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.82\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.102\"}}}]}}}}]}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.105\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.106\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.107\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.108\"}}}}}]}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.110\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.120\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.119\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.121\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.120\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.121\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.122\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.123\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.124\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.38\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.125\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.126\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.127\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.128\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.127\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.129\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.128\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.129\"}}}}}]}}}}}}}]}}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.132\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.38\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.133\"}}}]}}}}}}}},\"uses\":[\"BEq\",\"Bool\",\"Decidable\",\"Nat\",\"OfNat\",\"UInt8\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instDecidableEqUInt8\",\"instOfNatNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.equal\",\"Nat.beq\",\"UInt8.instOfNat\",\"LexLeanBoot.AxiomOutput.isFirst\",\"LexLeanBoot.AxiomOutput.isLater\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.nameStep\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Nat\",\"Option\",\"Prod\",\"UInt8\",\"Unit\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"ite\",\"Bool.true\",\"HAdd.hAdd\",\"Nat.beq\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"LexLeanBoot.AxiomOutput.nameMode\",\"LexLeanBoot.Text.byteAt\",\"LexLeanBoot.AxiomOutput.inRange.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}}},\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.41\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.43\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.45\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.46\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.80\",\"parameters\":[{\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.54\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.74\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.71\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.72\"},{\"kind\":\"fvar\",\"id\":\"_uniq.75\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.nameMode\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"},{\"kind\":\"fvar\",\"id\":\"_uniq.77\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.78\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.79\"}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.80\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.87\",\"parameters\":[{\"id\":\"_uniq.85\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.86\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.87\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.byteAt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.96\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.97\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.88\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.98\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.99\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.100\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.81\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.100\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.101\"}}}]}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.103\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.104\"}}}]}}}}}}}}},\"uses\":[\"Add\",\"Bool\",\"ByteArray\",\"Decidable\",\"HAdd\",\"Nat\",\"OfNat\",\"Option\",\"PUnit\",\"Prod\",\"UInt8\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Nat.beq\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"Unit.unit\",\"LexLeanBoot.AxiomOutput.nameMode\",\"LexLeanBoot.Text.byteAt\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.notLean\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"LexLeanBoot.AxiomOutput.cat\",\"LexLeanBoot.AxiomOutput.quoted\",\"LexLeanBoot.AxiomOutput.text\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.quoted\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\" is not a Lean name\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.cat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.10\"}}}}}},\"uses\":[\"ByteArray\",\"String\",\"LexLeanBoot.AxiomOutput.cat\",\"LexLeanBoot.AxiomOutput.quoted\",\"LexLeanBoot.AxiomOutput.text\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.parseAuditOutput\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"List\",\"LexLeanCollections.listFold\",\"List.nil\",\"LexLeanBoot.AxiomOutput.Record\",\"LexLeanBoot.AxiomOutput.Scan\",\"LexLeanBoot.AxiomOutput.finish\",\"LexLeanBoot.AxiomOutput.scanStep\",\"LexLeanBoot.Text.lines\",\"LexLeanBoot.AxiomOutput.Scan.between\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}}},\"parameters\":[{\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.20\",\"parameters\":[{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.scanStep\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.19\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan.between\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.lines\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.finish\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.27\"}}}}}}}},\"uses\":[\"ByteArray\",\"Except\",\"List\",\"Prod\",\"LexLeanCollections.listFold\",\"List.nil\",\"LexLeanBoot.AxiomOutput.Record\",\"LexLeanBoot.AxiomOutput.Rejection\",\"LexLeanBoot.AxiomOutput.Scan\",\"LexLeanBoot.AxiomOutput.finish\",\"LexLeanBoot.AxiomOutput.scanStep\",\"LexLeanBoot.Text.lines\",\"LexLeanBoot.AxiomOutput.Scan.between\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.parsePayload\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Except\",\"List\",\"Option\",\"Prod\",\"Unit\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"List.nil\",\"LexLeanBoot.AxiomOutput.isClosedLeanName\",\"LexLeanBoot.AxiomOutput.listed\",\"LexLeanBoot.AxiomOutput.malformed\",\"LexLeanBoot.AxiomOutput.notLean\",\"LexLeanBoot.AxiomOutput.parsed\",\"LexLeanBoot.AxiomOutput.stripPrefix\",\"LexLeanBoot.AxiomOutput.stripSuffix\",\"LexLeanBoot.AxiomOutput.text\",\"LexLeanBoot.AxiomOutput.unrecognized\",\"LexLeanBoot.AxiomOutput.isWord.match_1\",\"LexLeanBoot.AxiomOutput.parsePayload.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"parameters\":[{\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.65\",\"parameters\":[{\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.unrecognized\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.64\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.150\",\"parameters\":[{\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.102\",\"parameters\":[{\"id\":\"_uniq.79\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.parsed\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.79\"},{\"kind\":\"fvar\",\"id\":\"_uniq.82\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.83\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.notLean\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.79\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.malformed\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.85\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.86\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.isClosedLeanName\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.79\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.96\"},{\"kind\":\"fvar\",\"id\":\"_uniq.97\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"discriminant\":\"_uniq.98\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.99\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.87\"}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.100\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.84\"}}]}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.102\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.133\",\"parameters\":[{\"id\":\"_uniq.108\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.114\",\"parameters\":[{\"id\":\"_uniq.112\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.113\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.listed\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.112\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.113\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.114\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"]\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.125\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.127\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.stripSuffix\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},{\"kind\":\"fvar\",\"id\":\"_uniq.126\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"discriminant\":\"_uniq.127\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.128\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.129\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.117\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.128\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.129\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.130\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.131\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.115\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.130\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.131\"}}}]}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.133\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.142\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"' does not depend on any axioms\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.143\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.142\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.144\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.stripSuffix\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},{\"kind\":\"fvar\",\"id\":\"_uniq.143\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"discriminant\":\"_uniq.144\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.145\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.146\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.134\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.145\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.146\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.147\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.148\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.103\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.147\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.148\"}}}]}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.151\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.150\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.159\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"'\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.160\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.159\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.161\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.stripPrefix\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.160\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"discriminant\":\"_uniq.161\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.162\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.163\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.66\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.162\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.163\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.164\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.165\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.151\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.164\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.165\"}}}]}}}}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Decidable\",\"Except\",\"List\",\"Option\",\"PUnit\",\"Prod\",\"String\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"List.nil\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"LexLeanBoot.AxiomOutput.isClosedLeanName\",\"LexLeanBoot.AxiomOutput.listed\",\"LexLeanBoot.AxiomOutput.malformed\",\"LexLeanBoot.AxiomOutput.notLean\",\"LexLeanBoot.AxiomOutput.parsed\",\"LexLeanBoot.AxiomOutput.stripPrefix\",\"LexLeanBoot.AxiomOutput.stripSuffix\",\"LexLeanBoot.AxiomOutput.text\",\"LexLeanBoot.AxiomOutput.unrecognized\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.parsed\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"List\",\"Prod\",\"Except.ok\",\"Prod.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.14\"}}}},\"uses\":[\"ByteArray\",\"Except\",\"List\",\"Prod\",\"Except.ok\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.quoted\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"LexLeanBoot.AxiomOutput.cat\",\"LexLeanBoot.AxiomOutput.text\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"`\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.cat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.cat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.10\"}}}}}},\"uses\":[\"ByteArray\",\"String\",\"LexLeanBoot.AxiomOutput.cat\",\"LexLeanBoot.AxiomOutput.text\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.refuse\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"List\",\"Option\",\"Prod\",\"Except.error\",\"LexLeanBoot.AxiomOutput.Rejection\",\"LexLeanBoot.AxiomOutput.rejected\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.rejected\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.14\"}}}},\"uses\":[\"ByteArray\",\"Except\",\"List\",\"Option\",\"Prod\",\"Except.error\",\"LexLeanBoot.AxiomOutput.Rejection\",\"LexLeanBoot.AxiomOutput.rejected\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.rejected\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Option\",\"LexLeanBoot.AxiomOutput.Rejection.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.10\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.13\"}}},\"uses\":[\"ByteArray\",\"Option\",\"LexLeanBoot.AxiomOutput.Rejection\",\"LexLeanBoot.AxiomOutput.Rejection.mk\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.reversed\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"LexLeanCollections.listFold\",\"List.cons\",\"List.nil\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}}},\"parameters\":[{\"id\":\"_uniq.13\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.20\",\"parameters\":[{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"borrow\":false},{\"id\":\"_uniq.18\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.19\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.22\"}}}}},\"uses\":[\"List\",\"LexLeanCollections.listFold\",\"List.cons\",\"List.nil\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.scanStep\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"List\",\"Nat\",\"Option\",\"Unit\",\"instDecidableEqBool\",\"instOfNatNat\",\"ite\",\"Bool.true\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"Nat.beq\",\"OfNat.ofNat\",\"LexLeanBoot.AxiomOutput.Record\",\"LexLeanBoot.AxiomOutput.Rejection\",\"LexLeanBoot.AxiomOutput.Scan\",\"LexLeanBoot.AxiomOutput.cat\",\"LexLeanBoot.AxiomOutput.continuation\",\"LexLeanBoot.AxiomOutput.envelope\",\"LexLeanBoot.AxiomOutput.extend\",\"LexLeanBoot.AxiomOutput.headOf\",\"LexLeanBoot.AxiomOutput.stop\",\"LexLeanBoot.AxiomOutput.text\",\"LexLeanBoot.AxiomOutput.trimmed\",\"LexLeanBoot.AxiomOutput.isWord.match_1\",\"LexLeanBoot.AxiomOutput.scanStep.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.89\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.90\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.97\",\"parameters\":[{\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.89\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.97\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.151\",\"parameters\":[{\"id\":\"_uniq.113\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.114\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.115\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.116\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}}}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.127\",\"parameters\":[{\"id\":\"_uniq.121\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\" \"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.122\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.124\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.cat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.115\"},{\"kind\":\"fvar\",\"id\":\"_uniq.123\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.cat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.124\"},{\"kind\":\"fvar\",\"id\":\"_uniq.121\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.extend\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.113\"},{\"kind\":\"fvar\",\"id\":\"_uniq.114\"},{\"kind\":\"fvar\",\"id\":\"_uniq.125\"},{\"kind\":\"fvar\",\"id\":\"_uniq.116\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.126\"}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.128\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.127\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.136\",\"parameters\":[{\"id\":\"_uniq.131\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.132\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"unterminated axiom payload: \"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.132\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.cat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.133\"},{\"kind\":\"fvar\",\"id\":\"_uniq.115\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.135\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.stop\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.134\"},{\"kind\":\"fvar\",\"id\":\"_uniq.116\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.135\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.137\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.136\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.145\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.continuation\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.90\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"discriminant\":\"_uniq.145\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.146\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.147\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.137\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.146\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.147\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.148\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.149\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.128\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.148\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.149\"}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.152\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}}}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.151\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.209\",\"parameters\":[{\"id\":\"_uniq.157\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.158\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.167\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.168\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.167\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.169\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.168\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.170\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.171\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.trimmed\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.90\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.172\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.170\"},{\"kind\":\"fvar\",\"id\":\"_uniq.171\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.173\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.169\"},{\"kind\":\"fvar\",\"id\":\"_uniq.172\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.174\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.175\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.173\"},{\"kind\":\"fvar\",\"id\":\"_uniq.174\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"discriminant\":\"_uniq.175\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.176\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.183\",\"parameters\":[{\"id\":\"_uniq.180\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.181\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.headOf\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.158\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.182\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.extend\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.157\"},{\"kind\":\"fvar\",\"id\":\"_uniq.158\"},{\"kind\":\"fvar\",\"id\":\"_uniq.180\"},{\"kind\":\"fvar\",\"id\":\"_uniq.181\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.182\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.184\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.183\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.192\",\"parameters\":[{\"id\":\"_uniq.186\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.187\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"unrecognized audit line: \"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.188\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.187\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.189\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.cat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.188\"},{\"kind\":\"fvar\",\"id\":\"_uniq.171\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.190\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.headOf\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.158\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.191\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.stop\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.189\"},{\"kind\":\"fvar\",\"id\":\"_uniq.190\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.191\"}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.193\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.192\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.201\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.envelope\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.171\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"discriminant\":\"_uniq.201\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.202\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.203\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.193\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.202\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.203\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.204\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.205\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.184\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.204\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.205\"}}}]}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.207\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.89\"}}]}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.210\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.209\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"LexLeanBoot.AxiomOutput.Scan\",\"result_type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"discriminant\":\"_uniq.89\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"LexLeanBoot.AxiomOutput.Scan.between\",\"parameters\":[{\"id\":\"_uniq.223\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.224\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.225\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.210\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.223\"},{\"kind\":\"fvar\",\"id\":\"_uniq.224\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.225\"}}},{\"kind\":\"constructor\",\"constructor\":\"LexLeanBoot.AxiomOutput.Scan.inside\",\"parameters\":[{\"id\":\"_uniq.226\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.227\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.228\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.229\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.230\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.152\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.226\"},{\"kind\":\"fvar\",\"id\":\"_uniq.227\"},{\"kind\":\"fvar\",\"id\":\"_uniq.228\"},{\"kind\":\"fvar\",\"id\":\"_uniq.229\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.230\"}}},{\"kind\":\"constructor\",\"constructor\":\"LexLeanBoot.AxiomOutput.Scan.stopped\",\"parameters\":[{\"id\":\"_uniq.231\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.232\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.98\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.231\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.232\"}}}]}}}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Decidable\",\"List\",\"Nat\",\"OfNat\",\"Option\",\"PUnit\",\"String\",\"instDecidableEqBool\",\"instOfNatNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"Nat.beq\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"LexLeanBoot.AxiomOutput.Record\",\"LexLeanBoot.AxiomOutput.Rejection\",\"LexLeanBoot.AxiomOutput.Scan\",\"LexLeanBoot.AxiomOutput.cat\",\"LexLeanBoot.AxiomOutput.continuation\",\"LexLeanBoot.AxiomOutput.envelope\",\"LexLeanBoot.AxiomOutput.extend\",\"LexLeanBoot.AxiomOutput.headOf\",\"LexLeanBoot.AxiomOutput.stop\",\"LexLeanBoot.AxiomOutput.text\",\"LexLeanBoot.AxiomOutput.trimmed\",\"LexLeanBoot.AxiomOutput.Scan.between\",\"LexLeanBoot.AxiomOutput.Scan.inside\",\"LexLeanBoot.AxiomOutput.Scan.stopped\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.significant\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Nat\",\"instOfNatNat\",\"instSubNat\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"OfNat.ofNat\",\"Prod.fst\",\"LexLeanBoot.AxiomOutput.zeroStep\",\"LexLeanBoot.Text.sliceOr\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.15\",\"parameters\":[{\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.zeroStep\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.14\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.19\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.21\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.22\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.sliceOr\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.26\"}}}}}}}}}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"Sub\",\"instOfNatNat\",\"instSubNat\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"LexLeanBoot.AxiomOutput.zeroStep\",\"LexLeanBoot.Text.sliceOr\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.skipWhite\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Nat\",\"Option\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"ite\",\"Bool.true\",\"HAdd.hAdd\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"Nat.blt\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Prod.fst\",\"LexLeanBoot.AxiomOutput.whiteLength\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.37\",\"parameters\":[{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.whiteLength\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.27\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.29\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.32\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.33\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.35\"}}}}}}}]}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.41\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.43\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.44\"}}}}}}}}}},\"uses\":[\"Add\",\"Bool\",\"ByteArray\",\"Decidable\",\"HAdd\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"Nat.blt\",\"Option.none\",\"Option.some\",\"LexLeanBoot.AxiomOutput.whiteLength\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.splitLast\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Nat\",\"Option\",\"Prod\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"instSubNat\",\"ite\",\"Bool.true\",\"HAdd.hAdd\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"Nat.blt\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Prod.fst\",\"Prod.mk\",\"LexLeanBoot.AxiomOutput.lastStep\",\"LexLeanBoot.Text.matchAt\",\"LexLeanBoot.Text.sliceOr\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}}},\"parameters\":[{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.30\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.32\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.44\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.45\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.50\",\"parameters\":[{\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.lastStep\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.49\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.52\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.55\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.53\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.58\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.60\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.61\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.matchAt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.71\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.72\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.73\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.74\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.75\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.77\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.sliceOr\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.78\"},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.53\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.58\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.sliceOr\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.79\"},{\"kind\":\"fvar\",\"id\":\"_uniq.82\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.83\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.84\"}}}}}}}}}}}]}}}}}}}}}}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.86\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.87\"}}}]}}}}}}}}}},\"uses\":[\"Add\",\"Bool\",\"ByteArray\",\"Decidable\",\"HAdd\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"Sub\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"instSubNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"Nat.blt\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"LexLeanBoot.AxiomOutput.lastStep\",\"LexLeanBoot.Text.matchAt\",\"LexLeanBoot.Text.sliceOr\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.splitOnce\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"instSubNat\",\"HAdd.hAdd\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"LexLeanBoot.Text.find\",\"LexLeanBoot.Text.sliceOr\",\"LexLeanBoot.AxiomOutput.splitOnce.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}}},\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.54\",\"parameters\":[{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.39\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.sliceOr\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.40\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.43\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.44\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.sliceOr\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.53\"}}}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.54\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.61\",\"parameters\":[{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.60\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.61\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.find\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.70\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.62\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.72\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.55\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.74\"}}}]}}}}}}},\"uses\":[\"Add\",\"ByteArray\",\"HAdd\",\"Nat\",\"OfNat\",\"Option\",\"PUnit\",\"Prod\",\"Sub\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"instSubNat\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"Unit.unit\",\"LexLeanBoot.Text.find\",\"LexLeanBoot.Text.sliceOr\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.startsWhite\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Nat\",\"instOfNatNat\",\"Nat.blt\",\"OfNat.ofNat\",\"LexLeanBoot.AxiomOutput.whiteLength\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.8\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.whiteLength\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.11\"}}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Nat\",\"OfNat\",\"instOfNatNat\",\"Nat.blt\",\"LexLeanBoot.AxiomOutput.whiteLength\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.stop\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Option\",\"LexLeanBoot.AxiomOutput.rejected\",\"LexLeanBoot.AxiomOutput.Scan.stopped\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.10\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.rejected\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan.stopped\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.13\"}}}},\"uses\":[\"ByteArray\",\"Option\",\"LexLeanBoot.AxiomOutput.Rejection\",\"LexLeanBoot.AxiomOutput.Scan\",\"LexLeanBoot.AxiomOutput.rejected\",\"LexLeanBoot.AxiomOutput.Scan.stopped\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.stripPrefix\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Nat\",\"Option\",\"instDecidableEqBool\",\"instSubNat\",\"ite\",\"Bool.true\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"Option.none\",\"Option.some\",\"LexLeanBoot.Text.sliceOr\",\"LexLeanBoot.Text.startsWith\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.startsWith\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.26\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.28\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.sliceOr\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.36\"}}}}}}}}}]}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Decidable\",\"Nat\",\"Option\",\"Sub\",\"instDecidableEqBool\",\"instSubNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"Option.none\",\"Option.some\",\"LexLeanBoot.Text.sliceOr\",\"LexLeanBoot.Text.startsWith\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.stripSuffix\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Nat\",\"Option\",\"instDecidableEqBool\",\"instOfNatNat\",\"instSubNat\",\"ite\",\"Bool.true\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"LexLeanBoot.Text.endsWith\",\"LexLeanBoot.Text.sliceOr\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.endsWith\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.26\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.28\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.31\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.sliceOr\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.39\"}}}}}}}}}}}}]}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Decidable\",\"Nat\",\"OfNat\",\"Option\",\"Sub\",\"instDecidableEqBool\",\"instOfNatNat\",\"instSubNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"Option.none\",\"Option.some\",\"LexLeanBoot.Text.endsWith\",\"LexLeanBoot.Text.sliceOr\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.tailOf\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"List\",\"Unit\",\"List.nil\",\"LexLeanBoot.AxiomOutput.axiomList.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.37\",\"parameters\":[{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.36\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.37\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.47\",\"parameters\":[{\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.46\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.47\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.29\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.38\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.58\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.48\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.61\"}}}]}}}}}},\"uses\":[\"ByteArray\",\"List\",\"PUnit\",\"List.cons\",\"List.nil\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.terminates\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Option\",\"Unit\",\"Bool.false\",\"Bool.true\",\"LexLeanBoot.AxiomOutput.stripSuffix\",\"LexLeanBoot.AxiomOutput.text\",\"LexLeanBoot.AxiomOutput.isWord.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.46\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.45\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.46\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.79\",\"parameters\":[{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.46\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.62\",\"parameters\":[{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.61\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.62\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\" does not depend on any axioms\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.stripSuffix\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.38\"},{\"kind\":\"fvar\",\"id\":\"_uniq.72\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.73\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.63\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.75\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.58\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.77\"}}}]}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.79\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"]\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.stripSuffix\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.38\"},{\"kind\":\"fvar\",\"id\":\"_uniq.89\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.90\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.80\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.91\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.92\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.93\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.47\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.93\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.94\"}}}]}}}}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Option\",\"PUnit\",\"String\",\"Bool.false\",\"Bool.true\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"LexLeanBoot.AxiomOutput.stripSuffix\",\"LexLeanBoot.AxiomOutput.text\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.text\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"String\",\"LexLeanRuntime.utf8Encode\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.utf8Encode\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}},\"uses\":[\"ByteArray\",\"String\",\"LexLeanRuntime.utf8Encode\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.trimmed\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Nat\",\"instSubNat\",\"LexLeanRuntime.subtract\",\"LexLeanBoot.AxiomOutput.dropWhiteEnd\",\"LexLeanBoot.AxiomOutput.skipWhite\",\"LexLeanBoot.Text.sliceOr\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.skipWhite\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.15\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.dropWhiteEnd\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.17\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.sliceOr\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.21\"}}}}}}}}},\"uses\":[\"ByteArray\",\"Nat\",\"Sub\",\"instSubNat\",\"LexLeanRuntime.subtract\",\"LexLeanBoot.AxiomOutput.dropWhiteEnd\",\"LexLeanBoot.AxiomOutput.skipWhite\",\"LexLeanBoot.Text.sliceOr\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.unrecognized\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"LexLeanBoot.AxiomOutput.cat\",\"LexLeanBoot.AxiomOutput.malformed\",\"LexLeanBoot.AxiomOutput.text\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"unrecognized axiom payload: \"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.cat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.malformed\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.10\"}}}}}},\"uses\":[\"ByteArray\",\"Except\",\"List\",\"Prod\",\"String\",\"LexLeanBoot.AxiomOutput.cat\",\"LexLeanBoot.AxiomOutput.malformed\",\"LexLeanBoot.AxiomOutput.text\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.whiteEnding\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Nat\",\"instDecidableEqBool\",\"instOfNatNat\",\"instSubNat\",\"ite\",\"Bool.false\",\"Bool.true\",\"LexLeanRuntime.subtract\",\"Nat.beq\",\"Nat.ble\",\"OfNat.ofNat\",\"LexLeanBoot.AxiomOutput.whiteLength\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.40\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.44\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.45\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.56\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.whiteLength\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.61\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.62\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.79\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.80\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.81\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.82\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.131\",\"parameters\":[{\"id\":\"_uniq.90\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.90\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.91\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.92\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.110\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.109\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.111\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.110\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.111\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.113\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.112\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.127\",\"parameters\":[{\"id\":\"_uniq.120\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.121\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.120\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.121\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.122\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.40\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.123\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.124\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.110\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.125\"}}}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.113\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.114\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.127\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.115\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.116\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.111\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.118\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.whiteLength\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.117\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.118\"},{\"kind\":\"fvar\",\"id\":\"_uniq.111\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.127\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.119\"}]}}}}}]}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.128\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.129\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.80\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.129\"}}}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.83\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.84\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.131\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.85\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.86\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.whiteLength\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.88\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.131\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.89\"}]}}}}}]}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.132\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.56\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.133\"}}}]}}}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.135\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.40\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.136\"}}}]}}}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Decidable\",\"Nat\",\"OfNat\",\"Sub\",\"instDecidableEqBool\",\"instOfNatNat\",\"instSubNat\",\"Bool.false\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.subtract\",\"Nat.beq\",\"Nat.ble\",\"LexLeanBoot.AxiomOutput.whiteLength\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.whiteLength\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Nat\",\"UInt8\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"ite\",\"Bool.false\",\"Bool.true\",\"HAdd.hAdd\",\"OfNat.ofNat\",\"UInt8.instOfNat\",\"LexLeanBoot.AxiomOutput.byteIn\",\"LexLeanBoot.AxiomOutput.byteIs\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.83\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"9\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.101\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.102\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"13\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.104\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.105\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.byteIn\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.103\"},{\"kind\":\"fvar\",\"id\":\"_uniq.106\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.107\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.556\",\"parameters\":[{\"id\":\"_uniq.129\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.130\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.129\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.130\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.131\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.140\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"194\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.141\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.140\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.142\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.141\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.143\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.byteIs\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.142\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.144\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.143\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.144\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.145\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.154\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"225\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.155\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.154\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.156\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.155\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.157\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.byteIs\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.156\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.158\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.157\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.158\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.159\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.168\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"226\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.169\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.168\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.170\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.169\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.171\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.byteIs\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.170\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.172\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.171\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.172\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.173\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.182\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"227\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.183\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.182\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.184\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.183\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.185\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.byteIs\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.184\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.186\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.185\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.186\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.187\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.188\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.189\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.188\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.190\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.189\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.190\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.191\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.208\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.209\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.208\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.210\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.209\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.211\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.212\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.211\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.213\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.212\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.214\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.210\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.213\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.215\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"128\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.216\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.215\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.217\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.216\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.218\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.byteIs\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.214\"},{\"kind\":\"fvar\",\"id\":\"_uniq.217\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.219\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.218\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.252\",\"parameters\":[{\"id\":\"_uniq.241\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.242\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.241\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.242\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.243\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.244\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.245\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.244\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.246\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.245\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.246\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.247\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.248\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.249\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.248\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.250\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.249\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.250\"}}}}}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.219\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.220\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.221\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.252\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.221\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.222\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.231\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.232\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.231\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.233\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.232\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.234\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.210\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.233\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.235\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.byteIs\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.234\"},{\"kind\":\"fvar\",\"id\":\"_uniq.217\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.236\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.235\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.236\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.237\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.238\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.252\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.238\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.239\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.252\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]}}]}}}}}}}}]}}}}}}}}}}}}}}}]}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.254\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.263\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.264\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.263\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.265\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.264\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.266\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.267\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.266\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.268\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.267\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.269\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.265\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.268\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.270\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"128\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.271\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.270\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.272\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.271\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.273\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.byteIs\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.269\"},{\"kind\":\"fvar\",\"id\":\"_uniq.272\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.274\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.273\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.274\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.275\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.292\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"129\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.293\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.292\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.294\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.293\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.295\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.byteIs\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.269\"},{\"kind\":\"fvar\",\"id\":\"_uniq.294\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.296\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.295\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.332\",\"parameters\":[{\"id\":\"_uniq.321\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.322\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.321\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.322\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.323\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.324\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.325\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.324\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.326\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.325\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.326\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.327\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.328\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.329\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.328\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.330\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.329\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.330\"}}}}}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.296\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.297\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.298\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.332\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.298\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.299\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.308\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.309\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.308\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.310\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.309\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.311\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.265\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.310\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.312\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"159\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.313\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.312\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.314\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.313\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.315\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.byteIs\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.311\"},{\"kind\":\"fvar\",\"id\":\"_uniq.314\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.316\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.315\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.316\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.317\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.318\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.332\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.318\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.319\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.332\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]}}]}}}}}}}}}}}]}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.333\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.350\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.351\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.350\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.352\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.351\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.353\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.265\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.352\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.354\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"138\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.355\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.354\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.356\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.355\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.357\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.byteIn\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.353\"},{\"kind\":\"fvar\",\"id\":\"_uniq.272\"},{\"kind\":\"fvar\",\"id\":\"_uniq.356\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.358\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.357\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.421\",\"parameters\":[{\"id\":\"_uniq.410\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.411\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.410\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.411\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.412\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.413\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.414\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.413\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.415\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.414\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.415\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.416\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.417\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.418\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.417\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.419\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.418\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.419\"}}}}}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.358\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.359\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.368\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"168\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.369\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.368\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.370\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.369\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.371\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.byteIs\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.353\"},{\"kind\":\"fvar\",\"id\":\"_uniq.370\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.372\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.371\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.372\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.373\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.382\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"169\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.383\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.382\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.384\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.383\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.385\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.byteIs\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.353\"},{\"kind\":\"fvar\",\"id\":\"_uniq.384\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.386\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.385\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.386\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.387\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.396\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"175\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.397\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.396\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.398\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.397\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.399\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.byteIs\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.353\"},{\"kind\":\"fvar\",\"id\":\"_uniq.398\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.400\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.399\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.400\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.401\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.402\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.421\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.402\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.403\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.421\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]}}]}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.405\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.421\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]}}]}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.407\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.421\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]}}]}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.409\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.421\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]}}]}}}}}}}}}}}}]}}}}}}}}}}}}}}]}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.424\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.441\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.442\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.441\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.443\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.442\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.444\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.445\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.444\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.446\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.445\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.447\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.443\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.446\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.448\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"154\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.449\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.448\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.450\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.449\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.451\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.byteIs\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.447\"},{\"kind\":\"fvar\",\"id\":\"_uniq.450\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.452\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.451\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.488\",\"parameters\":[{\"id\":\"_uniq.477\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.478\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.477\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.478\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.479\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.480\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.481\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.480\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.482\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.481\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.482\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.483\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.484\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.485\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.484\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.486\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.485\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.486\"}}}}}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.452\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.453\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.454\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.488\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.454\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.455\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.464\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.465\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.464\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.466\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.465\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.467\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.443\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.466\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.468\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"128\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.469\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.468\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.470\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.469\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.471\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.byteIs\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.467\"},{\"kind\":\"fvar\",\"id\":\"_uniq.470\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.472\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.471\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.472\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.473\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.474\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.488\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.474\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.475\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.488\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]}}]}}}}}}}}}}}]}}}}}}}}}}}}}}}]}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.490\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.507\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.508\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.507\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.509\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.508\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.510\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.511\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.510\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.512\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.511\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.513\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.509\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.512\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.514\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"133\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.515\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.514\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.516\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.515\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.517\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.byteIs\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.513\"},{\"kind\":\"fvar\",\"id\":\"_uniq.516\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.518\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.517\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.549\",\"parameters\":[{\"id\":\"_uniq.538\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.539\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.538\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.539\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.540\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.541\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.542\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.541\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.543\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.542\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.543\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.544\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.545\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.546\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.545\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.547\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.546\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.547\"}}}}}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.518\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.519\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.528\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"160\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.529\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.528\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.530\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.529\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.531\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.byteIs\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.513\"},{\"kind\":\"fvar\",\"id\":\"_uniq.530\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.532\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.531\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.532\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.533\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.534\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.549\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.534\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.535\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.549\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]}}]}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.537\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.549\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]}}]}}}}}}}}}}}}}}}]}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.551\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.552\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.553\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.552\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.554\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.553\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.554\"}}}}}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.109\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.110\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"32\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.120\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.119\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.121\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.120\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.byteIs\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.121\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.122\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.123\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.124\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.556\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.125\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.126\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.556\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]}}]}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.128\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.556\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]}}]}}}}}}}}}}}},\"uses\":[\"Add\",\"Bool\",\"ByteArray\",\"Decidable\",\"HAdd\",\"Nat\",\"OfNat\",\"UInt8\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"UInt8.instOfNat\",\"LexLeanBoot.AxiomOutput.byteIn\",\"LexLeanBoot.AxiomOutput.byteIs\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.zeroStep\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Nat\",\"Option\",\"UInt8\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"ite\",\"Bool.true\",\"HAdd.hAdd\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"UInt8.instOfNat\",\"LexLeanBoot.AxiomOutput.byteIs\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"48\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.25\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.byteIs\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.29\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.34\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.37\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.35\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.40\"}}}}}}}}}}]}}}}}}}},\"uses\":[\"Add\",\"Bool\",\"ByteArray\",\"Decidable\",\"HAdd\",\"Nat\",\"OfNat\",\"Option\",\"UInt8\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"UInt8.instOfNat\",\"LexLeanBoot.AxiomOutput.byteIs\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.Text.byteAt\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Nat\",\"UInt8\",\"LexLeanRuntime.index\",\"LexLeanRuntime.instIndexableByteArrayUInt8\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instIndexableByteArrayUInt8\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.index\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.14\"}}}},\"uses\":[\"ByteArray\",\"Nat\",\"Option\",\"UInt8\",\"LexLeanRuntime.Indexable\",\"LexLeanRuntime.index\",\"LexLeanRuntime.instIndexableByteArrayUInt8\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.Text.chomp\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Nat\",\"UInt8\",\"instDecidableEqBool\",\"instOfNatNat\",\"instSubNat\",\"ite\",\"Bool.true\",\"ByteArray.mk\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"List.cons\",\"List.nil\",\"List.toArray\",\"OfNat.ofNat\",\"UInt8.instOfNat\",\"LexLeanBoot.Text.endsWith\",\"LexLeanBoot.Text.sliceOr\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"13\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.19\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.toArray\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.endsWith\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"discriminant\":\"_uniq.27\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.9\"}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.31\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.37\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.sliceOr\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.40\"}}}}}}}}}}}}}]}}}}}}}}}}}},\"uses\":[\"Array\",\"Bool\",\"ByteArray\",\"Decidable\",\"List\",\"Nat\",\"OfNat\",\"Sub\",\"UInt8\",\"instDecidableEqBool\",\"instOfNatNat\",\"instSubNat\",\"Bool.true\",\"ByteArray.mk\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"List.cons\",\"List.nil\",\"List.toArray\",\"UInt8.instOfNat\",\"LexLeanBoot.Text.endsWith\",\"LexLeanBoot.Text.sliceOr\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.Text.endsWith\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Nat\",\"Option\",\"Unit\",\"instDecidableEqBool\",\"instSubNat\",\"ite\",\"Bool.false\",\"Bool.true\",\"ByteArray.instBEq\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.instSliceableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.slice\",\"LexLeanRuntime.subtract\",\"Nat.ble\",\"LexLeanBoot.Text.sliceOr.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.40\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.42\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.43\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.52\"},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.54\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.56\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.57\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.66\",\"parameters\":[{\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.instBEq\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.65\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.66\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.73\",\"parameters\":[{\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.72\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.73\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instSliceableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.slice\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.82\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.85\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.74\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.86\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.87\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.67\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.89\"}}}]}}}}}}}}}}]}}}}}}}}}},\"uses\":[\"BEq\",\"Bool\",\"ByteArray\",\"Decidable\",\"Nat\",\"Option\",\"PUnit\",\"Sub\",\"instDecidableEqBool\",\"instSubNat\",\"Bool.false\",\"Bool.true\",\"ByteArray.instBEq\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.Sliceable\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.instSliceableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.slice\",\"LexLeanRuntime.subtract\",\"Nat.ble\",\"Option.none\",\"Option.some\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.Text.find\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Nat\",\"Option\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"ite\",\"Bool.true\",\"HAdd.hAdd\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"Nat.blt\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Prod.fst\",\"LexLeanBoot.Text.matchAt\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.36\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.38\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.80\",\"parameters\":[{\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.matchAt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.52\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.53\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.63\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.64\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.66\"},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.67\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.68\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.69\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.72\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.64\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.75\"}}}}}}}]}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.77\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.78\"}}}]}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.82\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.84\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.85\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.83\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.86\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.89\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"},{\"kind\":\"fvar\",\"id\":\"_uniq.90\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.91\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.92\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.matchAt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.93\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.102\"},{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.104\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.105\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.106\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.107\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.93\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.108\"}}}]}}}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Add\",\"Bool\",\"ByteArray\",\"Decidable\",\"HAdd\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"Nat.blt\",\"Option.none\",\"Option.some\",\"LexLeanBoot.Text.matchAt\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.Text.lineStep\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"List\",\"Nat\",\"Option\",\"Prod\",\"UInt8\",\"Unit\",\"instAddNat\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instDecidableEqUInt8\",\"instHAdd\",\"instOfNatNat\",\"instSubNat\",\"ite\",\"Bool.true\",\"HAdd.hAdd\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.subtract\",\"List.cons\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"UInt8.instOfNat\",\"LexLeanBoot.Text.byteAt\",\"LexLeanBoot.Text.chomp\",\"LexLeanBoot.Text.sliceOr\",\"LexLeanBoot.Text.spaceAt.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}}},\"parameters\":[{\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.43\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.49\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.43\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.51\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.52\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.51\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.54\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.106\",\"parameters\":[{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqUInt8\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"10\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.72\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.73\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.71\"},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"discriminant\":\"_uniq.77\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.78\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.79\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.80\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.82\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.83\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.81\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.85\"},{\"kind\":\"fvar\",\"id\":\"_uniq.86\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.88\"}}}}}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.89\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.90\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.91\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.93\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.94\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.92\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.95\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.97\"},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.sliceOr\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.98\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.chomp\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.99\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.100\"},{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.96\"},{\"kind\":\"fvar\",\"id\":\"_uniq.101\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.96\"},{\"kind\":\"fvar\",\"id\":\"_uniq.102\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.104\"}}}}}}}}}}}}}}}}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.106\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.113\",\"parameters\":[{\"id\":\"_uniq.111\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.112\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.113\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.byteAt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"discriminant\":\"_uniq.122\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.124\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.114\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.123\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.124\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.125\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.107\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.125\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.126\"}}}]}}}}}}}}}}}}}},\"uses\":[\"Add\",\"BEq\",\"Bool\",\"ByteArray\",\"Decidable\",\"HAdd\",\"List\",\"Nat\",\"OfNat\",\"Option\",\"PUnit\",\"Prod\",\"Sub\",\"UInt8\",\"instAddNat\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instDecidableEqUInt8\",\"instHAdd\",\"instOfNatNat\",\"instSubNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.subtract\",\"List.cons\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"UInt8.instOfNat\",\"Unit.unit\",\"LexLeanBoot.Text.byteAt\",\"LexLeanBoot.Text.chomp\",\"LexLeanBoot.Text.sliceOr\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.Text.lines\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"List\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"instOfNatNat\",\"instSubNat\",\"ite\",\"Bool.true\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"List.cons\",\"List.nil\",\"Nat.blt\",\"OfNat.ofNat\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"LexLeanBoot.Text.lineStep\",\"LexLeanBoot.Text.reverse\",\"LexLeanBoot.Text.sliceOr\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.28\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.33\",\"parameters\":[{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.lineStep\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.32\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.35\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.40\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.41\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.42\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.43\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.44\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.43\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.46\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.58\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.reverse\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.60\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.sliceOr\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.reverse\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.66\"}}}}}}}]}}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Decidable\",\"List\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"Sub\",\"instDecidableEqBool\",\"instOfNatNat\",\"instSubNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"List.cons\",\"List.nil\",\"Nat.blt\",\"Prod.mk\",\"LexLeanBoot.Text.lineStep\",\"LexLeanBoot.Text.reverse\",\"LexLeanBoot.Text.sliceOr\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.Text.matchAt\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Nat\",\"Option\",\"Unit\",\"Bool.false\",\"ByteArray.instBEq\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.instSliceableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.slice\",\"LexLeanBoot.Text.sliceOr.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}}},\"parameters\":[{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.47\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.instBEq\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.46\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.47\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.54\",\"parameters\":[{\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.53\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.54\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instSliceableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.slice\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"},{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.66\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.55\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.68\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.48\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.69\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.70\"}}}]}}}}}}}}}},\"uses\":[\"BEq\",\"Bool\",\"ByteArray\",\"Nat\",\"Option\",\"PUnit\",\"Bool.false\",\"ByteArray.instBEq\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.Sliceable\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.instSliceableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.slice\",\"Option.none\",\"Option.some\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.Text.reverse\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"List\",\"LexLeanCollections.listFold\",\"List.cons\",\"List.nil\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.14\",\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.13\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.16\"}}}}},\"uses\":[\"ByteArray\",\"List\",\"LexLeanCollections.listFold\",\"List.cons\",\"List.nil\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.Text.sliceOr\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Nat\",\"Option\",\"UInt8\",\"Unit\",\"ByteArray.mk\",\"LexLeanRuntime.instSliceableByteArray\",\"LexLeanRuntime.slice\",\"List.nil\",\"List.toArray\",\"LexLeanBoot.Text.sliceOr.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}}},\"parameters\":[{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.45\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.44\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.45\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.54\",\"parameters\":[{\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.toArray\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.53\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.54\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instSliceableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.slice\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"discriminant\":\"_uniq.64\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.55\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.66\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.46\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.68\"}}}]}}}}}}}},\"uses\":[\"Array\",\"ByteArray\",\"List\",\"Nat\",\"Option\",\"PUnit\",\"UInt8\",\"ByteArray.mk\",\"LexLeanRuntime.Sliceable\",\"LexLeanRuntime.instSliceableByteArray\",\"LexLeanRuntime.slice\",\"List.nil\",\"List.toArray\",\"Option.none\",\"Option.some\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.Text.splitOn\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"List\",\"Nat\",\"Prod\",\"UInt8\",\"instOfNatNat\",\"instSubNat\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"List.cons\",\"List.nil\",\"OfNat.ofNat\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"LexLeanBoot.Text.reverse\",\"LexLeanBoot.Text.sliceOr\",\"LexLeanBoot.Text.splitStep\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.27\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.32\",\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.splitStep\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.34\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.39\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.40\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.41\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.42\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.43\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.sliceOr\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.42\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.reverse\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.50\"}}}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"List\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"Sub\",\"UInt8\",\"instOfNatNat\",\"instSubNat\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"List.cons\",\"List.nil\",\"Prod.mk\",\"LexLeanBoot.Text.reverse\",\"LexLeanBoot.Text.sliceOr\",\"LexLeanBoot.Text.splitStep\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.Text.splitStep\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"List\",\"Nat\",\"Option\",\"Prod\",\"UInt8\",\"Unit\",\"instAddNat\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instDecidableEqUInt8\",\"instHAdd\",\"instOfNatNat\",\"instSubNat\",\"ite\",\"Bool.true\",\"HAdd.hAdd\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.subtract\",\"List.cons\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"LexLeanBoot.Text.byteAt\",\"LexLeanBoot.Text.sliceOr\",\"LexLeanBoot.Text.spaceAt.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}}}},\"parameters\":[{\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.50\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.50\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.58\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.59\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.58\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.61\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.109\",\"parameters\":[{\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqUInt8\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.77\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.78\"},{\"kind\":\"fvar\",\"id\":\"_uniq.66\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.79\"},{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"discriminant\":\"_uniq.81\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.82\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.83\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.84\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.86\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.87\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.85\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.89\"},{\"kind\":\"fvar\",\"id\":\"_uniq.90\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.91\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.92\"}}}}}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.93\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.94\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.95\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.97\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.98\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.96\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.99\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.101\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.sliceOr\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.48\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.102\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.103\"},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.100\"},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.100\"},{\"kind\":\"fvar\",\"id\":\"_uniq.105\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.106\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.107\"}}}}}}}}}}}}}}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.110\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.109\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.116\",\"parameters\":[{\"id\":\"_uniq.114\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.115\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.116\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.byteAt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.48\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"discriminant\":\"_uniq.125\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.127\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.117\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.126\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.127\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.128\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.129\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.110\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.128\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.129\"}}}]}}}}}}}}}}}}}},\"uses\":[\"Add\",\"BEq\",\"Bool\",\"ByteArray\",\"Decidable\",\"HAdd\",\"List\",\"Nat\",\"OfNat\",\"Option\",\"PUnit\",\"Prod\",\"Sub\",\"UInt8\",\"instAddNat\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instDecidableEqUInt8\",\"instHAdd\",\"instOfNatNat\",\"instSubNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.subtract\",\"List.cons\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"Unit.unit\",\"LexLeanBoot.Text.byteAt\",\"LexLeanBoot.Text.sliceOr\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.Text.startsWith\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Nat\",\"Option\",\"Unit\",\"instOfNatNat\",\"Bool.false\",\"ByteArray.instBEq\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.instSliceableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.slice\",\"OfNat.ofNat\",\"LexLeanBoot.Text.sliceOr.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.40\",\"parameters\":[{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.instBEq\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.39\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.40\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.47\",\"parameters\":[{\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.46\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.47\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instSliceableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.58\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.slice\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.62\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.48\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.64\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.41\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.66\"}}}]}}}}}}}}}}}}},\"uses\":[\"BEq\",\"Bool\",\"ByteArray\",\"Nat\",\"OfNat\",\"Option\",\"PUnit\",\"instOfNatNat\",\"Bool.false\",\"ByteArray.instBEq\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.Sliceable\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.instSliceableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.slice\",\"Option.none\",\"Option.some\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.iterate.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Nat.casesOn\",\"Nat.succ\",\"OfNat.ofNat\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.iterateUntil._f\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Nat.below\",\"Nat.succ\",\"OfNat.ofNat\",\"Prod.mk\",\"LexLeanCollections.iterate.match_1\",\"LexLeanCollections.iterateUntil.match_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.iterateUntil.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Appendable.append\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Appendable\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Appendable.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Fixed.fromInt\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Fixed\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Fixed.maximum\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Fixed\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Fixed.minimum\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Fixed\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Fixed.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Fixed.toToMathInt\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Fixed\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Indexable.index\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Indexable\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Indexable.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Lengthable.length\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Lengthable\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Lengthable.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Quotient.isZero\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Quotient\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Quotient.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Quotient.quotient\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Quotient\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Quotient.remainder\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Quotient\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Sliceable.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Sliceable.slice\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Sliceable\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.ToMathInt.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.ToMathInt.toInt\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.ToMathInt\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.Record.axioms\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanBoot.AxiomOutput.Record\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.Record.declaration\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanBoot.AxiomOutput.Record\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.Record.expected\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanBoot.AxiomOutput.Record\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.Record.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.Rejection.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.Scan.between\",\"kind\":\"constructor\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.Scan.casesOn\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"List\",\"Option\",\"LexLeanBoot.AxiomOutput.Record\",\"LexLeanBoot.AxiomOutput.Rejection\",\"LexLeanBoot.AxiomOutput.Scan\",\"LexLeanBoot.AxiomOutput.Scan.between\",\"LexLeanBoot.AxiomOutput.Scan.inside\",\"LexLeanBoot.AxiomOutput.Scan.rec\",\"LexLeanBoot.AxiomOutput.Scan.stopped\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.Scan.inside\",\"kind\":\"constructor\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.Scan.rec\",\"kind\":\"recursor\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"recursor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.Scan.stopped\",\"kind\":\"constructor\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.afterLocation.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Option\",\"Prod\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.auditStep.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Except\",\"List\",\"Prod\",\"Except.casesOn\",\"Except.error\",\"Except.ok\",\"LexLeanBoot.AxiomOutput.Rejection\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.axiomList.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"List\",\"Unit\",\"List.casesOn\",\"List.cons\",\"List.nil\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.collectStep.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Except\",\"List\",\"Except.casesOn\",\"Except.error\",\"Except.ok\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.extend.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Except\",\"List\",\"Prod\",\"Except.casesOn\",\"Except.error\",\"Except.ok\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.inRange.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Option\",\"UInt8\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.insertAxiom._f\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"List\",\"Option\",\"Unit\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"ByteArray.instBEq\",\"LexLeanRuntime.equal\",\"List.below\",\"List.cons\",\"List.nil\",\"Option.none\",\"Option.some\",\"LexLeanBoot.AxiomOutput.lessBytes\",\"LexLeanBoot.AxiomOutput.insertAxiom.match_1\",\"LexLeanBoot.AxiomOutput.insertAxiom.match_3\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.insertAxiom.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"List\",\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.insertAxiom.match_3\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"List\",\"List.casesOn\",\"List.cons\",\"List.nil\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.insertEntry._f\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"List\",\"Option\",\"Prod\",\"Unit\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"ByteArray.instBEq\",\"LexLeanRuntime.equal\",\"List.below\",\"List.cons\",\"List.nil\",\"Option.none\",\"Option.some\",\"Prod.fst\",\"Prod.mk\",\"LexLeanBoot.AxiomOutput.lessBytes\",\"LexLeanBoot.AxiomOutput.insertEntry.match_1\",\"LexLeanBoot.AxiomOutput.insertEntry.match_3\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.insertEntry.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"List\",\"Option\",\"Prod\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.insertEntry.match_3\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"List\",\"Prod\",\"List.casesOn\",\"List.cons\",\"List.nil\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.isWord.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.parsePayload.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.scanStep.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"List\",\"Option\",\"LexLeanBoot.AxiomOutput.Record\",\"LexLeanBoot.AxiomOutput.Rejection\",\"LexLeanBoot.AxiomOutput.Scan\",\"LexLeanBoot.AxiomOutput.Scan.between\",\"LexLeanBoot.AxiomOutput.Scan.casesOn\",\"LexLeanBoot.AxiomOutput.Scan.inside\",\"LexLeanBoot.AxiomOutput.Scan.stopped\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.splitOnce.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.Text.sliceOr.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.Text\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.Text.spaceAt.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.Text\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Option\",\"UInt8\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null}],\"externals\":[{\"name\":\"Add\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Array\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"BEq\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Bool\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"ByteArray\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Decidable\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Except\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"GetElem?\",\"kind\":\"inductive\",\"module\":\"Init.GetElem\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"HAdd\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"HSub\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Int\",\"kind\":\"inductive\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"List\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Nat\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"OfNat\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Option\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Ord\",\"kind\":\"inductive\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Ordering\",\"kind\":\"inductive\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"PUnit\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Prod\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"String\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Sub\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"UInt32\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"UInt8\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"instAddNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instBEqOfDecidableEq\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instDecidableEqBool\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instDecidableEqNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instDecidableEqOrdering\",\"kind\":\"definition\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instDecidableEqUInt8\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instHAdd\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instHSub\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instOfNat\",\"kind\":\"definition\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instOfNatNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instSubNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Array.instGetElem?NatLtSize\",\"kind\":\"definition\",\"module\":\"Init.GetElem\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Bool.false\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Bool\"},{\"name\":\"Bool.not\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Bool.true\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Bool\"},{\"name\":\"ByteArray.data\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"ByteArray.extract\",\"kind\":\"definition\",\"module\":\"Init.Data.ByteArray.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"ByteArray.fastAppend\",\"kind\":\"definition\",\"module\":\"Init.Data.ByteArray.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"ByteArray.instBEq\",\"kind\":\"definition\",\"module\":\"Init.Data.ByteArray.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"ByteArray.mk\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":true,\"inductive_type\":\"ByteArray\"},{\"name\":\"ByteArray.size\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"ByteArray.toList\",\"kind\":\"definition\",\"module\":\"Init.Data.ByteArray.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Decidable.isFalse\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Decidable\"},{\"name\":\"Decidable.isTrue\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Decidable\"},{\"name\":\"Except.error\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Except\"},{\"name\":\"Except.ok\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Except\"},{\"name\":\"Int.decLt\",\"kind\":\"definition\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int.instSub\",\"kind\":\"definition\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int.ofNat\",\"kind\":\"constructor\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":true,\"inductive_type\":\"Int\"},{\"name\":\"List.cons\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"List\"},{\"name\":\"List.foldl\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"List.instOrd\",\"kind\":\"definition\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"List.nil\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"List\"},{\"name\":\"List.toArray\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.beq\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.ble\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.blt\",\"kind\":\"definition\",\"module\":\"Init.Data.Nat.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.decLe\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.decLt\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.div\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.mod\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.succ\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Nat\"},{\"name\":\"Nat.zero\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Nat\"},{\"name\":\"Option.none\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Option\"},{\"name\":\"Option.some\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Option\"},{\"name\":\"Prod.mk\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Prod\"},{\"name\":\"String.toUTF8\",\"kind\":\"axiom\",\"module\":\"Init.Data.String.Defs\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt32.toNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt8.complement\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt8.instOfNat\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.BasicAux\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt8.instOrd\",\"kind\":\"definition\",\"module\":\"Init.Data.Ord.UInt\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt8.land\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt8.lor\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt8.ofInt\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt8.ofNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt8.shiftLeft\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt8.shiftRight\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt8.toNat\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.BasicAux\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt8.xor\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Unit.unit\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true}]}\n","stdout_sha256":"8936693ae9a91f38acfc70d3ebc0d4683efcc54907e455298d72339e1e36cead","tool":"lean"} +{"argv":["env","lean","$STAGING/extract/LexLeanExtract.X5ba510b7049a3e59c5f1ffb1f0a6611d.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanExtract.X5ba510b7049a3e59c5f1ffb1f0a6611d","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"{\"spec\":\"lexlean/lcnf-extraction/2\",\"lean\":{\"version\":\"4.32.1\",\"githash\":\"f054605aea4b840552cca2e725580bffd1e1b704\"},\"roots\":[\"LexLeanBoot.AxiomOutput.isClosedLeanName\",\"LexLeanBoot.AxiomOutput.parseAuditOutput\"],\"constants\":[{\"name\":\"LexLeanCollections.iterateUntil\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Nat\",\"Option\",\"Prod\",\"Nat.brecOn\",\"LexLeanCollections.iterateUntil._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}}}}},\"parameters\":[{\"id\":\"_uniq.65\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.68\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]}},\"borrow\":false},{\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.79\",\"parameters\":[{\"id\":\"_uniq.76\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"},{\"kind\":\"fvar\",\"id\":\"_uniq.77\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.78\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.79\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.121\",\"parameters\":[{\"id\":\"_uniq.91\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.92\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.101\",\"parameters\":[{\"id\":\"_uniq.98\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.92\"},{\"kind\":\"fvar\",\"id\":\"_uniq.99\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.100\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.101\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.106\",\"parameters\":[{\"id\":\"_uniq.104\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.68\"},{\"kind\":\"fvar\",\"id\":\"_uniq.91\"},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.105\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.106\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.68\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"discriminant\":\"_uniq.115\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.102\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.116\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.117\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.118\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.107\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.118\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.119\"}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.121\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Nat\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"discriminant\":\"_uniq.69\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Nat.zero\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.128\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.80\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.128\"}}},{\"kind\":\"constructor\",\"constructor\":\"Nat.succ\",\"parameters\":[{\"id\":\"_uniq.129\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.130\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.122\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.129\"},{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.130\"}}}]}}}}}},\"uses\":[\"Bool\",\"Nat\",\"Option\",\"PUnit\",\"Prod\",\"Bool.false\",\"Bool.true\",\"LexLeanCollections.iterateUntil\",\"Nat.succ\",\"Nat.zero\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.listFold\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"List.foldl\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":2}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}}},\"parameters\":[{\"id\":\"_uniq.53\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}}},\"borrow\":false},{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},\"borrow\":false},{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},\"value\":{\"kind\":\"const\",\"name\":\"List.foldl\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.64\"}}},\"uses\":[\"List\",\"List.foldl\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.Appendable\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.Appendable.mk\",\"parameters\":1,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"bvar\",\"index\":2}}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}}}}]}},{\"name\":\"LexLeanRuntime.Fixed\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.Fixed.mk\",\"parameters\":1,\"fields\":10,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"bvar\",\"index\":2}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":4},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":5},\"codomain\":{\"kind\":\"bvar\",\"index\":6}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":5},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":6},\"codomain\":{\"kind\":\"bvar\",\"index\":7}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":6},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":7},\"codomain\":{\"kind\":\"bvar\",\"index\":8}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":7},\"codomain\":{\"kind\":\"bvar\",\"index\":8}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":8},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":10}]}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":9},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":11}]}}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":10}]}}}}}}}}}}}}}]}},{\"name\":\"LexLeanRuntime.Indexable\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":2,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.Indexable.mk\",\"parameters\":2,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]}}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2},{\"kind\":\"bvar\",\"index\":1}]}}}}}]}},{\"name\":\"LexLeanRuntime.Lengthable\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.Lengthable.mk\",\"parameters\":1,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}}}}]}},{\"name\":\"LexLeanRuntime.Quotient\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.Quotient.mk\",\"parameters\":1,\"fields\":3,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"bvar\",\"index\":2}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}}}]}},{\"name\":\"LexLeanRuntime.Sliceable\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.Sliceable.mk\",\"parameters\":1,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}}}}]}},{\"name\":\"LexLeanRuntime.ToMathInt\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.ToMathInt.mk\",\"parameters\":1,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}}}}]}},{\"name\":\"LexLeanRuntime.append\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.Appendable.append\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}},\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"borrow\":false},{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"borrow\":false},{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Appendable\",\"index\":0,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.39\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.40\"}}}},\"uses\":[\"LexLeanRuntime.Appendable\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.checkedFromInt\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"Option\",\"ite\",\"Int.decLt\",\"Int.instLTInt\",\"LT.lt\",\"LexLeanRuntime.Fixed\",\"Option.none\",\"Option.some\",\"LexLeanRuntime.Fixed.fromInt\",\"LexLeanRuntime.Fixed.maximum\",\"LexLeanRuntime.Fixed.minimum\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]}}}},\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"borrow\":false},{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":2,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"discriminant\":\"_uniq.33\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":3,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.43\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"discriminant\":\"_uniq.44\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.45\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":1,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.47\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.49\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.50\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.51\"}}}]}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.53\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.54\"}}}]}}}},\"uses\":[\"Decidable\",\"Int\",\"Option\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Int.decLt\",\"LexLeanRuntime.Fixed\",\"Option.none\",\"Option.some\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.checkedSubtract\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"instHSub\",\"HSub.hSub\",\"Int.instSub\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.checkedFromInt\",\"LexLeanRuntime.Fixed.toToMathInt\",\"LexLeanRuntime.ToMathInt.toInt\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}},\"parameters\":[{\"id\":\"_uniq.19\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"borrow\":false},{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instSub\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HSub\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHSub\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HSub\",\"index\":0,\"value\":\"_uniq.24\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":0,\"value\":\"_uniq.20\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.ToMathInt\",\"index\":0,\"value\":\"_uniq.49\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.53\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.53\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.25\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedFromInt\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}}}}}}}}}},\"uses\":[\"HSub\",\"Int\",\"Option\",\"Sub\",\"instHSub\",\"Int.instSub\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.ToMathInt\",\"LexLeanRuntime.checkedFromInt\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.compareBytes\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"List\",\"UInt8\",\"ByteArray.toList\",\"List.instOrd\",\"Ord.compare\",\"UInt8.instOrd\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Ord\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOrd\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Ord\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.instOrd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Ord\",\"index\":0,\"value\":\"_uniq.14\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.toList\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.toList\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.23\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.26\"}}}}}}}},\"uses\":[\"ByteArray\",\"List\",\"Ord\",\"Ordering\",\"UInt8\",\"ByteArray.toList\",\"List.instOrd\",\"UInt8.instOrd\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.equal\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"BEq\",\"BEq.beq\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}}}},\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"borrow\":false},{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},\"borrow\":false},{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"BEq\",\"index\":0,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.25\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.26\"}}}},\"uses\":[\"BEq\",\"Bool\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.index\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"LexLeanRuntime.Indexable\",\"LexLeanRuntime.Indexable.index\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1},{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}}},\"parameters\":[{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"borrow\":false},{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},\"borrow\":false},{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Indexable\",\"index\":0,\"value\":\"_uniq.26\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.34\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.35\"}}}},\"uses\":[\"Nat\",\"Option\",\"LexLeanRuntime.Indexable\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instAppendableByteArray\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"ByteArray.append\",\"LexLeanRuntime.Appendable.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.1\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.fastAppend\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.2\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.1\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.2\"}}}},\"uses\":[\"ByteArray\",\"ByteArray.fastAppend\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.Appendable.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instFixedUInt8\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"Nat\",\"Option\",\"UInt32\",\"UInt8\",\"instLTNat\",\"instOfNat\",\"instOfNatNat\",\"ite\",\"Int.ofNat\",\"LT.lt\",\"Nat.decLt\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"UInt32.toNat\",\"UInt8.complement\",\"UInt8.land\",\"UInt8.lor\",\"UInt8.ofInt\",\"UInt8.ofNat\",\"UInt8.shiftLeft\",\"UInt8.shiftRight\",\"UInt8.toNat\",\"UInt8.xor\",\"LexLeanRuntime.Fixed.mk\",\"LexLeanRuntime.ToMathInt.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.16\",\"parameters\":[{\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int.ofNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.15\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.ofInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.20\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"255\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.23\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.land\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.lor\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.xor\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.complement\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.53\",\"parameters\":[{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"8\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.43\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"discriminant\":\"_uniq.45\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.46\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.47\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.48\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.ofNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.shiftLeft\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.51\"}}}}}]}}}}}}},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.78\",\"parameters\":[{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"8\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.68\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.66\"},{\"kind\":\"fvar\",\"id\":\"_uniq.69\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"discriminant\":\"_uniq.70\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.71\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.72\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.73\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.ofNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.66\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.shiftRight\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.75\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.76\"}}}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.78\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.79\"}}}}}}}}}}}}}}}}}},\"uses\":[\"Decidable\",\"Int\",\"Nat\",\"OfNat\",\"Option\",\"UInt32\",\"UInt8\",\"instOfNat\",\"instOfNatNat\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Int.ofNat\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.ToMathInt\",\"Nat.decLt\",\"Option.none\",\"Option.some\",\"UInt32.toNat\",\"UInt8.complement\",\"UInt8.land\",\"UInt8.lor\",\"UInt8.ofInt\",\"UInt8.ofNat\",\"UInt8.shiftLeft\",\"UInt8.shiftRight\",\"UInt8.toNat\",\"UInt8.xor\",\"LexLeanRuntime.Fixed.mk\",\"LexLeanRuntime.ToMathInt.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instIndexableByteArrayUInt8\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Array\",\"ByteArray\",\"Nat\",\"UInt8\",\"instLTNat\",\"Array.instGetElem?NatLtSize\",\"Array.size\",\"ByteArray.data\",\"GetElem?.getElem?\",\"LT.lt\",\"LexLeanRuntime.Indexable.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.59\",\"parameters\":[{\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"GetElem?\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Array.instGetElem?NatLtSize\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"GetElem?\",\"index\":1,\"value\":\"_uniq.9\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.data\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.58\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.60\"}}}},\"uses\":[\"Array\",\"ByteArray\",\"GetElem?\",\"Nat\",\"Option\",\"UInt8\",\"Array.instGetElem?NatLtSize\",\"ByteArray.data\",\"LexLeanRuntime.Indexable\",\"LexLeanRuntime.Indexable.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"ByteArray.size\",\"LexLeanRuntime.Lengthable.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.1\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.size\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.5\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.1\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.5\"}}}},\"uses\":[\"ByteArray\",\"Nat\",\"ByteArray.size\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.Lengthable.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instQuotientNat\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instBEqOfDecidableEq\",\"instDecidableEqNat\",\"instOfNatNat\",\"BEq.beq\",\"Nat.div\",\"Nat.mod\",\"OfNat.ofNat\",\"LexLeanRuntime.Quotient.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.2\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"Nat.div\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.3\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"Nat.mod\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.15\",\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"BEq\",\"index\":0,\"value\":\"_uniq.9\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.12\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.10\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.14\"}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.2\"},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.25\"}}}}}},\"uses\":[\"BEq\",\"Bool\",\"Decidable\",\"Nat\",\"OfNat\",\"instBEqOfDecidableEq\",\"instDecidableEqNat\",\"instOfNatNat\",\"LexLeanRuntime.Quotient\",\"Nat.div\",\"Nat.mod\",\"LexLeanRuntime.Quotient.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instSliceableByteArray\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Nat\",\"Option\",\"instAddNat\",\"instHAdd\",\"instLENat\",\"ite\",\"ByteArray.extract\",\"ByteArray.size\",\"HAdd.hAdd\",\"LE.le\",\"Nat.decLe\",\"Option.none\",\"Option.some\",\"LexLeanRuntime.Sliceable.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.33\",\"parameters\":[{\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.23\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.size\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.decLe\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.26\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.28\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.extract\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}}}}]}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.39\"}}}},\"uses\":[\"Add\",\"ByteArray\",\"Decidable\",\"HAdd\",\"Nat\",\"Option\",\"instAddNat\",\"instHAdd\",\"ByteArray.extract\",\"ByteArray.size\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.Sliceable\",\"Nat.decLe\",\"Option.none\",\"Option.some\",\"LexLeanRuntime.Sliceable.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.length\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.Lengthable.length\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}}},\"parameters\":[{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Lengthable\",\"index\":0,\"value\":\"_uniq.16\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.18\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.19\"}}}},\"uses\":[\"Nat\",\"LexLeanRuntime.Lengthable\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.quotient\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"LexLeanRuntime.Quotient\",\"LexLeanRuntime.Quotient.isZero\",\"LexLeanRuntime.Quotient.quotient\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":3},\"codomain\":{\"kind\":\"bvar\",\"index\":4}}}}}},\"parameters\":[{\"id\":\"_uniq.39\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"borrow\":false},{\"id\":\"_uniq.41\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"borrow\":false},{\"id\":\"_uniq.42\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"borrow\":false},{\"id\":\"_uniq.43\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Quotient\",\"index\":2,\"value\":\"_uniq.40\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.52\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"discriminant\":\"_uniq.55\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Quotient\",\"index\":0,\"value\":\"_uniq.40\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.59\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.60\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.43\"}}]}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.Quotient\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.remainder\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"LexLeanRuntime.Quotient\",\"LexLeanRuntime.Quotient.isZero\",\"LexLeanRuntime.Quotient.remainder\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":3},\"codomain\":{\"kind\":\"bvar\",\"index\":4}}}}}},\"parameters\":[{\"id\":\"_uniq.39\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"borrow\":false},{\"id\":\"_uniq.41\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"borrow\":false},{\"id\":\"_uniq.42\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"borrow\":false},{\"id\":\"_uniq.43\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Quotient\",\"index\":2,\"value\":\"_uniq.40\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.52\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"discriminant\":\"_uniq.55\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Quotient\",\"index\":1,\"value\":\"_uniq.40\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.59\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.60\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.43\"}}]}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.Quotient\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.slice\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"LexLeanRuntime.Sliceable\",\"LexLeanRuntime.Sliceable.slice\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":4}]}}}}}},\"parameters\":[{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"borrow\":false},{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},\"borrow\":false},{\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]}}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Sliceable\",\"index\":0,\"value\":\"_uniq.24\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.28\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.29\"}}}},\"uses\":[\"Nat\",\"Option\",\"LexLeanRuntime.Sliceable\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.subtract\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Sub\",\"instHSub\",\"HSub.hSub\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}},\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"borrow\":false},{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"borrow\":false},{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HSub\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instHSub\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HSub\",\"index\":0,\"value\":\"_uniq.39\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}}}},\"uses\":[\"HSub\",\"Sub\",\"instHSub\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.utf8Encode\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"String\",\"String.toUTF8\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"String.toUTF8\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}},\"uses\":[\"ByteArray\",\"String\",\"String.toUTF8\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"kind\":\"inductive\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanBoot.AxiomOutput.Record.mk\",\"parameters\":0,\"fields\":3,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}}}}}]}},{\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"kind\":\"inductive\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanBoot.AxiomOutput.Rejection.mk\",\"parameters\":0,\"fields\":2,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]}}}}]}},{\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"kind\":\"inductive\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanBoot.AxiomOutput.Scan.between\",\"parameters\":0,\"fields\":2,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}}}},{\"name\":\"LexLeanBoot.AxiomOutput.Scan.inside\",\"parameters\":0,\"fields\":4,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}}}}}},{\"name\":\"LexLeanBoot.AxiomOutput.Scan.stopped\",\"parameters\":0,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}}}]}},{\"name\":\"LexLeanBoot.AxiomOutput.afterLabel\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Option\",\"Unit\",\"Option.none\",\"LexLeanBoot.AxiomOutput.stripPrefix\",\"LexLeanBoot.AxiomOutput.text\",\"LexLeanBoot.AxiomOutput.isWord.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.34\",\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"info: \"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.stripPrefix\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.33\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.34\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.41\",\"parameters\":[{\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.40\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.41\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\" \"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.stripPrefix\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.52\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.42\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.54\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.35\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.56\"}}}]}}}}}}}}},\"uses\":[\"ByteArray\",\"Option\",\"PUnit\",\"String\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"LexLeanBoot.AxiomOutput.stripPrefix\",\"LexLeanBoot.AxiomOutput.text\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.afterLocation\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Option\",\"Prod\",\"Unit\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.none\",\"Prod.fst\",\"Prod.snd\",\"LexLeanBoot.AxiomOutput.afterLabel\",\"LexLeanBoot.AxiomOutput.isCount\",\"LexLeanBoot.AxiomOutput.splitOnce\",\"LexLeanBoot.AxiomOutput.text\",\"LexLeanBoot.AxiomOutput.afterLocation.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.170\",\"parameters\":[{\"id\":\"_uniq.80\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.80\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.85\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.80\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.87\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.146\",\"parameters\":[{\"id\":\"_uniq.93\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.93\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.97\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.93\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.99\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.afterLabel\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.100\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.101\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.111\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.isCount\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.86\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.113\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.111\"},{\"kind\":\"fvar\",\"id\":\"_uniq.112\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.113\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.114\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.115\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.116\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.isCount\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.125\"},{\"kind\":\"fvar\",\"id\":\"_uniq.112\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.126\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.127\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.128\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.128\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.129\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.138\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.isCount\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.98\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.139\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.138\"},{\"kind\":\"fvar\",\"id\":\"_uniq.112\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.139\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.140\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.141\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.141\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.142\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.102\"}}]}}}}]}}}}]}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.147\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.146\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.153\",\"parameters\":[{\"id\":\"_uniq.151\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.152\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.152\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.154\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.153\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.162\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\":\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.163\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.162\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.164\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.splitOnce\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.69\"},{\"kind\":\"fvar\",\"id\":\"_uniq.163\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.164\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.165\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.166\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.154\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.165\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.166\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.167\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.168\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.147\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.167\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.168\"}}}]}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.171\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.170\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.193\",\"parameters\":[{\"id\":\"_uniq.174\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.176\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.afterLabel\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.69\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.177\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.176\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.186\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.isCount\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.68\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.187\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.188\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.186\"},{\"kind\":\"fvar\",\"id\":\"_uniq.187\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.188\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.189\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.190\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.190\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.191\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.177\"}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.194\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.193\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.202\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"-\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.203\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.202\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.204\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.splitOnce\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.68\"},{\"kind\":\"fvar\",\"id\":\"_uniq.203\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.204\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.205\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.206\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.194\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.205\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.206\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.207\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.208\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.171\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.207\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.208\"}}}]}}}}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Decidable\",\"Option\",\"PUnit\",\"Prod\",\"String\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"LexLeanBoot.AxiomOutput.afterLabel\",\"LexLeanBoot.AxiomOutput.isCount\",\"LexLeanBoot.AxiomOutput.splitOnce\",\"LexLeanBoot.AxiomOutput.text\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.allDigits\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Nat\",\"instOfNatNat\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"Nat.beq\",\"OfNat.ofNat\",\"Prod.fst\",\"LexLeanBoot.AxiomOutput.digitStep\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.11\",\"parameters\":[{\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.digitStep\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.10\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.15\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.17\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.19\"}}}}}}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"instOfNatNat\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"Nat.beq\",\"LexLeanBoot.AxiomOutput.digitStep\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.auditStep\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Except\",\"List\",\"Option\",\"Prod\",\"UInt8\",\"Unit\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"ByteArray.instBEq\",\"ByteArray.mk\",\"Except.ok\",\"LexLeanRuntime.equal\",\"List.nil\",\"List.toArray\",\"Option.some\",\"LexLeanBoot.AxiomOutput.Record\",\"LexLeanBoot.AxiomOutput.Rejection\",\"LexLeanBoot.AxiomOutput.cat\",\"LexLeanBoot.AxiomOutput.insertEntry\",\"LexLeanBoot.AxiomOutput.quoted\",\"LexLeanBoot.AxiomOutput.refuse\",\"LexLeanBoot.AxiomOutput.text\",\"LexLeanBoot.AxiomOutput.Record.axioms\",\"LexLeanBoot.AxiomOutput.Record.declaration\",\"LexLeanBoot.AxiomOutput.Record.expected\",\"LexLeanBoot.AxiomOutput.auditStep.match_1\",\"LexLeanBoot.AxiomOutput.insertEntry.match_1\",\"LexLeanBoot.AxiomOutput.isWord.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}}},\"parameters\":[{\"id\":\"_uniq.69\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"borrow\":false},{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.77\",\"parameters\":[{\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.69\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.77\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.190\",\"parameters\":[{\"id\":\"_uniq.85\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.95\",\"parameters\":[{\"id\":\"_uniq.94\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.94\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.95\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.104\",\"parameters\":[{\"id\":\"_uniq.100\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.toArray\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.101\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.102\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.103\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.104\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanBoot.AxiomOutput.Record\",\"index\":2,\"value\":\"_uniq.70\"},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.183\",\"parameters\":[{\"id\":\"_uniq.121\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.121\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"duplicate record for \"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.124\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.123\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanBoot.AxiomOutput.Record\",\"index\":0,\"value\":\"_uniq.70\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.quoted\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.125\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.127\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.cat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.124\"},{\"kind\":\"fvar\",\"id\":\"_uniq.126\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.128\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.122\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.129\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.refuse\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.127\"},{\"kind\":\"fvar\",\"id\":\"_uniq.128\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.130\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.129\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.131\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"expected a record for \"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.132\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.131\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.quoted\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.122\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.cat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.132\"},{\"kind\":\"fvar\",\"id\":\"_uniq.133\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.135\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\", found \"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.135\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.137\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.cat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.134\"},{\"kind\":\"fvar\",\"id\":\"_uniq.136\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.138\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.cat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.137\"},{\"kind\":\"fvar\",\"id\":\"_uniq.126\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.139\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.refuse\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.138\"},{\"kind\":\"fvar\",\"id\":\"_uniq.128\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.140\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.139\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.149\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.instBEq\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.150\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.149\"},{\"kind\":\"fvar\",\"id\":\"_uniq.125\"},{\"kind\":\"fvar\",\"id\":\"_uniq.122\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.151\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.152\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.150\"},{\"kind\":\"fvar\",\"id\":\"_uniq.151\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"discriminant\":\"_uniq.152\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.153\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.140\"}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.154\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.160\",\"parameters\":[{\"id\":\"_uniq.158\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.159\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.158\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.159\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.161\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.160\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.166\",\"parameters\":[{\"id\":\"_uniq.165\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.130\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.167\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.166\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.175\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanBoot.AxiomOutput.Record\",\"index\":1,\"value\":\"_uniq.70\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.176\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.insertEntry\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.125\"},{\"kind\":\"fvar\",\"id\":\"_uniq.175\"},{\"kind\":\"fvar\",\"id\":\"_uniq.85\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"discriminant\":\"_uniq.176\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.177\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.178\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.167\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.177\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.178\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.179\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.180\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.161\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.179\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.180\"}}}]}}}}}}}}]}}}}}}}}}}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.186\",\"parameters\":[{\"id\":\"_uniq.184\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.185\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.105\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.184\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.183\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.185\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.189\",\"parameters\":[{\"id\":\"_uniq.187\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.188\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.96\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.187\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.183\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.188\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"discriminant\":\"_uniq.116\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.186\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.117\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.119\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.189\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.119\"}]}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.191\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.190\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Except\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"discriminant\":\"_uniq.69\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Except.error\",\"parameters\":[{\"id\":\"_uniq.202\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.203\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.78\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.202\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.203\"}}},{\"kind\":\"constructor\",\"constructor\":\"Except.ok\",\"parameters\":[{\"id\":\"_uniq.204\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.205\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.191\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.204\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.205\"}}}]}}}}}},\"uses\":[\"Array\",\"BEq\",\"Bool\",\"ByteArray\",\"Decidable\",\"Except\",\"List\",\"Option\",\"PUnit\",\"Prod\",\"String\",\"UInt8\",\"instDecidableEqBool\",\"Bool.true\",\"ByteArray.instBEq\",\"ByteArray.mk\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Except.error\",\"Except.ok\",\"LexLeanRuntime.equal\",\"List.nil\",\"List.toArray\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"LexLeanBoot.AxiomOutput.Record\",\"LexLeanBoot.AxiomOutput.Rejection\",\"LexLeanBoot.AxiomOutput.cat\",\"LexLeanBoot.AxiomOutput.insertEntry\",\"LexLeanBoot.AxiomOutput.quoted\",\"LexLeanBoot.AxiomOutput.refuse\",\"LexLeanBoot.AxiomOutput.text\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.axiomList\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Except\",\"List\",\"Prod\",\"UInt8\",\"Unit\",\"Except.ok\",\"LexLeanCollections.listFold\",\"List.nil\",\"OfNat.ofNat\",\"UInt8.instOfNat\",\"LexLeanBoot.AxiomOutput.collectStep\",\"LexLeanBoot.AxiomOutput.malformed\",\"LexLeanBoot.AxiomOutput.parsed\",\"LexLeanBoot.AxiomOutput.text\",\"LexLeanBoot.Text.splitOn\",\"LexLeanBoot.AxiomOutput.axiomList.match_1\",\"LexLeanBoot.AxiomOutput.collectStep.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}}},\"parameters\":[{\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.62\",\"parameters\":[{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.malformed\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.61\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.62\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.107\",\"parameters\":[{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.80\",\"parameters\":[{\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"an axiom list cannot be empty\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.77\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.malformed\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.78\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.79\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.80\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.91\",\"parameters\":[{\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.89\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.parsed\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.90\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.91\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"discriminant\":\"_uniq.70\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.81\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.101\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.102\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.103\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.104\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.92\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.105\"}}}]}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.107\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.124\",\"parameters\":[{\"id\":\"_uniq.121\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"borrow\":false},{\"id\":\"_uniq.122\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.collectStep\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.121\"},{\"kind\":\"fvar\",\"id\":\"_uniq.122\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.123\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.125\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.127\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"44\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.128\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.127\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.129\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.128\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.130\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.splitOn\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},{\"kind\":\"fvar\",\"id\":\"_uniq.129\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.131\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.124\"},{\"kind\":\"fvar\",\"id\":\"_uniq.126\"},{\"kind\":\"fvar\",\"id\":\"_uniq.130\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Except\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"discriminant\":\"_uniq.131\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Except.error\",\"parameters\":[{\"id\":\"_uniq.132\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.63\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.132\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.133\"}}},{\"kind\":\"constructor\",\"constructor\":\"Except.ok\",\"parameters\":[{\"id\":\"_uniq.134\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.135\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.108\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.134\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.135\"}}}]}}}}}}}}}}}}}},\"uses\":[\"ByteArray\",\"Except\",\"List\",\"Nat\",\"OfNat\",\"PUnit\",\"Prod\",\"String\",\"UInt8\",\"Except.error\",\"Except.ok\",\"LexLeanCollections.listFold\",\"List.cons\",\"List.nil\",\"UInt8.instOfNat\",\"Unit.unit\",\"LexLeanBoot.AxiomOutput.collectStep\",\"LexLeanBoot.AxiomOutput.malformed\",\"LexLeanBoot.AxiomOutput.parsed\",\"LexLeanBoot.AxiomOutput.text\",\"LexLeanBoot.Text.splitOn\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.byteIn\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Nat\",\"Option\",\"UInt8\",\"Unit\",\"Bool.false\",\"LexLeanBoot.AxiomOutput.inRange\",\"LexLeanBoot.Text.byteAt\",\"LexLeanBoot.AxiomOutput.inRange.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}}}},\"parameters\":[{\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.53\",\"parameters\":[{\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.inRange\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.52\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.53\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.60\",\"parameters\":[{\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.59\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.60\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.byteAt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.69\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.61\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.71\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.54\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.72\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.73\"}}}]}}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Nat\",\"Option\",\"PUnit\",\"UInt8\",\"Bool.false\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"LexLeanBoot.AxiomOutput.inRange\",\"LexLeanBoot.Text.byteAt\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.byteIs\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Nat\",\"Option\",\"UInt8\",\"Unit\",\"instBEqOfDecidableEq\",\"instDecidableEqUInt8\",\"Bool.false\",\"LexLeanRuntime.equal\",\"LexLeanBoot.Text.byteAt\",\"LexLeanBoot.AxiomOutput.inRange.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}}},\"parameters\":[{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.50\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqUInt8\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.49\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.50\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.57\",\"parameters\":[{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.56\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.57\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.byteAt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.66\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.58\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.68\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.51\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.69\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.70\"}}}]}}}}}}},\"uses\":[\"BEq\",\"Bool\",\"ByteArray\",\"Decidable\",\"Nat\",\"Option\",\"PUnit\",\"UInt8\",\"instBEqOfDecidableEq\",\"instDecidableEqUInt8\",\"Bool.false\",\"LexLeanRuntime.equal\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"LexLeanBoot.Text.byteAt\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.cat\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableByteArray\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.14\"}}}},\"uses\":[\"ByteArray\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableByteArray\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.collectStep\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Except\",\"List\",\"Option\",\"Unit\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Except.error\",\"Except.ok\",\"LexLeanBoot.AxiomOutput.cat\",\"LexLeanBoot.AxiomOutput.insertAxiom\",\"LexLeanBoot.AxiomOutput.isClosedLeanName\",\"LexLeanBoot.AxiomOutput.notLean\",\"LexLeanBoot.AxiomOutput.quoted\",\"LexLeanBoot.AxiomOutput.text\",\"LexLeanBoot.AxiomOutput.trimmed\",\"LexLeanBoot.AxiomOutput.collectStep.match_1\",\"LexLeanBoot.AxiomOutput.insertAxiom.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}}},\"parameters\":[{\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"borrow\":false},{\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.59\",\"parameters\":[{\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.51\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.59\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.116\",\"parameters\":[{\"id\":\"_uniq.65\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.trimmed\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.67\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.isClosedLeanName\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.68\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.77\"},{\"kind\":\"fvar\",\"id\":\"_uniq.78\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.79\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.80\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.notLean\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.68\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.82\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.83\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.89\",\"parameters\":[{\"id\":\"_uniq.87\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.88\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.89\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.100\",\"parameters\":[{\"id\":\"_uniq.94\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"duplicate axiom name \"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.95\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.quoted\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.68\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.cat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.96\"},{\"kind\":\"fvar\",\"id\":\"_uniq.97\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.98\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.99\"}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.100\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.insertAxiom\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.68\"},{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.109\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.110\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.111\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.101\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.110\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.111\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.112\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.113\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.90\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.112\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.113\"}}}]}}}}}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.116\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Except\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.51\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Except.error\",\"parameters\":[{\"id\":\"_uniq.128\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.129\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.60\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.128\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.129\"}}},{\"kind\":\"constructor\",\"constructor\":\"Except.ok\",\"parameters\":[{\"id\":\"_uniq.130\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.131\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.117\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.130\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.131\"}}}]}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Decidable\",\"Except\",\"List\",\"Option\",\"PUnit\",\"String\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Except.error\",\"Except.ok\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"LexLeanBoot.AxiomOutput.cat\",\"LexLeanBoot.AxiomOutput.insertAxiom\",\"LexLeanBoot.AxiomOutput.isClosedLeanName\",\"LexLeanBoot.AxiomOutput.notLean\",\"LexLeanBoot.AxiomOutput.quoted\",\"LexLeanBoot.AxiomOutput.text\",\"LexLeanBoot.AxiomOutput.trimmed\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.continuation\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Nat\",\"Option\",\"instDecidableEqBool\",\"instOfNatNat\",\"ite\",\"Bool.true\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"Nat.beq\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"LexLeanBoot.AxiomOutput.startsWhite\",\"LexLeanBoot.AxiomOutput.trimmed\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.trimmed\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.17\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.startsWhite\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.29\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.42\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.43\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.46\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.47\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.48\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.49\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.50\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.51\"}}}]}}}}}}}}}]}}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Decidable\",\"Nat\",\"OfNat\",\"Option\",\"instDecidableEqBool\",\"instOfNatNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"Nat.beq\",\"Option.none\",\"Option.some\",\"LexLeanBoot.AxiomOutput.startsWhite\",\"LexLeanBoot.AxiomOutput.trimmed\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.decimal\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Nat\",\"instDecidableEqBool\",\"instOfNatNat\",\"ite\",\"Bool.true\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableByteArray\",\"Nat.beq\",\"OfNat.ofNat\",\"LexLeanBoot.AxiomOutput.digit\",\"LexLeanBoot.AxiomOutput.significant\",\"LexLeanBoot.AxiomOutput.text\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.19\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"10000000000000000000\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.23\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.digit\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1000000000000000000\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.27\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.digit\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"100000000000000000\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.31\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.digit\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"10000000000000000\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.35\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.digit\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1000000000000000\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.39\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.digit\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"100000000000000\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.43\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.digit\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"10000000000000\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.46\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.47\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.digit\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1000000000000\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.51\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.digit\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"100000000000\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.55\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.digit\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"10000000000\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.59\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.digit\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1000000000\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.63\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.digit\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"100000000\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.66\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.67\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.digit\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.68\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"10000000\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.71\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.digit\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.72\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1000000\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.75\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.digit\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"100000\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.78\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.79\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.digit\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"10000\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.82\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.83\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.digit\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1000\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.86\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.87\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.digit\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"100\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.90\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.91\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.digit\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"10\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.94\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.95\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.digit\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.96\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.98\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.99\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.digit\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.100\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.97\"},{\"kind\":\"fvar\",\"id\":\"_uniq.101\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.93\"},{\"kind\":\"fvar\",\"id\":\"_uniq.102\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.89\"},{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.85\"},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"},{\"kind\":\"fvar\",\"id\":\"_uniq.105\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.77\"},{\"kind\":\"fvar\",\"id\":\"_uniq.106\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},{\"kind\":\"fvar\",\"id\":\"_uniq.107\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.69\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.110\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"fvar\",\"id\":\"_uniq.109\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.111\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"},{\"kind\":\"fvar\",\"id\":\"_uniq.110\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.111\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.113\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.112\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"},{\"kind\":\"fvar\",\"id\":\"_uniq.113\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.115\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.116\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.118\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.117\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.118\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.120\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.119\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.121\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.significant\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.120\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.121\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.131\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.132\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.131\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.132\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.133\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.135\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.134\"},{\"kind\":\"fvar\",\"id\":\"_uniq.135\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"discriminant\":\"_uniq.136\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.137\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.122\"}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.138\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.20\"}}]}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Decidable\",\"Nat\",\"OfNat\",\"String\",\"instDecidableEqBool\",\"instOfNatNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableByteArray\",\"Nat.beq\",\"LexLeanBoot.AxiomOutput.digit\",\"LexLeanBoot.AxiomOutput.significant\",\"LexLeanBoot.AxiomOutput.text\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.digit\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"LexLeanRuntime.instQuotientNat\",\"LexLeanRuntime.quotient\",\"LexLeanRuntime.remainder\",\"OfNat.ofNat\",\"LexLeanBoot.AxiomOutput.text\",\"LexLeanBoot.Text.sliceOr\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"0123456789\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instQuotientNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.17\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.quotient\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"10\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.21\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.remainder\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.25\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.sliceOr\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.27\"}}}}}}}}}}}}}}}}},\"uses\":[\"ByteArray\",\"Nat\",\"OfNat\",\"String\",\"instOfNatNat\",\"LexLeanRuntime.Quotient\",\"LexLeanRuntime.instQuotientNat\",\"LexLeanRuntime.quotient\",\"LexLeanRuntime.remainder\",\"LexLeanBoot.AxiomOutput.text\",\"LexLeanBoot.Text.sliceOr\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.digitStep\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Nat\",\"Option\",\"UInt8\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"ite\",\"Bool.true\",\"HAdd.hAdd\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"UInt8.instOfNat\",\"LexLeanBoot.AxiomOutput.byteIn\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"48\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.25\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"57\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.28\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.byteIn\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.32\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.34\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.37\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.40\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.38\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.43\"}}}}}}}}}}]}}}}}}}}}}},\"uses\":[\"Add\",\"Bool\",\"ByteArray\",\"Decidable\",\"HAdd\",\"Nat\",\"OfNat\",\"Option\",\"UInt8\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"UInt8.instOfNat\",\"LexLeanBoot.AxiomOutput.byteIn\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.dropWhiteEnd\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Nat\",\"Option\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"instSubNat\",\"ite\",\"Bool.false\",\"Bool.true\",\"HAdd.hAdd\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"Nat.ble\",\"Nat.blt\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Prod.fst\",\"LexLeanBoot.AxiomOutput.whiteEnding\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.63\",\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.39\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.whiteEnding\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.62\",\"parameters\":[{\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.54\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.56\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.57\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.58\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.60\"}}}}}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.44\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.45\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.62\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.46\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.47\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.49\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.50\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.62\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]}}}}}}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"},{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.66\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.67\"}}}}}}},\"uses\":[\"Add\",\"Bool\",\"ByteArray\",\"Decidable\",\"HAdd\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"Sub\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"instSubNat\",\"Bool.false\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"Nat.ble\",\"Nat.blt\",\"Option.none\",\"Option.some\",\"LexLeanBoot.AxiomOutput.whiteEnding\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.envelope\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Option\",\"Unit\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.some\",\"LexLeanBoot.AxiomOutput.located\",\"LexLeanBoot.AxiomOutput.stripPrefix\",\"LexLeanBoot.AxiomOutput.text\",\"LexLeanBoot.Text.startsWith\",\"LexLeanBoot.AxiomOutput.isWord.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"'\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.startsWith\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.37\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.38\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.46\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.45\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.46\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.53\",\"parameters\":[{\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.located\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.52\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.53\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"info: \"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.stripPrefix\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.64\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.54\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.66\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.47\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.68\"}}}]}}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.71\"}}}]}}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Decidable\",\"Option\",\"PUnit\",\"String\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"LexLeanBoot.AxiomOutput.located\",\"LexLeanBoot.AxiomOutput.stripPrefix\",\"LexLeanBoot.AxiomOutput.text\",\"LexLeanBoot.Text.startsWith\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.extend\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Except\",\"List\",\"Option\",\"Prod\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"List.cons\",\"Prod.fst\",\"Prod.snd\",\"LexLeanBoot.AxiomOutput.Record\",\"LexLeanBoot.AxiomOutput.Scan\",\"LexLeanBoot.AxiomOutput.parsePayload\",\"LexLeanBoot.AxiomOutput.stop\",\"LexLeanBoot.AxiomOutput.tailOf\",\"LexLeanBoot.AxiomOutput.terminates\",\"LexLeanBoot.AxiomOutput.Record.mk\",\"LexLeanBoot.AxiomOutput.Scan.between\",\"LexLeanBoot.AxiomOutput.Scan.inside\",\"LexLeanBoot.AxiomOutput.extend.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}}}}},\"parameters\":[{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.terminates\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.48\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"discriminant\":\"_uniq.50\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.51\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan.inside\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.56\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.57\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.64\",\"parameters\":[{\"id\":\"_uniq.62\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.stop\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.63\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.64\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.75\",\"parameters\":[{\"id\":\"_uniq.68\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.68\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.68\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.69\"},{\"kind\":\"fvar\",\"id\":\"_uniq.70\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.71\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.tailOf\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan.between\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.72\"},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.74\"}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.75\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.parsePayload\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Except\",\"result_type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"discriminant\":\"_uniq.87\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Except.error\",\"parameters\":[{\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.89\"}}},{\"kind\":\"constructor\",\"constructor\":\"Except.ok\",\"parameters\":[{\"id\":\"_uniq.90\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.76\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.90\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.91\"}}}]}}}}}}}]}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Decidable\",\"Except\",\"List\",\"Option\",\"Prod\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Except.error\",\"Except.ok\",\"List.cons\",\"LexLeanBoot.AxiomOutput.Record\",\"LexLeanBoot.AxiomOutput.Scan\",\"LexLeanBoot.AxiomOutput.parsePayload\",\"LexLeanBoot.AxiomOutput.stop\",\"LexLeanBoot.AxiomOutput.tailOf\",\"LexLeanBoot.AxiomOutput.terminates\",\"LexLeanBoot.AxiomOutput.Record.mk\",\"LexLeanBoot.AxiomOutput.Scan.between\",\"LexLeanBoot.AxiomOutput.Scan.inside\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.finish\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Except\",\"List\",\"Option\",\"Prod\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Except.error\",\"Except.ok\",\"LexLeanCollections.listFold\",\"List.nil\",\"Nat.beq\",\"Option.none\",\"LexLeanBoot.AxiomOutput.Record\",\"LexLeanBoot.AxiomOutput.Rejection\",\"LexLeanBoot.AxiomOutput.Scan\",\"LexLeanBoot.AxiomOutput.auditStep\",\"LexLeanBoot.AxiomOutput.cat\",\"LexLeanBoot.AxiomOutput.decimal\",\"LexLeanBoot.AxiomOutput.listLength\",\"LexLeanBoot.AxiomOutput.refuse\",\"LexLeanBoot.AxiomOutput.reversed\",\"LexLeanBoot.AxiomOutput.text\",\"LexLeanBoot.AxiomOutput.scanStep.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}}},\"parameters\":[{\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.66\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.81\",\"parameters\":[{\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.80\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.81\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.100\",\"parameters\":[{\"id\":\"_uniq.92\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.93\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.94\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.95\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}}}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"unterminated axiom payload: \"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.96\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.cat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.97\"},{\"kind\":\"fvar\",\"id\":\"_uniq.94\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.refuse\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.98\"},{\"kind\":\"fvar\",\"id\":\"_uniq.95\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.99\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}}}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.100\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.155\",\"parameters\":[{\"id\":\"_uniq.108\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.109\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.111\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"expected \"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.111\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.113\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.listLength\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.66\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.decimal\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.113\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.cat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.112\"},{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\" audit records, found \"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.116\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.118\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.cat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.115\"},{\"kind\":\"fvar\",\"id\":\"_uniq.117\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.listLength\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.120\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.decimal\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.119\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.121\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.cat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.118\"},{\"kind\":\"fvar\",\"id\":\"_uniq.120\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.refuse\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.121\"},{\"kind\":\"fvar\",\"id\":\"_uniq.122\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.124\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.123\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.119\"},{\"kind\":\"fvar\",\"id\":\"_uniq.113\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.135\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.133\"},{\"kind\":\"fvar\",\"id\":\"_uniq.134\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"discriminant\":\"_uniq.135\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.136\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.124\"}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.137\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.143\",\"parameters\":[{\"id\":\"_uniq.140\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"borrow\":false},{\"id\":\"_uniq.141\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.142\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.auditStep\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.140\"},{\"kind\":\"fvar\",\"id\":\"_uniq.141\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.142\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.144\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.151\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.144\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.152\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.reversed\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.153\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.143\"},{\"kind\":\"fvar\",\"id\":\"_uniq.151\"},{\"kind\":\"fvar\",\"id\":\"_uniq.152\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.153\"}}}}}}}]}}}}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.156\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.155\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"LexLeanBoot.AxiomOutput.Scan\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"discriminant\":\"_uniq.65\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"LexLeanBoot.AxiomOutput.Scan.between\",\"parameters\":[{\"id\":\"_uniq.169\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.170\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.171\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.156\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.169\"},{\"kind\":\"fvar\",\"id\":\"_uniq.170\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.171\"}}},{\"kind\":\"constructor\",\"constructor\":\"LexLeanBoot.AxiomOutput.Scan.inside\",\"parameters\":[{\"id\":\"_uniq.172\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.173\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.174\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.175\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.176\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.101\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.172\"},{\"kind\":\"fvar\",\"id\":\"_uniq.173\"},{\"kind\":\"fvar\",\"id\":\"_uniq.174\"},{\"kind\":\"fvar\",\"id\":\"_uniq.175\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.176\"}}},{\"kind\":\"constructor\",\"constructor\":\"LexLeanBoot.AxiomOutput.Scan.stopped\",\"parameters\":[{\"id\":\"_uniq.177\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.178\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.82\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.177\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.178\"}}}]}}}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Decidable\",\"Except\",\"List\",\"Nat\",\"Option\",\"Prod\",\"String\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Except.error\",\"Except.ok\",\"LexLeanCollections.listFold\",\"List.nil\",\"Nat.beq\",\"Option.none\",\"LexLeanBoot.AxiomOutput.Record\",\"LexLeanBoot.AxiomOutput.Rejection\",\"LexLeanBoot.AxiomOutput.Scan\",\"LexLeanBoot.AxiomOutput.auditStep\",\"LexLeanBoot.AxiomOutput.cat\",\"LexLeanBoot.AxiomOutput.decimal\",\"LexLeanBoot.AxiomOutput.listLength\",\"LexLeanBoot.AxiomOutput.refuse\",\"LexLeanBoot.AxiomOutput.reversed\",\"LexLeanBoot.AxiomOutput.text\",\"LexLeanBoot.AxiomOutput.Scan.between\",\"LexLeanBoot.AxiomOutput.Scan.inside\",\"LexLeanBoot.AxiomOutput.Scan.stopped\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.fitsWord\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Nat\",\"Ordering\",\"UInt8\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instDecidableEqOrdering\",\"instOfNatNat\",\"ite\",\"Bool.false\",\"Bool.not\",\"Bool.true\",\"ByteArray.mk\",\"LexLeanRuntime.compareBytes\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"List.cons\",\"List.nil\",\"List.toArray\",\"Nat.beq\",\"Nat.blt\",\"OfNat.ofNat\",\"UInt8.instOfNat\",\"LexLeanBoot.AxiomOutput.text\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"20\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.24\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.28\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.38\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.39\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.40\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.41\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.42\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqOrdering\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"18446744073709551615\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.compareBytes\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.51\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.52\"},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.toArray\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.58\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.toArray\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.compareBytes\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.not\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.64\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.65\"}}}}}}}}}}}}}}}}}}}}}}}]}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.67\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.68\"}}}]}}}}}}}}}},\"uses\":[\"Array\",\"BEq\",\"Bool\",\"ByteArray\",\"Decidable\",\"List\",\"Nat\",\"OfNat\",\"Ordering\",\"String\",\"UInt8\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instDecidableEqOrdering\",\"instOfNatNat\",\"Bool.false\",\"Bool.not\",\"Bool.true\",\"ByteArray.mk\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.compareBytes\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"List.cons\",\"List.nil\",\"List.toArray\",\"Nat.beq\",\"Nat.blt\",\"UInt8.instOfNat\",\"LexLeanBoot.AxiomOutput.text\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.headOf\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"List\",\"Option\",\"Unit\",\"Option.none\",\"Option.some\",\"LexLeanBoot.AxiomOutput.axiomList.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.37\",\"parameters\":[{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.36\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.37\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.48\",\"parameters\":[{\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.47\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.48\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.29\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.38\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.59\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.49\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.62\"}}}]}}}}}},\"uses\":[\"ByteArray\",\"List\",\"Option\",\"PUnit\",\"List.cons\",\"List.nil\",\"Option.none\",\"Option.some\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.inRange\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Option\",\"UInt8\",\"Unit\",\"Bool.false\",\"Bool.true\",\"LexLeanRuntime.checkedSubtract\",\"LexLeanRuntime.instFixedUInt8\",\"LexLeanBoot.AxiomOutput.inRange.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}}},\"parameters\":[{\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.88\",\"parameters\":[{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.65\",\"parameters\":[{\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.64\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.72\",\"parameters\":[{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.71\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.72\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instFixedUInt8\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedSubtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.82\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.73\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.84\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.85\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.66\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.85\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.86\"}}}]}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.88\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.93\",\"parameters\":[{\"id\":\"_uniq.91\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.92\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.93\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instFixedUInt8\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedSubtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.102\"},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.103\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.94\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.104\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.105\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.106\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.89\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.106\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.107\"}}}]}}}}}}}},\"uses\":[\"Bool\",\"Option\",\"PUnit\",\"UInt8\",\"Bool.false\",\"Bool.true\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.checkedSubtract\",\"LexLeanRuntime.instFixedUInt8\",\"Option.none\",\"Option.some\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.insertAxiom\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"List\",\"Option\",\"List.brecOn\",\"LexLeanBoot.AxiomOutput.insertAxiom._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}}},\"parameters\":[{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.72\",\"parameters\":[{\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.68\"},{\"kind\":\"fvar\",\"id\":\"_uniq.69\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.71\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.72\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.148\",\"parameters\":[{\"id\":\"_uniq.83\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.85\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.instBEq\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.94\"},{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.95\"},{\"kind\":\"fvar\",\"id\":\"_uniq.96\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.97\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.98\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.lessBytes\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.107\"},{\"kind\":\"fvar\",\"id\":\"_uniq.96\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.108\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.109\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.118\",\"parameters\":[{\"id\":\"_uniq.115\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.115\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.116\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.117\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.118\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.125\",\"parameters\":[{\"id\":\"_uniq.123\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.124\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.124\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.125\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.insertAxiom\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.85\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.134\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.135\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.126\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.135\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.136\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.137\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.138\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.119\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.137\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.138\"}}}]}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.140\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.141\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.85\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.142\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.141\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.143\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.142\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.143\"}}}}}]}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.145\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.146\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.146\"}}}]}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.149\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.148\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.62\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.158\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.73\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.158\"}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.159\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.160\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.161\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.149\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.61\"},{\"kind\":\"fvar\",\"id\":\"_uniq.159\"},{\"kind\":\"fvar\",\"id\":\"_uniq.160\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.161\"}}}]}}}}}},\"uses\":[\"BEq\",\"Bool\",\"ByteArray\",\"Decidable\",\"List\",\"Option\",\"PUnit\",\"instDecidableEqBool\",\"Bool.true\",\"ByteArray.instBEq\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.equal\",\"List.cons\",\"List.nil\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"LexLeanBoot.AxiomOutput.insertAxiom\",\"LexLeanBoot.AxiomOutput.lessBytes\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.insertEntry\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"List\",\"Option\",\"Prod\",\"List.brecOn\",\"LexLeanBoot.AxiomOutput.insertEntry._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}}}},\"parameters\":[{\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.78\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.93\",\"parameters\":[{\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.88\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"},{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.89\"},{\"kind\":\"fvar\",\"id\":\"_uniq.90\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.91\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.92\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.93\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.175\",\"parameters\":[{\"id\":\"_uniq.107\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.108\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.109\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"borrow\":false},{\"id\":\"_uniq.110\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}}}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.instBEq\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.120\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.109\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.121\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.119\"},{\"kind\":\"fvar\",\"id\":\"_uniq.107\"},{\"kind\":\"fvar\",\"id\":\"_uniq.120\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.121\"},{\"kind\":\"fvar\",\"id\":\"_uniq.122\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"discriminant\":\"_uniq.123\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.124\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.lessBytes\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.107\"},{\"kind\":\"fvar\",\"id\":\"_uniq.120\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.133\"},{\"kind\":\"fvar\",\"id\":\"_uniq.122\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"discriminant\":\"_uniq.134\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.135\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.144\",\"parameters\":[{\"id\":\"_uniq.141\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.142\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.109\"},{\"kind\":\"fvar\",\"id\":\"_uniq.141\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.143\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.142\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.143\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.145\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.144\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.151\",\"parameters\":[{\"id\":\"_uniq.149\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.150\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.150\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.152\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.151\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.160\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.insertEntry\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.107\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"},{\"kind\":\"fvar\",\"id\":\"_uniq.110\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"discriminant\":\"_uniq.160\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.161\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.162\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.152\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.161\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.162\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.163\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.164\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.145\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.163\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.164\"}}}]}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.166\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.167\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.107\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.168\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.109\"},{\"kind\":\"fvar\",\"id\":\"_uniq.110\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.169\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.167\"},{\"kind\":\"fvar\",\"id\":\"_uniq.168\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.170\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.169\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.170\"}}}}}}]}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.172\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.173\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.173\"}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.176\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}}}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.175\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"discriminant\":\"_uniq.78\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.185\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.94\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.76\"},{\"kind\":\"fvar\",\"id\":\"_uniq.77\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.185\"}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.186\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"borrow\":false},{\"id\":\"_uniq.187\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.188\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.176\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.76\"},{\"kind\":\"fvar\",\"id\":\"_uniq.77\"},{\"kind\":\"fvar\",\"id\":\"_uniq.186\"},{\"kind\":\"fvar\",\"id\":\"_uniq.187\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.188\"}}}]}}}}}},\"uses\":[\"BEq\",\"Bool\",\"ByteArray\",\"Decidable\",\"List\",\"Option\",\"PUnit\",\"Prod\",\"instDecidableEqBool\",\"Bool.true\",\"ByteArray.instBEq\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.equal\",\"List.cons\",\"List.nil\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"Unit.unit\",\"LexLeanBoot.AxiomOutput.insertEntry\",\"LexLeanBoot.AxiomOutput.lessBytes\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.isClosedLeanName\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Nat\",\"Prod\",\"instOfNatNat\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"Nat.beq\",\"OfNat.ofNat\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"LexLeanBoot.AxiomOutput.nameStep\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.11\",\"parameters\":[{\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.nameStep\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.10\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.15\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.18\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.19\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.24\"}}}}}}}}}}}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"instOfNatNat\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"Nat.beq\",\"Prod.mk\",\"LexLeanBoot.AxiomOutput.nameStep\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.isCount\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"LexLeanBoot.AxiomOutput.isWord\",\"LexLeanBoot.AxiomOutput.trimmed\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.trimmed\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.isWord\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.8\"}}}},\"uses\":[\"Bool\",\"ByteArray\",\"LexLeanBoot.AxiomOutput.isWord\",\"LexLeanBoot.AxiomOutput.trimmed\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.isFirst\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"UInt8\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instDecidableEqUInt8\",\"ite\",\"Bool.true\",\"LexLeanRuntime.equal\",\"OfNat.ofNat\",\"UInt8.instOfNat\",\"LexLeanBoot.AxiomOutput.inRange\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"65\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"90\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.25\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.inRange\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.29\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"97\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.40\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"122\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.43\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.inRange\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.46\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.47\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqUInt8\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"95\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.53\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.55\"}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}}]}}}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.60\"}}}]}}}}}}}}}}},\"uses\":[\"BEq\",\"Bool\",\"Decidable\",\"Nat\",\"OfNat\",\"UInt8\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instDecidableEqUInt8\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.equal\",\"UInt8.instOfNat\",\"LexLeanBoot.AxiomOutput.inRange\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.isLater\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"UInt8\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instDecidableEqUInt8\",\"ite\",\"Bool.true\",\"LexLeanRuntime.equal\",\"OfNat.ofNat\",\"UInt8.instOfNat\",\"LexLeanBoot.AxiomOutput.inRange\",\"LexLeanBoot.AxiomOutput.isFirst\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.isFirst\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.26\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"48\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.37\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"57\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.40\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.inRange\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.43\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqUInt8\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"63\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.58\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.61\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.62\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"39\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.64\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.66\"}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.67\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.68\"}}}]}}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.71\"}}}]}}}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.73\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.74\"}}}]}}}}},\"uses\":[\"BEq\",\"Bool\",\"Decidable\",\"Nat\",\"OfNat\",\"UInt8\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instDecidableEqUInt8\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.equal\",\"UInt8.instOfNat\",\"LexLeanBoot.AxiomOutput.inRange\",\"LexLeanBoot.AxiomOutput.isFirst\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.isWord\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Nat\",\"Option\",\"Unit\",\"instDecidableEqBool\",\"instOfNatNat\",\"ite\",\"Bool.false\",\"Bool.true\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"Nat.blt\",\"OfNat.ofNat\",\"LexLeanBoot.AxiomOutput.allDigits\",\"LexLeanBoot.AxiomOutput.fitsWord\",\"LexLeanBoot.AxiomOutput.significant\",\"LexLeanBoot.AxiomOutput.stripPrefix\",\"LexLeanBoot.AxiomOutput.text\",\"LexLeanBoot.AxiomOutput.isWord.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.42\",\"parameters\":[{\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.41\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.42\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.48\",\"parameters\":[{\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.33\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.48\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"+\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.stripPrefix\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.103\",\"parameters\":[{\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.64\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.significant\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.fitsWord\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.66\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.67\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.77\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.78\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.79\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.82\"},{\"kind\":\"fvar\",\"id\":\"_uniq.83\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.84\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.85\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.86\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.87\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.allDigits\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.96\"},{\"kind\":\"fvar\",\"id\":\"_uniq.83\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.97\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.98\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.99\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.100\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.68\"}}]}}}}]}}}}}}}}}}}}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.109\",\"parameters\":[{\"id\":\"_uniq.107\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.43\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.107\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.103\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.106\",\"parameters\":[{\"id\":\"_uniq.104\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.49\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.104\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.103\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.105\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.59\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.106\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.62\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.109\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}}]}}}}}}}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Decidable\",\"Nat\",\"OfNat\",\"Option\",\"PUnit\",\"String\",\"instDecidableEqBool\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"Nat.blt\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"LexLeanBoot.AxiomOutput.allDigits\",\"LexLeanBoot.AxiomOutput.fitsWord\",\"LexLeanBoot.AxiomOutput.significant\",\"LexLeanBoot.AxiomOutput.stripPrefix\",\"LexLeanBoot.AxiomOutput.text\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.lastStep\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Nat\",\"Option\",\"instDecidableEqBool\",\"instOfNatNat\",\"instSubNat\",\"ite\",\"Bool.true\",\"LexLeanRuntime.subtract\",\"Nat.blt\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"LexLeanBoot.Text.matchAt\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}}},\"parameters\":[{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.matchAt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.35\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.46\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.47\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.48\"},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.49\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.50\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.51\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.52\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.55\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.58\"}}}}}}}}]}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.61\"}}}]}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Decidable\",\"Nat\",\"OfNat\",\"Option\",\"Sub\",\"instDecidableEqBool\",\"instOfNatNat\",\"instSubNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.subtract\",\"Nat.blt\",\"Option.none\",\"Option.some\",\"LexLeanBoot.Text.matchAt\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.lessBytes\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Ordering\",\"UInt8\",\"instBEqOfDecidableEq\",\"instDecidableEqOrdering\",\"ByteArray.mk\",\"LexLeanRuntime.compareBytes\",\"LexLeanRuntime.equal\",\"List.cons\",\"List.nil\",\"List.toArray\",\"OfNat.ofNat\",\"UInt8.instOfNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqOrdering\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.compareBytes\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.toArray\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.toArray\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.compareBytes\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.28\"}}}}}}}}}}}}}}}},\"uses\":[\"Array\",\"BEq\",\"Bool\",\"ByteArray\",\"Decidable\",\"List\",\"Nat\",\"OfNat\",\"Ordering\",\"UInt8\",\"instBEqOfDecidableEq\",\"instDecidableEqOrdering\",\"ByteArray.mk\",\"LexLeanRuntime.compareBytes\",\"LexLeanRuntime.equal\",\"List.cons\",\"List.nil\",\"List.toArray\",\"UInt8.instOfNat\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.listLength\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"HAdd.hAdd\",\"LexLeanCollections.listFold\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.13\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.26\",\"parameters\":[{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.18\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.20\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.23\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.21\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.25\"}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.28\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.30\"}}}}}}},\"uses\":[\"Add\",\"HAdd\",\"List\",\"Nat\",\"OfNat\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"LexLeanCollections.listFold\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.listed\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Except\",\"List\",\"Option\",\"Prod\",\"Unit\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Prod.fst\",\"Prod.snd\",\"LexLeanBoot.AxiomOutput.axiomList\",\"LexLeanBoot.AxiomOutput.isClosedLeanName\",\"LexLeanBoot.AxiomOutput.malformed\",\"LexLeanBoot.AxiomOutput.notLean\",\"LexLeanBoot.AxiomOutput.splitLast\",\"LexLeanBoot.AxiomOutput.text\",\"LexLeanBoot.AxiomOutput.unrecognized\",\"LexLeanBoot.AxiomOutput.afterLocation.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}}},\"parameters\":[{\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.80\",\"parameters\":[{\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.52\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.57\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.52\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.59\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.axiomList\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.58\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.61\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.notLean\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.malformed\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.64\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.isClosedLeanName\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"},{\"kind\":\"fvar\",\"id\":\"_uniq.75\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"discriminant\":\"_uniq.76\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.77\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.65\"}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.78\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.62\"}}]}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.80\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.87\",\"parameters\":[{\"id\":\"_uniq.85\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.unrecognized\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.86\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.87\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"' depends on axioms: [\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.96\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.splitLast\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"},{\"kind\":\"fvar\",\"id\":\"_uniq.97\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"discriminant\":\"_uniq.98\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.88\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.99\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.100\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.101\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.81\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.101\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.102\"}}}]}}}}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Decidable\",\"Except\",\"List\",\"Option\",\"PUnit\",\"Prod\",\"String\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"LexLeanBoot.AxiomOutput.axiomList\",\"LexLeanBoot.AxiomOutput.isClosedLeanName\",\"LexLeanBoot.AxiomOutput.malformed\",\"LexLeanBoot.AxiomOutput.notLean\",\"LexLeanBoot.AxiomOutput.splitLast\",\"LexLeanBoot.AxiomOutput.text\",\"LexLeanBoot.AxiomOutput.unrecognized\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.located\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Option\",\"Prod\",\"Unit\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.none\",\"Prod.fst\",\"Prod.snd\",\"LexLeanBoot.AxiomOutput.afterLocation\",\"LexLeanBoot.AxiomOutput.isCount\",\"LexLeanBoot.AxiomOutput.splitOnce\",\"LexLeanBoot.AxiomOutput.text\",\"LexLeanBoot.AxiomOutput.afterLocation.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.158\",\"parameters\":[{\"id\":\"_uniq.68\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.135\",\"parameters\":[{\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.110\",\"parameters\":[{\"id\":\"_uniq.82\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.74\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.87\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.82\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.89\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.82\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.91\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.afterLocation\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.90\"},{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.93\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.isCount\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.105\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.106\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.107\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.108\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.94\"}}]}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.111\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.110\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.117\",\"parameters\":[{\"id\":\"_uniq.115\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.116\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.118\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.117\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.74\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.127\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\":\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.128\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.127\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.129\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.splitOnce\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.126\"},{\"kind\":\"fvar\",\"id\":\"_uniq.128\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.129\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.130\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.131\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.118\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.130\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.131\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.132\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.111\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.132\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.133\"}}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.135\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.140\",\"parameters\":[{\"id\":\"_uniq.138\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.139\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.139\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.141\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.140\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.149\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.68\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.150\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\":\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.151\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.150\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.152\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.splitOnce\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.149\"},{\"kind\":\"fvar\",\"id\":\"_uniq.151\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.152\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.153\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.154\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.141\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.153\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.154\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.155\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.156\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.136\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.155\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.156\"}}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.159\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.158\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.163\",\"parameters\":[{\"id\":\"_uniq.161\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.162\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.162\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.164\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.163\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.172\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\":\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.173\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.172\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.174\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.splitOnce\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.173\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.174\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.175\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.176\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.164\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.175\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.176\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.177\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.178\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.159\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.177\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.178\"}}}]}}}}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Decidable\",\"Option\",\"PUnit\",\"Prod\",\"String\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"LexLeanBoot.AxiomOutput.afterLocation\",\"LexLeanBoot.AxiomOutput.isCount\",\"LexLeanBoot.AxiomOutput.splitOnce\",\"LexLeanBoot.AxiomOutput.text\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.malformed\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"List\",\"Prod\",\"Except.error\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}},\"uses\":[\"ByteArray\",\"Except\",\"List\",\"Prod\",\"Except.error\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.nameMode\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Nat\",\"UInt8\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instDecidableEqUInt8\",\"instOfNatNat\",\"ite\",\"Bool.true\",\"LexLeanRuntime.equal\",\"Nat.beq\",\"OfNat.ofNat\",\"UInt8.instOfNat\",\"LexLeanBoot.AxiomOutput.isFirst\",\"LexLeanBoot.AxiomOutput.isLater\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.38\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.42\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.43\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqUInt8\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"46\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.57\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.60\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.isFirst\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.70\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.71\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.72\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.82\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.83\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.85\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.86\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.38\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.87\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.88\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.isLater\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.97\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.98\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.99\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.38\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.100\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.101\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.82\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.102\"}}}]}}}}]}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.105\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.106\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.107\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.108\"}}}}}]}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.110\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.120\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.119\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.121\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.120\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.121\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.122\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.123\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.124\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.38\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.125\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.126\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.127\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.128\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.127\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.129\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.128\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.129\"}}}}}]}}}}}}}]}}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.132\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.38\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.133\"}}}]}}}}}}}},\"uses\":[\"BEq\",\"Bool\",\"Decidable\",\"Nat\",\"OfNat\",\"UInt8\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instDecidableEqUInt8\",\"instOfNatNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.equal\",\"Nat.beq\",\"UInt8.instOfNat\",\"LexLeanBoot.AxiomOutput.isFirst\",\"LexLeanBoot.AxiomOutput.isLater\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.nameStep\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Nat\",\"Option\",\"Prod\",\"UInt8\",\"Unit\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"ite\",\"Bool.true\",\"HAdd.hAdd\",\"Nat.beq\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"LexLeanBoot.AxiomOutput.nameMode\",\"LexLeanBoot.Text.byteAt\",\"LexLeanBoot.AxiomOutput.inRange.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}}},\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.41\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.43\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.45\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.46\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.80\",\"parameters\":[{\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.54\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.74\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.71\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.72\"},{\"kind\":\"fvar\",\"id\":\"_uniq.75\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.nameMode\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"},{\"kind\":\"fvar\",\"id\":\"_uniq.77\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.78\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.79\"}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.80\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.87\",\"parameters\":[{\"id\":\"_uniq.85\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.86\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.87\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.byteAt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.96\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.97\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.88\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.98\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.99\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.100\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.81\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.100\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.101\"}}}]}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.103\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.104\"}}}]}}}}}}}}},\"uses\":[\"Add\",\"Bool\",\"ByteArray\",\"Decidable\",\"HAdd\",\"Nat\",\"OfNat\",\"Option\",\"PUnit\",\"Prod\",\"UInt8\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Nat.beq\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"Unit.unit\",\"LexLeanBoot.AxiomOutput.nameMode\",\"LexLeanBoot.Text.byteAt\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.notLean\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"LexLeanBoot.AxiomOutput.cat\",\"LexLeanBoot.AxiomOutput.quoted\",\"LexLeanBoot.AxiomOutput.text\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.quoted\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\" is not a Lean name\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.cat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.10\"}}}}}},\"uses\":[\"ByteArray\",\"String\",\"LexLeanBoot.AxiomOutput.cat\",\"LexLeanBoot.AxiomOutput.quoted\",\"LexLeanBoot.AxiomOutput.text\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.parseAuditOutput\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"List\",\"LexLeanCollections.listFold\",\"List.nil\",\"LexLeanBoot.AxiomOutput.Record\",\"LexLeanBoot.AxiomOutput.Scan\",\"LexLeanBoot.AxiomOutput.finish\",\"LexLeanBoot.AxiomOutput.scanStep\",\"LexLeanBoot.Text.lines\",\"LexLeanBoot.AxiomOutput.Scan.between\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}}},\"parameters\":[{\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.20\",\"parameters\":[{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.scanStep\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.19\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan.between\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.lines\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.finish\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.27\"}}}}}}}},\"uses\":[\"ByteArray\",\"Except\",\"List\",\"Prod\",\"LexLeanCollections.listFold\",\"List.nil\",\"LexLeanBoot.AxiomOutput.Record\",\"LexLeanBoot.AxiomOutput.Rejection\",\"LexLeanBoot.AxiomOutput.Scan\",\"LexLeanBoot.AxiomOutput.finish\",\"LexLeanBoot.AxiomOutput.scanStep\",\"LexLeanBoot.Text.lines\",\"LexLeanBoot.AxiomOutput.Scan.between\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.parsePayload\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Except\",\"List\",\"Option\",\"Prod\",\"Unit\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"List.nil\",\"LexLeanBoot.AxiomOutput.isClosedLeanName\",\"LexLeanBoot.AxiomOutput.listed\",\"LexLeanBoot.AxiomOutput.malformed\",\"LexLeanBoot.AxiomOutput.notLean\",\"LexLeanBoot.AxiomOutput.parsed\",\"LexLeanBoot.AxiomOutput.stripPrefix\",\"LexLeanBoot.AxiomOutput.stripSuffix\",\"LexLeanBoot.AxiomOutput.text\",\"LexLeanBoot.AxiomOutput.unrecognized\",\"LexLeanBoot.AxiomOutput.isWord.match_1\",\"LexLeanBoot.AxiomOutput.parsePayload.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"parameters\":[{\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.65\",\"parameters\":[{\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.unrecognized\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.64\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.150\",\"parameters\":[{\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.102\",\"parameters\":[{\"id\":\"_uniq.79\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.parsed\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.79\"},{\"kind\":\"fvar\",\"id\":\"_uniq.82\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.83\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.notLean\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.79\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.malformed\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.85\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.86\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.isClosedLeanName\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.79\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.96\"},{\"kind\":\"fvar\",\"id\":\"_uniq.97\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"discriminant\":\"_uniq.98\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.99\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.87\"}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.100\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.84\"}}]}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.102\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.133\",\"parameters\":[{\"id\":\"_uniq.108\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.114\",\"parameters\":[{\"id\":\"_uniq.112\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.113\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.listed\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.112\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.113\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.114\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"]\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.125\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.127\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.stripSuffix\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},{\"kind\":\"fvar\",\"id\":\"_uniq.126\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"discriminant\":\"_uniq.127\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.128\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.129\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.117\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.128\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.129\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.130\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.131\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.115\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.130\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.131\"}}}]}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.133\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.142\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"' does not depend on any axioms\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.143\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.142\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.144\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.stripSuffix\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},{\"kind\":\"fvar\",\"id\":\"_uniq.143\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"discriminant\":\"_uniq.144\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.145\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.146\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.134\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.145\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.146\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.147\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.148\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.103\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.147\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.148\"}}}]}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.151\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.150\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.159\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"'\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.160\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.159\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.161\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.stripPrefix\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.160\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"discriminant\":\"_uniq.161\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.162\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.163\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.66\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.162\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.163\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.164\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.165\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.151\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.164\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.165\"}}}]}}}}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Decidable\",\"Except\",\"List\",\"Option\",\"PUnit\",\"Prod\",\"String\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"List.nil\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"LexLeanBoot.AxiomOutput.isClosedLeanName\",\"LexLeanBoot.AxiomOutput.listed\",\"LexLeanBoot.AxiomOutput.malformed\",\"LexLeanBoot.AxiomOutput.notLean\",\"LexLeanBoot.AxiomOutput.parsed\",\"LexLeanBoot.AxiomOutput.stripPrefix\",\"LexLeanBoot.AxiomOutput.stripSuffix\",\"LexLeanBoot.AxiomOutput.text\",\"LexLeanBoot.AxiomOutput.unrecognized\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.parsed\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"List\",\"Prod\",\"Except.ok\",\"Prod.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.14\"}}}},\"uses\":[\"ByteArray\",\"Except\",\"List\",\"Prod\",\"Except.ok\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.quoted\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"LexLeanBoot.AxiomOutput.cat\",\"LexLeanBoot.AxiomOutput.text\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"`\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.cat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.cat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.10\"}}}}}},\"uses\":[\"ByteArray\",\"String\",\"LexLeanBoot.AxiomOutput.cat\",\"LexLeanBoot.AxiomOutput.text\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.refuse\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"List\",\"Option\",\"Prod\",\"Except.error\",\"LexLeanBoot.AxiomOutput.Rejection\",\"LexLeanBoot.AxiomOutput.rejected\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.rejected\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.14\"}}}},\"uses\":[\"ByteArray\",\"Except\",\"List\",\"Option\",\"Prod\",\"Except.error\",\"LexLeanBoot.AxiomOutput.Rejection\",\"LexLeanBoot.AxiomOutput.rejected\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.rejected\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Option\",\"LexLeanBoot.AxiomOutput.Rejection.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.10\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.13\"}}},\"uses\":[\"ByteArray\",\"Option\",\"LexLeanBoot.AxiomOutput.Rejection\",\"LexLeanBoot.AxiomOutput.Rejection.mk\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.reversed\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"LexLeanCollections.listFold\",\"List.cons\",\"List.nil\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}}},\"parameters\":[{\"id\":\"_uniq.13\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.20\",\"parameters\":[{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"borrow\":false},{\"id\":\"_uniq.18\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.19\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.22\"}}}}},\"uses\":[\"List\",\"LexLeanCollections.listFold\",\"List.cons\",\"List.nil\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.scanStep\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"List\",\"Nat\",\"Option\",\"Unit\",\"instDecidableEqBool\",\"instOfNatNat\",\"ite\",\"Bool.true\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"Nat.beq\",\"OfNat.ofNat\",\"LexLeanBoot.AxiomOutput.Record\",\"LexLeanBoot.AxiomOutput.Rejection\",\"LexLeanBoot.AxiomOutput.Scan\",\"LexLeanBoot.AxiomOutput.cat\",\"LexLeanBoot.AxiomOutput.continuation\",\"LexLeanBoot.AxiomOutput.envelope\",\"LexLeanBoot.AxiomOutput.extend\",\"LexLeanBoot.AxiomOutput.headOf\",\"LexLeanBoot.AxiomOutput.stop\",\"LexLeanBoot.AxiomOutput.text\",\"LexLeanBoot.AxiomOutput.trimmed\",\"LexLeanBoot.AxiomOutput.isWord.match_1\",\"LexLeanBoot.AxiomOutput.scanStep.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.89\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.90\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.97\",\"parameters\":[{\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.89\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.97\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.151\",\"parameters\":[{\"id\":\"_uniq.113\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.114\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.115\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.116\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}}}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.127\",\"parameters\":[{\"id\":\"_uniq.121\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\" \"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.122\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.124\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.cat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.115\"},{\"kind\":\"fvar\",\"id\":\"_uniq.123\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.cat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.124\"},{\"kind\":\"fvar\",\"id\":\"_uniq.121\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.extend\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.113\"},{\"kind\":\"fvar\",\"id\":\"_uniq.114\"},{\"kind\":\"fvar\",\"id\":\"_uniq.125\"},{\"kind\":\"fvar\",\"id\":\"_uniq.116\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.126\"}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.128\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.127\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.136\",\"parameters\":[{\"id\":\"_uniq.131\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.132\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"unterminated axiom payload: \"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.132\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.cat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.133\"},{\"kind\":\"fvar\",\"id\":\"_uniq.115\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.135\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.stop\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.134\"},{\"kind\":\"fvar\",\"id\":\"_uniq.116\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.135\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.137\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.136\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.145\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.continuation\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.90\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"discriminant\":\"_uniq.145\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.146\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.147\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.137\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.146\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.147\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.148\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.149\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.128\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.148\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.149\"}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.152\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}}}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.151\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.209\",\"parameters\":[{\"id\":\"_uniq.157\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.158\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.167\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.168\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.167\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.169\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.168\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.170\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.171\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.trimmed\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.90\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.172\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.170\"},{\"kind\":\"fvar\",\"id\":\"_uniq.171\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.173\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.169\"},{\"kind\":\"fvar\",\"id\":\"_uniq.172\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.174\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.175\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.173\"},{\"kind\":\"fvar\",\"id\":\"_uniq.174\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"discriminant\":\"_uniq.175\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.176\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.183\",\"parameters\":[{\"id\":\"_uniq.180\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.181\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.headOf\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.158\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.182\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.extend\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.157\"},{\"kind\":\"fvar\",\"id\":\"_uniq.158\"},{\"kind\":\"fvar\",\"id\":\"_uniq.180\"},{\"kind\":\"fvar\",\"id\":\"_uniq.181\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.182\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.184\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.183\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.192\",\"parameters\":[{\"id\":\"_uniq.186\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.187\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"unrecognized audit line: \"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.188\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.187\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.189\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.cat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.188\"},{\"kind\":\"fvar\",\"id\":\"_uniq.171\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.190\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.headOf\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.158\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.191\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.stop\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.189\"},{\"kind\":\"fvar\",\"id\":\"_uniq.190\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.191\"}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.193\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.192\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.201\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.envelope\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.171\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"discriminant\":\"_uniq.201\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.202\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.203\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.193\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.202\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.203\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.204\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.205\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.184\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.204\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.205\"}}}]}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.207\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.89\"}}]}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.210\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.209\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"LexLeanBoot.AxiomOutput.Scan\",\"result_type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"discriminant\":\"_uniq.89\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"LexLeanBoot.AxiomOutput.Scan.between\",\"parameters\":[{\"id\":\"_uniq.223\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.224\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.225\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.210\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.223\"},{\"kind\":\"fvar\",\"id\":\"_uniq.224\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.225\"}}},{\"kind\":\"constructor\",\"constructor\":\"LexLeanBoot.AxiomOutput.Scan.inside\",\"parameters\":[{\"id\":\"_uniq.226\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Record\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.227\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.228\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.229\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.230\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.152\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.226\"},{\"kind\":\"fvar\",\"id\":\"_uniq.227\"},{\"kind\":\"fvar\",\"id\":\"_uniq.228\"},{\"kind\":\"fvar\",\"id\":\"_uniq.229\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.230\"}}},{\"kind\":\"constructor\",\"constructor\":\"LexLeanBoot.AxiomOutput.Scan.stopped\",\"parameters\":[{\"id\":\"_uniq.231\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.232\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.98\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.231\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.232\"}}}]}}}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Decidable\",\"List\",\"Nat\",\"OfNat\",\"Option\",\"PUnit\",\"String\",\"instDecidableEqBool\",\"instOfNatNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"Nat.beq\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"LexLeanBoot.AxiomOutput.Record\",\"LexLeanBoot.AxiomOutput.Rejection\",\"LexLeanBoot.AxiomOutput.Scan\",\"LexLeanBoot.AxiomOutput.cat\",\"LexLeanBoot.AxiomOutput.continuation\",\"LexLeanBoot.AxiomOutput.envelope\",\"LexLeanBoot.AxiomOutput.extend\",\"LexLeanBoot.AxiomOutput.headOf\",\"LexLeanBoot.AxiomOutput.stop\",\"LexLeanBoot.AxiomOutput.text\",\"LexLeanBoot.AxiomOutput.trimmed\",\"LexLeanBoot.AxiomOutput.Scan.between\",\"LexLeanBoot.AxiomOutput.Scan.inside\",\"LexLeanBoot.AxiomOutput.Scan.stopped\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.significant\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Nat\",\"instOfNatNat\",\"instSubNat\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"OfNat.ofNat\",\"Prod.fst\",\"LexLeanBoot.AxiomOutput.zeroStep\",\"LexLeanBoot.Text.sliceOr\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.15\",\"parameters\":[{\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.zeroStep\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.14\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.19\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.21\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.22\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.sliceOr\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.26\"}}}}}}}}}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"Sub\",\"instOfNatNat\",\"instSubNat\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"LexLeanBoot.AxiomOutput.zeroStep\",\"LexLeanBoot.Text.sliceOr\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.skipWhite\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Nat\",\"Option\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"ite\",\"Bool.true\",\"HAdd.hAdd\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"Nat.blt\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Prod.fst\",\"LexLeanBoot.AxiomOutput.whiteLength\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.37\",\"parameters\":[{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.whiteLength\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.27\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.29\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.32\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.33\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.35\"}}}}}}}]}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.41\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.43\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.44\"}}}}}}}}}},\"uses\":[\"Add\",\"Bool\",\"ByteArray\",\"Decidable\",\"HAdd\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"Nat.blt\",\"Option.none\",\"Option.some\",\"LexLeanBoot.AxiomOutput.whiteLength\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.splitLast\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Nat\",\"Option\",\"Prod\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"instSubNat\",\"ite\",\"Bool.true\",\"HAdd.hAdd\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"Nat.blt\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Prod.fst\",\"Prod.mk\",\"LexLeanBoot.AxiomOutput.lastStep\",\"LexLeanBoot.Text.matchAt\",\"LexLeanBoot.Text.sliceOr\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}}},\"parameters\":[{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.30\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.32\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.44\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.45\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.50\",\"parameters\":[{\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.lastStep\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.49\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.52\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.55\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.53\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.58\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.60\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.61\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.matchAt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.71\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.72\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.73\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.74\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.75\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.77\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.sliceOr\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.78\"},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.53\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.58\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.sliceOr\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.79\"},{\"kind\":\"fvar\",\"id\":\"_uniq.82\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.83\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.84\"}}}}}}}}}}}]}}}}}}}}}}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.86\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.87\"}}}]}}}}}}}}}},\"uses\":[\"Add\",\"Bool\",\"ByteArray\",\"Decidable\",\"HAdd\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"Sub\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"instSubNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"Nat.blt\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"LexLeanBoot.AxiomOutput.lastStep\",\"LexLeanBoot.Text.matchAt\",\"LexLeanBoot.Text.sliceOr\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.splitOnce\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"instSubNat\",\"HAdd.hAdd\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"LexLeanBoot.Text.find\",\"LexLeanBoot.Text.sliceOr\",\"LexLeanBoot.AxiomOutput.splitOnce.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}}},\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.54\",\"parameters\":[{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.39\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.sliceOr\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.40\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.43\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.44\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.sliceOr\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.53\"}}}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.54\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.61\",\"parameters\":[{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.60\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.61\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.find\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.70\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.62\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.72\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.55\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.74\"}}}]}}}}}}},\"uses\":[\"Add\",\"ByteArray\",\"HAdd\",\"Nat\",\"OfNat\",\"Option\",\"PUnit\",\"Prod\",\"Sub\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"instSubNat\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"Unit.unit\",\"LexLeanBoot.Text.find\",\"LexLeanBoot.Text.sliceOr\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.startsWhite\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Nat\",\"instOfNatNat\",\"Nat.blt\",\"OfNat.ofNat\",\"LexLeanBoot.AxiomOutput.whiteLength\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.8\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.whiteLength\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.11\"}}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Nat\",\"OfNat\",\"instOfNatNat\",\"Nat.blt\",\"LexLeanBoot.AxiomOutput.whiteLength\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.stop\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Option\",\"LexLeanBoot.AxiomOutput.rejected\",\"LexLeanBoot.AxiomOutput.Scan.stopped\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.10\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Rejection\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.rejected\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.Scan.stopped\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.13\"}}}},\"uses\":[\"ByteArray\",\"Option\",\"LexLeanBoot.AxiomOutput.Rejection\",\"LexLeanBoot.AxiomOutput.Scan\",\"LexLeanBoot.AxiomOutput.rejected\",\"LexLeanBoot.AxiomOutput.Scan.stopped\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.stripPrefix\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Nat\",\"Option\",\"instDecidableEqBool\",\"instSubNat\",\"ite\",\"Bool.true\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"Option.none\",\"Option.some\",\"LexLeanBoot.Text.sliceOr\",\"LexLeanBoot.Text.startsWith\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.startsWith\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.26\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.28\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.sliceOr\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.36\"}}}}}}}}}]}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Decidable\",\"Nat\",\"Option\",\"Sub\",\"instDecidableEqBool\",\"instSubNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"Option.none\",\"Option.some\",\"LexLeanBoot.Text.sliceOr\",\"LexLeanBoot.Text.startsWith\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.stripSuffix\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Nat\",\"Option\",\"instDecidableEqBool\",\"instOfNatNat\",\"instSubNat\",\"ite\",\"Bool.true\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"LexLeanBoot.Text.endsWith\",\"LexLeanBoot.Text.sliceOr\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.endsWith\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.26\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.28\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.31\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.sliceOr\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.39\"}}}}}}}}}}}}]}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Decidable\",\"Nat\",\"OfNat\",\"Option\",\"Sub\",\"instDecidableEqBool\",\"instOfNatNat\",\"instSubNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"Option.none\",\"Option.some\",\"LexLeanBoot.Text.endsWith\",\"LexLeanBoot.Text.sliceOr\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.tailOf\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"List\",\"Unit\",\"List.nil\",\"LexLeanBoot.AxiomOutput.axiomList.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.37\",\"parameters\":[{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.36\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.37\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.47\",\"parameters\":[{\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.46\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.47\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.29\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.38\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.58\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.48\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.61\"}}}]}}}}}},\"uses\":[\"ByteArray\",\"List\",\"PUnit\",\"List.cons\",\"List.nil\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.terminates\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Option\",\"Unit\",\"Bool.false\",\"Bool.true\",\"LexLeanBoot.AxiomOutput.stripSuffix\",\"LexLeanBoot.AxiomOutput.text\",\"LexLeanBoot.AxiomOutput.isWord.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.46\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.45\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.46\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.79\",\"parameters\":[{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.46\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.62\",\"parameters\":[{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.61\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.62\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\" does not depend on any axioms\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.stripSuffix\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.38\"},{\"kind\":\"fvar\",\"id\":\"_uniq.72\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.73\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.63\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.75\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.58\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.77\"}}}]}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.79\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"]\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.stripSuffix\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.38\"},{\"kind\":\"fvar\",\"id\":\"_uniq.89\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.90\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.80\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.91\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.92\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.93\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.47\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.93\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.94\"}}}]}}}}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Option\",\"PUnit\",\"String\",\"Bool.false\",\"Bool.true\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"LexLeanBoot.AxiomOutput.stripSuffix\",\"LexLeanBoot.AxiomOutput.text\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.text\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"String\",\"LexLeanRuntime.utf8Encode\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.utf8Encode\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}},\"uses\":[\"ByteArray\",\"String\",\"LexLeanRuntime.utf8Encode\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.trimmed\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Nat\",\"instSubNat\",\"LexLeanRuntime.subtract\",\"LexLeanBoot.AxiomOutput.dropWhiteEnd\",\"LexLeanBoot.AxiomOutput.skipWhite\",\"LexLeanBoot.Text.sliceOr\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.skipWhite\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.15\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.dropWhiteEnd\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.17\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.sliceOr\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.21\"}}}}}}}}},\"uses\":[\"ByteArray\",\"Nat\",\"Sub\",\"instSubNat\",\"LexLeanRuntime.subtract\",\"LexLeanBoot.AxiomOutput.dropWhiteEnd\",\"LexLeanBoot.AxiomOutput.skipWhite\",\"LexLeanBoot.Text.sliceOr\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.unrecognized\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"LexLeanBoot.AxiomOutput.cat\",\"LexLeanBoot.AxiomOutput.malformed\",\"LexLeanBoot.AxiomOutput.text\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"unrecognized axiom payload: \"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.text\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.cat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.malformed\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.10\"}}}}}},\"uses\":[\"ByteArray\",\"Except\",\"List\",\"Prod\",\"String\",\"LexLeanBoot.AxiomOutput.cat\",\"LexLeanBoot.AxiomOutput.malformed\",\"LexLeanBoot.AxiomOutput.text\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.whiteEnding\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Nat\",\"instDecidableEqBool\",\"instOfNatNat\",\"instSubNat\",\"ite\",\"Bool.false\",\"Bool.true\",\"LexLeanRuntime.subtract\",\"Nat.beq\",\"Nat.ble\",\"OfNat.ofNat\",\"LexLeanBoot.AxiomOutput.whiteLength\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.40\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.44\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.45\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.56\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.whiteLength\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.61\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.62\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.79\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.80\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.81\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.82\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.131\",\"parameters\":[{\"id\":\"_uniq.90\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.90\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.91\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.92\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.110\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.109\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.111\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.110\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.111\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.113\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.112\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.127\",\"parameters\":[{\"id\":\"_uniq.120\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.121\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.120\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.121\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.122\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.40\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.123\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.124\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.110\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.125\"}}}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.113\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.114\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.127\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.115\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.116\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.111\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.118\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.whiteLength\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.117\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.118\"},{\"kind\":\"fvar\",\"id\":\"_uniq.111\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.127\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.119\"}]}}}}}]}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.128\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.129\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.80\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.129\"}}}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.83\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.84\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.131\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.85\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.86\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.whiteLength\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.88\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.131\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.89\"}]}}}}}]}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.132\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.56\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.133\"}}}]}}}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.135\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.40\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.136\"}}}]}}}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Decidable\",\"Nat\",\"OfNat\",\"Sub\",\"instDecidableEqBool\",\"instOfNatNat\",\"instSubNat\",\"Bool.false\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.subtract\",\"Nat.beq\",\"Nat.ble\",\"LexLeanBoot.AxiomOutput.whiteLength\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.whiteLength\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Nat\",\"UInt8\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"ite\",\"Bool.false\",\"Bool.true\",\"HAdd.hAdd\",\"OfNat.ofNat\",\"UInt8.instOfNat\",\"LexLeanBoot.AxiomOutput.byteIn\",\"LexLeanBoot.AxiomOutput.byteIs\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.83\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"9\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.101\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.102\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"13\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.104\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.105\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.byteIn\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.103\"},{\"kind\":\"fvar\",\"id\":\"_uniq.106\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.107\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.556\",\"parameters\":[{\"id\":\"_uniq.129\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.130\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.129\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.130\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.131\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.140\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"194\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.141\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.140\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.142\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.141\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.143\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.byteIs\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.142\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.144\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.143\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.144\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.145\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.154\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"225\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.155\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.154\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.156\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.155\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.157\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.byteIs\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.156\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.158\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.157\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.158\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.159\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.168\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"226\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.169\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.168\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.170\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.169\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.171\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.byteIs\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.170\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.172\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.171\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.172\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.173\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.182\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"227\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.183\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.182\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.184\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.183\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.185\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.byteIs\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.184\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.186\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.185\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.186\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.187\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.188\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.189\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.188\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.190\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.189\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.190\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.191\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.208\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.209\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.208\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.210\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.209\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.211\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.212\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.211\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.213\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.212\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.214\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.210\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.213\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.215\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"128\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.216\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.215\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.217\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.216\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.218\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.byteIs\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.214\"},{\"kind\":\"fvar\",\"id\":\"_uniq.217\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.219\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.218\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.252\",\"parameters\":[{\"id\":\"_uniq.241\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.242\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.241\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.242\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.243\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.244\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.245\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.244\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.246\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.245\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.246\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.247\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.248\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.249\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.248\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.250\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.249\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.250\"}}}}}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.219\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.220\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.221\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.252\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.221\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.222\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.231\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.232\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.231\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.233\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.232\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.234\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.210\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.233\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.235\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.byteIs\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.234\"},{\"kind\":\"fvar\",\"id\":\"_uniq.217\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.236\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.235\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.236\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.237\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.238\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.252\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.238\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.239\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.252\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]}}]}}}}}}}}]}}}}}}}}}}}}}}}]}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.254\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.263\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.264\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.263\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.265\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.264\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.266\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.267\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.266\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.268\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.267\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.269\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.265\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.268\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.270\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"128\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.271\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.270\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.272\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.271\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.273\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.byteIs\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.269\"},{\"kind\":\"fvar\",\"id\":\"_uniq.272\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.274\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.273\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.274\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.275\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.292\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"129\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.293\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.292\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.294\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.293\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.295\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.byteIs\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.269\"},{\"kind\":\"fvar\",\"id\":\"_uniq.294\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.296\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.295\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.332\",\"parameters\":[{\"id\":\"_uniq.321\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.322\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.321\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.322\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.323\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.324\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.325\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.324\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.326\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.325\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.326\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.327\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.328\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.329\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.328\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.330\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.329\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.330\"}}}}}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.296\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.297\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.298\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.332\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.298\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.299\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.308\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.309\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.308\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.310\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.309\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.311\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.265\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.310\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.312\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"159\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.313\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.312\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.314\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.313\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.315\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.byteIs\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.311\"},{\"kind\":\"fvar\",\"id\":\"_uniq.314\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.316\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.315\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.316\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.317\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.318\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.332\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.318\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.319\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.332\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]}}]}}}}}}}}}}}]}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.333\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.350\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.351\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.350\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.352\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.351\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.353\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.265\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.352\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.354\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"138\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.355\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.354\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.356\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.355\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.357\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.byteIn\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.353\"},{\"kind\":\"fvar\",\"id\":\"_uniq.272\"},{\"kind\":\"fvar\",\"id\":\"_uniq.356\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.358\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.357\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.421\",\"parameters\":[{\"id\":\"_uniq.410\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.411\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.410\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.411\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.412\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.413\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.414\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.413\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.415\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.414\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.415\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.416\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.417\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.418\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.417\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.419\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.418\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.419\"}}}}}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.358\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.359\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.368\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"168\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.369\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.368\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.370\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.369\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.371\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.byteIs\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.353\"},{\"kind\":\"fvar\",\"id\":\"_uniq.370\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.372\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.371\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.372\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.373\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.382\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"169\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.383\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.382\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.384\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.383\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.385\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.byteIs\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.353\"},{\"kind\":\"fvar\",\"id\":\"_uniq.384\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.386\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.385\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.386\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.387\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.396\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"175\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.397\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.396\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.398\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.397\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.399\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.byteIs\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.353\"},{\"kind\":\"fvar\",\"id\":\"_uniq.398\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.400\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.399\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.400\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.401\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.402\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.421\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.402\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.403\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.421\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]}}]}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.405\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.421\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]}}]}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.407\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.421\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]}}]}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.409\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.421\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]}}]}}}}}}}}}}}}]}}}}}}}}}}}}}}]}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.424\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.441\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.442\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.441\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.443\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.442\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.444\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.445\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.444\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.446\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.445\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.447\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.443\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.446\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.448\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"154\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.449\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.448\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.450\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.449\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.451\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.byteIs\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.447\"},{\"kind\":\"fvar\",\"id\":\"_uniq.450\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.452\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.451\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.488\",\"parameters\":[{\"id\":\"_uniq.477\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.478\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.477\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.478\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.479\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.480\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.481\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.480\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.482\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.481\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.482\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.483\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.484\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.485\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.484\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.486\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.485\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.486\"}}}}}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.452\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.453\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.454\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.488\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.454\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.455\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.464\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.465\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.464\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.466\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.465\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.467\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.443\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.466\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.468\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"128\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.469\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.468\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.470\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.469\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.471\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.byteIs\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.467\"},{\"kind\":\"fvar\",\"id\":\"_uniq.470\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.472\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.471\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.472\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.473\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.474\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.488\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.474\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.475\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.488\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]}}]}}}}}}}}}}}]}}}}}}}}}}}}}}}]}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.490\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.507\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.508\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.507\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.509\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.508\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.510\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.511\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.510\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.512\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.511\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.513\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.509\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.512\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.514\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"133\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.515\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.514\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.516\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.515\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.517\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.byteIs\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.513\"},{\"kind\":\"fvar\",\"id\":\"_uniq.516\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.518\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.517\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.549\",\"parameters\":[{\"id\":\"_uniq.538\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.539\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.538\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.539\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.540\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.541\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.542\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.541\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.543\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.542\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.543\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.544\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.545\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.546\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.545\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.547\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.546\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.547\"}}}}}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.518\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.519\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.528\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"160\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.529\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.528\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.530\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.529\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.531\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.byteIs\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.513\"},{\"kind\":\"fvar\",\"id\":\"_uniq.530\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.532\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.531\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.532\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.533\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.534\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.549\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.534\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.535\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.549\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]}}]}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.537\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.549\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]}}]}}}}}}}}}}}}}}}]}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.551\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.552\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.553\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.552\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.554\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.553\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.554\"}}}}}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.109\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.110\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"32\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.120\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.119\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.121\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.120\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.byteIs\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.121\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.122\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.123\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.124\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.556\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.125\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.126\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.556\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]}}]}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.128\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.556\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]}}]}}}}}}}}}}}},\"uses\":[\"Add\",\"Bool\",\"ByteArray\",\"Decidable\",\"HAdd\",\"Nat\",\"OfNat\",\"UInt8\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"UInt8.instOfNat\",\"LexLeanBoot.AxiomOutput.byteIn\",\"LexLeanBoot.AxiomOutput.byteIs\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.zeroStep\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Nat\",\"Option\",\"UInt8\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"ite\",\"Bool.true\",\"HAdd.hAdd\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"UInt8.instOfNat\",\"LexLeanBoot.AxiomOutput.byteIs\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"48\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.25\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.AxiomOutput.byteIs\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.29\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.34\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.37\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.35\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.40\"}}}}}}}}}}]}}}}}}}},\"uses\":[\"Add\",\"Bool\",\"ByteArray\",\"Decidable\",\"HAdd\",\"Nat\",\"OfNat\",\"Option\",\"UInt8\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"UInt8.instOfNat\",\"LexLeanBoot.AxiomOutput.byteIs\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.Text.byteAt\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Nat\",\"UInt8\",\"LexLeanRuntime.index\",\"LexLeanRuntime.instIndexableByteArrayUInt8\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instIndexableByteArrayUInt8\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.index\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.14\"}}}},\"uses\":[\"ByteArray\",\"Nat\",\"Option\",\"UInt8\",\"LexLeanRuntime.Indexable\",\"LexLeanRuntime.index\",\"LexLeanRuntime.instIndexableByteArrayUInt8\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.Text.chomp\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Nat\",\"UInt8\",\"instDecidableEqBool\",\"instOfNatNat\",\"instSubNat\",\"ite\",\"Bool.true\",\"ByteArray.mk\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"List.cons\",\"List.nil\",\"List.toArray\",\"OfNat.ofNat\",\"UInt8.instOfNat\",\"LexLeanBoot.Text.endsWith\",\"LexLeanBoot.Text.sliceOr\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"13\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.19\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.toArray\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.endsWith\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"discriminant\":\"_uniq.27\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.9\"}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.31\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.37\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.sliceOr\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.40\"}}}}}}}}}}}}}]}}}}}}}}}}}},\"uses\":[\"Array\",\"Bool\",\"ByteArray\",\"Decidable\",\"List\",\"Nat\",\"OfNat\",\"Sub\",\"UInt8\",\"instDecidableEqBool\",\"instOfNatNat\",\"instSubNat\",\"Bool.true\",\"ByteArray.mk\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"List.cons\",\"List.nil\",\"List.toArray\",\"UInt8.instOfNat\",\"LexLeanBoot.Text.endsWith\",\"LexLeanBoot.Text.sliceOr\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.Text.endsWith\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Nat\",\"Option\",\"Unit\",\"instDecidableEqBool\",\"instSubNat\",\"ite\",\"Bool.false\",\"Bool.true\",\"ByteArray.instBEq\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.instSliceableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.slice\",\"LexLeanRuntime.subtract\",\"Nat.ble\",\"LexLeanBoot.Text.sliceOr.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.40\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.42\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.43\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.52\"},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.54\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.56\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.57\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.66\",\"parameters\":[{\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.instBEq\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.65\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.66\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.73\",\"parameters\":[{\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.72\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.73\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instSliceableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.slice\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.82\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.85\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.74\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.86\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.87\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.67\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.89\"}}}]}}}}}}}}}}]}}}}}}}}}},\"uses\":[\"BEq\",\"Bool\",\"ByteArray\",\"Decidable\",\"Nat\",\"Option\",\"PUnit\",\"Sub\",\"instDecidableEqBool\",\"instSubNat\",\"Bool.false\",\"Bool.true\",\"ByteArray.instBEq\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.Sliceable\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.instSliceableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.slice\",\"LexLeanRuntime.subtract\",\"Nat.ble\",\"Option.none\",\"Option.some\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.Text.find\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Nat\",\"Option\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"ite\",\"Bool.true\",\"HAdd.hAdd\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"Nat.blt\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Prod.fst\",\"LexLeanBoot.Text.matchAt\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.36\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.38\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.80\",\"parameters\":[{\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.matchAt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.52\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.53\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.63\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.64\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.66\"},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.67\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.68\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.69\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.72\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.64\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.75\"}}}}}}}]}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.77\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.78\"}}}]}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.82\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.84\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.85\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.83\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.86\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.89\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"},{\"kind\":\"fvar\",\"id\":\"_uniq.90\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.91\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.92\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.matchAt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.93\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.102\"},{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.104\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.105\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.106\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.107\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.93\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.108\"}}}]}}}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Add\",\"Bool\",\"ByteArray\",\"Decidable\",\"HAdd\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"Nat.blt\",\"Option.none\",\"Option.some\",\"LexLeanBoot.Text.matchAt\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.Text.lineStep\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"List\",\"Nat\",\"Option\",\"Prod\",\"UInt8\",\"Unit\",\"instAddNat\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instDecidableEqUInt8\",\"instHAdd\",\"instOfNatNat\",\"instSubNat\",\"ite\",\"Bool.true\",\"HAdd.hAdd\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.subtract\",\"List.cons\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"UInt8.instOfNat\",\"LexLeanBoot.Text.byteAt\",\"LexLeanBoot.Text.chomp\",\"LexLeanBoot.Text.sliceOr\",\"LexLeanBoot.Text.spaceAt.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}}},\"parameters\":[{\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.43\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.49\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.43\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.51\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.52\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.51\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.54\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.106\",\"parameters\":[{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqUInt8\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"10\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.72\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.73\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.71\"},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"discriminant\":\"_uniq.77\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.78\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.79\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.80\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.82\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.83\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.81\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.85\"},{\"kind\":\"fvar\",\"id\":\"_uniq.86\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.88\"}}}}}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.89\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.90\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.91\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.93\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.94\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.92\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.95\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.97\"},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.sliceOr\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.98\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.chomp\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.99\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.100\"},{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.96\"},{\"kind\":\"fvar\",\"id\":\"_uniq.101\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.96\"},{\"kind\":\"fvar\",\"id\":\"_uniq.102\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.104\"}}}}}}}}}}}}}}}}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.106\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.113\",\"parameters\":[{\"id\":\"_uniq.111\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.112\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.113\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.byteAt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"discriminant\":\"_uniq.122\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.124\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.114\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.123\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.124\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.125\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.107\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.125\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.126\"}}}]}}}}}}}}}}}}}},\"uses\":[\"Add\",\"BEq\",\"Bool\",\"ByteArray\",\"Decidable\",\"HAdd\",\"List\",\"Nat\",\"OfNat\",\"Option\",\"PUnit\",\"Prod\",\"Sub\",\"UInt8\",\"instAddNat\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instDecidableEqUInt8\",\"instHAdd\",\"instOfNatNat\",\"instSubNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.subtract\",\"List.cons\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"UInt8.instOfNat\",\"Unit.unit\",\"LexLeanBoot.Text.byteAt\",\"LexLeanBoot.Text.chomp\",\"LexLeanBoot.Text.sliceOr\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.Text.lines\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"List\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"instOfNatNat\",\"instSubNat\",\"ite\",\"Bool.true\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"List.cons\",\"List.nil\",\"Nat.blt\",\"OfNat.ofNat\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"LexLeanBoot.Text.lineStep\",\"LexLeanBoot.Text.reverse\",\"LexLeanBoot.Text.sliceOr\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.28\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.33\",\"parameters\":[{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.lineStep\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.32\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.35\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.40\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.41\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.42\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.43\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.44\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.43\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.46\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.58\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.reverse\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.60\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.sliceOr\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.reverse\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.66\"}}}}}}}]}}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Decidable\",\"List\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"Sub\",\"instDecidableEqBool\",\"instOfNatNat\",\"instSubNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"List.cons\",\"List.nil\",\"Nat.blt\",\"Prod.mk\",\"LexLeanBoot.Text.lineStep\",\"LexLeanBoot.Text.reverse\",\"LexLeanBoot.Text.sliceOr\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.Text.matchAt\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Nat\",\"Option\",\"Unit\",\"Bool.false\",\"ByteArray.instBEq\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.instSliceableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.slice\",\"LexLeanBoot.Text.sliceOr.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}}},\"parameters\":[{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.47\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.instBEq\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.46\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.47\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.54\",\"parameters\":[{\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.53\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.54\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instSliceableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.slice\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"},{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.66\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.55\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.68\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.48\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.69\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.70\"}}}]}}}}}}}}}},\"uses\":[\"BEq\",\"Bool\",\"ByteArray\",\"Nat\",\"Option\",\"PUnit\",\"Bool.false\",\"ByteArray.instBEq\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.Sliceable\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.instSliceableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.slice\",\"Option.none\",\"Option.some\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.Text.reverse\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"List\",\"LexLeanCollections.listFold\",\"List.cons\",\"List.nil\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.14\",\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.13\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.16\"}}}}},\"uses\":[\"ByteArray\",\"List\",\"LexLeanCollections.listFold\",\"List.cons\",\"List.nil\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.Text.sliceOr\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Nat\",\"Option\",\"UInt8\",\"Unit\",\"ByteArray.mk\",\"LexLeanRuntime.instSliceableByteArray\",\"LexLeanRuntime.slice\",\"List.nil\",\"List.toArray\",\"LexLeanBoot.Text.sliceOr.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}}},\"parameters\":[{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.45\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.44\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.45\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.54\",\"parameters\":[{\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.toArray\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.53\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.54\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instSliceableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.slice\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"discriminant\":\"_uniq.64\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.55\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.66\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.46\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.68\"}}}]}}}}}}}},\"uses\":[\"Array\",\"ByteArray\",\"List\",\"Nat\",\"Option\",\"PUnit\",\"UInt8\",\"ByteArray.mk\",\"LexLeanRuntime.Sliceable\",\"LexLeanRuntime.instSliceableByteArray\",\"LexLeanRuntime.slice\",\"List.nil\",\"List.toArray\",\"Option.none\",\"Option.some\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.Text.splitOn\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"List\",\"Nat\",\"Prod\",\"UInt8\",\"instOfNatNat\",\"instSubNat\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"List.cons\",\"List.nil\",\"OfNat.ofNat\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"LexLeanBoot.Text.reverse\",\"LexLeanBoot.Text.sliceOr\",\"LexLeanBoot.Text.splitStep\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.27\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.32\",\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.splitStep\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.34\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.39\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.40\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.41\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.42\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.43\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.sliceOr\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.42\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.reverse\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.50\"}}}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"List\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"Sub\",\"UInt8\",\"instOfNatNat\",\"instSubNat\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"List.cons\",\"List.nil\",\"Prod.mk\",\"LexLeanBoot.Text.reverse\",\"LexLeanBoot.Text.sliceOr\",\"LexLeanBoot.Text.splitStep\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.Text.splitStep\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"List\",\"Nat\",\"Option\",\"Prod\",\"UInt8\",\"Unit\",\"instAddNat\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instDecidableEqUInt8\",\"instHAdd\",\"instOfNatNat\",\"instSubNat\",\"ite\",\"Bool.true\",\"HAdd.hAdd\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.subtract\",\"List.cons\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"LexLeanBoot.Text.byteAt\",\"LexLeanBoot.Text.sliceOr\",\"LexLeanBoot.Text.spaceAt.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}}}},\"parameters\":[{\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.50\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.50\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.58\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.59\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.58\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.61\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.109\",\"parameters\":[{\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqUInt8\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.77\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.78\"},{\"kind\":\"fvar\",\"id\":\"_uniq.66\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.79\"},{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"discriminant\":\"_uniq.81\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.82\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.83\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.84\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.86\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.87\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.85\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.89\"},{\"kind\":\"fvar\",\"id\":\"_uniq.90\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.91\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.92\"}}}}}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.93\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.94\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.95\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.97\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.98\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.96\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.99\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.101\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.sliceOr\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.48\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.102\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.103\"},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.100\"},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.100\"},{\"kind\":\"fvar\",\"id\":\"_uniq.105\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.106\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.107\"}}}}}}}}}}}}}}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.110\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.109\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.116\",\"parameters\":[{\"id\":\"_uniq.114\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.115\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.116\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanBoot.Text.byteAt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.48\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"discriminant\":\"_uniq.125\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.127\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.117\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.126\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.127\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.128\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.129\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.110\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.128\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.129\"}}}]}}}}}}}}}}}}}},\"uses\":[\"Add\",\"BEq\",\"Bool\",\"ByteArray\",\"Decidable\",\"HAdd\",\"List\",\"Nat\",\"OfNat\",\"Option\",\"PUnit\",\"Prod\",\"Sub\",\"UInt8\",\"instAddNat\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instDecidableEqUInt8\",\"instHAdd\",\"instOfNatNat\",\"instSubNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.subtract\",\"List.cons\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"Unit.unit\",\"LexLeanBoot.Text.byteAt\",\"LexLeanBoot.Text.sliceOr\"]},\"inductive\":null},{\"name\":\"LexLeanBoot.Text.startsWith\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Nat\",\"Option\",\"Unit\",\"instOfNatNat\",\"Bool.false\",\"ByteArray.instBEq\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.instSliceableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.slice\",\"OfNat.ofNat\",\"LexLeanBoot.Text.sliceOr.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.40\",\"parameters\":[{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.instBEq\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.39\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.40\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.47\",\"parameters\":[{\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.46\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.47\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instSliceableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.58\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.slice\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.62\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.48\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.64\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.41\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.66\"}}}]}}}}}}}}}}}}},\"uses\":[\"BEq\",\"Bool\",\"ByteArray\",\"Nat\",\"OfNat\",\"Option\",\"PUnit\",\"instOfNatNat\",\"Bool.false\",\"ByteArray.instBEq\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.Sliceable\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.instSliceableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.slice\",\"Option.none\",\"Option.some\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.iterate.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Nat.casesOn\",\"Nat.succ\",\"OfNat.ofNat\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.iterateUntil._f\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Nat.below\",\"Nat.succ\",\"OfNat.ofNat\",\"Prod.mk\",\"LexLeanCollections.iterate.match_1\",\"LexLeanCollections.iterateUntil.match_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.iterateUntil.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Appendable.append\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Appendable\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Appendable.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Fixed.fromInt\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Fixed\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Fixed.maximum\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Fixed\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Fixed.minimum\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Fixed\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Fixed.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Fixed.toToMathInt\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Fixed\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Indexable.index\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Indexable\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Indexable.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Lengthable.length\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Lengthable\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Lengthable.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Quotient.isZero\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Quotient\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Quotient.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Quotient.quotient\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Quotient\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Quotient.remainder\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Quotient\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Sliceable.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Sliceable.slice\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Sliceable\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.ToMathInt.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.ToMathInt.toInt\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.ToMathInt\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.Record.axioms\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanBoot.AxiomOutput.Record\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.Record.declaration\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanBoot.AxiomOutput.Record\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.Record.expected\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanBoot.AxiomOutput.Record\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.Record.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.Rejection.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.Scan.between\",\"kind\":\"constructor\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.Scan.casesOn\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"List\",\"Option\",\"LexLeanBoot.AxiomOutput.Record\",\"LexLeanBoot.AxiomOutput.Rejection\",\"LexLeanBoot.AxiomOutput.Scan\",\"LexLeanBoot.AxiomOutput.Scan.between\",\"LexLeanBoot.AxiomOutput.Scan.inside\",\"LexLeanBoot.AxiomOutput.Scan.rec\",\"LexLeanBoot.AxiomOutput.Scan.stopped\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.Scan.inside\",\"kind\":\"constructor\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.Scan.rec\",\"kind\":\"recursor\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"recursor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.Scan.stopped\",\"kind\":\"constructor\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.afterLocation.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Option\",\"Prod\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.auditStep.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Except\",\"List\",\"Prod\",\"Except.casesOn\",\"Except.error\",\"Except.ok\",\"LexLeanBoot.AxiomOutput.Rejection\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.axiomList.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"List\",\"Unit\",\"List.casesOn\",\"List.cons\",\"List.nil\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.collectStep.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Except\",\"List\",\"Except.casesOn\",\"Except.error\",\"Except.ok\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.extend.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Except\",\"List\",\"Prod\",\"Except.casesOn\",\"Except.error\",\"Except.ok\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.inRange.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Option\",\"UInt8\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.insertAxiom._f\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"List\",\"Option\",\"Unit\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"ByteArray.instBEq\",\"LexLeanRuntime.equal\",\"List.below\",\"List.cons\",\"List.nil\",\"Option.none\",\"Option.some\",\"LexLeanBoot.AxiomOutput.lessBytes\",\"LexLeanBoot.AxiomOutput.insertAxiom.match_1\",\"LexLeanBoot.AxiomOutput.insertAxiom.match_3\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.insertAxiom.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"List\",\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.insertAxiom.match_3\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"List\",\"List.casesOn\",\"List.cons\",\"List.nil\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.insertEntry._f\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"List\",\"Option\",\"Prod\",\"Unit\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"ByteArray.instBEq\",\"LexLeanRuntime.equal\",\"List.below\",\"List.cons\",\"List.nil\",\"Option.none\",\"Option.some\",\"Prod.fst\",\"Prod.mk\",\"LexLeanBoot.AxiomOutput.lessBytes\",\"LexLeanBoot.AxiomOutput.insertEntry.match_1\",\"LexLeanBoot.AxiomOutput.insertEntry.match_3\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.insertEntry.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"List\",\"Option\",\"Prod\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.insertEntry.match_3\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"List\",\"Prod\",\"List.casesOn\",\"List.cons\",\"List.nil\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.isWord.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.parsePayload.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.scanStep.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"List\",\"Option\",\"LexLeanBoot.AxiomOutput.Record\",\"LexLeanBoot.AxiomOutput.Rejection\",\"LexLeanBoot.AxiomOutput.Scan\",\"LexLeanBoot.AxiomOutput.Scan.between\",\"LexLeanBoot.AxiomOutput.Scan.casesOn\",\"LexLeanBoot.AxiomOutput.Scan.inside\",\"LexLeanBoot.AxiomOutput.Scan.stopped\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.AxiomOutput.splitOnce.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.AxiomOutput\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.Text.sliceOr.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.Text\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanBoot.Text.spaceAt.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanBoot.Text\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Option\",\"UInt8\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null}],\"externals\":[{\"name\":\"Add\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Array\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"BEq\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Bool\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"ByteArray\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Decidable\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Except\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"GetElem?\",\"kind\":\"inductive\",\"module\":\"Init.GetElem\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"HAdd\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"HSub\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Int\",\"kind\":\"inductive\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"List\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Nat\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"OfNat\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Option\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Ord\",\"kind\":\"inductive\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Ordering\",\"kind\":\"inductive\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"PUnit\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Prod\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"String\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Sub\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"UInt32\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"UInt8\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"instAddNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instBEqOfDecidableEq\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instDecidableEqBool\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instDecidableEqNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instDecidableEqOrdering\",\"kind\":\"definition\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instDecidableEqUInt8\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instHAdd\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instHSub\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instOfNat\",\"kind\":\"definition\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instOfNatNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instSubNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Array.instGetElem?NatLtSize\",\"kind\":\"definition\",\"module\":\"Init.GetElem\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Bool.false\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Bool\"},{\"name\":\"Bool.not\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Bool.true\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Bool\"},{\"name\":\"ByteArray.data\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"ByteArray.extract\",\"kind\":\"definition\",\"module\":\"Init.Data.ByteArray.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"ByteArray.fastAppend\",\"kind\":\"definition\",\"module\":\"Init.Data.ByteArray.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"ByteArray.instBEq\",\"kind\":\"definition\",\"module\":\"Init.Data.ByteArray.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"ByteArray.mk\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":true,\"inductive_type\":\"ByteArray\"},{\"name\":\"ByteArray.size\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"ByteArray.toList\",\"kind\":\"definition\",\"module\":\"Init.Data.ByteArray.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Decidable.isFalse\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Decidable\"},{\"name\":\"Decidable.isTrue\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Decidable\"},{\"name\":\"Except.error\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Except\"},{\"name\":\"Except.ok\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Except\"},{\"name\":\"Int.decLt\",\"kind\":\"definition\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int.instSub\",\"kind\":\"definition\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int.ofNat\",\"kind\":\"constructor\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":true,\"inductive_type\":\"Int\"},{\"name\":\"List.cons\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"List\"},{\"name\":\"List.foldl\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"List.instOrd\",\"kind\":\"definition\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"List.nil\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"List\"},{\"name\":\"List.toArray\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.beq\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.ble\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.blt\",\"kind\":\"definition\",\"module\":\"Init.Data.Nat.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.decLe\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.decLt\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.div\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.mod\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.succ\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Nat\"},{\"name\":\"Nat.zero\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Nat\"},{\"name\":\"Option.none\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Option\"},{\"name\":\"Option.some\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Option\"},{\"name\":\"Prod.mk\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Prod\"},{\"name\":\"String.toUTF8\",\"kind\":\"axiom\",\"module\":\"Init.Data.String.Defs\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt32.toNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt8.complement\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt8.instOfNat\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.BasicAux\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt8.instOrd\",\"kind\":\"definition\",\"module\":\"Init.Data.Ord.UInt\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt8.land\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt8.lor\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt8.ofInt\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt8.ofNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt8.shiftLeft\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt8.shiftRight\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt8.toNat\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.BasicAux\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt8.xor\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Unit.unit\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true}]}\n","stdout_sha256":"8936693ae9a91f38acfc70d3ebc0d4683efcc54907e455298d72339e1e36cead","tool":"lean"} diff --git a/bootstrap/expected/verify/preserve/LexLeanPreserve/C5ba510b7049a3e59c5f1ffb1f0a6611d/R0.lean b/bootstrap/expected/verify/preserve/LexLeanPreserve/C5ba510b7049a3e59c5f1ffb1f0a6611d/R0.lean new file mode 100644 index 000000000..55688cd3b --- /dev/null +++ b/bootstrap/expected/verify/preserve/LexLeanPreserve/C5ba510b7049a3e59c5f1ffb1f0a6611d/R0.lean @@ -0,0 +1,98 @@ +import LexLeanPreservation.Core +import LexLeanPreservation.Values +import LexLeanPreservation.Primitives +import LexLeanPreservation.Fixed +import LexLeanPreservation.Keys +import LexLeanPreservation.Templates +import LexLeanPreservation.Validate +import LexLeanBoot.AxiomOutput +import LexLeanBoot.Text +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +set_option linter.unusedVariables false +namespace LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0 + +def __prog : _root_.LexLeanTarget.TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0], types := [.bytes], result := .bool, + body := (.prim .natEq [(.second (.first (.call 1 [(.closure 2 [(.var 0)]), (.prim .length [(.var 0)]), (.build .pair (.pair .nat .nat) [(.value .nat (.nat 0)), (.value .nat (.nat 0))])]))), (.value .nat (.nat 1))]) }, + { parameters := [0, 1, 2], types := [(.fn [(.pair .nat .nat)] (.option (.pair .nat .nat))), .nat, (.pair .nat .nat)], result := (.pair (.pair .nat .nat) .bool), + body := (.«match» (.pair (.pair .nat .nat) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.pair .nat .nat) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.pair .nat .nat) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.pair .nat .nat) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 1 [(.var 0), (.var 3), (.var 4)]))]))]) }, + { parameters := [0, 1], types := [.bytes, (.pair .nat .nat)], result := (.option (.pair .nat .nat)), + body := (.call 3 [(.var 0), (.var 1)]) }, + { parameters := [0, 1], types := [.bytes, (.pair .nat .nat)], result := (.option (.pair .nat .nat)), + body := (.cond (.prim .natEq [(.second (.var 1)), (.value .nat (.nat 2))]) (.build .none (.option (.pair .nat .nat)) []) (.«match» (.option (.pair .nat .nat)) (.call 4 [(.var 0), (.first (.var 1))]) [(.arm .some [2] (.build .some (.option (.pair .nat .nat)) [(.build .pair (.pair .nat .nat) [(.prim .natAdd [(.first (.var 1)), (.value .nat (.nat 1))]), (.call 5 [(.second (.var 1)), (.var 2)])])])), (.arm .none [] (.build .none (.option (.pair .nat .nat)) []))])) }, + { parameters := [0, 1], types := [.bytes, .nat], result := (.option (.fixed .u8)), + body := (.prim .index [(.var 0), (.var 1)]) }, + { parameters := [0, 1], types := [.nat, (.fixed .u8)], result := .nat, + body := (.cond (.prim .natEq [(.var 0), (.value .nat (.nat 2))]) (.value .nat (.nat 2)) (.cond (.prim .equal [(.var 1), (.value (.fixed .u8) (.u8 46))]) (.cond (.prim .natEq [(.var 0), (.value .nat (.nat 1))]) (.value .nat (.nat 0)) (.value .nat (.nat 2))) (.cond (.call 6 [(.var 1)]) (.value .nat (.nat 1)) (.cond (.prim .natEq [(.var 0), (.value .nat (.nat 1))]) (.cond (.call 7 [(.var 1)]) (.value .nat (.nat 1)) (.value .nat (.nat 2))) (.value .nat (.nat 2)))))) }, + { parameters := [0], types := [(.fixed .u8)], result := .bool, + body := (.cond (.call 8 [(.var 0), (.value (.fixed .u8) (.u8 65)), (.value (.fixed .u8) (.u8 90))]) (.build .true .bool []) (.cond (.call 8 [(.var 0), (.value (.fixed .u8) (.u8 97)), (.value (.fixed .u8) (.u8 122))]) (.build .true .bool []) (.prim .equal [(.var 0), (.value (.fixed .u8) (.u8 95))]))) }, + { parameters := [0], types := [(.fixed .u8)], result := .bool, + body := (.cond (.call 6 [(.var 0)]) (.build .true .bool []) (.cond (.call 8 [(.var 0), (.value (.fixed .u8) (.u8 48)), (.value (.fixed .u8) (.u8 57))]) (.build .true .bool []) (.cond (.prim .equal [(.var 0), (.value (.fixed .u8) (.u8 63))]) (.build .true .bool []) (.prim .equal [(.var 0), (.value (.fixed .u8) (.u8 39))])))) }, + { parameters := [0, 1, 2], types := [(.fixed .u8), (.fixed .u8), (.fixed .u8)], result := .bool, + body := (.«match» .bool (.prim .checkedSub [(.var 0), (.var 1)]) [(.arm .some [3] (.«match» .bool (.prim .checkedSub [(.var 2), (.var 0)]) [(.arm .some [4] (.build .true .bool [])), (.arm .none [] (.build .false .bool []))])), (.arm .none [] (.build .false .bool []))]) }] } + +def __fits_4 (subject : ByteArray) (position : Nat) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_4 (subject : ByteArray) (position : Nat) : _root_.LexLeanPreservation.FunRel __prog 4 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat position)] (_root_.LexLeanPreservation.Rel (__fits_4 subject position) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u8) (LexLeanBoot.Text.byteAt subject position))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_index_bytes subject position)) + +def __fits_8 (byte : UInt8) (low : UInt8) (high : UInt8) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (match (_root_.LexLeanRuntime.checkedSubtract (byte) (low) : (Option UInt8)) with | Option.some above => (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (match (_root_.LexLeanRuntime.checkedSubtract (high) (byte) : (Option UInt8)) with | Option.some below => (Bool.true && Bool.true) | Option.none => (Bool.true && Bool.true))) | Option.none => (Bool.true && Bool.true))) + +theorem __rel_8 (byte : UInt8) (low : UInt8) (high : UInt8) : _root_.LexLeanPreservation.FunRel __prog 8 [(_root_.LexLeanTarget.TargetSyntax.Value.u8 byte), (_root_.LexLeanTarget.TargetSyntax.Value.u8 low), (_root_.LexLeanTarget.TargetSyntax.Value.u8 high)] (_root_.LexLeanPreservation.Rel (__fits_8 byte low high) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanBoot.AxiomOutput.inRange byte low high))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u8) (fun (__a : (Option UInt8)) => (match __a with | Option.some above => (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (match (_root_.LexLeanRuntime.checkedSubtract (high) (byte) : (Option UInt8)) with | Option.some below => (Bool.true && Bool.true) | Option.none => (Bool.true && Bool.true))) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option UInt8)) => _root_.LexLeanTarget.TargetSyntax.Value.bool (match __a with | Option.some above => (match (_root_.LexLeanRuntime.checkedSubtract (high) (byte) : (Option UInt8)) with | Option.some below => Bool.true | Option.none => Bool.false) | Option.none => Bool.false)) (_root_.LexLeanRuntime.checkedSubtract (byte) (low) : (Option UInt8)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_checkedSub_u8 byte low)) (fun (__a : (Option UInt8)) _ => match __a with | Option.some above => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u8) (fun (__a : (Option UInt8)) => (match __a with | Option.some below => (Bool.true && Bool.true) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option UInt8)) => _root_.LexLeanTarget.TargetSyntax.Value.bool (match __a with | Option.some below => Bool.true | Option.none => Bool.false)) (_root_.LexLeanRuntime.checkedSubtract (high) (byte) : (Option UInt8)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_checkedSub_u8 high byte)) (fun (__a : (Option UInt8)) _ => match __a with | Option.some below => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))))) + +def __fits_6 (byte : UInt8) : Bool := + (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_8 (byte) ((65 : UInt8)) ((90 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.inRange (byte) ((65 : UInt8)) ((90 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_8 (byte) ((97 : UInt8)) ((122 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.inRange (byte) ((97 : UInt8)) ((122 : UInt8))) then (Bool.true && Bool.true) else ((Bool.true && (Bool.true && Bool.true)) && Bool.true))))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.inRange in +theorem __rel_6 (byte : UInt8) : _root_.LexLeanPreservation.FunRel __prog 6 [(_root_.LexLeanTarget.TargetSyntax.Value.u8 byte)] (_root_.LexLeanPreservation.Rel (__fits_6 byte) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanBoot.AxiomOutput.isFirst byte))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_8 (byte) ((97 : UInt8)) ((122 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.inRange (byte) ((97 : UInt8)) ((122 : UInt8))) then (Bool.true && Bool.true) else ((Bool.true && (Bool.true && Bool.true)) && Bool.true))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then Bool.true else (if (LexLeanBoot.AxiomOutput.inRange (byte) ((97 : UInt8)) ((122 : UInt8))) then Bool.true else (_root_.LexLeanRuntime.equal (byte) ((95 : UInt8)) : Bool)))) (LexLeanBoot.AxiomOutput.inRange (byte) ((65 : UInt8)) ((90 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_8 (byte) ((65 : UInt8)) ((90 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else ((Bool.true && (Bool.true && Bool.true)) && Bool.true))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then Bool.true else (_root_.LexLeanRuntime.equal (byte) ((95 : UInt8)) : Bool))) (LexLeanBoot.AxiomOutput.inRange (byte) ((97 : UInt8)) ((122 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_8 (byte) ((97 : UInt8)) ((122 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_u8 byte (95 : UInt8))))))) + +def __fits_7 (byte : UInt8) : Bool := + (((Bool.true && Bool.true) && (__fits_6 (byte))) && (if (LexLeanBoot.AxiomOutput.isFirst (byte)) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_8 (byte) ((48 : UInt8)) ((57 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.inRange (byte) ((48 : UInt8)) ((57 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal (byte) ((63 : UInt8)) : Bool) then (Bool.true && Bool.true) else ((Bool.true && (Bool.true && Bool.true)) && Bool.true))))))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.inRange LexLeanBoot.AxiomOutput.isFirst in +theorem __rel_7 (byte : UInt8) : _root_.LexLeanPreservation.FunRel __prog 7 [(_root_.LexLeanTarget.TargetSyntax.Value.u8 byte)] (_root_.LexLeanPreservation.Rel (__fits_7 byte) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanBoot.AxiomOutput.isLater byte))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_8 (byte) ((48 : UInt8)) ((57 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.inRange (byte) ((48 : UInt8)) ((57 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal (byte) ((63 : UInt8)) : Bool) then (Bool.true && Bool.true) else ((Bool.true && (Bool.true && Bool.true)) && Bool.true))))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then Bool.true else (if (LexLeanBoot.AxiomOutput.inRange (byte) ((48 : UInt8)) ((57 : UInt8))) then Bool.true else (if (_root_.LexLeanRuntime.equal (byte) ((63 : UInt8)) : Bool) then Bool.true else (_root_.LexLeanRuntime.equal (byte) ((39 : UInt8)) : Bool))))) (LexLeanBoot.AxiomOutput.isFirst (byte)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_6 (byte))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal (byte) ((63 : UInt8)) : Bool) then (Bool.true && Bool.true) else ((Bool.true && (Bool.true && Bool.true)) && Bool.true))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then Bool.true else (if (_root_.LexLeanRuntime.equal (byte) ((63 : UInt8)) : Bool) then Bool.true else (_root_.LexLeanRuntime.equal (byte) ((39 : UInt8)) : Bool)))) (LexLeanBoot.AxiomOutput.inRange (byte) ((48 : UInt8)) ((57 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_8 (byte) ((48 : UInt8)) ((57 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else ((Bool.true && (Bool.true && Bool.true)) && Bool.true))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then Bool.true else (_root_.LexLeanRuntime.equal (byte) ((39 : UInt8)) : Bool))) (_root_.LexLeanRuntime.equal (byte) ((63 : UInt8)) : Bool) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_u8 byte (63 : UInt8))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_u8 byte (39 : UInt8))))))))) + +def __fits_5 (mode : Nat) (byte : UInt8) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq mode (2 : Nat)) then Bool.true else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal (byte) ((46 : UInt8)) : Bool) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq mode (1 : Nat)) then Bool.true else Bool.true)) else (((Bool.true && Bool.true) && (__fits_6 (byte))) && (if (LexLeanBoot.AxiomOutput.isFirst (byte)) then Bool.true else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq mode (1 : Nat)) then (((Bool.true && Bool.true) && (__fits_7 (byte))) && (if (LexLeanBoot.AxiomOutput.isLater (byte)) then Bool.true else Bool.true)) else Bool.true)))))))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.isFirst LexLeanBoot.AxiomOutput.isLater in +theorem __rel_5 (mode : Nat) (byte : UInt8) : _root_.LexLeanPreservation.FunRel __prog 5 [(_root_.LexLeanTarget.TargetSyntax.Value.nat mode), (_root_.LexLeanTarget.TargetSyntax.Value.u8 byte)] (_root_.LexLeanPreservation.Rel (__fits_5 mode byte) (_root_.LexLeanTarget.TargetSyntax.Value.nat (LexLeanBoot.AxiomOutput.nameMode mode byte))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal (byte) ((46 : UInt8)) : Bool) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq mode (1 : Nat)) then Bool.true else Bool.true)) else (((Bool.true && Bool.true) && (__fits_6 (byte))) && (if (LexLeanBoot.AxiomOutput.isFirst (byte)) then Bool.true else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq mode (1 : Nat)) then (((Bool.true && Bool.true) && (__fits_7 (byte))) && (if (LexLeanBoot.AxiomOutput.isLater (byte)) then Bool.true else Bool.true)) else Bool.true)))))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (2 : Nat) else (if (_root_.LexLeanRuntime.equal (byte) ((46 : UInt8)) : Bool) then (if (Nat.beq mode (1 : Nat)) then (0 : Nat) else (2 : Nat)) else (if (LexLeanBoot.AxiomOutput.isFirst (byte)) then (1 : Nat) else (if (Nat.beq mode (1 : Nat)) then (if (LexLeanBoot.AxiomOutput.isLater (byte)) then (1 : Nat) else (2 : Nat)) else (2 : Nat)))))) (Nat.beq mode (2 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq mode (2 : Nat))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq mode (1 : Nat)) then Bool.true else Bool.true)) else (((Bool.true && Bool.true) && (__fits_6 (byte))) && (if (LexLeanBoot.AxiomOutput.isFirst (byte)) then Bool.true else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq mode (1 : Nat)) then (((Bool.true && Bool.true) && (__fits_7 (byte))) && (if (LexLeanBoot.AxiomOutput.isLater (byte)) then Bool.true else Bool.true)) else Bool.true)))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (if (Nat.beq mode (1 : Nat)) then (0 : Nat) else (2 : Nat)) else (if (LexLeanBoot.AxiomOutput.isFirst (byte)) then (1 : Nat) else (if (Nat.beq mode (1 : Nat)) then (if (LexLeanBoot.AxiomOutput.isLater (byte)) then (1 : Nat) else (2 : Nat)) else (2 : Nat))))) (_root_.LexLeanRuntime.equal (byte) ((46 : UInt8)) : Bool) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_u8 byte (46 : UInt8))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (0 : Nat) else (2 : Nat))) (Nat.beq mode (1 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq mode (1 : Nat))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => _root_.LexLeanPreservation.conv_value))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq mode (1 : Nat)) then (((Bool.true && Bool.true) && (__fits_7 (byte))) && (if (LexLeanBoot.AxiomOutput.isLater (byte)) then Bool.true else Bool.true)) else Bool.true)))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (1 : Nat) else (if (Nat.beq mode (1 : Nat)) then (if (LexLeanBoot.AxiomOutput.isLater (byte)) then (1 : Nat) else (2 : Nat)) else (2 : Nat)))) (LexLeanBoot.AxiomOutput.isFirst (byte)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_6 (byte))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && (__fits_7 (byte))) && (if (LexLeanBoot.AxiomOutput.isLater (byte)) then Bool.true else Bool.true)) else Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (if (LexLeanBoot.AxiomOutput.isLater (byte)) then (1 : Nat) else (2 : Nat)) else (2 : Nat))) (Nat.beq mode (1 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq mode (1 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (1 : Nat) else (2 : Nat))) (LexLeanBoot.AxiomOutput.isLater (byte)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_7 (byte))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => _root_.LexLeanPreservation.conv_value))) (fun _ => _root_.LexLeanPreservation.conv_value)))))))) + +def __fits_3 (subject : ByteArray) (state : (Prod Nat Nat)) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (state).2 (2 : Nat)) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && (__fits_4 (subject) ((state).1))) && (match (LexLeanBoot.Text.byteAt (subject) ((state).1)) with | Option.some byte => ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((state).1 + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (__fits_5 ((state).2) (byte))) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (Bool.true && Bool.true))))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.nameMode LexLeanBoot.Text.byteAt in +theorem __rel_3 (subject : ByteArray) (state : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 3 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) state)] (_root_.LexLeanPreservation.Rel (__fits_3 subject state) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (LexLeanBoot.AxiomOutput.nameStep subject state))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && (__fits_4 (subject) ((state).1))) && (match (LexLeanBoot.Text.byteAt (subject) ((state).1)) with | Option.some byte => ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((state).1 + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (__fits_5 ((state).2) (byte))) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (Bool.true && Bool.true))))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (if __b then (Option.none : (Option (Prod Nat Nat))) else (match (LexLeanBoot.Text.byteAt (subject) ((state).1)) with | Option.some byte => (Option.some ((((state).1 + (1 : Nat)), (LexLeanBoot.AxiomOutput.nameMode ((state).2) (byte)))) : (Option (Prod Nat Nat))) | Option.none => (Option.none : (Option (Prod Nat Nat)))))) (Nat.beq (state).2 (2 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (state).2 (2 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) (fun _ => (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u8) (fun (__a : (Option UInt8)) => (match __a with | Option.some byte => ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((state).1 + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (__fits_5 ((state).2) (byte))) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option UInt8)) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (match __a with | Option.some byte => (Option.some ((((state).1 + (1 : Nat)), (LexLeanBoot.AxiomOutput.nameMode ((state).2) (byte)))) : (Option (Prod Nat Nat))) | Option.none => (Option.none : (Option (Prod Nat Nat))))) (LexLeanBoot.Text.byteAt (subject) ((state).1)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil)) (__rel_4 (subject) ((state).1))) (fun (__a : (Option UInt8)) _ => match __a with | Option.some byte => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (state).1 (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_5 ((state).2) (byte))) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))) + +def __fits_2 (raw : ByteArray) (state : (Prod Nat Nat)) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && (__fits_3 (raw) (state))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.nameStep in +theorem __rel_2 (raw : ByteArray) (state : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 2 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes raw), ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) state)] (_root_.LexLeanPreservation.Rel (__fits_2 raw state) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) ((LexLeanBoot.AxiomOutput.nameStep (raw) (state))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_3 (raw) (state))) + +def __fits_0 (raw : ByteArray) : Bool := + (((((Bool.true && Bool.true) && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (raw) : Nat) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : (Prod Nat Nat)) => __fits_2 (raw) __p0) ((fun (state : (Prod Nat Nat)) => (LexLeanBoot.AxiomOutput.nameStep (raw) (state)))) ((_root_.LexLeanRuntime.length (raw) : Nat)) (((0 : Nat), (0 : Nat))))) && (Bool.true && Bool.true)) && Bool.true) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.nameStep in +theorem __rel_0 (raw : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes raw)] (_root_.LexLeanPreservation.Rel (__fits_0 raw) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanBoot.AxiomOutput.isClosedLeanName raw))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes raw)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterateUntil (es := (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (_root_.LexLeanPreservation.optEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) ((fun (state : (Prod Nat Nat)) => (LexLeanBoot.AxiomOutput.nameStep (raw) (state)))) (fun (__p0 : (Prod Nat Nat)) => __fits_2 (raw) __p0) 2 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes raw)] (fun (__p0 : (Prod Nat Nat)) => __rel_2 (raw) __p0) (_root_.LexLeanCollections.iterateUntil ((fun (state : (Prod Nat Nat)) => (LexLeanBoot.AxiomOutput.nameStep (raw) (state))))) (fun _ => rfl) (fun _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (p := __prog) (fi := 1) (ts := (.pair .nat .nat)) rfl ((_root_.LexLeanRuntime.length (raw) : Nat)) (((0 : Nat), (0 : Nat))))))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (((_root_.LexLeanCollections.iterateUntil ((fun (state : (Prod Nat Nat)) => (LexLeanBoot.AxiomOutput.nameStep (raw) (state)))) ((_root_.LexLeanRuntime.length (raw) : Nat)) (((0 : Nat), (0 : Nat))) : (Prod (Prod Nat Nat) Bool))).1).2 (1 : Nat))) + +def denote (raw : ByteArray) : _root_.LexLeanPreservation.Obs := + _root_.cond (__fits_0 raw) (_root_.LexLeanPreservation.Obs.value ((_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanBoot.AxiomOutput.isClosedLeanName raw)))) _root_.LexLeanPreservation.Obs.overflow + +theorem root (raw : ByteArray) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes raw)] (_root_.LexLeanPreservation.Rel (__fits_0 raw) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanBoot.AxiomOutput.isClosedLeanName raw))) := + _root_.LexLeanPreservation.run_of_funRel (__rel_0 raw) + +end LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0 diff --git a/bootstrap/expected/verify/preserve/LexLeanPreserve/C5ba510b7049a3e59c5f1ffb1f0a6611d/R0/Compose/RustStd.lex.tex b/bootstrap/expected/verify/preserve/LexLeanPreserve/C5ba510b7049a3e59c5f1ffb1f0a6611d/R0/Compose/RustStd.lex.tex new file mode 100644 index 000000000..4879ae99b --- /dev/null +++ b/bootstrap/expected/verify/preserve/LexLeanPreserve/C5ba510b7049a3e59c5f1ffb1f0a6611d/R0/Compose/RustStd.lex.tex @@ -0,0 +1,419 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0, + LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.Compose.RustStd.root : @827 := @828 { + all: [LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.RustStd.program +@1 := LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.RustStd.krate +@2 := LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.RustStd.flags +@3 := ByteArray +@4 := #1 +@5 := LexLeanTarget.TargetSyntax.Value.bytes +@6 := @5 @4 +@7 := LexLeanTarget.TargetSyntax.Ty.bytes +@8 := LexLeanTarget.TargetSyntax.Program +@9 := LexLeanPreservation.Rust.RCrate +@10 := LexLeanPreservation.Rust.Flags +@11 := LexLeanPreservation.Rust.WT +@12 := #3 +@13 := @11 @12 +@14 := #2 +@16 := @13 @14 @4 +@17 := #0 +@18 := @5 @17 +@24 := {p : @8} -> {c : @9} -> {A : @10} -> (b : @3) -> @16 @18 @7 +@26 := LexLeanPreservation.Rust.wt_bytes @0 +@27 := @11 @0 +@34 := {c : @9} -> {A : @10} -> (b : @3) -> @27 @14 @4 @18 @7 +@35 := @26 @1 +@36 := @27 @1 +@41 := {A : @10} -> (b : @3) -> @36 @4 @18 @7 +@42 := @35 @2 +@43 := @36 @2 +@46 := (b : @3) -> @43 @18 @7 +@47 := @42 @4 +@49 := @43 @6 @7 +@50 := LexLeanTarget.TargetSyntax.Value +@51 := List.nil.{0} +@52 := List.cons.{0} +@53 := @51 @50 +@54 := @52 @50 +@56 := @54 @6 @53 +@57 := Nat +@60 := Prod.{0, 0} @57 @50 +@61 := 0 +@65 := Prod.mk.{0, 0} @57 @50 @61 +@66 := @65 @6 +@67 := @51 @60 +@68 := @52 @60 +@70 := @68 @66 @67 +@71 := Bool.true +@72 := LexLeanTarget.TargetSyntax.Function +@73 := LexLeanTarget.TargetSyntax.Program.functions +@74 := @73 @0 +@75 := LexLeanTarget.TargetSyntax.Ty +@76 := @51 @57 +@77 := @51 @75 +@78 := LexLeanTarget.TargetSyntax.Ty.unit +@79 := LexLeanTarget.TargetSyntax.Value.unit +@82 := LexLeanTarget.TargetSyntax.Expr.value @78 @79 +@87 := LexLeanTarget.TargetSyntax.Function.mk @76 @77 @78 @82 +@92 := List.getD.{0} @72 @74 @61 @87 +@96 := fun (__e_n : @57) => + LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.RustStd.root @17 @61 +@97 := LexLeanPreservation.Rust.WTL +@105 := {p : @8} -> {c : @9} -> {A : @10} -> @97 @14 @4 @17 @53 @77 +@107 := LexLeanPreservation.Rust.wtl_nil @0 +@108 := @97 @0 +@114 := {c : @9} -> {A : @10} -> @108 @4 @17 @53 @77 +@115 := @107 @1 +@116 := @108 @1 +@120 := {A : @10} -> @116 @17 @53 @77 +@121 := @115 @2 +@122 := @116 @2 +@123 := @122 @53 +@124 := @123 @77 +@125 := List.{0} +@126 := @125 @50 +@127 := @125 @75 +@128 := #6 +@129 := @11 @128 +@130 := #5 +@131 := @129 @130 +@132 := #4 +@135 := @131 @132 @12 @14 +@136 := #7 +@141 := @97 @136 @128 @130 @14 @4 +@142 := #8 +@145 := @97 @142 @136 @128 +@147 := @54 @130 @12 +@148 := @145 @147 +@149 := @52 @75 +@151 := @149 @132 @14 +@161 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {v : @50} -> {t : @75} -> {vs : @126} -> {ts : @127} -> (h : @135) -> (hs : @141) -> @148 @151 +@163 := LexLeanPreservation.Rust.wtl_cons @0 +@183 := {c : @9} -> + {A : @10} -> + {v : @50} -> + {t : @75} -> + {vs : @126} -> + {ts : @127} -> + (h : @27 @130 @132 @12 @14) -> (hs : @108 @128 @130 @14 @4) -> @108 @136 @128 @147 @151 +@184 := @163 @1 +@200 := {A : @10} -> + {v : @50} -> + {t : @75} -> + {vs : @126} -> + {ts : @127} -> (h : @36 @132 @12 @14) -> (hs : @116 @130 @14 @4) -> @116 @128 @147 @151 +@201 := @184 @2 +@203 := @43 @12 @14 +@205 := @122 @14 @4 +@213 := {v : @50} -> + {t : @75} -> {vs : @126} -> {ts : @127} -> (h : @203) -> (hs : @205) -> @122 @147 @151 +@214 := @201 @6 +@215 := @5 @132 +@217 := @43 @215 @14 +@218 := @5 @128 +@219 := @54 @218 +@227 := {t : @75} -> {vs : @126} -> {ts : @127} -> (h : @217) -> (hs : @205) -> @122 (@219 @12) @151 +@228 := @214 @7 +@229 := @5 @12 +@231 := @43 @229 @7 +@232 := @5 @130 +@233 := @54 @232 +@235 := @122 (@233 @12) +@236 := @149 @7 +@237 := @236 @14 +@242 := {vs : @126} -> {ts : @127} -> (h : @231) -> (hs : @205) -> @235 @237 +@243 := @228 @53 +@244 := @5 @14 +@246 := @43 @244 @7 +@247 := @123 @4 +@249 := @54 @215 @53 +@250 := @122 @249 +@254 := {ts : @127} -> (h : @246) -> (hs : @247) -> @250 @237 +@255 := @243 @77 +@257 := @54 @229 @53 +@258 := @122 @257 +@259 := @236 @77 +@262 := (h : @49) -> (hs : @124) -> @258 @259 +@263 := @255 @47 +@265 := @54 @244 @53 +@266 := @122 @265 +@268 := (hs : @124) -> @266 @259 +@269 := @263 @121 +@270 := @122 @56 +@271 := @270 @259 +@272 := LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.denote +@273 := @272 @4 +@274 := LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.__fits_0 +@275 := @274 @4 +@277 := LexLeanBoot.AxiomOutput.isClosedLeanName @4 +@279 := LexLeanTarget.TargetSyntax.Value.bool @277 +@281 := LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.root @4 +@282 := Bool +@283 := Ne.{1} +@284 := LexLeanPreservation.Obs +@285 := @283 @284 +@286 := LexLeanPreservation.Rel +@289 := @285 (@286 @4 @17) +@290 := LexLeanPreservation.Obs.stuck +@293 := (f : @282) -> (v : @50) -> @289 @290 +@295 := LexLeanPreservation.Rust.rel_ne_stuck @275 +@301 := (v : @50) -> @285 (@286 (@274 @14) @17) @290 +@302 := @295 @279 +@306 := @285 (@286 @275 @279) @290 +@307 := @125 @60 +@308 := LexLeanPreservation.Rust.FunSem +@309 := #9 +@315 := (n : @57) -> @308 @309 @142 @136 @17 @128 +@316 := Eq.{1} +@317 := Option.{0} +@318 := @317 @72 +@319 := @316 @318 +@326 := LexLeanRuntime.index (@125 @72) @72 (LexLeanRuntime.instIndexableList @72) +@330 := @319 (@326 (@73 @309) @128) +@331 := Option.some.{0} +@332 := @331 @72 +@333 := @332 @130 +@334 := @330 @333 +@335 := #10 +@339 := @97 @335 @309 @142 @130 +@340 := LexLeanTarget.TargetSyntax.Function.types +@341 := @340 @128 +@342 := @339 @341 +@343 := @317 @307 +@344 := @316 @343 +@345 := LexLeanTarget.TargetSemantics.bindAll +@346 := LexLeanTarget.TargetSyntax.Function.parameters +@351 := @344 (@345 (@346 @136) @128 @67) +@352 := @331 @307 +@353 := @352 @130 +@354 := @351 @353 +@355 := @317 @282 +@356 := @316 @355 +@357 := LexLeanPreservation.Rust.fnFallible +@358 := #11 +@361 := @356 (@357 @358 @309) +@362 := @331 @282 +@363 := @362 @130 +@364 := @361 @363 +@365 := LexLeanPreservation.RunConv +@366 := #13 +@370 := @365 @366 @335 @142 @130 +@372 := @285 @128 @290 +@373 := Exists.{1} +@374 := LexLeanPreservation.Rust.ROut +@375 := @373 @374 +@376 := And +@377 := LexLeanPreservation.Rust.RealizesFn +@381 := @376 (@377 @309 @142 @17) +@382 := LexLeanPreservation.Rust.RCI +@384 := @382 #15 +@385 := LexLeanPreservation.Rust.fnIdent +@386 := @385 @366 +@393 := (hne : @372) -> @375 (fun (ro : @374) => @381 (@384 @386 @358 @17)) +@408 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {f : @57} -> + {fn : @72} -> + {args : @126} -> + {env : @307} -> + {F : @282} -> + {o : @284} -> + (hB : @315) -> + (hfn : @334) -> (hwt : @342) -> (hbind : @354) -> (hF : @364) -> (hA : @370) -> @393 +@410 := LexLeanPreservation.Rust.compose @0 +@411 := @308 @0 +@416 := (n : @57) -> @411 @142 @136 @17 @128 +@417 := @326 @74 +@420 := @319 (@417 @128) @333 +@424 := @108 @309 @142 @130 @341 +@425 := @365 @0 +@428 := @425 @335 @142 @130 +@442 := {c : @9} -> + {A : @10} -> + {f : @57} -> + {fn : @72} -> + {args : @126} -> + {env : @307} -> + {F : @282} -> + {o : @284} -> + (hB : @416) -> + (hfn : @420) -> (hwt : @424) -> (hbind : @354) -> (hF : @364) -> (hA : @428) -> @393 +@443 := @410 @1 +@444 := @411 @1 +@448 := (n : @57) -> @444 @136 @17 @128 +@451 := @116 @142 @130 @341 +@452 := @357 @1 +@455 := @356 (@452 @309) @363 +@456 := @382 @1 +@466 := (hbind : @354) -> + (hF : @455) -> (hA : @428) -> (hne : @372) -> @375 (fun (ro : @374) => @381 (@456 @386 @358 @17)) +@476 := {A : @10} -> + {f : @57} -> + {fn : @72} -> + {args : @126} -> + {env : @307} -> {F : @282} -> {o : @284} -> (hB : @448) -> (hfn : @420) -> (hwt : @451) -> @466 +@477 := @443 @2 +@479 := @444 @2 @17 +@481 := (n : @57) -> @479 @128 +@482 := @122 @130 +@483 := @482 @341 +@492 := {f : @57} -> + {fn : @72} -> + {args : @126} -> + {env : @307} -> {F : @282} -> {o : @284} -> (hB : @481) -> (hfn : @420) -> (hwt : @483) -> @466 +@493 := @477 @61 +@495 := (n : @57) -> @479 @61 +@496 := @417 @61 +@497 := @319 @496 +@498 := @497 @333 +@499 := @452 @61 +@500 := @356 @499 +@501 := @500 @363 +@502 := @425 @61 +@504 := @502 @142 @130 +@506 := @456 (@385 @61) +@514 := (hF : @501) -> (hA : @504) -> (hne : @372) -> @375 (fun (ro : @374) => @381 (@506 @358 @17)) +@523 := {fn : @72} -> + {args : @126} -> + {env : @307} -> + {F : @282} -> {o : @284} -> (hB : @495) -> (hfn : @498) -> (hwt : @483) -> (hbind : @354) -> @514 +@524 := @493 @92 +@526 := @497 (@332 @92) +@527 := @340 @92 +@528 := @482 @527 +@530 := @345 (@346 @92) +@542 := {args : @126} -> + {env : @307} -> + {F : @282} -> + {o : @284} -> + (hB : @495) -> (hfn : @526) -> (hwt : @528) -> (hbind : @344 (@530 @128 @67) @353) -> @514 +@543 := @524 @56 +@544 := @219 @53 +@546 := @122 @544 @527 +@549 := @54 (@5 @136) @53 +@553 := @344 (@530 @549 @67) @353 +@556 := @54 (@5 @309) @53 +@577 := {env : @307} -> + {F : @282} -> + {o : @284} -> + (hB : @495) -> + (hfn : @526) -> + (hwt : @546) -> + (hbind : @553) -> + (hF : @501) -> + (hA : @502 @556 @130) -> + (hne : @372) -> @375 (fun (ro : @374) => @381 (@506 (@54 (@5 #12) @53) @17)) +@578 := @543 @70 +@579 := @233 @53 +@581 := @122 @579 @527 +@589 := @344 (@530 @544 @67) (@352 (@68 (@65 @218) @67)) +@592 := @54 (@5 @142) @53 +@611 := {F : @282} -> + {o : @284} -> + (hB : @495) -> + (hfn : @526) -> + (hwt : @581) -> + (hbind : @589) -> + (hF : @501) -> + (hA : @502 @592 @130) -> + (hne : @372) -> @375 (fun (ro : @374) => @381 (@506 (@54 (@5 @358) @53) @17)) +@612 := @578 @71 +@613 := @250 @527 +@621 := @344 (@530 @579 @67) (@352 (@68 (@65 @232) @67)) +@623 := @500 (@362 @71) +@625 := @502 @549 @130 +@626 := @377 @71 +@645 := {o : @284} -> + (hB : @495) -> + (hfn : @526) -> + (hwt : @613) -> + (hbind : @621) -> + (hF : @623) -> + (hA : @625) -> + (hne : @372) -> @375 (fun (ro : @374) => @376 (@626 @142 @17) (@506 (@54 (@5 @335) @53) @17)) +@646 := @612 @273 +@647 := @258 @527 +@655 := @344 (@530 @249 @67) (@352 (@68 (@65 @215) @67)) +@656 := @502 @544 +@657 := @272 @128 +@658 := @656 @657 +@659 := @272 @136 +@677 := (hB : @495) -> + (hfn : @526) -> + (hwt : @647) -> + (hbind : @655) -> + (hF : @623) -> + (hA : @658) -> + (hne : @285 @659 @290) -> @375 (fun (ro : @374) => @376 (@626 (@272 @309) @17) (@506 @556 @17)) +@678 := @646 @96 +@679 := @266 @527 +@687 := @344 (@530 @257 @67) (@352 (@68 (@65 @229) @67)) +@688 := @502 @579 +@689 := @272 @130 +@707 := (hfn : @526) -> + (hwt : @679) -> + (hbind : @687) -> + (hF : @623) -> + (hA : @688 @689) -> + (hne : @285 @657 @290) -> @375 (fun (ro : @374) => @376 (@626 (@272 @142) @17) (@506 @592 @17)) +@708 := Eq.refl.{1} +@711 := @678 (@708 @318 @496) +@712 := @270 @527 +@720 := @344 (@530 @265 @67) (@352 (@68 (@65 @244) @67)) +@721 := @502 @249 +@722 := @272 @132 +@738 := (hwt : @712) -> + (hbind : @720) -> + (hF : @623) -> + (hA : @721 @722) -> + (hne : @285 @689 @290) -> @375 (fun (ro : @374) => @376 (@626 @659 @17) (@506 @549 @17)) +@739 := @711 @269 +@741 := @530 @56 @67 +@744 := @344 @741 (@352 @70) +@745 := @502 @257 +@746 := @272 @12 +@761 := (hbind : @744) -> + (hF : @623) -> + (hA : @745 @746) -> + (hne : @285 @722 @290) -> @375 (fun (ro : @374) => @376 (@626 @657 @17) (@506 @544 @17)) +@764 := @739 (@708 @343 @741) +@765 := @502 @265 +@766 := @272 @14 +@780 := (hF : @623) -> + (hA : @765 @766) -> + (hne : @285 @746 @290) -> @375 (fun (ro : @374) => @376 (@626 @689 @17) (@506 @579 @17)) +@783 := @764 (@708 @355 @499) +@797 := (hA : @502 @56 @273) -> + (hne : @285 @766 @290) -> @375 (fun (ro : @374) => @376 (@626 @722 @17) (@506 @249 @17)) +@798 := @783 @281 +@809 := (hne : @285 @273 @290) -> @375 (fun (ro : @374) => @376 (@626 @746 @17) (@506 @257 @17)) +@810 := @798 @302 +@816 := @376 (@626 @766 @17) (@506 @265 @17) +@818 := @375 (fun (ro : @374) => @816) +@820 := @375 (fun (__e_ro : @374) => @816) +@824 := LexLeanPreservation.Rust.RepresentableL (@54 @18 @53) +@825 := (__e_hrep : @824) -> @820 +@826 := fun (__e_hrep : @824) => @810 +@827 := (raw : @3) -> @825 +@828 := fun (raw : @3) => @826 +\end{coremodule} +\end{lexlean} diff --git a/bootstrap/expected/verify/preserve/LexLeanPreserve/C5ba510b7049a3e59c5f1ffb1f0a6611d/R0/RustStd.lean b/bootstrap/expected/verify/preserve/LexLeanPreserve/C5ba510b7049a3e59c5f1ffb1f0a6611d/R0/RustStd.lean new file mode 100644 index 000000000..e18a8295c --- /dev/null +++ b/bootstrap/expected/verify/preserve/LexLeanPreserve/C5ba510b7049a3e59c5f1ffb1f0a6611d/R0/RustStd.lean @@ -0,0 +1,99 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0], types := [.bytes], result := .bool, + body := (.prim .natEq [(.second (.first (.call 1 [(.closure 2 [(.var 0)]), (.prim .length [(.var 0)]), (.build .pair (.pair .nat .nat) [(.value .nat (.nat 0)), (.value .nat (.nat 0))])]))), (.value .nat (.nat 1))]) }, + { parameters := [0, 1, 2], types := [(.fn [(.pair .nat .nat)] (.option (.pair .nat .nat))), .nat, (.pair .nat .nat)], result := (.pair (.pair .nat .nat) .bool), + body := (.«match» (.pair (.pair .nat .nat) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.pair .nat .nat) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.pair .nat .nat) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.pair .nat .nat) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 1 [(.var 0), (.var 3), (.var 4)]))]))]) }, + { parameters := [0, 1], types := [.bytes, (.pair .nat .nat)], result := (.option (.pair .nat .nat)), + body := (.call 3 [(.var 0), (.var 1)]) }, + { parameters := [0, 1], types := [.bytes, (.pair .nat .nat)], result := (.option (.pair .nat .nat)), + body := (.cond (.prim .natEq [(.second (.var 1)), (.value .nat (.nat 2))]) (.build .none (.option (.pair .nat .nat)) []) (.«match» (.option (.pair .nat .nat)) (.call 4 [(.var 0), (.first (.var 1))]) [(.arm .some [2] (.build .some (.option (.pair .nat .nat)) [(.build .pair (.pair .nat .nat) [(.prim .natAdd [(.first (.var 1)), (.value .nat (.nat 1))]), (.call 5 [(.second (.var 1)), (.var 2)])])])), (.arm .none [] (.build .none (.option (.pair .nat .nat)) []))])) }, + { parameters := [0, 1], types := [.bytes, .nat], result := (.option (.fixed .u8)), + body := (.prim .index [(.var 0), (.var 1)]) }, + { parameters := [0, 1], types := [.nat, (.fixed .u8)], result := .nat, + body := (.cond (.prim .natEq [(.var 0), (.value .nat (.nat 2))]) (.value .nat (.nat 2)) (.cond (.prim .equal [(.var 1), (.value (.fixed .u8) (.u8 46))]) (.cond (.prim .natEq [(.var 0), (.value .nat (.nat 1))]) (.value .nat (.nat 0)) (.value .nat (.nat 2))) (.cond (.call 6 [(.var 1)]) (.value .nat (.nat 1)) (.cond (.prim .natEq [(.var 0), (.value .nat (.nat 1))]) (.cond (.call 7 [(.var 1)]) (.value .nat (.nat 1)) (.value .nat (.nat 2))) (.value .nat (.nat 2)))))) }, + { parameters := [0], types := [(.fixed .u8)], result := .bool, + body := (.cond (.call 8 [(.var 0), (.value (.fixed .u8) (.u8 65)), (.value (.fixed .u8) (.u8 90))]) (.build .true .bool []) (.cond (.call 8 [(.var 0), (.value (.fixed .u8) (.u8 97)), (.value (.fixed .u8) (.u8 122))]) (.build .true .bool []) (.prim .equal [(.var 0), (.value (.fixed .u8) (.u8 95))]))) }, + { parameters := [0], types := [(.fixed .u8)], result := .bool, + body := (.cond (.call 6 [(.var 0)]) (.build .true .bool []) (.cond (.call 8 [(.var 0), (.value (.fixed .u8) (.u8 48)), (.value (.fixed .u8) (.u8 57))]) (.build .true .bool []) (.cond (.prim .equal [(.var 0), (.value (.fixed .u8) (.u8 63))]) (.build .true .bool []) (.prim .equal [(.var 0), (.value (.fixed .u8) (.u8 39))])))) }, + { parameters := [0, 1, 2], types := [(.fixed .u8), (.fixed .u8), (.fixed .u8)], result := .bool, + body := (.«match» .bool (.prim .checkedSub [(.var 0), (.var 1)]) [(.arm .some [3] (.«match» .bool (.prim .checkedSub [(.var 2), (.var 0)]) [(.arm .some [4] (.build .true .bool [])), (.arm .none [] (.build .false .bool []))])), (.arm .none [] (.build .false .bool []))]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.enum (.fn 0) [{ number := 2, fields := [.bytes] }]), + (.apply 0 [(.pair .nat .nat)] (.option (.pair .nat .nat)) true [{ function := 2, captures := [.clone], functionFallible := true }]), + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] (.fallible .bool) (.mk [(.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 1))]) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.call (.function 1) [(.construct (.closure 0 2) [(.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 3))] false))), (.pair (.lit (.nat 0)) (.lit (.nat 0)))] true))] (.move (.generated .part 2)))))] (.move (.generated .part 1))))), (.mk (.bind (.generated .operand 5)) none (.lit (.nat 1)))] (.succeed (.call (.runtime .natEq) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false)))), + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := (.pair .nat .nat) }] (.fallible (.pair (.pair .nat .nat) .bool)) (.mk [(.mk (.bind (.generated .holder 6)) none (.copy (.generated .binding 1)))] (.cond (.isZero (.generated .holder 6)) (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 6))), (.mk (.bind (.generated .holder 8)) none (.block (.mk [(.mk (.bind (.generated .callee 7)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 7) [(.copy (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 8)) [(.mk .none (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 1) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)))]))))), + (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := (.pair .nat .nat) }] (.fallible (.option (.pair .nat .nat))) (.mk [] (.call (.function 3) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false))), + (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := (.pair .nat .nat) }] (.fallible (.option (.pair .nat .nat))) (.mk [(.mk (.bind (.generated .operand 10)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 9))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 9))))), (.mk (.bind (.generated .operand 11)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false) (.mk [] (.succeed (.construct (.none (.pair .nat .nat)) []))) (.mk [(.mk (.bind (.generated .holder 13)) none (.call (.function 4) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 12)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 12))))] false))] (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [] (.succeed (.construct (.none (.pair .nat .nat)) [])))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 14))))), (.mk (.bind (.generated .operand 16)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] true))) (.call (.function 5) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 17))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 17)))), (.copy (.generated .binding 2))] false))]))))]))))), + (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.option (.fixed .u8)) (.mk [(.mk (.bind (.generated .operand 18)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 19)) none (.copy (.generated .binding 1)))] (.call (.runtime .indexBytes) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false))), + (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := (.fixed .u8) }] .nat (.mk [(.mk (.bind (.generated .operand 20)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 21)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 20)), (.move (.generated .operand 21))] false) (.mk [] (.lit (.nat 2))) (.mk [(.mk (.bind (.generated .operand 22)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 23)) none (.lit (.fixed .u8 46)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 22)), (.move (.generated .operand 23))] false) (.mk [(.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 25)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 24)), (.move (.generated .operand 25))] false) (.mk [] (.lit (.nat 0))) (.mk [] (.lit (.nat 2))))) (.mk [] (.cond (.call (.function 6) [(.copy (.generated .binding 1))] false) (.mk [] (.lit (.nat 1))) (.mk [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] false) (.mk [] (.cond (.call (.function 7) [(.copy (.generated .binding 1))] false) (.mk [] (.lit (.nat 1))) (.mk [] (.lit (.nat 2))))) (.mk [] (.lit (.nat 2)))))))))))), + (.function (.generated .function 6) [{ pattern := (.bind (.generated .binding 0)), type := (.fixed .u8) }] .bool (.mk [] (.cond (.call (.function 8) [(.copy (.generated .binding 0)), (.lit (.fixed .u8 65)), (.lit (.fixed .u8 90))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 8) [(.copy (.generated .binding 0)), (.lit (.fixed .u8 97)), (.lit (.fixed .u8 122))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 28)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 29)) none (.lit (.fixed .u8 95)))] (.call (.runtime .equal) [(.move (.generated .operand 28)), (.move (.generated .operand 29))] false))))))), + (.function (.generated .function 7) [{ pattern := (.bind (.generated .binding 0)), type := (.fixed .u8) }] .bool (.mk [] (.cond (.call (.function 6) [(.copy (.generated .binding 0))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 8) [(.copy (.generated .binding 0)), (.lit (.fixed .u8 48)), (.lit (.fixed .u8 57))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 30)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 31)) none (.lit (.fixed .u8 63)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 33)) none (.lit (.fixed .u8 39)))] (.call (.runtime .equal) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] false))))))))), + (.function (.generated .function 8) [{ pattern := (.bind (.generated .binding 0)), type := (.fixed .u8) }, { pattern := (.bind (.generated .binding 1)), type := (.fixed .u8) }, { pattern := (.bind (.generated .binding 2)), type := (.fixed .u8) }] .bool (.mk [(.mk (.bind (.generated .holder 36)) none (.block (.mk [(.mk (.bind (.generated .operand 34)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 35)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedSub .u8)) [(.move (.generated .operand 34)), (.move (.generated .operand 35))] false))))] (.matchOn (.move (.generated .holder 36)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some .wild) (.mk [(.mk (.bind (.generated .holder 39)) none (.block (.mk [(.mk (.bind (.generated .operand 37)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 38)) none (.copy (.generated .binding 0)))] (.call (.runtime (.checkedSub .u8)) [(.move (.generated .operand 37)), (.move (.generated .operand 38))] false))))] (.matchOn (.move (.generated .holder 39)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some .wild) (.mk [] (.lit (.bool true))))])))])))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [(([(.pair .nat .nat)], (.option (.pair .nat .nat))), true)] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 1))]) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.call (.function 1) [(.construct (.closure 0 2) [(.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 3))] false))), (.pair (.lit (.nat 0)) (.lit (.nat 0)))] true))] (.move (.generated .part 2)))))] (.move (.generated .part 1))))), (.mk (.bind (.generated .operand 5)) none (.lit (.nat 1)))], (.succeed (.call (.runtime .natEq) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false)), [(0, .bytes, (some 0))], rfl, rfl, + (Corr.fOfB (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 1))]) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.call (.function 1) [(.construct (.closure 0 2) [(.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 3))] false))), (.pair (.lit (.nat 0)) (.lit (.nat 0)))] true))] (.move (.generated .part 2)))))]) (tail := (.move (.generated .part 1))) (Corr.second (ta := .nat) (tb := .nat) (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.call (.function 1) [(.construct (.closure 0 2) [(.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 3))] false))), (.pair (.lit (.nat 0)) (.lit (.nat 0)))] true))]) (tail := (.move (.generated .part 2))) (Corr.first (ta := (.pair .nat .nat)) (tb := .bool) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.pair .nat .nat)] (.option (.pair .nat .nat))), .nat, (.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [.bytes]) (mask := [false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 3)) none (.move (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 3))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl)) rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl))⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 6)) none (.copy (.generated .binding 1)))], (.cond (.isZero (.generated .holder 6)) (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 6))), (.mk (.bind (.generated .holder 8)) none (.block (.mk [(.mk (.bind (.generated .callee 7)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 7) [(.copy (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 8)) [(.mk .none (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 1) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)))]))), [(2, (.pair .nat .nat), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.pair .nat .nat)] (.option (.pair .nat .nat))), (some 0))], rfl, rfl, + (Corr.matchNat (sl := (some 3)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool false))))) (lb := [(.mk (.bind (.generated .holder 8)) none (.block (.mk [(.mk (.bind (.generated .callee 7)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 7) [(.copy (.generated .binding 2))] true))))]) (tb := (.matchOn (.move (.generated .holder 8)) [(.mk .none (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 1) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)))])) (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))))) (Corr.matchArms (st := (.option (.pair .nat .nat))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 7)) (some (.fn 0)) (.clone (.generated .binding 0)))]) (tail := (.apply (.generated .callee 7) [(.copy (.generated .binding 2))] true)) (Corr.apply (ps := [(.pair .nat .nat)]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (2, (.pair .nat .nat), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.pair .nat .nat)] (.option (.pair .nat .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true))))) (Corr.mCons (Γ' := [(4, (.pair .nat .nat), (some 4)), (3, .nat, (some 3)), (2, (.pair .nat .nat), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.pair .nat .nat)] (.option (.pair .nat .nat))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 1) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.pair .nat .nat)] (.option (.pair .nat .nat))), .nat, (.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))))))) rfl rfl rfl)))⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 3) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false), [(1, (.pair .nat .nat), (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.callF (ts := [.bytes, (.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)⟩⟩ + +theorem fun3 : FunOK program krate flags 3 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 10)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 9))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 9))))), (.mk (.bind (.generated .operand 11)) none (.lit (.nat 2)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false) (.mk [] (.succeed (.construct (.none (.pair .nat .nat)) []))) (.mk [(.mk (.bind (.generated .holder 13)) none (.call (.function 4) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 12)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 12))))] false))] (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [] (.succeed (.construct (.none (.pair .nat .nat)) [])))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 14))))), (.mk (.bind (.generated .operand 16)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] true))) (.call (.function 5) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 17))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 17)))), (.copy (.generated .binding 2))] false))]))))]))), [(1, (.pair .nat .nat), (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 10)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 9))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 9))))), (.mk (.bind (.generated .operand 11)) none (.lit (.nat 2)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 9))]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 9))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct (.none (.pair .nat .nat)) []))) (lb := [(.mk (.bind (.generated .holder 13)) none (.call (.function 4) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 12)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 12))))] false))]) (tb := (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [] (.succeed (.construct (.none (.pair .nat .nat)) [])))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 14))))), (.mk (.bind (.generated .operand 16)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] true))) (.call (.function 5) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 17))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 17)))), (.copy (.generated .binding 2))] false))]))))])) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.matchArms (st := (.option (.fixed .u8))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 12)), .wild]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 12))) (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.pair .nat .nat), (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.construct (.none (.pair .nat .nat)) []))) (Corr.mCons (Γ' := [(2, (.fixed .u8), (some 2)), (1, (.pair .nat .nat), (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 14))))), (.mk (.bind (.generated .operand 16)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] true))) (.call (.function 5) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 17))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 17)))), (.copy (.generated .binding 2))] false))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.pair .nat .nat)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 15)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 14))))), (.mk (.bind (.generated .operand 16)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 14))) (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 17))]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 17))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl)))⟩⟩ + +theorem fun4 : FunOK program krate flags 4 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 18)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 19)) none (.copy (.generated .binding 1)))], (.call (.runtime .indexBytes) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false), [(1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.prim (ts := [.bytes, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun5 : FunOK program krate flags 5 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 20)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 21)) none (.lit (.nat 2)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 20)), (.move (.generated .operand 21))] false) (.mk [] (.lit (.nat 2))) (.mk [(.mk (.bind (.generated .operand 22)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 23)) none (.lit (.fixed .u8 46)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 22)), (.move (.generated .operand 23))] false) (.mk [(.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 25)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 24)), (.move (.generated .operand 25))] false) (.mk [] (.lit (.nat 0))) (.mk [] (.lit (.nat 2))))) (.mk [] (.cond (.call (.function 6) [(.copy (.generated .binding 1))] false) (.mk [] (.lit (.nat 1))) (.mk [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] false) (.mk [] (.cond (.call (.function 7) [(.copy (.generated .binding 1))] false) (.mk [] (.lit (.nat 1))) (.mk [] (.lit (.nat 2))))) (.mk [] (.lit (.nat 2)))))))))), [(1, (.fixed .u8), (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 20)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 21)) none (.lit (.nat 2)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 20)), (.move (.generated .operand 21))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.nat 2))) (lb := [(.mk (.bind (.generated .operand 22)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 23)) none (.lit (.fixed .u8 46)))]) (tb := (.cond (.call (.runtime .equal) [(.move (.generated .operand 22)), (.move (.generated .operand 23))] false) (.mk [(.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 25)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 24)), (.move (.generated .operand 25))] false) (.mk [] (.lit (.nat 0))) (.mk [] (.lit (.nat 2))))) (.mk [] (.cond (.call (.function 6) [(.copy (.generated .binding 1))] false) (.mk [] (.lit (.nat 1))) (.mk [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] false) (.mk [] (.cond (.call (.function 7) [(.copy (.generated .binding 1))] false) (.mk [] (.lit (.nat 1))) (.mk [] (.lit (.nat 2))))) (.mk [] (.lit (.nat 2))))))))) (Corr.bOfE (Corr.value rfl rfl)) (Corr.cond (lc := [(.mk (.bind (.generated .operand 22)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 23)) none (.lit (.fixed .u8 46)))]) (ce := (.call (.runtime .equal) [(.move (.generated .operand 22)), (.move (.generated .operand 23))] false)) (lk := []) (Corr.prim (ts := [(.fixed .u8), (.fixed .u8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 25)) none (.lit (.nat 1)))]) (ta := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 24)), (.move (.generated .operand 25))] false) (.mk [] (.lit (.nat 0))) (.mk [] (.lit (.nat 2))))) (lb := []) (tb := (.cond (.call (.function 6) [(.copy (.generated .binding 1))] false) (.mk [] (.lit (.nat 1))) (.mk [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] false) (.mk [] (.cond (.call (.function 7) [(.copy (.generated .binding 1))] false) (.mk [] (.lit (.nat 1))) (.mk [] (.lit (.nat 2))))) (.mk [] (.lit (.nat 2))))))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 25)) none (.lit (.nat 1)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 24)), (.move (.generated .operand 25))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.nat 0))) (lb := []) (tb := (.lit (.nat 2))) (Corr.bOfE (Corr.value rfl rfl)) (Corr.bOfE (Corr.value rfl rfl)))) (Corr.cond (lc := []) (ce := (.call (.function 6) [(.copy (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [(.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.nat 1))) (lb := [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))]) (tb := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] false) (.mk [] (.cond (.call (.function 7) [(.copy (.generated .binding 1))] false) (.mk [] (.lit (.nat 1))) (.mk [] (.lit (.nat 2))))) (.mk [] (.lit (.nat 2))))) (Corr.bOfE (Corr.value rfl rfl)) (Corr.cond (lc := [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 7) [(.copy (.generated .binding 1))] false) (.mk [] (.lit (.nat 1))) (.mk [] (.lit (.nat 2))))) (lb := []) (tb := (.lit (.nat 2))) (Corr.cond (lc := []) (ce := (.call (.function 7) [(.copy (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [(.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.nat 1))) (lb := []) (tb := (.lit (.nat 2))) (Corr.bOfE (Corr.value rfl rfl)) (Corr.bOfE (Corr.value rfl rfl)))) (Corr.bOfE (Corr.value rfl rfl))))))))))⟩⟩ + +theorem fun6 : FunOK program krate flags 6 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 8) [(.copy (.generated .binding 0)), (.lit (.fixed .u8 65)), (.lit (.fixed .u8 90))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 8) [(.copy (.generated .binding 0)), (.lit (.fixed .u8 97)), (.lit (.fixed .u8 122))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 28)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 29)) none (.lit (.fixed .u8 95)))] (.call (.runtime .equal) [(.move (.generated .operand 28)), (.move (.generated .operand 29))] false))))), [(0, (.fixed .u8), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 8) [(.copy (.generated .binding 0)), (.lit (.fixed .u8 65)), (.lit (.fixed .u8 90))] false)) (lk := []) (Corr.callOps (ts := [(.fixed .u8), (.fixed .u8), (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := []) (tb := (.cond (.call (.function 8) [(.copy (.generated .binding 0)), (.lit (.fixed .u8 97)), (.lit (.fixed .u8 122))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 28)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 29)) none (.lit (.fixed .u8 95)))] (.call (.runtime .equal) [(.move (.generated .operand 28)), (.move (.generated .operand 29))] false)))) (Corr.bOfE (Corr.buildConst rfl)) (Corr.cond (lc := []) (ce := (.call (.function 8) [(.copy (.generated .binding 0)), (.lit (.fixed .u8 97)), (.lit (.fixed .u8 122))] false)) (lk := []) (Corr.callOps (ts := [(.fixed .u8), (.fixed .u8), (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 28)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 29)) none (.lit (.fixed .u8 95)))]) (tb := (.call (.runtime .equal) [(.move (.generated .operand 28)), (.move (.generated .operand 29))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.prim (ts := [(.fixed .u8), (.fixed .u8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)))))⟩⟩ + +theorem fun7 : FunOK program krate flags 7 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 6) [(.copy (.generated .binding 0))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 8) [(.copy (.generated .binding 0)), (.lit (.fixed .u8 48)), (.lit (.fixed .u8 57))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 30)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 31)) none (.lit (.fixed .u8 63)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 33)) none (.lit (.fixed .u8 39)))] (.call (.runtime .equal) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] false))))))), [(0, (.fixed .u8), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 6) [(.copy (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := []) (tb := (.cond (.call (.function 8) [(.copy (.generated .binding 0)), (.lit (.fixed .u8 48)), (.lit (.fixed .u8 57))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 30)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 31)) none (.lit (.fixed .u8 63)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 33)) none (.lit (.fixed .u8 39)))] (.call (.runtime .equal) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] false)))))) (Corr.bOfE (Corr.buildConst rfl)) (Corr.cond (lc := []) (ce := (.call (.function 8) [(.copy (.generated .binding 0)), (.lit (.fixed .u8 48)), (.lit (.fixed .u8 57))] false)) (lk := []) (Corr.callOps (ts := [(.fixed .u8), (.fixed .u8), (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 30)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 31)) none (.lit (.fixed .u8 63)))]) (tb := (.cond (.call (.runtime .equal) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 33)) none (.lit (.fixed .u8 39)))] (.call (.runtime .equal) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] false)))) (Corr.bOfE (Corr.buildConst rfl)) (Corr.cond (lc := [(.mk (.bind (.generated .operand 30)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 31)) none (.lit (.fixed .u8 63)))]) (ce := (.call (.runtime .equal) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] false)) (lk := []) (Corr.prim (ts := [(.fixed .u8), (.fixed .u8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 33)) none (.lit (.fixed .u8 39)))]) (tb := (.call (.runtime .equal) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.prim (ts := [(.fixed .u8), (.fixed .u8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)))))))⟩⟩ + +theorem fun8 : FunOK program krate flags 8 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 36)) none (.block (.mk [(.mk (.bind (.generated .operand 34)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 35)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedSub .u8)) [(.move (.generated .operand 34)), (.move (.generated .operand 35))] false))))], (.matchOn (.move (.generated .holder 36)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some .wild) (.mk [(.mk (.bind (.generated .holder 39)) none (.block (.mk [(.mk (.bind (.generated .operand 37)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 38)) none (.copy (.generated .binding 0)))] (.call (.runtime (.checkedSub .u8)) [(.move (.generated .operand 37)), (.move (.generated .operand 38))] false))))] (.matchOn (.move (.generated .holder 39)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some .wild) (.mk [] (.lit (.bool true))))])))]), [(2, (.fixed .u8), (some 2)), (1, (.fixed .u8), (some 1)), (0, (.fixed .u8), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option (.fixed .u8))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 34)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 35)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.checkedSub .u8)) [(.move (.generated .operand 34)), (.move (.generated .operand 35))] false)) (Corr.prim (ts := [(.fixed .u8), (.fixed .u8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(2, (.fixed .u8), (some 2)), (1, (.fixed .u8), (some 1)), (0, (.fixed .u8), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(3, (.fixed .u8), none), (2, (.fixed .u8), (some 2)), (1, (.fixed .u8), (some 1)), (0, (.fixed .u8), (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .holder 39)) none (.block (.mk [(.mk (.bind (.generated .operand 37)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 38)) none (.copy (.generated .binding 0)))] (.call (.runtime (.checkedSub .u8)) [(.move (.generated .operand 37)), (.move (.generated .operand 38))] false))))]) (tail := (.matchOn (.move (.generated .holder 39)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some .wild) (.mk [] (.lit (.bool true))))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := (.option (.fixed .u8))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 37)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 38)) none (.copy (.generated .binding 0)))]) (tail := (.call (.runtime (.checkedSub .u8)) [(.move (.generated .operand 37)), (.move (.generated .operand 38))] false)) (Corr.prim (ts := [(.fixed .u8), (.fixed .u8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.fixed .u8), none), (2, (.fixed .u8), (some 2)), (1, (.fixed .u8), (some 1)), (0, (.fixed .u8), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, (.fixed .u8), none), (3, (.fixed .u8), none), (2, (.fixed .u8), (some 2)), (1, (.fixed .u8), (some 1)), (0, (.fixed .u8), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | 3 => exact fun3 + | 4 => exact fun4 + | 5 => exact fun5 + | 6 => exact fun6 + | 7 => exact fun7 + | 8 => exact fun8 + | _ + 9 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.RustStd diff --git a/bootstrap/expected/verify/preserve/LexLeanPreserve/C5ba510b7049a3e59c5f1ffb1f0a6611d/R1.lean b/bootstrap/expected/verify/preserve/LexLeanPreserve/C5ba510b7049a3e59c5f1ffb1f0a6611d/R1.lean new file mode 100644 index 000000000..a9634a201 --- /dev/null +++ b/bootstrap/expected/verify/preserve/LexLeanPreserve/C5ba510b7049a3e59c5f1ffb1f0a6611d/R1.lean @@ -0,0 +1,840 @@ +import LexLeanPreservation.Core +import LexLeanPreservation.Values +import LexLeanPreservation.Primitives +import LexLeanPreservation.Fixed +import LexLeanPreservation.Keys +import LexLeanPreservation.Templates +import LexLeanPreservation.Validate +import LexLeanBoot.AxiomOutput +import LexLeanBoot.Text +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +set_option linter.unusedVariables false +namespace LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1 + +def __prog : _root_.LexLeanTarget.TargetSyntax.Program := + { adts := [{ constructors := [[.bytes, (.option .bytes)]] }, + { constructors := [[(.list (.adt 2)), (.list .bytes)], [(.list (.adt 2)), (.list .bytes), .bytes, (.option .bytes)], [(.adt 0)]] }, + { constructors := [[.bytes, (.list .bytes), (.option .bytes)]] }], functions := (( + { parameters := [0, 1], types := [.bytes, (.list .bytes)], result := (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), + body := (.call 1 [(.call 2 [(.closure 3 []), (.build (.adt 0) (.adt 1) [(.build .nil (.list (.adt 2)) []), (.var 1)]), (.call 4 [(.var 0)])]), (.var 1)]) }) ::( + { parameters := [0, 1], types := [(.adt 1), (.list .bytes)], result := (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), + body := (.«match» (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) (.var 0) [(.arm (.adt 2) [2] (.build .error (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) [(.var 2)])), (.arm (.adt 1) [3, 4, 5, 6] (.call 5 [(.call 6 [(.call 7 [(.value .string (.string "unterminated axiom payload: "))]), (.var 5)]), (.var 6)])), (.arm (.adt 0) [7, 8] (.«let» 9 (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) (.call 5 [(.call 6 [(.call 6 [(.call 6 [(.call 7 [(.value .string (.string "expected "))]), (.call 8 [(.call 9 [(.var 1)])])]), (.call 7 [(.value .string (.string " audit records, found "))])]), (.call 8 [(.call 10 [(.var 7)])])]), (.build .none (.option .bytes) [])]) (.cond (.prim .natEq [(.call 10 [(.var 7)]), (.call 9 [(.var 1)])]) (.call 11 [(.closure 12 []), (.build .ok (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) [(.build .nil (.list (.pair .bytes (.list .bytes))) [])]), (.call 13 [(.var 7)])]) (.var 9))))]) }) ::( + { parameters := [0, 1, 2], types := [(.fn [(.adt 1), .bytes] (.adt 1)), (.adt 1), (.list .bytes)], result := (.adt 1), + body := (.«match» (.adt 1) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 2 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }) ::( + { parameters := [0, 1], types := [(.adt 1), .bytes], result := (.adt 1), + body := (.call 14 [(.var 0), (.var 1)]) }) ::( + { parameters := [0], types := [.bytes], result := (.list .bytes), + body := (.«let» 1 .nat (.prim .length [(.var 0)]) (.«let» 2 (.pair .nat (.pair .nat (.list .bytes))) (.first (.call 15 [(.closure 16 [(.var 0)]), (.var 1), (.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.value .nat (.nat 0)), (.build .pair (.pair .nat (.list .bytes)) [(.value .nat (.nat 0)), (.build .nil (.list .bytes) [])])])])) (.«let» 3 .nat (.first (.second (.var 2))) (.«let» 4 (.list .bytes) (.second (.second (.var 2))) (.cond (.prim .natLt [(.var 3), (.var 1)]) (.call 17 [(.build .cons (.list .bytes) [(.call 18 [(.var 0), (.var 3), (.prim .natSub [(.var 1), (.var 3)])]), (.var 4)])]) (.call 17 [(.var 4)])))))) }) ::( + { parameters := [0, 1], types := [.bytes, (.option .bytes)], result := (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), + body := (.build .error (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) [(.call 19 [(.var 0), (.var 1)])]) }) ::( + { parameters := [0, 1], types := [.bytes, .bytes], result := .bytes, + body := (.prim .append [(.var 0), (.var 1)]) }) ::( + { parameters := [0], types := [.string], result := .bytes, + body := (.prim .utf8Encode [(.var 0)]) }) ::( + { parameters := [0], types := [.nat], result := .bytes, + body := (.«let» 1 .bytes (.call 7 [(.value .string (.string "0"))]) (.«let» 2 .bytes (.call 20 [(.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 10000000000000000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 1000000000000000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 100000000000000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 10000000000000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 1000000000000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 100000000000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 10000000000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 1000000000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 100000000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 10000000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 1000000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 100000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 10000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 1000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 100000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 10000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 1000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 100))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 10))]), (.call 21 [(.var 0), (.value .nat (.nat 1))])])])])])])])])])])])])])])])])])])])])]) (.cond (.prim .natEq [(.var 0), (.value .nat (.nat 0))]) (.var 1) (.var 2)))) }) ::( + { parameters := [0], types := [(.list .bytes)], result := .nat, + body := (.call 22 [(.closure 23 []), (.value .nat (.nat 0)), (.var 0)]) }) ::( + { parameters := [0], types := [(.list (.adt 2))], result := .nat, + body := (.call 24 [(.closure 25 []), (.value .nat (.nat 0)), (.var 0)]) }) ::( + { parameters := [0, 1, 2], types := [(.fn [(.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (.adt 2)] (.result (.list (.pair .bytes (.list .bytes))) (.adt 0))), (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (.list (.adt 2))], result := (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), + body := (.«match» (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 11 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }) ::( + { parameters := [0, 1], types := [(.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (.adt 2)], result := (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), + body := (.call 26 [(.var 0), (.var 1)]) }) ::( + { parameters := [0], types := [(.list (.adt 2))], result := (.list (.adt 2)), + body := (.call 27 [(.closure 28 []), (.build .nil (.list (.adt 2)) []), (.var 0)]) }) ::( + { parameters := [0, 1], types := [(.adt 1), .bytes], result := (.adt 1), + body := (.«match» (.adt 1) (.var 0) [(.arm (.adt 2) [2] (.var 0)), (.arm (.adt 1) [3, 4, 5, 6] (.«match» (.adt 1) (.call 29 [(.var 1)]) [(.arm .some [7] (.call 30 [(.var 3), (.var 4), (.call 6 [(.call 6 [(.var 5), (.call 7 [(.value .string (.string " "))])]), (.var 7)]), (.var 6)])), (.arm .none [] (.call 31 [(.call 6 [(.call 7 [(.value .string (.string "unterminated axiom payload: "))]), (.var 5)]), (.var 6)]))])), (.arm (.adt 0) [8, 9] (.cond (.prim .natEq [(.value .nat (.nat 0)), (.prim .length [(.call 32 [(.var 1)])])]) (.var 0) (.«match» (.adt 1) (.call 33 [(.call 32 [(.var 1)])]) [(.arm .some [10] (.call 30 [(.var 8), (.var 9), (.var 10), (.call 34 [(.var 9)])])), (.arm .none [] (.call 31 [(.call 6 [(.call 7 [(.value .string (.string "unrecognized audit line: "))]), (.call 32 [(.var 1)])]), (.call 34 [(.var 9)])]))])))]) }) ::( + { parameters := [0, 1, 2], types := [(.fn [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes))))), .nat, (.pair .nat (.pair .nat (.list .bytes)))], result := (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool), + body := (.«match» (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 15 [(.var 0), (.var 3), (.var 4)]))]))]) }) ::( + { parameters := [0, 1], types := [.bytes, (.pair .nat (.pair .nat (.list .bytes)))], result := (.option (.pair .nat (.pair .nat (.list .bytes)))), + body := (.call 35 [(.var 0), (.var 1)]) }) ::( + { parameters := [0], types := [(.list .bytes)], result := (.list .bytes), + body := (.call 36 [(.closure 37 []), (.build .nil (.list .bytes) []), (.var 0)]) }) ::( + { parameters := [0, 1, 2], types := [.bytes, .nat, .nat], result := .bytes, + body := (.«match» .bytes (.prim .slice [(.var 0), (.var 1), (.var 2)]) [(.arm .some [3] (.var 3)), (.arm .none [] (.value .bytes (.bytes (ByteArray.mk #[]))))]) }) ::( + { parameters := [0, 1], types := [.bytes, (.option .bytes)], result := (.adt 0), + body := (.build (.adt 0) (.adt 0) [(.var 0), (.var 1)]) }) ::( + { parameters := [0], types := [.bytes], result := .bytes, + body := (.«let» 1 .nat (.first (.call 38 [(.closure 39 [(.var 0)]), (.prim .length [(.var 0)]), (.value .nat (.nat 0))])) (.call 18 [(.var 0), (.var 1), (.prim .natSub [(.prim .length [(.var 0)]), (.var 1)])])) }) ::( + { parameters := [0, 1], types := [.nat, .nat], result := .bytes, + body := (.call 18 [(.call 7 [(.value .string (.string "0123456789"))]), (.prim .natRem [(.prim .natQuot [(.var 0), (.var 1), (.value .nat (.nat 0))]), (.value .nat (.nat 10)), (.value .nat (.nat 0))]), (.value .nat (.nat 1))]) }) ::( + { parameters := [0, 1, 2], types := [(.fn [.nat, .bytes] .nat), .nat, (.list .bytes)], result := .nat, + body := (.«match» .nat (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 22 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }) ::( + { parameters := [0, 1], types := [.nat, .bytes], result := .nat, + body := (.prim .natAdd [(.var 0), (.value .nat (.nat 1))]) }) ::( + { parameters := [0, 1, 2], types := [(.fn [.nat, (.adt 2)] .nat), .nat, (.list (.adt 2))], result := .nat, + body := (.«match» .nat (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 24 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }) ::( + { parameters := [0, 1], types := [.nat, (.adt 2)], result := .nat, + body := (.prim .natAdd [(.var 0), (.value .nat (.nat 1))]) }) ::( + { parameters := [0, 1], types := [(.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (.adt 2)], result := (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), + body := (.«match» (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) (.var 0) [(.arm .error [2] (.var 0)), (.arm .ok [3] (.«let» 5 .bytes (.«match» .bytes (.field (.var 1) 2) [(.arm .some [4] (.var 4)), (.arm .none [] (.value .bytes (.bytes (ByteArray.mk #[]))))]) (.«let» 6 (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) (.call 5 [(.call 6 [(.call 7 [(.value .string (.string "duplicate record for "))]), (.call 40 [(.field (.var 1) 0)])]), (.build .some (.option .bytes) [(.var 5)])]) (.«let» 7 (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) (.call 5 [(.call 6 [(.call 6 [(.call 6 [(.call 7 [(.value .string (.string "expected a record for "))]), (.call 40 [(.var 5)])]), (.call 7 [(.value .string (.string ", found "))])]), (.call 40 [(.field (.var 1) 0)])]), (.build .some (.option .bytes) [(.var 5)])]) (.cond (.prim .equal [(.field (.var 1) 0), (.var 5)]) (.«match» (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) (.call 41 [(.field (.var 1) 0), (.field (.var 1) 1), (.var 3)]) [(.arm .some [8] (.build .ok (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) [(.var 8)])), (.arm .none [] (.var 6))]) (.var 7))))))]) }) ::( + { parameters := [0, 1, 2], types := [(.fn [(.list (.adt 2)), (.adt 2)] (.list (.adt 2))), (.list (.adt 2)), (.list (.adt 2))], result := (.list (.adt 2)), + body := (.«match» (.list (.adt 2)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 27 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }) ::( + { parameters := [0, 1], types := [(.list (.adt 2)), (.adt 2)], result := (.list (.adt 2)), + body := (.build .cons (.list (.adt 2)) [(.var 1), (.var 0)]) }) ::( + { parameters := [0], types := [.bytes], result := (.option .bytes), + body := (.«let» 1 .bytes (.call 32 [(.var 0)]) (.cond (.call 42 [(.var 0)]) (.cond (.prim .natEq [(.value .nat (.nat 0)), (.prim .length [(.var 1)])]) (.build .none (.option .bytes) []) (.build .some (.option .bytes) [(.var 1)])) (.build .none (.option .bytes) []))) }) ::( + { parameters := [0, 1, 2, 3], types := [(.list (.adt 2)), (.list .bytes), .bytes, (.option .bytes)], result := (.adt 1), + body := (.cond (.call 43 [(.var 2)]) (.«match» (.adt 1) (.call 44 [(.var 2)]) [(.arm .error [4] (.call 31 [(.var 4), (.var 3)])), (.arm .ok [5] (.build (.adt 0) (.adt 1) [(.build .cons (.list (.adt 2)) [(.build (.adt 0) (.adt 2) [(.first (.var 5)), (.second (.var 5)), (.var 3)]), (.var 0)]), (.call 45 [(.var 1)])]))]) (.build (.adt 1) (.adt 1) [(.var 0), (.var 1), (.var 2), (.var 3)])) }) ::( + { parameters := [0, 1], types := [.bytes, (.option .bytes)], result := (.adt 1), + body := (.build (.adt 2) (.adt 1) [(.call 19 [(.var 0), (.var 1)])]) }) ::( + { parameters := [0], types := [.bytes], result := .bytes, + body := (.«let» 1 .nat (.call 46 [(.var 0)]) (.«let» 2 .nat (.call 47 [(.var 0), (.var 1)]) (.call 18 [(.var 0), (.var 1), (.prim .natSub [(.var 2), (.var 1)])]))) }) ::( + { parameters := [0], types := [.bytes], result := (.option .bytes), + body := (.cond (.call 48 [(.var 0), (.call 7 [(.value .string (.string "'"))])]) (.build .some (.option .bytes) [(.var 0)]) (.«match» (.option .bytes) (.call 49 [(.var 0), (.call 7 [(.value .string (.string "info: "))])]) [(.arm .some [1] (.build .some (.option .bytes) [(.var 1)])), (.arm .none [] (.call 50 [(.var 0)]))])) }) ::( + { parameters := [0], types := [(.list .bytes)], result := (.option .bytes), + body := (.«match» (.option .bytes) (.var 0) [(.arm .nil [] (.build .none (.option .bytes) [])), (.arm .cons [1, 2] (.build .some (.option .bytes) [(.var 1)]))]) }) ::( + { parameters := [0, 1], types := [.bytes, (.pair .nat (.pair .nat (.list .bytes)))], result := (.option (.pair .nat (.pair .nat (.list .bytes)))), + body := (.«let» 2 .nat (.first (.var 1)) (.«let» 3 .nat (.first (.second (.var 1))) (.«let» 4 (.list .bytes) (.second (.second (.var 1))) (.«match» (.option (.pair .nat (.pair .nat (.list .bytes)))) (.call 51 [(.var 0), (.var 2)]) [(.arm .some [5] (.cond (.prim .equal [(.var 5), (.value (.fixed .u8) (.u8 10))]) (.build .some (.option (.pair .nat (.pair .nat (.list .bytes)))) [(.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.prim .natAdd [(.var 2), (.value .nat (.nat 1))]), (.build .pair (.pair .nat (.list .bytes)) [(.prim .natAdd [(.var 2), (.value .nat (.nat 1))]), (.build .cons (.list .bytes) [(.call 52 [(.call 18 [(.var 0), (.var 3), (.prim .natSub [(.var 2), (.var 3)])])]), (.var 4)])])])]) (.build .some (.option (.pair .nat (.pair .nat (.list .bytes)))) [(.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.prim .natAdd [(.var 2), (.value .nat (.nat 1))]), (.build .pair (.pair .nat (.list .bytes)) [(.var 3), (.var 4)])])]))), (.arm .none [] (.build .none (.option (.pair .nat (.pair .nat (.list .bytes)))) []))])))) }) ::( + { parameters := [0, 1, 2], types := [(.fn [(.list .bytes), .bytes] (.list .bytes)), (.list .bytes), (.list .bytes)], result := (.list .bytes), + body := (.«match» (.list .bytes) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 36 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }) ::( + { parameters := [0, 1], types := [(.list .bytes), .bytes], result := (.list .bytes), + body := (.build .cons (.list .bytes) [(.var 1), (.var 0)]) }) ::( + { parameters := [0, 1, 2], types := [(.fn [.nat] (.option .nat)), .nat, .nat], result := (.pair .nat .bool), + body := (.«match» (.pair .nat .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair .nat .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair .nat .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair .nat .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 38 [(.var 0), (.var 3), (.var 4)]))]))]) }) ::( + { parameters := [0, 1], types := [.bytes, .nat], result := (.option .nat), + body := (.call 53 [(.var 0), (.var 1)]) }) ::( + { parameters := [0], types := [.bytes], result := .bytes, + body := (.call 6 [(.call 6 [(.call 7 [(.value .string (.string "`"))]), (.var 0)]), (.call 7 [(.value .string (.string "`"))])]) }) ::( + { parameters := [0, 1, 2], types := [.bytes, (.list .bytes), (.list (.pair .bytes (.list .bytes)))], result := (.option (.list (.pair .bytes (.list .bytes)))), + body := (.«match» (.option (.list (.pair .bytes (.list .bytes)))) (.var 2) [(.arm .nil [] (.build .some (.option (.list (.pair .bytes (.list .bytes)))) [(.build .cons (.list (.pair .bytes (.list .bytes))) [(.build .pair (.pair .bytes (.list .bytes)) [(.var 0), (.var 1)]), (.build .nil (.list (.pair .bytes (.list .bytes))) [])])])), (.arm .cons [3, 4] (.cond (.prim .equal [(.var 0), (.first (.var 3))]) (.build .none (.option (.list (.pair .bytes (.list .bytes)))) []) (.cond (.call 54 [(.var 0), (.first (.var 3))]) (.build .some (.option (.list (.pair .bytes (.list .bytes)))) [(.build .cons (.list (.pair .bytes (.list .bytes))) [(.build .pair (.pair .bytes (.list .bytes)) [(.var 0), (.var 1)]), (.build .cons (.list (.pair .bytes (.list .bytes))) [(.var 3), (.var 4)])])]) (.«match» (.option (.list (.pair .bytes (.list .bytes)))) (.call 41 [(.var 0), (.var 1), (.var 4)]) [(.arm .some [5] (.build .some (.option (.list (.pair .bytes (.list .bytes)))) [(.build .cons (.list (.pair .bytes (.list .bytes))) [(.var 3), (.var 5)])])), (.arm .none [] (.build .none (.option (.list (.pair .bytes (.list .bytes)))) []))]))))]) }) ::( + { parameters := [0], types := [.bytes], result := .bool, + body := (.prim .natLt [(.value .nat (.nat 0)), (.call 55 [(.var 0), (.value .nat (.nat 0))])]) }) ::( + { parameters := [0], types := [.bytes], result := .bool, + body := (.«match» .bool (.call 56 [(.var 0), (.call 7 [(.value .string (.string "]"))])]) [(.arm .some [1] (.build .true .bool [])), (.arm .none [] (.«match» .bool (.call 56 [(.var 0), (.call 7 [(.value .string (.string " does not depend on any axioms"))])]) [(.arm .some [2] (.build .true .bool [])), (.arm .none [] (.build .false .bool []))]))]) }) ::( + { parameters := [0], types := [.bytes], result := (.result (.pair .bytes (.list .bytes)) .bytes), + body := (.«match» (.result (.pair .bytes (.list .bytes)) .bytes) (.call 49 [(.var 0), (.call 7 [(.value .string (.string "'"))])]) [(.arm .none [] (.call 57 [(.var 0)])), (.arm .some [1] (.«match» (.result (.pair .bytes (.list .bytes)) .bytes) (.call 56 [(.var 1), (.call 7 [(.value .string (.string "' does not depend on any axioms"))])]) [(.arm .some [2] (.«let» 3 (.result (.pair .bytes (.list .bytes)) .bytes) (.call 58 [(.var 2), (.build .nil (.list .bytes) [])]) (.«let» 4 (.result (.pair .bytes (.list .bytes)) .bytes) (.call 59 [(.call 60 [(.var 2)])]) (.cond (.call 61 [(.var 2)]) (.var 3) (.var 4))))), (.arm .none [] (.«match» (.result (.pair .bytes (.list .bytes)) .bytes) (.call 56 [(.var 1), (.call 7 [(.value .string (.string "]"))])]) [(.arm .some [5] (.call 62 [(.var 0), (.var 5)])), (.arm .none [] (.call 57 [(.var 0)]))]))]))]) }) ::( + { parameters := [0], types := [(.list .bytes)], result := (.list .bytes), + body := (.«match» (.list .bytes) (.var 0) [(.arm .nil [] (.build .nil (.list .bytes) [])), (.arm .cons [1, 2] (.var 2))]) }) ::( + { parameters := [0], types := [.bytes], result := .nat, + body := (.first (.call 38 [(.closure 63 [(.var 0)]), (.prim .length [(.var 0)]), (.value .nat (.nat 0))])) }) ::( + { parameters := [0, 1], types := [.bytes, .nat], result := .nat, + body := (.first (.call 38 [(.closure 64 [(.var 1), (.var 0)]), (.prim .length [(.var 0)]), (.prim .length [(.var 0)])])) }) ::( + { parameters := [0, 1], types := [.bytes, .bytes], result := .bool, + body := (.«match» .bool (.prim .slice [(.var 0), (.value .nat (.nat 0)), (.prim .length [(.var 1)])]) [(.arm .some [2] (.prim .equal [(.var 2), (.var 1)])), (.arm .none [] (.build .false .bool []))]) }) ::( + { parameters := [0, 1], types := [.bytes, .bytes], result := (.option .bytes), + body := (.cond (.call 48 [(.var 0), (.var 1)]) (.build .some (.option .bytes) [(.call 18 [(.var 0), (.prim .length [(.var 1)]), (.prim .natSub [(.prim .length [(.var 0)]), (.prim .length [(.var 1)])])])]) (.build .none (.option .bytes) [])) }) ::( + { parameters := [0], types := [.bytes], result := (.option .bytes), + body := (.«match» (.option .bytes) (.call 65 [(.var 0), (.call 7 [(.value .string (.string ":"))])]) [(.arm .some [1] (.«match» (.option .bytes) (.call 65 [(.second (.var 1)), (.call 7 [(.value .string (.string ":"))])]) [(.arm .some [2] (.«match» (.option .bytes) (.call 65 [(.second (.var 2)), (.call 7 [(.value .string (.string ":"))])]) [(.arm .some [3] (.«let» 4 .bytes (.first (.var 2)) (.«let» 5 .bytes (.first (.var 3)) (.«let» 6 .bytes (.second (.var 3)) (.«let» 7 (.option .bytes) (.call 66 [(.var 5), (.var 6)]) (.cond (.call 67 [(.var 4)]) (.var 7) (.build .none (.option .bytes) []))))))), (.arm .none [] (.build .none (.option .bytes) []))])), (.arm .none [] (.build .none (.option .bytes) []))])), (.arm .none [] (.build .none (.option .bytes) []))]) }) ::( + { parameters := [0, 1], types := [.bytes, .nat], result := (.option (.fixed .u8)), + body := (.prim .index [(.var 0), (.var 1)]) }) ::( + { parameters := [0], types := [.bytes], result := .bytes, + body := (.cond (.call 68 [(.var 0), (.value .bytes (.bytes (ByteArray.mk #[13])))]) (.call 18 [(.var 0), (.value .nat (.nat 0)), (.prim .natSub [(.prim .length [(.var 0)]), (.value .nat (.nat 1))])]) (.var 0)) }) ::( + { parameters := [0, 1], types := [.bytes, .nat], result := (.option .nat), + body := (.cond (.call 69 [(.var 0), (.var 1), (.value (.fixed .u8) (.u8 48))]) (.build .some (.option .nat) [(.prim .natAdd [(.var 1), (.value .nat (.nat 1))])]) (.build .none (.option .nat) [])) }) ::( + { parameters := [0, 1], types := [.bytes, .bytes], result := .bool, + body := (.prim .equal [(.prim .compareBytes [(.var 0), (.var 1)]), (.prim .compareBytes [(.value .bytes (.bytes (ByteArray.mk #[]))), (.value .bytes (.bytes (ByteArray.mk #[1])))])]) }) ::( + { parameters := [0, 1], types := [.bytes, .nat], result := .nat, + body := (.cond (.cond (.call 70 [(.var 0), (.var 1), (.value (.fixed .u8) (.u8 9)), (.value (.fixed .u8) (.u8 13))]) (.build .true .bool []) (.cond (.call 69 [(.var 0), (.var 1), (.value (.fixed .u8) (.u8 32))]) (.build .true .bool []) (.build .false .bool []))) (.value .nat (.nat 1)) (.cond (.call 69 [(.var 0), (.var 1), (.value (.fixed .u8) (.u8 194))]) (.cond (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 1))]), (.value (.fixed .u8) (.u8 133))]) (.build .true .bool []) (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 1))]), (.value (.fixed .u8) (.u8 160))]) (.build .true .bool []) (.build .false .bool []))) (.value .nat (.nat 2)) (.value .nat (.nat 0))) (.cond (.call 69 [(.var 0), (.var 1), (.value (.fixed .u8) (.u8 225))]) (.cond (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 1))]), (.value (.fixed .u8) (.u8 154))]) (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 2))]), (.value (.fixed .u8) (.u8 128))]) (.build .true .bool []) (.build .false .bool [])) (.build .false .bool [])) (.value .nat (.nat 3)) (.value .nat (.nat 0))) (.cond (.call 69 [(.var 0), (.var 1), (.value (.fixed .u8) (.u8 226))]) (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 1))]), (.value (.fixed .u8) (.u8 128))]) (.cond (.cond (.call 70 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 2))]), (.value (.fixed .u8) (.u8 128)), (.value (.fixed .u8) (.u8 138))]) (.build .true .bool []) (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 2))]), (.value (.fixed .u8) (.u8 168))]) (.build .true .bool []) (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 2))]), (.value (.fixed .u8) (.u8 169))]) (.build .true .bool []) (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 2))]), (.value (.fixed .u8) (.u8 175))]) (.build .true .bool []) (.build .false .bool []))))) (.value .nat (.nat 3)) (.value .nat (.nat 0))) (.cond (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 1))]), (.value (.fixed .u8) (.u8 129))]) (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 2))]), (.value (.fixed .u8) (.u8 159))]) (.build .true .bool []) (.build .false .bool [])) (.build .false .bool [])) (.value .nat (.nat 3)) (.value .nat (.nat 0)))) (.cond (.call 69 [(.var 0), (.var 1), (.value (.fixed .u8) (.u8 227))]) (.cond (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 1))]), (.value (.fixed .u8) (.u8 128))]) (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 2))]), (.value (.fixed .u8) (.u8 128))]) (.build .true .bool []) (.build .false .bool [])) (.build .false .bool [])) (.value .nat (.nat 3)) (.value .nat (.nat 0))) (.value .nat (.nat 0))))))) }) ::( + { parameters := [0, 1], types := [.bytes, .bytes], result := (.option .bytes), + body := (.cond (.call 68 [(.var 0), (.var 1)]) (.build .some (.option .bytes) [(.call 18 [(.var 0), (.value .nat (.nat 0)), (.prim .natSub [(.prim .length [(.var 0)]), (.prim .length [(.var 1)])])])]) (.build .none (.option .bytes) [])) }) ::( + { parameters := [0], types := [.bytes], result := (.result (.pair .bytes (.list .bytes)) .bytes), + body := (.call 59 [(.call 6 [(.call 7 [(.value .string (.string "unrecognized axiom payload: "))]), (.var 0)])]) }) ::( + { parameters := [0, 1], types := [.bytes, (.list .bytes)], result := (.result (.pair .bytes (.list .bytes)) .bytes), + body := (.build .ok (.result (.pair .bytes (.list .bytes)) .bytes) [(.build .pair (.pair .bytes (.list .bytes)) [(.var 0), (.var 1)])]) }) ::( + { parameters := [0], types := [.bytes], result := (.result (.pair .bytes (.list .bytes)) .bytes), + body := (.build .error (.result (.pair .bytes (.list .bytes)) .bytes) [(.var 0)]) }) ::( + { parameters := [0], types := [.bytes], result := .bytes, + body := (.call 6 [(.call 40 [(.var 0)]), (.call 7 [(.value .string (.string " is not a Lean name"))])]) }) ::( + { parameters := [0], types := [.bytes], result := .bool, + body := (.prim .natEq [(.second (.first (.call 71 [(.closure 72 [(.var 0)]), (.prim .length [(.var 0)]), (.build .pair (.pair .nat .nat) [(.value .nat (.nat 0)), (.value .nat (.nat 0))])]))), (.value .nat (.nat 1))]) }) ::( + { parameters := [0, 1], types := [.bytes, .bytes], result := (.result (.pair .bytes (.list .bytes)) .bytes), + body := (.«match» (.result (.pair .bytes (.list .bytes)) .bytes) (.call 73 [(.var 1), (.call 7 [(.value .string (.string "' depends on axioms: ["))])]) [(.arm .some [2] (.«let» 3 .bytes (.first (.var 2)) (.«let» 4 .bytes (.second (.var 2)) (.«let» 5 (.result (.pair .bytes (.list .bytes)) .bytes) (.call 74 [(.var 3), (.var 4)]) (.«let» 6 (.result (.pair .bytes (.list .bytes)) .bytes) (.call 59 [(.call 60 [(.var 3)])]) (.cond (.call 61 [(.var 3)]) (.var 5) (.var 6))))))), (.arm .none [] (.call 57 [(.var 0)]))]) }) ::( + { parameters := [0, 1], types := [.bytes, .nat], result := (.option .nat), + body := (.cond (.prim .natLt [(.value .nat (.nat 0)), (.call 55 [(.var 0), (.var 1)])]) (.build .some (.option .nat) [(.prim .natAdd [(.var 1), (.call 55 [(.var 0), (.var 1)])])]) (.build .none (.option .nat) [])) }) ::( + { parameters := [0, 1, 2], types := [.nat, .bytes, .nat], result := (.option .nat), + body := (.cond (.cond (.prim .natLt [(.value .nat (.nat 0)), (.call 75 [(.var 1), (.var 2)])]) (.prim .natLe [(.prim .natAdd [(.var 0), (.call 75 [(.var 1), (.var 2)])]), (.var 2)]) (.build .false .bool [])) (.build .some (.option .nat) [(.prim .natSub [(.var 2), (.call 75 [(.var 1), (.var 2)])])]) (.build .none (.option .nat) [])) }) ::( + { parameters := [0, 1], types := [.bytes, .bytes], result := (.option (.pair .bytes .bytes)), + body := (.«match» (.option (.pair .bytes .bytes)) (.call 76 [(.var 0), (.var 1)]) [(.arm .some [2] (.build .some (.option (.pair .bytes .bytes)) [(.build .pair (.pair .bytes .bytes) [(.call 18 [(.var 0), (.value .nat (.nat 0)), (.var 2)]), (.call 18 [(.var 0), (.prim .natAdd [(.var 2), (.prim .length [(.var 1)])]), (.prim .natSub [(.prim .length [(.var 0)]), (.prim .natAdd [(.var 2), (.prim .length [(.var 1)])])])])])])), (.arm .none [] (.build .none (.option (.pair .bytes .bytes)) []))]) }) ::( + { parameters := [0, 1], types := [.bytes, .bytes], result := (.option .bytes), + body := (.«match» (.option .bytes) (.call 65 [(.var 0), (.call 7 [(.value .string (.string "-"))])]) [(.arm .some [2] (.«let» 3 .bytes (.first (.var 2)) (.«let» 4 .bytes (.second (.var 2)) (.«match» (.option .bytes) (.call 65 [(.var 1), (.call 7 [(.value .string (.string ":"))])]) [(.arm .some [5] (.«let» 6 .bytes (.first (.var 5)) (.«let» 7 .bytes (.second (.var 5)) (.«let» 8 (.option .bytes) (.call 77 [(.var 7)]) (.cond (.call 67 [(.var 3)]) (.cond (.call 67 [(.var 4)]) (.cond (.call 67 [(.var 6)]) (.var 8) (.build .none (.option .bytes) [])) (.build .none (.option .bytes) [])) (.build .none (.option .bytes) [])))))), (.arm .none [] (.build .none (.option .bytes) []))])))), (.arm .none [] (.«let» 9 (.option .bytes) (.call 77 [(.var 1)]) (.cond (.call 67 [(.var 0)]) (.var 9) (.build .none (.option .bytes) []))))]) }) ::( + { parameters := [0], types := [.bytes], result := .bool, + body := (.call 78 [(.call 32 [(.var 0)])]) }) ::( + { parameters := [0, 1], types := [.bytes, .bytes], result := .bool, + body := (.«let» 2 .nat (.prim .length [(.var 0)]) (.«let» 3 .nat (.prim .length [(.var 1)]) (.cond (.prim .natLe [(.var 3), (.var 2)]) (.«match» .bool (.prim .slice [(.var 0), (.prim .natSub [(.var 2), (.var 3)]), (.var 3)]) [(.arm .some [4] (.prim .equal [(.var 4), (.var 1)])), (.arm .none [] (.build .false .bool []))]) (.build .false .bool [])))) }) ::( + { parameters := [0, 1, 2], types := [.bytes, .nat, (.fixed .u8)], result := .bool, + body := (.«match» .bool (.call 51 [(.var 0), (.var 1)]) [(.arm .some [3] (.prim .equal [(.var 3), (.var 2)])), (.arm .none [] (.build .false .bool []))]) }) ::( + { parameters := [0, 1, 2, 3], types := [.bytes, .nat, (.fixed .u8), (.fixed .u8)], result := .bool, + body := (.«match» .bool (.call 51 [(.var 0), (.var 1)]) [(.arm .some [4] (.call 79 [(.var 4), (.var 2), (.var 3)])), (.arm .none [] (.build .false .bool []))]) }) ::( + { parameters := [0, 1, 2], types := [(.fn [(.pair .nat .nat)] (.option (.pair .nat .nat))), .nat, (.pair .nat .nat)], result := (.pair (.pair .nat .nat) .bool), + body := (.«match» (.pair (.pair .nat .nat) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.pair .nat .nat) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.pair .nat .nat) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.pair .nat .nat) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 71 [(.var 0), (.var 3), (.var 4)]))]))]) }) ::( + { parameters := [0, 1], types := [.bytes, (.pair .nat .nat)], result := (.option (.pair .nat .nat)), + body := (.call 80 [(.var 0), (.var 1)]) }) ::( + { parameters := [0, 1], types := [.bytes, .bytes], result := (.option (.pair .bytes .bytes)), + body := (.«let» 2 .nat (.prim .length [(.var 0)]) (.«let» 3 .nat (.prim .length [(.var 1)]) (.cond (.prim .natLt [(.var 2), (.var 3)]) (.build .none (.option (.pair .bytes .bytes)) []) (.«let» 4 .nat (.first (.call 38 [(.closure 81 [(.var 1), (.var 0)]), (.prim .natAdd [(.var 2), (.value .nat (.nat 1))]), (.prim .natSub [(.var 2), (.var 3)])])) (.cond (.call 82 [(.var 0), (.var 1), (.var 4)]) (.build .some (.option (.pair .bytes .bytes)) [(.build .pair (.pair .bytes .bytes) [(.call 18 [(.var 0), (.value .nat (.nat 0)), (.var 4)]), (.call 18 [(.var 0), (.prim .natAdd [(.var 4), (.var 3)]), (.prim .natSub [(.var 2), (.prim .natAdd [(.var 4), (.var 3)])])])])]) (.build .none (.option (.pair .bytes .bytes)) [])))))) }) ::( + { parameters := [0, 1], types := [.bytes, .bytes], result := (.result (.pair .bytes (.list .bytes)) .bytes), + body := (.«match» (.result (.pair .bytes (.list .bytes)) .bytes) (.call 83 [(.closure 84 []), (.build .ok (.result (.list .bytes) .bytes) [(.build .nil (.list .bytes) [])]), (.call 85 [(.var 1), (.value (.fixed .u8) (.u8 44))])]) [(.arm .error [2] (.call 59 [(.var 2)])), (.arm .ok [3] (.«match» (.result (.pair .bytes (.list .bytes)) .bytes) (.var 3) [(.arm .nil [] (.call 59 [(.call 7 [(.value .string (.string "an axiom list cannot be empty"))])])), (.arm .cons [4, 5] (.call 58 [(.var 0), (.var 3)]))]))]) }) ::( + { parameters := [0, 1], types := [.bytes, .nat], result := .nat, + body := (.cond (.prim .natEq [(.var 1), (.value .nat (.nat 0))]) (.value .nat (.nat 0)) (.cond (.prim .natEq [(.call 55 [(.var 0), (.prim .natSub [(.var 1), (.value .nat (.nat 1))])]), (.value .nat (.nat 1))]) (.value .nat (.nat 1)) (.cond (.cond (.prim .natLe [(.value .nat (.nat 2)), (.var 1)]) (.prim .natEq [(.call 55 [(.var 0), (.prim .natSub [(.var 1), (.value .nat (.nat 2))])]), (.value .nat (.nat 2))]) (.build .false .bool [])) (.value .nat (.nat 2)) (.cond (.cond (.prim .natLe [(.value .nat (.nat 3)), (.var 1)]) (.prim .natEq [(.call 55 [(.var 0), (.prim .natSub [(.var 1), (.value .nat (.nat 3))])]), (.value .nat (.nat 3))]) (.build .false .bool [])) (.value .nat (.nat 3)) (.value .nat (.nat 0)))))) }) ::( + { parameters := [0, 1], types := [.bytes, .bytes], result := (.option .nat), + body := (.«let» 2 .nat (.prim .length [(.var 0)]) (.«let» 3 .nat (.prim .length [(.var 1)]) (.«let» 4 .nat (.first (.call 38 [(.closure 86 [(.var 1), (.var 3), (.var 0), (.var 2)]), (.prim .natAdd [(.var 2), (.value .nat (.nat 1))]), (.value .nat (.nat 0))])) (.cond (.call 82 [(.var 0), (.var 1), (.var 4)]) (.build .some (.option .nat) [(.var 4)]) (.build .none (.option .nat) []))))) }) ::( + { parameters := [0], types := [.bytes], result := (.option .bytes), + body := (.«match» (.option .bytes) (.call 49 [(.var 0), (.call 7 [(.value .string (.string " "))])]) [(.arm .some [1] (.call 49 [(.var 1), (.call 7 [(.value .string (.string "info: "))])])), (.arm .none [] (.build .none (.option .bytes) []))]) }) ::( + { parameters := [0], types := [.bytes], result := .bool, + body := (.«let» 2 .bytes (.«match» .bytes (.call 49 [(.var 0), (.call 7 [(.value .string (.string "+"))])]) [(.arm .some [1] (.var 1)), (.arm .none [] (.var 0))]) (.«let» 3 .bool (.call 87 [(.call 20 [(.var 2)])]) (.cond (.prim .natLt [(.value .nat (.nat 0)), (.prim .length [(.var 2)])]) (.cond (.call 88 [(.var 2)]) (.var 3) (.build .false .bool [])) (.build .false .bool [])))) }) ::( + { parameters := [0, 1, 2], types := [(.fixed .u8), (.fixed .u8), (.fixed .u8)], result := .bool, + body := (.«match» .bool (.prim .checkedSub [(.var 0), (.var 1)]) [(.arm .some [3] (.«match» .bool (.prim .checkedSub [(.var 2), (.var 0)]) [(.arm .some [4] (.build .true .bool [])), (.arm .none [] (.build .false .bool []))])), (.arm .none [] (.build .false .bool []))]) }) ::( + { parameters := [0, 1], types := [.bytes, (.pair .nat .nat)], result := (.option (.pair .nat .nat)), + body := (.cond (.prim .natEq [(.second (.var 1)), (.value .nat (.nat 2))]) (.build .none (.option (.pair .nat .nat)) []) (.«match» (.option (.pair .nat .nat)) (.call 51 [(.var 0), (.first (.var 1))]) [(.arm .some [2] (.build .some (.option (.pair .nat .nat)) [(.build .pair (.pair .nat .nat) [(.prim .natAdd [(.first (.var 1)), (.value .nat (.nat 1))]), (.call 89 [(.second (.var 1)), (.var 2)])])])), (.arm .none [] (.build .none (.option (.pair .nat .nat)) []))])) }) ::( + { parameters := [0, 1, 2], types := [.bytes, .bytes, .nat], result := (.option .nat), + body := (.call 90 [(.var 1), (.var 0), (.var 2)]) }) ::( + { parameters := [0, 1, 2], types := [.bytes, .bytes, .nat], result := .bool, + body := (.«match» .bool (.prim .slice [(.var 0), (.var 2), (.prim .length [(.var 1)])]) [(.arm .some [3] (.prim .equal [(.var 3), (.var 1)])), (.arm .none [] (.build .false .bool []))]) }) ::( + { parameters := [0, 1, 2], types := [(.fn [(.result (.list .bytes) .bytes), .bytes] (.result (.list .bytes) .bytes)), (.result (.list .bytes) .bytes), (.list .bytes)], result := (.result (.list .bytes) .bytes), + body := (.«match» (.result (.list .bytes) .bytes) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 83 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }) ::( + { parameters := [0, 1], types := [(.result (.list .bytes) .bytes), .bytes], result := (.result (.list .bytes) .bytes), + body := (.call 91 [(.var 0), (.var 1)]) }) ::( + { parameters := [0, 1], types := [.bytes, (.fixed .u8)], result := (.list .bytes), + body := (.«let» 2 .nat (.prim .length [(.var 0)]) (.«let» 3 (.pair .nat (.pair .nat (.list .bytes))) (.first (.call 15 [(.closure 92 [(.var 1), (.var 0)]), (.var 2), (.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.value .nat (.nat 0)), (.build .pair (.pair .nat (.list .bytes)) [(.value .nat (.nat 0)), (.build .nil (.list .bytes) [])])])])) (.«let» 4 .nat (.first (.second (.var 3))) (.call 17 [(.build .cons (.list .bytes) [(.call 18 [(.var 0), (.var 4), (.prim .natSub [(.var 2), (.var 4)])]), (.second (.second (.var 3)))])])))) }) ::( + { parameters := [0, 1, 2, 3, 4], types := [.bytes, .nat, .bytes, .nat, .nat], result := (.option .nat), + body := (.cond (.call 82 [(.var 2), (.var 0), (.var 4)]) (.build .none (.option .nat) []) (.cond (.prim .natLt [(.prim .natAdd [(.var 4), (.var 1)]), (.var 3)]) (.build .some (.option .nat) [(.prim .natAdd [(.var 4), (.value .nat (.nat 1))])]) (.build .none (.option .nat) []))) }) ::( + { parameters := [0], types := [.bytes], result := .bool, + body := (.cond (.prim .natLt [(.prim .length [(.var 0)]), (.value .nat (.nat 20))]) (.build .true .bool []) (.cond (.prim .natEq [(.prim .length [(.var 0)]), (.value .nat (.nat 20))]) (.prim .boolNot [(.prim .equal [(.prim .compareBytes [(.var 0), (.call 7 [(.value .string (.string "18446744073709551615"))])]), (.prim .compareBytes [(.value .bytes (.bytes (ByteArray.mk #[1]))), (.value .bytes (.bytes (ByteArray.mk #[0])))])])]) (.build .false .bool []))) }) ::( + { parameters := [0], types := [.bytes], result := .bool, + body := (.prim .natEq [(.first (.call 38 [(.closure 93 [(.var 0)]), (.prim .length [(.var 0)]), (.value .nat (.nat 0))])), (.prim .length [(.var 0)])]) }) ::( + { parameters := [0, 1], types := [.nat, (.fixed .u8)], result := .nat, + body := (.cond (.prim .natEq [(.var 0), (.value .nat (.nat 2))]) (.value .nat (.nat 2)) (.cond (.prim .equal [(.var 1), (.value (.fixed .u8) (.u8 46))]) (.cond (.prim .natEq [(.var 0), (.value .nat (.nat 1))]) (.value .nat (.nat 0)) (.value .nat (.nat 2))) (.cond (.call 94 [(.var 1)]) (.value .nat (.nat 1)) (.cond (.prim .natEq [(.var 0), (.value .nat (.nat 1))]) (.cond (.call 95 [(.var 1)]) (.value .nat (.nat 1)) (.value .nat (.nat 2))) (.value .nat (.nat 2)))))) }) ::( + { parameters := [0, 1, 2], types := [.bytes, .bytes, .nat], result := (.option .nat), + body := (.cond (.call 82 [(.var 0), (.var 1), (.var 2)]) (.build .none (.option .nat) []) (.cond (.prim .natLt [(.value .nat (.nat 0)), (.var 2)]) (.build .some (.option .nat) [(.prim .natSub [(.var 2), (.value .nat (.nat 1))])]) (.build .none (.option .nat) []))) }) ::( + { parameters := [0, 1], types := [(.result (.list .bytes) .bytes), .bytes], result := (.result (.list .bytes) .bytes), + body := (.«match» (.result (.list .bytes) .bytes) (.var 0) [(.arm .error [2] (.var 0)), (.arm .ok [3] (.«let» 4 .bytes (.call 32 [(.var 1)]) (.cond (.call 61 [(.var 4)]) (.«match» (.result (.list .bytes) .bytes) (.call 96 [(.var 4), (.var 3)]) [(.arm .some [5] (.build .ok (.result (.list .bytes) .bytes) [(.var 5)])), (.arm .none [] (.build .error (.result (.list .bytes) .bytes) [(.call 6 [(.call 7 [(.value .string (.string "duplicate axiom name "))]), (.call 40 [(.var 4)])])]))]) (.build .error (.result (.list .bytes) .bytes) [(.call 60 [(.var 4)])]))))]) }) ::( + { parameters := [0, 1, 2], types := [(.fixed .u8), .bytes, (.pair .nat (.pair .nat (.list .bytes)))], result := (.option (.pair .nat (.pair .nat (.list .bytes)))), + body := (.call 97 [(.var 1), (.var 0), (.var 2)]) }) ::( + { parameters := [0, 1], types := [.bytes, .nat], result := (.option .nat), + body := (.call 98 [(.var 0), (.var 1)]) }) ::( + { parameters := [0], types := [(.fixed .u8)], result := .bool, + body := (.cond (.call 79 [(.var 0), (.value (.fixed .u8) (.u8 65)), (.value (.fixed .u8) (.u8 90))]) (.build .true .bool []) (.cond (.call 79 [(.var 0), (.value (.fixed .u8) (.u8 97)), (.value (.fixed .u8) (.u8 122))]) (.build .true .bool []) (.prim .equal [(.var 0), (.value (.fixed .u8) (.u8 95))]))) }) ::( + { parameters := [0], types := [(.fixed .u8)], result := .bool, + body := (.cond (.call 94 [(.var 0)]) (.build .true .bool []) (.cond (.call 79 [(.var 0), (.value (.fixed .u8) (.u8 48)), (.value (.fixed .u8) (.u8 57))]) (.build .true .bool []) (.cond (.prim .equal [(.var 0), (.value (.fixed .u8) (.u8 63))]) (.build .true .bool []) (.prim .equal [(.var 0), (.value (.fixed .u8) (.u8 39))])))) }) ::( + { parameters := [0, 1], types := [.bytes, (.list .bytes)], result := (.option (.list .bytes)), + body := (.«match» (.option (.list .bytes)) (.var 1) [(.arm .nil [] (.build .some (.option (.list .bytes)) [(.build .cons (.list .bytes) [(.var 0), (.build .nil (.list .bytes) [])])])), (.arm .cons [2, 3] (.cond (.prim .equal [(.var 0), (.var 2)]) (.build .none (.option (.list .bytes)) []) (.cond (.call 54 [(.var 0), (.var 2)]) (.build .some (.option (.list .bytes)) [(.build .cons (.list .bytes) [(.var 0), (.build .cons (.list .bytes) [(.var 2), (.var 3)])])]) (.«match» (.option (.list .bytes)) (.call 96 [(.var 0), (.var 3)]) [(.arm .some [4] (.build .some (.option (.list .bytes)) [(.build .cons (.list .bytes) [(.var 2), (.var 4)])])), (.arm .none [] (.build .none (.option (.list .bytes)) []))]))))]) }) ::( + { parameters := [0, 1, 2], types := [.bytes, (.fixed .u8), (.pair .nat (.pair .nat (.list .bytes)))], result := (.option (.pair .nat (.pair .nat (.list .bytes)))), + body := (.«let» 3 .nat (.first (.var 2)) (.«let» 4 .nat (.first (.second (.var 2))) (.«let» 5 (.list .bytes) (.second (.second (.var 2))) (.«match» (.option (.pair .nat (.pair .nat (.list .bytes)))) (.call 51 [(.var 0), (.var 3)]) [(.arm .some [6] (.cond (.prim .equal [(.var 6), (.var 1)]) (.build .some (.option (.pair .nat (.pair .nat (.list .bytes)))) [(.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.prim .natAdd [(.var 3), (.value .nat (.nat 1))]), (.build .pair (.pair .nat (.list .bytes)) [(.prim .natAdd [(.var 3), (.value .nat (.nat 1))]), (.build .cons (.list .bytes) [(.call 18 [(.var 0), (.var 4), (.prim .natSub [(.var 3), (.var 4)])]), (.var 5)])])])]) (.build .some (.option (.pair .nat (.pair .nat (.list .bytes)))) [(.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.prim .natAdd [(.var 3), (.value .nat (.nat 1))]), (.build .pair (.pair .nat (.list .bytes)) [(.var 4), (.var 5)])])]))), (.arm .none [] (.build .none (.option (.pair .nat (.pair .nat (.list .bytes)))) []))])))) }) ::( + { parameters := [0, 1], types := [.bytes, .nat], result := (.option .nat), + body := (.cond (.call 70 [(.var 0), (.var 1), (.value (.fixed .u8) (.u8 48)), (.value (.fixed .u8) (.u8 57))]) (.build .some (.option .nat) [(.prim .natAdd [(.var 1), (.value .nat (.nat 1))])]) (.build .none (.option .nat) [])) }) ::[]) } + +def __enc_0 (__s : (LexLeanBoot.AxiomOutput.Rejection)) : _root_.LexLeanTarget.TargetSyntax.Value := + _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes (__s).message), ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (__s).declaration)] + +def __enc_2 (__s : (LexLeanBoot.AxiomOutput.Record)) : _root_.LexLeanTarget.TargetSyntax.Value := + _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes (__s).declaration), ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) (__s).axioms), ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (__s).expected)] + +def __enc_1 : (LexLeanBoot.AxiomOutput.Scan) -> _root_.LexLeanTarget.TargetSyntax.Value + | LexLeanBoot.AxiomOutput.Scan.between __x0 __x1 => _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [((_root_.LexLeanPreservation.encList __enc_2) __x0), ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) __x1)] + | LexLeanBoot.AxiomOutput.Scan.inside __x0 __x1 __x2 __x3 => _root_.LexLeanTarget.TargetSyntax.Value.adt 1 [((_root_.LexLeanPreservation.encList __enc_2) __x0), ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) __x1), (_root_.LexLeanTarget.TargetSyntax.Value.bytes __x2), ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) __x3)] + | LexLeanBoot.AxiomOutput.Scan.stopped __x0 => _root_.LexLeanTarget.TargetSyntax.Value.adt 2 [(__enc_0 __x0)] + +def __fits_19 (message : ByteArray) (declaration : (Option ByteArray)) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_19 (message : ByteArray) (declaration : (Option ByteArray)) : _root_.LexLeanPreservation.FunRel __prog 19 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes message), ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) declaration)] (_root_.LexLeanPreservation.Rel (__fits_19 message declaration) (__enc_0 (LexLeanBoot.AxiomOutput.rejected message declaration))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_adt) + +def __fits_5 (message : ByteArray) (declaration : (Option ByteArray)) : Bool := + ((((Bool.true && (Bool.true && Bool.true)) && (__fits_19 (message) (declaration))) && Bool.true) && Bool.true) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.rejected in +theorem __rel_5 (message : ByteArray) (declaration : (Option ByteArray)) : _root_.LexLeanPreservation.FunRel __prog 5 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes message), ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) declaration)] (_root_.LexLeanPreservation.Rel (__fits_5 message declaration) ((_root_.LexLeanPreservation.encExcept __enc_0 (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (LexLeanBoot.AxiomOutput.refuse message declaration))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_19 (message) (declaration))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error) + +def __fits_6 (left : ByteArray) (right : ByteArray) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_6 (left : ByteArray) (right : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 6 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes left), (_root_.LexLeanTarget.TargetSyntax.Value.bytes right)] (_root_.LexLeanPreservation.Rel (__fits_6 left right) (_root_.LexLeanTarget.TargetSyntax.Value.bytes (LexLeanBoot.AxiomOutput.cat left right))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_bytes left right)) + +def __fits_7 (literal : String) : Bool := + ((Bool.true && Bool.true) && Bool.true) + +theorem __rel_7 (literal : String) : _root_.LexLeanPreservation.FunRel __prog 7 [(_root_.LexLeanTarget.TargetSyntax.Value.string literal)] (_root_.LexLeanPreservation.Rel (__fits_7 literal) (_root_.LexLeanTarget.TargetSyntax.Value.bytes (LexLeanBoot.AxiomOutput.text literal))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_utf8Encode literal)) + +def __fits_18 (subject : ByteArray) (start : Nat) (count : Nat) : Bool := + (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && Bool.true) && (match (_root_.LexLeanRuntime.slice (subject) (start) (count) : (Option ByteArray)) with | Option.some piece => Bool.true | Option.none => Bool.true)) + +theorem __rel_18 (subject : ByteArray) (start : Nat) (count : Nat) : _root_.LexLeanPreservation.FunRel __prog 18 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat start), (_root_.LexLeanTarget.TargetSyntax.Value.nat count)] (_root_.LexLeanPreservation.Rel (__fits_18 subject start count) (_root_.LexLeanTarget.TargetSyntax.Value.bytes (LexLeanBoot.Text.sliceOr subject start count))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.some piece => Bool.true | Option.none => Bool.true)) (fun (__a : (Option ByteArray)) => _root_.LexLeanTarget.TargetSyntax.Value.bytes (match __a with | Option.some piece => piece | Option.none => (ByteArray.mk #[]))) (_root_.LexLeanRuntime.slice (subject) (start) (count) : (Option ByteArray)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.prim_slice_bytes subject start count)) (fun (__a : (Option ByteArray)) _ => match __a with | Option.some piece => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value)))) + +def __fits_51 (subject : ByteArray) (position : Nat) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_51 (subject : ByteArray) (position : Nat) : _root_.LexLeanPreservation.FunRel __prog 51 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat position)] (_root_.LexLeanPreservation.Rel (__fits_51 subject position) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u8) (LexLeanBoot.Text.byteAt subject position))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_index_bytes subject position)) + +def __fits_69 (subject : ByteArray) (position : Nat) (value : UInt8) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && (__fits_51 (subject) (position))) && (match (LexLeanBoot.Text.byteAt (subject) (position)) with | Option.some byte => ((Bool.true && (Bool.true && Bool.true)) && Bool.true) | Option.none => (Bool.true && Bool.true))) + +attribute [local irreducible] LexLeanBoot.Text.byteAt in +theorem __rel_69 (subject : ByteArray) (position : Nat) (value : UInt8) : _root_.LexLeanPreservation.FunRel __prog 69 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat position), (_root_.LexLeanTarget.TargetSyntax.Value.u8 value)] (_root_.LexLeanPreservation.Rel (__fits_69 subject position value) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanBoot.AxiomOutput.byteIs subject position value))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u8) (fun (__a : (Option UInt8)) => (match __a with | Option.some byte => ((Bool.true && (Bool.true && Bool.true)) && Bool.true) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option UInt8)) => _root_.LexLeanTarget.TargetSyntax.Value.bool (match __a with | Option.some byte => (_root_.LexLeanRuntime.equal (byte) (value) : Bool) | Option.none => Bool.false)) (LexLeanBoot.Text.byteAt (subject) (position)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_51 (subject) (position))) (fun (__a : (Option UInt8)) _ => match __a with | Option.some byte => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_u8 byte value))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))))) + +def __fits_53 (subject : ByteArray) (position : Nat) : Bool := + (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_69 (subject) (position) ((48 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((48 : UInt8))) then ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.byteIs in +theorem __rel_53 (subject : ByteArray) (position : Nat) : _root_.LexLeanPreservation.FunRel __prog 53 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat position)] (_root_.LexLeanPreservation.Rel (__fits_53 subject position) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (LexLeanBoot.AxiomOutput.zeroStep subject position))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Option.some ((position + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat)))) (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((48 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_69 (subject) (position) ((48 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (1 : Nat))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_39 (digits : ByteArray) (position : Nat) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && (__fits_53 (digits) (position))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.zeroStep in +theorem __rel_39 (digits : ByteArray) (position : Nat) : _root_.LexLeanPreservation.FunRel __prog 39 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes digits), (_root_.LexLeanTarget.TargetSyntax.Value.nat position)] (_root_.LexLeanPreservation.Rel (__fits_39 digits position) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) ((LexLeanBoot.AxiomOutput.zeroStep (digits) (position))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_53 (digits) (position))) + +def __fits_20 (digits : ByteArray) : Bool := + ((((Bool.true && Bool.true) && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (digits) : Nat) 18446744073709551616)) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : Nat) => __fits_39 (digits) __p0) ((fun (position : Nat) => (LexLeanBoot.AxiomOutput.zeroStep (digits) (position)))) ((_root_.LexLeanRuntime.length (digits) : Nat)) ((0 : Nat)))) && (let zeros : Nat := ((_root_.LexLeanCollections.iterateUntil ((fun (position : Nat) => (LexLeanBoot.AxiomOutput.zeroStep (digits) (position)))) ((_root_.LexLeanRuntime.length (digits) : Nat)) ((0 : Nat)) : (Prod Nat Bool))).1; ((Bool.true && (Bool.true && (((((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (digits) : Nat) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_18 (digits) (zeros) ((_root_.LexLeanRuntime.subtract ((_root_.LexLeanRuntime.length (digits) : Nat)) (zeros) : Nat)))))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.zeroStep LexLeanBoot.Text.sliceOr in +theorem __rel_20 (digits : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 20 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes digits)] (_root_.LexLeanPreservation.Rel (__fits_20 digits) (_root_.LexLeanTarget.TargetSyntax.Value.bytes (LexLeanBoot.AxiomOutput.significant digits))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (let zeros : Nat := ((_root_.LexLeanCollections.iterateUntil ((fun (position : Nat) => (LexLeanBoot.AxiomOutput.zeroStep (digits) (position)))) ((_root_.LexLeanRuntime.length (digits) : Nat)) ((0 : Nat)) : (Prod Nat Bool))).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes digits)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterateUntil (es := _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.optEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) ((fun (position : Nat) => (LexLeanBoot.AxiomOutput.zeroStep (digits) (position)))) (fun (__p0 : Nat) => __fits_39 (digits) __p0) 39 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes digits)] (fun (__p0 : Nat) => __rel_39 (digits) __p0) (_root_.LexLeanCollections.iterateUntil ((fun (position : Nat) => (LexLeanBoot.AxiomOutput.zeroStep (digits) (position))))) (fun _ => rfl) (fun _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (p := __prog) (fi := 38) (ts := .nat) rfl ((_root_.LexLeanRuntime.length (digits) : Nat)) ((0 : Nat))))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes digits)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub (_root_.LexLeanRuntime.length (digits) : Nat) zeros)) _root_.LexLeanPreservation.convL_nil))) (__rel_18 (digits) (zeros) ((_root_.LexLeanRuntime.subtract ((_root_.LexLeanRuntime.length (digits) : Nat)) (zeros) : Nat))))) + +def __fits_21 (number : Nat) (place : Nat) : Bool := + ((((Bool.true && Bool.true) && (__fits_7 ("0123456789"))) && (((((Bool.true && (Bool.true && (Bool.true && Bool.true))) && Bool.true) && (Bool.true && (Bool.true && Bool.true))) && Bool.true) && (Bool.true && Bool.true))) && (__fits_18 ((LexLeanBoot.AxiomOutput.text ("0123456789"))) ((_root_.LexLeanRuntime.remainder ((_root_.LexLeanRuntime.quotient (number) (place) ((0 : Nat)) : Nat)) ((10 : Nat)) ((0 : Nat)) : Nat)) ((1 : Nat)))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.text LexLeanBoot.Text.sliceOr in +theorem __rel_21 (number : Nat) (place : Nat) : _root_.LexLeanPreservation.FunRel __prog 21 [(_root_.LexLeanTarget.TargetSyntax.Value.nat number), (_root_.LexLeanTarget.TargetSyntax.Value.nat place)] (_root_.LexLeanPreservation.Rel (__fits_21 number place) (_root_.LexLeanTarget.TargetSyntax.Value.bytes (LexLeanBoot.AxiomOutput.digit number place))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("0123456789"))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.prim_natQuot number place (0 : Nat))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.prim_natRem (_root_.LexLeanRuntime.quotient (number) (place) ((0 : Nat)) : Nat) (10 : Nat) (0 : Nat))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_18 ((LexLeanBoot.AxiomOutput.text ("0123456789"))) ((_root_.LexLeanRuntime.remainder ((_root_.LexLeanRuntime.quotient (number) (place) ((0 : Nat)) : Nat)) ((10 : Nat)) ((0 : Nat)) : Nat)) ((1 : Nat)))) + +def __fits_8 (number : Nat) : Bool := + (((Bool.true && Bool.true) && (__fits_7 ("0"))) && (let zero : ByteArray := (LexLeanBoot.AxiomOutput.text ("0")); (((((((Bool.true && (Bool.true && Bool.true)) && (__fits_21 (number) ((10000000000000000000 : Nat)))) && (((((Bool.true && (Bool.true && Bool.true)) && (__fits_21 (number) ((1000000000000000000 : Nat)))) && (((((Bool.true && (Bool.true && Bool.true)) && (__fits_21 (number) ((100000000000000000 : Nat)))) && (((((Bool.true && (Bool.true && Bool.true)) && (__fits_21 (number) ((10000000000000000 : Nat)))) && (((((Bool.true && (Bool.true && Bool.true)) && (__fits_21 (number) ((1000000000000000 : Nat)))) && (((((Bool.true && (Bool.true && Bool.true)) && (__fits_21 (number) ((100000000000000 : Nat)))) && (((((Bool.true && (Bool.true && Bool.true)) && (__fits_21 (number) ((10000000000000 : Nat)))) && (((((Bool.true && (Bool.true && Bool.true)) && (__fits_21 (number) ((1000000000000 : Nat)))) && (((((Bool.true && (Bool.true && Bool.true)) && (__fits_21 (number) ((100000000000 : Nat)))) && (((((Bool.true && (Bool.true && Bool.true)) && (__fits_21 (number) ((10000000000 : Nat)))) && (((((Bool.true && (Bool.true && Bool.true)) && (__fits_21 (number) ((1000000000 : Nat)))) && (((((Bool.true && (Bool.true && Bool.true)) && (__fits_21 (number) ((100000000 : Nat)))) && (((((Bool.true && (Bool.true && Bool.true)) && (__fits_21 (number) ((10000000 : Nat)))) && (((((Bool.true && (Bool.true && Bool.true)) && (__fits_21 (number) ((1000000 : Nat)))) && (((((Bool.true && (Bool.true && Bool.true)) && (__fits_21 (number) ((100000 : Nat)))) && (((((Bool.true && (Bool.true && Bool.true)) && (__fits_21 (number) ((10000 : Nat)))) && (((((Bool.true && (Bool.true && Bool.true)) && (__fits_21 (number) ((1000 : Nat)))) && (((((Bool.true && (Bool.true && Bool.true)) && (__fits_21 (number) ((100 : Nat)))) && (((((Bool.true && (Bool.true && Bool.true)) && (__fits_21 (number) ((10 : Nat)))) && (((Bool.true && (Bool.true && Bool.true)) && (__fits_21 (number) ((1 : Nat)))) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && (__fits_20 ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10 : Nat)))) ((LexLeanBoot.AxiomOutput.digit (number) ((1 : Nat)))) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)))) && (let digits : ByteArray := (LexLeanBoot.AxiomOutput.significant ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10 : Nat)))) ((LexLeanBoot.AxiomOutput.digit (number) ((1 : Nat)))) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray))); (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq number (0 : Nat)) then Bool.true else Bool.true)))))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.digit LexLeanBoot.AxiomOutput.significant LexLeanBoot.AxiomOutput.text in +theorem __rel_8 (number : Nat) : _root_.LexLeanPreservation.FunRel __prog 8 [(_root_.LexLeanTarget.TargetSyntax.Value.nat number)] (_root_.LexLeanPreservation.Rel (__fits_8 number) (_root_.LexLeanTarget.TargetSyntax.Value.bytes (LexLeanBoot.AxiomOutput.decimal number))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (let zero : ByteArray := (LexLeanBoot.AxiomOutput.text ("0")); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("0"))) (let digits : ByteArray := (LexLeanBoot.AxiomOutput.significant ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10 : Nat)))) ((LexLeanBoot.AxiomOutput.digit (number) ((1 : Nat)))) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray))); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_21 (number) ((10000000000000000000 : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_21 (number) ((1000000000000000000 : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_21 (number) ((100000000000000000 : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_21 (number) ((10000000000000000 : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_21 (number) ((1000000000000000 : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_21 (number) ((100000000000000 : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_21 (number) ((10000000000000 : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_21 (number) ((1000000000000 : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_21 (number) ((100000000000 : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_21 (number) ((10000000000 : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_21 (number) ((1000000000 : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_21 (number) ((100000000 : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_21 (number) ((10000000 : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_21 (number) ((1000000 : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_21 (number) ((100000 : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_21 (number) ((10000 : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_21 (number) ((1000 : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_21 (number) ((100 : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_21 (number) ((10 : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_21 (number) ((1 : Nat)))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_bytes (LexLeanBoot.AxiomOutput.digit (number) ((10 : Nat))) (LexLeanBoot.AxiomOutput.digit (number) ((1 : Nat))))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_bytes (LexLeanBoot.AxiomOutput.digit (number) ((100 : Nat))) (_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10 : Nat)))) ((LexLeanBoot.AxiomOutput.digit (number) ((1 : Nat)))) : ByteArray))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_bytes (LexLeanBoot.AxiomOutput.digit (number) ((1000 : Nat))) (_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10 : Nat)))) ((LexLeanBoot.AxiomOutput.digit (number) ((1 : Nat)))) : ByteArray)) : ByteArray))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_bytes (LexLeanBoot.AxiomOutput.digit (number) ((10000 : Nat))) (_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10 : Nat)))) ((LexLeanBoot.AxiomOutput.digit (number) ((1 : Nat)))) : ByteArray)) : ByteArray)) : ByteArray))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_bytes (LexLeanBoot.AxiomOutput.digit (number) ((100000 : Nat))) (_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10 : Nat)))) ((LexLeanBoot.AxiomOutput.digit (number) ((1 : Nat)))) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_bytes (LexLeanBoot.AxiomOutput.digit (number) ((1000000 : Nat))) (_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10 : Nat)))) ((LexLeanBoot.AxiomOutput.digit (number) ((1 : Nat)))) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_bytes (LexLeanBoot.AxiomOutput.digit (number) ((10000000 : Nat))) (_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10 : Nat)))) ((LexLeanBoot.AxiomOutput.digit (number) ((1 : Nat)))) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_bytes (LexLeanBoot.AxiomOutput.digit (number) ((100000000 : Nat))) (_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10 : Nat)))) ((LexLeanBoot.AxiomOutput.digit (number) ((1 : Nat)))) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_bytes (LexLeanBoot.AxiomOutput.digit (number) ((1000000000 : Nat))) (_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10 : Nat)))) ((LexLeanBoot.AxiomOutput.digit (number) ((1 : Nat)))) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_bytes (LexLeanBoot.AxiomOutput.digit (number) ((10000000000 : Nat))) (_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10 : Nat)))) ((LexLeanBoot.AxiomOutput.digit (number) ((1 : Nat)))) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_bytes (LexLeanBoot.AxiomOutput.digit (number) ((100000000000 : Nat))) (_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10 : Nat)))) ((LexLeanBoot.AxiomOutput.digit (number) ((1 : Nat)))) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_bytes (LexLeanBoot.AxiomOutput.digit (number) ((1000000000000 : Nat))) (_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10 : Nat)))) ((LexLeanBoot.AxiomOutput.digit (number) ((1 : Nat)))) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_bytes (LexLeanBoot.AxiomOutput.digit (number) ((10000000000000 : Nat))) (_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10 : Nat)))) ((LexLeanBoot.AxiomOutput.digit (number) ((1 : Nat)))) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_bytes (LexLeanBoot.AxiomOutput.digit (number) ((100000000000000 : Nat))) (_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10 : Nat)))) ((LexLeanBoot.AxiomOutput.digit (number) ((1 : Nat)))) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_bytes (LexLeanBoot.AxiomOutput.digit (number) ((1000000000000000 : Nat))) (_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10 : Nat)))) ((LexLeanBoot.AxiomOutput.digit (number) ((1 : Nat)))) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_bytes (LexLeanBoot.AxiomOutput.digit (number) ((10000000000000000 : Nat))) (_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10 : Nat)))) ((LexLeanBoot.AxiomOutput.digit (number) ((1 : Nat)))) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_bytes (LexLeanBoot.AxiomOutput.digit (number) ((100000000000000000 : Nat))) (_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10 : Nat)))) ((LexLeanBoot.AxiomOutput.digit (number) ((1 : Nat)))) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_bytes (LexLeanBoot.AxiomOutput.digit (number) ((1000000000000000000 : Nat))) (_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10 : Nat)))) ((LexLeanBoot.AxiomOutput.digit (number) ((1 : Nat)))) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_bytes (LexLeanBoot.AxiomOutput.digit (number) ((10000000000000000000 : Nat))) (_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10 : Nat)))) ((LexLeanBoot.AxiomOutput.digit (number) ((1 : Nat)))) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray))) _root_.LexLeanPreservation.convL_nil) (__rel_20 ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10 : Nat)))) ((LexLeanBoot.AxiomOutput.digit (number) ((1 : Nat)))) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bytes (if __b then zero else digits)) (Nat.beq number (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq number (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_var rfl)) (fun _ => (_root_.LexLeanPreservation.conv_var rfl))))) + +def __fits_23 (count : Nat) (item : ByteArray) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (count + (1 : Nat)) 18446744073709551616)) + +theorem __rel_23 (count : Nat) (item : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 23 [(_root_.LexLeanTarget.TargetSyntax.Value.nat count), (_root_.LexLeanTarget.TargetSyntax.Value.bytes item)] (_root_.LexLeanPreservation.Rel (__fits_23 count item) (_root_.LexLeanTarget.TargetSyntax.Value.nat ((count + (1 : Nat))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd count (1 : Nat))) + +def __fits_9 (items : (List ByteArray)) : Bool := + ((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : Nat) (__p1 : ByteArray) => __fits_23 __p0 __p1) ((fun (count : Nat) (item : ByteArray) => (count + (1 : Nat)))) ((0 : Nat)) (items))) + +theorem __rel_9 (items : (List ByteArray)) : _root_.LexLeanPreservation.FunRel __prog 9 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) items)] (_root_.LexLeanPreservation.Rel (__fits_9 items) (_root_.LexLeanTarget.TargetSyntax.Value.nat (LexLeanBoot.AxiomOutput.listLength ByteArray items))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.bytes) (es := _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun _ => rfl) ((fun (count : Nat) (item : ByteArray) => (count + (1 : Nat)))) (fun (__p0 : Nat) (__p1 : ByteArray) => __fits_23 __p0 __p1) 23 [] (fun (__p0 : Nat) (__p1 : ByteArray) => __rel_23 __p0 __p1) (p := __prog) (fi := 22) (ta := .bytes) (ts := .nat) rfl ((0 : Nat)) (items))) + +def __fits_25 (count : Nat) (item : (LexLeanBoot.AxiomOutput.Record)) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (count + (1 : Nat)) 18446744073709551616)) + +theorem __rel_25 (count : Nat) (item : (LexLeanBoot.AxiomOutput.Record)) : _root_.LexLeanPreservation.FunRel __prog 25 [(_root_.LexLeanTarget.TargetSyntax.Value.nat count), (__enc_2 item)] (_root_.LexLeanPreservation.Rel (__fits_25 count item) (_root_.LexLeanTarget.TargetSyntax.Value.nat ((count + (1 : Nat))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd count (1 : Nat))) + +def __fits_10 (items : (List (LexLeanBoot.AxiomOutput.Record))) : Bool := + ((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : Nat) (__p1 : (LexLeanBoot.AxiomOutput.Record)) => __fits_25 __p0 __p1) ((fun (count : Nat) (item : (LexLeanBoot.AxiomOutput.Record)) => (count + (1 : Nat)))) ((0 : Nat)) (items))) + +theorem __rel_10 (items : (List (LexLeanBoot.AxiomOutput.Record))) : _root_.LexLeanPreservation.FunRel __prog 10 [((_root_.LexLeanPreservation.encList __enc_2) items)] (_root_.LexLeanPreservation.Rel (__fits_10 items) (_root_.LexLeanTarget.TargetSyntax.Value.nat (LexLeanBoot.AxiomOutput.listLength (LexLeanBoot.AxiomOutput.Record) items))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := __enc_2) (es := _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.listEnc __enc_2) (fun _ => rfl) ((fun (count : Nat) (item : (LexLeanBoot.AxiomOutput.Record)) => (count + (1 : Nat)))) (fun (__p0 : Nat) (__p1 : (LexLeanBoot.AxiomOutput.Record)) => __fits_25 __p0 __p1) 25 [] (fun (__p0 : Nat) (__p1 : (LexLeanBoot.AxiomOutput.Record)) => __rel_25 __p0 __p1) (p := __prog) (fi := 24) (ta := (.adt 2)) (ts := .nat) rfl ((0 : Nat)) (items))) + +def __fits_40 (name : ByteArray) : Bool := + ((((((Bool.true && Bool.true) && (__fits_7 ("`"))) && (Bool.true && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.text ("`"))) (name))) && (((Bool.true && Bool.true) && (__fits_7 ("`"))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("`"))) (name))) ((LexLeanBoot.AxiomOutput.text ("`"))))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.cat LexLeanBoot.AxiomOutput.text in +theorem __rel_40 (name : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 40 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes name)] (_root_.LexLeanPreservation.Rel (__fits_40 name) (_root_.LexLeanTarget.TargetSyntax.Value.bytes (LexLeanBoot.AxiomOutput.quoted name))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("`"))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_6 ((LexLeanBoot.AxiomOutput.text ("`"))) (name))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("`"))) _root_.LexLeanPreservation.convL_nil)) (__rel_6 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("`"))) (name))) ((LexLeanBoot.AxiomOutput.text ("`"))))) + +def __fits_54 (left : ByteArray) (right : ByteArray) : Bool := + ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) + +theorem __rel_54 (left : ByteArray) (right : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 54 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes left), (_root_.LexLeanTarget.TargetSyntax.Value.bytes right)] (_root_.LexLeanPreservation.Rel (__fits_54 left right) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanBoot.AxiomOutput.lessBytes left right))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_compareBytes left right)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_compareBytes (ByteArray.mk #[]) (ByteArray.mk #[1]))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_ordering (_root_.LexLeanRuntime.compareBytes (left) (right) : Ordering) (_root_.LexLeanRuntime.compareBytes ((ByteArray.mk #[])) ((ByteArray.mk #[1])) : Ordering))) + +def __fits_41 : ∀ (name : ByteArray) (axioms : (List ByteArray)) (entries : (List (Prod ByteArray (List ByteArray)))), Bool + | name, axioms, (List.nil) => (Bool.true && ((((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true)) + | name, axioms, (List.cons head tail) => (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal (name) ((head).1) : Bool) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && (__fits_54 (name) ((head).1))) && (if (LexLeanBoot.AxiomOutput.lessBytes (name) ((head).1)) then ((((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_41 (name) (axioms) (tail))) && (match (LexLeanBoot.AxiomOutput.insertEntry (name) (axioms) (tail)) with | Option.some inserted => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (Bool.true && Bool.true)))))))) + +theorem __rel_41 : ∀ (name : ByteArray) (axioms : (List ByteArray)) (entries : (List (Prod ByteArray (List ByteArray)))), _root_.LexLeanPreservation.FunRel __prog 41 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes name), ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) axioms), ((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) entries)] (_root_.LexLeanPreservation.Rel (__fits_41 name axioms entries) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (LexLeanBoot.AxiomOutput.insertEntry name axioms entries))) + | name, axioms, (List.nil) => by rw [__fits_41.eq_def]; exact _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_match (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some))) + | name, axioms, (List.cons head tail) => by rw [__fits_41.eq_def]; exact _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_match (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && (__fits_54 (name) ((head).1))) && (if (LexLeanBoot.AxiomOutput.lessBytes (name) ((head).1)) then ((((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_41 (name) (axioms) (tail))) && (match (LexLeanBoot.AxiomOutput.insertEntry (name) (axioms) (tail)) with | Option.some inserted => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (Bool.true && Bool.true))))))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (if __b then (Option.none : (Option (List (Prod ByteArray (List ByteArray))))) else (if (LexLeanBoot.AxiomOutput.lessBytes (name) ((head).1)) then (Option.some (((name, axioms) :: (head :: tail))) : (Option (List (Prod ByteArray (List ByteArray))))) else (match (LexLeanBoot.AxiomOutput.insertEntry (name) (axioms) (tail)) with | Option.some inserted => (Option.some ((head :: inserted)) : (Option (List (Prod ByteArray (List ByteArray))))) | Option.none => (Option.none : (Option (List (Prod ByteArray (List ByteArray))))))))) (_root_.LexLeanRuntime.equal (name) ((head).1) : Bool) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_bytes name (head).1)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_41 (name) (axioms) (tail))) && (match (LexLeanBoot.AxiomOutput.insertEntry (name) (axioms) (tail)) with | Option.some inserted => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (Bool.true && Bool.true))))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (if __b then (Option.some (((name, axioms) :: (head :: tail))) : (Option (List (Prod ByteArray (List ByteArray))))) else (match (LexLeanBoot.AxiomOutput.insertEntry (name) (axioms) (tail)) with | Option.some inserted => (Option.some ((head :: inserted)) : (Option (List (Prod ByteArray (List ByteArray))))) | Option.none => (Option.none : (Option (List (Prod ByteArray (List ByteArray)))))))) (LexLeanBoot.AxiomOutput.lessBytes (name) ((head).1)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil)) (__rel_54 (name) ((head).1))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (fun (__a : (Option (List (Prod ByteArray (List ByteArray))))) => (match __a with | Option.some inserted => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option (List (Prod ByteArray (List ByteArray))))) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (match __a with | Option.some inserted => (Option.some ((head :: inserted)) : (Option (List (Prod ByteArray (List ByteArray))))) | Option.none => (Option.none : (Option (List (Prod ByteArray (List ByteArray))))))) (LexLeanBoot.AxiomOutput.insertEntry (name) (axioms) (tail)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (__rel_41 (name) (axioms) (tail))) (fun (__a : (Option (List (Prod ByteArray (List ByteArray))))) _ => match __a with | Option.some inserted => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)))))))))))) + +def __fits_26 (state : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) (entry : (LexLeanBoot.AxiomOutput.Record)) : Bool := + (Bool.true && (match state with | Except.error rejection => Bool.true | Except.ok entries => ((Bool.true && (match (entry).expected with | Option.some name => Bool.true | Option.none => Bool.true)) && (let want : ByteArray := (match (entry).expected with | Option.some name => name | Option.none => (ByteArray.mk #[])); (((((((Bool.true && Bool.true) && (__fits_7 ("duplicate record for "))) && (((Bool.true && Bool.true) && (__fits_40 ((entry).declaration))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.text ("duplicate record for "))) ((LexLeanBoot.AxiomOutput.quoted ((entry).declaration))))) && (((Bool.true && Bool.true) && Bool.true) && Bool.true)) && (__fits_5 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("duplicate record for "))) ((LexLeanBoot.AxiomOutput.quoted ((entry).declaration))))) ((Option.some (want) : (Option ByteArray))))) && (let duplicate : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray)))) := (LexLeanBoot.AxiomOutput.refuse ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("duplicate record for "))) ((LexLeanBoot.AxiomOutput.quoted ((entry).declaration))))) ((Option.some (want) : (Option ByteArray)))); (((((((((((Bool.true && Bool.true) && (__fits_7 ("expected a record for "))) && (((Bool.true && Bool.true) && (__fits_40 (want))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.text ("expected a record for "))) ((LexLeanBoot.AxiomOutput.quoted (want))))) && (((Bool.true && Bool.true) && (__fits_7 (", found "))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected a record for "))) ((LexLeanBoot.AxiomOutput.quoted (want))))) ((LexLeanBoot.AxiomOutput.text (", found "))))) && (((Bool.true && Bool.true) && (__fits_40 ((entry).declaration))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected a record for "))) ((LexLeanBoot.AxiomOutput.quoted (want))))) ((LexLeanBoot.AxiomOutput.text (", found "))))) ((LexLeanBoot.AxiomOutput.quoted ((entry).declaration))))) && (((Bool.true && Bool.true) && Bool.true) && Bool.true)) && (__fits_5 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected a record for "))) ((LexLeanBoot.AxiomOutput.quoted (want))))) ((LexLeanBoot.AxiomOutput.text (", found "))))) ((LexLeanBoot.AxiomOutput.quoted ((entry).declaration))))) ((Option.some (want) : (Option ByteArray))))) && (let mismatch : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray)))) := (LexLeanBoot.AxiomOutput.refuse ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected a record for "))) ((LexLeanBoot.AxiomOutput.quoted (want))))) ((LexLeanBoot.AxiomOutput.text (", found "))))) ((LexLeanBoot.AxiomOutput.quoted ((entry).declaration))))) ((Option.some (want) : (Option ByteArray)))); (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal ((entry).declaration) (want) : Bool) then (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_41 ((entry).declaration) ((entry).axioms) (entries))) && (match (LexLeanBoot.AxiomOutput.insertEntry ((entry).declaration) ((entry).axioms) (entries)) with | Option.some inserted => ((Bool.true && Bool.true) && Bool.true) | Option.none => Bool.true)) else Bool.true)))))))))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.cat LexLeanBoot.AxiomOutput.insertEntry LexLeanBoot.AxiomOutput.quoted LexLeanBoot.AxiomOutput.refuse LexLeanBoot.AxiomOutput.text in +theorem __rel_26 (state : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) (entry : (LexLeanBoot.AxiomOutput.Record)) : _root_.LexLeanPreservation.FunRel __prog 26 [((_root_.LexLeanPreservation.encExcept __enc_0 (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) state), (__enc_2 entry)] (_root_.LexLeanPreservation.Rel (__fits_26 state entry) ((_root_.LexLeanPreservation.encExcept __enc_0 (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (LexLeanBoot.AxiomOutput.auditStep state entry))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encExcept __enc_0 (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (fun (__a : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) => (match __a with | Except.error rejection => Bool.true | Except.ok entries => ((Bool.true && (match (entry).expected with | Option.some name => Bool.true | Option.none => Bool.true)) && (let want : ByteArray := (match (entry).expected with | Option.some name => name | Option.none => (ByteArray.mk #[])); (((((((Bool.true && Bool.true) && (__fits_7 ("duplicate record for "))) && (((Bool.true && Bool.true) && (__fits_40 ((entry).declaration))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.text ("duplicate record for "))) ((LexLeanBoot.AxiomOutput.quoted ((entry).declaration))))) && (((Bool.true && Bool.true) && Bool.true) && Bool.true)) && (__fits_5 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("duplicate record for "))) ((LexLeanBoot.AxiomOutput.quoted ((entry).declaration))))) ((Option.some (want) : (Option ByteArray))))) && (let duplicate : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray)))) := (LexLeanBoot.AxiomOutput.refuse ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("duplicate record for "))) ((LexLeanBoot.AxiomOutput.quoted ((entry).declaration))))) ((Option.some (want) : (Option ByteArray)))); (((((((((((Bool.true && Bool.true) && (__fits_7 ("expected a record for "))) && (((Bool.true && Bool.true) && (__fits_40 (want))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.text ("expected a record for "))) ((LexLeanBoot.AxiomOutput.quoted (want))))) && (((Bool.true && Bool.true) && (__fits_7 (", found "))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected a record for "))) ((LexLeanBoot.AxiomOutput.quoted (want))))) ((LexLeanBoot.AxiomOutput.text (", found "))))) && (((Bool.true && Bool.true) && (__fits_40 ((entry).declaration))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected a record for "))) ((LexLeanBoot.AxiomOutput.quoted (want))))) ((LexLeanBoot.AxiomOutput.text (", found "))))) ((LexLeanBoot.AxiomOutput.quoted ((entry).declaration))))) && (((Bool.true && Bool.true) && Bool.true) && Bool.true)) && (__fits_5 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected a record for "))) ((LexLeanBoot.AxiomOutput.quoted (want))))) ((LexLeanBoot.AxiomOutput.text (", found "))))) ((LexLeanBoot.AxiomOutput.quoted ((entry).declaration))))) ((Option.some (want) : (Option ByteArray))))) && (let mismatch : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray)))) := (LexLeanBoot.AxiomOutput.refuse ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected a record for "))) ((LexLeanBoot.AxiomOutput.quoted (want))))) ((LexLeanBoot.AxiomOutput.text (", found "))))) ((LexLeanBoot.AxiomOutput.quoted ((entry).declaration))))) ((Option.some (want) : (Option ByteArray)))); (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal ((entry).declaration) (want) : Bool) then (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_41 ((entry).declaration) ((entry).axioms) (entries))) && (match (LexLeanBoot.AxiomOutput.insertEntry ((entry).declaration) ((entry).axioms) (entries)) with | Option.some inserted => ((Bool.true && Bool.true) && Bool.true) | Option.none => Bool.true)) else Bool.true)))))))))) (fun (__a : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) => (_root_.LexLeanPreservation.encExcept __enc_0 (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (match __a with | Except.error rejection => state | Except.ok entries => (let want : ByteArray := (match (entry).expected with | Option.some name => name | Option.none => (ByteArray.mk #[])); (let duplicate : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray)))) := (LexLeanBoot.AxiomOutput.refuse ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("duplicate record for "))) ((LexLeanBoot.AxiomOutput.quoted ((entry).declaration))))) ((Option.some (want) : (Option ByteArray)))); (let mismatch : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray)))) := (LexLeanBoot.AxiomOutput.refuse ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected a record for "))) ((LexLeanBoot.AxiomOutput.quoted (want))))) ((LexLeanBoot.AxiomOutput.text (", found "))))) ((LexLeanBoot.AxiomOutput.quoted ((entry).declaration))))) ((Option.some (want) : (Option ByteArray)))); (if (_root_.LexLeanRuntime.equal ((entry).declaration) (want) : Bool) then (match (LexLeanBoot.AxiomOutput.insertEntry ((entry).declaration) ((entry).axioms) (entries)) with | Option.some inserted => (Except.ok (inserted) : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) | Option.none => duplicate) else mismatch)))))) state (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) _ => match __a with | Except.error rejection => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | Except.ok entries => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (let want : ByteArray := (match (entry).expected with | Option.some name => name | Option.none => (ByteArray.mk #[])); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.some name => Bool.true | Option.none => Bool.true)) (fun (__a : (Option ByteArray)) => _root_.LexLeanTarget.TargetSyntax.Value.bytes (match __a with | Option.some name => name | Option.none => (ByteArray.mk #[]))) (entry).expected (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (fun (__a : (Option ByteArray)) _ => match __a with | Option.some name => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value)))) (let duplicate : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray)))) := (LexLeanBoot.AxiomOutput.refuse ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("duplicate record for "))) ((LexLeanBoot.AxiomOutput.quoted ((entry).declaration))))) ((Option.some (want) : (Option ByteArray)))); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("duplicate record for "))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_40 ((entry).declaration))) _root_.LexLeanPreservation.convL_nil)) (__rel_6 ((LexLeanBoot.AxiomOutput.text ("duplicate record for "))) ((LexLeanBoot.AxiomOutput.quoted ((entry).declaration))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some) _root_.LexLeanPreservation.convL_nil)) (__rel_5 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("duplicate record for "))) ((LexLeanBoot.AxiomOutput.quoted ((entry).declaration))))) ((Option.some (want) : (Option ByteArray))))) (let mismatch : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray)))) := (LexLeanBoot.AxiomOutput.refuse ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected a record for "))) ((LexLeanBoot.AxiomOutput.quoted (want))))) ((LexLeanBoot.AxiomOutput.text (", found "))))) ((LexLeanBoot.AxiomOutput.quoted ((entry).declaration))))) ((Option.some (want) : (Option ByteArray)))); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("expected a record for "))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_40 (want))) _root_.LexLeanPreservation.convL_nil)) (__rel_6 ((LexLeanBoot.AxiomOutput.text ("expected a record for "))) ((LexLeanBoot.AxiomOutput.quoted (want))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 (", found "))) _root_.LexLeanPreservation.convL_nil)) (__rel_6 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected a record for "))) ((LexLeanBoot.AxiomOutput.quoted (want))))) ((LexLeanBoot.AxiomOutput.text (", found "))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_40 ((entry).declaration))) _root_.LexLeanPreservation.convL_nil)) (__rel_6 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected a record for "))) ((LexLeanBoot.AxiomOutput.quoted (want))))) ((LexLeanBoot.AxiomOutput.text (", found "))))) ((LexLeanBoot.AxiomOutput.quoted ((entry).declaration))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some) _root_.LexLeanPreservation.convL_nil)) (__rel_5 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected a record for "))) ((LexLeanBoot.AxiomOutput.quoted (want))))) ((LexLeanBoot.AxiomOutput.text (", found "))))) ((LexLeanBoot.AxiomOutput.quoted ((entry).declaration))))) ((Option.some (want) : (Option ByteArray))))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_41 ((entry).declaration) ((entry).axioms) (entries))) && (match (LexLeanBoot.AxiomOutput.insertEntry ((entry).declaration) ((entry).axioms) (entries)) with | Option.some inserted => ((Bool.true && Bool.true) && Bool.true) | Option.none => Bool.true)) else Bool.true)) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept __enc_0 (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (if __b then (match (LexLeanBoot.AxiomOutput.insertEntry ((entry).declaration) ((entry).axioms) (entries)) with | Option.some inserted => (Except.ok (inserted) : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) | Option.none => duplicate) else mismatch)) (_root_.LexLeanRuntime.equal ((entry).declaration) (want) : Bool) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_bytes (entry).declaration want)) (fun _ => (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (fun (__a : (Option (List (Prod ByteArray (List ByteArray))))) => (match __a with | Option.some inserted => ((Bool.true && Bool.true) && Bool.true) | Option.none => Bool.true)) (fun (__a : (Option (List (Prod ByteArray (List ByteArray))))) => (_root_.LexLeanPreservation.encExcept __enc_0 (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (match __a with | Option.some inserted => (Except.ok (inserted) : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) | Option.none => duplicate)) (LexLeanBoot.AxiomOutput.insertEntry ((entry).declaration) ((entry).axioms) (entries)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (__rel_41 ((entry).declaration) ((entry).axioms) (entries))) (fun (__a : (Option (List (Prod ByteArray (List ByteArray))))) _ => match __a with | Option.some inserted => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)))))) (fun _ => (_root_.LexLeanPreservation.conv_var rfl)))))))))) + +def __fits_12 (state : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) (entry : (LexLeanBoot.AxiomOutput.Record)) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && (__fits_26 (state) (entry))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.auditStep in +theorem __rel_12 (state : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) (entry : (LexLeanBoot.AxiomOutput.Record)) : _root_.LexLeanPreservation.FunRel __prog 12 [((_root_.LexLeanPreservation.encExcept __enc_0 (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) state), (__enc_2 entry)] (_root_.LexLeanPreservation.Rel (__fits_12 state entry) ((_root_.LexLeanPreservation.encExcept __enc_0 (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) ((LexLeanBoot.AxiomOutput.auditStep (state) (entry))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_26 (state) (entry))) + +def __fits_28 (turned : (List (LexLeanBoot.AxiomOutput.Record))) (item : (LexLeanBoot.AxiomOutput.Record)) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_28 (turned : (List (LexLeanBoot.AxiomOutput.Record))) (item : (LexLeanBoot.AxiomOutput.Record)) : _root_.LexLeanPreservation.FunRel __prog 28 [((_root_.LexLeanPreservation.encList __enc_2) turned), (__enc_2 item)] (_root_.LexLeanPreservation.Rel (__fits_28 turned item) ((_root_.LexLeanPreservation.encList __enc_2) ((item :: turned)))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) + +def __fits_13 (items : (List (LexLeanBoot.AxiomOutput.Record))) : Bool := + ((Bool.true && ((Bool.true && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (List (LexLeanBoot.AxiomOutput.Record))) (__p1 : (LexLeanBoot.AxiomOutput.Record)) => __fits_28 __p0 __p1) ((fun (turned : (List (LexLeanBoot.AxiomOutput.Record))) (item : (LexLeanBoot.AxiomOutput.Record)) => (item :: turned))) (([] : List (LexLeanBoot.AxiomOutput.Record))) (items))) + +theorem __rel_13 (items : (List (LexLeanBoot.AxiomOutput.Record))) : _root_.LexLeanPreservation.FunRel __prog 13 [((_root_.LexLeanPreservation.encList __enc_2) items)] (_root_.LexLeanPreservation.Rel (__fits_13 items) ((_root_.LexLeanPreservation.encList __enc_2) (LexLeanBoot.AxiomOutput.reversed (LexLeanBoot.AxiomOutput.Record) items))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := __enc_2) (es := (_root_.LexLeanPreservation.encList __enc_2)) (_root_.LexLeanPreservation.listEnc __enc_2) (fun _ => rfl) ((fun (turned : (List (LexLeanBoot.AxiomOutput.Record))) (item : (LexLeanBoot.AxiomOutput.Record)) => (item :: turned))) (fun (__p0 : (List (LexLeanBoot.AxiomOutput.Record))) (__p1 : (LexLeanBoot.AxiomOutput.Record)) => __fits_28 __p0 __p1) 28 [] (fun (__p0 : (List (LexLeanBoot.AxiomOutput.Record))) (__p1 : (LexLeanBoot.AxiomOutput.Record)) => __rel_28 __p0 __p1) (p := __prog) (fi := 27) (ta := (.adt 2)) (ts := (.list (.adt 2))) rfl (([] : List (LexLeanBoot.AxiomOutput.Record))) (items))) + +def __fits_1 (scan : (LexLeanBoot.AxiomOutput.Scan)) (expected : (List ByteArray)) : Bool := + (Bool.true && (match scan with | LexLeanBoot.AxiomOutput.Scan.stopped rejection => ((Bool.true && Bool.true) && Bool.true) | LexLeanBoot.AxiomOutput.Scan.inside records remaining payload about => ((((((Bool.true && Bool.true) && (__fits_7 ("unterminated axiom payload: "))) && (Bool.true && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.text ("unterminated axiom payload: "))) (payload))) && (Bool.true && Bool.true)) && (__fits_5 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("unterminated axiom payload: "))) (payload))) (about))) | LexLeanBoot.AxiomOutput.Scan.between records remaining => (((((((((((Bool.true && Bool.true) && (__fits_7 ("expected "))) && (((((Bool.true && Bool.true) && (__fits_9 (expected))) && Bool.true) && (__fits_8 ((LexLeanBoot.AxiomOutput.listLength ByteArray (expected))))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.text ("expected "))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength ByteArray (expected))))))) && (((Bool.true && Bool.true) && (__fits_7 (" audit records, found "))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected "))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength ByteArray (expected))))))) ((LexLeanBoot.AxiomOutput.text (" audit records, found "))))) && (((((Bool.true && Bool.true) && (__fits_10 (records))) && Bool.true) && (__fits_8 ((LexLeanBoot.AxiomOutput.listLength (LexLeanBoot.AxiomOutput.Record) (records))))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected "))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength ByteArray (expected))))))) ((LexLeanBoot.AxiomOutput.text (" audit records, found "))))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength (LexLeanBoot.AxiomOutput.Record) (records))))))) && ((Bool.true && Bool.true) && Bool.true)) && (__fits_5 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected "))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength ByteArray (expected))))))) ((LexLeanBoot.AxiomOutput.text (" audit records, found "))))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength (LexLeanBoot.AxiomOutput.Record) (records))))))) ((Option.none : (Option ByteArray))))) && (let counted : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray)))) := (LexLeanBoot.AxiomOutput.refuse ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected "))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength ByteArray (expected))))))) ((LexLeanBoot.AxiomOutput.text (" audit records, found "))))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength (LexLeanBoot.AxiomOutput.Record) (records))))))) ((Option.none : (Option ByteArray)))); (((((Bool.true && Bool.true) && (__fits_10 (records))) && (((Bool.true && Bool.true) && (__fits_9 (expected))) && Bool.true)) && Bool.true) && (if (Nat.beq (LexLeanBoot.AxiomOutput.listLength (LexLeanBoot.AxiomOutput.Record) (records)) (LexLeanBoot.AxiomOutput.listLength ByteArray (expected))) then ((Bool.true && ((((Bool.true && Bool.true) && Bool.true) && Bool.true) && (((Bool.true && Bool.true) && (__fits_13 (records))) && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) (__p1 : (LexLeanBoot.AxiomOutput.Record)) => __fits_12 __p0 __p1) ((fun (state : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) (entry : (LexLeanBoot.AxiomOutput.Record)) => (LexLeanBoot.AxiomOutput.auditStep (state) (entry)))) ((Except.ok (([] : List (Prod ByteArray (List ByteArray)))) : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray)))))) ((LexLeanBoot.AxiomOutput.reversed (LexLeanBoot.AxiomOutput.Record) (records))))) else Bool.true)))))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.auditStep LexLeanBoot.AxiomOutput.cat LexLeanBoot.AxiomOutput.decimal LexLeanBoot.AxiomOutput.listLength LexLeanBoot.AxiomOutput.refuse LexLeanBoot.AxiomOutput.reversed LexLeanBoot.AxiomOutput.text in +theorem __rel_1 (scan : (LexLeanBoot.AxiomOutput.Scan)) (expected : (List ByteArray)) : _root_.LexLeanPreservation.FunRel __prog 1 [(__enc_1 scan), ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) expected)] (_root_.LexLeanPreservation.Rel (__fits_1 scan expected) ((_root_.LexLeanPreservation.encExcept __enc_0 (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (LexLeanBoot.AxiomOutput.finish scan expected))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV __enc_1 (fun (__a : (LexLeanBoot.AxiomOutput.Scan)) => (match __a with | LexLeanBoot.AxiomOutput.Scan.stopped rejection => ((Bool.true && Bool.true) && Bool.true) | LexLeanBoot.AxiomOutput.Scan.inside records remaining payload about => ((((((Bool.true && Bool.true) && (__fits_7 ("unterminated axiom payload: "))) && (Bool.true && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.text ("unterminated axiom payload: "))) (payload))) && (Bool.true && Bool.true)) && (__fits_5 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("unterminated axiom payload: "))) (payload))) (about))) | LexLeanBoot.AxiomOutput.Scan.between records remaining => (((((((((((Bool.true && Bool.true) && (__fits_7 ("expected "))) && (((((Bool.true && Bool.true) && (__fits_9 (expected))) && Bool.true) && (__fits_8 ((LexLeanBoot.AxiomOutput.listLength ByteArray (expected))))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.text ("expected "))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength ByteArray (expected))))))) && (((Bool.true && Bool.true) && (__fits_7 (" audit records, found "))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected "))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength ByteArray (expected))))))) ((LexLeanBoot.AxiomOutput.text (" audit records, found "))))) && (((((Bool.true && Bool.true) && (__fits_10 (records))) && Bool.true) && (__fits_8 ((LexLeanBoot.AxiomOutput.listLength (LexLeanBoot.AxiomOutput.Record) (records))))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected "))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength ByteArray (expected))))))) ((LexLeanBoot.AxiomOutput.text (" audit records, found "))))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength (LexLeanBoot.AxiomOutput.Record) (records))))))) && ((Bool.true && Bool.true) && Bool.true)) && (__fits_5 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected "))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength ByteArray (expected))))))) ((LexLeanBoot.AxiomOutput.text (" audit records, found "))))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength (LexLeanBoot.AxiomOutput.Record) (records))))))) ((Option.none : (Option ByteArray))))) && (let counted : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray)))) := (LexLeanBoot.AxiomOutput.refuse ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected "))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength ByteArray (expected))))))) ((LexLeanBoot.AxiomOutput.text (" audit records, found "))))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength (LexLeanBoot.AxiomOutput.Record) (records))))))) ((Option.none : (Option ByteArray)))); (((((Bool.true && Bool.true) && (__fits_10 (records))) && (((Bool.true && Bool.true) && (__fits_9 (expected))) && Bool.true)) && Bool.true) && (if (Nat.beq (LexLeanBoot.AxiomOutput.listLength (LexLeanBoot.AxiomOutput.Record) (records)) (LexLeanBoot.AxiomOutput.listLength ByteArray (expected))) then ((Bool.true && ((((Bool.true && Bool.true) && Bool.true) && Bool.true) && (((Bool.true && Bool.true) && (__fits_13 (records))) && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) (__p1 : (LexLeanBoot.AxiomOutput.Record)) => __fits_12 __p0 __p1) ((fun (state : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) (entry : (LexLeanBoot.AxiomOutput.Record)) => (LexLeanBoot.AxiomOutput.auditStep (state) (entry)))) ((Except.ok (([] : List (Prod ByteArray (List ByteArray)))) : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray)))))) ((LexLeanBoot.AxiomOutput.reversed (LexLeanBoot.AxiomOutput.Record) (records))))) else Bool.true)))))) (fun (__a : (LexLeanBoot.AxiomOutput.Scan)) => (_root_.LexLeanPreservation.encExcept __enc_0 (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (match __a with | LexLeanBoot.AxiomOutput.Scan.stopped rejection => (Except.error (rejection) : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) | LexLeanBoot.AxiomOutput.Scan.inside records remaining payload about => (LexLeanBoot.AxiomOutput.refuse ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("unterminated axiom payload: "))) (payload))) (about)) | LexLeanBoot.AxiomOutput.Scan.between records remaining => (let counted : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray)))) := (LexLeanBoot.AxiomOutput.refuse ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected "))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength ByteArray (expected))))))) ((LexLeanBoot.AxiomOutput.text (" audit records, found "))))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength (LexLeanBoot.AxiomOutput.Record) (records))))))) ((Option.none : (Option ByteArray)))); (if (Nat.beq (LexLeanBoot.AxiomOutput.listLength (LexLeanBoot.AxiomOutput.Record) (records)) (LexLeanBoot.AxiomOutput.listLength ByteArray (expected))) then (_root_.LexLeanCollections.listFold ((fun (state : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) (entry : (LexLeanBoot.AxiomOutput.Record)) => (LexLeanBoot.AxiomOutput.auditStep (state) (entry)))) ((Except.ok (([] : List (Prod ByteArray (List ByteArray)))) : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray)))))) ((LexLeanBoot.AxiomOutput.reversed (LexLeanBoot.AxiomOutput.Record) (records))) : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) else counted)))) scan (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (LexLeanBoot.AxiomOutput.Scan)) _ => match __a with | LexLeanBoot.AxiomOutput.Scan.stopped rejection => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)) | LexLeanBoot.AxiomOutput.Scan.inside records remaining payload about => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("unterminated axiom payload: "))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_6 ((LexLeanBoot.AxiomOutput.text ("unterminated axiom payload: "))) (payload))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_5 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("unterminated axiom payload: "))) (payload))) (about))))) | LexLeanBoot.AxiomOutput.Scan.between records remaining => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (let counted : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray)))) := (LexLeanBoot.AxiomOutput.refuse ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected "))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength ByteArray (expected))))))) ((LexLeanBoot.AxiomOutput.text (" audit records, found "))))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength (LexLeanBoot.AxiomOutput.Record) (records))))))) ((Option.none : (Option ByteArray)))); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("expected "))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_9 (expected))) _root_.LexLeanPreservation.convL_nil) (__rel_8 ((LexLeanBoot.AxiomOutput.listLength ByteArray (expected))))) _root_.LexLeanPreservation.convL_nil)) (__rel_6 ((LexLeanBoot.AxiomOutput.text ("expected "))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength ByteArray (expected))))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 (" audit records, found "))) _root_.LexLeanPreservation.convL_nil)) (__rel_6 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected "))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength ByteArray (expected))))))) ((LexLeanBoot.AxiomOutput.text (" audit records, found "))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_10 (records))) _root_.LexLeanPreservation.convL_nil) (__rel_8 ((LexLeanBoot.AxiomOutput.listLength (LexLeanBoot.AxiomOutput.Record) (records))))) _root_.LexLeanPreservation.convL_nil)) (__rel_6 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected "))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength ByteArray (expected))))))) ((LexLeanBoot.AxiomOutput.text (" audit records, found "))))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength (LexLeanBoot.AxiomOutput.Record) (records))))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none) _root_.LexLeanPreservation.convL_nil)) (__rel_5 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected "))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength ByteArray (expected))))))) ((LexLeanBoot.AxiomOutput.text (" audit records, found "))))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength (LexLeanBoot.AxiomOutput.Record) (records))))))) ((Option.none : (Option ByteArray))))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && ((((Bool.true && Bool.true) && Bool.true) && Bool.true) && (((Bool.true && Bool.true) && (__fits_13 (records))) && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) (__p1 : (LexLeanBoot.AxiomOutput.Record)) => __fits_12 __p0 __p1) ((fun (state : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) (entry : (LexLeanBoot.AxiomOutput.Record)) => (LexLeanBoot.AxiomOutput.auditStep (state) (entry)))) ((Except.ok (([] : List (Prod ByteArray (List ByteArray)))) : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray)))))) ((LexLeanBoot.AxiomOutput.reversed (LexLeanBoot.AxiomOutput.Record) (records))))) else Bool.true)) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept __enc_0 (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (if __b then (_root_.LexLeanCollections.listFold ((fun (state : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) (entry : (LexLeanBoot.AxiomOutput.Record)) => (LexLeanBoot.AxiomOutput.auditStep (state) (entry)))) ((Except.ok (([] : List (Prod ByteArray (List ByteArray)))) : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray)))))) ((LexLeanBoot.AxiomOutput.reversed (LexLeanBoot.AxiomOutput.Record) (records))) : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) else counted)) (Nat.beq (LexLeanBoot.AxiomOutput.listLength (LexLeanBoot.AxiomOutput.Record) (records)) (LexLeanBoot.AxiomOutput.listLength ByteArray (expected))) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_10 (records))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_9 (expected))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (LexLeanBoot.AxiomOutput.listLength (LexLeanBoot.AxiomOutput.Record) (records)) (LexLeanBoot.AxiomOutput.listLength ByteArray (expected)))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_13 (records))) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := __enc_2) (es := (_root_.LexLeanPreservation.encExcept __enc_0 (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))))) (_root_.LexLeanPreservation.listEnc __enc_2) (fun _ => rfl) ((fun (state : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) (entry : (LexLeanBoot.AxiomOutput.Record)) => (LexLeanBoot.AxiomOutput.auditStep (state) (entry)))) (fun (__p0 : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) (__p1 : (LexLeanBoot.AxiomOutput.Record)) => __fits_12 __p0 __p1) 12 [] (fun (__p0 : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) (__p1 : (LexLeanBoot.AxiomOutput.Record)) => __rel_12 __p0 __p1) (p := __prog) (fi := 11) (ta := (.adt 2)) (ts := (.result (.list (.pair .bytes (.list .bytes))) (.adt 0))) rfl ((Except.ok (([] : List (Prod ByteArray (List ByteArray)))) : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray)))))) ((LexLeanBoot.AxiomOutput.reversed (LexLeanBoot.AxiomOutput.Record) (records)))))) (fun _ => (_root_.LexLeanPreservation.conv_var rfl))))))))) + +def __fits_79 (byte : UInt8) (low : UInt8) (high : UInt8) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (match (_root_.LexLeanRuntime.checkedSubtract (byte) (low) : (Option UInt8)) with | Option.some above => (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (match (_root_.LexLeanRuntime.checkedSubtract (high) (byte) : (Option UInt8)) with | Option.some below => (Bool.true && Bool.true) | Option.none => (Bool.true && Bool.true))) | Option.none => (Bool.true && Bool.true))) + +theorem __rel_79 (byte : UInt8) (low : UInt8) (high : UInt8) : _root_.LexLeanPreservation.FunRel __prog 79 [(_root_.LexLeanTarget.TargetSyntax.Value.u8 byte), (_root_.LexLeanTarget.TargetSyntax.Value.u8 low), (_root_.LexLeanTarget.TargetSyntax.Value.u8 high)] (_root_.LexLeanPreservation.Rel (__fits_79 byte low high) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanBoot.AxiomOutput.inRange byte low high))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u8) (fun (__a : (Option UInt8)) => (match __a with | Option.some above => (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (match (_root_.LexLeanRuntime.checkedSubtract (high) (byte) : (Option UInt8)) with | Option.some below => (Bool.true && Bool.true) | Option.none => (Bool.true && Bool.true))) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option UInt8)) => _root_.LexLeanTarget.TargetSyntax.Value.bool (match __a with | Option.some above => (match (_root_.LexLeanRuntime.checkedSubtract (high) (byte) : (Option UInt8)) with | Option.some below => Bool.true | Option.none => Bool.false) | Option.none => Bool.false)) (_root_.LexLeanRuntime.checkedSubtract (byte) (low) : (Option UInt8)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_checkedSub_u8 byte low)) (fun (__a : (Option UInt8)) _ => match __a with | Option.some above => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u8) (fun (__a : (Option UInt8)) => (match __a with | Option.some below => (Bool.true && Bool.true) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option UInt8)) => _root_.LexLeanTarget.TargetSyntax.Value.bool (match __a with | Option.some below => Bool.true | Option.none => Bool.false)) (_root_.LexLeanRuntime.checkedSubtract (high) (byte) : (Option UInt8)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_checkedSub_u8 high byte)) (fun (__a : (Option UInt8)) _ => match __a with | Option.some below => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))))) + +def __fits_70 (subject : ByteArray) (position : Nat) (low : UInt8) (high : UInt8) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && (__fits_51 (subject) (position))) && (match (LexLeanBoot.Text.byteAt (subject) (position)) with | Option.some byte => ((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_79 (byte) (low) (high))) | Option.none => (Bool.true && Bool.true))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.inRange LexLeanBoot.Text.byteAt in +theorem __rel_70 (subject : ByteArray) (position : Nat) (low : UInt8) (high : UInt8) : _root_.LexLeanPreservation.FunRel __prog 70 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat position), (_root_.LexLeanTarget.TargetSyntax.Value.u8 low), (_root_.LexLeanTarget.TargetSyntax.Value.u8 high)] (_root_.LexLeanPreservation.Rel (__fits_70 subject position low high) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanBoot.AxiomOutput.byteIn subject position low high))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u8) (fun (__a : (Option UInt8)) => (match __a with | Option.some byte => ((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_79 (byte) (low) (high))) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option UInt8)) => _root_.LexLeanTarget.TargetSyntax.Value.bool (match __a with | Option.some byte => (LexLeanBoot.AxiomOutput.inRange (byte) (low) (high)) | Option.none => Bool.false)) (LexLeanBoot.Text.byteAt (subject) (position)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_51 (subject) (position))) (fun (__a : (Option UInt8)) _ => match __a with | Option.some byte => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (__rel_79 (byte) (low) (high)))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))))) + +def __fits_55 (subject : ByteArray) (position : Nat) : Bool := + ((((Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true)))) && (__fits_70 (subject) (position) ((9 : UInt8)) ((13 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIn (subject) (position) ((9 : UInt8)) ((13 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_69 (subject) (position) ((32 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((32 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))))) && (if (if (LexLeanBoot.AxiomOutput.byteIn (subject) (position) ((9 : UInt8)) ((13 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((32 : UInt8))) then Bool.true else Bool.false)) then Bool.true else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_69 (subject) (position) ((194 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((194 : UInt8))) then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((133 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((133 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((160 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((160 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))))) && (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((133 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((160 : UInt8))) then Bool.true else Bool.false)) then Bool.true else Bool.true)) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_69 (subject) (position) ((225 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((225 : UInt8))) then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((154 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((154 : UInt8))) then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((128 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((154 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then Bool.true else Bool.false) else Bool.false) then Bool.true else Bool.true)) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_69 (subject) (position) ((226 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((226 : UInt8))) then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((128 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && (Bool.true && Bool.true)))) && (__fits_70 (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIn (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((168 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((168 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((169 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((169 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((175 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))))))))) && (if (if (LexLeanBoot.AxiomOutput.byteIn (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((168 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((169 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then Bool.true else Bool.false)))) then Bool.true else Bool.true)) else ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((129 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((129 : UInt8))) then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((159 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((159 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((129 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((159 : UInt8))) then Bool.true else Bool.false) else Bool.false) then Bool.true else Bool.true)))) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_69 (subject) (position) ((227 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((227 : UInt8))) then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((128 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((128 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then Bool.true else Bool.false) else Bool.false) then Bool.true else Bool.true)) else Bool.true)))))))))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.byteIn LexLeanBoot.AxiomOutput.byteIs in +theorem __rel_55 (subject : ByteArray) (position : Nat) : _root_.LexLeanPreservation.FunRel __prog 55 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat position)] (_root_.LexLeanPreservation.Rel (__fits_55 subject position) (_root_.LexLeanTarget.TargetSyntax.Value.nat (LexLeanBoot.AxiomOutput.whiteLength subject position))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_69 (subject) (position) ((194 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((194 : UInt8))) then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((133 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((133 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((160 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((160 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))))) && (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((133 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((160 : UInt8))) then Bool.true else Bool.false)) then Bool.true else Bool.true)) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_69 (subject) (position) ((225 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((225 : UInt8))) then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((154 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((154 : UInt8))) then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((128 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((154 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then Bool.true else Bool.false) else Bool.false) then Bool.true else Bool.true)) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_69 (subject) (position) ((226 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((226 : UInt8))) then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((128 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && (Bool.true && Bool.true)))) && (__fits_70 (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIn (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((168 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((168 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((169 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((169 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((175 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))))))))) && (if (if (LexLeanBoot.AxiomOutput.byteIn (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((168 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((169 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then Bool.true else Bool.false)))) then Bool.true else Bool.true)) else ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((129 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((129 : UInt8))) then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((159 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((159 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((129 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((159 : UInt8))) then Bool.true else Bool.false) else Bool.false) then Bool.true else Bool.true)))) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_69 (subject) (position) ((227 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((227 : UInt8))) then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((128 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((128 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then Bool.true else Bool.false) else Bool.false) then Bool.true else Bool.true)) else Bool.true)))))))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (1 : Nat) else (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((194 : UInt8))) then (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((133 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((160 : UInt8))) then Bool.true else Bool.false)) then (2 : Nat) else (0 : Nat)) else (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((225 : UInt8))) then (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((154 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then Bool.true else Bool.false) else Bool.false) then (3 : Nat) else (0 : Nat)) else (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((226 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then (if (if (LexLeanBoot.AxiomOutput.byteIn (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((168 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((169 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then Bool.true else Bool.false)))) then (3 : Nat) else (0 : Nat)) else (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((129 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((159 : UInt8))) then Bool.true else Bool.false) else Bool.false) then (3 : Nat) else (0 : Nat))) else (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((227 : UInt8))) then (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then Bool.true else Bool.false) else Bool.false) then (3 : Nat) else (0 : Nat)) else (0 : Nat))))))) (if (LexLeanBoot.AxiomOutput.byteIn (subject) (position) ((9 : UInt8)) ((13 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((32 : UInt8))) then Bool.true else Bool.false)) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_69 (subject) (position) ((32 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((32 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((32 : UInt8))) then Bool.true else Bool.false))) (LexLeanBoot.AxiomOutput.byteIn (subject) (position) ((9 : UInt8)) ((13 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)))) (__rel_70 (subject) (position) ((9 : UInt8)) ((13 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then Bool.true else Bool.false)) (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((32 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_69 (subject) (position) ((32 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((133 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((133 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((160 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((160 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))))) && (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((133 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((160 : UInt8))) then Bool.true else Bool.false)) then Bool.true else Bool.true)) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_69 (subject) (position) ((225 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((225 : UInt8))) then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((154 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((154 : UInt8))) then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((128 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((154 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then Bool.true else Bool.false) else Bool.false) then Bool.true else Bool.true)) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_69 (subject) (position) ((226 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((226 : UInt8))) then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((128 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && (Bool.true && Bool.true)))) && (__fits_70 (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIn (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((168 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((168 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((169 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((169 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((175 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))))))))) && (if (if (LexLeanBoot.AxiomOutput.byteIn (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((168 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((169 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then Bool.true else Bool.false)))) then Bool.true else Bool.true)) else ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((129 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((129 : UInt8))) then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((159 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((159 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((129 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((159 : UInt8))) then Bool.true else Bool.false) else Bool.false) then Bool.true else Bool.true)))) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_69 (subject) (position) ((227 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((227 : UInt8))) then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((128 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((128 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then Bool.true else Bool.false) else Bool.false) then Bool.true else Bool.true)) else Bool.true)))))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((133 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((160 : UInt8))) then Bool.true else Bool.false)) then (2 : Nat) else (0 : Nat)) else (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((225 : UInt8))) then (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((154 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then Bool.true else Bool.false) else Bool.false) then (3 : Nat) else (0 : Nat)) else (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((226 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then (if (if (LexLeanBoot.AxiomOutput.byteIn (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((168 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((169 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then Bool.true else Bool.false)))) then (3 : Nat) else (0 : Nat)) else (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((129 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((159 : UInt8))) then Bool.true else Bool.false) else Bool.false) then (3 : Nat) else (0 : Nat))) else (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((227 : UInt8))) then (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then Bool.true else Bool.false) else Bool.false) then (3 : Nat) else (0 : Nat)) else (0 : Nat)))))) (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((194 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_69 (subject) (position) ((194 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (2 : Nat) else (0 : Nat))) (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((133 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((160 : UInt8))) then Bool.true else Bool.false)) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((160 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((160 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((160 : UInt8))) then Bool.true else Bool.false))) (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((133 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (1 : Nat))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_69 (subject) ((position + (1 : Nat))) ((133 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then Bool.true else Bool.false)) (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((160 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (1 : Nat))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_69 (subject) ((position + (1 : Nat))) ((160 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => _root_.LexLeanPreservation.conv_value))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((154 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((154 : UInt8))) then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((128 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((154 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then Bool.true else Bool.false) else Bool.false) then Bool.true else Bool.true)) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_69 (subject) (position) ((226 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((226 : UInt8))) then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((128 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && (Bool.true && Bool.true)))) && (__fits_70 (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIn (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((168 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((168 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((169 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((169 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((175 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))))))))) && (if (if (LexLeanBoot.AxiomOutput.byteIn (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((168 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((169 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then Bool.true else Bool.false)))) then Bool.true else Bool.true)) else ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((129 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((129 : UInt8))) then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((159 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((159 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((129 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((159 : UInt8))) then Bool.true else Bool.false) else Bool.false) then Bool.true else Bool.true)))) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_69 (subject) (position) ((227 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((227 : UInt8))) then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((128 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((128 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then Bool.true else Bool.false) else Bool.false) then Bool.true else Bool.true)) else Bool.true)))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((154 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then Bool.true else Bool.false) else Bool.false) then (3 : Nat) else (0 : Nat)) else (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((226 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then (if (if (LexLeanBoot.AxiomOutput.byteIn (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((168 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((169 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then Bool.true else Bool.false)))) then (3 : Nat) else (0 : Nat)) else (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((129 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((159 : UInt8))) then Bool.true else Bool.false) else Bool.false) then (3 : Nat) else (0 : Nat))) else (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((227 : UInt8))) then (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then Bool.true else Bool.false) else Bool.false) then (3 : Nat) else (0 : Nat)) else (0 : Nat))))) (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((225 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_69 (subject) (position) ((225 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (3 : Nat) else (0 : Nat))) (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((154 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then Bool.true else Bool.false) else Bool.false) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((128 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then Bool.true else Bool.false) else Bool.false)) (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((154 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (1 : Nat))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_69 (subject) ((position + (1 : Nat))) ((154 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then Bool.true else Bool.false)) (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (2 : Nat))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_69 (subject) ((position + (2 : Nat))) ((128 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => _root_.LexLeanPreservation.conv_value))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((128 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && (Bool.true && Bool.true)))) && (__fits_70 (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIn (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((168 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((168 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((169 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((169 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((175 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))))))))) && (if (if (LexLeanBoot.AxiomOutput.byteIn (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((168 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((169 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then Bool.true else Bool.false)))) then Bool.true else Bool.true)) else ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((129 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((129 : UInt8))) then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((159 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((159 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((129 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((159 : UInt8))) then Bool.true else Bool.false) else Bool.false) then Bool.true else Bool.true)))) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_69 (subject) (position) ((227 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((227 : UInt8))) then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((128 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((128 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then Bool.true else Bool.false) else Bool.false) then Bool.true else Bool.true)) else Bool.true)))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then (if (if (LexLeanBoot.AxiomOutput.byteIn (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((168 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((169 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then Bool.true else Bool.false)))) then (3 : Nat) else (0 : Nat)) else (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((129 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((159 : UInt8))) then Bool.true else Bool.false) else Bool.false) then (3 : Nat) else (0 : Nat))) else (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((227 : UInt8))) then (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then Bool.true else Bool.false) else Bool.false) then (3 : Nat) else (0 : Nat)) else (0 : Nat)))) (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((226 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_69 (subject) (position) ((226 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && (Bool.true && Bool.true)))) && (__fits_70 (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIn (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((168 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((168 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((169 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((169 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((175 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))))))))) && (if (if (LexLeanBoot.AxiomOutput.byteIn (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((168 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((169 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then Bool.true else Bool.false)))) then Bool.true else Bool.true)) else ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((129 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((129 : UInt8))) then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((159 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((159 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((129 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((159 : UInt8))) then Bool.true else Bool.false) else Bool.false) then Bool.true else Bool.true)))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (if (if (LexLeanBoot.AxiomOutput.byteIn (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((168 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((169 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then Bool.true else Bool.false)))) then (3 : Nat) else (0 : Nat)) else (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((129 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((159 : UInt8))) then Bool.true else Bool.false) else Bool.false) then (3 : Nat) else (0 : Nat)))) (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (1 : Nat))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_69 (subject) ((position + (1 : Nat))) ((128 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (3 : Nat) else (0 : Nat))) (if (LexLeanBoot.AxiomOutput.byteIn (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((168 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((169 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then Bool.true else Bool.false)))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((168 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((168 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((169 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((169 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((175 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))))))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((168 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((169 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then Bool.true else Bool.false))))) (LexLeanBoot.AxiomOutput.byteIn (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (2 : Nat))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)))) (__rel_70 (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((169 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((169 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((175 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((169 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then Bool.true else Bool.false)))) (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((168 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (2 : Nat))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_69 (subject) ((position + (2 : Nat))) ((168 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((175 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then Bool.true else Bool.false))) (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((169 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (2 : Nat))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_69 (subject) ((position + (2 : Nat))) ((169 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then Bool.true else Bool.false)) (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (2 : Nat))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_69 (subject) ((position + (2 : Nat))) ((175 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))))))))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => _root_.LexLeanPreservation.conv_value))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (3 : Nat) else (0 : Nat))) (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((129 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((159 : UInt8))) then Bool.true else Bool.false) else Bool.false) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((159 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((159 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((159 : UInt8))) then Bool.true else Bool.false) else Bool.false)) (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((129 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (1 : Nat))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_69 (subject) ((position + (1 : Nat))) ((129 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then Bool.true else Bool.false)) (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((159 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (2 : Nat))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_69 (subject) ((position + (2 : Nat))) ((159 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => _root_.LexLeanPreservation.conv_value))))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((128 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((128 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then Bool.true else Bool.false) else Bool.false) then Bool.true else Bool.true)) else Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then Bool.true else Bool.false) else Bool.false) then (3 : Nat) else (0 : Nat)) else (0 : Nat))) (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((227 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_69 (subject) (position) ((227 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (3 : Nat) else (0 : Nat))) (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then Bool.true else Bool.false) else Bool.false) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((128 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then Bool.true else Bool.false) else Bool.false)) (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (1 : Nat))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_69 (subject) ((position + (1 : Nat))) ((128 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then Bool.true else Bool.false)) (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (2 : Nat))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_69 (subject) ((position + (2 : Nat))) ((128 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => _root_.LexLeanPreservation.conv_value))) (fun _ => _root_.LexLeanPreservation.conv_value)))))))))) + +def __fits_63 (subject : ByteArray) (position : Nat) : Bool := + (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (__fits_55 (subject) (position))) && Bool.true)) && Bool.true) && (if (Nat.blt (0 : Nat) (LexLeanBoot.AxiomOutput.whiteLength (subject) (position))) then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (__fits_55 (subject) (position))) && Bool.true)) && (Nat.blt (position + (LexLeanBoot.AxiomOutput.whiteLength (subject) (position))) 18446744073709551616)) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.whiteLength in +theorem __rel_63 (subject : ByteArray) (position : Nat) : _root_.LexLeanPreservation.FunRel __prog 63 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat position)] (_root_.LexLeanPreservation.Rel (__fits_63 subject position) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) ((if (Nat.blt (0 : Nat) (LexLeanBoot.AxiomOutput.whiteLength (subject) (position))) then (Option.some ((position + (LexLeanBoot.AxiomOutput.whiteLength (subject) (position)))) : (Option Nat)) else (Option.none : (Option Nat)))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (__fits_55 (subject) (position))) && Bool.true)) && (Nat.blt (position + (LexLeanBoot.AxiomOutput.whiteLength (subject) (position))) 18446744073709551616)) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Option.some ((position + (LexLeanBoot.AxiomOutput.whiteLength (subject) (position)))) : (Option Nat)) else (Option.none : (Option Nat)))) (Nat.blt (0 : Nat) (LexLeanBoot.AxiomOutput.whiteLength (subject) (position))) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_55 (subject) (position))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (0 : Nat) (LexLeanBoot.AxiomOutput.whiteLength (subject) (position)))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_55 (subject) (position))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (LexLeanBoot.AxiomOutput.whiteLength (subject) (position)))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_46 (subject : ByteArray) : Bool := + (((Bool.true && Bool.true) && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (subject) : Nat) 18446744073709551616)) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : Nat) => __fits_63 (subject) __p0) ((fun (position : Nat) => (if (Nat.blt (0 : Nat) (LexLeanBoot.AxiomOutput.whiteLength (subject) (position))) then (Option.some ((position + (LexLeanBoot.AxiomOutput.whiteLength (subject) (position)))) : (Option Nat)) else (Option.none : (Option Nat))))) ((_root_.LexLeanRuntime.length (subject) : Nat)) ((0 : Nat)))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.whiteLength in +theorem __rel_46 (subject : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 46 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject)] (_root_.LexLeanPreservation.Rel (__fits_46 subject) (_root_.LexLeanTarget.TargetSyntax.Value.nat (LexLeanBoot.AxiomOutput.skipWhite subject))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes subject)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterateUntil (es := _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.optEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) ((fun (position : Nat) => (if (Nat.blt (0 : Nat) (LexLeanBoot.AxiomOutput.whiteLength (subject) (position))) then (Option.some ((position + (LexLeanBoot.AxiomOutput.whiteLength (subject) (position)))) : (Option Nat)) else (Option.none : (Option Nat))))) (fun (__p0 : Nat) => __fits_63 (subject) __p0) 63 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject)] (fun (__p0 : Nat) => __rel_63 (subject) __p0) (_root_.LexLeanCollections.iterateUntil ((fun (position : Nat) => (if (Nat.blt (0 : Nat) (LexLeanBoot.AxiomOutput.whiteLength (subject) (position))) then (Option.some ((position + (LexLeanBoot.AxiomOutput.whiteLength (subject) (position)))) : (Option Nat)) else (Option.none : (Option Nat)))))) (fun _ => rfl) (fun _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (p := __prog) (fi := 38) (ts := .nat) rfl ((_root_.LexLeanRuntime.length (subject) : Nat)) ((0 : Nat))))) + +def __fits_75 (subject : ByteArray) («end» : Nat) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq «end» (0 : Nat)) then Bool.true else (((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && (__fits_55 (subject) ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat)))) && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (LexLeanBoot.AxiomOutput.whiteLength (subject) ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat))) (1 : Nat)) then Bool.true else ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.ble (2 : Nat) «end») then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && (__fits_55 (subject) ((_root_.LexLeanRuntime.subtract («end») ((2 : Nat)) : Nat)))) && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if (if (Nat.ble (2 : Nat) «end») then (Nat.beq (LexLeanBoot.AxiomOutput.whiteLength (subject) ((_root_.LexLeanRuntime.subtract («end») ((2 : Nat)) : Nat))) (2 : Nat)) else Bool.false) then Bool.true else ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.ble (3 : Nat) «end») then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && (__fits_55 (subject) ((_root_.LexLeanRuntime.subtract («end») ((3 : Nat)) : Nat)))) && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if (if (Nat.ble (3 : Nat) «end») then (Nat.beq (LexLeanBoot.AxiomOutput.whiteLength (subject) ((_root_.LexLeanRuntime.subtract («end») ((3 : Nat)) : Nat))) (3 : Nat)) else Bool.false) then Bool.true else Bool.true)))))))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.whiteLength in +theorem __rel_75 (subject : ByteArray) («end» : Nat) : _root_.LexLeanPreservation.FunRel __prog 75 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat «end»)] (_root_.LexLeanPreservation.Rel (__fits_75 subject «end») (_root_.LexLeanTarget.TargetSyntax.Value.nat (LexLeanBoot.AxiomOutput.whiteEnding subject «end»))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else (((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && (__fits_55 (subject) ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat)))) && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (LexLeanBoot.AxiomOutput.whiteLength (subject) ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat))) (1 : Nat)) then Bool.true else ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.ble (2 : Nat) «end») then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && (__fits_55 (subject) ((_root_.LexLeanRuntime.subtract («end») ((2 : Nat)) : Nat)))) && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if (if (Nat.ble (2 : Nat) «end») then (Nat.beq (LexLeanBoot.AxiomOutput.whiteLength (subject) ((_root_.LexLeanRuntime.subtract («end») ((2 : Nat)) : Nat))) (2 : Nat)) else Bool.false) then Bool.true else ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.ble (3 : Nat) «end») then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && (__fits_55 (subject) ((_root_.LexLeanRuntime.subtract («end») ((3 : Nat)) : Nat)))) && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if (if (Nat.ble (3 : Nat) «end») then (Nat.beq (LexLeanBoot.AxiomOutput.whiteLength (subject) ((_root_.LexLeanRuntime.subtract («end») ((3 : Nat)) : Nat))) (3 : Nat)) else Bool.false) then Bool.true else Bool.true)))))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (0 : Nat) else (if (Nat.beq (LexLeanBoot.AxiomOutput.whiteLength (subject) ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat))) (1 : Nat)) then (1 : Nat) else (if (if (Nat.ble (2 : Nat) «end») then (Nat.beq (LexLeanBoot.AxiomOutput.whiteLength (subject) ((_root_.LexLeanRuntime.subtract («end») ((2 : Nat)) : Nat))) (2 : Nat)) else Bool.false) then (2 : Nat) else (if (if (Nat.ble (3 : Nat) «end») then (Nat.beq (LexLeanBoot.AxiomOutput.whiteLength (subject) ((_root_.LexLeanRuntime.subtract («end») ((3 : Nat)) : Nat))) (3 : Nat)) else Bool.false) then (3 : Nat) else (0 : Nat)))))) (Nat.beq «end» (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq «end» (0 : Nat))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.ble (2 : Nat) «end») then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && (__fits_55 (subject) ((_root_.LexLeanRuntime.subtract («end») ((2 : Nat)) : Nat)))) && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if (if (Nat.ble (2 : Nat) «end») then (Nat.beq (LexLeanBoot.AxiomOutput.whiteLength (subject) ((_root_.LexLeanRuntime.subtract («end») ((2 : Nat)) : Nat))) (2 : Nat)) else Bool.false) then Bool.true else ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.ble (3 : Nat) «end») then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && (__fits_55 (subject) ((_root_.LexLeanRuntime.subtract («end») ((3 : Nat)) : Nat)))) && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if (if (Nat.ble (3 : Nat) «end») then (Nat.beq (LexLeanBoot.AxiomOutput.whiteLength (subject) ((_root_.LexLeanRuntime.subtract («end») ((3 : Nat)) : Nat))) (3 : Nat)) else Bool.false) then Bool.true else Bool.true)))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (1 : Nat) else (if (if (Nat.ble (2 : Nat) «end») then (Nat.beq (LexLeanBoot.AxiomOutput.whiteLength (subject) ((_root_.LexLeanRuntime.subtract («end») ((2 : Nat)) : Nat))) (2 : Nat)) else Bool.false) then (2 : Nat) else (if (if (Nat.ble (3 : Nat) «end») then (Nat.beq (LexLeanBoot.AxiomOutput.whiteLength (subject) ((_root_.LexLeanRuntime.subtract («end») ((3 : Nat)) : Nat))) (3 : Nat)) else Bool.false) then (3 : Nat) else (0 : Nat))))) (Nat.beq (LexLeanBoot.AxiomOutput.whiteLength (subject) ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat))) (1 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub «end» (1 : Nat))) _root_.LexLeanPreservation.convL_nil)) (__rel_55 (subject) ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat)))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (LexLeanBoot.AxiomOutput.whiteLength (subject) ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat))) (1 : Nat))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.ble (3 : Nat) «end») then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && (__fits_55 (subject) ((_root_.LexLeanRuntime.subtract («end») ((3 : Nat)) : Nat)))) && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if (if (Nat.ble (3 : Nat) «end») then (Nat.beq (LexLeanBoot.AxiomOutput.whiteLength (subject) ((_root_.LexLeanRuntime.subtract («end») ((3 : Nat)) : Nat))) (3 : Nat)) else Bool.false) then Bool.true else Bool.true)))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (2 : Nat) else (if (if (Nat.ble (3 : Nat) «end») then (Nat.beq (LexLeanBoot.AxiomOutput.whiteLength (subject) ((_root_.LexLeanRuntime.subtract («end») ((3 : Nat)) : Nat))) (3 : Nat)) else Bool.false) then (3 : Nat) else (0 : Nat)))) (if (Nat.ble (2 : Nat) «end») then (Nat.beq (LexLeanBoot.AxiomOutput.whiteLength (subject) ((_root_.LexLeanRuntime.subtract («end») ((2 : Nat)) : Nat))) (2 : Nat)) else Bool.false) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && (__fits_55 (subject) ((_root_.LexLeanRuntime.subtract («end») ((2 : Nat)) : Nat)))) && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then (Nat.beq (LexLeanBoot.AxiomOutput.whiteLength (subject) ((_root_.LexLeanRuntime.subtract («end») ((2 : Nat)) : Nat))) (2 : Nat)) else Bool.false)) (Nat.ble (2 : Nat) «end») (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe (2 : Nat) «end»)) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub «end» (2 : Nat))) _root_.LexLeanPreservation.convL_nil)) (__rel_55 (subject) ((_root_.LexLeanRuntime.subtract («end») ((2 : Nat)) : Nat)))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (LexLeanBoot.AxiomOutput.whiteLength (subject) ((_root_.LexLeanRuntime.subtract («end») ((2 : Nat)) : Nat))) (2 : Nat)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (3 : Nat) else (0 : Nat))) (if (Nat.ble (3 : Nat) «end») then (Nat.beq (LexLeanBoot.AxiomOutput.whiteLength (subject) ((_root_.LexLeanRuntime.subtract («end») ((3 : Nat)) : Nat))) (3 : Nat)) else Bool.false) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && (__fits_55 (subject) ((_root_.LexLeanRuntime.subtract («end») ((3 : Nat)) : Nat)))) && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then (Nat.beq (LexLeanBoot.AxiomOutput.whiteLength (subject) ((_root_.LexLeanRuntime.subtract («end») ((3 : Nat)) : Nat))) (3 : Nat)) else Bool.false)) (Nat.ble (3 : Nat) «end») (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe (3 : Nat) «end»)) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub «end» (3 : Nat))) _root_.LexLeanPreservation.convL_nil)) (__rel_55 (subject) ((_root_.LexLeanRuntime.subtract («end») ((3 : Nat)) : Nat)))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (LexLeanBoot.AxiomOutput.whiteLength (subject) ((_root_.LexLeanRuntime.subtract («end») ((3 : Nat)) : Nat))) (3 : Nat)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => _root_.LexLeanPreservation.conv_value)))))))) + +def __fits_64 (start : Nat) (subject : ByteArray) («end» : Nat) : Bool := + ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (__fits_75 (subject) («end»))) && Bool.true)) && Bool.true) && (if (Nat.blt (0 : Nat) (LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»))) then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (__fits_75 (subject) («end»))) && Bool.true)) && (Nat.blt (start + (LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»))) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if (if (Nat.blt (0 : Nat) (LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»))) then (Nat.ble (start + (LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»))) «end») else Bool.false) then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (__fits_75 (subject) («end»))) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.whiteEnding in +theorem __rel_64 (start : Nat) (subject : ByteArray) («end» : Nat) : _root_.LexLeanPreservation.FunRel __prog 64 [(_root_.LexLeanTarget.TargetSyntax.Value.nat start), (_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat «end»)] (_root_.LexLeanPreservation.Rel (__fits_64 start subject «end») ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) ((if (if (Nat.blt (0 : Nat) (LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»))) then (Nat.ble (start + (LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»))) «end») else Bool.false) then (Option.some ((_root_.LexLeanRuntime.subtract («end») ((LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»))) : Nat)) : (Option Nat)) else (Option.none : (Option Nat)))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (__fits_75 (subject) («end»))) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Option.some ((_root_.LexLeanRuntime.subtract («end») ((LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»))) : Nat)) : (Option Nat)) else (Option.none : (Option Nat)))) (if (Nat.blt (0 : Nat) (LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»))) then (Nat.ble (start + (LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»))) «end») else Bool.false) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (__fits_75 (subject) («end»))) && Bool.true)) && (Nat.blt (start + (LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»))) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then (Nat.ble (start + (LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»))) «end») else Bool.false)) (Nat.blt (0 : Nat) (LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»))) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_75 (subject) («end»))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (0 : Nat) (LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»)))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_75 (subject) («end»))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd start (LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe (start + (LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»))) «end»))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_75 (subject) («end»))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub «end» (LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»)))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_47 (subject : ByteArray) (start : Nat) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (subject) : Nat) 18446744073709551616)) && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (subject) : Nat) 18446744073709551616)) && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : Nat) => __fits_64 (start) (subject) __p0) ((fun («end» : Nat) => (if (if (Nat.blt (0 : Nat) (LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»))) then (Nat.ble (start + (LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»))) «end») else Bool.false) then (Option.some ((_root_.LexLeanRuntime.subtract («end») ((LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»))) : Nat)) : (Option Nat)) else (Option.none : (Option Nat))))) ((_root_.LexLeanRuntime.length (subject) : Nat)) ((_root_.LexLeanRuntime.length (subject) : Nat)))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.whiteEnding in +theorem __rel_47 (subject : ByteArray) (start : Nat) : _root_.LexLeanPreservation.FunRel __prog 47 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat start)] (_root_.LexLeanPreservation.Rel (__fits_47 subject start) (_root_.LexLeanTarget.TargetSyntax.Value.nat (LexLeanBoot.AxiomOutput.dropWhiteEnd subject start))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes subject)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes subject)) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterateUntil (es := _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.optEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) ((fun («end» : Nat) => (if (if (Nat.blt (0 : Nat) (LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»))) then (Nat.ble (start + (LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»))) «end») else Bool.false) then (Option.some ((_root_.LexLeanRuntime.subtract («end») ((LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»))) : Nat)) : (Option Nat)) else (Option.none : (Option Nat))))) (fun (__p0 : Nat) => __fits_64 (start) (subject) __p0) 64 [(_root_.LexLeanTarget.TargetSyntax.Value.nat start), (_root_.LexLeanTarget.TargetSyntax.Value.bytes subject)] (fun (__p0 : Nat) => __rel_64 (start) (subject) __p0) (_root_.LexLeanCollections.iterateUntil ((fun («end» : Nat) => (if (if (Nat.blt (0 : Nat) (LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»))) then (Nat.ble (start + (LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»))) «end») else Bool.false) then (Option.some ((_root_.LexLeanRuntime.subtract («end») ((LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»))) : Nat)) : (Option Nat)) else (Option.none : (Option Nat)))))) (fun _ => rfl) (fun _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (p := __prog) (fi := 38) (ts := .nat) rfl ((_root_.LexLeanRuntime.length (subject) : Nat)) ((_root_.LexLeanRuntime.length (subject) : Nat))))) + +def __fits_32 (subject : ByteArray) : Bool := + (((Bool.true && Bool.true) && (__fits_46 (subject))) && (let start : Nat := (LexLeanBoot.AxiomOutput.skipWhite (subject)); (((Bool.true && (Bool.true && Bool.true)) && (__fits_47 (subject) (start))) && (let «end» : Nat := (LexLeanBoot.AxiomOutput.dropWhiteEnd (subject) (start)); ((Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_18 (subject) (start) ((_root_.LexLeanRuntime.subtract («end») (start) : Nat)))))))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.dropWhiteEnd LexLeanBoot.AxiomOutput.skipWhite LexLeanBoot.Text.sliceOr in +theorem __rel_32 (subject : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 32 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject)] (_root_.LexLeanPreservation.Rel (__fits_32 subject) (_root_.LexLeanTarget.TargetSyntax.Value.bytes (LexLeanBoot.AxiomOutput.trimmed subject))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (let start : Nat := (LexLeanBoot.AxiomOutput.skipWhite (subject)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_46 (subject))) (let «end» : Nat := (LexLeanBoot.AxiomOutput.dropWhiteEnd (subject) (start)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_47 (subject) (start))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub «end» start)) _root_.LexLeanPreservation.convL_nil))) (__rel_18 (subject) (start) ((_root_.LexLeanRuntime.subtract («end») (start) : Nat)))))) + +def __fits_42 (subject : ByteArray) : Bool := + ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (__fits_55 (subject) ((0 : Nat)))) && Bool.true)) && Bool.true) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.whiteLength in +theorem __rel_42 (subject : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 42 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject)] (_root_.LexLeanPreservation.Rel (__fits_42 subject) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanBoot.AxiomOutput.startsWhite subject))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_55 (subject) ((0 : Nat)))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (0 : Nat) (LexLeanBoot.AxiomOutput.whiteLength (subject) ((0 : Nat))))) + +def __fits_29 (line : ByteArray) : Bool := + (((Bool.true && Bool.true) && (__fits_32 (line))) && (let cleaned : ByteArray := (LexLeanBoot.AxiomOutput.trimmed (line)); (((Bool.true && Bool.true) && (__fits_42 (line))) && (if (LexLeanBoot.AxiomOutput.startsWhite (line)) then (((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (cleaned) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true) && (if (Nat.beq (0 : Nat) (_root_.LexLeanRuntime.length (cleaned) : Nat)) then (Bool.true && Bool.true) else ((Bool.true && Bool.true) && Bool.true))) else (Bool.true && Bool.true))))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.startsWhite LexLeanBoot.AxiomOutput.trimmed in +theorem __rel_29 (line : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 29 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes line)] (_root_.LexLeanPreservation.Rel (__fits_29 line) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (LexLeanBoot.AxiomOutput.continuation line))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (let cleaned : ByteArray := (LexLeanBoot.AxiomOutput.trimmed (line)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_32 (line))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (cleaned) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true) && (if (Nat.beq (0 : Nat) (_root_.LexLeanRuntime.length (cleaned) : Nat)) then (Bool.true && Bool.true) else ((Bool.true && Bool.true) && Bool.true))) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (if __b then (if (Nat.beq (0 : Nat) (_root_.LexLeanRuntime.length (cleaned) : Nat)) then (Option.none : (Option ByteArray)) else (Option.some (cleaned) : (Option ByteArray))) else (Option.none : (Option ByteArray)))) (LexLeanBoot.AxiomOutput.startsWhite (line)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_42 (line))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else ((Bool.true && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (if __b then (Option.none : (Option ByteArray)) else (Option.some (cleaned) : (Option ByteArray)))) (Nat.beq (0 : Nat) (_root_.LexLeanRuntime.length (cleaned) : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes cleaned)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (0 : Nat) (_root_.LexLeanRuntime.length (cleaned) : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)))) + +def __fits_31 (message : ByteArray) (declaration : (Option ByteArray)) : Bool := + ((((Bool.true && (Bool.true && Bool.true)) && (__fits_19 (message) (declaration))) && Bool.true) && Bool.true) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.rejected in +theorem __rel_31 (message : ByteArray) (declaration : (Option ByteArray)) : _root_.LexLeanPreservation.FunRel __prog 31 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes message), ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) declaration)] (_root_.LexLeanPreservation.Rel (__fits_31 message declaration) (__enc_1 (LexLeanBoot.AxiomOutput.stop message declaration))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_19 (message) (declaration))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_adt) + +def __fits_68 (subject : ByteArray) (suffix : ByteArray) : Bool := + (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (subject) : Nat) 18446744073709551616)) && (let total : Nat := (_root_.LexLeanRuntime.length (subject) : Nat); (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (suffix) : Nat) 18446744073709551616)) && (let size : Nat := (_root_.LexLeanRuntime.length (suffix) : Nat); (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.ble size total) then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (Bool.true && Bool.true))) && Bool.true) && (match (_root_.LexLeanRuntime.slice (subject) ((_root_.LexLeanRuntime.subtract (total) (size) : Nat)) (size) : (Option ByteArray)) with | Option.some tail => ((Bool.true && (Bool.true && Bool.true)) && Bool.true) | Option.none => (Bool.true && Bool.true))) else (Bool.true && Bool.true))))))) + +theorem __rel_68 (subject : ByteArray) (suffix : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 68 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.bytes suffix)] (_root_.LexLeanPreservation.Rel (__fits_68 subject suffix) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanBoot.Text.endsWith subject suffix))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (let total : Nat := (_root_.LexLeanRuntime.length (subject) : Nat); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes subject)) (let size : Nat := (_root_.LexLeanRuntime.length (suffix) : Nat); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes suffix)) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (Bool.true && Bool.true))) && Bool.true) && (match (_root_.LexLeanRuntime.slice (subject) ((_root_.LexLeanRuntime.subtract (total) (size) : Nat)) (size) : (Option ByteArray)) with | Option.some tail => ((Bool.true && (Bool.true && Bool.true)) && Bool.true) | Option.none => (Bool.true && Bool.true))) else (Bool.true && Bool.true))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then (match (_root_.LexLeanRuntime.slice (subject) ((_root_.LexLeanRuntime.subtract (total) (size) : Nat)) (size) : (Option ByteArray)) with | Option.some tail => (_root_.LexLeanRuntime.equal (tail) (suffix) : Bool) | Option.none => Bool.false) else Bool.false)) (Nat.ble size total) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe size total)) (fun _ => (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.some tail => ((Bool.true && (Bool.true && Bool.true)) && Bool.true) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option ByteArray)) => _root_.LexLeanTarget.TargetSyntax.Value.bool (match __a with | Option.some tail => (_root_.LexLeanRuntime.equal (tail) (suffix) : Bool) | Option.none => Bool.false)) (_root_.LexLeanRuntime.slice (subject) ((_root_.LexLeanRuntime.subtract (total) (size) : Nat)) (size) : (Option ByteArray)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub total size)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.prim_slice_bytes subject (_root_.LexLeanRuntime.subtract (total) (size) : Nat) size)) (fun (__a : (Option ByteArray)) _ => match __a with | Option.some tail => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_bytes tail suffix))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))))) + +def __fits_56 (subject : ByteArray) (suffix : ByteArray) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && (__fits_68 (subject) (suffix))) && (if (LexLeanBoot.Text.endsWith (subject) (suffix)) then ((((Bool.true && (Bool.true && (((((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (subject) : Nat) 18446744073709551616)) && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (suffix) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true) && Bool.true))) && (__fits_18 (subject) ((0 : Nat)) ((_root_.LexLeanRuntime.subtract ((_root_.LexLeanRuntime.length (subject) : Nat)) ((_root_.LexLeanRuntime.length (suffix) : Nat)) : Nat)))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +attribute [local irreducible] LexLeanBoot.Text.endsWith LexLeanBoot.Text.sliceOr in +theorem __rel_56 (subject : ByteArray) (suffix : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 56 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.bytes suffix)] (_root_.LexLeanPreservation.Rel (__fits_56 subject suffix) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (LexLeanBoot.AxiomOutput.stripSuffix subject suffix))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (Bool.true && (((((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (subject) : Nat) 18446744073709551616)) && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (suffix) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true) && Bool.true))) && (__fits_18 (subject) ((0 : Nat)) ((_root_.LexLeanRuntime.subtract ((_root_.LexLeanRuntime.length (subject) : Nat)) ((_root_.LexLeanRuntime.length (suffix) : Nat)) : Nat)))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (if __b then (Option.some ((LexLeanBoot.Text.sliceOr (subject) ((0 : Nat)) ((_root_.LexLeanRuntime.subtract ((_root_.LexLeanRuntime.length (subject) : Nat)) ((_root_.LexLeanRuntime.length (suffix) : Nat)) : Nat)))) : (Option ByteArray)) else (Option.none : (Option ByteArray)))) (LexLeanBoot.Text.endsWith (subject) (suffix)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_68 (subject) (suffix))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes subject)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes suffix)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub (_root_.LexLeanRuntime.length (subject) : Nat) (_root_.LexLeanRuntime.length (suffix) : Nat))) _root_.LexLeanPreservation.convL_nil))) (__rel_18 (subject) ((0 : Nat)) ((_root_.LexLeanRuntime.subtract ((_root_.LexLeanRuntime.length (subject) : Nat)) ((_root_.LexLeanRuntime.length (suffix) : Nat)) : Nat)))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_43 (payload : ByteArray) : Bool := + (((Bool.true && (((Bool.true && Bool.true) && (__fits_7 ("]"))) && Bool.true)) && (__fits_56 (payload) ((LexLeanBoot.AxiomOutput.text ("]"))))) && (match (LexLeanBoot.AxiomOutput.stripSuffix (payload) ((LexLeanBoot.AxiomOutput.text ("]")))) with | Option.some bracketed => (Bool.true && Bool.true) | Option.none => (((Bool.true && (((Bool.true && Bool.true) && (__fits_7 (" does not depend on any axioms"))) && Bool.true)) && (__fits_56 (payload) ((LexLeanBoot.AxiomOutput.text (" does not depend on any axioms"))))) && (match (LexLeanBoot.AxiomOutput.stripSuffix (payload) ((LexLeanBoot.AxiomOutput.text (" does not depend on any axioms")))) with | Option.some sentence => (Bool.true && Bool.true) | Option.none => (Bool.true && Bool.true))))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.stripSuffix LexLeanBoot.AxiomOutput.text in +theorem __rel_43 (payload : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 43 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes payload)] (_root_.LexLeanPreservation.Rel (__fits_43 payload) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanBoot.AxiomOutput.terminates payload))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.some bracketed => (Bool.true && Bool.true) | Option.none => (((Bool.true && (((Bool.true && Bool.true) && (__fits_7 (" does not depend on any axioms"))) && Bool.true)) && (__fits_56 (payload) ((LexLeanBoot.AxiomOutput.text (" does not depend on any axioms"))))) && (match (LexLeanBoot.AxiomOutput.stripSuffix (payload) ((LexLeanBoot.AxiomOutput.text (" does not depend on any axioms")))) with | Option.some sentence => (Bool.true && Bool.true) | Option.none => (Bool.true && Bool.true))))) (fun (__a : (Option ByteArray)) => _root_.LexLeanTarget.TargetSyntax.Value.bool (match __a with | Option.some bracketed => Bool.true | Option.none => (match (LexLeanBoot.AxiomOutput.stripSuffix (payload) ((LexLeanBoot.AxiomOutput.text (" does not depend on any axioms")))) with | Option.some sentence => Bool.true | Option.none => Bool.false))) (LexLeanBoot.AxiomOutput.stripSuffix (payload) ((LexLeanBoot.AxiomOutput.text ("]")))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("]"))) _root_.LexLeanPreservation.convL_nil)) (__rel_56 (payload) ((LexLeanBoot.AxiomOutput.text ("]"))))) (fun (__a : (Option ByteArray)) _ => match __a with | Option.some bracketed => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.some sentence => (Bool.true && Bool.true) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option ByteArray)) => _root_.LexLeanTarget.TargetSyntax.Value.bool (match __a with | Option.some sentence => Bool.true | Option.none => Bool.false)) (LexLeanBoot.AxiomOutput.stripSuffix (payload) ((LexLeanBoot.AxiomOutput.text (" does not depend on any axioms")))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 (" does not depend on any axioms"))) _root_.LexLeanPreservation.convL_nil)) (__rel_56 (payload) ((LexLeanBoot.AxiomOutput.text (" does not depend on any axioms"))))) (fun (__a : (Option ByteArray)) _ => match __a with | Option.some sentence => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))))))))) + +def __fits_48 (subject : ByteArray) («prefix» : ByteArray) : Bool := + (((Bool.true && (Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length («prefix») : Nat) 18446744073709551616)) && Bool.true))) && Bool.true) && (match (_root_.LexLeanRuntime.slice (subject) ((0 : Nat)) ((_root_.LexLeanRuntime.length («prefix») : Nat)) : (Option ByteArray)) with | Option.some head => ((Bool.true && (Bool.true && Bool.true)) && Bool.true) | Option.none => (Bool.true && Bool.true))) + +theorem __rel_48 (subject : ByteArray) («prefix» : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 48 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.bytes «prefix»)] (_root_.LexLeanPreservation.Rel (__fits_48 subject «prefix») (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanBoot.Text.startsWith subject «prefix»))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.some head => ((Bool.true && (Bool.true && Bool.true)) && Bool.true) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option ByteArray)) => _root_.LexLeanTarget.TargetSyntax.Value.bool (match __a with | Option.some head => (_root_.LexLeanRuntime.equal (head) («prefix») : Bool) | Option.none => Bool.false)) (_root_.LexLeanRuntime.slice (subject) ((0 : Nat)) ((_root_.LexLeanRuntime.length («prefix») : Nat)) : (Option ByteArray)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes «prefix»)) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.prim_slice_bytes subject (0 : Nat) (_root_.LexLeanRuntime.length («prefix») : Nat))) (fun (__a : (Option ByteArray)) _ => match __a with | Option.some head => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_bytes head «prefix»))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))))) + +def __fits_49 (subject : ByteArray) («prefix» : ByteArray) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && (__fits_48 (subject) («prefix»))) && (if (LexLeanBoot.Text.startsWith (subject) («prefix»)) then ((((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length («prefix») : Nat) 18446744073709551616)) && (((((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (subject) : Nat) 18446744073709551616)) && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length («prefix») : Nat) 18446744073709551616)) && Bool.true)) && Bool.true) && Bool.true))) && (__fits_18 (subject) ((_root_.LexLeanRuntime.length («prefix») : Nat)) ((_root_.LexLeanRuntime.subtract ((_root_.LexLeanRuntime.length (subject) : Nat)) ((_root_.LexLeanRuntime.length («prefix») : Nat)) : Nat)))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +attribute [local irreducible] LexLeanBoot.Text.sliceOr LexLeanBoot.Text.startsWith in +theorem __rel_49 (subject : ByteArray) («prefix» : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 49 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.bytes «prefix»)] (_root_.LexLeanPreservation.Rel (__fits_49 subject «prefix») ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (LexLeanBoot.AxiomOutput.stripPrefix subject «prefix»))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length («prefix») : Nat) 18446744073709551616)) && (((((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (subject) : Nat) 18446744073709551616)) && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length («prefix») : Nat) 18446744073709551616)) && Bool.true)) && Bool.true) && Bool.true))) && (__fits_18 (subject) ((_root_.LexLeanRuntime.length («prefix») : Nat)) ((_root_.LexLeanRuntime.subtract ((_root_.LexLeanRuntime.length (subject) : Nat)) ((_root_.LexLeanRuntime.length («prefix») : Nat)) : Nat)))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (if __b then (Option.some ((LexLeanBoot.Text.sliceOr (subject) ((_root_.LexLeanRuntime.length («prefix») : Nat)) ((_root_.LexLeanRuntime.subtract ((_root_.LexLeanRuntime.length (subject) : Nat)) ((_root_.LexLeanRuntime.length («prefix») : Nat)) : Nat)))) : (Option ByteArray)) else (Option.none : (Option ByteArray)))) (LexLeanBoot.Text.startsWith (subject) («prefix»)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_48 (subject) («prefix»))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes «prefix»)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes subject)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes «prefix»)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub (_root_.LexLeanRuntime.length (subject) : Nat) (_root_.LexLeanRuntime.length («prefix») : Nat))) _root_.LexLeanPreservation.convL_nil))) (__rel_18 (subject) ((_root_.LexLeanRuntime.length («prefix») : Nat)) ((_root_.LexLeanRuntime.subtract ((_root_.LexLeanRuntime.length (subject) : Nat)) ((_root_.LexLeanRuntime.length («prefix») : Nat)) : Nat)))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_59 (message : ByteArray) : Bool := + ((Bool.true && Bool.true) && Bool.true) + +theorem __rel_59 (message : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 59 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes message)] (_root_.LexLeanPreservation.Rel (__fits_59 message) ((_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) (LexLeanBoot.AxiomOutput.malformed message))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error) + +def __fits_57 (payload : ByteArray) : Bool := + ((((((Bool.true && Bool.true) && (__fits_7 ("unrecognized axiom payload: "))) && (Bool.true && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.text ("unrecognized axiom payload: "))) (payload))) && Bool.true) && (__fits_59 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("unrecognized axiom payload: "))) (payload))))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.cat LexLeanBoot.AxiomOutput.malformed LexLeanBoot.AxiomOutput.text in +theorem __rel_57 (payload : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 57 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes payload)] (_root_.LexLeanPreservation.Rel (__fits_57 payload) ((_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) (LexLeanBoot.AxiomOutput.unrecognized payload))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("unrecognized axiom payload: "))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_6 ((LexLeanBoot.AxiomOutput.text ("unrecognized axiom payload: "))) (payload))) _root_.LexLeanPreservation.convL_nil) (__rel_59 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("unrecognized axiom payload: "))) (payload))))) + +def __fits_58 (name : ByteArray) (axioms : (List ByteArray)) : Bool := + ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) + +theorem __rel_58 (name : ByteArray) (axioms : (List ByteArray)) : _root_.LexLeanPreservation.FunRel __prog 58 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes name), ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) axioms)] (_root_.LexLeanPreservation.Rel (__fits_58 name axioms) ((_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) (LexLeanBoot.AxiomOutput.parsed name axioms))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok) + +def __fits_60 (name : ByteArray) : Bool := + ((((Bool.true && Bool.true) && (__fits_40 (name))) && (((Bool.true && Bool.true) && (__fits_7 (" is not a Lean name"))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.quoted (name))) ((LexLeanBoot.AxiomOutput.text (" is not a Lean name"))))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.cat LexLeanBoot.AxiomOutput.quoted LexLeanBoot.AxiomOutput.text in +theorem __rel_60 (name : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 60 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes name)] (_root_.LexLeanPreservation.Rel (__fits_60 name) (_root_.LexLeanTarget.TargetSyntax.Value.bytes (LexLeanBoot.AxiomOutput.notLean name))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_40 (name))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 (" is not a Lean name"))) _root_.LexLeanPreservation.convL_nil)) (__rel_6 ((LexLeanBoot.AxiomOutput.quoted (name))) ((LexLeanBoot.AxiomOutput.text (" is not a Lean name"))))) + +def __fits_94 (byte : UInt8) : Bool := + (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_79 (byte) ((65 : UInt8)) ((90 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.inRange (byte) ((65 : UInt8)) ((90 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_79 (byte) ((97 : UInt8)) ((122 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.inRange (byte) ((97 : UInt8)) ((122 : UInt8))) then (Bool.true && Bool.true) else ((Bool.true && (Bool.true && Bool.true)) && Bool.true))))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.inRange in +theorem __rel_94 (byte : UInt8) : _root_.LexLeanPreservation.FunRel __prog 94 [(_root_.LexLeanTarget.TargetSyntax.Value.u8 byte)] (_root_.LexLeanPreservation.Rel (__fits_94 byte) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanBoot.AxiomOutput.isFirst byte))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_79 (byte) ((97 : UInt8)) ((122 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.inRange (byte) ((97 : UInt8)) ((122 : UInt8))) then (Bool.true && Bool.true) else ((Bool.true && (Bool.true && Bool.true)) && Bool.true))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then Bool.true else (if (LexLeanBoot.AxiomOutput.inRange (byte) ((97 : UInt8)) ((122 : UInt8))) then Bool.true else (_root_.LexLeanRuntime.equal (byte) ((95 : UInt8)) : Bool)))) (LexLeanBoot.AxiomOutput.inRange (byte) ((65 : UInt8)) ((90 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_79 (byte) ((65 : UInt8)) ((90 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else ((Bool.true && (Bool.true && Bool.true)) && Bool.true))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then Bool.true else (_root_.LexLeanRuntime.equal (byte) ((95 : UInt8)) : Bool))) (LexLeanBoot.AxiomOutput.inRange (byte) ((97 : UInt8)) ((122 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_79 (byte) ((97 : UInt8)) ((122 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_u8 byte (95 : UInt8))))))) + +def __fits_95 (byte : UInt8) : Bool := + (((Bool.true && Bool.true) && (__fits_94 (byte))) && (if (LexLeanBoot.AxiomOutput.isFirst (byte)) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_79 (byte) ((48 : UInt8)) ((57 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.inRange (byte) ((48 : UInt8)) ((57 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal (byte) ((63 : UInt8)) : Bool) then (Bool.true && Bool.true) else ((Bool.true && (Bool.true && Bool.true)) && Bool.true))))))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.inRange LexLeanBoot.AxiomOutput.isFirst in +theorem __rel_95 (byte : UInt8) : _root_.LexLeanPreservation.FunRel __prog 95 [(_root_.LexLeanTarget.TargetSyntax.Value.u8 byte)] (_root_.LexLeanPreservation.Rel (__fits_95 byte) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanBoot.AxiomOutput.isLater byte))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_79 (byte) ((48 : UInt8)) ((57 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.inRange (byte) ((48 : UInt8)) ((57 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal (byte) ((63 : UInt8)) : Bool) then (Bool.true && Bool.true) else ((Bool.true && (Bool.true && Bool.true)) && Bool.true))))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then Bool.true else (if (LexLeanBoot.AxiomOutput.inRange (byte) ((48 : UInt8)) ((57 : UInt8))) then Bool.true else (if (_root_.LexLeanRuntime.equal (byte) ((63 : UInt8)) : Bool) then Bool.true else (_root_.LexLeanRuntime.equal (byte) ((39 : UInt8)) : Bool))))) (LexLeanBoot.AxiomOutput.isFirst (byte)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_94 (byte))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal (byte) ((63 : UInt8)) : Bool) then (Bool.true && Bool.true) else ((Bool.true && (Bool.true && Bool.true)) && Bool.true))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then Bool.true else (if (_root_.LexLeanRuntime.equal (byte) ((63 : UInt8)) : Bool) then Bool.true else (_root_.LexLeanRuntime.equal (byte) ((39 : UInt8)) : Bool)))) (LexLeanBoot.AxiomOutput.inRange (byte) ((48 : UInt8)) ((57 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_79 (byte) ((48 : UInt8)) ((57 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else ((Bool.true && (Bool.true && Bool.true)) && Bool.true))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then Bool.true else (_root_.LexLeanRuntime.equal (byte) ((39 : UInt8)) : Bool))) (_root_.LexLeanRuntime.equal (byte) ((63 : UInt8)) : Bool) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_u8 byte (63 : UInt8))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_u8 byte (39 : UInt8))))))))) + +def __fits_89 (mode : Nat) (byte : UInt8) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq mode (2 : Nat)) then Bool.true else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal (byte) ((46 : UInt8)) : Bool) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq mode (1 : Nat)) then Bool.true else Bool.true)) else (((Bool.true && Bool.true) && (__fits_94 (byte))) && (if (LexLeanBoot.AxiomOutput.isFirst (byte)) then Bool.true else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq mode (1 : Nat)) then (((Bool.true && Bool.true) && (__fits_95 (byte))) && (if (LexLeanBoot.AxiomOutput.isLater (byte)) then Bool.true else Bool.true)) else Bool.true)))))))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.isFirst LexLeanBoot.AxiomOutput.isLater in +theorem __rel_89 (mode : Nat) (byte : UInt8) : _root_.LexLeanPreservation.FunRel __prog 89 [(_root_.LexLeanTarget.TargetSyntax.Value.nat mode), (_root_.LexLeanTarget.TargetSyntax.Value.u8 byte)] (_root_.LexLeanPreservation.Rel (__fits_89 mode byte) (_root_.LexLeanTarget.TargetSyntax.Value.nat (LexLeanBoot.AxiomOutput.nameMode mode byte))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal (byte) ((46 : UInt8)) : Bool) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq mode (1 : Nat)) then Bool.true else Bool.true)) else (((Bool.true && Bool.true) && (__fits_94 (byte))) && (if (LexLeanBoot.AxiomOutput.isFirst (byte)) then Bool.true else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq mode (1 : Nat)) then (((Bool.true && Bool.true) && (__fits_95 (byte))) && (if (LexLeanBoot.AxiomOutput.isLater (byte)) then Bool.true else Bool.true)) else Bool.true)))))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (2 : Nat) else (if (_root_.LexLeanRuntime.equal (byte) ((46 : UInt8)) : Bool) then (if (Nat.beq mode (1 : Nat)) then (0 : Nat) else (2 : Nat)) else (if (LexLeanBoot.AxiomOutput.isFirst (byte)) then (1 : Nat) else (if (Nat.beq mode (1 : Nat)) then (if (LexLeanBoot.AxiomOutput.isLater (byte)) then (1 : Nat) else (2 : Nat)) else (2 : Nat)))))) (Nat.beq mode (2 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq mode (2 : Nat))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq mode (1 : Nat)) then Bool.true else Bool.true)) else (((Bool.true && Bool.true) && (__fits_94 (byte))) && (if (LexLeanBoot.AxiomOutput.isFirst (byte)) then Bool.true else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq mode (1 : Nat)) then (((Bool.true && Bool.true) && (__fits_95 (byte))) && (if (LexLeanBoot.AxiomOutput.isLater (byte)) then Bool.true else Bool.true)) else Bool.true)))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (if (Nat.beq mode (1 : Nat)) then (0 : Nat) else (2 : Nat)) else (if (LexLeanBoot.AxiomOutput.isFirst (byte)) then (1 : Nat) else (if (Nat.beq mode (1 : Nat)) then (if (LexLeanBoot.AxiomOutput.isLater (byte)) then (1 : Nat) else (2 : Nat)) else (2 : Nat))))) (_root_.LexLeanRuntime.equal (byte) ((46 : UInt8)) : Bool) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_u8 byte (46 : UInt8))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (0 : Nat) else (2 : Nat))) (Nat.beq mode (1 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq mode (1 : Nat))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => _root_.LexLeanPreservation.conv_value))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq mode (1 : Nat)) then (((Bool.true && Bool.true) && (__fits_95 (byte))) && (if (LexLeanBoot.AxiomOutput.isLater (byte)) then Bool.true else Bool.true)) else Bool.true)))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (1 : Nat) else (if (Nat.beq mode (1 : Nat)) then (if (LexLeanBoot.AxiomOutput.isLater (byte)) then (1 : Nat) else (2 : Nat)) else (2 : Nat)))) (LexLeanBoot.AxiomOutput.isFirst (byte)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_94 (byte))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && (__fits_95 (byte))) && (if (LexLeanBoot.AxiomOutput.isLater (byte)) then Bool.true else Bool.true)) else Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (if (LexLeanBoot.AxiomOutput.isLater (byte)) then (1 : Nat) else (2 : Nat)) else (2 : Nat))) (Nat.beq mode (1 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq mode (1 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (1 : Nat) else (2 : Nat))) (LexLeanBoot.AxiomOutput.isLater (byte)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_95 (byte))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => _root_.LexLeanPreservation.conv_value))) (fun _ => _root_.LexLeanPreservation.conv_value)))))))) + +def __fits_80 (subject : ByteArray) (state : (Prod Nat Nat)) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (state).2 (2 : Nat)) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && (__fits_51 (subject) ((state).1))) && (match (LexLeanBoot.Text.byteAt (subject) ((state).1)) with | Option.some byte => ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((state).1 + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (__fits_89 ((state).2) (byte))) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (Bool.true && Bool.true))))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.nameMode LexLeanBoot.Text.byteAt in +theorem __rel_80 (subject : ByteArray) (state : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 80 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) state)] (_root_.LexLeanPreservation.Rel (__fits_80 subject state) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (LexLeanBoot.AxiomOutput.nameStep subject state))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && (__fits_51 (subject) ((state).1))) && (match (LexLeanBoot.Text.byteAt (subject) ((state).1)) with | Option.some byte => ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((state).1 + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (__fits_89 ((state).2) (byte))) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (Bool.true && Bool.true))))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (if __b then (Option.none : (Option (Prod Nat Nat))) else (match (LexLeanBoot.Text.byteAt (subject) ((state).1)) with | Option.some byte => (Option.some ((((state).1 + (1 : Nat)), (LexLeanBoot.AxiomOutput.nameMode ((state).2) (byte)))) : (Option (Prod Nat Nat))) | Option.none => (Option.none : (Option (Prod Nat Nat)))))) (Nat.beq (state).2 (2 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (state).2 (2 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) (fun _ => (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u8) (fun (__a : (Option UInt8)) => (match __a with | Option.some byte => ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((state).1 + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (__fits_89 ((state).2) (byte))) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option UInt8)) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (match __a with | Option.some byte => (Option.some ((((state).1 + (1 : Nat)), (LexLeanBoot.AxiomOutput.nameMode ((state).2) (byte)))) : (Option (Prod Nat Nat))) | Option.none => (Option.none : (Option (Prod Nat Nat))))) (LexLeanBoot.Text.byteAt (subject) ((state).1)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil)) (__rel_51 (subject) ((state).1))) (fun (__a : (Option UInt8)) _ => match __a with | Option.some byte => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (state).1 (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_89 ((state).2) (byte))) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))) + +def __fits_72 (raw : ByteArray) (state : (Prod Nat Nat)) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && (__fits_80 (raw) (state))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.nameStep in +theorem __rel_72 (raw : ByteArray) (state : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 72 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes raw), ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) state)] (_root_.LexLeanPreservation.Rel (__fits_72 raw state) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) ((LexLeanBoot.AxiomOutput.nameStep (raw) (state))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_80 (raw) (state))) + +def __fits_61 (raw : ByteArray) : Bool := + (((((Bool.true && Bool.true) && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (raw) : Nat) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : (Prod Nat Nat)) => __fits_72 (raw) __p0) ((fun (state : (Prod Nat Nat)) => (LexLeanBoot.AxiomOutput.nameStep (raw) (state)))) ((_root_.LexLeanRuntime.length (raw) : Nat)) (((0 : Nat), (0 : Nat))))) && (Bool.true && Bool.true)) && Bool.true) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.nameStep in +theorem __rel_61 (raw : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 61 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes raw)] (_root_.LexLeanPreservation.Rel (__fits_61 raw) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanBoot.AxiomOutput.isClosedLeanName raw))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes raw)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterateUntil (es := (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (_root_.LexLeanPreservation.optEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) ((fun (state : (Prod Nat Nat)) => (LexLeanBoot.AxiomOutput.nameStep (raw) (state)))) (fun (__p0 : (Prod Nat Nat)) => __fits_72 (raw) __p0) 72 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes raw)] (fun (__p0 : (Prod Nat Nat)) => __rel_72 (raw) __p0) (_root_.LexLeanCollections.iterateUntil ((fun (state : (Prod Nat Nat)) => (LexLeanBoot.AxiomOutput.nameStep (raw) (state))))) (fun _ => rfl) (fun _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (p := __prog) (fi := 71) (ts := (.pair .nat .nat)) rfl ((_root_.LexLeanRuntime.length (raw) : Nat)) (((0 : Nat), (0 : Nat))))))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (((_root_.LexLeanCollections.iterateUntil ((fun (state : (Prod Nat Nat)) => (LexLeanBoot.AxiomOutput.nameStep (raw) (state)))) ((_root_.LexLeanRuntime.length (raw) : Nat)) (((0 : Nat), (0 : Nat))) : (Prod (Prod Nat Nat) Bool))).1).2 (1 : Nat))) + +def __fits_82 (subject : ByteArray) (needle : ByteArray) (position : Nat) : Bool := + (((Bool.true && (Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (needle) : Nat) 18446744073709551616)) && Bool.true))) && Bool.true) && (match (_root_.LexLeanRuntime.slice (subject) (position) ((_root_.LexLeanRuntime.length (needle) : Nat)) : (Option ByteArray)) with | Option.some window => ((Bool.true && (Bool.true && Bool.true)) && Bool.true) | Option.none => (Bool.true && Bool.true))) + +theorem __rel_82 (subject : ByteArray) (needle : ByteArray) (position : Nat) : _root_.LexLeanPreservation.FunRel __prog 82 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.bytes needle), (_root_.LexLeanTarget.TargetSyntax.Value.nat position)] (_root_.LexLeanPreservation.Rel (__fits_82 subject needle position) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanBoot.Text.matchAt subject needle position))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.some window => ((Bool.true && (Bool.true && Bool.true)) && Bool.true) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option ByteArray)) => _root_.LexLeanTarget.TargetSyntax.Value.bool (match __a with | Option.some window => (_root_.LexLeanRuntime.equal (window) (needle) : Bool) | Option.none => Bool.false)) (_root_.LexLeanRuntime.slice (subject) (position) ((_root_.LexLeanRuntime.length (needle) : Nat)) : (Option ByteArray)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes needle)) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.prim_slice_bytes subject position (_root_.LexLeanRuntime.length (needle) : Nat))) (fun (__a : (Option ByteArray)) _ => match __a with | Option.some window => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_bytes window needle))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))))) + +def __fits_90 (subject : ByteArray) (needle : ByteArray) (position : Nat) : Bool := + (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_82 (subject) (needle) (position))) && (if (LexLeanBoot.Text.matchAt (subject) (needle) (position)) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.blt (0 : Nat) position) then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) + +attribute [local irreducible] LexLeanBoot.Text.matchAt in +theorem __rel_90 (subject : ByteArray) (needle : ByteArray) (position : Nat) : _root_.LexLeanPreservation.FunRel __prog 90 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.bytes needle), (_root_.LexLeanTarget.TargetSyntax.Value.nat position)] (_root_.LexLeanPreservation.Rel (__fits_90 subject needle position) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (LexLeanBoot.AxiomOutput.lastStep subject needle position))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.blt (0 : Nat) position) then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Option.none : (Option Nat)) else (if (Nat.blt (0 : Nat) position) then (Option.some ((_root_.LexLeanRuntime.subtract (position) ((1 : Nat)) : Nat)) : (Option Nat)) else (Option.none : (Option Nat))))) (LexLeanBoot.Text.matchAt (subject) (needle) (position)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (__rel_82 (subject) (needle) (position))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Option.some ((_root_.LexLeanRuntime.subtract (position) ((1 : Nat)) : Nat)) : (Option Nat)) else (Option.none : (Option Nat)))) (Nat.blt (0 : Nat) position) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (0 : Nat) position)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub position (1 : Nat))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))) + +def __fits_81 (needle : ByteArray) (subject : ByteArray) (position : Nat) : Bool := + ((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_90 (subject) (needle) (position))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.lastStep in +theorem __rel_81 (needle : ByteArray) (subject : ByteArray) (position : Nat) : _root_.LexLeanPreservation.FunRel __prog 81 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes needle), (_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat position)] (_root_.LexLeanPreservation.Rel (__fits_81 needle subject position) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) ((LexLeanBoot.AxiomOutput.lastStep (subject) (needle) (position))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (__rel_90 (subject) (needle) (position))) + +def __fits_73 (subject : ByteArray) (needle : ByteArray) : Bool := + (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (subject) : Nat) 18446744073709551616)) && (let total : Nat := (_root_.LexLeanRuntime.length (subject) : Nat); (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (needle) : Nat) 18446744073709551616)) && (let size : Nat := (_root_.LexLeanRuntime.length (needle) : Nat); (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.blt total size) then (Bool.true && Bool.true) else ((((Bool.true && (Bool.true && Bool.true)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (total + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : Nat) => __fits_81 (needle) (subject) __p0) ((fun (position : Nat) => (LexLeanBoot.AxiomOutput.lastStep (subject) (needle) (position)))) ((total + (1 : Nat))) ((_root_.LexLeanRuntime.subtract (total) (size) : Nat)))) && (let position : Nat := ((_root_.LexLeanCollections.iterateUntil ((fun (position : Nat) => (LexLeanBoot.AxiomOutput.lastStep (subject) (needle) (position)))) ((total + (1 : Nat))) ((_root_.LexLeanRuntime.subtract (total) (size) : Nat)) : (Prod Nat Bool))).1; (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_82 (subject) (needle) (position))) && (if (LexLeanBoot.Text.matchAt (subject) (needle) (position)) then ((((((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_18 (subject) ((0 : Nat)) (position))) && (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + size) 18446744073709551616)) && (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + size) 18446744073709551616)) && Bool.true)) && Bool.true) && Bool.true))) && (__fits_18 (subject) ((position + size)) ((_root_.LexLeanRuntime.subtract (total) ((position + size)) : Nat)))) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))))))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.lastStep LexLeanBoot.Text.matchAt LexLeanBoot.Text.sliceOr in +theorem __rel_73 (subject : ByteArray) (needle : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 73 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.bytes needle)] (_root_.LexLeanPreservation.Rel (__fits_73 subject needle) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (LexLeanBoot.AxiomOutput.splitLast subject needle))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (let total : Nat := (_root_.LexLeanRuntime.length (subject) : Nat); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes subject)) (let size : Nat := (_root_.LexLeanRuntime.length (needle) : Nat); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes needle)) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else ((((Bool.true && (Bool.true && Bool.true)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (total + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : Nat) => __fits_81 (needle) (subject) __p0) ((fun (position : Nat) => (LexLeanBoot.AxiomOutput.lastStep (subject) (needle) (position)))) ((total + (1 : Nat))) ((_root_.LexLeanRuntime.subtract (total) (size) : Nat)))) && (let position : Nat := ((_root_.LexLeanCollections.iterateUntil ((fun (position : Nat) => (LexLeanBoot.AxiomOutput.lastStep (subject) (needle) (position)))) ((total + (1 : Nat))) ((_root_.LexLeanRuntime.subtract (total) (size) : Nat)) : (Prod Nat Bool))).1; (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_82 (subject) (needle) (position))) && (if (LexLeanBoot.Text.matchAt (subject) (needle) (position)) then ((((((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_18 (subject) ((0 : Nat)) (position))) && (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + size) 18446744073709551616)) && (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + size) 18446744073709551616)) && Bool.true)) && Bool.true) && Bool.true))) && (__fits_18 (subject) ((position + size)) ((_root_.LexLeanRuntime.subtract (total) ((position + size)) : Nat)))) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (if __b then (Option.none : (Option (Prod ByteArray ByteArray))) else (let position : Nat := ((_root_.LexLeanCollections.iterateUntil ((fun (position : Nat) => (LexLeanBoot.AxiomOutput.lastStep (subject) (needle) (position)))) ((total + (1 : Nat))) ((_root_.LexLeanRuntime.subtract (total) (size) : Nat)) : (Prod Nat Bool))).1; (if (LexLeanBoot.Text.matchAt (subject) (needle) (position)) then (Option.some (((LexLeanBoot.Text.sliceOr (subject) ((0 : Nat)) (position)), (LexLeanBoot.Text.sliceOr (subject) ((position + size)) ((_root_.LexLeanRuntime.subtract (total) ((position + size)) : Nat))))) : (Option (Prod ByteArray ByteArray))) else (Option.none : (Option (Prod ByteArray ByteArray))))))) (Nat.blt total size) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt total size)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) (fun _ => (let position : Nat := ((_root_.LexLeanCollections.iterateUntil ((fun (position : Nat) => (LexLeanBoot.AxiomOutput.lastStep (subject) (needle) (position)))) ((total + (1 : Nat))) ((_root_.LexLeanRuntime.subtract (total) (size) : Nat)) : (Prod Nat Bool))).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd total (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub total size)) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterateUntil (es := _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.optEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) ((fun (position : Nat) => (LexLeanBoot.AxiomOutput.lastStep (subject) (needle) (position)))) (fun (__p0 : Nat) => __fits_81 (needle) (subject) __p0) 81 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes needle), (_root_.LexLeanTarget.TargetSyntax.Value.bytes subject)] (fun (__p0 : Nat) => __rel_81 (needle) (subject) __p0) (_root_.LexLeanCollections.iterateUntil ((fun (position : Nat) => (LexLeanBoot.AxiomOutput.lastStep (subject) (needle) (position))))) (fun _ => rfl) (fun _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (p := __prog) (fi := 38) (ts := .nat) rfl ((total + (1 : Nat))) ((_root_.LexLeanRuntime.subtract (total) (size) : Nat))))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_18 (subject) ((0 : Nat)) (position))) && (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + size) 18446744073709551616)) && (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + size) 18446744073709551616)) && Bool.true)) && Bool.true) && Bool.true))) && (__fits_18 (subject) ((position + size)) ((_root_.LexLeanRuntime.subtract (total) ((position + size)) : Nat)))) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (if __b then (Option.some (((LexLeanBoot.Text.sliceOr (subject) ((0 : Nat)) (position)), (LexLeanBoot.Text.sliceOr (subject) ((position + size)) ((_root_.LexLeanRuntime.subtract (total) ((position + size)) : Nat))))) : (Option (Prod ByteArray ByteArray))) else (Option.none : (Option (Prod ByteArray ByteArray))))) (LexLeanBoot.Text.matchAt (subject) (needle) (position)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (__rel_82 (subject) (needle) (position))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (__rel_18 (subject) ((0 : Nat)) (position))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position size)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position size)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub total (position + size))) _root_.LexLeanPreservation.convL_nil))) (__rel_18 (subject) ((position + size)) ((_root_.LexLeanRuntime.subtract (total) ((position + size)) : Nat)))) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)))))))) + +def __fits_96 : ∀ (lemma : ByteArray) (sorted : (List ByteArray)), Bool + | lemma, (List.nil) => (Bool.true && ((((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true)) + | lemma, (List.cons head tail) => (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal (lemma) (head) : Bool) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && (__fits_54 (lemma) (head))) && (if (LexLeanBoot.AxiomOutput.lessBytes (lemma) (head)) then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && (__fits_96 (lemma) (tail))) && (match (LexLeanBoot.AxiomOutput.insertAxiom (lemma) (tail)) with | Option.some inserted => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (Bool.true && Bool.true)))))))) + +theorem __rel_96 : ∀ (lemma : ByteArray) (sorted : (List ByteArray)), _root_.LexLeanPreservation.FunRel __prog 96 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes lemma), ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) sorted)] (_root_.LexLeanPreservation.Rel (__fits_96 lemma sorted) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (LexLeanBoot.AxiomOutput.insertAxiom lemma sorted))) + | lemma, (List.nil) => by rw [__fits_96.eq_def]; exact _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_match (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some))) + | lemma, (List.cons head tail) => by rw [__fits_96.eq_def]; exact _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_match (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && (__fits_54 (lemma) (head))) && (if (LexLeanBoot.AxiomOutput.lessBytes (lemma) (head)) then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && (__fits_96 (lemma) (tail))) && (match (LexLeanBoot.AxiomOutput.insertAxiom (lemma) (tail)) with | Option.some inserted => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (Bool.true && Bool.true))))))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (if __b then (Option.none : (Option (List ByteArray))) else (if (LexLeanBoot.AxiomOutput.lessBytes (lemma) (head)) then (Option.some ((lemma :: (head :: tail))) : (Option (List ByteArray))) else (match (LexLeanBoot.AxiomOutput.insertAxiom (lemma) (tail)) with | Option.some inserted => (Option.some ((head :: inserted)) : (Option (List ByteArray))) | Option.none => (Option.none : (Option (List ByteArray))))))) (_root_.LexLeanRuntime.equal (lemma) (head) : Bool) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_bytes lemma head)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && (__fits_96 (lemma) (tail))) && (match (LexLeanBoot.AxiomOutput.insertAxiom (lemma) (tail)) with | Option.some inserted => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (Bool.true && Bool.true))))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (if __b then (Option.some ((lemma :: (head :: tail))) : (Option (List ByteArray))) else (match (LexLeanBoot.AxiomOutput.insertAxiom (lemma) (tail)) with | Option.some inserted => (Option.some ((head :: inserted)) : (Option (List ByteArray))) | Option.none => (Option.none : (Option (List ByteArray)))))) (LexLeanBoot.AxiomOutput.lessBytes (lemma) (head)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_54 (lemma) (head))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (fun (__a : (Option (List ByteArray))) => (match __a with | Option.some inserted => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option (List ByteArray))) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (match __a with | Option.some inserted => (Option.some ((head :: inserted)) : (Option (List ByteArray))) | Option.none => (Option.none : (Option (List ByteArray))))) (LexLeanBoot.AxiomOutput.insertAxiom (lemma) (tail)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_96 (lemma) (tail))) (fun (__a : (Option (List ByteArray))) _ => match __a with | Option.some inserted => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)))))))))))) + +def __fits_91 (state : (Except ByteArray (List ByteArray))) (piece : ByteArray) : Bool := + (Bool.true && (match state with | Except.error message => Bool.true | Except.ok sorted => (((Bool.true && Bool.true) && (__fits_32 (piece))) && (let lemma : ByteArray := (LexLeanBoot.AxiomOutput.trimmed (piece)); (((Bool.true && Bool.true) && (__fits_61 (lemma))) && (if (LexLeanBoot.AxiomOutput.isClosedLeanName (lemma)) then (((Bool.true && (Bool.true && Bool.true)) && (__fits_96 (lemma) (sorted))) && (match (LexLeanBoot.AxiomOutput.insertAxiom (lemma) (sorted)) with | Option.some inserted => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((((Bool.true && Bool.true) && (__fits_7 ("duplicate axiom name "))) && (((Bool.true && Bool.true) && (__fits_40 (lemma))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.text ("duplicate axiom name "))) ((LexLeanBoot.AxiomOutput.quoted (lemma))))) && Bool.true) && Bool.true))) else ((((Bool.true && Bool.true) && (__fits_60 (lemma))) && Bool.true) && Bool.true))))))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.cat LexLeanBoot.AxiomOutput.insertAxiom LexLeanBoot.AxiomOutput.isClosedLeanName LexLeanBoot.AxiomOutput.notLean LexLeanBoot.AxiomOutput.quoted LexLeanBoot.AxiomOutput.text LexLeanBoot.AxiomOutput.trimmed in +theorem __rel_91 (state : (Except ByteArray (List ByteArray))) (piece : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 91 [((_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)) state), (_root_.LexLeanTarget.TargetSyntax.Value.bytes piece)] (_root_.LexLeanPreservation.Rel (__fits_91 state piece) ((_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (LexLeanBoot.AxiomOutput.collectStep state piece))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (fun (__a : (Except ByteArray (List ByteArray))) => (match __a with | Except.error message => Bool.true | Except.ok sorted => (((Bool.true && Bool.true) && (__fits_32 (piece))) && (let lemma : ByteArray := (LexLeanBoot.AxiomOutput.trimmed (piece)); (((Bool.true && Bool.true) && (__fits_61 (lemma))) && (if (LexLeanBoot.AxiomOutput.isClosedLeanName (lemma)) then (((Bool.true && (Bool.true && Bool.true)) && (__fits_96 (lemma) (sorted))) && (match (LexLeanBoot.AxiomOutput.insertAxiom (lemma) (sorted)) with | Option.some inserted => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((((Bool.true && Bool.true) && (__fits_7 ("duplicate axiom name "))) && (((Bool.true && Bool.true) && (__fits_40 (lemma))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.text ("duplicate axiom name "))) ((LexLeanBoot.AxiomOutput.quoted (lemma))))) && Bool.true) && Bool.true))) else ((((Bool.true && Bool.true) && (__fits_60 (lemma))) && Bool.true) && Bool.true))))))) (fun (__a : (Except ByteArray (List ByteArray))) => (_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (match __a with | Except.error message => state | Except.ok sorted => (let lemma : ByteArray := (LexLeanBoot.AxiomOutput.trimmed (piece)); (if (LexLeanBoot.AxiomOutput.isClosedLeanName (lemma)) then (match (LexLeanBoot.AxiomOutput.insertAxiom (lemma) (sorted)) with | Option.some inserted => (Except.ok (inserted) : (Except ByteArray (List ByteArray))) | Option.none => (Except.error ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("duplicate axiom name "))) ((LexLeanBoot.AxiomOutput.quoted (lemma))))) : (Except ByteArray (List ByteArray)))) else (Except.error ((LexLeanBoot.AxiomOutput.notLean (lemma))) : (Except ByteArray (List ByteArray))))))) state (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (Except ByteArray (List ByteArray))) _ => match __a with | Except.error message => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | Except.ok sorted => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (let lemma : ByteArray := (LexLeanBoot.AxiomOutput.trimmed (piece)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_32 (piece))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (Bool.true && Bool.true)) && (__fits_96 (lemma) (sorted))) && (match (LexLeanBoot.AxiomOutput.insertAxiom (lemma) (sorted)) with | Option.some inserted => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((((Bool.true && Bool.true) && (__fits_7 ("duplicate axiom name "))) && (((Bool.true && Bool.true) && (__fits_40 (lemma))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.text ("duplicate axiom name "))) ((LexLeanBoot.AxiomOutput.quoted (lemma))))) && Bool.true) && Bool.true))) else ((((Bool.true && Bool.true) && (__fits_60 (lemma))) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (if __b then (match (LexLeanBoot.AxiomOutput.insertAxiom (lemma) (sorted)) with | Option.some inserted => (Except.ok (inserted) : (Except ByteArray (List ByteArray))) | Option.none => (Except.error ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("duplicate axiom name "))) ((LexLeanBoot.AxiomOutput.quoted (lemma))))) : (Except ByteArray (List ByteArray)))) else (Except.error ((LexLeanBoot.AxiomOutput.notLean (lemma))) : (Except ByteArray (List ByteArray))))) (LexLeanBoot.AxiomOutput.isClosedLeanName (lemma)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_61 (lemma))) (fun _ => (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (fun (__a : (Option (List ByteArray))) => (match __a with | Option.some inserted => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((((Bool.true && Bool.true) && (__fits_7 ("duplicate axiom name "))) && (((Bool.true && Bool.true) && (__fits_40 (lemma))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.text ("duplicate axiom name "))) ((LexLeanBoot.AxiomOutput.quoted (lemma))))) && Bool.true) && Bool.true))) (fun (__a : (Option (List ByteArray))) => (_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (match __a with | Option.some inserted => (Except.ok (inserted) : (Except ByteArray (List ByteArray))) | Option.none => (Except.error ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("duplicate axiom name "))) ((LexLeanBoot.AxiomOutput.quoted (lemma))))) : (Except ByteArray (List ByteArray))))) (LexLeanBoot.AxiomOutput.insertAxiom (lemma) (sorted)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_96 (lemma) (sorted))) (fun (__a : (Option (List ByteArray))) _ => match __a with | Option.some inserted => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("duplicate axiom name "))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_40 (lemma))) _root_.LexLeanPreservation.convL_nil)) (__rel_6 ((LexLeanBoot.AxiomOutput.text ("duplicate axiom name "))) ((LexLeanBoot.AxiomOutput.quoted (lemma))))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)))))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_60 (lemma))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)))))))) + +def __fits_84 (state : (Except ByteArray (List ByteArray))) (piece : ByteArray) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && (__fits_91 (state) (piece))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.collectStep in +theorem __rel_84 (state : (Except ByteArray (List ByteArray))) (piece : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 84 [((_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)) state), (_root_.LexLeanTarget.TargetSyntax.Value.bytes piece)] (_root_.LexLeanPreservation.Rel (__fits_84 state piece) ((_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)) ((LexLeanBoot.AxiomOutput.collectStep (state) (piece))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_91 (state) (piece))) + +def __fits_37 (reversed : (List ByteArray)) (piece : ByteArray) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_37 (reversed : (List ByteArray)) (piece : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 37 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) reversed), (_root_.LexLeanTarget.TargetSyntax.Value.bytes piece)] (_root_.LexLeanPreservation.Rel (__fits_37 reversed piece) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) ((piece :: reversed)))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) + +def __fits_17 (pieces : (List ByteArray)) : Bool := + ((Bool.true && ((Bool.true && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (List ByteArray)) (__p1 : ByteArray) => __fits_37 __p0 __p1) ((fun (reversed : (List ByteArray)) (piece : ByteArray) => (piece :: reversed))) (([] : List ByteArray)) (pieces))) + +theorem __rel_17 (pieces : (List ByteArray)) : _root_.LexLeanPreservation.FunRel __prog 17 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) pieces)] (_root_.LexLeanPreservation.Rel (__fits_17 pieces) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) (LexLeanBoot.Text.reverse pieces))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.bytes) (es := (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun _ => rfl) ((fun (reversed : (List ByteArray)) (piece : ByteArray) => (piece :: reversed))) (fun (__p0 : (List ByteArray)) (__p1 : ByteArray) => __fits_37 __p0 __p1) 37 [] (fun (__p0 : (List ByteArray)) (__p1 : ByteArray) => __rel_37 __p0 __p1) (p := __prog) (fi := 36) (ta := .bytes) (ts := (.list .bytes)) rfl (([] : List ByteArray)) (pieces))) + +def __fits_97 (subject : ByteArray) (delimiter : UInt8) (state : (Prod Nat (Prod Nat (List ByteArray)))) : Bool := + (Bool.true && (let position : Nat := (state).1; (Bool.true && (let start : Nat := ((state).2).1; (Bool.true && (let pieces : (List ByteArray) := ((state).2).2; (((Bool.true && (Bool.true && Bool.true)) && (__fits_51 (subject) (position))) && (match (LexLeanBoot.Text.byteAt (subject) (position)) with | Option.some byte => (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal (byte) (delimiter) : Bool) then ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_18 (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))) && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) | Option.none => (Bool.true && Bool.true))))))))) + +attribute [local irreducible] LexLeanBoot.Text.byteAt LexLeanBoot.Text.sliceOr in +theorem __rel_97 (subject : ByteArray) (delimiter : UInt8) (state : (Prod Nat (Prod Nat (List ByteArray)))) : _root_.LexLeanPreservation.FunRel __prog 97 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.u8 delimiter), ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) state)] (_root_.LexLeanPreservation.Rel (__fits_97 subject delimiter state) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (LexLeanBoot.Text.splitStep subject delimiter state))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (let position : Nat := (state).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (let start : Nat := ((state).2).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl))) (let pieces : (List ByteArray) := ((state).2).2; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl))) (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u8) (fun (__a : (Option UInt8)) => (match __a with | Option.some byte => (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal (byte) (delimiter) : Bool) then ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_18 (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))) && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option UInt8)) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (match __a with | Option.some byte => (if (_root_.LexLeanRuntime.equal (byte) (delimiter) : Bool) then (Option.some (((position + (1 : Nat)), ((position + (1 : Nat)), ((LexLeanBoot.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat))) :: pieces)))) : (Option (Prod Nat (Prod Nat (List ByteArray))))) else (Option.some (((position + (1 : Nat)), (start, pieces))) : (Option (Prod Nat (Prod Nat (List ByteArray)))))) | Option.none => (Option.none : (Option (Prod Nat (Prod Nat (List ByteArray))))))) (LexLeanBoot.Text.byteAt (subject) (position)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_51 (subject) (position))) (fun (__a : (Option UInt8)) _ => match __a with | Option.some byte => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_18 (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))) && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (if __b then (Option.some (((position + (1 : Nat)), ((position + (1 : Nat)), ((LexLeanBoot.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat))) :: pieces)))) : (Option (Prod Nat (Prod Nat (List ByteArray))))) else (Option.some (((position + (1 : Nat)), (start, pieces))) : (Option (Prod Nat (Prod Nat (List ByteArray))))))) (_root_.LexLeanRuntime.equal (byte) (delimiter) : Bool) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_u8 byte delimiter)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub position start)) _root_.LexLeanPreservation.convL_nil))) (__rel_18 (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)))))))) + +def __fits_92 (delimiter : UInt8) (subject : ByteArray) (state : (Prod Nat (Prod Nat (List ByteArray)))) : Bool := + ((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_97 (subject) (delimiter) (state))) + +attribute [local irreducible] LexLeanBoot.Text.splitStep in +theorem __rel_92 (delimiter : UInt8) (subject : ByteArray) (state : (Prod Nat (Prod Nat (List ByteArray)))) : _root_.LexLeanPreservation.FunRel __prog 92 [(_root_.LexLeanTarget.TargetSyntax.Value.u8 delimiter), (_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) state)] (_root_.LexLeanPreservation.Rel (__fits_92 delimiter subject state) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) ((LexLeanBoot.Text.splitStep (subject) (delimiter) (state))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (__rel_97 (subject) (delimiter) (state))) + +def __fits_85 (subject : ByteArray) (delimiter : UInt8) : Bool := + (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (subject) : Nat) 18446744073709551616)) && (let total : Nat := (_root_.LexLeanRuntime.length (subject) : Nat); ((((Bool.true && (Bool.true && Bool.true)) && (Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : (Prod Nat (Prod Nat (List ByteArray)))) => __fits_92 (delimiter) (subject) __p0) ((fun (state : (Prod Nat (Prod Nat (List ByteArray)))) => (LexLeanBoot.Text.splitStep (subject) (delimiter) (state)))) (total) (((0 : Nat), ((0 : Nat), ([] : List ByteArray)))))) && (let final : (Prod Nat (Prod Nat (List ByteArray))) := ((_root_.LexLeanCollections.iterateUntil ((fun (state : (Prod Nat (Prod Nat (List ByteArray)))) => (LexLeanBoot.Text.splitStep (subject) (delimiter) (state)))) (total) (((0 : Nat), ((0 : Nat), ([] : List ByteArray)))) : (Prod (Prod Nat (Prod Nat (List ByteArray))) Bool))).1; (Bool.true && (let start : Nat := ((final).2).1; ((((((Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_18 (subject) (start) ((_root_.LexLeanRuntime.subtract (total) (start) : Nat)))) && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && (__fits_17 (((LexLeanBoot.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (total) (start) : Nat))) :: ((final).2).2)))))))))) + +attribute [local irreducible] LexLeanBoot.Text.reverse LexLeanBoot.Text.sliceOr LexLeanBoot.Text.splitStep in +theorem __rel_85 (subject : ByteArray) (delimiter : UInt8) : _root_.LexLeanPreservation.FunRel __prog 85 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.u8 delimiter)] (_root_.LexLeanPreservation.Rel (__fits_85 subject delimiter) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) (LexLeanBoot.Text.splitOn subject delimiter))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (let total : Nat := (_root_.LexLeanRuntime.length (subject) : Nat); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes subject)) (let final : (Prod Nat (Prod Nat (List ByteArray))) := ((_root_.LexLeanCollections.iterateUntil ((fun (state : (Prod Nat (Prod Nat (List ByteArray)))) => (LexLeanBoot.Text.splitStep (subject) (delimiter) (state)))) (total) (((0 : Nat), ((0 : Nat), ([] : List ByteArray)))) : (Prod (Prod Nat (Prod Nat (List ByteArray))) Bool))).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterateUntil (es := (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (_root_.LexLeanPreservation.optEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (fun _ => rfl) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) ((fun (state : (Prod Nat (Prod Nat (List ByteArray)))) => (LexLeanBoot.Text.splitStep (subject) (delimiter) (state)))) (fun (__p0 : (Prod Nat (Prod Nat (List ByteArray)))) => __fits_92 (delimiter) (subject) __p0) 92 [(_root_.LexLeanTarget.TargetSyntax.Value.u8 delimiter), (_root_.LexLeanTarget.TargetSyntax.Value.bytes subject)] (fun (__p0 : (Prod Nat (Prod Nat (List ByteArray)))) => __rel_92 (delimiter) (subject) __p0) (_root_.LexLeanCollections.iterateUntil ((fun (state : (Prod Nat (Prod Nat (List ByteArray)))) => (LexLeanBoot.Text.splitStep (subject) (delimiter) (state))))) (fun _ => rfl) (fun _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (p := __prog) (fi := 15) (ts := (.pair .nat (.pair .nat (.list .bytes)))) rfl (total) (((0 : Nat), ((0 : Nat), ([] : List ByteArray))))))) (let start : Nat := ((final).2).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub total start)) _root_.LexLeanPreservation.convL_nil))) (__rel_18 (subject) (start) ((_root_.LexLeanRuntime.subtract (total) (start) : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl))) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil) (__rel_17 (((LexLeanBoot.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (total) (start) : Nat))) :: ((final).2).2))))))) + +def __fits_74 (name : ByteArray) (list : ByteArray) : Bool := + (((Bool.true && ((((Bool.true && Bool.true) && Bool.true) && Bool.true) && (((Bool.true && (Bool.true && Bool.true)) && (__fits_85 (list) ((44 : UInt8)))) && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Except ByteArray (List ByteArray))) (__p1 : ByteArray) => __fits_84 __p0 __p1) ((fun (state : (Except ByteArray (List ByteArray))) (piece : ByteArray) => (LexLeanBoot.AxiomOutput.collectStep (state) (piece)))) ((Except.ok (([] : List ByteArray)) : (Except ByteArray (List ByteArray)))) ((LexLeanBoot.Text.splitOn (list) ((44 : UInt8)))))) && (match (_root_.LexLeanCollections.listFold ((fun (state : (Except ByteArray (List ByteArray))) (piece : ByteArray) => (LexLeanBoot.AxiomOutput.collectStep (state) (piece)))) ((Except.ok (([] : List ByteArray)) : (Except ByteArray (List ByteArray)))) ((LexLeanBoot.Text.splitOn (list) ((44 : UInt8)))) : (Except ByteArray (List ByteArray))) with | Except.error message => ((Bool.true && Bool.true) && (__fits_59 (message))) | Except.ok sorted => (Bool.true && (match sorted with | List.nil => ((((Bool.true && Bool.true) && (__fits_7 ("an axiom list cannot be empty"))) && Bool.true) && (__fits_59 ((LexLeanBoot.AxiomOutput.text ("an axiom list cannot be empty"))))) | List.cons head tail => ((Bool.true && (Bool.true && Bool.true)) && (__fits_58 (name) (sorted))))))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.collectStep LexLeanBoot.AxiomOutput.malformed LexLeanBoot.AxiomOutput.parsed LexLeanBoot.AxiomOutput.text LexLeanBoot.Text.splitOn in +theorem __rel_74 (name : ByteArray) (list : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 74 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes name), (_root_.LexLeanTarget.TargetSyntax.Value.bytes list)] (_root_.LexLeanPreservation.Rel (__fits_74 name list) ((_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) (LexLeanBoot.AxiomOutput.axiomList name list))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (fun (__a : (Except ByteArray (List ByteArray))) => (match __a with | Except.error message => ((Bool.true && Bool.true) && (__fits_59 (message))) | Except.ok sorted => (Bool.true && (match sorted with | List.nil => ((((Bool.true && Bool.true) && (__fits_7 ("an axiom list cannot be empty"))) && Bool.true) && (__fits_59 ((LexLeanBoot.AxiomOutput.text ("an axiom list cannot be empty"))))) | List.cons head tail => ((Bool.true && (Bool.true && Bool.true)) && (__fits_58 (name) (sorted))))))) (fun (__a : (Except ByteArray (List ByteArray))) => (_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) (match __a with | Except.error message => (LexLeanBoot.AxiomOutput.malformed (message)) | Except.ok sorted => (match sorted with | List.nil => (LexLeanBoot.AxiomOutput.malformed ((LexLeanBoot.AxiomOutput.text ("an axiom list cannot be empty")))) | List.cons head tail => (LexLeanBoot.AxiomOutput.parsed (name) (sorted))))) (_root_.LexLeanCollections.listFold ((fun (state : (Except ByteArray (List ByteArray))) (piece : ByteArray) => (LexLeanBoot.AxiomOutput.collectStep (state) (piece)))) ((Except.ok (([] : List ByteArray)) : (Except ByteArray (List ByteArray)))) ((LexLeanBoot.Text.splitOn (list) ((44 : UInt8)))) : (Except ByteArray (List ByteArray))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_85 (list) ((44 : UInt8)))) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.bytes) (es := (_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun _ => rfl) ((fun (state : (Except ByteArray (List ByteArray))) (piece : ByteArray) => (LexLeanBoot.AxiomOutput.collectStep (state) (piece)))) (fun (__p0 : (Except ByteArray (List ByteArray))) (__p1 : ByteArray) => __fits_84 __p0 __p1) 84 [] (fun (__p0 : (Except ByteArray (List ByteArray))) (__p1 : ByteArray) => __rel_84 __p0 __p1) (p := __prog) (fi := 83) (ta := .bytes) (ts := (.result (.list .bytes) .bytes)) rfl ((Except.ok (([] : List ByteArray)) : (Except ByteArray (List ByteArray)))) ((LexLeanBoot.Text.splitOn (list) ((44 : UInt8)))))) (fun (__a : (Except ByteArray (List ByteArray))) _ => match __a with | Except.error message => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_59 (message)))) | Except.ok sorted => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (List ByteArray)) => (match __a with | List.nil => ((((Bool.true && Bool.true) && (__fits_7 ("an axiom list cannot be empty"))) && Bool.true) && (__fits_59 ((LexLeanBoot.AxiomOutput.text ("an axiom list cannot be empty"))))) | List.cons head tail => ((Bool.true && (Bool.true && Bool.true)) && (__fits_58 (name) (sorted))))) (fun (__a : (List ByteArray)) => (_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) (match __a with | List.nil => (LexLeanBoot.AxiomOutput.malformed ((LexLeanBoot.AxiomOutput.text ("an axiom list cannot be empty")))) | List.cons head tail => (LexLeanBoot.AxiomOutput.parsed (name) (sorted)))) sorted (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (List ByteArray)) _ => match __a with | List.nil => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("an axiom list cannot be empty"))) _root_.LexLeanPreservation.convL_nil) (__rel_59 ((LexLeanBoot.AxiomOutput.text ("an axiom list cannot be empty")))))) | List.cons head tail => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_58 (name) (sorted))))))))))) + +def __fits_62 (payload : ByteArray) (body : ByteArray) : Bool := + (((Bool.true && (((Bool.true && Bool.true) && (__fits_7 ("' depends on axioms: ["))) && Bool.true)) && (__fits_73 (body) ((LexLeanBoot.AxiomOutput.text ("' depends on axioms: ["))))) && (match (LexLeanBoot.AxiomOutput.splitLast (body) ((LexLeanBoot.AxiomOutput.text ("' depends on axioms: [")))) with | Option.some split => (Bool.true && (let name : ByteArray := (split).1; (Bool.true && (let list : ByteArray := (split).2; (((Bool.true && (Bool.true && Bool.true)) && (__fits_74 (name) (list))) && (let listed_axioms : (Except ByteArray (Prod ByteArray (List ByteArray))) := (LexLeanBoot.AxiomOutput.axiomList (name) (list)); (((((Bool.true && Bool.true) && (__fits_60 (name))) && Bool.true) && (__fits_59 ((LexLeanBoot.AxiomOutput.notLean (name))))) && (let refused : (Except ByteArray (Prod ByteArray (List ByteArray))) := (LexLeanBoot.AxiomOutput.malformed ((LexLeanBoot.AxiomOutput.notLean (name)))); (((Bool.true && Bool.true) && (__fits_61 (name))) && (if (LexLeanBoot.AxiomOutput.isClosedLeanName (name)) then Bool.true else Bool.true)))))))))) | Option.none => ((Bool.true && Bool.true) && (__fits_57 (payload))))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.axiomList LexLeanBoot.AxiomOutput.isClosedLeanName LexLeanBoot.AxiomOutput.malformed LexLeanBoot.AxiomOutput.notLean LexLeanBoot.AxiomOutput.splitLast LexLeanBoot.AxiomOutput.text LexLeanBoot.AxiomOutput.unrecognized in +theorem __rel_62 (payload : ByteArray) (body : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 62 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes payload), (_root_.LexLeanTarget.TargetSyntax.Value.bytes body)] (_root_.LexLeanPreservation.Rel (__fits_62 payload body) ((_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) (LexLeanBoot.AxiomOutput.listed payload body))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (fun (__a : (Option (Prod ByteArray ByteArray))) => (match __a with | Option.some split => (Bool.true && (let name : ByteArray := (split).1; (Bool.true && (let list : ByteArray := (split).2; (((Bool.true && (Bool.true && Bool.true)) && (__fits_74 (name) (list))) && (let listed_axioms : (Except ByteArray (Prod ByteArray (List ByteArray))) := (LexLeanBoot.AxiomOutput.axiomList (name) (list)); (((((Bool.true && Bool.true) && (__fits_60 (name))) && Bool.true) && (__fits_59 ((LexLeanBoot.AxiomOutput.notLean (name))))) && (let refused : (Except ByteArray (Prod ByteArray (List ByteArray))) := (LexLeanBoot.AxiomOutput.malformed ((LexLeanBoot.AxiomOutput.notLean (name)))); (((Bool.true && Bool.true) && (__fits_61 (name))) && (if (LexLeanBoot.AxiomOutput.isClosedLeanName (name)) then Bool.true else Bool.true)))))))))) | Option.none => ((Bool.true && Bool.true) && (__fits_57 (payload))))) (fun (__a : (Option (Prod ByteArray ByteArray))) => (_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) (match __a with | Option.some split => (let name : ByteArray := (split).1; (let list : ByteArray := (split).2; (let listed_axioms : (Except ByteArray (Prod ByteArray (List ByteArray))) := (LexLeanBoot.AxiomOutput.axiomList (name) (list)); (let refused : (Except ByteArray (Prod ByteArray (List ByteArray))) := (LexLeanBoot.AxiomOutput.malformed ((LexLeanBoot.AxiomOutput.notLean (name)))); (if (LexLeanBoot.AxiomOutput.isClosedLeanName (name)) then listed_axioms else refused))))) | Option.none => (LexLeanBoot.AxiomOutput.unrecognized (payload)))) (LexLeanBoot.AxiomOutput.splitLast (body) ((LexLeanBoot.AxiomOutput.text ("' depends on axioms: [")))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("' depends on axioms: ["))) _root_.LexLeanPreservation.convL_nil)) (__rel_73 (body) ((LexLeanBoot.AxiomOutput.text ("' depends on axioms: ["))))) (fun (__a : (Option (Prod ByteArray ByteArray))) _ => match __a with | Option.some split => (_root_.LexLeanPreservation.convA_hit rfl rfl (let name : ByteArray := (split).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (let list : ByteArray := (split).2; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (let listed_axioms : (Except ByteArray (Prod ByteArray (List ByteArray))) := (LexLeanBoot.AxiomOutput.axiomList (name) (list)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_74 (name) (list))) (let refused : (Except ByteArray (Prod ByteArray (List ByteArray))) := (LexLeanBoot.AxiomOutput.malformed ((LexLeanBoot.AxiomOutput.notLean (name)))); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_60 (name))) _root_.LexLeanPreservation.convL_nil) (__rel_59 ((LexLeanBoot.AxiomOutput.notLean (name))))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else Bool.true)) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) (if __b then listed_axioms else refused)) (LexLeanBoot.AxiomOutput.isClosedLeanName (name)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_61 (name))) (fun _ => (_root_.LexLeanPreservation.conv_var rfl)) (fun _ => (_root_.LexLeanPreservation.conv_var rfl)))))))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_57 (payload))))))) + +def __fits_44 (payload : ByteArray) : Bool := + (((Bool.true && (((Bool.true && Bool.true) && (__fits_7 ("'"))) && Bool.true)) && (__fits_49 (payload) ((LexLeanBoot.AxiomOutput.text ("'"))))) && (match (LexLeanBoot.AxiomOutput.stripPrefix (payload) ((LexLeanBoot.AxiomOutput.text ("'")))) with | Option.none => ((Bool.true && Bool.true) && (__fits_57 (payload))) | Option.some rest => (((Bool.true && (((Bool.true && Bool.true) && (__fits_7 ("' does not depend on any axioms"))) && Bool.true)) && (__fits_56 (rest) ((LexLeanBoot.AxiomOutput.text ("' does not depend on any axioms"))))) && (match (LexLeanBoot.AxiomOutput.stripSuffix (rest) ((LexLeanBoot.AxiomOutput.text ("' does not depend on any axioms")))) with | Option.some name => (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && (__fits_58 (name) (([] : List ByteArray)))) && (let accepted : (Except ByteArray (Prod ByteArray (List ByteArray))) := (LexLeanBoot.AxiomOutput.parsed (name) (([] : List ByteArray))); (((((Bool.true && Bool.true) && (__fits_60 (name))) && Bool.true) && (__fits_59 ((LexLeanBoot.AxiomOutput.notLean (name))))) && (let refused : (Except ByteArray (Prod ByteArray (List ByteArray))) := (LexLeanBoot.AxiomOutput.malformed ((LexLeanBoot.AxiomOutput.notLean (name)))); (((Bool.true && Bool.true) && (__fits_61 (name))) && (if (LexLeanBoot.AxiomOutput.isClosedLeanName (name)) then Bool.true else Bool.true)))))) | Option.none => (((Bool.true && (((Bool.true && Bool.true) && (__fits_7 ("]"))) && Bool.true)) && (__fits_56 (rest) ((LexLeanBoot.AxiomOutput.text ("]"))))) && (match (LexLeanBoot.AxiomOutput.stripSuffix (rest) ((LexLeanBoot.AxiomOutput.text ("]")))) with | Option.some body => ((Bool.true && (Bool.true && Bool.true)) && (__fits_62 (payload) (body))) | Option.none => ((Bool.true && Bool.true) && (__fits_57 (payload))))))))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.isClosedLeanName LexLeanBoot.AxiomOutput.listed LexLeanBoot.AxiomOutput.malformed LexLeanBoot.AxiomOutput.notLean LexLeanBoot.AxiomOutput.parsed LexLeanBoot.AxiomOutput.stripPrefix LexLeanBoot.AxiomOutput.stripSuffix LexLeanBoot.AxiomOutput.text LexLeanBoot.AxiomOutput.unrecognized in +theorem __rel_44 (payload : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 44 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes payload)] (_root_.LexLeanPreservation.Rel (__fits_44 payload) ((_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) (LexLeanBoot.AxiomOutput.parsePayload payload))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.none => ((Bool.true && Bool.true) && (__fits_57 (payload))) | Option.some rest => (((Bool.true && (((Bool.true && Bool.true) && (__fits_7 ("' does not depend on any axioms"))) && Bool.true)) && (__fits_56 (rest) ((LexLeanBoot.AxiomOutput.text ("' does not depend on any axioms"))))) && (match (LexLeanBoot.AxiomOutput.stripSuffix (rest) ((LexLeanBoot.AxiomOutput.text ("' does not depend on any axioms")))) with | Option.some name => (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && (__fits_58 (name) (([] : List ByteArray)))) && (let accepted : (Except ByteArray (Prod ByteArray (List ByteArray))) := (LexLeanBoot.AxiomOutput.parsed (name) (([] : List ByteArray))); (((((Bool.true && Bool.true) && (__fits_60 (name))) && Bool.true) && (__fits_59 ((LexLeanBoot.AxiomOutput.notLean (name))))) && (let refused : (Except ByteArray (Prod ByteArray (List ByteArray))) := (LexLeanBoot.AxiomOutput.malformed ((LexLeanBoot.AxiomOutput.notLean (name)))); (((Bool.true && Bool.true) && (__fits_61 (name))) && (if (LexLeanBoot.AxiomOutput.isClosedLeanName (name)) then Bool.true else Bool.true)))))) | Option.none => (((Bool.true && (((Bool.true && Bool.true) && (__fits_7 ("]"))) && Bool.true)) && (__fits_56 (rest) ((LexLeanBoot.AxiomOutput.text ("]"))))) && (match (LexLeanBoot.AxiomOutput.stripSuffix (rest) ((LexLeanBoot.AxiomOutput.text ("]")))) with | Option.some body => ((Bool.true && (Bool.true && Bool.true)) && (__fits_62 (payload) (body))) | Option.none => ((Bool.true && Bool.true) && (__fits_57 (payload))))))))) (fun (__a : (Option ByteArray)) => (_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) (match __a with | Option.none => (LexLeanBoot.AxiomOutput.unrecognized (payload)) | Option.some rest => (match (LexLeanBoot.AxiomOutput.stripSuffix (rest) ((LexLeanBoot.AxiomOutput.text ("' does not depend on any axioms")))) with | Option.some name => (let accepted : (Except ByteArray (Prod ByteArray (List ByteArray))) := (LexLeanBoot.AxiomOutput.parsed (name) (([] : List ByteArray))); (let refused : (Except ByteArray (Prod ByteArray (List ByteArray))) := (LexLeanBoot.AxiomOutput.malformed ((LexLeanBoot.AxiomOutput.notLean (name)))); (if (LexLeanBoot.AxiomOutput.isClosedLeanName (name)) then accepted else refused))) | Option.none => (match (LexLeanBoot.AxiomOutput.stripSuffix (rest) ((LexLeanBoot.AxiomOutput.text ("]")))) with | Option.some body => (LexLeanBoot.AxiomOutput.listed (payload) (body)) | Option.none => (LexLeanBoot.AxiomOutput.unrecognized (payload)))))) (LexLeanBoot.AxiomOutput.stripPrefix (payload) ((LexLeanBoot.AxiomOutput.text ("'")))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("'"))) _root_.LexLeanPreservation.convL_nil)) (__rel_49 (payload) ((LexLeanBoot.AxiomOutput.text ("'"))))) (fun (__a : (Option ByteArray)) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_57 (payload)))) | Option.some rest => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.some name => (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && (__fits_58 (name) (([] : List ByteArray)))) && (let accepted : (Except ByteArray (Prod ByteArray (List ByteArray))) := (LexLeanBoot.AxiomOutput.parsed (name) (([] : List ByteArray))); (((((Bool.true && Bool.true) && (__fits_60 (name))) && Bool.true) && (__fits_59 ((LexLeanBoot.AxiomOutput.notLean (name))))) && (let refused : (Except ByteArray (Prod ByteArray (List ByteArray))) := (LexLeanBoot.AxiomOutput.malformed ((LexLeanBoot.AxiomOutput.notLean (name)))); (((Bool.true && Bool.true) && (__fits_61 (name))) && (if (LexLeanBoot.AxiomOutput.isClosedLeanName (name)) then Bool.true else Bool.true)))))) | Option.none => (((Bool.true && (((Bool.true && Bool.true) && (__fits_7 ("]"))) && Bool.true)) && (__fits_56 (rest) ((LexLeanBoot.AxiomOutput.text ("]"))))) && (match (LexLeanBoot.AxiomOutput.stripSuffix (rest) ((LexLeanBoot.AxiomOutput.text ("]")))) with | Option.some body => ((Bool.true && (Bool.true && Bool.true)) && (__fits_62 (payload) (body))) | Option.none => ((Bool.true && Bool.true) && (__fits_57 (payload))))))) (fun (__a : (Option ByteArray)) => (_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) (match __a with | Option.some name => (let accepted : (Except ByteArray (Prod ByteArray (List ByteArray))) := (LexLeanBoot.AxiomOutput.parsed (name) (([] : List ByteArray))); (let refused : (Except ByteArray (Prod ByteArray (List ByteArray))) := (LexLeanBoot.AxiomOutput.malformed ((LexLeanBoot.AxiomOutput.notLean (name)))); (if (LexLeanBoot.AxiomOutput.isClosedLeanName (name)) then accepted else refused))) | Option.none => (match (LexLeanBoot.AxiomOutput.stripSuffix (rest) ((LexLeanBoot.AxiomOutput.text ("]")))) with | Option.some body => (LexLeanBoot.AxiomOutput.listed (payload) (body)) | Option.none => (LexLeanBoot.AxiomOutput.unrecognized (payload))))) (LexLeanBoot.AxiomOutput.stripSuffix (rest) ((LexLeanBoot.AxiomOutput.text ("' does not depend on any axioms")))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("' does not depend on any axioms"))) _root_.LexLeanPreservation.convL_nil)) (__rel_56 (rest) ((LexLeanBoot.AxiomOutput.text ("' does not depend on any axioms"))))) (fun (__a : (Option ByteArray)) _ => match __a with | Option.some name => (_root_.LexLeanPreservation.convA_hit rfl rfl (let accepted : (Except ByteArray (Prod ByteArray (List ByteArray))) := (LexLeanBoot.AxiomOutput.parsed (name) (([] : List ByteArray))); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) (__rel_58 (name) (([] : List ByteArray)))) (let refused : (Except ByteArray (Prod ByteArray (List ByteArray))) := (LexLeanBoot.AxiomOutput.malformed ((LexLeanBoot.AxiomOutput.notLean (name)))); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_60 (name))) _root_.LexLeanPreservation.convL_nil) (__rel_59 ((LexLeanBoot.AxiomOutput.notLean (name))))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else Bool.true)) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) (if __b then accepted else refused)) (LexLeanBoot.AxiomOutput.isClosedLeanName (name)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_61 (name))) (fun _ => (_root_.LexLeanPreservation.conv_var rfl)) (fun _ => (_root_.LexLeanPreservation.conv_var rfl)))))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.some body => ((Bool.true && (Bool.true && Bool.true)) && (__fits_62 (payload) (body))) | Option.none => ((Bool.true && Bool.true) && (__fits_57 (payload))))) (fun (__a : (Option ByteArray)) => (_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) (match __a with | Option.some body => (LexLeanBoot.AxiomOutput.listed (payload) (body)) | Option.none => (LexLeanBoot.AxiomOutput.unrecognized (payload)))) (LexLeanBoot.AxiomOutput.stripSuffix (rest) ((LexLeanBoot.AxiomOutput.text ("]")))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("]"))) _root_.LexLeanPreservation.convL_nil)) (__rel_56 (rest) ((LexLeanBoot.AxiomOutput.text ("]"))))) (fun (__a : (Option ByteArray)) _ => match __a with | Option.some body => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_62 (payload) (body)))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_57 (payload))))))))))))))) + +def __fits_45 (names : (List ByteArray)) : Bool := + (Bool.true && (match names with | List.nil => (Bool.true && Bool.true) | List.cons head tail => Bool.true)) + +theorem __rel_45 (names : (List ByteArray)) : _root_.LexLeanPreservation.FunRel __prog 45 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) names)] (_root_.LexLeanPreservation.Rel (__fits_45 names) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) (LexLeanBoot.AxiomOutput.tailOf names))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (List ByteArray)) => (match __a with | List.nil => (Bool.true && Bool.true) | List.cons head tail => Bool.true)) (fun (__a : (List ByteArray)) => (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) (match __a with | List.nil => ([] : List ByteArray) | List.cons head tail => tail)) names (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (List ByteArray)) _ => match __a with | List.nil => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil)) | List.cons head tail => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl))))) + +def __fits_30 (records : (List (LexLeanBoot.AxiomOutput.Record))) (remaining : (List ByteArray)) (payload : ByteArray) (about : (Option ByteArray)) : Bool := + (((Bool.true && Bool.true) && (__fits_43 (payload))) && (if (LexLeanBoot.AxiomOutput.terminates (payload)) then (((Bool.true && Bool.true) && (__fits_44 (payload))) && (match (LexLeanBoot.AxiomOutput.parsePayload (payload)) with | Except.error message => ((Bool.true && (Bool.true && Bool.true)) && (__fits_31 (message) (about))) | Except.ok found => ((((((Bool.true && (Bool.true && (Bool.true && Bool.true))) && Bool.true) && (Bool.true && Bool.true)) && Bool.true) && (((Bool.true && Bool.true) && (__fits_45 (remaining))) && Bool.true)) && Bool.true))) else ((Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true)))) && Bool.true))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.parsePayload LexLeanBoot.AxiomOutput.stop LexLeanBoot.AxiomOutput.tailOf LexLeanBoot.AxiomOutput.terminates in +theorem __rel_30 (records : (List (LexLeanBoot.AxiomOutput.Record))) (remaining : (List ByteArray)) (payload : ByteArray) (about : (Option ByteArray)) : _root_.LexLeanPreservation.FunRel __prog 30 [((_root_.LexLeanPreservation.encList __enc_2) records), ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) remaining), (_root_.LexLeanTarget.TargetSyntax.Value.bytes payload), ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) about)] (_root_.LexLeanPreservation.Rel (__fits_30 records remaining payload about) (__enc_1 (LexLeanBoot.AxiomOutput.extend records remaining payload about))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && (__fits_44 (payload))) && (match (LexLeanBoot.AxiomOutput.parsePayload (payload)) with | Except.error message => ((Bool.true && (Bool.true && Bool.true)) && (__fits_31 (message) (about))) | Except.ok found => ((((((Bool.true && (Bool.true && (Bool.true && Bool.true))) && Bool.true) && (Bool.true && Bool.true)) && Bool.true) && (((Bool.true && Bool.true) && (__fits_45 (remaining))) && Bool.true)) && Bool.true))) else ((Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true)))) && Bool.true))) (fun (__b : Bool) => __enc_1 (if __b then (match (LexLeanBoot.AxiomOutput.parsePayload (payload)) with | Except.error message => (LexLeanBoot.AxiomOutput.stop (message) (about)) | Except.ok found => (LexLeanBoot.AxiomOutput.Scan.between ((({ declaration := (found).1, axioms := (found).2, expected := about } : (LexLeanBoot.AxiomOutput.Record)) :: records)) ((LexLeanBoot.AxiomOutput.tailOf (remaining))) : (LexLeanBoot.AxiomOutput.Scan))) else (LexLeanBoot.AxiomOutput.Scan.inside (records) (remaining) (payload) (about) : (LexLeanBoot.AxiomOutput.Scan)))) (LexLeanBoot.AxiomOutput.terminates (payload)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_43 (payload))) (fun _ => (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) (fun (__a : (Except ByteArray (Prod ByteArray (List ByteArray)))) => (match __a with | Except.error message => ((Bool.true && (Bool.true && Bool.true)) && (__fits_31 (message) (about))) | Except.ok found => ((((((Bool.true && (Bool.true && (Bool.true && Bool.true))) && Bool.true) && (Bool.true && Bool.true)) && Bool.true) && (((Bool.true && Bool.true) && (__fits_45 (remaining))) && Bool.true)) && Bool.true))) (fun (__a : (Except ByteArray (Prod ByteArray (List ByteArray)))) => __enc_1 (match __a with | Except.error message => (LexLeanBoot.AxiomOutput.stop (message) (about)) | Except.ok found => (LexLeanBoot.AxiomOutput.Scan.between ((({ declaration := (found).1, axioms := (found).2, expected := about } : (LexLeanBoot.AxiomOutput.Record)) :: records)) ((LexLeanBoot.AxiomOutput.tailOf (remaining))) : (LexLeanBoot.AxiomOutput.Scan)))) (LexLeanBoot.AxiomOutput.parsePayload (payload)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_44 (payload))) (fun (__a : (Except ByteArray (Prod ByteArray (List ByteArray)))) _ => match __a with | Except.error message => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_31 (message) (about)))) | Except.ok found => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) _root_.LexLeanPreservation.construct_adt) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_45 (remaining))) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_adt)))))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)))) _root_.LexLeanPreservation.construct_adt))) + +def __fits_86 (needle : ByteArray) (size : Nat) (subject : ByteArray) (total : Nat) (position : Nat) : Bool := + (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_82 (subject) (needle) (position))) && (if (LexLeanBoot.Text.matchAt (subject) (needle) (position)) then (Bool.true && Bool.true) else (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + size) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.blt (position + size) total) then ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) + +attribute [local irreducible] LexLeanBoot.Text.matchAt in +theorem __rel_86 (needle : ByteArray) (size : Nat) (subject : ByteArray) (total : Nat) (position : Nat) : _root_.LexLeanPreservation.FunRel __prog 86 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes needle), (_root_.LexLeanTarget.TargetSyntax.Value.nat size), (_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat total), (_root_.LexLeanTarget.TargetSyntax.Value.nat position)] (_root_.LexLeanPreservation.Rel (__fits_86 needle size subject total position) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) ((if (LexLeanBoot.Text.matchAt (subject) (needle) (position)) then (Option.none : (Option Nat)) else (if (Nat.blt (position + size) total) then (Option.some ((position + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat))))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + size) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.blt (position + size) total) then ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Option.none : (Option Nat)) else (if (Nat.blt (position + size) total) then (Option.some ((position + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat))))) (LexLeanBoot.Text.matchAt (subject) (needle) (position)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (__rel_82 (subject) (needle) (position))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Option.some ((position + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat)))) (Nat.blt (position + size) total) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position size)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (position + size) total)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (1 : Nat))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))) + +def __fits_76 (subject : ByteArray) (needle : ByteArray) : Bool := + (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (subject) : Nat) 18446744073709551616)) && (let total : Nat := (_root_.LexLeanRuntime.length (subject) : Nat); (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (needle) : Nat) 18446744073709551616)) && (let size : Nat := (_root_.LexLeanRuntime.length (needle) : Nat); ((((Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true)))) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (total + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : Nat) => __fits_86 (needle) (size) (subject) (total) __p0) ((fun (position : Nat) => (if (LexLeanBoot.Text.matchAt (subject) (needle) (position)) then (Option.none : (Option Nat)) else (if (Nat.blt (position + size) total) then (Option.some ((position + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat)))))) ((total + (1 : Nat))) ((0 : Nat)))) && (let position : Nat := ((_root_.LexLeanCollections.iterateUntil ((fun (position : Nat) => (if (LexLeanBoot.Text.matchAt (subject) (needle) (position)) then (Option.none : (Option Nat)) else (if (Nat.blt (position + size) total) then (Option.some ((position + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat)))))) ((total + (1 : Nat))) ((0 : Nat)) : (Prod Nat Bool))).1; (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_82 (subject) (needle) (position))) && (if (LexLeanBoot.Text.matchAt (subject) (needle) (position)) then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))))) + +attribute [local irreducible] LexLeanBoot.Text.matchAt in +theorem __rel_76 (subject : ByteArray) (needle : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 76 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.bytes needle)] (_root_.LexLeanPreservation.Rel (__fits_76 subject needle) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (LexLeanBoot.Text.find subject needle))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (let total : Nat := (_root_.LexLeanRuntime.length (subject) : Nat); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes subject)) (let size : Nat := (_root_.LexLeanRuntime.length (needle) : Nat); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes needle)) (let position : Nat := ((_root_.LexLeanCollections.iterateUntil ((fun (position : Nat) => (if (LexLeanBoot.Text.matchAt (subject) (needle) (position)) then (Option.none : (Option Nat)) else (if (Nat.blt (position + size) total) then (Option.some ((position + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat)))))) ((total + (1 : Nat))) ((0 : Nat)) : (Prod Nat Bool))).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd total (1 : Nat))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterateUntil (es := _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.optEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) ((fun (position : Nat) => (if (LexLeanBoot.Text.matchAt (subject) (needle) (position)) then (Option.none : (Option Nat)) else (if (Nat.blt (position + size) total) then (Option.some ((position + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat)))))) (fun (__p0 : Nat) => __fits_86 (needle) (size) (subject) (total) __p0) 86 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes needle), (_root_.LexLeanTarget.TargetSyntax.Value.nat size), (_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat total)] (fun (__p0 : Nat) => __rel_86 (needle) (size) (subject) (total) __p0) (_root_.LexLeanCollections.iterateUntil ((fun (position : Nat) => (if (LexLeanBoot.Text.matchAt (subject) (needle) (position)) then (Option.none : (Option Nat)) else (if (Nat.blt (position + size) total) then (Option.some ((position + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat))))))) (fun _ => rfl) (fun _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (p := __prog) (fi := 38) (ts := .nat) rfl ((total + (1 : Nat))) ((0 : Nat))))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Option.some (position) : (Option Nat)) else (Option.none : (Option Nat)))) (LexLeanBoot.Text.matchAt (subject) (needle) (position)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (__rel_82 (subject) (needle) (position))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)))))) + +def __fits_65 (subject : ByteArray) (delimiter : ByteArray) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && (__fits_76 (subject) (delimiter))) && (match (LexLeanBoot.Text.find (subject) (delimiter)) with | Option.some position => ((((((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_18 (subject) ((0 : Nat)) (position))) && (((Bool.true && (((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (delimiter) : Nat) 18446744073709551616)) && Bool.true)) && (Nat.blt (position + (_root_.LexLeanRuntime.length (delimiter) : Nat)) 18446744073709551616)) && (((((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (subject) : Nat) 18446744073709551616)) && (((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (delimiter) : Nat) 18446744073709551616)) && Bool.true)) && (Nat.blt (position + (_root_.LexLeanRuntime.length (delimiter) : Nat)) 18446744073709551616)) && Bool.true)) && Bool.true) && Bool.true))) && (__fits_18 (subject) ((position + (_root_.LexLeanRuntime.length (delimiter) : Nat))) ((_root_.LexLeanRuntime.subtract ((_root_.LexLeanRuntime.length (subject) : Nat)) ((position + (_root_.LexLeanRuntime.length (delimiter) : Nat))) : Nat)))) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (Bool.true && Bool.true))) + +attribute [local irreducible] LexLeanBoot.Text.find LexLeanBoot.Text.sliceOr in +theorem __rel_65 (subject : ByteArray) (delimiter : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 65 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.bytes delimiter)] (_root_.LexLeanPreservation.Rel (__fits_65 subject delimiter) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (LexLeanBoot.AxiomOutput.splitOnce subject delimiter))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Option Nat)) => (match __a with | Option.some position => ((((((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_18 (subject) ((0 : Nat)) (position))) && (((Bool.true && (((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (delimiter) : Nat) 18446744073709551616)) && Bool.true)) && (Nat.blt (position + (_root_.LexLeanRuntime.length (delimiter) : Nat)) 18446744073709551616)) && (((((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (subject) : Nat) 18446744073709551616)) && (((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (delimiter) : Nat) 18446744073709551616)) && Bool.true)) && (Nat.blt (position + (_root_.LexLeanRuntime.length (delimiter) : Nat)) 18446744073709551616)) && Bool.true)) && Bool.true) && Bool.true))) && (__fits_18 (subject) ((position + (_root_.LexLeanRuntime.length (delimiter) : Nat))) ((_root_.LexLeanRuntime.subtract ((_root_.LexLeanRuntime.length (subject) : Nat)) ((position + (_root_.LexLeanRuntime.length (delimiter) : Nat))) : Nat)))) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option Nat)) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (match __a with | Option.some position => (Option.some (((LexLeanBoot.Text.sliceOr (subject) ((0 : Nat)) (position)), (LexLeanBoot.Text.sliceOr (subject) ((position + (_root_.LexLeanRuntime.length (delimiter) : Nat))) ((_root_.LexLeanRuntime.subtract ((_root_.LexLeanRuntime.length (subject) : Nat)) ((position + (_root_.LexLeanRuntime.length (delimiter) : Nat))) : Nat))))) : (Option (Prod ByteArray ByteArray))) | Option.none => (Option.none : (Option (Prod ByteArray ByteArray))))) (LexLeanBoot.Text.find (subject) (delimiter)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_76 (subject) (delimiter))) (fun (__a : (Option Nat)) _ => match __a with | Option.some position => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (__rel_18 (subject) ((0 : Nat)) (position))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes delimiter)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (_root_.LexLeanRuntime.length (delimiter) : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes subject)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes delimiter)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (_root_.LexLeanRuntime.length (delimiter) : Nat))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub (_root_.LexLeanRuntime.length (subject) : Nat) (position + (_root_.LexLeanRuntime.length (delimiter) : Nat)))) _root_.LexLeanPreservation.convL_nil))) (__rel_18 (subject) ((position + (_root_.LexLeanRuntime.length (delimiter) : Nat))) ((_root_.LexLeanRuntime.subtract ((_root_.LexLeanRuntime.length (subject) : Nat)) ((position + (_root_.LexLeanRuntime.length (delimiter) : Nat))) : Nat)))) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))) + +def __fits_87 (digits : ByteArray) : Bool := + (((((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (digits) : Nat) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.blt (_root_.LexLeanRuntime.length (digits) : Nat) (20 : Nat)) then (Bool.true && Bool.true) else (((((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (digits) : Nat) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (_root_.LexLeanRuntime.length (digits) : Nat) (20 : Nat)) then ((((((Bool.true && (((Bool.true && Bool.true) && (__fits_7 ("18446744073709551615"))) && Bool.true)) && Bool.true) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.text in +theorem __rel_87 (digits : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 87 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes digits)] (_root_.LexLeanPreservation.Rel (__fits_87 digits) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanBoot.AxiomOutput.fitsWord digits))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (((((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (digits) : Nat) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (_root_.LexLeanRuntime.length (digits) : Nat) (20 : Nat)) then ((((((Bool.true && (((Bool.true && Bool.true) && (__fits_7 ("18446744073709551615"))) && Bool.true)) && Bool.true) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then Bool.true else (if (Nat.beq (_root_.LexLeanRuntime.length (digits) : Nat) (20 : Nat)) then (!(_root_.LexLeanRuntime.equal ((_root_.LexLeanRuntime.compareBytes (digits) ((LexLeanBoot.AxiomOutput.text ("18446744073709551615"))) : Ordering)) ((_root_.LexLeanRuntime.compareBytes ((ByteArray.mk #[1])) ((ByteArray.mk #[0])) : Ordering)) : Bool)) else Bool.false))) (Nat.blt (_root_.LexLeanRuntime.length (digits) : Nat) (20 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes digits)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (_root_.LexLeanRuntime.length (digits) : Nat) (20 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((((Bool.true && (((Bool.true && Bool.true) && (__fits_7 ("18446744073709551615"))) && Bool.true)) && Bool.true) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then (!(_root_.LexLeanRuntime.equal ((_root_.LexLeanRuntime.compareBytes (digits) ((LexLeanBoot.AxiomOutput.text ("18446744073709551615"))) : Ordering)) ((_root_.LexLeanRuntime.compareBytes ((ByteArray.mk #[1])) ((ByteArray.mk #[0])) : Ordering)) : Bool)) else Bool.false)) (Nat.beq (_root_.LexLeanRuntime.length (digits) : Nat) (20 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes digits)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (_root_.LexLeanRuntime.length (digits) : Nat) (20 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("18446744073709551615"))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_compareBytes digits (LexLeanBoot.AxiomOutput.text ("18446744073709551615")))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_compareBytes (ByteArray.mk #[1]) (ByteArray.mk #[0]))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_ordering (_root_.LexLeanRuntime.compareBytes (digits) ((LexLeanBoot.AxiomOutput.text ("18446744073709551615"))) : Ordering) (_root_.LexLeanRuntime.compareBytes ((ByteArray.mk #[1])) ((ByteArray.mk #[0])) : Ordering))) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_boolNot (_root_.LexLeanRuntime.equal ((_root_.LexLeanRuntime.compareBytes (digits) ((LexLeanBoot.AxiomOutput.text ("18446744073709551615"))) : Ordering)) ((_root_.LexLeanRuntime.compareBytes ((ByteArray.mk #[1])) ((ByteArray.mk #[0])) : Ordering)) : Bool)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))))) + +def __fits_98 (subject : ByteArray) (position : Nat) : Bool := + (((Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true)))) && (__fits_70 (subject) (position) ((48 : UInt8)) ((57 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIn (subject) (position) ((48 : UInt8)) ((57 : UInt8))) then ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.byteIn in +theorem __rel_98 (subject : ByteArray) (position : Nat) : _root_.LexLeanPreservation.FunRel __prog 98 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat position)] (_root_.LexLeanPreservation.Rel (__fits_98 subject position) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (LexLeanBoot.AxiomOutput.digitStep subject position))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Option.some ((position + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat)))) (LexLeanBoot.AxiomOutput.byteIn (subject) (position) ((48 : UInt8)) ((57 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)))) (__rel_70 (subject) (position) ((48 : UInt8)) ((57 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (1 : Nat))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_93 (subject : ByteArray) (position : Nat) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && (__fits_98 (subject) (position))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.digitStep in +theorem __rel_93 (subject : ByteArray) (position : Nat) : _root_.LexLeanPreservation.FunRel __prog 93 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat position)] (_root_.LexLeanPreservation.Rel (__fits_93 subject position) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) ((LexLeanBoot.AxiomOutput.digitStep (subject) (position))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_98 (subject) (position))) + +def __fits_88 (subject : ByteArray) : Bool := + (((((Bool.true && Bool.true) && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (subject) : Nat) 18446744073709551616)) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : Nat) => __fits_93 (subject) __p0) ((fun (position : Nat) => (LexLeanBoot.AxiomOutput.digitStep (subject) (position)))) ((_root_.LexLeanRuntime.length (subject) : Nat)) ((0 : Nat)))) && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (subject) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.digitStep in +theorem __rel_88 (subject : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 88 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject)] (_root_.LexLeanPreservation.Rel (__fits_88 subject) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanBoot.AxiomOutput.allDigits subject))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes subject)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterateUntil (es := _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.optEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) ((fun (position : Nat) => (LexLeanBoot.AxiomOutput.digitStep (subject) (position)))) (fun (__p0 : Nat) => __fits_93 (subject) __p0) 93 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject)] (fun (__p0 : Nat) => __rel_93 (subject) __p0) (_root_.LexLeanCollections.iterateUntil ((fun (position : Nat) => (LexLeanBoot.AxiomOutput.digitStep (subject) (position))))) (fun _ => rfl) (fun _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (p := __prog) (fi := 38) (ts := .nat) rfl ((_root_.LexLeanRuntime.length (subject) : Nat)) ((0 : Nat))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes subject)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq ((_root_.LexLeanCollections.iterateUntil ((fun (position : Nat) => (LexLeanBoot.AxiomOutput.digitStep (subject) (position)))) ((_root_.LexLeanRuntime.length (subject) : Nat)) ((0 : Nat)) : (Prod Nat Bool))).1 (_root_.LexLeanRuntime.length (subject) : Nat))) + +def __fits_78 (raw : ByteArray) : Bool := + ((((Bool.true && (((Bool.true && Bool.true) && (__fits_7 ("+"))) && Bool.true)) && (__fits_49 (raw) ((LexLeanBoot.AxiomOutput.text ("+"))))) && (match (LexLeanBoot.AxiomOutput.stripPrefix (raw) ((LexLeanBoot.AxiomOutput.text ("+")))) with | Option.some unsigned => Bool.true | Option.none => Bool.true)) && (let digits : ByteArray := (match (LexLeanBoot.AxiomOutput.stripPrefix (raw) ((LexLeanBoot.AxiomOutput.text ("+")))) with | Option.some unsigned => unsigned | Option.none => raw); (((((Bool.true && Bool.true) && (__fits_20 (digits))) && Bool.true) && (__fits_87 ((LexLeanBoot.AxiomOutput.significant (digits))))) && (let fits : Bool := (LexLeanBoot.AxiomOutput.fitsWord ((LexLeanBoot.AxiomOutput.significant (digits)))); (((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (digits) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true) && (if (Nat.blt (0 : Nat) (_root_.LexLeanRuntime.length (digits) : Nat)) then (((Bool.true && Bool.true) && (__fits_88 (digits))) && (if (LexLeanBoot.AxiomOutput.allDigits (digits)) then Bool.true else (Bool.true && Bool.true))) else (Bool.true && Bool.true))))))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.allDigits LexLeanBoot.AxiomOutput.fitsWord LexLeanBoot.AxiomOutput.significant LexLeanBoot.AxiomOutput.stripPrefix LexLeanBoot.AxiomOutput.text in +theorem __rel_78 (raw : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 78 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes raw)] (_root_.LexLeanPreservation.Rel (__fits_78 raw) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanBoot.AxiomOutput.isWord raw))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (let digits : ByteArray := (match (LexLeanBoot.AxiomOutput.stripPrefix (raw) ((LexLeanBoot.AxiomOutput.text ("+")))) with | Option.some unsigned => unsigned | Option.none => raw); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.some unsigned => Bool.true | Option.none => Bool.true)) (fun (__a : (Option ByteArray)) => _root_.LexLeanTarget.TargetSyntax.Value.bytes (match __a with | Option.some unsigned => unsigned | Option.none => raw)) (LexLeanBoot.AxiomOutput.stripPrefix (raw) ((LexLeanBoot.AxiomOutput.text ("+")))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("+"))) _root_.LexLeanPreservation.convL_nil)) (__rel_49 (raw) ((LexLeanBoot.AxiomOutput.text ("+"))))) (fun (__a : (Option ByteArray)) _ => match __a with | Option.some unsigned => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl))))) (let fits : Bool := (LexLeanBoot.AxiomOutput.fitsWord ((LexLeanBoot.AxiomOutput.significant (digits)))); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_20 (digits))) _root_.LexLeanPreservation.convL_nil) (__rel_87 ((LexLeanBoot.AxiomOutput.significant (digits))))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && (__fits_88 (digits))) && (if (LexLeanBoot.AxiomOutput.allDigits (digits)) then Bool.true else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then (if (LexLeanBoot.AxiomOutput.allDigits (digits)) then fits else Bool.false) else Bool.false)) (Nat.blt (0 : Nat) (_root_.LexLeanRuntime.length (digits) : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes digits)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (0 : Nat) (_root_.LexLeanRuntime.length (digits) : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else (Bool.true && Bool.true))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then fits else Bool.false)) (LexLeanBoot.AxiomOutput.allDigits (digits)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_88 (digits))) (fun _ => (_root_.LexLeanPreservation.conv_var rfl)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))))) + +def __fits_67 (field : ByteArray) : Bool := + ((((Bool.true && Bool.true) && (__fits_32 (field))) && Bool.true) && (__fits_78 ((LexLeanBoot.AxiomOutput.trimmed (field))))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.isWord LexLeanBoot.AxiomOutput.trimmed in +theorem __rel_67 (field : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 67 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes field)] (_root_.LexLeanPreservation.Rel (__fits_67 field) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanBoot.AxiomOutput.isCount field))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_32 (field))) _root_.LexLeanPreservation.convL_nil) (__rel_78 ((LexLeanBoot.AxiomOutput.trimmed (field))))) + +def __fits_77 (rest : ByteArray) : Bool := + (((Bool.true && (((Bool.true && Bool.true) && (__fits_7 (" "))) && Bool.true)) && (__fits_49 (rest) ((LexLeanBoot.AxiomOutput.text (" "))))) && (match (LexLeanBoot.AxiomOutput.stripPrefix (rest) ((LexLeanBoot.AxiomOutput.text (" ")))) with | Option.some spaced => ((Bool.true && (((Bool.true && Bool.true) && (__fits_7 ("info: "))) && Bool.true)) && (__fits_49 (spaced) ((LexLeanBoot.AxiomOutput.text ("info: "))))) | Option.none => (Bool.true && Bool.true))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.stripPrefix LexLeanBoot.AxiomOutput.text in +theorem __rel_77 (rest : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 77 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes rest)] (_root_.LexLeanPreservation.Rel (__fits_77 rest) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (LexLeanBoot.AxiomOutput.afterLabel rest))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.some spaced => ((Bool.true && (((Bool.true && Bool.true) && (__fits_7 ("info: "))) && Bool.true)) && (__fits_49 (spaced) ((LexLeanBoot.AxiomOutput.text ("info: "))))) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option ByteArray)) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (match __a with | Option.some spaced => (LexLeanBoot.AxiomOutput.stripPrefix (spaced) ((LexLeanBoot.AxiomOutput.text ("info: ")))) | Option.none => (Option.none : (Option ByteArray)))) (LexLeanBoot.AxiomOutput.stripPrefix (rest) ((LexLeanBoot.AxiomOutput.text (" ")))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 (" "))) _root_.LexLeanPreservation.convL_nil)) (__rel_49 (rest) ((LexLeanBoot.AxiomOutput.text (" "))))) (fun (__a : (Option ByteArray)) _ => match __a with | Option.some spaced => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("info: "))) _root_.LexLeanPreservation.convL_nil)) (__rel_49 (spaced) ((LexLeanBoot.AxiomOutput.text ("info: ")))))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))) + +def __fits_66 (column : ByteArray) (rest : ByteArray) : Bool := + (((Bool.true && (((Bool.true && Bool.true) && (__fits_7 ("-"))) && Bool.true)) && (__fits_65 (column) ((LexLeanBoot.AxiomOutput.text ("-"))))) && (match (LexLeanBoot.AxiomOutput.splitOnce (column) ((LexLeanBoot.AxiomOutput.text ("-")))) with | Option.some span => (Bool.true && (let low : ByteArray := (span).1; (Bool.true && (let high : ByteArray := (span).2; (((Bool.true && (((Bool.true && Bool.true) && (__fits_7 (":"))) && Bool.true)) && (__fits_65 (rest) ((LexLeanBoot.AxiomOutput.text (":"))))) && (match (LexLeanBoot.AxiomOutput.splitOnce (rest) ((LexLeanBoot.AxiomOutput.text (":")))) with | Option.some tail => (Bool.true && (let stop_column : ByteArray := (tail).1; (Bool.true && (let after : ByteArray := (tail).2; (((Bool.true && Bool.true) && (__fits_77 (after))) && (let labeled : (Option ByteArray) := (LexLeanBoot.AxiomOutput.afterLabel (after)); (((Bool.true && Bool.true) && (__fits_67 (low))) && (if (LexLeanBoot.AxiomOutput.isCount (low)) then (((Bool.true && Bool.true) && (__fits_67 (high))) && (if (LexLeanBoot.AxiomOutput.isCount (high)) then (((Bool.true && Bool.true) && (__fits_67 (stop_column))) && (if (LexLeanBoot.AxiomOutput.isCount (stop_column)) then Bool.true else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))))))))) | Option.none => (Bool.true && Bool.true))))))) | Option.none => (((Bool.true && Bool.true) && (__fits_77 (rest))) && (let labeled : (Option ByteArray) := (LexLeanBoot.AxiomOutput.afterLabel (rest)); (((Bool.true && Bool.true) && (__fits_67 (column))) && (if (LexLeanBoot.AxiomOutput.isCount (column)) then Bool.true else (Bool.true && Bool.true))))))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.afterLabel LexLeanBoot.AxiomOutput.isCount LexLeanBoot.AxiomOutput.splitOnce LexLeanBoot.AxiomOutput.text in +theorem __rel_66 (column : ByteArray) (rest : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 66 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes column), (_root_.LexLeanTarget.TargetSyntax.Value.bytes rest)] (_root_.LexLeanPreservation.Rel (__fits_66 column rest) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (LexLeanBoot.AxiomOutput.afterLocation column rest))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (fun (__a : (Option (Prod ByteArray ByteArray))) => (match __a with | Option.some span => (Bool.true && (let low : ByteArray := (span).1; (Bool.true && (let high : ByteArray := (span).2; (((Bool.true && (((Bool.true && Bool.true) && (__fits_7 (":"))) && Bool.true)) && (__fits_65 (rest) ((LexLeanBoot.AxiomOutput.text (":"))))) && (match (LexLeanBoot.AxiomOutput.splitOnce (rest) ((LexLeanBoot.AxiomOutput.text (":")))) with | Option.some tail => (Bool.true && (let stop_column : ByteArray := (tail).1; (Bool.true && (let after : ByteArray := (tail).2; (((Bool.true && Bool.true) && (__fits_77 (after))) && (let labeled : (Option ByteArray) := (LexLeanBoot.AxiomOutput.afterLabel (after)); (((Bool.true && Bool.true) && (__fits_67 (low))) && (if (LexLeanBoot.AxiomOutput.isCount (low)) then (((Bool.true && Bool.true) && (__fits_67 (high))) && (if (LexLeanBoot.AxiomOutput.isCount (high)) then (((Bool.true && Bool.true) && (__fits_67 (stop_column))) && (if (LexLeanBoot.AxiomOutput.isCount (stop_column)) then Bool.true else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))))))))) | Option.none => (Bool.true && Bool.true))))))) | Option.none => (((Bool.true && Bool.true) && (__fits_77 (rest))) && (let labeled : (Option ByteArray) := (LexLeanBoot.AxiomOutput.afterLabel (rest)); (((Bool.true && Bool.true) && (__fits_67 (column))) && (if (LexLeanBoot.AxiomOutput.isCount (column)) then Bool.true else (Bool.true && Bool.true))))))) (fun (__a : (Option (Prod ByteArray ByteArray))) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (match __a with | Option.some span => (let low : ByteArray := (span).1; (let high : ByteArray := (span).2; (match (LexLeanBoot.AxiomOutput.splitOnce (rest) ((LexLeanBoot.AxiomOutput.text (":")))) with | Option.some tail => (let stop_column : ByteArray := (tail).1; (let after : ByteArray := (tail).2; (let labeled : (Option ByteArray) := (LexLeanBoot.AxiomOutput.afterLabel (after)); (if (LexLeanBoot.AxiomOutput.isCount (low)) then (if (LexLeanBoot.AxiomOutput.isCount (high)) then (if (LexLeanBoot.AxiomOutput.isCount (stop_column)) then labeled else (Option.none : (Option ByteArray))) else (Option.none : (Option ByteArray))) else (Option.none : (Option ByteArray)))))) | Option.none => (Option.none : (Option ByteArray))))) | Option.none => (let labeled : (Option ByteArray) := (LexLeanBoot.AxiomOutput.afterLabel (rest)); (if (LexLeanBoot.AxiomOutput.isCount (column)) then labeled else (Option.none : (Option ByteArray)))))) (LexLeanBoot.AxiomOutput.splitOnce (column) ((LexLeanBoot.AxiomOutput.text ("-")))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("-"))) _root_.LexLeanPreservation.convL_nil)) (__rel_65 (column) ((LexLeanBoot.AxiomOutput.text ("-"))))) (fun (__a : (Option (Prod ByteArray ByteArray))) _ => match __a with | Option.some span => (_root_.LexLeanPreservation.convA_hit rfl rfl (let low : ByteArray := (span).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (let high : ByteArray := (span).2; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (fun (__a : (Option (Prod ByteArray ByteArray))) => (match __a with | Option.some tail => (Bool.true && (let stop_column : ByteArray := (tail).1; (Bool.true && (let after : ByteArray := (tail).2; (((Bool.true && Bool.true) && (__fits_77 (after))) && (let labeled : (Option ByteArray) := (LexLeanBoot.AxiomOutput.afterLabel (after)); (((Bool.true && Bool.true) && (__fits_67 (low))) && (if (LexLeanBoot.AxiomOutput.isCount (low)) then (((Bool.true && Bool.true) && (__fits_67 (high))) && (if (LexLeanBoot.AxiomOutput.isCount (high)) then (((Bool.true && Bool.true) && (__fits_67 (stop_column))) && (if (LexLeanBoot.AxiomOutput.isCount (stop_column)) then Bool.true else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))))))))) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option (Prod ByteArray ByteArray))) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (match __a with | Option.some tail => (let stop_column : ByteArray := (tail).1; (let after : ByteArray := (tail).2; (let labeled : (Option ByteArray) := (LexLeanBoot.AxiomOutput.afterLabel (after)); (if (LexLeanBoot.AxiomOutput.isCount (low)) then (if (LexLeanBoot.AxiomOutput.isCount (high)) then (if (LexLeanBoot.AxiomOutput.isCount (stop_column)) then labeled else (Option.none : (Option ByteArray))) else (Option.none : (Option ByteArray))) else (Option.none : (Option ByteArray)))))) | Option.none => (Option.none : (Option ByteArray)))) (LexLeanBoot.AxiomOutput.splitOnce (rest) ((LexLeanBoot.AxiomOutput.text (":")))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 (":"))) _root_.LexLeanPreservation.convL_nil)) (__rel_65 (rest) ((LexLeanBoot.AxiomOutput.text (":"))))) (fun (__a : (Option (Prod ByteArray ByteArray))) _ => match __a with | Option.some tail => (_root_.LexLeanPreservation.convA_hit rfl rfl (let stop_column : ByteArray := (tail).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (let after : ByteArray := (tail).2; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (let labeled : (Option ByteArray) := (LexLeanBoot.AxiomOutput.afterLabel (after)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_77 (after))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && (__fits_67 (high))) && (if (LexLeanBoot.AxiomOutput.isCount (high)) then (((Bool.true && Bool.true) && (__fits_67 (stop_column))) && (if (LexLeanBoot.AxiomOutput.isCount (stop_column)) then Bool.true else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (if __b then (if (LexLeanBoot.AxiomOutput.isCount (high)) then (if (LexLeanBoot.AxiomOutput.isCount (stop_column)) then labeled else (Option.none : (Option ByteArray))) else (Option.none : (Option ByteArray))) else (Option.none : (Option ByteArray)))) (LexLeanBoot.AxiomOutput.isCount (low)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_67 (low))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && (__fits_67 (stop_column))) && (if (LexLeanBoot.AxiomOutput.isCount (stop_column)) then Bool.true else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (if __b then (if (LexLeanBoot.AxiomOutput.isCount (stop_column)) then labeled else (Option.none : (Option ByteArray))) else (Option.none : (Option ByteArray)))) (LexLeanBoot.AxiomOutput.isCount (high)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_67 (high))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (if __b then labeled else (Option.none : (Option ByteArray)))) (LexLeanBoot.AxiomOutput.isCount (stop_column)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_67 (stop_column))) (fun _ => (_root_.LexLeanPreservation.conv_var rfl)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)))))))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (let labeled : (Option ByteArray) := (LexLeanBoot.AxiomOutput.afterLabel (rest)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_77 (rest))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (if __b then labeled else (Option.none : (Option ByteArray)))) (LexLeanBoot.AxiomOutput.isCount (column)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_67 (column))) (fun _ => (_root_.LexLeanPreservation.conv_var rfl)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)))))))) + +def __fits_50 (line : ByteArray) : Bool := + (((Bool.true && (((Bool.true && Bool.true) && (__fits_7 (":"))) && Bool.true)) && (__fits_65 (line) ((LexLeanBoot.AxiomOutput.text (":"))))) && (match (LexLeanBoot.AxiomOutput.splitOnce (line) ((LexLeanBoot.AxiomOutput.text (":")))) with | Option.some head => (((Bool.true && (((Bool.true && Bool.true) && (__fits_7 (":"))) && Bool.true)) && (__fits_65 ((head).2) ((LexLeanBoot.AxiomOutput.text (":"))))) && (match (LexLeanBoot.AxiomOutput.splitOnce ((head).2) ((LexLeanBoot.AxiomOutput.text (":")))) with | Option.some middle => (((Bool.true && (((Bool.true && Bool.true) && (__fits_7 (":"))) && Bool.true)) && (__fits_65 ((middle).2) ((LexLeanBoot.AxiomOutput.text (":"))))) && (match (LexLeanBoot.AxiomOutput.splitOnce ((middle).2) ((LexLeanBoot.AxiomOutput.text (":")))) with | Option.some tail => (Bool.true && (let line_number : ByteArray := (middle).1; (Bool.true && (let column : ByteArray := (tail).1; (Bool.true && (let rest : ByteArray := (tail).2; (((Bool.true && (Bool.true && Bool.true)) && (__fits_66 (column) (rest))) && (let located_rest : (Option ByteArray) := (LexLeanBoot.AxiomOutput.afterLocation (column) (rest)); (((Bool.true && Bool.true) && (__fits_67 (line_number))) && (if (LexLeanBoot.AxiomOutput.isCount (line_number)) then Bool.true else (Bool.true && Bool.true))))))))))) | Option.none => (Bool.true && Bool.true))) | Option.none => (Bool.true && Bool.true))) | Option.none => (Bool.true && Bool.true))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.afterLocation LexLeanBoot.AxiomOutput.isCount LexLeanBoot.AxiomOutput.splitOnce LexLeanBoot.AxiomOutput.text in +theorem __rel_50 (line : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 50 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes line)] (_root_.LexLeanPreservation.Rel (__fits_50 line) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (LexLeanBoot.AxiomOutput.located line))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (fun (__a : (Option (Prod ByteArray ByteArray))) => (match __a with | Option.some head => (((Bool.true && (((Bool.true && Bool.true) && (__fits_7 (":"))) && Bool.true)) && (__fits_65 ((head).2) ((LexLeanBoot.AxiomOutput.text (":"))))) && (match (LexLeanBoot.AxiomOutput.splitOnce ((head).2) ((LexLeanBoot.AxiomOutput.text (":")))) with | Option.some middle => (((Bool.true && (((Bool.true && Bool.true) && (__fits_7 (":"))) && Bool.true)) && (__fits_65 ((middle).2) ((LexLeanBoot.AxiomOutput.text (":"))))) && (match (LexLeanBoot.AxiomOutput.splitOnce ((middle).2) ((LexLeanBoot.AxiomOutput.text (":")))) with | Option.some tail => (Bool.true && (let line_number : ByteArray := (middle).1; (Bool.true && (let column : ByteArray := (tail).1; (Bool.true && (let rest : ByteArray := (tail).2; (((Bool.true && (Bool.true && Bool.true)) && (__fits_66 (column) (rest))) && (let located_rest : (Option ByteArray) := (LexLeanBoot.AxiomOutput.afterLocation (column) (rest)); (((Bool.true && Bool.true) && (__fits_67 (line_number))) && (if (LexLeanBoot.AxiomOutput.isCount (line_number)) then Bool.true else (Bool.true && Bool.true))))))))))) | Option.none => (Bool.true && Bool.true))) | Option.none => (Bool.true && Bool.true))) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option (Prod ByteArray ByteArray))) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (match __a with | Option.some head => (match (LexLeanBoot.AxiomOutput.splitOnce ((head).2) ((LexLeanBoot.AxiomOutput.text (":")))) with | Option.some middle => (match (LexLeanBoot.AxiomOutput.splitOnce ((middle).2) ((LexLeanBoot.AxiomOutput.text (":")))) with | Option.some tail => (let line_number : ByteArray := (middle).1; (let column : ByteArray := (tail).1; (let rest : ByteArray := (tail).2; (let located_rest : (Option ByteArray) := (LexLeanBoot.AxiomOutput.afterLocation (column) (rest)); (if (LexLeanBoot.AxiomOutput.isCount (line_number)) then located_rest else (Option.none : (Option ByteArray))))))) | Option.none => (Option.none : (Option ByteArray))) | Option.none => (Option.none : (Option ByteArray))) | Option.none => (Option.none : (Option ByteArray)))) (LexLeanBoot.AxiomOutput.splitOnce (line) ((LexLeanBoot.AxiomOutput.text (":")))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 (":"))) _root_.LexLeanPreservation.convL_nil)) (__rel_65 (line) ((LexLeanBoot.AxiomOutput.text (":"))))) (fun (__a : (Option (Prod ByteArray ByteArray))) _ => match __a with | Option.some head => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (fun (__a : (Option (Prod ByteArray ByteArray))) => (match __a with | Option.some middle => (((Bool.true && (((Bool.true && Bool.true) && (__fits_7 (":"))) && Bool.true)) && (__fits_65 ((middle).2) ((LexLeanBoot.AxiomOutput.text (":"))))) && (match (LexLeanBoot.AxiomOutput.splitOnce ((middle).2) ((LexLeanBoot.AxiomOutput.text (":")))) with | Option.some tail => (Bool.true && (let line_number : ByteArray := (middle).1; (Bool.true && (let column : ByteArray := (tail).1; (Bool.true && (let rest : ByteArray := (tail).2; (((Bool.true && (Bool.true && Bool.true)) && (__fits_66 (column) (rest))) && (let located_rest : (Option ByteArray) := (LexLeanBoot.AxiomOutput.afterLocation (column) (rest)); (((Bool.true && Bool.true) && (__fits_67 (line_number))) && (if (LexLeanBoot.AxiomOutput.isCount (line_number)) then Bool.true else (Bool.true && Bool.true))))))))))) | Option.none => (Bool.true && Bool.true))) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option (Prod ByteArray ByteArray))) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (match __a with | Option.some middle => (match (LexLeanBoot.AxiomOutput.splitOnce ((middle).2) ((LexLeanBoot.AxiomOutput.text (":")))) with | Option.some tail => (let line_number : ByteArray := (middle).1; (let column : ByteArray := (tail).1; (let rest : ByteArray := (tail).2; (let located_rest : (Option ByteArray) := (LexLeanBoot.AxiomOutput.afterLocation (column) (rest)); (if (LexLeanBoot.AxiomOutput.isCount (line_number)) then located_rest else (Option.none : (Option ByteArray))))))) | Option.none => (Option.none : (Option ByteArray))) | Option.none => (Option.none : (Option ByteArray)))) (LexLeanBoot.AxiomOutput.splitOnce ((head).2) ((LexLeanBoot.AxiomOutput.text (":")))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 (":"))) _root_.LexLeanPreservation.convL_nil)) (__rel_65 ((head).2) ((LexLeanBoot.AxiomOutput.text (":"))))) (fun (__a : (Option (Prod ByteArray ByteArray))) _ => match __a with | Option.some middle => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (fun (__a : (Option (Prod ByteArray ByteArray))) => (match __a with | Option.some tail => (Bool.true && (let line_number : ByteArray := (middle).1; (Bool.true && (let column : ByteArray := (tail).1; (Bool.true && (let rest : ByteArray := (tail).2; (((Bool.true && (Bool.true && Bool.true)) && (__fits_66 (column) (rest))) && (let located_rest : (Option ByteArray) := (LexLeanBoot.AxiomOutput.afterLocation (column) (rest)); (((Bool.true && Bool.true) && (__fits_67 (line_number))) && (if (LexLeanBoot.AxiomOutput.isCount (line_number)) then Bool.true else (Bool.true && Bool.true))))))))))) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option (Prod ByteArray ByteArray))) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (match __a with | Option.some tail => (let line_number : ByteArray := (middle).1; (let column : ByteArray := (tail).1; (let rest : ByteArray := (tail).2; (let located_rest : (Option ByteArray) := (LexLeanBoot.AxiomOutput.afterLocation (column) (rest)); (if (LexLeanBoot.AxiomOutput.isCount (line_number)) then located_rest else (Option.none : (Option ByteArray))))))) | Option.none => (Option.none : (Option ByteArray)))) (LexLeanBoot.AxiomOutput.splitOnce ((middle).2) ((LexLeanBoot.AxiomOutput.text (":")))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 (":"))) _root_.LexLeanPreservation.convL_nil)) (__rel_65 ((middle).2) ((LexLeanBoot.AxiomOutput.text (":"))))) (fun (__a : (Option (Prod ByteArray ByteArray))) _ => match __a with | Option.some tail => (_root_.LexLeanPreservation.convA_hit rfl rfl (let line_number : ByteArray := (middle).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (let column : ByteArray := (tail).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (let rest : ByteArray := (tail).2; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (let located_rest : (Option ByteArray) := (LexLeanBoot.AxiomOutput.afterLocation (column) (rest)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_66 (column) (rest))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (if __b then located_rest else (Option.none : (Option ByteArray)))) (LexLeanBoot.AxiomOutput.isCount (line_number)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_67 (line_number))) (fun _ => (_root_.LexLeanPreservation.conv_var rfl)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)))))))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)))))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)))))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))) + +def __fits_33 (line : ByteArray) : Bool := + (((Bool.true && (((Bool.true && Bool.true) && (__fits_7 ("'"))) && Bool.true)) && (__fits_48 (line) ((LexLeanBoot.AxiomOutput.text ("'"))))) && (if (LexLeanBoot.Text.startsWith (line) ((LexLeanBoot.AxiomOutput.text ("'")))) then ((Bool.true && Bool.true) && Bool.true) else (((Bool.true && (((Bool.true && Bool.true) && (__fits_7 ("info: "))) && Bool.true)) && (__fits_49 (line) ((LexLeanBoot.AxiomOutput.text ("info: "))))) && (match (LexLeanBoot.AxiomOutput.stripPrefix (line) ((LexLeanBoot.AxiomOutput.text ("info: ")))) with | Option.some payload => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((Bool.true && Bool.true) && (__fits_50 (line))))))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.located LexLeanBoot.AxiomOutput.stripPrefix LexLeanBoot.AxiomOutput.text LexLeanBoot.Text.startsWith in +theorem __rel_33 (line : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 33 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes line)] (_root_.LexLeanPreservation.Rel (__fits_33 line) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (LexLeanBoot.AxiomOutput.envelope line))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && Bool.true) && Bool.true) else (((Bool.true && (((Bool.true && Bool.true) && (__fits_7 ("info: "))) && Bool.true)) && (__fits_49 (line) ((LexLeanBoot.AxiomOutput.text ("info: "))))) && (match (LexLeanBoot.AxiomOutput.stripPrefix (line) ((LexLeanBoot.AxiomOutput.text ("info: ")))) with | Option.some payload => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((Bool.true && Bool.true) && (__fits_50 (line))))))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (if __b then (Option.some (line) : (Option ByteArray)) else (match (LexLeanBoot.AxiomOutput.stripPrefix (line) ((LexLeanBoot.AxiomOutput.text ("info: ")))) with | Option.some payload => (Option.some (payload) : (Option ByteArray)) | Option.none => (LexLeanBoot.AxiomOutput.located (line))))) (LexLeanBoot.Text.startsWith (line) ((LexLeanBoot.AxiomOutput.text ("'")))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("'"))) _root_.LexLeanPreservation.convL_nil)) (__rel_48 (line) ((LexLeanBoot.AxiomOutput.text ("'"))))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.some payload => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((Bool.true && Bool.true) && (__fits_50 (line))))) (fun (__a : (Option ByteArray)) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (match __a with | Option.some payload => (Option.some (payload) : (Option ByteArray)) | Option.none => (LexLeanBoot.AxiomOutput.located (line)))) (LexLeanBoot.AxiomOutput.stripPrefix (line) ((LexLeanBoot.AxiomOutput.text ("info: ")))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("info: "))) _root_.LexLeanPreservation.convL_nil)) (__rel_49 (line) ((LexLeanBoot.AxiomOutput.text ("info: "))))) (fun (__a : (Option ByteArray)) _ => match __a with | Option.some payload => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_50 (line))))))))) + +def __fits_34 (names : (List ByteArray)) : Bool := + (Bool.true && (match names with | List.nil => (Bool.true && Bool.true) | List.cons head tail => ((Bool.true && Bool.true) && Bool.true))) + +theorem __rel_34 (names : (List ByteArray)) : _root_.LexLeanPreservation.FunRel __prog 34 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) names)] (_root_.LexLeanPreservation.Rel (__fits_34 names) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (LexLeanBoot.AxiomOutput.headOf names))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (List ByteArray)) => (match __a with | List.nil => (Bool.true && Bool.true) | List.cons head tail => ((Bool.true && Bool.true) && Bool.true))) (fun (__a : (List ByteArray)) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (match __a with | List.nil => (Option.none : (Option ByteArray)) | List.cons head tail => (Option.some (head) : (Option ByteArray)))) names (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (List ByteArray)) _ => match __a with | List.nil => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) | List.cons head tail => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some))))) + +def __fits_14 (state : (LexLeanBoot.AxiomOutput.Scan)) (line : ByteArray) : Bool := + (Bool.true && (match state with | LexLeanBoot.AxiomOutput.Scan.stopped rejection => Bool.true | LexLeanBoot.AxiomOutput.Scan.inside records remaining payload about => (((Bool.true && Bool.true) && (__fits_29 (line))) && (match (LexLeanBoot.AxiomOutput.continuation (line)) with | Option.some more => ((Bool.true && (Bool.true && (((((Bool.true && (((Bool.true && Bool.true) && (__fits_7 (" "))) && Bool.true)) && (__fits_6 (payload) ((LexLeanBoot.AxiomOutput.text (" "))))) && (Bool.true && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.cat (payload) ((LexLeanBoot.AxiomOutput.text (" "))))) (more))) && (Bool.true && Bool.true)))) && (__fits_30 (records) (remaining) ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat (payload) ((LexLeanBoot.AxiomOutput.text (" "))))) (more))) (about))) | Option.none => ((((((Bool.true && Bool.true) && (__fits_7 ("unterminated axiom payload: "))) && (Bool.true && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.text ("unterminated axiom payload: "))) (payload))) && (Bool.true && Bool.true)) && (__fits_31 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("unterminated axiom payload: "))) (payload))) (about))))) | LexLeanBoot.AxiomOutput.Scan.between records remaining => (((Bool.true && (((((Bool.true && Bool.true) && (__fits_32 (line))) && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length ((LexLeanBoot.AxiomOutput.trimmed (line))) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true) && (if (Nat.beq (0 : Nat) (_root_.LexLeanRuntime.length ((LexLeanBoot.AxiomOutput.trimmed (line))) : Nat)) then Bool.true else (((((Bool.true && Bool.true) && (__fits_32 (line))) && Bool.true) && (__fits_33 ((LexLeanBoot.AxiomOutput.trimmed (line))))) && (match (LexLeanBoot.AxiomOutput.envelope ((LexLeanBoot.AxiomOutput.trimmed (line)))) with | Option.some payload => ((Bool.true && (Bool.true && (Bool.true && (((Bool.true && Bool.true) && (__fits_34 (remaining))) && Bool.true)))) && (__fits_30 (records) (remaining) (payload) ((LexLeanBoot.AxiomOutput.headOf (remaining))))) | Option.none => ((((((Bool.true && Bool.true) && (__fits_7 ("unrecognized audit line: "))) && (((Bool.true && Bool.true) && (__fits_32 (line))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.text ("unrecognized audit line: "))) ((LexLeanBoot.AxiomOutput.trimmed (line))))) && (((Bool.true && Bool.true) && (__fits_34 (remaining))) && Bool.true)) && (__fits_31 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("unrecognized audit line: "))) ((LexLeanBoot.AxiomOutput.trimmed (line))))) ((LexLeanBoot.AxiomOutput.headOf (remaining))))))))))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.cat LexLeanBoot.AxiomOutput.continuation LexLeanBoot.AxiomOutput.envelope LexLeanBoot.AxiomOutput.extend LexLeanBoot.AxiomOutput.headOf LexLeanBoot.AxiomOutput.stop LexLeanBoot.AxiomOutput.text LexLeanBoot.AxiomOutput.trimmed in +theorem __rel_14 (state : (LexLeanBoot.AxiomOutput.Scan)) (line : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 14 [(__enc_1 state), (_root_.LexLeanTarget.TargetSyntax.Value.bytes line)] (_root_.LexLeanPreservation.Rel (__fits_14 state line) (__enc_1 (LexLeanBoot.AxiomOutput.scanStep state line))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV __enc_1 (fun (__a : (LexLeanBoot.AxiomOutput.Scan)) => (match __a with | LexLeanBoot.AxiomOutput.Scan.stopped rejection => Bool.true | LexLeanBoot.AxiomOutput.Scan.inside records remaining payload about => (((Bool.true && Bool.true) && (__fits_29 (line))) && (match (LexLeanBoot.AxiomOutput.continuation (line)) with | Option.some more => ((Bool.true && (Bool.true && (((((Bool.true && (((Bool.true && Bool.true) && (__fits_7 (" "))) && Bool.true)) && (__fits_6 (payload) ((LexLeanBoot.AxiomOutput.text (" "))))) && (Bool.true && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.cat (payload) ((LexLeanBoot.AxiomOutput.text (" "))))) (more))) && (Bool.true && Bool.true)))) && (__fits_30 (records) (remaining) ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat (payload) ((LexLeanBoot.AxiomOutput.text (" "))))) (more))) (about))) | Option.none => ((((((Bool.true && Bool.true) && (__fits_7 ("unterminated axiom payload: "))) && (Bool.true && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.text ("unterminated axiom payload: "))) (payload))) && (Bool.true && Bool.true)) && (__fits_31 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("unterminated axiom payload: "))) (payload))) (about))))) | LexLeanBoot.AxiomOutput.Scan.between records remaining => (((Bool.true && (((((Bool.true && Bool.true) && (__fits_32 (line))) && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length ((LexLeanBoot.AxiomOutput.trimmed (line))) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true) && (if (Nat.beq (0 : Nat) (_root_.LexLeanRuntime.length ((LexLeanBoot.AxiomOutput.trimmed (line))) : Nat)) then Bool.true else (((((Bool.true && Bool.true) && (__fits_32 (line))) && Bool.true) && (__fits_33 ((LexLeanBoot.AxiomOutput.trimmed (line))))) && (match (LexLeanBoot.AxiomOutput.envelope ((LexLeanBoot.AxiomOutput.trimmed (line)))) with | Option.some payload => ((Bool.true && (Bool.true && (Bool.true && (((Bool.true && Bool.true) && (__fits_34 (remaining))) && Bool.true)))) && (__fits_30 (records) (remaining) (payload) ((LexLeanBoot.AxiomOutput.headOf (remaining))))) | Option.none => ((((((Bool.true && Bool.true) && (__fits_7 ("unrecognized audit line: "))) && (((Bool.true && Bool.true) && (__fits_32 (line))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.text ("unrecognized audit line: "))) ((LexLeanBoot.AxiomOutput.trimmed (line))))) && (((Bool.true && Bool.true) && (__fits_34 (remaining))) && Bool.true)) && (__fits_31 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("unrecognized audit line: "))) ((LexLeanBoot.AxiomOutput.trimmed (line))))) ((LexLeanBoot.AxiomOutput.headOf (remaining))))))))))) (fun (__a : (LexLeanBoot.AxiomOutput.Scan)) => __enc_1 (match __a with | LexLeanBoot.AxiomOutput.Scan.stopped rejection => state | LexLeanBoot.AxiomOutput.Scan.inside records remaining payload about => (match (LexLeanBoot.AxiomOutput.continuation (line)) with | Option.some more => (LexLeanBoot.AxiomOutput.extend (records) (remaining) ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat (payload) ((LexLeanBoot.AxiomOutput.text (" "))))) (more))) (about)) | Option.none => (LexLeanBoot.AxiomOutput.stop ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("unterminated axiom payload: "))) (payload))) (about))) | LexLeanBoot.AxiomOutput.Scan.between records remaining => (if (Nat.beq (0 : Nat) (_root_.LexLeanRuntime.length ((LexLeanBoot.AxiomOutput.trimmed (line))) : Nat)) then state else (match (LexLeanBoot.AxiomOutput.envelope ((LexLeanBoot.AxiomOutput.trimmed (line)))) with | Option.some payload => (LexLeanBoot.AxiomOutput.extend (records) (remaining) (payload) ((LexLeanBoot.AxiomOutput.headOf (remaining)))) | Option.none => (LexLeanBoot.AxiomOutput.stop ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("unrecognized audit line: "))) ((LexLeanBoot.AxiomOutput.trimmed (line))))) ((LexLeanBoot.AxiomOutput.headOf (remaining)))))))) state (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (LexLeanBoot.AxiomOutput.Scan)) _ => match __a with | LexLeanBoot.AxiomOutput.Scan.stopped rejection => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | LexLeanBoot.AxiomOutput.Scan.inside records remaining payload about => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.some more => ((Bool.true && (Bool.true && (((((Bool.true && (((Bool.true && Bool.true) && (__fits_7 (" "))) && Bool.true)) && (__fits_6 (payload) ((LexLeanBoot.AxiomOutput.text (" "))))) && (Bool.true && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.cat (payload) ((LexLeanBoot.AxiomOutput.text (" "))))) (more))) && (Bool.true && Bool.true)))) && (__fits_30 (records) (remaining) ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat (payload) ((LexLeanBoot.AxiomOutput.text (" "))))) (more))) (about))) | Option.none => ((((((Bool.true && Bool.true) && (__fits_7 ("unterminated axiom payload: "))) && (Bool.true && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.text ("unterminated axiom payload: "))) (payload))) && (Bool.true && Bool.true)) && (__fits_31 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("unterminated axiom payload: "))) (payload))) (about))))) (fun (__a : (Option ByteArray)) => __enc_1 (match __a with | Option.some more => (LexLeanBoot.AxiomOutput.extend (records) (remaining) ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat (payload) ((LexLeanBoot.AxiomOutput.text (" "))))) (more))) (about)) | Option.none => (LexLeanBoot.AxiomOutput.stop ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("unterminated axiom payload: "))) (payload))) (about)))) (LexLeanBoot.AxiomOutput.continuation (line)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_29 (line))) (fun (__a : (Option ByteArray)) _ => match __a with | Option.some more => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 (" "))) _root_.LexLeanPreservation.convL_nil)) (__rel_6 (payload) ((LexLeanBoot.AxiomOutput.text (" "))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_6 ((LexLeanBoot.AxiomOutput.cat (payload) ((LexLeanBoot.AxiomOutput.text (" "))))) (more))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)))) (__rel_30 (records) (remaining) ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat (payload) ((LexLeanBoot.AxiomOutput.text (" "))))) (more))) (about)))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("unterminated axiom payload: "))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_6 ((LexLeanBoot.AxiomOutput.text ("unterminated axiom payload: "))) (payload))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_31 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("unterminated axiom payload: "))) (payload))) (about))))))))) | LexLeanBoot.AxiomOutput.Scan.between records remaining => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else (((((Bool.true && Bool.true) && (__fits_32 (line))) && Bool.true) && (__fits_33 ((LexLeanBoot.AxiomOutput.trimmed (line))))) && (match (LexLeanBoot.AxiomOutput.envelope ((LexLeanBoot.AxiomOutput.trimmed (line)))) with | Option.some payload => ((Bool.true && (Bool.true && (Bool.true && (((Bool.true && Bool.true) && (__fits_34 (remaining))) && Bool.true)))) && (__fits_30 (records) (remaining) (payload) ((LexLeanBoot.AxiomOutput.headOf (remaining))))) | Option.none => ((((((Bool.true && Bool.true) && (__fits_7 ("unrecognized audit line: "))) && (((Bool.true && Bool.true) && (__fits_32 (line))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.text ("unrecognized audit line: "))) ((LexLeanBoot.AxiomOutput.trimmed (line))))) && (((Bool.true && Bool.true) && (__fits_34 (remaining))) && Bool.true)) && (__fits_31 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("unrecognized audit line: "))) ((LexLeanBoot.AxiomOutput.trimmed (line))))) ((LexLeanBoot.AxiomOutput.headOf (remaining))))))))) (fun (__b : Bool) => __enc_1 (if __b then state else (match (LexLeanBoot.AxiomOutput.envelope ((LexLeanBoot.AxiomOutput.trimmed (line)))) with | Option.some payload => (LexLeanBoot.AxiomOutput.extend (records) (remaining) (payload) ((LexLeanBoot.AxiomOutput.headOf (remaining)))) | Option.none => (LexLeanBoot.AxiomOutput.stop ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("unrecognized audit line: "))) ((LexLeanBoot.AxiomOutput.trimmed (line))))) ((LexLeanBoot.AxiomOutput.headOf (remaining))))))) (Nat.beq (0 : Nat) (_root_.LexLeanRuntime.length ((LexLeanBoot.AxiomOutput.trimmed (line))) : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_32 (line))) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes (LexLeanBoot.AxiomOutput.trimmed (line)))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (0 : Nat) (_root_.LexLeanRuntime.length ((LexLeanBoot.AxiomOutput.trimmed (line))) : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_var rfl)) (fun _ => (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.some payload => ((Bool.true && (Bool.true && (Bool.true && (((Bool.true && Bool.true) && (__fits_34 (remaining))) && Bool.true)))) && (__fits_30 (records) (remaining) (payload) ((LexLeanBoot.AxiomOutput.headOf (remaining))))) | Option.none => ((((((Bool.true && Bool.true) && (__fits_7 ("unrecognized audit line: "))) && (((Bool.true && Bool.true) && (__fits_32 (line))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.text ("unrecognized audit line: "))) ((LexLeanBoot.AxiomOutput.trimmed (line))))) && (((Bool.true && Bool.true) && (__fits_34 (remaining))) && Bool.true)) && (__fits_31 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("unrecognized audit line: "))) ((LexLeanBoot.AxiomOutput.trimmed (line))))) ((LexLeanBoot.AxiomOutput.headOf (remaining))))))) (fun (__a : (Option ByteArray)) => __enc_1 (match __a with | Option.some payload => (LexLeanBoot.AxiomOutput.extend (records) (remaining) (payload) ((LexLeanBoot.AxiomOutput.headOf (remaining)))) | Option.none => (LexLeanBoot.AxiomOutput.stop ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("unrecognized audit line: "))) ((LexLeanBoot.AxiomOutput.trimmed (line))))) ((LexLeanBoot.AxiomOutput.headOf (remaining)))))) (LexLeanBoot.AxiomOutput.envelope ((LexLeanBoot.AxiomOutput.trimmed (line)))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_32 (line))) _root_.LexLeanPreservation.convL_nil) (__rel_33 ((LexLeanBoot.AxiomOutput.trimmed (line))))) (fun (__a : (Option ByteArray)) _ => match __a with | Option.some payload => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_34 (remaining))) _root_.LexLeanPreservation.convL_nil)))) (__rel_30 (records) (remaining) (payload) ((LexLeanBoot.AxiomOutput.headOf (remaining)))))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("unrecognized audit line: "))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_32 (line))) _root_.LexLeanPreservation.convL_nil)) (__rel_6 ((LexLeanBoot.AxiomOutput.text ("unrecognized audit line: "))) ((LexLeanBoot.AxiomOutput.trimmed (line))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_34 (remaining))) _root_.LexLeanPreservation.convL_nil)) (__rel_31 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("unrecognized audit line: "))) ((LexLeanBoot.AxiomOutput.trimmed (line))))) ((LexLeanBoot.AxiomOutput.headOf (remaining)))))))))))))))) + +def __fits_3 (state : (LexLeanBoot.AxiomOutput.Scan)) (line : ByteArray) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && (__fits_14 (state) (line))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.scanStep in +theorem __rel_3 (state : (LexLeanBoot.AxiomOutput.Scan)) (line : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 3 [(__enc_1 state), (_root_.LexLeanTarget.TargetSyntax.Value.bytes line)] (_root_.LexLeanPreservation.Rel (__fits_3 state line) (__enc_1 ((LexLeanBoot.AxiomOutput.scanStep (state) (line))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_14 (state) (line))) + +def __fits_52 (line : ByteArray) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && (__fits_68 (line) ((ByteArray.mk #[13])))) && (if (LexLeanBoot.Text.endsWith (line) ((ByteArray.mk #[13]))) then ((Bool.true && (Bool.true && (((((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (line) : Nat) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_18 (line) ((0 : Nat)) ((_root_.LexLeanRuntime.subtract ((_root_.LexLeanRuntime.length (line) : Nat)) ((1 : Nat)) : Nat)))) else Bool.true)) + +attribute [local irreducible] LexLeanBoot.Text.endsWith LexLeanBoot.Text.sliceOr in +theorem __rel_52 (line : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 52 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes line)] (_root_.LexLeanPreservation.Rel (__fits_52 line) (_root_.LexLeanTarget.TargetSyntax.Value.bytes (LexLeanBoot.Text.chomp line))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && (Bool.true && (((((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (line) : Nat) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_18 (line) ((0 : Nat)) ((_root_.LexLeanRuntime.subtract ((_root_.LexLeanRuntime.length (line) : Nat)) ((1 : Nat)) : Nat)))) else Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bytes (if __b then (LexLeanBoot.Text.sliceOr (line) ((0 : Nat)) ((_root_.LexLeanRuntime.subtract ((_root_.LexLeanRuntime.length (line) : Nat)) ((1 : Nat)) : Nat))) else line)) (LexLeanBoot.Text.endsWith (line) ((ByteArray.mk #[13]))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_68 (line) ((ByteArray.mk #[13])))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes line)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub (_root_.LexLeanRuntime.length (line) : Nat) (1 : Nat))) _root_.LexLeanPreservation.convL_nil))) (__rel_18 (line) ((0 : Nat)) ((_root_.LexLeanRuntime.subtract ((_root_.LexLeanRuntime.length (line) : Nat)) ((1 : Nat)) : Nat))))) (fun _ => (_root_.LexLeanPreservation.conv_var rfl))) + +def __fits_35 (subject : ByteArray) (state : (Prod Nat (Prod Nat (List ByteArray)))) : Bool := + (Bool.true && (let position : Nat := (state).1; (Bool.true && (let start : Nat := ((state).2).1; (Bool.true && (let pieces : (List ByteArray) := ((state).2).2; (((Bool.true && (Bool.true && Bool.true)) && (__fits_51 (subject) (position))) && (match (LexLeanBoot.Text.byteAt (subject) (position)) with | Option.some byte => (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal (byte) ((10 : UInt8)) : Bool) then ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((((Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_18 (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))) && Bool.true) && (__fits_52 ((LexLeanBoot.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))))) && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) | Option.none => (Bool.true && Bool.true))))))))) + +attribute [local irreducible] LexLeanBoot.Text.byteAt LexLeanBoot.Text.chomp LexLeanBoot.Text.sliceOr in +theorem __rel_35 (subject : ByteArray) (state : (Prod Nat (Prod Nat (List ByteArray)))) : _root_.LexLeanPreservation.FunRel __prog 35 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) state)] (_root_.LexLeanPreservation.Rel (__fits_35 subject state) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (LexLeanBoot.Text.lineStep subject state))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (let position : Nat := (state).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (let start : Nat := ((state).2).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl))) (let pieces : (List ByteArray) := ((state).2).2; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl))) (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u8) (fun (__a : (Option UInt8)) => (match __a with | Option.some byte => (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal (byte) ((10 : UInt8)) : Bool) then ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((((Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_18 (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))) && Bool.true) && (__fits_52 ((LexLeanBoot.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))))) && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option UInt8)) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (match __a with | Option.some byte => (if (_root_.LexLeanRuntime.equal (byte) ((10 : UInt8)) : Bool) then (Option.some (((position + (1 : Nat)), ((position + (1 : Nat)), ((LexLeanBoot.Text.chomp ((LexLeanBoot.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat))))) :: pieces)))) : (Option (Prod Nat (Prod Nat (List ByteArray))))) else (Option.some (((position + (1 : Nat)), (start, pieces))) : (Option (Prod Nat (Prod Nat (List ByteArray)))))) | Option.none => (Option.none : (Option (Prod Nat (Prod Nat (List ByteArray))))))) (LexLeanBoot.Text.byteAt (subject) (position)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_51 (subject) (position))) (fun (__a : (Option UInt8)) _ => match __a with | Option.some byte => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((((Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_18 (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))) && Bool.true) && (__fits_52 ((LexLeanBoot.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))))) && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (if __b then (Option.some (((position + (1 : Nat)), ((position + (1 : Nat)), ((LexLeanBoot.Text.chomp ((LexLeanBoot.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat))))) :: pieces)))) : (Option (Prod Nat (Prod Nat (List ByteArray))))) else (Option.some (((position + (1 : Nat)), (start, pieces))) : (Option (Prod Nat (Prod Nat (List ByteArray))))))) (_root_.LexLeanRuntime.equal (byte) ((10 : UInt8)) : Bool) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_u8 byte (10 : UInt8))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub position start)) _root_.LexLeanPreservation.convL_nil))) (__rel_18 (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))) _root_.LexLeanPreservation.convL_nil) (__rel_52 ((LexLeanBoot.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)))))))) + +def __fits_16 (subject : ByteArray) (state : (Prod Nat (Prod Nat (List ByteArray)))) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && (__fits_35 (subject) (state))) + +attribute [local irreducible] LexLeanBoot.Text.lineStep in +theorem __rel_16 (subject : ByteArray) (state : (Prod Nat (Prod Nat (List ByteArray)))) : _root_.LexLeanPreservation.FunRel __prog 16 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) state)] (_root_.LexLeanPreservation.Rel (__fits_16 subject state) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) ((LexLeanBoot.Text.lineStep (subject) (state))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_35 (subject) (state))) + +def __fits_4 (subject : ByteArray) : Bool := + (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (subject) : Nat) 18446744073709551616)) && (let total : Nat := (_root_.LexLeanRuntime.length (subject) : Nat); ((((Bool.true && Bool.true) && (Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : (Prod Nat (Prod Nat (List ByteArray)))) => __fits_16 (subject) __p0) ((fun (state : (Prod Nat (Prod Nat (List ByteArray)))) => (LexLeanBoot.Text.lineStep (subject) (state)))) (total) (((0 : Nat), ((0 : Nat), ([] : List ByteArray)))))) && (let final : (Prod Nat (Prod Nat (List ByteArray))) := ((_root_.LexLeanCollections.iterateUntil ((fun (state : (Prod Nat (Prod Nat (List ByteArray)))) => (LexLeanBoot.Text.lineStep (subject) (state)))) (total) (((0 : Nat), ((0 : Nat), ([] : List ByteArray)))) : (Prod (Prod Nat (Prod Nat (List ByteArray))) Bool))).1; (Bool.true && (let start : Nat := ((final).2).1; (Bool.true && (let pieces : (List ByteArray) := ((final).2).2; (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.blt start total) then ((((((Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_18 (subject) (start) ((_root_.LexLeanRuntime.subtract (total) (start) : Nat)))) && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && (__fits_17 (((LexLeanBoot.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (total) (start) : Nat))) :: pieces)))) else ((Bool.true && Bool.true) && (__fits_17 (pieces))))))))))))) + +attribute [local irreducible] LexLeanBoot.Text.lineStep LexLeanBoot.Text.reverse LexLeanBoot.Text.sliceOr in +theorem __rel_4 (subject : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 4 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject)] (_root_.LexLeanPreservation.Rel (__fits_4 subject) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) (LexLeanBoot.Text.lines subject))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (let total : Nat := (_root_.LexLeanRuntime.length (subject) : Nat); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes subject)) (let final : (Prod Nat (Prod Nat (List ByteArray))) := ((_root_.LexLeanCollections.iterateUntil ((fun (state : (Prod Nat (Prod Nat (List ByteArray)))) => (LexLeanBoot.Text.lineStep (subject) (state)))) (total) (((0 : Nat), ((0 : Nat), ([] : List ByteArray)))) : (Prod (Prod Nat (Prod Nat (List ByteArray))) Bool))).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterateUntil (es := (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (_root_.LexLeanPreservation.optEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (fun _ => rfl) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) ((fun (state : (Prod Nat (Prod Nat (List ByteArray)))) => (LexLeanBoot.Text.lineStep (subject) (state)))) (fun (__p0 : (Prod Nat (Prod Nat (List ByteArray)))) => __fits_16 (subject) __p0) 16 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject)] (fun (__p0 : (Prod Nat (Prod Nat (List ByteArray)))) => __rel_16 (subject) __p0) (_root_.LexLeanCollections.iterateUntil ((fun (state : (Prod Nat (Prod Nat (List ByteArray)))) => (LexLeanBoot.Text.lineStep (subject) (state))))) (fun _ => rfl) (fun _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (p := __prog) (fi := 15) (ts := (.pair .nat (.pair .nat (.list .bytes)))) rfl (total) (((0 : Nat), ((0 : Nat), ([] : List ByteArray))))))) (let start : Nat := ((final).2).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl))) (let pieces : (List ByteArray) := ((final).2).2; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((((Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_18 (subject) (start) ((_root_.LexLeanRuntime.subtract (total) (start) : Nat)))) && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && (__fits_17 (((LexLeanBoot.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (total) (start) : Nat))) :: pieces)))) else ((Bool.true && Bool.true) && (__fits_17 (pieces))))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) (if __b then (LexLeanBoot.Text.reverse (((LexLeanBoot.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (total) (start) : Nat))) :: pieces))) else (LexLeanBoot.Text.reverse (pieces)))) (Nat.blt start total) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt start total)) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub total start)) _root_.LexLeanPreservation.convL_nil))) (__rel_18 (subject) (start) ((_root_.LexLeanRuntime.subtract (total) (start) : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil) (__rel_17 (((LexLeanBoot.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (total) (start) : Nat))) :: pieces))))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_17 (pieces))))))))) + +def __fits_0 (stdout : ByteArray) (expected : (List ByteArray)) : Bool := + ((((Bool.true && ((((Bool.true && Bool.true) && (Bool.true && Bool.true)) && Bool.true) && (((Bool.true && Bool.true) && (__fits_4 (stdout))) && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (LexLeanBoot.AxiomOutput.Scan)) (__p1 : ByteArray) => __fits_3 __p0 __p1) ((fun (state : (LexLeanBoot.AxiomOutput.Scan)) (line : ByteArray) => (LexLeanBoot.AxiomOutput.scanStep (state) (line)))) ((LexLeanBoot.AxiomOutput.Scan.between (([] : List (LexLeanBoot.AxiomOutput.Record))) (expected) : (LexLeanBoot.AxiomOutput.Scan))) ((LexLeanBoot.Text.lines (stdout))))) && (Bool.true && Bool.true)) && (__fits_1 ((_root_.LexLeanCollections.listFold ((fun (state : (LexLeanBoot.AxiomOutput.Scan)) (line : ByteArray) => (LexLeanBoot.AxiomOutput.scanStep (state) (line)))) ((LexLeanBoot.AxiomOutput.Scan.between (([] : List (LexLeanBoot.AxiomOutput.Record))) (expected) : (LexLeanBoot.AxiomOutput.Scan))) ((LexLeanBoot.Text.lines (stdout))) : (LexLeanBoot.AxiomOutput.Scan))) (expected))) + +attribute [local irreducible] LexLeanBoot.AxiomOutput.finish LexLeanBoot.AxiomOutput.scanStep LexLeanBoot.Text.lines in +theorem __rel_0 (stdout : ByteArray) (expected : (List ByteArray)) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes stdout), ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) expected)] (_root_.LexLeanPreservation.Rel (__fits_0 stdout expected) ((_root_.LexLeanPreservation.encExcept __enc_0 (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (LexLeanBoot.AxiomOutput.parseAuditOutput stdout expected))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_adt) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_4 (stdout))) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.bytes) (es := __enc_1) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun _ => rfl) ((fun (state : (LexLeanBoot.AxiomOutput.Scan)) (line : ByteArray) => (LexLeanBoot.AxiomOutput.scanStep (state) (line)))) (fun (__p0 : (LexLeanBoot.AxiomOutput.Scan)) (__p1 : ByteArray) => __fits_3 __p0 __p1) 3 [] (fun (__p0 : (LexLeanBoot.AxiomOutput.Scan)) (__p1 : ByteArray) => __rel_3 __p0 __p1) (p := __prog) (fi := 2) (ta := .bytes) (ts := (.adt 1)) rfl ((LexLeanBoot.AxiomOutput.Scan.between (([] : List (LexLeanBoot.AxiomOutput.Record))) (expected) : (LexLeanBoot.AxiomOutput.Scan))) ((LexLeanBoot.Text.lines (stdout))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_1 ((_root_.LexLeanCollections.listFold ((fun (state : (LexLeanBoot.AxiomOutput.Scan)) (line : ByteArray) => (LexLeanBoot.AxiomOutput.scanStep (state) (line)))) ((LexLeanBoot.AxiomOutput.Scan.between (([] : List (LexLeanBoot.AxiomOutput.Record))) (expected) : (LexLeanBoot.AxiomOutput.Scan))) ((LexLeanBoot.Text.lines (stdout))) : (LexLeanBoot.AxiomOutput.Scan))) (expected))) + +def denote (stdout : ByteArray) (expected : (List ByteArray)) : _root_.LexLeanPreservation.Obs := + _root_.cond (__fits_0 stdout expected) (_root_.LexLeanPreservation.Obs.value (((_root_.LexLeanPreservation.encExcept __enc_0 (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (LexLeanBoot.AxiomOutput.parseAuditOutput stdout expected)))) _root_.LexLeanPreservation.Obs.overflow + +theorem root (stdout : ByteArray) (expected : (List ByteArray)) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes stdout), ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) expected)] (_root_.LexLeanPreservation.Rel (__fits_0 stdout expected) ((_root_.LexLeanPreservation.encExcept __enc_0 (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (LexLeanBoot.AxiomOutput.parseAuditOutput stdout expected))) := + _root_.LexLeanPreservation.run_of_funRel (__rel_0 stdout expected) + +end LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1 diff --git a/bootstrap/expected/verify/preserve/LexLeanPreserve/C5ba510b7049a3e59c5f1ffb1f0a6611d/R1/Compose/RustStd.lex.tex b/bootstrap/expected/verify/preserve/LexLeanPreserve/C5ba510b7049a3e59c5f1ffb1f0a6611d/R1/Compose/RustStd.lex.tex new file mode 100644 index 000000000..a81ca781e --- /dev/null +++ b/bootstrap/expected/verify/preserve/LexLeanPreserve/C5ba510b7049a3e59c5f1ffb1f0a6611d/R1/Compose/RustStd.lex.tex @@ -0,0 +1,1094 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1, + LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.Compose.RustStd.__wt_0 : @16 := @541 { + all: [LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.Compose.RustStd.__wt_0], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.Compose.RustStd.__wt_2 : @549 := @873 { + all: [LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.Compose.RustStd.__wt_2], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.Compose.RustStd.__wt_1 : @881 := @1454 { + all: [LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.Compose.RustStd.__wt_1], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.Compose.RustStd.root : @2180 := @2181 { + all: [LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.RustStd.program +@1 := LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.RustStd.krate +@2 := LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.RustStd.flags +@3 := LexLeanBoot.AxiomOutput.Rejection +@4 := #0 +@5 := LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.__enc_0 +@6 := @5 @4 +@7 := LexLeanPreservation.Rust.WT +@8 := LexLeanTarget.TargetSyntax.Ty.adt +@9 := 0 +@10 := @8 @9 +@11 := @7 @0 +@12 := @11 @1 +@13 := @12 @2 +@15 := @13 @6 @10 +@16 := (__s : @3) -> @15 +@17 := LexLeanBoot.AxiomOutput.Rejection.message +@18 := @17 @4 +@19 := LexLeanBoot.AxiomOutput.Rejection.declaration +@20 := @19 @4 +@21 := LexLeanTarget.TargetSyntax.Value.bytes +@22 := @21 @18 +@23 := LexLeanTarget.TargetSyntax.Ty.bytes +@24 := LexLeanTarget.TargetSyntax.Program +@25 := LexLeanPreservation.Rust.RCrate +@26 := LexLeanPreservation.Rust.Flags +@27 := ByteArray +@28 := #3 +@29 := @7 @28 +@30 := #2 +@31 := @29 @30 +@32 := #1 +@33 := @31 @32 +@34 := @21 @4 +@40 := {p : @24} -> {c : @25} -> {A : @26} -> (b : @27) -> @33 @34 @23 +@42 := LexLeanPreservation.Rust.wt_bytes @0 +@49 := {c : @25} -> {A : @26} -> (b : @27) -> @11 @30 @32 @34 @23 +@50 := @42 @1 +@55 := {A : @26} -> (b : @27) -> @12 @32 @34 @23 +@56 := @50 @2 +@57 := @13 @34 +@58 := @57 @23 +@59 := (b : @27) -> @58 +@60 := @56 @18 +@62 := @13 @22 @23 +@63 := LexLeanPreservation.encOption +@64 := @63 @27 +@65 := @64 @21 +@66 := @65 @20 +@67 := LexLeanTarget.TargetSyntax.Ty.option +@68 := @67 @23 +@70 := fun (__x : @27) => @56 @4 +@71 := Sort 1 +@72 := LexLeanTarget.TargetSyntax.Value +@73 := (a._@._internal._hyg.#0 : @4) -> @72 +@74 := LexLeanTarget.TargetSyntax.Ty +@75 := #6 +@76 := @7 @75 +@77 := #5 +@78 := @76 @77 +@79 := #4 +@80 := @78 @79 +@81 := @30 @4 +@84 := (x : @30) -> @80 @81 @32 +@85 := Option.{0} +@86 := @85 @28 +@87 := #7 +@90 := @7 @87 @75 @77 +@93 := @63 @79 @28 @4 +@94 := @90 @93 +@95 := @67 @30 +@104 := {p : @24} -> + {c : @25} -> {A : @26} -> {α : @71} -> {e : @73} -> {t : @74} -> (h : @84) -> (o : @86) -> @94 @95 +@106 := LexLeanPreservation.Rust.wt_encOption @0 +@108 := @11 @77 @79 +@111 := (x : @30) -> @108 @81 @32 +@113 := @11 @75 @77 +@122 := {c : @25} -> + {A : @26} -> {α : @71} -> {e : @73} -> {t : @74} -> (h : @111) -> (o : @86) -> @113 @93 @95 +@123 := @106 @1 +@124 := @12 @79 +@127 := (x : @30) -> @124 @81 @32 +@128 := @12 @77 +@136 := {A : @26} -> {α : @71} -> {e : @73} -> {t : @74} -> (h : @127) -> (o : @86) -> @128 @93 @95 +@137 := @123 @2 +@139 := @13 @81 @32 +@140 := (x : @30) -> @139 +@147 := {α : @71} -> {e : @73} -> {t : @74} -> (h : @140) -> (o : @86) -> @13 @93 @95 +@148 := @137 @27 +@149 := (a._@._internal._hyg.#0 : @27) -> @72 +@150 := (x : @27) -> @139 +@151 := @85 @27 +@159 := {e : @149} -> {t : @74} -> (h : @150) -> (o : @151) -> @13 (@64 @28 @4) @95 +@160 := @148 @21 +@162 := (x : @27) -> @57 @32 +@163 := @65 @4 +@164 := @13 @163 +@168 := {t : @74} -> (h : @162) -> (o : @151) -> @164 @95 +@169 := @160 @23 +@170 := (x : @27) -> @58 +@171 := @164 @68 +@173 := (h : @170) -> (o : @151) -> @171 +@174 := @169 @70 +@175 := @174 @20 +@177 := @13 @66 @68 +@178 := List.nil.{0} +@179 := List.cons.{0} +@180 := @178 @72 +@181 := @179 @72 +@183 := @181 @66 @180 +@185 := @181 @22 @183 +@186 := @178 @74 +@187 := @179 @74 +@188 := @187 @68 +@189 := @188 @186 +@190 := @187 @23 +@191 := @190 @189 +@192 := LexLeanPreservation.Rust.WTL +@200 := {p : @24} -> {c : @25} -> {A : @26} -> @192 @30 @32 @4 @180 @186 +@202 := LexLeanPreservation.Rust.wtl_nil @0 +@203 := @192 @0 +@209 := {c : @25} -> {A : @26} -> @203 @32 @4 @180 @186 +@210 := @202 @1 +@211 := @203 @1 +@215 := {A : @26} -> @211 @4 @180 @186 +@216 := @210 @2 +@217 := @211 @2 +@218 := @217 @180 +@219 := @218 @186 +@220 := List.{0} +@221 := @220 @72 +@222 := @220 @74 +@224 := @80 @28 @30 +@229 := @192 @87 @75 @77 @30 @32 +@230 := #8 +@233 := @192 @230 @87 @75 +@235 := @181 @77 @28 +@236 := @233 @235 +@238 := @187 @79 @30 +@248 := {p : @24} -> + {c : @25} -> + {A : @26} -> + {v : @72} -> {t : @74} -> {vs : @221} -> {ts : @222} -> (h : @224) -> (hs : @229) -> @236 @238 +@250 := LexLeanPreservation.Rust.wtl_cons @0 +@252 := @108 @28 @30 +@256 := @203 @75 @77 @30 @32 +@268 := {c : @25} -> + {A : @26} -> + {v : @72} -> + {t : @74} -> {vs : @221} -> {ts : @222} -> (h : @252) -> (hs : @256) -> @203 @87 @75 @235 @238 +@269 := @250 @1 +@271 := @124 @28 @30 +@274 := @211 @77 @30 @32 +@284 := {A : @26} -> + {v : @72} -> + {t : @74} -> {vs : @221} -> {ts : @222} -> (h : @271) -> (hs : @274) -> @211 @75 @235 @238 +@285 := @269 @2 +@287 := @13 @28 @30 +@289 := @217 @30 @32 +@297 := {v : @72} -> + {t : @74} -> {vs : @221} -> {ts : @222} -> (h : @287) -> (hs : @289) -> @217 @235 @238 +@298 := @285 @66 +@300 := @65 (@19 @28) +@313 := {t : @74} -> + {vs : @221} -> + {ts : @222} -> (h : @13 @300 @30) -> (hs : @289) -> @217 (@181 (@65 (@19 @77)) @28) @238 +@314 := @298 @68 +@316 := @65 (@19 @30) +@318 := @13 @316 @68 +@323 := @217 (@181 (@65 (@19 @79)) @28) +@324 := @188 @30 +@329 := {vs : @221} -> {ts : @222} -> (h : @318) -> (hs : @289) -> @323 @324 +@330 := @314 @180 +@332 := @65 (@19 @32) +@334 := @13 @332 @68 +@335 := @218 @32 +@337 := @181 @300 @180 +@342 := {ts : @222} -> (h : @334) -> (hs : @335) -> @217 @337 @324 +@343 := @330 @186 +@345 := @181 @316 @180 +@346 := @217 @345 +@349 := (h : @177) -> (hs : @219) -> @346 @189 +@350 := @343 @175 +@352 := @181 @332 @180 +@354 := @217 @352 @189 +@355 := (hs : @219) -> @354 +@356 := @350 @216 +@358 := @217 @183 @189 +@359 := @285 @22 +@361 := @21 (@17 @28) +@374 := {t : @74} -> + {vs : @221} -> + {ts : @222} -> (h : @13 @361 @30) -> (hs : @289) -> @217 (@181 (@21 (@17 @77)) @28) @238 +@375 := @359 @23 +@377 := @21 (@17 @30) +@379 := @13 @377 @23 +@384 := @217 (@181 (@21 (@17 @79)) @28) +@385 := @190 @30 +@390 := {vs : @221} -> {ts : @222} -> (h : @379) -> (hs : @289) -> @384 @385 +@391 := @375 @183 +@393 := @21 (@17 @32) +@395 := @13 @393 @23 +@396 := @346 @32 +@398 := @181 @361 @337 +@403 := {ts : @222} -> (h : @395) -> (hs : @396) -> @217 @398 @385 +@404 := @391 @189 +@406 := @181 @377 @345 +@407 := @217 @406 +@410 := (h : @62) -> (hs : @354) -> @407 @191 +@411 := @404 @60 +@413 := @181 @393 @352 +@415 := @217 @413 @191 +@416 := (hs : @358) -> @415 +@417 := @411 @356 +@419 := @217 @185 @191 +@420 := Nat +@421 := Eq.{1} +@422 := @85 @222 +@423 := @421 @422 +@424 := LexLeanPreservation.Rust.adtFields +@428 := @423 (@424 @75 @28 @30) +@429 := Option.some.{0} +@430 := @429 @222 +@431 := @430 @4 +@432 := @428 @431 +@435 := @7 @230 @87 @75 +@436 := LexLeanTarget.TargetSyntax.Value.adt +@438 := @436 @79 @28 +@439 := @435 @438 +@440 := @8 @77 +@450 := {p : @24} -> + {c : @25} -> + {A : @26} -> + {i : @420} -> {k : @420} -> {fs : @221} -> {tys : @222} -> (h : @432) -> (hf : @229) -> @439 @440 +@452 := LexLeanPreservation.Rust.wt_adt @0 +@453 := @424 @0 +@457 := @423 (@453 @28 @30) @431 +@469 := {c : @25} -> + {A : @26} -> + {i : @420} -> + {k : @420} -> {fs : @221} -> {tys : @222} -> (h : @457) -> (hf : @256) -> @11 @87 @75 @438 @440 +@470 := @452 @1 +@480 := {A : @26} -> + {i : @420} -> + {k : @420} -> {fs : @221} -> {tys : @222} -> (h : @457) -> (hf : @274) -> @12 @75 @438 @440 +@481 := @470 @2 +@482 := @13 @438 +@489 := {i : @420} -> + {k : @420} -> {fs : @221} -> {tys : @222} -> (h : @457) -> (hf : @289) -> @482 @440 +@490 := @481 @9 +@491 := @453 @9 +@500 := {k : @420} -> + {fs : @221} -> {tys : @222} -> (h : @423 (@491 @30) @431) -> (hf : @289) -> @482 @10 +@501 := @490 @9 +@502 := @491 @9 +@503 := @423 @502 +@504 := @503 @431 +@505 := @436 @9 +@507 := @13 (@505 @28) +@512 := {fs : @221} -> {tys : @222} -> (h : @504) -> (hf : @289) -> @507 @10 +@513 := @501 @185 +@520 := {tys : @222} -> (h : @504) -> (hf : @407 @32) -> @13 (@505 @398) @10 +@521 := @513 @191 +@528 := (h : @503 (@430 @191)) -> (hf : @415) -> @13 (@505 @406) @10 +@529 := Eq.refl.{1} +@530 := @529 @422 +@532 := @521 (@530 @502) +@536 := (hf : @419) -> @13 (@505 @413) @10 +@537 := @532 @417 +@540 := @13 (@505 @185) @10 +@541 := fun (__s : @3) => @537 +@542 := LexLeanBoot.AxiomOutput.Record +@543 := LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.__enc_2 +@544 := @543 @4 +@545 := 2 +@546 := @8 @545 +@547 := @13 @544 +@548 := @547 @546 +@549 := (__s : @542) -> @548 +@550 := LexLeanBoot.AxiomOutput.Record.declaration +@551 := @550 @4 +@552 := LexLeanBoot.AxiomOutput.Record.axioms +@553 := @552 @4 +@554 := LexLeanBoot.AxiomOutput.Record.expected +@555 := @554 @4 +@556 := @21 @551 +@557 := @56 @551 +@559 := @13 @556 @23 +@560 := LexLeanPreservation.encList +@561 := @560 @27 +@562 := @561 @21 +@563 := @562 @553 +@564 := LexLeanTarget.TargetSyntax.Ty.list +@565 := @564 @23 +@566 := @220 @28 +@569 := @560 @79 @28 @4 +@570 := @90 @569 +@571 := @564 @30 +@580 := {p : @24} -> + {c : @25} -> + {A : @26} -> {α : @71} -> {e : @73} -> {t : @74} -> (h : @84) -> (xs : @566) -> @570 @571 +@582 := LexLeanPreservation.Rust.wt_encList @0 +@591 := {c : @25} -> + {A : @26} -> {α : @71} -> {e : @73} -> {t : @74} -> (h : @111) -> (xs : @566) -> @113 @569 @571 +@592 := @582 @1 +@600 := {A : @26} -> + {α : @71} -> {e : @73} -> {t : @74} -> (h : @127) -> (xs : @566) -> @128 @569 @571 +@601 := @592 @2 +@608 := {α : @71} -> {e : @73} -> {t : @74} -> (h : @140) -> (xs : @566) -> @13 @569 @571 +@609 := @601 @27 +@610 := @220 @27 +@618 := {e : @149} -> {t : @74} -> (h : @150) -> (xs : @610) -> @13 (@561 @28 @4) @571 +@619 := @609 @21 +@620 := @562 @4 +@621 := @13 @620 +@625 := {t : @74} -> (h : @162) -> (xs : @610) -> @621 @571 +@626 := @619 @23 +@627 := @621 @565 +@629 := (h : @170) -> (xs : @610) -> @627 +@630 := @626 @70 +@631 := @630 @553 +@633 := @13 @563 @565 +@634 := @65 @555 +@635 := @174 @555 +@637 := @13 @634 @68 +@639 := @181 @634 @180 +@641 := @181 @563 @639 +@643 := @181 @556 @641 +@644 := @187 @565 +@645 := @644 @189 +@646 := @190 @645 +@647 := @285 @634 +@649 := @65 (@554 @28) +@662 := {t : @74} -> + {vs : @221} -> + {ts : @222} -> (h : @13 @649 @30) -> (hs : @289) -> @217 (@181 (@65 (@554 @77)) @28) @238 +@663 := @647 @68 +@665 := @65 (@554 @30) +@677 := {vs : @221} -> + {ts : @222} -> (h : @13 @665 @68) -> (hs : @289) -> @217 (@181 (@65 (@554 @79)) @28) @324 +@678 := @663 @180 +@680 := @65 (@554 @32) +@682 := @13 @680 @68 +@684 := @181 @649 @180 +@689 := {ts : @222} -> (h : @682) -> (hs : @335) -> @217 @684 @324 +@690 := @678 @186 +@692 := @181 @665 @180 +@693 := @217 @692 +@696 := (h : @637) -> (hs : @219) -> @693 @189 +@697 := @690 @635 +@699 := @181 @680 @180 +@701 := @217 @699 @189 +@702 := (hs : @219) -> @701 +@703 := @697 @216 +@705 := @217 @639 @189 +@706 := @285 @563 +@708 := @562 (@552 @28) +@721 := {t : @74} -> + {vs : @221} -> + {ts : @222} -> (h : @13 @708 @30) -> (hs : @289) -> @217 (@181 (@562 (@552 @77)) @28) @238 +@722 := @706 @565 +@724 := @562 (@552 @30) +@726 := @13 @724 @565 +@731 := @217 (@181 (@562 (@552 @79)) @28) +@732 := @644 @30 +@737 := {vs : @221} -> {ts : @222} -> (h : @726) -> (hs : @289) -> @731 @732 +@738 := @722 @639 +@740 := @562 (@552 @32) +@742 := @13 @740 @565 +@743 := @693 @32 +@745 := @181 @708 @684 +@750 := {ts : @222} -> (h : @742) -> (hs : @743) -> @217 @745 @732 +@751 := @738 @189 +@753 := @181 @724 @692 +@754 := @217 @753 +@757 := (h : @633) -> (hs : @701) -> @754 @645 +@758 := @751 @631 +@760 := @181 @740 @699 +@762 := @217 @760 @645 +@763 := (hs : @705) -> @762 +@764 := @758 @703 +@766 := @217 @641 @645 +@767 := @285 @556 +@769 := @21 (@550 @28) +@782 := {t : @74} -> + {vs : @221} -> + {ts : @222} -> (h : @13 @769 @30) -> (hs : @289) -> @217 (@181 (@21 (@550 @77)) @28) @238 +@783 := @767 @23 +@785 := @21 (@550 @30) +@797 := {vs : @221} -> + {ts : @222} -> (h : @13 @785 @23) -> (hs : @289) -> @217 (@181 (@21 (@550 @79)) @28) @385 +@798 := @783 @641 +@800 := @21 (@550 @32) +@802 := @13 @800 @23 +@803 := @754 @32 +@805 := @181 @769 @745 +@810 := {ts : @222} -> (h : @802) -> (hs : @803) -> @217 @805 @385 +@811 := @798 @645 +@813 := @181 @785 @753 +@814 := @217 @813 +@817 := (h : @559) -> (hs : @762) -> @814 @646 +@818 := @811 @557 +@820 := @181 @800 @760 +@822 := @217 @820 @646 +@823 := (hs : @766) -> @822 +@824 := @818 @764 +@826 := @217 @643 @646 +@827 := @481 @545 +@828 := @453 @545 +@837 := {k : @420} -> + {fs : @221} -> {tys : @222} -> (h : @423 (@828 @30) @431) -> (hf : @289) -> @482 @546 +@838 := @827 @9 +@839 := @828 @9 +@840 := @423 @839 +@841 := @840 @431 +@846 := {fs : @221} -> {tys : @222} -> (h : @841) -> (hf : @289) -> @507 @546 +@847 := @838 @643 +@854 := {tys : @222} -> (h : @841) -> (hf : @814 @32) -> @13 (@505 @805) @546 +@855 := @847 @646 +@862 := (h : @840 (@430 @646)) -> (hf : @822) -> @13 (@505 @813) @546 +@864 := @855 (@530 @839) +@868 := (hf : @826) -> @13 (@505 @820) @546 +@869 := @864 @824 +@872 := @13 (@505 @643) @546 +@873 := fun (__s : @542) => @869 +@874 := LexLeanBoot.AxiomOutput.Scan +@876 := LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.__enc_1 @4 +@877 := 1 +@878 := @8 @877 +@880 := @13 @876 @878 +@881 := (__v : @874) -> @880 +@882 := fun (__v : @874) => @880 +@883 := @560 @542 +@884 := @883 @543 +@885 := @884 @32 +@886 := @564 @546 +@889 := fun (__x : @542) => + LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.Compose.RustStd.__wt_2 @4 +@890 := @601 @542 +@891 := (a._@._internal._hyg.#0 : @542) -> @72 +@892 := (x : @542) -> @139 +@893 := @220 @542 +@901 := {e : @891} -> {t : @74} -> (h : @892) -> (xs : @893) -> @13 (@883 @28 @4) @571 +@902 := @890 @543 +@904 := (x : @542) -> @547 @32 +@906 := @13 (@884 @4) +@910 := {t : @74} -> (h : @904) -> (xs : @893) -> @906 @571 +@911 := @902 @546 +@915 := (h : (x : @542) -> @548) -> (xs : @893) -> @906 @886 +@916 := @911 @889 +@917 := @916 @32 +@919 := @13 @885 @886 +@920 := @630 @4 +@922 := @181 @620 @180 +@924 := @181 @885 @922 +@925 := @644 @186 +@926 := @187 @886 +@927 := @926 @925 +@928 := @285 @620 +@929 := @562 @28 +@930 := @13 @929 +@931 := @930 @30 +@932 := @562 @77 +@933 := @181 @932 +@935 := @217 (@933 @28) +@941 := {t : @74} -> {vs : @221} -> {ts : @222} -> (h : @931) -> (hs : @289) -> @935 @238 +@942 := @928 @565 +@943 := @562 @30 +@945 := @13 @943 @565 +@946 := @562 @79 +@947 := @181 @946 +@954 := {vs : @221} -> {ts : @222} -> (h : @945) -> (hs : @289) -> @217 (@947 @28) @732 +@955 := @942 @180 +@956 := @562 @32 +@958 := @13 @956 @565 +@959 := @181 @929 +@960 := @959 @180 +@961 := @217 @960 +@965 := {ts : @222} -> (h : @958) -> (hs : @335) -> @961 @732 +@966 := @955 @186 +@967 := @181 @943 +@968 := @967 @180 +@969 := @217 @968 +@970 := @969 @925 +@972 := (h : @627) -> (hs : @219) -> @970 +@973 := @966 @920 +@975 := @181 @956 @180 +@977 := @217 @975 @925 +@978 := (hs : @219) -> @977 +@979 := @973 @216 +@981 := @217 @922 @925 +@982 := @285 @885 +@983 := @884 @79 +@984 := @13 @983 +@985 := @984 @30 +@986 := @884 @75 +@987 := @181 @986 +@995 := {t : @74} -> {vs : @221} -> {ts : @222} -> (h : @985) -> (hs : @289) -> @217 (@987 @28) @238 +@996 := @982 @886 +@997 := @884 @28 +@999 := @13 @997 @886 +@1000 := @884 @77 +@1001 := @181 @1000 +@1003 := @217 (@1001 @28) +@1004 := @926 @30 +@1009 := {vs : @221} -> {ts : @222} -> (h : @999) -> (hs : @289) -> @1003 @1004 +@1010 := @996 @922 +@1011 := @884 @30 +@1013 := @13 @1011 @886 +@1014 := @969 @32 +@1015 := @181 @983 +@1016 := @1015 @960 +@1021 := {ts : @222} -> (h : @1013) -> (hs : @1014) -> @217 @1016 @1004 +@1022 := @1010 @925 +@1023 := @181 @997 +@1024 := @1023 @968 +@1025 := @217 @1024 +@1028 := (h : @919) -> (hs : @977) -> @1025 @927 +@1029 := @1022 @917 +@1031 := @181 @1011 @975 +@1033 := @217 @1031 @927 +@1034 := (hs : @981) -> @1033 +@1035 := @1029 @979 +@1037 := @217 @924 @927 +@1038 := @481 @877 +@1039 := @453 @877 +@1048 := {k : @420} -> + {fs : @221} -> {tys : @222} -> (h : @423 (@1039 @30) @431) -> (hf : @289) -> @482 @878 +@1049 := @1038 @9 +@1050 := @1039 @9 +@1051 := @423 @1050 +@1052 := @1051 @431 +@1057 := {fs : @221} -> {tys : @222} -> (h : @1052) -> (hf : @289) -> @507 @878 +@1058 := @1049 @924 +@1065 := {tys : @222} -> (h : @1052) -> (hf : @1025 @32) -> @13 (@505 @1016) @878 +@1066 := @1058 @927 +@1073 := (h : @1051 (@430 @927)) -> (hf : @1033) -> @13 (@505 @1024) @878 +@1075 := @1066 (@530 @1050) +@1079 := (hf : @1037) -> @13 (@505 @1031) @878 +@1080 := @1075 @1035 +@1083 := @13 (@505 @924) @878 +@1085 := fun (__x0 : @893) => fun (__x1 : @610) => @1080 +@1086 := @916 @28 +@1087 := @630 @30 +@1088 := @21 @32 +@1089 := @56 @32 +@1091 := @13 @1088 @23 +@1092 := @174 @4 +@1094 := @181 @163 @180 +@1095 := @181 @1088 +@1096 := @1095 @1094 +@1097 := @967 @1096 +@1098 := @1023 @1097 +@1099 := @644 @191 +@1100 := @926 @1099 +@1101 := @285 @163 +@1102 := @65 @28 +@1114 := {t : @74} -> + {vs : @221} -> {ts : @222} -> (h : @13 @1102 @30) -> (hs : @289) -> @217 (@181 (@65 @77) @28) @238 +@1115 := @1101 @68 +@1116 := @65 @30 +@1127 := {vs : @221} -> + {ts : @222} -> (h : @13 @1116 @68) -> (hs : @289) -> @217 (@181 (@65 @79) @28) @324 +@1128 := @1115 @180 +@1129 := @65 @32 +@1131 := @13 @1129 @68 +@1133 := @181 @1102 @180 +@1138 := {ts : @222} -> (h : @1131) -> (hs : @335) -> @217 @1133 @324 +@1139 := @1128 @186 +@1141 := @181 @1116 @180 +@1142 := @217 @1141 +@1145 := (h : @171) -> (hs : @219) -> @1142 @189 +@1146 := @1139 @1092 +@1148 := @181 @1129 @180 +@1150 := @217 @1148 @189 +@1151 := (hs : @219) -> @1150 +@1152 := @1146 @216 +@1154 := @217 @1094 @189 +@1155 := @285 @1088 +@1156 := @21 @79 +@1157 := @13 @1156 +@1158 := @1157 @30 +@1159 := @21 @75 +@1160 := @181 @1159 +@1162 := @217 (@1160 @28) +@1168 := {t : @74} -> {vs : @221} -> {ts : @222} -> (h : @1158) -> (hs : @289) -> @1162 @238 +@1169 := @1155 @23 +@1170 := @21 @28 +@1172 := @13 @1170 @23 +@1173 := @21 @77 +@1174 := @181 @1173 +@1181 := {vs : @221} -> {ts : @222} -> (h : @1172) -> (hs : @289) -> @217 (@1174 @28) @385 +@1182 := @1169 @1094 +@1183 := @21 @30 +@1185 := @13 @1183 @23 +@1186 := @1142 @32 +@1187 := @181 @1156 +@1188 := @1187 @1133 +@1193 := {ts : @222} -> (h : @1185) -> (hs : @1186) -> @217 @1188 @385 +@1194 := @1182 @189 +@1195 := @181 @1170 +@1196 := @1195 @1141 +@1197 := @217 @1196 +@1200 := (h : @1091) -> (hs : @1150) -> @1197 @191 +@1201 := @1194 @1089 +@1202 := @181 @1183 +@1203 := @1202 @1148 +@1205 := @217 @1203 @191 +@1206 := (hs : @1154) -> @1205 +@1207 := @1201 @1152 +@1209 := @217 @1096 @191 +@1210 := @285 @943 +@1212 := @13 @932 @30 +@1214 := @181 (@562 @87) +@1222 := {t : @74} -> + {vs : @221} -> {ts : @222} -> (h : @1212) -> (hs : @289) -> @217 (@1214 @28) @238 +@1223 := @1210 @565 +@1224 := @13 @946 +@1225 := @1224 @565 +@1226 := @562 @75 +@1227 := @181 @1226 +@1229 := @217 (@1227 @28) +@1234 := {vs : @221} -> {ts : @222} -> (h : @1225) -> (hs : @289) -> @1229 @732 +@1235 := @1223 @1096 +@1236 := @930 @565 +@1237 := @1197 @32 +@1238 := @933 @1188 +@1243 := {ts : @222} -> (h : @1236) -> (hs : @1237) -> @217 @1238 @732 +@1244 := @1235 @191 +@1245 := @947 @1196 +@1246 := @217 @1245 +@1249 := (h : @945) -> (hs : @1205) -> @1246 @1099 +@1250 := @1244 @1087 +@1251 := @959 @1203 +@1253 := @217 @1251 @1099 +@1254 := (hs : @1209) -> @1253 +@1255 := @1250 @1207 +@1257 := @217 @1097 @1099 +@1258 := @285 @997 +@1270 := {t : @74} -> + {vs : @221} -> + {ts : @222} -> (h : @13 @986 @30) -> (hs : @289) -> @217 (@181 (@884 @230) @28) @238 +@1271 := @1258 @886 +@1282 := {vs : @221} -> + {ts : @222} -> (h : @13 @1000 @886) -> (hs : @289) -> @217 (@181 (@884 @87) @28) @1004 +@1283 := @1271 @1097 +@1284 := @984 @886 +@1285 := @1246 @32 +@1286 := @987 @1238 +@1291 := {ts : @222} -> (h : @1284) -> (hs : @1285) -> @217 @1286 @1004 +@1292 := @1283 @1099 +@1293 := @1001 @1245 +@1294 := @217 @1293 +@1297 := (h : @999) -> (hs : @1253) -> @1294 @1100 +@1298 := @1292 @1086 +@1299 := @1015 @1251 +@1301 := @217 @1299 @1100 +@1302 := (hs : @1257) -> @1301 +@1303 := @1298 @1255 +@1305 := @217 @1098 @1100 +@1306 := @1038 @877 +@1307 := @1039 @877 +@1308 := @423 @1307 +@1309 := @1308 @431 +@1310 := @436 @877 +@1317 := {fs : @221} -> {tys : @222} -> (h : @1309) -> (hf : @289) -> @13 (@1310 @28) @878 +@1318 := @1306 @1098 +@1325 := {tys : @222} -> (h : @1309) -> (hf : @1294 @32) -> @13 (@1310 @1286) @878 +@1326 := @1318 @1100 +@1333 := (h : @1308 (@430 @1100)) -> (hf : @1301) -> @13 (@1310 @1293) @878 +@1335 := @1326 (@530 @1307) +@1339 := (hf : @1305) -> @13 (@1310 @1299) @878 +@1340 := @1335 @1303 +@1343 := @13 (@1310 @1098) @878 +@1347 := fun (__x0 : @893) => fun (__x1 : @610) => fun (__x2 : @27) => fun (__x3 : @151) => @1340 +@1349 := LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.Compose.RustStd.__wt_0 @4 +@1351 := @181 @6 @180 +@1352 := @187 @10 +@1353 := @1352 @186 +@1354 := @285 @6 +@1355 := @5 @28 +@1367 := {t : @74} -> + {vs : @221} -> {ts : @222} -> (h : @13 @1355 @30) -> (hs : @289) -> @217 (@181 (@5 @77) @28) @238 +@1368 := @1354 @10 +@1369 := @5 @30 +@1371 := @13 @1369 @10 +@1375 := @217 (@181 (@5 @79) @28) +@1376 := @1352 @30 +@1381 := {vs : @221} -> {ts : @222} -> (h : @1371) -> (hs : @289) -> @1375 @1376 +@1382 := @1368 @180 +@1383 := @5 @32 +@1385 := @13 @1383 @10 +@1387 := @181 @1355 @180 +@1392 := {ts : @222} -> (h : @1385) -> (hs : @335) -> @217 @1387 @1376 +@1393 := @1382 @186 +@1395 := @181 @1369 @180 +@1396 := @217 @1395 +@1399 := (h : @15) -> (hs : @219) -> @1396 @1353 +@1400 := @1393 @1349 +@1402 := @181 @1383 @180 +@1404 := @217 @1402 @1353 +@1405 := (hs : @219) -> @1404 +@1406 := @1400 @216 +@1408 := @217 @1351 @1353 +@1409 := @1038 @545 +@1410 := @1039 @545 +@1411 := @423 @1410 +@1412 := @1411 @431 +@1413 := @436 @545 +@1420 := {fs : @221} -> {tys : @222} -> (h : @1412) -> (hf : @289) -> @13 (@1413 @28) @878 +@1421 := @1409 @1351 +@1428 := {tys : @222} -> (h : @1412) -> (hf : @1396 @32) -> @13 (@1413 @1387) @878 +@1429 := @1421 @1353 +@1436 := (h : @1411 (@430 @1353)) -> (hf : @1404) -> @13 (@1413 @1395) @878 +@1438 := @1429 (@530 @1410) +@1442 := (hf : @1408) -> @13 (@1413 @1402) @878 +@1443 := @1438 @1406 +@1446 := @13 (@1413 @1351) @878 +@1447 := fun (__x0 : @3) => @1443 +@1454 := fun (__v : @874) => LexLeanBoot.AxiomOutput.Scan.casesOn.{0} @882 @4 @1085 @1347 @1447 +@1455 := @56 @30 +@1456 := @630 @32 +@1457 := @1202 @975 +@1458 := Prod.{0, 0} +@1460 := @1458 @420 @72 +@1463 := Prod.mk.{0, 0} @420 @72 +@1464 := @1463 @877 +@1465 := @1464 @956 +@1466 := @1463 @9 +@1467 := @1466 @1183 +@1468 := @178 @1460 +@1469 := @179 @1460 +@1471 := @1469 @1467 @1468 +@1473 := @1469 @1465 @1471 +@1474 := Bool.true +@1475 := LexLeanTarget.TargetSyntax.Function +@1476 := LexLeanTarget.TargetSyntax.Program.functions +@1477 := @1476 @0 +@1478 := @178 @420 +@1479 := LexLeanTarget.TargetSyntax.Ty.unit +@1480 := LexLeanTarget.TargetSyntax.Value.unit +@1483 := LexLeanTarget.TargetSyntax.Expr.value @1479 @1480 +@1488 := LexLeanTarget.TargetSyntax.Function.mk @1478 @186 @1479 @1483 +@1493 := List.getD.{0} @1475 @1477 @9 @1488 +@1497 := fun (__e_n : @420) => + LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.RustStd.root @4 @9 +@1498 := @285 @956 +@1505 := {t : @74} -> {vs : @221} -> {ts : @222} -> (h : @1224 @30) -> (hs : @289) -> @1229 @238 +@1506 := @1498 @565 +@1511 := {vs : @221} -> {ts : @222} -> (h : @1236) -> (hs : @289) -> @935 @732 +@1512 := @1506 @180 +@1513 := @947 @180 +@1518 := {ts : @222} -> (h : @945) -> (hs : @335) -> @217 @1513 @732 +@1519 := @1512 @186 +@1522 := (h : @958) -> (hs : @219) -> @961 @925 +@1524 := @1519 @1456 @216 +@1525 := @285 @1183 +@1527 := @13 @1173 @30 +@1528 := @21 @87 +@1529 := @181 @1528 +@1537 := {t : @74} -> + {vs : @221} -> {ts : @222} -> (h : @1527) -> (hs : @289) -> @217 (@1529 @28) @238 +@1538 := @1525 @23 +@1544 := {vs : @221} -> {ts : @222} -> (h : @1157 @23) -> (hs : @289) -> @1162 @385 +@1545 := @1538 @975 +@1546 := @961 @32 +@1547 := @1174 @1513 +@1548 := @217 @1547 +@1552 := {ts : @222} -> (h : @1172) -> (hs : @1546) -> @1548 @385 +@1553 := @1545 @925 +@1554 := @1187 @960 +@1555 := @217 @1554 +@1556 := @190 @925 +@1559 := (h : @1185) -> (hs : @970) -> @1555 @1556 +@1560 := @1553 @1455 +@1561 := @1195 @968 +@1562 := @217 @1561 +@1564 := (hs : @977) -> @1562 @1556 +@1565 := @1560 @1524 +@1566 := @217 @1457 +@1567 := @1566 @1556 +@1568 := LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.denote +@1570 := @1568 @30 @32 +@1571 := LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.__fits_0 +@1573 := @1571 @30 @32 +@1576 := LexLeanBoot.AxiomOutput.parseAuditOutput @30 @32 +@1578 := @1458 @27 @610 +@1579 := @220 @1578 +@1584 := LexLeanPreservation.encPair @27 @610 @21 @562 +@1586 := @560 @1578 @1584 +@1592 := LexLeanPreservation.encExcept @3 @1579 @5 @1586 @1576 +@1595 := LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.root @30 @32 +@1596 := Bool +@1597 := Ne.{1} +@1598 := LexLeanPreservation.Obs +@1599 := @1597 @1598 +@1600 := LexLeanPreservation.Rel +@1603 := @1599 (@1600 @32 @4) +@1604 := LexLeanPreservation.Obs.stuck +@1607 := (f : @1596) -> (v : @72) -> @1603 @1604 +@1609 := LexLeanPreservation.Rust.rel_ne_stuck @1573 +@1616 := (v : @72) -> @1599 (@1600 (@1571 @28 @30) @4) @1604 +@1617 := @1609 @1592 +@1621 := @1599 (@1600 @1573 @1592) @1604 +@1622 := @220 @1460 +@1623 := LexLeanPreservation.Rust.FunSem +@1624 := #9 +@1630 := (n : @420) -> @1623 @1624 @230 @87 @4 @75 +@1631 := @85 @1475 +@1632 := @421 @1631 +@1639 := LexLeanRuntime.index (@220 @1475) @1475 (LexLeanRuntime.instIndexableList @1475) +@1643 := @1632 (@1639 (@1476 @1624) @75) +@1644 := @429 @1475 +@1645 := @1644 @77 +@1646 := @1643 @1645 +@1647 := #10 +@1651 := @192 @1647 @1624 @230 @77 +@1652 := LexLeanTarget.TargetSyntax.Function.types +@1653 := @1652 @75 +@1654 := @1651 @1653 +@1655 := @85 @1622 +@1656 := @421 @1655 +@1657 := LexLeanTarget.TargetSemantics.bindAll +@1658 := LexLeanTarget.TargetSyntax.Function.parameters +@1663 := @1656 (@1657 (@1658 @87) @75 @1468) +@1664 := @429 @1622 +@1665 := @1664 @77 +@1666 := @1663 @1665 +@1667 := @85 @1596 +@1668 := @421 @1667 +@1669 := LexLeanPreservation.Rust.fnFallible +@1670 := #11 +@1673 := @1668 (@1669 @1670 @1624) +@1674 := @429 @1596 +@1675 := @1674 @77 +@1676 := @1673 @1675 +@1677 := LexLeanPreservation.RunConv +@1678 := #13 +@1682 := @1677 @1678 @1647 @230 @77 +@1684 := @1599 @75 @1604 +@1685 := Exists.{1} +@1686 := LexLeanPreservation.Rust.ROut +@1687 := @1685 @1686 +@1688 := And +@1689 := LexLeanPreservation.Rust.RealizesFn +@1693 := @1688 (@1689 @1624 @230 @4) +@1694 := LexLeanPreservation.Rust.RCI +@1696 := @1694 #15 +@1697 := LexLeanPreservation.Rust.fnIdent +@1698 := @1697 @1678 +@1705 := (hne : @1684) -> @1687 (fun (ro : @1686) => @1693 (@1696 @1698 @1670 @4)) +@1720 := {p : @24} -> + {c : @25} -> + {A : @26} -> + {f : @420} -> + {fn : @1475} -> + {args : @221} -> + {env : @1622} -> + {F : @1596} -> + {o : @1598} -> + (hB : @1630) -> + (hfn : @1646) -> (hwt : @1654) -> (hbind : @1666) -> (hF : @1676) -> (hA : @1682) -> @1705 +@1722 := LexLeanPreservation.Rust.compose @0 +@1723 := @1623 @0 +@1728 := (n : @420) -> @1723 @230 @87 @4 @75 +@1729 := @1639 @1477 +@1732 := @1632 (@1729 @75) @1645 +@1736 := @203 @1624 @230 @77 @1653 +@1737 := @1677 @0 +@1740 := @1737 @1647 @230 @77 +@1754 := {c : @25} -> + {A : @26} -> + {f : @420} -> + {fn : @1475} -> + {args : @221} -> + {env : @1622} -> + {F : @1596} -> + {o : @1598} -> + (hB : @1728) -> + (hfn : @1732) -> (hwt : @1736) -> (hbind : @1666) -> (hF : @1676) -> (hA : @1740) -> @1705 +@1755 := @1722 @1 +@1756 := @1723 @1 +@1760 := (n : @420) -> @1756 @87 @4 @75 +@1763 := @211 @230 @77 @1653 +@1764 := @1669 @1 +@1767 := @1668 (@1764 @1624) @1675 +@1768 := @1694 @1 +@1778 := (hbind : @1666) -> + (hF : @1767) -> + (hA : @1740) -> (hne : @1684) -> @1687 (fun (ro : @1686) => @1693 (@1768 @1698 @1670 @4)) +@1788 := {A : @26} -> + {f : @420} -> + {fn : @1475} -> + {args : @221} -> + {env : @1622} -> + {F : @1596} -> {o : @1598} -> (hB : @1760) -> (hfn : @1732) -> (hwt : @1763) -> @1778 +@1789 := @1755 @2 +@1791 := @1756 @2 @4 +@1793 := (n : @420) -> @1791 @75 +@1794 := @217 @77 +@1795 := @1794 @1653 +@1804 := {f : @420} -> + {fn : @1475} -> + {args : @221} -> + {env : @1622} -> + {F : @1596} -> {o : @1598} -> (hB : @1793) -> (hfn : @1732) -> (hwt : @1795) -> @1778 +@1805 := @1789 @9 +@1807 := (n : @420) -> @1791 @9 +@1808 := @1729 @9 +@1809 := @1632 @1808 +@1810 := @1809 @1645 +@1811 := @1764 @9 +@1812 := @1668 @1811 +@1813 := @1812 @1675 +@1814 := @1737 @9 +@1816 := @1814 @230 @77 +@1818 := @1768 (@1697 @9) +@1826 := (hF : @1813) -> + (hA : @1816) -> (hne : @1684) -> @1687 (fun (ro : @1686) => @1693 (@1818 @1670 @4)) +@1835 := {fn : @1475} -> + {args : @221} -> + {env : @1622} -> + {F : @1596} -> + {o : @1598} -> (hB : @1807) -> (hfn : @1810) -> (hwt : @1795) -> (hbind : @1666) -> @1826 +@1836 := @1805 @1493 +@1838 := @1809 (@1644 @1493) +@1839 := @1652 @1493 +@1840 := @1794 @1839 +@1842 := @1657 (@1658 @1493) +@1854 := {args : @221} -> + {env : @1622} -> + {F : @1596} -> + {o : @1598} -> + (hB : @1807) -> (hfn : @1838) -> (hwt : @1840) -> (hbind : @1656 (@1842 @75 @1468) @1665) -> @1826 +@1855 := @1836 @1457 +@1857 := @1529 (@1227 @180) +@1859 := @217 @1857 @1839 +@1863 := @181 (@21 @230) (@1214 @180) +@1867 := @1656 (@1842 @1863 @1468) @1665 +@1873 := @181 (@21 @1647) (@181 (@562 @1624) @180) +@1875 := @1814 @1873 @77 +@1877 := @181 (@21 @1678) +@1878 := #12 +@1897 := {env : @1622} -> + {F : @1596} -> + {o : @1598} -> + (hB : @1807) -> + (hfn : @1838) -> + (hwt : @1859) -> + (hbind : @1867) -> + (hF : @1813) -> + (hA : @1875) -> + (hne : @1684) -> @1687 (fun (ro : @1686) => @1693 (@1818 (@1877 (@181 (@562 @1878) @180)) @4)) +@1898 := @1855 @1473 +@1900 := @1160 (@933 @180) +@1902 := @217 @1900 @1839 +@1913 := @1656 (@1842 @1857 @1468) (@1664 (@1469 (@1464 @1226) (@1469 (@1466 @1528) @1468))) +@1919 := @181 (@21 @1624) (@181 (@562 @230) @180) +@1941 := {F : @1596} -> + {o : @1598} -> + (hB : @1807) -> + (hfn : @1838) -> + (hwt : @1902) -> + (hbind : @1913) -> + (hF : @1813) -> + (hA : @1814 @1919 @77) -> + (hne : @1684) -> + @1687 (fun (ro : @1686) => @1693 (@1818 (@181 (@21 @1878) (@181 (@562 @1670) @180)) @4)) +@1942 := @1898 @1474 +@1943 := @1548 @1839 +@1954 := @1656 (@1842 @1900 @1468) (@1664 (@1469 (@1464 @932) (@1469 (@1466 @1159) @1468))) +@1956 := @1812 (@1674 @1474) +@1958 := @1814 @1863 @77 +@1959 := @1689 @1474 +@1981 := {o : @1598} -> + (hB : @1807) -> + (hfn : @1838) -> + (hwt : @1943) -> + (hbind : @1954) -> + (hF : @1956) -> + (hA : @1958) -> + (hne : @1684) -> + @1687 + (fun (ro : @1686) => + @1688 (@1959 @230 @4) (@1818 (@181 (@21 @1670) (@181 (@562 @1647) @180)) @4)) +@1982 := @1942 @1570 +@1983 := @1555 @1839 +@1994 := @1656 (@1842 @1547 @1468) (@1664 (@1469 (@1464 @946) (@1469 (@1466 @1173) @1468))) +@1995 := @1814 @1857 +@1997 := @1568 @87 @75 +@1998 := @1995 @1997 +@2000 := @1568 @230 @87 +@2019 := (hB : @1807) -> + (hfn : @1838) -> + (hwt : @1983) -> + (hbind : @1994) -> + (hF : @1956) -> + (hA : @1998) -> + (hne : @1599 @2000 @1604) -> + @1687 (fun (ro : @1686) => @1688 (@1959 (@1568 @1647 @1624) @4) (@1818 @1873 @4)) +@2020 := @1982 @1497 +@2021 := @1562 @1839 +@2032 := @1656 (@1842 @1554 @1468) (@1664 (@1469 (@1464 @929) (@1469 (@1466 @1156) @1468))) +@2033 := @1814 @1900 +@2035 := @1568 @75 @77 +@2054 := (hfn : @1838) -> + (hwt : @2021) -> + (hbind : @2032) -> + (hF : @1956) -> + (hA : @2033 @2035) -> + (hne : @1599 @1997 @1604) -> + @1687 (fun (ro : @1686) => @1688 (@1959 (@1568 @1624 @230) @4) (@1818 @1919 @4)) +@2057 := @2020 (@529 @1631 @1808) +@2058 := @1566 @1839 +@2069 := @1656 (@1842 @1561 @1468) (@1664 (@1469 (@1464 @943) (@1469 (@1466 @1170) @1468))) +@2070 := @1814 @1547 +@2072 := @1568 @77 @79 +@2088 := (hwt : @2058) -> + (hbind : @2069) -> + (hF : @1956) -> + (hA : @2070 @2072) -> + (hne : @1599 @2035 @1604) -> @1687 (fun (ro : @1686) => @1688 (@1959 @2000 @4) (@1818 @1863 @4)) +@2089 := @2057 @1565 +@2091 := @1842 @1457 @1468 +@2094 := @1656 @2091 (@1664 @1473) +@2095 := @1814 @1554 +@2097 := @1568 @79 @28 +@2112 := (hbind : @2094) -> + (hF : @1956) -> + (hA : @2095 @2097) -> + (hne : @1599 @2072 @1604) -> @1687 (fun (ro : @1686) => @1688 (@1959 @1997 @4) (@1818 @1857 @4)) +@2115 := @2089 (@529 @1655 @2091) +@2116 := @1814 @1561 +@2118 := @1568 @28 @30 +@2132 := (hF : @1956) -> + (hA : @2116 @2118) -> + (hne : @1599 @2097 @1604) -> @1687 (fun (ro : @1686) => @1688 (@1959 @2035 @4) (@1818 @1900 @4)) +@2135 := @2115 (@529 @1667 @1811) +@2149 := (hA : @1814 @1457 @1570) -> + (hne : @1599 @2118 @1604) -> @1687 (fun (ro : @1686) => @1688 (@1959 @2072 @4) (@1818 @1547 @4)) +@2150 := @2135 @1595 +@2161 := (hne : @1599 @1570 @1604) -> + @1687 (fun (ro : @1686) => @1688 (@1959 @2097 @4) (@1818 @1554 @4)) +@2162 := @2150 @1617 +@2168 := @1688 (@1959 @2118 @4) (@1818 @1561 @4) +@2170 := @1687 (fun (ro : @1686) => @2168) +@2172 := @1687 (fun (__e_ro : @1686) => @2168) +@2175 := LexLeanPreservation.Rust.RepresentableL (@1095 @922) +@2176 := (__e_hrep : @2175) -> @2172 +@2177 := fun (__e_hrep : @2175) => @2162 +@2178 := (expected : @610) -> @2176 +@2179 := fun (expected : @610) => @2177 +@2180 := (stdout : @27) -> @2178 +@2181 := fun (stdout : @27) => @2179 +\end{coremodule} +\end{lexlean} diff --git a/bootstrap/expected/verify/preserve/LexLeanPreserve/C5ba510b7049a3e59c5f1ffb1f0a6611d/R1/RustStd.lean b/bootstrap/expected/verify/preserve/LexLeanPreserve/C5ba510b7049a3e59c5f1ffb1f0a6611d/R1/RustStd.lean new file mode 100644 index 000000000..ea28c8026 --- /dev/null +++ b/bootstrap/expected/verify/preserve/LexLeanPreserve/C5ba510b7049a3e59c5f1ffb1f0a6611d/R1/RustStd.lean @@ -0,0 +1,842 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [{ constructors := [[.bytes, (.option .bytes)]] }, + { constructors := [[(.list (.adt 2)), (.list .bytes)], [(.list (.adt 2)), (.list .bytes), .bytes, (.option .bytes)], [(.adt 0)]] }, + { constructors := [[.bytes, (.list .bytes), (.option .bytes)]] }], functions := (( + { parameters := [0, 1], types := [.bytes, (.list .bytes)], result := (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), + body := (.call 1 [(.call 2 [(.closure 3 []), (.build (.adt 0) (.adt 1) [(.build .nil (.list (.adt 2)) []), (.var 1)]), (.call 4 [(.var 0)])]), (.var 1)]) }) ::( + { parameters := [0, 1], types := [(.adt 1), (.list .bytes)], result := (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), + body := (.«match» (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) (.var 0) [(.arm (.adt 2) [2] (.build .error (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) [(.var 2)])), (.arm (.adt 1) [3, 4, 5, 6] (.call 5 [(.call 6 [(.call 7 [(.value .string (.string "unterminated axiom payload: "))]), (.var 5)]), (.var 6)])), (.arm (.adt 0) [7, 8] (.«let» 9 (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) (.call 5 [(.call 6 [(.call 6 [(.call 6 [(.call 7 [(.value .string (.string "expected "))]), (.call 8 [(.call 9 [(.var 1)])])]), (.call 7 [(.value .string (.string " audit records, found "))])]), (.call 8 [(.call 10 [(.var 7)])])]), (.build .none (.option .bytes) [])]) (.cond (.prim .natEq [(.call 10 [(.var 7)]), (.call 9 [(.var 1)])]) (.call 11 [(.closure 12 []), (.build .ok (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) [(.build .nil (.list (.pair .bytes (.list .bytes))) [])]), (.call 13 [(.var 7)])]) (.var 9))))]) }) ::( + { parameters := [0, 1, 2], types := [(.fn [(.adt 1), .bytes] (.adt 1)), (.adt 1), (.list .bytes)], result := (.adt 1), + body := (.«match» (.adt 1) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 2 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }) ::( + { parameters := [0, 1], types := [(.adt 1), .bytes], result := (.adt 1), + body := (.call 14 [(.var 0), (.var 1)]) }) ::( + { parameters := [0], types := [.bytes], result := (.list .bytes), + body := (.«let» 1 .nat (.prim .length [(.var 0)]) (.«let» 2 (.pair .nat (.pair .nat (.list .bytes))) (.first (.call 15 [(.closure 16 [(.var 0)]), (.var 1), (.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.value .nat (.nat 0)), (.build .pair (.pair .nat (.list .bytes)) [(.value .nat (.nat 0)), (.build .nil (.list .bytes) [])])])])) (.«let» 3 .nat (.first (.second (.var 2))) (.«let» 4 (.list .bytes) (.second (.second (.var 2))) (.cond (.prim .natLt [(.var 3), (.var 1)]) (.call 17 [(.build .cons (.list .bytes) [(.call 18 [(.var 0), (.var 3), (.prim .natSub [(.var 1), (.var 3)])]), (.var 4)])]) (.call 17 [(.var 4)])))))) }) ::( + { parameters := [0, 1], types := [.bytes, (.option .bytes)], result := (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), + body := (.build .error (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) [(.call 19 [(.var 0), (.var 1)])]) }) ::( + { parameters := [0, 1], types := [.bytes, .bytes], result := .bytes, + body := (.prim .append [(.var 0), (.var 1)]) }) ::( + { parameters := [0], types := [.string], result := .bytes, + body := (.prim .utf8Encode [(.var 0)]) }) ::( + { parameters := [0], types := [.nat], result := .bytes, + body := (.«let» 1 .bytes (.call 7 [(.value .string (.string "0"))]) (.«let» 2 .bytes (.call 20 [(.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 10000000000000000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 1000000000000000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 100000000000000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 10000000000000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 1000000000000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 100000000000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 10000000000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 1000000000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 100000000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 10000000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 1000000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 100000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 10000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 1000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 100000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 10000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 1000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 100))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 10))]), (.call 21 [(.var 0), (.value .nat (.nat 1))])])])])])])])])])])])])])])])])])])])])]) (.cond (.prim .natEq [(.var 0), (.value .nat (.nat 0))]) (.var 1) (.var 2)))) }) ::( + { parameters := [0], types := [(.list .bytes)], result := .nat, + body := (.call 22 [(.closure 23 []), (.value .nat (.nat 0)), (.var 0)]) }) ::( + { parameters := [0], types := [(.list (.adt 2))], result := .nat, + body := (.call 24 [(.closure 25 []), (.value .nat (.nat 0)), (.var 0)]) }) ::( + { parameters := [0, 1, 2], types := [(.fn [(.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (.adt 2)] (.result (.list (.pair .bytes (.list .bytes))) (.adt 0))), (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (.list (.adt 2))], result := (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), + body := (.«match» (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 11 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }) ::( + { parameters := [0, 1], types := [(.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (.adt 2)], result := (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), + body := (.call 26 [(.var 0), (.var 1)]) }) ::( + { parameters := [0], types := [(.list (.adt 2))], result := (.list (.adt 2)), + body := (.call 27 [(.closure 28 []), (.build .nil (.list (.adt 2)) []), (.var 0)]) }) ::( + { parameters := [0, 1], types := [(.adt 1), .bytes], result := (.adt 1), + body := (.«match» (.adt 1) (.var 0) [(.arm (.adt 2) [2] (.var 0)), (.arm (.adt 1) [3, 4, 5, 6] (.«match» (.adt 1) (.call 29 [(.var 1)]) [(.arm .some [7] (.call 30 [(.var 3), (.var 4), (.call 6 [(.call 6 [(.var 5), (.call 7 [(.value .string (.string " "))])]), (.var 7)]), (.var 6)])), (.arm .none [] (.call 31 [(.call 6 [(.call 7 [(.value .string (.string "unterminated axiom payload: "))]), (.var 5)]), (.var 6)]))])), (.arm (.adt 0) [8, 9] (.cond (.prim .natEq [(.value .nat (.nat 0)), (.prim .length [(.call 32 [(.var 1)])])]) (.var 0) (.«match» (.adt 1) (.call 33 [(.call 32 [(.var 1)])]) [(.arm .some [10] (.call 30 [(.var 8), (.var 9), (.var 10), (.call 34 [(.var 9)])])), (.arm .none [] (.call 31 [(.call 6 [(.call 7 [(.value .string (.string "unrecognized audit line: "))]), (.call 32 [(.var 1)])]), (.call 34 [(.var 9)])]))])))]) }) ::( + { parameters := [0, 1, 2], types := [(.fn [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes))))), .nat, (.pair .nat (.pair .nat (.list .bytes)))], result := (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool), + body := (.«match» (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 15 [(.var 0), (.var 3), (.var 4)]))]))]) }) ::( + { parameters := [0, 1], types := [.bytes, (.pair .nat (.pair .nat (.list .bytes)))], result := (.option (.pair .nat (.pair .nat (.list .bytes)))), + body := (.call 35 [(.var 0), (.var 1)]) }) ::( + { parameters := [0], types := [(.list .bytes)], result := (.list .bytes), + body := (.call 36 [(.closure 37 []), (.build .nil (.list .bytes) []), (.var 0)]) }) ::( + { parameters := [0, 1, 2], types := [.bytes, .nat, .nat], result := .bytes, + body := (.«match» .bytes (.prim .slice [(.var 0), (.var 1), (.var 2)]) [(.arm .some [3] (.var 3)), (.arm .none [] (.value .bytes (.bytes (ByteArray.mk #[]))))]) }) ::( + { parameters := [0, 1], types := [.bytes, (.option .bytes)], result := (.adt 0), + body := (.build (.adt 0) (.adt 0) [(.var 0), (.var 1)]) }) ::( + { parameters := [0], types := [.bytes], result := .bytes, + body := (.«let» 1 .nat (.first (.call 38 [(.closure 39 [(.var 0)]), (.prim .length [(.var 0)]), (.value .nat (.nat 0))])) (.call 18 [(.var 0), (.var 1), (.prim .natSub [(.prim .length [(.var 0)]), (.var 1)])])) }) ::( + { parameters := [0, 1], types := [.nat, .nat], result := .bytes, + body := (.call 18 [(.call 7 [(.value .string (.string "0123456789"))]), (.prim .natRem [(.prim .natQuot [(.var 0), (.var 1), (.value .nat (.nat 0))]), (.value .nat (.nat 10)), (.value .nat (.nat 0))]), (.value .nat (.nat 1))]) }) ::( + { parameters := [0, 1, 2], types := [(.fn [.nat, .bytes] .nat), .nat, (.list .bytes)], result := .nat, + body := (.«match» .nat (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 22 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }) ::( + { parameters := [0, 1], types := [.nat, .bytes], result := .nat, + body := (.prim .natAdd [(.var 0), (.value .nat (.nat 1))]) }) ::( + { parameters := [0, 1, 2], types := [(.fn [.nat, (.adt 2)] .nat), .nat, (.list (.adt 2))], result := .nat, + body := (.«match» .nat (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 24 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }) ::( + { parameters := [0, 1], types := [.nat, (.adt 2)], result := .nat, + body := (.prim .natAdd [(.var 0), (.value .nat (.nat 1))]) }) ::( + { parameters := [0, 1], types := [(.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (.adt 2)], result := (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), + body := (.«match» (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) (.var 0) [(.arm .error [2] (.var 0)), (.arm .ok [3] (.«let» 5 .bytes (.«match» .bytes (.field (.var 1) 2) [(.arm .some [4] (.var 4)), (.arm .none [] (.value .bytes (.bytes (ByteArray.mk #[]))))]) (.«let» 6 (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) (.call 5 [(.call 6 [(.call 7 [(.value .string (.string "duplicate record for "))]), (.call 40 [(.field (.var 1) 0)])]), (.build .some (.option .bytes) [(.var 5)])]) (.«let» 7 (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) (.call 5 [(.call 6 [(.call 6 [(.call 6 [(.call 7 [(.value .string (.string "expected a record for "))]), (.call 40 [(.var 5)])]), (.call 7 [(.value .string (.string ", found "))])]), (.call 40 [(.field (.var 1) 0)])]), (.build .some (.option .bytes) [(.var 5)])]) (.cond (.prim .equal [(.field (.var 1) 0), (.var 5)]) (.«match» (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) (.call 41 [(.field (.var 1) 0), (.field (.var 1) 1), (.var 3)]) [(.arm .some [8] (.build .ok (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) [(.var 8)])), (.arm .none [] (.var 6))]) (.var 7))))))]) }) ::( + { parameters := [0, 1, 2], types := [(.fn [(.list (.adt 2)), (.adt 2)] (.list (.adt 2))), (.list (.adt 2)), (.list (.adt 2))], result := (.list (.adt 2)), + body := (.«match» (.list (.adt 2)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 27 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }) ::( + { parameters := [0, 1], types := [(.list (.adt 2)), (.adt 2)], result := (.list (.adt 2)), + body := (.build .cons (.list (.adt 2)) [(.var 1), (.var 0)]) }) ::( + { parameters := [0], types := [.bytes], result := (.option .bytes), + body := (.«let» 1 .bytes (.call 32 [(.var 0)]) (.cond (.call 42 [(.var 0)]) (.cond (.prim .natEq [(.value .nat (.nat 0)), (.prim .length [(.var 1)])]) (.build .none (.option .bytes) []) (.build .some (.option .bytes) [(.var 1)])) (.build .none (.option .bytes) []))) }) ::( + { parameters := [0, 1, 2, 3], types := [(.list (.adt 2)), (.list .bytes), .bytes, (.option .bytes)], result := (.adt 1), + body := (.cond (.call 43 [(.var 2)]) (.«match» (.adt 1) (.call 44 [(.var 2)]) [(.arm .error [4] (.call 31 [(.var 4), (.var 3)])), (.arm .ok [5] (.build (.adt 0) (.adt 1) [(.build .cons (.list (.adt 2)) [(.build (.adt 0) (.adt 2) [(.first (.var 5)), (.second (.var 5)), (.var 3)]), (.var 0)]), (.call 45 [(.var 1)])]))]) (.build (.adt 1) (.adt 1) [(.var 0), (.var 1), (.var 2), (.var 3)])) }) ::( + { parameters := [0, 1], types := [.bytes, (.option .bytes)], result := (.adt 1), + body := (.build (.adt 2) (.adt 1) [(.call 19 [(.var 0), (.var 1)])]) }) ::( + { parameters := [0], types := [.bytes], result := .bytes, + body := (.«let» 1 .nat (.call 46 [(.var 0)]) (.«let» 2 .nat (.call 47 [(.var 0), (.var 1)]) (.call 18 [(.var 0), (.var 1), (.prim .natSub [(.var 2), (.var 1)])]))) }) ::( + { parameters := [0], types := [.bytes], result := (.option .bytes), + body := (.cond (.call 48 [(.var 0), (.call 7 [(.value .string (.string "'"))])]) (.build .some (.option .bytes) [(.var 0)]) (.«match» (.option .bytes) (.call 49 [(.var 0), (.call 7 [(.value .string (.string "info: "))])]) [(.arm .some [1] (.build .some (.option .bytes) [(.var 1)])), (.arm .none [] (.call 50 [(.var 0)]))])) }) ::( + { parameters := [0], types := [(.list .bytes)], result := (.option .bytes), + body := (.«match» (.option .bytes) (.var 0) [(.arm .nil [] (.build .none (.option .bytes) [])), (.arm .cons [1, 2] (.build .some (.option .bytes) [(.var 1)]))]) }) ::( + { parameters := [0, 1], types := [.bytes, (.pair .nat (.pair .nat (.list .bytes)))], result := (.option (.pair .nat (.pair .nat (.list .bytes)))), + body := (.«let» 2 .nat (.first (.var 1)) (.«let» 3 .nat (.first (.second (.var 1))) (.«let» 4 (.list .bytes) (.second (.second (.var 1))) (.«match» (.option (.pair .nat (.pair .nat (.list .bytes)))) (.call 51 [(.var 0), (.var 2)]) [(.arm .some [5] (.cond (.prim .equal [(.var 5), (.value (.fixed .u8) (.u8 10))]) (.build .some (.option (.pair .nat (.pair .nat (.list .bytes)))) [(.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.prim .natAdd [(.var 2), (.value .nat (.nat 1))]), (.build .pair (.pair .nat (.list .bytes)) [(.prim .natAdd [(.var 2), (.value .nat (.nat 1))]), (.build .cons (.list .bytes) [(.call 52 [(.call 18 [(.var 0), (.var 3), (.prim .natSub [(.var 2), (.var 3)])])]), (.var 4)])])])]) (.build .some (.option (.pair .nat (.pair .nat (.list .bytes)))) [(.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.prim .natAdd [(.var 2), (.value .nat (.nat 1))]), (.build .pair (.pair .nat (.list .bytes)) [(.var 3), (.var 4)])])]))), (.arm .none [] (.build .none (.option (.pair .nat (.pair .nat (.list .bytes)))) []))])))) }) ::( + { parameters := [0, 1, 2], types := [(.fn [(.list .bytes), .bytes] (.list .bytes)), (.list .bytes), (.list .bytes)], result := (.list .bytes), + body := (.«match» (.list .bytes) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 36 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }) ::( + { parameters := [0, 1], types := [(.list .bytes), .bytes], result := (.list .bytes), + body := (.build .cons (.list .bytes) [(.var 1), (.var 0)]) }) ::( + { parameters := [0, 1, 2], types := [(.fn [.nat] (.option .nat)), .nat, .nat], result := (.pair .nat .bool), + body := (.«match» (.pair .nat .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair .nat .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair .nat .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair .nat .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 38 [(.var 0), (.var 3), (.var 4)]))]))]) }) ::( + { parameters := [0, 1], types := [.bytes, .nat], result := (.option .nat), + body := (.call 53 [(.var 0), (.var 1)]) }) ::( + { parameters := [0], types := [.bytes], result := .bytes, + body := (.call 6 [(.call 6 [(.call 7 [(.value .string (.string "`"))]), (.var 0)]), (.call 7 [(.value .string (.string "`"))])]) }) ::( + { parameters := [0, 1, 2], types := [.bytes, (.list .bytes), (.list (.pair .bytes (.list .bytes)))], result := (.option (.list (.pair .bytes (.list .bytes)))), + body := (.«match» (.option (.list (.pair .bytes (.list .bytes)))) (.var 2) [(.arm .nil [] (.build .some (.option (.list (.pair .bytes (.list .bytes)))) [(.build .cons (.list (.pair .bytes (.list .bytes))) [(.build .pair (.pair .bytes (.list .bytes)) [(.var 0), (.var 1)]), (.build .nil (.list (.pair .bytes (.list .bytes))) [])])])), (.arm .cons [3, 4] (.cond (.prim .equal [(.var 0), (.first (.var 3))]) (.build .none (.option (.list (.pair .bytes (.list .bytes)))) []) (.cond (.call 54 [(.var 0), (.first (.var 3))]) (.build .some (.option (.list (.pair .bytes (.list .bytes)))) [(.build .cons (.list (.pair .bytes (.list .bytes))) [(.build .pair (.pair .bytes (.list .bytes)) [(.var 0), (.var 1)]), (.build .cons (.list (.pair .bytes (.list .bytes))) [(.var 3), (.var 4)])])]) (.«match» (.option (.list (.pair .bytes (.list .bytes)))) (.call 41 [(.var 0), (.var 1), (.var 4)]) [(.arm .some [5] (.build .some (.option (.list (.pair .bytes (.list .bytes)))) [(.build .cons (.list (.pair .bytes (.list .bytes))) [(.var 3), (.var 5)])])), (.arm .none [] (.build .none (.option (.list (.pair .bytes (.list .bytes)))) []))]))))]) }) ::( + { parameters := [0], types := [.bytes], result := .bool, + body := (.prim .natLt [(.value .nat (.nat 0)), (.call 55 [(.var 0), (.value .nat (.nat 0))])]) }) ::( + { parameters := [0], types := [.bytes], result := .bool, + body := (.«match» .bool (.call 56 [(.var 0), (.call 7 [(.value .string (.string "]"))])]) [(.arm .some [1] (.build .true .bool [])), (.arm .none [] (.«match» .bool (.call 56 [(.var 0), (.call 7 [(.value .string (.string " does not depend on any axioms"))])]) [(.arm .some [2] (.build .true .bool [])), (.arm .none [] (.build .false .bool []))]))]) }) ::( + { parameters := [0], types := [.bytes], result := (.result (.pair .bytes (.list .bytes)) .bytes), + body := (.«match» (.result (.pair .bytes (.list .bytes)) .bytes) (.call 49 [(.var 0), (.call 7 [(.value .string (.string "'"))])]) [(.arm .none [] (.call 57 [(.var 0)])), (.arm .some [1] (.«match» (.result (.pair .bytes (.list .bytes)) .bytes) (.call 56 [(.var 1), (.call 7 [(.value .string (.string "' does not depend on any axioms"))])]) [(.arm .some [2] (.«let» 3 (.result (.pair .bytes (.list .bytes)) .bytes) (.call 58 [(.var 2), (.build .nil (.list .bytes) [])]) (.«let» 4 (.result (.pair .bytes (.list .bytes)) .bytes) (.call 59 [(.call 60 [(.var 2)])]) (.cond (.call 61 [(.var 2)]) (.var 3) (.var 4))))), (.arm .none [] (.«match» (.result (.pair .bytes (.list .bytes)) .bytes) (.call 56 [(.var 1), (.call 7 [(.value .string (.string "]"))])]) [(.arm .some [5] (.call 62 [(.var 0), (.var 5)])), (.arm .none [] (.call 57 [(.var 0)]))]))]))]) }) ::( + { parameters := [0], types := [(.list .bytes)], result := (.list .bytes), + body := (.«match» (.list .bytes) (.var 0) [(.arm .nil [] (.build .nil (.list .bytes) [])), (.arm .cons [1, 2] (.var 2))]) }) ::( + { parameters := [0], types := [.bytes], result := .nat, + body := (.first (.call 38 [(.closure 63 [(.var 0)]), (.prim .length [(.var 0)]), (.value .nat (.nat 0))])) }) ::( + { parameters := [0, 1], types := [.bytes, .nat], result := .nat, + body := (.first (.call 38 [(.closure 64 [(.var 1), (.var 0)]), (.prim .length [(.var 0)]), (.prim .length [(.var 0)])])) }) ::( + { parameters := [0, 1], types := [.bytes, .bytes], result := .bool, + body := (.«match» .bool (.prim .slice [(.var 0), (.value .nat (.nat 0)), (.prim .length [(.var 1)])]) [(.arm .some [2] (.prim .equal [(.var 2), (.var 1)])), (.arm .none [] (.build .false .bool []))]) }) ::( + { parameters := [0, 1], types := [.bytes, .bytes], result := (.option .bytes), + body := (.cond (.call 48 [(.var 0), (.var 1)]) (.build .some (.option .bytes) [(.call 18 [(.var 0), (.prim .length [(.var 1)]), (.prim .natSub [(.prim .length [(.var 0)]), (.prim .length [(.var 1)])])])]) (.build .none (.option .bytes) [])) }) ::( + { parameters := [0], types := [.bytes], result := (.option .bytes), + body := (.«match» (.option .bytes) (.call 65 [(.var 0), (.call 7 [(.value .string (.string ":"))])]) [(.arm .some [1] (.«match» (.option .bytes) (.call 65 [(.second (.var 1)), (.call 7 [(.value .string (.string ":"))])]) [(.arm .some [2] (.«match» (.option .bytes) (.call 65 [(.second (.var 2)), (.call 7 [(.value .string (.string ":"))])]) [(.arm .some [3] (.«let» 4 .bytes (.first (.var 2)) (.«let» 5 .bytes (.first (.var 3)) (.«let» 6 .bytes (.second (.var 3)) (.«let» 7 (.option .bytes) (.call 66 [(.var 5), (.var 6)]) (.cond (.call 67 [(.var 4)]) (.var 7) (.build .none (.option .bytes) []))))))), (.arm .none [] (.build .none (.option .bytes) []))])), (.arm .none [] (.build .none (.option .bytes) []))])), (.arm .none [] (.build .none (.option .bytes) []))]) }) ::( + { parameters := [0, 1], types := [.bytes, .nat], result := (.option (.fixed .u8)), + body := (.prim .index [(.var 0), (.var 1)]) }) ::( + { parameters := [0], types := [.bytes], result := .bytes, + body := (.cond (.call 68 [(.var 0), (.value .bytes (.bytes (ByteArray.mk #[13])))]) (.call 18 [(.var 0), (.value .nat (.nat 0)), (.prim .natSub [(.prim .length [(.var 0)]), (.value .nat (.nat 1))])]) (.var 0)) }) ::( + { parameters := [0, 1], types := [.bytes, .nat], result := (.option .nat), + body := (.cond (.call 69 [(.var 0), (.var 1), (.value (.fixed .u8) (.u8 48))]) (.build .some (.option .nat) [(.prim .natAdd [(.var 1), (.value .nat (.nat 1))])]) (.build .none (.option .nat) [])) }) ::( + { parameters := [0, 1], types := [.bytes, .bytes], result := .bool, + body := (.prim .equal [(.prim .compareBytes [(.var 0), (.var 1)]), (.prim .compareBytes [(.value .bytes (.bytes (ByteArray.mk #[]))), (.value .bytes (.bytes (ByteArray.mk #[1])))])]) }) ::( + { parameters := [0, 1], types := [.bytes, .nat], result := .nat, + body := (.cond (.cond (.call 70 [(.var 0), (.var 1), (.value (.fixed .u8) (.u8 9)), (.value (.fixed .u8) (.u8 13))]) (.build .true .bool []) (.cond (.call 69 [(.var 0), (.var 1), (.value (.fixed .u8) (.u8 32))]) (.build .true .bool []) (.build .false .bool []))) (.value .nat (.nat 1)) (.cond (.call 69 [(.var 0), (.var 1), (.value (.fixed .u8) (.u8 194))]) (.cond (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 1))]), (.value (.fixed .u8) (.u8 133))]) (.build .true .bool []) (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 1))]), (.value (.fixed .u8) (.u8 160))]) (.build .true .bool []) (.build .false .bool []))) (.value .nat (.nat 2)) (.value .nat (.nat 0))) (.cond (.call 69 [(.var 0), (.var 1), (.value (.fixed .u8) (.u8 225))]) (.cond (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 1))]), (.value (.fixed .u8) (.u8 154))]) (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 2))]), (.value (.fixed .u8) (.u8 128))]) (.build .true .bool []) (.build .false .bool [])) (.build .false .bool [])) (.value .nat (.nat 3)) (.value .nat (.nat 0))) (.cond (.call 69 [(.var 0), (.var 1), (.value (.fixed .u8) (.u8 226))]) (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 1))]), (.value (.fixed .u8) (.u8 128))]) (.cond (.cond (.call 70 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 2))]), (.value (.fixed .u8) (.u8 128)), (.value (.fixed .u8) (.u8 138))]) (.build .true .bool []) (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 2))]), (.value (.fixed .u8) (.u8 168))]) (.build .true .bool []) (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 2))]), (.value (.fixed .u8) (.u8 169))]) (.build .true .bool []) (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 2))]), (.value (.fixed .u8) (.u8 175))]) (.build .true .bool []) (.build .false .bool []))))) (.value .nat (.nat 3)) (.value .nat (.nat 0))) (.cond (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 1))]), (.value (.fixed .u8) (.u8 129))]) (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 2))]), (.value (.fixed .u8) (.u8 159))]) (.build .true .bool []) (.build .false .bool [])) (.build .false .bool [])) (.value .nat (.nat 3)) (.value .nat (.nat 0)))) (.cond (.call 69 [(.var 0), (.var 1), (.value (.fixed .u8) (.u8 227))]) (.cond (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 1))]), (.value (.fixed .u8) (.u8 128))]) (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 2))]), (.value (.fixed .u8) (.u8 128))]) (.build .true .bool []) (.build .false .bool [])) (.build .false .bool [])) (.value .nat (.nat 3)) (.value .nat (.nat 0))) (.value .nat (.nat 0))))))) }) ::( + { parameters := [0, 1], types := [.bytes, .bytes], result := (.option .bytes), + body := (.cond (.call 68 [(.var 0), (.var 1)]) (.build .some (.option .bytes) [(.call 18 [(.var 0), (.value .nat (.nat 0)), (.prim .natSub [(.prim .length [(.var 0)]), (.prim .length [(.var 1)])])])]) (.build .none (.option .bytes) [])) }) ::( + { parameters := [0], types := [.bytes], result := (.result (.pair .bytes (.list .bytes)) .bytes), + body := (.call 59 [(.call 6 [(.call 7 [(.value .string (.string "unrecognized axiom payload: "))]), (.var 0)])]) }) ::( + { parameters := [0, 1], types := [.bytes, (.list .bytes)], result := (.result (.pair .bytes (.list .bytes)) .bytes), + body := (.build .ok (.result (.pair .bytes (.list .bytes)) .bytes) [(.build .pair (.pair .bytes (.list .bytes)) [(.var 0), (.var 1)])]) }) ::( + { parameters := [0], types := [.bytes], result := (.result (.pair .bytes (.list .bytes)) .bytes), + body := (.build .error (.result (.pair .bytes (.list .bytes)) .bytes) [(.var 0)]) }) ::( + { parameters := [0], types := [.bytes], result := .bytes, + body := (.call 6 [(.call 40 [(.var 0)]), (.call 7 [(.value .string (.string " is not a Lean name"))])]) }) ::( + { parameters := [0], types := [.bytes], result := .bool, + body := (.prim .natEq [(.second (.first (.call 71 [(.closure 72 [(.var 0)]), (.prim .length [(.var 0)]), (.build .pair (.pair .nat .nat) [(.value .nat (.nat 0)), (.value .nat (.nat 0))])]))), (.value .nat (.nat 1))]) }) ::( + { parameters := [0, 1], types := [.bytes, .bytes], result := (.result (.pair .bytes (.list .bytes)) .bytes), + body := (.«match» (.result (.pair .bytes (.list .bytes)) .bytes) (.call 73 [(.var 1), (.call 7 [(.value .string (.string "' depends on axioms: ["))])]) [(.arm .some [2] (.«let» 3 .bytes (.first (.var 2)) (.«let» 4 .bytes (.second (.var 2)) (.«let» 5 (.result (.pair .bytes (.list .bytes)) .bytes) (.call 74 [(.var 3), (.var 4)]) (.«let» 6 (.result (.pair .bytes (.list .bytes)) .bytes) (.call 59 [(.call 60 [(.var 3)])]) (.cond (.call 61 [(.var 3)]) (.var 5) (.var 6))))))), (.arm .none [] (.call 57 [(.var 0)]))]) }) ::( + { parameters := [0, 1], types := [.bytes, .nat], result := (.option .nat), + body := (.cond (.prim .natLt [(.value .nat (.nat 0)), (.call 55 [(.var 0), (.var 1)])]) (.build .some (.option .nat) [(.prim .natAdd [(.var 1), (.call 55 [(.var 0), (.var 1)])])]) (.build .none (.option .nat) [])) }) ::( + { parameters := [0, 1, 2], types := [.nat, .bytes, .nat], result := (.option .nat), + body := (.cond (.cond (.prim .natLt [(.value .nat (.nat 0)), (.call 75 [(.var 1), (.var 2)])]) (.prim .natLe [(.prim .natAdd [(.var 0), (.call 75 [(.var 1), (.var 2)])]), (.var 2)]) (.build .false .bool [])) (.build .some (.option .nat) [(.prim .natSub [(.var 2), (.call 75 [(.var 1), (.var 2)])])]) (.build .none (.option .nat) [])) }) ::( + { parameters := [0, 1], types := [.bytes, .bytes], result := (.option (.pair .bytes .bytes)), + body := (.«match» (.option (.pair .bytes .bytes)) (.call 76 [(.var 0), (.var 1)]) [(.arm .some [2] (.build .some (.option (.pair .bytes .bytes)) [(.build .pair (.pair .bytes .bytes) [(.call 18 [(.var 0), (.value .nat (.nat 0)), (.var 2)]), (.call 18 [(.var 0), (.prim .natAdd [(.var 2), (.prim .length [(.var 1)])]), (.prim .natSub [(.prim .length [(.var 0)]), (.prim .natAdd [(.var 2), (.prim .length [(.var 1)])])])])])])), (.arm .none [] (.build .none (.option (.pair .bytes .bytes)) []))]) }) ::( + { parameters := [0, 1], types := [.bytes, .bytes], result := (.option .bytes), + body := (.«match» (.option .bytes) (.call 65 [(.var 0), (.call 7 [(.value .string (.string "-"))])]) [(.arm .some [2] (.«let» 3 .bytes (.first (.var 2)) (.«let» 4 .bytes (.second (.var 2)) (.«match» (.option .bytes) (.call 65 [(.var 1), (.call 7 [(.value .string (.string ":"))])]) [(.arm .some [5] (.«let» 6 .bytes (.first (.var 5)) (.«let» 7 .bytes (.second (.var 5)) (.«let» 8 (.option .bytes) (.call 77 [(.var 7)]) (.cond (.call 67 [(.var 3)]) (.cond (.call 67 [(.var 4)]) (.cond (.call 67 [(.var 6)]) (.var 8) (.build .none (.option .bytes) [])) (.build .none (.option .bytes) [])) (.build .none (.option .bytes) [])))))), (.arm .none [] (.build .none (.option .bytes) []))])))), (.arm .none [] (.«let» 9 (.option .bytes) (.call 77 [(.var 1)]) (.cond (.call 67 [(.var 0)]) (.var 9) (.build .none (.option .bytes) []))))]) }) ::( + { parameters := [0], types := [.bytes], result := .bool, + body := (.call 78 [(.call 32 [(.var 0)])]) }) ::( + { parameters := [0, 1], types := [.bytes, .bytes], result := .bool, + body := (.«let» 2 .nat (.prim .length [(.var 0)]) (.«let» 3 .nat (.prim .length [(.var 1)]) (.cond (.prim .natLe [(.var 3), (.var 2)]) (.«match» .bool (.prim .slice [(.var 0), (.prim .natSub [(.var 2), (.var 3)]), (.var 3)]) [(.arm .some [4] (.prim .equal [(.var 4), (.var 1)])), (.arm .none [] (.build .false .bool []))]) (.build .false .bool [])))) }) ::( + { parameters := [0, 1, 2], types := [.bytes, .nat, (.fixed .u8)], result := .bool, + body := (.«match» .bool (.call 51 [(.var 0), (.var 1)]) [(.arm .some [3] (.prim .equal [(.var 3), (.var 2)])), (.arm .none [] (.build .false .bool []))]) }) ::( + { parameters := [0, 1, 2, 3], types := [.bytes, .nat, (.fixed .u8), (.fixed .u8)], result := .bool, + body := (.«match» .bool (.call 51 [(.var 0), (.var 1)]) [(.arm .some [4] (.call 79 [(.var 4), (.var 2), (.var 3)])), (.arm .none [] (.build .false .bool []))]) }) ::( + { parameters := [0, 1, 2], types := [(.fn [(.pair .nat .nat)] (.option (.pair .nat .nat))), .nat, (.pair .nat .nat)], result := (.pair (.pair .nat .nat) .bool), + body := (.«match» (.pair (.pair .nat .nat) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.pair .nat .nat) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.pair .nat .nat) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.pair .nat .nat) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 71 [(.var 0), (.var 3), (.var 4)]))]))]) }) ::( + { parameters := [0, 1], types := [.bytes, (.pair .nat .nat)], result := (.option (.pair .nat .nat)), + body := (.call 80 [(.var 0), (.var 1)]) }) ::( + { parameters := [0, 1], types := [.bytes, .bytes], result := (.option (.pair .bytes .bytes)), + body := (.«let» 2 .nat (.prim .length [(.var 0)]) (.«let» 3 .nat (.prim .length [(.var 1)]) (.cond (.prim .natLt [(.var 2), (.var 3)]) (.build .none (.option (.pair .bytes .bytes)) []) (.«let» 4 .nat (.first (.call 38 [(.closure 81 [(.var 1), (.var 0)]), (.prim .natAdd [(.var 2), (.value .nat (.nat 1))]), (.prim .natSub [(.var 2), (.var 3)])])) (.cond (.call 82 [(.var 0), (.var 1), (.var 4)]) (.build .some (.option (.pair .bytes .bytes)) [(.build .pair (.pair .bytes .bytes) [(.call 18 [(.var 0), (.value .nat (.nat 0)), (.var 4)]), (.call 18 [(.var 0), (.prim .natAdd [(.var 4), (.var 3)]), (.prim .natSub [(.var 2), (.prim .natAdd [(.var 4), (.var 3)])])])])]) (.build .none (.option (.pair .bytes .bytes)) [])))))) }) ::( + { parameters := [0, 1], types := [.bytes, .bytes], result := (.result (.pair .bytes (.list .bytes)) .bytes), + body := (.«match» (.result (.pair .bytes (.list .bytes)) .bytes) (.call 83 [(.closure 84 []), (.build .ok (.result (.list .bytes) .bytes) [(.build .nil (.list .bytes) [])]), (.call 85 [(.var 1), (.value (.fixed .u8) (.u8 44))])]) [(.arm .error [2] (.call 59 [(.var 2)])), (.arm .ok [3] (.«match» (.result (.pair .bytes (.list .bytes)) .bytes) (.var 3) [(.arm .nil [] (.call 59 [(.call 7 [(.value .string (.string "an axiom list cannot be empty"))])])), (.arm .cons [4, 5] (.call 58 [(.var 0), (.var 3)]))]))]) }) ::( + { parameters := [0, 1], types := [.bytes, .nat], result := .nat, + body := (.cond (.prim .natEq [(.var 1), (.value .nat (.nat 0))]) (.value .nat (.nat 0)) (.cond (.prim .natEq [(.call 55 [(.var 0), (.prim .natSub [(.var 1), (.value .nat (.nat 1))])]), (.value .nat (.nat 1))]) (.value .nat (.nat 1)) (.cond (.cond (.prim .natLe [(.value .nat (.nat 2)), (.var 1)]) (.prim .natEq [(.call 55 [(.var 0), (.prim .natSub [(.var 1), (.value .nat (.nat 2))])]), (.value .nat (.nat 2))]) (.build .false .bool [])) (.value .nat (.nat 2)) (.cond (.cond (.prim .natLe [(.value .nat (.nat 3)), (.var 1)]) (.prim .natEq [(.call 55 [(.var 0), (.prim .natSub [(.var 1), (.value .nat (.nat 3))])]), (.value .nat (.nat 3))]) (.build .false .bool [])) (.value .nat (.nat 3)) (.value .nat (.nat 0)))))) }) ::( + { parameters := [0, 1], types := [.bytes, .bytes], result := (.option .nat), + body := (.«let» 2 .nat (.prim .length [(.var 0)]) (.«let» 3 .nat (.prim .length [(.var 1)]) (.«let» 4 .nat (.first (.call 38 [(.closure 86 [(.var 1), (.var 3), (.var 0), (.var 2)]), (.prim .natAdd [(.var 2), (.value .nat (.nat 1))]), (.value .nat (.nat 0))])) (.cond (.call 82 [(.var 0), (.var 1), (.var 4)]) (.build .some (.option .nat) [(.var 4)]) (.build .none (.option .nat) []))))) }) ::( + { parameters := [0], types := [.bytes], result := (.option .bytes), + body := (.«match» (.option .bytes) (.call 49 [(.var 0), (.call 7 [(.value .string (.string " "))])]) [(.arm .some [1] (.call 49 [(.var 1), (.call 7 [(.value .string (.string "info: "))])])), (.arm .none [] (.build .none (.option .bytes) []))]) }) ::( + { parameters := [0], types := [.bytes], result := .bool, + body := (.«let» 2 .bytes (.«match» .bytes (.call 49 [(.var 0), (.call 7 [(.value .string (.string "+"))])]) [(.arm .some [1] (.var 1)), (.arm .none [] (.var 0))]) (.«let» 3 .bool (.call 87 [(.call 20 [(.var 2)])]) (.cond (.prim .natLt [(.value .nat (.nat 0)), (.prim .length [(.var 2)])]) (.cond (.call 88 [(.var 2)]) (.var 3) (.build .false .bool [])) (.build .false .bool [])))) }) ::( + { parameters := [0, 1, 2], types := [(.fixed .u8), (.fixed .u8), (.fixed .u8)], result := .bool, + body := (.«match» .bool (.prim .checkedSub [(.var 0), (.var 1)]) [(.arm .some [3] (.«match» .bool (.prim .checkedSub [(.var 2), (.var 0)]) [(.arm .some [4] (.build .true .bool [])), (.arm .none [] (.build .false .bool []))])), (.arm .none [] (.build .false .bool []))]) }) ::( + { parameters := [0, 1], types := [.bytes, (.pair .nat .nat)], result := (.option (.pair .nat .nat)), + body := (.cond (.prim .natEq [(.second (.var 1)), (.value .nat (.nat 2))]) (.build .none (.option (.pair .nat .nat)) []) (.«match» (.option (.pair .nat .nat)) (.call 51 [(.var 0), (.first (.var 1))]) [(.arm .some [2] (.build .some (.option (.pair .nat .nat)) [(.build .pair (.pair .nat .nat) [(.prim .natAdd [(.first (.var 1)), (.value .nat (.nat 1))]), (.call 89 [(.second (.var 1)), (.var 2)])])])), (.arm .none [] (.build .none (.option (.pair .nat .nat)) []))])) }) ::( + { parameters := [0, 1, 2], types := [.bytes, .bytes, .nat], result := (.option .nat), + body := (.call 90 [(.var 1), (.var 0), (.var 2)]) }) ::( + { parameters := [0, 1, 2], types := [.bytes, .bytes, .nat], result := .bool, + body := (.«match» .bool (.prim .slice [(.var 0), (.var 2), (.prim .length [(.var 1)])]) [(.arm .some [3] (.prim .equal [(.var 3), (.var 1)])), (.arm .none [] (.build .false .bool []))]) }) ::( + { parameters := [0, 1, 2], types := [(.fn [(.result (.list .bytes) .bytes), .bytes] (.result (.list .bytes) .bytes)), (.result (.list .bytes) .bytes), (.list .bytes)], result := (.result (.list .bytes) .bytes), + body := (.«match» (.result (.list .bytes) .bytes) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 83 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }) ::( + { parameters := [0, 1], types := [(.result (.list .bytes) .bytes), .bytes], result := (.result (.list .bytes) .bytes), + body := (.call 91 [(.var 0), (.var 1)]) }) ::( + { parameters := [0, 1], types := [.bytes, (.fixed .u8)], result := (.list .bytes), + body := (.«let» 2 .nat (.prim .length [(.var 0)]) (.«let» 3 (.pair .nat (.pair .nat (.list .bytes))) (.first (.call 15 [(.closure 92 [(.var 1), (.var 0)]), (.var 2), (.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.value .nat (.nat 0)), (.build .pair (.pair .nat (.list .bytes)) [(.value .nat (.nat 0)), (.build .nil (.list .bytes) [])])])])) (.«let» 4 .nat (.first (.second (.var 3))) (.call 17 [(.build .cons (.list .bytes) [(.call 18 [(.var 0), (.var 4), (.prim .natSub [(.var 2), (.var 4)])]), (.second (.second (.var 3)))])])))) }) ::( + { parameters := [0, 1, 2, 3, 4], types := [.bytes, .nat, .bytes, .nat, .nat], result := (.option .nat), + body := (.cond (.call 82 [(.var 2), (.var 0), (.var 4)]) (.build .none (.option .nat) []) (.cond (.prim .natLt [(.prim .natAdd [(.var 4), (.var 1)]), (.var 3)]) (.build .some (.option .nat) [(.prim .natAdd [(.var 4), (.value .nat (.nat 1))])]) (.build .none (.option .nat) []))) }) ::( + { parameters := [0], types := [.bytes], result := .bool, + body := (.cond (.prim .natLt [(.prim .length [(.var 0)]), (.value .nat (.nat 20))]) (.build .true .bool []) (.cond (.prim .natEq [(.prim .length [(.var 0)]), (.value .nat (.nat 20))]) (.prim .boolNot [(.prim .equal [(.prim .compareBytes [(.var 0), (.call 7 [(.value .string (.string "18446744073709551615"))])]), (.prim .compareBytes [(.value .bytes (.bytes (ByteArray.mk #[1]))), (.value .bytes (.bytes (ByteArray.mk #[0])))])])]) (.build .false .bool []))) }) ::( + { parameters := [0], types := [.bytes], result := .bool, + body := (.prim .natEq [(.first (.call 38 [(.closure 93 [(.var 0)]), (.prim .length [(.var 0)]), (.value .nat (.nat 0))])), (.prim .length [(.var 0)])]) }) ::( + { parameters := [0, 1], types := [.nat, (.fixed .u8)], result := .nat, + body := (.cond (.prim .natEq [(.var 0), (.value .nat (.nat 2))]) (.value .nat (.nat 2)) (.cond (.prim .equal [(.var 1), (.value (.fixed .u8) (.u8 46))]) (.cond (.prim .natEq [(.var 0), (.value .nat (.nat 1))]) (.value .nat (.nat 0)) (.value .nat (.nat 2))) (.cond (.call 94 [(.var 1)]) (.value .nat (.nat 1)) (.cond (.prim .natEq [(.var 0), (.value .nat (.nat 1))]) (.cond (.call 95 [(.var 1)]) (.value .nat (.nat 1)) (.value .nat (.nat 2))) (.value .nat (.nat 2)))))) }) ::( + { parameters := [0, 1, 2], types := [.bytes, .bytes, .nat], result := (.option .nat), + body := (.cond (.call 82 [(.var 0), (.var 1), (.var 2)]) (.build .none (.option .nat) []) (.cond (.prim .natLt [(.value .nat (.nat 0)), (.var 2)]) (.build .some (.option .nat) [(.prim .natSub [(.var 2), (.value .nat (.nat 1))])]) (.build .none (.option .nat) []))) }) ::( + { parameters := [0, 1], types := [(.result (.list .bytes) .bytes), .bytes], result := (.result (.list .bytes) .bytes), + body := (.«match» (.result (.list .bytes) .bytes) (.var 0) [(.arm .error [2] (.var 0)), (.arm .ok [3] (.«let» 4 .bytes (.call 32 [(.var 1)]) (.cond (.call 61 [(.var 4)]) (.«match» (.result (.list .bytes) .bytes) (.call 96 [(.var 4), (.var 3)]) [(.arm .some [5] (.build .ok (.result (.list .bytes) .bytes) [(.var 5)])), (.arm .none [] (.build .error (.result (.list .bytes) .bytes) [(.call 6 [(.call 7 [(.value .string (.string "duplicate axiom name "))]), (.call 40 [(.var 4)])])]))]) (.build .error (.result (.list .bytes) .bytes) [(.call 60 [(.var 4)])]))))]) }) ::( + { parameters := [0, 1, 2], types := [(.fixed .u8), .bytes, (.pair .nat (.pair .nat (.list .bytes)))], result := (.option (.pair .nat (.pair .nat (.list .bytes)))), + body := (.call 97 [(.var 1), (.var 0), (.var 2)]) }) ::( + { parameters := [0, 1], types := [.bytes, .nat], result := (.option .nat), + body := (.call 98 [(.var 0), (.var 1)]) }) ::( + { parameters := [0], types := [(.fixed .u8)], result := .bool, + body := (.cond (.call 79 [(.var 0), (.value (.fixed .u8) (.u8 65)), (.value (.fixed .u8) (.u8 90))]) (.build .true .bool []) (.cond (.call 79 [(.var 0), (.value (.fixed .u8) (.u8 97)), (.value (.fixed .u8) (.u8 122))]) (.build .true .bool []) (.prim .equal [(.var 0), (.value (.fixed .u8) (.u8 95))]))) }) ::( + { parameters := [0], types := [(.fixed .u8)], result := .bool, + body := (.cond (.call 94 [(.var 0)]) (.build .true .bool []) (.cond (.call 79 [(.var 0), (.value (.fixed .u8) (.u8 48)), (.value (.fixed .u8) (.u8 57))]) (.build .true .bool []) (.cond (.prim .equal [(.var 0), (.value (.fixed .u8) (.u8 63))]) (.build .true .bool []) (.prim .equal [(.var 0), (.value (.fixed .u8) (.u8 39))])))) }) ::( + { parameters := [0, 1], types := [.bytes, (.list .bytes)], result := (.option (.list .bytes)), + body := (.«match» (.option (.list .bytes)) (.var 1) [(.arm .nil [] (.build .some (.option (.list .bytes)) [(.build .cons (.list .bytes) [(.var 0), (.build .nil (.list .bytes) [])])])), (.arm .cons [2, 3] (.cond (.prim .equal [(.var 0), (.var 2)]) (.build .none (.option (.list .bytes)) []) (.cond (.call 54 [(.var 0), (.var 2)]) (.build .some (.option (.list .bytes)) [(.build .cons (.list .bytes) [(.var 0), (.build .cons (.list .bytes) [(.var 2), (.var 3)])])]) (.«match» (.option (.list .bytes)) (.call 96 [(.var 0), (.var 3)]) [(.arm .some [4] (.build .some (.option (.list .bytes)) [(.build .cons (.list .bytes) [(.var 2), (.var 4)])])), (.arm .none [] (.build .none (.option (.list .bytes)) []))]))))]) }) ::( + { parameters := [0, 1, 2], types := [.bytes, (.fixed .u8), (.pair .nat (.pair .nat (.list .bytes)))], result := (.option (.pair .nat (.pair .nat (.list .bytes)))), + body := (.«let» 3 .nat (.first (.var 2)) (.«let» 4 .nat (.first (.second (.var 2))) (.«let» 5 (.list .bytes) (.second (.second (.var 2))) (.«match» (.option (.pair .nat (.pair .nat (.list .bytes)))) (.call 51 [(.var 0), (.var 3)]) [(.arm .some [6] (.cond (.prim .equal [(.var 6), (.var 1)]) (.build .some (.option (.pair .nat (.pair .nat (.list .bytes)))) [(.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.prim .natAdd [(.var 3), (.value .nat (.nat 1))]), (.build .pair (.pair .nat (.list .bytes)) [(.prim .natAdd [(.var 3), (.value .nat (.nat 1))]), (.build .cons (.list .bytes) [(.call 18 [(.var 0), (.var 4), (.prim .natSub [(.var 3), (.var 4)])]), (.var 5)])])])]) (.build .some (.option (.pair .nat (.pair .nat (.list .bytes)))) [(.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.prim .natAdd [(.var 3), (.value .nat (.nat 1))]), (.build .pair (.pair .nat (.list .bytes)) [(.var 4), (.var 5)])])]))), (.arm .none [] (.build .none (.option (.pair .nat (.pair .nat (.list .bytes)))) []))])))) }) ::( + { parameters := [0, 1], types := [.bytes, .nat], result := (.option .nat), + body := (.cond (.call 70 [(.var 0), (.var 1), (.value (.fixed .u8) (.u8 48)), (.value (.fixed .u8) (.u8 57))]) (.build .some (.option .nat) [(.prim .natAdd [(.var 1), (.value .nat (.nat 1))])]) (.build .none (.option .nat) [])) }) ::[]) } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := ((.enum (.adt 0) [{ number := 0, fields := [.bytes, (.option .bytes)] }]) :: + (.enum (.adt 1) [{ number := 0, fields := [(.list (.adt 2)), (.list .bytes)] }, { number := 1, fields := [(.list (.adt 2)), (.list .bytes), .bytes, (.option .bytes)] }, { number := 2, fields := [(.adt 0)] }]) :: + (.enum (.adt 2) [{ number := 0, fields := [.bytes, (.list .bytes), (.option .bytes)] }]) :: + (.enum (.fn 0) [{ number := 3, fields := [] }]) :: + (.apply 0 [(.adt 1), .bytes] (.adt 1) true [{ function := 3, captures := [], functionFallible := true }]) :: + (.enum (.fn 1) [{ number := 12, fields := [] }]) :: + (.apply 1 [(.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (.adt 2)] (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) false [{ function := 12, captures := [], functionFallible := false }]) :: + (.enum (.fn 2) [{ number := 16, fields := [.bytes] }, { number := 92, fields := [(.fixed .u8), .bytes] }]) :: + (.apply 2 [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes)))) true [{ function := 16, captures := [.clone], functionFallible := true }, { function := 92, captures := [.copy, .clone], functionFallible := true }]) :: + (.enum (.fn 3) [{ number := 23, fields := [] }]) :: + (.apply 3 [.nat, .bytes] .nat true [{ function := 23, captures := [], functionFallible := true }]) :: + (.enum (.fn 4) [{ number := 25, fields := [] }]) :: + (.apply 4 [.nat, (.adt 2)] .nat true [{ function := 25, captures := [], functionFallible := true }]) :: + (.enum (.fn 5) [{ number := 28, fields := [] }]) :: + (.apply 5 [(.list (.adt 2)), (.adt 2)] (.list (.adt 2)) false [{ function := 28, captures := [], functionFallible := false }]) :: + (.enum (.fn 6) [{ number := 37, fields := [] }]) :: + (.apply 6 [(.list .bytes), .bytes] (.list .bytes) false [{ function := 37, captures := [], functionFallible := false }]) :: + (.enum (.fn 7) [{ number := 39, fields := [.bytes] }, { number := 63, fields := [.bytes] }, { number := 64, fields := [.nat, .bytes] }, { number := 81, fields := [.bytes, .bytes] }, { number := 86, fields := [.bytes, .nat, .bytes, .nat] }, { number := 93, fields := [.bytes] }]) :: + (.apply 7 [.nat] (.option .nat) true [{ function := 39, captures := [.clone], functionFallible := true }, { function := 63, captures := [.clone], functionFallible := true }, { function := 64, captures := [.copy, .clone], functionFallible := true }, { function := 81, captures := [.clone, .clone], functionFallible := false }, { function := 86, captures := [.clone, .copy, .clone, .copy], functionFallible := true }, { function := 93, captures := [.clone], functionFallible := true }]) :: + (.enum (.fn 8) [{ number := 72, fields := [.bytes] }]) :: + (.apply 8 [(.pair .nat .nat)] (.option (.pair .nat .nat)) true [{ function := 72, captures := [.clone], functionFallible := true }]) :: + (.enum (.fn 9) [{ number := 84, fields := [] }]) :: + (.apply 9 [(.result (.list .bytes) .bytes), .bytes] (.result (.list .bytes) .bytes) true [{ function := 84, captures := [], functionFallible := true }]) :: + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := (.list .bytes) }] (.fallible (.result (.list (.pair .bytes (.list .bytes))) (.adt 0))) (.mk [] (.call (.function 1) [(.call (.function 2) [(.construct (.closure 0 3) []), (.construct (.adt 1 0) [(.construct (.nil (.adt 2)) []), (.clone (.generated .binding 1))]), (.call (.function 4) [(.move (.generated .binding 0))] true)] true), (.move (.generated .binding 1))] false))) :: + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }, { pattern := (.bind (.generated .binding 1)), type := (.list .bytes) }] (.fallible (.result (.list (.pair .bytes (.list .bytes))) (.adt 0))) (.mk [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 1)) [(.mk (.adt 1 0 [(.bind (.generated .binding 7)), .wild]) (.mk [(.mk (.bind (.generated .binding 9)) (some (.result (.list (.pair .bytes (.list .bytes))) (.adt 0))) (.call (.function 5) [(.call (.function 6) [(.call (.function 6) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "expected "))] false), (.call (.function 8) [(.call (.function 9) [(.clone (.generated .binding 1))] true)] true)] false), (.call (.function 7) [(.lit (.str " audit records, found "))] false)] false), (.call (.function 8) [(.call (.function 10) [(.clone (.generated .binding 7))] true)] true)] false), (.construct (.none .bytes) [])] false)), (.mk (.bind (.generated .operand 2)) none (.call (.function 10) [(.clone (.generated .binding 7))] true)), (.mk (.bind (.generated .operand 3)) none (.call (.function 9) [(.move (.generated .binding 1))] true))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] false) (.mk [] (.succeed (.call (.function 11) [(.construct (.closure 1 12) []), (.construct (.ok (.list (.pair .bytes (.list .bytes))) (.adt 0)) [(.construct (.nil (.pair .bytes (.list .bytes))) [])]), (.call (.function 13) [(.move (.generated .binding 7))] false)] false))) (.mk [] (.succeed (.move (.generated .binding 9))))))), (.mk (.adt 1 1 [.wild, .wild, (.bind (.generated .binding 5)), (.bind (.generated .binding 6))]) (.mk [] (.succeed (.call (.function 5) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "unterminated axiom payload: "))] false), (.move (.generated .binding 5))] false), (.move (.generated .binding 6))] false)))), (.mk (.adt 1 2 [(.bind (.generated .binding 2))]) (.mk [] (.succeed (.construct (.err (.list (.pair .bytes (.list .bytes))) (.adt 0)) [(.move (.generated .binding 2))]))))]))) :: + (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 1) }, { pattern := (.bind (.generated .binding 2)), type := (.list .bytes) }] (.fallible (.adt 1)) (.mk [(.mk (.bind (.generated .holder 4)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 4)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 2) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 5)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 5) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]))) :: + (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] (.fallible (.adt 1)) (.mk [] (.call (.function 14) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false))) :: + (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] (.fallible (.list .bytes)) (.mk [(.mk (.bind (.generated .binding 1)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 6))] false)))), (.mk (.bind (.generated .binding 2)) (some (.pair .nat (.pair .nat (.list .bytes)))) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 7)), .wild]) none (.call (.function 15) [(.construct (.closure 2 16) [(.clone (.generated .binding 0))]), (.copy (.generated .binding 1)), (.pair (.lit (.nat 0)) (.pair (.lit (.nat 0)) (.construct (.nil .bytes) [])))] true))] (.move (.generated .part 7))))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 8)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 9))]) none (.clone (.generated .binding 2)))] (.move (.generated .part 9)))))] (.move (.generated .part 8))))), (.mk (.bind (.generated .binding 4)) (some (.list .bytes)) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 10))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 11))]) none (.move (.generated .binding 2)))] (.move (.generated .part 11)))))] (.move (.generated .part 10))))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false) (.mk [] (.succeed (.call (.function 17) [(.construct .cons [(.call (.function 18) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false)))] false), (.move (.generated .binding 4))])] false))) (.mk [] (.succeed (.call (.function 17) [(.move (.generated .binding 4))] false)))))) :: + (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := (.option .bytes) }] (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) (.mk [] (.construct (.err (.list (.pair .bytes (.list .bytes))) (.adt 0)) [(.call (.function 19) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false)]))) :: + (.function (.generated .function 6) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] .bytes (.mk [(.mk (.bind (.generated .operand 16)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 17)) none (.move (.generated .binding 1)))] (.call (.runtime .appendBytes) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false))) :: + (.function (.generated .function 7) [{ pattern := (.bind (.generated .binding 0)), type := .str }] .bytes (.mk [(.mk (.bind (.generated .operand 18)) none (.move (.generated .binding 0)))] (.call (.runtime .utf8Encode) [(.move (.generated .operand 18))] false))) :: + (.function (.generated .function 8) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible .bytes) (.mk [(.mk (.bind (.generated .binding 1)) (some .bytes) (.call (.function 7) [(.lit (.str "0"))] false)), (.mk (.bind (.generated .binding 2)) (some .bytes) (.call (.function 20) [(.block (.mk [(.mk (.bind (.generated .operand 55)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000000000000))] false)), (.mk (.bind (.generated .operand 56)) none (.block (.mk [(.mk (.bind (.generated .operand 53)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000000000000))] false)), (.mk (.bind (.generated .operand 54)) none (.block (.mk [(.mk (.bind (.generated .operand 51)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000000000))] false)), (.mk (.bind (.generated .operand 52)) none (.block (.mk [(.mk (.bind (.generated .operand 49)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000000000))] false)), (.mk (.bind (.generated .operand 50)) none (.block (.mk [(.mk (.bind (.generated .operand 47)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000000000))] false)), (.mk (.bind (.generated .operand 48)) none (.block (.mk [(.mk (.bind (.generated .operand 45)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000000))] false)), (.mk (.bind (.generated .operand 46)) none (.block (.mk [(.mk (.bind (.generated .operand 43)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000000))] false)), (.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.bind (.generated .operand 41)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000000))] false)), (.mk (.bind (.generated .operand 42)) none (.block (.mk [(.mk (.bind (.generated .operand 39)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000))] false)), (.mk (.bind (.generated .operand 40)) none (.block (.mk [(.mk (.bind (.generated .operand 37)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000))] false)), (.mk (.bind (.generated .operand 38)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000))] false)), (.mk (.bind (.generated .operand 36)) none (.block (.mk [(.mk (.bind (.generated .operand 33)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000))] false)), (.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.bind (.generated .operand 31)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000))] false)), (.mk (.bind (.generated .operand 32)) none (.block (.mk [(.mk (.bind (.generated .operand 29)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000))] false)), (.mk (.bind (.generated .operand 30)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000))] false)), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000))] false)), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000))] false)), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100))] false)), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10))] false)), (.mk (.bind (.generated .operand 20)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1))] false))] (.call (.runtime .appendBytes) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 37)), (.move (.generated .operand 38))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 41)), (.move (.generated .operand 42))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 45)), (.move (.generated .operand 46))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 47)), (.move (.generated .operand 48))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 49)), (.move (.generated .operand 50))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 51)), (.move (.generated .operand 52))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 55)), (.move (.generated .operand 56))] false)))] true)), (.mk (.bind (.generated .operand 57)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 58)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 57)), (.move (.generated .operand 58))] false) (.mk [] (.succeed (.move (.generated .binding 1)))) (.mk [] (.succeed (.move (.generated .binding 2))))))) :: + (.function (.generated .function 9) [{ pattern := (.bind (.generated .binding 0)), type := (.list .bytes) }] (.fallible .nat) (.mk [] (.call (.function 22) [(.construct (.closure 3 23) []), (.lit (.nat 0)), (.move (.generated .binding 0))] false))) :: + (.function (.generated .function 10) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.adt 2)) }] (.fallible .nat) (.mk [] (.call (.function 24) [(.construct (.closure 4 25) []), (.lit (.nat 0)), (.move (.generated .binding 0))] false))) :: + (.function (.generated .function 11) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 1) }, { pattern := (.bind (.generated .binding 1)), type := (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) }, { pattern := (.bind (.generated .binding 2)), type := (.list (.adt 2)) }] (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) (.mk [(.mk (.bind (.generated .holder 59)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 59)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 11) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 60)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 60) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]))) :: + (.function (.generated .function 12) [{ pattern := (.bind (.generated .binding 0)), type := (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 2) }] (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) (.mk [] (.call (.function 26) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false))) :: + (.function (.generated .function 13) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.adt 2)) }] (.list (.adt 2)) (.mk [] (.call (.function 27) [(.construct (.closure 5 28) []), (.construct (.nil (.adt 2)) []), (.move (.generated .binding 0))] false))) :: + (.function (.generated .function 14) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] (.fallible (.adt 1)) (.mk [(.mk (.bind (.generated .holder 61)) none (.clone (.generated .binding 0)))] (.matchOn (.move (.generated .holder 61)) [(.mk (.adt 1 0 [(.bind (.generated .binding 8)), (.bind (.generated .binding 9))]) (.mk [(.mk (.bind (.generated .operand 64)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 65)) none (.block (.mk [(.mk (.bind (.generated .operand 63)) none (.call (.function 32) [(.clone (.generated .binding 1))] true))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 63))] false))))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 64)), (.move (.generated .operand 65))] false) (.mk [] (.succeed (.move (.generated .binding 0)))) (.mk [(.mk (.bind (.generated .holder 66)) none (.call (.function 33) [(.call (.function 32) [(.clone (.generated .binding 1))] true)] true))] (.matchOn (.move (.generated .holder 66)) [(.mk .none (.mk [] (.succeed (.call (.function 31) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "unrecognized audit line: "))] false), (.call (.function 32) [(.move (.generated .binding 1))] true)] false), (.call (.function 34) [(.move (.generated .binding 9))] false)] false)))), (.mk (.some (.bind (.generated .binding 10))) (.mk [] (.call (.function 30) [(.move (.generated .binding 8)), (.clone (.generated .binding 9)), (.move (.generated .binding 10)), (.call (.function 34) [(.move (.generated .binding 9))] false)] false)))]))))), (.mk (.adt 1 1 [(.bind (.generated .binding 3)), (.bind (.generated .binding 4)), (.bind (.generated .binding 5)), (.bind (.generated .binding 6))]) (.mk [(.mk (.bind (.generated .holder 62)) none (.call (.function 29) [(.move (.generated .binding 1))] true))] (.matchOn (.move (.generated .holder 62)) [(.mk .none (.mk [] (.succeed (.call (.function 31) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "unterminated axiom payload: "))] false), (.move (.generated .binding 5))] false), (.move (.generated .binding 6))] false)))), (.mk (.some (.bind (.generated .binding 7))) (.mk [] (.call (.function 30) [(.move (.generated .binding 3)), (.move (.generated .binding 4)), (.call (.function 6) [(.call (.function 6) [(.move (.generated .binding 5)), (.call (.function 7) [(.lit (.str " "))] false)] false), (.move (.generated .binding 7))] false), (.move (.generated .binding 6))] false)))]))), (.mk (.adt 1 2 [.wild]) (.mk [] (.succeed (.move (.generated .binding 0)))))]))) :: + (.function (.generated .function 15) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 2) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := (.pair .nat (.pair .nat (.list .bytes))) }] (.fallible (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool)) (.mk [(.mk (.bind (.generated .holder 67)) none (.copy (.generated .binding 1)))] (.cond (.isZero (.generated .holder 67)) (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 67))), (.mk (.bind (.generated .holder 69)) none (.block (.mk [(.mk (.bind (.generated .callee 68)) (some (.fn 2)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 68) [(.clone (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 69)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 15) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))]))))) :: + (.function (.generated .function 16) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := (.pair .nat (.pair .nat (.list .bytes))) }] (.fallible (.option (.pair .nat (.pair .nat (.list .bytes))))) (.mk [] (.call (.function 35) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false))) :: + (.function (.generated .function 17) [{ pattern := (.bind (.generated .binding 0)), type := (.list .bytes) }] (.list .bytes) (.mk [] (.call (.function 36) [(.construct (.closure 6 37) []), (.construct (.nil .bytes) []), (.move (.generated .binding 0))] false))) :: + (.function (.generated .function 18) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := .nat }] .bytes (.mk [(.mk (.bind (.generated .holder 73)) none (.block (.mk [(.mk (.bind (.generated .operand 70)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 71)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 72)) none (.copy (.generated .binding 2)))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 70)), (.move (.generated .operand 71)), (.move (.generated .operand 72))] false))))] (.matchOn (.move (.generated .holder 73)) [(.mk .none (.mk [] (.lit (.bytes (ByteArray.mk #[]))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.move (.generated .binding 3))))]))) :: + (.function (.generated .function 19) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := (.option .bytes) }] (.adt 0) (.mk [] (.construct (.adt 0 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1))]))) :: + (.function (.generated .function 20) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] (.fallible .bytes) (.mk [(.mk (.bind (.generated .binding 1)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 74)), .wild]) none (.call (.function 38) [(.construct (.closure 7 39) [(.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 75)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 75))] false))), (.lit (.nat 0))] true))] (.move (.generated .part 74)))))] (.succeed (.call (.function 18) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.block (.mk [(.mk (.bind (.generated .operand 77)) none (.block (.mk [(.mk (.bind (.generated .operand 76)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 76))] false)))), (.mk (.bind (.generated .operand 78)) none (.copy (.generated .binding 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 77)), (.move (.generated .operand 78))] false)))] false)))) :: + (.function (.generated .function 21) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .bytes (.mk [] (.call (.function 18) [(.call (.function 7) [(.lit (.str "0123456789"))] false), (.block (.mk [(.mk (.bind (.generated .operand 82)) none (.block (.mk [(.mk (.bind (.generated .operand 79)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 80)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 81)) none (.lit (.nat 0)))] (.call (.runtime .natQuot) [(.move (.generated .operand 79)), (.move (.generated .operand 80)), (.move (.generated .operand 81))] false)))), (.mk (.bind (.generated .operand 83)) none (.lit (.nat 10))), (.mk (.bind (.generated .operand 84)) none (.lit (.nat 0)))] (.call (.runtime .natRem) [(.move (.generated .operand 82)), (.move (.generated .operand 83)), (.move (.generated .operand 84))] false))), (.lit (.nat 1))] false))) :: + (.function (.generated .function 22) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 3) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := (.list .bytes) }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 85)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 85)) [(.mk .none (.mk [] (.succeed (.copy (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 22) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 86)) (some (.fn 3)) (.move (.generated .binding 0)))] (.apply (.generated .callee 86) [(.copy (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]))) :: + (.function (.generated .function 23) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := .wild, type := .bytes }] (.fallible .nat) (.mk [(.mk (.bind (.generated .operand 87)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 88)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 87)), (.move (.generated .operand 88))] false))) :: + (.function (.generated .function 24) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 4) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := (.list (.adt 2)) }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 89)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 89)) [(.mk .none (.mk [] (.succeed (.copy (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 24) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 90)) (some (.fn 4)) (.move (.generated .binding 0)))] (.apply (.generated .callee 90) [(.copy (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]))) :: + (.function (.generated .function 25) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := .wild, type := (.adt 2) }] (.fallible .nat) (.mk [(.mk (.bind (.generated .operand 91)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 92)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] false))) :: + (.function (.generated .function 26) [{ pattern := (.bind (.generated .binding 0)), type := (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 2) }] (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) (.mk [(.mk (.bind (.generated .holder 93)) none (.clone (.generated .binding 0)))] (.matchOn (.move (.generated .holder 93)) [(.mk (.ok (.bind (.generated .binding 3))) (.mk [(.mk (.bind (.generated .binding 5)) (some .bytes) (.block (.mk [(.mk (.bind (.generated .holder 95)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 94))]) (.mk [] (.move (.generated .part 94))))]))] (.matchOn (.move (.generated .holder 95)) [(.mk .none (.mk [] (.lit (.bytes (ByteArray.mk #[]))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.move (.generated .binding 4))))])))), (.mk (.bind (.generated .binding 6)) (some (.result (.list (.pair .bytes (.list .bytes))) (.adt 0))) (.call (.function 5) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "duplicate record for "))] false), (.call (.function 40) [(.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 2 0 [(.bind (.generated .part 96)), .wild, .wild]) (.mk [] (.move (.generated .part 96))))])] false)] false), (.construct .some [(.clone (.generated .binding 5))])] false)), (.mk (.bind (.generated .binding 7)) (some (.result (.list (.pair .bytes (.list .bytes))) (.adt 0))) (.call (.function 5) [(.call (.function 6) [(.call (.function 6) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "expected a record for "))] false), (.call (.function 40) [(.clone (.generated .binding 5))] false)] false), (.call (.function 7) [(.lit (.str ", found "))] false)] false), (.call (.function 40) [(.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 2 0 [(.bind (.generated .part 97)), .wild, .wild]) (.mk [] (.move (.generated .part 97))))])] false)] false), (.construct .some [(.clone (.generated .binding 5))])] false)), (.mk (.bind (.generated .operand 99)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 2 0 [(.bind (.generated .part 98)), .wild, .wild]) (.mk [] (.move (.generated .part 98))))])), (.mk (.bind (.generated .operand 100)) none (.move (.generated .binding 5)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 99)), (.move (.generated .operand 100))] false) (.mk [(.mk (.bind (.generated .holder 103)) none (.call (.function 41) [(.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 2 0 [(.bind (.generated .part 101)), .wild, .wild]) (.mk [] (.move (.generated .part 101))))]), (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 102)), .wild]) (.mk [] (.move (.generated .part 102))))]), (.move (.generated .binding 3))] false))] (.matchOn (.move (.generated .holder 103)) [(.mk .none (.mk [] (.move (.generated .binding 6)))), (.mk (.some (.bind (.generated .binding 8))) (.mk [] (.construct (.ok (.list (.pair .bytes (.list .bytes))) (.adt 0)) [(.move (.generated .binding 8))])))])) (.mk [] (.move (.generated .binding 7)))))), (.mk (.err .wild) (.mk [] (.move (.generated .binding 0))))]))) :: + (.function (.generated .function 27) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 5) }, { pattern := (.bind (.generated .binding 1)), type := (.list (.adt 2)) }, { pattern := (.bind (.generated .binding 2)), type := (.list (.adt 2)) }] (.list (.adt 2)) (.mk [(.mk (.bind (.generated .holder 104)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 104)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 27) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 105)) (some (.fn 5)) (.move (.generated .binding 0)))] (.apply (.generated .callee 105) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]))) :: + (.function (.generated .function 28) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.adt 2)) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 2) }] (.list (.adt 2)) (.mk [] (.construct .cons [(.move (.generated .binding 1)), (.move (.generated .binding 0))]))) :: + (.function (.generated .function 29) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] (.fallible (.option .bytes)) (.mk [(.mk (.bind (.generated .binding 1)) (some .bytes) (.call (.function 32) [(.clone (.generated .binding 0))] true))] (.cond (.call (.function 42) [(.move (.generated .binding 0))] true) (.mk [(.mk (.bind (.generated .operand 107)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 108)) none (.block (.mk [(.mk (.bind (.generated .operand 106)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 106))] false))))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 107)), (.move (.generated .operand 108))] false) (.mk [] (.succeed (.construct (.none .bytes) []))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 1))]))))) (.mk [] (.succeed (.construct (.none .bytes) [])))))) :: + (.function (.generated .function 30) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.adt 2)) }, { pattern := (.bind (.generated .binding 1)), type := (.list .bytes) }, { pattern := (.bind (.generated .binding 2)), type := .bytes }, { pattern := (.bind (.generated .binding 3)), type := (.option .bytes) }] (.fallible (.adt 1)) (.mk [] (.cond (.call (.function 43) [(.clone (.generated .binding 2))] false) (.mk [(.mk (.bind (.generated .holder 109)) none (.call (.function 44) [(.move (.generated .binding 2))] true))] (.matchOn (.move (.generated .holder 109)) [(.mk (.ok (.bind (.generated .binding 5))) (.mk [] (.succeed (.construct (.adt 1 0) [(.construct .cons [(.construct (.adt 2 0) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 110)), .wild]) none (.move (.generated .binding 5)))] (.move (.generated .part 110)))), (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 111))]) none (.move (.generated .binding 5)))] (.move (.generated .part 111)))), (.move (.generated .binding 3))]), (.move (.generated .binding 0))]), (.call (.function 45) [(.move (.generated .binding 1))] false)])))), (.mk (.err (.bind (.generated .binding 4))) (.mk [] (.succeed (.call (.function 31) [(.move (.generated .binding 4)), (.move (.generated .binding 3))] false))))])) (.mk [] (.succeed (.construct (.adt 1 1) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 2)), (.move (.generated .binding 3))])))))) :: + (.function (.generated .function 31) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := (.option .bytes) }] (.adt 1) (.mk [] (.construct (.adt 1 2) [(.call (.function 19) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false)]))) :: + (.function (.generated .function 32) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] (.fallible .bytes) (.mk [(.mk (.bind (.generated .binding 1)) (some .nat) (.call (.function 46) [(.clone (.generated .binding 0))] true)), (.mk (.bind (.generated .binding 2)) (some .nat) (.call (.function 47) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1))] true))] (.succeed (.call (.function 18) [(.move (.generated .binding 0)), (.copy (.generated .binding 1)), (.block (.mk [(.mk (.bind (.generated .operand 112)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 113)) none (.copy (.generated .binding 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 112)), (.move (.generated .operand 113))] false)))] false)))) :: + (.function (.generated .function 33) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] (.fallible (.option .bytes)) (.mk [] (.cond (.call (.function 48) [(.clone (.generated .binding 0)), (.call (.function 7) [(.lit (.str "'"))] false)] false) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 0))]))) (.mk [(.mk (.bind (.generated .holder 114)) none (.call (.function 49) [(.clone (.generated .binding 0)), (.call (.function 7) [(.lit (.str "info: "))] false)] false))] (.matchOn (.move (.generated .holder 114)) [(.mk .none (.mk [] (.call (.function 50) [(.move (.generated .binding 0))] false))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 1))]))))]))))) :: + (.function (.generated .function 34) [{ pattern := (.bind (.generated .binding 0)), type := (.list .bytes) }] (.option .bytes) (.mk [(.mk (.bind (.generated .holder 115)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 115)) [(.mk .none (.mk [] (.construct (.none .bytes) []))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), .wild])) (.mk [] (.construct .some [(.move (.generated .binding 1))])))]))) :: + (.function (.generated .function 35) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := (.pair .nat (.pair .nat (.list .bytes))) }] (.fallible (.option (.pair .nat (.pair .nat (.list .bytes))))) (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 116)), .wild]) none (.clone (.generated .binding 1)))] (.move (.generated .part 116))))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 117)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 118))]) none (.clone (.generated .binding 1)))] (.move (.generated .part 118)))))] (.move (.generated .part 117))))), (.mk (.bind (.generated .binding 4)) (some (.list .bytes)) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 119))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 120))]) none (.move (.generated .binding 1)))] (.move (.generated .part 120)))))] (.move (.generated .part 119))))), (.mk (.bind (.generated .holder 121)) none (.call (.function 51) [(.clone (.generated .binding 0)), (.copy (.generated .binding 2))] false))] (.matchOn (.move (.generated .holder 121)) [(.mk .none (.mk [] (.succeed (.construct (.none (.pair .nat (.pair .nat (.list .bytes)))) [])))), (.mk (.some (.bind (.generated .binding 5))) (.mk [(.mk (.bind (.generated .operand 122)) none (.copy (.generated .binding 5))), (.mk (.bind (.generated .operand 123)) none (.lit (.fixed .u8 10)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 122)), (.move (.generated .operand 123))] false) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 124)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 125)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 124)), (.move (.generated .operand 125))] true))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 126)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 127)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 126)), (.move (.generated .operand 127))] true))) (.construct .cons [(.call (.function 52) [(.call (.function 18) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.block (.mk [(.mk (.bind (.generated .operand 128)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 129)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 128)), (.move (.generated .operand 129))] false)))] false)] false), (.move (.generated .binding 4))])))]))) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 130)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 131)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 130)), (.move (.generated .operand 131))] true))) (.pair (.copy (.generated .binding 3)) (.move (.generated .binding 4))))]))))))]))) :: + (.function (.generated .function 36) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 6) }, { pattern := (.bind (.generated .binding 1)), type := (.list .bytes) }, { pattern := (.bind (.generated .binding 2)), type := (.list .bytes) }] (.list .bytes) (.mk [(.mk (.bind (.generated .holder 132)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 132)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 36) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 133)) (some (.fn 6)) (.move (.generated .binding 0)))] (.apply (.generated .callee 133) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]))) :: + (.function (.generated .function 37) [{ pattern := (.bind (.generated .binding 0)), type := (.list .bytes) }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] (.list .bytes) (.mk [] (.construct .cons [(.move (.generated .binding 1)), (.move (.generated .binding 0))]))) :: + (.function (.generated .function 38) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 7) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.fallible (.pair .nat .bool)) (.mk [(.mk (.bind (.generated .holder 134)) none (.copy (.generated .binding 1)))] (.cond (.isZero (.generated .holder 134)) (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 134))), (.mk (.bind (.generated .holder 136)) none (.block (.mk [(.mk (.bind (.generated .callee 135)) (some (.fn 7)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 135) [(.copy (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 136)) [(.mk .none (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 38) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)))]))))) :: + (.function (.generated .function 39) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.option .nat)) (.mk [] (.call (.function 53) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false))) :: + (.function (.generated .function 40) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] .bytes (.mk [] (.call (.function 6) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "`"))] false), (.move (.generated .binding 0))] false), (.call (.function 7) [(.lit (.str "`"))] false)] false))) :: + (.function (.generated .function 41) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := (.list .bytes) }, { pattern := (.bind (.generated .binding 2)), type := (.list (.pair .bytes (.list .bytes))) }] (.option (.list (.pair .bytes (.list .bytes)))) (.mk [(.mk (.bind (.generated .holder 137)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 137)) [(.mk .none (.mk [] (.construct .some [(.construct .cons [(.pair (.move (.generated .binding 0)) (.move (.generated .binding 1))), (.construct (.nil (.pair .bytes (.list .bytes))) [])])]))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [(.mk (.bind (.generated .operand 139)) none (.clone (.generated .binding 0))), (.mk (.bind (.generated .operand 140)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 138)), .wild]) none (.clone (.generated .binding 3)))] (.move (.generated .part 138)))))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 139)), (.move (.generated .operand 140))] false) (.mk [] (.construct (.none (.list (.pair .bytes (.list .bytes)))) [])) (.mk [] (.cond (.call (.function 54) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 141)), .wild]) none (.clone (.generated .binding 3)))] (.move (.generated .part 141))))] false) (.mk [] (.construct .some [(.construct .cons [(.pair (.move (.generated .binding 0)) (.move (.generated .binding 1))), (.construct .cons [(.move (.generated .binding 3)), (.move (.generated .binding 4))])])])) (.mk [(.mk (.bind (.generated .holder 142)) none (.call (.function 41) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false))] (.matchOn (.move (.generated .holder 142)) [(.mk .none (.mk [] (.construct (.none (.list (.pair .bytes (.list .bytes)))) []))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.construct .some [(.construct .cons [(.move (.generated .binding 3)), (.move (.generated .binding 5))])])))])))))))]))) :: + (.function (.generated .function 42) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] (.fallible .bool) (.mk [(.mk (.bind (.generated .operand 143)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 144)) none (.call (.function 55) [(.move (.generated .binding 0)), (.lit (.nat 0))] true))] (.succeed (.call (.runtime .natLt) [(.move (.generated .operand 143)), (.move (.generated .operand 144))] false)))) :: + (.function (.generated .function 43) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] .bool (.mk [(.mk (.bind (.generated .holder 145)) none (.call (.function 56) [(.clone (.generated .binding 0)), (.call (.function 7) [(.lit (.str "]"))] false)] false))] (.matchOn (.move (.generated .holder 145)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 146)) none (.call (.function 56) [(.move (.generated .binding 0)), (.call (.function 7) [(.lit (.str " does not depend on any axioms"))] false)] false))] (.matchOn (.move (.generated .holder 146)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some .wild) (.mk [] (.lit (.bool true))))]))), (.mk (.some .wild) (.mk [] (.lit (.bool true))))]))) :: + (.function (.generated .function 44) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] (.fallible (.result (.pair .bytes (.list .bytes)) .bytes)) (.mk [(.mk (.bind (.generated .holder 147)) none (.call (.function 49) [(.clone (.generated .binding 0)), (.call (.function 7) [(.lit (.str "'"))] false)] false))] (.matchOn (.move (.generated .holder 147)) [(.mk .none (.mk [] (.succeed (.call (.function 57) [(.move (.generated .binding 0))] false)))), (.mk (.some (.bind (.generated .binding 1))) (.mk [(.mk (.bind (.generated .holder 148)) none (.call (.function 56) [(.clone (.generated .binding 1)), (.call (.function 7) [(.lit (.str "' does not depend on any axioms"))] false)] false))] (.matchOn (.move (.generated .holder 148)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 149)) none (.call (.function 56) [(.move (.generated .binding 1)), (.call (.function 7) [(.lit (.str "]"))] false)] false))] (.matchOn (.move (.generated .holder 149)) [(.mk .none (.mk [] (.succeed (.call (.function 57) [(.move (.generated .binding 0))] false)))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.call (.function 62) [(.move (.generated .binding 0)), (.move (.generated .binding 5))] false)))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [(.mk (.bind (.generated .binding 3)) (some (.result (.pair .bytes (.list .bytes)) .bytes)) (.call (.function 58) [(.clone (.generated .binding 2)), (.construct (.nil .bytes) [])] false)), (.mk (.bind (.generated .binding 4)) (some (.result (.pair .bytes (.list .bytes)) .bytes)) (.call (.function 59) [(.call (.function 60) [(.clone (.generated .binding 2))] false)] false))] (.cond (.call (.function 61) [(.move (.generated .binding 2))] true) (.mk [] (.succeed (.move (.generated .binding 3)))) (.mk [] (.succeed (.move (.generated .binding 4)))))))])))]))) :: + (.function (.generated .function 45) [{ pattern := (.bind (.generated .binding 0)), type := (.list .bytes) }] (.list .bytes) (.mk [(.mk (.bind (.generated .holder 150)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 150)) [(.mk .none (.mk [] (.construct (.nil .bytes) []))), (.mk (.some (.tuple [.wild, (.bind (.generated .binding 2))])) (.mk [] (.move (.generated .binding 2))))]))) :: + (.function (.generated .function 46) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] (.fallible .nat) (.mk [(.mk (.tuple [(.bind (.generated .part 151)), .wild]) none (.call (.function 38) [(.construct (.closure 7 63) [(.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 152)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 152))] false))), (.lit (.nat 0))] true))] (.succeed (.move (.generated .part 151))))) :: + (.function (.generated .function 47) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .nat) (.mk [(.mk (.tuple [(.bind (.generated .part 153)), .wild]) none (.call (.function 38) [(.construct (.closure 7 64) [(.copy (.generated .binding 1)), (.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 154)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 154))] false))), (.block (.mk [(.mk (.bind (.generated .operand 155)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 155))] false)))] true))] (.succeed (.move (.generated .part 153))))) :: + (.function (.generated .function 48) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] .bool (.mk [(.mk (.bind (.generated .holder 160)) none (.block (.mk [(.mk (.bind (.generated .operand 157)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 158)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 159)) none (.block (.mk [(.mk (.bind (.generated .operand 156)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 156))] false))))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 157)), (.move (.generated .operand 158)), (.move (.generated .operand 159))] false))))] (.matchOn (.move (.generated .holder 160)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.bind (.generated .binding 2))) (.mk [(.mk (.bind (.generated .operand 161)) none (.move (.generated .binding 2))), (.mk (.bind (.generated .operand 162)) none (.move (.generated .binding 1)))] (.call (.runtime .equal) [(.move (.generated .operand 161)), (.move (.generated .operand 162))] false)))]))) :: + (.function (.generated .function 49) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] (.option .bytes) (.mk [] (.cond (.call (.function 48) [(.clone (.generated .binding 0)), (.clone (.generated .binding 1))] false) (.mk [] (.construct .some [(.call (.function 18) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 163)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 163))] false))), (.block (.mk [(.mk (.bind (.generated .operand 166)) none (.block (.mk [(.mk (.bind (.generated .operand 164)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 164))] false)))), (.mk (.bind (.generated .operand 167)) none (.block (.mk [(.mk (.bind (.generated .operand 165)) none (.move (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 165))] false))))] (.call (.runtime .natSub) [(.move (.generated .operand 166)), (.move (.generated .operand 167))] false)))] false)])) (.mk [] (.construct (.none .bytes) []))))) :: + (.function (.generated .function 50) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] (.fallible (.option .bytes)) (.mk [(.mk (.bind (.generated .holder 168)) none (.call (.function 65) [(.move (.generated .binding 0)), (.call (.function 7) [(.lit (.str ":"))] false)] true))] (.matchOn (.move (.generated .holder 168)) [(.mk .none (.mk [] (.succeed (.construct (.none .bytes) [])))), (.mk (.some (.bind (.generated .binding 1))) (.mk [(.mk (.bind (.generated .holder 170)) none (.call (.function 65) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 169))]) none (.move (.generated .binding 1)))] (.move (.generated .part 169)))), (.call (.function 7) [(.lit (.str ":"))] false)] true))] (.matchOn (.move (.generated .holder 170)) [(.mk .none (.mk [] (.succeed (.construct (.none .bytes) [])))), (.mk (.some (.bind (.generated .binding 2))) (.mk [(.mk (.bind (.generated .holder 172)) none (.call (.function 65) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 171))]) none (.move (.generated .binding 2)))] (.move (.generated .part 171)))), (.call (.function 7) [(.lit (.str ":"))] false)] true))] (.matchOn (.move (.generated .holder 172)) [(.mk .none (.mk [] (.succeed (.construct (.none .bytes) [])))), (.mk (.some (.bind (.generated .binding 3))) (.mk [(.mk (.bind (.generated .binding 4)) (some .bytes) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 173)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 173))))), (.mk (.bind (.generated .binding 5)) (some .bytes) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 174)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 174))))), (.mk (.bind (.generated .binding 6)) (some .bytes) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 175))]) none (.move (.generated .binding 3)))] (.move (.generated .part 175))))), (.mk (.bind (.generated .binding 7)) (some (.option .bytes)) (.call (.function 66) [(.move (.generated .binding 5)), (.move (.generated .binding 6))] true))] (.cond (.call (.function 67) [(.move (.generated .binding 4))] true) (.mk [] (.succeed (.move (.generated .binding 7)))) (.mk [] (.succeed (.construct (.none .bytes) []))))))])))])))]))) :: + (.function (.generated .function 51) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.option (.fixed .u8)) (.mk [(.mk (.bind (.generated .operand 176)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 177)) none (.copy (.generated .binding 1)))] (.call (.runtime .indexBytes) [(.move (.generated .operand 176)), (.move (.generated .operand 177))] false))) :: + (.function (.generated .function 52) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] .bytes (.mk [] (.cond (.call (.function 68) [(.clone (.generated .binding 0)), (.lit (.bytes (ByteArray.mk #[13])))] false) (.mk [] (.call (.function 18) [(.clone (.generated .binding 0)), (.lit (.nat 0)), (.block (.mk [(.mk (.bind (.generated .operand 179)) none (.block (.mk [(.mk (.bind (.generated .operand 178)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 178))] false)))), (.mk (.bind (.generated .operand 180)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 179)), (.move (.generated .operand 180))] false)))] false)) (.mk [] (.move (.generated .binding 0)))))) :: + (.function (.generated .function 53) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.option .nat)) (.mk [] (.cond (.call (.function 69) [(.move (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 48))] false) (.mk [] (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 181)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 182)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 181)), (.move (.generated .operand 182))] true)))]))) (.mk [] (.succeed (.construct (.none .nat) [])))))) :: + (.function (.generated .function 54) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] .bool (.mk [(.mk (.bind (.generated .operand 187)) none (.block (.mk [(.mk (.bind (.generated .operand 183)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 184)) none (.move (.generated .binding 1)))] (.call (.runtime .compareBytes) [(.move (.generated .operand 183)), (.move (.generated .operand 184))] false)))), (.mk (.bind (.generated .operand 188)) none (.block (.mk [(.mk (.bind (.generated .operand 185)) none (.lit (.bytes (ByteArray.mk #[])))), (.mk (.bind (.generated .operand 186)) none (.lit (.bytes (ByteArray.mk #[1]))))] (.call (.runtime .compareBytes) [(.move (.generated .operand 185)), (.move (.generated .operand 186))] false))))] (.call (.runtime .equal) [(.move (.generated .operand 187)), (.move (.generated .operand 188))] false))) :: + (.function (.generated .function 55) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .nat) (.mk [] (.cond (.cond (.call (.function 70) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 9)), (.lit (.fixed .u8 13))] false) (.mk [] (.lit (.bool true))) (.mk [] (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 32))] false))) (.mk [] (.succeed (.lit (.nat 1)))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 194))] false) (.mk [] (.cond (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 189)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 190)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 189)), (.move (.generated .operand 190))] true))), (.lit (.fixed .u8 133))] false) (.mk [] (.lit (.bool true))) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 191)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 192)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 191)), (.move (.generated .operand 192))] true))), (.lit (.fixed .u8 160))] false))) (.mk [] (.succeed (.lit (.nat 2)))) (.mk [] (.succeed (.lit (.nat 0)))))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 225))] false) (.mk [] (.cond (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 193)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 194)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 193)), (.move (.generated .operand 194))] true))), (.lit (.fixed .u8 154))] false) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 195)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 196)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 195)), (.move (.generated .operand 196))] true))), (.lit (.fixed .u8 128))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 226))] false) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 197)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 198)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 197)), (.move (.generated .operand 198))] true))), (.lit (.fixed .u8 128))] false) (.mk [] (.cond (.cond (.call (.function 70) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 199)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 200)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 199)), (.move (.generated .operand 200))] true))), (.lit (.fixed .u8 128)), (.lit (.fixed .u8 138))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 201)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 202)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 201)), (.move (.generated .operand 202))] true))), (.lit (.fixed .u8 168))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 203)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 204)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 203)), (.move (.generated .operand 204))] true))), (.lit (.fixed .u8 169))] false) (.mk [] (.lit (.bool true))) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 205)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 206)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 205)), (.move (.generated .operand 206))] true))), (.lit (.fixed .u8 175))] false))))))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))) (.mk [] (.cond (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 207)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 208)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 207)), (.move (.generated .operand 208))] true))), (.lit (.fixed .u8 129))] false) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 209)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 210)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 209)), (.move (.generated .operand 210))] true))), (.lit (.fixed .u8 159))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 227))] false) (.mk [] (.cond (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 211)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 212)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 211)), (.move (.generated .operand 212))] true))), (.lit (.fixed .u8 128))] false) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 213)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 214)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 213)), (.move (.generated .operand 214))] true))), (.lit (.fixed .u8 128))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))) (.mk [] (.succeed (.lit (.nat 0))))))))))))))) :: + (.function (.generated .function 56) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] (.option .bytes) (.mk [] (.cond (.call (.function 68) [(.clone (.generated .binding 0)), (.clone (.generated .binding 1))] false) (.mk [] (.construct .some [(.call (.function 18) [(.clone (.generated .binding 0)), (.lit (.nat 0)), (.block (.mk [(.mk (.bind (.generated .operand 217)) none (.block (.mk [(.mk (.bind (.generated .operand 215)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 215))] false)))), (.mk (.bind (.generated .operand 218)) none (.block (.mk [(.mk (.bind (.generated .operand 216)) none (.move (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 216))] false))))] (.call (.runtime .natSub) [(.move (.generated .operand 217)), (.move (.generated .operand 218))] false)))] false)])) (.mk [] (.construct (.none .bytes) []))))) :: + (.function (.generated .function 57) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] (.result (.pair .bytes (.list .bytes)) .bytes) (.mk [] (.call (.function 59) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "unrecognized axiom payload: "))] false), (.move (.generated .binding 0))] false)] false))) :: + (.function (.generated .function 58) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := (.list .bytes) }] (.result (.pair .bytes (.list .bytes)) .bytes) (.mk [] (.construct (.ok (.pair .bytes (.list .bytes)) .bytes) [(.pair (.move (.generated .binding 0)) (.move (.generated .binding 1)))]))) :: + (.function (.generated .function 59) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] (.result (.pair .bytes (.list .bytes)) .bytes) (.mk [] (.construct (.err (.pair .bytes (.list .bytes)) .bytes) [(.move (.generated .binding 0))]))) :: + (.function (.generated .function 60) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] .bytes (.mk [] (.call (.function 6) [(.call (.function 40) [(.move (.generated .binding 0))] false), (.call (.function 7) [(.lit (.str " is not a Lean name"))] false)] false))) :: + (.function (.generated .function 61) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] (.fallible .bool) (.mk [(.mk (.bind (.generated .operand 222)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 219))]) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 220)), .wild]) none (.call (.function 71) [(.construct (.closure 8 72) [(.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 221)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 221))] false))), (.pair (.lit (.nat 0)) (.lit (.nat 0)))] true))] (.move (.generated .part 220)))))] (.move (.generated .part 219))))), (.mk (.bind (.generated .operand 223)) none (.lit (.nat 1)))] (.succeed (.call (.runtime .natEq) [(.move (.generated .operand 222)), (.move (.generated .operand 223))] false)))) :: + (.function (.generated .function 62) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] (.fallible (.result (.pair .bytes (.list .bytes)) .bytes)) (.mk [(.mk (.bind (.generated .holder 224)) none (.call (.function 73) [(.move (.generated .binding 1)), (.call (.function 7) [(.lit (.str "' depends on axioms: ["))] false)] true))] (.matchOn (.move (.generated .holder 224)) [(.mk .none (.mk [] (.succeed (.call (.function 57) [(.move (.generated .binding 0))] false)))), (.mk (.some (.bind (.generated .binding 2))) (.mk [(.mk (.bind (.generated .binding 3)) (some .bytes) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 225)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 225))))), (.mk (.bind (.generated .binding 4)) (some .bytes) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 226))]) none (.move (.generated .binding 2)))] (.move (.generated .part 226))))), (.mk (.bind (.generated .binding 5)) (some (.result (.pair .bytes (.list .bytes)) .bytes)) (.call (.function 74) [(.clone (.generated .binding 3)), (.move (.generated .binding 4))] true)), (.mk (.bind (.generated .binding 6)) (some (.result (.pair .bytes (.list .bytes)) .bytes)) (.call (.function 59) [(.call (.function 60) [(.clone (.generated .binding 3))] false)] false))] (.cond (.call (.function 61) [(.move (.generated .binding 3))] true) (.mk [] (.succeed (.move (.generated .binding 5)))) (.mk [] (.succeed (.move (.generated .binding 6)))))))]))) :: + (.function (.generated .function 63) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.option .nat)) (.mk [(.mk (.bind (.generated .operand 227)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 228)) none (.call (.function 55) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1))] true))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 227)), (.move (.generated .operand 228))] false) (.mk [] (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 229)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 230)) none (.call (.function 55) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 229)), (.move (.generated .operand 230))] true)))]))) (.mk [] (.succeed (.construct (.none .nat) [])))))) :: + (.function (.generated .function 64) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .bytes }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.fallible (.option .nat)) (.mk [(.mk (.bind (.generated .operand 231)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 232)) none (.call (.function 75) [(.clone (.generated .binding 1)), (.copy (.generated .binding 2))] true))] (.cond (.cond (.call (.runtime .natLt) [(.move (.generated .operand 231)), (.move (.generated .operand 232))] false) (.mk [(.mk (.bind (.generated .operand 235)) none (.block (.mk [(.mk (.bind (.generated .operand 233)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 234)) none (.call (.function 75) [(.clone (.generated .binding 1)), (.copy (.generated .binding 2))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 233)), (.move (.generated .operand 234))] true)))), (.mk (.bind (.generated .operand 236)) none (.copy (.generated .binding 2)))] (.call (.runtime .natLe) [(.move (.generated .operand 235)), (.move (.generated .operand 236))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 237)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 238)) none (.call (.function 75) [(.move (.generated .binding 1)), (.copy (.generated .binding 2))] true))] (.call (.runtime .natSub) [(.move (.generated .operand 237)), (.move (.generated .operand 238))] false)))]))) (.mk [] (.succeed (.construct (.none .nat) [])))))) :: + (.function (.generated .function 65) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] (.fallible (.option (.pair .bytes .bytes))) (.mk [(.mk (.bind (.generated .holder 239)) none (.call (.function 76) [(.clone (.generated .binding 0)), (.clone (.generated .binding 1))] true))] (.matchOn (.move (.generated .holder 239)) [(.mk .none (.mk [] (.succeed (.construct (.none (.pair .bytes .bytes)) [])))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct .some [(.pair (.call (.function 18) [(.clone (.generated .binding 0)), (.lit (.nat 0)), (.copy (.generated .binding 2))] false) (.call (.function 18) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 241)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 242)) none (.block (.mk [(.mk (.bind (.generated .operand 240)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 240))] false))))] (.call (.runtime .natAdd) [(.move (.generated .operand 241)), (.move (.generated .operand 242))] true))), (.block (.mk [(.mk (.bind (.generated .operand 247)) none (.block (.mk [(.mk (.bind (.generated .operand 243)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 243))] false)))), (.mk (.bind (.generated .operand 248)) none (.block (.mk [(.mk (.bind (.generated .operand 245)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 246)) none (.block (.mk [(.mk (.bind (.generated .operand 244)) none (.move (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 244))] false))))] (.call (.runtime .natAdd) [(.move (.generated .operand 245)), (.move (.generated .operand 246))] true))))] (.call (.runtime .natSub) [(.move (.generated .operand 247)), (.move (.generated .operand 248))] false)))] false))]))))]))) :: + (.function (.generated .function 66) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] (.fallible (.option .bytes)) (.mk [(.mk (.bind (.generated .holder 249)) none (.call (.function 65) [(.clone (.generated .binding 0)), (.call (.function 7) [(.lit (.str "-"))] false)] true))] (.matchOn (.move (.generated .holder 249)) [(.mk .none (.mk [(.mk (.bind (.generated .binding 9)) (some (.option .bytes)) (.call (.function 77) [(.move (.generated .binding 1))] false))] (.cond (.call (.function 67) [(.move (.generated .binding 0))] true) (.mk [] (.succeed (.move (.generated .binding 9)))) (.mk [] (.succeed (.construct (.none .bytes) [])))))), (.mk (.some (.bind (.generated .binding 2))) (.mk [(.mk (.bind (.generated .binding 3)) (some .bytes) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 250)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 250))))), (.mk (.bind (.generated .binding 4)) (some .bytes) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 251))]) none (.move (.generated .binding 2)))] (.move (.generated .part 251))))), (.mk (.bind (.generated .holder 252)) none (.call (.function 65) [(.move (.generated .binding 1)), (.call (.function 7) [(.lit (.str ":"))] false)] true))] (.matchOn (.move (.generated .holder 252)) [(.mk .none (.mk [] (.succeed (.construct (.none .bytes) [])))), (.mk (.some (.bind (.generated .binding 5))) (.mk [(.mk (.bind (.generated .binding 6)) (some .bytes) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 253)), .wild]) none (.move (.generated .binding 5)))] (.move (.generated .part 253))))), (.mk (.bind (.generated .binding 7)) (some .bytes) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 254))]) none (.move (.generated .binding 5)))] (.move (.generated .part 254))))), (.mk (.bind (.generated .binding 8)) (some (.option .bytes)) (.call (.function 77) [(.move (.generated .binding 7))] false))] (.cond (.call (.function 67) [(.move (.generated .binding 3))] true) (.mk [] (.cond (.call (.function 67) [(.move (.generated .binding 4))] true) (.mk [] (.cond (.call (.function 67) [(.move (.generated .binding 6))] true) (.mk [] (.succeed (.move (.generated .binding 8)))) (.mk [] (.succeed (.construct (.none .bytes) []))))) (.mk [] (.succeed (.construct (.none .bytes) []))))) (.mk [] (.succeed (.construct (.none .bytes) []))))))])))]))) :: + (.function (.generated .function 67) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] (.fallible .bool) (.mk [] (.call (.function 78) [(.call (.function 32) [(.move (.generated .binding 0))] true)] false))) :: + (.function (.generated .function 68) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] .bool (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 255)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 255))] false)))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 256)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 256))] false)))), (.mk (.bind (.generated .operand 257)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 258)) none (.copy (.generated .binding 2)))] (.cond (.call (.runtime .natLe) [(.move (.generated .operand 257)), (.move (.generated .operand 258))] false) (.mk [(.mk (.bind (.generated .holder 264)) none (.block (.mk [(.mk (.bind (.generated .operand 261)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 262)) none (.block (.mk [(.mk (.bind (.generated .operand 259)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 260)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 259)), (.move (.generated .operand 260))] false)))), (.mk (.bind (.generated .operand 263)) none (.copy (.generated .binding 3)))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 261)), (.move (.generated .operand 262)), (.move (.generated .operand 263))] false))))] (.matchOn (.move (.generated .holder 264)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.bind (.generated .binding 4))) (.mk [(.mk (.bind (.generated .operand 265)) none (.move (.generated .binding 4))), (.mk (.bind (.generated .operand 266)) none (.move (.generated .binding 1)))] (.call (.runtime .equal) [(.move (.generated .operand 265)), (.move (.generated .operand 266))] false)))])) (.mk [] (.lit (.bool false)))))) :: + (.function (.generated .function 69) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := (.fixed .u8) }] .bool (.mk [(.mk (.bind (.generated .holder 267)) none (.call (.function 51) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 267)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.bind (.generated .binding 3))) (.mk [(.mk (.bind (.generated .operand 268)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 269)) none (.copy (.generated .binding 2)))] (.call (.runtime .equal) [(.move (.generated .operand 268)), (.move (.generated .operand 269))] false)))]))) :: + (.function (.generated .function 70) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := (.fixed .u8) }, { pattern := (.bind (.generated .binding 3)), type := (.fixed .u8) }] .bool (.mk [(.mk (.bind (.generated .holder 270)) none (.call (.function 51) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 270)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 79) [(.copy (.generated .binding 4)), (.copy (.generated .binding 2)), (.copy (.generated .binding 3))] false)))]))) :: + (.function (.generated .function 71) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 8) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := (.pair .nat .nat) }] (.fallible (.pair (.pair .nat .nat) .bool)) (.mk [(.mk (.bind (.generated .holder 271)) none (.copy (.generated .binding 1)))] (.cond (.isZero (.generated .holder 271)) (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 271))), (.mk (.bind (.generated .holder 273)) none (.block (.mk [(.mk (.bind (.generated .callee 272)) (some (.fn 8)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 272) [(.copy (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 273)) [(.mk .none (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 71) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)))]))))) :: + (.function (.generated .function 72) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := (.pair .nat .nat) }] (.fallible (.option (.pair .nat .nat))) (.mk [] (.call (.function 80) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false))) :: + (.function (.generated .function 73) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] (.fallible (.option (.pair .bytes .bytes))) (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 274)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 274))] false)))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 275)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 275))] false)))), (.mk (.bind (.generated .operand 276)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 277)) none (.copy (.generated .binding 3)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 276)), (.move (.generated .operand 277))] false) (.mk [] (.succeed (.construct (.none (.pair .bytes .bytes)) []))) (.mk [(.mk (.bind (.generated .binding 4)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 278)), .wild]) none (.call (.function 38) [(.construct (.closure 7 81) [(.clone (.generated .binding 1)), (.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 279)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 280)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 279)), (.move (.generated .operand 280))] true))), (.block (.mk [(.mk (.bind (.generated .operand 281)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 282)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 281)), (.move (.generated .operand 282))] false)))] true))] (.move (.generated .part 278)))))] (.cond (.call (.function 82) [(.clone (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 4))] false) (.mk [] (.succeed (.construct .some [(.pair (.call (.function 18) [(.clone (.generated .binding 0)), (.lit (.nat 0)), (.copy (.generated .binding 4))] false) (.call (.function 18) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 283)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 284)) none (.copy (.generated .binding 3)))] (.call (.runtime .natAdd) [(.move (.generated .operand 283)), (.move (.generated .operand 284))] true))), (.block (.mk [(.mk (.bind (.generated .operand 287)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 288)) none (.block (.mk [(.mk (.bind (.generated .operand 285)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 286)) none (.copy (.generated .binding 3)))] (.call (.runtime .natAdd) [(.move (.generated .operand 285)), (.move (.generated .operand 286))] true))))] (.call (.runtime .natSub) [(.move (.generated .operand 287)), (.move (.generated .operand 288))] false)))] false))]))) (.mk [] (.succeed (.construct (.none (.pair .bytes .bytes)) [])))))))) :: + (.function (.generated .function 74) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] (.fallible (.result (.pair .bytes (.list .bytes)) .bytes)) (.mk [(.mk (.bind (.generated .holder 289)) none (.call (.function 83) [(.construct (.closure 9 84) []), (.construct (.ok (.list .bytes) .bytes) [(.construct (.nil .bytes) [])]), (.call (.function 85) [(.move (.generated .binding 1)), (.lit (.fixed .u8 44))] true)] true))] (.matchOn (.move (.generated .holder 289)) [(.mk (.ok (.bind (.generated .binding 3))) (.mk [(.mk (.bind (.generated .holder 290)) none (.clone (.generated .binding 3)))] (.matchOn (.uncons (.generated .holder 290)) [(.mk .none (.mk [] (.succeed (.call (.function 59) [(.call (.function 7) [(.lit (.str "an axiom list cannot be empty"))] false)] false)))), (.mk (.some (.tuple [.wild, .wild])) (.mk [] (.succeed (.call (.function 58) [(.move (.generated .binding 0)), (.move (.generated .binding 3))] false))))]))), (.mk (.err (.bind (.generated .binding 2))) (.mk [] (.succeed (.call (.function 59) [(.move (.generated .binding 2))] false))))]))) :: + (.function (.generated .function 75) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .operand 291)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 292)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 291)), (.move (.generated .operand 292))] false) (.mk [] (.succeed (.lit (.nat 0)))) (.mk [(.mk (.bind (.generated .operand 295)) none (.call (.function 55) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 293)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 294)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 293)), (.move (.generated .operand 294))] false)))] true)), (.mk (.bind (.generated .operand 296)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 295)), (.move (.generated .operand 296))] false) (.mk [] (.succeed (.lit (.nat 1)))) (.mk [(.mk (.bind (.generated .operand 297)) none (.lit (.nat 2))), (.mk (.bind (.generated .operand 298)) none (.copy (.generated .binding 1)))] (.cond (.cond (.call (.runtime .natLe) [(.move (.generated .operand 297)), (.move (.generated .operand 298))] false) (.mk [(.mk (.bind (.generated .operand 301)) none (.call (.function 55) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 299)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 300)) none (.lit (.nat 2)))] (.call (.runtime .natSub) [(.move (.generated .operand 299)), (.move (.generated .operand 300))] false)))] true)), (.mk (.bind (.generated .operand 302)) none (.lit (.nat 2)))] (.call (.runtime .natEq) [(.move (.generated .operand 301)), (.move (.generated .operand 302))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 2)))) (.mk [(.mk (.bind (.generated .operand 303)) none (.lit (.nat 3))), (.mk (.bind (.generated .operand 304)) none (.copy (.generated .binding 1)))] (.cond (.cond (.call (.runtime .natLe) [(.move (.generated .operand 303)), (.move (.generated .operand 304))] false) (.mk [(.mk (.bind (.generated .operand 307)) none (.call (.function 55) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 305)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 306)) none (.lit (.nat 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 305)), (.move (.generated .operand 306))] false)))] true)), (.mk (.bind (.generated .operand 308)) none (.lit (.nat 3)))] (.call (.runtime .natEq) [(.move (.generated .operand 307)), (.move (.generated .operand 308))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0))))))))))))) :: + (.function (.generated .function 76) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] (.fallible (.option .nat)) (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 309)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 309))] false)))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 310)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 310))] false)))), (.mk (.bind (.generated .binding 4)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 311)), .wild]) none (.call (.function 38) [(.construct (.closure 7 86) [(.clone (.generated .binding 1)), (.copy (.generated .binding 3)), (.clone (.generated .binding 0)), (.copy (.generated .binding 2))]), (.block (.mk [(.mk (.bind (.generated .operand 312)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 313)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 312)), (.move (.generated .operand 313))] true))), (.lit (.nat 0))] true))] (.move (.generated .part 311)))))] (.cond (.call (.function 82) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 4))] false) (.mk [] (.succeed (.construct .some [(.copy (.generated .binding 4))]))) (.mk [] (.succeed (.construct (.none .nat) [])))))) :: + (.function (.generated .function 77) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] (.option .bytes) (.mk [(.mk (.bind (.generated .holder 314)) none (.call (.function 49) [(.move (.generated .binding 0)), (.call (.function 7) [(.lit (.str " "))] false)] false))] (.matchOn (.move (.generated .holder 314)) [(.mk .none (.mk [] (.construct (.none .bytes) []))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.call (.function 49) [(.move (.generated .binding 1)), (.call (.function 7) [(.lit (.str "info: "))] false)] false)))]))) :: + (.function (.generated .function 78) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] (.fallible .bool) (.mk [(.mk (.bind (.generated .binding 2)) (some .bytes) (.block (.mk [(.mk (.bind (.generated .holder 315)) none (.call (.function 49) [(.clone (.generated .binding 0)), (.call (.function 7) [(.lit (.str "+"))] false)] false))] (.matchOn (.move (.generated .holder 315)) [(.mk .none (.mk [] (.move (.generated .binding 0)))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.move (.generated .binding 1))))])))), (.mk (.bind (.generated .binding 3)) (some .bool) (.call (.function 87) [(.call (.function 20) [(.clone (.generated .binding 2))] true)] false)), (.mk (.bind (.generated .operand 317)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 318)) none (.block (.mk [(.mk (.bind (.generated .operand 316)) none (.clone (.generated .binding 2)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 316))] false))))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 317)), (.move (.generated .operand 318))] false) (.mk [] (.cond (.call (.function 88) [(.move (.generated .binding 2))] true) (.mk [] (.succeed (.copy (.generated .binding 3)))) (.mk [] (.succeed (.lit (.bool false)))))) (.mk [] (.succeed (.lit (.bool false))))))) :: + (.function (.generated .function 79) [{ pattern := (.bind (.generated .binding 0)), type := (.fixed .u8) }, { pattern := (.bind (.generated .binding 1)), type := (.fixed .u8) }, { pattern := (.bind (.generated .binding 2)), type := (.fixed .u8) }] .bool (.mk [(.mk (.bind (.generated .holder 321)) none (.block (.mk [(.mk (.bind (.generated .operand 319)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 320)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedSub .u8)) [(.move (.generated .operand 319)), (.move (.generated .operand 320))] false))))] (.matchOn (.move (.generated .holder 321)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some .wild) (.mk [(.mk (.bind (.generated .holder 324)) none (.block (.mk [(.mk (.bind (.generated .operand 322)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 323)) none (.copy (.generated .binding 0)))] (.call (.runtime (.checkedSub .u8)) [(.move (.generated .operand 322)), (.move (.generated .operand 323))] false))))] (.matchOn (.move (.generated .holder 324)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some .wild) (.mk [] (.lit (.bool true))))])))]))) :: + (.function (.generated .function 80) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := (.pair .nat .nat) }] (.fallible (.option (.pair .nat .nat))) (.mk [(.mk (.bind (.generated .operand 326)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 325))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 325))))), (.mk (.bind (.generated .operand 327)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 326)), (.move (.generated .operand 327))] false) (.mk [] (.succeed (.construct (.none (.pair .nat .nat)) []))) (.mk [(.mk (.bind (.generated .holder 329)) none (.call (.function 51) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 328)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 328))))] false))] (.matchOn (.move (.generated .holder 329)) [(.mk .none (.mk [] (.succeed (.construct (.none (.pair .nat .nat)) [])))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 331)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 330)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 330))))), (.mk (.bind (.generated .operand 332)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 331)), (.move (.generated .operand 332))] true))) (.call (.function 89) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 333))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 333)))), (.copy (.generated .binding 2))] false))]))))]))))) :: + (.function (.generated .function 81) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .bytes }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.option .nat) (.mk [] (.call (.function 90) [(.move (.generated .binding 1)), (.move (.generated .binding 0)), (.copy (.generated .binding 2))] false))) :: + (.function (.generated .function 82) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .bytes }, { pattern := (.bind (.generated .binding 2)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .holder 338)) none (.block (.mk [(.mk (.bind (.generated .operand 335)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 336)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 337)) none (.block (.mk [(.mk (.bind (.generated .operand 334)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 334))] false))))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 335)), (.move (.generated .operand 336)), (.move (.generated .operand 337))] false))))] (.matchOn (.move (.generated .holder 338)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.bind (.generated .binding 3))) (.mk [(.mk (.bind (.generated .operand 339)) none (.move (.generated .binding 3))), (.mk (.bind (.generated .operand 340)) none (.move (.generated .binding 1)))] (.call (.runtime .equal) [(.move (.generated .operand 339)), (.move (.generated .operand 340))] false)))]))) :: + (.function (.generated .function 83) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 9) }, { pattern := (.bind (.generated .binding 1)), type := (.result (.list .bytes) .bytes) }, { pattern := (.bind (.generated .binding 2)), type := (.list .bytes) }] (.fallible (.result (.list .bytes) .bytes)) (.mk [(.mk (.bind (.generated .holder 341)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 341)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 83) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 342)) (some (.fn 9)) (.move (.generated .binding 0)))] (.apply (.generated .callee 342) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]))) :: + (.function (.generated .function 84) [{ pattern := (.bind (.generated .binding 0)), type := (.result (.list .bytes) .bytes) }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] (.fallible (.result (.list .bytes) .bytes)) (.mk [] (.call (.function 91) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false))) :: + (.function (.generated .function 85) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := (.fixed .u8) }] (.fallible (.list .bytes)) (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 343)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 343))] false)))), (.mk (.bind (.generated .binding 3)) (some (.pair .nat (.pair .nat (.list .bytes)))) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 344)), .wild]) none (.call (.function 15) [(.construct (.closure 2 92) [(.copy (.generated .binding 1)), (.clone (.generated .binding 0))]), (.copy (.generated .binding 2)), (.pair (.lit (.nat 0)) (.pair (.lit (.nat 0)) (.construct (.nil .bytes) [])))] true))] (.move (.generated .part 344))))), (.mk (.bind (.generated .binding 4)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 345)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 346))]) none (.clone (.generated .binding 3)))] (.move (.generated .part 346)))))] (.move (.generated .part 345)))))] (.succeed (.call (.function 17) [(.construct .cons [(.call (.function 18) [(.move (.generated .binding 0)), (.copy (.generated .binding 4)), (.block (.mk [(.mk (.bind (.generated .operand 347)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 348)) none (.copy (.generated .binding 4)))] (.call (.runtime .natSub) [(.move (.generated .operand 347)), (.move (.generated .operand 348))] false)))] false), (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 349))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 350))]) none (.move (.generated .binding 3)))] (.move (.generated .part 350)))))] (.move (.generated .part 349))))])] false)))) :: + (.function (.generated .function 86) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := .bytes }, { pattern := (.bind (.generated .binding 3)), type := .nat }, { pattern := (.bind (.generated .binding 4)), type := .nat }] (.fallible (.option .nat)) (.mk [] (.cond (.call (.function 82) [(.move (.generated .binding 2)), (.move (.generated .binding 0)), (.copy (.generated .binding 4))] false) (.mk [] (.succeed (.construct (.none .nat) []))) (.mk [(.mk (.bind (.generated .operand 353)) none (.block (.mk [(.mk (.bind (.generated .operand 351)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 352)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 351)), (.move (.generated .operand 352))] true)))), (.mk (.bind (.generated .operand 354)) none (.copy (.generated .binding 3)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 353)), (.move (.generated .operand 354))] false) (.mk [] (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 355)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 356)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 355)), (.move (.generated .operand 356))] true)))]))) (.mk [] (.succeed (.construct (.none .nat) [])))))))) :: + (.function (.generated .function 87) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] .bool (.mk [(.mk (.bind (.generated .operand 358)) none (.block (.mk [(.mk (.bind (.generated .operand 357)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 357))] false)))), (.mk (.bind (.generated .operand 359)) none (.lit (.nat 20)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 358)), (.move (.generated .operand 359))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 361)) none (.block (.mk [(.mk (.bind (.generated .operand 360)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 360))] false)))), (.mk (.bind (.generated .operand 362)) none (.lit (.nat 20)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 361)), (.move (.generated .operand 362))] false) (.mk [(.mk (.bind (.generated .operand 369)) none (.block (.mk [(.mk (.bind (.generated .operand 367)) none (.block (.mk [(.mk (.bind (.generated .operand 363)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 364)) none (.call (.function 7) [(.lit (.str "18446744073709551615"))] false))] (.call (.runtime .compareBytes) [(.move (.generated .operand 363)), (.move (.generated .operand 364))] false)))), (.mk (.bind (.generated .operand 368)) none (.block (.mk [(.mk (.bind (.generated .operand 365)) none (.lit (.bytes (ByteArray.mk #[1])))), (.mk (.bind (.generated .operand 366)) none (.lit (.bytes (ByteArray.mk #[0]))))] (.call (.runtime .compareBytes) [(.move (.generated .operand 365)), (.move (.generated .operand 366))] false))))] (.call (.runtime .equal) [(.move (.generated .operand 367)), (.move (.generated .operand 368))] false))))] (.call (.runtime .boolNot) [(.move (.generated .operand 369))] false)) (.mk [] (.lit (.bool false)))))))) :: + (.function (.generated .function 88) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] (.fallible .bool) (.mk [(.mk (.bind (.generated .operand 373)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 370)), .wild]) none (.call (.function 38) [(.construct (.closure 7 93) [(.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 371)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 371))] false))), (.lit (.nat 0))] true))] (.move (.generated .part 370))))), (.mk (.bind (.generated .operand 374)) none (.block (.mk [(.mk (.bind (.generated .operand 372)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 372))] false))))] (.succeed (.call (.runtime .natEq) [(.move (.generated .operand 373)), (.move (.generated .operand 374))] false)))) :: + (.function (.generated .function 89) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := (.fixed .u8) }] .nat (.mk [(.mk (.bind (.generated .operand 375)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 376)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 375)), (.move (.generated .operand 376))] false) (.mk [] (.lit (.nat 2))) (.mk [(.mk (.bind (.generated .operand 377)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 378)) none (.lit (.fixed .u8 46)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 377)), (.move (.generated .operand 378))] false) (.mk [(.mk (.bind (.generated .operand 379)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 380)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 379)), (.move (.generated .operand 380))] false) (.mk [] (.lit (.nat 0))) (.mk [] (.lit (.nat 2))))) (.mk [] (.cond (.call (.function 94) [(.copy (.generated .binding 1))] false) (.mk [] (.lit (.nat 1))) (.mk [(.mk (.bind (.generated .operand 381)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 382)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 381)), (.move (.generated .operand 382))] false) (.mk [] (.cond (.call (.function 95) [(.copy (.generated .binding 1))] false) (.mk [] (.lit (.nat 1))) (.mk [] (.lit (.nat 2))))) (.mk [] (.lit (.nat 2)))))))))))) :: + (.function (.generated .function 90) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .bytes }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.option .nat) (.mk [] (.cond (.call (.function 82) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 2))] false) (.mk [] (.construct (.none .nat) [])) (.mk [(.mk (.bind (.generated .operand 383)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 384)) none (.copy (.generated .binding 2)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 383)), (.move (.generated .operand 384))] false) (.mk [] (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 385)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 386)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 385)), (.move (.generated .operand 386))] false)))])) (.mk [] (.construct (.none .nat) []))))))) :: + (.function (.generated .function 91) [{ pattern := (.bind (.generated .binding 0)), type := (.result (.list .bytes) .bytes) }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] (.fallible (.result (.list .bytes) .bytes)) (.mk [(.mk (.bind (.generated .holder 387)) none (.clone (.generated .binding 0)))] (.matchOn (.move (.generated .holder 387)) [(.mk (.ok (.bind (.generated .binding 3))) (.mk [(.mk (.bind (.generated .binding 4)) (some .bytes) (.call (.function 32) [(.move (.generated .binding 1))] true))] (.cond (.call (.function 61) [(.clone (.generated .binding 4))] true) (.mk [(.mk (.bind (.generated .holder 388)) none (.call (.function 96) [(.clone (.generated .binding 4)), (.move (.generated .binding 3))] false))] (.matchOn (.move (.generated .holder 388)) [(.mk .none (.mk [] (.succeed (.construct (.err (.list .bytes) .bytes) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "duplicate axiom name "))] false), (.call (.function 40) [(.move (.generated .binding 4))] false)] false)])))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.succeed (.construct (.ok (.list .bytes) .bytes) [(.move (.generated .binding 5))]))))])) (.mk [] (.succeed (.construct (.err (.list .bytes) .bytes) [(.call (.function 60) [(.move (.generated .binding 4))] false)])))))), (.mk (.err .wild) (.mk [] (.succeed (.move (.generated .binding 0)))))]))) :: + (.function (.generated .function 92) [{ pattern := (.bind (.generated .binding 0)), type := (.fixed .u8) }, { pattern := (.bind (.generated .binding 1)), type := .bytes }, { pattern := (.bind (.generated .binding 2)), type := (.pair .nat (.pair .nat (.list .bytes))) }] (.fallible (.option (.pair .nat (.pair .nat (.list .bytes))))) (.mk [] (.call (.function 97) [(.move (.generated .binding 1)), (.copy (.generated .binding 0)), (.move (.generated .binding 2))] false))) :: + (.function (.generated .function 93) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.option .nat)) (.mk [] (.call (.function 98) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false))) :: + (.function (.generated .function 94) [{ pattern := (.bind (.generated .binding 0)), type := (.fixed .u8) }] .bool (.mk [] (.cond (.call (.function 79) [(.copy (.generated .binding 0)), (.lit (.fixed .u8 65)), (.lit (.fixed .u8 90))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 79) [(.copy (.generated .binding 0)), (.lit (.fixed .u8 97)), (.lit (.fixed .u8 122))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 389)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 390)) none (.lit (.fixed .u8 95)))] (.call (.runtime .equal) [(.move (.generated .operand 389)), (.move (.generated .operand 390))] false))))))) :: + (.function (.generated .function 95) [{ pattern := (.bind (.generated .binding 0)), type := (.fixed .u8) }] .bool (.mk [] (.cond (.call (.function 94) [(.copy (.generated .binding 0))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 79) [(.copy (.generated .binding 0)), (.lit (.fixed .u8 48)), (.lit (.fixed .u8 57))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 391)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 392)) none (.lit (.fixed .u8 63)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 391)), (.move (.generated .operand 392))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 393)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 394)) none (.lit (.fixed .u8 39)))] (.call (.runtime .equal) [(.move (.generated .operand 393)), (.move (.generated .operand 394))] false))))))))) :: + (.function (.generated .function 96) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := (.list .bytes) }] (.option (.list .bytes)) (.mk [(.mk (.bind (.generated .holder 395)) none (.move (.generated .binding 1)))] (.matchOn (.uncons (.generated .holder 395)) [(.mk .none (.mk [] (.construct .some [(.construct .cons [(.move (.generated .binding 0)), (.construct (.nil .bytes) [])])]))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .operand 396)) none (.clone (.generated .binding 0))), (.mk (.bind (.generated .operand 397)) none (.clone (.generated .binding 2)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 396)), (.move (.generated .operand 397))] false) (.mk [] (.construct (.none (.list .bytes)) [])) (.mk [] (.cond (.call (.function 54) [(.clone (.generated .binding 0)), (.clone (.generated .binding 2))] false) (.mk [] (.construct .some [(.construct .cons [(.move (.generated .binding 0)), (.construct .cons [(.move (.generated .binding 2)), (.move (.generated .binding 3))])])])) (.mk [(.mk (.bind (.generated .holder 398)) none (.call (.function 96) [(.move (.generated .binding 0)), (.move (.generated .binding 3))] false))] (.matchOn (.move (.generated .holder 398)) [(.mk .none (.mk [] (.construct (.none (.list .bytes)) []))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.construct .some [(.construct .cons [(.move (.generated .binding 2)), (.move (.generated .binding 4))])])))])))))))]))) :: + (.function (.generated .function 97) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := (.fixed .u8) }, { pattern := (.bind (.generated .binding 2)), type := (.pair .nat (.pair .nat (.list .bytes))) }] (.fallible (.option (.pair .nat (.pair .nat (.list .bytes))))) (.mk [(.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 399)), .wild]) none (.clone (.generated .binding 2)))] (.move (.generated .part 399))))), (.mk (.bind (.generated .binding 4)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 400)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 401))]) none (.clone (.generated .binding 2)))] (.move (.generated .part 401)))))] (.move (.generated .part 400))))), (.mk (.bind (.generated .binding 5)) (some (.list .bytes)) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 402))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 403))]) none (.move (.generated .binding 2)))] (.move (.generated .part 403)))))] (.move (.generated .part 402))))), (.mk (.bind (.generated .holder 404)) none (.call (.function 51) [(.clone (.generated .binding 0)), (.copy (.generated .binding 3))] false))] (.matchOn (.move (.generated .holder 404)) [(.mk .none (.mk [] (.succeed (.construct (.none (.pair .nat (.pair .nat (.list .bytes)))) [])))), (.mk (.some (.bind (.generated .binding 6))) (.mk [(.mk (.bind (.generated .operand 405)) none (.copy (.generated .binding 6))), (.mk (.bind (.generated .operand 406)) none (.copy (.generated .binding 1)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 405)), (.move (.generated .operand 406))] false) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 407)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 408)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 407)), (.move (.generated .operand 408))] true))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 409)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 410)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 409)), (.move (.generated .operand 410))] true))) (.construct .cons [(.call (.function 18) [(.move (.generated .binding 0)), (.copy (.generated .binding 4)), (.block (.mk [(.mk (.bind (.generated .operand 411)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 412)) none (.copy (.generated .binding 4)))] (.call (.runtime .natSub) [(.move (.generated .operand 411)), (.move (.generated .operand 412))] false)))] false), (.move (.generated .binding 5))])))]))) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 413)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 414)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 413)), (.move (.generated .operand 414))] true))) (.pair (.copy (.generated .binding 4)) (.move (.generated .binding 5))))]))))))]))) :: + (.function (.generated .function 98) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.option .nat)) (.mk [] (.cond (.call (.function 70) [(.move (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 48)), (.lit (.fixed .u8 57))] false) (.mk [] (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 415)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 416)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 415)), (.move (.generated .operand 416))] true)))]))) (.mk [] (.succeed (.construct (.none .nat) [])))))) :: + []) } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [(([(.adt 1), .bytes], (.adt 1)), true), (([(.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (.adt 2)], (.result (.list (.pair .bytes (.list .bytes))) (.adt 0))), false), (([(.pair .nat (.pair .nat (.list .bytes)))], (.option (.pair .nat (.pair .nat (.list .bytes))))), true), (([.nat, .bytes], .nat), true), (([.nat, (.adt 2)], .nat), true), (([(.list (.adt 2)), (.adt 2)], (.list (.adt 2))), false), (([(.list .bytes), .bytes], (.list .bytes)), false), (([.nat], (.option .nat)), true), (([(.pair .nat .nat)], (.option (.pair .nat .nat))), true), (([(.result (.list .bytes) .bytes), .bytes], (.result (.list .bytes) .bytes)), true)] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 1) [(.call (.function 2) [(.construct (.closure 0 3) []), (.construct (.adt 1 0) [(.construct (.nil (.adt 2)) []), (.clone (.generated .binding 1))]), (.call (.function 4) [(.move (.generated .binding 0))] true)] true), (.move (.generated .binding 1))] false), [(1, (.list .bytes), (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.callF (ts := [(.adt 1), (.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.adt 1), .bytes] (.adt 1)), (.adt 1), (.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list (.adt 2)), (.list .bytes)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 1)) [(.mk (.adt 1 0 [(.bind (.generated .binding 7)), .wild]) (.mk [(.mk (.bind (.generated .binding 9)) (some (.result (.list (.pair .bytes (.list .bytes))) (.adt 0))) (.call (.function 5) [(.call (.function 6) [(.call (.function 6) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "expected "))] false), (.call (.function 8) [(.call (.function 9) [(.clone (.generated .binding 1))] true)] true)] false), (.call (.function 7) [(.lit (.str " audit records, found "))] false)] false), (.call (.function 8) [(.call (.function 10) [(.clone (.generated .binding 7))] true)] true)] false), (.construct (.none .bytes) [])] false)), (.mk (.bind (.generated .operand 2)) none (.call (.function 10) [(.clone (.generated .binding 7))] true)), (.mk (.bind (.generated .operand 3)) none (.call (.function 9) [(.move (.generated .binding 1))] true))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] false) (.mk [] (.succeed (.call (.function 11) [(.construct (.closure 1 12) []), (.construct (.ok (.list (.pair .bytes (.list .bytes))) (.adt 0)) [(.construct (.nil (.pair .bytes (.list .bytes))) [])]), (.call (.function 13) [(.move (.generated .binding 7))] false)] false))) (.mk [] (.succeed (.move (.generated .binding 9))))))), (.mk (.adt 1 1 [.wild, .wild, (.bind (.generated .binding 5)), (.bind (.generated .binding 6))]) (.mk [] (.succeed (.call (.function 5) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "unterminated axiom payload: "))] false), (.move (.generated .binding 5))] false), (.move (.generated .binding 6))] false)))), (.mk (.adt 1 2 [(.bind (.generated .binding 2))]) (.mk [] (.succeed (.construct (.err (.list (.pair .bytes (.list .bytes))) (.adt 0)) [(.move (.generated .binding 2))]))))]), [(1, (.list .bytes), (some 1)), (0, (.adt 1), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.adt 1)) (U := []) (view := false) (idx := [2, 1, 0]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(8, (.list .bytes), none), (7, (.list (.adt 2)), (some 7)), (1, (.list .bytes), (some 1)), (0, (.adt 1), (some 0))]) (j := 2) (loads := []) (lets := [(.mk (.bind (.generated .binding 9)) (some (.result (.list (.pair .bytes (.list .bytes))) (.adt 0))) (.call (.function 5) [(.call (.function 6) [(.call (.function 6) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "expected "))] false), (.call (.function 8) [(.call (.function 9) [(.clone (.generated .binding 1))] true)] true)] false), (.call (.function 7) [(.lit (.str " audit records, found "))] false)] false), (.call (.function 8) [(.call (.function 10) [(.clone (.generated .binding 7))] true)] true)] false), (.construct (.none .bytes) [])] false)), (.mk (.bind (.generated .operand 2)) none (.call (.function 10) [(.clone (.generated .binding 7))] true)), (.mk (.bind (.generated .operand 3)) none (.call (.function 9) [(.move (.generated .binding 1))] true))]) (tail := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] false) (.mk [] (.succeed (.call (.function 11) [(.construct (.closure 1 12) []), (.construct (.ok (.list (.pair .bytes (.list .bytes))) (.adt 0)) [(.construct (.nil (.pair .bytes (.list .bytes))) [])]), (.call (.function 13) [(.move (.generated .binding 7))] false)] false))) (.mk [] (.succeed (.move (.generated .binding 9)))))) (Corr.mCons (Γ' := [(6, (.option .bytes), (some 6)), (5, .bytes, (some 5)), (4, (.list .bytes), none), (3, (.list (.adt 2)), none), (1, (.list .bytes), (some 1)), (0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.call (.function 5) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "unterminated axiom payload: "))] false), (.move (.generated .binding 5))] false), (.move (.generated .binding 6))] false))) (Corr.mCons (Γ' := [(2, (.adt 0), (some 2)), (1, (.list .bytes), (some 1)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct (.err (.list (.pair .bytes (.list .bytes))) (.adt 0)) [(.move (.generated .binding 2))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.adt 0)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [.bytes, (.option .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.bytes, (.option .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.adt 2))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := [(.mk (.bind (.generated .operand 2)) none (.call (.function 10) [(.clone (.generated .binding 7))] true)), (.mk (.bind (.generated .operand 3)) none (.call (.function 9) [(.move (.generated .binding 1))] true))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.adt 2))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.call (.function 11) [(.construct (.closure 1 12) []), (.construct (.ok (.list (.pair .bytes (.list .bytes))) (.adt 0)) [(.construct (.nil (.pair .bytes (.list .bytes))) [])]), (.call (.function 13) [(.move (.generated .binding 7))] false)] false))) (lb := []) (tb := (.succeed (.move (.generated .binding 9)))) (Corr.fOfB (Corr.callOps (ts := [(.fn [(.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (.adt 2)] (.result (.list (.pair .bytes (.list .bytes))) (.adt 0))), (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (.list (.adt 2))]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := false) (ff := false) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list (.pair .bytes (.list .bytes)))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.adt 2))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl))))))) rfl rfl rfl)⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 4)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 4)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 2) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 5)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 5) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]), [(2, (.list .bytes), (some 2)), (1, (.adt 1), (some 1)), (0, (.fn [(.adt 1), .bytes] (.adt 1)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .bytes)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .bytes), (some 2)), (1, (.adt 1), (some 1)), (0, (.fn [(.adt 1), .bytes] (.adt 1)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list .bytes), (some 4)), (3, .bytes, (some 3)), (2, (.list .bytes), (some 2)), (1, (.adt 1), (some 1)), (0, (.fn [(.adt 1), .bytes] (.adt 1)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 2) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 5)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 5) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.adt 1), .bytes] (.adt 1)), (.adt 1), (.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 5)) (some (.fn 0)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 5) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true)) (Corr.apply (ps := [(.adt 1), .bytes]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ + +theorem fun3 : FunOK program krate flags 3 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 14) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false), [(1, .bytes, (some 1)), (0, (.adt 1), (some 0))], rfl, rfl, + (Corr.callF (ts := [(.adt 1), .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)⟩⟩ + +theorem fun4 : FunOK program krate flags 4 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 6))] false)))), (.mk (.bind (.generated .binding 2)) (some (.pair .nat (.pair .nat (.list .bytes)))) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 7)), .wild]) none (.call (.function 15) [(.construct (.closure 2 16) [(.clone (.generated .binding 0))]), (.copy (.generated .binding 1)), (.pair (.lit (.nat 0)) (.pair (.lit (.nat 0)) (.construct (.nil .bytes) [])))] true))] (.move (.generated .part 7))))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 8)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 9))]) none (.clone (.generated .binding 2)))] (.move (.generated .part 9)))))] (.move (.generated .part 8))))), (.mk (.bind (.generated .binding 4)) (some (.list .bytes)) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 10))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 11))]) none (.move (.generated .binding 2)))] (.move (.generated .part 11)))))] (.move (.generated .part 10))))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1)))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false) (.mk [] (.succeed (.call (.function 17) [(.construct .cons [(.call (.function 18) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false)))] false), (.move (.generated .binding 4))])] false))) (.mk [] (.succeed (.call (.function 17) [(.move (.generated .binding 4))] false)))), [(0, .bytes, (some 0))], rfl, rfl, + (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 6)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 6))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 7)), .wild]) none (.call (.function 15) [(.construct (.closure 2 16) [(.clone (.generated .binding 0))]), (.copy (.generated .binding 1)), (.pair (.lit (.nat 0)) (.pair (.lit (.nat 0)) (.construct (.nil .bytes) [])))] true))]) (tail := (.move (.generated .part 7))) (Corr.first (ta := (.pair .nat (.pair .nat (.list .bytes)))) (tb := .bool) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes))))), .nat, (.pair .nat (.pair .nat (.list .bytes)))]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [.bytes]) (mask := [false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 8)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 9))]) none (.clone (.generated .binding 2)))] (.move (.generated .part 9)))))]) (tail := (.move (.generated .part 8))) (Corr.first (ta := .nat) (tb := (.list .bytes)) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 9))]) none (.clone (.generated .binding 2)))]) (tail := (.move (.generated .part 9))) (Corr.second (ta := .nat) (tb := (.pair .nat (.list .bytes))) (Corr.var rfl rfl) rfl)) rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 10))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 11))]) none (.move (.generated .binding 2)))] (.move (.generated .part 11)))))]) (tail := (.move (.generated .part 10))) (Corr.second (ta := .nat) (tb := (.list .bytes)) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 11))]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 11))) (Corr.second (ta := .nat) (tb := (.pair .nat (.list .bytes))) (Corr.var rfl rfl) rfl)) rfl)) rfl (Corr.cond (lc := [(.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.call (.function 17) [(.construct .cons [(.call (.function 18) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false)))] false), (.move (.generated .binding 4))])] false))) (lb := []) (tb := (.succeed (.call (.function 17) [(.move (.generated .binding 4))] false))) (Corr.fOfB (Corr.callOps (ts := [(.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.bytes, (.list .bytes)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 3)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.fOfB (Corr.callOps (ts := [(.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))))))))⟩⟩ + +theorem fun5 : FunOK program krate flags 5 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct (.err (.list (.pair .bytes (.list .bytes))) (.adt 0)) [(.call (.function 19) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false)]), [(1, (.option .bytes), (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.build (ts := [(.adt 0)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, (.option .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)⟩⟩ + +theorem fun6 : FunOK program krate flags 6 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 16)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 17)) none (.move (.generated .binding 1)))], (.call (.runtime .appendBytes) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false), [(1, .bytes, (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun7 : FunOK program krate flags 7 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 18)) none (.move (.generated .binding 0)))], (.call (.runtime .utf8Encode) [(.move (.generated .operand 18))] false), [(0, .string, (some 0))], rfl, rfl, + (Corr.prim (ts := [.string]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun8 : FunOK program krate flags 8 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some .bytes) (.call (.function 7) [(.lit (.str "0"))] false)), (.mk (.bind (.generated .binding 2)) (some .bytes) (.call (.function 20) [(.block (.mk [(.mk (.bind (.generated .operand 55)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000000000000))] false)), (.mk (.bind (.generated .operand 56)) none (.block (.mk [(.mk (.bind (.generated .operand 53)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000000000000))] false)), (.mk (.bind (.generated .operand 54)) none (.block (.mk [(.mk (.bind (.generated .operand 51)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000000000))] false)), (.mk (.bind (.generated .operand 52)) none (.block (.mk [(.mk (.bind (.generated .operand 49)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000000000))] false)), (.mk (.bind (.generated .operand 50)) none (.block (.mk [(.mk (.bind (.generated .operand 47)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000000000))] false)), (.mk (.bind (.generated .operand 48)) none (.block (.mk [(.mk (.bind (.generated .operand 45)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000000))] false)), (.mk (.bind (.generated .operand 46)) none (.block (.mk [(.mk (.bind (.generated .operand 43)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000000))] false)), (.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.bind (.generated .operand 41)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000000))] false)), (.mk (.bind (.generated .operand 42)) none (.block (.mk [(.mk (.bind (.generated .operand 39)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000))] false)), (.mk (.bind (.generated .operand 40)) none (.block (.mk [(.mk (.bind (.generated .operand 37)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000))] false)), (.mk (.bind (.generated .operand 38)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000))] false)), (.mk (.bind (.generated .operand 36)) none (.block (.mk [(.mk (.bind (.generated .operand 33)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000))] false)), (.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.bind (.generated .operand 31)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000))] false)), (.mk (.bind (.generated .operand 32)) none (.block (.mk [(.mk (.bind (.generated .operand 29)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000))] false)), (.mk (.bind (.generated .operand 30)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000))] false)), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000))] false)), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000))] false)), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100))] false)), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10))] false)), (.mk (.bind (.generated .operand 20)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1))] false))] (.call (.runtime .appendBytes) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 37)), (.move (.generated .operand 38))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 41)), (.move (.generated .operand 42))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 45)), (.move (.generated .operand 46))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 47)), (.move (.generated .operand 48))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 49)), (.move (.generated .operand 50))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 51)), (.move (.generated .operand 52))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 55)), (.move (.generated .operand 56))] false)))] true)), (.mk (.bind (.generated .operand 57)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 58)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 57)), (.move (.generated .operand 58))] false) (.mk [] (.succeed (.move (.generated .binding 1)))) (.mk [] (.succeed (.move (.generated .binding 2))))), [(0, .nat, (some 0))], rfl, rfl, + (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 55)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000000000000))] false)), (.mk (.bind (.generated .operand 56)) none (.block (.mk [(.mk (.bind (.generated .operand 53)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000000000000))] false)), (.mk (.bind (.generated .operand 54)) none (.block (.mk [(.mk (.bind (.generated .operand 51)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000000000))] false)), (.mk (.bind (.generated .operand 52)) none (.block (.mk [(.mk (.bind (.generated .operand 49)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000000000))] false)), (.mk (.bind (.generated .operand 50)) none (.block (.mk [(.mk (.bind (.generated .operand 47)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000000000))] false)), (.mk (.bind (.generated .operand 48)) none (.block (.mk [(.mk (.bind (.generated .operand 45)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000000))] false)), (.mk (.bind (.generated .operand 46)) none (.block (.mk [(.mk (.bind (.generated .operand 43)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000000))] false)), (.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.bind (.generated .operand 41)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000000))] false)), (.mk (.bind (.generated .operand 42)) none (.block (.mk [(.mk (.bind (.generated .operand 39)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000))] false)), (.mk (.bind (.generated .operand 40)) none (.block (.mk [(.mk (.bind (.generated .operand 37)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000))] false)), (.mk (.bind (.generated .operand 38)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000))] false)), (.mk (.bind (.generated .operand 36)) none (.block (.mk [(.mk (.bind (.generated .operand 33)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000))] false)), (.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.bind (.generated .operand 31)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000))] false)), (.mk (.bind (.generated .operand 32)) none (.block (.mk [(.mk (.bind (.generated .operand 29)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000))] false)), (.mk (.bind (.generated .operand 30)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000))] false)), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000))] false)), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000))] false)), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100))] false)), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10))] false)), (.mk (.bind (.generated .operand 20)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1))] false))] (.call (.runtime .appendBytes) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 37)), (.move (.generated .operand 38))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 41)), (.move (.generated .operand 42))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 45)), (.move (.generated .operand 46))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 47)), (.move (.generated .operand 48))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 49)), (.move (.generated .operand 50))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 51)), (.move (.generated .operand 52))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] false))))]) (tail := (.call (.runtime .appendBytes) [(.move (.generated .operand 55)), (.move (.generated .operand 56))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 53)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000000000000))] false)), (.mk (.bind (.generated .operand 54)) none (.block (.mk [(.mk (.bind (.generated .operand 51)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000000000))] false)), (.mk (.bind (.generated .operand 52)) none (.block (.mk [(.mk (.bind (.generated .operand 49)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000000000))] false)), (.mk (.bind (.generated .operand 50)) none (.block (.mk [(.mk (.bind (.generated .operand 47)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000000000))] false)), (.mk (.bind (.generated .operand 48)) none (.block (.mk [(.mk (.bind (.generated .operand 45)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000000))] false)), (.mk (.bind (.generated .operand 46)) none (.block (.mk [(.mk (.bind (.generated .operand 43)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000000))] false)), (.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.bind (.generated .operand 41)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000000))] false)), (.mk (.bind (.generated .operand 42)) none (.block (.mk [(.mk (.bind (.generated .operand 39)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000))] false)), (.mk (.bind (.generated .operand 40)) none (.block (.mk [(.mk (.bind (.generated .operand 37)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000))] false)), (.mk (.bind (.generated .operand 38)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000))] false)), (.mk (.bind (.generated .operand 36)) none (.block (.mk [(.mk (.bind (.generated .operand 33)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000))] false)), (.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.bind (.generated .operand 31)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000))] false)), (.mk (.bind (.generated .operand 32)) none (.block (.mk [(.mk (.bind (.generated .operand 29)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000))] false)), (.mk (.bind (.generated .operand 30)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000))] false)), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000))] false)), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000))] false)), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100))] false)), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10))] false)), (.mk (.bind (.generated .operand 20)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1))] false))] (.call (.runtime .appendBytes) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 37)), (.move (.generated .operand 38))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 41)), (.move (.generated .operand 42))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 45)), (.move (.generated .operand 46))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 47)), (.move (.generated .operand 48))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 49)), (.move (.generated .operand 50))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 51)), (.move (.generated .operand 52))] false))))]) (tail := (.call (.runtime .appendBytes) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 51)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000000000))] false)), (.mk (.bind (.generated .operand 52)) none (.block (.mk [(.mk (.bind (.generated .operand 49)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000000000))] false)), (.mk (.bind (.generated .operand 50)) none (.block (.mk [(.mk (.bind (.generated .operand 47)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000000000))] false)), (.mk (.bind (.generated .operand 48)) none (.block (.mk [(.mk (.bind (.generated .operand 45)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000000))] false)), (.mk (.bind (.generated .operand 46)) none (.block (.mk [(.mk (.bind (.generated .operand 43)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000000))] false)), (.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.bind (.generated .operand 41)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000000))] false)), (.mk (.bind (.generated .operand 42)) none (.block (.mk [(.mk (.bind (.generated .operand 39)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000))] false)), (.mk (.bind (.generated .operand 40)) none (.block (.mk [(.mk (.bind (.generated .operand 37)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000))] false)), (.mk (.bind (.generated .operand 38)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000))] false)), (.mk (.bind (.generated .operand 36)) none (.block (.mk [(.mk (.bind (.generated .operand 33)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000))] false)), (.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.bind (.generated .operand 31)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000))] false)), (.mk (.bind (.generated .operand 32)) none (.block (.mk [(.mk (.bind (.generated .operand 29)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000))] false)), (.mk (.bind (.generated .operand 30)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000))] false)), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000))] false)), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000))] false)), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100))] false)), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10))] false)), (.mk (.bind (.generated .operand 20)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1))] false))] (.call (.runtime .appendBytes) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 37)), (.move (.generated .operand 38))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 41)), (.move (.generated .operand 42))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 45)), (.move (.generated .operand 46))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 47)), (.move (.generated .operand 48))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 49)), (.move (.generated .operand 50))] false))))]) (tail := (.call (.runtime .appendBytes) [(.move (.generated .operand 51)), (.move (.generated .operand 52))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 49)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000000000))] false)), (.mk (.bind (.generated .operand 50)) none (.block (.mk [(.mk (.bind (.generated .operand 47)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000000000))] false)), (.mk (.bind (.generated .operand 48)) none (.block (.mk [(.mk (.bind (.generated .operand 45)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000000))] false)), (.mk (.bind (.generated .operand 46)) none (.block (.mk [(.mk (.bind (.generated .operand 43)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000000))] false)), (.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.bind (.generated .operand 41)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000000))] false)), (.mk (.bind (.generated .operand 42)) none (.block (.mk [(.mk (.bind (.generated .operand 39)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000))] false)), (.mk (.bind (.generated .operand 40)) none (.block (.mk [(.mk (.bind (.generated .operand 37)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000))] false)), (.mk (.bind (.generated .operand 38)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000))] false)), (.mk (.bind (.generated .operand 36)) none (.block (.mk [(.mk (.bind (.generated .operand 33)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000))] false)), (.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.bind (.generated .operand 31)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000))] false)), (.mk (.bind (.generated .operand 32)) none (.block (.mk [(.mk (.bind (.generated .operand 29)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000))] false)), (.mk (.bind (.generated .operand 30)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000))] false)), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000))] false)), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000))] false)), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100))] false)), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10))] false)), (.mk (.bind (.generated .operand 20)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1))] false))] (.call (.runtime .appendBytes) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 37)), (.move (.generated .operand 38))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 41)), (.move (.generated .operand 42))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 45)), (.move (.generated .operand 46))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 47)), (.move (.generated .operand 48))] false))))]) (tail := (.call (.runtime .appendBytes) [(.move (.generated .operand 49)), (.move (.generated .operand 50))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 47)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000000000))] false)), (.mk (.bind (.generated .operand 48)) none (.block (.mk [(.mk (.bind (.generated .operand 45)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000000))] false)), (.mk (.bind (.generated .operand 46)) none (.block (.mk [(.mk (.bind (.generated .operand 43)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000000))] false)), (.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.bind (.generated .operand 41)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000000))] false)), (.mk (.bind (.generated .operand 42)) none (.block (.mk [(.mk (.bind (.generated .operand 39)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000))] false)), (.mk (.bind (.generated .operand 40)) none (.block (.mk [(.mk (.bind (.generated .operand 37)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000))] false)), (.mk (.bind (.generated .operand 38)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000))] false)), (.mk (.bind (.generated .operand 36)) none (.block (.mk [(.mk (.bind (.generated .operand 33)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000))] false)), (.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.bind (.generated .operand 31)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000))] false)), (.mk (.bind (.generated .operand 32)) none (.block (.mk [(.mk (.bind (.generated .operand 29)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000))] false)), (.mk (.bind (.generated .operand 30)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000))] false)), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000))] false)), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000))] false)), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100))] false)), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10))] false)), (.mk (.bind (.generated .operand 20)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1))] false))] (.call (.runtime .appendBytes) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 37)), (.move (.generated .operand 38))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 41)), (.move (.generated .operand 42))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 45)), (.move (.generated .operand 46))] false))))]) (tail := (.call (.runtime .appendBytes) [(.move (.generated .operand 47)), (.move (.generated .operand 48))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 45)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000000))] false)), (.mk (.bind (.generated .operand 46)) none (.block (.mk [(.mk (.bind (.generated .operand 43)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000000))] false)), (.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.bind (.generated .operand 41)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000000))] false)), (.mk (.bind (.generated .operand 42)) none (.block (.mk [(.mk (.bind (.generated .operand 39)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000))] false)), (.mk (.bind (.generated .operand 40)) none (.block (.mk [(.mk (.bind (.generated .operand 37)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000))] false)), (.mk (.bind (.generated .operand 38)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000))] false)), (.mk (.bind (.generated .operand 36)) none (.block (.mk [(.mk (.bind (.generated .operand 33)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000))] false)), (.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.bind (.generated .operand 31)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000))] false)), (.mk (.bind (.generated .operand 32)) none (.block (.mk [(.mk (.bind (.generated .operand 29)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000))] false)), (.mk (.bind (.generated .operand 30)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000))] false)), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000))] false)), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000))] false)), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100))] false)), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10))] false)), (.mk (.bind (.generated .operand 20)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1))] false))] (.call (.runtime .appendBytes) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 37)), (.move (.generated .operand 38))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 41)), (.move (.generated .operand 42))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] false))))]) (tail := (.call (.runtime .appendBytes) [(.move (.generated .operand 45)), (.move (.generated .operand 46))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 43)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000000))] false)), (.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.bind (.generated .operand 41)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000000))] false)), (.mk (.bind (.generated .operand 42)) none (.block (.mk [(.mk (.bind (.generated .operand 39)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000))] false)), (.mk (.bind (.generated .operand 40)) none (.block (.mk [(.mk (.bind (.generated .operand 37)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000))] false)), (.mk (.bind (.generated .operand 38)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000))] false)), (.mk (.bind (.generated .operand 36)) none (.block (.mk [(.mk (.bind (.generated .operand 33)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000))] false)), (.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.bind (.generated .operand 31)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000))] false)), (.mk (.bind (.generated .operand 32)) none (.block (.mk [(.mk (.bind (.generated .operand 29)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000))] false)), (.mk (.bind (.generated .operand 30)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000))] false)), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000))] false)), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000))] false)), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100))] false)), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10))] false)), (.mk (.bind (.generated .operand 20)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1))] false))] (.call (.runtime .appendBytes) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 37)), (.move (.generated .operand 38))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 41)), (.move (.generated .operand 42))] false))))]) (tail := (.call (.runtime .appendBytes) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 41)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000000))] false)), (.mk (.bind (.generated .operand 42)) none (.block (.mk [(.mk (.bind (.generated .operand 39)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000))] false)), (.mk (.bind (.generated .operand 40)) none (.block (.mk [(.mk (.bind (.generated .operand 37)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000))] false)), (.mk (.bind (.generated .operand 38)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000))] false)), (.mk (.bind (.generated .operand 36)) none (.block (.mk [(.mk (.bind (.generated .operand 33)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000))] false)), (.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.bind (.generated .operand 31)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000))] false)), (.mk (.bind (.generated .operand 32)) none (.block (.mk [(.mk (.bind (.generated .operand 29)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000))] false)), (.mk (.bind (.generated .operand 30)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000))] false)), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000))] false)), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000))] false)), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100))] false)), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10))] false)), (.mk (.bind (.generated .operand 20)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1))] false))] (.call (.runtime .appendBytes) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 37)), (.move (.generated .operand 38))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] false))))]) (tail := (.call (.runtime .appendBytes) [(.move (.generated .operand 41)), (.move (.generated .operand 42))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 39)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000))] false)), (.mk (.bind (.generated .operand 40)) none (.block (.mk [(.mk (.bind (.generated .operand 37)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000))] false)), (.mk (.bind (.generated .operand 38)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000))] false)), (.mk (.bind (.generated .operand 36)) none (.block (.mk [(.mk (.bind (.generated .operand 33)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000))] false)), (.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.bind (.generated .operand 31)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000))] false)), (.mk (.bind (.generated .operand 32)) none (.block (.mk [(.mk (.bind (.generated .operand 29)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000))] false)), (.mk (.bind (.generated .operand 30)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000))] false)), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000))] false)), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000))] false)), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100))] false)), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10))] false)), (.mk (.bind (.generated .operand 20)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1))] false))] (.call (.runtime .appendBytes) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 37)), (.move (.generated .operand 38))] false))))]) (tail := (.call (.runtime .appendBytes) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 37)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000))] false)), (.mk (.bind (.generated .operand 38)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000))] false)), (.mk (.bind (.generated .operand 36)) none (.block (.mk [(.mk (.bind (.generated .operand 33)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000))] false)), (.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.bind (.generated .operand 31)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000))] false)), (.mk (.bind (.generated .operand 32)) none (.block (.mk [(.mk (.bind (.generated .operand 29)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000))] false)), (.mk (.bind (.generated .operand 30)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000))] false)), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000))] false)), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000))] false)), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100))] false)), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10))] false)), (.mk (.bind (.generated .operand 20)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1))] false))] (.call (.runtime .appendBytes) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false))))]) (tail := (.call (.runtime .appendBytes) [(.move (.generated .operand 37)), (.move (.generated .operand 38))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 35)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000))] false)), (.mk (.bind (.generated .operand 36)) none (.block (.mk [(.mk (.bind (.generated .operand 33)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000))] false)), (.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.bind (.generated .operand 31)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000))] false)), (.mk (.bind (.generated .operand 32)) none (.block (.mk [(.mk (.bind (.generated .operand 29)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000))] false)), (.mk (.bind (.generated .operand 30)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000))] false)), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000))] false)), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000))] false)), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100))] false)), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10))] false)), (.mk (.bind (.generated .operand 20)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1))] false))] (.call (.runtime .appendBytes) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false))))]) (tail := (.call (.runtime .appendBytes) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 33)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000))] false)), (.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.bind (.generated .operand 31)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000))] false)), (.mk (.bind (.generated .operand 32)) none (.block (.mk [(.mk (.bind (.generated .operand 29)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000))] false)), (.mk (.bind (.generated .operand 30)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000))] false)), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000))] false)), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000))] false)), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100))] false)), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10))] false)), (.mk (.bind (.generated .operand 20)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1))] false))] (.call (.runtime .appendBytes) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))))]) (tail := (.call (.runtime .appendBytes) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 31)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000))] false)), (.mk (.bind (.generated .operand 32)) none (.block (.mk [(.mk (.bind (.generated .operand 29)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000))] false)), (.mk (.bind (.generated .operand 30)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000))] false)), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000))] false)), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000))] false)), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100))] false)), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10))] false)), (.mk (.bind (.generated .operand 20)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1))] false))] (.call (.runtime .appendBytes) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false))))]) (tail := (.call (.runtime .appendBytes) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 29)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000))] false)), (.mk (.bind (.generated .operand 30)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000))] false)), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000))] false)), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000))] false)), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100))] false)), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10))] false)), (.mk (.bind (.generated .operand 20)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1))] false))] (.call (.runtime .appendBytes) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))]) (tail := (.call (.runtime .appendBytes) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 27)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000))] false)), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000))] false)), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000))] false)), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100))] false)), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10))] false)), (.mk (.bind (.generated .operand 20)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1))] false))] (.call (.runtime .appendBytes) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))))]) (tail := (.call (.runtime .appendBytes) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 25)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000))] false)), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000))] false)), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100))] false)), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10))] false)), (.mk (.bind (.generated .operand 20)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1))] false))] (.call (.runtime .appendBytes) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))))]) (tail := (.call (.runtime .appendBytes) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 23)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000))] false)), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100))] false)), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10))] false)), (.mk (.bind (.generated .operand 20)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1))] false))] (.call (.runtime .appendBytes) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))]) (tail := (.call (.runtime .appendBytes) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 21)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100))] false)), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10))] false)), (.mk (.bind (.generated .operand 20)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1))] false))] (.call (.runtime .appendBytes) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false))))]) (tail := (.call (.runtime .appendBytes) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 19)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10))] false)), (.mk (.bind (.generated .operand 20)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1))] false))]) (tail := (.call (.runtime .appendBytes) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := [(.mk (.bind (.generated .operand 57)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 58)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 57)), (.move (.generated .operand 58))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.move (.generated .binding 1)))) (lb := []) (tb := (.succeed (.move (.generated .binding 2)))) (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl))) (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))))))⟩⟩ + +theorem fun9 : FunOK program krate flags 9 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 22) [(.construct (.closure 3 23) []), (.lit (.nat 0)), (.move (.generated .binding 0))] false), [(0, (.list .bytes), (some 0))], rfl, rfl, + (Corr.callF (ts := [(.fn [.nat, .bytes] .nat), .nat, (.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)⟩⟩ + +theorem fun10 : FunOK program krate flags 10 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 24) [(.construct (.closure 4 25) []), (.lit (.nat 0)), (.move (.generated .binding 0))] false), [(0, (.list (.adt 2)), (some 0))], rfl, rfl, + (Corr.callF (ts := [(.fn [.nat, (.adt 2)] .nat), .nat, (.list (.adt 2))]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)⟩⟩ + +theorem fun11 : FunOK program krate flags 11 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 59)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 59)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 11) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 60)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 60) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]), [(2, (.list (.adt 2)), (some 2)), (1, (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (some 1)), (0, (.fn [(.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (.adt 2)] (.result (.list (.pair .bytes (.list .bytes))) (.adt 0))), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.adt 2))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.adt 2)), (some 2)), (1, (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (some 1)), (0, (.fn [(.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (.adt 2)] (.result (.list (.pair .bytes (.list .bytes))) (.adt 0))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 1))) (Corr.mCons (Γ' := [(4, (.list (.adt 2)), (some 4)), (3, (.adt 2), (some 3)), (2, (.list (.adt 2)), (some 2)), (1, (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (some 1)), (0, (.fn [(.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (.adt 2)] (.result (.list (.pair .bytes (.list .bytes))) (.adt 0))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 11) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 60)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 60) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.fn [(.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (.adt 2)] (.result (.list (.pair .bytes (.list .bytes))) (.adt 0))), (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (.list (.adt 2))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 60)) (some (.fn 1)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 60) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false)) (Corr.apply (ps := [(.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (.adt 2)]) (af := false) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ + +theorem fun12 : FunOK program krate flags 12 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 26) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false), [(1, (.adt 2), (some 1)), (0, (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (some 0))], rfl, rfl, + (Corr.callOps (ts := [(.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (.adt 2)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun13 : FunOK program krate flags 13 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 27) [(.construct (.closure 5 28) []), (.construct (.nil (.adt 2)) []), (.move (.generated .binding 0))] false), [(0, (.list (.adt 2)), (some 0))], rfl, rfl, + (Corr.callOps (ts := [(.fn [(.list (.adt 2)), (.adt 2)] (.list (.adt 2))), (.list (.adt 2)), (.list (.adt 2))]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := false) (ff := false) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun14 : FunOK program krate flags 14 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 61)) none (.clone (.generated .binding 0)))], (.matchOn (.move (.generated .holder 61)) [(.mk (.adt 1 0 [(.bind (.generated .binding 8)), (.bind (.generated .binding 9))]) (.mk [(.mk (.bind (.generated .operand 64)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 65)) none (.block (.mk [(.mk (.bind (.generated .operand 63)) none (.call (.function 32) [(.clone (.generated .binding 1))] true))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 63))] false))))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 64)), (.move (.generated .operand 65))] false) (.mk [] (.succeed (.move (.generated .binding 0)))) (.mk [(.mk (.bind (.generated .holder 66)) none (.call (.function 33) [(.call (.function 32) [(.clone (.generated .binding 1))] true)] true))] (.matchOn (.move (.generated .holder 66)) [(.mk .none (.mk [] (.succeed (.call (.function 31) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "unrecognized audit line: "))] false), (.call (.function 32) [(.move (.generated .binding 1))] true)] false), (.call (.function 34) [(.move (.generated .binding 9))] false)] false)))), (.mk (.some (.bind (.generated .binding 10))) (.mk [] (.call (.function 30) [(.move (.generated .binding 8)), (.clone (.generated .binding 9)), (.move (.generated .binding 10)), (.call (.function 34) [(.move (.generated .binding 9))] false)] false)))]))))), (.mk (.adt 1 1 [(.bind (.generated .binding 3)), (.bind (.generated .binding 4)), (.bind (.generated .binding 5)), (.bind (.generated .binding 6))]) (.mk [(.mk (.bind (.generated .holder 62)) none (.call (.function 29) [(.move (.generated .binding 1))] true))] (.matchOn (.move (.generated .holder 62)) [(.mk .none (.mk [] (.succeed (.call (.function 31) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "unterminated axiom payload: "))] false), (.move (.generated .binding 5))] false), (.move (.generated .binding 6))] false)))), (.mk (.some (.bind (.generated .binding 7))) (.mk [] (.call (.function 30) [(.move (.generated .binding 3)), (.move (.generated .binding 4)), (.call (.function 6) [(.call (.function 6) [(.move (.generated .binding 5)), (.call (.function 7) [(.lit (.str " "))] false)] false), (.move (.generated .binding 7))] false), (.move (.generated .binding 6))] false)))]))), (.mk (.adt 1 2 [.wild]) (.mk [] (.succeed (.move (.generated .binding 0)))))]), [(1, .bytes, (some 1)), (0, (.adt 1), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.adt 1)) (U := []) (view := false) (idx := [2, 1, 0]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(9, (.list .bytes), (some 9)), (8, (.list (.adt 2)), (some 8)), (1, .bytes, (some 1)), (0, (.adt 1), (some 0))]) (j := 2) (loads := []) (lets := [(.mk (.bind (.generated .operand 64)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 65)) none (.block (.mk [(.mk (.bind (.generated .operand 63)) none (.call (.function 32) [(.clone (.generated .binding 1))] true))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 63))] false))))]) (tail := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 64)), (.move (.generated .operand 65))] false) (.mk [] (.succeed (.move (.generated .binding 0)))) (.mk [(.mk (.bind (.generated .holder 66)) none (.call (.function 33) [(.call (.function 32) [(.clone (.generated .binding 1))] true)] true))] (.matchOn (.move (.generated .holder 66)) [(.mk .none (.mk [] (.succeed (.call (.function 31) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "unrecognized audit line: "))] false), (.call (.function 32) [(.move (.generated .binding 1))] true)] false), (.call (.function 34) [(.move (.generated .binding 9))] false)] false)))), (.mk (.some (.bind (.generated .binding 10))) (.mk [] (.call (.function 30) [(.move (.generated .binding 8)), (.clone (.generated .binding 9)), (.move (.generated .binding 10)), (.call (.function 34) [(.move (.generated .binding 9))] false)] false)))])))) (Corr.mCons (Γ' := [(6, (.option .bytes), (some 6)), (5, .bytes, (some 5)), (4, (.list .bytes), (some 4)), (3, (.list (.adt 2)), (some 3)), (1, .bytes, (some 1)), (0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 62)) none (.call (.function 29) [(.move (.generated .binding 1))] true))]) (tail := (.matchOn (.move (.generated .holder 62)) [(.mk .none (.mk [] (.succeed (.call (.function 31) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "unterminated axiom payload: "))] false), (.move (.generated .binding 5))] false), (.move (.generated .binding 6))] false)))), (.mk (.some (.bind (.generated .binding 7))) (.mk [] (.call (.function 30) [(.move (.generated .binding 3)), (.move (.generated .binding 4)), (.call (.function 6) [(.call (.function 6) [(.move (.generated .binding 5)), (.call (.function 7) [(.lit (.str " "))] false)] false), (.move (.generated .binding 7))] false), (.move (.generated .binding 6))] false)))])) (Corr.mCons (Γ' := [(2, (.adt 0), none), (1, .bytes, (some 1)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 0)))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(6, (.option .bytes), (some 6)), (5, .bytes, (some 5)), (4, (.list .bytes), (some 4)), (3, (.list (.adt 2)), (some 3)), (1, .bytes, (some 1)), (0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.call (.function 31) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "unterminated axiom payload: "))] false), (.move (.generated .binding 5))] false), (.move (.generated .binding 6))] false))) (Corr.mCons (Γ' := [(7, .bytes, (some 7)), (6, (.option .bytes), (some 6)), (5, .bytes, (some 5)), (4, (.list .bytes), (some 4)), (3, (.list (.adt 2)), (some 3)), (1, .bytes, (some 1)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.call (.function 30) [(.move (.generated .binding 3)), (.move (.generated .binding 4)), (.call (.function 6) [(.call (.function 6) [(.move (.generated .binding 5)), (.call (.function 7) [(.lit (.str " "))] false)] false), (.move (.generated .binding 7))] false), (.move (.generated .binding 6))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.list (.adt 2)), (.list .bytes), .bytes, (.option .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [.bytes, (.option .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl))) rfl rfl rfl)) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .operand 64)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 65)) none (.block (.mk [(.mk (.bind (.generated .operand 63)) none (.call (.function 32) [(.clone (.generated .binding 1))] true))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 63))] false))))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 64)), (.move (.generated .operand 65))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 63)) none (.call (.function 32) [(.clone (.generated .binding 1))] true))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 63))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.move (.generated .binding 0)))) (lb := [(.mk (.bind (.generated .holder 66)) none (.call (.function 33) [(.call (.function 32) [(.clone (.generated .binding 1))] true)] true))]) (tb := (.matchOn (.move (.generated .holder 66)) [(.mk .none (.mk [] (.succeed (.call (.function 31) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "unrecognized audit line: "))] false), (.call (.function 32) [(.move (.generated .binding 1))] true)] false), (.call (.function 34) [(.move (.generated .binding 9))] false)] false)))), (.mk (.some (.bind (.generated .binding 10))) (.mk [] (.call (.function 30) [(.move (.generated .binding 8)), (.clone (.generated .binding 9)), (.move (.generated .binding 10)), (.call (.function 34) [(.move (.generated .binding 9))] false)] false)))])) (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl))) (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(9, (.list .bytes), (some 9)), (8, (.list (.adt 2)), (some 8)), (1, .bytes, (some 1)), (0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.call (.function 31) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "unrecognized audit line: "))] false), (.call (.function 32) [(.move (.generated .binding 1))] true)] false), (.call (.function 34) [(.move (.generated .binding 9))] false)] false))) (Corr.mCons (Γ' := [(10, .bytes, (some 10)), (9, (.list .bytes), (some 9)), (8, (.list (.adt 2)), (some 8)), (1, .bytes, (some 1)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.call (.function 30) [(.move (.generated .binding 8)), (.clone (.generated .binding 9)), (.move (.generated .binding 10)), (.call (.function 34) [(.move (.generated .binding 9))] false)] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.list (.adt 2)), (.list .bytes), .bytes, (.option .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [.bytes, (.option .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl))) rfl rfl rfl)))) rfl rfl rfl)⟩⟩ + +theorem fun15 : FunOK program krate flags 15 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 67)) none (.copy (.generated .binding 1)))], (.cond (.isZero (.generated .holder 67)) (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 67))), (.mk (.bind (.generated .holder 69)) none (.block (.mk [(.mk (.bind (.generated .callee 68)) (some (.fn 2)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 68) [(.clone (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 69)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 15) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))]))), [(2, (.pair .nat (.pair .nat (.list .bytes))), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes))))), (some 0))], rfl, rfl, + (Corr.matchNat (sl := (some 3)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (lb := [(.mk (.bind (.generated .holder 69)) none (.block (.mk [(.mk (.bind (.generated .callee 68)) (some (.fn 2)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 68) [(.clone (.generated .binding 2))] true))))]) (tb := (.matchOn (.move (.generated .holder 69)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 15) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))])) (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))))) (Corr.matchArms (st := (.option (.pair .nat (.pair .nat (.list .bytes))))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 68)) (some (.fn 2)) (.clone (.generated .binding 0)))]) (tail := (.apply (.generated .callee 68) [(.clone (.generated .binding 2))] true)) (Corr.apply (ps := [(.pair .nat (.pair .nat (.list .bytes)))]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (2, (.pair .nat (.pair .nat (.list .bytes))), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes))))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true))))) (Corr.mCons (Γ' := [(4, (.pair .nat (.pair .nat (.list .bytes))), (some 4)), (3, .nat, (some 3)), (2, (.pair .nat (.pair .nat (.list .bytes))), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes))))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 15) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes))))), .nat, (.pair .nat (.pair .nat (.list .bytes)))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))))))) rfl rfl rfl)))⟩⟩ + +theorem fun16 : FunOK program krate flags 16 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 35) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false), [(1, (.pair .nat (.pair .nat (.list .bytes))), (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.callF (ts := [.bytes, (.pair .nat (.pair .nat (.list .bytes)))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)⟩⟩ + +theorem fun17 : FunOK program krate flags 17 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 36) [(.construct (.closure 6 37) []), (.construct (.nil .bytes) []), (.move (.generated .binding 0))] false), [(0, (.list .bytes), (some 0))], rfl, rfl, + (Corr.callOps (ts := [(.fn [(.list .bytes), .bytes] (.list .bytes)), (.list .bytes), (.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := false) (ff := false) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun18 : FunOK program krate flags 18 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 73)) none (.block (.mk [(.mk (.bind (.generated .operand 70)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 71)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 72)) none (.copy (.generated .binding 2)))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 70)), (.move (.generated .operand 71)), (.move (.generated .operand 72))] false))))], (.matchOn (.move (.generated .holder 73)) [(.mk .none (.mk [] (.lit (.bytes (ByteArray.mk #[]))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.move (.generated .binding 3))))]), [(2, .nat, (some 2)), (1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 70)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 71)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 72)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .sliceBytes) [(.move (.generated .operand 70)), (.move (.generated .operand 71)), (.move (.generated .operand 72))] false)) (Corr.prim (ts := [.bytes, .nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, .nat, (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bytes (ByteArray.mk #[])))) (Corr.mCons (Γ' := [(3, .bytes, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 3))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.bOfE (Corr.value rfl rfl))) rfl rfl rfl)⟩⟩ + +theorem fun19 : FunOK program krate flags 19 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 0 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1))]), [(1, (.option .bytes), (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.build (ts := [.bytes, (.option .bytes)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)⟩⟩ + +theorem fun20 : FunOK program krate flags 20 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 74)), .wild]) none (.call (.function 38) [(.construct (.closure 7 39) [(.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 75)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 75))] false))), (.lit (.nat 0))] true))] (.move (.generated .part 74)))))], (.succeed (.call (.function 18) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.block (.mk [(.mk (.bind (.generated .operand 77)) none (.block (.mk [(.mk (.bind (.generated .operand 76)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 76))] false)))), (.mk (.bind (.generated .operand 78)) none (.copy (.generated .binding 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 77)), (.move (.generated .operand 78))] false)))] false)), [(0, .bytes, (some 0))], rfl, rfl, + (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 74)), .wild]) none (.call (.function 38) [(.construct (.closure 7 39) [(.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 75)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 75))] false))), (.lit (.nat 0))] true))]) (tail := (.move (.generated .part 74))) (Corr.first (ta := .nat) (tb := .bool) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [.nat] (.option .nat)), .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [.bytes]) (mask := [false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 75)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 75))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl)) rfl (Corr.fOfB (Corr.callOps (ts := [.bytes, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 77)) none (.block (.mk [(.mk (.bind (.generated .operand 76)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 76))] false)))), (.mk (.bind (.generated .operand 78)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 77)), (.move (.generated .operand 78))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 76)) none (.move (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 76))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)))⟩⟩ + +theorem fun21 : FunOK program krate flags 21 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 18) [(.call (.function 7) [(.lit (.str "0123456789"))] false), (.block (.mk [(.mk (.bind (.generated .operand 82)) none (.block (.mk [(.mk (.bind (.generated .operand 79)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 80)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 81)) none (.lit (.nat 0)))] (.call (.runtime .natQuot) [(.move (.generated .operand 79)), (.move (.generated .operand 80)), (.move (.generated .operand 81))] false)))), (.mk (.bind (.generated .operand 83)) none (.lit (.nat 10))), (.mk (.bind (.generated .operand 84)) none (.lit (.nat 0)))] (.call (.runtime .natRem) [(.move (.generated .operand 82)), (.move (.generated .operand 83)), (.move (.generated .operand 84))] false))), (.lit (.nat 1))] false), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.callOps (ts := [.bytes, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 82)) none (.block (.mk [(.mk (.bind (.generated .operand 79)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 80)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 81)) none (.lit (.nat 0)))] (.call (.runtime .natQuot) [(.move (.generated .operand 79)), (.move (.generated .operand 80)), (.move (.generated .operand 81))] false)))), (.mk (.bind (.generated .operand 83)) none (.lit (.nat 10))), (.mk (.bind (.generated .operand 84)) none (.lit (.nat 0)))]) (tail := (.call (.runtime .natRem) [(.move (.generated .operand 82)), (.move (.generated .operand 83)), (.move (.generated .operand 84))] false)) (Corr.prim (ts := [.nat, .nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 79)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 80)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 81)) none (.lit (.nat 0)))]) (tail := (.call (.runtime .natQuot) [(.move (.generated .operand 79)), (.move (.generated .operand 80)), (.move (.generated .operand 81))] false)) (Corr.prim (ts := [.nat, .nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun22 : FunOK program krate flags 22 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 85)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 85)) [(.mk .none (.mk [] (.succeed (.copy (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 22) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 86)) (some (.fn 3)) (.move (.generated .binding 0)))] (.apply (.generated .callee 86) [(.copy (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]), [(2, (.list .bytes), (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat, .bytes] .nat), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .bytes)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .bytes), (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat, .bytes] .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.copy (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list .bytes), (some 4)), (3, .bytes, (some 3)), (2, (.list .bytes), (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat, .bytes] .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 22) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 86)) (some (.fn 3)) (.move (.generated .binding 0)))] (.apply (.generated .callee 86) [(.copy (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [.nat, .bytes] .nat), .nat, (.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 86)) (some (.fn 3)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 86) [(.copy (.generated .binding 1)), (.move (.generated .binding 3))] true)) (Corr.apply (ps := [.nat, .bytes]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ + +theorem fun23 : FunOK program krate flags 23 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 87)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 88)) none (.lit (.nat 1)))], (.call (.runtime .natAdd) [(.move (.generated .operand 87)), (.move (.generated .operand 88))] false), [(1, .bytes, none), (0, .nat, (some 0))], rfl, rfl, + (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun24 : FunOK program krate flags 24 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 89)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 89)) [(.mk .none (.mk [] (.succeed (.copy (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 24) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 90)) (some (.fn 4)) (.move (.generated .binding 0)))] (.apply (.generated .callee 90) [(.copy (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]), [(2, (.list (.adt 2)), (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat, (.adt 2)] .nat), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.adt 2))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.adt 2)), (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat, (.adt 2)] .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.copy (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list (.adt 2)), (some 4)), (3, (.adt 2), (some 3)), (2, (.list (.adt 2)), (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat, (.adt 2)] .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 24) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 90)) (some (.fn 4)) (.move (.generated .binding 0)))] (.apply (.generated .callee 90) [(.copy (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [.nat, (.adt 2)] .nat), .nat, (.list (.adt 2))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 90)) (some (.fn 4)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 90) [(.copy (.generated .binding 1)), (.move (.generated .binding 3))] true)) (Corr.apply (ps := [.nat, (.adt 2)]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ + +theorem fun25 : FunOK program krate flags 25 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 91)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 92)) none (.lit (.nat 1)))], (.call (.runtime .natAdd) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] false), [(1, (.adt 2), none), (0, .nat, (some 0))], rfl, rfl, + (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun26 : FunOK program krate flags 26 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 93)) none (.clone (.generated .binding 0)))], (.matchOn (.move (.generated .holder 93)) [(.mk (.ok (.bind (.generated .binding 3))) (.mk [(.mk (.bind (.generated .binding 5)) (some .bytes) (.block (.mk [(.mk (.bind (.generated .holder 95)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 94))]) (.mk [] (.move (.generated .part 94))))]))] (.matchOn (.move (.generated .holder 95)) [(.mk .none (.mk [] (.lit (.bytes (ByteArray.mk #[]))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.move (.generated .binding 4))))])))), (.mk (.bind (.generated .binding 6)) (some (.result (.list (.pair .bytes (.list .bytes))) (.adt 0))) (.call (.function 5) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "duplicate record for "))] false), (.call (.function 40) [(.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 2 0 [(.bind (.generated .part 96)), .wild, .wild]) (.mk [] (.move (.generated .part 96))))])] false)] false), (.construct .some [(.clone (.generated .binding 5))])] false)), (.mk (.bind (.generated .binding 7)) (some (.result (.list (.pair .bytes (.list .bytes))) (.adt 0))) (.call (.function 5) [(.call (.function 6) [(.call (.function 6) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "expected a record for "))] false), (.call (.function 40) [(.clone (.generated .binding 5))] false)] false), (.call (.function 7) [(.lit (.str ", found "))] false)] false), (.call (.function 40) [(.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 2 0 [(.bind (.generated .part 97)), .wild, .wild]) (.mk [] (.move (.generated .part 97))))])] false)] false), (.construct .some [(.clone (.generated .binding 5))])] false)), (.mk (.bind (.generated .operand 99)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 2 0 [(.bind (.generated .part 98)), .wild, .wild]) (.mk [] (.move (.generated .part 98))))])), (.mk (.bind (.generated .operand 100)) none (.move (.generated .binding 5)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 99)), (.move (.generated .operand 100))] false) (.mk [(.mk (.bind (.generated .holder 103)) none (.call (.function 41) [(.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 2 0 [(.bind (.generated .part 101)), .wild, .wild]) (.mk [] (.move (.generated .part 101))))]), (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 102)), .wild]) (.mk [] (.move (.generated .part 102))))]), (.move (.generated .binding 3))] false))] (.matchOn (.move (.generated .holder 103)) [(.mk .none (.mk [] (.move (.generated .binding 6)))), (.mk (.some (.bind (.generated .binding 8))) (.mk [] (.construct (.ok (.list (.pair .bytes (.list .bytes))) (.adt 0)) [(.move (.generated .binding 8))])))])) (.mk [] (.move (.generated .binding 7)))))), (.mk (.err .wild) (.mk [] (.move (.generated .binding 0))))]), [(1, (.adt 2), (some 1)), (0, (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.result (.list (.pair .bytes (.list .bytes))) (.adt 0))) (U := []) (view := false) (idx := [1, 0]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(3, (.list (.pair .bytes (.list .bytes))), (some 3)), (1, (.adt 2), (some 1)), (0, (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .binding 5)) (some .bytes) (.block (.mk [(.mk (.bind (.generated .holder 95)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 94))]) (.mk [] (.move (.generated .part 94))))]))] (.matchOn (.move (.generated .holder 95)) [(.mk .none (.mk [] (.lit (.bytes (ByteArray.mk #[]))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.move (.generated .binding 4))))])))), (.mk (.bind (.generated .binding 6)) (some (.result (.list (.pair .bytes (.list .bytes))) (.adt 0))) (.call (.function 5) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "duplicate record for "))] false), (.call (.function 40) [(.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 2 0 [(.bind (.generated .part 96)), .wild, .wild]) (.mk [] (.move (.generated .part 96))))])] false)] false), (.construct .some [(.clone (.generated .binding 5))])] false)), (.mk (.bind (.generated .binding 7)) (some (.result (.list (.pair .bytes (.list .bytes))) (.adt 0))) (.call (.function 5) [(.call (.function 6) [(.call (.function 6) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "expected a record for "))] false), (.call (.function 40) [(.clone (.generated .binding 5))] false)] false), (.call (.function 7) [(.lit (.str ", found "))] false)] false), (.call (.function 40) [(.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 2 0 [(.bind (.generated .part 97)), .wild, .wild]) (.mk [] (.move (.generated .part 97))))])] false)] false), (.construct .some [(.clone (.generated .binding 5))])] false)), (.mk (.bind (.generated .operand 99)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 2 0 [(.bind (.generated .part 98)), .wild, .wild]) (.mk [] (.move (.generated .part 98))))])), (.mk (.bind (.generated .operand 100)) none (.move (.generated .binding 5)))]) (tail := (.cond (.call (.runtime .equal) [(.move (.generated .operand 99)), (.move (.generated .operand 100))] false) (.mk [(.mk (.bind (.generated .holder 103)) none (.call (.function 41) [(.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 2 0 [(.bind (.generated .part 101)), .wild, .wild]) (.mk [] (.move (.generated .part 101))))]), (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 102)), .wild]) (.mk [] (.move (.generated .part 102))))]), (.move (.generated .binding 3))] false))] (.matchOn (.move (.generated .holder 103)) [(.mk .none (.mk [] (.move (.generated .binding 6)))), (.mk (.some (.bind (.generated .binding 8))) (.mk [] (.construct (.ok (.list (.pair .bytes (.list .bytes))) (.adt 0)) [(.move (.generated .binding 8))])))])) (.mk [] (.move (.generated .binding 7))))) (Corr.mCons (Γ' := [(2, (.adt 0), none), (1, (.adt 2), (some 1)), (0, (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 0))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 95)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 94))]) (.mk [] (.move (.generated .part 94))))]))]) (tail := (.matchOn (.move (.generated .holder 95)) [(.mk .none (.mk [] (.lit (.bytes (ByteArray.mk #[]))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.move (.generated .binding 4))))])) (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.fieldRead (ts := [.bytes, (.list .bytes), (.option .bytes)]) (rd := (.move (.generated .part 94))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list (.pair .bytes (.list .bytes))), (some 3)), (1, (.adt 2), (some 1)), (0, (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bytes (ByteArray.mk #[])))) (Corr.mCons (Γ' := [(4, .bytes, (some 4)), (3, (.list (.pair .bytes (.list .bytes))), (some 3)), (1, (.adt 2), (some 1)), (0, (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 4))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.bOfE (Corr.value rfl rfl))) rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.bytes, (.option .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [.bytes, (.list .bytes), (.option .bytes)]) (rd := (.move (.generated .part 96))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.bytes]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.bytes, (.option .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [.bytes, (.list .bytes), (.option .bytes)]) (rd := (.move (.generated .part 97))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.bytes]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := [(.mk (.bind (.generated .operand 99)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 2 0 [(.bind (.generated .part 98)), .wild, .wild]) (.mk [] (.move (.generated .part 98))))])), (.mk (.bind (.generated .operand 100)) none (.move (.generated .binding 5)))]) (ce := (.call (.runtime .equal) [(.move (.generated .operand 99)), (.move (.generated .operand 100))] false)) (lk := []) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.bytes, (.list .bytes), (.option .bytes)]) (rd := (.move (.generated .part 98))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .holder 103)) none (.call (.function 41) [(.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 2 0 [(.bind (.generated .part 101)), .wild, .wild]) (.mk [] (.move (.generated .part 101))))]), (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 102)), .wild]) (.mk [] (.move (.generated .part 102))))]), (.move (.generated .binding 3))] false))]) (ta := (.matchOn (.move (.generated .holder 103)) [(.mk .none (.mk [] (.move (.generated .binding 6)))), (.mk (.some (.bind (.generated .binding 8))) (.mk [] (.construct (.ok (.list (.pair .bytes (.list .bytes))) (.adt 0)) [(.move (.generated .binding 8))])))])) (lb := []) (tb := (.move (.generated .binding 7))) (Corr.matchArms (st := (.option (.list (.pair .bytes (.list .bytes))))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, (.list .bytes), (.list (.pair .bytes (.list .bytes)))]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [.bytes, (.list .bytes), (.option .bytes)]) (rd := (.move (.generated .part 101))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [.bytes, (.list .bytes), (.option .bytes)]) (rd := (.move (.generated .part 102))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(7, (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (some 7)), (6, (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (some 6)), (5, .bytes, (some 5)), (3, (.list (.pair .bytes (.list .bytes))), (some 3)), (1, (.adt 2), (some 1)), (0, (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.move (.generated .binding 6))) (Corr.mCons (Γ' := [(8, (.list (.pair .bytes (.list .bytes))), (some 8)), (7, (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (some 7)), (6, (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (some 6)), (5, .bytes, (some 5)), (3, (.list (.pair .bytes (.list .bytes))), (some 3)), (1, (.adt 2), (some 1)), (0, (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.ok (.list (.pair .bytes (.list .bytes))) (.adt 0)) [(.move (.generated .binding 8))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.list (.pair .bytes (.list .bytes)))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl) (Corr.bOfE (Corr.var rfl rfl)))))))) rfl rfl rfl)⟩⟩ + +theorem fun27 : FunOK program krate flags 27 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 104)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 104)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 27) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 105)) (some (.fn 5)) (.move (.generated .binding 0)))] (.apply (.generated .callee 105) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]), [(2, (.list (.adt 2)), (some 2)), (1, (.list (.adt 2)), (some 1)), (0, (.fn [(.list (.adt 2)), (.adt 2)] (.list (.adt 2))), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.adt 2))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.adt 2)), (some 2)), (1, (.list (.adt 2)), (some 1)), (0, (.fn [(.list (.adt 2)), (.adt 2)] (.list (.adt 2))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 1))) (Corr.mCons (Γ' := [(4, (.list (.adt 2)), (some 4)), (3, (.adt 2), (some 3)), (2, (.list (.adt 2)), (some 2)), (1, (.list (.adt 2)), (some 1)), (0, (.fn [(.list (.adt 2)), (.adt 2)] (.list (.adt 2))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 27) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 105)) (some (.fn 5)) (.move (.generated .binding 0)))] (.apply (.generated .callee 105) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.fn [(.list (.adt 2)), (.adt 2)] (.list (.adt 2))), (.list (.adt 2)), (.list (.adt 2))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 105)) (some (.fn 5)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 105) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false)) (Corr.apply (ps := [(.list (.adt 2)), (.adt 2)]) (af := false) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ + +theorem fun28 : FunOK program krate flags 28 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct .cons [(.move (.generated .binding 1)), (.move (.generated .binding 0))]), [(1, (.adt 2), (some 1)), (0, (.list (.adt 2)), (some 0))], rfl, rfl, + (Corr.build (ts := [(.adt 2), (.list (.adt 2))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)⟩⟩ + +theorem fun29 : FunOK program krate flags 29 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some .bytes) (.call (.function 32) [(.clone (.generated .binding 0))] true))], (.cond (.call (.function 42) [(.move (.generated .binding 0))] true) (.mk [(.mk (.bind (.generated .operand 107)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 108)) none (.block (.mk [(.mk (.bind (.generated .operand 106)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 106))] false))))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 107)), (.move (.generated .operand 108))] false) (.mk [] (.succeed (.construct (.none .bytes) []))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 1))]))))) (.mk [] (.succeed (.construct (.none .bytes) [])))), [(0, .bytes, (some 0))], rfl, rfl, + (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := []) (ce := (.call (.function 42) [(.move (.generated .binding 0))] true)) (lk := []) (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 107)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 108)) none (.block (.mk [(.mk (.bind (.generated .operand 106)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 106))] false))))]) (ta := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 107)), (.move (.generated .operand 108))] false) (.mk [] (.succeed (.construct (.none .bytes) []))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 1))]))))) (lb := []) (tb := (.succeed (.construct (.none .bytes) []))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 107)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 108)) none (.block (.mk [(.mk (.bind (.generated .operand 106)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 106))] false))))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 107)), (.move (.generated .operand 108))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 106)) none (.clone (.generated .binding 1)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 106))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct (.none .bytes) []))) (lb := []) (tb := (.succeed (.construct .some [(.move (.generated .binding 1))]))) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.fOfB (Corr.build (ts := [.bytes]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)))) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))))⟩⟩ + +theorem fun30 : FunOK program krate flags 30 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 43) [(.clone (.generated .binding 2))] false) (.mk [(.mk (.bind (.generated .holder 109)) none (.call (.function 44) [(.move (.generated .binding 2))] true))] (.matchOn (.move (.generated .holder 109)) [(.mk (.ok (.bind (.generated .binding 5))) (.mk [] (.succeed (.construct (.adt 1 0) [(.construct .cons [(.construct (.adt 2 0) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 110)), .wild]) none (.move (.generated .binding 5)))] (.move (.generated .part 110)))), (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 111))]) none (.move (.generated .binding 5)))] (.move (.generated .part 111)))), (.move (.generated .binding 3))]), (.move (.generated .binding 0))]), (.call (.function 45) [(.move (.generated .binding 1))] false)])))), (.mk (.err (.bind (.generated .binding 4))) (.mk [] (.succeed (.call (.function 31) [(.move (.generated .binding 4)), (.move (.generated .binding 3))] false))))])) (.mk [] (.succeed (.construct (.adt 1 1) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 2)), (.move (.generated .binding 3))])))), [(3, (.option .bytes), (some 3)), (2, .bytes, (some 2)), (1, (.list .bytes), (some 1)), (0, (.list (.adt 2)), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 43) [(.clone (.generated .binding 2))] false)) (lk := []) (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .holder 109)) none (.call (.function 44) [(.move (.generated .binding 2))] true))]) (ta := (.matchOn (.move (.generated .holder 109)) [(.mk (.ok (.bind (.generated .binding 5))) (.mk [] (.succeed (.construct (.adt 1 0) [(.construct .cons [(.construct (.adt 2 0) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 110)), .wild]) none (.move (.generated .binding 5)))] (.move (.generated .part 110)))), (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 111))]) none (.move (.generated .binding 5)))] (.move (.generated .part 111)))), (.move (.generated .binding 3))]), (.move (.generated .binding 0))]), (.call (.function 45) [(.move (.generated .binding 1))] false)])))), (.mk (.err (.bind (.generated .binding 4))) (.mk [] (.succeed (.call (.function 31) [(.move (.generated .binding 4)), (.move (.generated .binding 3))] false))))])) (lb := []) (tb := (.succeed (.construct (.adt 1 1) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 2)), (.move (.generated .binding 3))]))) (Corr.matchArms (st := (.result (.pair .bytes (.list .bytes)) .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(5, (.pair .bytes (.list .bytes)), (some 5)), (3, (.option .bytes), (some 3)), (2, .bytes, (some 2)), (1, (.list .bytes), (some 1)), (0, (.list (.adt 2)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.construct (.adt 1 0) [(.construct .cons [(.construct (.adt 2 0) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 110)), .wild]) none (.move (.generated .binding 5)))] (.move (.generated .part 110)))), (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 111))]) none (.move (.generated .binding 5)))] (.move (.generated .part 111)))), (.move (.generated .binding 3))]), (.move (.generated .binding 0))]), (.call (.function 45) [(.move (.generated .binding 1))] false)]))) (Corr.mCons (Γ' := [(4, .bytes, (some 4)), (3, (.option .bytes), (some 3)), (2, .bytes, (some 2)), (1, (.list .bytes), (some 1)), (0, (.list (.adt 2)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.call (.function 31) [(.move (.generated .binding 4)), (.move (.generated .binding 3))] false))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [.bytes, (.option .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.list (.adt 2)), (.list .bytes)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.adt 2), (.list (.adt 2))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.bytes, (.list .bytes), (.option .bytes)]) (mask := [false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 110)), .wild]) none (.move (.generated .binding 5)))]) (tail := (.move (.generated .part 110))) (Corr.first (ta := .bytes) (tb := (.list .bytes)) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 111))]) none (.move (.generated .binding 5)))]) (tail := (.move (.generated .part 111))) (Corr.second (ta := .bytes) (tb := (.list .bytes)) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl))) rfl rfl rfl) (Corr.fOfB (Corr.build (ts := [(.list (.adt 2)), (.list .bytes), .bytes, (.option .bytes)]) (mask := [false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))))) rfl))))⟩⟩ + +theorem fun31 : FunOK program krate flags 31 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 2) [(.call (.function 19) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false)]), [(1, (.option .bytes), (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.build (ts := [(.adt 0)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, (.option .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)⟩⟩ + +theorem fun32 : FunOK program krate flags 32 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some .nat) (.call (.function 46) [(.clone (.generated .binding 0))] true)), (.mk (.bind (.generated .binding 2)) (some .nat) (.call (.function 47) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1))] true))], (.succeed (.call (.function 18) [(.move (.generated .binding 0)), (.copy (.generated .binding 1)), (.block (.mk [(.mk (.bind (.generated .operand 112)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 113)) none (.copy (.generated .binding 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 112)), (.move (.generated .operand 113))] false)))] false)), [(0, .bytes, (some 0))], rfl, rfl, + (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl (Corr.fOfB (Corr.callOps (ts := [.bytes, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 112)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 113)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 112)), (.move (.generated .operand 113))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl))))⟩⟩ + +theorem fun33 : FunOK program krate flags 33 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 48) [(.clone (.generated .binding 0)), (.call (.function 7) [(.lit (.str "'"))] false)] false) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 0))]))) (.mk [(.mk (.bind (.generated .holder 114)) none (.call (.function 49) [(.clone (.generated .binding 0)), (.call (.function 7) [(.lit (.str "info: "))] false)] false))] (.matchOn (.move (.generated .holder 114)) [(.mk .none (.mk [] (.call (.function 50) [(.move (.generated .binding 0))] false))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 1))]))))]))), [(0, .bytes, (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 48) [(.clone (.generated .binding 0)), (.call (.function 7) [(.lit (.str "'"))] false)] false)) (lk := []) (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.move (.generated .binding 0))]))) (lb := [(.mk (.bind (.generated .holder 114)) none (.call (.function 49) [(.clone (.generated .binding 0)), (.call (.function 7) [(.lit (.str "info: "))] false)] false))]) (tb := (.matchOn (.move (.generated .holder 114)) [(.mk .none (.mk [] (.call (.function 50) [(.move (.generated .binding 0))] false))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 1))]))))])) (Corr.fOfB (Corr.build (ts := [.bytes]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 50) [(.move (.generated .binding 0))] false)) (Corr.mCons (Γ' := [(1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct .some [(.move (.generated .binding 1))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [.bytes]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.callF (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) rfl rfl rfl)))⟩⟩ + +theorem fun34 : FunOK program krate flags 34 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 115)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 115)) [(.mk .none (.mk [] (.construct (.none .bytes) []))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), .wild])) (.mk [] (.construct .some [(.move (.generated .binding 1))])))]), [(0, (.list .bytes), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .bytes)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list .bytes), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none .bytes) [])) (Corr.mCons (Γ' := [(2, (.list .bytes), none), (1, .bytes, (some 1)), (0, (.list .bytes), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct .some [(.move (.generated .binding 1))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [.bytes]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun35 : FunOK program krate flags 35 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 116)), .wild]) none (.clone (.generated .binding 1)))] (.move (.generated .part 116))))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 117)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 118))]) none (.clone (.generated .binding 1)))] (.move (.generated .part 118)))))] (.move (.generated .part 117))))), (.mk (.bind (.generated .binding 4)) (some (.list .bytes)) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 119))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 120))]) none (.move (.generated .binding 1)))] (.move (.generated .part 120)))))] (.move (.generated .part 119))))), (.mk (.bind (.generated .holder 121)) none (.call (.function 51) [(.clone (.generated .binding 0)), (.copy (.generated .binding 2))] false))], (.matchOn (.move (.generated .holder 121)) [(.mk .none (.mk [] (.succeed (.construct (.none (.pair .nat (.pair .nat (.list .bytes)))) [])))), (.mk (.some (.bind (.generated .binding 5))) (.mk [(.mk (.bind (.generated .operand 122)) none (.copy (.generated .binding 5))), (.mk (.bind (.generated .operand 123)) none (.lit (.fixed .u8 10)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 122)), (.move (.generated .operand 123))] false) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 124)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 125)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 124)), (.move (.generated .operand 125))] true))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 126)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 127)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 126)), (.move (.generated .operand 127))] true))) (.construct .cons [(.call (.function 52) [(.call (.function 18) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.block (.mk [(.mk (.bind (.generated .operand 128)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 129)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 128)), (.move (.generated .operand 129))] false)))] false)] false), (.move (.generated .binding 4))])))]))) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 130)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 131)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 130)), (.move (.generated .operand 131))] true))) (.pair (.copy (.generated .binding 3)) (.move (.generated .binding 4))))]))))))]), [(1, (.pair .nat (.pair .nat (.list .bytes))), (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 116)), .wild]) none (.clone (.generated .binding 1)))]) (tail := (.move (.generated .part 116))) (Corr.first (ta := .nat) (tb := (.pair .nat (.list .bytes))) (Corr.var rfl rfl) rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 117)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 118))]) none (.clone (.generated .binding 1)))] (.move (.generated .part 118)))))]) (tail := (.move (.generated .part 117))) (Corr.first (ta := .nat) (tb := (.list .bytes)) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 118))]) none (.clone (.generated .binding 1)))]) (tail := (.move (.generated .part 118))) (Corr.second (ta := .nat) (tb := (.pair .nat (.list .bytes))) (Corr.var rfl rfl) rfl)) rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 119))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 120))]) none (.move (.generated .binding 1)))] (.move (.generated .part 120)))))]) (tail := (.move (.generated .part 119))) (Corr.second (ta := .nat) (tb := (.list .bytes)) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 120))]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 120))) (Corr.second (ta := .nat) (tb := (.pair .nat (.list .bytes))) (Corr.var rfl rfl) rfl)) rfl)) rfl (Corr.matchArms (st := (.option (.fixed .u8))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.list .bytes), (some 4)), (3, .nat, (some 3)), (2, .nat, (some 2)), (1, (.pair .nat (.pair .nat (.list .bytes))), (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.construct (.none (.pair .nat (.pair .nat (.list .bytes)))) []))) (Corr.mCons (Γ' := [(5, (.fixed .u8), (some 5)), (4, (.list .bytes), (some 4)), (3, .nat, (some 3)), (2, .nat, (some 2)), (1, (.pair .nat (.pair .nat (.list .bytes))), (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .operand 122)) none (.copy (.generated .binding 5))), (.mk (.bind (.generated .operand 123)) none (.lit (.fixed .u8 10)))]) (tail := (.cond (.call (.runtime .equal) [(.move (.generated .operand 122)), (.move (.generated .operand 123))] false) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 124)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 125)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 124)), (.move (.generated .operand 125))] true))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 126)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 127)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 126)), (.move (.generated .operand 127))] true))) (.construct .cons [(.call (.function 52) [(.call (.function 18) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.block (.mk [(.mk (.bind (.generated .operand 128)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 129)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 128)), (.move (.generated .operand 129))] false)))] false)] false), (.move (.generated .binding 4))])))]))) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 130)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 131)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 130)), (.move (.generated .operand 131))] true))) (.pair (.copy (.generated .binding 3)) (.move (.generated .binding 4))))]))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .operand 122)) none (.copy (.generated .binding 5))), (.mk (.bind (.generated .operand 123)) none (.lit (.fixed .u8 10)))]) (ce := (.call (.runtime .equal) [(.move (.generated .operand 122)), (.move (.generated .operand 123))] false)) (lk := []) (Corr.prim (ts := [(.fixed .u8), (.fixed .u8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 124)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 125)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 124)), (.move (.generated .operand 125))] true))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 126)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 127)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 126)), (.move (.generated .operand 127))] true))) (.construct .cons [(.call (.function 52) [(.call (.function 18) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.block (.mk [(.mk (.bind (.generated .operand 128)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 129)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 128)), (.move (.generated .operand 129))] false)))] false)] false), (.move (.generated .binding 4))])))]))) (lb := []) (tb := (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 130)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 131)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 130)), (.move (.generated .operand 131))] true))) (.pair (.copy (.generated .binding 3)) (.move (.generated .binding 4))))]))) (Corr.fOfB (Corr.build (ts := [(.pair .nat (.pair .nat (.list .bytes)))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 124)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 125)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 124)), (.move (.generated .operand 125))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 126)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 127)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 126)), (.move (.generated .operand 127))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.bytes, (.list .bytes)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 128)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 129)) none (.copy (.generated .binding 3)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 128)), (.move (.generated .operand 129))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := [(.pair .nat (.pair .nat (.list .bytes)))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 130)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 131)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 130)), (.move (.generated .operand 131))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil))) rfl))))) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl))))⟩⟩ + +theorem fun36 : FunOK program krate flags 36 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 132)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 132)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 36) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 133)) (some (.fn 6)) (.move (.generated .binding 0)))] (.apply (.generated .callee 133) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]), [(2, (.list .bytes), (some 2)), (1, (.list .bytes), (some 1)), (0, (.fn [(.list .bytes), .bytes] (.list .bytes)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .bytes)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .bytes), (some 2)), (1, (.list .bytes), (some 1)), (0, (.fn [(.list .bytes), .bytes] (.list .bytes)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 1))) (Corr.mCons (Γ' := [(4, (.list .bytes), (some 4)), (3, .bytes, (some 3)), (2, (.list .bytes), (some 2)), (1, (.list .bytes), (some 1)), (0, (.fn [(.list .bytes), .bytes] (.list .bytes)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 36) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 133)) (some (.fn 6)) (.move (.generated .binding 0)))] (.apply (.generated .callee 133) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.fn [(.list .bytes), .bytes] (.list .bytes)), (.list .bytes), (.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 133)) (some (.fn 6)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 133) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false)) (Corr.apply (ps := [(.list .bytes), .bytes]) (af := false) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ + +theorem fun37 : FunOK program krate flags 37 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct .cons [(.move (.generated .binding 1)), (.move (.generated .binding 0))]), [(1, .bytes, (some 1)), (0, (.list .bytes), (some 0))], rfl, rfl, + (Corr.build (ts := [.bytes, (.list .bytes)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)⟩⟩ + +theorem fun38 : FunOK program krate flags 38 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 134)) none (.copy (.generated .binding 1)))], (.cond (.isZero (.generated .holder 134)) (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 134))), (.mk (.bind (.generated .holder 136)) none (.block (.mk [(.mk (.bind (.generated .callee 135)) (some (.fn 7)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 135) [(.copy (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 136)) [(.mk .none (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 38) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)))]))), [(2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat] (.option .nat)), (some 0))], rfl, rfl, + (Corr.matchNat (sl := (some 3)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool false))))) (lb := [(.mk (.bind (.generated .holder 136)) none (.block (.mk [(.mk (.bind (.generated .callee 135)) (some (.fn 7)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 135) [(.copy (.generated .binding 2))] true))))]) (tb := (.matchOn (.move (.generated .holder 136)) [(.mk .none (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 38) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)))])) (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))))) (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 135)) (some (.fn 7)) (.clone (.generated .binding 0)))]) (tail := (.apply (.generated .callee 135) [(.copy (.generated .binding 2))] true)) (Corr.apply (ps := [.nat]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat] (.option .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true))))) (Corr.mCons (Γ' := [(4, .nat, (some 4)), (3, .nat, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat] (.option .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 38) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [.nat] (.option .nat)), .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))))))) rfl rfl rfl)))⟩⟩ + +theorem fun39 : FunOK program krate flags 39 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 53) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false), [(1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.callF (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)⟩⟩ + +theorem fun40 : FunOK program krate flags 40 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 6) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "`"))] false), (.move (.generated .binding 0))] false), (.call (.function 7) [(.lit (.str "`"))] false)] false), [(0, .bytes, (some 0))], rfl, rfl, + (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun41 : FunOK program krate flags 41 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 137)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 137)) [(.mk .none (.mk [] (.construct .some [(.construct .cons [(.pair (.move (.generated .binding 0)) (.move (.generated .binding 1))), (.construct (.nil (.pair .bytes (.list .bytes))) [])])]))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [(.mk (.bind (.generated .operand 139)) none (.clone (.generated .binding 0))), (.mk (.bind (.generated .operand 140)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 138)), .wild]) none (.clone (.generated .binding 3)))] (.move (.generated .part 138)))))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 139)), (.move (.generated .operand 140))] false) (.mk [] (.construct (.none (.list (.pair .bytes (.list .bytes)))) [])) (.mk [] (.cond (.call (.function 54) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 141)), .wild]) none (.clone (.generated .binding 3)))] (.move (.generated .part 141))))] false) (.mk [] (.construct .some [(.construct .cons [(.pair (.move (.generated .binding 0)) (.move (.generated .binding 1))), (.construct .cons [(.move (.generated .binding 3)), (.move (.generated .binding 4))])])])) (.mk [(.mk (.bind (.generated .holder 142)) none (.call (.function 41) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false))] (.matchOn (.move (.generated .holder 142)) [(.mk .none (.mk [] (.construct (.none (.list (.pair .bytes (.list .bytes)))) []))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.construct .some [(.construct .cons [(.move (.generated .binding 3)), (.move (.generated .binding 5))])])))])))))))]), [(2, (.list (.pair .bytes (.list .bytes))), (some 2)), (1, (.list .bytes), (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.pair .bytes (.list .bytes)))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.pair .bytes (.list .bytes))), (some 2)), (1, (.list .bytes), (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.construct .cons [(.pair (.move (.generated .binding 0)) (.move (.generated .binding 1))), (.construct (.nil (.pair .bytes (.list .bytes))) [])])])) (Corr.mCons (Γ' := [(4, (.list (.pair .bytes (.list .bytes))), (some 4)), (3, (.pair .bytes (.list .bytes)), (some 3)), (2, (.list (.pair .bytes (.list .bytes))), (some 2)), (1, (.list .bytes), (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .operand 139)) none (.clone (.generated .binding 0))), (.mk (.bind (.generated .operand 140)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 138)), .wild]) none (.clone (.generated .binding 3)))] (.move (.generated .part 138)))))]) (tail := (.cond (.call (.runtime .equal) [(.move (.generated .operand 139)), (.move (.generated .operand 140))] false) (.mk [] (.construct (.none (.list (.pair .bytes (.list .bytes)))) [])) (.mk [] (.cond (.call (.function 54) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 141)), .wild]) none (.clone (.generated .binding 3)))] (.move (.generated .part 141))))] false) (.mk [] (.construct .some [(.construct .cons [(.pair (.move (.generated .binding 0)) (.move (.generated .binding 1))), (.construct .cons [(.move (.generated .binding 3)), (.move (.generated .binding 4))])])])) (.mk [(.mk (.bind (.generated .holder 142)) none (.call (.function 41) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false))] (.matchOn (.move (.generated .holder 142)) [(.mk .none (.mk [] (.construct (.none (.list (.pair .bytes (.list .bytes)))) []))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.construct .some [(.construct .cons [(.move (.generated .binding 3)), (.move (.generated .binding 5))])])))])))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .operand 139)) none (.clone (.generated .binding 0))), (.mk (.bind (.generated .operand 140)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 138)), .wild]) none (.clone (.generated .binding 3)))] (.move (.generated .part 138)))))]) (ce := (.call (.runtime .equal) [(.move (.generated .operand 139)), (.move (.generated .operand 140))] false)) (lk := []) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 138)), .wild]) none (.clone (.generated .binding 3)))]) (tail := (.move (.generated .part 138))) (Corr.first (ta := .bytes) (tb := (.list .bytes)) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct (.none (.list (.pair .bytes (.list .bytes)))) [])) (lb := []) (tb := (.cond (.call (.function 54) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 141)), .wild]) none (.clone (.generated .binding 3)))] (.move (.generated .part 141))))] false) (.mk [] (.construct .some [(.construct .cons [(.pair (.move (.generated .binding 0)) (.move (.generated .binding 1))), (.construct .cons [(.move (.generated .binding 3)), (.move (.generated .binding 4))])])])) (.mk [(.mk (.bind (.generated .holder 142)) none (.call (.function 41) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false))] (.matchOn (.move (.generated .holder 142)) [(.mk .none (.mk [] (.construct (.none (.list (.pair .bytes (.list .bytes)))) []))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.construct .some [(.construct .cons [(.move (.generated .binding 3)), (.move (.generated .binding 5))])])))])))) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl) (Corr.cond (lc := []) (ce := (.call (.function 54) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 141)), .wild]) none (.clone (.generated .binding 3)))] (.move (.generated .part 141))))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 141)), .wild]) none (.clone (.generated .binding 3)))]) (tail := (.move (.generated .part 141))) (Corr.first (ta := .bytes) (tb := (.list .bytes)) (Corr.var rfl rfl) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct .cons [(.pair (.move (.generated .binding 0)) (.move (.generated .binding 1))), (.construct .cons [(.move (.generated .binding 3)), (.move (.generated .binding 4))])])])) (lb := [(.mk (.bind (.generated .holder 142)) none (.call (.function 41) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false))]) (tb := (.matchOn (.move (.generated .holder 142)) [(.mk .none (.mk [] (.construct (.none (.list (.pair .bytes (.list .bytes)))) []))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.construct .some [(.construct .cons [(.move (.generated .binding 3)), (.move (.generated .binding 5))])])))])) (Corr.build (ts := [(.list (.pair .bytes (.list .bytes)))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.pair .bytes (.list .bytes)), (.list (.pair .bytes (.list .bytes)))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.pair .bytes (.list .bytes)), (.list (.pair .bytes (.list .bytes)))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil))) rfl) (Corr.matchArms (st := (.option (.list (.pair .bytes (.list .bytes))))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, (.list .bytes), (.list (.pair .bytes (.list .bytes)))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.list (.pair .bytes (.list .bytes))), (some 4)), (3, (.pair .bytes (.list .bytes)), (some 3)), (2, (.list (.pair .bytes (.list .bytes))), (some 2)), (1, (.list .bytes), (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct (.none (.list (.pair .bytes (.list .bytes)))) [])) (Corr.mCons (Γ' := [(5, (.list (.pair .bytes (.list .bytes))), (some 5)), (4, (.list (.pair .bytes (.list .bytes))), (some 4)), (3, (.pair .bytes (.list .bytes)), (some 3)), (2, (.list (.pair .bytes (.list .bytes))), (some 2)), (1, (.list .bytes), (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.construct .cons [(.move (.generated .binding 3)), (.move (.generated .binding 5))])])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.list (.pair .bytes (.list .bytes)))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.pair .bytes (.list .bytes)), (.list (.pair .bytes (.list .bytes)))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)))))) rfl rfl rfl (Corr.build (ts := [(.list (.pair .bytes (.list .bytes)))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.pair .bytes (.list .bytes)), (.list (.pair .bytes (.list .bytes)))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil))) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun42 : FunOK program krate flags 42 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 143)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 144)) none (.call (.function 55) [(.move (.generated .binding 0)), (.lit (.nat 0))] true))], (.succeed (.call (.runtime .natLt) [(.move (.generated .operand 143)), (.move (.generated .operand 144))] false)), [(0, .bytes, (some 0))], rfl, rfl, + (Corr.fOfB (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl))⟩⟩ + +theorem fun43 : FunOK program krate flags 43 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 145)) none (.call (.function 56) [(.clone (.generated .binding 0)), (.call (.function 7) [(.lit (.str "]"))] false)] false))], (.matchOn (.move (.generated .holder 145)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 146)) none (.call (.function 56) [(.move (.generated .binding 0)), (.call (.function 7) [(.lit (.str " does not depend on any axioms"))] false)] false))] (.matchOn (.move (.generated .holder 146)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some .wild) (.mk [] (.lit (.bool true))))]))), (.mk (.some .wild) (.mk [] (.lit (.bool true))))]), [(0, .bytes, (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 146)) none (.call (.function 56) [(.move (.generated .binding 0)), (.call (.function 7) [(.lit (.str " does not depend on any axioms"))] false)] false))]) (tail := (.matchOn (.move (.generated .holder 146)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some .wild) (.mk [] (.lit (.bool true))))])) (Corr.mCons (Γ' := [(1, .bytes, none), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(2, .bytes, none), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)) rfl rfl rfl)⟩⟩ + +theorem fun44 : FunOK program krate flags 44 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 147)) none (.call (.function 49) [(.clone (.generated .binding 0)), (.call (.function 7) [(.lit (.str "'"))] false)] false))], (.matchOn (.move (.generated .holder 147)) [(.mk .none (.mk [] (.succeed (.call (.function 57) [(.move (.generated .binding 0))] false)))), (.mk (.some (.bind (.generated .binding 1))) (.mk [(.mk (.bind (.generated .holder 148)) none (.call (.function 56) [(.clone (.generated .binding 1)), (.call (.function 7) [(.lit (.str "' does not depend on any axioms"))] false)] false))] (.matchOn (.move (.generated .holder 148)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 149)) none (.call (.function 56) [(.move (.generated .binding 1)), (.call (.function 7) [(.lit (.str "]"))] false)] false))] (.matchOn (.move (.generated .holder 149)) [(.mk .none (.mk [] (.succeed (.call (.function 57) [(.move (.generated .binding 0))] false)))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.call (.function 62) [(.move (.generated .binding 0)), (.move (.generated .binding 5))] false)))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [(.mk (.bind (.generated .binding 3)) (some (.result (.pair .bytes (.list .bytes)) .bytes)) (.call (.function 58) [(.clone (.generated .binding 2)), (.construct (.nil .bytes) [])] false)), (.mk (.bind (.generated .binding 4)) (some (.result (.pair .bytes (.list .bytes)) .bytes)) (.call (.function 59) [(.call (.function 60) [(.clone (.generated .binding 2))] false)] false))] (.cond (.call (.function 61) [(.move (.generated .binding 2))] true) (.mk [] (.succeed (.move (.generated .binding 3)))) (.mk [] (.succeed (.move (.generated .binding 4)))))))])))]), [(0, .bytes, (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.call (.function 57) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 148)) none (.call (.function 56) [(.clone (.generated .binding 1)), (.call (.function 7) [(.lit (.str "' does not depend on any axioms"))] false)] false))]) (tail := (.matchOn (.move (.generated .holder 148)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 149)) none (.call (.function 56) [(.move (.generated .binding 1)), (.call (.function 7) [(.lit (.str "]"))] false)] false))] (.matchOn (.move (.generated .holder 149)) [(.mk .none (.mk [] (.succeed (.call (.function 57) [(.move (.generated .binding 0))] false)))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.call (.function 62) [(.move (.generated .binding 0)), (.move (.generated .binding 5))] false)))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [(.mk (.bind (.generated .binding 3)) (some (.result (.pair .bytes (.list .bytes)) .bytes)) (.call (.function 58) [(.clone (.generated .binding 2)), (.construct (.nil .bytes) [])] false)), (.mk (.bind (.generated .binding 4)) (some (.result (.pair .bytes (.list .bytes)) .bytes)) (.call (.function 59) [(.call (.function 60) [(.clone (.generated .binding 2))] false)] false))] (.cond (.call (.function 61) [(.move (.generated .binding 2))] true) (.mk [] (.succeed (.move (.generated .binding 3)))) (.mk [] (.succeed (.move (.generated .binding 4)))))))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 149)) none (.call (.function 56) [(.move (.generated .binding 1)), (.call (.function 7) [(.lit (.str "]"))] false)] false))]) (tail := (.matchOn (.move (.generated .holder 149)) [(.mk .none (.mk [] (.succeed (.call (.function 57) [(.move (.generated .binding 0))] false)))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.call (.function 62) [(.move (.generated .binding 0)), (.move (.generated .binding 5))] false)))])) (Corr.mCons (Γ' := [(2, .bytes, (some 2)), (1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .binding 3)) (some (.result (.pair .bytes (.list .bytes)) .bytes)) (.call (.function 58) [(.clone (.generated .binding 2)), (.construct (.nil .bytes) [])] false)), (.mk (.bind (.generated .binding 4)) (some (.result (.pair .bytes (.list .bytes)) .bytes)) (.call (.function 59) [(.call (.function 60) [(.clone (.generated .binding 2))] false)] false))]) (tail := (.cond (.call (.function 61) [(.move (.generated .binding 2))] true) (.mk [] (.succeed (.move (.generated .binding 3)))) (.mk [] (.succeed (.move (.generated .binding 4)))))) (Corr.mNil) rfl rfl rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.bytes, (.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := []) (ce := (.call (.function 61) [(.move (.generated .binding 2))] true)) (lk := []) (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.move (.generated .binding 3)))) (lb := []) (tb := (.succeed (.move (.generated .binding 4)))) (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl))) (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))))))) rfl rfl rfl (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.call (.function 57) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(5, .bytes, (some 5)), (1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.call (.function 62) [(.move (.generated .binding 0)), (.move (.generated .binding 5))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl)) rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl)⟩⟩ + +theorem fun45 : FunOK program krate flags 45 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 150)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 150)) [(.mk .none (.mk [] (.construct (.nil .bytes) []))), (.mk (.some (.tuple [.wild, (.bind (.generated .binding 2))])) (.mk [] (.move (.generated .binding 2))))]), [(0, (.list .bytes), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .bytes)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list .bytes), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.nil .bytes) [])) (Corr.mCons (Γ' := [(2, (.list .bytes), (some 2)), (1, .bytes, none), (0, (.list .bytes), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.move (.generated .binding 2))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun46 : FunOK program krate flags 46 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.tuple [(.bind (.generated .part 151)), .wild]) none (.call (.function 38) [(.construct (.closure 7 63) [(.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 152)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 152))] false))), (.lit (.nat 0))] true))], (.succeed (.move (.generated .part 151))), [(0, .bytes, (some 0))], rfl, rfl, + (Corr.fOfB (Corr.first (ta := .nat) (tb := .bool) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [.nat] (.option .nat)), .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [.bytes]) (mask := [false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 152)) none (.move (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 152))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl))⟩⟩ + +theorem fun47 : FunOK program krate flags 47 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.tuple [(.bind (.generated .part 153)), .wild]) none (.call (.function 38) [(.construct (.closure 7 64) [(.copy (.generated .binding 1)), (.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 154)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 154))] false))), (.block (.mk [(.mk (.bind (.generated .operand 155)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 155))] false)))] true))], (.succeed (.move (.generated .part 153))), [(1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.fOfB (Corr.first (ta := .nat) (tb := .bool) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [.nat] (.option .nat)), .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [.nat, .bytes]) (mask := [false, false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 154)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 154))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 155)) none (.move (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 155))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl))⟩⟩ + +theorem fun48 : FunOK program krate flags 48 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 160)) none (.block (.mk [(.mk (.bind (.generated .operand 157)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 158)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 159)) none (.block (.mk [(.mk (.bind (.generated .operand 156)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 156))] false))))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 157)), (.move (.generated .operand 158)), (.move (.generated .operand 159))] false))))], (.matchOn (.move (.generated .holder 160)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.bind (.generated .binding 2))) (.mk [(.mk (.bind (.generated .operand 161)) none (.move (.generated .binding 2))), (.mk (.bind (.generated .operand 162)) none (.move (.generated .binding 1)))] (.call (.runtime .equal) [(.move (.generated .operand 161)), (.move (.generated .operand 162))] false)))]), [(1, .bytes, (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 157)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 158)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 159)) none (.block (.mk [(.mk (.bind (.generated .operand 156)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 156))] false))))]) (tail := (.call (.runtime .sliceBytes) [(.move (.generated .operand 157)), (.move (.generated .operand 158)), (.move (.generated .operand 159))] false)) (Corr.prim (ts := [.bytes, .nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 156)) none (.clone (.generated .binding 1)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 156))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(2, .bytes, (some 2)), (1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .operand 161)) none (.move (.generated .binding 2))), (.mk (.bind (.generated .operand 162)) none (.move (.generated .binding 1)))]) (tail := (.call (.runtime .equal) [(.move (.generated .operand 161)), (.move (.generated .operand 162))] false)) (Corr.mNil) rfl rfl rfl (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ + +theorem fun49 : FunOK program krate flags 49 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 48) [(.clone (.generated .binding 0)), (.clone (.generated .binding 1))] false) (.mk [] (.construct .some [(.call (.function 18) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 163)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 163))] false))), (.block (.mk [(.mk (.bind (.generated .operand 166)) none (.block (.mk [(.mk (.bind (.generated .operand 164)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 164))] false)))), (.mk (.bind (.generated .operand 167)) none (.block (.mk [(.mk (.bind (.generated .operand 165)) none (.move (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 165))] false))))] (.call (.runtime .natSub) [(.move (.generated .operand 166)), (.move (.generated .operand 167))] false)))] false)])) (.mk [] (.construct (.none .bytes) []))), [(1, .bytes, (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 48) [(.clone (.generated .binding 0)), (.clone (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 18) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 163)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 163))] false))), (.block (.mk [(.mk (.bind (.generated .operand 166)) none (.block (.mk [(.mk (.bind (.generated .operand 164)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 164))] false)))), (.mk (.bind (.generated .operand 167)) none (.block (.mk [(.mk (.bind (.generated .operand 165)) none (.move (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 165))] false))))] (.call (.runtime .natSub) [(.move (.generated .operand 166)), (.move (.generated .operand 167))] false)))] false)])) (lb := []) (tb := (.construct (.none .bytes) [])) (Corr.build (ts := [.bytes]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 163)) none (.clone (.generated .binding 1)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 163))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 166)) none (.block (.mk [(.mk (.bind (.generated .operand 164)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 164))] false)))), (.mk (.bind (.generated .operand 167)) none (.block (.mk [(.mk (.bind (.generated .operand 165)) none (.move (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 165))] false))))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 166)), (.move (.generated .operand 167))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 164)) none (.move (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 164))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 165)) none (.move (.generated .binding 1)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 165))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ + +theorem fun50 : FunOK program krate flags 50 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 168)) none (.call (.function 65) [(.move (.generated .binding 0)), (.call (.function 7) [(.lit (.str ":"))] false)] true))], (.matchOn (.move (.generated .holder 168)) [(.mk .none (.mk [] (.succeed (.construct (.none .bytes) [])))), (.mk (.some (.bind (.generated .binding 1))) (.mk [(.mk (.bind (.generated .holder 170)) none (.call (.function 65) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 169))]) none (.move (.generated .binding 1)))] (.move (.generated .part 169)))), (.call (.function 7) [(.lit (.str ":"))] false)] true))] (.matchOn (.move (.generated .holder 170)) [(.mk .none (.mk [] (.succeed (.construct (.none .bytes) [])))), (.mk (.some (.bind (.generated .binding 2))) (.mk [(.mk (.bind (.generated .holder 172)) none (.call (.function 65) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 171))]) none (.move (.generated .binding 2)))] (.move (.generated .part 171)))), (.call (.function 7) [(.lit (.str ":"))] false)] true))] (.matchOn (.move (.generated .holder 172)) [(.mk .none (.mk [] (.succeed (.construct (.none .bytes) [])))), (.mk (.some (.bind (.generated .binding 3))) (.mk [(.mk (.bind (.generated .binding 4)) (some .bytes) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 173)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 173))))), (.mk (.bind (.generated .binding 5)) (some .bytes) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 174)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 174))))), (.mk (.bind (.generated .binding 6)) (some .bytes) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 175))]) none (.move (.generated .binding 3)))] (.move (.generated .part 175))))), (.mk (.bind (.generated .binding 7)) (some (.option .bytes)) (.call (.function 66) [(.move (.generated .binding 5)), (.move (.generated .binding 6))] true))] (.cond (.call (.function 67) [(.move (.generated .binding 4))] true) (.mk [] (.succeed (.move (.generated .binding 7)))) (.mk [] (.succeed (.construct (.none .bytes) []))))))])))])))]), [(0, .bytes, (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option (.pair .bytes .bytes))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.construct (.none .bytes) []))) (Corr.mCons (Γ' := [(1, (.pair .bytes .bytes), (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .holder 170)) none (.call (.function 65) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 169))]) none (.move (.generated .binding 1)))] (.move (.generated .part 169)))), (.call (.function 7) [(.lit (.str ":"))] false)] true))]) (tail := (.matchOn (.move (.generated .holder 170)) [(.mk .none (.mk [] (.succeed (.construct (.none .bytes) [])))), (.mk (.some (.bind (.generated .binding 2))) (.mk [(.mk (.bind (.generated .holder 172)) none (.call (.function 65) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 171))]) none (.move (.generated .binding 2)))] (.move (.generated .part 171)))), (.call (.function 7) [(.lit (.str ":"))] false)] true))] (.matchOn (.move (.generated .holder 172)) [(.mk .none (.mk [] (.succeed (.construct (.none .bytes) [])))), (.mk (.some (.bind (.generated .binding 3))) (.mk [(.mk (.bind (.generated .binding 4)) (some .bytes) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 173)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 173))))), (.mk (.bind (.generated .binding 5)) (some .bytes) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 174)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 174))))), (.mk (.bind (.generated .binding 6)) (some .bytes) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 175))]) none (.move (.generated .binding 3)))] (.move (.generated .part 175))))), (.mk (.bind (.generated .binding 7)) (some (.option .bytes)) (.call (.function 66) [(.move (.generated .binding 5)), (.move (.generated .binding 6))] true))] (.cond (.call (.function 67) [(.move (.generated .binding 4))] true) (.mk [] (.succeed (.move (.generated .binding 7)))) (.mk [] (.succeed (.construct (.none .bytes) []))))))])))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := (.option (.pair .bytes .bytes))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 169))]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 169))) (Corr.second (ta := .bytes) (tb := .bytes) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.pair .bytes .bytes), (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.construct (.none .bytes) []))) (Corr.mCons (Γ' := [(2, (.pair .bytes .bytes), (some 2)), (1, (.pair .bytes .bytes), (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .holder 172)) none (.call (.function 65) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 171))]) none (.move (.generated .binding 2)))] (.move (.generated .part 171)))), (.call (.function 7) [(.lit (.str ":"))] false)] true))]) (tail := (.matchOn (.move (.generated .holder 172)) [(.mk .none (.mk [] (.succeed (.construct (.none .bytes) [])))), (.mk (.some (.bind (.generated .binding 3))) (.mk [(.mk (.bind (.generated .binding 4)) (some .bytes) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 173)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 173))))), (.mk (.bind (.generated .binding 5)) (some .bytes) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 174)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 174))))), (.mk (.bind (.generated .binding 6)) (some .bytes) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 175))]) none (.move (.generated .binding 3)))] (.move (.generated .part 175))))), (.mk (.bind (.generated .binding 7)) (some (.option .bytes)) (.call (.function 66) [(.move (.generated .binding 5)), (.move (.generated .binding 6))] true))] (.cond (.call (.function 67) [(.move (.generated .binding 4))] true) (.mk [] (.succeed (.move (.generated .binding 7)))) (.mk [] (.succeed (.construct (.none .bytes) []))))))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := (.option (.pair .bytes .bytes))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 171))]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 171))) (Corr.second (ta := .bytes) (tb := .bytes) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(2, (.pair .bytes .bytes), (some 2)), (1, (.pair .bytes .bytes), (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.construct (.none .bytes) []))) (Corr.mCons (Γ' := [(3, (.pair .bytes .bytes), (some 3)), (2, (.pair .bytes .bytes), (some 2)), (1, (.pair .bytes .bytes), (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .binding 4)) (some .bytes) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 173)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 173))))), (.mk (.bind (.generated .binding 5)) (some .bytes) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 174)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 174))))), (.mk (.bind (.generated .binding 6)) (some .bytes) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 175))]) none (.move (.generated .binding 3)))] (.move (.generated .part 175))))), (.mk (.bind (.generated .binding 7)) (some (.option .bytes)) (.call (.function 66) [(.move (.generated .binding 5)), (.move (.generated .binding 6))] true))]) (tail := (.cond (.call (.function 67) [(.move (.generated .binding 4))] true) (.mk [] (.succeed (.move (.generated .binding 7)))) (.mk [] (.succeed (.construct (.none .bytes) []))))) (Corr.mNil) rfl rfl rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 173)), .wild]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 173))) (Corr.first (ta := .bytes) (tb := .bytes) (Corr.var rfl rfl) rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 174)), .wild]) none (.move (.generated .binding 3)))]) (tail := (.move (.generated .part 174))) (Corr.first (ta := .bytes) (tb := .bytes) (Corr.var rfl rfl) rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 175))]) none (.move (.generated .binding 3)))]) (tail := (.move (.generated .part 175))) (Corr.second (ta := .bytes) (tb := .bytes) (Corr.var rfl rfl) rfl)) rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := []) (ce := (.call (.function 67) [(.move (.generated .binding 4))] true)) (lk := []) (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.move (.generated .binding 7)))) (lb := []) (tb := (.succeed (.construct (.none .bytes) []))) (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl))) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))))))) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl)⟩⟩ + +theorem fun51 : FunOK program krate flags 51 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 176)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 177)) none (.copy (.generated .binding 1)))], (.call (.runtime .indexBytes) [(.move (.generated .operand 176)), (.move (.generated .operand 177))] false), [(1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.prim (ts := [.bytes, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun52 : FunOK program krate flags 52 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 68) [(.clone (.generated .binding 0)), (.lit (.bytes (ByteArray.mk #[13])))] false) (.mk [] (.call (.function 18) [(.clone (.generated .binding 0)), (.lit (.nat 0)), (.block (.mk [(.mk (.bind (.generated .operand 179)) none (.block (.mk [(.mk (.bind (.generated .operand 178)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 178))] false)))), (.mk (.bind (.generated .operand 180)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 179)), (.move (.generated .operand 180))] false)))] false)) (.mk [] (.move (.generated .binding 0)))), [(0, .bytes, (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 68) [(.clone (.generated .binding 0)), (.lit (.bytes (ByteArray.mk #[13])))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 18) [(.clone (.generated .binding 0)), (.lit (.nat 0)), (.block (.mk [(.mk (.bind (.generated .operand 179)) none (.block (.mk [(.mk (.bind (.generated .operand 178)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 178))] false)))), (.mk (.bind (.generated .operand 180)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 179)), (.move (.generated .operand 180))] false)))] false)) (lb := []) (tb := (.move (.generated .binding 0))) (Corr.callOps (ts := [.bytes, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 179)) none (.block (.mk [(.mk (.bind (.generated .operand 178)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 178))] false)))), (.mk (.bind (.generated .operand 180)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 179)), (.move (.generated .operand 180))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 178)) none (.move (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 178))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.var rfl rfl))))⟩⟩ + +theorem fun53 : FunOK program krate flags 53 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 69) [(.move (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 48))] false) (.mk [] (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 181)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 182)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 181)), (.move (.generated .operand 182))] true)))]))) (.mk [] (.succeed (.construct (.none .nat) [])))), [(1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 69) [(.move (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 48))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .nat, (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 181)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 182)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 181)), (.move (.generated .operand 182))] true)))]))) (lb := []) (tb := (.succeed (.construct (.none .nat) []))) (Corr.fOfB (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 181)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 182)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 181)), (.move (.generated .operand 182))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))⟩⟩ + +theorem fun54 : FunOK program krate flags 54 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 187)) none (.block (.mk [(.mk (.bind (.generated .operand 183)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 184)) none (.move (.generated .binding 1)))] (.call (.runtime .compareBytes) [(.move (.generated .operand 183)), (.move (.generated .operand 184))] false)))), (.mk (.bind (.generated .operand 188)) none (.block (.mk [(.mk (.bind (.generated .operand 185)) none (.lit (.bytes (ByteArray.mk #[])))), (.mk (.bind (.generated .operand 186)) none (.lit (.bytes (ByteArray.mk #[1]))))] (.call (.runtime .compareBytes) [(.move (.generated .operand 185)), (.move (.generated .operand 186))] false))))], (.call (.runtime .equal) [(.move (.generated .operand 187)), (.move (.generated .operand 188))] false), [(1, .bytes, (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.prim (ts := [.ordering, .ordering]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 183)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 184)) none (.move (.generated .binding 1)))]) (tail := (.call (.runtime .compareBytes) [(.move (.generated .operand 183)), (.move (.generated .operand 184))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 185)) none (.lit (.bytes (ByteArray.mk #[])))), (.mk (.bind (.generated .operand 186)) none (.lit (.bytes (ByteArray.mk #[1]))))]) (tail := (.call (.runtime .compareBytes) [(.move (.generated .operand 185)), (.move (.generated .operand 186))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun55 : FunOK program krate flags 55 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.cond (.call (.function 70) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 9)), (.lit (.fixed .u8 13))] false) (.mk [] (.lit (.bool true))) (.mk [] (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 32))] false))) (.mk [] (.succeed (.lit (.nat 1)))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 194))] false) (.mk [] (.cond (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 189)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 190)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 189)), (.move (.generated .operand 190))] true))), (.lit (.fixed .u8 133))] false) (.mk [] (.lit (.bool true))) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 191)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 192)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 191)), (.move (.generated .operand 192))] true))), (.lit (.fixed .u8 160))] false))) (.mk [] (.succeed (.lit (.nat 2)))) (.mk [] (.succeed (.lit (.nat 0)))))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 225))] false) (.mk [] (.cond (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 193)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 194)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 193)), (.move (.generated .operand 194))] true))), (.lit (.fixed .u8 154))] false) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 195)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 196)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 195)), (.move (.generated .operand 196))] true))), (.lit (.fixed .u8 128))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 226))] false) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 197)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 198)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 197)), (.move (.generated .operand 198))] true))), (.lit (.fixed .u8 128))] false) (.mk [] (.cond (.cond (.call (.function 70) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 199)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 200)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 199)), (.move (.generated .operand 200))] true))), (.lit (.fixed .u8 128)), (.lit (.fixed .u8 138))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 201)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 202)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 201)), (.move (.generated .operand 202))] true))), (.lit (.fixed .u8 168))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 203)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 204)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 203)), (.move (.generated .operand 204))] true))), (.lit (.fixed .u8 169))] false) (.mk [] (.lit (.bool true))) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 205)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 206)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 205)), (.move (.generated .operand 206))] true))), (.lit (.fixed .u8 175))] false))))))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))) (.mk [] (.cond (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 207)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 208)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 207)), (.move (.generated .operand 208))] true))), (.lit (.fixed .u8 129))] false) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 209)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 210)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 209)), (.move (.generated .operand 210))] true))), (.lit (.fixed .u8 159))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 227))] false) (.mk [] (.cond (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 211)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 212)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 211)), (.move (.generated .operand 212))] true))), (.lit (.fixed .u8 128))] false) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 213)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 214)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 213)), (.move (.generated .operand 214))] true))), (.lit (.fixed .u8 128))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))) (.mk [] (.succeed (.lit (.nat 0))))))))))))), [(1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.cond (.call (.function 70) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 9)), (.lit (.fixed .u8 13))] false) (.mk [] (.lit (.bool true))) (.mk [] (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 32))] false)))) (lk := []) (Corr.cond (lc := []) (ce := (.call (.function 70) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 9)), (.lit (.fixed .u8 13))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .nat, (.fixed .u8), (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := []) (tb := (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 32))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.cond (lc := []) (ce := (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 32))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .nat, (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kId (Corr.bOfE (Corr.buildConst rfl)) (Corr.bOfE (Corr.buildConst rfl)) rfl)))) (Corr.kIf (la := []) (ta := (.succeed (.lit (.nat 1)))) (lb := []) (tb := (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 194))] false) (.mk [] (.cond (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 189)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 190)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 189)), (.move (.generated .operand 190))] true))), (.lit (.fixed .u8 133))] false) (.mk [] (.lit (.bool true))) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 191)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 192)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 191)), (.move (.generated .operand 192))] true))), (.lit (.fixed .u8 160))] false))) (.mk [] (.succeed (.lit (.nat 2)))) (.mk [] (.succeed (.lit (.nat 0)))))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 225))] false) (.mk [] (.cond (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 193)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 194)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 193)), (.move (.generated .operand 194))] true))), (.lit (.fixed .u8 154))] false) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 195)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 196)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 195)), (.move (.generated .operand 196))] true))), (.lit (.fixed .u8 128))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 226))] false) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 197)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 198)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 197)), (.move (.generated .operand 198))] true))), (.lit (.fixed .u8 128))] false) (.mk [] (.cond (.cond (.call (.function 70) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 199)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 200)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 199)), (.move (.generated .operand 200))] true))), (.lit (.fixed .u8 128)), (.lit (.fixed .u8 138))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 201)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 202)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 201)), (.move (.generated .operand 202))] true))), (.lit (.fixed .u8 168))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 203)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 204)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 203)), (.move (.generated .operand 204))] true))), (.lit (.fixed .u8 169))] false) (.mk [] (.lit (.bool true))) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 205)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 206)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 205)), (.move (.generated .operand 206))] true))), (.lit (.fixed .u8 175))] false))))))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))) (.mk [] (.cond (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 207)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 208)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 207)), (.move (.generated .operand 208))] true))), (.lit (.fixed .u8 129))] false) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 209)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 210)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 209)), (.move (.generated .operand 210))] true))), (.lit (.fixed .u8 159))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 227))] false) (.mk [] (.cond (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 211)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 212)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 211)), (.move (.generated .operand 212))] true))), (.lit (.fixed .u8 128))] false) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 213)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 214)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 213)), (.move (.generated .operand 214))] true))), (.lit (.fixed .u8 128))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))) (.mk [] (.succeed (.lit (.nat 0)))))))))))) (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl))) (Corr.cond (lc := []) (ce := (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 194))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .nat, (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 189)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 190)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 189)), (.move (.generated .operand 190))] true))), (.lit (.fixed .u8 133))] false) (.mk [] (.lit (.bool true))) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 191)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 192)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 191)), (.move (.generated .operand 192))] true))), (.lit (.fixed .u8 160))] false))) (.mk [] (.succeed (.lit (.nat 2)))) (.mk [] (.succeed (.lit (.nat 0)))))) (lb := []) (tb := (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 225))] false) (.mk [] (.cond (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 193)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 194)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 193)), (.move (.generated .operand 194))] true))), (.lit (.fixed .u8 154))] false) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 195)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 196)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 195)), (.move (.generated .operand 196))] true))), (.lit (.fixed .u8 128))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 226))] false) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 197)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 198)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 197)), (.move (.generated .operand 198))] true))), (.lit (.fixed .u8 128))] false) (.mk [] (.cond (.cond (.call (.function 70) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 199)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 200)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 199)), (.move (.generated .operand 200))] true))), (.lit (.fixed .u8 128)), (.lit (.fixed .u8 138))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 201)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 202)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 201)), (.move (.generated .operand 202))] true))), (.lit (.fixed .u8 168))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 203)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 204)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 203)), (.move (.generated .operand 204))] true))), (.lit (.fixed .u8 169))] false) (.mk [] (.lit (.bool true))) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 205)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 206)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 205)), (.move (.generated .operand 206))] true))), (.lit (.fixed .u8 175))] false))))))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))) (.mk [] (.cond (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 207)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 208)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 207)), (.move (.generated .operand 208))] true))), (.lit (.fixed .u8 129))] false) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 209)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 210)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 209)), (.move (.generated .operand 210))] true))), (.lit (.fixed .u8 159))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 227))] false) (.mk [] (.cond (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 211)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 212)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 211)), (.move (.generated .operand 212))] true))), (.lit (.fixed .u8 128))] false) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 213)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 214)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 213)), (.move (.generated .operand 214))] true))), (.lit (.fixed .u8 128))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))) (.mk [] (.succeed (.lit (.nat 0)))))))))) (Corr.cond (lc := []) (ce := (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 189)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 190)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 189)), (.move (.generated .operand 190))] true))), (.lit (.fixed .u8 133))] false) (.mk [] (.lit (.bool true))) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 191)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 192)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 191)), (.move (.generated .operand 192))] true))), (.lit (.fixed .u8 160))] false)))) (lk := []) (Corr.cond (lc := []) (ce := (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 189)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 190)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 189)), (.move (.generated .operand 190))] true))), (.lit (.fixed .u8 133))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .nat, (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 189)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 190)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 189)), (.move (.generated .operand 190))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := []) (tb := (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 191)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 192)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 191)), (.move (.generated .operand 192))] true))), (.lit (.fixed .u8 160))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.cond (lc := []) (ce := (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 191)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 192)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 191)), (.move (.generated .operand 192))] true))), (.lit (.fixed .u8 160))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .nat, (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 191)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 192)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 191)), (.move (.generated .operand 192))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kId (Corr.bOfE (Corr.buildConst rfl)) (Corr.bOfE (Corr.buildConst rfl)) rfl)))) (Corr.kIf (la := []) (ta := (.succeed (.lit (.nat 2)))) (lb := []) (tb := (.succeed (.lit (.nat 0)))) (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl))) (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl))))) (Corr.cond (lc := []) (ce := (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 225))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .nat, (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 193)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 194)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 193)), (.move (.generated .operand 194))] true))), (.lit (.fixed .u8 154))] false) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 195)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 196)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 195)), (.move (.generated .operand 196))] true))), (.lit (.fixed .u8 128))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))) (lb := []) (tb := (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 226))] false) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 197)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 198)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 197)), (.move (.generated .operand 198))] true))), (.lit (.fixed .u8 128))] false) (.mk [] (.cond (.cond (.call (.function 70) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 199)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 200)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 199)), (.move (.generated .operand 200))] true))), (.lit (.fixed .u8 128)), (.lit (.fixed .u8 138))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 201)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 202)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 201)), (.move (.generated .operand 202))] true))), (.lit (.fixed .u8 168))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 203)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 204)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 203)), (.move (.generated .operand 204))] true))), (.lit (.fixed .u8 169))] false) (.mk [] (.lit (.bool true))) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 205)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 206)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 205)), (.move (.generated .operand 206))] true))), (.lit (.fixed .u8 175))] false))))))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))) (.mk [] (.cond (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 207)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 208)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 207)), (.move (.generated .operand 208))] true))), (.lit (.fixed .u8 129))] false) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 209)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 210)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 209)), (.move (.generated .operand 210))] true))), (.lit (.fixed .u8 159))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 227))] false) (.mk [] (.cond (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 211)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 212)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 211)), (.move (.generated .operand 212))] true))), (.lit (.fixed .u8 128))] false) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 213)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 214)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 213)), (.move (.generated .operand 214))] true))), (.lit (.fixed .u8 128))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))) (.mk [] (.succeed (.lit (.nat 0)))))))) (Corr.cond (lc := []) (ce := (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 193)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 194)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 193)), (.move (.generated .operand 194))] true))), (.lit (.fixed .u8 154))] false) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 195)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 196)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 195)), (.move (.generated .operand 196))] true))), (.lit (.fixed .u8 128))] false)) (.mk [] (.lit (.bool false))))) (lk := []) (Corr.cond (lc := []) (ce := (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 193)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 194)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 193)), (.move (.generated .operand 194))] true))), (.lit (.fixed .u8 154))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .nat, (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 193)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 194)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 193)), (.move (.generated .operand 194))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 195)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 196)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 195)), (.move (.generated .operand 196))] true))), (.lit (.fixed .u8 128))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := []) (ce := (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 195)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 196)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 195)), (.move (.generated .operand 196))] true))), (.lit (.fixed .u8 128))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .nat, (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 195)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 196)) none (.lit (.nat 2)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 195)), (.move (.generated .operand 196))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kId (Corr.bOfE (Corr.buildConst rfl)) (Corr.bOfE (Corr.buildConst rfl)) rfl)) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.kIf (la := []) (ta := (.succeed (.lit (.nat 3)))) (lb := []) (tb := (.succeed (.lit (.nat 0)))) (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl))) (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl))))) (Corr.cond (lc := []) (ce := (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 226))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .nat, (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 197)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 198)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 197)), (.move (.generated .operand 198))] true))), (.lit (.fixed .u8 128))] false) (.mk [] (.cond (.cond (.call (.function 70) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 199)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 200)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 199)), (.move (.generated .operand 200))] true))), (.lit (.fixed .u8 128)), (.lit (.fixed .u8 138))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 201)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 202)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 201)), (.move (.generated .operand 202))] true))), (.lit (.fixed .u8 168))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 203)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 204)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 203)), (.move (.generated .operand 204))] true))), (.lit (.fixed .u8 169))] false) (.mk [] (.lit (.bool true))) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 205)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 206)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 205)), (.move (.generated .operand 206))] true))), (.lit (.fixed .u8 175))] false))))))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))) (.mk [] (.cond (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 207)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 208)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 207)), (.move (.generated .operand 208))] true))), (.lit (.fixed .u8 129))] false) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 209)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 210)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 209)), (.move (.generated .operand 210))] true))), (.lit (.fixed .u8 159))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))))) (lb := []) (tb := (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 227))] false) (.mk [] (.cond (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 211)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 212)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 211)), (.move (.generated .operand 212))] true))), (.lit (.fixed .u8 128))] false) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 213)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 214)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 213)), (.move (.generated .operand 214))] true))), (.lit (.fixed .u8 128))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))) (.mk [] (.succeed (.lit (.nat 0)))))) (Corr.cond (lc := []) (ce := (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 197)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 198)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 197)), (.move (.generated .operand 198))] true))), (.lit (.fixed .u8 128))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .nat, (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 197)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 198)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 197)), (.move (.generated .operand 198))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.cond (.call (.function 70) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 199)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 200)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 199)), (.move (.generated .operand 200))] true))), (.lit (.fixed .u8 128)), (.lit (.fixed .u8 138))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 201)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 202)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 201)), (.move (.generated .operand 202))] true))), (.lit (.fixed .u8 168))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 203)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 204)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 203)), (.move (.generated .operand 204))] true))), (.lit (.fixed .u8 169))] false) (.mk [] (.lit (.bool true))) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 205)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 206)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 205)), (.move (.generated .operand 206))] true))), (.lit (.fixed .u8 175))] false))))))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))) (lb := []) (tb := (.cond (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 207)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 208)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 207)), (.move (.generated .operand 208))] true))), (.lit (.fixed .u8 129))] false) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 209)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 210)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 209)), (.move (.generated .operand 210))] true))), (.lit (.fixed .u8 159))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))) (Corr.cond (lc := []) (ce := (.cond (.call (.function 70) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 199)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 200)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 199)), (.move (.generated .operand 200))] true))), (.lit (.fixed .u8 128)), (.lit (.fixed .u8 138))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 201)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 202)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 201)), (.move (.generated .operand 202))] true))), (.lit (.fixed .u8 168))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 203)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 204)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 203)), (.move (.generated .operand 204))] true))), (.lit (.fixed .u8 169))] false) (.mk [] (.lit (.bool true))) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 205)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 206)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 205)), (.move (.generated .operand 206))] true))), (.lit (.fixed .u8 175))] false)))))))) (lk := []) (Corr.cond (lc := []) (ce := (.call (.function 70) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 199)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 200)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 199)), (.move (.generated .operand 200))] true))), (.lit (.fixed .u8 128)), (.lit (.fixed .u8 138))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .nat, (.fixed .u8), (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 199)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 200)) none (.lit (.nat 2)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 199)), (.move (.generated .operand 200))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := []) (tb := (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 201)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 202)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 201)), (.move (.generated .operand 202))] true))), (.lit (.fixed .u8 168))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 203)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 204)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 203)), (.move (.generated .operand 204))] true))), (.lit (.fixed .u8 169))] false) (.mk [] (.lit (.bool true))) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 205)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 206)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 205)), (.move (.generated .operand 206))] true))), (.lit (.fixed .u8 175))] false)))))) (Corr.bOfE (Corr.buildConst rfl)) (Corr.cond (lc := []) (ce := (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 201)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 202)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 201)), (.move (.generated .operand 202))] true))), (.lit (.fixed .u8 168))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .nat, (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 201)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 202)) none (.lit (.nat 2)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 201)), (.move (.generated .operand 202))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := []) (tb := (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 203)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 204)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 203)), (.move (.generated .operand 204))] true))), (.lit (.fixed .u8 169))] false) (.mk [] (.lit (.bool true))) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 205)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 206)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 205)), (.move (.generated .operand 206))] true))), (.lit (.fixed .u8 175))] false)))) (Corr.bOfE (Corr.buildConst rfl)) (Corr.cond (lc := []) (ce := (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 203)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 204)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 203)), (.move (.generated .operand 204))] true))), (.lit (.fixed .u8 169))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .nat, (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 203)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 204)) none (.lit (.nat 2)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 203)), (.move (.generated .operand 204))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := []) (tb := (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 205)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 206)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 205)), (.move (.generated .operand 206))] true))), (.lit (.fixed .u8 175))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.cond (lc := []) (ce := (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 205)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 206)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 205)), (.move (.generated .operand 206))] true))), (.lit (.fixed .u8 175))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .nat, (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 205)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 206)) none (.lit (.nat 2)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 205)), (.move (.generated .operand 206))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kId (Corr.bOfE (Corr.buildConst rfl)) (Corr.bOfE (Corr.buildConst rfl)) rfl)))))))) (Corr.kIf (la := []) (ta := (.succeed (.lit (.nat 3)))) (lb := []) (tb := (.succeed (.lit (.nat 0)))) (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl))) (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl))))) (Corr.cond (lc := []) (ce := (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 207)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 208)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 207)), (.move (.generated .operand 208))] true))), (.lit (.fixed .u8 129))] false) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 209)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 210)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 209)), (.move (.generated .operand 210))] true))), (.lit (.fixed .u8 159))] false)) (.mk [] (.lit (.bool false))))) (lk := []) (Corr.cond (lc := []) (ce := (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 207)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 208)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 207)), (.move (.generated .operand 208))] true))), (.lit (.fixed .u8 129))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .nat, (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 207)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 208)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 207)), (.move (.generated .operand 208))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 209)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 210)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 209)), (.move (.generated .operand 210))] true))), (.lit (.fixed .u8 159))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := []) (ce := (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 209)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 210)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 209)), (.move (.generated .operand 210))] true))), (.lit (.fixed .u8 159))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .nat, (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 209)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 210)) none (.lit (.nat 2)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 209)), (.move (.generated .operand 210))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kId (Corr.bOfE (Corr.buildConst rfl)) (Corr.bOfE (Corr.buildConst rfl)) rfl)) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.kIf (la := []) (ta := (.succeed (.lit (.nat 3)))) (lb := []) (tb := (.succeed (.lit (.nat 0)))) (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl))) (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl))))))) (Corr.cond (lc := []) (ce := (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 227))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .nat, (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 211)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 212)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 211)), (.move (.generated .operand 212))] true))), (.lit (.fixed .u8 128))] false) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 213)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 214)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 213)), (.move (.generated .operand 214))] true))), (.lit (.fixed .u8 128))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))) (lb := []) (tb := (.succeed (.lit (.nat 0)))) (Corr.cond (lc := []) (ce := (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 211)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 212)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 211)), (.move (.generated .operand 212))] true))), (.lit (.fixed .u8 128))] false) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 213)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 214)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 213)), (.move (.generated .operand 214))] true))), (.lit (.fixed .u8 128))] false)) (.mk [] (.lit (.bool false))))) (lk := []) (Corr.cond (lc := []) (ce := (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 211)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 212)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 211)), (.move (.generated .operand 212))] true))), (.lit (.fixed .u8 128))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .nat, (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 211)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 212)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 211)), (.move (.generated .operand 212))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 213)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 214)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 213)), (.move (.generated .operand 214))] true))), (.lit (.fixed .u8 128))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := []) (ce := (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 213)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 214)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 213)), (.move (.generated .operand 214))] true))), (.lit (.fixed .u8 128))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .nat, (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 213)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 214)) none (.lit (.nat 2)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 213)), (.move (.generated .operand 214))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kId (Corr.bOfE (Corr.buildConst rfl)) (Corr.bOfE (Corr.buildConst rfl)) rfl)) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.kIf (la := []) (ta := (.succeed (.lit (.nat 3)))) (lb := []) (tb := (.succeed (.lit (.nat 0)))) (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl))) (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl))))) (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl)))))))))))))⟩⟩ + +theorem fun56 : FunOK program krate flags 56 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 68) [(.clone (.generated .binding 0)), (.clone (.generated .binding 1))] false) (.mk [] (.construct .some [(.call (.function 18) [(.clone (.generated .binding 0)), (.lit (.nat 0)), (.block (.mk [(.mk (.bind (.generated .operand 217)) none (.block (.mk [(.mk (.bind (.generated .operand 215)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 215))] false)))), (.mk (.bind (.generated .operand 218)) none (.block (.mk [(.mk (.bind (.generated .operand 216)) none (.move (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 216))] false))))] (.call (.runtime .natSub) [(.move (.generated .operand 217)), (.move (.generated .operand 218))] false)))] false)])) (.mk [] (.construct (.none .bytes) []))), [(1, .bytes, (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 68) [(.clone (.generated .binding 0)), (.clone (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 18) [(.clone (.generated .binding 0)), (.lit (.nat 0)), (.block (.mk [(.mk (.bind (.generated .operand 217)) none (.block (.mk [(.mk (.bind (.generated .operand 215)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 215))] false)))), (.mk (.bind (.generated .operand 218)) none (.block (.mk [(.mk (.bind (.generated .operand 216)) none (.move (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 216))] false))))] (.call (.runtime .natSub) [(.move (.generated .operand 217)), (.move (.generated .operand 218))] false)))] false)])) (lb := []) (tb := (.construct (.none .bytes) [])) (Corr.build (ts := [.bytes]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 217)) none (.block (.mk [(.mk (.bind (.generated .operand 215)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 215))] false)))), (.mk (.bind (.generated .operand 218)) none (.block (.mk [(.mk (.bind (.generated .operand 216)) none (.move (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 216))] false))))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 217)), (.move (.generated .operand 218))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 215)) none (.move (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 215))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 216)) none (.move (.generated .binding 1)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 216))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ + +theorem fun57 : FunOK program krate flags 57 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 59) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "unrecognized axiom payload: "))] false), (.move (.generated .binding 0))] false)] false), [(0, .bytes, (some 0))], rfl, rfl, + (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun58 : FunOK program krate flags 58 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct (.ok (.pair .bytes (.list .bytes)) .bytes) [(.pair (.move (.generated .binding 0)) (.move (.generated .binding 1)))]), [(1, (.list .bytes), (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.build (ts := [(.pair .bytes (.list .bytes))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lNil))) rfl)⟩⟩ + +theorem fun59 : FunOK program krate flags 59 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct (.err (.pair .bytes (.list .bytes)) .bytes) [(.move (.generated .binding 0))]), [(0, .bytes, (some 0))], rfl, rfl, + (Corr.build (ts := [.bytes]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)⟩⟩ + +theorem fun60 : FunOK program krate flags 60 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 6) [(.call (.function 40) [(.move (.generated .binding 0))] false), (.call (.function 7) [(.lit (.str " is not a Lean name"))] false)] false), [(0, .bytes, (some 0))], rfl, rfl, + (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun61 : FunOK program krate flags 61 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 222)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 219))]) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 220)), .wild]) none (.call (.function 71) [(.construct (.closure 8 72) [(.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 221)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 221))] false))), (.pair (.lit (.nat 0)) (.lit (.nat 0)))] true))] (.move (.generated .part 220)))))] (.move (.generated .part 219))))), (.mk (.bind (.generated .operand 223)) none (.lit (.nat 1)))], (.succeed (.call (.runtime .natEq) [(.move (.generated .operand 222)), (.move (.generated .operand 223))] false)), [(0, .bytes, (some 0))], rfl, rfl, + (Corr.fOfB (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 219))]) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 220)), .wild]) none (.call (.function 71) [(.construct (.closure 8 72) [(.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 221)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 221))] false))), (.pair (.lit (.nat 0)) (.lit (.nat 0)))] true))] (.move (.generated .part 220)))))]) (tail := (.move (.generated .part 219))) (Corr.second (ta := .nat) (tb := .nat) (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 220)), .wild]) none (.call (.function 71) [(.construct (.closure 8 72) [(.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 221)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 221))] false))), (.pair (.lit (.nat 0)) (.lit (.nat 0)))] true))]) (tail := (.move (.generated .part 220))) (Corr.first (ta := (.pair .nat .nat)) (tb := .bool) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.pair .nat .nat)] (.option (.pair .nat .nat))), .nat, (.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [.bytes]) (mask := [false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 221)) none (.move (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 221))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl)) rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl))⟩⟩ + +theorem fun62 : FunOK program krate flags 62 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 224)) none (.call (.function 73) [(.move (.generated .binding 1)), (.call (.function 7) [(.lit (.str "' depends on axioms: ["))] false)] true))], (.matchOn (.move (.generated .holder 224)) [(.mk .none (.mk [] (.succeed (.call (.function 57) [(.move (.generated .binding 0))] false)))), (.mk (.some (.bind (.generated .binding 2))) (.mk [(.mk (.bind (.generated .binding 3)) (some .bytes) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 225)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 225))))), (.mk (.bind (.generated .binding 4)) (some .bytes) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 226))]) none (.move (.generated .binding 2)))] (.move (.generated .part 226))))), (.mk (.bind (.generated .binding 5)) (some (.result (.pair .bytes (.list .bytes)) .bytes)) (.call (.function 74) [(.clone (.generated .binding 3)), (.move (.generated .binding 4))] true)), (.mk (.bind (.generated .binding 6)) (some (.result (.pair .bytes (.list .bytes)) .bytes)) (.call (.function 59) [(.call (.function 60) [(.clone (.generated .binding 3))] false)] false))] (.cond (.call (.function 61) [(.move (.generated .binding 3))] true) (.mk [] (.succeed (.move (.generated .binding 5)))) (.mk [] (.succeed (.move (.generated .binding 6)))))))]), [(1, .bytes, (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option (.pair .bytes .bytes))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.call (.function 57) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(2, (.pair .bytes .bytes), (some 2)), (1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .binding 3)) (some .bytes) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 225)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 225))))), (.mk (.bind (.generated .binding 4)) (some .bytes) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 226))]) none (.move (.generated .binding 2)))] (.move (.generated .part 226))))), (.mk (.bind (.generated .binding 5)) (some (.result (.pair .bytes (.list .bytes)) .bytes)) (.call (.function 74) [(.clone (.generated .binding 3)), (.move (.generated .binding 4))] true)), (.mk (.bind (.generated .binding 6)) (some (.result (.pair .bytes (.list .bytes)) .bytes)) (.call (.function 59) [(.call (.function 60) [(.clone (.generated .binding 3))] false)] false))]) (tail := (.cond (.call (.function 61) [(.move (.generated .binding 3))] true) (.mk [] (.succeed (.move (.generated .binding 5)))) (.mk [] (.succeed (.move (.generated .binding 6)))))) (Corr.mNil) rfl rfl rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 225)), .wild]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 225))) (Corr.first (ta := .bytes) (tb := .bytes) (Corr.var rfl rfl) rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 226))]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 226))) (Corr.second (ta := .bytes) (tb := .bytes) (Corr.var rfl rfl) rfl)) rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := []) (ce := (.call (.function 61) [(.move (.generated .binding 3))] true)) (lk := []) (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.move (.generated .binding 5)))) (lb := []) (tb := (.succeed (.move (.generated .binding 6)))) (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl))) (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))))))))) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl)⟩⟩ + +theorem fun63 : FunOK program krate flags 63 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 227)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 228)) none (.call (.function 55) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1))] true))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 227)), (.move (.generated .operand 228))] false) (.mk [] (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 229)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 230)) none (.call (.function 55) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 229)), (.move (.generated .operand 230))] true)))]))) (.mk [] (.succeed (.construct (.none .nat) [])))), [(1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 227)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 228)) none (.call (.function 55) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1))] true))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 227)), (.move (.generated .operand 228))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 229)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 230)) none (.call (.function 55) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 229)), (.move (.generated .operand 230))] true)))]))) (lb := []) (tb := (.succeed (.construct (.none .nat) []))) (Corr.fOfB (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 229)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 230)) none (.call (.function 55) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] true))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 229)), (.move (.generated .operand 230))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))⟩⟩ + +theorem fun64 : FunOK program krate flags 64 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 231)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 232)) none (.call (.function 75) [(.clone (.generated .binding 1)), (.copy (.generated .binding 2))] true))], (.cond (.cond (.call (.runtime .natLt) [(.move (.generated .operand 231)), (.move (.generated .operand 232))] false) (.mk [(.mk (.bind (.generated .operand 235)) none (.block (.mk [(.mk (.bind (.generated .operand 233)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 234)) none (.call (.function 75) [(.clone (.generated .binding 1)), (.copy (.generated .binding 2))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 233)), (.move (.generated .operand 234))] true)))), (.mk (.bind (.generated .operand 236)) none (.copy (.generated .binding 2)))] (.call (.runtime .natLe) [(.move (.generated .operand 235)), (.move (.generated .operand 236))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 237)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 238)) none (.call (.function 75) [(.move (.generated .binding 1)), (.copy (.generated .binding 2))] true))] (.call (.runtime .natSub) [(.move (.generated .operand 237)), (.move (.generated .operand 238))] false)))]))) (.mk [] (.succeed (.construct (.none .nat) [])))), [(2, .nat, (some 2)), (1, .bytes, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 231)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 232)) none (.call (.function 75) [(.clone (.generated .binding 1)), (.copy (.generated .binding 2))] true))]) (ce := (.cond (.call (.runtime .natLt) [(.move (.generated .operand 231)), (.move (.generated .operand 232))] false) (.mk [(.mk (.bind (.generated .operand 235)) none (.block (.mk [(.mk (.bind (.generated .operand 233)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 234)) none (.call (.function 75) [(.clone (.generated .binding 1)), (.copy (.generated .binding 2))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 233)), (.move (.generated .operand 234))] true)))), (.mk (.bind (.generated .operand 236)) none (.copy (.generated .binding 2)))] (.call (.runtime .natLe) [(.move (.generated .operand 235)), (.move (.generated .operand 236))] false)) (.mk [] (.lit (.bool false))))) (lk := []) (Corr.cond (lc := [(.mk (.bind (.generated .operand 231)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 232)) none (.call (.function 75) [(.clone (.generated .binding 1)), (.copy (.generated .binding 2))] true))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 231)), (.move (.generated .operand 232))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 235)) none (.block (.mk [(.mk (.bind (.generated .operand 233)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 234)) none (.call (.function 75) [(.clone (.generated .binding 1)), (.copy (.generated .binding 2))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 233)), (.move (.generated .operand 234))] true)))), (.mk (.bind (.generated .operand 236)) none (.copy (.generated .binding 2)))]) (ta := (.call (.runtime .natLe) [(.move (.generated .operand 235)), (.move (.generated .operand 236))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 233)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 234)) none (.call (.function 75) [(.clone (.generated .binding 1)), (.copy (.generated .binding 2))] true))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 233)), (.move (.generated .operand 234))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 237)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 238)) none (.call (.function 75) [(.move (.generated .binding 1)), (.copy (.generated .binding 2))] true))] (.call (.runtime .natSub) [(.move (.generated .operand 237)), (.move (.generated .operand 238))] false)))]))) (lb := []) (tb := (.succeed (.construct (.none .nat) []))) (Corr.fOfB (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 237)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 238)) none (.call (.function 75) [(.move (.generated .binding 1)), (.copy (.generated .binding 2))] true))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 237)), (.move (.generated .operand 238))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))⟩⟩ + +theorem fun65 : FunOK program krate flags 65 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 239)) none (.call (.function 76) [(.clone (.generated .binding 0)), (.clone (.generated .binding 1))] true))], (.matchOn (.move (.generated .holder 239)) [(.mk .none (.mk [] (.succeed (.construct (.none (.pair .bytes .bytes)) [])))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct .some [(.pair (.call (.function 18) [(.clone (.generated .binding 0)), (.lit (.nat 0)), (.copy (.generated .binding 2))] false) (.call (.function 18) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 241)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 242)) none (.block (.mk [(.mk (.bind (.generated .operand 240)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 240))] false))))] (.call (.runtime .natAdd) [(.move (.generated .operand 241)), (.move (.generated .operand 242))] true))), (.block (.mk [(.mk (.bind (.generated .operand 247)) none (.block (.mk [(.mk (.bind (.generated .operand 243)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 243))] false)))), (.mk (.bind (.generated .operand 248)) none (.block (.mk [(.mk (.bind (.generated .operand 245)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 246)) none (.block (.mk [(.mk (.bind (.generated .operand 244)) none (.move (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 244))] false))))] (.call (.runtime .natAdd) [(.move (.generated .operand 245)), (.move (.generated .operand 246))] true))))] (.call (.runtime .natSub) [(.move (.generated .operand 247)), (.move (.generated .operand 248))] false)))] false))]))))]), [(1, .bytes, (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.construct (.none (.pair .bytes .bytes)) []))) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct .some [(.pair (.call (.function 18) [(.clone (.generated .binding 0)), (.lit (.nat 0)), (.copy (.generated .binding 2))] false) (.call (.function 18) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 241)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 242)) none (.block (.mk [(.mk (.bind (.generated .operand 240)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 240))] false))))] (.call (.runtime .natAdd) [(.move (.generated .operand 241)), (.move (.generated .operand 242))] true))), (.block (.mk [(.mk (.bind (.generated .operand 247)) none (.block (.mk [(.mk (.bind (.generated .operand 243)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 243))] false)))), (.mk (.bind (.generated .operand 248)) none (.block (.mk [(.mk (.bind (.generated .operand 245)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 246)) none (.block (.mk [(.mk (.bind (.generated .operand 244)) none (.move (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 244))] false))))] (.call (.runtime .natAdd) [(.move (.generated .operand 245)), (.move (.generated .operand 246))] true))))] (.call (.runtime .natSub) [(.move (.generated .operand 247)), (.move (.generated .operand 248))] false)))] false))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.pair .bytes .bytes)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 241)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 242)) none (.block (.mk [(.mk (.bind (.generated .operand 240)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 240))] false))))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 241)), (.move (.generated .operand 242))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 240)) none (.clone (.generated .binding 1)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 240))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 247)) none (.block (.mk [(.mk (.bind (.generated .operand 243)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 243))] false)))), (.mk (.bind (.generated .operand 248)) none (.block (.mk [(.mk (.bind (.generated .operand 245)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 246)) none (.block (.mk [(.mk (.bind (.generated .operand 244)) none (.move (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 244))] false))))] (.call (.runtime .natAdd) [(.move (.generated .operand 245)), (.move (.generated .operand 246))] true))))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 247)), (.move (.generated .operand 248))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 243)) none (.move (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 243))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 245)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 246)) none (.block (.mk [(.mk (.bind (.generated .operand 244)) none (.move (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 244))] false))))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 245)), (.move (.generated .operand 246))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 244)) none (.move (.generated .binding 1)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 244))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl)⟩⟩ + +theorem fun66 : FunOK program krate flags 66 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 249)) none (.call (.function 65) [(.clone (.generated .binding 0)), (.call (.function 7) [(.lit (.str "-"))] false)] true))], (.matchOn (.move (.generated .holder 249)) [(.mk .none (.mk [(.mk (.bind (.generated .binding 9)) (some (.option .bytes)) (.call (.function 77) [(.move (.generated .binding 1))] false))] (.cond (.call (.function 67) [(.move (.generated .binding 0))] true) (.mk [] (.succeed (.move (.generated .binding 9)))) (.mk [] (.succeed (.construct (.none .bytes) [])))))), (.mk (.some (.bind (.generated .binding 2))) (.mk [(.mk (.bind (.generated .binding 3)) (some .bytes) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 250)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 250))))), (.mk (.bind (.generated .binding 4)) (some .bytes) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 251))]) none (.move (.generated .binding 2)))] (.move (.generated .part 251))))), (.mk (.bind (.generated .holder 252)) none (.call (.function 65) [(.move (.generated .binding 1)), (.call (.function 7) [(.lit (.str ":"))] false)] true))] (.matchOn (.move (.generated .holder 252)) [(.mk .none (.mk [] (.succeed (.construct (.none .bytes) [])))), (.mk (.some (.bind (.generated .binding 5))) (.mk [(.mk (.bind (.generated .binding 6)) (some .bytes) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 253)), .wild]) none (.move (.generated .binding 5)))] (.move (.generated .part 253))))), (.mk (.bind (.generated .binding 7)) (some .bytes) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 254))]) none (.move (.generated .binding 5)))] (.move (.generated .part 254))))), (.mk (.bind (.generated .binding 8)) (some (.option .bytes)) (.call (.function 77) [(.move (.generated .binding 7))] false))] (.cond (.call (.function 67) [(.move (.generated .binding 3))] true) (.mk [] (.cond (.call (.function 67) [(.move (.generated .binding 4))] true) (.mk [] (.cond (.call (.function 67) [(.move (.generated .binding 6))] true) (.mk [] (.succeed (.move (.generated .binding 8)))) (.mk [] (.succeed (.construct (.none .bytes) []))))) (.mk [] (.succeed (.construct (.none .bytes) []))))) (.mk [] (.succeed (.construct (.none .bytes) []))))))])))]), [(1, .bytes, (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option (.pair .bytes .bytes))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .binding 9)) (some (.option .bytes)) (.call (.function 77) [(.move (.generated .binding 1))] false))]) (tail := (.cond (.call (.function 67) [(.move (.generated .binding 0))] true) (.mk [] (.succeed (.move (.generated .binding 9)))) (.mk [] (.succeed (.construct (.none .bytes) []))))) (Corr.mCons (Γ' := [(2, (.pair .bytes .bytes), (some 2)), (1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .binding 3)) (some .bytes) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 250)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 250))))), (.mk (.bind (.generated .binding 4)) (some .bytes) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 251))]) none (.move (.generated .binding 2)))] (.move (.generated .part 251))))), (.mk (.bind (.generated .holder 252)) none (.call (.function 65) [(.move (.generated .binding 1)), (.call (.function 7) [(.lit (.str ":"))] false)] true))]) (tail := (.matchOn (.move (.generated .holder 252)) [(.mk .none (.mk [] (.succeed (.construct (.none .bytes) [])))), (.mk (.some (.bind (.generated .binding 5))) (.mk [(.mk (.bind (.generated .binding 6)) (some .bytes) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 253)), .wild]) none (.move (.generated .binding 5)))] (.move (.generated .part 253))))), (.mk (.bind (.generated .binding 7)) (some .bytes) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 254))]) none (.move (.generated .binding 5)))] (.move (.generated .part 254))))), (.mk (.bind (.generated .binding 8)) (some (.option .bytes)) (.call (.function 77) [(.move (.generated .binding 7))] false))] (.cond (.call (.function 67) [(.move (.generated .binding 3))] true) (.mk [] (.cond (.call (.function 67) [(.move (.generated .binding 4))] true) (.mk [] (.cond (.call (.function 67) [(.move (.generated .binding 6))] true) (.mk [] (.succeed (.move (.generated .binding 8)))) (.mk [] (.succeed (.construct (.none .bytes) []))))) (.mk [] (.succeed (.construct (.none .bytes) []))))) (.mk [] (.succeed (.construct (.none .bytes) []))))))])) (Corr.mNil) rfl rfl rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 250)), .wild]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 250))) (Corr.first (ta := .bytes) (tb := .bytes) (Corr.var rfl rfl) rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 251))]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 251))) (Corr.second (ta := .bytes) (tb := .bytes) (Corr.var rfl rfl) rfl)) rfl (Corr.matchArms (st := (.option (.pair .bytes .bytes))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, .bytes, (some 4)), (3, .bytes, (some 3)), (2, (.pair .bytes .bytes), (some 2)), (1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.construct (.none .bytes) []))) (Corr.mCons (Γ' := [(5, (.pair .bytes .bytes), (some 5)), (4, .bytes, (some 4)), (3, .bytes, (some 3)), (2, (.pair .bytes .bytes), (some 2)), (1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .binding 6)) (some .bytes) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 253)), .wild]) none (.move (.generated .binding 5)))] (.move (.generated .part 253))))), (.mk (.bind (.generated .binding 7)) (some .bytes) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 254))]) none (.move (.generated .binding 5)))] (.move (.generated .part 254))))), (.mk (.bind (.generated .binding 8)) (some (.option .bytes)) (.call (.function 77) [(.move (.generated .binding 7))] false))]) (tail := (.cond (.call (.function 67) [(.move (.generated .binding 3))] true) (.mk [] (.cond (.call (.function 67) [(.move (.generated .binding 4))] true) (.mk [] (.cond (.call (.function 67) [(.move (.generated .binding 6))] true) (.mk [] (.succeed (.move (.generated .binding 8)))) (.mk [] (.succeed (.construct (.none .bytes) []))))) (.mk [] (.succeed (.construct (.none .bytes) []))))) (.mk [] (.succeed (.construct (.none .bytes) []))))) (Corr.mNil) rfl rfl rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 253)), .wild]) none (.move (.generated .binding 5)))]) (tail := (.move (.generated .part 253))) (Corr.first (ta := .bytes) (tb := .bytes) (Corr.var rfl rfl) rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 254))]) none (.move (.generated .binding 5)))]) (tail := (.move (.generated .part 254))) (Corr.second (ta := .bytes) (tb := .bytes) (Corr.var rfl rfl) rfl)) rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := []) (ce := (.call (.function 67) [(.move (.generated .binding 3))] true)) (lk := []) (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 67) [(.move (.generated .binding 4))] true) (.mk [] (.cond (.call (.function 67) [(.move (.generated .binding 6))] true) (.mk [] (.succeed (.move (.generated .binding 8)))) (.mk [] (.succeed (.construct (.none .bytes) []))))) (.mk [] (.succeed (.construct (.none .bytes) []))))) (lb := []) (tb := (.succeed (.construct (.none .bytes) []))) (Corr.cond (lc := []) (ce := (.call (.function 67) [(.move (.generated .binding 4))] true)) (lk := []) (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 67) [(.move (.generated .binding 6))] true) (.mk [] (.succeed (.move (.generated .binding 8)))) (.mk [] (.succeed (.construct (.none .bytes) []))))) (lb := []) (tb := (.succeed (.construct (.none .bytes) []))) (Corr.cond (lc := []) (ce := (.call (.function 67) [(.move (.generated .binding 6))] true)) (lk := []) (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.move (.generated .binding 8)))) (lb := []) (tb := (.succeed (.construct (.none .bytes) []))) (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl))) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))))))) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl)))) rfl rfl rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := []) (ce := (.call (.function 67) [(.move (.generated .binding 0))] true)) (lk := []) (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.move (.generated .binding 9)))) (lb := []) (tb := (.succeed (.construct (.none .bytes) []))) (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl))) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))))) rfl rfl rfl)⟩⟩ + +theorem fun67 : FunOK program krate flags 67 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 78) [(.call (.function 32) [(.move (.generated .binding 0))] true)] false), [(0, .bytes, (some 0))], rfl, rfl, + (Corr.callF (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl)⟩⟩ + +theorem fun68 : FunOK program krate flags 68 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 255)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 255))] false)))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 256)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 256))] false)))), (.mk (.bind (.generated .operand 257)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 258)) none (.copy (.generated .binding 2)))], (.cond (.call (.runtime .natLe) [(.move (.generated .operand 257)), (.move (.generated .operand 258))] false) (.mk [(.mk (.bind (.generated .holder 264)) none (.block (.mk [(.mk (.bind (.generated .operand 261)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 262)) none (.block (.mk [(.mk (.bind (.generated .operand 259)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 260)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 259)), (.move (.generated .operand 260))] false)))), (.mk (.bind (.generated .operand 263)) none (.copy (.generated .binding 3)))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 261)), (.move (.generated .operand 262)), (.move (.generated .operand 263))] false))))] (.matchOn (.move (.generated .holder 264)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.bind (.generated .binding 4))) (.mk [(.mk (.bind (.generated .operand 265)) none (.move (.generated .binding 4))), (.mk (.bind (.generated .operand 266)) none (.move (.generated .binding 1)))] (.call (.runtime .equal) [(.move (.generated .operand 265)), (.move (.generated .operand 266))] false)))])) (.mk [] (.lit (.bool false)))), [(1, .bytes, (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 255)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 255))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 256)) none (.clone (.generated .binding 1)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 256))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := [(.mk (.bind (.generated .operand 257)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 258)) none (.copy (.generated .binding 2)))]) (ce := (.call (.runtime .natLe) [(.move (.generated .operand 257)), (.move (.generated .operand 258))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .holder 264)) none (.block (.mk [(.mk (.bind (.generated .operand 261)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 262)) none (.block (.mk [(.mk (.bind (.generated .operand 259)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 260)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 259)), (.move (.generated .operand 260))] false)))), (.mk (.bind (.generated .operand 263)) none (.copy (.generated .binding 3)))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 261)), (.move (.generated .operand 262)), (.move (.generated .operand 263))] false))))]) (ta := (.matchOn (.move (.generated .holder 264)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.bind (.generated .binding 4))) (.mk [(.mk (.bind (.generated .operand 265)) none (.move (.generated .binding 4))), (.mk (.bind (.generated .operand 266)) none (.move (.generated .binding 1)))] (.call (.runtime .equal) [(.move (.generated .operand 265)), (.move (.generated .operand 266))] false)))])) (lb := []) (tb := (.lit (.bool false))) (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 261)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 262)) none (.block (.mk [(.mk (.bind (.generated .operand 259)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 260)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 259)), (.move (.generated .operand 260))] false)))), (.mk (.bind (.generated .operand 263)) none (.copy (.generated .binding 3)))]) (tail := (.call (.runtime .sliceBytes) [(.move (.generated .operand 261)), (.move (.generated .operand 262)), (.move (.generated .operand 263))] false)) (Corr.prim (ts := [.bytes, .nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 259)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 260)) none (.copy (.generated .binding 3)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 259)), (.move (.generated .operand 260))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (2, .nat, (some 2)), (1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, .bytes, (some 4)), (3, .nat, (some 3)), (2, .nat, (some 2)), (1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .operand 265)) none (.move (.generated .binding 4))), (.mk (.bind (.generated .operand 266)) none (.move (.generated .binding 1)))]) (tail := (.call (.runtime .equal) [(.move (.generated .operand 265)), (.move (.generated .operand 266))] false)) (Corr.mNil) rfl rfl rfl (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))))⟩⟩ + +theorem fun69 : FunOK program krate flags 69 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 267)) none (.call (.function 51) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false))], (.matchOn (.move (.generated .holder 267)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.bind (.generated .binding 3))) (.mk [(.mk (.bind (.generated .operand 268)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 269)) none (.copy (.generated .binding 2)))] (.call (.runtime .equal) [(.move (.generated .operand 268)), (.move (.generated .operand 269))] false)))]), [(2, (.fixed .u8), (some 2)), (1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option (.fixed .u8))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(2, (.fixed .u8), (some 2)), (1, .nat, (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(3, (.fixed .u8), (some 3)), (2, (.fixed .u8), (some 2)), (1, .nat, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .operand 268)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 269)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .equal) [(.move (.generated .operand 268)), (.move (.generated .operand 269))] false)) (Corr.mNil) rfl rfl rfl (Corr.prim (ts := [(.fixed .u8), (.fixed .u8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ + +theorem fun70 : FunOK program krate flags 70 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 270)) none (.call (.function 51) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false))], (.matchOn (.move (.generated .holder 270)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 79) [(.copy (.generated .binding 4)), (.copy (.generated .binding 2)), (.copy (.generated .binding 3))] false)))]), [(3, (.fixed .u8), (some 3)), (2, (.fixed .u8), (some 2)), (1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option (.fixed .u8))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.fixed .u8), (some 3)), (2, (.fixed .u8), (some 2)), (1, .nat, (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, (.fixed .u8), (some 4)), (3, (.fixed .u8), (some 3)), (2, (.fixed .u8), (some 2)), (1, .nat, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.call (.function 79) [(.copy (.generated .binding 4)), (.copy (.generated .binding 2)), (.copy (.generated .binding 3))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.fixed .u8), (.fixed .u8), (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ + +theorem fun71 : FunOK program krate flags 71 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 271)) none (.copy (.generated .binding 1)))], (.cond (.isZero (.generated .holder 271)) (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 271))), (.mk (.bind (.generated .holder 273)) none (.block (.mk [(.mk (.bind (.generated .callee 272)) (some (.fn 8)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 272) [(.copy (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 273)) [(.mk .none (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 71) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)))]))), [(2, (.pair .nat .nat), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.pair .nat .nat)] (.option (.pair .nat .nat))), (some 0))], rfl, rfl, + (Corr.matchNat (sl := (some 3)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool false))))) (lb := [(.mk (.bind (.generated .holder 273)) none (.block (.mk [(.mk (.bind (.generated .callee 272)) (some (.fn 8)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 272) [(.copy (.generated .binding 2))] true))))]) (tb := (.matchOn (.move (.generated .holder 273)) [(.mk .none (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 71) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)))])) (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))))) (Corr.matchArms (st := (.option (.pair .nat .nat))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 272)) (some (.fn 8)) (.clone (.generated .binding 0)))]) (tail := (.apply (.generated .callee 272) [(.copy (.generated .binding 2))] true)) (Corr.apply (ps := [(.pair .nat .nat)]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (2, (.pair .nat .nat), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.pair .nat .nat)] (.option (.pair .nat .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true))))) (Corr.mCons (Γ' := [(4, (.pair .nat .nat), (some 4)), (3, .nat, (some 3)), (2, (.pair .nat .nat), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.pair .nat .nat)] (.option (.pair .nat .nat))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 71) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.pair .nat .nat)] (.option (.pair .nat .nat))), .nat, (.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))))))) rfl rfl rfl)))⟩⟩ + +theorem fun72 : FunOK program krate flags 72 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 80) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false), [(1, (.pair .nat .nat), (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.callF (ts := [.bytes, (.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)⟩⟩ + +theorem fun73 : FunOK program krate flags 73 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 274)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 274))] false)))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 275)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 275))] false)))), (.mk (.bind (.generated .operand 276)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 277)) none (.copy (.generated .binding 3)))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 276)), (.move (.generated .operand 277))] false) (.mk [] (.succeed (.construct (.none (.pair .bytes .bytes)) []))) (.mk [(.mk (.bind (.generated .binding 4)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 278)), .wild]) none (.call (.function 38) [(.construct (.closure 7 81) [(.clone (.generated .binding 1)), (.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 279)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 280)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 279)), (.move (.generated .operand 280))] true))), (.block (.mk [(.mk (.bind (.generated .operand 281)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 282)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 281)), (.move (.generated .operand 282))] false)))] true))] (.move (.generated .part 278)))))] (.cond (.call (.function 82) [(.clone (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 4))] false) (.mk [] (.succeed (.construct .some [(.pair (.call (.function 18) [(.clone (.generated .binding 0)), (.lit (.nat 0)), (.copy (.generated .binding 4))] false) (.call (.function 18) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 283)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 284)) none (.copy (.generated .binding 3)))] (.call (.runtime .natAdd) [(.move (.generated .operand 283)), (.move (.generated .operand 284))] true))), (.block (.mk [(.mk (.bind (.generated .operand 287)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 288)) none (.block (.mk [(.mk (.bind (.generated .operand 285)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 286)) none (.copy (.generated .binding 3)))] (.call (.runtime .natAdd) [(.move (.generated .operand 285)), (.move (.generated .operand 286))] true))))] (.call (.runtime .natSub) [(.move (.generated .operand 287)), (.move (.generated .operand 288))] false)))] false))]))) (.mk [] (.succeed (.construct (.none (.pair .bytes .bytes)) [])))))), [(1, .bytes, (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 274)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 274))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 275)) none (.clone (.generated .binding 1)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 275))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := [(.mk (.bind (.generated .operand 276)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 277)) none (.copy (.generated .binding 3)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 276)), (.move (.generated .operand 277))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct (.none (.pair .bytes .bytes)) []))) (lb := [(.mk (.bind (.generated .binding 4)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 278)), .wild]) none (.call (.function 38) [(.construct (.closure 7 81) [(.clone (.generated .binding 1)), (.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 279)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 280)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 279)), (.move (.generated .operand 280))] true))), (.block (.mk [(.mk (.bind (.generated .operand 281)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 282)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 281)), (.move (.generated .operand 282))] false)))] true))] (.move (.generated .part 278)))))]) (tb := (.cond (.call (.function 82) [(.clone (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 4))] false) (.mk [] (.succeed (.construct .some [(.pair (.call (.function 18) [(.clone (.generated .binding 0)), (.lit (.nat 0)), (.copy (.generated .binding 4))] false) (.call (.function 18) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 283)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 284)) none (.copy (.generated .binding 3)))] (.call (.runtime .natAdd) [(.move (.generated .operand 283)), (.move (.generated .operand 284))] true))), (.block (.mk [(.mk (.bind (.generated .operand 287)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 288)) none (.block (.mk [(.mk (.bind (.generated .operand 285)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 286)) none (.copy (.generated .binding 3)))] (.call (.runtime .natAdd) [(.move (.generated .operand 285)), (.move (.generated .operand 286))] true))))] (.call (.runtime .natSub) [(.move (.generated .operand 287)), (.move (.generated .operand 288))] false)))] false))]))) (.mk [] (.succeed (.construct (.none (.pair .bytes .bytes)) []))))) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 278)), .wild]) none (.call (.function 38) [(.construct (.closure 7 81) [(.clone (.generated .binding 1)), (.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 279)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 280)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 279)), (.move (.generated .operand 280))] true))), (.block (.mk [(.mk (.bind (.generated .operand 281)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 282)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 281)), (.move (.generated .operand 282))] false)))] true))]) (tail := (.move (.generated .part 278))) (Corr.first (ta := .nat) (tb := .bool) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [.nat] (.option .nat)), .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [.bytes, .bytes]) (mask := [false, false]) (af := true) (ff := false) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 279)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 280)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 279)), (.move (.generated .operand 280))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 281)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 282)) none (.copy (.generated .binding 3)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 281)), (.move (.generated .operand 282))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl)) rfl (Corr.cond (lc := []) (ce := (.call (.function 82) [(.clone (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 4))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.pair (.call (.function 18) [(.clone (.generated .binding 0)), (.lit (.nat 0)), (.copy (.generated .binding 4))] false) (.call (.function 18) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 283)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 284)) none (.copy (.generated .binding 3)))] (.call (.runtime .natAdd) [(.move (.generated .operand 283)), (.move (.generated .operand 284))] true))), (.block (.mk [(.mk (.bind (.generated .operand 287)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 288)) none (.block (.mk [(.mk (.bind (.generated .operand 285)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 286)) none (.copy (.generated .binding 3)))] (.call (.runtime .natAdd) [(.move (.generated .operand 285)), (.move (.generated .operand 286))] true))))] (.call (.runtime .natSub) [(.move (.generated .operand 287)), (.move (.generated .operand 288))] false)))] false))]))) (lb := []) (tb := (.succeed (.construct (.none (.pair .bytes .bytes)) []))) (Corr.fOfB (Corr.build (ts := [(.pair .bytes .bytes)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 283)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 284)) none (.copy (.generated .binding 3)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 283)), (.move (.generated .operand 284))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 287)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 288)) none (.block (.mk [(.mk (.bind (.generated .operand 285)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 286)) none (.copy (.generated .binding 3)))] (.call (.runtime .natAdd) [(.move (.generated .operand 285)), (.move (.generated .operand 286))] true))))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 287)), (.move (.generated .operand 288))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 285)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 286)) none (.copy (.generated .binding 3)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 285)), (.move (.generated .operand 286))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))))))))⟩⟩ + +theorem fun74 : FunOK program krate flags 74 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 289)) none (.call (.function 83) [(.construct (.closure 9 84) []), (.construct (.ok (.list .bytes) .bytes) [(.construct (.nil .bytes) [])]), (.call (.function 85) [(.move (.generated .binding 1)), (.lit (.fixed .u8 44))] true)] true))], (.matchOn (.move (.generated .holder 289)) [(.mk (.ok (.bind (.generated .binding 3))) (.mk [(.mk (.bind (.generated .holder 290)) none (.clone (.generated .binding 3)))] (.matchOn (.uncons (.generated .holder 290)) [(.mk .none (.mk [] (.succeed (.call (.function 59) [(.call (.function 7) [(.lit (.str "an axiom list cannot be empty"))] false)] false)))), (.mk (.some (.tuple [.wild, .wild])) (.mk [] (.succeed (.call (.function 58) [(.move (.generated .binding 0)), (.move (.generated .binding 3))] false))))]))), (.mk (.err (.bind (.generated .binding 2))) (.mk [] (.succeed (.call (.function 59) [(.move (.generated .binding 2))] false))))]), [(1, .bytes, (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.matchArms (st := (.result (.list .bytes) .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.result (.list .bytes) .bytes), .bytes] (.result (.list .bytes) .bytes)), (.result (.list .bytes) .bytes), (.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .bytes)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list .bytes), (some 3)), (1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 290)) none (.clone (.generated .binding 3)))]) (tail := (.matchOn (.uncons (.generated .holder 290)) [(.mk .none (.mk [] (.succeed (.call (.function 59) [(.call (.function 7) [(.lit (.str "an axiom list cannot be empty"))] false)] false)))), (.mk (.some (.tuple [.wild, .wild])) (.mk [] (.succeed (.call (.function 58) [(.move (.generated .binding 0)), (.move (.generated .binding 3))] false))))])) (Corr.mCons (Γ' := [(2, .bytes, (some 2)), (1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.call (.function 59) [(.move (.generated .binding 2))] false))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.matchArms (st := (.list .bytes)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(3, (.list .bytes), (some 3)), (1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.call (.function 59) [(.call (.function 7) [(.lit (.str "an axiom list cannot be empty"))] false)] false))) (Corr.mCons (Γ' := [(5, (.list .bytes), none), (4, .bytes, none), (3, (.list .bytes), (some 3)), (1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.call (.function 58) [(.move (.generated .binding 0)), (.move (.generated .binding 3))] false))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [.bytes, (.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl)) rfl rfl rfl)⟩⟩ + +theorem fun75 : FunOK program krate flags 75 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 291)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 292)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 291)), (.move (.generated .operand 292))] false) (.mk [] (.succeed (.lit (.nat 0)))) (.mk [(.mk (.bind (.generated .operand 295)) none (.call (.function 55) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 293)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 294)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 293)), (.move (.generated .operand 294))] false)))] true)), (.mk (.bind (.generated .operand 296)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 295)), (.move (.generated .operand 296))] false) (.mk [] (.succeed (.lit (.nat 1)))) (.mk [(.mk (.bind (.generated .operand 297)) none (.lit (.nat 2))), (.mk (.bind (.generated .operand 298)) none (.copy (.generated .binding 1)))] (.cond (.cond (.call (.runtime .natLe) [(.move (.generated .operand 297)), (.move (.generated .operand 298))] false) (.mk [(.mk (.bind (.generated .operand 301)) none (.call (.function 55) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 299)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 300)) none (.lit (.nat 2)))] (.call (.runtime .natSub) [(.move (.generated .operand 299)), (.move (.generated .operand 300))] false)))] true)), (.mk (.bind (.generated .operand 302)) none (.lit (.nat 2)))] (.call (.runtime .natEq) [(.move (.generated .operand 301)), (.move (.generated .operand 302))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 2)))) (.mk [(.mk (.bind (.generated .operand 303)) none (.lit (.nat 3))), (.mk (.bind (.generated .operand 304)) none (.copy (.generated .binding 1)))] (.cond (.cond (.call (.runtime .natLe) [(.move (.generated .operand 303)), (.move (.generated .operand 304))] false) (.mk [(.mk (.bind (.generated .operand 307)) none (.call (.function 55) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 305)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 306)) none (.lit (.nat 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 305)), (.move (.generated .operand 306))] false)))] true)), (.mk (.bind (.generated .operand 308)) none (.lit (.nat 3)))] (.call (.runtime .natEq) [(.move (.generated .operand 307)), (.move (.generated .operand 308))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0))))))))))), [(1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 291)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 292)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 291)), (.move (.generated .operand 292))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.lit (.nat 0)))) (lb := [(.mk (.bind (.generated .operand 295)) none (.call (.function 55) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 293)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 294)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 293)), (.move (.generated .operand 294))] false)))] true)), (.mk (.bind (.generated .operand 296)) none (.lit (.nat 1)))]) (tb := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 295)), (.move (.generated .operand 296))] false) (.mk [] (.succeed (.lit (.nat 1)))) (.mk [(.mk (.bind (.generated .operand 297)) none (.lit (.nat 2))), (.mk (.bind (.generated .operand 298)) none (.copy (.generated .binding 1)))] (.cond (.cond (.call (.runtime .natLe) [(.move (.generated .operand 297)), (.move (.generated .operand 298))] false) (.mk [(.mk (.bind (.generated .operand 301)) none (.call (.function 55) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 299)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 300)) none (.lit (.nat 2)))] (.call (.runtime .natSub) [(.move (.generated .operand 299)), (.move (.generated .operand 300))] false)))] true)), (.mk (.bind (.generated .operand 302)) none (.lit (.nat 2)))] (.call (.runtime .natEq) [(.move (.generated .operand 301)), (.move (.generated .operand 302))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 2)))) (.mk [(.mk (.bind (.generated .operand 303)) none (.lit (.nat 3))), (.mk (.bind (.generated .operand 304)) none (.copy (.generated .binding 1)))] (.cond (.cond (.call (.runtime .natLe) [(.move (.generated .operand 303)), (.move (.generated .operand 304))] false) (.mk [(.mk (.bind (.generated .operand 307)) none (.call (.function 55) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 305)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 306)) none (.lit (.nat 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 305)), (.move (.generated .operand 306))] false)))] true)), (.mk (.bind (.generated .operand 308)) none (.lit (.nat 3)))] (.call (.runtime .natEq) [(.move (.generated .operand 307)), (.move (.generated .operand 308))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))))))) (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 295)) none (.call (.function 55) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 293)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 294)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 293)), (.move (.generated .operand 294))] false)))] true)), (.mk (.bind (.generated .operand 296)) none (.lit (.nat 1)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 295)), (.move (.generated .operand 296))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 293)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 294)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 293)), (.move (.generated .operand 294))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.lit (.nat 1)))) (lb := [(.mk (.bind (.generated .operand 297)) none (.lit (.nat 2))), (.mk (.bind (.generated .operand 298)) none (.copy (.generated .binding 1)))]) (tb := (.cond (.cond (.call (.runtime .natLe) [(.move (.generated .operand 297)), (.move (.generated .operand 298))] false) (.mk [(.mk (.bind (.generated .operand 301)) none (.call (.function 55) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 299)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 300)) none (.lit (.nat 2)))] (.call (.runtime .natSub) [(.move (.generated .operand 299)), (.move (.generated .operand 300))] false)))] true)), (.mk (.bind (.generated .operand 302)) none (.lit (.nat 2)))] (.call (.runtime .natEq) [(.move (.generated .operand 301)), (.move (.generated .operand 302))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 2)))) (.mk [(.mk (.bind (.generated .operand 303)) none (.lit (.nat 3))), (.mk (.bind (.generated .operand 304)) none (.copy (.generated .binding 1)))] (.cond (.cond (.call (.runtime .natLe) [(.move (.generated .operand 303)), (.move (.generated .operand 304))] false) (.mk [(.mk (.bind (.generated .operand 307)) none (.call (.function 55) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 305)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 306)) none (.lit (.nat 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 305)), (.move (.generated .operand 306))] false)))] true)), (.mk (.bind (.generated .operand 308)) none (.lit (.nat 3)))] (.call (.runtime .natEq) [(.move (.generated .operand 307)), (.move (.generated .operand 308))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))))) (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 297)) none (.lit (.nat 2))), (.mk (.bind (.generated .operand 298)) none (.copy (.generated .binding 1)))]) (ce := (.cond (.call (.runtime .natLe) [(.move (.generated .operand 297)), (.move (.generated .operand 298))] false) (.mk [(.mk (.bind (.generated .operand 301)) none (.call (.function 55) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 299)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 300)) none (.lit (.nat 2)))] (.call (.runtime .natSub) [(.move (.generated .operand 299)), (.move (.generated .operand 300))] false)))] true)), (.mk (.bind (.generated .operand 302)) none (.lit (.nat 2)))] (.call (.runtime .natEq) [(.move (.generated .operand 301)), (.move (.generated .operand 302))] false)) (.mk [] (.lit (.bool false))))) (lk := []) (Corr.cond (lc := [(.mk (.bind (.generated .operand 297)) none (.lit (.nat 2))), (.mk (.bind (.generated .operand 298)) none (.copy (.generated .binding 1)))]) (ce := (.call (.runtime .natLe) [(.move (.generated .operand 297)), (.move (.generated .operand 298))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 301)) none (.call (.function 55) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 299)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 300)) none (.lit (.nat 2)))] (.call (.runtime .natSub) [(.move (.generated .operand 299)), (.move (.generated .operand 300))] false)))] true)), (.mk (.bind (.generated .operand 302)) none (.lit (.nat 2)))]) (ta := (.call (.runtime .natEq) [(.move (.generated .operand 301)), (.move (.generated .operand 302))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 299)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 300)) none (.lit (.nat 2)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 299)), (.move (.generated .operand 300))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.kIf (la := []) (ta := (.succeed (.lit (.nat 2)))) (lb := [(.mk (.bind (.generated .operand 303)) none (.lit (.nat 3))), (.mk (.bind (.generated .operand 304)) none (.copy (.generated .binding 1)))]) (tb := (.cond (.cond (.call (.runtime .natLe) [(.move (.generated .operand 303)), (.move (.generated .operand 304))] false) (.mk [(.mk (.bind (.generated .operand 307)) none (.call (.function 55) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 305)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 306)) none (.lit (.nat 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 305)), (.move (.generated .operand 306))] false)))] true)), (.mk (.bind (.generated .operand 308)) none (.lit (.nat 3)))] (.call (.runtime .natEq) [(.move (.generated .operand 307)), (.move (.generated .operand 308))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))) (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 303)) none (.lit (.nat 3))), (.mk (.bind (.generated .operand 304)) none (.copy (.generated .binding 1)))]) (ce := (.cond (.call (.runtime .natLe) [(.move (.generated .operand 303)), (.move (.generated .operand 304))] false) (.mk [(.mk (.bind (.generated .operand 307)) none (.call (.function 55) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 305)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 306)) none (.lit (.nat 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 305)), (.move (.generated .operand 306))] false)))] true)), (.mk (.bind (.generated .operand 308)) none (.lit (.nat 3)))] (.call (.runtime .natEq) [(.move (.generated .operand 307)), (.move (.generated .operand 308))] false)) (.mk [] (.lit (.bool false))))) (lk := []) (Corr.cond (lc := [(.mk (.bind (.generated .operand 303)) none (.lit (.nat 3))), (.mk (.bind (.generated .operand 304)) none (.copy (.generated .binding 1)))]) (ce := (.call (.runtime .natLe) [(.move (.generated .operand 303)), (.move (.generated .operand 304))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 307)) none (.call (.function 55) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 305)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 306)) none (.lit (.nat 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 305)), (.move (.generated .operand 306))] false)))] true)), (.mk (.bind (.generated .operand 308)) none (.lit (.nat 3)))]) (ta := (.call (.runtime .natEq) [(.move (.generated .operand 307)), (.move (.generated .operand 308))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 305)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 306)) none (.lit (.nat 3)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 305)), (.move (.generated .operand 306))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.kIf (la := []) (ta := (.succeed (.lit (.nat 3)))) (lb := []) (tb := (.succeed (.lit (.nat 0)))) (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl))) (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl)))))))))))⟩⟩ + +theorem fun76 : FunOK program krate flags 76 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 309)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 309))] false)))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 310)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 310))] false)))), (.mk (.bind (.generated .binding 4)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 311)), .wild]) none (.call (.function 38) [(.construct (.closure 7 86) [(.clone (.generated .binding 1)), (.copy (.generated .binding 3)), (.clone (.generated .binding 0)), (.copy (.generated .binding 2))]), (.block (.mk [(.mk (.bind (.generated .operand 312)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 313)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 312)), (.move (.generated .operand 313))] true))), (.lit (.nat 0))] true))] (.move (.generated .part 311)))))], (.cond (.call (.function 82) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 4))] false) (.mk [] (.succeed (.construct .some [(.copy (.generated .binding 4))]))) (.mk [] (.succeed (.construct (.none .nat) [])))), [(1, .bytes, (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 309)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 309))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 310)) none (.clone (.generated .binding 1)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 310))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 311)), .wild]) none (.call (.function 38) [(.construct (.closure 7 86) [(.clone (.generated .binding 1)), (.copy (.generated .binding 3)), (.clone (.generated .binding 0)), (.copy (.generated .binding 2))]), (.block (.mk [(.mk (.bind (.generated .operand 312)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 313)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 312)), (.move (.generated .operand 313))] true))), (.lit (.nat 0))] true))]) (tail := (.move (.generated .part 311))) (Corr.first (ta := .nat) (tb := .bool) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [.nat] (.option .nat)), .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [.bytes, .nat, .bytes, .nat]) (mask := [false, false, false, false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 312)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 313)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 312)), (.move (.generated .operand 313))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl)) rfl (Corr.cond (lc := []) (ce := (.call (.function 82) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 4))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.copy (.generated .binding 4))]))) (lb := []) (tb := (.succeed (.construct (.none .nat) []))) (Corr.fOfB (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))))))⟩⟩ + +theorem fun77 : FunOK program krate flags 77 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 314)) none (.call (.function 49) [(.move (.generated .binding 0)), (.call (.function 7) [(.lit (.str " "))] false)] false))], (.matchOn (.move (.generated .holder 314)) [(.mk .none (.mk [] (.construct (.none .bytes) []))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.call (.function 49) [(.move (.generated .binding 1)), (.call (.function 7) [(.lit (.str "info: "))] false)] false)))]), [(0, .bytes, (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct (.none .bytes) [])) (Corr.mCons (Γ' := [(1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.call (.function 49) [(.move (.generated .binding 1)), (.call (.function 7) [(.lit (.str "info: "))] false)] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun78 : FunOK program krate flags 78 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some .bytes) (.block (.mk [(.mk (.bind (.generated .holder 315)) none (.call (.function 49) [(.clone (.generated .binding 0)), (.call (.function 7) [(.lit (.str "+"))] false)] false))] (.matchOn (.move (.generated .holder 315)) [(.mk .none (.mk [] (.move (.generated .binding 0)))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.move (.generated .binding 1))))])))), (.mk (.bind (.generated .binding 3)) (some .bool) (.call (.function 87) [(.call (.function 20) [(.clone (.generated .binding 2))] true)] false)), (.mk (.bind (.generated .operand 317)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 318)) none (.block (.mk [(.mk (.bind (.generated .operand 316)) none (.clone (.generated .binding 2)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 316))] false))))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 317)), (.move (.generated .operand 318))] false) (.mk [] (.cond (.call (.function 88) [(.move (.generated .binding 2))] true) (.mk [] (.succeed (.copy (.generated .binding 3)))) (.mk [] (.succeed (.lit (.bool false)))))) (.mk [] (.succeed (.lit (.bool false))))), [(0, .bytes, (some 0))], rfl, rfl, + (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 315)) none (.call (.function 49) [(.clone (.generated .binding 0)), (.call (.function 7) [(.lit (.str "+"))] false)] false))]) (tail := (.matchOn (.move (.generated .holder 315)) [(.mk .none (.mk [] (.move (.generated .binding 0)))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.move (.generated .binding 1))))])) (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.move (.generated .binding 0))) (Corr.mCons (Γ' := [(1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 1))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := [(.mk (.bind (.generated .operand 317)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 318)) none (.block (.mk [(.mk (.bind (.generated .operand 316)) none (.clone (.generated .binding 2)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 316))] false))))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 317)), (.move (.generated .operand 318))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 316)) none (.clone (.generated .binding 2)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 316))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 88) [(.move (.generated .binding 2))] true) (.mk [] (.succeed (.copy (.generated .binding 3)))) (.mk [] (.succeed (.lit (.bool false)))))) (lb := []) (tb := (.succeed (.lit (.bool false)))) (Corr.cond (lc := []) (ce := (.call (.function 88) [(.move (.generated .binding 2))] true)) (lk := []) (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.copy (.generated .binding 3)))) (lb := []) (tb := (.succeed (.lit (.bool false)))) (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl))) (Corr.fOfB (Corr.bOfE (Corr.buildConst rfl))))) (Corr.fOfB (Corr.bOfE (Corr.buildConst rfl)))))))⟩⟩ + +theorem fun79 : FunOK program krate flags 79 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 321)) none (.block (.mk [(.mk (.bind (.generated .operand 319)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 320)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedSub .u8)) [(.move (.generated .operand 319)), (.move (.generated .operand 320))] false))))], (.matchOn (.move (.generated .holder 321)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some .wild) (.mk [(.mk (.bind (.generated .holder 324)) none (.block (.mk [(.mk (.bind (.generated .operand 322)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 323)) none (.copy (.generated .binding 0)))] (.call (.runtime (.checkedSub .u8)) [(.move (.generated .operand 322)), (.move (.generated .operand 323))] false))))] (.matchOn (.move (.generated .holder 324)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some .wild) (.mk [] (.lit (.bool true))))])))]), [(2, (.fixed .u8), (some 2)), (1, (.fixed .u8), (some 1)), (0, (.fixed .u8), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option (.fixed .u8))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 319)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 320)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.checkedSub .u8)) [(.move (.generated .operand 319)), (.move (.generated .operand 320))] false)) (Corr.prim (ts := [(.fixed .u8), (.fixed .u8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(2, (.fixed .u8), (some 2)), (1, (.fixed .u8), (some 1)), (0, (.fixed .u8), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(3, (.fixed .u8), none), (2, (.fixed .u8), (some 2)), (1, (.fixed .u8), (some 1)), (0, (.fixed .u8), (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .holder 324)) none (.block (.mk [(.mk (.bind (.generated .operand 322)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 323)) none (.copy (.generated .binding 0)))] (.call (.runtime (.checkedSub .u8)) [(.move (.generated .operand 322)), (.move (.generated .operand 323))] false))))]) (tail := (.matchOn (.move (.generated .holder 324)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some .wild) (.mk [] (.lit (.bool true))))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := (.option (.fixed .u8))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 322)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 323)) none (.copy (.generated .binding 0)))]) (tail := (.call (.runtime (.checkedSub .u8)) [(.move (.generated .operand 322)), (.move (.generated .operand 323))] false)) (Corr.prim (ts := [(.fixed .u8), (.fixed .u8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.fixed .u8), none), (2, (.fixed .u8), (some 2)), (1, (.fixed .u8), (some 1)), (0, (.fixed .u8), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, (.fixed .u8), none), (3, (.fixed .u8), none), (2, (.fixed .u8), (some 2)), (1, (.fixed .u8), (some 1)), (0, (.fixed .u8), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ + +theorem fun80 : FunOK program krate flags 80 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 326)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 325))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 325))))), (.mk (.bind (.generated .operand 327)) none (.lit (.nat 2)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 326)), (.move (.generated .operand 327))] false) (.mk [] (.succeed (.construct (.none (.pair .nat .nat)) []))) (.mk [(.mk (.bind (.generated .holder 329)) none (.call (.function 51) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 328)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 328))))] false))] (.matchOn (.move (.generated .holder 329)) [(.mk .none (.mk [] (.succeed (.construct (.none (.pair .nat .nat)) [])))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 331)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 330)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 330))))), (.mk (.bind (.generated .operand 332)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 331)), (.move (.generated .operand 332))] true))) (.call (.function 89) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 333))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 333)))), (.copy (.generated .binding 2))] false))]))))]))), [(1, (.pair .nat .nat), (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 326)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 325))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 325))))), (.mk (.bind (.generated .operand 327)) none (.lit (.nat 2)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 326)), (.move (.generated .operand 327))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 325))]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 325))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct (.none (.pair .nat .nat)) []))) (lb := [(.mk (.bind (.generated .holder 329)) none (.call (.function 51) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 328)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 328))))] false))]) (tb := (.matchOn (.move (.generated .holder 329)) [(.mk .none (.mk [] (.succeed (.construct (.none (.pair .nat .nat)) [])))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 331)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 330)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 330))))), (.mk (.bind (.generated .operand 332)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 331)), (.move (.generated .operand 332))] true))) (.call (.function 89) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 333))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 333)))), (.copy (.generated .binding 2))] false))]))))])) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.matchArms (st := (.option (.fixed .u8))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 328)), .wild]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 328))) (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.pair .nat .nat), (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.construct (.none (.pair .nat .nat)) []))) (Corr.mCons (Γ' := [(2, (.fixed .u8), (some 2)), (1, (.pair .nat .nat), (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 331)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 330)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 330))))), (.mk (.bind (.generated .operand 332)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 331)), (.move (.generated .operand 332))] true))) (.call (.function 89) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 333))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 333)))), (.copy (.generated .binding 2))] false))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.pair .nat .nat)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 331)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 330)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 330))))), (.mk (.bind (.generated .operand 332)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 331)), (.move (.generated .operand 332))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 330)), .wild]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 330))) (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 333))]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 333))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl)))⟩⟩ + +theorem fun81 : FunOK program krate flags 81 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 90) [(.move (.generated .binding 1)), (.move (.generated .binding 0)), (.copy (.generated .binding 2))] false), [(2, .nat, (some 2)), (1, .bytes, (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.callOps (ts := [.bytes, .bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun82 : FunOK program krate flags 82 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 338)) none (.block (.mk [(.mk (.bind (.generated .operand 335)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 336)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 337)) none (.block (.mk [(.mk (.bind (.generated .operand 334)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 334))] false))))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 335)), (.move (.generated .operand 336)), (.move (.generated .operand 337))] false))))], (.matchOn (.move (.generated .holder 338)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.bind (.generated .binding 3))) (.mk [(.mk (.bind (.generated .operand 339)) none (.move (.generated .binding 3))), (.mk (.bind (.generated .operand 340)) none (.move (.generated .binding 1)))] (.call (.runtime .equal) [(.move (.generated .operand 339)), (.move (.generated .operand 340))] false)))]), [(2, .nat, (some 2)), (1, .bytes, (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 335)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 336)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 337)) none (.block (.mk [(.mk (.bind (.generated .operand 334)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 334))] false))))]) (tail := (.call (.runtime .sliceBytes) [(.move (.generated .operand 335)), (.move (.generated .operand 336)), (.move (.generated .operand 337))] false)) (Corr.prim (ts := [.bytes, .nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 334)) none (.clone (.generated .binding 1)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 334))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(3, .bytes, (some 3)), (2, .nat, (some 2)), (1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .operand 339)) none (.move (.generated .binding 3))), (.mk (.bind (.generated .operand 340)) none (.move (.generated .binding 1)))]) (tail := (.call (.runtime .equal) [(.move (.generated .operand 339)), (.move (.generated .operand 340))] false)) (Corr.mNil) rfl rfl rfl (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ + +theorem fun83 : FunOK program krate flags 83 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 341)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 341)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 83) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 342)) (some (.fn 9)) (.move (.generated .binding 0)))] (.apply (.generated .callee 342) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]), [(2, (.list .bytes), (some 2)), (1, (.result (.list .bytes) .bytes), (some 1)), (0, (.fn [(.result (.list .bytes) .bytes), .bytes] (.result (.list .bytes) .bytes)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .bytes)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .bytes), (some 2)), (1, (.result (.list .bytes) .bytes), (some 1)), (0, (.fn [(.result (.list .bytes) .bytes), .bytes] (.result (.list .bytes) .bytes)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list .bytes), (some 4)), (3, .bytes, (some 3)), (2, (.list .bytes), (some 2)), (1, (.result (.list .bytes) .bytes), (some 1)), (0, (.fn [(.result (.list .bytes) .bytes), .bytes] (.result (.list .bytes) .bytes)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 83) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 342)) (some (.fn 9)) (.move (.generated .binding 0)))] (.apply (.generated .callee 342) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.result (.list .bytes) .bytes), .bytes] (.result (.list .bytes) .bytes)), (.result (.list .bytes) .bytes), (.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 342)) (some (.fn 9)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 342) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true)) (Corr.apply (ps := [(.result (.list .bytes) .bytes), .bytes]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ + +theorem fun84 : FunOK program krate flags 84 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 91) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false), [(1, .bytes, (some 1)), (0, (.result (.list .bytes) .bytes), (some 0))], rfl, rfl, + (Corr.callF (ts := [(.result (.list .bytes) .bytes), .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)⟩⟩ + +theorem fun85 : FunOK program krate flags 85 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 343)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 343))] false)))), (.mk (.bind (.generated .binding 3)) (some (.pair .nat (.pair .nat (.list .bytes)))) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 344)), .wild]) none (.call (.function 15) [(.construct (.closure 2 92) [(.copy (.generated .binding 1)), (.clone (.generated .binding 0))]), (.copy (.generated .binding 2)), (.pair (.lit (.nat 0)) (.pair (.lit (.nat 0)) (.construct (.nil .bytes) [])))] true))] (.move (.generated .part 344))))), (.mk (.bind (.generated .binding 4)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 345)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 346))]) none (.clone (.generated .binding 3)))] (.move (.generated .part 346)))))] (.move (.generated .part 345)))))], (.succeed (.call (.function 17) [(.construct .cons [(.call (.function 18) [(.move (.generated .binding 0)), (.copy (.generated .binding 4)), (.block (.mk [(.mk (.bind (.generated .operand 347)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 348)) none (.copy (.generated .binding 4)))] (.call (.runtime .natSub) [(.move (.generated .operand 347)), (.move (.generated .operand 348))] false)))] false), (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 349))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 350))]) none (.move (.generated .binding 3)))] (.move (.generated .part 350)))))] (.move (.generated .part 349))))])] false)), [(1, (.fixed .u8), (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 343)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 343))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 344)), .wild]) none (.call (.function 15) [(.construct (.closure 2 92) [(.copy (.generated .binding 1)), (.clone (.generated .binding 0))]), (.copy (.generated .binding 2)), (.pair (.lit (.nat 0)) (.pair (.lit (.nat 0)) (.construct (.nil .bytes) [])))] true))]) (tail := (.move (.generated .part 344))) (Corr.first (ta := (.pair .nat (.pair .nat (.list .bytes)))) (tb := .bool) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes))))), .nat, (.pair .nat (.pair .nat (.list .bytes)))]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [(.fixed .u8), .bytes]) (mask := [false, false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 345)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 346))]) none (.clone (.generated .binding 3)))] (.move (.generated .part 346)))))]) (tail := (.move (.generated .part 345))) (Corr.first (ta := .nat) (tb := (.list .bytes)) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 346))]) none (.clone (.generated .binding 3)))]) (tail := (.move (.generated .part 346))) (Corr.second (ta := .nat) (tb := (.pair .nat (.list .bytes))) (Corr.var rfl rfl) rfl)) rfl)) rfl (Corr.fOfB (Corr.callOps (ts := [(.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.bytes, (.list .bytes)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 347)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 348)) none (.copy (.generated .binding 4)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 347)), (.move (.generated .operand 348))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 349))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 350))]) none (.move (.generated .binding 3)))] (.move (.generated .part 350)))))]) (tail := (.move (.generated .part 349))) (Corr.second (ta := .nat) (tb := (.list .bytes)) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 350))]) none (.move (.generated .binding 3)))]) (tail := (.move (.generated .part 350))) (Corr.second (ta := .nat) (tb := (.pair .nat (.list .bytes))) (Corr.var rfl rfl) rfl)) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)))))⟩⟩ + +theorem fun86 : FunOK program krate flags 86 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 82) [(.move (.generated .binding 2)), (.move (.generated .binding 0)), (.copy (.generated .binding 4))] false) (.mk [] (.succeed (.construct (.none .nat) []))) (.mk [(.mk (.bind (.generated .operand 353)) none (.block (.mk [(.mk (.bind (.generated .operand 351)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 352)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 351)), (.move (.generated .operand 352))] true)))), (.mk (.bind (.generated .operand 354)) none (.copy (.generated .binding 3)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 353)), (.move (.generated .operand 354))] false) (.mk [] (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 355)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 356)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 355)), (.move (.generated .operand 356))] true)))]))) (.mk [] (.succeed (.construct (.none .nat) [])))))), [(4, .nat, (some 4)), (3, .nat, (some 3)), (2, .bytes, (some 2)), (1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 82) [(.move (.generated .binding 2)), (.move (.generated .binding 0)), (.copy (.generated .binding 4))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct (.none .nat) []))) (lb := [(.mk (.bind (.generated .operand 353)) none (.block (.mk [(.mk (.bind (.generated .operand 351)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 352)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 351)), (.move (.generated .operand 352))] true)))), (.mk (.bind (.generated .operand 354)) none (.copy (.generated .binding 3)))]) (tb := (.cond (.call (.runtime .natLt) [(.move (.generated .operand 353)), (.move (.generated .operand 354))] false) (.mk [] (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 355)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 356)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 355)), (.move (.generated .operand 356))] true)))]))) (.mk [] (.succeed (.construct (.none .nat) []))))) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.cond (lc := [(.mk (.bind (.generated .operand 353)) none (.block (.mk [(.mk (.bind (.generated .operand 351)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 352)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 351)), (.move (.generated .operand 352))] true)))), (.mk (.bind (.generated .operand 354)) none (.copy (.generated .binding 3)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 353)), (.move (.generated .operand 354))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 351)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 352)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 351)), (.move (.generated .operand 352))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 355)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 356)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 355)), (.move (.generated .operand 356))] true)))]))) (lb := []) (tb := (.succeed (.construct (.none .nat) []))) (Corr.fOfB (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 355)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 356)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 355)), (.move (.generated .operand 356))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))))⟩⟩ + +theorem fun87 : FunOK program krate flags 87 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 358)) none (.block (.mk [(.mk (.bind (.generated .operand 357)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 357))] false)))), (.mk (.bind (.generated .operand 359)) none (.lit (.nat 20)))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 358)), (.move (.generated .operand 359))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 361)) none (.block (.mk [(.mk (.bind (.generated .operand 360)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 360))] false)))), (.mk (.bind (.generated .operand 362)) none (.lit (.nat 20)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 361)), (.move (.generated .operand 362))] false) (.mk [(.mk (.bind (.generated .operand 369)) none (.block (.mk [(.mk (.bind (.generated .operand 367)) none (.block (.mk [(.mk (.bind (.generated .operand 363)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 364)) none (.call (.function 7) [(.lit (.str "18446744073709551615"))] false))] (.call (.runtime .compareBytes) [(.move (.generated .operand 363)), (.move (.generated .operand 364))] false)))), (.mk (.bind (.generated .operand 368)) none (.block (.mk [(.mk (.bind (.generated .operand 365)) none (.lit (.bytes (ByteArray.mk #[1])))), (.mk (.bind (.generated .operand 366)) none (.lit (.bytes (ByteArray.mk #[0]))))] (.call (.runtime .compareBytes) [(.move (.generated .operand 365)), (.move (.generated .operand 366))] false))))] (.call (.runtime .equal) [(.move (.generated .operand 367)), (.move (.generated .operand 368))] false))))] (.call (.runtime .boolNot) [(.move (.generated .operand 369))] false)) (.mk [] (.lit (.bool false)))))), [(0, .bytes, (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 358)) none (.block (.mk [(.mk (.bind (.generated .operand 357)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 357))] false)))), (.mk (.bind (.generated .operand 359)) none (.lit (.nat 20)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 358)), (.move (.generated .operand 359))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 357)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 357))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 361)) none (.block (.mk [(.mk (.bind (.generated .operand 360)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 360))] false)))), (.mk (.bind (.generated .operand 362)) none (.lit (.nat 20)))]) (tb := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 361)), (.move (.generated .operand 362))] false) (.mk [(.mk (.bind (.generated .operand 369)) none (.block (.mk [(.mk (.bind (.generated .operand 367)) none (.block (.mk [(.mk (.bind (.generated .operand 363)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 364)) none (.call (.function 7) [(.lit (.str "18446744073709551615"))] false))] (.call (.runtime .compareBytes) [(.move (.generated .operand 363)), (.move (.generated .operand 364))] false)))), (.mk (.bind (.generated .operand 368)) none (.block (.mk [(.mk (.bind (.generated .operand 365)) none (.lit (.bytes (ByteArray.mk #[1])))), (.mk (.bind (.generated .operand 366)) none (.lit (.bytes (ByteArray.mk #[0]))))] (.call (.runtime .compareBytes) [(.move (.generated .operand 365)), (.move (.generated .operand 366))] false))))] (.call (.runtime .equal) [(.move (.generated .operand 367)), (.move (.generated .operand 368))] false))))] (.call (.runtime .boolNot) [(.move (.generated .operand 369))] false)) (.mk [] (.lit (.bool false))))) (Corr.bOfE (Corr.buildConst rfl)) (Corr.cond (lc := [(.mk (.bind (.generated .operand 361)) none (.block (.mk [(.mk (.bind (.generated .operand 360)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 360))] false)))), (.mk (.bind (.generated .operand 362)) none (.lit (.nat 20)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 361)), (.move (.generated .operand 362))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 360)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 360))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 369)) none (.block (.mk [(.mk (.bind (.generated .operand 367)) none (.block (.mk [(.mk (.bind (.generated .operand 363)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 364)) none (.call (.function 7) [(.lit (.str "18446744073709551615"))] false))] (.call (.runtime .compareBytes) [(.move (.generated .operand 363)), (.move (.generated .operand 364))] false)))), (.mk (.bind (.generated .operand 368)) none (.block (.mk [(.mk (.bind (.generated .operand 365)) none (.lit (.bytes (ByteArray.mk #[1])))), (.mk (.bind (.generated .operand 366)) none (.lit (.bytes (ByteArray.mk #[0]))))] (.call (.runtime .compareBytes) [(.move (.generated .operand 365)), (.move (.generated .operand 366))] false))))] (.call (.runtime .equal) [(.move (.generated .operand 367)), (.move (.generated .operand 368))] false))))]) (ta := (.call (.runtime .boolNot) [(.move (.generated .operand 369))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.bool]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 367)) none (.block (.mk [(.mk (.bind (.generated .operand 363)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 364)) none (.call (.function 7) [(.lit (.str "18446744073709551615"))] false))] (.call (.runtime .compareBytes) [(.move (.generated .operand 363)), (.move (.generated .operand 364))] false)))), (.mk (.bind (.generated .operand 368)) none (.block (.mk [(.mk (.bind (.generated .operand 365)) none (.lit (.bytes (ByteArray.mk #[1])))), (.mk (.bind (.generated .operand 366)) none (.lit (.bytes (ByteArray.mk #[0]))))] (.call (.runtime .compareBytes) [(.move (.generated .operand 365)), (.move (.generated .operand 366))] false))))]) (tail := (.call (.runtime .equal) [(.move (.generated .operand 367)), (.move (.generated .operand 368))] false)) (Corr.prim (ts := [.ordering, .ordering]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 363)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 364)) none (.call (.function 7) [(.lit (.str "18446744073709551615"))] false))]) (tail := (.call (.runtime .compareBytes) [(.move (.generated .operand 363)), (.move (.generated .operand 364))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 365)) none (.lit (.bytes (ByteArray.mk #[1])))), (.mk (.bind (.generated .operand 366)) none (.lit (.bytes (ByteArray.mk #[0]))))]) (tail := (.call (.runtime .compareBytes) [(.move (.generated .operand 365)), (.move (.generated .operand 366))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))))⟩⟩ + +theorem fun88 : FunOK program krate flags 88 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 373)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 370)), .wild]) none (.call (.function 38) [(.construct (.closure 7 93) [(.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 371)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 371))] false))), (.lit (.nat 0))] true))] (.move (.generated .part 370))))), (.mk (.bind (.generated .operand 374)) none (.block (.mk [(.mk (.bind (.generated .operand 372)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 372))] false))))], (.succeed (.call (.runtime .natEq) [(.move (.generated .operand 373)), (.move (.generated .operand 374))] false)), [(0, .bytes, (some 0))], rfl, rfl, + (Corr.fOfB (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 370)), .wild]) none (.call (.function 38) [(.construct (.closure 7 93) [(.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 371)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 371))] false))), (.lit (.nat 0))] true))]) (tail := (.move (.generated .part 370))) (Corr.first (ta := .nat) (tb := .bool) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [.nat] (.option .nat)), .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [.bytes]) (mask := [false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 371)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 371))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 372)) none (.move (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 372))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl))⟩⟩ + +theorem fun89 : FunOK program krate flags 89 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 375)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 376)) none (.lit (.nat 2)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 375)), (.move (.generated .operand 376))] false) (.mk [] (.lit (.nat 2))) (.mk [(.mk (.bind (.generated .operand 377)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 378)) none (.lit (.fixed .u8 46)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 377)), (.move (.generated .operand 378))] false) (.mk [(.mk (.bind (.generated .operand 379)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 380)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 379)), (.move (.generated .operand 380))] false) (.mk [] (.lit (.nat 0))) (.mk [] (.lit (.nat 2))))) (.mk [] (.cond (.call (.function 94) [(.copy (.generated .binding 1))] false) (.mk [] (.lit (.nat 1))) (.mk [(.mk (.bind (.generated .operand 381)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 382)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 381)), (.move (.generated .operand 382))] false) (.mk [] (.cond (.call (.function 95) [(.copy (.generated .binding 1))] false) (.mk [] (.lit (.nat 1))) (.mk [] (.lit (.nat 2))))) (.mk [] (.lit (.nat 2)))))))))), [(1, (.fixed .u8), (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 375)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 376)) none (.lit (.nat 2)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 375)), (.move (.generated .operand 376))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.nat 2))) (lb := [(.mk (.bind (.generated .operand 377)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 378)) none (.lit (.fixed .u8 46)))]) (tb := (.cond (.call (.runtime .equal) [(.move (.generated .operand 377)), (.move (.generated .operand 378))] false) (.mk [(.mk (.bind (.generated .operand 379)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 380)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 379)), (.move (.generated .operand 380))] false) (.mk [] (.lit (.nat 0))) (.mk [] (.lit (.nat 2))))) (.mk [] (.cond (.call (.function 94) [(.copy (.generated .binding 1))] false) (.mk [] (.lit (.nat 1))) (.mk [(.mk (.bind (.generated .operand 381)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 382)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 381)), (.move (.generated .operand 382))] false) (.mk [] (.cond (.call (.function 95) [(.copy (.generated .binding 1))] false) (.mk [] (.lit (.nat 1))) (.mk [] (.lit (.nat 2))))) (.mk [] (.lit (.nat 2))))))))) (Corr.bOfE (Corr.value rfl rfl)) (Corr.cond (lc := [(.mk (.bind (.generated .operand 377)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 378)) none (.lit (.fixed .u8 46)))]) (ce := (.call (.runtime .equal) [(.move (.generated .operand 377)), (.move (.generated .operand 378))] false)) (lk := []) (Corr.prim (ts := [(.fixed .u8), (.fixed .u8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 379)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 380)) none (.lit (.nat 1)))]) (ta := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 379)), (.move (.generated .operand 380))] false) (.mk [] (.lit (.nat 0))) (.mk [] (.lit (.nat 2))))) (lb := []) (tb := (.cond (.call (.function 94) [(.copy (.generated .binding 1))] false) (.mk [] (.lit (.nat 1))) (.mk [(.mk (.bind (.generated .operand 381)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 382)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 381)), (.move (.generated .operand 382))] false) (.mk [] (.cond (.call (.function 95) [(.copy (.generated .binding 1))] false) (.mk [] (.lit (.nat 1))) (.mk [] (.lit (.nat 2))))) (.mk [] (.lit (.nat 2))))))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 379)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 380)) none (.lit (.nat 1)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 379)), (.move (.generated .operand 380))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.nat 0))) (lb := []) (tb := (.lit (.nat 2))) (Corr.bOfE (Corr.value rfl rfl)) (Corr.bOfE (Corr.value rfl rfl)))) (Corr.cond (lc := []) (ce := (.call (.function 94) [(.copy (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [(.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.nat 1))) (lb := [(.mk (.bind (.generated .operand 381)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 382)) none (.lit (.nat 1)))]) (tb := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 381)), (.move (.generated .operand 382))] false) (.mk [] (.cond (.call (.function 95) [(.copy (.generated .binding 1))] false) (.mk [] (.lit (.nat 1))) (.mk [] (.lit (.nat 2))))) (.mk [] (.lit (.nat 2))))) (Corr.bOfE (Corr.value rfl rfl)) (Corr.cond (lc := [(.mk (.bind (.generated .operand 381)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 382)) none (.lit (.nat 1)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 381)), (.move (.generated .operand 382))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 95) [(.copy (.generated .binding 1))] false) (.mk [] (.lit (.nat 1))) (.mk [] (.lit (.nat 2))))) (lb := []) (tb := (.lit (.nat 2))) (Corr.cond (lc := []) (ce := (.call (.function 95) [(.copy (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [(.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.nat 1))) (lb := []) (tb := (.lit (.nat 2))) (Corr.bOfE (Corr.value rfl rfl)) (Corr.bOfE (Corr.value rfl rfl)))) (Corr.bOfE (Corr.value rfl rfl))))))))))⟩⟩ + +theorem fun90 : FunOK program krate flags 90 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 82) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 2))] false) (.mk [] (.construct (.none .nat) [])) (.mk [(.mk (.bind (.generated .operand 383)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 384)) none (.copy (.generated .binding 2)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 383)), (.move (.generated .operand 384))] false) (.mk [] (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 385)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 386)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 385)), (.move (.generated .operand 386))] false)))])) (.mk [] (.construct (.none .nat) []))))), [(2, .nat, (some 2)), (1, .bytes, (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 82) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 2))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct (.none .nat) [])) (lb := [(.mk (.bind (.generated .operand 383)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 384)) none (.copy (.generated .binding 2)))]) (tb := (.cond (.call (.runtime .natLt) [(.move (.generated .operand 383)), (.move (.generated .operand 384))] false) (.mk [] (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 385)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 386)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 385)), (.move (.generated .operand 386))] false)))])) (.mk [] (.construct (.none .nat) [])))) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl) (Corr.cond (lc := [(.mk (.bind (.generated .operand 383)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 384)) none (.copy (.generated .binding 2)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 383)), (.move (.generated .operand 384))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 385)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 386)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 385)), (.move (.generated .operand 386))] false)))])) (lb := []) (tb := (.construct (.none .nat) [])) (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 385)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 386)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 385)), (.move (.generated .operand 386))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))))⟩⟩ + +theorem fun91 : FunOK program krate flags 91 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 387)) none (.clone (.generated .binding 0)))], (.matchOn (.move (.generated .holder 387)) [(.mk (.ok (.bind (.generated .binding 3))) (.mk [(.mk (.bind (.generated .binding 4)) (some .bytes) (.call (.function 32) [(.move (.generated .binding 1))] true))] (.cond (.call (.function 61) [(.clone (.generated .binding 4))] true) (.mk [(.mk (.bind (.generated .holder 388)) none (.call (.function 96) [(.clone (.generated .binding 4)), (.move (.generated .binding 3))] false))] (.matchOn (.move (.generated .holder 388)) [(.mk .none (.mk [] (.succeed (.construct (.err (.list .bytes) .bytes) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "duplicate axiom name "))] false), (.call (.function 40) [(.move (.generated .binding 4))] false)] false)])))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.succeed (.construct (.ok (.list .bytes) .bytes) [(.move (.generated .binding 5))]))))])) (.mk [] (.succeed (.construct (.err (.list .bytes) .bytes) [(.call (.function 60) [(.move (.generated .binding 4))] false)])))))), (.mk (.err .wild) (.mk [] (.succeed (.move (.generated .binding 0)))))]), [(1, .bytes, (some 1)), (0, (.result (.list .bytes) .bytes), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.result (.list .bytes) .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(3, (.list .bytes), (some 3)), (1, .bytes, (some 1)), (0, (.result (.list .bytes) .bytes), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .binding 4)) (some .bytes) (.call (.function 32) [(.move (.generated .binding 1))] true))]) (tail := (.cond (.call (.function 61) [(.clone (.generated .binding 4))] true) (.mk [(.mk (.bind (.generated .holder 388)) none (.call (.function 96) [(.clone (.generated .binding 4)), (.move (.generated .binding 3))] false))] (.matchOn (.move (.generated .holder 388)) [(.mk .none (.mk [] (.succeed (.construct (.err (.list .bytes) .bytes) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "duplicate axiom name "))] false), (.call (.function 40) [(.move (.generated .binding 4))] false)] false)])))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.succeed (.construct (.ok (.list .bytes) .bytes) [(.move (.generated .binding 5))]))))])) (.mk [] (.succeed (.construct (.err (.list .bytes) .bytes) [(.call (.function 60) [(.move (.generated .binding 4))] false)]))))) (Corr.mCons (Γ' := [(2, .bytes, none), (1, .bytes, (some 1)), (0, (.result (.list .bytes) .bytes), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 0)))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := []) (ce := (.call (.function 61) [(.clone (.generated .binding 4))] true)) (lk := []) (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .holder 388)) none (.call (.function 96) [(.clone (.generated .binding 4)), (.move (.generated .binding 3))] false))]) (ta := (.matchOn (.move (.generated .holder 388)) [(.mk .none (.mk [] (.succeed (.construct (.err (.list .bytes) .bytes) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "duplicate axiom name "))] false), (.call (.function 40) [(.move (.generated .binding 4))] false)] false)])))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.succeed (.construct (.ok (.list .bytes) .bytes) [(.move (.generated .binding 5))]))))])) (lb := []) (tb := (.succeed (.construct (.err (.list .bytes) .bytes) [(.call (.function 60) [(.move (.generated .binding 4))] false)]))) (Corr.matchArms (st := (.option (.list .bytes))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, (.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, .bytes, (some 4)), (3, (.list .bytes), (some 3)), (1, .bytes, (some 1)), (0, (.result (.list .bytes) .bytes), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.construct (.err (.list .bytes) .bytes) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "duplicate axiom name "))] false), (.call (.function 40) [(.move (.generated .binding 4))] false)] false)]))) (Corr.mCons (Γ' := [(5, (.list .bytes), (some 5)), (4, .bytes, (some 4)), (3, (.list .bytes), (some 3)), (1, .bytes, (some 1)), (0, (.result (.list .bytes) .bytes), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct (.ok (.list .bytes) .bytes) [(.move (.generated .binding 5))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.list .bytes)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [.bytes]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl))) rfl rfl rfl) (Corr.fOfB (Corr.build (ts := [.bytes]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)))))) rfl rfl rfl)⟩⟩ + +theorem fun92 : FunOK program krate flags 92 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 97) [(.move (.generated .binding 1)), (.copy (.generated .binding 0)), (.move (.generated .binding 2))] false), [(2, (.pair .nat (.pair .nat (.list .bytes))), (some 2)), (1, .bytes, (some 1)), (0, (.fixed .u8), (some 0))], rfl, rfl, + (Corr.callF (ts := [.bytes, (.fixed .u8), (.pair .nat (.pair .nat (.list .bytes)))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)⟩⟩ + +theorem fun93 : FunOK program krate flags 93 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 98) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false), [(1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.callF (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)⟩⟩ + +theorem fun94 : FunOK program krate flags 94 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 79) [(.copy (.generated .binding 0)), (.lit (.fixed .u8 65)), (.lit (.fixed .u8 90))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 79) [(.copy (.generated .binding 0)), (.lit (.fixed .u8 97)), (.lit (.fixed .u8 122))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 389)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 390)) none (.lit (.fixed .u8 95)))] (.call (.runtime .equal) [(.move (.generated .operand 389)), (.move (.generated .operand 390))] false))))), [(0, (.fixed .u8), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 79) [(.copy (.generated .binding 0)), (.lit (.fixed .u8 65)), (.lit (.fixed .u8 90))] false)) (lk := []) (Corr.callOps (ts := [(.fixed .u8), (.fixed .u8), (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := []) (tb := (.cond (.call (.function 79) [(.copy (.generated .binding 0)), (.lit (.fixed .u8 97)), (.lit (.fixed .u8 122))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 389)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 390)) none (.lit (.fixed .u8 95)))] (.call (.runtime .equal) [(.move (.generated .operand 389)), (.move (.generated .operand 390))] false)))) (Corr.bOfE (Corr.buildConst rfl)) (Corr.cond (lc := []) (ce := (.call (.function 79) [(.copy (.generated .binding 0)), (.lit (.fixed .u8 97)), (.lit (.fixed .u8 122))] false)) (lk := []) (Corr.callOps (ts := [(.fixed .u8), (.fixed .u8), (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 389)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 390)) none (.lit (.fixed .u8 95)))]) (tb := (.call (.runtime .equal) [(.move (.generated .operand 389)), (.move (.generated .operand 390))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.prim (ts := [(.fixed .u8), (.fixed .u8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)))))⟩⟩ + +theorem fun95 : FunOK program krate flags 95 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 94) [(.copy (.generated .binding 0))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 79) [(.copy (.generated .binding 0)), (.lit (.fixed .u8 48)), (.lit (.fixed .u8 57))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 391)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 392)) none (.lit (.fixed .u8 63)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 391)), (.move (.generated .operand 392))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 393)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 394)) none (.lit (.fixed .u8 39)))] (.call (.runtime .equal) [(.move (.generated .operand 393)), (.move (.generated .operand 394))] false))))))), [(0, (.fixed .u8), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 94) [(.copy (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := []) (tb := (.cond (.call (.function 79) [(.copy (.generated .binding 0)), (.lit (.fixed .u8 48)), (.lit (.fixed .u8 57))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 391)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 392)) none (.lit (.fixed .u8 63)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 391)), (.move (.generated .operand 392))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 393)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 394)) none (.lit (.fixed .u8 39)))] (.call (.runtime .equal) [(.move (.generated .operand 393)), (.move (.generated .operand 394))] false)))))) (Corr.bOfE (Corr.buildConst rfl)) (Corr.cond (lc := []) (ce := (.call (.function 79) [(.copy (.generated .binding 0)), (.lit (.fixed .u8 48)), (.lit (.fixed .u8 57))] false)) (lk := []) (Corr.callOps (ts := [(.fixed .u8), (.fixed .u8), (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 391)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 392)) none (.lit (.fixed .u8 63)))]) (tb := (.cond (.call (.runtime .equal) [(.move (.generated .operand 391)), (.move (.generated .operand 392))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 393)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 394)) none (.lit (.fixed .u8 39)))] (.call (.runtime .equal) [(.move (.generated .operand 393)), (.move (.generated .operand 394))] false)))) (Corr.bOfE (Corr.buildConst rfl)) (Corr.cond (lc := [(.mk (.bind (.generated .operand 391)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 392)) none (.lit (.fixed .u8 63)))]) (ce := (.call (.runtime .equal) [(.move (.generated .operand 391)), (.move (.generated .operand 392))] false)) (lk := []) (Corr.prim (ts := [(.fixed .u8), (.fixed .u8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 393)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 394)) none (.lit (.fixed .u8 39)))]) (tb := (.call (.runtime .equal) [(.move (.generated .operand 393)), (.move (.generated .operand 394))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.prim (ts := [(.fixed .u8), (.fixed .u8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)))))))⟩⟩ + +theorem fun96 : FunOK program krate flags 96 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 395)) none (.move (.generated .binding 1)))], (.matchOn (.uncons (.generated .holder 395)) [(.mk .none (.mk [] (.construct .some [(.construct .cons [(.move (.generated .binding 0)), (.construct (.nil .bytes) [])])]))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .operand 396)) none (.clone (.generated .binding 0))), (.mk (.bind (.generated .operand 397)) none (.clone (.generated .binding 2)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 396)), (.move (.generated .operand 397))] false) (.mk [] (.construct (.none (.list .bytes)) [])) (.mk [] (.cond (.call (.function 54) [(.clone (.generated .binding 0)), (.clone (.generated .binding 2))] false) (.mk [] (.construct .some [(.construct .cons [(.move (.generated .binding 0)), (.construct .cons [(.move (.generated .binding 2)), (.move (.generated .binding 3))])])])) (.mk [(.mk (.bind (.generated .holder 398)) none (.call (.function 96) [(.move (.generated .binding 0)), (.move (.generated .binding 3))] false))] (.matchOn (.move (.generated .holder 398)) [(.mk .none (.mk [] (.construct (.none (.list .bytes)) []))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.construct .some [(.construct .cons [(.move (.generated .binding 2)), (.move (.generated .binding 4))])])))])))))))]), [(1, (.list .bytes), (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .bytes)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.list .bytes), (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.construct .cons [(.move (.generated .binding 0)), (.construct (.nil .bytes) [])])])) (Corr.mCons (Γ' := [(3, (.list .bytes), (some 3)), (2, .bytes, (some 2)), (1, (.list .bytes), (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .operand 396)) none (.clone (.generated .binding 0))), (.mk (.bind (.generated .operand 397)) none (.clone (.generated .binding 2)))]) (tail := (.cond (.call (.runtime .equal) [(.move (.generated .operand 396)), (.move (.generated .operand 397))] false) (.mk [] (.construct (.none (.list .bytes)) [])) (.mk [] (.cond (.call (.function 54) [(.clone (.generated .binding 0)), (.clone (.generated .binding 2))] false) (.mk [] (.construct .some [(.construct .cons [(.move (.generated .binding 0)), (.construct .cons [(.move (.generated .binding 2)), (.move (.generated .binding 3))])])])) (.mk [(.mk (.bind (.generated .holder 398)) none (.call (.function 96) [(.move (.generated .binding 0)), (.move (.generated .binding 3))] false))] (.matchOn (.move (.generated .holder 398)) [(.mk .none (.mk [] (.construct (.none (.list .bytes)) []))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.construct .some [(.construct .cons [(.move (.generated .binding 2)), (.move (.generated .binding 4))])])))])))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .operand 396)) none (.clone (.generated .binding 0))), (.mk (.bind (.generated .operand 397)) none (.clone (.generated .binding 2)))]) (ce := (.call (.runtime .equal) [(.move (.generated .operand 396)), (.move (.generated .operand 397))] false)) (lk := []) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct (.none (.list .bytes)) [])) (lb := []) (tb := (.cond (.call (.function 54) [(.clone (.generated .binding 0)), (.clone (.generated .binding 2))] false) (.mk [] (.construct .some [(.construct .cons [(.move (.generated .binding 0)), (.construct .cons [(.move (.generated .binding 2)), (.move (.generated .binding 3))])])])) (.mk [(.mk (.bind (.generated .holder 398)) none (.call (.function 96) [(.move (.generated .binding 0)), (.move (.generated .binding 3))] false))] (.matchOn (.move (.generated .holder 398)) [(.mk .none (.mk [] (.construct (.none (.list .bytes)) []))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.construct .some [(.construct .cons [(.move (.generated .binding 2)), (.move (.generated .binding 4))])])))])))) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl) (Corr.cond (lc := []) (ce := (.call (.function 54) [(.clone (.generated .binding 0)), (.clone (.generated .binding 2))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct .cons [(.move (.generated .binding 0)), (.construct .cons [(.move (.generated .binding 2)), (.move (.generated .binding 3))])])])) (lb := [(.mk (.bind (.generated .holder 398)) none (.call (.function 96) [(.move (.generated .binding 0)), (.move (.generated .binding 3))] false))]) (tb := (.matchOn (.move (.generated .holder 398)) [(.mk .none (.mk [] (.construct (.none (.list .bytes)) []))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.construct .some [(.construct .cons [(.move (.generated .binding 2)), (.move (.generated .binding 4))])])))])) (Corr.build (ts := [(.list .bytes)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.bytes, (.list .bytes)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.bytes, (.list .bytes)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil))) rfl) (Corr.matchArms (st := (.option (.list .bytes))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, (.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list .bytes), (some 3)), (2, .bytes, (some 2)), (1, (.list .bytes), (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct (.none (.list .bytes)) [])) (Corr.mCons (Γ' := [(4, (.list .bytes), (some 4)), (3, (.list .bytes), (some 3)), (2, .bytes, (some 2)), (1, (.list .bytes), (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.construct .cons [(.move (.generated .binding 2)), (.move (.generated .binding 4))])])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.list .bytes)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.bytes, (.list .bytes)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)))))) rfl rfl rfl (Corr.build (ts := [(.list .bytes)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.bytes, (.list .bytes)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil))) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun97 : FunOK program krate flags 97 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 399)), .wild]) none (.clone (.generated .binding 2)))] (.move (.generated .part 399))))), (.mk (.bind (.generated .binding 4)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 400)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 401))]) none (.clone (.generated .binding 2)))] (.move (.generated .part 401)))))] (.move (.generated .part 400))))), (.mk (.bind (.generated .binding 5)) (some (.list .bytes)) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 402))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 403))]) none (.move (.generated .binding 2)))] (.move (.generated .part 403)))))] (.move (.generated .part 402))))), (.mk (.bind (.generated .holder 404)) none (.call (.function 51) [(.clone (.generated .binding 0)), (.copy (.generated .binding 3))] false))], (.matchOn (.move (.generated .holder 404)) [(.mk .none (.mk [] (.succeed (.construct (.none (.pair .nat (.pair .nat (.list .bytes)))) [])))), (.mk (.some (.bind (.generated .binding 6))) (.mk [(.mk (.bind (.generated .operand 405)) none (.copy (.generated .binding 6))), (.mk (.bind (.generated .operand 406)) none (.copy (.generated .binding 1)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 405)), (.move (.generated .operand 406))] false) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 407)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 408)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 407)), (.move (.generated .operand 408))] true))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 409)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 410)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 409)), (.move (.generated .operand 410))] true))) (.construct .cons [(.call (.function 18) [(.move (.generated .binding 0)), (.copy (.generated .binding 4)), (.block (.mk [(.mk (.bind (.generated .operand 411)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 412)) none (.copy (.generated .binding 4)))] (.call (.runtime .natSub) [(.move (.generated .operand 411)), (.move (.generated .operand 412))] false)))] false), (.move (.generated .binding 5))])))]))) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 413)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 414)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 413)), (.move (.generated .operand 414))] true))) (.pair (.copy (.generated .binding 4)) (.move (.generated .binding 5))))]))))))]), [(2, (.pair .nat (.pair .nat (.list .bytes))), (some 2)), (1, (.fixed .u8), (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 399)), .wild]) none (.clone (.generated .binding 2)))]) (tail := (.move (.generated .part 399))) (Corr.first (ta := .nat) (tb := (.pair .nat (.list .bytes))) (Corr.var rfl rfl) rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 400)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 401))]) none (.clone (.generated .binding 2)))] (.move (.generated .part 401)))))]) (tail := (.move (.generated .part 400))) (Corr.first (ta := .nat) (tb := (.list .bytes)) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 401))]) none (.clone (.generated .binding 2)))]) (tail := (.move (.generated .part 401))) (Corr.second (ta := .nat) (tb := (.pair .nat (.list .bytes))) (Corr.var rfl rfl) rfl)) rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 402))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 403))]) none (.move (.generated .binding 2)))] (.move (.generated .part 403)))))]) (tail := (.move (.generated .part 402))) (Corr.second (ta := .nat) (tb := (.list .bytes)) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 403))]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 403))) (Corr.second (ta := .nat) (tb := (.pair .nat (.list .bytes))) (Corr.var rfl rfl) rfl)) rfl)) rfl (Corr.matchArms (st := (.option (.fixed .u8))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(5, (.list .bytes), (some 5)), (4, .nat, (some 4)), (3, .nat, (some 3)), (2, (.pair .nat (.pair .nat (.list .bytes))), (some 2)), (1, (.fixed .u8), (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.construct (.none (.pair .nat (.pair .nat (.list .bytes)))) []))) (Corr.mCons (Γ' := [(6, (.fixed .u8), (some 6)), (5, (.list .bytes), (some 5)), (4, .nat, (some 4)), (3, .nat, (some 3)), (2, (.pair .nat (.pair .nat (.list .bytes))), (some 2)), (1, (.fixed .u8), (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .operand 405)) none (.copy (.generated .binding 6))), (.mk (.bind (.generated .operand 406)) none (.copy (.generated .binding 1)))]) (tail := (.cond (.call (.runtime .equal) [(.move (.generated .operand 405)), (.move (.generated .operand 406))] false) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 407)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 408)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 407)), (.move (.generated .operand 408))] true))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 409)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 410)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 409)), (.move (.generated .operand 410))] true))) (.construct .cons [(.call (.function 18) [(.move (.generated .binding 0)), (.copy (.generated .binding 4)), (.block (.mk [(.mk (.bind (.generated .operand 411)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 412)) none (.copy (.generated .binding 4)))] (.call (.runtime .natSub) [(.move (.generated .operand 411)), (.move (.generated .operand 412))] false)))] false), (.move (.generated .binding 5))])))]))) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 413)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 414)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 413)), (.move (.generated .operand 414))] true))) (.pair (.copy (.generated .binding 4)) (.move (.generated .binding 5))))]))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .operand 405)) none (.copy (.generated .binding 6))), (.mk (.bind (.generated .operand 406)) none (.copy (.generated .binding 1)))]) (ce := (.call (.runtime .equal) [(.move (.generated .operand 405)), (.move (.generated .operand 406))] false)) (lk := []) (Corr.prim (ts := [(.fixed .u8), (.fixed .u8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 407)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 408)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 407)), (.move (.generated .operand 408))] true))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 409)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 410)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 409)), (.move (.generated .operand 410))] true))) (.construct .cons [(.call (.function 18) [(.move (.generated .binding 0)), (.copy (.generated .binding 4)), (.block (.mk [(.mk (.bind (.generated .operand 411)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 412)) none (.copy (.generated .binding 4)))] (.call (.runtime .natSub) [(.move (.generated .operand 411)), (.move (.generated .operand 412))] false)))] false), (.move (.generated .binding 5))])))]))) (lb := []) (tb := (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 413)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 414)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 413)), (.move (.generated .operand 414))] true))) (.pair (.copy (.generated .binding 4)) (.move (.generated .binding 5))))]))) (Corr.fOfB (Corr.build (ts := [(.pair .nat (.pair .nat (.list .bytes)))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 407)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 408)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 407)), (.move (.generated .operand 408))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 409)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 410)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 409)), (.move (.generated .operand 410))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.bytes, (.list .bytes)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 411)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 412)) none (.copy (.generated .binding 4)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 411)), (.move (.generated .operand 412))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := [(.pair .nat (.pair .nat (.list .bytes)))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 413)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 414)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 413)), (.move (.generated .operand 414))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil))) rfl))))) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl))))⟩⟩ + +theorem fun98 : FunOK program krate flags 98 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 70) [(.move (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 48)), (.lit (.fixed .u8 57))] false) (.mk [] (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 415)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 416)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 415)), (.move (.generated .operand 416))] true)))]))) (.mk [] (.succeed (.construct (.none .nat) [])))), [(1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 70) [(.move (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 48)), (.lit (.fixed .u8 57))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .nat, (.fixed .u8), (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 415)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 416)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 415)), (.move (.generated .operand 416))] true)))]))) (lb := []) (tb := (.succeed (.construct (.none .nat) []))) (Corr.fOfB (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 415)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 416)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 415)), (.move (.generated .operand 416))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | 3 => exact fun3 + | 4 => exact fun4 + | 5 => exact fun5 + | 6 => exact fun6 + | 7 => exact fun7 + | 8 => exact fun8 + | 9 => exact fun9 + | 10 => exact fun10 + | 11 => exact fun11 + | 12 => exact fun12 + | 13 => exact fun13 + | 14 => exact fun14 + | 15 => exact fun15 + | 16 => exact fun16 + | 17 => exact fun17 + | 18 => exact fun18 + | 19 => exact fun19 + | 20 => exact fun20 + | 21 => exact fun21 + | 22 => exact fun22 + | 23 => exact fun23 + | 24 => exact fun24 + | 25 => exact fun25 + | 26 => exact fun26 + | 27 => exact fun27 + | 28 => exact fun28 + | 29 => exact fun29 + | 30 => exact fun30 + | 31 => exact fun31 + | 32 => exact fun32 + | 33 => exact fun33 + | 34 => exact fun34 + | 35 => exact fun35 + | 36 => exact fun36 + | 37 => exact fun37 + | 38 => exact fun38 + | 39 => exact fun39 + | 40 => exact fun40 + | 41 => exact fun41 + | 42 => exact fun42 + | 43 => exact fun43 + | 44 => exact fun44 + | 45 => exact fun45 + | 46 => exact fun46 + | 47 => exact fun47 + | 48 => exact fun48 + | 49 => exact fun49 + | 50 => exact fun50 + | 51 => exact fun51 + | 52 => exact fun52 + | 53 => exact fun53 + | 54 => exact fun54 + | 55 => exact fun55 + | 56 => exact fun56 + | 57 => exact fun57 + | 58 => exact fun58 + | 59 => exact fun59 + | 60 => exact fun60 + | 61 => exact fun61 + | 62 => exact fun62 + | 63 => exact fun63 + | 64 => exact fun64 + | 65 => exact fun65 + | 66 => exact fun66 + | 67 => exact fun67 + | 68 => exact fun68 + | 69 => exact fun69 + | 70 => exact fun70 + | 71 => exact fun71 + | 72 => exact fun72 + | 73 => exact fun73 + | 74 => exact fun74 + | 75 => exact fun75 + | 76 => exact fun76 + | 77 => exact fun77 + | 78 => exact fun78 + | 79 => exact fun79 + | 80 => exact fun80 + | 81 => exact fun81 + | 82 => exact fun82 + | 83 => exact fun83 + | 84 => exact fun84 + | 85 => exact fun85 + | 86 => exact fun86 + | 87 => exact fun87 + | 88 => exact fun88 + | 89 => exact fun89 + | 90 => exact fun90 + | 91 => exact fun91 + | 92 => exact fun92 + | 93 => exact fun93 + | 94 => exact fun94 + | 95 => exact fun95 + | 96 => exact fun96 + | 97 => exact fun97 + | 98 => exact fun98 + | _ + 99 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.RustStd diff --git a/bootstrap/expected/verify/preserve/LexLeanPreserve/Cadb40bbfc73b1dc6b7a95dab0c348a27/R0.lean b/bootstrap/expected/verify/preserve/LexLeanPreserve/Cadb40bbfc73b1dc6b7a95dab0c348a27/R0.lean deleted file mode 100644 index 2433026d1..000000000 --- a/bootstrap/expected/verify/preserve/LexLeanPreserve/Cadb40bbfc73b1dc6b7a95dab0c348a27/R0.lean +++ /dev/null @@ -1,98 +0,0 @@ -import LexLeanPreservation.Core -import LexLeanPreservation.Values -import LexLeanPreservation.Primitives -import LexLeanPreservation.Fixed -import LexLeanPreservation.Keys -import LexLeanPreservation.Templates -import LexLeanPreservation.Validate -import LexLeanBoot.AxiomOutput -import LexLeanBoot.Text -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -set_option linter.unusedVariables false -namespace LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0 - -def __prog : _root_.LexLeanTarget.TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0], types := [.bytes], result := .bool, - body := (.prim .natEq [(.second (.first (.call 1 [(.closure 2 [(.var 0)]), (.prim .length [(.var 0)]), (.build .pair (.pair .nat .nat) [(.value .nat (.nat 0)), (.value .nat (.nat 0))])]))), (.value .nat (.nat 1))]) }, - { parameters := [0, 1, 2], types := [(.fn [(.pair .nat .nat)] (.option (.pair .nat .nat))), .nat, (.pair .nat .nat)], result := (.pair (.pair .nat .nat) .bool), - body := (.«match» (.pair (.pair .nat .nat) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.pair .nat .nat) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.pair .nat .nat) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.pair .nat .nat) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 1 [(.var 0), (.var 3), (.var 4)]))]))]) }, - { parameters := [0, 1], types := [.bytes, (.pair .nat .nat)], result := (.option (.pair .nat .nat)), - body := (.call 3 [(.var 0), (.var 1)]) }, - { parameters := [0, 1], types := [.bytes, (.pair .nat .nat)], result := (.option (.pair .nat .nat)), - body := (.cond (.prim .natEq [(.second (.var 1)), (.value .nat (.nat 2))]) (.build .none (.option (.pair .nat .nat)) []) (.«match» (.option (.pair .nat .nat)) (.call 4 [(.var 0), (.first (.var 1))]) [(.arm .some [2] (.build .some (.option (.pair .nat .nat)) [(.build .pair (.pair .nat .nat) [(.prim .natAdd [(.first (.var 1)), (.value .nat (.nat 1))]), (.call 5 [(.second (.var 1)), (.var 2)])])])), (.arm .none [] (.build .none (.option (.pair .nat .nat)) []))])) }, - { parameters := [0, 1], types := [.bytes, .nat], result := (.option (.fixed .u8)), - body := (.prim .index [(.var 0), (.var 1)]) }, - { parameters := [0, 1], types := [.nat, (.fixed .u8)], result := .nat, - body := (.cond (.prim .natEq [(.var 0), (.value .nat (.nat 2))]) (.value .nat (.nat 2)) (.cond (.prim .equal [(.var 1), (.value (.fixed .u8) (.u8 46))]) (.cond (.prim .natEq [(.var 0), (.value .nat (.nat 1))]) (.value .nat (.nat 0)) (.value .nat (.nat 2))) (.cond (.call 6 [(.var 1)]) (.value .nat (.nat 1)) (.cond (.prim .natEq [(.var 0), (.value .nat (.nat 1))]) (.cond (.call 7 [(.var 1)]) (.value .nat (.nat 1)) (.value .nat (.nat 2))) (.value .nat (.nat 2)))))) }, - { parameters := [0], types := [(.fixed .u8)], result := .bool, - body := (.cond (.call 8 [(.var 0), (.value (.fixed .u8) (.u8 65)), (.value (.fixed .u8) (.u8 90))]) (.build .true .bool []) (.cond (.call 8 [(.var 0), (.value (.fixed .u8) (.u8 97)), (.value (.fixed .u8) (.u8 122))]) (.build .true .bool []) (.prim .equal [(.var 0), (.value (.fixed .u8) (.u8 95))]))) }, - { parameters := [0], types := [(.fixed .u8)], result := .bool, - body := (.cond (.call 6 [(.var 0)]) (.build .true .bool []) (.cond (.call 8 [(.var 0), (.value (.fixed .u8) (.u8 48)), (.value (.fixed .u8) (.u8 57))]) (.build .true .bool []) (.cond (.prim .equal [(.var 0), (.value (.fixed .u8) (.u8 63))]) (.build .true .bool []) (.prim .equal [(.var 0), (.value (.fixed .u8) (.u8 39))])))) }, - { parameters := [0, 1, 2], types := [(.fixed .u8), (.fixed .u8), (.fixed .u8)], result := .bool, - body := (.«match» .bool (.prim .checkedSub [(.var 0), (.var 1)]) [(.arm .some [3] (.«match» .bool (.prim .checkedSub [(.var 2), (.var 0)]) [(.arm .some [4] (.build .true .bool [])), (.arm .none [] (.build .false .bool []))])), (.arm .none [] (.build .false .bool []))]) }] } - -def __fits_4 (subject : ByteArray) (position : Nat) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_4 (subject : ByteArray) (position : Nat) : _root_.LexLeanPreservation.FunRel __prog 4 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat position)] (_root_.LexLeanPreservation.Rel (__fits_4 subject position) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u8) (LexLeanBoot.Text.byteAt subject position))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_index_bytes subject position)) - -def __fits_8 (byte : UInt8) (low : UInt8) (high : UInt8) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (match (_root_.LexLeanRuntime.checkedSubtract (byte) (low) : (Option UInt8)) with | Option.some above => (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (match (_root_.LexLeanRuntime.checkedSubtract (high) (byte) : (Option UInt8)) with | Option.some below => (Bool.true && Bool.true) | Option.none => (Bool.true && Bool.true))) | Option.none => (Bool.true && Bool.true))) - -theorem __rel_8 (byte : UInt8) (low : UInt8) (high : UInt8) : _root_.LexLeanPreservation.FunRel __prog 8 [(_root_.LexLeanTarget.TargetSyntax.Value.u8 byte), (_root_.LexLeanTarget.TargetSyntax.Value.u8 low), (_root_.LexLeanTarget.TargetSyntax.Value.u8 high)] (_root_.LexLeanPreservation.Rel (__fits_8 byte low high) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanBoot.AxiomOutput.inRange byte low high))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u8) (fun (__a : (Option UInt8)) => (match __a with | Option.some above => (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (match (_root_.LexLeanRuntime.checkedSubtract (high) (byte) : (Option UInt8)) with | Option.some below => (Bool.true && Bool.true) | Option.none => (Bool.true && Bool.true))) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option UInt8)) => _root_.LexLeanTarget.TargetSyntax.Value.bool (match __a with | Option.some above => (match (_root_.LexLeanRuntime.checkedSubtract (high) (byte) : (Option UInt8)) with | Option.some below => Bool.true | Option.none => Bool.false) | Option.none => Bool.false)) (_root_.LexLeanRuntime.checkedSubtract (byte) (low) : (Option UInt8)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_checkedSub_u8 byte low)) (fun (__a : (Option UInt8)) _ => match __a with | Option.some above => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u8) (fun (__a : (Option UInt8)) => (match __a with | Option.some below => (Bool.true && Bool.true) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option UInt8)) => _root_.LexLeanTarget.TargetSyntax.Value.bool (match __a with | Option.some below => Bool.true | Option.none => Bool.false)) (_root_.LexLeanRuntime.checkedSubtract (high) (byte) : (Option UInt8)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_checkedSub_u8 high byte)) (fun (__a : (Option UInt8)) _ => match __a with | Option.some below => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))))) - -def __fits_6 (byte : UInt8) : Bool := - (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_8 (byte) ((65 : UInt8)) ((90 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.inRange (byte) ((65 : UInt8)) ((90 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_8 (byte) ((97 : UInt8)) ((122 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.inRange (byte) ((97 : UInt8)) ((122 : UInt8))) then (Bool.true && Bool.true) else ((Bool.true && (Bool.true && Bool.true)) && Bool.true))))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.inRange in -theorem __rel_6 (byte : UInt8) : _root_.LexLeanPreservation.FunRel __prog 6 [(_root_.LexLeanTarget.TargetSyntax.Value.u8 byte)] (_root_.LexLeanPreservation.Rel (__fits_6 byte) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanBoot.AxiomOutput.isFirst byte))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_8 (byte) ((97 : UInt8)) ((122 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.inRange (byte) ((97 : UInt8)) ((122 : UInt8))) then (Bool.true && Bool.true) else ((Bool.true && (Bool.true && Bool.true)) && Bool.true))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then Bool.true else (if (LexLeanBoot.AxiomOutput.inRange (byte) ((97 : UInt8)) ((122 : UInt8))) then Bool.true else (_root_.LexLeanRuntime.equal (byte) ((95 : UInt8)) : Bool)))) (LexLeanBoot.AxiomOutput.inRange (byte) ((65 : UInt8)) ((90 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_8 (byte) ((65 : UInt8)) ((90 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else ((Bool.true && (Bool.true && Bool.true)) && Bool.true))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then Bool.true else (_root_.LexLeanRuntime.equal (byte) ((95 : UInt8)) : Bool))) (LexLeanBoot.AxiomOutput.inRange (byte) ((97 : UInt8)) ((122 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_8 (byte) ((97 : UInt8)) ((122 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_u8 byte (95 : UInt8))))))) - -def __fits_7 (byte : UInt8) : Bool := - (((Bool.true && Bool.true) && (__fits_6 (byte))) && (if (LexLeanBoot.AxiomOutput.isFirst (byte)) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_8 (byte) ((48 : UInt8)) ((57 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.inRange (byte) ((48 : UInt8)) ((57 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal (byte) ((63 : UInt8)) : Bool) then (Bool.true && Bool.true) else ((Bool.true && (Bool.true && Bool.true)) && Bool.true))))))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.inRange LexLeanBoot.AxiomOutput.isFirst in -theorem __rel_7 (byte : UInt8) : _root_.LexLeanPreservation.FunRel __prog 7 [(_root_.LexLeanTarget.TargetSyntax.Value.u8 byte)] (_root_.LexLeanPreservation.Rel (__fits_7 byte) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanBoot.AxiomOutput.isLater byte))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_8 (byte) ((48 : UInt8)) ((57 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.inRange (byte) ((48 : UInt8)) ((57 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal (byte) ((63 : UInt8)) : Bool) then (Bool.true && Bool.true) else ((Bool.true && (Bool.true && Bool.true)) && Bool.true))))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then Bool.true else (if (LexLeanBoot.AxiomOutput.inRange (byte) ((48 : UInt8)) ((57 : UInt8))) then Bool.true else (if (_root_.LexLeanRuntime.equal (byte) ((63 : UInt8)) : Bool) then Bool.true else (_root_.LexLeanRuntime.equal (byte) ((39 : UInt8)) : Bool))))) (LexLeanBoot.AxiomOutput.isFirst (byte)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_6 (byte))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal (byte) ((63 : UInt8)) : Bool) then (Bool.true && Bool.true) else ((Bool.true && (Bool.true && Bool.true)) && Bool.true))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then Bool.true else (if (_root_.LexLeanRuntime.equal (byte) ((63 : UInt8)) : Bool) then Bool.true else (_root_.LexLeanRuntime.equal (byte) ((39 : UInt8)) : Bool)))) (LexLeanBoot.AxiomOutput.inRange (byte) ((48 : UInt8)) ((57 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_8 (byte) ((48 : UInt8)) ((57 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else ((Bool.true && (Bool.true && Bool.true)) && Bool.true))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then Bool.true else (_root_.LexLeanRuntime.equal (byte) ((39 : UInt8)) : Bool))) (_root_.LexLeanRuntime.equal (byte) ((63 : UInt8)) : Bool) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_u8 byte (63 : UInt8))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_u8 byte (39 : UInt8))))))))) - -def __fits_5 (mode : Nat) (byte : UInt8) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq mode (2 : Nat)) then Bool.true else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal (byte) ((46 : UInt8)) : Bool) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq mode (1 : Nat)) then Bool.true else Bool.true)) else (((Bool.true && Bool.true) && (__fits_6 (byte))) && (if (LexLeanBoot.AxiomOutput.isFirst (byte)) then Bool.true else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq mode (1 : Nat)) then (((Bool.true && Bool.true) && (__fits_7 (byte))) && (if (LexLeanBoot.AxiomOutput.isLater (byte)) then Bool.true else Bool.true)) else Bool.true)))))))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.isFirst LexLeanBoot.AxiomOutput.isLater in -theorem __rel_5 (mode : Nat) (byte : UInt8) : _root_.LexLeanPreservation.FunRel __prog 5 [(_root_.LexLeanTarget.TargetSyntax.Value.nat mode), (_root_.LexLeanTarget.TargetSyntax.Value.u8 byte)] (_root_.LexLeanPreservation.Rel (__fits_5 mode byte) (_root_.LexLeanTarget.TargetSyntax.Value.nat (LexLeanBoot.AxiomOutput.nameMode mode byte))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal (byte) ((46 : UInt8)) : Bool) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq mode (1 : Nat)) then Bool.true else Bool.true)) else (((Bool.true && Bool.true) && (__fits_6 (byte))) && (if (LexLeanBoot.AxiomOutput.isFirst (byte)) then Bool.true else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq mode (1 : Nat)) then (((Bool.true && Bool.true) && (__fits_7 (byte))) && (if (LexLeanBoot.AxiomOutput.isLater (byte)) then Bool.true else Bool.true)) else Bool.true)))))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (2 : Nat) else (if (_root_.LexLeanRuntime.equal (byte) ((46 : UInt8)) : Bool) then (if (Nat.beq mode (1 : Nat)) then (0 : Nat) else (2 : Nat)) else (if (LexLeanBoot.AxiomOutput.isFirst (byte)) then (1 : Nat) else (if (Nat.beq mode (1 : Nat)) then (if (LexLeanBoot.AxiomOutput.isLater (byte)) then (1 : Nat) else (2 : Nat)) else (2 : Nat)))))) (Nat.beq mode (2 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq mode (2 : Nat))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq mode (1 : Nat)) then Bool.true else Bool.true)) else (((Bool.true && Bool.true) && (__fits_6 (byte))) && (if (LexLeanBoot.AxiomOutput.isFirst (byte)) then Bool.true else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq mode (1 : Nat)) then (((Bool.true && Bool.true) && (__fits_7 (byte))) && (if (LexLeanBoot.AxiomOutput.isLater (byte)) then Bool.true else Bool.true)) else Bool.true)))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (if (Nat.beq mode (1 : Nat)) then (0 : Nat) else (2 : Nat)) else (if (LexLeanBoot.AxiomOutput.isFirst (byte)) then (1 : Nat) else (if (Nat.beq mode (1 : Nat)) then (if (LexLeanBoot.AxiomOutput.isLater (byte)) then (1 : Nat) else (2 : Nat)) else (2 : Nat))))) (_root_.LexLeanRuntime.equal (byte) ((46 : UInt8)) : Bool) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_u8 byte (46 : UInt8))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (0 : Nat) else (2 : Nat))) (Nat.beq mode (1 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq mode (1 : Nat))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => _root_.LexLeanPreservation.conv_value))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq mode (1 : Nat)) then (((Bool.true && Bool.true) && (__fits_7 (byte))) && (if (LexLeanBoot.AxiomOutput.isLater (byte)) then Bool.true else Bool.true)) else Bool.true)))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (1 : Nat) else (if (Nat.beq mode (1 : Nat)) then (if (LexLeanBoot.AxiomOutput.isLater (byte)) then (1 : Nat) else (2 : Nat)) else (2 : Nat)))) (LexLeanBoot.AxiomOutput.isFirst (byte)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_6 (byte))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && (__fits_7 (byte))) && (if (LexLeanBoot.AxiomOutput.isLater (byte)) then Bool.true else Bool.true)) else Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (if (LexLeanBoot.AxiomOutput.isLater (byte)) then (1 : Nat) else (2 : Nat)) else (2 : Nat))) (Nat.beq mode (1 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq mode (1 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (1 : Nat) else (2 : Nat))) (LexLeanBoot.AxiomOutput.isLater (byte)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_7 (byte))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => _root_.LexLeanPreservation.conv_value))) (fun _ => _root_.LexLeanPreservation.conv_value)))))))) - -def __fits_3 (subject : ByteArray) (state : (Prod Nat Nat)) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (state).2 (2 : Nat)) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && (__fits_4 (subject) ((state).1))) && (match (LexLeanBoot.Text.byteAt (subject) ((state).1)) with | Option.some byte => ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((state).1 + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (__fits_5 ((state).2) (byte))) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (Bool.true && Bool.true))))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.nameMode LexLeanBoot.Text.byteAt in -theorem __rel_3 (subject : ByteArray) (state : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 3 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) state)] (_root_.LexLeanPreservation.Rel (__fits_3 subject state) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (LexLeanBoot.AxiomOutput.nameStep subject state))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && (__fits_4 (subject) ((state).1))) && (match (LexLeanBoot.Text.byteAt (subject) ((state).1)) with | Option.some byte => ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((state).1 + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (__fits_5 ((state).2) (byte))) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (Bool.true && Bool.true))))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (if __b then (Option.none : (Option (Prod Nat Nat))) else (match (LexLeanBoot.Text.byteAt (subject) ((state).1)) with | Option.some byte => (Option.some ((((state).1 + (1 : Nat)), (LexLeanBoot.AxiomOutput.nameMode ((state).2) (byte)))) : (Option (Prod Nat Nat))) | Option.none => (Option.none : (Option (Prod Nat Nat)))))) (Nat.beq (state).2 (2 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (state).2 (2 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) (fun _ => (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u8) (fun (__a : (Option UInt8)) => (match __a with | Option.some byte => ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((state).1 + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (__fits_5 ((state).2) (byte))) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option UInt8)) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (match __a with | Option.some byte => (Option.some ((((state).1 + (1 : Nat)), (LexLeanBoot.AxiomOutput.nameMode ((state).2) (byte)))) : (Option (Prod Nat Nat))) | Option.none => (Option.none : (Option (Prod Nat Nat))))) (LexLeanBoot.Text.byteAt (subject) ((state).1)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil)) (__rel_4 (subject) ((state).1))) (fun (__a : (Option UInt8)) _ => match __a with | Option.some byte => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (state).1 (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_5 ((state).2) (byte))) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))) - -def __fits_2 (raw : ByteArray) (state : (Prod Nat Nat)) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && (__fits_3 (raw) (state))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.nameStep in -theorem __rel_2 (raw : ByteArray) (state : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 2 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes raw), ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) state)] (_root_.LexLeanPreservation.Rel (__fits_2 raw state) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) ((LexLeanBoot.AxiomOutput.nameStep (raw) (state))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_3 (raw) (state))) - -def __fits_0 (raw : ByteArray) : Bool := - (((((Bool.true && Bool.true) && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (raw) : Nat) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : (Prod Nat Nat)) => __fits_2 (raw) __p0) ((fun (state : (Prod Nat Nat)) => (LexLeanBoot.AxiomOutput.nameStep (raw) (state)))) ((_root_.LexLeanRuntime.length (raw) : Nat)) (((0 : Nat), (0 : Nat))))) && (Bool.true && Bool.true)) && Bool.true) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.nameStep in -theorem __rel_0 (raw : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes raw)] (_root_.LexLeanPreservation.Rel (__fits_0 raw) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanBoot.AxiomOutput.isClosedLeanName raw))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes raw)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterateUntil (es := (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (_root_.LexLeanPreservation.optEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) ((fun (state : (Prod Nat Nat)) => (LexLeanBoot.AxiomOutput.nameStep (raw) (state)))) (fun (__p0 : (Prod Nat Nat)) => __fits_2 (raw) __p0) 2 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes raw)] (fun (__p0 : (Prod Nat Nat)) => __rel_2 (raw) __p0) (_root_.LexLeanCollections.iterateUntil ((fun (state : (Prod Nat Nat)) => (LexLeanBoot.AxiomOutput.nameStep (raw) (state))))) (fun _ => rfl) (fun _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (p := __prog) (fi := 1) (ts := (.pair .nat .nat)) rfl ((_root_.LexLeanRuntime.length (raw) : Nat)) (((0 : Nat), (0 : Nat))))))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (((_root_.LexLeanCollections.iterateUntil ((fun (state : (Prod Nat Nat)) => (LexLeanBoot.AxiomOutput.nameStep (raw) (state)))) ((_root_.LexLeanRuntime.length (raw) : Nat)) (((0 : Nat), (0 : Nat))) : (Prod (Prod Nat Nat) Bool))).1).2 (1 : Nat))) - -def denote (raw : ByteArray) : _root_.LexLeanPreservation.Obs := - _root_.cond (__fits_0 raw) (_root_.LexLeanPreservation.Obs.value ((_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanBoot.AxiomOutput.isClosedLeanName raw)))) _root_.LexLeanPreservation.Obs.overflow - -theorem root (raw : ByteArray) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes raw)] (_root_.LexLeanPreservation.Rel (__fits_0 raw) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanBoot.AxiomOutput.isClosedLeanName raw))) := - _root_.LexLeanPreservation.run_of_funRel (__rel_0 raw) - -end LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0 diff --git a/bootstrap/expected/verify/preserve/LexLeanPreserve/Cadb40bbfc73b1dc6b7a95dab0c348a27/R0/Compose/RustStd.lex.tex b/bootstrap/expected/verify/preserve/LexLeanPreserve/Cadb40bbfc73b1dc6b7a95dab0c348a27/R0/Compose/RustStd.lex.tex deleted file mode 100644 index 3007e55b3..000000000 --- a/bootstrap/expected/verify/preserve/LexLeanPreserve/Cadb40bbfc73b1dc6b7a95dab0c348a27/R0/Compose/RustStd.lex.tex +++ /dev/null @@ -1,419 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0, - LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.Compose.RustStd.root : @827 := @828 { - all: [LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.RustStd.program -@1 := LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.RustStd.krate -@2 := LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.RustStd.flags -@3 := ByteArray -@4 := #1 -@5 := LexLeanTarget.TargetSyntax.Value.bytes -@6 := @5 @4 -@7 := LexLeanTarget.TargetSyntax.Ty.bytes -@8 := LexLeanTarget.TargetSyntax.Program -@9 := LexLeanPreservation.Rust.RCrate -@10 := LexLeanPreservation.Rust.Flags -@11 := LexLeanPreservation.Rust.WT -@12 := #3 -@13 := @11 @12 -@14 := #2 -@16 := @13 @14 @4 -@17 := #0 -@18 := @5 @17 -@24 := {p : @8} -> {c : @9} -> {A : @10} -> (b : @3) -> @16 @18 @7 -@26 := LexLeanPreservation.Rust.wt_bytes @0 -@27 := @11 @0 -@34 := {c : @9} -> {A : @10} -> (b : @3) -> @27 @14 @4 @18 @7 -@35 := @26 @1 -@36 := @27 @1 -@41 := {A : @10} -> (b : @3) -> @36 @4 @18 @7 -@42 := @35 @2 -@43 := @36 @2 -@46 := (b : @3) -> @43 @18 @7 -@47 := @42 @4 -@49 := @43 @6 @7 -@50 := LexLeanTarget.TargetSyntax.Value -@51 := List.nil.{0} -@52 := List.cons.{0} -@53 := @51 @50 -@54 := @52 @50 -@56 := @54 @6 @53 -@57 := Nat -@60 := Prod.{0, 0} @57 @50 -@61 := 0 -@65 := Prod.mk.{0, 0} @57 @50 @61 -@66 := @65 @6 -@67 := @51 @60 -@68 := @52 @60 -@70 := @68 @66 @67 -@71 := Bool.true -@72 := LexLeanTarget.TargetSyntax.Function -@73 := LexLeanTarget.TargetSyntax.Program.functions -@74 := @73 @0 -@75 := LexLeanTarget.TargetSyntax.Ty -@76 := @51 @57 -@77 := @51 @75 -@78 := LexLeanTarget.TargetSyntax.Ty.unit -@79 := LexLeanTarget.TargetSyntax.Value.unit -@82 := LexLeanTarget.TargetSyntax.Expr.value @78 @79 -@87 := LexLeanTarget.TargetSyntax.Function.mk @76 @77 @78 @82 -@92 := List.getD.{0} @72 @74 @61 @87 -@96 := fun (__e_n : @57) => - LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.RustStd.root @17 @61 -@97 := LexLeanPreservation.Rust.WTL -@105 := {p : @8} -> {c : @9} -> {A : @10} -> @97 @14 @4 @17 @53 @77 -@107 := LexLeanPreservation.Rust.wtl_nil @0 -@108 := @97 @0 -@114 := {c : @9} -> {A : @10} -> @108 @4 @17 @53 @77 -@115 := @107 @1 -@116 := @108 @1 -@120 := {A : @10} -> @116 @17 @53 @77 -@121 := @115 @2 -@122 := @116 @2 -@123 := @122 @53 -@124 := @123 @77 -@125 := List.{0} -@126 := @125 @50 -@127 := @125 @75 -@128 := #6 -@129 := @11 @128 -@130 := #5 -@131 := @129 @130 -@132 := #4 -@135 := @131 @132 @12 @14 -@136 := #7 -@141 := @97 @136 @128 @130 @14 @4 -@142 := #8 -@145 := @97 @142 @136 @128 -@147 := @54 @130 @12 -@148 := @145 @147 -@149 := @52 @75 -@151 := @149 @132 @14 -@161 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {v : @50} -> {t : @75} -> {vs : @126} -> {ts : @127} -> (h : @135) -> (hs : @141) -> @148 @151 -@163 := LexLeanPreservation.Rust.wtl_cons @0 -@183 := {c : @9} -> - {A : @10} -> - {v : @50} -> - {t : @75} -> - {vs : @126} -> - {ts : @127} -> - (h : @27 @130 @132 @12 @14) -> (hs : @108 @128 @130 @14 @4) -> @108 @136 @128 @147 @151 -@184 := @163 @1 -@200 := {A : @10} -> - {v : @50} -> - {t : @75} -> - {vs : @126} -> - {ts : @127} -> (h : @36 @132 @12 @14) -> (hs : @116 @130 @14 @4) -> @116 @128 @147 @151 -@201 := @184 @2 -@203 := @43 @12 @14 -@205 := @122 @14 @4 -@213 := {v : @50} -> - {t : @75} -> {vs : @126} -> {ts : @127} -> (h : @203) -> (hs : @205) -> @122 @147 @151 -@214 := @201 @6 -@215 := @5 @132 -@217 := @43 @215 @14 -@218 := @5 @128 -@219 := @54 @218 -@227 := {t : @75} -> {vs : @126} -> {ts : @127} -> (h : @217) -> (hs : @205) -> @122 (@219 @12) @151 -@228 := @214 @7 -@229 := @5 @12 -@231 := @43 @229 @7 -@232 := @5 @130 -@233 := @54 @232 -@235 := @122 (@233 @12) -@236 := @149 @7 -@237 := @236 @14 -@242 := {vs : @126} -> {ts : @127} -> (h : @231) -> (hs : @205) -> @235 @237 -@243 := @228 @53 -@244 := @5 @14 -@246 := @43 @244 @7 -@247 := @123 @4 -@249 := @54 @215 @53 -@250 := @122 @249 -@254 := {ts : @127} -> (h : @246) -> (hs : @247) -> @250 @237 -@255 := @243 @77 -@257 := @54 @229 @53 -@258 := @122 @257 -@259 := @236 @77 -@262 := (h : @49) -> (hs : @124) -> @258 @259 -@263 := @255 @47 -@265 := @54 @244 @53 -@266 := @122 @265 -@268 := (hs : @124) -> @266 @259 -@269 := @263 @121 -@270 := @122 @56 -@271 := @270 @259 -@272 := LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.denote -@273 := @272 @4 -@274 := LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.__fits_0 -@275 := @274 @4 -@277 := LexLeanBoot.AxiomOutput.isClosedLeanName @4 -@279 := LexLeanTarget.TargetSyntax.Value.bool @277 -@281 := LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.root @4 -@282 := Bool -@283 := Ne.{1} -@284 := LexLeanPreservation.Obs -@285 := @283 @284 -@286 := LexLeanPreservation.Rel -@289 := @285 (@286 @4 @17) -@290 := LexLeanPreservation.Obs.stuck -@293 := (f : @282) -> (v : @50) -> @289 @290 -@295 := LexLeanPreservation.Rust.rel_ne_stuck @275 -@301 := (v : @50) -> @285 (@286 (@274 @14) @17) @290 -@302 := @295 @279 -@306 := @285 (@286 @275 @279) @290 -@307 := @125 @60 -@308 := LexLeanPreservation.Rust.FunSem -@309 := #9 -@315 := (n : @57) -> @308 @309 @142 @136 @17 @128 -@316 := Eq.{1} -@317 := Option.{0} -@318 := @317 @72 -@319 := @316 @318 -@326 := LexLeanRuntime.index (@125 @72) @72 (LexLeanRuntime.instIndexableList @72) -@330 := @319 (@326 (@73 @309) @128) -@331 := Option.some.{0} -@332 := @331 @72 -@333 := @332 @130 -@334 := @330 @333 -@335 := #10 -@339 := @97 @335 @309 @142 @130 -@340 := LexLeanTarget.TargetSyntax.Function.types -@341 := @340 @128 -@342 := @339 @341 -@343 := @317 @307 -@344 := @316 @343 -@345 := LexLeanTarget.TargetSemantics.bindAll -@346 := LexLeanTarget.TargetSyntax.Function.parameters -@351 := @344 (@345 (@346 @136) @128 @67) -@352 := @331 @307 -@353 := @352 @130 -@354 := @351 @353 -@355 := @317 @282 -@356 := @316 @355 -@357 := LexLeanPreservation.Rust.fnFallible -@358 := #11 -@361 := @356 (@357 @358 @309) -@362 := @331 @282 -@363 := @362 @130 -@364 := @361 @363 -@365 := LexLeanPreservation.RunConv -@366 := #13 -@370 := @365 @366 @335 @142 @130 -@372 := @285 @128 @290 -@373 := Exists.{1} -@374 := LexLeanPreservation.Rust.ROut -@375 := @373 @374 -@376 := And -@377 := LexLeanPreservation.Rust.RealizesFn -@381 := @376 (@377 @309 @142 @17) -@382 := LexLeanPreservation.Rust.RCI -@384 := @382 #15 -@385 := LexLeanPreservation.Rust.fnIdent -@386 := @385 @366 -@393 := (hne : @372) -> @375 (fun (ro : @374) => @381 (@384 @386 @358 @17)) -@408 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {f : @57} -> - {fn : @72} -> - {args : @126} -> - {env : @307} -> - {F : @282} -> - {o : @284} -> - (hB : @315) -> - (hfn : @334) -> (hwt : @342) -> (hbind : @354) -> (hF : @364) -> (hA : @370) -> @393 -@410 := LexLeanPreservation.Rust.compose @0 -@411 := @308 @0 -@416 := (n : @57) -> @411 @142 @136 @17 @128 -@417 := @326 @74 -@420 := @319 (@417 @128) @333 -@424 := @108 @309 @142 @130 @341 -@425 := @365 @0 -@428 := @425 @335 @142 @130 -@442 := {c : @9} -> - {A : @10} -> - {f : @57} -> - {fn : @72} -> - {args : @126} -> - {env : @307} -> - {F : @282} -> - {o : @284} -> - (hB : @416) -> - (hfn : @420) -> (hwt : @424) -> (hbind : @354) -> (hF : @364) -> (hA : @428) -> @393 -@443 := @410 @1 -@444 := @411 @1 -@448 := (n : @57) -> @444 @136 @17 @128 -@451 := @116 @142 @130 @341 -@452 := @357 @1 -@455 := @356 (@452 @309) @363 -@456 := @382 @1 -@466 := (hbind : @354) -> - (hF : @455) -> (hA : @428) -> (hne : @372) -> @375 (fun (ro : @374) => @381 (@456 @386 @358 @17)) -@476 := {A : @10} -> - {f : @57} -> - {fn : @72} -> - {args : @126} -> - {env : @307} -> {F : @282} -> {o : @284} -> (hB : @448) -> (hfn : @420) -> (hwt : @451) -> @466 -@477 := @443 @2 -@479 := @444 @2 @17 -@481 := (n : @57) -> @479 @128 -@482 := @122 @130 -@483 := @482 @341 -@492 := {f : @57} -> - {fn : @72} -> - {args : @126} -> - {env : @307} -> {F : @282} -> {o : @284} -> (hB : @481) -> (hfn : @420) -> (hwt : @483) -> @466 -@493 := @477 @61 -@495 := (n : @57) -> @479 @61 -@496 := @417 @61 -@497 := @319 @496 -@498 := @497 @333 -@499 := @452 @61 -@500 := @356 @499 -@501 := @500 @363 -@502 := @425 @61 -@504 := @502 @142 @130 -@506 := @456 (@385 @61) -@514 := (hF : @501) -> (hA : @504) -> (hne : @372) -> @375 (fun (ro : @374) => @381 (@506 @358 @17)) -@523 := {fn : @72} -> - {args : @126} -> - {env : @307} -> - {F : @282} -> {o : @284} -> (hB : @495) -> (hfn : @498) -> (hwt : @483) -> (hbind : @354) -> @514 -@524 := @493 @92 -@526 := @497 (@332 @92) -@527 := @340 @92 -@528 := @482 @527 -@530 := @345 (@346 @92) -@542 := {args : @126} -> - {env : @307} -> - {F : @282} -> - {o : @284} -> - (hB : @495) -> (hfn : @526) -> (hwt : @528) -> (hbind : @344 (@530 @128 @67) @353) -> @514 -@543 := @524 @56 -@544 := @219 @53 -@546 := @122 @544 @527 -@549 := @54 (@5 @136) @53 -@553 := @344 (@530 @549 @67) @353 -@556 := @54 (@5 @309) @53 -@577 := {env : @307} -> - {F : @282} -> - {o : @284} -> - (hB : @495) -> - (hfn : @526) -> - (hwt : @546) -> - (hbind : @553) -> - (hF : @501) -> - (hA : @502 @556 @130) -> - (hne : @372) -> @375 (fun (ro : @374) => @381 (@506 (@54 (@5 #12) @53) @17)) -@578 := @543 @70 -@579 := @233 @53 -@581 := @122 @579 @527 -@589 := @344 (@530 @544 @67) (@352 (@68 (@65 @218) @67)) -@592 := @54 (@5 @142) @53 -@611 := {F : @282} -> - {o : @284} -> - (hB : @495) -> - (hfn : @526) -> - (hwt : @581) -> - (hbind : @589) -> - (hF : @501) -> - (hA : @502 @592 @130) -> - (hne : @372) -> @375 (fun (ro : @374) => @381 (@506 (@54 (@5 @358) @53) @17)) -@612 := @578 @71 -@613 := @250 @527 -@621 := @344 (@530 @579 @67) (@352 (@68 (@65 @232) @67)) -@623 := @500 (@362 @71) -@625 := @502 @549 @130 -@626 := @377 @71 -@645 := {o : @284} -> - (hB : @495) -> - (hfn : @526) -> - (hwt : @613) -> - (hbind : @621) -> - (hF : @623) -> - (hA : @625) -> - (hne : @372) -> @375 (fun (ro : @374) => @376 (@626 @142 @17) (@506 (@54 (@5 @335) @53) @17)) -@646 := @612 @273 -@647 := @258 @527 -@655 := @344 (@530 @249 @67) (@352 (@68 (@65 @215) @67)) -@656 := @502 @544 -@657 := @272 @128 -@658 := @656 @657 -@659 := @272 @136 -@677 := (hB : @495) -> - (hfn : @526) -> - (hwt : @647) -> - (hbind : @655) -> - (hF : @623) -> - (hA : @658) -> - (hne : @285 @659 @290) -> @375 (fun (ro : @374) => @376 (@626 (@272 @309) @17) (@506 @556 @17)) -@678 := @646 @96 -@679 := @266 @527 -@687 := @344 (@530 @257 @67) (@352 (@68 (@65 @229) @67)) -@688 := @502 @579 -@689 := @272 @130 -@707 := (hfn : @526) -> - (hwt : @679) -> - (hbind : @687) -> - (hF : @623) -> - (hA : @688 @689) -> - (hne : @285 @657 @290) -> @375 (fun (ro : @374) => @376 (@626 (@272 @142) @17) (@506 @592 @17)) -@708 := Eq.refl.{1} -@711 := @678 (@708 @318 @496) -@712 := @270 @527 -@720 := @344 (@530 @265 @67) (@352 (@68 (@65 @244) @67)) -@721 := @502 @249 -@722 := @272 @132 -@738 := (hwt : @712) -> - (hbind : @720) -> - (hF : @623) -> - (hA : @721 @722) -> - (hne : @285 @689 @290) -> @375 (fun (ro : @374) => @376 (@626 @659 @17) (@506 @549 @17)) -@739 := @711 @269 -@741 := @530 @56 @67 -@744 := @344 @741 (@352 @70) -@745 := @502 @257 -@746 := @272 @12 -@761 := (hbind : @744) -> - (hF : @623) -> - (hA : @745 @746) -> - (hne : @285 @722 @290) -> @375 (fun (ro : @374) => @376 (@626 @657 @17) (@506 @544 @17)) -@764 := @739 (@708 @343 @741) -@765 := @502 @265 -@766 := @272 @14 -@780 := (hF : @623) -> - (hA : @765 @766) -> - (hne : @285 @746 @290) -> @375 (fun (ro : @374) => @376 (@626 @689 @17) (@506 @579 @17)) -@783 := @764 (@708 @355 @499) -@797 := (hA : @502 @56 @273) -> - (hne : @285 @766 @290) -> @375 (fun (ro : @374) => @376 (@626 @722 @17) (@506 @249 @17)) -@798 := @783 @281 -@809 := (hne : @285 @273 @290) -> @375 (fun (ro : @374) => @376 (@626 @746 @17) (@506 @257 @17)) -@810 := @798 @302 -@816 := @376 (@626 @766 @17) (@506 @265 @17) -@818 := @375 (fun (ro : @374) => @816) -@820 := @375 (fun (__e_ro : @374) => @816) -@824 := LexLeanPreservation.Rust.RepresentableL (@54 @18 @53) -@825 := (__e_hrep : @824) -> @820 -@826 := fun (__e_hrep : @824) => @810 -@827 := (raw : @3) -> @825 -@828 := fun (raw : @3) => @826 -\end{coremodule} -\end{lexlean} diff --git a/bootstrap/expected/verify/preserve/LexLeanPreserve/Cadb40bbfc73b1dc6b7a95dab0c348a27/R0/RustStd.lean b/bootstrap/expected/verify/preserve/LexLeanPreserve/Cadb40bbfc73b1dc6b7a95dab0c348a27/R0/RustStd.lean deleted file mode 100644 index cbce92caa..000000000 --- a/bootstrap/expected/verify/preserve/LexLeanPreserve/Cadb40bbfc73b1dc6b7a95dab0c348a27/R0/RustStd.lean +++ /dev/null @@ -1,99 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0], types := [.bytes], result := .bool, - body := (.prim .natEq [(.second (.first (.call 1 [(.closure 2 [(.var 0)]), (.prim .length [(.var 0)]), (.build .pair (.pair .nat .nat) [(.value .nat (.nat 0)), (.value .nat (.nat 0))])]))), (.value .nat (.nat 1))]) }, - { parameters := [0, 1, 2], types := [(.fn [(.pair .nat .nat)] (.option (.pair .nat .nat))), .nat, (.pair .nat .nat)], result := (.pair (.pair .nat .nat) .bool), - body := (.«match» (.pair (.pair .nat .nat) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.pair .nat .nat) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.pair .nat .nat) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.pair .nat .nat) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 1 [(.var 0), (.var 3), (.var 4)]))]))]) }, - { parameters := [0, 1], types := [.bytes, (.pair .nat .nat)], result := (.option (.pair .nat .nat)), - body := (.call 3 [(.var 0), (.var 1)]) }, - { parameters := [0, 1], types := [.bytes, (.pair .nat .nat)], result := (.option (.pair .nat .nat)), - body := (.cond (.prim .natEq [(.second (.var 1)), (.value .nat (.nat 2))]) (.build .none (.option (.pair .nat .nat)) []) (.«match» (.option (.pair .nat .nat)) (.call 4 [(.var 0), (.first (.var 1))]) [(.arm .some [2] (.build .some (.option (.pair .nat .nat)) [(.build .pair (.pair .nat .nat) [(.prim .natAdd [(.first (.var 1)), (.value .nat (.nat 1))]), (.call 5 [(.second (.var 1)), (.var 2)])])])), (.arm .none [] (.build .none (.option (.pair .nat .nat)) []))])) }, - { parameters := [0, 1], types := [.bytes, .nat], result := (.option (.fixed .u8)), - body := (.prim .index [(.var 0), (.var 1)]) }, - { parameters := [0, 1], types := [.nat, (.fixed .u8)], result := .nat, - body := (.cond (.prim .natEq [(.var 0), (.value .nat (.nat 2))]) (.value .nat (.nat 2)) (.cond (.prim .equal [(.var 1), (.value (.fixed .u8) (.u8 46))]) (.cond (.prim .natEq [(.var 0), (.value .nat (.nat 1))]) (.value .nat (.nat 0)) (.value .nat (.nat 2))) (.cond (.call 6 [(.var 1)]) (.value .nat (.nat 1)) (.cond (.prim .natEq [(.var 0), (.value .nat (.nat 1))]) (.cond (.call 7 [(.var 1)]) (.value .nat (.nat 1)) (.value .nat (.nat 2))) (.value .nat (.nat 2)))))) }, - { parameters := [0], types := [(.fixed .u8)], result := .bool, - body := (.cond (.call 8 [(.var 0), (.value (.fixed .u8) (.u8 65)), (.value (.fixed .u8) (.u8 90))]) (.build .true .bool []) (.cond (.call 8 [(.var 0), (.value (.fixed .u8) (.u8 97)), (.value (.fixed .u8) (.u8 122))]) (.build .true .bool []) (.prim .equal [(.var 0), (.value (.fixed .u8) (.u8 95))]))) }, - { parameters := [0], types := [(.fixed .u8)], result := .bool, - body := (.cond (.call 6 [(.var 0)]) (.build .true .bool []) (.cond (.call 8 [(.var 0), (.value (.fixed .u8) (.u8 48)), (.value (.fixed .u8) (.u8 57))]) (.build .true .bool []) (.cond (.prim .equal [(.var 0), (.value (.fixed .u8) (.u8 63))]) (.build .true .bool []) (.prim .equal [(.var 0), (.value (.fixed .u8) (.u8 39))])))) }, - { parameters := [0, 1, 2], types := [(.fixed .u8), (.fixed .u8), (.fixed .u8)], result := .bool, - body := (.«match» .bool (.prim .checkedSub [(.var 0), (.var 1)]) [(.arm .some [3] (.«match» .bool (.prim .checkedSub [(.var 2), (.var 0)]) [(.arm .some [4] (.build .true .bool [])), (.arm .none [] (.build .false .bool []))])), (.arm .none [] (.build .false .bool []))]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.enum (.fn 0) [{ number := 2, fields := [.bytes] }]), - (.apply 0 [(.pair .nat .nat)] (.option (.pair .nat .nat)) true [{ function := 2, captures := [.clone], functionFallible := true }]), - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] (.fallible .bool) (.mk [(.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 1))]) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.call (.function 1) [(.construct (.closure 0 2) [(.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 3))] false))), (.pair (.lit (.nat 0)) (.lit (.nat 0)))] true))] (.move (.generated .part 2)))))] (.move (.generated .part 1))))), (.mk (.bind (.generated .operand 5)) none (.lit (.nat 1)))] (.succeed (.call (.runtime .natEq) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false)))), - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := (.pair .nat .nat) }] (.fallible (.pair (.pair .nat .nat) .bool)) (.mk [(.mk (.bind (.generated .holder 6)) none (.copy (.generated .binding 1)))] (.cond (.isZero (.generated .holder 6)) (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 6))), (.mk (.bind (.generated .holder 8)) none (.block (.mk [(.mk (.bind (.generated .callee 7)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 7) [(.copy (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 8)) [(.mk .none (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 1) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)))]))))), - (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := (.pair .nat .nat) }] (.fallible (.option (.pair .nat .nat))) (.mk [] (.call (.function 3) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false))), - (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := (.pair .nat .nat) }] (.fallible (.option (.pair .nat .nat))) (.mk [(.mk (.bind (.generated .operand 10)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 9))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 9))))), (.mk (.bind (.generated .operand 11)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false) (.mk [] (.succeed (.construct (.none (.pair .nat .nat)) []))) (.mk [(.mk (.bind (.generated .holder 13)) none (.call (.function 4) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 12)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 12))))] false))] (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [] (.succeed (.construct (.none (.pair .nat .nat)) [])))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 14))))), (.mk (.bind (.generated .operand 16)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] true))) (.call (.function 5) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 17))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 17)))), (.copy (.generated .binding 2))] false))]))))]))))), - (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.option (.fixed .u8)) (.mk [(.mk (.bind (.generated .operand 18)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 19)) none (.copy (.generated .binding 1)))] (.call (.runtime .indexBytes) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false))), - (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := (.fixed .u8) }] .nat (.mk [(.mk (.bind (.generated .operand 20)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 21)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 20)), (.move (.generated .operand 21))] false) (.mk [] (.lit (.nat 2))) (.mk [(.mk (.bind (.generated .operand 22)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 23)) none (.lit (.fixed .u8 46)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 22)), (.move (.generated .operand 23))] false) (.mk [(.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 25)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 24)), (.move (.generated .operand 25))] false) (.mk [] (.lit (.nat 0))) (.mk [] (.lit (.nat 2))))) (.mk [] (.cond (.call (.function 6) [(.copy (.generated .binding 1))] false) (.mk [] (.lit (.nat 1))) (.mk [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] false) (.mk [] (.cond (.call (.function 7) [(.copy (.generated .binding 1))] false) (.mk [] (.lit (.nat 1))) (.mk [] (.lit (.nat 2))))) (.mk [] (.lit (.nat 2)))))))))))), - (.function (.generated .function 6) [{ pattern := (.bind (.generated .binding 0)), type := (.fixed .u8) }] .bool (.mk [] (.cond (.call (.function 8) [(.copy (.generated .binding 0)), (.lit (.fixed .u8 65)), (.lit (.fixed .u8 90))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 8) [(.copy (.generated .binding 0)), (.lit (.fixed .u8 97)), (.lit (.fixed .u8 122))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 28)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 29)) none (.lit (.fixed .u8 95)))] (.call (.runtime .equal) [(.move (.generated .operand 28)), (.move (.generated .operand 29))] false))))))), - (.function (.generated .function 7) [{ pattern := (.bind (.generated .binding 0)), type := (.fixed .u8) }] .bool (.mk [] (.cond (.call (.function 6) [(.copy (.generated .binding 0))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 8) [(.copy (.generated .binding 0)), (.lit (.fixed .u8 48)), (.lit (.fixed .u8 57))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 30)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 31)) none (.lit (.fixed .u8 63)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 33)) none (.lit (.fixed .u8 39)))] (.call (.runtime .equal) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] false))))))))), - (.function (.generated .function 8) [{ pattern := (.bind (.generated .binding 0)), type := (.fixed .u8) }, { pattern := (.bind (.generated .binding 1)), type := (.fixed .u8) }, { pattern := (.bind (.generated .binding 2)), type := (.fixed .u8) }] .bool (.mk [(.mk (.bind (.generated .holder 36)) none (.block (.mk [(.mk (.bind (.generated .operand 34)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 35)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedSub .u8)) [(.move (.generated .operand 34)), (.move (.generated .operand 35))] false))))] (.matchOn (.move (.generated .holder 36)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some .wild) (.mk [(.mk (.bind (.generated .holder 39)) none (.block (.mk [(.mk (.bind (.generated .operand 37)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 38)) none (.copy (.generated .binding 0)))] (.call (.runtime (.checkedSub .u8)) [(.move (.generated .operand 37)), (.move (.generated .operand 38))] false))))] (.matchOn (.move (.generated .holder 39)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some .wild) (.mk [] (.lit (.bool true))))])))])))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [(([(.pair .nat .nat)], (.option (.pair .nat .nat))), true)] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 1))]) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.call (.function 1) [(.construct (.closure 0 2) [(.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 3))] false))), (.pair (.lit (.nat 0)) (.lit (.nat 0)))] true))] (.move (.generated .part 2)))))] (.move (.generated .part 1))))), (.mk (.bind (.generated .operand 5)) none (.lit (.nat 1)))], (.succeed (.call (.runtime .natEq) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false)), [(0, .bytes, (some 0))], rfl, rfl, - (Corr.fOfB (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 1))]) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.call (.function 1) [(.construct (.closure 0 2) [(.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 3))] false))), (.pair (.lit (.nat 0)) (.lit (.nat 0)))] true))] (.move (.generated .part 2)))))]) (tail := (.move (.generated .part 1))) (Corr.second (ta := .nat) (tb := .nat) (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.call (.function 1) [(.construct (.closure 0 2) [(.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 3))] false))), (.pair (.lit (.nat 0)) (.lit (.nat 0)))] true))]) (tail := (.move (.generated .part 2))) (Corr.first (ta := (.pair .nat .nat)) (tb := .bool) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.pair .nat .nat)] (.option (.pair .nat .nat))), .nat, (.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [.bytes]) (mask := [false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 3)) none (.move (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 3))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl)) rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl))⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 6)) none (.copy (.generated .binding 1)))], (.cond (.isZero (.generated .holder 6)) (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 6))), (.mk (.bind (.generated .holder 8)) none (.block (.mk [(.mk (.bind (.generated .callee 7)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 7) [(.copy (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 8)) [(.mk .none (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 1) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)))]))), [(2, (.pair .nat .nat), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.pair .nat .nat)] (.option (.pair .nat .nat))), (some 0))], rfl, rfl, - (Corr.matchNat (sl := (some 3)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool false))))) (lb := [(.mk (.bind (.generated .holder 8)) none (.block (.mk [(.mk (.bind (.generated .callee 7)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 7) [(.copy (.generated .binding 2))] true))))]) (tb := (.matchOn (.move (.generated .holder 8)) [(.mk .none (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 1) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)))])) (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))))) (Corr.matchArms (st := (.option (.pair .nat .nat))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 7)) (some (.fn 0)) (.clone (.generated .binding 0)))]) (tail := (.apply (.generated .callee 7) [(.copy (.generated .binding 2))] true)) (Corr.apply (ps := [(.pair .nat .nat)]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (2, (.pair .nat .nat), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.pair .nat .nat)] (.option (.pair .nat .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true))))) (Corr.mCons (Γ' := [(4, (.pair .nat .nat), (some 4)), (3, .nat, (some 3)), (2, (.pair .nat .nat), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.pair .nat .nat)] (.option (.pair .nat .nat))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 1) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.pair .nat .nat)] (.option (.pair .nat .nat))), .nat, (.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))))))) rfl rfl rfl)))⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 3) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false), [(1, (.pair .nat .nat), (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.callF (ts := [.bytes, (.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)⟩⟩ - -theorem fun3 : FunOK program krate flags 3 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 10)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 9))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 9))))), (.mk (.bind (.generated .operand 11)) none (.lit (.nat 2)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false) (.mk [] (.succeed (.construct (.none (.pair .nat .nat)) []))) (.mk [(.mk (.bind (.generated .holder 13)) none (.call (.function 4) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 12)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 12))))] false))] (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [] (.succeed (.construct (.none (.pair .nat .nat)) [])))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 14))))), (.mk (.bind (.generated .operand 16)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] true))) (.call (.function 5) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 17))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 17)))), (.copy (.generated .binding 2))] false))]))))]))), [(1, (.pair .nat .nat), (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 10)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 9))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 9))))), (.mk (.bind (.generated .operand 11)) none (.lit (.nat 2)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 9))]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 9))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct (.none (.pair .nat .nat)) []))) (lb := [(.mk (.bind (.generated .holder 13)) none (.call (.function 4) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 12)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 12))))] false))]) (tb := (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [] (.succeed (.construct (.none (.pair .nat .nat)) [])))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 14))))), (.mk (.bind (.generated .operand 16)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] true))) (.call (.function 5) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 17))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 17)))), (.copy (.generated .binding 2))] false))]))))])) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.matchArms (st := (.option (.fixed .u8))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 12)), .wild]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 12))) (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.pair .nat .nat), (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.construct (.none (.pair .nat .nat)) []))) (Corr.mCons (Γ' := [(2, (.fixed .u8), (some 2)), (1, (.pair .nat .nat), (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 14))))), (.mk (.bind (.generated .operand 16)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] true))) (.call (.function 5) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 17))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 17)))), (.copy (.generated .binding 2))] false))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.pair .nat .nat)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 15)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 14))))), (.mk (.bind (.generated .operand 16)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 14))) (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 17))]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 17))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl)))⟩⟩ - -theorem fun4 : FunOK program krate flags 4 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 18)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 19)) none (.copy (.generated .binding 1)))], (.call (.runtime .indexBytes) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false), [(1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.prim (ts := [.bytes, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun5 : FunOK program krate flags 5 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 20)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 21)) none (.lit (.nat 2)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 20)), (.move (.generated .operand 21))] false) (.mk [] (.lit (.nat 2))) (.mk [(.mk (.bind (.generated .operand 22)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 23)) none (.lit (.fixed .u8 46)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 22)), (.move (.generated .operand 23))] false) (.mk [(.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 25)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 24)), (.move (.generated .operand 25))] false) (.mk [] (.lit (.nat 0))) (.mk [] (.lit (.nat 2))))) (.mk [] (.cond (.call (.function 6) [(.copy (.generated .binding 1))] false) (.mk [] (.lit (.nat 1))) (.mk [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] false) (.mk [] (.cond (.call (.function 7) [(.copy (.generated .binding 1))] false) (.mk [] (.lit (.nat 1))) (.mk [] (.lit (.nat 2))))) (.mk [] (.lit (.nat 2)))))))))), [(1, (.fixed .u8), (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 20)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 21)) none (.lit (.nat 2)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 20)), (.move (.generated .operand 21))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.nat 2))) (lb := [(.mk (.bind (.generated .operand 22)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 23)) none (.lit (.fixed .u8 46)))]) (tb := (.cond (.call (.runtime .equal) [(.move (.generated .operand 22)), (.move (.generated .operand 23))] false) (.mk [(.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 25)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 24)), (.move (.generated .operand 25))] false) (.mk [] (.lit (.nat 0))) (.mk [] (.lit (.nat 2))))) (.mk [] (.cond (.call (.function 6) [(.copy (.generated .binding 1))] false) (.mk [] (.lit (.nat 1))) (.mk [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] false) (.mk [] (.cond (.call (.function 7) [(.copy (.generated .binding 1))] false) (.mk [] (.lit (.nat 1))) (.mk [] (.lit (.nat 2))))) (.mk [] (.lit (.nat 2))))))))) (Corr.bOfE (Corr.value rfl rfl)) (Corr.cond (lc := [(.mk (.bind (.generated .operand 22)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 23)) none (.lit (.fixed .u8 46)))]) (ce := (.call (.runtime .equal) [(.move (.generated .operand 22)), (.move (.generated .operand 23))] false)) (lk := []) (Corr.prim (ts := [(.fixed .u8), (.fixed .u8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 25)) none (.lit (.nat 1)))]) (ta := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 24)), (.move (.generated .operand 25))] false) (.mk [] (.lit (.nat 0))) (.mk [] (.lit (.nat 2))))) (lb := []) (tb := (.cond (.call (.function 6) [(.copy (.generated .binding 1))] false) (.mk [] (.lit (.nat 1))) (.mk [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] false) (.mk [] (.cond (.call (.function 7) [(.copy (.generated .binding 1))] false) (.mk [] (.lit (.nat 1))) (.mk [] (.lit (.nat 2))))) (.mk [] (.lit (.nat 2))))))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 25)) none (.lit (.nat 1)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 24)), (.move (.generated .operand 25))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.nat 0))) (lb := []) (tb := (.lit (.nat 2))) (Corr.bOfE (Corr.value rfl rfl)) (Corr.bOfE (Corr.value rfl rfl)))) (Corr.cond (lc := []) (ce := (.call (.function 6) [(.copy (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [(.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.nat 1))) (lb := [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))]) (tb := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] false) (.mk [] (.cond (.call (.function 7) [(.copy (.generated .binding 1))] false) (.mk [] (.lit (.nat 1))) (.mk [] (.lit (.nat 2))))) (.mk [] (.lit (.nat 2))))) (Corr.bOfE (Corr.value rfl rfl)) (Corr.cond (lc := [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 7) [(.copy (.generated .binding 1))] false) (.mk [] (.lit (.nat 1))) (.mk [] (.lit (.nat 2))))) (lb := []) (tb := (.lit (.nat 2))) (Corr.cond (lc := []) (ce := (.call (.function 7) [(.copy (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [(.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.nat 1))) (lb := []) (tb := (.lit (.nat 2))) (Corr.bOfE (Corr.value rfl rfl)) (Corr.bOfE (Corr.value rfl rfl)))) (Corr.bOfE (Corr.value rfl rfl))))))))))⟩⟩ - -theorem fun6 : FunOK program krate flags 6 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 8) [(.copy (.generated .binding 0)), (.lit (.fixed .u8 65)), (.lit (.fixed .u8 90))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 8) [(.copy (.generated .binding 0)), (.lit (.fixed .u8 97)), (.lit (.fixed .u8 122))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 28)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 29)) none (.lit (.fixed .u8 95)))] (.call (.runtime .equal) [(.move (.generated .operand 28)), (.move (.generated .operand 29))] false))))), [(0, (.fixed .u8), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 8) [(.copy (.generated .binding 0)), (.lit (.fixed .u8 65)), (.lit (.fixed .u8 90))] false)) (lk := []) (Corr.callOps (ts := [(.fixed .u8), (.fixed .u8), (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := []) (tb := (.cond (.call (.function 8) [(.copy (.generated .binding 0)), (.lit (.fixed .u8 97)), (.lit (.fixed .u8 122))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 28)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 29)) none (.lit (.fixed .u8 95)))] (.call (.runtime .equal) [(.move (.generated .operand 28)), (.move (.generated .operand 29))] false)))) (Corr.bOfE (Corr.buildConst rfl)) (Corr.cond (lc := []) (ce := (.call (.function 8) [(.copy (.generated .binding 0)), (.lit (.fixed .u8 97)), (.lit (.fixed .u8 122))] false)) (lk := []) (Corr.callOps (ts := [(.fixed .u8), (.fixed .u8), (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 28)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 29)) none (.lit (.fixed .u8 95)))]) (tb := (.call (.runtime .equal) [(.move (.generated .operand 28)), (.move (.generated .operand 29))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.prim (ts := [(.fixed .u8), (.fixed .u8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)))))⟩⟩ - -theorem fun7 : FunOK program krate flags 7 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 6) [(.copy (.generated .binding 0))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 8) [(.copy (.generated .binding 0)), (.lit (.fixed .u8 48)), (.lit (.fixed .u8 57))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 30)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 31)) none (.lit (.fixed .u8 63)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 33)) none (.lit (.fixed .u8 39)))] (.call (.runtime .equal) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] false))))))), [(0, (.fixed .u8), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 6) [(.copy (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := []) (tb := (.cond (.call (.function 8) [(.copy (.generated .binding 0)), (.lit (.fixed .u8 48)), (.lit (.fixed .u8 57))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 30)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 31)) none (.lit (.fixed .u8 63)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 33)) none (.lit (.fixed .u8 39)))] (.call (.runtime .equal) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] false)))))) (Corr.bOfE (Corr.buildConst rfl)) (Corr.cond (lc := []) (ce := (.call (.function 8) [(.copy (.generated .binding 0)), (.lit (.fixed .u8 48)), (.lit (.fixed .u8 57))] false)) (lk := []) (Corr.callOps (ts := [(.fixed .u8), (.fixed .u8), (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 30)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 31)) none (.lit (.fixed .u8 63)))]) (tb := (.cond (.call (.runtime .equal) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 33)) none (.lit (.fixed .u8 39)))] (.call (.runtime .equal) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] false)))) (Corr.bOfE (Corr.buildConst rfl)) (Corr.cond (lc := [(.mk (.bind (.generated .operand 30)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 31)) none (.lit (.fixed .u8 63)))]) (ce := (.call (.runtime .equal) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] false)) (lk := []) (Corr.prim (ts := [(.fixed .u8), (.fixed .u8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 33)) none (.lit (.fixed .u8 39)))]) (tb := (.call (.runtime .equal) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.prim (ts := [(.fixed .u8), (.fixed .u8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)))))))⟩⟩ - -theorem fun8 : FunOK program krate flags 8 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 36)) none (.block (.mk [(.mk (.bind (.generated .operand 34)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 35)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedSub .u8)) [(.move (.generated .operand 34)), (.move (.generated .operand 35))] false))))], (.matchOn (.move (.generated .holder 36)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some .wild) (.mk [(.mk (.bind (.generated .holder 39)) none (.block (.mk [(.mk (.bind (.generated .operand 37)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 38)) none (.copy (.generated .binding 0)))] (.call (.runtime (.checkedSub .u8)) [(.move (.generated .operand 37)), (.move (.generated .operand 38))] false))))] (.matchOn (.move (.generated .holder 39)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some .wild) (.mk [] (.lit (.bool true))))])))]), [(2, (.fixed .u8), (some 2)), (1, (.fixed .u8), (some 1)), (0, (.fixed .u8), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option (.fixed .u8))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 34)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 35)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.checkedSub .u8)) [(.move (.generated .operand 34)), (.move (.generated .operand 35))] false)) (Corr.prim (ts := [(.fixed .u8), (.fixed .u8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(2, (.fixed .u8), (some 2)), (1, (.fixed .u8), (some 1)), (0, (.fixed .u8), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(3, (.fixed .u8), none), (2, (.fixed .u8), (some 2)), (1, (.fixed .u8), (some 1)), (0, (.fixed .u8), (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .holder 39)) none (.block (.mk [(.mk (.bind (.generated .operand 37)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 38)) none (.copy (.generated .binding 0)))] (.call (.runtime (.checkedSub .u8)) [(.move (.generated .operand 37)), (.move (.generated .operand 38))] false))))]) (tail := (.matchOn (.move (.generated .holder 39)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some .wild) (.mk [] (.lit (.bool true))))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := (.option (.fixed .u8))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 37)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 38)) none (.copy (.generated .binding 0)))]) (tail := (.call (.runtime (.checkedSub .u8)) [(.move (.generated .operand 37)), (.move (.generated .operand 38))] false)) (Corr.prim (ts := [(.fixed .u8), (.fixed .u8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.fixed .u8), none), (2, (.fixed .u8), (some 2)), (1, (.fixed .u8), (some 1)), (0, (.fixed .u8), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, (.fixed .u8), none), (3, (.fixed .u8), none), (2, (.fixed .u8), (some 2)), (1, (.fixed .u8), (some 1)), (0, (.fixed .u8), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | 3 => exact fun3 - | 4 => exact fun4 - | 5 => exact fun5 - | 6 => exact fun6 - | 7 => exact fun7 - | 8 => exact fun8 - | _ + 9 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.RustStd diff --git a/bootstrap/expected/verify/preserve/LexLeanPreserve/Cadb40bbfc73b1dc6b7a95dab0c348a27/R1.lean b/bootstrap/expected/verify/preserve/LexLeanPreserve/Cadb40bbfc73b1dc6b7a95dab0c348a27/R1.lean deleted file mode 100644 index 36565d664..000000000 --- a/bootstrap/expected/verify/preserve/LexLeanPreserve/Cadb40bbfc73b1dc6b7a95dab0c348a27/R1.lean +++ /dev/null @@ -1,840 +0,0 @@ -import LexLeanPreservation.Core -import LexLeanPreservation.Values -import LexLeanPreservation.Primitives -import LexLeanPreservation.Fixed -import LexLeanPreservation.Keys -import LexLeanPreservation.Templates -import LexLeanPreservation.Validate -import LexLeanBoot.AxiomOutput -import LexLeanBoot.Text -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -set_option linter.unusedVariables false -namespace LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1 - -def __prog : _root_.LexLeanTarget.TargetSyntax.Program := - { adts := [{ constructors := [[.bytes, (.option .bytes)]] }, - { constructors := [[(.list (.adt 2)), (.list .bytes)], [(.list (.adt 2)), (.list .bytes), .bytes, (.option .bytes)], [(.adt 0)]] }, - { constructors := [[.bytes, (.list .bytes), (.option .bytes)]] }], functions := (( - { parameters := [0, 1], types := [.bytes, (.list .bytes)], result := (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), - body := (.call 1 [(.call 2 [(.closure 3 []), (.build (.adt 0) (.adt 1) [(.build .nil (.list (.adt 2)) []), (.var 1)]), (.call 4 [(.var 0)])]), (.var 1)]) }) ::( - { parameters := [0, 1], types := [(.adt 1), (.list .bytes)], result := (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), - body := (.«match» (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) (.var 0) [(.arm (.adt 2) [2] (.build .error (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) [(.var 2)])), (.arm (.adt 1) [3, 4, 5, 6] (.call 5 [(.call 6 [(.call 7 [(.value .string (.string "unterminated axiom payload: "))]), (.var 5)]), (.var 6)])), (.arm (.adt 0) [7, 8] (.«let» 9 (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) (.call 5 [(.call 6 [(.call 6 [(.call 6 [(.call 7 [(.value .string (.string "expected "))]), (.call 8 [(.call 9 [(.var 1)])])]), (.call 7 [(.value .string (.string " audit records, found "))])]), (.call 8 [(.call 10 [(.var 7)])])]), (.build .none (.option .bytes) [])]) (.cond (.prim .natEq [(.call 10 [(.var 7)]), (.call 9 [(.var 1)])]) (.call 11 [(.closure 12 []), (.build .ok (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) [(.build .nil (.list (.pair .bytes (.list .bytes))) [])]), (.call 13 [(.var 7)])]) (.var 9))))]) }) ::( - { parameters := [0, 1, 2], types := [(.fn [(.adt 1), .bytes] (.adt 1)), (.adt 1), (.list .bytes)], result := (.adt 1), - body := (.«match» (.adt 1) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 2 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }) ::( - { parameters := [0, 1], types := [(.adt 1), .bytes], result := (.adt 1), - body := (.call 14 [(.var 0), (.var 1)]) }) ::( - { parameters := [0], types := [.bytes], result := (.list .bytes), - body := (.«let» 1 .nat (.prim .length [(.var 0)]) (.«let» 2 (.pair .nat (.pair .nat (.list .bytes))) (.first (.call 15 [(.closure 16 [(.var 0)]), (.var 1), (.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.value .nat (.nat 0)), (.build .pair (.pair .nat (.list .bytes)) [(.value .nat (.nat 0)), (.build .nil (.list .bytes) [])])])])) (.«let» 3 .nat (.first (.second (.var 2))) (.«let» 4 (.list .bytes) (.second (.second (.var 2))) (.cond (.prim .natLt [(.var 3), (.var 1)]) (.call 17 [(.build .cons (.list .bytes) [(.call 18 [(.var 0), (.var 3), (.prim .natSub [(.var 1), (.var 3)])]), (.var 4)])]) (.call 17 [(.var 4)])))))) }) ::( - { parameters := [0, 1], types := [.bytes, (.option .bytes)], result := (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), - body := (.build .error (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) [(.call 19 [(.var 0), (.var 1)])]) }) ::( - { parameters := [0, 1], types := [.bytes, .bytes], result := .bytes, - body := (.prim .append [(.var 0), (.var 1)]) }) ::( - { parameters := [0], types := [.string], result := .bytes, - body := (.prim .utf8Encode [(.var 0)]) }) ::( - { parameters := [0], types := [.nat], result := .bytes, - body := (.«let» 1 .bytes (.call 7 [(.value .string (.string "0"))]) (.«let» 2 .bytes (.call 20 [(.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 10000000000000000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 1000000000000000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 100000000000000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 10000000000000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 1000000000000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 100000000000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 10000000000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 1000000000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 100000000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 10000000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 1000000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 100000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 10000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 1000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 100000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 10000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 1000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 100))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 10))]), (.call 21 [(.var 0), (.value .nat (.nat 1))])])])])])])])])])])])])])])])])])])])])]) (.cond (.prim .natEq [(.var 0), (.value .nat (.nat 0))]) (.var 1) (.var 2)))) }) ::( - { parameters := [0], types := [(.list .bytes)], result := .nat, - body := (.call 22 [(.closure 23 []), (.value .nat (.nat 0)), (.var 0)]) }) ::( - { parameters := [0], types := [(.list (.adt 2))], result := .nat, - body := (.call 24 [(.closure 25 []), (.value .nat (.nat 0)), (.var 0)]) }) ::( - { parameters := [0, 1, 2], types := [(.fn [(.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (.adt 2)] (.result (.list (.pair .bytes (.list .bytes))) (.adt 0))), (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (.list (.adt 2))], result := (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), - body := (.«match» (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 11 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }) ::( - { parameters := [0, 1], types := [(.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (.adt 2)], result := (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), - body := (.call 26 [(.var 0), (.var 1)]) }) ::( - { parameters := [0], types := [(.list (.adt 2))], result := (.list (.adt 2)), - body := (.call 27 [(.closure 28 []), (.build .nil (.list (.adt 2)) []), (.var 0)]) }) ::( - { parameters := [0, 1], types := [(.adt 1), .bytes], result := (.adt 1), - body := (.«match» (.adt 1) (.var 0) [(.arm (.adt 2) [2] (.var 0)), (.arm (.adt 1) [3, 4, 5, 6] (.«match» (.adt 1) (.call 29 [(.var 1)]) [(.arm .some [7] (.call 30 [(.var 3), (.var 4), (.call 6 [(.call 6 [(.var 5), (.call 7 [(.value .string (.string " "))])]), (.var 7)]), (.var 6)])), (.arm .none [] (.call 31 [(.call 6 [(.call 7 [(.value .string (.string "unterminated axiom payload: "))]), (.var 5)]), (.var 6)]))])), (.arm (.adt 0) [8, 9] (.cond (.prim .natEq [(.value .nat (.nat 0)), (.prim .length [(.call 32 [(.var 1)])])]) (.var 0) (.«match» (.adt 1) (.call 33 [(.call 32 [(.var 1)])]) [(.arm .some [10] (.call 30 [(.var 8), (.var 9), (.var 10), (.call 34 [(.var 9)])])), (.arm .none [] (.call 31 [(.call 6 [(.call 7 [(.value .string (.string "unrecognized audit line: "))]), (.call 32 [(.var 1)])]), (.call 34 [(.var 9)])]))])))]) }) ::( - { parameters := [0, 1, 2], types := [(.fn [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes))))), .nat, (.pair .nat (.pair .nat (.list .bytes)))], result := (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool), - body := (.«match» (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 15 [(.var 0), (.var 3), (.var 4)]))]))]) }) ::( - { parameters := [0, 1], types := [.bytes, (.pair .nat (.pair .nat (.list .bytes)))], result := (.option (.pair .nat (.pair .nat (.list .bytes)))), - body := (.call 35 [(.var 0), (.var 1)]) }) ::( - { parameters := [0], types := [(.list .bytes)], result := (.list .bytes), - body := (.call 36 [(.closure 37 []), (.build .nil (.list .bytes) []), (.var 0)]) }) ::( - { parameters := [0, 1, 2], types := [.bytes, .nat, .nat], result := .bytes, - body := (.«match» .bytes (.prim .slice [(.var 0), (.var 1), (.var 2)]) [(.arm .some [3] (.var 3)), (.arm .none [] (.value .bytes (.bytes (ByteArray.mk #[]))))]) }) ::( - { parameters := [0, 1], types := [.bytes, (.option .bytes)], result := (.adt 0), - body := (.build (.adt 0) (.adt 0) [(.var 0), (.var 1)]) }) ::( - { parameters := [0], types := [.bytes], result := .bytes, - body := (.«let» 1 .nat (.first (.call 38 [(.closure 39 [(.var 0)]), (.prim .length [(.var 0)]), (.value .nat (.nat 0))])) (.call 18 [(.var 0), (.var 1), (.prim .natSub [(.prim .length [(.var 0)]), (.var 1)])])) }) ::( - { parameters := [0, 1], types := [.nat, .nat], result := .bytes, - body := (.call 18 [(.call 7 [(.value .string (.string "0123456789"))]), (.prim .natRem [(.prim .natQuot [(.var 0), (.var 1), (.value .nat (.nat 0))]), (.value .nat (.nat 10)), (.value .nat (.nat 0))]), (.value .nat (.nat 1))]) }) ::( - { parameters := [0, 1, 2], types := [(.fn [.nat, .bytes] .nat), .nat, (.list .bytes)], result := .nat, - body := (.«match» .nat (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 22 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }) ::( - { parameters := [0, 1], types := [.nat, .bytes], result := .nat, - body := (.prim .natAdd [(.var 0), (.value .nat (.nat 1))]) }) ::( - { parameters := [0, 1, 2], types := [(.fn [.nat, (.adt 2)] .nat), .nat, (.list (.adt 2))], result := .nat, - body := (.«match» .nat (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 24 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }) ::( - { parameters := [0, 1], types := [.nat, (.adt 2)], result := .nat, - body := (.prim .natAdd [(.var 0), (.value .nat (.nat 1))]) }) ::( - { parameters := [0, 1], types := [(.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (.adt 2)], result := (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), - body := (.«match» (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) (.var 0) [(.arm .error [2] (.var 0)), (.arm .ok [3] (.«let» 5 .bytes (.«match» .bytes (.field (.var 1) 2) [(.arm .some [4] (.var 4)), (.arm .none [] (.value .bytes (.bytes (ByteArray.mk #[]))))]) (.«let» 6 (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) (.call 5 [(.call 6 [(.call 7 [(.value .string (.string "duplicate record for "))]), (.call 40 [(.field (.var 1) 0)])]), (.build .some (.option .bytes) [(.var 5)])]) (.«let» 7 (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) (.call 5 [(.call 6 [(.call 6 [(.call 6 [(.call 7 [(.value .string (.string "expected a record for "))]), (.call 40 [(.var 5)])]), (.call 7 [(.value .string (.string ", found "))])]), (.call 40 [(.field (.var 1) 0)])]), (.build .some (.option .bytes) [(.var 5)])]) (.cond (.prim .equal [(.field (.var 1) 0), (.var 5)]) (.«match» (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) (.call 41 [(.field (.var 1) 0), (.field (.var 1) 1), (.var 3)]) [(.arm .some [8] (.build .ok (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) [(.var 8)])), (.arm .none [] (.var 6))]) (.var 7))))))]) }) ::( - { parameters := [0, 1, 2], types := [(.fn [(.list (.adt 2)), (.adt 2)] (.list (.adt 2))), (.list (.adt 2)), (.list (.adt 2))], result := (.list (.adt 2)), - body := (.«match» (.list (.adt 2)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 27 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }) ::( - { parameters := [0, 1], types := [(.list (.adt 2)), (.adt 2)], result := (.list (.adt 2)), - body := (.build .cons (.list (.adt 2)) [(.var 1), (.var 0)]) }) ::( - { parameters := [0], types := [.bytes], result := (.option .bytes), - body := (.«let» 1 .bytes (.call 32 [(.var 0)]) (.cond (.call 42 [(.var 0)]) (.cond (.prim .natEq [(.value .nat (.nat 0)), (.prim .length [(.var 1)])]) (.build .none (.option .bytes) []) (.build .some (.option .bytes) [(.var 1)])) (.build .none (.option .bytes) []))) }) ::( - { parameters := [0, 1, 2, 3], types := [(.list (.adt 2)), (.list .bytes), .bytes, (.option .bytes)], result := (.adt 1), - body := (.cond (.call 43 [(.var 2)]) (.«match» (.adt 1) (.call 44 [(.var 2)]) [(.arm .error [4] (.call 31 [(.var 4), (.var 3)])), (.arm .ok [5] (.build (.adt 0) (.adt 1) [(.build .cons (.list (.adt 2)) [(.build (.adt 0) (.adt 2) [(.first (.var 5)), (.second (.var 5)), (.var 3)]), (.var 0)]), (.call 45 [(.var 1)])]))]) (.build (.adt 1) (.adt 1) [(.var 0), (.var 1), (.var 2), (.var 3)])) }) ::( - { parameters := [0, 1], types := [.bytes, (.option .bytes)], result := (.adt 1), - body := (.build (.adt 2) (.adt 1) [(.call 19 [(.var 0), (.var 1)])]) }) ::( - { parameters := [0], types := [.bytes], result := .bytes, - body := (.«let» 1 .nat (.call 46 [(.var 0)]) (.«let» 2 .nat (.call 47 [(.var 0), (.var 1)]) (.call 18 [(.var 0), (.var 1), (.prim .natSub [(.var 2), (.var 1)])]))) }) ::( - { parameters := [0], types := [.bytes], result := (.option .bytes), - body := (.cond (.call 48 [(.var 0), (.call 7 [(.value .string (.string "'"))])]) (.build .some (.option .bytes) [(.var 0)]) (.«match» (.option .bytes) (.call 49 [(.var 0), (.call 7 [(.value .string (.string "info: "))])]) [(.arm .some [1] (.build .some (.option .bytes) [(.var 1)])), (.arm .none [] (.call 50 [(.var 0)]))])) }) ::( - { parameters := [0], types := [(.list .bytes)], result := (.option .bytes), - body := (.«match» (.option .bytes) (.var 0) [(.arm .nil [] (.build .none (.option .bytes) [])), (.arm .cons [1, 2] (.build .some (.option .bytes) [(.var 1)]))]) }) ::( - { parameters := [0, 1], types := [.bytes, (.pair .nat (.pair .nat (.list .bytes)))], result := (.option (.pair .nat (.pair .nat (.list .bytes)))), - body := (.«let» 2 .nat (.first (.var 1)) (.«let» 3 .nat (.first (.second (.var 1))) (.«let» 4 (.list .bytes) (.second (.second (.var 1))) (.«match» (.option (.pair .nat (.pair .nat (.list .bytes)))) (.call 51 [(.var 0), (.var 2)]) [(.arm .some [5] (.cond (.prim .equal [(.var 5), (.value (.fixed .u8) (.u8 10))]) (.build .some (.option (.pair .nat (.pair .nat (.list .bytes)))) [(.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.prim .natAdd [(.var 2), (.value .nat (.nat 1))]), (.build .pair (.pair .nat (.list .bytes)) [(.prim .natAdd [(.var 2), (.value .nat (.nat 1))]), (.build .cons (.list .bytes) [(.call 52 [(.call 18 [(.var 0), (.var 3), (.prim .natSub [(.var 2), (.var 3)])])]), (.var 4)])])])]) (.build .some (.option (.pair .nat (.pair .nat (.list .bytes)))) [(.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.prim .natAdd [(.var 2), (.value .nat (.nat 1))]), (.build .pair (.pair .nat (.list .bytes)) [(.var 3), (.var 4)])])]))), (.arm .none [] (.build .none (.option (.pair .nat (.pair .nat (.list .bytes)))) []))])))) }) ::( - { parameters := [0, 1, 2], types := [(.fn [(.list .bytes), .bytes] (.list .bytes)), (.list .bytes), (.list .bytes)], result := (.list .bytes), - body := (.«match» (.list .bytes) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 36 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }) ::( - { parameters := [0, 1], types := [(.list .bytes), .bytes], result := (.list .bytes), - body := (.build .cons (.list .bytes) [(.var 1), (.var 0)]) }) ::( - { parameters := [0, 1, 2], types := [(.fn [.nat] (.option .nat)), .nat, .nat], result := (.pair .nat .bool), - body := (.«match» (.pair .nat .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair .nat .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair .nat .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair .nat .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 38 [(.var 0), (.var 3), (.var 4)]))]))]) }) ::( - { parameters := [0, 1], types := [.bytes, .nat], result := (.option .nat), - body := (.call 53 [(.var 0), (.var 1)]) }) ::( - { parameters := [0], types := [.bytes], result := .bytes, - body := (.call 6 [(.call 6 [(.call 7 [(.value .string (.string "`"))]), (.var 0)]), (.call 7 [(.value .string (.string "`"))])]) }) ::( - { parameters := [0, 1, 2], types := [.bytes, (.list .bytes), (.list (.pair .bytes (.list .bytes)))], result := (.option (.list (.pair .bytes (.list .bytes)))), - body := (.«match» (.option (.list (.pair .bytes (.list .bytes)))) (.var 2) [(.arm .nil [] (.build .some (.option (.list (.pair .bytes (.list .bytes)))) [(.build .cons (.list (.pair .bytes (.list .bytes))) [(.build .pair (.pair .bytes (.list .bytes)) [(.var 0), (.var 1)]), (.build .nil (.list (.pair .bytes (.list .bytes))) [])])])), (.arm .cons [3, 4] (.cond (.prim .equal [(.var 0), (.first (.var 3))]) (.build .none (.option (.list (.pair .bytes (.list .bytes)))) []) (.cond (.call 54 [(.var 0), (.first (.var 3))]) (.build .some (.option (.list (.pair .bytes (.list .bytes)))) [(.build .cons (.list (.pair .bytes (.list .bytes))) [(.build .pair (.pair .bytes (.list .bytes)) [(.var 0), (.var 1)]), (.build .cons (.list (.pair .bytes (.list .bytes))) [(.var 3), (.var 4)])])]) (.«match» (.option (.list (.pair .bytes (.list .bytes)))) (.call 41 [(.var 0), (.var 1), (.var 4)]) [(.arm .some [5] (.build .some (.option (.list (.pair .bytes (.list .bytes)))) [(.build .cons (.list (.pair .bytes (.list .bytes))) [(.var 3), (.var 5)])])), (.arm .none [] (.build .none (.option (.list (.pair .bytes (.list .bytes)))) []))]))))]) }) ::( - { parameters := [0], types := [.bytes], result := .bool, - body := (.prim .natLt [(.value .nat (.nat 0)), (.call 55 [(.var 0), (.value .nat (.nat 0))])]) }) ::( - { parameters := [0], types := [.bytes], result := .bool, - body := (.«match» .bool (.call 56 [(.var 0), (.call 7 [(.value .string (.string "]"))])]) [(.arm .some [1] (.build .true .bool [])), (.arm .none [] (.«match» .bool (.call 56 [(.var 0), (.call 7 [(.value .string (.string " does not depend on any axioms"))])]) [(.arm .some [2] (.build .true .bool [])), (.arm .none [] (.build .false .bool []))]))]) }) ::( - { parameters := [0], types := [.bytes], result := (.result (.pair .bytes (.list .bytes)) .bytes), - body := (.«match» (.result (.pair .bytes (.list .bytes)) .bytes) (.call 49 [(.var 0), (.call 7 [(.value .string (.string "'"))])]) [(.arm .none [] (.call 57 [(.var 0)])), (.arm .some [1] (.«match» (.result (.pair .bytes (.list .bytes)) .bytes) (.call 56 [(.var 1), (.call 7 [(.value .string (.string "' does not depend on any axioms"))])]) [(.arm .some [2] (.«let» 3 (.result (.pair .bytes (.list .bytes)) .bytes) (.call 58 [(.var 2), (.build .nil (.list .bytes) [])]) (.«let» 4 (.result (.pair .bytes (.list .bytes)) .bytes) (.call 59 [(.call 60 [(.var 2)])]) (.cond (.call 61 [(.var 2)]) (.var 3) (.var 4))))), (.arm .none [] (.«match» (.result (.pair .bytes (.list .bytes)) .bytes) (.call 56 [(.var 1), (.call 7 [(.value .string (.string "]"))])]) [(.arm .some [5] (.call 62 [(.var 0), (.var 5)])), (.arm .none [] (.call 57 [(.var 0)]))]))]))]) }) ::( - { parameters := [0], types := [(.list .bytes)], result := (.list .bytes), - body := (.«match» (.list .bytes) (.var 0) [(.arm .nil [] (.build .nil (.list .bytes) [])), (.arm .cons [1, 2] (.var 2))]) }) ::( - { parameters := [0], types := [.bytes], result := .nat, - body := (.first (.call 38 [(.closure 63 [(.var 0)]), (.prim .length [(.var 0)]), (.value .nat (.nat 0))])) }) ::( - { parameters := [0, 1], types := [.bytes, .nat], result := .nat, - body := (.first (.call 38 [(.closure 64 [(.var 1), (.var 0)]), (.prim .length [(.var 0)]), (.prim .length [(.var 0)])])) }) ::( - { parameters := [0, 1], types := [.bytes, .bytes], result := .bool, - body := (.«match» .bool (.prim .slice [(.var 0), (.value .nat (.nat 0)), (.prim .length [(.var 1)])]) [(.arm .some [2] (.prim .equal [(.var 2), (.var 1)])), (.arm .none [] (.build .false .bool []))]) }) ::( - { parameters := [0, 1], types := [.bytes, .bytes], result := (.option .bytes), - body := (.cond (.call 48 [(.var 0), (.var 1)]) (.build .some (.option .bytes) [(.call 18 [(.var 0), (.prim .length [(.var 1)]), (.prim .natSub [(.prim .length [(.var 0)]), (.prim .length [(.var 1)])])])]) (.build .none (.option .bytes) [])) }) ::( - { parameters := [0], types := [.bytes], result := (.option .bytes), - body := (.«match» (.option .bytes) (.call 65 [(.var 0), (.call 7 [(.value .string (.string ":"))])]) [(.arm .some [1] (.«match» (.option .bytes) (.call 65 [(.second (.var 1)), (.call 7 [(.value .string (.string ":"))])]) [(.arm .some [2] (.«match» (.option .bytes) (.call 65 [(.second (.var 2)), (.call 7 [(.value .string (.string ":"))])]) [(.arm .some [3] (.«let» 4 .bytes (.first (.var 2)) (.«let» 5 .bytes (.first (.var 3)) (.«let» 6 .bytes (.second (.var 3)) (.«let» 7 (.option .bytes) (.call 66 [(.var 5), (.var 6)]) (.cond (.call 67 [(.var 4)]) (.var 7) (.build .none (.option .bytes) []))))))), (.arm .none [] (.build .none (.option .bytes) []))])), (.arm .none [] (.build .none (.option .bytes) []))])), (.arm .none [] (.build .none (.option .bytes) []))]) }) ::( - { parameters := [0, 1], types := [.bytes, .nat], result := (.option (.fixed .u8)), - body := (.prim .index [(.var 0), (.var 1)]) }) ::( - { parameters := [0], types := [.bytes], result := .bytes, - body := (.cond (.call 68 [(.var 0), (.value .bytes (.bytes (ByteArray.mk #[13])))]) (.call 18 [(.var 0), (.value .nat (.nat 0)), (.prim .natSub [(.prim .length [(.var 0)]), (.value .nat (.nat 1))])]) (.var 0)) }) ::( - { parameters := [0, 1], types := [.bytes, .nat], result := (.option .nat), - body := (.cond (.call 69 [(.var 0), (.var 1), (.value (.fixed .u8) (.u8 48))]) (.build .some (.option .nat) [(.prim .natAdd [(.var 1), (.value .nat (.nat 1))])]) (.build .none (.option .nat) [])) }) ::( - { parameters := [0, 1], types := [.bytes, .bytes], result := .bool, - body := (.prim .equal [(.prim .compareBytes [(.var 0), (.var 1)]), (.prim .compareBytes [(.value .bytes (.bytes (ByteArray.mk #[]))), (.value .bytes (.bytes (ByteArray.mk #[1])))])]) }) ::( - { parameters := [0, 1], types := [.bytes, .nat], result := .nat, - body := (.cond (.cond (.call 70 [(.var 0), (.var 1), (.value (.fixed .u8) (.u8 9)), (.value (.fixed .u8) (.u8 13))]) (.build .true .bool []) (.cond (.call 69 [(.var 0), (.var 1), (.value (.fixed .u8) (.u8 32))]) (.build .true .bool []) (.build .false .bool []))) (.value .nat (.nat 1)) (.cond (.call 69 [(.var 0), (.var 1), (.value (.fixed .u8) (.u8 194))]) (.cond (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 1))]), (.value (.fixed .u8) (.u8 133))]) (.build .true .bool []) (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 1))]), (.value (.fixed .u8) (.u8 160))]) (.build .true .bool []) (.build .false .bool []))) (.value .nat (.nat 2)) (.value .nat (.nat 0))) (.cond (.call 69 [(.var 0), (.var 1), (.value (.fixed .u8) (.u8 225))]) (.cond (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 1))]), (.value (.fixed .u8) (.u8 154))]) (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 2))]), (.value (.fixed .u8) (.u8 128))]) (.build .true .bool []) (.build .false .bool [])) (.build .false .bool [])) (.value .nat (.nat 3)) (.value .nat (.nat 0))) (.cond (.call 69 [(.var 0), (.var 1), (.value (.fixed .u8) (.u8 226))]) (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 1))]), (.value (.fixed .u8) (.u8 128))]) (.cond (.cond (.call 70 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 2))]), (.value (.fixed .u8) (.u8 128)), (.value (.fixed .u8) (.u8 138))]) (.build .true .bool []) (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 2))]), (.value (.fixed .u8) (.u8 168))]) (.build .true .bool []) (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 2))]), (.value (.fixed .u8) (.u8 169))]) (.build .true .bool []) (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 2))]), (.value (.fixed .u8) (.u8 175))]) (.build .true .bool []) (.build .false .bool []))))) (.value .nat (.nat 3)) (.value .nat (.nat 0))) (.cond (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 1))]), (.value (.fixed .u8) (.u8 129))]) (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 2))]), (.value (.fixed .u8) (.u8 159))]) (.build .true .bool []) (.build .false .bool [])) (.build .false .bool [])) (.value .nat (.nat 3)) (.value .nat (.nat 0)))) (.cond (.call 69 [(.var 0), (.var 1), (.value (.fixed .u8) (.u8 227))]) (.cond (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 1))]), (.value (.fixed .u8) (.u8 128))]) (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 2))]), (.value (.fixed .u8) (.u8 128))]) (.build .true .bool []) (.build .false .bool [])) (.build .false .bool [])) (.value .nat (.nat 3)) (.value .nat (.nat 0))) (.value .nat (.nat 0))))))) }) ::( - { parameters := [0, 1], types := [.bytes, .bytes], result := (.option .bytes), - body := (.cond (.call 68 [(.var 0), (.var 1)]) (.build .some (.option .bytes) [(.call 18 [(.var 0), (.value .nat (.nat 0)), (.prim .natSub [(.prim .length [(.var 0)]), (.prim .length [(.var 1)])])])]) (.build .none (.option .bytes) [])) }) ::( - { parameters := [0], types := [.bytes], result := (.result (.pair .bytes (.list .bytes)) .bytes), - body := (.call 59 [(.call 6 [(.call 7 [(.value .string (.string "unrecognized axiom payload: "))]), (.var 0)])]) }) ::( - { parameters := [0, 1], types := [.bytes, (.list .bytes)], result := (.result (.pair .bytes (.list .bytes)) .bytes), - body := (.build .ok (.result (.pair .bytes (.list .bytes)) .bytes) [(.build .pair (.pair .bytes (.list .bytes)) [(.var 0), (.var 1)])]) }) ::( - { parameters := [0], types := [.bytes], result := (.result (.pair .bytes (.list .bytes)) .bytes), - body := (.build .error (.result (.pair .bytes (.list .bytes)) .bytes) [(.var 0)]) }) ::( - { parameters := [0], types := [.bytes], result := .bytes, - body := (.call 6 [(.call 40 [(.var 0)]), (.call 7 [(.value .string (.string " is not a Lean name"))])]) }) ::( - { parameters := [0], types := [.bytes], result := .bool, - body := (.prim .natEq [(.second (.first (.call 71 [(.closure 72 [(.var 0)]), (.prim .length [(.var 0)]), (.build .pair (.pair .nat .nat) [(.value .nat (.nat 0)), (.value .nat (.nat 0))])]))), (.value .nat (.nat 1))]) }) ::( - { parameters := [0, 1], types := [.bytes, .bytes], result := (.result (.pair .bytes (.list .bytes)) .bytes), - body := (.«match» (.result (.pair .bytes (.list .bytes)) .bytes) (.call 73 [(.var 1), (.call 7 [(.value .string (.string "' depends on axioms: ["))])]) [(.arm .some [2] (.«let» 3 .bytes (.first (.var 2)) (.«let» 4 .bytes (.second (.var 2)) (.«let» 5 (.result (.pair .bytes (.list .bytes)) .bytes) (.call 74 [(.var 3), (.var 4)]) (.«let» 6 (.result (.pair .bytes (.list .bytes)) .bytes) (.call 59 [(.call 60 [(.var 3)])]) (.cond (.call 61 [(.var 3)]) (.var 5) (.var 6))))))), (.arm .none [] (.call 57 [(.var 0)]))]) }) ::( - { parameters := [0, 1], types := [.bytes, .nat], result := (.option .nat), - body := (.cond (.prim .natLt [(.value .nat (.nat 0)), (.call 55 [(.var 0), (.var 1)])]) (.build .some (.option .nat) [(.prim .natAdd [(.var 1), (.call 55 [(.var 0), (.var 1)])])]) (.build .none (.option .nat) [])) }) ::( - { parameters := [0, 1, 2], types := [.nat, .bytes, .nat], result := (.option .nat), - body := (.cond (.cond (.prim .natLt [(.value .nat (.nat 0)), (.call 75 [(.var 1), (.var 2)])]) (.prim .natLe [(.prim .natAdd [(.var 0), (.call 75 [(.var 1), (.var 2)])]), (.var 2)]) (.build .false .bool [])) (.build .some (.option .nat) [(.prim .natSub [(.var 2), (.call 75 [(.var 1), (.var 2)])])]) (.build .none (.option .nat) [])) }) ::( - { parameters := [0, 1], types := [.bytes, .bytes], result := (.option (.pair .bytes .bytes)), - body := (.«match» (.option (.pair .bytes .bytes)) (.call 76 [(.var 0), (.var 1)]) [(.arm .some [2] (.build .some (.option (.pair .bytes .bytes)) [(.build .pair (.pair .bytes .bytes) [(.call 18 [(.var 0), (.value .nat (.nat 0)), (.var 2)]), (.call 18 [(.var 0), (.prim .natAdd [(.var 2), (.prim .length [(.var 1)])]), (.prim .natSub [(.prim .length [(.var 0)]), (.prim .natAdd [(.var 2), (.prim .length [(.var 1)])])])])])])), (.arm .none [] (.build .none (.option (.pair .bytes .bytes)) []))]) }) ::( - { parameters := [0, 1], types := [.bytes, .bytes], result := (.option .bytes), - body := (.«match» (.option .bytes) (.call 65 [(.var 0), (.call 7 [(.value .string (.string "-"))])]) [(.arm .some [2] (.«let» 3 .bytes (.first (.var 2)) (.«let» 4 .bytes (.second (.var 2)) (.«match» (.option .bytes) (.call 65 [(.var 1), (.call 7 [(.value .string (.string ":"))])]) [(.arm .some [5] (.«let» 6 .bytes (.first (.var 5)) (.«let» 7 .bytes (.second (.var 5)) (.«let» 8 (.option .bytes) (.call 77 [(.var 7)]) (.cond (.call 67 [(.var 3)]) (.cond (.call 67 [(.var 4)]) (.cond (.call 67 [(.var 6)]) (.var 8) (.build .none (.option .bytes) [])) (.build .none (.option .bytes) [])) (.build .none (.option .bytes) [])))))), (.arm .none [] (.build .none (.option .bytes) []))])))), (.arm .none [] (.«let» 9 (.option .bytes) (.call 77 [(.var 1)]) (.cond (.call 67 [(.var 0)]) (.var 9) (.build .none (.option .bytes) []))))]) }) ::( - { parameters := [0], types := [.bytes], result := .bool, - body := (.call 78 [(.call 32 [(.var 0)])]) }) ::( - { parameters := [0, 1], types := [.bytes, .bytes], result := .bool, - body := (.«let» 2 .nat (.prim .length [(.var 0)]) (.«let» 3 .nat (.prim .length [(.var 1)]) (.cond (.prim .natLe [(.var 3), (.var 2)]) (.«match» .bool (.prim .slice [(.var 0), (.prim .natSub [(.var 2), (.var 3)]), (.var 3)]) [(.arm .some [4] (.prim .equal [(.var 4), (.var 1)])), (.arm .none [] (.build .false .bool []))]) (.build .false .bool [])))) }) ::( - { parameters := [0, 1, 2], types := [.bytes, .nat, (.fixed .u8)], result := .bool, - body := (.«match» .bool (.call 51 [(.var 0), (.var 1)]) [(.arm .some [3] (.prim .equal [(.var 3), (.var 2)])), (.arm .none [] (.build .false .bool []))]) }) ::( - { parameters := [0, 1, 2, 3], types := [.bytes, .nat, (.fixed .u8), (.fixed .u8)], result := .bool, - body := (.«match» .bool (.call 51 [(.var 0), (.var 1)]) [(.arm .some [4] (.call 79 [(.var 4), (.var 2), (.var 3)])), (.arm .none [] (.build .false .bool []))]) }) ::( - { parameters := [0, 1, 2], types := [(.fn [(.pair .nat .nat)] (.option (.pair .nat .nat))), .nat, (.pair .nat .nat)], result := (.pair (.pair .nat .nat) .bool), - body := (.«match» (.pair (.pair .nat .nat) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.pair .nat .nat) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.pair .nat .nat) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.pair .nat .nat) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 71 [(.var 0), (.var 3), (.var 4)]))]))]) }) ::( - { parameters := [0, 1], types := [.bytes, (.pair .nat .nat)], result := (.option (.pair .nat .nat)), - body := (.call 80 [(.var 0), (.var 1)]) }) ::( - { parameters := [0, 1], types := [.bytes, .bytes], result := (.option (.pair .bytes .bytes)), - body := (.«let» 2 .nat (.prim .length [(.var 0)]) (.«let» 3 .nat (.prim .length [(.var 1)]) (.cond (.prim .natLt [(.var 2), (.var 3)]) (.build .none (.option (.pair .bytes .bytes)) []) (.«let» 4 .nat (.first (.call 38 [(.closure 81 [(.var 1), (.var 0)]), (.prim .natAdd [(.var 2), (.value .nat (.nat 1))]), (.prim .natSub [(.var 2), (.var 3)])])) (.cond (.call 82 [(.var 0), (.var 1), (.var 4)]) (.build .some (.option (.pair .bytes .bytes)) [(.build .pair (.pair .bytes .bytes) [(.call 18 [(.var 0), (.value .nat (.nat 0)), (.var 4)]), (.call 18 [(.var 0), (.prim .natAdd [(.var 4), (.var 3)]), (.prim .natSub [(.var 2), (.prim .natAdd [(.var 4), (.var 3)])])])])]) (.build .none (.option (.pair .bytes .bytes)) [])))))) }) ::( - { parameters := [0, 1], types := [.bytes, .bytes], result := (.result (.pair .bytes (.list .bytes)) .bytes), - body := (.«match» (.result (.pair .bytes (.list .bytes)) .bytes) (.call 83 [(.closure 84 []), (.build .ok (.result (.list .bytes) .bytes) [(.build .nil (.list .bytes) [])]), (.call 85 [(.var 1), (.value (.fixed .u8) (.u8 44))])]) [(.arm .error [2] (.call 59 [(.var 2)])), (.arm .ok [3] (.«match» (.result (.pair .bytes (.list .bytes)) .bytes) (.var 3) [(.arm .nil [] (.call 59 [(.call 7 [(.value .string (.string "an axiom list cannot be empty"))])])), (.arm .cons [4, 5] (.call 58 [(.var 0), (.var 3)]))]))]) }) ::( - { parameters := [0, 1], types := [.bytes, .nat], result := .nat, - body := (.cond (.prim .natEq [(.var 1), (.value .nat (.nat 0))]) (.value .nat (.nat 0)) (.cond (.prim .natEq [(.call 55 [(.var 0), (.prim .natSub [(.var 1), (.value .nat (.nat 1))])]), (.value .nat (.nat 1))]) (.value .nat (.nat 1)) (.cond (.cond (.prim .natLe [(.value .nat (.nat 2)), (.var 1)]) (.prim .natEq [(.call 55 [(.var 0), (.prim .natSub [(.var 1), (.value .nat (.nat 2))])]), (.value .nat (.nat 2))]) (.build .false .bool [])) (.value .nat (.nat 2)) (.cond (.cond (.prim .natLe [(.value .nat (.nat 3)), (.var 1)]) (.prim .natEq [(.call 55 [(.var 0), (.prim .natSub [(.var 1), (.value .nat (.nat 3))])]), (.value .nat (.nat 3))]) (.build .false .bool [])) (.value .nat (.nat 3)) (.value .nat (.nat 0)))))) }) ::( - { parameters := [0, 1], types := [.bytes, .bytes], result := (.option .nat), - body := (.«let» 2 .nat (.prim .length [(.var 0)]) (.«let» 3 .nat (.prim .length [(.var 1)]) (.«let» 4 .nat (.first (.call 38 [(.closure 86 [(.var 1), (.var 3), (.var 0), (.var 2)]), (.prim .natAdd [(.var 2), (.value .nat (.nat 1))]), (.value .nat (.nat 0))])) (.cond (.call 82 [(.var 0), (.var 1), (.var 4)]) (.build .some (.option .nat) [(.var 4)]) (.build .none (.option .nat) []))))) }) ::( - { parameters := [0], types := [.bytes], result := (.option .bytes), - body := (.«match» (.option .bytes) (.call 49 [(.var 0), (.call 7 [(.value .string (.string " "))])]) [(.arm .some [1] (.call 49 [(.var 1), (.call 7 [(.value .string (.string "info: "))])])), (.arm .none [] (.build .none (.option .bytes) []))]) }) ::( - { parameters := [0], types := [.bytes], result := .bool, - body := (.«let» 2 .bytes (.«match» .bytes (.call 49 [(.var 0), (.call 7 [(.value .string (.string "+"))])]) [(.arm .some [1] (.var 1)), (.arm .none [] (.var 0))]) (.«let» 3 .bool (.call 87 [(.call 20 [(.var 2)])]) (.cond (.prim .natLt [(.value .nat (.nat 0)), (.prim .length [(.var 2)])]) (.cond (.call 88 [(.var 2)]) (.var 3) (.build .false .bool [])) (.build .false .bool [])))) }) ::( - { parameters := [0, 1, 2], types := [(.fixed .u8), (.fixed .u8), (.fixed .u8)], result := .bool, - body := (.«match» .bool (.prim .checkedSub [(.var 0), (.var 1)]) [(.arm .some [3] (.«match» .bool (.prim .checkedSub [(.var 2), (.var 0)]) [(.arm .some [4] (.build .true .bool [])), (.arm .none [] (.build .false .bool []))])), (.arm .none [] (.build .false .bool []))]) }) ::( - { parameters := [0, 1], types := [.bytes, (.pair .nat .nat)], result := (.option (.pair .nat .nat)), - body := (.cond (.prim .natEq [(.second (.var 1)), (.value .nat (.nat 2))]) (.build .none (.option (.pair .nat .nat)) []) (.«match» (.option (.pair .nat .nat)) (.call 51 [(.var 0), (.first (.var 1))]) [(.arm .some [2] (.build .some (.option (.pair .nat .nat)) [(.build .pair (.pair .nat .nat) [(.prim .natAdd [(.first (.var 1)), (.value .nat (.nat 1))]), (.call 89 [(.second (.var 1)), (.var 2)])])])), (.arm .none [] (.build .none (.option (.pair .nat .nat)) []))])) }) ::( - { parameters := [0, 1, 2], types := [.bytes, .bytes, .nat], result := (.option .nat), - body := (.call 90 [(.var 1), (.var 0), (.var 2)]) }) ::( - { parameters := [0, 1, 2], types := [.bytes, .bytes, .nat], result := .bool, - body := (.«match» .bool (.prim .slice [(.var 0), (.var 2), (.prim .length [(.var 1)])]) [(.arm .some [3] (.prim .equal [(.var 3), (.var 1)])), (.arm .none [] (.build .false .bool []))]) }) ::( - { parameters := [0, 1, 2], types := [(.fn [(.result (.list .bytes) .bytes), .bytes] (.result (.list .bytes) .bytes)), (.result (.list .bytes) .bytes), (.list .bytes)], result := (.result (.list .bytes) .bytes), - body := (.«match» (.result (.list .bytes) .bytes) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 83 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }) ::( - { parameters := [0, 1], types := [(.result (.list .bytes) .bytes), .bytes], result := (.result (.list .bytes) .bytes), - body := (.call 91 [(.var 0), (.var 1)]) }) ::( - { parameters := [0, 1], types := [.bytes, (.fixed .u8)], result := (.list .bytes), - body := (.«let» 2 .nat (.prim .length [(.var 0)]) (.«let» 3 (.pair .nat (.pair .nat (.list .bytes))) (.first (.call 15 [(.closure 92 [(.var 1), (.var 0)]), (.var 2), (.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.value .nat (.nat 0)), (.build .pair (.pair .nat (.list .bytes)) [(.value .nat (.nat 0)), (.build .nil (.list .bytes) [])])])])) (.«let» 4 .nat (.first (.second (.var 3))) (.call 17 [(.build .cons (.list .bytes) [(.call 18 [(.var 0), (.var 4), (.prim .natSub [(.var 2), (.var 4)])]), (.second (.second (.var 3)))])])))) }) ::( - { parameters := [0, 1, 2, 3, 4], types := [.bytes, .nat, .bytes, .nat, .nat], result := (.option .nat), - body := (.cond (.call 82 [(.var 2), (.var 0), (.var 4)]) (.build .none (.option .nat) []) (.cond (.prim .natLt [(.prim .natAdd [(.var 4), (.var 1)]), (.var 3)]) (.build .some (.option .nat) [(.prim .natAdd [(.var 4), (.value .nat (.nat 1))])]) (.build .none (.option .nat) []))) }) ::( - { parameters := [0], types := [.bytes], result := .bool, - body := (.cond (.prim .natLt [(.prim .length [(.var 0)]), (.value .nat (.nat 20))]) (.build .true .bool []) (.cond (.prim .natEq [(.prim .length [(.var 0)]), (.value .nat (.nat 20))]) (.prim .boolNot [(.prim .equal [(.prim .compareBytes [(.var 0), (.call 7 [(.value .string (.string "18446744073709551615"))])]), (.prim .compareBytes [(.value .bytes (.bytes (ByteArray.mk #[1]))), (.value .bytes (.bytes (ByteArray.mk #[0])))])])]) (.build .false .bool []))) }) ::( - { parameters := [0], types := [.bytes], result := .bool, - body := (.prim .natEq [(.first (.call 38 [(.closure 93 [(.var 0)]), (.prim .length [(.var 0)]), (.value .nat (.nat 0))])), (.prim .length [(.var 0)])]) }) ::( - { parameters := [0, 1], types := [.nat, (.fixed .u8)], result := .nat, - body := (.cond (.prim .natEq [(.var 0), (.value .nat (.nat 2))]) (.value .nat (.nat 2)) (.cond (.prim .equal [(.var 1), (.value (.fixed .u8) (.u8 46))]) (.cond (.prim .natEq [(.var 0), (.value .nat (.nat 1))]) (.value .nat (.nat 0)) (.value .nat (.nat 2))) (.cond (.call 94 [(.var 1)]) (.value .nat (.nat 1)) (.cond (.prim .natEq [(.var 0), (.value .nat (.nat 1))]) (.cond (.call 95 [(.var 1)]) (.value .nat (.nat 1)) (.value .nat (.nat 2))) (.value .nat (.nat 2)))))) }) ::( - { parameters := [0, 1, 2], types := [.bytes, .bytes, .nat], result := (.option .nat), - body := (.cond (.call 82 [(.var 0), (.var 1), (.var 2)]) (.build .none (.option .nat) []) (.cond (.prim .natLt [(.value .nat (.nat 0)), (.var 2)]) (.build .some (.option .nat) [(.prim .natSub [(.var 2), (.value .nat (.nat 1))])]) (.build .none (.option .nat) []))) }) ::( - { parameters := [0, 1], types := [(.result (.list .bytes) .bytes), .bytes], result := (.result (.list .bytes) .bytes), - body := (.«match» (.result (.list .bytes) .bytes) (.var 0) [(.arm .error [2] (.var 0)), (.arm .ok [3] (.«let» 4 .bytes (.call 32 [(.var 1)]) (.cond (.call 61 [(.var 4)]) (.«match» (.result (.list .bytes) .bytes) (.call 96 [(.var 4), (.var 3)]) [(.arm .some [5] (.build .ok (.result (.list .bytes) .bytes) [(.var 5)])), (.arm .none [] (.build .error (.result (.list .bytes) .bytes) [(.call 6 [(.call 7 [(.value .string (.string "duplicate axiom name "))]), (.call 40 [(.var 4)])])]))]) (.build .error (.result (.list .bytes) .bytes) [(.call 60 [(.var 4)])]))))]) }) ::( - { parameters := [0, 1, 2], types := [(.fixed .u8), .bytes, (.pair .nat (.pair .nat (.list .bytes)))], result := (.option (.pair .nat (.pair .nat (.list .bytes)))), - body := (.call 97 [(.var 1), (.var 0), (.var 2)]) }) ::( - { parameters := [0, 1], types := [.bytes, .nat], result := (.option .nat), - body := (.call 98 [(.var 0), (.var 1)]) }) ::( - { parameters := [0], types := [(.fixed .u8)], result := .bool, - body := (.cond (.call 79 [(.var 0), (.value (.fixed .u8) (.u8 65)), (.value (.fixed .u8) (.u8 90))]) (.build .true .bool []) (.cond (.call 79 [(.var 0), (.value (.fixed .u8) (.u8 97)), (.value (.fixed .u8) (.u8 122))]) (.build .true .bool []) (.prim .equal [(.var 0), (.value (.fixed .u8) (.u8 95))]))) }) ::( - { parameters := [0], types := [(.fixed .u8)], result := .bool, - body := (.cond (.call 94 [(.var 0)]) (.build .true .bool []) (.cond (.call 79 [(.var 0), (.value (.fixed .u8) (.u8 48)), (.value (.fixed .u8) (.u8 57))]) (.build .true .bool []) (.cond (.prim .equal [(.var 0), (.value (.fixed .u8) (.u8 63))]) (.build .true .bool []) (.prim .equal [(.var 0), (.value (.fixed .u8) (.u8 39))])))) }) ::( - { parameters := [0, 1], types := [.bytes, (.list .bytes)], result := (.option (.list .bytes)), - body := (.«match» (.option (.list .bytes)) (.var 1) [(.arm .nil [] (.build .some (.option (.list .bytes)) [(.build .cons (.list .bytes) [(.var 0), (.build .nil (.list .bytes) [])])])), (.arm .cons [2, 3] (.cond (.prim .equal [(.var 0), (.var 2)]) (.build .none (.option (.list .bytes)) []) (.cond (.call 54 [(.var 0), (.var 2)]) (.build .some (.option (.list .bytes)) [(.build .cons (.list .bytes) [(.var 0), (.build .cons (.list .bytes) [(.var 2), (.var 3)])])]) (.«match» (.option (.list .bytes)) (.call 96 [(.var 0), (.var 3)]) [(.arm .some [4] (.build .some (.option (.list .bytes)) [(.build .cons (.list .bytes) [(.var 2), (.var 4)])])), (.arm .none [] (.build .none (.option (.list .bytes)) []))]))))]) }) ::( - { parameters := [0, 1, 2], types := [.bytes, (.fixed .u8), (.pair .nat (.pair .nat (.list .bytes)))], result := (.option (.pair .nat (.pair .nat (.list .bytes)))), - body := (.«let» 3 .nat (.first (.var 2)) (.«let» 4 .nat (.first (.second (.var 2))) (.«let» 5 (.list .bytes) (.second (.second (.var 2))) (.«match» (.option (.pair .nat (.pair .nat (.list .bytes)))) (.call 51 [(.var 0), (.var 3)]) [(.arm .some [6] (.cond (.prim .equal [(.var 6), (.var 1)]) (.build .some (.option (.pair .nat (.pair .nat (.list .bytes)))) [(.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.prim .natAdd [(.var 3), (.value .nat (.nat 1))]), (.build .pair (.pair .nat (.list .bytes)) [(.prim .natAdd [(.var 3), (.value .nat (.nat 1))]), (.build .cons (.list .bytes) [(.call 18 [(.var 0), (.var 4), (.prim .natSub [(.var 3), (.var 4)])]), (.var 5)])])])]) (.build .some (.option (.pair .nat (.pair .nat (.list .bytes)))) [(.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.prim .natAdd [(.var 3), (.value .nat (.nat 1))]), (.build .pair (.pair .nat (.list .bytes)) [(.var 4), (.var 5)])])]))), (.arm .none [] (.build .none (.option (.pair .nat (.pair .nat (.list .bytes)))) []))])))) }) ::( - { parameters := [0, 1], types := [.bytes, .nat], result := (.option .nat), - body := (.cond (.call 70 [(.var 0), (.var 1), (.value (.fixed .u8) (.u8 48)), (.value (.fixed .u8) (.u8 57))]) (.build .some (.option .nat) [(.prim .natAdd [(.var 1), (.value .nat (.nat 1))])]) (.build .none (.option .nat) [])) }) ::[]) } - -def __enc_0 (__s : (LexLeanBoot.AxiomOutput.Rejection)) : _root_.LexLeanTarget.TargetSyntax.Value := - _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes (__s).message), ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (__s).declaration)] - -def __enc_2 (__s : (LexLeanBoot.AxiomOutput.Record)) : _root_.LexLeanTarget.TargetSyntax.Value := - _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes (__s).declaration), ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) (__s).axioms), ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (__s).expected)] - -def __enc_1 : (LexLeanBoot.AxiomOutput.Scan) -> _root_.LexLeanTarget.TargetSyntax.Value - | LexLeanBoot.AxiomOutput.Scan.between __x0 __x1 => _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [((_root_.LexLeanPreservation.encList __enc_2) __x0), ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) __x1)] - | LexLeanBoot.AxiomOutput.Scan.inside __x0 __x1 __x2 __x3 => _root_.LexLeanTarget.TargetSyntax.Value.adt 1 [((_root_.LexLeanPreservation.encList __enc_2) __x0), ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) __x1), (_root_.LexLeanTarget.TargetSyntax.Value.bytes __x2), ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) __x3)] - | LexLeanBoot.AxiomOutput.Scan.stopped __x0 => _root_.LexLeanTarget.TargetSyntax.Value.adt 2 [(__enc_0 __x0)] - -def __fits_19 (message : ByteArray) (declaration : (Option ByteArray)) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_19 (message : ByteArray) (declaration : (Option ByteArray)) : _root_.LexLeanPreservation.FunRel __prog 19 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes message), ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) declaration)] (_root_.LexLeanPreservation.Rel (__fits_19 message declaration) (__enc_0 (LexLeanBoot.AxiomOutput.rejected message declaration))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_adt) - -def __fits_5 (message : ByteArray) (declaration : (Option ByteArray)) : Bool := - ((((Bool.true && (Bool.true && Bool.true)) && (__fits_19 (message) (declaration))) && Bool.true) && Bool.true) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.rejected in -theorem __rel_5 (message : ByteArray) (declaration : (Option ByteArray)) : _root_.LexLeanPreservation.FunRel __prog 5 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes message), ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) declaration)] (_root_.LexLeanPreservation.Rel (__fits_5 message declaration) ((_root_.LexLeanPreservation.encExcept __enc_0 (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (LexLeanBoot.AxiomOutput.refuse message declaration))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_19 (message) (declaration))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error) - -def __fits_6 (left : ByteArray) (right : ByteArray) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_6 (left : ByteArray) (right : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 6 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes left), (_root_.LexLeanTarget.TargetSyntax.Value.bytes right)] (_root_.LexLeanPreservation.Rel (__fits_6 left right) (_root_.LexLeanTarget.TargetSyntax.Value.bytes (LexLeanBoot.AxiomOutput.cat left right))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_bytes left right)) - -def __fits_7 (literal : String) : Bool := - ((Bool.true && Bool.true) && Bool.true) - -theorem __rel_7 (literal : String) : _root_.LexLeanPreservation.FunRel __prog 7 [(_root_.LexLeanTarget.TargetSyntax.Value.string literal)] (_root_.LexLeanPreservation.Rel (__fits_7 literal) (_root_.LexLeanTarget.TargetSyntax.Value.bytes (LexLeanBoot.AxiomOutput.text literal))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_utf8Encode literal)) - -def __fits_18 (subject : ByteArray) (start : Nat) (count : Nat) : Bool := - (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && Bool.true) && (match (_root_.LexLeanRuntime.slice (subject) (start) (count) : (Option ByteArray)) with | Option.some piece => Bool.true | Option.none => Bool.true)) - -theorem __rel_18 (subject : ByteArray) (start : Nat) (count : Nat) : _root_.LexLeanPreservation.FunRel __prog 18 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat start), (_root_.LexLeanTarget.TargetSyntax.Value.nat count)] (_root_.LexLeanPreservation.Rel (__fits_18 subject start count) (_root_.LexLeanTarget.TargetSyntax.Value.bytes (LexLeanBoot.Text.sliceOr subject start count))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.some piece => Bool.true | Option.none => Bool.true)) (fun (__a : (Option ByteArray)) => _root_.LexLeanTarget.TargetSyntax.Value.bytes (match __a with | Option.some piece => piece | Option.none => (ByteArray.mk #[]))) (_root_.LexLeanRuntime.slice (subject) (start) (count) : (Option ByteArray)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.prim_slice_bytes subject start count)) (fun (__a : (Option ByteArray)) _ => match __a with | Option.some piece => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value)))) - -def __fits_51 (subject : ByteArray) (position : Nat) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_51 (subject : ByteArray) (position : Nat) : _root_.LexLeanPreservation.FunRel __prog 51 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat position)] (_root_.LexLeanPreservation.Rel (__fits_51 subject position) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u8) (LexLeanBoot.Text.byteAt subject position))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_index_bytes subject position)) - -def __fits_69 (subject : ByteArray) (position : Nat) (value : UInt8) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && (__fits_51 (subject) (position))) && (match (LexLeanBoot.Text.byteAt (subject) (position)) with | Option.some byte => ((Bool.true && (Bool.true && Bool.true)) && Bool.true) | Option.none => (Bool.true && Bool.true))) - -attribute [local irreducible] LexLeanBoot.Text.byteAt in -theorem __rel_69 (subject : ByteArray) (position : Nat) (value : UInt8) : _root_.LexLeanPreservation.FunRel __prog 69 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat position), (_root_.LexLeanTarget.TargetSyntax.Value.u8 value)] (_root_.LexLeanPreservation.Rel (__fits_69 subject position value) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanBoot.AxiomOutput.byteIs subject position value))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u8) (fun (__a : (Option UInt8)) => (match __a with | Option.some byte => ((Bool.true && (Bool.true && Bool.true)) && Bool.true) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option UInt8)) => _root_.LexLeanTarget.TargetSyntax.Value.bool (match __a with | Option.some byte => (_root_.LexLeanRuntime.equal (byte) (value) : Bool) | Option.none => Bool.false)) (LexLeanBoot.Text.byteAt (subject) (position)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_51 (subject) (position))) (fun (__a : (Option UInt8)) _ => match __a with | Option.some byte => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_u8 byte value))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))))) - -def __fits_53 (subject : ByteArray) (position : Nat) : Bool := - (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_69 (subject) (position) ((48 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((48 : UInt8))) then ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.byteIs in -theorem __rel_53 (subject : ByteArray) (position : Nat) : _root_.LexLeanPreservation.FunRel __prog 53 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat position)] (_root_.LexLeanPreservation.Rel (__fits_53 subject position) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (LexLeanBoot.AxiomOutput.zeroStep subject position))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Option.some ((position + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat)))) (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((48 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_69 (subject) (position) ((48 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (1 : Nat))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_39 (digits : ByteArray) (position : Nat) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && (__fits_53 (digits) (position))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.zeroStep in -theorem __rel_39 (digits : ByteArray) (position : Nat) : _root_.LexLeanPreservation.FunRel __prog 39 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes digits), (_root_.LexLeanTarget.TargetSyntax.Value.nat position)] (_root_.LexLeanPreservation.Rel (__fits_39 digits position) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) ((LexLeanBoot.AxiomOutput.zeroStep (digits) (position))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_53 (digits) (position))) - -def __fits_20 (digits : ByteArray) : Bool := - ((((Bool.true && Bool.true) && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (digits) : Nat) 18446744073709551616)) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : Nat) => __fits_39 (digits) __p0) ((fun (position : Nat) => (LexLeanBoot.AxiomOutput.zeroStep (digits) (position)))) ((_root_.LexLeanRuntime.length (digits) : Nat)) ((0 : Nat)))) && (let zeros : Nat := ((_root_.LexLeanCollections.iterateUntil ((fun (position : Nat) => (LexLeanBoot.AxiomOutput.zeroStep (digits) (position)))) ((_root_.LexLeanRuntime.length (digits) : Nat)) ((0 : Nat)) : (Prod Nat Bool))).1; ((Bool.true && (Bool.true && (((((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (digits) : Nat) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_18 (digits) (zeros) ((_root_.LexLeanRuntime.subtract ((_root_.LexLeanRuntime.length (digits) : Nat)) (zeros) : Nat)))))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.zeroStep LexLeanBoot.Text.sliceOr in -theorem __rel_20 (digits : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 20 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes digits)] (_root_.LexLeanPreservation.Rel (__fits_20 digits) (_root_.LexLeanTarget.TargetSyntax.Value.bytes (LexLeanBoot.AxiomOutput.significant digits))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (let zeros : Nat := ((_root_.LexLeanCollections.iterateUntil ((fun (position : Nat) => (LexLeanBoot.AxiomOutput.zeroStep (digits) (position)))) ((_root_.LexLeanRuntime.length (digits) : Nat)) ((0 : Nat)) : (Prod Nat Bool))).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes digits)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterateUntil (es := _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.optEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) ((fun (position : Nat) => (LexLeanBoot.AxiomOutput.zeroStep (digits) (position)))) (fun (__p0 : Nat) => __fits_39 (digits) __p0) 39 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes digits)] (fun (__p0 : Nat) => __rel_39 (digits) __p0) (_root_.LexLeanCollections.iterateUntil ((fun (position : Nat) => (LexLeanBoot.AxiomOutput.zeroStep (digits) (position))))) (fun _ => rfl) (fun _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (p := __prog) (fi := 38) (ts := .nat) rfl ((_root_.LexLeanRuntime.length (digits) : Nat)) ((0 : Nat))))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes digits)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub (_root_.LexLeanRuntime.length (digits) : Nat) zeros)) _root_.LexLeanPreservation.convL_nil))) (__rel_18 (digits) (zeros) ((_root_.LexLeanRuntime.subtract ((_root_.LexLeanRuntime.length (digits) : Nat)) (zeros) : Nat))))) - -def __fits_21 (number : Nat) (place : Nat) : Bool := - ((((Bool.true && Bool.true) && (__fits_7 ("0123456789"))) && (((((Bool.true && (Bool.true && (Bool.true && Bool.true))) && Bool.true) && (Bool.true && (Bool.true && Bool.true))) && Bool.true) && (Bool.true && Bool.true))) && (__fits_18 ((LexLeanBoot.AxiomOutput.text ("0123456789"))) ((_root_.LexLeanRuntime.remainder ((_root_.LexLeanRuntime.quotient (number) (place) ((0 : Nat)) : Nat)) ((10 : Nat)) ((0 : Nat)) : Nat)) ((1 : Nat)))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.text LexLeanBoot.Text.sliceOr in -theorem __rel_21 (number : Nat) (place : Nat) : _root_.LexLeanPreservation.FunRel __prog 21 [(_root_.LexLeanTarget.TargetSyntax.Value.nat number), (_root_.LexLeanTarget.TargetSyntax.Value.nat place)] (_root_.LexLeanPreservation.Rel (__fits_21 number place) (_root_.LexLeanTarget.TargetSyntax.Value.bytes (LexLeanBoot.AxiomOutput.digit number place))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("0123456789"))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.prim_natQuot number place (0 : Nat))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.prim_natRem (_root_.LexLeanRuntime.quotient (number) (place) ((0 : Nat)) : Nat) (10 : Nat) (0 : Nat))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_18 ((LexLeanBoot.AxiomOutput.text ("0123456789"))) ((_root_.LexLeanRuntime.remainder ((_root_.LexLeanRuntime.quotient (number) (place) ((0 : Nat)) : Nat)) ((10 : Nat)) ((0 : Nat)) : Nat)) ((1 : Nat)))) - -def __fits_8 (number : Nat) : Bool := - (((Bool.true && Bool.true) && (__fits_7 ("0"))) && (let zero : ByteArray := (LexLeanBoot.AxiomOutput.text ("0")); (((((((Bool.true && (Bool.true && Bool.true)) && (__fits_21 (number) ((10000000000000000000 : Nat)))) && (((((Bool.true && (Bool.true && Bool.true)) && (__fits_21 (number) ((1000000000000000000 : Nat)))) && (((((Bool.true && (Bool.true && Bool.true)) && (__fits_21 (number) ((100000000000000000 : Nat)))) && (((((Bool.true && (Bool.true && Bool.true)) && (__fits_21 (number) ((10000000000000000 : Nat)))) && (((((Bool.true && (Bool.true && Bool.true)) && (__fits_21 (number) ((1000000000000000 : Nat)))) && (((((Bool.true && (Bool.true && Bool.true)) && (__fits_21 (number) ((100000000000000 : Nat)))) && (((((Bool.true && (Bool.true && Bool.true)) && (__fits_21 (number) ((10000000000000 : Nat)))) && (((((Bool.true && (Bool.true && Bool.true)) && (__fits_21 (number) ((1000000000000 : Nat)))) && (((((Bool.true && (Bool.true && Bool.true)) && (__fits_21 (number) ((100000000000 : Nat)))) && (((((Bool.true && (Bool.true && Bool.true)) && (__fits_21 (number) ((10000000000 : Nat)))) && (((((Bool.true && (Bool.true && Bool.true)) && (__fits_21 (number) ((1000000000 : Nat)))) && (((((Bool.true && (Bool.true && Bool.true)) && (__fits_21 (number) ((100000000 : Nat)))) && (((((Bool.true && (Bool.true && Bool.true)) && (__fits_21 (number) ((10000000 : Nat)))) && (((((Bool.true && (Bool.true && Bool.true)) && (__fits_21 (number) ((1000000 : Nat)))) && (((((Bool.true && (Bool.true && Bool.true)) && (__fits_21 (number) ((100000 : Nat)))) && (((((Bool.true && (Bool.true && Bool.true)) && (__fits_21 (number) ((10000 : Nat)))) && (((((Bool.true && (Bool.true && Bool.true)) && (__fits_21 (number) ((1000 : Nat)))) && (((((Bool.true && (Bool.true && Bool.true)) && (__fits_21 (number) ((100 : Nat)))) && (((((Bool.true && (Bool.true && Bool.true)) && (__fits_21 (number) ((10 : Nat)))) && (((Bool.true && (Bool.true && Bool.true)) && (__fits_21 (number) ((1 : Nat)))) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && (__fits_20 ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10 : Nat)))) ((LexLeanBoot.AxiomOutput.digit (number) ((1 : Nat)))) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)))) && (let digits : ByteArray := (LexLeanBoot.AxiomOutput.significant ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10 : Nat)))) ((LexLeanBoot.AxiomOutput.digit (number) ((1 : Nat)))) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray))); (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq number (0 : Nat)) then Bool.true else Bool.true)))))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.digit LexLeanBoot.AxiomOutput.significant LexLeanBoot.AxiomOutput.text in -theorem __rel_8 (number : Nat) : _root_.LexLeanPreservation.FunRel __prog 8 [(_root_.LexLeanTarget.TargetSyntax.Value.nat number)] (_root_.LexLeanPreservation.Rel (__fits_8 number) (_root_.LexLeanTarget.TargetSyntax.Value.bytes (LexLeanBoot.AxiomOutput.decimal number))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (let zero : ByteArray := (LexLeanBoot.AxiomOutput.text ("0")); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("0"))) (let digits : ByteArray := (LexLeanBoot.AxiomOutput.significant ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10 : Nat)))) ((LexLeanBoot.AxiomOutput.digit (number) ((1 : Nat)))) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray))); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_21 (number) ((10000000000000000000 : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_21 (number) ((1000000000000000000 : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_21 (number) ((100000000000000000 : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_21 (number) ((10000000000000000 : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_21 (number) ((1000000000000000 : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_21 (number) ((100000000000000 : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_21 (number) ((10000000000000 : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_21 (number) ((1000000000000 : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_21 (number) ((100000000000 : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_21 (number) ((10000000000 : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_21 (number) ((1000000000 : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_21 (number) ((100000000 : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_21 (number) ((10000000 : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_21 (number) ((1000000 : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_21 (number) ((100000 : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_21 (number) ((10000 : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_21 (number) ((1000 : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_21 (number) ((100 : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_21 (number) ((10 : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_21 (number) ((1 : Nat)))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_bytes (LexLeanBoot.AxiomOutput.digit (number) ((10 : Nat))) (LexLeanBoot.AxiomOutput.digit (number) ((1 : Nat))))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_bytes (LexLeanBoot.AxiomOutput.digit (number) ((100 : Nat))) (_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10 : Nat)))) ((LexLeanBoot.AxiomOutput.digit (number) ((1 : Nat)))) : ByteArray))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_bytes (LexLeanBoot.AxiomOutput.digit (number) ((1000 : Nat))) (_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10 : Nat)))) ((LexLeanBoot.AxiomOutput.digit (number) ((1 : Nat)))) : ByteArray)) : ByteArray))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_bytes (LexLeanBoot.AxiomOutput.digit (number) ((10000 : Nat))) (_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10 : Nat)))) ((LexLeanBoot.AxiomOutput.digit (number) ((1 : Nat)))) : ByteArray)) : ByteArray)) : ByteArray))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_bytes (LexLeanBoot.AxiomOutput.digit (number) ((100000 : Nat))) (_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10 : Nat)))) ((LexLeanBoot.AxiomOutput.digit (number) ((1 : Nat)))) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_bytes (LexLeanBoot.AxiomOutput.digit (number) ((1000000 : Nat))) (_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10 : Nat)))) ((LexLeanBoot.AxiomOutput.digit (number) ((1 : Nat)))) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_bytes (LexLeanBoot.AxiomOutput.digit (number) ((10000000 : Nat))) (_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10 : Nat)))) ((LexLeanBoot.AxiomOutput.digit (number) ((1 : Nat)))) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_bytes (LexLeanBoot.AxiomOutput.digit (number) ((100000000 : Nat))) (_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10 : Nat)))) ((LexLeanBoot.AxiomOutput.digit (number) ((1 : Nat)))) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_bytes (LexLeanBoot.AxiomOutput.digit (number) ((1000000000 : Nat))) (_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10 : Nat)))) ((LexLeanBoot.AxiomOutput.digit (number) ((1 : Nat)))) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_bytes (LexLeanBoot.AxiomOutput.digit (number) ((10000000000 : Nat))) (_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10 : Nat)))) ((LexLeanBoot.AxiomOutput.digit (number) ((1 : Nat)))) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_bytes (LexLeanBoot.AxiomOutput.digit (number) ((100000000000 : Nat))) (_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10 : Nat)))) ((LexLeanBoot.AxiomOutput.digit (number) ((1 : Nat)))) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_bytes (LexLeanBoot.AxiomOutput.digit (number) ((1000000000000 : Nat))) (_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10 : Nat)))) ((LexLeanBoot.AxiomOutput.digit (number) ((1 : Nat)))) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_bytes (LexLeanBoot.AxiomOutput.digit (number) ((10000000000000 : Nat))) (_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10 : Nat)))) ((LexLeanBoot.AxiomOutput.digit (number) ((1 : Nat)))) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_bytes (LexLeanBoot.AxiomOutput.digit (number) ((100000000000000 : Nat))) (_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10 : Nat)))) ((LexLeanBoot.AxiomOutput.digit (number) ((1 : Nat)))) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_bytes (LexLeanBoot.AxiomOutput.digit (number) ((1000000000000000 : Nat))) (_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10 : Nat)))) ((LexLeanBoot.AxiomOutput.digit (number) ((1 : Nat)))) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_bytes (LexLeanBoot.AxiomOutput.digit (number) ((10000000000000000 : Nat))) (_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10 : Nat)))) ((LexLeanBoot.AxiomOutput.digit (number) ((1 : Nat)))) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_bytes (LexLeanBoot.AxiomOutput.digit (number) ((100000000000000000 : Nat))) (_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10 : Nat)))) ((LexLeanBoot.AxiomOutput.digit (number) ((1 : Nat)))) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_bytes (LexLeanBoot.AxiomOutput.digit (number) ((1000000000000000000 : Nat))) (_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10 : Nat)))) ((LexLeanBoot.AxiomOutput.digit (number) ((1 : Nat)))) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_bytes (LexLeanBoot.AxiomOutput.digit (number) ((10000000000000000000 : Nat))) (_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10 : Nat)))) ((LexLeanBoot.AxiomOutput.digit (number) ((1 : Nat)))) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray))) _root_.LexLeanPreservation.convL_nil) (__rel_20 ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((1000 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((100 : Nat)))) ((_root_.LexLeanRuntime.append ((LexLeanBoot.AxiomOutput.digit (number) ((10 : Nat)))) ((LexLeanBoot.AxiomOutput.digit (number) ((1 : Nat)))) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)) : ByteArray)))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bytes (if __b then zero else digits)) (Nat.beq number (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq number (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_var rfl)) (fun _ => (_root_.LexLeanPreservation.conv_var rfl))))) - -def __fits_23 (count : Nat) (item : ByteArray) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (count + (1 : Nat)) 18446744073709551616)) - -theorem __rel_23 (count : Nat) (item : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 23 [(_root_.LexLeanTarget.TargetSyntax.Value.nat count), (_root_.LexLeanTarget.TargetSyntax.Value.bytes item)] (_root_.LexLeanPreservation.Rel (__fits_23 count item) (_root_.LexLeanTarget.TargetSyntax.Value.nat ((count + (1 : Nat))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd count (1 : Nat))) - -def __fits_9 (items : (List ByteArray)) : Bool := - ((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : Nat) (__p1 : ByteArray) => __fits_23 __p0 __p1) ((fun (count : Nat) (item : ByteArray) => (count + (1 : Nat)))) ((0 : Nat)) (items))) - -theorem __rel_9 (items : (List ByteArray)) : _root_.LexLeanPreservation.FunRel __prog 9 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) items)] (_root_.LexLeanPreservation.Rel (__fits_9 items) (_root_.LexLeanTarget.TargetSyntax.Value.nat (LexLeanBoot.AxiomOutput.listLength ByteArray items))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.bytes) (es := _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun _ => rfl) ((fun (count : Nat) (item : ByteArray) => (count + (1 : Nat)))) (fun (__p0 : Nat) (__p1 : ByteArray) => __fits_23 __p0 __p1) 23 [] (fun (__p0 : Nat) (__p1 : ByteArray) => __rel_23 __p0 __p1) (p := __prog) (fi := 22) (ta := .bytes) (ts := .nat) rfl ((0 : Nat)) (items))) - -def __fits_25 (count : Nat) (item : (LexLeanBoot.AxiomOutput.Record)) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (count + (1 : Nat)) 18446744073709551616)) - -theorem __rel_25 (count : Nat) (item : (LexLeanBoot.AxiomOutput.Record)) : _root_.LexLeanPreservation.FunRel __prog 25 [(_root_.LexLeanTarget.TargetSyntax.Value.nat count), (__enc_2 item)] (_root_.LexLeanPreservation.Rel (__fits_25 count item) (_root_.LexLeanTarget.TargetSyntax.Value.nat ((count + (1 : Nat))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd count (1 : Nat))) - -def __fits_10 (items : (List (LexLeanBoot.AxiomOutput.Record))) : Bool := - ((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : Nat) (__p1 : (LexLeanBoot.AxiomOutput.Record)) => __fits_25 __p0 __p1) ((fun (count : Nat) (item : (LexLeanBoot.AxiomOutput.Record)) => (count + (1 : Nat)))) ((0 : Nat)) (items))) - -theorem __rel_10 (items : (List (LexLeanBoot.AxiomOutput.Record))) : _root_.LexLeanPreservation.FunRel __prog 10 [((_root_.LexLeanPreservation.encList __enc_2) items)] (_root_.LexLeanPreservation.Rel (__fits_10 items) (_root_.LexLeanTarget.TargetSyntax.Value.nat (LexLeanBoot.AxiomOutput.listLength (LexLeanBoot.AxiomOutput.Record) items))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := __enc_2) (es := _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.listEnc __enc_2) (fun _ => rfl) ((fun (count : Nat) (item : (LexLeanBoot.AxiomOutput.Record)) => (count + (1 : Nat)))) (fun (__p0 : Nat) (__p1 : (LexLeanBoot.AxiomOutput.Record)) => __fits_25 __p0 __p1) 25 [] (fun (__p0 : Nat) (__p1 : (LexLeanBoot.AxiomOutput.Record)) => __rel_25 __p0 __p1) (p := __prog) (fi := 24) (ta := (.adt 2)) (ts := .nat) rfl ((0 : Nat)) (items))) - -def __fits_40 (name : ByteArray) : Bool := - ((((((Bool.true && Bool.true) && (__fits_7 ("`"))) && (Bool.true && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.text ("`"))) (name))) && (((Bool.true && Bool.true) && (__fits_7 ("`"))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("`"))) (name))) ((LexLeanBoot.AxiomOutput.text ("`"))))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.cat LexLeanBoot.AxiomOutput.text in -theorem __rel_40 (name : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 40 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes name)] (_root_.LexLeanPreservation.Rel (__fits_40 name) (_root_.LexLeanTarget.TargetSyntax.Value.bytes (LexLeanBoot.AxiomOutput.quoted name))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("`"))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_6 ((LexLeanBoot.AxiomOutput.text ("`"))) (name))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("`"))) _root_.LexLeanPreservation.convL_nil)) (__rel_6 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("`"))) (name))) ((LexLeanBoot.AxiomOutput.text ("`"))))) - -def __fits_54 (left : ByteArray) (right : ByteArray) : Bool := - ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) - -theorem __rel_54 (left : ByteArray) (right : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 54 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes left), (_root_.LexLeanTarget.TargetSyntax.Value.bytes right)] (_root_.LexLeanPreservation.Rel (__fits_54 left right) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanBoot.AxiomOutput.lessBytes left right))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_compareBytes left right)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_compareBytes (ByteArray.mk #[]) (ByteArray.mk #[1]))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_ordering (_root_.LexLeanRuntime.compareBytes (left) (right) : Ordering) (_root_.LexLeanRuntime.compareBytes ((ByteArray.mk #[])) ((ByteArray.mk #[1])) : Ordering))) - -def __fits_41 : ∀ (name : ByteArray) (axioms : (List ByteArray)) (entries : (List (Prod ByteArray (List ByteArray)))), Bool - | name, axioms, (List.nil) => (Bool.true && ((((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true)) - | name, axioms, (List.cons head tail) => (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal (name) ((head).1) : Bool) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && (__fits_54 (name) ((head).1))) && (if (LexLeanBoot.AxiomOutput.lessBytes (name) ((head).1)) then ((((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_41 (name) (axioms) (tail))) && (match (LexLeanBoot.AxiomOutput.insertEntry (name) (axioms) (tail)) with | Option.some inserted => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (Bool.true && Bool.true)))))))) - -theorem __rel_41 : ∀ (name : ByteArray) (axioms : (List ByteArray)) (entries : (List (Prod ByteArray (List ByteArray)))), _root_.LexLeanPreservation.FunRel __prog 41 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes name), ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) axioms), ((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) entries)] (_root_.LexLeanPreservation.Rel (__fits_41 name axioms entries) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (LexLeanBoot.AxiomOutput.insertEntry name axioms entries))) - | name, axioms, (List.nil) => by rw [__fits_41.eq_def]; exact _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_match (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some))) - | name, axioms, (List.cons head tail) => by rw [__fits_41.eq_def]; exact _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_match (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && (__fits_54 (name) ((head).1))) && (if (LexLeanBoot.AxiomOutput.lessBytes (name) ((head).1)) then ((((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_41 (name) (axioms) (tail))) && (match (LexLeanBoot.AxiomOutput.insertEntry (name) (axioms) (tail)) with | Option.some inserted => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (Bool.true && Bool.true))))))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (if __b then (Option.none : (Option (List (Prod ByteArray (List ByteArray))))) else (if (LexLeanBoot.AxiomOutput.lessBytes (name) ((head).1)) then (Option.some (((name, axioms) :: (head :: tail))) : (Option (List (Prod ByteArray (List ByteArray))))) else (match (LexLeanBoot.AxiomOutput.insertEntry (name) (axioms) (tail)) with | Option.some inserted => (Option.some ((head :: inserted)) : (Option (List (Prod ByteArray (List ByteArray))))) | Option.none => (Option.none : (Option (List (Prod ByteArray (List ByteArray))))))))) (_root_.LexLeanRuntime.equal (name) ((head).1) : Bool) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_bytes name (head).1)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_41 (name) (axioms) (tail))) && (match (LexLeanBoot.AxiomOutput.insertEntry (name) (axioms) (tail)) with | Option.some inserted => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (Bool.true && Bool.true))))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (if __b then (Option.some (((name, axioms) :: (head :: tail))) : (Option (List (Prod ByteArray (List ByteArray))))) else (match (LexLeanBoot.AxiomOutput.insertEntry (name) (axioms) (tail)) with | Option.some inserted => (Option.some ((head :: inserted)) : (Option (List (Prod ByteArray (List ByteArray))))) | Option.none => (Option.none : (Option (List (Prod ByteArray (List ByteArray)))))))) (LexLeanBoot.AxiomOutput.lessBytes (name) ((head).1)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil)) (__rel_54 (name) ((head).1))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (fun (__a : (Option (List (Prod ByteArray (List ByteArray))))) => (match __a with | Option.some inserted => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option (List (Prod ByteArray (List ByteArray))))) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (match __a with | Option.some inserted => (Option.some ((head :: inserted)) : (Option (List (Prod ByteArray (List ByteArray))))) | Option.none => (Option.none : (Option (List (Prod ByteArray (List ByteArray))))))) (LexLeanBoot.AxiomOutput.insertEntry (name) (axioms) (tail)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (__rel_41 (name) (axioms) (tail))) (fun (__a : (Option (List (Prod ByteArray (List ByteArray))))) _ => match __a with | Option.some inserted => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)))))))))))) - -def __fits_26 (state : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) (entry : (LexLeanBoot.AxiomOutput.Record)) : Bool := - (Bool.true && (match state with | Except.error rejection => Bool.true | Except.ok entries => ((Bool.true && (match (entry).expected with | Option.some name => Bool.true | Option.none => Bool.true)) && (let want : ByteArray := (match (entry).expected with | Option.some name => name | Option.none => (ByteArray.mk #[])); (((((((Bool.true && Bool.true) && (__fits_7 ("duplicate record for "))) && (((Bool.true && Bool.true) && (__fits_40 ((entry).declaration))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.text ("duplicate record for "))) ((LexLeanBoot.AxiomOutput.quoted ((entry).declaration))))) && (((Bool.true && Bool.true) && Bool.true) && Bool.true)) && (__fits_5 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("duplicate record for "))) ((LexLeanBoot.AxiomOutput.quoted ((entry).declaration))))) ((Option.some (want) : (Option ByteArray))))) && (let duplicate : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray)))) := (LexLeanBoot.AxiomOutput.refuse ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("duplicate record for "))) ((LexLeanBoot.AxiomOutput.quoted ((entry).declaration))))) ((Option.some (want) : (Option ByteArray)))); (((((((((((Bool.true && Bool.true) && (__fits_7 ("expected a record for "))) && (((Bool.true && Bool.true) && (__fits_40 (want))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.text ("expected a record for "))) ((LexLeanBoot.AxiomOutput.quoted (want))))) && (((Bool.true && Bool.true) && (__fits_7 (", found "))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected a record for "))) ((LexLeanBoot.AxiomOutput.quoted (want))))) ((LexLeanBoot.AxiomOutput.text (", found "))))) && (((Bool.true && Bool.true) && (__fits_40 ((entry).declaration))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected a record for "))) ((LexLeanBoot.AxiomOutput.quoted (want))))) ((LexLeanBoot.AxiomOutput.text (", found "))))) ((LexLeanBoot.AxiomOutput.quoted ((entry).declaration))))) && (((Bool.true && Bool.true) && Bool.true) && Bool.true)) && (__fits_5 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected a record for "))) ((LexLeanBoot.AxiomOutput.quoted (want))))) ((LexLeanBoot.AxiomOutput.text (", found "))))) ((LexLeanBoot.AxiomOutput.quoted ((entry).declaration))))) ((Option.some (want) : (Option ByteArray))))) && (let mismatch : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray)))) := (LexLeanBoot.AxiomOutput.refuse ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected a record for "))) ((LexLeanBoot.AxiomOutput.quoted (want))))) ((LexLeanBoot.AxiomOutput.text (", found "))))) ((LexLeanBoot.AxiomOutput.quoted ((entry).declaration))))) ((Option.some (want) : (Option ByteArray)))); (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal ((entry).declaration) (want) : Bool) then (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_41 ((entry).declaration) ((entry).axioms) (entries))) && (match (LexLeanBoot.AxiomOutput.insertEntry ((entry).declaration) ((entry).axioms) (entries)) with | Option.some inserted => ((Bool.true && Bool.true) && Bool.true) | Option.none => Bool.true)) else Bool.true)))))))))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.cat LexLeanBoot.AxiomOutput.insertEntry LexLeanBoot.AxiomOutput.quoted LexLeanBoot.AxiomOutput.refuse LexLeanBoot.AxiomOutput.text in -theorem __rel_26 (state : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) (entry : (LexLeanBoot.AxiomOutput.Record)) : _root_.LexLeanPreservation.FunRel __prog 26 [((_root_.LexLeanPreservation.encExcept __enc_0 (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) state), (__enc_2 entry)] (_root_.LexLeanPreservation.Rel (__fits_26 state entry) ((_root_.LexLeanPreservation.encExcept __enc_0 (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (LexLeanBoot.AxiomOutput.auditStep state entry))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encExcept __enc_0 (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (fun (__a : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) => (match __a with | Except.error rejection => Bool.true | Except.ok entries => ((Bool.true && (match (entry).expected with | Option.some name => Bool.true | Option.none => Bool.true)) && (let want : ByteArray := (match (entry).expected with | Option.some name => name | Option.none => (ByteArray.mk #[])); (((((((Bool.true && Bool.true) && (__fits_7 ("duplicate record for "))) && (((Bool.true && Bool.true) && (__fits_40 ((entry).declaration))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.text ("duplicate record for "))) ((LexLeanBoot.AxiomOutput.quoted ((entry).declaration))))) && (((Bool.true && Bool.true) && Bool.true) && Bool.true)) && (__fits_5 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("duplicate record for "))) ((LexLeanBoot.AxiomOutput.quoted ((entry).declaration))))) ((Option.some (want) : (Option ByteArray))))) && (let duplicate : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray)))) := (LexLeanBoot.AxiomOutput.refuse ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("duplicate record for "))) ((LexLeanBoot.AxiomOutput.quoted ((entry).declaration))))) ((Option.some (want) : (Option ByteArray)))); (((((((((((Bool.true && Bool.true) && (__fits_7 ("expected a record for "))) && (((Bool.true && Bool.true) && (__fits_40 (want))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.text ("expected a record for "))) ((LexLeanBoot.AxiomOutput.quoted (want))))) && (((Bool.true && Bool.true) && (__fits_7 (", found "))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected a record for "))) ((LexLeanBoot.AxiomOutput.quoted (want))))) ((LexLeanBoot.AxiomOutput.text (", found "))))) && (((Bool.true && Bool.true) && (__fits_40 ((entry).declaration))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected a record for "))) ((LexLeanBoot.AxiomOutput.quoted (want))))) ((LexLeanBoot.AxiomOutput.text (", found "))))) ((LexLeanBoot.AxiomOutput.quoted ((entry).declaration))))) && (((Bool.true && Bool.true) && Bool.true) && Bool.true)) && (__fits_5 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected a record for "))) ((LexLeanBoot.AxiomOutput.quoted (want))))) ((LexLeanBoot.AxiomOutput.text (", found "))))) ((LexLeanBoot.AxiomOutput.quoted ((entry).declaration))))) ((Option.some (want) : (Option ByteArray))))) && (let mismatch : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray)))) := (LexLeanBoot.AxiomOutput.refuse ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected a record for "))) ((LexLeanBoot.AxiomOutput.quoted (want))))) ((LexLeanBoot.AxiomOutput.text (", found "))))) ((LexLeanBoot.AxiomOutput.quoted ((entry).declaration))))) ((Option.some (want) : (Option ByteArray)))); (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal ((entry).declaration) (want) : Bool) then (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_41 ((entry).declaration) ((entry).axioms) (entries))) && (match (LexLeanBoot.AxiomOutput.insertEntry ((entry).declaration) ((entry).axioms) (entries)) with | Option.some inserted => ((Bool.true && Bool.true) && Bool.true) | Option.none => Bool.true)) else Bool.true)))))))))) (fun (__a : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) => (_root_.LexLeanPreservation.encExcept __enc_0 (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (match __a with | Except.error rejection => state | Except.ok entries => (let want : ByteArray := (match (entry).expected with | Option.some name => name | Option.none => (ByteArray.mk #[])); (let duplicate : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray)))) := (LexLeanBoot.AxiomOutput.refuse ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("duplicate record for "))) ((LexLeanBoot.AxiomOutput.quoted ((entry).declaration))))) ((Option.some (want) : (Option ByteArray)))); (let mismatch : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray)))) := (LexLeanBoot.AxiomOutput.refuse ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected a record for "))) ((LexLeanBoot.AxiomOutput.quoted (want))))) ((LexLeanBoot.AxiomOutput.text (", found "))))) ((LexLeanBoot.AxiomOutput.quoted ((entry).declaration))))) ((Option.some (want) : (Option ByteArray)))); (if (_root_.LexLeanRuntime.equal ((entry).declaration) (want) : Bool) then (match (LexLeanBoot.AxiomOutput.insertEntry ((entry).declaration) ((entry).axioms) (entries)) with | Option.some inserted => (Except.ok (inserted) : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) | Option.none => duplicate) else mismatch)))))) state (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) _ => match __a with | Except.error rejection => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | Except.ok entries => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (let want : ByteArray := (match (entry).expected with | Option.some name => name | Option.none => (ByteArray.mk #[])); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.some name => Bool.true | Option.none => Bool.true)) (fun (__a : (Option ByteArray)) => _root_.LexLeanTarget.TargetSyntax.Value.bytes (match __a with | Option.some name => name | Option.none => (ByteArray.mk #[]))) (entry).expected (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (fun (__a : (Option ByteArray)) _ => match __a with | Option.some name => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value)))) (let duplicate : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray)))) := (LexLeanBoot.AxiomOutput.refuse ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("duplicate record for "))) ((LexLeanBoot.AxiomOutput.quoted ((entry).declaration))))) ((Option.some (want) : (Option ByteArray)))); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("duplicate record for "))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_40 ((entry).declaration))) _root_.LexLeanPreservation.convL_nil)) (__rel_6 ((LexLeanBoot.AxiomOutput.text ("duplicate record for "))) ((LexLeanBoot.AxiomOutput.quoted ((entry).declaration))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some) _root_.LexLeanPreservation.convL_nil)) (__rel_5 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("duplicate record for "))) ((LexLeanBoot.AxiomOutput.quoted ((entry).declaration))))) ((Option.some (want) : (Option ByteArray))))) (let mismatch : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray)))) := (LexLeanBoot.AxiomOutput.refuse ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected a record for "))) ((LexLeanBoot.AxiomOutput.quoted (want))))) ((LexLeanBoot.AxiomOutput.text (", found "))))) ((LexLeanBoot.AxiomOutput.quoted ((entry).declaration))))) ((Option.some (want) : (Option ByteArray)))); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("expected a record for "))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_40 (want))) _root_.LexLeanPreservation.convL_nil)) (__rel_6 ((LexLeanBoot.AxiomOutput.text ("expected a record for "))) ((LexLeanBoot.AxiomOutput.quoted (want))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 (", found "))) _root_.LexLeanPreservation.convL_nil)) (__rel_6 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected a record for "))) ((LexLeanBoot.AxiomOutput.quoted (want))))) ((LexLeanBoot.AxiomOutput.text (", found "))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_40 ((entry).declaration))) _root_.LexLeanPreservation.convL_nil)) (__rel_6 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected a record for "))) ((LexLeanBoot.AxiomOutput.quoted (want))))) ((LexLeanBoot.AxiomOutput.text (", found "))))) ((LexLeanBoot.AxiomOutput.quoted ((entry).declaration))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some) _root_.LexLeanPreservation.convL_nil)) (__rel_5 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected a record for "))) ((LexLeanBoot.AxiomOutput.quoted (want))))) ((LexLeanBoot.AxiomOutput.text (", found "))))) ((LexLeanBoot.AxiomOutput.quoted ((entry).declaration))))) ((Option.some (want) : (Option ByteArray))))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_41 ((entry).declaration) ((entry).axioms) (entries))) && (match (LexLeanBoot.AxiomOutput.insertEntry ((entry).declaration) ((entry).axioms) (entries)) with | Option.some inserted => ((Bool.true && Bool.true) && Bool.true) | Option.none => Bool.true)) else Bool.true)) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept __enc_0 (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (if __b then (match (LexLeanBoot.AxiomOutput.insertEntry ((entry).declaration) ((entry).axioms) (entries)) with | Option.some inserted => (Except.ok (inserted) : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) | Option.none => duplicate) else mismatch)) (_root_.LexLeanRuntime.equal ((entry).declaration) (want) : Bool) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_bytes (entry).declaration want)) (fun _ => (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (fun (__a : (Option (List (Prod ByteArray (List ByteArray))))) => (match __a with | Option.some inserted => ((Bool.true && Bool.true) && Bool.true) | Option.none => Bool.true)) (fun (__a : (Option (List (Prod ByteArray (List ByteArray))))) => (_root_.LexLeanPreservation.encExcept __enc_0 (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (match __a with | Option.some inserted => (Except.ok (inserted) : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) | Option.none => duplicate)) (LexLeanBoot.AxiomOutput.insertEntry ((entry).declaration) ((entry).axioms) (entries)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (__rel_41 ((entry).declaration) ((entry).axioms) (entries))) (fun (__a : (Option (List (Prod ByteArray (List ByteArray))))) _ => match __a with | Option.some inserted => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)))))) (fun _ => (_root_.LexLeanPreservation.conv_var rfl)))))))))) - -def __fits_12 (state : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) (entry : (LexLeanBoot.AxiomOutput.Record)) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && (__fits_26 (state) (entry))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.auditStep in -theorem __rel_12 (state : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) (entry : (LexLeanBoot.AxiomOutput.Record)) : _root_.LexLeanPreservation.FunRel __prog 12 [((_root_.LexLeanPreservation.encExcept __enc_0 (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) state), (__enc_2 entry)] (_root_.LexLeanPreservation.Rel (__fits_12 state entry) ((_root_.LexLeanPreservation.encExcept __enc_0 (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) ((LexLeanBoot.AxiomOutput.auditStep (state) (entry))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_26 (state) (entry))) - -def __fits_28 (turned : (List (LexLeanBoot.AxiomOutput.Record))) (item : (LexLeanBoot.AxiomOutput.Record)) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_28 (turned : (List (LexLeanBoot.AxiomOutput.Record))) (item : (LexLeanBoot.AxiomOutput.Record)) : _root_.LexLeanPreservation.FunRel __prog 28 [((_root_.LexLeanPreservation.encList __enc_2) turned), (__enc_2 item)] (_root_.LexLeanPreservation.Rel (__fits_28 turned item) ((_root_.LexLeanPreservation.encList __enc_2) ((item :: turned)))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) - -def __fits_13 (items : (List (LexLeanBoot.AxiomOutput.Record))) : Bool := - ((Bool.true && ((Bool.true && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (List (LexLeanBoot.AxiomOutput.Record))) (__p1 : (LexLeanBoot.AxiomOutput.Record)) => __fits_28 __p0 __p1) ((fun (turned : (List (LexLeanBoot.AxiomOutput.Record))) (item : (LexLeanBoot.AxiomOutput.Record)) => (item :: turned))) (([] : List (LexLeanBoot.AxiomOutput.Record))) (items))) - -theorem __rel_13 (items : (List (LexLeanBoot.AxiomOutput.Record))) : _root_.LexLeanPreservation.FunRel __prog 13 [((_root_.LexLeanPreservation.encList __enc_2) items)] (_root_.LexLeanPreservation.Rel (__fits_13 items) ((_root_.LexLeanPreservation.encList __enc_2) (LexLeanBoot.AxiomOutput.reversed (LexLeanBoot.AxiomOutput.Record) items))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := __enc_2) (es := (_root_.LexLeanPreservation.encList __enc_2)) (_root_.LexLeanPreservation.listEnc __enc_2) (fun _ => rfl) ((fun (turned : (List (LexLeanBoot.AxiomOutput.Record))) (item : (LexLeanBoot.AxiomOutput.Record)) => (item :: turned))) (fun (__p0 : (List (LexLeanBoot.AxiomOutput.Record))) (__p1 : (LexLeanBoot.AxiomOutput.Record)) => __fits_28 __p0 __p1) 28 [] (fun (__p0 : (List (LexLeanBoot.AxiomOutput.Record))) (__p1 : (LexLeanBoot.AxiomOutput.Record)) => __rel_28 __p0 __p1) (p := __prog) (fi := 27) (ta := (.adt 2)) (ts := (.list (.adt 2))) rfl (([] : List (LexLeanBoot.AxiomOutput.Record))) (items))) - -def __fits_1 (scan : (LexLeanBoot.AxiomOutput.Scan)) (expected : (List ByteArray)) : Bool := - (Bool.true && (match scan with | LexLeanBoot.AxiomOutput.Scan.stopped rejection => ((Bool.true && Bool.true) && Bool.true) | LexLeanBoot.AxiomOutput.Scan.inside records remaining payload about => ((((((Bool.true && Bool.true) && (__fits_7 ("unterminated axiom payload: "))) && (Bool.true && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.text ("unterminated axiom payload: "))) (payload))) && (Bool.true && Bool.true)) && (__fits_5 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("unterminated axiom payload: "))) (payload))) (about))) | LexLeanBoot.AxiomOutput.Scan.between records remaining => (((((((((((Bool.true && Bool.true) && (__fits_7 ("expected "))) && (((((Bool.true && Bool.true) && (__fits_9 (expected))) && Bool.true) && (__fits_8 ((LexLeanBoot.AxiomOutput.listLength ByteArray (expected))))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.text ("expected "))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength ByteArray (expected))))))) && (((Bool.true && Bool.true) && (__fits_7 (" audit records, found "))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected "))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength ByteArray (expected))))))) ((LexLeanBoot.AxiomOutput.text (" audit records, found "))))) && (((((Bool.true && Bool.true) && (__fits_10 (records))) && Bool.true) && (__fits_8 ((LexLeanBoot.AxiomOutput.listLength (LexLeanBoot.AxiomOutput.Record) (records))))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected "))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength ByteArray (expected))))))) ((LexLeanBoot.AxiomOutput.text (" audit records, found "))))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength (LexLeanBoot.AxiomOutput.Record) (records))))))) && ((Bool.true && Bool.true) && Bool.true)) && (__fits_5 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected "))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength ByteArray (expected))))))) ((LexLeanBoot.AxiomOutput.text (" audit records, found "))))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength (LexLeanBoot.AxiomOutput.Record) (records))))))) ((Option.none : (Option ByteArray))))) && (let counted : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray)))) := (LexLeanBoot.AxiomOutput.refuse ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected "))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength ByteArray (expected))))))) ((LexLeanBoot.AxiomOutput.text (" audit records, found "))))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength (LexLeanBoot.AxiomOutput.Record) (records))))))) ((Option.none : (Option ByteArray)))); (((((Bool.true && Bool.true) && (__fits_10 (records))) && (((Bool.true && Bool.true) && (__fits_9 (expected))) && Bool.true)) && Bool.true) && (if (Nat.beq (LexLeanBoot.AxiomOutput.listLength (LexLeanBoot.AxiomOutput.Record) (records)) (LexLeanBoot.AxiomOutput.listLength ByteArray (expected))) then ((Bool.true && ((((Bool.true && Bool.true) && Bool.true) && Bool.true) && (((Bool.true && Bool.true) && (__fits_13 (records))) && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) (__p1 : (LexLeanBoot.AxiomOutput.Record)) => __fits_12 __p0 __p1) ((fun (state : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) (entry : (LexLeanBoot.AxiomOutput.Record)) => (LexLeanBoot.AxiomOutput.auditStep (state) (entry)))) ((Except.ok (([] : List (Prod ByteArray (List ByteArray)))) : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray)))))) ((LexLeanBoot.AxiomOutput.reversed (LexLeanBoot.AxiomOutput.Record) (records))))) else Bool.true)))))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.auditStep LexLeanBoot.AxiomOutput.cat LexLeanBoot.AxiomOutput.decimal LexLeanBoot.AxiomOutput.listLength LexLeanBoot.AxiomOutput.refuse LexLeanBoot.AxiomOutput.reversed LexLeanBoot.AxiomOutput.text in -theorem __rel_1 (scan : (LexLeanBoot.AxiomOutput.Scan)) (expected : (List ByteArray)) : _root_.LexLeanPreservation.FunRel __prog 1 [(__enc_1 scan), ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) expected)] (_root_.LexLeanPreservation.Rel (__fits_1 scan expected) ((_root_.LexLeanPreservation.encExcept __enc_0 (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (LexLeanBoot.AxiomOutput.finish scan expected))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV __enc_1 (fun (__a : (LexLeanBoot.AxiomOutput.Scan)) => (match __a with | LexLeanBoot.AxiomOutput.Scan.stopped rejection => ((Bool.true && Bool.true) && Bool.true) | LexLeanBoot.AxiomOutput.Scan.inside records remaining payload about => ((((((Bool.true && Bool.true) && (__fits_7 ("unterminated axiom payload: "))) && (Bool.true && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.text ("unterminated axiom payload: "))) (payload))) && (Bool.true && Bool.true)) && (__fits_5 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("unterminated axiom payload: "))) (payload))) (about))) | LexLeanBoot.AxiomOutput.Scan.between records remaining => (((((((((((Bool.true && Bool.true) && (__fits_7 ("expected "))) && (((((Bool.true && Bool.true) && (__fits_9 (expected))) && Bool.true) && (__fits_8 ((LexLeanBoot.AxiomOutput.listLength ByteArray (expected))))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.text ("expected "))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength ByteArray (expected))))))) && (((Bool.true && Bool.true) && (__fits_7 (" audit records, found "))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected "))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength ByteArray (expected))))))) ((LexLeanBoot.AxiomOutput.text (" audit records, found "))))) && (((((Bool.true && Bool.true) && (__fits_10 (records))) && Bool.true) && (__fits_8 ((LexLeanBoot.AxiomOutput.listLength (LexLeanBoot.AxiomOutput.Record) (records))))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected "))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength ByteArray (expected))))))) ((LexLeanBoot.AxiomOutput.text (" audit records, found "))))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength (LexLeanBoot.AxiomOutput.Record) (records))))))) && ((Bool.true && Bool.true) && Bool.true)) && (__fits_5 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected "))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength ByteArray (expected))))))) ((LexLeanBoot.AxiomOutput.text (" audit records, found "))))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength (LexLeanBoot.AxiomOutput.Record) (records))))))) ((Option.none : (Option ByteArray))))) && (let counted : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray)))) := (LexLeanBoot.AxiomOutput.refuse ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected "))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength ByteArray (expected))))))) ((LexLeanBoot.AxiomOutput.text (" audit records, found "))))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength (LexLeanBoot.AxiomOutput.Record) (records))))))) ((Option.none : (Option ByteArray)))); (((((Bool.true && Bool.true) && (__fits_10 (records))) && (((Bool.true && Bool.true) && (__fits_9 (expected))) && Bool.true)) && Bool.true) && (if (Nat.beq (LexLeanBoot.AxiomOutput.listLength (LexLeanBoot.AxiomOutput.Record) (records)) (LexLeanBoot.AxiomOutput.listLength ByteArray (expected))) then ((Bool.true && ((((Bool.true && Bool.true) && Bool.true) && Bool.true) && (((Bool.true && Bool.true) && (__fits_13 (records))) && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) (__p1 : (LexLeanBoot.AxiomOutput.Record)) => __fits_12 __p0 __p1) ((fun (state : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) (entry : (LexLeanBoot.AxiomOutput.Record)) => (LexLeanBoot.AxiomOutput.auditStep (state) (entry)))) ((Except.ok (([] : List (Prod ByteArray (List ByteArray)))) : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray)))))) ((LexLeanBoot.AxiomOutput.reversed (LexLeanBoot.AxiomOutput.Record) (records))))) else Bool.true)))))) (fun (__a : (LexLeanBoot.AxiomOutput.Scan)) => (_root_.LexLeanPreservation.encExcept __enc_0 (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (match __a with | LexLeanBoot.AxiomOutput.Scan.stopped rejection => (Except.error (rejection) : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) | LexLeanBoot.AxiomOutput.Scan.inside records remaining payload about => (LexLeanBoot.AxiomOutput.refuse ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("unterminated axiom payload: "))) (payload))) (about)) | LexLeanBoot.AxiomOutput.Scan.between records remaining => (let counted : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray)))) := (LexLeanBoot.AxiomOutput.refuse ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected "))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength ByteArray (expected))))))) ((LexLeanBoot.AxiomOutput.text (" audit records, found "))))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength (LexLeanBoot.AxiomOutput.Record) (records))))))) ((Option.none : (Option ByteArray)))); (if (Nat.beq (LexLeanBoot.AxiomOutput.listLength (LexLeanBoot.AxiomOutput.Record) (records)) (LexLeanBoot.AxiomOutput.listLength ByteArray (expected))) then (_root_.LexLeanCollections.listFold ((fun (state : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) (entry : (LexLeanBoot.AxiomOutput.Record)) => (LexLeanBoot.AxiomOutput.auditStep (state) (entry)))) ((Except.ok (([] : List (Prod ByteArray (List ByteArray)))) : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray)))))) ((LexLeanBoot.AxiomOutput.reversed (LexLeanBoot.AxiomOutput.Record) (records))) : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) else counted)))) scan (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (LexLeanBoot.AxiomOutput.Scan)) _ => match __a with | LexLeanBoot.AxiomOutput.Scan.stopped rejection => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)) | LexLeanBoot.AxiomOutput.Scan.inside records remaining payload about => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("unterminated axiom payload: "))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_6 ((LexLeanBoot.AxiomOutput.text ("unterminated axiom payload: "))) (payload))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_5 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("unterminated axiom payload: "))) (payload))) (about))))) | LexLeanBoot.AxiomOutput.Scan.between records remaining => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (let counted : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray)))) := (LexLeanBoot.AxiomOutput.refuse ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected "))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength ByteArray (expected))))))) ((LexLeanBoot.AxiomOutput.text (" audit records, found "))))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength (LexLeanBoot.AxiomOutput.Record) (records))))))) ((Option.none : (Option ByteArray)))); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("expected "))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_9 (expected))) _root_.LexLeanPreservation.convL_nil) (__rel_8 ((LexLeanBoot.AxiomOutput.listLength ByteArray (expected))))) _root_.LexLeanPreservation.convL_nil)) (__rel_6 ((LexLeanBoot.AxiomOutput.text ("expected "))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength ByteArray (expected))))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 (" audit records, found "))) _root_.LexLeanPreservation.convL_nil)) (__rel_6 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected "))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength ByteArray (expected))))))) ((LexLeanBoot.AxiomOutput.text (" audit records, found "))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_10 (records))) _root_.LexLeanPreservation.convL_nil) (__rel_8 ((LexLeanBoot.AxiomOutput.listLength (LexLeanBoot.AxiomOutput.Record) (records))))) _root_.LexLeanPreservation.convL_nil)) (__rel_6 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected "))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength ByteArray (expected))))))) ((LexLeanBoot.AxiomOutput.text (" audit records, found "))))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength (LexLeanBoot.AxiomOutput.Record) (records))))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none) _root_.LexLeanPreservation.convL_nil)) (__rel_5 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("expected "))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength ByteArray (expected))))))) ((LexLeanBoot.AxiomOutput.text (" audit records, found "))))) ((LexLeanBoot.AxiomOutput.decimal ((LexLeanBoot.AxiomOutput.listLength (LexLeanBoot.AxiomOutput.Record) (records))))))) ((Option.none : (Option ByteArray))))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && ((((Bool.true && Bool.true) && Bool.true) && Bool.true) && (((Bool.true && Bool.true) && (__fits_13 (records))) && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) (__p1 : (LexLeanBoot.AxiomOutput.Record)) => __fits_12 __p0 __p1) ((fun (state : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) (entry : (LexLeanBoot.AxiomOutput.Record)) => (LexLeanBoot.AxiomOutput.auditStep (state) (entry)))) ((Except.ok (([] : List (Prod ByteArray (List ByteArray)))) : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray)))))) ((LexLeanBoot.AxiomOutput.reversed (LexLeanBoot.AxiomOutput.Record) (records))))) else Bool.true)) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept __enc_0 (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (if __b then (_root_.LexLeanCollections.listFold ((fun (state : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) (entry : (LexLeanBoot.AxiomOutput.Record)) => (LexLeanBoot.AxiomOutput.auditStep (state) (entry)))) ((Except.ok (([] : List (Prod ByteArray (List ByteArray)))) : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray)))))) ((LexLeanBoot.AxiomOutput.reversed (LexLeanBoot.AxiomOutput.Record) (records))) : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) else counted)) (Nat.beq (LexLeanBoot.AxiomOutput.listLength (LexLeanBoot.AxiomOutput.Record) (records)) (LexLeanBoot.AxiomOutput.listLength ByteArray (expected))) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_10 (records))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_9 (expected))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (LexLeanBoot.AxiomOutput.listLength (LexLeanBoot.AxiomOutput.Record) (records)) (LexLeanBoot.AxiomOutput.listLength ByteArray (expected)))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_13 (records))) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := __enc_2) (es := (_root_.LexLeanPreservation.encExcept __enc_0 (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))))) (_root_.LexLeanPreservation.listEnc __enc_2) (fun _ => rfl) ((fun (state : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) (entry : (LexLeanBoot.AxiomOutput.Record)) => (LexLeanBoot.AxiomOutput.auditStep (state) (entry)))) (fun (__p0 : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) (__p1 : (LexLeanBoot.AxiomOutput.Record)) => __fits_12 __p0 __p1) 12 [] (fun (__p0 : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray))))) (__p1 : (LexLeanBoot.AxiomOutput.Record)) => __rel_12 __p0 __p1) (p := __prog) (fi := 11) (ta := (.adt 2)) (ts := (.result (.list (.pair .bytes (.list .bytes))) (.adt 0))) rfl ((Except.ok (([] : List (Prod ByteArray (List ByteArray)))) : (Except (LexLeanBoot.AxiomOutput.Rejection) (List (Prod ByteArray (List ByteArray)))))) ((LexLeanBoot.AxiomOutput.reversed (LexLeanBoot.AxiomOutput.Record) (records)))))) (fun _ => (_root_.LexLeanPreservation.conv_var rfl))))))))) - -def __fits_79 (byte : UInt8) (low : UInt8) (high : UInt8) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (match (_root_.LexLeanRuntime.checkedSubtract (byte) (low) : (Option UInt8)) with | Option.some above => (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (match (_root_.LexLeanRuntime.checkedSubtract (high) (byte) : (Option UInt8)) with | Option.some below => (Bool.true && Bool.true) | Option.none => (Bool.true && Bool.true))) | Option.none => (Bool.true && Bool.true))) - -theorem __rel_79 (byte : UInt8) (low : UInt8) (high : UInt8) : _root_.LexLeanPreservation.FunRel __prog 79 [(_root_.LexLeanTarget.TargetSyntax.Value.u8 byte), (_root_.LexLeanTarget.TargetSyntax.Value.u8 low), (_root_.LexLeanTarget.TargetSyntax.Value.u8 high)] (_root_.LexLeanPreservation.Rel (__fits_79 byte low high) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanBoot.AxiomOutput.inRange byte low high))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u8) (fun (__a : (Option UInt8)) => (match __a with | Option.some above => (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (match (_root_.LexLeanRuntime.checkedSubtract (high) (byte) : (Option UInt8)) with | Option.some below => (Bool.true && Bool.true) | Option.none => (Bool.true && Bool.true))) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option UInt8)) => _root_.LexLeanTarget.TargetSyntax.Value.bool (match __a with | Option.some above => (match (_root_.LexLeanRuntime.checkedSubtract (high) (byte) : (Option UInt8)) with | Option.some below => Bool.true | Option.none => Bool.false) | Option.none => Bool.false)) (_root_.LexLeanRuntime.checkedSubtract (byte) (low) : (Option UInt8)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_checkedSub_u8 byte low)) (fun (__a : (Option UInt8)) _ => match __a with | Option.some above => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u8) (fun (__a : (Option UInt8)) => (match __a with | Option.some below => (Bool.true && Bool.true) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option UInt8)) => _root_.LexLeanTarget.TargetSyntax.Value.bool (match __a with | Option.some below => Bool.true | Option.none => Bool.false)) (_root_.LexLeanRuntime.checkedSubtract (high) (byte) : (Option UInt8)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_checkedSub_u8 high byte)) (fun (__a : (Option UInt8)) _ => match __a with | Option.some below => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))))) - -def __fits_70 (subject : ByteArray) (position : Nat) (low : UInt8) (high : UInt8) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && (__fits_51 (subject) (position))) && (match (LexLeanBoot.Text.byteAt (subject) (position)) with | Option.some byte => ((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_79 (byte) (low) (high))) | Option.none => (Bool.true && Bool.true))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.inRange LexLeanBoot.Text.byteAt in -theorem __rel_70 (subject : ByteArray) (position : Nat) (low : UInt8) (high : UInt8) : _root_.LexLeanPreservation.FunRel __prog 70 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat position), (_root_.LexLeanTarget.TargetSyntax.Value.u8 low), (_root_.LexLeanTarget.TargetSyntax.Value.u8 high)] (_root_.LexLeanPreservation.Rel (__fits_70 subject position low high) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanBoot.AxiomOutput.byteIn subject position low high))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u8) (fun (__a : (Option UInt8)) => (match __a with | Option.some byte => ((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_79 (byte) (low) (high))) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option UInt8)) => _root_.LexLeanTarget.TargetSyntax.Value.bool (match __a with | Option.some byte => (LexLeanBoot.AxiomOutput.inRange (byte) (low) (high)) | Option.none => Bool.false)) (LexLeanBoot.Text.byteAt (subject) (position)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_51 (subject) (position))) (fun (__a : (Option UInt8)) _ => match __a with | Option.some byte => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (__rel_79 (byte) (low) (high)))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))))) - -def __fits_55 (subject : ByteArray) (position : Nat) : Bool := - ((((Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true)))) && (__fits_70 (subject) (position) ((9 : UInt8)) ((13 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIn (subject) (position) ((9 : UInt8)) ((13 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_69 (subject) (position) ((32 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((32 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))))) && (if (if (LexLeanBoot.AxiomOutput.byteIn (subject) (position) ((9 : UInt8)) ((13 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((32 : UInt8))) then Bool.true else Bool.false)) then Bool.true else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_69 (subject) (position) ((194 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((194 : UInt8))) then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((133 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((133 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((160 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((160 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))))) && (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((133 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((160 : UInt8))) then Bool.true else Bool.false)) then Bool.true else Bool.true)) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_69 (subject) (position) ((225 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((225 : UInt8))) then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((154 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((154 : UInt8))) then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((128 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((154 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then Bool.true else Bool.false) else Bool.false) then Bool.true else Bool.true)) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_69 (subject) (position) ((226 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((226 : UInt8))) then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((128 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && (Bool.true && Bool.true)))) && (__fits_70 (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIn (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((168 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((168 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((169 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((169 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((175 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))))))))) && (if (if (LexLeanBoot.AxiomOutput.byteIn (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((168 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((169 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then Bool.true else Bool.false)))) then Bool.true else Bool.true)) else ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((129 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((129 : UInt8))) then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((159 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((159 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((129 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((159 : UInt8))) then Bool.true else Bool.false) else Bool.false) then Bool.true else Bool.true)))) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_69 (subject) (position) ((227 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((227 : UInt8))) then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((128 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((128 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then Bool.true else Bool.false) else Bool.false) then Bool.true else Bool.true)) else Bool.true)))))))))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.byteIn LexLeanBoot.AxiomOutput.byteIs in -theorem __rel_55 (subject : ByteArray) (position : Nat) : _root_.LexLeanPreservation.FunRel __prog 55 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat position)] (_root_.LexLeanPreservation.Rel (__fits_55 subject position) (_root_.LexLeanTarget.TargetSyntax.Value.nat (LexLeanBoot.AxiomOutput.whiteLength subject position))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_69 (subject) (position) ((194 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((194 : UInt8))) then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((133 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((133 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((160 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((160 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))))) && (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((133 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((160 : UInt8))) then Bool.true else Bool.false)) then Bool.true else Bool.true)) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_69 (subject) (position) ((225 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((225 : UInt8))) then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((154 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((154 : UInt8))) then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((128 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((154 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then Bool.true else Bool.false) else Bool.false) then Bool.true else Bool.true)) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_69 (subject) (position) ((226 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((226 : UInt8))) then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((128 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && (Bool.true && Bool.true)))) && (__fits_70 (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIn (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((168 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((168 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((169 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((169 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((175 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))))))))) && (if (if (LexLeanBoot.AxiomOutput.byteIn (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((168 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((169 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then Bool.true else Bool.false)))) then Bool.true else Bool.true)) else ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((129 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((129 : UInt8))) then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((159 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((159 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((129 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((159 : UInt8))) then Bool.true else Bool.false) else Bool.false) then Bool.true else Bool.true)))) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_69 (subject) (position) ((227 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((227 : UInt8))) then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((128 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((128 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then Bool.true else Bool.false) else Bool.false) then Bool.true else Bool.true)) else Bool.true)))))))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (1 : Nat) else (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((194 : UInt8))) then (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((133 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((160 : UInt8))) then Bool.true else Bool.false)) then (2 : Nat) else (0 : Nat)) else (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((225 : UInt8))) then (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((154 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then Bool.true else Bool.false) else Bool.false) then (3 : Nat) else (0 : Nat)) else (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((226 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then (if (if (LexLeanBoot.AxiomOutput.byteIn (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((168 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((169 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then Bool.true else Bool.false)))) then (3 : Nat) else (0 : Nat)) else (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((129 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((159 : UInt8))) then Bool.true else Bool.false) else Bool.false) then (3 : Nat) else (0 : Nat))) else (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((227 : UInt8))) then (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then Bool.true else Bool.false) else Bool.false) then (3 : Nat) else (0 : Nat)) else (0 : Nat))))))) (if (LexLeanBoot.AxiomOutput.byteIn (subject) (position) ((9 : UInt8)) ((13 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((32 : UInt8))) then Bool.true else Bool.false)) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_69 (subject) (position) ((32 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((32 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((32 : UInt8))) then Bool.true else Bool.false))) (LexLeanBoot.AxiomOutput.byteIn (subject) (position) ((9 : UInt8)) ((13 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)))) (__rel_70 (subject) (position) ((9 : UInt8)) ((13 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then Bool.true else Bool.false)) (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((32 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_69 (subject) (position) ((32 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((133 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((133 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((160 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((160 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))))) && (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((133 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((160 : UInt8))) then Bool.true else Bool.false)) then Bool.true else Bool.true)) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_69 (subject) (position) ((225 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((225 : UInt8))) then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((154 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((154 : UInt8))) then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((128 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((154 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then Bool.true else Bool.false) else Bool.false) then Bool.true else Bool.true)) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_69 (subject) (position) ((226 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((226 : UInt8))) then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((128 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && (Bool.true && Bool.true)))) && (__fits_70 (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIn (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((168 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((168 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((169 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((169 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((175 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))))))))) && (if (if (LexLeanBoot.AxiomOutput.byteIn (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((168 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((169 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then Bool.true else Bool.false)))) then Bool.true else Bool.true)) else ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((129 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((129 : UInt8))) then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((159 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((159 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((129 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((159 : UInt8))) then Bool.true else Bool.false) else Bool.false) then Bool.true else Bool.true)))) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_69 (subject) (position) ((227 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((227 : UInt8))) then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((128 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((128 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then Bool.true else Bool.false) else Bool.false) then Bool.true else Bool.true)) else Bool.true)))))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((133 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((160 : UInt8))) then Bool.true else Bool.false)) then (2 : Nat) else (0 : Nat)) else (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((225 : UInt8))) then (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((154 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then Bool.true else Bool.false) else Bool.false) then (3 : Nat) else (0 : Nat)) else (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((226 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then (if (if (LexLeanBoot.AxiomOutput.byteIn (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((168 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((169 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then Bool.true else Bool.false)))) then (3 : Nat) else (0 : Nat)) else (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((129 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((159 : UInt8))) then Bool.true else Bool.false) else Bool.false) then (3 : Nat) else (0 : Nat))) else (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((227 : UInt8))) then (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then Bool.true else Bool.false) else Bool.false) then (3 : Nat) else (0 : Nat)) else (0 : Nat)))))) (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((194 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_69 (subject) (position) ((194 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (2 : Nat) else (0 : Nat))) (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((133 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((160 : UInt8))) then Bool.true else Bool.false)) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((160 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((160 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((160 : UInt8))) then Bool.true else Bool.false))) (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((133 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (1 : Nat))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_69 (subject) ((position + (1 : Nat))) ((133 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then Bool.true else Bool.false)) (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((160 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (1 : Nat))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_69 (subject) ((position + (1 : Nat))) ((160 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => _root_.LexLeanPreservation.conv_value))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((154 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((154 : UInt8))) then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((128 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((154 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then Bool.true else Bool.false) else Bool.false) then Bool.true else Bool.true)) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_69 (subject) (position) ((226 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((226 : UInt8))) then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((128 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && (Bool.true && Bool.true)))) && (__fits_70 (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIn (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((168 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((168 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((169 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((169 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((175 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))))))))) && (if (if (LexLeanBoot.AxiomOutput.byteIn (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((168 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((169 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then Bool.true else Bool.false)))) then Bool.true else Bool.true)) else ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((129 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((129 : UInt8))) then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((159 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((159 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((129 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((159 : UInt8))) then Bool.true else Bool.false) else Bool.false) then Bool.true else Bool.true)))) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_69 (subject) (position) ((227 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((227 : UInt8))) then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((128 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((128 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then Bool.true else Bool.false) else Bool.false) then Bool.true else Bool.true)) else Bool.true)))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((154 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then Bool.true else Bool.false) else Bool.false) then (3 : Nat) else (0 : Nat)) else (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((226 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then (if (if (LexLeanBoot.AxiomOutput.byteIn (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((168 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((169 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then Bool.true else Bool.false)))) then (3 : Nat) else (0 : Nat)) else (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((129 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((159 : UInt8))) then Bool.true else Bool.false) else Bool.false) then (3 : Nat) else (0 : Nat))) else (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((227 : UInt8))) then (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then Bool.true else Bool.false) else Bool.false) then (3 : Nat) else (0 : Nat)) else (0 : Nat))))) (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((225 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_69 (subject) (position) ((225 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (3 : Nat) else (0 : Nat))) (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((154 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then Bool.true else Bool.false) else Bool.false) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((128 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then Bool.true else Bool.false) else Bool.false)) (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((154 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (1 : Nat))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_69 (subject) ((position + (1 : Nat))) ((154 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then Bool.true else Bool.false)) (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (2 : Nat))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_69 (subject) ((position + (2 : Nat))) ((128 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => _root_.LexLeanPreservation.conv_value))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((128 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && (Bool.true && Bool.true)))) && (__fits_70 (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIn (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((168 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((168 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((169 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((169 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((175 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))))))))) && (if (if (LexLeanBoot.AxiomOutput.byteIn (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((168 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((169 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then Bool.true else Bool.false)))) then Bool.true else Bool.true)) else ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((129 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((129 : UInt8))) then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((159 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((159 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((129 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((159 : UInt8))) then Bool.true else Bool.false) else Bool.false) then Bool.true else Bool.true)))) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_69 (subject) (position) ((227 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((227 : UInt8))) then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((128 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((128 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then Bool.true else Bool.false) else Bool.false) then Bool.true else Bool.true)) else Bool.true)))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then (if (if (LexLeanBoot.AxiomOutput.byteIn (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((168 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((169 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then Bool.true else Bool.false)))) then (3 : Nat) else (0 : Nat)) else (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((129 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((159 : UInt8))) then Bool.true else Bool.false) else Bool.false) then (3 : Nat) else (0 : Nat))) else (if (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((227 : UInt8))) then (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then Bool.true else Bool.false) else Bool.false) then (3 : Nat) else (0 : Nat)) else (0 : Nat)))) (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((226 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_69 (subject) (position) ((226 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && (Bool.true && Bool.true)))) && (__fits_70 (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIn (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((168 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((168 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((169 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((169 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((175 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))))))))) && (if (if (LexLeanBoot.AxiomOutput.byteIn (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((168 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((169 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then Bool.true else Bool.false)))) then Bool.true else Bool.true)) else ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((129 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((129 : UInt8))) then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((159 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((159 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((129 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((159 : UInt8))) then Bool.true else Bool.false) else Bool.false) then Bool.true else Bool.true)))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (if (if (LexLeanBoot.AxiomOutput.byteIn (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((168 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((169 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then Bool.true else Bool.false)))) then (3 : Nat) else (0 : Nat)) else (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((129 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((159 : UInt8))) then Bool.true else Bool.false) else Bool.false) then (3 : Nat) else (0 : Nat)))) (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (1 : Nat))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_69 (subject) ((position + (1 : Nat))) ((128 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (3 : Nat) else (0 : Nat))) (if (LexLeanBoot.AxiomOutput.byteIn (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((168 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((169 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then Bool.true else Bool.false)))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((168 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((168 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((169 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((169 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((175 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))))))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((168 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((169 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then Bool.true else Bool.false))))) (LexLeanBoot.AxiomOutput.byteIn (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (2 : Nat))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)))) (__rel_70 (subject) ((position + (2 : Nat))) ((128 : UInt8)) ((138 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((169 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((169 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((175 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((169 : UInt8))) then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then Bool.true else Bool.false)))) (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((168 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (2 : Nat))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_69 (subject) ((position + (2 : Nat))) ((168 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((175 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then Bool.true else (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) then Bool.true else Bool.false))) (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((169 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (2 : Nat))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_69 (subject) ((position + (2 : Nat))) ((169 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then Bool.true else Bool.false)) (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((175 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (2 : Nat))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_69 (subject) ((position + (2 : Nat))) ((175 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))))))))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => _root_.LexLeanPreservation.conv_value))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (3 : Nat) else (0 : Nat))) (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((129 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((159 : UInt8))) then Bool.true else Bool.false) else Bool.false) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((159 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((159 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((159 : UInt8))) then Bool.true else Bool.false) else Bool.false)) (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((129 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (1 : Nat))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_69 (subject) ((position + (1 : Nat))) ((129 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then Bool.true else Bool.false)) (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((159 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (2 : Nat))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_69 (subject) ((position + (2 : Nat))) ((159 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => _root_.LexLeanPreservation.conv_value))))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (1 : Nat))) ((128 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((128 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then Bool.true else Bool.false) else Bool.false) then Bool.true else Bool.true)) else Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (if (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then Bool.true else Bool.false) else Bool.false) then (3 : Nat) else (0 : Nat)) else (0 : Nat))) (LexLeanBoot.AxiomOutput.byteIs (subject) (position) ((227 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_69 (subject) (position) ((227 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (3 : Nat) else (0 : Nat))) (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then Bool.true else Bool.false) else Bool.false) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (2 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (__fits_69 (subject) ((position + (2 : Nat))) ((128 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then (Bool.true && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then (if (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) then Bool.true else Bool.false) else Bool.false)) (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (1 : Nat))) ((128 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (1 : Nat))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_69 (subject) ((position + (1 : Nat))) ((128 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then Bool.true else Bool.false)) (LexLeanBoot.AxiomOutput.byteIs (subject) ((position + (2 : Nat))) ((128 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (2 : Nat))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_69 (subject) ((position + (2 : Nat))) ((128 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => _root_.LexLeanPreservation.conv_value))) (fun _ => _root_.LexLeanPreservation.conv_value)))))))))) - -def __fits_63 (subject : ByteArray) (position : Nat) : Bool := - (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (__fits_55 (subject) (position))) && Bool.true)) && Bool.true) && (if (Nat.blt (0 : Nat) (LexLeanBoot.AxiomOutput.whiteLength (subject) (position))) then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (__fits_55 (subject) (position))) && Bool.true)) && (Nat.blt (position + (LexLeanBoot.AxiomOutput.whiteLength (subject) (position))) 18446744073709551616)) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.whiteLength in -theorem __rel_63 (subject : ByteArray) (position : Nat) : _root_.LexLeanPreservation.FunRel __prog 63 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat position)] (_root_.LexLeanPreservation.Rel (__fits_63 subject position) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) ((if (Nat.blt (0 : Nat) (LexLeanBoot.AxiomOutput.whiteLength (subject) (position))) then (Option.some ((position + (LexLeanBoot.AxiomOutput.whiteLength (subject) (position)))) : (Option Nat)) else (Option.none : (Option Nat)))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (__fits_55 (subject) (position))) && Bool.true)) && (Nat.blt (position + (LexLeanBoot.AxiomOutput.whiteLength (subject) (position))) 18446744073709551616)) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Option.some ((position + (LexLeanBoot.AxiomOutput.whiteLength (subject) (position)))) : (Option Nat)) else (Option.none : (Option Nat)))) (Nat.blt (0 : Nat) (LexLeanBoot.AxiomOutput.whiteLength (subject) (position))) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_55 (subject) (position))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (0 : Nat) (LexLeanBoot.AxiomOutput.whiteLength (subject) (position)))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_55 (subject) (position))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (LexLeanBoot.AxiomOutput.whiteLength (subject) (position)))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_46 (subject : ByteArray) : Bool := - (((Bool.true && Bool.true) && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (subject) : Nat) 18446744073709551616)) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : Nat) => __fits_63 (subject) __p0) ((fun (position : Nat) => (if (Nat.blt (0 : Nat) (LexLeanBoot.AxiomOutput.whiteLength (subject) (position))) then (Option.some ((position + (LexLeanBoot.AxiomOutput.whiteLength (subject) (position)))) : (Option Nat)) else (Option.none : (Option Nat))))) ((_root_.LexLeanRuntime.length (subject) : Nat)) ((0 : Nat)))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.whiteLength in -theorem __rel_46 (subject : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 46 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject)] (_root_.LexLeanPreservation.Rel (__fits_46 subject) (_root_.LexLeanTarget.TargetSyntax.Value.nat (LexLeanBoot.AxiomOutput.skipWhite subject))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes subject)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterateUntil (es := _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.optEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) ((fun (position : Nat) => (if (Nat.blt (0 : Nat) (LexLeanBoot.AxiomOutput.whiteLength (subject) (position))) then (Option.some ((position + (LexLeanBoot.AxiomOutput.whiteLength (subject) (position)))) : (Option Nat)) else (Option.none : (Option Nat))))) (fun (__p0 : Nat) => __fits_63 (subject) __p0) 63 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject)] (fun (__p0 : Nat) => __rel_63 (subject) __p0) (_root_.LexLeanCollections.iterateUntil ((fun (position : Nat) => (if (Nat.blt (0 : Nat) (LexLeanBoot.AxiomOutput.whiteLength (subject) (position))) then (Option.some ((position + (LexLeanBoot.AxiomOutput.whiteLength (subject) (position)))) : (Option Nat)) else (Option.none : (Option Nat)))))) (fun _ => rfl) (fun _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (p := __prog) (fi := 38) (ts := .nat) rfl ((_root_.LexLeanRuntime.length (subject) : Nat)) ((0 : Nat))))) - -def __fits_75 (subject : ByteArray) («end» : Nat) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq «end» (0 : Nat)) then Bool.true else (((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && (__fits_55 (subject) ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat)))) && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (LexLeanBoot.AxiomOutput.whiteLength (subject) ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat))) (1 : Nat)) then Bool.true else ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.ble (2 : Nat) «end») then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && (__fits_55 (subject) ((_root_.LexLeanRuntime.subtract («end») ((2 : Nat)) : Nat)))) && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if (if (Nat.ble (2 : Nat) «end») then (Nat.beq (LexLeanBoot.AxiomOutput.whiteLength (subject) ((_root_.LexLeanRuntime.subtract («end») ((2 : Nat)) : Nat))) (2 : Nat)) else Bool.false) then Bool.true else ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.ble (3 : Nat) «end») then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && (__fits_55 (subject) ((_root_.LexLeanRuntime.subtract («end») ((3 : Nat)) : Nat)))) && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if (if (Nat.ble (3 : Nat) «end») then (Nat.beq (LexLeanBoot.AxiomOutput.whiteLength (subject) ((_root_.LexLeanRuntime.subtract («end») ((3 : Nat)) : Nat))) (3 : Nat)) else Bool.false) then Bool.true else Bool.true)))))))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.whiteLength in -theorem __rel_75 (subject : ByteArray) («end» : Nat) : _root_.LexLeanPreservation.FunRel __prog 75 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat «end»)] (_root_.LexLeanPreservation.Rel (__fits_75 subject «end») (_root_.LexLeanTarget.TargetSyntax.Value.nat (LexLeanBoot.AxiomOutput.whiteEnding subject «end»))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else (((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && (__fits_55 (subject) ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat)))) && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (LexLeanBoot.AxiomOutput.whiteLength (subject) ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat))) (1 : Nat)) then Bool.true else ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.ble (2 : Nat) «end») then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && (__fits_55 (subject) ((_root_.LexLeanRuntime.subtract («end») ((2 : Nat)) : Nat)))) && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if (if (Nat.ble (2 : Nat) «end») then (Nat.beq (LexLeanBoot.AxiomOutput.whiteLength (subject) ((_root_.LexLeanRuntime.subtract («end») ((2 : Nat)) : Nat))) (2 : Nat)) else Bool.false) then Bool.true else ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.ble (3 : Nat) «end») then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && (__fits_55 (subject) ((_root_.LexLeanRuntime.subtract («end») ((3 : Nat)) : Nat)))) && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if (if (Nat.ble (3 : Nat) «end») then (Nat.beq (LexLeanBoot.AxiomOutput.whiteLength (subject) ((_root_.LexLeanRuntime.subtract («end») ((3 : Nat)) : Nat))) (3 : Nat)) else Bool.false) then Bool.true else Bool.true)))))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (0 : Nat) else (if (Nat.beq (LexLeanBoot.AxiomOutput.whiteLength (subject) ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat))) (1 : Nat)) then (1 : Nat) else (if (if (Nat.ble (2 : Nat) «end») then (Nat.beq (LexLeanBoot.AxiomOutput.whiteLength (subject) ((_root_.LexLeanRuntime.subtract («end») ((2 : Nat)) : Nat))) (2 : Nat)) else Bool.false) then (2 : Nat) else (if (if (Nat.ble (3 : Nat) «end») then (Nat.beq (LexLeanBoot.AxiomOutput.whiteLength (subject) ((_root_.LexLeanRuntime.subtract («end») ((3 : Nat)) : Nat))) (3 : Nat)) else Bool.false) then (3 : Nat) else (0 : Nat)))))) (Nat.beq «end» (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq «end» (0 : Nat))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.ble (2 : Nat) «end») then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && (__fits_55 (subject) ((_root_.LexLeanRuntime.subtract («end») ((2 : Nat)) : Nat)))) && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if (if (Nat.ble (2 : Nat) «end») then (Nat.beq (LexLeanBoot.AxiomOutput.whiteLength (subject) ((_root_.LexLeanRuntime.subtract («end») ((2 : Nat)) : Nat))) (2 : Nat)) else Bool.false) then Bool.true else ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.ble (3 : Nat) «end») then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && (__fits_55 (subject) ((_root_.LexLeanRuntime.subtract («end») ((3 : Nat)) : Nat)))) && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if (if (Nat.ble (3 : Nat) «end») then (Nat.beq (LexLeanBoot.AxiomOutput.whiteLength (subject) ((_root_.LexLeanRuntime.subtract («end») ((3 : Nat)) : Nat))) (3 : Nat)) else Bool.false) then Bool.true else Bool.true)))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (1 : Nat) else (if (if (Nat.ble (2 : Nat) «end») then (Nat.beq (LexLeanBoot.AxiomOutput.whiteLength (subject) ((_root_.LexLeanRuntime.subtract («end») ((2 : Nat)) : Nat))) (2 : Nat)) else Bool.false) then (2 : Nat) else (if (if (Nat.ble (3 : Nat) «end») then (Nat.beq (LexLeanBoot.AxiomOutput.whiteLength (subject) ((_root_.LexLeanRuntime.subtract («end») ((3 : Nat)) : Nat))) (3 : Nat)) else Bool.false) then (3 : Nat) else (0 : Nat))))) (Nat.beq (LexLeanBoot.AxiomOutput.whiteLength (subject) ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat))) (1 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub «end» (1 : Nat))) _root_.LexLeanPreservation.convL_nil)) (__rel_55 (subject) ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat)))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (LexLeanBoot.AxiomOutput.whiteLength (subject) ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat))) (1 : Nat))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.ble (3 : Nat) «end») then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && (__fits_55 (subject) ((_root_.LexLeanRuntime.subtract («end») ((3 : Nat)) : Nat)))) && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if (if (Nat.ble (3 : Nat) «end») then (Nat.beq (LexLeanBoot.AxiomOutput.whiteLength (subject) ((_root_.LexLeanRuntime.subtract («end») ((3 : Nat)) : Nat))) (3 : Nat)) else Bool.false) then Bool.true else Bool.true)))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (2 : Nat) else (if (if (Nat.ble (3 : Nat) «end») then (Nat.beq (LexLeanBoot.AxiomOutput.whiteLength (subject) ((_root_.LexLeanRuntime.subtract («end») ((3 : Nat)) : Nat))) (3 : Nat)) else Bool.false) then (3 : Nat) else (0 : Nat)))) (if (Nat.ble (2 : Nat) «end») then (Nat.beq (LexLeanBoot.AxiomOutput.whiteLength (subject) ((_root_.LexLeanRuntime.subtract («end») ((2 : Nat)) : Nat))) (2 : Nat)) else Bool.false) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && (__fits_55 (subject) ((_root_.LexLeanRuntime.subtract («end») ((2 : Nat)) : Nat)))) && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then (Nat.beq (LexLeanBoot.AxiomOutput.whiteLength (subject) ((_root_.LexLeanRuntime.subtract («end») ((2 : Nat)) : Nat))) (2 : Nat)) else Bool.false)) (Nat.ble (2 : Nat) «end») (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe (2 : Nat) «end»)) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub «end» (2 : Nat))) _root_.LexLeanPreservation.convL_nil)) (__rel_55 (subject) ((_root_.LexLeanRuntime.subtract («end») ((2 : Nat)) : Nat)))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (LexLeanBoot.AxiomOutput.whiteLength (subject) ((_root_.LexLeanRuntime.subtract («end») ((2 : Nat)) : Nat))) (2 : Nat)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (3 : Nat) else (0 : Nat))) (if (Nat.ble (3 : Nat) «end») then (Nat.beq (LexLeanBoot.AxiomOutput.whiteLength (subject) ((_root_.LexLeanRuntime.subtract («end») ((3 : Nat)) : Nat))) (3 : Nat)) else Bool.false) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && (__fits_55 (subject) ((_root_.LexLeanRuntime.subtract («end») ((3 : Nat)) : Nat)))) && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then (Nat.beq (LexLeanBoot.AxiomOutput.whiteLength (subject) ((_root_.LexLeanRuntime.subtract («end») ((3 : Nat)) : Nat))) (3 : Nat)) else Bool.false)) (Nat.ble (3 : Nat) «end») (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe (3 : Nat) «end»)) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub «end» (3 : Nat))) _root_.LexLeanPreservation.convL_nil)) (__rel_55 (subject) ((_root_.LexLeanRuntime.subtract («end») ((3 : Nat)) : Nat)))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (LexLeanBoot.AxiomOutput.whiteLength (subject) ((_root_.LexLeanRuntime.subtract («end») ((3 : Nat)) : Nat))) (3 : Nat)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => _root_.LexLeanPreservation.conv_value)))))))) - -def __fits_64 (start : Nat) (subject : ByteArray) («end» : Nat) : Bool := - ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (__fits_75 (subject) («end»))) && Bool.true)) && Bool.true) && (if (Nat.blt (0 : Nat) (LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»))) then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (__fits_75 (subject) («end»))) && Bool.true)) && (Nat.blt (start + (LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»))) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if (if (Nat.blt (0 : Nat) (LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»))) then (Nat.ble (start + (LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»))) «end») else Bool.false) then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (__fits_75 (subject) («end»))) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.whiteEnding in -theorem __rel_64 (start : Nat) (subject : ByteArray) («end» : Nat) : _root_.LexLeanPreservation.FunRel __prog 64 [(_root_.LexLeanTarget.TargetSyntax.Value.nat start), (_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat «end»)] (_root_.LexLeanPreservation.Rel (__fits_64 start subject «end») ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) ((if (if (Nat.blt (0 : Nat) (LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»))) then (Nat.ble (start + (LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»))) «end») else Bool.false) then (Option.some ((_root_.LexLeanRuntime.subtract («end») ((LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»))) : Nat)) : (Option Nat)) else (Option.none : (Option Nat)))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (__fits_75 (subject) («end»))) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Option.some ((_root_.LexLeanRuntime.subtract («end») ((LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»))) : Nat)) : (Option Nat)) else (Option.none : (Option Nat)))) (if (Nat.blt (0 : Nat) (LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»))) then (Nat.ble (start + (LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»))) «end») else Bool.false) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (__fits_75 (subject) («end»))) && Bool.true)) && (Nat.blt (start + (LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»))) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then (Nat.ble (start + (LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»))) «end») else Bool.false)) (Nat.blt (0 : Nat) (LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»))) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_75 (subject) («end»))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (0 : Nat) (LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»)))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_75 (subject) («end»))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd start (LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe (start + (LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»))) «end»))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_75 (subject) («end»))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub «end» (LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»)))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_47 (subject : ByteArray) (start : Nat) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (subject) : Nat) 18446744073709551616)) && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (subject) : Nat) 18446744073709551616)) && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : Nat) => __fits_64 (start) (subject) __p0) ((fun («end» : Nat) => (if (if (Nat.blt (0 : Nat) (LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»))) then (Nat.ble (start + (LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»))) «end») else Bool.false) then (Option.some ((_root_.LexLeanRuntime.subtract («end») ((LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»))) : Nat)) : (Option Nat)) else (Option.none : (Option Nat))))) ((_root_.LexLeanRuntime.length (subject) : Nat)) ((_root_.LexLeanRuntime.length (subject) : Nat)))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.whiteEnding in -theorem __rel_47 (subject : ByteArray) (start : Nat) : _root_.LexLeanPreservation.FunRel __prog 47 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat start)] (_root_.LexLeanPreservation.Rel (__fits_47 subject start) (_root_.LexLeanTarget.TargetSyntax.Value.nat (LexLeanBoot.AxiomOutput.dropWhiteEnd subject start))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes subject)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes subject)) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterateUntil (es := _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.optEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) ((fun («end» : Nat) => (if (if (Nat.blt (0 : Nat) (LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»))) then (Nat.ble (start + (LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»))) «end») else Bool.false) then (Option.some ((_root_.LexLeanRuntime.subtract («end») ((LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»))) : Nat)) : (Option Nat)) else (Option.none : (Option Nat))))) (fun (__p0 : Nat) => __fits_64 (start) (subject) __p0) 64 [(_root_.LexLeanTarget.TargetSyntax.Value.nat start), (_root_.LexLeanTarget.TargetSyntax.Value.bytes subject)] (fun (__p0 : Nat) => __rel_64 (start) (subject) __p0) (_root_.LexLeanCollections.iterateUntil ((fun («end» : Nat) => (if (if (Nat.blt (0 : Nat) (LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»))) then (Nat.ble (start + (LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»))) «end») else Bool.false) then (Option.some ((_root_.LexLeanRuntime.subtract («end») ((LexLeanBoot.AxiomOutput.whiteEnding (subject) («end»))) : Nat)) : (Option Nat)) else (Option.none : (Option Nat)))))) (fun _ => rfl) (fun _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (p := __prog) (fi := 38) (ts := .nat) rfl ((_root_.LexLeanRuntime.length (subject) : Nat)) ((_root_.LexLeanRuntime.length (subject) : Nat))))) - -def __fits_32 (subject : ByteArray) : Bool := - (((Bool.true && Bool.true) && (__fits_46 (subject))) && (let start : Nat := (LexLeanBoot.AxiomOutput.skipWhite (subject)); (((Bool.true && (Bool.true && Bool.true)) && (__fits_47 (subject) (start))) && (let «end» : Nat := (LexLeanBoot.AxiomOutput.dropWhiteEnd (subject) (start)); ((Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_18 (subject) (start) ((_root_.LexLeanRuntime.subtract («end») (start) : Nat)))))))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.dropWhiteEnd LexLeanBoot.AxiomOutput.skipWhite LexLeanBoot.Text.sliceOr in -theorem __rel_32 (subject : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 32 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject)] (_root_.LexLeanPreservation.Rel (__fits_32 subject) (_root_.LexLeanTarget.TargetSyntax.Value.bytes (LexLeanBoot.AxiomOutput.trimmed subject))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (let start : Nat := (LexLeanBoot.AxiomOutput.skipWhite (subject)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_46 (subject))) (let «end» : Nat := (LexLeanBoot.AxiomOutput.dropWhiteEnd (subject) (start)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_47 (subject) (start))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub «end» start)) _root_.LexLeanPreservation.convL_nil))) (__rel_18 (subject) (start) ((_root_.LexLeanRuntime.subtract («end») (start) : Nat)))))) - -def __fits_42 (subject : ByteArray) : Bool := - ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (__fits_55 (subject) ((0 : Nat)))) && Bool.true)) && Bool.true) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.whiteLength in -theorem __rel_42 (subject : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 42 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject)] (_root_.LexLeanPreservation.Rel (__fits_42 subject) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanBoot.AxiomOutput.startsWhite subject))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_55 (subject) ((0 : Nat)))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (0 : Nat) (LexLeanBoot.AxiomOutput.whiteLength (subject) ((0 : Nat))))) - -def __fits_29 (line : ByteArray) : Bool := - (((Bool.true && Bool.true) && (__fits_32 (line))) && (let cleaned : ByteArray := (LexLeanBoot.AxiomOutput.trimmed (line)); (((Bool.true && Bool.true) && (__fits_42 (line))) && (if (LexLeanBoot.AxiomOutput.startsWhite (line)) then (((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (cleaned) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true) && (if (Nat.beq (0 : Nat) (_root_.LexLeanRuntime.length (cleaned) : Nat)) then (Bool.true && Bool.true) else ((Bool.true && Bool.true) && Bool.true))) else (Bool.true && Bool.true))))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.startsWhite LexLeanBoot.AxiomOutput.trimmed in -theorem __rel_29 (line : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 29 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes line)] (_root_.LexLeanPreservation.Rel (__fits_29 line) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (LexLeanBoot.AxiomOutput.continuation line))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (let cleaned : ByteArray := (LexLeanBoot.AxiomOutput.trimmed (line)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_32 (line))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (cleaned) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true) && (if (Nat.beq (0 : Nat) (_root_.LexLeanRuntime.length (cleaned) : Nat)) then (Bool.true && Bool.true) else ((Bool.true && Bool.true) && Bool.true))) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (if __b then (if (Nat.beq (0 : Nat) (_root_.LexLeanRuntime.length (cleaned) : Nat)) then (Option.none : (Option ByteArray)) else (Option.some (cleaned) : (Option ByteArray))) else (Option.none : (Option ByteArray)))) (LexLeanBoot.AxiomOutput.startsWhite (line)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_42 (line))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else ((Bool.true && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (if __b then (Option.none : (Option ByteArray)) else (Option.some (cleaned) : (Option ByteArray)))) (Nat.beq (0 : Nat) (_root_.LexLeanRuntime.length (cleaned) : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes cleaned)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (0 : Nat) (_root_.LexLeanRuntime.length (cleaned) : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)))) - -def __fits_31 (message : ByteArray) (declaration : (Option ByteArray)) : Bool := - ((((Bool.true && (Bool.true && Bool.true)) && (__fits_19 (message) (declaration))) && Bool.true) && Bool.true) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.rejected in -theorem __rel_31 (message : ByteArray) (declaration : (Option ByteArray)) : _root_.LexLeanPreservation.FunRel __prog 31 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes message), ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) declaration)] (_root_.LexLeanPreservation.Rel (__fits_31 message declaration) (__enc_1 (LexLeanBoot.AxiomOutput.stop message declaration))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_19 (message) (declaration))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_adt) - -def __fits_68 (subject : ByteArray) (suffix : ByteArray) : Bool := - (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (subject) : Nat) 18446744073709551616)) && (let total : Nat := (_root_.LexLeanRuntime.length (subject) : Nat); (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (suffix) : Nat) 18446744073709551616)) && (let size : Nat := (_root_.LexLeanRuntime.length (suffix) : Nat); (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.ble size total) then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (Bool.true && Bool.true))) && Bool.true) && (match (_root_.LexLeanRuntime.slice (subject) ((_root_.LexLeanRuntime.subtract (total) (size) : Nat)) (size) : (Option ByteArray)) with | Option.some tail => ((Bool.true && (Bool.true && Bool.true)) && Bool.true) | Option.none => (Bool.true && Bool.true))) else (Bool.true && Bool.true))))))) - -theorem __rel_68 (subject : ByteArray) (suffix : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 68 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.bytes suffix)] (_root_.LexLeanPreservation.Rel (__fits_68 subject suffix) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanBoot.Text.endsWith subject suffix))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (let total : Nat := (_root_.LexLeanRuntime.length (subject) : Nat); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes subject)) (let size : Nat := (_root_.LexLeanRuntime.length (suffix) : Nat); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes suffix)) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (Bool.true && Bool.true))) && Bool.true) && (match (_root_.LexLeanRuntime.slice (subject) ((_root_.LexLeanRuntime.subtract (total) (size) : Nat)) (size) : (Option ByteArray)) with | Option.some tail => ((Bool.true && (Bool.true && Bool.true)) && Bool.true) | Option.none => (Bool.true && Bool.true))) else (Bool.true && Bool.true))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then (match (_root_.LexLeanRuntime.slice (subject) ((_root_.LexLeanRuntime.subtract (total) (size) : Nat)) (size) : (Option ByteArray)) with | Option.some tail => (_root_.LexLeanRuntime.equal (tail) (suffix) : Bool) | Option.none => Bool.false) else Bool.false)) (Nat.ble size total) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe size total)) (fun _ => (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.some tail => ((Bool.true && (Bool.true && Bool.true)) && Bool.true) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option ByteArray)) => _root_.LexLeanTarget.TargetSyntax.Value.bool (match __a with | Option.some tail => (_root_.LexLeanRuntime.equal (tail) (suffix) : Bool) | Option.none => Bool.false)) (_root_.LexLeanRuntime.slice (subject) ((_root_.LexLeanRuntime.subtract (total) (size) : Nat)) (size) : (Option ByteArray)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub total size)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.prim_slice_bytes subject (_root_.LexLeanRuntime.subtract (total) (size) : Nat) size)) (fun (__a : (Option ByteArray)) _ => match __a with | Option.some tail => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_bytes tail suffix))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))))) - -def __fits_56 (subject : ByteArray) (suffix : ByteArray) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && (__fits_68 (subject) (suffix))) && (if (LexLeanBoot.Text.endsWith (subject) (suffix)) then ((((Bool.true && (Bool.true && (((((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (subject) : Nat) 18446744073709551616)) && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (suffix) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true) && Bool.true))) && (__fits_18 (subject) ((0 : Nat)) ((_root_.LexLeanRuntime.subtract ((_root_.LexLeanRuntime.length (subject) : Nat)) ((_root_.LexLeanRuntime.length (suffix) : Nat)) : Nat)))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -attribute [local irreducible] LexLeanBoot.Text.endsWith LexLeanBoot.Text.sliceOr in -theorem __rel_56 (subject : ByteArray) (suffix : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 56 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.bytes suffix)] (_root_.LexLeanPreservation.Rel (__fits_56 subject suffix) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (LexLeanBoot.AxiomOutput.stripSuffix subject suffix))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (Bool.true && (((((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (subject) : Nat) 18446744073709551616)) && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (suffix) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true) && Bool.true))) && (__fits_18 (subject) ((0 : Nat)) ((_root_.LexLeanRuntime.subtract ((_root_.LexLeanRuntime.length (subject) : Nat)) ((_root_.LexLeanRuntime.length (suffix) : Nat)) : Nat)))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (if __b then (Option.some ((LexLeanBoot.Text.sliceOr (subject) ((0 : Nat)) ((_root_.LexLeanRuntime.subtract ((_root_.LexLeanRuntime.length (subject) : Nat)) ((_root_.LexLeanRuntime.length (suffix) : Nat)) : Nat)))) : (Option ByteArray)) else (Option.none : (Option ByteArray)))) (LexLeanBoot.Text.endsWith (subject) (suffix)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_68 (subject) (suffix))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes subject)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes suffix)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub (_root_.LexLeanRuntime.length (subject) : Nat) (_root_.LexLeanRuntime.length (suffix) : Nat))) _root_.LexLeanPreservation.convL_nil))) (__rel_18 (subject) ((0 : Nat)) ((_root_.LexLeanRuntime.subtract ((_root_.LexLeanRuntime.length (subject) : Nat)) ((_root_.LexLeanRuntime.length (suffix) : Nat)) : Nat)))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_43 (payload : ByteArray) : Bool := - (((Bool.true && (((Bool.true && Bool.true) && (__fits_7 ("]"))) && Bool.true)) && (__fits_56 (payload) ((LexLeanBoot.AxiomOutput.text ("]"))))) && (match (LexLeanBoot.AxiomOutput.stripSuffix (payload) ((LexLeanBoot.AxiomOutput.text ("]")))) with | Option.some bracketed => (Bool.true && Bool.true) | Option.none => (((Bool.true && (((Bool.true && Bool.true) && (__fits_7 (" does not depend on any axioms"))) && Bool.true)) && (__fits_56 (payload) ((LexLeanBoot.AxiomOutput.text (" does not depend on any axioms"))))) && (match (LexLeanBoot.AxiomOutput.stripSuffix (payload) ((LexLeanBoot.AxiomOutput.text (" does not depend on any axioms")))) with | Option.some sentence => (Bool.true && Bool.true) | Option.none => (Bool.true && Bool.true))))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.stripSuffix LexLeanBoot.AxiomOutput.text in -theorem __rel_43 (payload : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 43 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes payload)] (_root_.LexLeanPreservation.Rel (__fits_43 payload) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanBoot.AxiomOutput.terminates payload))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.some bracketed => (Bool.true && Bool.true) | Option.none => (((Bool.true && (((Bool.true && Bool.true) && (__fits_7 (" does not depend on any axioms"))) && Bool.true)) && (__fits_56 (payload) ((LexLeanBoot.AxiomOutput.text (" does not depend on any axioms"))))) && (match (LexLeanBoot.AxiomOutput.stripSuffix (payload) ((LexLeanBoot.AxiomOutput.text (" does not depend on any axioms")))) with | Option.some sentence => (Bool.true && Bool.true) | Option.none => (Bool.true && Bool.true))))) (fun (__a : (Option ByteArray)) => _root_.LexLeanTarget.TargetSyntax.Value.bool (match __a with | Option.some bracketed => Bool.true | Option.none => (match (LexLeanBoot.AxiomOutput.stripSuffix (payload) ((LexLeanBoot.AxiomOutput.text (" does not depend on any axioms")))) with | Option.some sentence => Bool.true | Option.none => Bool.false))) (LexLeanBoot.AxiomOutput.stripSuffix (payload) ((LexLeanBoot.AxiomOutput.text ("]")))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("]"))) _root_.LexLeanPreservation.convL_nil)) (__rel_56 (payload) ((LexLeanBoot.AxiomOutput.text ("]"))))) (fun (__a : (Option ByteArray)) _ => match __a with | Option.some bracketed => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.some sentence => (Bool.true && Bool.true) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option ByteArray)) => _root_.LexLeanTarget.TargetSyntax.Value.bool (match __a with | Option.some sentence => Bool.true | Option.none => Bool.false)) (LexLeanBoot.AxiomOutput.stripSuffix (payload) ((LexLeanBoot.AxiomOutput.text (" does not depend on any axioms")))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 (" does not depend on any axioms"))) _root_.LexLeanPreservation.convL_nil)) (__rel_56 (payload) ((LexLeanBoot.AxiomOutput.text (" does not depend on any axioms"))))) (fun (__a : (Option ByteArray)) _ => match __a with | Option.some sentence => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))))))))) - -def __fits_48 (subject : ByteArray) («prefix» : ByteArray) : Bool := - (((Bool.true && (Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length («prefix») : Nat) 18446744073709551616)) && Bool.true))) && Bool.true) && (match (_root_.LexLeanRuntime.slice (subject) ((0 : Nat)) ((_root_.LexLeanRuntime.length («prefix») : Nat)) : (Option ByteArray)) with | Option.some head => ((Bool.true && (Bool.true && Bool.true)) && Bool.true) | Option.none => (Bool.true && Bool.true))) - -theorem __rel_48 (subject : ByteArray) («prefix» : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 48 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.bytes «prefix»)] (_root_.LexLeanPreservation.Rel (__fits_48 subject «prefix») (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanBoot.Text.startsWith subject «prefix»))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.some head => ((Bool.true && (Bool.true && Bool.true)) && Bool.true) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option ByteArray)) => _root_.LexLeanTarget.TargetSyntax.Value.bool (match __a with | Option.some head => (_root_.LexLeanRuntime.equal (head) («prefix») : Bool) | Option.none => Bool.false)) (_root_.LexLeanRuntime.slice (subject) ((0 : Nat)) ((_root_.LexLeanRuntime.length («prefix») : Nat)) : (Option ByteArray)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes «prefix»)) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.prim_slice_bytes subject (0 : Nat) (_root_.LexLeanRuntime.length («prefix») : Nat))) (fun (__a : (Option ByteArray)) _ => match __a with | Option.some head => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_bytes head «prefix»))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))))) - -def __fits_49 (subject : ByteArray) («prefix» : ByteArray) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && (__fits_48 (subject) («prefix»))) && (if (LexLeanBoot.Text.startsWith (subject) («prefix»)) then ((((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length («prefix») : Nat) 18446744073709551616)) && (((((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (subject) : Nat) 18446744073709551616)) && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length («prefix») : Nat) 18446744073709551616)) && Bool.true)) && Bool.true) && Bool.true))) && (__fits_18 (subject) ((_root_.LexLeanRuntime.length («prefix») : Nat)) ((_root_.LexLeanRuntime.subtract ((_root_.LexLeanRuntime.length (subject) : Nat)) ((_root_.LexLeanRuntime.length («prefix») : Nat)) : Nat)))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -attribute [local irreducible] LexLeanBoot.Text.sliceOr LexLeanBoot.Text.startsWith in -theorem __rel_49 (subject : ByteArray) («prefix» : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 49 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.bytes «prefix»)] (_root_.LexLeanPreservation.Rel (__fits_49 subject «prefix») ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (LexLeanBoot.AxiomOutput.stripPrefix subject «prefix»))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length («prefix») : Nat) 18446744073709551616)) && (((((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (subject) : Nat) 18446744073709551616)) && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length («prefix») : Nat) 18446744073709551616)) && Bool.true)) && Bool.true) && Bool.true))) && (__fits_18 (subject) ((_root_.LexLeanRuntime.length («prefix») : Nat)) ((_root_.LexLeanRuntime.subtract ((_root_.LexLeanRuntime.length (subject) : Nat)) ((_root_.LexLeanRuntime.length («prefix») : Nat)) : Nat)))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (if __b then (Option.some ((LexLeanBoot.Text.sliceOr (subject) ((_root_.LexLeanRuntime.length («prefix») : Nat)) ((_root_.LexLeanRuntime.subtract ((_root_.LexLeanRuntime.length (subject) : Nat)) ((_root_.LexLeanRuntime.length («prefix») : Nat)) : Nat)))) : (Option ByteArray)) else (Option.none : (Option ByteArray)))) (LexLeanBoot.Text.startsWith (subject) («prefix»)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_48 (subject) («prefix»))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes «prefix»)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes subject)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes «prefix»)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub (_root_.LexLeanRuntime.length (subject) : Nat) (_root_.LexLeanRuntime.length («prefix») : Nat))) _root_.LexLeanPreservation.convL_nil))) (__rel_18 (subject) ((_root_.LexLeanRuntime.length («prefix») : Nat)) ((_root_.LexLeanRuntime.subtract ((_root_.LexLeanRuntime.length (subject) : Nat)) ((_root_.LexLeanRuntime.length («prefix») : Nat)) : Nat)))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_59 (message : ByteArray) : Bool := - ((Bool.true && Bool.true) && Bool.true) - -theorem __rel_59 (message : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 59 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes message)] (_root_.LexLeanPreservation.Rel (__fits_59 message) ((_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) (LexLeanBoot.AxiomOutput.malformed message))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error) - -def __fits_57 (payload : ByteArray) : Bool := - ((((((Bool.true && Bool.true) && (__fits_7 ("unrecognized axiom payload: "))) && (Bool.true && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.text ("unrecognized axiom payload: "))) (payload))) && Bool.true) && (__fits_59 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("unrecognized axiom payload: "))) (payload))))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.cat LexLeanBoot.AxiomOutput.malformed LexLeanBoot.AxiomOutput.text in -theorem __rel_57 (payload : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 57 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes payload)] (_root_.LexLeanPreservation.Rel (__fits_57 payload) ((_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) (LexLeanBoot.AxiomOutput.unrecognized payload))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("unrecognized axiom payload: "))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_6 ((LexLeanBoot.AxiomOutput.text ("unrecognized axiom payload: "))) (payload))) _root_.LexLeanPreservation.convL_nil) (__rel_59 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("unrecognized axiom payload: "))) (payload))))) - -def __fits_58 (name : ByteArray) (axioms : (List ByteArray)) : Bool := - ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) - -theorem __rel_58 (name : ByteArray) (axioms : (List ByteArray)) : _root_.LexLeanPreservation.FunRel __prog 58 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes name), ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) axioms)] (_root_.LexLeanPreservation.Rel (__fits_58 name axioms) ((_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) (LexLeanBoot.AxiomOutput.parsed name axioms))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok) - -def __fits_60 (name : ByteArray) : Bool := - ((((Bool.true && Bool.true) && (__fits_40 (name))) && (((Bool.true && Bool.true) && (__fits_7 (" is not a Lean name"))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.quoted (name))) ((LexLeanBoot.AxiomOutput.text (" is not a Lean name"))))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.cat LexLeanBoot.AxiomOutput.quoted LexLeanBoot.AxiomOutput.text in -theorem __rel_60 (name : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 60 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes name)] (_root_.LexLeanPreservation.Rel (__fits_60 name) (_root_.LexLeanTarget.TargetSyntax.Value.bytes (LexLeanBoot.AxiomOutput.notLean name))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_40 (name))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 (" is not a Lean name"))) _root_.LexLeanPreservation.convL_nil)) (__rel_6 ((LexLeanBoot.AxiomOutput.quoted (name))) ((LexLeanBoot.AxiomOutput.text (" is not a Lean name"))))) - -def __fits_94 (byte : UInt8) : Bool := - (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_79 (byte) ((65 : UInt8)) ((90 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.inRange (byte) ((65 : UInt8)) ((90 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_79 (byte) ((97 : UInt8)) ((122 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.inRange (byte) ((97 : UInt8)) ((122 : UInt8))) then (Bool.true && Bool.true) else ((Bool.true && (Bool.true && Bool.true)) && Bool.true))))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.inRange in -theorem __rel_94 (byte : UInt8) : _root_.LexLeanPreservation.FunRel __prog 94 [(_root_.LexLeanTarget.TargetSyntax.Value.u8 byte)] (_root_.LexLeanPreservation.Rel (__fits_94 byte) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanBoot.AxiomOutput.isFirst byte))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_79 (byte) ((97 : UInt8)) ((122 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.inRange (byte) ((97 : UInt8)) ((122 : UInt8))) then (Bool.true && Bool.true) else ((Bool.true && (Bool.true && Bool.true)) && Bool.true))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then Bool.true else (if (LexLeanBoot.AxiomOutput.inRange (byte) ((97 : UInt8)) ((122 : UInt8))) then Bool.true else (_root_.LexLeanRuntime.equal (byte) ((95 : UInt8)) : Bool)))) (LexLeanBoot.AxiomOutput.inRange (byte) ((65 : UInt8)) ((90 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_79 (byte) ((65 : UInt8)) ((90 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else ((Bool.true && (Bool.true && Bool.true)) && Bool.true))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then Bool.true else (_root_.LexLeanRuntime.equal (byte) ((95 : UInt8)) : Bool))) (LexLeanBoot.AxiomOutput.inRange (byte) ((97 : UInt8)) ((122 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_79 (byte) ((97 : UInt8)) ((122 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_u8 byte (95 : UInt8))))))) - -def __fits_95 (byte : UInt8) : Bool := - (((Bool.true && Bool.true) && (__fits_94 (byte))) && (if (LexLeanBoot.AxiomOutput.isFirst (byte)) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_79 (byte) ((48 : UInt8)) ((57 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.inRange (byte) ((48 : UInt8)) ((57 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal (byte) ((63 : UInt8)) : Bool) then (Bool.true && Bool.true) else ((Bool.true && (Bool.true && Bool.true)) && Bool.true))))))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.inRange LexLeanBoot.AxiomOutput.isFirst in -theorem __rel_95 (byte : UInt8) : _root_.LexLeanPreservation.FunRel __prog 95 [(_root_.LexLeanTarget.TargetSyntax.Value.u8 byte)] (_root_.LexLeanPreservation.Rel (__fits_95 byte) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanBoot.AxiomOutput.isLater byte))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_79 (byte) ((48 : UInt8)) ((57 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.inRange (byte) ((48 : UInt8)) ((57 : UInt8))) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal (byte) ((63 : UInt8)) : Bool) then (Bool.true && Bool.true) else ((Bool.true && (Bool.true && Bool.true)) && Bool.true))))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then Bool.true else (if (LexLeanBoot.AxiomOutput.inRange (byte) ((48 : UInt8)) ((57 : UInt8))) then Bool.true else (if (_root_.LexLeanRuntime.equal (byte) ((63 : UInt8)) : Bool) then Bool.true else (_root_.LexLeanRuntime.equal (byte) ((39 : UInt8)) : Bool))))) (LexLeanBoot.AxiomOutput.isFirst (byte)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_94 (byte))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal (byte) ((63 : UInt8)) : Bool) then (Bool.true && Bool.true) else ((Bool.true && (Bool.true && Bool.true)) && Bool.true))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then Bool.true else (if (_root_.LexLeanRuntime.equal (byte) ((63 : UInt8)) : Bool) then Bool.true else (_root_.LexLeanRuntime.equal (byte) ((39 : UInt8)) : Bool)))) (LexLeanBoot.AxiomOutput.inRange (byte) ((48 : UInt8)) ((57 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (__rel_79 (byte) ((48 : UInt8)) ((57 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else ((Bool.true && (Bool.true && Bool.true)) && Bool.true))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then Bool.true else (_root_.LexLeanRuntime.equal (byte) ((39 : UInt8)) : Bool))) (_root_.LexLeanRuntime.equal (byte) ((63 : UInt8)) : Bool) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_u8 byte (63 : UInt8))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_u8 byte (39 : UInt8))))))))) - -def __fits_89 (mode : Nat) (byte : UInt8) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq mode (2 : Nat)) then Bool.true else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal (byte) ((46 : UInt8)) : Bool) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq mode (1 : Nat)) then Bool.true else Bool.true)) else (((Bool.true && Bool.true) && (__fits_94 (byte))) && (if (LexLeanBoot.AxiomOutput.isFirst (byte)) then Bool.true else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq mode (1 : Nat)) then (((Bool.true && Bool.true) && (__fits_95 (byte))) && (if (LexLeanBoot.AxiomOutput.isLater (byte)) then Bool.true else Bool.true)) else Bool.true)))))))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.isFirst LexLeanBoot.AxiomOutput.isLater in -theorem __rel_89 (mode : Nat) (byte : UInt8) : _root_.LexLeanPreservation.FunRel __prog 89 [(_root_.LexLeanTarget.TargetSyntax.Value.nat mode), (_root_.LexLeanTarget.TargetSyntax.Value.u8 byte)] (_root_.LexLeanPreservation.Rel (__fits_89 mode byte) (_root_.LexLeanTarget.TargetSyntax.Value.nat (LexLeanBoot.AxiomOutput.nameMode mode byte))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal (byte) ((46 : UInt8)) : Bool) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq mode (1 : Nat)) then Bool.true else Bool.true)) else (((Bool.true && Bool.true) && (__fits_94 (byte))) && (if (LexLeanBoot.AxiomOutput.isFirst (byte)) then Bool.true else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq mode (1 : Nat)) then (((Bool.true && Bool.true) && (__fits_95 (byte))) && (if (LexLeanBoot.AxiomOutput.isLater (byte)) then Bool.true else Bool.true)) else Bool.true)))))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (2 : Nat) else (if (_root_.LexLeanRuntime.equal (byte) ((46 : UInt8)) : Bool) then (if (Nat.beq mode (1 : Nat)) then (0 : Nat) else (2 : Nat)) else (if (LexLeanBoot.AxiomOutput.isFirst (byte)) then (1 : Nat) else (if (Nat.beq mode (1 : Nat)) then (if (LexLeanBoot.AxiomOutput.isLater (byte)) then (1 : Nat) else (2 : Nat)) else (2 : Nat)))))) (Nat.beq mode (2 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq mode (2 : Nat))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq mode (1 : Nat)) then Bool.true else Bool.true)) else (((Bool.true && Bool.true) && (__fits_94 (byte))) && (if (LexLeanBoot.AxiomOutput.isFirst (byte)) then Bool.true else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq mode (1 : Nat)) then (((Bool.true && Bool.true) && (__fits_95 (byte))) && (if (LexLeanBoot.AxiomOutput.isLater (byte)) then Bool.true else Bool.true)) else Bool.true)))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (if (Nat.beq mode (1 : Nat)) then (0 : Nat) else (2 : Nat)) else (if (LexLeanBoot.AxiomOutput.isFirst (byte)) then (1 : Nat) else (if (Nat.beq mode (1 : Nat)) then (if (LexLeanBoot.AxiomOutput.isLater (byte)) then (1 : Nat) else (2 : Nat)) else (2 : Nat))))) (_root_.LexLeanRuntime.equal (byte) ((46 : UInt8)) : Bool) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_u8 byte (46 : UInt8))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (0 : Nat) else (2 : Nat))) (Nat.beq mode (1 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq mode (1 : Nat))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => _root_.LexLeanPreservation.conv_value))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq mode (1 : Nat)) then (((Bool.true && Bool.true) && (__fits_95 (byte))) && (if (LexLeanBoot.AxiomOutput.isLater (byte)) then Bool.true else Bool.true)) else Bool.true)))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (1 : Nat) else (if (Nat.beq mode (1 : Nat)) then (if (LexLeanBoot.AxiomOutput.isLater (byte)) then (1 : Nat) else (2 : Nat)) else (2 : Nat)))) (LexLeanBoot.AxiomOutput.isFirst (byte)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_94 (byte))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && (__fits_95 (byte))) && (if (LexLeanBoot.AxiomOutput.isLater (byte)) then Bool.true else Bool.true)) else Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (if (LexLeanBoot.AxiomOutput.isLater (byte)) then (1 : Nat) else (2 : Nat)) else (2 : Nat))) (Nat.beq mode (1 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq mode (1 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (1 : Nat) else (2 : Nat))) (LexLeanBoot.AxiomOutput.isLater (byte)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_95 (byte))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => _root_.LexLeanPreservation.conv_value))) (fun _ => _root_.LexLeanPreservation.conv_value)))))))) - -def __fits_80 (subject : ByteArray) (state : (Prod Nat Nat)) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (state).2 (2 : Nat)) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && (__fits_51 (subject) ((state).1))) && (match (LexLeanBoot.Text.byteAt (subject) ((state).1)) with | Option.some byte => ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((state).1 + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (__fits_89 ((state).2) (byte))) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (Bool.true && Bool.true))))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.nameMode LexLeanBoot.Text.byteAt in -theorem __rel_80 (subject : ByteArray) (state : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 80 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) state)] (_root_.LexLeanPreservation.Rel (__fits_80 subject state) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (LexLeanBoot.AxiomOutput.nameStep subject state))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && (__fits_51 (subject) ((state).1))) && (match (LexLeanBoot.Text.byteAt (subject) ((state).1)) with | Option.some byte => ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((state).1 + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (__fits_89 ((state).2) (byte))) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (Bool.true && Bool.true))))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (if __b then (Option.none : (Option (Prod Nat Nat))) else (match (LexLeanBoot.Text.byteAt (subject) ((state).1)) with | Option.some byte => (Option.some ((((state).1 + (1 : Nat)), (LexLeanBoot.AxiomOutput.nameMode ((state).2) (byte)))) : (Option (Prod Nat Nat))) | Option.none => (Option.none : (Option (Prod Nat Nat)))))) (Nat.beq (state).2 (2 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (state).2 (2 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) (fun _ => (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u8) (fun (__a : (Option UInt8)) => (match __a with | Option.some byte => ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((state).1 + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (__fits_89 ((state).2) (byte))) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option UInt8)) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (match __a with | Option.some byte => (Option.some ((((state).1 + (1 : Nat)), (LexLeanBoot.AxiomOutput.nameMode ((state).2) (byte)))) : (Option (Prod Nat Nat))) | Option.none => (Option.none : (Option (Prod Nat Nat))))) (LexLeanBoot.Text.byteAt (subject) ((state).1)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil)) (__rel_51 (subject) ((state).1))) (fun (__a : (Option UInt8)) _ => match __a with | Option.some byte => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (state).1 (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_89 ((state).2) (byte))) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))) - -def __fits_72 (raw : ByteArray) (state : (Prod Nat Nat)) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && (__fits_80 (raw) (state))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.nameStep in -theorem __rel_72 (raw : ByteArray) (state : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 72 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes raw), ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) state)] (_root_.LexLeanPreservation.Rel (__fits_72 raw state) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) ((LexLeanBoot.AxiomOutput.nameStep (raw) (state))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_80 (raw) (state))) - -def __fits_61 (raw : ByteArray) : Bool := - (((((Bool.true && Bool.true) && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (raw) : Nat) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : (Prod Nat Nat)) => __fits_72 (raw) __p0) ((fun (state : (Prod Nat Nat)) => (LexLeanBoot.AxiomOutput.nameStep (raw) (state)))) ((_root_.LexLeanRuntime.length (raw) : Nat)) (((0 : Nat), (0 : Nat))))) && (Bool.true && Bool.true)) && Bool.true) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.nameStep in -theorem __rel_61 (raw : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 61 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes raw)] (_root_.LexLeanPreservation.Rel (__fits_61 raw) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanBoot.AxiomOutput.isClosedLeanName raw))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes raw)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterateUntil (es := (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (_root_.LexLeanPreservation.optEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) ((fun (state : (Prod Nat Nat)) => (LexLeanBoot.AxiomOutput.nameStep (raw) (state)))) (fun (__p0 : (Prod Nat Nat)) => __fits_72 (raw) __p0) 72 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes raw)] (fun (__p0 : (Prod Nat Nat)) => __rel_72 (raw) __p0) (_root_.LexLeanCollections.iterateUntil ((fun (state : (Prod Nat Nat)) => (LexLeanBoot.AxiomOutput.nameStep (raw) (state))))) (fun _ => rfl) (fun _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (p := __prog) (fi := 71) (ts := (.pair .nat .nat)) rfl ((_root_.LexLeanRuntime.length (raw) : Nat)) (((0 : Nat), (0 : Nat))))))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (((_root_.LexLeanCollections.iterateUntil ((fun (state : (Prod Nat Nat)) => (LexLeanBoot.AxiomOutput.nameStep (raw) (state)))) ((_root_.LexLeanRuntime.length (raw) : Nat)) (((0 : Nat), (0 : Nat))) : (Prod (Prod Nat Nat) Bool))).1).2 (1 : Nat))) - -def __fits_82 (subject : ByteArray) (needle : ByteArray) (position : Nat) : Bool := - (((Bool.true && (Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (needle) : Nat) 18446744073709551616)) && Bool.true))) && Bool.true) && (match (_root_.LexLeanRuntime.slice (subject) (position) ((_root_.LexLeanRuntime.length (needle) : Nat)) : (Option ByteArray)) with | Option.some window => ((Bool.true && (Bool.true && Bool.true)) && Bool.true) | Option.none => (Bool.true && Bool.true))) - -theorem __rel_82 (subject : ByteArray) (needle : ByteArray) (position : Nat) : _root_.LexLeanPreservation.FunRel __prog 82 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.bytes needle), (_root_.LexLeanTarget.TargetSyntax.Value.nat position)] (_root_.LexLeanPreservation.Rel (__fits_82 subject needle position) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanBoot.Text.matchAt subject needle position))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.some window => ((Bool.true && (Bool.true && Bool.true)) && Bool.true) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option ByteArray)) => _root_.LexLeanTarget.TargetSyntax.Value.bool (match __a with | Option.some window => (_root_.LexLeanRuntime.equal (window) (needle) : Bool) | Option.none => Bool.false)) (_root_.LexLeanRuntime.slice (subject) (position) ((_root_.LexLeanRuntime.length (needle) : Nat)) : (Option ByteArray)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes needle)) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.prim_slice_bytes subject position (_root_.LexLeanRuntime.length (needle) : Nat))) (fun (__a : (Option ByteArray)) _ => match __a with | Option.some window => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_bytes window needle))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))))) - -def __fits_90 (subject : ByteArray) (needle : ByteArray) (position : Nat) : Bool := - (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_82 (subject) (needle) (position))) && (if (LexLeanBoot.Text.matchAt (subject) (needle) (position)) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.blt (0 : Nat) position) then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) - -attribute [local irreducible] LexLeanBoot.Text.matchAt in -theorem __rel_90 (subject : ByteArray) (needle : ByteArray) (position : Nat) : _root_.LexLeanPreservation.FunRel __prog 90 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.bytes needle), (_root_.LexLeanTarget.TargetSyntax.Value.nat position)] (_root_.LexLeanPreservation.Rel (__fits_90 subject needle position) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (LexLeanBoot.AxiomOutput.lastStep subject needle position))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.blt (0 : Nat) position) then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Option.none : (Option Nat)) else (if (Nat.blt (0 : Nat) position) then (Option.some ((_root_.LexLeanRuntime.subtract (position) ((1 : Nat)) : Nat)) : (Option Nat)) else (Option.none : (Option Nat))))) (LexLeanBoot.Text.matchAt (subject) (needle) (position)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (__rel_82 (subject) (needle) (position))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Option.some ((_root_.LexLeanRuntime.subtract (position) ((1 : Nat)) : Nat)) : (Option Nat)) else (Option.none : (Option Nat)))) (Nat.blt (0 : Nat) position) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (0 : Nat) position)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub position (1 : Nat))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))) - -def __fits_81 (needle : ByteArray) (subject : ByteArray) (position : Nat) : Bool := - ((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_90 (subject) (needle) (position))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.lastStep in -theorem __rel_81 (needle : ByteArray) (subject : ByteArray) (position : Nat) : _root_.LexLeanPreservation.FunRel __prog 81 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes needle), (_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat position)] (_root_.LexLeanPreservation.Rel (__fits_81 needle subject position) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) ((LexLeanBoot.AxiomOutput.lastStep (subject) (needle) (position))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (__rel_90 (subject) (needle) (position))) - -def __fits_73 (subject : ByteArray) (needle : ByteArray) : Bool := - (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (subject) : Nat) 18446744073709551616)) && (let total : Nat := (_root_.LexLeanRuntime.length (subject) : Nat); (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (needle) : Nat) 18446744073709551616)) && (let size : Nat := (_root_.LexLeanRuntime.length (needle) : Nat); (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.blt total size) then (Bool.true && Bool.true) else ((((Bool.true && (Bool.true && Bool.true)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (total + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : Nat) => __fits_81 (needle) (subject) __p0) ((fun (position : Nat) => (LexLeanBoot.AxiomOutput.lastStep (subject) (needle) (position)))) ((total + (1 : Nat))) ((_root_.LexLeanRuntime.subtract (total) (size) : Nat)))) && (let position : Nat := ((_root_.LexLeanCollections.iterateUntil ((fun (position : Nat) => (LexLeanBoot.AxiomOutput.lastStep (subject) (needle) (position)))) ((total + (1 : Nat))) ((_root_.LexLeanRuntime.subtract (total) (size) : Nat)) : (Prod Nat Bool))).1; (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_82 (subject) (needle) (position))) && (if (LexLeanBoot.Text.matchAt (subject) (needle) (position)) then ((((((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_18 (subject) ((0 : Nat)) (position))) && (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + size) 18446744073709551616)) && (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + size) 18446744073709551616)) && Bool.true)) && Bool.true) && Bool.true))) && (__fits_18 (subject) ((position + size)) ((_root_.LexLeanRuntime.subtract (total) ((position + size)) : Nat)))) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))))))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.lastStep LexLeanBoot.Text.matchAt LexLeanBoot.Text.sliceOr in -theorem __rel_73 (subject : ByteArray) (needle : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 73 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.bytes needle)] (_root_.LexLeanPreservation.Rel (__fits_73 subject needle) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (LexLeanBoot.AxiomOutput.splitLast subject needle))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (let total : Nat := (_root_.LexLeanRuntime.length (subject) : Nat); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes subject)) (let size : Nat := (_root_.LexLeanRuntime.length (needle) : Nat); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes needle)) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else ((((Bool.true && (Bool.true && Bool.true)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (total + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : Nat) => __fits_81 (needle) (subject) __p0) ((fun (position : Nat) => (LexLeanBoot.AxiomOutput.lastStep (subject) (needle) (position)))) ((total + (1 : Nat))) ((_root_.LexLeanRuntime.subtract (total) (size) : Nat)))) && (let position : Nat := ((_root_.LexLeanCollections.iterateUntil ((fun (position : Nat) => (LexLeanBoot.AxiomOutput.lastStep (subject) (needle) (position)))) ((total + (1 : Nat))) ((_root_.LexLeanRuntime.subtract (total) (size) : Nat)) : (Prod Nat Bool))).1; (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_82 (subject) (needle) (position))) && (if (LexLeanBoot.Text.matchAt (subject) (needle) (position)) then ((((((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_18 (subject) ((0 : Nat)) (position))) && (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + size) 18446744073709551616)) && (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + size) 18446744073709551616)) && Bool.true)) && Bool.true) && Bool.true))) && (__fits_18 (subject) ((position + size)) ((_root_.LexLeanRuntime.subtract (total) ((position + size)) : Nat)))) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (if __b then (Option.none : (Option (Prod ByteArray ByteArray))) else (let position : Nat := ((_root_.LexLeanCollections.iterateUntil ((fun (position : Nat) => (LexLeanBoot.AxiomOutput.lastStep (subject) (needle) (position)))) ((total + (1 : Nat))) ((_root_.LexLeanRuntime.subtract (total) (size) : Nat)) : (Prod Nat Bool))).1; (if (LexLeanBoot.Text.matchAt (subject) (needle) (position)) then (Option.some (((LexLeanBoot.Text.sliceOr (subject) ((0 : Nat)) (position)), (LexLeanBoot.Text.sliceOr (subject) ((position + size)) ((_root_.LexLeanRuntime.subtract (total) ((position + size)) : Nat))))) : (Option (Prod ByteArray ByteArray))) else (Option.none : (Option (Prod ByteArray ByteArray))))))) (Nat.blt total size) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt total size)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) (fun _ => (let position : Nat := ((_root_.LexLeanCollections.iterateUntil ((fun (position : Nat) => (LexLeanBoot.AxiomOutput.lastStep (subject) (needle) (position)))) ((total + (1 : Nat))) ((_root_.LexLeanRuntime.subtract (total) (size) : Nat)) : (Prod Nat Bool))).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd total (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub total size)) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterateUntil (es := _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.optEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) ((fun (position : Nat) => (LexLeanBoot.AxiomOutput.lastStep (subject) (needle) (position)))) (fun (__p0 : Nat) => __fits_81 (needle) (subject) __p0) 81 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes needle), (_root_.LexLeanTarget.TargetSyntax.Value.bytes subject)] (fun (__p0 : Nat) => __rel_81 (needle) (subject) __p0) (_root_.LexLeanCollections.iterateUntil ((fun (position : Nat) => (LexLeanBoot.AxiomOutput.lastStep (subject) (needle) (position))))) (fun _ => rfl) (fun _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (p := __prog) (fi := 38) (ts := .nat) rfl ((total + (1 : Nat))) ((_root_.LexLeanRuntime.subtract (total) (size) : Nat))))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_18 (subject) ((0 : Nat)) (position))) && (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + size) 18446744073709551616)) && (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + size) 18446744073709551616)) && Bool.true)) && Bool.true) && Bool.true))) && (__fits_18 (subject) ((position + size)) ((_root_.LexLeanRuntime.subtract (total) ((position + size)) : Nat)))) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (if __b then (Option.some (((LexLeanBoot.Text.sliceOr (subject) ((0 : Nat)) (position)), (LexLeanBoot.Text.sliceOr (subject) ((position + size)) ((_root_.LexLeanRuntime.subtract (total) ((position + size)) : Nat))))) : (Option (Prod ByteArray ByteArray))) else (Option.none : (Option (Prod ByteArray ByteArray))))) (LexLeanBoot.Text.matchAt (subject) (needle) (position)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (__rel_82 (subject) (needle) (position))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (__rel_18 (subject) ((0 : Nat)) (position))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position size)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position size)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub total (position + size))) _root_.LexLeanPreservation.convL_nil))) (__rel_18 (subject) ((position + size)) ((_root_.LexLeanRuntime.subtract (total) ((position + size)) : Nat)))) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)))))))) - -def __fits_96 : ∀ (lemma : ByteArray) (sorted : (List ByteArray)), Bool - | lemma, (List.nil) => (Bool.true && ((((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true)) - | lemma, (List.cons head tail) => (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal (lemma) (head) : Bool) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && (__fits_54 (lemma) (head))) && (if (LexLeanBoot.AxiomOutput.lessBytes (lemma) (head)) then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && (__fits_96 (lemma) (tail))) && (match (LexLeanBoot.AxiomOutput.insertAxiom (lemma) (tail)) with | Option.some inserted => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (Bool.true && Bool.true)))))))) - -theorem __rel_96 : ∀ (lemma : ByteArray) (sorted : (List ByteArray)), _root_.LexLeanPreservation.FunRel __prog 96 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes lemma), ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) sorted)] (_root_.LexLeanPreservation.Rel (__fits_96 lemma sorted) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (LexLeanBoot.AxiomOutput.insertAxiom lemma sorted))) - | lemma, (List.nil) => by rw [__fits_96.eq_def]; exact _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_match (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some))) - | lemma, (List.cons head tail) => by rw [__fits_96.eq_def]; exact _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_match (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && (__fits_54 (lemma) (head))) && (if (LexLeanBoot.AxiomOutput.lessBytes (lemma) (head)) then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && (__fits_96 (lemma) (tail))) && (match (LexLeanBoot.AxiomOutput.insertAxiom (lemma) (tail)) with | Option.some inserted => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (Bool.true && Bool.true))))))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (if __b then (Option.none : (Option (List ByteArray))) else (if (LexLeanBoot.AxiomOutput.lessBytes (lemma) (head)) then (Option.some ((lemma :: (head :: tail))) : (Option (List ByteArray))) else (match (LexLeanBoot.AxiomOutput.insertAxiom (lemma) (tail)) with | Option.some inserted => (Option.some ((head :: inserted)) : (Option (List ByteArray))) | Option.none => (Option.none : (Option (List ByteArray))))))) (_root_.LexLeanRuntime.equal (lemma) (head) : Bool) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_bytes lemma head)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && (__fits_96 (lemma) (tail))) && (match (LexLeanBoot.AxiomOutput.insertAxiom (lemma) (tail)) with | Option.some inserted => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (Bool.true && Bool.true))))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (if __b then (Option.some ((lemma :: (head :: tail))) : (Option (List ByteArray))) else (match (LexLeanBoot.AxiomOutput.insertAxiom (lemma) (tail)) with | Option.some inserted => (Option.some ((head :: inserted)) : (Option (List ByteArray))) | Option.none => (Option.none : (Option (List ByteArray)))))) (LexLeanBoot.AxiomOutput.lessBytes (lemma) (head)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_54 (lemma) (head))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (fun (__a : (Option (List ByteArray))) => (match __a with | Option.some inserted => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option (List ByteArray))) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (match __a with | Option.some inserted => (Option.some ((head :: inserted)) : (Option (List ByteArray))) | Option.none => (Option.none : (Option (List ByteArray))))) (LexLeanBoot.AxiomOutput.insertAxiom (lemma) (tail)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_96 (lemma) (tail))) (fun (__a : (Option (List ByteArray))) _ => match __a with | Option.some inserted => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)))))))))))) - -def __fits_91 (state : (Except ByteArray (List ByteArray))) (piece : ByteArray) : Bool := - (Bool.true && (match state with | Except.error message => Bool.true | Except.ok sorted => (((Bool.true && Bool.true) && (__fits_32 (piece))) && (let lemma : ByteArray := (LexLeanBoot.AxiomOutput.trimmed (piece)); (((Bool.true && Bool.true) && (__fits_61 (lemma))) && (if (LexLeanBoot.AxiomOutput.isClosedLeanName (lemma)) then (((Bool.true && (Bool.true && Bool.true)) && (__fits_96 (lemma) (sorted))) && (match (LexLeanBoot.AxiomOutput.insertAxiom (lemma) (sorted)) with | Option.some inserted => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((((Bool.true && Bool.true) && (__fits_7 ("duplicate axiom name "))) && (((Bool.true && Bool.true) && (__fits_40 (lemma))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.text ("duplicate axiom name "))) ((LexLeanBoot.AxiomOutput.quoted (lemma))))) && Bool.true) && Bool.true))) else ((((Bool.true && Bool.true) && (__fits_60 (lemma))) && Bool.true) && Bool.true))))))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.cat LexLeanBoot.AxiomOutput.insertAxiom LexLeanBoot.AxiomOutput.isClosedLeanName LexLeanBoot.AxiomOutput.notLean LexLeanBoot.AxiomOutput.quoted LexLeanBoot.AxiomOutput.text LexLeanBoot.AxiomOutput.trimmed in -theorem __rel_91 (state : (Except ByteArray (List ByteArray))) (piece : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 91 [((_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)) state), (_root_.LexLeanTarget.TargetSyntax.Value.bytes piece)] (_root_.LexLeanPreservation.Rel (__fits_91 state piece) ((_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (LexLeanBoot.AxiomOutput.collectStep state piece))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (fun (__a : (Except ByteArray (List ByteArray))) => (match __a with | Except.error message => Bool.true | Except.ok sorted => (((Bool.true && Bool.true) && (__fits_32 (piece))) && (let lemma : ByteArray := (LexLeanBoot.AxiomOutput.trimmed (piece)); (((Bool.true && Bool.true) && (__fits_61 (lemma))) && (if (LexLeanBoot.AxiomOutput.isClosedLeanName (lemma)) then (((Bool.true && (Bool.true && Bool.true)) && (__fits_96 (lemma) (sorted))) && (match (LexLeanBoot.AxiomOutput.insertAxiom (lemma) (sorted)) with | Option.some inserted => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((((Bool.true && Bool.true) && (__fits_7 ("duplicate axiom name "))) && (((Bool.true && Bool.true) && (__fits_40 (lemma))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.text ("duplicate axiom name "))) ((LexLeanBoot.AxiomOutput.quoted (lemma))))) && Bool.true) && Bool.true))) else ((((Bool.true && Bool.true) && (__fits_60 (lemma))) && Bool.true) && Bool.true))))))) (fun (__a : (Except ByteArray (List ByteArray))) => (_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (match __a with | Except.error message => state | Except.ok sorted => (let lemma : ByteArray := (LexLeanBoot.AxiomOutput.trimmed (piece)); (if (LexLeanBoot.AxiomOutput.isClosedLeanName (lemma)) then (match (LexLeanBoot.AxiomOutput.insertAxiom (lemma) (sorted)) with | Option.some inserted => (Except.ok (inserted) : (Except ByteArray (List ByteArray))) | Option.none => (Except.error ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("duplicate axiom name "))) ((LexLeanBoot.AxiomOutput.quoted (lemma))))) : (Except ByteArray (List ByteArray)))) else (Except.error ((LexLeanBoot.AxiomOutput.notLean (lemma))) : (Except ByteArray (List ByteArray))))))) state (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (Except ByteArray (List ByteArray))) _ => match __a with | Except.error message => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | Except.ok sorted => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (let lemma : ByteArray := (LexLeanBoot.AxiomOutput.trimmed (piece)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_32 (piece))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (Bool.true && Bool.true)) && (__fits_96 (lemma) (sorted))) && (match (LexLeanBoot.AxiomOutput.insertAxiom (lemma) (sorted)) with | Option.some inserted => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((((Bool.true && Bool.true) && (__fits_7 ("duplicate axiom name "))) && (((Bool.true && Bool.true) && (__fits_40 (lemma))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.text ("duplicate axiom name "))) ((LexLeanBoot.AxiomOutput.quoted (lemma))))) && Bool.true) && Bool.true))) else ((((Bool.true && Bool.true) && (__fits_60 (lemma))) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (if __b then (match (LexLeanBoot.AxiomOutput.insertAxiom (lemma) (sorted)) with | Option.some inserted => (Except.ok (inserted) : (Except ByteArray (List ByteArray))) | Option.none => (Except.error ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("duplicate axiom name "))) ((LexLeanBoot.AxiomOutput.quoted (lemma))))) : (Except ByteArray (List ByteArray)))) else (Except.error ((LexLeanBoot.AxiomOutput.notLean (lemma))) : (Except ByteArray (List ByteArray))))) (LexLeanBoot.AxiomOutput.isClosedLeanName (lemma)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_61 (lemma))) (fun _ => (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (fun (__a : (Option (List ByteArray))) => (match __a with | Option.some inserted => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((((Bool.true && Bool.true) && (__fits_7 ("duplicate axiom name "))) && (((Bool.true && Bool.true) && (__fits_40 (lemma))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.text ("duplicate axiom name "))) ((LexLeanBoot.AxiomOutput.quoted (lemma))))) && Bool.true) && Bool.true))) (fun (__a : (Option (List ByteArray))) => (_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (match __a with | Option.some inserted => (Except.ok (inserted) : (Except ByteArray (List ByteArray))) | Option.none => (Except.error ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("duplicate axiom name "))) ((LexLeanBoot.AxiomOutput.quoted (lemma))))) : (Except ByteArray (List ByteArray))))) (LexLeanBoot.AxiomOutput.insertAxiom (lemma) (sorted)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_96 (lemma) (sorted))) (fun (__a : (Option (List ByteArray))) _ => match __a with | Option.some inserted => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("duplicate axiom name "))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_40 (lemma))) _root_.LexLeanPreservation.convL_nil)) (__rel_6 ((LexLeanBoot.AxiomOutput.text ("duplicate axiom name "))) ((LexLeanBoot.AxiomOutput.quoted (lemma))))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)))))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_60 (lemma))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)))))))) - -def __fits_84 (state : (Except ByteArray (List ByteArray))) (piece : ByteArray) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && (__fits_91 (state) (piece))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.collectStep in -theorem __rel_84 (state : (Except ByteArray (List ByteArray))) (piece : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 84 [((_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)) state), (_root_.LexLeanTarget.TargetSyntax.Value.bytes piece)] (_root_.LexLeanPreservation.Rel (__fits_84 state piece) ((_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)) ((LexLeanBoot.AxiomOutput.collectStep (state) (piece))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_91 (state) (piece))) - -def __fits_37 (reversed : (List ByteArray)) (piece : ByteArray) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_37 (reversed : (List ByteArray)) (piece : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 37 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) reversed), (_root_.LexLeanTarget.TargetSyntax.Value.bytes piece)] (_root_.LexLeanPreservation.Rel (__fits_37 reversed piece) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) ((piece :: reversed)))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) - -def __fits_17 (pieces : (List ByteArray)) : Bool := - ((Bool.true && ((Bool.true && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (List ByteArray)) (__p1 : ByteArray) => __fits_37 __p0 __p1) ((fun (reversed : (List ByteArray)) (piece : ByteArray) => (piece :: reversed))) (([] : List ByteArray)) (pieces))) - -theorem __rel_17 (pieces : (List ByteArray)) : _root_.LexLeanPreservation.FunRel __prog 17 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) pieces)] (_root_.LexLeanPreservation.Rel (__fits_17 pieces) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) (LexLeanBoot.Text.reverse pieces))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.bytes) (es := (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun _ => rfl) ((fun (reversed : (List ByteArray)) (piece : ByteArray) => (piece :: reversed))) (fun (__p0 : (List ByteArray)) (__p1 : ByteArray) => __fits_37 __p0 __p1) 37 [] (fun (__p0 : (List ByteArray)) (__p1 : ByteArray) => __rel_37 __p0 __p1) (p := __prog) (fi := 36) (ta := .bytes) (ts := (.list .bytes)) rfl (([] : List ByteArray)) (pieces))) - -def __fits_97 (subject : ByteArray) (delimiter : UInt8) (state : (Prod Nat (Prod Nat (List ByteArray)))) : Bool := - (Bool.true && (let position : Nat := (state).1; (Bool.true && (let start : Nat := ((state).2).1; (Bool.true && (let pieces : (List ByteArray) := ((state).2).2; (((Bool.true && (Bool.true && Bool.true)) && (__fits_51 (subject) (position))) && (match (LexLeanBoot.Text.byteAt (subject) (position)) with | Option.some byte => (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal (byte) (delimiter) : Bool) then ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_18 (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))) && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) | Option.none => (Bool.true && Bool.true))))))))) - -attribute [local irreducible] LexLeanBoot.Text.byteAt LexLeanBoot.Text.sliceOr in -theorem __rel_97 (subject : ByteArray) (delimiter : UInt8) (state : (Prod Nat (Prod Nat (List ByteArray)))) : _root_.LexLeanPreservation.FunRel __prog 97 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.u8 delimiter), ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) state)] (_root_.LexLeanPreservation.Rel (__fits_97 subject delimiter state) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (LexLeanBoot.Text.splitStep subject delimiter state))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (let position : Nat := (state).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (let start : Nat := ((state).2).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl))) (let pieces : (List ByteArray) := ((state).2).2; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl))) (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u8) (fun (__a : (Option UInt8)) => (match __a with | Option.some byte => (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal (byte) (delimiter) : Bool) then ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_18 (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))) && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option UInt8)) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (match __a with | Option.some byte => (if (_root_.LexLeanRuntime.equal (byte) (delimiter) : Bool) then (Option.some (((position + (1 : Nat)), ((position + (1 : Nat)), ((LexLeanBoot.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat))) :: pieces)))) : (Option (Prod Nat (Prod Nat (List ByteArray))))) else (Option.some (((position + (1 : Nat)), (start, pieces))) : (Option (Prod Nat (Prod Nat (List ByteArray)))))) | Option.none => (Option.none : (Option (Prod Nat (Prod Nat (List ByteArray))))))) (LexLeanBoot.Text.byteAt (subject) (position)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_51 (subject) (position))) (fun (__a : (Option UInt8)) _ => match __a with | Option.some byte => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_18 (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))) && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (if __b then (Option.some (((position + (1 : Nat)), ((position + (1 : Nat)), ((LexLeanBoot.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat))) :: pieces)))) : (Option (Prod Nat (Prod Nat (List ByteArray))))) else (Option.some (((position + (1 : Nat)), (start, pieces))) : (Option (Prod Nat (Prod Nat (List ByteArray))))))) (_root_.LexLeanRuntime.equal (byte) (delimiter) : Bool) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_u8 byte delimiter)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub position start)) _root_.LexLeanPreservation.convL_nil))) (__rel_18 (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)))))))) - -def __fits_92 (delimiter : UInt8) (subject : ByteArray) (state : (Prod Nat (Prod Nat (List ByteArray)))) : Bool := - ((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_97 (subject) (delimiter) (state))) - -attribute [local irreducible] LexLeanBoot.Text.splitStep in -theorem __rel_92 (delimiter : UInt8) (subject : ByteArray) (state : (Prod Nat (Prod Nat (List ByteArray)))) : _root_.LexLeanPreservation.FunRel __prog 92 [(_root_.LexLeanTarget.TargetSyntax.Value.u8 delimiter), (_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) state)] (_root_.LexLeanPreservation.Rel (__fits_92 delimiter subject state) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) ((LexLeanBoot.Text.splitStep (subject) (delimiter) (state))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (__rel_97 (subject) (delimiter) (state))) - -def __fits_85 (subject : ByteArray) (delimiter : UInt8) : Bool := - (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (subject) : Nat) 18446744073709551616)) && (let total : Nat := (_root_.LexLeanRuntime.length (subject) : Nat); ((((Bool.true && (Bool.true && Bool.true)) && (Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : (Prod Nat (Prod Nat (List ByteArray)))) => __fits_92 (delimiter) (subject) __p0) ((fun (state : (Prod Nat (Prod Nat (List ByteArray)))) => (LexLeanBoot.Text.splitStep (subject) (delimiter) (state)))) (total) (((0 : Nat), ((0 : Nat), ([] : List ByteArray)))))) && (let final : (Prod Nat (Prod Nat (List ByteArray))) := ((_root_.LexLeanCollections.iterateUntil ((fun (state : (Prod Nat (Prod Nat (List ByteArray)))) => (LexLeanBoot.Text.splitStep (subject) (delimiter) (state)))) (total) (((0 : Nat), ((0 : Nat), ([] : List ByteArray)))) : (Prod (Prod Nat (Prod Nat (List ByteArray))) Bool))).1; (Bool.true && (let start : Nat := ((final).2).1; ((((((Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_18 (subject) (start) ((_root_.LexLeanRuntime.subtract (total) (start) : Nat)))) && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && (__fits_17 (((LexLeanBoot.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (total) (start) : Nat))) :: ((final).2).2)))))))))) - -attribute [local irreducible] LexLeanBoot.Text.reverse LexLeanBoot.Text.sliceOr LexLeanBoot.Text.splitStep in -theorem __rel_85 (subject : ByteArray) (delimiter : UInt8) : _root_.LexLeanPreservation.FunRel __prog 85 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.u8 delimiter)] (_root_.LexLeanPreservation.Rel (__fits_85 subject delimiter) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) (LexLeanBoot.Text.splitOn subject delimiter))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (let total : Nat := (_root_.LexLeanRuntime.length (subject) : Nat); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes subject)) (let final : (Prod Nat (Prod Nat (List ByteArray))) := ((_root_.LexLeanCollections.iterateUntil ((fun (state : (Prod Nat (Prod Nat (List ByteArray)))) => (LexLeanBoot.Text.splitStep (subject) (delimiter) (state)))) (total) (((0 : Nat), ((0 : Nat), ([] : List ByteArray)))) : (Prod (Prod Nat (Prod Nat (List ByteArray))) Bool))).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterateUntil (es := (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (_root_.LexLeanPreservation.optEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (fun _ => rfl) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) ((fun (state : (Prod Nat (Prod Nat (List ByteArray)))) => (LexLeanBoot.Text.splitStep (subject) (delimiter) (state)))) (fun (__p0 : (Prod Nat (Prod Nat (List ByteArray)))) => __fits_92 (delimiter) (subject) __p0) 92 [(_root_.LexLeanTarget.TargetSyntax.Value.u8 delimiter), (_root_.LexLeanTarget.TargetSyntax.Value.bytes subject)] (fun (__p0 : (Prod Nat (Prod Nat (List ByteArray)))) => __rel_92 (delimiter) (subject) __p0) (_root_.LexLeanCollections.iterateUntil ((fun (state : (Prod Nat (Prod Nat (List ByteArray)))) => (LexLeanBoot.Text.splitStep (subject) (delimiter) (state))))) (fun _ => rfl) (fun _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (p := __prog) (fi := 15) (ts := (.pair .nat (.pair .nat (.list .bytes)))) rfl (total) (((0 : Nat), ((0 : Nat), ([] : List ByteArray))))))) (let start : Nat := ((final).2).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub total start)) _root_.LexLeanPreservation.convL_nil))) (__rel_18 (subject) (start) ((_root_.LexLeanRuntime.subtract (total) (start) : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl))) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil) (__rel_17 (((LexLeanBoot.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (total) (start) : Nat))) :: ((final).2).2))))))) - -def __fits_74 (name : ByteArray) (list : ByteArray) : Bool := - (((Bool.true && ((((Bool.true && Bool.true) && Bool.true) && Bool.true) && (((Bool.true && (Bool.true && Bool.true)) && (__fits_85 (list) ((44 : UInt8)))) && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Except ByteArray (List ByteArray))) (__p1 : ByteArray) => __fits_84 __p0 __p1) ((fun (state : (Except ByteArray (List ByteArray))) (piece : ByteArray) => (LexLeanBoot.AxiomOutput.collectStep (state) (piece)))) ((Except.ok (([] : List ByteArray)) : (Except ByteArray (List ByteArray)))) ((LexLeanBoot.Text.splitOn (list) ((44 : UInt8)))))) && (match (_root_.LexLeanCollections.listFold ((fun (state : (Except ByteArray (List ByteArray))) (piece : ByteArray) => (LexLeanBoot.AxiomOutput.collectStep (state) (piece)))) ((Except.ok (([] : List ByteArray)) : (Except ByteArray (List ByteArray)))) ((LexLeanBoot.Text.splitOn (list) ((44 : UInt8)))) : (Except ByteArray (List ByteArray))) with | Except.error message => ((Bool.true && Bool.true) && (__fits_59 (message))) | Except.ok sorted => (Bool.true && (match sorted with | List.nil => ((((Bool.true && Bool.true) && (__fits_7 ("an axiom list cannot be empty"))) && Bool.true) && (__fits_59 ((LexLeanBoot.AxiomOutput.text ("an axiom list cannot be empty"))))) | List.cons head tail => ((Bool.true && (Bool.true && Bool.true)) && (__fits_58 (name) (sorted))))))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.collectStep LexLeanBoot.AxiomOutput.malformed LexLeanBoot.AxiomOutput.parsed LexLeanBoot.AxiomOutput.text LexLeanBoot.Text.splitOn in -theorem __rel_74 (name : ByteArray) (list : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 74 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes name), (_root_.LexLeanTarget.TargetSyntax.Value.bytes list)] (_root_.LexLeanPreservation.Rel (__fits_74 name list) ((_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) (LexLeanBoot.AxiomOutput.axiomList name list))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (fun (__a : (Except ByteArray (List ByteArray))) => (match __a with | Except.error message => ((Bool.true && Bool.true) && (__fits_59 (message))) | Except.ok sorted => (Bool.true && (match sorted with | List.nil => ((((Bool.true && Bool.true) && (__fits_7 ("an axiom list cannot be empty"))) && Bool.true) && (__fits_59 ((LexLeanBoot.AxiomOutput.text ("an axiom list cannot be empty"))))) | List.cons head tail => ((Bool.true && (Bool.true && Bool.true)) && (__fits_58 (name) (sorted))))))) (fun (__a : (Except ByteArray (List ByteArray))) => (_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) (match __a with | Except.error message => (LexLeanBoot.AxiomOutput.malformed (message)) | Except.ok sorted => (match sorted with | List.nil => (LexLeanBoot.AxiomOutput.malformed ((LexLeanBoot.AxiomOutput.text ("an axiom list cannot be empty")))) | List.cons head tail => (LexLeanBoot.AxiomOutput.parsed (name) (sorted))))) (_root_.LexLeanCollections.listFold ((fun (state : (Except ByteArray (List ByteArray))) (piece : ByteArray) => (LexLeanBoot.AxiomOutput.collectStep (state) (piece)))) ((Except.ok (([] : List ByteArray)) : (Except ByteArray (List ByteArray)))) ((LexLeanBoot.Text.splitOn (list) ((44 : UInt8)))) : (Except ByteArray (List ByteArray))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_85 (list) ((44 : UInt8)))) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.bytes) (es := (_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun _ => rfl) ((fun (state : (Except ByteArray (List ByteArray))) (piece : ByteArray) => (LexLeanBoot.AxiomOutput.collectStep (state) (piece)))) (fun (__p0 : (Except ByteArray (List ByteArray))) (__p1 : ByteArray) => __fits_84 __p0 __p1) 84 [] (fun (__p0 : (Except ByteArray (List ByteArray))) (__p1 : ByteArray) => __rel_84 __p0 __p1) (p := __prog) (fi := 83) (ta := .bytes) (ts := (.result (.list .bytes) .bytes)) rfl ((Except.ok (([] : List ByteArray)) : (Except ByteArray (List ByteArray)))) ((LexLeanBoot.Text.splitOn (list) ((44 : UInt8)))))) (fun (__a : (Except ByteArray (List ByteArray))) _ => match __a with | Except.error message => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_59 (message)))) | Except.ok sorted => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (List ByteArray)) => (match __a with | List.nil => ((((Bool.true && Bool.true) && (__fits_7 ("an axiom list cannot be empty"))) && Bool.true) && (__fits_59 ((LexLeanBoot.AxiomOutput.text ("an axiom list cannot be empty"))))) | List.cons head tail => ((Bool.true && (Bool.true && Bool.true)) && (__fits_58 (name) (sorted))))) (fun (__a : (List ByteArray)) => (_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) (match __a with | List.nil => (LexLeanBoot.AxiomOutput.malformed ((LexLeanBoot.AxiomOutput.text ("an axiom list cannot be empty")))) | List.cons head tail => (LexLeanBoot.AxiomOutput.parsed (name) (sorted)))) sorted (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (List ByteArray)) _ => match __a with | List.nil => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("an axiom list cannot be empty"))) _root_.LexLeanPreservation.convL_nil) (__rel_59 ((LexLeanBoot.AxiomOutput.text ("an axiom list cannot be empty")))))) | List.cons head tail => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_58 (name) (sorted))))))))))) - -def __fits_62 (payload : ByteArray) (body : ByteArray) : Bool := - (((Bool.true && (((Bool.true && Bool.true) && (__fits_7 ("' depends on axioms: ["))) && Bool.true)) && (__fits_73 (body) ((LexLeanBoot.AxiomOutput.text ("' depends on axioms: ["))))) && (match (LexLeanBoot.AxiomOutput.splitLast (body) ((LexLeanBoot.AxiomOutput.text ("' depends on axioms: [")))) with | Option.some split => (Bool.true && (let name : ByteArray := (split).1; (Bool.true && (let list : ByteArray := (split).2; (((Bool.true && (Bool.true && Bool.true)) && (__fits_74 (name) (list))) && (let listed_axioms : (Except ByteArray (Prod ByteArray (List ByteArray))) := (LexLeanBoot.AxiomOutput.axiomList (name) (list)); (((((Bool.true && Bool.true) && (__fits_60 (name))) && Bool.true) && (__fits_59 ((LexLeanBoot.AxiomOutput.notLean (name))))) && (let refused : (Except ByteArray (Prod ByteArray (List ByteArray))) := (LexLeanBoot.AxiomOutput.malformed ((LexLeanBoot.AxiomOutput.notLean (name)))); (((Bool.true && Bool.true) && (__fits_61 (name))) && (if (LexLeanBoot.AxiomOutput.isClosedLeanName (name)) then Bool.true else Bool.true)))))))))) | Option.none => ((Bool.true && Bool.true) && (__fits_57 (payload))))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.axiomList LexLeanBoot.AxiomOutput.isClosedLeanName LexLeanBoot.AxiomOutput.malformed LexLeanBoot.AxiomOutput.notLean LexLeanBoot.AxiomOutput.splitLast LexLeanBoot.AxiomOutput.text LexLeanBoot.AxiomOutput.unrecognized in -theorem __rel_62 (payload : ByteArray) (body : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 62 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes payload), (_root_.LexLeanTarget.TargetSyntax.Value.bytes body)] (_root_.LexLeanPreservation.Rel (__fits_62 payload body) ((_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) (LexLeanBoot.AxiomOutput.listed payload body))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (fun (__a : (Option (Prod ByteArray ByteArray))) => (match __a with | Option.some split => (Bool.true && (let name : ByteArray := (split).1; (Bool.true && (let list : ByteArray := (split).2; (((Bool.true && (Bool.true && Bool.true)) && (__fits_74 (name) (list))) && (let listed_axioms : (Except ByteArray (Prod ByteArray (List ByteArray))) := (LexLeanBoot.AxiomOutput.axiomList (name) (list)); (((((Bool.true && Bool.true) && (__fits_60 (name))) && Bool.true) && (__fits_59 ((LexLeanBoot.AxiomOutput.notLean (name))))) && (let refused : (Except ByteArray (Prod ByteArray (List ByteArray))) := (LexLeanBoot.AxiomOutput.malformed ((LexLeanBoot.AxiomOutput.notLean (name)))); (((Bool.true && Bool.true) && (__fits_61 (name))) && (if (LexLeanBoot.AxiomOutput.isClosedLeanName (name)) then Bool.true else Bool.true)))))))))) | Option.none => ((Bool.true && Bool.true) && (__fits_57 (payload))))) (fun (__a : (Option (Prod ByteArray ByteArray))) => (_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) (match __a with | Option.some split => (let name : ByteArray := (split).1; (let list : ByteArray := (split).2; (let listed_axioms : (Except ByteArray (Prod ByteArray (List ByteArray))) := (LexLeanBoot.AxiomOutput.axiomList (name) (list)); (let refused : (Except ByteArray (Prod ByteArray (List ByteArray))) := (LexLeanBoot.AxiomOutput.malformed ((LexLeanBoot.AxiomOutput.notLean (name)))); (if (LexLeanBoot.AxiomOutput.isClosedLeanName (name)) then listed_axioms else refused))))) | Option.none => (LexLeanBoot.AxiomOutput.unrecognized (payload)))) (LexLeanBoot.AxiomOutput.splitLast (body) ((LexLeanBoot.AxiomOutput.text ("' depends on axioms: [")))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("' depends on axioms: ["))) _root_.LexLeanPreservation.convL_nil)) (__rel_73 (body) ((LexLeanBoot.AxiomOutput.text ("' depends on axioms: ["))))) (fun (__a : (Option (Prod ByteArray ByteArray))) _ => match __a with | Option.some split => (_root_.LexLeanPreservation.convA_hit rfl rfl (let name : ByteArray := (split).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (let list : ByteArray := (split).2; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (let listed_axioms : (Except ByteArray (Prod ByteArray (List ByteArray))) := (LexLeanBoot.AxiomOutput.axiomList (name) (list)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_74 (name) (list))) (let refused : (Except ByteArray (Prod ByteArray (List ByteArray))) := (LexLeanBoot.AxiomOutput.malformed ((LexLeanBoot.AxiomOutput.notLean (name)))); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_60 (name))) _root_.LexLeanPreservation.convL_nil) (__rel_59 ((LexLeanBoot.AxiomOutput.notLean (name))))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else Bool.true)) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) (if __b then listed_axioms else refused)) (LexLeanBoot.AxiomOutput.isClosedLeanName (name)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_61 (name))) (fun _ => (_root_.LexLeanPreservation.conv_var rfl)) (fun _ => (_root_.LexLeanPreservation.conv_var rfl)))))))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_57 (payload))))))) - -def __fits_44 (payload : ByteArray) : Bool := - (((Bool.true && (((Bool.true && Bool.true) && (__fits_7 ("'"))) && Bool.true)) && (__fits_49 (payload) ((LexLeanBoot.AxiomOutput.text ("'"))))) && (match (LexLeanBoot.AxiomOutput.stripPrefix (payload) ((LexLeanBoot.AxiomOutput.text ("'")))) with | Option.none => ((Bool.true && Bool.true) && (__fits_57 (payload))) | Option.some rest => (((Bool.true && (((Bool.true && Bool.true) && (__fits_7 ("' does not depend on any axioms"))) && Bool.true)) && (__fits_56 (rest) ((LexLeanBoot.AxiomOutput.text ("' does not depend on any axioms"))))) && (match (LexLeanBoot.AxiomOutput.stripSuffix (rest) ((LexLeanBoot.AxiomOutput.text ("' does not depend on any axioms")))) with | Option.some name => (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && (__fits_58 (name) (([] : List ByteArray)))) && (let accepted : (Except ByteArray (Prod ByteArray (List ByteArray))) := (LexLeanBoot.AxiomOutput.parsed (name) (([] : List ByteArray))); (((((Bool.true && Bool.true) && (__fits_60 (name))) && Bool.true) && (__fits_59 ((LexLeanBoot.AxiomOutput.notLean (name))))) && (let refused : (Except ByteArray (Prod ByteArray (List ByteArray))) := (LexLeanBoot.AxiomOutput.malformed ((LexLeanBoot.AxiomOutput.notLean (name)))); (((Bool.true && Bool.true) && (__fits_61 (name))) && (if (LexLeanBoot.AxiomOutput.isClosedLeanName (name)) then Bool.true else Bool.true)))))) | Option.none => (((Bool.true && (((Bool.true && Bool.true) && (__fits_7 ("]"))) && Bool.true)) && (__fits_56 (rest) ((LexLeanBoot.AxiomOutput.text ("]"))))) && (match (LexLeanBoot.AxiomOutput.stripSuffix (rest) ((LexLeanBoot.AxiomOutput.text ("]")))) with | Option.some body => ((Bool.true && (Bool.true && Bool.true)) && (__fits_62 (payload) (body))) | Option.none => ((Bool.true && Bool.true) && (__fits_57 (payload))))))))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.isClosedLeanName LexLeanBoot.AxiomOutput.listed LexLeanBoot.AxiomOutput.malformed LexLeanBoot.AxiomOutput.notLean LexLeanBoot.AxiomOutput.parsed LexLeanBoot.AxiomOutput.stripPrefix LexLeanBoot.AxiomOutput.stripSuffix LexLeanBoot.AxiomOutput.text LexLeanBoot.AxiomOutput.unrecognized in -theorem __rel_44 (payload : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 44 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes payload)] (_root_.LexLeanPreservation.Rel (__fits_44 payload) ((_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) (LexLeanBoot.AxiomOutput.parsePayload payload))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.none => ((Bool.true && Bool.true) && (__fits_57 (payload))) | Option.some rest => (((Bool.true && (((Bool.true && Bool.true) && (__fits_7 ("' does not depend on any axioms"))) && Bool.true)) && (__fits_56 (rest) ((LexLeanBoot.AxiomOutput.text ("' does not depend on any axioms"))))) && (match (LexLeanBoot.AxiomOutput.stripSuffix (rest) ((LexLeanBoot.AxiomOutput.text ("' does not depend on any axioms")))) with | Option.some name => (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && (__fits_58 (name) (([] : List ByteArray)))) && (let accepted : (Except ByteArray (Prod ByteArray (List ByteArray))) := (LexLeanBoot.AxiomOutput.parsed (name) (([] : List ByteArray))); (((((Bool.true && Bool.true) && (__fits_60 (name))) && Bool.true) && (__fits_59 ((LexLeanBoot.AxiomOutput.notLean (name))))) && (let refused : (Except ByteArray (Prod ByteArray (List ByteArray))) := (LexLeanBoot.AxiomOutput.malformed ((LexLeanBoot.AxiomOutput.notLean (name)))); (((Bool.true && Bool.true) && (__fits_61 (name))) && (if (LexLeanBoot.AxiomOutput.isClosedLeanName (name)) then Bool.true else Bool.true)))))) | Option.none => (((Bool.true && (((Bool.true && Bool.true) && (__fits_7 ("]"))) && Bool.true)) && (__fits_56 (rest) ((LexLeanBoot.AxiomOutput.text ("]"))))) && (match (LexLeanBoot.AxiomOutput.stripSuffix (rest) ((LexLeanBoot.AxiomOutput.text ("]")))) with | Option.some body => ((Bool.true && (Bool.true && Bool.true)) && (__fits_62 (payload) (body))) | Option.none => ((Bool.true && Bool.true) && (__fits_57 (payload))))))))) (fun (__a : (Option ByteArray)) => (_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) (match __a with | Option.none => (LexLeanBoot.AxiomOutput.unrecognized (payload)) | Option.some rest => (match (LexLeanBoot.AxiomOutput.stripSuffix (rest) ((LexLeanBoot.AxiomOutput.text ("' does not depend on any axioms")))) with | Option.some name => (let accepted : (Except ByteArray (Prod ByteArray (List ByteArray))) := (LexLeanBoot.AxiomOutput.parsed (name) (([] : List ByteArray))); (let refused : (Except ByteArray (Prod ByteArray (List ByteArray))) := (LexLeanBoot.AxiomOutput.malformed ((LexLeanBoot.AxiomOutput.notLean (name)))); (if (LexLeanBoot.AxiomOutput.isClosedLeanName (name)) then accepted else refused))) | Option.none => (match (LexLeanBoot.AxiomOutput.stripSuffix (rest) ((LexLeanBoot.AxiomOutput.text ("]")))) with | Option.some body => (LexLeanBoot.AxiomOutput.listed (payload) (body)) | Option.none => (LexLeanBoot.AxiomOutput.unrecognized (payload)))))) (LexLeanBoot.AxiomOutput.stripPrefix (payload) ((LexLeanBoot.AxiomOutput.text ("'")))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("'"))) _root_.LexLeanPreservation.convL_nil)) (__rel_49 (payload) ((LexLeanBoot.AxiomOutput.text ("'"))))) (fun (__a : (Option ByteArray)) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_57 (payload)))) | Option.some rest => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.some name => (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && (__fits_58 (name) (([] : List ByteArray)))) && (let accepted : (Except ByteArray (Prod ByteArray (List ByteArray))) := (LexLeanBoot.AxiomOutput.parsed (name) (([] : List ByteArray))); (((((Bool.true && Bool.true) && (__fits_60 (name))) && Bool.true) && (__fits_59 ((LexLeanBoot.AxiomOutput.notLean (name))))) && (let refused : (Except ByteArray (Prod ByteArray (List ByteArray))) := (LexLeanBoot.AxiomOutput.malformed ((LexLeanBoot.AxiomOutput.notLean (name)))); (((Bool.true && Bool.true) && (__fits_61 (name))) && (if (LexLeanBoot.AxiomOutput.isClosedLeanName (name)) then Bool.true else Bool.true)))))) | Option.none => (((Bool.true && (((Bool.true && Bool.true) && (__fits_7 ("]"))) && Bool.true)) && (__fits_56 (rest) ((LexLeanBoot.AxiomOutput.text ("]"))))) && (match (LexLeanBoot.AxiomOutput.stripSuffix (rest) ((LexLeanBoot.AxiomOutput.text ("]")))) with | Option.some body => ((Bool.true && (Bool.true && Bool.true)) && (__fits_62 (payload) (body))) | Option.none => ((Bool.true && Bool.true) && (__fits_57 (payload))))))) (fun (__a : (Option ByteArray)) => (_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) (match __a with | Option.some name => (let accepted : (Except ByteArray (Prod ByteArray (List ByteArray))) := (LexLeanBoot.AxiomOutput.parsed (name) (([] : List ByteArray))); (let refused : (Except ByteArray (Prod ByteArray (List ByteArray))) := (LexLeanBoot.AxiomOutput.malformed ((LexLeanBoot.AxiomOutput.notLean (name)))); (if (LexLeanBoot.AxiomOutput.isClosedLeanName (name)) then accepted else refused))) | Option.none => (match (LexLeanBoot.AxiomOutput.stripSuffix (rest) ((LexLeanBoot.AxiomOutput.text ("]")))) with | Option.some body => (LexLeanBoot.AxiomOutput.listed (payload) (body)) | Option.none => (LexLeanBoot.AxiomOutput.unrecognized (payload))))) (LexLeanBoot.AxiomOutput.stripSuffix (rest) ((LexLeanBoot.AxiomOutput.text ("' does not depend on any axioms")))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("' does not depend on any axioms"))) _root_.LexLeanPreservation.convL_nil)) (__rel_56 (rest) ((LexLeanBoot.AxiomOutput.text ("' does not depend on any axioms"))))) (fun (__a : (Option ByteArray)) _ => match __a with | Option.some name => (_root_.LexLeanPreservation.convA_hit rfl rfl (let accepted : (Except ByteArray (Prod ByteArray (List ByteArray))) := (LexLeanBoot.AxiomOutput.parsed (name) (([] : List ByteArray))); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) (__rel_58 (name) (([] : List ByteArray)))) (let refused : (Except ByteArray (Prod ByteArray (List ByteArray))) := (LexLeanBoot.AxiomOutput.malformed ((LexLeanBoot.AxiomOutput.notLean (name)))); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_60 (name))) _root_.LexLeanPreservation.convL_nil) (__rel_59 ((LexLeanBoot.AxiomOutput.notLean (name))))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else Bool.true)) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) (if __b then accepted else refused)) (LexLeanBoot.AxiomOutput.isClosedLeanName (name)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_61 (name))) (fun _ => (_root_.LexLeanPreservation.conv_var rfl)) (fun _ => (_root_.LexLeanPreservation.conv_var rfl)))))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.some body => ((Bool.true && (Bool.true && Bool.true)) && (__fits_62 (payload) (body))) | Option.none => ((Bool.true && Bool.true) && (__fits_57 (payload))))) (fun (__a : (Option ByteArray)) => (_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) (match __a with | Option.some body => (LexLeanBoot.AxiomOutput.listed (payload) (body)) | Option.none => (LexLeanBoot.AxiomOutput.unrecognized (payload)))) (LexLeanBoot.AxiomOutput.stripSuffix (rest) ((LexLeanBoot.AxiomOutput.text ("]")))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("]"))) _root_.LexLeanPreservation.convL_nil)) (__rel_56 (rest) ((LexLeanBoot.AxiomOutput.text ("]"))))) (fun (__a : (Option ByteArray)) _ => match __a with | Option.some body => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_62 (payload) (body)))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_57 (payload))))))))))))))) - -def __fits_45 (names : (List ByteArray)) : Bool := - (Bool.true && (match names with | List.nil => (Bool.true && Bool.true) | List.cons head tail => Bool.true)) - -theorem __rel_45 (names : (List ByteArray)) : _root_.LexLeanPreservation.FunRel __prog 45 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) names)] (_root_.LexLeanPreservation.Rel (__fits_45 names) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) (LexLeanBoot.AxiomOutput.tailOf names))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (List ByteArray)) => (match __a with | List.nil => (Bool.true && Bool.true) | List.cons head tail => Bool.true)) (fun (__a : (List ByteArray)) => (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) (match __a with | List.nil => ([] : List ByteArray) | List.cons head tail => tail)) names (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (List ByteArray)) _ => match __a with | List.nil => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil)) | List.cons head tail => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl))))) - -def __fits_30 (records : (List (LexLeanBoot.AxiomOutput.Record))) (remaining : (List ByteArray)) (payload : ByteArray) (about : (Option ByteArray)) : Bool := - (((Bool.true && Bool.true) && (__fits_43 (payload))) && (if (LexLeanBoot.AxiomOutput.terminates (payload)) then (((Bool.true && Bool.true) && (__fits_44 (payload))) && (match (LexLeanBoot.AxiomOutput.parsePayload (payload)) with | Except.error message => ((Bool.true && (Bool.true && Bool.true)) && (__fits_31 (message) (about))) | Except.ok found => ((((((Bool.true && (Bool.true && (Bool.true && Bool.true))) && Bool.true) && (Bool.true && Bool.true)) && Bool.true) && (((Bool.true && Bool.true) && (__fits_45 (remaining))) && Bool.true)) && Bool.true))) else ((Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true)))) && Bool.true))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.parsePayload LexLeanBoot.AxiomOutput.stop LexLeanBoot.AxiomOutput.tailOf LexLeanBoot.AxiomOutput.terminates in -theorem __rel_30 (records : (List (LexLeanBoot.AxiomOutput.Record))) (remaining : (List ByteArray)) (payload : ByteArray) (about : (Option ByteArray)) : _root_.LexLeanPreservation.FunRel __prog 30 [((_root_.LexLeanPreservation.encList __enc_2) records), ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) remaining), (_root_.LexLeanTarget.TargetSyntax.Value.bytes payload), ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) about)] (_root_.LexLeanPreservation.Rel (__fits_30 records remaining payload about) (__enc_1 (LexLeanBoot.AxiomOutput.extend records remaining payload about))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && (__fits_44 (payload))) && (match (LexLeanBoot.AxiomOutput.parsePayload (payload)) with | Except.error message => ((Bool.true && (Bool.true && Bool.true)) && (__fits_31 (message) (about))) | Except.ok found => ((((((Bool.true && (Bool.true && (Bool.true && Bool.true))) && Bool.true) && (Bool.true && Bool.true)) && Bool.true) && (((Bool.true && Bool.true) && (__fits_45 (remaining))) && Bool.true)) && Bool.true))) else ((Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true)))) && Bool.true))) (fun (__b : Bool) => __enc_1 (if __b then (match (LexLeanBoot.AxiomOutput.parsePayload (payload)) with | Except.error message => (LexLeanBoot.AxiomOutput.stop (message) (about)) | Except.ok found => (LexLeanBoot.AxiomOutput.Scan.between ((({ declaration := (found).1, axioms := (found).2, expected := about } : (LexLeanBoot.AxiomOutput.Record)) :: records)) ((LexLeanBoot.AxiomOutput.tailOf (remaining))) : (LexLeanBoot.AxiomOutput.Scan))) else (LexLeanBoot.AxiomOutput.Scan.inside (records) (remaining) (payload) (about) : (LexLeanBoot.AxiomOutput.Scan)))) (LexLeanBoot.AxiomOutput.terminates (payload)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_43 (payload))) (fun _ => (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) (fun (__a : (Except ByteArray (Prod ByteArray (List ByteArray)))) => (match __a with | Except.error message => ((Bool.true && (Bool.true && Bool.true)) && (__fits_31 (message) (about))) | Except.ok found => ((((((Bool.true && (Bool.true && (Bool.true && Bool.true))) && Bool.true) && (Bool.true && Bool.true)) && Bool.true) && (((Bool.true && Bool.true) && (__fits_45 (remaining))) && Bool.true)) && Bool.true))) (fun (__a : (Except ByteArray (Prod ByteArray (List ByteArray)))) => __enc_1 (match __a with | Except.error message => (LexLeanBoot.AxiomOutput.stop (message) (about)) | Except.ok found => (LexLeanBoot.AxiomOutput.Scan.between ((({ declaration := (found).1, axioms := (found).2, expected := about } : (LexLeanBoot.AxiomOutput.Record)) :: records)) ((LexLeanBoot.AxiomOutput.tailOf (remaining))) : (LexLeanBoot.AxiomOutput.Scan)))) (LexLeanBoot.AxiomOutput.parsePayload (payload)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_44 (payload))) (fun (__a : (Except ByteArray (Prod ByteArray (List ByteArray)))) _ => match __a with | Except.error message => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_31 (message) (about)))) | Except.ok found => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) _root_.LexLeanPreservation.construct_adt) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_45 (remaining))) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_adt)))))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)))) _root_.LexLeanPreservation.construct_adt))) - -def __fits_86 (needle : ByteArray) (size : Nat) (subject : ByteArray) (total : Nat) (position : Nat) : Bool := - (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_82 (subject) (needle) (position))) && (if (LexLeanBoot.Text.matchAt (subject) (needle) (position)) then (Bool.true && Bool.true) else (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + size) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.blt (position + size) total) then ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) - -attribute [local irreducible] LexLeanBoot.Text.matchAt in -theorem __rel_86 (needle : ByteArray) (size : Nat) (subject : ByteArray) (total : Nat) (position : Nat) : _root_.LexLeanPreservation.FunRel __prog 86 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes needle), (_root_.LexLeanTarget.TargetSyntax.Value.nat size), (_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat total), (_root_.LexLeanTarget.TargetSyntax.Value.nat position)] (_root_.LexLeanPreservation.Rel (__fits_86 needle size subject total position) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) ((if (LexLeanBoot.Text.matchAt (subject) (needle) (position)) then (Option.none : (Option Nat)) else (if (Nat.blt (position + size) total) then (Option.some ((position + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat))))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + size) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.blt (position + size) total) then ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Option.none : (Option Nat)) else (if (Nat.blt (position + size) total) then (Option.some ((position + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat))))) (LexLeanBoot.Text.matchAt (subject) (needle) (position)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (__rel_82 (subject) (needle) (position))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Option.some ((position + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat)))) (Nat.blt (position + size) total) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position size)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (position + size) total)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (1 : Nat))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))) - -def __fits_76 (subject : ByteArray) (needle : ByteArray) : Bool := - (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (subject) : Nat) 18446744073709551616)) && (let total : Nat := (_root_.LexLeanRuntime.length (subject) : Nat); (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (needle) : Nat) 18446744073709551616)) && (let size : Nat := (_root_.LexLeanRuntime.length (needle) : Nat); ((((Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true)))) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (total + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : Nat) => __fits_86 (needle) (size) (subject) (total) __p0) ((fun (position : Nat) => (if (LexLeanBoot.Text.matchAt (subject) (needle) (position)) then (Option.none : (Option Nat)) else (if (Nat.blt (position + size) total) then (Option.some ((position + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat)))))) ((total + (1 : Nat))) ((0 : Nat)))) && (let position : Nat := ((_root_.LexLeanCollections.iterateUntil ((fun (position : Nat) => (if (LexLeanBoot.Text.matchAt (subject) (needle) (position)) then (Option.none : (Option Nat)) else (if (Nat.blt (position + size) total) then (Option.some ((position + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat)))))) ((total + (1 : Nat))) ((0 : Nat)) : (Prod Nat Bool))).1; (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_82 (subject) (needle) (position))) && (if (LexLeanBoot.Text.matchAt (subject) (needle) (position)) then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))))) - -attribute [local irreducible] LexLeanBoot.Text.matchAt in -theorem __rel_76 (subject : ByteArray) (needle : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 76 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.bytes needle)] (_root_.LexLeanPreservation.Rel (__fits_76 subject needle) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (LexLeanBoot.Text.find subject needle))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (let total : Nat := (_root_.LexLeanRuntime.length (subject) : Nat); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes subject)) (let size : Nat := (_root_.LexLeanRuntime.length (needle) : Nat); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes needle)) (let position : Nat := ((_root_.LexLeanCollections.iterateUntil ((fun (position : Nat) => (if (LexLeanBoot.Text.matchAt (subject) (needle) (position)) then (Option.none : (Option Nat)) else (if (Nat.blt (position + size) total) then (Option.some ((position + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat)))))) ((total + (1 : Nat))) ((0 : Nat)) : (Prod Nat Bool))).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd total (1 : Nat))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterateUntil (es := _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.optEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) ((fun (position : Nat) => (if (LexLeanBoot.Text.matchAt (subject) (needle) (position)) then (Option.none : (Option Nat)) else (if (Nat.blt (position + size) total) then (Option.some ((position + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat)))))) (fun (__p0 : Nat) => __fits_86 (needle) (size) (subject) (total) __p0) 86 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes needle), (_root_.LexLeanTarget.TargetSyntax.Value.nat size), (_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat total)] (fun (__p0 : Nat) => __rel_86 (needle) (size) (subject) (total) __p0) (_root_.LexLeanCollections.iterateUntil ((fun (position : Nat) => (if (LexLeanBoot.Text.matchAt (subject) (needle) (position)) then (Option.none : (Option Nat)) else (if (Nat.blt (position + size) total) then (Option.some ((position + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat))))))) (fun _ => rfl) (fun _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (p := __prog) (fi := 38) (ts := .nat) rfl ((total + (1 : Nat))) ((0 : Nat))))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Option.some (position) : (Option Nat)) else (Option.none : (Option Nat)))) (LexLeanBoot.Text.matchAt (subject) (needle) (position)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (__rel_82 (subject) (needle) (position))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)))))) - -def __fits_65 (subject : ByteArray) (delimiter : ByteArray) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && (__fits_76 (subject) (delimiter))) && (match (LexLeanBoot.Text.find (subject) (delimiter)) with | Option.some position => ((((((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_18 (subject) ((0 : Nat)) (position))) && (((Bool.true && (((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (delimiter) : Nat) 18446744073709551616)) && Bool.true)) && (Nat.blt (position + (_root_.LexLeanRuntime.length (delimiter) : Nat)) 18446744073709551616)) && (((((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (subject) : Nat) 18446744073709551616)) && (((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (delimiter) : Nat) 18446744073709551616)) && Bool.true)) && (Nat.blt (position + (_root_.LexLeanRuntime.length (delimiter) : Nat)) 18446744073709551616)) && Bool.true)) && Bool.true) && Bool.true))) && (__fits_18 (subject) ((position + (_root_.LexLeanRuntime.length (delimiter) : Nat))) ((_root_.LexLeanRuntime.subtract ((_root_.LexLeanRuntime.length (subject) : Nat)) ((position + (_root_.LexLeanRuntime.length (delimiter) : Nat))) : Nat)))) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (Bool.true && Bool.true))) - -attribute [local irreducible] LexLeanBoot.Text.find LexLeanBoot.Text.sliceOr in -theorem __rel_65 (subject : ByteArray) (delimiter : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 65 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.bytes delimiter)] (_root_.LexLeanPreservation.Rel (__fits_65 subject delimiter) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (LexLeanBoot.AxiomOutput.splitOnce subject delimiter))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Option Nat)) => (match __a with | Option.some position => ((((((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_18 (subject) ((0 : Nat)) (position))) && (((Bool.true && (((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (delimiter) : Nat) 18446744073709551616)) && Bool.true)) && (Nat.blt (position + (_root_.LexLeanRuntime.length (delimiter) : Nat)) 18446744073709551616)) && (((((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (subject) : Nat) 18446744073709551616)) && (((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (delimiter) : Nat) 18446744073709551616)) && Bool.true)) && (Nat.blt (position + (_root_.LexLeanRuntime.length (delimiter) : Nat)) 18446744073709551616)) && Bool.true)) && Bool.true) && Bool.true))) && (__fits_18 (subject) ((position + (_root_.LexLeanRuntime.length (delimiter) : Nat))) ((_root_.LexLeanRuntime.subtract ((_root_.LexLeanRuntime.length (subject) : Nat)) ((position + (_root_.LexLeanRuntime.length (delimiter) : Nat))) : Nat)))) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option Nat)) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (match __a with | Option.some position => (Option.some (((LexLeanBoot.Text.sliceOr (subject) ((0 : Nat)) (position)), (LexLeanBoot.Text.sliceOr (subject) ((position + (_root_.LexLeanRuntime.length (delimiter) : Nat))) ((_root_.LexLeanRuntime.subtract ((_root_.LexLeanRuntime.length (subject) : Nat)) ((position + (_root_.LexLeanRuntime.length (delimiter) : Nat))) : Nat))))) : (Option (Prod ByteArray ByteArray))) | Option.none => (Option.none : (Option (Prod ByteArray ByteArray))))) (LexLeanBoot.Text.find (subject) (delimiter)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_76 (subject) (delimiter))) (fun (__a : (Option Nat)) _ => match __a with | Option.some position => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (__rel_18 (subject) ((0 : Nat)) (position))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes delimiter)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (_root_.LexLeanRuntime.length (delimiter) : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes subject)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes delimiter)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (_root_.LexLeanRuntime.length (delimiter) : Nat))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub (_root_.LexLeanRuntime.length (subject) : Nat) (position + (_root_.LexLeanRuntime.length (delimiter) : Nat)))) _root_.LexLeanPreservation.convL_nil))) (__rel_18 (subject) ((position + (_root_.LexLeanRuntime.length (delimiter) : Nat))) ((_root_.LexLeanRuntime.subtract ((_root_.LexLeanRuntime.length (subject) : Nat)) ((position + (_root_.LexLeanRuntime.length (delimiter) : Nat))) : Nat)))) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))) - -def __fits_87 (digits : ByteArray) : Bool := - (((((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (digits) : Nat) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.blt (_root_.LexLeanRuntime.length (digits) : Nat) (20 : Nat)) then (Bool.true && Bool.true) else (((((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (digits) : Nat) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (_root_.LexLeanRuntime.length (digits) : Nat) (20 : Nat)) then ((((((Bool.true && (((Bool.true && Bool.true) && (__fits_7 ("18446744073709551615"))) && Bool.true)) && Bool.true) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.text in -theorem __rel_87 (digits : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 87 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes digits)] (_root_.LexLeanPreservation.Rel (__fits_87 digits) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanBoot.AxiomOutput.fitsWord digits))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (((((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (digits) : Nat) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (_root_.LexLeanRuntime.length (digits) : Nat) (20 : Nat)) then ((((((Bool.true && (((Bool.true && Bool.true) && (__fits_7 ("18446744073709551615"))) && Bool.true)) && Bool.true) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then Bool.true else (if (Nat.beq (_root_.LexLeanRuntime.length (digits) : Nat) (20 : Nat)) then (!(_root_.LexLeanRuntime.equal ((_root_.LexLeanRuntime.compareBytes (digits) ((LexLeanBoot.AxiomOutput.text ("18446744073709551615"))) : Ordering)) ((_root_.LexLeanRuntime.compareBytes ((ByteArray.mk #[1])) ((ByteArray.mk #[0])) : Ordering)) : Bool)) else Bool.false))) (Nat.blt (_root_.LexLeanRuntime.length (digits) : Nat) (20 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes digits)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (_root_.LexLeanRuntime.length (digits) : Nat) (20 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((((Bool.true && (((Bool.true && Bool.true) && (__fits_7 ("18446744073709551615"))) && Bool.true)) && Bool.true) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then (!(_root_.LexLeanRuntime.equal ((_root_.LexLeanRuntime.compareBytes (digits) ((LexLeanBoot.AxiomOutput.text ("18446744073709551615"))) : Ordering)) ((_root_.LexLeanRuntime.compareBytes ((ByteArray.mk #[1])) ((ByteArray.mk #[0])) : Ordering)) : Bool)) else Bool.false)) (Nat.beq (_root_.LexLeanRuntime.length (digits) : Nat) (20 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes digits)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (_root_.LexLeanRuntime.length (digits) : Nat) (20 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("18446744073709551615"))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_compareBytes digits (LexLeanBoot.AxiomOutput.text ("18446744073709551615")))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_compareBytes (ByteArray.mk #[1]) (ByteArray.mk #[0]))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_ordering (_root_.LexLeanRuntime.compareBytes (digits) ((LexLeanBoot.AxiomOutput.text ("18446744073709551615"))) : Ordering) (_root_.LexLeanRuntime.compareBytes ((ByteArray.mk #[1])) ((ByteArray.mk #[0])) : Ordering))) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_boolNot (_root_.LexLeanRuntime.equal ((_root_.LexLeanRuntime.compareBytes (digits) ((LexLeanBoot.AxiomOutput.text ("18446744073709551615"))) : Ordering)) ((_root_.LexLeanRuntime.compareBytes ((ByteArray.mk #[1])) ((ByteArray.mk #[0])) : Ordering)) : Bool)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))))) - -def __fits_98 (subject : ByteArray) (position : Nat) : Bool := - (((Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true)))) && (__fits_70 (subject) (position) ((48 : UInt8)) ((57 : UInt8)))) && (if (LexLeanBoot.AxiomOutput.byteIn (subject) (position) ((48 : UInt8)) ((57 : UInt8))) then ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.byteIn in -theorem __rel_98 (subject : ByteArray) (position : Nat) : _root_.LexLeanPreservation.FunRel __prog 98 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat position)] (_root_.LexLeanPreservation.Rel (__fits_98 subject position) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (LexLeanBoot.AxiomOutput.digitStep subject position))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Option.some ((position + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat)))) (LexLeanBoot.AxiomOutput.byteIn (subject) (position) ((48 : UInt8)) ((57 : UInt8))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)))) (__rel_70 (subject) (position) ((48 : UInt8)) ((57 : UInt8)))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (1 : Nat))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_93 (subject : ByteArray) (position : Nat) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && (__fits_98 (subject) (position))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.digitStep in -theorem __rel_93 (subject : ByteArray) (position : Nat) : _root_.LexLeanPreservation.FunRel __prog 93 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat position)] (_root_.LexLeanPreservation.Rel (__fits_93 subject position) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) ((LexLeanBoot.AxiomOutput.digitStep (subject) (position))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_98 (subject) (position))) - -def __fits_88 (subject : ByteArray) : Bool := - (((((Bool.true && Bool.true) && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (subject) : Nat) 18446744073709551616)) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : Nat) => __fits_93 (subject) __p0) ((fun (position : Nat) => (LexLeanBoot.AxiomOutput.digitStep (subject) (position)))) ((_root_.LexLeanRuntime.length (subject) : Nat)) ((0 : Nat)))) && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (subject) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.digitStep in -theorem __rel_88 (subject : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 88 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject)] (_root_.LexLeanPreservation.Rel (__fits_88 subject) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanBoot.AxiomOutput.allDigits subject))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes subject)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterateUntil (es := _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.optEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) ((fun (position : Nat) => (LexLeanBoot.AxiomOutput.digitStep (subject) (position)))) (fun (__p0 : Nat) => __fits_93 (subject) __p0) 93 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject)] (fun (__p0 : Nat) => __rel_93 (subject) __p0) (_root_.LexLeanCollections.iterateUntil ((fun (position : Nat) => (LexLeanBoot.AxiomOutput.digitStep (subject) (position))))) (fun _ => rfl) (fun _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (p := __prog) (fi := 38) (ts := .nat) rfl ((_root_.LexLeanRuntime.length (subject) : Nat)) ((0 : Nat))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes subject)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq ((_root_.LexLeanCollections.iterateUntil ((fun (position : Nat) => (LexLeanBoot.AxiomOutput.digitStep (subject) (position)))) ((_root_.LexLeanRuntime.length (subject) : Nat)) ((0 : Nat)) : (Prod Nat Bool))).1 (_root_.LexLeanRuntime.length (subject) : Nat))) - -def __fits_78 (raw : ByteArray) : Bool := - ((((Bool.true && (((Bool.true && Bool.true) && (__fits_7 ("+"))) && Bool.true)) && (__fits_49 (raw) ((LexLeanBoot.AxiomOutput.text ("+"))))) && (match (LexLeanBoot.AxiomOutput.stripPrefix (raw) ((LexLeanBoot.AxiomOutput.text ("+")))) with | Option.some unsigned => Bool.true | Option.none => Bool.true)) && (let digits : ByteArray := (match (LexLeanBoot.AxiomOutput.stripPrefix (raw) ((LexLeanBoot.AxiomOutput.text ("+")))) with | Option.some unsigned => unsigned | Option.none => raw); (((((Bool.true && Bool.true) && (__fits_20 (digits))) && Bool.true) && (__fits_87 ((LexLeanBoot.AxiomOutput.significant (digits))))) && (let fits : Bool := (LexLeanBoot.AxiomOutput.fitsWord ((LexLeanBoot.AxiomOutput.significant (digits)))); (((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (digits) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true) && (if (Nat.blt (0 : Nat) (_root_.LexLeanRuntime.length (digits) : Nat)) then (((Bool.true && Bool.true) && (__fits_88 (digits))) && (if (LexLeanBoot.AxiomOutput.allDigits (digits)) then Bool.true else (Bool.true && Bool.true))) else (Bool.true && Bool.true))))))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.allDigits LexLeanBoot.AxiomOutput.fitsWord LexLeanBoot.AxiomOutput.significant LexLeanBoot.AxiomOutput.stripPrefix LexLeanBoot.AxiomOutput.text in -theorem __rel_78 (raw : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 78 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes raw)] (_root_.LexLeanPreservation.Rel (__fits_78 raw) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanBoot.AxiomOutput.isWord raw))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (let digits : ByteArray := (match (LexLeanBoot.AxiomOutput.stripPrefix (raw) ((LexLeanBoot.AxiomOutput.text ("+")))) with | Option.some unsigned => unsigned | Option.none => raw); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.some unsigned => Bool.true | Option.none => Bool.true)) (fun (__a : (Option ByteArray)) => _root_.LexLeanTarget.TargetSyntax.Value.bytes (match __a with | Option.some unsigned => unsigned | Option.none => raw)) (LexLeanBoot.AxiomOutput.stripPrefix (raw) ((LexLeanBoot.AxiomOutput.text ("+")))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("+"))) _root_.LexLeanPreservation.convL_nil)) (__rel_49 (raw) ((LexLeanBoot.AxiomOutput.text ("+"))))) (fun (__a : (Option ByteArray)) _ => match __a with | Option.some unsigned => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl))))) (let fits : Bool := (LexLeanBoot.AxiomOutput.fitsWord ((LexLeanBoot.AxiomOutput.significant (digits)))); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_20 (digits))) _root_.LexLeanPreservation.convL_nil) (__rel_87 ((LexLeanBoot.AxiomOutput.significant (digits))))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && (__fits_88 (digits))) && (if (LexLeanBoot.AxiomOutput.allDigits (digits)) then Bool.true else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then (if (LexLeanBoot.AxiomOutput.allDigits (digits)) then fits else Bool.false) else Bool.false)) (Nat.blt (0 : Nat) (_root_.LexLeanRuntime.length (digits) : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes digits)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (0 : Nat) (_root_.LexLeanRuntime.length (digits) : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else (Bool.true && Bool.true))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then fits else Bool.false)) (LexLeanBoot.AxiomOutput.allDigits (digits)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_88 (digits))) (fun _ => (_root_.LexLeanPreservation.conv_var rfl)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))))) - -def __fits_67 (field : ByteArray) : Bool := - ((((Bool.true && Bool.true) && (__fits_32 (field))) && Bool.true) && (__fits_78 ((LexLeanBoot.AxiomOutput.trimmed (field))))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.isWord LexLeanBoot.AxiomOutput.trimmed in -theorem __rel_67 (field : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 67 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes field)] (_root_.LexLeanPreservation.Rel (__fits_67 field) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanBoot.AxiomOutput.isCount field))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_32 (field))) _root_.LexLeanPreservation.convL_nil) (__rel_78 ((LexLeanBoot.AxiomOutput.trimmed (field))))) - -def __fits_77 (rest : ByteArray) : Bool := - (((Bool.true && (((Bool.true && Bool.true) && (__fits_7 (" "))) && Bool.true)) && (__fits_49 (rest) ((LexLeanBoot.AxiomOutput.text (" "))))) && (match (LexLeanBoot.AxiomOutput.stripPrefix (rest) ((LexLeanBoot.AxiomOutput.text (" ")))) with | Option.some spaced => ((Bool.true && (((Bool.true && Bool.true) && (__fits_7 ("info: "))) && Bool.true)) && (__fits_49 (spaced) ((LexLeanBoot.AxiomOutput.text ("info: "))))) | Option.none => (Bool.true && Bool.true))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.stripPrefix LexLeanBoot.AxiomOutput.text in -theorem __rel_77 (rest : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 77 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes rest)] (_root_.LexLeanPreservation.Rel (__fits_77 rest) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (LexLeanBoot.AxiomOutput.afterLabel rest))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.some spaced => ((Bool.true && (((Bool.true && Bool.true) && (__fits_7 ("info: "))) && Bool.true)) && (__fits_49 (spaced) ((LexLeanBoot.AxiomOutput.text ("info: "))))) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option ByteArray)) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (match __a with | Option.some spaced => (LexLeanBoot.AxiomOutput.stripPrefix (spaced) ((LexLeanBoot.AxiomOutput.text ("info: ")))) | Option.none => (Option.none : (Option ByteArray)))) (LexLeanBoot.AxiomOutput.stripPrefix (rest) ((LexLeanBoot.AxiomOutput.text (" ")))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 (" "))) _root_.LexLeanPreservation.convL_nil)) (__rel_49 (rest) ((LexLeanBoot.AxiomOutput.text (" "))))) (fun (__a : (Option ByteArray)) _ => match __a with | Option.some spaced => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("info: "))) _root_.LexLeanPreservation.convL_nil)) (__rel_49 (spaced) ((LexLeanBoot.AxiomOutput.text ("info: ")))))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))) - -def __fits_66 (column : ByteArray) (rest : ByteArray) : Bool := - (((Bool.true && (((Bool.true && Bool.true) && (__fits_7 ("-"))) && Bool.true)) && (__fits_65 (column) ((LexLeanBoot.AxiomOutput.text ("-"))))) && (match (LexLeanBoot.AxiomOutput.splitOnce (column) ((LexLeanBoot.AxiomOutput.text ("-")))) with | Option.some span => (Bool.true && (let low : ByteArray := (span).1; (Bool.true && (let high : ByteArray := (span).2; (((Bool.true && (((Bool.true && Bool.true) && (__fits_7 (":"))) && Bool.true)) && (__fits_65 (rest) ((LexLeanBoot.AxiomOutput.text (":"))))) && (match (LexLeanBoot.AxiomOutput.splitOnce (rest) ((LexLeanBoot.AxiomOutput.text (":")))) with | Option.some tail => (Bool.true && (let stop_column : ByteArray := (tail).1; (Bool.true && (let after : ByteArray := (tail).2; (((Bool.true && Bool.true) && (__fits_77 (after))) && (let labeled : (Option ByteArray) := (LexLeanBoot.AxiomOutput.afterLabel (after)); (((Bool.true && Bool.true) && (__fits_67 (low))) && (if (LexLeanBoot.AxiomOutput.isCount (low)) then (((Bool.true && Bool.true) && (__fits_67 (high))) && (if (LexLeanBoot.AxiomOutput.isCount (high)) then (((Bool.true && Bool.true) && (__fits_67 (stop_column))) && (if (LexLeanBoot.AxiomOutput.isCount (stop_column)) then Bool.true else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))))))))) | Option.none => (Bool.true && Bool.true))))))) | Option.none => (((Bool.true && Bool.true) && (__fits_77 (rest))) && (let labeled : (Option ByteArray) := (LexLeanBoot.AxiomOutput.afterLabel (rest)); (((Bool.true && Bool.true) && (__fits_67 (column))) && (if (LexLeanBoot.AxiomOutput.isCount (column)) then Bool.true else (Bool.true && Bool.true))))))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.afterLabel LexLeanBoot.AxiomOutput.isCount LexLeanBoot.AxiomOutput.splitOnce LexLeanBoot.AxiomOutput.text in -theorem __rel_66 (column : ByteArray) (rest : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 66 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes column), (_root_.LexLeanTarget.TargetSyntax.Value.bytes rest)] (_root_.LexLeanPreservation.Rel (__fits_66 column rest) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (LexLeanBoot.AxiomOutput.afterLocation column rest))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (fun (__a : (Option (Prod ByteArray ByteArray))) => (match __a with | Option.some span => (Bool.true && (let low : ByteArray := (span).1; (Bool.true && (let high : ByteArray := (span).2; (((Bool.true && (((Bool.true && Bool.true) && (__fits_7 (":"))) && Bool.true)) && (__fits_65 (rest) ((LexLeanBoot.AxiomOutput.text (":"))))) && (match (LexLeanBoot.AxiomOutput.splitOnce (rest) ((LexLeanBoot.AxiomOutput.text (":")))) with | Option.some tail => (Bool.true && (let stop_column : ByteArray := (tail).1; (Bool.true && (let after : ByteArray := (tail).2; (((Bool.true && Bool.true) && (__fits_77 (after))) && (let labeled : (Option ByteArray) := (LexLeanBoot.AxiomOutput.afterLabel (after)); (((Bool.true && Bool.true) && (__fits_67 (low))) && (if (LexLeanBoot.AxiomOutput.isCount (low)) then (((Bool.true && Bool.true) && (__fits_67 (high))) && (if (LexLeanBoot.AxiomOutput.isCount (high)) then (((Bool.true && Bool.true) && (__fits_67 (stop_column))) && (if (LexLeanBoot.AxiomOutput.isCount (stop_column)) then Bool.true else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))))))))) | Option.none => (Bool.true && Bool.true))))))) | Option.none => (((Bool.true && Bool.true) && (__fits_77 (rest))) && (let labeled : (Option ByteArray) := (LexLeanBoot.AxiomOutput.afterLabel (rest)); (((Bool.true && Bool.true) && (__fits_67 (column))) && (if (LexLeanBoot.AxiomOutput.isCount (column)) then Bool.true else (Bool.true && Bool.true))))))) (fun (__a : (Option (Prod ByteArray ByteArray))) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (match __a with | Option.some span => (let low : ByteArray := (span).1; (let high : ByteArray := (span).2; (match (LexLeanBoot.AxiomOutput.splitOnce (rest) ((LexLeanBoot.AxiomOutput.text (":")))) with | Option.some tail => (let stop_column : ByteArray := (tail).1; (let after : ByteArray := (tail).2; (let labeled : (Option ByteArray) := (LexLeanBoot.AxiomOutput.afterLabel (after)); (if (LexLeanBoot.AxiomOutput.isCount (low)) then (if (LexLeanBoot.AxiomOutput.isCount (high)) then (if (LexLeanBoot.AxiomOutput.isCount (stop_column)) then labeled else (Option.none : (Option ByteArray))) else (Option.none : (Option ByteArray))) else (Option.none : (Option ByteArray)))))) | Option.none => (Option.none : (Option ByteArray))))) | Option.none => (let labeled : (Option ByteArray) := (LexLeanBoot.AxiomOutput.afterLabel (rest)); (if (LexLeanBoot.AxiomOutput.isCount (column)) then labeled else (Option.none : (Option ByteArray)))))) (LexLeanBoot.AxiomOutput.splitOnce (column) ((LexLeanBoot.AxiomOutput.text ("-")))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("-"))) _root_.LexLeanPreservation.convL_nil)) (__rel_65 (column) ((LexLeanBoot.AxiomOutput.text ("-"))))) (fun (__a : (Option (Prod ByteArray ByteArray))) _ => match __a with | Option.some span => (_root_.LexLeanPreservation.convA_hit rfl rfl (let low : ByteArray := (span).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (let high : ByteArray := (span).2; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (fun (__a : (Option (Prod ByteArray ByteArray))) => (match __a with | Option.some tail => (Bool.true && (let stop_column : ByteArray := (tail).1; (Bool.true && (let after : ByteArray := (tail).2; (((Bool.true && Bool.true) && (__fits_77 (after))) && (let labeled : (Option ByteArray) := (LexLeanBoot.AxiomOutput.afterLabel (after)); (((Bool.true && Bool.true) && (__fits_67 (low))) && (if (LexLeanBoot.AxiomOutput.isCount (low)) then (((Bool.true && Bool.true) && (__fits_67 (high))) && (if (LexLeanBoot.AxiomOutput.isCount (high)) then (((Bool.true && Bool.true) && (__fits_67 (stop_column))) && (if (LexLeanBoot.AxiomOutput.isCount (stop_column)) then Bool.true else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))))))))) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option (Prod ByteArray ByteArray))) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (match __a with | Option.some tail => (let stop_column : ByteArray := (tail).1; (let after : ByteArray := (tail).2; (let labeled : (Option ByteArray) := (LexLeanBoot.AxiomOutput.afterLabel (after)); (if (LexLeanBoot.AxiomOutput.isCount (low)) then (if (LexLeanBoot.AxiomOutput.isCount (high)) then (if (LexLeanBoot.AxiomOutput.isCount (stop_column)) then labeled else (Option.none : (Option ByteArray))) else (Option.none : (Option ByteArray))) else (Option.none : (Option ByteArray)))))) | Option.none => (Option.none : (Option ByteArray)))) (LexLeanBoot.AxiomOutput.splitOnce (rest) ((LexLeanBoot.AxiomOutput.text (":")))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 (":"))) _root_.LexLeanPreservation.convL_nil)) (__rel_65 (rest) ((LexLeanBoot.AxiomOutput.text (":"))))) (fun (__a : (Option (Prod ByteArray ByteArray))) _ => match __a with | Option.some tail => (_root_.LexLeanPreservation.convA_hit rfl rfl (let stop_column : ByteArray := (tail).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (let after : ByteArray := (tail).2; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (let labeled : (Option ByteArray) := (LexLeanBoot.AxiomOutput.afterLabel (after)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_77 (after))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && (__fits_67 (high))) && (if (LexLeanBoot.AxiomOutput.isCount (high)) then (((Bool.true && Bool.true) && (__fits_67 (stop_column))) && (if (LexLeanBoot.AxiomOutput.isCount (stop_column)) then Bool.true else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (if __b then (if (LexLeanBoot.AxiomOutput.isCount (high)) then (if (LexLeanBoot.AxiomOutput.isCount (stop_column)) then labeled else (Option.none : (Option ByteArray))) else (Option.none : (Option ByteArray))) else (Option.none : (Option ByteArray)))) (LexLeanBoot.AxiomOutput.isCount (low)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_67 (low))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && (__fits_67 (stop_column))) && (if (LexLeanBoot.AxiomOutput.isCount (stop_column)) then Bool.true else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (if __b then (if (LexLeanBoot.AxiomOutput.isCount (stop_column)) then labeled else (Option.none : (Option ByteArray))) else (Option.none : (Option ByteArray)))) (LexLeanBoot.AxiomOutput.isCount (high)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_67 (high))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (if __b then labeled else (Option.none : (Option ByteArray)))) (LexLeanBoot.AxiomOutput.isCount (stop_column)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_67 (stop_column))) (fun _ => (_root_.LexLeanPreservation.conv_var rfl)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)))))))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (let labeled : (Option ByteArray) := (LexLeanBoot.AxiomOutput.afterLabel (rest)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_77 (rest))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (if __b then labeled else (Option.none : (Option ByteArray)))) (LexLeanBoot.AxiomOutput.isCount (column)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_67 (column))) (fun _ => (_root_.LexLeanPreservation.conv_var rfl)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)))))))) - -def __fits_50 (line : ByteArray) : Bool := - (((Bool.true && (((Bool.true && Bool.true) && (__fits_7 (":"))) && Bool.true)) && (__fits_65 (line) ((LexLeanBoot.AxiomOutput.text (":"))))) && (match (LexLeanBoot.AxiomOutput.splitOnce (line) ((LexLeanBoot.AxiomOutput.text (":")))) with | Option.some head => (((Bool.true && (((Bool.true && Bool.true) && (__fits_7 (":"))) && Bool.true)) && (__fits_65 ((head).2) ((LexLeanBoot.AxiomOutput.text (":"))))) && (match (LexLeanBoot.AxiomOutput.splitOnce ((head).2) ((LexLeanBoot.AxiomOutput.text (":")))) with | Option.some middle => (((Bool.true && (((Bool.true && Bool.true) && (__fits_7 (":"))) && Bool.true)) && (__fits_65 ((middle).2) ((LexLeanBoot.AxiomOutput.text (":"))))) && (match (LexLeanBoot.AxiomOutput.splitOnce ((middle).2) ((LexLeanBoot.AxiomOutput.text (":")))) with | Option.some tail => (Bool.true && (let line_number : ByteArray := (middle).1; (Bool.true && (let column : ByteArray := (tail).1; (Bool.true && (let rest : ByteArray := (tail).2; (((Bool.true && (Bool.true && Bool.true)) && (__fits_66 (column) (rest))) && (let located_rest : (Option ByteArray) := (LexLeanBoot.AxiomOutput.afterLocation (column) (rest)); (((Bool.true && Bool.true) && (__fits_67 (line_number))) && (if (LexLeanBoot.AxiomOutput.isCount (line_number)) then Bool.true else (Bool.true && Bool.true))))))))))) | Option.none => (Bool.true && Bool.true))) | Option.none => (Bool.true && Bool.true))) | Option.none => (Bool.true && Bool.true))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.afterLocation LexLeanBoot.AxiomOutput.isCount LexLeanBoot.AxiomOutput.splitOnce LexLeanBoot.AxiomOutput.text in -theorem __rel_50 (line : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 50 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes line)] (_root_.LexLeanPreservation.Rel (__fits_50 line) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (LexLeanBoot.AxiomOutput.located line))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (fun (__a : (Option (Prod ByteArray ByteArray))) => (match __a with | Option.some head => (((Bool.true && (((Bool.true && Bool.true) && (__fits_7 (":"))) && Bool.true)) && (__fits_65 ((head).2) ((LexLeanBoot.AxiomOutput.text (":"))))) && (match (LexLeanBoot.AxiomOutput.splitOnce ((head).2) ((LexLeanBoot.AxiomOutput.text (":")))) with | Option.some middle => (((Bool.true && (((Bool.true && Bool.true) && (__fits_7 (":"))) && Bool.true)) && (__fits_65 ((middle).2) ((LexLeanBoot.AxiomOutput.text (":"))))) && (match (LexLeanBoot.AxiomOutput.splitOnce ((middle).2) ((LexLeanBoot.AxiomOutput.text (":")))) with | Option.some tail => (Bool.true && (let line_number : ByteArray := (middle).1; (Bool.true && (let column : ByteArray := (tail).1; (Bool.true && (let rest : ByteArray := (tail).2; (((Bool.true && (Bool.true && Bool.true)) && (__fits_66 (column) (rest))) && (let located_rest : (Option ByteArray) := (LexLeanBoot.AxiomOutput.afterLocation (column) (rest)); (((Bool.true && Bool.true) && (__fits_67 (line_number))) && (if (LexLeanBoot.AxiomOutput.isCount (line_number)) then Bool.true else (Bool.true && Bool.true))))))))))) | Option.none => (Bool.true && Bool.true))) | Option.none => (Bool.true && Bool.true))) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option (Prod ByteArray ByteArray))) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (match __a with | Option.some head => (match (LexLeanBoot.AxiomOutput.splitOnce ((head).2) ((LexLeanBoot.AxiomOutput.text (":")))) with | Option.some middle => (match (LexLeanBoot.AxiomOutput.splitOnce ((middle).2) ((LexLeanBoot.AxiomOutput.text (":")))) with | Option.some tail => (let line_number : ByteArray := (middle).1; (let column : ByteArray := (tail).1; (let rest : ByteArray := (tail).2; (let located_rest : (Option ByteArray) := (LexLeanBoot.AxiomOutput.afterLocation (column) (rest)); (if (LexLeanBoot.AxiomOutput.isCount (line_number)) then located_rest else (Option.none : (Option ByteArray))))))) | Option.none => (Option.none : (Option ByteArray))) | Option.none => (Option.none : (Option ByteArray))) | Option.none => (Option.none : (Option ByteArray)))) (LexLeanBoot.AxiomOutput.splitOnce (line) ((LexLeanBoot.AxiomOutput.text (":")))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 (":"))) _root_.LexLeanPreservation.convL_nil)) (__rel_65 (line) ((LexLeanBoot.AxiomOutput.text (":"))))) (fun (__a : (Option (Prod ByteArray ByteArray))) _ => match __a with | Option.some head => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (fun (__a : (Option (Prod ByteArray ByteArray))) => (match __a with | Option.some middle => (((Bool.true && (((Bool.true && Bool.true) && (__fits_7 (":"))) && Bool.true)) && (__fits_65 ((middle).2) ((LexLeanBoot.AxiomOutput.text (":"))))) && (match (LexLeanBoot.AxiomOutput.splitOnce ((middle).2) ((LexLeanBoot.AxiomOutput.text (":")))) with | Option.some tail => (Bool.true && (let line_number : ByteArray := (middle).1; (Bool.true && (let column : ByteArray := (tail).1; (Bool.true && (let rest : ByteArray := (tail).2; (((Bool.true && (Bool.true && Bool.true)) && (__fits_66 (column) (rest))) && (let located_rest : (Option ByteArray) := (LexLeanBoot.AxiomOutput.afterLocation (column) (rest)); (((Bool.true && Bool.true) && (__fits_67 (line_number))) && (if (LexLeanBoot.AxiomOutput.isCount (line_number)) then Bool.true else (Bool.true && Bool.true))))))))))) | Option.none => (Bool.true && Bool.true))) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option (Prod ByteArray ByteArray))) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (match __a with | Option.some middle => (match (LexLeanBoot.AxiomOutput.splitOnce ((middle).2) ((LexLeanBoot.AxiomOutput.text (":")))) with | Option.some tail => (let line_number : ByteArray := (middle).1; (let column : ByteArray := (tail).1; (let rest : ByteArray := (tail).2; (let located_rest : (Option ByteArray) := (LexLeanBoot.AxiomOutput.afterLocation (column) (rest)); (if (LexLeanBoot.AxiomOutput.isCount (line_number)) then located_rest else (Option.none : (Option ByteArray))))))) | Option.none => (Option.none : (Option ByteArray))) | Option.none => (Option.none : (Option ByteArray)))) (LexLeanBoot.AxiomOutput.splitOnce ((head).2) ((LexLeanBoot.AxiomOutput.text (":")))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 (":"))) _root_.LexLeanPreservation.convL_nil)) (__rel_65 ((head).2) ((LexLeanBoot.AxiomOutput.text (":"))))) (fun (__a : (Option (Prod ByteArray ByteArray))) _ => match __a with | Option.some middle => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (fun (__a : (Option (Prod ByteArray ByteArray))) => (match __a with | Option.some tail => (Bool.true && (let line_number : ByteArray := (middle).1; (Bool.true && (let column : ByteArray := (tail).1; (Bool.true && (let rest : ByteArray := (tail).2; (((Bool.true && (Bool.true && Bool.true)) && (__fits_66 (column) (rest))) && (let located_rest : (Option ByteArray) := (LexLeanBoot.AxiomOutput.afterLocation (column) (rest)); (((Bool.true && Bool.true) && (__fits_67 (line_number))) && (if (LexLeanBoot.AxiomOutput.isCount (line_number)) then Bool.true else (Bool.true && Bool.true))))))))))) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option (Prod ByteArray ByteArray))) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (match __a with | Option.some tail => (let line_number : ByteArray := (middle).1; (let column : ByteArray := (tail).1; (let rest : ByteArray := (tail).2; (let located_rest : (Option ByteArray) := (LexLeanBoot.AxiomOutput.afterLocation (column) (rest)); (if (LexLeanBoot.AxiomOutput.isCount (line_number)) then located_rest else (Option.none : (Option ByteArray))))))) | Option.none => (Option.none : (Option ByteArray)))) (LexLeanBoot.AxiomOutput.splitOnce ((middle).2) ((LexLeanBoot.AxiomOutput.text (":")))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 (":"))) _root_.LexLeanPreservation.convL_nil)) (__rel_65 ((middle).2) ((LexLeanBoot.AxiomOutput.text (":"))))) (fun (__a : (Option (Prod ByteArray ByteArray))) _ => match __a with | Option.some tail => (_root_.LexLeanPreservation.convA_hit rfl rfl (let line_number : ByteArray := (middle).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (let column : ByteArray := (tail).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (let rest : ByteArray := (tail).2; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (let located_rest : (Option ByteArray) := (LexLeanBoot.AxiomOutput.afterLocation (column) (rest)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_66 (column) (rest))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (if __b then located_rest else (Option.none : (Option ByteArray)))) (LexLeanBoot.AxiomOutput.isCount (line_number)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_67 (line_number))) (fun _ => (_root_.LexLeanPreservation.conv_var rfl)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)))))))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)))))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)))))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))) - -def __fits_33 (line : ByteArray) : Bool := - (((Bool.true && (((Bool.true && Bool.true) && (__fits_7 ("'"))) && Bool.true)) && (__fits_48 (line) ((LexLeanBoot.AxiomOutput.text ("'"))))) && (if (LexLeanBoot.Text.startsWith (line) ((LexLeanBoot.AxiomOutput.text ("'")))) then ((Bool.true && Bool.true) && Bool.true) else (((Bool.true && (((Bool.true && Bool.true) && (__fits_7 ("info: "))) && Bool.true)) && (__fits_49 (line) ((LexLeanBoot.AxiomOutput.text ("info: "))))) && (match (LexLeanBoot.AxiomOutput.stripPrefix (line) ((LexLeanBoot.AxiomOutput.text ("info: ")))) with | Option.some payload => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((Bool.true && Bool.true) && (__fits_50 (line))))))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.located LexLeanBoot.AxiomOutput.stripPrefix LexLeanBoot.AxiomOutput.text LexLeanBoot.Text.startsWith in -theorem __rel_33 (line : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 33 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes line)] (_root_.LexLeanPreservation.Rel (__fits_33 line) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (LexLeanBoot.AxiomOutput.envelope line))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && Bool.true) && Bool.true) else (((Bool.true && (((Bool.true && Bool.true) && (__fits_7 ("info: "))) && Bool.true)) && (__fits_49 (line) ((LexLeanBoot.AxiomOutput.text ("info: "))))) && (match (LexLeanBoot.AxiomOutput.stripPrefix (line) ((LexLeanBoot.AxiomOutput.text ("info: ")))) with | Option.some payload => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((Bool.true && Bool.true) && (__fits_50 (line))))))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (if __b then (Option.some (line) : (Option ByteArray)) else (match (LexLeanBoot.AxiomOutput.stripPrefix (line) ((LexLeanBoot.AxiomOutput.text ("info: ")))) with | Option.some payload => (Option.some (payload) : (Option ByteArray)) | Option.none => (LexLeanBoot.AxiomOutput.located (line))))) (LexLeanBoot.Text.startsWith (line) ((LexLeanBoot.AxiomOutput.text ("'")))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("'"))) _root_.LexLeanPreservation.convL_nil)) (__rel_48 (line) ((LexLeanBoot.AxiomOutput.text ("'"))))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.some payload => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((Bool.true && Bool.true) && (__fits_50 (line))))) (fun (__a : (Option ByteArray)) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (match __a with | Option.some payload => (Option.some (payload) : (Option ByteArray)) | Option.none => (LexLeanBoot.AxiomOutput.located (line)))) (LexLeanBoot.AxiomOutput.stripPrefix (line) ((LexLeanBoot.AxiomOutput.text ("info: ")))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("info: "))) _root_.LexLeanPreservation.convL_nil)) (__rel_49 (line) ((LexLeanBoot.AxiomOutput.text ("info: "))))) (fun (__a : (Option ByteArray)) _ => match __a with | Option.some payload => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_50 (line))))))))) - -def __fits_34 (names : (List ByteArray)) : Bool := - (Bool.true && (match names with | List.nil => (Bool.true && Bool.true) | List.cons head tail => ((Bool.true && Bool.true) && Bool.true))) - -theorem __rel_34 (names : (List ByteArray)) : _root_.LexLeanPreservation.FunRel __prog 34 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) names)] (_root_.LexLeanPreservation.Rel (__fits_34 names) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (LexLeanBoot.AxiomOutput.headOf names))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (List ByteArray)) => (match __a with | List.nil => (Bool.true && Bool.true) | List.cons head tail => ((Bool.true && Bool.true) && Bool.true))) (fun (__a : (List ByteArray)) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (match __a with | List.nil => (Option.none : (Option ByteArray)) | List.cons head tail => (Option.some (head) : (Option ByteArray)))) names (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (List ByteArray)) _ => match __a with | List.nil => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) | List.cons head tail => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some))))) - -def __fits_14 (state : (LexLeanBoot.AxiomOutput.Scan)) (line : ByteArray) : Bool := - (Bool.true && (match state with | LexLeanBoot.AxiomOutput.Scan.stopped rejection => Bool.true | LexLeanBoot.AxiomOutput.Scan.inside records remaining payload about => (((Bool.true && Bool.true) && (__fits_29 (line))) && (match (LexLeanBoot.AxiomOutput.continuation (line)) with | Option.some more => ((Bool.true && (Bool.true && (((((Bool.true && (((Bool.true && Bool.true) && (__fits_7 (" "))) && Bool.true)) && (__fits_6 (payload) ((LexLeanBoot.AxiomOutput.text (" "))))) && (Bool.true && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.cat (payload) ((LexLeanBoot.AxiomOutput.text (" "))))) (more))) && (Bool.true && Bool.true)))) && (__fits_30 (records) (remaining) ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat (payload) ((LexLeanBoot.AxiomOutput.text (" "))))) (more))) (about))) | Option.none => ((((((Bool.true && Bool.true) && (__fits_7 ("unterminated axiom payload: "))) && (Bool.true && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.text ("unterminated axiom payload: "))) (payload))) && (Bool.true && Bool.true)) && (__fits_31 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("unterminated axiom payload: "))) (payload))) (about))))) | LexLeanBoot.AxiomOutput.Scan.between records remaining => (((Bool.true && (((((Bool.true && Bool.true) && (__fits_32 (line))) && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length ((LexLeanBoot.AxiomOutput.trimmed (line))) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true) && (if (Nat.beq (0 : Nat) (_root_.LexLeanRuntime.length ((LexLeanBoot.AxiomOutput.trimmed (line))) : Nat)) then Bool.true else (((((Bool.true && Bool.true) && (__fits_32 (line))) && Bool.true) && (__fits_33 ((LexLeanBoot.AxiomOutput.trimmed (line))))) && (match (LexLeanBoot.AxiomOutput.envelope ((LexLeanBoot.AxiomOutput.trimmed (line)))) with | Option.some payload => ((Bool.true && (Bool.true && (Bool.true && (((Bool.true && Bool.true) && (__fits_34 (remaining))) && Bool.true)))) && (__fits_30 (records) (remaining) (payload) ((LexLeanBoot.AxiomOutput.headOf (remaining))))) | Option.none => ((((((Bool.true && Bool.true) && (__fits_7 ("unrecognized audit line: "))) && (((Bool.true && Bool.true) && (__fits_32 (line))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.text ("unrecognized audit line: "))) ((LexLeanBoot.AxiomOutput.trimmed (line))))) && (((Bool.true && Bool.true) && (__fits_34 (remaining))) && Bool.true)) && (__fits_31 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("unrecognized audit line: "))) ((LexLeanBoot.AxiomOutput.trimmed (line))))) ((LexLeanBoot.AxiomOutput.headOf (remaining))))))))))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.cat LexLeanBoot.AxiomOutput.continuation LexLeanBoot.AxiomOutput.envelope LexLeanBoot.AxiomOutput.extend LexLeanBoot.AxiomOutput.headOf LexLeanBoot.AxiomOutput.stop LexLeanBoot.AxiomOutput.text LexLeanBoot.AxiomOutput.trimmed in -theorem __rel_14 (state : (LexLeanBoot.AxiomOutput.Scan)) (line : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 14 [(__enc_1 state), (_root_.LexLeanTarget.TargetSyntax.Value.bytes line)] (_root_.LexLeanPreservation.Rel (__fits_14 state line) (__enc_1 (LexLeanBoot.AxiomOutput.scanStep state line))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV __enc_1 (fun (__a : (LexLeanBoot.AxiomOutput.Scan)) => (match __a with | LexLeanBoot.AxiomOutput.Scan.stopped rejection => Bool.true | LexLeanBoot.AxiomOutput.Scan.inside records remaining payload about => (((Bool.true && Bool.true) && (__fits_29 (line))) && (match (LexLeanBoot.AxiomOutput.continuation (line)) with | Option.some more => ((Bool.true && (Bool.true && (((((Bool.true && (((Bool.true && Bool.true) && (__fits_7 (" "))) && Bool.true)) && (__fits_6 (payload) ((LexLeanBoot.AxiomOutput.text (" "))))) && (Bool.true && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.cat (payload) ((LexLeanBoot.AxiomOutput.text (" "))))) (more))) && (Bool.true && Bool.true)))) && (__fits_30 (records) (remaining) ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat (payload) ((LexLeanBoot.AxiomOutput.text (" "))))) (more))) (about))) | Option.none => ((((((Bool.true && Bool.true) && (__fits_7 ("unterminated axiom payload: "))) && (Bool.true && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.text ("unterminated axiom payload: "))) (payload))) && (Bool.true && Bool.true)) && (__fits_31 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("unterminated axiom payload: "))) (payload))) (about))))) | LexLeanBoot.AxiomOutput.Scan.between records remaining => (((Bool.true && (((((Bool.true && Bool.true) && (__fits_32 (line))) && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length ((LexLeanBoot.AxiomOutput.trimmed (line))) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true) && (if (Nat.beq (0 : Nat) (_root_.LexLeanRuntime.length ((LexLeanBoot.AxiomOutput.trimmed (line))) : Nat)) then Bool.true else (((((Bool.true && Bool.true) && (__fits_32 (line))) && Bool.true) && (__fits_33 ((LexLeanBoot.AxiomOutput.trimmed (line))))) && (match (LexLeanBoot.AxiomOutput.envelope ((LexLeanBoot.AxiomOutput.trimmed (line)))) with | Option.some payload => ((Bool.true && (Bool.true && (Bool.true && (((Bool.true && Bool.true) && (__fits_34 (remaining))) && Bool.true)))) && (__fits_30 (records) (remaining) (payload) ((LexLeanBoot.AxiomOutput.headOf (remaining))))) | Option.none => ((((((Bool.true && Bool.true) && (__fits_7 ("unrecognized audit line: "))) && (((Bool.true && Bool.true) && (__fits_32 (line))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.text ("unrecognized audit line: "))) ((LexLeanBoot.AxiomOutput.trimmed (line))))) && (((Bool.true && Bool.true) && (__fits_34 (remaining))) && Bool.true)) && (__fits_31 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("unrecognized audit line: "))) ((LexLeanBoot.AxiomOutput.trimmed (line))))) ((LexLeanBoot.AxiomOutput.headOf (remaining))))))))))) (fun (__a : (LexLeanBoot.AxiomOutput.Scan)) => __enc_1 (match __a with | LexLeanBoot.AxiomOutput.Scan.stopped rejection => state | LexLeanBoot.AxiomOutput.Scan.inside records remaining payload about => (match (LexLeanBoot.AxiomOutput.continuation (line)) with | Option.some more => (LexLeanBoot.AxiomOutput.extend (records) (remaining) ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat (payload) ((LexLeanBoot.AxiomOutput.text (" "))))) (more))) (about)) | Option.none => (LexLeanBoot.AxiomOutput.stop ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("unterminated axiom payload: "))) (payload))) (about))) | LexLeanBoot.AxiomOutput.Scan.between records remaining => (if (Nat.beq (0 : Nat) (_root_.LexLeanRuntime.length ((LexLeanBoot.AxiomOutput.trimmed (line))) : Nat)) then state else (match (LexLeanBoot.AxiomOutput.envelope ((LexLeanBoot.AxiomOutput.trimmed (line)))) with | Option.some payload => (LexLeanBoot.AxiomOutput.extend (records) (remaining) (payload) ((LexLeanBoot.AxiomOutput.headOf (remaining)))) | Option.none => (LexLeanBoot.AxiomOutput.stop ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("unrecognized audit line: "))) ((LexLeanBoot.AxiomOutput.trimmed (line))))) ((LexLeanBoot.AxiomOutput.headOf (remaining)))))))) state (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (LexLeanBoot.AxiomOutput.Scan)) _ => match __a with | LexLeanBoot.AxiomOutput.Scan.stopped rejection => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | LexLeanBoot.AxiomOutput.Scan.inside records remaining payload about => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.some more => ((Bool.true && (Bool.true && (((((Bool.true && (((Bool.true && Bool.true) && (__fits_7 (" "))) && Bool.true)) && (__fits_6 (payload) ((LexLeanBoot.AxiomOutput.text (" "))))) && (Bool.true && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.cat (payload) ((LexLeanBoot.AxiomOutput.text (" "))))) (more))) && (Bool.true && Bool.true)))) && (__fits_30 (records) (remaining) ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat (payload) ((LexLeanBoot.AxiomOutput.text (" "))))) (more))) (about))) | Option.none => ((((((Bool.true && Bool.true) && (__fits_7 ("unterminated axiom payload: "))) && (Bool.true && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.text ("unterminated axiom payload: "))) (payload))) && (Bool.true && Bool.true)) && (__fits_31 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("unterminated axiom payload: "))) (payload))) (about))))) (fun (__a : (Option ByteArray)) => __enc_1 (match __a with | Option.some more => (LexLeanBoot.AxiomOutput.extend (records) (remaining) ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat (payload) ((LexLeanBoot.AxiomOutput.text (" "))))) (more))) (about)) | Option.none => (LexLeanBoot.AxiomOutput.stop ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("unterminated axiom payload: "))) (payload))) (about)))) (LexLeanBoot.AxiomOutput.continuation (line)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_29 (line))) (fun (__a : (Option ByteArray)) _ => match __a with | Option.some more => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 (" "))) _root_.LexLeanPreservation.convL_nil)) (__rel_6 (payload) ((LexLeanBoot.AxiomOutput.text (" "))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_6 ((LexLeanBoot.AxiomOutput.cat (payload) ((LexLeanBoot.AxiomOutput.text (" "))))) (more))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)))) (__rel_30 (records) (remaining) ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.cat (payload) ((LexLeanBoot.AxiomOutput.text (" "))))) (more))) (about)))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("unterminated axiom payload: "))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_6 ((LexLeanBoot.AxiomOutput.text ("unterminated axiom payload: "))) (payload))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_31 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("unterminated axiom payload: "))) (payload))) (about))))))))) | LexLeanBoot.AxiomOutput.Scan.between records remaining => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else (((((Bool.true && Bool.true) && (__fits_32 (line))) && Bool.true) && (__fits_33 ((LexLeanBoot.AxiomOutput.trimmed (line))))) && (match (LexLeanBoot.AxiomOutput.envelope ((LexLeanBoot.AxiomOutput.trimmed (line)))) with | Option.some payload => ((Bool.true && (Bool.true && (Bool.true && (((Bool.true && Bool.true) && (__fits_34 (remaining))) && Bool.true)))) && (__fits_30 (records) (remaining) (payload) ((LexLeanBoot.AxiomOutput.headOf (remaining))))) | Option.none => ((((((Bool.true && Bool.true) && (__fits_7 ("unrecognized audit line: "))) && (((Bool.true && Bool.true) && (__fits_32 (line))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.text ("unrecognized audit line: "))) ((LexLeanBoot.AxiomOutput.trimmed (line))))) && (((Bool.true && Bool.true) && (__fits_34 (remaining))) && Bool.true)) && (__fits_31 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("unrecognized audit line: "))) ((LexLeanBoot.AxiomOutput.trimmed (line))))) ((LexLeanBoot.AxiomOutput.headOf (remaining))))))))) (fun (__b : Bool) => __enc_1 (if __b then state else (match (LexLeanBoot.AxiomOutput.envelope ((LexLeanBoot.AxiomOutput.trimmed (line)))) with | Option.some payload => (LexLeanBoot.AxiomOutput.extend (records) (remaining) (payload) ((LexLeanBoot.AxiomOutput.headOf (remaining)))) | Option.none => (LexLeanBoot.AxiomOutput.stop ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("unrecognized audit line: "))) ((LexLeanBoot.AxiomOutput.trimmed (line))))) ((LexLeanBoot.AxiomOutput.headOf (remaining))))))) (Nat.beq (0 : Nat) (_root_.LexLeanRuntime.length ((LexLeanBoot.AxiomOutput.trimmed (line))) : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_32 (line))) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes (LexLeanBoot.AxiomOutput.trimmed (line)))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (0 : Nat) (_root_.LexLeanRuntime.length ((LexLeanBoot.AxiomOutput.trimmed (line))) : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_var rfl)) (fun _ => (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.some payload => ((Bool.true && (Bool.true && (Bool.true && (((Bool.true && Bool.true) && (__fits_34 (remaining))) && Bool.true)))) && (__fits_30 (records) (remaining) (payload) ((LexLeanBoot.AxiomOutput.headOf (remaining))))) | Option.none => ((((((Bool.true && Bool.true) && (__fits_7 ("unrecognized audit line: "))) && (((Bool.true && Bool.true) && (__fits_32 (line))) && Bool.true)) && (__fits_6 ((LexLeanBoot.AxiomOutput.text ("unrecognized audit line: "))) ((LexLeanBoot.AxiomOutput.trimmed (line))))) && (((Bool.true && Bool.true) && (__fits_34 (remaining))) && Bool.true)) && (__fits_31 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("unrecognized audit line: "))) ((LexLeanBoot.AxiomOutput.trimmed (line))))) ((LexLeanBoot.AxiomOutput.headOf (remaining))))))) (fun (__a : (Option ByteArray)) => __enc_1 (match __a with | Option.some payload => (LexLeanBoot.AxiomOutput.extend (records) (remaining) (payload) ((LexLeanBoot.AxiomOutput.headOf (remaining)))) | Option.none => (LexLeanBoot.AxiomOutput.stop ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("unrecognized audit line: "))) ((LexLeanBoot.AxiomOutput.trimmed (line))))) ((LexLeanBoot.AxiomOutput.headOf (remaining)))))) (LexLeanBoot.AxiomOutput.envelope ((LexLeanBoot.AxiomOutput.trimmed (line)))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_32 (line))) _root_.LexLeanPreservation.convL_nil) (__rel_33 ((LexLeanBoot.AxiomOutput.trimmed (line))))) (fun (__a : (Option ByteArray)) _ => match __a with | Option.some payload => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_34 (remaining))) _root_.LexLeanPreservation.convL_nil)))) (__rel_30 (records) (remaining) (payload) ((LexLeanBoot.AxiomOutput.headOf (remaining)))))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil) (__rel_7 ("unrecognized audit line: "))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_32 (line))) _root_.LexLeanPreservation.convL_nil)) (__rel_6 ((LexLeanBoot.AxiomOutput.text ("unrecognized audit line: "))) ((LexLeanBoot.AxiomOutput.trimmed (line))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_34 (remaining))) _root_.LexLeanPreservation.convL_nil)) (__rel_31 ((LexLeanBoot.AxiomOutput.cat ((LexLeanBoot.AxiomOutput.text ("unrecognized audit line: "))) ((LexLeanBoot.AxiomOutput.trimmed (line))))) ((LexLeanBoot.AxiomOutput.headOf (remaining)))))))))))))))) - -def __fits_3 (state : (LexLeanBoot.AxiomOutput.Scan)) (line : ByteArray) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && (__fits_14 (state) (line))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.scanStep in -theorem __rel_3 (state : (LexLeanBoot.AxiomOutput.Scan)) (line : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 3 [(__enc_1 state), (_root_.LexLeanTarget.TargetSyntax.Value.bytes line)] (_root_.LexLeanPreservation.Rel (__fits_3 state line) (__enc_1 ((LexLeanBoot.AxiomOutput.scanStep (state) (line))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_14 (state) (line))) - -def __fits_52 (line : ByteArray) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && (__fits_68 (line) ((ByteArray.mk #[13])))) && (if (LexLeanBoot.Text.endsWith (line) ((ByteArray.mk #[13]))) then ((Bool.true && (Bool.true && (((((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (line) : Nat) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_18 (line) ((0 : Nat)) ((_root_.LexLeanRuntime.subtract ((_root_.LexLeanRuntime.length (line) : Nat)) ((1 : Nat)) : Nat)))) else Bool.true)) - -attribute [local irreducible] LexLeanBoot.Text.endsWith LexLeanBoot.Text.sliceOr in -theorem __rel_52 (line : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 52 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes line)] (_root_.LexLeanPreservation.Rel (__fits_52 line) (_root_.LexLeanTarget.TargetSyntax.Value.bytes (LexLeanBoot.Text.chomp line))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && (Bool.true && (((((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (line) : Nat) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_18 (line) ((0 : Nat)) ((_root_.LexLeanRuntime.subtract ((_root_.LexLeanRuntime.length (line) : Nat)) ((1 : Nat)) : Nat)))) else Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bytes (if __b then (LexLeanBoot.Text.sliceOr (line) ((0 : Nat)) ((_root_.LexLeanRuntime.subtract ((_root_.LexLeanRuntime.length (line) : Nat)) ((1 : Nat)) : Nat))) else line)) (LexLeanBoot.Text.endsWith (line) ((ByteArray.mk #[13]))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_68 (line) ((ByteArray.mk #[13])))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes line)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub (_root_.LexLeanRuntime.length (line) : Nat) (1 : Nat))) _root_.LexLeanPreservation.convL_nil))) (__rel_18 (line) ((0 : Nat)) ((_root_.LexLeanRuntime.subtract ((_root_.LexLeanRuntime.length (line) : Nat)) ((1 : Nat)) : Nat))))) (fun _ => (_root_.LexLeanPreservation.conv_var rfl))) - -def __fits_35 (subject : ByteArray) (state : (Prod Nat (Prod Nat (List ByteArray)))) : Bool := - (Bool.true && (let position : Nat := (state).1; (Bool.true && (let start : Nat := ((state).2).1; (Bool.true && (let pieces : (List ByteArray) := ((state).2).2; (((Bool.true && (Bool.true && Bool.true)) && (__fits_51 (subject) (position))) && (match (LexLeanBoot.Text.byteAt (subject) (position)) with | Option.some byte => (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal (byte) ((10 : UInt8)) : Bool) then ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((((Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_18 (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))) && Bool.true) && (__fits_52 ((LexLeanBoot.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))))) && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) | Option.none => (Bool.true && Bool.true))))))))) - -attribute [local irreducible] LexLeanBoot.Text.byteAt LexLeanBoot.Text.chomp LexLeanBoot.Text.sliceOr in -theorem __rel_35 (subject : ByteArray) (state : (Prod Nat (Prod Nat (List ByteArray)))) : _root_.LexLeanPreservation.FunRel __prog 35 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) state)] (_root_.LexLeanPreservation.Rel (__fits_35 subject state) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (LexLeanBoot.Text.lineStep subject state))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (let position : Nat := (state).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (let start : Nat := ((state).2).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl))) (let pieces : (List ByteArray) := ((state).2).2; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl))) (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u8) (fun (__a : (Option UInt8)) => (match __a with | Option.some byte => (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal (byte) ((10 : UInt8)) : Bool) then ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((((Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_18 (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))) && Bool.true) && (__fits_52 ((LexLeanBoot.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))))) && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option UInt8)) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (match __a with | Option.some byte => (if (_root_.LexLeanRuntime.equal (byte) ((10 : UInt8)) : Bool) then (Option.some (((position + (1 : Nat)), ((position + (1 : Nat)), ((LexLeanBoot.Text.chomp ((LexLeanBoot.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat))))) :: pieces)))) : (Option (Prod Nat (Prod Nat (List ByteArray))))) else (Option.some (((position + (1 : Nat)), (start, pieces))) : (Option (Prod Nat (Prod Nat (List ByteArray)))))) | Option.none => (Option.none : (Option (Prod Nat (Prod Nat (List ByteArray))))))) (LexLeanBoot.Text.byteAt (subject) (position)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_51 (subject) (position))) (fun (__a : (Option UInt8)) _ => match __a with | Option.some byte => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((((Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_18 (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))) && Bool.true) && (__fits_52 ((LexLeanBoot.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))))) && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (if __b then (Option.some (((position + (1 : Nat)), ((position + (1 : Nat)), ((LexLeanBoot.Text.chomp ((LexLeanBoot.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat))))) :: pieces)))) : (Option (Prod Nat (Prod Nat (List ByteArray))))) else (Option.some (((position + (1 : Nat)), (start, pieces))) : (Option (Prod Nat (Prod Nat (List ByteArray))))))) (_root_.LexLeanRuntime.equal (byte) ((10 : UInt8)) : Bool) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_u8 byte (10 : UInt8))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub position start)) _root_.LexLeanPreservation.convL_nil))) (__rel_18 (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))) _root_.LexLeanPreservation.convL_nil) (__rel_52 ((LexLeanBoot.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)))))))) - -def __fits_16 (subject : ByteArray) (state : (Prod Nat (Prod Nat (List ByteArray)))) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && (__fits_35 (subject) (state))) - -attribute [local irreducible] LexLeanBoot.Text.lineStep in -theorem __rel_16 (subject : ByteArray) (state : (Prod Nat (Prod Nat (List ByteArray)))) : _root_.LexLeanPreservation.FunRel __prog 16 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) state)] (_root_.LexLeanPreservation.Rel (__fits_16 subject state) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) ((LexLeanBoot.Text.lineStep (subject) (state))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_35 (subject) (state))) - -def __fits_4 (subject : ByteArray) : Bool := - (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (subject) : Nat) 18446744073709551616)) && (let total : Nat := (_root_.LexLeanRuntime.length (subject) : Nat); ((((Bool.true && Bool.true) && (Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : (Prod Nat (Prod Nat (List ByteArray)))) => __fits_16 (subject) __p0) ((fun (state : (Prod Nat (Prod Nat (List ByteArray)))) => (LexLeanBoot.Text.lineStep (subject) (state)))) (total) (((0 : Nat), ((0 : Nat), ([] : List ByteArray)))))) && (let final : (Prod Nat (Prod Nat (List ByteArray))) := ((_root_.LexLeanCollections.iterateUntil ((fun (state : (Prod Nat (Prod Nat (List ByteArray)))) => (LexLeanBoot.Text.lineStep (subject) (state)))) (total) (((0 : Nat), ((0 : Nat), ([] : List ByteArray)))) : (Prod (Prod Nat (Prod Nat (List ByteArray))) Bool))).1; (Bool.true && (let start : Nat := ((final).2).1; (Bool.true && (let pieces : (List ByteArray) := ((final).2).2; (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.blt start total) then ((((((Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_18 (subject) (start) ((_root_.LexLeanRuntime.subtract (total) (start) : Nat)))) && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && (__fits_17 (((LexLeanBoot.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (total) (start) : Nat))) :: pieces)))) else ((Bool.true && Bool.true) && (__fits_17 (pieces))))))))))))) - -attribute [local irreducible] LexLeanBoot.Text.lineStep LexLeanBoot.Text.reverse LexLeanBoot.Text.sliceOr in -theorem __rel_4 (subject : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 4 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject)] (_root_.LexLeanPreservation.Rel (__fits_4 subject) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) (LexLeanBoot.Text.lines subject))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (let total : Nat := (_root_.LexLeanRuntime.length (subject) : Nat); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes subject)) (let final : (Prod Nat (Prod Nat (List ByteArray))) := ((_root_.LexLeanCollections.iterateUntil ((fun (state : (Prod Nat (Prod Nat (List ByteArray)))) => (LexLeanBoot.Text.lineStep (subject) (state)))) (total) (((0 : Nat), ((0 : Nat), ([] : List ByteArray)))) : (Prod (Prod Nat (Prod Nat (List ByteArray))) Bool))).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterateUntil (es := (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (_root_.LexLeanPreservation.optEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (fun _ => rfl) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) ((fun (state : (Prod Nat (Prod Nat (List ByteArray)))) => (LexLeanBoot.Text.lineStep (subject) (state)))) (fun (__p0 : (Prod Nat (Prod Nat (List ByteArray)))) => __fits_16 (subject) __p0) 16 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject)] (fun (__p0 : (Prod Nat (Prod Nat (List ByteArray)))) => __rel_16 (subject) __p0) (_root_.LexLeanCollections.iterateUntil ((fun (state : (Prod Nat (Prod Nat (List ByteArray)))) => (LexLeanBoot.Text.lineStep (subject) (state))))) (fun _ => rfl) (fun _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (p := __prog) (fi := 15) (ts := (.pair .nat (.pair .nat (.list .bytes)))) rfl (total) (((0 : Nat), ((0 : Nat), ([] : List ByteArray))))))) (let start : Nat := ((final).2).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl))) (let pieces : (List ByteArray) := ((final).2).2; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((((Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_18 (subject) (start) ((_root_.LexLeanRuntime.subtract (total) (start) : Nat)))) && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && (__fits_17 (((LexLeanBoot.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (total) (start) : Nat))) :: pieces)))) else ((Bool.true && Bool.true) && (__fits_17 (pieces))))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) (if __b then (LexLeanBoot.Text.reverse (((LexLeanBoot.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (total) (start) : Nat))) :: pieces))) else (LexLeanBoot.Text.reverse (pieces)))) (Nat.blt start total) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt start total)) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub total start)) _root_.LexLeanPreservation.convL_nil))) (__rel_18 (subject) (start) ((_root_.LexLeanRuntime.subtract (total) (start) : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil) (__rel_17 (((LexLeanBoot.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (total) (start) : Nat))) :: pieces))))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_17 (pieces))))))))) - -def __fits_0 (stdout : ByteArray) (expected : (List ByteArray)) : Bool := - ((((Bool.true && ((((Bool.true && Bool.true) && (Bool.true && Bool.true)) && Bool.true) && (((Bool.true && Bool.true) && (__fits_4 (stdout))) && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (LexLeanBoot.AxiomOutput.Scan)) (__p1 : ByteArray) => __fits_3 __p0 __p1) ((fun (state : (LexLeanBoot.AxiomOutput.Scan)) (line : ByteArray) => (LexLeanBoot.AxiomOutput.scanStep (state) (line)))) ((LexLeanBoot.AxiomOutput.Scan.between (([] : List (LexLeanBoot.AxiomOutput.Record))) (expected) : (LexLeanBoot.AxiomOutput.Scan))) ((LexLeanBoot.Text.lines (stdout))))) && (Bool.true && Bool.true)) && (__fits_1 ((_root_.LexLeanCollections.listFold ((fun (state : (LexLeanBoot.AxiomOutput.Scan)) (line : ByteArray) => (LexLeanBoot.AxiomOutput.scanStep (state) (line)))) ((LexLeanBoot.AxiomOutput.Scan.between (([] : List (LexLeanBoot.AxiomOutput.Record))) (expected) : (LexLeanBoot.AxiomOutput.Scan))) ((LexLeanBoot.Text.lines (stdout))) : (LexLeanBoot.AxiomOutput.Scan))) (expected))) - -attribute [local irreducible] LexLeanBoot.AxiomOutput.finish LexLeanBoot.AxiomOutput.scanStep LexLeanBoot.Text.lines in -theorem __rel_0 (stdout : ByteArray) (expected : (List ByteArray)) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes stdout), ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) expected)] (_root_.LexLeanPreservation.Rel (__fits_0 stdout expected) ((_root_.LexLeanPreservation.encExcept __enc_0 (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (LexLeanBoot.AxiomOutput.parseAuditOutput stdout expected))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_adt) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_4 (stdout))) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.bytes) (es := __enc_1) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun _ => rfl) ((fun (state : (LexLeanBoot.AxiomOutput.Scan)) (line : ByteArray) => (LexLeanBoot.AxiomOutput.scanStep (state) (line)))) (fun (__p0 : (LexLeanBoot.AxiomOutput.Scan)) (__p1 : ByteArray) => __fits_3 __p0 __p1) 3 [] (fun (__p0 : (LexLeanBoot.AxiomOutput.Scan)) (__p1 : ByteArray) => __rel_3 __p0 __p1) (p := __prog) (fi := 2) (ta := .bytes) (ts := (.adt 1)) rfl ((LexLeanBoot.AxiomOutput.Scan.between (([] : List (LexLeanBoot.AxiomOutput.Record))) (expected) : (LexLeanBoot.AxiomOutput.Scan))) ((LexLeanBoot.Text.lines (stdout))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_1 ((_root_.LexLeanCollections.listFold ((fun (state : (LexLeanBoot.AxiomOutput.Scan)) (line : ByteArray) => (LexLeanBoot.AxiomOutput.scanStep (state) (line)))) ((LexLeanBoot.AxiomOutput.Scan.between (([] : List (LexLeanBoot.AxiomOutput.Record))) (expected) : (LexLeanBoot.AxiomOutput.Scan))) ((LexLeanBoot.Text.lines (stdout))) : (LexLeanBoot.AxiomOutput.Scan))) (expected))) - -def denote (stdout : ByteArray) (expected : (List ByteArray)) : _root_.LexLeanPreservation.Obs := - _root_.cond (__fits_0 stdout expected) (_root_.LexLeanPreservation.Obs.value (((_root_.LexLeanPreservation.encExcept __enc_0 (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (LexLeanBoot.AxiomOutput.parseAuditOutput stdout expected)))) _root_.LexLeanPreservation.Obs.overflow - -theorem root (stdout : ByteArray) (expected : (List ByteArray)) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes stdout), ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) expected)] (_root_.LexLeanPreservation.Rel (__fits_0 stdout expected) ((_root_.LexLeanPreservation.encExcept __enc_0 (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (LexLeanBoot.AxiomOutput.parseAuditOutput stdout expected))) := - _root_.LexLeanPreservation.run_of_funRel (__rel_0 stdout expected) - -end LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1 diff --git a/bootstrap/expected/verify/preserve/LexLeanPreserve/Cadb40bbfc73b1dc6b7a95dab0c348a27/R1/Compose/RustStd.lex.tex b/bootstrap/expected/verify/preserve/LexLeanPreserve/Cadb40bbfc73b1dc6b7a95dab0c348a27/R1/Compose/RustStd.lex.tex deleted file mode 100644 index 0ae77d850..000000000 --- a/bootstrap/expected/verify/preserve/LexLeanPreserve/Cadb40bbfc73b1dc6b7a95dab0c348a27/R1/Compose/RustStd.lex.tex +++ /dev/null @@ -1,1094 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1, - LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.Compose.RustStd.__wt_0 : @16 := @541 { - all: [LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.Compose.RustStd.__wt_0], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.Compose.RustStd.__wt_2 : @549 := @873 { - all: [LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.Compose.RustStd.__wt_2], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.Compose.RustStd.__wt_1 : @881 := @1454 { - all: [LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.Compose.RustStd.__wt_1], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.Compose.RustStd.root : @2180 := @2181 { - all: [LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.RustStd.program -@1 := LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.RustStd.krate -@2 := LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.RustStd.flags -@3 := LexLeanBoot.AxiomOutput.Rejection -@4 := #0 -@5 := LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.__enc_0 -@6 := @5 @4 -@7 := LexLeanPreservation.Rust.WT -@8 := LexLeanTarget.TargetSyntax.Ty.adt -@9 := 0 -@10 := @8 @9 -@11 := @7 @0 -@12 := @11 @1 -@13 := @12 @2 -@15 := @13 @6 @10 -@16 := (__s : @3) -> @15 -@17 := LexLeanBoot.AxiomOutput.Rejection.message -@18 := @17 @4 -@19 := LexLeanBoot.AxiomOutput.Rejection.declaration -@20 := @19 @4 -@21 := LexLeanTarget.TargetSyntax.Value.bytes -@22 := @21 @18 -@23 := LexLeanTarget.TargetSyntax.Ty.bytes -@24 := LexLeanTarget.TargetSyntax.Program -@25 := LexLeanPreservation.Rust.RCrate -@26 := LexLeanPreservation.Rust.Flags -@27 := ByteArray -@28 := #3 -@29 := @7 @28 -@30 := #2 -@31 := @29 @30 -@32 := #1 -@33 := @31 @32 -@34 := @21 @4 -@40 := {p : @24} -> {c : @25} -> {A : @26} -> (b : @27) -> @33 @34 @23 -@42 := LexLeanPreservation.Rust.wt_bytes @0 -@49 := {c : @25} -> {A : @26} -> (b : @27) -> @11 @30 @32 @34 @23 -@50 := @42 @1 -@55 := {A : @26} -> (b : @27) -> @12 @32 @34 @23 -@56 := @50 @2 -@57 := @13 @34 -@58 := @57 @23 -@59 := (b : @27) -> @58 -@60 := @56 @18 -@62 := @13 @22 @23 -@63 := LexLeanPreservation.encOption -@64 := @63 @27 -@65 := @64 @21 -@66 := @65 @20 -@67 := LexLeanTarget.TargetSyntax.Ty.option -@68 := @67 @23 -@70 := fun (__x : @27) => @56 @4 -@71 := Sort 1 -@72 := LexLeanTarget.TargetSyntax.Value -@73 := (a._@._internal._hyg.#0 : @4) -> @72 -@74 := LexLeanTarget.TargetSyntax.Ty -@75 := #6 -@76 := @7 @75 -@77 := #5 -@78 := @76 @77 -@79 := #4 -@80 := @78 @79 -@81 := @30 @4 -@84 := (x : @30) -> @80 @81 @32 -@85 := Option.{0} -@86 := @85 @28 -@87 := #7 -@90 := @7 @87 @75 @77 -@93 := @63 @79 @28 @4 -@94 := @90 @93 -@95 := @67 @30 -@104 := {p : @24} -> - {c : @25} -> {A : @26} -> {α : @71} -> {e : @73} -> {t : @74} -> (h : @84) -> (o : @86) -> @94 @95 -@106 := LexLeanPreservation.Rust.wt_encOption @0 -@108 := @11 @77 @79 -@111 := (x : @30) -> @108 @81 @32 -@113 := @11 @75 @77 -@122 := {c : @25} -> - {A : @26} -> {α : @71} -> {e : @73} -> {t : @74} -> (h : @111) -> (o : @86) -> @113 @93 @95 -@123 := @106 @1 -@124 := @12 @79 -@127 := (x : @30) -> @124 @81 @32 -@128 := @12 @77 -@136 := {A : @26} -> {α : @71} -> {e : @73} -> {t : @74} -> (h : @127) -> (o : @86) -> @128 @93 @95 -@137 := @123 @2 -@139 := @13 @81 @32 -@140 := (x : @30) -> @139 -@147 := {α : @71} -> {e : @73} -> {t : @74} -> (h : @140) -> (o : @86) -> @13 @93 @95 -@148 := @137 @27 -@149 := (a._@._internal._hyg.#0 : @27) -> @72 -@150 := (x : @27) -> @139 -@151 := @85 @27 -@159 := {e : @149} -> {t : @74} -> (h : @150) -> (o : @151) -> @13 (@64 @28 @4) @95 -@160 := @148 @21 -@162 := (x : @27) -> @57 @32 -@163 := @65 @4 -@164 := @13 @163 -@168 := {t : @74} -> (h : @162) -> (o : @151) -> @164 @95 -@169 := @160 @23 -@170 := (x : @27) -> @58 -@171 := @164 @68 -@173 := (h : @170) -> (o : @151) -> @171 -@174 := @169 @70 -@175 := @174 @20 -@177 := @13 @66 @68 -@178 := List.nil.{0} -@179 := List.cons.{0} -@180 := @178 @72 -@181 := @179 @72 -@183 := @181 @66 @180 -@185 := @181 @22 @183 -@186 := @178 @74 -@187 := @179 @74 -@188 := @187 @68 -@189 := @188 @186 -@190 := @187 @23 -@191 := @190 @189 -@192 := LexLeanPreservation.Rust.WTL -@200 := {p : @24} -> {c : @25} -> {A : @26} -> @192 @30 @32 @4 @180 @186 -@202 := LexLeanPreservation.Rust.wtl_nil @0 -@203 := @192 @0 -@209 := {c : @25} -> {A : @26} -> @203 @32 @4 @180 @186 -@210 := @202 @1 -@211 := @203 @1 -@215 := {A : @26} -> @211 @4 @180 @186 -@216 := @210 @2 -@217 := @211 @2 -@218 := @217 @180 -@219 := @218 @186 -@220 := List.{0} -@221 := @220 @72 -@222 := @220 @74 -@224 := @80 @28 @30 -@229 := @192 @87 @75 @77 @30 @32 -@230 := #8 -@233 := @192 @230 @87 @75 -@235 := @181 @77 @28 -@236 := @233 @235 -@238 := @187 @79 @30 -@248 := {p : @24} -> - {c : @25} -> - {A : @26} -> - {v : @72} -> {t : @74} -> {vs : @221} -> {ts : @222} -> (h : @224) -> (hs : @229) -> @236 @238 -@250 := LexLeanPreservation.Rust.wtl_cons @0 -@252 := @108 @28 @30 -@256 := @203 @75 @77 @30 @32 -@268 := {c : @25} -> - {A : @26} -> - {v : @72} -> - {t : @74} -> {vs : @221} -> {ts : @222} -> (h : @252) -> (hs : @256) -> @203 @87 @75 @235 @238 -@269 := @250 @1 -@271 := @124 @28 @30 -@274 := @211 @77 @30 @32 -@284 := {A : @26} -> - {v : @72} -> - {t : @74} -> {vs : @221} -> {ts : @222} -> (h : @271) -> (hs : @274) -> @211 @75 @235 @238 -@285 := @269 @2 -@287 := @13 @28 @30 -@289 := @217 @30 @32 -@297 := {v : @72} -> - {t : @74} -> {vs : @221} -> {ts : @222} -> (h : @287) -> (hs : @289) -> @217 @235 @238 -@298 := @285 @66 -@300 := @65 (@19 @28) -@313 := {t : @74} -> - {vs : @221} -> - {ts : @222} -> (h : @13 @300 @30) -> (hs : @289) -> @217 (@181 (@65 (@19 @77)) @28) @238 -@314 := @298 @68 -@316 := @65 (@19 @30) -@318 := @13 @316 @68 -@323 := @217 (@181 (@65 (@19 @79)) @28) -@324 := @188 @30 -@329 := {vs : @221} -> {ts : @222} -> (h : @318) -> (hs : @289) -> @323 @324 -@330 := @314 @180 -@332 := @65 (@19 @32) -@334 := @13 @332 @68 -@335 := @218 @32 -@337 := @181 @300 @180 -@342 := {ts : @222} -> (h : @334) -> (hs : @335) -> @217 @337 @324 -@343 := @330 @186 -@345 := @181 @316 @180 -@346 := @217 @345 -@349 := (h : @177) -> (hs : @219) -> @346 @189 -@350 := @343 @175 -@352 := @181 @332 @180 -@354 := @217 @352 @189 -@355 := (hs : @219) -> @354 -@356 := @350 @216 -@358 := @217 @183 @189 -@359 := @285 @22 -@361 := @21 (@17 @28) -@374 := {t : @74} -> - {vs : @221} -> - {ts : @222} -> (h : @13 @361 @30) -> (hs : @289) -> @217 (@181 (@21 (@17 @77)) @28) @238 -@375 := @359 @23 -@377 := @21 (@17 @30) -@379 := @13 @377 @23 -@384 := @217 (@181 (@21 (@17 @79)) @28) -@385 := @190 @30 -@390 := {vs : @221} -> {ts : @222} -> (h : @379) -> (hs : @289) -> @384 @385 -@391 := @375 @183 -@393 := @21 (@17 @32) -@395 := @13 @393 @23 -@396 := @346 @32 -@398 := @181 @361 @337 -@403 := {ts : @222} -> (h : @395) -> (hs : @396) -> @217 @398 @385 -@404 := @391 @189 -@406 := @181 @377 @345 -@407 := @217 @406 -@410 := (h : @62) -> (hs : @354) -> @407 @191 -@411 := @404 @60 -@413 := @181 @393 @352 -@415 := @217 @413 @191 -@416 := (hs : @358) -> @415 -@417 := @411 @356 -@419 := @217 @185 @191 -@420 := Nat -@421 := Eq.{1} -@422 := @85 @222 -@423 := @421 @422 -@424 := LexLeanPreservation.Rust.adtFields -@428 := @423 (@424 @75 @28 @30) -@429 := Option.some.{0} -@430 := @429 @222 -@431 := @430 @4 -@432 := @428 @431 -@435 := @7 @230 @87 @75 -@436 := LexLeanTarget.TargetSyntax.Value.adt -@438 := @436 @79 @28 -@439 := @435 @438 -@440 := @8 @77 -@450 := {p : @24} -> - {c : @25} -> - {A : @26} -> - {i : @420} -> {k : @420} -> {fs : @221} -> {tys : @222} -> (h : @432) -> (hf : @229) -> @439 @440 -@452 := LexLeanPreservation.Rust.wt_adt @0 -@453 := @424 @0 -@457 := @423 (@453 @28 @30) @431 -@469 := {c : @25} -> - {A : @26} -> - {i : @420} -> - {k : @420} -> {fs : @221} -> {tys : @222} -> (h : @457) -> (hf : @256) -> @11 @87 @75 @438 @440 -@470 := @452 @1 -@480 := {A : @26} -> - {i : @420} -> - {k : @420} -> {fs : @221} -> {tys : @222} -> (h : @457) -> (hf : @274) -> @12 @75 @438 @440 -@481 := @470 @2 -@482 := @13 @438 -@489 := {i : @420} -> - {k : @420} -> {fs : @221} -> {tys : @222} -> (h : @457) -> (hf : @289) -> @482 @440 -@490 := @481 @9 -@491 := @453 @9 -@500 := {k : @420} -> - {fs : @221} -> {tys : @222} -> (h : @423 (@491 @30) @431) -> (hf : @289) -> @482 @10 -@501 := @490 @9 -@502 := @491 @9 -@503 := @423 @502 -@504 := @503 @431 -@505 := @436 @9 -@507 := @13 (@505 @28) -@512 := {fs : @221} -> {tys : @222} -> (h : @504) -> (hf : @289) -> @507 @10 -@513 := @501 @185 -@520 := {tys : @222} -> (h : @504) -> (hf : @407 @32) -> @13 (@505 @398) @10 -@521 := @513 @191 -@528 := (h : @503 (@430 @191)) -> (hf : @415) -> @13 (@505 @406) @10 -@529 := Eq.refl.{1} -@530 := @529 @422 -@532 := @521 (@530 @502) -@536 := (hf : @419) -> @13 (@505 @413) @10 -@537 := @532 @417 -@540 := @13 (@505 @185) @10 -@541 := fun (__s : @3) => @537 -@542 := LexLeanBoot.AxiomOutput.Record -@543 := LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.__enc_2 -@544 := @543 @4 -@545 := 2 -@546 := @8 @545 -@547 := @13 @544 -@548 := @547 @546 -@549 := (__s : @542) -> @548 -@550 := LexLeanBoot.AxiomOutput.Record.declaration -@551 := @550 @4 -@552 := LexLeanBoot.AxiomOutput.Record.axioms -@553 := @552 @4 -@554 := LexLeanBoot.AxiomOutput.Record.expected -@555 := @554 @4 -@556 := @21 @551 -@557 := @56 @551 -@559 := @13 @556 @23 -@560 := LexLeanPreservation.encList -@561 := @560 @27 -@562 := @561 @21 -@563 := @562 @553 -@564 := LexLeanTarget.TargetSyntax.Ty.list -@565 := @564 @23 -@566 := @220 @28 -@569 := @560 @79 @28 @4 -@570 := @90 @569 -@571 := @564 @30 -@580 := {p : @24} -> - {c : @25} -> - {A : @26} -> {α : @71} -> {e : @73} -> {t : @74} -> (h : @84) -> (xs : @566) -> @570 @571 -@582 := LexLeanPreservation.Rust.wt_encList @0 -@591 := {c : @25} -> - {A : @26} -> {α : @71} -> {e : @73} -> {t : @74} -> (h : @111) -> (xs : @566) -> @113 @569 @571 -@592 := @582 @1 -@600 := {A : @26} -> - {α : @71} -> {e : @73} -> {t : @74} -> (h : @127) -> (xs : @566) -> @128 @569 @571 -@601 := @592 @2 -@608 := {α : @71} -> {e : @73} -> {t : @74} -> (h : @140) -> (xs : @566) -> @13 @569 @571 -@609 := @601 @27 -@610 := @220 @27 -@618 := {e : @149} -> {t : @74} -> (h : @150) -> (xs : @610) -> @13 (@561 @28 @4) @571 -@619 := @609 @21 -@620 := @562 @4 -@621 := @13 @620 -@625 := {t : @74} -> (h : @162) -> (xs : @610) -> @621 @571 -@626 := @619 @23 -@627 := @621 @565 -@629 := (h : @170) -> (xs : @610) -> @627 -@630 := @626 @70 -@631 := @630 @553 -@633 := @13 @563 @565 -@634 := @65 @555 -@635 := @174 @555 -@637 := @13 @634 @68 -@639 := @181 @634 @180 -@641 := @181 @563 @639 -@643 := @181 @556 @641 -@644 := @187 @565 -@645 := @644 @189 -@646 := @190 @645 -@647 := @285 @634 -@649 := @65 (@554 @28) -@662 := {t : @74} -> - {vs : @221} -> - {ts : @222} -> (h : @13 @649 @30) -> (hs : @289) -> @217 (@181 (@65 (@554 @77)) @28) @238 -@663 := @647 @68 -@665 := @65 (@554 @30) -@677 := {vs : @221} -> - {ts : @222} -> (h : @13 @665 @68) -> (hs : @289) -> @217 (@181 (@65 (@554 @79)) @28) @324 -@678 := @663 @180 -@680 := @65 (@554 @32) -@682 := @13 @680 @68 -@684 := @181 @649 @180 -@689 := {ts : @222} -> (h : @682) -> (hs : @335) -> @217 @684 @324 -@690 := @678 @186 -@692 := @181 @665 @180 -@693 := @217 @692 -@696 := (h : @637) -> (hs : @219) -> @693 @189 -@697 := @690 @635 -@699 := @181 @680 @180 -@701 := @217 @699 @189 -@702 := (hs : @219) -> @701 -@703 := @697 @216 -@705 := @217 @639 @189 -@706 := @285 @563 -@708 := @562 (@552 @28) -@721 := {t : @74} -> - {vs : @221} -> - {ts : @222} -> (h : @13 @708 @30) -> (hs : @289) -> @217 (@181 (@562 (@552 @77)) @28) @238 -@722 := @706 @565 -@724 := @562 (@552 @30) -@726 := @13 @724 @565 -@731 := @217 (@181 (@562 (@552 @79)) @28) -@732 := @644 @30 -@737 := {vs : @221} -> {ts : @222} -> (h : @726) -> (hs : @289) -> @731 @732 -@738 := @722 @639 -@740 := @562 (@552 @32) -@742 := @13 @740 @565 -@743 := @693 @32 -@745 := @181 @708 @684 -@750 := {ts : @222} -> (h : @742) -> (hs : @743) -> @217 @745 @732 -@751 := @738 @189 -@753 := @181 @724 @692 -@754 := @217 @753 -@757 := (h : @633) -> (hs : @701) -> @754 @645 -@758 := @751 @631 -@760 := @181 @740 @699 -@762 := @217 @760 @645 -@763 := (hs : @705) -> @762 -@764 := @758 @703 -@766 := @217 @641 @645 -@767 := @285 @556 -@769 := @21 (@550 @28) -@782 := {t : @74} -> - {vs : @221} -> - {ts : @222} -> (h : @13 @769 @30) -> (hs : @289) -> @217 (@181 (@21 (@550 @77)) @28) @238 -@783 := @767 @23 -@785 := @21 (@550 @30) -@797 := {vs : @221} -> - {ts : @222} -> (h : @13 @785 @23) -> (hs : @289) -> @217 (@181 (@21 (@550 @79)) @28) @385 -@798 := @783 @641 -@800 := @21 (@550 @32) -@802 := @13 @800 @23 -@803 := @754 @32 -@805 := @181 @769 @745 -@810 := {ts : @222} -> (h : @802) -> (hs : @803) -> @217 @805 @385 -@811 := @798 @645 -@813 := @181 @785 @753 -@814 := @217 @813 -@817 := (h : @559) -> (hs : @762) -> @814 @646 -@818 := @811 @557 -@820 := @181 @800 @760 -@822 := @217 @820 @646 -@823 := (hs : @766) -> @822 -@824 := @818 @764 -@826 := @217 @643 @646 -@827 := @481 @545 -@828 := @453 @545 -@837 := {k : @420} -> - {fs : @221} -> {tys : @222} -> (h : @423 (@828 @30) @431) -> (hf : @289) -> @482 @546 -@838 := @827 @9 -@839 := @828 @9 -@840 := @423 @839 -@841 := @840 @431 -@846 := {fs : @221} -> {tys : @222} -> (h : @841) -> (hf : @289) -> @507 @546 -@847 := @838 @643 -@854 := {tys : @222} -> (h : @841) -> (hf : @814 @32) -> @13 (@505 @805) @546 -@855 := @847 @646 -@862 := (h : @840 (@430 @646)) -> (hf : @822) -> @13 (@505 @813) @546 -@864 := @855 (@530 @839) -@868 := (hf : @826) -> @13 (@505 @820) @546 -@869 := @864 @824 -@872 := @13 (@505 @643) @546 -@873 := fun (__s : @542) => @869 -@874 := LexLeanBoot.AxiomOutput.Scan -@876 := LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.__enc_1 @4 -@877 := 1 -@878 := @8 @877 -@880 := @13 @876 @878 -@881 := (__v : @874) -> @880 -@882 := fun (__v : @874) => @880 -@883 := @560 @542 -@884 := @883 @543 -@885 := @884 @32 -@886 := @564 @546 -@889 := fun (__x : @542) => - LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.Compose.RustStd.__wt_2 @4 -@890 := @601 @542 -@891 := (a._@._internal._hyg.#0 : @542) -> @72 -@892 := (x : @542) -> @139 -@893 := @220 @542 -@901 := {e : @891} -> {t : @74} -> (h : @892) -> (xs : @893) -> @13 (@883 @28 @4) @571 -@902 := @890 @543 -@904 := (x : @542) -> @547 @32 -@906 := @13 (@884 @4) -@910 := {t : @74} -> (h : @904) -> (xs : @893) -> @906 @571 -@911 := @902 @546 -@915 := (h : (x : @542) -> @548) -> (xs : @893) -> @906 @886 -@916 := @911 @889 -@917 := @916 @32 -@919 := @13 @885 @886 -@920 := @630 @4 -@922 := @181 @620 @180 -@924 := @181 @885 @922 -@925 := @644 @186 -@926 := @187 @886 -@927 := @926 @925 -@928 := @285 @620 -@929 := @562 @28 -@930 := @13 @929 -@931 := @930 @30 -@932 := @562 @77 -@933 := @181 @932 -@935 := @217 (@933 @28) -@941 := {t : @74} -> {vs : @221} -> {ts : @222} -> (h : @931) -> (hs : @289) -> @935 @238 -@942 := @928 @565 -@943 := @562 @30 -@945 := @13 @943 @565 -@946 := @562 @79 -@947 := @181 @946 -@954 := {vs : @221} -> {ts : @222} -> (h : @945) -> (hs : @289) -> @217 (@947 @28) @732 -@955 := @942 @180 -@956 := @562 @32 -@958 := @13 @956 @565 -@959 := @181 @929 -@960 := @959 @180 -@961 := @217 @960 -@965 := {ts : @222} -> (h : @958) -> (hs : @335) -> @961 @732 -@966 := @955 @186 -@967 := @181 @943 -@968 := @967 @180 -@969 := @217 @968 -@970 := @969 @925 -@972 := (h : @627) -> (hs : @219) -> @970 -@973 := @966 @920 -@975 := @181 @956 @180 -@977 := @217 @975 @925 -@978 := (hs : @219) -> @977 -@979 := @973 @216 -@981 := @217 @922 @925 -@982 := @285 @885 -@983 := @884 @79 -@984 := @13 @983 -@985 := @984 @30 -@986 := @884 @75 -@987 := @181 @986 -@995 := {t : @74} -> {vs : @221} -> {ts : @222} -> (h : @985) -> (hs : @289) -> @217 (@987 @28) @238 -@996 := @982 @886 -@997 := @884 @28 -@999 := @13 @997 @886 -@1000 := @884 @77 -@1001 := @181 @1000 -@1003 := @217 (@1001 @28) -@1004 := @926 @30 -@1009 := {vs : @221} -> {ts : @222} -> (h : @999) -> (hs : @289) -> @1003 @1004 -@1010 := @996 @922 -@1011 := @884 @30 -@1013 := @13 @1011 @886 -@1014 := @969 @32 -@1015 := @181 @983 -@1016 := @1015 @960 -@1021 := {ts : @222} -> (h : @1013) -> (hs : @1014) -> @217 @1016 @1004 -@1022 := @1010 @925 -@1023 := @181 @997 -@1024 := @1023 @968 -@1025 := @217 @1024 -@1028 := (h : @919) -> (hs : @977) -> @1025 @927 -@1029 := @1022 @917 -@1031 := @181 @1011 @975 -@1033 := @217 @1031 @927 -@1034 := (hs : @981) -> @1033 -@1035 := @1029 @979 -@1037 := @217 @924 @927 -@1038 := @481 @877 -@1039 := @453 @877 -@1048 := {k : @420} -> - {fs : @221} -> {tys : @222} -> (h : @423 (@1039 @30) @431) -> (hf : @289) -> @482 @878 -@1049 := @1038 @9 -@1050 := @1039 @9 -@1051 := @423 @1050 -@1052 := @1051 @431 -@1057 := {fs : @221} -> {tys : @222} -> (h : @1052) -> (hf : @289) -> @507 @878 -@1058 := @1049 @924 -@1065 := {tys : @222} -> (h : @1052) -> (hf : @1025 @32) -> @13 (@505 @1016) @878 -@1066 := @1058 @927 -@1073 := (h : @1051 (@430 @927)) -> (hf : @1033) -> @13 (@505 @1024) @878 -@1075 := @1066 (@530 @1050) -@1079 := (hf : @1037) -> @13 (@505 @1031) @878 -@1080 := @1075 @1035 -@1083 := @13 (@505 @924) @878 -@1085 := fun (__x0 : @893) => fun (__x1 : @610) => @1080 -@1086 := @916 @28 -@1087 := @630 @30 -@1088 := @21 @32 -@1089 := @56 @32 -@1091 := @13 @1088 @23 -@1092 := @174 @4 -@1094 := @181 @163 @180 -@1095 := @181 @1088 -@1096 := @1095 @1094 -@1097 := @967 @1096 -@1098 := @1023 @1097 -@1099 := @644 @191 -@1100 := @926 @1099 -@1101 := @285 @163 -@1102 := @65 @28 -@1114 := {t : @74} -> - {vs : @221} -> {ts : @222} -> (h : @13 @1102 @30) -> (hs : @289) -> @217 (@181 (@65 @77) @28) @238 -@1115 := @1101 @68 -@1116 := @65 @30 -@1127 := {vs : @221} -> - {ts : @222} -> (h : @13 @1116 @68) -> (hs : @289) -> @217 (@181 (@65 @79) @28) @324 -@1128 := @1115 @180 -@1129 := @65 @32 -@1131 := @13 @1129 @68 -@1133 := @181 @1102 @180 -@1138 := {ts : @222} -> (h : @1131) -> (hs : @335) -> @217 @1133 @324 -@1139 := @1128 @186 -@1141 := @181 @1116 @180 -@1142 := @217 @1141 -@1145 := (h : @171) -> (hs : @219) -> @1142 @189 -@1146 := @1139 @1092 -@1148 := @181 @1129 @180 -@1150 := @217 @1148 @189 -@1151 := (hs : @219) -> @1150 -@1152 := @1146 @216 -@1154 := @217 @1094 @189 -@1155 := @285 @1088 -@1156 := @21 @79 -@1157 := @13 @1156 -@1158 := @1157 @30 -@1159 := @21 @75 -@1160 := @181 @1159 -@1162 := @217 (@1160 @28) -@1168 := {t : @74} -> {vs : @221} -> {ts : @222} -> (h : @1158) -> (hs : @289) -> @1162 @238 -@1169 := @1155 @23 -@1170 := @21 @28 -@1172 := @13 @1170 @23 -@1173 := @21 @77 -@1174 := @181 @1173 -@1181 := {vs : @221} -> {ts : @222} -> (h : @1172) -> (hs : @289) -> @217 (@1174 @28) @385 -@1182 := @1169 @1094 -@1183 := @21 @30 -@1185 := @13 @1183 @23 -@1186 := @1142 @32 -@1187 := @181 @1156 -@1188 := @1187 @1133 -@1193 := {ts : @222} -> (h : @1185) -> (hs : @1186) -> @217 @1188 @385 -@1194 := @1182 @189 -@1195 := @181 @1170 -@1196 := @1195 @1141 -@1197 := @217 @1196 -@1200 := (h : @1091) -> (hs : @1150) -> @1197 @191 -@1201 := @1194 @1089 -@1202 := @181 @1183 -@1203 := @1202 @1148 -@1205 := @217 @1203 @191 -@1206 := (hs : @1154) -> @1205 -@1207 := @1201 @1152 -@1209 := @217 @1096 @191 -@1210 := @285 @943 -@1212 := @13 @932 @30 -@1214 := @181 (@562 @87) -@1222 := {t : @74} -> - {vs : @221} -> {ts : @222} -> (h : @1212) -> (hs : @289) -> @217 (@1214 @28) @238 -@1223 := @1210 @565 -@1224 := @13 @946 -@1225 := @1224 @565 -@1226 := @562 @75 -@1227 := @181 @1226 -@1229 := @217 (@1227 @28) -@1234 := {vs : @221} -> {ts : @222} -> (h : @1225) -> (hs : @289) -> @1229 @732 -@1235 := @1223 @1096 -@1236 := @930 @565 -@1237 := @1197 @32 -@1238 := @933 @1188 -@1243 := {ts : @222} -> (h : @1236) -> (hs : @1237) -> @217 @1238 @732 -@1244 := @1235 @191 -@1245 := @947 @1196 -@1246 := @217 @1245 -@1249 := (h : @945) -> (hs : @1205) -> @1246 @1099 -@1250 := @1244 @1087 -@1251 := @959 @1203 -@1253 := @217 @1251 @1099 -@1254 := (hs : @1209) -> @1253 -@1255 := @1250 @1207 -@1257 := @217 @1097 @1099 -@1258 := @285 @997 -@1270 := {t : @74} -> - {vs : @221} -> - {ts : @222} -> (h : @13 @986 @30) -> (hs : @289) -> @217 (@181 (@884 @230) @28) @238 -@1271 := @1258 @886 -@1282 := {vs : @221} -> - {ts : @222} -> (h : @13 @1000 @886) -> (hs : @289) -> @217 (@181 (@884 @87) @28) @1004 -@1283 := @1271 @1097 -@1284 := @984 @886 -@1285 := @1246 @32 -@1286 := @987 @1238 -@1291 := {ts : @222} -> (h : @1284) -> (hs : @1285) -> @217 @1286 @1004 -@1292 := @1283 @1099 -@1293 := @1001 @1245 -@1294 := @217 @1293 -@1297 := (h : @999) -> (hs : @1253) -> @1294 @1100 -@1298 := @1292 @1086 -@1299 := @1015 @1251 -@1301 := @217 @1299 @1100 -@1302 := (hs : @1257) -> @1301 -@1303 := @1298 @1255 -@1305 := @217 @1098 @1100 -@1306 := @1038 @877 -@1307 := @1039 @877 -@1308 := @423 @1307 -@1309 := @1308 @431 -@1310 := @436 @877 -@1317 := {fs : @221} -> {tys : @222} -> (h : @1309) -> (hf : @289) -> @13 (@1310 @28) @878 -@1318 := @1306 @1098 -@1325 := {tys : @222} -> (h : @1309) -> (hf : @1294 @32) -> @13 (@1310 @1286) @878 -@1326 := @1318 @1100 -@1333 := (h : @1308 (@430 @1100)) -> (hf : @1301) -> @13 (@1310 @1293) @878 -@1335 := @1326 (@530 @1307) -@1339 := (hf : @1305) -> @13 (@1310 @1299) @878 -@1340 := @1335 @1303 -@1343 := @13 (@1310 @1098) @878 -@1347 := fun (__x0 : @893) => fun (__x1 : @610) => fun (__x2 : @27) => fun (__x3 : @151) => @1340 -@1349 := LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.Compose.RustStd.__wt_0 @4 -@1351 := @181 @6 @180 -@1352 := @187 @10 -@1353 := @1352 @186 -@1354 := @285 @6 -@1355 := @5 @28 -@1367 := {t : @74} -> - {vs : @221} -> {ts : @222} -> (h : @13 @1355 @30) -> (hs : @289) -> @217 (@181 (@5 @77) @28) @238 -@1368 := @1354 @10 -@1369 := @5 @30 -@1371 := @13 @1369 @10 -@1375 := @217 (@181 (@5 @79) @28) -@1376 := @1352 @30 -@1381 := {vs : @221} -> {ts : @222} -> (h : @1371) -> (hs : @289) -> @1375 @1376 -@1382 := @1368 @180 -@1383 := @5 @32 -@1385 := @13 @1383 @10 -@1387 := @181 @1355 @180 -@1392 := {ts : @222} -> (h : @1385) -> (hs : @335) -> @217 @1387 @1376 -@1393 := @1382 @186 -@1395 := @181 @1369 @180 -@1396 := @217 @1395 -@1399 := (h : @15) -> (hs : @219) -> @1396 @1353 -@1400 := @1393 @1349 -@1402 := @181 @1383 @180 -@1404 := @217 @1402 @1353 -@1405 := (hs : @219) -> @1404 -@1406 := @1400 @216 -@1408 := @217 @1351 @1353 -@1409 := @1038 @545 -@1410 := @1039 @545 -@1411 := @423 @1410 -@1412 := @1411 @431 -@1413 := @436 @545 -@1420 := {fs : @221} -> {tys : @222} -> (h : @1412) -> (hf : @289) -> @13 (@1413 @28) @878 -@1421 := @1409 @1351 -@1428 := {tys : @222} -> (h : @1412) -> (hf : @1396 @32) -> @13 (@1413 @1387) @878 -@1429 := @1421 @1353 -@1436 := (h : @1411 (@430 @1353)) -> (hf : @1404) -> @13 (@1413 @1395) @878 -@1438 := @1429 (@530 @1410) -@1442 := (hf : @1408) -> @13 (@1413 @1402) @878 -@1443 := @1438 @1406 -@1446 := @13 (@1413 @1351) @878 -@1447 := fun (__x0 : @3) => @1443 -@1454 := fun (__v : @874) => LexLeanBoot.AxiomOutput.Scan.casesOn.{0} @882 @4 @1085 @1347 @1447 -@1455 := @56 @30 -@1456 := @630 @32 -@1457 := @1202 @975 -@1458 := Prod.{0, 0} -@1460 := @1458 @420 @72 -@1463 := Prod.mk.{0, 0} @420 @72 -@1464 := @1463 @877 -@1465 := @1464 @956 -@1466 := @1463 @9 -@1467 := @1466 @1183 -@1468 := @178 @1460 -@1469 := @179 @1460 -@1471 := @1469 @1467 @1468 -@1473 := @1469 @1465 @1471 -@1474 := Bool.true -@1475 := LexLeanTarget.TargetSyntax.Function -@1476 := LexLeanTarget.TargetSyntax.Program.functions -@1477 := @1476 @0 -@1478 := @178 @420 -@1479 := LexLeanTarget.TargetSyntax.Ty.unit -@1480 := LexLeanTarget.TargetSyntax.Value.unit -@1483 := LexLeanTarget.TargetSyntax.Expr.value @1479 @1480 -@1488 := LexLeanTarget.TargetSyntax.Function.mk @1478 @186 @1479 @1483 -@1493 := List.getD.{0} @1475 @1477 @9 @1488 -@1497 := fun (__e_n : @420) => - LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.RustStd.root @4 @9 -@1498 := @285 @956 -@1505 := {t : @74} -> {vs : @221} -> {ts : @222} -> (h : @1224 @30) -> (hs : @289) -> @1229 @238 -@1506 := @1498 @565 -@1511 := {vs : @221} -> {ts : @222} -> (h : @1236) -> (hs : @289) -> @935 @732 -@1512 := @1506 @180 -@1513 := @947 @180 -@1518 := {ts : @222} -> (h : @945) -> (hs : @335) -> @217 @1513 @732 -@1519 := @1512 @186 -@1522 := (h : @958) -> (hs : @219) -> @961 @925 -@1524 := @1519 @1456 @216 -@1525 := @285 @1183 -@1527 := @13 @1173 @30 -@1528 := @21 @87 -@1529 := @181 @1528 -@1537 := {t : @74} -> - {vs : @221} -> {ts : @222} -> (h : @1527) -> (hs : @289) -> @217 (@1529 @28) @238 -@1538 := @1525 @23 -@1544 := {vs : @221} -> {ts : @222} -> (h : @1157 @23) -> (hs : @289) -> @1162 @385 -@1545 := @1538 @975 -@1546 := @961 @32 -@1547 := @1174 @1513 -@1548 := @217 @1547 -@1552 := {ts : @222} -> (h : @1172) -> (hs : @1546) -> @1548 @385 -@1553 := @1545 @925 -@1554 := @1187 @960 -@1555 := @217 @1554 -@1556 := @190 @925 -@1559 := (h : @1185) -> (hs : @970) -> @1555 @1556 -@1560 := @1553 @1455 -@1561 := @1195 @968 -@1562 := @217 @1561 -@1564 := (hs : @977) -> @1562 @1556 -@1565 := @1560 @1524 -@1566 := @217 @1457 -@1567 := @1566 @1556 -@1568 := LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.denote -@1570 := @1568 @30 @32 -@1571 := LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.__fits_0 -@1573 := @1571 @30 @32 -@1576 := LexLeanBoot.AxiomOutput.parseAuditOutput @30 @32 -@1578 := @1458 @27 @610 -@1579 := @220 @1578 -@1584 := LexLeanPreservation.encPair @27 @610 @21 @562 -@1586 := @560 @1578 @1584 -@1592 := LexLeanPreservation.encExcept @3 @1579 @5 @1586 @1576 -@1595 := LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.root @30 @32 -@1596 := Bool -@1597 := Ne.{1} -@1598 := LexLeanPreservation.Obs -@1599 := @1597 @1598 -@1600 := LexLeanPreservation.Rel -@1603 := @1599 (@1600 @32 @4) -@1604 := LexLeanPreservation.Obs.stuck -@1607 := (f : @1596) -> (v : @72) -> @1603 @1604 -@1609 := LexLeanPreservation.Rust.rel_ne_stuck @1573 -@1616 := (v : @72) -> @1599 (@1600 (@1571 @28 @30) @4) @1604 -@1617 := @1609 @1592 -@1621 := @1599 (@1600 @1573 @1592) @1604 -@1622 := @220 @1460 -@1623 := LexLeanPreservation.Rust.FunSem -@1624 := #9 -@1630 := (n : @420) -> @1623 @1624 @230 @87 @4 @75 -@1631 := @85 @1475 -@1632 := @421 @1631 -@1639 := LexLeanRuntime.index (@220 @1475) @1475 (LexLeanRuntime.instIndexableList @1475) -@1643 := @1632 (@1639 (@1476 @1624) @75) -@1644 := @429 @1475 -@1645 := @1644 @77 -@1646 := @1643 @1645 -@1647 := #10 -@1651 := @192 @1647 @1624 @230 @77 -@1652 := LexLeanTarget.TargetSyntax.Function.types -@1653 := @1652 @75 -@1654 := @1651 @1653 -@1655 := @85 @1622 -@1656 := @421 @1655 -@1657 := LexLeanTarget.TargetSemantics.bindAll -@1658 := LexLeanTarget.TargetSyntax.Function.parameters -@1663 := @1656 (@1657 (@1658 @87) @75 @1468) -@1664 := @429 @1622 -@1665 := @1664 @77 -@1666 := @1663 @1665 -@1667 := @85 @1596 -@1668 := @421 @1667 -@1669 := LexLeanPreservation.Rust.fnFallible -@1670 := #11 -@1673 := @1668 (@1669 @1670 @1624) -@1674 := @429 @1596 -@1675 := @1674 @77 -@1676 := @1673 @1675 -@1677 := LexLeanPreservation.RunConv -@1678 := #13 -@1682 := @1677 @1678 @1647 @230 @77 -@1684 := @1599 @75 @1604 -@1685 := Exists.{1} -@1686 := LexLeanPreservation.Rust.ROut -@1687 := @1685 @1686 -@1688 := And -@1689 := LexLeanPreservation.Rust.RealizesFn -@1693 := @1688 (@1689 @1624 @230 @4) -@1694 := LexLeanPreservation.Rust.RCI -@1696 := @1694 #15 -@1697 := LexLeanPreservation.Rust.fnIdent -@1698 := @1697 @1678 -@1705 := (hne : @1684) -> @1687 (fun (ro : @1686) => @1693 (@1696 @1698 @1670 @4)) -@1720 := {p : @24} -> - {c : @25} -> - {A : @26} -> - {f : @420} -> - {fn : @1475} -> - {args : @221} -> - {env : @1622} -> - {F : @1596} -> - {o : @1598} -> - (hB : @1630) -> - (hfn : @1646) -> (hwt : @1654) -> (hbind : @1666) -> (hF : @1676) -> (hA : @1682) -> @1705 -@1722 := LexLeanPreservation.Rust.compose @0 -@1723 := @1623 @0 -@1728 := (n : @420) -> @1723 @230 @87 @4 @75 -@1729 := @1639 @1477 -@1732 := @1632 (@1729 @75) @1645 -@1736 := @203 @1624 @230 @77 @1653 -@1737 := @1677 @0 -@1740 := @1737 @1647 @230 @77 -@1754 := {c : @25} -> - {A : @26} -> - {f : @420} -> - {fn : @1475} -> - {args : @221} -> - {env : @1622} -> - {F : @1596} -> - {o : @1598} -> - (hB : @1728) -> - (hfn : @1732) -> (hwt : @1736) -> (hbind : @1666) -> (hF : @1676) -> (hA : @1740) -> @1705 -@1755 := @1722 @1 -@1756 := @1723 @1 -@1760 := (n : @420) -> @1756 @87 @4 @75 -@1763 := @211 @230 @77 @1653 -@1764 := @1669 @1 -@1767 := @1668 (@1764 @1624) @1675 -@1768 := @1694 @1 -@1778 := (hbind : @1666) -> - (hF : @1767) -> - (hA : @1740) -> (hne : @1684) -> @1687 (fun (ro : @1686) => @1693 (@1768 @1698 @1670 @4)) -@1788 := {A : @26} -> - {f : @420} -> - {fn : @1475} -> - {args : @221} -> - {env : @1622} -> - {F : @1596} -> {o : @1598} -> (hB : @1760) -> (hfn : @1732) -> (hwt : @1763) -> @1778 -@1789 := @1755 @2 -@1791 := @1756 @2 @4 -@1793 := (n : @420) -> @1791 @75 -@1794 := @217 @77 -@1795 := @1794 @1653 -@1804 := {f : @420} -> - {fn : @1475} -> - {args : @221} -> - {env : @1622} -> - {F : @1596} -> {o : @1598} -> (hB : @1793) -> (hfn : @1732) -> (hwt : @1795) -> @1778 -@1805 := @1789 @9 -@1807 := (n : @420) -> @1791 @9 -@1808 := @1729 @9 -@1809 := @1632 @1808 -@1810 := @1809 @1645 -@1811 := @1764 @9 -@1812 := @1668 @1811 -@1813 := @1812 @1675 -@1814 := @1737 @9 -@1816 := @1814 @230 @77 -@1818 := @1768 (@1697 @9) -@1826 := (hF : @1813) -> - (hA : @1816) -> (hne : @1684) -> @1687 (fun (ro : @1686) => @1693 (@1818 @1670 @4)) -@1835 := {fn : @1475} -> - {args : @221} -> - {env : @1622} -> - {F : @1596} -> - {o : @1598} -> (hB : @1807) -> (hfn : @1810) -> (hwt : @1795) -> (hbind : @1666) -> @1826 -@1836 := @1805 @1493 -@1838 := @1809 (@1644 @1493) -@1839 := @1652 @1493 -@1840 := @1794 @1839 -@1842 := @1657 (@1658 @1493) -@1854 := {args : @221} -> - {env : @1622} -> - {F : @1596} -> - {o : @1598} -> - (hB : @1807) -> (hfn : @1838) -> (hwt : @1840) -> (hbind : @1656 (@1842 @75 @1468) @1665) -> @1826 -@1855 := @1836 @1457 -@1857 := @1529 (@1227 @180) -@1859 := @217 @1857 @1839 -@1863 := @181 (@21 @230) (@1214 @180) -@1867 := @1656 (@1842 @1863 @1468) @1665 -@1873 := @181 (@21 @1647) (@181 (@562 @1624) @180) -@1875 := @1814 @1873 @77 -@1877 := @181 (@21 @1678) -@1878 := #12 -@1897 := {env : @1622} -> - {F : @1596} -> - {o : @1598} -> - (hB : @1807) -> - (hfn : @1838) -> - (hwt : @1859) -> - (hbind : @1867) -> - (hF : @1813) -> - (hA : @1875) -> - (hne : @1684) -> @1687 (fun (ro : @1686) => @1693 (@1818 (@1877 (@181 (@562 @1878) @180)) @4)) -@1898 := @1855 @1473 -@1900 := @1160 (@933 @180) -@1902 := @217 @1900 @1839 -@1913 := @1656 (@1842 @1857 @1468) (@1664 (@1469 (@1464 @1226) (@1469 (@1466 @1528) @1468))) -@1919 := @181 (@21 @1624) (@181 (@562 @230) @180) -@1941 := {F : @1596} -> - {o : @1598} -> - (hB : @1807) -> - (hfn : @1838) -> - (hwt : @1902) -> - (hbind : @1913) -> - (hF : @1813) -> - (hA : @1814 @1919 @77) -> - (hne : @1684) -> - @1687 (fun (ro : @1686) => @1693 (@1818 (@181 (@21 @1878) (@181 (@562 @1670) @180)) @4)) -@1942 := @1898 @1474 -@1943 := @1548 @1839 -@1954 := @1656 (@1842 @1900 @1468) (@1664 (@1469 (@1464 @932) (@1469 (@1466 @1159) @1468))) -@1956 := @1812 (@1674 @1474) -@1958 := @1814 @1863 @77 -@1959 := @1689 @1474 -@1981 := {o : @1598} -> - (hB : @1807) -> - (hfn : @1838) -> - (hwt : @1943) -> - (hbind : @1954) -> - (hF : @1956) -> - (hA : @1958) -> - (hne : @1684) -> - @1687 - (fun (ro : @1686) => - @1688 (@1959 @230 @4) (@1818 (@181 (@21 @1670) (@181 (@562 @1647) @180)) @4)) -@1982 := @1942 @1570 -@1983 := @1555 @1839 -@1994 := @1656 (@1842 @1547 @1468) (@1664 (@1469 (@1464 @946) (@1469 (@1466 @1173) @1468))) -@1995 := @1814 @1857 -@1997 := @1568 @87 @75 -@1998 := @1995 @1997 -@2000 := @1568 @230 @87 -@2019 := (hB : @1807) -> - (hfn : @1838) -> - (hwt : @1983) -> - (hbind : @1994) -> - (hF : @1956) -> - (hA : @1998) -> - (hne : @1599 @2000 @1604) -> - @1687 (fun (ro : @1686) => @1688 (@1959 (@1568 @1647 @1624) @4) (@1818 @1873 @4)) -@2020 := @1982 @1497 -@2021 := @1562 @1839 -@2032 := @1656 (@1842 @1554 @1468) (@1664 (@1469 (@1464 @929) (@1469 (@1466 @1156) @1468))) -@2033 := @1814 @1900 -@2035 := @1568 @75 @77 -@2054 := (hfn : @1838) -> - (hwt : @2021) -> - (hbind : @2032) -> - (hF : @1956) -> - (hA : @2033 @2035) -> - (hne : @1599 @1997 @1604) -> - @1687 (fun (ro : @1686) => @1688 (@1959 (@1568 @1624 @230) @4) (@1818 @1919 @4)) -@2057 := @2020 (@529 @1631 @1808) -@2058 := @1566 @1839 -@2069 := @1656 (@1842 @1561 @1468) (@1664 (@1469 (@1464 @943) (@1469 (@1466 @1170) @1468))) -@2070 := @1814 @1547 -@2072 := @1568 @77 @79 -@2088 := (hwt : @2058) -> - (hbind : @2069) -> - (hF : @1956) -> - (hA : @2070 @2072) -> - (hne : @1599 @2035 @1604) -> @1687 (fun (ro : @1686) => @1688 (@1959 @2000 @4) (@1818 @1863 @4)) -@2089 := @2057 @1565 -@2091 := @1842 @1457 @1468 -@2094 := @1656 @2091 (@1664 @1473) -@2095 := @1814 @1554 -@2097 := @1568 @79 @28 -@2112 := (hbind : @2094) -> - (hF : @1956) -> - (hA : @2095 @2097) -> - (hne : @1599 @2072 @1604) -> @1687 (fun (ro : @1686) => @1688 (@1959 @1997 @4) (@1818 @1857 @4)) -@2115 := @2089 (@529 @1655 @2091) -@2116 := @1814 @1561 -@2118 := @1568 @28 @30 -@2132 := (hF : @1956) -> - (hA : @2116 @2118) -> - (hne : @1599 @2097 @1604) -> @1687 (fun (ro : @1686) => @1688 (@1959 @2035 @4) (@1818 @1900 @4)) -@2135 := @2115 (@529 @1667 @1811) -@2149 := (hA : @1814 @1457 @1570) -> - (hne : @1599 @2118 @1604) -> @1687 (fun (ro : @1686) => @1688 (@1959 @2072 @4) (@1818 @1547 @4)) -@2150 := @2135 @1595 -@2161 := (hne : @1599 @1570 @1604) -> - @1687 (fun (ro : @1686) => @1688 (@1959 @2097 @4) (@1818 @1554 @4)) -@2162 := @2150 @1617 -@2168 := @1688 (@1959 @2118 @4) (@1818 @1561 @4) -@2170 := @1687 (fun (ro : @1686) => @2168) -@2172 := @1687 (fun (__e_ro : @1686) => @2168) -@2175 := LexLeanPreservation.Rust.RepresentableL (@1095 @922) -@2176 := (__e_hrep : @2175) -> @2172 -@2177 := fun (__e_hrep : @2175) => @2162 -@2178 := (expected : @610) -> @2176 -@2179 := fun (expected : @610) => @2177 -@2180 := (stdout : @27) -> @2178 -@2181 := fun (stdout : @27) => @2179 -\end{coremodule} -\end{lexlean} diff --git a/bootstrap/expected/verify/preserve/LexLeanPreserve/Cadb40bbfc73b1dc6b7a95dab0c348a27/R1/RustStd.lean b/bootstrap/expected/verify/preserve/LexLeanPreserve/Cadb40bbfc73b1dc6b7a95dab0c348a27/R1/RustStd.lean deleted file mode 100644 index a0798a8b5..000000000 --- a/bootstrap/expected/verify/preserve/LexLeanPreserve/Cadb40bbfc73b1dc6b7a95dab0c348a27/R1/RustStd.lean +++ /dev/null @@ -1,842 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [{ constructors := [[.bytes, (.option .bytes)]] }, - { constructors := [[(.list (.adt 2)), (.list .bytes)], [(.list (.adt 2)), (.list .bytes), .bytes, (.option .bytes)], [(.adt 0)]] }, - { constructors := [[.bytes, (.list .bytes), (.option .bytes)]] }], functions := (( - { parameters := [0, 1], types := [.bytes, (.list .bytes)], result := (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), - body := (.call 1 [(.call 2 [(.closure 3 []), (.build (.adt 0) (.adt 1) [(.build .nil (.list (.adt 2)) []), (.var 1)]), (.call 4 [(.var 0)])]), (.var 1)]) }) ::( - { parameters := [0, 1], types := [(.adt 1), (.list .bytes)], result := (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), - body := (.«match» (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) (.var 0) [(.arm (.adt 2) [2] (.build .error (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) [(.var 2)])), (.arm (.adt 1) [3, 4, 5, 6] (.call 5 [(.call 6 [(.call 7 [(.value .string (.string "unterminated axiom payload: "))]), (.var 5)]), (.var 6)])), (.arm (.adt 0) [7, 8] (.«let» 9 (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) (.call 5 [(.call 6 [(.call 6 [(.call 6 [(.call 7 [(.value .string (.string "expected "))]), (.call 8 [(.call 9 [(.var 1)])])]), (.call 7 [(.value .string (.string " audit records, found "))])]), (.call 8 [(.call 10 [(.var 7)])])]), (.build .none (.option .bytes) [])]) (.cond (.prim .natEq [(.call 10 [(.var 7)]), (.call 9 [(.var 1)])]) (.call 11 [(.closure 12 []), (.build .ok (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) [(.build .nil (.list (.pair .bytes (.list .bytes))) [])]), (.call 13 [(.var 7)])]) (.var 9))))]) }) ::( - { parameters := [0, 1, 2], types := [(.fn [(.adt 1), .bytes] (.adt 1)), (.adt 1), (.list .bytes)], result := (.adt 1), - body := (.«match» (.adt 1) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 2 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }) ::( - { parameters := [0, 1], types := [(.adt 1), .bytes], result := (.adt 1), - body := (.call 14 [(.var 0), (.var 1)]) }) ::( - { parameters := [0], types := [.bytes], result := (.list .bytes), - body := (.«let» 1 .nat (.prim .length [(.var 0)]) (.«let» 2 (.pair .nat (.pair .nat (.list .bytes))) (.first (.call 15 [(.closure 16 [(.var 0)]), (.var 1), (.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.value .nat (.nat 0)), (.build .pair (.pair .nat (.list .bytes)) [(.value .nat (.nat 0)), (.build .nil (.list .bytes) [])])])])) (.«let» 3 .nat (.first (.second (.var 2))) (.«let» 4 (.list .bytes) (.second (.second (.var 2))) (.cond (.prim .natLt [(.var 3), (.var 1)]) (.call 17 [(.build .cons (.list .bytes) [(.call 18 [(.var 0), (.var 3), (.prim .natSub [(.var 1), (.var 3)])]), (.var 4)])]) (.call 17 [(.var 4)])))))) }) ::( - { parameters := [0, 1], types := [.bytes, (.option .bytes)], result := (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), - body := (.build .error (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) [(.call 19 [(.var 0), (.var 1)])]) }) ::( - { parameters := [0, 1], types := [.bytes, .bytes], result := .bytes, - body := (.prim .append [(.var 0), (.var 1)]) }) ::( - { parameters := [0], types := [.string], result := .bytes, - body := (.prim .utf8Encode [(.var 0)]) }) ::( - { parameters := [0], types := [.nat], result := .bytes, - body := (.«let» 1 .bytes (.call 7 [(.value .string (.string "0"))]) (.«let» 2 .bytes (.call 20 [(.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 10000000000000000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 1000000000000000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 100000000000000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 10000000000000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 1000000000000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 100000000000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 10000000000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 1000000000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 100000000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 10000000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 1000000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 100000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 10000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 1000000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 100000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 10000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 1000))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 100))]), (.prim .append [(.call 21 [(.var 0), (.value .nat (.nat 10))]), (.call 21 [(.var 0), (.value .nat (.nat 1))])])])])])])])])])])])])])])])])])])])])]) (.cond (.prim .natEq [(.var 0), (.value .nat (.nat 0))]) (.var 1) (.var 2)))) }) ::( - { parameters := [0], types := [(.list .bytes)], result := .nat, - body := (.call 22 [(.closure 23 []), (.value .nat (.nat 0)), (.var 0)]) }) ::( - { parameters := [0], types := [(.list (.adt 2))], result := .nat, - body := (.call 24 [(.closure 25 []), (.value .nat (.nat 0)), (.var 0)]) }) ::( - { parameters := [0, 1, 2], types := [(.fn [(.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (.adt 2)] (.result (.list (.pair .bytes (.list .bytes))) (.adt 0))), (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (.list (.adt 2))], result := (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), - body := (.«match» (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 11 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }) ::( - { parameters := [0, 1], types := [(.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (.adt 2)], result := (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), - body := (.call 26 [(.var 0), (.var 1)]) }) ::( - { parameters := [0], types := [(.list (.adt 2))], result := (.list (.adt 2)), - body := (.call 27 [(.closure 28 []), (.build .nil (.list (.adt 2)) []), (.var 0)]) }) ::( - { parameters := [0, 1], types := [(.adt 1), .bytes], result := (.adt 1), - body := (.«match» (.adt 1) (.var 0) [(.arm (.adt 2) [2] (.var 0)), (.arm (.adt 1) [3, 4, 5, 6] (.«match» (.adt 1) (.call 29 [(.var 1)]) [(.arm .some [7] (.call 30 [(.var 3), (.var 4), (.call 6 [(.call 6 [(.var 5), (.call 7 [(.value .string (.string " "))])]), (.var 7)]), (.var 6)])), (.arm .none [] (.call 31 [(.call 6 [(.call 7 [(.value .string (.string "unterminated axiom payload: "))]), (.var 5)]), (.var 6)]))])), (.arm (.adt 0) [8, 9] (.cond (.prim .natEq [(.value .nat (.nat 0)), (.prim .length [(.call 32 [(.var 1)])])]) (.var 0) (.«match» (.adt 1) (.call 33 [(.call 32 [(.var 1)])]) [(.arm .some [10] (.call 30 [(.var 8), (.var 9), (.var 10), (.call 34 [(.var 9)])])), (.arm .none [] (.call 31 [(.call 6 [(.call 7 [(.value .string (.string "unrecognized audit line: "))]), (.call 32 [(.var 1)])]), (.call 34 [(.var 9)])]))])))]) }) ::( - { parameters := [0, 1, 2], types := [(.fn [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes))))), .nat, (.pair .nat (.pair .nat (.list .bytes)))], result := (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool), - body := (.«match» (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 15 [(.var 0), (.var 3), (.var 4)]))]))]) }) ::( - { parameters := [0, 1], types := [.bytes, (.pair .nat (.pair .nat (.list .bytes)))], result := (.option (.pair .nat (.pair .nat (.list .bytes)))), - body := (.call 35 [(.var 0), (.var 1)]) }) ::( - { parameters := [0], types := [(.list .bytes)], result := (.list .bytes), - body := (.call 36 [(.closure 37 []), (.build .nil (.list .bytes) []), (.var 0)]) }) ::( - { parameters := [0, 1, 2], types := [.bytes, .nat, .nat], result := .bytes, - body := (.«match» .bytes (.prim .slice [(.var 0), (.var 1), (.var 2)]) [(.arm .some [3] (.var 3)), (.arm .none [] (.value .bytes (.bytes (ByteArray.mk #[]))))]) }) ::( - { parameters := [0, 1], types := [.bytes, (.option .bytes)], result := (.adt 0), - body := (.build (.adt 0) (.adt 0) [(.var 0), (.var 1)]) }) ::( - { parameters := [0], types := [.bytes], result := .bytes, - body := (.«let» 1 .nat (.first (.call 38 [(.closure 39 [(.var 0)]), (.prim .length [(.var 0)]), (.value .nat (.nat 0))])) (.call 18 [(.var 0), (.var 1), (.prim .natSub [(.prim .length [(.var 0)]), (.var 1)])])) }) ::( - { parameters := [0, 1], types := [.nat, .nat], result := .bytes, - body := (.call 18 [(.call 7 [(.value .string (.string "0123456789"))]), (.prim .natRem [(.prim .natQuot [(.var 0), (.var 1), (.value .nat (.nat 0))]), (.value .nat (.nat 10)), (.value .nat (.nat 0))]), (.value .nat (.nat 1))]) }) ::( - { parameters := [0, 1, 2], types := [(.fn [.nat, .bytes] .nat), .nat, (.list .bytes)], result := .nat, - body := (.«match» .nat (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 22 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }) ::( - { parameters := [0, 1], types := [.nat, .bytes], result := .nat, - body := (.prim .natAdd [(.var 0), (.value .nat (.nat 1))]) }) ::( - { parameters := [0, 1, 2], types := [(.fn [.nat, (.adt 2)] .nat), .nat, (.list (.adt 2))], result := .nat, - body := (.«match» .nat (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 24 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }) ::( - { parameters := [0, 1], types := [.nat, (.adt 2)], result := .nat, - body := (.prim .natAdd [(.var 0), (.value .nat (.nat 1))]) }) ::( - { parameters := [0, 1], types := [(.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (.adt 2)], result := (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), - body := (.«match» (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) (.var 0) [(.arm .error [2] (.var 0)), (.arm .ok [3] (.«let» 5 .bytes (.«match» .bytes (.field (.var 1) 2) [(.arm .some [4] (.var 4)), (.arm .none [] (.value .bytes (.bytes (ByteArray.mk #[]))))]) (.«let» 6 (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) (.call 5 [(.call 6 [(.call 7 [(.value .string (.string "duplicate record for "))]), (.call 40 [(.field (.var 1) 0)])]), (.build .some (.option .bytes) [(.var 5)])]) (.«let» 7 (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) (.call 5 [(.call 6 [(.call 6 [(.call 6 [(.call 7 [(.value .string (.string "expected a record for "))]), (.call 40 [(.var 5)])]), (.call 7 [(.value .string (.string ", found "))])]), (.call 40 [(.field (.var 1) 0)])]), (.build .some (.option .bytes) [(.var 5)])]) (.cond (.prim .equal [(.field (.var 1) 0), (.var 5)]) (.«match» (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) (.call 41 [(.field (.var 1) 0), (.field (.var 1) 1), (.var 3)]) [(.arm .some [8] (.build .ok (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) [(.var 8)])), (.arm .none [] (.var 6))]) (.var 7))))))]) }) ::( - { parameters := [0, 1, 2], types := [(.fn [(.list (.adt 2)), (.adt 2)] (.list (.adt 2))), (.list (.adt 2)), (.list (.adt 2))], result := (.list (.adt 2)), - body := (.«match» (.list (.adt 2)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 27 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }) ::( - { parameters := [0, 1], types := [(.list (.adt 2)), (.adt 2)], result := (.list (.adt 2)), - body := (.build .cons (.list (.adt 2)) [(.var 1), (.var 0)]) }) ::( - { parameters := [0], types := [.bytes], result := (.option .bytes), - body := (.«let» 1 .bytes (.call 32 [(.var 0)]) (.cond (.call 42 [(.var 0)]) (.cond (.prim .natEq [(.value .nat (.nat 0)), (.prim .length [(.var 1)])]) (.build .none (.option .bytes) []) (.build .some (.option .bytes) [(.var 1)])) (.build .none (.option .bytes) []))) }) ::( - { parameters := [0, 1, 2, 3], types := [(.list (.adt 2)), (.list .bytes), .bytes, (.option .bytes)], result := (.adt 1), - body := (.cond (.call 43 [(.var 2)]) (.«match» (.adt 1) (.call 44 [(.var 2)]) [(.arm .error [4] (.call 31 [(.var 4), (.var 3)])), (.arm .ok [5] (.build (.adt 0) (.adt 1) [(.build .cons (.list (.adt 2)) [(.build (.adt 0) (.adt 2) [(.first (.var 5)), (.second (.var 5)), (.var 3)]), (.var 0)]), (.call 45 [(.var 1)])]))]) (.build (.adt 1) (.adt 1) [(.var 0), (.var 1), (.var 2), (.var 3)])) }) ::( - { parameters := [0, 1], types := [.bytes, (.option .bytes)], result := (.adt 1), - body := (.build (.adt 2) (.adt 1) [(.call 19 [(.var 0), (.var 1)])]) }) ::( - { parameters := [0], types := [.bytes], result := .bytes, - body := (.«let» 1 .nat (.call 46 [(.var 0)]) (.«let» 2 .nat (.call 47 [(.var 0), (.var 1)]) (.call 18 [(.var 0), (.var 1), (.prim .natSub [(.var 2), (.var 1)])]))) }) ::( - { parameters := [0], types := [.bytes], result := (.option .bytes), - body := (.cond (.call 48 [(.var 0), (.call 7 [(.value .string (.string "'"))])]) (.build .some (.option .bytes) [(.var 0)]) (.«match» (.option .bytes) (.call 49 [(.var 0), (.call 7 [(.value .string (.string "info: "))])]) [(.arm .some [1] (.build .some (.option .bytes) [(.var 1)])), (.arm .none [] (.call 50 [(.var 0)]))])) }) ::( - { parameters := [0], types := [(.list .bytes)], result := (.option .bytes), - body := (.«match» (.option .bytes) (.var 0) [(.arm .nil [] (.build .none (.option .bytes) [])), (.arm .cons [1, 2] (.build .some (.option .bytes) [(.var 1)]))]) }) ::( - { parameters := [0, 1], types := [.bytes, (.pair .nat (.pair .nat (.list .bytes)))], result := (.option (.pair .nat (.pair .nat (.list .bytes)))), - body := (.«let» 2 .nat (.first (.var 1)) (.«let» 3 .nat (.first (.second (.var 1))) (.«let» 4 (.list .bytes) (.second (.second (.var 1))) (.«match» (.option (.pair .nat (.pair .nat (.list .bytes)))) (.call 51 [(.var 0), (.var 2)]) [(.arm .some [5] (.cond (.prim .equal [(.var 5), (.value (.fixed .u8) (.u8 10))]) (.build .some (.option (.pair .nat (.pair .nat (.list .bytes)))) [(.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.prim .natAdd [(.var 2), (.value .nat (.nat 1))]), (.build .pair (.pair .nat (.list .bytes)) [(.prim .natAdd [(.var 2), (.value .nat (.nat 1))]), (.build .cons (.list .bytes) [(.call 52 [(.call 18 [(.var 0), (.var 3), (.prim .natSub [(.var 2), (.var 3)])])]), (.var 4)])])])]) (.build .some (.option (.pair .nat (.pair .nat (.list .bytes)))) [(.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.prim .natAdd [(.var 2), (.value .nat (.nat 1))]), (.build .pair (.pair .nat (.list .bytes)) [(.var 3), (.var 4)])])]))), (.arm .none [] (.build .none (.option (.pair .nat (.pair .nat (.list .bytes)))) []))])))) }) ::( - { parameters := [0, 1, 2], types := [(.fn [(.list .bytes), .bytes] (.list .bytes)), (.list .bytes), (.list .bytes)], result := (.list .bytes), - body := (.«match» (.list .bytes) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 36 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }) ::( - { parameters := [0, 1], types := [(.list .bytes), .bytes], result := (.list .bytes), - body := (.build .cons (.list .bytes) [(.var 1), (.var 0)]) }) ::( - { parameters := [0, 1, 2], types := [(.fn [.nat] (.option .nat)), .nat, .nat], result := (.pair .nat .bool), - body := (.«match» (.pair .nat .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair .nat .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair .nat .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair .nat .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 38 [(.var 0), (.var 3), (.var 4)]))]))]) }) ::( - { parameters := [0, 1], types := [.bytes, .nat], result := (.option .nat), - body := (.call 53 [(.var 0), (.var 1)]) }) ::( - { parameters := [0], types := [.bytes], result := .bytes, - body := (.call 6 [(.call 6 [(.call 7 [(.value .string (.string "`"))]), (.var 0)]), (.call 7 [(.value .string (.string "`"))])]) }) ::( - { parameters := [0, 1, 2], types := [.bytes, (.list .bytes), (.list (.pair .bytes (.list .bytes)))], result := (.option (.list (.pair .bytes (.list .bytes)))), - body := (.«match» (.option (.list (.pair .bytes (.list .bytes)))) (.var 2) [(.arm .nil [] (.build .some (.option (.list (.pair .bytes (.list .bytes)))) [(.build .cons (.list (.pair .bytes (.list .bytes))) [(.build .pair (.pair .bytes (.list .bytes)) [(.var 0), (.var 1)]), (.build .nil (.list (.pair .bytes (.list .bytes))) [])])])), (.arm .cons [3, 4] (.cond (.prim .equal [(.var 0), (.first (.var 3))]) (.build .none (.option (.list (.pair .bytes (.list .bytes)))) []) (.cond (.call 54 [(.var 0), (.first (.var 3))]) (.build .some (.option (.list (.pair .bytes (.list .bytes)))) [(.build .cons (.list (.pair .bytes (.list .bytes))) [(.build .pair (.pair .bytes (.list .bytes)) [(.var 0), (.var 1)]), (.build .cons (.list (.pair .bytes (.list .bytes))) [(.var 3), (.var 4)])])]) (.«match» (.option (.list (.pair .bytes (.list .bytes)))) (.call 41 [(.var 0), (.var 1), (.var 4)]) [(.arm .some [5] (.build .some (.option (.list (.pair .bytes (.list .bytes)))) [(.build .cons (.list (.pair .bytes (.list .bytes))) [(.var 3), (.var 5)])])), (.arm .none [] (.build .none (.option (.list (.pair .bytes (.list .bytes)))) []))]))))]) }) ::( - { parameters := [0], types := [.bytes], result := .bool, - body := (.prim .natLt [(.value .nat (.nat 0)), (.call 55 [(.var 0), (.value .nat (.nat 0))])]) }) ::( - { parameters := [0], types := [.bytes], result := .bool, - body := (.«match» .bool (.call 56 [(.var 0), (.call 7 [(.value .string (.string "]"))])]) [(.arm .some [1] (.build .true .bool [])), (.arm .none [] (.«match» .bool (.call 56 [(.var 0), (.call 7 [(.value .string (.string " does not depend on any axioms"))])]) [(.arm .some [2] (.build .true .bool [])), (.arm .none [] (.build .false .bool []))]))]) }) ::( - { parameters := [0], types := [.bytes], result := (.result (.pair .bytes (.list .bytes)) .bytes), - body := (.«match» (.result (.pair .bytes (.list .bytes)) .bytes) (.call 49 [(.var 0), (.call 7 [(.value .string (.string "'"))])]) [(.arm .none [] (.call 57 [(.var 0)])), (.arm .some [1] (.«match» (.result (.pair .bytes (.list .bytes)) .bytes) (.call 56 [(.var 1), (.call 7 [(.value .string (.string "' does not depend on any axioms"))])]) [(.arm .some [2] (.«let» 3 (.result (.pair .bytes (.list .bytes)) .bytes) (.call 58 [(.var 2), (.build .nil (.list .bytes) [])]) (.«let» 4 (.result (.pair .bytes (.list .bytes)) .bytes) (.call 59 [(.call 60 [(.var 2)])]) (.cond (.call 61 [(.var 2)]) (.var 3) (.var 4))))), (.arm .none [] (.«match» (.result (.pair .bytes (.list .bytes)) .bytes) (.call 56 [(.var 1), (.call 7 [(.value .string (.string "]"))])]) [(.arm .some [5] (.call 62 [(.var 0), (.var 5)])), (.arm .none [] (.call 57 [(.var 0)]))]))]))]) }) ::( - { parameters := [0], types := [(.list .bytes)], result := (.list .bytes), - body := (.«match» (.list .bytes) (.var 0) [(.arm .nil [] (.build .nil (.list .bytes) [])), (.arm .cons [1, 2] (.var 2))]) }) ::( - { parameters := [0], types := [.bytes], result := .nat, - body := (.first (.call 38 [(.closure 63 [(.var 0)]), (.prim .length [(.var 0)]), (.value .nat (.nat 0))])) }) ::( - { parameters := [0, 1], types := [.bytes, .nat], result := .nat, - body := (.first (.call 38 [(.closure 64 [(.var 1), (.var 0)]), (.prim .length [(.var 0)]), (.prim .length [(.var 0)])])) }) ::( - { parameters := [0, 1], types := [.bytes, .bytes], result := .bool, - body := (.«match» .bool (.prim .slice [(.var 0), (.value .nat (.nat 0)), (.prim .length [(.var 1)])]) [(.arm .some [2] (.prim .equal [(.var 2), (.var 1)])), (.arm .none [] (.build .false .bool []))]) }) ::( - { parameters := [0, 1], types := [.bytes, .bytes], result := (.option .bytes), - body := (.cond (.call 48 [(.var 0), (.var 1)]) (.build .some (.option .bytes) [(.call 18 [(.var 0), (.prim .length [(.var 1)]), (.prim .natSub [(.prim .length [(.var 0)]), (.prim .length [(.var 1)])])])]) (.build .none (.option .bytes) [])) }) ::( - { parameters := [0], types := [.bytes], result := (.option .bytes), - body := (.«match» (.option .bytes) (.call 65 [(.var 0), (.call 7 [(.value .string (.string ":"))])]) [(.arm .some [1] (.«match» (.option .bytes) (.call 65 [(.second (.var 1)), (.call 7 [(.value .string (.string ":"))])]) [(.arm .some [2] (.«match» (.option .bytes) (.call 65 [(.second (.var 2)), (.call 7 [(.value .string (.string ":"))])]) [(.arm .some [3] (.«let» 4 .bytes (.first (.var 2)) (.«let» 5 .bytes (.first (.var 3)) (.«let» 6 .bytes (.second (.var 3)) (.«let» 7 (.option .bytes) (.call 66 [(.var 5), (.var 6)]) (.cond (.call 67 [(.var 4)]) (.var 7) (.build .none (.option .bytes) []))))))), (.arm .none [] (.build .none (.option .bytes) []))])), (.arm .none [] (.build .none (.option .bytes) []))])), (.arm .none [] (.build .none (.option .bytes) []))]) }) ::( - { parameters := [0, 1], types := [.bytes, .nat], result := (.option (.fixed .u8)), - body := (.prim .index [(.var 0), (.var 1)]) }) ::( - { parameters := [0], types := [.bytes], result := .bytes, - body := (.cond (.call 68 [(.var 0), (.value .bytes (.bytes (ByteArray.mk #[13])))]) (.call 18 [(.var 0), (.value .nat (.nat 0)), (.prim .natSub [(.prim .length [(.var 0)]), (.value .nat (.nat 1))])]) (.var 0)) }) ::( - { parameters := [0, 1], types := [.bytes, .nat], result := (.option .nat), - body := (.cond (.call 69 [(.var 0), (.var 1), (.value (.fixed .u8) (.u8 48))]) (.build .some (.option .nat) [(.prim .natAdd [(.var 1), (.value .nat (.nat 1))])]) (.build .none (.option .nat) [])) }) ::( - { parameters := [0, 1], types := [.bytes, .bytes], result := .bool, - body := (.prim .equal [(.prim .compareBytes [(.var 0), (.var 1)]), (.prim .compareBytes [(.value .bytes (.bytes (ByteArray.mk #[]))), (.value .bytes (.bytes (ByteArray.mk #[1])))])]) }) ::( - { parameters := [0, 1], types := [.bytes, .nat], result := .nat, - body := (.cond (.cond (.call 70 [(.var 0), (.var 1), (.value (.fixed .u8) (.u8 9)), (.value (.fixed .u8) (.u8 13))]) (.build .true .bool []) (.cond (.call 69 [(.var 0), (.var 1), (.value (.fixed .u8) (.u8 32))]) (.build .true .bool []) (.build .false .bool []))) (.value .nat (.nat 1)) (.cond (.call 69 [(.var 0), (.var 1), (.value (.fixed .u8) (.u8 194))]) (.cond (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 1))]), (.value (.fixed .u8) (.u8 133))]) (.build .true .bool []) (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 1))]), (.value (.fixed .u8) (.u8 160))]) (.build .true .bool []) (.build .false .bool []))) (.value .nat (.nat 2)) (.value .nat (.nat 0))) (.cond (.call 69 [(.var 0), (.var 1), (.value (.fixed .u8) (.u8 225))]) (.cond (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 1))]), (.value (.fixed .u8) (.u8 154))]) (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 2))]), (.value (.fixed .u8) (.u8 128))]) (.build .true .bool []) (.build .false .bool [])) (.build .false .bool [])) (.value .nat (.nat 3)) (.value .nat (.nat 0))) (.cond (.call 69 [(.var 0), (.var 1), (.value (.fixed .u8) (.u8 226))]) (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 1))]), (.value (.fixed .u8) (.u8 128))]) (.cond (.cond (.call 70 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 2))]), (.value (.fixed .u8) (.u8 128)), (.value (.fixed .u8) (.u8 138))]) (.build .true .bool []) (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 2))]), (.value (.fixed .u8) (.u8 168))]) (.build .true .bool []) (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 2))]), (.value (.fixed .u8) (.u8 169))]) (.build .true .bool []) (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 2))]), (.value (.fixed .u8) (.u8 175))]) (.build .true .bool []) (.build .false .bool []))))) (.value .nat (.nat 3)) (.value .nat (.nat 0))) (.cond (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 1))]), (.value (.fixed .u8) (.u8 129))]) (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 2))]), (.value (.fixed .u8) (.u8 159))]) (.build .true .bool []) (.build .false .bool [])) (.build .false .bool [])) (.value .nat (.nat 3)) (.value .nat (.nat 0)))) (.cond (.call 69 [(.var 0), (.var 1), (.value (.fixed .u8) (.u8 227))]) (.cond (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 1))]), (.value (.fixed .u8) (.u8 128))]) (.cond (.call 69 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 2))]), (.value (.fixed .u8) (.u8 128))]) (.build .true .bool []) (.build .false .bool [])) (.build .false .bool [])) (.value .nat (.nat 3)) (.value .nat (.nat 0))) (.value .nat (.nat 0))))))) }) ::( - { parameters := [0, 1], types := [.bytes, .bytes], result := (.option .bytes), - body := (.cond (.call 68 [(.var 0), (.var 1)]) (.build .some (.option .bytes) [(.call 18 [(.var 0), (.value .nat (.nat 0)), (.prim .natSub [(.prim .length [(.var 0)]), (.prim .length [(.var 1)])])])]) (.build .none (.option .bytes) [])) }) ::( - { parameters := [0], types := [.bytes], result := (.result (.pair .bytes (.list .bytes)) .bytes), - body := (.call 59 [(.call 6 [(.call 7 [(.value .string (.string "unrecognized axiom payload: "))]), (.var 0)])]) }) ::( - { parameters := [0, 1], types := [.bytes, (.list .bytes)], result := (.result (.pair .bytes (.list .bytes)) .bytes), - body := (.build .ok (.result (.pair .bytes (.list .bytes)) .bytes) [(.build .pair (.pair .bytes (.list .bytes)) [(.var 0), (.var 1)])]) }) ::( - { parameters := [0], types := [.bytes], result := (.result (.pair .bytes (.list .bytes)) .bytes), - body := (.build .error (.result (.pair .bytes (.list .bytes)) .bytes) [(.var 0)]) }) ::( - { parameters := [0], types := [.bytes], result := .bytes, - body := (.call 6 [(.call 40 [(.var 0)]), (.call 7 [(.value .string (.string " is not a Lean name"))])]) }) ::( - { parameters := [0], types := [.bytes], result := .bool, - body := (.prim .natEq [(.second (.first (.call 71 [(.closure 72 [(.var 0)]), (.prim .length [(.var 0)]), (.build .pair (.pair .nat .nat) [(.value .nat (.nat 0)), (.value .nat (.nat 0))])]))), (.value .nat (.nat 1))]) }) ::( - { parameters := [0, 1], types := [.bytes, .bytes], result := (.result (.pair .bytes (.list .bytes)) .bytes), - body := (.«match» (.result (.pair .bytes (.list .bytes)) .bytes) (.call 73 [(.var 1), (.call 7 [(.value .string (.string "' depends on axioms: ["))])]) [(.arm .some [2] (.«let» 3 .bytes (.first (.var 2)) (.«let» 4 .bytes (.second (.var 2)) (.«let» 5 (.result (.pair .bytes (.list .bytes)) .bytes) (.call 74 [(.var 3), (.var 4)]) (.«let» 6 (.result (.pair .bytes (.list .bytes)) .bytes) (.call 59 [(.call 60 [(.var 3)])]) (.cond (.call 61 [(.var 3)]) (.var 5) (.var 6))))))), (.arm .none [] (.call 57 [(.var 0)]))]) }) ::( - { parameters := [0, 1], types := [.bytes, .nat], result := (.option .nat), - body := (.cond (.prim .natLt [(.value .nat (.nat 0)), (.call 55 [(.var 0), (.var 1)])]) (.build .some (.option .nat) [(.prim .natAdd [(.var 1), (.call 55 [(.var 0), (.var 1)])])]) (.build .none (.option .nat) [])) }) ::( - { parameters := [0, 1, 2], types := [.nat, .bytes, .nat], result := (.option .nat), - body := (.cond (.cond (.prim .natLt [(.value .nat (.nat 0)), (.call 75 [(.var 1), (.var 2)])]) (.prim .natLe [(.prim .natAdd [(.var 0), (.call 75 [(.var 1), (.var 2)])]), (.var 2)]) (.build .false .bool [])) (.build .some (.option .nat) [(.prim .natSub [(.var 2), (.call 75 [(.var 1), (.var 2)])])]) (.build .none (.option .nat) [])) }) ::( - { parameters := [0, 1], types := [.bytes, .bytes], result := (.option (.pair .bytes .bytes)), - body := (.«match» (.option (.pair .bytes .bytes)) (.call 76 [(.var 0), (.var 1)]) [(.arm .some [2] (.build .some (.option (.pair .bytes .bytes)) [(.build .pair (.pair .bytes .bytes) [(.call 18 [(.var 0), (.value .nat (.nat 0)), (.var 2)]), (.call 18 [(.var 0), (.prim .natAdd [(.var 2), (.prim .length [(.var 1)])]), (.prim .natSub [(.prim .length [(.var 0)]), (.prim .natAdd [(.var 2), (.prim .length [(.var 1)])])])])])])), (.arm .none [] (.build .none (.option (.pair .bytes .bytes)) []))]) }) ::( - { parameters := [0, 1], types := [.bytes, .bytes], result := (.option .bytes), - body := (.«match» (.option .bytes) (.call 65 [(.var 0), (.call 7 [(.value .string (.string "-"))])]) [(.arm .some [2] (.«let» 3 .bytes (.first (.var 2)) (.«let» 4 .bytes (.second (.var 2)) (.«match» (.option .bytes) (.call 65 [(.var 1), (.call 7 [(.value .string (.string ":"))])]) [(.arm .some [5] (.«let» 6 .bytes (.first (.var 5)) (.«let» 7 .bytes (.second (.var 5)) (.«let» 8 (.option .bytes) (.call 77 [(.var 7)]) (.cond (.call 67 [(.var 3)]) (.cond (.call 67 [(.var 4)]) (.cond (.call 67 [(.var 6)]) (.var 8) (.build .none (.option .bytes) [])) (.build .none (.option .bytes) [])) (.build .none (.option .bytes) [])))))), (.arm .none [] (.build .none (.option .bytes) []))])))), (.arm .none [] (.«let» 9 (.option .bytes) (.call 77 [(.var 1)]) (.cond (.call 67 [(.var 0)]) (.var 9) (.build .none (.option .bytes) []))))]) }) ::( - { parameters := [0], types := [.bytes], result := .bool, - body := (.call 78 [(.call 32 [(.var 0)])]) }) ::( - { parameters := [0, 1], types := [.bytes, .bytes], result := .bool, - body := (.«let» 2 .nat (.prim .length [(.var 0)]) (.«let» 3 .nat (.prim .length [(.var 1)]) (.cond (.prim .natLe [(.var 3), (.var 2)]) (.«match» .bool (.prim .slice [(.var 0), (.prim .natSub [(.var 2), (.var 3)]), (.var 3)]) [(.arm .some [4] (.prim .equal [(.var 4), (.var 1)])), (.arm .none [] (.build .false .bool []))]) (.build .false .bool [])))) }) ::( - { parameters := [0, 1, 2], types := [.bytes, .nat, (.fixed .u8)], result := .bool, - body := (.«match» .bool (.call 51 [(.var 0), (.var 1)]) [(.arm .some [3] (.prim .equal [(.var 3), (.var 2)])), (.arm .none [] (.build .false .bool []))]) }) ::( - { parameters := [0, 1, 2, 3], types := [.bytes, .nat, (.fixed .u8), (.fixed .u8)], result := .bool, - body := (.«match» .bool (.call 51 [(.var 0), (.var 1)]) [(.arm .some [4] (.call 79 [(.var 4), (.var 2), (.var 3)])), (.arm .none [] (.build .false .bool []))]) }) ::( - { parameters := [0, 1, 2], types := [(.fn [(.pair .nat .nat)] (.option (.pair .nat .nat))), .nat, (.pair .nat .nat)], result := (.pair (.pair .nat .nat) .bool), - body := (.«match» (.pair (.pair .nat .nat) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.pair .nat .nat) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.pair .nat .nat) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.pair .nat .nat) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 71 [(.var 0), (.var 3), (.var 4)]))]))]) }) ::( - { parameters := [0, 1], types := [.bytes, (.pair .nat .nat)], result := (.option (.pair .nat .nat)), - body := (.call 80 [(.var 0), (.var 1)]) }) ::( - { parameters := [0, 1], types := [.bytes, .bytes], result := (.option (.pair .bytes .bytes)), - body := (.«let» 2 .nat (.prim .length [(.var 0)]) (.«let» 3 .nat (.prim .length [(.var 1)]) (.cond (.prim .natLt [(.var 2), (.var 3)]) (.build .none (.option (.pair .bytes .bytes)) []) (.«let» 4 .nat (.first (.call 38 [(.closure 81 [(.var 1), (.var 0)]), (.prim .natAdd [(.var 2), (.value .nat (.nat 1))]), (.prim .natSub [(.var 2), (.var 3)])])) (.cond (.call 82 [(.var 0), (.var 1), (.var 4)]) (.build .some (.option (.pair .bytes .bytes)) [(.build .pair (.pair .bytes .bytes) [(.call 18 [(.var 0), (.value .nat (.nat 0)), (.var 4)]), (.call 18 [(.var 0), (.prim .natAdd [(.var 4), (.var 3)]), (.prim .natSub [(.var 2), (.prim .natAdd [(.var 4), (.var 3)])])])])]) (.build .none (.option (.pair .bytes .bytes)) [])))))) }) ::( - { parameters := [0, 1], types := [.bytes, .bytes], result := (.result (.pair .bytes (.list .bytes)) .bytes), - body := (.«match» (.result (.pair .bytes (.list .bytes)) .bytes) (.call 83 [(.closure 84 []), (.build .ok (.result (.list .bytes) .bytes) [(.build .nil (.list .bytes) [])]), (.call 85 [(.var 1), (.value (.fixed .u8) (.u8 44))])]) [(.arm .error [2] (.call 59 [(.var 2)])), (.arm .ok [3] (.«match» (.result (.pair .bytes (.list .bytes)) .bytes) (.var 3) [(.arm .nil [] (.call 59 [(.call 7 [(.value .string (.string "an axiom list cannot be empty"))])])), (.arm .cons [4, 5] (.call 58 [(.var 0), (.var 3)]))]))]) }) ::( - { parameters := [0, 1], types := [.bytes, .nat], result := .nat, - body := (.cond (.prim .natEq [(.var 1), (.value .nat (.nat 0))]) (.value .nat (.nat 0)) (.cond (.prim .natEq [(.call 55 [(.var 0), (.prim .natSub [(.var 1), (.value .nat (.nat 1))])]), (.value .nat (.nat 1))]) (.value .nat (.nat 1)) (.cond (.cond (.prim .natLe [(.value .nat (.nat 2)), (.var 1)]) (.prim .natEq [(.call 55 [(.var 0), (.prim .natSub [(.var 1), (.value .nat (.nat 2))])]), (.value .nat (.nat 2))]) (.build .false .bool [])) (.value .nat (.nat 2)) (.cond (.cond (.prim .natLe [(.value .nat (.nat 3)), (.var 1)]) (.prim .natEq [(.call 55 [(.var 0), (.prim .natSub [(.var 1), (.value .nat (.nat 3))])]), (.value .nat (.nat 3))]) (.build .false .bool [])) (.value .nat (.nat 3)) (.value .nat (.nat 0)))))) }) ::( - { parameters := [0, 1], types := [.bytes, .bytes], result := (.option .nat), - body := (.«let» 2 .nat (.prim .length [(.var 0)]) (.«let» 3 .nat (.prim .length [(.var 1)]) (.«let» 4 .nat (.first (.call 38 [(.closure 86 [(.var 1), (.var 3), (.var 0), (.var 2)]), (.prim .natAdd [(.var 2), (.value .nat (.nat 1))]), (.value .nat (.nat 0))])) (.cond (.call 82 [(.var 0), (.var 1), (.var 4)]) (.build .some (.option .nat) [(.var 4)]) (.build .none (.option .nat) []))))) }) ::( - { parameters := [0], types := [.bytes], result := (.option .bytes), - body := (.«match» (.option .bytes) (.call 49 [(.var 0), (.call 7 [(.value .string (.string " "))])]) [(.arm .some [1] (.call 49 [(.var 1), (.call 7 [(.value .string (.string "info: "))])])), (.arm .none [] (.build .none (.option .bytes) []))]) }) ::( - { parameters := [0], types := [.bytes], result := .bool, - body := (.«let» 2 .bytes (.«match» .bytes (.call 49 [(.var 0), (.call 7 [(.value .string (.string "+"))])]) [(.arm .some [1] (.var 1)), (.arm .none [] (.var 0))]) (.«let» 3 .bool (.call 87 [(.call 20 [(.var 2)])]) (.cond (.prim .natLt [(.value .nat (.nat 0)), (.prim .length [(.var 2)])]) (.cond (.call 88 [(.var 2)]) (.var 3) (.build .false .bool [])) (.build .false .bool [])))) }) ::( - { parameters := [0, 1, 2], types := [(.fixed .u8), (.fixed .u8), (.fixed .u8)], result := .bool, - body := (.«match» .bool (.prim .checkedSub [(.var 0), (.var 1)]) [(.arm .some [3] (.«match» .bool (.prim .checkedSub [(.var 2), (.var 0)]) [(.arm .some [4] (.build .true .bool [])), (.arm .none [] (.build .false .bool []))])), (.arm .none [] (.build .false .bool []))]) }) ::( - { parameters := [0, 1], types := [.bytes, (.pair .nat .nat)], result := (.option (.pair .nat .nat)), - body := (.cond (.prim .natEq [(.second (.var 1)), (.value .nat (.nat 2))]) (.build .none (.option (.pair .nat .nat)) []) (.«match» (.option (.pair .nat .nat)) (.call 51 [(.var 0), (.first (.var 1))]) [(.arm .some [2] (.build .some (.option (.pair .nat .nat)) [(.build .pair (.pair .nat .nat) [(.prim .natAdd [(.first (.var 1)), (.value .nat (.nat 1))]), (.call 89 [(.second (.var 1)), (.var 2)])])])), (.arm .none [] (.build .none (.option (.pair .nat .nat)) []))])) }) ::( - { parameters := [0, 1, 2], types := [.bytes, .bytes, .nat], result := (.option .nat), - body := (.call 90 [(.var 1), (.var 0), (.var 2)]) }) ::( - { parameters := [0, 1, 2], types := [.bytes, .bytes, .nat], result := .bool, - body := (.«match» .bool (.prim .slice [(.var 0), (.var 2), (.prim .length [(.var 1)])]) [(.arm .some [3] (.prim .equal [(.var 3), (.var 1)])), (.arm .none [] (.build .false .bool []))]) }) ::( - { parameters := [0, 1, 2], types := [(.fn [(.result (.list .bytes) .bytes), .bytes] (.result (.list .bytes) .bytes)), (.result (.list .bytes) .bytes), (.list .bytes)], result := (.result (.list .bytes) .bytes), - body := (.«match» (.result (.list .bytes) .bytes) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 83 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }) ::( - { parameters := [0, 1], types := [(.result (.list .bytes) .bytes), .bytes], result := (.result (.list .bytes) .bytes), - body := (.call 91 [(.var 0), (.var 1)]) }) ::( - { parameters := [0, 1], types := [.bytes, (.fixed .u8)], result := (.list .bytes), - body := (.«let» 2 .nat (.prim .length [(.var 0)]) (.«let» 3 (.pair .nat (.pair .nat (.list .bytes))) (.first (.call 15 [(.closure 92 [(.var 1), (.var 0)]), (.var 2), (.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.value .nat (.nat 0)), (.build .pair (.pair .nat (.list .bytes)) [(.value .nat (.nat 0)), (.build .nil (.list .bytes) [])])])])) (.«let» 4 .nat (.first (.second (.var 3))) (.call 17 [(.build .cons (.list .bytes) [(.call 18 [(.var 0), (.var 4), (.prim .natSub [(.var 2), (.var 4)])]), (.second (.second (.var 3)))])])))) }) ::( - { parameters := [0, 1, 2, 3, 4], types := [.bytes, .nat, .bytes, .nat, .nat], result := (.option .nat), - body := (.cond (.call 82 [(.var 2), (.var 0), (.var 4)]) (.build .none (.option .nat) []) (.cond (.prim .natLt [(.prim .natAdd [(.var 4), (.var 1)]), (.var 3)]) (.build .some (.option .nat) [(.prim .natAdd [(.var 4), (.value .nat (.nat 1))])]) (.build .none (.option .nat) []))) }) ::( - { parameters := [0], types := [.bytes], result := .bool, - body := (.cond (.prim .natLt [(.prim .length [(.var 0)]), (.value .nat (.nat 20))]) (.build .true .bool []) (.cond (.prim .natEq [(.prim .length [(.var 0)]), (.value .nat (.nat 20))]) (.prim .boolNot [(.prim .equal [(.prim .compareBytes [(.var 0), (.call 7 [(.value .string (.string "18446744073709551615"))])]), (.prim .compareBytes [(.value .bytes (.bytes (ByteArray.mk #[1]))), (.value .bytes (.bytes (ByteArray.mk #[0])))])])]) (.build .false .bool []))) }) ::( - { parameters := [0], types := [.bytes], result := .bool, - body := (.prim .natEq [(.first (.call 38 [(.closure 93 [(.var 0)]), (.prim .length [(.var 0)]), (.value .nat (.nat 0))])), (.prim .length [(.var 0)])]) }) ::( - { parameters := [0, 1], types := [.nat, (.fixed .u8)], result := .nat, - body := (.cond (.prim .natEq [(.var 0), (.value .nat (.nat 2))]) (.value .nat (.nat 2)) (.cond (.prim .equal [(.var 1), (.value (.fixed .u8) (.u8 46))]) (.cond (.prim .natEq [(.var 0), (.value .nat (.nat 1))]) (.value .nat (.nat 0)) (.value .nat (.nat 2))) (.cond (.call 94 [(.var 1)]) (.value .nat (.nat 1)) (.cond (.prim .natEq [(.var 0), (.value .nat (.nat 1))]) (.cond (.call 95 [(.var 1)]) (.value .nat (.nat 1)) (.value .nat (.nat 2))) (.value .nat (.nat 2)))))) }) ::( - { parameters := [0, 1, 2], types := [.bytes, .bytes, .nat], result := (.option .nat), - body := (.cond (.call 82 [(.var 0), (.var 1), (.var 2)]) (.build .none (.option .nat) []) (.cond (.prim .natLt [(.value .nat (.nat 0)), (.var 2)]) (.build .some (.option .nat) [(.prim .natSub [(.var 2), (.value .nat (.nat 1))])]) (.build .none (.option .nat) []))) }) ::( - { parameters := [0, 1], types := [(.result (.list .bytes) .bytes), .bytes], result := (.result (.list .bytes) .bytes), - body := (.«match» (.result (.list .bytes) .bytes) (.var 0) [(.arm .error [2] (.var 0)), (.arm .ok [3] (.«let» 4 .bytes (.call 32 [(.var 1)]) (.cond (.call 61 [(.var 4)]) (.«match» (.result (.list .bytes) .bytes) (.call 96 [(.var 4), (.var 3)]) [(.arm .some [5] (.build .ok (.result (.list .bytes) .bytes) [(.var 5)])), (.arm .none [] (.build .error (.result (.list .bytes) .bytes) [(.call 6 [(.call 7 [(.value .string (.string "duplicate axiom name "))]), (.call 40 [(.var 4)])])]))]) (.build .error (.result (.list .bytes) .bytes) [(.call 60 [(.var 4)])]))))]) }) ::( - { parameters := [0, 1, 2], types := [(.fixed .u8), .bytes, (.pair .nat (.pair .nat (.list .bytes)))], result := (.option (.pair .nat (.pair .nat (.list .bytes)))), - body := (.call 97 [(.var 1), (.var 0), (.var 2)]) }) ::( - { parameters := [0, 1], types := [.bytes, .nat], result := (.option .nat), - body := (.call 98 [(.var 0), (.var 1)]) }) ::( - { parameters := [0], types := [(.fixed .u8)], result := .bool, - body := (.cond (.call 79 [(.var 0), (.value (.fixed .u8) (.u8 65)), (.value (.fixed .u8) (.u8 90))]) (.build .true .bool []) (.cond (.call 79 [(.var 0), (.value (.fixed .u8) (.u8 97)), (.value (.fixed .u8) (.u8 122))]) (.build .true .bool []) (.prim .equal [(.var 0), (.value (.fixed .u8) (.u8 95))]))) }) ::( - { parameters := [0], types := [(.fixed .u8)], result := .bool, - body := (.cond (.call 94 [(.var 0)]) (.build .true .bool []) (.cond (.call 79 [(.var 0), (.value (.fixed .u8) (.u8 48)), (.value (.fixed .u8) (.u8 57))]) (.build .true .bool []) (.cond (.prim .equal [(.var 0), (.value (.fixed .u8) (.u8 63))]) (.build .true .bool []) (.prim .equal [(.var 0), (.value (.fixed .u8) (.u8 39))])))) }) ::( - { parameters := [0, 1], types := [.bytes, (.list .bytes)], result := (.option (.list .bytes)), - body := (.«match» (.option (.list .bytes)) (.var 1) [(.arm .nil [] (.build .some (.option (.list .bytes)) [(.build .cons (.list .bytes) [(.var 0), (.build .nil (.list .bytes) [])])])), (.arm .cons [2, 3] (.cond (.prim .equal [(.var 0), (.var 2)]) (.build .none (.option (.list .bytes)) []) (.cond (.call 54 [(.var 0), (.var 2)]) (.build .some (.option (.list .bytes)) [(.build .cons (.list .bytes) [(.var 0), (.build .cons (.list .bytes) [(.var 2), (.var 3)])])]) (.«match» (.option (.list .bytes)) (.call 96 [(.var 0), (.var 3)]) [(.arm .some [4] (.build .some (.option (.list .bytes)) [(.build .cons (.list .bytes) [(.var 2), (.var 4)])])), (.arm .none [] (.build .none (.option (.list .bytes)) []))]))))]) }) ::( - { parameters := [0, 1, 2], types := [.bytes, (.fixed .u8), (.pair .nat (.pair .nat (.list .bytes)))], result := (.option (.pair .nat (.pair .nat (.list .bytes)))), - body := (.«let» 3 .nat (.first (.var 2)) (.«let» 4 .nat (.first (.second (.var 2))) (.«let» 5 (.list .bytes) (.second (.second (.var 2))) (.«match» (.option (.pair .nat (.pair .nat (.list .bytes)))) (.call 51 [(.var 0), (.var 3)]) [(.arm .some [6] (.cond (.prim .equal [(.var 6), (.var 1)]) (.build .some (.option (.pair .nat (.pair .nat (.list .bytes)))) [(.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.prim .natAdd [(.var 3), (.value .nat (.nat 1))]), (.build .pair (.pair .nat (.list .bytes)) [(.prim .natAdd [(.var 3), (.value .nat (.nat 1))]), (.build .cons (.list .bytes) [(.call 18 [(.var 0), (.var 4), (.prim .natSub [(.var 3), (.var 4)])]), (.var 5)])])])]) (.build .some (.option (.pair .nat (.pair .nat (.list .bytes)))) [(.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.prim .natAdd [(.var 3), (.value .nat (.nat 1))]), (.build .pair (.pair .nat (.list .bytes)) [(.var 4), (.var 5)])])]))), (.arm .none [] (.build .none (.option (.pair .nat (.pair .nat (.list .bytes)))) []))])))) }) ::( - { parameters := [0, 1], types := [.bytes, .nat], result := (.option .nat), - body := (.cond (.call 70 [(.var 0), (.var 1), (.value (.fixed .u8) (.u8 48)), (.value (.fixed .u8) (.u8 57))]) (.build .some (.option .nat) [(.prim .natAdd [(.var 1), (.value .nat (.nat 1))])]) (.build .none (.option .nat) [])) }) ::[]) } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := ((.enum (.adt 0) [{ number := 0, fields := [.bytes, (.option .bytes)] }]) :: - (.enum (.adt 1) [{ number := 0, fields := [(.list (.adt 2)), (.list .bytes)] }, { number := 1, fields := [(.list (.adt 2)), (.list .bytes), .bytes, (.option .bytes)] }, { number := 2, fields := [(.adt 0)] }]) :: - (.enum (.adt 2) [{ number := 0, fields := [.bytes, (.list .bytes), (.option .bytes)] }]) :: - (.enum (.fn 0) [{ number := 3, fields := [] }]) :: - (.apply 0 [(.adt 1), .bytes] (.adt 1) true [{ function := 3, captures := [], functionFallible := true }]) :: - (.enum (.fn 1) [{ number := 12, fields := [] }]) :: - (.apply 1 [(.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (.adt 2)] (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) false [{ function := 12, captures := [], functionFallible := false }]) :: - (.enum (.fn 2) [{ number := 16, fields := [.bytes] }, { number := 92, fields := [(.fixed .u8), .bytes] }]) :: - (.apply 2 [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes)))) true [{ function := 16, captures := [.clone], functionFallible := true }, { function := 92, captures := [.copy, .clone], functionFallible := true }]) :: - (.enum (.fn 3) [{ number := 23, fields := [] }]) :: - (.apply 3 [.nat, .bytes] .nat true [{ function := 23, captures := [], functionFallible := true }]) :: - (.enum (.fn 4) [{ number := 25, fields := [] }]) :: - (.apply 4 [.nat, (.adt 2)] .nat true [{ function := 25, captures := [], functionFallible := true }]) :: - (.enum (.fn 5) [{ number := 28, fields := [] }]) :: - (.apply 5 [(.list (.adt 2)), (.adt 2)] (.list (.adt 2)) false [{ function := 28, captures := [], functionFallible := false }]) :: - (.enum (.fn 6) [{ number := 37, fields := [] }]) :: - (.apply 6 [(.list .bytes), .bytes] (.list .bytes) false [{ function := 37, captures := [], functionFallible := false }]) :: - (.enum (.fn 7) [{ number := 39, fields := [.bytes] }, { number := 63, fields := [.bytes] }, { number := 64, fields := [.nat, .bytes] }, { number := 81, fields := [.bytes, .bytes] }, { number := 86, fields := [.bytes, .nat, .bytes, .nat] }, { number := 93, fields := [.bytes] }]) :: - (.apply 7 [.nat] (.option .nat) true [{ function := 39, captures := [.clone], functionFallible := true }, { function := 63, captures := [.clone], functionFallible := true }, { function := 64, captures := [.copy, .clone], functionFallible := true }, { function := 81, captures := [.clone, .clone], functionFallible := false }, { function := 86, captures := [.clone, .copy, .clone, .copy], functionFallible := true }, { function := 93, captures := [.clone], functionFallible := true }]) :: - (.enum (.fn 8) [{ number := 72, fields := [.bytes] }]) :: - (.apply 8 [(.pair .nat .nat)] (.option (.pair .nat .nat)) true [{ function := 72, captures := [.clone], functionFallible := true }]) :: - (.enum (.fn 9) [{ number := 84, fields := [] }]) :: - (.apply 9 [(.result (.list .bytes) .bytes), .bytes] (.result (.list .bytes) .bytes) true [{ function := 84, captures := [], functionFallible := true }]) :: - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := (.list .bytes) }] (.fallible (.result (.list (.pair .bytes (.list .bytes))) (.adt 0))) (.mk [] (.call (.function 1) [(.call (.function 2) [(.construct (.closure 0 3) []), (.construct (.adt 1 0) [(.construct (.nil (.adt 2)) []), (.clone (.generated .binding 1))]), (.call (.function 4) [(.move (.generated .binding 0))] true)] true), (.move (.generated .binding 1))] false))) :: - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }, { pattern := (.bind (.generated .binding 1)), type := (.list .bytes) }] (.fallible (.result (.list (.pair .bytes (.list .bytes))) (.adt 0))) (.mk [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 1)) [(.mk (.adt 1 0 [(.bind (.generated .binding 7)), .wild]) (.mk [(.mk (.bind (.generated .binding 9)) (some (.result (.list (.pair .bytes (.list .bytes))) (.adt 0))) (.call (.function 5) [(.call (.function 6) [(.call (.function 6) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "expected "))] false), (.call (.function 8) [(.call (.function 9) [(.clone (.generated .binding 1))] true)] true)] false), (.call (.function 7) [(.lit (.str " audit records, found "))] false)] false), (.call (.function 8) [(.call (.function 10) [(.clone (.generated .binding 7))] true)] true)] false), (.construct (.none .bytes) [])] false)), (.mk (.bind (.generated .operand 2)) none (.call (.function 10) [(.clone (.generated .binding 7))] true)), (.mk (.bind (.generated .operand 3)) none (.call (.function 9) [(.move (.generated .binding 1))] true))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] false) (.mk [] (.succeed (.call (.function 11) [(.construct (.closure 1 12) []), (.construct (.ok (.list (.pair .bytes (.list .bytes))) (.adt 0)) [(.construct (.nil (.pair .bytes (.list .bytes))) [])]), (.call (.function 13) [(.move (.generated .binding 7))] false)] false))) (.mk [] (.succeed (.move (.generated .binding 9))))))), (.mk (.adt 1 1 [.wild, .wild, (.bind (.generated .binding 5)), (.bind (.generated .binding 6))]) (.mk [] (.succeed (.call (.function 5) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "unterminated axiom payload: "))] false), (.move (.generated .binding 5))] false), (.move (.generated .binding 6))] false)))), (.mk (.adt 1 2 [(.bind (.generated .binding 2))]) (.mk [] (.succeed (.construct (.err (.list (.pair .bytes (.list .bytes))) (.adt 0)) [(.move (.generated .binding 2))]))))]))) :: - (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 1) }, { pattern := (.bind (.generated .binding 2)), type := (.list .bytes) }] (.fallible (.adt 1)) (.mk [(.mk (.bind (.generated .holder 4)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 4)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 2) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 5)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 5) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]))) :: - (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] (.fallible (.adt 1)) (.mk [] (.call (.function 14) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false))) :: - (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] (.fallible (.list .bytes)) (.mk [(.mk (.bind (.generated .binding 1)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 6))] false)))), (.mk (.bind (.generated .binding 2)) (some (.pair .nat (.pair .nat (.list .bytes)))) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 7)), .wild]) none (.call (.function 15) [(.construct (.closure 2 16) [(.clone (.generated .binding 0))]), (.copy (.generated .binding 1)), (.pair (.lit (.nat 0)) (.pair (.lit (.nat 0)) (.construct (.nil .bytes) [])))] true))] (.move (.generated .part 7))))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 8)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 9))]) none (.clone (.generated .binding 2)))] (.move (.generated .part 9)))))] (.move (.generated .part 8))))), (.mk (.bind (.generated .binding 4)) (some (.list .bytes)) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 10))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 11))]) none (.move (.generated .binding 2)))] (.move (.generated .part 11)))))] (.move (.generated .part 10))))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false) (.mk [] (.succeed (.call (.function 17) [(.construct .cons [(.call (.function 18) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false)))] false), (.move (.generated .binding 4))])] false))) (.mk [] (.succeed (.call (.function 17) [(.move (.generated .binding 4))] false)))))) :: - (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := (.option .bytes) }] (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) (.mk [] (.construct (.err (.list (.pair .bytes (.list .bytes))) (.adt 0)) [(.call (.function 19) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false)]))) :: - (.function (.generated .function 6) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] .bytes (.mk [(.mk (.bind (.generated .operand 16)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 17)) none (.move (.generated .binding 1)))] (.call (.runtime .appendBytes) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false))) :: - (.function (.generated .function 7) [{ pattern := (.bind (.generated .binding 0)), type := .str }] .bytes (.mk [(.mk (.bind (.generated .operand 18)) none (.move (.generated .binding 0)))] (.call (.runtime .utf8Encode) [(.move (.generated .operand 18))] false))) :: - (.function (.generated .function 8) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible .bytes) (.mk [(.mk (.bind (.generated .binding 1)) (some .bytes) (.call (.function 7) [(.lit (.str "0"))] false)), (.mk (.bind (.generated .binding 2)) (some .bytes) (.call (.function 20) [(.block (.mk [(.mk (.bind (.generated .operand 55)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000000000000))] false)), (.mk (.bind (.generated .operand 56)) none (.block (.mk [(.mk (.bind (.generated .operand 53)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000000000000))] false)), (.mk (.bind (.generated .operand 54)) none (.block (.mk [(.mk (.bind (.generated .operand 51)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000000000))] false)), (.mk (.bind (.generated .operand 52)) none (.block (.mk [(.mk (.bind (.generated .operand 49)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000000000))] false)), (.mk (.bind (.generated .operand 50)) none (.block (.mk [(.mk (.bind (.generated .operand 47)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000000000))] false)), (.mk (.bind (.generated .operand 48)) none (.block (.mk [(.mk (.bind (.generated .operand 45)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000000))] false)), (.mk (.bind (.generated .operand 46)) none (.block (.mk [(.mk (.bind (.generated .operand 43)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000000))] false)), (.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.bind (.generated .operand 41)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000000))] false)), (.mk (.bind (.generated .operand 42)) none (.block (.mk [(.mk (.bind (.generated .operand 39)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000))] false)), (.mk (.bind (.generated .operand 40)) none (.block (.mk [(.mk (.bind (.generated .operand 37)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000))] false)), (.mk (.bind (.generated .operand 38)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000))] false)), (.mk (.bind (.generated .operand 36)) none (.block (.mk [(.mk (.bind (.generated .operand 33)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000))] false)), (.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.bind (.generated .operand 31)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000))] false)), (.mk (.bind (.generated .operand 32)) none (.block (.mk [(.mk (.bind (.generated .operand 29)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000))] false)), (.mk (.bind (.generated .operand 30)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000))] false)), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000))] false)), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000))] false)), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100))] false)), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10))] false)), (.mk (.bind (.generated .operand 20)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1))] false))] (.call (.runtime .appendBytes) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 37)), (.move (.generated .operand 38))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 41)), (.move (.generated .operand 42))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 45)), (.move (.generated .operand 46))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 47)), (.move (.generated .operand 48))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 49)), (.move (.generated .operand 50))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 51)), (.move (.generated .operand 52))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 55)), (.move (.generated .operand 56))] false)))] true)), (.mk (.bind (.generated .operand 57)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 58)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 57)), (.move (.generated .operand 58))] false) (.mk [] (.succeed (.move (.generated .binding 1)))) (.mk [] (.succeed (.move (.generated .binding 2))))))) :: - (.function (.generated .function 9) [{ pattern := (.bind (.generated .binding 0)), type := (.list .bytes) }] (.fallible .nat) (.mk [] (.call (.function 22) [(.construct (.closure 3 23) []), (.lit (.nat 0)), (.move (.generated .binding 0))] false))) :: - (.function (.generated .function 10) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.adt 2)) }] (.fallible .nat) (.mk [] (.call (.function 24) [(.construct (.closure 4 25) []), (.lit (.nat 0)), (.move (.generated .binding 0))] false))) :: - (.function (.generated .function 11) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 1) }, { pattern := (.bind (.generated .binding 1)), type := (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) }, { pattern := (.bind (.generated .binding 2)), type := (.list (.adt 2)) }] (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) (.mk [(.mk (.bind (.generated .holder 59)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 59)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 11) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 60)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 60) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]))) :: - (.function (.generated .function 12) [{ pattern := (.bind (.generated .binding 0)), type := (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 2) }] (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) (.mk [] (.call (.function 26) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false))) :: - (.function (.generated .function 13) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.adt 2)) }] (.list (.adt 2)) (.mk [] (.call (.function 27) [(.construct (.closure 5 28) []), (.construct (.nil (.adt 2)) []), (.move (.generated .binding 0))] false))) :: - (.function (.generated .function 14) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] (.fallible (.adt 1)) (.mk [(.mk (.bind (.generated .holder 61)) none (.clone (.generated .binding 0)))] (.matchOn (.move (.generated .holder 61)) [(.mk (.adt 1 0 [(.bind (.generated .binding 8)), (.bind (.generated .binding 9))]) (.mk [(.mk (.bind (.generated .operand 64)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 65)) none (.block (.mk [(.mk (.bind (.generated .operand 63)) none (.call (.function 32) [(.clone (.generated .binding 1))] true))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 63))] false))))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 64)), (.move (.generated .operand 65))] false) (.mk [] (.succeed (.move (.generated .binding 0)))) (.mk [(.mk (.bind (.generated .holder 66)) none (.call (.function 33) [(.call (.function 32) [(.clone (.generated .binding 1))] true)] true))] (.matchOn (.move (.generated .holder 66)) [(.mk .none (.mk [] (.succeed (.call (.function 31) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "unrecognized audit line: "))] false), (.call (.function 32) [(.move (.generated .binding 1))] true)] false), (.call (.function 34) [(.move (.generated .binding 9))] false)] false)))), (.mk (.some (.bind (.generated .binding 10))) (.mk [] (.call (.function 30) [(.move (.generated .binding 8)), (.clone (.generated .binding 9)), (.move (.generated .binding 10)), (.call (.function 34) [(.move (.generated .binding 9))] false)] false)))]))))), (.mk (.adt 1 1 [(.bind (.generated .binding 3)), (.bind (.generated .binding 4)), (.bind (.generated .binding 5)), (.bind (.generated .binding 6))]) (.mk [(.mk (.bind (.generated .holder 62)) none (.call (.function 29) [(.move (.generated .binding 1))] true))] (.matchOn (.move (.generated .holder 62)) [(.mk .none (.mk [] (.succeed (.call (.function 31) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "unterminated axiom payload: "))] false), (.move (.generated .binding 5))] false), (.move (.generated .binding 6))] false)))), (.mk (.some (.bind (.generated .binding 7))) (.mk [] (.call (.function 30) [(.move (.generated .binding 3)), (.move (.generated .binding 4)), (.call (.function 6) [(.call (.function 6) [(.move (.generated .binding 5)), (.call (.function 7) [(.lit (.str " "))] false)] false), (.move (.generated .binding 7))] false), (.move (.generated .binding 6))] false)))]))), (.mk (.adt 1 2 [.wild]) (.mk [] (.succeed (.move (.generated .binding 0)))))]))) :: - (.function (.generated .function 15) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 2) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := (.pair .nat (.pair .nat (.list .bytes))) }] (.fallible (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool)) (.mk [(.mk (.bind (.generated .holder 67)) none (.copy (.generated .binding 1)))] (.cond (.isZero (.generated .holder 67)) (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 67))), (.mk (.bind (.generated .holder 69)) none (.block (.mk [(.mk (.bind (.generated .callee 68)) (some (.fn 2)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 68) [(.clone (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 69)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 15) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))]))))) :: - (.function (.generated .function 16) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := (.pair .nat (.pair .nat (.list .bytes))) }] (.fallible (.option (.pair .nat (.pair .nat (.list .bytes))))) (.mk [] (.call (.function 35) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false))) :: - (.function (.generated .function 17) [{ pattern := (.bind (.generated .binding 0)), type := (.list .bytes) }] (.list .bytes) (.mk [] (.call (.function 36) [(.construct (.closure 6 37) []), (.construct (.nil .bytes) []), (.move (.generated .binding 0))] false))) :: - (.function (.generated .function 18) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := .nat }] .bytes (.mk [(.mk (.bind (.generated .holder 73)) none (.block (.mk [(.mk (.bind (.generated .operand 70)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 71)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 72)) none (.copy (.generated .binding 2)))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 70)), (.move (.generated .operand 71)), (.move (.generated .operand 72))] false))))] (.matchOn (.move (.generated .holder 73)) [(.mk .none (.mk [] (.lit (.bytes (ByteArray.mk #[]))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.move (.generated .binding 3))))]))) :: - (.function (.generated .function 19) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := (.option .bytes) }] (.adt 0) (.mk [] (.construct (.adt 0 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1))]))) :: - (.function (.generated .function 20) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] (.fallible .bytes) (.mk [(.mk (.bind (.generated .binding 1)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 74)), .wild]) none (.call (.function 38) [(.construct (.closure 7 39) [(.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 75)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 75))] false))), (.lit (.nat 0))] true))] (.move (.generated .part 74)))))] (.succeed (.call (.function 18) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.block (.mk [(.mk (.bind (.generated .operand 77)) none (.block (.mk [(.mk (.bind (.generated .operand 76)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 76))] false)))), (.mk (.bind (.generated .operand 78)) none (.copy (.generated .binding 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 77)), (.move (.generated .operand 78))] false)))] false)))) :: - (.function (.generated .function 21) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .bytes (.mk [] (.call (.function 18) [(.call (.function 7) [(.lit (.str "0123456789"))] false), (.block (.mk [(.mk (.bind (.generated .operand 82)) none (.block (.mk [(.mk (.bind (.generated .operand 79)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 80)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 81)) none (.lit (.nat 0)))] (.call (.runtime .natQuot) [(.move (.generated .operand 79)), (.move (.generated .operand 80)), (.move (.generated .operand 81))] false)))), (.mk (.bind (.generated .operand 83)) none (.lit (.nat 10))), (.mk (.bind (.generated .operand 84)) none (.lit (.nat 0)))] (.call (.runtime .natRem) [(.move (.generated .operand 82)), (.move (.generated .operand 83)), (.move (.generated .operand 84))] false))), (.lit (.nat 1))] false))) :: - (.function (.generated .function 22) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 3) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := (.list .bytes) }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 85)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 85)) [(.mk .none (.mk [] (.succeed (.copy (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 22) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 86)) (some (.fn 3)) (.move (.generated .binding 0)))] (.apply (.generated .callee 86) [(.copy (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]))) :: - (.function (.generated .function 23) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := .wild, type := .bytes }] (.fallible .nat) (.mk [(.mk (.bind (.generated .operand 87)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 88)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 87)), (.move (.generated .operand 88))] false))) :: - (.function (.generated .function 24) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 4) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := (.list (.adt 2)) }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 89)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 89)) [(.mk .none (.mk [] (.succeed (.copy (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 24) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 90)) (some (.fn 4)) (.move (.generated .binding 0)))] (.apply (.generated .callee 90) [(.copy (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]))) :: - (.function (.generated .function 25) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := .wild, type := (.adt 2) }] (.fallible .nat) (.mk [(.mk (.bind (.generated .operand 91)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 92)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] false))) :: - (.function (.generated .function 26) [{ pattern := (.bind (.generated .binding 0)), type := (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 2) }] (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)) (.mk [(.mk (.bind (.generated .holder 93)) none (.clone (.generated .binding 0)))] (.matchOn (.move (.generated .holder 93)) [(.mk (.ok (.bind (.generated .binding 3))) (.mk [(.mk (.bind (.generated .binding 5)) (some .bytes) (.block (.mk [(.mk (.bind (.generated .holder 95)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 94))]) (.mk [] (.move (.generated .part 94))))]))] (.matchOn (.move (.generated .holder 95)) [(.mk .none (.mk [] (.lit (.bytes (ByteArray.mk #[]))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.move (.generated .binding 4))))])))), (.mk (.bind (.generated .binding 6)) (some (.result (.list (.pair .bytes (.list .bytes))) (.adt 0))) (.call (.function 5) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "duplicate record for "))] false), (.call (.function 40) [(.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 2 0 [(.bind (.generated .part 96)), .wild, .wild]) (.mk [] (.move (.generated .part 96))))])] false)] false), (.construct .some [(.clone (.generated .binding 5))])] false)), (.mk (.bind (.generated .binding 7)) (some (.result (.list (.pair .bytes (.list .bytes))) (.adt 0))) (.call (.function 5) [(.call (.function 6) [(.call (.function 6) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "expected a record for "))] false), (.call (.function 40) [(.clone (.generated .binding 5))] false)] false), (.call (.function 7) [(.lit (.str ", found "))] false)] false), (.call (.function 40) [(.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 2 0 [(.bind (.generated .part 97)), .wild, .wild]) (.mk [] (.move (.generated .part 97))))])] false)] false), (.construct .some [(.clone (.generated .binding 5))])] false)), (.mk (.bind (.generated .operand 99)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 2 0 [(.bind (.generated .part 98)), .wild, .wild]) (.mk [] (.move (.generated .part 98))))])), (.mk (.bind (.generated .operand 100)) none (.move (.generated .binding 5)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 99)), (.move (.generated .operand 100))] false) (.mk [(.mk (.bind (.generated .holder 103)) none (.call (.function 41) [(.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 2 0 [(.bind (.generated .part 101)), .wild, .wild]) (.mk [] (.move (.generated .part 101))))]), (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 102)), .wild]) (.mk [] (.move (.generated .part 102))))]), (.move (.generated .binding 3))] false))] (.matchOn (.move (.generated .holder 103)) [(.mk .none (.mk [] (.move (.generated .binding 6)))), (.mk (.some (.bind (.generated .binding 8))) (.mk [] (.construct (.ok (.list (.pair .bytes (.list .bytes))) (.adt 0)) [(.move (.generated .binding 8))])))])) (.mk [] (.move (.generated .binding 7)))))), (.mk (.err .wild) (.mk [] (.move (.generated .binding 0))))]))) :: - (.function (.generated .function 27) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 5) }, { pattern := (.bind (.generated .binding 1)), type := (.list (.adt 2)) }, { pattern := (.bind (.generated .binding 2)), type := (.list (.adt 2)) }] (.list (.adt 2)) (.mk [(.mk (.bind (.generated .holder 104)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 104)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 27) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 105)) (some (.fn 5)) (.move (.generated .binding 0)))] (.apply (.generated .callee 105) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]))) :: - (.function (.generated .function 28) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.adt 2)) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 2) }] (.list (.adt 2)) (.mk [] (.construct .cons [(.move (.generated .binding 1)), (.move (.generated .binding 0))]))) :: - (.function (.generated .function 29) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] (.fallible (.option .bytes)) (.mk [(.mk (.bind (.generated .binding 1)) (some .bytes) (.call (.function 32) [(.clone (.generated .binding 0))] true))] (.cond (.call (.function 42) [(.move (.generated .binding 0))] true) (.mk [(.mk (.bind (.generated .operand 107)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 108)) none (.block (.mk [(.mk (.bind (.generated .operand 106)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 106))] false))))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 107)), (.move (.generated .operand 108))] false) (.mk [] (.succeed (.construct (.none .bytes) []))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 1))]))))) (.mk [] (.succeed (.construct (.none .bytes) [])))))) :: - (.function (.generated .function 30) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.adt 2)) }, { pattern := (.bind (.generated .binding 1)), type := (.list .bytes) }, { pattern := (.bind (.generated .binding 2)), type := .bytes }, { pattern := (.bind (.generated .binding 3)), type := (.option .bytes) }] (.fallible (.adt 1)) (.mk [] (.cond (.call (.function 43) [(.clone (.generated .binding 2))] false) (.mk [(.mk (.bind (.generated .holder 109)) none (.call (.function 44) [(.move (.generated .binding 2))] true))] (.matchOn (.move (.generated .holder 109)) [(.mk (.ok (.bind (.generated .binding 5))) (.mk [] (.succeed (.construct (.adt 1 0) [(.construct .cons [(.construct (.adt 2 0) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 110)), .wild]) none (.move (.generated .binding 5)))] (.move (.generated .part 110)))), (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 111))]) none (.move (.generated .binding 5)))] (.move (.generated .part 111)))), (.move (.generated .binding 3))]), (.move (.generated .binding 0))]), (.call (.function 45) [(.move (.generated .binding 1))] false)])))), (.mk (.err (.bind (.generated .binding 4))) (.mk [] (.succeed (.call (.function 31) [(.move (.generated .binding 4)), (.move (.generated .binding 3))] false))))])) (.mk [] (.succeed (.construct (.adt 1 1) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 2)), (.move (.generated .binding 3))])))))) :: - (.function (.generated .function 31) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := (.option .bytes) }] (.adt 1) (.mk [] (.construct (.adt 1 2) [(.call (.function 19) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false)]))) :: - (.function (.generated .function 32) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] (.fallible .bytes) (.mk [(.mk (.bind (.generated .binding 1)) (some .nat) (.call (.function 46) [(.clone (.generated .binding 0))] true)), (.mk (.bind (.generated .binding 2)) (some .nat) (.call (.function 47) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1))] true))] (.succeed (.call (.function 18) [(.move (.generated .binding 0)), (.copy (.generated .binding 1)), (.block (.mk [(.mk (.bind (.generated .operand 112)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 113)) none (.copy (.generated .binding 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 112)), (.move (.generated .operand 113))] false)))] false)))) :: - (.function (.generated .function 33) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] (.fallible (.option .bytes)) (.mk [] (.cond (.call (.function 48) [(.clone (.generated .binding 0)), (.call (.function 7) [(.lit (.str "'"))] false)] false) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 0))]))) (.mk [(.mk (.bind (.generated .holder 114)) none (.call (.function 49) [(.clone (.generated .binding 0)), (.call (.function 7) [(.lit (.str "info: "))] false)] false))] (.matchOn (.move (.generated .holder 114)) [(.mk .none (.mk [] (.call (.function 50) [(.move (.generated .binding 0))] false))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 1))]))))]))))) :: - (.function (.generated .function 34) [{ pattern := (.bind (.generated .binding 0)), type := (.list .bytes) }] (.option .bytes) (.mk [(.mk (.bind (.generated .holder 115)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 115)) [(.mk .none (.mk [] (.construct (.none .bytes) []))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), .wild])) (.mk [] (.construct .some [(.move (.generated .binding 1))])))]))) :: - (.function (.generated .function 35) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := (.pair .nat (.pair .nat (.list .bytes))) }] (.fallible (.option (.pair .nat (.pair .nat (.list .bytes))))) (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 116)), .wild]) none (.clone (.generated .binding 1)))] (.move (.generated .part 116))))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 117)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 118))]) none (.clone (.generated .binding 1)))] (.move (.generated .part 118)))))] (.move (.generated .part 117))))), (.mk (.bind (.generated .binding 4)) (some (.list .bytes)) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 119))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 120))]) none (.move (.generated .binding 1)))] (.move (.generated .part 120)))))] (.move (.generated .part 119))))), (.mk (.bind (.generated .holder 121)) none (.call (.function 51) [(.clone (.generated .binding 0)), (.copy (.generated .binding 2))] false))] (.matchOn (.move (.generated .holder 121)) [(.mk .none (.mk [] (.succeed (.construct (.none (.pair .nat (.pair .nat (.list .bytes)))) [])))), (.mk (.some (.bind (.generated .binding 5))) (.mk [(.mk (.bind (.generated .operand 122)) none (.copy (.generated .binding 5))), (.mk (.bind (.generated .operand 123)) none (.lit (.fixed .u8 10)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 122)), (.move (.generated .operand 123))] false) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 124)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 125)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 124)), (.move (.generated .operand 125))] true))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 126)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 127)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 126)), (.move (.generated .operand 127))] true))) (.construct .cons [(.call (.function 52) [(.call (.function 18) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.block (.mk [(.mk (.bind (.generated .operand 128)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 129)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 128)), (.move (.generated .operand 129))] false)))] false)] false), (.move (.generated .binding 4))])))]))) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 130)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 131)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 130)), (.move (.generated .operand 131))] true))) (.pair (.copy (.generated .binding 3)) (.move (.generated .binding 4))))]))))))]))) :: - (.function (.generated .function 36) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 6) }, { pattern := (.bind (.generated .binding 1)), type := (.list .bytes) }, { pattern := (.bind (.generated .binding 2)), type := (.list .bytes) }] (.list .bytes) (.mk [(.mk (.bind (.generated .holder 132)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 132)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 36) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 133)) (some (.fn 6)) (.move (.generated .binding 0)))] (.apply (.generated .callee 133) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]))) :: - (.function (.generated .function 37) [{ pattern := (.bind (.generated .binding 0)), type := (.list .bytes) }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] (.list .bytes) (.mk [] (.construct .cons [(.move (.generated .binding 1)), (.move (.generated .binding 0))]))) :: - (.function (.generated .function 38) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 7) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.fallible (.pair .nat .bool)) (.mk [(.mk (.bind (.generated .holder 134)) none (.copy (.generated .binding 1)))] (.cond (.isZero (.generated .holder 134)) (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 134))), (.mk (.bind (.generated .holder 136)) none (.block (.mk [(.mk (.bind (.generated .callee 135)) (some (.fn 7)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 135) [(.copy (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 136)) [(.mk .none (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 38) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)))]))))) :: - (.function (.generated .function 39) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.option .nat)) (.mk [] (.call (.function 53) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false))) :: - (.function (.generated .function 40) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] .bytes (.mk [] (.call (.function 6) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "`"))] false), (.move (.generated .binding 0))] false), (.call (.function 7) [(.lit (.str "`"))] false)] false))) :: - (.function (.generated .function 41) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := (.list .bytes) }, { pattern := (.bind (.generated .binding 2)), type := (.list (.pair .bytes (.list .bytes))) }] (.option (.list (.pair .bytes (.list .bytes)))) (.mk [(.mk (.bind (.generated .holder 137)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 137)) [(.mk .none (.mk [] (.construct .some [(.construct .cons [(.pair (.move (.generated .binding 0)) (.move (.generated .binding 1))), (.construct (.nil (.pair .bytes (.list .bytes))) [])])]))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [(.mk (.bind (.generated .operand 139)) none (.clone (.generated .binding 0))), (.mk (.bind (.generated .operand 140)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 138)), .wild]) none (.clone (.generated .binding 3)))] (.move (.generated .part 138)))))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 139)), (.move (.generated .operand 140))] false) (.mk [] (.construct (.none (.list (.pair .bytes (.list .bytes)))) [])) (.mk [] (.cond (.call (.function 54) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 141)), .wild]) none (.clone (.generated .binding 3)))] (.move (.generated .part 141))))] false) (.mk [] (.construct .some [(.construct .cons [(.pair (.move (.generated .binding 0)) (.move (.generated .binding 1))), (.construct .cons [(.move (.generated .binding 3)), (.move (.generated .binding 4))])])])) (.mk [(.mk (.bind (.generated .holder 142)) none (.call (.function 41) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false))] (.matchOn (.move (.generated .holder 142)) [(.mk .none (.mk [] (.construct (.none (.list (.pair .bytes (.list .bytes)))) []))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.construct .some [(.construct .cons [(.move (.generated .binding 3)), (.move (.generated .binding 5))])])))])))))))]))) :: - (.function (.generated .function 42) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] (.fallible .bool) (.mk [(.mk (.bind (.generated .operand 143)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 144)) none (.call (.function 55) [(.move (.generated .binding 0)), (.lit (.nat 0))] true))] (.succeed (.call (.runtime .natLt) [(.move (.generated .operand 143)), (.move (.generated .operand 144))] false)))) :: - (.function (.generated .function 43) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] .bool (.mk [(.mk (.bind (.generated .holder 145)) none (.call (.function 56) [(.clone (.generated .binding 0)), (.call (.function 7) [(.lit (.str "]"))] false)] false))] (.matchOn (.move (.generated .holder 145)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 146)) none (.call (.function 56) [(.move (.generated .binding 0)), (.call (.function 7) [(.lit (.str " does not depend on any axioms"))] false)] false))] (.matchOn (.move (.generated .holder 146)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some .wild) (.mk [] (.lit (.bool true))))]))), (.mk (.some .wild) (.mk [] (.lit (.bool true))))]))) :: - (.function (.generated .function 44) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] (.fallible (.result (.pair .bytes (.list .bytes)) .bytes)) (.mk [(.mk (.bind (.generated .holder 147)) none (.call (.function 49) [(.clone (.generated .binding 0)), (.call (.function 7) [(.lit (.str "'"))] false)] false))] (.matchOn (.move (.generated .holder 147)) [(.mk .none (.mk [] (.succeed (.call (.function 57) [(.move (.generated .binding 0))] false)))), (.mk (.some (.bind (.generated .binding 1))) (.mk [(.mk (.bind (.generated .holder 148)) none (.call (.function 56) [(.clone (.generated .binding 1)), (.call (.function 7) [(.lit (.str "' does not depend on any axioms"))] false)] false))] (.matchOn (.move (.generated .holder 148)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 149)) none (.call (.function 56) [(.move (.generated .binding 1)), (.call (.function 7) [(.lit (.str "]"))] false)] false))] (.matchOn (.move (.generated .holder 149)) [(.mk .none (.mk [] (.succeed (.call (.function 57) [(.move (.generated .binding 0))] false)))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.call (.function 62) [(.move (.generated .binding 0)), (.move (.generated .binding 5))] false)))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [(.mk (.bind (.generated .binding 3)) (some (.result (.pair .bytes (.list .bytes)) .bytes)) (.call (.function 58) [(.clone (.generated .binding 2)), (.construct (.nil .bytes) [])] false)), (.mk (.bind (.generated .binding 4)) (some (.result (.pair .bytes (.list .bytes)) .bytes)) (.call (.function 59) [(.call (.function 60) [(.clone (.generated .binding 2))] false)] false))] (.cond (.call (.function 61) [(.move (.generated .binding 2))] true) (.mk [] (.succeed (.move (.generated .binding 3)))) (.mk [] (.succeed (.move (.generated .binding 4)))))))])))]))) :: - (.function (.generated .function 45) [{ pattern := (.bind (.generated .binding 0)), type := (.list .bytes) }] (.list .bytes) (.mk [(.mk (.bind (.generated .holder 150)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 150)) [(.mk .none (.mk [] (.construct (.nil .bytes) []))), (.mk (.some (.tuple [.wild, (.bind (.generated .binding 2))])) (.mk [] (.move (.generated .binding 2))))]))) :: - (.function (.generated .function 46) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] (.fallible .nat) (.mk [(.mk (.tuple [(.bind (.generated .part 151)), .wild]) none (.call (.function 38) [(.construct (.closure 7 63) [(.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 152)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 152))] false))), (.lit (.nat 0))] true))] (.succeed (.move (.generated .part 151))))) :: - (.function (.generated .function 47) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .nat) (.mk [(.mk (.tuple [(.bind (.generated .part 153)), .wild]) none (.call (.function 38) [(.construct (.closure 7 64) [(.copy (.generated .binding 1)), (.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 154)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 154))] false))), (.block (.mk [(.mk (.bind (.generated .operand 155)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 155))] false)))] true))] (.succeed (.move (.generated .part 153))))) :: - (.function (.generated .function 48) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] .bool (.mk [(.mk (.bind (.generated .holder 160)) none (.block (.mk [(.mk (.bind (.generated .operand 157)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 158)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 159)) none (.block (.mk [(.mk (.bind (.generated .operand 156)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 156))] false))))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 157)), (.move (.generated .operand 158)), (.move (.generated .operand 159))] false))))] (.matchOn (.move (.generated .holder 160)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.bind (.generated .binding 2))) (.mk [(.mk (.bind (.generated .operand 161)) none (.move (.generated .binding 2))), (.mk (.bind (.generated .operand 162)) none (.move (.generated .binding 1)))] (.call (.runtime .equal) [(.move (.generated .operand 161)), (.move (.generated .operand 162))] false)))]))) :: - (.function (.generated .function 49) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] (.option .bytes) (.mk [] (.cond (.call (.function 48) [(.clone (.generated .binding 0)), (.clone (.generated .binding 1))] false) (.mk [] (.construct .some [(.call (.function 18) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 163)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 163))] false))), (.block (.mk [(.mk (.bind (.generated .operand 166)) none (.block (.mk [(.mk (.bind (.generated .operand 164)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 164))] false)))), (.mk (.bind (.generated .operand 167)) none (.block (.mk [(.mk (.bind (.generated .operand 165)) none (.move (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 165))] false))))] (.call (.runtime .natSub) [(.move (.generated .operand 166)), (.move (.generated .operand 167))] false)))] false)])) (.mk [] (.construct (.none .bytes) []))))) :: - (.function (.generated .function 50) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] (.fallible (.option .bytes)) (.mk [(.mk (.bind (.generated .holder 168)) none (.call (.function 65) [(.move (.generated .binding 0)), (.call (.function 7) [(.lit (.str ":"))] false)] true))] (.matchOn (.move (.generated .holder 168)) [(.mk .none (.mk [] (.succeed (.construct (.none .bytes) [])))), (.mk (.some (.bind (.generated .binding 1))) (.mk [(.mk (.bind (.generated .holder 170)) none (.call (.function 65) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 169))]) none (.move (.generated .binding 1)))] (.move (.generated .part 169)))), (.call (.function 7) [(.lit (.str ":"))] false)] true))] (.matchOn (.move (.generated .holder 170)) [(.mk .none (.mk [] (.succeed (.construct (.none .bytes) [])))), (.mk (.some (.bind (.generated .binding 2))) (.mk [(.mk (.bind (.generated .holder 172)) none (.call (.function 65) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 171))]) none (.move (.generated .binding 2)))] (.move (.generated .part 171)))), (.call (.function 7) [(.lit (.str ":"))] false)] true))] (.matchOn (.move (.generated .holder 172)) [(.mk .none (.mk [] (.succeed (.construct (.none .bytes) [])))), (.mk (.some (.bind (.generated .binding 3))) (.mk [(.mk (.bind (.generated .binding 4)) (some .bytes) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 173)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 173))))), (.mk (.bind (.generated .binding 5)) (some .bytes) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 174)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 174))))), (.mk (.bind (.generated .binding 6)) (some .bytes) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 175))]) none (.move (.generated .binding 3)))] (.move (.generated .part 175))))), (.mk (.bind (.generated .binding 7)) (some (.option .bytes)) (.call (.function 66) [(.move (.generated .binding 5)), (.move (.generated .binding 6))] true))] (.cond (.call (.function 67) [(.move (.generated .binding 4))] true) (.mk [] (.succeed (.move (.generated .binding 7)))) (.mk [] (.succeed (.construct (.none .bytes) []))))))])))])))]))) :: - (.function (.generated .function 51) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.option (.fixed .u8)) (.mk [(.mk (.bind (.generated .operand 176)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 177)) none (.copy (.generated .binding 1)))] (.call (.runtime .indexBytes) [(.move (.generated .operand 176)), (.move (.generated .operand 177))] false))) :: - (.function (.generated .function 52) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] .bytes (.mk [] (.cond (.call (.function 68) [(.clone (.generated .binding 0)), (.lit (.bytes (ByteArray.mk #[13])))] false) (.mk [] (.call (.function 18) [(.clone (.generated .binding 0)), (.lit (.nat 0)), (.block (.mk [(.mk (.bind (.generated .operand 179)) none (.block (.mk [(.mk (.bind (.generated .operand 178)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 178))] false)))), (.mk (.bind (.generated .operand 180)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 179)), (.move (.generated .operand 180))] false)))] false)) (.mk [] (.move (.generated .binding 0)))))) :: - (.function (.generated .function 53) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.option .nat)) (.mk [] (.cond (.call (.function 69) [(.move (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 48))] false) (.mk [] (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 181)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 182)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 181)), (.move (.generated .operand 182))] true)))]))) (.mk [] (.succeed (.construct (.none .nat) [])))))) :: - (.function (.generated .function 54) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] .bool (.mk [(.mk (.bind (.generated .operand 187)) none (.block (.mk [(.mk (.bind (.generated .operand 183)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 184)) none (.move (.generated .binding 1)))] (.call (.runtime .compareBytes) [(.move (.generated .operand 183)), (.move (.generated .operand 184))] false)))), (.mk (.bind (.generated .operand 188)) none (.block (.mk [(.mk (.bind (.generated .operand 185)) none (.lit (.bytes (ByteArray.mk #[])))), (.mk (.bind (.generated .operand 186)) none (.lit (.bytes (ByteArray.mk #[1]))))] (.call (.runtime .compareBytes) [(.move (.generated .operand 185)), (.move (.generated .operand 186))] false))))] (.call (.runtime .equal) [(.move (.generated .operand 187)), (.move (.generated .operand 188))] false))) :: - (.function (.generated .function 55) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .nat) (.mk [] (.cond (.cond (.call (.function 70) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 9)), (.lit (.fixed .u8 13))] false) (.mk [] (.lit (.bool true))) (.mk [] (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 32))] false))) (.mk [] (.succeed (.lit (.nat 1)))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 194))] false) (.mk [] (.cond (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 189)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 190)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 189)), (.move (.generated .operand 190))] true))), (.lit (.fixed .u8 133))] false) (.mk [] (.lit (.bool true))) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 191)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 192)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 191)), (.move (.generated .operand 192))] true))), (.lit (.fixed .u8 160))] false))) (.mk [] (.succeed (.lit (.nat 2)))) (.mk [] (.succeed (.lit (.nat 0)))))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 225))] false) (.mk [] (.cond (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 193)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 194)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 193)), (.move (.generated .operand 194))] true))), (.lit (.fixed .u8 154))] false) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 195)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 196)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 195)), (.move (.generated .operand 196))] true))), (.lit (.fixed .u8 128))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 226))] false) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 197)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 198)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 197)), (.move (.generated .operand 198))] true))), (.lit (.fixed .u8 128))] false) (.mk [] (.cond (.cond (.call (.function 70) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 199)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 200)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 199)), (.move (.generated .operand 200))] true))), (.lit (.fixed .u8 128)), (.lit (.fixed .u8 138))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 201)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 202)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 201)), (.move (.generated .operand 202))] true))), (.lit (.fixed .u8 168))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 203)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 204)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 203)), (.move (.generated .operand 204))] true))), (.lit (.fixed .u8 169))] false) (.mk [] (.lit (.bool true))) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 205)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 206)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 205)), (.move (.generated .operand 206))] true))), (.lit (.fixed .u8 175))] false))))))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))) (.mk [] (.cond (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 207)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 208)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 207)), (.move (.generated .operand 208))] true))), (.lit (.fixed .u8 129))] false) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 209)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 210)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 209)), (.move (.generated .operand 210))] true))), (.lit (.fixed .u8 159))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 227))] false) (.mk [] (.cond (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 211)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 212)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 211)), (.move (.generated .operand 212))] true))), (.lit (.fixed .u8 128))] false) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 213)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 214)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 213)), (.move (.generated .operand 214))] true))), (.lit (.fixed .u8 128))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))) (.mk [] (.succeed (.lit (.nat 0))))))))))))))) :: - (.function (.generated .function 56) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] (.option .bytes) (.mk [] (.cond (.call (.function 68) [(.clone (.generated .binding 0)), (.clone (.generated .binding 1))] false) (.mk [] (.construct .some [(.call (.function 18) [(.clone (.generated .binding 0)), (.lit (.nat 0)), (.block (.mk [(.mk (.bind (.generated .operand 217)) none (.block (.mk [(.mk (.bind (.generated .operand 215)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 215))] false)))), (.mk (.bind (.generated .operand 218)) none (.block (.mk [(.mk (.bind (.generated .operand 216)) none (.move (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 216))] false))))] (.call (.runtime .natSub) [(.move (.generated .operand 217)), (.move (.generated .operand 218))] false)))] false)])) (.mk [] (.construct (.none .bytes) []))))) :: - (.function (.generated .function 57) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] (.result (.pair .bytes (.list .bytes)) .bytes) (.mk [] (.call (.function 59) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "unrecognized axiom payload: "))] false), (.move (.generated .binding 0))] false)] false))) :: - (.function (.generated .function 58) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := (.list .bytes) }] (.result (.pair .bytes (.list .bytes)) .bytes) (.mk [] (.construct (.ok (.pair .bytes (.list .bytes)) .bytes) [(.pair (.move (.generated .binding 0)) (.move (.generated .binding 1)))]))) :: - (.function (.generated .function 59) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] (.result (.pair .bytes (.list .bytes)) .bytes) (.mk [] (.construct (.err (.pair .bytes (.list .bytes)) .bytes) [(.move (.generated .binding 0))]))) :: - (.function (.generated .function 60) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] .bytes (.mk [] (.call (.function 6) [(.call (.function 40) [(.move (.generated .binding 0))] false), (.call (.function 7) [(.lit (.str " is not a Lean name"))] false)] false))) :: - (.function (.generated .function 61) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] (.fallible .bool) (.mk [(.mk (.bind (.generated .operand 222)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 219))]) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 220)), .wild]) none (.call (.function 71) [(.construct (.closure 8 72) [(.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 221)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 221))] false))), (.pair (.lit (.nat 0)) (.lit (.nat 0)))] true))] (.move (.generated .part 220)))))] (.move (.generated .part 219))))), (.mk (.bind (.generated .operand 223)) none (.lit (.nat 1)))] (.succeed (.call (.runtime .natEq) [(.move (.generated .operand 222)), (.move (.generated .operand 223))] false)))) :: - (.function (.generated .function 62) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] (.fallible (.result (.pair .bytes (.list .bytes)) .bytes)) (.mk [(.mk (.bind (.generated .holder 224)) none (.call (.function 73) [(.move (.generated .binding 1)), (.call (.function 7) [(.lit (.str "' depends on axioms: ["))] false)] true))] (.matchOn (.move (.generated .holder 224)) [(.mk .none (.mk [] (.succeed (.call (.function 57) [(.move (.generated .binding 0))] false)))), (.mk (.some (.bind (.generated .binding 2))) (.mk [(.mk (.bind (.generated .binding 3)) (some .bytes) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 225)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 225))))), (.mk (.bind (.generated .binding 4)) (some .bytes) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 226))]) none (.move (.generated .binding 2)))] (.move (.generated .part 226))))), (.mk (.bind (.generated .binding 5)) (some (.result (.pair .bytes (.list .bytes)) .bytes)) (.call (.function 74) [(.clone (.generated .binding 3)), (.move (.generated .binding 4))] true)), (.mk (.bind (.generated .binding 6)) (some (.result (.pair .bytes (.list .bytes)) .bytes)) (.call (.function 59) [(.call (.function 60) [(.clone (.generated .binding 3))] false)] false))] (.cond (.call (.function 61) [(.move (.generated .binding 3))] true) (.mk [] (.succeed (.move (.generated .binding 5)))) (.mk [] (.succeed (.move (.generated .binding 6)))))))]))) :: - (.function (.generated .function 63) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.option .nat)) (.mk [(.mk (.bind (.generated .operand 227)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 228)) none (.call (.function 55) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1))] true))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 227)), (.move (.generated .operand 228))] false) (.mk [] (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 229)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 230)) none (.call (.function 55) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 229)), (.move (.generated .operand 230))] true)))]))) (.mk [] (.succeed (.construct (.none .nat) [])))))) :: - (.function (.generated .function 64) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .bytes }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.fallible (.option .nat)) (.mk [(.mk (.bind (.generated .operand 231)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 232)) none (.call (.function 75) [(.clone (.generated .binding 1)), (.copy (.generated .binding 2))] true))] (.cond (.cond (.call (.runtime .natLt) [(.move (.generated .operand 231)), (.move (.generated .operand 232))] false) (.mk [(.mk (.bind (.generated .operand 235)) none (.block (.mk [(.mk (.bind (.generated .operand 233)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 234)) none (.call (.function 75) [(.clone (.generated .binding 1)), (.copy (.generated .binding 2))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 233)), (.move (.generated .operand 234))] true)))), (.mk (.bind (.generated .operand 236)) none (.copy (.generated .binding 2)))] (.call (.runtime .natLe) [(.move (.generated .operand 235)), (.move (.generated .operand 236))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 237)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 238)) none (.call (.function 75) [(.move (.generated .binding 1)), (.copy (.generated .binding 2))] true))] (.call (.runtime .natSub) [(.move (.generated .operand 237)), (.move (.generated .operand 238))] false)))]))) (.mk [] (.succeed (.construct (.none .nat) [])))))) :: - (.function (.generated .function 65) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] (.fallible (.option (.pair .bytes .bytes))) (.mk [(.mk (.bind (.generated .holder 239)) none (.call (.function 76) [(.clone (.generated .binding 0)), (.clone (.generated .binding 1))] true))] (.matchOn (.move (.generated .holder 239)) [(.mk .none (.mk [] (.succeed (.construct (.none (.pair .bytes .bytes)) [])))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct .some [(.pair (.call (.function 18) [(.clone (.generated .binding 0)), (.lit (.nat 0)), (.copy (.generated .binding 2))] false) (.call (.function 18) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 241)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 242)) none (.block (.mk [(.mk (.bind (.generated .operand 240)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 240))] false))))] (.call (.runtime .natAdd) [(.move (.generated .operand 241)), (.move (.generated .operand 242))] true))), (.block (.mk [(.mk (.bind (.generated .operand 247)) none (.block (.mk [(.mk (.bind (.generated .operand 243)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 243))] false)))), (.mk (.bind (.generated .operand 248)) none (.block (.mk [(.mk (.bind (.generated .operand 245)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 246)) none (.block (.mk [(.mk (.bind (.generated .operand 244)) none (.move (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 244))] false))))] (.call (.runtime .natAdd) [(.move (.generated .operand 245)), (.move (.generated .operand 246))] true))))] (.call (.runtime .natSub) [(.move (.generated .operand 247)), (.move (.generated .operand 248))] false)))] false))]))))]))) :: - (.function (.generated .function 66) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] (.fallible (.option .bytes)) (.mk [(.mk (.bind (.generated .holder 249)) none (.call (.function 65) [(.clone (.generated .binding 0)), (.call (.function 7) [(.lit (.str "-"))] false)] true))] (.matchOn (.move (.generated .holder 249)) [(.mk .none (.mk [(.mk (.bind (.generated .binding 9)) (some (.option .bytes)) (.call (.function 77) [(.move (.generated .binding 1))] false))] (.cond (.call (.function 67) [(.move (.generated .binding 0))] true) (.mk [] (.succeed (.move (.generated .binding 9)))) (.mk [] (.succeed (.construct (.none .bytes) [])))))), (.mk (.some (.bind (.generated .binding 2))) (.mk [(.mk (.bind (.generated .binding 3)) (some .bytes) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 250)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 250))))), (.mk (.bind (.generated .binding 4)) (some .bytes) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 251))]) none (.move (.generated .binding 2)))] (.move (.generated .part 251))))), (.mk (.bind (.generated .holder 252)) none (.call (.function 65) [(.move (.generated .binding 1)), (.call (.function 7) [(.lit (.str ":"))] false)] true))] (.matchOn (.move (.generated .holder 252)) [(.mk .none (.mk [] (.succeed (.construct (.none .bytes) [])))), (.mk (.some (.bind (.generated .binding 5))) (.mk [(.mk (.bind (.generated .binding 6)) (some .bytes) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 253)), .wild]) none (.move (.generated .binding 5)))] (.move (.generated .part 253))))), (.mk (.bind (.generated .binding 7)) (some .bytes) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 254))]) none (.move (.generated .binding 5)))] (.move (.generated .part 254))))), (.mk (.bind (.generated .binding 8)) (some (.option .bytes)) (.call (.function 77) [(.move (.generated .binding 7))] false))] (.cond (.call (.function 67) [(.move (.generated .binding 3))] true) (.mk [] (.cond (.call (.function 67) [(.move (.generated .binding 4))] true) (.mk [] (.cond (.call (.function 67) [(.move (.generated .binding 6))] true) (.mk [] (.succeed (.move (.generated .binding 8)))) (.mk [] (.succeed (.construct (.none .bytes) []))))) (.mk [] (.succeed (.construct (.none .bytes) []))))) (.mk [] (.succeed (.construct (.none .bytes) []))))))])))]))) :: - (.function (.generated .function 67) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] (.fallible .bool) (.mk [] (.call (.function 78) [(.call (.function 32) [(.move (.generated .binding 0))] true)] false))) :: - (.function (.generated .function 68) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] .bool (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 255)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 255))] false)))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 256)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 256))] false)))), (.mk (.bind (.generated .operand 257)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 258)) none (.copy (.generated .binding 2)))] (.cond (.call (.runtime .natLe) [(.move (.generated .operand 257)), (.move (.generated .operand 258))] false) (.mk [(.mk (.bind (.generated .holder 264)) none (.block (.mk [(.mk (.bind (.generated .operand 261)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 262)) none (.block (.mk [(.mk (.bind (.generated .operand 259)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 260)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 259)), (.move (.generated .operand 260))] false)))), (.mk (.bind (.generated .operand 263)) none (.copy (.generated .binding 3)))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 261)), (.move (.generated .operand 262)), (.move (.generated .operand 263))] false))))] (.matchOn (.move (.generated .holder 264)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.bind (.generated .binding 4))) (.mk [(.mk (.bind (.generated .operand 265)) none (.move (.generated .binding 4))), (.mk (.bind (.generated .operand 266)) none (.move (.generated .binding 1)))] (.call (.runtime .equal) [(.move (.generated .operand 265)), (.move (.generated .operand 266))] false)))])) (.mk [] (.lit (.bool false)))))) :: - (.function (.generated .function 69) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := (.fixed .u8) }] .bool (.mk [(.mk (.bind (.generated .holder 267)) none (.call (.function 51) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 267)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.bind (.generated .binding 3))) (.mk [(.mk (.bind (.generated .operand 268)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 269)) none (.copy (.generated .binding 2)))] (.call (.runtime .equal) [(.move (.generated .operand 268)), (.move (.generated .operand 269))] false)))]))) :: - (.function (.generated .function 70) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := (.fixed .u8) }, { pattern := (.bind (.generated .binding 3)), type := (.fixed .u8) }] .bool (.mk [(.mk (.bind (.generated .holder 270)) none (.call (.function 51) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 270)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 79) [(.copy (.generated .binding 4)), (.copy (.generated .binding 2)), (.copy (.generated .binding 3))] false)))]))) :: - (.function (.generated .function 71) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 8) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := (.pair .nat .nat) }] (.fallible (.pair (.pair .nat .nat) .bool)) (.mk [(.mk (.bind (.generated .holder 271)) none (.copy (.generated .binding 1)))] (.cond (.isZero (.generated .holder 271)) (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 271))), (.mk (.bind (.generated .holder 273)) none (.block (.mk [(.mk (.bind (.generated .callee 272)) (some (.fn 8)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 272) [(.copy (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 273)) [(.mk .none (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 71) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)))]))))) :: - (.function (.generated .function 72) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := (.pair .nat .nat) }] (.fallible (.option (.pair .nat .nat))) (.mk [] (.call (.function 80) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false))) :: - (.function (.generated .function 73) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] (.fallible (.option (.pair .bytes .bytes))) (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 274)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 274))] false)))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 275)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 275))] false)))), (.mk (.bind (.generated .operand 276)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 277)) none (.copy (.generated .binding 3)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 276)), (.move (.generated .operand 277))] false) (.mk [] (.succeed (.construct (.none (.pair .bytes .bytes)) []))) (.mk [(.mk (.bind (.generated .binding 4)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 278)), .wild]) none (.call (.function 38) [(.construct (.closure 7 81) [(.clone (.generated .binding 1)), (.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 279)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 280)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 279)), (.move (.generated .operand 280))] true))), (.block (.mk [(.mk (.bind (.generated .operand 281)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 282)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 281)), (.move (.generated .operand 282))] false)))] true))] (.move (.generated .part 278)))))] (.cond (.call (.function 82) [(.clone (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 4))] false) (.mk [] (.succeed (.construct .some [(.pair (.call (.function 18) [(.clone (.generated .binding 0)), (.lit (.nat 0)), (.copy (.generated .binding 4))] false) (.call (.function 18) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 283)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 284)) none (.copy (.generated .binding 3)))] (.call (.runtime .natAdd) [(.move (.generated .operand 283)), (.move (.generated .operand 284))] true))), (.block (.mk [(.mk (.bind (.generated .operand 287)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 288)) none (.block (.mk [(.mk (.bind (.generated .operand 285)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 286)) none (.copy (.generated .binding 3)))] (.call (.runtime .natAdd) [(.move (.generated .operand 285)), (.move (.generated .operand 286))] true))))] (.call (.runtime .natSub) [(.move (.generated .operand 287)), (.move (.generated .operand 288))] false)))] false))]))) (.mk [] (.succeed (.construct (.none (.pair .bytes .bytes)) [])))))))) :: - (.function (.generated .function 74) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] (.fallible (.result (.pair .bytes (.list .bytes)) .bytes)) (.mk [(.mk (.bind (.generated .holder 289)) none (.call (.function 83) [(.construct (.closure 9 84) []), (.construct (.ok (.list .bytes) .bytes) [(.construct (.nil .bytes) [])]), (.call (.function 85) [(.move (.generated .binding 1)), (.lit (.fixed .u8 44))] true)] true))] (.matchOn (.move (.generated .holder 289)) [(.mk (.ok (.bind (.generated .binding 3))) (.mk [(.mk (.bind (.generated .holder 290)) none (.clone (.generated .binding 3)))] (.matchOn (.uncons (.generated .holder 290)) [(.mk .none (.mk [] (.succeed (.call (.function 59) [(.call (.function 7) [(.lit (.str "an axiom list cannot be empty"))] false)] false)))), (.mk (.some (.tuple [.wild, .wild])) (.mk [] (.succeed (.call (.function 58) [(.move (.generated .binding 0)), (.move (.generated .binding 3))] false))))]))), (.mk (.err (.bind (.generated .binding 2))) (.mk [] (.succeed (.call (.function 59) [(.move (.generated .binding 2))] false))))]))) :: - (.function (.generated .function 75) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .operand 291)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 292)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 291)), (.move (.generated .operand 292))] false) (.mk [] (.succeed (.lit (.nat 0)))) (.mk [(.mk (.bind (.generated .operand 295)) none (.call (.function 55) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 293)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 294)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 293)), (.move (.generated .operand 294))] false)))] true)), (.mk (.bind (.generated .operand 296)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 295)), (.move (.generated .operand 296))] false) (.mk [] (.succeed (.lit (.nat 1)))) (.mk [(.mk (.bind (.generated .operand 297)) none (.lit (.nat 2))), (.mk (.bind (.generated .operand 298)) none (.copy (.generated .binding 1)))] (.cond (.cond (.call (.runtime .natLe) [(.move (.generated .operand 297)), (.move (.generated .operand 298))] false) (.mk [(.mk (.bind (.generated .operand 301)) none (.call (.function 55) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 299)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 300)) none (.lit (.nat 2)))] (.call (.runtime .natSub) [(.move (.generated .operand 299)), (.move (.generated .operand 300))] false)))] true)), (.mk (.bind (.generated .operand 302)) none (.lit (.nat 2)))] (.call (.runtime .natEq) [(.move (.generated .operand 301)), (.move (.generated .operand 302))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 2)))) (.mk [(.mk (.bind (.generated .operand 303)) none (.lit (.nat 3))), (.mk (.bind (.generated .operand 304)) none (.copy (.generated .binding 1)))] (.cond (.cond (.call (.runtime .natLe) [(.move (.generated .operand 303)), (.move (.generated .operand 304))] false) (.mk [(.mk (.bind (.generated .operand 307)) none (.call (.function 55) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 305)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 306)) none (.lit (.nat 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 305)), (.move (.generated .operand 306))] false)))] true)), (.mk (.bind (.generated .operand 308)) none (.lit (.nat 3)))] (.call (.runtime .natEq) [(.move (.generated .operand 307)), (.move (.generated .operand 308))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0))))))))))))) :: - (.function (.generated .function 76) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] (.fallible (.option .nat)) (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 309)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 309))] false)))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 310)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 310))] false)))), (.mk (.bind (.generated .binding 4)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 311)), .wild]) none (.call (.function 38) [(.construct (.closure 7 86) [(.clone (.generated .binding 1)), (.copy (.generated .binding 3)), (.clone (.generated .binding 0)), (.copy (.generated .binding 2))]), (.block (.mk [(.mk (.bind (.generated .operand 312)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 313)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 312)), (.move (.generated .operand 313))] true))), (.lit (.nat 0))] true))] (.move (.generated .part 311)))))] (.cond (.call (.function 82) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 4))] false) (.mk [] (.succeed (.construct .some [(.copy (.generated .binding 4))]))) (.mk [] (.succeed (.construct (.none .nat) [])))))) :: - (.function (.generated .function 77) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] (.option .bytes) (.mk [(.mk (.bind (.generated .holder 314)) none (.call (.function 49) [(.move (.generated .binding 0)), (.call (.function 7) [(.lit (.str " "))] false)] false))] (.matchOn (.move (.generated .holder 314)) [(.mk .none (.mk [] (.construct (.none .bytes) []))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.call (.function 49) [(.move (.generated .binding 1)), (.call (.function 7) [(.lit (.str "info: "))] false)] false)))]))) :: - (.function (.generated .function 78) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] (.fallible .bool) (.mk [(.mk (.bind (.generated .binding 2)) (some .bytes) (.block (.mk [(.mk (.bind (.generated .holder 315)) none (.call (.function 49) [(.clone (.generated .binding 0)), (.call (.function 7) [(.lit (.str "+"))] false)] false))] (.matchOn (.move (.generated .holder 315)) [(.mk .none (.mk [] (.move (.generated .binding 0)))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.move (.generated .binding 1))))])))), (.mk (.bind (.generated .binding 3)) (some .bool) (.call (.function 87) [(.call (.function 20) [(.clone (.generated .binding 2))] true)] false)), (.mk (.bind (.generated .operand 317)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 318)) none (.block (.mk [(.mk (.bind (.generated .operand 316)) none (.clone (.generated .binding 2)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 316))] false))))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 317)), (.move (.generated .operand 318))] false) (.mk [] (.cond (.call (.function 88) [(.move (.generated .binding 2))] true) (.mk [] (.succeed (.copy (.generated .binding 3)))) (.mk [] (.succeed (.lit (.bool false)))))) (.mk [] (.succeed (.lit (.bool false))))))) :: - (.function (.generated .function 79) [{ pattern := (.bind (.generated .binding 0)), type := (.fixed .u8) }, { pattern := (.bind (.generated .binding 1)), type := (.fixed .u8) }, { pattern := (.bind (.generated .binding 2)), type := (.fixed .u8) }] .bool (.mk [(.mk (.bind (.generated .holder 321)) none (.block (.mk [(.mk (.bind (.generated .operand 319)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 320)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedSub .u8)) [(.move (.generated .operand 319)), (.move (.generated .operand 320))] false))))] (.matchOn (.move (.generated .holder 321)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some .wild) (.mk [(.mk (.bind (.generated .holder 324)) none (.block (.mk [(.mk (.bind (.generated .operand 322)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 323)) none (.copy (.generated .binding 0)))] (.call (.runtime (.checkedSub .u8)) [(.move (.generated .operand 322)), (.move (.generated .operand 323))] false))))] (.matchOn (.move (.generated .holder 324)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some .wild) (.mk [] (.lit (.bool true))))])))]))) :: - (.function (.generated .function 80) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := (.pair .nat .nat) }] (.fallible (.option (.pair .nat .nat))) (.mk [(.mk (.bind (.generated .operand 326)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 325))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 325))))), (.mk (.bind (.generated .operand 327)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 326)), (.move (.generated .operand 327))] false) (.mk [] (.succeed (.construct (.none (.pair .nat .nat)) []))) (.mk [(.mk (.bind (.generated .holder 329)) none (.call (.function 51) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 328)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 328))))] false))] (.matchOn (.move (.generated .holder 329)) [(.mk .none (.mk [] (.succeed (.construct (.none (.pair .nat .nat)) [])))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 331)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 330)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 330))))), (.mk (.bind (.generated .operand 332)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 331)), (.move (.generated .operand 332))] true))) (.call (.function 89) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 333))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 333)))), (.copy (.generated .binding 2))] false))]))))]))))) :: - (.function (.generated .function 81) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .bytes }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.option .nat) (.mk [] (.call (.function 90) [(.move (.generated .binding 1)), (.move (.generated .binding 0)), (.copy (.generated .binding 2))] false))) :: - (.function (.generated .function 82) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .bytes }, { pattern := (.bind (.generated .binding 2)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .holder 338)) none (.block (.mk [(.mk (.bind (.generated .operand 335)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 336)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 337)) none (.block (.mk [(.mk (.bind (.generated .operand 334)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 334))] false))))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 335)), (.move (.generated .operand 336)), (.move (.generated .operand 337))] false))))] (.matchOn (.move (.generated .holder 338)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.bind (.generated .binding 3))) (.mk [(.mk (.bind (.generated .operand 339)) none (.move (.generated .binding 3))), (.mk (.bind (.generated .operand 340)) none (.move (.generated .binding 1)))] (.call (.runtime .equal) [(.move (.generated .operand 339)), (.move (.generated .operand 340))] false)))]))) :: - (.function (.generated .function 83) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 9) }, { pattern := (.bind (.generated .binding 1)), type := (.result (.list .bytes) .bytes) }, { pattern := (.bind (.generated .binding 2)), type := (.list .bytes) }] (.fallible (.result (.list .bytes) .bytes)) (.mk [(.mk (.bind (.generated .holder 341)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 341)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 83) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 342)) (some (.fn 9)) (.move (.generated .binding 0)))] (.apply (.generated .callee 342) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]))) :: - (.function (.generated .function 84) [{ pattern := (.bind (.generated .binding 0)), type := (.result (.list .bytes) .bytes) }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] (.fallible (.result (.list .bytes) .bytes)) (.mk [] (.call (.function 91) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false))) :: - (.function (.generated .function 85) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := (.fixed .u8) }] (.fallible (.list .bytes)) (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 343)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 343))] false)))), (.mk (.bind (.generated .binding 3)) (some (.pair .nat (.pair .nat (.list .bytes)))) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 344)), .wild]) none (.call (.function 15) [(.construct (.closure 2 92) [(.copy (.generated .binding 1)), (.clone (.generated .binding 0))]), (.copy (.generated .binding 2)), (.pair (.lit (.nat 0)) (.pair (.lit (.nat 0)) (.construct (.nil .bytes) [])))] true))] (.move (.generated .part 344))))), (.mk (.bind (.generated .binding 4)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 345)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 346))]) none (.clone (.generated .binding 3)))] (.move (.generated .part 346)))))] (.move (.generated .part 345)))))] (.succeed (.call (.function 17) [(.construct .cons [(.call (.function 18) [(.move (.generated .binding 0)), (.copy (.generated .binding 4)), (.block (.mk [(.mk (.bind (.generated .operand 347)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 348)) none (.copy (.generated .binding 4)))] (.call (.runtime .natSub) [(.move (.generated .operand 347)), (.move (.generated .operand 348))] false)))] false), (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 349))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 350))]) none (.move (.generated .binding 3)))] (.move (.generated .part 350)))))] (.move (.generated .part 349))))])] false)))) :: - (.function (.generated .function 86) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := .bytes }, { pattern := (.bind (.generated .binding 3)), type := .nat }, { pattern := (.bind (.generated .binding 4)), type := .nat }] (.fallible (.option .nat)) (.mk [] (.cond (.call (.function 82) [(.move (.generated .binding 2)), (.move (.generated .binding 0)), (.copy (.generated .binding 4))] false) (.mk [] (.succeed (.construct (.none .nat) []))) (.mk [(.mk (.bind (.generated .operand 353)) none (.block (.mk [(.mk (.bind (.generated .operand 351)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 352)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 351)), (.move (.generated .operand 352))] true)))), (.mk (.bind (.generated .operand 354)) none (.copy (.generated .binding 3)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 353)), (.move (.generated .operand 354))] false) (.mk [] (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 355)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 356)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 355)), (.move (.generated .operand 356))] true)))]))) (.mk [] (.succeed (.construct (.none .nat) [])))))))) :: - (.function (.generated .function 87) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] .bool (.mk [(.mk (.bind (.generated .operand 358)) none (.block (.mk [(.mk (.bind (.generated .operand 357)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 357))] false)))), (.mk (.bind (.generated .operand 359)) none (.lit (.nat 20)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 358)), (.move (.generated .operand 359))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 361)) none (.block (.mk [(.mk (.bind (.generated .operand 360)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 360))] false)))), (.mk (.bind (.generated .operand 362)) none (.lit (.nat 20)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 361)), (.move (.generated .operand 362))] false) (.mk [(.mk (.bind (.generated .operand 369)) none (.block (.mk [(.mk (.bind (.generated .operand 367)) none (.block (.mk [(.mk (.bind (.generated .operand 363)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 364)) none (.call (.function 7) [(.lit (.str "18446744073709551615"))] false))] (.call (.runtime .compareBytes) [(.move (.generated .operand 363)), (.move (.generated .operand 364))] false)))), (.mk (.bind (.generated .operand 368)) none (.block (.mk [(.mk (.bind (.generated .operand 365)) none (.lit (.bytes (ByteArray.mk #[1])))), (.mk (.bind (.generated .operand 366)) none (.lit (.bytes (ByteArray.mk #[0]))))] (.call (.runtime .compareBytes) [(.move (.generated .operand 365)), (.move (.generated .operand 366))] false))))] (.call (.runtime .equal) [(.move (.generated .operand 367)), (.move (.generated .operand 368))] false))))] (.call (.runtime .boolNot) [(.move (.generated .operand 369))] false)) (.mk [] (.lit (.bool false)))))))) :: - (.function (.generated .function 88) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] (.fallible .bool) (.mk [(.mk (.bind (.generated .operand 373)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 370)), .wild]) none (.call (.function 38) [(.construct (.closure 7 93) [(.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 371)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 371))] false))), (.lit (.nat 0))] true))] (.move (.generated .part 370))))), (.mk (.bind (.generated .operand 374)) none (.block (.mk [(.mk (.bind (.generated .operand 372)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 372))] false))))] (.succeed (.call (.runtime .natEq) [(.move (.generated .operand 373)), (.move (.generated .operand 374))] false)))) :: - (.function (.generated .function 89) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := (.fixed .u8) }] .nat (.mk [(.mk (.bind (.generated .operand 375)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 376)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 375)), (.move (.generated .operand 376))] false) (.mk [] (.lit (.nat 2))) (.mk [(.mk (.bind (.generated .operand 377)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 378)) none (.lit (.fixed .u8 46)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 377)), (.move (.generated .operand 378))] false) (.mk [(.mk (.bind (.generated .operand 379)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 380)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 379)), (.move (.generated .operand 380))] false) (.mk [] (.lit (.nat 0))) (.mk [] (.lit (.nat 2))))) (.mk [] (.cond (.call (.function 94) [(.copy (.generated .binding 1))] false) (.mk [] (.lit (.nat 1))) (.mk [(.mk (.bind (.generated .operand 381)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 382)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 381)), (.move (.generated .operand 382))] false) (.mk [] (.cond (.call (.function 95) [(.copy (.generated .binding 1))] false) (.mk [] (.lit (.nat 1))) (.mk [] (.lit (.nat 2))))) (.mk [] (.lit (.nat 2)))))))))))) :: - (.function (.generated .function 90) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .bytes }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.option .nat) (.mk [] (.cond (.call (.function 82) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 2))] false) (.mk [] (.construct (.none .nat) [])) (.mk [(.mk (.bind (.generated .operand 383)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 384)) none (.copy (.generated .binding 2)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 383)), (.move (.generated .operand 384))] false) (.mk [] (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 385)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 386)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 385)), (.move (.generated .operand 386))] false)))])) (.mk [] (.construct (.none .nat) []))))))) :: - (.function (.generated .function 91) [{ pattern := (.bind (.generated .binding 0)), type := (.result (.list .bytes) .bytes) }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] (.fallible (.result (.list .bytes) .bytes)) (.mk [(.mk (.bind (.generated .holder 387)) none (.clone (.generated .binding 0)))] (.matchOn (.move (.generated .holder 387)) [(.mk (.ok (.bind (.generated .binding 3))) (.mk [(.mk (.bind (.generated .binding 4)) (some .bytes) (.call (.function 32) [(.move (.generated .binding 1))] true))] (.cond (.call (.function 61) [(.clone (.generated .binding 4))] true) (.mk [(.mk (.bind (.generated .holder 388)) none (.call (.function 96) [(.clone (.generated .binding 4)), (.move (.generated .binding 3))] false))] (.matchOn (.move (.generated .holder 388)) [(.mk .none (.mk [] (.succeed (.construct (.err (.list .bytes) .bytes) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "duplicate axiom name "))] false), (.call (.function 40) [(.move (.generated .binding 4))] false)] false)])))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.succeed (.construct (.ok (.list .bytes) .bytes) [(.move (.generated .binding 5))]))))])) (.mk [] (.succeed (.construct (.err (.list .bytes) .bytes) [(.call (.function 60) [(.move (.generated .binding 4))] false)])))))), (.mk (.err .wild) (.mk [] (.succeed (.move (.generated .binding 0)))))]))) :: - (.function (.generated .function 92) [{ pattern := (.bind (.generated .binding 0)), type := (.fixed .u8) }, { pattern := (.bind (.generated .binding 1)), type := .bytes }, { pattern := (.bind (.generated .binding 2)), type := (.pair .nat (.pair .nat (.list .bytes))) }] (.fallible (.option (.pair .nat (.pair .nat (.list .bytes))))) (.mk [] (.call (.function 97) [(.move (.generated .binding 1)), (.copy (.generated .binding 0)), (.move (.generated .binding 2))] false))) :: - (.function (.generated .function 93) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.option .nat)) (.mk [] (.call (.function 98) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false))) :: - (.function (.generated .function 94) [{ pattern := (.bind (.generated .binding 0)), type := (.fixed .u8) }] .bool (.mk [] (.cond (.call (.function 79) [(.copy (.generated .binding 0)), (.lit (.fixed .u8 65)), (.lit (.fixed .u8 90))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 79) [(.copy (.generated .binding 0)), (.lit (.fixed .u8 97)), (.lit (.fixed .u8 122))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 389)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 390)) none (.lit (.fixed .u8 95)))] (.call (.runtime .equal) [(.move (.generated .operand 389)), (.move (.generated .operand 390))] false))))))) :: - (.function (.generated .function 95) [{ pattern := (.bind (.generated .binding 0)), type := (.fixed .u8) }] .bool (.mk [] (.cond (.call (.function 94) [(.copy (.generated .binding 0))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 79) [(.copy (.generated .binding 0)), (.lit (.fixed .u8 48)), (.lit (.fixed .u8 57))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 391)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 392)) none (.lit (.fixed .u8 63)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 391)), (.move (.generated .operand 392))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 393)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 394)) none (.lit (.fixed .u8 39)))] (.call (.runtime .equal) [(.move (.generated .operand 393)), (.move (.generated .operand 394))] false))))))))) :: - (.function (.generated .function 96) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := (.list .bytes) }] (.option (.list .bytes)) (.mk [(.mk (.bind (.generated .holder 395)) none (.move (.generated .binding 1)))] (.matchOn (.uncons (.generated .holder 395)) [(.mk .none (.mk [] (.construct .some [(.construct .cons [(.move (.generated .binding 0)), (.construct (.nil .bytes) [])])]))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .operand 396)) none (.clone (.generated .binding 0))), (.mk (.bind (.generated .operand 397)) none (.clone (.generated .binding 2)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 396)), (.move (.generated .operand 397))] false) (.mk [] (.construct (.none (.list .bytes)) [])) (.mk [] (.cond (.call (.function 54) [(.clone (.generated .binding 0)), (.clone (.generated .binding 2))] false) (.mk [] (.construct .some [(.construct .cons [(.move (.generated .binding 0)), (.construct .cons [(.move (.generated .binding 2)), (.move (.generated .binding 3))])])])) (.mk [(.mk (.bind (.generated .holder 398)) none (.call (.function 96) [(.move (.generated .binding 0)), (.move (.generated .binding 3))] false))] (.matchOn (.move (.generated .holder 398)) [(.mk .none (.mk [] (.construct (.none (.list .bytes)) []))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.construct .some [(.construct .cons [(.move (.generated .binding 2)), (.move (.generated .binding 4))])])))])))))))]))) :: - (.function (.generated .function 97) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := (.fixed .u8) }, { pattern := (.bind (.generated .binding 2)), type := (.pair .nat (.pair .nat (.list .bytes))) }] (.fallible (.option (.pair .nat (.pair .nat (.list .bytes))))) (.mk [(.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 399)), .wild]) none (.clone (.generated .binding 2)))] (.move (.generated .part 399))))), (.mk (.bind (.generated .binding 4)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 400)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 401))]) none (.clone (.generated .binding 2)))] (.move (.generated .part 401)))))] (.move (.generated .part 400))))), (.mk (.bind (.generated .binding 5)) (some (.list .bytes)) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 402))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 403))]) none (.move (.generated .binding 2)))] (.move (.generated .part 403)))))] (.move (.generated .part 402))))), (.mk (.bind (.generated .holder 404)) none (.call (.function 51) [(.clone (.generated .binding 0)), (.copy (.generated .binding 3))] false))] (.matchOn (.move (.generated .holder 404)) [(.mk .none (.mk [] (.succeed (.construct (.none (.pair .nat (.pair .nat (.list .bytes)))) [])))), (.mk (.some (.bind (.generated .binding 6))) (.mk [(.mk (.bind (.generated .operand 405)) none (.copy (.generated .binding 6))), (.mk (.bind (.generated .operand 406)) none (.copy (.generated .binding 1)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 405)), (.move (.generated .operand 406))] false) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 407)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 408)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 407)), (.move (.generated .operand 408))] true))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 409)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 410)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 409)), (.move (.generated .operand 410))] true))) (.construct .cons [(.call (.function 18) [(.move (.generated .binding 0)), (.copy (.generated .binding 4)), (.block (.mk [(.mk (.bind (.generated .operand 411)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 412)) none (.copy (.generated .binding 4)))] (.call (.runtime .natSub) [(.move (.generated .operand 411)), (.move (.generated .operand 412))] false)))] false), (.move (.generated .binding 5))])))]))) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 413)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 414)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 413)), (.move (.generated .operand 414))] true))) (.pair (.copy (.generated .binding 4)) (.move (.generated .binding 5))))]))))))]))) :: - (.function (.generated .function 98) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.option .nat)) (.mk [] (.cond (.call (.function 70) [(.move (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 48)), (.lit (.fixed .u8 57))] false) (.mk [] (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 415)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 416)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 415)), (.move (.generated .operand 416))] true)))]))) (.mk [] (.succeed (.construct (.none .nat) [])))))) :: - []) } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [(([(.adt 1), .bytes], (.adt 1)), true), (([(.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (.adt 2)], (.result (.list (.pair .bytes (.list .bytes))) (.adt 0))), false), (([(.pair .nat (.pair .nat (.list .bytes)))], (.option (.pair .nat (.pair .nat (.list .bytes))))), true), (([.nat, .bytes], .nat), true), (([.nat, (.adt 2)], .nat), true), (([(.list (.adt 2)), (.adt 2)], (.list (.adt 2))), false), (([(.list .bytes), .bytes], (.list .bytes)), false), (([.nat], (.option .nat)), true), (([(.pair .nat .nat)], (.option (.pair .nat .nat))), true), (([(.result (.list .bytes) .bytes), .bytes], (.result (.list .bytes) .bytes)), true)] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 1) [(.call (.function 2) [(.construct (.closure 0 3) []), (.construct (.adt 1 0) [(.construct (.nil (.adt 2)) []), (.clone (.generated .binding 1))]), (.call (.function 4) [(.move (.generated .binding 0))] true)] true), (.move (.generated .binding 1))] false), [(1, (.list .bytes), (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.callF (ts := [(.adt 1), (.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.adt 1), .bytes] (.adt 1)), (.adt 1), (.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list (.adt 2)), (.list .bytes)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 1)) [(.mk (.adt 1 0 [(.bind (.generated .binding 7)), .wild]) (.mk [(.mk (.bind (.generated .binding 9)) (some (.result (.list (.pair .bytes (.list .bytes))) (.adt 0))) (.call (.function 5) [(.call (.function 6) [(.call (.function 6) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "expected "))] false), (.call (.function 8) [(.call (.function 9) [(.clone (.generated .binding 1))] true)] true)] false), (.call (.function 7) [(.lit (.str " audit records, found "))] false)] false), (.call (.function 8) [(.call (.function 10) [(.clone (.generated .binding 7))] true)] true)] false), (.construct (.none .bytes) [])] false)), (.mk (.bind (.generated .operand 2)) none (.call (.function 10) [(.clone (.generated .binding 7))] true)), (.mk (.bind (.generated .operand 3)) none (.call (.function 9) [(.move (.generated .binding 1))] true))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] false) (.mk [] (.succeed (.call (.function 11) [(.construct (.closure 1 12) []), (.construct (.ok (.list (.pair .bytes (.list .bytes))) (.adt 0)) [(.construct (.nil (.pair .bytes (.list .bytes))) [])]), (.call (.function 13) [(.move (.generated .binding 7))] false)] false))) (.mk [] (.succeed (.move (.generated .binding 9))))))), (.mk (.adt 1 1 [.wild, .wild, (.bind (.generated .binding 5)), (.bind (.generated .binding 6))]) (.mk [] (.succeed (.call (.function 5) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "unterminated axiom payload: "))] false), (.move (.generated .binding 5))] false), (.move (.generated .binding 6))] false)))), (.mk (.adt 1 2 [(.bind (.generated .binding 2))]) (.mk [] (.succeed (.construct (.err (.list (.pair .bytes (.list .bytes))) (.adt 0)) [(.move (.generated .binding 2))]))))]), [(1, (.list .bytes), (some 1)), (0, (.adt 1), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.adt 1)) (U := []) (view := false) (idx := [2, 1, 0]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(8, (.list .bytes), none), (7, (.list (.adt 2)), (some 7)), (1, (.list .bytes), (some 1)), (0, (.adt 1), (some 0))]) (j := 2) (loads := []) (lets := [(.mk (.bind (.generated .binding 9)) (some (.result (.list (.pair .bytes (.list .bytes))) (.adt 0))) (.call (.function 5) [(.call (.function 6) [(.call (.function 6) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "expected "))] false), (.call (.function 8) [(.call (.function 9) [(.clone (.generated .binding 1))] true)] true)] false), (.call (.function 7) [(.lit (.str " audit records, found "))] false)] false), (.call (.function 8) [(.call (.function 10) [(.clone (.generated .binding 7))] true)] true)] false), (.construct (.none .bytes) [])] false)), (.mk (.bind (.generated .operand 2)) none (.call (.function 10) [(.clone (.generated .binding 7))] true)), (.mk (.bind (.generated .operand 3)) none (.call (.function 9) [(.move (.generated .binding 1))] true))]) (tail := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] false) (.mk [] (.succeed (.call (.function 11) [(.construct (.closure 1 12) []), (.construct (.ok (.list (.pair .bytes (.list .bytes))) (.adt 0)) [(.construct (.nil (.pair .bytes (.list .bytes))) [])]), (.call (.function 13) [(.move (.generated .binding 7))] false)] false))) (.mk [] (.succeed (.move (.generated .binding 9)))))) (Corr.mCons (Γ' := [(6, (.option .bytes), (some 6)), (5, .bytes, (some 5)), (4, (.list .bytes), none), (3, (.list (.adt 2)), none), (1, (.list .bytes), (some 1)), (0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.call (.function 5) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "unterminated axiom payload: "))] false), (.move (.generated .binding 5))] false), (.move (.generated .binding 6))] false))) (Corr.mCons (Γ' := [(2, (.adt 0), (some 2)), (1, (.list .bytes), (some 1)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct (.err (.list (.pair .bytes (.list .bytes))) (.adt 0)) [(.move (.generated .binding 2))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.adt 0)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [.bytes, (.option .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.bytes, (.option .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.adt 2))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := [(.mk (.bind (.generated .operand 2)) none (.call (.function 10) [(.clone (.generated .binding 7))] true)), (.mk (.bind (.generated .operand 3)) none (.call (.function 9) [(.move (.generated .binding 1))] true))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.adt 2))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.call (.function 11) [(.construct (.closure 1 12) []), (.construct (.ok (.list (.pair .bytes (.list .bytes))) (.adt 0)) [(.construct (.nil (.pair .bytes (.list .bytes))) [])]), (.call (.function 13) [(.move (.generated .binding 7))] false)] false))) (lb := []) (tb := (.succeed (.move (.generated .binding 9)))) (Corr.fOfB (Corr.callOps (ts := [(.fn [(.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (.adt 2)] (.result (.list (.pair .bytes (.list .bytes))) (.adt 0))), (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (.list (.adt 2))]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := false) (ff := false) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list (.pair .bytes (.list .bytes)))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.adt 2))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl))))))) rfl rfl rfl)⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 4)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 4)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 2) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 5)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 5) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]), [(2, (.list .bytes), (some 2)), (1, (.adt 1), (some 1)), (0, (.fn [(.adt 1), .bytes] (.adt 1)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .bytes)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .bytes), (some 2)), (1, (.adt 1), (some 1)), (0, (.fn [(.adt 1), .bytes] (.adt 1)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list .bytes), (some 4)), (3, .bytes, (some 3)), (2, (.list .bytes), (some 2)), (1, (.adt 1), (some 1)), (0, (.fn [(.adt 1), .bytes] (.adt 1)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 2) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 5)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 5) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.adt 1), .bytes] (.adt 1)), (.adt 1), (.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 5)) (some (.fn 0)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 5) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true)) (Corr.apply (ps := [(.adt 1), .bytes]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ - -theorem fun3 : FunOK program krate flags 3 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 14) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false), [(1, .bytes, (some 1)), (0, (.adt 1), (some 0))], rfl, rfl, - (Corr.callF (ts := [(.adt 1), .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)⟩⟩ - -theorem fun4 : FunOK program krate flags 4 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 6))] false)))), (.mk (.bind (.generated .binding 2)) (some (.pair .nat (.pair .nat (.list .bytes)))) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 7)), .wild]) none (.call (.function 15) [(.construct (.closure 2 16) [(.clone (.generated .binding 0))]), (.copy (.generated .binding 1)), (.pair (.lit (.nat 0)) (.pair (.lit (.nat 0)) (.construct (.nil .bytes) [])))] true))] (.move (.generated .part 7))))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 8)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 9))]) none (.clone (.generated .binding 2)))] (.move (.generated .part 9)))))] (.move (.generated .part 8))))), (.mk (.bind (.generated .binding 4)) (some (.list .bytes)) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 10))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 11))]) none (.move (.generated .binding 2)))] (.move (.generated .part 11)))))] (.move (.generated .part 10))))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1)))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false) (.mk [] (.succeed (.call (.function 17) [(.construct .cons [(.call (.function 18) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false)))] false), (.move (.generated .binding 4))])] false))) (.mk [] (.succeed (.call (.function 17) [(.move (.generated .binding 4))] false)))), [(0, .bytes, (some 0))], rfl, rfl, - (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 6)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 6))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 7)), .wild]) none (.call (.function 15) [(.construct (.closure 2 16) [(.clone (.generated .binding 0))]), (.copy (.generated .binding 1)), (.pair (.lit (.nat 0)) (.pair (.lit (.nat 0)) (.construct (.nil .bytes) [])))] true))]) (tail := (.move (.generated .part 7))) (Corr.first (ta := (.pair .nat (.pair .nat (.list .bytes)))) (tb := .bool) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes))))), .nat, (.pair .nat (.pair .nat (.list .bytes)))]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [.bytes]) (mask := [false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 8)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 9))]) none (.clone (.generated .binding 2)))] (.move (.generated .part 9)))))]) (tail := (.move (.generated .part 8))) (Corr.first (ta := .nat) (tb := (.list .bytes)) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 9))]) none (.clone (.generated .binding 2)))]) (tail := (.move (.generated .part 9))) (Corr.second (ta := .nat) (tb := (.pair .nat (.list .bytes))) (Corr.var rfl rfl) rfl)) rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 10))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 11))]) none (.move (.generated .binding 2)))] (.move (.generated .part 11)))))]) (tail := (.move (.generated .part 10))) (Corr.second (ta := .nat) (tb := (.list .bytes)) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 11))]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 11))) (Corr.second (ta := .nat) (tb := (.pair .nat (.list .bytes))) (Corr.var rfl rfl) rfl)) rfl)) rfl (Corr.cond (lc := [(.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.call (.function 17) [(.construct .cons [(.call (.function 18) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false)))] false), (.move (.generated .binding 4))])] false))) (lb := []) (tb := (.succeed (.call (.function 17) [(.move (.generated .binding 4))] false))) (Corr.fOfB (Corr.callOps (ts := [(.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.bytes, (.list .bytes)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 3)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.fOfB (Corr.callOps (ts := [(.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))))))))⟩⟩ - -theorem fun5 : FunOK program krate flags 5 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct (.err (.list (.pair .bytes (.list .bytes))) (.adt 0)) [(.call (.function 19) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false)]), [(1, (.option .bytes), (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.build (ts := [(.adt 0)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, (.option .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)⟩⟩ - -theorem fun6 : FunOK program krate flags 6 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 16)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 17)) none (.move (.generated .binding 1)))], (.call (.runtime .appendBytes) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false), [(1, .bytes, (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun7 : FunOK program krate flags 7 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 18)) none (.move (.generated .binding 0)))], (.call (.runtime .utf8Encode) [(.move (.generated .operand 18))] false), [(0, .string, (some 0))], rfl, rfl, - (Corr.prim (ts := [.string]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun8 : FunOK program krate flags 8 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some .bytes) (.call (.function 7) [(.lit (.str "0"))] false)), (.mk (.bind (.generated .binding 2)) (some .bytes) (.call (.function 20) [(.block (.mk [(.mk (.bind (.generated .operand 55)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000000000000))] false)), (.mk (.bind (.generated .operand 56)) none (.block (.mk [(.mk (.bind (.generated .operand 53)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000000000000))] false)), (.mk (.bind (.generated .operand 54)) none (.block (.mk [(.mk (.bind (.generated .operand 51)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000000000))] false)), (.mk (.bind (.generated .operand 52)) none (.block (.mk [(.mk (.bind (.generated .operand 49)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000000000))] false)), (.mk (.bind (.generated .operand 50)) none (.block (.mk [(.mk (.bind (.generated .operand 47)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000000000))] false)), (.mk (.bind (.generated .operand 48)) none (.block (.mk [(.mk (.bind (.generated .operand 45)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000000))] false)), (.mk (.bind (.generated .operand 46)) none (.block (.mk [(.mk (.bind (.generated .operand 43)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000000))] false)), (.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.bind (.generated .operand 41)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000000))] false)), (.mk (.bind (.generated .operand 42)) none (.block (.mk [(.mk (.bind (.generated .operand 39)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000))] false)), (.mk (.bind (.generated .operand 40)) none (.block (.mk [(.mk (.bind (.generated .operand 37)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000))] false)), (.mk (.bind (.generated .operand 38)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000))] false)), (.mk (.bind (.generated .operand 36)) none (.block (.mk [(.mk (.bind (.generated .operand 33)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000))] false)), (.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.bind (.generated .operand 31)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000))] false)), (.mk (.bind (.generated .operand 32)) none (.block (.mk [(.mk (.bind (.generated .operand 29)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000))] false)), (.mk (.bind (.generated .operand 30)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000))] false)), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000))] false)), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000))] false)), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100))] false)), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10))] false)), (.mk (.bind (.generated .operand 20)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1))] false))] (.call (.runtime .appendBytes) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 37)), (.move (.generated .operand 38))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 41)), (.move (.generated .operand 42))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 45)), (.move (.generated .operand 46))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 47)), (.move (.generated .operand 48))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 49)), (.move (.generated .operand 50))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 51)), (.move (.generated .operand 52))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 55)), (.move (.generated .operand 56))] false)))] true)), (.mk (.bind (.generated .operand 57)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 58)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 57)), (.move (.generated .operand 58))] false) (.mk [] (.succeed (.move (.generated .binding 1)))) (.mk [] (.succeed (.move (.generated .binding 2))))), [(0, .nat, (some 0))], rfl, rfl, - (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 55)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000000000000))] false)), (.mk (.bind (.generated .operand 56)) none (.block (.mk [(.mk (.bind (.generated .operand 53)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000000000000))] false)), (.mk (.bind (.generated .operand 54)) none (.block (.mk [(.mk (.bind (.generated .operand 51)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000000000))] false)), (.mk (.bind (.generated .operand 52)) none (.block (.mk [(.mk (.bind (.generated .operand 49)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000000000))] false)), (.mk (.bind (.generated .operand 50)) none (.block (.mk [(.mk (.bind (.generated .operand 47)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000000000))] false)), (.mk (.bind (.generated .operand 48)) none (.block (.mk [(.mk (.bind (.generated .operand 45)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000000))] false)), (.mk (.bind (.generated .operand 46)) none (.block (.mk [(.mk (.bind (.generated .operand 43)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000000))] false)), (.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.bind (.generated .operand 41)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000000))] false)), (.mk (.bind (.generated .operand 42)) none (.block (.mk [(.mk (.bind (.generated .operand 39)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000))] false)), (.mk (.bind (.generated .operand 40)) none (.block (.mk [(.mk (.bind (.generated .operand 37)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000))] false)), (.mk (.bind (.generated .operand 38)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000))] false)), (.mk (.bind (.generated .operand 36)) none (.block (.mk [(.mk (.bind (.generated .operand 33)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000))] false)), (.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.bind (.generated .operand 31)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000))] false)), (.mk (.bind (.generated .operand 32)) none (.block (.mk [(.mk (.bind (.generated .operand 29)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000))] false)), (.mk (.bind (.generated .operand 30)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000))] false)), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000))] false)), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000))] false)), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100))] false)), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10))] false)), (.mk (.bind (.generated .operand 20)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1))] false))] (.call (.runtime .appendBytes) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 37)), (.move (.generated .operand 38))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 41)), (.move (.generated .operand 42))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 45)), (.move (.generated .operand 46))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 47)), (.move (.generated .operand 48))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 49)), (.move (.generated .operand 50))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 51)), (.move (.generated .operand 52))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] false))))]) (tail := (.call (.runtime .appendBytes) [(.move (.generated .operand 55)), (.move (.generated .operand 56))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 53)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000000000000))] false)), (.mk (.bind (.generated .operand 54)) none (.block (.mk [(.mk (.bind (.generated .operand 51)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000000000))] false)), (.mk (.bind (.generated .operand 52)) none (.block (.mk [(.mk (.bind (.generated .operand 49)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000000000))] false)), (.mk (.bind (.generated .operand 50)) none (.block (.mk [(.mk (.bind (.generated .operand 47)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000000000))] false)), (.mk (.bind (.generated .operand 48)) none (.block (.mk [(.mk (.bind (.generated .operand 45)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000000))] false)), (.mk (.bind (.generated .operand 46)) none (.block (.mk [(.mk (.bind (.generated .operand 43)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000000))] false)), (.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.bind (.generated .operand 41)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000000))] false)), (.mk (.bind (.generated .operand 42)) none (.block (.mk [(.mk (.bind (.generated .operand 39)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000))] false)), (.mk (.bind (.generated .operand 40)) none (.block (.mk [(.mk (.bind (.generated .operand 37)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000))] false)), (.mk (.bind (.generated .operand 38)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000))] false)), (.mk (.bind (.generated .operand 36)) none (.block (.mk [(.mk (.bind (.generated .operand 33)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000))] false)), (.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.bind (.generated .operand 31)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000))] false)), (.mk (.bind (.generated .operand 32)) none (.block (.mk [(.mk (.bind (.generated .operand 29)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000))] false)), (.mk (.bind (.generated .operand 30)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000))] false)), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000))] false)), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000))] false)), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100))] false)), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10))] false)), (.mk (.bind (.generated .operand 20)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1))] false))] (.call (.runtime .appendBytes) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 37)), (.move (.generated .operand 38))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 41)), (.move (.generated .operand 42))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 45)), (.move (.generated .operand 46))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 47)), (.move (.generated .operand 48))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 49)), (.move (.generated .operand 50))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 51)), (.move (.generated .operand 52))] false))))]) (tail := (.call (.runtime .appendBytes) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 51)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000000000))] false)), (.mk (.bind (.generated .operand 52)) none (.block (.mk [(.mk (.bind (.generated .operand 49)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000000000))] false)), (.mk (.bind (.generated .operand 50)) none (.block (.mk [(.mk (.bind (.generated .operand 47)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000000000))] false)), (.mk (.bind (.generated .operand 48)) none (.block (.mk [(.mk (.bind (.generated .operand 45)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000000))] false)), (.mk (.bind (.generated .operand 46)) none (.block (.mk [(.mk (.bind (.generated .operand 43)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000000))] false)), (.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.bind (.generated .operand 41)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000000))] false)), (.mk (.bind (.generated .operand 42)) none (.block (.mk [(.mk (.bind (.generated .operand 39)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000))] false)), (.mk (.bind (.generated .operand 40)) none (.block (.mk [(.mk (.bind (.generated .operand 37)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000))] false)), (.mk (.bind (.generated .operand 38)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000))] false)), (.mk (.bind (.generated .operand 36)) none (.block (.mk [(.mk (.bind (.generated .operand 33)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000))] false)), (.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.bind (.generated .operand 31)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000))] false)), (.mk (.bind (.generated .operand 32)) none (.block (.mk [(.mk (.bind (.generated .operand 29)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000))] false)), (.mk (.bind (.generated .operand 30)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000))] false)), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000))] false)), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000))] false)), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100))] false)), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10))] false)), (.mk (.bind (.generated .operand 20)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1))] false))] (.call (.runtime .appendBytes) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 37)), (.move (.generated .operand 38))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 41)), (.move (.generated .operand 42))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 45)), (.move (.generated .operand 46))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 47)), (.move (.generated .operand 48))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 49)), (.move (.generated .operand 50))] false))))]) (tail := (.call (.runtime .appendBytes) [(.move (.generated .operand 51)), (.move (.generated .operand 52))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 49)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000000000))] false)), (.mk (.bind (.generated .operand 50)) none (.block (.mk [(.mk (.bind (.generated .operand 47)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000000000))] false)), (.mk (.bind (.generated .operand 48)) none (.block (.mk [(.mk (.bind (.generated .operand 45)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000000))] false)), (.mk (.bind (.generated .operand 46)) none (.block (.mk [(.mk (.bind (.generated .operand 43)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000000))] false)), (.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.bind (.generated .operand 41)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000000))] false)), (.mk (.bind (.generated .operand 42)) none (.block (.mk [(.mk (.bind (.generated .operand 39)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000))] false)), (.mk (.bind (.generated .operand 40)) none (.block (.mk [(.mk (.bind (.generated .operand 37)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000))] false)), (.mk (.bind (.generated .operand 38)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000))] false)), (.mk (.bind (.generated .operand 36)) none (.block (.mk [(.mk (.bind (.generated .operand 33)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000))] false)), (.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.bind (.generated .operand 31)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000))] false)), (.mk (.bind (.generated .operand 32)) none (.block (.mk [(.mk (.bind (.generated .operand 29)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000))] false)), (.mk (.bind (.generated .operand 30)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000))] false)), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000))] false)), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000))] false)), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100))] false)), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10))] false)), (.mk (.bind (.generated .operand 20)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1))] false))] (.call (.runtime .appendBytes) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 37)), (.move (.generated .operand 38))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 41)), (.move (.generated .operand 42))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 45)), (.move (.generated .operand 46))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 47)), (.move (.generated .operand 48))] false))))]) (tail := (.call (.runtime .appendBytes) [(.move (.generated .operand 49)), (.move (.generated .operand 50))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 47)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000000000))] false)), (.mk (.bind (.generated .operand 48)) none (.block (.mk [(.mk (.bind (.generated .operand 45)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000000))] false)), (.mk (.bind (.generated .operand 46)) none (.block (.mk [(.mk (.bind (.generated .operand 43)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000000))] false)), (.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.bind (.generated .operand 41)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000000))] false)), (.mk (.bind (.generated .operand 42)) none (.block (.mk [(.mk (.bind (.generated .operand 39)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000))] false)), (.mk (.bind (.generated .operand 40)) none (.block (.mk [(.mk (.bind (.generated .operand 37)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000))] false)), (.mk (.bind (.generated .operand 38)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000))] false)), (.mk (.bind (.generated .operand 36)) none (.block (.mk [(.mk (.bind (.generated .operand 33)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000))] false)), (.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.bind (.generated .operand 31)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000))] false)), (.mk (.bind (.generated .operand 32)) none (.block (.mk [(.mk (.bind (.generated .operand 29)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000))] false)), (.mk (.bind (.generated .operand 30)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000))] false)), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000))] false)), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000))] false)), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100))] false)), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10))] false)), (.mk (.bind (.generated .operand 20)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1))] false))] (.call (.runtime .appendBytes) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 37)), (.move (.generated .operand 38))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 41)), (.move (.generated .operand 42))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 45)), (.move (.generated .operand 46))] false))))]) (tail := (.call (.runtime .appendBytes) [(.move (.generated .operand 47)), (.move (.generated .operand 48))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 45)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000000))] false)), (.mk (.bind (.generated .operand 46)) none (.block (.mk [(.mk (.bind (.generated .operand 43)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000000))] false)), (.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.bind (.generated .operand 41)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000000))] false)), (.mk (.bind (.generated .operand 42)) none (.block (.mk [(.mk (.bind (.generated .operand 39)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000))] false)), (.mk (.bind (.generated .operand 40)) none (.block (.mk [(.mk (.bind (.generated .operand 37)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000))] false)), (.mk (.bind (.generated .operand 38)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000))] false)), (.mk (.bind (.generated .operand 36)) none (.block (.mk [(.mk (.bind (.generated .operand 33)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000))] false)), (.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.bind (.generated .operand 31)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000))] false)), (.mk (.bind (.generated .operand 32)) none (.block (.mk [(.mk (.bind (.generated .operand 29)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000))] false)), (.mk (.bind (.generated .operand 30)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000))] false)), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000))] false)), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000))] false)), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100))] false)), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10))] false)), (.mk (.bind (.generated .operand 20)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1))] false))] (.call (.runtime .appendBytes) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 37)), (.move (.generated .operand 38))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 41)), (.move (.generated .operand 42))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] false))))]) (tail := (.call (.runtime .appendBytes) [(.move (.generated .operand 45)), (.move (.generated .operand 46))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 43)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000000))] false)), (.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.bind (.generated .operand 41)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000000))] false)), (.mk (.bind (.generated .operand 42)) none (.block (.mk [(.mk (.bind (.generated .operand 39)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000))] false)), (.mk (.bind (.generated .operand 40)) none (.block (.mk [(.mk (.bind (.generated .operand 37)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000))] false)), (.mk (.bind (.generated .operand 38)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000))] false)), (.mk (.bind (.generated .operand 36)) none (.block (.mk [(.mk (.bind (.generated .operand 33)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000))] false)), (.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.bind (.generated .operand 31)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000))] false)), (.mk (.bind (.generated .operand 32)) none (.block (.mk [(.mk (.bind (.generated .operand 29)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000))] false)), (.mk (.bind (.generated .operand 30)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000))] false)), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000))] false)), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000))] false)), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100))] false)), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10))] false)), (.mk (.bind (.generated .operand 20)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1))] false))] (.call (.runtime .appendBytes) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 37)), (.move (.generated .operand 38))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 41)), (.move (.generated .operand 42))] false))))]) (tail := (.call (.runtime .appendBytes) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 41)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000000))] false)), (.mk (.bind (.generated .operand 42)) none (.block (.mk [(.mk (.bind (.generated .operand 39)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000))] false)), (.mk (.bind (.generated .operand 40)) none (.block (.mk [(.mk (.bind (.generated .operand 37)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000))] false)), (.mk (.bind (.generated .operand 38)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000))] false)), (.mk (.bind (.generated .operand 36)) none (.block (.mk [(.mk (.bind (.generated .operand 33)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000))] false)), (.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.bind (.generated .operand 31)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000))] false)), (.mk (.bind (.generated .operand 32)) none (.block (.mk [(.mk (.bind (.generated .operand 29)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000))] false)), (.mk (.bind (.generated .operand 30)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000))] false)), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000))] false)), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000))] false)), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100))] false)), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10))] false)), (.mk (.bind (.generated .operand 20)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1))] false))] (.call (.runtime .appendBytes) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 37)), (.move (.generated .operand 38))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] false))))]) (tail := (.call (.runtime .appendBytes) [(.move (.generated .operand 41)), (.move (.generated .operand 42))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 39)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000000))] false)), (.mk (.bind (.generated .operand 40)) none (.block (.mk [(.mk (.bind (.generated .operand 37)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000))] false)), (.mk (.bind (.generated .operand 38)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000))] false)), (.mk (.bind (.generated .operand 36)) none (.block (.mk [(.mk (.bind (.generated .operand 33)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000))] false)), (.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.bind (.generated .operand 31)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000))] false)), (.mk (.bind (.generated .operand 32)) none (.block (.mk [(.mk (.bind (.generated .operand 29)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000))] false)), (.mk (.bind (.generated .operand 30)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000))] false)), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000))] false)), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000))] false)), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100))] false)), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10))] false)), (.mk (.bind (.generated .operand 20)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1))] false))] (.call (.runtime .appendBytes) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 37)), (.move (.generated .operand 38))] false))))]) (tail := (.call (.runtime .appendBytes) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 37)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000000))] false)), (.mk (.bind (.generated .operand 38)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000))] false)), (.mk (.bind (.generated .operand 36)) none (.block (.mk [(.mk (.bind (.generated .operand 33)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000))] false)), (.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.bind (.generated .operand 31)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000))] false)), (.mk (.bind (.generated .operand 32)) none (.block (.mk [(.mk (.bind (.generated .operand 29)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000))] false)), (.mk (.bind (.generated .operand 30)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000))] false)), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000))] false)), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000))] false)), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100))] false)), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10))] false)), (.mk (.bind (.generated .operand 20)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1))] false))] (.call (.runtime .appendBytes) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false))))]) (tail := (.call (.runtime .appendBytes) [(.move (.generated .operand 37)), (.move (.generated .operand 38))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 35)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000000))] false)), (.mk (.bind (.generated .operand 36)) none (.block (.mk [(.mk (.bind (.generated .operand 33)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000))] false)), (.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.bind (.generated .operand 31)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000))] false)), (.mk (.bind (.generated .operand 32)) none (.block (.mk [(.mk (.bind (.generated .operand 29)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000))] false)), (.mk (.bind (.generated .operand 30)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000))] false)), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000))] false)), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000))] false)), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100))] false)), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10))] false)), (.mk (.bind (.generated .operand 20)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1))] false))] (.call (.runtime .appendBytes) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false))))]) (tail := (.call (.runtime .appendBytes) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 33)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000000))] false)), (.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.bind (.generated .operand 31)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000))] false)), (.mk (.bind (.generated .operand 32)) none (.block (.mk [(.mk (.bind (.generated .operand 29)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000))] false)), (.mk (.bind (.generated .operand 30)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000))] false)), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000))] false)), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000))] false)), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100))] false)), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10))] false)), (.mk (.bind (.generated .operand 20)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1))] false))] (.call (.runtime .appendBytes) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))))]) (tail := (.call (.runtime .appendBytes) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 31)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000000))] false)), (.mk (.bind (.generated .operand 32)) none (.block (.mk [(.mk (.bind (.generated .operand 29)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000))] false)), (.mk (.bind (.generated .operand 30)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000))] false)), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000))] false)), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000))] false)), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100))] false)), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10))] false)), (.mk (.bind (.generated .operand 20)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1))] false))] (.call (.runtime .appendBytes) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false))))]) (tail := (.call (.runtime .appendBytes) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 29)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000000))] false)), (.mk (.bind (.generated .operand 30)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000))] false)), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000))] false)), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000))] false)), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100))] false)), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10))] false)), (.mk (.bind (.generated .operand 20)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1))] false))] (.call (.runtime .appendBytes) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))]) (tail := (.call (.runtime .appendBytes) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 27)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100000))] false)), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000))] false)), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000))] false)), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100))] false)), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10))] false)), (.mk (.bind (.generated .operand 20)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1))] false))] (.call (.runtime .appendBytes) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))))]) (tail := (.call (.runtime .appendBytes) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 25)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10000))] false)), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000))] false)), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100))] false)), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10))] false)), (.mk (.bind (.generated .operand 20)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1))] false))] (.call (.runtime .appendBytes) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))))]) (tail := (.call (.runtime .appendBytes) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 23)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1000))] false)), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100))] false)), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10))] false)), (.mk (.bind (.generated .operand 20)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1))] false))] (.call (.runtime .appendBytes) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))]) (tail := (.call (.runtime .appendBytes) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 21)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 100))] false)), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10))] false)), (.mk (.bind (.generated .operand 20)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1))] false))] (.call (.runtime .appendBytes) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false))))]) (tail := (.call (.runtime .appendBytes) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 19)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 10))] false)), (.mk (.bind (.generated .operand 20)) none (.call (.function 21) [(.copy (.generated .binding 0)), (.lit (.nat 1))] false))]) (tail := (.call (.runtime .appendBytes) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := [(.mk (.bind (.generated .operand 57)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 58)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 57)), (.move (.generated .operand 58))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.move (.generated .binding 1)))) (lb := []) (tb := (.succeed (.move (.generated .binding 2)))) (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl))) (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))))))⟩⟩ - -theorem fun9 : FunOK program krate flags 9 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 22) [(.construct (.closure 3 23) []), (.lit (.nat 0)), (.move (.generated .binding 0))] false), [(0, (.list .bytes), (some 0))], rfl, rfl, - (Corr.callF (ts := [(.fn [.nat, .bytes] .nat), .nat, (.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)⟩⟩ - -theorem fun10 : FunOK program krate flags 10 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 24) [(.construct (.closure 4 25) []), (.lit (.nat 0)), (.move (.generated .binding 0))] false), [(0, (.list (.adt 2)), (some 0))], rfl, rfl, - (Corr.callF (ts := [(.fn [.nat, (.adt 2)] .nat), .nat, (.list (.adt 2))]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)⟩⟩ - -theorem fun11 : FunOK program krate flags 11 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 59)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 59)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 11) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 60)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 60) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]), [(2, (.list (.adt 2)), (some 2)), (1, (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (some 1)), (0, (.fn [(.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (.adt 2)] (.result (.list (.pair .bytes (.list .bytes))) (.adt 0))), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.adt 2))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.adt 2)), (some 2)), (1, (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (some 1)), (0, (.fn [(.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (.adt 2)] (.result (.list (.pair .bytes (.list .bytes))) (.adt 0))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 1))) (Corr.mCons (Γ' := [(4, (.list (.adt 2)), (some 4)), (3, (.adt 2), (some 3)), (2, (.list (.adt 2)), (some 2)), (1, (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (some 1)), (0, (.fn [(.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (.adt 2)] (.result (.list (.pair .bytes (.list .bytes))) (.adt 0))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 11) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 60)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 60) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.fn [(.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (.adt 2)] (.result (.list (.pair .bytes (.list .bytes))) (.adt 0))), (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (.list (.adt 2))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 60)) (some (.fn 1)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 60) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false)) (Corr.apply (ps := [(.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (.adt 2)]) (af := false) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ - -theorem fun12 : FunOK program krate flags 12 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 26) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false), [(1, (.adt 2), (some 1)), (0, (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (some 0))], rfl, rfl, - (Corr.callOps (ts := [(.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (.adt 2)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun13 : FunOK program krate flags 13 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 27) [(.construct (.closure 5 28) []), (.construct (.nil (.adt 2)) []), (.move (.generated .binding 0))] false), [(0, (.list (.adt 2)), (some 0))], rfl, rfl, - (Corr.callOps (ts := [(.fn [(.list (.adt 2)), (.adt 2)] (.list (.adt 2))), (.list (.adt 2)), (.list (.adt 2))]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := false) (ff := false) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun14 : FunOK program krate flags 14 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 61)) none (.clone (.generated .binding 0)))], (.matchOn (.move (.generated .holder 61)) [(.mk (.adt 1 0 [(.bind (.generated .binding 8)), (.bind (.generated .binding 9))]) (.mk [(.mk (.bind (.generated .operand 64)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 65)) none (.block (.mk [(.mk (.bind (.generated .operand 63)) none (.call (.function 32) [(.clone (.generated .binding 1))] true))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 63))] false))))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 64)), (.move (.generated .operand 65))] false) (.mk [] (.succeed (.move (.generated .binding 0)))) (.mk [(.mk (.bind (.generated .holder 66)) none (.call (.function 33) [(.call (.function 32) [(.clone (.generated .binding 1))] true)] true))] (.matchOn (.move (.generated .holder 66)) [(.mk .none (.mk [] (.succeed (.call (.function 31) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "unrecognized audit line: "))] false), (.call (.function 32) [(.move (.generated .binding 1))] true)] false), (.call (.function 34) [(.move (.generated .binding 9))] false)] false)))), (.mk (.some (.bind (.generated .binding 10))) (.mk [] (.call (.function 30) [(.move (.generated .binding 8)), (.clone (.generated .binding 9)), (.move (.generated .binding 10)), (.call (.function 34) [(.move (.generated .binding 9))] false)] false)))]))))), (.mk (.adt 1 1 [(.bind (.generated .binding 3)), (.bind (.generated .binding 4)), (.bind (.generated .binding 5)), (.bind (.generated .binding 6))]) (.mk [(.mk (.bind (.generated .holder 62)) none (.call (.function 29) [(.move (.generated .binding 1))] true))] (.matchOn (.move (.generated .holder 62)) [(.mk .none (.mk [] (.succeed (.call (.function 31) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "unterminated axiom payload: "))] false), (.move (.generated .binding 5))] false), (.move (.generated .binding 6))] false)))), (.mk (.some (.bind (.generated .binding 7))) (.mk [] (.call (.function 30) [(.move (.generated .binding 3)), (.move (.generated .binding 4)), (.call (.function 6) [(.call (.function 6) [(.move (.generated .binding 5)), (.call (.function 7) [(.lit (.str " "))] false)] false), (.move (.generated .binding 7))] false), (.move (.generated .binding 6))] false)))]))), (.mk (.adt 1 2 [.wild]) (.mk [] (.succeed (.move (.generated .binding 0)))))]), [(1, .bytes, (some 1)), (0, (.adt 1), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.adt 1)) (U := []) (view := false) (idx := [2, 1, 0]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(9, (.list .bytes), (some 9)), (8, (.list (.adt 2)), (some 8)), (1, .bytes, (some 1)), (0, (.adt 1), (some 0))]) (j := 2) (loads := []) (lets := [(.mk (.bind (.generated .operand 64)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 65)) none (.block (.mk [(.mk (.bind (.generated .operand 63)) none (.call (.function 32) [(.clone (.generated .binding 1))] true))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 63))] false))))]) (tail := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 64)), (.move (.generated .operand 65))] false) (.mk [] (.succeed (.move (.generated .binding 0)))) (.mk [(.mk (.bind (.generated .holder 66)) none (.call (.function 33) [(.call (.function 32) [(.clone (.generated .binding 1))] true)] true))] (.matchOn (.move (.generated .holder 66)) [(.mk .none (.mk [] (.succeed (.call (.function 31) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "unrecognized audit line: "))] false), (.call (.function 32) [(.move (.generated .binding 1))] true)] false), (.call (.function 34) [(.move (.generated .binding 9))] false)] false)))), (.mk (.some (.bind (.generated .binding 10))) (.mk [] (.call (.function 30) [(.move (.generated .binding 8)), (.clone (.generated .binding 9)), (.move (.generated .binding 10)), (.call (.function 34) [(.move (.generated .binding 9))] false)] false)))])))) (Corr.mCons (Γ' := [(6, (.option .bytes), (some 6)), (5, .bytes, (some 5)), (4, (.list .bytes), (some 4)), (3, (.list (.adt 2)), (some 3)), (1, .bytes, (some 1)), (0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 62)) none (.call (.function 29) [(.move (.generated .binding 1))] true))]) (tail := (.matchOn (.move (.generated .holder 62)) [(.mk .none (.mk [] (.succeed (.call (.function 31) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "unterminated axiom payload: "))] false), (.move (.generated .binding 5))] false), (.move (.generated .binding 6))] false)))), (.mk (.some (.bind (.generated .binding 7))) (.mk [] (.call (.function 30) [(.move (.generated .binding 3)), (.move (.generated .binding 4)), (.call (.function 6) [(.call (.function 6) [(.move (.generated .binding 5)), (.call (.function 7) [(.lit (.str " "))] false)] false), (.move (.generated .binding 7))] false), (.move (.generated .binding 6))] false)))])) (Corr.mCons (Γ' := [(2, (.adt 0), none), (1, .bytes, (some 1)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 0)))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(6, (.option .bytes), (some 6)), (5, .bytes, (some 5)), (4, (.list .bytes), (some 4)), (3, (.list (.adt 2)), (some 3)), (1, .bytes, (some 1)), (0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.call (.function 31) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "unterminated axiom payload: "))] false), (.move (.generated .binding 5))] false), (.move (.generated .binding 6))] false))) (Corr.mCons (Γ' := [(7, .bytes, (some 7)), (6, (.option .bytes), (some 6)), (5, .bytes, (some 5)), (4, (.list .bytes), (some 4)), (3, (.list (.adt 2)), (some 3)), (1, .bytes, (some 1)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.call (.function 30) [(.move (.generated .binding 3)), (.move (.generated .binding 4)), (.call (.function 6) [(.call (.function 6) [(.move (.generated .binding 5)), (.call (.function 7) [(.lit (.str " "))] false)] false), (.move (.generated .binding 7))] false), (.move (.generated .binding 6))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.list (.adt 2)), (.list .bytes), .bytes, (.option .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [.bytes, (.option .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl))) rfl rfl rfl)) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .operand 64)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 65)) none (.block (.mk [(.mk (.bind (.generated .operand 63)) none (.call (.function 32) [(.clone (.generated .binding 1))] true))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 63))] false))))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 64)), (.move (.generated .operand 65))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 63)) none (.call (.function 32) [(.clone (.generated .binding 1))] true))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 63))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.move (.generated .binding 0)))) (lb := [(.mk (.bind (.generated .holder 66)) none (.call (.function 33) [(.call (.function 32) [(.clone (.generated .binding 1))] true)] true))]) (tb := (.matchOn (.move (.generated .holder 66)) [(.mk .none (.mk [] (.succeed (.call (.function 31) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "unrecognized audit line: "))] false), (.call (.function 32) [(.move (.generated .binding 1))] true)] false), (.call (.function 34) [(.move (.generated .binding 9))] false)] false)))), (.mk (.some (.bind (.generated .binding 10))) (.mk [] (.call (.function 30) [(.move (.generated .binding 8)), (.clone (.generated .binding 9)), (.move (.generated .binding 10)), (.call (.function 34) [(.move (.generated .binding 9))] false)] false)))])) (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl))) (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(9, (.list .bytes), (some 9)), (8, (.list (.adt 2)), (some 8)), (1, .bytes, (some 1)), (0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.call (.function 31) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "unrecognized audit line: "))] false), (.call (.function 32) [(.move (.generated .binding 1))] true)] false), (.call (.function 34) [(.move (.generated .binding 9))] false)] false))) (Corr.mCons (Γ' := [(10, .bytes, (some 10)), (9, (.list .bytes), (some 9)), (8, (.list (.adt 2)), (some 8)), (1, .bytes, (some 1)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.call (.function 30) [(.move (.generated .binding 8)), (.clone (.generated .binding 9)), (.move (.generated .binding 10)), (.call (.function 34) [(.move (.generated .binding 9))] false)] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.list (.adt 2)), (.list .bytes), .bytes, (.option .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [.bytes, (.option .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl))) rfl rfl rfl)))) rfl rfl rfl)⟩⟩ - -theorem fun15 : FunOK program krate flags 15 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 67)) none (.copy (.generated .binding 1)))], (.cond (.isZero (.generated .holder 67)) (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 67))), (.mk (.bind (.generated .holder 69)) none (.block (.mk [(.mk (.bind (.generated .callee 68)) (some (.fn 2)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 68) [(.clone (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 69)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 15) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))]))), [(2, (.pair .nat (.pair .nat (.list .bytes))), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes))))), (some 0))], rfl, rfl, - (Corr.matchNat (sl := (some 3)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (lb := [(.mk (.bind (.generated .holder 69)) none (.block (.mk [(.mk (.bind (.generated .callee 68)) (some (.fn 2)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 68) [(.clone (.generated .binding 2))] true))))]) (tb := (.matchOn (.move (.generated .holder 69)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 15) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))])) (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))))) (Corr.matchArms (st := (.option (.pair .nat (.pair .nat (.list .bytes))))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 68)) (some (.fn 2)) (.clone (.generated .binding 0)))]) (tail := (.apply (.generated .callee 68) [(.clone (.generated .binding 2))] true)) (Corr.apply (ps := [(.pair .nat (.pair .nat (.list .bytes)))]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (2, (.pair .nat (.pair .nat (.list .bytes))), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes))))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true))))) (Corr.mCons (Γ' := [(4, (.pair .nat (.pair .nat (.list .bytes))), (some 4)), (3, .nat, (some 3)), (2, (.pair .nat (.pair .nat (.list .bytes))), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes))))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 15) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes))))), .nat, (.pair .nat (.pair .nat (.list .bytes)))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))))))) rfl rfl rfl)))⟩⟩ - -theorem fun16 : FunOK program krate flags 16 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 35) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false), [(1, (.pair .nat (.pair .nat (.list .bytes))), (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.callF (ts := [.bytes, (.pair .nat (.pair .nat (.list .bytes)))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)⟩⟩ - -theorem fun17 : FunOK program krate flags 17 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 36) [(.construct (.closure 6 37) []), (.construct (.nil .bytes) []), (.move (.generated .binding 0))] false), [(0, (.list .bytes), (some 0))], rfl, rfl, - (Corr.callOps (ts := [(.fn [(.list .bytes), .bytes] (.list .bytes)), (.list .bytes), (.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := false) (ff := false) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun18 : FunOK program krate flags 18 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 73)) none (.block (.mk [(.mk (.bind (.generated .operand 70)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 71)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 72)) none (.copy (.generated .binding 2)))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 70)), (.move (.generated .operand 71)), (.move (.generated .operand 72))] false))))], (.matchOn (.move (.generated .holder 73)) [(.mk .none (.mk [] (.lit (.bytes (ByteArray.mk #[]))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.move (.generated .binding 3))))]), [(2, .nat, (some 2)), (1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 70)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 71)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 72)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .sliceBytes) [(.move (.generated .operand 70)), (.move (.generated .operand 71)), (.move (.generated .operand 72))] false)) (Corr.prim (ts := [.bytes, .nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, .nat, (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bytes (ByteArray.mk #[])))) (Corr.mCons (Γ' := [(3, .bytes, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 3))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.bOfE (Corr.value rfl rfl))) rfl rfl rfl)⟩⟩ - -theorem fun19 : FunOK program krate flags 19 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 0 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1))]), [(1, (.option .bytes), (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.build (ts := [.bytes, (.option .bytes)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)⟩⟩ - -theorem fun20 : FunOK program krate flags 20 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 74)), .wild]) none (.call (.function 38) [(.construct (.closure 7 39) [(.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 75)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 75))] false))), (.lit (.nat 0))] true))] (.move (.generated .part 74)))))], (.succeed (.call (.function 18) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.block (.mk [(.mk (.bind (.generated .operand 77)) none (.block (.mk [(.mk (.bind (.generated .operand 76)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 76))] false)))), (.mk (.bind (.generated .operand 78)) none (.copy (.generated .binding 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 77)), (.move (.generated .operand 78))] false)))] false)), [(0, .bytes, (some 0))], rfl, rfl, - (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 74)), .wild]) none (.call (.function 38) [(.construct (.closure 7 39) [(.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 75)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 75))] false))), (.lit (.nat 0))] true))]) (tail := (.move (.generated .part 74))) (Corr.first (ta := .nat) (tb := .bool) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [.nat] (.option .nat)), .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [.bytes]) (mask := [false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 75)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 75))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl)) rfl (Corr.fOfB (Corr.callOps (ts := [.bytes, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 77)) none (.block (.mk [(.mk (.bind (.generated .operand 76)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 76))] false)))), (.mk (.bind (.generated .operand 78)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 77)), (.move (.generated .operand 78))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 76)) none (.move (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 76))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)))⟩⟩ - -theorem fun21 : FunOK program krate flags 21 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 18) [(.call (.function 7) [(.lit (.str "0123456789"))] false), (.block (.mk [(.mk (.bind (.generated .operand 82)) none (.block (.mk [(.mk (.bind (.generated .operand 79)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 80)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 81)) none (.lit (.nat 0)))] (.call (.runtime .natQuot) [(.move (.generated .operand 79)), (.move (.generated .operand 80)), (.move (.generated .operand 81))] false)))), (.mk (.bind (.generated .operand 83)) none (.lit (.nat 10))), (.mk (.bind (.generated .operand 84)) none (.lit (.nat 0)))] (.call (.runtime .natRem) [(.move (.generated .operand 82)), (.move (.generated .operand 83)), (.move (.generated .operand 84))] false))), (.lit (.nat 1))] false), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.callOps (ts := [.bytes, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 82)) none (.block (.mk [(.mk (.bind (.generated .operand 79)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 80)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 81)) none (.lit (.nat 0)))] (.call (.runtime .natQuot) [(.move (.generated .operand 79)), (.move (.generated .operand 80)), (.move (.generated .operand 81))] false)))), (.mk (.bind (.generated .operand 83)) none (.lit (.nat 10))), (.mk (.bind (.generated .operand 84)) none (.lit (.nat 0)))]) (tail := (.call (.runtime .natRem) [(.move (.generated .operand 82)), (.move (.generated .operand 83)), (.move (.generated .operand 84))] false)) (Corr.prim (ts := [.nat, .nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 79)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 80)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 81)) none (.lit (.nat 0)))]) (tail := (.call (.runtime .natQuot) [(.move (.generated .operand 79)), (.move (.generated .operand 80)), (.move (.generated .operand 81))] false)) (Corr.prim (ts := [.nat, .nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun22 : FunOK program krate flags 22 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 85)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 85)) [(.mk .none (.mk [] (.succeed (.copy (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 22) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 86)) (some (.fn 3)) (.move (.generated .binding 0)))] (.apply (.generated .callee 86) [(.copy (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]), [(2, (.list .bytes), (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat, .bytes] .nat), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .bytes)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .bytes), (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat, .bytes] .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.copy (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list .bytes), (some 4)), (3, .bytes, (some 3)), (2, (.list .bytes), (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat, .bytes] .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 22) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 86)) (some (.fn 3)) (.move (.generated .binding 0)))] (.apply (.generated .callee 86) [(.copy (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [.nat, .bytes] .nat), .nat, (.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 86)) (some (.fn 3)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 86) [(.copy (.generated .binding 1)), (.move (.generated .binding 3))] true)) (Corr.apply (ps := [.nat, .bytes]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ - -theorem fun23 : FunOK program krate flags 23 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 87)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 88)) none (.lit (.nat 1)))], (.call (.runtime .natAdd) [(.move (.generated .operand 87)), (.move (.generated .operand 88))] false), [(1, .bytes, none), (0, .nat, (some 0))], rfl, rfl, - (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun24 : FunOK program krate flags 24 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 89)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 89)) [(.mk .none (.mk [] (.succeed (.copy (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 24) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 90)) (some (.fn 4)) (.move (.generated .binding 0)))] (.apply (.generated .callee 90) [(.copy (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]), [(2, (.list (.adt 2)), (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat, (.adt 2)] .nat), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.adt 2))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.adt 2)), (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat, (.adt 2)] .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.copy (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list (.adt 2)), (some 4)), (3, (.adt 2), (some 3)), (2, (.list (.adt 2)), (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat, (.adt 2)] .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 24) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 90)) (some (.fn 4)) (.move (.generated .binding 0)))] (.apply (.generated .callee 90) [(.copy (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [.nat, (.adt 2)] .nat), .nat, (.list (.adt 2))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 90)) (some (.fn 4)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 90) [(.copy (.generated .binding 1)), (.move (.generated .binding 3))] true)) (Corr.apply (ps := [.nat, (.adt 2)]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ - -theorem fun25 : FunOK program krate flags 25 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 91)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 92)) none (.lit (.nat 1)))], (.call (.runtime .natAdd) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] false), [(1, (.adt 2), none), (0, .nat, (some 0))], rfl, rfl, - (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun26 : FunOK program krate flags 26 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 93)) none (.clone (.generated .binding 0)))], (.matchOn (.move (.generated .holder 93)) [(.mk (.ok (.bind (.generated .binding 3))) (.mk [(.mk (.bind (.generated .binding 5)) (some .bytes) (.block (.mk [(.mk (.bind (.generated .holder 95)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 94))]) (.mk [] (.move (.generated .part 94))))]))] (.matchOn (.move (.generated .holder 95)) [(.mk .none (.mk [] (.lit (.bytes (ByteArray.mk #[]))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.move (.generated .binding 4))))])))), (.mk (.bind (.generated .binding 6)) (some (.result (.list (.pair .bytes (.list .bytes))) (.adt 0))) (.call (.function 5) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "duplicate record for "))] false), (.call (.function 40) [(.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 2 0 [(.bind (.generated .part 96)), .wild, .wild]) (.mk [] (.move (.generated .part 96))))])] false)] false), (.construct .some [(.clone (.generated .binding 5))])] false)), (.mk (.bind (.generated .binding 7)) (some (.result (.list (.pair .bytes (.list .bytes))) (.adt 0))) (.call (.function 5) [(.call (.function 6) [(.call (.function 6) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "expected a record for "))] false), (.call (.function 40) [(.clone (.generated .binding 5))] false)] false), (.call (.function 7) [(.lit (.str ", found "))] false)] false), (.call (.function 40) [(.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 2 0 [(.bind (.generated .part 97)), .wild, .wild]) (.mk [] (.move (.generated .part 97))))])] false)] false), (.construct .some [(.clone (.generated .binding 5))])] false)), (.mk (.bind (.generated .operand 99)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 2 0 [(.bind (.generated .part 98)), .wild, .wild]) (.mk [] (.move (.generated .part 98))))])), (.mk (.bind (.generated .operand 100)) none (.move (.generated .binding 5)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 99)), (.move (.generated .operand 100))] false) (.mk [(.mk (.bind (.generated .holder 103)) none (.call (.function 41) [(.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 2 0 [(.bind (.generated .part 101)), .wild, .wild]) (.mk [] (.move (.generated .part 101))))]), (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 102)), .wild]) (.mk [] (.move (.generated .part 102))))]), (.move (.generated .binding 3))] false))] (.matchOn (.move (.generated .holder 103)) [(.mk .none (.mk [] (.move (.generated .binding 6)))), (.mk (.some (.bind (.generated .binding 8))) (.mk [] (.construct (.ok (.list (.pair .bytes (.list .bytes))) (.adt 0)) [(.move (.generated .binding 8))])))])) (.mk [] (.move (.generated .binding 7)))))), (.mk (.err .wild) (.mk [] (.move (.generated .binding 0))))]), [(1, (.adt 2), (some 1)), (0, (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.result (.list (.pair .bytes (.list .bytes))) (.adt 0))) (U := []) (view := false) (idx := [1, 0]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(3, (.list (.pair .bytes (.list .bytes))), (some 3)), (1, (.adt 2), (some 1)), (0, (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .binding 5)) (some .bytes) (.block (.mk [(.mk (.bind (.generated .holder 95)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 94))]) (.mk [] (.move (.generated .part 94))))]))] (.matchOn (.move (.generated .holder 95)) [(.mk .none (.mk [] (.lit (.bytes (ByteArray.mk #[]))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.move (.generated .binding 4))))])))), (.mk (.bind (.generated .binding 6)) (some (.result (.list (.pair .bytes (.list .bytes))) (.adt 0))) (.call (.function 5) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "duplicate record for "))] false), (.call (.function 40) [(.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 2 0 [(.bind (.generated .part 96)), .wild, .wild]) (.mk [] (.move (.generated .part 96))))])] false)] false), (.construct .some [(.clone (.generated .binding 5))])] false)), (.mk (.bind (.generated .binding 7)) (some (.result (.list (.pair .bytes (.list .bytes))) (.adt 0))) (.call (.function 5) [(.call (.function 6) [(.call (.function 6) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "expected a record for "))] false), (.call (.function 40) [(.clone (.generated .binding 5))] false)] false), (.call (.function 7) [(.lit (.str ", found "))] false)] false), (.call (.function 40) [(.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 2 0 [(.bind (.generated .part 97)), .wild, .wild]) (.mk [] (.move (.generated .part 97))))])] false)] false), (.construct .some [(.clone (.generated .binding 5))])] false)), (.mk (.bind (.generated .operand 99)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 2 0 [(.bind (.generated .part 98)), .wild, .wild]) (.mk [] (.move (.generated .part 98))))])), (.mk (.bind (.generated .operand 100)) none (.move (.generated .binding 5)))]) (tail := (.cond (.call (.runtime .equal) [(.move (.generated .operand 99)), (.move (.generated .operand 100))] false) (.mk [(.mk (.bind (.generated .holder 103)) none (.call (.function 41) [(.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 2 0 [(.bind (.generated .part 101)), .wild, .wild]) (.mk [] (.move (.generated .part 101))))]), (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 102)), .wild]) (.mk [] (.move (.generated .part 102))))]), (.move (.generated .binding 3))] false))] (.matchOn (.move (.generated .holder 103)) [(.mk .none (.mk [] (.move (.generated .binding 6)))), (.mk (.some (.bind (.generated .binding 8))) (.mk [] (.construct (.ok (.list (.pair .bytes (.list .bytes))) (.adt 0)) [(.move (.generated .binding 8))])))])) (.mk [] (.move (.generated .binding 7))))) (Corr.mCons (Γ' := [(2, (.adt 0), none), (1, (.adt 2), (some 1)), (0, (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 0))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 95)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 94))]) (.mk [] (.move (.generated .part 94))))]))]) (tail := (.matchOn (.move (.generated .holder 95)) [(.mk .none (.mk [] (.lit (.bytes (ByteArray.mk #[]))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.move (.generated .binding 4))))])) (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.fieldRead (ts := [.bytes, (.list .bytes), (.option .bytes)]) (rd := (.move (.generated .part 94))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list (.pair .bytes (.list .bytes))), (some 3)), (1, (.adt 2), (some 1)), (0, (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bytes (ByteArray.mk #[])))) (Corr.mCons (Γ' := [(4, .bytes, (some 4)), (3, (.list (.pair .bytes (.list .bytes))), (some 3)), (1, (.adt 2), (some 1)), (0, (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 4))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.bOfE (Corr.value rfl rfl))) rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.bytes, (.option .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [.bytes, (.list .bytes), (.option .bytes)]) (rd := (.move (.generated .part 96))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.bytes]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.bytes, (.option .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [.bytes, (.list .bytes), (.option .bytes)]) (rd := (.move (.generated .part 97))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.bytes]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := [(.mk (.bind (.generated .operand 99)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 2 0 [(.bind (.generated .part 98)), .wild, .wild]) (.mk [] (.move (.generated .part 98))))])), (.mk (.bind (.generated .operand 100)) none (.move (.generated .binding 5)))]) (ce := (.call (.runtime .equal) [(.move (.generated .operand 99)), (.move (.generated .operand 100))] false)) (lk := []) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.bytes, (.list .bytes), (.option .bytes)]) (rd := (.move (.generated .part 98))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .holder 103)) none (.call (.function 41) [(.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 2 0 [(.bind (.generated .part 101)), .wild, .wild]) (.mk [] (.move (.generated .part 101))))]), (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 102)), .wild]) (.mk [] (.move (.generated .part 102))))]), (.move (.generated .binding 3))] false))]) (ta := (.matchOn (.move (.generated .holder 103)) [(.mk .none (.mk [] (.move (.generated .binding 6)))), (.mk (.some (.bind (.generated .binding 8))) (.mk [] (.construct (.ok (.list (.pair .bytes (.list .bytes))) (.adt 0)) [(.move (.generated .binding 8))])))])) (lb := []) (tb := (.move (.generated .binding 7))) (Corr.matchArms (st := (.option (.list (.pair .bytes (.list .bytes))))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, (.list .bytes), (.list (.pair .bytes (.list .bytes)))]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [.bytes, (.list .bytes), (.option .bytes)]) (rd := (.move (.generated .part 101))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [.bytes, (.list .bytes), (.option .bytes)]) (rd := (.move (.generated .part 102))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(7, (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (some 7)), (6, (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (some 6)), (5, .bytes, (some 5)), (3, (.list (.pair .bytes (.list .bytes))), (some 3)), (1, (.adt 2), (some 1)), (0, (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.move (.generated .binding 6))) (Corr.mCons (Γ' := [(8, (.list (.pair .bytes (.list .bytes))), (some 8)), (7, (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (some 7)), (6, (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (some 6)), (5, .bytes, (some 5)), (3, (.list (.pair .bytes (.list .bytes))), (some 3)), (1, (.adt 2), (some 1)), (0, (.result (.list (.pair .bytes (.list .bytes))) (.adt 0)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.ok (.list (.pair .bytes (.list .bytes))) (.adt 0)) [(.move (.generated .binding 8))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.list (.pair .bytes (.list .bytes)))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl) (Corr.bOfE (Corr.var rfl rfl)))))))) rfl rfl rfl)⟩⟩ - -theorem fun27 : FunOK program krate flags 27 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 104)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 104)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 27) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 105)) (some (.fn 5)) (.move (.generated .binding 0)))] (.apply (.generated .callee 105) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]), [(2, (.list (.adt 2)), (some 2)), (1, (.list (.adt 2)), (some 1)), (0, (.fn [(.list (.adt 2)), (.adt 2)] (.list (.adt 2))), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.adt 2))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.adt 2)), (some 2)), (1, (.list (.adt 2)), (some 1)), (0, (.fn [(.list (.adt 2)), (.adt 2)] (.list (.adt 2))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 1))) (Corr.mCons (Γ' := [(4, (.list (.adt 2)), (some 4)), (3, (.adt 2), (some 3)), (2, (.list (.adt 2)), (some 2)), (1, (.list (.adt 2)), (some 1)), (0, (.fn [(.list (.adt 2)), (.adt 2)] (.list (.adt 2))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 27) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 105)) (some (.fn 5)) (.move (.generated .binding 0)))] (.apply (.generated .callee 105) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.fn [(.list (.adt 2)), (.adt 2)] (.list (.adt 2))), (.list (.adt 2)), (.list (.adt 2))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 105)) (some (.fn 5)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 105) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false)) (Corr.apply (ps := [(.list (.adt 2)), (.adt 2)]) (af := false) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ - -theorem fun28 : FunOK program krate flags 28 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct .cons [(.move (.generated .binding 1)), (.move (.generated .binding 0))]), [(1, (.adt 2), (some 1)), (0, (.list (.adt 2)), (some 0))], rfl, rfl, - (Corr.build (ts := [(.adt 2), (.list (.adt 2))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)⟩⟩ - -theorem fun29 : FunOK program krate flags 29 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some .bytes) (.call (.function 32) [(.clone (.generated .binding 0))] true))], (.cond (.call (.function 42) [(.move (.generated .binding 0))] true) (.mk [(.mk (.bind (.generated .operand 107)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 108)) none (.block (.mk [(.mk (.bind (.generated .operand 106)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 106))] false))))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 107)), (.move (.generated .operand 108))] false) (.mk [] (.succeed (.construct (.none .bytes) []))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 1))]))))) (.mk [] (.succeed (.construct (.none .bytes) [])))), [(0, .bytes, (some 0))], rfl, rfl, - (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := []) (ce := (.call (.function 42) [(.move (.generated .binding 0))] true)) (lk := []) (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 107)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 108)) none (.block (.mk [(.mk (.bind (.generated .operand 106)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 106))] false))))]) (ta := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 107)), (.move (.generated .operand 108))] false) (.mk [] (.succeed (.construct (.none .bytes) []))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 1))]))))) (lb := []) (tb := (.succeed (.construct (.none .bytes) []))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 107)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 108)) none (.block (.mk [(.mk (.bind (.generated .operand 106)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 106))] false))))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 107)), (.move (.generated .operand 108))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 106)) none (.clone (.generated .binding 1)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 106))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct (.none .bytes) []))) (lb := []) (tb := (.succeed (.construct .some [(.move (.generated .binding 1))]))) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.fOfB (Corr.build (ts := [.bytes]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)))) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))))⟩⟩ - -theorem fun30 : FunOK program krate flags 30 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 43) [(.clone (.generated .binding 2))] false) (.mk [(.mk (.bind (.generated .holder 109)) none (.call (.function 44) [(.move (.generated .binding 2))] true))] (.matchOn (.move (.generated .holder 109)) [(.mk (.ok (.bind (.generated .binding 5))) (.mk [] (.succeed (.construct (.adt 1 0) [(.construct .cons [(.construct (.adt 2 0) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 110)), .wild]) none (.move (.generated .binding 5)))] (.move (.generated .part 110)))), (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 111))]) none (.move (.generated .binding 5)))] (.move (.generated .part 111)))), (.move (.generated .binding 3))]), (.move (.generated .binding 0))]), (.call (.function 45) [(.move (.generated .binding 1))] false)])))), (.mk (.err (.bind (.generated .binding 4))) (.mk [] (.succeed (.call (.function 31) [(.move (.generated .binding 4)), (.move (.generated .binding 3))] false))))])) (.mk [] (.succeed (.construct (.adt 1 1) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 2)), (.move (.generated .binding 3))])))), [(3, (.option .bytes), (some 3)), (2, .bytes, (some 2)), (1, (.list .bytes), (some 1)), (0, (.list (.adt 2)), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 43) [(.clone (.generated .binding 2))] false)) (lk := []) (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .holder 109)) none (.call (.function 44) [(.move (.generated .binding 2))] true))]) (ta := (.matchOn (.move (.generated .holder 109)) [(.mk (.ok (.bind (.generated .binding 5))) (.mk [] (.succeed (.construct (.adt 1 0) [(.construct .cons [(.construct (.adt 2 0) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 110)), .wild]) none (.move (.generated .binding 5)))] (.move (.generated .part 110)))), (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 111))]) none (.move (.generated .binding 5)))] (.move (.generated .part 111)))), (.move (.generated .binding 3))]), (.move (.generated .binding 0))]), (.call (.function 45) [(.move (.generated .binding 1))] false)])))), (.mk (.err (.bind (.generated .binding 4))) (.mk [] (.succeed (.call (.function 31) [(.move (.generated .binding 4)), (.move (.generated .binding 3))] false))))])) (lb := []) (tb := (.succeed (.construct (.adt 1 1) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 2)), (.move (.generated .binding 3))]))) (Corr.matchArms (st := (.result (.pair .bytes (.list .bytes)) .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(5, (.pair .bytes (.list .bytes)), (some 5)), (3, (.option .bytes), (some 3)), (2, .bytes, (some 2)), (1, (.list .bytes), (some 1)), (0, (.list (.adt 2)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.construct (.adt 1 0) [(.construct .cons [(.construct (.adt 2 0) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 110)), .wild]) none (.move (.generated .binding 5)))] (.move (.generated .part 110)))), (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 111))]) none (.move (.generated .binding 5)))] (.move (.generated .part 111)))), (.move (.generated .binding 3))]), (.move (.generated .binding 0))]), (.call (.function 45) [(.move (.generated .binding 1))] false)]))) (Corr.mCons (Γ' := [(4, .bytes, (some 4)), (3, (.option .bytes), (some 3)), (2, .bytes, (some 2)), (1, (.list .bytes), (some 1)), (0, (.list (.adt 2)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.call (.function 31) [(.move (.generated .binding 4)), (.move (.generated .binding 3))] false))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [.bytes, (.option .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.list (.adt 2)), (.list .bytes)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.adt 2), (.list (.adt 2))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.bytes, (.list .bytes), (.option .bytes)]) (mask := [false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 110)), .wild]) none (.move (.generated .binding 5)))]) (tail := (.move (.generated .part 110))) (Corr.first (ta := .bytes) (tb := (.list .bytes)) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 111))]) none (.move (.generated .binding 5)))]) (tail := (.move (.generated .part 111))) (Corr.second (ta := .bytes) (tb := (.list .bytes)) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl))) rfl rfl rfl) (Corr.fOfB (Corr.build (ts := [(.list (.adt 2)), (.list .bytes), .bytes, (.option .bytes)]) (mask := [false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))))) rfl))))⟩⟩ - -theorem fun31 : FunOK program krate flags 31 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 2) [(.call (.function 19) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false)]), [(1, (.option .bytes), (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.build (ts := [(.adt 0)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, (.option .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)⟩⟩ - -theorem fun32 : FunOK program krate flags 32 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some .nat) (.call (.function 46) [(.clone (.generated .binding 0))] true)), (.mk (.bind (.generated .binding 2)) (some .nat) (.call (.function 47) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1))] true))], (.succeed (.call (.function 18) [(.move (.generated .binding 0)), (.copy (.generated .binding 1)), (.block (.mk [(.mk (.bind (.generated .operand 112)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 113)) none (.copy (.generated .binding 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 112)), (.move (.generated .operand 113))] false)))] false)), [(0, .bytes, (some 0))], rfl, rfl, - (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl (Corr.fOfB (Corr.callOps (ts := [.bytes, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 112)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 113)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 112)), (.move (.generated .operand 113))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl))))⟩⟩ - -theorem fun33 : FunOK program krate flags 33 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 48) [(.clone (.generated .binding 0)), (.call (.function 7) [(.lit (.str "'"))] false)] false) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 0))]))) (.mk [(.mk (.bind (.generated .holder 114)) none (.call (.function 49) [(.clone (.generated .binding 0)), (.call (.function 7) [(.lit (.str "info: "))] false)] false))] (.matchOn (.move (.generated .holder 114)) [(.mk .none (.mk [] (.call (.function 50) [(.move (.generated .binding 0))] false))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 1))]))))]))), [(0, .bytes, (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 48) [(.clone (.generated .binding 0)), (.call (.function 7) [(.lit (.str "'"))] false)] false)) (lk := []) (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.move (.generated .binding 0))]))) (lb := [(.mk (.bind (.generated .holder 114)) none (.call (.function 49) [(.clone (.generated .binding 0)), (.call (.function 7) [(.lit (.str "info: "))] false)] false))]) (tb := (.matchOn (.move (.generated .holder 114)) [(.mk .none (.mk [] (.call (.function 50) [(.move (.generated .binding 0))] false))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 1))]))))])) (Corr.fOfB (Corr.build (ts := [.bytes]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 50) [(.move (.generated .binding 0))] false)) (Corr.mCons (Γ' := [(1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct .some [(.move (.generated .binding 1))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [.bytes]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.callF (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) rfl rfl rfl)))⟩⟩ - -theorem fun34 : FunOK program krate flags 34 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 115)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 115)) [(.mk .none (.mk [] (.construct (.none .bytes) []))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), .wild])) (.mk [] (.construct .some [(.move (.generated .binding 1))])))]), [(0, (.list .bytes), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .bytes)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list .bytes), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none .bytes) [])) (Corr.mCons (Γ' := [(2, (.list .bytes), none), (1, .bytes, (some 1)), (0, (.list .bytes), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct .some [(.move (.generated .binding 1))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [.bytes]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun35 : FunOK program krate flags 35 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 116)), .wild]) none (.clone (.generated .binding 1)))] (.move (.generated .part 116))))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 117)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 118))]) none (.clone (.generated .binding 1)))] (.move (.generated .part 118)))))] (.move (.generated .part 117))))), (.mk (.bind (.generated .binding 4)) (some (.list .bytes)) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 119))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 120))]) none (.move (.generated .binding 1)))] (.move (.generated .part 120)))))] (.move (.generated .part 119))))), (.mk (.bind (.generated .holder 121)) none (.call (.function 51) [(.clone (.generated .binding 0)), (.copy (.generated .binding 2))] false))], (.matchOn (.move (.generated .holder 121)) [(.mk .none (.mk [] (.succeed (.construct (.none (.pair .nat (.pair .nat (.list .bytes)))) [])))), (.mk (.some (.bind (.generated .binding 5))) (.mk [(.mk (.bind (.generated .operand 122)) none (.copy (.generated .binding 5))), (.mk (.bind (.generated .operand 123)) none (.lit (.fixed .u8 10)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 122)), (.move (.generated .operand 123))] false) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 124)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 125)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 124)), (.move (.generated .operand 125))] true))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 126)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 127)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 126)), (.move (.generated .operand 127))] true))) (.construct .cons [(.call (.function 52) [(.call (.function 18) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.block (.mk [(.mk (.bind (.generated .operand 128)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 129)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 128)), (.move (.generated .operand 129))] false)))] false)] false), (.move (.generated .binding 4))])))]))) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 130)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 131)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 130)), (.move (.generated .operand 131))] true))) (.pair (.copy (.generated .binding 3)) (.move (.generated .binding 4))))]))))))]), [(1, (.pair .nat (.pair .nat (.list .bytes))), (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 116)), .wild]) none (.clone (.generated .binding 1)))]) (tail := (.move (.generated .part 116))) (Corr.first (ta := .nat) (tb := (.pair .nat (.list .bytes))) (Corr.var rfl rfl) rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 117)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 118))]) none (.clone (.generated .binding 1)))] (.move (.generated .part 118)))))]) (tail := (.move (.generated .part 117))) (Corr.first (ta := .nat) (tb := (.list .bytes)) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 118))]) none (.clone (.generated .binding 1)))]) (tail := (.move (.generated .part 118))) (Corr.second (ta := .nat) (tb := (.pair .nat (.list .bytes))) (Corr.var rfl rfl) rfl)) rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 119))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 120))]) none (.move (.generated .binding 1)))] (.move (.generated .part 120)))))]) (tail := (.move (.generated .part 119))) (Corr.second (ta := .nat) (tb := (.list .bytes)) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 120))]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 120))) (Corr.second (ta := .nat) (tb := (.pair .nat (.list .bytes))) (Corr.var rfl rfl) rfl)) rfl)) rfl (Corr.matchArms (st := (.option (.fixed .u8))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.list .bytes), (some 4)), (3, .nat, (some 3)), (2, .nat, (some 2)), (1, (.pair .nat (.pair .nat (.list .bytes))), (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.construct (.none (.pair .nat (.pair .nat (.list .bytes)))) []))) (Corr.mCons (Γ' := [(5, (.fixed .u8), (some 5)), (4, (.list .bytes), (some 4)), (3, .nat, (some 3)), (2, .nat, (some 2)), (1, (.pair .nat (.pair .nat (.list .bytes))), (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .operand 122)) none (.copy (.generated .binding 5))), (.mk (.bind (.generated .operand 123)) none (.lit (.fixed .u8 10)))]) (tail := (.cond (.call (.runtime .equal) [(.move (.generated .operand 122)), (.move (.generated .operand 123))] false) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 124)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 125)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 124)), (.move (.generated .operand 125))] true))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 126)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 127)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 126)), (.move (.generated .operand 127))] true))) (.construct .cons [(.call (.function 52) [(.call (.function 18) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.block (.mk [(.mk (.bind (.generated .operand 128)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 129)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 128)), (.move (.generated .operand 129))] false)))] false)] false), (.move (.generated .binding 4))])))]))) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 130)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 131)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 130)), (.move (.generated .operand 131))] true))) (.pair (.copy (.generated .binding 3)) (.move (.generated .binding 4))))]))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .operand 122)) none (.copy (.generated .binding 5))), (.mk (.bind (.generated .operand 123)) none (.lit (.fixed .u8 10)))]) (ce := (.call (.runtime .equal) [(.move (.generated .operand 122)), (.move (.generated .operand 123))] false)) (lk := []) (Corr.prim (ts := [(.fixed .u8), (.fixed .u8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 124)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 125)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 124)), (.move (.generated .operand 125))] true))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 126)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 127)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 126)), (.move (.generated .operand 127))] true))) (.construct .cons [(.call (.function 52) [(.call (.function 18) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.block (.mk [(.mk (.bind (.generated .operand 128)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 129)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 128)), (.move (.generated .operand 129))] false)))] false)] false), (.move (.generated .binding 4))])))]))) (lb := []) (tb := (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 130)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 131)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 130)), (.move (.generated .operand 131))] true))) (.pair (.copy (.generated .binding 3)) (.move (.generated .binding 4))))]))) (Corr.fOfB (Corr.build (ts := [(.pair .nat (.pair .nat (.list .bytes)))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 124)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 125)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 124)), (.move (.generated .operand 125))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 126)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 127)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 126)), (.move (.generated .operand 127))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.bytes, (.list .bytes)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 128)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 129)) none (.copy (.generated .binding 3)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 128)), (.move (.generated .operand 129))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := [(.pair .nat (.pair .nat (.list .bytes)))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 130)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 131)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 130)), (.move (.generated .operand 131))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil))) rfl))))) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl))))⟩⟩ - -theorem fun36 : FunOK program krate flags 36 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 132)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 132)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 36) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 133)) (some (.fn 6)) (.move (.generated .binding 0)))] (.apply (.generated .callee 133) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]), [(2, (.list .bytes), (some 2)), (1, (.list .bytes), (some 1)), (0, (.fn [(.list .bytes), .bytes] (.list .bytes)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .bytes)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .bytes), (some 2)), (1, (.list .bytes), (some 1)), (0, (.fn [(.list .bytes), .bytes] (.list .bytes)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 1))) (Corr.mCons (Γ' := [(4, (.list .bytes), (some 4)), (3, .bytes, (some 3)), (2, (.list .bytes), (some 2)), (1, (.list .bytes), (some 1)), (0, (.fn [(.list .bytes), .bytes] (.list .bytes)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 36) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 133)) (some (.fn 6)) (.move (.generated .binding 0)))] (.apply (.generated .callee 133) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.fn [(.list .bytes), .bytes] (.list .bytes)), (.list .bytes), (.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 133)) (some (.fn 6)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 133) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false)) (Corr.apply (ps := [(.list .bytes), .bytes]) (af := false) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ - -theorem fun37 : FunOK program krate flags 37 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct .cons [(.move (.generated .binding 1)), (.move (.generated .binding 0))]), [(1, .bytes, (some 1)), (0, (.list .bytes), (some 0))], rfl, rfl, - (Corr.build (ts := [.bytes, (.list .bytes)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)⟩⟩ - -theorem fun38 : FunOK program krate flags 38 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 134)) none (.copy (.generated .binding 1)))], (.cond (.isZero (.generated .holder 134)) (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 134))), (.mk (.bind (.generated .holder 136)) none (.block (.mk [(.mk (.bind (.generated .callee 135)) (some (.fn 7)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 135) [(.copy (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 136)) [(.mk .none (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 38) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)))]))), [(2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat] (.option .nat)), (some 0))], rfl, rfl, - (Corr.matchNat (sl := (some 3)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool false))))) (lb := [(.mk (.bind (.generated .holder 136)) none (.block (.mk [(.mk (.bind (.generated .callee 135)) (some (.fn 7)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 135) [(.copy (.generated .binding 2))] true))))]) (tb := (.matchOn (.move (.generated .holder 136)) [(.mk .none (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 38) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)))])) (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))))) (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 135)) (some (.fn 7)) (.clone (.generated .binding 0)))]) (tail := (.apply (.generated .callee 135) [(.copy (.generated .binding 2))] true)) (Corr.apply (ps := [.nat]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat] (.option .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true))))) (Corr.mCons (Γ' := [(4, .nat, (some 4)), (3, .nat, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat] (.option .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 38) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [.nat] (.option .nat)), .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))))))) rfl rfl rfl)))⟩⟩ - -theorem fun39 : FunOK program krate flags 39 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 53) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false), [(1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.callF (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)⟩⟩ - -theorem fun40 : FunOK program krate flags 40 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 6) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "`"))] false), (.move (.generated .binding 0))] false), (.call (.function 7) [(.lit (.str "`"))] false)] false), [(0, .bytes, (some 0))], rfl, rfl, - (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun41 : FunOK program krate flags 41 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 137)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 137)) [(.mk .none (.mk [] (.construct .some [(.construct .cons [(.pair (.move (.generated .binding 0)) (.move (.generated .binding 1))), (.construct (.nil (.pair .bytes (.list .bytes))) [])])]))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [(.mk (.bind (.generated .operand 139)) none (.clone (.generated .binding 0))), (.mk (.bind (.generated .operand 140)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 138)), .wild]) none (.clone (.generated .binding 3)))] (.move (.generated .part 138)))))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 139)), (.move (.generated .operand 140))] false) (.mk [] (.construct (.none (.list (.pair .bytes (.list .bytes)))) [])) (.mk [] (.cond (.call (.function 54) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 141)), .wild]) none (.clone (.generated .binding 3)))] (.move (.generated .part 141))))] false) (.mk [] (.construct .some [(.construct .cons [(.pair (.move (.generated .binding 0)) (.move (.generated .binding 1))), (.construct .cons [(.move (.generated .binding 3)), (.move (.generated .binding 4))])])])) (.mk [(.mk (.bind (.generated .holder 142)) none (.call (.function 41) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false))] (.matchOn (.move (.generated .holder 142)) [(.mk .none (.mk [] (.construct (.none (.list (.pair .bytes (.list .bytes)))) []))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.construct .some [(.construct .cons [(.move (.generated .binding 3)), (.move (.generated .binding 5))])])))])))))))]), [(2, (.list (.pair .bytes (.list .bytes))), (some 2)), (1, (.list .bytes), (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.pair .bytes (.list .bytes)))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.pair .bytes (.list .bytes))), (some 2)), (1, (.list .bytes), (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.construct .cons [(.pair (.move (.generated .binding 0)) (.move (.generated .binding 1))), (.construct (.nil (.pair .bytes (.list .bytes))) [])])])) (Corr.mCons (Γ' := [(4, (.list (.pair .bytes (.list .bytes))), (some 4)), (3, (.pair .bytes (.list .bytes)), (some 3)), (2, (.list (.pair .bytes (.list .bytes))), (some 2)), (1, (.list .bytes), (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .operand 139)) none (.clone (.generated .binding 0))), (.mk (.bind (.generated .operand 140)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 138)), .wild]) none (.clone (.generated .binding 3)))] (.move (.generated .part 138)))))]) (tail := (.cond (.call (.runtime .equal) [(.move (.generated .operand 139)), (.move (.generated .operand 140))] false) (.mk [] (.construct (.none (.list (.pair .bytes (.list .bytes)))) [])) (.mk [] (.cond (.call (.function 54) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 141)), .wild]) none (.clone (.generated .binding 3)))] (.move (.generated .part 141))))] false) (.mk [] (.construct .some [(.construct .cons [(.pair (.move (.generated .binding 0)) (.move (.generated .binding 1))), (.construct .cons [(.move (.generated .binding 3)), (.move (.generated .binding 4))])])])) (.mk [(.mk (.bind (.generated .holder 142)) none (.call (.function 41) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false))] (.matchOn (.move (.generated .holder 142)) [(.mk .none (.mk [] (.construct (.none (.list (.pair .bytes (.list .bytes)))) []))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.construct .some [(.construct .cons [(.move (.generated .binding 3)), (.move (.generated .binding 5))])])))])))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .operand 139)) none (.clone (.generated .binding 0))), (.mk (.bind (.generated .operand 140)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 138)), .wild]) none (.clone (.generated .binding 3)))] (.move (.generated .part 138)))))]) (ce := (.call (.runtime .equal) [(.move (.generated .operand 139)), (.move (.generated .operand 140))] false)) (lk := []) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 138)), .wild]) none (.clone (.generated .binding 3)))]) (tail := (.move (.generated .part 138))) (Corr.first (ta := .bytes) (tb := (.list .bytes)) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct (.none (.list (.pair .bytes (.list .bytes)))) [])) (lb := []) (tb := (.cond (.call (.function 54) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 141)), .wild]) none (.clone (.generated .binding 3)))] (.move (.generated .part 141))))] false) (.mk [] (.construct .some [(.construct .cons [(.pair (.move (.generated .binding 0)) (.move (.generated .binding 1))), (.construct .cons [(.move (.generated .binding 3)), (.move (.generated .binding 4))])])])) (.mk [(.mk (.bind (.generated .holder 142)) none (.call (.function 41) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false))] (.matchOn (.move (.generated .holder 142)) [(.mk .none (.mk [] (.construct (.none (.list (.pair .bytes (.list .bytes)))) []))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.construct .some [(.construct .cons [(.move (.generated .binding 3)), (.move (.generated .binding 5))])])))])))) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl) (Corr.cond (lc := []) (ce := (.call (.function 54) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 141)), .wild]) none (.clone (.generated .binding 3)))] (.move (.generated .part 141))))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 141)), .wild]) none (.clone (.generated .binding 3)))]) (tail := (.move (.generated .part 141))) (Corr.first (ta := .bytes) (tb := (.list .bytes)) (Corr.var rfl rfl) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct .cons [(.pair (.move (.generated .binding 0)) (.move (.generated .binding 1))), (.construct .cons [(.move (.generated .binding 3)), (.move (.generated .binding 4))])])])) (lb := [(.mk (.bind (.generated .holder 142)) none (.call (.function 41) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false))]) (tb := (.matchOn (.move (.generated .holder 142)) [(.mk .none (.mk [] (.construct (.none (.list (.pair .bytes (.list .bytes)))) []))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.construct .some [(.construct .cons [(.move (.generated .binding 3)), (.move (.generated .binding 5))])])))])) (Corr.build (ts := [(.list (.pair .bytes (.list .bytes)))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.pair .bytes (.list .bytes)), (.list (.pair .bytes (.list .bytes)))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.pair .bytes (.list .bytes)), (.list (.pair .bytes (.list .bytes)))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil))) rfl) (Corr.matchArms (st := (.option (.list (.pair .bytes (.list .bytes))))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, (.list .bytes), (.list (.pair .bytes (.list .bytes)))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.list (.pair .bytes (.list .bytes))), (some 4)), (3, (.pair .bytes (.list .bytes)), (some 3)), (2, (.list (.pair .bytes (.list .bytes))), (some 2)), (1, (.list .bytes), (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct (.none (.list (.pair .bytes (.list .bytes)))) [])) (Corr.mCons (Γ' := [(5, (.list (.pair .bytes (.list .bytes))), (some 5)), (4, (.list (.pair .bytes (.list .bytes))), (some 4)), (3, (.pair .bytes (.list .bytes)), (some 3)), (2, (.list (.pair .bytes (.list .bytes))), (some 2)), (1, (.list .bytes), (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.construct .cons [(.move (.generated .binding 3)), (.move (.generated .binding 5))])])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.list (.pair .bytes (.list .bytes)))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.pair .bytes (.list .bytes)), (.list (.pair .bytes (.list .bytes)))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)))))) rfl rfl rfl (Corr.build (ts := [(.list (.pair .bytes (.list .bytes)))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.pair .bytes (.list .bytes)), (.list (.pair .bytes (.list .bytes)))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil))) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun42 : FunOK program krate flags 42 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 143)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 144)) none (.call (.function 55) [(.move (.generated .binding 0)), (.lit (.nat 0))] true))], (.succeed (.call (.runtime .natLt) [(.move (.generated .operand 143)), (.move (.generated .operand 144))] false)), [(0, .bytes, (some 0))], rfl, rfl, - (Corr.fOfB (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl))⟩⟩ - -theorem fun43 : FunOK program krate flags 43 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 145)) none (.call (.function 56) [(.clone (.generated .binding 0)), (.call (.function 7) [(.lit (.str "]"))] false)] false))], (.matchOn (.move (.generated .holder 145)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 146)) none (.call (.function 56) [(.move (.generated .binding 0)), (.call (.function 7) [(.lit (.str " does not depend on any axioms"))] false)] false))] (.matchOn (.move (.generated .holder 146)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some .wild) (.mk [] (.lit (.bool true))))]))), (.mk (.some .wild) (.mk [] (.lit (.bool true))))]), [(0, .bytes, (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 146)) none (.call (.function 56) [(.move (.generated .binding 0)), (.call (.function 7) [(.lit (.str " does not depend on any axioms"))] false)] false))]) (tail := (.matchOn (.move (.generated .holder 146)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some .wild) (.mk [] (.lit (.bool true))))])) (Corr.mCons (Γ' := [(1, .bytes, none), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(2, .bytes, none), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)) rfl rfl rfl)⟩⟩ - -theorem fun44 : FunOK program krate flags 44 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 147)) none (.call (.function 49) [(.clone (.generated .binding 0)), (.call (.function 7) [(.lit (.str "'"))] false)] false))], (.matchOn (.move (.generated .holder 147)) [(.mk .none (.mk [] (.succeed (.call (.function 57) [(.move (.generated .binding 0))] false)))), (.mk (.some (.bind (.generated .binding 1))) (.mk [(.mk (.bind (.generated .holder 148)) none (.call (.function 56) [(.clone (.generated .binding 1)), (.call (.function 7) [(.lit (.str "' does not depend on any axioms"))] false)] false))] (.matchOn (.move (.generated .holder 148)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 149)) none (.call (.function 56) [(.move (.generated .binding 1)), (.call (.function 7) [(.lit (.str "]"))] false)] false))] (.matchOn (.move (.generated .holder 149)) [(.mk .none (.mk [] (.succeed (.call (.function 57) [(.move (.generated .binding 0))] false)))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.call (.function 62) [(.move (.generated .binding 0)), (.move (.generated .binding 5))] false)))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [(.mk (.bind (.generated .binding 3)) (some (.result (.pair .bytes (.list .bytes)) .bytes)) (.call (.function 58) [(.clone (.generated .binding 2)), (.construct (.nil .bytes) [])] false)), (.mk (.bind (.generated .binding 4)) (some (.result (.pair .bytes (.list .bytes)) .bytes)) (.call (.function 59) [(.call (.function 60) [(.clone (.generated .binding 2))] false)] false))] (.cond (.call (.function 61) [(.move (.generated .binding 2))] true) (.mk [] (.succeed (.move (.generated .binding 3)))) (.mk [] (.succeed (.move (.generated .binding 4)))))))])))]), [(0, .bytes, (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.call (.function 57) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 148)) none (.call (.function 56) [(.clone (.generated .binding 1)), (.call (.function 7) [(.lit (.str "' does not depend on any axioms"))] false)] false))]) (tail := (.matchOn (.move (.generated .holder 148)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 149)) none (.call (.function 56) [(.move (.generated .binding 1)), (.call (.function 7) [(.lit (.str "]"))] false)] false))] (.matchOn (.move (.generated .holder 149)) [(.mk .none (.mk [] (.succeed (.call (.function 57) [(.move (.generated .binding 0))] false)))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.call (.function 62) [(.move (.generated .binding 0)), (.move (.generated .binding 5))] false)))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [(.mk (.bind (.generated .binding 3)) (some (.result (.pair .bytes (.list .bytes)) .bytes)) (.call (.function 58) [(.clone (.generated .binding 2)), (.construct (.nil .bytes) [])] false)), (.mk (.bind (.generated .binding 4)) (some (.result (.pair .bytes (.list .bytes)) .bytes)) (.call (.function 59) [(.call (.function 60) [(.clone (.generated .binding 2))] false)] false))] (.cond (.call (.function 61) [(.move (.generated .binding 2))] true) (.mk [] (.succeed (.move (.generated .binding 3)))) (.mk [] (.succeed (.move (.generated .binding 4)))))))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 149)) none (.call (.function 56) [(.move (.generated .binding 1)), (.call (.function 7) [(.lit (.str "]"))] false)] false))]) (tail := (.matchOn (.move (.generated .holder 149)) [(.mk .none (.mk [] (.succeed (.call (.function 57) [(.move (.generated .binding 0))] false)))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.call (.function 62) [(.move (.generated .binding 0)), (.move (.generated .binding 5))] false)))])) (Corr.mCons (Γ' := [(2, .bytes, (some 2)), (1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .binding 3)) (some (.result (.pair .bytes (.list .bytes)) .bytes)) (.call (.function 58) [(.clone (.generated .binding 2)), (.construct (.nil .bytes) [])] false)), (.mk (.bind (.generated .binding 4)) (some (.result (.pair .bytes (.list .bytes)) .bytes)) (.call (.function 59) [(.call (.function 60) [(.clone (.generated .binding 2))] false)] false))]) (tail := (.cond (.call (.function 61) [(.move (.generated .binding 2))] true) (.mk [] (.succeed (.move (.generated .binding 3)))) (.mk [] (.succeed (.move (.generated .binding 4)))))) (Corr.mNil) rfl rfl rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.bytes, (.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := []) (ce := (.call (.function 61) [(.move (.generated .binding 2))] true)) (lk := []) (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.move (.generated .binding 3)))) (lb := []) (tb := (.succeed (.move (.generated .binding 4)))) (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl))) (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))))))) rfl rfl rfl (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.call (.function 57) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(5, .bytes, (some 5)), (1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.call (.function 62) [(.move (.generated .binding 0)), (.move (.generated .binding 5))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl)) rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl)⟩⟩ - -theorem fun45 : FunOK program krate flags 45 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 150)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 150)) [(.mk .none (.mk [] (.construct (.nil .bytes) []))), (.mk (.some (.tuple [.wild, (.bind (.generated .binding 2))])) (.mk [] (.move (.generated .binding 2))))]), [(0, (.list .bytes), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .bytes)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list .bytes), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.nil .bytes) [])) (Corr.mCons (Γ' := [(2, (.list .bytes), (some 2)), (1, .bytes, none), (0, (.list .bytes), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.move (.generated .binding 2))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun46 : FunOK program krate flags 46 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.tuple [(.bind (.generated .part 151)), .wild]) none (.call (.function 38) [(.construct (.closure 7 63) [(.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 152)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 152))] false))), (.lit (.nat 0))] true))], (.succeed (.move (.generated .part 151))), [(0, .bytes, (some 0))], rfl, rfl, - (Corr.fOfB (Corr.first (ta := .nat) (tb := .bool) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [.nat] (.option .nat)), .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [.bytes]) (mask := [false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 152)) none (.move (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 152))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl))⟩⟩ - -theorem fun47 : FunOK program krate flags 47 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.tuple [(.bind (.generated .part 153)), .wild]) none (.call (.function 38) [(.construct (.closure 7 64) [(.copy (.generated .binding 1)), (.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 154)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 154))] false))), (.block (.mk [(.mk (.bind (.generated .operand 155)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 155))] false)))] true))], (.succeed (.move (.generated .part 153))), [(1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.fOfB (Corr.first (ta := .nat) (tb := .bool) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [.nat] (.option .nat)), .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [.nat, .bytes]) (mask := [false, false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 154)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 154))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 155)) none (.move (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 155))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl))⟩⟩ - -theorem fun48 : FunOK program krate flags 48 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 160)) none (.block (.mk [(.mk (.bind (.generated .operand 157)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 158)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 159)) none (.block (.mk [(.mk (.bind (.generated .operand 156)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 156))] false))))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 157)), (.move (.generated .operand 158)), (.move (.generated .operand 159))] false))))], (.matchOn (.move (.generated .holder 160)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.bind (.generated .binding 2))) (.mk [(.mk (.bind (.generated .operand 161)) none (.move (.generated .binding 2))), (.mk (.bind (.generated .operand 162)) none (.move (.generated .binding 1)))] (.call (.runtime .equal) [(.move (.generated .operand 161)), (.move (.generated .operand 162))] false)))]), [(1, .bytes, (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 157)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 158)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 159)) none (.block (.mk [(.mk (.bind (.generated .operand 156)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 156))] false))))]) (tail := (.call (.runtime .sliceBytes) [(.move (.generated .operand 157)), (.move (.generated .operand 158)), (.move (.generated .operand 159))] false)) (Corr.prim (ts := [.bytes, .nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 156)) none (.clone (.generated .binding 1)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 156))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(2, .bytes, (some 2)), (1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .operand 161)) none (.move (.generated .binding 2))), (.mk (.bind (.generated .operand 162)) none (.move (.generated .binding 1)))]) (tail := (.call (.runtime .equal) [(.move (.generated .operand 161)), (.move (.generated .operand 162))] false)) (Corr.mNil) rfl rfl rfl (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ - -theorem fun49 : FunOK program krate flags 49 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 48) [(.clone (.generated .binding 0)), (.clone (.generated .binding 1))] false) (.mk [] (.construct .some [(.call (.function 18) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 163)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 163))] false))), (.block (.mk [(.mk (.bind (.generated .operand 166)) none (.block (.mk [(.mk (.bind (.generated .operand 164)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 164))] false)))), (.mk (.bind (.generated .operand 167)) none (.block (.mk [(.mk (.bind (.generated .operand 165)) none (.move (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 165))] false))))] (.call (.runtime .natSub) [(.move (.generated .operand 166)), (.move (.generated .operand 167))] false)))] false)])) (.mk [] (.construct (.none .bytes) []))), [(1, .bytes, (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 48) [(.clone (.generated .binding 0)), (.clone (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 18) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 163)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 163))] false))), (.block (.mk [(.mk (.bind (.generated .operand 166)) none (.block (.mk [(.mk (.bind (.generated .operand 164)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 164))] false)))), (.mk (.bind (.generated .operand 167)) none (.block (.mk [(.mk (.bind (.generated .operand 165)) none (.move (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 165))] false))))] (.call (.runtime .natSub) [(.move (.generated .operand 166)), (.move (.generated .operand 167))] false)))] false)])) (lb := []) (tb := (.construct (.none .bytes) [])) (Corr.build (ts := [.bytes]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 163)) none (.clone (.generated .binding 1)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 163))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 166)) none (.block (.mk [(.mk (.bind (.generated .operand 164)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 164))] false)))), (.mk (.bind (.generated .operand 167)) none (.block (.mk [(.mk (.bind (.generated .operand 165)) none (.move (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 165))] false))))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 166)), (.move (.generated .operand 167))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 164)) none (.move (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 164))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 165)) none (.move (.generated .binding 1)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 165))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ - -theorem fun50 : FunOK program krate flags 50 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 168)) none (.call (.function 65) [(.move (.generated .binding 0)), (.call (.function 7) [(.lit (.str ":"))] false)] true))], (.matchOn (.move (.generated .holder 168)) [(.mk .none (.mk [] (.succeed (.construct (.none .bytes) [])))), (.mk (.some (.bind (.generated .binding 1))) (.mk [(.mk (.bind (.generated .holder 170)) none (.call (.function 65) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 169))]) none (.move (.generated .binding 1)))] (.move (.generated .part 169)))), (.call (.function 7) [(.lit (.str ":"))] false)] true))] (.matchOn (.move (.generated .holder 170)) [(.mk .none (.mk [] (.succeed (.construct (.none .bytes) [])))), (.mk (.some (.bind (.generated .binding 2))) (.mk [(.mk (.bind (.generated .holder 172)) none (.call (.function 65) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 171))]) none (.move (.generated .binding 2)))] (.move (.generated .part 171)))), (.call (.function 7) [(.lit (.str ":"))] false)] true))] (.matchOn (.move (.generated .holder 172)) [(.mk .none (.mk [] (.succeed (.construct (.none .bytes) [])))), (.mk (.some (.bind (.generated .binding 3))) (.mk [(.mk (.bind (.generated .binding 4)) (some .bytes) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 173)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 173))))), (.mk (.bind (.generated .binding 5)) (some .bytes) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 174)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 174))))), (.mk (.bind (.generated .binding 6)) (some .bytes) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 175))]) none (.move (.generated .binding 3)))] (.move (.generated .part 175))))), (.mk (.bind (.generated .binding 7)) (some (.option .bytes)) (.call (.function 66) [(.move (.generated .binding 5)), (.move (.generated .binding 6))] true))] (.cond (.call (.function 67) [(.move (.generated .binding 4))] true) (.mk [] (.succeed (.move (.generated .binding 7)))) (.mk [] (.succeed (.construct (.none .bytes) []))))))])))])))]), [(0, .bytes, (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option (.pair .bytes .bytes))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.construct (.none .bytes) []))) (Corr.mCons (Γ' := [(1, (.pair .bytes .bytes), (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .holder 170)) none (.call (.function 65) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 169))]) none (.move (.generated .binding 1)))] (.move (.generated .part 169)))), (.call (.function 7) [(.lit (.str ":"))] false)] true))]) (tail := (.matchOn (.move (.generated .holder 170)) [(.mk .none (.mk [] (.succeed (.construct (.none .bytes) [])))), (.mk (.some (.bind (.generated .binding 2))) (.mk [(.mk (.bind (.generated .holder 172)) none (.call (.function 65) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 171))]) none (.move (.generated .binding 2)))] (.move (.generated .part 171)))), (.call (.function 7) [(.lit (.str ":"))] false)] true))] (.matchOn (.move (.generated .holder 172)) [(.mk .none (.mk [] (.succeed (.construct (.none .bytes) [])))), (.mk (.some (.bind (.generated .binding 3))) (.mk [(.mk (.bind (.generated .binding 4)) (some .bytes) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 173)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 173))))), (.mk (.bind (.generated .binding 5)) (some .bytes) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 174)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 174))))), (.mk (.bind (.generated .binding 6)) (some .bytes) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 175))]) none (.move (.generated .binding 3)))] (.move (.generated .part 175))))), (.mk (.bind (.generated .binding 7)) (some (.option .bytes)) (.call (.function 66) [(.move (.generated .binding 5)), (.move (.generated .binding 6))] true))] (.cond (.call (.function 67) [(.move (.generated .binding 4))] true) (.mk [] (.succeed (.move (.generated .binding 7)))) (.mk [] (.succeed (.construct (.none .bytes) []))))))])))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := (.option (.pair .bytes .bytes))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 169))]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 169))) (Corr.second (ta := .bytes) (tb := .bytes) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.pair .bytes .bytes), (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.construct (.none .bytes) []))) (Corr.mCons (Γ' := [(2, (.pair .bytes .bytes), (some 2)), (1, (.pair .bytes .bytes), (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .holder 172)) none (.call (.function 65) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 171))]) none (.move (.generated .binding 2)))] (.move (.generated .part 171)))), (.call (.function 7) [(.lit (.str ":"))] false)] true))]) (tail := (.matchOn (.move (.generated .holder 172)) [(.mk .none (.mk [] (.succeed (.construct (.none .bytes) [])))), (.mk (.some (.bind (.generated .binding 3))) (.mk [(.mk (.bind (.generated .binding 4)) (some .bytes) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 173)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 173))))), (.mk (.bind (.generated .binding 5)) (some .bytes) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 174)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 174))))), (.mk (.bind (.generated .binding 6)) (some .bytes) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 175))]) none (.move (.generated .binding 3)))] (.move (.generated .part 175))))), (.mk (.bind (.generated .binding 7)) (some (.option .bytes)) (.call (.function 66) [(.move (.generated .binding 5)), (.move (.generated .binding 6))] true))] (.cond (.call (.function 67) [(.move (.generated .binding 4))] true) (.mk [] (.succeed (.move (.generated .binding 7)))) (.mk [] (.succeed (.construct (.none .bytes) []))))))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := (.option (.pair .bytes .bytes))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 171))]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 171))) (Corr.second (ta := .bytes) (tb := .bytes) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(2, (.pair .bytes .bytes), (some 2)), (1, (.pair .bytes .bytes), (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.construct (.none .bytes) []))) (Corr.mCons (Γ' := [(3, (.pair .bytes .bytes), (some 3)), (2, (.pair .bytes .bytes), (some 2)), (1, (.pair .bytes .bytes), (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .binding 4)) (some .bytes) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 173)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 173))))), (.mk (.bind (.generated .binding 5)) (some .bytes) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 174)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 174))))), (.mk (.bind (.generated .binding 6)) (some .bytes) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 175))]) none (.move (.generated .binding 3)))] (.move (.generated .part 175))))), (.mk (.bind (.generated .binding 7)) (some (.option .bytes)) (.call (.function 66) [(.move (.generated .binding 5)), (.move (.generated .binding 6))] true))]) (tail := (.cond (.call (.function 67) [(.move (.generated .binding 4))] true) (.mk [] (.succeed (.move (.generated .binding 7)))) (.mk [] (.succeed (.construct (.none .bytes) []))))) (Corr.mNil) rfl rfl rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 173)), .wild]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 173))) (Corr.first (ta := .bytes) (tb := .bytes) (Corr.var rfl rfl) rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 174)), .wild]) none (.move (.generated .binding 3)))]) (tail := (.move (.generated .part 174))) (Corr.first (ta := .bytes) (tb := .bytes) (Corr.var rfl rfl) rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 175))]) none (.move (.generated .binding 3)))]) (tail := (.move (.generated .part 175))) (Corr.second (ta := .bytes) (tb := .bytes) (Corr.var rfl rfl) rfl)) rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := []) (ce := (.call (.function 67) [(.move (.generated .binding 4))] true)) (lk := []) (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.move (.generated .binding 7)))) (lb := []) (tb := (.succeed (.construct (.none .bytes) []))) (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl))) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))))))) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl)⟩⟩ - -theorem fun51 : FunOK program krate flags 51 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 176)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 177)) none (.copy (.generated .binding 1)))], (.call (.runtime .indexBytes) [(.move (.generated .operand 176)), (.move (.generated .operand 177))] false), [(1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.prim (ts := [.bytes, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun52 : FunOK program krate flags 52 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 68) [(.clone (.generated .binding 0)), (.lit (.bytes (ByteArray.mk #[13])))] false) (.mk [] (.call (.function 18) [(.clone (.generated .binding 0)), (.lit (.nat 0)), (.block (.mk [(.mk (.bind (.generated .operand 179)) none (.block (.mk [(.mk (.bind (.generated .operand 178)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 178))] false)))), (.mk (.bind (.generated .operand 180)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 179)), (.move (.generated .operand 180))] false)))] false)) (.mk [] (.move (.generated .binding 0)))), [(0, .bytes, (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 68) [(.clone (.generated .binding 0)), (.lit (.bytes (ByteArray.mk #[13])))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 18) [(.clone (.generated .binding 0)), (.lit (.nat 0)), (.block (.mk [(.mk (.bind (.generated .operand 179)) none (.block (.mk [(.mk (.bind (.generated .operand 178)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 178))] false)))), (.mk (.bind (.generated .operand 180)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 179)), (.move (.generated .operand 180))] false)))] false)) (lb := []) (tb := (.move (.generated .binding 0))) (Corr.callOps (ts := [.bytes, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 179)) none (.block (.mk [(.mk (.bind (.generated .operand 178)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 178))] false)))), (.mk (.bind (.generated .operand 180)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 179)), (.move (.generated .operand 180))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 178)) none (.move (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 178))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.var rfl rfl))))⟩⟩ - -theorem fun53 : FunOK program krate flags 53 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 69) [(.move (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 48))] false) (.mk [] (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 181)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 182)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 181)), (.move (.generated .operand 182))] true)))]))) (.mk [] (.succeed (.construct (.none .nat) [])))), [(1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 69) [(.move (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 48))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .nat, (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 181)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 182)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 181)), (.move (.generated .operand 182))] true)))]))) (lb := []) (tb := (.succeed (.construct (.none .nat) []))) (Corr.fOfB (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 181)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 182)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 181)), (.move (.generated .operand 182))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))⟩⟩ - -theorem fun54 : FunOK program krate flags 54 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 187)) none (.block (.mk [(.mk (.bind (.generated .operand 183)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 184)) none (.move (.generated .binding 1)))] (.call (.runtime .compareBytes) [(.move (.generated .operand 183)), (.move (.generated .operand 184))] false)))), (.mk (.bind (.generated .operand 188)) none (.block (.mk [(.mk (.bind (.generated .operand 185)) none (.lit (.bytes (ByteArray.mk #[])))), (.mk (.bind (.generated .operand 186)) none (.lit (.bytes (ByteArray.mk #[1]))))] (.call (.runtime .compareBytes) [(.move (.generated .operand 185)), (.move (.generated .operand 186))] false))))], (.call (.runtime .equal) [(.move (.generated .operand 187)), (.move (.generated .operand 188))] false), [(1, .bytes, (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.prim (ts := [.ordering, .ordering]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 183)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 184)) none (.move (.generated .binding 1)))]) (tail := (.call (.runtime .compareBytes) [(.move (.generated .operand 183)), (.move (.generated .operand 184))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 185)) none (.lit (.bytes (ByteArray.mk #[])))), (.mk (.bind (.generated .operand 186)) none (.lit (.bytes (ByteArray.mk #[1]))))]) (tail := (.call (.runtime .compareBytes) [(.move (.generated .operand 185)), (.move (.generated .operand 186))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun55 : FunOK program krate flags 55 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.cond (.call (.function 70) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 9)), (.lit (.fixed .u8 13))] false) (.mk [] (.lit (.bool true))) (.mk [] (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 32))] false))) (.mk [] (.succeed (.lit (.nat 1)))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 194))] false) (.mk [] (.cond (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 189)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 190)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 189)), (.move (.generated .operand 190))] true))), (.lit (.fixed .u8 133))] false) (.mk [] (.lit (.bool true))) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 191)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 192)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 191)), (.move (.generated .operand 192))] true))), (.lit (.fixed .u8 160))] false))) (.mk [] (.succeed (.lit (.nat 2)))) (.mk [] (.succeed (.lit (.nat 0)))))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 225))] false) (.mk [] (.cond (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 193)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 194)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 193)), (.move (.generated .operand 194))] true))), (.lit (.fixed .u8 154))] false) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 195)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 196)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 195)), (.move (.generated .operand 196))] true))), (.lit (.fixed .u8 128))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 226))] false) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 197)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 198)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 197)), (.move (.generated .operand 198))] true))), (.lit (.fixed .u8 128))] false) (.mk [] (.cond (.cond (.call (.function 70) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 199)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 200)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 199)), (.move (.generated .operand 200))] true))), (.lit (.fixed .u8 128)), (.lit (.fixed .u8 138))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 201)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 202)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 201)), (.move (.generated .operand 202))] true))), (.lit (.fixed .u8 168))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 203)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 204)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 203)), (.move (.generated .operand 204))] true))), (.lit (.fixed .u8 169))] false) (.mk [] (.lit (.bool true))) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 205)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 206)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 205)), (.move (.generated .operand 206))] true))), (.lit (.fixed .u8 175))] false))))))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))) (.mk [] (.cond (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 207)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 208)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 207)), (.move (.generated .operand 208))] true))), (.lit (.fixed .u8 129))] false) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 209)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 210)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 209)), (.move (.generated .operand 210))] true))), (.lit (.fixed .u8 159))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 227))] false) (.mk [] (.cond (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 211)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 212)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 211)), (.move (.generated .operand 212))] true))), (.lit (.fixed .u8 128))] false) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 213)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 214)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 213)), (.move (.generated .operand 214))] true))), (.lit (.fixed .u8 128))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))) (.mk [] (.succeed (.lit (.nat 0))))))))))))), [(1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.cond (.call (.function 70) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 9)), (.lit (.fixed .u8 13))] false) (.mk [] (.lit (.bool true))) (.mk [] (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 32))] false)))) (lk := []) (Corr.cond (lc := []) (ce := (.call (.function 70) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 9)), (.lit (.fixed .u8 13))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .nat, (.fixed .u8), (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := []) (tb := (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 32))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.cond (lc := []) (ce := (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 32))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .nat, (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kId (Corr.bOfE (Corr.buildConst rfl)) (Corr.bOfE (Corr.buildConst rfl)) rfl)))) (Corr.kIf (la := []) (ta := (.succeed (.lit (.nat 1)))) (lb := []) (tb := (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 194))] false) (.mk [] (.cond (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 189)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 190)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 189)), (.move (.generated .operand 190))] true))), (.lit (.fixed .u8 133))] false) (.mk [] (.lit (.bool true))) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 191)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 192)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 191)), (.move (.generated .operand 192))] true))), (.lit (.fixed .u8 160))] false))) (.mk [] (.succeed (.lit (.nat 2)))) (.mk [] (.succeed (.lit (.nat 0)))))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 225))] false) (.mk [] (.cond (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 193)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 194)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 193)), (.move (.generated .operand 194))] true))), (.lit (.fixed .u8 154))] false) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 195)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 196)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 195)), (.move (.generated .operand 196))] true))), (.lit (.fixed .u8 128))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 226))] false) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 197)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 198)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 197)), (.move (.generated .operand 198))] true))), (.lit (.fixed .u8 128))] false) (.mk [] (.cond (.cond (.call (.function 70) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 199)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 200)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 199)), (.move (.generated .operand 200))] true))), (.lit (.fixed .u8 128)), (.lit (.fixed .u8 138))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 201)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 202)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 201)), (.move (.generated .operand 202))] true))), (.lit (.fixed .u8 168))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 203)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 204)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 203)), (.move (.generated .operand 204))] true))), (.lit (.fixed .u8 169))] false) (.mk [] (.lit (.bool true))) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 205)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 206)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 205)), (.move (.generated .operand 206))] true))), (.lit (.fixed .u8 175))] false))))))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))) (.mk [] (.cond (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 207)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 208)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 207)), (.move (.generated .operand 208))] true))), (.lit (.fixed .u8 129))] false) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 209)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 210)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 209)), (.move (.generated .operand 210))] true))), (.lit (.fixed .u8 159))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 227))] false) (.mk [] (.cond (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 211)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 212)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 211)), (.move (.generated .operand 212))] true))), (.lit (.fixed .u8 128))] false) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 213)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 214)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 213)), (.move (.generated .operand 214))] true))), (.lit (.fixed .u8 128))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))) (.mk [] (.succeed (.lit (.nat 0)))))))))))) (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl))) (Corr.cond (lc := []) (ce := (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 194))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .nat, (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 189)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 190)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 189)), (.move (.generated .operand 190))] true))), (.lit (.fixed .u8 133))] false) (.mk [] (.lit (.bool true))) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 191)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 192)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 191)), (.move (.generated .operand 192))] true))), (.lit (.fixed .u8 160))] false))) (.mk [] (.succeed (.lit (.nat 2)))) (.mk [] (.succeed (.lit (.nat 0)))))) (lb := []) (tb := (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 225))] false) (.mk [] (.cond (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 193)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 194)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 193)), (.move (.generated .operand 194))] true))), (.lit (.fixed .u8 154))] false) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 195)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 196)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 195)), (.move (.generated .operand 196))] true))), (.lit (.fixed .u8 128))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 226))] false) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 197)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 198)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 197)), (.move (.generated .operand 198))] true))), (.lit (.fixed .u8 128))] false) (.mk [] (.cond (.cond (.call (.function 70) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 199)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 200)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 199)), (.move (.generated .operand 200))] true))), (.lit (.fixed .u8 128)), (.lit (.fixed .u8 138))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 201)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 202)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 201)), (.move (.generated .operand 202))] true))), (.lit (.fixed .u8 168))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 203)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 204)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 203)), (.move (.generated .operand 204))] true))), (.lit (.fixed .u8 169))] false) (.mk [] (.lit (.bool true))) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 205)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 206)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 205)), (.move (.generated .operand 206))] true))), (.lit (.fixed .u8 175))] false))))))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))) (.mk [] (.cond (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 207)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 208)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 207)), (.move (.generated .operand 208))] true))), (.lit (.fixed .u8 129))] false) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 209)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 210)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 209)), (.move (.generated .operand 210))] true))), (.lit (.fixed .u8 159))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 227))] false) (.mk [] (.cond (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 211)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 212)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 211)), (.move (.generated .operand 212))] true))), (.lit (.fixed .u8 128))] false) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 213)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 214)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 213)), (.move (.generated .operand 214))] true))), (.lit (.fixed .u8 128))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))) (.mk [] (.succeed (.lit (.nat 0)))))))))) (Corr.cond (lc := []) (ce := (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 189)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 190)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 189)), (.move (.generated .operand 190))] true))), (.lit (.fixed .u8 133))] false) (.mk [] (.lit (.bool true))) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 191)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 192)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 191)), (.move (.generated .operand 192))] true))), (.lit (.fixed .u8 160))] false)))) (lk := []) (Corr.cond (lc := []) (ce := (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 189)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 190)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 189)), (.move (.generated .operand 190))] true))), (.lit (.fixed .u8 133))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .nat, (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 189)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 190)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 189)), (.move (.generated .operand 190))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := []) (tb := (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 191)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 192)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 191)), (.move (.generated .operand 192))] true))), (.lit (.fixed .u8 160))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.cond (lc := []) (ce := (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 191)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 192)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 191)), (.move (.generated .operand 192))] true))), (.lit (.fixed .u8 160))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .nat, (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 191)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 192)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 191)), (.move (.generated .operand 192))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kId (Corr.bOfE (Corr.buildConst rfl)) (Corr.bOfE (Corr.buildConst rfl)) rfl)))) (Corr.kIf (la := []) (ta := (.succeed (.lit (.nat 2)))) (lb := []) (tb := (.succeed (.lit (.nat 0)))) (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl))) (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl))))) (Corr.cond (lc := []) (ce := (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 225))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .nat, (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 193)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 194)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 193)), (.move (.generated .operand 194))] true))), (.lit (.fixed .u8 154))] false) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 195)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 196)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 195)), (.move (.generated .operand 196))] true))), (.lit (.fixed .u8 128))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))) (lb := []) (tb := (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 226))] false) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 197)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 198)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 197)), (.move (.generated .operand 198))] true))), (.lit (.fixed .u8 128))] false) (.mk [] (.cond (.cond (.call (.function 70) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 199)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 200)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 199)), (.move (.generated .operand 200))] true))), (.lit (.fixed .u8 128)), (.lit (.fixed .u8 138))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 201)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 202)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 201)), (.move (.generated .operand 202))] true))), (.lit (.fixed .u8 168))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 203)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 204)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 203)), (.move (.generated .operand 204))] true))), (.lit (.fixed .u8 169))] false) (.mk [] (.lit (.bool true))) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 205)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 206)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 205)), (.move (.generated .operand 206))] true))), (.lit (.fixed .u8 175))] false))))))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))) (.mk [] (.cond (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 207)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 208)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 207)), (.move (.generated .operand 208))] true))), (.lit (.fixed .u8 129))] false) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 209)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 210)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 209)), (.move (.generated .operand 210))] true))), (.lit (.fixed .u8 159))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 227))] false) (.mk [] (.cond (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 211)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 212)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 211)), (.move (.generated .operand 212))] true))), (.lit (.fixed .u8 128))] false) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 213)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 214)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 213)), (.move (.generated .operand 214))] true))), (.lit (.fixed .u8 128))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))) (.mk [] (.succeed (.lit (.nat 0)))))))) (Corr.cond (lc := []) (ce := (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 193)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 194)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 193)), (.move (.generated .operand 194))] true))), (.lit (.fixed .u8 154))] false) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 195)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 196)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 195)), (.move (.generated .operand 196))] true))), (.lit (.fixed .u8 128))] false)) (.mk [] (.lit (.bool false))))) (lk := []) (Corr.cond (lc := []) (ce := (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 193)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 194)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 193)), (.move (.generated .operand 194))] true))), (.lit (.fixed .u8 154))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .nat, (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 193)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 194)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 193)), (.move (.generated .operand 194))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 195)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 196)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 195)), (.move (.generated .operand 196))] true))), (.lit (.fixed .u8 128))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := []) (ce := (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 195)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 196)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 195)), (.move (.generated .operand 196))] true))), (.lit (.fixed .u8 128))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .nat, (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 195)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 196)) none (.lit (.nat 2)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 195)), (.move (.generated .operand 196))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kId (Corr.bOfE (Corr.buildConst rfl)) (Corr.bOfE (Corr.buildConst rfl)) rfl)) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.kIf (la := []) (ta := (.succeed (.lit (.nat 3)))) (lb := []) (tb := (.succeed (.lit (.nat 0)))) (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl))) (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl))))) (Corr.cond (lc := []) (ce := (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 226))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .nat, (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 197)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 198)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 197)), (.move (.generated .operand 198))] true))), (.lit (.fixed .u8 128))] false) (.mk [] (.cond (.cond (.call (.function 70) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 199)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 200)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 199)), (.move (.generated .operand 200))] true))), (.lit (.fixed .u8 128)), (.lit (.fixed .u8 138))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 201)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 202)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 201)), (.move (.generated .operand 202))] true))), (.lit (.fixed .u8 168))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 203)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 204)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 203)), (.move (.generated .operand 204))] true))), (.lit (.fixed .u8 169))] false) (.mk [] (.lit (.bool true))) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 205)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 206)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 205)), (.move (.generated .operand 206))] true))), (.lit (.fixed .u8 175))] false))))))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))) (.mk [] (.cond (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 207)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 208)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 207)), (.move (.generated .operand 208))] true))), (.lit (.fixed .u8 129))] false) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 209)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 210)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 209)), (.move (.generated .operand 210))] true))), (.lit (.fixed .u8 159))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))))) (lb := []) (tb := (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 227))] false) (.mk [] (.cond (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 211)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 212)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 211)), (.move (.generated .operand 212))] true))), (.lit (.fixed .u8 128))] false) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 213)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 214)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 213)), (.move (.generated .operand 214))] true))), (.lit (.fixed .u8 128))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))) (.mk [] (.succeed (.lit (.nat 0)))))) (Corr.cond (lc := []) (ce := (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 197)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 198)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 197)), (.move (.generated .operand 198))] true))), (.lit (.fixed .u8 128))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .nat, (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 197)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 198)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 197)), (.move (.generated .operand 198))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.cond (.call (.function 70) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 199)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 200)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 199)), (.move (.generated .operand 200))] true))), (.lit (.fixed .u8 128)), (.lit (.fixed .u8 138))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 201)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 202)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 201)), (.move (.generated .operand 202))] true))), (.lit (.fixed .u8 168))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 203)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 204)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 203)), (.move (.generated .operand 204))] true))), (.lit (.fixed .u8 169))] false) (.mk [] (.lit (.bool true))) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 205)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 206)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 205)), (.move (.generated .operand 206))] true))), (.lit (.fixed .u8 175))] false))))))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))) (lb := []) (tb := (.cond (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 207)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 208)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 207)), (.move (.generated .operand 208))] true))), (.lit (.fixed .u8 129))] false) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 209)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 210)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 209)), (.move (.generated .operand 210))] true))), (.lit (.fixed .u8 159))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))) (Corr.cond (lc := []) (ce := (.cond (.call (.function 70) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 199)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 200)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 199)), (.move (.generated .operand 200))] true))), (.lit (.fixed .u8 128)), (.lit (.fixed .u8 138))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 201)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 202)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 201)), (.move (.generated .operand 202))] true))), (.lit (.fixed .u8 168))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 203)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 204)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 203)), (.move (.generated .operand 204))] true))), (.lit (.fixed .u8 169))] false) (.mk [] (.lit (.bool true))) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 205)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 206)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 205)), (.move (.generated .operand 206))] true))), (.lit (.fixed .u8 175))] false)))))))) (lk := []) (Corr.cond (lc := []) (ce := (.call (.function 70) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 199)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 200)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 199)), (.move (.generated .operand 200))] true))), (.lit (.fixed .u8 128)), (.lit (.fixed .u8 138))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .nat, (.fixed .u8), (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 199)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 200)) none (.lit (.nat 2)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 199)), (.move (.generated .operand 200))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := []) (tb := (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 201)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 202)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 201)), (.move (.generated .operand 202))] true))), (.lit (.fixed .u8 168))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 203)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 204)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 203)), (.move (.generated .operand 204))] true))), (.lit (.fixed .u8 169))] false) (.mk [] (.lit (.bool true))) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 205)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 206)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 205)), (.move (.generated .operand 206))] true))), (.lit (.fixed .u8 175))] false)))))) (Corr.bOfE (Corr.buildConst rfl)) (Corr.cond (lc := []) (ce := (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 201)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 202)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 201)), (.move (.generated .operand 202))] true))), (.lit (.fixed .u8 168))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .nat, (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 201)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 202)) none (.lit (.nat 2)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 201)), (.move (.generated .operand 202))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := []) (tb := (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 203)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 204)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 203)), (.move (.generated .operand 204))] true))), (.lit (.fixed .u8 169))] false) (.mk [] (.lit (.bool true))) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 205)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 206)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 205)), (.move (.generated .operand 206))] true))), (.lit (.fixed .u8 175))] false)))) (Corr.bOfE (Corr.buildConst rfl)) (Corr.cond (lc := []) (ce := (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 203)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 204)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 203)), (.move (.generated .operand 204))] true))), (.lit (.fixed .u8 169))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .nat, (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 203)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 204)) none (.lit (.nat 2)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 203)), (.move (.generated .operand 204))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := []) (tb := (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 205)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 206)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 205)), (.move (.generated .operand 206))] true))), (.lit (.fixed .u8 175))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.cond (lc := []) (ce := (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 205)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 206)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 205)), (.move (.generated .operand 206))] true))), (.lit (.fixed .u8 175))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .nat, (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 205)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 206)) none (.lit (.nat 2)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 205)), (.move (.generated .operand 206))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kId (Corr.bOfE (Corr.buildConst rfl)) (Corr.bOfE (Corr.buildConst rfl)) rfl)))))))) (Corr.kIf (la := []) (ta := (.succeed (.lit (.nat 3)))) (lb := []) (tb := (.succeed (.lit (.nat 0)))) (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl))) (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl))))) (Corr.cond (lc := []) (ce := (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 207)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 208)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 207)), (.move (.generated .operand 208))] true))), (.lit (.fixed .u8 129))] false) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 209)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 210)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 209)), (.move (.generated .operand 210))] true))), (.lit (.fixed .u8 159))] false)) (.mk [] (.lit (.bool false))))) (lk := []) (Corr.cond (lc := []) (ce := (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 207)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 208)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 207)), (.move (.generated .operand 208))] true))), (.lit (.fixed .u8 129))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .nat, (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 207)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 208)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 207)), (.move (.generated .operand 208))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 209)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 210)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 209)), (.move (.generated .operand 210))] true))), (.lit (.fixed .u8 159))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := []) (ce := (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 209)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 210)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 209)), (.move (.generated .operand 210))] true))), (.lit (.fixed .u8 159))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .nat, (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 209)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 210)) none (.lit (.nat 2)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 209)), (.move (.generated .operand 210))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kId (Corr.bOfE (Corr.buildConst rfl)) (Corr.bOfE (Corr.buildConst rfl)) rfl)) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.kIf (la := []) (ta := (.succeed (.lit (.nat 3)))) (lb := []) (tb := (.succeed (.lit (.nat 0)))) (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl))) (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl))))))) (Corr.cond (lc := []) (ce := (.call (.function 69) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 227))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .nat, (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 211)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 212)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 211)), (.move (.generated .operand 212))] true))), (.lit (.fixed .u8 128))] false) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 213)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 214)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 213)), (.move (.generated .operand 214))] true))), (.lit (.fixed .u8 128))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))) (lb := []) (tb := (.succeed (.lit (.nat 0)))) (Corr.cond (lc := []) (ce := (.cond (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 211)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 212)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 211)), (.move (.generated .operand 212))] true))), (.lit (.fixed .u8 128))] false) (.mk [] (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 213)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 214)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 213)), (.move (.generated .operand 214))] true))), (.lit (.fixed .u8 128))] false)) (.mk [] (.lit (.bool false))))) (lk := []) (Corr.cond (lc := []) (ce := (.call (.function 69) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 211)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 212)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 211)), (.move (.generated .operand 212))] true))), (.lit (.fixed .u8 128))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .nat, (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 211)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 212)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 211)), (.move (.generated .operand 212))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 213)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 214)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 213)), (.move (.generated .operand 214))] true))), (.lit (.fixed .u8 128))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := []) (ce := (.call (.function 69) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 213)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 214)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 213)), (.move (.generated .operand 214))] true))), (.lit (.fixed .u8 128))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .nat, (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 213)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 214)) none (.lit (.nat 2)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 213)), (.move (.generated .operand 214))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kId (Corr.bOfE (Corr.buildConst rfl)) (Corr.bOfE (Corr.buildConst rfl)) rfl)) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.kIf (la := []) (ta := (.succeed (.lit (.nat 3)))) (lb := []) (tb := (.succeed (.lit (.nat 0)))) (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl))) (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl))))) (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl)))))))))))))⟩⟩ - -theorem fun56 : FunOK program krate flags 56 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 68) [(.clone (.generated .binding 0)), (.clone (.generated .binding 1))] false) (.mk [] (.construct .some [(.call (.function 18) [(.clone (.generated .binding 0)), (.lit (.nat 0)), (.block (.mk [(.mk (.bind (.generated .operand 217)) none (.block (.mk [(.mk (.bind (.generated .operand 215)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 215))] false)))), (.mk (.bind (.generated .operand 218)) none (.block (.mk [(.mk (.bind (.generated .operand 216)) none (.move (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 216))] false))))] (.call (.runtime .natSub) [(.move (.generated .operand 217)), (.move (.generated .operand 218))] false)))] false)])) (.mk [] (.construct (.none .bytes) []))), [(1, .bytes, (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 68) [(.clone (.generated .binding 0)), (.clone (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 18) [(.clone (.generated .binding 0)), (.lit (.nat 0)), (.block (.mk [(.mk (.bind (.generated .operand 217)) none (.block (.mk [(.mk (.bind (.generated .operand 215)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 215))] false)))), (.mk (.bind (.generated .operand 218)) none (.block (.mk [(.mk (.bind (.generated .operand 216)) none (.move (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 216))] false))))] (.call (.runtime .natSub) [(.move (.generated .operand 217)), (.move (.generated .operand 218))] false)))] false)])) (lb := []) (tb := (.construct (.none .bytes) [])) (Corr.build (ts := [.bytes]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 217)) none (.block (.mk [(.mk (.bind (.generated .operand 215)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 215))] false)))), (.mk (.bind (.generated .operand 218)) none (.block (.mk [(.mk (.bind (.generated .operand 216)) none (.move (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 216))] false))))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 217)), (.move (.generated .operand 218))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 215)) none (.move (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 215))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 216)) none (.move (.generated .binding 1)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 216))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ - -theorem fun57 : FunOK program krate flags 57 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 59) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "unrecognized axiom payload: "))] false), (.move (.generated .binding 0))] false)] false), [(0, .bytes, (some 0))], rfl, rfl, - (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun58 : FunOK program krate flags 58 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct (.ok (.pair .bytes (.list .bytes)) .bytes) [(.pair (.move (.generated .binding 0)) (.move (.generated .binding 1)))]), [(1, (.list .bytes), (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.build (ts := [(.pair .bytes (.list .bytes))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lNil))) rfl)⟩⟩ - -theorem fun59 : FunOK program krate flags 59 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct (.err (.pair .bytes (.list .bytes)) .bytes) [(.move (.generated .binding 0))]), [(0, .bytes, (some 0))], rfl, rfl, - (Corr.build (ts := [.bytes]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)⟩⟩ - -theorem fun60 : FunOK program krate flags 60 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 6) [(.call (.function 40) [(.move (.generated .binding 0))] false), (.call (.function 7) [(.lit (.str " is not a Lean name"))] false)] false), [(0, .bytes, (some 0))], rfl, rfl, - (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun61 : FunOK program krate flags 61 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 222)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 219))]) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 220)), .wild]) none (.call (.function 71) [(.construct (.closure 8 72) [(.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 221)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 221))] false))), (.pair (.lit (.nat 0)) (.lit (.nat 0)))] true))] (.move (.generated .part 220)))))] (.move (.generated .part 219))))), (.mk (.bind (.generated .operand 223)) none (.lit (.nat 1)))], (.succeed (.call (.runtime .natEq) [(.move (.generated .operand 222)), (.move (.generated .operand 223))] false)), [(0, .bytes, (some 0))], rfl, rfl, - (Corr.fOfB (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 219))]) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 220)), .wild]) none (.call (.function 71) [(.construct (.closure 8 72) [(.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 221)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 221))] false))), (.pair (.lit (.nat 0)) (.lit (.nat 0)))] true))] (.move (.generated .part 220)))))]) (tail := (.move (.generated .part 219))) (Corr.second (ta := .nat) (tb := .nat) (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 220)), .wild]) none (.call (.function 71) [(.construct (.closure 8 72) [(.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 221)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 221))] false))), (.pair (.lit (.nat 0)) (.lit (.nat 0)))] true))]) (tail := (.move (.generated .part 220))) (Corr.first (ta := (.pair .nat .nat)) (tb := .bool) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.pair .nat .nat)] (.option (.pair .nat .nat))), .nat, (.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [.bytes]) (mask := [false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 221)) none (.move (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 221))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl)) rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl))⟩⟩ - -theorem fun62 : FunOK program krate flags 62 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 224)) none (.call (.function 73) [(.move (.generated .binding 1)), (.call (.function 7) [(.lit (.str "' depends on axioms: ["))] false)] true))], (.matchOn (.move (.generated .holder 224)) [(.mk .none (.mk [] (.succeed (.call (.function 57) [(.move (.generated .binding 0))] false)))), (.mk (.some (.bind (.generated .binding 2))) (.mk [(.mk (.bind (.generated .binding 3)) (some .bytes) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 225)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 225))))), (.mk (.bind (.generated .binding 4)) (some .bytes) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 226))]) none (.move (.generated .binding 2)))] (.move (.generated .part 226))))), (.mk (.bind (.generated .binding 5)) (some (.result (.pair .bytes (.list .bytes)) .bytes)) (.call (.function 74) [(.clone (.generated .binding 3)), (.move (.generated .binding 4))] true)), (.mk (.bind (.generated .binding 6)) (some (.result (.pair .bytes (.list .bytes)) .bytes)) (.call (.function 59) [(.call (.function 60) [(.clone (.generated .binding 3))] false)] false))] (.cond (.call (.function 61) [(.move (.generated .binding 3))] true) (.mk [] (.succeed (.move (.generated .binding 5)))) (.mk [] (.succeed (.move (.generated .binding 6)))))))]), [(1, .bytes, (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option (.pair .bytes .bytes))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.call (.function 57) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(2, (.pair .bytes .bytes), (some 2)), (1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .binding 3)) (some .bytes) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 225)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 225))))), (.mk (.bind (.generated .binding 4)) (some .bytes) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 226))]) none (.move (.generated .binding 2)))] (.move (.generated .part 226))))), (.mk (.bind (.generated .binding 5)) (some (.result (.pair .bytes (.list .bytes)) .bytes)) (.call (.function 74) [(.clone (.generated .binding 3)), (.move (.generated .binding 4))] true)), (.mk (.bind (.generated .binding 6)) (some (.result (.pair .bytes (.list .bytes)) .bytes)) (.call (.function 59) [(.call (.function 60) [(.clone (.generated .binding 3))] false)] false))]) (tail := (.cond (.call (.function 61) [(.move (.generated .binding 3))] true) (.mk [] (.succeed (.move (.generated .binding 5)))) (.mk [] (.succeed (.move (.generated .binding 6)))))) (Corr.mNil) rfl rfl rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 225)), .wild]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 225))) (Corr.first (ta := .bytes) (tb := .bytes) (Corr.var rfl rfl) rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 226))]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 226))) (Corr.second (ta := .bytes) (tb := .bytes) (Corr.var rfl rfl) rfl)) rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := []) (ce := (.call (.function 61) [(.move (.generated .binding 3))] true)) (lk := []) (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.move (.generated .binding 5)))) (lb := []) (tb := (.succeed (.move (.generated .binding 6)))) (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl))) (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))))))))) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl)⟩⟩ - -theorem fun63 : FunOK program krate flags 63 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 227)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 228)) none (.call (.function 55) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1))] true))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 227)), (.move (.generated .operand 228))] false) (.mk [] (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 229)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 230)) none (.call (.function 55) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 229)), (.move (.generated .operand 230))] true)))]))) (.mk [] (.succeed (.construct (.none .nat) [])))), [(1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 227)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 228)) none (.call (.function 55) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1))] true))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 227)), (.move (.generated .operand 228))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 229)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 230)) none (.call (.function 55) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 229)), (.move (.generated .operand 230))] true)))]))) (lb := []) (tb := (.succeed (.construct (.none .nat) []))) (Corr.fOfB (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 229)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 230)) none (.call (.function 55) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] true))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 229)), (.move (.generated .operand 230))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))⟩⟩ - -theorem fun64 : FunOK program krate flags 64 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 231)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 232)) none (.call (.function 75) [(.clone (.generated .binding 1)), (.copy (.generated .binding 2))] true))], (.cond (.cond (.call (.runtime .natLt) [(.move (.generated .operand 231)), (.move (.generated .operand 232))] false) (.mk [(.mk (.bind (.generated .operand 235)) none (.block (.mk [(.mk (.bind (.generated .operand 233)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 234)) none (.call (.function 75) [(.clone (.generated .binding 1)), (.copy (.generated .binding 2))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 233)), (.move (.generated .operand 234))] true)))), (.mk (.bind (.generated .operand 236)) none (.copy (.generated .binding 2)))] (.call (.runtime .natLe) [(.move (.generated .operand 235)), (.move (.generated .operand 236))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 237)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 238)) none (.call (.function 75) [(.move (.generated .binding 1)), (.copy (.generated .binding 2))] true))] (.call (.runtime .natSub) [(.move (.generated .operand 237)), (.move (.generated .operand 238))] false)))]))) (.mk [] (.succeed (.construct (.none .nat) [])))), [(2, .nat, (some 2)), (1, .bytes, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 231)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 232)) none (.call (.function 75) [(.clone (.generated .binding 1)), (.copy (.generated .binding 2))] true))]) (ce := (.cond (.call (.runtime .natLt) [(.move (.generated .operand 231)), (.move (.generated .operand 232))] false) (.mk [(.mk (.bind (.generated .operand 235)) none (.block (.mk [(.mk (.bind (.generated .operand 233)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 234)) none (.call (.function 75) [(.clone (.generated .binding 1)), (.copy (.generated .binding 2))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 233)), (.move (.generated .operand 234))] true)))), (.mk (.bind (.generated .operand 236)) none (.copy (.generated .binding 2)))] (.call (.runtime .natLe) [(.move (.generated .operand 235)), (.move (.generated .operand 236))] false)) (.mk [] (.lit (.bool false))))) (lk := []) (Corr.cond (lc := [(.mk (.bind (.generated .operand 231)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 232)) none (.call (.function 75) [(.clone (.generated .binding 1)), (.copy (.generated .binding 2))] true))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 231)), (.move (.generated .operand 232))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 235)) none (.block (.mk [(.mk (.bind (.generated .operand 233)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 234)) none (.call (.function 75) [(.clone (.generated .binding 1)), (.copy (.generated .binding 2))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 233)), (.move (.generated .operand 234))] true)))), (.mk (.bind (.generated .operand 236)) none (.copy (.generated .binding 2)))]) (ta := (.call (.runtime .natLe) [(.move (.generated .operand 235)), (.move (.generated .operand 236))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 233)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 234)) none (.call (.function 75) [(.clone (.generated .binding 1)), (.copy (.generated .binding 2))] true))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 233)), (.move (.generated .operand 234))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 237)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 238)) none (.call (.function 75) [(.move (.generated .binding 1)), (.copy (.generated .binding 2))] true))] (.call (.runtime .natSub) [(.move (.generated .operand 237)), (.move (.generated .operand 238))] false)))]))) (lb := []) (tb := (.succeed (.construct (.none .nat) []))) (Corr.fOfB (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 237)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 238)) none (.call (.function 75) [(.move (.generated .binding 1)), (.copy (.generated .binding 2))] true))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 237)), (.move (.generated .operand 238))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))⟩⟩ - -theorem fun65 : FunOK program krate flags 65 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 239)) none (.call (.function 76) [(.clone (.generated .binding 0)), (.clone (.generated .binding 1))] true))], (.matchOn (.move (.generated .holder 239)) [(.mk .none (.mk [] (.succeed (.construct (.none (.pair .bytes .bytes)) [])))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct .some [(.pair (.call (.function 18) [(.clone (.generated .binding 0)), (.lit (.nat 0)), (.copy (.generated .binding 2))] false) (.call (.function 18) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 241)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 242)) none (.block (.mk [(.mk (.bind (.generated .operand 240)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 240))] false))))] (.call (.runtime .natAdd) [(.move (.generated .operand 241)), (.move (.generated .operand 242))] true))), (.block (.mk [(.mk (.bind (.generated .operand 247)) none (.block (.mk [(.mk (.bind (.generated .operand 243)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 243))] false)))), (.mk (.bind (.generated .operand 248)) none (.block (.mk [(.mk (.bind (.generated .operand 245)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 246)) none (.block (.mk [(.mk (.bind (.generated .operand 244)) none (.move (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 244))] false))))] (.call (.runtime .natAdd) [(.move (.generated .operand 245)), (.move (.generated .operand 246))] true))))] (.call (.runtime .natSub) [(.move (.generated .operand 247)), (.move (.generated .operand 248))] false)))] false))]))))]), [(1, .bytes, (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.construct (.none (.pair .bytes .bytes)) []))) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct .some [(.pair (.call (.function 18) [(.clone (.generated .binding 0)), (.lit (.nat 0)), (.copy (.generated .binding 2))] false) (.call (.function 18) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 241)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 242)) none (.block (.mk [(.mk (.bind (.generated .operand 240)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 240))] false))))] (.call (.runtime .natAdd) [(.move (.generated .operand 241)), (.move (.generated .operand 242))] true))), (.block (.mk [(.mk (.bind (.generated .operand 247)) none (.block (.mk [(.mk (.bind (.generated .operand 243)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 243))] false)))), (.mk (.bind (.generated .operand 248)) none (.block (.mk [(.mk (.bind (.generated .operand 245)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 246)) none (.block (.mk [(.mk (.bind (.generated .operand 244)) none (.move (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 244))] false))))] (.call (.runtime .natAdd) [(.move (.generated .operand 245)), (.move (.generated .operand 246))] true))))] (.call (.runtime .natSub) [(.move (.generated .operand 247)), (.move (.generated .operand 248))] false)))] false))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.pair .bytes .bytes)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 241)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 242)) none (.block (.mk [(.mk (.bind (.generated .operand 240)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 240))] false))))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 241)), (.move (.generated .operand 242))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 240)) none (.clone (.generated .binding 1)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 240))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 247)) none (.block (.mk [(.mk (.bind (.generated .operand 243)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 243))] false)))), (.mk (.bind (.generated .operand 248)) none (.block (.mk [(.mk (.bind (.generated .operand 245)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 246)) none (.block (.mk [(.mk (.bind (.generated .operand 244)) none (.move (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 244))] false))))] (.call (.runtime .natAdd) [(.move (.generated .operand 245)), (.move (.generated .operand 246))] true))))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 247)), (.move (.generated .operand 248))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 243)) none (.move (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 243))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 245)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 246)) none (.block (.mk [(.mk (.bind (.generated .operand 244)) none (.move (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 244))] false))))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 245)), (.move (.generated .operand 246))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 244)) none (.move (.generated .binding 1)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 244))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl)⟩⟩ - -theorem fun66 : FunOK program krate flags 66 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 249)) none (.call (.function 65) [(.clone (.generated .binding 0)), (.call (.function 7) [(.lit (.str "-"))] false)] true))], (.matchOn (.move (.generated .holder 249)) [(.mk .none (.mk [(.mk (.bind (.generated .binding 9)) (some (.option .bytes)) (.call (.function 77) [(.move (.generated .binding 1))] false))] (.cond (.call (.function 67) [(.move (.generated .binding 0))] true) (.mk [] (.succeed (.move (.generated .binding 9)))) (.mk [] (.succeed (.construct (.none .bytes) [])))))), (.mk (.some (.bind (.generated .binding 2))) (.mk [(.mk (.bind (.generated .binding 3)) (some .bytes) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 250)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 250))))), (.mk (.bind (.generated .binding 4)) (some .bytes) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 251))]) none (.move (.generated .binding 2)))] (.move (.generated .part 251))))), (.mk (.bind (.generated .holder 252)) none (.call (.function 65) [(.move (.generated .binding 1)), (.call (.function 7) [(.lit (.str ":"))] false)] true))] (.matchOn (.move (.generated .holder 252)) [(.mk .none (.mk [] (.succeed (.construct (.none .bytes) [])))), (.mk (.some (.bind (.generated .binding 5))) (.mk [(.mk (.bind (.generated .binding 6)) (some .bytes) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 253)), .wild]) none (.move (.generated .binding 5)))] (.move (.generated .part 253))))), (.mk (.bind (.generated .binding 7)) (some .bytes) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 254))]) none (.move (.generated .binding 5)))] (.move (.generated .part 254))))), (.mk (.bind (.generated .binding 8)) (some (.option .bytes)) (.call (.function 77) [(.move (.generated .binding 7))] false))] (.cond (.call (.function 67) [(.move (.generated .binding 3))] true) (.mk [] (.cond (.call (.function 67) [(.move (.generated .binding 4))] true) (.mk [] (.cond (.call (.function 67) [(.move (.generated .binding 6))] true) (.mk [] (.succeed (.move (.generated .binding 8)))) (.mk [] (.succeed (.construct (.none .bytes) []))))) (.mk [] (.succeed (.construct (.none .bytes) []))))) (.mk [] (.succeed (.construct (.none .bytes) []))))))])))]), [(1, .bytes, (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option (.pair .bytes .bytes))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .binding 9)) (some (.option .bytes)) (.call (.function 77) [(.move (.generated .binding 1))] false))]) (tail := (.cond (.call (.function 67) [(.move (.generated .binding 0))] true) (.mk [] (.succeed (.move (.generated .binding 9)))) (.mk [] (.succeed (.construct (.none .bytes) []))))) (Corr.mCons (Γ' := [(2, (.pair .bytes .bytes), (some 2)), (1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .binding 3)) (some .bytes) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 250)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 250))))), (.mk (.bind (.generated .binding 4)) (some .bytes) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 251))]) none (.move (.generated .binding 2)))] (.move (.generated .part 251))))), (.mk (.bind (.generated .holder 252)) none (.call (.function 65) [(.move (.generated .binding 1)), (.call (.function 7) [(.lit (.str ":"))] false)] true))]) (tail := (.matchOn (.move (.generated .holder 252)) [(.mk .none (.mk [] (.succeed (.construct (.none .bytes) [])))), (.mk (.some (.bind (.generated .binding 5))) (.mk [(.mk (.bind (.generated .binding 6)) (some .bytes) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 253)), .wild]) none (.move (.generated .binding 5)))] (.move (.generated .part 253))))), (.mk (.bind (.generated .binding 7)) (some .bytes) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 254))]) none (.move (.generated .binding 5)))] (.move (.generated .part 254))))), (.mk (.bind (.generated .binding 8)) (some (.option .bytes)) (.call (.function 77) [(.move (.generated .binding 7))] false))] (.cond (.call (.function 67) [(.move (.generated .binding 3))] true) (.mk [] (.cond (.call (.function 67) [(.move (.generated .binding 4))] true) (.mk [] (.cond (.call (.function 67) [(.move (.generated .binding 6))] true) (.mk [] (.succeed (.move (.generated .binding 8)))) (.mk [] (.succeed (.construct (.none .bytes) []))))) (.mk [] (.succeed (.construct (.none .bytes) []))))) (.mk [] (.succeed (.construct (.none .bytes) []))))))])) (Corr.mNil) rfl rfl rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 250)), .wild]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 250))) (Corr.first (ta := .bytes) (tb := .bytes) (Corr.var rfl rfl) rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 251))]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 251))) (Corr.second (ta := .bytes) (tb := .bytes) (Corr.var rfl rfl) rfl)) rfl (Corr.matchArms (st := (.option (.pair .bytes .bytes))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, .bytes, (some 4)), (3, .bytes, (some 3)), (2, (.pair .bytes .bytes), (some 2)), (1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.construct (.none .bytes) []))) (Corr.mCons (Γ' := [(5, (.pair .bytes .bytes), (some 5)), (4, .bytes, (some 4)), (3, .bytes, (some 3)), (2, (.pair .bytes .bytes), (some 2)), (1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .binding 6)) (some .bytes) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 253)), .wild]) none (.move (.generated .binding 5)))] (.move (.generated .part 253))))), (.mk (.bind (.generated .binding 7)) (some .bytes) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 254))]) none (.move (.generated .binding 5)))] (.move (.generated .part 254))))), (.mk (.bind (.generated .binding 8)) (some (.option .bytes)) (.call (.function 77) [(.move (.generated .binding 7))] false))]) (tail := (.cond (.call (.function 67) [(.move (.generated .binding 3))] true) (.mk [] (.cond (.call (.function 67) [(.move (.generated .binding 4))] true) (.mk [] (.cond (.call (.function 67) [(.move (.generated .binding 6))] true) (.mk [] (.succeed (.move (.generated .binding 8)))) (.mk [] (.succeed (.construct (.none .bytes) []))))) (.mk [] (.succeed (.construct (.none .bytes) []))))) (.mk [] (.succeed (.construct (.none .bytes) []))))) (Corr.mNil) rfl rfl rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 253)), .wild]) none (.move (.generated .binding 5)))]) (tail := (.move (.generated .part 253))) (Corr.first (ta := .bytes) (tb := .bytes) (Corr.var rfl rfl) rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 254))]) none (.move (.generated .binding 5)))]) (tail := (.move (.generated .part 254))) (Corr.second (ta := .bytes) (tb := .bytes) (Corr.var rfl rfl) rfl)) rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := []) (ce := (.call (.function 67) [(.move (.generated .binding 3))] true)) (lk := []) (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 67) [(.move (.generated .binding 4))] true) (.mk [] (.cond (.call (.function 67) [(.move (.generated .binding 6))] true) (.mk [] (.succeed (.move (.generated .binding 8)))) (.mk [] (.succeed (.construct (.none .bytes) []))))) (.mk [] (.succeed (.construct (.none .bytes) []))))) (lb := []) (tb := (.succeed (.construct (.none .bytes) []))) (Corr.cond (lc := []) (ce := (.call (.function 67) [(.move (.generated .binding 4))] true)) (lk := []) (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 67) [(.move (.generated .binding 6))] true) (.mk [] (.succeed (.move (.generated .binding 8)))) (.mk [] (.succeed (.construct (.none .bytes) []))))) (lb := []) (tb := (.succeed (.construct (.none .bytes) []))) (Corr.cond (lc := []) (ce := (.call (.function 67) [(.move (.generated .binding 6))] true)) (lk := []) (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.move (.generated .binding 8)))) (lb := []) (tb := (.succeed (.construct (.none .bytes) []))) (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl))) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))))))) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl)))) rfl rfl rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := []) (ce := (.call (.function 67) [(.move (.generated .binding 0))] true)) (lk := []) (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.move (.generated .binding 9)))) (lb := []) (tb := (.succeed (.construct (.none .bytes) []))) (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl))) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))))) rfl rfl rfl)⟩⟩ - -theorem fun67 : FunOK program krate flags 67 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 78) [(.call (.function 32) [(.move (.generated .binding 0))] true)] false), [(0, .bytes, (some 0))], rfl, rfl, - (Corr.callF (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl)⟩⟩ - -theorem fun68 : FunOK program krate flags 68 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 255)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 255))] false)))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 256)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 256))] false)))), (.mk (.bind (.generated .operand 257)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 258)) none (.copy (.generated .binding 2)))], (.cond (.call (.runtime .natLe) [(.move (.generated .operand 257)), (.move (.generated .operand 258))] false) (.mk [(.mk (.bind (.generated .holder 264)) none (.block (.mk [(.mk (.bind (.generated .operand 261)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 262)) none (.block (.mk [(.mk (.bind (.generated .operand 259)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 260)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 259)), (.move (.generated .operand 260))] false)))), (.mk (.bind (.generated .operand 263)) none (.copy (.generated .binding 3)))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 261)), (.move (.generated .operand 262)), (.move (.generated .operand 263))] false))))] (.matchOn (.move (.generated .holder 264)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.bind (.generated .binding 4))) (.mk [(.mk (.bind (.generated .operand 265)) none (.move (.generated .binding 4))), (.mk (.bind (.generated .operand 266)) none (.move (.generated .binding 1)))] (.call (.runtime .equal) [(.move (.generated .operand 265)), (.move (.generated .operand 266))] false)))])) (.mk [] (.lit (.bool false)))), [(1, .bytes, (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 255)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 255))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 256)) none (.clone (.generated .binding 1)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 256))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := [(.mk (.bind (.generated .operand 257)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 258)) none (.copy (.generated .binding 2)))]) (ce := (.call (.runtime .natLe) [(.move (.generated .operand 257)), (.move (.generated .operand 258))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .holder 264)) none (.block (.mk [(.mk (.bind (.generated .operand 261)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 262)) none (.block (.mk [(.mk (.bind (.generated .operand 259)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 260)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 259)), (.move (.generated .operand 260))] false)))), (.mk (.bind (.generated .operand 263)) none (.copy (.generated .binding 3)))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 261)), (.move (.generated .operand 262)), (.move (.generated .operand 263))] false))))]) (ta := (.matchOn (.move (.generated .holder 264)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.bind (.generated .binding 4))) (.mk [(.mk (.bind (.generated .operand 265)) none (.move (.generated .binding 4))), (.mk (.bind (.generated .operand 266)) none (.move (.generated .binding 1)))] (.call (.runtime .equal) [(.move (.generated .operand 265)), (.move (.generated .operand 266))] false)))])) (lb := []) (tb := (.lit (.bool false))) (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 261)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 262)) none (.block (.mk [(.mk (.bind (.generated .operand 259)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 260)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 259)), (.move (.generated .operand 260))] false)))), (.mk (.bind (.generated .operand 263)) none (.copy (.generated .binding 3)))]) (tail := (.call (.runtime .sliceBytes) [(.move (.generated .operand 261)), (.move (.generated .operand 262)), (.move (.generated .operand 263))] false)) (Corr.prim (ts := [.bytes, .nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 259)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 260)) none (.copy (.generated .binding 3)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 259)), (.move (.generated .operand 260))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (2, .nat, (some 2)), (1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, .bytes, (some 4)), (3, .nat, (some 3)), (2, .nat, (some 2)), (1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .operand 265)) none (.move (.generated .binding 4))), (.mk (.bind (.generated .operand 266)) none (.move (.generated .binding 1)))]) (tail := (.call (.runtime .equal) [(.move (.generated .operand 265)), (.move (.generated .operand 266))] false)) (Corr.mNil) rfl rfl rfl (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))))⟩⟩ - -theorem fun69 : FunOK program krate flags 69 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 267)) none (.call (.function 51) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false))], (.matchOn (.move (.generated .holder 267)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.bind (.generated .binding 3))) (.mk [(.mk (.bind (.generated .operand 268)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 269)) none (.copy (.generated .binding 2)))] (.call (.runtime .equal) [(.move (.generated .operand 268)), (.move (.generated .operand 269))] false)))]), [(2, (.fixed .u8), (some 2)), (1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option (.fixed .u8))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(2, (.fixed .u8), (some 2)), (1, .nat, (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(3, (.fixed .u8), (some 3)), (2, (.fixed .u8), (some 2)), (1, .nat, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .operand 268)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 269)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .equal) [(.move (.generated .operand 268)), (.move (.generated .operand 269))] false)) (Corr.mNil) rfl rfl rfl (Corr.prim (ts := [(.fixed .u8), (.fixed .u8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ - -theorem fun70 : FunOK program krate flags 70 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 270)) none (.call (.function 51) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false))], (.matchOn (.move (.generated .holder 270)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 79) [(.copy (.generated .binding 4)), (.copy (.generated .binding 2)), (.copy (.generated .binding 3))] false)))]), [(3, (.fixed .u8), (some 3)), (2, (.fixed .u8), (some 2)), (1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option (.fixed .u8))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.fixed .u8), (some 3)), (2, (.fixed .u8), (some 2)), (1, .nat, (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, (.fixed .u8), (some 4)), (3, (.fixed .u8), (some 3)), (2, (.fixed .u8), (some 2)), (1, .nat, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.call (.function 79) [(.copy (.generated .binding 4)), (.copy (.generated .binding 2)), (.copy (.generated .binding 3))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.fixed .u8), (.fixed .u8), (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ - -theorem fun71 : FunOK program krate flags 71 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 271)) none (.copy (.generated .binding 1)))], (.cond (.isZero (.generated .holder 271)) (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 271))), (.mk (.bind (.generated .holder 273)) none (.block (.mk [(.mk (.bind (.generated .callee 272)) (some (.fn 8)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 272) [(.copy (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 273)) [(.mk .none (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 71) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)))]))), [(2, (.pair .nat .nat), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.pair .nat .nat)] (.option (.pair .nat .nat))), (some 0))], rfl, rfl, - (Corr.matchNat (sl := (some 3)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool false))))) (lb := [(.mk (.bind (.generated .holder 273)) none (.block (.mk [(.mk (.bind (.generated .callee 272)) (some (.fn 8)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 272) [(.copy (.generated .binding 2))] true))))]) (tb := (.matchOn (.move (.generated .holder 273)) [(.mk .none (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 71) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)))])) (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))))) (Corr.matchArms (st := (.option (.pair .nat .nat))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 272)) (some (.fn 8)) (.clone (.generated .binding 0)))]) (tail := (.apply (.generated .callee 272) [(.copy (.generated .binding 2))] true)) (Corr.apply (ps := [(.pair .nat .nat)]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (2, (.pair .nat .nat), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.pair .nat .nat)] (.option (.pair .nat .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true))))) (Corr.mCons (Γ' := [(4, (.pair .nat .nat), (some 4)), (3, .nat, (some 3)), (2, (.pair .nat .nat), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.pair .nat .nat)] (.option (.pair .nat .nat))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 71) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.pair .nat .nat)] (.option (.pair .nat .nat))), .nat, (.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))))))) rfl rfl rfl)))⟩⟩ - -theorem fun72 : FunOK program krate flags 72 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 80) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false), [(1, (.pair .nat .nat), (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.callF (ts := [.bytes, (.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)⟩⟩ - -theorem fun73 : FunOK program krate flags 73 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 274)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 274))] false)))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 275)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 275))] false)))), (.mk (.bind (.generated .operand 276)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 277)) none (.copy (.generated .binding 3)))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 276)), (.move (.generated .operand 277))] false) (.mk [] (.succeed (.construct (.none (.pair .bytes .bytes)) []))) (.mk [(.mk (.bind (.generated .binding 4)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 278)), .wild]) none (.call (.function 38) [(.construct (.closure 7 81) [(.clone (.generated .binding 1)), (.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 279)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 280)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 279)), (.move (.generated .operand 280))] true))), (.block (.mk [(.mk (.bind (.generated .operand 281)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 282)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 281)), (.move (.generated .operand 282))] false)))] true))] (.move (.generated .part 278)))))] (.cond (.call (.function 82) [(.clone (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 4))] false) (.mk [] (.succeed (.construct .some [(.pair (.call (.function 18) [(.clone (.generated .binding 0)), (.lit (.nat 0)), (.copy (.generated .binding 4))] false) (.call (.function 18) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 283)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 284)) none (.copy (.generated .binding 3)))] (.call (.runtime .natAdd) [(.move (.generated .operand 283)), (.move (.generated .operand 284))] true))), (.block (.mk [(.mk (.bind (.generated .operand 287)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 288)) none (.block (.mk [(.mk (.bind (.generated .operand 285)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 286)) none (.copy (.generated .binding 3)))] (.call (.runtime .natAdd) [(.move (.generated .operand 285)), (.move (.generated .operand 286))] true))))] (.call (.runtime .natSub) [(.move (.generated .operand 287)), (.move (.generated .operand 288))] false)))] false))]))) (.mk [] (.succeed (.construct (.none (.pair .bytes .bytes)) [])))))), [(1, .bytes, (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 274)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 274))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 275)) none (.clone (.generated .binding 1)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 275))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := [(.mk (.bind (.generated .operand 276)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 277)) none (.copy (.generated .binding 3)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 276)), (.move (.generated .operand 277))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct (.none (.pair .bytes .bytes)) []))) (lb := [(.mk (.bind (.generated .binding 4)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 278)), .wild]) none (.call (.function 38) [(.construct (.closure 7 81) [(.clone (.generated .binding 1)), (.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 279)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 280)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 279)), (.move (.generated .operand 280))] true))), (.block (.mk [(.mk (.bind (.generated .operand 281)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 282)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 281)), (.move (.generated .operand 282))] false)))] true))] (.move (.generated .part 278)))))]) (tb := (.cond (.call (.function 82) [(.clone (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 4))] false) (.mk [] (.succeed (.construct .some [(.pair (.call (.function 18) [(.clone (.generated .binding 0)), (.lit (.nat 0)), (.copy (.generated .binding 4))] false) (.call (.function 18) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 283)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 284)) none (.copy (.generated .binding 3)))] (.call (.runtime .natAdd) [(.move (.generated .operand 283)), (.move (.generated .operand 284))] true))), (.block (.mk [(.mk (.bind (.generated .operand 287)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 288)) none (.block (.mk [(.mk (.bind (.generated .operand 285)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 286)) none (.copy (.generated .binding 3)))] (.call (.runtime .natAdd) [(.move (.generated .operand 285)), (.move (.generated .operand 286))] true))))] (.call (.runtime .natSub) [(.move (.generated .operand 287)), (.move (.generated .operand 288))] false)))] false))]))) (.mk [] (.succeed (.construct (.none (.pair .bytes .bytes)) []))))) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 278)), .wild]) none (.call (.function 38) [(.construct (.closure 7 81) [(.clone (.generated .binding 1)), (.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 279)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 280)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 279)), (.move (.generated .operand 280))] true))), (.block (.mk [(.mk (.bind (.generated .operand 281)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 282)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 281)), (.move (.generated .operand 282))] false)))] true))]) (tail := (.move (.generated .part 278))) (Corr.first (ta := .nat) (tb := .bool) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [.nat] (.option .nat)), .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [.bytes, .bytes]) (mask := [false, false]) (af := true) (ff := false) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 279)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 280)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 279)), (.move (.generated .operand 280))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 281)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 282)) none (.copy (.generated .binding 3)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 281)), (.move (.generated .operand 282))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl)) rfl (Corr.cond (lc := []) (ce := (.call (.function 82) [(.clone (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 4))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.pair (.call (.function 18) [(.clone (.generated .binding 0)), (.lit (.nat 0)), (.copy (.generated .binding 4))] false) (.call (.function 18) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 283)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 284)) none (.copy (.generated .binding 3)))] (.call (.runtime .natAdd) [(.move (.generated .operand 283)), (.move (.generated .operand 284))] true))), (.block (.mk [(.mk (.bind (.generated .operand 287)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 288)) none (.block (.mk [(.mk (.bind (.generated .operand 285)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 286)) none (.copy (.generated .binding 3)))] (.call (.runtime .natAdd) [(.move (.generated .operand 285)), (.move (.generated .operand 286))] true))))] (.call (.runtime .natSub) [(.move (.generated .operand 287)), (.move (.generated .operand 288))] false)))] false))]))) (lb := []) (tb := (.succeed (.construct (.none (.pair .bytes .bytes)) []))) (Corr.fOfB (Corr.build (ts := [(.pair .bytes .bytes)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 283)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 284)) none (.copy (.generated .binding 3)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 283)), (.move (.generated .operand 284))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 287)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 288)) none (.block (.mk [(.mk (.bind (.generated .operand 285)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 286)) none (.copy (.generated .binding 3)))] (.call (.runtime .natAdd) [(.move (.generated .operand 285)), (.move (.generated .operand 286))] true))))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 287)), (.move (.generated .operand 288))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 285)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 286)) none (.copy (.generated .binding 3)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 285)), (.move (.generated .operand 286))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))))))))⟩⟩ - -theorem fun74 : FunOK program krate flags 74 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 289)) none (.call (.function 83) [(.construct (.closure 9 84) []), (.construct (.ok (.list .bytes) .bytes) [(.construct (.nil .bytes) [])]), (.call (.function 85) [(.move (.generated .binding 1)), (.lit (.fixed .u8 44))] true)] true))], (.matchOn (.move (.generated .holder 289)) [(.mk (.ok (.bind (.generated .binding 3))) (.mk [(.mk (.bind (.generated .holder 290)) none (.clone (.generated .binding 3)))] (.matchOn (.uncons (.generated .holder 290)) [(.mk .none (.mk [] (.succeed (.call (.function 59) [(.call (.function 7) [(.lit (.str "an axiom list cannot be empty"))] false)] false)))), (.mk (.some (.tuple [.wild, .wild])) (.mk [] (.succeed (.call (.function 58) [(.move (.generated .binding 0)), (.move (.generated .binding 3))] false))))]))), (.mk (.err (.bind (.generated .binding 2))) (.mk [] (.succeed (.call (.function 59) [(.move (.generated .binding 2))] false))))]), [(1, .bytes, (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.matchArms (st := (.result (.list .bytes) .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.result (.list .bytes) .bytes), .bytes] (.result (.list .bytes) .bytes)), (.result (.list .bytes) .bytes), (.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .bytes)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list .bytes), (some 3)), (1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 290)) none (.clone (.generated .binding 3)))]) (tail := (.matchOn (.uncons (.generated .holder 290)) [(.mk .none (.mk [] (.succeed (.call (.function 59) [(.call (.function 7) [(.lit (.str "an axiom list cannot be empty"))] false)] false)))), (.mk (.some (.tuple [.wild, .wild])) (.mk [] (.succeed (.call (.function 58) [(.move (.generated .binding 0)), (.move (.generated .binding 3))] false))))])) (Corr.mCons (Γ' := [(2, .bytes, (some 2)), (1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.call (.function 59) [(.move (.generated .binding 2))] false))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.matchArms (st := (.list .bytes)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(3, (.list .bytes), (some 3)), (1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.call (.function 59) [(.call (.function 7) [(.lit (.str "an axiom list cannot be empty"))] false)] false))) (Corr.mCons (Γ' := [(5, (.list .bytes), none), (4, .bytes, none), (3, (.list .bytes), (some 3)), (1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.call (.function 58) [(.move (.generated .binding 0)), (.move (.generated .binding 3))] false))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [.bytes, (.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl)) rfl rfl rfl)⟩⟩ - -theorem fun75 : FunOK program krate flags 75 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 291)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 292)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 291)), (.move (.generated .operand 292))] false) (.mk [] (.succeed (.lit (.nat 0)))) (.mk [(.mk (.bind (.generated .operand 295)) none (.call (.function 55) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 293)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 294)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 293)), (.move (.generated .operand 294))] false)))] true)), (.mk (.bind (.generated .operand 296)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 295)), (.move (.generated .operand 296))] false) (.mk [] (.succeed (.lit (.nat 1)))) (.mk [(.mk (.bind (.generated .operand 297)) none (.lit (.nat 2))), (.mk (.bind (.generated .operand 298)) none (.copy (.generated .binding 1)))] (.cond (.cond (.call (.runtime .natLe) [(.move (.generated .operand 297)), (.move (.generated .operand 298))] false) (.mk [(.mk (.bind (.generated .operand 301)) none (.call (.function 55) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 299)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 300)) none (.lit (.nat 2)))] (.call (.runtime .natSub) [(.move (.generated .operand 299)), (.move (.generated .operand 300))] false)))] true)), (.mk (.bind (.generated .operand 302)) none (.lit (.nat 2)))] (.call (.runtime .natEq) [(.move (.generated .operand 301)), (.move (.generated .operand 302))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 2)))) (.mk [(.mk (.bind (.generated .operand 303)) none (.lit (.nat 3))), (.mk (.bind (.generated .operand 304)) none (.copy (.generated .binding 1)))] (.cond (.cond (.call (.runtime .natLe) [(.move (.generated .operand 303)), (.move (.generated .operand 304))] false) (.mk [(.mk (.bind (.generated .operand 307)) none (.call (.function 55) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 305)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 306)) none (.lit (.nat 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 305)), (.move (.generated .operand 306))] false)))] true)), (.mk (.bind (.generated .operand 308)) none (.lit (.nat 3)))] (.call (.runtime .natEq) [(.move (.generated .operand 307)), (.move (.generated .operand 308))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0))))))))))), [(1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 291)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 292)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 291)), (.move (.generated .operand 292))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.lit (.nat 0)))) (lb := [(.mk (.bind (.generated .operand 295)) none (.call (.function 55) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 293)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 294)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 293)), (.move (.generated .operand 294))] false)))] true)), (.mk (.bind (.generated .operand 296)) none (.lit (.nat 1)))]) (tb := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 295)), (.move (.generated .operand 296))] false) (.mk [] (.succeed (.lit (.nat 1)))) (.mk [(.mk (.bind (.generated .operand 297)) none (.lit (.nat 2))), (.mk (.bind (.generated .operand 298)) none (.copy (.generated .binding 1)))] (.cond (.cond (.call (.runtime .natLe) [(.move (.generated .operand 297)), (.move (.generated .operand 298))] false) (.mk [(.mk (.bind (.generated .operand 301)) none (.call (.function 55) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 299)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 300)) none (.lit (.nat 2)))] (.call (.runtime .natSub) [(.move (.generated .operand 299)), (.move (.generated .operand 300))] false)))] true)), (.mk (.bind (.generated .operand 302)) none (.lit (.nat 2)))] (.call (.runtime .natEq) [(.move (.generated .operand 301)), (.move (.generated .operand 302))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 2)))) (.mk [(.mk (.bind (.generated .operand 303)) none (.lit (.nat 3))), (.mk (.bind (.generated .operand 304)) none (.copy (.generated .binding 1)))] (.cond (.cond (.call (.runtime .natLe) [(.move (.generated .operand 303)), (.move (.generated .operand 304))] false) (.mk [(.mk (.bind (.generated .operand 307)) none (.call (.function 55) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 305)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 306)) none (.lit (.nat 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 305)), (.move (.generated .operand 306))] false)))] true)), (.mk (.bind (.generated .operand 308)) none (.lit (.nat 3)))] (.call (.runtime .natEq) [(.move (.generated .operand 307)), (.move (.generated .operand 308))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))))))) (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 295)) none (.call (.function 55) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 293)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 294)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 293)), (.move (.generated .operand 294))] false)))] true)), (.mk (.bind (.generated .operand 296)) none (.lit (.nat 1)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 295)), (.move (.generated .operand 296))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 293)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 294)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 293)), (.move (.generated .operand 294))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.lit (.nat 1)))) (lb := [(.mk (.bind (.generated .operand 297)) none (.lit (.nat 2))), (.mk (.bind (.generated .operand 298)) none (.copy (.generated .binding 1)))]) (tb := (.cond (.cond (.call (.runtime .natLe) [(.move (.generated .operand 297)), (.move (.generated .operand 298))] false) (.mk [(.mk (.bind (.generated .operand 301)) none (.call (.function 55) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 299)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 300)) none (.lit (.nat 2)))] (.call (.runtime .natSub) [(.move (.generated .operand 299)), (.move (.generated .operand 300))] false)))] true)), (.mk (.bind (.generated .operand 302)) none (.lit (.nat 2)))] (.call (.runtime .natEq) [(.move (.generated .operand 301)), (.move (.generated .operand 302))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 2)))) (.mk [(.mk (.bind (.generated .operand 303)) none (.lit (.nat 3))), (.mk (.bind (.generated .operand 304)) none (.copy (.generated .binding 1)))] (.cond (.cond (.call (.runtime .natLe) [(.move (.generated .operand 303)), (.move (.generated .operand 304))] false) (.mk [(.mk (.bind (.generated .operand 307)) none (.call (.function 55) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 305)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 306)) none (.lit (.nat 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 305)), (.move (.generated .operand 306))] false)))] true)), (.mk (.bind (.generated .operand 308)) none (.lit (.nat 3)))] (.call (.runtime .natEq) [(.move (.generated .operand 307)), (.move (.generated .operand 308))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))))) (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 297)) none (.lit (.nat 2))), (.mk (.bind (.generated .operand 298)) none (.copy (.generated .binding 1)))]) (ce := (.cond (.call (.runtime .natLe) [(.move (.generated .operand 297)), (.move (.generated .operand 298))] false) (.mk [(.mk (.bind (.generated .operand 301)) none (.call (.function 55) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 299)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 300)) none (.lit (.nat 2)))] (.call (.runtime .natSub) [(.move (.generated .operand 299)), (.move (.generated .operand 300))] false)))] true)), (.mk (.bind (.generated .operand 302)) none (.lit (.nat 2)))] (.call (.runtime .natEq) [(.move (.generated .operand 301)), (.move (.generated .operand 302))] false)) (.mk [] (.lit (.bool false))))) (lk := []) (Corr.cond (lc := [(.mk (.bind (.generated .operand 297)) none (.lit (.nat 2))), (.mk (.bind (.generated .operand 298)) none (.copy (.generated .binding 1)))]) (ce := (.call (.runtime .natLe) [(.move (.generated .operand 297)), (.move (.generated .operand 298))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 301)) none (.call (.function 55) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 299)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 300)) none (.lit (.nat 2)))] (.call (.runtime .natSub) [(.move (.generated .operand 299)), (.move (.generated .operand 300))] false)))] true)), (.mk (.bind (.generated .operand 302)) none (.lit (.nat 2)))]) (ta := (.call (.runtime .natEq) [(.move (.generated .operand 301)), (.move (.generated .operand 302))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 299)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 300)) none (.lit (.nat 2)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 299)), (.move (.generated .operand 300))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.kIf (la := []) (ta := (.succeed (.lit (.nat 2)))) (lb := [(.mk (.bind (.generated .operand 303)) none (.lit (.nat 3))), (.mk (.bind (.generated .operand 304)) none (.copy (.generated .binding 1)))]) (tb := (.cond (.cond (.call (.runtime .natLe) [(.move (.generated .operand 303)), (.move (.generated .operand 304))] false) (.mk [(.mk (.bind (.generated .operand 307)) none (.call (.function 55) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 305)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 306)) none (.lit (.nat 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 305)), (.move (.generated .operand 306))] false)))] true)), (.mk (.bind (.generated .operand 308)) none (.lit (.nat 3)))] (.call (.runtime .natEq) [(.move (.generated .operand 307)), (.move (.generated .operand 308))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.succeed (.lit (.nat 3)))) (.mk [] (.succeed (.lit (.nat 0)))))) (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 303)) none (.lit (.nat 3))), (.mk (.bind (.generated .operand 304)) none (.copy (.generated .binding 1)))]) (ce := (.cond (.call (.runtime .natLe) [(.move (.generated .operand 303)), (.move (.generated .operand 304))] false) (.mk [(.mk (.bind (.generated .operand 307)) none (.call (.function 55) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 305)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 306)) none (.lit (.nat 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 305)), (.move (.generated .operand 306))] false)))] true)), (.mk (.bind (.generated .operand 308)) none (.lit (.nat 3)))] (.call (.runtime .natEq) [(.move (.generated .operand 307)), (.move (.generated .operand 308))] false)) (.mk [] (.lit (.bool false))))) (lk := []) (Corr.cond (lc := [(.mk (.bind (.generated .operand 303)) none (.lit (.nat 3))), (.mk (.bind (.generated .operand 304)) none (.copy (.generated .binding 1)))]) (ce := (.call (.runtime .natLe) [(.move (.generated .operand 303)), (.move (.generated .operand 304))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 307)) none (.call (.function 55) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 305)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 306)) none (.lit (.nat 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 305)), (.move (.generated .operand 306))] false)))] true)), (.mk (.bind (.generated .operand 308)) none (.lit (.nat 3)))]) (ta := (.call (.runtime .natEq) [(.move (.generated .operand 307)), (.move (.generated .operand 308))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 305)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 306)) none (.lit (.nat 3)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 305)), (.move (.generated .operand 306))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.kIf (la := []) (ta := (.succeed (.lit (.nat 3)))) (lb := []) (tb := (.succeed (.lit (.nat 0)))) (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl))) (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl)))))))))))⟩⟩ - -theorem fun76 : FunOK program krate flags 76 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 309)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 309))] false)))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 310)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 310))] false)))), (.mk (.bind (.generated .binding 4)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 311)), .wild]) none (.call (.function 38) [(.construct (.closure 7 86) [(.clone (.generated .binding 1)), (.copy (.generated .binding 3)), (.clone (.generated .binding 0)), (.copy (.generated .binding 2))]), (.block (.mk [(.mk (.bind (.generated .operand 312)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 313)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 312)), (.move (.generated .operand 313))] true))), (.lit (.nat 0))] true))] (.move (.generated .part 311)))))], (.cond (.call (.function 82) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 4))] false) (.mk [] (.succeed (.construct .some [(.copy (.generated .binding 4))]))) (.mk [] (.succeed (.construct (.none .nat) [])))), [(1, .bytes, (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 309)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 309))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 310)) none (.clone (.generated .binding 1)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 310))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 311)), .wild]) none (.call (.function 38) [(.construct (.closure 7 86) [(.clone (.generated .binding 1)), (.copy (.generated .binding 3)), (.clone (.generated .binding 0)), (.copy (.generated .binding 2))]), (.block (.mk [(.mk (.bind (.generated .operand 312)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 313)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 312)), (.move (.generated .operand 313))] true))), (.lit (.nat 0))] true))]) (tail := (.move (.generated .part 311))) (Corr.first (ta := .nat) (tb := .bool) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [.nat] (.option .nat)), .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [.bytes, .nat, .bytes, .nat]) (mask := [false, false, false, false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 312)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 313)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 312)), (.move (.generated .operand 313))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl)) rfl (Corr.cond (lc := []) (ce := (.call (.function 82) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 4))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.copy (.generated .binding 4))]))) (lb := []) (tb := (.succeed (.construct (.none .nat) []))) (Corr.fOfB (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))))))⟩⟩ - -theorem fun77 : FunOK program krate flags 77 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 314)) none (.call (.function 49) [(.move (.generated .binding 0)), (.call (.function 7) [(.lit (.str " "))] false)] false))], (.matchOn (.move (.generated .holder 314)) [(.mk .none (.mk [] (.construct (.none .bytes) []))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.call (.function 49) [(.move (.generated .binding 1)), (.call (.function 7) [(.lit (.str "info: "))] false)] false)))]), [(0, .bytes, (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct (.none .bytes) [])) (Corr.mCons (Γ' := [(1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.call (.function 49) [(.move (.generated .binding 1)), (.call (.function 7) [(.lit (.str "info: "))] false)] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun78 : FunOK program krate flags 78 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some .bytes) (.block (.mk [(.mk (.bind (.generated .holder 315)) none (.call (.function 49) [(.clone (.generated .binding 0)), (.call (.function 7) [(.lit (.str "+"))] false)] false))] (.matchOn (.move (.generated .holder 315)) [(.mk .none (.mk [] (.move (.generated .binding 0)))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.move (.generated .binding 1))))])))), (.mk (.bind (.generated .binding 3)) (some .bool) (.call (.function 87) [(.call (.function 20) [(.clone (.generated .binding 2))] true)] false)), (.mk (.bind (.generated .operand 317)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 318)) none (.block (.mk [(.mk (.bind (.generated .operand 316)) none (.clone (.generated .binding 2)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 316))] false))))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 317)), (.move (.generated .operand 318))] false) (.mk [] (.cond (.call (.function 88) [(.move (.generated .binding 2))] true) (.mk [] (.succeed (.copy (.generated .binding 3)))) (.mk [] (.succeed (.lit (.bool false)))))) (.mk [] (.succeed (.lit (.bool false))))), [(0, .bytes, (some 0))], rfl, rfl, - (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 315)) none (.call (.function 49) [(.clone (.generated .binding 0)), (.call (.function 7) [(.lit (.str "+"))] false)] false))]) (tail := (.matchOn (.move (.generated .holder 315)) [(.mk .none (.mk [] (.move (.generated .binding 0)))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.move (.generated .binding 1))))])) (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.move (.generated .binding 0))) (Corr.mCons (Γ' := [(1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 1))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := [(.mk (.bind (.generated .operand 317)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 318)) none (.block (.mk [(.mk (.bind (.generated .operand 316)) none (.clone (.generated .binding 2)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 316))] false))))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 317)), (.move (.generated .operand 318))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 316)) none (.clone (.generated .binding 2)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 316))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 88) [(.move (.generated .binding 2))] true) (.mk [] (.succeed (.copy (.generated .binding 3)))) (.mk [] (.succeed (.lit (.bool false)))))) (lb := []) (tb := (.succeed (.lit (.bool false)))) (Corr.cond (lc := []) (ce := (.call (.function 88) [(.move (.generated .binding 2))] true)) (lk := []) (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.copy (.generated .binding 3)))) (lb := []) (tb := (.succeed (.lit (.bool false)))) (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl))) (Corr.fOfB (Corr.bOfE (Corr.buildConst rfl))))) (Corr.fOfB (Corr.bOfE (Corr.buildConst rfl)))))))⟩⟩ - -theorem fun79 : FunOK program krate flags 79 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 321)) none (.block (.mk [(.mk (.bind (.generated .operand 319)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 320)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedSub .u8)) [(.move (.generated .operand 319)), (.move (.generated .operand 320))] false))))], (.matchOn (.move (.generated .holder 321)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some .wild) (.mk [(.mk (.bind (.generated .holder 324)) none (.block (.mk [(.mk (.bind (.generated .operand 322)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 323)) none (.copy (.generated .binding 0)))] (.call (.runtime (.checkedSub .u8)) [(.move (.generated .operand 322)), (.move (.generated .operand 323))] false))))] (.matchOn (.move (.generated .holder 324)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some .wild) (.mk [] (.lit (.bool true))))])))]), [(2, (.fixed .u8), (some 2)), (1, (.fixed .u8), (some 1)), (0, (.fixed .u8), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option (.fixed .u8))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 319)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 320)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.checkedSub .u8)) [(.move (.generated .operand 319)), (.move (.generated .operand 320))] false)) (Corr.prim (ts := [(.fixed .u8), (.fixed .u8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(2, (.fixed .u8), (some 2)), (1, (.fixed .u8), (some 1)), (0, (.fixed .u8), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(3, (.fixed .u8), none), (2, (.fixed .u8), (some 2)), (1, (.fixed .u8), (some 1)), (0, (.fixed .u8), (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .holder 324)) none (.block (.mk [(.mk (.bind (.generated .operand 322)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 323)) none (.copy (.generated .binding 0)))] (.call (.runtime (.checkedSub .u8)) [(.move (.generated .operand 322)), (.move (.generated .operand 323))] false))))]) (tail := (.matchOn (.move (.generated .holder 324)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some .wild) (.mk [] (.lit (.bool true))))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := (.option (.fixed .u8))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 322)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 323)) none (.copy (.generated .binding 0)))]) (tail := (.call (.runtime (.checkedSub .u8)) [(.move (.generated .operand 322)), (.move (.generated .operand 323))] false)) (Corr.prim (ts := [(.fixed .u8), (.fixed .u8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.fixed .u8), none), (2, (.fixed .u8), (some 2)), (1, (.fixed .u8), (some 1)), (0, (.fixed .u8), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, (.fixed .u8), none), (3, (.fixed .u8), none), (2, (.fixed .u8), (some 2)), (1, (.fixed .u8), (some 1)), (0, (.fixed .u8), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ - -theorem fun80 : FunOK program krate flags 80 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 326)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 325))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 325))))), (.mk (.bind (.generated .operand 327)) none (.lit (.nat 2)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 326)), (.move (.generated .operand 327))] false) (.mk [] (.succeed (.construct (.none (.pair .nat .nat)) []))) (.mk [(.mk (.bind (.generated .holder 329)) none (.call (.function 51) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 328)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 328))))] false))] (.matchOn (.move (.generated .holder 329)) [(.mk .none (.mk [] (.succeed (.construct (.none (.pair .nat .nat)) [])))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 331)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 330)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 330))))), (.mk (.bind (.generated .operand 332)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 331)), (.move (.generated .operand 332))] true))) (.call (.function 89) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 333))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 333)))), (.copy (.generated .binding 2))] false))]))))]))), [(1, (.pair .nat .nat), (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 326)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 325))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 325))))), (.mk (.bind (.generated .operand 327)) none (.lit (.nat 2)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 326)), (.move (.generated .operand 327))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 325))]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 325))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct (.none (.pair .nat .nat)) []))) (lb := [(.mk (.bind (.generated .holder 329)) none (.call (.function 51) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 328)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 328))))] false))]) (tb := (.matchOn (.move (.generated .holder 329)) [(.mk .none (.mk [] (.succeed (.construct (.none (.pair .nat .nat)) [])))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 331)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 330)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 330))))), (.mk (.bind (.generated .operand 332)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 331)), (.move (.generated .operand 332))] true))) (.call (.function 89) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 333))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 333)))), (.copy (.generated .binding 2))] false))]))))])) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.matchArms (st := (.option (.fixed .u8))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 328)), .wild]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 328))) (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.pair .nat .nat), (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.construct (.none (.pair .nat .nat)) []))) (Corr.mCons (Γ' := [(2, (.fixed .u8), (some 2)), (1, (.pair .nat .nat), (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 331)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 330)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 330))))), (.mk (.bind (.generated .operand 332)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 331)), (.move (.generated .operand 332))] true))) (.call (.function 89) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 333))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 333)))), (.copy (.generated .binding 2))] false))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.pair .nat .nat)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 331)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 330)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 330))))), (.mk (.bind (.generated .operand 332)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 331)), (.move (.generated .operand 332))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 330)), .wild]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 330))) (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 333))]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 333))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl)))⟩⟩ - -theorem fun81 : FunOK program krate flags 81 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 90) [(.move (.generated .binding 1)), (.move (.generated .binding 0)), (.copy (.generated .binding 2))] false), [(2, .nat, (some 2)), (1, .bytes, (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.callOps (ts := [.bytes, .bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun82 : FunOK program krate flags 82 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 338)) none (.block (.mk [(.mk (.bind (.generated .operand 335)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 336)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 337)) none (.block (.mk [(.mk (.bind (.generated .operand 334)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 334))] false))))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 335)), (.move (.generated .operand 336)), (.move (.generated .operand 337))] false))))], (.matchOn (.move (.generated .holder 338)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.bind (.generated .binding 3))) (.mk [(.mk (.bind (.generated .operand 339)) none (.move (.generated .binding 3))), (.mk (.bind (.generated .operand 340)) none (.move (.generated .binding 1)))] (.call (.runtime .equal) [(.move (.generated .operand 339)), (.move (.generated .operand 340))] false)))]), [(2, .nat, (some 2)), (1, .bytes, (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 335)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 336)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 337)) none (.block (.mk [(.mk (.bind (.generated .operand 334)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 334))] false))))]) (tail := (.call (.runtime .sliceBytes) [(.move (.generated .operand 335)), (.move (.generated .operand 336)), (.move (.generated .operand 337))] false)) (Corr.prim (ts := [.bytes, .nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 334)) none (.clone (.generated .binding 1)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 334))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(3, .bytes, (some 3)), (2, .nat, (some 2)), (1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .operand 339)) none (.move (.generated .binding 3))), (.mk (.bind (.generated .operand 340)) none (.move (.generated .binding 1)))]) (tail := (.call (.runtime .equal) [(.move (.generated .operand 339)), (.move (.generated .operand 340))] false)) (Corr.mNil) rfl rfl rfl (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ - -theorem fun83 : FunOK program krate flags 83 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 341)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 341)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 83) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 342)) (some (.fn 9)) (.move (.generated .binding 0)))] (.apply (.generated .callee 342) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]), [(2, (.list .bytes), (some 2)), (1, (.result (.list .bytes) .bytes), (some 1)), (0, (.fn [(.result (.list .bytes) .bytes), .bytes] (.result (.list .bytes) .bytes)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .bytes)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .bytes), (some 2)), (1, (.result (.list .bytes) .bytes), (some 1)), (0, (.fn [(.result (.list .bytes) .bytes), .bytes] (.result (.list .bytes) .bytes)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list .bytes), (some 4)), (3, .bytes, (some 3)), (2, (.list .bytes), (some 2)), (1, (.result (.list .bytes) .bytes), (some 1)), (0, (.fn [(.result (.list .bytes) .bytes), .bytes] (.result (.list .bytes) .bytes)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 83) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 342)) (some (.fn 9)) (.move (.generated .binding 0)))] (.apply (.generated .callee 342) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.result (.list .bytes) .bytes), .bytes] (.result (.list .bytes) .bytes)), (.result (.list .bytes) .bytes), (.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 342)) (some (.fn 9)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 342) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true)) (Corr.apply (ps := [(.result (.list .bytes) .bytes), .bytes]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ - -theorem fun84 : FunOK program krate flags 84 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 91) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false), [(1, .bytes, (some 1)), (0, (.result (.list .bytes) .bytes), (some 0))], rfl, rfl, - (Corr.callF (ts := [(.result (.list .bytes) .bytes), .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)⟩⟩ - -theorem fun85 : FunOK program krate flags 85 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 343)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 343))] false)))), (.mk (.bind (.generated .binding 3)) (some (.pair .nat (.pair .nat (.list .bytes)))) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 344)), .wild]) none (.call (.function 15) [(.construct (.closure 2 92) [(.copy (.generated .binding 1)), (.clone (.generated .binding 0))]), (.copy (.generated .binding 2)), (.pair (.lit (.nat 0)) (.pair (.lit (.nat 0)) (.construct (.nil .bytes) [])))] true))] (.move (.generated .part 344))))), (.mk (.bind (.generated .binding 4)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 345)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 346))]) none (.clone (.generated .binding 3)))] (.move (.generated .part 346)))))] (.move (.generated .part 345)))))], (.succeed (.call (.function 17) [(.construct .cons [(.call (.function 18) [(.move (.generated .binding 0)), (.copy (.generated .binding 4)), (.block (.mk [(.mk (.bind (.generated .operand 347)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 348)) none (.copy (.generated .binding 4)))] (.call (.runtime .natSub) [(.move (.generated .operand 347)), (.move (.generated .operand 348))] false)))] false), (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 349))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 350))]) none (.move (.generated .binding 3)))] (.move (.generated .part 350)))))] (.move (.generated .part 349))))])] false)), [(1, (.fixed .u8), (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 343)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 343))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 344)), .wild]) none (.call (.function 15) [(.construct (.closure 2 92) [(.copy (.generated .binding 1)), (.clone (.generated .binding 0))]), (.copy (.generated .binding 2)), (.pair (.lit (.nat 0)) (.pair (.lit (.nat 0)) (.construct (.nil .bytes) [])))] true))]) (tail := (.move (.generated .part 344))) (Corr.first (ta := (.pair .nat (.pair .nat (.list .bytes)))) (tb := .bool) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes))))), .nat, (.pair .nat (.pair .nat (.list .bytes)))]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [(.fixed .u8), .bytes]) (mask := [false, false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 345)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 346))]) none (.clone (.generated .binding 3)))] (.move (.generated .part 346)))))]) (tail := (.move (.generated .part 345))) (Corr.first (ta := .nat) (tb := (.list .bytes)) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 346))]) none (.clone (.generated .binding 3)))]) (tail := (.move (.generated .part 346))) (Corr.second (ta := .nat) (tb := (.pair .nat (.list .bytes))) (Corr.var rfl rfl) rfl)) rfl)) rfl (Corr.fOfB (Corr.callOps (ts := [(.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.bytes, (.list .bytes)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 347)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 348)) none (.copy (.generated .binding 4)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 347)), (.move (.generated .operand 348))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 349))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 350))]) none (.move (.generated .binding 3)))] (.move (.generated .part 350)))))]) (tail := (.move (.generated .part 349))) (Corr.second (ta := .nat) (tb := (.list .bytes)) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 350))]) none (.move (.generated .binding 3)))]) (tail := (.move (.generated .part 350))) (Corr.second (ta := .nat) (tb := (.pair .nat (.list .bytes))) (Corr.var rfl rfl) rfl)) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)))))⟩⟩ - -theorem fun86 : FunOK program krate flags 86 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 82) [(.move (.generated .binding 2)), (.move (.generated .binding 0)), (.copy (.generated .binding 4))] false) (.mk [] (.succeed (.construct (.none .nat) []))) (.mk [(.mk (.bind (.generated .operand 353)) none (.block (.mk [(.mk (.bind (.generated .operand 351)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 352)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 351)), (.move (.generated .operand 352))] true)))), (.mk (.bind (.generated .operand 354)) none (.copy (.generated .binding 3)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 353)), (.move (.generated .operand 354))] false) (.mk [] (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 355)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 356)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 355)), (.move (.generated .operand 356))] true)))]))) (.mk [] (.succeed (.construct (.none .nat) [])))))), [(4, .nat, (some 4)), (3, .nat, (some 3)), (2, .bytes, (some 2)), (1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 82) [(.move (.generated .binding 2)), (.move (.generated .binding 0)), (.copy (.generated .binding 4))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct (.none .nat) []))) (lb := [(.mk (.bind (.generated .operand 353)) none (.block (.mk [(.mk (.bind (.generated .operand 351)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 352)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 351)), (.move (.generated .operand 352))] true)))), (.mk (.bind (.generated .operand 354)) none (.copy (.generated .binding 3)))]) (tb := (.cond (.call (.runtime .natLt) [(.move (.generated .operand 353)), (.move (.generated .operand 354))] false) (.mk [] (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 355)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 356)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 355)), (.move (.generated .operand 356))] true)))]))) (.mk [] (.succeed (.construct (.none .nat) []))))) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.cond (lc := [(.mk (.bind (.generated .operand 353)) none (.block (.mk [(.mk (.bind (.generated .operand 351)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 352)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 351)), (.move (.generated .operand 352))] true)))), (.mk (.bind (.generated .operand 354)) none (.copy (.generated .binding 3)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 353)), (.move (.generated .operand 354))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 351)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 352)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 351)), (.move (.generated .operand 352))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 355)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 356)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 355)), (.move (.generated .operand 356))] true)))]))) (lb := []) (tb := (.succeed (.construct (.none .nat) []))) (Corr.fOfB (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 355)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 356)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 355)), (.move (.generated .operand 356))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))))⟩⟩ - -theorem fun87 : FunOK program krate flags 87 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 358)) none (.block (.mk [(.mk (.bind (.generated .operand 357)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 357))] false)))), (.mk (.bind (.generated .operand 359)) none (.lit (.nat 20)))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 358)), (.move (.generated .operand 359))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 361)) none (.block (.mk [(.mk (.bind (.generated .operand 360)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 360))] false)))), (.mk (.bind (.generated .operand 362)) none (.lit (.nat 20)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 361)), (.move (.generated .operand 362))] false) (.mk [(.mk (.bind (.generated .operand 369)) none (.block (.mk [(.mk (.bind (.generated .operand 367)) none (.block (.mk [(.mk (.bind (.generated .operand 363)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 364)) none (.call (.function 7) [(.lit (.str "18446744073709551615"))] false))] (.call (.runtime .compareBytes) [(.move (.generated .operand 363)), (.move (.generated .operand 364))] false)))), (.mk (.bind (.generated .operand 368)) none (.block (.mk [(.mk (.bind (.generated .operand 365)) none (.lit (.bytes (ByteArray.mk #[1])))), (.mk (.bind (.generated .operand 366)) none (.lit (.bytes (ByteArray.mk #[0]))))] (.call (.runtime .compareBytes) [(.move (.generated .operand 365)), (.move (.generated .operand 366))] false))))] (.call (.runtime .equal) [(.move (.generated .operand 367)), (.move (.generated .operand 368))] false))))] (.call (.runtime .boolNot) [(.move (.generated .operand 369))] false)) (.mk [] (.lit (.bool false)))))), [(0, .bytes, (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 358)) none (.block (.mk [(.mk (.bind (.generated .operand 357)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 357))] false)))), (.mk (.bind (.generated .operand 359)) none (.lit (.nat 20)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 358)), (.move (.generated .operand 359))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 357)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 357))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 361)) none (.block (.mk [(.mk (.bind (.generated .operand 360)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 360))] false)))), (.mk (.bind (.generated .operand 362)) none (.lit (.nat 20)))]) (tb := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 361)), (.move (.generated .operand 362))] false) (.mk [(.mk (.bind (.generated .operand 369)) none (.block (.mk [(.mk (.bind (.generated .operand 367)) none (.block (.mk [(.mk (.bind (.generated .operand 363)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 364)) none (.call (.function 7) [(.lit (.str "18446744073709551615"))] false))] (.call (.runtime .compareBytes) [(.move (.generated .operand 363)), (.move (.generated .operand 364))] false)))), (.mk (.bind (.generated .operand 368)) none (.block (.mk [(.mk (.bind (.generated .operand 365)) none (.lit (.bytes (ByteArray.mk #[1])))), (.mk (.bind (.generated .operand 366)) none (.lit (.bytes (ByteArray.mk #[0]))))] (.call (.runtime .compareBytes) [(.move (.generated .operand 365)), (.move (.generated .operand 366))] false))))] (.call (.runtime .equal) [(.move (.generated .operand 367)), (.move (.generated .operand 368))] false))))] (.call (.runtime .boolNot) [(.move (.generated .operand 369))] false)) (.mk [] (.lit (.bool false))))) (Corr.bOfE (Corr.buildConst rfl)) (Corr.cond (lc := [(.mk (.bind (.generated .operand 361)) none (.block (.mk [(.mk (.bind (.generated .operand 360)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 360))] false)))), (.mk (.bind (.generated .operand 362)) none (.lit (.nat 20)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 361)), (.move (.generated .operand 362))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 360)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 360))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 369)) none (.block (.mk [(.mk (.bind (.generated .operand 367)) none (.block (.mk [(.mk (.bind (.generated .operand 363)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 364)) none (.call (.function 7) [(.lit (.str "18446744073709551615"))] false))] (.call (.runtime .compareBytes) [(.move (.generated .operand 363)), (.move (.generated .operand 364))] false)))), (.mk (.bind (.generated .operand 368)) none (.block (.mk [(.mk (.bind (.generated .operand 365)) none (.lit (.bytes (ByteArray.mk #[1])))), (.mk (.bind (.generated .operand 366)) none (.lit (.bytes (ByteArray.mk #[0]))))] (.call (.runtime .compareBytes) [(.move (.generated .operand 365)), (.move (.generated .operand 366))] false))))] (.call (.runtime .equal) [(.move (.generated .operand 367)), (.move (.generated .operand 368))] false))))]) (ta := (.call (.runtime .boolNot) [(.move (.generated .operand 369))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.bool]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 367)) none (.block (.mk [(.mk (.bind (.generated .operand 363)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 364)) none (.call (.function 7) [(.lit (.str "18446744073709551615"))] false))] (.call (.runtime .compareBytes) [(.move (.generated .operand 363)), (.move (.generated .operand 364))] false)))), (.mk (.bind (.generated .operand 368)) none (.block (.mk [(.mk (.bind (.generated .operand 365)) none (.lit (.bytes (ByteArray.mk #[1])))), (.mk (.bind (.generated .operand 366)) none (.lit (.bytes (ByteArray.mk #[0]))))] (.call (.runtime .compareBytes) [(.move (.generated .operand 365)), (.move (.generated .operand 366))] false))))]) (tail := (.call (.runtime .equal) [(.move (.generated .operand 367)), (.move (.generated .operand 368))] false)) (Corr.prim (ts := [.ordering, .ordering]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 363)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 364)) none (.call (.function 7) [(.lit (.str "18446744073709551615"))] false))]) (tail := (.call (.runtime .compareBytes) [(.move (.generated .operand 363)), (.move (.generated .operand 364))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 365)) none (.lit (.bytes (ByteArray.mk #[1])))), (.mk (.bind (.generated .operand 366)) none (.lit (.bytes (ByteArray.mk #[0]))))]) (tail := (.call (.runtime .compareBytes) [(.move (.generated .operand 365)), (.move (.generated .operand 366))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))))⟩⟩ - -theorem fun88 : FunOK program krate flags 88 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 373)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 370)), .wild]) none (.call (.function 38) [(.construct (.closure 7 93) [(.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 371)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 371))] false))), (.lit (.nat 0))] true))] (.move (.generated .part 370))))), (.mk (.bind (.generated .operand 374)) none (.block (.mk [(.mk (.bind (.generated .operand 372)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 372))] false))))], (.succeed (.call (.runtime .natEq) [(.move (.generated .operand 373)), (.move (.generated .operand 374))] false)), [(0, .bytes, (some 0))], rfl, rfl, - (Corr.fOfB (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 370)), .wild]) none (.call (.function 38) [(.construct (.closure 7 93) [(.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 371)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 371))] false))), (.lit (.nat 0))] true))]) (tail := (.move (.generated .part 370))) (Corr.first (ta := .nat) (tb := .bool) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [.nat] (.option .nat)), .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [.bytes]) (mask := [false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 371)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 371))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 372)) none (.move (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 372))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl))⟩⟩ - -theorem fun89 : FunOK program krate flags 89 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 375)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 376)) none (.lit (.nat 2)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 375)), (.move (.generated .operand 376))] false) (.mk [] (.lit (.nat 2))) (.mk [(.mk (.bind (.generated .operand 377)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 378)) none (.lit (.fixed .u8 46)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 377)), (.move (.generated .operand 378))] false) (.mk [(.mk (.bind (.generated .operand 379)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 380)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 379)), (.move (.generated .operand 380))] false) (.mk [] (.lit (.nat 0))) (.mk [] (.lit (.nat 2))))) (.mk [] (.cond (.call (.function 94) [(.copy (.generated .binding 1))] false) (.mk [] (.lit (.nat 1))) (.mk [(.mk (.bind (.generated .operand 381)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 382)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 381)), (.move (.generated .operand 382))] false) (.mk [] (.cond (.call (.function 95) [(.copy (.generated .binding 1))] false) (.mk [] (.lit (.nat 1))) (.mk [] (.lit (.nat 2))))) (.mk [] (.lit (.nat 2)))))))))), [(1, (.fixed .u8), (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 375)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 376)) none (.lit (.nat 2)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 375)), (.move (.generated .operand 376))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.nat 2))) (lb := [(.mk (.bind (.generated .operand 377)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 378)) none (.lit (.fixed .u8 46)))]) (tb := (.cond (.call (.runtime .equal) [(.move (.generated .operand 377)), (.move (.generated .operand 378))] false) (.mk [(.mk (.bind (.generated .operand 379)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 380)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 379)), (.move (.generated .operand 380))] false) (.mk [] (.lit (.nat 0))) (.mk [] (.lit (.nat 2))))) (.mk [] (.cond (.call (.function 94) [(.copy (.generated .binding 1))] false) (.mk [] (.lit (.nat 1))) (.mk [(.mk (.bind (.generated .operand 381)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 382)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 381)), (.move (.generated .operand 382))] false) (.mk [] (.cond (.call (.function 95) [(.copy (.generated .binding 1))] false) (.mk [] (.lit (.nat 1))) (.mk [] (.lit (.nat 2))))) (.mk [] (.lit (.nat 2))))))))) (Corr.bOfE (Corr.value rfl rfl)) (Corr.cond (lc := [(.mk (.bind (.generated .operand 377)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 378)) none (.lit (.fixed .u8 46)))]) (ce := (.call (.runtime .equal) [(.move (.generated .operand 377)), (.move (.generated .operand 378))] false)) (lk := []) (Corr.prim (ts := [(.fixed .u8), (.fixed .u8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 379)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 380)) none (.lit (.nat 1)))]) (ta := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 379)), (.move (.generated .operand 380))] false) (.mk [] (.lit (.nat 0))) (.mk [] (.lit (.nat 2))))) (lb := []) (tb := (.cond (.call (.function 94) [(.copy (.generated .binding 1))] false) (.mk [] (.lit (.nat 1))) (.mk [(.mk (.bind (.generated .operand 381)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 382)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 381)), (.move (.generated .operand 382))] false) (.mk [] (.cond (.call (.function 95) [(.copy (.generated .binding 1))] false) (.mk [] (.lit (.nat 1))) (.mk [] (.lit (.nat 2))))) (.mk [] (.lit (.nat 2))))))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 379)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 380)) none (.lit (.nat 1)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 379)), (.move (.generated .operand 380))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.nat 0))) (lb := []) (tb := (.lit (.nat 2))) (Corr.bOfE (Corr.value rfl rfl)) (Corr.bOfE (Corr.value rfl rfl)))) (Corr.cond (lc := []) (ce := (.call (.function 94) [(.copy (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [(.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.nat 1))) (lb := [(.mk (.bind (.generated .operand 381)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 382)) none (.lit (.nat 1)))]) (tb := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 381)), (.move (.generated .operand 382))] false) (.mk [] (.cond (.call (.function 95) [(.copy (.generated .binding 1))] false) (.mk [] (.lit (.nat 1))) (.mk [] (.lit (.nat 2))))) (.mk [] (.lit (.nat 2))))) (Corr.bOfE (Corr.value rfl rfl)) (Corr.cond (lc := [(.mk (.bind (.generated .operand 381)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 382)) none (.lit (.nat 1)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 381)), (.move (.generated .operand 382))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 95) [(.copy (.generated .binding 1))] false) (.mk [] (.lit (.nat 1))) (.mk [] (.lit (.nat 2))))) (lb := []) (tb := (.lit (.nat 2))) (Corr.cond (lc := []) (ce := (.call (.function 95) [(.copy (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [(.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.nat 1))) (lb := []) (tb := (.lit (.nat 2))) (Corr.bOfE (Corr.value rfl rfl)) (Corr.bOfE (Corr.value rfl rfl)))) (Corr.bOfE (Corr.value rfl rfl))))))))))⟩⟩ - -theorem fun90 : FunOK program krate flags 90 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 82) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 2))] false) (.mk [] (.construct (.none .nat) [])) (.mk [(.mk (.bind (.generated .operand 383)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 384)) none (.copy (.generated .binding 2)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 383)), (.move (.generated .operand 384))] false) (.mk [] (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 385)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 386)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 385)), (.move (.generated .operand 386))] false)))])) (.mk [] (.construct (.none .nat) []))))), [(2, .nat, (some 2)), (1, .bytes, (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 82) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 2))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct (.none .nat) [])) (lb := [(.mk (.bind (.generated .operand 383)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 384)) none (.copy (.generated .binding 2)))]) (tb := (.cond (.call (.runtime .natLt) [(.move (.generated .operand 383)), (.move (.generated .operand 384))] false) (.mk [] (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 385)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 386)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 385)), (.move (.generated .operand 386))] false)))])) (.mk [] (.construct (.none .nat) [])))) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl) (Corr.cond (lc := [(.mk (.bind (.generated .operand 383)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 384)) none (.copy (.generated .binding 2)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 383)), (.move (.generated .operand 384))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 385)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 386)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 385)), (.move (.generated .operand 386))] false)))])) (lb := []) (tb := (.construct (.none .nat) [])) (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 385)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 386)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 385)), (.move (.generated .operand 386))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))))⟩⟩ - -theorem fun91 : FunOK program krate flags 91 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 387)) none (.clone (.generated .binding 0)))], (.matchOn (.move (.generated .holder 387)) [(.mk (.ok (.bind (.generated .binding 3))) (.mk [(.mk (.bind (.generated .binding 4)) (some .bytes) (.call (.function 32) [(.move (.generated .binding 1))] true))] (.cond (.call (.function 61) [(.clone (.generated .binding 4))] true) (.mk [(.mk (.bind (.generated .holder 388)) none (.call (.function 96) [(.clone (.generated .binding 4)), (.move (.generated .binding 3))] false))] (.matchOn (.move (.generated .holder 388)) [(.mk .none (.mk [] (.succeed (.construct (.err (.list .bytes) .bytes) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "duplicate axiom name "))] false), (.call (.function 40) [(.move (.generated .binding 4))] false)] false)])))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.succeed (.construct (.ok (.list .bytes) .bytes) [(.move (.generated .binding 5))]))))])) (.mk [] (.succeed (.construct (.err (.list .bytes) .bytes) [(.call (.function 60) [(.move (.generated .binding 4))] false)])))))), (.mk (.err .wild) (.mk [] (.succeed (.move (.generated .binding 0)))))]), [(1, .bytes, (some 1)), (0, (.result (.list .bytes) .bytes), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.result (.list .bytes) .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(3, (.list .bytes), (some 3)), (1, .bytes, (some 1)), (0, (.result (.list .bytes) .bytes), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .binding 4)) (some .bytes) (.call (.function 32) [(.move (.generated .binding 1))] true))]) (tail := (.cond (.call (.function 61) [(.clone (.generated .binding 4))] true) (.mk [(.mk (.bind (.generated .holder 388)) none (.call (.function 96) [(.clone (.generated .binding 4)), (.move (.generated .binding 3))] false))] (.matchOn (.move (.generated .holder 388)) [(.mk .none (.mk [] (.succeed (.construct (.err (.list .bytes) .bytes) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "duplicate axiom name "))] false), (.call (.function 40) [(.move (.generated .binding 4))] false)] false)])))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.succeed (.construct (.ok (.list .bytes) .bytes) [(.move (.generated .binding 5))]))))])) (.mk [] (.succeed (.construct (.err (.list .bytes) .bytes) [(.call (.function 60) [(.move (.generated .binding 4))] false)]))))) (Corr.mCons (Γ' := [(2, .bytes, none), (1, .bytes, (some 1)), (0, (.result (.list .bytes) .bytes), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 0)))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := []) (ce := (.call (.function 61) [(.clone (.generated .binding 4))] true)) (lk := []) (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .holder 388)) none (.call (.function 96) [(.clone (.generated .binding 4)), (.move (.generated .binding 3))] false))]) (ta := (.matchOn (.move (.generated .holder 388)) [(.mk .none (.mk [] (.succeed (.construct (.err (.list .bytes) .bytes) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "duplicate axiom name "))] false), (.call (.function 40) [(.move (.generated .binding 4))] false)] false)])))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.succeed (.construct (.ok (.list .bytes) .bytes) [(.move (.generated .binding 5))]))))])) (lb := []) (tb := (.succeed (.construct (.err (.list .bytes) .bytes) [(.call (.function 60) [(.move (.generated .binding 4))] false)]))) (Corr.matchArms (st := (.option (.list .bytes))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, (.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, .bytes, (some 4)), (3, (.list .bytes), (some 3)), (1, .bytes, (some 1)), (0, (.result (.list .bytes) .bytes), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.construct (.err (.list .bytes) .bytes) [(.call (.function 6) [(.call (.function 7) [(.lit (.str "duplicate axiom name "))] false), (.call (.function 40) [(.move (.generated .binding 4))] false)] false)]))) (Corr.mCons (Γ' := [(5, (.list .bytes), (some 5)), (4, .bytes, (some 4)), (3, (.list .bytes), (some 3)), (1, .bytes, (some 1)), (0, (.result (.list .bytes) .bytes), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct (.ok (.list .bytes) .bytes) [(.move (.generated .binding 5))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.list .bytes)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [.bytes]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.string]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl))) rfl rfl rfl) (Corr.fOfB (Corr.build (ts := [.bytes]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)))))) rfl rfl rfl)⟩⟩ - -theorem fun92 : FunOK program krate flags 92 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 97) [(.move (.generated .binding 1)), (.copy (.generated .binding 0)), (.move (.generated .binding 2))] false), [(2, (.pair .nat (.pair .nat (.list .bytes))), (some 2)), (1, .bytes, (some 1)), (0, (.fixed .u8), (some 0))], rfl, rfl, - (Corr.callF (ts := [.bytes, (.fixed .u8), (.pair .nat (.pair .nat (.list .bytes)))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)⟩⟩ - -theorem fun93 : FunOK program krate flags 93 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 98) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false), [(1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.callF (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)⟩⟩ - -theorem fun94 : FunOK program krate flags 94 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 79) [(.copy (.generated .binding 0)), (.lit (.fixed .u8 65)), (.lit (.fixed .u8 90))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 79) [(.copy (.generated .binding 0)), (.lit (.fixed .u8 97)), (.lit (.fixed .u8 122))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 389)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 390)) none (.lit (.fixed .u8 95)))] (.call (.runtime .equal) [(.move (.generated .operand 389)), (.move (.generated .operand 390))] false))))), [(0, (.fixed .u8), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 79) [(.copy (.generated .binding 0)), (.lit (.fixed .u8 65)), (.lit (.fixed .u8 90))] false)) (lk := []) (Corr.callOps (ts := [(.fixed .u8), (.fixed .u8), (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := []) (tb := (.cond (.call (.function 79) [(.copy (.generated .binding 0)), (.lit (.fixed .u8 97)), (.lit (.fixed .u8 122))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 389)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 390)) none (.lit (.fixed .u8 95)))] (.call (.runtime .equal) [(.move (.generated .operand 389)), (.move (.generated .operand 390))] false)))) (Corr.bOfE (Corr.buildConst rfl)) (Corr.cond (lc := []) (ce := (.call (.function 79) [(.copy (.generated .binding 0)), (.lit (.fixed .u8 97)), (.lit (.fixed .u8 122))] false)) (lk := []) (Corr.callOps (ts := [(.fixed .u8), (.fixed .u8), (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 389)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 390)) none (.lit (.fixed .u8 95)))]) (tb := (.call (.runtime .equal) [(.move (.generated .operand 389)), (.move (.generated .operand 390))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.prim (ts := [(.fixed .u8), (.fixed .u8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)))))⟩⟩ - -theorem fun95 : FunOK program krate flags 95 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 94) [(.copy (.generated .binding 0))] false) (.mk [] (.lit (.bool true))) (.mk [] (.cond (.call (.function 79) [(.copy (.generated .binding 0)), (.lit (.fixed .u8 48)), (.lit (.fixed .u8 57))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 391)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 392)) none (.lit (.fixed .u8 63)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 391)), (.move (.generated .operand 392))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 393)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 394)) none (.lit (.fixed .u8 39)))] (.call (.runtime .equal) [(.move (.generated .operand 393)), (.move (.generated .operand 394))] false))))))), [(0, (.fixed .u8), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 94) [(.copy (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := []) (tb := (.cond (.call (.function 79) [(.copy (.generated .binding 0)), (.lit (.fixed .u8 48)), (.lit (.fixed .u8 57))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 391)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 392)) none (.lit (.fixed .u8 63)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 391)), (.move (.generated .operand 392))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 393)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 394)) none (.lit (.fixed .u8 39)))] (.call (.runtime .equal) [(.move (.generated .operand 393)), (.move (.generated .operand 394))] false)))))) (Corr.bOfE (Corr.buildConst rfl)) (Corr.cond (lc := []) (ce := (.call (.function 79) [(.copy (.generated .binding 0)), (.lit (.fixed .u8 48)), (.lit (.fixed .u8 57))] false)) (lk := []) (Corr.callOps (ts := [(.fixed .u8), (.fixed .u8), (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 391)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 392)) none (.lit (.fixed .u8 63)))]) (tb := (.cond (.call (.runtime .equal) [(.move (.generated .operand 391)), (.move (.generated .operand 392))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 393)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 394)) none (.lit (.fixed .u8 39)))] (.call (.runtime .equal) [(.move (.generated .operand 393)), (.move (.generated .operand 394))] false)))) (Corr.bOfE (Corr.buildConst rfl)) (Corr.cond (lc := [(.mk (.bind (.generated .operand 391)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 392)) none (.lit (.fixed .u8 63)))]) (ce := (.call (.runtime .equal) [(.move (.generated .operand 391)), (.move (.generated .operand 392))] false)) (lk := []) (Corr.prim (ts := [(.fixed .u8), (.fixed .u8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 393)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 394)) none (.lit (.fixed .u8 39)))]) (tb := (.call (.runtime .equal) [(.move (.generated .operand 393)), (.move (.generated .operand 394))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.prim (ts := [(.fixed .u8), (.fixed .u8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)))))))⟩⟩ - -theorem fun96 : FunOK program krate flags 96 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 395)) none (.move (.generated .binding 1)))], (.matchOn (.uncons (.generated .holder 395)) [(.mk .none (.mk [] (.construct .some [(.construct .cons [(.move (.generated .binding 0)), (.construct (.nil .bytes) [])])]))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .operand 396)) none (.clone (.generated .binding 0))), (.mk (.bind (.generated .operand 397)) none (.clone (.generated .binding 2)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 396)), (.move (.generated .operand 397))] false) (.mk [] (.construct (.none (.list .bytes)) [])) (.mk [] (.cond (.call (.function 54) [(.clone (.generated .binding 0)), (.clone (.generated .binding 2))] false) (.mk [] (.construct .some [(.construct .cons [(.move (.generated .binding 0)), (.construct .cons [(.move (.generated .binding 2)), (.move (.generated .binding 3))])])])) (.mk [(.mk (.bind (.generated .holder 398)) none (.call (.function 96) [(.move (.generated .binding 0)), (.move (.generated .binding 3))] false))] (.matchOn (.move (.generated .holder 398)) [(.mk .none (.mk [] (.construct (.none (.list .bytes)) []))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.construct .some [(.construct .cons [(.move (.generated .binding 2)), (.move (.generated .binding 4))])])))])))))))]), [(1, (.list .bytes), (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .bytes)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.list .bytes), (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.construct .cons [(.move (.generated .binding 0)), (.construct (.nil .bytes) [])])])) (Corr.mCons (Γ' := [(3, (.list .bytes), (some 3)), (2, .bytes, (some 2)), (1, (.list .bytes), (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .operand 396)) none (.clone (.generated .binding 0))), (.mk (.bind (.generated .operand 397)) none (.clone (.generated .binding 2)))]) (tail := (.cond (.call (.runtime .equal) [(.move (.generated .operand 396)), (.move (.generated .operand 397))] false) (.mk [] (.construct (.none (.list .bytes)) [])) (.mk [] (.cond (.call (.function 54) [(.clone (.generated .binding 0)), (.clone (.generated .binding 2))] false) (.mk [] (.construct .some [(.construct .cons [(.move (.generated .binding 0)), (.construct .cons [(.move (.generated .binding 2)), (.move (.generated .binding 3))])])])) (.mk [(.mk (.bind (.generated .holder 398)) none (.call (.function 96) [(.move (.generated .binding 0)), (.move (.generated .binding 3))] false))] (.matchOn (.move (.generated .holder 398)) [(.mk .none (.mk [] (.construct (.none (.list .bytes)) []))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.construct .some [(.construct .cons [(.move (.generated .binding 2)), (.move (.generated .binding 4))])])))])))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .operand 396)) none (.clone (.generated .binding 0))), (.mk (.bind (.generated .operand 397)) none (.clone (.generated .binding 2)))]) (ce := (.call (.runtime .equal) [(.move (.generated .operand 396)), (.move (.generated .operand 397))] false)) (lk := []) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct (.none (.list .bytes)) [])) (lb := []) (tb := (.cond (.call (.function 54) [(.clone (.generated .binding 0)), (.clone (.generated .binding 2))] false) (.mk [] (.construct .some [(.construct .cons [(.move (.generated .binding 0)), (.construct .cons [(.move (.generated .binding 2)), (.move (.generated .binding 3))])])])) (.mk [(.mk (.bind (.generated .holder 398)) none (.call (.function 96) [(.move (.generated .binding 0)), (.move (.generated .binding 3))] false))] (.matchOn (.move (.generated .holder 398)) [(.mk .none (.mk [] (.construct (.none (.list .bytes)) []))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.construct .some [(.construct .cons [(.move (.generated .binding 2)), (.move (.generated .binding 4))])])))])))) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl) (Corr.cond (lc := []) (ce := (.call (.function 54) [(.clone (.generated .binding 0)), (.clone (.generated .binding 2))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct .cons [(.move (.generated .binding 0)), (.construct .cons [(.move (.generated .binding 2)), (.move (.generated .binding 3))])])])) (lb := [(.mk (.bind (.generated .holder 398)) none (.call (.function 96) [(.move (.generated .binding 0)), (.move (.generated .binding 3))] false))]) (tb := (.matchOn (.move (.generated .holder 398)) [(.mk .none (.mk [] (.construct (.none (.list .bytes)) []))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.construct .some [(.construct .cons [(.move (.generated .binding 2)), (.move (.generated .binding 4))])])))])) (Corr.build (ts := [(.list .bytes)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.bytes, (.list .bytes)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.bytes, (.list .bytes)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil))) rfl) (Corr.matchArms (st := (.option (.list .bytes))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, (.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list .bytes), (some 3)), (2, .bytes, (some 2)), (1, (.list .bytes), (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct (.none (.list .bytes)) [])) (Corr.mCons (Γ' := [(4, (.list .bytes), (some 4)), (3, (.list .bytes), (some 3)), (2, .bytes, (some 2)), (1, (.list .bytes), (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.construct .cons [(.move (.generated .binding 2)), (.move (.generated .binding 4))])])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.list .bytes)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.bytes, (.list .bytes)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)))))) rfl rfl rfl (Corr.build (ts := [(.list .bytes)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.bytes, (.list .bytes)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil))) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun97 : FunOK program krate flags 97 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 399)), .wild]) none (.clone (.generated .binding 2)))] (.move (.generated .part 399))))), (.mk (.bind (.generated .binding 4)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 400)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 401))]) none (.clone (.generated .binding 2)))] (.move (.generated .part 401)))))] (.move (.generated .part 400))))), (.mk (.bind (.generated .binding 5)) (some (.list .bytes)) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 402))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 403))]) none (.move (.generated .binding 2)))] (.move (.generated .part 403)))))] (.move (.generated .part 402))))), (.mk (.bind (.generated .holder 404)) none (.call (.function 51) [(.clone (.generated .binding 0)), (.copy (.generated .binding 3))] false))], (.matchOn (.move (.generated .holder 404)) [(.mk .none (.mk [] (.succeed (.construct (.none (.pair .nat (.pair .nat (.list .bytes)))) [])))), (.mk (.some (.bind (.generated .binding 6))) (.mk [(.mk (.bind (.generated .operand 405)) none (.copy (.generated .binding 6))), (.mk (.bind (.generated .operand 406)) none (.copy (.generated .binding 1)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 405)), (.move (.generated .operand 406))] false) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 407)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 408)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 407)), (.move (.generated .operand 408))] true))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 409)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 410)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 409)), (.move (.generated .operand 410))] true))) (.construct .cons [(.call (.function 18) [(.move (.generated .binding 0)), (.copy (.generated .binding 4)), (.block (.mk [(.mk (.bind (.generated .operand 411)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 412)) none (.copy (.generated .binding 4)))] (.call (.runtime .natSub) [(.move (.generated .operand 411)), (.move (.generated .operand 412))] false)))] false), (.move (.generated .binding 5))])))]))) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 413)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 414)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 413)), (.move (.generated .operand 414))] true))) (.pair (.copy (.generated .binding 4)) (.move (.generated .binding 5))))]))))))]), [(2, (.pair .nat (.pair .nat (.list .bytes))), (some 2)), (1, (.fixed .u8), (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 399)), .wild]) none (.clone (.generated .binding 2)))]) (tail := (.move (.generated .part 399))) (Corr.first (ta := .nat) (tb := (.pair .nat (.list .bytes))) (Corr.var rfl rfl) rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 400)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 401))]) none (.clone (.generated .binding 2)))] (.move (.generated .part 401)))))]) (tail := (.move (.generated .part 400))) (Corr.first (ta := .nat) (tb := (.list .bytes)) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 401))]) none (.clone (.generated .binding 2)))]) (tail := (.move (.generated .part 401))) (Corr.second (ta := .nat) (tb := (.pair .nat (.list .bytes))) (Corr.var rfl rfl) rfl)) rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 402))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 403))]) none (.move (.generated .binding 2)))] (.move (.generated .part 403)))))]) (tail := (.move (.generated .part 402))) (Corr.second (ta := .nat) (tb := (.list .bytes)) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 403))]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 403))) (Corr.second (ta := .nat) (tb := (.pair .nat (.list .bytes))) (Corr.var rfl rfl) rfl)) rfl)) rfl (Corr.matchArms (st := (.option (.fixed .u8))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(5, (.list .bytes), (some 5)), (4, .nat, (some 4)), (3, .nat, (some 3)), (2, (.pair .nat (.pair .nat (.list .bytes))), (some 2)), (1, (.fixed .u8), (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.construct (.none (.pair .nat (.pair .nat (.list .bytes)))) []))) (Corr.mCons (Γ' := [(6, (.fixed .u8), (some 6)), (5, (.list .bytes), (some 5)), (4, .nat, (some 4)), (3, .nat, (some 3)), (2, (.pair .nat (.pair .nat (.list .bytes))), (some 2)), (1, (.fixed .u8), (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .operand 405)) none (.copy (.generated .binding 6))), (.mk (.bind (.generated .operand 406)) none (.copy (.generated .binding 1)))]) (tail := (.cond (.call (.runtime .equal) [(.move (.generated .operand 405)), (.move (.generated .operand 406))] false) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 407)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 408)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 407)), (.move (.generated .operand 408))] true))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 409)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 410)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 409)), (.move (.generated .operand 410))] true))) (.construct .cons [(.call (.function 18) [(.move (.generated .binding 0)), (.copy (.generated .binding 4)), (.block (.mk [(.mk (.bind (.generated .operand 411)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 412)) none (.copy (.generated .binding 4)))] (.call (.runtime .natSub) [(.move (.generated .operand 411)), (.move (.generated .operand 412))] false)))] false), (.move (.generated .binding 5))])))]))) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 413)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 414)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 413)), (.move (.generated .operand 414))] true))) (.pair (.copy (.generated .binding 4)) (.move (.generated .binding 5))))]))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .operand 405)) none (.copy (.generated .binding 6))), (.mk (.bind (.generated .operand 406)) none (.copy (.generated .binding 1)))]) (ce := (.call (.runtime .equal) [(.move (.generated .operand 405)), (.move (.generated .operand 406))] false)) (lk := []) (Corr.prim (ts := [(.fixed .u8), (.fixed .u8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 407)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 408)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 407)), (.move (.generated .operand 408))] true))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 409)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 410)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 409)), (.move (.generated .operand 410))] true))) (.construct .cons [(.call (.function 18) [(.move (.generated .binding 0)), (.copy (.generated .binding 4)), (.block (.mk [(.mk (.bind (.generated .operand 411)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 412)) none (.copy (.generated .binding 4)))] (.call (.runtime .natSub) [(.move (.generated .operand 411)), (.move (.generated .operand 412))] false)))] false), (.move (.generated .binding 5))])))]))) (lb := []) (tb := (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 413)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 414)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 413)), (.move (.generated .operand 414))] true))) (.pair (.copy (.generated .binding 4)) (.move (.generated .binding 5))))]))) (Corr.fOfB (Corr.build (ts := [(.pair .nat (.pair .nat (.list .bytes)))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 407)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 408)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 407)), (.move (.generated .operand 408))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 409)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 410)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 409)), (.move (.generated .operand 410))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.bytes, (.list .bytes)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 411)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 412)) none (.copy (.generated .binding 4)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 411)), (.move (.generated .operand 412))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := [(.pair .nat (.pair .nat (.list .bytes)))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 413)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 414)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 413)), (.move (.generated .operand 414))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil))) rfl))))) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl))))⟩⟩ - -theorem fun98 : FunOK program krate flags 98 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 70) [(.move (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 48)), (.lit (.fixed .u8 57))] false) (.mk [] (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 415)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 416)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 415)), (.move (.generated .operand 416))] true)))]))) (.mk [] (.succeed (.construct (.none .nat) [])))), [(1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 70) [(.move (.generated .binding 0)), (.copy (.generated .binding 1)), (.lit (.fixed .u8 48)), (.lit (.fixed .u8 57))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .nat, (.fixed .u8), (.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 415)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 416)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 415)), (.move (.generated .operand 416))] true)))]))) (lb := []) (tb := (.succeed (.construct (.none .nat) []))) (Corr.fOfB (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 415)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 416)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 415)), (.move (.generated .operand 416))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | 3 => exact fun3 - | 4 => exact fun4 - | 5 => exact fun5 - | 6 => exact fun6 - | 7 => exact fun7 - | 8 => exact fun8 - | 9 => exact fun9 - | 10 => exact fun10 - | 11 => exact fun11 - | 12 => exact fun12 - | 13 => exact fun13 - | 14 => exact fun14 - | 15 => exact fun15 - | 16 => exact fun16 - | 17 => exact fun17 - | 18 => exact fun18 - | 19 => exact fun19 - | 20 => exact fun20 - | 21 => exact fun21 - | 22 => exact fun22 - | 23 => exact fun23 - | 24 => exact fun24 - | 25 => exact fun25 - | 26 => exact fun26 - | 27 => exact fun27 - | 28 => exact fun28 - | 29 => exact fun29 - | 30 => exact fun30 - | 31 => exact fun31 - | 32 => exact fun32 - | 33 => exact fun33 - | 34 => exact fun34 - | 35 => exact fun35 - | 36 => exact fun36 - | 37 => exact fun37 - | 38 => exact fun38 - | 39 => exact fun39 - | 40 => exact fun40 - | 41 => exact fun41 - | 42 => exact fun42 - | 43 => exact fun43 - | 44 => exact fun44 - | 45 => exact fun45 - | 46 => exact fun46 - | 47 => exact fun47 - | 48 => exact fun48 - | 49 => exact fun49 - | 50 => exact fun50 - | 51 => exact fun51 - | 52 => exact fun52 - | 53 => exact fun53 - | 54 => exact fun54 - | 55 => exact fun55 - | 56 => exact fun56 - | 57 => exact fun57 - | 58 => exact fun58 - | 59 => exact fun59 - | 60 => exact fun60 - | 61 => exact fun61 - | 62 => exact fun62 - | 63 => exact fun63 - | 64 => exact fun64 - | 65 => exact fun65 - | 66 => exact fun66 - | 67 => exact fun67 - | 68 => exact fun68 - | 69 => exact fun69 - | 70 => exact fun70 - | 71 => exact fun71 - | 72 => exact fun72 - | 73 => exact fun73 - | 74 => exact fun74 - | 75 => exact fun75 - | 76 => exact fun76 - | 77 => exact fun77 - | 78 => exact fun78 - | 79 => exact fun79 - | 80 => exact fun80 - | 81 => exact fun81 - | 82 => exact fun82 - | 83 => exact fun83 - | 84 => exact fun84 - | 85 => exact fun85 - | 86 => exact fun86 - | 87 => exact fun87 - | 88 => exact fun88 - | 89 => exact fun89 - | 90 => exact fun90 - | 91 => exact fun91 - | 92 => exact fun92 - | 93 => exact fun93 - | 94 => exact fun94 - | 95 => exact fun95 - | 96 => exact fun96 - | 97 => exact fun97 - | 98 => exact fun98 - | _ + 99 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.RustStd diff --git a/bootstrap/expected/verify/preserve/audit.txt b/bootstrap/expected/verify/preserve/audit.txt index 55e02ef79..351b7f09f 100644 --- a/bootstrap/expected/verify/preserve/audit.txt +++ b/bootstrap/expected/verify/preserve/audit.txt @@ -7737,23 +7737,23 @@ 'LexLeanPreservation.encOption.eq_2' does not depend on any axioms 'LexLeanPreservation.encPair.eq_1' does not depend on any axioms 'LexLeanPreservation.encUnit.eq_1' does not depend on any axioms -'LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.Compose.RustStd.__wt_0' depends on axioms: [propext] -'LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.Compose.RustStd.__wt_2' depends on axioms: [propext] -'LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.Compose.RustStd.__wt_1' depends on axioms: [propext] +'LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.Compose.RustStd.__wt_0' depends on axioms: [propext] +'LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.Compose.RustStd.__wt_2' depends on axioms: [propext] +'LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.Compose.RustStd.__wt_1' depends on axioms: [propext] -- statement vocabulary inductive LexLeanPreservation.Obs : Type number of parameters: 0 diff --git a/bootstrap/expected/verify/preserve/preservation.json b/bootstrap/expected/verify/preserve/preservation.json index 053822da8..2803afb80 100644 --- a/bootstrap/expected/verify/preserve/preservation.json +++ b/bootstrap/expected/verify/preserve/preservation.json @@ -1 +1 @@ -{"library":{"axioms":["Classical.choice","Quot.sound","propext"],"registry_sha256":"02de6e4be5a6ae43997bacd3713ea587693b8ac66da4aef567463a535a076ff3"},"roots":[{"byte_length":34133,"module":"LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0","program":{"byte_length":9488,"sha256":"730de4e60a1096efe498df077205f9916491d21aa78c6f1a197a1898349209f2"},"renderings":[{"byte_length":43700,"composed":{"byte_length":12124,"module":"LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.Compose.RustStd","sha256":"9dfa6e21645d45c6c80ceef53c7206b70cc9d76101ed7876436071d9f21ba102","theorem":"LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.Compose.RustStd.root"},"crate":{"byte_length":16737,"sha256":"7ff8ac9599486a35468e5ea4475ed877f8429cd453b1cb1ea35b750a24587d99"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.RustStd","sha256":"8128aedd6d5c6646a6ef6552c310ee1b48f2cb08ed813509dc527b2cfdb4b569","target":"rust-std","theorem":"LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.RustStd.root"}],"root":"LexLeanBoot.AxiomOutput.isClosedLeanName","sha256":"45ccb28606907864f4740bc44c468ef8d3fe0cec4a9e679abecd2580cf1dbe13","targets":["rust-std"],"theorem":"LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.root"},{"byte_length":556512,"module":"LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1","program":{"byte_length":115984,"sha256":"c494532214aa6b635eeb3efaed879328a4f5370efdc9d5079105c177d5f4ede8"},"renderings":[{"byte_length":625009,"composed":{"byte_length":33573,"module":"LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.Compose.RustStd","sha256":"3ba46eeade878347679eb66e16d719927f008cb7a1a787b47cd09f384a2f5c87","theorem":"LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.Compose.RustStd.root"},"crate":{"byte_length":67653,"sha256":"618126735f4e48ee1b62cfb47ba39d8bbb3636b876e6edd10f6d45ac079c7dd3"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.RustStd","sha256":"218ae6d12bf4bad20193687bd439eca24b58aa74d61e54aa9194f630eb85ba62","target":"rust-std","theorem":"LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.RustStd.root"}],"root":"LexLeanBoot.AxiomOutput.parseAuditOutput","sha256":"c4b5646e8fa7fbafa223c81d65c327d31e8ee0673384b9ff8612cdc9f8b48c00","targets":["rust-std"],"theorem":"LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.root"}],"spec":"lexlean/preservation/1"} +{"library":{"axioms":["Classical.choice","Quot.sound","propext"],"registry_sha256":"02de6e4be5a6ae43997bacd3713ea587693b8ac66da4aef567463a535a076ff3"},"roots":[{"byte_length":34133,"module":"LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0","program":{"byte_length":9488,"sha256":"730de4e60a1096efe498df077205f9916491d21aa78c6f1a197a1898349209f2"},"renderings":[{"byte_length":43700,"composed":{"byte_length":12124,"module":"LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.Compose.RustStd","sha256":"25ea0b1bd659e1a137af0f5cb7fa278a83ff4b1c649886abb249c0824adb1def","theorem":"LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.Compose.RustStd.root"},"crate":{"byte_length":16737,"sha256":"7ff8ac9599486a35468e5ea4475ed877f8429cd453b1cb1ea35b750a24587d99"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.RustStd","sha256":"757eac64f2344f58593fc30c48a81405a45ffc923fcfd659dedc295aeb01dd80","target":"rust-std","theorem":"LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.RustStd.root"}],"root":"LexLeanBoot.AxiomOutput.isClosedLeanName","sha256":"c69095cbf64ce32141a0506723f330c269f83042a3e5025648a165c99f726496","targets":["rust-std"],"theorem":"LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.root"},{"byte_length":556512,"module":"LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1","program":{"byte_length":115984,"sha256":"c494532214aa6b635eeb3efaed879328a4f5370efdc9d5079105c177d5f4ede8"},"renderings":[{"byte_length":625009,"composed":{"byte_length":33573,"module":"LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.Compose.RustStd","sha256":"06c5751ec739c9ba5d7b939f7a0782b872f9bc029013d41d093fe9366a20f267","theorem":"LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.Compose.RustStd.root"},"crate":{"byte_length":67653,"sha256":"618126735f4e48ee1b62cfb47ba39d8bbb3636b876e6edd10f6d45ac079c7dd3"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.RustStd","sha256":"b63b61da2a2d4edeeb081d10c6d066ca2959ac6c0aadc76dcff899b4043ebfab","target":"rust-std","theorem":"LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.RustStd.root"}],"root":"LexLeanBoot.AxiomOutput.parseAuditOutput","sha256":"9d983e6f4c077dbbee22f00c3f6684d6283f44b330ef695a01218b88d936ed2c","targets":["rust-std"],"theorem":"LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.root"}],"spec":"lexlean/preservation/1"} diff --git a/bootstrap/expected/verify/probe/LexLeanProbe.Padb40bbfc73b1dc6b7a95dab0c348a27.lean b/bootstrap/expected/verify/probe/LexLeanProbe.P5ba510b7049a3e59c5f1ffb1f0a6611d.lean similarity index 100% rename from bootstrap/expected/verify/probe/LexLeanProbe.Padb40bbfc73b1dc6b7a95dab0c348a27.lean rename to bootstrap/expected/verify/probe/LexLeanProbe.P5ba510b7049a3e59c5f1ffb1f0a6611d.lean diff --git a/bootstrap/expected/verify/probe/process.json b/bootstrap/expected/verify/probe/process.json index 94fc9a065..e84c0aa60 100644 --- a/bootstrap/expected/verify/probe/process.json +++ b/bootstrap/expected/verify/probe/process.json @@ -1 +1 @@ -{"argv":["env","lean","$STAGING/probe/LexLeanProbe.Padb40bbfc73b1dc6b7a95dab0c348a27.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanProbe.Padb40bbfc73b1dc6b7a95dab0c348a27","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} +{"argv":["env","lean","$STAGING/probe/LexLeanProbe.P5ba510b7049a3e59c5f1ffb1f0a6611d.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanProbe.P5ba510b7049a3e59c5f1ffb1f0a6611d","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/bootstrap/expected/verify/process/leanchecker/LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.Compose.RustStd.json b/bootstrap/expected/verify/process/leanchecker/LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.Compose.RustStd.json new file mode 100644 index 000000000..568cf5e66 --- /dev/null +++ b/bootstrap/expected/verify/process/leanchecker/LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/bootstrap/expected/verify/process/leanchecker/LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.RustStd.json b/bootstrap/expected/verify/process/leanchecker/LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.RustStd.json new file mode 100644 index 000000000..f50d89643 --- /dev/null +++ b/bootstrap/expected/verify/process/leanchecker/LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/bootstrap/expected/verify/process/leanchecker/LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.json b/bootstrap/expected/verify/process/leanchecker/LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.json new file mode 100644 index 000000000..511a9170c --- /dev/null +++ b/bootstrap/expected/verify/process/leanchecker/LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/bootstrap/expected/verify/process/leanchecker/LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.Compose.RustStd.json b/bootstrap/expected/verify/process/leanchecker/LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.Compose.RustStd.json new file mode 100644 index 000000000..9934f945f --- /dev/null +++ b/bootstrap/expected/verify/process/leanchecker/LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/bootstrap/expected/verify/process/leanchecker/LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.RustStd.json b/bootstrap/expected/verify/process/leanchecker/LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.RustStd.json new file mode 100644 index 000000000..006f1ede6 --- /dev/null +++ b/bootstrap/expected/verify/process/leanchecker/LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/bootstrap/expected/verify/process/leanchecker/LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.json b/bootstrap/expected/verify/process/leanchecker/LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.json new file mode 100644 index 000000000..f83a4199c --- /dev/null +++ b/bootstrap/expected/verify/process/leanchecker/LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/bootstrap/expected/verify/process/leanchecker/LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.Compose.RustStd.json b/bootstrap/expected/verify/process/leanchecker/LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.Compose.RustStd.json deleted file mode 100644 index 272083c41..000000000 --- a/bootstrap/expected/verify/process/leanchecker/LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/bootstrap/expected/verify/process/leanchecker/LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.RustStd.json b/bootstrap/expected/verify/process/leanchecker/LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.RustStd.json deleted file mode 100644 index 0379176e8..000000000 --- a/bootstrap/expected/verify/process/leanchecker/LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/bootstrap/expected/verify/process/leanchecker/LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.json b/bootstrap/expected/verify/process/leanchecker/LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.json deleted file mode 100644 index 9a0c6d6bb..000000000 --- a/bootstrap/expected/verify/process/leanchecker/LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/bootstrap/expected/verify/process/leanchecker/LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.Compose.RustStd.json b/bootstrap/expected/verify/process/leanchecker/LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.Compose.RustStd.json deleted file mode 100644 index 908bafbea..000000000 --- a/bootstrap/expected/verify/process/leanchecker/LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/bootstrap/expected/verify/process/leanchecker/LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.RustStd.json b/bootstrap/expected/verify/process/leanchecker/LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.RustStd.json deleted file mode 100644 index 24019f251..000000000 --- a/bootstrap/expected/verify/process/leanchecker/LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/bootstrap/expected/verify/process/leanchecker/LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.json b/bootstrap/expected/verify/process/leanchecker/LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.json deleted file mode 100644 index e921328cc..000000000 --- a/bootstrap/expected/verify/process/leanchecker/LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/bootstrap/expected/verify/process/preserve/LexLeanPreserve.Audit.json b/bootstrap/expected/verify/process/preserve/LexLeanPreserve.Audit.json index 1037360f3..6d3ad0be7 100644 --- a/bootstrap/expected/verify/process/preserve/LexLeanPreserve.Audit.json +++ b/bootstrap/expected/verify/process/preserve/LexLeanPreserve.Audit.json @@ -1 +1 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","$STAGING/preserve-src/LexLeanPreserve/Audit.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Audit","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanPreservation.Obs' does not depend on any axioms\n'LexLeanPreservation.obs.match_1' does not depend on any axioms\n'LexLeanPreservation.obs' does not depend on any axioms\n'LexLeanPreservation.Conv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ConvA' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ObsL' does not depend on any axioms\n'LexLeanPreservation.obsL.match_1' does not depend on any axioms\n'LexLeanPreservation.obsL' does not depend on any axioms\n'LexLeanPreservation.ConvL' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.FunRel' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Obs._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.Obs._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.Obs.casesOn' does not depend on any axioms\n'LexLeanPreservation.Obs.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.Obs.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Obs.ctorElim' does not depend on any axioms\n'LexLeanPreservation.Obs.overflow.elim' does not depend on any axioms\n'LexLeanPreservation.Obs.stuck.elim' does not depend on any axioms\n'LexLeanPreservation.Obs.value.elim' does not depend on any axioms\n'LexLeanPreservation.Obs.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.Obs.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Obs.overflow.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Obs.recOn' does not depend on any axioms\n'LexLeanPreservation.Obs.stuck.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Obs.value.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Obs.value.inj' does not depend on any axioms\n'LexLeanPreservation.Obs.value.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Obs.value.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ObsL._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.ObsL._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.ObsL.casesOn' does not depend on any axioms\n'LexLeanPreservation.ObsL.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.ObsL.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.ObsL.ctorElim' does not depend on any axioms\n'LexLeanPreservation.ObsL.overflow.elim' does not depend on any axioms\n'LexLeanPreservation.ObsL.stuck.elim' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.elim' does not depend on any axioms\n'LexLeanPreservation.ObsL.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.ObsL.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ObsL.overflow.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ObsL.recOn' does not depend on any axioms\n'LexLeanPreservation.ObsL.stuck.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.inj' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.injEq' depends on axioms: [propext]\n'LexLeanPreservation.ObsL.values.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rel' does not depend on any axioms\n'LexLeanPreservation.Rel.eq_1' does not depend on any axioms\n'LexLeanPreservation.RelL' does not depend on any axioms\n'LexLeanPreservation.RelL.eq_1' does not depend on any axioms\n'LexLeanPreservation.RunConv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.addSteps_ne' does not depend on any axioms\n'LexLeanPreservation.chargeResult_ne' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.stable.match_1_16' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_18' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_20' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_22' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_24' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_26' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.eval.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.stable' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.evalArms_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs_ne' does not depend on any axioms\n'LexLeanPreservation.convA_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.eval_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs_addSteps' does not depend on any axioms\n'LexLeanPreservation.convA_hit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.convA_miss' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.evalList_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obsL_ne' does not depend on any axioms\n'LexLeanPreservation.convL_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.convL_cons._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.convL_cons._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.convL_cons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.convL_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_apply._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_apply._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_apply._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_apply' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_build' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_call._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_call._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_call' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_closure' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_cond._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_cond._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_field' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_first' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_let._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_let._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_let' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_match._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_match._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_match' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_matchV' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs_chargeResult' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_prim' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_second' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_var' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.funRel_intro' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs.eq_1' does not depend on any axioms\n'LexLeanPreservation.obs.eq_2' does not depend on any axioms\n'LexLeanPreservation.obs.eq_3' does not depend on any axioms\n'LexLeanPreservation.obs.eq_4' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_1' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_2' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_3' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_4' does not depend on any axioms\n'LexLeanPreservation.run_of_funRel' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.run.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ListEnc' does not depend on any axioms\n'LexLeanPreservation.ListEnc._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.ListEnc._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.ListEnc.casesOn' does not depend on any axioms\n'LexLeanPreservation.ListEnc.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.ListEnc.elem' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items' does not depend on any axioms\n'LexLeanPreservation.ListEnc.enc' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_cons' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_eq.match_1_1' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_nil' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_eq._f' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_eq' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.ListEnc.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.ListEnc.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk.inj' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk.injEq' depends on axioms: [propext]\n'LexLeanPreservation.ListEnc.mk.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ListEnc.recOn' does not depend on any axioms\n'LexLeanPreservation.OptEnc' does not depend on any axioms\n'LexLeanPreservation.OptEnc._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.OptEnc._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.OptEnc.casesOn' does not depend on any axioms\n'LexLeanPreservation.OptEnc.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.OptEnc.elem' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc_none' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc_some' does not depend on any axioms\n'LexLeanPreservation.encOption.match_1' does not depend on any axioms\n'LexLeanPreservation.encOption' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc_map' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.OptEnc.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.OptEnc.noConfusion' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk.noConfusion' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk.inj' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk.injEq' depends on axioms: [propext]\n'LexLeanPreservation.OptEnc.mk.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.OptEnc.recOn' does not depend on any axioms\n'LexLeanPreservation.construct_adt' does not depend on any axioms\n'LexLeanPreservation.construct_cons' does not depend on any axioms\n'LexLeanPreservation.construct_error' does not depend on any axioms\n'LexLeanPreservation.construct_false' does not depend on any axioms\n'LexLeanPreservation.construct_nil' does not depend on any axioms\n'LexLeanPreservation.construct_none' does not depend on any axioms\n'LexLeanPreservation.construct_ok' does not depend on any axioms\n'LexLeanPreservation.construct_pair' does not depend on any axioms\n'LexLeanPreservation.construct_some' does not depend on any axioms\n'LexLeanPreservation.construct_succ' does not depend on any axioms\n'LexLeanPreservation.construct_true' does not depend on any axioms\n'LexLeanPreservation.construct_unit' does not depend on any axioms\n'LexLeanPreservation.construct_zero' does not depend on any axioms\n'LexLeanPreservation.encExcept.match_1' does not depend on any axioms\n'LexLeanPreservation.encExcept' does not depend on any axioms\n'LexLeanPreservation.encList' does not depend on any axioms\n'LexLeanPreservation.encOrdering.match_1' does not depend on any axioms\n'LexLeanPreservation.encOrdering' does not depend on any axioms\n'LexLeanPreservation.encPair' does not depend on any axioms\n'LexLeanPreservation.encUnit' does not depend on any axioms\n'LexLeanPreservation.listEnc._proof_1' does not depend on any axioms\n'LexLeanPreservation.listEnc._proof_2' does not depend on any axioms\n'LexLeanPreservation.listEnc' does not depend on any axioms\n'LexLeanPreservation.optEnc._proof_1' does not depend on any axioms\n'LexLeanPreservation.optEnc._proof_2' does not depend on any axioms\n'LexLeanPreservation.optEnc' does not depend on any axioms\n'LexLeanPreservation.bytes_empty' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.bytes_one' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.bytes_zero' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.encOrdering.eq_1' does not depend on any axioms\n'LexLeanPreservation.encOrdering.eq_2' does not depend on any axioms\n'LexLeanPreservation.encOrdering.eq_3' does not depend on any axioms\n'LexLeanPreservation.fromOrdering_encOrdering' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.fromStrings_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.fromStrings_map._f' does not depend on any axioms\n'LexLeanPreservation.fromStrings_map' does not depend on any axioms\n'LexLeanPreservation.intFits' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.listIndex_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.listIndex_map._f' does not depend on any axioms\n'LexLeanPreservation.listIndex_map' does not depend on any axioms\n'LexLeanPreservation.listIndex_unique.match_1_1' does not depend on any axioms\n'LexLeanPreservation.listIndex_unique._f' does not depend on any axioms\n'LexLeanPreservation.listIndex_unique' does not depend on any axioms\n'LexLeanPreservation.obs_intResult' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.obs_natResult' does not depend on any axioms\n'LexLeanPreservation.prim_append_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_append_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_boolNot' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_compareBytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_bool' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_nat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_ordering' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_string' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_index_bytes.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_index_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_index_list.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_index_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intMul' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intNeg' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intQuot' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intRem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intSub' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_join.match_1_1' does not depend on any axioms\n'LexLeanPreservation.toStrings_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.toStrings_map.match_1_3' does not depend on any axioms\n'LexLeanPreservation.toStrings_map._f' does not depend on any axioms\n'LexLeanPreservation.toStrings_map' does not depend on any axioms\n'LexLeanPreservation.prim_join' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_length_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_length_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_length_string' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natAdd' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natEq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natLe' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natLt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natMul' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natQuot' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natRem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natSub' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_slice_bytes.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_slice_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_slice_list.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_slice_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_splitExact.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_splitExact' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_utf8Decode.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_utf8Decode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_utf8Encode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.compareBytes.eq_1' depends on axioms: [propext]\n'LexLeanRuntime.equal.eq_1' does not depend on any axioms\n'LexLeanRuntime.length.eq_1' does not depend on any axioms\n'LexLeanRuntime.slice.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromOrdering.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.checkedMultiplyWith.match_1' does not depend on any axioms\n'LexLeanPreservation.checkedMultiplyWith' does not depend on any axioms\n'LexLeanPreservation.checkedQuotientWith' does not depend on any axioms\n'LexLeanPreservation.decimalFits.match_1' does not depend on any axioms\n'LexLeanPreservation.decimalFits' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.divideStep' does not depend on any axioms\n'LexLeanPreservation.divide_unique.match_1_1' does not depend on any axioms\n'LexLeanPreservation.divide_unique._f' does not depend on any axioms\n'LexLeanPreservation.divide_unique' does not depend on any axioms\n'LexLeanPreservation.multiplyStep' does not depend on any axioms\n'LexLeanPreservation.multiply_unique.match_1_1' does not depend on any axioms\n'LexLeanPreservation.multiply_unique._f' does not depend on any axioms\n'LexLeanPreservation.multiply_unique' does not depend on any axioms\n'LexLeanPreservation.prim_bitAnd_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i64.match_1_2' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_int' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_int.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_int' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ordOf.match_1' does not depend on any axioms\n'LexLeanPreservation.ordOf' does not depend on any axioms\n'LexLeanPreservation.KeySpec' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.mk._flat_ctor' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.recOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.spec' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.compareCodes_eq.match_1_1' does not depend on any axioms\n'LexLeanPreservation.compareCodes_eq._f' depends on axioms: [propext]\n'LexLeanPreservation.compareCodes_eq' depends on axioms: [propext]\n'LexLeanPreservation.compareCodes_swap.match_1_1' does not depend on any axioms\n'LexLeanPreservation.compareCodes_swap._f' depends on axioms: [propext]\n'LexLeanPreservation.compareCodes_swap' depends on axioms: [propext]\n'LexLeanPreservation.lessThanE' does not depend on any axioms\n'LexLeanPreservation.prim_compare_key.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_compare_key' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_lessThan' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.orderOf_insert' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.orderBool.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.keySpec_bool' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI16.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI32.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI64.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI8.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderInt.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_int' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderNat.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_nat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.keySpec_pair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderString.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.keySpec_string' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU16.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU32.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU64.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU8.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanCollections.compareCodes._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_2' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_3' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_4' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_def' depends on axioms: [propext]\n'LexLeanCollections.insertEntry.eq_1' does not depend on any axioms\n'LexLeanCollections.insertEntry.eq_2' does not depend on any axioms\n'LexLeanCollections.insertEntry.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.compareValue.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_18' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_20' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_22' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_23' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_24' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_25' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_26' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_27' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_28' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_29' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_30' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_31' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_33' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_34' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_35' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_36' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_37' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_38' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_39' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_40' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_41' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_42' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_43' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_44' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_45' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_46' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_47' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_48' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_49' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_50' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_51' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_52' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_53' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_54' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_55' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_56' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_57' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_58' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_59' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_60' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_61' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_62' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_63' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_65' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_66' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_67' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_68' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_69' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_70' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_71' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_72' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_73' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_74' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_75' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_76' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_77' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_78' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_79' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_80' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_81' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_82' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_83' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_84' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_85' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_86' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_87' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_88' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_89' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_90' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_91' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_92' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_93' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_94' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_95' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_96' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_97' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_98' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_99' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Conv.bool_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Conv.fits_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.FunRel.fits_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ListEnc.enc.eq_1' does not depend on any axioms\n'LexLeanPreservation.ListEnc.enc_cons' does not depend on any axioms\n'LexLeanPreservation.ListEnc.enc_nil' does not depend on any axioms\n'LexLeanPreservation.LookOps' does not depend on any axioms\n'LexLeanPreservation.LookOps.casesOn' does not depend on any axioms\n'LexLeanPreservation.LookOps.l0' does not depend on any axioms\n'LexLeanPreservation.LookOps.leq' does not depend on any axioms\n'LexLeanPreservation.LookOps.lgt' does not depend on any axioms\n'LexLeanPreservation.LookOps.llt' does not depend on any axioms\n'LexLeanPreservation.LookOps.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.LookOps.recOn' does not depend on any axioms\n'LexLeanPreservation.SetOps' does not depend on any axioms\n'LexLeanPreservation.SetOps.c0' does not depend on any axioms\n'LexLeanPreservation.SetOps.casesOn' does not depend on any axioms\n'LexLeanPreservation.SetOps.ceq' does not depend on any axioms\n'LexLeanPreservation.SetOps.cgt' does not depend on any axioms\n'LexLeanPreservation.SetOps.clt' does not depend on any axioms\n'LexLeanPreservation.SetOps.i0' does not depend on any axioms\n'LexLeanPreservation.SetOps.ieq' does not depend on any axioms\n'LexLeanPreservation.SetOps.igt' does not depend on any axioms\n'LexLeanPreservation.SetOps.ilt' does not depend on any axioms\n'LexLeanPreservation.SetOps.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.SetOps.r0' does not depend on any axioms\n'LexLeanPreservation.SetOps.recOn' does not depend on any axioms\n'LexLeanPreservation.SetOps.req' does not depend on any axioms\n'LexLeanPreservation.SetOps.rgt' does not depend on any axioms\n'LexLeanPreservation.SetOps.rlt' does not depend on any axioms\n'LexLeanPreservation.TopoOps' does not depend on any axioms\n'LexLeanPreservation.TopoOps.casesOn' does not depend on any axioms\n'LexLeanPreservation.TopoOps.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.TopoOps.recOn' does not depend on any axioms\n'LexLeanPreservation.TopoOps.s_next' does not depend on any axioms\n'LexLeanPreservation.TopoOps.s_nil' does not depend on any axioms\n'LexLeanPreservation.TopoOps.s_stuck' does not depend on any axioms\n'LexLeanPreservation.TopoOps.z_cons' does not depend on any axioms\n'LexLeanPreservation.TopoOps.z_nil' does not depend on any axioms\n'LexLeanPreservation.Tpl.boolE' does not depend on any axioms\n'LexLeanPreservation.Tpl.byOrder' does not depend on any axioms\n'LexLeanPreservation.Tpl.cns' does not depend on any axioms\n'LexLeanPreservation.Tpl.fn' does not depend on any axioms\n'LexLeanPreservation.Tpl.lst' does not depend on any axioms\n'LexLeanPreservation.Tpl.v' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphInnerFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.pr' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphNodesFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.natOne' does not depend on any axioms\n'LexLeanPreservation.Tpl.nl' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphReachableFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphSuccessorsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphTopologicalFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.iterateFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.iterateUntilFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.listFoldFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapContainsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapFoldFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapInsertFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapLookupFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapProjectFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapRemoveFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reachFrontierFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reachIntoFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reachRoundsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reverseFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setContainsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setFilterFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setInsertFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setRemoveFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setUnionFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoFinished' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoReadyFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoRoundsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoUnreachedFn' does not depend on any axioms\n'LexLeanPreservation.blt_succ_fits._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.blt_succ_fits' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_cond_false' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_cond_true' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.enc_elem' does not depend on any axioms\n'LexLeanPreservation.enc_entry' does not depend on any axioms\n'LexLeanPreservation.foldFits.match_1' does not depend on any axioms\n'LexLeanPreservation.foldFits._f' does not depend on any axioms\n'LexLeanPreservation.foldFits' does not depend on any axioms\n'LexLeanPreservation.foldFits._sunfold' does not depend on any axioms\n'LexLeanPreservation.foldFits._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.foldFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.foldFits.eq_2' does not depend on any axioms\n'LexLeanPreservation.foldFits.eq_def' does not depend on any axioms\n'LexLeanPreservation.graphFits' does not depend on any axioms\n'LexLeanPreservation.graphFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.iterateFits.match_1' does not depend on any axioms\n'LexLeanPreservation.iterateFits._f' does not depend on any axioms\n'LexLeanPreservation.iterateFits' does not depend on any axioms\n'LexLeanPreservation.iterateFits._sunfold' does not depend on any axioms\n'LexLeanPreservation.iterateFits._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.iterateFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.iterateFits.eq_2' does not depend on any axioms\n'LexLeanPreservation.iterateFits.eq_def' does not depend on any axioms\n'LexLeanPreservation.length_eq' does not depend on any axioms\n'LexLeanPreservation.prim_compare_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.reachNext' does not depend on any axioms\n'LexLeanPreservation.tpl_graphInner.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setInsert.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setInsert._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setInsert' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphInner._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphInner' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphNodes.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_graphNodes._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphNodes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapLookup.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapLookup._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapLookup' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphSuccessors' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachFrontier.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_reachInto.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setContains.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setContains._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setContains' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachInto._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachInto' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachFrontier._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachFrontier' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachRounds.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setUnion.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setUnion._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setUnion' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachRounds._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachRounds' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphReachable' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reverse.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_reverse._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reverse' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setRemove.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setRemove._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setRemove' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoReady.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_topoUnreached.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_topoUnreached._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoUnreached' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoReady._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoReady' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoRounds.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_topoRounds._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoRounds' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphTopological' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterate.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_iterate._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterate' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterateUntil.match_1_1' does not depend on any axioms\n'LexLeanPreservation.untilFits.match_1' does not depend on any axioms\n'LexLeanPreservation.untilFits._f' does not depend on any axioms\n'LexLeanPreservation.untilFits' does not depend on any axioms\n'LexLeanPreservation.tpl_iterateUntil._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterateUntil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_listFold.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_listFold._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_listFold' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapContains' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapFold.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapFold._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapFold' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapInsert.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapInsert._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapInsert' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapKeys.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapKeys._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapKeys' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapRemove.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapRemove._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapRemove' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapValues.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapValues._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapValues' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setDifference.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setDifference._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setDifference' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setIntersection.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setIntersection._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setIntersection' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.untilFits._sunfold' does not depend on any axioms\n'LexLeanPreservation.untilFits._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.untilFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.untilFits.eq_2' does not depend on any axioms\n'LexLeanPreservation.untilFits.eq_def' does not depend on any axioms\n'LexLeanPreservation.validExcept.match_1' does not depend on any axioms\n'LexLeanPreservation.InvExcept' does not depend on any axioms\n'LexLeanPreservation.InvList' does not depend on any axioms\n'LexLeanPreservation.InvList.eq_1' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.match_1' does not depend on any axioms\n'LexLeanPreservation.StrictAsc._f' does not depend on any axioms\n'LexLeanPreservation.StrictAsc' does not depend on any axioms\n'LexLeanPreservation.InvMap' does not depend on any axioms\n'LexLeanPreservation.validOption.match_1' does not depend on any axioms\n'LexLeanPreservation.InvOption' does not depend on any axioms\n'LexLeanPreservation.InvOption.eq_1' does not depend on any axioms\n'LexLeanPreservation.InvOption.eq_2' does not depend on any axioms\n'LexLeanPreservation.InvPair' does not depend on any axioms\n'LexLeanPreservation.InvSet' does not depend on any axioms\n'LexLeanPreservation.StrictAsc._sunfold' does not depend on any axioms\n'LexLeanPreservation.StrictAsc._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_1' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_2' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_3' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_def' does not depend on any axioms\n'LexLeanPreservation.Tpl.validListFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validMapFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validOptionFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validPairFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validResultFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validSetFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validTrueFn' does not depend on any axioms\n'LexLeanPreservation.ascMap.match_1' does not depend on any axioms\n'LexLeanPreservation.lessB.match_1' does not depend on any axioms\n'LexLeanPreservation.lessB' does not depend on any axioms\n'LexLeanPreservation.ascMap._f' does not depend on any axioms\n'LexLeanPreservation.ascMap' does not depend on any axioms\n'LexLeanPreservation.ascMap._sunfold' does not depend on any axioms\n'LexLeanPreservation.ascMap._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_1' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_2' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_3' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_def' does not depend on any axioms\n'LexLeanPreservation.ascMap_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.lessB_iff' depends on axioms: [propext]\n'LexLeanPreservation.ascMap_iff._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.ascMap_iff' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.ascMap_inv' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.ascSet._f' does not depend on any axioms\n'LexLeanPreservation.ascSet' does not depend on any axioms\n'LexLeanPreservation.ascSet._sunfold' does not depend on any axioms\n'LexLeanPreservation.ascSet._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_1' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_2' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_3' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_def' does not depend on any axioms\n'LexLeanPreservation.ascSet_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.ascSet_iff._f' depends on axioms: [propext]\n'LexLeanPreservation.ascSet_iff' depends on axioms: [propext]\n'LexLeanPreservation.ascSet_inv' depends on axioms: [propext]\n'LexLeanPreservation.condAnd_iff' depends on axioms: [propext]\n'LexLeanPreservation.invList_eqs.match_1_1' does not depend on any axioms\n'LexLeanPreservation.invList_eqs._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.invList_eqs' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.lessB.eq_1' does not depend on any axioms\n'LexLeanPreservation.lessB_eq' depends on axioms: [propext]\n'LexLeanPreservation.lessB_gt' depends on axioms: [propext]\n'LexLeanPreservation.lessB_lt' depends on axioms: [propext]\n'LexLeanPreservation.someObs.match_1' does not depend on any axioms\n'LexLeanPreservation.someObs' does not depend on any axioms\n'LexLeanPreservation.tpl_validList.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validList.match_1' does not depend on any axioms\n'LexLeanPreservation.validList._f' does not depend on any axioms\n'LexLeanPreservation.validList' does not depend on any axioms\n'LexLeanPreservation.tpl_validList' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validMap.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_validMap._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validMap' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validOption.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validOption' does not depend on any axioms\n'LexLeanPreservation.tpl_validOption' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validPair.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validPair' does not depend on any axioms\n'LexLeanPreservation.tpl_validPair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validResult.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validExcept' does not depend on any axioms\n'LexLeanPreservation.tpl_validResult' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validSet.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_validSet._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validSet' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validTrue' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.trueIff' does not depend on any axioms\n'LexLeanPreservation.validExcept_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validExcept_inv' does not depend on any axioms\n'LexLeanPreservation.validList._sunfold' does not depend on any axioms\n'LexLeanPreservation.validList._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.validList.eq_1' does not depend on any axioms\n'LexLeanPreservation.validList.eq_2' does not depend on any axioms\n'LexLeanPreservation.validList.eq_def' does not depend on any axioms\n'LexLeanPreservation.validList_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validList_iff._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.validList_iff' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.validList_inv' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.validOption.eq_1' does not depend on any axioms\n'LexLeanPreservation.validOption.eq_2' does not depend on any axioms\n'LexLeanPreservation.validOption_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validOption_inv' depends on axioms: [propext]\n'LexLeanPreservation.validPair_inv' depends on axioms: [propext]\n'LexLeanPreservation.validTrue_inv' does not depend on any axioms\n'LexLeanPreservation.Rust.Ctx' does not depend on any axioms\n'LexLeanPreservation.Rust.Flags' does not depend on any axioms\n'LexLeanPreservation.Rust.RCrate' does not depend on any axioms\n'LexLeanPreservation.Rust.RIdent' does not depend on any axioms\n'LexLeanPreservation.Rust.WT._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.adtFields' depends on axioms: [propext]\n'LexLeanTarget.TargetSyntax.IntKind.ofNat' does not depend on any axioms\n'LexLeanTarget.TargetSyntax.IntKind.ofNat_ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Rust.instDecidableEqIntKind_lexLeanPreservation._proof_1' does not depend on any axioms\n'LexLeanPreservation.Rust.instDecidableEqIntKind_lexLeanPreservation._proof_2' does not depend on any axioms\n'LexLeanPreservation.Rust.instDecidableEqIntKind_lexLeanPreservation' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flagOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fnIdent' does not depend on any axioms\n'LexLeanPreservation.Rust.fnFallible' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.inert._f' does not depend on any axioms\n'LexLeanPreservation.Rust.inert' does not depend on any axioms\n'LexLeanPreservation.Rust.WT._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.WTAll._f' does not depend on any axioms\n'LexLeanPreservation.Rust.WTL.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctxLookup.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup._f' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup' does not depend on any axioms\n'LexLeanPreservation.Rust.local_' does not depend on any axioms\n'LexLeanPreservation.Rust.EnvRel' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ROut' does not depend on any axioms\n'LexLeanPreservation.Rust.Halt' does not depend on any axioms\n'LexLeanPreservation.Rust.REnv' does not depend on any axioms\n'LexLeanPreservation.Rust.RExpr' does not depend on any axioms\n'LexLeanPreservation.Rust.RC' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RLet' does not depend on any axioms\n'LexLeanPreservation.Rust.LetsOK' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.append' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.below' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.below.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.brecOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.recOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.append_left' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.append_right' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.below' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.below.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.brecOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.recOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RBlock' does not depend on any axioms\n'LexLeanPreservation.Rust.dispatched_ne' does not depend on any axioms\n'LexLeanPreservation.Rust.finished_ne' does not depend on any axioms\n'LexLeanPreservation.Rust.returned_ne' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_24' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_26' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_28' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_30' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_32' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_34' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_36' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.eval.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_22' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.invoke.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.stable' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.reval_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCB' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.block' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCA' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.revalBlock_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCB.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCI' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.invoke_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCI.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCL' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.revalList_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCL.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.WTAll' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.block_of_lets' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.block_of_raise' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.ctxLookup._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup_slot._simp_1_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotFree' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup_slot' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_cons_other' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sameIdent_self' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_cons_self' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sameIdent_local' depends on axioms: [propext]\n'LexLeanPreservation.Rust.envRel_bind' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.envRel_extra' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.envRel_ghost' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sameIdent_kind' depends on axioms: [propext]\n'LexLeanPreservation.Rust.envRel_temp' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.listIndex_eq.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.listIndex_eq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.listIndex_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.index_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.inert._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.inert._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_nil.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_raise_head.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcl_raise_head.match_1_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcl_raise_head' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_raise_tail' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.revalArms_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.slotFree.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sunfold' depends on axioms: [propext]\n'LexLeanTarget.RustSemantics.eval.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_18' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_20' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.invoke.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.invoke.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.kindNumber.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.lookup.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.lookup.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.lookup.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.lookup.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.lookup.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.lookup.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd' does not depend on any axioms\n'LexLeanPreservation.Rust.isTemp._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isTemp.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isTemp' depends on axioms: [propext]\n'LexLeanPreservation.Rust.letsBind.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds._f' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds._f' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind._f' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind' does not depend on any axioms\n'LexLeanPreservation.Rust.tempFresh' does not depend on any axioms\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.foldN.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.flatB._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep.match_7' does not depend on any axioms\n'LexLeanPreservation.Rust.foldStep' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldB' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats._f' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats' does not depend on any axioms\n'LexLeanPreservation.Rust.okBlock' does not depend on any axioms\n'LexLeanPreservation.Rust.partRead._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Kind.casesOn' does not depend on any axioms\n'LexLeanPreservation.Rust.elseCtx.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.elseCtx' does not depend on any axioms\n'LexLeanPreservation.Rust.elseLets.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.elseLets' does not depend on any axioms\n'LexLeanPreservation.Rust.heldOK.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.heldOK' does not depend on any axioms\n'LexLeanPreservation.Rust.negateR._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.negateR._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.negateR.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.negateR' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_5' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_7' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_9' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identBoxed' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal' does not depend on any axioms\n'LexLeanPreservation.Rust.isWild._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.unboxOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotOK.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocal' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armShape.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.armShape' does not depend on any axioms\n'LexLeanPreservation.Rust.otherArms.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.otherArms' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.noClosure.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.noClosure._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh' depends on axioms: [propext]\n'LexLeanPreservation.Rust.covered' depends on axioms: [propext]\n'LexLeanPreservation.Rust.scrut' does not depend on any axioms\n'LexLeanPreservation.Rust.validU.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.validU' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotOK' does not depend on any axioms\n'LexLeanPreservation.Rust.ctorOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identsDistinct.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct._f' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct' does not depend on any axioms\n'LexLeanPreservation.Rust.litOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArg._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.match_6' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArg.match_8' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArg' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArgs._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildTail.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildsArm.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildsArm' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.itemOK.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemOK' does not depend on any axioms\n'LexLeanPreservation.Rust.itemTyped.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemTyped.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf' does not depend on any axioms\n'LexLeanPreservation.Rust.itemTyped' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_9' does not depend on any axioms\n'LexLeanPreservation.Rust.isFixed._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped' depends on axioms: [propext]\n'LexLeanPreservation.Rust.primTyped' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.litValues._f' does not depend on any axioms\n'LexLeanPreservation.Rust.litValue' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.typedLitAll._f' does not depend on any axioms\n'LexLeanPreservation.Rust.typedLits.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Corr' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.below' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.below.casesOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.brecOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.casesOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.recOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.FunOK' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.CrateOK' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Fresh' does not depend on any axioms\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn' depends on axioms: [propext]\n'LexLeanPreservation.Rust.FunSem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Kind._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.casesOn' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ctorElim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.b.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.e.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.k.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.l.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.m.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.ops.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.recOn' does not depend on any axioms\n'LexLeanPreservation.Rust.KPre.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.KPre' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Kind.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.ctorElim' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Kind.nat.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.plain.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.plain.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.recOn' does not depend on any axioms\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesM.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.RealizesM' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Sem.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.viewVal._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Sem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.foldN._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identsDistinct._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_10' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_11' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_12' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_13' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_14' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_6' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_7' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_8' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.litValues' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue._sunfold' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.litValue._unsafe_rec' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues._sunfold' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.paramCtx._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patsBinds' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.patLocals._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patsBinds._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArgs._sunfold' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs._unsafe_rec' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.typedLitAll' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.typedLits._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_of_inert.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_of_inert.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_of_inert._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_of_inert' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_of_inert._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_of_inert' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Halt.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.LetsRaise.halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.block_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.boxed' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesM.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesM.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_bytes_inv' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_list_inv' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_string_inv' depends on axioms: [propext]\n'LexLeanPreservation.Rust.takes_of_typed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.allWidth_of.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_eq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_eq._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.tysBeq_eq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq_eq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.wt_fixed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.allWidth_of._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.allWidth_of' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.width_of_typed.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.width_of_typed.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.width_of_typed.match_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.width_of_typed' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.accepts_of_typed' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_apply' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtl_append.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_append._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_append' depends on axioms: [propext]\n'LexLeanPreservation.Rust.apply_result' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.bindPattern_shape.match_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.bindPattern_shape._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.bindPatterns_shape._simp_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindPatterns_shape.match_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.bindPatterns_shape._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.bindPattern_shape' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.bindPatterns_shape' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms_spec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_4' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_6' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_7' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.boolArms_eval' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.boxWith.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_100' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_102' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_96' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_98' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_function' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.call_result' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.const_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.convert_args.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.convert_args' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_append_fresh' depends on axioms: [propext]\n'LexLeanPreservation.Rust.envRel_fresh' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_not._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_cond.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.itemResult.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.eval_match' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fixedTyped.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_18' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_19' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_20' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_21' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_22' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_23' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_24' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_25' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_26' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_27' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_28' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_29' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_30' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_31' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_32' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_33' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_34' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_35' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_36' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_37' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_38' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_39' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_40' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_41' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_42' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_43' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_44' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_45' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_46' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_47' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_48' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_49' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_50' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_51' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_52' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_53' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_54' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_55' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_56' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_57' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_58' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_59' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_60' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_61' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN_sound.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.split_last.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.split_last._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.split_last' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep_spec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcb_nil_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_nomatch.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcb_cons_nomatch' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_stop' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_prefix' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_flat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_read_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_cons_same' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcb_fold_last' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldStep_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldN_sound._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldN_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldB_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldN.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_append' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_bind._simp_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_bind' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotFree_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_weaken' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_elseCtx' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_temp._simp_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_temp' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fromStrings_wt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fromStrings_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fromStrings_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.hasWidth_i16' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_i32' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_i64' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_i8' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u16' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u32' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u64' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u8' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.heldOK.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.heldOK.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.isFixed._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.isSeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.isTemp._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.itemOK.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemOperands_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.itemResult' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.kpre_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_pred._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_pred.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_pred' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.kpre_else' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.kpre_then' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_of_lets' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_b_rcb' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.k_branch' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_cond_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_isZero_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_lit_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate_halt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_negate_halt.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_nonZero_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_23' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_25' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_27' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_29' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_31' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_33' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_35' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_37' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_39' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_41' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_43' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_45' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_47' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_49' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_51' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_not_inv.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_not_inv.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_not_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.k_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_read.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_read' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.kpre_held' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.letsBind.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.letsOK_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.letsOK_shape' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.litValue._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_4' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_def' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_5' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.eq_def' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.lit_branch' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.lookup_through._simp_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.lookup_through' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms_spec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms_eval' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.obsL_evalList_zero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.obs_eval_zero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.oneOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf_halt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.param_env.match_1_1' depends on axioms: [propext]\n'LexLeanTarget.TargetSemantics.bindAll.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.param_env._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.param_env' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.patBinds.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_10' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_6' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_7' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_8' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.primTyped.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_apply_halt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_apply_halt.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_apply_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_call_halt.match_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_runtime' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_construct' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct_halt.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct_halt.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_isZero.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_isZero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_lit.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_lit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue._simp_10' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue._simp_9' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue.match_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_pair.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_pair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_litValues.match_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rcl_litValues._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_nonZero.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_nonZero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_pair_halt_left' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_pair_halt_right' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_widen.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_widen' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_widen_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_11' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_7' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_litValues' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_nil_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_single_halt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_single_halt.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_single_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_widen_one' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.readOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizesL_halt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizesL_haltL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizes_halt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizesM_overflow' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizes_oneOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.runItem_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.runItem_succ' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_applyGen.match_1_13' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen.match_1_15' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen.match_1_28' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_apply' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_applyF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_bOfE' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_build.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_build.match_1_99' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_build' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildConst' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildPair.match_1_101' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_97' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_99' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildSucc.match_1_129' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSucc.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSucc' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildSuccF.match_1_101' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSuccF.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSuccF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_callF.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callF.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_callOps.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callOps.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callOps' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_closure.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.wtl_length.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_length._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_length' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_closure' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_cond.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_cond.match_1_11' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_condId.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_condId' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_eOfB' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_eOfBFold' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_eOfBNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_fOfB' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_unit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_fUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kHeld' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kLit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kId' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kIf' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kNeg' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kSame' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_lCons.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons.match_1_17' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons.match_1_19' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_lNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_letBind.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letBind.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letBind' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_letWild.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letWild.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letWild' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBool._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchHolder.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchHolder.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchHolder' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBool' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBoolId._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBoolId.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchBoolId' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchNat._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchNat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchUnit._proof_1_386' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchUnit.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchUnit.match_1_387' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsCons._simp_1_13' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsCons.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons.match_1_14' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons.match_1_16' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsOfL' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_29' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_31' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_ops_box.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_ops_box.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_ops_box.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_ops_box' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_part._sparseCasesOn_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_part.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_part.match_1_14' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_part.match_1_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_part' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_part._sparseCasesOn_1_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_prim.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_prim.match_1_38' does not depend on any axioms\n'LexLeanPreservation.Rust.wtAll_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wtAll_iff._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.wtAll_iff' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_append' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_bitwise' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_checked' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_convert' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_decode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_encode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_fixedTyped.match_1_67' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_format' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_index' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_join' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_parse' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_shift' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.slice_eq' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_slice' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_split' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_unary' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtl_one.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_one' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_three.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_three' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_two.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_two' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_fixedTyped' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_prim' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_prim' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_primF.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF.match_1_7' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_primWiden.match_1_108' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_110' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_112' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_114' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_116' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.typedLitAll_wt.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit_wt.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits_wt.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_var' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_varUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_zero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.shapeOf.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_10' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_11' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_12' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_13' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_14' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_6' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_7' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_8' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.tempFresh.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_12.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_13.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_14.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.allWidth.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.allWidth.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.allWidth.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_100' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_101' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_102' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_103' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_104' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_105' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_106' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_107' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_108' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_109' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_110' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_111' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_112' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_113' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_114' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_115' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_116' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_117' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_118' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_119' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_120' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_121' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_122' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_123' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_124' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_125' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_126' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_127' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_128' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_129' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_130' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_131' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_132' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_133' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_134' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_135' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_136' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_137' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_138' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_139' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_140' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_141' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_142' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_143' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_144' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_145' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_146' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_147' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_148' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_149' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_150' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_151' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_152' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_153' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_154' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_155' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_156' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_157' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_158' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_159' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_160' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_161' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_162' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_163' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_164' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_165' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_166' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_167' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_168' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_169' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_170' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_171' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_172' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_173' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_174' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_175' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_176' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_177' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_178' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_179' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_180' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_181' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_182' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_183' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_184' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_185' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_186' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_51' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_52' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_53' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_54' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_55' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_56' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_57' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_58' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_59' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_60' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_61' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_62' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_63' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_64' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_65' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_66' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_67' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_68' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_69' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_70' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_71' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_72' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_73' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_74' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_75' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_76' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_77' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_78' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_79' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_80' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_81' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_82' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_83' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_84' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_85' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_86' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_87' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_88' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_89' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_90' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_91' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_92' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_93' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_94' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_95' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_96' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_97' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_98' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_99' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_100' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_101' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_102' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_103' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_104' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_105' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_106' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_107' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_108' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_109' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_110' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_111' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_112' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_113' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_114' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_115' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_116' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_117' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_118' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_119' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_120' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_121' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_122' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_123' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_124' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_125' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_126' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_127' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_128' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_129' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_130' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_131' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_132' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_133' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_134' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_135' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_136' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_137' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_138' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_139' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_140' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_141' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_142' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_143' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_144' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_145' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_146' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_147' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_148' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_149' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_150' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_151' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_152' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_153' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_154' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_155' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_156' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_157' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_158' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_159' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_160' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_161' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_162' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_163' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_164' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_165' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_166' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_167' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_168' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_169' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_170' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_171' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_172' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_173' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_174' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_175' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_176' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_177' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_178' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_179' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_180' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_181' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_182' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_183' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_184' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_51' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_52' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_53' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_54' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_55' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_56' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_57' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_58' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_59' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_60' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_61' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_62' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_63' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_64' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_65' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_66' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_67' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_68' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_69' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_70' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_71' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_72' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_73' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_74' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_75' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_76' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_77' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_78' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_79' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_80' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_81' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_82' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_83' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_84' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_85' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_86' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_87' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_88' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_89' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_90' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_91' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_92' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_93' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_94' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_95' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_96' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_97' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_98' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_99' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemAccepts.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemAccepts.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.literal.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_10' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_11' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_12' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_13' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_14' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_15' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_3' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_4' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_5' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_6' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_7' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_8' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_9' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.propagated.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.returned.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_10' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_11' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_12' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_13' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_14' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_15' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_16' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_17' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_18' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_19' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_20' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_21' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_22' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_23' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_24' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_25' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_26' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_27' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_28' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_29' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_30' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_31' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_32' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_33' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_34' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_35' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_36' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_37' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_38' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_39' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_40' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_41' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_42' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_43' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_44' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_45' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_46' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_47' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_48' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_49' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_5' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_50' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_51' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_52' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_53' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_54' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_55' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_56' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_57' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_58' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_59' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_6' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_60' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_61' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_62' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_63' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_64' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_65' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_66' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_67' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_68' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_69' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_7' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_70' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_71' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_72' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_73' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_74' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_75' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_76' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_77' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_78' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_79' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_8' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_80' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_81' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_82' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_83' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_9' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_10' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_100' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_101' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_102' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_103' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_104' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_105' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_106' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_107' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_108' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_109' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_11' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_110' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_111' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_112' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_113' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_114' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_115' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_116' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_117' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_118' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_119' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_12' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_120' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_121' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_122' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_123' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_124' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_125' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_126' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_127' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_128' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_129' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_13' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_130' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_131' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_132' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_133' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_134' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_135' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_136' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_137' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_138' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_139' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_14' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_140' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_141' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_142' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_143' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_144' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_145' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_146' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_147' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_148' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_149' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_15' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_150' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_151' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_152' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_153' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_154' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_155' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_156' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_157' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_158' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_159' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_16' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_160' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_161' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_162' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_163' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_164' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_165' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_166' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_167' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_168' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_169' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_17' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_170' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_171' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_172' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_173' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_174' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_175' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_176' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_177' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_178' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_179' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_18' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_180' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_181' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_182' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_183' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_184' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_185' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_186' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_187' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_188' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_189' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_19' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_190' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_191' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_192' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_193' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_194' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_195' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_196' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_197' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_198' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_199' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_20' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_200' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_201' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_202' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_203' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_204' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_205' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_206' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_207' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_208' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_209' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_21' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_210' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_211' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_212' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_213' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_214' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_215' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_216' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_217' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_218' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_219' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_22' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_220' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_221' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_222' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_223' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_224' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_225' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_226' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_227' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_228' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_229' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_23' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_230' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_231' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_232' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_233' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_234' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_235' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_236' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_237' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_238' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_239' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_24' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_240' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_241' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_242' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_243' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_244' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_245' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_246' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_247' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_248' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_249' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_25' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_250' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_251' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_252' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_253' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_254' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_255' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_256' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_257' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_258' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_259' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_26' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_260' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_261' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_262' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_263' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_264' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_265' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_266' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_267' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_268' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_269' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_27' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_270' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_271' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_272' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_273' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_274' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_275' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_276' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_277' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_278' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_279' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_28' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_280' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_281' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_282' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_283' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_284' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_285' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_286' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_287' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_288' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_289' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_29' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_290' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_291' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_292' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_293' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_294' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_295' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_296' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_297' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_298' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_299' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_30' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_300' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_301' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_302' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_303' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_304' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_305' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_306' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_307' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_308' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_309' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_31' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_310' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_311' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_312' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_313' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_314' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_315' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_316' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_317' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_318' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_319' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_32' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_320' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_321' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_322' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_323' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_324' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_325' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_326' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_327' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_328' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_329' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_33' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_330' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_331' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_332' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_333' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_334' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_335' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_336' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_337' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_338' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_339' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_34' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_340' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_341' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_342' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_343' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_344' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_345' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_346' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_347' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_348' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_349' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_35' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_350' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_351' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_352' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_353' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_354' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_355' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_356' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_357' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_358' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_359' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_36' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_360' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_361' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_362' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_363' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_364' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_365' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_366' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_367' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_368' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_369' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_37' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_370' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_38' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_39' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_40' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_41' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_42' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_43' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_44' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_45' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_46' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_47' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_48' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_49' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_5' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_50' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_51' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_52' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_53' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_54' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_55' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_56' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_57' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_58' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_59' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_6' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_60' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_61' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_62' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_63' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_64' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_65' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_66' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_67' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_68' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_69' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_7' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_70' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_71' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_72' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_73' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_74' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_75' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_76' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_77' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_78' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_79' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_8' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_80' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_81' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_82' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_83' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_84' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_85' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_86' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_87' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_88' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_89' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_9' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_90' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_91' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_92' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_93' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_94' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_95' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_96' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_97' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_98' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_99' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromStrings.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromStrings.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromStrings.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.primitive.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1000' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1001' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1002' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1003' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1004' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1005' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1006' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1007' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1008' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1009' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1010' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1011' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1012' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1013' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1014' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1015' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1016' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1017' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1018' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1019' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1020' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1021' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1022' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1023' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1024' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1025' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1026' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1027' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1028' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1029' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1030' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1031' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1032' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1033' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1034' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1035' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1036' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1037' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1038' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1039' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1040' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1041' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1042' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1043' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1044' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1045' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1046' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1047' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1048' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1049' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1050' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1051' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1052' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1053' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1054' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1055' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1056' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1057' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1058' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1059' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1060' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1061' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1062' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1063' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1064' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1065' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1066' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1067' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1068' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1069' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1070' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1071' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1072' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1073' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1074' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1075' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1076' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1077' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1078' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1079' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1080' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1081' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1082' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1083' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1084' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1085' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1086' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1087' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1088' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1089' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1090' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1091' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1092' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1093' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1094' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1095' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1096' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1097' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1098' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1099' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1426' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1427' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1428' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1429' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1430' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1431' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1432' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1433' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1434' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1435' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1436' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1437' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1438' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1439' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1440' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1441' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1442' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1443' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1444' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1445' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1446' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1447' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1448' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1449' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1450' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1451' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1452' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1453' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1454' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1455' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1456' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1457' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1458' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1459' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1460' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1461' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1462' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1463' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1464' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1465' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1466' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1467' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1468' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1469' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1470' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1471' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1472' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1473' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1474' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1475' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1476' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1477' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1478' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1479' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1480' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1481' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1482' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1483' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1484' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1485' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1486' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1487' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1488' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1489' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1490' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1491' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1492' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1493' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1494' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1495' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1496' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1497' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1498' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1499' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1500' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1501' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1502' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1503' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1504' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1505' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1506' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1507' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1508' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1509' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1510' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1511' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1512' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1513' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1514' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1515' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1516' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1517' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1518' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1519' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1520' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1521' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1522' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1523' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1524' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1525' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1526' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1527' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1528' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1529' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1530' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1531' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1532' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1533' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1534' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1535' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1536' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1537' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1538' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1539' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1540' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1541' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1542' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1543' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1544' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1545' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1546' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1547' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1548' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1549' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1550' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1551' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1552' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1553' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1554' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1555' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1556' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1557' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1558' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1559' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1560' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1561' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1562' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1563' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1564' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1565' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1566' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1567' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1568' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1569' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1570' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1571' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1572' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1573' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1574' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1575' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1576' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1577' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1578' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1579' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1580' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1581' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1582' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1583' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1584' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1585' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1586' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1587' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1588' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1589' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1590' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1591' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1592' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1593' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1594' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1595' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1596' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1597' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1598' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1599' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1600' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1601' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1602' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1603' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1604' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1605' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1606' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1607' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1608' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1609' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1610' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1611' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1612' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1613' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1614' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1615' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1616' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1617' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1618' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1619' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1620' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1621' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1622' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1623' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1624' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1625' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1626' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1627' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1628' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1629' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1630' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1631' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1632' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1633' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1634' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1635' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1636' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1637' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1638' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1639' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1640' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1641' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1642' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1643' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1644' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1645' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1646' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1647' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1648' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1649' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1650' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1651' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1652' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1653' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1654' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1655' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1656' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1657' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1658' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1659' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1660' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1661' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1662' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1663' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1664' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1665' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1666' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1667' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1668' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1669' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1670' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1671' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1672' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1673' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1674' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1675' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1676' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1677' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1678' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1679' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1680' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1681' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1682' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1683' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1684' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1685' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1686' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1687' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1688' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1689' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1690' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1691' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1692' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1693' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1694' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1695' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1696' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1697' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1698' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1699' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1700' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1701' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1702' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1703' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1704' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1705' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1706' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1707' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1708' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1709' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1710' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1711' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1712' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1713' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1714' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1715' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1716' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1717' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1718' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1719' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1720' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1721' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1722' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1723' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1724' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1725' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1726' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1727' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1728' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1729' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1730' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1731' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1732' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1733' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1734' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1735' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1736' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1737' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1738' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1739' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1740' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1741' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1742' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1743' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1744' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1745' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1746' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1747' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1748' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1749' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1750' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1751' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1752' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1753' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1754' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1755' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1756' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1757' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1758' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1759' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1760' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1761' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1762' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1763' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1764' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1765' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1766' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1767' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1768' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1769' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1770' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1771' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1772' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1773' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1774' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1775' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1776' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1777' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1778' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1779' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1780' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1781' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1782' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1783' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1784' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1785' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1786' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1787' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1788' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1789' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1790' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1791' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1792' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1793' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1794' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1795' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1796' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1797' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1798' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1799' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_18' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1800' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1801' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1802' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1803' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1804' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1805' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1806' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1807' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1808' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1809' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1810' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1811' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1812' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1813' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1814' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1815' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1816' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1817' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1818' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1819' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1820' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1821' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1822' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1823' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1824' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1825' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1826' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1827' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1828' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1829' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1830' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1831' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1832' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1833' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1834' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1835' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1836' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1837' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1838' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1839' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1840' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1841' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1842' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1843' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1844' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1845' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1846' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1847' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1848' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1849' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1850' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1851' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1852' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1853' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1854' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1855' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1856' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1857' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1858' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1859' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1860' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1861' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1862' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1863' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1864' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1865' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1866' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1867' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1868' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1869' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1870' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1871' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1872' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1873' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1874' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1875' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1876' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1877' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1878' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1879' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1880' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1881' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1882' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1883' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1884' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1885' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1886' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1887' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1888' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1889' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1890' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1891' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1892' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1893' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1894' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1895' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1896' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1897' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1898' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1899' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1900' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1901' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1902' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1903' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1904' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1905' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1906' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1907' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1908' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1909' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1910' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1911' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1912' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1913' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1914' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1915' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1916' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1917' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1918' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1919' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1920' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1921' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1922' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1923' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1924' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1925' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1926' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1927' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1928' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1929' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1930' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1931' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1932' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1933' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1934' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1935' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1936' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1937' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1938' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1939' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1940' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1941' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1942' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1943' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1944' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1945' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1946' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1947' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1948' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1949' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1950' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1951' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1952' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1953' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1954' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1955' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1956' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1957' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1958' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1959' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1960' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1961' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1962' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1963' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1964' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1965' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1966' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1967' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1968' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1969' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1970' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1971' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1972' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1973' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1974' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1975' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1976' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1977' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1978' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1979' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1980' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1981' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1982' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1983' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1984' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1985' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1986' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1987' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1988' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1989' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1990' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1991' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1992' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1993' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1994' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1995' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1996' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1997' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1998' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1999' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_20' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2000' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2001' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2002' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2003' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2004' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2005' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2006' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2007' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2008' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2009' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2010' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2011' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2012' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2013' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2014' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2015' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2016' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2017' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2018' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2019' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2020' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2021' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2022' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2023' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2024' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2025' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2026' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2027' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2028' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2029' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2030' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2031' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2032' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2033' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2034' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2035' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2036' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2037' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2038' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2039' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2040' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2041' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2042' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2043' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2044' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2045' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2046' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2047' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2048' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2049' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2050' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2051' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2052' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2053' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2054' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2055' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2056' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2057' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2058' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2059' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2060' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2061' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2062' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2063' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2064' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2065' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2066' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2067' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2068' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2069' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2070' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2071' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2072' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2073' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2074' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2075' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2076' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2077' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2078' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2079' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2080' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2081' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2082' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2083' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2084' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2085' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2086' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2087' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2088' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2089' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2090' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2091' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2092' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2093' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2094' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2095' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2096' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2097' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2098' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2099' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_22' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_23' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_24' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2426' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2427' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2428' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2429' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2430' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2431' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2432' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2433' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2434' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2435' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2436' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2437' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2438' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2439' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2440' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2441' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2442' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2443' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2444' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2445' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2446' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2447' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2448' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2449' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2450' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2451' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2452' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2453' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2454' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2455' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2456' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2457' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2458' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2459' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2460' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2461' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2462' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2463' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2464' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2465' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2466' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2467' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2468' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2469' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2470' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2471' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2472' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2473' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2474' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2475' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2476' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2477' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2478' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2479' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2480' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2481' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2482' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2483' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2484' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2485' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2486' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2487' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2488' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2489' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2490' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2491' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2492' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2493' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2494' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2495' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2496' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2497' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2498' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2499' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_25' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2500' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2501' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2502' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2503' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2504' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2505' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2506' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2507' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2508' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2509' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2510' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2511' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2512' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2513' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2514' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2515' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2516' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2517' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2518' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2519' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2520' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2521' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2522' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2523' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2524' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2525' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2526' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2527' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2528' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2529' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2530' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2531' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2532' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2533' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2534' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2535' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2536' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2537' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2538' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2539' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2540' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2541' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2542' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2543' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2544' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2545' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2546' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2547' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2548' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2549' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2550' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2551' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2552' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2553' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2554' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2555' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2556' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2557' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2558' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2559' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2560' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2561' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2562' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2563' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2564' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2565' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2566' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2567' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2568' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2569' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2570' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2571' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2572' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2573' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2574' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2575' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2576' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2577' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2578' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2579' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2580' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2581' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2582' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2583' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2584' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2585' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2586' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2587' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2588' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2589' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2590' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2591' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2592' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2593' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2594' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2595' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2596' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2597' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2598' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2599' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_26' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2600' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2601' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2602' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2603' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2604' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2605' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2606' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2607' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2608' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2609' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2610' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2611' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2612' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2613' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2614' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2615' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2616' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2617' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2618' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2619' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2620' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2621' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2622' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2623' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2624' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2625' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2626' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2627' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2628' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2629' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2630' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2631' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2632' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2633' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2634' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2635' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2636' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2637' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2638' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2639' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2640' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2641' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2642' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2643' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2644' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2645' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2646' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2647' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2648' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2649' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2650' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2651' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2652' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2653' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2654' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2655' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2656' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2657' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2658' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2659' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2660' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2661' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2662' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2663' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2664' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2665' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2666' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2667' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2668' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2669' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2670' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2671' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2672' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2673' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2674' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2675' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2676' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2677' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2678' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2679' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2680' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2681' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2682' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2683' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2684' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2685' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2686' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2687' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2688' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2689' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2690' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2691' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2692' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2693' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2694' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2695' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2696' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2697' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2698' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2699' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_27' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2700' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2701' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2702' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2703' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2704' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2705' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2706' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2707' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2708' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2709' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2710' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2711' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2712' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2713' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2714' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2715' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2716' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2717' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2718' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2719' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2720' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2721' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2722' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2723' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2724' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2725' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2726' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2727' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2728' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2729' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2730' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2731' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2732' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2733' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2734' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2735' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2736' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2737' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2738' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2739' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2740' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2741' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2742' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2743' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2744' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2745' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2746' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2747' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2748' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2749' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2750' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2751' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2752' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2753' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2754' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2755' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2756' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2757' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2758' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2759' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2760' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2761' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2762' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2763' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2764' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2765' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2766' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2767' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2768' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2769' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2770' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2771' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2772' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2773' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2774' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2775' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2776' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2777' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2778' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2779' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2780' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2781' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2782' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2783' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2784' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2785' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2786' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2787' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2788' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2789' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2790' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2791' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2792' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2793' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2794' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2795' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2796' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2797' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2798' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2799' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_28' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2800' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2801' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2802' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2803' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2804' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2805' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2806' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2807' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2808' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2809' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2810' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2811' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2812' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2813' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2814' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2815' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2816' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2817' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2818' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2819' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2820' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2821' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2822' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2823' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2824' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2825' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2826' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2827' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2828' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2829' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2830' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2831' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2832' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2833' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2834' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2835' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2836' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2837' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2838' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2839' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2840' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2841' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2842' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2843' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2844' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2845' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2846' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2847' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2848' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2849' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2850' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2851' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2852' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2853' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2854' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2855' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2856' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2857' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2858' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2859' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2860' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2861' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2862' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2863' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2864' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2865' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2866' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2867' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2868' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2869' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2870' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2871' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2872' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2873' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2874' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2875' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2876' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2877' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2878' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2879' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2880' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2881' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2882' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2883' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2884' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2885' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2886' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2887' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2888' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2889' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2890' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2891' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2892' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2893' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2894' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2895' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2896' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2897' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2898' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2899' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_29' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2900' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2901' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2902' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2903' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2904' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2905' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2906' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2907' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2908' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2909' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2910' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2911' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2912' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2913' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2914' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2915' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2916' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2917' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2918' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2919' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2920' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2921' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2922' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2923' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2924' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2925' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2926' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2927' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2928' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2929' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2930' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2931' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2932' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2933' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2934' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2935' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2936' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2937' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2938' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2939' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2940' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2941' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2942' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2943' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2944' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2945' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2946' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2947' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2948' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2949' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2950' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2951' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2952' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2953' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2954' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2955' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2956' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2957' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2958' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2959' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2960' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2961' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2962' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2963' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2964' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2965' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2966' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2967' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2968' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2969' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2970' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2971' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2972' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2973' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2974' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2975' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2976' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2977' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2978' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2979' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2980' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2981' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2982' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2983' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2984' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2985' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2986' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2987' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2988' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2989' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2990' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2991' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2992' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2993' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2994' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2995' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2996' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2997' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2998' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2999' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_30' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3000' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3001' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3002' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3003' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3004' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3005' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3006' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3007' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3008' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3009' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3010' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3011' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3012' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3013' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3014' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3015' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3016' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3017' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3018' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3019' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3020' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3021' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3022' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3023' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3024' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3025' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3026' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3027' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3028' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3029' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3030' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3031' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3032' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3033' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3034' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3035' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3036' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3037' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3038' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3039' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3040' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3041' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3042' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3043' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3044' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3045' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3046' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3047' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3048' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3049' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3050' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3051' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3052' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3053' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3054' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3055' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3056' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3057' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3058' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3059' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3060' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3061' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3062' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3063' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3064' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3065' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3066' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3067' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3068' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3069' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3070' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3071' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3072' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3073' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3074' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3075' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3076' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3077' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3078' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3079' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3080' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3081' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3082' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3083' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3084' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3085' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3086' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3087' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3088' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3089' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3090' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3091' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3092' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3093' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3094' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3095' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3096' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3097' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3098' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3099' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_31' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_33' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_34' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_35' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_36' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_37' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_38' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_39' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_40' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_41' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_42' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_426' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_427' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_428' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_429' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_43' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_430' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_431' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_432' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_433' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_434' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_435' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_436' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_437' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_438' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_439' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_44' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_440' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_441' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_442' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_443' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_444' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_445' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_446' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_447' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_448' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_449' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_45' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_450' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_451' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_452' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_453' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_454' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_455' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_456' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_457' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_458' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_459' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_46' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_460' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_461' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_462' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_463' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_464' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_465' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_466' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_467' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_468' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_469' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_47' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_470' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_471' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_472' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_473' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_474' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_475' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_476' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_477' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_478' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_479' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_48' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_480' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_481' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_482' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_483' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_484' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_485' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_486' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_487' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_488' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_489' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_49' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_490' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_491' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_492' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_493' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_494' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_495' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_496' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_497' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_498' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_499' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_50' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_500' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_501' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_502' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_503' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_504' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_505' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_506' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_507' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_508' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_509' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_51' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_510' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_511' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_512' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_513' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_514' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_515' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_516' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_517' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_518' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_519' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_52' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_520' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_521' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_522' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_523' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_524' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_525' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_526' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_527' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_528' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_529' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_53' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_530' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_531' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_532' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_533' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_534' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_535' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_536' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_537' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_538' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_539' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_54' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_540' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_541' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_542' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_543' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_544' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_545' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_546' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_547' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_548' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_549' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_55' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_550' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_551' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_552' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_553' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_554' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_555' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_556' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_557' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_558' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_559' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_56' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_560' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_561' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_562' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_563' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_564' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_565' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_566' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_567' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_568' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_569' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_57' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_570' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_571' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_572' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_573' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_574' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_575' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_576' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_577' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_578' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_579' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_58' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_580' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_581' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_582' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_583' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_584' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_585' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_586' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_587' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_588' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_589' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_59' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_590' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_591' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_592' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_593' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_594' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_595' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_596' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_597' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_598' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_599' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_60' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_600' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_601' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_602' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_603' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_604' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_605' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_606' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_607' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_608' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_609' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_61' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_610' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_611' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_612' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_613' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_614' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_615' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_616' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_617' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_618' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_619' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_62' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_620' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_621' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_622' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_623' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_624' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_625' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_626' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_627' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_628' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_629' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_63' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_630' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_631' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_632' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_633' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_634' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_635' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_636' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_637' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_638' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_639' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_640' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_641' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_642' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_643' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_644' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_645' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_646' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_647' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_648' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_649' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_65' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_650' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_651' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_652' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_653' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_654' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_655' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_656' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_657' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_658' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_659' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_66' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_660' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_661' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_662' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_663' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_664' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_665' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_666' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_667' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_668' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_669' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_67' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_670' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_671' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_672' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_673' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_674' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_675' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_676' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_677' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_678' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_679' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_68' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_680' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_681' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_682' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_683' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_684' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_685' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_686' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_687' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_688' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_689' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_69' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_690' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_691' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_692' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_693' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_694' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_695' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_696' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_697' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_698' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_699' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_70' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_700' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_701' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_702' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_703' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_704' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_705' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_706' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_707' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_708' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_709' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_71' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_710' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_711' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_712' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_713' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_714' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_715' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_716' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_717' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_718' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_719' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_72' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_720' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_721' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_722' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_723' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_724' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_725' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_726' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_727' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_728' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_729' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_73' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_730' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_731' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_732' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_733' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_734' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_735' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_736' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_737' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_738' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_739' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_74' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_740' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_741' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_742' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_743' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_744' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_745' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_746' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_747' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_748' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_749' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_75' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_750' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_751' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_752' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_753' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_754' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_755' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_756' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_757' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_758' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_759' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_76' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_760' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_761' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_762' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_763' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_764' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_765' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_766' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_767' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_768' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_769' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_77' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_770' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_771' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_772' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_773' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_774' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_775' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_776' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_777' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_778' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_779' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_78' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_780' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_781' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_782' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_783' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_784' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_785' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_786' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_787' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_788' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_789' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_79' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_790' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_791' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_792' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_793' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_794' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_795' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_796' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_797' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_798' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_799' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_80' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_800' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_801' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_802' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_803' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_804' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_805' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_806' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_807' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_808' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_809' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_81' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_810' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_811' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_812' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_813' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_814' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_815' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_816' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_817' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_818' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_819' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_82' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_820' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_821' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_822' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_823' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_824' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_825' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_826' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_827' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_828' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_829' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_83' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_830' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_831' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_832' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_833' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_834' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_835' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_836' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_837' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_838' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_839' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_84' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_840' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_841' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_842' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_843' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_844' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_845' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_846' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_847' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_848' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_849' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_85' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_850' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_851' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_852' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_853' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_854' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_855' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_856' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_857' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_858' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_859' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_86' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_860' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_861' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_862' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_863' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_864' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_865' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_866' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_867' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_868' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_869' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_87' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_870' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_871' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_872' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_873' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_874' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_875' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_876' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_877' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_878' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_879' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_88' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_880' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_881' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_882' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_883' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_884' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_885' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_886' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_887' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_888' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_889' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_89' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_890' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_891' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_892' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_893' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_894' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_895' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_896' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_897' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_898' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_899' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_90' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_900' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_901' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_902' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_903' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_904' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_905' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_906' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_907' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_908' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_909' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_91' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_910' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_911' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_912' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_913' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_914' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_915' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_916' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_917' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_918' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_919' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_92' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_920' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_921' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_922' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_923' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_924' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_925' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_926' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_927' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_928' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_929' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_93' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_930' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_931' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_932' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_933' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_934' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_935' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_936' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_937' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_938' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_939' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_94' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_940' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_941' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_942' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_943' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_944' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_945' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_946' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_947' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_948' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_949' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_95' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_950' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_951' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_952' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_953' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_954' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_955' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_956' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_957' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_958' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_959' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_96' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_960' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_961' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_962' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_963' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_964' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_965' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_966' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_967' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_968' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_969' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_97' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_970' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_971' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_972' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_973' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_974' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_975' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_976' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_977' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_978' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_979' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_98' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_980' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_981' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_982' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_983' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_984' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_985' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_986' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_987' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_988' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_989' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_99' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_990' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_991' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_992' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_993' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_994' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_995' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_996' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_997' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_998' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_999' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.adtFields.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_12.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_13.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_12.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat_outer' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.boxedOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.boxedOne.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.boxedOne' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bp_entries._simp_1_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.simplePat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bp_entries.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.entriesOf._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bp_entries._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.bp_entries' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.directPat_cons._simp_1_4' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.identBoxed_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identLocal_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf_spec' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_cons' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_len.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_len._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_len' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_loads._simp_1_27' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_loads._simp_1_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_loads.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none._simp_1_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none._simp_1_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rlookup_append' depends on axioms: [propext]\n'LexLeanPreservation.Rust.same_boxed_boxed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_boxed_none' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_local_none._simp_1_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_local_none._simp_1_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_local_none.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.same_local_local' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_local_none._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_local_none' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_boxed_local' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rlookup_local_boxed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rlookup_local_single' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_loads._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.directPat_loads' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_boxed_some._simp_1_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_some._simp_1_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_some.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_some._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.entries_boxed_some' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.envRel_locals' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fields_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindPatterns_single' depends on axioms: [propext]\n'LexLeanPreservation.Rust.outer_bind' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.paramCtx_length.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_length._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_length' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.bindOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOne.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.covered.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.covered_mem._simp_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.wt_uninh._simp_10' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.covered_mem' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.ctorOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.destruct_canon' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq_refl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.destruct_excl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.directPat.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_lookup.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_none_of._simp_1_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_none_of.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sameIdent_iff' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_none_of._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_none_of' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.identsDistinct.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.entries_lookup._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_lookup' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.eval_field.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.eval_field._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_field.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_field' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats_none._simp_1_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats_none.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats_none._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats_none' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats_some._simp_1_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats_some.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats_some._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats_some' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_partRead' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.tyBeq_unit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.field_out' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.findArm_some.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.findArm_some._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.findArm_some' depends on axioms: [propext]\n'LexLeanPreservation.Rust.findDispatch_some.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.findDispatch_some._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.findDispatch_some' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_ext' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identBoxed.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identBoxed.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.isWild._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.okBlock.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.otherArms.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.otherArms_mem._simp_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.otherArms_mem' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.outer_miss' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.outer_view' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_ext.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_ext._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_ext' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_fresh.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_fresh._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_fresh' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocal.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_matchOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_matchOn_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_uncons.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_uncons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_scrut' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rca_hit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rca_miss' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_det' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_rebuild.match_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_eq_of_same' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg_rc' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_rebuild._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_rebuild' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.readOf_rc' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.realizesM_value' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArg_simple' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_def' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs_simple.match_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs_simple._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs_simple' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_14.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuild_rca._simp_1_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuild_rca.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_value._simp_1_21' depends on axioms: [propext]\n'LexLeanPreservation.Rust.single_rebuild' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_rca._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_rca' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuildsArm.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_nil' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_fieldGen._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_fieldGen.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_fieldGen.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.wtl_get.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_get._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_get' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_fieldGen' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_fieldHeld' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_fieldRead' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_mCons._simp_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_mCons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_mNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchArms._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.tyBeq_refl.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq_refl._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.tysBeq_refl.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tysBeq_refl._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_refl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.tysBeq_refl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.uninh_of_inert.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.uninh_of_inert._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh_of_inert' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_uninh.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_uninh._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtl_uninh.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_uninh._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_uninh' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.taken_arm' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchArms' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchPair._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchPair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchRebuilt._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchRebuilt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchRebuilt.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchRebuilt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.simplePat.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.validU.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_uninh' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.findArm.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findArm.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findArm.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_5' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_6' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_7' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_8' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.fl_of' does not depend on any axioms\n'LexLeanPreservation.Rust.fnFallible.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of._simp_1_14' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.funSem_of.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_12' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.isTemp.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isTemp.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.item_ne' depends on axioms: [propext]\n'LexLeanPreservation.Rust.kind_ne' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sound._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sound._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.simulate' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Representable._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Representable.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Representable._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.RepresentableL._f' does not depend on any axioms\n'LexLeanPreservation.Rust.Representable' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Representable._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.Representable._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.compose' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rel_ne_stuck' depends on axioms: [propext]\n'LexLeanPreservation.Rust.repL_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.repL_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.runItem_abort_infallible' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtAll_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wtAll_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_map._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_map' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_adt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_bool' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_bytes' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encExcept.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_encExcept' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_list' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encList' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encOption.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_encOption' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encOrdering' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encPair' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encUnit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_errorV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i32' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i64' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_int' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_listEnc' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_nat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_noneV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_okV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_optEnc.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_someV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_optEnc' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_ordering' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_pairV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_string' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u32' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u64' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_unitValue' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_nil' depends on axioms: [propext]\n'LexLeanPreservation.encExcept.eq_1' does not depend on any axioms\n'LexLeanPreservation.encExcept.eq_2' does not depend on any axioms\n'LexLeanPreservation.encOption.eq_1' does not depend on any axioms\n'LexLeanPreservation.encOption.eq_2' does not depend on any axioms\n'LexLeanPreservation.encPair.eq_1' does not depend on any axioms\n'LexLeanPreservation.encUnit.eq_1' does not depend on any axioms\n'LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.Compose.RustStd.__wt_0' depends on axioms: [propext]\n'LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.Compose.RustStd.__wt_2' depends on axioms: [propext]\n'LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.Compose.RustStd.__wt_1' depends on axioms: [propext]\n-- statement vocabulary\ninductive LexLeanPreservation.Obs : Type\nnumber of parameters: 0\nconstructors:\nLexLeanPreservation.Obs.value : LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs\nLexLeanPreservation.Obs.overflow : LexLeanPreservation.Obs\nLexLeanPreservation.Obs.stuck : LexLeanPreservation.Obs\ndef LexLeanPreservation.Rel : Bool → LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs :=\nfun fits v => bif fits then LexLeanPreservation.Obs.value v else LexLeanPreservation.Obs.overflow\ndef LexLeanPreservation.Conv : LexLeanTarget.TargetSyntax.Program →\n List (Nat × LexLeanTarget.TargetSyntax.Value) → LexLeanTarget.TargetSyntax.Expr → LexLeanPreservation.Obs → Prop :=\nfun p env e o => ∃ n, LexLeanPreservation.obs (LexLeanTarget.TargetSemantics.eval n p env e) = some o\ndef LexLeanPreservation.FunRel : LexLeanTarget.TargetSyntax.Program →\n Nat → List LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs → Prop :=\nfun p f args o =>\n ∃ fn,\n LexLeanRuntime.index p.functions f = some fn ∧\n ∃ env,\n LexLeanTarget.TargetSemantics.bindAll fn.parameters args [] = some env ∧\n LexLeanPreservation.Conv p env fn.body o\ndef LexLeanPreservation.RunConv : LexLeanTarget.TargetSyntax.Program →\n Nat → List LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs → Prop :=\nfun p entry args o => ∃ n, LexLeanPreservation.obs (LexLeanTarget.TargetSemantics.run n p entry args) = some o\ndef LexLeanPreservation.Rust.WT : LexLeanTarget.TargetSyntax.Program →\n LexLeanPreservation.Rust.RCrate →\n LexLeanPreservation.Rust.Flags → LexLeanTarget.TargetSyntax.Value → LexLeanTarget.TargetSyntax.Ty → Prop :=\nfun p c A x x_1 =>\n x.brecOn (LexLeanPreservation.Rust.WT._f p c A)\n (fun t f => ⟨LexLeanPreservation.Rust.WTL._f p c A t f, LexLeanPreservation.Rust.WTAll._f p c A t f⟩) x_1\ndef LexLeanPreservation.Rust.WTL : LexLeanTarget.TargetSyntax.Program →\n LexLeanPreservation.Rust.RCrate →\n LexLeanPreservation.Rust.Flags →\n List LexLeanTarget.TargetSyntax.Value → List LexLeanTarget.TargetSyntax.Ty → Prop :=\nfun p c A x x_1 =>\n (LexLeanTarget.TargetSyntax.Value.brecOn_1 x (LexLeanPreservation.Rust.WT._f p c A) fun t f =>\n ⟨LexLeanPreservation.Rust.WTL._f p c A t f, LexLeanPreservation.Rust.WTAll._f p c A t f⟩).1\n x_1\ndef LexLeanPreservation.Rust.fnIdent : Nat → LexLeanPreservation.Rust.RIdent :=\nfun f => LexLeanTarget.RustSyntax.Ident.generated LexLeanTarget.RustSyntax.IdentKind.function f\ndef LexLeanPreservation.Rust.fnFallible : LexLeanPreservation.Rust.RCrate → Nat → Option Bool :=\nfun c f =>\n Option.map (fun fn => LexLeanTarget.RustSemantics.fallibleType fn.snd.fst)\n (LexLeanTarget.RustSemantics.findFunction c.items (LexLeanPreservation.Rust.fnIdent f))\ndef LexLeanPreservation.Rust.RCI : LexLeanPreservation.Rust.RCrate →\n LexLeanPreservation.Rust.RIdent → List LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Rust.ROut → Prop :=\nfun c f args o =>\n o ≠ LexLeanTarget.RustSemantics.ROutcome.exhausted ∧ ∃ n, LexLeanTarget.RustSemantics.invoke n c f args = o\ndef LexLeanPreservation.Rust.Realizes : Bool → LexLeanPreservation.Obs → LexLeanPreservation.Rust.ROut → Prop :=\nfun fl x x_1 =>\n match x, x_1 with\n | LexLeanPreservation.Obs.value v, LexLeanTarget.RustSemantics.ROutcome.value w => w = v\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.raise => fl = true\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.abort => True\n | x, x_2 => False\ndef LexLeanPreservation.Rust.RealizesFn : Bool → LexLeanPreservation.Obs → LexLeanPreservation.Rust.ROut → Prop :=\nfun fallible x x_1 =>\n match x, x_1 with\n | LexLeanPreservation.Obs.value v, LexLeanTarget.RustSemantics.ROutcome.value w => w = bif fallible then v.ok else v\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.value w =>\n fallible = true ∧ w = LexLeanTarget.TargetSyntax.Value.unit.error\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.abort => True\n | x, x_2 => False\ndef LexLeanPreservation.Rust.FunSem : LexLeanTarget.TargetSyntax.Program →\n LexLeanPreservation.Rust.RCrate → LexLeanPreservation.Rust.Flags → Nat → Nat → Prop :=\nfun p c A n f =>\n ∀ (fn : LexLeanTarget.TargetSyntax.Function) (args : List LexLeanTarget.TargetSyntax.Value)\n (env : List (Nat × LexLeanTarget.TargetSyntax.Value)) (F : Bool),\n LexLeanRuntime.index p.functions f = some fn →\n LexLeanPreservation.Rust.WTL p c A args fn.types →\n LexLeanTarget.TargetSemantics.bindAll fn.parameters args [] = some env →\n LexLeanPreservation.Rust.fnFallible c f = some F →\n ∀ (o : LexLeanPreservation.Obs),\n LexLeanPreservation.obs (LexLeanTarget.TargetSemantics.eval n p env fn.body) = some o →\n o ≠ LexLeanPreservation.Obs.stuck →\n (∀ (v : LexLeanTarget.TargetSyntax.Value),\n o = LexLeanPreservation.Obs.value v → LexLeanPreservation.Rust.WT p c A v fn.result) ∧\n ∃ ro,\n LexLeanPreservation.Rust.RealizesFn F o ro ∧\n LexLeanPreservation.Rust.RCI c (LexLeanPreservation.Rust.fnIdent f) args ro\ndef LexLeanPreservation.someObs : LexLeanPreservation.Obs → LexLeanPreservation.Obs :=\nfun x =>\n match x with\n | LexLeanPreservation.Obs.value v => LexLeanPreservation.Obs.value v.some\n | LexLeanPreservation.Obs.overflow => LexLeanPreservation.Obs.overflow\n | LexLeanPreservation.Obs.stuck => LexLeanPreservation.Obs.stuck\ndef LexLeanPreservation.Rust.Representable : LexLeanTarget.TargetSyntax.Value → Prop :=\nfun x => x.brecOn LexLeanPreservation.Rust.Representable._f LexLeanPreservation.Rust.RepresentableL._f\ndef LexLeanPreservation.Rust.RepresentableL : List LexLeanTarget.TargetSyntax.Value → Prop :=\nfun x =>\n LexLeanTarget.TargetSyntax.Value.brecOn_1 x LexLeanPreservation.Rust.Representable._f\n LexLeanPreservation.Rust.RepresentableL._f\nLexLeanPreservation.Rust.runItem_abort_infallible : ∀ (profile : LexLeanTarget.RustSyntax.Profile)\n (item : LexLeanTarget.RustSyntax.Item) (values : List LexLeanTarget.TargetSyntax.Value),\n LexLeanTarget.RustSemantics.runItem profile item values = LexLeanTarget.RustSemantics.ROutcome.abort →\n LexLeanTarget.RustSemantics.itemFallible item = false\n","stdout_sha256":"bb331faafeb4b8833855053a7ecb8fc8e1ac22fb58a4a7bb1d64e1c7de908e35","tool":"lean"} +{"argv":["env","lean","-R","$STAGING/preserve-src","$STAGING/preserve-src/LexLeanPreserve/Audit.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Audit","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanPreservation.Obs' does not depend on any axioms\n'LexLeanPreservation.obs.match_1' does not depend on any axioms\n'LexLeanPreservation.obs' does not depend on any axioms\n'LexLeanPreservation.Conv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ConvA' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ObsL' does not depend on any axioms\n'LexLeanPreservation.obsL.match_1' does not depend on any axioms\n'LexLeanPreservation.obsL' does not depend on any axioms\n'LexLeanPreservation.ConvL' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.FunRel' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Obs._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.Obs._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.Obs.casesOn' does not depend on any axioms\n'LexLeanPreservation.Obs.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.Obs.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Obs.ctorElim' does not depend on any axioms\n'LexLeanPreservation.Obs.overflow.elim' does not depend on any axioms\n'LexLeanPreservation.Obs.stuck.elim' does not depend on any axioms\n'LexLeanPreservation.Obs.value.elim' does not depend on any axioms\n'LexLeanPreservation.Obs.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.Obs.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Obs.overflow.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Obs.recOn' does not depend on any axioms\n'LexLeanPreservation.Obs.stuck.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Obs.value.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Obs.value.inj' does not depend on any axioms\n'LexLeanPreservation.Obs.value.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Obs.value.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ObsL._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.ObsL._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.ObsL.casesOn' does not depend on any axioms\n'LexLeanPreservation.ObsL.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.ObsL.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.ObsL.ctorElim' does not depend on any axioms\n'LexLeanPreservation.ObsL.overflow.elim' does not depend on any axioms\n'LexLeanPreservation.ObsL.stuck.elim' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.elim' does not depend on any axioms\n'LexLeanPreservation.ObsL.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.ObsL.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ObsL.overflow.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ObsL.recOn' does not depend on any axioms\n'LexLeanPreservation.ObsL.stuck.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.inj' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.injEq' depends on axioms: [propext]\n'LexLeanPreservation.ObsL.values.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rel' does not depend on any axioms\n'LexLeanPreservation.Rel.eq_1' does not depend on any axioms\n'LexLeanPreservation.RelL' does not depend on any axioms\n'LexLeanPreservation.RelL.eq_1' does not depend on any axioms\n'LexLeanPreservation.RunConv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.addSteps_ne' does not depend on any axioms\n'LexLeanPreservation.chargeResult_ne' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.stable.match_1_16' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_18' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_20' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_22' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_24' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_26' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.eval.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.stable' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.evalArms_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs_ne' does not depend on any axioms\n'LexLeanPreservation.convA_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.eval_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs_addSteps' does not depend on any axioms\n'LexLeanPreservation.convA_hit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.convA_miss' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.evalList_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obsL_ne' does not depend on any axioms\n'LexLeanPreservation.convL_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.convL_cons._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.convL_cons._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.convL_cons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.convL_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_apply._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_apply._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_apply._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_apply' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_build' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_call._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_call._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_call' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_closure' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_cond._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_cond._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_field' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_first' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_let._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_let._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_let' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_match._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_match._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_match' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_matchV' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs_chargeResult' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_prim' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_second' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_var' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.funRel_intro' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs.eq_1' does not depend on any axioms\n'LexLeanPreservation.obs.eq_2' does not depend on any axioms\n'LexLeanPreservation.obs.eq_3' does not depend on any axioms\n'LexLeanPreservation.obs.eq_4' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_1' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_2' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_3' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_4' does not depend on any axioms\n'LexLeanPreservation.run_of_funRel' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.run.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ListEnc' does not depend on any axioms\n'LexLeanPreservation.ListEnc._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.ListEnc._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.ListEnc.casesOn' does not depend on any axioms\n'LexLeanPreservation.ListEnc.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.ListEnc.elem' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items' does not depend on any axioms\n'LexLeanPreservation.ListEnc.enc' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_cons' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_eq.match_1_1' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_nil' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_eq._f' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_eq' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.ListEnc.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.ListEnc.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk.inj' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk.injEq' depends on axioms: [propext]\n'LexLeanPreservation.ListEnc.mk.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ListEnc.recOn' does not depend on any axioms\n'LexLeanPreservation.OptEnc' does not depend on any axioms\n'LexLeanPreservation.OptEnc._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.OptEnc._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.OptEnc.casesOn' does not depend on any axioms\n'LexLeanPreservation.OptEnc.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.OptEnc.elem' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc_none' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc_some' does not depend on any axioms\n'LexLeanPreservation.encOption.match_1' does not depend on any axioms\n'LexLeanPreservation.encOption' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc_map' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.OptEnc.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.OptEnc.noConfusion' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk.noConfusion' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk.inj' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk.injEq' depends on axioms: [propext]\n'LexLeanPreservation.OptEnc.mk.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.OptEnc.recOn' does not depend on any axioms\n'LexLeanPreservation.construct_adt' does not depend on any axioms\n'LexLeanPreservation.construct_cons' does not depend on any axioms\n'LexLeanPreservation.construct_error' does not depend on any axioms\n'LexLeanPreservation.construct_false' does not depend on any axioms\n'LexLeanPreservation.construct_nil' does not depend on any axioms\n'LexLeanPreservation.construct_none' does not depend on any axioms\n'LexLeanPreservation.construct_ok' does not depend on any axioms\n'LexLeanPreservation.construct_pair' does not depend on any axioms\n'LexLeanPreservation.construct_some' does not depend on any axioms\n'LexLeanPreservation.construct_succ' does not depend on any axioms\n'LexLeanPreservation.construct_true' does not depend on any axioms\n'LexLeanPreservation.construct_unit' does not depend on any axioms\n'LexLeanPreservation.construct_zero' does not depend on any axioms\n'LexLeanPreservation.encExcept.match_1' does not depend on any axioms\n'LexLeanPreservation.encExcept' does not depend on any axioms\n'LexLeanPreservation.encList' does not depend on any axioms\n'LexLeanPreservation.encOrdering.match_1' does not depend on any axioms\n'LexLeanPreservation.encOrdering' does not depend on any axioms\n'LexLeanPreservation.encPair' does not depend on any axioms\n'LexLeanPreservation.encUnit' does not depend on any axioms\n'LexLeanPreservation.listEnc._proof_1' does not depend on any axioms\n'LexLeanPreservation.listEnc._proof_2' does not depend on any axioms\n'LexLeanPreservation.listEnc' does not depend on any axioms\n'LexLeanPreservation.optEnc._proof_1' does not depend on any axioms\n'LexLeanPreservation.optEnc._proof_2' does not depend on any axioms\n'LexLeanPreservation.optEnc' does not depend on any axioms\n'LexLeanPreservation.bytes_empty' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.bytes_one' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.bytes_zero' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.encOrdering.eq_1' does not depend on any axioms\n'LexLeanPreservation.encOrdering.eq_2' does not depend on any axioms\n'LexLeanPreservation.encOrdering.eq_3' does not depend on any axioms\n'LexLeanPreservation.fromOrdering_encOrdering' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.fromStrings_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.fromStrings_map._f' does not depend on any axioms\n'LexLeanPreservation.fromStrings_map' does not depend on any axioms\n'LexLeanPreservation.intFits' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.listIndex_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.listIndex_map._f' does not depend on any axioms\n'LexLeanPreservation.listIndex_map' does not depend on any axioms\n'LexLeanPreservation.listIndex_unique.match_1_1' does not depend on any axioms\n'LexLeanPreservation.listIndex_unique._f' does not depend on any axioms\n'LexLeanPreservation.listIndex_unique' does not depend on any axioms\n'LexLeanPreservation.obs_intResult' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.obs_natResult' does not depend on any axioms\n'LexLeanPreservation.prim_append_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_append_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_boolNot' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_compareBytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_bool' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_nat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_ordering' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_string' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_index_bytes.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_index_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_index_list.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_index_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intMul' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intNeg' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intQuot' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intRem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intSub' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_join.match_1_1' does not depend on any axioms\n'LexLeanPreservation.toStrings_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.toStrings_map.match_1_3' does not depend on any axioms\n'LexLeanPreservation.toStrings_map._f' does not depend on any axioms\n'LexLeanPreservation.toStrings_map' does not depend on any axioms\n'LexLeanPreservation.prim_join' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_length_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_length_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_length_string' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natAdd' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natEq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natLe' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natLt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natMul' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natQuot' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natRem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natSub' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_slice_bytes.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_slice_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_slice_list.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_slice_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_splitExact.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_splitExact' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_utf8Decode.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_utf8Decode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_utf8Encode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.compareBytes.eq_1' depends on axioms: [propext]\n'LexLeanRuntime.equal.eq_1' does not depend on any axioms\n'LexLeanRuntime.length.eq_1' does not depend on any axioms\n'LexLeanRuntime.slice.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromOrdering.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.checkedMultiplyWith.match_1' does not depend on any axioms\n'LexLeanPreservation.checkedMultiplyWith' does not depend on any axioms\n'LexLeanPreservation.checkedQuotientWith' does not depend on any axioms\n'LexLeanPreservation.decimalFits.match_1' does not depend on any axioms\n'LexLeanPreservation.decimalFits' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.divideStep' does not depend on any axioms\n'LexLeanPreservation.divide_unique.match_1_1' does not depend on any axioms\n'LexLeanPreservation.divide_unique._f' does not depend on any axioms\n'LexLeanPreservation.divide_unique' does not depend on any axioms\n'LexLeanPreservation.multiplyStep' does not depend on any axioms\n'LexLeanPreservation.multiply_unique.match_1_1' does not depend on any axioms\n'LexLeanPreservation.multiply_unique._f' does not depend on any axioms\n'LexLeanPreservation.multiply_unique' does not depend on any axioms\n'LexLeanPreservation.prim_bitAnd_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i64.match_1_2' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_int' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_int.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_int' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ordOf.match_1' does not depend on any axioms\n'LexLeanPreservation.ordOf' does not depend on any axioms\n'LexLeanPreservation.KeySpec' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.mk._flat_ctor' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.recOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.spec' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.compareCodes_eq.match_1_1' does not depend on any axioms\n'LexLeanPreservation.compareCodes_eq._f' depends on axioms: [propext]\n'LexLeanPreservation.compareCodes_eq' depends on axioms: [propext]\n'LexLeanPreservation.compareCodes_swap.match_1_1' does not depend on any axioms\n'LexLeanPreservation.compareCodes_swap._f' depends on axioms: [propext]\n'LexLeanPreservation.compareCodes_swap' depends on axioms: [propext]\n'LexLeanPreservation.lessThanE' does not depend on any axioms\n'LexLeanPreservation.prim_compare_key.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_compare_key' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_lessThan' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.orderOf_insert' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.orderBool.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.keySpec_bool' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI16.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI32.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI64.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI8.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderInt.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_int' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderNat.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_nat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.keySpec_pair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderString.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.keySpec_string' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU16.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU32.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU64.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU8.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanCollections.compareCodes._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_2' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_3' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_4' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_def' depends on axioms: [propext]\n'LexLeanCollections.insertEntry.eq_1' does not depend on any axioms\n'LexLeanCollections.insertEntry.eq_2' does not depend on any axioms\n'LexLeanCollections.insertEntry.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.compareValue.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_18' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_20' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_22' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_23' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_24' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_25' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_26' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_27' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_28' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_29' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_30' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_31' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_33' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_34' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_35' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_36' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_37' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_38' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_39' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_40' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_41' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_42' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_43' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_44' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_45' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_46' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_47' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_48' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_49' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_50' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_51' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_52' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_53' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_54' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_55' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_56' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_57' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_58' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_59' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_60' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_61' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_62' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_63' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_65' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_66' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_67' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_68' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_69' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_70' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_71' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_72' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_73' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_74' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_75' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_76' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_77' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_78' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_79' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_80' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_81' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_82' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_83' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_84' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_85' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_86' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_87' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_88' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_89' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_90' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_91' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_92' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_93' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_94' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_95' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_96' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_97' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_98' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_99' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Conv.bool_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Conv.fits_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.FunRel.fits_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ListEnc.enc.eq_1' does not depend on any axioms\n'LexLeanPreservation.ListEnc.enc_cons' does not depend on any axioms\n'LexLeanPreservation.ListEnc.enc_nil' does not depend on any axioms\n'LexLeanPreservation.LookOps' does not depend on any axioms\n'LexLeanPreservation.LookOps.casesOn' does not depend on any axioms\n'LexLeanPreservation.LookOps.l0' does not depend on any axioms\n'LexLeanPreservation.LookOps.leq' does not depend on any axioms\n'LexLeanPreservation.LookOps.lgt' does not depend on any axioms\n'LexLeanPreservation.LookOps.llt' does not depend on any axioms\n'LexLeanPreservation.LookOps.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.LookOps.recOn' does not depend on any axioms\n'LexLeanPreservation.SetOps' does not depend on any axioms\n'LexLeanPreservation.SetOps.c0' does not depend on any axioms\n'LexLeanPreservation.SetOps.casesOn' does not depend on any axioms\n'LexLeanPreservation.SetOps.ceq' does not depend on any axioms\n'LexLeanPreservation.SetOps.cgt' does not depend on any axioms\n'LexLeanPreservation.SetOps.clt' does not depend on any axioms\n'LexLeanPreservation.SetOps.i0' does not depend on any axioms\n'LexLeanPreservation.SetOps.ieq' does not depend on any axioms\n'LexLeanPreservation.SetOps.igt' does not depend on any axioms\n'LexLeanPreservation.SetOps.ilt' does not depend on any axioms\n'LexLeanPreservation.SetOps.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.SetOps.r0' does not depend on any axioms\n'LexLeanPreservation.SetOps.recOn' does not depend on any axioms\n'LexLeanPreservation.SetOps.req' does not depend on any axioms\n'LexLeanPreservation.SetOps.rgt' does not depend on any axioms\n'LexLeanPreservation.SetOps.rlt' does not depend on any axioms\n'LexLeanPreservation.TopoOps' does not depend on any axioms\n'LexLeanPreservation.TopoOps.casesOn' does not depend on any axioms\n'LexLeanPreservation.TopoOps.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.TopoOps.recOn' does not depend on any axioms\n'LexLeanPreservation.TopoOps.s_next' does not depend on any axioms\n'LexLeanPreservation.TopoOps.s_nil' does not depend on any axioms\n'LexLeanPreservation.TopoOps.s_stuck' does not depend on any axioms\n'LexLeanPreservation.TopoOps.z_cons' does not depend on any axioms\n'LexLeanPreservation.TopoOps.z_nil' does not depend on any axioms\n'LexLeanPreservation.Tpl.boolE' does not depend on any axioms\n'LexLeanPreservation.Tpl.byOrder' does not depend on any axioms\n'LexLeanPreservation.Tpl.cns' does not depend on any axioms\n'LexLeanPreservation.Tpl.fn' does not depend on any axioms\n'LexLeanPreservation.Tpl.lst' does not depend on any axioms\n'LexLeanPreservation.Tpl.v' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphInnerFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.pr' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphNodesFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.natOne' does not depend on any axioms\n'LexLeanPreservation.Tpl.nl' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphReachableFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphSuccessorsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphTopologicalFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.iterateFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.iterateUntilFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.listFoldFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapContainsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapFoldFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapInsertFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapLookupFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapProjectFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapRemoveFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reachFrontierFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reachIntoFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reachRoundsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reverseFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setContainsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setFilterFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setInsertFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setRemoveFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setUnionFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoFinished' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoReadyFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoRoundsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoUnreachedFn' does not depend on any axioms\n'LexLeanPreservation.blt_succ_fits._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.blt_succ_fits' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_cond_false' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_cond_true' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.enc_elem' does not depend on any axioms\n'LexLeanPreservation.enc_entry' does not depend on any axioms\n'LexLeanPreservation.foldFits.match_1' does not depend on any axioms\n'LexLeanPreservation.foldFits._f' does not depend on any axioms\n'LexLeanPreservation.foldFits' does not depend on any axioms\n'LexLeanPreservation.foldFits._sunfold' does not depend on any axioms\n'LexLeanPreservation.foldFits._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.foldFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.foldFits.eq_2' does not depend on any axioms\n'LexLeanPreservation.foldFits.eq_def' does not depend on any axioms\n'LexLeanPreservation.graphFits' does not depend on any axioms\n'LexLeanPreservation.graphFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.iterateFits.match_1' does not depend on any axioms\n'LexLeanPreservation.iterateFits._f' does not depend on any axioms\n'LexLeanPreservation.iterateFits' does not depend on any axioms\n'LexLeanPreservation.iterateFits._sunfold' does not depend on any axioms\n'LexLeanPreservation.iterateFits._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.iterateFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.iterateFits.eq_2' does not depend on any axioms\n'LexLeanPreservation.iterateFits.eq_def' does not depend on any axioms\n'LexLeanPreservation.length_eq' does not depend on any axioms\n'LexLeanPreservation.prim_compare_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.reachNext' does not depend on any axioms\n'LexLeanPreservation.tpl_graphInner.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setInsert.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setInsert._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setInsert' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphInner._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphInner' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphNodes.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_graphNodes._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphNodes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapLookup.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapLookup._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapLookup' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphSuccessors' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachFrontier.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_reachInto.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setContains.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setContains._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setContains' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachInto._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachInto' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachFrontier._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachFrontier' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachRounds.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setUnion.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setUnion._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setUnion' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachRounds._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachRounds' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphReachable' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reverse.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_reverse._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reverse' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setRemove.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setRemove._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setRemove' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoReady.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_topoUnreached.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_topoUnreached._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoUnreached' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoReady._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoReady' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoRounds.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_topoRounds._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoRounds' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphTopological' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterate.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_iterate._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterate' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterateUntil.match_1_1' does not depend on any axioms\n'LexLeanPreservation.untilFits.match_1' does not depend on any axioms\n'LexLeanPreservation.untilFits._f' does not depend on any axioms\n'LexLeanPreservation.untilFits' does not depend on any axioms\n'LexLeanPreservation.tpl_iterateUntil._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterateUntil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_listFold.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_listFold._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_listFold' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapContains' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapFold.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapFold._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapFold' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapInsert.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapInsert._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapInsert' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapKeys.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapKeys._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapKeys' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapRemove.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapRemove._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapRemove' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapValues.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapValues._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapValues' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setDifference.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setDifference._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setDifference' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setIntersection.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setIntersection._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setIntersection' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.untilFits._sunfold' does not depend on any axioms\n'LexLeanPreservation.untilFits._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.untilFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.untilFits.eq_2' does not depend on any axioms\n'LexLeanPreservation.untilFits.eq_def' does not depend on any axioms\n'LexLeanPreservation.validExcept.match_1' does not depend on any axioms\n'LexLeanPreservation.InvExcept' does not depend on any axioms\n'LexLeanPreservation.InvList' does not depend on any axioms\n'LexLeanPreservation.InvList.eq_1' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.match_1' does not depend on any axioms\n'LexLeanPreservation.StrictAsc._f' does not depend on any axioms\n'LexLeanPreservation.StrictAsc' does not depend on any axioms\n'LexLeanPreservation.InvMap' does not depend on any axioms\n'LexLeanPreservation.validOption.match_1' does not depend on any axioms\n'LexLeanPreservation.InvOption' does not depend on any axioms\n'LexLeanPreservation.InvOption.eq_1' does not depend on any axioms\n'LexLeanPreservation.InvOption.eq_2' does not depend on any axioms\n'LexLeanPreservation.InvPair' does not depend on any axioms\n'LexLeanPreservation.InvSet' does not depend on any axioms\n'LexLeanPreservation.StrictAsc._sunfold' does not depend on any axioms\n'LexLeanPreservation.StrictAsc._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_1' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_2' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_3' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_def' does not depend on any axioms\n'LexLeanPreservation.Tpl.validListFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validMapFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validOptionFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validPairFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validResultFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validSetFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validTrueFn' does not depend on any axioms\n'LexLeanPreservation.ascMap.match_1' does not depend on any axioms\n'LexLeanPreservation.lessB.match_1' does not depend on any axioms\n'LexLeanPreservation.lessB' does not depend on any axioms\n'LexLeanPreservation.ascMap._f' does not depend on any axioms\n'LexLeanPreservation.ascMap' does not depend on any axioms\n'LexLeanPreservation.ascMap._sunfold' does not depend on any axioms\n'LexLeanPreservation.ascMap._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_1' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_2' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_3' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_def' does not depend on any axioms\n'LexLeanPreservation.ascMap_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.lessB_iff' depends on axioms: [propext]\n'LexLeanPreservation.ascMap_iff._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.ascMap_iff' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.ascMap_inv' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.ascSet._f' does not depend on any axioms\n'LexLeanPreservation.ascSet' does not depend on any axioms\n'LexLeanPreservation.ascSet._sunfold' does not depend on any axioms\n'LexLeanPreservation.ascSet._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_1' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_2' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_3' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_def' does not depend on any axioms\n'LexLeanPreservation.ascSet_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.ascSet_iff._f' depends on axioms: [propext]\n'LexLeanPreservation.ascSet_iff' depends on axioms: [propext]\n'LexLeanPreservation.ascSet_inv' depends on axioms: [propext]\n'LexLeanPreservation.condAnd_iff' depends on axioms: [propext]\n'LexLeanPreservation.invList_eqs.match_1_1' does not depend on any axioms\n'LexLeanPreservation.invList_eqs._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.invList_eqs' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.lessB.eq_1' does not depend on any axioms\n'LexLeanPreservation.lessB_eq' depends on axioms: [propext]\n'LexLeanPreservation.lessB_gt' depends on axioms: [propext]\n'LexLeanPreservation.lessB_lt' depends on axioms: [propext]\n'LexLeanPreservation.someObs.match_1' does not depend on any axioms\n'LexLeanPreservation.someObs' does not depend on any axioms\n'LexLeanPreservation.tpl_validList.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validList.match_1' does not depend on any axioms\n'LexLeanPreservation.validList._f' does not depend on any axioms\n'LexLeanPreservation.validList' does not depend on any axioms\n'LexLeanPreservation.tpl_validList' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validMap.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_validMap._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validMap' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validOption.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validOption' does not depend on any axioms\n'LexLeanPreservation.tpl_validOption' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validPair.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validPair' does not depend on any axioms\n'LexLeanPreservation.tpl_validPair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validResult.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validExcept' does not depend on any axioms\n'LexLeanPreservation.tpl_validResult' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validSet.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_validSet._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validSet' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validTrue' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.trueIff' does not depend on any axioms\n'LexLeanPreservation.validExcept_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validExcept_inv' does not depend on any axioms\n'LexLeanPreservation.validList._sunfold' does not depend on any axioms\n'LexLeanPreservation.validList._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.validList.eq_1' does not depend on any axioms\n'LexLeanPreservation.validList.eq_2' does not depend on any axioms\n'LexLeanPreservation.validList.eq_def' does not depend on any axioms\n'LexLeanPreservation.validList_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validList_iff._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.validList_iff' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.validList_inv' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.validOption.eq_1' does not depend on any axioms\n'LexLeanPreservation.validOption.eq_2' does not depend on any axioms\n'LexLeanPreservation.validOption_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validOption_inv' depends on axioms: [propext]\n'LexLeanPreservation.validPair_inv' depends on axioms: [propext]\n'LexLeanPreservation.validTrue_inv' does not depend on any axioms\n'LexLeanPreservation.Rust.Ctx' does not depend on any axioms\n'LexLeanPreservation.Rust.Flags' does not depend on any axioms\n'LexLeanPreservation.Rust.RCrate' does not depend on any axioms\n'LexLeanPreservation.Rust.RIdent' does not depend on any axioms\n'LexLeanPreservation.Rust.WT._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.adtFields' depends on axioms: [propext]\n'LexLeanTarget.TargetSyntax.IntKind.ofNat' does not depend on any axioms\n'LexLeanTarget.TargetSyntax.IntKind.ofNat_ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Rust.instDecidableEqIntKind_lexLeanPreservation._proof_1' does not depend on any axioms\n'LexLeanPreservation.Rust.instDecidableEqIntKind_lexLeanPreservation._proof_2' does not depend on any axioms\n'LexLeanPreservation.Rust.instDecidableEqIntKind_lexLeanPreservation' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flagOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fnIdent' does not depend on any axioms\n'LexLeanPreservation.Rust.fnFallible' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.inert._f' does not depend on any axioms\n'LexLeanPreservation.Rust.inert' does not depend on any axioms\n'LexLeanPreservation.Rust.WT._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.WTAll._f' does not depend on any axioms\n'LexLeanPreservation.Rust.WTL.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctxLookup.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup._f' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup' does not depend on any axioms\n'LexLeanPreservation.Rust.local_' does not depend on any axioms\n'LexLeanPreservation.Rust.EnvRel' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ROut' does not depend on any axioms\n'LexLeanPreservation.Rust.Halt' does not depend on any axioms\n'LexLeanPreservation.Rust.REnv' does not depend on any axioms\n'LexLeanPreservation.Rust.RExpr' does not depend on any axioms\n'LexLeanPreservation.Rust.RC' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RLet' does not depend on any axioms\n'LexLeanPreservation.Rust.LetsOK' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.append' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.below' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.below.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.brecOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.recOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.append_left' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.append_right' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.below' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.below.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.brecOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.recOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RBlock' does not depend on any axioms\n'LexLeanPreservation.Rust.dispatched_ne' does not depend on any axioms\n'LexLeanPreservation.Rust.finished_ne' does not depend on any axioms\n'LexLeanPreservation.Rust.returned_ne' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_24' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_26' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_28' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_30' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_32' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_34' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_36' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.eval.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_22' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.invoke.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.stable' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.reval_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCB' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.block' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCA' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.revalBlock_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCB.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCI' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.invoke_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCI.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCL' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.revalList_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCL.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.WTAll' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.block_of_lets' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.block_of_raise' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.ctxLookup._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup_slot._simp_1_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotFree' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup_slot' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_cons_other' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sameIdent_self' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_cons_self' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sameIdent_local' depends on axioms: [propext]\n'LexLeanPreservation.Rust.envRel_bind' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.envRel_extra' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.envRel_ghost' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sameIdent_kind' depends on axioms: [propext]\n'LexLeanPreservation.Rust.envRel_temp' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.listIndex_eq.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.listIndex_eq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.listIndex_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.index_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.inert._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.inert._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_nil.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_raise_head.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcl_raise_head.match_1_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcl_raise_head' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_raise_tail' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.revalArms_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.slotFree.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sunfold' depends on axioms: [propext]\n'LexLeanTarget.RustSemantics.eval.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_18' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_20' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.invoke.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.invoke.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.kindNumber.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.lookup.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.lookup.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.lookup.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.lookup.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.lookup.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.lookup.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd' does not depend on any axioms\n'LexLeanPreservation.Rust.isTemp._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isTemp.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isTemp' depends on axioms: [propext]\n'LexLeanPreservation.Rust.letsBind.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds._f' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds._f' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind._f' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind' does not depend on any axioms\n'LexLeanPreservation.Rust.tempFresh' does not depend on any axioms\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.foldN.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.flatB._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep.match_7' does not depend on any axioms\n'LexLeanPreservation.Rust.foldStep' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldB' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats._f' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats' does not depend on any axioms\n'LexLeanPreservation.Rust.okBlock' does not depend on any axioms\n'LexLeanPreservation.Rust.partRead._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Kind.casesOn' does not depend on any axioms\n'LexLeanPreservation.Rust.elseCtx.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.elseCtx' does not depend on any axioms\n'LexLeanPreservation.Rust.elseLets.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.elseLets' does not depend on any axioms\n'LexLeanPreservation.Rust.heldOK.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.heldOK' does not depend on any axioms\n'LexLeanPreservation.Rust.negateR._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.negateR._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.negateR.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.negateR' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_5' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_7' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_9' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identBoxed' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal' does not depend on any axioms\n'LexLeanPreservation.Rust.isWild._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.unboxOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotOK.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocal' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armShape.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.armShape' does not depend on any axioms\n'LexLeanPreservation.Rust.otherArms.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.otherArms' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.noClosure.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.noClosure._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh' depends on axioms: [propext]\n'LexLeanPreservation.Rust.covered' depends on axioms: [propext]\n'LexLeanPreservation.Rust.scrut' does not depend on any axioms\n'LexLeanPreservation.Rust.validU.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.validU' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotOK' does not depend on any axioms\n'LexLeanPreservation.Rust.ctorOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identsDistinct.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct._f' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct' does not depend on any axioms\n'LexLeanPreservation.Rust.litOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArg._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.match_6' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArg.match_8' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArg' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArgs._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildTail.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildsArm.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildsArm' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.itemOK.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemOK' does not depend on any axioms\n'LexLeanPreservation.Rust.itemTyped.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemTyped.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf' does not depend on any axioms\n'LexLeanPreservation.Rust.itemTyped' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_9' does not depend on any axioms\n'LexLeanPreservation.Rust.isFixed._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped' depends on axioms: [propext]\n'LexLeanPreservation.Rust.primTyped' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.litValues._f' does not depend on any axioms\n'LexLeanPreservation.Rust.litValue' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.typedLitAll._f' does not depend on any axioms\n'LexLeanPreservation.Rust.typedLits.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Corr' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.below' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.below.casesOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.brecOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.casesOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.recOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.FunOK' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.CrateOK' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Fresh' does not depend on any axioms\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn' depends on axioms: [propext]\n'LexLeanPreservation.Rust.FunSem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Kind._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.casesOn' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ctorElim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.b.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.e.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.k.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.l.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.m.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.ops.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.recOn' does not depend on any axioms\n'LexLeanPreservation.Rust.KPre.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.KPre' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Kind.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.ctorElim' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Kind.nat.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.plain.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.plain.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.recOn' does not depend on any axioms\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesM.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.RealizesM' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Sem.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.viewVal._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Sem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.foldN._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identsDistinct._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_10' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_11' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_12' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_13' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_14' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_6' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_7' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_8' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.litValues' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue._sunfold' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.litValue._unsafe_rec' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues._sunfold' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.paramCtx._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patsBinds' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.patLocals._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patsBinds._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArgs._sunfold' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs._unsafe_rec' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.typedLitAll' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.typedLits._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_of_inert.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_of_inert.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_of_inert._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_of_inert' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_of_inert._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_of_inert' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Halt.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.LetsRaise.halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.block_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.boxed' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesM.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesM.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_bytes_inv' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_list_inv' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_string_inv' depends on axioms: [propext]\n'LexLeanPreservation.Rust.takes_of_typed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.allWidth_of.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_eq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_eq._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.tysBeq_eq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq_eq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.wt_fixed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.allWidth_of._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.allWidth_of' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.width_of_typed.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.width_of_typed.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.width_of_typed.match_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.width_of_typed' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.accepts_of_typed' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_apply' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtl_append.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_append._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_append' depends on axioms: [propext]\n'LexLeanPreservation.Rust.apply_result' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.bindPattern_shape.match_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.bindPattern_shape._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.bindPatterns_shape._simp_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindPatterns_shape.match_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.bindPatterns_shape._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.bindPattern_shape' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.bindPatterns_shape' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms_spec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_4' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_6' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_7' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.boolArms_eval' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.boxWith.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_100' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_102' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_96' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_98' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_function' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.call_result' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.const_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.convert_args.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.convert_args' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_append_fresh' depends on axioms: [propext]\n'LexLeanPreservation.Rust.envRel_fresh' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_not._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_cond.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.itemResult.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.eval_match' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fixedTyped.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_18' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_19' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_20' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_21' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_22' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_23' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_24' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_25' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_26' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_27' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_28' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_29' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_30' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_31' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_32' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_33' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_34' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_35' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_36' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_37' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_38' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_39' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_40' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_41' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_42' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_43' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_44' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_45' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_46' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_47' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_48' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_49' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_50' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_51' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_52' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_53' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_54' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_55' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_56' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_57' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_58' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_59' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_60' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_61' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN_sound.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.split_last.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.split_last._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.split_last' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep_spec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcb_nil_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_nomatch.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcb_cons_nomatch' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_stop' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_prefix' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_flat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_read_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_cons_same' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcb_fold_last' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldStep_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldN_sound._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldN_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldB_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldN.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_append' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_bind._simp_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_bind' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotFree_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_weaken' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_elseCtx' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_temp._simp_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_temp' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fromStrings_wt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fromStrings_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fromStrings_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.hasWidth_i16' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_i32' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_i64' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_i8' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u16' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u32' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u64' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u8' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.heldOK.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.heldOK.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.isFixed._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.isSeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.isTemp._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.itemOK.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemOperands_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.itemResult' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.kpre_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_pred._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_pred.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_pred' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.kpre_else' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.kpre_then' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_of_lets' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_b_rcb' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.k_branch' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_cond_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_isZero_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_lit_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate_halt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_negate_halt.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_nonZero_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_23' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_25' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_27' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_29' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_31' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_33' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_35' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_37' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_39' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_41' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_43' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_45' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_47' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_49' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_51' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_not_inv.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_not_inv.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_not_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.k_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_read.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_read' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.kpre_held' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.letsBind.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.letsOK_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.letsOK_shape' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.litValue._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_4' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_def' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_5' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.eq_def' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.lit_branch' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.lookup_through._simp_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.lookup_through' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms_spec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms_eval' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.obsL_evalList_zero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.obs_eval_zero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.oneOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf_halt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.param_env.match_1_1' depends on axioms: [propext]\n'LexLeanTarget.TargetSemantics.bindAll.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.param_env._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.param_env' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.patBinds.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_10' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_6' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_7' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_8' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.primTyped.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_apply_halt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_apply_halt.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_apply_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_call_halt.match_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_runtime' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_construct' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct_halt.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct_halt.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_isZero.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_isZero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_lit.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_lit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue._simp_10' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue._simp_9' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue.match_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_pair.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_pair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_litValues.match_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rcl_litValues._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_nonZero.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_nonZero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_pair_halt_left' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_pair_halt_right' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_widen.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_widen' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_widen_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_11' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_7' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_litValues' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_nil_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_single_halt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_single_halt.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_single_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_widen_one' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.readOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizesL_halt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizesL_haltL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizes_halt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizesM_overflow' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizes_oneOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.runItem_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.runItem_succ' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_applyGen.match_1_13' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen.match_1_15' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen.match_1_28' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_apply' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_applyF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_bOfE' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_build.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_build.match_1_99' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_build' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildConst' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildPair.match_1_101' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_97' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_99' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildSucc.match_1_129' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSucc.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSucc' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildSuccF.match_1_101' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSuccF.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSuccF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_callF.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callF.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_callOps.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callOps.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callOps' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_closure.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.wtl_length.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_length._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_length' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_closure' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_cond.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_cond.match_1_11' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_condId.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_condId' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_eOfB' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_eOfBFold' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_eOfBNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_fOfB' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_unit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_fUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kHeld' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kLit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kId' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kIf' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kNeg' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kSame' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_lCons.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons.match_1_17' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons.match_1_19' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_lNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_letBind.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letBind.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letBind' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_letWild.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letWild.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letWild' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBool._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchHolder.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchHolder.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchHolder' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBool' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBoolId._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBoolId.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchBoolId' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchNat._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchNat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchUnit._proof_1_386' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchUnit.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchUnit.match_1_387' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsCons._simp_1_13' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsCons.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons.match_1_14' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons.match_1_16' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsOfL' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_29' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_31' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_ops_box.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_ops_box.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_ops_box.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_ops_box' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_part._sparseCasesOn_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_part.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_part.match_1_14' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_part.match_1_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_part' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_part._sparseCasesOn_1_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_prim.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_prim.match_1_38' does not depend on any axioms\n'LexLeanPreservation.Rust.wtAll_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wtAll_iff._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.wtAll_iff' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_append' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_bitwise' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_checked' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_convert' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_decode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_encode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_fixedTyped.match_1_67' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_format' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_index' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_join' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_parse' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_shift' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.slice_eq' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_slice' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_split' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_unary' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtl_one.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_one' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_three.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_three' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_two.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_two' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_fixedTyped' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_prim' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_prim' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_primF.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF.match_1_7' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_primWiden.match_1_108' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_110' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_112' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_114' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_116' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.typedLitAll_wt.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit_wt.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits_wt.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_var' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_varUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_zero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.shapeOf.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_10' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_11' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_12' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_13' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_14' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_6' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_7' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_8' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.tempFresh.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_12.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_13.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_14.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.allWidth.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.allWidth.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.allWidth.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_100' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_101' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_102' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_103' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_104' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_105' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_106' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_107' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_108' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_109' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_110' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_111' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_112' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_113' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_114' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_115' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_116' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_117' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_118' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_119' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_120' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_121' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_122' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_123' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_124' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_125' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_126' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_127' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_128' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_129' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_130' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_131' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_132' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_133' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_134' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_135' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_136' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_137' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_138' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_139' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_140' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_141' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_142' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_143' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_144' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_145' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_146' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_147' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_148' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_149' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_150' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_151' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_152' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_153' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_154' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_155' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_156' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_157' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_158' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_159' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_160' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_161' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_162' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_163' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_164' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_165' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_166' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_167' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_168' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_169' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_170' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_171' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_172' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_173' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_174' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_175' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_176' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_177' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_178' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_179' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_180' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_181' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_182' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_183' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_184' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_185' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_186' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_51' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_52' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_53' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_54' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_55' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_56' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_57' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_58' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_59' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_60' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_61' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_62' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_63' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_64' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_65' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_66' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_67' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_68' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_69' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_70' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_71' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_72' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_73' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_74' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_75' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_76' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_77' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_78' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_79' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_80' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_81' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_82' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_83' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_84' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_85' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_86' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_87' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_88' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_89' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_90' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_91' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_92' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_93' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_94' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_95' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_96' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_97' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_98' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_99' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_100' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_101' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_102' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_103' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_104' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_105' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_106' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_107' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_108' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_109' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_110' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_111' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_112' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_113' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_114' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_115' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_116' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_117' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_118' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_119' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_120' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_121' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_122' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_123' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_124' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_125' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_126' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_127' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_128' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_129' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_130' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_131' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_132' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_133' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_134' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_135' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_136' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_137' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_138' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_139' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_140' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_141' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_142' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_143' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_144' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_145' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_146' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_147' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_148' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_149' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_150' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_151' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_152' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_153' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_154' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_155' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_156' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_157' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_158' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_159' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_160' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_161' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_162' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_163' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_164' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_165' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_166' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_167' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_168' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_169' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_170' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_171' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_172' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_173' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_174' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_175' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_176' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_177' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_178' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_179' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_180' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_181' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_182' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_183' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_184' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_51' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_52' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_53' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_54' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_55' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_56' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_57' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_58' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_59' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_60' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_61' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_62' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_63' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_64' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_65' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_66' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_67' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_68' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_69' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_70' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_71' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_72' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_73' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_74' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_75' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_76' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_77' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_78' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_79' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_80' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_81' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_82' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_83' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_84' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_85' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_86' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_87' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_88' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_89' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_90' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_91' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_92' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_93' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_94' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_95' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_96' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_97' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_98' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_99' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemAccepts.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemAccepts.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.literal.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_10' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_11' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_12' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_13' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_14' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_15' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_3' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_4' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_5' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_6' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_7' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_8' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_9' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.propagated.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.returned.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_10' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_11' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_12' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_13' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_14' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_15' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_16' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_17' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_18' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_19' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_20' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_21' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_22' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_23' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_24' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_25' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_26' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_27' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_28' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_29' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_30' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_31' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_32' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_33' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_34' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_35' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_36' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_37' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_38' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_39' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_40' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_41' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_42' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_43' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_44' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_45' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_46' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_47' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_48' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_49' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_5' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_50' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_51' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_52' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_53' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_54' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_55' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_56' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_57' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_58' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_59' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_6' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_60' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_61' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_62' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_63' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_64' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_65' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_66' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_67' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_68' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_69' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_7' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_70' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_71' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_72' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_73' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_74' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_75' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_76' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_77' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_78' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_79' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_8' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_80' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_81' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_82' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_83' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_9' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_10' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_100' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_101' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_102' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_103' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_104' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_105' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_106' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_107' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_108' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_109' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_11' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_110' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_111' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_112' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_113' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_114' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_115' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_116' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_117' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_118' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_119' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_12' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_120' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_121' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_122' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_123' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_124' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_125' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_126' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_127' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_128' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_129' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_13' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_130' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_131' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_132' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_133' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_134' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_135' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_136' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_137' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_138' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_139' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_14' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_140' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_141' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_142' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_143' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_144' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_145' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_146' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_147' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_148' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_149' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_15' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_150' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_151' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_152' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_153' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_154' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_155' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_156' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_157' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_158' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_159' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_16' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_160' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_161' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_162' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_163' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_164' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_165' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_166' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_167' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_168' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_169' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_17' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_170' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_171' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_172' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_173' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_174' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_175' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_176' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_177' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_178' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_179' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_18' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_180' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_181' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_182' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_183' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_184' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_185' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_186' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_187' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_188' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_189' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_19' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_190' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_191' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_192' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_193' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_194' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_195' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_196' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_197' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_198' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_199' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_20' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_200' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_201' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_202' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_203' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_204' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_205' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_206' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_207' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_208' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_209' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_21' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_210' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_211' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_212' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_213' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_214' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_215' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_216' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_217' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_218' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_219' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_22' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_220' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_221' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_222' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_223' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_224' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_225' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_226' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_227' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_228' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_229' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_23' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_230' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_231' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_232' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_233' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_234' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_235' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_236' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_237' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_238' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_239' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_24' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_240' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_241' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_242' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_243' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_244' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_245' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_246' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_247' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_248' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_249' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_25' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_250' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_251' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_252' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_253' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_254' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_255' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_256' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_257' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_258' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_259' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_26' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_260' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_261' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_262' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_263' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_264' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_265' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_266' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_267' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_268' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_269' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_27' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_270' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_271' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_272' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_273' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_274' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_275' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_276' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_277' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_278' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_279' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_28' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_280' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_281' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_282' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_283' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_284' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_285' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_286' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_287' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_288' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_289' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_29' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_290' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_291' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_292' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_293' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_294' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_295' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_296' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_297' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_298' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_299' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_30' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_300' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_301' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_302' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_303' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_304' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_305' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_306' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_307' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_308' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_309' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_31' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_310' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_311' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_312' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_313' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_314' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_315' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_316' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_317' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_318' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_319' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_32' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_320' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_321' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_322' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_323' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_324' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_325' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_326' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_327' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_328' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_329' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_33' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_330' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_331' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_332' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_333' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_334' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_335' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_336' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_337' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_338' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_339' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_34' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_340' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_341' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_342' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_343' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_344' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_345' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_346' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_347' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_348' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_349' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_35' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_350' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_351' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_352' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_353' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_354' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_355' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_356' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_357' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_358' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_359' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_36' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_360' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_361' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_362' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_363' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_364' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_365' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_366' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_367' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_368' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_369' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_37' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_370' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_38' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_39' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_40' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_41' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_42' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_43' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_44' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_45' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_46' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_47' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_48' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_49' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_5' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_50' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_51' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_52' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_53' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_54' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_55' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_56' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_57' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_58' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_59' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_6' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_60' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_61' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_62' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_63' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_64' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_65' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_66' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_67' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_68' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_69' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_7' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_70' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_71' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_72' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_73' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_74' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_75' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_76' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_77' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_78' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_79' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_8' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_80' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_81' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_82' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_83' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_84' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_85' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_86' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_87' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_88' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_89' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_9' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_90' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_91' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_92' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_93' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_94' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_95' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_96' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_97' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_98' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_99' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromStrings.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromStrings.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromStrings.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.primitive.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1000' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1001' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1002' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1003' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1004' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1005' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1006' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1007' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1008' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1009' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1010' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1011' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1012' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1013' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1014' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1015' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1016' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1017' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1018' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1019' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1020' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1021' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1022' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1023' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1024' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1025' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1026' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1027' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1028' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1029' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1030' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1031' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1032' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1033' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1034' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1035' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1036' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1037' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1038' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1039' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1040' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1041' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1042' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1043' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1044' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1045' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1046' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1047' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1048' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1049' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1050' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1051' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1052' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1053' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1054' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1055' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1056' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1057' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1058' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1059' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1060' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1061' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1062' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1063' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1064' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1065' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1066' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1067' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1068' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1069' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1070' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1071' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1072' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1073' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1074' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1075' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1076' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1077' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1078' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1079' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1080' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1081' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1082' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1083' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1084' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1085' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1086' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1087' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1088' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1089' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1090' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1091' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1092' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1093' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1094' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1095' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1096' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1097' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1098' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1099' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1426' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1427' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1428' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1429' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1430' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1431' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1432' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1433' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1434' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1435' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1436' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1437' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1438' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1439' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1440' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1441' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1442' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1443' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1444' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1445' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1446' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1447' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1448' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1449' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1450' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1451' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1452' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1453' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1454' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1455' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1456' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1457' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1458' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1459' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1460' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1461' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1462' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1463' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1464' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1465' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1466' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1467' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1468' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1469' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1470' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1471' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1472' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1473' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1474' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1475' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1476' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1477' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1478' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1479' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1480' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1481' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1482' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1483' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1484' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1485' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1486' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1487' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1488' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1489' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1490' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1491' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1492' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1493' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1494' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1495' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1496' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1497' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1498' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1499' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1500' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1501' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1502' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1503' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1504' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1505' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1506' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1507' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1508' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1509' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1510' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1511' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1512' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1513' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1514' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1515' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1516' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1517' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1518' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1519' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1520' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1521' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1522' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1523' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1524' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1525' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1526' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1527' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1528' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1529' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1530' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1531' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1532' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1533' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1534' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1535' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1536' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1537' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1538' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1539' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1540' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1541' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1542' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1543' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1544' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1545' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1546' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1547' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1548' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1549' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1550' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1551' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1552' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1553' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1554' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1555' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1556' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1557' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1558' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1559' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1560' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1561' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1562' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1563' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1564' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1565' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1566' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1567' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1568' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1569' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1570' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1571' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1572' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1573' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1574' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1575' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1576' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1577' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1578' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1579' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1580' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1581' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1582' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1583' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1584' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1585' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1586' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1587' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1588' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1589' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1590' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1591' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1592' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1593' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1594' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1595' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1596' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1597' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1598' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1599' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1600' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1601' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1602' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1603' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1604' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1605' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1606' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1607' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1608' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1609' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1610' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1611' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1612' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1613' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1614' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1615' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1616' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1617' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1618' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1619' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1620' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1621' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1622' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1623' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1624' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1625' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1626' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1627' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1628' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1629' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1630' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1631' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1632' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1633' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1634' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1635' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1636' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1637' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1638' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1639' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1640' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1641' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1642' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1643' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1644' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1645' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1646' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1647' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1648' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1649' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1650' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1651' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1652' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1653' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1654' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1655' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1656' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1657' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1658' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1659' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1660' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1661' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1662' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1663' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1664' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1665' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1666' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1667' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1668' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1669' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1670' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1671' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1672' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1673' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1674' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1675' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1676' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1677' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1678' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1679' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1680' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1681' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1682' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1683' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1684' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1685' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1686' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1687' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1688' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1689' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1690' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1691' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1692' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1693' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1694' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1695' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1696' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1697' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1698' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1699' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1700' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1701' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1702' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1703' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1704' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1705' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1706' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1707' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1708' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1709' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1710' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1711' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1712' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1713' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1714' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1715' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1716' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1717' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1718' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1719' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1720' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1721' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1722' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1723' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1724' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1725' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1726' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1727' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1728' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1729' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1730' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1731' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1732' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1733' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1734' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1735' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1736' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1737' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1738' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1739' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1740' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1741' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1742' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1743' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1744' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1745' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1746' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1747' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1748' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1749' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1750' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1751' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1752' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1753' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1754' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1755' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1756' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1757' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1758' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1759' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1760' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1761' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1762' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1763' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1764' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1765' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1766' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1767' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1768' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1769' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1770' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1771' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1772' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1773' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1774' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1775' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1776' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1777' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1778' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1779' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1780' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1781' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1782' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1783' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1784' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1785' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1786' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1787' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1788' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1789' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1790' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1791' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1792' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1793' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1794' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1795' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1796' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1797' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1798' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1799' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_18' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1800' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1801' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1802' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1803' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1804' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1805' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1806' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1807' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1808' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1809' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1810' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1811' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1812' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1813' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1814' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1815' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1816' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1817' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1818' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1819' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1820' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1821' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1822' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1823' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1824' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1825' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1826' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1827' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1828' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1829' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1830' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1831' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1832' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1833' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1834' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1835' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1836' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1837' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1838' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1839' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1840' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1841' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1842' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1843' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1844' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1845' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1846' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1847' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1848' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1849' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1850' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1851' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1852' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1853' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1854' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1855' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1856' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1857' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1858' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1859' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1860' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1861' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1862' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1863' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1864' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1865' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1866' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1867' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1868' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1869' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1870' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1871' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1872' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1873' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1874' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1875' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1876' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1877' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1878' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1879' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1880' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1881' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1882' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1883' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1884' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1885' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1886' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1887' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1888' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1889' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1890' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1891' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1892' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1893' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1894' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1895' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1896' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1897' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1898' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1899' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1900' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1901' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1902' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1903' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1904' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1905' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1906' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1907' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1908' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1909' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1910' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1911' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1912' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1913' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1914' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1915' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1916' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1917' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1918' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1919' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1920' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1921' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1922' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1923' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1924' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1925' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1926' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1927' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1928' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1929' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1930' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1931' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1932' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1933' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1934' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1935' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1936' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1937' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1938' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1939' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1940' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1941' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1942' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1943' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1944' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1945' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1946' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1947' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1948' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1949' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1950' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1951' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1952' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1953' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1954' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1955' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1956' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1957' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1958' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1959' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1960' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1961' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1962' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1963' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1964' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1965' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1966' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1967' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1968' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1969' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1970' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1971' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1972' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1973' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1974' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1975' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1976' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1977' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1978' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1979' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1980' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1981' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1982' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1983' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1984' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1985' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1986' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1987' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1988' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1989' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1990' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1991' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1992' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1993' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1994' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1995' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1996' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1997' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1998' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1999' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_20' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2000' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2001' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2002' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2003' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2004' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2005' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2006' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2007' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2008' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2009' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2010' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2011' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2012' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2013' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2014' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2015' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2016' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2017' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2018' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2019' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2020' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2021' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2022' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2023' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2024' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2025' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2026' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2027' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2028' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2029' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2030' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2031' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2032' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2033' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2034' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2035' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2036' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2037' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2038' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2039' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2040' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2041' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2042' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2043' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2044' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2045' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2046' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2047' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2048' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2049' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2050' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2051' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2052' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2053' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2054' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2055' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2056' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2057' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2058' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2059' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2060' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2061' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2062' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2063' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2064' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2065' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2066' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2067' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2068' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2069' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2070' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2071' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2072' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2073' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2074' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2075' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2076' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2077' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2078' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2079' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2080' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2081' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2082' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2083' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2084' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2085' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2086' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2087' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2088' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2089' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2090' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2091' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2092' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2093' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2094' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2095' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2096' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2097' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2098' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2099' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_22' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_23' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_24' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2426' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2427' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2428' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2429' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2430' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2431' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2432' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2433' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2434' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2435' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2436' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2437' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2438' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2439' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2440' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2441' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2442' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2443' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2444' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2445' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2446' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2447' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2448' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2449' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2450' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2451' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2452' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2453' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2454' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2455' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2456' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2457' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2458' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2459' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2460' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2461' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2462' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2463' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2464' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2465' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2466' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2467' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2468' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2469' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2470' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2471' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2472' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2473' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2474' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2475' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2476' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2477' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2478' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2479' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2480' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2481' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2482' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2483' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2484' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2485' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2486' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2487' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2488' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2489' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2490' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2491' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2492' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2493' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2494' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2495' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2496' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2497' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2498' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2499' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_25' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2500' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2501' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2502' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2503' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2504' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2505' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2506' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2507' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2508' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2509' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2510' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2511' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2512' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2513' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2514' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2515' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2516' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2517' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2518' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2519' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2520' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2521' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2522' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2523' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2524' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2525' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2526' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2527' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2528' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2529' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2530' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2531' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2532' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2533' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2534' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2535' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2536' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2537' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2538' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2539' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2540' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2541' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2542' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2543' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2544' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2545' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2546' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2547' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2548' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2549' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2550' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2551' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2552' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2553' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2554' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2555' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2556' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2557' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2558' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2559' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2560' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2561' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2562' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2563' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2564' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2565' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2566' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2567' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2568' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2569' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2570' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2571' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2572' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2573' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2574' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2575' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2576' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2577' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2578' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2579' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2580' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2581' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2582' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2583' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2584' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2585' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2586' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2587' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2588' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2589' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2590' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2591' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2592' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2593' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2594' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2595' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2596' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2597' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2598' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2599' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_26' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2600' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2601' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2602' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2603' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2604' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2605' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2606' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2607' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2608' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2609' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2610' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2611' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2612' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2613' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2614' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2615' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2616' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2617' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2618' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2619' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2620' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2621' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2622' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2623' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2624' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2625' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2626' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2627' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2628' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2629' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2630' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2631' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2632' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2633' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2634' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2635' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2636' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2637' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2638' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2639' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2640' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2641' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2642' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2643' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2644' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2645' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2646' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2647' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2648' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2649' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2650' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2651' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2652' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2653' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2654' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2655' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2656' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2657' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2658' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2659' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2660' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2661' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2662' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2663' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2664' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2665' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2666' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2667' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2668' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2669' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2670' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2671' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2672' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2673' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2674' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2675' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2676' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2677' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2678' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2679' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2680' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2681' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2682' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2683' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2684' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2685' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2686' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2687' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2688' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2689' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2690' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2691' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2692' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2693' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2694' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2695' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2696' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2697' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2698' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2699' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_27' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2700' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2701' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2702' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2703' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2704' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2705' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2706' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2707' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2708' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2709' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2710' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2711' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2712' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2713' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2714' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2715' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2716' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2717' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2718' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2719' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2720' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2721' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2722' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2723' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2724' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2725' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2726' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2727' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2728' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2729' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2730' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2731' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2732' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2733' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2734' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2735' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2736' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2737' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2738' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2739' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2740' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2741' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2742' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2743' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2744' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2745' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2746' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2747' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2748' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2749' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2750' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2751' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2752' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2753' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2754' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2755' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2756' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2757' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2758' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2759' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2760' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2761' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2762' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2763' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2764' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2765' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2766' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2767' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2768' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2769' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2770' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2771' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2772' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2773' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2774' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2775' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2776' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2777' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2778' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2779' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2780' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2781' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2782' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2783' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2784' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2785' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2786' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2787' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2788' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2789' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2790' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2791' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2792' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2793' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2794' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2795' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2796' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2797' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2798' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2799' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_28' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2800' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2801' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2802' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2803' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2804' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2805' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2806' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2807' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2808' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2809' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2810' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2811' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2812' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2813' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2814' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2815' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2816' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2817' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2818' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2819' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2820' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2821' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2822' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2823' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2824' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2825' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2826' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2827' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2828' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2829' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2830' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2831' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2832' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2833' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2834' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2835' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2836' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2837' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2838' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2839' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2840' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2841' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2842' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2843' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2844' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2845' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2846' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2847' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2848' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2849' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2850' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2851' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2852' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2853' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2854' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2855' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2856' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2857' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2858' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2859' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2860' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2861' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2862' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2863' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2864' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2865' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2866' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2867' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2868' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2869' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2870' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2871' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2872' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2873' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2874' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2875' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2876' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2877' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2878' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2879' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2880' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2881' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2882' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2883' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2884' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2885' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2886' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2887' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2888' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2889' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2890' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2891' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2892' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2893' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2894' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2895' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2896' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2897' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2898' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2899' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_29' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2900' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2901' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2902' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2903' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2904' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2905' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2906' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2907' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2908' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2909' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2910' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2911' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2912' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2913' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2914' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2915' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2916' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2917' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2918' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2919' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2920' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2921' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2922' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2923' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2924' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2925' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2926' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2927' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2928' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2929' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2930' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2931' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2932' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2933' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2934' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2935' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2936' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2937' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2938' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2939' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2940' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2941' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2942' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2943' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2944' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2945' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2946' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2947' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2948' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2949' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2950' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2951' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2952' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2953' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2954' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2955' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2956' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2957' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2958' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2959' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2960' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2961' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2962' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2963' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2964' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2965' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2966' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2967' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2968' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2969' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2970' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2971' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2972' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2973' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2974' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2975' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2976' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2977' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2978' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2979' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2980' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2981' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2982' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2983' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2984' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2985' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2986' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2987' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2988' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2989' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2990' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2991' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2992' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2993' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2994' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2995' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2996' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2997' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2998' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2999' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_30' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3000' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3001' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3002' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3003' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3004' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3005' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3006' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3007' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3008' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3009' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3010' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3011' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3012' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3013' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3014' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3015' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3016' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3017' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3018' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3019' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3020' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3021' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3022' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3023' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3024' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3025' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3026' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3027' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3028' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3029' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3030' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3031' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3032' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3033' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3034' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3035' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3036' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3037' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3038' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3039' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3040' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3041' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3042' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3043' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3044' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3045' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3046' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3047' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3048' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3049' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3050' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3051' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3052' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3053' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3054' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3055' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3056' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3057' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3058' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3059' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3060' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3061' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3062' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3063' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3064' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3065' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3066' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3067' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3068' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3069' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3070' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3071' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3072' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3073' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3074' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3075' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3076' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3077' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3078' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3079' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3080' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3081' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3082' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3083' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3084' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3085' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3086' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3087' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3088' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3089' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3090' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3091' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3092' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3093' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3094' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3095' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3096' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3097' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3098' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3099' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_31' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_33' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_34' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_35' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_36' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_37' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_38' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_39' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_40' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_41' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_42' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_426' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_427' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_428' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_429' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_43' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_430' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_431' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_432' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_433' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_434' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_435' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_436' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_437' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_438' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_439' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_44' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_440' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_441' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_442' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_443' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_444' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_445' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_446' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_447' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_448' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_449' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_45' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_450' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_451' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_452' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_453' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_454' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_455' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_456' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_457' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_458' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_459' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_46' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_460' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_461' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_462' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_463' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_464' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_465' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_466' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_467' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_468' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_469' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_47' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_470' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_471' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_472' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_473' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_474' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_475' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_476' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_477' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_478' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_479' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_48' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_480' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_481' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_482' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_483' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_484' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_485' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_486' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_487' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_488' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_489' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_49' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_490' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_491' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_492' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_493' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_494' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_495' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_496' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_497' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_498' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_499' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_50' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_500' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_501' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_502' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_503' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_504' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_505' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_506' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_507' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_508' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_509' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_51' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_510' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_511' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_512' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_513' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_514' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_515' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_516' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_517' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_518' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_519' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_52' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_520' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_521' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_522' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_523' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_524' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_525' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_526' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_527' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_528' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_529' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_53' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_530' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_531' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_532' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_533' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_534' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_535' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_536' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_537' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_538' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_539' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_54' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_540' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_541' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_542' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_543' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_544' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_545' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_546' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_547' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_548' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_549' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_55' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_550' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_551' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_552' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_553' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_554' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_555' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_556' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_557' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_558' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_559' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_56' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_560' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_561' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_562' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_563' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_564' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_565' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_566' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_567' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_568' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_569' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_57' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_570' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_571' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_572' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_573' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_574' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_575' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_576' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_577' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_578' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_579' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_58' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_580' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_581' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_582' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_583' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_584' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_585' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_586' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_587' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_588' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_589' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_59' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_590' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_591' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_592' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_593' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_594' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_595' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_596' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_597' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_598' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_599' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_60' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_600' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_601' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_602' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_603' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_604' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_605' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_606' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_607' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_608' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_609' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_61' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_610' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_611' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_612' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_613' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_614' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_615' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_616' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_617' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_618' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_619' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_62' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_620' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_621' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_622' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_623' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_624' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_625' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_626' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_627' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_628' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_629' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_63' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_630' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_631' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_632' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_633' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_634' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_635' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_636' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_637' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_638' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_639' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_640' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_641' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_642' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_643' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_644' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_645' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_646' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_647' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_648' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_649' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_65' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_650' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_651' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_652' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_653' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_654' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_655' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_656' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_657' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_658' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_659' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_66' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_660' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_661' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_662' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_663' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_664' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_665' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_666' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_667' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_668' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_669' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_67' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_670' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_671' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_672' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_673' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_674' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_675' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_676' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_677' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_678' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_679' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_68' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_680' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_681' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_682' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_683' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_684' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_685' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_686' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_687' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_688' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_689' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_69' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_690' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_691' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_692' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_693' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_694' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_695' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_696' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_697' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_698' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_699' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_70' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_700' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_701' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_702' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_703' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_704' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_705' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_706' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_707' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_708' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_709' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_71' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_710' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_711' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_712' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_713' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_714' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_715' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_716' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_717' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_718' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_719' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_72' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_720' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_721' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_722' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_723' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_724' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_725' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_726' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_727' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_728' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_729' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_73' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_730' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_731' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_732' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_733' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_734' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_735' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_736' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_737' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_738' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_739' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_74' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_740' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_741' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_742' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_743' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_744' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_745' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_746' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_747' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_748' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_749' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_75' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_750' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_751' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_752' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_753' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_754' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_755' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_756' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_757' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_758' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_759' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_76' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_760' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_761' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_762' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_763' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_764' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_765' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_766' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_767' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_768' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_769' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_77' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_770' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_771' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_772' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_773' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_774' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_775' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_776' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_777' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_778' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_779' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_78' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_780' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_781' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_782' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_783' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_784' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_785' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_786' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_787' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_788' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_789' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_79' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_790' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_791' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_792' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_793' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_794' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_795' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_796' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_797' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_798' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_799' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_80' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_800' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_801' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_802' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_803' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_804' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_805' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_806' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_807' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_808' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_809' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_81' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_810' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_811' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_812' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_813' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_814' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_815' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_816' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_817' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_818' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_819' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_82' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_820' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_821' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_822' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_823' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_824' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_825' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_826' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_827' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_828' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_829' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_83' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_830' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_831' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_832' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_833' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_834' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_835' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_836' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_837' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_838' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_839' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_84' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_840' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_841' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_842' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_843' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_844' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_845' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_846' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_847' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_848' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_849' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_85' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_850' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_851' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_852' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_853' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_854' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_855' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_856' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_857' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_858' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_859' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_86' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_860' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_861' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_862' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_863' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_864' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_865' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_866' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_867' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_868' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_869' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_87' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_870' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_871' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_872' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_873' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_874' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_875' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_876' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_877' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_878' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_879' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_88' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_880' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_881' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_882' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_883' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_884' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_885' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_886' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_887' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_888' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_889' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_89' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_890' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_891' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_892' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_893' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_894' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_895' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_896' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_897' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_898' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_899' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_90' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_900' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_901' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_902' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_903' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_904' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_905' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_906' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_907' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_908' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_909' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_91' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_910' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_911' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_912' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_913' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_914' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_915' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_916' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_917' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_918' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_919' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_92' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_920' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_921' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_922' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_923' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_924' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_925' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_926' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_927' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_928' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_929' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_93' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_930' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_931' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_932' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_933' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_934' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_935' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_936' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_937' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_938' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_939' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_94' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_940' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_941' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_942' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_943' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_944' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_945' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_946' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_947' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_948' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_949' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_95' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_950' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_951' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_952' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_953' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_954' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_955' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_956' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_957' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_958' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_959' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_96' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_960' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_961' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_962' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_963' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_964' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_965' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_966' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_967' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_968' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_969' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_97' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_970' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_971' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_972' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_973' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_974' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_975' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_976' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_977' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_978' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_979' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_98' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_980' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_981' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_982' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_983' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_984' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_985' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_986' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_987' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_988' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_989' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_99' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_990' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_991' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_992' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_993' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_994' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_995' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_996' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_997' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_998' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_999' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.adtFields.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_12.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_13.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_12.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat_outer' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.boxedOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.boxedOne.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.boxedOne' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bp_entries._simp_1_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.simplePat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bp_entries.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.entriesOf._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bp_entries._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.bp_entries' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.directPat_cons._simp_1_4' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.identBoxed_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identLocal_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf_spec' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_cons' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_len.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_len._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_len' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_loads._simp_1_27' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_loads._simp_1_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_loads.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none._simp_1_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none._simp_1_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rlookup_append' depends on axioms: [propext]\n'LexLeanPreservation.Rust.same_boxed_boxed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_boxed_none' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_local_none._simp_1_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_local_none._simp_1_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_local_none.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.same_local_local' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_local_none._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_local_none' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_boxed_local' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rlookup_local_boxed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rlookup_local_single' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_loads._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.directPat_loads' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_boxed_some._simp_1_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_some._simp_1_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_some.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_some._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.entries_boxed_some' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.envRel_locals' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fields_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindPatterns_single' depends on axioms: [propext]\n'LexLeanPreservation.Rust.outer_bind' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.paramCtx_length.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_length._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_length' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.bindOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOne.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.covered.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.covered_mem._simp_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.wt_uninh._simp_10' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.covered_mem' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.ctorOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.destruct_canon' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq_refl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.destruct_excl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.directPat.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_lookup.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_none_of._simp_1_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_none_of.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sameIdent_iff' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_none_of._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_none_of' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.identsDistinct.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.entries_lookup._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_lookup' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.eval_field.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.eval_field._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_field.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_field' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats_none._simp_1_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats_none.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats_none._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats_none' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats_some._simp_1_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats_some.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats_some._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats_some' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_partRead' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.tyBeq_unit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.field_out' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.findArm_some.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.findArm_some._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.findArm_some' depends on axioms: [propext]\n'LexLeanPreservation.Rust.findDispatch_some.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.findDispatch_some._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.findDispatch_some' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_ext' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identBoxed.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identBoxed.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.isWild._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.okBlock.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.otherArms.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.otherArms_mem._simp_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.otherArms_mem' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.outer_miss' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.outer_view' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_ext.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_ext._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_ext' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_fresh.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_fresh._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_fresh' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocal.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_matchOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_matchOn_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_uncons.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_uncons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_scrut' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rca_hit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rca_miss' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_det' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_rebuild.match_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_eq_of_same' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg_rc' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_rebuild._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_rebuild' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.readOf_rc' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.realizesM_value' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArg_simple' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_def' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs_simple.match_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs_simple._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs_simple' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_14.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuild_rca._simp_1_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuild_rca.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_value._simp_1_21' depends on axioms: [propext]\n'LexLeanPreservation.Rust.single_rebuild' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_rca._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_rca' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuildsArm.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_nil' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_fieldGen._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_fieldGen.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_fieldGen.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.wtl_get.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_get._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_get' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_fieldGen' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_fieldHeld' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_fieldRead' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_mCons._simp_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_mCons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_mNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchArms._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.tyBeq_refl.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq_refl._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.tysBeq_refl.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tysBeq_refl._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_refl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.tysBeq_refl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.uninh_of_inert.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.uninh_of_inert._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh_of_inert' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_uninh.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_uninh._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtl_uninh.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_uninh._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_uninh' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.taken_arm' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchArms' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchPair._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchPair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchRebuilt._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchRebuilt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchRebuilt.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchRebuilt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.simplePat.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.validU.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_uninh' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.findArm.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findArm.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findArm.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_5' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_6' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_7' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_8' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.fl_of' does not depend on any axioms\n'LexLeanPreservation.Rust.fnFallible.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of._simp_1_14' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.funSem_of.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_12' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.isTemp.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isTemp.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.item_ne' depends on axioms: [propext]\n'LexLeanPreservation.Rust.kind_ne' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sound._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sound._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.simulate' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Representable._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Representable.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Representable._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.RepresentableL._f' does not depend on any axioms\n'LexLeanPreservation.Rust.Representable' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Representable._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.Representable._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.compose' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rel_ne_stuck' depends on axioms: [propext]\n'LexLeanPreservation.Rust.repL_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.repL_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.runItem_abort_infallible' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtAll_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wtAll_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_map._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_map' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_adt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_bool' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_bytes' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encExcept.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_encExcept' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_list' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encList' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encOption.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_encOption' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encOrdering' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encPair' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encUnit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_errorV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i32' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i64' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_int' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_listEnc' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_nat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_noneV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_okV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_optEnc.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_someV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_optEnc' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_ordering' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_pairV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_string' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u32' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u64' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_unitValue' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_nil' depends on axioms: [propext]\n'LexLeanPreservation.encExcept.eq_1' does not depend on any axioms\n'LexLeanPreservation.encExcept.eq_2' does not depend on any axioms\n'LexLeanPreservation.encOption.eq_1' does not depend on any axioms\n'LexLeanPreservation.encOption.eq_2' does not depend on any axioms\n'LexLeanPreservation.encPair.eq_1' does not depend on any axioms\n'LexLeanPreservation.encUnit.eq_1' does not depend on any axioms\n'LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.Compose.RustStd.__wt_0' depends on axioms: [propext]\n'LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.Compose.RustStd.__wt_2' depends on axioms: [propext]\n'LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.Compose.RustStd.__wt_1' depends on axioms: [propext]\n-- statement vocabulary\ninductive LexLeanPreservation.Obs : Type\nnumber of parameters: 0\nconstructors:\nLexLeanPreservation.Obs.value : LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs\nLexLeanPreservation.Obs.overflow : LexLeanPreservation.Obs\nLexLeanPreservation.Obs.stuck : LexLeanPreservation.Obs\ndef LexLeanPreservation.Rel : Bool → LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs :=\nfun fits v => bif fits then LexLeanPreservation.Obs.value v else LexLeanPreservation.Obs.overflow\ndef LexLeanPreservation.Conv : LexLeanTarget.TargetSyntax.Program →\n List (Nat × LexLeanTarget.TargetSyntax.Value) → LexLeanTarget.TargetSyntax.Expr → LexLeanPreservation.Obs → Prop :=\nfun p env e o => ∃ n, LexLeanPreservation.obs (LexLeanTarget.TargetSemantics.eval n p env e) = some o\ndef LexLeanPreservation.FunRel : LexLeanTarget.TargetSyntax.Program →\n Nat → List LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs → Prop :=\nfun p f args o =>\n ∃ fn,\n LexLeanRuntime.index p.functions f = some fn ∧\n ∃ env,\n LexLeanTarget.TargetSemantics.bindAll fn.parameters args [] = some env ∧\n LexLeanPreservation.Conv p env fn.body o\ndef LexLeanPreservation.RunConv : LexLeanTarget.TargetSyntax.Program →\n Nat → List LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs → Prop :=\nfun p entry args o => ∃ n, LexLeanPreservation.obs (LexLeanTarget.TargetSemantics.run n p entry args) = some o\ndef LexLeanPreservation.Rust.WT : LexLeanTarget.TargetSyntax.Program →\n LexLeanPreservation.Rust.RCrate →\n LexLeanPreservation.Rust.Flags → LexLeanTarget.TargetSyntax.Value → LexLeanTarget.TargetSyntax.Ty → Prop :=\nfun p c A x x_1 =>\n x.brecOn (LexLeanPreservation.Rust.WT._f p c A)\n (fun t f => ⟨LexLeanPreservation.Rust.WTL._f p c A t f, LexLeanPreservation.Rust.WTAll._f p c A t f⟩) x_1\ndef LexLeanPreservation.Rust.WTL : LexLeanTarget.TargetSyntax.Program →\n LexLeanPreservation.Rust.RCrate →\n LexLeanPreservation.Rust.Flags →\n List LexLeanTarget.TargetSyntax.Value → List LexLeanTarget.TargetSyntax.Ty → Prop :=\nfun p c A x x_1 =>\n (LexLeanTarget.TargetSyntax.Value.brecOn_1 x (LexLeanPreservation.Rust.WT._f p c A) fun t f =>\n ⟨LexLeanPreservation.Rust.WTL._f p c A t f, LexLeanPreservation.Rust.WTAll._f p c A t f⟩).1\n x_1\ndef LexLeanPreservation.Rust.fnIdent : Nat → LexLeanPreservation.Rust.RIdent :=\nfun f => LexLeanTarget.RustSyntax.Ident.generated LexLeanTarget.RustSyntax.IdentKind.function f\ndef LexLeanPreservation.Rust.fnFallible : LexLeanPreservation.Rust.RCrate → Nat → Option Bool :=\nfun c f =>\n Option.map (fun fn => LexLeanTarget.RustSemantics.fallibleType fn.snd.fst)\n (LexLeanTarget.RustSemantics.findFunction c.items (LexLeanPreservation.Rust.fnIdent f))\ndef LexLeanPreservation.Rust.RCI : LexLeanPreservation.Rust.RCrate →\n LexLeanPreservation.Rust.RIdent → List LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Rust.ROut → Prop :=\nfun c f args o =>\n o ≠ LexLeanTarget.RustSemantics.ROutcome.exhausted ∧ ∃ n, LexLeanTarget.RustSemantics.invoke n c f args = o\ndef LexLeanPreservation.Rust.Realizes : Bool → LexLeanPreservation.Obs → LexLeanPreservation.Rust.ROut → Prop :=\nfun fl x x_1 =>\n match x, x_1 with\n | LexLeanPreservation.Obs.value v, LexLeanTarget.RustSemantics.ROutcome.value w => w = v\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.raise => fl = true\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.abort => True\n | x, x_2 => False\ndef LexLeanPreservation.Rust.RealizesFn : Bool → LexLeanPreservation.Obs → LexLeanPreservation.Rust.ROut → Prop :=\nfun fallible x x_1 =>\n match x, x_1 with\n | LexLeanPreservation.Obs.value v, LexLeanTarget.RustSemantics.ROutcome.value w => w = bif fallible then v.ok else v\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.value w =>\n fallible = true ∧ w = LexLeanTarget.TargetSyntax.Value.unit.error\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.abort => True\n | x, x_2 => False\ndef LexLeanPreservation.Rust.FunSem : LexLeanTarget.TargetSyntax.Program →\n LexLeanPreservation.Rust.RCrate → LexLeanPreservation.Rust.Flags → Nat → Nat → Prop :=\nfun p c A n f =>\n ∀ (fn : LexLeanTarget.TargetSyntax.Function) (args : List LexLeanTarget.TargetSyntax.Value)\n (env : List (Nat × LexLeanTarget.TargetSyntax.Value)) (F : Bool),\n LexLeanRuntime.index p.functions f = some fn →\n LexLeanPreservation.Rust.WTL p c A args fn.types →\n LexLeanTarget.TargetSemantics.bindAll fn.parameters args [] = some env →\n LexLeanPreservation.Rust.fnFallible c f = some F →\n ∀ (o : LexLeanPreservation.Obs),\n LexLeanPreservation.obs (LexLeanTarget.TargetSemantics.eval n p env fn.body) = some o →\n o ≠ LexLeanPreservation.Obs.stuck →\n (∀ (v : LexLeanTarget.TargetSyntax.Value),\n o = LexLeanPreservation.Obs.value v → LexLeanPreservation.Rust.WT p c A v fn.result) ∧\n ∃ ro,\n LexLeanPreservation.Rust.RealizesFn F o ro ∧\n LexLeanPreservation.Rust.RCI c (LexLeanPreservation.Rust.fnIdent f) args ro\ndef LexLeanPreservation.someObs : LexLeanPreservation.Obs → LexLeanPreservation.Obs :=\nfun x =>\n match x with\n | LexLeanPreservation.Obs.value v => LexLeanPreservation.Obs.value v.some\n | LexLeanPreservation.Obs.overflow => LexLeanPreservation.Obs.overflow\n | LexLeanPreservation.Obs.stuck => LexLeanPreservation.Obs.stuck\ndef LexLeanPreservation.Rust.Representable : LexLeanTarget.TargetSyntax.Value → Prop :=\nfun x => x.brecOn LexLeanPreservation.Rust.Representable._f LexLeanPreservation.Rust.RepresentableL._f\ndef LexLeanPreservation.Rust.RepresentableL : List LexLeanTarget.TargetSyntax.Value → Prop :=\nfun x =>\n LexLeanTarget.TargetSyntax.Value.brecOn_1 x LexLeanPreservation.Rust.Representable._f\n LexLeanPreservation.Rust.RepresentableL._f\nLexLeanPreservation.Rust.runItem_abort_infallible : ∀ (profile : LexLeanTarget.RustSyntax.Profile)\n (item : LexLeanTarget.RustSyntax.Item) (values : List LexLeanTarget.TargetSyntax.Value),\n LexLeanTarget.RustSemantics.runItem profile item values = LexLeanTarget.RustSemantics.ROutcome.abort →\n LexLeanTarget.RustSemantics.itemFallible item = false\n","stdout_sha256":"cb5e66ad9f6e159b3db848719f8d394d2fb2a1686a78c95c12bf79b8726808bb","tool":"lean"} diff --git a/bootstrap/expected/verify/process/preserve/LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.Compose.RustStd.json b/bootstrap/expected/verify/process/preserve/LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.Compose.RustStd.json new file mode 100644 index 000000000..0e7e4b63f --- /dev/null +++ b/bootstrap/expected/verify/process/preserve/LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C5ba510b7049a3e59c5f1ffb1f0a6611d/R0/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C5ba510b7049a3e59c5f1ffb1f0a6611d/R0/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/bootstrap/expected/verify/process/preserve/LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.RustStd.json b/bootstrap/expected/verify/process/preserve/LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.RustStd.json new file mode 100644 index 000000000..6194f93f3 --- /dev/null +++ b/bootstrap/expected/verify/process/preserve/LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C5ba510b7049a3e59c5f1ffb1f0a6611d/R0/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C5ba510b7049a3e59c5f1ffb1f0a6611d/R0/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/bootstrap/expected/verify/process/preserve/LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.json b/bootstrap/expected/verify/process/preserve/LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.json new file mode 100644 index 000000000..d77e21969 --- /dev/null +++ b/bootstrap/expected/verify/process/preserve/LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C5ba510b7049a3e59c5f1ffb1f0a6611d/R0.olean","$STAGING/preserve-src/LexLeanPreserve/C5ba510b7049a3e59c5f1ffb1f0a6611d/R0.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R0","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/bootstrap/expected/verify/process/preserve/LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.Compose.RustStd.json b/bootstrap/expected/verify/process/preserve/LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.Compose.RustStd.json new file mode 100644 index 000000000..bed778d98 --- /dev/null +++ b/bootstrap/expected/verify/process/preserve/LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C5ba510b7049a3e59c5f1ffb1f0a6611d/R1/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C5ba510b7049a3e59c5f1ffb1f0a6611d/R1/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/bootstrap/expected/verify/process/preserve/LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.RustStd.json b/bootstrap/expected/verify/process/preserve/LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.RustStd.json new file mode 100644 index 000000000..36b4ee93e --- /dev/null +++ b/bootstrap/expected/verify/process/preserve/LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C5ba510b7049a3e59c5f1ffb1f0a6611d/R1/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C5ba510b7049a3e59c5f1ffb1f0a6611d/R1/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/bootstrap/expected/verify/process/preserve/LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.json b/bootstrap/expected/verify/process/preserve/LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.json new file mode 100644 index 000000000..0c869348b --- /dev/null +++ b/bootstrap/expected/verify/process/preserve/LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C5ba510b7049a3e59c5f1ffb1f0a6611d/R1.olean","$STAGING/preserve-src/LexLeanPreserve/C5ba510b7049a3e59c5f1ffb1f0a6611d/R1.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5ba510b7049a3e59c5f1ffb1f0a6611d.R1","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/bootstrap/expected/verify/process/preserve/LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.Compose.RustStd.json b/bootstrap/expected/verify/process/preserve/LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.Compose.RustStd.json deleted file mode 100644 index 7098b7104..000000000 --- a/bootstrap/expected/verify/process/preserve/LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cadb40bbfc73b1dc6b7a95dab0c348a27/R0/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cadb40bbfc73b1dc6b7a95dab0c348a27/R0/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/bootstrap/expected/verify/process/preserve/LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.RustStd.json b/bootstrap/expected/verify/process/preserve/LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.RustStd.json deleted file mode 100644 index 800c23f38..000000000 --- a/bootstrap/expected/verify/process/preserve/LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cadb40bbfc73b1dc6b7a95dab0c348a27/R0/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cadb40bbfc73b1dc6b7a95dab0c348a27/R0/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/bootstrap/expected/verify/process/preserve/LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.json b/bootstrap/expected/verify/process/preserve/LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.json deleted file mode 100644 index 2a19ce569..000000000 --- a/bootstrap/expected/verify/process/preserve/LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cadb40bbfc73b1dc6b7a95dab0c348a27/R0.olean","$STAGING/preserve-src/LexLeanPreserve/Cadb40bbfc73b1dc6b7a95dab0c348a27/R0.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R0","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/bootstrap/expected/verify/process/preserve/LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.Compose.RustStd.json b/bootstrap/expected/verify/process/preserve/LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.Compose.RustStd.json deleted file mode 100644 index c564c6c10..000000000 --- a/bootstrap/expected/verify/process/preserve/LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cadb40bbfc73b1dc6b7a95dab0c348a27/R1/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cadb40bbfc73b1dc6b7a95dab0c348a27/R1/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/bootstrap/expected/verify/process/preserve/LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.RustStd.json b/bootstrap/expected/verify/process/preserve/LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.RustStd.json deleted file mode 100644 index ccf290554..000000000 --- a/bootstrap/expected/verify/process/preserve/LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cadb40bbfc73b1dc6b7a95dab0c348a27/R1/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cadb40bbfc73b1dc6b7a95dab0c348a27/R1/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/bootstrap/expected/verify/process/preserve/LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.json b/bootstrap/expected/verify/process/preserve/LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.json deleted file mode 100644 index d9ffe7ddf..000000000 --- a/bootstrap/expected/verify/process/preserve/LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cadb40bbfc73b1dc6b7a95dab0c348a27/R1.olean","$STAGING/preserve-src/LexLeanPreserve/Cadb40bbfc73b1dc6b7a95dab0c348a27/R1.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cadb40bbfc73b1dc6b7a95dab0c348a27.R1","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/bootstrap/lexlean.lock b/bootstrap/lexlean.lock index 3777d8347..361203945 100644 --- a/bootstrap/lexlean.lock +++ b/bootstrap/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "7165f2fed5d1b4ece471ea2b9fdbf107c48272617d8bd5d3875f719e2aecc0ef" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/compiler/expected/build/manifest.json b/compiler/expected/build/manifest.json index c9799fdcc..e4a22935c 100644 --- a/compiler/expected/build/manifest.json +++ b/compiler/expected/build/manifest.json @@ -1 +1 @@ -{"build_id":"d2394dbebd54cfcf1112d8ad33dc297bd885b2402527bdc929307f6e067f18e8","compiler":{"semantics_id":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","version":"0.3.0"},"inputs":[{"byte_length":2684,"kind":"lexicon","path":"embedded","sha256":"3bc0fb09d706ffa7d5a1363302ea87c049acc7c7dcafde63c62682620c11be9b"},{"byte_length":14885,"kind":"lexicon","path":"embedded","sha256":"e0db021e01b91d651c43921d66f6b0023c8efbf17cac2ec53192ce5305e4e1ac"},{"byte_length":36197,"kind":"lexicon","path":"embedded","sha256":"827317cae68c162f3a96c8a8de4e53ab348e7d3724fd2b834fa85ecde1a1b392"},{"byte_length":1597,"kind":"lock","path":"lexlean.lock","sha256":"759ffb53325d73f0c6eae858adee03cdf7c7f22e952526dfe5dcea6a2e837f3f"},{"byte_length":643,"kind":"project-config","path":"lexlean.toml","sha256":"ef58478b65de0ad784269ab3513059f5afbb7f461bda9476efce78344301755e"},{"byte_length":4612,"kind":"source","path":"src/BudgetOracle.lex.tex","sha256":"c6545653dc603ec6710e038653686bd57e4b0e71fe362957cb0f0a5722898802"},{"byte_length":47895,"kind":"source","path":"src/Certification.lex.tex","sha256":"7e011c2fefdfd08c3f9d41a5cf5c891d72495aae7d4bc1e0b5d31a9d364c07fb"},{"byte_length":100847,"kind":"source","path":"src/Gnaf.lex.tex","sha256":"21b9c9174ae33fe77204e196a29a51463f2c9a400f7b305d33591c54f31d798d"},{"byte_length":105623,"kind":"source","path":"src/GnafCertificates.lex.tex","sha256":"498dafa5093f56f0a05bbddb58875aebc0769325386f2ca611f3a101d9368f64"},{"byte_length":680712,"kind":"source","path":"src/GnafFixtures.lex.tex","sha256":"e7f06e087d0ec40b8dd61f2fe1c51258ec55d93f5e5e16938c27598661e8d913"},{"byte_length":5030,"kind":"source","path":"src/GradeOracle.lex.tex","sha256":"1e19782f0fd76c6d49b5f7f5f29569f8f52b5d91397f0ec9921286cdd03b0fd0"},{"byte_length":811,"kind":"source","path":"src/Main.lex.tex","sha256":"a26d3c220ec1352dd96565ac2308c1684a945a98e1210b3dfaab30cd76dc1875"},{"byte_length":8685,"kind":"source","path":"src/PlannerOracle.lex.tex","sha256":"8579b13fcc26a5bdd3323388f400d1b0b805359f96fe4beea29b26bbaa79f50b"},{"byte_length":699968,"kind":"source","path":"src/ReasoningFixtures.lex.tex","sha256":"21de0c44ebce81bb7bb1b05a6e29815cc2e6c19a58a4c85459110bf3fd1dee9c"},{"byte_length":27419,"kind":"source","path":"src/ReasoningOracle.lex.tex","sha256":"7d5e680324c4fbffa4b8906aefe2e502d20994ff8cdaf223eb385e814bec77bb"},{"byte_length":103523,"kind":"source","path":"src/RustSemantics.lex.tex","sha256":"183644ea3d81403440add2ca225c82d462dde21a7c5a7928d2c313a12e9242b3"},{"byte_length":7619,"kind":"source","path":"src/RustSyntax.lex.tex","sha256":"9cbc4da6fc9441a03954f0979cbe4812aae0426811932e6ff1d6661043d3611f"},{"byte_length":3620,"kind":"source","path":"src/ScreeningOracle.lex.tex","sha256":"23fe7cb8804846c5418204184105f7381f5f36ddd2cdd1beec466416b5d12cb9"},{"byte_length":654074,"kind":"source","path":"src/TargetFixtures.lex.tex","sha256":"d746739ea3e78234f7a68280dc068d39b84f4064298a37383a8dc645bc188c27"},{"byte_length":2490,"kind":"source","path":"src/TargetOracle.lex.tex","sha256":"e34fca12090e04d8a853d4edfc9ae8db46d09ec586f2820f25d69c8ab3a7fb2d"},{"byte_length":426639,"kind":"source","path":"src/TargetSemantics.lex.tex","sha256":"92551ec717ba14a68c53203b5ea1f68359902201116de69c2816668038eb4a60"},{"byte_length":5518,"kind":"source","path":"src/TargetSyntax.lex.tex","sha256":"943d39daf9ece2d492cf8b15ba2df218f84031dbf0757b8ee765d240df55276e"}],"language":"1.2","lean_toolchain":"leanprover/lean4:v4.32.1","modules":[{"lean_module":"LexLeanTarget.BudgetOracle","module":"BudgetOracle","source_path":"src/BudgetOracle.lex.tex"},{"lean_module":"LexLeanTarget.Certification","module":"Certification","source_path":"src/Certification.lex.tex"},{"lean_module":"LexLeanTarget.Gnaf","module":"Gnaf","source_path":"src/Gnaf.lex.tex"},{"lean_module":"LexLeanTarget.GnafCertificates","module":"GnafCertificates","source_path":"src/GnafCertificates.lex.tex"},{"lean_module":"LexLeanTarget.GnafFixtures","module":"GnafFixtures","source_path":"src/GnafFixtures.lex.tex"},{"lean_module":"LexLeanTarget.GradeOracle","module":"GradeOracle","source_path":"src/GradeOracle.lex.tex"},{"lean_module":"LexLeanTarget.Main","module":"Main","source_path":"src/Main.lex.tex"},{"lean_module":"LexLeanTarget.PlannerOracle","module":"PlannerOracle","source_path":"src/PlannerOracle.lex.tex"},{"lean_module":"LexLeanTarget.ReasoningFixtures","module":"ReasoningFixtures","source_path":"src/ReasoningFixtures.lex.tex"},{"lean_module":"LexLeanTarget.ReasoningOracle","module":"ReasoningOracle","source_path":"src/ReasoningOracle.lex.tex"},{"lean_module":"LexLeanTarget.RustSemantics","module":"RustSemantics","source_path":"src/RustSemantics.lex.tex"},{"lean_module":"LexLeanTarget.RustSyntax","module":"RustSyntax","source_path":"src/RustSyntax.lex.tex"},{"lean_module":"LexLeanTarget.ScreeningOracle","module":"ScreeningOracle","source_path":"src/ScreeningOracle.lex.tex"},{"lean_module":"LexLeanTarget.TargetFixtures","module":"TargetFixtures","source_path":"src/TargetFixtures.lex.tex"},{"lean_module":"LexLeanTarget.TargetOracle","module":"TargetOracle","source_path":"src/TargetOracle.lex.tex"},{"lean_module":"LexLeanTarget.TargetSemantics","module":"TargetSemantics","source_path":"src/TargetSemantics.lex.tex"},{"lean_module":"LexLeanTarget.TargetSyntax","module":"TargetSyntax","source_path":"src/TargetSyntax.lex.tex"}],"outputs":[{"byte_length":11181,"kind":"coverage","path":"coverage/LexLeanTarget/BudgetOracle.coverage.json","sha256":"4c38c35c5f0cf117c7cfc0139ea1d78d74ba3687f38e2b90783bb5b92b6cd064"},{"byte_length":27889,"kind":"coverage","path":"coverage/LexLeanTarget/Certification.coverage.json","sha256":"d1fd9f61561ef5bf24e63f9909565eb91ae3ab75c0dcb99fe3d58c683536af92"},{"byte_length":49254,"kind":"coverage","path":"coverage/LexLeanTarget/Gnaf.coverage.json","sha256":"0d50115903a6801a603450a86c3916b027d999d99a86635329fb894f776f92ad"},{"byte_length":57711,"kind":"coverage","path":"coverage/LexLeanTarget/GnafCertificates.coverage.json","sha256":"11987f846c4397e765f1678df11775374c59d34dc8c5943d8929d71297760633"},{"byte_length":66645,"kind":"coverage","path":"coverage/LexLeanTarget/GnafFixtures.coverage.json","sha256":"bd9dab4cd246a183b9db20001c3b172ca748b474553f1bc30b14f6d0dda92734"},{"byte_length":10429,"kind":"coverage","path":"coverage/LexLeanTarget/GradeOracle.coverage.json","sha256":"394cf22f3967a4e544cb42caf7005a4c557bd63b56c465d58ad251179d555fc2"},{"byte_length":16662,"kind":"coverage","path":"coverage/LexLeanTarget/Main.coverage.json","sha256":"ac5e6c5061f44d9d2708be6a63546834eba79fecbb2230b0e3458c5af3c43989"},{"byte_length":15869,"kind":"coverage","path":"coverage/LexLeanTarget/PlannerOracle.coverage.json","sha256":"68fa5c011e011d56e6d0273084d5af91f1783d733ee710eab3a25b1a7cb4b391"},{"byte_length":34095,"kind":"coverage","path":"coverage/LexLeanTarget/ReasoningFixtures.coverage.json","sha256":"12c71e696f141058f795f256a1b658b73cbe5523fc418807ee163e4a8100b901"},{"byte_length":21934,"kind":"coverage","path":"coverage/LexLeanTarget/ReasoningOracle.coverage.json","sha256":"c4e1e0cc85511589d275588b731d2c0dea9ed3f9ad7f3a6dfb3804175767ed73"},{"byte_length":19509,"kind":"coverage","path":"coverage/LexLeanTarget/RustSemantics.coverage.json","sha256":"a1db132f98ddbcf22dc61de28715de5a4e328728ec2b47c0c626ba1d3dafde74"},{"byte_length":12534,"kind":"coverage","path":"coverage/LexLeanTarget/RustSyntax.coverage.json","sha256":"b3469906edbf88096e355b158222af2ff743d2b6c623562c452d152a9cf571c9"},{"byte_length":11293,"kind":"coverage","path":"coverage/LexLeanTarget/ScreeningOracle.coverage.json","sha256":"05a35bfd9204fc4711116a6323cfb3f9ce195f93a03523af68705039d8bbb068"},{"byte_length":101228,"kind":"coverage","path":"coverage/LexLeanTarget/TargetFixtures.coverage.json","sha256":"6624fc93ffffd63b7abc490cef8be822fa432ae5231488dbb57000faedecb56d"},{"byte_length":9389,"kind":"coverage","path":"coverage/LexLeanTarget/TargetOracle.coverage.json","sha256":"027cf182140446894d350ce94a425b754b854d31bfdd65c147fb4a8aa5f3ceef"},{"byte_length":17711,"kind":"coverage","path":"coverage/LexLeanTarget/TargetSemantics.coverage.json","sha256":"8c2275847f042368e2bed11862523e1c96d7cc4a56a66c954ab43f47ff9735a0"},{"byte_length":9810,"kind":"coverage","path":"coverage/LexLeanTarget/TargetSyntax.coverage.json","sha256":"6a2a365549546bf5b1ea4f2df51775ba3054c8be4e121c8594cf0868c5433524"},{"byte_length":63974,"kind":"lean","path":"modules/LexLeanTarget/BudgetOracle.lean","sha256":"33061e2080b80d31a3042e667c3f7ab7090051efcf5e67d5f0b4c384b1699cff"},{"byte_length":43091,"kind":"lean","path":"modules/LexLeanTarget/Certification.lean","sha256":"0484010f2efcdb78dd9bb28c7294d41f1587af73993e1f15466b1f372019ab6a"},{"byte_length":84874,"kind":"lean","path":"modules/LexLeanTarget/Gnaf.lean","sha256":"962a93bd8f993c56c9bdfafd527fe52c49a3868fc2180460ee11292f21898c9e"},{"byte_length":105947,"kind":"lean","path":"modules/LexLeanTarget/GnafCertificates.lean","sha256":"3fac84aa9e8110b50cc2cf24ff9d4f49d1a7b49a816137f43497b6c3c5e78f09"},{"byte_length":850353,"kind":"lean","path":"modules/LexLeanTarget/GnafFixtures.lean","sha256":"ca5db55769dfd1579762d2b5b6a004213895dbff0bb498dc10743d863d2a2315"},{"byte_length":44805,"kind":"lean","path":"modules/LexLeanTarget/GradeOracle.lean","sha256":"ea724bef2e4aafca56bc03452d8da8935c360841481997fc9b04bec7d205719f"},{"byte_length":1128,"kind":"lean","path":"modules/LexLeanTarget/Main.lean","sha256":"cb359700a417929e8ff9dbb35fd9ff41f0eda211b7c36009d7b7e92d7baeff13"},{"byte_length":171727,"kind":"lean","path":"modules/LexLeanTarget/PlannerOracle.lean","sha256":"a1590a1076cfca401cb1bfb72ca5b07363752f56ab4eae07f147d16b6d8e145c"},{"byte_length":896707,"kind":"lean","path":"modules/LexLeanTarget/ReasoningFixtures.lean","sha256":"cccf75a8f6c6d61da06a30177ab5001ec36132d16ee916d46c6d102d781a8d20"},{"byte_length":151030,"kind":"lean","path":"modules/LexLeanTarget/ReasoningOracle.lean","sha256":"ac78fb8128e5b859ed9b00bcfebdd57db1db0e3a1b9b95c54e92f6ecb77e17c1"},{"byte_length":86991,"kind":"lean","path":"modules/LexLeanTarget/RustSemantics.lean","sha256":"e19e285327ea0eead677ef40d4fb3a9d0b297570e432c4ee357af7a7abc9b6b9"},{"byte_length":4479,"kind":"lean","path":"modules/LexLeanTarget/RustSyntax.lean","sha256":"868130ffaf54b20c9941a5aa4f7020c4a2ee403f4ca5dc4624fd3199d50e4b54"},{"byte_length":45937,"kind":"lean","path":"modules/LexLeanTarget/ScreeningOracle.lean","sha256":"6e65882bc5d2591f8b4da728f510478a6aa621d92e718ab918cbec4c5327f368"},{"byte_length":802797,"kind":"lean","path":"modules/LexLeanTarget/TargetFixtures.lean","sha256":"2aa09bdc3b28620ffbf96e843d59c667ac7836c704951e95f7d14fcc93d56a9c"},{"byte_length":2355,"kind":"lean","path":"modules/LexLeanTarget/TargetOracle.lean","sha256":"473b7729d1679099d5b81865f794eff6a68308c9cfa3b0ca61d8d1c7eadfffc3"},{"byte_length":343014,"kind":"lean","path":"modules/LexLeanTarget/TargetSemantics.lean","sha256":"f8f6c6085c0dd1bbc8b6cd8fc49d4c3800e65c9c0033874c735341edef1291b9"},{"byte_length":2780,"kind":"lean","path":"modules/LexLeanTarget/TargetSyntax.lean","sha256":"c0e0bb061cfcdc7e7f4434e13fc8b7298dcb701db9ea8189e012d8068e04ee0c"},{"byte_length":10610,"kind":"lexicon-closure","path":"lexicons/BudgetOracle.closure.json","sha256":"77b793d6eeb5f55f9ee2676c6e61ecfcf8a47b1c7686bf8b5b82ed885098b3e5"},{"byte_length":10611,"kind":"lexicon-closure","path":"lexicons/Certification.closure.json","sha256":"14e70294074a52b88964920e91dbd1aec0c4ffe1d92a5c1d9e088a3cd3ae4630"},{"byte_length":10602,"kind":"lexicon-closure","path":"lexicons/Gnaf.closure.json","sha256":"bf67edea690a60515a1852bd8ce58435814a28f3c729c184ed9e1416095dec25"},{"byte_length":10614,"kind":"lexicon-closure","path":"lexicons/GnafCertificates.closure.json","sha256":"091d8cfb8676ac6b1863e0ee193aca1dff96149c6174590d429cb663d3a26b2c"},{"byte_length":10610,"kind":"lexicon-closure","path":"lexicons/GnafFixtures.closure.json","sha256":"40c76800549e30b23ec113ded9ec8507304bc1b731f556d9ff2ffff6926aa97d"},{"byte_length":10609,"kind":"lexicon-closure","path":"lexicons/GradeOracle.closure.json","sha256":"b00cae435e73a9572c6db7dfd4591933c5a96e318ff62494abbb5083ecfd9a25"},{"byte_length":10602,"kind":"lexicon-closure","path":"lexicons/Main.closure.json","sha256":"727110f90daff26a2e5eb8069fcefecd5790c1264f5d6d4b2ef57db1c2bfb867"},{"byte_length":10611,"kind":"lexicon-closure","path":"lexicons/PlannerOracle.closure.json","sha256":"f29a6aa1f51c4b5482937e400c71fc118ef91bf1ddbc4076634f1ac32da50ca0"},{"byte_length":10615,"kind":"lexicon-closure","path":"lexicons/ReasoningFixtures.closure.json","sha256":"47757b8545a4270046b387e54f183e44288d14b5b5ae1e0b7a939731582d445e"},{"byte_length":10613,"kind":"lexicon-closure","path":"lexicons/ReasoningOracle.closure.json","sha256":"291571e44ca093a6966ef282b10abcfaff1a0e0ff6e909f543cbb16924dbdaec"},{"byte_length":10611,"kind":"lexicon-closure","path":"lexicons/RustSemantics.closure.json","sha256":"152f56877c9492f618bfc1eb44a6d8eb04d8ffb1e05c52f685a98efe173b9c6b"},{"byte_length":10608,"kind":"lexicon-closure","path":"lexicons/RustSyntax.closure.json","sha256":"d000985e33e8be7f26117319c5adb68380f9e7c44977c65e112e80472428cd79"},{"byte_length":10613,"kind":"lexicon-closure","path":"lexicons/ScreeningOracle.closure.json","sha256":"6653713be4bb8465a19c48088477644f2065431e1008ff3b9371401eaaa011f4"},{"byte_length":10612,"kind":"lexicon-closure","path":"lexicons/TargetFixtures.closure.json","sha256":"40cf03e3d335319ccbd3328e8eff2af5867f25d16c05d8f2303ff1ba414b57a1"},{"byte_length":10610,"kind":"lexicon-closure","path":"lexicons/TargetOracle.closure.json","sha256":"7834c4ed29b8d8fc6acd24325adba002e08e766d77f5b5a3e64afe6aab086b1f"},{"byte_length":10613,"kind":"lexicon-closure","path":"lexicons/TargetSemantics.closure.json","sha256":"5649cb299c72ad2bf7cd8ff70369be255cd0f52c7cc980807e6e1a7544f884c9"},{"byte_length":10610,"kind":"lexicon-closure","path":"lexicons/TargetSyntax.closure.json","sha256":"c1860f7ba449c93990d46c5f27eeeaabf17e319169e0a37fe21efc12999de2aa"},{"byte_length":6212,"kind":"map","path":"maps/LexLeanTarget/BudgetOracle.map.json","sha256":"82b30850badc7158d13074e8a680d37e9503cdd4f4892386fa9f8d62cd281768"},{"byte_length":24054,"kind":"map","path":"maps/LexLeanTarget/Certification.map.json","sha256":"fea6ac044862251351c69d011510910125c1fca77c04819c43044f94e2ddcd30"},{"byte_length":51466,"kind":"map","path":"maps/LexLeanTarget/Gnaf.map.json","sha256":"d964ec1c17bef0b0e8941a6e3d033099e118ba94c85dc027b9698fdb9e9d79d0"},{"byte_length":58783,"kind":"map","path":"maps/LexLeanTarget/GnafCertificates.map.json","sha256":"b72eb0f1fd3d6a85ab576c0454aa916f7aa5b9170589e80cde0bd2c374618f38"},{"byte_length":72111,"kind":"map","path":"maps/LexLeanTarget/GnafFixtures.map.json","sha256":"4b201f5daf0c7f38f26fffff29c84d6a864d7ee4d785ca4e9fe4187792269e53"},{"byte_length":4588,"kind":"map","path":"maps/LexLeanTarget/GradeOracle.map.json","sha256":"eeea52463a6a8af88ee9ef07a98f5cb12a2c1df2ec95c135606bd9faaaabc9e3"},{"byte_length":1352,"kind":"map","path":"maps/LexLeanTarget/Main.map.json","sha256":"c14ec3e226bb7abb1e2d4a465ef486fd20bbe0cd7afb1364bc226873234e5ece"},{"byte_length":11761,"kind":"map","path":"maps/LexLeanTarget/PlannerOracle.map.json","sha256":"0b0eac2565c8dab94d1c31977acdb05bbf1380a003a602da784204c6b5104fb1"},{"byte_length":28320,"kind":"map","path":"maps/LexLeanTarget/ReasoningFixtures.map.json","sha256":"75e160c90a806ed22116ae5288c97357d39e154bc0e3d9d602c3186de66f65ac"},{"byte_length":19059,"kind":"map","path":"maps/LexLeanTarget/ReasoningOracle.map.json","sha256":"2fb8521bed46a5235a61c5eddf73e9a18d7967773211bded71bb0576b8c781e1"},{"byte_length":13888,"kind":"map","path":"maps/LexLeanTarget/RustSemantics.map.json","sha256":"53d3e51d28067db77b654c87f8b54a440155ef7559c4b5baac27601fb2ad5465"},{"byte_length":7165,"kind":"map","path":"maps/LexLeanTarget/RustSyntax.map.json","sha256":"27604dab774f6cc0b2512d9f589133602c77fb95d21af4c5a4ed9b43aa3f8ef2"},{"byte_length":6214,"kind":"map","path":"maps/LexLeanTarget/ScreeningOracle.map.json","sha256":"1757512567fbee782345047edbb4b65915d8106e4a78346dbfbb6b3acd945c18"},{"byte_length":114575,"kind":"map","path":"maps/LexLeanTarget/TargetFixtures.map.json","sha256":"f8db30c2ab8f1f18acb0f83792efe8ca662c586d10e43cd9241b18e33bdf45dc"},{"byte_length":3299,"kind":"map","path":"maps/LexLeanTarget/TargetOracle.map.json","sha256":"7d01b60a28ed1cc92a39822295ad9ab8d5fc90bbf8be123b03d355858bbca874"},{"byte_length":13138,"kind":"map","path":"maps/LexLeanTarget/TargetSemantics.map.json","sha256":"3588e3f80c8c040e444d5609f22583f0e7e2610f4ea35fd8dc5f3aa7b4bb7f79"},{"byte_length":4584,"kind":"map","path":"maps/LexLeanTarget/TargetSyntax.map.json","sha256":"20cadabd883bfd8e58c14e81d3dd4e310948bcdfc474972afbb72cd9781ff4a4"},{"byte_length":34987,"kind":"tex","path":"modules/LexLeanTarget/BudgetOracle.tex","sha256":"e119790e14fb08097a91884bd4d4576ecf25f73b8dfb77cb8a4a6974b9bd139c"},{"byte_length":57133,"kind":"tex","path":"modules/LexLeanTarget/Certification.tex","sha256":"cbed4c0f6e9999f341c5b6d0a46956f21c506c0a3c04512328ae53aa864c6a2e"},{"byte_length":111707,"kind":"tex","path":"modules/LexLeanTarget/Gnaf.tex","sha256":"f0af7a2df200270323f7d392f404b19a93ee74aa973bf12353a519fd9783dbfa"},{"byte_length":132342,"kind":"tex","path":"modules/LexLeanTarget/GnafCertificates.tex","sha256":"b48420c115ae3fa7c592a3ae5fdf9700f65605c7b1697a139c3791e8ff5506f5"},{"byte_length":885281,"kind":"tex","path":"modules/LexLeanTarget/GnafFixtures.tex","sha256":"fe73187797328af446b1920f7895621b6c16a8d2a0874484d163ab5c5ac99722"},{"byte_length":26691,"kind":"tex","path":"modules/LexLeanTarget/GradeOracle.tex","sha256":"660efcdb6b42661eab9deb5d35f2533182161e1126453b76403d0803ae92ac04"},{"byte_length":532,"kind":"tex","path":"modules/LexLeanTarget/Main.tex","sha256":"fb9b15c8eb40ef1542e9d69a6a3a8e9c242855157699cff8453d8c44becc08ec"},{"byte_length":90367,"kind":"tex","path":"modules/LexLeanTarget/PlannerOracle.tex","sha256":"1517be188348a5e8c29ecac93545fa4ac2338e802a7a030bfec7ccc6fb5317f1"},{"byte_length":912884,"kind":"tex","path":"modules/LexLeanTarget/ReasoningFixtures.tex","sha256":"2e3f3cf3328aebec9f71f3b003e371e2f4747156548f4157e26e84d502baac63"},{"byte_length":78159,"kind":"tex","path":"modules/LexLeanTarget/ReasoningOracle.tex","sha256":"9f22e4e59d2b2515287ca787c5bbef1669441372e69d090b8dbfbc4182088896"},{"byte_length":94786,"kind":"tex","path":"modules/LexLeanTarget/RustSemantics.tex","sha256":"49c608b1f2220836d6ddbdd204a91e44cdf44eb75c3a1b12c809d3236a65496e"},{"byte_length":11151,"kind":"tex","path":"modules/LexLeanTarget/RustSyntax.tex","sha256":"6e51a9b399de99a2a43a5742ba9f6d6203055e0c84fe5a39dbe1c03a264c0511"},{"byte_length":27194,"kind":"tex","path":"modules/LexLeanTarget/ScreeningOracle.tex","sha256":"dd053d08d2811509a8659e75b228530b5bff859bb749a955297b965407bf13e4"},{"byte_length":859771,"kind":"tex","path":"modules/LexLeanTarget/TargetFixtures.tex","sha256":"d81cf82e55307a02d34c830cb4e1101cb1c5b2accff59f66cb1836cf186a3de0"},{"byte_length":3601,"kind":"tex","path":"modules/LexLeanTarget/TargetOracle.tex","sha256":"3ac498bbc1902427cc192481895d2370cfb70bc2e5242ecb90ff8e29cb2edb48"},{"byte_length":353998,"kind":"tex","path":"modules/LexLeanTarget/TargetSemantics.tex","sha256":"126ab7711ed907166c1c788f0a3b63535938e5d26ca2666243dacd81b8df2564"},{"byte_length":8406,"kind":"tex","path":"modules/LexLeanTarget/TargetSyntax.tex","sha256":"4e700f7b548f26e0d8b27cb03b236a6c4375296d6ef87c46619aaf19fc2b33fa"}],"project":"compiler","selection":["BudgetOracle","Certification","Gnaf","GnafCertificates","GnafFixtures","GradeOracle","Main","PlannerOracle","ReasoningFixtures","ReasoningOracle","RustSemantics","RustSyntax","ScreeningOracle","TargetFixtures","TargetOracle","TargetSemantics","TargetSyntax"],"semantic_id":"c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517","source_id":"ce718723d5d252a9adafdc3cb3b76931b1d91e053dd3e7e31bcb9b9496a1941c","spec":"lexlean/build-manifest/1"} +{"build_id":"9b7ff20c8459ab3793dc388e4f7f3b8e471483a045e4fc1fd3ff215ffc3b7866","compiler":{"semantics_id":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","version":"0.3.0"},"inputs":[{"byte_length":2684,"kind":"lexicon","path":"embedded","sha256":"3bc0fb09d706ffa7d5a1363302ea87c049acc7c7dcafde63c62682620c11be9b"},{"byte_length":14885,"kind":"lexicon","path":"embedded","sha256":"e0db021e01b91d651c43921d66f6b0023c8efbf17cac2ec53192ce5305e4e1ac"},{"byte_length":36197,"kind":"lexicon","path":"embedded","sha256":"827317cae68c162f3a96c8a8de4e53ab348e7d3724fd2b834fa85ecde1a1b392"},{"byte_length":1597,"kind":"lock","path":"lexlean.lock","sha256":"34a61de298b1122b118c12e65e88953a53855a8d7a23cfcdadbd2eafbaa54f85"},{"byte_length":643,"kind":"project-config","path":"lexlean.toml","sha256":"ef58478b65de0ad784269ab3513059f5afbb7f461bda9476efce78344301755e"},{"byte_length":4612,"kind":"source","path":"src/BudgetOracle.lex.tex","sha256":"c6545653dc603ec6710e038653686bd57e4b0e71fe362957cb0f0a5722898802"},{"byte_length":47895,"kind":"source","path":"src/Certification.lex.tex","sha256":"7e011c2fefdfd08c3f9d41a5cf5c891d72495aae7d4bc1e0b5d31a9d364c07fb"},{"byte_length":100847,"kind":"source","path":"src/Gnaf.lex.tex","sha256":"21b9c9174ae33fe77204e196a29a51463f2c9a400f7b305d33591c54f31d798d"},{"byte_length":105623,"kind":"source","path":"src/GnafCertificates.lex.tex","sha256":"498dafa5093f56f0a05bbddb58875aebc0769325386f2ca611f3a101d9368f64"},{"byte_length":680712,"kind":"source","path":"src/GnafFixtures.lex.tex","sha256":"e7f06e087d0ec40b8dd61f2fe1c51258ec55d93f5e5e16938c27598661e8d913"},{"byte_length":5030,"kind":"source","path":"src/GradeOracle.lex.tex","sha256":"1e19782f0fd76c6d49b5f7f5f29569f8f52b5d91397f0ec9921286cdd03b0fd0"},{"byte_length":811,"kind":"source","path":"src/Main.lex.tex","sha256":"a26d3c220ec1352dd96565ac2308c1684a945a98e1210b3dfaab30cd76dc1875"},{"byte_length":8685,"kind":"source","path":"src/PlannerOracle.lex.tex","sha256":"8579b13fcc26a5bdd3323388f400d1b0b805359f96fe4beea29b26bbaa79f50b"},{"byte_length":699968,"kind":"source","path":"src/ReasoningFixtures.lex.tex","sha256":"21de0c44ebce81bb7bb1b05a6e29815cc2e6c19a58a4c85459110bf3fd1dee9c"},{"byte_length":27419,"kind":"source","path":"src/ReasoningOracle.lex.tex","sha256":"7d5e680324c4fbffa4b8906aefe2e502d20994ff8cdaf223eb385e814bec77bb"},{"byte_length":103523,"kind":"source","path":"src/RustSemantics.lex.tex","sha256":"183644ea3d81403440add2ca225c82d462dde21a7c5a7928d2c313a12e9242b3"},{"byte_length":7619,"kind":"source","path":"src/RustSyntax.lex.tex","sha256":"9cbc4da6fc9441a03954f0979cbe4812aae0426811932e6ff1d6661043d3611f"},{"byte_length":3620,"kind":"source","path":"src/ScreeningOracle.lex.tex","sha256":"23fe7cb8804846c5418204184105f7381f5f36ddd2cdd1beec466416b5d12cb9"},{"byte_length":654074,"kind":"source","path":"src/TargetFixtures.lex.tex","sha256":"d746739ea3e78234f7a68280dc068d39b84f4064298a37383a8dc645bc188c27"},{"byte_length":2490,"kind":"source","path":"src/TargetOracle.lex.tex","sha256":"e34fca12090e04d8a853d4edfc9ae8db46d09ec586f2820f25d69c8ab3a7fb2d"},{"byte_length":426639,"kind":"source","path":"src/TargetSemantics.lex.tex","sha256":"92551ec717ba14a68c53203b5ea1f68359902201116de69c2816668038eb4a60"},{"byte_length":5518,"kind":"source","path":"src/TargetSyntax.lex.tex","sha256":"943d39daf9ece2d492cf8b15ba2df218f84031dbf0757b8ee765d240df55276e"}],"language":"1.2","lean_toolchain":"leanprover/lean4:v4.32.1","modules":[{"lean_module":"LexLeanTarget.BudgetOracle","module":"BudgetOracle","source_path":"src/BudgetOracle.lex.tex"},{"lean_module":"LexLeanTarget.Certification","module":"Certification","source_path":"src/Certification.lex.tex"},{"lean_module":"LexLeanTarget.Gnaf","module":"Gnaf","source_path":"src/Gnaf.lex.tex"},{"lean_module":"LexLeanTarget.GnafCertificates","module":"GnafCertificates","source_path":"src/GnafCertificates.lex.tex"},{"lean_module":"LexLeanTarget.GnafFixtures","module":"GnafFixtures","source_path":"src/GnafFixtures.lex.tex"},{"lean_module":"LexLeanTarget.GradeOracle","module":"GradeOracle","source_path":"src/GradeOracle.lex.tex"},{"lean_module":"LexLeanTarget.Main","module":"Main","source_path":"src/Main.lex.tex"},{"lean_module":"LexLeanTarget.PlannerOracle","module":"PlannerOracle","source_path":"src/PlannerOracle.lex.tex"},{"lean_module":"LexLeanTarget.ReasoningFixtures","module":"ReasoningFixtures","source_path":"src/ReasoningFixtures.lex.tex"},{"lean_module":"LexLeanTarget.ReasoningOracle","module":"ReasoningOracle","source_path":"src/ReasoningOracle.lex.tex"},{"lean_module":"LexLeanTarget.RustSemantics","module":"RustSemantics","source_path":"src/RustSemantics.lex.tex"},{"lean_module":"LexLeanTarget.RustSyntax","module":"RustSyntax","source_path":"src/RustSyntax.lex.tex"},{"lean_module":"LexLeanTarget.ScreeningOracle","module":"ScreeningOracle","source_path":"src/ScreeningOracle.lex.tex"},{"lean_module":"LexLeanTarget.TargetFixtures","module":"TargetFixtures","source_path":"src/TargetFixtures.lex.tex"},{"lean_module":"LexLeanTarget.TargetOracle","module":"TargetOracle","source_path":"src/TargetOracle.lex.tex"},{"lean_module":"LexLeanTarget.TargetSemantics","module":"TargetSemantics","source_path":"src/TargetSemantics.lex.tex"},{"lean_module":"LexLeanTarget.TargetSyntax","module":"TargetSyntax","source_path":"src/TargetSyntax.lex.tex"}],"outputs":[{"byte_length":11181,"kind":"coverage","path":"coverage/LexLeanTarget/BudgetOracle.coverage.json","sha256":"4c38c35c5f0cf117c7cfc0139ea1d78d74ba3687f38e2b90783bb5b92b6cd064"},{"byte_length":27889,"kind":"coverage","path":"coverage/LexLeanTarget/Certification.coverage.json","sha256":"d1fd9f61561ef5bf24e63f9909565eb91ae3ab75c0dcb99fe3d58c683536af92"},{"byte_length":49254,"kind":"coverage","path":"coverage/LexLeanTarget/Gnaf.coverage.json","sha256":"0d50115903a6801a603450a86c3916b027d999d99a86635329fb894f776f92ad"},{"byte_length":57711,"kind":"coverage","path":"coverage/LexLeanTarget/GnafCertificates.coverage.json","sha256":"11987f846c4397e765f1678df11775374c59d34dc8c5943d8929d71297760633"},{"byte_length":66645,"kind":"coverage","path":"coverage/LexLeanTarget/GnafFixtures.coverage.json","sha256":"bd9dab4cd246a183b9db20001c3b172ca748b474553f1bc30b14f6d0dda92734"},{"byte_length":10429,"kind":"coverage","path":"coverage/LexLeanTarget/GradeOracle.coverage.json","sha256":"394cf22f3967a4e544cb42caf7005a4c557bd63b56c465d58ad251179d555fc2"},{"byte_length":16662,"kind":"coverage","path":"coverage/LexLeanTarget/Main.coverage.json","sha256":"ac5e6c5061f44d9d2708be6a63546834eba79fecbb2230b0e3458c5af3c43989"},{"byte_length":15869,"kind":"coverage","path":"coverage/LexLeanTarget/PlannerOracle.coverage.json","sha256":"68fa5c011e011d56e6d0273084d5af91f1783d733ee710eab3a25b1a7cb4b391"},{"byte_length":34095,"kind":"coverage","path":"coverage/LexLeanTarget/ReasoningFixtures.coverage.json","sha256":"12c71e696f141058f795f256a1b658b73cbe5523fc418807ee163e4a8100b901"},{"byte_length":21934,"kind":"coverage","path":"coverage/LexLeanTarget/ReasoningOracle.coverage.json","sha256":"c4e1e0cc85511589d275588b731d2c0dea9ed3f9ad7f3a6dfb3804175767ed73"},{"byte_length":19509,"kind":"coverage","path":"coverage/LexLeanTarget/RustSemantics.coverage.json","sha256":"a1db132f98ddbcf22dc61de28715de5a4e328728ec2b47c0c626ba1d3dafde74"},{"byte_length":12534,"kind":"coverage","path":"coverage/LexLeanTarget/RustSyntax.coverage.json","sha256":"b3469906edbf88096e355b158222af2ff743d2b6c623562c452d152a9cf571c9"},{"byte_length":11293,"kind":"coverage","path":"coverage/LexLeanTarget/ScreeningOracle.coverage.json","sha256":"05a35bfd9204fc4711116a6323cfb3f9ce195f93a03523af68705039d8bbb068"},{"byte_length":101228,"kind":"coverage","path":"coverage/LexLeanTarget/TargetFixtures.coverage.json","sha256":"6624fc93ffffd63b7abc490cef8be822fa432ae5231488dbb57000faedecb56d"},{"byte_length":9389,"kind":"coverage","path":"coverage/LexLeanTarget/TargetOracle.coverage.json","sha256":"027cf182140446894d350ce94a425b754b854d31bfdd65c147fb4a8aa5f3ceef"},{"byte_length":17711,"kind":"coverage","path":"coverage/LexLeanTarget/TargetSemantics.coverage.json","sha256":"8c2275847f042368e2bed11862523e1c96d7cc4a56a66c954ab43f47ff9735a0"},{"byte_length":9810,"kind":"coverage","path":"coverage/LexLeanTarget/TargetSyntax.coverage.json","sha256":"6a2a365549546bf5b1ea4f2df51775ba3054c8be4e121c8594cf0868c5433524"},{"byte_length":63974,"kind":"lean","path":"modules/LexLeanTarget/BudgetOracle.lean","sha256":"33061e2080b80d31a3042e667c3f7ab7090051efcf5e67d5f0b4c384b1699cff"},{"byte_length":43091,"kind":"lean","path":"modules/LexLeanTarget/Certification.lean","sha256":"0484010f2efcdb78dd9bb28c7294d41f1587af73993e1f15466b1f372019ab6a"},{"byte_length":84874,"kind":"lean","path":"modules/LexLeanTarget/Gnaf.lean","sha256":"962a93bd8f993c56c9bdfafd527fe52c49a3868fc2180460ee11292f21898c9e"},{"byte_length":105947,"kind":"lean","path":"modules/LexLeanTarget/GnafCertificates.lean","sha256":"3fac84aa9e8110b50cc2cf24ff9d4f49d1a7b49a816137f43497b6c3c5e78f09"},{"byte_length":850353,"kind":"lean","path":"modules/LexLeanTarget/GnafFixtures.lean","sha256":"ca5db55769dfd1579762d2b5b6a004213895dbff0bb498dc10743d863d2a2315"},{"byte_length":44805,"kind":"lean","path":"modules/LexLeanTarget/GradeOracle.lean","sha256":"ea724bef2e4aafca56bc03452d8da8935c360841481997fc9b04bec7d205719f"},{"byte_length":1128,"kind":"lean","path":"modules/LexLeanTarget/Main.lean","sha256":"cb359700a417929e8ff9dbb35fd9ff41f0eda211b7c36009d7b7e92d7baeff13"},{"byte_length":171727,"kind":"lean","path":"modules/LexLeanTarget/PlannerOracle.lean","sha256":"a1590a1076cfca401cb1bfb72ca5b07363752f56ab4eae07f147d16b6d8e145c"},{"byte_length":896707,"kind":"lean","path":"modules/LexLeanTarget/ReasoningFixtures.lean","sha256":"cccf75a8f6c6d61da06a30177ab5001ec36132d16ee916d46c6d102d781a8d20"},{"byte_length":151030,"kind":"lean","path":"modules/LexLeanTarget/ReasoningOracle.lean","sha256":"ac78fb8128e5b859ed9b00bcfebdd57db1db0e3a1b9b95c54e92f6ecb77e17c1"},{"byte_length":86991,"kind":"lean","path":"modules/LexLeanTarget/RustSemantics.lean","sha256":"e19e285327ea0eead677ef40d4fb3a9d0b297570e432c4ee357af7a7abc9b6b9"},{"byte_length":4479,"kind":"lean","path":"modules/LexLeanTarget/RustSyntax.lean","sha256":"868130ffaf54b20c9941a5aa4f7020c4a2ee403f4ca5dc4624fd3199d50e4b54"},{"byte_length":45937,"kind":"lean","path":"modules/LexLeanTarget/ScreeningOracle.lean","sha256":"6e65882bc5d2591f8b4da728f510478a6aa621d92e718ab918cbec4c5327f368"},{"byte_length":802797,"kind":"lean","path":"modules/LexLeanTarget/TargetFixtures.lean","sha256":"2aa09bdc3b28620ffbf96e843d59c667ac7836c704951e95f7d14fcc93d56a9c"},{"byte_length":2355,"kind":"lean","path":"modules/LexLeanTarget/TargetOracle.lean","sha256":"473b7729d1679099d5b81865f794eff6a68308c9cfa3b0ca61d8d1c7eadfffc3"},{"byte_length":343014,"kind":"lean","path":"modules/LexLeanTarget/TargetSemantics.lean","sha256":"f8f6c6085c0dd1bbc8b6cd8fc49d4c3800e65c9c0033874c735341edef1291b9"},{"byte_length":2780,"kind":"lean","path":"modules/LexLeanTarget/TargetSyntax.lean","sha256":"c0e0bb061cfcdc7e7f4434e13fc8b7298dcb701db9ea8189e012d8068e04ee0c"},{"byte_length":10610,"kind":"lexicon-closure","path":"lexicons/BudgetOracle.closure.json","sha256":"77b793d6eeb5f55f9ee2676c6e61ecfcf8a47b1c7686bf8b5b82ed885098b3e5"},{"byte_length":10611,"kind":"lexicon-closure","path":"lexicons/Certification.closure.json","sha256":"14e70294074a52b88964920e91dbd1aec0c4ffe1d92a5c1d9e088a3cd3ae4630"},{"byte_length":10602,"kind":"lexicon-closure","path":"lexicons/Gnaf.closure.json","sha256":"bf67edea690a60515a1852bd8ce58435814a28f3c729c184ed9e1416095dec25"},{"byte_length":10614,"kind":"lexicon-closure","path":"lexicons/GnafCertificates.closure.json","sha256":"091d8cfb8676ac6b1863e0ee193aca1dff96149c6174590d429cb663d3a26b2c"},{"byte_length":10610,"kind":"lexicon-closure","path":"lexicons/GnafFixtures.closure.json","sha256":"40c76800549e30b23ec113ded9ec8507304bc1b731f556d9ff2ffff6926aa97d"},{"byte_length":10609,"kind":"lexicon-closure","path":"lexicons/GradeOracle.closure.json","sha256":"b00cae435e73a9572c6db7dfd4591933c5a96e318ff62494abbb5083ecfd9a25"},{"byte_length":10602,"kind":"lexicon-closure","path":"lexicons/Main.closure.json","sha256":"727110f90daff26a2e5eb8069fcefecd5790c1264f5d6d4b2ef57db1c2bfb867"},{"byte_length":10611,"kind":"lexicon-closure","path":"lexicons/PlannerOracle.closure.json","sha256":"f29a6aa1f51c4b5482937e400c71fc118ef91bf1ddbc4076634f1ac32da50ca0"},{"byte_length":10615,"kind":"lexicon-closure","path":"lexicons/ReasoningFixtures.closure.json","sha256":"47757b8545a4270046b387e54f183e44288d14b5b5ae1e0b7a939731582d445e"},{"byte_length":10613,"kind":"lexicon-closure","path":"lexicons/ReasoningOracle.closure.json","sha256":"291571e44ca093a6966ef282b10abcfaff1a0e0ff6e909f543cbb16924dbdaec"},{"byte_length":10611,"kind":"lexicon-closure","path":"lexicons/RustSemantics.closure.json","sha256":"152f56877c9492f618bfc1eb44a6d8eb04d8ffb1e05c52f685a98efe173b9c6b"},{"byte_length":10608,"kind":"lexicon-closure","path":"lexicons/RustSyntax.closure.json","sha256":"d000985e33e8be7f26117319c5adb68380f9e7c44977c65e112e80472428cd79"},{"byte_length":10613,"kind":"lexicon-closure","path":"lexicons/ScreeningOracle.closure.json","sha256":"6653713be4bb8465a19c48088477644f2065431e1008ff3b9371401eaaa011f4"},{"byte_length":10612,"kind":"lexicon-closure","path":"lexicons/TargetFixtures.closure.json","sha256":"40cf03e3d335319ccbd3328e8eff2af5867f25d16c05d8f2303ff1ba414b57a1"},{"byte_length":10610,"kind":"lexicon-closure","path":"lexicons/TargetOracle.closure.json","sha256":"7834c4ed29b8d8fc6acd24325adba002e08e766d77f5b5a3e64afe6aab086b1f"},{"byte_length":10613,"kind":"lexicon-closure","path":"lexicons/TargetSemantics.closure.json","sha256":"5649cb299c72ad2bf7cd8ff70369be255cd0f52c7cc980807e6e1a7544f884c9"},{"byte_length":10610,"kind":"lexicon-closure","path":"lexicons/TargetSyntax.closure.json","sha256":"c1860f7ba449c93990d46c5f27eeeaabf17e319169e0a37fe21efc12999de2aa"},{"byte_length":6212,"kind":"map","path":"maps/LexLeanTarget/BudgetOracle.map.json","sha256":"1c1fc0d1a8813af2f0f8f9b515f0675fa5570c3049d95060bbb77a74c495770d"},{"byte_length":24054,"kind":"map","path":"maps/LexLeanTarget/Certification.map.json","sha256":"d6ba39d65c8883a812aa24db3a72d3f7801116c221479729da4a60320ee3fc1b"},{"byte_length":51466,"kind":"map","path":"maps/LexLeanTarget/Gnaf.map.json","sha256":"cf76f396a2b4582ed347fe5abfd31a69dc2a97d460d563e017c2f2332d0a3eaa"},{"byte_length":58783,"kind":"map","path":"maps/LexLeanTarget/GnafCertificates.map.json","sha256":"d23f9e5533365d9bb402f644f9b159305c9d76041df3911d23bf6853681369ea"},{"byte_length":72111,"kind":"map","path":"maps/LexLeanTarget/GnafFixtures.map.json","sha256":"c8792d9c364e06c40e0b77cc0c5e5876130d7f2485e1cf8072a8342ff6e64741"},{"byte_length":4588,"kind":"map","path":"maps/LexLeanTarget/GradeOracle.map.json","sha256":"a9192a5fe5b2dedae29fee2dcfbf99d9423e98f6684a91522b403afe4b3130a8"},{"byte_length":1352,"kind":"map","path":"maps/LexLeanTarget/Main.map.json","sha256":"d54fc2aa6b29103e53b5637e3f34bfdaa068a4357870ee5d03010255a1f00e5f"},{"byte_length":11761,"kind":"map","path":"maps/LexLeanTarget/PlannerOracle.map.json","sha256":"c37a1d2c8257def03d470caa2f83fe78b1e62de99e5eef20a15ffeaf0625b5ba"},{"byte_length":28320,"kind":"map","path":"maps/LexLeanTarget/ReasoningFixtures.map.json","sha256":"83feae52eaf4a6ec6e716de1036593644d599ba0677634dc779a1a7d8b70488f"},{"byte_length":19059,"kind":"map","path":"maps/LexLeanTarget/ReasoningOracle.map.json","sha256":"a3992c225c0536d7ee5b01b3bd700f089a07432246aaeae41f89bdd12d76118e"},{"byte_length":13888,"kind":"map","path":"maps/LexLeanTarget/RustSemantics.map.json","sha256":"a58af46a2b6091ef60fe7b31e9231c28d6e3a27e27f1af6e84eb9ae31f22cf9f"},{"byte_length":7165,"kind":"map","path":"maps/LexLeanTarget/RustSyntax.map.json","sha256":"0595cc88eca24864c625ce46002ec7bd46615e854eb096cd4527e2978bcdba78"},{"byte_length":6214,"kind":"map","path":"maps/LexLeanTarget/ScreeningOracle.map.json","sha256":"9cc9c20c6a6e66608e57206d9e495f4cc6019a43e8a3e28b234bb1897e76454f"},{"byte_length":114575,"kind":"map","path":"maps/LexLeanTarget/TargetFixtures.map.json","sha256":"8a1075b06ffbfc7c135cf0fef2d9925a6511304466d1e5d146865459f5b917cf"},{"byte_length":3299,"kind":"map","path":"maps/LexLeanTarget/TargetOracle.map.json","sha256":"f789db7d7681b2f3dc36d2709cbeeaaebf8b7dd33de7a58334b897501d68ccca"},{"byte_length":13138,"kind":"map","path":"maps/LexLeanTarget/TargetSemantics.map.json","sha256":"bb8bcb5da3abbd7bfdd62db5e99eaf8c4615437cc4098f883935c288f39acab9"},{"byte_length":4584,"kind":"map","path":"maps/LexLeanTarget/TargetSyntax.map.json","sha256":"1bb3f663b285c7a62bedec1dab744a043fe127dc1903d1a1edbb03326aa7715f"},{"byte_length":34987,"kind":"tex","path":"modules/LexLeanTarget/BudgetOracle.tex","sha256":"e119790e14fb08097a91884bd4d4576ecf25f73b8dfb77cb8a4a6974b9bd139c"},{"byte_length":57133,"kind":"tex","path":"modules/LexLeanTarget/Certification.tex","sha256":"cbed4c0f6e9999f341c5b6d0a46956f21c506c0a3c04512328ae53aa864c6a2e"},{"byte_length":111707,"kind":"tex","path":"modules/LexLeanTarget/Gnaf.tex","sha256":"f0af7a2df200270323f7d392f404b19a93ee74aa973bf12353a519fd9783dbfa"},{"byte_length":132342,"kind":"tex","path":"modules/LexLeanTarget/GnafCertificates.tex","sha256":"b48420c115ae3fa7c592a3ae5fdf9700f65605c7b1697a139c3791e8ff5506f5"},{"byte_length":885281,"kind":"tex","path":"modules/LexLeanTarget/GnafFixtures.tex","sha256":"fe73187797328af446b1920f7895621b6c16a8d2a0874484d163ab5c5ac99722"},{"byte_length":26691,"kind":"tex","path":"modules/LexLeanTarget/GradeOracle.tex","sha256":"660efcdb6b42661eab9deb5d35f2533182161e1126453b76403d0803ae92ac04"},{"byte_length":532,"kind":"tex","path":"modules/LexLeanTarget/Main.tex","sha256":"fb9b15c8eb40ef1542e9d69a6a3a8e9c242855157699cff8453d8c44becc08ec"},{"byte_length":90367,"kind":"tex","path":"modules/LexLeanTarget/PlannerOracle.tex","sha256":"1517be188348a5e8c29ecac93545fa4ac2338e802a7a030bfec7ccc6fb5317f1"},{"byte_length":912884,"kind":"tex","path":"modules/LexLeanTarget/ReasoningFixtures.tex","sha256":"2e3f3cf3328aebec9f71f3b003e371e2f4747156548f4157e26e84d502baac63"},{"byte_length":78159,"kind":"tex","path":"modules/LexLeanTarget/ReasoningOracle.tex","sha256":"9f22e4e59d2b2515287ca787c5bbef1669441372e69d090b8dbfbc4182088896"},{"byte_length":94786,"kind":"tex","path":"modules/LexLeanTarget/RustSemantics.tex","sha256":"49c608b1f2220836d6ddbdd204a91e44cdf44eb75c3a1b12c809d3236a65496e"},{"byte_length":11151,"kind":"tex","path":"modules/LexLeanTarget/RustSyntax.tex","sha256":"6e51a9b399de99a2a43a5742ba9f6d6203055e0c84fe5a39dbe1c03a264c0511"},{"byte_length":27194,"kind":"tex","path":"modules/LexLeanTarget/ScreeningOracle.tex","sha256":"dd053d08d2811509a8659e75b228530b5bff859bb749a955297b965407bf13e4"},{"byte_length":859771,"kind":"tex","path":"modules/LexLeanTarget/TargetFixtures.tex","sha256":"d81cf82e55307a02d34c830cb4e1101cb1c5b2accff59f66cb1836cf186a3de0"},{"byte_length":3601,"kind":"tex","path":"modules/LexLeanTarget/TargetOracle.tex","sha256":"3ac498bbc1902427cc192481895d2370cfb70bc2e5242ecb90ff8e29cb2edb48"},{"byte_length":353998,"kind":"tex","path":"modules/LexLeanTarget/TargetSemantics.tex","sha256":"126ab7711ed907166c1c788f0a3b63535938e5d26ca2666243dacd81b8df2564"},{"byte_length":8406,"kind":"tex","path":"modules/LexLeanTarget/TargetSyntax.tex","sha256":"4e700f7b548f26e0d8b27cb03b236a6c4375296d6ef87c46619aaf19fc2b33fa"}],"project":"compiler","selection":["BudgetOracle","Certification","Gnaf","GnafCertificates","GnafFixtures","GradeOracle","Main","PlannerOracle","ReasoningFixtures","ReasoningOracle","RustSemantics","RustSyntax","ScreeningOracle","TargetFixtures","TargetOracle","TargetSemantics","TargetSyntax"],"semantic_id":"e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb","source_id":"965efd311d3549a7c17dd823b4418cfee906beecd273f4bfcafb371c36d9ce99","spec":"lexlean/build-manifest/1"} diff --git a/compiler/expected/build/maps/LexLeanTarget/BudgetOracle.map.json b/compiler/expected/build/maps/LexLeanTarget/BudgetOracle.map.json index 39c3aa6c5..15b2f0313 100644 --- a/compiler/expected/build/maps/LexLeanTarget/BudgetOracle.map.json +++ b/compiler/expected/build/maps/LexLeanTarget/BudgetOracle.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/LexLeanTarget/BudgetOracle.lean"},{"id":1,"kind":"tex","path":"modules/LexLeanTarget/BudgetOracle.tex"}],"mappings":[{"artifact":0,"gen_end":361,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":4612,"src_start":0},{"artifact":0,"gen_end":504,"gen_start":361,"node":1,"role":"declaration","source":0,"src_end":300,"src_start":121},{"artifact":0,"gen_end":585,"gen_start":504,"node":2,"role":"declaration","source":0,"src_end":424,"src_start":302},{"artifact":0,"gen_end":586,"gen_start":585,"node":3,"role":"declaration","source":0,"src_end":564,"src_start":426},{"artifact":0,"gen_end":3695,"gen_start":586,"node":4,"role":"declaration","source":0,"src_end":843,"src_start":566},{"artifact":0,"gen_end":6833,"gen_start":3695,"node":5,"role":"declaration","source":0,"src_end":1154,"src_start":845},{"artifact":0,"gen_end":8270,"gen_start":6833,"node":6,"role":"declaration","source":0,"src_end":1458,"src_start":1156},{"artifact":0,"gen_end":11412,"gen_start":8270,"node":7,"role":"declaration","source":0,"src_end":1761,"src_start":1460},{"artifact":0,"gen_end":14583,"gen_start":11412,"node":8,"role":"declaration","source":0,"src_end":2096,"src_start":1763},{"artifact":0,"gen_end":16253,"gen_start":14583,"node":9,"role":"declaration","source":0,"src_end":2489,"src_start":2098},{"artifact":0,"gen_end":16340,"gen_start":16253,"node":10,"role":"declaration","source":0,"src_end":2608,"src_start":2491},{"artifact":0,"gen_end":16431,"gen_start":16340,"node":11,"role":"declaration","source":0,"src_end":2753,"src_start":2610},{"artifact":0,"gen_end":19498,"gen_start":16431,"node":12,"role":"declaration","source":0,"src_end":2992,"src_start":2755},{"artifact":0,"gen_end":19703,"gen_start":19498,"node":13,"role":"declaration","source":0,"src_end":3200,"src_start":2994},{"artifact":0,"gen_end":22769,"gen_start":19703,"node":14,"role":"declaration","source":0,"src_end":3461,"src_start":3202},{"artifact":0,"gen_end":44710,"gen_start":22769,"node":15,"role":"declaration","source":0,"src_end":4034,"src_start":3463},{"artifact":0,"gen_end":63942,"gen_start":44710,"node":16,"role":"declaration","source":0,"src_end":4576,"src_start":4036},{"artifact":0,"gen_end":63974,"gen_start":63942,"node":0,"role":"declaration","source":0,"src_end":4612,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":17,"role":"declaration","source":0,"src_end":4612,"src_start":0},{"artifact":1,"gen_end":497,"gen_start":134,"node":18,"role":"declaration","source":0,"src_end":300,"src_start":121},{"artifact":1,"gen_end":794,"gen_start":497,"node":19,"role":"declaration","source":0,"src_end":424,"src_start":302},{"artifact":1,"gen_end":1045,"gen_start":794,"node":20,"role":"declaration","source":0,"src_end":564,"src_start":426},{"artifact":1,"gen_end":1428,"gen_start":1045,"node":21,"role":"declaration","source":0,"src_end":843,"src_start":566},{"artifact":1,"gen_end":1836,"gen_start":1428,"node":22,"role":"declaration","source":0,"src_end":1154,"src_start":845},{"artifact":1,"gen_end":3715,"gen_start":1836,"node":23,"role":"declaration","source":0,"src_end":1458,"src_start":1156},{"artifact":1,"gen_end":4133,"gen_start":3715,"node":24,"role":"declaration","source":0,"src_end":1761,"src_start":1460},{"artifact":1,"gen_end":4576,"gen_start":4133,"node":25,"role":"declaration","source":0,"src_end":2096,"src_start":1763},{"artifact":1,"gen_end":6863,"gen_start":4576,"node":26,"role":"declaration","source":0,"src_end":2489,"src_start":2098},{"artifact":1,"gen_end":7154,"gen_start":6863,"node":27,"role":"declaration","source":0,"src_end":2608,"src_start":2491},{"artifact":1,"gen_end":7525,"gen_start":7154,"node":28,"role":"declaration","source":0,"src_end":2753,"src_start":2610},{"artifact":1,"gen_end":7842,"gen_start":7525,"node":29,"role":"declaration","source":0,"src_end":2992,"src_start":2755},{"artifact":1,"gen_end":8490,"gen_start":7842,"node":30,"role":"declaration","source":0,"src_end":3200,"src_start":2994},{"artifact":1,"gen_end":8826,"gen_start":8490,"node":31,"role":"declaration","source":0,"src_end":3461,"src_start":3202},{"artifact":1,"gen_end":22640,"gen_start":8826,"node":32,"role":"declaration","source":0,"src_end":4034,"src_start":3463},{"artifact":1,"gen_end":34972,"gen_start":22640,"node":33,"role":"declaration","source":0,"src_end":4576,"src_start":4036},{"artifact":1,"gen_end":34987,"gen_start":34972,"node":17,"role":"declaration","source":0,"src_end":4612,"src_start":0}],"module":"BudgetOracle","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-latex-module"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"}],"semantic_id":"c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517","source_id":"ce718723d5d252a9adafdc3cb3b76931b1d91e053dd3e7e31bcb9b9496a1941c","sources":[{"id":0,"kind":"file","path":"src/BudgetOracle.lex.tex","sha256":"c6545653dc603ec6710e038653686bd57e4b0e71fe362957cb0f0a5722898802"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/LexLeanTarget/BudgetOracle.lean"},{"id":1,"kind":"tex","path":"modules/LexLeanTarget/BudgetOracle.tex"}],"mappings":[{"artifact":0,"gen_end":361,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":4612,"src_start":0},{"artifact":0,"gen_end":504,"gen_start":361,"node":1,"role":"declaration","source":0,"src_end":300,"src_start":121},{"artifact":0,"gen_end":585,"gen_start":504,"node":2,"role":"declaration","source":0,"src_end":424,"src_start":302},{"artifact":0,"gen_end":586,"gen_start":585,"node":3,"role":"declaration","source":0,"src_end":564,"src_start":426},{"artifact":0,"gen_end":3695,"gen_start":586,"node":4,"role":"declaration","source":0,"src_end":843,"src_start":566},{"artifact":0,"gen_end":6833,"gen_start":3695,"node":5,"role":"declaration","source":0,"src_end":1154,"src_start":845},{"artifact":0,"gen_end":8270,"gen_start":6833,"node":6,"role":"declaration","source":0,"src_end":1458,"src_start":1156},{"artifact":0,"gen_end":11412,"gen_start":8270,"node":7,"role":"declaration","source":0,"src_end":1761,"src_start":1460},{"artifact":0,"gen_end":14583,"gen_start":11412,"node":8,"role":"declaration","source":0,"src_end":2096,"src_start":1763},{"artifact":0,"gen_end":16253,"gen_start":14583,"node":9,"role":"declaration","source":0,"src_end":2489,"src_start":2098},{"artifact":0,"gen_end":16340,"gen_start":16253,"node":10,"role":"declaration","source":0,"src_end":2608,"src_start":2491},{"artifact":0,"gen_end":16431,"gen_start":16340,"node":11,"role":"declaration","source":0,"src_end":2753,"src_start":2610},{"artifact":0,"gen_end":19498,"gen_start":16431,"node":12,"role":"declaration","source":0,"src_end":2992,"src_start":2755},{"artifact":0,"gen_end":19703,"gen_start":19498,"node":13,"role":"declaration","source":0,"src_end":3200,"src_start":2994},{"artifact":0,"gen_end":22769,"gen_start":19703,"node":14,"role":"declaration","source":0,"src_end":3461,"src_start":3202},{"artifact":0,"gen_end":44710,"gen_start":22769,"node":15,"role":"declaration","source":0,"src_end":4034,"src_start":3463},{"artifact":0,"gen_end":63942,"gen_start":44710,"node":16,"role":"declaration","source":0,"src_end":4576,"src_start":4036},{"artifact":0,"gen_end":63974,"gen_start":63942,"node":0,"role":"declaration","source":0,"src_end":4612,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":17,"role":"declaration","source":0,"src_end":4612,"src_start":0},{"artifact":1,"gen_end":497,"gen_start":134,"node":18,"role":"declaration","source":0,"src_end":300,"src_start":121},{"artifact":1,"gen_end":794,"gen_start":497,"node":19,"role":"declaration","source":0,"src_end":424,"src_start":302},{"artifact":1,"gen_end":1045,"gen_start":794,"node":20,"role":"declaration","source":0,"src_end":564,"src_start":426},{"artifact":1,"gen_end":1428,"gen_start":1045,"node":21,"role":"declaration","source":0,"src_end":843,"src_start":566},{"artifact":1,"gen_end":1836,"gen_start":1428,"node":22,"role":"declaration","source":0,"src_end":1154,"src_start":845},{"artifact":1,"gen_end":3715,"gen_start":1836,"node":23,"role":"declaration","source":0,"src_end":1458,"src_start":1156},{"artifact":1,"gen_end":4133,"gen_start":3715,"node":24,"role":"declaration","source":0,"src_end":1761,"src_start":1460},{"artifact":1,"gen_end":4576,"gen_start":4133,"node":25,"role":"declaration","source":0,"src_end":2096,"src_start":1763},{"artifact":1,"gen_end":6863,"gen_start":4576,"node":26,"role":"declaration","source":0,"src_end":2489,"src_start":2098},{"artifact":1,"gen_end":7154,"gen_start":6863,"node":27,"role":"declaration","source":0,"src_end":2608,"src_start":2491},{"artifact":1,"gen_end":7525,"gen_start":7154,"node":28,"role":"declaration","source":0,"src_end":2753,"src_start":2610},{"artifact":1,"gen_end":7842,"gen_start":7525,"node":29,"role":"declaration","source":0,"src_end":2992,"src_start":2755},{"artifact":1,"gen_end":8490,"gen_start":7842,"node":30,"role":"declaration","source":0,"src_end":3200,"src_start":2994},{"artifact":1,"gen_end":8826,"gen_start":8490,"node":31,"role":"declaration","source":0,"src_end":3461,"src_start":3202},{"artifact":1,"gen_end":22640,"gen_start":8826,"node":32,"role":"declaration","source":0,"src_end":4034,"src_start":3463},{"artifact":1,"gen_end":34972,"gen_start":22640,"node":33,"role":"declaration","source":0,"src_end":4576,"src_start":4036},{"artifact":1,"gen_end":34987,"gen_start":34972,"node":17,"role":"declaration","source":0,"src_end":4612,"src_start":0}],"module":"BudgetOracle","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-latex-module"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"}],"semantic_id":"e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb","source_id":"965efd311d3549a7c17dd823b4418cfee906beecd273f4bfcafb371c36d9ce99","sources":[{"id":0,"kind":"file","path":"src/BudgetOracle.lex.tex","sha256":"c6545653dc603ec6710e038653686bd57e4b0e71fe362957cb0f0a5722898802"}],"spec":"lexlean/source-map/1"} diff --git a/compiler/expected/build/maps/LexLeanTarget/Certification.map.json b/compiler/expected/build/maps/LexLeanTarget/Certification.map.json index 0bdf6edef..2b4a95716 100644 --- a/compiler/expected/build/maps/LexLeanTarget/Certification.map.json +++ b/compiler/expected/build/maps/LexLeanTarget/Certification.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/LexLeanTarget/Certification.lean"},{"id":1,"kind":"tex","path":"modules/LexLeanTarget/Certification.tex"}],"mappings":[{"artifact":0,"gen_end":366,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":47895,"src_start":0},{"artifact":0,"gen_end":450,"gen_start":366,"node":1,"role":"declaration","source":0,"src_end":407,"src_start":201},{"artifact":0,"gen_end":576,"gen_start":450,"node":2,"role":"declaration","source":0,"src_end":657,"src_start":409},{"artifact":0,"gen_end":636,"gen_start":576,"node":3,"role":"declaration","source":0,"src_end":792,"src_start":659},{"artifact":0,"gen_end":832,"gen_start":636,"node":4,"role":"declaration","source":0,"src_end":1116,"src_start":794},{"artifact":0,"gen_end":1074,"gen_start":832,"node":5,"role":"declaration","source":0,"src_end":1482,"src_start":1118},{"artifact":0,"gen_end":1235,"gen_start":1074,"node":6,"role":"declaration","source":0,"src_end":1799,"src_start":1484},{"artifact":0,"gen_end":1500,"gen_start":1235,"node":7,"role":"declaration","source":0,"src_end":2280,"src_start":1801},{"artifact":0,"gen_end":2160,"gen_start":1500,"node":8,"role":"declaration","source":0,"src_end":3365,"src_start":2282},{"artifact":0,"gen_end":2337,"gen_start":2160,"node":9,"role":"declaration","source":0,"src_end":3651,"src_start":3367},{"artifact":0,"gen_end":2478,"gen_start":2337,"node":10,"role":"declaration","source":0,"src_end":3885,"src_start":3653},{"artifact":0,"gen_end":2616,"gen_start":2478,"node":11,"role":"declaration","source":0,"src_end":4121,"src_start":3887},{"artifact":0,"gen_end":2989,"gen_start":2616,"node":12,"role":"declaration","source":0,"src_end":4517,"src_start":4123},{"artifact":0,"gen_end":3302,"gen_start":2989,"node":13,"role":"declaration","source":0,"src_end":4914,"src_start":4519},{"artifact":0,"gen_end":3619,"gen_start":3302,"node":14,"role":"declaration","source":0,"src_end":5325,"src_start":4916},{"artifact":0,"gen_end":3878,"gen_start":3619,"node":15,"role":"declaration","source":0,"src_end":5674,"src_start":5327},{"artifact":0,"gen_end":4133,"gen_start":3878,"node":16,"role":"declaration","source":0,"src_end":6017,"src_start":5676},{"artifact":0,"gen_end":4677,"gen_start":4133,"node":17,"role":"declaration","source":0,"src_end":6519,"src_start":6019},{"artifact":0,"gen_end":4884,"gen_start":4677,"node":18,"role":"declaration","source":0,"src_end":6783,"src_start":6521},{"artifact":0,"gen_end":5084,"gen_start":4884,"node":19,"role":"declaration","source":0,"src_end":7039,"src_start":6785},{"artifact":0,"gen_end":6370,"gen_start":5084,"node":20,"role":"declaration","source":0,"src_end":8308,"src_start":7041},{"artifact":0,"gen_end":7715,"gen_start":6370,"node":21,"role":"declaration","source":0,"src_end":9621,"src_start":8310},{"artifact":0,"gen_end":9057,"gen_start":7715,"node":22,"role":"declaration","source":0,"src_end":10932,"src_start":9623},{"artifact":0,"gen_end":9280,"gen_start":9057,"node":23,"role":"declaration","source":0,"src_end":11199,"src_start":10934},{"artifact":0,"gen_end":9510,"gen_start":9280,"node":24,"role":"declaration","source":0,"src_end":11473,"src_start":11201},{"artifact":0,"gen_end":9731,"gen_start":9510,"node":25,"role":"declaration","source":0,"src_end":11738,"src_start":11475},{"artifact":0,"gen_end":11171,"gen_start":9731,"node":26,"role":"declaration","source":0,"src_end":13152,"src_start":11740},{"artifact":0,"gen_end":11419,"gen_start":11171,"node":27,"role":"declaration","source":0,"src_end":13455,"src_start":13154},{"artifact":0,"gen_end":11642,"gen_start":11419,"node":28,"role":"declaration","source":0,"src_end":13733,"src_start":13457},{"artifact":0,"gen_end":11847,"gen_start":11642,"node":29,"role":"declaration","source":0,"src_end":13990,"src_start":13735},{"artifact":0,"gen_end":12046,"gen_start":11847,"node":30,"role":"declaration","source":0,"src_end":14270,"src_start":13992},{"artifact":0,"gen_end":12880,"gen_start":12046,"node":31,"role":"declaration","source":0,"src_end":15243,"src_start":14272},{"artifact":0,"gen_end":13469,"gen_start":12880,"node":32,"role":"declaration","source":0,"src_end":15856,"src_start":15245},{"artifact":0,"gen_end":13799,"gen_start":13469,"node":33,"role":"declaration","source":0,"src_end":16150,"src_start":15858},{"artifact":0,"gen_end":14284,"gen_start":13799,"node":34,"role":"declaration","source":0,"src_end":16581,"src_start":16152},{"artifact":0,"gen_end":14785,"gen_start":14284,"node":35,"role":"declaration","source":0,"src_end":17058,"src_start":16583},{"artifact":0,"gen_end":15152,"gen_start":14785,"node":36,"role":"declaration","source":0,"src_end":17427,"src_start":17060},{"artifact":0,"gen_end":17284,"gen_start":15152,"node":37,"role":"declaration","source":0,"src_end":19582,"src_start":17429},{"artifact":0,"gen_end":17926,"gen_start":17284,"node":38,"role":"declaration","source":0,"src_end":20233,"src_start":19584},{"artifact":0,"gen_end":18209,"gen_start":17926,"node":39,"role":"declaration","source":0,"src_end":20543,"src_start":20235},{"artifact":0,"gen_end":18829,"gen_start":18209,"node":40,"role":"declaration","source":0,"src_end":21235,"src_start":20545},{"artifact":0,"gen_end":19203,"gen_start":18829,"node":41,"role":"declaration","source":0,"src_end":21620,"src_start":21237},{"artifact":0,"gen_end":19619,"gen_start":19203,"node":42,"role":"declaration","source":0,"src_end":22028,"src_start":21622},{"artifact":0,"gen_end":20067,"gen_start":19619,"node":43,"role":"declaration","source":0,"src_end":22454,"src_start":22030},{"artifact":0,"gen_end":20548,"gen_start":20067,"node":44,"role":"declaration","source":0,"src_end":22889,"src_start":22456},{"artifact":0,"gen_end":21205,"gen_start":20548,"node":45,"role":"declaration","source":0,"src_end":23509,"src_start":22891},{"artifact":0,"gen_end":21862,"gen_start":21205,"node":46,"role":"declaration","source":0,"src_end":24129,"src_start":23511},{"artifact":0,"gen_end":22174,"gen_start":21862,"node":47,"role":"declaration","source":0,"src_end":24502,"src_start":24131},{"artifact":0,"gen_end":22484,"gen_start":22174,"node":48,"role":"declaration","source":0,"src_end":24873,"src_start":24504},{"artifact":0,"gen_end":22923,"gen_start":22484,"node":49,"role":"declaration","source":0,"src_end":25355,"src_start":24875},{"artifact":0,"gen_end":23733,"gen_start":22923,"node":50,"role":"declaration","source":0,"src_end":26212,"src_start":25357},{"artifact":0,"gen_end":24375,"gen_start":23733,"node":51,"role":"declaration","source":0,"src_end":26941,"src_start":26214},{"artifact":0,"gen_end":24887,"gen_start":24375,"node":52,"role":"declaration","source":0,"src_end":27477,"src_start":26943},{"artifact":0,"gen_end":26207,"gen_start":24887,"node":53,"role":"declaration","source":0,"src_end":29190,"src_start":27479},{"artifact":0,"gen_end":26746,"gen_start":26207,"node":54,"role":"declaration","source":0,"src_end":29753,"src_start":29192},{"artifact":0,"gen_end":27355,"gen_start":26746,"node":55,"role":"declaration","source":0,"src_end":30529,"src_start":29755},{"artifact":0,"gen_end":28115,"gen_start":27355,"node":56,"role":"declaration","source":0,"src_end":31375,"src_start":30531},{"artifact":0,"gen_end":29541,"gen_start":28115,"node":57,"role":"declaration","source":0,"src_end":33169,"src_start":31377},{"artifact":0,"gen_end":30079,"gen_start":29541,"node":58,"role":"declaration","source":0,"src_end":33739,"src_start":33171},{"artifact":0,"gen_end":30806,"gen_start":30079,"node":59,"role":"declaration","source":0,"src_end":34548,"src_start":33741},{"artifact":0,"gen_end":31453,"gen_start":30806,"node":60,"role":"declaration","source":0,"src_end":35508,"src_start":34550},{"artifact":0,"gen_end":32255,"gen_start":31453,"node":61,"role":"declaration","source":0,"src_end":36352,"src_start":35510},{"artifact":0,"gen_end":33068,"gen_start":32255,"node":62,"role":"declaration","source":0,"src_end":37402,"src_start":36354},{"artifact":0,"gen_end":33378,"gen_start":33068,"node":63,"role":"declaration","source":0,"src_end":37757,"src_start":37404},{"artifact":0,"gen_end":33951,"gen_start":33378,"node":64,"role":"declaration","source":0,"src_end":38410,"src_start":37759},{"artifact":0,"gen_end":35798,"gen_start":33951,"node":65,"role":"declaration","source":0,"src_end":40615,"src_start":38412},{"artifact":0,"gen_end":37108,"gen_start":35798,"node":66,"role":"declaration","source":0,"src_end":42146,"src_start":40617},{"artifact":0,"gen_end":38939,"gen_start":37108,"node":67,"role":"declaration","source":0,"src_end":43756,"src_start":42148},{"artifact":0,"gen_end":39386,"gen_start":38939,"node":68,"role":"declaration","source":0,"src_end":44146,"src_start":43758},{"artifact":0,"gen_end":40167,"gen_start":39386,"node":69,"role":"declaration","source":0,"src_end":44821,"src_start":44148},{"artifact":0,"gen_end":43058,"gen_start":40167,"node":70,"role":"declaration","source":0,"src_end":47859,"src_start":44823},{"artifact":0,"gen_end":43091,"gen_start":43058,"node":0,"role":"declaration","source":0,"src_end":47895,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":71,"role":"declaration","source":0,"src_end":47895,"src_start":0},{"artifact":1,"gen_end":392,"gen_start":134,"node":72,"role":"declaration","source":0,"src_end":407,"src_start":201},{"artifact":1,"gen_end":716,"gen_start":392,"node":73,"role":"declaration","source":0,"src_end":657,"src_start":409},{"artifact":1,"gen_end":887,"gen_start":716,"node":74,"role":"declaration","source":0,"src_end":792,"src_start":659},{"artifact":1,"gen_end":1309,"gen_start":887,"node":75,"role":"declaration","source":0,"src_end":1116,"src_start":794},{"artifact":1,"gen_end":1838,"gen_start":1309,"node":76,"role":"declaration","source":0,"src_end":1482,"src_start":1118},{"artifact":1,"gen_end":2277,"gen_start":1838,"node":77,"role":"declaration","source":0,"src_end":1799,"src_start":1484},{"artifact":1,"gen_end":2965,"gen_start":2277,"node":78,"role":"declaration","source":0,"src_end":2280,"src_start":1801},{"artifact":1,"gen_end":4556,"gen_start":2965,"node":79,"role":"declaration","source":0,"src_end":3365,"src_start":2282},{"artifact":1,"gen_end":4916,"gen_start":4556,"node":80,"role":"declaration","source":0,"src_end":3651,"src_start":3367},{"artifact":1,"gen_end":5200,"gen_start":4916,"node":81,"role":"declaration","source":0,"src_end":3885,"src_start":3653},{"artifact":1,"gen_end":5486,"gen_start":5200,"node":82,"role":"declaration","source":0,"src_end":4121,"src_start":3887},{"artifact":1,"gen_end":6020,"gen_start":5486,"node":83,"role":"declaration","source":0,"src_end":4517,"src_start":4123},{"artifact":1,"gen_end":6512,"gen_start":6020,"node":84,"role":"declaration","source":0,"src_end":4914,"src_start":4519},{"artifact":1,"gen_end":7008,"gen_start":6512,"node":85,"role":"declaration","source":0,"src_end":5325,"src_start":4916},{"artifact":1,"gen_end":7446,"gen_start":7008,"node":86,"role":"declaration","source":0,"src_end":5674,"src_start":5327},{"artifact":1,"gen_end":7880,"gen_start":7446,"node":87,"role":"declaration","source":0,"src_end":6017,"src_start":5676},{"artifact":1,"gen_end":8578,"gen_start":7880,"node":88,"role":"declaration","source":0,"src_end":6519,"src_start":6019},{"artifact":1,"gen_end":8970,"gen_start":8578,"node":89,"role":"declaration","source":0,"src_end":6783,"src_start":6521},{"artifact":1,"gen_end":9355,"gen_start":8970,"node":90,"role":"declaration","source":0,"src_end":7039,"src_start":6785},{"artifact":1,"gen_end":10846,"gen_start":9355,"node":91,"role":"declaration","source":0,"src_end":8308,"src_start":7041},{"artifact":1,"gen_end":12396,"gen_start":10846,"node":92,"role":"declaration","source":0,"src_end":9621,"src_start":8310},{"artifact":1,"gen_end":13943,"gen_start":12396,"node":93,"role":"declaration","source":0,"src_end":10932,"src_start":9623},{"artifact":1,"gen_end":14348,"gen_start":13943,"node":94,"role":"declaration","source":0,"src_end":11199,"src_start":10934},{"artifact":1,"gen_end":14760,"gen_start":14348,"node":95,"role":"declaration","source":0,"src_end":11473,"src_start":11201},{"artifact":1,"gen_end":15163,"gen_start":14760,"node":96,"role":"declaration","source":0,"src_end":11738,"src_start":11475},{"artifact":1,"gen_end":16894,"gen_start":15163,"node":97,"role":"declaration","source":0,"src_end":13152,"src_start":11740},{"artifact":1,"gen_end":17397,"gen_start":16894,"node":98,"role":"declaration","source":0,"src_end":13455,"src_start":13154},{"artifact":1,"gen_end":17875,"gen_start":17397,"node":99,"role":"declaration","source":0,"src_end":13733,"src_start":13457},{"artifact":1,"gen_end":18335,"gen_start":17875,"node":100,"role":"declaration","source":0,"src_end":13990,"src_start":13735},{"artifact":1,"gen_end":18733,"gen_start":18335,"node":101,"role":"declaration","source":0,"src_end":14270,"src_start":13992},{"artifact":1,"gen_end":19757,"gen_start":18733,"node":102,"role":"declaration","source":0,"src_end":15243,"src_start":14272},{"artifact":1,"gen_end":20533,"gen_start":19757,"node":103,"role":"declaration","source":0,"src_end":15856,"src_start":15245},{"artifact":1,"gen_end":21045,"gen_start":20533,"node":104,"role":"declaration","source":0,"src_end":16150,"src_start":15858},{"artifact":1,"gen_end":21712,"gen_start":21045,"node":105,"role":"declaration","source":0,"src_end":16581,"src_start":16152},{"artifact":1,"gen_end":22399,"gen_start":21712,"node":106,"role":"declaration","source":0,"src_end":17058,"src_start":16583},{"artifact":1,"gen_end":22952,"gen_start":22399,"node":107,"role":"declaration","source":0,"src_end":17427,"src_start":17060},{"artifact":1,"gen_end":25312,"gen_start":22952,"node":108,"role":"declaration","source":0,"src_end":19582,"src_start":17429},{"artifact":1,"gen_end":26114,"gen_start":25312,"node":109,"role":"declaration","source":0,"src_end":20233,"src_start":19584},{"artifact":1,"gen_end":26576,"gen_start":26114,"node":110,"role":"declaration","source":0,"src_end":20543,"src_start":20235},{"artifact":1,"gen_end":27372,"gen_start":26576,"node":111,"role":"declaration","source":0,"src_end":21235,"src_start":20545},{"artifact":1,"gen_end":27920,"gen_start":27372,"node":112,"role":"declaration","source":0,"src_end":21620,"src_start":21237},{"artifact":1,"gen_end":28559,"gen_start":27920,"node":113,"role":"declaration","source":0,"src_end":22028,"src_start":21622},{"artifact":1,"gen_end":29193,"gen_start":28559,"node":114,"role":"declaration","source":0,"src_end":22454,"src_start":22030},{"artifact":1,"gen_end":29858,"gen_start":29193,"node":115,"role":"declaration","source":0,"src_end":22889,"src_start":22456},{"artifact":1,"gen_end":30655,"gen_start":29858,"node":116,"role":"declaration","source":0,"src_end":23509,"src_start":22891},{"artifact":1,"gen_end":31452,"gen_start":30655,"node":117,"role":"declaration","source":0,"src_end":24129,"src_start":23511},{"artifact":1,"gen_end":31987,"gen_start":31452,"node":118,"role":"declaration","source":0,"src_end":24502,"src_start":24131},{"artifact":1,"gen_end":32520,"gen_start":31987,"node":119,"role":"declaration","source":0,"src_end":24873,"src_start":24504},{"artifact":1,"gen_end":33186,"gen_start":32520,"node":120,"role":"declaration","source":0,"src_end":25355,"src_start":24875},{"artifact":1,"gen_end":34220,"gen_start":33186,"node":121,"role":"declaration","source":0,"src_end":26212,"src_start":25357},{"artifact":1,"gen_end":35040,"gen_start":34220,"node":122,"role":"declaration","source":0,"src_end":26941,"src_start":26214},{"artifact":1,"gen_end":35776,"gen_start":35040,"node":123,"role":"declaration","source":0,"src_end":27477,"src_start":26943},{"artifact":1,"gen_end":37283,"gen_start":35776,"node":124,"role":"declaration","source":0,"src_end":29190,"src_start":27479},{"artifact":1,"gen_end":37931,"gen_start":37283,"node":125,"role":"declaration","source":0,"src_end":29753,"src_start":29192},{"artifact":1,"gen_end":38726,"gen_start":37931,"node":126,"role":"declaration","source":0,"src_end":30529,"src_start":29755},{"artifact":1,"gen_end":39672,"gen_start":38726,"node":127,"role":"declaration","source":0,"src_end":31375,"src_start":30531},{"artifact":1,"gen_end":41284,"gen_start":39672,"node":128,"role":"declaration","source":0,"src_end":33169,"src_start":31377},{"artifact":1,"gen_end":41945,"gen_start":41284,"node":129,"role":"declaration","source":0,"src_end":33739,"src_start":33171},{"artifact":1,"gen_end":42858,"gen_start":41945,"node":130,"role":"declaration","source":0,"src_end":34548,"src_start":33741},{"artifact":1,"gen_end":43683,"gen_start":42858,"node":131,"role":"declaration","source":0,"src_end":35508,"src_start":34550},{"artifact":1,"gen_end":44669,"gen_start":43683,"node":132,"role":"declaration","source":0,"src_end":36352,"src_start":35510},{"artifact":1,"gen_end":45667,"gen_start":44669,"node":133,"role":"declaration","source":0,"src_end":37402,"src_start":36354},{"artifact":1,"gen_end":46132,"gen_start":45667,"node":134,"role":"declaration","source":0,"src_end":37757,"src_start":37404},{"artifact":1,"gen_end":46840,"gen_start":46132,"node":135,"role":"declaration","source":0,"src_end":38410,"src_start":37759},{"artifact":1,"gen_end":48872,"gen_start":46840,"node":136,"role":"declaration","source":0,"src_end":40615,"src_start":38412},{"artifact":1,"gen_end":50367,"gen_start":48872,"node":137,"role":"declaration","source":0,"src_end":42146,"src_start":40617},{"artifact":1,"gen_end":52385,"gen_start":50367,"node":138,"role":"declaration","source":0,"src_end":43756,"src_start":42148},{"artifact":1,"gen_end":53014,"gen_start":52385,"node":139,"role":"declaration","source":0,"src_end":44146,"src_start":43758},{"artifact":1,"gen_end":53977,"gen_start":53014,"node":140,"role":"declaration","source":0,"src_end":44821,"src_start":44148},{"artifact":1,"gen_end":57118,"gen_start":53977,"node":141,"role":"declaration","source":0,"src_end":47859,"src_start":44823},{"artifact":1,"gen_end":57133,"gen_start":57118,"node":71,"role":"declaration","source":0,"src_end":47895,"src_start":0}],"module":"Certification","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"},{"id":40,"kind":"semantic-declaration"},{"id":41,"kind":"semantic-declaration"},{"id":42,"kind":"semantic-declaration"},{"id":43,"kind":"semantic-declaration"},{"id":44,"kind":"semantic-declaration"},{"id":45,"kind":"semantic-declaration"},{"id":46,"kind":"semantic-declaration"},{"id":47,"kind":"semantic-declaration"},{"id":48,"kind":"semantic-declaration"},{"id":49,"kind":"semantic-declaration"},{"id":50,"kind":"semantic-declaration"},{"id":51,"kind":"semantic-declaration"},{"id":52,"kind":"semantic-declaration"},{"id":53,"kind":"semantic-declaration"},{"id":54,"kind":"semantic-declaration"},{"id":55,"kind":"semantic-declaration"},{"id":56,"kind":"semantic-declaration"},{"id":57,"kind":"semantic-declaration"},{"id":58,"kind":"semantic-declaration"},{"id":59,"kind":"semantic-declaration"},{"id":60,"kind":"semantic-declaration"},{"id":61,"kind":"semantic-declaration"},{"id":62,"kind":"semantic-declaration"},{"id":63,"kind":"semantic-declaration"},{"id":64,"kind":"semantic-declaration"},{"id":65,"kind":"semantic-declaration"},{"id":66,"kind":"semantic-declaration"},{"id":67,"kind":"semantic-declaration"},{"id":68,"kind":"semantic-declaration"},{"id":69,"kind":"semantic-declaration"},{"id":70,"kind":"semantic-declaration"},{"id":71,"kind":"semantic-latex-module"},{"id":72,"kind":"semantic-declaration"},{"id":73,"kind":"semantic-declaration"},{"id":74,"kind":"semantic-declaration"},{"id":75,"kind":"semantic-declaration"},{"id":76,"kind":"semantic-declaration"},{"id":77,"kind":"semantic-declaration"},{"id":78,"kind":"semantic-declaration"},{"id":79,"kind":"semantic-declaration"},{"id":80,"kind":"semantic-declaration"},{"id":81,"kind":"semantic-declaration"},{"id":82,"kind":"semantic-declaration"},{"id":83,"kind":"semantic-declaration"},{"id":84,"kind":"semantic-declaration"},{"id":85,"kind":"semantic-declaration"},{"id":86,"kind":"semantic-declaration"},{"id":87,"kind":"semantic-declaration"},{"id":88,"kind":"semantic-declaration"},{"id":89,"kind":"semantic-declaration"},{"id":90,"kind":"semantic-declaration"},{"id":91,"kind":"semantic-declaration"},{"id":92,"kind":"semantic-declaration"},{"id":93,"kind":"semantic-declaration"},{"id":94,"kind":"semantic-declaration"},{"id":95,"kind":"semantic-declaration"},{"id":96,"kind":"semantic-declaration"},{"id":97,"kind":"semantic-declaration"},{"id":98,"kind":"semantic-declaration"},{"id":99,"kind":"semantic-declaration"},{"id":100,"kind":"semantic-declaration"},{"id":101,"kind":"semantic-declaration"},{"id":102,"kind":"semantic-declaration"},{"id":103,"kind":"semantic-declaration"},{"id":104,"kind":"semantic-declaration"},{"id":105,"kind":"semantic-declaration"},{"id":106,"kind":"semantic-declaration"},{"id":107,"kind":"semantic-declaration"},{"id":108,"kind":"semantic-declaration"},{"id":109,"kind":"semantic-declaration"},{"id":110,"kind":"semantic-declaration"},{"id":111,"kind":"semantic-declaration"},{"id":112,"kind":"semantic-declaration"},{"id":113,"kind":"semantic-declaration"},{"id":114,"kind":"semantic-declaration"},{"id":115,"kind":"semantic-declaration"},{"id":116,"kind":"semantic-declaration"},{"id":117,"kind":"semantic-declaration"},{"id":118,"kind":"semantic-declaration"},{"id":119,"kind":"semantic-declaration"},{"id":120,"kind":"semantic-declaration"},{"id":121,"kind":"semantic-declaration"},{"id":122,"kind":"semantic-declaration"},{"id":123,"kind":"semantic-declaration"},{"id":124,"kind":"semantic-declaration"},{"id":125,"kind":"semantic-declaration"},{"id":126,"kind":"semantic-declaration"},{"id":127,"kind":"semantic-declaration"},{"id":128,"kind":"semantic-declaration"},{"id":129,"kind":"semantic-declaration"},{"id":130,"kind":"semantic-declaration"},{"id":131,"kind":"semantic-declaration"},{"id":132,"kind":"semantic-declaration"},{"id":133,"kind":"semantic-declaration"},{"id":134,"kind":"semantic-declaration"},{"id":135,"kind":"semantic-declaration"},{"id":136,"kind":"semantic-declaration"},{"id":137,"kind":"semantic-declaration"},{"id":138,"kind":"semantic-declaration"},{"id":139,"kind":"semantic-declaration"},{"id":140,"kind":"semantic-declaration"},{"id":141,"kind":"semantic-declaration"}],"semantic_id":"c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517","source_id":"ce718723d5d252a9adafdc3cb3b76931b1d91e053dd3e7e31bcb9b9496a1941c","sources":[{"id":0,"kind":"file","path":"src/Certification.lex.tex","sha256":"7e011c2fefdfd08c3f9d41a5cf5c891d72495aae7d4bc1e0b5d31a9d364c07fb"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/LexLeanTarget/Certification.lean"},{"id":1,"kind":"tex","path":"modules/LexLeanTarget/Certification.tex"}],"mappings":[{"artifact":0,"gen_end":366,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":47895,"src_start":0},{"artifact":0,"gen_end":450,"gen_start":366,"node":1,"role":"declaration","source":0,"src_end":407,"src_start":201},{"artifact":0,"gen_end":576,"gen_start":450,"node":2,"role":"declaration","source":0,"src_end":657,"src_start":409},{"artifact":0,"gen_end":636,"gen_start":576,"node":3,"role":"declaration","source":0,"src_end":792,"src_start":659},{"artifact":0,"gen_end":832,"gen_start":636,"node":4,"role":"declaration","source":0,"src_end":1116,"src_start":794},{"artifact":0,"gen_end":1074,"gen_start":832,"node":5,"role":"declaration","source":0,"src_end":1482,"src_start":1118},{"artifact":0,"gen_end":1235,"gen_start":1074,"node":6,"role":"declaration","source":0,"src_end":1799,"src_start":1484},{"artifact":0,"gen_end":1500,"gen_start":1235,"node":7,"role":"declaration","source":0,"src_end":2280,"src_start":1801},{"artifact":0,"gen_end":2160,"gen_start":1500,"node":8,"role":"declaration","source":0,"src_end":3365,"src_start":2282},{"artifact":0,"gen_end":2337,"gen_start":2160,"node":9,"role":"declaration","source":0,"src_end":3651,"src_start":3367},{"artifact":0,"gen_end":2478,"gen_start":2337,"node":10,"role":"declaration","source":0,"src_end":3885,"src_start":3653},{"artifact":0,"gen_end":2616,"gen_start":2478,"node":11,"role":"declaration","source":0,"src_end":4121,"src_start":3887},{"artifact":0,"gen_end":2989,"gen_start":2616,"node":12,"role":"declaration","source":0,"src_end":4517,"src_start":4123},{"artifact":0,"gen_end":3302,"gen_start":2989,"node":13,"role":"declaration","source":0,"src_end":4914,"src_start":4519},{"artifact":0,"gen_end":3619,"gen_start":3302,"node":14,"role":"declaration","source":0,"src_end":5325,"src_start":4916},{"artifact":0,"gen_end":3878,"gen_start":3619,"node":15,"role":"declaration","source":0,"src_end":5674,"src_start":5327},{"artifact":0,"gen_end":4133,"gen_start":3878,"node":16,"role":"declaration","source":0,"src_end":6017,"src_start":5676},{"artifact":0,"gen_end":4677,"gen_start":4133,"node":17,"role":"declaration","source":0,"src_end":6519,"src_start":6019},{"artifact":0,"gen_end":4884,"gen_start":4677,"node":18,"role":"declaration","source":0,"src_end":6783,"src_start":6521},{"artifact":0,"gen_end":5084,"gen_start":4884,"node":19,"role":"declaration","source":0,"src_end":7039,"src_start":6785},{"artifact":0,"gen_end":6370,"gen_start":5084,"node":20,"role":"declaration","source":0,"src_end":8308,"src_start":7041},{"artifact":0,"gen_end":7715,"gen_start":6370,"node":21,"role":"declaration","source":0,"src_end":9621,"src_start":8310},{"artifact":0,"gen_end":9057,"gen_start":7715,"node":22,"role":"declaration","source":0,"src_end":10932,"src_start":9623},{"artifact":0,"gen_end":9280,"gen_start":9057,"node":23,"role":"declaration","source":0,"src_end":11199,"src_start":10934},{"artifact":0,"gen_end":9510,"gen_start":9280,"node":24,"role":"declaration","source":0,"src_end":11473,"src_start":11201},{"artifact":0,"gen_end":9731,"gen_start":9510,"node":25,"role":"declaration","source":0,"src_end":11738,"src_start":11475},{"artifact":0,"gen_end":11171,"gen_start":9731,"node":26,"role":"declaration","source":0,"src_end":13152,"src_start":11740},{"artifact":0,"gen_end":11419,"gen_start":11171,"node":27,"role":"declaration","source":0,"src_end":13455,"src_start":13154},{"artifact":0,"gen_end":11642,"gen_start":11419,"node":28,"role":"declaration","source":0,"src_end":13733,"src_start":13457},{"artifact":0,"gen_end":11847,"gen_start":11642,"node":29,"role":"declaration","source":0,"src_end":13990,"src_start":13735},{"artifact":0,"gen_end":12046,"gen_start":11847,"node":30,"role":"declaration","source":0,"src_end":14270,"src_start":13992},{"artifact":0,"gen_end":12880,"gen_start":12046,"node":31,"role":"declaration","source":0,"src_end":15243,"src_start":14272},{"artifact":0,"gen_end":13469,"gen_start":12880,"node":32,"role":"declaration","source":0,"src_end":15856,"src_start":15245},{"artifact":0,"gen_end":13799,"gen_start":13469,"node":33,"role":"declaration","source":0,"src_end":16150,"src_start":15858},{"artifact":0,"gen_end":14284,"gen_start":13799,"node":34,"role":"declaration","source":0,"src_end":16581,"src_start":16152},{"artifact":0,"gen_end":14785,"gen_start":14284,"node":35,"role":"declaration","source":0,"src_end":17058,"src_start":16583},{"artifact":0,"gen_end":15152,"gen_start":14785,"node":36,"role":"declaration","source":0,"src_end":17427,"src_start":17060},{"artifact":0,"gen_end":17284,"gen_start":15152,"node":37,"role":"declaration","source":0,"src_end":19582,"src_start":17429},{"artifact":0,"gen_end":17926,"gen_start":17284,"node":38,"role":"declaration","source":0,"src_end":20233,"src_start":19584},{"artifact":0,"gen_end":18209,"gen_start":17926,"node":39,"role":"declaration","source":0,"src_end":20543,"src_start":20235},{"artifact":0,"gen_end":18829,"gen_start":18209,"node":40,"role":"declaration","source":0,"src_end":21235,"src_start":20545},{"artifact":0,"gen_end":19203,"gen_start":18829,"node":41,"role":"declaration","source":0,"src_end":21620,"src_start":21237},{"artifact":0,"gen_end":19619,"gen_start":19203,"node":42,"role":"declaration","source":0,"src_end":22028,"src_start":21622},{"artifact":0,"gen_end":20067,"gen_start":19619,"node":43,"role":"declaration","source":0,"src_end":22454,"src_start":22030},{"artifact":0,"gen_end":20548,"gen_start":20067,"node":44,"role":"declaration","source":0,"src_end":22889,"src_start":22456},{"artifact":0,"gen_end":21205,"gen_start":20548,"node":45,"role":"declaration","source":0,"src_end":23509,"src_start":22891},{"artifact":0,"gen_end":21862,"gen_start":21205,"node":46,"role":"declaration","source":0,"src_end":24129,"src_start":23511},{"artifact":0,"gen_end":22174,"gen_start":21862,"node":47,"role":"declaration","source":0,"src_end":24502,"src_start":24131},{"artifact":0,"gen_end":22484,"gen_start":22174,"node":48,"role":"declaration","source":0,"src_end":24873,"src_start":24504},{"artifact":0,"gen_end":22923,"gen_start":22484,"node":49,"role":"declaration","source":0,"src_end":25355,"src_start":24875},{"artifact":0,"gen_end":23733,"gen_start":22923,"node":50,"role":"declaration","source":0,"src_end":26212,"src_start":25357},{"artifact":0,"gen_end":24375,"gen_start":23733,"node":51,"role":"declaration","source":0,"src_end":26941,"src_start":26214},{"artifact":0,"gen_end":24887,"gen_start":24375,"node":52,"role":"declaration","source":0,"src_end":27477,"src_start":26943},{"artifact":0,"gen_end":26207,"gen_start":24887,"node":53,"role":"declaration","source":0,"src_end":29190,"src_start":27479},{"artifact":0,"gen_end":26746,"gen_start":26207,"node":54,"role":"declaration","source":0,"src_end":29753,"src_start":29192},{"artifact":0,"gen_end":27355,"gen_start":26746,"node":55,"role":"declaration","source":0,"src_end":30529,"src_start":29755},{"artifact":0,"gen_end":28115,"gen_start":27355,"node":56,"role":"declaration","source":0,"src_end":31375,"src_start":30531},{"artifact":0,"gen_end":29541,"gen_start":28115,"node":57,"role":"declaration","source":0,"src_end":33169,"src_start":31377},{"artifact":0,"gen_end":30079,"gen_start":29541,"node":58,"role":"declaration","source":0,"src_end":33739,"src_start":33171},{"artifact":0,"gen_end":30806,"gen_start":30079,"node":59,"role":"declaration","source":0,"src_end":34548,"src_start":33741},{"artifact":0,"gen_end":31453,"gen_start":30806,"node":60,"role":"declaration","source":0,"src_end":35508,"src_start":34550},{"artifact":0,"gen_end":32255,"gen_start":31453,"node":61,"role":"declaration","source":0,"src_end":36352,"src_start":35510},{"artifact":0,"gen_end":33068,"gen_start":32255,"node":62,"role":"declaration","source":0,"src_end":37402,"src_start":36354},{"artifact":0,"gen_end":33378,"gen_start":33068,"node":63,"role":"declaration","source":0,"src_end":37757,"src_start":37404},{"artifact":0,"gen_end":33951,"gen_start":33378,"node":64,"role":"declaration","source":0,"src_end":38410,"src_start":37759},{"artifact":0,"gen_end":35798,"gen_start":33951,"node":65,"role":"declaration","source":0,"src_end":40615,"src_start":38412},{"artifact":0,"gen_end":37108,"gen_start":35798,"node":66,"role":"declaration","source":0,"src_end":42146,"src_start":40617},{"artifact":0,"gen_end":38939,"gen_start":37108,"node":67,"role":"declaration","source":0,"src_end":43756,"src_start":42148},{"artifact":0,"gen_end":39386,"gen_start":38939,"node":68,"role":"declaration","source":0,"src_end":44146,"src_start":43758},{"artifact":0,"gen_end":40167,"gen_start":39386,"node":69,"role":"declaration","source":0,"src_end":44821,"src_start":44148},{"artifact":0,"gen_end":43058,"gen_start":40167,"node":70,"role":"declaration","source":0,"src_end":47859,"src_start":44823},{"artifact":0,"gen_end":43091,"gen_start":43058,"node":0,"role":"declaration","source":0,"src_end":47895,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":71,"role":"declaration","source":0,"src_end":47895,"src_start":0},{"artifact":1,"gen_end":392,"gen_start":134,"node":72,"role":"declaration","source":0,"src_end":407,"src_start":201},{"artifact":1,"gen_end":716,"gen_start":392,"node":73,"role":"declaration","source":0,"src_end":657,"src_start":409},{"artifact":1,"gen_end":887,"gen_start":716,"node":74,"role":"declaration","source":0,"src_end":792,"src_start":659},{"artifact":1,"gen_end":1309,"gen_start":887,"node":75,"role":"declaration","source":0,"src_end":1116,"src_start":794},{"artifact":1,"gen_end":1838,"gen_start":1309,"node":76,"role":"declaration","source":0,"src_end":1482,"src_start":1118},{"artifact":1,"gen_end":2277,"gen_start":1838,"node":77,"role":"declaration","source":0,"src_end":1799,"src_start":1484},{"artifact":1,"gen_end":2965,"gen_start":2277,"node":78,"role":"declaration","source":0,"src_end":2280,"src_start":1801},{"artifact":1,"gen_end":4556,"gen_start":2965,"node":79,"role":"declaration","source":0,"src_end":3365,"src_start":2282},{"artifact":1,"gen_end":4916,"gen_start":4556,"node":80,"role":"declaration","source":0,"src_end":3651,"src_start":3367},{"artifact":1,"gen_end":5200,"gen_start":4916,"node":81,"role":"declaration","source":0,"src_end":3885,"src_start":3653},{"artifact":1,"gen_end":5486,"gen_start":5200,"node":82,"role":"declaration","source":0,"src_end":4121,"src_start":3887},{"artifact":1,"gen_end":6020,"gen_start":5486,"node":83,"role":"declaration","source":0,"src_end":4517,"src_start":4123},{"artifact":1,"gen_end":6512,"gen_start":6020,"node":84,"role":"declaration","source":0,"src_end":4914,"src_start":4519},{"artifact":1,"gen_end":7008,"gen_start":6512,"node":85,"role":"declaration","source":0,"src_end":5325,"src_start":4916},{"artifact":1,"gen_end":7446,"gen_start":7008,"node":86,"role":"declaration","source":0,"src_end":5674,"src_start":5327},{"artifact":1,"gen_end":7880,"gen_start":7446,"node":87,"role":"declaration","source":0,"src_end":6017,"src_start":5676},{"artifact":1,"gen_end":8578,"gen_start":7880,"node":88,"role":"declaration","source":0,"src_end":6519,"src_start":6019},{"artifact":1,"gen_end":8970,"gen_start":8578,"node":89,"role":"declaration","source":0,"src_end":6783,"src_start":6521},{"artifact":1,"gen_end":9355,"gen_start":8970,"node":90,"role":"declaration","source":0,"src_end":7039,"src_start":6785},{"artifact":1,"gen_end":10846,"gen_start":9355,"node":91,"role":"declaration","source":0,"src_end":8308,"src_start":7041},{"artifact":1,"gen_end":12396,"gen_start":10846,"node":92,"role":"declaration","source":0,"src_end":9621,"src_start":8310},{"artifact":1,"gen_end":13943,"gen_start":12396,"node":93,"role":"declaration","source":0,"src_end":10932,"src_start":9623},{"artifact":1,"gen_end":14348,"gen_start":13943,"node":94,"role":"declaration","source":0,"src_end":11199,"src_start":10934},{"artifact":1,"gen_end":14760,"gen_start":14348,"node":95,"role":"declaration","source":0,"src_end":11473,"src_start":11201},{"artifact":1,"gen_end":15163,"gen_start":14760,"node":96,"role":"declaration","source":0,"src_end":11738,"src_start":11475},{"artifact":1,"gen_end":16894,"gen_start":15163,"node":97,"role":"declaration","source":0,"src_end":13152,"src_start":11740},{"artifact":1,"gen_end":17397,"gen_start":16894,"node":98,"role":"declaration","source":0,"src_end":13455,"src_start":13154},{"artifact":1,"gen_end":17875,"gen_start":17397,"node":99,"role":"declaration","source":0,"src_end":13733,"src_start":13457},{"artifact":1,"gen_end":18335,"gen_start":17875,"node":100,"role":"declaration","source":0,"src_end":13990,"src_start":13735},{"artifact":1,"gen_end":18733,"gen_start":18335,"node":101,"role":"declaration","source":0,"src_end":14270,"src_start":13992},{"artifact":1,"gen_end":19757,"gen_start":18733,"node":102,"role":"declaration","source":0,"src_end":15243,"src_start":14272},{"artifact":1,"gen_end":20533,"gen_start":19757,"node":103,"role":"declaration","source":0,"src_end":15856,"src_start":15245},{"artifact":1,"gen_end":21045,"gen_start":20533,"node":104,"role":"declaration","source":0,"src_end":16150,"src_start":15858},{"artifact":1,"gen_end":21712,"gen_start":21045,"node":105,"role":"declaration","source":0,"src_end":16581,"src_start":16152},{"artifact":1,"gen_end":22399,"gen_start":21712,"node":106,"role":"declaration","source":0,"src_end":17058,"src_start":16583},{"artifact":1,"gen_end":22952,"gen_start":22399,"node":107,"role":"declaration","source":0,"src_end":17427,"src_start":17060},{"artifact":1,"gen_end":25312,"gen_start":22952,"node":108,"role":"declaration","source":0,"src_end":19582,"src_start":17429},{"artifact":1,"gen_end":26114,"gen_start":25312,"node":109,"role":"declaration","source":0,"src_end":20233,"src_start":19584},{"artifact":1,"gen_end":26576,"gen_start":26114,"node":110,"role":"declaration","source":0,"src_end":20543,"src_start":20235},{"artifact":1,"gen_end":27372,"gen_start":26576,"node":111,"role":"declaration","source":0,"src_end":21235,"src_start":20545},{"artifact":1,"gen_end":27920,"gen_start":27372,"node":112,"role":"declaration","source":0,"src_end":21620,"src_start":21237},{"artifact":1,"gen_end":28559,"gen_start":27920,"node":113,"role":"declaration","source":0,"src_end":22028,"src_start":21622},{"artifact":1,"gen_end":29193,"gen_start":28559,"node":114,"role":"declaration","source":0,"src_end":22454,"src_start":22030},{"artifact":1,"gen_end":29858,"gen_start":29193,"node":115,"role":"declaration","source":0,"src_end":22889,"src_start":22456},{"artifact":1,"gen_end":30655,"gen_start":29858,"node":116,"role":"declaration","source":0,"src_end":23509,"src_start":22891},{"artifact":1,"gen_end":31452,"gen_start":30655,"node":117,"role":"declaration","source":0,"src_end":24129,"src_start":23511},{"artifact":1,"gen_end":31987,"gen_start":31452,"node":118,"role":"declaration","source":0,"src_end":24502,"src_start":24131},{"artifact":1,"gen_end":32520,"gen_start":31987,"node":119,"role":"declaration","source":0,"src_end":24873,"src_start":24504},{"artifact":1,"gen_end":33186,"gen_start":32520,"node":120,"role":"declaration","source":0,"src_end":25355,"src_start":24875},{"artifact":1,"gen_end":34220,"gen_start":33186,"node":121,"role":"declaration","source":0,"src_end":26212,"src_start":25357},{"artifact":1,"gen_end":35040,"gen_start":34220,"node":122,"role":"declaration","source":0,"src_end":26941,"src_start":26214},{"artifact":1,"gen_end":35776,"gen_start":35040,"node":123,"role":"declaration","source":0,"src_end":27477,"src_start":26943},{"artifact":1,"gen_end":37283,"gen_start":35776,"node":124,"role":"declaration","source":0,"src_end":29190,"src_start":27479},{"artifact":1,"gen_end":37931,"gen_start":37283,"node":125,"role":"declaration","source":0,"src_end":29753,"src_start":29192},{"artifact":1,"gen_end":38726,"gen_start":37931,"node":126,"role":"declaration","source":0,"src_end":30529,"src_start":29755},{"artifact":1,"gen_end":39672,"gen_start":38726,"node":127,"role":"declaration","source":0,"src_end":31375,"src_start":30531},{"artifact":1,"gen_end":41284,"gen_start":39672,"node":128,"role":"declaration","source":0,"src_end":33169,"src_start":31377},{"artifact":1,"gen_end":41945,"gen_start":41284,"node":129,"role":"declaration","source":0,"src_end":33739,"src_start":33171},{"artifact":1,"gen_end":42858,"gen_start":41945,"node":130,"role":"declaration","source":0,"src_end":34548,"src_start":33741},{"artifact":1,"gen_end":43683,"gen_start":42858,"node":131,"role":"declaration","source":0,"src_end":35508,"src_start":34550},{"artifact":1,"gen_end":44669,"gen_start":43683,"node":132,"role":"declaration","source":0,"src_end":36352,"src_start":35510},{"artifact":1,"gen_end":45667,"gen_start":44669,"node":133,"role":"declaration","source":0,"src_end":37402,"src_start":36354},{"artifact":1,"gen_end":46132,"gen_start":45667,"node":134,"role":"declaration","source":0,"src_end":37757,"src_start":37404},{"artifact":1,"gen_end":46840,"gen_start":46132,"node":135,"role":"declaration","source":0,"src_end":38410,"src_start":37759},{"artifact":1,"gen_end":48872,"gen_start":46840,"node":136,"role":"declaration","source":0,"src_end":40615,"src_start":38412},{"artifact":1,"gen_end":50367,"gen_start":48872,"node":137,"role":"declaration","source":0,"src_end":42146,"src_start":40617},{"artifact":1,"gen_end":52385,"gen_start":50367,"node":138,"role":"declaration","source":0,"src_end":43756,"src_start":42148},{"artifact":1,"gen_end":53014,"gen_start":52385,"node":139,"role":"declaration","source":0,"src_end":44146,"src_start":43758},{"artifact":1,"gen_end":53977,"gen_start":53014,"node":140,"role":"declaration","source":0,"src_end":44821,"src_start":44148},{"artifact":1,"gen_end":57118,"gen_start":53977,"node":141,"role":"declaration","source":0,"src_end":47859,"src_start":44823},{"artifact":1,"gen_end":57133,"gen_start":57118,"node":71,"role":"declaration","source":0,"src_end":47895,"src_start":0}],"module":"Certification","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"},{"id":40,"kind":"semantic-declaration"},{"id":41,"kind":"semantic-declaration"},{"id":42,"kind":"semantic-declaration"},{"id":43,"kind":"semantic-declaration"},{"id":44,"kind":"semantic-declaration"},{"id":45,"kind":"semantic-declaration"},{"id":46,"kind":"semantic-declaration"},{"id":47,"kind":"semantic-declaration"},{"id":48,"kind":"semantic-declaration"},{"id":49,"kind":"semantic-declaration"},{"id":50,"kind":"semantic-declaration"},{"id":51,"kind":"semantic-declaration"},{"id":52,"kind":"semantic-declaration"},{"id":53,"kind":"semantic-declaration"},{"id":54,"kind":"semantic-declaration"},{"id":55,"kind":"semantic-declaration"},{"id":56,"kind":"semantic-declaration"},{"id":57,"kind":"semantic-declaration"},{"id":58,"kind":"semantic-declaration"},{"id":59,"kind":"semantic-declaration"},{"id":60,"kind":"semantic-declaration"},{"id":61,"kind":"semantic-declaration"},{"id":62,"kind":"semantic-declaration"},{"id":63,"kind":"semantic-declaration"},{"id":64,"kind":"semantic-declaration"},{"id":65,"kind":"semantic-declaration"},{"id":66,"kind":"semantic-declaration"},{"id":67,"kind":"semantic-declaration"},{"id":68,"kind":"semantic-declaration"},{"id":69,"kind":"semantic-declaration"},{"id":70,"kind":"semantic-declaration"},{"id":71,"kind":"semantic-latex-module"},{"id":72,"kind":"semantic-declaration"},{"id":73,"kind":"semantic-declaration"},{"id":74,"kind":"semantic-declaration"},{"id":75,"kind":"semantic-declaration"},{"id":76,"kind":"semantic-declaration"},{"id":77,"kind":"semantic-declaration"},{"id":78,"kind":"semantic-declaration"},{"id":79,"kind":"semantic-declaration"},{"id":80,"kind":"semantic-declaration"},{"id":81,"kind":"semantic-declaration"},{"id":82,"kind":"semantic-declaration"},{"id":83,"kind":"semantic-declaration"},{"id":84,"kind":"semantic-declaration"},{"id":85,"kind":"semantic-declaration"},{"id":86,"kind":"semantic-declaration"},{"id":87,"kind":"semantic-declaration"},{"id":88,"kind":"semantic-declaration"},{"id":89,"kind":"semantic-declaration"},{"id":90,"kind":"semantic-declaration"},{"id":91,"kind":"semantic-declaration"},{"id":92,"kind":"semantic-declaration"},{"id":93,"kind":"semantic-declaration"},{"id":94,"kind":"semantic-declaration"},{"id":95,"kind":"semantic-declaration"},{"id":96,"kind":"semantic-declaration"},{"id":97,"kind":"semantic-declaration"},{"id":98,"kind":"semantic-declaration"},{"id":99,"kind":"semantic-declaration"},{"id":100,"kind":"semantic-declaration"},{"id":101,"kind":"semantic-declaration"},{"id":102,"kind":"semantic-declaration"},{"id":103,"kind":"semantic-declaration"},{"id":104,"kind":"semantic-declaration"},{"id":105,"kind":"semantic-declaration"},{"id":106,"kind":"semantic-declaration"},{"id":107,"kind":"semantic-declaration"},{"id":108,"kind":"semantic-declaration"},{"id":109,"kind":"semantic-declaration"},{"id":110,"kind":"semantic-declaration"},{"id":111,"kind":"semantic-declaration"},{"id":112,"kind":"semantic-declaration"},{"id":113,"kind":"semantic-declaration"},{"id":114,"kind":"semantic-declaration"},{"id":115,"kind":"semantic-declaration"},{"id":116,"kind":"semantic-declaration"},{"id":117,"kind":"semantic-declaration"},{"id":118,"kind":"semantic-declaration"},{"id":119,"kind":"semantic-declaration"},{"id":120,"kind":"semantic-declaration"},{"id":121,"kind":"semantic-declaration"},{"id":122,"kind":"semantic-declaration"},{"id":123,"kind":"semantic-declaration"},{"id":124,"kind":"semantic-declaration"},{"id":125,"kind":"semantic-declaration"},{"id":126,"kind":"semantic-declaration"},{"id":127,"kind":"semantic-declaration"},{"id":128,"kind":"semantic-declaration"},{"id":129,"kind":"semantic-declaration"},{"id":130,"kind":"semantic-declaration"},{"id":131,"kind":"semantic-declaration"},{"id":132,"kind":"semantic-declaration"},{"id":133,"kind":"semantic-declaration"},{"id":134,"kind":"semantic-declaration"},{"id":135,"kind":"semantic-declaration"},{"id":136,"kind":"semantic-declaration"},{"id":137,"kind":"semantic-declaration"},{"id":138,"kind":"semantic-declaration"},{"id":139,"kind":"semantic-declaration"},{"id":140,"kind":"semantic-declaration"},{"id":141,"kind":"semantic-declaration"}],"semantic_id":"e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb","source_id":"965efd311d3549a7c17dd823b4418cfee906beecd273f4bfcafb371c36d9ce99","sources":[{"id":0,"kind":"file","path":"src/Certification.lex.tex","sha256":"7e011c2fefdfd08c3f9d41a5cf5c891d72495aae7d4bc1e0b5d31a9d364c07fb"}],"spec":"lexlean/source-map/1"} diff --git a/compiler/expected/build/maps/LexLeanTarget/Gnaf.map.json b/compiler/expected/build/maps/LexLeanTarget/Gnaf.map.json index 51c9b7c65..a2e272620 100644 --- a/compiler/expected/build/maps/LexLeanTarget/Gnaf.map.json +++ b/compiler/expected/build/maps/LexLeanTarget/Gnaf.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/LexLeanTarget/Gnaf.lean"},{"id":1,"kind":"tex","path":"modules/LexLeanTarget/Gnaf.tex"}],"mappings":[{"artifact":0,"gen_end":324,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":100847,"src_start":0},{"artifact":0,"gen_end":1115,"gen_start":324,"node":1,"role":"declaration","source":0,"src_end":1644,"src_start":172},{"artifact":0,"gen_end":1301,"gen_start":1115,"node":2,"role":"declaration","source":0,"src_end":2101,"src_start":1646},{"artifact":0,"gen_end":1389,"gen_start":1301,"node":3,"role":"declaration","source":0,"src_end":2327,"src_start":2103},{"artifact":0,"gen_end":1458,"gen_start":1389,"node":4,"role":"declaration","source":0,"src_end":2471,"src_start":2329},{"artifact":0,"gen_end":1539,"gen_start":1458,"node":5,"role":"declaration","source":0,"src_end":2676,"src_start":2473},{"artifact":0,"gen_end":1597,"gen_start":1539,"node":6,"role":"declaration","source":0,"src_end":2825,"src_start":2678},{"artifact":0,"gen_end":1689,"gen_start":1597,"node":7,"role":"declaration","source":0,"src_end":3036,"src_start":2827},{"artifact":0,"gen_end":1762,"gen_start":1689,"node":8,"role":"declaration","source":0,"src_end":3184,"src_start":3038},{"artifact":0,"gen_end":1934,"gen_start":1762,"node":9,"role":"declaration","source":0,"src_end":3507,"src_start":3186},{"artifact":0,"gen_end":2030,"gen_start":1934,"node":10,"role":"declaration","source":0,"src_end":3670,"src_start":3509},{"artifact":0,"gen_end":2139,"gen_start":2030,"node":11,"role":"declaration","source":0,"src_end":3853,"src_start":3672},{"artifact":0,"gen_end":2303,"gen_start":2139,"node":12,"role":"declaration","source":0,"src_end":4110,"src_start":3855},{"artifact":0,"gen_end":2442,"gen_start":2303,"node":13,"role":"declaration","source":0,"src_end":4401,"src_start":4112},{"artifact":0,"gen_end":2550,"gen_start":2442,"node":14,"role":"declaration","source":0,"src_end":4654,"src_start":4403},{"artifact":0,"gen_end":2638,"gen_start":2550,"node":15,"role":"declaration","source":0,"src_end":4866,"src_start":4656},{"artifact":0,"gen_end":2694,"gen_start":2638,"node":16,"role":"declaration","source":0,"src_end":5013,"src_start":4868},{"artifact":0,"gen_end":2981,"gen_start":2694,"node":17,"role":"declaration","source":0,"src_end":5469,"src_start":5015},{"artifact":0,"gen_end":3597,"gen_start":2981,"node":18,"role":"declaration","source":0,"src_end":6545,"src_start":5471},{"artifact":0,"gen_end":3693,"gen_start":3597,"node":19,"role":"declaration","source":0,"src_end":6753,"src_start":6547},{"artifact":0,"gen_end":3851,"gen_start":3693,"node":20,"role":"declaration","source":0,"src_end":7051,"src_start":6755},{"artifact":0,"gen_end":4221,"gen_start":3851,"node":21,"role":"declaration","source":0,"src_end":7487,"src_start":7053},{"artifact":0,"gen_end":4352,"gen_start":4221,"node":22,"role":"declaration","source":0,"src_end":7639,"src_start":7489},{"artifact":0,"gen_end":4759,"gen_start":4352,"node":23,"role":"declaration","source":0,"src_end":8112,"src_start":7641},{"artifact":0,"gen_end":5169,"gen_start":4759,"node":24,"role":"declaration","source":0,"src_end":8588,"src_start":8114},{"artifact":0,"gen_end":5454,"gen_start":5169,"node":25,"role":"declaration","source":0,"src_end":8976,"src_start":8590},{"artifact":0,"gen_end":5693,"gen_start":5454,"node":26,"role":"declaration","source":0,"src_end":9280,"src_start":8978},{"artifact":0,"gen_end":6018,"gen_start":5693,"node":27,"role":"declaration","source":0,"src_end":9716,"src_start":9282},{"artifact":0,"gen_end":6511,"gen_start":6018,"node":28,"role":"declaration","source":0,"src_end":10381,"src_start":9718},{"artifact":0,"gen_end":6738,"gen_start":6511,"node":29,"role":"declaration","source":0,"src_end":10679,"src_start":10383},{"artifact":0,"gen_end":7691,"gen_start":6738,"node":30,"role":"declaration","source":0,"src_end":11943,"src_start":10681},{"artifact":0,"gen_end":8027,"gen_start":7691,"node":31,"role":"declaration","source":0,"src_end":12377,"src_start":11945},{"artifact":0,"gen_end":8708,"gen_start":8027,"node":32,"role":"declaration","source":0,"src_end":13311,"src_start":12379},{"artifact":0,"gen_end":8999,"gen_start":8708,"node":33,"role":"declaration","source":0,"src_end":13652,"src_start":13313},{"artifact":0,"gen_end":9222,"gen_start":8999,"node":34,"role":"declaration","source":0,"src_end":13926,"src_start":13654},{"artifact":0,"gen_end":9582,"gen_start":9222,"node":35,"role":"declaration","source":0,"src_end":14392,"src_start":13928},{"artifact":0,"gen_end":9941,"gen_start":9582,"node":36,"role":"declaration","source":0,"src_end":14853,"src_start":14394},{"artifact":0,"gen_end":10288,"gen_start":9941,"node":37,"role":"declaration","source":0,"src_end":15279,"src_start":14855},{"artifact":0,"gen_end":10498,"gen_start":10288,"node":38,"role":"declaration","source":0,"src_end":15568,"src_start":15281},{"artifact":0,"gen_end":10687,"gen_start":10498,"node":39,"role":"declaration","source":0,"src_end":15819,"src_start":15570},{"artifact":0,"gen_end":10873,"gen_start":10687,"node":40,"role":"declaration","source":0,"src_end":16055,"src_start":15821},{"artifact":0,"gen_end":11364,"gen_start":10873,"node":41,"role":"declaration","source":0,"src_end":16604,"src_start":16057},{"artifact":0,"gen_end":11595,"gen_start":11364,"node":42,"role":"declaration","source":0,"src_end":16892,"src_start":16606},{"artifact":0,"gen_end":11779,"gen_start":11595,"node":43,"role":"declaration","source":0,"src_end":17153,"src_start":16894},{"artifact":0,"gen_end":12091,"gen_start":11779,"node":44,"role":"declaration","source":0,"src_end":17490,"src_start":17155},{"artifact":0,"gen_end":12434,"gen_start":12091,"node":45,"role":"declaration","source":0,"src_end":17847,"src_start":17492},{"artifact":0,"gen_end":12734,"gen_start":12434,"node":46,"role":"declaration","source":0,"src_end":18200,"src_start":17849},{"artifact":0,"gen_end":12976,"gen_start":12734,"node":47,"role":"declaration","source":0,"src_end":18473,"src_start":18202},{"artifact":0,"gen_end":13351,"gen_start":12976,"node":48,"role":"declaration","source":0,"src_end":18856,"src_start":18475},{"artifact":0,"gen_end":13497,"gen_start":13351,"node":49,"role":"declaration","source":0,"src_end":19040,"src_start":18858},{"artifact":0,"gen_end":13578,"gen_start":13497,"node":50,"role":"declaration","source":0,"src_end":19159,"src_start":19042},{"artifact":0,"gen_end":13659,"gen_start":13578,"node":51,"role":"declaration","source":0,"src_end":19278,"src_start":19161},{"artifact":0,"gen_end":13745,"gen_start":13659,"node":52,"role":"declaration","source":0,"src_end":19402,"src_start":19280},{"artifact":0,"gen_end":13831,"gen_start":13745,"node":53,"role":"declaration","source":0,"src_end":19526,"src_start":19404},{"artifact":0,"gen_end":13980,"gen_start":13831,"node":54,"role":"declaration","source":0,"src_end":19713,"src_start":19528},{"artifact":0,"gen_end":14130,"gen_start":13980,"node":55,"role":"declaration","source":0,"src_end":19901,"src_start":19715},{"artifact":0,"gen_end":14261,"gen_start":14130,"node":56,"role":"declaration","source":0,"src_end":20056,"src_start":19903},{"artifact":0,"gen_end":14392,"gen_start":14261,"node":57,"role":"declaration","source":0,"src_end":20211,"src_start":20058},{"artifact":0,"gen_end":14817,"gen_start":14392,"node":58,"role":"declaration","source":0,"src_end":21190,"src_start":20213},{"artifact":0,"gen_end":15138,"gen_start":14817,"node":59,"role":"declaration","source":0,"src_end":21712,"src_start":21192},{"artifact":0,"gen_end":15520,"gen_start":15138,"node":60,"role":"declaration","source":0,"src_end":22295,"src_start":21714},{"artifact":0,"gen_end":15786,"gen_start":15520,"node":61,"role":"declaration","source":0,"src_end":22759,"src_start":22297},{"artifact":0,"gen_end":16081,"gen_start":15786,"node":62,"role":"declaration","source":0,"src_end":23265,"src_start":22761},{"artifact":0,"gen_end":16423,"gen_start":16081,"node":63,"role":"declaration","source":0,"src_end":23814,"src_start":23267},{"artifact":0,"gen_end":16759,"gen_start":16423,"node":64,"role":"declaration","source":0,"src_end":24357,"src_start":23816},{"artifact":0,"gen_end":17115,"gen_start":16759,"node":65,"role":"declaration","source":0,"src_end":24940,"src_start":24359},{"artifact":0,"gen_end":17471,"gen_start":17115,"node":66,"role":"declaration","source":0,"src_end":25526,"src_start":24942},{"artifact":0,"gen_end":18010,"gen_start":17471,"node":67,"role":"declaration","source":0,"src_end":26329,"src_start":25528},{"artifact":0,"gen_end":18592,"gen_start":18010,"node":68,"role":"declaration","source":0,"src_end":27278,"src_start":26331},{"artifact":0,"gen_end":19102,"gen_start":18592,"node":69,"role":"declaration","source":0,"src_end":28114,"src_start":27280},{"artifact":0,"gen_end":19556,"gen_start":19102,"node":70,"role":"declaration","source":0,"src_end":29040,"src_start":28116},{"artifact":0,"gen_end":22402,"gen_start":19556,"node":71,"role":"declaration","source":0,"src_end":32959,"src_start":29042},{"artifact":0,"gen_end":26270,"gen_start":22402,"node":72,"role":"declaration","source":0,"src_end":38890,"src_start":32961},{"artifact":0,"gen_end":27358,"gen_start":26270,"node":73,"role":"declaration","source":0,"src_end":39776,"src_start":38892},{"artifact":0,"gen_end":27599,"gen_start":27358,"node":74,"role":"declaration","source":0,"src_end":40071,"src_start":39778},{"artifact":0,"gen_end":28077,"gen_start":27599,"node":75,"role":"declaration","source":0,"src_end":40526,"src_start":40073},{"artifact":0,"gen_end":58298,"gen_start":28077,"node":76,"role":"declaration","source":0,"src_end":70968,"src_start":40528},{"artifact":0,"gen_end":58756,"gen_start":58298,"node":77,"role":"declaration","source":0,"src_end":71454,"src_start":70970},{"artifact":0,"gen_end":60041,"gen_start":58756,"node":78,"role":"declaration","source":0,"src_end":72731,"src_start":71456},{"artifact":0,"gen_end":60272,"gen_start":60041,"node":79,"role":"declaration","source":0,"src_end":73012,"src_start":72733},{"artifact":0,"gen_end":60478,"gen_start":60272,"node":80,"role":"declaration","source":0,"src_end":73260,"src_start":73014},{"artifact":0,"gen_end":60670,"gen_start":60478,"node":81,"role":"declaration","source":0,"src_end":73497,"src_start":73262},{"artifact":0,"gen_end":62519,"gen_start":60670,"node":82,"role":"declaration","source":0,"src_end":75195,"src_start":73499},{"artifact":0,"gen_end":62798,"gen_start":62519,"node":83,"role":"declaration","source":0,"src_end":75517,"src_start":75197},{"artifact":0,"gen_end":63052,"gen_start":62798,"node":84,"role":"declaration","source":0,"src_end":75814,"src_start":75519},{"artifact":0,"gen_end":63289,"gen_start":63052,"node":85,"role":"declaration","source":0,"src_end":76093,"src_start":75816},{"artifact":0,"gen_end":63618,"gen_start":63289,"node":86,"role":"declaration","source":0,"src_end":76522,"src_start":76095},{"artifact":0,"gen_end":63877,"gen_start":63618,"node":87,"role":"declaration","source":0,"src_end":76871,"src_start":76524},{"artifact":0,"gen_end":64275,"gen_start":63877,"node":88,"role":"declaration","source":0,"src_end":77300,"src_start":76873},{"artifact":0,"gen_end":64559,"gen_start":64275,"node":89,"role":"declaration","source":0,"src_end":77630,"src_start":77302},{"artifact":0,"gen_end":64874,"gen_start":64559,"node":90,"role":"declaration","source":0,"src_end":77959,"src_start":77632},{"artifact":0,"gen_end":65072,"gen_start":64874,"node":91,"role":"declaration","source":0,"src_end":78153,"src_start":77961},{"artifact":0,"gen_end":65422,"gen_start":65072,"node":92,"role":"declaration","source":0,"src_end":78556,"src_start":78155},{"artifact":0,"gen_end":65850,"gen_start":65422,"node":93,"role":"declaration","source":0,"src_end":79042,"src_start":78558},{"artifact":0,"gen_end":66213,"gen_start":65850,"node":94,"role":"declaration","source":0,"src_end":79475,"src_start":79044},{"artifact":0,"gen_end":66358,"gen_start":66213,"node":95,"role":"declaration","source":0,"src_end":79649,"src_start":79477},{"artifact":0,"gen_end":66602,"gen_start":66358,"node":96,"role":"declaration","source":0,"src_end":79961,"src_start":79651},{"artifact":0,"gen_end":66953,"gen_start":66602,"node":97,"role":"declaration","source":0,"src_end":80386,"src_start":79963},{"artifact":0,"gen_end":67084,"gen_start":66953,"node":98,"role":"declaration","source":0,"src_end":80555,"src_start":80388},{"artifact":0,"gen_end":67333,"gen_start":67084,"node":99,"role":"declaration","source":0,"src_end":80871,"src_start":80557},{"artifact":0,"gen_end":67633,"gen_start":67333,"node":100,"role":"declaration","source":0,"src_end":81229,"src_start":80873},{"artifact":0,"gen_end":67922,"gen_start":67633,"node":101,"role":"declaration","source":0,"src_end":81620,"src_start":81231},{"artifact":0,"gen_end":68177,"gen_start":67922,"node":102,"role":"declaration","source":0,"src_end":81928,"src_start":81622},{"artifact":0,"gen_end":68459,"gen_start":68177,"node":103,"role":"declaration","source":0,"src_end":82254,"src_start":81930},{"artifact":0,"gen_end":68657,"gen_start":68459,"node":104,"role":"declaration","source":0,"src_end":82485,"src_start":82256},{"artifact":0,"gen_end":68976,"gen_start":68657,"node":105,"role":"declaration","source":0,"src_end":82856,"src_start":82487},{"artifact":0,"gen_end":69190,"gen_start":68976,"node":106,"role":"declaration","source":0,"src_end":83100,"src_start":82858},{"artifact":0,"gen_end":69331,"gen_start":69190,"node":107,"role":"declaration","source":0,"src_end":83267,"src_start":83102},{"artifact":0,"gen_end":69566,"gen_start":69331,"node":108,"role":"declaration","source":0,"src_end":83570,"src_start":83269},{"artifact":0,"gen_end":69947,"gen_start":69566,"node":109,"role":"declaration","source":0,"src_end":83990,"src_start":83572},{"artifact":0,"gen_end":70207,"gen_start":69947,"node":110,"role":"declaration","source":0,"src_end":84313,"src_start":83992},{"artifact":0,"gen_end":70426,"gen_start":70207,"node":111,"role":"declaration","source":0,"src_end":84579,"src_start":84315},{"artifact":0,"gen_end":70518,"gen_start":70426,"node":112,"role":"declaration","source":0,"src_end":84692,"src_start":84581},{"artifact":0,"gen_end":71953,"gen_start":70518,"node":113,"role":"declaration","source":0,"src_end":86153,"src_start":84694},{"artifact":0,"gen_end":72649,"gen_start":71953,"node":114,"role":"declaration","source":0,"src_end":86989,"src_start":86155},{"artifact":0,"gen_end":73040,"gen_start":72649,"node":115,"role":"declaration","source":0,"src_end":87424,"src_start":86991},{"artifact":0,"gen_end":73320,"gen_start":73040,"node":116,"role":"declaration","source":0,"src_end":87815,"src_start":87426},{"artifact":0,"gen_end":73738,"gen_start":73320,"node":117,"role":"declaration","source":0,"src_end":88306,"src_start":87817},{"artifact":0,"gen_end":74019,"gen_start":73738,"node":118,"role":"declaration","source":0,"src_end":88661,"src_start":88308},{"artifact":0,"gen_end":74661,"gen_start":74019,"node":119,"role":"declaration","source":0,"src_end":89445,"src_start":88663},{"artifact":0,"gen_end":75089,"gen_start":74661,"node":120,"role":"declaration","source":0,"src_end":90031,"src_start":89447},{"artifact":0,"gen_end":75854,"gen_start":75089,"node":121,"role":"declaration","source":0,"src_end":90987,"src_start":90033},{"artifact":0,"gen_end":76281,"gen_start":75854,"node":122,"role":"declaration","source":0,"src_end":91513,"src_start":90989},{"artifact":0,"gen_end":76626,"gen_start":76281,"node":123,"role":"declaration","source":0,"src_end":91889,"src_start":91515},{"artifact":0,"gen_end":77071,"gen_start":76626,"node":124,"role":"declaration","source":0,"src_end":92375,"src_start":91891},{"artifact":0,"gen_end":77645,"gen_start":77071,"node":125,"role":"declaration","source":0,"src_end":92995,"src_start":92377},{"artifact":0,"gen_end":78103,"gen_start":77645,"node":126,"role":"declaration","source":0,"src_end":93423,"src_start":92997},{"artifact":0,"gen_end":78477,"gen_start":78103,"node":127,"role":"declaration","source":0,"src_end":93830,"src_start":93425},{"artifact":0,"gen_end":79004,"gen_start":78477,"node":128,"role":"declaration","source":0,"src_end":94310,"src_start":93832},{"artifact":0,"gen_end":79268,"gen_start":79004,"node":129,"role":"declaration","source":0,"src_end":94650,"src_start":94312},{"artifact":0,"gen_end":79572,"gen_start":79268,"node":130,"role":"declaration","source":0,"src_end":94989,"src_start":94652},{"artifact":0,"gen_end":79695,"gen_start":79572,"node":131,"role":"declaration","source":0,"src_end":95133,"src_start":94991},{"artifact":0,"gen_end":79886,"gen_start":79695,"node":132,"role":"declaration","source":0,"src_end":95333,"src_start":95135},{"artifact":0,"gen_end":80096,"gen_start":79886,"node":133,"role":"declaration","source":0,"src_end":95561,"src_start":95335},{"artifact":0,"gen_end":80242,"gen_start":80096,"node":134,"role":"declaration","source":0,"src_end":95723,"src_start":95563},{"artifact":0,"gen_end":80404,"gen_start":80242,"node":135,"role":"declaration","source":0,"src_end":95896,"src_start":95725},{"artifact":0,"gen_end":80796,"gen_start":80404,"node":136,"role":"declaration","source":0,"src_end":96300,"src_start":95898},{"artifact":0,"gen_end":81205,"gen_start":80796,"node":137,"role":"declaration","source":0,"src_end":96721,"src_start":96302},{"artifact":0,"gen_end":81620,"gen_start":81205,"node":138,"role":"declaration","source":0,"src_end":97113,"src_start":96723},{"artifact":0,"gen_end":82064,"gen_start":81620,"node":139,"role":"declaration","source":0,"src_end":97536,"src_start":97115},{"artifact":0,"gen_end":82376,"gen_start":82064,"node":140,"role":"declaration","source":0,"src_end":97869,"src_start":97538},{"artifact":0,"gen_end":82718,"gen_start":82376,"node":141,"role":"declaration","source":0,"src_end":98230,"src_start":97871},{"artifact":0,"gen_end":83046,"gen_start":82718,"node":142,"role":"declaration","source":0,"src_end":98577,"src_start":98232},{"artifact":0,"gen_end":83571,"gen_start":83046,"node":143,"role":"declaration","source":0,"src_end":99100,"src_start":98579},{"artifact":0,"gen_end":83692,"gen_start":83571,"node":144,"role":"declaration","source":0,"src_end":99250,"src_start":99102},{"artifact":0,"gen_end":83876,"gen_start":83692,"node":145,"role":"declaration","source":0,"src_end":99491,"src_start":99252},{"artifact":0,"gen_end":84139,"gen_start":83876,"node":146,"role":"declaration","source":0,"src_end":99766,"src_start":99493},{"artifact":0,"gen_end":84272,"gen_start":84139,"node":147,"role":"declaration","source":0,"src_end":99965,"src_start":99768},{"artifact":0,"gen_end":84404,"gen_start":84272,"node":148,"role":"declaration","source":0,"src_end":100163,"src_start":99967},{"artifact":0,"gen_end":84539,"gen_start":84404,"node":149,"role":"declaration","source":0,"src_end":100368,"src_start":100165},{"artifact":0,"gen_end":84622,"gen_start":84539,"node":150,"role":"declaration","source":0,"src_end":100497,"src_start":100370},{"artifact":0,"gen_end":84704,"gen_start":84622,"node":151,"role":"declaration","source":0,"src_end":100625,"src_start":100499},{"artifact":0,"gen_end":84850,"gen_start":84704,"node":152,"role":"declaration","source":0,"src_end":100811,"src_start":100627},{"artifact":0,"gen_end":84874,"gen_start":84850,"node":0,"role":"declaration","source":0,"src_end":100847,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":153,"role":"declaration","source":0,"src_end":100847,"src_start":0},{"artifact":1,"gen_end":2330,"gen_start":134,"node":154,"role":"declaration","source":0,"src_end":1644,"src_start":172},{"artifact":1,"gen_end":3005,"gen_start":2330,"node":155,"role":"declaration","source":0,"src_end":2101,"src_start":1646},{"artifact":1,"gen_end":3305,"gen_start":3005,"node":156,"role":"declaration","source":0,"src_end":2327,"src_start":2103},{"artifact":1,"gen_end":3485,"gen_start":3305,"node":157,"role":"declaration","source":0,"src_end":2471,"src_start":2329},{"artifact":1,"gen_end":3740,"gen_start":3485,"node":158,"role":"declaration","source":0,"src_end":2676,"src_start":2473},{"artifact":1,"gen_end":3927,"gen_start":3740,"node":159,"role":"declaration","source":0,"src_end":2825,"src_start":2678},{"artifact":1,"gen_end":4202,"gen_start":3927,"node":160,"role":"declaration","source":0,"src_end":3036,"src_start":2827},{"artifact":1,"gen_end":4386,"gen_start":4202,"node":161,"role":"declaration","source":0,"src_end":3184,"src_start":3038},{"artifact":1,"gen_end":4813,"gen_start":4386,"node":162,"role":"declaration","source":0,"src_end":3507,"src_start":3186},{"artifact":1,"gen_end":5014,"gen_start":4813,"node":163,"role":"declaration","source":0,"src_end":3670,"src_start":3509},{"artifact":1,"gen_end":5234,"gen_start":5014,"node":164,"role":"declaration","source":0,"src_end":3853,"src_start":3672},{"artifact":1,"gen_end":5581,"gen_start":5234,"node":165,"role":"declaration","source":0,"src_end":4110,"src_start":3855},{"artifact":1,"gen_end":5970,"gen_start":5581,"node":166,"role":"declaration","source":0,"src_end":4401,"src_start":4112},{"artifact":1,"gen_end":6297,"gen_start":5970,"node":167,"role":"declaration","source":0,"src_end":4654,"src_start":4403},{"artifact":1,"gen_end":6559,"gen_start":6297,"node":168,"role":"declaration","source":0,"src_end":4866,"src_start":4656},{"artifact":1,"gen_end":6744,"gen_start":6559,"node":169,"role":"declaration","source":0,"src_end":5013,"src_start":4868},{"artifact":1,"gen_end":7390,"gen_start":6744,"node":170,"role":"declaration","source":0,"src_end":5469,"src_start":5015},{"artifact":1,"gen_end":8948,"gen_start":7390,"node":171,"role":"declaration","source":0,"src_end":6545,"src_start":5471},{"artifact":1,"gen_end":9206,"gen_start":8948,"node":172,"role":"declaration","source":0,"src_end":6753,"src_start":6547},{"artifact":1,"gen_end":9602,"gen_start":9206,"node":173,"role":"declaration","source":0,"src_end":7051,"src_start":6755},{"artifact":1,"gen_end":10154,"gen_start":9602,"node":174,"role":"declaration","source":0,"src_end":7487,"src_start":7053},{"artifact":1,"gen_end":10467,"gen_start":10154,"node":175,"role":"declaration","source":0,"src_end":7639,"src_start":7489},{"artifact":1,"gen_end":11056,"gen_start":10467,"node":176,"role":"declaration","source":0,"src_end":8112,"src_start":7641},{"artifact":1,"gen_end":11648,"gen_start":11056,"node":177,"role":"declaration","source":0,"src_end":8588,"src_start":8114},{"artifact":1,"gen_end":12112,"gen_start":11648,"node":178,"role":"declaration","source":0,"src_end":8976,"src_start":8590},{"artifact":1,"gen_end":12530,"gen_start":12112,"node":179,"role":"declaration","source":0,"src_end":9280,"src_start":8978},{"artifact":1,"gen_end":13040,"gen_start":12530,"node":180,"role":"declaration","source":0,"src_end":9716,"src_start":9282},{"artifact":1,"gen_end":13716,"gen_start":13040,"node":181,"role":"declaration","source":0,"src_end":10381,"src_start":9718},{"artifact":1,"gen_end":14127,"gen_start":13716,"node":182,"role":"declaration","source":0,"src_end":10679,"src_start":10383},{"artifact":1,"gen_end":15262,"gen_start":14127,"node":183,"role":"declaration","source":0,"src_end":11943,"src_start":10681},{"artifact":1,"gen_end":15775,"gen_start":15262,"node":184,"role":"declaration","source":0,"src_end":12377,"src_start":11945},{"artifact":1,"gen_end":16635,"gen_start":15775,"node":185,"role":"declaration","source":0,"src_end":13311,"src_start":12379},{"artifact":1,"gen_end":17108,"gen_start":16635,"node":186,"role":"declaration","source":0,"src_end":13652,"src_start":13313},{"artifact":1,"gen_end":17506,"gen_start":17108,"node":187,"role":"declaration","source":0,"src_end":13926,"src_start":13654},{"artifact":1,"gen_end":18042,"gen_start":17506,"node":188,"role":"declaration","source":0,"src_end":14392,"src_start":13928},{"artifact":1,"gen_end":18576,"gen_start":18042,"node":189,"role":"declaration","source":0,"src_end":14853,"src_start":14394},{"artifact":1,"gen_end":19104,"gen_start":18576,"node":190,"role":"declaration","source":0,"src_end":15279,"src_start":14855},{"artifact":1,"gen_end":19530,"gen_start":19104,"node":191,"role":"declaration","source":0,"src_end":15568,"src_start":15281},{"artifact":1,"gen_end":19916,"gen_start":19530,"node":192,"role":"declaration","source":0,"src_end":15819,"src_start":15570},{"artifact":1,"gen_end":20283,"gen_start":19916,"node":193,"role":"declaration","source":0,"src_end":16055,"src_start":15821},{"artifact":1,"gen_end":20964,"gen_start":20283,"node":194,"role":"declaration","source":0,"src_end":16604,"src_start":16057},{"artifact":1,"gen_end":21372,"gen_start":20964,"node":195,"role":"declaration","source":0,"src_end":16892,"src_start":16606},{"artifact":1,"gen_end":21753,"gen_start":21372,"node":196,"role":"declaration","source":0,"src_end":17153,"src_start":16894},{"artifact":1,"gen_end":22219,"gen_start":21753,"node":197,"role":"declaration","source":0,"src_end":17490,"src_start":17155},{"artifact":1,"gen_end":22714,"gen_start":22219,"node":198,"role":"declaration","source":0,"src_end":17847,"src_start":17492},{"artifact":1,"gen_end":23198,"gen_start":22714,"node":199,"role":"declaration","source":0,"src_end":18200,"src_start":17849},{"artifact":1,"gen_end":23622,"gen_start":23198,"node":200,"role":"declaration","source":0,"src_end":18473,"src_start":18202},{"artifact":1,"gen_end":24183,"gen_start":23622,"node":201,"role":"declaration","source":0,"src_end":18856,"src_start":18475},{"artifact":1,"gen_end":24435,"gen_start":24183,"node":202,"role":"declaration","source":0,"src_end":19040,"src_start":18858},{"artifact":1,"gen_end":24622,"gen_start":24435,"node":203,"role":"declaration","source":0,"src_end":19159,"src_start":19042},{"artifact":1,"gen_end":24809,"gen_start":24622,"node":204,"role":"declaration","source":0,"src_end":19278,"src_start":19161},{"artifact":1,"gen_end":25003,"gen_start":24809,"node":205,"role":"declaration","source":0,"src_end":19402,"src_start":19280},{"artifact":1,"gen_end":25197,"gen_start":25003,"node":206,"role":"declaration","source":0,"src_end":19526,"src_start":19404},{"artifact":1,"gen_end":25458,"gen_start":25197,"node":207,"role":"declaration","source":0,"src_end":19713,"src_start":19528},{"artifact":1,"gen_end":25720,"gen_start":25458,"node":208,"role":"declaration","source":0,"src_end":19901,"src_start":19715},{"artifact":1,"gen_end":25996,"gen_start":25720,"node":209,"role":"declaration","source":0,"src_end":20056,"src_start":19903},{"artifact":1,"gen_end":26272,"gen_start":25996,"node":210,"role":"declaration","source":0,"src_end":20211,"src_start":20058},{"artifact":1,"gen_end":26583,"gen_start":26272,"node":211,"role":"declaration","source":0,"src_end":21190,"src_start":20213},{"artifact":1,"gen_end":26931,"gen_start":26583,"node":212,"role":"declaration","source":0,"src_end":21712,"src_start":21192},{"artifact":1,"gen_end":27335,"gen_start":26931,"node":213,"role":"declaration","source":0,"src_end":22295,"src_start":21714},{"artifact":1,"gen_end":27617,"gen_start":27335,"node":214,"role":"declaration","source":0,"src_end":22759,"src_start":22297},{"artifact":1,"gen_end":27930,"gen_start":27617,"node":215,"role":"declaration","source":0,"src_end":23265,"src_start":22761},{"artifact":1,"gen_end":28288,"gen_start":27930,"node":216,"role":"declaration","source":0,"src_end":23814,"src_start":23267},{"artifact":1,"gen_end":28636,"gen_start":28288,"node":217,"role":"declaration","source":0,"src_end":24357,"src_start":23816},{"artifact":1,"gen_end":28995,"gen_start":28636,"node":218,"role":"declaration","source":0,"src_end":24940,"src_start":24359},{"artifact":1,"gen_end":29344,"gen_start":28995,"node":219,"role":"declaration","source":0,"src_end":25526,"src_start":24942},{"artifact":1,"gen_end":29840,"gen_start":29344,"node":220,"role":"declaration","source":0,"src_end":26329,"src_start":25528},{"artifact":1,"gen_end":30343,"gen_start":29840,"node":221,"role":"declaration","source":0,"src_end":27278,"src_start":26331},{"artifact":1,"gen_end":30837,"gen_start":30343,"node":222,"role":"declaration","source":0,"src_end":28114,"src_start":27280},{"artifact":1,"gen_end":31157,"gen_start":30837,"node":223,"role":"declaration","source":0,"src_end":29040,"src_start":28116},{"artifact":1,"gen_end":34190,"gen_start":31157,"node":224,"role":"declaration","source":0,"src_end":32959,"src_start":29042},{"artifact":1,"gen_end":38246,"gen_start":34190,"node":225,"role":"declaration","source":0,"src_end":38890,"src_start":32961},{"artifact":1,"gen_end":39516,"gen_start":38246,"node":226,"role":"declaration","source":0,"src_end":39776,"src_start":38892},{"artifact":1,"gen_end":39954,"gen_start":39516,"node":227,"role":"declaration","source":0,"src_end":40071,"src_start":39778},{"artifact":1,"gen_end":40618,"gen_start":39954,"node":228,"role":"declaration","source":0,"src_end":40526,"src_start":40073},{"artifact":1,"gen_end":71405,"gen_start":40618,"node":229,"role":"declaration","source":0,"src_end":70968,"src_start":40528},{"artifact":1,"gen_end":72091,"gen_start":71405,"node":230,"role":"declaration","source":0,"src_end":71454,"src_start":70970},{"artifact":1,"gen_end":73631,"gen_start":72091,"node":231,"role":"declaration","source":0,"src_end":72731,"src_start":71456},{"artifact":1,"gen_end":74110,"gen_start":73631,"node":232,"role":"declaration","source":0,"src_end":73012,"src_start":72733},{"artifact":1,"gen_end":74564,"gen_start":74110,"node":233,"role":"declaration","source":0,"src_end":73260,"src_start":73014},{"artifact":1,"gen_end":75004,"gen_start":74564,"node":234,"role":"declaration","source":0,"src_end":73497,"src_start":73262},{"artifact":1,"gen_end":77109,"gen_start":75004,"node":235,"role":"declaration","source":0,"src_end":75195,"src_start":73499},{"artifact":1,"gen_end":77639,"gen_start":77109,"node":236,"role":"declaration","source":0,"src_end":75517,"src_start":75197},{"artifact":1,"gen_end":78144,"gen_start":77639,"node":237,"role":"declaration","source":0,"src_end":75814,"src_start":75519},{"artifact":1,"gen_end":78632,"gen_start":78144,"node":238,"role":"declaration","source":0,"src_end":76093,"src_start":75816},{"artifact":1,"gen_end":79140,"gen_start":78632,"node":239,"role":"declaration","source":0,"src_end":76522,"src_start":76095},{"artifact":1,"gen_end":79578,"gen_start":79140,"node":240,"role":"declaration","source":0,"src_end":76871,"src_start":76524},{"artifact":1,"gen_end":80147,"gen_start":79578,"node":241,"role":"declaration","source":0,"src_end":77300,"src_start":76873},{"artifact":1,"gen_end":80611,"gen_start":80147,"node":242,"role":"declaration","source":0,"src_end":77630,"src_start":77302},{"artifact":1,"gen_end":81081,"gen_start":80611,"node":243,"role":"declaration","source":0,"src_end":77959,"src_start":77632},{"artifact":1,"gen_end":81461,"gen_start":81081,"node":244,"role":"declaration","source":0,"src_end":78153,"src_start":77961},{"artifact":1,"gen_end":81984,"gen_start":81461,"node":245,"role":"declaration","source":0,"src_end":78556,"src_start":78155},{"artifact":1,"gen_end":82571,"gen_start":81984,"node":246,"role":"declaration","source":0,"src_end":79042,"src_start":78558},{"artifact":1,"gen_end":83117,"gen_start":82571,"node":247,"role":"declaration","source":0,"src_end":79475,"src_start":79044},{"artifact":1,"gen_end":83446,"gen_start":83117,"node":248,"role":"declaration","source":0,"src_end":79649,"src_start":79477},{"artifact":1,"gen_end":83904,"gen_start":83446,"node":249,"role":"declaration","source":0,"src_end":79961,"src_start":79651},{"artifact":1,"gen_end":84475,"gen_start":83904,"node":250,"role":"declaration","source":0,"src_end":80386,"src_start":79963},{"artifact":1,"gen_end":84822,"gen_start":84475,"node":251,"role":"declaration","source":0,"src_end":80555,"src_start":80388},{"artifact":1,"gen_end":85286,"gen_start":84822,"node":252,"role":"declaration","source":0,"src_end":80871,"src_start":80557},{"artifact":1,"gen_end":85798,"gen_start":85286,"node":253,"role":"declaration","source":0,"src_end":81229,"src_start":80873},{"artifact":1,"gen_end":86304,"gen_start":85798,"node":254,"role":"declaration","source":0,"src_end":81620,"src_start":81231},{"artifact":1,"gen_end":86758,"gen_start":86304,"node":255,"role":"declaration","source":0,"src_end":81928,"src_start":81622},{"artifact":1,"gen_end":87237,"gen_start":86758,"node":256,"role":"declaration","source":0,"src_end":82254,"src_start":81930},{"artifact":1,"gen_end":87653,"gen_start":87237,"node":257,"role":"declaration","source":0,"src_end":82485,"src_start":82256},{"artifact":1,"gen_end":88190,"gen_start":87653,"node":258,"role":"declaration","source":0,"src_end":82856,"src_start":82487},{"artifact":1,"gen_end":88620,"gen_start":88190,"node":259,"role":"declaration","source":0,"src_end":83100,"src_start":82858},{"artifact":1,"gen_end":88945,"gen_start":88620,"node":260,"role":"declaration","source":0,"src_end":83267,"src_start":83102},{"artifact":1,"gen_end":89394,"gen_start":88945,"node":261,"role":"declaration","source":0,"src_end":83570,"src_start":83269},{"artifact":1,"gen_end":89953,"gen_start":89394,"node":262,"role":"declaration","source":0,"src_end":83990,"src_start":83572},{"artifact":1,"gen_end":90422,"gen_start":89953,"node":263,"role":"declaration","source":0,"src_end":84313,"src_start":83992},{"artifact":1,"gen_end":90858,"gen_start":90422,"node":264,"role":"declaration","source":0,"src_end":84579,"src_start":84315},{"artifact":1,"gen_end":91132,"gen_start":90858,"node":265,"role":"declaration","source":0,"src_end":84692,"src_start":84581},{"artifact":1,"gen_end":92747,"gen_start":91132,"node":266,"role":"declaration","source":0,"src_end":86153,"src_start":84694},{"artifact":1,"gen_end":93667,"gen_start":92747,"node":267,"role":"declaration","source":0,"src_end":86989,"src_start":86155},{"artifact":1,"gen_end":94240,"gen_start":93667,"node":268,"role":"declaration","source":0,"src_end":87424,"src_start":86991},{"artifact":1,"gen_end":94721,"gen_start":94240,"node":269,"role":"declaration","source":0,"src_end":87815,"src_start":87426},{"artifact":1,"gen_end":95338,"gen_start":94721,"node":270,"role":"declaration","source":0,"src_end":88306,"src_start":87817},{"artifact":1,"gen_end":95816,"gen_start":95338,"node":271,"role":"declaration","source":0,"src_end":88661,"src_start":88308},{"artifact":1,"gen_end":96683,"gen_start":95816,"node":272,"role":"declaration","source":0,"src_end":89445,"src_start":88663},{"artifact":1,"gen_end":97335,"gen_start":96683,"node":273,"role":"declaration","source":0,"src_end":90031,"src_start":89447},{"artifact":1,"gen_end":98331,"gen_start":97335,"node":274,"role":"declaration","source":0,"src_end":90987,"src_start":90033},{"artifact":1,"gen_end":98982,"gen_start":98331,"node":275,"role":"declaration","source":0,"src_end":91513,"src_start":90989},{"artifact":1,"gen_end":99510,"gen_start":98982,"node":276,"role":"declaration","source":0,"src_end":91889,"src_start":91515},{"artifact":1,"gen_end":100179,"gen_start":99510,"node":277,"role":"declaration","source":0,"src_end":92375,"src_start":91891},{"artifact":1,"gen_end":100939,"gen_start":100179,"node":278,"role":"declaration","source":0,"src_end":92995,"src_start":92377},{"artifact":1,"gen_end":101566,"gen_start":100939,"node":279,"role":"declaration","source":0,"src_end":93423,"src_start":92997},{"artifact":1,"gen_end":102117,"gen_start":101566,"node":280,"role":"declaration","source":0,"src_end":93830,"src_start":93425},{"artifact":1,"gen_end":102775,"gen_start":102117,"node":281,"role":"declaration","source":0,"src_end":94310,"src_start":93832},{"artifact":1,"gen_end":103220,"gen_start":102775,"node":282,"role":"declaration","source":0,"src_end":94650,"src_start":94312},{"artifact":1,"gen_end":103687,"gen_start":103220,"node":283,"role":"declaration","source":0,"src_end":94989,"src_start":94652},{"artifact":1,"gen_end":103992,"gen_start":103687,"node":284,"role":"declaration","source":0,"src_end":95133,"src_start":94991},{"artifact":1,"gen_end":104365,"gen_start":103992,"node":285,"role":"declaration","source":0,"src_end":95333,"src_start":95135},{"artifact":1,"gen_end":104757,"gen_start":104365,"node":286,"role":"declaration","source":0,"src_end":95561,"src_start":95335},{"artifact":1,"gen_end":105049,"gen_start":104757,"node":287,"role":"declaration","source":0,"src_end":95723,"src_start":95563},{"artifact":1,"gen_end":105393,"gen_start":105049,"node":288,"role":"declaration","source":0,"src_end":95896,"src_start":95725},{"artifact":1,"gen_end":105894,"gen_start":105393,"node":289,"role":"declaration","source":0,"src_end":96300,"src_start":95898},{"artifact":1,"gen_end":106412,"gen_start":105894,"node":290,"role":"declaration","source":0,"src_end":96721,"src_start":96302},{"artifact":1,"gen_end":106936,"gen_start":106412,"node":291,"role":"declaration","source":0,"src_end":97113,"src_start":96723},{"artifact":1,"gen_end":107489,"gen_start":106936,"node":292,"role":"declaration","source":0,"src_end":97536,"src_start":97115},{"artifact":1,"gen_end":107910,"gen_start":107489,"node":293,"role":"declaration","source":0,"src_end":97869,"src_start":97538},{"artifact":1,"gen_end":108361,"gen_start":107910,"node":294,"role":"declaration","source":0,"src_end":98230,"src_start":97871},{"artifact":1,"gen_end":108798,"gen_start":108361,"node":295,"role":"declaration","source":0,"src_end":98577,"src_start":98232},{"artifact":1,"gen_end":109432,"gen_start":108798,"node":296,"role":"declaration","source":0,"src_end":99100,"src_start":98579},{"artifact":1,"gen_end":109662,"gen_start":109432,"node":297,"role":"declaration","source":0,"src_end":99250,"src_start":99102},{"artifact":1,"gen_end":109955,"gen_start":109662,"node":298,"role":"declaration","source":0,"src_end":99491,"src_start":99252},{"artifact":1,"gen_end":110327,"gen_start":109955,"node":299,"role":"declaration","source":0,"src_end":99766,"src_start":99493},{"artifact":1,"gen_end":110569,"gen_start":110327,"node":300,"role":"declaration","source":0,"src_end":99965,"src_start":99768},{"artifact":1,"gen_end":110810,"gen_start":110569,"node":301,"role":"declaration","source":0,"src_end":100163,"src_start":99967},{"artifact":1,"gen_end":111054,"gen_start":110810,"node":302,"role":"declaration","source":0,"src_end":100368,"src_start":100165},{"artifact":1,"gen_end":111246,"gen_start":111054,"node":303,"role":"declaration","source":0,"src_end":100497,"src_start":100370},{"artifact":1,"gen_end":111437,"gen_start":111246,"node":304,"role":"declaration","source":0,"src_end":100625,"src_start":100499},{"artifact":1,"gen_end":111692,"gen_start":111437,"node":305,"role":"declaration","source":0,"src_end":100811,"src_start":100627},{"artifact":1,"gen_end":111707,"gen_start":111692,"node":153,"role":"declaration","source":0,"src_end":100847,"src_start":0}],"module":"Gnaf","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"},{"id":40,"kind":"semantic-declaration"},{"id":41,"kind":"semantic-declaration"},{"id":42,"kind":"semantic-declaration"},{"id":43,"kind":"semantic-declaration"},{"id":44,"kind":"semantic-declaration"},{"id":45,"kind":"semantic-declaration"},{"id":46,"kind":"semantic-declaration"},{"id":47,"kind":"semantic-declaration"},{"id":48,"kind":"semantic-declaration"},{"id":49,"kind":"semantic-declaration"},{"id":50,"kind":"semantic-declaration"},{"id":51,"kind":"semantic-declaration"},{"id":52,"kind":"semantic-declaration"},{"id":53,"kind":"semantic-declaration"},{"id":54,"kind":"semantic-declaration"},{"id":55,"kind":"semantic-declaration"},{"id":56,"kind":"semantic-declaration"},{"id":57,"kind":"semantic-declaration"},{"id":58,"kind":"semantic-declaration"},{"id":59,"kind":"semantic-declaration"},{"id":60,"kind":"semantic-declaration"},{"id":61,"kind":"semantic-declaration"},{"id":62,"kind":"semantic-declaration"},{"id":63,"kind":"semantic-declaration"},{"id":64,"kind":"semantic-declaration"},{"id":65,"kind":"semantic-declaration"},{"id":66,"kind":"semantic-declaration"},{"id":67,"kind":"semantic-declaration"},{"id":68,"kind":"semantic-declaration"},{"id":69,"kind":"semantic-declaration"},{"id":70,"kind":"semantic-declaration"},{"id":71,"kind":"semantic-declaration"},{"id":72,"kind":"semantic-declaration"},{"id":73,"kind":"semantic-declaration"},{"id":74,"kind":"semantic-declaration"},{"id":75,"kind":"semantic-declaration"},{"id":76,"kind":"semantic-declaration"},{"id":77,"kind":"semantic-declaration"},{"id":78,"kind":"semantic-declaration"},{"id":79,"kind":"semantic-declaration"},{"id":80,"kind":"semantic-declaration"},{"id":81,"kind":"semantic-declaration"},{"id":82,"kind":"semantic-declaration"},{"id":83,"kind":"semantic-declaration"},{"id":84,"kind":"semantic-declaration"},{"id":85,"kind":"semantic-declaration"},{"id":86,"kind":"semantic-declaration"},{"id":87,"kind":"semantic-declaration"},{"id":88,"kind":"semantic-declaration"},{"id":89,"kind":"semantic-declaration"},{"id":90,"kind":"semantic-declaration"},{"id":91,"kind":"semantic-declaration"},{"id":92,"kind":"semantic-declaration"},{"id":93,"kind":"semantic-declaration"},{"id":94,"kind":"semantic-declaration"},{"id":95,"kind":"semantic-declaration"},{"id":96,"kind":"semantic-declaration"},{"id":97,"kind":"semantic-declaration"},{"id":98,"kind":"semantic-declaration"},{"id":99,"kind":"semantic-declaration"},{"id":100,"kind":"semantic-declaration"},{"id":101,"kind":"semantic-declaration"},{"id":102,"kind":"semantic-declaration"},{"id":103,"kind":"semantic-declaration"},{"id":104,"kind":"semantic-declaration"},{"id":105,"kind":"semantic-declaration"},{"id":106,"kind":"semantic-declaration"},{"id":107,"kind":"semantic-declaration"},{"id":108,"kind":"semantic-declaration"},{"id":109,"kind":"semantic-declaration"},{"id":110,"kind":"semantic-declaration"},{"id":111,"kind":"semantic-declaration"},{"id":112,"kind":"semantic-declaration"},{"id":113,"kind":"semantic-declaration"},{"id":114,"kind":"semantic-declaration"},{"id":115,"kind":"semantic-declaration"},{"id":116,"kind":"semantic-declaration"},{"id":117,"kind":"semantic-declaration"},{"id":118,"kind":"semantic-declaration"},{"id":119,"kind":"semantic-declaration"},{"id":120,"kind":"semantic-declaration"},{"id":121,"kind":"semantic-declaration"},{"id":122,"kind":"semantic-declaration"},{"id":123,"kind":"semantic-declaration"},{"id":124,"kind":"semantic-declaration"},{"id":125,"kind":"semantic-declaration"},{"id":126,"kind":"semantic-declaration"},{"id":127,"kind":"semantic-declaration"},{"id":128,"kind":"semantic-declaration"},{"id":129,"kind":"semantic-declaration"},{"id":130,"kind":"semantic-declaration"},{"id":131,"kind":"semantic-declaration"},{"id":132,"kind":"semantic-declaration"},{"id":133,"kind":"semantic-declaration"},{"id":134,"kind":"semantic-declaration"},{"id":135,"kind":"semantic-declaration"},{"id":136,"kind":"semantic-declaration"},{"id":137,"kind":"semantic-declaration"},{"id":138,"kind":"semantic-declaration"},{"id":139,"kind":"semantic-declaration"},{"id":140,"kind":"semantic-declaration"},{"id":141,"kind":"semantic-declaration"},{"id":142,"kind":"semantic-declaration"},{"id":143,"kind":"semantic-declaration"},{"id":144,"kind":"semantic-declaration"},{"id":145,"kind":"semantic-declaration"},{"id":146,"kind":"semantic-declaration"},{"id":147,"kind":"semantic-declaration"},{"id":148,"kind":"semantic-declaration"},{"id":149,"kind":"semantic-declaration"},{"id":150,"kind":"semantic-declaration"},{"id":151,"kind":"semantic-declaration"},{"id":152,"kind":"semantic-declaration"},{"id":153,"kind":"semantic-latex-module"},{"id":154,"kind":"semantic-declaration"},{"id":155,"kind":"semantic-declaration"},{"id":156,"kind":"semantic-declaration"},{"id":157,"kind":"semantic-declaration"},{"id":158,"kind":"semantic-declaration"},{"id":159,"kind":"semantic-declaration"},{"id":160,"kind":"semantic-declaration"},{"id":161,"kind":"semantic-declaration"},{"id":162,"kind":"semantic-declaration"},{"id":163,"kind":"semantic-declaration"},{"id":164,"kind":"semantic-declaration"},{"id":165,"kind":"semantic-declaration"},{"id":166,"kind":"semantic-declaration"},{"id":167,"kind":"semantic-declaration"},{"id":168,"kind":"semantic-declaration"},{"id":169,"kind":"semantic-declaration"},{"id":170,"kind":"semantic-declaration"},{"id":171,"kind":"semantic-declaration"},{"id":172,"kind":"semantic-declaration"},{"id":173,"kind":"semantic-declaration"},{"id":174,"kind":"semantic-declaration"},{"id":175,"kind":"semantic-declaration"},{"id":176,"kind":"semantic-declaration"},{"id":177,"kind":"semantic-declaration"},{"id":178,"kind":"semantic-declaration"},{"id":179,"kind":"semantic-declaration"},{"id":180,"kind":"semantic-declaration"},{"id":181,"kind":"semantic-declaration"},{"id":182,"kind":"semantic-declaration"},{"id":183,"kind":"semantic-declaration"},{"id":184,"kind":"semantic-declaration"},{"id":185,"kind":"semantic-declaration"},{"id":186,"kind":"semantic-declaration"},{"id":187,"kind":"semantic-declaration"},{"id":188,"kind":"semantic-declaration"},{"id":189,"kind":"semantic-declaration"},{"id":190,"kind":"semantic-declaration"},{"id":191,"kind":"semantic-declaration"},{"id":192,"kind":"semantic-declaration"},{"id":193,"kind":"semantic-declaration"},{"id":194,"kind":"semantic-declaration"},{"id":195,"kind":"semantic-declaration"},{"id":196,"kind":"semantic-declaration"},{"id":197,"kind":"semantic-declaration"},{"id":198,"kind":"semantic-declaration"},{"id":199,"kind":"semantic-declaration"},{"id":200,"kind":"semantic-declaration"},{"id":201,"kind":"semantic-declaration"},{"id":202,"kind":"semantic-declaration"},{"id":203,"kind":"semantic-declaration"},{"id":204,"kind":"semantic-declaration"},{"id":205,"kind":"semantic-declaration"},{"id":206,"kind":"semantic-declaration"},{"id":207,"kind":"semantic-declaration"},{"id":208,"kind":"semantic-declaration"},{"id":209,"kind":"semantic-declaration"},{"id":210,"kind":"semantic-declaration"},{"id":211,"kind":"semantic-declaration"},{"id":212,"kind":"semantic-declaration"},{"id":213,"kind":"semantic-declaration"},{"id":214,"kind":"semantic-declaration"},{"id":215,"kind":"semantic-declaration"},{"id":216,"kind":"semantic-declaration"},{"id":217,"kind":"semantic-declaration"},{"id":218,"kind":"semantic-declaration"},{"id":219,"kind":"semantic-declaration"},{"id":220,"kind":"semantic-declaration"},{"id":221,"kind":"semantic-declaration"},{"id":222,"kind":"semantic-declaration"},{"id":223,"kind":"semantic-declaration"},{"id":224,"kind":"semantic-declaration"},{"id":225,"kind":"semantic-declaration"},{"id":226,"kind":"semantic-declaration"},{"id":227,"kind":"semantic-declaration"},{"id":228,"kind":"semantic-declaration"},{"id":229,"kind":"semantic-declaration"},{"id":230,"kind":"semantic-declaration"},{"id":231,"kind":"semantic-declaration"},{"id":232,"kind":"semantic-declaration"},{"id":233,"kind":"semantic-declaration"},{"id":234,"kind":"semantic-declaration"},{"id":235,"kind":"semantic-declaration"},{"id":236,"kind":"semantic-declaration"},{"id":237,"kind":"semantic-declaration"},{"id":238,"kind":"semantic-declaration"},{"id":239,"kind":"semantic-declaration"},{"id":240,"kind":"semantic-declaration"},{"id":241,"kind":"semantic-declaration"},{"id":242,"kind":"semantic-declaration"},{"id":243,"kind":"semantic-declaration"},{"id":244,"kind":"semantic-declaration"},{"id":245,"kind":"semantic-declaration"},{"id":246,"kind":"semantic-declaration"},{"id":247,"kind":"semantic-declaration"},{"id":248,"kind":"semantic-declaration"},{"id":249,"kind":"semantic-declaration"},{"id":250,"kind":"semantic-declaration"},{"id":251,"kind":"semantic-declaration"},{"id":252,"kind":"semantic-declaration"},{"id":253,"kind":"semantic-declaration"},{"id":254,"kind":"semantic-declaration"},{"id":255,"kind":"semantic-declaration"},{"id":256,"kind":"semantic-declaration"},{"id":257,"kind":"semantic-declaration"},{"id":258,"kind":"semantic-declaration"},{"id":259,"kind":"semantic-declaration"},{"id":260,"kind":"semantic-declaration"},{"id":261,"kind":"semantic-declaration"},{"id":262,"kind":"semantic-declaration"},{"id":263,"kind":"semantic-declaration"},{"id":264,"kind":"semantic-declaration"},{"id":265,"kind":"semantic-declaration"},{"id":266,"kind":"semantic-declaration"},{"id":267,"kind":"semantic-declaration"},{"id":268,"kind":"semantic-declaration"},{"id":269,"kind":"semantic-declaration"},{"id":270,"kind":"semantic-declaration"},{"id":271,"kind":"semantic-declaration"},{"id":272,"kind":"semantic-declaration"},{"id":273,"kind":"semantic-declaration"},{"id":274,"kind":"semantic-declaration"},{"id":275,"kind":"semantic-declaration"},{"id":276,"kind":"semantic-declaration"},{"id":277,"kind":"semantic-declaration"},{"id":278,"kind":"semantic-declaration"},{"id":279,"kind":"semantic-declaration"},{"id":280,"kind":"semantic-declaration"},{"id":281,"kind":"semantic-declaration"},{"id":282,"kind":"semantic-declaration"},{"id":283,"kind":"semantic-declaration"},{"id":284,"kind":"semantic-declaration"},{"id":285,"kind":"semantic-declaration"},{"id":286,"kind":"semantic-declaration"},{"id":287,"kind":"semantic-declaration"},{"id":288,"kind":"semantic-declaration"},{"id":289,"kind":"semantic-declaration"},{"id":290,"kind":"semantic-declaration"},{"id":291,"kind":"semantic-declaration"},{"id":292,"kind":"semantic-declaration"},{"id":293,"kind":"semantic-declaration"},{"id":294,"kind":"semantic-declaration"},{"id":295,"kind":"semantic-declaration"},{"id":296,"kind":"semantic-declaration"},{"id":297,"kind":"semantic-declaration"},{"id":298,"kind":"semantic-declaration"},{"id":299,"kind":"semantic-declaration"},{"id":300,"kind":"semantic-declaration"},{"id":301,"kind":"semantic-declaration"},{"id":302,"kind":"semantic-declaration"},{"id":303,"kind":"semantic-declaration"},{"id":304,"kind":"semantic-declaration"},{"id":305,"kind":"semantic-declaration"}],"semantic_id":"c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517","source_id":"ce718723d5d252a9adafdc3cb3b76931b1d91e053dd3e7e31bcb9b9496a1941c","sources":[{"id":0,"kind":"file","path":"src/Gnaf.lex.tex","sha256":"21b9c9174ae33fe77204e196a29a51463f2c9a400f7b305d33591c54f31d798d"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/LexLeanTarget/Gnaf.lean"},{"id":1,"kind":"tex","path":"modules/LexLeanTarget/Gnaf.tex"}],"mappings":[{"artifact":0,"gen_end":324,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":100847,"src_start":0},{"artifact":0,"gen_end":1115,"gen_start":324,"node":1,"role":"declaration","source":0,"src_end":1644,"src_start":172},{"artifact":0,"gen_end":1301,"gen_start":1115,"node":2,"role":"declaration","source":0,"src_end":2101,"src_start":1646},{"artifact":0,"gen_end":1389,"gen_start":1301,"node":3,"role":"declaration","source":0,"src_end":2327,"src_start":2103},{"artifact":0,"gen_end":1458,"gen_start":1389,"node":4,"role":"declaration","source":0,"src_end":2471,"src_start":2329},{"artifact":0,"gen_end":1539,"gen_start":1458,"node":5,"role":"declaration","source":0,"src_end":2676,"src_start":2473},{"artifact":0,"gen_end":1597,"gen_start":1539,"node":6,"role":"declaration","source":0,"src_end":2825,"src_start":2678},{"artifact":0,"gen_end":1689,"gen_start":1597,"node":7,"role":"declaration","source":0,"src_end":3036,"src_start":2827},{"artifact":0,"gen_end":1762,"gen_start":1689,"node":8,"role":"declaration","source":0,"src_end":3184,"src_start":3038},{"artifact":0,"gen_end":1934,"gen_start":1762,"node":9,"role":"declaration","source":0,"src_end":3507,"src_start":3186},{"artifact":0,"gen_end":2030,"gen_start":1934,"node":10,"role":"declaration","source":0,"src_end":3670,"src_start":3509},{"artifact":0,"gen_end":2139,"gen_start":2030,"node":11,"role":"declaration","source":0,"src_end":3853,"src_start":3672},{"artifact":0,"gen_end":2303,"gen_start":2139,"node":12,"role":"declaration","source":0,"src_end":4110,"src_start":3855},{"artifact":0,"gen_end":2442,"gen_start":2303,"node":13,"role":"declaration","source":0,"src_end":4401,"src_start":4112},{"artifact":0,"gen_end":2550,"gen_start":2442,"node":14,"role":"declaration","source":0,"src_end":4654,"src_start":4403},{"artifact":0,"gen_end":2638,"gen_start":2550,"node":15,"role":"declaration","source":0,"src_end":4866,"src_start":4656},{"artifact":0,"gen_end":2694,"gen_start":2638,"node":16,"role":"declaration","source":0,"src_end":5013,"src_start":4868},{"artifact":0,"gen_end":2981,"gen_start":2694,"node":17,"role":"declaration","source":0,"src_end":5469,"src_start":5015},{"artifact":0,"gen_end":3597,"gen_start":2981,"node":18,"role":"declaration","source":0,"src_end":6545,"src_start":5471},{"artifact":0,"gen_end":3693,"gen_start":3597,"node":19,"role":"declaration","source":0,"src_end":6753,"src_start":6547},{"artifact":0,"gen_end":3851,"gen_start":3693,"node":20,"role":"declaration","source":0,"src_end":7051,"src_start":6755},{"artifact":0,"gen_end":4221,"gen_start":3851,"node":21,"role":"declaration","source":0,"src_end":7487,"src_start":7053},{"artifact":0,"gen_end":4352,"gen_start":4221,"node":22,"role":"declaration","source":0,"src_end":7639,"src_start":7489},{"artifact":0,"gen_end":4759,"gen_start":4352,"node":23,"role":"declaration","source":0,"src_end":8112,"src_start":7641},{"artifact":0,"gen_end":5169,"gen_start":4759,"node":24,"role":"declaration","source":0,"src_end":8588,"src_start":8114},{"artifact":0,"gen_end":5454,"gen_start":5169,"node":25,"role":"declaration","source":0,"src_end":8976,"src_start":8590},{"artifact":0,"gen_end":5693,"gen_start":5454,"node":26,"role":"declaration","source":0,"src_end":9280,"src_start":8978},{"artifact":0,"gen_end":6018,"gen_start":5693,"node":27,"role":"declaration","source":0,"src_end":9716,"src_start":9282},{"artifact":0,"gen_end":6511,"gen_start":6018,"node":28,"role":"declaration","source":0,"src_end":10381,"src_start":9718},{"artifact":0,"gen_end":6738,"gen_start":6511,"node":29,"role":"declaration","source":0,"src_end":10679,"src_start":10383},{"artifact":0,"gen_end":7691,"gen_start":6738,"node":30,"role":"declaration","source":0,"src_end":11943,"src_start":10681},{"artifact":0,"gen_end":8027,"gen_start":7691,"node":31,"role":"declaration","source":0,"src_end":12377,"src_start":11945},{"artifact":0,"gen_end":8708,"gen_start":8027,"node":32,"role":"declaration","source":0,"src_end":13311,"src_start":12379},{"artifact":0,"gen_end":8999,"gen_start":8708,"node":33,"role":"declaration","source":0,"src_end":13652,"src_start":13313},{"artifact":0,"gen_end":9222,"gen_start":8999,"node":34,"role":"declaration","source":0,"src_end":13926,"src_start":13654},{"artifact":0,"gen_end":9582,"gen_start":9222,"node":35,"role":"declaration","source":0,"src_end":14392,"src_start":13928},{"artifact":0,"gen_end":9941,"gen_start":9582,"node":36,"role":"declaration","source":0,"src_end":14853,"src_start":14394},{"artifact":0,"gen_end":10288,"gen_start":9941,"node":37,"role":"declaration","source":0,"src_end":15279,"src_start":14855},{"artifact":0,"gen_end":10498,"gen_start":10288,"node":38,"role":"declaration","source":0,"src_end":15568,"src_start":15281},{"artifact":0,"gen_end":10687,"gen_start":10498,"node":39,"role":"declaration","source":0,"src_end":15819,"src_start":15570},{"artifact":0,"gen_end":10873,"gen_start":10687,"node":40,"role":"declaration","source":0,"src_end":16055,"src_start":15821},{"artifact":0,"gen_end":11364,"gen_start":10873,"node":41,"role":"declaration","source":0,"src_end":16604,"src_start":16057},{"artifact":0,"gen_end":11595,"gen_start":11364,"node":42,"role":"declaration","source":0,"src_end":16892,"src_start":16606},{"artifact":0,"gen_end":11779,"gen_start":11595,"node":43,"role":"declaration","source":0,"src_end":17153,"src_start":16894},{"artifact":0,"gen_end":12091,"gen_start":11779,"node":44,"role":"declaration","source":0,"src_end":17490,"src_start":17155},{"artifact":0,"gen_end":12434,"gen_start":12091,"node":45,"role":"declaration","source":0,"src_end":17847,"src_start":17492},{"artifact":0,"gen_end":12734,"gen_start":12434,"node":46,"role":"declaration","source":0,"src_end":18200,"src_start":17849},{"artifact":0,"gen_end":12976,"gen_start":12734,"node":47,"role":"declaration","source":0,"src_end":18473,"src_start":18202},{"artifact":0,"gen_end":13351,"gen_start":12976,"node":48,"role":"declaration","source":0,"src_end":18856,"src_start":18475},{"artifact":0,"gen_end":13497,"gen_start":13351,"node":49,"role":"declaration","source":0,"src_end":19040,"src_start":18858},{"artifact":0,"gen_end":13578,"gen_start":13497,"node":50,"role":"declaration","source":0,"src_end":19159,"src_start":19042},{"artifact":0,"gen_end":13659,"gen_start":13578,"node":51,"role":"declaration","source":0,"src_end":19278,"src_start":19161},{"artifact":0,"gen_end":13745,"gen_start":13659,"node":52,"role":"declaration","source":0,"src_end":19402,"src_start":19280},{"artifact":0,"gen_end":13831,"gen_start":13745,"node":53,"role":"declaration","source":0,"src_end":19526,"src_start":19404},{"artifact":0,"gen_end":13980,"gen_start":13831,"node":54,"role":"declaration","source":0,"src_end":19713,"src_start":19528},{"artifact":0,"gen_end":14130,"gen_start":13980,"node":55,"role":"declaration","source":0,"src_end":19901,"src_start":19715},{"artifact":0,"gen_end":14261,"gen_start":14130,"node":56,"role":"declaration","source":0,"src_end":20056,"src_start":19903},{"artifact":0,"gen_end":14392,"gen_start":14261,"node":57,"role":"declaration","source":0,"src_end":20211,"src_start":20058},{"artifact":0,"gen_end":14817,"gen_start":14392,"node":58,"role":"declaration","source":0,"src_end":21190,"src_start":20213},{"artifact":0,"gen_end":15138,"gen_start":14817,"node":59,"role":"declaration","source":0,"src_end":21712,"src_start":21192},{"artifact":0,"gen_end":15520,"gen_start":15138,"node":60,"role":"declaration","source":0,"src_end":22295,"src_start":21714},{"artifact":0,"gen_end":15786,"gen_start":15520,"node":61,"role":"declaration","source":0,"src_end":22759,"src_start":22297},{"artifact":0,"gen_end":16081,"gen_start":15786,"node":62,"role":"declaration","source":0,"src_end":23265,"src_start":22761},{"artifact":0,"gen_end":16423,"gen_start":16081,"node":63,"role":"declaration","source":0,"src_end":23814,"src_start":23267},{"artifact":0,"gen_end":16759,"gen_start":16423,"node":64,"role":"declaration","source":0,"src_end":24357,"src_start":23816},{"artifact":0,"gen_end":17115,"gen_start":16759,"node":65,"role":"declaration","source":0,"src_end":24940,"src_start":24359},{"artifact":0,"gen_end":17471,"gen_start":17115,"node":66,"role":"declaration","source":0,"src_end":25526,"src_start":24942},{"artifact":0,"gen_end":18010,"gen_start":17471,"node":67,"role":"declaration","source":0,"src_end":26329,"src_start":25528},{"artifact":0,"gen_end":18592,"gen_start":18010,"node":68,"role":"declaration","source":0,"src_end":27278,"src_start":26331},{"artifact":0,"gen_end":19102,"gen_start":18592,"node":69,"role":"declaration","source":0,"src_end":28114,"src_start":27280},{"artifact":0,"gen_end":19556,"gen_start":19102,"node":70,"role":"declaration","source":0,"src_end":29040,"src_start":28116},{"artifact":0,"gen_end":22402,"gen_start":19556,"node":71,"role":"declaration","source":0,"src_end":32959,"src_start":29042},{"artifact":0,"gen_end":26270,"gen_start":22402,"node":72,"role":"declaration","source":0,"src_end":38890,"src_start":32961},{"artifact":0,"gen_end":27358,"gen_start":26270,"node":73,"role":"declaration","source":0,"src_end":39776,"src_start":38892},{"artifact":0,"gen_end":27599,"gen_start":27358,"node":74,"role":"declaration","source":0,"src_end":40071,"src_start":39778},{"artifact":0,"gen_end":28077,"gen_start":27599,"node":75,"role":"declaration","source":0,"src_end":40526,"src_start":40073},{"artifact":0,"gen_end":58298,"gen_start":28077,"node":76,"role":"declaration","source":0,"src_end":70968,"src_start":40528},{"artifact":0,"gen_end":58756,"gen_start":58298,"node":77,"role":"declaration","source":0,"src_end":71454,"src_start":70970},{"artifact":0,"gen_end":60041,"gen_start":58756,"node":78,"role":"declaration","source":0,"src_end":72731,"src_start":71456},{"artifact":0,"gen_end":60272,"gen_start":60041,"node":79,"role":"declaration","source":0,"src_end":73012,"src_start":72733},{"artifact":0,"gen_end":60478,"gen_start":60272,"node":80,"role":"declaration","source":0,"src_end":73260,"src_start":73014},{"artifact":0,"gen_end":60670,"gen_start":60478,"node":81,"role":"declaration","source":0,"src_end":73497,"src_start":73262},{"artifact":0,"gen_end":62519,"gen_start":60670,"node":82,"role":"declaration","source":0,"src_end":75195,"src_start":73499},{"artifact":0,"gen_end":62798,"gen_start":62519,"node":83,"role":"declaration","source":0,"src_end":75517,"src_start":75197},{"artifact":0,"gen_end":63052,"gen_start":62798,"node":84,"role":"declaration","source":0,"src_end":75814,"src_start":75519},{"artifact":0,"gen_end":63289,"gen_start":63052,"node":85,"role":"declaration","source":0,"src_end":76093,"src_start":75816},{"artifact":0,"gen_end":63618,"gen_start":63289,"node":86,"role":"declaration","source":0,"src_end":76522,"src_start":76095},{"artifact":0,"gen_end":63877,"gen_start":63618,"node":87,"role":"declaration","source":0,"src_end":76871,"src_start":76524},{"artifact":0,"gen_end":64275,"gen_start":63877,"node":88,"role":"declaration","source":0,"src_end":77300,"src_start":76873},{"artifact":0,"gen_end":64559,"gen_start":64275,"node":89,"role":"declaration","source":0,"src_end":77630,"src_start":77302},{"artifact":0,"gen_end":64874,"gen_start":64559,"node":90,"role":"declaration","source":0,"src_end":77959,"src_start":77632},{"artifact":0,"gen_end":65072,"gen_start":64874,"node":91,"role":"declaration","source":0,"src_end":78153,"src_start":77961},{"artifact":0,"gen_end":65422,"gen_start":65072,"node":92,"role":"declaration","source":0,"src_end":78556,"src_start":78155},{"artifact":0,"gen_end":65850,"gen_start":65422,"node":93,"role":"declaration","source":0,"src_end":79042,"src_start":78558},{"artifact":0,"gen_end":66213,"gen_start":65850,"node":94,"role":"declaration","source":0,"src_end":79475,"src_start":79044},{"artifact":0,"gen_end":66358,"gen_start":66213,"node":95,"role":"declaration","source":0,"src_end":79649,"src_start":79477},{"artifact":0,"gen_end":66602,"gen_start":66358,"node":96,"role":"declaration","source":0,"src_end":79961,"src_start":79651},{"artifact":0,"gen_end":66953,"gen_start":66602,"node":97,"role":"declaration","source":0,"src_end":80386,"src_start":79963},{"artifact":0,"gen_end":67084,"gen_start":66953,"node":98,"role":"declaration","source":0,"src_end":80555,"src_start":80388},{"artifact":0,"gen_end":67333,"gen_start":67084,"node":99,"role":"declaration","source":0,"src_end":80871,"src_start":80557},{"artifact":0,"gen_end":67633,"gen_start":67333,"node":100,"role":"declaration","source":0,"src_end":81229,"src_start":80873},{"artifact":0,"gen_end":67922,"gen_start":67633,"node":101,"role":"declaration","source":0,"src_end":81620,"src_start":81231},{"artifact":0,"gen_end":68177,"gen_start":67922,"node":102,"role":"declaration","source":0,"src_end":81928,"src_start":81622},{"artifact":0,"gen_end":68459,"gen_start":68177,"node":103,"role":"declaration","source":0,"src_end":82254,"src_start":81930},{"artifact":0,"gen_end":68657,"gen_start":68459,"node":104,"role":"declaration","source":0,"src_end":82485,"src_start":82256},{"artifact":0,"gen_end":68976,"gen_start":68657,"node":105,"role":"declaration","source":0,"src_end":82856,"src_start":82487},{"artifact":0,"gen_end":69190,"gen_start":68976,"node":106,"role":"declaration","source":0,"src_end":83100,"src_start":82858},{"artifact":0,"gen_end":69331,"gen_start":69190,"node":107,"role":"declaration","source":0,"src_end":83267,"src_start":83102},{"artifact":0,"gen_end":69566,"gen_start":69331,"node":108,"role":"declaration","source":0,"src_end":83570,"src_start":83269},{"artifact":0,"gen_end":69947,"gen_start":69566,"node":109,"role":"declaration","source":0,"src_end":83990,"src_start":83572},{"artifact":0,"gen_end":70207,"gen_start":69947,"node":110,"role":"declaration","source":0,"src_end":84313,"src_start":83992},{"artifact":0,"gen_end":70426,"gen_start":70207,"node":111,"role":"declaration","source":0,"src_end":84579,"src_start":84315},{"artifact":0,"gen_end":70518,"gen_start":70426,"node":112,"role":"declaration","source":0,"src_end":84692,"src_start":84581},{"artifact":0,"gen_end":71953,"gen_start":70518,"node":113,"role":"declaration","source":0,"src_end":86153,"src_start":84694},{"artifact":0,"gen_end":72649,"gen_start":71953,"node":114,"role":"declaration","source":0,"src_end":86989,"src_start":86155},{"artifact":0,"gen_end":73040,"gen_start":72649,"node":115,"role":"declaration","source":0,"src_end":87424,"src_start":86991},{"artifact":0,"gen_end":73320,"gen_start":73040,"node":116,"role":"declaration","source":0,"src_end":87815,"src_start":87426},{"artifact":0,"gen_end":73738,"gen_start":73320,"node":117,"role":"declaration","source":0,"src_end":88306,"src_start":87817},{"artifact":0,"gen_end":74019,"gen_start":73738,"node":118,"role":"declaration","source":0,"src_end":88661,"src_start":88308},{"artifact":0,"gen_end":74661,"gen_start":74019,"node":119,"role":"declaration","source":0,"src_end":89445,"src_start":88663},{"artifact":0,"gen_end":75089,"gen_start":74661,"node":120,"role":"declaration","source":0,"src_end":90031,"src_start":89447},{"artifact":0,"gen_end":75854,"gen_start":75089,"node":121,"role":"declaration","source":0,"src_end":90987,"src_start":90033},{"artifact":0,"gen_end":76281,"gen_start":75854,"node":122,"role":"declaration","source":0,"src_end":91513,"src_start":90989},{"artifact":0,"gen_end":76626,"gen_start":76281,"node":123,"role":"declaration","source":0,"src_end":91889,"src_start":91515},{"artifact":0,"gen_end":77071,"gen_start":76626,"node":124,"role":"declaration","source":0,"src_end":92375,"src_start":91891},{"artifact":0,"gen_end":77645,"gen_start":77071,"node":125,"role":"declaration","source":0,"src_end":92995,"src_start":92377},{"artifact":0,"gen_end":78103,"gen_start":77645,"node":126,"role":"declaration","source":0,"src_end":93423,"src_start":92997},{"artifact":0,"gen_end":78477,"gen_start":78103,"node":127,"role":"declaration","source":0,"src_end":93830,"src_start":93425},{"artifact":0,"gen_end":79004,"gen_start":78477,"node":128,"role":"declaration","source":0,"src_end":94310,"src_start":93832},{"artifact":0,"gen_end":79268,"gen_start":79004,"node":129,"role":"declaration","source":0,"src_end":94650,"src_start":94312},{"artifact":0,"gen_end":79572,"gen_start":79268,"node":130,"role":"declaration","source":0,"src_end":94989,"src_start":94652},{"artifact":0,"gen_end":79695,"gen_start":79572,"node":131,"role":"declaration","source":0,"src_end":95133,"src_start":94991},{"artifact":0,"gen_end":79886,"gen_start":79695,"node":132,"role":"declaration","source":0,"src_end":95333,"src_start":95135},{"artifact":0,"gen_end":80096,"gen_start":79886,"node":133,"role":"declaration","source":0,"src_end":95561,"src_start":95335},{"artifact":0,"gen_end":80242,"gen_start":80096,"node":134,"role":"declaration","source":0,"src_end":95723,"src_start":95563},{"artifact":0,"gen_end":80404,"gen_start":80242,"node":135,"role":"declaration","source":0,"src_end":95896,"src_start":95725},{"artifact":0,"gen_end":80796,"gen_start":80404,"node":136,"role":"declaration","source":0,"src_end":96300,"src_start":95898},{"artifact":0,"gen_end":81205,"gen_start":80796,"node":137,"role":"declaration","source":0,"src_end":96721,"src_start":96302},{"artifact":0,"gen_end":81620,"gen_start":81205,"node":138,"role":"declaration","source":0,"src_end":97113,"src_start":96723},{"artifact":0,"gen_end":82064,"gen_start":81620,"node":139,"role":"declaration","source":0,"src_end":97536,"src_start":97115},{"artifact":0,"gen_end":82376,"gen_start":82064,"node":140,"role":"declaration","source":0,"src_end":97869,"src_start":97538},{"artifact":0,"gen_end":82718,"gen_start":82376,"node":141,"role":"declaration","source":0,"src_end":98230,"src_start":97871},{"artifact":0,"gen_end":83046,"gen_start":82718,"node":142,"role":"declaration","source":0,"src_end":98577,"src_start":98232},{"artifact":0,"gen_end":83571,"gen_start":83046,"node":143,"role":"declaration","source":0,"src_end":99100,"src_start":98579},{"artifact":0,"gen_end":83692,"gen_start":83571,"node":144,"role":"declaration","source":0,"src_end":99250,"src_start":99102},{"artifact":0,"gen_end":83876,"gen_start":83692,"node":145,"role":"declaration","source":0,"src_end":99491,"src_start":99252},{"artifact":0,"gen_end":84139,"gen_start":83876,"node":146,"role":"declaration","source":0,"src_end":99766,"src_start":99493},{"artifact":0,"gen_end":84272,"gen_start":84139,"node":147,"role":"declaration","source":0,"src_end":99965,"src_start":99768},{"artifact":0,"gen_end":84404,"gen_start":84272,"node":148,"role":"declaration","source":0,"src_end":100163,"src_start":99967},{"artifact":0,"gen_end":84539,"gen_start":84404,"node":149,"role":"declaration","source":0,"src_end":100368,"src_start":100165},{"artifact":0,"gen_end":84622,"gen_start":84539,"node":150,"role":"declaration","source":0,"src_end":100497,"src_start":100370},{"artifact":0,"gen_end":84704,"gen_start":84622,"node":151,"role":"declaration","source":0,"src_end":100625,"src_start":100499},{"artifact":0,"gen_end":84850,"gen_start":84704,"node":152,"role":"declaration","source":0,"src_end":100811,"src_start":100627},{"artifact":0,"gen_end":84874,"gen_start":84850,"node":0,"role":"declaration","source":0,"src_end":100847,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":153,"role":"declaration","source":0,"src_end":100847,"src_start":0},{"artifact":1,"gen_end":2330,"gen_start":134,"node":154,"role":"declaration","source":0,"src_end":1644,"src_start":172},{"artifact":1,"gen_end":3005,"gen_start":2330,"node":155,"role":"declaration","source":0,"src_end":2101,"src_start":1646},{"artifact":1,"gen_end":3305,"gen_start":3005,"node":156,"role":"declaration","source":0,"src_end":2327,"src_start":2103},{"artifact":1,"gen_end":3485,"gen_start":3305,"node":157,"role":"declaration","source":0,"src_end":2471,"src_start":2329},{"artifact":1,"gen_end":3740,"gen_start":3485,"node":158,"role":"declaration","source":0,"src_end":2676,"src_start":2473},{"artifact":1,"gen_end":3927,"gen_start":3740,"node":159,"role":"declaration","source":0,"src_end":2825,"src_start":2678},{"artifact":1,"gen_end":4202,"gen_start":3927,"node":160,"role":"declaration","source":0,"src_end":3036,"src_start":2827},{"artifact":1,"gen_end":4386,"gen_start":4202,"node":161,"role":"declaration","source":0,"src_end":3184,"src_start":3038},{"artifact":1,"gen_end":4813,"gen_start":4386,"node":162,"role":"declaration","source":0,"src_end":3507,"src_start":3186},{"artifact":1,"gen_end":5014,"gen_start":4813,"node":163,"role":"declaration","source":0,"src_end":3670,"src_start":3509},{"artifact":1,"gen_end":5234,"gen_start":5014,"node":164,"role":"declaration","source":0,"src_end":3853,"src_start":3672},{"artifact":1,"gen_end":5581,"gen_start":5234,"node":165,"role":"declaration","source":0,"src_end":4110,"src_start":3855},{"artifact":1,"gen_end":5970,"gen_start":5581,"node":166,"role":"declaration","source":0,"src_end":4401,"src_start":4112},{"artifact":1,"gen_end":6297,"gen_start":5970,"node":167,"role":"declaration","source":0,"src_end":4654,"src_start":4403},{"artifact":1,"gen_end":6559,"gen_start":6297,"node":168,"role":"declaration","source":0,"src_end":4866,"src_start":4656},{"artifact":1,"gen_end":6744,"gen_start":6559,"node":169,"role":"declaration","source":0,"src_end":5013,"src_start":4868},{"artifact":1,"gen_end":7390,"gen_start":6744,"node":170,"role":"declaration","source":0,"src_end":5469,"src_start":5015},{"artifact":1,"gen_end":8948,"gen_start":7390,"node":171,"role":"declaration","source":0,"src_end":6545,"src_start":5471},{"artifact":1,"gen_end":9206,"gen_start":8948,"node":172,"role":"declaration","source":0,"src_end":6753,"src_start":6547},{"artifact":1,"gen_end":9602,"gen_start":9206,"node":173,"role":"declaration","source":0,"src_end":7051,"src_start":6755},{"artifact":1,"gen_end":10154,"gen_start":9602,"node":174,"role":"declaration","source":0,"src_end":7487,"src_start":7053},{"artifact":1,"gen_end":10467,"gen_start":10154,"node":175,"role":"declaration","source":0,"src_end":7639,"src_start":7489},{"artifact":1,"gen_end":11056,"gen_start":10467,"node":176,"role":"declaration","source":0,"src_end":8112,"src_start":7641},{"artifact":1,"gen_end":11648,"gen_start":11056,"node":177,"role":"declaration","source":0,"src_end":8588,"src_start":8114},{"artifact":1,"gen_end":12112,"gen_start":11648,"node":178,"role":"declaration","source":0,"src_end":8976,"src_start":8590},{"artifact":1,"gen_end":12530,"gen_start":12112,"node":179,"role":"declaration","source":0,"src_end":9280,"src_start":8978},{"artifact":1,"gen_end":13040,"gen_start":12530,"node":180,"role":"declaration","source":0,"src_end":9716,"src_start":9282},{"artifact":1,"gen_end":13716,"gen_start":13040,"node":181,"role":"declaration","source":0,"src_end":10381,"src_start":9718},{"artifact":1,"gen_end":14127,"gen_start":13716,"node":182,"role":"declaration","source":0,"src_end":10679,"src_start":10383},{"artifact":1,"gen_end":15262,"gen_start":14127,"node":183,"role":"declaration","source":0,"src_end":11943,"src_start":10681},{"artifact":1,"gen_end":15775,"gen_start":15262,"node":184,"role":"declaration","source":0,"src_end":12377,"src_start":11945},{"artifact":1,"gen_end":16635,"gen_start":15775,"node":185,"role":"declaration","source":0,"src_end":13311,"src_start":12379},{"artifact":1,"gen_end":17108,"gen_start":16635,"node":186,"role":"declaration","source":0,"src_end":13652,"src_start":13313},{"artifact":1,"gen_end":17506,"gen_start":17108,"node":187,"role":"declaration","source":0,"src_end":13926,"src_start":13654},{"artifact":1,"gen_end":18042,"gen_start":17506,"node":188,"role":"declaration","source":0,"src_end":14392,"src_start":13928},{"artifact":1,"gen_end":18576,"gen_start":18042,"node":189,"role":"declaration","source":0,"src_end":14853,"src_start":14394},{"artifact":1,"gen_end":19104,"gen_start":18576,"node":190,"role":"declaration","source":0,"src_end":15279,"src_start":14855},{"artifact":1,"gen_end":19530,"gen_start":19104,"node":191,"role":"declaration","source":0,"src_end":15568,"src_start":15281},{"artifact":1,"gen_end":19916,"gen_start":19530,"node":192,"role":"declaration","source":0,"src_end":15819,"src_start":15570},{"artifact":1,"gen_end":20283,"gen_start":19916,"node":193,"role":"declaration","source":0,"src_end":16055,"src_start":15821},{"artifact":1,"gen_end":20964,"gen_start":20283,"node":194,"role":"declaration","source":0,"src_end":16604,"src_start":16057},{"artifact":1,"gen_end":21372,"gen_start":20964,"node":195,"role":"declaration","source":0,"src_end":16892,"src_start":16606},{"artifact":1,"gen_end":21753,"gen_start":21372,"node":196,"role":"declaration","source":0,"src_end":17153,"src_start":16894},{"artifact":1,"gen_end":22219,"gen_start":21753,"node":197,"role":"declaration","source":0,"src_end":17490,"src_start":17155},{"artifact":1,"gen_end":22714,"gen_start":22219,"node":198,"role":"declaration","source":0,"src_end":17847,"src_start":17492},{"artifact":1,"gen_end":23198,"gen_start":22714,"node":199,"role":"declaration","source":0,"src_end":18200,"src_start":17849},{"artifact":1,"gen_end":23622,"gen_start":23198,"node":200,"role":"declaration","source":0,"src_end":18473,"src_start":18202},{"artifact":1,"gen_end":24183,"gen_start":23622,"node":201,"role":"declaration","source":0,"src_end":18856,"src_start":18475},{"artifact":1,"gen_end":24435,"gen_start":24183,"node":202,"role":"declaration","source":0,"src_end":19040,"src_start":18858},{"artifact":1,"gen_end":24622,"gen_start":24435,"node":203,"role":"declaration","source":0,"src_end":19159,"src_start":19042},{"artifact":1,"gen_end":24809,"gen_start":24622,"node":204,"role":"declaration","source":0,"src_end":19278,"src_start":19161},{"artifact":1,"gen_end":25003,"gen_start":24809,"node":205,"role":"declaration","source":0,"src_end":19402,"src_start":19280},{"artifact":1,"gen_end":25197,"gen_start":25003,"node":206,"role":"declaration","source":0,"src_end":19526,"src_start":19404},{"artifact":1,"gen_end":25458,"gen_start":25197,"node":207,"role":"declaration","source":0,"src_end":19713,"src_start":19528},{"artifact":1,"gen_end":25720,"gen_start":25458,"node":208,"role":"declaration","source":0,"src_end":19901,"src_start":19715},{"artifact":1,"gen_end":25996,"gen_start":25720,"node":209,"role":"declaration","source":0,"src_end":20056,"src_start":19903},{"artifact":1,"gen_end":26272,"gen_start":25996,"node":210,"role":"declaration","source":0,"src_end":20211,"src_start":20058},{"artifact":1,"gen_end":26583,"gen_start":26272,"node":211,"role":"declaration","source":0,"src_end":21190,"src_start":20213},{"artifact":1,"gen_end":26931,"gen_start":26583,"node":212,"role":"declaration","source":0,"src_end":21712,"src_start":21192},{"artifact":1,"gen_end":27335,"gen_start":26931,"node":213,"role":"declaration","source":0,"src_end":22295,"src_start":21714},{"artifact":1,"gen_end":27617,"gen_start":27335,"node":214,"role":"declaration","source":0,"src_end":22759,"src_start":22297},{"artifact":1,"gen_end":27930,"gen_start":27617,"node":215,"role":"declaration","source":0,"src_end":23265,"src_start":22761},{"artifact":1,"gen_end":28288,"gen_start":27930,"node":216,"role":"declaration","source":0,"src_end":23814,"src_start":23267},{"artifact":1,"gen_end":28636,"gen_start":28288,"node":217,"role":"declaration","source":0,"src_end":24357,"src_start":23816},{"artifact":1,"gen_end":28995,"gen_start":28636,"node":218,"role":"declaration","source":0,"src_end":24940,"src_start":24359},{"artifact":1,"gen_end":29344,"gen_start":28995,"node":219,"role":"declaration","source":0,"src_end":25526,"src_start":24942},{"artifact":1,"gen_end":29840,"gen_start":29344,"node":220,"role":"declaration","source":0,"src_end":26329,"src_start":25528},{"artifact":1,"gen_end":30343,"gen_start":29840,"node":221,"role":"declaration","source":0,"src_end":27278,"src_start":26331},{"artifact":1,"gen_end":30837,"gen_start":30343,"node":222,"role":"declaration","source":0,"src_end":28114,"src_start":27280},{"artifact":1,"gen_end":31157,"gen_start":30837,"node":223,"role":"declaration","source":0,"src_end":29040,"src_start":28116},{"artifact":1,"gen_end":34190,"gen_start":31157,"node":224,"role":"declaration","source":0,"src_end":32959,"src_start":29042},{"artifact":1,"gen_end":38246,"gen_start":34190,"node":225,"role":"declaration","source":0,"src_end":38890,"src_start":32961},{"artifact":1,"gen_end":39516,"gen_start":38246,"node":226,"role":"declaration","source":0,"src_end":39776,"src_start":38892},{"artifact":1,"gen_end":39954,"gen_start":39516,"node":227,"role":"declaration","source":0,"src_end":40071,"src_start":39778},{"artifact":1,"gen_end":40618,"gen_start":39954,"node":228,"role":"declaration","source":0,"src_end":40526,"src_start":40073},{"artifact":1,"gen_end":71405,"gen_start":40618,"node":229,"role":"declaration","source":0,"src_end":70968,"src_start":40528},{"artifact":1,"gen_end":72091,"gen_start":71405,"node":230,"role":"declaration","source":0,"src_end":71454,"src_start":70970},{"artifact":1,"gen_end":73631,"gen_start":72091,"node":231,"role":"declaration","source":0,"src_end":72731,"src_start":71456},{"artifact":1,"gen_end":74110,"gen_start":73631,"node":232,"role":"declaration","source":0,"src_end":73012,"src_start":72733},{"artifact":1,"gen_end":74564,"gen_start":74110,"node":233,"role":"declaration","source":0,"src_end":73260,"src_start":73014},{"artifact":1,"gen_end":75004,"gen_start":74564,"node":234,"role":"declaration","source":0,"src_end":73497,"src_start":73262},{"artifact":1,"gen_end":77109,"gen_start":75004,"node":235,"role":"declaration","source":0,"src_end":75195,"src_start":73499},{"artifact":1,"gen_end":77639,"gen_start":77109,"node":236,"role":"declaration","source":0,"src_end":75517,"src_start":75197},{"artifact":1,"gen_end":78144,"gen_start":77639,"node":237,"role":"declaration","source":0,"src_end":75814,"src_start":75519},{"artifact":1,"gen_end":78632,"gen_start":78144,"node":238,"role":"declaration","source":0,"src_end":76093,"src_start":75816},{"artifact":1,"gen_end":79140,"gen_start":78632,"node":239,"role":"declaration","source":0,"src_end":76522,"src_start":76095},{"artifact":1,"gen_end":79578,"gen_start":79140,"node":240,"role":"declaration","source":0,"src_end":76871,"src_start":76524},{"artifact":1,"gen_end":80147,"gen_start":79578,"node":241,"role":"declaration","source":0,"src_end":77300,"src_start":76873},{"artifact":1,"gen_end":80611,"gen_start":80147,"node":242,"role":"declaration","source":0,"src_end":77630,"src_start":77302},{"artifact":1,"gen_end":81081,"gen_start":80611,"node":243,"role":"declaration","source":0,"src_end":77959,"src_start":77632},{"artifact":1,"gen_end":81461,"gen_start":81081,"node":244,"role":"declaration","source":0,"src_end":78153,"src_start":77961},{"artifact":1,"gen_end":81984,"gen_start":81461,"node":245,"role":"declaration","source":0,"src_end":78556,"src_start":78155},{"artifact":1,"gen_end":82571,"gen_start":81984,"node":246,"role":"declaration","source":0,"src_end":79042,"src_start":78558},{"artifact":1,"gen_end":83117,"gen_start":82571,"node":247,"role":"declaration","source":0,"src_end":79475,"src_start":79044},{"artifact":1,"gen_end":83446,"gen_start":83117,"node":248,"role":"declaration","source":0,"src_end":79649,"src_start":79477},{"artifact":1,"gen_end":83904,"gen_start":83446,"node":249,"role":"declaration","source":0,"src_end":79961,"src_start":79651},{"artifact":1,"gen_end":84475,"gen_start":83904,"node":250,"role":"declaration","source":0,"src_end":80386,"src_start":79963},{"artifact":1,"gen_end":84822,"gen_start":84475,"node":251,"role":"declaration","source":0,"src_end":80555,"src_start":80388},{"artifact":1,"gen_end":85286,"gen_start":84822,"node":252,"role":"declaration","source":0,"src_end":80871,"src_start":80557},{"artifact":1,"gen_end":85798,"gen_start":85286,"node":253,"role":"declaration","source":0,"src_end":81229,"src_start":80873},{"artifact":1,"gen_end":86304,"gen_start":85798,"node":254,"role":"declaration","source":0,"src_end":81620,"src_start":81231},{"artifact":1,"gen_end":86758,"gen_start":86304,"node":255,"role":"declaration","source":0,"src_end":81928,"src_start":81622},{"artifact":1,"gen_end":87237,"gen_start":86758,"node":256,"role":"declaration","source":0,"src_end":82254,"src_start":81930},{"artifact":1,"gen_end":87653,"gen_start":87237,"node":257,"role":"declaration","source":0,"src_end":82485,"src_start":82256},{"artifact":1,"gen_end":88190,"gen_start":87653,"node":258,"role":"declaration","source":0,"src_end":82856,"src_start":82487},{"artifact":1,"gen_end":88620,"gen_start":88190,"node":259,"role":"declaration","source":0,"src_end":83100,"src_start":82858},{"artifact":1,"gen_end":88945,"gen_start":88620,"node":260,"role":"declaration","source":0,"src_end":83267,"src_start":83102},{"artifact":1,"gen_end":89394,"gen_start":88945,"node":261,"role":"declaration","source":0,"src_end":83570,"src_start":83269},{"artifact":1,"gen_end":89953,"gen_start":89394,"node":262,"role":"declaration","source":0,"src_end":83990,"src_start":83572},{"artifact":1,"gen_end":90422,"gen_start":89953,"node":263,"role":"declaration","source":0,"src_end":84313,"src_start":83992},{"artifact":1,"gen_end":90858,"gen_start":90422,"node":264,"role":"declaration","source":0,"src_end":84579,"src_start":84315},{"artifact":1,"gen_end":91132,"gen_start":90858,"node":265,"role":"declaration","source":0,"src_end":84692,"src_start":84581},{"artifact":1,"gen_end":92747,"gen_start":91132,"node":266,"role":"declaration","source":0,"src_end":86153,"src_start":84694},{"artifact":1,"gen_end":93667,"gen_start":92747,"node":267,"role":"declaration","source":0,"src_end":86989,"src_start":86155},{"artifact":1,"gen_end":94240,"gen_start":93667,"node":268,"role":"declaration","source":0,"src_end":87424,"src_start":86991},{"artifact":1,"gen_end":94721,"gen_start":94240,"node":269,"role":"declaration","source":0,"src_end":87815,"src_start":87426},{"artifact":1,"gen_end":95338,"gen_start":94721,"node":270,"role":"declaration","source":0,"src_end":88306,"src_start":87817},{"artifact":1,"gen_end":95816,"gen_start":95338,"node":271,"role":"declaration","source":0,"src_end":88661,"src_start":88308},{"artifact":1,"gen_end":96683,"gen_start":95816,"node":272,"role":"declaration","source":0,"src_end":89445,"src_start":88663},{"artifact":1,"gen_end":97335,"gen_start":96683,"node":273,"role":"declaration","source":0,"src_end":90031,"src_start":89447},{"artifact":1,"gen_end":98331,"gen_start":97335,"node":274,"role":"declaration","source":0,"src_end":90987,"src_start":90033},{"artifact":1,"gen_end":98982,"gen_start":98331,"node":275,"role":"declaration","source":0,"src_end":91513,"src_start":90989},{"artifact":1,"gen_end":99510,"gen_start":98982,"node":276,"role":"declaration","source":0,"src_end":91889,"src_start":91515},{"artifact":1,"gen_end":100179,"gen_start":99510,"node":277,"role":"declaration","source":0,"src_end":92375,"src_start":91891},{"artifact":1,"gen_end":100939,"gen_start":100179,"node":278,"role":"declaration","source":0,"src_end":92995,"src_start":92377},{"artifact":1,"gen_end":101566,"gen_start":100939,"node":279,"role":"declaration","source":0,"src_end":93423,"src_start":92997},{"artifact":1,"gen_end":102117,"gen_start":101566,"node":280,"role":"declaration","source":0,"src_end":93830,"src_start":93425},{"artifact":1,"gen_end":102775,"gen_start":102117,"node":281,"role":"declaration","source":0,"src_end":94310,"src_start":93832},{"artifact":1,"gen_end":103220,"gen_start":102775,"node":282,"role":"declaration","source":0,"src_end":94650,"src_start":94312},{"artifact":1,"gen_end":103687,"gen_start":103220,"node":283,"role":"declaration","source":0,"src_end":94989,"src_start":94652},{"artifact":1,"gen_end":103992,"gen_start":103687,"node":284,"role":"declaration","source":0,"src_end":95133,"src_start":94991},{"artifact":1,"gen_end":104365,"gen_start":103992,"node":285,"role":"declaration","source":0,"src_end":95333,"src_start":95135},{"artifact":1,"gen_end":104757,"gen_start":104365,"node":286,"role":"declaration","source":0,"src_end":95561,"src_start":95335},{"artifact":1,"gen_end":105049,"gen_start":104757,"node":287,"role":"declaration","source":0,"src_end":95723,"src_start":95563},{"artifact":1,"gen_end":105393,"gen_start":105049,"node":288,"role":"declaration","source":0,"src_end":95896,"src_start":95725},{"artifact":1,"gen_end":105894,"gen_start":105393,"node":289,"role":"declaration","source":0,"src_end":96300,"src_start":95898},{"artifact":1,"gen_end":106412,"gen_start":105894,"node":290,"role":"declaration","source":0,"src_end":96721,"src_start":96302},{"artifact":1,"gen_end":106936,"gen_start":106412,"node":291,"role":"declaration","source":0,"src_end":97113,"src_start":96723},{"artifact":1,"gen_end":107489,"gen_start":106936,"node":292,"role":"declaration","source":0,"src_end":97536,"src_start":97115},{"artifact":1,"gen_end":107910,"gen_start":107489,"node":293,"role":"declaration","source":0,"src_end":97869,"src_start":97538},{"artifact":1,"gen_end":108361,"gen_start":107910,"node":294,"role":"declaration","source":0,"src_end":98230,"src_start":97871},{"artifact":1,"gen_end":108798,"gen_start":108361,"node":295,"role":"declaration","source":0,"src_end":98577,"src_start":98232},{"artifact":1,"gen_end":109432,"gen_start":108798,"node":296,"role":"declaration","source":0,"src_end":99100,"src_start":98579},{"artifact":1,"gen_end":109662,"gen_start":109432,"node":297,"role":"declaration","source":0,"src_end":99250,"src_start":99102},{"artifact":1,"gen_end":109955,"gen_start":109662,"node":298,"role":"declaration","source":0,"src_end":99491,"src_start":99252},{"artifact":1,"gen_end":110327,"gen_start":109955,"node":299,"role":"declaration","source":0,"src_end":99766,"src_start":99493},{"artifact":1,"gen_end":110569,"gen_start":110327,"node":300,"role":"declaration","source":0,"src_end":99965,"src_start":99768},{"artifact":1,"gen_end":110810,"gen_start":110569,"node":301,"role":"declaration","source":0,"src_end":100163,"src_start":99967},{"artifact":1,"gen_end":111054,"gen_start":110810,"node":302,"role":"declaration","source":0,"src_end":100368,"src_start":100165},{"artifact":1,"gen_end":111246,"gen_start":111054,"node":303,"role":"declaration","source":0,"src_end":100497,"src_start":100370},{"artifact":1,"gen_end":111437,"gen_start":111246,"node":304,"role":"declaration","source":0,"src_end":100625,"src_start":100499},{"artifact":1,"gen_end":111692,"gen_start":111437,"node":305,"role":"declaration","source":0,"src_end":100811,"src_start":100627},{"artifact":1,"gen_end":111707,"gen_start":111692,"node":153,"role":"declaration","source":0,"src_end":100847,"src_start":0}],"module":"Gnaf","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"},{"id":40,"kind":"semantic-declaration"},{"id":41,"kind":"semantic-declaration"},{"id":42,"kind":"semantic-declaration"},{"id":43,"kind":"semantic-declaration"},{"id":44,"kind":"semantic-declaration"},{"id":45,"kind":"semantic-declaration"},{"id":46,"kind":"semantic-declaration"},{"id":47,"kind":"semantic-declaration"},{"id":48,"kind":"semantic-declaration"},{"id":49,"kind":"semantic-declaration"},{"id":50,"kind":"semantic-declaration"},{"id":51,"kind":"semantic-declaration"},{"id":52,"kind":"semantic-declaration"},{"id":53,"kind":"semantic-declaration"},{"id":54,"kind":"semantic-declaration"},{"id":55,"kind":"semantic-declaration"},{"id":56,"kind":"semantic-declaration"},{"id":57,"kind":"semantic-declaration"},{"id":58,"kind":"semantic-declaration"},{"id":59,"kind":"semantic-declaration"},{"id":60,"kind":"semantic-declaration"},{"id":61,"kind":"semantic-declaration"},{"id":62,"kind":"semantic-declaration"},{"id":63,"kind":"semantic-declaration"},{"id":64,"kind":"semantic-declaration"},{"id":65,"kind":"semantic-declaration"},{"id":66,"kind":"semantic-declaration"},{"id":67,"kind":"semantic-declaration"},{"id":68,"kind":"semantic-declaration"},{"id":69,"kind":"semantic-declaration"},{"id":70,"kind":"semantic-declaration"},{"id":71,"kind":"semantic-declaration"},{"id":72,"kind":"semantic-declaration"},{"id":73,"kind":"semantic-declaration"},{"id":74,"kind":"semantic-declaration"},{"id":75,"kind":"semantic-declaration"},{"id":76,"kind":"semantic-declaration"},{"id":77,"kind":"semantic-declaration"},{"id":78,"kind":"semantic-declaration"},{"id":79,"kind":"semantic-declaration"},{"id":80,"kind":"semantic-declaration"},{"id":81,"kind":"semantic-declaration"},{"id":82,"kind":"semantic-declaration"},{"id":83,"kind":"semantic-declaration"},{"id":84,"kind":"semantic-declaration"},{"id":85,"kind":"semantic-declaration"},{"id":86,"kind":"semantic-declaration"},{"id":87,"kind":"semantic-declaration"},{"id":88,"kind":"semantic-declaration"},{"id":89,"kind":"semantic-declaration"},{"id":90,"kind":"semantic-declaration"},{"id":91,"kind":"semantic-declaration"},{"id":92,"kind":"semantic-declaration"},{"id":93,"kind":"semantic-declaration"},{"id":94,"kind":"semantic-declaration"},{"id":95,"kind":"semantic-declaration"},{"id":96,"kind":"semantic-declaration"},{"id":97,"kind":"semantic-declaration"},{"id":98,"kind":"semantic-declaration"},{"id":99,"kind":"semantic-declaration"},{"id":100,"kind":"semantic-declaration"},{"id":101,"kind":"semantic-declaration"},{"id":102,"kind":"semantic-declaration"},{"id":103,"kind":"semantic-declaration"},{"id":104,"kind":"semantic-declaration"},{"id":105,"kind":"semantic-declaration"},{"id":106,"kind":"semantic-declaration"},{"id":107,"kind":"semantic-declaration"},{"id":108,"kind":"semantic-declaration"},{"id":109,"kind":"semantic-declaration"},{"id":110,"kind":"semantic-declaration"},{"id":111,"kind":"semantic-declaration"},{"id":112,"kind":"semantic-declaration"},{"id":113,"kind":"semantic-declaration"},{"id":114,"kind":"semantic-declaration"},{"id":115,"kind":"semantic-declaration"},{"id":116,"kind":"semantic-declaration"},{"id":117,"kind":"semantic-declaration"},{"id":118,"kind":"semantic-declaration"},{"id":119,"kind":"semantic-declaration"},{"id":120,"kind":"semantic-declaration"},{"id":121,"kind":"semantic-declaration"},{"id":122,"kind":"semantic-declaration"},{"id":123,"kind":"semantic-declaration"},{"id":124,"kind":"semantic-declaration"},{"id":125,"kind":"semantic-declaration"},{"id":126,"kind":"semantic-declaration"},{"id":127,"kind":"semantic-declaration"},{"id":128,"kind":"semantic-declaration"},{"id":129,"kind":"semantic-declaration"},{"id":130,"kind":"semantic-declaration"},{"id":131,"kind":"semantic-declaration"},{"id":132,"kind":"semantic-declaration"},{"id":133,"kind":"semantic-declaration"},{"id":134,"kind":"semantic-declaration"},{"id":135,"kind":"semantic-declaration"},{"id":136,"kind":"semantic-declaration"},{"id":137,"kind":"semantic-declaration"},{"id":138,"kind":"semantic-declaration"},{"id":139,"kind":"semantic-declaration"},{"id":140,"kind":"semantic-declaration"},{"id":141,"kind":"semantic-declaration"},{"id":142,"kind":"semantic-declaration"},{"id":143,"kind":"semantic-declaration"},{"id":144,"kind":"semantic-declaration"},{"id":145,"kind":"semantic-declaration"},{"id":146,"kind":"semantic-declaration"},{"id":147,"kind":"semantic-declaration"},{"id":148,"kind":"semantic-declaration"},{"id":149,"kind":"semantic-declaration"},{"id":150,"kind":"semantic-declaration"},{"id":151,"kind":"semantic-declaration"},{"id":152,"kind":"semantic-declaration"},{"id":153,"kind":"semantic-latex-module"},{"id":154,"kind":"semantic-declaration"},{"id":155,"kind":"semantic-declaration"},{"id":156,"kind":"semantic-declaration"},{"id":157,"kind":"semantic-declaration"},{"id":158,"kind":"semantic-declaration"},{"id":159,"kind":"semantic-declaration"},{"id":160,"kind":"semantic-declaration"},{"id":161,"kind":"semantic-declaration"},{"id":162,"kind":"semantic-declaration"},{"id":163,"kind":"semantic-declaration"},{"id":164,"kind":"semantic-declaration"},{"id":165,"kind":"semantic-declaration"},{"id":166,"kind":"semantic-declaration"},{"id":167,"kind":"semantic-declaration"},{"id":168,"kind":"semantic-declaration"},{"id":169,"kind":"semantic-declaration"},{"id":170,"kind":"semantic-declaration"},{"id":171,"kind":"semantic-declaration"},{"id":172,"kind":"semantic-declaration"},{"id":173,"kind":"semantic-declaration"},{"id":174,"kind":"semantic-declaration"},{"id":175,"kind":"semantic-declaration"},{"id":176,"kind":"semantic-declaration"},{"id":177,"kind":"semantic-declaration"},{"id":178,"kind":"semantic-declaration"},{"id":179,"kind":"semantic-declaration"},{"id":180,"kind":"semantic-declaration"},{"id":181,"kind":"semantic-declaration"},{"id":182,"kind":"semantic-declaration"},{"id":183,"kind":"semantic-declaration"},{"id":184,"kind":"semantic-declaration"},{"id":185,"kind":"semantic-declaration"},{"id":186,"kind":"semantic-declaration"},{"id":187,"kind":"semantic-declaration"},{"id":188,"kind":"semantic-declaration"},{"id":189,"kind":"semantic-declaration"},{"id":190,"kind":"semantic-declaration"},{"id":191,"kind":"semantic-declaration"},{"id":192,"kind":"semantic-declaration"},{"id":193,"kind":"semantic-declaration"},{"id":194,"kind":"semantic-declaration"},{"id":195,"kind":"semantic-declaration"},{"id":196,"kind":"semantic-declaration"},{"id":197,"kind":"semantic-declaration"},{"id":198,"kind":"semantic-declaration"},{"id":199,"kind":"semantic-declaration"},{"id":200,"kind":"semantic-declaration"},{"id":201,"kind":"semantic-declaration"},{"id":202,"kind":"semantic-declaration"},{"id":203,"kind":"semantic-declaration"},{"id":204,"kind":"semantic-declaration"},{"id":205,"kind":"semantic-declaration"},{"id":206,"kind":"semantic-declaration"},{"id":207,"kind":"semantic-declaration"},{"id":208,"kind":"semantic-declaration"},{"id":209,"kind":"semantic-declaration"},{"id":210,"kind":"semantic-declaration"},{"id":211,"kind":"semantic-declaration"},{"id":212,"kind":"semantic-declaration"},{"id":213,"kind":"semantic-declaration"},{"id":214,"kind":"semantic-declaration"},{"id":215,"kind":"semantic-declaration"},{"id":216,"kind":"semantic-declaration"},{"id":217,"kind":"semantic-declaration"},{"id":218,"kind":"semantic-declaration"},{"id":219,"kind":"semantic-declaration"},{"id":220,"kind":"semantic-declaration"},{"id":221,"kind":"semantic-declaration"},{"id":222,"kind":"semantic-declaration"},{"id":223,"kind":"semantic-declaration"},{"id":224,"kind":"semantic-declaration"},{"id":225,"kind":"semantic-declaration"},{"id":226,"kind":"semantic-declaration"},{"id":227,"kind":"semantic-declaration"},{"id":228,"kind":"semantic-declaration"},{"id":229,"kind":"semantic-declaration"},{"id":230,"kind":"semantic-declaration"},{"id":231,"kind":"semantic-declaration"},{"id":232,"kind":"semantic-declaration"},{"id":233,"kind":"semantic-declaration"},{"id":234,"kind":"semantic-declaration"},{"id":235,"kind":"semantic-declaration"},{"id":236,"kind":"semantic-declaration"},{"id":237,"kind":"semantic-declaration"},{"id":238,"kind":"semantic-declaration"},{"id":239,"kind":"semantic-declaration"},{"id":240,"kind":"semantic-declaration"},{"id":241,"kind":"semantic-declaration"},{"id":242,"kind":"semantic-declaration"},{"id":243,"kind":"semantic-declaration"},{"id":244,"kind":"semantic-declaration"},{"id":245,"kind":"semantic-declaration"},{"id":246,"kind":"semantic-declaration"},{"id":247,"kind":"semantic-declaration"},{"id":248,"kind":"semantic-declaration"},{"id":249,"kind":"semantic-declaration"},{"id":250,"kind":"semantic-declaration"},{"id":251,"kind":"semantic-declaration"},{"id":252,"kind":"semantic-declaration"},{"id":253,"kind":"semantic-declaration"},{"id":254,"kind":"semantic-declaration"},{"id":255,"kind":"semantic-declaration"},{"id":256,"kind":"semantic-declaration"},{"id":257,"kind":"semantic-declaration"},{"id":258,"kind":"semantic-declaration"},{"id":259,"kind":"semantic-declaration"},{"id":260,"kind":"semantic-declaration"},{"id":261,"kind":"semantic-declaration"},{"id":262,"kind":"semantic-declaration"},{"id":263,"kind":"semantic-declaration"},{"id":264,"kind":"semantic-declaration"},{"id":265,"kind":"semantic-declaration"},{"id":266,"kind":"semantic-declaration"},{"id":267,"kind":"semantic-declaration"},{"id":268,"kind":"semantic-declaration"},{"id":269,"kind":"semantic-declaration"},{"id":270,"kind":"semantic-declaration"},{"id":271,"kind":"semantic-declaration"},{"id":272,"kind":"semantic-declaration"},{"id":273,"kind":"semantic-declaration"},{"id":274,"kind":"semantic-declaration"},{"id":275,"kind":"semantic-declaration"},{"id":276,"kind":"semantic-declaration"},{"id":277,"kind":"semantic-declaration"},{"id":278,"kind":"semantic-declaration"},{"id":279,"kind":"semantic-declaration"},{"id":280,"kind":"semantic-declaration"},{"id":281,"kind":"semantic-declaration"},{"id":282,"kind":"semantic-declaration"},{"id":283,"kind":"semantic-declaration"},{"id":284,"kind":"semantic-declaration"},{"id":285,"kind":"semantic-declaration"},{"id":286,"kind":"semantic-declaration"},{"id":287,"kind":"semantic-declaration"},{"id":288,"kind":"semantic-declaration"},{"id":289,"kind":"semantic-declaration"},{"id":290,"kind":"semantic-declaration"},{"id":291,"kind":"semantic-declaration"},{"id":292,"kind":"semantic-declaration"},{"id":293,"kind":"semantic-declaration"},{"id":294,"kind":"semantic-declaration"},{"id":295,"kind":"semantic-declaration"},{"id":296,"kind":"semantic-declaration"},{"id":297,"kind":"semantic-declaration"},{"id":298,"kind":"semantic-declaration"},{"id":299,"kind":"semantic-declaration"},{"id":300,"kind":"semantic-declaration"},{"id":301,"kind":"semantic-declaration"},{"id":302,"kind":"semantic-declaration"},{"id":303,"kind":"semantic-declaration"},{"id":304,"kind":"semantic-declaration"},{"id":305,"kind":"semantic-declaration"}],"semantic_id":"e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb","source_id":"965efd311d3549a7c17dd823b4418cfee906beecd273f4bfcafb371c36d9ce99","sources":[{"id":0,"kind":"file","path":"src/Gnaf.lex.tex","sha256":"21b9c9174ae33fe77204e196a29a51463f2c9a400f7b305d33591c54f31d798d"}],"spec":"lexlean/source-map/1"} diff --git a/compiler/expected/build/maps/LexLeanTarget/GnafCertificates.map.json b/compiler/expected/build/maps/LexLeanTarget/GnafCertificates.map.json index 54a1b9298..2de70fb39 100644 --- a/compiler/expected/build/maps/LexLeanTarget/GnafCertificates.map.json +++ b/compiler/expected/build/maps/LexLeanTarget/GnafCertificates.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/LexLeanTarget/GnafCertificates.lean"},{"id":1,"kind":"tex","path":"modules/LexLeanTarget/GnafCertificates.tex"}],"mappings":[{"artifact":0,"gen_end":414,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":105623,"src_start":0},{"artifact":0,"gen_end":1247,"gen_start":414,"node":1,"role":"declaration","source":0,"src_end":1053,"src_start":261},{"artifact":0,"gen_end":1546,"gen_start":1247,"node":2,"role":"declaration","source":0,"src_end":1401,"src_start":1055},{"artifact":0,"gen_end":2308,"gen_start":1546,"node":3,"role":"declaration","source":0,"src_end":2136,"src_start":1403},{"artifact":0,"gen_end":2653,"gen_start":2308,"node":4,"role":"declaration","source":0,"src_end":2528,"src_start":2138},{"artifact":0,"gen_end":3488,"gen_start":2653,"node":5,"role":"declaration","source":0,"src_end":3324,"src_start":2530},{"artifact":0,"gen_end":3829,"gen_start":3488,"node":6,"role":"declaration","source":0,"src_end":3714,"src_start":3326},{"artifact":0,"gen_end":4664,"gen_start":3829,"node":7,"role":"declaration","source":0,"src_end":4510,"src_start":3716},{"artifact":0,"gen_end":5001,"gen_start":4664,"node":8,"role":"declaration","source":0,"src_end":4898,"src_start":4512},{"artifact":0,"gen_end":6126,"gen_start":5001,"node":9,"role":"declaration","source":0,"src_end":5944,"src_start":4900},{"artifact":0,"gen_end":6465,"gen_start":6126,"node":10,"role":"declaration","source":0,"src_end":6332,"src_start":5946},{"artifact":0,"gen_end":6673,"gen_start":6465,"node":11,"role":"declaration","source":0,"src_end":6613,"src_start":6334},{"artifact":0,"gen_end":7508,"gen_start":6673,"node":12,"role":"declaration","source":0,"src_end":7409,"src_start":6615},{"artifact":0,"gen_end":7856,"gen_start":7508,"node":13,"role":"declaration","source":0,"src_end":7802,"src_start":7411},{"artifact":0,"gen_end":8693,"gen_start":7856,"node":14,"role":"declaration","source":0,"src_end":8598,"src_start":7804},{"artifact":0,"gen_end":9028,"gen_start":8693,"node":15,"role":"declaration","source":0,"src_end":8982,"src_start":8600},{"artifact":0,"gen_end":9962,"gen_start":9028,"node":16,"role":"declaration","source":0,"src_end":9869,"src_start":8984},{"artifact":0,"gen_end":10306,"gen_start":9962,"node":17,"role":"declaration","source":0,"src_end":10262,"src_start":9871},{"artifact":0,"gen_end":11139,"gen_start":10306,"node":18,"role":"declaration","source":0,"src_end":11056,"src_start":10264},{"artifact":0,"gen_end":11474,"gen_start":11139,"node":19,"role":"declaration","source":0,"src_end":11440,"src_start":11058},{"artifact":0,"gen_end":12603,"gen_start":11474,"node":20,"role":"declaration","source":0,"src_end":12487,"src_start":11442},{"artifact":0,"gen_end":12869,"gen_start":12603,"node":21,"role":"declaration","source":0,"src_end":12812,"src_start":12489},{"artifact":0,"gen_end":13673,"gen_start":12869,"node":22,"role":"declaration","source":0,"src_end":13560,"src_start":12814},{"artifact":0,"gen_end":14036,"gen_start":13673,"node":23,"role":"declaration","source":0,"src_end":13972,"src_start":13562},{"artifact":0,"gen_end":14868,"gen_start":14036,"node":24,"role":"declaration","source":0,"src_end":14740,"src_start":13974},{"artifact":0,"gen_end":15218,"gen_start":14868,"node":25,"role":"declaration","source":0,"src_end":15141,"src_start":14742},{"artifact":0,"gen_end":16036,"gen_start":15218,"node":26,"role":"declaration","source":0,"src_end":15891,"src_start":15143},{"artifact":0,"gen_end":16393,"gen_start":16036,"node":27,"role":"declaration","source":0,"src_end":16297,"src_start":15893},{"artifact":0,"gen_end":17223,"gen_start":16393,"node":28,"role":"declaration","source":0,"src_end":17059,"src_start":16299},{"artifact":0,"gen_end":17575,"gen_start":17223,"node":29,"role":"declaration","source":0,"src_end":17460,"src_start":17061},{"artifact":0,"gen_end":18403,"gen_start":17575,"node":30,"role":"declaration","source":0,"src_end":18222,"src_start":17462},{"artifact":0,"gen_end":18759,"gen_start":18403,"node":31,"role":"declaration","source":0,"src_end":18629,"src_start":18224},{"artifact":0,"gen_end":19562,"gen_start":18759,"node":32,"role":"declaration","source":0,"src_end":19372,"src_start":18631},{"artifact":0,"gen_end":19920,"gen_start":19562,"node":33,"role":"declaration","source":0,"src_end":19779,"src_start":19374},{"artifact":0,"gen_end":21009,"gen_start":19920,"node":34,"role":"declaration","source":0,"src_end":20792,"src_start":19781},{"artifact":0,"gen_end":21328,"gen_start":21009,"node":35,"role":"declaration","source":0,"src_end":21164,"src_start":20794},{"artifact":0,"gen_end":22148,"gen_start":21328,"node":36,"role":"declaration","source":0,"src_end":21916,"src_start":21166},{"artifact":0,"gen_end":22502,"gen_start":22148,"node":37,"role":"declaration","source":0,"src_end":22319,"src_start":21918},{"artifact":0,"gen_end":24146,"gen_start":22502,"node":38,"role":"declaration","source":0,"src_end":23855,"src_start":22321},{"artifact":0,"gen_end":24442,"gen_start":24146,"node":39,"role":"declaration","source":0,"src_end":24206,"src_start":23857},{"artifact":0,"gen_end":26086,"gen_start":24442,"node":40,"role":"declaration","source":0,"src_end":25740,"src_start":24208},{"artifact":0,"gen_end":26429,"gen_start":26086,"node":41,"role":"declaration","source":0,"src_end":26132,"src_start":25742},{"artifact":0,"gen_end":27320,"gen_start":26429,"node":42,"role":"declaration","source":0,"src_end":26955,"src_start":26134},{"artifact":0,"gen_end":27681,"gen_start":27320,"node":43,"role":"declaration","source":0,"src_end":27365,"src_start":26957},{"artifact":0,"gen_end":28568,"gen_start":27681,"node":44,"role":"declaration","source":0,"src_end":28182,"src_start":27367},{"artifact":0,"gen_end":28935,"gen_start":28568,"node":45,"role":"declaration","source":0,"src_end":28598,"src_start":28184},{"artifact":0,"gen_end":29752,"gen_start":28935,"node":46,"role":"declaration","source":0,"src_end":29349,"src_start":28600},{"artifact":0,"gen_end":30060,"gen_start":29752,"node":47,"role":"declaration","source":0,"src_end":29712,"src_start":29351},{"artifact":0,"gen_end":31192,"gen_start":30060,"node":48,"role":"declaration","source":0,"src_end":30762,"src_start":29714},{"artifact":0,"gen_end":31491,"gen_start":31192,"node":49,"role":"declaration","source":0,"src_end":31110,"src_start":30764},{"artifact":0,"gen_end":32368,"gen_start":31491,"node":50,"role":"declaration","source":0,"src_end":31915,"src_start":31112},{"artifact":0,"gen_end":32667,"gen_start":32368,"node":51,"role":"declaration","source":0,"src_end":32263,"src_start":31917},{"artifact":0,"gen_end":33801,"gen_start":32667,"node":52,"role":"declaration","source":0,"src_end":33315,"src_start":32265},{"artifact":0,"gen_end":34110,"gen_start":33801,"node":53,"role":"declaration","source":0,"src_end":33673,"src_start":33317},{"artifact":0,"gen_end":35799,"gen_start":34110,"node":54,"role":"declaration","source":0,"src_end":35248,"src_start":33675},{"artifact":0,"gen_end":36090,"gen_start":35799,"node":55,"role":"declaration","source":0,"src_end":35590,"src_start":35250},{"artifact":0,"gen_end":37229,"gen_start":36090,"node":56,"role":"declaration","source":0,"src_end":36649,"src_start":35592},{"artifact":0,"gen_end":37569,"gen_start":37229,"node":57,"role":"declaration","source":0,"src_end":37040,"src_start":36651},{"artifact":0,"gen_end":38752,"gen_start":37569,"node":58,"role":"declaration","source":0,"src_end":38139,"src_start":37042},{"artifact":0,"gen_end":39096,"gen_start":38752,"node":59,"role":"declaration","source":0,"src_end":38532,"src_start":38141},{"artifact":0,"gen_end":40240,"gen_start":39096,"node":60,"role":"declaration","source":0,"src_end":39596,"src_start":38534},{"artifact":0,"gen_end":40586,"gen_start":40240,"node":61,"role":"declaration","source":0,"src_end":39993,"src_start":39598},{"artifact":0,"gen_end":42284,"gen_start":40586,"node":62,"role":"declaration","source":0,"src_end":41577,"src_start":39995},{"artifact":0,"gen_end":42622,"gen_start":42284,"node":63,"role":"declaration","source":0,"src_end":41966,"src_start":41579},{"artifact":0,"gen_end":43421,"gen_start":42622,"node":64,"role":"declaration","source":0,"src_end":42693,"src_start":41968},{"artifact":0,"gen_end":43775,"gen_start":43421,"node":65,"role":"declaration","source":0,"src_end":43090,"src_start":42695},{"artifact":0,"gen_end":44861,"gen_start":43775,"node":66,"role":"declaration","source":0,"src_end":44094,"src_start":43092},{"artifact":0,"gen_end":45217,"gen_start":44861,"node":67,"role":"declaration","source":0,"src_end":44493,"src_start":44096},{"artifact":0,"gen_end":46303,"gen_start":45217,"node":68,"role":"declaration","source":0,"src_end":45497,"src_start":44495},{"artifact":0,"gen_end":46659,"gen_start":46303,"node":69,"role":"declaration","source":0,"src_end":45896,"src_start":45499},{"artifact":0,"gen_end":47790,"gen_start":46659,"node":70,"role":"declaration","source":0,"src_end":46957,"src_start":45898},{"artifact":0,"gen_end":48152,"gen_start":47790,"node":71,"role":"declaration","source":0,"src_end":47362,"src_start":46959},{"artifact":0,"gen_end":49331,"gen_start":48152,"node":72,"role":"declaration","source":0,"src_end":48455,"src_start":47364},{"artifact":0,"gen_end":49602,"gen_start":49331,"node":73,"role":"declaration","source":0,"src_end":48783,"src_start":48457},{"artifact":0,"gen_end":50230,"gen_start":49602,"node":74,"role":"declaration","source":0,"src_end":49359,"src_start":48785},{"artifact":0,"gen_end":50583,"gen_start":50230,"node":75,"role":"declaration","source":0,"src_end":49761,"src_start":49361},{"artifact":0,"gen_end":51754,"gen_start":50583,"node":76,"role":"declaration","source":0,"src_end":50846,"src_start":49763},{"artifact":0,"gen_end":52081,"gen_start":51754,"node":77,"role":"declaration","source":0,"src_end":51224,"src_start":50848},{"artifact":0,"gen_end":53261,"gen_start":52081,"node":78,"role":"declaration","source":0,"src_end":52308,"src_start":51226},{"artifact":0,"gen_end":53565,"gen_start":53261,"node":79,"role":"declaration","source":0,"src_end":52661,"src_start":52310},{"artifact":0,"gen_end":54739,"gen_start":53565,"node":80,"role":"declaration","source":0,"src_end":53765,"src_start":52663},{"artifact":0,"gen_end":55043,"gen_start":54739,"node":81,"role":"declaration","source":0,"src_end":54118,"src_start":53767},{"artifact":0,"gen_end":56067,"gen_start":55043,"node":82,"role":"declaration","source":0,"src_end":55054,"src_start":54120},{"artifact":0,"gen_end":56442,"gen_start":56067,"node":83,"role":"declaration","source":0,"src_end":55472,"src_start":55056},{"artifact":0,"gen_end":57586,"gen_start":56442,"node":84,"role":"declaration","source":0,"src_end":56536,"src_start":55474},{"artifact":0,"gen_end":57948,"gen_start":57586,"node":85,"role":"declaration","source":0,"src_end":56941,"src_start":56538},{"artifact":0,"gen_end":59152,"gen_start":57948,"node":86,"role":"declaration","source":0,"src_end":58083,"src_start":56943},{"artifact":0,"gen_end":59510,"gen_start":59152,"node":87,"role":"declaration","source":0,"src_end":58484,"src_start":58085},{"artifact":0,"gen_end":60540,"gen_start":59510,"node":88,"role":"declaration","source":0,"src_end":59438,"src_start":58486},{"artifact":0,"gen_end":60817,"gen_start":60540,"node":89,"role":"declaration","source":0,"src_end":59772,"src_start":59440},{"artifact":0,"gen_end":61921,"gen_start":60817,"node":90,"role":"declaration","source":0,"src_end":60786,"src_start":59774},{"artifact":0,"gen_end":62275,"gen_start":61921,"node":91,"role":"declaration","source":0,"src_end":61183,"src_start":60788},{"artifact":0,"gen_end":63326,"gen_start":62275,"node":92,"role":"declaration","source":0,"src_end":62128,"src_start":61185},{"artifact":0,"gen_end":63638,"gen_start":63326,"node":93,"role":"declaration","source":0,"src_end":62489,"src_start":62130},{"artifact":0,"gen_end":65372,"gen_start":63638,"node":94,"role":"declaration","source":0,"src_end":64105,"src_start":62491},{"artifact":0,"gen_end":65708,"gen_start":65372,"node":95,"role":"declaration","source":0,"src_end":64484,"src_start":64107},{"artifact":0,"gen_end":67391,"gen_start":65708,"node":96,"role":"declaration","source":0,"src_end":66051,"src_start":64486},{"artifact":0,"gen_end":67728,"gen_start":67391,"node":97,"role":"declaration","source":0,"src_end":66431,"src_start":66053},{"artifact":0,"gen_end":68855,"gen_start":67728,"node":98,"role":"declaration","source":0,"src_end":67476,"src_start":66433},{"artifact":0,"gen_end":69203,"gen_start":68855,"node":99,"role":"declaration","source":0,"src_end":67867,"src_start":67478},{"artifact":0,"gen_end":70328,"gen_start":69203,"node":100,"role":"declaration","source":0,"src_end":68910,"src_start":67869},{"artifact":0,"gen_end":70670,"gen_start":70328,"node":101,"role":"declaration","source":0,"src_end":69295,"src_start":68912},{"artifact":0,"gen_end":71797,"gen_start":70670,"node":102,"role":"declaration","source":0,"src_end":70354,"src_start":69297},{"artifact":0,"gen_end":72161,"gen_start":71797,"node":103,"role":"declaration","source":0,"src_end":70761,"src_start":70356},{"artifact":0,"gen_end":73256,"gen_start":72161,"node":104,"role":"declaration","source":0,"src_end":71762,"src_start":70763},{"artifact":0,"gen_end":73620,"gen_start":73256,"node":105,"role":"declaration","source":0,"src_end":72169,"src_start":71764},{"artifact":0,"gen_end":74499,"gen_start":73620,"node":106,"role":"declaration","source":0,"src_end":72976,"src_start":72171},{"artifact":0,"gen_end":74859,"gen_start":74499,"node":107,"role":"declaration","source":0,"src_end":73379,"src_start":72978},{"artifact":0,"gen_end":75819,"gen_start":74859,"node":108,"role":"declaration","source":0,"src_end":74225,"src_start":73381},{"artifact":0,"gen_end":76164,"gen_start":75819,"node":109,"role":"declaration","source":0,"src_end":74619,"src_start":74227},{"artifact":0,"gen_end":77128,"gen_start":76164,"node":110,"role":"declaration","source":0,"src_end":75469,"src_start":74621},{"artifact":0,"gen_end":77483,"gen_start":77128,"node":111,"role":"declaration","source":0,"src_end":75869,"src_start":75471},{"artifact":0,"gen_end":78444,"gen_start":77483,"node":112,"role":"declaration","source":0,"src_end":76716,"src_start":75871},{"artifact":0,"gen_end":78791,"gen_start":78444,"node":113,"role":"declaration","source":0,"src_end":77112,"src_start":76718},{"artifact":0,"gen_end":79923,"gen_start":78791,"node":114,"role":"declaration","source":0,"src_end":78162,"src_start":77114},{"artifact":0,"gen_end":80201,"gen_start":79923,"node":115,"role":"declaration","source":0,"src_end":78499,"src_start":78164},{"artifact":0,"gen_end":81239,"gen_start":80201,"node":116,"role":"declaration","source":0,"src_end":79443,"src_start":78501},{"artifact":0,"gen_end":81607,"gen_start":81239,"node":117,"role":"declaration","source":0,"src_end":79860,"src_start":79445},{"artifact":0,"gen_end":81840,"gen_start":81607,"node":118,"role":"declaration","source":0,"src_end":80166,"src_start":79862},{"artifact":0,"gen_end":82878,"gen_start":81840,"node":119,"role":"declaration","source":0,"src_end":81114,"src_start":80168},{"artifact":0,"gen_end":83234,"gen_start":82878,"node":120,"role":"declaration","source":0,"src_end":81519,"src_start":81116},{"artifact":0,"gen_end":83454,"gen_start":83234,"node":121,"role":"declaration","source":0,"src_end":81812,"src_start":81521},{"artifact":0,"gen_end":84538,"gen_start":83454,"node":122,"role":"declaration","source":0,"src_end":82794,"src_start":81814},{"artifact":0,"gen_end":84894,"gen_start":84538,"node":123,"role":"declaration","source":0,"src_end":83199,"src_start":82796},{"artifact":0,"gen_end":85115,"gen_start":84894,"node":124,"role":"declaration","source":0,"src_end":83493,"src_start":83201},{"artifact":0,"gen_end":86051,"gen_start":85115,"node":125,"role":"declaration","source":0,"src_end":84351,"src_start":83495},{"artifact":0,"gen_end":86362,"gen_start":86051,"node":126,"role":"declaration","source":0,"src_end":84711,"src_start":84353},{"artifact":0,"gen_end":86577,"gen_start":86362,"node":127,"role":"declaration","source":0,"src_end":84999,"src_start":84713},{"artifact":0,"gen_end":87427,"gen_start":86577,"node":128,"role":"declaration","source":0,"src_end":85787,"src_start":85001},{"artifact":0,"gen_end":87783,"gen_start":87427,"node":129,"role":"declaration","source":0,"src_end":86192,"src_start":85789},{"artifact":0,"gen_end":88624,"gen_start":87783,"node":130,"role":"declaration","source":0,"src_end":86971,"src_start":86194},{"artifact":0,"gen_end":88931,"gen_start":88624,"node":131,"role":"declaration","source":0,"src_end":87331,"src_start":86973},{"artifact":0,"gen_end":89970,"gen_start":88931,"node":132,"role":"declaration","source":0,"src_end":88276,"src_start":87333},{"artifact":0,"gen_end":90285,"gen_start":89970,"node":133,"role":"declaration","source":0,"src_end":88640,"src_start":88278},{"artifact":0,"gen_end":90505,"gen_start":90285,"node":134,"role":"declaration","source":0,"src_end":88933,"src_start":88642},{"artifact":0,"gen_end":91557,"gen_start":90505,"node":135,"role":"declaration","source":0,"src_end":89891,"src_start":88935},{"artifact":0,"gen_end":91914,"gen_start":91557,"node":136,"role":"declaration","source":0,"src_end":90297,"src_start":89893},{"artifact":0,"gen_end":92136,"gen_start":91914,"node":137,"role":"declaration","source":0,"src_end":90592,"src_start":90299},{"artifact":0,"gen_end":93178,"gen_start":92136,"node":138,"role":"declaration","source":0,"src_end":91540,"src_start":90594},{"artifact":0,"gen_end":93488,"gen_start":93178,"node":139,"role":"declaration","source":0,"src_end":91899,"src_start":91542},{"artifact":0,"gen_end":93703,"gen_start":93488,"node":140,"role":"declaration","source":0,"src_end":92187,"src_start":91901},{"artifact":0,"gen_end":94245,"gen_start":93703,"node":141,"role":"declaration","source":0,"src_end":92691,"src_start":92189},{"artifact":0,"gen_end":94572,"gen_start":94245,"node":142,"role":"declaration","source":0,"src_end":93069,"src_start":92693},{"artifact":0,"gen_end":95214,"gen_start":94572,"node":143,"role":"declaration","source":0,"src_end":93661,"src_start":93071},{"artifact":0,"gen_end":95547,"gen_start":95214,"node":144,"role":"declaration","source":0,"src_end":94045,"src_start":93663},{"artifact":0,"gen_end":95768,"gen_start":95547,"node":145,"role":"declaration","source":0,"src_end":94339,"src_start":94047},{"artifact":0,"gen_end":96897,"gen_start":95768,"node":146,"role":"declaration","source":0,"src_end":95386,"src_start":94341},{"artifact":0,"gen_end":97164,"gen_start":96897,"node":147,"role":"declaration","source":0,"src_end":95712,"src_start":95388},{"artifact":0,"gen_end":98293,"gen_start":97164,"node":148,"role":"declaration","source":0,"src_end":96761,"src_start":95714},{"artifact":0,"gen_end":98571,"gen_start":98293,"node":149,"role":"declaration","source":0,"src_end":97098,"src_start":96763},{"artifact":0,"gen_end":99457,"gen_start":98571,"node":150,"role":"declaration","source":0,"src_end":97914,"src_start":97100},{"artifact":0,"gen_end":99747,"gen_start":99457,"node":151,"role":"declaration","source":0,"src_end":98263,"src_start":97916},{"artifact":0,"gen_end":100876,"gen_start":99747,"node":152,"role":"declaration","source":0,"src_end":99310,"src_start":98265},{"artifact":0,"gen_end":101142,"gen_start":100876,"node":153,"role":"declaration","source":0,"src_end":99635,"src_start":99312},{"artifact":0,"gen_end":102273,"gen_start":101142,"node":154,"role":"declaration","source":0,"src_end":100684,"src_start":99637},{"artifact":0,"gen_end":102548,"gen_start":102273,"node":155,"role":"declaration","source":0,"src_end":101018,"src_start":100686},{"artifact":0,"gen_end":102742,"gen_start":102548,"node":156,"role":"declaration","source":0,"src_end":101279,"src_start":101020},{"artifact":0,"gen_end":102938,"gen_start":102742,"node":157,"role":"declaration","source":0,"src_end":101542,"src_start":101281},{"artifact":0,"gen_end":103133,"gen_start":102938,"node":158,"role":"declaration","source":0,"src_end":101804,"src_start":101544},{"artifact":0,"gen_end":103329,"gen_start":103133,"node":159,"role":"declaration","source":0,"src_end":102067,"src_start":101806},{"artifact":0,"gen_end":103523,"gen_start":103329,"node":160,"role":"declaration","source":0,"src_end":102328,"src_start":102069},{"artifact":0,"gen_end":103718,"gen_start":103523,"node":161,"role":"declaration","source":0,"src_end":102590,"src_start":102330},{"artifact":0,"gen_end":103912,"gen_start":103718,"node":162,"role":"declaration","source":0,"src_end":102851,"src_start":102592},{"artifact":0,"gen_end":104108,"gen_start":103912,"node":163,"role":"declaration","source":0,"src_end":103114,"src_start":102853},{"artifact":0,"gen_end":104302,"gen_start":104108,"node":164,"role":"declaration","source":0,"src_end":103375,"src_start":103116},{"artifact":0,"gen_end":104497,"gen_start":104302,"node":165,"role":"declaration","source":0,"src_end":103637,"src_start":103377},{"artifact":0,"gen_end":104677,"gen_start":104497,"node":166,"role":"declaration","source":0,"src_end":103884,"src_start":103639},{"artifact":0,"gen_end":104859,"gen_start":104677,"node":167,"role":"declaration","source":0,"src_end":104133,"src_start":103886},{"artifact":0,"gen_end":105039,"gen_start":104859,"node":168,"role":"declaration","source":0,"src_end":104380,"src_start":104135},{"artifact":0,"gen_end":105220,"gen_start":105039,"node":169,"role":"declaration","source":0,"src_end":104628,"src_start":104382},{"artifact":0,"gen_end":105392,"gen_start":105220,"node":170,"role":"declaration","source":0,"src_end":104867,"src_start":104630},{"artifact":0,"gen_end":105566,"gen_start":105392,"node":171,"role":"declaration","source":0,"src_end":105108,"src_start":104869},{"artifact":0,"gen_end":105738,"gen_start":105566,"node":172,"role":"declaration","source":0,"src_end":105347,"src_start":105110},{"artifact":0,"gen_end":105911,"gen_start":105738,"node":173,"role":"declaration","source":0,"src_end":105587,"src_start":105349},{"artifact":0,"gen_end":105947,"gen_start":105911,"node":0,"role":"declaration","source":0,"src_end":105623,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":174,"role":"declaration","source":0,"src_end":105623,"src_start":0},{"artifact":1,"gen_end":1129,"gen_start":134,"node":175,"role":"declaration","source":0,"src_end":1053,"src_start":261},{"artifact":1,"gen_end":1578,"gen_start":1129,"node":176,"role":"declaration","source":0,"src_end":1401,"src_start":1055},{"artifact":1,"gen_end":2500,"gen_start":1578,"node":177,"role":"declaration","source":0,"src_end":2136,"src_start":1403},{"artifact":1,"gen_end":2995,"gen_start":2500,"node":178,"role":"declaration","source":0,"src_end":2528,"src_start":2138},{"artifact":1,"gen_end":3992,"gen_start":2995,"node":179,"role":"declaration","source":0,"src_end":3324,"src_start":2530},{"artifact":1,"gen_end":4483,"gen_start":3992,"node":180,"role":"declaration","source":0,"src_end":3714,"src_start":3326},{"artifact":1,"gen_end":5480,"gen_start":4483,"node":181,"role":"declaration","source":0,"src_end":4510,"src_start":3716},{"artifact":1,"gen_end":5967,"gen_start":5480,"node":182,"role":"declaration","source":0,"src_end":4898,"src_start":4512},{"artifact":1,"gen_end":7254,"gen_start":5967,"node":183,"role":"declaration","source":0,"src_end":5944,"src_start":4900},{"artifact":1,"gen_end":7743,"gen_start":7254,"node":184,"role":"declaration","source":0,"src_end":6332,"src_start":5946},{"artifact":1,"gen_end":8101,"gen_start":7743,"node":185,"role":"declaration","source":0,"src_end":6613,"src_start":6334},{"artifact":1,"gen_end":9098,"gen_start":8101,"node":186,"role":"declaration","source":0,"src_end":7409,"src_start":6615},{"artifact":1,"gen_end":9596,"gen_start":9098,"node":187,"role":"declaration","source":0,"src_end":7802,"src_start":7411},{"artifact":1,"gen_end":10595,"gen_start":9596,"node":188,"role":"declaration","source":0,"src_end":8598,"src_start":7804},{"artifact":1,"gen_end":11080,"gen_start":10595,"node":189,"role":"declaration","source":0,"src_end":8982,"src_start":8600},{"artifact":1,"gen_end":12176,"gen_start":11080,"node":190,"role":"declaration","source":0,"src_end":9869,"src_start":8984},{"artifact":1,"gen_end":12670,"gen_start":12176,"node":191,"role":"declaration","source":0,"src_end":10262,"src_start":9871},{"artifact":1,"gen_end":13665,"gen_start":12670,"node":192,"role":"declaration","source":0,"src_end":11056,"src_start":10264},{"artifact":1,"gen_end":14150,"gen_start":13665,"node":193,"role":"declaration","source":0,"src_end":11440,"src_start":11058},{"artifact":1,"gen_end":15439,"gen_start":14150,"node":194,"role":"declaration","source":0,"src_end":12487,"src_start":11442},{"artifact":1,"gen_end":15855,"gen_start":15439,"node":195,"role":"declaration","source":0,"src_end":12812,"src_start":12489},{"artifact":1,"gen_end":16819,"gen_start":15855,"node":196,"role":"declaration","source":0,"src_end":13560,"src_start":12814},{"artifact":1,"gen_end":17332,"gen_start":16819,"node":197,"role":"declaration","source":0,"src_end":13972,"src_start":13562},{"artifact":1,"gen_end":18324,"gen_start":17332,"node":198,"role":"declaration","source":0,"src_end":14740,"src_start":13974},{"artifact":1,"gen_end":18824,"gen_start":18324,"node":199,"role":"declaration","source":0,"src_end":15141,"src_start":14742},{"artifact":1,"gen_end":19802,"gen_start":18824,"node":200,"role":"declaration","source":0,"src_end":15891,"src_start":15143},{"artifact":1,"gen_end":20309,"gen_start":19802,"node":201,"role":"declaration","source":0,"src_end":16297,"src_start":15893},{"artifact":1,"gen_end":21299,"gen_start":20309,"node":202,"role":"declaration","source":0,"src_end":17059,"src_start":16299},{"artifact":1,"gen_end":21801,"gen_start":21299,"node":203,"role":"declaration","source":0,"src_end":17460,"src_start":17061},{"artifact":1,"gen_end":22789,"gen_start":21801,"node":204,"role":"declaration","source":0,"src_end":18222,"src_start":17462},{"artifact":1,"gen_end":23295,"gen_start":22789,"node":205,"role":"declaration","source":0,"src_end":18629,"src_start":18224},{"artifact":1,"gen_end":24258,"gen_start":23295,"node":206,"role":"declaration","source":0,"src_end":19372,"src_start":18631},{"artifact":1,"gen_end":24766,"gen_start":24258,"node":207,"role":"declaration","source":0,"src_end":19779,"src_start":19374},{"artifact":1,"gen_end":26015,"gen_start":24766,"node":208,"role":"declaration","source":0,"src_end":20792,"src_start":19781},{"artifact":1,"gen_end":26484,"gen_start":26015,"node":209,"role":"declaration","source":0,"src_end":21164,"src_start":20794},{"artifact":1,"gen_end":27464,"gen_start":26484,"node":210,"role":"declaration","source":0,"src_end":21916,"src_start":21166},{"artifact":1,"gen_end":27968,"gen_start":27464,"node":211,"role":"declaration","source":0,"src_end":22319,"src_start":21918},{"artifact":1,"gen_end":29772,"gen_start":27968,"node":212,"role":"declaration","source":0,"src_end":23855,"src_start":22321},{"artifact":1,"gen_end":30218,"gen_start":29772,"node":213,"role":"declaration","source":0,"src_end":24206,"src_start":23857},{"artifact":1,"gen_end":32022,"gen_start":30218,"node":214,"role":"declaration","source":0,"src_end":25740,"src_start":24208},{"artifact":1,"gen_end":32515,"gen_start":32022,"node":215,"role":"declaration","source":0,"src_end":26132,"src_start":25742},{"artifact":1,"gen_end":33566,"gen_start":32515,"node":216,"role":"declaration","source":0,"src_end":26955,"src_start":26134},{"artifact":1,"gen_end":34077,"gen_start":33566,"node":217,"role":"declaration","source":0,"src_end":27365,"src_start":26957},{"artifact":1,"gen_end":35124,"gen_start":34077,"node":218,"role":"declaration","source":0,"src_end":28182,"src_start":27367},{"artifact":1,"gen_end":35641,"gen_start":35124,"node":219,"role":"declaration","source":0,"src_end":28598,"src_start":28184},{"artifact":1,"gen_end":36618,"gen_start":35641,"node":220,"role":"declaration","source":0,"src_end":29349,"src_start":28600},{"artifact":1,"gen_end":37076,"gen_start":36618,"node":221,"role":"declaration","source":0,"src_end":29712,"src_start":29351},{"artifact":1,"gen_end":38368,"gen_start":37076,"node":222,"role":"declaration","source":0,"src_end":30762,"src_start":29714},{"artifact":1,"gen_end":38817,"gen_start":38368,"node":223,"role":"declaration","source":0,"src_end":31110,"src_start":30764},{"artifact":1,"gen_end":39854,"gen_start":38817,"node":224,"role":"declaration","source":0,"src_end":31915,"src_start":31112},{"artifact":1,"gen_end":40303,"gen_start":39854,"node":225,"role":"declaration","source":0,"src_end":32263,"src_start":31917},{"artifact":1,"gen_end":41597,"gen_start":40303,"node":226,"role":"declaration","source":0,"src_end":33315,"src_start":32265},{"artifact":1,"gen_end":42056,"gen_start":41597,"node":227,"role":"declaration","source":0,"src_end":33673,"src_start":33317},{"artifact":1,"gen_end":43905,"gen_start":42056,"node":228,"role":"declaration","source":0,"src_end":35248,"src_start":33675},{"artifact":1,"gen_end":44346,"gen_start":43905,"node":229,"role":"declaration","source":0,"src_end":35590,"src_start":35250},{"artifact":1,"gen_end":45645,"gen_start":44346,"node":230,"role":"declaration","source":0,"src_end":36649,"src_start":35592},{"artifact":1,"gen_end":46135,"gen_start":45645,"node":231,"role":"declaration","source":0,"src_end":37040,"src_start":36651},{"artifact":1,"gen_end":47478,"gen_start":46135,"node":232,"role":"declaration","source":0,"src_end":38139,"src_start":37042},{"artifact":1,"gen_end":47972,"gen_start":47478,"node":233,"role":"declaration","source":0,"src_end":38532,"src_start":38141},{"artifact":1,"gen_end":49276,"gen_start":47972,"node":234,"role":"declaration","source":0,"src_end":39596,"src_start":38534},{"artifact":1,"gen_end":49772,"gen_start":49276,"node":235,"role":"declaration","source":0,"src_end":39993,"src_start":39598},{"artifact":1,"gen_end":51630,"gen_start":49772,"node":236,"role":"declaration","source":0,"src_end":41577,"src_start":39995},{"artifact":1,"gen_end":52118,"gen_start":51630,"node":237,"role":"declaration","source":0,"src_end":41966,"src_start":41579},{"artifact":1,"gen_end":53077,"gen_start":52118,"node":238,"role":"declaration","source":0,"src_end":42693,"src_start":41968},{"artifact":1,"gen_end":53581,"gen_start":53077,"node":239,"role":"declaration","source":0,"src_end":43090,"src_start":42695},{"artifact":1,"gen_end":54827,"gen_start":53581,"node":240,"role":"declaration","source":0,"src_end":44094,"src_start":43092},{"artifact":1,"gen_end":55333,"gen_start":54827,"node":241,"role":"declaration","source":0,"src_end":44493,"src_start":44096},{"artifact":1,"gen_end":56579,"gen_start":55333,"node":242,"role":"declaration","source":0,"src_end":45497,"src_start":44495},{"artifact":1,"gen_end":57085,"gen_start":56579,"node":243,"role":"declaration","source":0,"src_end":45896,"src_start":45499},{"artifact":1,"gen_end":58376,"gen_start":57085,"node":244,"role":"declaration","source":0,"src_end":46957,"src_start":45898},{"artifact":1,"gen_end":58888,"gen_start":58376,"node":245,"role":"declaration","source":0,"src_end":47362,"src_start":46959},{"artifact":1,"gen_end":60227,"gen_start":58888,"node":246,"role":"declaration","source":0,"src_end":48455,"src_start":47364},{"artifact":1,"gen_end":60648,"gen_start":60227,"node":247,"role":"declaration","source":0,"src_end":48783,"src_start":48457},{"artifact":1,"gen_end":61436,"gen_start":60648,"node":248,"role":"declaration","source":0,"src_end":49359,"src_start":48785},{"artifact":1,"gen_end":61939,"gen_start":61436,"node":249,"role":"declaration","source":0,"src_end":49761,"src_start":49361},{"artifact":1,"gen_end":63270,"gen_start":61939,"node":250,"role":"declaration","source":0,"src_end":50846,"src_start":49763},{"artifact":1,"gen_end":63747,"gen_start":63270,"node":251,"role":"declaration","source":0,"src_end":51224,"src_start":50848},{"artifact":1,"gen_end":65087,"gen_start":63747,"node":252,"role":"declaration","source":0,"src_end":52308,"src_start":51226},{"artifact":1,"gen_end":65541,"gen_start":65087,"node":253,"role":"declaration","source":0,"src_end":52661,"src_start":52310},{"artifact":1,"gen_end":66875,"gen_start":65541,"node":254,"role":"declaration","source":0,"src_end":53765,"src_start":52663},{"artifact":1,"gen_end":67329,"gen_start":66875,"node":255,"role":"declaration","source":0,"src_end":54118,"src_start":53767},{"artifact":1,"gen_end":68513,"gen_start":67329,"node":256,"role":"declaration","source":0,"src_end":55054,"src_start":54120},{"artifact":1,"gen_end":69038,"gen_start":68513,"node":257,"role":"declaration","source":0,"src_end":55472,"src_start":55056},{"artifact":1,"gen_end":70342,"gen_start":69038,"node":258,"role":"declaration","source":0,"src_end":56536,"src_start":55474},{"artifact":1,"gen_end":70854,"gen_start":70342,"node":259,"role":"declaration","source":0,"src_end":56941,"src_start":56538},{"artifact":1,"gen_end":72218,"gen_start":70854,"node":260,"role":"declaration","source":0,"src_end":58083,"src_start":56943},{"artifact":1,"gen_end":72726,"gen_start":72218,"node":261,"role":"declaration","source":0,"src_end":58484,"src_start":58085},{"artifact":1,"gen_end":73916,"gen_start":72726,"node":262,"role":"declaration","source":0,"src_end":59438,"src_start":58486},{"artifact":1,"gen_end":74343,"gen_start":73916,"node":263,"role":"declaration","source":0,"src_end":59772,"src_start":59440},{"artifact":1,"gen_end":75607,"gen_start":74343,"node":264,"role":"declaration","source":0,"src_end":60786,"src_start":59774},{"artifact":1,"gen_end":76111,"gen_start":75607,"node":265,"role":"declaration","source":0,"src_end":61183,"src_start":60788},{"artifact":1,"gen_end":77322,"gen_start":76111,"node":266,"role":"declaration","source":0,"src_end":62128,"src_start":61185},{"artifact":1,"gen_end":77784,"gen_start":77322,"node":267,"role":"declaration","source":0,"src_end":62489,"src_start":62130},{"artifact":1,"gen_end":79678,"gen_start":77784,"node":268,"role":"declaration","source":0,"src_end":64105,"src_start":62491},{"artifact":1,"gen_end":80164,"gen_start":79678,"node":269,"role":"declaration","source":0,"src_end":64484,"src_start":64107},{"artifact":1,"gen_end":82007,"gen_start":80164,"node":270,"role":"declaration","source":0,"src_end":66051,"src_start":64486},{"artifact":1,"gen_end":82494,"gen_start":82007,"node":271,"role":"declaration","source":0,"src_end":66431,"src_start":66053},{"artifact":1,"gen_end":83781,"gen_start":82494,"node":272,"role":"declaration","source":0,"src_end":67476,"src_start":66433},{"artifact":1,"gen_end":84279,"gen_start":83781,"node":273,"role":"declaration","source":0,"src_end":67867,"src_start":67478},{"artifact":1,"gen_end":85564,"gen_start":84279,"node":274,"role":"declaration","source":0,"src_end":68910,"src_start":67869},{"artifact":1,"gen_end":86056,"gen_start":85564,"node":275,"role":"declaration","source":0,"src_end":69295,"src_start":68912},{"artifact":1,"gen_end":87343,"gen_start":86056,"node":276,"role":"declaration","source":0,"src_end":70354,"src_start":69297},{"artifact":1,"gen_end":87857,"gen_start":87343,"node":277,"role":"declaration","source":0,"src_end":70761,"src_start":70356},{"artifact":1,"gen_end":89112,"gen_start":87857,"node":278,"role":"declaration","source":0,"src_end":71762,"src_start":70763},{"artifact":1,"gen_end":89626,"gen_start":89112,"node":279,"role":"declaration","source":0,"src_end":72169,"src_start":71764},{"artifact":1,"gen_end":90665,"gen_start":89626,"node":280,"role":"declaration","source":0,"src_end":72976,"src_start":72171},{"artifact":1,"gen_end":91175,"gen_start":90665,"node":281,"role":"declaration","source":0,"src_end":73379,"src_start":72978},{"artifact":1,"gen_end":92295,"gen_start":91175,"node":282,"role":"declaration","source":0,"src_end":74225,"src_start":73381},{"artifact":1,"gen_end":92790,"gen_start":92295,"node":283,"role":"declaration","source":0,"src_end":74619,"src_start":74227},{"artifact":1,"gen_end":93914,"gen_start":92790,"node":284,"role":"declaration","source":0,"src_end":75469,"src_start":74621},{"artifact":1,"gen_end":94419,"gen_start":93914,"node":285,"role":"declaration","source":0,"src_end":75869,"src_start":75471},{"artifact":1,"gen_end":95540,"gen_start":94419,"node":286,"role":"declaration","source":0,"src_end":76716,"src_start":75871},{"artifact":1,"gen_end":96037,"gen_start":95540,"node":287,"role":"declaration","source":0,"src_end":77112,"src_start":76718},{"artifact":1,"gen_end":97329,"gen_start":96037,"node":288,"role":"declaration","source":0,"src_end":78162,"src_start":77114},{"artifact":1,"gen_end":97757,"gen_start":97329,"node":289,"role":"declaration","source":0,"src_end":78499,"src_start":78164},{"artifact":1,"gen_end":98955,"gen_start":97757,"node":290,"role":"declaration","source":0,"src_end":79443,"src_start":78501},{"artifact":1,"gen_end":99473,"gen_start":98955,"node":291,"role":"declaration","source":0,"src_end":79860,"src_start":79445},{"artifact":1,"gen_end":99856,"gen_start":99473,"node":292,"role":"declaration","source":0,"src_end":80166,"src_start":79862},{"artifact":1,"gen_end":101054,"gen_start":99856,"node":293,"role":"declaration","source":0,"src_end":81114,"src_start":80168},{"artifact":1,"gen_end":101560,"gen_start":101054,"node":294,"role":"declaration","source":0,"src_end":81519,"src_start":81116},{"artifact":1,"gen_end":101930,"gen_start":101560,"node":295,"role":"declaration","source":0,"src_end":81812,"src_start":81521},{"artifact":1,"gen_end":103174,"gen_start":101930,"node":296,"role":"declaration","source":0,"src_end":82794,"src_start":81814},{"artifact":1,"gen_end":103680,"gen_start":103174,"node":297,"role":"declaration","source":0,"src_end":83199,"src_start":82796},{"artifact":1,"gen_end":104051,"gen_start":103680,"node":298,"role":"declaration","source":0,"src_end":83493,"src_start":83201},{"artifact":1,"gen_end":105147,"gen_start":104051,"node":299,"role":"declaration","source":0,"src_end":84351,"src_start":83495},{"artifact":1,"gen_end":105608,"gen_start":105147,"node":300,"role":"declaration","source":0,"src_end":84711,"src_start":84353},{"artifact":1,"gen_end":105973,"gen_start":105608,"node":301,"role":"declaration","source":0,"src_end":84999,"src_start":84713},{"artifact":1,"gen_end":106983,"gen_start":105973,"node":302,"role":"declaration","source":0,"src_end":85787,"src_start":85001},{"artifact":1,"gen_end":107489,"gen_start":106983,"node":303,"role":"declaration","source":0,"src_end":86192,"src_start":85789},{"artifact":1,"gen_end":108490,"gen_start":107489,"node":304,"role":"declaration","source":0,"src_end":86971,"src_start":86194},{"artifact":1,"gen_end":108947,"gen_start":108490,"node":305,"role":"declaration","source":0,"src_end":87331,"src_start":86973},{"artifact":1,"gen_end":110146,"gen_start":108947,"node":306,"role":"declaration","source":0,"src_end":88276,"src_start":87333},{"artifact":1,"gen_end":110611,"gen_start":110146,"node":307,"role":"declaration","source":0,"src_end":88640,"src_start":88278},{"artifact":1,"gen_end":110981,"gen_start":110611,"node":308,"role":"declaration","source":0,"src_end":88933,"src_start":88642},{"artifact":1,"gen_end":112193,"gen_start":110981,"node":309,"role":"declaration","source":0,"src_end":89891,"src_start":88935},{"artifact":1,"gen_end":112700,"gen_start":112193,"node":310,"role":"declaration","source":0,"src_end":90297,"src_start":89893},{"artifact":1,"gen_end":113072,"gen_start":112700,"node":311,"role":"declaration","source":0,"src_end":90592,"src_start":90299},{"artifact":1,"gen_end":114274,"gen_start":113072,"node":312,"role":"declaration","source":0,"src_end":91540,"src_start":90594},{"artifact":1,"gen_end":114734,"gen_start":114274,"node":313,"role":"declaration","source":0,"src_end":91899,"src_start":91542},{"artifact":1,"gen_end":115099,"gen_start":114734,"node":314,"role":"declaration","source":0,"src_end":92187,"src_start":91901},{"artifact":1,"gen_end":115801,"gen_start":115099,"node":315,"role":"declaration","source":0,"src_end":92691,"src_start":92189},{"artifact":1,"gen_end":116278,"gen_start":115801,"node":316,"role":"declaration","source":0,"src_end":93069,"src_start":92693},{"artifact":1,"gen_end":117080,"gen_start":116278,"node":317,"role":"declaration","source":0,"src_end":93661,"src_start":93071},{"artifact":1,"gen_end":117563,"gen_start":117080,"node":318,"role":"declaration","source":0,"src_end":94045,"src_start":93663},{"artifact":1,"gen_end":117934,"gen_start":117563,"node":319,"role":"declaration","source":0,"src_end":94339,"src_start":94047},{"artifact":1,"gen_end":119223,"gen_start":117934,"node":320,"role":"declaration","source":0,"src_end":95386,"src_start":94341},{"artifact":1,"gen_end":119640,"gen_start":119223,"node":321,"role":"declaration","source":0,"src_end":95712,"src_start":95388},{"artifact":1,"gen_end":120929,"gen_start":119640,"node":322,"role":"declaration","source":0,"src_end":96761,"src_start":95714},{"artifact":1,"gen_end":121357,"gen_start":120929,"node":323,"role":"declaration","source":0,"src_end":97098,"src_start":96763},{"artifact":1,"gen_end":122403,"gen_start":121357,"node":324,"role":"declaration","source":0,"src_end":97914,"src_start":97100},{"artifact":1,"gen_end":122843,"gen_start":122403,"node":325,"role":"declaration","source":0,"src_end":98263,"src_start":97916},{"artifact":1,"gen_end":124132,"gen_start":122843,"node":326,"role":"declaration","source":0,"src_end":99310,"src_start":98265},{"artifact":1,"gen_end":124548,"gen_start":124132,"node":327,"role":"declaration","source":0,"src_end":99635,"src_start":99312},{"artifact":1,"gen_end":125839,"gen_start":124548,"node":328,"role":"declaration","source":0,"src_end":100684,"src_start":99637},{"artifact":1,"gen_end":126264,"gen_start":125839,"node":329,"role":"declaration","source":0,"src_end":101018,"src_start":100686},{"artifact":1,"gen_end":126608,"gen_start":126264,"node":330,"role":"declaration","source":0,"src_end":101279,"src_start":101020},{"artifact":1,"gen_end":126954,"gen_start":126608,"node":331,"role":"declaration","source":0,"src_end":101542,"src_start":101281},{"artifact":1,"gen_end":127299,"gen_start":126954,"node":332,"role":"declaration","source":0,"src_end":101804,"src_start":101544},{"artifact":1,"gen_end":127645,"gen_start":127299,"node":333,"role":"declaration","source":0,"src_end":102067,"src_start":101806},{"artifact":1,"gen_end":127989,"gen_start":127645,"node":334,"role":"declaration","source":0,"src_end":102328,"src_start":102069},{"artifact":1,"gen_end":128334,"gen_start":127989,"node":335,"role":"declaration","source":0,"src_end":102590,"src_start":102330},{"artifact":1,"gen_end":128678,"gen_start":128334,"node":336,"role":"declaration","source":0,"src_end":102851,"src_start":102592},{"artifact":1,"gen_end":129024,"gen_start":128678,"node":337,"role":"declaration","source":0,"src_end":103114,"src_start":102853},{"artifact":1,"gen_end":129368,"gen_start":129024,"node":338,"role":"declaration","source":0,"src_end":103375,"src_start":103116},{"artifact":1,"gen_end":129713,"gen_start":129368,"node":339,"role":"declaration","source":0,"src_end":103637,"src_start":103377},{"artifact":1,"gen_end":130043,"gen_start":129713,"node":340,"role":"declaration","source":0,"src_end":103884,"src_start":103639},{"artifact":1,"gen_end":130375,"gen_start":130043,"node":341,"role":"declaration","source":0,"src_end":104133,"src_start":103886},{"artifact":1,"gen_end":130705,"gen_start":130375,"node":342,"role":"declaration","source":0,"src_end":104380,"src_start":104135},{"artifact":1,"gen_end":131036,"gen_start":130705,"node":343,"role":"declaration","source":0,"src_end":104628,"src_start":104382},{"artifact":1,"gen_end":131358,"gen_start":131036,"node":344,"role":"declaration","source":0,"src_end":104867,"src_start":104630},{"artifact":1,"gen_end":131682,"gen_start":131358,"node":345,"role":"declaration","source":0,"src_end":105108,"src_start":104869},{"artifact":1,"gen_end":132004,"gen_start":131682,"node":346,"role":"declaration","source":0,"src_end":105347,"src_start":105110},{"artifact":1,"gen_end":132327,"gen_start":132004,"node":347,"role":"declaration","source":0,"src_end":105587,"src_start":105349},{"artifact":1,"gen_end":132342,"gen_start":132327,"node":174,"role":"declaration","source":0,"src_end":105623,"src_start":0}],"module":"GnafCertificates","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"},{"id":40,"kind":"semantic-declaration"},{"id":41,"kind":"semantic-declaration"},{"id":42,"kind":"semantic-declaration"},{"id":43,"kind":"semantic-declaration"},{"id":44,"kind":"semantic-declaration"},{"id":45,"kind":"semantic-declaration"},{"id":46,"kind":"semantic-declaration"},{"id":47,"kind":"semantic-declaration"},{"id":48,"kind":"semantic-declaration"},{"id":49,"kind":"semantic-declaration"},{"id":50,"kind":"semantic-declaration"},{"id":51,"kind":"semantic-declaration"},{"id":52,"kind":"semantic-declaration"},{"id":53,"kind":"semantic-declaration"},{"id":54,"kind":"semantic-declaration"},{"id":55,"kind":"semantic-declaration"},{"id":56,"kind":"semantic-declaration"},{"id":57,"kind":"semantic-declaration"},{"id":58,"kind":"semantic-declaration"},{"id":59,"kind":"semantic-declaration"},{"id":60,"kind":"semantic-declaration"},{"id":61,"kind":"semantic-declaration"},{"id":62,"kind":"semantic-declaration"},{"id":63,"kind":"semantic-declaration"},{"id":64,"kind":"semantic-declaration"},{"id":65,"kind":"semantic-declaration"},{"id":66,"kind":"semantic-declaration"},{"id":67,"kind":"semantic-declaration"},{"id":68,"kind":"semantic-declaration"},{"id":69,"kind":"semantic-declaration"},{"id":70,"kind":"semantic-declaration"},{"id":71,"kind":"semantic-declaration"},{"id":72,"kind":"semantic-declaration"},{"id":73,"kind":"semantic-declaration"},{"id":74,"kind":"semantic-declaration"},{"id":75,"kind":"semantic-declaration"},{"id":76,"kind":"semantic-declaration"},{"id":77,"kind":"semantic-declaration"},{"id":78,"kind":"semantic-declaration"},{"id":79,"kind":"semantic-declaration"},{"id":80,"kind":"semantic-declaration"},{"id":81,"kind":"semantic-declaration"},{"id":82,"kind":"semantic-declaration"},{"id":83,"kind":"semantic-declaration"},{"id":84,"kind":"semantic-declaration"},{"id":85,"kind":"semantic-declaration"},{"id":86,"kind":"semantic-declaration"},{"id":87,"kind":"semantic-declaration"},{"id":88,"kind":"semantic-declaration"},{"id":89,"kind":"semantic-declaration"},{"id":90,"kind":"semantic-declaration"},{"id":91,"kind":"semantic-declaration"},{"id":92,"kind":"semantic-declaration"},{"id":93,"kind":"semantic-declaration"},{"id":94,"kind":"semantic-declaration"},{"id":95,"kind":"semantic-declaration"},{"id":96,"kind":"semantic-declaration"},{"id":97,"kind":"semantic-declaration"},{"id":98,"kind":"semantic-declaration"},{"id":99,"kind":"semantic-declaration"},{"id":100,"kind":"semantic-declaration"},{"id":101,"kind":"semantic-declaration"},{"id":102,"kind":"semantic-declaration"},{"id":103,"kind":"semantic-declaration"},{"id":104,"kind":"semantic-declaration"},{"id":105,"kind":"semantic-declaration"},{"id":106,"kind":"semantic-declaration"},{"id":107,"kind":"semantic-declaration"},{"id":108,"kind":"semantic-declaration"},{"id":109,"kind":"semantic-declaration"},{"id":110,"kind":"semantic-declaration"},{"id":111,"kind":"semantic-declaration"},{"id":112,"kind":"semantic-declaration"},{"id":113,"kind":"semantic-declaration"},{"id":114,"kind":"semantic-declaration"},{"id":115,"kind":"semantic-declaration"},{"id":116,"kind":"semantic-declaration"},{"id":117,"kind":"semantic-declaration"},{"id":118,"kind":"semantic-declaration"},{"id":119,"kind":"semantic-declaration"},{"id":120,"kind":"semantic-declaration"},{"id":121,"kind":"semantic-declaration"},{"id":122,"kind":"semantic-declaration"},{"id":123,"kind":"semantic-declaration"},{"id":124,"kind":"semantic-declaration"},{"id":125,"kind":"semantic-declaration"},{"id":126,"kind":"semantic-declaration"},{"id":127,"kind":"semantic-declaration"},{"id":128,"kind":"semantic-declaration"},{"id":129,"kind":"semantic-declaration"},{"id":130,"kind":"semantic-declaration"},{"id":131,"kind":"semantic-declaration"},{"id":132,"kind":"semantic-declaration"},{"id":133,"kind":"semantic-declaration"},{"id":134,"kind":"semantic-declaration"},{"id":135,"kind":"semantic-declaration"},{"id":136,"kind":"semantic-declaration"},{"id":137,"kind":"semantic-declaration"},{"id":138,"kind":"semantic-declaration"},{"id":139,"kind":"semantic-declaration"},{"id":140,"kind":"semantic-declaration"},{"id":141,"kind":"semantic-declaration"},{"id":142,"kind":"semantic-declaration"},{"id":143,"kind":"semantic-declaration"},{"id":144,"kind":"semantic-declaration"},{"id":145,"kind":"semantic-declaration"},{"id":146,"kind":"semantic-declaration"},{"id":147,"kind":"semantic-declaration"},{"id":148,"kind":"semantic-declaration"},{"id":149,"kind":"semantic-declaration"},{"id":150,"kind":"semantic-declaration"},{"id":151,"kind":"semantic-declaration"},{"id":152,"kind":"semantic-declaration"},{"id":153,"kind":"semantic-declaration"},{"id":154,"kind":"semantic-declaration"},{"id":155,"kind":"semantic-declaration"},{"id":156,"kind":"semantic-declaration"},{"id":157,"kind":"semantic-declaration"},{"id":158,"kind":"semantic-declaration"},{"id":159,"kind":"semantic-declaration"},{"id":160,"kind":"semantic-declaration"},{"id":161,"kind":"semantic-declaration"},{"id":162,"kind":"semantic-declaration"},{"id":163,"kind":"semantic-declaration"},{"id":164,"kind":"semantic-declaration"},{"id":165,"kind":"semantic-declaration"},{"id":166,"kind":"semantic-declaration"},{"id":167,"kind":"semantic-declaration"},{"id":168,"kind":"semantic-declaration"},{"id":169,"kind":"semantic-declaration"},{"id":170,"kind":"semantic-declaration"},{"id":171,"kind":"semantic-declaration"},{"id":172,"kind":"semantic-declaration"},{"id":173,"kind":"semantic-declaration"},{"id":174,"kind":"semantic-latex-module"},{"id":175,"kind":"semantic-declaration"},{"id":176,"kind":"semantic-declaration"},{"id":177,"kind":"semantic-declaration"},{"id":178,"kind":"semantic-declaration"},{"id":179,"kind":"semantic-declaration"},{"id":180,"kind":"semantic-declaration"},{"id":181,"kind":"semantic-declaration"},{"id":182,"kind":"semantic-declaration"},{"id":183,"kind":"semantic-declaration"},{"id":184,"kind":"semantic-declaration"},{"id":185,"kind":"semantic-declaration"},{"id":186,"kind":"semantic-declaration"},{"id":187,"kind":"semantic-declaration"},{"id":188,"kind":"semantic-declaration"},{"id":189,"kind":"semantic-declaration"},{"id":190,"kind":"semantic-declaration"},{"id":191,"kind":"semantic-declaration"},{"id":192,"kind":"semantic-declaration"},{"id":193,"kind":"semantic-declaration"},{"id":194,"kind":"semantic-declaration"},{"id":195,"kind":"semantic-declaration"},{"id":196,"kind":"semantic-declaration"},{"id":197,"kind":"semantic-declaration"},{"id":198,"kind":"semantic-declaration"},{"id":199,"kind":"semantic-declaration"},{"id":200,"kind":"semantic-declaration"},{"id":201,"kind":"semantic-declaration"},{"id":202,"kind":"semantic-declaration"},{"id":203,"kind":"semantic-declaration"},{"id":204,"kind":"semantic-declaration"},{"id":205,"kind":"semantic-declaration"},{"id":206,"kind":"semantic-declaration"},{"id":207,"kind":"semantic-declaration"},{"id":208,"kind":"semantic-declaration"},{"id":209,"kind":"semantic-declaration"},{"id":210,"kind":"semantic-declaration"},{"id":211,"kind":"semantic-declaration"},{"id":212,"kind":"semantic-declaration"},{"id":213,"kind":"semantic-declaration"},{"id":214,"kind":"semantic-declaration"},{"id":215,"kind":"semantic-declaration"},{"id":216,"kind":"semantic-declaration"},{"id":217,"kind":"semantic-declaration"},{"id":218,"kind":"semantic-declaration"},{"id":219,"kind":"semantic-declaration"},{"id":220,"kind":"semantic-declaration"},{"id":221,"kind":"semantic-declaration"},{"id":222,"kind":"semantic-declaration"},{"id":223,"kind":"semantic-declaration"},{"id":224,"kind":"semantic-declaration"},{"id":225,"kind":"semantic-declaration"},{"id":226,"kind":"semantic-declaration"},{"id":227,"kind":"semantic-declaration"},{"id":228,"kind":"semantic-declaration"},{"id":229,"kind":"semantic-declaration"},{"id":230,"kind":"semantic-declaration"},{"id":231,"kind":"semantic-declaration"},{"id":232,"kind":"semantic-declaration"},{"id":233,"kind":"semantic-declaration"},{"id":234,"kind":"semantic-declaration"},{"id":235,"kind":"semantic-declaration"},{"id":236,"kind":"semantic-declaration"},{"id":237,"kind":"semantic-declaration"},{"id":238,"kind":"semantic-declaration"},{"id":239,"kind":"semantic-declaration"},{"id":240,"kind":"semantic-declaration"},{"id":241,"kind":"semantic-declaration"},{"id":242,"kind":"semantic-declaration"},{"id":243,"kind":"semantic-declaration"},{"id":244,"kind":"semantic-declaration"},{"id":245,"kind":"semantic-declaration"},{"id":246,"kind":"semantic-declaration"},{"id":247,"kind":"semantic-declaration"},{"id":248,"kind":"semantic-declaration"},{"id":249,"kind":"semantic-declaration"},{"id":250,"kind":"semantic-declaration"},{"id":251,"kind":"semantic-declaration"},{"id":252,"kind":"semantic-declaration"},{"id":253,"kind":"semantic-declaration"},{"id":254,"kind":"semantic-declaration"},{"id":255,"kind":"semantic-declaration"},{"id":256,"kind":"semantic-declaration"},{"id":257,"kind":"semantic-declaration"},{"id":258,"kind":"semantic-declaration"},{"id":259,"kind":"semantic-declaration"},{"id":260,"kind":"semantic-declaration"},{"id":261,"kind":"semantic-declaration"},{"id":262,"kind":"semantic-declaration"},{"id":263,"kind":"semantic-declaration"},{"id":264,"kind":"semantic-declaration"},{"id":265,"kind":"semantic-declaration"},{"id":266,"kind":"semantic-declaration"},{"id":267,"kind":"semantic-declaration"},{"id":268,"kind":"semantic-declaration"},{"id":269,"kind":"semantic-declaration"},{"id":270,"kind":"semantic-declaration"},{"id":271,"kind":"semantic-declaration"},{"id":272,"kind":"semantic-declaration"},{"id":273,"kind":"semantic-declaration"},{"id":274,"kind":"semantic-declaration"},{"id":275,"kind":"semantic-declaration"},{"id":276,"kind":"semantic-declaration"},{"id":277,"kind":"semantic-declaration"},{"id":278,"kind":"semantic-declaration"},{"id":279,"kind":"semantic-declaration"},{"id":280,"kind":"semantic-declaration"},{"id":281,"kind":"semantic-declaration"},{"id":282,"kind":"semantic-declaration"},{"id":283,"kind":"semantic-declaration"},{"id":284,"kind":"semantic-declaration"},{"id":285,"kind":"semantic-declaration"},{"id":286,"kind":"semantic-declaration"},{"id":287,"kind":"semantic-declaration"},{"id":288,"kind":"semantic-declaration"},{"id":289,"kind":"semantic-declaration"},{"id":290,"kind":"semantic-declaration"},{"id":291,"kind":"semantic-declaration"},{"id":292,"kind":"semantic-declaration"},{"id":293,"kind":"semantic-declaration"},{"id":294,"kind":"semantic-declaration"},{"id":295,"kind":"semantic-declaration"},{"id":296,"kind":"semantic-declaration"},{"id":297,"kind":"semantic-declaration"},{"id":298,"kind":"semantic-declaration"},{"id":299,"kind":"semantic-declaration"},{"id":300,"kind":"semantic-declaration"},{"id":301,"kind":"semantic-declaration"},{"id":302,"kind":"semantic-declaration"},{"id":303,"kind":"semantic-declaration"},{"id":304,"kind":"semantic-declaration"},{"id":305,"kind":"semantic-declaration"},{"id":306,"kind":"semantic-declaration"},{"id":307,"kind":"semantic-declaration"},{"id":308,"kind":"semantic-declaration"},{"id":309,"kind":"semantic-declaration"},{"id":310,"kind":"semantic-declaration"},{"id":311,"kind":"semantic-declaration"},{"id":312,"kind":"semantic-declaration"},{"id":313,"kind":"semantic-declaration"},{"id":314,"kind":"semantic-declaration"},{"id":315,"kind":"semantic-declaration"},{"id":316,"kind":"semantic-declaration"},{"id":317,"kind":"semantic-declaration"},{"id":318,"kind":"semantic-declaration"},{"id":319,"kind":"semantic-declaration"},{"id":320,"kind":"semantic-declaration"},{"id":321,"kind":"semantic-declaration"},{"id":322,"kind":"semantic-declaration"},{"id":323,"kind":"semantic-declaration"},{"id":324,"kind":"semantic-declaration"},{"id":325,"kind":"semantic-declaration"},{"id":326,"kind":"semantic-declaration"},{"id":327,"kind":"semantic-declaration"},{"id":328,"kind":"semantic-declaration"},{"id":329,"kind":"semantic-declaration"},{"id":330,"kind":"semantic-declaration"},{"id":331,"kind":"semantic-declaration"},{"id":332,"kind":"semantic-declaration"},{"id":333,"kind":"semantic-declaration"},{"id":334,"kind":"semantic-declaration"},{"id":335,"kind":"semantic-declaration"},{"id":336,"kind":"semantic-declaration"},{"id":337,"kind":"semantic-declaration"},{"id":338,"kind":"semantic-declaration"},{"id":339,"kind":"semantic-declaration"},{"id":340,"kind":"semantic-declaration"},{"id":341,"kind":"semantic-declaration"},{"id":342,"kind":"semantic-declaration"},{"id":343,"kind":"semantic-declaration"},{"id":344,"kind":"semantic-declaration"},{"id":345,"kind":"semantic-declaration"},{"id":346,"kind":"semantic-declaration"},{"id":347,"kind":"semantic-declaration"}],"semantic_id":"c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517","source_id":"ce718723d5d252a9adafdc3cb3b76931b1d91e053dd3e7e31bcb9b9496a1941c","sources":[{"id":0,"kind":"file","path":"src/GnafCertificates.lex.tex","sha256":"498dafa5093f56f0a05bbddb58875aebc0769325386f2ca611f3a101d9368f64"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/LexLeanTarget/GnafCertificates.lean"},{"id":1,"kind":"tex","path":"modules/LexLeanTarget/GnafCertificates.tex"}],"mappings":[{"artifact":0,"gen_end":414,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":105623,"src_start":0},{"artifact":0,"gen_end":1247,"gen_start":414,"node":1,"role":"declaration","source":0,"src_end":1053,"src_start":261},{"artifact":0,"gen_end":1546,"gen_start":1247,"node":2,"role":"declaration","source":0,"src_end":1401,"src_start":1055},{"artifact":0,"gen_end":2308,"gen_start":1546,"node":3,"role":"declaration","source":0,"src_end":2136,"src_start":1403},{"artifact":0,"gen_end":2653,"gen_start":2308,"node":4,"role":"declaration","source":0,"src_end":2528,"src_start":2138},{"artifact":0,"gen_end":3488,"gen_start":2653,"node":5,"role":"declaration","source":0,"src_end":3324,"src_start":2530},{"artifact":0,"gen_end":3829,"gen_start":3488,"node":6,"role":"declaration","source":0,"src_end":3714,"src_start":3326},{"artifact":0,"gen_end":4664,"gen_start":3829,"node":7,"role":"declaration","source":0,"src_end":4510,"src_start":3716},{"artifact":0,"gen_end":5001,"gen_start":4664,"node":8,"role":"declaration","source":0,"src_end":4898,"src_start":4512},{"artifact":0,"gen_end":6126,"gen_start":5001,"node":9,"role":"declaration","source":0,"src_end":5944,"src_start":4900},{"artifact":0,"gen_end":6465,"gen_start":6126,"node":10,"role":"declaration","source":0,"src_end":6332,"src_start":5946},{"artifact":0,"gen_end":6673,"gen_start":6465,"node":11,"role":"declaration","source":0,"src_end":6613,"src_start":6334},{"artifact":0,"gen_end":7508,"gen_start":6673,"node":12,"role":"declaration","source":0,"src_end":7409,"src_start":6615},{"artifact":0,"gen_end":7856,"gen_start":7508,"node":13,"role":"declaration","source":0,"src_end":7802,"src_start":7411},{"artifact":0,"gen_end":8693,"gen_start":7856,"node":14,"role":"declaration","source":0,"src_end":8598,"src_start":7804},{"artifact":0,"gen_end":9028,"gen_start":8693,"node":15,"role":"declaration","source":0,"src_end":8982,"src_start":8600},{"artifact":0,"gen_end":9962,"gen_start":9028,"node":16,"role":"declaration","source":0,"src_end":9869,"src_start":8984},{"artifact":0,"gen_end":10306,"gen_start":9962,"node":17,"role":"declaration","source":0,"src_end":10262,"src_start":9871},{"artifact":0,"gen_end":11139,"gen_start":10306,"node":18,"role":"declaration","source":0,"src_end":11056,"src_start":10264},{"artifact":0,"gen_end":11474,"gen_start":11139,"node":19,"role":"declaration","source":0,"src_end":11440,"src_start":11058},{"artifact":0,"gen_end":12603,"gen_start":11474,"node":20,"role":"declaration","source":0,"src_end":12487,"src_start":11442},{"artifact":0,"gen_end":12869,"gen_start":12603,"node":21,"role":"declaration","source":0,"src_end":12812,"src_start":12489},{"artifact":0,"gen_end":13673,"gen_start":12869,"node":22,"role":"declaration","source":0,"src_end":13560,"src_start":12814},{"artifact":0,"gen_end":14036,"gen_start":13673,"node":23,"role":"declaration","source":0,"src_end":13972,"src_start":13562},{"artifact":0,"gen_end":14868,"gen_start":14036,"node":24,"role":"declaration","source":0,"src_end":14740,"src_start":13974},{"artifact":0,"gen_end":15218,"gen_start":14868,"node":25,"role":"declaration","source":0,"src_end":15141,"src_start":14742},{"artifact":0,"gen_end":16036,"gen_start":15218,"node":26,"role":"declaration","source":0,"src_end":15891,"src_start":15143},{"artifact":0,"gen_end":16393,"gen_start":16036,"node":27,"role":"declaration","source":0,"src_end":16297,"src_start":15893},{"artifact":0,"gen_end":17223,"gen_start":16393,"node":28,"role":"declaration","source":0,"src_end":17059,"src_start":16299},{"artifact":0,"gen_end":17575,"gen_start":17223,"node":29,"role":"declaration","source":0,"src_end":17460,"src_start":17061},{"artifact":0,"gen_end":18403,"gen_start":17575,"node":30,"role":"declaration","source":0,"src_end":18222,"src_start":17462},{"artifact":0,"gen_end":18759,"gen_start":18403,"node":31,"role":"declaration","source":0,"src_end":18629,"src_start":18224},{"artifact":0,"gen_end":19562,"gen_start":18759,"node":32,"role":"declaration","source":0,"src_end":19372,"src_start":18631},{"artifact":0,"gen_end":19920,"gen_start":19562,"node":33,"role":"declaration","source":0,"src_end":19779,"src_start":19374},{"artifact":0,"gen_end":21009,"gen_start":19920,"node":34,"role":"declaration","source":0,"src_end":20792,"src_start":19781},{"artifact":0,"gen_end":21328,"gen_start":21009,"node":35,"role":"declaration","source":0,"src_end":21164,"src_start":20794},{"artifact":0,"gen_end":22148,"gen_start":21328,"node":36,"role":"declaration","source":0,"src_end":21916,"src_start":21166},{"artifact":0,"gen_end":22502,"gen_start":22148,"node":37,"role":"declaration","source":0,"src_end":22319,"src_start":21918},{"artifact":0,"gen_end":24146,"gen_start":22502,"node":38,"role":"declaration","source":0,"src_end":23855,"src_start":22321},{"artifact":0,"gen_end":24442,"gen_start":24146,"node":39,"role":"declaration","source":0,"src_end":24206,"src_start":23857},{"artifact":0,"gen_end":26086,"gen_start":24442,"node":40,"role":"declaration","source":0,"src_end":25740,"src_start":24208},{"artifact":0,"gen_end":26429,"gen_start":26086,"node":41,"role":"declaration","source":0,"src_end":26132,"src_start":25742},{"artifact":0,"gen_end":27320,"gen_start":26429,"node":42,"role":"declaration","source":0,"src_end":26955,"src_start":26134},{"artifact":0,"gen_end":27681,"gen_start":27320,"node":43,"role":"declaration","source":0,"src_end":27365,"src_start":26957},{"artifact":0,"gen_end":28568,"gen_start":27681,"node":44,"role":"declaration","source":0,"src_end":28182,"src_start":27367},{"artifact":0,"gen_end":28935,"gen_start":28568,"node":45,"role":"declaration","source":0,"src_end":28598,"src_start":28184},{"artifact":0,"gen_end":29752,"gen_start":28935,"node":46,"role":"declaration","source":0,"src_end":29349,"src_start":28600},{"artifact":0,"gen_end":30060,"gen_start":29752,"node":47,"role":"declaration","source":0,"src_end":29712,"src_start":29351},{"artifact":0,"gen_end":31192,"gen_start":30060,"node":48,"role":"declaration","source":0,"src_end":30762,"src_start":29714},{"artifact":0,"gen_end":31491,"gen_start":31192,"node":49,"role":"declaration","source":0,"src_end":31110,"src_start":30764},{"artifact":0,"gen_end":32368,"gen_start":31491,"node":50,"role":"declaration","source":0,"src_end":31915,"src_start":31112},{"artifact":0,"gen_end":32667,"gen_start":32368,"node":51,"role":"declaration","source":0,"src_end":32263,"src_start":31917},{"artifact":0,"gen_end":33801,"gen_start":32667,"node":52,"role":"declaration","source":0,"src_end":33315,"src_start":32265},{"artifact":0,"gen_end":34110,"gen_start":33801,"node":53,"role":"declaration","source":0,"src_end":33673,"src_start":33317},{"artifact":0,"gen_end":35799,"gen_start":34110,"node":54,"role":"declaration","source":0,"src_end":35248,"src_start":33675},{"artifact":0,"gen_end":36090,"gen_start":35799,"node":55,"role":"declaration","source":0,"src_end":35590,"src_start":35250},{"artifact":0,"gen_end":37229,"gen_start":36090,"node":56,"role":"declaration","source":0,"src_end":36649,"src_start":35592},{"artifact":0,"gen_end":37569,"gen_start":37229,"node":57,"role":"declaration","source":0,"src_end":37040,"src_start":36651},{"artifact":0,"gen_end":38752,"gen_start":37569,"node":58,"role":"declaration","source":0,"src_end":38139,"src_start":37042},{"artifact":0,"gen_end":39096,"gen_start":38752,"node":59,"role":"declaration","source":0,"src_end":38532,"src_start":38141},{"artifact":0,"gen_end":40240,"gen_start":39096,"node":60,"role":"declaration","source":0,"src_end":39596,"src_start":38534},{"artifact":0,"gen_end":40586,"gen_start":40240,"node":61,"role":"declaration","source":0,"src_end":39993,"src_start":39598},{"artifact":0,"gen_end":42284,"gen_start":40586,"node":62,"role":"declaration","source":0,"src_end":41577,"src_start":39995},{"artifact":0,"gen_end":42622,"gen_start":42284,"node":63,"role":"declaration","source":0,"src_end":41966,"src_start":41579},{"artifact":0,"gen_end":43421,"gen_start":42622,"node":64,"role":"declaration","source":0,"src_end":42693,"src_start":41968},{"artifact":0,"gen_end":43775,"gen_start":43421,"node":65,"role":"declaration","source":0,"src_end":43090,"src_start":42695},{"artifact":0,"gen_end":44861,"gen_start":43775,"node":66,"role":"declaration","source":0,"src_end":44094,"src_start":43092},{"artifact":0,"gen_end":45217,"gen_start":44861,"node":67,"role":"declaration","source":0,"src_end":44493,"src_start":44096},{"artifact":0,"gen_end":46303,"gen_start":45217,"node":68,"role":"declaration","source":0,"src_end":45497,"src_start":44495},{"artifact":0,"gen_end":46659,"gen_start":46303,"node":69,"role":"declaration","source":0,"src_end":45896,"src_start":45499},{"artifact":0,"gen_end":47790,"gen_start":46659,"node":70,"role":"declaration","source":0,"src_end":46957,"src_start":45898},{"artifact":0,"gen_end":48152,"gen_start":47790,"node":71,"role":"declaration","source":0,"src_end":47362,"src_start":46959},{"artifact":0,"gen_end":49331,"gen_start":48152,"node":72,"role":"declaration","source":0,"src_end":48455,"src_start":47364},{"artifact":0,"gen_end":49602,"gen_start":49331,"node":73,"role":"declaration","source":0,"src_end":48783,"src_start":48457},{"artifact":0,"gen_end":50230,"gen_start":49602,"node":74,"role":"declaration","source":0,"src_end":49359,"src_start":48785},{"artifact":0,"gen_end":50583,"gen_start":50230,"node":75,"role":"declaration","source":0,"src_end":49761,"src_start":49361},{"artifact":0,"gen_end":51754,"gen_start":50583,"node":76,"role":"declaration","source":0,"src_end":50846,"src_start":49763},{"artifact":0,"gen_end":52081,"gen_start":51754,"node":77,"role":"declaration","source":0,"src_end":51224,"src_start":50848},{"artifact":0,"gen_end":53261,"gen_start":52081,"node":78,"role":"declaration","source":0,"src_end":52308,"src_start":51226},{"artifact":0,"gen_end":53565,"gen_start":53261,"node":79,"role":"declaration","source":0,"src_end":52661,"src_start":52310},{"artifact":0,"gen_end":54739,"gen_start":53565,"node":80,"role":"declaration","source":0,"src_end":53765,"src_start":52663},{"artifact":0,"gen_end":55043,"gen_start":54739,"node":81,"role":"declaration","source":0,"src_end":54118,"src_start":53767},{"artifact":0,"gen_end":56067,"gen_start":55043,"node":82,"role":"declaration","source":0,"src_end":55054,"src_start":54120},{"artifact":0,"gen_end":56442,"gen_start":56067,"node":83,"role":"declaration","source":0,"src_end":55472,"src_start":55056},{"artifact":0,"gen_end":57586,"gen_start":56442,"node":84,"role":"declaration","source":0,"src_end":56536,"src_start":55474},{"artifact":0,"gen_end":57948,"gen_start":57586,"node":85,"role":"declaration","source":0,"src_end":56941,"src_start":56538},{"artifact":0,"gen_end":59152,"gen_start":57948,"node":86,"role":"declaration","source":0,"src_end":58083,"src_start":56943},{"artifact":0,"gen_end":59510,"gen_start":59152,"node":87,"role":"declaration","source":0,"src_end":58484,"src_start":58085},{"artifact":0,"gen_end":60540,"gen_start":59510,"node":88,"role":"declaration","source":0,"src_end":59438,"src_start":58486},{"artifact":0,"gen_end":60817,"gen_start":60540,"node":89,"role":"declaration","source":0,"src_end":59772,"src_start":59440},{"artifact":0,"gen_end":61921,"gen_start":60817,"node":90,"role":"declaration","source":0,"src_end":60786,"src_start":59774},{"artifact":0,"gen_end":62275,"gen_start":61921,"node":91,"role":"declaration","source":0,"src_end":61183,"src_start":60788},{"artifact":0,"gen_end":63326,"gen_start":62275,"node":92,"role":"declaration","source":0,"src_end":62128,"src_start":61185},{"artifact":0,"gen_end":63638,"gen_start":63326,"node":93,"role":"declaration","source":0,"src_end":62489,"src_start":62130},{"artifact":0,"gen_end":65372,"gen_start":63638,"node":94,"role":"declaration","source":0,"src_end":64105,"src_start":62491},{"artifact":0,"gen_end":65708,"gen_start":65372,"node":95,"role":"declaration","source":0,"src_end":64484,"src_start":64107},{"artifact":0,"gen_end":67391,"gen_start":65708,"node":96,"role":"declaration","source":0,"src_end":66051,"src_start":64486},{"artifact":0,"gen_end":67728,"gen_start":67391,"node":97,"role":"declaration","source":0,"src_end":66431,"src_start":66053},{"artifact":0,"gen_end":68855,"gen_start":67728,"node":98,"role":"declaration","source":0,"src_end":67476,"src_start":66433},{"artifact":0,"gen_end":69203,"gen_start":68855,"node":99,"role":"declaration","source":0,"src_end":67867,"src_start":67478},{"artifact":0,"gen_end":70328,"gen_start":69203,"node":100,"role":"declaration","source":0,"src_end":68910,"src_start":67869},{"artifact":0,"gen_end":70670,"gen_start":70328,"node":101,"role":"declaration","source":0,"src_end":69295,"src_start":68912},{"artifact":0,"gen_end":71797,"gen_start":70670,"node":102,"role":"declaration","source":0,"src_end":70354,"src_start":69297},{"artifact":0,"gen_end":72161,"gen_start":71797,"node":103,"role":"declaration","source":0,"src_end":70761,"src_start":70356},{"artifact":0,"gen_end":73256,"gen_start":72161,"node":104,"role":"declaration","source":0,"src_end":71762,"src_start":70763},{"artifact":0,"gen_end":73620,"gen_start":73256,"node":105,"role":"declaration","source":0,"src_end":72169,"src_start":71764},{"artifact":0,"gen_end":74499,"gen_start":73620,"node":106,"role":"declaration","source":0,"src_end":72976,"src_start":72171},{"artifact":0,"gen_end":74859,"gen_start":74499,"node":107,"role":"declaration","source":0,"src_end":73379,"src_start":72978},{"artifact":0,"gen_end":75819,"gen_start":74859,"node":108,"role":"declaration","source":0,"src_end":74225,"src_start":73381},{"artifact":0,"gen_end":76164,"gen_start":75819,"node":109,"role":"declaration","source":0,"src_end":74619,"src_start":74227},{"artifact":0,"gen_end":77128,"gen_start":76164,"node":110,"role":"declaration","source":0,"src_end":75469,"src_start":74621},{"artifact":0,"gen_end":77483,"gen_start":77128,"node":111,"role":"declaration","source":0,"src_end":75869,"src_start":75471},{"artifact":0,"gen_end":78444,"gen_start":77483,"node":112,"role":"declaration","source":0,"src_end":76716,"src_start":75871},{"artifact":0,"gen_end":78791,"gen_start":78444,"node":113,"role":"declaration","source":0,"src_end":77112,"src_start":76718},{"artifact":0,"gen_end":79923,"gen_start":78791,"node":114,"role":"declaration","source":0,"src_end":78162,"src_start":77114},{"artifact":0,"gen_end":80201,"gen_start":79923,"node":115,"role":"declaration","source":0,"src_end":78499,"src_start":78164},{"artifact":0,"gen_end":81239,"gen_start":80201,"node":116,"role":"declaration","source":0,"src_end":79443,"src_start":78501},{"artifact":0,"gen_end":81607,"gen_start":81239,"node":117,"role":"declaration","source":0,"src_end":79860,"src_start":79445},{"artifact":0,"gen_end":81840,"gen_start":81607,"node":118,"role":"declaration","source":0,"src_end":80166,"src_start":79862},{"artifact":0,"gen_end":82878,"gen_start":81840,"node":119,"role":"declaration","source":0,"src_end":81114,"src_start":80168},{"artifact":0,"gen_end":83234,"gen_start":82878,"node":120,"role":"declaration","source":0,"src_end":81519,"src_start":81116},{"artifact":0,"gen_end":83454,"gen_start":83234,"node":121,"role":"declaration","source":0,"src_end":81812,"src_start":81521},{"artifact":0,"gen_end":84538,"gen_start":83454,"node":122,"role":"declaration","source":0,"src_end":82794,"src_start":81814},{"artifact":0,"gen_end":84894,"gen_start":84538,"node":123,"role":"declaration","source":0,"src_end":83199,"src_start":82796},{"artifact":0,"gen_end":85115,"gen_start":84894,"node":124,"role":"declaration","source":0,"src_end":83493,"src_start":83201},{"artifact":0,"gen_end":86051,"gen_start":85115,"node":125,"role":"declaration","source":0,"src_end":84351,"src_start":83495},{"artifact":0,"gen_end":86362,"gen_start":86051,"node":126,"role":"declaration","source":0,"src_end":84711,"src_start":84353},{"artifact":0,"gen_end":86577,"gen_start":86362,"node":127,"role":"declaration","source":0,"src_end":84999,"src_start":84713},{"artifact":0,"gen_end":87427,"gen_start":86577,"node":128,"role":"declaration","source":0,"src_end":85787,"src_start":85001},{"artifact":0,"gen_end":87783,"gen_start":87427,"node":129,"role":"declaration","source":0,"src_end":86192,"src_start":85789},{"artifact":0,"gen_end":88624,"gen_start":87783,"node":130,"role":"declaration","source":0,"src_end":86971,"src_start":86194},{"artifact":0,"gen_end":88931,"gen_start":88624,"node":131,"role":"declaration","source":0,"src_end":87331,"src_start":86973},{"artifact":0,"gen_end":89970,"gen_start":88931,"node":132,"role":"declaration","source":0,"src_end":88276,"src_start":87333},{"artifact":0,"gen_end":90285,"gen_start":89970,"node":133,"role":"declaration","source":0,"src_end":88640,"src_start":88278},{"artifact":0,"gen_end":90505,"gen_start":90285,"node":134,"role":"declaration","source":0,"src_end":88933,"src_start":88642},{"artifact":0,"gen_end":91557,"gen_start":90505,"node":135,"role":"declaration","source":0,"src_end":89891,"src_start":88935},{"artifact":0,"gen_end":91914,"gen_start":91557,"node":136,"role":"declaration","source":0,"src_end":90297,"src_start":89893},{"artifact":0,"gen_end":92136,"gen_start":91914,"node":137,"role":"declaration","source":0,"src_end":90592,"src_start":90299},{"artifact":0,"gen_end":93178,"gen_start":92136,"node":138,"role":"declaration","source":0,"src_end":91540,"src_start":90594},{"artifact":0,"gen_end":93488,"gen_start":93178,"node":139,"role":"declaration","source":0,"src_end":91899,"src_start":91542},{"artifact":0,"gen_end":93703,"gen_start":93488,"node":140,"role":"declaration","source":0,"src_end":92187,"src_start":91901},{"artifact":0,"gen_end":94245,"gen_start":93703,"node":141,"role":"declaration","source":0,"src_end":92691,"src_start":92189},{"artifact":0,"gen_end":94572,"gen_start":94245,"node":142,"role":"declaration","source":0,"src_end":93069,"src_start":92693},{"artifact":0,"gen_end":95214,"gen_start":94572,"node":143,"role":"declaration","source":0,"src_end":93661,"src_start":93071},{"artifact":0,"gen_end":95547,"gen_start":95214,"node":144,"role":"declaration","source":0,"src_end":94045,"src_start":93663},{"artifact":0,"gen_end":95768,"gen_start":95547,"node":145,"role":"declaration","source":0,"src_end":94339,"src_start":94047},{"artifact":0,"gen_end":96897,"gen_start":95768,"node":146,"role":"declaration","source":0,"src_end":95386,"src_start":94341},{"artifact":0,"gen_end":97164,"gen_start":96897,"node":147,"role":"declaration","source":0,"src_end":95712,"src_start":95388},{"artifact":0,"gen_end":98293,"gen_start":97164,"node":148,"role":"declaration","source":0,"src_end":96761,"src_start":95714},{"artifact":0,"gen_end":98571,"gen_start":98293,"node":149,"role":"declaration","source":0,"src_end":97098,"src_start":96763},{"artifact":0,"gen_end":99457,"gen_start":98571,"node":150,"role":"declaration","source":0,"src_end":97914,"src_start":97100},{"artifact":0,"gen_end":99747,"gen_start":99457,"node":151,"role":"declaration","source":0,"src_end":98263,"src_start":97916},{"artifact":0,"gen_end":100876,"gen_start":99747,"node":152,"role":"declaration","source":0,"src_end":99310,"src_start":98265},{"artifact":0,"gen_end":101142,"gen_start":100876,"node":153,"role":"declaration","source":0,"src_end":99635,"src_start":99312},{"artifact":0,"gen_end":102273,"gen_start":101142,"node":154,"role":"declaration","source":0,"src_end":100684,"src_start":99637},{"artifact":0,"gen_end":102548,"gen_start":102273,"node":155,"role":"declaration","source":0,"src_end":101018,"src_start":100686},{"artifact":0,"gen_end":102742,"gen_start":102548,"node":156,"role":"declaration","source":0,"src_end":101279,"src_start":101020},{"artifact":0,"gen_end":102938,"gen_start":102742,"node":157,"role":"declaration","source":0,"src_end":101542,"src_start":101281},{"artifact":0,"gen_end":103133,"gen_start":102938,"node":158,"role":"declaration","source":0,"src_end":101804,"src_start":101544},{"artifact":0,"gen_end":103329,"gen_start":103133,"node":159,"role":"declaration","source":0,"src_end":102067,"src_start":101806},{"artifact":0,"gen_end":103523,"gen_start":103329,"node":160,"role":"declaration","source":0,"src_end":102328,"src_start":102069},{"artifact":0,"gen_end":103718,"gen_start":103523,"node":161,"role":"declaration","source":0,"src_end":102590,"src_start":102330},{"artifact":0,"gen_end":103912,"gen_start":103718,"node":162,"role":"declaration","source":0,"src_end":102851,"src_start":102592},{"artifact":0,"gen_end":104108,"gen_start":103912,"node":163,"role":"declaration","source":0,"src_end":103114,"src_start":102853},{"artifact":0,"gen_end":104302,"gen_start":104108,"node":164,"role":"declaration","source":0,"src_end":103375,"src_start":103116},{"artifact":0,"gen_end":104497,"gen_start":104302,"node":165,"role":"declaration","source":0,"src_end":103637,"src_start":103377},{"artifact":0,"gen_end":104677,"gen_start":104497,"node":166,"role":"declaration","source":0,"src_end":103884,"src_start":103639},{"artifact":0,"gen_end":104859,"gen_start":104677,"node":167,"role":"declaration","source":0,"src_end":104133,"src_start":103886},{"artifact":0,"gen_end":105039,"gen_start":104859,"node":168,"role":"declaration","source":0,"src_end":104380,"src_start":104135},{"artifact":0,"gen_end":105220,"gen_start":105039,"node":169,"role":"declaration","source":0,"src_end":104628,"src_start":104382},{"artifact":0,"gen_end":105392,"gen_start":105220,"node":170,"role":"declaration","source":0,"src_end":104867,"src_start":104630},{"artifact":0,"gen_end":105566,"gen_start":105392,"node":171,"role":"declaration","source":0,"src_end":105108,"src_start":104869},{"artifact":0,"gen_end":105738,"gen_start":105566,"node":172,"role":"declaration","source":0,"src_end":105347,"src_start":105110},{"artifact":0,"gen_end":105911,"gen_start":105738,"node":173,"role":"declaration","source":0,"src_end":105587,"src_start":105349},{"artifact":0,"gen_end":105947,"gen_start":105911,"node":0,"role":"declaration","source":0,"src_end":105623,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":174,"role":"declaration","source":0,"src_end":105623,"src_start":0},{"artifact":1,"gen_end":1129,"gen_start":134,"node":175,"role":"declaration","source":0,"src_end":1053,"src_start":261},{"artifact":1,"gen_end":1578,"gen_start":1129,"node":176,"role":"declaration","source":0,"src_end":1401,"src_start":1055},{"artifact":1,"gen_end":2500,"gen_start":1578,"node":177,"role":"declaration","source":0,"src_end":2136,"src_start":1403},{"artifact":1,"gen_end":2995,"gen_start":2500,"node":178,"role":"declaration","source":0,"src_end":2528,"src_start":2138},{"artifact":1,"gen_end":3992,"gen_start":2995,"node":179,"role":"declaration","source":0,"src_end":3324,"src_start":2530},{"artifact":1,"gen_end":4483,"gen_start":3992,"node":180,"role":"declaration","source":0,"src_end":3714,"src_start":3326},{"artifact":1,"gen_end":5480,"gen_start":4483,"node":181,"role":"declaration","source":0,"src_end":4510,"src_start":3716},{"artifact":1,"gen_end":5967,"gen_start":5480,"node":182,"role":"declaration","source":0,"src_end":4898,"src_start":4512},{"artifact":1,"gen_end":7254,"gen_start":5967,"node":183,"role":"declaration","source":0,"src_end":5944,"src_start":4900},{"artifact":1,"gen_end":7743,"gen_start":7254,"node":184,"role":"declaration","source":0,"src_end":6332,"src_start":5946},{"artifact":1,"gen_end":8101,"gen_start":7743,"node":185,"role":"declaration","source":0,"src_end":6613,"src_start":6334},{"artifact":1,"gen_end":9098,"gen_start":8101,"node":186,"role":"declaration","source":0,"src_end":7409,"src_start":6615},{"artifact":1,"gen_end":9596,"gen_start":9098,"node":187,"role":"declaration","source":0,"src_end":7802,"src_start":7411},{"artifact":1,"gen_end":10595,"gen_start":9596,"node":188,"role":"declaration","source":0,"src_end":8598,"src_start":7804},{"artifact":1,"gen_end":11080,"gen_start":10595,"node":189,"role":"declaration","source":0,"src_end":8982,"src_start":8600},{"artifact":1,"gen_end":12176,"gen_start":11080,"node":190,"role":"declaration","source":0,"src_end":9869,"src_start":8984},{"artifact":1,"gen_end":12670,"gen_start":12176,"node":191,"role":"declaration","source":0,"src_end":10262,"src_start":9871},{"artifact":1,"gen_end":13665,"gen_start":12670,"node":192,"role":"declaration","source":0,"src_end":11056,"src_start":10264},{"artifact":1,"gen_end":14150,"gen_start":13665,"node":193,"role":"declaration","source":0,"src_end":11440,"src_start":11058},{"artifact":1,"gen_end":15439,"gen_start":14150,"node":194,"role":"declaration","source":0,"src_end":12487,"src_start":11442},{"artifact":1,"gen_end":15855,"gen_start":15439,"node":195,"role":"declaration","source":0,"src_end":12812,"src_start":12489},{"artifact":1,"gen_end":16819,"gen_start":15855,"node":196,"role":"declaration","source":0,"src_end":13560,"src_start":12814},{"artifact":1,"gen_end":17332,"gen_start":16819,"node":197,"role":"declaration","source":0,"src_end":13972,"src_start":13562},{"artifact":1,"gen_end":18324,"gen_start":17332,"node":198,"role":"declaration","source":0,"src_end":14740,"src_start":13974},{"artifact":1,"gen_end":18824,"gen_start":18324,"node":199,"role":"declaration","source":0,"src_end":15141,"src_start":14742},{"artifact":1,"gen_end":19802,"gen_start":18824,"node":200,"role":"declaration","source":0,"src_end":15891,"src_start":15143},{"artifact":1,"gen_end":20309,"gen_start":19802,"node":201,"role":"declaration","source":0,"src_end":16297,"src_start":15893},{"artifact":1,"gen_end":21299,"gen_start":20309,"node":202,"role":"declaration","source":0,"src_end":17059,"src_start":16299},{"artifact":1,"gen_end":21801,"gen_start":21299,"node":203,"role":"declaration","source":0,"src_end":17460,"src_start":17061},{"artifact":1,"gen_end":22789,"gen_start":21801,"node":204,"role":"declaration","source":0,"src_end":18222,"src_start":17462},{"artifact":1,"gen_end":23295,"gen_start":22789,"node":205,"role":"declaration","source":0,"src_end":18629,"src_start":18224},{"artifact":1,"gen_end":24258,"gen_start":23295,"node":206,"role":"declaration","source":0,"src_end":19372,"src_start":18631},{"artifact":1,"gen_end":24766,"gen_start":24258,"node":207,"role":"declaration","source":0,"src_end":19779,"src_start":19374},{"artifact":1,"gen_end":26015,"gen_start":24766,"node":208,"role":"declaration","source":0,"src_end":20792,"src_start":19781},{"artifact":1,"gen_end":26484,"gen_start":26015,"node":209,"role":"declaration","source":0,"src_end":21164,"src_start":20794},{"artifact":1,"gen_end":27464,"gen_start":26484,"node":210,"role":"declaration","source":0,"src_end":21916,"src_start":21166},{"artifact":1,"gen_end":27968,"gen_start":27464,"node":211,"role":"declaration","source":0,"src_end":22319,"src_start":21918},{"artifact":1,"gen_end":29772,"gen_start":27968,"node":212,"role":"declaration","source":0,"src_end":23855,"src_start":22321},{"artifact":1,"gen_end":30218,"gen_start":29772,"node":213,"role":"declaration","source":0,"src_end":24206,"src_start":23857},{"artifact":1,"gen_end":32022,"gen_start":30218,"node":214,"role":"declaration","source":0,"src_end":25740,"src_start":24208},{"artifact":1,"gen_end":32515,"gen_start":32022,"node":215,"role":"declaration","source":0,"src_end":26132,"src_start":25742},{"artifact":1,"gen_end":33566,"gen_start":32515,"node":216,"role":"declaration","source":0,"src_end":26955,"src_start":26134},{"artifact":1,"gen_end":34077,"gen_start":33566,"node":217,"role":"declaration","source":0,"src_end":27365,"src_start":26957},{"artifact":1,"gen_end":35124,"gen_start":34077,"node":218,"role":"declaration","source":0,"src_end":28182,"src_start":27367},{"artifact":1,"gen_end":35641,"gen_start":35124,"node":219,"role":"declaration","source":0,"src_end":28598,"src_start":28184},{"artifact":1,"gen_end":36618,"gen_start":35641,"node":220,"role":"declaration","source":0,"src_end":29349,"src_start":28600},{"artifact":1,"gen_end":37076,"gen_start":36618,"node":221,"role":"declaration","source":0,"src_end":29712,"src_start":29351},{"artifact":1,"gen_end":38368,"gen_start":37076,"node":222,"role":"declaration","source":0,"src_end":30762,"src_start":29714},{"artifact":1,"gen_end":38817,"gen_start":38368,"node":223,"role":"declaration","source":0,"src_end":31110,"src_start":30764},{"artifact":1,"gen_end":39854,"gen_start":38817,"node":224,"role":"declaration","source":0,"src_end":31915,"src_start":31112},{"artifact":1,"gen_end":40303,"gen_start":39854,"node":225,"role":"declaration","source":0,"src_end":32263,"src_start":31917},{"artifact":1,"gen_end":41597,"gen_start":40303,"node":226,"role":"declaration","source":0,"src_end":33315,"src_start":32265},{"artifact":1,"gen_end":42056,"gen_start":41597,"node":227,"role":"declaration","source":0,"src_end":33673,"src_start":33317},{"artifact":1,"gen_end":43905,"gen_start":42056,"node":228,"role":"declaration","source":0,"src_end":35248,"src_start":33675},{"artifact":1,"gen_end":44346,"gen_start":43905,"node":229,"role":"declaration","source":0,"src_end":35590,"src_start":35250},{"artifact":1,"gen_end":45645,"gen_start":44346,"node":230,"role":"declaration","source":0,"src_end":36649,"src_start":35592},{"artifact":1,"gen_end":46135,"gen_start":45645,"node":231,"role":"declaration","source":0,"src_end":37040,"src_start":36651},{"artifact":1,"gen_end":47478,"gen_start":46135,"node":232,"role":"declaration","source":0,"src_end":38139,"src_start":37042},{"artifact":1,"gen_end":47972,"gen_start":47478,"node":233,"role":"declaration","source":0,"src_end":38532,"src_start":38141},{"artifact":1,"gen_end":49276,"gen_start":47972,"node":234,"role":"declaration","source":0,"src_end":39596,"src_start":38534},{"artifact":1,"gen_end":49772,"gen_start":49276,"node":235,"role":"declaration","source":0,"src_end":39993,"src_start":39598},{"artifact":1,"gen_end":51630,"gen_start":49772,"node":236,"role":"declaration","source":0,"src_end":41577,"src_start":39995},{"artifact":1,"gen_end":52118,"gen_start":51630,"node":237,"role":"declaration","source":0,"src_end":41966,"src_start":41579},{"artifact":1,"gen_end":53077,"gen_start":52118,"node":238,"role":"declaration","source":0,"src_end":42693,"src_start":41968},{"artifact":1,"gen_end":53581,"gen_start":53077,"node":239,"role":"declaration","source":0,"src_end":43090,"src_start":42695},{"artifact":1,"gen_end":54827,"gen_start":53581,"node":240,"role":"declaration","source":0,"src_end":44094,"src_start":43092},{"artifact":1,"gen_end":55333,"gen_start":54827,"node":241,"role":"declaration","source":0,"src_end":44493,"src_start":44096},{"artifact":1,"gen_end":56579,"gen_start":55333,"node":242,"role":"declaration","source":0,"src_end":45497,"src_start":44495},{"artifact":1,"gen_end":57085,"gen_start":56579,"node":243,"role":"declaration","source":0,"src_end":45896,"src_start":45499},{"artifact":1,"gen_end":58376,"gen_start":57085,"node":244,"role":"declaration","source":0,"src_end":46957,"src_start":45898},{"artifact":1,"gen_end":58888,"gen_start":58376,"node":245,"role":"declaration","source":0,"src_end":47362,"src_start":46959},{"artifact":1,"gen_end":60227,"gen_start":58888,"node":246,"role":"declaration","source":0,"src_end":48455,"src_start":47364},{"artifact":1,"gen_end":60648,"gen_start":60227,"node":247,"role":"declaration","source":0,"src_end":48783,"src_start":48457},{"artifact":1,"gen_end":61436,"gen_start":60648,"node":248,"role":"declaration","source":0,"src_end":49359,"src_start":48785},{"artifact":1,"gen_end":61939,"gen_start":61436,"node":249,"role":"declaration","source":0,"src_end":49761,"src_start":49361},{"artifact":1,"gen_end":63270,"gen_start":61939,"node":250,"role":"declaration","source":0,"src_end":50846,"src_start":49763},{"artifact":1,"gen_end":63747,"gen_start":63270,"node":251,"role":"declaration","source":0,"src_end":51224,"src_start":50848},{"artifact":1,"gen_end":65087,"gen_start":63747,"node":252,"role":"declaration","source":0,"src_end":52308,"src_start":51226},{"artifact":1,"gen_end":65541,"gen_start":65087,"node":253,"role":"declaration","source":0,"src_end":52661,"src_start":52310},{"artifact":1,"gen_end":66875,"gen_start":65541,"node":254,"role":"declaration","source":0,"src_end":53765,"src_start":52663},{"artifact":1,"gen_end":67329,"gen_start":66875,"node":255,"role":"declaration","source":0,"src_end":54118,"src_start":53767},{"artifact":1,"gen_end":68513,"gen_start":67329,"node":256,"role":"declaration","source":0,"src_end":55054,"src_start":54120},{"artifact":1,"gen_end":69038,"gen_start":68513,"node":257,"role":"declaration","source":0,"src_end":55472,"src_start":55056},{"artifact":1,"gen_end":70342,"gen_start":69038,"node":258,"role":"declaration","source":0,"src_end":56536,"src_start":55474},{"artifact":1,"gen_end":70854,"gen_start":70342,"node":259,"role":"declaration","source":0,"src_end":56941,"src_start":56538},{"artifact":1,"gen_end":72218,"gen_start":70854,"node":260,"role":"declaration","source":0,"src_end":58083,"src_start":56943},{"artifact":1,"gen_end":72726,"gen_start":72218,"node":261,"role":"declaration","source":0,"src_end":58484,"src_start":58085},{"artifact":1,"gen_end":73916,"gen_start":72726,"node":262,"role":"declaration","source":0,"src_end":59438,"src_start":58486},{"artifact":1,"gen_end":74343,"gen_start":73916,"node":263,"role":"declaration","source":0,"src_end":59772,"src_start":59440},{"artifact":1,"gen_end":75607,"gen_start":74343,"node":264,"role":"declaration","source":0,"src_end":60786,"src_start":59774},{"artifact":1,"gen_end":76111,"gen_start":75607,"node":265,"role":"declaration","source":0,"src_end":61183,"src_start":60788},{"artifact":1,"gen_end":77322,"gen_start":76111,"node":266,"role":"declaration","source":0,"src_end":62128,"src_start":61185},{"artifact":1,"gen_end":77784,"gen_start":77322,"node":267,"role":"declaration","source":0,"src_end":62489,"src_start":62130},{"artifact":1,"gen_end":79678,"gen_start":77784,"node":268,"role":"declaration","source":0,"src_end":64105,"src_start":62491},{"artifact":1,"gen_end":80164,"gen_start":79678,"node":269,"role":"declaration","source":0,"src_end":64484,"src_start":64107},{"artifact":1,"gen_end":82007,"gen_start":80164,"node":270,"role":"declaration","source":0,"src_end":66051,"src_start":64486},{"artifact":1,"gen_end":82494,"gen_start":82007,"node":271,"role":"declaration","source":0,"src_end":66431,"src_start":66053},{"artifact":1,"gen_end":83781,"gen_start":82494,"node":272,"role":"declaration","source":0,"src_end":67476,"src_start":66433},{"artifact":1,"gen_end":84279,"gen_start":83781,"node":273,"role":"declaration","source":0,"src_end":67867,"src_start":67478},{"artifact":1,"gen_end":85564,"gen_start":84279,"node":274,"role":"declaration","source":0,"src_end":68910,"src_start":67869},{"artifact":1,"gen_end":86056,"gen_start":85564,"node":275,"role":"declaration","source":0,"src_end":69295,"src_start":68912},{"artifact":1,"gen_end":87343,"gen_start":86056,"node":276,"role":"declaration","source":0,"src_end":70354,"src_start":69297},{"artifact":1,"gen_end":87857,"gen_start":87343,"node":277,"role":"declaration","source":0,"src_end":70761,"src_start":70356},{"artifact":1,"gen_end":89112,"gen_start":87857,"node":278,"role":"declaration","source":0,"src_end":71762,"src_start":70763},{"artifact":1,"gen_end":89626,"gen_start":89112,"node":279,"role":"declaration","source":0,"src_end":72169,"src_start":71764},{"artifact":1,"gen_end":90665,"gen_start":89626,"node":280,"role":"declaration","source":0,"src_end":72976,"src_start":72171},{"artifact":1,"gen_end":91175,"gen_start":90665,"node":281,"role":"declaration","source":0,"src_end":73379,"src_start":72978},{"artifact":1,"gen_end":92295,"gen_start":91175,"node":282,"role":"declaration","source":0,"src_end":74225,"src_start":73381},{"artifact":1,"gen_end":92790,"gen_start":92295,"node":283,"role":"declaration","source":0,"src_end":74619,"src_start":74227},{"artifact":1,"gen_end":93914,"gen_start":92790,"node":284,"role":"declaration","source":0,"src_end":75469,"src_start":74621},{"artifact":1,"gen_end":94419,"gen_start":93914,"node":285,"role":"declaration","source":0,"src_end":75869,"src_start":75471},{"artifact":1,"gen_end":95540,"gen_start":94419,"node":286,"role":"declaration","source":0,"src_end":76716,"src_start":75871},{"artifact":1,"gen_end":96037,"gen_start":95540,"node":287,"role":"declaration","source":0,"src_end":77112,"src_start":76718},{"artifact":1,"gen_end":97329,"gen_start":96037,"node":288,"role":"declaration","source":0,"src_end":78162,"src_start":77114},{"artifact":1,"gen_end":97757,"gen_start":97329,"node":289,"role":"declaration","source":0,"src_end":78499,"src_start":78164},{"artifact":1,"gen_end":98955,"gen_start":97757,"node":290,"role":"declaration","source":0,"src_end":79443,"src_start":78501},{"artifact":1,"gen_end":99473,"gen_start":98955,"node":291,"role":"declaration","source":0,"src_end":79860,"src_start":79445},{"artifact":1,"gen_end":99856,"gen_start":99473,"node":292,"role":"declaration","source":0,"src_end":80166,"src_start":79862},{"artifact":1,"gen_end":101054,"gen_start":99856,"node":293,"role":"declaration","source":0,"src_end":81114,"src_start":80168},{"artifact":1,"gen_end":101560,"gen_start":101054,"node":294,"role":"declaration","source":0,"src_end":81519,"src_start":81116},{"artifact":1,"gen_end":101930,"gen_start":101560,"node":295,"role":"declaration","source":0,"src_end":81812,"src_start":81521},{"artifact":1,"gen_end":103174,"gen_start":101930,"node":296,"role":"declaration","source":0,"src_end":82794,"src_start":81814},{"artifact":1,"gen_end":103680,"gen_start":103174,"node":297,"role":"declaration","source":0,"src_end":83199,"src_start":82796},{"artifact":1,"gen_end":104051,"gen_start":103680,"node":298,"role":"declaration","source":0,"src_end":83493,"src_start":83201},{"artifact":1,"gen_end":105147,"gen_start":104051,"node":299,"role":"declaration","source":0,"src_end":84351,"src_start":83495},{"artifact":1,"gen_end":105608,"gen_start":105147,"node":300,"role":"declaration","source":0,"src_end":84711,"src_start":84353},{"artifact":1,"gen_end":105973,"gen_start":105608,"node":301,"role":"declaration","source":0,"src_end":84999,"src_start":84713},{"artifact":1,"gen_end":106983,"gen_start":105973,"node":302,"role":"declaration","source":0,"src_end":85787,"src_start":85001},{"artifact":1,"gen_end":107489,"gen_start":106983,"node":303,"role":"declaration","source":0,"src_end":86192,"src_start":85789},{"artifact":1,"gen_end":108490,"gen_start":107489,"node":304,"role":"declaration","source":0,"src_end":86971,"src_start":86194},{"artifact":1,"gen_end":108947,"gen_start":108490,"node":305,"role":"declaration","source":0,"src_end":87331,"src_start":86973},{"artifact":1,"gen_end":110146,"gen_start":108947,"node":306,"role":"declaration","source":0,"src_end":88276,"src_start":87333},{"artifact":1,"gen_end":110611,"gen_start":110146,"node":307,"role":"declaration","source":0,"src_end":88640,"src_start":88278},{"artifact":1,"gen_end":110981,"gen_start":110611,"node":308,"role":"declaration","source":0,"src_end":88933,"src_start":88642},{"artifact":1,"gen_end":112193,"gen_start":110981,"node":309,"role":"declaration","source":0,"src_end":89891,"src_start":88935},{"artifact":1,"gen_end":112700,"gen_start":112193,"node":310,"role":"declaration","source":0,"src_end":90297,"src_start":89893},{"artifact":1,"gen_end":113072,"gen_start":112700,"node":311,"role":"declaration","source":0,"src_end":90592,"src_start":90299},{"artifact":1,"gen_end":114274,"gen_start":113072,"node":312,"role":"declaration","source":0,"src_end":91540,"src_start":90594},{"artifact":1,"gen_end":114734,"gen_start":114274,"node":313,"role":"declaration","source":0,"src_end":91899,"src_start":91542},{"artifact":1,"gen_end":115099,"gen_start":114734,"node":314,"role":"declaration","source":0,"src_end":92187,"src_start":91901},{"artifact":1,"gen_end":115801,"gen_start":115099,"node":315,"role":"declaration","source":0,"src_end":92691,"src_start":92189},{"artifact":1,"gen_end":116278,"gen_start":115801,"node":316,"role":"declaration","source":0,"src_end":93069,"src_start":92693},{"artifact":1,"gen_end":117080,"gen_start":116278,"node":317,"role":"declaration","source":0,"src_end":93661,"src_start":93071},{"artifact":1,"gen_end":117563,"gen_start":117080,"node":318,"role":"declaration","source":0,"src_end":94045,"src_start":93663},{"artifact":1,"gen_end":117934,"gen_start":117563,"node":319,"role":"declaration","source":0,"src_end":94339,"src_start":94047},{"artifact":1,"gen_end":119223,"gen_start":117934,"node":320,"role":"declaration","source":0,"src_end":95386,"src_start":94341},{"artifact":1,"gen_end":119640,"gen_start":119223,"node":321,"role":"declaration","source":0,"src_end":95712,"src_start":95388},{"artifact":1,"gen_end":120929,"gen_start":119640,"node":322,"role":"declaration","source":0,"src_end":96761,"src_start":95714},{"artifact":1,"gen_end":121357,"gen_start":120929,"node":323,"role":"declaration","source":0,"src_end":97098,"src_start":96763},{"artifact":1,"gen_end":122403,"gen_start":121357,"node":324,"role":"declaration","source":0,"src_end":97914,"src_start":97100},{"artifact":1,"gen_end":122843,"gen_start":122403,"node":325,"role":"declaration","source":0,"src_end":98263,"src_start":97916},{"artifact":1,"gen_end":124132,"gen_start":122843,"node":326,"role":"declaration","source":0,"src_end":99310,"src_start":98265},{"artifact":1,"gen_end":124548,"gen_start":124132,"node":327,"role":"declaration","source":0,"src_end":99635,"src_start":99312},{"artifact":1,"gen_end":125839,"gen_start":124548,"node":328,"role":"declaration","source":0,"src_end":100684,"src_start":99637},{"artifact":1,"gen_end":126264,"gen_start":125839,"node":329,"role":"declaration","source":0,"src_end":101018,"src_start":100686},{"artifact":1,"gen_end":126608,"gen_start":126264,"node":330,"role":"declaration","source":0,"src_end":101279,"src_start":101020},{"artifact":1,"gen_end":126954,"gen_start":126608,"node":331,"role":"declaration","source":0,"src_end":101542,"src_start":101281},{"artifact":1,"gen_end":127299,"gen_start":126954,"node":332,"role":"declaration","source":0,"src_end":101804,"src_start":101544},{"artifact":1,"gen_end":127645,"gen_start":127299,"node":333,"role":"declaration","source":0,"src_end":102067,"src_start":101806},{"artifact":1,"gen_end":127989,"gen_start":127645,"node":334,"role":"declaration","source":0,"src_end":102328,"src_start":102069},{"artifact":1,"gen_end":128334,"gen_start":127989,"node":335,"role":"declaration","source":0,"src_end":102590,"src_start":102330},{"artifact":1,"gen_end":128678,"gen_start":128334,"node":336,"role":"declaration","source":0,"src_end":102851,"src_start":102592},{"artifact":1,"gen_end":129024,"gen_start":128678,"node":337,"role":"declaration","source":0,"src_end":103114,"src_start":102853},{"artifact":1,"gen_end":129368,"gen_start":129024,"node":338,"role":"declaration","source":0,"src_end":103375,"src_start":103116},{"artifact":1,"gen_end":129713,"gen_start":129368,"node":339,"role":"declaration","source":0,"src_end":103637,"src_start":103377},{"artifact":1,"gen_end":130043,"gen_start":129713,"node":340,"role":"declaration","source":0,"src_end":103884,"src_start":103639},{"artifact":1,"gen_end":130375,"gen_start":130043,"node":341,"role":"declaration","source":0,"src_end":104133,"src_start":103886},{"artifact":1,"gen_end":130705,"gen_start":130375,"node":342,"role":"declaration","source":0,"src_end":104380,"src_start":104135},{"artifact":1,"gen_end":131036,"gen_start":130705,"node":343,"role":"declaration","source":0,"src_end":104628,"src_start":104382},{"artifact":1,"gen_end":131358,"gen_start":131036,"node":344,"role":"declaration","source":0,"src_end":104867,"src_start":104630},{"artifact":1,"gen_end":131682,"gen_start":131358,"node":345,"role":"declaration","source":0,"src_end":105108,"src_start":104869},{"artifact":1,"gen_end":132004,"gen_start":131682,"node":346,"role":"declaration","source":0,"src_end":105347,"src_start":105110},{"artifact":1,"gen_end":132327,"gen_start":132004,"node":347,"role":"declaration","source":0,"src_end":105587,"src_start":105349},{"artifact":1,"gen_end":132342,"gen_start":132327,"node":174,"role":"declaration","source":0,"src_end":105623,"src_start":0}],"module":"GnafCertificates","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"},{"id":40,"kind":"semantic-declaration"},{"id":41,"kind":"semantic-declaration"},{"id":42,"kind":"semantic-declaration"},{"id":43,"kind":"semantic-declaration"},{"id":44,"kind":"semantic-declaration"},{"id":45,"kind":"semantic-declaration"},{"id":46,"kind":"semantic-declaration"},{"id":47,"kind":"semantic-declaration"},{"id":48,"kind":"semantic-declaration"},{"id":49,"kind":"semantic-declaration"},{"id":50,"kind":"semantic-declaration"},{"id":51,"kind":"semantic-declaration"},{"id":52,"kind":"semantic-declaration"},{"id":53,"kind":"semantic-declaration"},{"id":54,"kind":"semantic-declaration"},{"id":55,"kind":"semantic-declaration"},{"id":56,"kind":"semantic-declaration"},{"id":57,"kind":"semantic-declaration"},{"id":58,"kind":"semantic-declaration"},{"id":59,"kind":"semantic-declaration"},{"id":60,"kind":"semantic-declaration"},{"id":61,"kind":"semantic-declaration"},{"id":62,"kind":"semantic-declaration"},{"id":63,"kind":"semantic-declaration"},{"id":64,"kind":"semantic-declaration"},{"id":65,"kind":"semantic-declaration"},{"id":66,"kind":"semantic-declaration"},{"id":67,"kind":"semantic-declaration"},{"id":68,"kind":"semantic-declaration"},{"id":69,"kind":"semantic-declaration"},{"id":70,"kind":"semantic-declaration"},{"id":71,"kind":"semantic-declaration"},{"id":72,"kind":"semantic-declaration"},{"id":73,"kind":"semantic-declaration"},{"id":74,"kind":"semantic-declaration"},{"id":75,"kind":"semantic-declaration"},{"id":76,"kind":"semantic-declaration"},{"id":77,"kind":"semantic-declaration"},{"id":78,"kind":"semantic-declaration"},{"id":79,"kind":"semantic-declaration"},{"id":80,"kind":"semantic-declaration"},{"id":81,"kind":"semantic-declaration"},{"id":82,"kind":"semantic-declaration"},{"id":83,"kind":"semantic-declaration"},{"id":84,"kind":"semantic-declaration"},{"id":85,"kind":"semantic-declaration"},{"id":86,"kind":"semantic-declaration"},{"id":87,"kind":"semantic-declaration"},{"id":88,"kind":"semantic-declaration"},{"id":89,"kind":"semantic-declaration"},{"id":90,"kind":"semantic-declaration"},{"id":91,"kind":"semantic-declaration"},{"id":92,"kind":"semantic-declaration"},{"id":93,"kind":"semantic-declaration"},{"id":94,"kind":"semantic-declaration"},{"id":95,"kind":"semantic-declaration"},{"id":96,"kind":"semantic-declaration"},{"id":97,"kind":"semantic-declaration"},{"id":98,"kind":"semantic-declaration"},{"id":99,"kind":"semantic-declaration"},{"id":100,"kind":"semantic-declaration"},{"id":101,"kind":"semantic-declaration"},{"id":102,"kind":"semantic-declaration"},{"id":103,"kind":"semantic-declaration"},{"id":104,"kind":"semantic-declaration"},{"id":105,"kind":"semantic-declaration"},{"id":106,"kind":"semantic-declaration"},{"id":107,"kind":"semantic-declaration"},{"id":108,"kind":"semantic-declaration"},{"id":109,"kind":"semantic-declaration"},{"id":110,"kind":"semantic-declaration"},{"id":111,"kind":"semantic-declaration"},{"id":112,"kind":"semantic-declaration"},{"id":113,"kind":"semantic-declaration"},{"id":114,"kind":"semantic-declaration"},{"id":115,"kind":"semantic-declaration"},{"id":116,"kind":"semantic-declaration"},{"id":117,"kind":"semantic-declaration"},{"id":118,"kind":"semantic-declaration"},{"id":119,"kind":"semantic-declaration"},{"id":120,"kind":"semantic-declaration"},{"id":121,"kind":"semantic-declaration"},{"id":122,"kind":"semantic-declaration"},{"id":123,"kind":"semantic-declaration"},{"id":124,"kind":"semantic-declaration"},{"id":125,"kind":"semantic-declaration"},{"id":126,"kind":"semantic-declaration"},{"id":127,"kind":"semantic-declaration"},{"id":128,"kind":"semantic-declaration"},{"id":129,"kind":"semantic-declaration"},{"id":130,"kind":"semantic-declaration"},{"id":131,"kind":"semantic-declaration"},{"id":132,"kind":"semantic-declaration"},{"id":133,"kind":"semantic-declaration"},{"id":134,"kind":"semantic-declaration"},{"id":135,"kind":"semantic-declaration"},{"id":136,"kind":"semantic-declaration"},{"id":137,"kind":"semantic-declaration"},{"id":138,"kind":"semantic-declaration"},{"id":139,"kind":"semantic-declaration"},{"id":140,"kind":"semantic-declaration"},{"id":141,"kind":"semantic-declaration"},{"id":142,"kind":"semantic-declaration"},{"id":143,"kind":"semantic-declaration"},{"id":144,"kind":"semantic-declaration"},{"id":145,"kind":"semantic-declaration"},{"id":146,"kind":"semantic-declaration"},{"id":147,"kind":"semantic-declaration"},{"id":148,"kind":"semantic-declaration"},{"id":149,"kind":"semantic-declaration"},{"id":150,"kind":"semantic-declaration"},{"id":151,"kind":"semantic-declaration"},{"id":152,"kind":"semantic-declaration"},{"id":153,"kind":"semantic-declaration"},{"id":154,"kind":"semantic-declaration"},{"id":155,"kind":"semantic-declaration"},{"id":156,"kind":"semantic-declaration"},{"id":157,"kind":"semantic-declaration"},{"id":158,"kind":"semantic-declaration"},{"id":159,"kind":"semantic-declaration"},{"id":160,"kind":"semantic-declaration"},{"id":161,"kind":"semantic-declaration"},{"id":162,"kind":"semantic-declaration"},{"id":163,"kind":"semantic-declaration"},{"id":164,"kind":"semantic-declaration"},{"id":165,"kind":"semantic-declaration"},{"id":166,"kind":"semantic-declaration"},{"id":167,"kind":"semantic-declaration"},{"id":168,"kind":"semantic-declaration"},{"id":169,"kind":"semantic-declaration"},{"id":170,"kind":"semantic-declaration"},{"id":171,"kind":"semantic-declaration"},{"id":172,"kind":"semantic-declaration"},{"id":173,"kind":"semantic-declaration"},{"id":174,"kind":"semantic-latex-module"},{"id":175,"kind":"semantic-declaration"},{"id":176,"kind":"semantic-declaration"},{"id":177,"kind":"semantic-declaration"},{"id":178,"kind":"semantic-declaration"},{"id":179,"kind":"semantic-declaration"},{"id":180,"kind":"semantic-declaration"},{"id":181,"kind":"semantic-declaration"},{"id":182,"kind":"semantic-declaration"},{"id":183,"kind":"semantic-declaration"},{"id":184,"kind":"semantic-declaration"},{"id":185,"kind":"semantic-declaration"},{"id":186,"kind":"semantic-declaration"},{"id":187,"kind":"semantic-declaration"},{"id":188,"kind":"semantic-declaration"},{"id":189,"kind":"semantic-declaration"},{"id":190,"kind":"semantic-declaration"},{"id":191,"kind":"semantic-declaration"},{"id":192,"kind":"semantic-declaration"},{"id":193,"kind":"semantic-declaration"},{"id":194,"kind":"semantic-declaration"},{"id":195,"kind":"semantic-declaration"},{"id":196,"kind":"semantic-declaration"},{"id":197,"kind":"semantic-declaration"},{"id":198,"kind":"semantic-declaration"},{"id":199,"kind":"semantic-declaration"},{"id":200,"kind":"semantic-declaration"},{"id":201,"kind":"semantic-declaration"},{"id":202,"kind":"semantic-declaration"},{"id":203,"kind":"semantic-declaration"},{"id":204,"kind":"semantic-declaration"},{"id":205,"kind":"semantic-declaration"},{"id":206,"kind":"semantic-declaration"},{"id":207,"kind":"semantic-declaration"},{"id":208,"kind":"semantic-declaration"},{"id":209,"kind":"semantic-declaration"},{"id":210,"kind":"semantic-declaration"},{"id":211,"kind":"semantic-declaration"},{"id":212,"kind":"semantic-declaration"},{"id":213,"kind":"semantic-declaration"},{"id":214,"kind":"semantic-declaration"},{"id":215,"kind":"semantic-declaration"},{"id":216,"kind":"semantic-declaration"},{"id":217,"kind":"semantic-declaration"},{"id":218,"kind":"semantic-declaration"},{"id":219,"kind":"semantic-declaration"},{"id":220,"kind":"semantic-declaration"},{"id":221,"kind":"semantic-declaration"},{"id":222,"kind":"semantic-declaration"},{"id":223,"kind":"semantic-declaration"},{"id":224,"kind":"semantic-declaration"},{"id":225,"kind":"semantic-declaration"},{"id":226,"kind":"semantic-declaration"},{"id":227,"kind":"semantic-declaration"},{"id":228,"kind":"semantic-declaration"},{"id":229,"kind":"semantic-declaration"},{"id":230,"kind":"semantic-declaration"},{"id":231,"kind":"semantic-declaration"},{"id":232,"kind":"semantic-declaration"},{"id":233,"kind":"semantic-declaration"},{"id":234,"kind":"semantic-declaration"},{"id":235,"kind":"semantic-declaration"},{"id":236,"kind":"semantic-declaration"},{"id":237,"kind":"semantic-declaration"},{"id":238,"kind":"semantic-declaration"},{"id":239,"kind":"semantic-declaration"},{"id":240,"kind":"semantic-declaration"},{"id":241,"kind":"semantic-declaration"},{"id":242,"kind":"semantic-declaration"},{"id":243,"kind":"semantic-declaration"},{"id":244,"kind":"semantic-declaration"},{"id":245,"kind":"semantic-declaration"},{"id":246,"kind":"semantic-declaration"},{"id":247,"kind":"semantic-declaration"},{"id":248,"kind":"semantic-declaration"},{"id":249,"kind":"semantic-declaration"},{"id":250,"kind":"semantic-declaration"},{"id":251,"kind":"semantic-declaration"},{"id":252,"kind":"semantic-declaration"},{"id":253,"kind":"semantic-declaration"},{"id":254,"kind":"semantic-declaration"},{"id":255,"kind":"semantic-declaration"},{"id":256,"kind":"semantic-declaration"},{"id":257,"kind":"semantic-declaration"},{"id":258,"kind":"semantic-declaration"},{"id":259,"kind":"semantic-declaration"},{"id":260,"kind":"semantic-declaration"},{"id":261,"kind":"semantic-declaration"},{"id":262,"kind":"semantic-declaration"},{"id":263,"kind":"semantic-declaration"},{"id":264,"kind":"semantic-declaration"},{"id":265,"kind":"semantic-declaration"},{"id":266,"kind":"semantic-declaration"},{"id":267,"kind":"semantic-declaration"},{"id":268,"kind":"semantic-declaration"},{"id":269,"kind":"semantic-declaration"},{"id":270,"kind":"semantic-declaration"},{"id":271,"kind":"semantic-declaration"},{"id":272,"kind":"semantic-declaration"},{"id":273,"kind":"semantic-declaration"},{"id":274,"kind":"semantic-declaration"},{"id":275,"kind":"semantic-declaration"},{"id":276,"kind":"semantic-declaration"},{"id":277,"kind":"semantic-declaration"},{"id":278,"kind":"semantic-declaration"},{"id":279,"kind":"semantic-declaration"},{"id":280,"kind":"semantic-declaration"},{"id":281,"kind":"semantic-declaration"},{"id":282,"kind":"semantic-declaration"},{"id":283,"kind":"semantic-declaration"},{"id":284,"kind":"semantic-declaration"},{"id":285,"kind":"semantic-declaration"},{"id":286,"kind":"semantic-declaration"},{"id":287,"kind":"semantic-declaration"},{"id":288,"kind":"semantic-declaration"},{"id":289,"kind":"semantic-declaration"},{"id":290,"kind":"semantic-declaration"},{"id":291,"kind":"semantic-declaration"},{"id":292,"kind":"semantic-declaration"},{"id":293,"kind":"semantic-declaration"},{"id":294,"kind":"semantic-declaration"},{"id":295,"kind":"semantic-declaration"},{"id":296,"kind":"semantic-declaration"},{"id":297,"kind":"semantic-declaration"},{"id":298,"kind":"semantic-declaration"},{"id":299,"kind":"semantic-declaration"},{"id":300,"kind":"semantic-declaration"},{"id":301,"kind":"semantic-declaration"},{"id":302,"kind":"semantic-declaration"},{"id":303,"kind":"semantic-declaration"},{"id":304,"kind":"semantic-declaration"},{"id":305,"kind":"semantic-declaration"},{"id":306,"kind":"semantic-declaration"},{"id":307,"kind":"semantic-declaration"},{"id":308,"kind":"semantic-declaration"},{"id":309,"kind":"semantic-declaration"},{"id":310,"kind":"semantic-declaration"},{"id":311,"kind":"semantic-declaration"},{"id":312,"kind":"semantic-declaration"},{"id":313,"kind":"semantic-declaration"},{"id":314,"kind":"semantic-declaration"},{"id":315,"kind":"semantic-declaration"},{"id":316,"kind":"semantic-declaration"},{"id":317,"kind":"semantic-declaration"},{"id":318,"kind":"semantic-declaration"},{"id":319,"kind":"semantic-declaration"},{"id":320,"kind":"semantic-declaration"},{"id":321,"kind":"semantic-declaration"},{"id":322,"kind":"semantic-declaration"},{"id":323,"kind":"semantic-declaration"},{"id":324,"kind":"semantic-declaration"},{"id":325,"kind":"semantic-declaration"},{"id":326,"kind":"semantic-declaration"},{"id":327,"kind":"semantic-declaration"},{"id":328,"kind":"semantic-declaration"},{"id":329,"kind":"semantic-declaration"},{"id":330,"kind":"semantic-declaration"},{"id":331,"kind":"semantic-declaration"},{"id":332,"kind":"semantic-declaration"},{"id":333,"kind":"semantic-declaration"},{"id":334,"kind":"semantic-declaration"},{"id":335,"kind":"semantic-declaration"},{"id":336,"kind":"semantic-declaration"},{"id":337,"kind":"semantic-declaration"},{"id":338,"kind":"semantic-declaration"},{"id":339,"kind":"semantic-declaration"},{"id":340,"kind":"semantic-declaration"},{"id":341,"kind":"semantic-declaration"},{"id":342,"kind":"semantic-declaration"},{"id":343,"kind":"semantic-declaration"},{"id":344,"kind":"semantic-declaration"},{"id":345,"kind":"semantic-declaration"},{"id":346,"kind":"semantic-declaration"},{"id":347,"kind":"semantic-declaration"}],"semantic_id":"e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb","source_id":"965efd311d3549a7c17dd823b4418cfee906beecd273f4bfcafb371c36d9ce99","sources":[{"id":0,"kind":"file","path":"src/GnafCertificates.lex.tex","sha256":"498dafa5093f56f0a05bbddb58875aebc0769325386f2ca611f3a101d9368f64"}],"spec":"lexlean/source-map/1"} diff --git a/compiler/expected/build/maps/LexLeanTarget/GnafFixtures.map.json b/compiler/expected/build/maps/LexLeanTarget/GnafFixtures.map.json index e6da3b682..4e4de95e2 100644 --- a/compiler/expected/build/maps/LexLeanTarget/GnafFixtures.map.json +++ b/compiler/expected/build/maps/LexLeanTarget/GnafFixtures.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/LexLeanTarget/GnafFixtures.lean"},{"id":1,"kind":"tex","path":"modules/LexLeanTarget/GnafFixtures.tex"}],"mappings":[{"artifact":0,"gen_end":327,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":680712,"src_start":0},{"artifact":0,"gen_end":10109,"gen_start":327,"node":1,"role":"declaration","source":0,"src_end":7817,"src_start":200},{"artifact":0,"gen_end":10564,"gen_start":10109,"node":2,"role":"declaration","source":0,"src_end":8234,"src_start":7819},{"artifact":0,"gen_end":11066,"gen_start":10564,"node":3,"role":"declaration","source":0,"src_end":8746,"src_start":8236},{"artifact":0,"gen_end":11237,"gen_start":11066,"node":4,"role":"declaration","source":0,"src_end":8987,"src_start":8748},{"artifact":0,"gen_end":21021,"gen_start":11237,"node":5,"role":"declaration","source":0,"src_end":16608,"src_start":8989},{"artifact":0,"gen_end":21482,"gen_start":21021,"node":6,"role":"declaration","source":0,"src_end":17031,"src_start":16610},{"artifact":0,"gen_end":21990,"gen_start":21482,"node":7,"role":"declaration","source":0,"src_end":17549,"src_start":17033},{"artifact":0,"gen_end":22167,"gen_start":21990,"node":8,"role":"declaration","source":0,"src_end":17796,"src_start":17551},{"artifact":0,"gen_end":35192,"gen_start":22167,"node":9,"role":"declaration","source":0,"src_end":27873,"src_start":17798},{"artifact":0,"gen_end":35950,"gen_start":35192,"node":10,"role":"declaration","source":0,"src_end":28537,"src_start":27875},{"artifact":0,"gen_end":36780,"gen_start":35950,"node":11,"role":"declaration","source":0,"src_end":29329,"src_start":28539},{"artifact":0,"gen_end":36948,"gen_start":36780,"node":12,"role":"declaration","source":0,"src_end":29569,"src_start":29331},{"artifact":0,"gen_end":57064,"gen_start":36948,"node":13,"role":"declaration","source":0,"src_end":45993,"src_start":29571},{"artifact":0,"gen_end":57529,"gen_start":57064,"node":14,"role":"declaration","source":0,"src_end":46420,"src_start":45995},{"artifact":0,"gen_end":58016,"gen_start":57529,"node":15,"role":"declaration","source":0,"src_end":46929,"src_start":46422},{"artifact":0,"gen_end":58168,"gen_start":58016,"node":16,"role":"declaration","source":0,"src_end":47161,"src_start":46931},{"artifact":0,"gen_end":68390,"gen_start":58168,"node":17,"role":"declaration","source":0,"src_end":55137,"src_start":47163},{"artifact":0,"gen_end":68723,"gen_start":68390,"node":18,"role":"declaration","source":0,"src_end":55460,"src_start":55139},{"artifact":0,"gen_end":69119,"gen_start":68723,"node":19,"role":"declaration","source":0,"src_end":55882,"src_start":55462},{"artifact":0,"gen_end":69297,"gen_start":69119,"node":20,"role":"declaration","source":0,"src_end":56130,"src_start":55884},{"artifact":0,"gen_end":79087,"gen_start":69297,"node":21,"role":"declaration","source":0,"src_end":63757,"src_start":56132},{"artifact":0,"gen_end":79554,"gen_start":79087,"node":22,"role":"declaration","source":0,"src_end":64186,"src_start":63759},{"artifact":0,"gen_end":80068,"gen_start":79554,"node":23,"role":"declaration","source":0,"src_end":64710,"src_start":64188},{"artifact":0,"gen_end":80254,"gen_start":80068,"node":24,"role":"declaration","source":0,"src_end":64970,"src_start":64712},{"artifact":0,"gen_end":100375,"gen_start":80254,"node":25,"role":"declaration","source":0,"src_end":81399,"src_start":64972},{"artifact":0,"gen_end":100846,"gen_start":100375,"node":26,"role":"declaration","source":0,"src_end":81832,"src_start":81401},{"artifact":0,"gen_end":101339,"gen_start":100846,"node":27,"role":"declaration","source":0,"src_end":82347,"src_start":81834},{"artifact":0,"gen_end":101497,"gen_start":101339,"node":28,"role":"declaration","source":0,"src_end":82585,"src_start":82349},{"artifact":0,"gen_end":111285,"gen_start":101497,"node":29,"role":"declaration","source":0,"src_end":90210,"src_start":82587},{"artifact":0,"gen_end":111754,"gen_start":111285,"node":30,"role":"declaration","source":0,"src_end":90641,"src_start":90212},{"artifact":0,"gen_end":112270,"gen_start":111754,"node":31,"role":"declaration","source":0,"src_end":91167,"src_start":90643},{"artifact":0,"gen_end":112458,"gen_start":112270,"node":32,"role":"declaration","source":0,"src_end":91429,"src_start":91169},{"artifact":0,"gen_end":125487,"gen_start":112458,"node":33,"role":"declaration","source":0,"src_end":101510,"src_start":91431},{"artifact":0,"gen_end":126249,"gen_start":125487,"node":34,"role":"declaration","source":0,"src_end":102178,"src_start":101512},{"artifact":0,"gen_end":127083,"gen_start":126249,"node":35,"role":"declaration","source":0,"src_end":102974,"src_start":102180},{"artifact":0,"gen_end":127258,"gen_start":127083,"node":36,"role":"declaration","source":0,"src_end":103225,"src_start":102976},{"artifact":0,"gen_end":135083,"gen_start":127258,"node":37,"role":"declaration","source":0,"src_end":109365,"src_start":103227},{"artifact":0,"gen_end":135558,"gen_start":135083,"node":38,"role":"declaration","source":0,"src_end":109802,"src_start":109367},{"artifact":0,"gen_end":136059,"gen_start":135558,"node":39,"role":"declaration","source":0,"src_end":110325,"src_start":109804},{"artifact":0,"gen_end":136250,"gen_start":136059,"node":40,"role":"declaration","source":0,"src_end":110586,"src_start":110327},{"artifact":0,"gen_end":142223,"gen_start":136250,"node":41,"role":"declaration","source":0,"src_end":115319,"src_start":110588},{"artifact":0,"gen_end":142427,"gen_start":142223,"node":42,"role":"declaration","source":0,"src_end":115531,"src_start":115321},{"artifact":0,"gen_end":142650,"gen_start":142427,"node":43,"role":"declaration","source":0,"src_end":115808,"src_start":115533},{"artifact":0,"gen_end":142800,"gen_start":142650,"node":44,"role":"declaration","source":0,"src_end":116038,"src_start":115810},{"artifact":0,"gen_end":152176,"gen_start":142800,"node":45,"role":"declaration","source":0,"src_end":123350,"src_start":116040},{"artifact":0,"gen_end":152649,"gen_start":152176,"node":46,"role":"declaration","source":0,"src_end":123785,"src_start":123352},{"artifact":0,"gen_end":153166,"gen_start":152649,"node":47,"role":"declaration","source":0,"src_end":124312,"src_start":123787},{"artifact":0,"gen_end":153354,"gen_start":153166,"node":48,"role":"declaration","source":0,"src_end":124570,"src_start":124314},{"artifact":0,"gen_end":162498,"gen_start":153354,"node":49,"role":"declaration","source":0,"src_end":131650,"src_start":124572},{"artifact":0,"gen_end":162973,"gen_start":162498,"node":50,"role":"declaration","source":0,"src_end":132087,"src_start":131652},{"artifact":0,"gen_end":163492,"gen_start":162973,"node":51,"role":"declaration","source":0,"src_end":132616,"src_start":132089},{"artifact":0,"gen_end":163682,"gen_start":163492,"node":52,"role":"declaration","source":0,"src_end":132876,"src_start":132618},{"artifact":0,"gen_end":183799,"gen_start":163682,"node":53,"role":"declaration","source":0,"src_end":149301,"src_start":132878},{"artifact":0,"gen_end":184268,"gen_start":183799,"node":54,"role":"declaration","source":0,"src_end":149732,"src_start":149303},{"artifact":0,"gen_end":184759,"gen_start":184268,"node":55,"role":"declaration","source":0,"src_end":150245,"src_start":149734},{"artifact":0,"gen_end":184915,"gen_start":184759,"node":56,"role":"declaration","source":0,"src_end":150481,"src_start":150247},{"artifact":0,"gen_end":197940,"gen_start":184915,"node":57,"role":"declaration","source":0,"src_end":160558,"src_start":150483},{"artifact":0,"gen_end":198700,"gen_start":197940,"node":58,"role":"declaration","source":0,"src_end":161224,"src_start":160560},{"artifact":0,"gen_end":199532,"gen_start":198700,"node":59,"role":"declaration","source":0,"src_end":162018,"src_start":161226},{"artifact":0,"gen_end":199702,"gen_start":199532,"node":60,"role":"declaration","source":0,"src_end":162260,"src_start":162020},{"artifact":0,"gen_end":209678,"gen_start":199702,"node":61,"role":"declaration","source":0,"src_end":170047,"src_start":162262},{"artifact":0,"gen_end":210141,"gen_start":209678,"node":62,"role":"declaration","source":0,"src_end":170472,"src_start":170049},{"artifact":0,"gen_end":210651,"gen_start":210141,"node":63,"role":"declaration","source":0,"src_end":170992,"src_start":170474},{"artifact":0,"gen_end":210830,"gen_start":210651,"node":64,"role":"declaration","source":0,"src_end":171241,"src_start":170994},{"artifact":0,"gen_end":220977,"gen_start":210830,"node":65,"role":"declaration","source":0,"src_end":179187,"src_start":171243},{"artifact":0,"gen_end":221446,"gen_start":220977,"node":66,"role":"declaration","source":0,"src_end":179618,"src_start":179189},{"artifact":0,"gen_end":221962,"gen_start":221446,"node":67,"role":"declaration","source":0,"src_end":180144,"src_start":179620},{"artifact":0,"gen_end":222147,"gen_start":221962,"node":68,"role":"declaration","source":0,"src_end":180399,"src_start":180146},{"artifact":0,"gen_end":232296,"gen_start":222147,"node":69,"role":"declaration","source":0,"src_end":188347,"src_start":180401},{"artifact":0,"gen_end":232767,"gen_start":232296,"node":70,"role":"declaration","source":0,"src_end":188780,"src_start":188349},{"artifact":0,"gen_end":233285,"gen_start":232767,"node":71,"role":"declaration","source":0,"src_end":189308,"src_start":188782},{"artifact":0,"gen_end":233472,"gen_start":233285,"node":72,"role":"declaration","source":0,"src_end":189565,"src_start":189310},{"artifact":0,"gen_end":304190,"gen_start":233472,"node":73,"role":"declaration","source":0,"src_end":244998,"src_start":189567},{"artifact":0,"gen_end":304474,"gen_start":304190,"node":74,"role":"declaration","source":0,"src_end":245278,"src_start":245000},{"artifact":0,"gen_end":304816,"gen_start":304474,"node":75,"role":"declaration","source":0,"src_end":245654,"src_start":245280},{"artifact":0,"gen_end":304990,"gen_start":304816,"node":76,"role":"declaration","source":0,"src_end":245898,"src_start":245656},{"artifact":0,"gen_end":375712,"gen_start":304990,"node":77,"role":"declaration","source":0,"src_end":301335,"src_start":245900},{"artifact":0,"gen_end":376000,"gen_start":375712,"node":78,"role":"declaration","source":0,"src_end":301619,"src_start":301337},{"artifact":0,"gen_end":376346,"gen_start":376000,"node":79,"role":"declaration","source":0,"src_end":301999,"src_start":301621},{"artifact":0,"gen_end":376519,"gen_start":376346,"node":80,"role":"declaration","source":0,"src_end":302244,"src_start":302001},{"artifact":0,"gen_end":386305,"gen_start":376519,"node":81,"role":"declaration","source":0,"src_end":309867,"src_start":302246},{"artifact":0,"gen_end":386772,"gen_start":386305,"node":82,"role":"declaration","source":0,"src_end":310296,"src_start":309869},{"artifact":0,"gen_end":386970,"gen_start":386772,"node":83,"role":"declaration","source":0,"src_end":310566,"src_start":310298},{"artifact":0,"gen_end":391377,"gen_start":386970,"node":84,"role":"declaration","source":0,"src_end":314109,"src_start":310568},{"artifact":0,"gen_end":391542,"gen_start":391377,"node":85,"role":"declaration","source":0,"src_end":314288,"src_start":314111},{"artifact":0,"gen_end":391740,"gen_start":391542,"node":86,"role":"declaration","source":0,"src_end":314558,"src_start":314290},{"artifact":0,"gen_end":401534,"gen_start":391740,"node":87,"role":"declaration","source":0,"src_end":322189,"src_start":314560},{"artifact":0,"gen_end":402013,"gen_start":401534,"node":88,"role":"declaration","source":0,"src_end":322630,"src_start":322191},{"artifact":0,"gen_end":402223,"gen_start":402013,"node":89,"role":"declaration","source":0,"src_end":322912,"src_start":322632},{"artifact":0,"gen_end":412143,"gen_start":402223,"node":90,"role":"declaration","source":0,"src_end":330649,"src_start":322914},{"artifact":0,"gen_end":412608,"gen_start":412143,"node":91,"role":"declaration","source":0,"src_end":331076,"src_start":330651},{"artifact":0,"gen_end":412854,"gen_start":412608,"node":92,"role":"declaration","source":0,"src_end":331386,"src_start":331078},{"artifact":0,"gen_end":422654,"gen_start":412854,"node":93,"role":"declaration","source":0,"src_end":339021,"src_start":331388},{"artifact":0,"gen_end":423133,"gen_start":422654,"node":94,"role":"declaration","source":0,"src_end":339462,"src_start":339023},{"artifact":0,"gen_end":423380,"gen_start":423133,"node":95,"role":"declaration","source":0,"src_end":339773,"src_start":339464},{"artifact":0,"gen_end":427829,"gen_start":423380,"node":96,"role":"declaration","source":0,"src_end":343352,"src_start":339775},{"artifact":0,"gen_end":428002,"gen_start":427829,"node":97,"role":"declaration","source":0,"src_end":343539,"src_start":343354},{"artifact":0,"gen_end":428212,"gen_start":428002,"node":98,"role":"declaration","source":0,"src_end":343821,"src_start":343541},{"artifact":0,"gen_end":438129,"gen_start":428212,"node":99,"role":"declaration","source":0,"src_end":351555,"src_start":343823},{"artifact":0,"gen_end":438598,"gen_start":438129,"node":100,"role":"declaration","source":0,"src_end":351986,"src_start":351557},{"artifact":0,"gen_end":438840,"gen_start":438598,"node":101,"role":"declaration","source":0,"src_end":352292,"src_start":351988},{"artifact":0,"gen_end":447563,"gen_start":438840,"node":102,"role":"declaration","source":0,"src_end":359050,"src_start":352294},{"artifact":0,"gen_end":448024,"gen_start":447563,"node":103,"role":"declaration","source":0,"src_end":359473,"src_start":359052},{"artifact":0,"gen_end":448213,"gen_start":448024,"node":104,"role":"declaration","source":0,"src_end":359734,"src_start":359475},{"artifact":0,"gen_end":458000,"gen_start":448213,"node":105,"role":"declaration","source":0,"src_end":367358,"src_start":359736},{"artifact":0,"gen_end":458469,"gen_start":458000,"node":106,"role":"declaration","source":0,"src_end":367789,"src_start":367360},{"artifact":0,"gen_end":458709,"gen_start":458469,"node":107,"role":"declaration","source":0,"src_end":368093,"src_start":367791},{"artifact":0,"gen_end":468648,"gen_start":458709,"node":108,"role":"declaration","source":0,"src_end":375849,"src_start":368095},{"artifact":0,"gen_end":469153,"gen_start":468648,"node":109,"role":"declaration","source":0,"src_end":376316,"src_start":375851},{"artifact":0,"gen_end":469439,"gen_start":469153,"node":110,"role":"declaration","source":0,"src_end":376666,"src_start":376318},{"artifact":0,"gen_end":479242,"gen_start":469439,"node":111,"role":"declaration","source":0,"src_end":384302,"src_start":376668},{"artifact":0,"gen_end":479721,"gen_start":479242,"node":112,"role":"declaration","source":0,"src_end":384743,"src_start":384304},{"artifact":0,"gen_end":479933,"gen_start":479721,"node":113,"role":"declaration","source":0,"src_end":385027,"src_start":384745},{"artifact":0,"gen_end":484353,"gen_start":479933,"node":114,"role":"declaration","source":0,"src_end":388583,"src_start":385029},{"artifact":0,"gen_end":484530,"gen_start":484353,"node":115,"role":"declaration","source":0,"src_end":388774,"src_start":388585},{"artifact":0,"gen_end":484746,"gen_start":484530,"node":116,"role":"declaration","source":0,"src_end":389062,"src_start":388776},{"artifact":0,"gen_end":494530,"gen_start":484746,"node":117,"role":"declaration","source":0,"src_end":396683,"src_start":389064},{"artifact":0,"gen_end":495007,"gen_start":494530,"node":118,"role":"declaration","source":0,"src_end":397122,"src_start":396685},{"artifact":0,"gen_end":495220,"gen_start":495007,"node":119,"role":"declaration","source":0,"src_end":397407,"src_start":397124},{"artifact":0,"gen_end":505013,"gen_start":495220,"node":120,"role":"declaration","source":0,"src_end":405037,"src_start":397409},{"artifact":0,"gen_end":505494,"gen_start":505013,"node":121,"role":"declaration","source":0,"src_end":405480,"src_start":405039},{"artifact":0,"gen_end":505713,"gen_start":505494,"node":122,"role":"declaration","source":0,"src_end":405771,"src_start":405482},{"artifact":0,"gen_end":510139,"gen_start":505713,"node":123,"role":"declaration","source":0,"src_end":409333,"src_start":405773},{"artifact":0,"gen_end":510324,"gen_start":510139,"node":124,"role":"declaration","source":0,"src_end":409532,"src_start":409335},{"artifact":0,"gen_end":510552,"gen_start":510324,"node":125,"role":"declaration","source":0,"src_end":409832,"src_start":409534},{"artifact":0,"gen_end":520418,"gen_start":510552,"node":126,"role":"declaration","source":0,"src_end":417529,"src_start":409834},{"artifact":0,"gen_end":520915,"gen_start":520418,"node":127,"role":"declaration","source":0,"src_end":417988,"src_start":417531},{"artifact":0,"gen_end":521145,"gen_start":520915,"node":128,"role":"declaration","source":0,"src_end":418290,"src_start":417990},{"artifact":0,"gen_end":531059,"gen_start":521145,"node":129,"role":"declaration","source":0,"src_end":426021,"src_start":418292},{"artifact":0,"gen_end":531518,"gen_start":531059,"node":130,"role":"declaration","source":0,"src_end":426442,"src_start":426023},{"artifact":0,"gen_end":531755,"gen_start":531518,"node":131,"role":"declaration","source":0,"src_end":426743,"src_start":426444},{"artifact":0,"gen_end":551125,"gen_start":531755,"node":132,"role":"declaration","source":0,"src_end":442012,"src_start":426745},{"artifact":0,"gen_end":551316,"gen_start":551125,"node":133,"role":"declaration","source":0,"src_end":442217,"src_start":442014},{"artifact":0,"gen_end":551544,"gen_start":551316,"node":134,"role":"declaration","source":0,"src_end":442517,"src_start":442219},{"artifact":0,"gen_end":622271,"gen_start":551544,"node":135,"role":"declaration","source":0,"src_end":497959,"src_start":442519},{"artifact":0,"gen_end":622575,"gen_start":622271,"node":136,"role":"declaration","source":0,"src_end":498259,"src_start":497961},{"artifact":0,"gen_end":622821,"gen_start":622575,"node":137,"role":"declaration","source":0,"src_end":498569,"src_start":498261},{"artifact":0,"gen_end":632629,"gen_start":622821,"node":138,"role":"declaration","source":0,"src_end":506214,"src_start":498571},{"artifact":0,"gen_end":633114,"gen_start":632629,"node":139,"role":"declaration","source":0,"src_end":506661,"src_start":506216},{"artifact":0,"gen_end":633326,"gen_start":633114,"node":140,"role":"declaration","source":0,"src_end":506945,"src_start":506663},{"artifact":0,"gen_end":643112,"gen_start":633326,"node":141,"role":"declaration","source":0,"src_end":514568,"src_start":506947},{"artifact":0,"gen_end":643583,"gen_start":643112,"node":142,"role":"declaration","source":0,"src_end":515001,"src_start":514570},{"artifact":0,"gen_end":643785,"gen_start":643583,"node":143,"role":"declaration","source":0,"src_end":515275,"src_start":515003},{"artifact":0,"gen_end":653581,"gen_start":643785,"node":144,"role":"declaration","source":0,"src_end":522908,"src_start":515277},{"artifact":0,"gen_end":654066,"gen_start":653581,"node":145,"role":"declaration","source":0,"src_end":523355,"src_start":522910},{"artifact":0,"gen_end":654295,"gen_start":654066,"node":146,"role":"declaration","source":0,"src_end":523656,"src_start":523357},{"artifact":0,"gen_end":664209,"gen_start":654295,"node":147,"role":"declaration","source":0,"src_end":531387,"src_start":523658},{"artifact":0,"gen_end":664668,"gen_start":664209,"node":148,"role":"declaration","source":0,"src_end":531808,"src_start":531389},{"artifact":0,"gen_end":664905,"gen_start":664668,"node":149,"role":"declaration","source":0,"src_end":532109,"src_start":531810},{"artifact":0,"gen_end":674705,"gen_start":664905,"node":150,"role":"declaration","source":0,"src_end":539746,"src_start":532111},{"artifact":0,"gen_end":675198,"gen_start":674705,"node":151,"role":"declaration","source":0,"src_end":540201,"src_start":539748},{"artifact":0,"gen_end":675435,"gen_start":675198,"node":152,"role":"declaration","source":0,"src_end":540510,"src_start":540203},{"artifact":0,"gen_end":685352,"gen_start":675435,"node":153,"role":"declaration","source":0,"src_end":548244,"src_start":540512},{"artifact":0,"gen_end":685825,"gen_start":685352,"node":154,"role":"declaration","source":0,"src_end":548679,"src_start":548246},{"artifact":0,"gen_end":686064,"gen_start":685825,"node":155,"role":"declaration","source":0,"src_end":548982,"src_start":548681},{"artifact":0,"gen_end":696163,"gen_start":686064,"node":156,"role":"declaration","source":0,"src_end":556882,"src_start":548984},{"artifact":0,"gen_end":696644,"gen_start":696163,"node":157,"role":"declaration","source":0,"src_end":557325,"src_start":556884},{"artifact":0,"gen_end":696902,"gen_start":696644,"node":158,"role":"declaration","source":0,"src_end":557647,"src_start":557327},{"artifact":0,"gen_end":706565,"gen_start":696902,"node":159,"role":"declaration","source":0,"src_end":565167,"src_start":557649},{"artifact":0,"gen_end":707042,"gen_start":706565,"node":160,"role":"declaration","source":0,"src_end":565606,"src_start":565169},{"artifact":0,"gen_end":707294,"gen_start":707042,"node":161,"role":"declaration","source":0,"src_end":565922,"src_start":565608},{"artifact":0,"gen_end":717142,"gen_start":707294,"node":162,"role":"declaration","source":0,"src_end":573603,"src_start":565924},{"artifact":0,"gen_end":717633,"gen_start":717142,"node":163,"role":"declaration","source":0,"src_end":574056,"src_start":573605},{"artifact":0,"gen_end":717904,"gen_start":717633,"node":164,"role":"declaration","source":0,"src_end":574391,"src_start":574058},{"artifact":0,"gen_end":727835,"gen_start":717904,"node":165,"role":"declaration","source":0,"src_end":582139,"src_start":574393},{"artifact":0,"gen_end":728314,"gen_start":727835,"node":166,"role":"declaration","source":0,"src_end":582580,"src_start":582141},{"artifact":0,"gen_end":728574,"gen_start":728314,"node":167,"role":"declaration","source":0,"src_end":582904,"src_start":582582},{"artifact":0,"gen_end":738371,"gen_start":728574,"node":168,"role":"declaration","source":0,"src_end":590538,"src_start":582906},{"artifact":0,"gen_end":738848,"gen_start":738371,"node":169,"role":"declaration","source":0,"src_end":590977,"src_start":590540},{"artifact":0,"gen_end":739094,"gen_start":738848,"node":170,"role":"declaration","source":0,"src_end":591287,"src_start":590979},{"artifact":0,"gen_end":749029,"gen_start":739094,"node":171,"role":"declaration","source":0,"src_end":599039,"src_start":591289},{"artifact":0,"gen_end":749514,"gen_start":749029,"node":172,"role":"declaration","source":0,"src_end":599486,"src_start":599041},{"artifact":0,"gen_end":749772,"gen_start":749514,"node":173,"role":"declaration","source":0,"src_end":599808,"src_start":599488},{"artifact":0,"gen_end":759557,"gen_start":749772,"node":174,"role":"declaration","source":0,"src_end":607430,"src_start":599810},{"artifact":0,"gen_end":760028,"gen_start":759557,"node":175,"role":"declaration","source":0,"src_end":607863,"src_start":607432},{"artifact":0,"gen_end":760232,"gen_start":760028,"node":176,"role":"declaration","source":0,"src_end":608139,"src_start":607865},{"artifact":0,"gen_end":770017,"gen_start":760232,"node":177,"role":"declaration","source":0,"src_end":615761,"src_start":608141},{"artifact":0,"gen_end":770488,"gen_start":770017,"node":178,"role":"declaration","source":0,"src_end":616194,"src_start":615763},{"artifact":0,"gen_end":770692,"gen_start":770488,"node":179,"role":"declaration","source":0,"src_end":616470,"src_start":616196},{"artifact":0,"gen_end":780489,"gen_start":770692,"node":180,"role":"declaration","source":0,"src_end":624104,"src_start":616472},{"artifact":0,"gen_end":780970,"gen_start":780489,"node":181,"role":"declaration","source":0,"src_end":624547,"src_start":624106},{"artifact":0,"gen_end":781193,"gen_start":780970,"node":182,"role":"declaration","source":0,"src_end":624842,"src_start":624549},{"artifact":0,"gen_end":790989,"gen_start":781193,"node":183,"role":"declaration","source":0,"src_end":632473,"src_start":624844},{"artifact":0,"gen_end":791460,"gen_start":790989,"node":184,"role":"declaration","source":0,"src_end":632906,"src_start":632475},{"artifact":0,"gen_end":791699,"gen_start":791460,"node":185,"role":"declaration","source":0,"src_end":633209,"src_start":632908},{"artifact":0,"gen_end":801634,"gen_start":791699,"node":186,"role":"declaration","source":0,"src_end":640959,"src_start":633211},{"artifact":0,"gen_end":802115,"gen_start":801634,"node":187,"role":"declaration","source":0,"src_end":641402,"src_start":640961},{"artifact":0,"gen_end":802369,"gen_start":802115,"node":188,"role":"declaration","source":0,"src_end":641720,"src_start":641404},{"artifact":0,"gen_end":811456,"gen_start":802369,"node":189,"role":"declaration","source":0,"src_end":648764,"src_start":641722},{"artifact":0,"gen_end":811909,"gen_start":811456,"node":190,"role":"declaration","source":0,"src_end":649179,"src_start":648766},{"artifact":0,"gen_end":812405,"gen_start":811909,"node":191,"role":"declaration","source":0,"src_end":649685,"src_start":649181},{"artifact":0,"gen_end":812573,"gen_start":812405,"node":192,"role":"declaration","source":0,"src_end":649923,"src_start":649687},{"artifact":0,"gen_end":822900,"gen_start":812573,"node":193,"role":"declaration","source":0,"src_end":657956,"src_start":649925},{"artifact":0,"gen_end":823196,"gen_start":822900,"node":194,"role":"declaration","source":0,"src_end":658248,"src_start":657958},{"artifact":0,"gen_end":823535,"gen_start":823196,"node":195,"role":"declaration","source":0,"src_end":658625,"src_start":658250},{"artifact":0,"gen_end":823691,"gen_start":823535,"node":196,"role":"declaration","source":0,"src_end":658861,"src_start":658627},{"artifact":0,"gen_end":837567,"gen_start":823691,"node":197,"role":"declaration","source":0,"src_end":669575,"src_start":658863},{"artifact":0,"gen_end":837902,"gen_start":837567,"node":198,"role":"declaration","source":0,"src_end":669900,"src_start":669577},{"artifact":0,"gen_end":838300,"gen_start":837902,"node":199,"role":"declaration","source":0,"src_end":670324,"src_start":669902},{"artifact":0,"gen_end":838491,"gen_start":838300,"node":200,"role":"declaration","source":0,"src_end":670591,"src_start":670326},{"artifact":0,"gen_end":838686,"gen_start":838491,"node":201,"role":"declaration","source":0,"src_end":670858,"src_start":670593},{"artifact":0,"gen_end":838881,"gen_start":838686,"node":202,"role":"declaration","source":0,"src_end":671125,"src_start":670860},{"artifact":0,"gen_end":839076,"gen_start":838881,"node":203,"role":"declaration","source":0,"src_end":671392,"src_start":671127},{"artifact":0,"gen_end":839280,"gen_start":839076,"node":204,"role":"declaration","source":0,"src_end":671670,"src_start":671394},{"artifact":0,"gen_end":839419,"gen_start":839280,"node":205,"role":"declaration","source":0,"src_end":671895,"src_start":671672},{"artifact":0,"gen_end":849199,"gen_start":839419,"node":206,"role":"declaration","source":0,"src_end":679512,"src_start":671897},{"artifact":0,"gen_end":849652,"gen_start":849199,"node":207,"role":"declaration","source":0,"src_end":679927,"src_start":679514},{"artifact":0,"gen_end":850152,"gen_start":849652,"node":208,"role":"declaration","source":0,"src_end":680437,"src_start":679929},{"artifact":0,"gen_end":850321,"gen_start":850152,"node":209,"role":"declaration","source":0,"src_end":680676,"src_start":680439},{"artifact":0,"gen_end":850353,"gen_start":850321,"node":0,"role":"declaration","source":0,"src_end":680712,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":210,"role":"declaration","source":0,"src_end":680712,"src_start":0},{"artifact":1,"gen_end":10174,"gen_start":134,"node":211,"role":"declaration","source":0,"src_end":7817,"src_start":200},{"artifact":1,"gen_end":10738,"gen_start":10174,"node":212,"role":"declaration","source":0,"src_end":8234,"src_start":7819},{"artifact":1,"gen_end":11390,"gen_start":10738,"node":213,"role":"declaration","source":0,"src_end":8746,"src_start":8236},{"artifact":1,"gen_end":11711,"gen_start":11390,"node":214,"role":"declaration","source":0,"src_end":8987,"src_start":8748},{"artifact":1,"gen_end":21753,"gen_start":11711,"node":215,"role":"declaration","source":0,"src_end":16608,"src_start":8989},{"artifact":1,"gen_end":22323,"gen_start":21753,"node":216,"role":"declaration","source":0,"src_end":17031,"src_start":16610},{"artifact":1,"gen_end":22981,"gen_start":22323,"node":217,"role":"declaration","source":0,"src_end":17549,"src_start":17033},{"artifact":1,"gen_end":23308,"gen_start":22981,"node":218,"role":"declaration","source":0,"src_end":17796,"src_start":17551},{"artifact":1,"gen_end":36619,"gen_start":23308,"node":219,"role":"declaration","source":0,"src_end":27873,"src_start":17798},{"artifact":1,"gen_end":37486,"gen_start":36619,"node":220,"role":"declaration","source":0,"src_end":28537,"src_start":27875},{"artifact":1,"gen_end":38466,"gen_start":37486,"node":221,"role":"declaration","source":0,"src_end":29329,"src_start":28539},{"artifact":1,"gen_end":38784,"gen_start":38466,"node":222,"role":"declaration","source":0,"src_end":29569,"src_start":29331},{"artifact":1,"gen_end":59158,"gen_start":38784,"node":223,"role":"declaration","source":0,"src_end":45993,"src_start":29571},{"artifact":1,"gen_end":59732,"gen_start":59158,"node":224,"role":"declaration","source":0,"src_end":46420,"src_start":45995},{"artifact":1,"gen_end":60369,"gen_start":59732,"node":225,"role":"declaration","source":0,"src_end":46929,"src_start":46422},{"artifact":1,"gen_end":60671,"gen_start":60369,"node":226,"role":"declaration","source":0,"src_end":47161,"src_start":46931},{"artifact":1,"gen_end":71183,"gen_start":60671,"node":227,"role":"declaration","source":0,"src_end":55137,"src_start":47163},{"artifact":1,"gen_end":71625,"gen_start":71183,"node":228,"role":"declaration","source":0,"src_end":55460,"src_start":55139},{"artifact":1,"gen_end":72171,"gen_start":71625,"node":229,"role":"declaration","source":0,"src_end":55882,"src_start":55462},{"artifact":1,"gen_end":72499,"gen_start":72171,"node":230,"role":"declaration","source":0,"src_end":56130,"src_start":55884},{"artifact":1,"gen_end":82547,"gen_start":72499,"node":231,"role":"declaration","source":0,"src_end":63757,"src_start":56132},{"artifact":1,"gen_end":83123,"gen_start":82547,"node":232,"role":"declaration","source":0,"src_end":64186,"src_start":63759},{"artifact":1,"gen_end":83787,"gen_start":83123,"node":233,"role":"declaration","source":0,"src_end":64710,"src_start":64188},{"artifact":1,"gen_end":84123,"gen_start":83787,"node":234,"role":"declaration","source":0,"src_end":64970,"src_start":64712},{"artifact":1,"gen_end":104502,"gen_start":84123,"node":235,"role":"declaration","source":0,"src_end":81399,"src_start":64972},{"artifact":1,"gen_end":105082,"gen_start":104502,"node":236,"role":"declaration","source":0,"src_end":81832,"src_start":81401},{"artifact":1,"gen_end":105725,"gen_start":105082,"node":237,"role":"declaration","source":0,"src_end":82347,"src_start":81834},{"artifact":1,"gen_end":106033,"gen_start":105725,"node":238,"role":"declaration","source":0,"src_end":82585,"src_start":82349},{"artifact":1,"gen_end":116079,"gen_start":106033,"node":239,"role":"declaration","source":0,"src_end":90210,"src_start":82587},{"artifact":1,"gen_end":116657,"gen_start":116079,"node":240,"role":"declaration","source":0,"src_end":90641,"src_start":90212},{"artifact":1,"gen_end":117323,"gen_start":116657,"node":241,"role":"declaration","source":0,"src_end":91167,"src_start":90643},{"artifact":1,"gen_end":117661,"gen_start":117323,"node":242,"role":"declaration","source":0,"src_end":91429,"src_start":91169},{"artifact":1,"gen_end":130976,"gen_start":117661,"node":243,"role":"declaration","source":0,"src_end":101510,"src_start":91431},{"artifact":1,"gen_end":131847,"gen_start":130976,"node":244,"role":"declaration","source":0,"src_end":102178,"src_start":101512},{"artifact":1,"gen_end":132831,"gen_start":131847,"node":245,"role":"declaration","source":0,"src_end":102974,"src_start":102180},{"artifact":1,"gen_end":133156,"gen_start":132831,"node":246,"role":"declaration","source":0,"src_end":103225,"src_start":102976},{"artifact":1,"gen_end":141227,"gen_start":133156,"node":247,"role":"declaration","source":0,"src_end":109365,"src_start":103227},{"artifact":1,"gen_end":141811,"gen_start":141227,"node":248,"role":"declaration","source":0,"src_end":109802,"src_start":109367},{"artifact":1,"gen_end":142462,"gen_start":141811,"node":249,"role":"declaration","source":0,"src_end":110325,"src_start":109804},{"artifact":1,"gen_end":142803,"gen_start":142462,"node":250,"role":"declaration","source":0,"src_end":110586,"src_start":110327},{"artifact":1,"gen_end":148994,"gen_start":142803,"node":251,"role":"declaration","source":0,"src_end":115319,"src_start":110588},{"artifact":1,"gen_end":149307,"gen_start":148994,"node":252,"role":"declaration","source":0,"src_end":115531,"src_start":115321},{"artifact":1,"gen_end":149680,"gen_start":149307,"node":253,"role":"declaration","source":0,"src_end":115808,"src_start":115533},{"artifact":1,"gen_end":149980,"gen_start":149680,"node":254,"role":"declaration","source":0,"src_end":116038,"src_start":115810},{"artifact":1,"gen_end":159614,"gen_start":149980,"node":255,"role":"declaration","source":0,"src_end":123350,"src_start":116040},{"artifact":1,"gen_end":160196,"gen_start":159614,"node":256,"role":"declaration","source":0,"src_end":123785,"src_start":123352},{"artifact":1,"gen_end":160863,"gen_start":160196,"node":257,"role":"declaration","source":0,"src_end":124312,"src_start":123787},{"artifact":1,"gen_end":161201,"gen_start":160863,"node":258,"role":"declaration","source":0,"src_end":124570,"src_start":124314},{"artifact":1,"gen_end":170603,"gen_start":161201,"node":259,"role":"declaration","source":0,"src_end":131650,"src_start":124572},{"artifact":1,"gen_end":171187,"gen_start":170603,"node":260,"role":"declaration","source":0,"src_end":132087,"src_start":131652},{"artifact":1,"gen_end":171856,"gen_start":171187,"node":261,"role":"declaration","source":0,"src_end":132616,"src_start":132089},{"artifact":1,"gen_end":172196,"gen_start":171856,"node":262,"role":"declaration","source":0,"src_end":132876,"src_start":132618},{"artifact":1,"gen_end":192571,"gen_start":172196,"node":263,"role":"declaration","source":0,"src_end":149301,"src_start":132878},{"artifact":1,"gen_end":193149,"gen_start":192571,"node":264,"role":"declaration","source":0,"src_end":149732,"src_start":149303},{"artifact":1,"gen_end":193790,"gen_start":193149,"node":265,"role":"declaration","source":0,"src_end":150245,"src_start":149734},{"artifact":1,"gen_end":194096,"gen_start":193790,"node":266,"role":"declaration","source":0,"src_end":150481,"src_start":150247},{"artifact":1,"gen_end":207407,"gen_start":194096,"node":267,"role":"declaration","source":0,"src_end":160558,"src_start":150483},{"artifact":1,"gen_end":208276,"gen_start":207407,"node":268,"role":"declaration","source":0,"src_end":161224,"src_start":160560},{"artifact":1,"gen_end":209258,"gen_start":208276,"node":269,"role":"declaration","source":0,"src_end":162018,"src_start":161226},{"artifact":1,"gen_end":209578,"gen_start":209258,"node":270,"role":"declaration","source":0,"src_end":162260,"src_start":162020},{"artifact":1,"gen_end":219814,"gen_start":209578,"node":271,"role":"declaration","source":0,"src_end":170047,"src_start":162262},{"artifact":1,"gen_end":220386,"gen_start":219814,"node":272,"role":"declaration","source":0,"src_end":170472,"src_start":170049},{"artifact":1,"gen_end":221046,"gen_start":220386,"node":273,"role":"declaration","source":0,"src_end":170992,"src_start":170474},{"artifact":1,"gen_end":221375,"gen_start":221046,"node":274,"role":"declaration","source":0,"src_end":171241,"src_start":170994},{"artifact":1,"gen_end":231784,"gen_start":221375,"node":275,"role":"declaration","source":0,"src_end":179187,"src_start":171243},{"artifact":1,"gen_end":232362,"gen_start":231784,"node":276,"role":"declaration","source":0,"src_end":179618,"src_start":179189},{"artifact":1,"gen_end":233028,"gen_start":232362,"node":277,"role":"declaration","source":0,"src_end":180144,"src_start":179620},{"artifact":1,"gen_end":233363,"gen_start":233028,"node":278,"role":"declaration","source":0,"src_end":180399,"src_start":180146},{"artifact":1,"gen_end":243774,"gen_start":233363,"node":279,"role":"declaration","source":0,"src_end":188347,"src_start":180401},{"artifact":1,"gen_end":244354,"gen_start":243774,"node":280,"role":"declaration","source":0,"src_end":188780,"src_start":188349},{"artifact":1,"gen_end":245022,"gen_start":244354,"node":281,"role":"declaration","source":0,"src_end":189308,"src_start":188782},{"artifact":1,"gen_end":245359,"gen_start":245022,"node":282,"role":"declaration","source":0,"src_end":189565,"src_start":189310},{"artifact":1,"gen_end":316303,"gen_start":245359,"node":283,"role":"declaration","source":0,"src_end":244998,"src_start":189567},{"artifact":1,"gen_end":316696,"gen_start":316303,"node":284,"role":"declaration","source":0,"src_end":245278,"src_start":245000},{"artifact":1,"gen_end":317188,"gen_start":316696,"node":285,"role":"declaration","source":0,"src_end":245654,"src_start":245280},{"artifact":1,"gen_end":317512,"gen_start":317188,"node":286,"role":"declaration","source":0,"src_end":245898,"src_start":245656},{"artifact":1,"gen_end":388460,"gen_start":317512,"node":287,"role":"declaration","source":0,"src_end":301335,"src_start":245900},{"artifact":1,"gen_end":388857,"gen_start":388460,"node":288,"role":"declaration","source":0,"src_end":301619,"src_start":301337},{"artifact":1,"gen_end":389353,"gen_start":388857,"node":289,"role":"declaration","source":0,"src_end":301999,"src_start":301621},{"artifact":1,"gen_end":389676,"gen_start":389353,"node":290,"role":"declaration","source":0,"src_end":302244,"src_start":302001},{"artifact":1,"gen_end":399720,"gen_start":389676,"node":291,"role":"declaration","source":0,"src_end":309867,"src_start":302246},{"artifact":1,"gen_end":400296,"gen_start":399720,"node":292,"role":"declaration","source":0,"src_end":310296,"src_start":309869},{"artifact":1,"gen_end":400644,"gen_start":400296,"node":293,"role":"declaration","source":0,"src_end":310566,"src_start":310298},{"artifact":1,"gen_end":405251,"gen_start":400644,"node":294,"role":"declaration","source":0,"src_end":314109,"src_start":310568},{"artifact":1,"gen_end":405525,"gen_start":405251,"node":295,"role":"declaration","source":0,"src_end":314288,"src_start":314111},{"artifact":1,"gen_end":405873,"gen_start":405525,"node":296,"role":"declaration","source":0,"src_end":314558,"src_start":314290},{"artifact":1,"gen_end":415925,"gen_start":405873,"node":297,"role":"declaration","source":0,"src_end":322189,"src_start":314560},{"artifact":1,"gen_end":416513,"gen_start":415925,"node":298,"role":"declaration","source":0,"src_end":322630,"src_start":322191},{"artifact":1,"gen_end":416873,"gen_start":416513,"node":299,"role":"declaration","source":0,"src_end":322912,"src_start":322632},{"artifact":1,"gen_end":427053,"gen_start":416873,"node":300,"role":"declaration","source":0,"src_end":330649,"src_start":322914},{"artifact":1,"gen_end":427627,"gen_start":427053,"node":301,"role":"declaration","source":0,"src_end":331076,"src_start":330651},{"artifact":1,"gen_end":428023,"gen_start":427627,"node":302,"role":"declaration","source":0,"src_end":331386,"src_start":331078},{"artifact":1,"gen_end":438081,"gen_start":428023,"node":303,"role":"declaration","source":0,"src_end":339021,"src_start":331388},{"artifact":1,"gen_end":438669,"gen_start":438081,"node":304,"role":"declaration","source":0,"src_end":339462,"src_start":339023},{"artifact":1,"gen_end":439066,"gen_start":438669,"node":305,"role":"declaration","source":0,"src_end":339773,"src_start":339464},{"artifact":1,"gen_end":443715,"gen_start":439066,"node":306,"role":"declaration","source":0,"src_end":343352,"src_start":339775},{"artifact":1,"gen_end":443997,"gen_start":443715,"node":307,"role":"declaration","source":0,"src_end":343539,"src_start":343354},{"artifact":1,"gen_end":444357,"gen_start":443997,"node":308,"role":"declaration","source":0,"src_end":343821,"src_start":343541},{"artifact":1,"gen_end":454534,"gen_start":444357,"node":309,"role":"declaration","source":0,"src_end":351555,"src_start":343823},{"artifact":1,"gen_end":455112,"gen_start":454534,"node":310,"role":"declaration","source":0,"src_end":351986,"src_start":351557},{"artifact":1,"gen_end":455504,"gen_start":455112,"node":311,"role":"declaration","source":0,"src_end":352292,"src_start":351988},{"artifact":1,"gen_end":464485,"gen_start":455504,"node":312,"role":"declaration","source":0,"src_end":359050,"src_start":352294},{"artifact":1,"gen_end":465055,"gen_start":464485,"node":313,"role":"declaration","source":0,"src_end":359473,"src_start":359052},{"artifact":1,"gen_end":465394,"gen_start":465055,"node":314,"role":"declaration","source":0,"src_end":359734,"src_start":359475},{"artifact":1,"gen_end":475439,"gen_start":465394,"node":315,"role":"declaration","source":0,"src_end":367358,"src_start":359736},{"artifact":1,"gen_end":476017,"gen_start":475439,"node":316,"role":"declaration","source":0,"src_end":367789,"src_start":367360},{"artifact":1,"gen_end":476407,"gen_start":476017,"node":317,"role":"declaration","source":0,"src_end":368093,"src_start":367791},{"artifact":1,"gen_end":486606,"gen_start":476407,"node":318,"role":"declaration","source":0,"src_end":375849,"src_start":368095},{"artifact":1,"gen_end":487220,"gen_start":486606,"node":319,"role":"declaration","source":0,"src_end":376316,"src_start":375851},{"artifact":1,"gen_end":487656,"gen_start":487220,"node":320,"role":"declaration","source":0,"src_end":376666,"src_start":376318},{"artifact":1,"gen_end":497717,"gen_start":487656,"node":321,"role":"declaration","source":0,"src_end":384302,"src_start":376668},{"artifact":1,"gen_end":498305,"gen_start":497717,"node":322,"role":"declaration","source":0,"src_end":384743,"src_start":384304},{"artifact":1,"gen_end":498667,"gen_start":498305,"node":323,"role":"declaration","source":0,"src_end":385027,"src_start":384745},{"artifact":1,"gen_end":503287,"gen_start":498667,"node":324,"role":"declaration","source":0,"src_end":388583,"src_start":385029},{"artifact":1,"gen_end":503573,"gen_start":503287,"node":325,"role":"declaration","source":0,"src_end":388774,"src_start":388585},{"artifact":1,"gen_end":503939,"gen_start":503573,"node":326,"role":"declaration","source":0,"src_end":389062,"src_start":388776},{"artifact":1,"gen_end":513981,"gen_start":503939,"node":327,"role":"declaration","source":0,"src_end":396683,"src_start":389064},{"artifact":1,"gen_end":514567,"gen_start":513981,"node":328,"role":"declaration","source":0,"src_end":397122,"src_start":396685},{"artifact":1,"gen_end":514930,"gen_start":514567,"node":329,"role":"declaration","source":0,"src_end":397407,"src_start":397124},{"artifact":1,"gen_end":524981,"gen_start":514930,"node":330,"role":"declaration","source":0,"src_end":405037,"src_start":397409},{"artifact":1,"gen_end":525571,"gen_start":524981,"node":331,"role":"declaration","source":0,"src_end":405480,"src_start":405039},{"artifact":1,"gen_end":525940,"gen_start":525571,"node":332,"role":"declaration","source":0,"src_end":405771,"src_start":405482},{"artifact":1,"gen_end":530566,"gen_start":525940,"node":333,"role":"declaration","source":0,"src_end":409333,"src_start":405773},{"artifact":1,"gen_end":530860,"gen_start":530566,"node":334,"role":"declaration","source":0,"src_end":409532,"src_start":409335},{"artifact":1,"gen_end":531238,"gen_start":530860,"node":335,"role":"declaration","source":0,"src_end":409832,"src_start":409534},{"artifact":1,"gen_end":541362,"gen_start":531238,"node":336,"role":"declaration","source":0,"src_end":417529,"src_start":409834},{"artifact":1,"gen_end":541968,"gen_start":541362,"node":337,"role":"declaration","source":0,"src_end":417988,"src_start":417531},{"artifact":1,"gen_end":542348,"gen_start":541968,"node":338,"role":"declaration","source":0,"src_end":418290,"src_start":417990},{"artifact":1,"gen_end":552522,"gen_start":542348,"node":339,"role":"declaration","source":0,"src_end":426021,"src_start":418292},{"artifact":1,"gen_end":553090,"gen_start":552522,"node":340,"role":"declaration","source":0,"src_end":426442,"src_start":426023},{"artifact":1,"gen_end":553477,"gen_start":553090,"node":341,"role":"declaration","source":0,"src_end":426743,"src_start":426444},{"artifact":1,"gen_end":573023,"gen_start":553477,"node":342,"role":"declaration","source":0,"src_end":442012,"src_start":426745},{"artifact":1,"gen_end":573323,"gen_start":573023,"node":343,"role":"declaration","source":0,"src_end":442217,"src_start":442014},{"artifact":1,"gen_end":573701,"gen_start":573323,"node":344,"role":"declaration","source":0,"src_end":442517,"src_start":442219},{"artifact":1,"gen_end":644654,"gen_start":573701,"node":345,"role":"declaration","source":0,"src_end":497959,"src_start":442519},{"artifact":1,"gen_end":645067,"gen_start":644654,"node":346,"role":"declaration","source":0,"src_end":498259,"src_start":497961},{"artifact":1,"gen_end":645463,"gen_start":645067,"node":347,"role":"declaration","source":0,"src_end":498569,"src_start":498261},{"artifact":1,"gen_end":655529,"gen_start":645463,"node":348,"role":"declaration","source":0,"src_end":506214,"src_start":498571},{"artifact":1,"gen_end":656123,"gen_start":655529,"node":349,"role":"declaration","source":0,"src_end":506661,"src_start":506216},{"artifact":1,"gen_end":656485,"gen_start":656123,"node":350,"role":"declaration","source":0,"src_end":506945,"src_start":506663},{"artifact":1,"gen_end":666529,"gen_start":656485,"node":351,"role":"declaration","source":0,"src_end":514568,"src_start":506947},{"artifact":1,"gen_end":667109,"gen_start":666529,"node":352,"role":"declaration","source":0,"src_end":515001,"src_start":514570},{"artifact":1,"gen_end":667461,"gen_start":667109,"node":353,"role":"declaration","source":0,"src_end":515275,"src_start":515003},{"artifact":1,"gen_end":677515,"gen_start":667461,"node":354,"role":"declaration","source":0,"src_end":522908,"src_start":515277},{"artifact":1,"gen_end":678109,"gen_start":677515,"node":355,"role":"declaration","source":0,"src_end":523355,"src_start":522910},{"artifact":1,"gen_end":678488,"gen_start":678109,"node":356,"role":"declaration","source":0,"src_end":523656,"src_start":523357},{"artifact":1,"gen_end":688662,"gen_start":678488,"node":357,"role":"declaration","source":0,"src_end":531387,"src_start":523658},{"artifact":1,"gen_end":689230,"gen_start":688662,"node":358,"role":"declaration","source":0,"src_end":531808,"src_start":531389},{"artifact":1,"gen_end":689617,"gen_start":689230,"node":359,"role":"declaration","source":0,"src_end":532109,"src_start":531810},{"artifact":1,"gen_end":699675,"gen_start":689617,"node":360,"role":"declaration","source":0,"src_end":539746,"src_start":532111},{"artifact":1,"gen_end":700277,"gen_start":699675,"node":361,"role":"declaration","source":0,"src_end":540201,"src_start":539748},{"artifact":1,"gen_end":700664,"gen_start":700277,"node":362,"role":"declaration","source":0,"src_end":540510,"src_start":540203},{"artifact":1,"gen_end":710841,"gen_start":700664,"node":363,"role":"declaration","source":0,"src_end":548244,"src_start":540512},{"artifact":1,"gen_end":711423,"gen_start":710841,"node":364,"role":"declaration","source":0,"src_end":548679,"src_start":548246},{"artifact":1,"gen_end":711812,"gen_start":711423,"node":365,"role":"declaration","source":0,"src_end":548982,"src_start":548681},{"artifact":1,"gen_end":722173,"gen_start":711812,"node":366,"role":"declaration","source":0,"src_end":556882,"src_start":548984},{"artifact":1,"gen_end":722763,"gen_start":722173,"node":367,"role":"declaration","source":0,"src_end":557325,"src_start":556884},{"artifact":1,"gen_end":723171,"gen_start":722763,"node":368,"role":"declaration","source":0,"src_end":557647,"src_start":557327},{"artifact":1,"gen_end":733090,"gen_start":723171,"node":369,"role":"declaration","source":0,"src_end":565167,"src_start":557649},{"artifact":1,"gen_end":733676,"gen_start":733090,"node":370,"role":"declaration","source":0,"src_end":565606,"src_start":565169},{"artifact":1,"gen_end":734078,"gen_start":733676,"node":371,"role":"declaration","source":0,"src_end":565922,"src_start":565608},{"artifact":1,"gen_end":744184,"gen_start":734078,"node":372,"role":"declaration","source":0,"src_end":573603,"src_start":565924},{"artifact":1,"gen_end":744784,"gen_start":744184,"node":373,"role":"declaration","source":0,"src_end":574056,"src_start":573605},{"artifact":1,"gen_end":745205,"gen_start":744784,"node":374,"role":"declaration","source":0,"src_end":574391,"src_start":574058},{"artifact":1,"gen_end":755396,"gen_start":745205,"node":375,"role":"declaration","source":0,"src_end":582139,"src_start":574393},{"artifact":1,"gen_end":755984,"gen_start":755396,"node":376,"role":"declaration","source":0,"src_end":582580,"src_start":582141},{"artifact":1,"gen_end":756394,"gen_start":755984,"node":377,"role":"declaration","source":0,"src_end":582904,"src_start":582582},{"artifact":1,"gen_end":766449,"gen_start":756394,"node":378,"role":"declaration","source":0,"src_end":590538,"src_start":582906},{"artifact":1,"gen_end":767035,"gen_start":766449,"node":379,"role":"declaration","source":0,"src_end":590977,"src_start":590540},{"artifact":1,"gen_end":767431,"gen_start":767035,"node":380,"role":"declaration","source":0,"src_end":591287,"src_start":590979},{"artifact":1,"gen_end":777626,"gen_start":767431,"node":381,"role":"declaration","source":0,"src_end":599039,"src_start":591289},{"artifact":1,"gen_end":778220,"gen_start":777626,"node":382,"role":"declaration","source":0,"src_end":599486,"src_start":599041},{"artifact":1,"gen_end":778628,"gen_start":778220,"node":383,"role":"declaration","source":0,"src_end":599808,"src_start":599488},{"artifact":1,"gen_end":788671,"gen_start":778628,"node":384,"role":"declaration","source":0,"src_end":607430,"src_start":599810},{"artifact":1,"gen_end":789251,"gen_start":788671,"node":385,"role":"declaration","source":0,"src_end":607863,"src_start":607432},{"artifact":1,"gen_end":789605,"gen_start":789251,"node":386,"role":"declaration","source":0,"src_end":608139,"src_start":607865},{"artifact":1,"gen_end":799648,"gen_start":789605,"node":387,"role":"declaration","source":0,"src_end":615761,"src_start":608141},{"artifact":1,"gen_end":800228,"gen_start":799648,"node":388,"role":"declaration","source":0,"src_end":616194,"src_start":615763},{"artifact":1,"gen_end":800582,"gen_start":800228,"node":389,"role":"declaration","source":0,"src_end":616470,"src_start":616196},{"artifact":1,"gen_end":810637,"gen_start":800582,"node":390,"role":"declaration","source":0,"src_end":624104,"src_start":616472},{"artifact":1,"gen_end":811227,"gen_start":810637,"node":391,"role":"declaration","source":0,"src_end":624547,"src_start":624106},{"artifact":1,"gen_end":811600,"gen_start":811227,"node":392,"role":"declaration","source":0,"src_end":624842,"src_start":624549},{"artifact":1,"gen_end":821654,"gen_start":811600,"node":393,"role":"declaration","source":0,"src_end":632473,"src_start":624844},{"artifact":1,"gen_end":822234,"gen_start":821654,"node":394,"role":"declaration","source":0,"src_end":632906,"src_start":632475},{"artifact":1,"gen_end":822623,"gen_start":822234,"node":395,"role":"declaration","source":0,"src_end":633209,"src_start":632908},{"artifact":1,"gen_end":832818,"gen_start":822623,"node":396,"role":"declaration","source":0,"src_end":640959,"src_start":633211},{"artifact":1,"gen_end":833408,"gen_start":832818,"node":397,"role":"declaration","source":0,"src_end":641402,"src_start":640961},{"artifact":1,"gen_end":833812,"gen_start":833408,"node":398,"role":"declaration","source":0,"src_end":641720,"src_start":641404},{"artifact":1,"gen_end":843157,"gen_start":833812,"node":399,"role":"declaration","source":0,"src_end":648764,"src_start":641722},{"artifact":1,"gen_end":843719,"gen_start":843157,"node":400,"role":"declaration","source":0,"src_end":649179,"src_start":648766},{"artifact":1,"gen_end":844365,"gen_start":843719,"node":401,"role":"declaration","source":0,"src_end":649685,"src_start":649181},{"artifact":1,"gen_end":844683,"gen_start":844365,"node":402,"role":"declaration","source":0,"src_end":649923,"src_start":649687},{"artifact":1,"gen_end":855272,"gen_start":844683,"node":403,"role":"declaration","source":0,"src_end":657956,"src_start":649925},{"artifact":1,"gen_end":855677,"gen_start":855272,"node":404,"role":"declaration","source":0,"src_end":658248,"src_start":657958},{"artifact":1,"gen_end":856166,"gen_start":855677,"node":405,"role":"declaration","source":0,"src_end":658625,"src_start":658250},{"artifact":1,"gen_end":856472,"gen_start":856166,"node":406,"role":"declaration","source":0,"src_end":658861,"src_start":658627},{"artifact":1,"gen_end":870686,"gen_start":856472,"node":407,"role":"declaration","source":0,"src_end":669575,"src_start":658863},{"artifact":1,"gen_end":871130,"gen_start":870686,"node":408,"role":"declaration","source":0,"src_end":669900,"src_start":669577},{"artifact":1,"gen_end":871678,"gen_start":871130,"node":409,"role":"declaration","source":0,"src_end":670324,"src_start":669902},{"artifact":1,"gen_end":872019,"gen_start":871678,"node":410,"role":"declaration","source":0,"src_end":670591,"src_start":670326},{"artifact":1,"gen_end":872364,"gen_start":872019,"node":411,"role":"declaration","source":0,"src_end":670858,"src_start":670593},{"artifact":1,"gen_end":872709,"gen_start":872364,"node":412,"role":"declaration","source":0,"src_end":671125,"src_start":670860},{"artifact":1,"gen_end":873054,"gen_start":872709,"node":413,"role":"declaration","source":0,"src_end":671392,"src_start":671127},{"artifact":1,"gen_end":873408,"gen_start":873054,"node":414,"role":"declaration","source":0,"src_end":671670,"src_start":671394},{"artifact":1,"gen_end":873697,"gen_start":873408,"node":415,"role":"declaration","source":0,"src_end":671895,"src_start":671672},{"artifact":1,"gen_end":883735,"gen_start":873697,"node":416,"role":"declaration","source":0,"src_end":679512,"src_start":671897},{"artifact":1,"gen_end":884297,"gen_start":883735,"node":417,"role":"declaration","source":0,"src_end":679927,"src_start":679514},{"artifact":1,"gen_end":884947,"gen_start":884297,"node":418,"role":"declaration","source":0,"src_end":680437,"src_start":679929},{"artifact":1,"gen_end":885266,"gen_start":884947,"node":419,"role":"declaration","source":0,"src_end":680676,"src_start":680439},{"artifact":1,"gen_end":885281,"gen_start":885266,"node":210,"role":"declaration","source":0,"src_end":680712,"src_start":0}],"module":"GnafFixtures","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"},{"id":40,"kind":"semantic-declaration"},{"id":41,"kind":"semantic-declaration"},{"id":42,"kind":"semantic-declaration"},{"id":43,"kind":"semantic-declaration"},{"id":44,"kind":"semantic-declaration"},{"id":45,"kind":"semantic-declaration"},{"id":46,"kind":"semantic-declaration"},{"id":47,"kind":"semantic-declaration"},{"id":48,"kind":"semantic-declaration"},{"id":49,"kind":"semantic-declaration"},{"id":50,"kind":"semantic-declaration"},{"id":51,"kind":"semantic-declaration"},{"id":52,"kind":"semantic-declaration"},{"id":53,"kind":"semantic-declaration"},{"id":54,"kind":"semantic-declaration"},{"id":55,"kind":"semantic-declaration"},{"id":56,"kind":"semantic-declaration"},{"id":57,"kind":"semantic-declaration"},{"id":58,"kind":"semantic-declaration"},{"id":59,"kind":"semantic-declaration"},{"id":60,"kind":"semantic-declaration"},{"id":61,"kind":"semantic-declaration"},{"id":62,"kind":"semantic-declaration"},{"id":63,"kind":"semantic-declaration"},{"id":64,"kind":"semantic-declaration"},{"id":65,"kind":"semantic-declaration"},{"id":66,"kind":"semantic-declaration"},{"id":67,"kind":"semantic-declaration"},{"id":68,"kind":"semantic-declaration"},{"id":69,"kind":"semantic-declaration"},{"id":70,"kind":"semantic-declaration"},{"id":71,"kind":"semantic-declaration"},{"id":72,"kind":"semantic-declaration"},{"id":73,"kind":"semantic-declaration"},{"id":74,"kind":"semantic-declaration"},{"id":75,"kind":"semantic-declaration"},{"id":76,"kind":"semantic-declaration"},{"id":77,"kind":"semantic-declaration"},{"id":78,"kind":"semantic-declaration"},{"id":79,"kind":"semantic-declaration"},{"id":80,"kind":"semantic-declaration"},{"id":81,"kind":"semantic-declaration"},{"id":82,"kind":"semantic-declaration"},{"id":83,"kind":"semantic-declaration"},{"id":84,"kind":"semantic-declaration"},{"id":85,"kind":"semantic-declaration"},{"id":86,"kind":"semantic-declaration"},{"id":87,"kind":"semantic-declaration"},{"id":88,"kind":"semantic-declaration"},{"id":89,"kind":"semantic-declaration"},{"id":90,"kind":"semantic-declaration"},{"id":91,"kind":"semantic-declaration"},{"id":92,"kind":"semantic-declaration"},{"id":93,"kind":"semantic-declaration"},{"id":94,"kind":"semantic-declaration"},{"id":95,"kind":"semantic-declaration"},{"id":96,"kind":"semantic-declaration"},{"id":97,"kind":"semantic-declaration"},{"id":98,"kind":"semantic-declaration"},{"id":99,"kind":"semantic-declaration"},{"id":100,"kind":"semantic-declaration"},{"id":101,"kind":"semantic-declaration"},{"id":102,"kind":"semantic-declaration"},{"id":103,"kind":"semantic-declaration"},{"id":104,"kind":"semantic-declaration"},{"id":105,"kind":"semantic-declaration"},{"id":106,"kind":"semantic-declaration"},{"id":107,"kind":"semantic-declaration"},{"id":108,"kind":"semantic-declaration"},{"id":109,"kind":"semantic-declaration"},{"id":110,"kind":"semantic-declaration"},{"id":111,"kind":"semantic-declaration"},{"id":112,"kind":"semantic-declaration"},{"id":113,"kind":"semantic-declaration"},{"id":114,"kind":"semantic-declaration"},{"id":115,"kind":"semantic-declaration"},{"id":116,"kind":"semantic-declaration"},{"id":117,"kind":"semantic-declaration"},{"id":118,"kind":"semantic-declaration"},{"id":119,"kind":"semantic-declaration"},{"id":120,"kind":"semantic-declaration"},{"id":121,"kind":"semantic-declaration"},{"id":122,"kind":"semantic-declaration"},{"id":123,"kind":"semantic-declaration"},{"id":124,"kind":"semantic-declaration"},{"id":125,"kind":"semantic-declaration"},{"id":126,"kind":"semantic-declaration"},{"id":127,"kind":"semantic-declaration"},{"id":128,"kind":"semantic-declaration"},{"id":129,"kind":"semantic-declaration"},{"id":130,"kind":"semantic-declaration"},{"id":131,"kind":"semantic-declaration"},{"id":132,"kind":"semantic-declaration"},{"id":133,"kind":"semantic-declaration"},{"id":134,"kind":"semantic-declaration"},{"id":135,"kind":"semantic-declaration"},{"id":136,"kind":"semantic-declaration"},{"id":137,"kind":"semantic-declaration"},{"id":138,"kind":"semantic-declaration"},{"id":139,"kind":"semantic-declaration"},{"id":140,"kind":"semantic-declaration"},{"id":141,"kind":"semantic-declaration"},{"id":142,"kind":"semantic-declaration"},{"id":143,"kind":"semantic-declaration"},{"id":144,"kind":"semantic-declaration"},{"id":145,"kind":"semantic-declaration"},{"id":146,"kind":"semantic-declaration"},{"id":147,"kind":"semantic-declaration"},{"id":148,"kind":"semantic-declaration"},{"id":149,"kind":"semantic-declaration"},{"id":150,"kind":"semantic-declaration"},{"id":151,"kind":"semantic-declaration"},{"id":152,"kind":"semantic-declaration"},{"id":153,"kind":"semantic-declaration"},{"id":154,"kind":"semantic-declaration"},{"id":155,"kind":"semantic-declaration"},{"id":156,"kind":"semantic-declaration"},{"id":157,"kind":"semantic-declaration"},{"id":158,"kind":"semantic-declaration"},{"id":159,"kind":"semantic-declaration"},{"id":160,"kind":"semantic-declaration"},{"id":161,"kind":"semantic-declaration"},{"id":162,"kind":"semantic-declaration"},{"id":163,"kind":"semantic-declaration"},{"id":164,"kind":"semantic-declaration"},{"id":165,"kind":"semantic-declaration"},{"id":166,"kind":"semantic-declaration"},{"id":167,"kind":"semantic-declaration"},{"id":168,"kind":"semantic-declaration"},{"id":169,"kind":"semantic-declaration"},{"id":170,"kind":"semantic-declaration"},{"id":171,"kind":"semantic-declaration"},{"id":172,"kind":"semantic-declaration"},{"id":173,"kind":"semantic-declaration"},{"id":174,"kind":"semantic-declaration"},{"id":175,"kind":"semantic-declaration"},{"id":176,"kind":"semantic-declaration"},{"id":177,"kind":"semantic-declaration"},{"id":178,"kind":"semantic-declaration"},{"id":179,"kind":"semantic-declaration"},{"id":180,"kind":"semantic-declaration"},{"id":181,"kind":"semantic-declaration"},{"id":182,"kind":"semantic-declaration"},{"id":183,"kind":"semantic-declaration"},{"id":184,"kind":"semantic-declaration"},{"id":185,"kind":"semantic-declaration"},{"id":186,"kind":"semantic-declaration"},{"id":187,"kind":"semantic-declaration"},{"id":188,"kind":"semantic-declaration"},{"id":189,"kind":"semantic-declaration"},{"id":190,"kind":"semantic-declaration"},{"id":191,"kind":"semantic-declaration"},{"id":192,"kind":"semantic-declaration"},{"id":193,"kind":"semantic-declaration"},{"id":194,"kind":"semantic-declaration"},{"id":195,"kind":"semantic-declaration"},{"id":196,"kind":"semantic-declaration"},{"id":197,"kind":"semantic-declaration"},{"id":198,"kind":"semantic-declaration"},{"id":199,"kind":"semantic-declaration"},{"id":200,"kind":"semantic-declaration"},{"id":201,"kind":"semantic-declaration"},{"id":202,"kind":"semantic-declaration"},{"id":203,"kind":"semantic-declaration"},{"id":204,"kind":"semantic-declaration"},{"id":205,"kind":"semantic-declaration"},{"id":206,"kind":"semantic-declaration"},{"id":207,"kind":"semantic-declaration"},{"id":208,"kind":"semantic-declaration"},{"id":209,"kind":"semantic-declaration"},{"id":210,"kind":"semantic-latex-module"},{"id":211,"kind":"semantic-declaration"},{"id":212,"kind":"semantic-declaration"},{"id":213,"kind":"semantic-declaration"},{"id":214,"kind":"semantic-declaration"},{"id":215,"kind":"semantic-declaration"},{"id":216,"kind":"semantic-declaration"},{"id":217,"kind":"semantic-declaration"},{"id":218,"kind":"semantic-declaration"},{"id":219,"kind":"semantic-declaration"},{"id":220,"kind":"semantic-declaration"},{"id":221,"kind":"semantic-declaration"},{"id":222,"kind":"semantic-declaration"},{"id":223,"kind":"semantic-declaration"},{"id":224,"kind":"semantic-declaration"},{"id":225,"kind":"semantic-declaration"},{"id":226,"kind":"semantic-declaration"},{"id":227,"kind":"semantic-declaration"},{"id":228,"kind":"semantic-declaration"},{"id":229,"kind":"semantic-declaration"},{"id":230,"kind":"semantic-declaration"},{"id":231,"kind":"semantic-declaration"},{"id":232,"kind":"semantic-declaration"},{"id":233,"kind":"semantic-declaration"},{"id":234,"kind":"semantic-declaration"},{"id":235,"kind":"semantic-declaration"},{"id":236,"kind":"semantic-declaration"},{"id":237,"kind":"semantic-declaration"},{"id":238,"kind":"semantic-declaration"},{"id":239,"kind":"semantic-declaration"},{"id":240,"kind":"semantic-declaration"},{"id":241,"kind":"semantic-declaration"},{"id":242,"kind":"semantic-declaration"},{"id":243,"kind":"semantic-declaration"},{"id":244,"kind":"semantic-declaration"},{"id":245,"kind":"semantic-declaration"},{"id":246,"kind":"semantic-declaration"},{"id":247,"kind":"semantic-declaration"},{"id":248,"kind":"semantic-declaration"},{"id":249,"kind":"semantic-declaration"},{"id":250,"kind":"semantic-declaration"},{"id":251,"kind":"semantic-declaration"},{"id":252,"kind":"semantic-declaration"},{"id":253,"kind":"semantic-declaration"},{"id":254,"kind":"semantic-declaration"},{"id":255,"kind":"semantic-declaration"},{"id":256,"kind":"semantic-declaration"},{"id":257,"kind":"semantic-declaration"},{"id":258,"kind":"semantic-declaration"},{"id":259,"kind":"semantic-declaration"},{"id":260,"kind":"semantic-declaration"},{"id":261,"kind":"semantic-declaration"},{"id":262,"kind":"semantic-declaration"},{"id":263,"kind":"semantic-declaration"},{"id":264,"kind":"semantic-declaration"},{"id":265,"kind":"semantic-declaration"},{"id":266,"kind":"semantic-declaration"},{"id":267,"kind":"semantic-declaration"},{"id":268,"kind":"semantic-declaration"},{"id":269,"kind":"semantic-declaration"},{"id":270,"kind":"semantic-declaration"},{"id":271,"kind":"semantic-declaration"},{"id":272,"kind":"semantic-declaration"},{"id":273,"kind":"semantic-declaration"},{"id":274,"kind":"semantic-declaration"},{"id":275,"kind":"semantic-declaration"},{"id":276,"kind":"semantic-declaration"},{"id":277,"kind":"semantic-declaration"},{"id":278,"kind":"semantic-declaration"},{"id":279,"kind":"semantic-declaration"},{"id":280,"kind":"semantic-declaration"},{"id":281,"kind":"semantic-declaration"},{"id":282,"kind":"semantic-declaration"},{"id":283,"kind":"semantic-declaration"},{"id":284,"kind":"semantic-declaration"},{"id":285,"kind":"semantic-declaration"},{"id":286,"kind":"semantic-declaration"},{"id":287,"kind":"semantic-declaration"},{"id":288,"kind":"semantic-declaration"},{"id":289,"kind":"semantic-declaration"},{"id":290,"kind":"semantic-declaration"},{"id":291,"kind":"semantic-declaration"},{"id":292,"kind":"semantic-declaration"},{"id":293,"kind":"semantic-declaration"},{"id":294,"kind":"semantic-declaration"},{"id":295,"kind":"semantic-declaration"},{"id":296,"kind":"semantic-declaration"},{"id":297,"kind":"semantic-declaration"},{"id":298,"kind":"semantic-declaration"},{"id":299,"kind":"semantic-declaration"},{"id":300,"kind":"semantic-declaration"},{"id":301,"kind":"semantic-declaration"},{"id":302,"kind":"semantic-declaration"},{"id":303,"kind":"semantic-declaration"},{"id":304,"kind":"semantic-declaration"},{"id":305,"kind":"semantic-declaration"},{"id":306,"kind":"semantic-declaration"},{"id":307,"kind":"semantic-declaration"},{"id":308,"kind":"semantic-declaration"},{"id":309,"kind":"semantic-declaration"},{"id":310,"kind":"semantic-declaration"},{"id":311,"kind":"semantic-declaration"},{"id":312,"kind":"semantic-declaration"},{"id":313,"kind":"semantic-declaration"},{"id":314,"kind":"semantic-declaration"},{"id":315,"kind":"semantic-declaration"},{"id":316,"kind":"semantic-declaration"},{"id":317,"kind":"semantic-declaration"},{"id":318,"kind":"semantic-declaration"},{"id":319,"kind":"semantic-declaration"},{"id":320,"kind":"semantic-declaration"},{"id":321,"kind":"semantic-declaration"},{"id":322,"kind":"semantic-declaration"},{"id":323,"kind":"semantic-declaration"},{"id":324,"kind":"semantic-declaration"},{"id":325,"kind":"semantic-declaration"},{"id":326,"kind":"semantic-declaration"},{"id":327,"kind":"semantic-declaration"},{"id":328,"kind":"semantic-declaration"},{"id":329,"kind":"semantic-declaration"},{"id":330,"kind":"semantic-declaration"},{"id":331,"kind":"semantic-declaration"},{"id":332,"kind":"semantic-declaration"},{"id":333,"kind":"semantic-declaration"},{"id":334,"kind":"semantic-declaration"},{"id":335,"kind":"semantic-declaration"},{"id":336,"kind":"semantic-declaration"},{"id":337,"kind":"semantic-declaration"},{"id":338,"kind":"semantic-declaration"},{"id":339,"kind":"semantic-declaration"},{"id":340,"kind":"semantic-declaration"},{"id":341,"kind":"semantic-declaration"},{"id":342,"kind":"semantic-declaration"},{"id":343,"kind":"semantic-declaration"},{"id":344,"kind":"semantic-declaration"},{"id":345,"kind":"semantic-declaration"},{"id":346,"kind":"semantic-declaration"},{"id":347,"kind":"semantic-declaration"},{"id":348,"kind":"semantic-declaration"},{"id":349,"kind":"semantic-declaration"},{"id":350,"kind":"semantic-declaration"},{"id":351,"kind":"semantic-declaration"},{"id":352,"kind":"semantic-declaration"},{"id":353,"kind":"semantic-declaration"},{"id":354,"kind":"semantic-declaration"},{"id":355,"kind":"semantic-declaration"},{"id":356,"kind":"semantic-declaration"},{"id":357,"kind":"semantic-declaration"},{"id":358,"kind":"semantic-declaration"},{"id":359,"kind":"semantic-declaration"},{"id":360,"kind":"semantic-declaration"},{"id":361,"kind":"semantic-declaration"},{"id":362,"kind":"semantic-declaration"},{"id":363,"kind":"semantic-declaration"},{"id":364,"kind":"semantic-declaration"},{"id":365,"kind":"semantic-declaration"},{"id":366,"kind":"semantic-declaration"},{"id":367,"kind":"semantic-declaration"},{"id":368,"kind":"semantic-declaration"},{"id":369,"kind":"semantic-declaration"},{"id":370,"kind":"semantic-declaration"},{"id":371,"kind":"semantic-declaration"},{"id":372,"kind":"semantic-declaration"},{"id":373,"kind":"semantic-declaration"},{"id":374,"kind":"semantic-declaration"},{"id":375,"kind":"semantic-declaration"},{"id":376,"kind":"semantic-declaration"},{"id":377,"kind":"semantic-declaration"},{"id":378,"kind":"semantic-declaration"},{"id":379,"kind":"semantic-declaration"},{"id":380,"kind":"semantic-declaration"},{"id":381,"kind":"semantic-declaration"},{"id":382,"kind":"semantic-declaration"},{"id":383,"kind":"semantic-declaration"},{"id":384,"kind":"semantic-declaration"},{"id":385,"kind":"semantic-declaration"},{"id":386,"kind":"semantic-declaration"},{"id":387,"kind":"semantic-declaration"},{"id":388,"kind":"semantic-declaration"},{"id":389,"kind":"semantic-declaration"},{"id":390,"kind":"semantic-declaration"},{"id":391,"kind":"semantic-declaration"},{"id":392,"kind":"semantic-declaration"},{"id":393,"kind":"semantic-declaration"},{"id":394,"kind":"semantic-declaration"},{"id":395,"kind":"semantic-declaration"},{"id":396,"kind":"semantic-declaration"},{"id":397,"kind":"semantic-declaration"},{"id":398,"kind":"semantic-declaration"},{"id":399,"kind":"semantic-declaration"},{"id":400,"kind":"semantic-declaration"},{"id":401,"kind":"semantic-declaration"},{"id":402,"kind":"semantic-declaration"},{"id":403,"kind":"semantic-declaration"},{"id":404,"kind":"semantic-declaration"},{"id":405,"kind":"semantic-declaration"},{"id":406,"kind":"semantic-declaration"},{"id":407,"kind":"semantic-declaration"},{"id":408,"kind":"semantic-declaration"},{"id":409,"kind":"semantic-declaration"},{"id":410,"kind":"semantic-declaration"},{"id":411,"kind":"semantic-declaration"},{"id":412,"kind":"semantic-declaration"},{"id":413,"kind":"semantic-declaration"},{"id":414,"kind":"semantic-declaration"},{"id":415,"kind":"semantic-declaration"},{"id":416,"kind":"semantic-declaration"},{"id":417,"kind":"semantic-declaration"},{"id":418,"kind":"semantic-declaration"},{"id":419,"kind":"semantic-declaration"}],"semantic_id":"c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517","source_id":"ce718723d5d252a9adafdc3cb3b76931b1d91e053dd3e7e31bcb9b9496a1941c","sources":[{"id":0,"kind":"file","path":"src/GnafFixtures.lex.tex","sha256":"e7f06e087d0ec40b8dd61f2fe1c51258ec55d93f5e5e16938c27598661e8d913"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/LexLeanTarget/GnafFixtures.lean"},{"id":1,"kind":"tex","path":"modules/LexLeanTarget/GnafFixtures.tex"}],"mappings":[{"artifact":0,"gen_end":327,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":680712,"src_start":0},{"artifact":0,"gen_end":10109,"gen_start":327,"node":1,"role":"declaration","source":0,"src_end":7817,"src_start":200},{"artifact":0,"gen_end":10564,"gen_start":10109,"node":2,"role":"declaration","source":0,"src_end":8234,"src_start":7819},{"artifact":0,"gen_end":11066,"gen_start":10564,"node":3,"role":"declaration","source":0,"src_end":8746,"src_start":8236},{"artifact":0,"gen_end":11237,"gen_start":11066,"node":4,"role":"declaration","source":0,"src_end":8987,"src_start":8748},{"artifact":0,"gen_end":21021,"gen_start":11237,"node":5,"role":"declaration","source":0,"src_end":16608,"src_start":8989},{"artifact":0,"gen_end":21482,"gen_start":21021,"node":6,"role":"declaration","source":0,"src_end":17031,"src_start":16610},{"artifact":0,"gen_end":21990,"gen_start":21482,"node":7,"role":"declaration","source":0,"src_end":17549,"src_start":17033},{"artifact":0,"gen_end":22167,"gen_start":21990,"node":8,"role":"declaration","source":0,"src_end":17796,"src_start":17551},{"artifact":0,"gen_end":35192,"gen_start":22167,"node":9,"role":"declaration","source":0,"src_end":27873,"src_start":17798},{"artifact":0,"gen_end":35950,"gen_start":35192,"node":10,"role":"declaration","source":0,"src_end":28537,"src_start":27875},{"artifact":0,"gen_end":36780,"gen_start":35950,"node":11,"role":"declaration","source":0,"src_end":29329,"src_start":28539},{"artifact":0,"gen_end":36948,"gen_start":36780,"node":12,"role":"declaration","source":0,"src_end":29569,"src_start":29331},{"artifact":0,"gen_end":57064,"gen_start":36948,"node":13,"role":"declaration","source":0,"src_end":45993,"src_start":29571},{"artifact":0,"gen_end":57529,"gen_start":57064,"node":14,"role":"declaration","source":0,"src_end":46420,"src_start":45995},{"artifact":0,"gen_end":58016,"gen_start":57529,"node":15,"role":"declaration","source":0,"src_end":46929,"src_start":46422},{"artifact":0,"gen_end":58168,"gen_start":58016,"node":16,"role":"declaration","source":0,"src_end":47161,"src_start":46931},{"artifact":0,"gen_end":68390,"gen_start":58168,"node":17,"role":"declaration","source":0,"src_end":55137,"src_start":47163},{"artifact":0,"gen_end":68723,"gen_start":68390,"node":18,"role":"declaration","source":0,"src_end":55460,"src_start":55139},{"artifact":0,"gen_end":69119,"gen_start":68723,"node":19,"role":"declaration","source":0,"src_end":55882,"src_start":55462},{"artifact":0,"gen_end":69297,"gen_start":69119,"node":20,"role":"declaration","source":0,"src_end":56130,"src_start":55884},{"artifact":0,"gen_end":79087,"gen_start":69297,"node":21,"role":"declaration","source":0,"src_end":63757,"src_start":56132},{"artifact":0,"gen_end":79554,"gen_start":79087,"node":22,"role":"declaration","source":0,"src_end":64186,"src_start":63759},{"artifact":0,"gen_end":80068,"gen_start":79554,"node":23,"role":"declaration","source":0,"src_end":64710,"src_start":64188},{"artifact":0,"gen_end":80254,"gen_start":80068,"node":24,"role":"declaration","source":0,"src_end":64970,"src_start":64712},{"artifact":0,"gen_end":100375,"gen_start":80254,"node":25,"role":"declaration","source":0,"src_end":81399,"src_start":64972},{"artifact":0,"gen_end":100846,"gen_start":100375,"node":26,"role":"declaration","source":0,"src_end":81832,"src_start":81401},{"artifact":0,"gen_end":101339,"gen_start":100846,"node":27,"role":"declaration","source":0,"src_end":82347,"src_start":81834},{"artifact":0,"gen_end":101497,"gen_start":101339,"node":28,"role":"declaration","source":0,"src_end":82585,"src_start":82349},{"artifact":0,"gen_end":111285,"gen_start":101497,"node":29,"role":"declaration","source":0,"src_end":90210,"src_start":82587},{"artifact":0,"gen_end":111754,"gen_start":111285,"node":30,"role":"declaration","source":0,"src_end":90641,"src_start":90212},{"artifact":0,"gen_end":112270,"gen_start":111754,"node":31,"role":"declaration","source":0,"src_end":91167,"src_start":90643},{"artifact":0,"gen_end":112458,"gen_start":112270,"node":32,"role":"declaration","source":0,"src_end":91429,"src_start":91169},{"artifact":0,"gen_end":125487,"gen_start":112458,"node":33,"role":"declaration","source":0,"src_end":101510,"src_start":91431},{"artifact":0,"gen_end":126249,"gen_start":125487,"node":34,"role":"declaration","source":0,"src_end":102178,"src_start":101512},{"artifact":0,"gen_end":127083,"gen_start":126249,"node":35,"role":"declaration","source":0,"src_end":102974,"src_start":102180},{"artifact":0,"gen_end":127258,"gen_start":127083,"node":36,"role":"declaration","source":0,"src_end":103225,"src_start":102976},{"artifact":0,"gen_end":135083,"gen_start":127258,"node":37,"role":"declaration","source":0,"src_end":109365,"src_start":103227},{"artifact":0,"gen_end":135558,"gen_start":135083,"node":38,"role":"declaration","source":0,"src_end":109802,"src_start":109367},{"artifact":0,"gen_end":136059,"gen_start":135558,"node":39,"role":"declaration","source":0,"src_end":110325,"src_start":109804},{"artifact":0,"gen_end":136250,"gen_start":136059,"node":40,"role":"declaration","source":0,"src_end":110586,"src_start":110327},{"artifact":0,"gen_end":142223,"gen_start":136250,"node":41,"role":"declaration","source":0,"src_end":115319,"src_start":110588},{"artifact":0,"gen_end":142427,"gen_start":142223,"node":42,"role":"declaration","source":0,"src_end":115531,"src_start":115321},{"artifact":0,"gen_end":142650,"gen_start":142427,"node":43,"role":"declaration","source":0,"src_end":115808,"src_start":115533},{"artifact":0,"gen_end":142800,"gen_start":142650,"node":44,"role":"declaration","source":0,"src_end":116038,"src_start":115810},{"artifact":0,"gen_end":152176,"gen_start":142800,"node":45,"role":"declaration","source":0,"src_end":123350,"src_start":116040},{"artifact":0,"gen_end":152649,"gen_start":152176,"node":46,"role":"declaration","source":0,"src_end":123785,"src_start":123352},{"artifact":0,"gen_end":153166,"gen_start":152649,"node":47,"role":"declaration","source":0,"src_end":124312,"src_start":123787},{"artifact":0,"gen_end":153354,"gen_start":153166,"node":48,"role":"declaration","source":0,"src_end":124570,"src_start":124314},{"artifact":0,"gen_end":162498,"gen_start":153354,"node":49,"role":"declaration","source":0,"src_end":131650,"src_start":124572},{"artifact":0,"gen_end":162973,"gen_start":162498,"node":50,"role":"declaration","source":0,"src_end":132087,"src_start":131652},{"artifact":0,"gen_end":163492,"gen_start":162973,"node":51,"role":"declaration","source":0,"src_end":132616,"src_start":132089},{"artifact":0,"gen_end":163682,"gen_start":163492,"node":52,"role":"declaration","source":0,"src_end":132876,"src_start":132618},{"artifact":0,"gen_end":183799,"gen_start":163682,"node":53,"role":"declaration","source":0,"src_end":149301,"src_start":132878},{"artifact":0,"gen_end":184268,"gen_start":183799,"node":54,"role":"declaration","source":0,"src_end":149732,"src_start":149303},{"artifact":0,"gen_end":184759,"gen_start":184268,"node":55,"role":"declaration","source":0,"src_end":150245,"src_start":149734},{"artifact":0,"gen_end":184915,"gen_start":184759,"node":56,"role":"declaration","source":0,"src_end":150481,"src_start":150247},{"artifact":0,"gen_end":197940,"gen_start":184915,"node":57,"role":"declaration","source":0,"src_end":160558,"src_start":150483},{"artifact":0,"gen_end":198700,"gen_start":197940,"node":58,"role":"declaration","source":0,"src_end":161224,"src_start":160560},{"artifact":0,"gen_end":199532,"gen_start":198700,"node":59,"role":"declaration","source":0,"src_end":162018,"src_start":161226},{"artifact":0,"gen_end":199702,"gen_start":199532,"node":60,"role":"declaration","source":0,"src_end":162260,"src_start":162020},{"artifact":0,"gen_end":209678,"gen_start":199702,"node":61,"role":"declaration","source":0,"src_end":170047,"src_start":162262},{"artifact":0,"gen_end":210141,"gen_start":209678,"node":62,"role":"declaration","source":0,"src_end":170472,"src_start":170049},{"artifact":0,"gen_end":210651,"gen_start":210141,"node":63,"role":"declaration","source":0,"src_end":170992,"src_start":170474},{"artifact":0,"gen_end":210830,"gen_start":210651,"node":64,"role":"declaration","source":0,"src_end":171241,"src_start":170994},{"artifact":0,"gen_end":220977,"gen_start":210830,"node":65,"role":"declaration","source":0,"src_end":179187,"src_start":171243},{"artifact":0,"gen_end":221446,"gen_start":220977,"node":66,"role":"declaration","source":0,"src_end":179618,"src_start":179189},{"artifact":0,"gen_end":221962,"gen_start":221446,"node":67,"role":"declaration","source":0,"src_end":180144,"src_start":179620},{"artifact":0,"gen_end":222147,"gen_start":221962,"node":68,"role":"declaration","source":0,"src_end":180399,"src_start":180146},{"artifact":0,"gen_end":232296,"gen_start":222147,"node":69,"role":"declaration","source":0,"src_end":188347,"src_start":180401},{"artifact":0,"gen_end":232767,"gen_start":232296,"node":70,"role":"declaration","source":0,"src_end":188780,"src_start":188349},{"artifact":0,"gen_end":233285,"gen_start":232767,"node":71,"role":"declaration","source":0,"src_end":189308,"src_start":188782},{"artifact":0,"gen_end":233472,"gen_start":233285,"node":72,"role":"declaration","source":0,"src_end":189565,"src_start":189310},{"artifact":0,"gen_end":304190,"gen_start":233472,"node":73,"role":"declaration","source":0,"src_end":244998,"src_start":189567},{"artifact":0,"gen_end":304474,"gen_start":304190,"node":74,"role":"declaration","source":0,"src_end":245278,"src_start":245000},{"artifact":0,"gen_end":304816,"gen_start":304474,"node":75,"role":"declaration","source":0,"src_end":245654,"src_start":245280},{"artifact":0,"gen_end":304990,"gen_start":304816,"node":76,"role":"declaration","source":0,"src_end":245898,"src_start":245656},{"artifact":0,"gen_end":375712,"gen_start":304990,"node":77,"role":"declaration","source":0,"src_end":301335,"src_start":245900},{"artifact":0,"gen_end":376000,"gen_start":375712,"node":78,"role":"declaration","source":0,"src_end":301619,"src_start":301337},{"artifact":0,"gen_end":376346,"gen_start":376000,"node":79,"role":"declaration","source":0,"src_end":301999,"src_start":301621},{"artifact":0,"gen_end":376519,"gen_start":376346,"node":80,"role":"declaration","source":0,"src_end":302244,"src_start":302001},{"artifact":0,"gen_end":386305,"gen_start":376519,"node":81,"role":"declaration","source":0,"src_end":309867,"src_start":302246},{"artifact":0,"gen_end":386772,"gen_start":386305,"node":82,"role":"declaration","source":0,"src_end":310296,"src_start":309869},{"artifact":0,"gen_end":386970,"gen_start":386772,"node":83,"role":"declaration","source":0,"src_end":310566,"src_start":310298},{"artifact":0,"gen_end":391377,"gen_start":386970,"node":84,"role":"declaration","source":0,"src_end":314109,"src_start":310568},{"artifact":0,"gen_end":391542,"gen_start":391377,"node":85,"role":"declaration","source":0,"src_end":314288,"src_start":314111},{"artifact":0,"gen_end":391740,"gen_start":391542,"node":86,"role":"declaration","source":0,"src_end":314558,"src_start":314290},{"artifact":0,"gen_end":401534,"gen_start":391740,"node":87,"role":"declaration","source":0,"src_end":322189,"src_start":314560},{"artifact":0,"gen_end":402013,"gen_start":401534,"node":88,"role":"declaration","source":0,"src_end":322630,"src_start":322191},{"artifact":0,"gen_end":402223,"gen_start":402013,"node":89,"role":"declaration","source":0,"src_end":322912,"src_start":322632},{"artifact":0,"gen_end":412143,"gen_start":402223,"node":90,"role":"declaration","source":0,"src_end":330649,"src_start":322914},{"artifact":0,"gen_end":412608,"gen_start":412143,"node":91,"role":"declaration","source":0,"src_end":331076,"src_start":330651},{"artifact":0,"gen_end":412854,"gen_start":412608,"node":92,"role":"declaration","source":0,"src_end":331386,"src_start":331078},{"artifact":0,"gen_end":422654,"gen_start":412854,"node":93,"role":"declaration","source":0,"src_end":339021,"src_start":331388},{"artifact":0,"gen_end":423133,"gen_start":422654,"node":94,"role":"declaration","source":0,"src_end":339462,"src_start":339023},{"artifact":0,"gen_end":423380,"gen_start":423133,"node":95,"role":"declaration","source":0,"src_end":339773,"src_start":339464},{"artifact":0,"gen_end":427829,"gen_start":423380,"node":96,"role":"declaration","source":0,"src_end":343352,"src_start":339775},{"artifact":0,"gen_end":428002,"gen_start":427829,"node":97,"role":"declaration","source":0,"src_end":343539,"src_start":343354},{"artifact":0,"gen_end":428212,"gen_start":428002,"node":98,"role":"declaration","source":0,"src_end":343821,"src_start":343541},{"artifact":0,"gen_end":438129,"gen_start":428212,"node":99,"role":"declaration","source":0,"src_end":351555,"src_start":343823},{"artifact":0,"gen_end":438598,"gen_start":438129,"node":100,"role":"declaration","source":0,"src_end":351986,"src_start":351557},{"artifact":0,"gen_end":438840,"gen_start":438598,"node":101,"role":"declaration","source":0,"src_end":352292,"src_start":351988},{"artifact":0,"gen_end":447563,"gen_start":438840,"node":102,"role":"declaration","source":0,"src_end":359050,"src_start":352294},{"artifact":0,"gen_end":448024,"gen_start":447563,"node":103,"role":"declaration","source":0,"src_end":359473,"src_start":359052},{"artifact":0,"gen_end":448213,"gen_start":448024,"node":104,"role":"declaration","source":0,"src_end":359734,"src_start":359475},{"artifact":0,"gen_end":458000,"gen_start":448213,"node":105,"role":"declaration","source":0,"src_end":367358,"src_start":359736},{"artifact":0,"gen_end":458469,"gen_start":458000,"node":106,"role":"declaration","source":0,"src_end":367789,"src_start":367360},{"artifact":0,"gen_end":458709,"gen_start":458469,"node":107,"role":"declaration","source":0,"src_end":368093,"src_start":367791},{"artifact":0,"gen_end":468648,"gen_start":458709,"node":108,"role":"declaration","source":0,"src_end":375849,"src_start":368095},{"artifact":0,"gen_end":469153,"gen_start":468648,"node":109,"role":"declaration","source":0,"src_end":376316,"src_start":375851},{"artifact":0,"gen_end":469439,"gen_start":469153,"node":110,"role":"declaration","source":0,"src_end":376666,"src_start":376318},{"artifact":0,"gen_end":479242,"gen_start":469439,"node":111,"role":"declaration","source":0,"src_end":384302,"src_start":376668},{"artifact":0,"gen_end":479721,"gen_start":479242,"node":112,"role":"declaration","source":0,"src_end":384743,"src_start":384304},{"artifact":0,"gen_end":479933,"gen_start":479721,"node":113,"role":"declaration","source":0,"src_end":385027,"src_start":384745},{"artifact":0,"gen_end":484353,"gen_start":479933,"node":114,"role":"declaration","source":0,"src_end":388583,"src_start":385029},{"artifact":0,"gen_end":484530,"gen_start":484353,"node":115,"role":"declaration","source":0,"src_end":388774,"src_start":388585},{"artifact":0,"gen_end":484746,"gen_start":484530,"node":116,"role":"declaration","source":0,"src_end":389062,"src_start":388776},{"artifact":0,"gen_end":494530,"gen_start":484746,"node":117,"role":"declaration","source":0,"src_end":396683,"src_start":389064},{"artifact":0,"gen_end":495007,"gen_start":494530,"node":118,"role":"declaration","source":0,"src_end":397122,"src_start":396685},{"artifact":0,"gen_end":495220,"gen_start":495007,"node":119,"role":"declaration","source":0,"src_end":397407,"src_start":397124},{"artifact":0,"gen_end":505013,"gen_start":495220,"node":120,"role":"declaration","source":0,"src_end":405037,"src_start":397409},{"artifact":0,"gen_end":505494,"gen_start":505013,"node":121,"role":"declaration","source":0,"src_end":405480,"src_start":405039},{"artifact":0,"gen_end":505713,"gen_start":505494,"node":122,"role":"declaration","source":0,"src_end":405771,"src_start":405482},{"artifact":0,"gen_end":510139,"gen_start":505713,"node":123,"role":"declaration","source":0,"src_end":409333,"src_start":405773},{"artifact":0,"gen_end":510324,"gen_start":510139,"node":124,"role":"declaration","source":0,"src_end":409532,"src_start":409335},{"artifact":0,"gen_end":510552,"gen_start":510324,"node":125,"role":"declaration","source":0,"src_end":409832,"src_start":409534},{"artifact":0,"gen_end":520418,"gen_start":510552,"node":126,"role":"declaration","source":0,"src_end":417529,"src_start":409834},{"artifact":0,"gen_end":520915,"gen_start":520418,"node":127,"role":"declaration","source":0,"src_end":417988,"src_start":417531},{"artifact":0,"gen_end":521145,"gen_start":520915,"node":128,"role":"declaration","source":0,"src_end":418290,"src_start":417990},{"artifact":0,"gen_end":531059,"gen_start":521145,"node":129,"role":"declaration","source":0,"src_end":426021,"src_start":418292},{"artifact":0,"gen_end":531518,"gen_start":531059,"node":130,"role":"declaration","source":0,"src_end":426442,"src_start":426023},{"artifact":0,"gen_end":531755,"gen_start":531518,"node":131,"role":"declaration","source":0,"src_end":426743,"src_start":426444},{"artifact":0,"gen_end":551125,"gen_start":531755,"node":132,"role":"declaration","source":0,"src_end":442012,"src_start":426745},{"artifact":0,"gen_end":551316,"gen_start":551125,"node":133,"role":"declaration","source":0,"src_end":442217,"src_start":442014},{"artifact":0,"gen_end":551544,"gen_start":551316,"node":134,"role":"declaration","source":0,"src_end":442517,"src_start":442219},{"artifact":0,"gen_end":622271,"gen_start":551544,"node":135,"role":"declaration","source":0,"src_end":497959,"src_start":442519},{"artifact":0,"gen_end":622575,"gen_start":622271,"node":136,"role":"declaration","source":0,"src_end":498259,"src_start":497961},{"artifact":0,"gen_end":622821,"gen_start":622575,"node":137,"role":"declaration","source":0,"src_end":498569,"src_start":498261},{"artifact":0,"gen_end":632629,"gen_start":622821,"node":138,"role":"declaration","source":0,"src_end":506214,"src_start":498571},{"artifact":0,"gen_end":633114,"gen_start":632629,"node":139,"role":"declaration","source":0,"src_end":506661,"src_start":506216},{"artifact":0,"gen_end":633326,"gen_start":633114,"node":140,"role":"declaration","source":0,"src_end":506945,"src_start":506663},{"artifact":0,"gen_end":643112,"gen_start":633326,"node":141,"role":"declaration","source":0,"src_end":514568,"src_start":506947},{"artifact":0,"gen_end":643583,"gen_start":643112,"node":142,"role":"declaration","source":0,"src_end":515001,"src_start":514570},{"artifact":0,"gen_end":643785,"gen_start":643583,"node":143,"role":"declaration","source":0,"src_end":515275,"src_start":515003},{"artifact":0,"gen_end":653581,"gen_start":643785,"node":144,"role":"declaration","source":0,"src_end":522908,"src_start":515277},{"artifact":0,"gen_end":654066,"gen_start":653581,"node":145,"role":"declaration","source":0,"src_end":523355,"src_start":522910},{"artifact":0,"gen_end":654295,"gen_start":654066,"node":146,"role":"declaration","source":0,"src_end":523656,"src_start":523357},{"artifact":0,"gen_end":664209,"gen_start":654295,"node":147,"role":"declaration","source":0,"src_end":531387,"src_start":523658},{"artifact":0,"gen_end":664668,"gen_start":664209,"node":148,"role":"declaration","source":0,"src_end":531808,"src_start":531389},{"artifact":0,"gen_end":664905,"gen_start":664668,"node":149,"role":"declaration","source":0,"src_end":532109,"src_start":531810},{"artifact":0,"gen_end":674705,"gen_start":664905,"node":150,"role":"declaration","source":0,"src_end":539746,"src_start":532111},{"artifact":0,"gen_end":675198,"gen_start":674705,"node":151,"role":"declaration","source":0,"src_end":540201,"src_start":539748},{"artifact":0,"gen_end":675435,"gen_start":675198,"node":152,"role":"declaration","source":0,"src_end":540510,"src_start":540203},{"artifact":0,"gen_end":685352,"gen_start":675435,"node":153,"role":"declaration","source":0,"src_end":548244,"src_start":540512},{"artifact":0,"gen_end":685825,"gen_start":685352,"node":154,"role":"declaration","source":0,"src_end":548679,"src_start":548246},{"artifact":0,"gen_end":686064,"gen_start":685825,"node":155,"role":"declaration","source":0,"src_end":548982,"src_start":548681},{"artifact":0,"gen_end":696163,"gen_start":686064,"node":156,"role":"declaration","source":0,"src_end":556882,"src_start":548984},{"artifact":0,"gen_end":696644,"gen_start":696163,"node":157,"role":"declaration","source":0,"src_end":557325,"src_start":556884},{"artifact":0,"gen_end":696902,"gen_start":696644,"node":158,"role":"declaration","source":0,"src_end":557647,"src_start":557327},{"artifact":0,"gen_end":706565,"gen_start":696902,"node":159,"role":"declaration","source":0,"src_end":565167,"src_start":557649},{"artifact":0,"gen_end":707042,"gen_start":706565,"node":160,"role":"declaration","source":0,"src_end":565606,"src_start":565169},{"artifact":0,"gen_end":707294,"gen_start":707042,"node":161,"role":"declaration","source":0,"src_end":565922,"src_start":565608},{"artifact":0,"gen_end":717142,"gen_start":707294,"node":162,"role":"declaration","source":0,"src_end":573603,"src_start":565924},{"artifact":0,"gen_end":717633,"gen_start":717142,"node":163,"role":"declaration","source":0,"src_end":574056,"src_start":573605},{"artifact":0,"gen_end":717904,"gen_start":717633,"node":164,"role":"declaration","source":0,"src_end":574391,"src_start":574058},{"artifact":0,"gen_end":727835,"gen_start":717904,"node":165,"role":"declaration","source":0,"src_end":582139,"src_start":574393},{"artifact":0,"gen_end":728314,"gen_start":727835,"node":166,"role":"declaration","source":0,"src_end":582580,"src_start":582141},{"artifact":0,"gen_end":728574,"gen_start":728314,"node":167,"role":"declaration","source":0,"src_end":582904,"src_start":582582},{"artifact":0,"gen_end":738371,"gen_start":728574,"node":168,"role":"declaration","source":0,"src_end":590538,"src_start":582906},{"artifact":0,"gen_end":738848,"gen_start":738371,"node":169,"role":"declaration","source":0,"src_end":590977,"src_start":590540},{"artifact":0,"gen_end":739094,"gen_start":738848,"node":170,"role":"declaration","source":0,"src_end":591287,"src_start":590979},{"artifact":0,"gen_end":749029,"gen_start":739094,"node":171,"role":"declaration","source":0,"src_end":599039,"src_start":591289},{"artifact":0,"gen_end":749514,"gen_start":749029,"node":172,"role":"declaration","source":0,"src_end":599486,"src_start":599041},{"artifact":0,"gen_end":749772,"gen_start":749514,"node":173,"role":"declaration","source":0,"src_end":599808,"src_start":599488},{"artifact":0,"gen_end":759557,"gen_start":749772,"node":174,"role":"declaration","source":0,"src_end":607430,"src_start":599810},{"artifact":0,"gen_end":760028,"gen_start":759557,"node":175,"role":"declaration","source":0,"src_end":607863,"src_start":607432},{"artifact":0,"gen_end":760232,"gen_start":760028,"node":176,"role":"declaration","source":0,"src_end":608139,"src_start":607865},{"artifact":0,"gen_end":770017,"gen_start":760232,"node":177,"role":"declaration","source":0,"src_end":615761,"src_start":608141},{"artifact":0,"gen_end":770488,"gen_start":770017,"node":178,"role":"declaration","source":0,"src_end":616194,"src_start":615763},{"artifact":0,"gen_end":770692,"gen_start":770488,"node":179,"role":"declaration","source":0,"src_end":616470,"src_start":616196},{"artifact":0,"gen_end":780489,"gen_start":770692,"node":180,"role":"declaration","source":0,"src_end":624104,"src_start":616472},{"artifact":0,"gen_end":780970,"gen_start":780489,"node":181,"role":"declaration","source":0,"src_end":624547,"src_start":624106},{"artifact":0,"gen_end":781193,"gen_start":780970,"node":182,"role":"declaration","source":0,"src_end":624842,"src_start":624549},{"artifact":0,"gen_end":790989,"gen_start":781193,"node":183,"role":"declaration","source":0,"src_end":632473,"src_start":624844},{"artifact":0,"gen_end":791460,"gen_start":790989,"node":184,"role":"declaration","source":0,"src_end":632906,"src_start":632475},{"artifact":0,"gen_end":791699,"gen_start":791460,"node":185,"role":"declaration","source":0,"src_end":633209,"src_start":632908},{"artifact":0,"gen_end":801634,"gen_start":791699,"node":186,"role":"declaration","source":0,"src_end":640959,"src_start":633211},{"artifact":0,"gen_end":802115,"gen_start":801634,"node":187,"role":"declaration","source":0,"src_end":641402,"src_start":640961},{"artifact":0,"gen_end":802369,"gen_start":802115,"node":188,"role":"declaration","source":0,"src_end":641720,"src_start":641404},{"artifact":0,"gen_end":811456,"gen_start":802369,"node":189,"role":"declaration","source":0,"src_end":648764,"src_start":641722},{"artifact":0,"gen_end":811909,"gen_start":811456,"node":190,"role":"declaration","source":0,"src_end":649179,"src_start":648766},{"artifact":0,"gen_end":812405,"gen_start":811909,"node":191,"role":"declaration","source":0,"src_end":649685,"src_start":649181},{"artifact":0,"gen_end":812573,"gen_start":812405,"node":192,"role":"declaration","source":0,"src_end":649923,"src_start":649687},{"artifact":0,"gen_end":822900,"gen_start":812573,"node":193,"role":"declaration","source":0,"src_end":657956,"src_start":649925},{"artifact":0,"gen_end":823196,"gen_start":822900,"node":194,"role":"declaration","source":0,"src_end":658248,"src_start":657958},{"artifact":0,"gen_end":823535,"gen_start":823196,"node":195,"role":"declaration","source":0,"src_end":658625,"src_start":658250},{"artifact":0,"gen_end":823691,"gen_start":823535,"node":196,"role":"declaration","source":0,"src_end":658861,"src_start":658627},{"artifact":0,"gen_end":837567,"gen_start":823691,"node":197,"role":"declaration","source":0,"src_end":669575,"src_start":658863},{"artifact":0,"gen_end":837902,"gen_start":837567,"node":198,"role":"declaration","source":0,"src_end":669900,"src_start":669577},{"artifact":0,"gen_end":838300,"gen_start":837902,"node":199,"role":"declaration","source":0,"src_end":670324,"src_start":669902},{"artifact":0,"gen_end":838491,"gen_start":838300,"node":200,"role":"declaration","source":0,"src_end":670591,"src_start":670326},{"artifact":0,"gen_end":838686,"gen_start":838491,"node":201,"role":"declaration","source":0,"src_end":670858,"src_start":670593},{"artifact":0,"gen_end":838881,"gen_start":838686,"node":202,"role":"declaration","source":0,"src_end":671125,"src_start":670860},{"artifact":0,"gen_end":839076,"gen_start":838881,"node":203,"role":"declaration","source":0,"src_end":671392,"src_start":671127},{"artifact":0,"gen_end":839280,"gen_start":839076,"node":204,"role":"declaration","source":0,"src_end":671670,"src_start":671394},{"artifact":0,"gen_end":839419,"gen_start":839280,"node":205,"role":"declaration","source":0,"src_end":671895,"src_start":671672},{"artifact":0,"gen_end":849199,"gen_start":839419,"node":206,"role":"declaration","source":0,"src_end":679512,"src_start":671897},{"artifact":0,"gen_end":849652,"gen_start":849199,"node":207,"role":"declaration","source":0,"src_end":679927,"src_start":679514},{"artifact":0,"gen_end":850152,"gen_start":849652,"node":208,"role":"declaration","source":0,"src_end":680437,"src_start":679929},{"artifact":0,"gen_end":850321,"gen_start":850152,"node":209,"role":"declaration","source":0,"src_end":680676,"src_start":680439},{"artifact":0,"gen_end":850353,"gen_start":850321,"node":0,"role":"declaration","source":0,"src_end":680712,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":210,"role":"declaration","source":0,"src_end":680712,"src_start":0},{"artifact":1,"gen_end":10174,"gen_start":134,"node":211,"role":"declaration","source":0,"src_end":7817,"src_start":200},{"artifact":1,"gen_end":10738,"gen_start":10174,"node":212,"role":"declaration","source":0,"src_end":8234,"src_start":7819},{"artifact":1,"gen_end":11390,"gen_start":10738,"node":213,"role":"declaration","source":0,"src_end":8746,"src_start":8236},{"artifact":1,"gen_end":11711,"gen_start":11390,"node":214,"role":"declaration","source":0,"src_end":8987,"src_start":8748},{"artifact":1,"gen_end":21753,"gen_start":11711,"node":215,"role":"declaration","source":0,"src_end":16608,"src_start":8989},{"artifact":1,"gen_end":22323,"gen_start":21753,"node":216,"role":"declaration","source":0,"src_end":17031,"src_start":16610},{"artifact":1,"gen_end":22981,"gen_start":22323,"node":217,"role":"declaration","source":0,"src_end":17549,"src_start":17033},{"artifact":1,"gen_end":23308,"gen_start":22981,"node":218,"role":"declaration","source":0,"src_end":17796,"src_start":17551},{"artifact":1,"gen_end":36619,"gen_start":23308,"node":219,"role":"declaration","source":0,"src_end":27873,"src_start":17798},{"artifact":1,"gen_end":37486,"gen_start":36619,"node":220,"role":"declaration","source":0,"src_end":28537,"src_start":27875},{"artifact":1,"gen_end":38466,"gen_start":37486,"node":221,"role":"declaration","source":0,"src_end":29329,"src_start":28539},{"artifact":1,"gen_end":38784,"gen_start":38466,"node":222,"role":"declaration","source":0,"src_end":29569,"src_start":29331},{"artifact":1,"gen_end":59158,"gen_start":38784,"node":223,"role":"declaration","source":0,"src_end":45993,"src_start":29571},{"artifact":1,"gen_end":59732,"gen_start":59158,"node":224,"role":"declaration","source":0,"src_end":46420,"src_start":45995},{"artifact":1,"gen_end":60369,"gen_start":59732,"node":225,"role":"declaration","source":0,"src_end":46929,"src_start":46422},{"artifact":1,"gen_end":60671,"gen_start":60369,"node":226,"role":"declaration","source":0,"src_end":47161,"src_start":46931},{"artifact":1,"gen_end":71183,"gen_start":60671,"node":227,"role":"declaration","source":0,"src_end":55137,"src_start":47163},{"artifact":1,"gen_end":71625,"gen_start":71183,"node":228,"role":"declaration","source":0,"src_end":55460,"src_start":55139},{"artifact":1,"gen_end":72171,"gen_start":71625,"node":229,"role":"declaration","source":0,"src_end":55882,"src_start":55462},{"artifact":1,"gen_end":72499,"gen_start":72171,"node":230,"role":"declaration","source":0,"src_end":56130,"src_start":55884},{"artifact":1,"gen_end":82547,"gen_start":72499,"node":231,"role":"declaration","source":0,"src_end":63757,"src_start":56132},{"artifact":1,"gen_end":83123,"gen_start":82547,"node":232,"role":"declaration","source":0,"src_end":64186,"src_start":63759},{"artifact":1,"gen_end":83787,"gen_start":83123,"node":233,"role":"declaration","source":0,"src_end":64710,"src_start":64188},{"artifact":1,"gen_end":84123,"gen_start":83787,"node":234,"role":"declaration","source":0,"src_end":64970,"src_start":64712},{"artifact":1,"gen_end":104502,"gen_start":84123,"node":235,"role":"declaration","source":0,"src_end":81399,"src_start":64972},{"artifact":1,"gen_end":105082,"gen_start":104502,"node":236,"role":"declaration","source":0,"src_end":81832,"src_start":81401},{"artifact":1,"gen_end":105725,"gen_start":105082,"node":237,"role":"declaration","source":0,"src_end":82347,"src_start":81834},{"artifact":1,"gen_end":106033,"gen_start":105725,"node":238,"role":"declaration","source":0,"src_end":82585,"src_start":82349},{"artifact":1,"gen_end":116079,"gen_start":106033,"node":239,"role":"declaration","source":0,"src_end":90210,"src_start":82587},{"artifact":1,"gen_end":116657,"gen_start":116079,"node":240,"role":"declaration","source":0,"src_end":90641,"src_start":90212},{"artifact":1,"gen_end":117323,"gen_start":116657,"node":241,"role":"declaration","source":0,"src_end":91167,"src_start":90643},{"artifact":1,"gen_end":117661,"gen_start":117323,"node":242,"role":"declaration","source":0,"src_end":91429,"src_start":91169},{"artifact":1,"gen_end":130976,"gen_start":117661,"node":243,"role":"declaration","source":0,"src_end":101510,"src_start":91431},{"artifact":1,"gen_end":131847,"gen_start":130976,"node":244,"role":"declaration","source":0,"src_end":102178,"src_start":101512},{"artifact":1,"gen_end":132831,"gen_start":131847,"node":245,"role":"declaration","source":0,"src_end":102974,"src_start":102180},{"artifact":1,"gen_end":133156,"gen_start":132831,"node":246,"role":"declaration","source":0,"src_end":103225,"src_start":102976},{"artifact":1,"gen_end":141227,"gen_start":133156,"node":247,"role":"declaration","source":0,"src_end":109365,"src_start":103227},{"artifact":1,"gen_end":141811,"gen_start":141227,"node":248,"role":"declaration","source":0,"src_end":109802,"src_start":109367},{"artifact":1,"gen_end":142462,"gen_start":141811,"node":249,"role":"declaration","source":0,"src_end":110325,"src_start":109804},{"artifact":1,"gen_end":142803,"gen_start":142462,"node":250,"role":"declaration","source":0,"src_end":110586,"src_start":110327},{"artifact":1,"gen_end":148994,"gen_start":142803,"node":251,"role":"declaration","source":0,"src_end":115319,"src_start":110588},{"artifact":1,"gen_end":149307,"gen_start":148994,"node":252,"role":"declaration","source":0,"src_end":115531,"src_start":115321},{"artifact":1,"gen_end":149680,"gen_start":149307,"node":253,"role":"declaration","source":0,"src_end":115808,"src_start":115533},{"artifact":1,"gen_end":149980,"gen_start":149680,"node":254,"role":"declaration","source":0,"src_end":116038,"src_start":115810},{"artifact":1,"gen_end":159614,"gen_start":149980,"node":255,"role":"declaration","source":0,"src_end":123350,"src_start":116040},{"artifact":1,"gen_end":160196,"gen_start":159614,"node":256,"role":"declaration","source":0,"src_end":123785,"src_start":123352},{"artifact":1,"gen_end":160863,"gen_start":160196,"node":257,"role":"declaration","source":0,"src_end":124312,"src_start":123787},{"artifact":1,"gen_end":161201,"gen_start":160863,"node":258,"role":"declaration","source":0,"src_end":124570,"src_start":124314},{"artifact":1,"gen_end":170603,"gen_start":161201,"node":259,"role":"declaration","source":0,"src_end":131650,"src_start":124572},{"artifact":1,"gen_end":171187,"gen_start":170603,"node":260,"role":"declaration","source":0,"src_end":132087,"src_start":131652},{"artifact":1,"gen_end":171856,"gen_start":171187,"node":261,"role":"declaration","source":0,"src_end":132616,"src_start":132089},{"artifact":1,"gen_end":172196,"gen_start":171856,"node":262,"role":"declaration","source":0,"src_end":132876,"src_start":132618},{"artifact":1,"gen_end":192571,"gen_start":172196,"node":263,"role":"declaration","source":0,"src_end":149301,"src_start":132878},{"artifact":1,"gen_end":193149,"gen_start":192571,"node":264,"role":"declaration","source":0,"src_end":149732,"src_start":149303},{"artifact":1,"gen_end":193790,"gen_start":193149,"node":265,"role":"declaration","source":0,"src_end":150245,"src_start":149734},{"artifact":1,"gen_end":194096,"gen_start":193790,"node":266,"role":"declaration","source":0,"src_end":150481,"src_start":150247},{"artifact":1,"gen_end":207407,"gen_start":194096,"node":267,"role":"declaration","source":0,"src_end":160558,"src_start":150483},{"artifact":1,"gen_end":208276,"gen_start":207407,"node":268,"role":"declaration","source":0,"src_end":161224,"src_start":160560},{"artifact":1,"gen_end":209258,"gen_start":208276,"node":269,"role":"declaration","source":0,"src_end":162018,"src_start":161226},{"artifact":1,"gen_end":209578,"gen_start":209258,"node":270,"role":"declaration","source":0,"src_end":162260,"src_start":162020},{"artifact":1,"gen_end":219814,"gen_start":209578,"node":271,"role":"declaration","source":0,"src_end":170047,"src_start":162262},{"artifact":1,"gen_end":220386,"gen_start":219814,"node":272,"role":"declaration","source":0,"src_end":170472,"src_start":170049},{"artifact":1,"gen_end":221046,"gen_start":220386,"node":273,"role":"declaration","source":0,"src_end":170992,"src_start":170474},{"artifact":1,"gen_end":221375,"gen_start":221046,"node":274,"role":"declaration","source":0,"src_end":171241,"src_start":170994},{"artifact":1,"gen_end":231784,"gen_start":221375,"node":275,"role":"declaration","source":0,"src_end":179187,"src_start":171243},{"artifact":1,"gen_end":232362,"gen_start":231784,"node":276,"role":"declaration","source":0,"src_end":179618,"src_start":179189},{"artifact":1,"gen_end":233028,"gen_start":232362,"node":277,"role":"declaration","source":0,"src_end":180144,"src_start":179620},{"artifact":1,"gen_end":233363,"gen_start":233028,"node":278,"role":"declaration","source":0,"src_end":180399,"src_start":180146},{"artifact":1,"gen_end":243774,"gen_start":233363,"node":279,"role":"declaration","source":0,"src_end":188347,"src_start":180401},{"artifact":1,"gen_end":244354,"gen_start":243774,"node":280,"role":"declaration","source":0,"src_end":188780,"src_start":188349},{"artifact":1,"gen_end":245022,"gen_start":244354,"node":281,"role":"declaration","source":0,"src_end":189308,"src_start":188782},{"artifact":1,"gen_end":245359,"gen_start":245022,"node":282,"role":"declaration","source":0,"src_end":189565,"src_start":189310},{"artifact":1,"gen_end":316303,"gen_start":245359,"node":283,"role":"declaration","source":0,"src_end":244998,"src_start":189567},{"artifact":1,"gen_end":316696,"gen_start":316303,"node":284,"role":"declaration","source":0,"src_end":245278,"src_start":245000},{"artifact":1,"gen_end":317188,"gen_start":316696,"node":285,"role":"declaration","source":0,"src_end":245654,"src_start":245280},{"artifact":1,"gen_end":317512,"gen_start":317188,"node":286,"role":"declaration","source":0,"src_end":245898,"src_start":245656},{"artifact":1,"gen_end":388460,"gen_start":317512,"node":287,"role":"declaration","source":0,"src_end":301335,"src_start":245900},{"artifact":1,"gen_end":388857,"gen_start":388460,"node":288,"role":"declaration","source":0,"src_end":301619,"src_start":301337},{"artifact":1,"gen_end":389353,"gen_start":388857,"node":289,"role":"declaration","source":0,"src_end":301999,"src_start":301621},{"artifact":1,"gen_end":389676,"gen_start":389353,"node":290,"role":"declaration","source":0,"src_end":302244,"src_start":302001},{"artifact":1,"gen_end":399720,"gen_start":389676,"node":291,"role":"declaration","source":0,"src_end":309867,"src_start":302246},{"artifact":1,"gen_end":400296,"gen_start":399720,"node":292,"role":"declaration","source":0,"src_end":310296,"src_start":309869},{"artifact":1,"gen_end":400644,"gen_start":400296,"node":293,"role":"declaration","source":0,"src_end":310566,"src_start":310298},{"artifact":1,"gen_end":405251,"gen_start":400644,"node":294,"role":"declaration","source":0,"src_end":314109,"src_start":310568},{"artifact":1,"gen_end":405525,"gen_start":405251,"node":295,"role":"declaration","source":0,"src_end":314288,"src_start":314111},{"artifact":1,"gen_end":405873,"gen_start":405525,"node":296,"role":"declaration","source":0,"src_end":314558,"src_start":314290},{"artifact":1,"gen_end":415925,"gen_start":405873,"node":297,"role":"declaration","source":0,"src_end":322189,"src_start":314560},{"artifact":1,"gen_end":416513,"gen_start":415925,"node":298,"role":"declaration","source":0,"src_end":322630,"src_start":322191},{"artifact":1,"gen_end":416873,"gen_start":416513,"node":299,"role":"declaration","source":0,"src_end":322912,"src_start":322632},{"artifact":1,"gen_end":427053,"gen_start":416873,"node":300,"role":"declaration","source":0,"src_end":330649,"src_start":322914},{"artifact":1,"gen_end":427627,"gen_start":427053,"node":301,"role":"declaration","source":0,"src_end":331076,"src_start":330651},{"artifact":1,"gen_end":428023,"gen_start":427627,"node":302,"role":"declaration","source":0,"src_end":331386,"src_start":331078},{"artifact":1,"gen_end":438081,"gen_start":428023,"node":303,"role":"declaration","source":0,"src_end":339021,"src_start":331388},{"artifact":1,"gen_end":438669,"gen_start":438081,"node":304,"role":"declaration","source":0,"src_end":339462,"src_start":339023},{"artifact":1,"gen_end":439066,"gen_start":438669,"node":305,"role":"declaration","source":0,"src_end":339773,"src_start":339464},{"artifact":1,"gen_end":443715,"gen_start":439066,"node":306,"role":"declaration","source":0,"src_end":343352,"src_start":339775},{"artifact":1,"gen_end":443997,"gen_start":443715,"node":307,"role":"declaration","source":0,"src_end":343539,"src_start":343354},{"artifact":1,"gen_end":444357,"gen_start":443997,"node":308,"role":"declaration","source":0,"src_end":343821,"src_start":343541},{"artifact":1,"gen_end":454534,"gen_start":444357,"node":309,"role":"declaration","source":0,"src_end":351555,"src_start":343823},{"artifact":1,"gen_end":455112,"gen_start":454534,"node":310,"role":"declaration","source":0,"src_end":351986,"src_start":351557},{"artifact":1,"gen_end":455504,"gen_start":455112,"node":311,"role":"declaration","source":0,"src_end":352292,"src_start":351988},{"artifact":1,"gen_end":464485,"gen_start":455504,"node":312,"role":"declaration","source":0,"src_end":359050,"src_start":352294},{"artifact":1,"gen_end":465055,"gen_start":464485,"node":313,"role":"declaration","source":0,"src_end":359473,"src_start":359052},{"artifact":1,"gen_end":465394,"gen_start":465055,"node":314,"role":"declaration","source":0,"src_end":359734,"src_start":359475},{"artifact":1,"gen_end":475439,"gen_start":465394,"node":315,"role":"declaration","source":0,"src_end":367358,"src_start":359736},{"artifact":1,"gen_end":476017,"gen_start":475439,"node":316,"role":"declaration","source":0,"src_end":367789,"src_start":367360},{"artifact":1,"gen_end":476407,"gen_start":476017,"node":317,"role":"declaration","source":0,"src_end":368093,"src_start":367791},{"artifact":1,"gen_end":486606,"gen_start":476407,"node":318,"role":"declaration","source":0,"src_end":375849,"src_start":368095},{"artifact":1,"gen_end":487220,"gen_start":486606,"node":319,"role":"declaration","source":0,"src_end":376316,"src_start":375851},{"artifact":1,"gen_end":487656,"gen_start":487220,"node":320,"role":"declaration","source":0,"src_end":376666,"src_start":376318},{"artifact":1,"gen_end":497717,"gen_start":487656,"node":321,"role":"declaration","source":0,"src_end":384302,"src_start":376668},{"artifact":1,"gen_end":498305,"gen_start":497717,"node":322,"role":"declaration","source":0,"src_end":384743,"src_start":384304},{"artifact":1,"gen_end":498667,"gen_start":498305,"node":323,"role":"declaration","source":0,"src_end":385027,"src_start":384745},{"artifact":1,"gen_end":503287,"gen_start":498667,"node":324,"role":"declaration","source":0,"src_end":388583,"src_start":385029},{"artifact":1,"gen_end":503573,"gen_start":503287,"node":325,"role":"declaration","source":0,"src_end":388774,"src_start":388585},{"artifact":1,"gen_end":503939,"gen_start":503573,"node":326,"role":"declaration","source":0,"src_end":389062,"src_start":388776},{"artifact":1,"gen_end":513981,"gen_start":503939,"node":327,"role":"declaration","source":0,"src_end":396683,"src_start":389064},{"artifact":1,"gen_end":514567,"gen_start":513981,"node":328,"role":"declaration","source":0,"src_end":397122,"src_start":396685},{"artifact":1,"gen_end":514930,"gen_start":514567,"node":329,"role":"declaration","source":0,"src_end":397407,"src_start":397124},{"artifact":1,"gen_end":524981,"gen_start":514930,"node":330,"role":"declaration","source":0,"src_end":405037,"src_start":397409},{"artifact":1,"gen_end":525571,"gen_start":524981,"node":331,"role":"declaration","source":0,"src_end":405480,"src_start":405039},{"artifact":1,"gen_end":525940,"gen_start":525571,"node":332,"role":"declaration","source":0,"src_end":405771,"src_start":405482},{"artifact":1,"gen_end":530566,"gen_start":525940,"node":333,"role":"declaration","source":0,"src_end":409333,"src_start":405773},{"artifact":1,"gen_end":530860,"gen_start":530566,"node":334,"role":"declaration","source":0,"src_end":409532,"src_start":409335},{"artifact":1,"gen_end":531238,"gen_start":530860,"node":335,"role":"declaration","source":0,"src_end":409832,"src_start":409534},{"artifact":1,"gen_end":541362,"gen_start":531238,"node":336,"role":"declaration","source":0,"src_end":417529,"src_start":409834},{"artifact":1,"gen_end":541968,"gen_start":541362,"node":337,"role":"declaration","source":0,"src_end":417988,"src_start":417531},{"artifact":1,"gen_end":542348,"gen_start":541968,"node":338,"role":"declaration","source":0,"src_end":418290,"src_start":417990},{"artifact":1,"gen_end":552522,"gen_start":542348,"node":339,"role":"declaration","source":0,"src_end":426021,"src_start":418292},{"artifact":1,"gen_end":553090,"gen_start":552522,"node":340,"role":"declaration","source":0,"src_end":426442,"src_start":426023},{"artifact":1,"gen_end":553477,"gen_start":553090,"node":341,"role":"declaration","source":0,"src_end":426743,"src_start":426444},{"artifact":1,"gen_end":573023,"gen_start":553477,"node":342,"role":"declaration","source":0,"src_end":442012,"src_start":426745},{"artifact":1,"gen_end":573323,"gen_start":573023,"node":343,"role":"declaration","source":0,"src_end":442217,"src_start":442014},{"artifact":1,"gen_end":573701,"gen_start":573323,"node":344,"role":"declaration","source":0,"src_end":442517,"src_start":442219},{"artifact":1,"gen_end":644654,"gen_start":573701,"node":345,"role":"declaration","source":0,"src_end":497959,"src_start":442519},{"artifact":1,"gen_end":645067,"gen_start":644654,"node":346,"role":"declaration","source":0,"src_end":498259,"src_start":497961},{"artifact":1,"gen_end":645463,"gen_start":645067,"node":347,"role":"declaration","source":0,"src_end":498569,"src_start":498261},{"artifact":1,"gen_end":655529,"gen_start":645463,"node":348,"role":"declaration","source":0,"src_end":506214,"src_start":498571},{"artifact":1,"gen_end":656123,"gen_start":655529,"node":349,"role":"declaration","source":0,"src_end":506661,"src_start":506216},{"artifact":1,"gen_end":656485,"gen_start":656123,"node":350,"role":"declaration","source":0,"src_end":506945,"src_start":506663},{"artifact":1,"gen_end":666529,"gen_start":656485,"node":351,"role":"declaration","source":0,"src_end":514568,"src_start":506947},{"artifact":1,"gen_end":667109,"gen_start":666529,"node":352,"role":"declaration","source":0,"src_end":515001,"src_start":514570},{"artifact":1,"gen_end":667461,"gen_start":667109,"node":353,"role":"declaration","source":0,"src_end":515275,"src_start":515003},{"artifact":1,"gen_end":677515,"gen_start":667461,"node":354,"role":"declaration","source":0,"src_end":522908,"src_start":515277},{"artifact":1,"gen_end":678109,"gen_start":677515,"node":355,"role":"declaration","source":0,"src_end":523355,"src_start":522910},{"artifact":1,"gen_end":678488,"gen_start":678109,"node":356,"role":"declaration","source":0,"src_end":523656,"src_start":523357},{"artifact":1,"gen_end":688662,"gen_start":678488,"node":357,"role":"declaration","source":0,"src_end":531387,"src_start":523658},{"artifact":1,"gen_end":689230,"gen_start":688662,"node":358,"role":"declaration","source":0,"src_end":531808,"src_start":531389},{"artifact":1,"gen_end":689617,"gen_start":689230,"node":359,"role":"declaration","source":0,"src_end":532109,"src_start":531810},{"artifact":1,"gen_end":699675,"gen_start":689617,"node":360,"role":"declaration","source":0,"src_end":539746,"src_start":532111},{"artifact":1,"gen_end":700277,"gen_start":699675,"node":361,"role":"declaration","source":0,"src_end":540201,"src_start":539748},{"artifact":1,"gen_end":700664,"gen_start":700277,"node":362,"role":"declaration","source":0,"src_end":540510,"src_start":540203},{"artifact":1,"gen_end":710841,"gen_start":700664,"node":363,"role":"declaration","source":0,"src_end":548244,"src_start":540512},{"artifact":1,"gen_end":711423,"gen_start":710841,"node":364,"role":"declaration","source":0,"src_end":548679,"src_start":548246},{"artifact":1,"gen_end":711812,"gen_start":711423,"node":365,"role":"declaration","source":0,"src_end":548982,"src_start":548681},{"artifact":1,"gen_end":722173,"gen_start":711812,"node":366,"role":"declaration","source":0,"src_end":556882,"src_start":548984},{"artifact":1,"gen_end":722763,"gen_start":722173,"node":367,"role":"declaration","source":0,"src_end":557325,"src_start":556884},{"artifact":1,"gen_end":723171,"gen_start":722763,"node":368,"role":"declaration","source":0,"src_end":557647,"src_start":557327},{"artifact":1,"gen_end":733090,"gen_start":723171,"node":369,"role":"declaration","source":0,"src_end":565167,"src_start":557649},{"artifact":1,"gen_end":733676,"gen_start":733090,"node":370,"role":"declaration","source":0,"src_end":565606,"src_start":565169},{"artifact":1,"gen_end":734078,"gen_start":733676,"node":371,"role":"declaration","source":0,"src_end":565922,"src_start":565608},{"artifact":1,"gen_end":744184,"gen_start":734078,"node":372,"role":"declaration","source":0,"src_end":573603,"src_start":565924},{"artifact":1,"gen_end":744784,"gen_start":744184,"node":373,"role":"declaration","source":0,"src_end":574056,"src_start":573605},{"artifact":1,"gen_end":745205,"gen_start":744784,"node":374,"role":"declaration","source":0,"src_end":574391,"src_start":574058},{"artifact":1,"gen_end":755396,"gen_start":745205,"node":375,"role":"declaration","source":0,"src_end":582139,"src_start":574393},{"artifact":1,"gen_end":755984,"gen_start":755396,"node":376,"role":"declaration","source":0,"src_end":582580,"src_start":582141},{"artifact":1,"gen_end":756394,"gen_start":755984,"node":377,"role":"declaration","source":0,"src_end":582904,"src_start":582582},{"artifact":1,"gen_end":766449,"gen_start":756394,"node":378,"role":"declaration","source":0,"src_end":590538,"src_start":582906},{"artifact":1,"gen_end":767035,"gen_start":766449,"node":379,"role":"declaration","source":0,"src_end":590977,"src_start":590540},{"artifact":1,"gen_end":767431,"gen_start":767035,"node":380,"role":"declaration","source":0,"src_end":591287,"src_start":590979},{"artifact":1,"gen_end":777626,"gen_start":767431,"node":381,"role":"declaration","source":0,"src_end":599039,"src_start":591289},{"artifact":1,"gen_end":778220,"gen_start":777626,"node":382,"role":"declaration","source":0,"src_end":599486,"src_start":599041},{"artifact":1,"gen_end":778628,"gen_start":778220,"node":383,"role":"declaration","source":0,"src_end":599808,"src_start":599488},{"artifact":1,"gen_end":788671,"gen_start":778628,"node":384,"role":"declaration","source":0,"src_end":607430,"src_start":599810},{"artifact":1,"gen_end":789251,"gen_start":788671,"node":385,"role":"declaration","source":0,"src_end":607863,"src_start":607432},{"artifact":1,"gen_end":789605,"gen_start":789251,"node":386,"role":"declaration","source":0,"src_end":608139,"src_start":607865},{"artifact":1,"gen_end":799648,"gen_start":789605,"node":387,"role":"declaration","source":0,"src_end":615761,"src_start":608141},{"artifact":1,"gen_end":800228,"gen_start":799648,"node":388,"role":"declaration","source":0,"src_end":616194,"src_start":615763},{"artifact":1,"gen_end":800582,"gen_start":800228,"node":389,"role":"declaration","source":0,"src_end":616470,"src_start":616196},{"artifact":1,"gen_end":810637,"gen_start":800582,"node":390,"role":"declaration","source":0,"src_end":624104,"src_start":616472},{"artifact":1,"gen_end":811227,"gen_start":810637,"node":391,"role":"declaration","source":0,"src_end":624547,"src_start":624106},{"artifact":1,"gen_end":811600,"gen_start":811227,"node":392,"role":"declaration","source":0,"src_end":624842,"src_start":624549},{"artifact":1,"gen_end":821654,"gen_start":811600,"node":393,"role":"declaration","source":0,"src_end":632473,"src_start":624844},{"artifact":1,"gen_end":822234,"gen_start":821654,"node":394,"role":"declaration","source":0,"src_end":632906,"src_start":632475},{"artifact":1,"gen_end":822623,"gen_start":822234,"node":395,"role":"declaration","source":0,"src_end":633209,"src_start":632908},{"artifact":1,"gen_end":832818,"gen_start":822623,"node":396,"role":"declaration","source":0,"src_end":640959,"src_start":633211},{"artifact":1,"gen_end":833408,"gen_start":832818,"node":397,"role":"declaration","source":0,"src_end":641402,"src_start":640961},{"artifact":1,"gen_end":833812,"gen_start":833408,"node":398,"role":"declaration","source":0,"src_end":641720,"src_start":641404},{"artifact":1,"gen_end":843157,"gen_start":833812,"node":399,"role":"declaration","source":0,"src_end":648764,"src_start":641722},{"artifact":1,"gen_end":843719,"gen_start":843157,"node":400,"role":"declaration","source":0,"src_end":649179,"src_start":648766},{"artifact":1,"gen_end":844365,"gen_start":843719,"node":401,"role":"declaration","source":0,"src_end":649685,"src_start":649181},{"artifact":1,"gen_end":844683,"gen_start":844365,"node":402,"role":"declaration","source":0,"src_end":649923,"src_start":649687},{"artifact":1,"gen_end":855272,"gen_start":844683,"node":403,"role":"declaration","source":0,"src_end":657956,"src_start":649925},{"artifact":1,"gen_end":855677,"gen_start":855272,"node":404,"role":"declaration","source":0,"src_end":658248,"src_start":657958},{"artifact":1,"gen_end":856166,"gen_start":855677,"node":405,"role":"declaration","source":0,"src_end":658625,"src_start":658250},{"artifact":1,"gen_end":856472,"gen_start":856166,"node":406,"role":"declaration","source":0,"src_end":658861,"src_start":658627},{"artifact":1,"gen_end":870686,"gen_start":856472,"node":407,"role":"declaration","source":0,"src_end":669575,"src_start":658863},{"artifact":1,"gen_end":871130,"gen_start":870686,"node":408,"role":"declaration","source":0,"src_end":669900,"src_start":669577},{"artifact":1,"gen_end":871678,"gen_start":871130,"node":409,"role":"declaration","source":0,"src_end":670324,"src_start":669902},{"artifact":1,"gen_end":872019,"gen_start":871678,"node":410,"role":"declaration","source":0,"src_end":670591,"src_start":670326},{"artifact":1,"gen_end":872364,"gen_start":872019,"node":411,"role":"declaration","source":0,"src_end":670858,"src_start":670593},{"artifact":1,"gen_end":872709,"gen_start":872364,"node":412,"role":"declaration","source":0,"src_end":671125,"src_start":670860},{"artifact":1,"gen_end":873054,"gen_start":872709,"node":413,"role":"declaration","source":0,"src_end":671392,"src_start":671127},{"artifact":1,"gen_end":873408,"gen_start":873054,"node":414,"role":"declaration","source":0,"src_end":671670,"src_start":671394},{"artifact":1,"gen_end":873697,"gen_start":873408,"node":415,"role":"declaration","source":0,"src_end":671895,"src_start":671672},{"artifact":1,"gen_end":883735,"gen_start":873697,"node":416,"role":"declaration","source":0,"src_end":679512,"src_start":671897},{"artifact":1,"gen_end":884297,"gen_start":883735,"node":417,"role":"declaration","source":0,"src_end":679927,"src_start":679514},{"artifact":1,"gen_end":884947,"gen_start":884297,"node":418,"role":"declaration","source":0,"src_end":680437,"src_start":679929},{"artifact":1,"gen_end":885266,"gen_start":884947,"node":419,"role":"declaration","source":0,"src_end":680676,"src_start":680439},{"artifact":1,"gen_end":885281,"gen_start":885266,"node":210,"role":"declaration","source":0,"src_end":680712,"src_start":0}],"module":"GnafFixtures","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"},{"id":40,"kind":"semantic-declaration"},{"id":41,"kind":"semantic-declaration"},{"id":42,"kind":"semantic-declaration"},{"id":43,"kind":"semantic-declaration"},{"id":44,"kind":"semantic-declaration"},{"id":45,"kind":"semantic-declaration"},{"id":46,"kind":"semantic-declaration"},{"id":47,"kind":"semantic-declaration"},{"id":48,"kind":"semantic-declaration"},{"id":49,"kind":"semantic-declaration"},{"id":50,"kind":"semantic-declaration"},{"id":51,"kind":"semantic-declaration"},{"id":52,"kind":"semantic-declaration"},{"id":53,"kind":"semantic-declaration"},{"id":54,"kind":"semantic-declaration"},{"id":55,"kind":"semantic-declaration"},{"id":56,"kind":"semantic-declaration"},{"id":57,"kind":"semantic-declaration"},{"id":58,"kind":"semantic-declaration"},{"id":59,"kind":"semantic-declaration"},{"id":60,"kind":"semantic-declaration"},{"id":61,"kind":"semantic-declaration"},{"id":62,"kind":"semantic-declaration"},{"id":63,"kind":"semantic-declaration"},{"id":64,"kind":"semantic-declaration"},{"id":65,"kind":"semantic-declaration"},{"id":66,"kind":"semantic-declaration"},{"id":67,"kind":"semantic-declaration"},{"id":68,"kind":"semantic-declaration"},{"id":69,"kind":"semantic-declaration"},{"id":70,"kind":"semantic-declaration"},{"id":71,"kind":"semantic-declaration"},{"id":72,"kind":"semantic-declaration"},{"id":73,"kind":"semantic-declaration"},{"id":74,"kind":"semantic-declaration"},{"id":75,"kind":"semantic-declaration"},{"id":76,"kind":"semantic-declaration"},{"id":77,"kind":"semantic-declaration"},{"id":78,"kind":"semantic-declaration"},{"id":79,"kind":"semantic-declaration"},{"id":80,"kind":"semantic-declaration"},{"id":81,"kind":"semantic-declaration"},{"id":82,"kind":"semantic-declaration"},{"id":83,"kind":"semantic-declaration"},{"id":84,"kind":"semantic-declaration"},{"id":85,"kind":"semantic-declaration"},{"id":86,"kind":"semantic-declaration"},{"id":87,"kind":"semantic-declaration"},{"id":88,"kind":"semantic-declaration"},{"id":89,"kind":"semantic-declaration"},{"id":90,"kind":"semantic-declaration"},{"id":91,"kind":"semantic-declaration"},{"id":92,"kind":"semantic-declaration"},{"id":93,"kind":"semantic-declaration"},{"id":94,"kind":"semantic-declaration"},{"id":95,"kind":"semantic-declaration"},{"id":96,"kind":"semantic-declaration"},{"id":97,"kind":"semantic-declaration"},{"id":98,"kind":"semantic-declaration"},{"id":99,"kind":"semantic-declaration"},{"id":100,"kind":"semantic-declaration"},{"id":101,"kind":"semantic-declaration"},{"id":102,"kind":"semantic-declaration"},{"id":103,"kind":"semantic-declaration"},{"id":104,"kind":"semantic-declaration"},{"id":105,"kind":"semantic-declaration"},{"id":106,"kind":"semantic-declaration"},{"id":107,"kind":"semantic-declaration"},{"id":108,"kind":"semantic-declaration"},{"id":109,"kind":"semantic-declaration"},{"id":110,"kind":"semantic-declaration"},{"id":111,"kind":"semantic-declaration"},{"id":112,"kind":"semantic-declaration"},{"id":113,"kind":"semantic-declaration"},{"id":114,"kind":"semantic-declaration"},{"id":115,"kind":"semantic-declaration"},{"id":116,"kind":"semantic-declaration"},{"id":117,"kind":"semantic-declaration"},{"id":118,"kind":"semantic-declaration"},{"id":119,"kind":"semantic-declaration"},{"id":120,"kind":"semantic-declaration"},{"id":121,"kind":"semantic-declaration"},{"id":122,"kind":"semantic-declaration"},{"id":123,"kind":"semantic-declaration"},{"id":124,"kind":"semantic-declaration"},{"id":125,"kind":"semantic-declaration"},{"id":126,"kind":"semantic-declaration"},{"id":127,"kind":"semantic-declaration"},{"id":128,"kind":"semantic-declaration"},{"id":129,"kind":"semantic-declaration"},{"id":130,"kind":"semantic-declaration"},{"id":131,"kind":"semantic-declaration"},{"id":132,"kind":"semantic-declaration"},{"id":133,"kind":"semantic-declaration"},{"id":134,"kind":"semantic-declaration"},{"id":135,"kind":"semantic-declaration"},{"id":136,"kind":"semantic-declaration"},{"id":137,"kind":"semantic-declaration"},{"id":138,"kind":"semantic-declaration"},{"id":139,"kind":"semantic-declaration"},{"id":140,"kind":"semantic-declaration"},{"id":141,"kind":"semantic-declaration"},{"id":142,"kind":"semantic-declaration"},{"id":143,"kind":"semantic-declaration"},{"id":144,"kind":"semantic-declaration"},{"id":145,"kind":"semantic-declaration"},{"id":146,"kind":"semantic-declaration"},{"id":147,"kind":"semantic-declaration"},{"id":148,"kind":"semantic-declaration"},{"id":149,"kind":"semantic-declaration"},{"id":150,"kind":"semantic-declaration"},{"id":151,"kind":"semantic-declaration"},{"id":152,"kind":"semantic-declaration"},{"id":153,"kind":"semantic-declaration"},{"id":154,"kind":"semantic-declaration"},{"id":155,"kind":"semantic-declaration"},{"id":156,"kind":"semantic-declaration"},{"id":157,"kind":"semantic-declaration"},{"id":158,"kind":"semantic-declaration"},{"id":159,"kind":"semantic-declaration"},{"id":160,"kind":"semantic-declaration"},{"id":161,"kind":"semantic-declaration"},{"id":162,"kind":"semantic-declaration"},{"id":163,"kind":"semantic-declaration"},{"id":164,"kind":"semantic-declaration"},{"id":165,"kind":"semantic-declaration"},{"id":166,"kind":"semantic-declaration"},{"id":167,"kind":"semantic-declaration"},{"id":168,"kind":"semantic-declaration"},{"id":169,"kind":"semantic-declaration"},{"id":170,"kind":"semantic-declaration"},{"id":171,"kind":"semantic-declaration"},{"id":172,"kind":"semantic-declaration"},{"id":173,"kind":"semantic-declaration"},{"id":174,"kind":"semantic-declaration"},{"id":175,"kind":"semantic-declaration"},{"id":176,"kind":"semantic-declaration"},{"id":177,"kind":"semantic-declaration"},{"id":178,"kind":"semantic-declaration"},{"id":179,"kind":"semantic-declaration"},{"id":180,"kind":"semantic-declaration"},{"id":181,"kind":"semantic-declaration"},{"id":182,"kind":"semantic-declaration"},{"id":183,"kind":"semantic-declaration"},{"id":184,"kind":"semantic-declaration"},{"id":185,"kind":"semantic-declaration"},{"id":186,"kind":"semantic-declaration"},{"id":187,"kind":"semantic-declaration"},{"id":188,"kind":"semantic-declaration"},{"id":189,"kind":"semantic-declaration"},{"id":190,"kind":"semantic-declaration"},{"id":191,"kind":"semantic-declaration"},{"id":192,"kind":"semantic-declaration"},{"id":193,"kind":"semantic-declaration"},{"id":194,"kind":"semantic-declaration"},{"id":195,"kind":"semantic-declaration"},{"id":196,"kind":"semantic-declaration"},{"id":197,"kind":"semantic-declaration"},{"id":198,"kind":"semantic-declaration"},{"id":199,"kind":"semantic-declaration"},{"id":200,"kind":"semantic-declaration"},{"id":201,"kind":"semantic-declaration"},{"id":202,"kind":"semantic-declaration"},{"id":203,"kind":"semantic-declaration"},{"id":204,"kind":"semantic-declaration"},{"id":205,"kind":"semantic-declaration"},{"id":206,"kind":"semantic-declaration"},{"id":207,"kind":"semantic-declaration"},{"id":208,"kind":"semantic-declaration"},{"id":209,"kind":"semantic-declaration"},{"id":210,"kind":"semantic-latex-module"},{"id":211,"kind":"semantic-declaration"},{"id":212,"kind":"semantic-declaration"},{"id":213,"kind":"semantic-declaration"},{"id":214,"kind":"semantic-declaration"},{"id":215,"kind":"semantic-declaration"},{"id":216,"kind":"semantic-declaration"},{"id":217,"kind":"semantic-declaration"},{"id":218,"kind":"semantic-declaration"},{"id":219,"kind":"semantic-declaration"},{"id":220,"kind":"semantic-declaration"},{"id":221,"kind":"semantic-declaration"},{"id":222,"kind":"semantic-declaration"},{"id":223,"kind":"semantic-declaration"},{"id":224,"kind":"semantic-declaration"},{"id":225,"kind":"semantic-declaration"},{"id":226,"kind":"semantic-declaration"},{"id":227,"kind":"semantic-declaration"},{"id":228,"kind":"semantic-declaration"},{"id":229,"kind":"semantic-declaration"},{"id":230,"kind":"semantic-declaration"},{"id":231,"kind":"semantic-declaration"},{"id":232,"kind":"semantic-declaration"},{"id":233,"kind":"semantic-declaration"},{"id":234,"kind":"semantic-declaration"},{"id":235,"kind":"semantic-declaration"},{"id":236,"kind":"semantic-declaration"},{"id":237,"kind":"semantic-declaration"},{"id":238,"kind":"semantic-declaration"},{"id":239,"kind":"semantic-declaration"},{"id":240,"kind":"semantic-declaration"},{"id":241,"kind":"semantic-declaration"},{"id":242,"kind":"semantic-declaration"},{"id":243,"kind":"semantic-declaration"},{"id":244,"kind":"semantic-declaration"},{"id":245,"kind":"semantic-declaration"},{"id":246,"kind":"semantic-declaration"},{"id":247,"kind":"semantic-declaration"},{"id":248,"kind":"semantic-declaration"},{"id":249,"kind":"semantic-declaration"},{"id":250,"kind":"semantic-declaration"},{"id":251,"kind":"semantic-declaration"},{"id":252,"kind":"semantic-declaration"},{"id":253,"kind":"semantic-declaration"},{"id":254,"kind":"semantic-declaration"},{"id":255,"kind":"semantic-declaration"},{"id":256,"kind":"semantic-declaration"},{"id":257,"kind":"semantic-declaration"},{"id":258,"kind":"semantic-declaration"},{"id":259,"kind":"semantic-declaration"},{"id":260,"kind":"semantic-declaration"},{"id":261,"kind":"semantic-declaration"},{"id":262,"kind":"semantic-declaration"},{"id":263,"kind":"semantic-declaration"},{"id":264,"kind":"semantic-declaration"},{"id":265,"kind":"semantic-declaration"},{"id":266,"kind":"semantic-declaration"},{"id":267,"kind":"semantic-declaration"},{"id":268,"kind":"semantic-declaration"},{"id":269,"kind":"semantic-declaration"},{"id":270,"kind":"semantic-declaration"},{"id":271,"kind":"semantic-declaration"},{"id":272,"kind":"semantic-declaration"},{"id":273,"kind":"semantic-declaration"},{"id":274,"kind":"semantic-declaration"},{"id":275,"kind":"semantic-declaration"},{"id":276,"kind":"semantic-declaration"},{"id":277,"kind":"semantic-declaration"},{"id":278,"kind":"semantic-declaration"},{"id":279,"kind":"semantic-declaration"},{"id":280,"kind":"semantic-declaration"},{"id":281,"kind":"semantic-declaration"},{"id":282,"kind":"semantic-declaration"},{"id":283,"kind":"semantic-declaration"},{"id":284,"kind":"semantic-declaration"},{"id":285,"kind":"semantic-declaration"},{"id":286,"kind":"semantic-declaration"},{"id":287,"kind":"semantic-declaration"},{"id":288,"kind":"semantic-declaration"},{"id":289,"kind":"semantic-declaration"},{"id":290,"kind":"semantic-declaration"},{"id":291,"kind":"semantic-declaration"},{"id":292,"kind":"semantic-declaration"},{"id":293,"kind":"semantic-declaration"},{"id":294,"kind":"semantic-declaration"},{"id":295,"kind":"semantic-declaration"},{"id":296,"kind":"semantic-declaration"},{"id":297,"kind":"semantic-declaration"},{"id":298,"kind":"semantic-declaration"},{"id":299,"kind":"semantic-declaration"},{"id":300,"kind":"semantic-declaration"},{"id":301,"kind":"semantic-declaration"},{"id":302,"kind":"semantic-declaration"},{"id":303,"kind":"semantic-declaration"},{"id":304,"kind":"semantic-declaration"},{"id":305,"kind":"semantic-declaration"},{"id":306,"kind":"semantic-declaration"},{"id":307,"kind":"semantic-declaration"},{"id":308,"kind":"semantic-declaration"},{"id":309,"kind":"semantic-declaration"},{"id":310,"kind":"semantic-declaration"},{"id":311,"kind":"semantic-declaration"},{"id":312,"kind":"semantic-declaration"},{"id":313,"kind":"semantic-declaration"},{"id":314,"kind":"semantic-declaration"},{"id":315,"kind":"semantic-declaration"},{"id":316,"kind":"semantic-declaration"},{"id":317,"kind":"semantic-declaration"},{"id":318,"kind":"semantic-declaration"},{"id":319,"kind":"semantic-declaration"},{"id":320,"kind":"semantic-declaration"},{"id":321,"kind":"semantic-declaration"},{"id":322,"kind":"semantic-declaration"},{"id":323,"kind":"semantic-declaration"},{"id":324,"kind":"semantic-declaration"},{"id":325,"kind":"semantic-declaration"},{"id":326,"kind":"semantic-declaration"},{"id":327,"kind":"semantic-declaration"},{"id":328,"kind":"semantic-declaration"},{"id":329,"kind":"semantic-declaration"},{"id":330,"kind":"semantic-declaration"},{"id":331,"kind":"semantic-declaration"},{"id":332,"kind":"semantic-declaration"},{"id":333,"kind":"semantic-declaration"},{"id":334,"kind":"semantic-declaration"},{"id":335,"kind":"semantic-declaration"},{"id":336,"kind":"semantic-declaration"},{"id":337,"kind":"semantic-declaration"},{"id":338,"kind":"semantic-declaration"},{"id":339,"kind":"semantic-declaration"},{"id":340,"kind":"semantic-declaration"},{"id":341,"kind":"semantic-declaration"},{"id":342,"kind":"semantic-declaration"},{"id":343,"kind":"semantic-declaration"},{"id":344,"kind":"semantic-declaration"},{"id":345,"kind":"semantic-declaration"},{"id":346,"kind":"semantic-declaration"},{"id":347,"kind":"semantic-declaration"},{"id":348,"kind":"semantic-declaration"},{"id":349,"kind":"semantic-declaration"},{"id":350,"kind":"semantic-declaration"},{"id":351,"kind":"semantic-declaration"},{"id":352,"kind":"semantic-declaration"},{"id":353,"kind":"semantic-declaration"},{"id":354,"kind":"semantic-declaration"},{"id":355,"kind":"semantic-declaration"},{"id":356,"kind":"semantic-declaration"},{"id":357,"kind":"semantic-declaration"},{"id":358,"kind":"semantic-declaration"},{"id":359,"kind":"semantic-declaration"},{"id":360,"kind":"semantic-declaration"},{"id":361,"kind":"semantic-declaration"},{"id":362,"kind":"semantic-declaration"},{"id":363,"kind":"semantic-declaration"},{"id":364,"kind":"semantic-declaration"},{"id":365,"kind":"semantic-declaration"},{"id":366,"kind":"semantic-declaration"},{"id":367,"kind":"semantic-declaration"},{"id":368,"kind":"semantic-declaration"},{"id":369,"kind":"semantic-declaration"},{"id":370,"kind":"semantic-declaration"},{"id":371,"kind":"semantic-declaration"},{"id":372,"kind":"semantic-declaration"},{"id":373,"kind":"semantic-declaration"},{"id":374,"kind":"semantic-declaration"},{"id":375,"kind":"semantic-declaration"},{"id":376,"kind":"semantic-declaration"},{"id":377,"kind":"semantic-declaration"},{"id":378,"kind":"semantic-declaration"},{"id":379,"kind":"semantic-declaration"},{"id":380,"kind":"semantic-declaration"},{"id":381,"kind":"semantic-declaration"},{"id":382,"kind":"semantic-declaration"},{"id":383,"kind":"semantic-declaration"},{"id":384,"kind":"semantic-declaration"},{"id":385,"kind":"semantic-declaration"},{"id":386,"kind":"semantic-declaration"},{"id":387,"kind":"semantic-declaration"},{"id":388,"kind":"semantic-declaration"},{"id":389,"kind":"semantic-declaration"},{"id":390,"kind":"semantic-declaration"},{"id":391,"kind":"semantic-declaration"},{"id":392,"kind":"semantic-declaration"},{"id":393,"kind":"semantic-declaration"},{"id":394,"kind":"semantic-declaration"},{"id":395,"kind":"semantic-declaration"},{"id":396,"kind":"semantic-declaration"},{"id":397,"kind":"semantic-declaration"},{"id":398,"kind":"semantic-declaration"},{"id":399,"kind":"semantic-declaration"},{"id":400,"kind":"semantic-declaration"},{"id":401,"kind":"semantic-declaration"},{"id":402,"kind":"semantic-declaration"},{"id":403,"kind":"semantic-declaration"},{"id":404,"kind":"semantic-declaration"},{"id":405,"kind":"semantic-declaration"},{"id":406,"kind":"semantic-declaration"},{"id":407,"kind":"semantic-declaration"},{"id":408,"kind":"semantic-declaration"},{"id":409,"kind":"semantic-declaration"},{"id":410,"kind":"semantic-declaration"},{"id":411,"kind":"semantic-declaration"},{"id":412,"kind":"semantic-declaration"},{"id":413,"kind":"semantic-declaration"},{"id":414,"kind":"semantic-declaration"},{"id":415,"kind":"semantic-declaration"},{"id":416,"kind":"semantic-declaration"},{"id":417,"kind":"semantic-declaration"},{"id":418,"kind":"semantic-declaration"},{"id":419,"kind":"semantic-declaration"}],"semantic_id":"e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb","source_id":"965efd311d3549a7c17dd823b4418cfee906beecd273f4bfcafb371c36d9ce99","sources":[{"id":0,"kind":"file","path":"src/GnafFixtures.lex.tex","sha256":"e7f06e087d0ec40b8dd61f2fe1c51258ec55d93f5e5e16938c27598661e8d913"}],"spec":"lexlean/source-map/1"} diff --git a/compiler/expected/build/maps/LexLeanTarget/GradeOracle.map.json b/compiler/expected/build/maps/LexLeanTarget/GradeOracle.map.json index 1ab1ed40e..adbd4e920 100644 --- a/compiler/expected/build/maps/LexLeanTarget/GradeOracle.map.json +++ b/compiler/expected/build/maps/LexLeanTarget/GradeOracle.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/LexLeanTarget/GradeOracle.lean"},{"id":1,"kind":"tex","path":"modules/LexLeanTarget/GradeOracle.tex"}],"mappings":[{"artifact":0,"gen_end":404,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":5030,"src_start":0},{"artifact":0,"gen_end":580,"gen_start":404,"node":1,"role":"declaration","source":0,"src_end":318,"src_start":151},{"artifact":0,"gen_end":772,"gen_start":580,"node":2,"role":"declaration","source":0,"src_end":520,"src_start":320},{"artifact":0,"gen_end":3946,"gen_start":772,"node":3,"role":"declaration","source":0,"src_end":849,"src_start":522},{"artifact":0,"gen_end":4124,"gen_start":3946,"node":4,"role":"declaration","source":0,"src_end":1085,"src_start":851},{"artifact":0,"gen_end":4480,"gen_start":4124,"node":5,"role":"declaration","source":0,"src_end":1498,"src_start":1087},{"artifact":0,"gen_end":4836,"gen_start":4480,"node":6,"role":"declaration","source":0,"src_end":1893,"src_start":1500},{"artifact":0,"gen_end":5191,"gen_start":4836,"node":7,"role":"declaration","source":0,"src_end":2242,"src_start":1895},{"artifact":0,"gen_end":8521,"gen_start":5191,"node":8,"role":"declaration","source":0,"src_end":2737,"src_start":2244},{"artifact":0,"gen_end":12050,"gen_start":8521,"node":9,"role":"declaration","source":0,"src_end":3361,"src_start":2739},{"artifact":0,"gen_end":15351,"gen_start":12050,"node":10,"role":"declaration","source":0,"src_end":3856,"src_start":3363},{"artifact":0,"gen_end":44774,"gen_start":15351,"node":11,"role":"declaration","source":0,"src_end":4994,"src_start":3858},{"artifact":0,"gen_end":44805,"gen_start":44774,"node":0,"role":"declaration","source":0,"src_end":5030,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":12,"role":"declaration","source":0,"src_end":5030,"src_start":0},{"artifact":1,"gen_end":496,"gen_start":134,"node":13,"role":"declaration","source":0,"src_end":318,"src_start":151},{"artifact":1,"gen_end":937,"gen_start":496,"node":14,"role":"declaration","source":0,"src_end":520,"src_start":320},{"artifact":1,"gen_end":1269,"gen_start":937,"node":15,"role":"declaration","source":0,"src_end":849,"src_start":522},{"artifact":1,"gen_end":2003,"gen_start":1269,"node":16,"role":"declaration","source":0,"src_end":1085,"src_start":851},{"artifact":1,"gen_end":2492,"gen_start":2003,"node":17,"role":"declaration","source":0,"src_end":1498,"src_start":1087},{"artifact":1,"gen_end":2966,"gen_start":2492,"node":18,"role":"declaration","source":0,"src_end":1893,"src_start":1500},{"artifact":1,"gen_end":3537,"gen_start":2966,"node":19,"role":"declaration","source":0,"src_end":2242,"src_start":1895},{"artifact":1,"gen_end":3999,"gen_start":3537,"node":20,"role":"declaration","source":0,"src_end":2737,"src_start":2244},{"artifact":1,"gen_end":4451,"gen_start":3999,"node":21,"role":"declaration","source":0,"src_end":3361,"src_start":2739},{"artifact":1,"gen_end":4874,"gen_start":4451,"node":22,"role":"declaration","source":0,"src_end":3856,"src_start":3363},{"artifact":1,"gen_end":26676,"gen_start":4874,"node":23,"role":"declaration","source":0,"src_end":4994,"src_start":3858},{"artifact":1,"gen_end":26691,"gen_start":26676,"node":12,"role":"declaration","source":0,"src_end":5030,"src_start":0}],"module":"GradeOracle","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-latex-module"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"}],"semantic_id":"c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517","source_id":"ce718723d5d252a9adafdc3cb3b76931b1d91e053dd3e7e31bcb9b9496a1941c","sources":[{"id":0,"kind":"file","path":"src/GradeOracle.lex.tex","sha256":"1e19782f0fd76c6d49b5f7f5f29569f8f52b5d91397f0ec9921286cdd03b0fd0"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/LexLeanTarget/GradeOracle.lean"},{"id":1,"kind":"tex","path":"modules/LexLeanTarget/GradeOracle.tex"}],"mappings":[{"artifact":0,"gen_end":404,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":5030,"src_start":0},{"artifact":0,"gen_end":580,"gen_start":404,"node":1,"role":"declaration","source":0,"src_end":318,"src_start":151},{"artifact":0,"gen_end":772,"gen_start":580,"node":2,"role":"declaration","source":0,"src_end":520,"src_start":320},{"artifact":0,"gen_end":3946,"gen_start":772,"node":3,"role":"declaration","source":0,"src_end":849,"src_start":522},{"artifact":0,"gen_end":4124,"gen_start":3946,"node":4,"role":"declaration","source":0,"src_end":1085,"src_start":851},{"artifact":0,"gen_end":4480,"gen_start":4124,"node":5,"role":"declaration","source":0,"src_end":1498,"src_start":1087},{"artifact":0,"gen_end":4836,"gen_start":4480,"node":6,"role":"declaration","source":0,"src_end":1893,"src_start":1500},{"artifact":0,"gen_end":5191,"gen_start":4836,"node":7,"role":"declaration","source":0,"src_end":2242,"src_start":1895},{"artifact":0,"gen_end":8521,"gen_start":5191,"node":8,"role":"declaration","source":0,"src_end":2737,"src_start":2244},{"artifact":0,"gen_end":12050,"gen_start":8521,"node":9,"role":"declaration","source":0,"src_end":3361,"src_start":2739},{"artifact":0,"gen_end":15351,"gen_start":12050,"node":10,"role":"declaration","source":0,"src_end":3856,"src_start":3363},{"artifact":0,"gen_end":44774,"gen_start":15351,"node":11,"role":"declaration","source":0,"src_end":4994,"src_start":3858},{"artifact":0,"gen_end":44805,"gen_start":44774,"node":0,"role":"declaration","source":0,"src_end":5030,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":12,"role":"declaration","source":0,"src_end":5030,"src_start":0},{"artifact":1,"gen_end":496,"gen_start":134,"node":13,"role":"declaration","source":0,"src_end":318,"src_start":151},{"artifact":1,"gen_end":937,"gen_start":496,"node":14,"role":"declaration","source":0,"src_end":520,"src_start":320},{"artifact":1,"gen_end":1269,"gen_start":937,"node":15,"role":"declaration","source":0,"src_end":849,"src_start":522},{"artifact":1,"gen_end":2003,"gen_start":1269,"node":16,"role":"declaration","source":0,"src_end":1085,"src_start":851},{"artifact":1,"gen_end":2492,"gen_start":2003,"node":17,"role":"declaration","source":0,"src_end":1498,"src_start":1087},{"artifact":1,"gen_end":2966,"gen_start":2492,"node":18,"role":"declaration","source":0,"src_end":1893,"src_start":1500},{"artifact":1,"gen_end":3537,"gen_start":2966,"node":19,"role":"declaration","source":0,"src_end":2242,"src_start":1895},{"artifact":1,"gen_end":3999,"gen_start":3537,"node":20,"role":"declaration","source":0,"src_end":2737,"src_start":2244},{"artifact":1,"gen_end":4451,"gen_start":3999,"node":21,"role":"declaration","source":0,"src_end":3361,"src_start":2739},{"artifact":1,"gen_end":4874,"gen_start":4451,"node":22,"role":"declaration","source":0,"src_end":3856,"src_start":3363},{"artifact":1,"gen_end":26676,"gen_start":4874,"node":23,"role":"declaration","source":0,"src_end":4994,"src_start":3858},{"artifact":1,"gen_end":26691,"gen_start":26676,"node":12,"role":"declaration","source":0,"src_end":5030,"src_start":0}],"module":"GradeOracle","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-latex-module"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"}],"semantic_id":"e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb","source_id":"965efd311d3549a7c17dd823b4418cfee906beecd273f4bfcafb371c36d9ce99","sources":[{"id":0,"kind":"file","path":"src/GradeOracle.lex.tex","sha256":"1e19782f0fd76c6d49b5f7f5f29569f8f52b5d91397f0ec9921286cdd03b0fd0"}],"spec":"lexlean/source-map/1"} diff --git a/compiler/expected/build/maps/LexLeanTarget/Main.map.json b/compiler/expected/build/maps/LexLeanTarget/Main.map.json index 72b4aeebc..6a9677cf6 100644 --- a/compiler/expected/build/maps/LexLeanTarget/Main.map.json +++ b/compiler/expected/build/maps/LexLeanTarget/Main.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/LexLeanTarget/Main.lean"},{"id":1,"kind":"tex","path":"modules/LexLeanTarget/Main.tex"}],"mappings":[{"artifact":0,"gen_end":869,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":811,"src_start":0},{"artifact":0,"gen_end":1104,"gen_start":869,"node":1,"role":"declaration","source":0,"src_end":775,"src_start":573},{"artifact":0,"gen_end":1128,"gen_start":1104,"node":0,"role":"declaration","source":0,"src_end":811,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":2,"role":"declaration","source":0,"src_end":811,"src_start":0},{"artifact":1,"gen_end":517,"gen_start":134,"node":3,"role":"declaration","source":0,"src_end":775,"src_start":573},{"artifact":1,"gen_end":532,"gen_start":517,"node":2,"role":"declaration","source":0,"src_end":811,"src_start":0}],"module":"Main","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-latex-module"},{"id":3,"kind":"semantic-declaration"}],"semantic_id":"c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517","source_id":"ce718723d5d252a9adafdc3cb3b76931b1d91e053dd3e7e31bcb9b9496a1941c","sources":[{"id":0,"kind":"file","path":"src/Main.lex.tex","sha256":"a26d3c220ec1352dd96565ac2308c1684a945a98e1210b3dfaab30cd76dc1875"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/LexLeanTarget/Main.lean"},{"id":1,"kind":"tex","path":"modules/LexLeanTarget/Main.tex"}],"mappings":[{"artifact":0,"gen_end":869,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":811,"src_start":0},{"artifact":0,"gen_end":1104,"gen_start":869,"node":1,"role":"declaration","source":0,"src_end":775,"src_start":573},{"artifact":0,"gen_end":1128,"gen_start":1104,"node":0,"role":"declaration","source":0,"src_end":811,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":2,"role":"declaration","source":0,"src_end":811,"src_start":0},{"artifact":1,"gen_end":517,"gen_start":134,"node":3,"role":"declaration","source":0,"src_end":775,"src_start":573},{"artifact":1,"gen_end":532,"gen_start":517,"node":2,"role":"declaration","source":0,"src_end":811,"src_start":0}],"module":"Main","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-latex-module"},{"id":3,"kind":"semantic-declaration"}],"semantic_id":"e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb","source_id":"965efd311d3549a7c17dd823b4418cfee906beecd273f4bfcafb371c36d9ce99","sources":[{"id":0,"kind":"file","path":"src/Main.lex.tex","sha256":"a26d3c220ec1352dd96565ac2308c1684a945a98e1210b3dfaab30cd76dc1875"}],"spec":"lexlean/source-map/1"} diff --git a/compiler/expected/build/maps/LexLeanTarget/PlannerOracle.map.json b/compiler/expected/build/maps/LexLeanTarget/PlannerOracle.map.json index 38eb9fec5..072fec777 100644 --- a/compiler/expected/build/maps/LexLeanTarget/PlannerOracle.map.json +++ b/compiler/expected/build/maps/LexLeanTarget/PlannerOracle.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/LexLeanTarget/PlannerOracle.lean"},{"id":1,"kind":"tex","path":"modules/LexLeanTarget/PlannerOracle.tex"}],"mappings":[{"artifact":0,"gen_end":362,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":8685,"src_start":0},{"artifact":0,"gen_end":493,"gen_start":362,"node":1,"role":"declaration","source":0,"src_end":264,"src_start":122},{"artifact":0,"gen_end":597,"gen_start":493,"node":2,"role":"declaration","source":0,"src_end":390,"src_start":266},{"artifact":0,"gen_end":3664,"gen_start":597,"node":3,"role":"declaration","source":0,"src_end":580,"src_start":392},{"artifact":0,"gen_end":3847,"gen_start":3664,"node":4,"role":"declaration","source":0,"src_end":727,"src_start":582},{"artifact":0,"gen_end":6929,"gen_start":3847,"node":5,"role":"declaration","source":0,"src_end":988,"src_start":729},{"artifact":0,"gen_end":7795,"gen_start":6929,"node":6,"role":"declaration","source":0,"src_end":1228,"src_start":990},{"artifact":0,"gen_end":10878,"gen_start":7795,"node":7,"role":"declaration","source":0,"src_end":1489,"src_start":1230},{"artifact":0,"gen_end":11754,"gen_start":10878,"node":8,"role":"declaration","source":0,"src_end":1730,"src_start":1491},{"artifact":0,"gen_end":14926,"gen_start":11754,"node":9,"role":"declaration","source":0,"src_end":2067,"src_start":1732},{"artifact":0,"gen_end":16045,"gen_start":14926,"node":10,"role":"declaration","source":0,"src_end":2456,"src_start":2069},{"artifact":0,"gen_end":16172,"gen_start":16045,"node":11,"role":"declaration","source":0,"src_end":2604,"src_start":2458},{"artifact":0,"gen_end":16312,"gen_start":16172,"node":12,"role":"declaration","source":0,"src_end":2779,"src_start":2606},{"artifact":0,"gen_end":19407,"gen_start":16312,"node":13,"role":"declaration","source":0,"src_end":3023,"src_start":2781},{"artifact":0,"gen_end":19600,"gen_start":19407,"node":14,"role":"declaration","source":0,"src_end":3231,"src_start":3025},{"artifact":0,"gen_end":22603,"gen_start":19600,"node":15,"role":"declaration","source":0,"src_end":3424,"src_start":3233},{"artifact":0,"gen_end":53421,"gen_start":22603,"node":16,"role":"declaration","source":0,"src_end":3997,"src_start":3426},{"artifact":0,"gen_end":53506,"gen_start":53421,"node":17,"role":"declaration","source":0,"src_end":4090,"src_start":3999},{"artifact":0,"gen_end":53594,"gen_start":53506,"node":18,"role":"declaration","source":0,"src_end":4219,"src_start":4092},{"artifact":0,"gen_end":56664,"gen_start":53594,"node":19,"role":"declaration","source":0,"src_end":4445,"src_start":4221},{"artifact":0,"gen_end":56849,"gen_start":56664,"node":20,"role":"declaration","source":0,"src_end":4637,"src_start":4447},{"artifact":0,"gen_end":56933,"gen_start":56849,"node":21,"role":"declaration","source":0,"src_end":4729,"src_start":4639},{"artifact":0,"gen_end":57020,"gen_start":56933,"node":22,"role":"declaration","source":0,"src_end":4857,"src_start":4731},{"artifact":0,"gen_end":60085,"gen_start":57020,"node":23,"role":"declaration","source":0,"src_end":5078,"src_start":4859},{"artifact":0,"gen_end":60269,"gen_start":60085,"node":24,"role":"declaration","source":0,"src_end":5269,"src_start":5080},{"artifact":0,"gen_end":63381,"gen_start":60269,"node":25,"role":"declaration","source":0,"src_end":5569,"src_start":5271},{"artifact":0,"gen_end":63519,"gen_start":63381,"node":26,"role":"declaration","source":0,"src_end":5723,"src_start":5571},{"artifact":0,"gen_end":66534,"gen_start":63519,"node":27,"role":"declaration","source":0,"src_end":5927,"src_start":5725},{"artifact":0,"gen_end":69645,"gen_start":66534,"node":28,"role":"declaration","source":0,"src_end":6207,"src_start":5929},{"artifact":0,"gen_end":72773,"gen_start":69645,"node":29,"role":"declaration","source":0,"src_end":6521,"src_start":6209},{"artifact":0,"gen_end":75865,"gen_start":72773,"node":30,"role":"declaration","source":0,"src_end":6801,"src_start":6523},{"artifact":0,"gen_end":107360,"gen_start":75865,"node":31,"role":"declaration","source":0,"src_end":7410,"src_start":6803},{"artifact":0,"gen_end":139950,"gen_start":107360,"node":32,"role":"declaration","source":0,"src_end":8079,"src_start":7412},{"artifact":0,"gen_end":171694,"gen_start":139950,"node":33,"role":"declaration","source":0,"src_end":8649,"src_start":8081},{"artifact":0,"gen_end":171727,"gen_start":171694,"node":0,"role":"declaration","source":0,"src_end":8685,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":34,"role":"declaration","source":0,"src_end":8685,"src_start":0},{"artifact":1,"gen_end":450,"gen_start":134,"node":35,"role":"declaration","source":0,"src_end":264,"src_start":122},{"artifact":1,"gen_end":740,"gen_start":450,"node":36,"role":"declaration","source":0,"src_end":390,"src_start":266},{"artifact":1,"gen_end":1018,"gen_start":740,"node":37,"role":"declaration","source":0,"src_end":580,"src_start":392},{"artifact":1,"gen_end":1647,"gen_start":1018,"node":38,"role":"declaration","source":0,"src_end":727,"src_start":582},{"artifact":1,"gen_end":1989,"gen_start":1647,"node":39,"role":"declaration","source":0,"src_end":988,"src_start":729},{"artifact":1,"gen_end":3308,"gen_start":1989,"node":40,"role":"declaration","source":0,"src_end":1228,"src_start":990},{"artifact":1,"gen_end":3651,"gen_start":3308,"node":41,"role":"declaration","source":0,"src_end":1489,"src_start":1230},{"artifact":1,"gen_end":4981,"gen_start":3651,"node":42,"role":"declaration","source":0,"src_end":1730,"src_start":1491},{"artifact":1,"gen_end":5415,"gen_start":4981,"node":43,"role":"declaration","source":0,"src_end":2067,"src_start":1732},{"artifact":1,"gen_end":7272,"gen_start":5415,"node":44,"role":"declaration","source":0,"src_end":2456,"src_start":2069},{"artifact":1,"gen_end":7585,"gen_start":7272,"node":45,"role":"declaration","source":0,"src_end":2604,"src_start":2458},{"artifact":1,"gen_end":7974,"gen_start":7585,"node":46,"role":"declaration","source":0,"src_end":2779,"src_start":2606},{"artifact":1,"gen_end":8279,"gen_start":7974,"node":47,"role":"declaration","source":0,"src_end":3023,"src_start":2781},{"artifact":1,"gen_end":8992,"gen_start":8279,"node":48,"role":"declaration","source":0,"src_end":3231,"src_start":3025},{"artifact":1,"gen_end":9254,"gen_start":8992,"node":49,"role":"declaration","source":0,"src_end":3424,"src_start":3233},{"artifact":1,"gen_end":27419,"gen_start":9254,"node":50,"role":"declaration","source":0,"src_end":3997,"src_start":3426},{"artifact":1,"gen_end":27674,"gen_start":27419,"node":51,"role":"declaration","source":0,"src_end":4090,"src_start":3999},{"artifact":1,"gen_end":28008,"gen_start":27674,"node":52,"role":"declaration","source":0,"src_end":4219,"src_start":4092},{"artifact":1,"gen_end":28292,"gen_start":28008,"node":53,"role":"declaration","source":0,"src_end":4445,"src_start":4221},{"artifact":1,"gen_end":28953,"gen_start":28292,"node":54,"role":"declaration","source":0,"src_end":4637,"src_start":4447},{"artifact":1,"gen_end":29207,"gen_start":28953,"node":55,"role":"declaration","source":0,"src_end":4729,"src_start":4639},{"artifact":1,"gen_end":29540,"gen_start":29207,"node":56,"role":"declaration","source":0,"src_end":4857,"src_start":4731},{"artifact":1,"gen_end":29821,"gen_start":29540,"node":57,"role":"declaration","source":0,"src_end":5078,"src_start":4859},{"artifact":1,"gen_end":30480,"gen_start":29821,"node":58,"role":"declaration","source":0,"src_end":5269,"src_start":5080},{"artifact":1,"gen_end":30826,"gen_start":30480,"node":59,"role":"declaration","source":0,"src_end":5569,"src_start":5271},{"artifact":1,"gen_end":31150,"gen_start":30826,"node":60,"role":"declaration","source":0,"src_end":5723,"src_start":5571},{"artifact":1,"gen_end":31418,"gen_start":31150,"node":61,"role":"declaration","source":0,"src_end":5927,"src_start":5725},{"artifact":1,"gen_end":31775,"gen_start":31418,"node":62,"role":"declaration","source":0,"src_end":6207,"src_start":5929},{"artifact":1,"gen_end":32131,"gen_start":31775,"node":63,"role":"declaration","source":0,"src_end":6521,"src_start":6209},{"artifact":1,"gen_end":32464,"gen_start":32131,"node":64,"role":"declaration","source":0,"src_end":6801,"src_start":6523},{"artifact":1,"gen_end":51452,"gen_start":32464,"node":65,"role":"declaration","source":0,"src_end":7410,"src_start":6803},{"artifact":1,"gen_end":71336,"gen_start":51452,"node":66,"role":"declaration","source":0,"src_end":8079,"src_start":7412},{"artifact":1,"gen_end":90352,"gen_start":71336,"node":67,"role":"declaration","source":0,"src_end":8649,"src_start":8081},{"artifact":1,"gen_end":90367,"gen_start":90352,"node":34,"role":"declaration","source":0,"src_end":8685,"src_start":0}],"module":"PlannerOracle","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-latex-module"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"},{"id":40,"kind":"semantic-declaration"},{"id":41,"kind":"semantic-declaration"},{"id":42,"kind":"semantic-declaration"},{"id":43,"kind":"semantic-declaration"},{"id":44,"kind":"semantic-declaration"},{"id":45,"kind":"semantic-declaration"},{"id":46,"kind":"semantic-declaration"},{"id":47,"kind":"semantic-declaration"},{"id":48,"kind":"semantic-declaration"},{"id":49,"kind":"semantic-declaration"},{"id":50,"kind":"semantic-declaration"},{"id":51,"kind":"semantic-declaration"},{"id":52,"kind":"semantic-declaration"},{"id":53,"kind":"semantic-declaration"},{"id":54,"kind":"semantic-declaration"},{"id":55,"kind":"semantic-declaration"},{"id":56,"kind":"semantic-declaration"},{"id":57,"kind":"semantic-declaration"},{"id":58,"kind":"semantic-declaration"},{"id":59,"kind":"semantic-declaration"},{"id":60,"kind":"semantic-declaration"},{"id":61,"kind":"semantic-declaration"},{"id":62,"kind":"semantic-declaration"},{"id":63,"kind":"semantic-declaration"},{"id":64,"kind":"semantic-declaration"},{"id":65,"kind":"semantic-declaration"},{"id":66,"kind":"semantic-declaration"},{"id":67,"kind":"semantic-declaration"}],"semantic_id":"c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517","source_id":"ce718723d5d252a9adafdc3cb3b76931b1d91e053dd3e7e31bcb9b9496a1941c","sources":[{"id":0,"kind":"file","path":"src/PlannerOracle.lex.tex","sha256":"8579b13fcc26a5bdd3323388f400d1b0b805359f96fe4beea29b26bbaa79f50b"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/LexLeanTarget/PlannerOracle.lean"},{"id":1,"kind":"tex","path":"modules/LexLeanTarget/PlannerOracle.tex"}],"mappings":[{"artifact":0,"gen_end":362,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":8685,"src_start":0},{"artifact":0,"gen_end":493,"gen_start":362,"node":1,"role":"declaration","source":0,"src_end":264,"src_start":122},{"artifact":0,"gen_end":597,"gen_start":493,"node":2,"role":"declaration","source":0,"src_end":390,"src_start":266},{"artifact":0,"gen_end":3664,"gen_start":597,"node":3,"role":"declaration","source":0,"src_end":580,"src_start":392},{"artifact":0,"gen_end":3847,"gen_start":3664,"node":4,"role":"declaration","source":0,"src_end":727,"src_start":582},{"artifact":0,"gen_end":6929,"gen_start":3847,"node":5,"role":"declaration","source":0,"src_end":988,"src_start":729},{"artifact":0,"gen_end":7795,"gen_start":6929,"node":6,"role":"declaration","source":0,"src_end":1228,"src_start":990},{"artifact":0,"gen_end":10878,"gen_start":7795,"node":7,"role":"declaration","source":0,"src_end":1489,"src_start":1230},{"artifact":0,"gen_end":11754,"gen_start":10878,"node":8,"role":"declaration","source":0,"src_end":1730,"src_start":1491},{"artifact":0,"gen_end":14926,"gen_start":11754,"node":9,"role":"declaration","source":0,"src_end":2067,"src_start":1732},{"artifact":0,"gen_end":16045,"gen_start":14926,"node":10,"role":"declaration","source":0,"src_end":2456,"src_start":2069},{"artifact":0,"gen_end":16172,"gen_start":16045,"node":11,"role":"declaration","source":0,"src_end":2604,"src_start":2458},{"artifact":0,"gen_end":16312,"gen_start":16172,"node":12,"role":"declaration","source":0,"src_end":2779,"src_start":2606},{"artifact":0,"gen_end":19407,"gen_start":16312,"node":13,"role":"declaration","source":0,"src_end":3023,"src_start":2781},{"artifact":0,"gen_end":19600,"gen_start":19407,"node":14,"role":"declaration","source":0,"src_end":3231,"src_start":3025},{"artifact":0,"gen_end":22603,"gen_start":19600,"node":15,"role":"declaration","source":0,"src_end":3424,"src_start":3233},{"artifact":0,"gen_end":53421,"gen_start":22603,"node":16,"role":"declaration","source":0,"src_end":3997,"src_start":3426},{"artifact":0,"gen_end":53506,"gen_start":53421,"node":17,"role":"declaration","source":0,"src_end":4090,"src_start":3999},{"artifact":0,"gen_end":53594,"gen_start":53506,"node":18,"role":"declaration","source":0,"src_end":4219,"src_start":4092},{"artifact":0,"gen_end":56664,"gen_start":53594,"node":19,"role":"declaration","source":0,"src_end":4445,"src_start":4221},{"artifact":0,"gen_end":56849,"gen_start":56664,"node":20,"role":"declaration","source":0,"src_end":4637,"src_start":4447},{"artifact":0,"gen_end":56933,"gen_start":56849,"node":21,"role":"declaration","source":0,"src_end":4729,"src_start":4639},{"artifact":0,"gen_end":57020,"gen_start":56933,"node":22,"role":"declaration","source":0,"src_end":4857,"src_start":4731},{"artifact":0,"gen_end":60085,"gen_start":57020,"node":23,"role":"declaration","source":0,"src_end":5078,"src_start":4859},{"artifact":0,"gen_end":60269,"gen_start":60085,"node":24,"role":"declaration","source":0,"src_end":5269,"src_start":5080},{"artifact":0,"gen_end":63381,"gen_start":60269,"node":25,"role":"declaration","source":0,"src_end":5569,"src_start":5271},{"artifact":0,"gen_end":63519,"gen_start":63381,"node":26,"role":"declaration","source":0,"src_end":5723,"src_start":5571},{"artifact":0,"gen_end":66534,"gen_start":63519,"node":27,"role":"declaration","source":0,"src_end":5927,"src_start":5725},{"artifact":0,"gen_end":69645,"gen_start":66534,"node":28,"role":"declaration","source":0,"src_end":6207,"src_start":5929},{"artifact":0,"gen_end":72773,"gen_start":69645,"node":29,"role":"declaration","source":0,"src_end":6521,"src_start":6209},{"artifact":0,"gen_end":75865,"gen_start":72773,"node":30,"role":"declaration","source":0,"src_end":6801,"src_start":6523},{"artifact":0,"gen_end":107360,"gen_start":75865,"node":31,"role":"declaration","source":0,"src_end":7410,"src_start":6803},{"artifact":0,"gen_end":139950,"gen_start":107360,"node":32,"role":"declaration","source":0,"src_end":8079,"src_start":7412},{"artifact":0,"gen_end":171694,"gen_start":139950,"node":33,"role":"declaration","source":0,"src_end":8649,"src_start":8081},{"artifact":0,"gen_end":171727,"gen_start":171694,"node":0,"role":"declaration","source":0,"src_end":8685,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":34,"role":"declaration","source":0,"src_end":8685,"src_start":0},{"artifact":1,"gen_end":450,"gen_start":134,"node":35,"role":"declaration","source":0,"src_end":264,"src_start":122},{"artifact":1,"gen_end":740,"gen_start":450,"node":36,"role":"declaration","source":0,"src_end":390,"src_start":266},{"artifact":1,"gen_end":1018,"gen_start":740,"node":37,"role":"declaration","source":0,"src_end":580,"src_start":392},{"artifact":1,"gen_end":1647,"gen_start":1018,"node":38,"role":"declaration","source":0,"src_end":727,"src_start":582},{"artifact":1,"gen_end":1989,"gen_start":1647,"node":39,"role":"declaration","source":0,"src_end":988,"src_start":729},{"artifact":1,"gen_end":3308,"gen_start":1989,"node":40,"role":"declaration","source":0,"src_end":1228,"src_start":990},{"artifact":1,"gen_end":3651,"gen_start":3308,"node":41,"role":"declaration","source":0,"src_end":1489,"src_start":1230},{"artifact":1,"gen_end":4981,"gen_start":3651,"node":42,"role":"declaration","source":0,"src_end":1730,"src_start":1491},{"artifact":1,"gen_end":5415,"gen_start":4981,"node":43,"role":"declaration","source":0,"src_end":2067,"src_start":1732},{"artifact":1,"gen_end":7272,"gen_start":5415,"node":44,"role":"declaration","source":0,"src_end":2456,"src_start":2069},{"artifact":1,"gen_end":7585,"gen_start":7272,"node":45,"role":"declaration","source":0,"src_end":2604,"src_start":2458},{"artifact":1,"gen_end":7974,"gen_start":7585,"node":46,"role":"declaration","source":0,"src_end":2779,"src_start":2606},{"artifact":1,"gen_end":8279,"gen_start":7974,"node":47,"role":"declaration","source":0,"src_end":3023,"src_start":2781},{"artifact":1,"gen_end":8992,"gen_start":8279,"node":48,"role":"declaration","source":0,"src_end":3231,"src_start":3025},{"artifact":1,"gen_end":9254,"gen_start":8992,"node":49,"role":"declaration","source":0,"src_end":3424,"src_start":3233},{"artifact":1,"gen_end":27419,"gen_start":9254,"node":50,"role":"declaration","source":0,"src_end":3997,"src_start":3426},{"artifact":1,"gen_end":27674,"gen_start":27419,"node":51,"role":"declaration","source":0,"src_end":4090,"src_start":3999},{"artifact":1,"gen_end":28008,"gen_start":27674,"node":52,"role":"declaration","source":0,"src_end":4219,"src_start":4092},{"artifact":1,"gen_end":28292,"gen_start":28008,"node":53,"role":"declaration","source":0,"src_end":4445,"src_start":4221},{"artifact":1,"gen_end":28953,"gen_start":28292,"node":54,"role":"declaration","source":0,"src_end":4637,"src_start":4447},{"artifact":1,"gen_end":29207,"gen_start":28953,"node":55,"role":"declaration","source":0,"src_end":4729,"src_start":4639},{"artifact":1,"gen_end":29540,"gen_start":29207,"node":56,"role":"declaration","source":0,"src_end":4857,"src_start":4731},{"artifact":1,"gen_end":29821,"gen_start":29540,"node":57,"role":"declaration","source":0,"src_end":5078,"src_start":4859},{"artifact":1,"gen_end":30480,"gen_start":29821,"node":58,"role":"declaration","source":0,"src_end":5269,"src_start":5080},{"artifact":1,"gen_end":30826,"gen_start":30480,"node":59,"role":"declaration","source":0,"src_end":5569,"src_start":5271},{"artifact":1,"gen_end":31150,"gen_start":30826,"node":60,"role":"declaration","source":0,"src_end":5723,"src_start":5571},{"artifact":1,"gen_end":31418,"gen_start":31150,"node":61,"role":"declaration","source":0,"src_end":5927,"src_start":5725},{"artifact":1,"gen_end":31775,"gen_start":31418,"node":62,"role":"declaration","source":0,"src_end":6207,"src_start":5929},{"artifact":1,"gen_end":32131,"gen_start":31775,"node":63,"role":"declaration","source":0,"src_end":6521,"src_start":6209},{"artifact":1,"gen_end":32464,"gen_start":32131,"node":64,"role":"declaration","source":0,"src_end":6801,"src_start":6523},{"artifact":1,"gen_end":51452,"gen_start":32464,"node":65,"role":"declaration","source":0,"src_end":7410,"src_start":6803},{"artifact":1,"gen_end":71336,"gen_start":51452,"node":66,"role":"declaration","source":0,"src_end":8079,"src_start":7412},{"artifact":1,"gen_end":90352,"gen_start":71336,"node":67,"role":"declaration","source":0,"src_end":8649,"src_start":8081},{"artifact":1,"gen_end":90367,"gen_start":90352,"node":34,"role":"declaration","source":0,"src_end":8685,"src_start":0}],"module":"PlannerOracle","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-latex-module"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"},{"id":40,"kind":"semantic-declaration"},{"id":41,"kind":"semantic-declaration"},{"id":42,"kind":"semantic-declaration"},{"id":43,"kind":"semantic-declaration"},{"id":44,"kind":"semantic-declaration"},{"id":45,"kind":"semantic-declaration"},{"id":46,"kind":"semantic-declaration"},{"id":47,"kind":"semantic-declaration"},{"id":48,"kind":"semantic-declaration"},{"id":49,"kind":"semantic-declaration"},{"id":50,"kind":"semantic-declaration"},{"id":51,"kind":"semantic-declaration"},{"id":52,"kind":"semantic-declaration"},{"id":53,"kind":"semantic-declaration"},{"id":54,"kind":"semantic-declaration"},{"id":55,"kind":"semantic-declaration"},{"id":56,"kind":"semantic-declaration"},{"id":57,"kind":"semantic-declaration"},{"id":58,"kind":"semantic-declaration"},{"id":59,"kind":"semantic-declaration"},{"id":60,"kind":"semantic-declaration"},{"id":61,"kind":"semantic-declaration"},{"id":62,"kind":"semantic-declaration"},{"id":63,"kind":"semantic-declaration"},{"id":64,"kind":"semantic-declaration"},{"id":65,"kind":"semantic-declaration"},{"id":66,"kind":"semantic-declaration"},{"id":67,"kind":"semantic-declaration"}],"semantic_id":"e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb","source_id":"965efd311d3549a7c17dd823b4418cfee906beecd273f4bfcafb371c36d9ce99","sources":[{"id":0,"kind":"file","path":"src/PlannerOracle.lex.tex","sha256":"8579b13fcc26a5bdd3323388f400d1b0b805359f96fe4beea29b26bbaa79f50b"}],"spec":"lexlean/source-map/1"} diff --git a/compiler/expected/build/maps/LexLeanTarget/ReasoningFixtures.map.json b/compiler/expected/build/maps/LexLeanTarget/ReasoningFixtures.map.json index 1c0f0add7..8f7955ca4 100644 --- a/compiler/expected/build/maps/LexLeanTarget/ReasoningFixtures.map.json +++ b/compiler/expected/build/maps/LexLeanTarget/ReasoningFixtures.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/LexLeanTarget/ReasoningFixtures.lean"},{"id":1,"kind":"tex","path":"modules/LexLeanTarget/ReasoningFixtures.tex"}],"mappings":[{"artifact":0,"gen_end":510,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":699968,"src_start":0},{"artifact":0,"gen_end":1242,"gen_start":510,"node":1,"role":"declaration","source":0,"src_end":1039,"src_start":331},{"artifact":0,"gen_end":2552,"gen_start":1242,"node":2,"role":"declaration","source":0,"src_end":2029,"src_start":1041},{"artifact":0,"gen_end":2840,"gen_start":2552,"node":3,"role":"declaration","source":0,"src_end":2350,"src_start":2031},{"artifact":0,"gen_end":3461,"gen_start":2840,"node":4,"role":"declaration","source":0,"src_end":2845,"src_start":2352},{"artifact":0,"gen_end":3743,"gen_start":3461,"node":5,"role":"declaration","source":0,"src_end":3160,"src_start":2847},{"artifact":0,"gen_end":4098,"gen_start":3743,"node":6,"role":"declaration","source":0,"src_end":3469,"src_start":3162},{"artifact":0,"gen_end":4390,"gen_start":4098,"node":7,"role":"declaration","source":0,"src_end":3794,"src_start":3471},{"artifact":0,"gen_end":4741,"gen_start":4390,"node":8,"role":"declaration","source":0,"src_end":4099,"src_start":3796},{"artifact":0,"gen_end":5025,"gen_start":4741,"node":9,"role":"declaration","source":0,"src_end":4416,"src_start":4101},{"artifact":0,"gen_end":28222,"gen_start":5025,"node":10,"role":"declaration","source":0,"src_end":22330,"src_start":4418},{"artifact":0,"gen_end":28475,"gen_start":28222,"node":11,"role":"declaration","source":0,"src_end":22611,"src_start":22332},{"artifact":0,"gen_end":29278,"gen_start":28475,"node":12,"role":"declaration","source":0,"src_end":23361,"src_start":22613},{"artifact":0,"gen_end":30654,"gen_start":29278,"node":13,"role":"declaration","source":0,"src_end":24693,"src_start":23363},{"artifact":0,"gen_end":53850,"gen_start":30654,"node":14,"role":"declaration","source":0,"src_end":42606,"src_start":24695},{"artifact":0,"gen_end":54100,"gen_start":53850,"node":15,"role":"declaration","source":0,"src_end":42884,"src_start":42608},{"artifact":0,"gen_end":55077,"gen_start":54100,"node":16,"role":"declaration","source":0,"src_end":43752,"src_start":42886},{"artifact":0,"gen_end":56444,"gen_start":55077,"node":17,"role":"declaration","source":0,"src_end":45075,"src_start":43754},{"artifact":0,"gen_end":75337,"gen_start":56444,"node":18,"role":"declaration","source":0,"src_end":59906,"src_start":45077},{"artifact":0,"gen_end":75778,"gen_start":75337,"node":19,"role":"declaration","source":0,"src_end":60351,"src_start":59908},{"artifact":0,"gen_end":76284,"gen_start":75778,"node":20,"role":"declaration","source":0,"src_end":60866,"src_start":60353},{"artifact":0,"gen_end":78096,"gen_start":76284,"node":21,"role":"declaration","source":0,"src_end":62617,"src_start":60868},{"artifact":0,"gen_end":98623,"gen_start":78096,"node":22,"role":"declaration","source":0,"src_end":78672,"src_start":62619},{"artifact":0,"gen_end":99072,"gen_start":98623,"node":23,"role":"declaration","source":0,"src_end":79125,"src_start":78674},{"artifact":0,"gen_end":99586,"gen_start":99072,"node":24,"role":"declaration","source":0,"src_end":79648,"src_start":79127},{"artifact":0,"gen_end":101406,"gen_start":99586,"node":25,"role":"declaration","source":0,"src_end":81407,"src_start":79650},{"artifact":0,"gen_end":122020,"gen_start":101406,"node":26,"role":"declaration","source":0,"src_end":97540,"src_start":81409},{"artifact":0,"gen_end":122463,"gen_start":122020,"node":27,"role":"declaration","source":0,"src_end":97987,"src_start":97542},{"artifact":0,"gen_end":122971,"gen_start":122463,"node":28,"role":"declaration","source":0,"src_end":98504,"src_start":97989},{"artifact":0,"gen_end":124785,"gen_start":122971,"node":29,"role":"declaration","source":0,"src_end":100257,"src_start":98506},{"artifact":0,"gen_end":179944,"gen_start":124785,"node":30,"role":"declaration","source":0,"src_end":142701,"src_start":100259},{"artifact":0,"gen_end":180533,"gen_start":179944,"node":31,"role":"declaration","source":0,"src_end":143259,"src_start":142703},{"artifact":0,"gen_end":180749,"gen_start":180533,"node":32,"role":"declaration","source":0,"src_end":143548,"src_start":143261},{"artifact":0,"gen_end":181290,"gen_start":180749,"node":33,"role":"declaration","source":0,"src_end":144134,"src_start":143550},{"artifact":0,"gen_end":236448,"gen_start":181290,"node":34,"role":"declaration","source":0,"src_end":186577,"src_start":144136},{"artifact":0,"gen_end":237034,"gen_start":236448,"node":35,"role":"declaration","source":0,"src_end":187132,"src_start":186579},{"artifact":0,"gen_end":237247,"gen_start":237034,"node":36,"role":"declaration","source":0,"src_end":187418,"src_start":187134},{"artifact":0,"gen_end":237784,"gen_start":237247,"node":37,"role":"declaration","source":0,"src_end":188000,"src_start":187420},{"artifact":0,"gen_end":314696,"gen_start":237784,"node":38,"role":"declaration","source":0,"src_end":247140,"src_start":188002},{"artifact":0,"gen_end":314945,"gen_start":314696,"node":39,"role":"declaration","source":0,"src_end":247417,"src_start":247142},{"artifact":0,"gen_end":316098,"gen_start":314945,"node":40,"role":"declaration","source":0,"src_end":248414,"src_start":247419},{"artifact":0,"gen_end":317566,"gen_start":316098,"node":41,"role":"declaration","source":0,"src_end":249857,"src_start":248416},{"artifact":0,"gen_end":394478,"gen_start":317566,"node":42,"role":"declaration","source":0,"src_end":308997,"src_start":249859},{"artifact":0,"gen_end":394727,"gen_start":394478,"node":43,"role":"declaration","source":0,"src_end":309274,"src_start":308999},{"artifact":0,"gen_end":395534,"gen_start":394727,"node":44,"role":"declaration","source":0,"src_end":310028,"src_start":309276},{"artifact":0,"gen_end":397003,"gen_start":395534,"node":45,"role":"declaration","source":0,"src_end":311472,"src_start":310030},{"artifact":0,"gen_end":453293,"gen_start":397003,"node":46,"role":"declaration","source":0,"src_end":354793,"src_start":311474},{"artifact":0,"gen_end":453892,"gen_start":453293,"node":47,"role":"declaration","source":0,"src_end":355361,"src_start":354795},{"artifact":0,"gen_end":454214,"gen_start":453892,"node":48,"role":"declaration","source":0,"src_end":355738,"src_start":355363},{"artifact":0,"gen_end":454770,"gen_start":454214,"node":49,"role":"declaration","source":0,"src_end":356339,"src_start":355740},{"artifact":0,"gen_end":511059,"gen_start":454770,"node":50,"role":"declaration","source":0,"src_end":399659,"src_start":356341},{"artifact":0,"gen_end":511656,"gen_start":511059,"node":51,"role":"declaration","source":0,"src_end":400225,"src_start":399661},{"artifact":0,"gen_end":511975,"gen_start":511656,"node":52,"role":"declaration","source":0,"src_end":400599,"src_start":400227},{"artifact":0,"gen_end":512529,"gen_start":511975,"node":53,"role":"declaration","source":0,"src_end":401198,"src_start":400601},{"artifact":0,"gen_end":561947,"gen_start":512529,"node":54,"role":"declaration","source":0,"src_end":439258,"src_start":401200},{"artifact":0,"gen_end":562199,"gen_start":561947,"node":55,"role":"declaration","source":0,"src_end":439538,"src_start":439260},{"artifact":0,"gen_end":563001,"gen_start":562199,"node":56,"role":"declaration","source":0,"src_end":440287,"src_start":439540},{"artifact":0,"gen_end":564403,"gen_start":563001,"node":57,"role":"declaration","source":0,"src_end":441669,"src_start":440289},{"artifact":0,"gen_end":613823,"gen_start":564403,"node":58,"role":"declaration","source":0,"src_end":479731,"src_start":441671},{"artifact":0,"gen_end":614081,"gen_start":613823,"node":59,"role":"declaration","source":0,"src_end":480017,"src_start":479733},{"artifact":0,"gen_end":614890,"gen_start":614081,"node":60,"role":"declaration","source":0,"src_end":480773,"src_start":480019},{"artifact":0,"gen_end":616311,"gen_start":614890,"node":61,"role":"declaration","source":0,"src_end":482174,"src_start":480775},{"artifact":0,"gen_end":665730,"gen_start":616311,"node":62,"role":"declaration","source":0,"src_end":520235,"src_start":482176},{"artifact":0,"gen_end":665985,"gen_start":665730,"node":63,"role":"declaration","source":0,"src_end":520518,"src_start":520237},{"artifact":0,"gen_end":666968,"gen_start":665985,"node":64,"role":"declaration","source":0,"src_end":521392,"src_start":520520},{"artifact":0,"gen_end":668380,"gen_start":666968,"node":65,"role":"declaration","source":0,"src_end":522784,"src_start":521394},{"artifact":0,"gen_end":699337,"gen_start":668380,"node":66,"role":"declaration","source":0,"src_end":546611,"src_start":522786},{"artifact":0,"gen_end":699669,"gen_start":699337,"node":67,"role":"declaration","source":0,"src_end":546953,"src_start":546613},{"artifact":0,"gen_end":699876,"gen_start":699669,"node":68,"role":"declaration","source":0,"src_end":547233,"src_start":546955},{"artifact":0,"gen_end":700267,"gen_start":699876,"node":69,"role":"declaration","source":0,"src_end":547679,"src_start":547235},{"artifact":0,"gen_end":758400,"gen_start":700267,"node":70,"role":"declaration","source":0,"src_end":592392,"src_start":547681},{"artifact":0,"gen_end":758991,"gen_start":758400,"node":71,"role":"declaration","source":0,"src_end":592952,"src_start":592394},{"artifact":0,"gen_end":759209,"gen_start":758991,"node":72,"role":"declaration","source":0,"src_end":593243,"src_start":592954},{"artifact":0,"gen_end":759757,"gen_start":759209,"node":73,"role":"declaration","source":0,"src_end":593836,"src_start":593245},{"artifact":0,"gen_end":833886,"gen_start":759757,"node":74,"role":"declaration","source":0,"src_end":650834,"src_start":593838},{"artifact":0,"gen_end":834479,"gen_start":833886,"node":75,"role":"declaration","source":0,"src_end":651396,"src_start":650836},{"artifact":0,"gen_end":835946,"gen_start":834479,"node":76,"role":"declaration","source":0,"src_end":652571,"src_start":651398},{"artifact":0,"gen_end":837191,"gen_start":835946,"node":77,"role":"declaration","source":0,"src_end":653786,"src_start":652573},{"artifact":0,"gen_end":895323,"gen_start":837191,"node":78,"role":"declaration","source":0,"src_end":698498,"src_start":653788},{"artifact":0,"gen_end":895911,"gen_start":895323,"node":79,"role":"declaration","source":0,"src_end":699055,"src_start":698500},{"artifact":0,"gen_end":896126,"gen_start":895911,"node":80,"role":"declaration","source":0,"src_end":699343,"src_start":699057},{"artifact":0,"gen_end":896670,"gen_start":896126,"node":81,"role":"declaration","source":0,"src_end":699932,"src_start":699345},{"artifact":0,"gen_end":896707,"gen_start":896670,"node":0,"role":"declaration","source":0,"src_end":699968,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":82,"role":"declaration","source":0,"src_end":699968,"src_start":0},{"artifact":1,"gen_end":1102,"gen_start":134,"node":83,"role":"declaration","source":0,"src_end":1039,"src_start":331},{"artifact":1,"gen_end":2594,"gen_start":1102,"node":84,"role":"declaration","source":0,"src_end":2029,"src_start":1041},{"artifact":1,"gen_end":3079,"gen_start":2594,"node":85,"role":"declaration","source":0,"src_end":2350,"src_start":2031},{"artifact":1,"gen_end":3882,"gen_start":3079,"node":86,"role":"declaration","source":0,"src_end":2845,"src_start":2352},{"artifact":1,"gen_end":4361,"gen_start":3882,"node":87,"role":"declaration","source":0,"src_end":3160,"src_start":2847},{"artifact":1,"gen_end":4898,"gen_start":4361,"node":88,"role":"declaration","source":0,"src_end":3469,"src_start":3162},{"artifact":1,"gen_end":5387,"gen_start":4898,"node":89,"role":"declaration","source":0,"src_end":3794,"src_start":3471},{"artifact":1,"gen_end":5920,"gen_start":5387,"node":90,"role":"declaration","source":0,"src_end":4099,"src_start":3796},{"artifact":1,"gen_end":6401,"gen_start":5920,"node":91,"role":"declaration","source":0,"src_end":4416,"src_start":4101},{"artifact":1,"gen_end":29826,"gen_start":6401,"node":92,"role":"declaration","source":0,"src_end":22330,"src_start":4418},{"artifact":1,"gen_end":30266,"gen_start":29826,"node":93,"role":"declaration","source":0,"src_end":22611,"src_start":22332},{"artifact":1,"gen_end":31219,"gen_start":30266,"node":94,"role":"declaration","source":0,"src_end":23361,"src_start":22613},{"artifact":1,"gen_end":32745,"gen_start":31219,"node":95,"role":"declaration","source":0,"src_end":24693,"src_start":23363},{"artifact":1,"gen_end":56169,"gen_start":32745,"node":96,"role":"declaration","source":0,"src_end":42606,"src_start":24695},{"artifact":1,"gen_end":56606,"gen_start":56169,"node":97,"role":"declaration","source":0,"src_end":42884,"src_start":42608},{"artifact":1,"gen_end":57733,"gen_start":56606,"node":98,"role":"declaration","source":0,"src_end":43752,"src_start":42886},{"artifact":1,"gen_end":59250,"gen_start":57733,"node":99,"role":"declaration","source":0,"src_end":45075,"src_start":43754},{"artifact":1,"gen_end":78295,"gen_start":59250,"node":100,"role":"declaration","source":0,"src_end":59906,"src_start":45077},{"artifact":1,"gen_end":78923,"gen_start":78295,"node":101,"role":"declaration","source":0,"src_end":60351,"src_start":59908},{"artifact":1,"gen_end":79579,"gen_start":78923,"node":102,"role":"declaration","source":0,"src_end":60866,"src_start":60353},{"artifact":1,"gen_end":81556,"gen_start":79579,"node":103,"role":"declaration","source":0,"src_end":62617,"src_start":60868},{"artifact":1,"gen_end":102235,"gen_start":81556,"node":104,"role":"declaration","source":0,"src_end":78672,"src_start":62619},{"artifact":1,"gen_end":102871,"gen_start":102235,"node":105,"role":"declaration","source":0,"src_end":79125,"src_start":78674},{"artifact":1,"gen_end":103535,"gen_start":102871,"node":106,"role":"declaration","source":0,"src_end":79648,"src_start":79127},{"artifact":1,"gen_end":105520,"gen_start":103535,"node":107,"role":"declaration","source":0,"src_end":81407,"src_start":79650},{"artifact":1,"gen_end":126322,"gen_start":105520,"node":108,"role":"declaration","source":0,"src_end":97540,"src_start":81409},{"artifact":1,"gen_end":126952,"gen_start":126322,"node":109,"role":"declaration","source":0,"src_end":97987,"src_start":97542},{"artifact":1,"gen_end":127610,"gen_start":126952,"node":110,"role":"declaration","source":0,"src_end":98504,"src_start":97989},{"artifact":1,"gen_end":129589,"gen_start":127610,"node":111,"role":"declaration","source":0,"src_end":100257,"src_start":98506},{"artifact":1,"gen_end":185074,"gen_start":129589,"node":112,"role":"declaration","source":0,"src_end":142701,"src_start":100259},{"artifact":1,"gen_end":185850,"gen_start":185074,"node":113,"role":"declaration","source":0,"src_end":143259,"src_start":142703},{"artifact":1,"gen_end":186216,"gen_start":185850,"node":114,"role":"declaration","source":0,"src_end":143548,"src_start":143261},{"artifact":1,"gen_end":186909,"gen_start":186216,"node":115,"role":"declaration","source":0,"src_end":144134,"src_start":143550},{"artifact":1,"gen_end":242393,"gen_start":186909,"node":116,"role":"declaration","source":0,"src_end":186577,"src_start":144136},{"artifact":1,"gen_end":243166,"gen_start":242393,"node":117,"role":"declaration","source":0,"src_end":187132,"src_start":186579},{"artifact":1,"gen_end":243529,"gen_start":243166,"node":118,"role":"declaration","source":0,"src_end":187418,"src_start":187134},{"artifact":1,"gen_end":244218,"gen_start":243529,"node":119,"role":"declaration","source":0,"src_end":188000,"src_start":187420},{"artifact":1,"gen_end":321664,"gen_start":244218,"node":120,"role":"declaration","source":0,"src_end":247140,"src_start":188002},{"artifact":1,"gen_end":322100,"gen_start":321664,"node":121,"role":"declaration","source":0,"src_end":247417,"src_start":247142},{"artifact":1,"gen_end":323403,"gen_start":322100,"node":122,"role":"declaration","source":0,"src_end":248414,"src_start":247419},{"artifact":1,"gen_end":325021,"gen_start":323403,"node":123,"role":"declaration","source":0,"src_end":249857,"src_start":248416},{"artifact":1,"gen_end":402467,"gen_start":325021,"node":124,"role":"declaration","source":0,"src_end":308997,"src_start":249859},{"artifact":1,"gen_end":402903,"gen_start":402467,"node":125,"role":"declaration","source":0,"src_end":309274,"src_start":308999},{"artifact":1,"gen_end":403860,"gen_start":402903,"node":126,"role":"declaration","source":0,"src_end":310028,"src_start":309276},{"artifact":1,"gen_end":405479,"gen_start":403860,"node":127,"role":"declaration","source":0,"src_end":311472,"src_start":310030},{"artifact":1,"gen_end":462109,"gen_start":405479,"node":128,"role":"declaration","source":0,"src_end":354793,"src_start":311474},{"artifact":1,"gen_end":462895,"gen_start":462109,"node":129,"role":"declaration","source":0,"src_end":355361,"src_start":354795},{"artifact":1,"gen_end":463367,"gen_start":462895,"node":130,"role":"declaration","source":0,"src_end":355738,"src_start":355363},{"artifact":1,"gen_end":464075,"gen_start":463367,"node":131,"role":"declaration","source":0,"src_end":356339,"src_start":355740},{"artifact":1,"gen_end":520704,"gen_start":464075,"node":132,"role":"declaration","source":0,"src_end":399659,"src_start":356341},{"artifact":1,"gen_end":521488,"gen_start":520704,"node":133,"role":"declaration","source":0,"src_end":400225,"src_start":399661},{"artifact":1,"gen_end":521957,"gen_start":521488,"node":134,"role":"declaration","source":0,"src_end":400599,"src_start":400227},{"artifact":1,"gen_end":522663,"gen_start":521957,"node":135,"role":"declaration","source":0,"src_end":401198,"src_start":400601},{"artifact":1,"gen_end":572493,"gen_start":522663,"node":136,"role":"declaration","source":0,"src_end":439258,"src_start":401200},{"artifact":1,"gen_end":572932,"gen_start":572493,"node":137,"role":"declaration","source":0,"src_end":439538,"src_start":439260},{"artifact":1,"gen_end":573884,"gen_start":572932,"node":138,"role":"declaration","source":0,"src_end":440287,"src_start":439540},{"artifact":1,"gen_end":575436,"gen_start":573884,"node":139,"role":"declaration","source":0,"src_end":441669,"src_start":440289},{"artifact":1,"gen_end":625268,"gen_start":575436,"node":140,"role":"declaration","source":0,"src_end":479731,"src_start":441671},{"artifact":1,"gen_end":625713,"gen_start":625268,"node":141,"role":"declaration","source":0,"src_end":480017,"src_start":479733},{"artifact":1,"gen_end":626672,"gen_start":625713,"node":142,"role":"declaration","source":0,"src_end":480773,"src_start":480019},{"artifact":1,"gen_end":628243,"gen_start":626672,"node":143,"role":"declaration","source":0,"src_end":482174,"src_start":480775},{"artifact":1,"gen_end":678074,"gen_start":628243,"node":144,"role":"declaration","source":0,"src_end":520235,"src_start":482176},{"artifact":1,"gen_end":678516,"gen_start":678074,"node":145,"role":"declaration","source":0,"src_end":520518,"src_start":520237},{"artifact":1,"gen_end":679649,"gen_start":678516,"node":146,"role":"declaration","source":0,"src_end":521392,"src_start":520520},{"artifact":1,"gen_end":681211,"gen_start":679649,"node":147,"role":"declaration","source":0,"src_end":522784,"src_start":521394},{"artifact":1,"gen_end":712500,"gen_start":681211,"node":148,"role":"declaration","source":0,"src_end":546611,"src_start":522786},{"artifact":1,"gen_end":713019,"gen_start":712500,"node":149,"role":"declaration","source":0,"src_end":546953,"src_start":546613},{"artifact":1,"gen_end":713376,"gen_start":713019,"node":150,"role":"declaration","source":0,"src_end":547233,"src_start":546955},{"artifact":1,"gen_end":713917,"gen_start":713376,"node":151,"role":"declaration","source":0,"src_end":547679,"src_start":547235},{"artifact":1,"gen_end":772390,"gen_start":713917,"node":152,"role":"declaration","source":0,"src_end":592392,"src_start":547681},{"artifact":1,"gen_end":773168,"gen_start":772390,"node":153,"role":"declaration","source":0,"src_end":592952,"src_start":592394},{"artifact":1,"gen_end":773536,"gen_start":773168,"node":154,"role":"declaration","source":0,"src_end":593243,"src_start":592954},{"artifact":1,"gen_end":774236,"gen_start":773536,"node":155,"role":"declaration","source":0,"src_end":593836,"src_start":593245},{"artifact":1,"gen_end":848763,"gen_start":774236,"node":156,"role":"declaration","source":0,"src_end":650834,"src_start":593838},{"artifact":1,"gen_end":849543,"gen_start":848763,"node":157,"role":"declaration","source":0,"src_end":651396,"src_start":650836},{"artifact":1,"gen_end":851160,"gen_start":849543,"node":158,"role":"declaration","source":0,"src_end":652571,"src_start":651398},{"artifact":1,"gen_end":852561,"gen_start":851160,"node":159,"role":"declaration","source":0,"src_end":653786,"src_start":652573},{"artifact":1,"gen_end":911033,"gen_start":852561,"node":160,"role":"declaration","source":0,"src_end":698498,"src_start":653788},{"artifact":1,"gen_end":911808,"gen_start":911033,"node":161,"role":"declaration","source":0,"src_end":699055,"src_start":698500},{"artifact":1,"gen_end":912173,"gen_start":911808,"node":162,"role":"declaration","source":0,"src_end":699343,"src_start":699057},{"artifact":1,"gen_end":912869,"gen_start":912173,"node":163,"role":"declaration","source":0,"src_end":699932,"src_start":699345},{"artifact":1,"gen_end":912884,"gen_start":912869,"node":82,"role":"declaration","source":0,"src_end":699968,"src_start":0}],"module":"ReasoningFixtures","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"},{"id":40,"kind":"semantic-declaration"},{"id":41,"kind":"semantic-declaration"},{"id":42,"kind":"semantic-declaration"},{"id":43,"kind":"semantic-declaration"},{"id":44,"kind":"semantic-declaration"},{"id":45,"kind":"semantic-declaration"},{"id":46,"kind":"semantic-declaration"},{"id":47,"kind":"semantic-declaration"},{"id":48,"kind":"semantic-declaration"},{"id":49,"kind":"semantic-declaration"},{"id":50,"kind":"semantic-declaration"},{"id":51,"kind":"semantic-declaration"},{"id":52,"kind":"semantic-declaration"},{"id":53,"kind":"semantic-declaration"},{"id":54,"kind":"semantic-declaration"},{"id":55,"kind":"semantic-declaration"},{"id":56,"kind":"semantic-declaration"},{"id":57,"kind":"semantic-declaration"},{"id":58,"kind":"semantic-declaration"},{"id":59,"kind":"semantic-declaration"},{"id":60,"kind":"semantic-declaration"},{"id":61,"kind":"semantic-declaration"},{"id":62,"kind":"semantic-declaration"},{"id":63,"kind":"semantic-declaration"},{"id":64,"kind":"semantic-declaration"},{"id":65,"kind":"semantic-declaration"},{"id":66,"kind":"semantic-declaration"},{"id":67,"kind":"semantic-declaration"},{"id":68,"kind":"semantic-declaration"},{"id":69,"kind":"semantic-declaration"},{"id":70,"kind":"semantic-declaration"},{"id":71,"kind":"semantic-declaration"},{"id":72,"kind":"semantic-declaration"},{"id":73,"kind":"semantic-declaration"},{"id":74,"kind":"semantic-declaration"},{"id":75,"kind":"semantic-declaration"},{"id":76,"kind":"semantic-declaration"},{"id":77,"kind":"semantic-declaration"},{"id":78,"kind":"semantic-declaration"},{"id":79,"kind":"semantic-declaration"},{"id":80,"kind":"semantic-declaration"},{"id":81,"kind":"semantic-declaration"},{"id":82,"kind":"semantic-latex-module"},{"id":83,"kind":"semantic-declaration"},{"id":84,"kind":"semantic-declaration"},{"id":85,"kind":"semantic-declaration"},{"id":86,"kind":"semantic-declaration"},{"id":87,"kind":"semantic-declaration"},{"id":88,"kind":"semantic-declaration"},{"id":89,"kind":"semantic-declaration"},{"id":90,"kind":"semantic-declaration"},{"id":91,"kind":"semantic-declaration"},{"id":92,"kind":"semantic-declaration"},{"id":93,"kind":"semantic-declaration"},{"id":94,"kind":"semantic-declaration"},{"id":95,"kind":"semantic-declaration"},{"id":96,"kind":"semantic-declaration"},{"id":97,"kind":"semantic-declaration"},{"id":98,"kind":"semantic-declaration"},{"id":99,"kind":"semantic-declaration"},{"id":100,"kind":"semantic-declaration"},{"id":101,"kind":"semantic-declaration"},{"id":102,"kind":"semantic-declaration"},{"id":103,"kind":"semantic-declaration"},{"id":104,"kind":"semantic-declaration"},{"id":105,"kind":"semantic-declaration"},{"id":106,"kind":"semantic-declaration"},{"id":107,"kind":"semantic-declaration"},{"id":108,"kind":"semantic-declaration"},{"id":109,"kind":"semantic-declaration"},{"id":110,"kind":"semantic-declaration"},{"id":111,"kind":"semantic-declaration"},{"id":112,"kind":"semantic-declaration"},{"id":113,"kind":"semantic-declaration"},{"id":114,"kind":"semantic-declaration"},{"id":115,"kind":"semantic-declaration"},{"id":116,"kind":"semantic-declaration"},{"id":117,"kind":"semantic-declaration"},{"id":118,"kind":"semantic-declaration"},{"id":119,"kind":"semantic-declaration"},{"id":120,"kind":"semantic-declaration"},{"id":121,"kind":"semantic-declaration"},{"id":122,"kind":"semantic-declaration"},{"id":123,"kind":"semantic-declaration"},{"id":124,"kind":"semantic-declaration"},{"id":125,"kind":"semantic-declaration"},{"id":126,"kind":"semantic-declaration"},{"id":127,"kind":"semantic-declaration"},{"id":128,"kind":"semantic-declaration"},{"id":129,"kind":"semantic-declaration"},{"id":130,"kind":"semantic-declaration"},{"id":131,"kind":"semantic-declaration"},{"id":132,"kind":"semantic-declaration"},{"id":133,"kind":"semantic-declaration"},{"id":134,"kind":"semantic-declaration"},{"id":135,"kind":"semantic-declaration"},{"id":136,"kind":"semantic-declaration"},{"id":137,"kind":"semantic-declaration"},{"id":138,"kind":"semantic-declaration"},{"id":139,"kind":"semantic-declaration"},{"id":140,"kind":"semantic-declaration"},{"id":141,"kind":"semantic-declaration"},{"id":142,"kind":"semantic-declaration"},{"id":143,"kind":"semantic-declaration"},{"id":144,"kind":"semantic-declaration"},{"id":145,"kind":"semantic-declaration"},{"id":146,"kind":"semantic-declaration"},{"id":147,"kind":"semantic-declaration"},{"id":148,"kind":"semantic-declaration"},{"id":149,"kind":"semantic-declaration"},{"id":150,"kind":"semantic-declaration"},{"id":151,"kind":"semantic-declaration"},{"id":152,"kind":"semantic-declaration"},{"id":153,"kind":"semantic-declaration"},{"id":154,"kind":"semantic-declaration"},{"id":155,"kind":"semantic-declaration"},{"id":156,"kind":"semantic-declaration"},{"id":157,"kind":"semantic-declaration"},{"id":158,"kind":"semantic-declaration"},{"id":159,"kind":"semantic-declaration"},{"id":160,"kind":"semantic-declaration"},{"id":161,"kind":"semantic-declaration"},{"id":162,"kind":"semantic-declaration"},{"id":163,"kind":"semantic-declaration"}],"semantic_id":"c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517","source_id":"ce718723d5d252a9adafdc3cb3b76931b1d91e053dd3e7e31bcb9b9496a1941c","sources":[{"id":0,"kind":"file","path":"src/ReasoningFixtures.lex.tex","sha256":"21de0c44ebce81bb7bb1b05a6e29815cc2e6c19a58a4c85459110bf3fd1dee9c"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/LexLeanTarget/ReasoningFixtures.lean"},{"id":1,"kind":"tex","path":"modules/LexLeanTarget/ReasoningFixtures.tex"}],"mappings":[{"artifact":0,"gen_end":510,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":699968,"src_start":0},{"artifact":0,"gen_end":1242,"gen_start":510,"node":1,"role":"declaration","source":0,"src_end":1039,"src_start":331},{"artifact":0,"gen_end":2552,"gen_start":1242,"node":2,"role":"declaration","source":0,"src_end":2029,"src_start":1041},{"artifact":0,"gen_end":2840,"gen_start":2552,"node":3,"role":"declaration","source":0,"src_end":2350,"src_start":2031},{"artifact":0,"gen_end":3461,"gen_start":2840,"node":4,"role":"declaration","source":0,"src_end":2845,"src_start":2352},{"artifact":0,"gen_end":3743,"gen_start":3461,"node":5,"role":"declaration","source":0,"src_end":3160,"src_start":2847},{"artifact":0,"gen_end":4098,"gen_start":3743,"node":6,"role":"declaration","source":0,"src_end":3469,"src_start":3162},{"artifact":0,"gen_end":4390,"gen_start":4098,"node":7,"role":"declaration","source":0,"src_end":3794,"src_start":3471},{"artifact":0,"gen_end":4741,"gen_start":4390,"node":8,"role":"declaration","source":0,"src_end":4099,"src_start":3796},{"artifact":0,"gen_end":5025,"gen_start":4741,"node":9,"role":"declaration","source":0,"src_end":4416,"src_start":4101},{"artifact":0,"gen_end":28222,"gen_start":5025,"node":10,"role":"declaration","source":0,"src_end":22330,"src_start":4418},{"artifact":0,"gen_end":28475,"gen_start":28222,"node":11,"role":"declaration","source":0,"src_end":22611,"src_start":22332},{"artifact":0,"gen_end":29278,"gen_start":28475,"node":12,"role":"declaration","source":0,"src_end":23361,"src_start":22613},{"artifact":0,"gen_end":30654,"gen_start":29278,"node":13,"role":"declaration","source":0,"src_end":24693,"src_start":23363},{"artifact":0,"gen_end":53850,"gen_start":30654,"node":14,"role":"declaration","source":0,"src_end":42606,"src_start":24695},{"artifact":0,"gen_end":54100,"gen_start":53850,"node":15,"role":"declaration","source":0,"src_end":42884,"src_start":42608},{"artifact":0,"gen_end":55077,"gen_start":54100,"node":16,"role":"declaration","source":0,"src_end":43752,"src_start":42886},{"artifact":0,"gen_end":56444,"gen_start":55077,"node":17,"role":"declaration","source":0,"src_end":45075,"src_start":43754},{"artifact":0,"gen_end":75337,"gen_start":56444,"node":18,"role":"declaration","source":0,"src_end":59906,"src_start":45077},{"artifact":0,"gen_end":75778,"gen_start":75337,"node":19,"role":"declaration","source":0,"src_end":60351,"src_start":59908},{"artifact":0,"gen_end":76284,"gen_start":75778,"node":20,"role":"declaration","source":0,"src_end":60866,"src_start":60353},{"artifact":0,"gen_end":78096,"gen_start":76284,"node":21,"role":"declaration","source":0,"src_end":62617,"src_start":60868},{"artifact":0,"gen_end":98623,"gen_start":78096,"node":22,"role":"declaration","source":0,"src_end":78672,"src_start":62619},{"artifact":0,"gen_end":99072,"gen_start":98623,"node":23,"role":"declaration","source":0,"src_end":79125,"src_start":78674},{"artifact":0,"gen_end":99586,"gen_start":99072,"node":24,"role":"declaration","source":0,"src_end":79648,"src_start":79127},{"artifact":0,"gen_end":101406,"gen_start":99586,"node":25,"role":"declaration","source":0,"src_end":81407,"src_start":79650},{"artifact":0,"gen_end":122020,"gen_start":101406,"node":26,"role":"declaration","source":0,"src_end":97540,"src_start":81409},{"artifact":0,"gen_end":122463,"gen_start":122020,"node":27,"role":"declaration","source":0,"src_end":97987,"src_start":97542},{"artifact":0,"gen_end":122971,"gen_start":122463,"node":28,"role":"declaration","source":0,"src_end":98504,"src_start":97989},{"artifact":0,"gen_end":124785,"gen_start":122971,"node":29,"role":"declaration","source":0,"src_end":100257,"src_start":98506},{"artifact":0,"gen_end":179944,"gen_start":124785,"node":30,"role":"declaration","source":0,"src_end":142701,"src_start":100259},{"artifact":0,"gen_end":180533,"gen_start":179944,"node":31,"role":"declaration","source":0,"src_end":143259,"src_start":142703},{"artifact":0,"gen_end":180749,"gen_start":180533,"node":32,"role":"declaration","source":0,"src_end":143548,"src_start":143261},{"artifact":0,"gen_end":181290,"gen_start":180749,"node":33,"role":"declaration","source":0,"src_end":144134,"src_start":143550},{"artifact":0,"gen_end":236448,"gen_start":181290,"node":34,"role":"declaration","source":0,"src_end":186577,"src_start":144136},{"artifact":0,"gen_end":237034,"gen_start":236448,"node":35,"role":"declaration","source":0,"src_end":187132,"src_start":186579},{"artifact":0,"gen_end":237247,"gen_start":237034,"node":36,"role":"declaration","source":0,"src_end":187418,"src_start":187134},{"artifact":0,"gen_end":237784,"gen_start":237247,"node":37,"role":"declaration","source":0,"src_end":188000,"src_start":187420},{"artifact":0,"gen_end":314696,"gen_start":237784,"node":38,"role":"declaration","source":0,"src_end":247140,"src_start":188002},{"artifact":0,"gen_end":314945,"gen_start":314696,"node":39,"role":"declaration","source":0,"src_end":247417,"src_start":247142},{"artifact":0,"gen_end":316098,"gen_start":314945,"node":40,"role":"declaration","source":0,"src_end":248414,"src_start":247419},{"artifact":0,"gen_end":317566,"gen_start":316098,"node":41,"role":"declaration","source":0,"src_end":249857,"src_start":248416},{"artifact":0,"gen_end":394478,"gen_start":317566,"node":42,"role":"declaration","source":0,"src_end":308997,"src_start":249859},{"artifact":0,"gen_end":394727,"gen_start":394478,"node":43,"role":"declaration","source":0,"src_end":309274,"src_start":308999},{"artifact":0,"gen_end":395534,"gen_start":394727,"node":44,"role":"declaration","source":0,"src_end":310028,"src_start":309276},{"artifact":0,"gen_end":397003,"gen_start":395534,"node":45,"role":"declaration","source":0,"src_end":311472,"src_start":310030},{"artifact":0,"gen_end":453293,"gen_start":397003,"node":46,"role":"declaration","source":0,"src_end":354793,"src_start":311474},{"artifact":0,"gen_end":453892,"gen_start":453293,"node":47,"role":"declaration","source":0,"src_end":355361,"src_start":354795},{"artifact":0,"gen_end":454214,"gen_start":453892,"node":48,"role":"declaration","source":0,"src_end":355738,"src_start":355363},{"artifact":0,"gen_end":454770,"gen_start":454214,"node":49,"role":"declaration","source":0,"src_end":356339,"src_start":355740},{"artifact":0,"gen_end":511059,"gen_start":454770,"node":50,"role":"declaration","source":0,"src_end":399659,"src_start":356341},{"artifact":0,"gen_end":511656,"gen_start":511059,"node":51,"role":"declaration","source":0,"src_end":400225,"src_start":399661},{"artifact":0,"gen_end":511975,"gen_start":511656,"node":52,"role":"declaration","source":0,"src_end":400599,"src_start":400227},{"artifact":0,"gen_end":512529,"gen_start":511975,"node":53,"role":"declaration","source":0,"src_end":401198,"src_start":400601},{"artifact":0,"gen_end":561947,"gen_start":512529,"node":54,"role":"declaration","source":0,"src_end":439258,"src_start":401200},{"artifact":0,"gen_end":562199,"gen_start":561947,"node":55,"role":"declaration","source":0,"src_end":439538,"src_start":439260},{"artifact":0,"gen_end":563001,"gen_start":562199,"node":56,"role":"declaration","source":0,"src_end":440287,"src_start":439540},{"artifact":0,"gen_end":564403,"gen_start":563001,"node":57,"role":"declaration","source":0,"src_end":441669,"src_start":440289},{"artifact":0,"gen_end":613823,"gen_start":564403,"node":58,"role":"declaration","source":0,"src_end":479731,"src_start":441671},{"artifact":0,"gen_end":614081,"gen_start":613823,"node":59,"role":"declaration","source":0,"src_end":480017,"src_start":479733},{"artifact":0,"gen_end":614890,"gen_start":614081,"node":60,"role":"declaration","source":0,"src_end":480773,"src_start":480019},{"artifact":0,"gen_end":616311,"gen_start":614890,"node":61,"role":"declaration","source":0,"src_end":482174,"src_start":480775},{"artifact":0,"gen_end":665730,"gen_start":616311,"node":62,"role":"declaration","source":0,"src_end":520235,"src_start":482176},{"artifact":0,"gen_end":665985,"gen_start":665730,"node":63,"role":"declaration","source":0,"src_end":520518,"src_start":520237},{"artifact":0,"gen_end":666968,"gen_start":665985,"node":64,"role":"declaration","source":0,"src_end":521392,"src_start":520520},{"artifact":0,"gen_end":668380,"gen_start":666968,"node":65,"role":"declaration","source":0,"src_end":522784,"src_start":521394},{"artifact":0,"gen_end":699337,"gen_start":668380,"node":66,"role":"declaration","source":0,"src_end":546611,"src_start":522786},{"artifact":0,"gen_end":699669,"gen_start":699337,"node":67,"role":"declaration","source":0,"src_end":546953,"src_start":546613},{"artifact":0,"gen_end":699876,"gen_start":699669,"node":68,"role":"declaration","source":0,"src_end":547233,"src_start":546955},{"artifact":0,"gen_end":700267,"gen_start":699876,"node":69,"role":"declaration","source":0,"src_end":547679,"src_start":547235},{"artifact":0,"gen_end":758400,"gen_start":700267,"node":70,"role":"declaration","source":0,"src_end":592392,"src_start":547681},{"artifact":0,"gen_end":758991,"gen_start":758400,"node":71,"role":"declaration","source":0,"src_end":592952,"src_start":592394},{"artifact":0,"gen_end":759209,"gen_start":758991,"node":72,"role":"declaration","source":0,"src_end":593243,"src_start":592954},{"artifact":0,"gen_end":759757,"gen_start":759209,"node":73,"role":"declaration","source":0,"src_end":593836,"src_start":593245},{"artifact":0,"gen_end":833886,"gen_start":759757,"node":74,"role":"declaration","source":0,"src_end":650834,"src_start":593838},{"artifact":0,"gen_end":834479,"gen_start":833886,"node":75,"role":"declaration","source":0,"src_end":651396,"src_start":650836},{"artifact":0,"gen_end":835946,"gen_start":834479,"node":76,"role":"declaration","source":0,"src_end":652571,"src_start":651398},{"artifact":0,"gen_end":837191,"gen_start":835946,"node":77,"role":"declaration","source":0,"src_end":653786,"src_start":652573},{"artifact":0,"gen_end":895323,"gen_start":837191,"node":78,"role":"declaration","source":0,"src_end":698498,"src_start":653788},{"artifact":0,"gen_end":895911,"gen_start":895323,"node":79,"role":"declaration","source":0,"src_end":699055,"src_start":698500},{"artifact":0,"gen_end":896126,"gen_start":895911,"node":80,"role":"declaration","source":0,"src_end":699343,"src_start":699057},{"artifact":0,"gen_end":896670,"gen_start":896126,"node":81,"role":"declaration","source":0,"src_end":699932,"src_start":699345},{"artifact":0,"gen_end":896707,"gen_start":896670,"node":0,"role":"declaration","source":0,"src_end":699968,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":82,"role":"declaration","source":0,"src_end":699968,"src_start":0},{"artifact":1,"gen_end":1102,"gen_start":134,"node":83,"role":"declaration","source":0,"src_end":1039,"src_start":331},{"artifact":1,"gen_end":2594,"gen_start":1102,"node":84,"role":"declaration","source":0,"src_end":2029,"src_start":1041},{"artifact":1,"gen_end":3079,"gen_start":2594,"node":85,"role":"declaration","source":0,"src_end":2350,"src_start":2031},{"artifact":1,"gen_end":3882,"gen_start":3079,"node":86,"role":"declaration","source":0,"src_end":2845,"src_start":2352},{"artifact":1,"gen_end":4361,"gen_start":3882,"node":87,"role":"declaration","source":0,"src_end":3160,"src_start":2847},{"artifact":1,"gen_end":4898,"gen_start":4361,"node":88,"role":"declaration","source":0,"src_end":3469,"src_start":3162},{"artifact":1,"gen_end":5387,"gen_start":4898,"node":89,"role":"declaration","source":0,"src_end":3794,"src_start":3471},{"artifact":1,"gen_end":5920,"gen_start":5387,"node":90,"role":"declaration","source":0,"src_end":4099,"src_start":3796},{"artifact":1,"gen_end":6401,"gen_start":5920,"node":91,"role":"declaration","source":0,"src_end":4416,"src_start":4101},{"artifact":1,"gen_end":29826,"gen_start":6401,"node":92,"role":"declaration","source":0,"src_end":22330,"src_start":4418},{"artifact":1,"gen_end":30266,"gen_start":29826,"node":93,"role":"declaration","source":0,"src_end":22611,"src_start":22332},{"artifact":1,"gen_end":31219,"gen_start":30266,"node":94,"role":"declaration","source":0,"src_end":23361,"src_start":22613},{"artifact":1,"gen_end":32745,"gen_start":31219,"node":95,"role":"declaration","source":0,"src_end":24693,"src_start":23363},{"artifact":1,"gen_end":56169,"gen_start":32745,"node":96,"role":"declaration","source":0,"src_end":42606,"src_start":24695},{"artifact":1,"gen_end":56606,"gen_start":56169,"node":97,"role":"declaration","source":0,"src_end":42884,"src_start":42608},{"artifact":1,"gen_end":57733,"gen_start":56606,"node":98,"role":"declaration","source":0,"src_end":43752,"src_start":42886},{"artifact":1,"gen_end":59250,"gen_start":57733,"node":99,"role":"declaration","source":0,"src_end":45075,"src_start":43754},{"artifact":1,"gen_end":78295,"gen_start":59250,"node":100,"role":"declaration","source":0,"src_end":59906,"src_start":45077},{"artifact":1,"gen_end":78923,"gen_start":78295,"node":101,"role":"declaration","source":0,"src_end":60351,"src_start":59908},{"artifact":1,"gen_end":79579,"gen_start":78923,"node":102,"role":"declaration","source":0,"src_end":60866,"src_start":60353},{"artifact":1,"gen_end":81556,"gen_start":79579,"node":103,"role":"declaration","source":0,"src_end":62617,"src_start":60868},{"artifact":1,"gen_end":102235,"gen_start":81556,"node":104,"role":"declaration","source":0,"src_end":78672,"src_start":62619},{"artifact":1,"gen_end":102871,"gen_start":102235,"node":105,"role":"declaration","source":0,"src_end":79125,"src_start":78674},{"artifact":1,"gen_end":103535,"gen_start":102871,"node":106,"role":"declaration","source":0,"src_end":79648,"src_start":79127},{"artifact":1,"gen_end":105520,"gen_start":103535,"node":107,"role":"declaration","source":0,"src_end":81407,"src_start":79650},{"artifact":1,"gen_end":126322,"gen_start":105520,"node":108,"role":"declaration","source":0,"src_end":97540,"src_start":81409},{"artifact":1,"gen_end":126952,"gen_start":126322,"node":109,"role":"declaration","source":0,"src_end":97987,"src_start":97542},{"artifact":1,"gen_end":127610,"gen_start":126952,"node":110,"role":"declaration","source":0,"src_end":98504,"src_start":97989},{"artifact":1,"gen_end":129589,"gen_start":127610,"node":111,"role":"declaration","source":0,"src_end":100257,"src_start":98506},{"artifact":1,"gen_end":185074,"gen_start":129589,"node":112,"role":"declaration","source":0,"src_end":142701,"src_start":100259},{"artifact":1,"gen_end":185850,"gen_start":185074,"node":113,"role":"declaration","source":0,"src_end":143259,"src_start":142703},{"artifact":1,"gen_end":186216,"gen_start":185850,"node":114,"role":"declaration","source":0,"src_end":143548,"src_start":143261},{"artifact":1,"gen_end":186909,"gen_start":186216,"node":115,"role":"declaration","source":0,"src_end":144134,"src_start":143550},{"artifact":1,"gen_end":242393,"gen_start":186909,"node":116,"role":"declaration","source":0,"src_end":186577,"src_start":144136},{"artifact":1,"gen_end":243166,"gen_start":242393,"node":117,"role":"declaration","source":0,"src_end":187132,"src_start":186579},{"artifact":1,"gen_end":243529,"gen_start":243166,"node":118,"role":"declaration","source":0,"src_end":187418,"src_start":187134},{"artifact":1,"gen_end":244218,"gen_start":243529,"node":119,"role":"declaration","source":0,"src_end":188000,"src_start":187420},{"artifact":1,"gen_end":321664,"gen_start":244218,"node":120,"role":"declaration","source":0,"src_end":247140,"src_start":188002},{"artifact":1,"gen_end":322100,"gen_start":321664,"node":121,"role":"declaration","source":0,"src_end":247417,"src_start":247142},{"artifact":1,"gen_end":323403,"gen_start":322100,"node":122,"role":"declaration","source":0,"src_end":248414,"src_start":247419},{"artifact":1,"gen_end":325021,"gen_start":323403,"node":123,"role":"declaration","source":0,"src_end":249857,"src_start":248416},{"artifact":1,"gen_end":402467,"gen_start":325021,"node":124,"role":"declaration","source":0,"src_end":308997,"src_start":249859},{"artifact":1,"gen_end":402903,"gen_start":402467,"node":125,"role":"declaration","source":0,"src_end":309274,"src_start":308999},{"artifact":1,"gen_end":403860,"gen_start":402903,"node":126,"role":"declaration","source":0,"src_end":310028,"src_start":309276},{"artifact":1,"gen_end":405479,"gen_start":403860,"node":127,"role":"declaration","source":0,"src_end":311472,"src_start":310030},{"artifact":1,"gen_end":462109,"gen_start":405479,"node":128,"role":"declaration","source":0,"src_end":354793,"src_start":311474},{"artifact":1,"gen_end":462895,"gen_start":462109,"node":129,"role":"declaration","source":0,"src_end":355361,"src_start":354795},{"artifact":1,"gen_end":463367,"gen_start":462895,"node":130,"role":"declaration","source":0,"src_end":355738,"src_start":355363},{"artifact":1,"gen_end":464075,"gen_start":463367,"node":131,"role":"declaration","source":0,"src_end":356339,"src_start":355740},{"artifact":1,"gen_end":520704,"gen_start":464075,"node":132,"role":"declaration","source":0,"src_end":399659,"src_start":356341},{"artifact":1,"gen_end":521488,"gen_start":520704,"node":133,"role":"declaration","source":0,"src_end":400225,"src_start":399661},{"artifact":1,"gen_end":521957,"gen_start":521488,"node":134,"role":"declaration","source":0,"src_end":400599,"src_start":400227},{"artifact":1,"gen_end":522663,"gen_start":521957,"node":135,"role":"declaration","source":0,"src_end":401198,"src_start":400601},{"artifact":1,"gen_end":572493,"gen_start":522663,"node":136,"role":"declaration","source":0,"src_end":439258,"src_start":401200},{"artifact":1,"gen_end":572932,"gen_start":572493,"node":137,"role":"declaration","source":0,"src_end":439538,"src_start":439260},{"artifact":1,"gen_end":573884,"gen_start":572932,"node":138,"role":"declaration","source":0,"src_end":440287,"src_start":439540},{"artifact":1,"gen_end":575436,"gen_start":573884,"node":139,"role":"declaration","source":0,"src_end":441669,"src_start":440289},{"artifact":1,"gen_end":625268,"gen_start":575436,"node":140,"role":"declaration","source":0,"src_end":479731,"src_start":441671},{"artifact":1,"gen_end":625713,"gen_start":625268,"node":141,"role":"declaration","source":0,"src_end":480017,"src_start":479733},{"artifact":1,"gen_end":626672,"gen_start":625713,"node":142,"role":"declaration","source":0,"src_end":480773,"src_start":480019},{"artifact":1,"gen_end":628243,"gen_start":626672,"node":143,"role":"declaration","source":0,"src_end":482174,"src_start":480775},{"artifact":1,"gen_end":678074,"gen_start":628243,"node":144,"role":"declaration","source":0,"src_end":520235,"src_start":482176},{"artifact":1,"gen_end":678516,"gen_start":678074,"node":145,"role":"declaration","source":0,"src_end":520518,"src_start":520237},{"artifact":1,"gen_end":679649,"gen_start":678516,"node":146,"role":"declaration","source":0,"src_end":521392,"src_start":520520},{"artifact":1,"gen_end":681211,"gen_start":679649,"node":147,"role":"declaration","source":0,"src_end":522784,"src_start":521394},{"artifact":1,"gen_end":712500,"gen_start":681211,"node":148,"role":"declaration","source":0,"src_end":546611,"src_start":522786},{"artifact":1,"gen_end":713019,"gen_start":712500,"node":149,"role":"declaration","source":0,"src_end":546953,"src_start":546613},{"artifact":1,"gen_end":713376,"gen_start":713019,"node":150,"role":"declaration","source":0,"src_end":547233,"src_start":546955},{"artifact":1,"gen_end":713917,"gen_start":713376,"node":151,"role":"declaration","source":0,"src_end":547679,"src_start":547235},{"artifact":1,"gen_end":772390,"gen_start":713917,"node":152,"role":"declaration","source":0,"src_end":592392,"src_start":547681},{"artifact":1,"gen_end":773168,"gen_start":772390,"node":153,"role":"declaration","source":0,"src_end":592952,"src_start":592394},{"artifact":1,"gen_end":773536,"gen_start":773168,"node":154,"role":"declaration","source":0,"src_end":593243,"src_start":592954},{"artifact":1,"gen_end":774236,"gen_start":773536,"node":155,"role":"declaration","source":0,"src_end":593836,"src_start":593245},{"artifact":1,"gen_end":848763,"gen_start":774236,"node":156,"role":"declaration","source":0,"src_end":650834,"src_start":593838},{"artifact":1,"gen_end":849543,"gen_start":848763,"node":157,"role":"declaration","source":0,"src_end":651396,"src_start":650836},{"artifact":1,"gen_end":851160,"gen_start":849543,"node":158,"role":"declaration","source":0,"src_end":652571,"src_start":651398},{"artifact":1,"gen_end":852561,"gen_start":851160,"node":159,"role":"declaration","source":0,"src_end":653786,"src_start":652573},{"artifact":1,"gen_end":911033,"gen_start":852561,"node":160,"role":"declaration","source":0,"src_end":698498,"src_start":653788},{"artifact":1,"gen_end":911808,"gen_start":911033,"node":161,"role":"declaration","source":0,"src_end":699055,"src_start":698500},{"artifact":1,"gen_end":912173,"gen_start":911808,"node":162,"role":"declaration","source":0,"src_end":699343,"src_start":699057},{"artifact":1,"gen_end":912869,"gen_start":912173,"node":163,"role":"declaration","source":0,"src_end":699932,"src_start":699345},{"artifact":1,"gen_end":912884,"gen_start":912869,"node":82,"role":"declaration","source":0,"src_end":699968,"src_start":0}],"module":"ReasoningFixtures","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"},{"id":40,"kind":"semantic-declaration"},{"id":41,"kind":"semantic-declaration"},{"id":42,"kind":"semantic-declaration"},{"id":43,"kind":"semantic-declaration"},{"id":44,"kind":"semantic-declaration"},{"id":45,"kind":"semantic-declaration"},{"id":46,"kind":"semantic-declaration"},{"id":47,"kind":"semantic-declaration"},{"id":48,"kind":"semantic-declaration"},{"id":49,"kind":"semantic-declaration"},{"id":50,"kind":"semantic-declaration"},{"id":51,"kind":"semantic-declaration"},{"id":52,"kind":"semantic-declaration"},{"id":53,"kind":"semantic-declaration"},{"id":54,"kind":"semantic-declaration"},{"id":55,"kind":"semantic-declaration"},{"id":56,"kind":"semantic-declaration"},{"id":57,"kind":"semantic-declaration"},{"id":58,"kind":"semantic-declaration"},{"id":59,"kind":"semantic-declaration"},{"id":60,"kind":"semantic-declaration"},{"id":61,"kind":"semantic-declaration"},{"id":62,"kind":"semantic-declaration"},{"id":63,"kind":"semantic-declaration"},{"id":64,"kind":"semantic-declaration"},{"id":65,"kind":"semantic-declaration"},{"id":66,"kind":"semantic-declaration"},{"id":67,"kind":"semantic-declaration"},{"id":68,"kind":"semantic-declaration"},{"id":69,"kind":"semantic-declaration"},{"id":70,"kind":"semantic-declaration"},{"id":71,"kind":"semantic-declaration"},{"id":72,"kind":"semantic-declaration"},{"id":73,"kind":"semantic-declaration"},{"id":74,"kind":"semantic-declaration"},{"id":75,"kind":"semantic-declaration"},{"id":76,"kind":"semantic-declaration"},{"id":77,"kind":"semantic-declaration"},{"id":78,"kind":"semantic-declaration"},{"id":79,"kind":"semantic-declaration"},{"id":80,"kind":"semantic-declaration"},{"id":81,"kind":"semantic-declaration"},{"id":82,"kind":"semantic-latex-module"},{"id":83,"kind":"semantic-declaration"},{"id":84,"kind":"semantic-declaration"},{"id":85,"kind":"semantic-declaration"},{"id":86,"kind":"semantic-declaration"},{"id":87,"kind":"semantic-declaration"},{"id":88,"kind":"semantic-declaration"},{"id":89,"kind":"semantic-declaration"},{"id":90,"kind":"semantic-declaration"},{"id":91,"kind":"semantic-declaration"},{"id":92,"kind":"semantic-declaration"},{"id":93,"kind":"semantic-declaration"},{"id":94,"kind":"semantic-declaration"},{"id":95,"kind":"semantic-declaration"},{"id":96,"kind":"semantic-declaration"},{"id":97,"kind":"semantic-declaration"},{"id":98,"kind":"semantic-declaration"},{"id":99,"kind":"semantic-declaration"},{"id":100,"kind":"semantic-declaration"},{"id":101,"kind":"semantic-declaration"},{"id":102,"kind":"semantic-declaration"},{"id":103,"kind":"semantic-declaration"},{"id":104,"kind":"semantic-declaration"},{"id":105,"kind":"semantic-declaration"},{"id":106,"kind":"semantic-declaration"},{"id":107,"kind":"semantic-declaration"},{"id":108,"kind":"semantic-declaration"},{"id":109,"kind":"semantic-declaration"},{"id":110,"kind":"semantic-declaration"},{"id":111,"kind":"semantic-declaration"},{"id":112,"kind":"semantic-declaration"},{"id":113,"kind":"semantic-declaration"},{"id":114,"kind":"semantic-declaration"},{"id":115,"kind":"semantic-declaration"},{"id":116,"kind":"semantic-declaration"},{"id":117,"kind":"semantic-declaration"},{"id":118,"kind":"semantic-declaration"},{"id":119,"kind":"semantic-declaration"},{"id":120,"kind":"semantic-declaration"},{"id":121,"kind":"semantic-declaration"},{"id":122,"kind":"semantic-declaration"},{"id":123,"kind":"semantic-declaration"},{"id":124,"kind":"semantic-declaration"},{"id":125,"kind":"semantic-declaration"},{"id":126,"kind":"semantic-declaration"},{"id":127,"kind":"semantic-declaration"},{"id":128,"kind":"semantic-declaration"},{"id":129,"kind":"semantic-declaration"},{"id":130,"kind":"semantic-declaration"},{"id":131,"kind":"semantic-declaration"},{"id":132,"kind":"semantic-declaration"},{"id":133,"kind":"semantic-declaration"},{"id":134,"kind":"semantic-declaration"},{"id":135,"kind":"semantic-declaration"},{"id":136,"kind":"semantic-declaration"},{"id":137,"kind":"semantic-declaration"},{"id":138,"kind":"semantic-declaration"},{"id":139,"kind":"semantic-declaration"},{"id":140,"kind":"semantic-declaration"},{"id":141,"kind":"semantic-declaration"},{"id":142,"kind":"semantic-declaration"},{"id":143,"kind":"semantic-declaration"},{"id":144,"kind":"semantic-declaration"},{"id":145,"kind":"semantic-declaration"},{"id":146,"kind":"semantic-declaration"},{"id":147,"kind":"semantic-declaration"},{"id":148,"kind":"semantic-declaration"},{"id":149,"kind":"semantic-declaration"},{"id":150,"kind":"semantic-declaration"},{"id":151,"kind":"semantic-declaration"},{"id":152,"kind":"semantic-declaration"},{"id":153,"kind":"semantic-declaration"},{"id":154,"kind":"semantic-declaration"},{"id":155,"kind":"semantic-declaration"},{"id":156,"kind":"semantic-declaration"},{"id":157,"kind":"semantic-declaration"},{"id":158,"kind":"semantic-declaration"},{"id":159,"kind":"semantic-declaration"},{"id":160,"kind":"semantic-declaration"},{"id":161,"kind":"semantic-declaration"},{"id":162,"kind":"semantic-declaration"},{"id":163,"kind":"semantic-declaration"}],"semantic_id":"e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb","source_id":"965efd311d3549a7c17dd823b4418cfee906beecd273f4bfcafb371c36d9ce99","sources":[{"id":0,"kind":"file","path":"src/ReasoningFixtures.lex.tex","sha256":"21de0c44ebce81bb7bb1b05a6e29815cc2e6c19a58a4c85459110bf3fd1dee9c"}],"spec":"lexlean/source-map/1"} diff --git a/compiler/expected/build/maps/LexLeanTarget/ReasoningOracle.map.json b/compiler/expected/build/maps/LexLeanTarget/ReasoningOracle.map.json index 56f1e64c4..1baf8906b 100644 --- a/compiler/expected/build/maps/LexLeanTarget/ReasoningOracle.map.json +++ b/compiler/expected/build/maps/LexLeanTarget/ReasoningOracle.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/LexLeanTarget/ReasoningOracle.lean"},{"id":1,"kind":"tex","path":"modules/LexLeanTarget/ReasoningOracle.tex"}],"mappings":[{"artifact":0,"gen_end":364,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":27419,"src_start":0},{"artifact":0,"gen_end":511,"gen_start":364,"node":1,"role":"declaration","source":0,"src_end":420,"src_start":124},{"artifact":0,"gen_end":688,"gen_start":511,"node":2,"role":"declaration","source":0,"src_end":796,"src_start":422},{"artifact":0,"gen_end":776,"gen_start":688,"node":3,"role":"declaration","source":0,"src_end":934,"src_start":798},{"artifact":0,"gen_end":864,"gen_start":776,"node":4,"role":"declaration","source":0,"src_end":1072,"src_start":936},{"artifact":0,"gen_end":957,"gen_start":864,"node":5,"role":"declaration","source":0,"src_end":1215,"src_start":1074},{"artifact":0,"gen_end":1045,"gen_start":957,"node":6,"role":"declaration","source":0,"src_end":1353,"src_start":1217},{"artifact":0,"gen_end":1132,"gen_start":1045,"node":7,"role":"declaration","source":0,"src_end":1490,"src_start":1355},{"artifact":0,"gen_end":1220,"gen_start":1132,"node":8,"role":"declaration","source":0,"src_end":1606,"src_start":1492},{"artifact":0,"gen_end":1309,"gen_start":1220,"node":9,"role":"declaration","source":0,"src_end":1723,"src_start":1608},{"artifact":0,"gen_end":1403,"gen_start":1309,"node":10,"role":"declaration","source":0,"src_end":1845,"src_start":1725},{"artifact":0,"gen_end":1492,"gen_start":1403,"node":11,"role":"declaration","source":0,"src_end":1962,"src_start":1847},{"artifact":0,"gen_end":1580,"gen_start":1492,"node":12,"role":"declaration","source":0,"src_end":2078,"src_start":1964},{"artifact":0,"gen_end":1788,"gen_start":1580,"node":13,"role":"declaration","source":0,"src_end":2362,"src_start":2080},{"artifact":0,"gen_end":3265,"gen_start":1788,"node":14,"role":"declaration","source":0,"src_end":4482,"src_start":2364},{"artifact":0,"gen_end":3519,"gen_start":3265,"node":15,"role":"declaration","source":0,"src_end":4820,"src_start":4484},{"artifact":0,"gen_end":3999,"gen_start":3519,"node":16,"role":"declaration","source":0,"src_end":5283,"src_start":4822},{"artifact":0,"gen_end":7147,"gen_start":3999,"node":17,"role":"declaration","source":0,"src_end":5681,"src_start":5285},{"artifact":0,"gen_end":7358,"gen_start":7147,"node":18,"role":"declaration","source":0,"src_end":5915,"src_start":5683},{"artifact":0,"gen_end":10779,"gen_start":7358,"node":19,"role":"declaration","source":0,"src_end":6685,"src_start":5917},{"artifact":0,"gen_end":14173,"gen_start":10779,"node":20,"role":"declaration","source":0,"src_end":7334,"src_start":6687},{"artifact":0,"gen_end":16050,"gen_start":14173,"node":21,"role":"declaration","source":0,"src_end":7894,"src_start":7336},{"artifact":0,"gen_end":19480,"gen_start":16050,"node":22,"role":"declaration","source":0,"src_end":8673,"src_start":7896},{"artifact":0,"gen_end":22883,"gen_start":19480,"node":23,"role":"declaration","source":0,"src_end":9331,"src_start":8675},{"artifact":0,"gen_end":24853,"gen_start":22883,"node":24,"role":"declaration","source":0,"src_end":9912,"src_start":9333},{"artifact":0,"gen_end":28280,"gen_start":24853,"node":25,"role":"declaration","source":0,"src_end":10688,"src_start":9914},{"artifact":0,"gen_end":31680,"gen_start":28280,"node":26,"role":"declaration","source":0,"src_end":11343,"src_start":10690},{"artifact":0,"gen_end":33619,"gen_start":31680,"node":27,"role":"declaration","source":0,"src_end":11917,"src_start":11345},{"artifact":0,"gen_end":37049,"gen_start":33619,"node":28,"role":"declaration","source":0,"src_end":12696,"src_start":11919},{"artifact":0,"gen_end":40452,"gen_start":37049,"node":29,"role":"declaration","source":0,"src_end":13354,"src_start":12698},{"artifact":0,"gen_end":42436,"gen_start":40452,"node":30,"role":"declaration","source":0,"src_end":13937,"src_start":13356},{"artifact":0,"gen_end":45919,"gen_start":42436,"node":31,"role":"declaration","source":0,"src_end":14785,"src_start":13939},{"artifact":0,"gen_end":49375,"gen_start":45919,"node":32,"role":"declaration","source":0,"src_end":15512,"src_start":14787},{"artifact":0,"gen_end":51270,"gen_start":49375,"node":33,"role":"declaration","source":0,"src_end":16148,"src_start":15514},{"artifact":0,"gen_end":54739,"gen_start":51270,"node":34,"role":"declaration","source":0,"src_end":16964,"src_start":16150},{"artifact":0,"gen_end":58181,"gen_start":54739,"node":35,"role":"declaration","source":0,"src_end":17659,"src_start":16966},{"artifact":0,"gen_end":60090,"gen_start":58181,"node":36,"role":"declaration","source":0,"src_end":18267,"src_start":17661},{"artifact":0,"gen_end":63546,"gen_start":60090,"node":37,"role":"declaration","source":0,"src_end":19071,"src_start":18269},{"artifact":0,"gen_end":66975,"gen_start":63546,"node":38,"role":"declaration","source":0,"src_end":19754,"src_start":19073},{"artifact":0,"gen_end":68887,"gen_start":66975,"node":39,"role":"declaration","source":0,"src_end":20348,"src_start":19756},{"artifact":0,"gen_end":72484,"gen_start":68887,"node":40,"role":"declaration","source":0,"src_end":21288,"src_start":20350},{"artifact":0,"gen_end":76054,"gen_start":72484,"node":41,"role":"declaration","source":0,"src_end":22107,"src_start":21290},{"artifact":0,"gen_end":78119,"gen_start":76054,"node":42,"role":"declaration","source":0,"src_end":22843,"src_start":22109},{"artifact":0,"gen_end":78301,"gen_start":78119,"node":43,"role":"declaration","source":0,"src_end":23052,"src_start":22845},{"artifact":0,"gen_end":78515,"gen_start":78301,"node":44,"role":"declaration","source":0,"src_end":23301,"src_start":23054},{"artifact":0,"gen_end":81722,"gen_start":78515,"node":45,"role":"declaration","source":0,"src_end":23780,"src_start":23303},{"artifact":0,"gen_end":84932,"gen_start":81722,"node":46,"role":"declaration","source":0,"src_end":24262,"src_start":23782},{"artifact":0,"gen_end":85376,"gen_start":84932,"node":47,"role":"declaration","source":0,"src_end":24546,"src_start":24264},{"artifact":0,"gen_end":85462,"gen_start":85376,"node":48,"role":"declaration","source":0,"src_end":24640,"src_start":24548},{"artifact":0,"gen_end":85551,"gen_start":85462,"node":49,"role":"declaration","source":0,"src_end":24769,"src_start":24642},{"artifact":0,"gen_end":88626,"gen_start":85551,"node":50,"role":"declaration","source":0,"src_end":25000,"src_start":24771},{"artifact":0,"gen_end":88831,"gen_start":88626,"node":51,"role":"declaration","source":0,"src_end":25204,"src_start":25002},{"artifact":0,"gen_end":91992,"gen_start":88831,"node":52,"role":"declaration","source":0,"src_end":25559,"src_start":25206},{"artifact":0,"gen_end":95151,"gen_start":91992,"node":53,"role":"declaration","source":0,"src_end":25894,"src_start":25561},{"artifact":0,"gen_end":124244,"gen_start":95151,"node":54,"role":"declaration","source":0,"src_end":26691,"src_start":25896},{"artifact":0,"gen_end":150995,"gen_start":124244,"node":55,"role":"declaration","source":0,"src_end":27383,"src_start":26693},{"artifact":0,"gen_end":151030,"gen_start":150995,"node":0,"role":"declaration","source":0,"src_end":27419,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":56,"role":"declaration","source":0,"src_end":27419,"src_start":0},{"artifact":1,"gen_end":536,"gen_start":134,"node":57,"role":"declaration","source":0,"src_end":420,"src_start":124},{"artifact":1,"gen_end":1076,"gen_start":536,"node":58,"role":"declaration","source":0,"src_end":796,"src_start":422},{"artifact":1,"gen_end":1411,"gen_start":1076,"node":59,"role":"declaration","source":0,"src_end":934,"src_start":798},{"artifact":1,"gen_end":1746,"gen_start":1411,"node":60,"role":"declaration","source":0,"src_end":1072,"src_start":936},{"artifact":1,"gen_end":2086,"gen_start":1746,"node":61,"role":"declaration","source":0,"src_end":1215,"src_start":1074},{"artifact":1,"gen_end":2421,"gen_start":2086,"node":62,"role":"declaration","source":0,"src_end":1353,"src_start":1217},{"artifact":1,"gen_end":2755,"gen_start":2421,"node":63,"role":"declaration","source":0,"src_end":1490,"src_start":1355},{"artifact":1,"gen_end":3014,"gen_start":2755,"node":64,"role":"declaration","source":0,"src_end":1606,"src_start":1492},{"artifact":1,"gen_end":3274,"gen_start":3014,"node":65,"role":"declaration","source":0,"src_end":1723,"src_start":1608},{"artifact":1,"gen_end":3539,"gen_start":3274,"node":66,"role":"declaration","source":0,"src_end":1845,"src_start":1725},{"artifact":1,"gen_end":3799,"gen_start":3539,"node":67,"role":"declaration","source":0,"src_end":1962,"src_start":1847},{"artifact":1,"gen_end":4058,"gen_start":3799,"node":68,"role":"declaration","source":0,"src_end":2078,"src_start":1964},{"artifact":1,"gen_end":4482,"gen_start":4058,"node":69,"role":"declaration","source":0,"src_end":2362,"src_start":2080},{"artifact":1,"gen_end":6595,"gen_start":4482,"node":70,"role":"declaration","source":0,"src_end":4482,"src_start":2364},{"artifact":1,"gen_end":7125,"gen_start":6595,"node":71,"role":"declaration","source":0,"src_end":4820,"src_start":4484},{"artifact":1,"gen_end":7787,"gen_start":7125,"node":72,"role":"declaration","source":0,"src_end":5283,"src_start":4822},{"artifact":1,"gen_end":8107,"gen_start":7787,"node":73,"role":"declaration","source":0,"src_end":5681,"src_start":5285},{"artifact":1,"gen_end":8840,"gen_start":8107,"node":74,"role":"declaration","source":0,"src_end":5915,"src_start":5683},{"artifact":1,"gen_end":9389,"gen_start":8840,"node":75,"role":"declaration","source":0,"src_end":6685,"src_start":5917},{"artifact":1,"gen_end":9953,"gen_start":9389,"node":76,"role":"declaration","source":0,"src_end":7334,"src_start":6687},{"artifact":1,"gen_end":12552,"gen_start":9953,"node":77,"role":"declaration","source":0,"src_end":7894,"src_start":7336},{"artifact":1,"gen_end":13110,"gen_start":12552,"node":78,"role":"declaration","source":0,"src_end":8673,"src_start":7896},{"artifact":1,"gen_end":13683,"gen_start":13110,"node":79,"role":"declaration","source":0,"src_end":9331,"src_start":8675},{"artifact":1,"gen_end":16390,"gen_start":13683,"node":80,"role":"declaration","source":0,"src_end":9912,"src_start":9333},{"artifact":1,"gen_end":16945,"gen_start":16390,"node":81,"role":"declaration","source":0,"src_end":10688,"src_start":9914},{"artifact":1,"gen_end":17515,"gen_start":16945,"node":82,"role":"declaration","source":0,"src_end":11343,"src_start":10690},{"artifact":1,"gen_end":20186,"gen_start":17515,"node":83,"role":"declaration","source":0,"src_end":11917,"src_start":11345},{"artifact":1,"gen_end":20744,"gen_start":20186,"node":84,"role":"declaration","source":0,"src_end":12696,"src_start":11919},{"artifact":1,"gen_end":21317,"gen_start":20744,"node":85,"role":"declaration","source":0,"src_end":13354,"src_start":12698},{"artifact":1,"gen_end":24036,"gen_start":21317,"node":86,"role":"declaration","source":0,"src_end":13937,"src_start":13356},{"artifact":1,"gen_end":24647,"gen_start":24036,"node":87,"role":"declaration","source":0,"src_end":14785,"src_start":13939},{"artifact":1,"gen_end":25273,"gen_start":24647,"node":88,"role":"declaration","source":0,"src_end":15512,"src_start":14787},{"artifact":1,"gen_end":28108,"gen_start":25273,"node":89,"role":"declaration","source":0,"src_end":16148,"src_start":15514},{"artifact":1,"gen_end":28707,"gen_start":28108,"node":90,"role":"declaration","source":0,"src_end":16964,"src_start":16150},{"artifact":1,"gen_end":29321,"gen_start":28707,"node":91,"role":"declaration","source":0,"src_end":17659,"src_start":16966},{"artifact":1,"gen_end":32132,"gen_start":29321,"node":92,"role":"declaration","source":0,"src_end":18267,"src_start":17661},{"artifact":1,"gen_end":32718,"gen_start":32132,"node":93,"role":"declaration","source":0,"src_end":19071,"src_start":18269},{"artifact":1,"gen_end":33319,"gen_start":32718,"node":94,"role":"declaration","source":0,"src_end":19754,"src_start":19073},{"artifact":1,"gen_end":36066,"gen_start":33319,"node":95,"role":"declaration","source":0,"src_end":20348,"src_start":19756},{"artifact":1,"gen_end":36797,"gen_start":36066,"node":96,"role":"declaration","source":0,"src_end":21288,"src_start":20350},{"artifact":1,"gen_end":37543,"gen_start":36797,"node":97,"role":"declaration","source":0,"src_end":22107,"src_start":21290},{"artifact":1,"gen_end":40906,"gen_start":37543,"node":98,"role":"declaration","source":0,"src_end":22843,"src_start":22109},{"artifact":1,"gen_end":41319,"gen_start":40906,"node":99,"role":"declaration","source":0,"src_end":23052,"src_start":22845},{"artifact":1,"gen_end":41788,"gen_start":41319,"node":100,"role":"declaration","source":0,"src_end":23301,"src_start":23054},{"artifact":1,"gen_end":42109,"gen_start":41788,"node":101,"role":"declaration","source":0,"src_end":23780,"src_start":23303},{"artifact":1,"gen_end":42433,"gen_start":42109,"node":102,"role":"declaration","source":0,"src_end":24262,"src_start":23782},{"artifact":1,"gen_end":43603,"gen_start":42433,"node":103,"role":"declaration","source":0,"src_end":24546,"src_start":24264},{"artifact":1,"gen_end":43859,"gen_start":43603,"node":104,"role":"declaration","source":0,"src_end":24640,"src_start":24548},{"artifact":1,"gen_end":44194,"gen_start":43859,"node":105,"role":"declaration","source":0,"src_end":24769,"src_start":24642},{"artifact":1,"gen_end":44476,"gen_start":44194,"node":106,"role":"declaration","source":0,"src_end":25000,"src_start":24771},{"artifact":1,"gen_end":45162,"gen_start":44476,"node":107,"role":"declaration","source":0,"src_end":25204,"src_start":25002},{"artifact":1,"gen_end":45578,"gen_start":45162,"node":108,"role":"declaration","source":0,"src_end":25559,"src_start":25206},{"artifact":1,"gen_end":45977,"gen_start":45578,"node":109,"role":"declaration","source":0,"src_end":25894,"src_start":25561},{"artifact":1,"gen_end":62729,"gen_start":45977,"node":110,"role":"declaration","source":0,"src_end":26691,"src_start":25896},{"artifact":1,"gen_end":78144,"gen_start":62729,"node":111,"role":"declaration","source":0,"src_end":27383,"src_start":26693},{"artifact":1,"gen_end":78159,"gen_start":78144,"node":56,"role":"declaration","source":0,"src_end":27419,"src_start":0}],"module":"ReasoningOracle","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"},{"id":40,"kind":"semantic-declaration"},{"id":41,"kind":"semantic-declaration"},{"id":42,"kind":"semantic-declaration"},{"id":43,"kind":"semantic-declaration"},{"id":44,"kind":"semantic-declaration"},{"id":45,"kind":"semantic-declaration"},{"id":46,"kind":"semantic-declaration"},{"id":47,"kind":"semantic-declaration"},{"id":48,"kind":"semantic-declaration"},{"id":49,"kind":"semantic-declaration"},{"id":50,"kind":"semantic-declaration"},{"id":51,"kind":"semantic-declaration"},{"id":52,"kind":"semantic-declaration"},{"id":53,"kind":"semantic-declaration"},{"id":54,"kind":"semantic-declaration"},{"id":55,"kind":"semantic-declaration"},{"id":56,"kind":"semantic-latex-module"},{"id":57,"kind":"semantic-declaration"},{"id":58,"kind":"semantic-declaration"},{"id":59,"kind":"semantic-declaration"},{"id":60,"kind":"semantic-declaration"},{"id":61,"kind":"semantic-declaration"},{"id":62,"kind":"semantic-declaration"},{"id":63,"kind":"semantic-declaration"},{"id":64,"kind":"semantic-declaration"},{"id":65,"kind":"semantic-declaration"},{"id":66,"kind":"semantic-declaration"},{"id":67,"kind":"semantic-declaration"},{"id":68,"kind":"semantic-declaration"},{"id":69,"kind":"semantic-declaration"},{"id":70,"kind":"semantic-declaration"},{"id":71,"kind":"semantic-declaration"},{"id":72,"kind":"semantic-declaration"},{"id":73,"kind":"semantic-declaration"},{"id":74,"kind":"semantic-declaration"},{"id":75,"kind":"semantic-declaration"},{"id":76,"kind":"semantic-declaration"},{"id":77,"kind":"semantic-declaration"},{"id":78,"kind":"semantic-declaration"},{"id":79,"kind":"semantic-declaration"},{"id":80,"kind":"semantic-declaration"},{"id":81,"kind":"semantic-declaration"},{"id":82,"kind":"semantic-declaration"},{"id":83,"kind":"semantic-declaration"},{"id":84,"kind":"semantic-declaration"},{"id":85,"kind":"semantic-declaration"},{"id":86,"kind":"semantic-declaration"},{"id":87,"kind":"semantic-declaration"},{"id":88,"kind":"semantic-declaration"},{"id":89,"kind":"semantic-declaration"},{"id":90,"kind":"semantic-declaration"},{"id":91,"kind":"semantic-declaration"},{"id":92,"kind":"semantic-declaration"},{"id":93,"kind":"semantic-declaration"},{"id":94,"kind":"semantic-declaration"},{"id":95,"kind":"semantic-declaration"},{"id":96,"kind":"semantic-declaration"},{"id":97,"kind":"semantic-declaration"},{"id":98,"kind":"semantic-declaration"},{"id":99,"kind":"semantic-declaration"},{"id":100,"kind":"semantic-declaration"},{"id":101,"kind":"semantic-declaration"},{"id":102,"kind":"semantic-declaration"},{"id":103,"kind":"semantic-declaration"},{"id":104,"kind":"semantic-declaration"},{"id":105,"kind":"semantic-declaration"},{"id":106,"kind":"semantic-declaration"},{"id":107,"kind":"semantic-declaration"},{"id":108,"kind":"semantic-declaration"},{"id":109,"kind":"semantic-declaration"},{"id":110,"kind":"semantic-declaration"},{"id":111,"kind":"semantic-declaration"}],"semantic_id":"c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517","source_id":"ce718723d5d252a9adafdc3cb3b76931b1d91e053dd3e7e31bcb9b9496a1941c","sources":[{"id":0,"kind":"file","path":"src/ReasoningOracle.lex.tex","sha256":"7d5e680324c4fbffa4b8906aefe2e502d20994ff8cdaf223eb385e814bec77bb"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/LexLeanTarget/ReasoningOracle.lean"},{"id":1,"kind":"tex","path":"modules/LexLeanTarget/ReasoningOracle.tex"}],"mappings":[{"artifact":0,"gen_end":364,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":27419,"src_start":0},{"artifact":0,"gen_end":511,"gen_start":364,"node":1,"role":"declaration","source":0,"src_end":420,"src_start":124},{"artifact":0,"gen_end":688,"gen_start":511,"node":2,"role":"declaration","source":0,"src_end":796,"src_start":422},{"artifact":0,"gen_end":776,"gen_start":688,"node":3,"role":"declaration","source":0,"src_end":934,"src_start":798},{"artifact":0,"gen_end":864,"gen_start":776,"node":4,"role":"declaration","source":0,"src_end":1072,"src_start":936},{"artifact":0,"gen_end":957,"gen_start":864,"node":5,"role":"declaration","source":0,"src_end":1215,"src_start":1074},{"artifact":0,"gen_end":1045,"gen_start":957,"node":6,"role":"declaration","source":0,"src_end":1353,"src_start":1217},{"artifact":0,"gen_end":1132,"gen_start":1045,"node":7,"role":"declaration","source":0,"src_end":1490,"src_start":1355},{"artifact":0,"gen_end":1220,"gen_start":1132,"node":8,"role":"declaration","source":0,"src_end":1606,"src_start":1492},{"artifact":0,"gen_end":1309,"gen_start":1220,"node":9,"role":"declaration","source":0,"src_end":1723,"src_start":1608},{"artifact":0,"gen_end":1403,"gen_start":1309,"node":10,"role":"declaration","source":0,"src_end":1845,"src_start":1725},{"artifact":0,"gen_end":1492,"gen_start":1403,"node":11,"role":"declaration","source":0,"src_end":1962,"src_start":1847},{"artifact":0,"gen_end":1580,"gen_start":1492,"node":12,"role":"declaration","source":0,"src_end":2078,"src_start":1964},{"artifact":0,"gen_end":1788,"gen_start":1580,"node":13,"role":"declaration","source":0,"src_end":2362,"src_start":2080},{"artifact":0,"gen_end":3265,"gen_start":1788,"node":14,"role":"declaration","source":0,"src_end":4482,"src_start":2364},{"artifact":0,"gen_end":3519,"gen_start":3265,"node":15,"role":"declaration","source":0,"src_end":4820,"src_start":4484},{"artifact":0,"gen_end":3999,"gen_start":3519,"node":16,"role":"declaration","source":0,"src_end":5283,"src_start":4822},{"artifact":0,"gen_end":7147,"gen_start":3999,"node":17,"role":"declaration","source":0,"src_end":5681,"src_start":5285},{"artifact":0,"gen_end":7358,"gen_start":7147,"node":18,"role":"declaration","source":0,"src_end":5915,"src_start":5683},{"artifact":0,"gen_end":10779,"gen_start":7358,"node":19,"role":"declaration","source":0,"src_end":6685,"src_start":5917},{"artifact":0,"gen_end":14173,"gen_start":10779,"node":20,"role":"declaration","source":0,"src_end":7334,"src_start":6687},{"artifact":0,"gen_end":16050,"gen_start":14173,"node":21,"role":"declaration","source":0,"src_end":7894,"src_start":7336},{"artifact":0,"gen_end":19480,"gen_start":16050,"node":22,"role":"declaration","source":0,"src_end":8673,"src_start":7896},{"artifact":0,"gen_end":22883,"gen_start":19480,"node":23,"role":"declaration","source":0,"src_end":9331,"src_start":8675},{"artifact":0,"gen_end":24853,"gen_start":22883,"node":24,"role":"declaration","source":0,"src_end":9912,"src_start":9333},{"artifact":0,"gen_end":28280,"gen_start":24853,"node":25,"role":"declaration","source":0,"src_end":10688,"src_start":9914},{"artifact":0,"gen_end":31680,"gen_start":28280,"node":26,"role":"declaration","source":0,"src_end":11343,"src_start":10690},{"artifact":0,"gen_end":33619,"gen_start":31680,"node":27,"role":"declaration","source":0,"src_end":11917,"src_start":11345},{"artifact":0,"gen_end":37049,"gen_start":33619,"node":28,"role":"declaration","source":0,"src_end":12696,"src_start":11919},{"artifact":0,"gen_end":40452,"gen_start":37049,"node":29,"role":"declaration","source":0,"src_end":13354,"src_start":12698},{"artifact":0,"gen_end":42436,"gen_start":40452,"node":30,"role":"declaration","source":0,"src_end":13937,"src_start":13356},{"artifact":0,"gen_end":45919,"gen_start":42436,"node":31,"role":"declaration","source":0,"src_end":14785,"src_start":13939},{"artifact":0,"gen_end":49375,"gen_start":45919,"node":32,"role":"declaration","source":0,"src_end":15512,"src_start":14787},{"artifact":0,"gen_end":51270,"gen_start":49375,"node":33,"role":"declaration","source":0,"src_end":16148,"src_start":15514},{"artifact":0,"gen_end":54739,"gen_start":51270,"node":34,"role":"declaration","source":0,"src_end":16964,"src_start":16150},{"artifact":0,"gen_end":58181,"gen_start":54739,"node":35,"role":"declaration","source":0,"src_end":17659,"src_start":16966},{"artifact":0,"gen_end":60090,"gen_start":58181,"node":36,"role":"declaration","source":0,"src_end":18267,"src_start":17661},{"artifact":0,"gen_end":63546,"gen_start":60090,"node":37,"role":"declaration","source":0,"src_end":19071,"src_start":18269},{"artifact":0,"gen_end":66975,"gen_start":63546,"node":38,"role":"declaration","source":0,"src_end":19754,"src_start":19073},{"artifact":0,"gen_end":68887,"gen_start":66975,"node":39,"role":"declaration","source":0,"src_end":20348,"src_start":19756},{"artifact":0,"gen_end":72484,"gen_start":68887,"node":40,"role":"declaration","source":0,"src_end":21288,"src_start":20350},{"artifact":0,"gen_end":76054,"gen_start":72484,"node":41,"role":"declaration","source":0,"src_end":22107,"src_start":21290},{"artifact":0,"gen_end":78119,"gen_start":76054,"node":42,"role":"declaration","source":0,"src_end":22843,"src_start":22109},{"artifact":0,"gen_end":78301,"gen_start":78119,"node":43,"role":"declaration","source":0,"src_end":23052,"src_start":22845},{"artifact":0,"gen_end":78515,"gen_start":78301,"node":44,"role":"declaration","source":0,"src_end":23301,"src_start":23054},{"artifact":0,"gen_end":81722,"gen_start":78515,"node":45,"role":"declaration","source":0,"src_end":23780,"src_start":23303},{"artifact":0,"gen_end":84932,"gen_start":81722,"node":46,"role":"declaration","source":0,"src_end":24262,"src_start":23782},{"artifact":0,"gen_end":85376,"gen_start":84932,"node":47,"role":"declaration","source":0,"src_end":24546,"src_start":24264},{"artifact":0,"gen_end":85462,"gen_start":85376,"node":48,"role":"declaration","source":0,"src_end":24640,"src_start":24548},{"artifact":0,"gen_end":85551,"gen_start":85462,"node":49,"role":"declaration","source":0,"src_end":24769,"src_start":24642},{"artifact":0,"gen_end":88626,"gen_start":85551,"node":50,"role":"declaration","source":0,"src_end":25000,"src_start":24771},{"artifact":0,"gen_end":88831,"gen_start":88626,"node":51,"role":"declaration","source":0,"src_end":25204,"src_start":25002},{"artifact":0,"gen_end":91992,"gen_start":88831,"node":52,"role":"declaration","source":0,"src_end":25559,"src_start":25206},{"artifact":0,"gen_end":95151,"gen_start":91992,"node":53,"role":"declaration","source":0,"src_end":25894,"src_start":25561},{"artifact":0,"gen_end":124244,"gen_start":95151,"node":54,"role":"declaration","source":0,"src_end":26691,"src_start":25896},{"artifact":0,"gen_end":150995,"gen_start":124244,"node":55,"role":"declaration","source":0,"src_end":27383,"src_start":26693},{"artifact":0,"gen_end":151030,"gen_start":150995,"node":0,"role":"declaration","source":0,"src_end":27419,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":56,"role":"declaration","source":0,"src_end":27419,"src_start":0},{"artifact":1,"gen_end":536,"gen_start":134,"node":57,"role":"declaration","source":0,"src_end":420,"src_start":124},{"artifact":1,"gen_end":1076,"gen_start":536,"node":58,"role":"declaration","source":0,"src_end":796,"src_start":422},{"artifact":1,"gen_end":1411,"gen_start":1076,"node":59,"role":"declaration","source":0,"src_end":934,"src_start":798},{"artifact":1,"gen_end":1746,"gen_start":1411,"node":60,"role":"declaration","source":0,"src_end":1072,"src_start":936},{"artifact":1,"gen_end":2086,"gen_start":1746,"node":61,"role":"declaration","source":0,"src_end":1215,"src_start":1074},{"artifact":1,"gen_end":2421,"gen_start":2086,"node":62,"role":"declaration","source":0,"src_end":1353,"src_start":1217},{"artifact":1,"gen_end":2755,"gen_start":2421,"node":63,"role":"declaration","source":0,"src_end":1490,"src_start":1355},{"artifact":1,"gen_end":3014,"gen_start":2755,"node":64,"role":"declaration","source":0,"src_end":1606,"src_start":1492},{"artifact":1,"gen_end":3274,"gen_start":3014,"node":65,"role":"declaration","source":0,"src_end":1723,"src_start":1608},{"artifact":1,"gen_end":3539,"gen_start":3274,"node":66,"role":"declaration","source":0,"src_end":1845,"src_start":1725},{"artifact":1,"gen_end":3799,"gen_start":3539,"node":67,"role":"declaration","source":0,"src_end":1962,"src_start":1847},{"artifact":1,"gen_end":4058,"gen_start":3799,"node":68,"role":"declaration","source":0,"src_end":2078,"src_start":1964},{"artifact":1,"gen_end":4482,"gen_start":4058,"node":69,"role":"declaration","source":0,"src_end":2362,"src_start":2080},{"artifact":1,"gen_end":6595,"gen_start":4482,"node":70,"role":"declaration","source":0,"src_end":4482,"src_start":2364},{"artifact":1,"gen_end":7125,"gen_start":6595,"node":71,"role":"declaration","source":0,"src_end":4820,"src_start":4484},{"artifact":1,"gen_end":7787,"gen_start":7125,"node":72,"role":"declaration","source":0,"src_end":5283,"src_start":4822},{"artifact":1,"gen_end":8107,"gen_start":7787,"node":73,"role":"declaration","source":0,"src_end":5681,"src_start":5285},{"artifact":1,"gen_end":8840,"gen_start":8107,"node":74,"role":"declaration","source":0,"src_end":5915,"src_start":5683},{"artifact":1,"gen_end":9389,"gen_start":8840,"node":75,"role":"declaration","source":0,"src_end":6685,"src_start":5917},{"artifact":1,"gen_end":9953,"gen_start":9389,"node":76,"role":"declaration","source":0,"src_end":7334,"src_start":6687},{"artifact":1,"gen_end":12552,"gen_start":9953,"node":77,"role":"declaration","source":0,"src_end":7894,"src_start":7336},{"artifact":1,"gen_end":13110,"gen_start":12552,"node":78,"role":"declaration","source":0,"src_end":8673,"src_start":7896},{"artifact":1,"gen_end":13683,"gen_start":13110,"node":79,"role":"declaration","source":0,"src_end":9331,"src_start":8675},{"artifact":1,"gen_end":16390,"gen_start":13683,"node":80,"role":"declaration","source":0,"src_end":9912,"src_start":9333},{"artifact":1,"gen_end":16945,"gen_start":16390,"node":81,"role":"declaration","source":0,"src_end":10688,"src_start":9914},{"artifact":1,"gen_end":17515,"gen_start":16945,"node":82,"role":"declaration","source":0,"src_end":11343,"src_start":10690},{"artifact":1,"gen_end":20186,"gen_start":17515,"node":83,"role":"declaration","source":0,"src_end":11917,"src_start":11345},{"artifact":1,"gen_end":20744,"gen_start":20186,"node":84,"role":"declaration","source":0,"src_end":12696,"src_start":11919},{"artifact":1,"gen_end":21317,"gen_start":20744,"node":85,"role":"declaration","source":0,"src_end":13354,"src_start":12698},{"artifact":1,"gen_end":24036,"gen_start":21317,"node":86,"role":"declaration","source":0,"src_end":13937,"src_start":13356},{"artifact":1,"gen_end":24647,"gen_start":24036,"node":87,"role":"declaration","source":0,"src_end":14785,"src_start":13939},{"artifact":1,"gen_end":25273,"gen_start":24647,"node":88,"role":"declaration","source":0,"src_end":15512,"src_start":14787},{"artifact":1,"gen_end":28108,"gen_start":25273,"node":89,"role":"declaration","source":0,"src_end":16148,"src_start":15514},{"artifact":1,"gen_end":28707,"gen_start":28108,"node":90,"role":"declaration","source":0,"src_end":16964,"src_start":16150},{"artifact":1,"gen_end":29321,"gen_start":28707,"node":91,"role":"declaration","source":0,"src_end":17659,"src_start":16966},{"artifact":1,"gen_end":32132,"gen_start":29321,"node":92,"role":"declaration","source":0,"src_end":18267,"src_start":17661},{"artifact":1,"gen_end":32718,"gen_start":32132,"node":93,"role":"declaration","source":0,"src_end":19071,"src_start":18269},{"artifact":1,"gen_end":33319,"gen_start":32718,"node":94,"role":"declaration","source":0,"src_end":19754,"src_start":19073},{"artifact":1,"gen_end":36066,"gen_start":33319,"node":95,"role":"declaration","source":0,"src_end":20348,"src_start":19756},{"artifact":1,"gen_end":36797,"gen_start":36066,"node":96,"role":"declaration","source":0,"src_end":21288,"src_start":20350},{"artifact":1,"gen_end":37543,"gen_start":36797,"node":97,"role":"declaration","source":0,"src_end":22107,"src_start":21290},{"artifact":1,"gen_end":40906,"gen_start":37543,"node":98,"role":"declaration","source":0,"src_end":22843,"src_start":22109},{"artifact":1,"gen_end":41319,"gen_start":40906,"node":99,"role":"declaration","source":0,"src_end":23052,"src_start":22845},{"artifact":1,"gen_end":41788,"gen_start":41319,"node":100,"role":"declaration","source":0,"src_end":23301,"src_start":23054},{"artifact":1,"gen_end":42109,"gen_start":41788,"node":101,"role":"declaration","source":0,"src_end":23780,"src_start":23303},{"artifact":1,"gen_end":42433,"gen_start":42109,"node":102,"role":"declaration","source":0,"src_end":24262,"src_start":23782},{"artifact":1,"gen_end":43603,"gen_start":42433,"node":103,"role":"declaration","source":0,"src_end":24546,"src_start":24264},{"artifact":1,"gen_end":43859,"gen_start":43603,"node":104,"role":"declaration","source":0,"src_end":24640,"src_start":24548},{"artifact":1,"gen_end":44194,"gen_start":43859,"node":105,"role":"declaration","source":0,"src_end":24769,"src_start":24642},{"artifact":1,"gen_end":44476,"gen_start":44194,"node":106,"role":"declaration","source":0,"src_end":25000,"src_start":24771},{"artifact":1,"gen_end":45162,"gen_start":44476,"node":107,"role":"declaration","source":0,"src_end":25204,"src_start":25002},{"artifact":1,"gen_end":45578,"gen_start":45162,"node":108,"role":"declaration","source":0,"src_end":25559,"src_start":25206},{"artifact":1,"gen_end":45977,"gen_start":45578,"node":109,"role":"declaration","source":0,"src_end":25894,"src_start":25561},{"artifact":1,"gen_end":62729,"gen_start":45977,"node":110,"role":"declaration","source":0,"src_end":26691,"src_start":25896},{"artifact":1,"gen_end":78144,"gen_start":62729,"node":111,"role":"declaration","source":0,"src_end":27383,"src_start":26693},{"artifact":1,"gen_end":78159,"gen_start":78144,"node":56,"role":"declaration","source":0,"src_end":27419,"src_start":0}],"module":"ReasoningOracle","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"},{"id":40,"kind":"semantic-declaration"},{"id":41,"kind":"semantic-declaration"},{"id":42,"kind":"semantic-declaration"},{"id":43,"kind":"semantic-declaration"},{"id":44,"kind":"semantic-declaration"},{"id":45,"kind":"semantic-declaration"},{"id":46,"kind":"semantic-declaration"},{"id":47,"kind":"semantic-declaration"},{"id":48,"kind":"semantic-declaration"},{"id":49,"kind":"semantic-declaration"},{"id":50,"kind":"semantic-declaration"},{"id":51,"kind":"semantic-declaration"},{"id":52,"kind":"semantic-declaration"},{"id":53,"kind":"semantic-declaration"},{"id":54,"kind":"semantic-declaration"},{"id":55,"kind":"semantic-declaration"},{"id":56,"kind":"semantic-latex-module"},{"id":57,"kind":"semantic-declaration"},{"id":58,"kind":"semantic-declaration"},{"id":59,"kind":"semantic-declaration"},{"id":60,"kind":"semantic-declaration"},{"id":61,"kind":"semantic-declaration"},{"id":62,"kind":"semantic-declaration"},{"id":63,"kind":"semantic-declaration"},{"id":64,"kind":"semantic-declaration"},{"id":65,"kind":"semantic-declaration"},{"id":66,"kind":"semantic-declaration"},{"id":67,"kind":"semantic-declaration"},{"id":68,"kind":"semantic-declaration"},{"id":69,"kind":"semantic-declaration"},{"id":70,"kind":"semantic-declaration"},{"id":71,"kind":"semantic-declaration"},{"id":72,"kind":"semantic-declaration"},{"id":73,"kind":"semantic-declaration"},{"id":74,"kind":"semantic-declaration"},{"id":75,"kind":"semantic-declaration"},{"id":76,"kind":"semantic-declaration"},{"id":77,"kind":"semantic-declaration"},{"id":78,"kind":"semantic-declaration"},{"id":79,"kind":"semantic-declaration"},{"id":80,"kind":"semantic-declaration"},{"id":81,"kind":"semantic-declaration"},{"id":82,"kind":"semantic-declaration"},{"id":83,"kind":"semantic-declaration"},{"id":84,"kind":"semantic-declaration"},{"id":85,"kind":"semantic-declaration"},{"id":86,"kind":"semantic-declaration"},{"id":87,"kind":"semantic-declaration"},{"id":88,"kind":"semantic-declaration"},{"id":89,"kind":"semantic-declaration"},{"id":90,"kind":"semantic-declaration"},{"id":91,"kind":"semantic-declaration"},{"id":92,"kind":"semantic-declaration"},{"id":93,"kind":"semantic-declaration"},{"id":94,"kind":"semantic-declaration"},{"id":95,"kind":"semantic-declaration"},{"id":96,"kind":"semantic-declaration"},{"id":97,"kind":"semantic-declaration"},{"id":98,"kind":"semantic-declaration"},{"id":99,"kind":"semantic-declaration"},{"id":100,"kind":"semantic-declaration"},{"id":101,"kind":"semantic-declaration"},{"id":102,"kind":"semantic-declaration"},{"id":103,"kind":"semantic-declaration"},{"id":104,"kind":"semantic-declaration"},{"id":105,"kind":"semantic-declaration"},{"id":106,"kind":"semantic-declaration"},{"id":107,"kind":"semantic-declaration"},{"id":108,"kind":"semantic-declaration"},{"id":109,"kind":"semantic-declaration"},{"id":110,"kind":"semantic-declaration"},{"id":111,"kind":"semantic-declaration"}],"semantic_id":"e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb","source_id":"965efd311d3549a7c17dd823b4418cfee906beecd273f4bfcafb371c36d9ce99","sources":[{"id":0,"kind":"file","path":"src/ReasoningOracle.lex.tex","sha256":"7d5e680324c4fbffa4b8906aefe2e502d20994ff8cdaf223eb385e814bec77bb"}],"spec":"lexlean/source-map/1"} diff --git a/compiler/expected/build/maps/LexLeanTarget/RustSemantics.map.json b/compiler/expected/build/maps/LexLeanTarget/RustSemantics.map.json index 83dbe7258..badaaa25a 100644 --- a/compiler/expected/build/maps/LexLeanTarget/RustSemantics.map.json +++ b/compiler/expected/build/maps/LexLeanTarget/RustSemantics.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/LexLeanTarget/RustSemantics.lean"},{"id":1,"kind":"tex","path":"modules/LexLeanTarget/RustSemantics.tex"}],"mappings":[{"artifact":0,"gen_end":372,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":103523,"src_start":0},{"artifact":0,"gen_end":498,"gen_start":372,"node":1,"role":"declaration","source":0,"src_end":477,"src_start":207},{"artifact":0,"gen_end":633,"gen_start":498,"node":2,"role":"declaration","source":0,"src_end":758,"src_start":479},{"artifact":0,"gen_end":1179,"gen_start":633,"node":3,"role":"declaration","source":0,"src_end":1236,"src_start":760},{"artifact":0,"gen_end":1838,"gen_start":1179,"node":4,"role":"declaration","source":0,"src_end":1827,"src_start":1238},{"artifact":0,"gen_end":2213,"gen_start":1838,"node":5,"role":"declaration","source":0,"src_end":2289,"src_start":1829},{"artifact":0,"gen_end":4974,"gen_start":2213,"node":6,"role":"declaration","source":0,"src_end":5469,"src_start":2291},{"artifact":0,"gen_end":6897,"gen_start":4974,"node":7,"role":"declaration","source":0,"src_end":7876,"src_start":5471},{"artifact":0,"gen_end":19066,"gen_start":6897,"node":8,"role":"declaration","source":0,"src_end":30493,"src_start":7878},{"artifact":0,"gen_end":19855,"gen_start":19066,"node":9,"role":"declaration","source":0,"src_end":31684,"src_start":30495},{"artifact":0,"gen_end":23042,"gen_start":19855,"node":10,"role":"declaration","source":0,"src_end":36293,"src_start":31686},{"artifact":0,"gen_end":27513,"gen_start":23042,"node":11,"role":"declaration","source":0,"src_end":40127,"src_start":36295},{"artifact":0,"gen_end":30132,"gen_start":27513,"node":12,"role":"declaration","source":0,"src_end":42351,"src_start":40129},{"artifact":0,"gen_end":32738,"gen_start":30132,"node":13,"role":"declaration","source":0,"src_end":44562,"src_start":42353},{"artifact":0,"gen_end":35665,"gen_start":32738,"node":14,"role":"declaration","source":0,"src_end":47097,"src_start":44564},{"artifact":0,"gen_end":45673,"gen_start":35665,"node":15,"role":"declaration","source":0,"src_end":57456,"src_start":47099},{"artifact":0,"gen_end":45940,"gen_start":45673,"node":16,"role":"declaration","source":0,"src_end":57756,"src_start":57458},{"artifact":0,"gen_end":49024,"gen_start":45940,"node":17,"role":"declaration","source":0,"src_end":61922,"src_start":57758},{"artifact":0,"gen_end":51648,"gen_start":49024,"node":18,"role":"declaration","source":0,"src_end":64151,"src_start":61924},{"artifact":0,"gen_end":52919,"gen_start":51648,"node":19,"role":"declaration","source":0,"src_end":65449,"src_start":64153},{"artifact":0,"gen_end":54191,"gen_start":52919,"node":20,"role":"declaration","source":0,"src_end":66748,"src_start":65451},{"artifact":0,"gen_end":55464,"gen_start":54191,"node":21,"role":"declaration","source":0,"src_end":68048,"src_start":66750},{"artifact":0,"gen_end":58178,"gen_start":55464,"node":22,"role":"declaration","source":0,"src_end":70536,"src_start":68050},{"artifact":0,"gen_end":58637,"gen_start":58178,"node":23,"role":"declaration","source":0,"src_end":71177,"src_start":70538},{"artifact":0,"gen_end":60274,"gen_start":58637,"node":24,"role":"declaration","source":0,"src_end":72838,"src_start":71179},{"artifact":0,"gen_end":61944,"gen_start":60274,"node":25,"role":"declaration","source":0,"src_end":74784,"src_start":72840},{"artifact":0,"gen_end":62080,"gen_start":61944,"node":26,"role":"declaration","source":0,"src_end":74950,"src_start":74786},{"artifact":0,"gen_end":62443,"gen_start":62080,"node":27,"role":"declaration","source":0,"src_end":75383,"src_start":74952},{"artifact":0,"gen_end":63153,"gen_start":62443,"node":28,"role":"declaration","source":0,"src_end":76268,"src_start":75385},{"artifact":0,"gen_end":63575,"gen_start":63153,"node":29,"role":"declaration","source":0,"src_end":76725,"src_start":76270},{"artifact":0,"gen_end":64255,"gen_start":63575,"node":30,"role":"declaration","source":0,"src_end":77526,"src_start":76727},{"artifact":0,"gen_end":65239,"gen_start":64255,"node":31,"role":"declaration","source":0,"src_end":78480,"src_start":77528},{"artifact":0,"gen_end":65665,"gen_start":65239,"node":32,"role":"declaration","source":0,"src_end":78975,"src_start":78482},{"artifact":0,"gen_end":65922,"gen_start":65665,"node":33,"role":"declaration","source":0,"src_end":79432,"src_start":78977},{"artifact":0,"gen_end":82859,"gen_start":65922,"node":34,"role":"declaration","source":0,"src_end":98969,"src_start":79434},{"artifact":0,"gen_end":83963,"gen_start":82859,"node":35,"role":"declaration","source":0,"src_end":100183,"src_start":98971},{"artifact":0,"gen_end":85072,"gen_start":83963,"node":36,"role":"declaration","source":0,"src_end":101374,"src_start":100185},{"artifact":0,"gen_end":85915,"gen_start":85072,"node":37,"role":"declaration","source":0,"src_end":102359,"src_start":101376},{"artifact":0,"gen_end":86705,"gen_start":85915,"node":38,"role":"declaration","source":0,"src_end":103175,"src_start":102361},{"artifact":0,"gen_end":86958,"gen_start":86705,"node":39,"role":"declaration","source":0,"src_end":103487,"src_start":103177},{"artifact":0,"gen_end":86991,"gen_start":86958,"node":0,"role":"declaration","source":0,"src_end":103523,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":40,"role":"declaration","source":0,"src_end":103523,"src_start":0},{"artifact":1,"gen_end":517,"gen_start":134,"node":41,"role":"declaration","source":0,"src_end":477,"src_start":207},{"artifact":1,"gen_end":909,"gen_start":517,"node":42,"role":"declaration","source":0,"src_end":758,"src_start":479},{"artifact":1,"gen_end":1637,"gen_start":909,"node":43,"role":"declaration","source":0,"src_end":1236,"src_start":760},{"artifact":1,"gen_end":2483,"gen_start":1637,"node":44,"role":"declaration","source":0,"src_end":1827,"src_start":1238},{"artifact":1,"gen_end":3045,"gen_start":2483,"node":45,"role":"declaration","source":0,"src_end":2289,"src_start":1829},{"artifact":1,"gen_end":6011,"gen_start":3045,"node":46,"role":"declaration","source":0,"src_end":5469,"src_start":2291},{"artifact":1,"gen_end":8131,"gen_start":6011,"node":47,"role":"declaration","source":0,"src_end":7876,"src_start":5471},{"artifact":1,"gen_end":20493,"gen_start":8131,"node":48,"role":"declaration","source":0,"src_end":30493,"src_start":7878},{"artifact":1,"gen_end":21470,"gen_start":20493,"node":49,"role":"declaration","source":0,"src_end":31684,"src_start":30495},{"artifact":1,"gen_end":24882,"gen_start":21470,"node":50,"role":"declaration","source":0,"src_end":36293,"src_start":31686},{"artifact":1,"gen_end":29547,"gen_start":24882,"node":51,"role":"declaration","source":0,"src_end":40127,"src_start":36295},{"artifact":1,"gen_end":32362,"gen_start":29547,"node":52,"role":"declaration","source":0,"src_end":42351,"src_start":40129},{"artifact":1,"gen_end":35164,"gen_start":32362,"node":53,"role":"declaration","source":0,"src_end":44562,"src_start":42353},{"artifact":1,"gen_end":38287,"gen_start":35164,"node":54,"role":"declaration","source":0,"src_end":47097,"src_start":44564},{"artifact":1,"gen_end":48669,"gen_start":38287,"node":55,"role":"declaration","source":0,"src_end":57456,"src_start":47099},{"artifact":1,"gen_end":49118,"gen_start":48669,"node":56,"role":"declaration","source":0,"src_end":57756,"src_start":57458},{"artifact":1,"gen_end":52386,"gen_start":49118,"node":57,"role":"declaration","source":0,"src_end":61922,"src_start":57758},{"artifact":1,"gen_end":55206,"gen_start":52386,"node":58,"role":"declaration","source":0,"src_end":64151,"src_start":61924},{"artifact":1,"gen_end":56683,"gen_start":55206,"node":59,"role":"declaration","source":0,"src_end":65449,"src_start":64153},{"artifact":1,"gen_end":58161,"gen_start":56683,"node":60,"role":"declaration","source":0,"src_end":66748,"src_start":65451},{"artifact":1,"gen_end":59640,"gen_start":58161,"node":61,"role":"declaration","source":0,"src_end":68048,"src_start":66750},{"artifact":1,"gen_end":62550,"gen_start":59640,"node":62,"role":"declaration","source":0,"src_end":70536,"src_start":68050},{"artifact":1,"gen_end":63193,"gen_start":62550,"node":63,"role":"declaration","source":0,"src_end":71177,"src_start":70538},{"artifact":1,"gen_end":65057,"gen_start":63193,"node":64,"role":"declaration","source":0,"src_end":72838,"src_start":71179},{"artifact":1,"gen_end":66932,"gen_start":65057,"node":65,"role":"declaration","source":0,"src_end":74784,"src_start":72840},{"artifact":1,"gen_end":67250,"gen_start":66932,"node":66,"role":"declaration","source":0,"src_end":74950,"src_start":74786},{"artifact":1,"gen_end":67795,"gen_start":67250,"node":67,"role":"declaration","source":0,"src_end":75383,"src_start":74952},{"artifact":1,"gen_end":68689,"gen_start":67795,"node":68,"role":"declaration","source":0,"src_end":76268,"src_start":75385},{"artifact":1,"gen_end":69267,"gen_start":68689,"node":69,"role":"declaration","source":0,"src_end":76725,"src_start":76270},{"artifact":1,"gen_end":70111,"gen_start":69267,"node":70,"role":"declaration","source":0,"src_end":77526,"src_start":76727},{"artifact":1,"gen_end":71289,"gen_start":70111,"node":71,"role":"declaration","source":0,"src_end":78480,"src_start":77528},{"artifact":1,"gen_end":71897,"gen_start":71289,"node":72,"role":"declaration","source":0,"src_end":78975,"src_start":78482},{"artifact":1,"gen_end":72356,"gen_start":71897,"node":73,"role":"declaration","source":0,"src_end":79432,"src_start":78977},{"artifact":1,"gen_end":89648,"gen_start":72356,"node":74,"role":"declaration","source":0,"src_end":98969,"src_start":79434},{"artifact":1,"gen_end":90950,"gen_start":89648,"node":75,"role":"declaration","source":0,"src_end":100183,"src_start":98971},{"artifact":1,"gen_end":92270,"gen_start":90950,"node":76,"role":"declaration","source":0,"src_end":101374,"src_start":100185},{"artifact":1,"gen_end":93297,"gen_start":92270,"node":77,"role":"declaration","source":0,"src_end":102359,"src_start":101376},{"artifact":1,"gen_end":94295,"gen_start":93297,"node":78,"role":"declaration","source":0,"src_end":103175,"src_start":102361},{"artifact":1,"gen_end":94771,"gen_start":94295,"node":79,"role":"declaration","source":0,"src_end":103487,"src_start":103177},{"artifact":1,"gen_end":94786,"gen_start":94771,"node":40,"role":"declaration","source":0,"src_end":103523,"src_start":0}],"module":"RustSemantics","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"},{"id":40,"kind":"semantic-latex-module"},{"id":41,"kind":"semantic-declaration"},{"id":42,"kind":"semantic-declaration"},{"id":43,"kind":"semantic-declaration"},{"id":44,"kind":"semantic-declaration"},{"id":45,"kind":"semantic-declaration"},{"id":46,"kind":"semantic-declaration"},{"id":47,"kind":"semantic-declaration"},{"id":48,"kind":"semantic-declaration"},{"id":49,"kind":"semantic-declaration"},{"id":50,"kind":"semantic-declaration"},{"id":51,"kind":"semantic-declaration"},{"id":52,"kind":"semantic-declaration"},{"id":53,"kind":"semantic-declaration"},{"id":54,"kind":"semantic-declaration"},{"id":55,"kind":"semantic-declaration"},{"id":56,"kind":"semantic-declaration"},{"id":57,"kind":"semantic-declaration"},{"id":58,"kind":"semantic-declaration"},{"id":59,"kind":"semantic-declaration"},{"id":60,"kind":"semantic-declaration"},{"id":61,"kind":"semantic-declaration"},{"id":62,"kind":"semantic-declaration"},{"id":63,"kind":"semantic-declaration"},{"id":64,"kind":"semantic-declaration"},{"id":65,"kind":"semantic-declaration"},{"id":66,"kind":"semantic-declaration"},{"id":67,"kind":"semantic-declaration"},{"id":68,"kind":"semantic-declaration"},{"id":69,"kind":"semantic-declaration"},{"id":70,"kind":"semantic-declaration"},{"id":71,"kind":"semantic-declaration"},{"id":72,"kind":"semantic-declaration"},{"id":73,"kind":"semantic-declaration"},{"id":74,"kind":"semantic-declaration"},{"id":75,"kind":"semantic-declaration"},{"id":76,"kind":"semantic-declaration"},{"id":77,"kind":"semantic-declaration"},{"id":78,"kind":"semantic-declaration"},{"id":79,"kind":"semantic-declaration"}],"semantic_id":"c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517","source_id":"ce718723d5d252a9adafdc3cb3b76931b1d91e053dd3e7e31bcb9b9496a1941c","sources":[{"id":0,"kind":"file","path":"src/RustSemantics.lex.tex","sha256":"183644ea3d81403440add2ca225c82d462dde21a7c5a7928d2c313a12e9242b3"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/LexLeanTarget/RustSemantics.lean"},{"id":1,"kind":"tex","path":"modules/LexLeanTarget/RustSemantics.tex"}],"mappings":[{"artifact":0,"gen_end":372,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":103523,"src_start":0},{"artifact":0,"gen_end":498,"gen_start":372,"node":1,"role":"declaration","source":0,"src_end":477,"src_start":207},{"artifact":0,"gen_end":633,"gen_start":498,"node":2,"role":"declaration","source":0,"src_end":758,"src_start":479},{"artifact":0,"gen_end":1179,"gen_start":633,"node":3,"role":"declaration","source":0,"src_end":1236,"src_start":760},{"artifact":0,"gen_end":1838,"gen_start":1179,"node":4,"role":"declaration","source":0,"src_end":1827,"src_start":1238},{"artifact":0,"gen_end":2213,"gen_start":1838,"node":5,"role":"declaration","source":0,"src_end":2289,"src_start":1829},{"artifact":0,"gen_end":4974,"gen_start":2213,"node":6,"role":"declaration","source":0,"src_end":5469,"src_start":2291},{"artifact":0,"gen_end":6897,"gen_start":4974,"node":7,"role":"declaration","source":0,"src_end":7876,"src_start":5471},{"artifact":0,"gen_end":19066,"gen_start":6897,"node":8,"role":"declaration","source":0,"src_end":30493,"src_start":7878},{"artifact":0,"gen_end":19855,"gen_start":19066,"node":9,"role":"declaration","source":0,"src_end":31684,"src_start":30495},{"artifact":0,"gen_end":23042,"gen_start":19855,"node":10,"role":"declaration","source":0,"src_end":36293,"src_start":31686},{"artifact":0,"gen_end":27513,"gen_start":23042,"node":11,"role":"declaration","source":0,"src_end":40127,"src_start":36295},{"artifact":0,"gen_end":30132,"gen_start":27513,"node":12,"role":"declaration","source":0,"src_end":42351,"src_start":40129},{"artifact":0,"gen_end":32738,"gen_start":30132,"node":13,"role":"declaration","source":0,"src_end":44562,"src_start":42353},{"artifact":0,"gen_end":35665,"gen_start":32738,"node":14,"role":"declaration","source":0,"src_end":47097,"src_start":44564},{"artifact":0,"gen_end":45673,"gen_start":35665,"node":15,"role":"declaration","source":0,"src_end":57456,"src_start":47099},{"artifact":0,"gen_end":45940,"gen_start":45673,"node":16,"role":"declaration","source":0,"src_end":57756,"src_start":57458},{"artifact":0,"gen_end":49024,"gen_start":45940,"node":17,"role":"declaration","source":0,"src_end":61922,"src_start":57758},{"artifact":0,"gen_end":51648,"gen_start":49024,"node":18,"role":"declaration","source":0,"src_end":64151,"src_start":61924},{"artifact":0,"gen_end":52919,"gen_start":51648,"node":19,"role":"declaration","source":0,"src_end":65449,"src_start":64153},{"artifact":0,"gen_end":54191,"gen_start":52919,"node":20,"role":"declaration","source":0,"src_end":66748,"src_start":65451},{"artifact":0,"gen_end":55464,"gen_start":54191,"node":21,"role":"declaration","source":0,"src_end":68048,"src_start":66750},{"artifact":0,"gen_end":58178,"gen_start":55464,"node":22,"role":"declaration","source":0,"src_end":70536,"src_start":68050},{"artifact":0,"gen_end":58637,"gen_start":58178,"node":23,"role":"declaration","source":0,"src_end":71177,"src_start":70538},{"artifact":0,"gen_end":60274,"gen_start":58637,"node":24,"role":"declaration","source":0,"src_end":72838,"src_start":71179},{"artifact":0,"gen_end":61944,"gen_start":60274,"node":25,"role":"declaration","source":0,"src_end":74784,"src_start":72840},{"artifact":0,"gen_end":62080,"gen_start":61944,"node":26,"role":"declaration","source":0,"src_end":74950,"src_start":74786},{"artifact":0,"gen_end":62443,"gen_start":62080,"node":27,"role":"declaration","source":0,"src_end":75383,"src_start":74952},{"artifact":0,"gen_end":63153,"gen_start":62443,"node":28,"role":"declaration","source":0,"src_end":76268,"src_start":75385},{"artifact":0,"gen_end":63575,"gen_start":63153,"node":29,"role":"declaration","source":0,"src_end":76725,"src_start":76270},{"artifact":0,"gen_end":64255,"gen_start":63575,"node":30,"role":"declaration","source":0,"src_end":77526,"src_start":76727},{"artifact":0,"gen_end":65239,"gen_start":64255,"node":31,"role":"declaration","source":0,"src_end":78480,"src_start":77528},{"artifact":0,"gen_end":65665,"gen_start":65239,"node":32,"role":"declaration","source":0,"src_end":78975,"src_start":78482},{"artifact":0,"gen_end":65922,"gen_start":65665,"node":33,"role":"declaration","source":0,"src_end":79432,"src_start":78977},{"artifact":0,"gen_end":82859,"gen_start":65922,"node":34,"role":"declaration","source":0,"src_end":98969,"src_start":79434},{"artifact":0,"gen_end":83963,"gen_start":82859,"node":35,"role":"declaration","source":0,"src_end":100183,"src_start":98971},{"artifact":0,"gen_end":85072,"gen_start":83963,"node":36,"role":"declaration","source":0,"src_end":101374,"src_start":100185},{"artifact":0,"gen_end":85915,"gen_start":85072,"node":37,"role":"declaration","source":0,"src_end":102359,"src_start":101376},{"artifact":0,"gen_end":86705,"gen_start":85915,"node":38,"role":"declaration","source":0,"src_end":103175,"src_start":102361},{"artifact":0,"gen_end":86958,"gen_start":86705,"node":39,"role":"declaration","source":0,"src_end":103487,"src_start":103177},{"artifact":0,"gen_end":86991,"gen_start":86958,"node":0,"role":"declaration","source":0,"src_end":103523,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":40,"role":"declaration","source":0,"src_end":103523,"src_start":0},{"artifact":1,"gen_end":517,"gen_start":134,"node":41,"role":"declaration","source":0,"src_end":477,"src_start":207},{"artifact":1,"gen_end":909,"gen_start":517,"node":42,"role":"declaration","source":0,"src_end":758,"src_start":479},{"artifact":1,"gen_end":1637,"gen_start":909,"node":43,"role":"declaration","source":0,"src_end":1236,"src_start":760},{"artifact":1,"gen_end":2483,"gen_start":1637,"node":44,"role":"declaration","source":0,"src_end":1827,"src_start":1238},{"artifact":1,"gen_end":3045,"gen_start":2483,"node":45,"role":"declaration","source":0,"src_end":2289,"src_start":1829},{"artifact":1,"gen_end":6011,"gen_start":3045,"node":46,"role":"declaration","source":0,"src_end":5469,"src_start":2291},{"artifact":1,"gen_end":8131,"gen_start":6011,"node":47,"role":"declaration","source":0,"src_end":7876,"src_start":5471},{"artifact":1,"gen_end":20493,"gen_start":8131,"node":48,"role":"declaration","source":0,"src_end":30493,"src_start":7878},{"artifact":1,"gen_end":21470,"gen_start":20493,"node":49,"role":"declaration","source":0,"src_end":31684,"src_start":30495},{"artifact":1,"gen_end":24882,"gen_start":21470,"node":50,"role":"declaration","source":0,"src_end":36293,"src_start":31686},{"artifact":1,"gen_end":29547,"gen_start":24882,"node":51,"role":"declaration","source":0,"src_end":40127,"src_start":36295},{"artifact":1,"gen_end":32362,"gen_start":29547,"node":52,"role":"declaration","source":0,"src_end":42351,"src_start":40129},{"artifact":1,"gen_end":35164,"gen_start":32362,"node":53,"role":"declaration","source":0,"src_end":44562,"src_start":42353},{"artifact":1,"gen_end":38287,"gen_start":35164,"node":54,"role":"declaration","source":0,"src_end":47097,"src_start":44564},{"artifact":1,"gen_end":48669,"gen_start":38287,"node":55,"role":"declaration","source":0,"src_end":57456,"src_start":47099},{"artifact":1,"gen_end":49118,"gen_start":48669,"node":56,"role":"declaration","source":0,"src_end":57756,"src_start":57458},{"artifact":1,"gen_end":52386,"gen_start":49118,"node":57,"role":"declaration","source":0,"src_end":61922,"src_start":57758},{"artifact":1,"gen_end":55206,"gen_start":52386,"node":58,"role":"declaration","source":0,"src_end":64151,"src_start":61924},{"artifact":1,"gen_end":56683,"gen_start":55206,"node":59,"role":"declaration","source":0,"src_end":65449,"src_start":64153},{"artifact":1,"gen_end":58161,"gen_start":56683,"node":60,"role":"declaration","source":0,"src_end":66748,"src_start":65451},{"artifact":1,"gen_end":59640,"gen_start":58161,"node":61,"role":"declaration","source":0,"src_end":68048,"src_start":66750},{"artifact":1,"gen_end":62550,"gen_start":59640,"node":62,"role":"declaration","source":0,"src_end":70536,"src_start":68050},{"artifact":1,"gen_end":63193,"gen_start":62550,"node":63,"role":"declaration","source":0,"src_end":71177,"src_start":70538},{"artifact":1,"gen_end":65057,"gen_start":63193,"node":64,"role":"declaration","source":0,"src_end":72838,"src_start":71179},{"artifact":1,"gen_end":66932,"gen_start":65057,"node":65,"role":"declaration","source":0,"src_end":74784,"src_start":72840},{"artifact":1,"gen_end":67250,"gen_start":66932,"node":66,"role":"declaration","source":0,"src_end":74950,"src_start":74786},{"artifact":1,"gen_end":67795,"gen_start":67250,"node":67,"role":"declaration","source":0,"src_end":75383,"src_start":74952},{"artifact":1,"gen_end":68689,"gen_start":67795,"node":68,"role":"declaration","source":0,"src_end":76268,"src_start":75385},{"artifact":1,"gen_end":69267,"gen_start":68689,"node":69,"role":"declaration","source":0,"src_end":76725,"src_start":76270},{"artifact":1,"gen_end":70111,"gen_start":69267,"node":70,"role":"declaration","source":0,"src_end":77526,"src_start":76727},{"artifact":1,"gen_end":71289,"gen_start":70111,"node":71,"role":"declaration","source":0,"src_end":78480,"src_start":77528},{"artifact":1,"gen_end":71897,"gen_start":71289,"node":72,"role":"declaration","source":0,"src_end":78975,"src_start":78482},{"artifact":1,"gen_end":72356,"gen_start":71897,"node":73,"role":"declaration","source":0,"src_end":79432,"src_start":78977},{"artifact":1,"gen_end":89648,"gen_start":72356,"node":74,"role":"declaration","source":0,"src_end":98969,"src_start":79434},{"artifact":1,"gen_end":90950,"gen_start":89648,"node":75,"role":"declaration","source":0,"src_end":100183,"src_start":98971},{"artifact":1,"gen_end":92270,"gen_start":90950,"node":76,"role":"declaration","source":0,"src_end":101374,"src_start":100185},{"artifact":1,"gen_end":93297,"gen_start":92270,"node":77,"role":"declaration","source":0,"src_end":102359,"src_start":101376},{"artifact":1,"gen_end":94295,"gen_start":93297,"node":78,"role":"declaration","source":0,"src_end":103175,"src_start":102361},{"artifact":1,"gen_end":94771,"gen_start":94295,"node":79,"role":"declaration","source":0,"src_end":103487,"src_start":103177},{"artifact":1,"gen_end":94786,"gen_start":94771,"node":40,"role":"declaration","source":0,"src_end":103523,"src_start":0}],"module":"RustSemantics","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"},{"id":40,"kind":"semantic-latex-module"},{"id":41,"kind":"semantic-declaration"},{"id":42,"kind":"semantic-declaration"},{"id":43,"kind":"semantic-declaration"},{"id":44,"kind":"semantic-declaration"},{"id":45,"kind":"semantic-declaration"},{"id":46,"kind":"semantic-declaration"},{"id":47,"kind":"semantic-declaration"},{"id":48,"kind":"semantic-declaration"},{"id":49,"kind":"semantic-declaration"},{"id":50,"kind":"semantic-declaration"},{"id":51,"kind":"semantic-declaration"},{"id":52,"kind":"semantic-declaration"},{"id":53,"kind":"semantic-declaration"},{"id":54,"kind":"semantic-declaration"},{"id":55,"kind":"semantic-declaration"},{"id":56,"kind":"semantic-declaration"},{"id":57,"kind":"semantic-declaration"},{"id":58,"kind":"semantic-declaration"},{"id":59,"kind":"semantic-declaration"},{"id":60,"kind":"semantic-declaration"},{"id":61,"kind":"semantic-declaration"},{"id":62,"kind":"semantic-declaration"},{"id":63,"kind":"semantic-declaration"},{"id":64,"kind":"semantic-declaration"},{"id":65,"kind":"semantic-declaration"},{"id":66,"kind":"semantic-declaration"},{"id":67,"kind":"semantic-declaration"},{"id":68,"kind":"semantic-declaration"},{"id":69,"kind":"semantic-declaration"},{"id":70,"kind":"semantic-declaration"},{"id":71,"kind":"semantic-declaration"},{"id":72,"kind":"semantic-declaration"},{"id":73,"kind":"semantic-declaration"},{"id":74,"kind":"semantic-declaration"},{"id":75,"kind":"semantic-declaration"},{"id":76,"kind":"semantic-declaration"},{"id":77,"kind":"semantic-declaration"},{"id":78,"kind":"semantic-declaration"},{"id":79,"kind":"semantic-declaration"}],"semantic_id":"e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb","source_id":"965efd311d3549a7c17dd823b4418cfee906beecd273f4bfcafb371c36d9ce99","sources":[{"id":0,"kind":"file","path":"src/RustSemantics.lex.tex","sha256":"183644ea3d81403440add2ca225c82d462dde21a7c5a7928d2c313a12e9242b3"}],"spec":"lexlean/source-map/1"} diff --git a/compiler/expected/build/maps/LexLeanTarget/RustSyntax.map.json b/compiler/expected/build/maps/LexLeanTarget/RustSyntax.map.json index 7ca2d3619..115422527 100644 --- a/compiler/expected/build/maps/LexLeanTarget/RustSyntax.map.json +++ b/compiler/expected/build/maps/LexLeanTarget/RustSyntax.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/LexLeanTarget/RustSyntax.lean"},{"id":1,"kind":"tex","path":"modules/LexLeanTarget/RustSyntax.tex"}],"mappings":[{"artifact":0,"gen_end":248,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":7619,"src_start":0},{"artifact":0,"gen_end":382,"gen_start":248,"node":1,"role":"declaration","source":0,"src_end":529,"src_start":147},{"artifact":0,"gen_end":478,"gen_start":382,"node":2,"role":"declaration","source":0,"src_end":697,"src_start":531},{"artifact":0,"gen_end":865,"gen_start":478,"node":3,"role":"declaration","source":0,"src_end":1409,"src_start":699},{"artifact":0,"gen_end":1118,"gen_start":865,"node":4,"role":"declaration","source":0,"src_end":1807,"src_start":1411},{"artifact":0,"gen_end":1347,"gen_start":1118,"node":5,"role":"declaration","source":0,"src_end":2203,"src_start":1809},{"artifact":0,"gen_end":1601,"gen_start":1347,"node":6,"role":"declaration","source":0,"src_end":2656,"src_start":2205},{"artifact":0,"gen_end":2852,"gen_start":1601,"node":7,"role":"declaration","source":0,"src_end":4738,"src_start":2658},{"artifact":0,"gen_end":2929,"gen_start":2852,"node":8,"role":"declaration","source":0,"src_end":4892,"src_start":4740},{"artifact":0,"gen_end":3553,"gen_start":2929,"node":9,"role":"declaration","source":0,"src_end":5835,"src_start":4894},{"artifact":0,"gen_end":3633,"gen_start":3553,"node":10,"role":"declaration","source":0,"src_end":5988,"src_start":5837},{"artifact":0,"gen_end":3698,"gen_start":3633,"node":11,"role":"declaration","source":0,"src_end":6131,"src_start":5990},{"artifact":0,"gen_end":3759,"gen_start":3698,"node":12,"role":"declaration","source":0,"src_end":6266,"src_start":6133},{"artifact":0,"gen_end":3833,"gen_start":3759,"node":13,"role":"declaration","source":0,"src_end":6485,"src_start":6268},{"artifact":0,"gen_end":3941,"gen_start":3833,"node":14,"role":"declaration","source":0,"src_end":6696,"src_start":6487},{"artifact":0,"gen_end":4015,"gen_start":3941,"node":15,"role":"declaration","source":0,"src_end":6845,"src_start":6698},{"artifact":0,"gen_end":4083,"gen_start":4015,"node":16,"role":"declaration","source":0,"src_end":6988,"src_start":6847},{"artifact":0,"gen_end":4325,"gen_start":4083,"node":17,"role":"declaration","source":0,"src_end":7293,"src_start":6990},{"artifact":0,"gen_end":4374,"gen_start":4325,"node":18,"role":"declaration","source":0,"src_end":7433,"src_start":7295},{"artifact":0,"gen_end":4449,"gen_start":4374,"node":19,"role":"declaration","source":0,"src_end":7583,"src_start":7435},{"artifact":0,"gen_end":4479,"gen_start":4449,"node":0,"role":"declaration","source":0,"src_end":7619,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":20,"role":"declaration","source":0,"src_end":7619,"src_start":0},{"artifact":1,"gen_end":712,"gen_start":134,"node":21,"role":"declaration","source":0,"src_end":529,"src_start":147},{"artifact":1,"gen_end":918,"gen_start":712,"node":22,"role":"declaration","source":0,"src_end":697,"src_start":531},{"artifact":1,"gen_end":2029,"gen_start":918,"node":23,"role":"declaration","source":0,"src_end":1409,"src_start":699},{"artifact":1,"gen_end":2627,"gen_start":2029,"node":24,"role":"declaration","source":0,"src_end":1807,"src_start":1411},{"artifact":1,"gen_end":3193,"gen_start":2627,"node":25,"role":"declaration","source":0,"src_end":2203,"src_start":1809},{"artifact":1,"gen_end":3877,"gen_start":3193,"node":26,"role":"declaration","source":0,"src_end":2656,"src_start":2205},{"artifact":1,"gen_end":7319,"gen_start":3877,"node":27,"role":"declaration","source":0,"src_end":4738,"src_start":2658},{"artifact":1,"gen_end":7511,"gen_start":7319,"node":28,"role":"declaration","source":0,"src_end":4892,"src_start":4740},{"artifact":1,"gen_end":8963,"gen_start":7511,"node":29,"role":"declaration","source":0,"src_end":5835,"src_start":4894},{"artifact":1,"gen_end":9153,"gen_start":8963,"node":30,"role":"declaration","source":0,"src_end":5988,"src_start":5837},{"artifact":1,"gen_end":9333,"gen_start":9153,"node":31,"role":"declaration","source":0,"src_end":6131,"src_start":5990},{"artifact":1,"gen_end":9505,"gen_start":9333,"node":32,"role":"declaration","source":0,"src_end":6266,"src_start":6133},{"artifact":1,"gen_end":9798,"gen_start":9505,"node":33,"role":"declaration","source":0,"src_end":6485,"src_start":6268},{"artifact":1,"gen_end":10053,"gen_start":9798,"node":34,"role":"declaration","source":0,"src_end":6696,"src_start":6487},{"artifact":1,"gen_end":10238,"gen_start":10053,"node":35,"role":"declaration","source":0,"src_end":6845,"src_start":6698},{"artifact":1,"gen_end":10417,"gen_start":10238,"node":36,"role":"declaration","source":0,"src_end":6988,"src_start":6847},{"artifact":1,"gen_end":10772,"gen_start":10417,"node":37,"role":"declaration","source":0,"src_end":7293,"src_start":6990},{"artifact":1,"gen_end":10950,"gen_start":10772,"node":38,"role":"declaration","source":0,"src_end":7433,"src_start":7295},{"artifact":1,"gen_end":11136,"gen_start":10950,"node":39,"role":"declaration","source":0,"src_end":7583,"src_start":7435},{"artifact":1,"gen_end":11151,"gen_start":11136,"node":20,"role":"declaration","source":0,"src_end":7619,"src_start":0}],"module":"RustSyntax","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-latex-module"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"}],"semantic_id":"c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517","source_id":"ce718723d5d252a9adafdc3cb3b76931b1d91e053dd3e7e31bcb9b9496a1941c","sources":[{"id":0,"kind":"file","path":"src/RustSyntax.lex.tex","sha256":"9cbc4da6fc9441a03954f0979cbe4812aae0426811932e6ff1d6661043d3611f"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/LexLeanTarget/RustSyntax.lean"},{"id":1,"kind":"tex","path":"modules/LexLeanTarget/RustSyntax.tex"}],"mappings":[{"artifact":0,"gen_end":248,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":7619,"src_start":0},{"artifact":0,"gen_end":382,"gen_start":248,"node":1,"role":"declaration","source":0,"src_end":529,"src_start":147},{"artifact":0,"gen_end":478,"gen_start":382,"node":2,"role":"declaration","source":0,"src_end":697,"src_start":531},{"artifact":0,"gen_end":865,"gen_start":478,"node":3,"role":"declaration","source":0,"src_end":1409,"src_start":699},{"artifact":0,"gen_end":1118,"gen_start":865,"node":4,"role":"declaration","source":0,"src_end":1807,"src_start":1411},{"artifact":0,"gen_end":1347,"gen_start":1118,"node":5,"role":"declaration","source":0,"src_end":2203,"src_start":1809},{"artifact":0,"gen_end":1601,"gen_start":1347,"node":6,"role":"declaration","source":0,"src_end":2656,"src_start":2205},{"artifact":0,"gen_end":2852,"gen_start":1601,"node":7,"role":"declaration","source":0,"src_end":4738,"src_start":2658},{"artifact":0,"gen_end":2929,"gen_start":2852,"node":8,"role":"declaration","source":0,"src_end":4892,"src_start":4740},{"artifact":0,"gen_end":3553,"gen_start":2929,"node":9,"role":"declaration","source":0,"src_end":5835,"src_start":4894},{"artifact":0,"gen_end":3633,"gen_start":3553,"node":10,"role":"declaration","source":0,"src_end":5988,"src_start":5837},{"artifact":0,"gen_end":3698,"gen_start":3633,"node":11,"role":"declaration","source":0,"src_end":6131,"src_start":5990},{"artifact":0,"gen_end":3759,"gen_start":3698,"node":12,"role":"declaration","source":0,"src_end":6266,"src_start":6133},{"artifact":0,"gen_end":3833,"gen_start":3759,"node":13,"role":"declaration","source":0,"src_end":6485,"src_start":6268},{"artifact":0,"gen_end":3941,"gen_start":3833,"node":14,"role":"declaration","source":0,"src_end":6696,"src_start":6487},{"artifact":0,"gen_end":4015,"gen_start":3941,"node":15,"role":"declaration","source":0,"src_end":6845,"src_start":6698},{"artifact":0,"gen_end":4083,"gen_start":4015,"node":16,"role":"declaration","source":0,"src_end":6988,"src_start":6847},{"artifact":0,"gen_end":4325,"gen_start":4083,"node":17,"role":"declaration","source":0,"src_end":7293,"src_start":6990},{"artifact":0,"gen_end":4374,"gen_start":4325,"node":18,"role":"declaration","source":0,"src_end":7433,"src_start":7295},{"artifact":0,"gen_end":4449,"gen_start":4374,"node":19,"role":"declaration","source":0,"src_end":7583,"src_start":7435},{"artifact":0,"gen_end":4479,"gen_start":4449,"node":0,"role":"declaration","source":0,"src_end":7619,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":20,"role":"declaration","source":0,"src_end":7619,"src_start":0},{"artifact":1,"gen_end":712,"gen_start":134,"node":21,"role":"declaration","source":0,"src_end":529,"src_start":147},{"artifact":1,"gen_end":918,"gen_start":712,"node":22,"role":"declaration","source":0,"src_end":697,"src_start":531},{"artifact":1,"gen_end":2029,"gen_start":918,"node":23,"role":"declaration","source":0,"src_end":1409,"src_start":699},{"artifact":1,"gen_end":2627,"gen_start":2029,"node":24,"role":"declaration","source":0,"src_end":1807,"src_start":1411},{"artifact":1,"gen_end":3193,"gen_start":2627,"node":25,"role":"declaration","source":0,"src_end":2203,"src_start":1809},{"artifact":1,"gen_end":3877,"gen_start":3193,"node":26,"role":"declaration","source":0,"src_end":2656,"src_start":2205},{"artifact":1,"gen_end":7319,"gen_start":3877,"node":27,"role":"declaration","source":0,"src_end":4738,"src_start":2658},{"artifact":1,"gen_end":7511,"gen_start":7319,"node":28,"role":"declaration","source":0,"src_end":4892,"src_start":4740},{"artifact":1,"gen_end":8963,"gen_start":7511,"node":29,"role":"declaration","source":0,"src_end":5835,"src_start":4894},{"artifact":1,"gen_end":9153,"gen_start":8963,"node":30,"role":"declaration","source":0,"src_end":5988,"src_start":5837},{"artifact":1,"gen_end":9333,"gen_start":9153,"node":31,"role":"declaration","source":0,"src_end":6131,"src_start":5990},{"artifact":1,"gen_end":9505,"gen_start":9333,"node":32,"role":"declaration","source":0,"src_end":6266,"src_start":6133},{"artifact":1,"gen_end":9798,"gen_start":9505,"node":33,"role":"declaration","source":0,"src_end":6485,"src_start":6268},{"artifact":1,"gen_end":10053,"gen_start":9798,"node":34,"role":"declaration","source":0,"src_end":6696,"src_start":6487},{"artifact":1,"gen_end":10238,"gen_start":10053,"node":35,"role":"declaration","source":0,"src_end":6845,"src_start":6698},{"artifact":1,"gen_end":10417,"gen_start":10238,"node":36,"role":"declaration","source":0,"src_end":6988,"src_start":6847},{"artifact":1,"gen_end":10772,"gen_start":10417,"node":37,"role":"declaration","source":0,"src_end":7293,"src_start":6990},{"artifact":1,"gen_end":10950,"gen_start":10772,"node":38,"role":"declaration","source":0,"src_end":7433,"src_start":7295},{"artifact":1,"gen_end":11136,"gen_start":10950,"node":39,"role":"declaration","source":0,"src_end":7583,"src_start":7435},{"artifact":1,"gen_end":11151,"gen_start":11136,"node":20,"role":"declaration","source":0,"src_end":7619,"src_start":0}],"module":"RustSyntax","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-latex-module"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"}],"semantic_id":"e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb","source_id":"965efd311d3549a7c17dd823b4418cfee906beecd273f4bfcafb371c36d9ce99","sources":[{"id":0,"kind":"file","path":"src/RustSyntax.lex.tex","sha256":"9cbc4da6fc9441a03954f0979cbe4812aae0426811932e6ff1d6661043d3611f"}],"spec":"lexlean/source-map/1"} diff --git a/compiler/expected/build/maps/LexLeanTarget/ScreeningOracle.map.json b/compiler/expected/build/maps/LexLeanTarget/ScreeningOracle.map.json index bb249e1bd..0a83ea767 100644 --- a/compiler/expected/build/maps/LexLeanTarget/ScreeningOracle.map.json +++ b/compiler/expected/build/maps/LexLeanTarget/ScreeningOracle.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/LexLeanTarget/ScreeningOracle.lean"},{"id":1,"kind":"tex","path":"modules/LexLeanTarget/ScreeningOracle.tex"}],"mappings":[{"artifact":0,"gen_end":400,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":3620,"src_start":0},{"artifact":0,"gen_end":526,"gen_start":400,"node":1,"role":"declaration","source":0,"src_end":254,"src_start":124},{"artifact":0,"gen_end":655,"gen_start":526,"node":2,"role":"declaration","source":0,"src_end":412,"src_start":256},{"artifact":0,"gen_end":3724,"gen_start":655,"node":3,"role":"declaration","source":0,"src_end":637,"src_start":414},{"artifact":0,"gen_end":3926,"gen_start":3724,"node":4,"role":"declaration","source":0,"src_end":877,"src_start":639},{"artifact":0,"gen_end":4191,"gen_start":3926,"node":5,"role":"declaration","source":0,"src_end":1179,"src_start":879},{"artifact":0,"gen_end":4310,"gen_start":4191,"node":6,"role":"declaration","source":0,"src_end":1276,"src_start":1181},{"artifact":0,"gen_end":4462,"gen_start":4310,"node":7,"role":"declaration","source":0,"src_end":1451,"src_start":1278},{"artifact":0,"gen_end":4463,"gen_start":4462,"node":8,"role":"declaration","source":0,"src_end":1543,"src_start":1453},{"artifact":0,"gen_end":7559,"gen_start":4463,"node":9,"role":"declaration","source":0,"src_end":1781,"src_start":1545},{"artifact":0,"gen_end":9004,"gen_start":7559,"node":10,"role":"declaration","source":0,"src_end":2191,"src_start":1783},{"artifact":0,"gen_end":9087,"gen_start":9004,"node":11,"role":"declaration","source":0,"src_end":2283,"src_start":2193},{"artifact":0,"gen_end":9173,"gen_start":9087,"node":12,"role":"declaration","source":0,"src_end":2411,"src_start":2285},{"artifact":0,"gen_end":12218,"gen_start":9173,"node":13,"role":"declaration","source":0,"src_end":2612,"src_start":2413},{"artifact":0,"gen_end":12405,"gen_start":12218,"node":14,"role":"declaration","source":0,"src_end":2795,"src_start":2614},{"artifact":0,"gen_end":21447,"gen_start":12405,"node":15,"role":"declaration","source":0,"src_end":3144,"src_start":2797},{"artifact":0,"gen_end":45902,"gen_start":21447,"node":16,"role":"declaration","source":0,"src_end":3584,"src_start":3146},{"artifact":0,"gen_end":45937,"gen_start":45902,"node":0,"role":"declaration","source":0,"src_end":3620,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":17,"role":"declaration","source":0,"src_end":3620,"src_start":0},{"artifact":1,"gen_end":430,"gen_start":134,"node":18,"role":"declaration","source":0,"src_end":254,"src_start":124},{"artifact":1,"gen_end":805,"gen_start":430,"node":19,"role":"declaration","source":0,"src_end":412,"src_start":256},{"artifact":1,"gen_end":1090,"gen_start":805,"node":20,"role":"declaration","source":0,"src_end":637,"src_start":414},{"artifact":1,"gen_end":1752,"gen_start":1090,"node":21,"role":"declaration","source":0,"src_end":877,"src_start":639},{"artifact":1,"gen_end":2542,"gen_start":1752,"node":22,"role":"declaration","source":0,"src_end":1179,"src_start":879},{"artifact":1,"gen_end":2959,"gen_start":2542,"node":23,"role":"declaration","source":0,"src_end":1276,"src_start":1181},{"artifact":1,"gen_end":3312,"gen_start":2959,"node":24,"role":"declaration","source":0,"src_end":1451,"src_start":1278},{"artifact":1,"gen_end":3527,"gen_start":3312,"node":25,"role":"declaration","source":0,"src_end":1543,"src_start":1453},{"artifact":1,"gen_end":3850,"gen_start":3527,"node":26,"role":"declaration","source":0,"src_end":1781,"src_start":1545},{"artifact":1,"gen_end":5867,"gen_start":3850,"node":27,"role":"declaration","source":0,"src_end":2191,"src_start":1783},{"artifact":1,"gen_end":6121,"gen_start":5867,"node":28,"role":"declaration","source":0,"src_end":2283,"src_start":2193},{"artifact":1,"gen_end":6454,"gen_start":6121,"node":29,"role":"declaration","source":0,"src_end":2411,"src_start":2285},{"artifact":1,"gen_end":6717,"gen_start":6454,"node":30,"role":"declaration","source":0,"src_end":2612,"src_start":2413},{"artifact":1,"gen_end":7348,"gen_start":6717,"node":31,"role":"declaration","source":0,"src_end":2795,"src_start":2614},{"artifact":1,"gen_end":13192,"gen_start":7348,"node":32,"role":"declaration","source":0,"src_end":3144,"src_start":2797},{"artifact":1,"gen_end":27179,"gen_start":13192,"node":33,"role":"declaration","source":0,"src_end":3584,"src_start":3146},{"artifact":1,"gen_end":27194,"gen_start":27179,"node":17,"role":"declaration","source":0,"src_end":3620,"src_start":0}],"module":"ScreeningOracle","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-latex-module"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"}],"semantic_id":"c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517","source_id":"ce718723d5d252a9adafdc3cb3b76931b1d91e053dd3e7e31bcb9b9496a1941c","sources":[{"id":0,"kind":"file","path":"src/ScreeningOracle.lex.tex","sha256":"23fe7cb8804846c5418204184105f7381f5f36ddd2cdd1beec466416b5d12cb9"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/LexLeanTarget/ScreeningOracle.lean"},{"id":1,"kind":"tex","path":"modules/LexLeanTarget/ScreeningOracle.tex"}],"mappings":[{"artifact":0,"gen_end":400,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":3620,"src_start":0},{"artifact":0,"gen_end":526,"gen_start":400,"node":1,"role":"declaration","source":0,"src_end":254,"src_start":124},{"artifact":0,"gen_end":655,"gen_start":526,"node":2,"role":"declaration","source":0,"src_end":412,"src_start":256},{"artifact":0,"gen_end":3724,"gen_start":655,"node":3,"role":"declaration","source":0,"src_end":637,"src_start":414},{"artifact":0,"gen_end":3926,"gen_start":3724,"node":4,"role":"declaration","source":0,"src_end":877,"src_start":639},{"artifact":0,"gen_end":4191,"gen_start":3926,"node":5,"role":"declaration","source":0,"src_end":1179,"src_start":879},{"artifact":0,"gen_end":4310,"gen_start":4191,"node":6,"role":"declaration","source":0,"src_end":1276,"src_start":1181},{"artifact":0,"gen_end":4462,"gen_start":4310,"node":7,"role":"declaration","source":0,"src_end":1451,"src_start":1278},{"artifact":0,"gen_end":4463,"gen_start":4462,"node":8,"role":"declaration","source":0,"src_end":1543,"src_start":1453},{"artifact":0,"gen_end":7559,"gen_start":4463,"node":9,"role":"declaration","source":0,"src_end":1781,"src_start":1545},{"artifact":0,"gen_end":9004,"gen_start":7559,"node":10,"role":"declaration","source":0,"src_end":2191,"src_start":1783},{"artifact":0,"gen_end":9087,"gen_start":9004,"node":11,"role":"declaration","source":0,"src_end":2283,"src_start":2193},{"artifact":0,"gen_end":9173,"gen_start":9087,"node":12,"role":"declaration","source":0,"src_end":2411,"src_start":2285},{"artifact":0,"gen_end":12218,"gen_start":9173,"node":13,"role":"declaration","source":0,"src_end":2612,"src_start":2413},{"artifact":0,"gen_end":12405,"gen_start":12218,"node":14,"role":"declaration","source":0,"src_end":2795,"src_start":2614},{"artifact":0,"gen_end":21447,"gen_start":12405,"node":15,"role":"declaration","source":0,"src_end":3144,"src_start":2797},{"artifact":0,"gen_end":45902,"gen_start":21447,"node":16,"role":"declaration","source":0,"src_end":3584,"src_start":3146},{"artifact":0,"gen_end":45937,"gen_start":45902,"node":0,"role":"declaration","source":0,"src_end":3620,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":17,"role":"declaration","source":0,"src_end":3620,"src_start":0},{"artifact":1,"gen_end":430,"gen_start":134,"node":18,"role":"declaration","source":0,"src_end":254,"src_start":124},{"artifact":1,"gen_end":805,"gen_start":430,"node":19,"role":"declaration","source":0,"src_end":412,"src_start":256},{"artifact":1,"gen_end":1090,"gen_start":805,"node":20,"role":"declaration","source":0,"src_end":637,"src_start":414},{"artifact":1,"gen_end":1752,"gen_start":1090,"node":21,"role":"declaration","source":0,"src_end":877,"src_start":639},{"artifact":1,"gen_end":2542,"gen_start":1752,"node":22,"role":"declaration","source":0,"src_end":1179,"src_start":879},{"artifact":1,"gen_end":2959,"gen_start":2542,"node":23,"role":"declaration","source":0,"src_end":1276,"src_start":1181},{"artifact":1,"gen_end":3312,"gen_start":2959,"node":24,"role":"declaration","source":0,"src_end":1451,"src_start":1278},{"artifact":1,"gen_end":3527,"gen_start":3312,"node":25,"role":"declaration","source":0,"src_end":1543,"src_start":1453},{"artifact":1,"gen_end":3850,"gen_start":3527,"node":26,"role":"declaration","source":0,"src_end":1781,"src_start":1545},{"artifact":1,"gen_end":5867,"gen_start":3850,"node":27,"role":"declaration","source":0,"src_end":2191,"src_start":1783},{"artifact":1,"gen_end":6121,"gen_start":5867,"node":28,"role":"declaration","source":0,"src_end":2283,"src_start":2193},{"artifact":1,"gen_end":6454,"gen_start":6121,"node":29,"role":"declaration","source":0,"src_end":2411,"src_start":2285},{"artifact":1,"gen_end":6717,"gen_start":6454,"node":30,"role":"declaration","source":0,"src_end":2612,"src_start":2413},{"artifact":1,"gen_end":7348,"gen_start":6717,"node":31,"role":"declaration","source":0,"src_end":2795,"src_start":2614},{"artifact":1,"gen_end":13192,"gen_start":7348,"node":32,"role":"declaration","source":0,"src_end":3144,"src_start":2797},{"artifact":1,"gen_end":27179,"gen_start":13192,"node":33,"role":"declaration","source":0,"src_end":3584,"src_start":3146},{"artifact":1,"gen_end":27194,"gen_start":27179,"node":17,"role":"declaration","source":0,"src_end":3620,"src_start":0}],"module":"ScreeningOracle","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-latex-module"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"}],"semantic_id":"e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb","source_id":"965efd311d3549a7c17dd823b4418cfee906beecd273f4bfcafb371c36d9ce99","sources":[{"id":0,"kind":"file","path":"src/ScreeningOracle.lex.tex","sha256":"23fe7cb8804846c5418204184105f7381f5f36ddd2cdd1beec466416b5d12cb9"}],"spec":"lexlean/source-map/1"} diff --git a/compiler/expected/build/maps/LexLeanTarget/TargetFixtures.map.json b/compiler/expected/build/maps/LexLeanTarget/TargetFixtures.map.json index a3e22235a..6c8972e9b 100644 --- a/compiler/expected/build/maps/LexLeanTarget/TargetFixtures.map.json +++ b/compiler/expected/build/maps/LexLeanTarget/TargetFixtures.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/LexLeanTarget/TargetFixtures.lean"},{"id":1,"kind":"tex","path":"modules/LexLeanTarget/TargetFixtures.tex"}],"mappings":[{"artifact":0,"gen_end":416,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":654074,"src_start":0},{"artifact":0,"gen_end":4776,"gen_start":416,"node":1,"role":"declaration","source":0,"src_end":3550,"src_start":210},{"artifact":0,"gen_end":4974,"gen_start":4776,"node":2,"role":"declaration","source":0,"src_end":3782,"src_start":3552},{"artifact":0,"gen_end":5139,"gen_start":4974,"node":3,"role":"declaration","source":0,"src_end":4028,"src_start":3784},{"artifact":0,"gen_end":10978,"gen_start":5139,"node":4,"role":"declaration","source":0,"src_end":8546,"src_start":4030},{"artifact":0,"gen_end":11228,"gen_start":10978,"node":5,"role":"declaration","source":0,"src_end":8824,"src_start":8548},{"artifact":0,"gen_end":11754,"gen_start":11228,"node":6,"role":"declaration","source":0,"src_end":9359,"src_start":8826},{"artifact":0,"gen_end":22707,"gen_start":11754,"node":7,"role":"declaration","source":0,"src_end":17744,"src_start":9361},{"artifact":0,"gen_end":23052,"gen_start":22707,"node":8,"role":"declaration","source":0,"src_end":18105,"src_start":17746},{"artifact":0,"gen_end":23903,"gen_start":23052,"node":9,"role":"declaration","source":0,"src_end":18893,"src_start":18107},{"artifact":0,"gen_end":27311,"gen_start":23903,"node":10,"role":"declaration","source":0,"src_end":21516,"src_start":18895},{"artifact":0,"gen_end":27600,"gen_start":27311,"node":11,"role":"declaration","source":0,"src_end":21827,"src_start":21518},{"artifact":0,"gen_end":28054,"gen_start":27600,"node":12,"role":"declaration","source":0,"src_end":22311,"src_start":21829},{"artifact":0,"gen_end":29437,"gen_start":28054,"node":13,"role":"declaration","source":0,"src_end":23401,"src_start":22313},{"artifact":0,"gen_end":29994,"gen_start":29437,"node":14,"role":"declaration","source":0,"src_end":23910,"src_start":23403},{"artifact":0,"gen_end":30151,"gen_start":29994,"node":15,"role":"declaration","source":0,"src_end":24148,"src_start":23912},{"artifact":0,"gen_end":33368,"gen_start":30151,"node":16,"role":"declaration","source":0,"src_end":26592,"src_start":24150},{"artifact":0,"gen_end":33562,"gen_start":33368,"node":17,"role":"declaration","source":0,"src_end":26820,"src_start":26594},{"artifact":0,"gen_end":39640,"gen_start":33562,"node":18,"role":"declaration","source":0,"src_end":31444,"src_start":26822},{"artifact":0,"gen_end":39830,"gen_start":39640,"node":19,"role":"declaration","source":0,"src_end":31668,"src_start":31446},{"artifact":0,"gen_end":42895,"gen_start":39830,"node":20,"role":"declaration","source":0,"src_end":34045,"src_start":31670},{"artifact":0,"gen_end":43087,"gen_start":42895,"node":21,"role":"declaration","source":0,"src_end":34271,"src_start":34047},{"artifact":0,"gen_end":43546,"gen_start":43087,"node":22,"role":"declaration","source":0,"src_end":34728,"src_start":34273},{"artifact":0,"gen_end":50575,"gen_start":43546,"node":23,"role":"declaration","source":0,"src_end":40112,"src_start":34730},{"artifact":0,"gen_end":50771,"gen_start":50575,"node":24,"role":"declaration","source":0,"src_end":40342,"src_start":40114},{"artifact":0,"gen_end":51714,"gen_start":50771,"node":25,"role":"declaration","source":0,"src_end":41184,"src_start":40344},{"artifact":0,"gen_end":54033,"gen_start":51714,"node":26,"role":"declaration","source":0,"src_end":43042,"src_start":41186},{"artifact":0,"gen_end":54374,"gen_start":54033,"node":27,"role":"declaration","source":0,"src_end":43399,"src_start":43044},{"artifact":0,"gen_end":54544,"gen_start":54374,"node":28,"role":"declaration","source":0,"src_end":43650,"src_start":43401},{"artifact":0,"gen_end":58191,"gen_start":54544,"node":29,"role":"declaration","source":0,"src_end":46530,"src_start":43652},{"artifact":0,"gen_end":58492,"gen_start":58191,"node":30,"role":"declaration","source":0,"src_end":46853,"src_start":46532},{"artifact":0,"gen_end":58744,"gen_start":58492,"node":31,"role":"declaration","source":0,"src_end":47168,"src_start":46855},{"artifact":0,"gen_end":60381,"gen_start":58744,"node":32,"role":"declaration","source":0,"src_end":48492,"src_start":47170},{"artifact":0,"gen_end":60672,"gen_start":60381,"node":33,"role":"declaration","source":0,"src_end":48805,"src_start":48494},{"artifact":0,"gen_end":60838,"gen_start":60672,"node":34,"role":"declaration","source":0,"src_end":49052,"src_start":48807},{"artifact":0,"gen_end":63484,"gen_start":60838,"node":35,"role":"declaration","source":0,"src_end":51097,"src_start":49054},{"artifact":0,"gen_end":63734,"gen_start":63484,"node":36,"role":"declaration","source":0,"src_end":51375,"src_start":51099},{"artifact":0,"gen_end":63904,"gen_start":63734,"node":37,"role":"declaration","source":0,"src_end":51626,"src_start":51377},{"artifact":0,"gen_end":66452,"gen_start":63904,"node":38,"role":"declaration","source":0,"src_end":53608,"src_start":51628},{"artifact":0,"gen_end":66706,"gen_start":66452,"node":39,"role":"declaration","source":0,"src_end":53890,"src_start":53610},{"artifact":0,"gen_end":66879,"gen_start":66706,"node":40,"role":"declaration","source":0,"src_end":54144,"src_start":53892},{"artifact":0,"gen_end":68110,"gen_start":66879,"node":41,"role":"declaration","source":0,"src_end":55131,"src_start":54146},{"artifact":0,"gen_end":68352,"gen_start":68110,"node":42,"role":"declaration","source":0,"src_end":55401,"src_start":55133},{"artifact":0,"gen_end":68612,"gen_start":68352,"node":43,"role":"declaration","source":0,"src_end":55713,"src_start":55403},{"artifact":0,"gen_end":71633,"gen_start":68612,"node":44,"role":"declaration","source":0,"src_end":58081,"src_start":55715},{"artifact":0,"gen_end":72098,"gen_start":71633,"node":45,"role":"declaration","source":0,"src_end":58529,"src_start":58083},{"artifact":0,"gen_end":72439,"gen_start":72098,"node":46,"role":"declaration","source":0,"src_end":58912,"src_start":58531},{"artifact":0,"gen_end":76869,"gen_start":72439,"node":47,"role":"declaration","source":0,"src_end":62449,"src_start":58914},{"artifact":0,"gen_end":77055,"gen_start":76869,"node":48,"role":"declaration","source":0,"src_end":62669,"src_start":62451},{"artifact":0,"gen_end":77851,"gen_start":77055,"node":49,"role":"declaration","source":0,"src_end":63451,"src_start":62671},{"artifact":0,"gen_end":88821,"gen_start":77851,"node":50,"role":"declaration","source":0,"src_end":71974,"src_start":63453},{"artifact":0,"gen_end":89007,"gen_start":88821,"node":51,"role":"declaration","source":0,"src_end":72194,"src_start":71976},{"artifact":0,"gen_end":89796,"gen_start":89007,"node":52,"role":"declaration","source":0,"src_end":72834,"src_start":72196},{"artifact":0,"gen_end":89998,"gen_start":89796,"node":53,"role":"declaration","source":0,"src_end":73070,"src_start":72836},{"artifact":0,"gen_end":90813,"gen_start":89998,"node":54,"role":"declaration","source":0,"src_end":73736,"src_start":73072},{"artifact":0,"gen_end":91023,"gen_start":90813,"node":55,"role":"declaration","source":0,"src_end":73980,"src_start":73738},{"artifact":0,"gen_end":96468,"gen_start":91023,"node":56,"role":"declaration","source":0,"src_end":78216,"src_start":73982},{"artifact":0,"gen_end":96656,"gen_start":96468,"node":57,"role":"declaration","source":0,"src_end":78438,"src_start":78218},{"artifact":0,"gen_end":97209,"gen_start":96656,"node":58,"role":"declaration","source":0,"src_end":79009,"src_start":78440},{"artifact":0,"gen_end":98982,"gen_start":97209,"node":59,"role":"declaration","source":0,"src_end":80400,"src_start":79011},{"artifact":0,"gen_end":99244,"gen_start":98982,"node":60,"role":"declaration","source":0,"src_end":80690,"src_start":80402},{"artifact":0,"gen_end":99430,"gen_start":99244,"node":61,"role":"declaration","source":0,"src_end":80957,"src_start":80692},{"artifact":0,"gen_end":106934,"gen_start":99430,"node":62,"role":"declaration","source":0,"src_end":86862,"src_start":80959},{"artifact":0,"gen_end":107136,"gen_start":106934,"node":63,"role":"declaration","source":0,"src_end":87098,"src_start":86864},{"artifact":0,"gen_end":108073,"gen_start":107136,"node":64,"role":"declaration","source":0,"src_end":87978,"src_start":87100},{"artifact":0,"gen_end":115547,"gen_start":108073,"node":65,"role":"declaration","source":0,"src_end":93861,"src_start":87980},{"artifact":0,"gen_end":115753,"gen_start":115547,"node":66,"role":"declaration","source":0,"src_end":94101,"src_start":93863},{"artifact":0,"gen_end":116603,"gen_start":115753,"node":67,"role":"declaration","source":0,"src_end":94912,"src_start":94103},{"artifact":0,"gen_end":129817,"gen_start":116603,"node":68,"role":"declaration","source":0,"src_end":105303,"src_start":94914},{"artifact":0,"gen_end":130025,"gen_start":129817,"node":69,"role":"declaration","source":0,"src_end":105545,"src_start":105305},{"artifact":0,"gen_end":131476,"gen_start":130025,"node":70,"role":"declaration","source":0,"src_end":106810,"src_start":105547},{"artifact":0,"gen_end":139629,"gen_start":131476,"node":71,"role":"declaration","source":0,"src_end":113236,"src_start":106812},{"artifact":0,"gen_end":139837,"gen_start":139629,"node":72,"role":"declaration","source":0,"src_end":113478,"src_start":113238},{"artifact":0,"gen_end":140698,"gen_start":139837,"node":73,"role":"declaration","source":0,"src_end":114319,"src_start":113480},{"artifact":0,"gen_end":151786,"gen_start":140698,"node":74,"role":"declaration","source":0,"src_end":123112,"src_start":114321},{"artifact":0,"gen_end":151990,"gen_start":151786,"node":75,"role":"declaration","source":0,"src_end":123350,"src_start":123114},{"artifact":0,"gen_end":153140,"gen_start":151990,"node":76,"role":"declaration","source":0,"src_end":124433,"src_start":123352},{"artifact":0,"gen_end":154634,"gen_start":153140,"node":77,"role":"declaration","source":0,"src_end":125634,"src_start":124435},{"artifact":0,"gen_end":154952,"gen_start":154634,"node":78,"role":"declaration","source":0,"src_end":125974,"src_start":125636},{"artifact":0,"gen_end":156446,"gen_start":154952,"node":79,"role":"declaration","source":0,"src_end":127175,"src_start":125976},{"artifact":0,"gen_end":156774,"gen_start":156446,"node":80,"role":"declaration","source":0,"src_end":127525,"src_start":127177},{"artifact":0,"gen_end":158268,"gen_start":156774,"node":81,"role":"declaration","source":0,"src_end":128726,"src_start":127527},{"artifact":0,"gen_end":158614,"gen_start":158268,"node":82,"role":"declaration","source":0,"src_end":129094,"src_start":128728},{"artifact":0,"gen_end":160103,"gen_start":158614,"node":83,"role":"declaration","source":0,"src_end":130290,"src_start":129096},{"artifact":0,"gen_end":160413,"gen_start":160103,"node":84,"role":"declaration","source":0,"src_end":130622,"src_start":130292},{"artifact":0,"gen_end":161907,"gen_start":160413,"node":85,"role":"declaration","source":0,"src_end":131823,"src_start":130624},{"artifact":0,"gen_end":162221,"gen_start":161907,"node":86,"role":"declaration","source":0,"src_end":132159,"src_start":131825},{"artifact":0,"gen_end":163715,"gen_start":162221,"node":87,"role":"declaration","source":0,"src_end":133360,"src_start":132161},{"artifact":0,"gen_end":164034,"gen_start":163715,"node":88,"role":"declaration","source":0,"src_end":133701,"src_start":133362},{"artifact":0,"gen_end":165528,"gen_start":164034,"node":89,"role":"declaration","source":0,"src_end":134902,"src_start":133703},{"artifact":0,"gen_end":165857,"gen_start":165528,"node":90,"role":"declaration","source":0,"src_end":135253,"src_start":134904},{"artifact":0,"gen_end":167346,"gen_start":165857,"node":91,"role":"declaration","source":0,"src_end":136449,"src_start":135255},{"artifact":0,"gen_end":167654,"gen_start":167346,"node":92,"role":"declaration","source":0,"src_end":136779,"src_start":136451},{"artifact":0,"gen_end":190136,"gen_start":167654,"node":93,"role":"declaration","source":0,"src_end":154522,"src_start":136781},{"artifact":0,"gen_end":190512,"gen_start":190136,"node":94,"role":"declaration","source":0,"src_end":154914,"src_start":154524},{"artifact":0,"gen_end":192232,"gen_start":190512,"node":95,"role":"declaration","source":0,"src_end":156415,"src_start":154916},{"artifact":0,"gen_end":214714,"gen_start":192232,"node":96,"role":"declaration","source":0,"src_end":174158,"src_start":156417},{"artifact":0,"gen_end":215100,"gen_start":214714,"node":97,"role":"declaration","source":0,"src_end":174560,"src_start":174160},{"artifact":0,"gen_end":216835,"gen_start":215100,"node":98,"role":"declaration","source":0,"src_end":176076,"src_start":174562},{"artifact":0,"gen_end":239317,"gen_start":216835,"node":99,"role":"declaration","source":0,"src_end":193819,"src_start":176078},{"artifact":0,"gen_end":239721,"gen_start":239317,"node":100,"role":"declaration","source":0,"src_end":194239,"src_start":193821},{"artifact":0,"gen_end":241484,"gen_start":239721,"node":101,"role":"declaration","source":0,"src_end":195783,"src_start":194241},{"artifact":0,"gen_end":263857,"gen_start":241484,"node":102,"role":"declaration","source":0,"src_end":213417,"src_start":195785},{"artifact":0,"gen_end":264223,"gen_start":263857,"node":103,"role":"declaration","source":0,"src_end":213799,"src_start":213419},{"artifact":0,"gen_end":265862,"gen_start":264223,"node":104,"role":"declaration","source":0,"src_end":215229,"src_start":213801},{"artifact":0,"gen_end":285904,"gen_start":265862,"node":105,"role":"declaration","source":0,"src_end":231048,"src_start":215231},{"artifact":0,"gen_end":286277,"gen_start":285904,"node":106,"role":"declaration","source":0,"src_end":231437,"src_start":231050},{"artifact":0,"gen_end":287825,"gen_start":286277,"node":107,"role":"declaration","source":0,"src_end":232802,"src_start":231439},{"artifact":0,"gen_end":307867,"gen_start":287825,"node":108,"role":"declaration","source":0,"src_end":248621,"src_start":232804},{"artifact":0,"gen_end":308245,"gen_start":307867,"node":109,"role":"declaration","source":0,"src_end":249015,"src_start":248623},{"artifact":0,"gen_end":309818,"gen_start":308245,"node":110,"role":"declaration","source":0,"src_end":250405,"src_start":249017},{"artifact":0,"gen_end":329860,"gen_start":309818,"node":111,"role":"declaration","source":0,"src_end":266224,"src_start":250407},{"artifact":0,"gen_end":330248,"gen_start":329860,"node":112,"role":"declaration","source":0,"src_end":266628,"src_start":266226},{"artifact":0,"gen_end":331870,"gen_start":330248,"node":113,"role":"declaration","source":0,"src_end":268067,"src_start":266630},{"artifact":0,"gen_end":351817,"gen_start":331870,"node":114,"role":"declaration","source":0,"src_end":283791,"src_start":268069},{"artifact":0,"gen_end":352182,"gen_start":351817,"node":115,"role":"declaration","source":0,"src_end":284172,"src_start":283793},{"artifact":0,"gen_end":353647,"gen_start":352182,"node":116,"role":"declaration","source":0,"src_end":285464,"src_start":284174},{"artifact":0,"gen_end":371515,"gen_start":353647,"node":117,"role":"declaration","source":0,"src_end":299241,"src_start":285466},{"artifact":0,"gen_end":371715,"gen_start":371515,"node":118,"role":"declaration","source":0,"src_end":299475,"src_start":299243},{"artifact":0,"gen_end":372664,"gen_start":371715,"node":119,"role":"declaration","source":0,"src_end":300339,"src_start":299477},{"artifact":0,"gen_end":399642,"gen_start":372664,"node":120,"role":"declaration","source":0,"src_end":321194,"src_start":300341},{"artifact":0,"gen_end":400865,"gen_start":399642,"node":121,"role":"declaration","source":0,"src_end":322214,"src_start":321196},{"artifact":0,"gen_end":401263,"gen_start":400865,"node":122,"role":"declaration","source":0,"src_end":322648,"src_start":322216},{"artifact":0,"gen_end":401650,"gen_start":401263,"node":123,"role":"declaration","source":0,"src_end":323189,"src_start":322650},{"artifact":0,"gen_end":428634,"gen_start":401650,"node":124,"role":"declaration","source":0,"src_end":344050,"src_start":323191},{"artifact":0,"gen_end":429869,"gen_start":428634,"node":125,"role":"declaration","source":0,"src_end":345082,"src_start":344052},{"artifact":0,"gen_end":430140,"gen_start":429869,"node":126,"role":"declaration","source":0,"src_end":345407,"src_start":345084},{"artifact":0,"gen_end":430538,"gen_start":430140,"node":127,"role":"declaration","source":0,"src_end":345959,"src_start":345409},{"artifact":0,"gen_end":457521,"gen_start":430538,"node":128,"role":"declaration","source":0,"src_end":366819,"src_start":345961},{"artifact":0,"gen_end":458754,"gen_start":457521,"node":129,"role":"declaration","source":0,"src_end":367849,"src_start":366821},{"artifact":0,"gen_end":459070,"gen_start":458754,"node":130,"role":"declaration","source":0,"src_end":368213,"src_start":367851},{"artifact":0,"gen_end":459467,"gen_start":459070,"node":131,"role":"declaration","source":0,"src_end":368764,"src_start":368215},{"artifact":0,"gen_end":464316,"gen_start":459467,"node":132,"role":"declaration","source":0,"src_end":372530,"src_start":368766},{"artifact":0,"gen_end":465541,"gen_start":464316,"node":133,"role":"declaration","source":0,"src_end":373552,"src_start":372532},{"artifact":0,"gen_end":465847,"gen_start":465541,"node":134,"role":"declaration","source":0,"src_end":373906,"src_start":373554},{"artifact":0,"gen_end":466235,"gen_start":465847,"node":135,"role":"declaration","source":0,"src_end":374448,"src_start":373908},{"artifact":0,"gen_end":471090,"gen_start":466235,"node":136,"role":"declaration","source":0,"src_end":378220,"src_start":374450},{"artifact":0,"gen_end":472327,"gen_start":471090,"node":137,"role":"declaration","source":0,"src_end":379254,"src_start":378222},{"artifact":0,"gen_end":472554,"gen_start":472327,"node":138,"role":"declaration","source":0,"src_end":379541,"src_start":379256},{"artifact":0,"gen_end":472955,"gen_start":472554,"node":139,"role":"declaration","source":0,"src_end":380096,"src_start":379543},{"artifact":0,"gen_end":499241,"gen_start":472955,"node":140,"role":"declaration","source":0,"src_end":400342,"src_start":380098},{"artifact":0,"gen_end":500422,"gen_start":499241,"node":141,"role":"declaration","source":0,"src_end":401326,"src_start":400344},{"artifact":0,"gen_end":500864,"gen_start":500422,"node":142,"role":"declaration","source":0,"src_end":401796,"src_start":401328},{"artifact":0,"gen_end":501351,"gen_start":500864,"node":143,"role":"declaration","source":0,"src_end":402462,"src_start":401798},{"artifact":0,"gen_end":527642,"gen_start":501351,"node":144,"role":"declaration","source":0,"src_end":422713,"src_start":402464},{"artifact":0,"gen_end":528612,"gen_start":527642,"node":145,"role":"declaration","source":0,"src_end":423537,"src_start":422715},{"artifact":0,"gen_end":528791,"gen_start":528612,"node":146,"role":"declaration","source":0,"src_end":423799,"src_start":423539},{"artifact":0,"gen_end":529276,"gen_start":528791,"node":147,"role":"declaration","source":0,"src_end":424408,"src_start":423801},{"artifact":0,"gen_end":538676,"gen_start":529276,"node":148,"role":"declaration","source":0,"src_end":431829,"src_start":424410},{"artifact":0,"gen_end":538874,"gen_start":538676,"node":149,"role":"declaration","source":0,"src_end":432061,"src_start":431831},{"artifact":0,"gen_end":539816,"gen_start":538874,"node":150,"role":"declaration","source":0,"src_end":432985,"src_start":432063},{"artifact":0,"gen_end":540653,"gen_start":539816,"node":151,"role":"declaration","source":0,"src_end":433667,"src_start":432987},{"artifact":0,"gen_end":540853,"gen_start":540653,"node":152,"role":"declaration","source":0,"src_end":433901,"src_start":433669},{"artifact":0,"gen_end":540978,"gen_start":540853,"node":153,"role":"declaration","source":0,"src_end":434117,"src_start":433903},{"artifact":0,"gen_end":541686,"gen_start":540978,"node":154,"role":"declaration","source":0,"src_end":434692,"src_start":434119},{"artifact":0,"gen_end":541886,"gen_start":541686,"node":155,"role":"declaration","source":0,"src_end":434926,"src_start":434694},{"artifact":0,"gen_end":542011,"gen_start":541886,"node":156,"role":"declaration","source":0,"src_end":435142,"src_start":434928},{"artifact":0,"gen_end":542982,"gen_start":542011,"node":157,"role":"declaration","source":0,"src_end":435936,"src_start":435144},{"artifact":0,"gen_end":543184,"gen_start":542982,"node":158,"role":"declaration","source":0,"src_end":436172,"src_start":435938},{"artifact":0,"gen_end":543311,"gen_start":543184,"node":159,"role":"declaration","source":0,"src_end":436390,"src_start":436174},{"artifact":0,"gen_end":544149,"gen_start":543311,"node":160,"role":"declaration","source":0,"src_end":437073,"src_start":436392},{"artifact":0,"gen_end":544349,"gen_start":544149,"node":161,"role":"declaration","source":0,"src_end":437307,"src_start":437075},{"artifact":0,"gen_end":544474,"gen_start":544349,"node":162,"role":"declaration","source":0,"src_end":437523,"src_start":437309},{"artifact":0,"gen_end":547049,"gen_start":544474,"node":163,"role":"declaration","source":0,"src_end":439549,"src_start":437525},{"artifact":0,"gen_end":547282,"gen_start":547049,"node":164,"role":"declaration","source":0,"src_end":439810,"src_start":439551},{"artifact":0,"gen_end":547436,"gen_start":547282,"node":165,"role":"declaration","source":0,"src_end":440045,"src_start":439812},{"artifact":0,"gen_end":547666,"gen_start":547436,"node":166,"role":"declaration","source":0,"src_end":440336,"src_start":440047},{"artifact":0,"gen_end":552599,"gen_start":547666,"node":167,"role":"declaration","source":0,"src_end":444150,"src_start":440338},{"artifact":0,"gen_end":552843,"gen_start":552599,"node":168,"role":"declaration","source":0,"src_end":444422,"src_start":444152},{"artifact":0,"gen_end":553093,"gen_start":552843,"node":169,"role":"declaration","source":0,"src_end":444735,"src_start":444424},{"artifact":0,"gen_end":553673,"gen_start":553093,"node":170,"role":"declaration","source":0,"src_end":445365,"src_start":444737},{"artifact":0,"gen_end":558613,"gen_start":553673,"node":171,"role":"declaration","source":0,"src_end":449186,"src_start":445367},{"artifact":0,"gen_end":558870,"gen_start":558613,"node":172,"role":"declaration","source":0,"src_end":449471,"src_start":449188},{"artifact":0,"gen_end":559134,"gen_start":558870,"node":173,"role":"declaration","source":0,"src_end":449798,"src_start":449473},{"artifact":0,"gen_end":559725,"gen_start":559134,"node":174,"role":"declaration","source":0,"src_end":450439,"src_start":449800},{"artifact":0,"gen_end":560577,"gen_start":559725,"node":175,"role":"declaration","source":0,"src_end":451140,"src_start":450441},{"artifact":0,"gen_end":562831,"gen_start":560577,"node":176,"role":"declaration","source":0,"src_end":453134,"src_start":451142},{"artifact":0,"gen_end":564913,"gen_start":562831,"node":177,"role":"declaration","source":0,"src_end":455036,"src_start":453136},{"artifact":0,"gen_end":568109,"gen_start":564913,"node":178,"role":"declaration","source":0,"src_end":457573,"src_start":455038},{"artifact":0,"gen_end":568544,"gen_start":568109,"node":179,"role":"declaration","source":0,"src_end":457997,"src_start":457575},{"artifact":0,"gen_end":568700,"gen_start":568544,"node":180,"role":"declaration","source":0,"src_end":458234,"src_start":457999},{"artifact":0,"gen_end":569069,"gen_start":568700,"node":181,"role":"declaration","source":0,"src_end":458637,"src_start":458236},{"artifact":0,"gen_end":575516,"gen_start":569069,"node":182,"role":"declaration","source":0,"src_end":463681,"src_start":458639},{"artifact":0,"gen_end":575928,"gen_start":575516,"node":183,"role":"declaration","source":0,"src_end":464082,"src_start":463683},{"artifact":0,"gen_end":576933,"gen_start":575928,"node":184,"role":"declaration","source":0,"src_end":464988,"src_start":464084},{"artifact":0,"gen_end":583626,"gen_start":576933,"node":185,"role":"declaration","source":0,"src_end":470464,"src_start":464990},{"artifact":0,"gen_end":583814,"gen_start":583626,"node":186,"role":"declaration","source":0,"src_end":470686,"src_start":470466},{"artifact":0,"gen_end":585760,"gen_start":583814,"node":187,"role":"declaration","source":0,"src_end":472433,"src_start":470688},{"artifact":0,"gen_end":590280,"gen_start":585760,"node":188,"role":"declaration","source":0,"src_end":475937,"src_start":472435},{"artifact":0,"gen_end":590881,"gen_start":590280,"node":189,"role":"declaration","source":0,"src_end":476491,"src_start":475939},{"artifact":0,"gen_end":591045,"gen_start":590881,"node":190,"role":"declaration","source":0,"src_end":476736,"src_start":476493},{"artifact":0,"gen_end":591301,"gen_start":591045,"node":191,"role":"declaration","source":0,"src_end":477112,"src_start":476738},{"artifact":0,"gen_end":594687,"gen_start":591301,"node":192,"role":"declaration","source":0,"src_end":479803,"src_start":477114},{"artifact":0,"gen_end":595234,"gen_start":594687,"node":193,"role":"declaration","source":0,"src_end":480309,"src_start":479805},{"artifact":0,"gen_end":595388,"gen_start":595234,"node":194,"role":"declaration","source":0,"src_end":480544,"src_start":480311},{"artifact":0,"gen_end":595740,"gen_start":595388,"node":195,"role":"declaration","source":0,"src_end":481002,"src_start":480546},{"artifact":0,"gen_end":601351,"gen_start":595740,"node":196,"role":"declaration","source":0,"src_end":485403,"src_start":481004},{"artifact":0,"gen_end":601999,"gen_start":601351,"node":197,"role":"declaration","source":0,"src_end":485998,"src_start":485405},{"artifact":0,"gen_end":602603,"gen_start":601999,"node":198,"role":"declaration","source":0,"src_end":486590,"src_start":486000},{"artifact":0,"gen_end":602992,"gen_start":602603,"node":199,"role":"declaration","source":0,"src_end":487052,"src_start":486592},{"artifact":0,"gen_end":608607,"gen_start":602992,"node":200,"role":"declaration","source":0,"src_end":491457,"src_start":487054},{"artifact":0,"gen_end":609263,"gen_start":608607,"node":201,"role":"declaration","source":0,"src_end":492060,"src_start":491459},{"artifact":0,"gen_end":609875,"gen_start":609263,"node":202,"role":"declaration","source":0,"src_end":492660,"src_start":492062},{"artifact":0,"gen_end":610272,"gen_start":609875,"node":203,"role":"declaration","source":0,"src_end":493130,"src_start":492662},{"artifact":0,"gen_end":615890,"gen_start":610272,"node":204,"role":"declaration","source":0,"src_end":497538,"src_start":493132},{"artifact":0,"gen_end":616552,"gen_start":615890,"node":205,"role":"declaration","source":0,"src_end":498147,"src_start":497540},{"artifact":0,"gen_end":617036,"gen_start":616552,"node":206,"role":"declaration","source":0,"src_end":498643,"src_start":498149},{"artifact":0,"gen_end":617439,"gen_start":617036,"node":207,"role":"declaration","source":0,"src_end":499119,"src_start":498645},{"artifact":0,"gen_end":619622,"gen_start":617439,"node":208,"role":"declaration","source":0,"src_end":500822,"src_start":499121},{"artifact":0,"gen_end":620169,"gen_start":619622,"node":209,"role":"declaration","source":0,"src_end":501328,"src_start":500824},{"artifact":0,"gen_end":620459,"gen_start":620169,"node":210,"role":"declaration","source":0,"src_end":501666,"src_start":501330},{"artifact":0,"gen_end":620745,"gen_start":620459,"node":211,"role":"declaration","source":0,"src_end":502061,"src_start":501668},{"artifact":0,"gen_end":624064,"gen_start":620745,"node":212,"role":"declaration","source":0,"src_end":504649,"src_start":502063},{"artifact":0,"gen_end":624661,"gen_start":624064,"node":213,"role":"declaration","source":0,"src_end":505199,"src_start":504651},{"artifact":0,"gen_end":624862,"gen_start":624661,"node":214,"role":"declaration","source":0,"src_end":505473,"src_start":505201},{"artifact":0,"gen_end":625262,"gen_start":624862,"node":215,"role":"declaration","source":0,"src_end":505990,"src_start":505475},{"artifact":0,"gen_end":628587,"gen_start":625262,"node":216,"role":"declaration","source":0,"src_end":508584,"src_start":505992},{"artifact":0,"gen_end":629196,"gen_start":628587,"node":217,"role":"declaration","source":0,"src_end":509146,"src_start":508586},{"artifact":0,"gen_end":629361,"gen_start":629196,"node":218,"role":"declaration","source":0,"src_end":509394,"src_start":509148},{"artifact":0,"gen_end":629773,"gen_start":629361,"node":219,"role":"declaration","source":0,"src_end":509923,"src_start":509396},{"artifact":0,"gen_end":633357,"gen_start":629773,"node":220,"role":"declaration","source":0,"src_end":512727,"src_start":509925},{"artifact":0,"gen_end":633954,"gen_start":633357,"node":221,"role":"declaration","source":0,"src_end":513277,"src_start":512729},{"artifact":0,"gen_end":634290,"gen_start":633954,"node":222,"role":"declaration","source":0,"src_end":513649,"src_start":513279},{"artifact":0,"gen_end":634673,"gen_start":634290,"node":223,"role":"declaration","source":0,"src_end":514107,"src_start":513651},{"artifact":0,"gen_end":638263,"gen_start":634673,"node":224,"role":"declaration","source":0,"src_end":516917,"src_start":514109},{"artifact":0,"gen_end":638872,"gen_start":638263,"node":225,"role":"declaration","source":0,"src_end":517479,"src_start":516919},{"artifact":0,"gen_end":639354,"gen_start":638872,"node":226,"role":"declaration","source":0,"src_end":517973,"src_start":517481},{"artifact":0,"gen_end":639749,"gen_start":639354,"node":227,"role":"declaration","source":0,"src_end":518443,"src_start":517975},{"artifact":0,"gen_end":641950,"gen_start":639749,"node":228,"role":"declaration","source":0,"src_end":520164,"src_start":518445},{"artifact":0,"gen_end":642501,"gen_start":641950,"node":229,"role":"declaration","source":0,"src_end":520674,"src_start":520166},{"artifact":0,"gen_end":642805,"gen_start":642501,"node":230,"role":"declaration","source":0,"src_end":521026,"src_start":520676},{"artifact":0,"gen_end":643103,"gen_start":642805,"node":231,"role":"declaration","source":0,"src_end":521433,"src_start":521028},{"artifact":0,"gen_end":657113,"gen_start":643103,"node":232,"role":"declaration","source":0,"src_end":532181,"src_start":521435},{"artifact":0,"gen_end":657714,"gen_start":657113,"node":233,"role":"declaration","source":0,"src_end":532741,"src_start":532183},{"artifact":0,"gen_end":658750,"gen_start":657714,"node":234,"role":"declaration","source":0,"src_end":533667,"src_start":532743},{"artifact":0,"gen_end":668664,"gen_start":658750,"node":235,"role":"declaration","source":0,"src_end":541388,"src_start":533669},{"artifact":0,"gen_end":668862,"gen_start":668664,"node":236,"role":"declaration","source":0,"src_end":541620,"src_start":541390},{"artifact":0,"gen_end":669893,"gen_start":668862,"node":237,"role":"declaration","source":0,"src_end":542588,"src_start":541622},{"artifact":0,"gen_end":670715,"gen_start":669893,"node":238,"role":"declaration","source":0,"src_end":543255,"src_start":542590},{"artifact":0,"gen_end":670915,"gen_start":670715,"node":239,"role":"declaration","source":0,"src_end":543489,"src_start":543257},{"artifact":0,"gen_end":671040,"gen_start":670915,"node":240,"role":"declaration","source":0,"src_end":543705,"src_start":543491},{"artifact":0,"gen_end":671861,"gen_start":671040,"node":241,"role":"declaration","source":0,"src_end":544371,"src_start":543707},{"artifact":0,"gen_end":672061,"gen_start":671861,"node":242,"role":"declaration","source":0,"src_end":544605,"src_start":544373},{"artifact":0,"gen_end":672186,"gen_start":672061,"node":243,"role":"declaration","source":0,"src_end":544821,"src_start":544607},{"artifact":0,"gen_end":673264,"gen_start":672186,"node":244,"role":"declaration","source":0,"src_end":545687,"src_start":544823},{"artifact":0,"gen_end":673470,"gen_start":673264,"node":245,"role":"declaration","source":0,"src_end":545927,"src_start":545689},{"artifact":0,"gen_end":673601,"gen_start":673470,"node":246,"role":"declaration","source":0,"src_end":546149,"src_start":545929},{"artifact":0,"gen_end":674338,"gen_start":673601,"node":247,"role":"declaration","source":0,"src_end":546745,"src_start":546151},{"artifact":0,"gen_end":674540,"gen_start":674338,"node":248,"role":"declaration","source":0,"src_end":546981,"src_start":546747},{"artifact":0,"gen_end":674667,"gen_start":674540,"node":249,"role":"declaration","source":0,"src_end":547199,"src_start":546983},{"artifact":0,"gen_end":692365,"gen_start":674667,"node":250,"role":"declaration","source":0,"src_end":560813,"src_start":547201},{"artifact":0,"gen_end":692553,"gen_start":692365,"node":251,"role":"declaration","source":0,"src_end":561035,"src_start":560815},{"artifact":0,"gen_end":693604,"gen_start":692553,"node":252,"role":"declaration","source":0,"src_end":562011,"src_start":561037},{"artifact":0,"gen_end":695652,"gen_start":693604,"node":253,"role":"declaration","source":0,"src_end":563607,"src_start":562013},{"artifact":0,"gen_end":696164,"gen_start":695652,"node":254,"role":"declaration","source":0,"src_end":564088,"src_start":563609},{"artifact":0,"gen_end":696335,"gen_start":696164,"node":255,"role":"declaration","source":0,"src_end":564340,"src_start":564090},{"artifact":0,"gen_end":698274,"gen_start":696335,"node":256,"role":"declaration","source":0,"src_end":565874,"src_start":564342},{"artifact":0,"gen_end":698704,"gen_start":698274,"node":257,"role":"declaration","source":0,"src_end":566291,"src_start":565876},{"artifact":0,"gen_end":699033,"gen_start":698704,"node":258,"role":"declaration","source":0,"src_end":566665,"src_start":566293},{"artifact":0,"gen_end":701791,"gen_start":699033,"node":259,"role":"declaration","source":0,"src_end":568802,"src_start":566667},{"artifact":0,"gen_end":702262,"gen_start":701791,"node":260,"role":"declaration","source":0,"src_end":569256,"src_start":568804},{"artifact":0,"gen_end":702426,"gen_start":702262,"node":261,"role":"declaration","source":0,"src_end":569501,"src_start":569258},{"artifact":0,"gen_end":702655,"gen_start":702426,"node":262,"role":"declaration","source":0,"src_end":569828,"src_start":569503},{"artifact":0,"gen_end":705419,"gen_start":702655,"node":263,"role":"declaration","source":0,"src_end":571971,"src_start":569830},{"artifact":0,"gen_end":705902,"gen_start":705419,"node":264,"role":"declaration","source":0,"src_end":572437,"src_start":571973},{"artifact":0,"gen_end":706079,"gen_start":705902,"node":265,"role":"declaration","source":0,"src_end":572695,"src_start":572439},{"artifact":0,"gen_end":706320,"gen_start":706079,"node":266,"role":"declaration","source":0,"src_end":573034,"src_start":572697},{"artifact":0,"gen_end":710993,"gen_start":706320,"node":267,"role":"declaration","source":0,"src_end":576645,"src_start":573036},{"artifact":0,"gen_end":711652,"gen_start":710993,"node":268,"role":"declaration","source":0,"src_end":577248,"src_start":576647},{"artifact":0,"gen_end":711955,"gen_start":711652,"node":269,"role":"declaration","source":0,"src_end":577599,"src_start":577250},{"artifact":0,"gen_end":712308,"gen_start":711955,"node":270,"role":"declaration","source":0,"src_end":578043,"src_start":577601},{"artifact":0,"gen_end":715270,"gen_start":712308,"node":271,"role":"declaration","source":0,"src_end":580389,"src_start":578045},{"artifact":0,"gen_end":715687,"gen_start":715270,"node":272,"role":"declaration","source":0,"src_end":580795,"src_start":580391},{"artifact":0,"gen_end":715842,"gen_start":715687,"node":273,"role":"declaration","source":0,"src_end":581031,"src_start":580797},{"artifact":0,"gen_end":716156,"gen_start":715842,"node":274,"role":"declaration","source":0,"src_end":581427,"src_start":581033},{"artifact":0,"gen_end":719606,"gen_start":716156,"node":275,"role":"declaration","source":0,"src_end":584119,"src_start":581429},{"artifact":0,"gen_end":719998,"gen_start":719606,"node":276,"role":"declaration","source":0,"src_end":584506,"src_start":584121},{"artifact":0,"gen_end":720309,"gen_start":719998,"node":277,"role":"declaration","source":0,"src_end":584865,"src_start":584508},{"artifact":0,"gen_end":720639,"gen_start":720309,"node":278,"role":"declaration","source":0,"src_end":585264,"src_start":584867},{"artifact":0,"gen_end":724076,"gen_start":720639,"node":279,"role":"declaration","source":0,"src_end":587943,"src_start":585266},{"artifact":0,"gen_end":724529,"gen_start":724076,"node":280,"role":"declaration","source":0,"src_end":588385,"src_start":587945},{"artifact":0,"gen_end":724901,"gen_start":724529,"node":281,"role":"declaration","source":0,"src_end":588799,"src_start":588387},{"artifact":0,"gen_end":725247,"gen_start":724901,"node":282,"role":"declaration","source":0,"src_end":589214,"src_start":588801},{"artifact":0,"gen_end":729189,"gen_start":725247,"node":283,"role":"declaration","source":0,"src_end":592302,"src_start":589216},{"artifact":0,"gen_end":729646,"gen_start":729189,"node":284,"role":"declaration","source":0,"src_end":592748,"src_start":592304},{"artifact":0,"gen_end":730022,"gen_start":729646,"node":285,"role":"declaration","source":0,"src_end":593166,"src_start":592750},{"artifact":0,"gen_end":730377,"gen_start":730022,"node":286,"role":"declaration","source":0,"src_end":593590,"src_start":593168},{"artifact":0,"gen_end":733814,"gen_start":730377,"node":287,"role":"declaration","source":0,"src_end":596269,"src_start":593592},{"artifact":0,"gen_end":734287,"gen_start":733814,"node":288,"role":"declaration","source":0,"src_end":596725,"src_start":596271},{"artifact":0,"gen_end":734679,"gen_start":734287,"node":289,"role":"declaration","source":0,"src_end":597153,"src_start":596727},{"artifact":0,"gen_end":735002,"gen_start":734679,"node":290,"role":"declaration","source":0,"src_end":597545,"src_start":597155},{"artifact":0,"gen_end":739355,"gen_start":735002,"node":291,"role":"declaration","source":0,"src_end":600948,"src_start":597547},{"artifact":0,"gen_end":740054,"gen_start":739355,"node":292,"role":"declaration","source":0,"src_end":601582,"src_start":600950},{"artifact":0,"gen_end":740672,"gen_start":740054,"node":293,"role":"declaration","source":0,"src_end":602188,"src_start":601584},{"artifact":0,"gen_end":741081,"gen_start":740672,"node":294,"role":"declaration","source":0,"src_end":602645,"src_start":602190},{"artifact":0,"gen_end":744557,"gen_start":741081,"node":295,"role":"declaration","source":0,"src_end":605363,"src_start":602647},{"artifact":0,"gen_end":745006,"gen_start":744557,"node":296,"role":"declaration","source":0,"src_end":605801,"src_start":605365},{"artifact":0,"gen_end":745374,"gen_start":745006,"node":297,"role":"declaration","source":0,"src_end":606211,"src_start":605803},{"artifact":0,"gen_end":745719,"gen_start":745374,"node":298,"role":"declaration","source":0,"src_end":606625,"src_start":606213},{"artifact":0,"gen_end":750394,"gen_start":745719,"node":299,"role":"declaration","source":0,"src_end":610238,"src_start":606627},{"artifact":0,"gen_end":751057,"gen_start":750394,"node":300,"role":"declaration","source":0,"src_end":610845,"src_start":610240},{"artifact":0,"gen_end":751318,"gen_start":751057,"node":301,"role":"declaration","source":0,"src_end":611160,"src_start":610847},{"artifact":0,"gen_end":751677,"gen_start":751318,"node":302,"role":"declaration","source":0,"src_end":611610,"src_start":611162},{"artifact":0,"gen_end":754613,"gen_start":751677,"node":303,"role":"declaration","source":0,"src_end":613902,"src_start":611612},{"artifact":0,"gen_end":755080,"gen_start":754613,"node":304,"role":"declaration","source":0,"src_end":614352,"src_start":613904},{"artifact":0,"gen_end":755374,"gen_start":755080,"node":305,"role":"declaration","source":0,"src_end":614694,"src_start":614354},{"artifact":0,"gen_end":755691,"gen_start":755374,"node":306,"role":"declaration","source":0,"src_end":615080,"src_start":614696},{"artifact":0,"gen_end":758633,"gen_start":755691,"node":307,"role":"declaration","source":0,"src_end":617378,"src_start":615082},{"artifact":0,"gen_end":759112,"gen_start":758633,"node":308,"role":"declaration","source":0,"src_end":617840,"src_start":617380},{"artifact":0,"gen_end":759464,"gen_start":759112,"node":309,"role":"declaration","source":0,"src_end":618234,"src_start":617842},{"artifact":0,"gen_end":759793,"gen_start":759464,"node":310,"role":"declaration","source":0,"src_end":618632,"src_start":618236},{"artifact":0,"gen_end":764434,"gen_start":759793,"node":311,"role":"declaration","source":0,"src_end":622247,"src_start":618634},{"artifact":0,"gen_end":765083,"gen_start":764434,"node":312,"role":"declaration","source":0,"src_end":622840,"src_start":622249},{"artifact":0,"gen_end":765514,"gen_start":765083,"node":313,"role":"declaration","source":0,"src_end":623301,"src_start":622842},{"artifact":0,"gen_end":765852,"gen_start":765514,"node":314,"role":"declaration","source":0,"src_end":623730,"src_start":623303},{"artifact":0,"gen_end":774593,"gen_start":765852,"node":315,"role":"declaration","source":0,"src_end":630646,"src_start":623732},{"artifact":0,"gen_end":774789,"gen_start":774593,"node":316,"role":"declaration","source":0,"src_end":630876,"src_start":630648},{"artifact":0,"gen_end":776268,"gen_start":774789,"node":317,"role":"declaration","source":0,"src_end":632082,"src_start":630878},{"artifact":0,"gen_end":776512,"gen_start":776268,"node":318,"role":"declaration","source":0,"src_end":632354,"src_start":632084},{"artifact":0,"gen_end":776825,"gen_start":776512,"node":319,"role":"declaration","source":0,"src_end":632730,"src_start":632356},{"artifact":0,"gen_end":778267,"gen_start":776825,"node":320,"role":"declaration","source":0,"src_end":633854,"src_start":632732},{"artifact":0,"gen_end":778497,"gen_start":778267,"node":321,"role":"declaration","source":0,"src_end":634112,"src_start":633856},{"artifact":0,"gen_end":778647,"gen_start":778497,"node":322,"role":"declaration","source":0,"src_end":634343,"src_start":634114},{"artifact":0,"gen_end":780098,"gen_start":778647,"node":323,"role":"declaration","source":0,"src_end":635476,"src_start":634345},{"artifact":0,"gen_end":780344,"gen_start":780098,"node":324,"role":"declaration","source":0,"src_end":635750,"src_start":635478},{"artifact":0,"gen_end":780466,"gen_start":780344,"node":325,"role":"declaration","source":0,"src_end":635965,"src_start":635752},{"artifact":0,"gen_end":786019,"gen_start":780466,"node":326,"role":"declaration","source":0,"src_end":640246,"src_start":635967},{"artifact":0,"gen_end":786261,"gen_start":786019,"node":327,"role":"declaration","source":0,"src_end":640516,"src_start":640248},{"artifact":0,"gen_end":786700,"gen_start":786261,"node":328,"role":"declaration","source":0,"src_end":640982,"src_start":640518},{"artifact":0,"gen_end":793439,"gen_start":786700,"node":329,"role":"declaration","source":0,"src_end":646140,"src_start":640984},{"artifact":0,"gen_end":793720,"gen_start":793439,"node":330,"role":"declaration","source":0,"src_end":646445,"src_start":646142},{"artifact":0,"gen_end":793995,"gen_start":793720,"node":331,"role":"declaration","source":0,"src_end":646779,"src_start":646447},{"artifact":0,"gen_end":802125,"gen_start":793995,"node":332,"role":"declaration","source":0,"src_end":653341,"src_start":646781},{"artifact":0,"gen_end":802363,"gen_start":802125,"node":333,"role":"declaration","source":0,"src_end":653607,"src_start":653343},{"artifact":0,"gen_end":802763,"gen_start":802363,"node":334,"role":"declaration","source":0,"src_end":654038,"src_start":653609},{"artifact":0,"gen_end":802797,"gen_start":802763,"node":0,"role":"declaration","source":0,"src_end":654074,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":335,"role":"declaration","source":0,"src_end":654074,"src_start":0},{"artifact":1,"gen_end":4662,"gen_start":134,"node":336,"role":"declaration","source":0,"src_end":3550,"src_start":210},{"artifact":1,"gen_end":5047,"gen_start":4662,"node":337,"role":"declaration","source":0,"src_end":3782,"src_start":3552},{"artifact":1,"gen_end":5362,"gen_start":5047,"node":338,"role":"declaration","source":0,"src_end":4028,"src_start":3784},{"artifact":1,"gen_end":11423,"gen_start":5362,"node":339,"role":"declaration","source":0,"src_end":8546,"src_start":4030},{"artifact":1,"gen_end":11860,"gen_start":11423,"node":340,"role":"declaration","source":0,"src_end":8824,"src_start":8548},{"artifact":1,"gen_end":12536,"gen_start":11860,"node":341,"role":"declaration","source":0,"src_end":9359,"src_start":8826},{"artifact":1,"gen_end":23711,"gen_start":12536,"node":342,"role":"declaration","source":0,"src_end":17744,"src_start":9361},{"artifact":1,"gen_end":24243,"gen_start":23711,"node":343,"role":"declaration","source":0,"src_end":18105,"src_start":17746},{"artifact":1,"gen_end":25244,"gen_start":24243,"node":344,"role":"declaration","source":0,"src_end":18893,"src_start":18107},{"artifact":1,"gen_end":28814,"gen_start":25244,"node":345,"role":"declaration","source":0,"src_end":21516,"src_start":18895},{"artifact":1,"gen_end":29290,"gen_start":28814,"node":346,"role":"declaration","source":0,"src_end":21827,"src_start":21518},{"artifact":1,"gen_end":29894,"gen_start":29290,"node":347,"role":"declaration","source":0,"src_end":22311,"src_start":21829},{"artifact":1,"gen_end":31441,"gen_start":29894,"node":348,"role":"declaration","source":0,"src_end":23401,"src_start":22313},{"artifact":1,"gen_end":32185,"gen_start":31441,"node":349,"role":"declaration","source":0,"src_end":23910,"src_start":23403},{"artifact":1,"gen_end":32492,"gen_start":32185,"node":350,"role":"declaration","source":0,"src_end":24148,"src_start":23912},{"artifact":1,"gen_end":35867,"gen_start":32492,"node":351,"role":"declaration","source":0,"src_end":26592,"src_start":24150},{"artifact":1,"gen_end":36248,"gen_start":35867,"node":352,"role":"declaration","source":0,"src_end":26820,"src_start":26594},{"artifact":1,"gen_end":42499,"gen_start":36248,"node":353,"role":"declaration","source":0,"src_end":31444,"src_start":26822},{"artifact":1,"gen_end":42876,"gen_start":42499,"node":354,"role":"declaration","source":0,"src_end":31668,"src_start":31446},{"artifact":1,"gen_end":46094,"gen_start":42876,"node":355,"role":"declaration","source":0,"src_end":34045,"src_start":31670},{"artifact":1,"gen_end":46473,"gen_start":46094,"node":356,"role":"declaration","source":0,"src_end":34271,"src_start":34047},{"artifact":1,"gen_end":47084,"gen_start":46473,"node":357,"role":"declaration","source":0,"src_end":34728,"src_start":34273},{"artifact":1,"gen_end":54281,"gen_start":47084,"node":358,"role":"declaration","source":0,"src_end":40112,"src_start":34730},{"artifact":1,"gen_end":54664,"gen_start":54281,"node":359,"role":"declaration","source":0,"src_end":40342,"src_start":40114},{"artifact":1,"gen_end":55764,"gen_start":54664,"node":360,"role":"declaration","source":0,"src_end":41184,"src_start":40344},{"artifact":1,"gen_end":58237,"gen_start":55764,"node":361,"role":"declaration","source":0,"src_end":43042,"src_start":41186},{"artifact":1,"gen_end":58765,"gen_start":58237,"node":362,"role":"declaration","source":0,"src_end":43399,"src_start":43044},{"artifact":1,"gen_end":59085,"gen_start":58765,"node":363,"role":"declaration","source":0,"src_end":43650,"src_start":43401},{"artifact":1,"gen_end":62888,"gen_start":59085,"node":364,"role":"declaration","source":0,"src_end":46530,"src_start":43652},{"artifact":1,"gen_end":63376,"gen_start":62888,"node":365,"role":"declaration","source":0,"src_end":46853,"src_start":46532},{"artifact":1,"gen_end":63778,"gen_start":63376,"node":366,"role":"declaration","source":0,"src_end":47168,"src_start":46855},{"artifact":1,"gen_end":65567,"gen_start":63778,"node":367,"role":"declaration","source":0,"src_end":48492,"src_start":47170},{"artifact":1,"gen_end":66045,"gen_start":65567,"node":368,"role":"declaration","source":0,"src_end":48805,"src_start":48494},{"artifact":1,"gen_end":66361,"gen_start":66045,"node":369,"role":"declaration","source":0,"src_end":49052,"src_start":48807},{"artifact":1,"gen_end":69185,"gen_start":66361,"node":370,"role":"declaration","source":0,"src_end":51097,"src_start":49054},{"artifact":1,"gen_end":69622,"gen_start":69185,"node":371,"role":"declaration","source":0,"src_end":51375,"src_start":51099},{"artifact":1,"gen_end":69942,"gen_start":69622,"node":372,"role":"declaration","source":0,"src_end":51626,"src_start":51377},{"artifact":1,"gen_end":72656,"gen_start":69942,"node":373,"role":"declaration","source":0,"src_end":53608,"src_start":51628},{"artifact":1,"gen_end":73097,"gen_start":72656,"node":374,"role":"declaration","source":0,"src_end":53890,"src_start":53610},{"artifact":1,"gen_end":73420,"gen_start":73097,"node":375,"role":"declaration","source":0,"src_end":54144,"src_start":53892},{"artifact":1,"gen_end":74803,"gen_start":73420,"node":376,"role":"declaration","source":0,"src_end":55131,"src_start":54146},{"artifact":1,"gen_end":75232,"gen_start":74803,"node":377,"role":"declaration","source":0,"src_end":55401,"src_start":55133},{"artifact":1,"gen_end":75642,"gen_start":75232,"node":378,"role":"declaration","source":0,"src_end":55713,"src_start":55403},{"artifact":1,"gen_end":78829,"gen_start":75642,"node":379,"role":"declaration","source":0,"src_end":58081,"src_start":55715},{"artifact":1,"gen_end":79481,"gen_start":78829,"node":380,"role":"declaration","source":0,"src_end":58529,"src_start":58083},{"artifact":1,"gen_end":79972,"gen_start":79481,"node":381,"role":"declaration","source":0,"src_end":58912,"src_start":58531},{"artifact":1,"gen_end":84554,"gen_start":79972,"node":382,"role":"declaration","source":0,"src_end":62449,"src_start":58914},{"artifact":1,"gen_end":84927,"gen_start":84554,"node":383,"role":"declaration","source":0,"src_end":62669,"src_start":62451},{"artifact":1,"gen_end":85873,"gen_start":84927,"node":384,"role":"declaration","source":0,"src_end":63451,"src_start":62671},{"artifact":1,"gen_end":96993,"gen_start":85873,"node":385,"role":"declaration","source":0,"src_end":71974,"src_start":63453},{"artifact":1,"gen_end":97366,"gen_start":96993,"node":386,"role":"declaration","source":0,"src_end":72194,"src_start":71976},{"artifact":1,"gen_end":98305,"gen_start":97366,"node":387,"role":"declaration","source":0,"src_end":72834,"src_start":72196},{"artifact":1,"gen_end":98694,"gen_start":98305,"node":388,"role":"declaration","source":0,"src_end":73070,"src_start":72836},{"artifact":1,"gen_end":99659,"gen_start":98694,"node":389,"role":"declaration","source":0,"src_end":73736,"src_start":73072},{"artifact":1,"gen_end":100056,"gen_start":99659,"node":390,"role":"declaration","source":0,"src_end":73980,"src_start":73738},{"artifact":1,"gen_end":105663,"gen_start":100056,"node":391,"role":"declaration","source":0,"src_end":78216,"src_start":73982},{"artifact":1,"gen_end":106038,"gen_start":105663,"node":392,"role":"declaration","source":0,"src_end":78438,"src_start":78218},{"artifact":1,"gen_end":106741,"gen_start":106038,"node":393,"role":"declaration","source":0,"src_end":79009,"src_start":78440},{"artifact":1,"gen_end":108666,"gen_start":106741,"node":394,"role":"declaration","source":0,"src_end":80400,"src_start":79011},{"artifact":1,"gen_end":109115,"gen_start":108666,"node":395,"role":"declaration","source":0,"src_end":80690,"src_start":80402},{"artifact":1,"gen_end":109451,"gen_start":109115,"node":396,"role":"declaration","source":0,"src_end":80957,"src_start":80692},{"artifact":1,"gen_end":117105,"gen_start":109451,"node":397,"role":"declaration","source":0,"src_end":86862,"src_start":80959},{"artifact":1,"gen_end":117494,"gen_start":117105,"node":398,"role":"declaration","source":0,"src_end":87098,"src_start":86864},{"artifact":1,"gen_end":118581,"gen_start":117494,"node":399,"role":"declaration","source":0,"src_end":87978,"src_start":87100},{"artifact":1,"gen_end":126205,"gen_start":118581,"node":400,"role":"declaration","source":0,"src_end":93861,"src_start":87980},{"artifact":1,"gen_end":126598,"gen_start":126205,"node":401,"role":"declaration","source":0,"src_end":94101,"src_start":93863},{"artifact":1,"gen_end":127598,"gen_start":126598,"node":402,"role":"declaration","source":0,"src_end":94912,"src_start":94103},{"artifact":1,"gen_end":140962,"gen_start":127598,"node":403,"role":"declaration","source":0,"src_end":105303,"src_start":94914},{"artifact":1,"gen_end":141357,"gen_start":140962,"node":404,"role":"declaration","source":0,"src_end":105545,"src_start":105305},{"artifact":1,"gen_end":142958,"gen_start":141357,"node":405,"role":"declaration","source":0,"src_end":106810,"src_start":105547},{"artifact":1,"gen_end":151261,"gen_start":142958,"node":406,"role":"declaration","source":0,"src_end":113236,"src_start":106812},{"artifact":1,"gen_end":151656,"gen_start":151261,"node":407,"role":"declaration","source":0,"src_end":113478,"src_start":113238},{"artifact":1,"gen_end":152667,"gen_start":151656,"node":408,"role":"declaration","source":0,"src_end":114319,"src_start":113480},{"artifact":1,"gen_end":163905,"gen_start":152667,"node":409,"role":"declaration","source":0,"src_end":123112,"src_start":114321},{"artifact":1,"gen_end":164296,"gen_start":163905,"node":410,"role":"declaration","source":0,"src_end":123350,"src_start":123114},{"artifact":1,"gen_end":165596,"gen_start":164296,"node":411,"role":"declaration","source":0,"src_end":124433,"src_start":123352},{"artifact":1,"gen_end":167240,"gen_start":165596,"node":412,"role":"declaration","source":0,"src_end":125634,"src_start":124435},{"artifact":1,"gen_end":167745,"gen_start":167240,"node":413,"role":"declaration","source":0,"src_end":125974,"src_start":125636},{"artifact":1,"gen_end":169389,"gen_start":167745,"node":414,"role":"declaration","source":0,"src_end":127175,"src_start":125976},{"artifact":1,"gen_end":169904,"gen_start":169389,"node":415,"role":"declaration","source":0,"src_end":127525,"src_start":127177},{"artifact":1,"gen_end":171548,"gen_start":169904,"node":416,"role":"declaration","source":0,"src_end":128726,"src_start":127527},{"artifact":1,"gen_end":172081,"gen_start":171548,"node":417,"role":"declaration","source":0,"src_end":129094,"src_start":128728},{"artifact":1,"gen_end":173720,"gen_start":172081,"node":418,"role":"declaration","source":0,"src_end":130290,"src_start":129096},{"artifact":1,"gen_end":174217,"gen_start":173720,"node":419,"role":"declaration","source":0,"src_end":130622,"src_start":130292},{"artifact":1,"gen_end":175861,"gen_start":174217,"node":420,"role":"declaration","source":0,"src_end":131823,"src_start":130624},{"artifact":1,"gen_end":176362,"gen_start":175861,"node":421,"role":"declaration","source":0,"src_end":132159,"src_start":131825},{"artifact":1,"gen_end":178006,"gen_start":176362,"node":422,"role":"declaration","source":0,"src_end":133360,"src_start":132161},{"artifact":1,"gen_end":178512,"gen_start":178006,"node":423,"role":"declaration","source":0,"src_end":133701,"src_start":133362},{"artifact":1,"gen_end":180156,"gen_start":178512,"node":424,"role":"declaration","source":0,"src_end":134902,"src_start":133703},{"artifact":1,"gen_end":180672,"gen_start":180156,"node":425,"role":"declaration","source":0,"src_end":135253,"src_start":134904},{"artifact":1,"gen_end":182311,"gen_start":180672,"node":426,"role":"declaration","source":0,"src_end":136449,"src_start":135255},{"artifact":1,"gen_end":182806,"gen_start":182311,"node":427,"role":"declaration","source":0,"src_end":136779,"src_start":136451},{"artifact":1,"gen_end":205438,"gen_start":182806,"node":428,"role":"declaration","source":0,"src_end":154522,"src_start":136781},{"artifact":1,"gen_end":206001,"gen_start":205438,"node":429,"role":"declaration","source":0,"src_end":154914,"src_start":154524},{"artifact":1,"gen_end":207871,"gen_start":206001,"node":430,"role":"declaration","source":0,"src_end":156415,"src_start":154916},{"artifact":1,"gen_end":230503,"gen_start":207871,"node":431,"role":"declaration","source":0,"src_end":174158,"src_start":156417},{"artifact":1,"gen_end":231076,"gen_start":230503,"node":432,"role":"declaration","source":0,"src_end":174560,"src_start":174160},{"artifact":1,"gen_end":232961,"gen_start":231076,"node":433,"role":"declaration","source":0,"src_end":176076,"src_start":174562},{"artifact":1,"gen_end":255593,"gen_start":232961,"node":434,"role":"declaration","source":0,"src_end":193819,"src_start":176078},{"artifact":1,"gen_end":256184,"gen_start":255593,"node":435,"role":"declaration","source":0,"src_end":194239,"src_start":193821},{"artifact":1,"gen_end":258097,"gen_start":256184,"node":436,"role":"declaration","source":0,"src_end":195783,"src_start":194241},{"artifact":1,"gen_end":280620,"gen_start":258097,"node":437,"role":"declaration","source":0,"src_end":213417,"src_start":195785},{"artifact":1,"gen_end":281173,"gen_start":280620,"node":438,"role":"declaration","source":0,"src_end":213799,"src_start":213419},{"artifact":1,"gen_end":282962,"gen_start":281173,"node":439,"role":"declaration","source":0,"src_end":215229,"src_start":213801},{"artifact":1,"gen_end":303154,"gen_start":282962,"node":440,"role":"declaration","source":0,"src_end":231048,"src_start":215231},{"artifact":1,"gen_end":303714,"gen_start":303154,"node":441,"role":"declaration","source":0,"src_end":231437,"src_start":231050},{"artifact":1,"gen_end":305412,"gen_start":303714,"node":442,"role":"declaration","source":0,"src_end":232802,"src_start":231439},{"artifact":1,"gen_end":325604,"gen_start":305412,"node":443,"role":"declaration","source":0,"src_end":248621,"src_start":232804},{"artifact":1,"gen_end":326169,"gen_start":325604,"node":444,"role":"declaration","source":0,"src_end":249015,"src_start":248623},{"artifact":1,"gen_end":327892,"gen_start":326169,"node":445,"role":"declaration","source":0,"src_end":250405,"src_start":249017},{"artifact":1,"gen_end":348084,"gen_start":327892,"node":446,"role":"declaration","source":0,"src_end":266224,"src_start":250407},{"artifact":1,"gen_end":348659,"gen_start":348084,"node":447,"role":"declaration","source":0,"src_end":266628,"src_start":266226},{"artifact":1,"gen_end":350431,"gen_start":348659,"node":448,"role":"declaration","source":0,"src_end":268067,"src_start":266630},{"artifact":1,"gen_end":370528,"gen_start":350431,"node":449,"role":"declaration","source":0,"src_end":283791,"src_start":268069},{"artifact":1,"gen_end":371080,"gen_start":370528,"node":450,"role":"declaration","source":0,"src_end":284172,"src_start":283793},{"artifact":1,"gen_end":372695,"gen_start":371080,"node":451,"role":"declaration","source":0,"src_end":285464,"src_start":284174},{"artifact":1,"gen_end":390843,"gen_start":372695,"node":452,"role":"declaration","source":0,"src_end":299241,"src_start":285466},{"artifact":1,"gen_end":391230,"gen_start":390843,"node":453,"role":"declaration","source":0,"src_end":299475,"src_start":299243},{"artifact":1,"gen_end":392329,"gen_start":391230,"node":454,"role":"declaration","source":0,"src_end":300339,"src_start":299477},{"artifact":1,"gen_end":419711,"gen_start":392329,"node":455,"role":"declaration","source":0,"src_end":321194,"src_start":300341},{"artifact":1,"gen_end":421121,"gen_start":419711,"node":456,"role":"declaration","source":0,"src_end":322214,"src_start":321196},{"artifact":1,"gen_end":421669,"gen_start":421121,"node":457,"role":"declaration","source":0,"src_end":322648,"src_start":322216},{"artifact":1,"gen_end":422205,"gen_start":421669,"node":458,"role":"declaration","source":0,"src_end":323189,"src_start":322650},{"artifact":1,"gen_end":449593,"gen_start":422205,"node":459,"role":"declaration","source":0,"src_end":344050,"src_start":323191},{"artifact":1,"gen_end":451015,"gen_start":449593,"node":460,"role":"declaration","source":0,"src_end":345082,"src_start":344052},{"artifact":1,"gen_end":451436,"gen_start":451015,"node":461,"role":"declaration","source":0,"src_end":345407,"src_start":345084},{"artifact":1,"gen_end":451983,"gen_start":451436,"node":462,"role":"declaration","source":0,"src_end":345959,"src_start":345409},{"artifact":1,"gen_end":479370,"gen_start":451983,"node":463,"role":"declaration","source":0,"src_end":366819,"src_start":345961},{"artifact":1,"gen_end":480790,"gen_start":479370,"node":464,"role":"declaration","source":0,"src_end":367849,"src_start":366821},{"artifact":1,"gen_end":481256,"gen_start":480790,"node":465,"role":"declaration","source":0,"src_end":368213,"src_start":367851},{"artifact":1,"gen_end":481802,"gen_start":481256,"node":466,"role":"declaration","source":0,"src_end":368764,"src_start":368215},{"artifact":1,"gen_end":486841,"gen_start":481802,"node":467,"role":"declaration","source":0,"src_end":372530,"src_start":368766},{"artifact":1,"gen_end":488253,"gen_start":486841,"node":468,"role":"declaration","source":0,"src_end":373552,"src_start":372532},{"artifact":1,"gen_end":488709,"gen_start":488253,"node":469,"role":"declaration","source":0,"src_end":373906,"src_start":373554},{"artifact":1,"gen_end":489246,"gen_start":488709,"node":470,"role":"declaration","source":0,"src_end":374448,"src_start":373908},{"artifact":1,"gen_end":494291,"gen_start":489246,"node":471,"role":"declaration","source":0,"src_end":378220,"src_start":374450},{"artifact":1,"gen_end":495715,"gen_start":494291,"node":472,"role":"declaration","source":0,"src_end":379254,"src_start":378222},{"artifact":1,"gen_end":496092,"gen_start":495715,"node":473,"role":"declaration","source":0,"src_end":379541,"src_start":379256},{"artifact":1,"gen_end":496642,"gen_start":496092,"node":474,"role":"declaration","source":0,"src_end":380096,"src_start":379543},{"artifact":1,"gen_end":523330,"gen_start":496642,"node":475,"role":"declaration","source":0,"src_end":400342,"src_start":380098},{"artifact":1,"gen_end":524698,"gen_start":523330,"node":476,"role":"declaration","source":0,"src_end":401326,"src_start":400344},{"artifact":1,"gen_end":525290,"gen_start":524698,"node":477,"role":"declaration","source":0,"src_end":401796,"src_start":401328},{"artifact":1,"gen_end":525927,"gen_start":525290,"node":478,"role":"declaration","source":0,"src_end":402462,"src_start":401798},{"artifact":1,"gen_end":552620,"gen_start":525927,"node":479,"role":"declaration","source":0,"src_end":422713,"src_start":402464},{"artifact":1,"gen_end":553777,"gen_start":552620,"node":480,"role":"declaration","source":0,"src_end":423537,"src_start":422715},{"artifact":1,"gen_end":554106,"gen_start":553777,"node":481,"role":"declaration","source":0,"src_end":423799,"src_start":423539},{"artifact":1,"gen_end":554741,"gen_start":554106,"node":482,"role":"declaration","source":0,"src_end":424408,"src_start":423801},{"artifact":1,"gen_end":564291,"gen_start":554741,"node":483,"role":"declaration","source":0,"src_end":431829,"src_start":424410},{"artifact":1,"gen_end":564676,"gen_start":564291,"node":484,"role":"declaration","source":0,"src_end":432061,"src_start":431831},{"artifact":1,"gen_end":565768,"gen_start":564676,"node":485,"role":"declaration","source":0,"src_end":432985,"src_start":432063},{"artifact":1,"gen_end":566755,"gen_start":565768,"node":486,"role":"declaration","source":0,"src_end":433667,"src_start":432987},{"artifact":1,"gen_end":567142,"gen_start":566755,"node":487,"role":"declaration","source":0,"src_end":433901,"src_start":433669},{"artifact":1,"gen_end":567417,"gen_start":567142,"node":488,"role":"declaration","source":0,"src_end":434117,"src_start":433903},{"artifact":1,"gen_end":568275,"gen_start":567417,"node":489,"role":"declaration","source":0,"src_end":434692,"src_start":434119},{"artifact":1,"gen_end":568662,"gen_start":568275,"node":490,"role":"declaration","source":0,"src_end":434926,"src_start":434694},{"artifact":1,"gen_end":568937,"gen_start":568662,"node":491,"role":"declaration","source":0,"src_end":435142,"src_start":434928},{"artifact":1,"gen_end":570058,"gen_start":568937,"node":492,"role":"declaration","source":0,"src_end":435936,"src_start":435144},{"artifact":1,"gen_end":570447,"gen_start":570058,"node":493,"role":"declaration","source":0,"src_end":436172,"src_start":435938},{"artifact":1,"gen_end":570724,"gen_start":570447,"node":494,"role":"declaration","source":0,"src_end":436390,"src_start":436174},{"artifact":1,"gen_end":571712,"gen_start":570724,"node":495,"role":"declaration","source":0,"src_end":437073,"src_start":436392},{"artifact":1,"gen_end":572099,"gen_start":571712,"node":496,"role":"declaration","source":0,"src_end":437307,"src_start":437075},{"artifact":1,"gen_end":572374,"gen_start":572099,"node":497,"role":"declaration","source":0,"src_end":437523,"src_start":437309},{"artifact":1,"gen_end":575115,"gen_start":572374,"node":498,"role":"declaration","source":0,"src_end":439549,"src_start":437525},{"artifact":1,"gen_end":575535,"gen_start":575115,"node":499,"role":"declaration","source":0,"src_end":439810,"src_start":439551},{"artifact":1,"gen_end":575839,"gen_start":575535,"node":500,"role":"declaration","source":0,"src_end":440045,"src_start":439812},{"artifact":1,"gen_end":576219,"gen_start":575839,"node":501,"role":"declaration","source":0,"src_end":440336,"src_start":440047},{"artifact":1,"gen_end":581330,"gen_start":576219,"node":502,"role":"declaration","source":0,"src_end":444150,"src_start":440338},{"artifact":1,"gen_end":581761,"gen_start":581330,"node":503,"role":"declaration","source":0,"src_end":444422,"src_start":444152},{"artifact":1,"gen_end":582161,"gen_start":581761,"node":504,"role":"declaration","source":0,"src_end":444735,"src_start":444424},{"artifact":1,"gen_end":582891,"gen_start":582161,"node":505,"role":"declaration","source":0,"src_end":445365,"src_start":444737},{"artifact":1,"gen_end":588009,"gen_start":582891,"node":506,"role":"declaration","source":0,"src_end":449186,"src_start":445367},{"artifact":1,"gen_end":588453,"gen_start":588009,"node":507,"role":"declaration","source":0,"src_end":449471,"src_start":449188},{"artifact":1,"gen_end":588867,"gen_start":588453,"node":508,"role":"declaration","source":0,"src_end":449798,"src_start":449473},{"artifact":1,"gen_end":589608,"gen_start":588867,"node":509,"role":"declaration","source":0,"src_end":450439,"src_start":449800},{"artifact":1,"gen_end":590610,"gen_start":589608,"node":510,"role":"declaration","source":0,"src_end":451140,"src_start":450441},{"artifact":1,"gen_end":593051,"gen_start":590610,"node":511,"role":"declaration","source":0,"src_end":453134,"src_start":451142},{"artifact":1,"gen_end":595283,"gen_start":593051,"node":512,"role":"declaration","source":0,"src_end":455036,"src_start":453136},{"artifact":1,"gen_end":598645,"gen_start":595283,"node":513,"role":"declaration","source":0,"src_end":457573,"src_start":455038},{"artifact":1,"gen_end":599273,"gen_start":598645,"node":514,"role":"declaration","source":0,"src_end":457997,"src_start":457575},{"artifact":1,"gen_end":599579,"gen_start":599273,"node":515,"role":"declaration","source":0,"src_end":458234,"src_start":457999},{"artifact":1,"gen_end":600104,"gen_start":599579,"node":516,"role":"declaration","source":0,"src_end":458637,"src_start":458236},{"artifact":1,"gen_end":606701,"gen_start":600104,"node":517,"role":"declaration","source":0,"src_end":463681,"src_start":458639},{"artifact":1,"gen_end":607300,"gen_start":606701,"node":518,"role":"declaration","source":0,"src_end":464082,"src_start":463683},{"artifact":1,"gen_end":608455,"gen_start":607300,"node":519,"role":"declaration","source":0,"src_end":464988,"src_start":464084},{"artifact":1,"gen_end":615308,"gen_start":608455,"node":520,"role":"declaration","source":0,"src_end":470464,"src_start":464990},{"artifact":1,"gen_end":615683,"gen_start":615308,"node":521,"role":"declaration","source":0,"src_end":470686,"src_start":470466},{"artifact":1,"gen_end":617785,"gen_start":615683,"node":522,"role":"declaration","source":0,"src_end":472433,"src_start":470688},{"artifact":1,"gen_end":622495,"gen_start":617785,"node":523,"role":"declaration","source":0,"src_end":475937,"src_start":472435},{"artifact":1,"gen_end":623283,"gen_start":622495,"node":524,"role":"declaration","source":0,"src_end":476491,"src_start":475939},{"artifact":1,"gen_end":623597,"gen_start":623283,"node":525,"role":"declaration","source":0,"src_end":476736,"src_start":476493},{"artifact":1,"gen_end":624003,"gen_start":623597,"node":526,"role":"declaration","source":0,"src_end":477112,"src_start":476738},{"artifact":1,"gen_end":627555,"gen_start":624003,"node":527,"role":"declaration","source":0,"src_end":479803,"src_start":477114},{"artifact":1,"gen_end":628289,"gen_start":627555,"node":528,"role":"declaration","source":0,"src_end":480309,"src_start":479805},{"artifact":1,"gen_end":628593,"gen_start":628289,"node":529,"role":"declaration","source":0,"src_end":480544,"src_start":480311},{"artifact":1,"gen_end":629095,"gen_start":628593,"node":530,"role":"declaration","source":0,"src_end":481002,"src_start":480546},{"artifact":1,"gen_end":634882,"gen_start":629095,"node":531,"role":"declaration","source":0,"src_end":485403,"src_start":481004},{"artifact":1,"gen_end":635717,"gen_start":634882,"node":532,"role":"declaration","source":0,"src_end":485998,"src_start":485405},{"artifact":1,"gen_end":636471,"gen_start":635717,"node":533,"role":"declaration","source":0,"src_end":486590,"src_start":486000},{"artifact":1,"gen_end":637002,"gen_start":636471,"node":534,"role":"declaration","source":0,"src_end":487052,"src_start":486592},{"artifact":1,"gen_end":642793,"gen_start":637002,"node":535,"role":"declaration","source":0,"src_end":491457,"src_start":487054},{"artifact":1,"gen_end":643636,"gen_start":642793,"node":536,"role":"declaration","source":0,"src_end":492060,"src_start":491459},{"artifact":1,"gen_end":644398,"gen_start":643636,"node":537,"role":"declaration","source":0,"src_end":492660,"src_start":492062},{"artifact":1,"gen_end":644937,"gen_start":644398,"node":538,"role":"declaration","source":0,"src_end":493130,"src_start":492662},{"artifact":1,"gen_end":650731,"gen_start":644937,"node":539,"role":"declaration","source":0,"src_end":497538,"src_start":493132},{"artifact":1,"gen_end":651580,"gen_start":650731,"node":540,"role":"declaration","source":0,"src_end":498147,"src_start":497540},{"artifact":1,"gen_end":652214,"gen_start":651580,"node":541,"role":"declaration","source":0,"src_end":498643,"src_start":498149},{"artifact":1,"gen_end":652759,"gen_start":652214,"node":542,"role":"declaration","source":0,"src_end":499119,"src_start":498645},{"artifact":1,"gen_end":655106,"gen_start":652759,"node":543,"role":"declaration","source":0,"src_end":500822,"src_start":499121},{"artifact":1,"gen_end":655840,"gen_start":655106,"node":544,"role":"declaration","source":0,"src_end":501328,"src_start":500824},{"artifact":1,"gen_end":656280,"gen_start":655840,"node":545,"role":"declaration","source":0,"src_end":501666,"src_start":501330},{"artifact":1,"gen_end":656716,"gen_start":656280,"node":546,"role":"declaration","source":0,"src_end":502061,"src_start":501668},{"artifact":1,"gen_end":660211,"gen_start":656716,"node":547,"role":"declaration","source":0,"src_end":504649,"src_start":502063},{"artifact":1,"gen_end":660995,"gen_start":660211,"node":548,"role":"declaration","source":0,"src_end":505199,"src_start":504651},{"artifact":1,"gen_end":661346,"gen_start":660995,"node":549,"role":"declaration","source":0,"src_end":505473,"src_start":505201},{"artifact":1,"gen_end":661896,"gen_start":661346,"node":550,"role":"declaration","source":0,"src_end":505990,"src_start":505475},{"artifact":1,"gen_end":665397,"gen_start":661896,"node":551,"role":"declaration","source":0,"src_end":508584,"src_start":505992},{"artifact":1,"gen_end":666193,"gen_start":665397,"node":552,"role":"declaration","source":0,"src_end":509146,"src_start":508586},{"artifact":1,"gen_end":666508,"gen_start":666193,"node":553,"role":"declaration","source":0,"src_end":509394,"src_start":509148},{"artifact":1,"gen_end":667070,"gen_start":666508,"node":554,"role":"declaration","source":0,"src_end":509923,"src_start":509396},{"artifact":1,"gen_end":670830,"gen_start":667070,"node":555,"role":"declaration","source":0,"src_end":512727,"src_start":509925},{"artifact":1,"gen_end":671614,"gen_start":670830,"node":556,"role":"declaration","source":0,"src_end":513277,"src_start":512729},{"artifact":1,"gen_end":672100,"gen_start":671614,"node":557,"role":"declaration","source":0,"src_end":513649,"src_start":513279},{"artifact":1,"gen_end":672625,"gen_start":672100,"node":558,"role":"declaration","source":0,"src_end":514107,"src_start":513651},{"artifact":1,"gen_end":676391,"gen_start":672625,"node":559,"role":"declaration","source":0,"src_end":516917,"src_start":514109},{"artifact":1,"gen_end":677187,"gen_start":676391,"node":560,"role":"declaration","source":0,"src_end":517479,"src_start":516919},{"artifact":1,"gen_end":677819,"gen_start":677187,"node":561,"role":"declaration","source":0,"src_end":517973,"src_start":517481},{"artifact":1,"gen_end":678356,"gen_start":677819,"node":562,"role":"declaration","source":0,"src_end":518443,"src_start":517975},{"artifact":1,"gen_end":680721,"gen_start":678356,"node":563,"role":"declaration","source":0,"src_end":520164,"src_start":518445},{"artifact":1,"gen_end":681459,"gen_start":680721,"node":564,"role":"declaration","source":0,"src_end":520674,"src_start":520166},{"artifact":1,"gen_end":681913,"gen_start":681459,"node":565,"role":"declaration","source":0,"src_end":521026,"src_start":520676},{"artifact":1,"gen_end":682361,"gen_start":681913,"node":566,"role":"declaration","source":0,"src_end":521433,"src_start":521028},{"artifact":1,"gen_end":696635,"gen_start":682361,"node":567,"role":"declaration","source":0,"src_end":532181,"src_start":521435},{"artifact":1,"gen_end":697423,"gen_start":696635,"node":568,"role":"declaration","source":0,"src_end":532741,"src_start":532183},{"artifact":1,"gen_end":698609,"gen_start":697423,"node":569,"role":"declaration","source":0,"src_end":533667,"src_start":532743},{"artifact":1,"gen_end":708673,"gen_start":698609,"node":570,"role":"declaration","source":0,"src_end":541388,"src_start":533669},{"artifact":1,"gen_end":709058,"gen_start":708673,"node":571,"role":"declaration","source":0,"src_end":541620,"src_start":541390},{"artifact":1,"gen_end":710239,"gen_start":709058,"node":572,"role":"declaration","source":0,"src_end":542588,"src_start":541622},{"artifact":1,"gen_end":711211,"gen_start":710239,"node":573,"role":"declaration","source":0,"src_end":543255,"src_start":542590},{"artifact":1,"gen_end":711598,"gen_start":711211,"node":574,"role":"declaration","source":0,"src_end":543489,"src_start":543257},{"artifact":1,"gen_end":711873,"gen_start":711598,"node":575,"role":"declaration","source":0,"src_end":543705,"src_start":543491},{"artifact":1,"gen_end":712844,"gen_start":711873,"node":576,"role":"declaration","source":0,"src_end":544371,"src_start":543707},{"artifact":1,"gen_end":713231,"gen_start":712844,"node":577,"role":"declaration","source":0,"src_end":544605,"src_start":544373},{"artifact":1,"gen_end":713506,"gen_start":713231,"node":578,"role":"declaration","source":0,"src_end":544821,"src_start":544607},{"artifact":1,"gen_end":714734,"gen_start":713506,"node":579,"role":"declaration","source":0,"src_end":545687,"src_start":544823},{"artifact":1,"gen_end":715127,"gen_start":714734,"node":580,"role":"declaration","source":0,"src_end":545927,"src_start":545689},{"artifact":1,"gen_end":715408,"gen_start":715127,"node":581,"role":"declaration","source":0,"src_end":546149,"src_start":545929},{"artifact":1,"gen_end":716295,"gen_start":715408,"node":582,"role":"declaration","source":0,"src_end":546745,"src_start":546151},{"artifact":1,"gen_end":716684,"gen_start":716295,"node":583,"role":"declaration","source":0,"src_end":546981,"src_start":546747},{"artifact":1,"gen_end":716961,"gen_start":716684,"node":584,"role":"declaration","source":0,"src_end":547199,"src_start":546983},{"artifact":1,"gen_end":734935,"gen_start":716961,"node":585,"role":"declaration","source":0,"src_end":560813,"src_start":547201},{"artifact":1,"gen_end":735310,"gen_start":734935,"node":586,"role":"declaration","source":0,"src_end":561035,"src_start":560815},{"artifact":1,"gen_end":736511,"gen_start":735310,"node":587,"role":"declaration","source":0,"src_end":562011,"src_start":561037},{"artifact":1,"gen_end":738745,"gen_start":736511,"node":588,"role":"declaration","source":0,"src_end":563607,"src_start":562013},{"artifact":1,"gen_end":739444,"gen_start":738745,"node":589,"role":"declaration","source":0,"src_end":564088,"src_start":563609},{"artifact":1,"gen_end":739765,"gen_start":739444,"node":590,"role":"declaration","source":0,"src_end":564340,"src_start":564090},{"artifact":1,"gen_end":741856,"gen_start":739765,"node":591,"role":"declaration","source":0,"src_end":565874,"src_start":564342},{"artifact":1,"gen_end":742473,"gen_start":741856,"node":592,"role":"declaration","source":0,"src_end":566291,"src_start":565876},{"artifact":1,"gen_end":742952,"gen_start":742473,"node":593,"role":"declaration","source":0,"src_end":566665,"src_start":566293},{"artifact":1,"gen_end":745886,"gen_start":742952,"node":594,"role":"declaration","source":0,"src_end":568802,"src_start":566667},{"artifact":1,"gen_end":746544,"gen_start":745886,"node":595,"role":"declaration","source":0,"src_end":569256,"src_start":568804},{"artifact":1,"gen_end":746858,"gen_start":746544,"node":596,"role":"declaration","source":0,"src_end":569501,"src_start":569258},{"artifact":1,"gen_end":747237,"gen_start":746858,"node":597,"role":"declaration","source":0,"src_end":569828,"src_start":569503},{"artifact":1,"gen_end":750177,"gen_start":747237,"node":598,"role":"declaration","source":0,"src_end":571971,"src_start":569830},{"artifact":1,"gen_end":750847,"gen_start":750177,"node":599,"role":"declaration","source":0,"src_end":572437,"src_start":571973},{"artifact":1,"gen_end":751174,"gen_start":750847,"node":600,"role":"declaration","source":0,"src_end":572695,"src_start":572439},{"artifact":1,"gen_end":751565,"gen_start":751174,"node":601,"role":"declaration","source":0,"src_end":573034,"src_start":572697},{"artifact":1,"gen_end":756428,"gen_start":751565,"node":602,"role":"declaration","source":0,"src_end":576645,"src_start":573036},{"artifact":1,"gen_end":757274,"gen_start":756428,"node":603,"role":"declaration","source":0,"src_end":577248,"src_start":576647},{"artifact":1,"gen_end":757727,"gen_start":757274,"node":604,"role":"declaration","source":0,"src_end":577599,"src_start":577250},{"artifact":1,"gen_end":758229,"gen_start":757727,"node":605,"role":"declaration","source":0,"src_end":578043,"src_start":577601},{"artifact":1,"gen_end":761357,"gen_start":758229,"node":606,"role":"declaration","source":0,"src_end":580389,"src_start":578045},{"artifact":1,"gen_end":761961,"gen_start":761357,"node":607,"role":"declaration","source":0,"src_end":580795,"src_start":580391},{"artifact":1,"gen_end":762266,"gen_start":761961,"node":608,"role":"declaration","source":0,"src_end":581031,"src_start":580797},{"artifact":1,"gen_end":762730,"gen_start":762266,"node":609,"role":"declaration","source":0,"src_end":581427,"src_start":581033},{"artifact":1,"gen_end":766356,"gen_start":762730,"node":610,"role":"declaration","source":0,"src_end":584119,"src_start":581429},{"artifact":1,"gen_end":766935,"gen_start":766356,"node":611,"role":"declaration","source":0,"src_end":584506,"src_start":584121},{"artifact":1,"gen_end":767396,"gen_start":766935,"node":612,"role":"declaration","source":0,"src_end":584865,"src_start":584508},{"artifact":1,"gen_end":767875,"gen_start":767396,"node":613,"role":"declaration","source":0,"src_end":585264,"src_start":584867},{"artifact":1,"gen_end":771488,"gen_start":767875,"node":614,"role":"declaration","source":0,"src_end":587943,"src_start":585266},{"artifact":1,"gen_end":772128,"gen_start":771488,"node":615,"role":"declaration","source":0,"src_end":588385,"src_start":587945},{"artifact":1,"gen_end":772650,"gen_start":772128,"node":616,"role":"declaration","source":0,"src_end":588799,"src_start":588387},{"artifact":1,"gen_end":773145,"gen_start":772650,"node":617,"role":"declaration","source":0,"src_end":589214,"src_start":588801},{"artifact":1,"gen_end":777263,"gen_start":773145,"node":618,"role":"declaration","source":0,"src_end":592302,"src_start":589216},{"artifact":1,"gen_end":777907,"gen_start":777263,"node":619,"role":"declaration","source":0,"src_end":592748,"src_start":592304},{"artifact":1,"gen_end":778433,"gen_start":777907,"node":620,"role":"declaration","source":0,"src_end":593166,"src_start":592750},{"artifact":1,"gen_end":778937,"gen_start":778433,"node":621,"role":"declaration","source":0,"src_end":593590,"src_start":593168},{"artifact":1,"gen_end":782550,"gen_start":778937,"node":622,"role":"declaration","source":0,"src_end":596269,"src_start":593592},{"artifact":1,"gen_end":783210,"gen_start":782550,"node":623,"role":"declaration","source":0,"src_end":596725,"src_start":596271},{"artifact":1,"gen_end":783752,"gen_start":783210,"node":624,"role":"declaration","source":0,"src_end":597153,"src_start":596727},{"artifact":1,"gen_end":784224,"gen_start":783752,"node":625,"role":"declaration","source":0,"src_end":597545,"src_start":597155},{"artifact":1,"gen_end":788753,"gen_start":784224,"node":626,"role":"declaration","source":0,"src_end":600948,"src_start":597547},{"artifact":1,"gen_end":789639,"gen_start":788753,"node":627,"role":"declaration","source":0,"src_end":601582,"src_start":600950},{"artifact":1,"gen_end":790407,"gen_start":789639,"node":628,"role":"declaration","source":0,"src_end":602188,"src_start":601584},{"artifact":1,"gen_end":790965,"gen_start":790407,"node":629,"role":"declaration","source":0,"src_end":602645,"src_start":602190},{"artifact":1,"gen_end":794617,"gen_start":790965,"node":630,"role":"declaration","source":0,"src_end":605363,"src_start":602647},{"artifact":1,"gen_end":795259,"gen_start":794617,"node":631,"role":"declaration","source":0,"src_end":605801,"src_start":605365},{"artifact":1,"gen_end":795783,"gen_start":795259,"node":632,"role":"declaration","source":0,"src_end":606211,"src_start":605803},{"artifact":1,"gen_end":796283,"gen_start":795783,"node":633,"role":"declaration","source":0,"src_end":606625,"src_start":606213},{"artifact":1,"gen_end":801148,"gen_start":796283,"node":634,"role":"declaration","source":0,"src_end":610238,"src_start":606627},{"artifact":1,"gen_end":801998,"gen_start":801148,"node":635,"role":"declaration","source":0,"src_end":610845,"src_start":610240},{"artifact":1,"gen_end":802409,"gen_start":801998,"node":636,"role":"declaration","source":0,"src_end":611160,"src_start":610847},{"artifact":1,"gen_end":802917,"gen_start":802409,"node":637,"role":"declaration","source":0,"src_end":611610,"src_start":611162},{"artifact":1,"gen_end":806029,"gen_start":802917,"node":638,"role":"declaration","source":0,"src_end":613902,"src_start":611612},{"artifact":1,"gen_end":806683,"gen_start":806029,"node":639,"role":"declaration","source":0,"src_end":614352,"src_start":613904},{"artifact":1,"gen_end":807127,"gen_start":806683,"node":640,"role":"declaration","source":0,"src_end":614694,"src_start":614354},{"artifact":1,"gen_end":807593,"gen_start":807127,"node":641,"role":"declaration","source":0,"src_end":615080,"src_start":614696},{"artifact":1,"gen_end":810711,"gen_start":807593,"node":642,"role":"declaration","source":0,"src_end":617378,"src_start":615082},{"artifact":1,"gen_end":811377,"gen_start":810711,"node":643,"role":"declaration","source":0,"src_end":617840,"src_start":617380},{"artifact":1,"gen_end":811879,"gen_start":811377,"node":644,"role":"declaration","source":0,"src_end":618234,"src_start":617842},{"artifact":1,"gen_end":812357,"gen_start":811879,"node":645,"role":"declaration","source":0,"src_end":618632,"src_start":618236},{"artifact":1,"gen_end":817188,"gen_start":812357,"node":646,"role":"declaration","source":0,"src_end":622247,"src_start":618634},{"artifact":1,"gen_end":818024,"gen_start":817188,"node":647,"role":"declaration","source":0,"src_end":622840,"src_start":622249},{"artifact":1,"gen_end":818605,"gen_start":818024,"node":648,"role":"declaration","source":0,"src_end":623301,"src_start":622842},{"artifact":1,"gen_end":819092,"gen_start":818605,"node":649,"role":"declaration","source":0,"src_end":623730,"src_start":623303},{"artifact":1,"gen_end":827983,"gen_start":819092,"node":650,"role":"declaration","source":0,"src_end":630646,"src_start":623732},{"artifact":1,"gen_end":828366,"gen_start":827983,"node":651,"role":"declaration","source":0,"src_end":630876,"src_start":630648},{"artifact":1,"gen_end":830219,"gen_start":828366,"node":652,"role":"declaration","source":0,"src_end":632082,"src_start":630878},{"artifact":1,"gen_end":830650,"gen_start":830219,"node":653,"role":"declaration","source":0,"src_end":632354,"src_start":632084},{"artifact":1,"gen_end":831225,"gen_start":830650,"node":654,"role":"declaration","source":0,"src_end":632730,"src_start":632356},{"artifact":1,"gen_end":832829,"gen_start":831225,"node":655,"role":"declaration","source":0,"src_end":633854,"src_start":632732},{"artifact":1,"gen_end":833246,"gen_start":832829,"node":656,"role":"declaration","source":0,"src_end":634112,"src_start":633856},{"artifact":1,"gen_end":833546,"gen_start":833246,"node":657,"role":"declaration","source":0,"src_end":634343,"src_start":634114},{"artifact":1,"gen_end":835159,"gen_start":833546,"node":658,"role":"declaration","source":0,"src_end":635476,"src_start":634345},{"artifact":1,"gen_end":835592,"gen_start":835159,"node":659,"role":"declaration","source":0,"src_end":635750,"src_start":635478},{"artifact":1,"gen_end":835864,"gen_start":835592,"node":660,"role":"declaration","source":0,"src_end":635965,"src_start":635752},{"artifact":1,"gen_end":841611,"gen_start":835864,"node":661,"role":"declaration","source":0,"src_end":640246,"src_start":635967},{"artifact":1,"gen_end":842040,"gen_start":841611,"node":662,"role":"declaration","source":0,"src_end":640516,"src_start":640248},{"artifact":1,"gen_end":842629,"gen_start":842040,"node":663,"role":"declaration","source":0,"src_end":640982,"src_start":640518},{"artifact":1,"gen_end":849600,"gen_start":842629,"node":664,"role":"declaration","source":0,"src_end":646140,"src_start":640984},{"artifact":1,"gen_end":850068,"gen_start":849600,"node":665,"role":"declaration","source":0,"src_end":646445,"src_start":646142},{"artifact":1,"gen_end":850493,"gen_start":850068,"node":666,"role":"declaration","source":0,"src_end":646779,"src_start":646447},{"artifact":1,"gen_end":858781,"gen_start":850493,"node":667,"role":"declaration","source":0,"src_end":653341,"src_start":646781},{"artifact":1,"gen_end":859206,"gen_start":858781,"node":668,"role":"declaration","source":0,"src_end":653607,"src_start":653343},{"artifact":1,"gen_end":859756,"gen_start":859206,"node":669,"role":"declaration","source":0,"src_end":654038,"src_start":653609},{"artifact":1,"gen_end":859771,"gen_start":859756,"node":335,"role":"declaration","source":0,"src_end":654074,"src_start":0}],"module":"TargetFixtures","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"},{"id":40,"kind":"semantic-declaration"},{"id":41,"kind":"semantic-declaration"},{"id":42,"kind":"semantic-declaration"},{"id":43,"kind":"semantic-declaration"},{"id":44,"kind":"semantic-declaration"},{"id":45,"kind":"semantic-declaration"},{"id":46,"kind":"semantic-declaration"},{"id":47,"kind":"semantic-declaration"},{"id":48,"kind":"semantic-declaration"},{"id":49,"kind":"semantic-declaration"},{"id":50,"kind":"semantic-declaration"},{"id":51,"kind":"semantic-declaration"},{"id":52,"kind":"semantic-declaration"},{"id":53,"kind":"semantic-declaration"},{"id":54,"kind":"semantic-declaration"},{"id":55,"kind":"semantic-declaration"},{"id":56,"kind":"semantic-declaration"},{"id":57,"kind":"semantic-declaration"},{"id":58,"kind":"semantic-declaration"},{"id":59,"kind":"semantic-declaration"},{"id":60,"kind":"semantic-declaration"},{"id":61,"kind":"semantic-declaration"},{"id":62,"kind":"semantic-declaration"},{"id":63,"kind":"semantic-declaration"},{"id":64,"kind":"semantic-declaration"},{"id":65,"kind":"semantic-declaration"},{"id":66,"kind":"semantic-declaration"},{"id":67,"kind":"semantic-declaration"},{"id":68,"kind":"semantic-declaration"},{"id":69,"kind":"semantic-declaration"},{"id":70,"kind":"semantic-declaration"},{"id":71,"kind":"semantic-declaration"},{"id":72,"kind":"semantic-declaration"},{"id":73,"kind":"semantic-declaration"},{"id":74,"kind":"semantic-declaration"},{"id":75,"kind":"semantic-declaration"},{"id":76,"kind":"semantic-declaration"},{"id":77,"kind":"semantic-declaration"},{"id":78,"kind":"semantic-declaration"},{"id":79,"kind":"semantic-declaration"},{"id":80,"kind":"semantic-declaration"},{"id":81,"kind":"semantic-declaration"},{"id":82,"kind":"semantic-declaration"},{"id":83,"kind":"semantic-declaration"},{"id":84,"kind":"semantic-declaration"},{"id":85,"kind":"semantic-declaration"},{"id":86,"kind":"semantic-declaration"},{"id":87,"kind":"semantic-declaration"},{"id":88,"kind":"semantic-declaration"},{"id":89,"kind":"semantic-declaration"},{"id":90,"kind":"semantic-declaration"},{"id":91,"kind":"semantic-declaration"},{"id":92,"kind":"semantic-declaration"},{"id":93,"kind":"semantic-declaration"},{"id":94,"kind":"semantic-declaration"},{"id":95,"kind":"semantic-declaration"},{"id":96,"kind":"semantic-declaration"},{"id":97,"kind":"semantic-declaration"},{"id":98,"kind":"semantic-declaration"},{"id":99,"kind":"semantic-declaration"},{"id":100,"kind":"semantic-declaration"},{"id":101,"kind":"semantic-declaration"},{"id":102,"kind":"semantic-declaration"},{"id":103,"kind":"semantic-declaration"},{"id":104,"kind":"semantic-declaration"},{"id":105,"kind":"semantic-declaration"},{"id":106,"kind":"semantic-declaration"},{"id":107,"kind":"semantic-declaration"},{"id":108,"kind":"semantic-declaration"},{"id":109,"kind":"semantic-declaration"},{"id":110,"kind":"semantic-declaration"},{"id":111,"kind":"semantic-declaration"},{"id":112,"kind":"semantic-declaration"},{"id":113,"kind":"semantic-declaration"},{"id":114,"kind":"semantic-declaration"},{"id":115,"kind":"semantic-declaration"},{"id":116,"kind":"semantic-declaration"},{"id":117,"kind":"semantic-declaration"},{"id":118,"kind":"semantic-declaration"},{"id":119,"kind":"semantic-declaration"},{"id":120,"kind":"semantic-declaration"},{"id":121,"kind":"semantic-declaration"},{"id":122,"kind":"semantic-declaration"},{"id":123,"kind":"semantic-declaration"},{"id":124,"kind":"semantic-declaration"},{"id":125,"kind":"semantic-declaration"},{"id":126,"kind":"semantic-declaration"},{"id":127,"kind":"semantic-declaration"},{"id":128,"kind":"semantic-declaration"},{"id":129,"kind":"semantic-declaration"},{"id":130,"kind":"semantic-declaration"},{"id":131,"kind":"semantic-declaration"},{"id":132,"kind":"semantic-declaration"},{"id":133,"kind":"semantic-declaration"},{"id":134,"kind":"semantic-declaration"},{"id":135,"kind":"semantic-declaration"},{"id":136,"kind":"semantic-declaration"},{"id":137,"kind":"semantic-declaration"},{"id":138,"kind":"semantic-declaration"},{"id":139,"kind":"semantic-declaration"},{"id":140,"kind":"semantic-declaration"},{"id":141,"kind":"semantic-declaration"},{"id":142,"kind":"semantic-declaration"},{"id":143,"kind":"semantic-declaration"},{"id":144,"kind":"semantic-declaration"},{"id":145,"kind":"semantic-declaration"},{"id":146,"kind":"semantic-declaration"},{"id":147,"kind":"semantic-declaration"},{"id":148,"kind":"semantic-declaration"},{"id":149,"kind":"semantic-declaration"},{"id":150,"kind":"semantic-declaration"},{"id":151,"kind":"semantic-declaration"},{"id":152,"kind":"semantic-declaration"},{"id":153,"kind":"semantic-declaration"},{"id":154,"kind":"semantic-declaration"},{"id":155,"kind":"semantic-declaration"},{"id":156,"kind":"semantic-declaration"},{"id":157,"kind":"semantic-declaration"},{"id":158,"kind":"semantic-declaration"},{"id":159,"kind":"semantic-declaration"},{"id":160,"kind":"semantic-declaration"},{"id":161,"kind":"semantic-declaration"},{"id":162,"kind":"semantic-declaration"},{"id":163,"kind":"semantic-declaration"},{"id":164,"kind":"semantic-declaration"},{"id":165,"kind":"semantic-declaration"},{"id":166,"kind":"semantic-declaration"},{"id":167,"kind":"semantic-declaration"},{"id":168,"kind":"semantic-declaration"},{"id":169,"kind":"semantic-declaration"},{"id":170,"kind":"semantic-declaration"},{"id":171,"kind":"semantic-declaration"},{"id":172,"kind":"semantic-declaration"},{"id":173,"kind":"semantic-declaration"},{"id":174,"kind":"semantic-declaration"},{"id":175,"kind":"semantic-declaration"},{"id":176,"kind":"semantic-declaration"},{"id":177,"kind":"semantic-declaration"},{"id":178,"kind":"semantic-declaration"},{"id":179,"kind":"semantic-declaration"},{"id":180,"kind":"semantic-declaration"},{"id":181,"kind":"semantic-declaration"},{"id":182,"kind":"semantic-declaration"},{"id":183,"kind":"semantic-declaration"},{"id":184,"kind":"semantic-declaration"},{"id":185,"kind":"semantic-declaration"},{"id":186,"kind":"semantic-declaration"},{"id":187,"kind":"semantic-declaration"},{"id":188,"kind":"semantic-declaration"},{"id":189,"kind":"semantic-declaration"},{"id":190,"kind":"semantic-declaration"},{"id":191,"kind":"semantic-declaration"},{"id":192,"kind":"semantic-declaration"},{"id":193,"kind":"semantic-declaration"},{"id":194,"kind":"semantic-declaration"},{"id":195,"kind":"semantic-declaration"},{"id":196,"kind":"semantic-declaration"},{"id":197,"kind":"semantic-declaration"},{"id":198,"kind":"semantic-declaration"},{"id":199,"kind":"semantic-declaration"},{"id":200,"kind":"semantic-declaration"},{"id":201,"kind":"semantic-declaration"},{"id":202,"kind":"semantic-declaration"},{"id":203,"kind":"semantic-declaration"},{"id":204,"kind":"semantic-declaration"},{"id":205,"kind":"semantic-declaration"},{"id":206,"kind":"semantic-declaration"},{"id":207,"kind":"semantic-declaration"},{"id":208,"kind":"semantic-declaration"},{"id":209,"kind":"semantic-declaration"},{"id":210,"kind":"semantic-declaration"},{"id":211,"kind":"semantic-declaration"},{"id":212,"kind":"semantic-declaration"},{"id":213,"kind":"semantic-declaration"},{"id":214,"kind":"semantic-declaration"},{"id":215,"kind":"semantic-declaration"},{"id":216,"kind":"semantic-declaration"},{"id":217,"kind":"semantic-declaration"},{"id":218,"kind":"semantic-declaration"},{"id":219,"kind":"semantic-declaration"},{"id":220,"kind":"semantic-declaration"},{"id":221,"kind":"semantic-declaration"},{"id":222,"kind":"semantic-declaration"},{"id":223,"kind":"semantic-declaration"},{"id":224,"kind":"semantic-declaration"},{"id":225,"kind":"semantic-declaration"},{"id":226,"kind":"semantic-declaration"},{"id":227,"kind":"semantic-declaration"},{"id":228,"kind":"semantic-declaration"},{"id":229,"kind":"semantic-declaration"},{"id":230,"kind":"semantic-declaration"},{"id":231,"kind":"semantic-declaration"},{"id":232,"kind":"semantic-declaration"},{"id":233,"kind":"semantic-declaration"},{"id":234,"kind":"semantic-declaration"},{"id":235,"kind":"semantic-declaration"},{"id":236,"kind":"semantic-declaration"},{"id":237,"kind":"semantic-declaration"},{"id":238,"kind":"semantic-declaration"},{"id":239,"kind":"semantic-declaration"},{"id":240,"kind":"semantic-declaration"},{"id":241,"kind":"semantic-declaration"},{"id":242,"kind":"semantic-declaration"},{"id":243,"kind":"semantic-declaration"},{"id":244,"kind":"semantic-declaration"},{"id":245,"kind":"semantic-declaration"},{"id":246,"kind":"semantic-declaration"},{"id":247,"kind":"semantic-declaration"},{"id":248,"kind":"semantic-declaration"},{"id":249,"kind":"semantic-declaration"},{"id":250,"kind":"semantic-declaration"},{"id":251,"kind":"semantic-declaration"},{"id":252,"kind":"semantic-declaration"},{"id":253,"kind":"semantic-declaration"},{"id":254,"kind":"semantic-declaration"},{"id":255,"kind":"semantic-declaration"},{"id":256,"kind":"semantic-declaration"},{"id":257,"kind":"semantic-declaration"},{"id":258,"kind":"semantic-declaration"},{"id":259,"kind":"semantic-declaration"},{"id":260,"kind":"semantic-declaration"},{"id":261,"kind":"semantic-declaration"},{"id":262,"kind":"semantic-declaration"},{"id":263,"kind":"semantic-declaration"},{"id":264,"kind":"semantic-declaration"},{"id":265,"kind":"semantic-declaration"},{"id":266,"kind":"semantic-declaration"},{"id":267,"kind":"semantic-declaration"},{"id":268,"kind":"semantic-declaration"},{"id":269,"kind":"semantic-declaration"},{"id":270,"kind":"semantic-declaration"},{"id":271,"kind":"semantic-declaration"},{"id":272,"kind":"semantic-declaration"},{"id":273,"kind":"semantic-declaration"},{"id":274,"kind":"semantic-declaration"},{"id":275,"kind":"semantic-declaration"},{"id":276,"kind":"semantic-declaration"},{"id":277,"kind":"semantic-declaration"},{"id":278,"kind":"semantic-declaration"},{"id":279,"kind":"semantic-declaration"},{"id":280,"kind":"semantic-declaration"},{"id":281,"kind":"semantic-declaration"},{"id":282,"kind":"semantic-declaration"},{"id":283,"kind":"semantic-declaration"},{"id":284,"kind":"semantic-declaration"},{"id":285,"kind":"semantic-declaration"},{"id":286,"kind":"semantic-declaration"},{"id":287,"kind":"semantic-declaration"},{"id":288,"kind":"semantic-declaration"},{"id":289,"kind":"semantic-declaration"},{"id":290,"kind":"semantic-declaration"},{"id":291,"kind":"semantic-declaration"},{"id":292,"kind":"semantic-declaration"},{"id":293,"kind":"semantic-declaration"},{"id":294,"kind":"semantic-declaration"},{"id":295,"kind":"semantic-declaration"},{"id":296,"kind":"semantic-declaration"},{"id":297,"kind":"semantic-declaration"},{"id":298,"kind":"semantic-declaration"},{"id":299,"kind":"semantic-declaration"},{"id":300,"kind":"semantic-declaration"},{"id":301,"kind":"semantic-declaration"},{"id":302,"kind":"semantic-declaration"},{"id":303,"kind":"semantic-declaration"},{"id":304,"kind":"semantic-declaration"},{"id":305,"kind":"semantic-declaration"},{"id":306,"kind":"semantic-declaration"},{"id":307,"kind":"semantic-declaration"},{"id":308,"kind":"semantic-declaration"},{"id":309,"kind":"semantic-declaration"},{"id":310,"kind":"semantic-declaration"},{"id":311,"kind":"semantic-declaration"},{"id":312,"kind":"semantic-declaration"},{"id":313,"kind":"semantic-declaration"},{"id":314,"kind":"semantic-declaration"},{"id":315,"kind":"semantic-declaration"},{"id":316,"kind":"semantic-declaration"},{"id":317,"kind":"semantic-declaration"},{"id":318,"kind":"semantic-declaration"},{"id":319,"kind":"semantic-declaration"},{"id":320,"kind":"semantic-declaration"},{"id":321,"kind":"semantic-declaration"},{"id":322,"kind":"semantic-declaration"},{"id":323,"kind":"semantic-declaration"},{"id":324,"kind":"semantic-declaration"},{"id":325,"kind":"semantic-declaration"},{"id":326,"kind":"semantic-declaration"},{"id":327,"kind":"semantic-declaration"},{"id":328,"kind":"semantic-declaration"},{"id":329,"kind":"semantic-declaration"},{"id":330,"kind":"semantic-declaration"},{"id":331,"kind":"semantic-declaration"},{"id":332,"kind":"semantic-declaration"},{"id":333,"kind":"semantic-declaration"},{"id":334,"kind":"semantic-declaration"},{"id":335,"kind":"semantic-latex-module"},{"id":336,"kind":"semantic-declaration"},{"id":337,"kind":"semantic-declaration"},{"id":338,"kind":"semantic-declaration"},{"id":339,"kind":"semantic-declaration"},{"id":340,"kind":"semantic-declaration"},{"id":341,"kind":"semantic-declaration"},{"id":342,"kind":"semantic-declaration"},{"id":343,"kind":"semantic-declaration"},{"id":344,"kind":"semantic-declaration"},{"id":345,"kind":"semantic-declaration"},{"id":346,"kind":"semantic-declaration"},{"id":347,"kind":"semantic-declaration"},{"id":348,"kind":"semantic-declaration"},{"id":349,"kind":"semantic-declaration"},{"id":350,"kind":"semantic-declaration"},{"id":351,"kind":"semantic-declaration"},{"id":352,"kind":"semantic-declaration"},{"id":353,"kind":"semantic-declaration"},{"id":354,"kind":"semantic-declaration"},{"id":355,"kind":"semantic-declaration"},{"id":356,"kind":"semantic-declaration"},{"id":357,"kind":"semantic-declaration"},{"id":358,"kind":"semantic-declaration"},{"id":359,"kind":"semantic-declaration"},{"id":360,"kind":"semantic-declaration"},{"id":361,"kind":"semantic-declaration"},{"id":362,"kind":"semantic-declaration"},{"id":363,"kind":"semantic-declaration"},{"id":364,"kind":"semantic-declaration"},{"id":365,"kind":"semantic-declaration"},{"id":366,"kind":"semantic-declaration"},{"id":367,"kind":"semantic-declaration"},{"id":368,"kind":"semantic-declaration"},{"id":369,"kind":"semantic-declaration"},{"id":370,"kind":"semantic-declaration"},{"id":371,"kind":"semantic-declaration"},{"id":372,"kind":"semantic-declaration"},{"id":373,"kind":"semantic-declaration"},{"id":374,"kind":"semantic-declaration"},{"id":375,"kind":"semantic-declaration"},{"id":376,"kind":"semantic-declaration"},{"id":377,"kind":"semantic-declaration"},{"id":378,"kind":"semantic-declaration"},{"id":379,"kind":"semantic-declaration"},{"id":380,"kind":"semantic-declaration"},{"id":381,"kind":"semantic-declaration"},{"id":382,"kind":"semantic-declaration"},{"id":383,"kind":"semantic-declaration"},{"id":384,"kind":"semantic-declaration"},{"id":385,"kind":"semantic-declaration"},{"id":386,"kind":"semantic-declaration"},{"id":387,"kind":"semantic-declaration"},{"id":388,"kind":"semantic-declaration"},{"id":389,"kind":"semantic-declaration"},{"id":390,"kind":"semantic-declaration"},{"id":391,"kind":"semantic-declaration"},{"id":392,"kind":"semantic-declaration"},{"id":393,"kind":"semantic-declaration"},{"id":394,"kind":"semantic-declaration"},{"id":395,"kind":"semantic-declaration"},{"id":396,"kind":"semantic-declaration"},{"id":397,"kind":"semantic-declaration"},{"id":398,"kind":"semantic-declaration"},{"id":399,"kind":"semantic-declaration"},{"id":400,"kind":"semantic-declaration"},{"id":401,"kind":"semantic-declaration"},{"id":402,"kind":"semantic-declaration"},{"id":403,"kind":"semantic-declaration"},{"id":404,"kind":"semantic-declaration"},{"id":405,"kind":"semantic-declaration"},{"id":406,"kind":"semantic-declaration"},{"id":407,"kind":"semantic-declaration"},{"id":408,"kind":"semantic-declaration"},{"id":409,"kind":"semantic-declaration"},{"id":410,"kind":"semantic-declaration"},{"id":411,"kind":"semantic-declaration"},{"id":412,"kind":"semantic-declaration"},{"id":413,"kind":"semantic-declaration"},{"id":414,"kind":"semantic-declaration"},{"id":415,"kind":"semantic-declaration"},{"id":416,"kind":"semantic-declaration"},{"id":417,"kind":"semantic-declaration"},{"id":418,"kind":"semantic-declaration"},{"id":419,"kind":"semantic-declaration"},{"id":420,"kind":"semantic-declaration"},{"id":421,"kind":"semantic-declaration"},{"id":422,"kind":"semantic-declaration"},{"id":423,"kind":"semantic-declaration"},{"id":424,"kind":"semantic-declaration"},{"id":425,"kind":"semantic-declaration"},{"id":426,"kind":"semantic-declaration"},{"id":427,"kind":"semantic-declaration"},{"id":428,"kind":"semantic-declaration"},{"id":429,"kind":"semantic-declaration"},{"id":430,"kind":"semantic-declaration"},{"id":431,"kind":"semantic-declaration"},{"id":432,"kind":"semantic-declaration"},{"id":433,"kind":"semantic-declaration"},{"id":434,"kind":"semantic-declaration"},{"id":435,"kind":"semantic-declaration"},{"id":436,"kind":"semantic-declaration"},{"id":437,"kind":"semantic-declaration"},{"id":438,"kind":"semantic-declaration"},{"id":439,"kind":"semantic-declaration"},{"id":440,"kind":"semantic-declaration"},{"id":441,"kind":"semantic-declaration"},{"id":442,"kind":"semantic-declaration"},{"id":443,"kind":"semantic-declaration"},{"id":444,"kind":"semantic-declaration"},{"id":445,"kind":"semantic-declaration"},{"id":446,"kind":"semantic-declaration"},{"id":447,"kind":"semantic-declaration"},{"id":448,"kind":"semantic-declaration"},{"id":449,"kind":"semantic-declaration"},{"id":450,"kind":"semantic-declaration"},{"id":451,"kind":"semantic-declaration"},{"id":452,"kind":"semantic-declaration"},{"id":453,"kind":"semantic-declaration"},{"id":454,"kind":"semantic-declaration"},{"id":455,"kind":"semantic-declaration"},{"id":456,"kind":"semantic-declaration"},{"id":457,"kind":"semantic-declaration"},{"id":458,"kind":"semantic-declaration"},{"id":459,"kind":"semantic-declaration"},{"id":460,"kind":"semantic-declaration"},{"id":461,"kind":"semantic-declaration"},{"id":462,"kind":"semantic-declaration"},{"id":463,"kind":"semantic-declaration"},{"id":464,"kind":"semantic-declaration"},{"id":465,"kind":"semantic-declaration"},{"id":466,"kind":"semantic-declaration"},{"id":467,"kind":"semantic-declaration"},{"id":468,"kind":"semantic-declaration"},{"id":469,"kind":"semantic-declaration"},{"id":470,"kind":"semantic-declaration"},{"id":471,"kind":"semantic-declaration"},{"id":472,"kind":"semantic-declaration"},{"id":473,"kind":"semantic-declaration"},{"id":474,"kind":"semantic-declaration"},{"id":475,"kind":"semantic-declaration"},{"id":476,"kind":"semantic-declaration"},{"id":477,"kind":"semantic-declaration"},{"id":478,"kind":"semantic-declaration"},{"id":479,"kind":"semantic-declaration"},{"id":480,"kind":"semantic-declaration"},{"id":481,"kind":"semantic-declaration"},{"id":482,"kind":"semantic-declaration"},{"id":483,"kind":"semantic-declaration"},{"id":484,"kind":"semantic-declaration"},{"id":485,"kind":"semantic-declaration"},{"id":486,"kind":"semantic-declaration"},{"id":487,"kind":"semantic-declaration"},{"id":488,"kind":"semantic-declaration"},{"id":489,"kind":"semantic-declaration"},{"id":490,"kind":"semantic-declaration"},{"id":491,"kind":"semantic-declaration"},{"id":492,"kind":"semantic-declaration"},{"id":493,"kind":"semantic-declaration"},{"id":494,"kind":"semantic-declaration"},{"id":495,"kind":"semantic-declaration"},{"id":496,"kind":"semantic-declaration"},{"id":497,"kind":"semantic-declaration"},{"id":498,"kind":"semantic-declaration"},{"id":499,"kind":"semantic-declaration"},{"id":500,"kind":"semantic-declaration"},{"id":501,"kind":"semantic-declaration"},{"id":502,"kind":"semantic-declaration"},{"id":503,"kind":"semantic-declaration"},{"id":504,"kind":"semantic-declaration"},{"id":505,"kind":"semantic-declaration"},{"id":506,"kind":"semantic-declaration"},{"id":507,"kind":"semantic-declaration"},{"id":508,"kind":"semantic-declaration"},{"id":509,"kind":"semantic-declaration"},{"id":510,"kind":"semantic-declaration"},{"id":511,"kind":"semantic-declaration"},{"id":512,"kind":"semantic-declaration"},{"id":513,"kind":"semantic-declaration"},{"id":514,"kind":"semantic-declaration"},{"id":515,"kind":"semantic-declaration"},{"id":516,"kind":"semantic-declaration"},{"id":517,"kind":"semantic-declaration"},{"id":518,"kind":"semantic-declaration"},{"id":519,"kind":"semantic-declaration"},{"id":520,"kind":"semantic-declaration"},{"id":521,"kind":"semantic-declaration"},{"id":522,"kind":"semantic-declaration"},{"id":523,"kind":"semantic-declaration"},{"id":524,"kind":"semantic-declaration"},{"id":525,"kind":"semantic-declaration"},{"id":526,"kind":"semantic-declaration"},{"id":527,"kind":"semantic-declaration"},{"id":528,"kind":"semantic-declaration"},{"id":529,"kind":"semantic-declaration"},{"id":530,"kind":"semantic-declaration"},{"id":531,"kind":"semantic-declaration"},{"id":532,"kind":"semantic-declaration"},{"id":533,"kind":"semantic-declaration"},{"id":534,"kind":"semantic-declaration"},{"id":535,"kind":"semantic-declaration"},{"id":536,"kind":"semantic-declaration"},{"id":537,"kind":"semantic-declaration"},{"id":538,"kind":"semantic-declaration"},{"id":539,"kind":"semantic-declaration"},{"id":540,"kind":"semantic-declaration"},{"id":541,"kind":"semantic-declaration"},{"id":542,"kind":"semantic-declaration"},{"id":543,"kind":"semantic-declaration"},{"id":544,"kind":"semantic-declaration"},{"id":545,"kind":"semantic-declaration"},{"id":546,"kind":"semantic-declaration"},{"id":547,"kind":"semantic-declaration"},{"id":548,"kind":"semantic-declaration"},{"id":549,"kind":"semantic-declaration"},{"id":550,"kind":"semantic-declaration"},{"id":551,"kind":"semantic-declaration"},{"id":552,"kind":"semantic-declaration"},{"id":553,"kind":"semantic-declaration"},{"id":554,"kind":"semantic-declaration"},{"id":555,"kind":"semantic-declaration"},{"id":556,"kind":"semantic-declaration"},{"id":557,"kind":"semantic-declaration"},{"id":558,"kind":"semantic-declaration"},{"id":559,"kind":"semantic-declaration"},{"id":560,"kind":"semantic-declaration"},{"id":561,"kind":"semantic-declaration"},{"id":562,"kind":"semantic-declaration"},{"id":563,"kind":"semantic-declaration"},{"id":564,"kind":"semantic-declaration"},{"id":565,"kind":"semantic-declaration"},{"id":566,"kind":"semantic-declaration"},{"id":567,"kind":"semantic-declaration"},{"id":568,"kind":"semantic-declaration"},{"id":569,"kind":"semantic-declaration"},{"id":570,"kind":"semantic-declaration"},{"id":571,"kind":"semantic-declaration"},{"id":572,"kind":"semantic-declaration"},{"id":573,"kind":"semantic-declaration"},{"id":574,"kind":"semantic-declaration"},{"id":575,"kind":"semantic-declaration"},{"id":576,"kind":"semantic-declaration"},{"id":577,"kind":"semantic-declaration"},{"id":578,"kind":"semantic-declaration"},{"id":579,"kind":"semantic-declaration"},{"id":580,"kind":"semantic-declaration"},{"id":581,"kind":"semantic-declaration"},{"id":582,"kind":"semantic-declaration"},{"id":583,"kind":"semantic-declaration"},{"id":584,"kind":"semantic-declaration"},{"id":585,"kind":"semantic-declaration"},{"id":586,"kind":"semantic-declaration"},{"id":587,"kind":"semantic-declaration"},{"id":588,"kind":"semantic-declaration"},{"id":589,"kind":"semantic-declaration"},{"id":590,"kind":"semantic-declaration"},{"id":591,"kind":"semantic-declaration"},{"id":592,"kind":"semantic-declaration"},{"id":593,"kind":"semantic-declaration"},{"id":594,"kind":"semantic-declaration"},{"id":595,"kind":"semantic-declaration"},{"id":596,"kind":"semantic-declaration"},{"id":597,"kind":"semantic-declaration"},{"id":598,"kind":"semantic-declaration"},{"id":599,"kind":"semantic-declaration"},{"id":600,"kind":"semantic-declaration"},{"id":601,"kind":"semantic-declaration"},{"id":602,"kind":"semantic-declaration"},{"id":603,"kind":"semantic-declaration"},{"id":604,"kind":"semantic-declaration"},{"id":605,"kind":"semantic-declaration"},{"id":606,"kind":"semantic-declaration"},{"id":607,"kind":"semantic-declaration"},{"id":608,"kind":"semantic-declaration"},{"id":609,"kind":"semantic-declaration"},{"id":610,"kind":"semantic-declaration"},{"id":611,"kind":"semantic-declaration"},{"id":612,"kind":"semantic-declaration"},{"id":613,"kind":"semantic-declaration"},{"id":614,"kind":"semantic-declaration"},{"id":615,"kind":"semantic-declaration"},{"id":616,"kind":"semantic-declaration"},{"id":617,"kind":"semantic-declaration"},{"id":618,"kind":"semantic-declaration"},{"id":619,"kind":"semantic-declaration"},{"id":620,"kind":"semantic-declaration"},{"id":621,"kind":"semantic-declaration"},{"id":622,"kind":"semantic-declaration"},{"id":623,"kind":"semantic-declaration"},{"id":624,"kind":"semantic-declaration"},{"id":625,"kind":"semantic-declaration"},{"id":626,"kind":"semantic-declaration"},{"id":627,"kind":"semantic-declaration"},{"id":628,"kind":"semantic-declaration"},{"id":629,"kind":"semantic-declaration"},{"id":630,"kind":"semantic-declaration"},{"id":631,"kind":"semantic-declaration"},{"id":632,"kind":"semantic-declaration"},{"id":633,"kind":"semantic-declaration"},{"id":634,"kind":"semantic-declaration"},{"id":635,"kind":"semantic-declaration"},{"id":636,"kind":"semantic-declaration"},{"id":637,"kind":"semantic-declaration"},{"id":638,"kind":"semantic-declaration"},{"id":639,"kind":"semantic-declaration"},{"id":640,"kind":"semantic-declaration"},{"id":641,"kind":"semantic-declaration"},{"id":642,"kind":"semantic-declaration"},{"id":643,"kind":"semantic-declaration"},{"id":644,"kind":"semantic-declaration"},{"id":645,"kind":"semantic-declaration"},{"id":646,"kind":"semantic-declaration"},{"id":647,"kind":"semantic-declaration"},{"id":648,"kind":"semantic-declaration"},{"id":649,"kind":"semantic-declaration"},{"id":650,"kind":"semantic-declaration"},{"id":651,"kind":"semantic-declaration"},{"id":652,"kind":"semantic-declaration"},{"id":653,"kind":"semantic-declaration"},{"id":654,"kind":"semantic-declaration"},{"id":655,"kind":"semantic-declaration"},{"id":656,"kind":"semantic-declaration"},{"id":657,"kind":"semantic-declaration"},{"id":658,"kind":"semantic-declaration"},{"id":659,"kind":"semantic-declaration"},{"id":660,"kind":"semantic-declaration"},{"id":661,"kind":"semantic-declaration"},{"id":662,"kind":"semantic-declaration"},{"id":663,"kind":"semantic-declaration"},{"id":664,"kind":"semantic-declaration"},{"id":665,"kind":"semantic-declaration"},{"id":666,"kind":"semantic-declaration"},{"id":667,"kind":"semantic-declaration"},{"id":668,"kind":"semantic-declaration"},{"id":669,"kind":"semantic-declaration"}],"semantic_id":"c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517","source_id":"ce718723d5d252a9adafdc3cb3b76931b1d91e053dd3e7e31bcb9b9496a1941c","sources":[{"id":0,"kind":"file","path":"src/TargetFixtures.lex.tex","sha256":"d746739ea3e78234f7a68280dc068d39b84f4064298a37383a8dc645bc188c27"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/LexLeanTarget/TargetFixtures.lean"},{"id":1,"kind":"tex","path":"modules/LexLeanTarget/TargetFixtures.tex"}],"mappings":[{"artifact":0,"gen_end":416,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":654074,"src_start":0},{"artifact":0,"gen_end":4776,"gen_start":416,"node":1,"role":"declaration","source":0,"src_end":3550,"src_start":210},{"artifact":0,"gen_end":4974,"gen_start":4776,"node":2,"role":"declaration","source":0,"src_end":3782,"src_start":3552},{"artifact":0,"gen_end":5139,"gen_start":4974,"node":3,"role":"declaration","source":0,"src_end":4028,"src_start":3784},{"artifact":0,"gen_end":10978,"gen_start":5139,"node":4,"role":"declaration","source":0,"src_end":8546,"src_start":4030},{"artifact":0,"gen_end":11228,"gen_start":10978,"node":5,"role":"declaration","source":0,"src_end":8824,"src_start":8548},{"artifact":0,"gen_end":11754,"gen_start":11228,"node":6,"role":"declaration","source":0,"src_end":9359,"src_start":8826},{"artifact":0,"gen_end":22707,"gen_start":11754,"node":7,"role":"declaration","source":0,"src_end":17744,"src_start":9361},{"artifact":0,"gen_end":23052,"gen_start":22707,"node":8,"role":"declaration","source":0,"src_end":18105,"src_start":17746},{"artifact":0,"gen_end":23903,"gen_start":23052,"node":9,"role":"declaration","source":0,"src_end":18893,"src_start":18107},{"artifact":0,"gen_end":27311,"gen_start":23903,"node":10,"role":"declaration","source":0,"src_end":21516,"src_start":18895},{"artifact":0,"gen_end":27600,"gen_start":27311,"node":11,"role":"declaration","source":0,"src_end":21827,"src_start":21518},{"artifact":0,"gen_end":28054,"gen_start":27600,"node":12,"role":"declaration","source":0,"src_end":22311,"src_start":21829},{"artifact":0,"gen_end":29437,"gen_start":28054,"node":13,"role":"declaration","source":0,"src_end":23401,"src_start":22313},{"artifact":0,"gen_end":29994,"gen_start":29437,"node":14,"role":"declaration","source":0,"src_end":23910,"src_start":23403},{"artifact":0,"gen_end":30151,"gen_start":29994,"node":15,"role":"declaration","source":0,"src_end":24148,"src_start":23912},{"artifact":0,"gen_end":33368,"gen_start":30151,"node":16,"role":"declaration","source":0,"src_end":26592,"src_start":24150},{"artifact":0,"gen_end":33562,"gen_start":33368,"node":17,"role":"declaration","source":0,"src_end":26820,"src_start":26594},{"artifact":0,"gen_end":39640,"gen_start":33562,"node":18,"role":"declaration","source":0,"src_end":31444,"src_start":26822},{"artifact":0,"gen_end":39830,"gen_start":39640,"node":19,"role":"declaration","source":0,"src_end":31668,"src_start":31446},{"artifact":0,"gen_end":42895,"gen_start":39830,"node":20,"role":"declaration","source":0,"src_end":34045,"src_start":31670},{"artifact":0,"gen_end":43087,"gen_start":42895,"node":21,"role":"declaration","source":0,"src_end":34271,"src_start":34047},{"artifact":0,"gen_end":43546,"gen_start":43087,"node":22,"role":"declaration","source":0,"src_end":34728,"src_start":34273},{"artifact":0,"gen_end":50575,"gen_start":43546,"node":23,"role":"declaration","source":0,"src_end":40112,"src_start":34730},{"artifact":0,"gen_end":50771,"gen_start":50575,"node":24,"role":"declaration","source":0,"src_end":40342,"src_start":40114},{"artifact":0,"gen_end":51714,"gen_start":50771,"node":25,"role":"declaration","source":0,"src_end":41184,"src_start":40344},{"artifact":0,"gen_end":54033,"gen_start":51714,"node":26,"role":"declaration","source":0,"src_end":43042,"src_start":41186},{"artifact":0,"gen_end":54374,"gen_start":54033,"node":27,"role":"declaration","source":0,"src_end":43399,"src_start":43044},{"artifact":0,"gen_end":54544,"gen_start":54374,"node":28,"role":"declaration","source":0,"src_end":43650,"src_start":43401},{"artifact":0,"gen_end":58191,"gen_start":54544,"node":29,"role":"declaration","source":0,"src_end":46530,"src_start":43652},{"artifact":0,"gen_end":58492,"gen_start":58191,"node":30,"role":"declaration","source":0,"src_end":46853,"src_start":46532},{"artifact":0,"gen_end":58744,"gen_start":58492,"node":31,"role":"declaration","source":0,"src_end":47168,"src_start":46855},{"artifact":0,"gen_end":60381,"gen_start":58744,"node":32,"role":"declaration","source":0,"src_end":48492,"src_start":47170},{"artifact":0,"gen_end":60672,"gen_start":60381,"node":33,"role":"declaration","source":0,"src_end":48805,"src_start":48494},{"artifact":0,"gen_end":60838,"gen_start":60672,"node":34,"role":"declaration","source":0,"src_end":49052,"src_start":48807},{"artifact":0,"gen_end":63484,"gen_start":60838,"node":35,"role":"declaration","source":0,"src_end":51097,"src_start":49054},{"artifact":0,"gen_end":63734,"gen_start":63484,"node":36,"role":"declaration","source":0,"src_end":51375,"src_start":51099},{"artifact":0,"gen_end":63904,"gen_start":63734,"node":37,"role":"declaration","source":0,"src_end":51626,"src_start":51377},{"artifact":0,"gen_end":66452,"gen_start":63904,"node":38,"role":"declaration","source":0,"src_end":53608,"src_start":51628},{"artifact":0,"gen_end":66706,"gen_start":66452,"node":39,"role":"declaration","source":0,"src_end":53890,"src_start":53610},{"artifact":0,"gen_end":66879,"gen_start":66706,"node":40,"role":"declaration","source":0,"src_end":54144,"src_start":53892},{"artifact":0,"gen_end":68110,"gen_start":66879,"node":41,"role":"declaration","source":0,"src_end":55131,"src_start":54146},{"artifact":0,"gen_end":68352,"gen_start":68110,"node":42,"role":"declaration","source":0,"src_end":55401,"src_start":55133},{"artifact":0,"gen_end":68612,"gen_start":68352,"node":43,"role":"declaration","source":0,"src_end":55713,"src_start":55403},{"artifact":0,"gen_end":71633,"gen_start":68612,"node":44,"role":"declaration","source":0,"src_end":58081,"src_start":55715},{"artifact":0,"gen_end":72098,"gen_start":71633,"node":45,"role":"declaration","source":0,"src_end":58529,"src_start":58083},{"artifact":0,"gen_end":72439,"gen_start":72098,"node":46,"role":"declaration","source":0,"src_end":58912,"src_start":58531},{"artifact":0,"gen_end":76869,"gen_start":72439,"node":47,"role":"declaration","source":0,"src_end":62449,"src_start":58914},{"artifact":0,"gen_end":77055,"gen_start":76869,"node":48,"role":"declaration","source":0,"src_end":62669,"src_start":62451},{"artifact":0,"gen_end":77851,"gen_start":77055,"node":49,"role":"declaration","source":0,"src_end":63451,"src_start":62671},{"artifact":0,"gen_end":88821,"gen_start":77851,"node":50,"role":"declaration","source":0,"src_end":71974,"src_start":63453},{"artifact":0,"gen_end":89007,"gen_start":88821,"node":51,"role":"declaration","source":0,"src_end":72194,"src_start":71976},{"artifact":0,"gen_end":89796,"gen_start":89007,"node":52,"role":"declaration","source":0,"src_end":72834,"src_start":72196},{"artifact":0,"gen_end":89998,"gen_start":89796,"node":53,"role":"declaration","source":0,"src_end":73070,"src_start":72836},{"artifact":0,"gen_end":90813,"gen_start":89998,"node":54,"role":"declaration","source":0,"src_end":73736,"src_start":73072},{"artifact":0,"gen_end":91023,"gen_start":90813,"node":55,"role":"declaration","source":0,"src_end":73980,"src_start":73738},{"artifact":0,"gen_end":96468,"gen_start":91023,"node":56,"role":"declaration","source":0,"src_end":78216,"src_start":73982},{"artifact":0,"gen_end":96656,"gen_start":96468,"node":57,"role":"declaration","source":0,"src_end":78438,"src_start":78218},{"artifact":0,"gen_end":97209,"gen_start":96656,"node":58,"role":"declaration","source":0,"src_end":79009,"src_start":78440},{"artifact":0,"gen_end":98982,"gen_start":97209,"node":59,"role":"declaration","source":0,"src_end":80400,"src_start":79011},{"artifact":0,"gen_end":99244,"gen_start":98982,"node":60,"role":"declaration","source":0,"src_end":80690,"src_start":80402},{"artifact":0,"gen_end":99430,"gen_start":99244,"node":61,"role":"declaration","source":0,"src_end":80957,"src_start":80692},{"artifact":0,"gen_end":106934,"gen_start":99430,"node":62,"role":"declaration","source":0,"src_end":86862,"src_start":80959},{"artifact":0,"gen_end":107136,"gen_start":106934,"node":63,"role":"declaration","source":0,"src_end":87098,"src_start":86864},{"artifact":0,"gen_end":108073,"gen_start":107136,"node":64,"role":"declaration","source":0,"src_end":87978,"src_start":87100},{"artifact":0,"gen_end":115547,"gen_start":108073,"node":65,"role":"declaration","source":0,"src_end":93861,"src_start":87980},{"artifact":0,"gen_end":115753,"gen_start":115547,"node":66,"role":"declaration","source":0,"src_end":94101,"src_start":93863},{"artifact":0,"gen_end":116603,"gen_start":115753,"node":67,"role":"declaration","source":0,"src_end":94912,"src_start":94103},{"artifact":0,"gen_end":129817,"gen_start":116603,"node":68,"role":"declaration","source":0,"src_end":105303,"src_start":94914},{"artifact":0,"gen_end":130025,"gen_start":129817,"node":69,"role":"declaration","source":0,"src_end":105545,"src_start":105305},{"artifact":0,"gen_end":131476,"gen_start":130025,"node":70,"role":"declaration","source":0,"src_end":106810,"src_start":105547},{"artifact":0,"gen_end":139629,"gen_start":131476,"node":71,"role":"declaration","source":0,"src_end":113236,"src_start":106812},{"artifact":0,"gen_end":139837,"gen_start":139629,"node":72,"role":"declaration","source":0,"src_end":113478,"src_start":113238},{"artifact":0,"gen_end":140698,"gen_start":139837,"node":73,"role":"declaration","source":0,"src_end":114319,"src_start":113480},{"artifact":0,"gen_end":151786,"gen_start":140698,"node":74,"role":"declaration","source":0,"src_end":123112,"src_start":114321},{"artifact":0,"gen_end":151990,"gen_start":151786,"node":75,"role":"declaration","source":0,"src_end":123350,"src_start":123114},{"artifact":0,"gen_end":153140,"gen_start":151990,"node":76,"role":"declaration","source":0,"src_end":124433,"src_start":123352},{"artifact":0,"gen_end":154634,"gen_start":153140,"node":77,"role":"declaration","source":0,"src_end":125634,"src_start":124435},{"artifact":0,"gen_end":154952,"gen_start":154634,"node":78,"role":"declaration","source":0,"src_end":125974,"src_start":125636},{"artifact":0,"gen_end":156446,"gen_start":154952,"node":79,"role":"declaration","source":0,"src_end":127175,"src_start":125976},{"artifact":0,"gen_end":156774,"gen_start":156446,"node":80,"role":"declaration","source":0,"src_end":127525,"src_start":127177},{"artifact":0,"gen_end":158268,"gen_start":156774,"node":81,"role":"declaration","source":0,"src_end":128726,"src_start":127527},{"artifact":0,"gen_end":158614,"gen_start":158268,"node":82,"role":"declaration","source":0,"src_end":129094,"src_start":128728},{"artifact":0,"gen_end":160103,"gen_start":158614,"node":83,"role":"declaration","source":0,"src_end":130290,"src_start":129096},{"artifact":0,"gen_end":160413,"gen_start":160103,"node":84,"role":"declaration","source":0,"src_end":130622,"src_start":130292},{"artifact":0,"gen_end":161907,"gen_start":160413,"node":85,"role":"declaration","source":0,"src_end":131823,"src_start":130624},{"artifact":0,"gen_end":162221,"gen_start":161907,"node":86,"role":"declaration","source":0,"src_end":132159,"src_start":131825},{"artifact":0,"gen_end":163715,"gen_start":162221,"node":87,"role":"declaration","source":0,"src_end":133360,"src_start":132161},{"artifact":0,"gen_end":164034,"gen_start":163715,"node":88,"role":"declaration","source":0,"src_end":133701,"src_start":133362},{"artifact":0,"gen_end":165528,"gen_start":164034,"node":89,"role":"declaration","source":0,"src_end":134902,"src_start":133703},{"artifact":0,"gen_end":165857,"gen_start":165528,"node":90,"role":"declaration","source":0,"src_end":135253,"src_start":134904},{"artifact":0,"gen_end":167346,"gen_start":165857,"node":91,"role":"declaration","source":0,"src_end":136449,"src_start":135255},{"artifact":0,"gen_end":167654,"gen_start":167346,"node":92,"role":"declaration","source":0,"src_end":136779,"src_start":136451},{"artifact":0,"gen_end":190136,"gen_start":167654,"node":93,"role":"declaration","source":0,"src_end":154522,"src_start":136781},{"artifact":0,"gen_end":190512,"gen_start":190136,"node":94,"role":"declaration","source":0,"src_end":154914,"src_start":154524},{"artifact":0,"gen_end":192232,"gen_start":190512,"node":95,"role":"declaration","source":0,"src_end":156415,"src_start":154916},{"artifact":0,"gen_end":214714,"gen_start":192232,"node":96,"role":"declaration","source":0,"src_end":174158,"src_start":156417},{"artifact":0,"gen_end":215100,"gen_start":214714,"node":97,"role":"declaration","source":0,"src_end":174560,"src_start":174160},{"artifact":0,"gen_end":216835,"gen_start":215100,"node":98,"role":"declaration","source":0,"src_end":176076,"src_start":174562},{"artifact":0,"gen_end":239317,"gen_start":216835,"node":99,"role":"declaration","source":0,"src_end":193819,"src_start":176078},{"artifact":0,"gen_end":239721,"gen_start":239317,"node":100,"role":"declaration","source":0,"src_end":194239,"src_start":193821},{"artifact":0,"gen_end":241484,"gen_start":239721,"node":101,"role":"declaration","source":0,"src_end":195783,"src_start":194241},{"artifact":0,"gen_end":263857,"gen_start":241484,"node":102,"role":"declaration","source":0,"src_end":213417,"src_start":195785},{"artifact":0,"gen_end":264223,"gen_start":263857,"node":103,"role":"declaration","source":0,"src_end":213799,"src_start":213419},{"artifact":0,"gen_end":265862,"gen_start":264223,"node":104,"role":"declaration","source":0,"src_end":215229,"src_start":213801},{"artifact":0,"gen_end":285904,"gen_start":265862,"node":105,"role":"declaration","source":0,"src_end":231048,"src_start":215231},{"artifact":0,"gen_end":286277,"gen_start":285904,"node":106,"role":"declaration","source":0,"src_end":231437,"src_start":231050},{"artifact":0,"gen_end":287825,"gen_start":286277,"node":107,"role":"declaration","source":0,"src_end":232802,"src_start":231439},{"artifact":0,"gen_end":307867,"gen_start":287825,"node":108,"role":"declaration","source":0,"src_end":248621,"src_start":232804},{"artifact":0,"gen_end":308245,"gen_start":307867,"node":109,"role":"declaration","source":0,"src_end":249015,"src_start":248623},{"artifact":0,"gen_end":309818,"gen_start":308245,"node":110,"role":"declaration","source":0,"src_end":250405,"src_start":249017},{"artifact":0,"gen_end":329860,"gen_start":309818,"node":111,"role":"declaration","source":0,"src_end":266224,"src_start":250407},{"artifact":0,"gen_end":330248,"gen_start":329860,"node":112,"role":"declaration","source":0,"src_end":266628,"src_start":266226},{"artifact":0,"gen_end":331870,"gen_start":330248,"node":113,"role":"declaration","source":0,"src_end":268067,"src_start":266630},{"artifact":0,"gen_end":351817,"gen_start":331870,"node":114,"role":"declaration","source":0,"src_end":283791,"src_start":268069},{"artifact":0,"gen_end":352182,"gen_start":351817,"node":115,"role":"declaration","source":0,"src_end":284172,"src_start":283793},{"artifact":0,"gen_end":353647,"gen_start":352182,"node":116,"role":"declaration","source":0,"src_end":285464,"src_start":284174},{"artifact":0,"gen_end":371515,"gen_start":353647,"node":117,"role":"declaration","source":0,"src_end":299241,"src_start":285466},{"artifact":0,"gen_end":371715,"gen_start":371515,"node":118,"role":"declaration","source":0,"src_end":299475,"src_start":299243},{"artifact":0,"gen_end":372664,"gen_start":371715,"node":119,"role":"declaration","source":0,"src_end":300339,"src_start":299477},{"artifact":0,"gen_end":399642,"gen_start":372664,"node":120,"role":"declaration","source":0,"src_end":321194,"src_start":300341},{"artifact":0,"gen_end":400865,"gen_start":399642,"node":121,"role":"declaration","source":0,"src_end":322214,"src_start":321196},{"artifact":0,"gen_end":401263,"gen_start":400865,"node":122,"role":"declaration","source":0,"src_end":322648,"src_start":322216},{"artifact":0,"gen_end":401650,"gen_start":401263,"node":123,"role":"declaration","source":0,"src_end":323189,"src_start":322650},{"artifact":0,"gen_end":428634,"gen_start":401650,"node":124,"role":"declaration","source":0,"src_end":344050,"src_start":323191},{"artifact":0,"gen_end":429869,"gen_start":428634,"node":125,"role":"declaration","source":0,"src_end":345082,"src_start":344052},{"artifact":0,"gen_end":430140,"gen_start":429869,"node":126,"role":"declaration","source":0,"src_end":345407,"src_start":345084},{"artifact":0,"gen_end":430538,"gen_start":430140,"node":127,"role":"declaration","source":0,"src_end":345959,"src_start":345409},{"artifact":0,"gen_end":457521,"gen_start":430538,"node":128,"role":"declaration","source":0,"src_end":366819,"src_start":345961},{"artifact":0,"gen_end":458754,"gen_start":457521,"node":129,"role":"declaration","source":0,"src_end":367849,"src_start":366821},{"artifact":0,"gen_end":459070,"gen_start":458754,"node":130,"role":"declaration","source":0,"src_end":368213,"src_start":367851},{"artifact":0,"gen_end":459467,"gen_start":459070,"node":131,"role":"declaration","source":0,"src_end":368764,"src_start":368215},{"artifact":0,"gen_end":464316,"gen_start":459467,"node":132,"role":"declaration","source":0,"src_end":372530,"src_start":368766},{"artifact":0,"gen_end":465541,"gen_start":464316,"node":133,"role":"declaration","source":0,"src_end":373552,"src_start":372532},{"artifact":0,"gen_end":465847,"gen_start":465541,"node":134,"role":"declaration","source":0,"src_end":373906,"src_start":373554},{"artifact":0,"gen_end":466235,"gen_start":465847,"node":135,"role":"declaration","source":0,"src_end":374448,"src_start":373908},{"artifact":0,"gen_end":471090,"gen_start":466235,"node":136,"role":"declaration","source":0,"src_end":378220,"src_start":374450},{"artifact":0,"gen_end":472327,"gen_start":471090,"node":137,"role":"declaration","source":0,"src_end":379254,"src_start":378222},{"artifact":0,"gen_end":472554,"gen_start":472327,"node":138,"role":"declaration","source":0,"src_end":379541,"src_start":379256},{"artifact":0,"gen_end":472955,"gen_start":472554,"node":139,"role":"declaration","source":0,"src_end":380096,"src_start":379543},{"artifact":0,"gen_end":499241,"gen_start":472955,"node":140,"role":"declaration","source":0,"src_end":400342,"src_start":380098},{"artifact":0,"gen_end":500422,"gen_start":499241,"node":141,"role":"declaration","source":0,"src_end":401326,"src_start":400344},{"artifact":0,"gen_end":500864,"gen_start":500422,"node":142,"role":"declaration","source":0,"src_end":401796,"src_start":401328},{"artifact":0,"gen_end":501351,"gen_start":500864,"node":143,"role":"declaration","source":0,"src_end":402462,"src_start":401798},{"artifact":0,"gen_end":527642,"gen_start":501351,"node":144,"role":"declaration","source":0,"src_end":422713,"src_start":402464},{"artifact":0,"gen_end":528612,"gen_start":527642,"node":145,"role":"declaration","source":0,"src_end":423537,"src_start":422715},{"artifact":0,"gen_end":528791,"gen_start":528612,"node":146,"role":"declaration","source":0,"src_end":423799,"src_start":423539},{"artifact":0,"gen_end":529276,"gen_start":528791,"node":147,"role":"declaration","source":0,"src_end":424408,"src_start":423801},{"artifact":0,"gen_end":538676,"gen_start":529276,"node":148,"role":"declaration","source":0,"src_end":431829,"src_start":424410},{"artifact":0,"gen_end":538874,"gen_start":538676,"node":149,"role":"declaration","source":0,"src_end":432061,"src_start":431831},{"artifact":0,"gen_end":539816,"gen_start":538874,"node":150,"role":"declaration","source":0,"src_end":432985,"src_start":432063},{"artifact":0,"gen_end":540653,"gen_start":539816,"node":151,"role":"declaration","source":0,"src_end":433667,"src_start":432987},{"artifact":0,"gen_end":540853,"gen_start":540653,"node":152,"role":"declaration","source":0,"src_end":433901,"src_start":433669},{"artifact":0,"gen_end":540978,"gen_start":540853,"node":153,"role":"declaration","source":0,"src_end":434117,"src_start":433903},{"artifact":0,"gen_end":541686,"gen_start":540978,"node":154,"role":"declaration","source":0,"src_end":434692,"src_start":434119},{"artifact":0,"gen_end":541886,"gen_start":541686,"node":155,"role":"declaration","source":0,"src_end":434926,"src_start":434694},{"artifact":0,"gen_end":542011,"gen_start":541886,"node":156,"role":"declaration","source":0,"src_end":435142,"src_start":434928},{"artifact":0,"gen_end":542982,"gen_start":542011,"node":157,"role":"declaration","source":0,"src_end":435936,"src_start":435144},{"artifact":0,"gen_end":543184,"gen_start":542982,"node":158,"role":"declaration","source":0,"src_end":436172,"src_start":435938},{"artifact":0,"gen_end":543311,"gen_start":543184,"node":159,"role":"declaration","source":0,"src_end":436390,"src_start":436174},{"artifact":0,"gen_end":544149,"gen_start":543311,"node":160,"role":"declaration","source":0,"src_end":437073,"src_start":436392},{"artifact":0,"gen_end":544349,"gen_start":544149,"node":161,"role":"declaration","source":0,"src_end":437307,"src_start":437075},{"artifact":0,"gen_end":544474,"gen_start":544349,"node":162,"role":"declaration","source":0,"src_end":437523,"src_start":437309},{"artifact":0,"gen_end":547049,"gen_start":544474,"node":163,"role":"declaration","source":0,"src_end":439549,"src_start":437525},{"artifact":0,"gen_end":547282,"gen_start":547049,"node":164,"role":"declaration","source":0,"src_end":439810,"src_start":439551},{"artifact":0,"gen_end":547436,"gen_start":547282,"node":165,"role":"declaration","source":0,"src_end":440045,"src_start":439812},{"artifact":0,"gen_end":547666,"gen_start":547436,"node":166,"role":"declaration","source":0,"src_end":440336,"src_start":440047},{"artifact":0,"gen_end":552599,"gen_start":547666,"node":167,"role":"declaration","source":0,"src_end":444150,"src_start":440338},{"artifact":0,"gen_end":552843,"gen_start":552599,"node":168,"role":"declaration","source":0,"src_end":444422,"src_start":444152},{"artifact":0,"gen_end":553093,"gen_start":552843,"node":169,"role":"declaration","source":0,"src_end":444735,"src_start":444424},{"artifact":0,"gen_end":553673,"gen_start":553093,"node":170,"role":"declaration","source":0,"src_end":445365,"src_start":444737},{"artifact":0,"gen_end":558613,"gen_start":553673,"node":171,"role":"declaration","source":0,"src_end":449186,"src_start":445367},{"artifact":0,"gen_end":558870,"gen_start":558613,"node":172,"role":"declaration","source":0,"src_end":449471,"src_start":449188},{"artifact":0,"gen_end":559134,"gen_start":558870,"node":173,"role":"declaration","source":0,"src_end":449798,"src_start":449473},{"artifact":0,"gen_end":559725,"gen_start":559134,"node":174,"role":"declaration","source":0,"src_end":450439,"src_start":449800},{"artifact":0,"gen_end":560577,"gen_start":559725,"node":175,"role":"declaration","source":0,"src_end":451140,"src_start":450441},{"artifact":0,"gen_end":562831,"gen_start":560577,"node":176,"role":"declaration","source":0,"src_end":453134,"src_start":451142},{"artifact":0,"gen_end":564913,"gen_start":562831,"node":177,"role":"declaration","source":0,"src_end":455036,"src_start":453136},{"artifact":0,"gen_end":568109,"gen_start":564913,"node":178,"role":"declaration","source":0,"src_end":457573,"src_start":455038},{"artifact":0,"gen_end":568544,"gen_start":568109,"node":179,"role":"declaration","source":0,"src_end":457997,"src_start":457575},{"artifact":0,"gen_end":568700,"gen_start":568544,"node":180,"role":"declaration","source":0,"src_end":458234,"src_start":457999},{"artifact":0,"gen_end":569069,"gen_start":568700,"node":181,"role":"declaration","source":0,"src_end":458637,"src_start":458236},{"artifact":0,"gen_end":575516,"gen_start":569069,"node":182,"role":"declaration","source":0,"src_end":463681,"src_start":458639},{"artifact":0,"gen_end":575928,"gen_start":575516,"node":183,"role":"declaration","source":0,"src_end":464082,"src_start":463683},{"artifact":0,"gen_end":576933,"gen_start":575928,"node":184,"role":"declaration","source":0,"src_end":464988,"src_start":464084},{"artifact":0,"gen_end":583626,"gen_start":576933,"node":185,"role":"declaration","source":0,"src_end":470464,"src_start":464990},{"artifact":0,"gen_end":583814,"gen_start":583626,"node":186,"role":"declaration","source":0,"src_end":470686,"src_start":470466},{"artifact":0,"gen_end":585760,"gen_start":583814,"node":187,"role":"declaration","source":0,"src_end":472433,"src_start":470688},{"artifact":0,"gen_end":590280,"gen_start":585760,"node":188,"role":"declaration","source":0,"src_end":475937,"src_start":472435},{"artifact":0,"gen_end":590881,"gen_start":590280,"node":189,"role":"declaration","source":0,"src_end":476491,"src_start":475939},{"artifact":0,"gen_end":591045,"gen_start":590881,"node":190,"role":"declaration","source":0,"src_end":476736,"src_start":476493},{"artifact":0,"gen_end":591301,"gen_start":591045,"node":191,"role":"declaration","source":0,"src_end":477112,"src_start":476738},{"artifact":0,"gen_end":594687,"gen_start":591301,"node":192,"role":"declaration","source":0,"src_end":479803,"src_start":477114},{"artifact":0,"gen_end":595234,"gen_start":594687,"node":193,"role":"declaration","source":0,"src_end":480309,"src_start":479805},{"artifact":0,"gen_end":595388,"gen_start":595234,"node":194,"role":"declaration","source":0,"src_end":480544,"src_start":480311},{"artifact":0,"gen_end":595740,"gen_start":595388,"node":195,"role":"declaration","source":0,"src_end":481002,"src_start":480546},{"artifact":0,"gen_end":601351,"gen_start":595740,"node":196,"role":"declaration","source":0,"src_end":485403,"src_start":481004},{"artifact":0,"gen_end":601999,"gen_start":601351,"node":197,"role":"declaration","source":0,"src_end":485998,"src_start":485405},{"artifact":0,"gen_end":602603,"gen_start":601999,"node":198,"role":"declaration","source":0,"src_end":486590,"src_start":486000},{"artifact":0,"gen_end":602992,"gen_start":602603,"node":199,"role":"declaration","source":0,"src_end":487052,"src_start":486592},{"artifact":0,"gen_end":608607,"gen_start":602992,"node":200,"role":"declaration","source":0,"src_end":491457,"src_start":487054},{"artifact":0,"gen_end":609263,"gen_start":608607,"node":201,"role":"declaration","source":0,"src_end":492060,"src_start":491459},{"artifact":0,"gen_end":609875,"gen_start":609263,"node":202,"role":"declaration","source":0,"src_end":492660,"src_start":492062},{"artifact":0,"gen_end":610272,"gen_start":609875,"node":203,"role":"declaration","source":0,"src_end":493130,"src_start":492662},{"artifact":0,"gen_end":615890,"gen_start":610272,"node":204,"role":"declaration","source":0,"src_end":497538,"src_start":493132},{"artifact":0,"gen_end":616552,"gen_start":615890,"node":205,"role":"declaration","source":0,"src_end":498147,"src_start":497540},{"artifact":0,"gen_end":617036,"gen_start":616552,"node":206,"role":"declaration","source":0,"src_end":498643,"src_start":498149},{"artifact":0,"gen_end":617439,"gen_start":617036,"node":207,"role":"declaration","source":0,"src_end":499119,"src_start":498645},{"artifact":0,"gen_end":619622,"gen_start":617439,"node":208,"role":"declaration","source":0,"src_end":500822,"src_start":499121},{"artifact":0,"gen_end":620169,"gen_start":619622,"node":209,"role":"declaration","source":0,"src_end":501328,"src_start":500824},{"artifact":0,"gen_end":620459,"gen_start":620169,"node":210,"role":"declaration","source":0,"src_end":501666,"src_start":501330},{"artifact":0,"gen_end":620745,"gen_start":620459,"node":211,"role":"declaration","source":0,"src_end":502061,"src_start":501668},{"artifact":0,"gen_end":624064,"gen_start":620745,"node":212,"role":"declaration","source":0,"src_end":504649,"src_start":502063},{"artifact":0,"gen_end":624661,"gen_start":624064,"node":213,"role":"declaration","source":0,"src_end":505199,"src_start":504651},{"artifact":0,"gen_end":624862,"gen_start":624661,"node":214,"role":"declaration","source":0,"src_end":505473,"src_start":505201},{"artifact":0,"gen_end":625262,"gen_start":624862,"node":215,"role":"declaration","source":0,"src_end":505990,"src_start":505475},{"artifact":0,"gen_end":628587,"gen_start":625262,"node":216,"role":"declaration","source":0,"src_end":508584,"src_start":505992},{"artifact":0,"gen_end":629196,"gen_start":628587,"node":217,"role":"declaration","source":0,"src_end":509146,"src_start":508586},{"artifact":0,"gen_end":629361,"gen_start":629196,"node":218,"role":"declaration","source":0,"src_end":509394,"src_start":509148},{"artifact":0,"gen_end":629773,"gen_start":629361,"node":219,"role":"declaration","source":0,"src_end":509923,"src_start":509396},{"artifact":0,"gen_end":633357,"gen_start":629773,"node":220,"role":"declaration","source":0,"src_end":512727,"src_start":509925},{"artifact":0,"gen_end":633954,"gen_start":633357,"node":221,"role":"declaration","source":0,"src_end":513277,"src_start":512729},{"artifact":0,"gen_end":634290,"gen_start":633954,"node":222,"role":"declaration","source":0,"src_end":513649,"src_start":513279},{"artifact":0,"gen_end":634673,"gen_start":634290,"node":223,"role":"declaration","source":0,"src_end":514107,"src_start":513651},{"artifact":0,"gen_end":638263,"gen_start":634673,"node":224,"role":"declaration","source":0,"src_end":516917,"src_start":514109},{"artifact":0,"gen_end":638872,"gen_start":638263,"node":225,"role":"declaration","source":0,"src_end":517479,"src_start":516919},{"artifact":0,"gen_end":639354,"gen_start":638872,"node":226,"role":"declaration","source":0,"src_end":517973,"src_start":517481},{"artifact":0,"gen_end":639749,"gen_start":639354,"node":227,"role":"declaration","source":0,"src_end":518443,"src_start":517975},{"artifact":0,"gen_end":641950,"gen_start":639749,"node":228,"role":"declaration","source":0,"src_end":520164,"src_start":518445},{"artifact":0,"gen_end":642501,"gen_start":641950,"node":229,"role":"declaration","source":0,"src_end":520674,"src_start":520166},{"artifact":0,"gen_end":642805,"gen_start":642501,"node":230,"role":"declaration","source":0,"src_end":521026,"src_start":520676},{"artifact":0,"gen_end":643103,"gen_start":642805,"node":231,"role":"declaration","source":0,"src_end":521433,"src_start":521028},{"artifact":0,"gen_end":657113,"gen_start":643103,"node":232,"role":"declaration","source":0,"src_end":532181,"src_start":521435},{"artifact":0,"gen_end":657714,"gen_start":657113,"node":233,"role":"declaration","source":0,"src_end":532741,"src_start":532183},{"artifact":0,"gen_end":658750,"gen_start":657714,"node":234,"role":"declaration","source":0,"src_end":533667,"src_start":532743},{"artifact":0,"gen_end":668664,"gen_start":658750,"node":235,"role":"declaration","source":0,"src_end":541388,"src_start":533669},{"artifact":0,"gen_end":668862,"gen_start":668664,"node":236,"role":"declaration","source":0,"src_end":541620,"src_start":541390},{"artifact":0,"gen_end":669893,"gen_start":668862,"node":237,"role":"declaration","source":0,"src_end":542588,"src_start":541622},{"artifact":0,"gen_end":670715,"gen_start":669893,"node":238,"role":"declaration","source":0,"src_end":543255,"src_start":542590},{"artifact":0,"gen_end":670915,"gen_start":670715,"node":239,"role":"declaration","source":0,"src_end":543489,"src_start":543257},{"artifact":0,"gen_end":671040,"gen_start":670915,"node":240,"role":"declaration","source":0,"src_end":543705,"src_start":543491},{"artifact":0,"gen_end":671861,"gen_start":671040,"node":241,"role":"declaration","source":0,"src_end":544371,"src_start":543707},{"artifact":0,"gen_end":672061,"gen_start":671861,"node":242,"role":"declaration","source":0,"src_end":544605,"src_start":544373},{"artifact":0,"gen_end":672186,"gen_start":672061,"node":243,"role":"declaration","source":0,"src_end":544821,"src_start":544607},{"artifact":0,"gen_end":673264,"gen_start":672186,"node":244,"role":"declaration","source":0,"src_end":545687,"src_start":544823},{"artifact":0,"gen_end":673470,"gen_start":673264,"node":245,"role":"declaration","source":0,"src_end":545927,"src_start":545689},{"artifact":0,"gen_end":673601,"gen_start":673470,"node":246,"role":"declaration","source":0,"src_end":546149,"src_start":545929},{"artifact":0,"gen_end":674338,"gen_start":673601,"node":247,"role":"declaration","source":0,"src_end":546745,"src_start":546151},{"artifact":0,"gen_end":674540,"gen_start":674338,"node":248,"role":"declaration","source":0,"src_end":546981,"src_start":546747},{"artifact":0,"gen_end":674667,"gen_start":674540,"node":249,"role":"declaration","source":0,"src_end":547199,"src_start":546983},{"artifact":0,"gen_end":692365,"gen_start":674667,"node":250,"role":"declaration","source":0,"src_end":560813,"src_start":547201},{"artifact":0,"gen_end":692553,"gen_start":692365,"node":251,"role":"declaration","source":0,"src_end":561035,"src_start":560815},{"artifact":0,"gen_end":693604,"gen_start":692553,"node":252,"role":"declaration","source":0,"src_end":562011,"src_start":561037},{"artifact":0,"gen_end":695652,"gen_start":693604,"node":253,"role":"declaration","source":0,"src_end":563607,"src_start":562013},{"artifact":0,"gen_end":696164,"gen_start":695652,"node":254,"role":"declaration","source":0,"src_end":564088,"src_start":563609},{"artifact":0,"gen_end":696335,"gen_start":696164,"node":255,"role":"declaration","source":0,"src_end":564340,"src_start":564090},{"artifact":0,"gen_end":698274,"gen_start":696335,"node":256,"role":"declaration","source":0,"src_end":565874,"src_start":564342},{"artifact":0,"gen_end":698704,"gen_start":698274,"node":257,"role":"declaration","source":0,"src_end":566291,"src_start":565876},{"artifact":0,"gen_end":699033,"gen_start":698704,"node":258,"role":"declaration","source":0,"src_end":566665,"src_start":566293},{"artifact":0,"gen_end":701791,"gen_start":699033,"node":259,"role":"declaration","source":0,"src_end":568802,"src_start":566667},{"artifact":0,"gen_end":702262,"gen_start":701791,"node":260,"role":"declaration","source":0,"src_end":569256,"src_start":568804},{"artifact":0,"gen_end":702426,"gen_start":702262,"node":261,"role":"declaration","source":0,"src_end":569501,"src_start":569258},{"artifact":0,"gen_end":702655,"gen_start":702426,"node":262,"role":"declaration","source":0,"src_end":569828,"src_start":569503},{"artifact":0,"gen_end":705419,"gen_start":702655,"node":263,"role":"declaration","source":0,"src_end":571971,"src_start":569830},{"artifact":0,"gen_end":705902,"gen_start":705419,"node":264,"role":"declaration","source":0,"src_end":572437,"src_start":571973},{"artifact":0,"gen_end":706079,"gen_start":705902,"node":265,"role":"declaration","source":0,"src_end":572695,"src_start":572439},{"artifact":0,"gen_end":706320,"gen_start":706079,"node":266,"role":"declaration","source":0,"src_end":573034,"src_start":572697},{"artifact":0,"gen_end":710993,"gen_start":706320,"node":267,"role":"declaration","source":0,"src_end":576645,"src_start":573036},{"artifact":0,"gen_end":711652,"gen_start":710993,"node":268,"role":"declaration","source":0,"src_end":577248,"src_start":576647},{"artifact":0,"gen_end":711955,"gen_start":711652,"node":269,"role":"declaration","source":0,"src_end":577599,"src_start":577250},{"artifact":0,"gen_end":712308,"gen_start":711955,"node":270,"role":"declaration","source":0,"src_end":578043,"src_start":577601},{"artifact":0,"gen_end":715270,"gen_start":712308,"node":271,"role":"declaration","source":0,"src_end":580389,"src_start":578045},{"artifact":0,"gen_end":715687,"gen_start":715270,"node":272,"role":"declaration","source":0,"src_end":580795,"src_start":580391},{"artifact":0,"gen_end":715842,"gen_start":715687,"node":273,"role":"declaration","source":0,"src_end":581031,"src_start":580797},{"artifact":0,"gen_end":716156,"gen_start":715842,"node":274,"role":"declaration","source":0,"src_end":581427,"src_start":581033},{"artifact":0,"gen_end":719606,"gen_start":716156,"node":275,"role":"declaration","source":0,"src_end":584119,"src_start":581429},{"artifact":0,"gen_end":719998,"gen_start":719606,"node":276,"role":"declaration","source":0,"src_end":584506,"src_start":584121},{"artifact":0,"gen_end":720309,"gen_start":719998,"node":277,"role":"declaration","source":0,"src_end":584865,"src_start":584508},{"artifact":0,"gen_end":720639,"gen_start":720309,"node":278,"role":"declaration","source":0,"src_end":585264,"src_start":584867},{"artifact":0,"gen_end":724076,"gen_start":720639,"node":279,"role":"declaration","source":0,"src_end":587943,"src_start":585266},{"artifact":0,"gen_end":724529,"gen_start":724076,"node":280,"role":"declaration","source":0,"src_end":588385,"src_start":587945},{"artifact":0,"gen_end":724901,"gen_start":724529,"node":281,"role":"declaration","source":0,"src_end":588799,"src_start":588387},{"artifact":0,"gen_end":725247,"gen_start":724901,"node":282,"role":"declaration","source":0,"src_end":589214,"src_start":588801},{"artifact":0,"gen_end":729189,"gen_start":725247,"node":283,"role":"declaration","source":0,"src_end":592302,"src_start":589216},{"artifact":0,"gen_end":729646,"gen_start":729189,"node":284,"role":"declaration","source":0,"src_end":592748,"src_start":592304},{"artifact":0,"gen_end":730022,"gen_start":729646,"node":285,"role":"declaration","source":0,"src_end":593166,"src_start":592750},{"artifact":0,"gen_end":730377,"gen_start":730022,"node":286,"role":"declaration","source":0,"src_end":593590,"src_start":593168},{"artifact":0,"gen_end":733814,"gen_start":730377,"node":287,"role":"declaration","source":0,"src_end":596269,"src_start":593592},{"artifact":0,"gen_end":734287,"gen_start":733814,"node":288,"role":"declaration","source":0,"src_end":596725,"src_start":596271},{"artifact":0,"gen_end":734679,"gen_start":734287,"node":289,"role":"declaration","source":0,"src_end":597153,"src_start":596727},{"artifact":0,"gen_end":735002,"gen_start":734679,"node":290,"role":"declaration","source":0,"src_end":597545,"src_start":597155},{"artifact":0,"gen_end":739355,"gen_start":735002,"node":291,"role":"declaration","source":0,"src_end":600948,"src_start":597547},{"artifact":0,"gen_end":740054,"gen_start":739355,"node":292,"role":"declaration","source":0,"src_end":601582,"src_start":600950},{"artifact":0,"gen_end":740672,"gen_start":740054,"node":293,"role":"declaration","source":0,"src_end":602188,"src_start":601584},{"artifact":0,"gen_end":741081,"gen_start":740672,"node":294,"role":"declaration","source":0,"src_end":602645,"src_start":602190},{"artifact":0,"gen_end":744557,"gen_start":741081,"node":295,"role":"declaration","source":0,"src_end":605363,"src_start":602647},{"artifact":0,"gen_end":745006,"gen_start":744557,"node":296,"role":"declaration","source":0,"src_end":605801,"src_start":605365},{"artifact":0,"gen_end":745374,"gen_start":745006,"node":297,"role":"declaration","source":0,"src_end":606211,"src_start":605803},{"artifact":0,"gen_end":745719,"gen_start":745374,"node":298,"role":"declaration","source":0,"src_end":606625,"src_start":606213},{"artifact":0,"gen_end":750394,"gen_start":745719,"node":299,"role":"declaration","source":0,"src_end":610238,"src_start":606627},{"artifact":0,"gen_end":751057,"gen_start":750394,"node":300,"role":"declaration","source":0,"src_end":610845,"src_start":610240},{"artifact":0,"gen_end":751318,"gen_start":751057,"node":301,"role":"declaration","source":0,"src_end":611160,"src_start":610847},{"artifact":0,"gen_end":751677,"gen_start":751318,"node":302,"role":"declaration","source":0,"src_end":611610,"src_start":611162},{"artifact":0,"gen_end":754613,"gen_start":751677,"node":303,"role":"declaration","source":0,"src_end":613902,"src_start":611612},{"artifact":0,"gen_end":755080,"gen_start":754613,"node":304,"role":"declaration","source":0,"src_end":614352,"src_start":613904},{"artifact":0,"gen_end":755374,"gen_start":755080,"node":305,"role":"declaration","source":0,"src_end":614694,"src_start":614354},{"artifact":0,"gen_end":755691,"gen_start":755374,"node":306,"role":"declaration","source":0,"src_end":615080,"src_start":614696},{"artifact":0,"gen_end":758633,"gen_start":755691,"node":307,"role":"declaration","source":0,"src_end":617378,"src_start":615082},{"artifact":0,"gen_end":759112,"gen_start":758633,"node":308,"role":"declaration","source":0,"src_end":617840,"src_start":617380},{"artifact":0,"gen_end":759464,"gen_start":759112,"node":309,"role":"declaration","source":0,"src_end":618234,"src_start":617842},{"artifact":0,"gen_end":759793,"gen_start":759464,"node":310,"role":"declaration","source":0,"src_end":618632,"src_start":618236},{"artifact":0,"gen_end":764434,"gen_start":759793,"node":311,"role":"declaration","source":0,"src_end":622247,"src_start":618634},{"artifact":0,"gen_end":765083,"gen_start":764434,"node":312,"role":"declaration","source":0,"src_end":622840,"src_start":622249},{"artifact":0,"gen_end":765514,"gen_start":765083,"node":313,"role":"declaration","source":0,"src_end":623301,"src_start":622842},{"artifact":0,"gen_end":765852,"gen_start":765514,"node":314,"role":"declaration","source":0,"src_end":623730,"src_start":623303},{"artifact":0,"gen_end":774593,"gen_start":765852,"node":315,"role":"declaration","source":0,"src_end":630646,"src_start":623732},{"artifact":0,"gen_end":774789,"gen_start":774593,"node":316,"role":"declaration","source":0,"src_end":630876,"src_start":630648},{"artifact":0,"gen_end":776268,"gen_start":774789,"node":317,"role":"declaration","source":0,"src_end":632082,"src_start":630878},{"artifact":0,"gen_end":776512,"gen_start":776268,"node":318,"role":"declaration","source":0,"src_end":632354,"src_start":632084},{"artifact":0,"gen_end":776825,"gen_start":776512,"node":319,"role":"declaration","source":0,"src_end":632730,"src_start":632356},{"artifact":0,"gen_end":778267,"gen_start":776825,"node":320,"role":"declaration","source":0,"src_end":633854,"src_start":632732},{"artifact":0,"gen_end":778497,"gen_start":778267,"node":321,"role":"declaration","source":0,"src_end":634112,"src_start":633856},{"artifact":0,"gen_end":778647,"gen_start":778497,"node":322,"role":"declaration","source":0,"src_end":634343,"src_start":634114},{"artifact":0,"gen_end":780098,"gen_start":778647,"node":323,"role":"declaration","source":0,"src_end":635476,"src_start":634345},{"artifact":0,"gen_end":780344,"gen_start":780098,"node":324,"role":"declaration","source":0,"src_end":635750,"src_start":635478},{"artifact":0,"gen_end":780466,"gen_start":780344,"node":325,"role":"declaration","source":0,"src_end":635965,"src_start":635752},{"artifact":0,"gen_end":786019,"gen_start":780466,"node":326,"role":"declaration","source":0,"src_end":640246,"src_start":635967},{"artifact":0,"gen_end":786261,"gen_start":786019,"node":327,"role":"declaration","source":0,"src_end":640516,"src_start":640248},{"artifact":0,"gen_end":786700,"gen_start":786261,"node":328,"role":"declaration","source":0,"src_end":640982,"src_start":640518},{"artifact":0,"gen_end":793439,"gen_start":786700,"node":329,"role":"declaration","source":0,"src_end":646140,"src_start":640984},{"artifact":0,"gen_end":793720,"gen_start":793439,"node":330,"role":"declaration","source":0,"src_end":646445,"src_start":646142},{"artifact":0,"gen_end":793995,"gen_start":793720,"node":331,"role":"declaration","source":0,"src_end":646779,"src_start":646447},{"artifact":0,"gen_end":802125,"gen_start":793995,"node":332,"role":"declaration","source":0,"src_end":653341,"src_start":646781},{"artifact":0,"gen_end":802363,"gen_start":802125,"node":333,"role":"declaration","source":0,"src_end":653607,"src_start":653343},{"artifact":0,"gen_end":802763,"gen_start":802363,"node":334,"role":"declaration","source":0,"src_end":654038,"src_start":653609},{"artifact":0,"gen_end":802797,"gen_start":802763,"node":0,"role":"declaration","source":0,"src_end":654074,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":335,"role":"declaration","source":0,"src_end":654074,"src_start":0},{"artifact":1,"gen_end":4662,"gen_start":134,"node":336,"role":"declaration","source":0,"src_end":3550,"src_start":210},{"artifact":1,"gen_end":5047,"gen_start":4662,"node":337,"role":"declaration","source":0,"src_end":3782,"src_start":3552},{"artifact":1,"gen_end":5362,"gen_start":5047,"node":338,"role":"declaration","source":0,"src_end":4028,"src_start":3784},{"artifact":1,"gen_end":11423,"gen_start":5362,"node":339,"role":"declaration","source":0,"src_end":8546,"src_start":4030},{"artifact":1,"gen_end":11860,"gen_start":11423,"node":340,"role":"declaration","source":0,"src_end":8824,"src_start":8548},{"artifact":1,"gen_end":12536,"gen_start":11860,"node":341,"role":"declaration","source":0,"src_end":9359,"src_start":8826},{"artifact":1,"gen_end":23711,"gen_start":12536,"node":342,"role":"declaration","source":0,"src_end":17744,"src_start":9361},{"artifact":1,"gen_end":24243,"gen_start":23711,"node":343,"role":"declaration","source":0,"src_end":18105,"src_start":17746},{"artifact":1,"gen_end":25244,"gen_start":24243,"node":344,"role":"declaration","source":0,"src_end":18893,"src_start":18107},{"artifact":1,"gen_end":28814,"gen_start":25244,"node":345,"role":"declaration","source":0,"src_end":21516,"src_start":18895},{"artifact":1,"gen_end":29290,"gen_start":28814,"node":346,"role":"declaration","source":0,"src_end":21827,"src_start":21518},{"artifact":1,"gen_end":29894,"gen_start":29290,"node":347,"role":"declaration","source":0,"src_end":22311,"src_start":21829},{"artifact":1,"gen_end":31441,"gen_start":29894,"node":348,"role":"declaration","source":0,"src_end":23401,"src_start":22313},{"artifact":1,"gen_end":32185,"gen_start":31441,"node":349,"role":"declaration","source":0,"src_end":23910,"src_start":23403},{"artifact":1,"gen_end":32492,"gen_start":32185,"node":350,"role":"declaration","source":0,"src_end":24148,"src_start":23912},{"artifact":1,"gen_end":35867,"gen_start":32492,"node":351,"role":"declaration","source":0,"src_end":26592,"src_start":24150},{"artifact":1,"gen_end":36248,"gen_start":35867,"node":352,"role":"declaration","source":0,"src_end":26820,"src_start":26594},{"artifact":1,"gen_end":42499,"gen_start":36248,"node":353,"role":"declaration","source":0,"src_end":31444,"src_start":26822},{"artifact":1,"gen_end":42876,"gen_start":42499,"node":354,"role":"declaration","source":0,"src_end":31668,"src_start":31446},{"artifact":1,"gen_end":46094,"gen_start":42876,"node":355,"role":"declaration","source":0,"src_end":34045,"src_start":31670},{"artifact":1,"gen_end":46473,"gen_start":46094,"node":356,"role":"declaration","source":0,"src_end":34271,"src_start":34047},{"artifact":1,"gen_end":47084,"gen_start":46473,"node":357,"role":"declaration","source":0,"src_end":34728,"src_start":34273},{"artifact":1,"gen_end":54281,"gen_start":47084,"node":358,"role":"declaration","source":0,"src_end":40112,"src_start":34730},{"artifact":1,"gen_end":54664,"gen_start":54281,"node":359,"role":"declaration","source":0,"src_end":40342,"src_start":40114},{"artifact":1,"gen_end":55764,"gen_start":54664,"node":360,"role":"declaration","source":0,"src_end":41184,"src_start":40344},{"artifact":1,"gen_end":58237,"gen_start":55764,"node":361,"role":"declaration","source":0,"src_end":43042,"src_start":41186},{"artifact":1,"gen_end":58765,"gen_start":58237,"node":362,"role":"declaration","source":0,"src_end":43399,"src_start":43044},{"artifact":1,"gen_end":59085,"gen_start":58765,"node":363,"role":"declaration","source":0,"src_end":43650,"src_start":43401},{"artifact":1,"gen_end":62888,"gen_start":59085,"node":364,"role":"declaration","source":0,"src_end":46530,"src_start":43652},{"artifact":1,"gen_end":63376,"gen_start":62888,"node":365,"role":"declaration","source":0,"src_end":46853,"src_start":46532},{"artifact":1,"gen_end":63778,"gen_start":63376,"node":366,"role":"declaration","source":0,"src_end":47168,"src_start":46855},{"artifact":1,"gen_end":65567,"gen_start":63778,"node":367,"role":"declaration","source":0,"src_end":48492,"src_start":47170},{"artifact":1,"gen_end":66045,"gen_start":65567,"node":368,"role":"declaration","source":0,"src_end":48805,"src_start":48494},{"artifact":1,"gen_end":66361,"gen_start":66045,"node":369,"role":"declaration","source":0,"src_end":49052,"src_start":48807},{"artifact":1,"gen_end":69185,"gen_start":66361,"node":370,"role":"declaration","source":0,"src_end":51097,"src_start":49054},{"artifact":1,"gen_end":69622,"gen_start":69185,"node":371,"role":"declaration","source":0,"src_end":51375,"src_start":51099},{"artifact":1,"gen_end":69942,"gen_start":69622,"node":372,"role":"declaration","source":0,"src_end":51626,"src_start":51377},{"artifact":1,"gen_end":72656,"gen_start":69942,"node":373,"role":"declaration","source":0,"src_end":53608,"src_start":51628},{"artifact":1,"gen_end":73097,"gen_start":72656,"node":374,"role":"declaration","source":0,"src_end":53890,"src_start":53610},{"artifact":1,"gen_end":73420,"gen_start":73097,"node":375,"role":"declaration","source":0,"src_end":54144,"src_start":53892},{"artifact":1,"gen_end":74803,"gen_start":73420,"node":376,"role":"declaration","source":0,"src_end":55131,"src_start":54146},{"artifact":1,"gen_end":75232,"gen_start":74803,"node":377,"role":"declaration","source":0,"src_end":55401,"src_start":55133},{"artifact":1,"gen_end":75642,"gen_start":75232,"node":378,"role":"declaration","source":0,"src_end":55713,"src_start":55403},{"artifact":1,"gen_end":78829,"gen_start":75642,"node":379,"role":"declaration","source":0,"src_end":58081,"src_start":55715},{"artifact":1,"gen_end":79481,"gen_start":78829,"node":380,"role":"declaration","source":0,"src_end":58529,"src_start":58083},{"artifact":1,"gen_end":79972,"gen_start":79481,"node":381,"role":"declaration","source":0,"src_end":58912,"src_start":58531},{"artifact":1,"gen_end":84554,"gen_start":79972,"node":382,"role":"declaration","source":0,"src_end":62449,"src_start":58914},{"artifact":1,"gen_end":84927,"gen_start":84554,"node":383,"role":"declaration","source":0,"src_end":62669,"src_start":62451},{"artifact":1,"gen_end":85873,"gen_start":84927,"node":384,"role":"declaration","source":0,"src_end":63451,"src_start":62671},{"artifact":1,"gen_end":96993,"gen_start":85873,"node":385,"role":"declaration","source":0,"src_end":71974,"src_start":63453},{"artifact":1,"gen_end":97366,"gen_start":96993,"node":386,"role":"declaration","source":0,"src_end":72194,"src_start":71976},{"artifact":1,"gen_end":98305,"gen_start":97366,"node":387,"role":"declaration","source":0,"src_end":72834,"src_start":72196},{"artifact":1,"gen_end":98694,"gen_start":98305,"node":388,"role":"declaration","source":0,"src_end":73070,"src_start":72836},{"artifact":1,"gen_end":99659,"gen_start":98694,"node":389,"role":"declaration","source":0,"src_end":73736,"src_start":73072},{"artifact":1,"gen_end":100056,"gen_start":99659,"node":390,"role":"declaration","source":0,"src_end":73980,"src_start":73738},{"artifact":1,"gen_end":105663,"gen_start":100056,"node":391,"role":"declaration","source":0,"src_end":78216,"src_start":73982},{"artifact":1,"gen_end":106038,"gen_start":105663,"node":392,"role":"declaration","source":0,"src_end":78438,"src_start":78218},{"artifact":1,"gen_end":106741,"gen_start":106038,"node":393,"role":"declaration","source":0,"src_end":79009,"src_start":78440},{"artifact":1,"gen_end":108666,"gen_start":106741,"node":394,"role":"declaration","source":0,"src_end":80400,"src_start":79011},{"artifact":1,"gen_end":109115,"gen_start":108666,"node":395,"role":"declaration","source":0,"src_end":80690,"src_start":80402},{"artifact":1,"gen_end":109451,"gen_start":109115,"node":396,"role":"declaration","source":0,"src_end":80957,"src_start":80692},{"artifact":1,"gen_end":117105,"gen_start":109451,"node":397,"role":"declaration","source":0,"src_end":86862,"src_start":80959},{"artifact":1,"gen_end":117494,"gen_start":117105,"node":398,"role":"declaration","source":0,"src_end":87098,"src_start":86864},{"artifact":1,"gen_end":118581,"gen_start":117494,"node":399,"role":"declaration","source":0,"src_end":87978,"src_start":87100},{"artifact":1,"gen_end":126205,"gen_start":118581,"node":400,"role":"declaration","source":0,"src_end":93861,"src_start":87980},{"artifact":1,"gen_end":126598,"gen_start":126205,"node":401,"role":"declaration","source":0,"src_end":94101,"src_start":93863},{"artifact":1,"gen_end":127598,"gen_start":126598,"node":402,"role":"declaration","source":0,"src_end":94912,"src_start":94103},{"artifact":1,"gen_end":140962,"gen_start":127598,"node":403,"role":"declaration","source":0,"src_end":105303,"src_start":94914},{"artifact":1,"gen_end":141357,"gen_start":140962,"node":404,"role":"declaration","source":0,"src_end":105545,"src_start":105305},{"artifact":1,"gen_end":142958,"gen_start":141357,"node":405,"role":"declaration","source":0,"src_end":106810,"src_start":105547},{"artifact":1,"gen_end":151261,"gen_start":142958,"node":406,"role":"declaration","source":0,"src_end":113236,"src_start":106812},{"artifact":1,"gen_end":151656,"gen_start":151261,"node":407,"role":"declaration","source":0,"src_end":113478,"src_start":113238},{"artifact":1,"gen_end":152667,"gen_start":151656,"node":408,"role":"declaration","source":0,"src_end":114319,"src_start":113480},{"artifact":1,"gen_end":163905,"gen_start":152667,"node":409,"role":"declaration","source":0,"src_end":123112,"src_start":114321},{"artifact":1,"gen_end":164296,"gen_start":163905,"node":410,"role":"declaration","source":0,"src_end":123350,"src_start":123114},{"artifact":1,"gen_end":165596,"gen_start":164296,"node":411,"role":"declaration","source":0,"src_end":124433,"src_start":123352},{"artifact":1,"gen_end":167240,"gen_start":165596,"node":412,"role":"declaration","source":0,"src_end":125634,"src_start":124435},{"artifact":1,"gen_end":167745,"gen_start":167240,"node":413,"role":"declaration","source":0,"src_end":125974,"src_start":125636},{"artifact":1,"gen_end":169389,"gen_start":167745,"node":414,"role":"declaration","source":0,"src_end":127175,"src_start":125976},{"artifact":1,"gen_end":169904,"gen_start":169389,"node":415,"role":"declaration","source":0,"src_end":127525,"src_start":127177},{"artifact":1,"gen_end":171548,"gen_start":169904,"node":416,"role":"declaration","source":0,"src_end":128726,"src_start":127527},{"artifact":1,"gen_end":172081,"gen_start":171548,"node":417,"role":"declaration","source":0,"src_end":129094,"src_start":128728},{"artifact":1,"gen_end":173720,"gen_start":172081,"node":418,"role":"declaration","source":0,"src_end":130290,"src_start":129096},{"artifact":1,"gen_end":174217,"gen_start":173720,"node":419,"role":"declaration","source":0,"src_end":130622,"src_start":130292},{"artifact":1,"gen_end":175861,"gen_start":174217,"node":420,"role":"declaration","source":0,"src_end":131823,"src_start":130624},{"artifact":1,"gen_end":176362,"gen_start":175861,"node":421,"role":"declaration","source":0,"src_end":132159,"src_start":131825},{"artifact":1,"gen_end":178006,"gen_start":176362,"node":422,"role":"declaration","source":0,"src_end":133360,"src_start":132161},{"artifact":1,"gen_end":178512,"gen_start":178006,"node":423,"role":"declaration","source":0,"src_end":133701,"src_start":133362},{"artifact":1,"gen_end":180156,"gen_start":178512,"node":424,"role":"declaration","source":0,"src_end":134902,"src_start":133703},{"artifact":1,"gen_end":180672,"gen_start":180156,"node":425,"role":"declaration","source":0,"src_end":135253,"src_start":134904},{"artifact":1,"gen_end":182311,"gen_start":180672,"node":426,"role":"declaration","source":0,"src_end":136449,"src_start":135255},{"artifact":1,"gen_end":182806,"gen_start":182311,"node":427,"role":"declaration","source":0,"src_end":136779,"src_start":136451},{"artifact":1,"gen_end":205438,"gen_start":182806,"node":428,"role":"declaration","source":0,"src_end":154522,"src_start":136781},{"artifact":1,"gen_end":206001,"gen_start":205438,"node":429,"role":"declaration","source":0,"src_end":154914,"src_start":154524},{"artifact":1,"gen_end":207871,"gen_start":206001,"node":430,"role":"declaration","source":0,"src_end":156415,"src_start":154916},{"artifact":1,"gen_end":230503,"gen_start":207871,"node":431,"role":"declaration","source":0,"src_end":174158,"src_start":156417},{"artifact":1,"gen_end":231076,"gen_start":230503,"node":432,"role":"declaration","source":0,"src_end":174560,"src_start":174160},{"artifact":1,"gen_end":232961,"gen_start":231076,"node":433,"role":"declaration","source":0,"src_end":176076,"src_start":174562},{"artifact":1,"gen_end":255593,"gen_start":232961,"node":434,"role":"declaration","source":0,"src_end":193819,"src_start":176078},{"artifact":1,"gen_end":256184,"gen_start":255593,"node":435,"role":"declaration","source":0,"src_end":194239,"src_start":193821},{"artifact":1,"gen_end":258097,"gen_start":256184,"node":436,"role":"declaration","source":0,"src_end":195783,"src_start":194241},{"artifact":1,"gen_end":280620,"gen_start":258097,"node":437,"role":"declaration","source":0,"src_end":213417,"src_start":195785},{"artifact":1,"gen_end":281173,"gen_start":280620,"node":438,"role":"declaration","source":0,"src_end":213799,"src_start":213419},{"artifact":1,"gen_end":282962,"gen_start":281173,"node":439,"role":"declaration","source":0,"src_end":215229,"src_start":213801},{"artifact":1,"gen_end":303154,"gen_start":282962,"node":440,"role":"declaration","source":0,"src_end":231048,"src_start":215231},{"artifact":1,"gen_end":303714,"gen_start":303154,"node":441,"role":"declaration","source":0,"src_end":231437,"src_start":231050},{"artifact":1,"gen_end":305412,"gen_start":303714,"node":442,"role":"declaration","source":0,"src_end":232802,"src_start":231439},{"artifact":1,"gen_end":325604,"gen_start":305412,"node":443,"role":"declaration","source":0,"src_end":248621,"src_start":232804},{"artifact":1,"gen_end":326169,"gen_start":325604,"node":444,"role":"declaration","source":0,"src_end":249015,"src_start":248623},{"artifact":1,"gen_end":327892,"gen_start":326169,"node":445,"role":"declaration","source":0,"src_end":250405,"src_start":249017},{"artifact":1,"gen_end":348084,"gen_start":327892,"node":446,"role":"declaration","source":0,"src_end":266224,"src_start":250407},{"artifact":1,"gen_end":348659,"gen_start":348084,"node":447,"role":"declaration","source":0,"src_end":266628,"src_start":266226},{"artifact":1,"gen_end":350431,"gen_start":348659,"node":448,"role":"declaration","source":0,"src_end":268067,"src_start":266630},{"artifact":1,"gen_end":370528,"gen_start":350431,"node":449,"role":"declaration","source":0,"src_end":283791,"src_start":268069},{"artifact":1,"gen_end":371080,"gen_start":370528,"node":450,"role":"declaration","source":0,"src_end":284172,"src_start":283793},{"artifact":1,"gen_end":372695,"gen_start":371080,"node":451,"role":"declaration","source":0,"src_end":285464,"src_start":284174},{"artifact":1,"gen_end":390843,"gen_start":372695,"node":452,"role":"declaration","source":0,"src_end":299241,"src_start":285466},{"artifact":1,"gen_end":391230,"gen_start":390843,"node":453,"role":"declaration","source":0,"src_end":299475,"src_start":299243},{"artifact":1,"gen_end":392329,"gen_start":391230,"node":454,"role":"declaration","source":0,"src_end":300339,"src_start":299477},{"artifact":1,"gen_end":419711,"gen_start":392329,"node":455,"role":"declaration","source":0,"src_end":321194,"src_start":300341},{"artifact":1,"gen_end":421121,"gen_start":419711,"node":456,"role":"declaration","source":0,"src_end":322214,"src_start":321196},{"artifact":1,"gen_end":421669,"gen_start":421121,"node":457,"role":"declaration","source":0,"src_end":322648,"src_start":322216},{"artifact":1,"gen_end":422205,"gen_start":421669,"node":458,"role":"declaration","source":0,"src_end":323189,"src_start":322650},{"artifact":1,"gen_end":449593,"gen_start":422205,"node":459,"role":"declaration","source":0,"src_end":344050,"src_start":323191},{"artifact":1,"gen_end":451015,"gen_start":449593,"node":460,"role":"declaration","source":0,"src_end":345082,"src_start":344052},{"artifact":1,"gen_end":451436,"gen_start":451015,"node":461,"role":"declaration","source":0,"src_end":345407,"src_start":345084},{"artifact":1,"gen_end":451983,"gen_start":451436,"node":462,"role":"declaration","source":0,"src_end":345959,"src_start":345409},{"artifact":1,"gen_end":479370,"gen_start":451983,"node":463,"role":"declaration","source":0,"src_end":366819,"src_start":345961},{"artifact":1,"gen_end":480790,"gen_start":479370,"node":464,"role":"declaration","source":0,"src_end":367849,"src_start":366821},{"artifact":1,"gen_end":481256,"gen_start":480790,"node":465,"role":"declaration","source":0,"src_end":368213,"src_start":367851},{"artifact":1,"gen_end":481802,"gen_start":481256,"node":466,"role":"declaration","source":0,"src_end":368764,"src_start":368215},{"artifact":1,"gen_end":486841,"gen_start":481802,"node":467,"role":"declaration","source":0,"src_end":372530,"src_start":368766},{"artifact":1,"gen_end":488253,"gen_start":486841,"node":468,"role":"declaration","source":0,"src_end":373552,"src_start":372532},{"artifact":1,"gen_end":488709,"gen_start":488253,"node":469,"role":"declaration","source":0,"src_end":373906,"src_start":373554},{"artifact":1,"gen_end":489246,"gen_start":488709,"node":470,"role":"declaration","source":0,"src_end":374448,"src_start":373908},{"artifact":1,"gen_end":494291,"gen_start":489246,"node":471,"role":"declaration","source":0,"src_end":378220,"src_start":374450},{"artifact":1,"gen_end":495715,"gen_start":494291,"node":472,"role":"declaration","source":0,"src_end":379254,"src_start":378222},{"artifact":1,"gen_end":496092,"gen_start":495715,"node":473,"role":"declaration","source":0,"src_end":379541,"src_start":379256},{"artifact":1,"gen_end":496642,"gen_start":496092,"node":474,"role":"declaration","source":0,"src_end":380096,"src_start":379543},{"artifact":1,"gen_end":523330,"gen_start":496642,"node":475,"role":"declaration","source":0,"src_end":400342,"src_start":380098},{"artifact":1,"gen_end":524698,"gen_start":523330,"node":476,"role":"declaration","source":0,"src_end":401326,"src_start":400344},{"artifact":1,"gen_end":525290,"gen_start":524698,"node":477,"role":"declaration","source":0,"src_end":401796,"src_start":401328},{"artifact":1,"gen_end":525927,"gen_start":525290,"node":478,"role":"declaration","source":0,"src_end":402462,"src_start":401798},{"artifact":1,"gen_end":552620,"gen_start":525927,"node":479,"role":"declaration","source":0,"src_end":422713,"src_start":402464},{"artifact":1,"gen_end":553777,"gen_start":552620,"node":480,"role":"declaration","source":0,"src_end":423537,"src_start":422715},{"artifact":1,"gen_end":554106,"gen_start":553777,"node":481,"role":"declaration","source":0,"src_end":423799,"src_start":423539},{"artifact":1,"gen_end":554741,"gen_start":554106,"node":482,"role":"declaration","source":0,"src_end":424408,"src_start":423801},{"artifact":1,"gen_end":564291,"gen_start":554741,"node":483,"role":"declaration","source":0,"src_end":431829,"src_start":424410},{"artifact":1,"gen_end":564676,"gen_start":564291,"node":484,"role":"declaration","source":0,"src_end":432061,"src_start":431831},{"artifact":1,"gen_end":565768,"gen_start":564676,"node":485,"role":"declaration","source":0,"src_end":432985,"src_start":432063},{"artifact":1,"gen_end":566755,"gen_start":565768,"node":486,"role":"declaration","source":0,"src_end":433667,"src_start":432987},{"artifact":1,"gen_end":567142,"gen_start":566755,"node":487,"role":"declaration","source":0,"src_end":433901,"src_start":433669},{"artifact":1,"gen_end":567417,"gen_start":567142,"node":488,"role":"declaration","source":0,"src_end":434117,"src_start":433903},{"artifact":1,"gen_end":568275,"gen_start":567417,"node":489,"role":"declaration","source":0,"src_end":434692,"src_start":434119},{"artifact":1,"gen_end":568662,"gen_start":568275,"node":490,"role":"declaration","source":0,"src_end":434926,"src_start":434694},{"artifact":1,"gen_end":568937,"gen_start":568662,"node":491,"role":"declaration","source":0,"src_end":435142,"src_start":434928},{"artifact":1,"gen_end":570058,"gen_start":568937,"node":492,"role":"declaration","source":0,"src_end":435936,"src_start":435144},{"artifact":1,"gen_end":570447,"gen_start":570058,"node":493,"role":"declaration","source":0,"src_end":436172,"src_start":435938},{"artifact":1,"gen_end":570724,"gen_start":570447,"node":494,"role":"declaration","source":0,"src_end":436390,"src_start":436174},{"artifact":1,"gen_end":571712,"gen_start":570724,"node":495,"role":"declaration","source":0,"src_end":437073,"src_start":436392},{"artifact":1,"gen_end":572099,"gen_start":571712,"node":496,"role":"declaration","source":0,"src_end":437307,"src_start":437075},{"artifact":1,"gen_end":572374,"gen_start":572099,"node":497,"role":"declaration","source":0,"src_end":437523,"src_start":437309},{"artifact":1,"gen_end":575115,"gen_start":572374,"node":498,"role":"declaration","source":0,"src_end":439549,"src_start":437525},{"artifact":1,"gen_end":575535,"gen_start":575115,"node":499,"role":"declaration","source":0,"src_end":439810,"src_start":439551},{"artifact":1,"gen_end":575839,"gen_start":575535,"node":500,"role":"declaration","source":0,"src_end":440045,"src_start":439812},{"artifact":1,"gen_end":576219,"gen_start":575839,"node":501,"role":"declaration","source":0,"src_end":440336,"src_start":440047},{"artifact":1,"gen_end":581330,"gen_start":576219,"node":502,"role":"declaration","source":0,"src_end":444150,"src_start":440338},{"artifact":1,"gen_end":581761,"gen_start":581330,"node":503,"role":"declaration","source":0,"src_end":444422,"src_start":444152},{"artifact":1,"gen_end":582161,"gen_start":581761,"node":504,"role":"declaration","source":0,"src_end":444735,"src_start":444424},{"artifact":1,"gen_end":582891,"gen_start":582161,"node":505,"role":"declaration","source":0,"src_end":445365,"src_start":444737},{"artifact":1,"gen_end":588009,"gen_start":582891,"node":506,"role":"declaration","source":0,"src_end":449186,"src_start":445367},{"artifact":1,"gen_end":588453,"gen_start":588009,"node":507,"role":"declaration","source":0,"src_end":449471,"src_start":449188},{"artifact":1,"gen_end":588867,"gen_start":588453,"node":508,"role":"declaration","source":0,"src_end":449798,"src_start":449473},{"artifact":1,"gen_end":589608,"gen_start":588867,"node":509,"role":"declaration","source":0,"src_end":450439,"src_start":449800},{"artifact":1,"gen_end":590610,"gen_start":589608,"node":510,"role":"declaration","source":0,"src_end":451140,"src_start":450441},{"artifact":1,"gen_end":593051,"gen_start":590610,"node":511,"role":"declaration","source":0,"src_end":453134,"src_start":451142},{"artifact":1,"gen_end":595283,"gen_start":593051,"node":512,"role":"declaration","source":0,"src_end":455036,"src_start":453136},{"artifact":1,"gen_end":598645,"gen_start":595283,"node":513,"role":"declaration","source":0,"src_end":457573,"src_start":455038},{"artifact":1,"gen_end":599273,"gen_start":598645,"node":514,"role":"declaration","source":0,"src_end":457997,"src_start":457575},{"artifact":1,"gen_end":599579,"gen_start":599273,"node":515,"role":"declaration","source":0,"src_end":458234,"src_start":457999},{"artifact":1,"gen_end":600104,"gen_start":599579,"node":516,"role":"declaration","source":0,"src_end":458637,"src_start":458236},{"artifact":1,"gen_end":606701,"gen_start":600104,"node":517,"role":"declaration","source":0,"src_end":463681,"src_start":458639},{"artifact":1,"gen_end":607300,"gen_start":606701,"node":518,"role":"declaration","source":0,"src_end":464082,"src_start":463683},{"artifact":1,"gen_end":608455,"gen_start":607300,"node":519,"role":"declaration","source":0,"src_end":464988,"src_start":464084},{"artifact":1,"gen_end":615308,"gen_start":608455,"node":520,"role":"declaration","source":0,"src_end":470464,"src_start":464990},{"artifact":1,"gen_end":615683,"gen_start":615308,"node":521,"role":"declaration","source":0,"src_end":470686,"src_start":470466},{"artifact":1,"gen_end":617785,"gen_start":615683,"node":522,"role":"declaration","source":0,"src_end":472433,"src_start":470688},{"artifact":1,"gen_end":622495,"gen_start":617785,"node":523,"role":"declaration","source":0,"src_end":475937,"src_start":472435},{"artifact":1,"gen_end":623283,"gen_start":622495,"node":524,"role":"declaration","source":0,"src_end":476491,"src_start":475939},{"artifact":1,"gen_end":623597,"gen_start":623283,"node":525,"role":"declaration","source":0,"src_end":476736,"src_start":476493},{"artifact":1,"gen_end":624003,"gen_start":623597,"node":526,"role":"declaration","source":0,"src_end":477112,"src_start":476738},{"artifact":1,"gen_end":627555,"gen_start":624003,"node":527,"role":"declaration","source":0,"src_end":479803,"src_start":477114},{"artifact":1,"gen_end":628289,"gen_start":627555,"node":528,"role":"declaration","source":0,"src_end":480309,"src_start":479805},{"artifact":1,"gen_end":628593,"gen_start":628289,"node":529,"role":"declaration","source":0,"src_end":480544,"src_start":480311},{"artifact":1,"gen_end":629095,"gen_start":628593,"node":530,"role":"declaration","source":0,"src_end":481002,"src_start":480546},{"artifact":1,"gen_end":634882,"gen_start":629095,"node":531,"role":"declaration","source":0,"src_end":485403,"src_start":481004},{"artifact":1,"gen_end":635717,"gen_start":634882,"node":532,"role":"declaration","source":0,"src_end":485998,"src_start":485405},{"artifact":1,"gen_end":636471,"gen_start":635717,"node":533,"role":"declaration","source":0,"src_end":486590,"src_start":486000},{"artifact":1,"gen_end":637002,"gen_start":636471,"node":534,"role":"declaration","source":0,"src_end":487052,"src_start":486592},{"artifact":1,"gen_end":642793,"gen_start":637002,"node":535,"role":"declaration","source":0,"src_end":491457,"src_start":487054},{"artifact":1,"gen_end":643636,"gen_start":642793,"node":536,"role":"declaration","source":0,"src_end":492060,"src_start":491459},{"artifact":1,"gen_end":644398,"gen_start":643636,"node":537,"role":"declaration","source":0,"src_end":492660,"src_start":492062},{"artifact":1,"gen_end":644937,"gen_start":644398,"node":538,"role":"declaration","source":0,"src_end":493130,"src_start":492662},{"artifact":1,"gen_end":650731,"gen_start":644937,"node":539,"role":"declaration","source":0,"src_end":497538,"src_start":493132},{"artifact":1,"gen_end":651580,"gen_start":650731,"node":540,"role":"declaration","source":0,"src_end":498147,"src_start":497540},{"artifact":1,"gen_end":652214,"gen_start":651580,"node":541,"role":"declaration","source":0,"src_end":498643,"src_start":498149},{"artifact":1,"gen_end":652759,"gen_start":652214,"node":542,"role":"declaration","source":0,"src_end":499119,"src_start":498645},{"artifact":1,"gen_end":655106,"gen_start":652759,"node":543,"role":"declaration","source":0,"src_end":500822,"src_start":499121},{"artifact":1,"gen_end":655840,"gen_start":655106,"node":544,"role":"declaration","source":0,"src_end":501328,"src_start":500824},{"artifact":1,"gen_end":656280,"gen_start":655840,"node":545,"role":"declaration","source":0,"src_end":501666,"src_start":501330},{"artifact":1,"gen_end":656716,"gen_start":656280,"node":546,"role":"declaration","source":0,"src_end":502061,"src_start":501668},{"artifact":1,"gen_end":660211,"gen_start":656716,"node":547,"role":"declaration","source":0,"src_end":504649,"src_start":502063},{"artifact":1,"gen_end":660995,"gen_start":660211,"node":548,"role":"declaration","source":0,"src_end":505199,"src_start":504651},{"artifact":1,"gen_end":661346,"gen_start":660995,"node":549,"role":"declaration","source":0,"src_end":505473,"src_start":505201},{"artifact":1,"gen_end":661896,"gen_start":661346,"node":550,"role":"declaration","source":0,"src_end":505990,"src_start":505475},{"artifact":1,"gen_end":665397,"gen_start":661896,"node":551,"role":"declaration","source":0,"src_end":508584,"src_start":505992},{"artifact":1,"gen_end":666193,"gen_start":665397,"node":552,"role":"declaration","source":0,"src_end":509146,"src_start":508586},{"artifact":1,"gen_end":666508,"gen_start":666193,"node":553,"role":"declaration","source":0,"src_end":509394,"src_start":509148},{"artifact":1,"gen_end":667070,"gen_start":666508,"node":554,"role":"declaration","source":0,"src_end":509923,"src_start":509396},{"artifact":1,"gen_end":670830,"gen_start":667070,"node":555,"role":"declaration","source":0,"src_end":512727,"src_start":509925},{"artifact":1,"gen_end":671614,"gen_start":670830,"node":556,"role":"declaration","source":0,"src_end":513277,"src_start":512729},{"artifact":1,"gen_end":672100,"gen_start":671614,"node":557,"role":"declaration","source":0,"src_end":513649,"src_start":513279},{"artifact":1,"gen_end":672625,"gen_start":672100,"node":558,"role":"declaration","source":0,"src_end":514107,"src_start":513651},{"artifact":1,"gen_end":676391,"gen_start":672625,"node":559,"role":"declaration","source":0,"src_end":516917,"src_start":514109},{"artifact":1,"gen_end":677187,"gen_start":676391,"node":560,"role":"declaration","source":0,"src_end":517479,"src_start":516919},{"artifact":1,"gen_end":677819,"gen_start":677187,"node":561,"role":"declaration","source":0,"src_end":517973,"src_start":517481},{"artifact":1,"gen_end":678356,"gen_start":677819,"node":562,"role":"declaration","source":0,"src_end":518443,"src_start":517975},{"artifact":1,"gen_end":680721,"gen_start":678356,"node":563,"role":"declaration","source":0,"src_end":520164,"src_start":518445},{"artifact":1,"gen_end":681459,"gen_start":680721,"node":564,"role":"declaration","source":0,"src_end":520674,"src_start":520166},{"artifact":1,"gen_end":681913,"gen_start":681459,"node":565,"role":"declaration","source":0,"src_end":521026,"src_start":520676},{"artifact":1,"gen_end":682361,"gen_start":681913,"node":566,"role":"declaration","source":0,"src_end":521433,"src_start":521028},{"artifact":1,"gen_end":696635,"gen_start":682361,"node":567,"role":"declaration","source":0,"src_end":532181,"src_start":521435},{"artifact":1,"gen_end":697423,"gen_start":696635,"node":568,"role":"declaration","source":0,"src_end":532741,"src_start":532183},{"artifact":1,"gen_end":698609,"gen_start":697423,"node":569,"role":"declaration","source":0,"src_end":533667,"src_start":532743},{"artifact":1,"gen_end":708673,"gen_start":698609,"node":570,"role":"declaration","source":0,"src_end":541388,"src_start":533669},{"artifact":1,"gen_end":709058,"gen_start":708673,"node":571,"role":"declaration","source":0,"src_end":541620,"src_start":541390},{"artifact":1,"gen_end":710239,"gen_start":709058,"node":572,"role":"declaration","source":0,"src_end":542588,"src_start":541622},{"artifact":1,"gen_end":711211,"gen_start":710239,"node":573,"role":"declaration","source":0,"src_end":543255,"src_start":542590},{"artifact":1,"gen_end":711598,"gen_start":711211,"node":574,"role":"declaration","source":0,"src_end":543489,"src_start":543257},{"artifact":1,"gen_end":711873,"gen_start":711598,"node":575,"role":"declaration","source":0,"src_end":543705,"src_start":543491},{"artifact":1,"gen_end":712844,"gen_start":711873,"node":576,"role":"declaration","source":0,"src_end":544371,"src_start":543707},{"artifact":1,"gen_end":713231,"gen_start":712844,"node":577,"role":"declaration","source":0,"src_end":544605,"src_start":544373},{"artifact":1,"gen_end":713506,"gen_start":713231,"node":578,"role":"declaration","source":0,"src_end":544821,"src_start":544607},{"artifact":1,"gen_end":714734,"gen_start":713506,"node":579,"role":"declaration","source":0,"src_end":545687,"src_start":544823},{"artifact":1,"gen_end":715127,"gen_start":714734,"node":580,"role":"declaration","source":0,"src_end":545927,"src_start":545689},{"artifact":1,"gen_end":715408,"gen_start":715127,"node":581,"role":"declaration","source":0,"src_end":546149,"src_start":545929},{"artifact":1,"gen_end":716295,"gen_start":715408,"node":582,"role":"declaration","source":0,"src_end":546745,"src_start":546151},{"artifact":1,"gen_end":716684,"gen_start":716295,"node":583,"role":"declaration","source":0,"src_end":546981,"src_start":546747},{"artifact":1,"gen_end":716961,"gen_start":716684,"node":584,"role":"declaration","source":0,"src_end":547199,"src_start":546983},{"artifact":1,"gen_end":734935,"gen_start":716961,"node":585,"role":"declaration","source":0,"src_end":560813,"src_start":547201},{"artifact":1,"gen_end":735310,"gen_start":734935,"node":586,"role":"declaration","source":0,"src_end":561035,"src_start":560815},{"artifact":1,"gen_end":736511,"gen_start":735310,"node":587,"role":"declaration","source":0,"src_end":562011,"src_start":561037},{"artifact":1,"gen_end":738745,"gen_start":736511,"node":588,"role":"declaration","source":0,"src_end":563607,"src_start":562013},{"artifact":1,"gen_end":739444,"gen_start":738745,"node":589,"role":"declaration","source":0,"src_end":564088,"src_start":563609},{"artifact":1,"gen_end":739765,"gen_start":739444,"node":590,"role":"declaration","source":0,"src_end":564340,"src_start":564090},{"artifact":1,"gen_end":741856,"gen_start":739765,"node":591,"role":"declaration","source":0,"src_end":565874,"src_start":564342},{"artifact":1,"gen_end":742473,"gen_start":741856,"node":592,"role":"declaration","source":0,"src_end":566291,"src_start":565876},{"artifact":1,"gen_end":742952,"gen_start":742473,"node":593,"role":"declaration","source":0,"src_end":566665,"src_start":566293},{"artifact":1,"gen_end":745886,"gen_start":742952,"node":594,"role":"declaration","source":0,"src_end":568802,"src_start":566667},{"artifact":1,"gen_end":746544,"gen_start":745886,"node":595,"role":"declaration","source":0,"src_end":569256,"src_start":568804},{"artifact":1,"gen_end":746858,"gen_start":746544,"node":596,"role":"declaration","source":0,"src_end":569501,"src_start":569258},{"artifact":1,"gen_end":747237,"gen_start":746858,"node":597,"role":"declaration","source":0,"src_end":569828,"src_start":569503},{"artifact":1,"gen_end":750177,"gen_start":747237,"node":598,"role":"declaration","source":0,"src_end":571971,"src_start":569830},{"artifact":1,"gen_end":750847,"gen_start":750177,"node":599,"role":"declaration","source":0,"src_end":572437,"src_start":571973},{"artifact":1,"gen_end":751174,"gen_start":750847,"node":600,"role":"declaration","source":0,"src_end":572695,"src_start":572439},{"artifact":1,"gen_end":751565,"gen_start":751174,"node":601,"role":"declaration","source":0,"src_end":573034,"src_start":572697},{"artifact":1,"gen_end":756428,"gen_start":751565,"node":602,"role":"declaration","source":0,"src_end":576645,"src_start":573036},{"artifact":1,"gen_end":757274,"gen_start":756428,"node":603,"role":"declaration","source":0,"src_end":577248,"src_start":576647},{"artifact":1,"gen_end":757727,"gen_start":757274,"node":604,"role":"declaration","source":0,"src_end":577599,"src_start":577250},{"artifact":1,"gen_end":758229,"gen_start":757727,"node":605,"role":"declaration","source":0,"src_end":578043,"src_start":577601},{"artifact":1,"gen_end":761357,"gen_start":758229,"node":606,"role":"declaration","source":0,"src_end":580389,"src_start":578045},{"artifact":1,"gen_end":761961,"gen_start":761357,"node":607,"role":"declaration","source":0,"src_end":580795,"src_start":580391},{"artifact":1,"gen_end":762266,"gen_start":761961,"node":608,"role":"declaration","source":0,"src_end":581031,"src_start":580797},{"artifact":1,"gen_end":762730,"gen_start":762266,"node":609,"role":"declaration","source":0,"src_end":581427,"src_start":581033},{"artifact":1,"gen_end":766356,"gen_start":762730,"node":610,"role":"declaration","source":0,"src_end":584119,"src_start":581429},{"artifact":1,"gen_end":766935,"gen_start":766356,"node":611,"role":"declaration","source":0,"src_end":584506,"src_start":584121},{"artifact":1,"gen_end":767396,"gen_start":766935,"node":612,"role":"declaration","source":0,"src_end":584865,"src_start":584508},{"artifact":1,"gen_end":767875,"gen_start":767396,"node":613,"role":"declaration","source":0,"src_end":585264,"src_start":584867},{"artifact":1,"gen_end":771488,"gen_start":767875,"node":614,"role":"declaration","source":0,"src_end":587943,"src_start":585266},{"artifact":1,"gen_end":772128,"gen_start":771488,"node":615,"role":"declaration","source":0,"src_end":588385,"src_start":587945},{"artifact":1,"gen_end":772650,"gen_start":772128,"node":616,"role":"declaration","source":0,"src_end":588799,"src_start":588387},{"artifact":1,"gen_end":773145,"gen_start":772650,"node":617,"role":"declaration","source":0,"src_end":589214,"src_start":588801},{"artifact":1,"gen_end":777263,"gen_start":773145,"node":618,"role":"declaration","source":0,"src_end":592302,"src_start":589216},{"artifact":1,"gen_end":777907,"gen_start":777263,"node":619,"role":"declaration","source":0,"src_end":592748,"src_start":592304},{"artifact":1,"gen_end":778433,"gen_start":777907,"node":620,"role":"declaration","source":0,"src_end":593166,"src_start":592750},{"artifact":1,"gen_end":778937,"gen_start":778433,"node":621,"role":"declaration","source":0,"src_end":593590,"src_start":593168},{"artifact":1,"gen_end":782550,"gen_start":778937,"node":622,"role":"declaration","source":0,"src_end":596269,"src_start":593592},{"artifact":1,"gen_end":783210,"gen_start":782550,"node":623,"role":"declaration","source":0,"src_end":596725,"src_start":596271},{"artifact":1,"gen_end":783752,"gen_start":783210,"node":624,"role":"declaration","source":0,"src_end":597153,"src_start":596727},{"artifact":1,"gen_end":784224,"gen_start":783752,"node":625,"role":"declaration","source":0,"src_end":597545,"src_start":597155},{"artifact":1,"gen_end":788753,"gen_start":784224,"node":626,"role":"declaration","source":0,"src_end":600948,"src_start":597547},{"artifact":1,"gen_end":789639,"gen_start":788753,"node":627,"role":"declaration","source":0,"src_end":601582,"src_start":600950},{"artifact":1,"gen_end":790407,"gen_start":789639,"node":628,"role":"declaration","source":0,"src_end":602188,"src_start":601584},{"artifact":1,"gen_end":790965,"gen_start":790407,"node":629,"role":"declaration","source":0,"src_end":602645,"src_start":602190},{"artifact":1,"gen_end":794617,"gen_start":790965,"node":630,"role":"declaration","source":0,"src_end":605363,"src_start":602647},{"artifact":1,"gen_end":795259,"gen_start":794617,"node":631,"role":"declaration","source":0,"src_end":605801,"src_start":605365},{"artifact":1,"gen_end":795783,"gen_start":795259,"node":632,"role":"declaration","source":0,"src_end":606211,"src_start":605803},{"artifact":1,"gen_end":796283,"gen_start":795783,"node":633,"role":"declaration","source":0,"src_end":606625,"src_start":606213},{"artifact":1,"gen_end":801148,"gen_start":796283,"node":634,"role":"declaration","source":0,"src_end":610238,"src_start":606627},{"artifact":1,"gen_end":801998,"gen_start":801148,"node":635,"role":"declaration","source":0,"src_end":610845,"src_start":610240},{"artifact":1,"gen_end":802409,"gen_start":801998,"node":636,"role":"declaration","source":0,"src_end":611160,"src_start":610847},{"artifact":1,"gen_end":802917,"gen_start":802409,"node":637,"role":"declaration","source":0,"src_end":611610,"src_start":611162},{"artifact":1,"gen_end":806029,"gen_start":802917,"node":638,"role":"declaration","source":0,"src_end":613902,"src_start":611612},{"artifact":1,"gen_end":806683,"gen_start":806029,"node":639,"role":"declaration","source":0,"src_end":614352,"src_start":613904},{"artifact":1,"gen_end":807127,"gen_start":806683,"node":640,"role":"declaration","source":0,"src_end":614694,"src_start":614354},{"artifact":1,"gen_end":807593,"gen_start":807127,"node":641,"role":"declaration","source":0,"src_end":615080,"src_start":614696},{"artifact":1,"gen_end":810711,"gen_start":807593,"node":642,"role":"declaration","source":0,"src_end":617378,"src_start":615082},{"artifact":1,"gen_end":811377,"gen_start":810711,"node":643,"role":"declaration","source":0,"src_end":617840,"src_start":617380},{"artifact":1,"gen_end":811879,"gen_start":811377,"node":644,"role":"declaration","source":0,"src_end":618234,"src_start":617842},{"artifact":1,"gen_end":812357,"gen_start":811879,"node":645,"role":"declaration","source":0,"src_end":618632,"src_start":618236},{"artifact":1,"gen_end":817188,"gen_start":812357,"node":646,"role":"declaration","source":0,"src_end":622247,"src_start":618634},{"artifact":1,"gen_end":818024,"gen_start":817188,"node":647,"role":"declaration","source":0,"src_end":622840,"src_start":622249},{"artifact":1,"gen_end":818605,"gen_start":818024,"node":648,"role":"declaration","source":0,"src_end":623301,"src_start":622842},{"artifact":1,"gen_end":819092,"gen_start":818605,"node":649,"role":"declaration","source":0,"src_end":623730,"src_start":623303},{"artifact":1,"gen_end":827983,"gen_start":819092,"node":650,"role":"declaration","source":0,"src_end":630646,"src_start":623732},{"artifact":1,"gen_end":828366,"gen_start":827983,"node":651,"role":"declaration","source":0,"src_end":630876,"src_start":630648},{"artifact":1,"gen_end":830219,"gen_start":828366,"node":652,"role":"declaration","source":0,"src_end":632082,"src_start":630878},{"artifact":1,"gen_end":830650,"gen_start":830219,"node":653,"role":"declaration","source":0,"src_end":632354,"src_start":632084},{"artifact":1,"gen_end":831225,"gen_start":830650,"node":654,"role":"declaration","source":0,"src_end":632730,"src_start":632356},{"artifact":1,"gen_end":832829,"gen_start":831225,"node":655,"role":"declaration","source":0,"src_end":633854,"src_start":632732},{"artifact":1,"gen_end":833246,"gen_start":832829,"node":656,"role":"declaration","source":0,"src_end":634112,"src_start":633856},{"artifact":1,"gen_end":833546,"gen_start":833246,"node":657,"role":"declaration","source":0,"src_end":634343,"src_start":634114},{"artifact":1,"gen_end":835159,"gen_start":833546,"node":658,"role":"declaration","source":0,"src_end":635476,"src_start":634345},{"artifact":1,"gen_end":835592,"gen_start":835159,"node":659,"role":"declaration","source":0,"src_end":635750,"src_start":635478},{"artifact":1,"gen_end":835864,"gen_start":835592,"node":660,"role":"declaration","source":0,"src_end":635965,"src_start":635752},{"artifact":1,"gen_end":841611,"gen_start":835864,"node":661,"role":"declaration","source":0,"src_end":640246,"src_start":635967},{"artifact":1,"gen_end":842040,"gen_start":841611,"node":662,"role":"declaration","source":0,"src_end":640516,"src_start":640248},{"artifact":1,"gen_end":842629,"gen_start":842040,"node":663,"role":"declaration","source":0,"src_end":640982,"src_start":640518},{"artifact":1,"gen_end":849600,"gen_start":842629,"node":664,"role":"declaration","source":0,"src_end":646140,"src_start":640984},{"artifact":1,"gen_end":850068,"gen_start":849600,"node":665,"role":"declaration","source":0,"src_end":646445,"src_start":646142},{"artifact":1,"gen_end":850493,"gen_start":850068,"node":666,"role":"declaration","source":0,"src_end":646779,"src_start":646447},{"artifact":1,"gen_end":858781,"gen_start":850493,"node":667,"role":"declaration","source":0,"src_end":653341,"src_start":646781},{"artifact":1,"gen_end":859206,"gen_start":858781,"node":668,"role":"declaration","source":0,"src_end":653607,"src_start":653343},{"artifact":1,"gen_end":859756,"gen_start":859206,"node":669,"role":"declaration","source":0,"src_end":654038,"src_start":653609},{"artifact":1,"gen_end":859771,"gen_start":859756,"node":335,"role":"declaration","source":0,"src_end":654074,"src_start":0}],"module":"TargetFixtures","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"},{"id":40,"kind":"semantic-declaration"},{"id":41,"kind":"semantic-declaration"},{"id":42,"kind":"semantic-declaration"},{"id":43,"kind":"semantic-declaration"},{"id":44,"kind":"semantic-declaration"},{"id":45,"kind":"semantic-declaration"},{"id":46,"kind":"semantic-declaration"},{"id":47,"kind":"semantic-declaration"},{"id":48,"kind":"semantic-declaration"},{"id":49,"kind":"semantic-declaration"},{"id":50,"kind":"semantic-declaration"},{"id":51,"kind":"semantic-declaration"},{"id":52,"kind":"semantic-declaration"},{"id":53,"kind":"semantic-declaration"},{"id":54,"kind":"semantic-declaration"},{"id":55,"kind":"semantic-declaration"},{"id":56,"kind":"semantic-declaration"},{"id":57,"kind":"semantic-declaration"},{"id":58,"kind":"semantic-declaration"},{"id":59,"kind":"semantic-declaration"},{"id":60,"kind":"semantic-declaration"},{"id":61,"kind":"semantic-declaration"},{"id":62,"kind":"semantic-declaration"},{"id":63,"kind":"semantic-declaration"},{"id":64,"kind":"semantic-declaration"},{"id":65,"kind":"semantic-declaration"},{"id":66,"kind":"semantic-declaration"},{"id":67,"kind":"semantic-declaration"},{"id":68,"kind":"semantic-declaration"},{"id":69,"kind":"semantic-declaration"},{"id":70,"kind":"semantic-declaration"},{"id":71,"kind":"semantic-declaration"},{"id":72,"kind":"semantic-declaration"},{"id":73,"kind":"semantic-declaration"},{"id":74,"kind":"semantic-declaration"},{"id":75,"kind":"semantic-declaration"},{"id":76,"kind":"semantic-declaration"},{"id":77,"kind":"semantic-declaration"},{"id":78,"kind":"semantic-declaration"},{"id":79,"kind":"semantic-declaration"},{"id":80,"kind":"semantic-declaration"},{"id":81,"kind":"semantic-declaration"},{"id":82,"kind":"semantic-declaration"},{"id":83,"kind":"semantic-declaration"},{"id":84,"kind":"semantic-declaration"},{"id":85,"kind":"semantic-declaration"},{"id":86,"kind":"semantic-declaration"},{"id":87,"kind":"semantic-declaration"},{"id":88,"kind":"semantic-declaration"},{"id":89,"kind":"semantic-declaration"},{"id":90,"kind":"semantic-declaration"},{"id":91,"kind":"semantic-declaration"},{"id":92,"kind":"semantic-declaration"},{"id":93,"kind":"semantic-declaration"},{"id":94,"kind":"semantic-declaration"},{"id":95,"kind":"semantic-declaration"},{"id":96,"kind":"semantic-declaration"},{"id":97,"kind":"semantic-declaration"},{"id":98,"kind":"semantic-declaration"},{"id":99,"kind":"semantic-declaration"},{"id":100,"kind":"semantic-declaration"},{"id":101,"kind":"semantic-declaration"},{"id":102,"kind":"semantic-declaration"},{"id":103,"kind":"semantic-declaration"},{"id":104,"kind":"semantic-declaration"},{"id":105,"kind":"semantic-declaration"},{"id":106,"kind":"semantic-declaration"},{"id":107,"kind":"semantic-declaration"},{"id":108,"kind":"semantic-declaration"},{"id":109,"kind":"semantic-declaration"},{"id":110,"kind":"semantic-declaration"},{"id":111,"kind":"semantic-declaration"},{"id":112,"kind":"semantic-declaration"},{"id":113,"kind":"semantic-declaration"},{"id":114,"kind":"semantic-declaration"},{"id":115,"kind":"semantic-declaration"},{"id":116,"kind":"semantic-declaration"},{"id":117,"kind":"semantic-declaration"},{"id":118,"kind":"semantic-declaration"},{"id":119,"kind":"semantic-declaration"},{"id":120,"kind":"semantic-declaration"},{"id":121,"kind":"semantic-declaration"},{"id":122,"kind":"semantic-declaration"},{"id":123,"kind":"semantic-declaration"},{"id":124,"kind":"semantic-declaration"},{"id":125,"kind":"semantic-declaration"},{"id":126,"kind":"semantic-declaration"},{"id":127,"kind":"semantic-declaration"},{"id":128,"kind":"semantic-declaration"},{"id":129,"kind":"semantic-declaration"},{"id":130,"kind":"semantic-declaration"},{"id":131,"kind":"semantic-declaration"},{"id":132,"kind":"semantic-declaration"},{"id":133,"kind":"semantic-declaration"},{"id":134,"kind":"semantic-declaration"},{"id":135,"kind":"semantic-declaration"},{"id":136,"kind":"semantic-declaration"},{"id":137,"kind":"semantic-declaration"},{"id":138,"kind":"semantic-declaration"},{"id":139,"kind":"semantic-declaration"},{"id":140,"kind":"semantic-declaration"},{"id":141,"kind":"semantic-declaration"},{"id":142,"kind":"semantic-declaration"},{"id":143,"kind":"semantic-declaration"},{"id":144,"kind":"semantic-declaration"},{"id":145,"kind":"semantic-declaration"},{"id":146,"kind":"semantic-declaration"},{"id":147,"kind":"semantic-declaration"},{"id":148,"kind":"semantic-declaration"},{"id":149,"kind":"semantic-declaration"},{"id":150,"kind":"semantic-declaration"},{"id":151,"kind":"semantic-declaration"},{"id":152,"kind":"semantic-declaration"},{"id":153,"kind":"semantic-declaration"},{"id":154,"kind":"semantic-declaration"},{"id":155,"kind":"semantic-declaration"},{"id":156,"kind":"semantic-declaration"},{"id":157,"kind":"semantic-declaration"},{"id":158,"kind":"semantic-declaration"},{"id":159,"kind":"semantic-declaration"},{"id":160,"kind":"semantic-declaration"},{"id":161,"kind":"semantic-declaration"},{"id":162,"kind":"semantic-declaration"},{"id":163,"kind":"semantic-declaration"},{"id":164,"kind":"semantic-declaration"},{"id":165,"kind":"semantic-declaration"},{"id":166,"kind":"semantic-declaration"},{"id":167,"kind":"semantic-declaration"},{"id":168,"kind":"semantic-declaration"},{"id":169,"kind":"semantic-declaration"},{"id":170,"kind":"semantic-declaration"},{"id":171,"kind":"semantic-declaration"},{"id":172,"kind":"semantic-declaration"},{"id":173,"kind":"semantic-declaration"},{"id":174,"kind":"semantic-declaration"},{"id":175,"kind":"semantic-declaration"},{"id":176,"kind":"semantic-declaration"},{"id":177,"kind":"semantic-declaration"},{"id":178,"kind":"semantic-declaration"},{"id":179,"kind":"semantic-declaration"},{"id":180,"kind":"semantic-declaration"},{"id":181,"kind":"semantic-declaration"},{"id":182,"kind":"semantic-declaration"},{"id":183,"kind":"semantic-declaration"},{"id":184,"kind":"semantic-declaration"},{"id":185,"kind":"semantic-declaration"},{"id":186,"kind":"semantic-declaration"},{"id":187,"kind":"semantic-declaration"},{"id":188,"kind":"semantic-declaration"},{"id":189,"kind":"semantic-declaration"},{"id":190,"kind":"semantic-declaration"},{"id":191,"kind":"semantic-declaration"},{"id":192,"kind":"semantic-declaration"},{"id":193,"kind":"semantic-declaration"},{"id":194,"kind":"semantic-declaration"},{"id":195,"kind":"semantic-declaration"},{"id":196,"kind":"semantic-declaration"},{"id":197,"kind":"semantic-declaration"},{"id":198,"kind":"semantic-declaration"},{"id":199,"kind":"semantic-declaration"},{"id":200,"kind":"semantic-declaration"},{"id":201,"kind":"semantic-declaration"},{"id":202,"kind":"semantic-declaration"},{"id":203,"kind":"semantic-declaration"},{"id":204,"kind":"semantic-declaration"},{"id":205,"kind":"semantic-declaration"},{"id":206,"kind":"semantic-declaration"},{"id":207,"kind":"semantic-declaration"},{"id":208,"kind":"semantic-declaration"},{"id":209,"kind":"semantic-declaration"},{"id":210,"kind":"semantic-declaration"},{"id":211,"kind":"semantic-declaration"},{"id":212,"kind":"semantic-declaration"},{"id":213,"kind":"semantic-declaration"},{"id":214,"kind":"semantic-declaration"},{"id":215,"kind":"semantic-declaration"},{"id":216,"kind":"semantic-declaration"},{"id":217,"kind":"semantic-declaration"},{"id":218,"kind":"semantic-declaration"},{"id":219,"kind":"semantic-declaration"},{"id":220,"kind":"semantic-declaration"},{"id":221,"kind":"semantic-declaration"},{"id":222,"kind":"semantic-declaration"},{"id":223,"kind":"semantic-declaration"},{"id":224,"kind":"semantic-declaration"},{"id":225,"kind":"semantic-declaration"},{"id":226,"kind":"semantic-declaration"},{"id":227,"kind":"semantic-declaration"},{"id":228,"kind":"semantic-declaration"},{"id":229,"kind":"semantic-declaration"},{"id":230,"kind":"semantic-declaration"},{"id":231,"kind":"semantic-declaration"},{"id":232,"kind":"semantic-declaration"},{"id":233,"kind":"semantic-declaration"},{"id":234,"kind":"semantic-declaration"},{"id":235,"kind":"semantic-declaration"},{"id":236,"kind":"semantic-declaration"},{"id":237,"kind":"semantic-declaration"},{"id":238,"kind":"semantic-declaration"},{"id":239,"kind":"semantic-declaration"},{"id":240,"kind":"semantic-declaration"},{"id":241,"kind":"semantic-declaration"},{"id":242,"kind":"semantic-declaration"},{"id":243,"kind":"semantic-declaration"},{"id":244,"kind":"semantic-declaration"},{"id":245,"kind":"semantic-declaration"},{"id":246,"kind":"semantic-declaration"},{"id":247,"kind":"semantic-declaration"},{"id":248,"kind":"semantic-declaration"},{"id":249,"kind":"semantic-declaration"},{"id":250,"kind":"semantic-declaration"},{"id":251,"kind":"semantic-declaration"},{"id":252,"kind":"semantic-declaration"},{"id":253,"kind":"semantic-declaration"},{"id":254,"kind":"semantic-declaration"},{"id":255,"kind":"semantic-declaration"},{"id":256,"kind":"semantic-declaration"},{"id":257,"kind":"semantic-declaration"},{"id":258,"kind":"semantic-declaration"},{"id":259,"kind":"semantic-declaration"},{"id":260,"kind":"semantic-declaration"},{"id":261,"kind":"semantic-declaration"},{"id":262,"kind":"semantic-declaration"},{"id":263,"kind":"semantic-declaration"},{"id":264,"kind":"semantic-declaration"},{"id":265,"kind":"semantic-declaration"},{"id":266,"kind":"semantic-declaration"},{"id":267,"kind":"semantic-declaration"},{"id":268,"kind":"semantic-declaration"},{"id":269,"kind":"semantic-declaration"},{"id":270,"kind":"semantic-declaration"},{"id":271,"kind":"semantic-declaration"},{"id":272,"kind":"semantic-declaration"},{"id":273,"kind":"semantic-declaration"},{"id":274,"kind":"semantic-declaration"},{"id":275,"kind":"semantic-declaration"},{"id":276,"kind":"semantic-declaration"},{"id":277,"kind":"semantic-declaration"},{"id":278,"kind":"semantic-declaration"},{"id":279,"kind":"semantic-declaration"},{"id":280,"kind":"semantic-declaration"},{"id":281,"kind":"semantic-declaration"},{"id":282,"kind":"semantic-declaration"},{"id":283,"kind":"semantic-declaration"},{"id":284,"kind":"semantic-declaration"},{"id":285,"kind":"semantic-declaration"},{"id":286,"kind":"semantic-declaration"},{"id":287,"kind":"semantic-declaration"},{"id":288,"kind":"semantic-declaration"},{"id":289,"kind":"semantic-declaration"},{"id":290,"kind":"semantic-declaration"},{"id":291,"kind":"semantic-declaration"},{"id":292,"kind":"semantic-declaration"},{"id":293,"kind":"semantic-declaration"},{"id":294,"kind":"semantic-declaration"},{"id":295,"kind":"semantic-declaration"},{"id":296,"kind":"semantic-declaration"},{"id":297,"kind":"semantic-declaration"},{"id":298,"kind":"semantic-declaration"},{"id":299,"kind":"semantic-declaration"},{"id":300,"kind":"semantic-declaration"},{"id":301,"kind":"semantic-declaration"},{"id":302,"kind":"semantic-declaration"},{"id":303,"kind":"semantic-declaration"},{"id":304,"kind":"semantic-declaration"},{"id":305,"kind":"semantic-declaration"},{"id":306,"kind":"semantic-declaration"},{"id":307,"kind":"semantic-declaration"},{"id":308,"kind":"semantic-declaration"},{"id":309,"kind":"semantic-declaration"},{"id":310,"kind":"semantic-declaration"},{"id":311,"kind":"semantic-declaration"},{"id":312,"kind":"semantic-declaration"},{"id":313,"kind":"semantic-declaration"},{"id":314,"kind":"semantic-declaration"},{"id":315,"kind":"semantic-declaration"},{"id":316,"kind":"semantic-declaration"},{"id":317,"kind":"semantic-declaration"},{"id":318,"kind":"semantic-declaration"},{"id":319,"kind":"semantic-declaration"},{"id":320,"kind":"semantic-declaration"},{"id":321,"kind":"semantic-declaration"},{"id":322,"kind":"semantic-declaration"},{"id":323,"kind":"semantic-declaration"},{"id":324,"kind":"semantic-declaration"},{"id":325,"kind":"semantic-declaration"},{"id":326,"kind":"semantic-declaration"},{"id":327,"kind":"semantic-declaration"},{"id":328,"kind":"semantic-declaration"},{"id":329,"kind":"semantic-declaration"},{"id":330,"kind":"semantic-declaration"},{"id":331,"kind":"semantic-declaration"},{"id":332,"kind":"semantic-declaration"},{"id":333,"kind":"semantic-declaration"},{"id":334,"kind":"semantic-declaration"},{"id":335,"kind":"semantic-latex-module"},{"id":336,"kind":"semantic-declaration"},{"id":337,"kind":"semantic-declaration"},{"id":338,"kind":"semantic-declaration"},{"id":339,"kind":"semantic-declaration"},{"id":340,"kind":"semantic-declaration"},{"id":341,"kind":"semantic-declaration"},{"id":342,"kind":"semantic-declaration"},{"id":343,"kind":"semantic-declaration"},{"id":344,"kind":"semantic-declaration"},{"id":345,"kind":"semantic-declaration"},{"id":346,"kind":"semantic-declaration"},{"id":347,"kind":"semantic-declaration"},{"id":348,"kind":"semantic-declaration"},{"id":349,"kind":"semantic-declaration"},{"id":350,"kind":"semantic-declaration"},{"id":351,"kind":"semantic-declaration"},{"id":352,"kind":"semantic-declaration"},{"id":353,"kind":"semantic-declaration"},{"id":354,"kind":"semantic-declaration"},{"id":355,"kind":"semantic-declaration"},{"id":356,"kind":"semantic-declaration"},{"id":357,"kind":"semantic-declaration"},{"id":358,"kind":"semantic-declaration"},{"id":359,"kind":"semantic-declaration"},{"id":360,"kind":"semantic-declaration"},{"id":361,"kind":"semantic-declaration"},{"id":362,"kind":"semantic-declaration"},{"id":363,"kind":"semantic-declaration"},{"id":364,"kind":"semantic-declaration"},{"id":365,"kind":"semantic-declaration"},{"id":366,"kind":"semantic-declaration"},{"id":367,"kind":"semantic-declaration"},{"id":368,"kind":"semantic-declaration"},{"id":369,"kind":"semantic-declaration"},{"id":370,"kind":"semantic-declaration"},{"id":371,"kind":"semantic-declaration"},{"id":372,"kind":"semantic-declaration"},{"id":373,"kind":"semantic-declaration"},{"id":374,"kind":"semantic-declaration"},{"id":375,"kind":"semantic-declaration"},{"id":376,"kind":"semantic-declaration"},{"id":377,"kind":"semantic-declaration"},{"id":378,"kind":"semantic-declaration"},{"id":379,"kind":"semantic-declaration"},{"id":380,"kind":"semantic-declaration"},{"id":381,"kind":"semantic-declaration"},{"id":382,"kind":"semantic-declaration"},{"id":383,"kind":"semantic-declaration"},{"id":384,"kind":"semantic-declaration"},{"id":385,"kind":"semantic-declaration"},{"id":386,"kind":"semantic-declaration"},{"id":387,"kind":"semantic-declaration"},{"id":388,"kind":"semantic-declaration"},{"id":389,"kind":"semantic-declaration"},{"id":390,"kind":"semantic-declaration"},{"id":391,"kind":"semantic-declaration"},{"id":392,"kind":"semantic-declaration"},{"id":393,"kind":"semantic-declaration"},{"id":394,"kind":"semantic-declaration"},{"id":395,"kind":"semantic-declaration"},{"id":396,"kind":"semantic-declaration"},{"id":397,"kind":"semantic-declaration"},{"id":398,"kind":"semantic-declaration"},{"id":399,"kind":"semantic-declaration"},{"id":400,"kind":"semantic-declaration"},{"id":401,"kind":"semantic-declaration"},{"id":402,"kind":"semantic-declaration"},{"id":403,"kind":"semantic-declaration"},{"id":404,"kind":"semantic-declaration"},{"id":405,"kind":"semantic-declaration"},{"id":406,"kind":"semantic-declaration"},{"id":407,"kind":"semantic-declaration"},{"id":408,"kind":"semantic-declaration"},{"id":409,"kind":"semantic-declaration"},{"id":410,"kind":"semantic-declaration"},{"id":411,"kind":"semantic-declaration"},{"id":412,"kind":"semantic-declaration"},{"id":413,"kind":"semantic-declaration"},{"id":414,"kind":"semantic-declaration"},{"id":415,"kind":"semantic-declaration"},{"id":416,"kind":"semantic-declaration"},{"id":417,"kind":"semantic-declaration"},{"id":418,"kind":"semantic-declaration"},{"id":419,"kind":"semantic-declaration"},{"id":420,"kind":"semantic-declaration"},{"id":421,"kind":"semantic-declaration"},{"id":422,"kind":"semantic-declaration"},{"id":423,"kind":"semantic-declaration"},{"id":424,"kind":"semantic-declaration"},{"id":425,"kind":"semantic-declaration"},{"id":426,"kind":"semantic-declaration"},{"id":427,"kind":"semantic-declaration"},{"id":428,"kind":"semantic-declaration"},{"id":429,"kind":"semantic-declaration"},{"id":430,"kind":"semantic-declaration"},{"id":431,"kind":"semantic-declaration"},{"id":432,"kind":"semantic-declaration"},{"id":433,"kind":"semantic-declaration"},{"id":434,"kind":"semantic-declaration"},{"id":435,"kind":"semantic-declaration"},{"id":436,"kind":"semantic-declaration"},{"id":437,"kind":"semantic-declaration"},{"id":438,"kind":"semantic-declaration"},{"id":439,"kind":"semantic-declaration"},{"id":440,"kind":"semantic-declaration"},{"id":441,"kind":"semantic-declaration"},{"id":442,"kind":"semantic-declaration"},{"id":443,"kind":"semantic-declaration"},{"id":444,"kind":"semantic-declaration"},{"id":445,"kind":"semantic-declaration"},{"id":446,"kind":"semantic-declaration"},{"id":447,"kind":"semantic-declaration"},{"id":448,"kind":"semantic-declaration"},{"id":449,"kind":"semantic-declaration"},{"id":450,"kind":"semantic-declaration"},{"id":451,"kind":"semantic-declaration"},{"id":452,"kind":"semantic-declaration"},{"id":453,"kind":"semantic-declaration"},{"id":454,"kind":"semantic-declaration"},{"id":455,"kind":"semantic-declaration"},{"id":456,"kind":"semantic-declaration"},{"id":457,"kind":"semantic-declaration"},{"id":458,"kind":"semantic-declaration"},{"id":459,"kind":"semantic-declaration"},{"id":460,"kind":"semantic-declaration"},{"id":461,"kind":"semantic-declaration"},{"id":462,"kind":"semantic-declaration"},{"id":463,"kind":"semantic-declaration"},{"id":464,"kind":"semantic-declaration"},{"id":465,"kind":"semantic-declaration"},{"id":466,"kind":"semantic-declaration"},{"id":467,"kind":"semantic-declaration"},{"id":468,"kind":"semantic-declaration"},{"id":469,"kind":"semantic-declaration"},{"id":470,"kind":"semantic-declaration"},{"id":471,"kind":"semantic-declaration"},{"id":472,"kind":"semantic-declaration"},{"id":473,"kind":"semantic-declaration"},{"id":474,"kind":"semantic-declaration"},{"id":475,"kind":"semantic-declaration"},{"id":476,"kind":"semantic-declaration"},{"id":477,"kind":"semantic-declaration"},{"id":478,"kind":"semantic-declaration"},{"id":479,"kind":"semantic-declaration"},{"id":480,"kind":"semantic-declaration"},{"id":481,"kind":"semantic-declaration"},{"id":482,"kind":"semantic-declaration"},{"id":483,"kind":"semantic-declaration"},{"id":484,"kind":"semantic-declaration"},{"id":485,"kind":"semantic-declaration"},{"id":486,"kind":"semantic-declaration"},{"id":487,"kind":"semantic-declaration"},{"id":488,"kind":"semantic-declaration"},{"id":489,"kind":"semantic-declaration"},{"id":490,"kind":"semantic-declaration"},{"id":491,"kind":"semantic-declaration"},{"id":492,"kind":"semantic-declaration"},{"id":493,"kind":"semantic-declaration"},{"id":494,"kind":"semantic-declaration"},{"id":495,"kind":"semantic-declaration"},{"id":496,"kind":"semantic-declaration"},{"id":497,"kind":"semantic-declaration"},{"id":498,"kind":"semantic-declaration"},{"id":499,"kind":"semantic-declaration"},{"id":500,"kind":"semantic-declaration"},{"id":501,"kind":"semantic-declaration"},{"id":502,"kind":"semantic-declaration"},{"id":503,"kind":"semantic-declaration"},{"id":504,"kind":"semantic-declaration"},{"id":505,"kind":"semantic-declaration"},{"id":506,"kind":"semantic-declaration"},{"id":507,"kind":"semantic-declaration"},{"id":508,"kind":"semantic-declaration"},{"id":509,"kind":"semantic-declaration"},{"id":510,"kind":"semantic-declaration"},{"id":511,"kind":"semantic-declaration"},{"id":512,"kind":"semantic-declaration"},{"id":513,"kind":"semantic-declaration"},{"id":514,"kind":"semantic-declaration"},{"id":515,"kind":"semantic-declaration"},{"id":516,"kind":"semantic-declaration"},{"id":517,"kind":"semantic-declaration"},{"id":518,"kind":"semantic-declaration"},{"id":519,"kind":"semantic-declaration"},{"id":520,"kind":"semantic-declaration"},{"id":521,"kind":"semantic-declaration"},{"id":522,"kind":"semantic-declaration"},{"id":523,"kind":"semantic-declaration"},{"id":524,"kind":"semantic-declaration"},{"id":525,"kind":"semantic-declaration"},{"id":526,"kind":"semantic-declaration"},{"id":527,"kind":"semantic-declaration"},{"id":528,"kind":"semantic-declaration"},{"id":529,"kind":"semantic-declaration"},{"id":530,"kind":"semantic-declaration"},{"id":531,"kind":"semantic-declaration"},{"id":532,"kind":"semantic-declaration"},{"id":533,"kind":"semantic-declaration"},{"id":534,"kind":"semantic-declaration"},{"id":535,"kind":"semantic-declaration"},{"id":536,"kind":"semantic-declaration"},{"id":537,"kind":"semantic-declaration"},{"id":538,"kind":"semantic-declaration"},{"id":539,"kind":"semantic-declaration"},{"id":540,"kind":"semantic-declaration"},{"id":541,"kind":"semantic-declaration"},{"id":542,"kind":"semantic-declaration"},{"id":543,"kind":"semantic-declaration"},{"id":544,"kind":"semantic-declaration"},{"id":545,"kind":"semantic-declaration"},{"id":546,"kind":"semantic-declaration"},{"id":547,"kind":"semantic-declaration"},{"id":548,"kind":"semantic-declaration"},{"id":549,"kind":"semantic-declaration"},{"id":550,"kind":"semantic-declaration"},{"id":551,"kind":"semantic-declaration"},{"id":552,"kind":"semantic-declaration"},{"id":553,"kind":"semantic-declaration"},{"id":554,"kind":"semantic-declaration"},{"id":555,"kind":"semantic-declaration"},{"id":556,"kind":"semantic-declaration"},{"id":557,"kind":"semantic-declaration"},{"id":558,"kind":"semantic-declaration"},{"id":559,"kind":"semantic-declaration"},{"id":560,"kind":"semantic-declaration"},{"id":561,"kind":"semantic-declaration"},{"id":562,"kind":"semantic-declaration"},{"id":563,"kind":"semantic-declaration"},{"id":564,"kind":"semantic-declaration"},{"id":565,"kind":"semantic-declaration"},{"id":566,"kind":"semantic-declaration"},{"id":567,"kind":"semantic-declaration"},{"id":568,"kind":"semantic-declaration"},{"id":569,"kind":"semantic-declaration"},{"id":570,"kind":"semantic-declaration"},{"id":571,"kind":"semantic-declaration"},{"id":572,"kind":"semantic-declaration"},{"id":573,"kind":"semantic-declaration"},{"id":574,"kind":"semantic-declaration"},{"id":575,"kind":"semantic-declaration"},{"id":576,"kind":"semantic-declaration"},{"id":577,"kind":"semantic-declaration"},{"id":578,"kind":"semantic-declaration"},{"id":579,"kind":"semantic-declaration"},{"id":580,"kind":"semantic-declaration"},{"id":581,"kind":"semantic-declaration"},{"id":582,"kind":"semantic-declaration"},{"id":583,"kind":"semantic-declaration"},{"id":584,"kind":"semantic-declaration"},{"id":585,"kind":"semantic-declaration"},{"id":586,"kind":"semantic-declaration"},{"id":587,"kind":"semantic-declaration"},{"id":588,"kind":"semantic-declaration"},{"id":589,"kind":"semantic-declaration"},{"id":590,"kind":"semantic-declaration"},{"id":591,"kind":"semantic-declaration"},{"id":592,"kind":"semantic-declaration"},{"id":593,"kind":"semantic-declaration"},{"id":594,"kind":"semantic-declaration"},{"id":595,"kind":"semantic-declaration"},{"id":596,"kind":"semantic-declaration"},{"id":597,"kind":"semantic-declaration"},{"id":598,"kind":"semantic-declaration"},{"id":599,"kind":"semantic-declaration"},{"id":600,"kind":"semantic-declaration"},{"id":601,"kind":"semantic-declaration"},{"id":602,"kind":"semantic-declaration"},{"id":603,"kind":"semantic-declaration"},{"id":604,"kind":"semantic-declaration"},{"id":605,"kind":"semantic-declaration"},{"id":606,"kind":"semantic-declaration"},{"id":607,"kind":"semantic-declaration"},{"id":608,"kind":"semantic-declaration"},{"id":609,"kind":"semantic-declaration"},{"id":610,"kind":"semantic-declaration"},{"id":611,"kind":"semantic-declaration"},{"id":612,"kind":"semantic-declaration"},{"id":613,"kind":"semantic-declaration"},{"id":614,"kind":"semantic-declaration"},{"id":615,"kind":"semantic-declaration"},{"id":616,"kind":"semantic-declaration"},{"id":617,"kind":"semantic-declaration"},{"id":618,"kind":"semantic-declaration"},{"id":619,"kind":"semantic-declaration"},{"id":620,"kind":"semantic-declaration"},{"id":621,"kind":"semantic-declaration"},{"id":622,"kind":"semantic-declaration"},{"id":623,"kind":"semantic-declaration"},{"id":624,"kind":"semantic-declaration"},{"id":625,"kind":"semantic-declaration"},{"id":626,"kind":"semantic-declaration"},{"id":627,"kind":"semantic-declaration"},{"id":628,"kind":"semantic-declaration"},{"id":629,"kind":"semantic-declaration"},{"id":630,"kind":"semantic-declaration"},{"id":631,"kind":"semantic-declaration"},{"id":632,"kind":"semantic-declaration"},{"id":633,"kind":"semantic-declaration"},{"id":634,"kind":"semantic-declaration"},{"id":635,"kind":"semantic-declaration"},{"id":636,"kind":"semantic-declaration"},{"id":637,"kind":"semantic-declaration"},{"id":638,"kind":"semantic-declaration"},{"id":639,"kind":"semantic-declaration"},{"id":640,"kind":"semantic-declaration"},{"id":641,"kind":"semantic-declaration"},{"id":642,"kind":"semantic-declaration"},{"id":643,"kind":"semantic-declaration"},{"id":644,"kind":"semantic-declaration"},{"id":645,"kind":"semantic-declaration"},{"id":646,"kind":"semantic-declaration"},{"id":647,"kind":"semantic-declaration"},{"id":648,"kind":"semantic-declaration"},{"id":649,"kind":"semantic-declaration"},{"id":650,"kind":"semantic-declaration"},{"id":651,"kind":"semantic-declaration"},{"id":652,"kind":"semantic-declaration"},{"id":653,"kind":"semantic-declaration"},{"id":654,"kind":"semantic-declaration"},{"id":655,"kind":"semantic-declaration"},{"id":656,"kind":"semantic-declaration"},{"id":657,"kind":"semantic-declaration"},{"id":658,"kind":"semantic-declaration"},{"id":659,"kind":"semantic-declaration"},{"id":660,"kind":"semantic-declaration"},{"id":661,"kind":"semantic-declaration"},{"id":662,"kind":"semantic-declaration"},{"id":663,"kind":"semantic-declaration"},{"id":664,"kind":"semantic-declaration"},{"id":665,"kind":"semantic-declaration"},{"id":666,"kind":"semantic-declaration"},{"id":667,"kind":"semantic-declaration"},{"id":668,"kind":"semantic-declaration"},{"id":669,"kind":"semantic-declaration"}],"semantic_id":"e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb","source_id":"965efd311d3549a7c17dd823b4418cfee906beecd273f4bfcafb371c36d9ce99","sources":[{"id":0,"kind":"file","path":"src/TargetFixtures.lex.tex","sha256":"d746739ea3e78234f7a68280dc068d39b84f4064298a37383a8dc645bc188c27"}],"spec":"lexlean/source-map/1"} diff --git a/compiler/expected/build/maps/LexLeanTarget/TargetOracle.map.json b/compiler/expected/build/maps/LexLeanTarget/TargetOracle.map.json index f615c05c0..d4fc0dea2 100644 --- a/compiler/expected/build/maps/LexLeanTarget/TargetOracle.map.json +++ b/compiler/expected/build/maps/LexLeanTarget/TargetOracle.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/LexLeanTarget/TargetOracle.lean"},{"id":1,"kind":"tex","path":"modules/LexLeanTarget/TargetOracle.tex"}],"mappings":[{"artifact":0,"gen_end":250,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":2490,"src_start":0},{"artifact":0,"gen_end":506,"gen_start":250,"node":1,"role":"declaration","source":0,"src_end":441,"src_start":149},{"artifact":0,"gen_end":762,"gen_start":506,"node":2,"role":"declaration","source":0,"src_end":735,"src_start":443},{"artifact":0,"gen_end":1016,"gen_start":762,"node":3,"role":"declaration","source":0,"src_end":1027,"src_start":737},{"artifact":0,"gen_end":1276,"gen_start":1016,"node":4,"role":"declaration","source":0,"src_end":1325,"src_start":1029},{"artifact":0,"gen_end":1544,"gen_start":1276,"node":5,"role":"declaration","source":0,"src_end":1631,"src_start":1327},{"artifact":0,"gen_end":1927,"gen_start":1544,"node":6,"role":"declaration","source":0,"src_end":2036,"src_start":1633},{"artifact":0,"gen_end":2323,"gen_start":1927,"node":7,"role":"declaration","source":0,"src_end":2454,"src_start":2038},{"artifact":0,"gen_end":2355,"gen_start":2323,"node":0,"role":"declaration","source":0,"src_end":2490,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":8,"role":"declaration","source":0,"src_end":2490,"src_start":0},{"artifact":1,"gen_end":587,"gen_start":134,"node":9,"role":"declaration","source":0,"src_end":441,"src_start":149},{"artifact":1,"gen_end":1040,"gen_start":587,"node":10,"role":"declaration","source":0,"src_end":735,"src_start":443},{"artifact":1,"gen_end":1491,"gen_start":1040,"node":11,"role":"declaration","source":0,"src_end":1027,"src_start":737},{"artifact":1,"gen_end":1948,"gen_start":1491,"node":12,"role":"declaration","source":0,"src_end":1325,"src_start":1029},{"artifact":1,"gen_end":2413,"gen_start":1948,"node":13,"role":"declaration","source":0,"src_end":1631,"src_start":1327},{"artifact":1,"gen_end":2993,"gen_start":2413,"node":14,"role":"declaration","source":0,"src_end":2036,"src_start":1633},{"artifact":1,"gen_end":3586,"gen_start":2993,"node":15,"role":"declaration","source":0,"src_end":2454,"src_start":2038},{"artifact":1,"gen_end":3601,"gen_start":3586,"node":8,"role":"declaration","source":0,"src_end":2490,"src_start":0}],"module":"TargetOracle","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-latex-module"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"}],"semantic_id":"c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517","source_id":"ce718723d5d252a9adafdc3cb3b76931b1d91e053dd3e7e31bcb9b9496a1941c","sources":[{"id":0,"kind":"file","path":"src/TargetOracle.lex.tex","sha256":"e34fca12090e04d8a853d4edfc9ae8db46d09ec586f2820f25d69c8ab3a7fb2d"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/LexLeanTarget/TargetOracle.lean"},{"id":1,"kind":"tex","path":"modules/LexLeanTarget/TargetOracle.tex"}],"mappings":[{"artifact":0,"gen_end":250,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":2490,"src_start":0},{"artifact":0,"gen_end":506,"gen_start":250,"node":1,"role":"declaration","source":0,"src_end":441,"src_start":149},{"artifact":0,"gen_end":762,"gen_start":506,"node":2,"role":"declaration","source":0,"src_end":735,"src_start":443},{"artifact":0,"gen_end":1016,"gen_start":762,"node":3,"role":"declaration","source":0,"src_end":1027,"src_start":737},{"artifact":0,"gen_end":1276,"gen_start":1016,"node":4,"role":"declaration","source":0,"src_end":1325,"src_start":1029},{"artifact":0,"gen_end":1544,"gen_start":1276,"node":5,"role":"declaration","source":0,"src_end":1631,"src_start":1327},{"artifact":0,"gen_end":1927,"gen_start":1544,"node":6,"role":"declaration","source":0,"src_end":2036,"src_start":1633},{"artifact":0,"gen_end":2323,"gen_start":1927,"node":7,"role":"declaration","source":0,"src_end":2454,"src_start":2038},{"artifact":0,"gen_end":2355,"gen_start":2323,"node":0,"role":"declaration","source":0,"src_end":2490,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":8,"role":"declaration","source":0,"src_end":2490,"src_start":0},{"artifact":1,"gen_end":587,"gen_start":134,"node":9,"role":"declaration","source":0,"src_end":441,"src_start":149},{"artifact":1,"gen_end":1040,"gen_start":587,"node":10,"role":"declaration","source":0,"src_end":735,"src_start":443},{"artifact":1,"gen_end":1491,"gen_start":1040,"node":11,"role":"declaration","source":0,"src_end":1027,"src_start":737},{"artifact":1,"gen_end":1948,"gen_start":1491,"node":12,"role":"declaration","source":0,"src_end":1325,"src_start":1029},{"artifact":1,"gen_end":2413,"gen_start":1948,"node":13,"role":"declaration","source":0,"src_end":1631,"src_start":1327},{"artifact":1,"gen_end":2993,"gen_start":2413,"node":14,"role":"declaration","source":0,"src_end":2036,"src_start":1633},{"artifact":1,"gen_end":3586,"gen_start":2993,"node":15,"role":"declaration","source":0,"src_end":2454,"src_start":2038},{"artifact":1,"gen_end":3601,"gen_start":3586,"node":8,"role":"declaration","source":0,"src_end":2490,"src_start":0}],"module":"TargetOracle","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-latex-module"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"}],"semantic_id":"e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb","source_id":"965efd311d3549a7c17dd823b4418cfee906beecd273f4bfcafb371c36d9ce99","sources":[{"id":0,"kind":"file","path":"src/TargetOracle.lex.tex","sha256":"e34fca12090e04d8a853d4edfc9ae8db46d09ec586f2820f25d69c8ab3a7fb2d"}],"spec":"lexlean/source-map/1"} diff --git a/compiler/expected/build/maps/LexLeanTarget/TargetSemantics.map.json b/compiler/expected/build/maps/LexLeanTarget/TargetSemantics.map.json index 1c8e73c49..8867fbabb 100644 --- a/compiler/expected/build/maps/LexLeanTarget/TargetSemantics.map.json +++ b/compiler/expected/build/maps/LexLeanTarget/TargetSemantics.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/LexLeanTarget/TargetSemantics.lean"},{"id":1,"kind":"tex","path":"modules/LexLeanTarget/TargetSemantics.tex"}],"mappings":[{"artifact":0,"gen_end":332,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":426639,"src_start":0},{"artifact":0,"gen_end":470,"gen_start":332,"node":1,"role":"declaration","source":0,"src_end":401,"src_start":152},{"artifact":0,"gen_end":617,"gen_start":470,"node":2,"role":"declaration","source":0,"src_end":661,"src_start":403},{"artifact":0,"gen_end":928,"gen_start":617,"node":3,"role":"declaration","source":0,"src_end":1035,"src_start":663},{"artifact":0,"gen_end":1249,"gen_start":928,"node":4,"role":"declaration","source":0,"src_end":1450,"src_start":1037},{"artifact":0,"gen_end":1504,"gen_start":1249,"node":5,"role":"declaration","source":0,"src_end":1751,"src_start":1452},{"artifact":0,"gen_end":2065,"gen_start":1504,"node":6,"role":"declaration","source":0,"src_end":2459,"src_start":1753},{"artifact":0,"gen_end":2269,"gen_start":2065,"node":7,"role":"declaration","source":0,"src_end":2685,"src_start":2461},{"artifact":0,"gen_end":2523,"gen_start":2269,"node":8,"role":"declaration","source":0,"src_end":3001,"src_start":2687},{"artifact":0,"gen_end":2999,"gen_start":2523,"node":9,"role":"declaration","source":0,"src_end":3390,"src_start":3003},{"artifact":0,"gen_end":3768,"gen_start":2999,"node":10,"role":"declaration","source":0,"src_end":4053,"src_start":3392},{"artifact":0,"gen_end":4168,"gen_start":3768,"node":11,"role":"declaration","source":0,"src_end":4462,"src_start":4055},{"artifact":0,"gen_end":4504,"gen_start":4168,"node":12,"role":"declaration","source":0,"src_end":4774,"src_start":4464},{"artifact":0,"gen_end":4840,"gen_start":4504,"node":13,"role":"declaration","source":0,"src_end":5086,"src_start":4776},{"artifact":0,"gen_end":5182,"gen_start":4840,"node":14,"role":"declaration","source":0,"src_end":5425,"src_start":5088},{"artifact":0,"gen_end":5536,"gen_start":5182,"node":15,"role":"declaration","source":0,"src_end":5806,"src_start":5427},{"artifact":0,"gen_end":5881,"gen_start":5536,"node":16,"role":"declaration","source":0,"src_end":6127,"src_start":5808},{"artifact":0,"gen_end":6232,"gen_start":5881,"node":17,"role":"declaration","source":0,"src_end":6454,"src_start":6129},{"artifact":0,"gen_end":6583,"gen_start":6232,"node":18,"role":"declaration","source":0,"src_end":6781,"src_start":6456},{"artifact":0,"gen_end":6934,"gen_start":6583,"node":19,"role":"declaration","source":0,"src_end":7108,"src_start":6783},{"artifact":0,"gen_end":7274,"gen_start":6934,"node":20,"role":"declaration","source":0,"src_end":7424,"src_start":7110},{"artifact":0,"gen_end":7620,"gen_start":7274,"node":21,"role":"declaration","source":0,"src_end":7746,"src_start":7426},{"artifact":0,"gen_end":7966,"gen_start":7620,"node":22,"role":"declaration","source":0,"src_end":8068,"src_start":7748},{"artifact":0,"gen_end":8312,"gen_start":7966,"node":23,"role":"declaration","source":0,"src_end":8390,"src_start":8070},{"artifact":0,"gen_end":29494,"gen_start":8312,"node":24,"role":"declaration","source":0,"src_end":39304,"src_start":8392},{"artifact":0,"gen_end":30463,"gen_start":29494,"node":25,"role":"declaration","source":0,"src_end":40479,"src_start":39306},{"artifact":0,"gen_end":32002,"gen_start":30463,"node":26,"role":"declaration","source":0,"src_end":41949,"src_start":40481},{"artifact":0,"gen_end":32217,"gen_start":32002,"node":27,"role":"declaration","source":0,"src_end":42245,"src_start":41951},{"artifact":0,"gen_end":32554,"gen_start":32217,"node":28,"role":"declaration","source":0,"src_end":42696,"src_start":42247},{"artifact":0,"gen_end":56303,"gen_start":32554,"node":29,"role":"declaration","source":0,"src_end":80179,"src_start":42698},{"artifact":0,"gen_end":62781,"gen_start":56303,"node":30,"role":"declaration","source":0,"src_end":87652,"src_start":80181},{"artifact":0,"gen_end":63045,"gen_start":62781,"node":31,"role":"declaration","source":0,"src_end":87954,"src_start":87654},{"artifact":0,"gen_end":64666,"gen_start":63045,"node":32,"role":"declaration","source":0,"src_end":90259,"src_start":87956},{"artifact":0,"gen_end":327076,"gen_start":64666,"node":33,"role":"declaration","source":0,"src_end":408473,"src_start":90261},{"artifact":0,"gen_end":340316,"gen_start":327076,"node":34,"role":"declaration","source":0,"src_end":423624,"src_start":408475},{"artifact":0,"gen_end":341450,"gen_start":340316,"node":35,"role":"declaration","source":0,"src_end":424840,"src_start":423626},{"artifact":0,"gen_end":342407,"gen_start":341450,"node":36,"role":"declaration","source":0,"src_end":425975,"src_start":424842},{"artifact":0,"gen_end":342979,"gen_start":342407,"node":37,"role":"declaration","source":0,"src_end":426603,"src_start":425977},{"artifact":0,"gen_end":343014,"gen_start":342979,"node":0,"role":"declaration","source":0,"src_end":426639,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":38,"role":"declaration","source":0,"src_end":426639,"src_start":0},{"artifact":1,"gen_end":472,"gen_start":134,"node":39,"role":"declaration","source":0,"src_end":401,"src_start":152},{"artifact":1,"gen_end":819,"gen_start":472,"node":40,"role":"declaration","source":0,"src_end":661,"src_start":403},{"artifact":1,"gen_end":1312,"gen_start":819,"node":41,"role":"declaration","source":0,"src_end":1035,"src_start":663},{"artifact":1,"gen_end":1820,"gen_start":1312,"node":42,"role":"declaration","source":0,"src_end":1450,"src_start":1037},{"artifact":1,"gen_end":2262,"gen_start":1820,"node":43,"role":"declaration","source":0,"src_end":1751,"src_start":1452},{"artifact":1,"gen_end":2974,"gen_start":2262,"node":44,"role":"declaration","source":0,"src_end":2459,"src_start":1753},{"artifact":1,"gen_end":3360,"gen_start":2974,"node":45,"role":"declaration","source":0,"src_end":2685,"src_start":2461},{"artifact":1,"gen_end":3820,"gen_start":3360,"node":46,"role":"declaration","source":0,"src_end":3001,"src_start":2687},{"artifact":1,"gen_end":4493,"gen_start":3820,"node":47,"role":"declaration","source":0,"src_end":3390,"src_start":3003},{"artifact":1,"gen_end":5444,"gen_start":4493,"node":48,"role":"declaration","source":0,"src_end":4053,"src_start":3392},{"artifact":1,"gen_end":6028,"gen_start":5444,"node":49,"role":"declaration","source":0,"src_end":4462,"src_start":4055},{"artifact":1,"gen_end":6530,"gen_start":6028,"node":50,"role":"declaration","source":0,"src_end":4774,"src_start":4464},{"artifact":1,"gen_end":7032,"gen_start":6530,"node":51,"role":"declaration","source":0,"src_end":5086,"src_start":4776},{"artifact":1,"gen_end":7551,"gen_start":7032,"node":52,"role":"declaration","source":0,"src_end":5425,"src_start":5088},{"artifact":1,"gen_end":8112,"gen_start":7551,"node":53,"role":"declaration","source":0,"src_end":5806,"src_start":5427},{"artifact":1,"gen_end":8623,"gen_start":8112,"node":54,"role":"declaration","source":0,"src_end":6127,"src_start":5808},{"artifact":1,"gen_end":9140,"gen_start":8623,"node":55,"role":"declaration","source":0,"src_end":6454,"src_start":6129},{"artifact":1,"gen_end":9657,"gen_start":9140,"node":56,"role":"declaration","source":0,"src_end":6781,"src_start":6456},{"artifact":1,"gen_end":10174,"gen_start":9657,"node":57,"role":"declaration","source":0,"src_end":7108,"src_start":6783},{"artifact":1,"gen_end":10680,"gen_start":10174,"node":58,"role":"declaration","source":0,"src_end":7424,"src_start":7110},{"artifact":1,"gen_end":11192,"gen_start":10680,"node":59,"role":"declaration","source":0,"src_end":7746,"src_start":7426},{"artifact":1,"gen_end":11704,"gen_start":11192,"node":60,"role":"declaration","source":0,"src_end":8068,"src_start":7748},{"artifact":1,"gen_end":12216,"gen_start":11704,"node":61,"role":"declaration","source":0,"src_end":8390,"src_start":8070},{"artifact":1,"gen_end":33789,"gen_start":12216,"node":62,"role":"declaration","source":0,"src_end":39304,"src_start":8392},{"artifact":1,"gen_end":35022,"gen_start":33789,"node":63,"role":"declaration","source":0,"src_end":40479,"src_start":39306},{"artifact":1,"gen_end":36807,"gen_start":35022,"node":64,"role":"declaration","source":0,"src_end":41949,"src_start":40481},{"artifact":1,"gen_end":37299,"gen_start":36807,"node":65,"role":"declaration","source":0,"src_end":42245,"src_start":41951},{"artifact":1,"gen_end":37859,"gen_start":37299,"node":66,"role":"declaration","source":0,"src_end":42696,"src_start":42247},{"artifact":1,"gen_end":62160,"gen_start":37859,"node":67,"role":"declaration","source":0,"src_end":80179,"src_start":42698},{"artifact":1,"gen_end":68896,"gen_start":62160,"node":68,"role":"declaration","source":0,"src_end":87652,"src_start":80181},{"artifact":1,"gen_end":69357,"gen_start":68896,"node":69,"role":"declaration","source":0,"src_end":87954,"src_start":87654},{"artifact":1,"gen_end":71199,"gen_start":69357,"node":70,"role":"declaration","source":0,"src_end":90259,"src_start":87956},{"artifact":1,"gen_end":337147,"gen_start":71199,"node":71,"role":"declaration","source":0,"src_end":408473,"src_start":90261},{"artifact":1,"gen_end":350721,"gen_start":337147,"node":72,"role":"declaration","source":0,"src_end":423624,"src_start":408475},{"artifact":1,"gen_end":352052,"gen_start":350721,"node":73,"role":"declaration","source":0,"src_end":424840,"src_start":423626},{"artifact":1,"gen_end":353188,"gen_start":352052,"node":74,"role":"declaration","source":0,"src_end":425975,"src_start":424842},{"artifact":1,"gen_end":353983,"gen_start":353188,"node":75,"role":"declaration","source":0,"src_end":426603,"src_start":425977},{"artifact":1,"gen_end":353998,"gen_start":353983,"node":38,"role":"declaration","source":0,"src_end":426639,"src_start":0}],"module":"TargetSemantics","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-latex-module"},{"id":39,"kind":"semantic-declaration"},{"id":40,"kind":"semantic-declaration"},{"id":41,"kind":"semantic-declaration"},{"id":42,"kind":"semantic-declaration"},{"id":43,"kind":"semantic-declaration"},{"id":44,"kind":"semantic-declaration"},{"id":45,"kind":"semantic-declaration"},{"id":46,"kind":"semantic-declaration"},{"id":47,"kind":"semantic-declaration"},{"id":48,"kind":"semantic-declaration"},{"id":49,"kind":"semantic-declaration"},{"id":50,"kind":"semantic-declaration"},{"id":51,"kind":"semantic-declaration"},{"id":52,"kind":"semantic-declaration"},{"id":53,"kind":"semantic-declaration"},{"id":54,"kind":"semantic-declaration"},{"id":55,"kind":"semantic-declaration"},{"id":56,"kind":"semantic-declaration"},{"id":57,"kind":"semantic-declaration"},{"id":58,"kind":"semantic-declaration"},{"id":59,"kind":"semantic-declaration"},{"id":60,"kind":"semantic-declaration"},{"id":61,"kind":"semantic-declaration"},{"id":62,"kind":"semantic-declaration"},{"id":63,"kind":"semantic-declaration"},{"id":64,"kind":"semantic-declaration"},{"id":65,"kind":"semantic-declaration"},{"id":66,"kind":"semantic-declaration"},{"id":67,"kind":"semantic-declaration"},{"id":68,"kind":"semantic-declaration"},{"id":69,"kind":"semantic-declaration"},{"id":70,"kind":"semantic-declaration"},{"id":71,"kind":"semantic-declaration"},{"id":72,"kind":"semantic-declaration"},{"id":73,"kind":"semantic-declaration"},{"id":74,"kind":"semantic-declaration"},{"id":75,"kind":"semantic-declaration"}],"semantic_id":"c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517","source_id":"ce718723d5d252a9adafdc3cb3b76931b1d91e053dd3e7e31bcb9b9496a1941c","sources":[{"id":0,"kind":"file","path":"src/TargetSemantics.lex.tex","sha256":"92551ec717ba14a68c53203b5ea1f68359902201116de69c2816668038eb4a60"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/LexLeanTarget/TargetSemantics.lean"},{"id":1,"kind":"tex","path":"modules/LexLeanTarget/TargetSemantics.tex"}],"mappings":[{"artifact":0,"gen_end":332,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":426639,"src_start":0},{"artifact":0,"gen_end":470,"gen_start":332,"node":1,"role":"declaration","source":0,"src_end":401,"src_start":152},{"artifact":0,"gen_end":617,"gen_start":470,"node":2,"role":"declaration","source":0,"src_end":661,"src_start":403},{"artifact":0,"gen_end":928,"gen_start":617,"node":3,"role":"declaration","source":0,"src_end":1035,"src_start":663},{"artifact":0,"gen_end":1249,"gen_start":928,"node":4,"role":"declaration","source":0,"src_end":1450,"src_start":1037},{"artifact":0,"gen_end":1504,"gen_start":1249,"node":5,"role":"declaration","source":0,"src_end":1751,"src_start":1452},{"artifact":0,"gen_end":2065,"gen_start":1504,"node":6,"role":"declaration","source":0,"src_end":2459,"src_start":1753},{"artifact":0,"gen_end":2269,"gen_start":2065,"node":7,"role":"declaration","source":0,"src_end":2685,"src_start":2461},{"artifact":0,"gen_end":2523,"gen_start":2269,"node":8,"role":"declaration","source":0,"src_end":3001,"src_start":2687},{"artifact":0,"gen_end":2999,"gen_start":2523,"node":9,"role":"declaration","source":0,"src_end":3390,"src_start":3003},{"artifact":0,"gen_end":3768,"gen_start":2999,"node":10,"role":"declaration","source":0,"src_end":4053,"src_start":3392},{"artifact":0,"gen_end":4168,"gen_start":3768,"node":11,"role":"declaration","source":0,"src_end":4462,"src_start":4055},{"artifact":0,"gen_end":4504,"gen_start":4168,"node":12,"role":"declaration","source":0,"src_end":4774,"src_start":4464},{"artifact":0,"gen_end":4840,"gen_start":4504,"node":13,"role":"declaration","source":0,"src_end":5086,"src_start":4776},{"artifact":0,"gen_end":5182,"gen_start":4840,"node":14,"role":"declaration","source":0,"src_end":5425,"src_start":5088},{"artifact":0,"gen_end":5536,"gen_start":5182,"node":15,"role":"declaration","source":0,"src_end":5806,"src_start":5427},{"artifact":0,"gen_end":5881,"gen_start":5536,"node":16,"role":"declaration","source":0,"src_end":6127,"src_start":5808},{"artifact":0,"gen_end":6232,"gen_start":5881,"node":17,"role":"declaration","source":0,"src_end":6454,"src_start":6129},{"artifact":0,"gen_end":6583,"gen_start":6232,"node":18,"role":"declaration","source":0,"src_end":6781,"src_start":6456},{"artifact":0,"gen_end":6934,"gen_start":6583,"node":19,"role":"declaration","source":0,"src_end":7108,"src_start":6783},{"artifact":0,"gen_end":7274,"gen_start":6934,"node":20,"role":"declaration","source":0,"src_end":7424,"src_start":7110},{"artifact":0,"gen_end":7620,"gen_start":7274,"node":21,"role":"declaration","source":0,"src_end":7746,"src_start":7426},{"artifact":0,"gen_end":7966,"gen_start":7620,"node":22,"role":"declaration","source":0,"src_end":8068,"src_start":7748},{"artifact":0,"gen_end":8312,"gen_start":7966,"node":23,"role":"declaration","source":0,"src_end":8390,"src_start":8070},{"artifact":0,"gen_end":29494,"gen_start":8312,"node":24,"role":"declaration","source":0,"src_end":39304,"src_start":8392},{"artifact":0,"gen_end":30463,"gen_start":29494,"node":25,"role":"declaration","source":0,"src_end":40479,"src_start":39306},{"artifact":0,"gen_end":32002,"gen_start":30463,"node":26,"role":"declaration","source":0,"src_end":41949,"src_start":40481},{"artifact":0,"gen_end":32217,"gen_start":32002,"node":27,"role":"declaration","source":0,"src_end":42245,"src_start":41951},{"artifact":0,"gen_end":32554,"gen_start":32217,"node":28,"role":"declaration","source":0,"src_end":42696,"src_start":42247},{"artifact":0,"gen_end":56303,"gen_start":32554,"node":29,"role":"declaration","source":0,"src_end":80179,"src_start":42698},{"artifact":0,"gen_end":62781,"gen_start":56303,"node":30,"role":"declaration","source":0,"src_end":87652,"src_start":80181},{"artifact":0,"gen_end":63045,"gen_start":62781,"node":31,"role":"declaration","source":0,"src_end":87954,"src_start":87654},{"artifact":0,"gen_end":64666,"gen_start":63045,"node":32,"role":"declaration","source":0,"src_end":90259,"src_start":87956},{"artifact":0,"gen_end":327076,"gen_start":64666,"node":33,"role":"declaration","source":0,"src_end":408473,"src_start":90261},{"artifact":0,"gen_end":340316,"gen_start":327076,"node":34,"role":"declaration","source":0,"src_end":423624,"src_start":408475},{"artifact":0,"gen_end":341450,"gen_start":340316,"node":35,"role":"declaration","source":0,"src_end":424840,"src_start":423626},{"artifact":0,"gen_end":342407,"gen_start":341450,"node":36,"role":"declaration","source":0,"src_end":425975,"src_start":424842},{"artifact":0,"gen_end":342979,"gen_start":342407,"node":37,"role":"declaration","source":0,"src_end":426603,"src_start":425977},{"artifact":0,"gen_end":343014,"gen_start":342979,"node":0,"role":"declaration","source":0,"src_end":426639,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":38,"role":"declaration","source":0,"src_end":426639,"src_start":0},{"artifact":1,"gen_end":472,"gen_start":134,"node":39,"role":"declaration","source":0,"src_end":401,"src_start":152},{"artifact":1,"gen_end":819,"gen_start":472,"node":40,"role":"declaration","source":0,"src_end":661,"src_start":403},{"artifact":1,"gen_end":1312,"gen_start":819,"node":41,"role":"declaration","source":0,"src_end":1035,"src_start":663},{"artifact":1,"gen_end":1820,"gen_start":1312,"node":42,"role":"declaration","source":0,"src_end":1450,"src_start":1037},{"artifact":1,"gen_end":2262,"gen_start":1820,"node":43,"role":"declaration","source":0,"src_end":1751,"src_start":1452},{"artifact":1,"gen_end":2974,"gen_start":2262,"node":44,"role":"declaration","source":0,"src_end":2459,"src_start":1753},{"artifact":1,"gen_end":3360,"gen_start":2974,"node":45,"role":"declaration","source":0,"src_end":2685,"src_start":2461},{"artifact":1,"gen_end":3820,"gen_start":3360,"node":46,"role":"declaration","source":0,"src_end":3001,"src_start":2687},{"artifact":1,"gen_end":4493,"gen_start":3820,"node":47,"role":"declaration","source":0,"src_end":3390,"src_start":3003},{"artifact":1,"gen_end":5444,"gen_start":4493,"node":48,"role":"declaration","source":0,"src_end":4053,"src_start":3392},{"artifact":1,"gen_end":6028,"gen_start":5444,"node":49,"role":"declaration","source":0,"src_end":4462,"src_start":4055},{"artifact":1,"gen_end":6530,"gen_start":6028,"node":50,"role":"declaration","source":0,"src_end":4774,"src_start":4464},{"artifact":1,"gen_end":7032,"gen_start":6530,"node":51,"role":"declaration","source":0,"src_end":5086,"src_start":4776},{"artifact":1,"gen_end":7551,"gen_start":7032,"node":52,"role":"declaration","source":0,"src_end":5425,"src_start":5088},{"artifact":1,"gen_end":8112,"gen_start":7551,"node":53,"role":"declaration","source":0,"src_end":5806,"src_start":5427},{"artifact":1,"gen_end":8623,"gen_start":8112,"node":54,"role":"declaration","source":0,"src_end":6127,"src_start":5808},{"artifact":1,"gen_end":9140,"gen_start":8623,"node":55,"role":"declaration","source":0,"src_end":6454,"src_start":6129},{"artifact":1,"gen_end":9657,"gen_start":9140,"node":56,"role":"declaration","source":0,"src_end":6781,"src_start":6456},{"artifact":1,"gen_end":10174,"gen_start":9657,"node":57,"role":"declaration","source":0,"src_end":7108,"src_start":6783},{"artifact":1,"gen_end":10680,"gen_start":10174,"node":58,"role":"declaration","source":0,"src_end":7424,"src_start":7110},{"artifact":1,"gen_end":11192,"gen_start":10680,"node":59,"role":"declaration","source":0,"src_end":7746,"src_start":7426},{"artifact":1,"gen_end":11704,"gen_start":11192,"node":60,"role":"declaration","source":0,"src_end":8068,"src_start":7748},{"artifact":1,"gen_end":12216,"gen_start":11704,"node":61,"role":"declaration","source":0,"src_end":8390,"src_start":8070},{"artifact":1,"gen_end":33789,"gen_start":12216,"node":62,"role":"declaration","source":0,"src_end":39304,"src_start":8392},{"artifact":1,"gen_end":35022,"gen_start":33789,"node":63,"role":"declaration","source":0,"src_end":40479,"src_start":39306},{"artifact":1,"gen_end":36807,"gen_start":35022,"node":64,"role":"declaration","source":0,"src_end":41949,"src_start":40481},{"artifact":1,"gen_end":37299,"gen_start":36807,"node":65,"role":"declaration","source":0,"src_end":42245,"src_start":41951},{"artifact":1,"gen_end":37859,"gen_start":37299,"node":66,"role":"declaration","source":0,"src_end":42696,"src_start":42247},{"artifact":1,"gen_end":62160,"gen_start":37859,"node":67,"role":"declaration","source":0,"src_end":80179,"src_start":42698},{"artifact":1,"gen_end":68896,"gen_start":62160,"node":68,"role":"declaration","source":0,"src_end":87652,"src_start":80181},{"artifact":1,"gen_end":69357,"gen_start":68896,"node":69,"role":"declaration","source":0,"src_end":87954,"src_start":87654},{"artifact":1,"gen_end":71199,"gen_start":69357,"node":70,"role":"declaration","source":0,"src_end":90259,"src_start":87956},{"artifact":1,"gen_end":337147,"gen_start":71199,"node":71,"role":"declaration","source":0,"src_end":408473,"src_start":90261},{"artifact":1,"gen_end":350721,"gen_start":337147,"node":72,"role":"declaration","source":0,"src_end":423624,"src_start":408475},{"artifact":1,"gen_end":352052,"gen_start":350721,"node":73,"role":"declaration","source":0,"src_end":424840,"src_start":423626},{"artifact":1,"gen_end":353188,"gen_start":352052,"node":74,"role":"declaration","source":0,"src_end":425975,"src_start":424842},{"artifact":1,"gen_end":353983,"gen_start":353188,"node":75,"role":"declaration","source":0,"src_end":426603,"src_start":425977},{"artifact":1,"gen_end":353998,"gen_start":353983,"node":38,"role":"declaration","source":0,"src_end":426639,"src_start":0}],"module":"TargetSemantics","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-latex-module"},{"id":39,"kind":"semantic-declaration"},{"id":40,"kind":"semantic-declaration"},{"id":41,"kind":"semantic-declaration"},{"id":42,"kind":"semantic-declaration"},{"id":43,"kind":"semantic-declaration"},{"id":44,"kind":"semantic-declaration"},{"id":45,"kind":"semantic-declaration"},{"id":46,"kind":"semantic-declaration"},{"id":47,"kind":"semantic-declaration"},{"id":48,"kind":"semantic-declaration"},{"id":49,"kind":"semantic-declaration"},{"id":50,"kind":"semantic-declaration"},{"id":51,"kind":"semantic-declaration"},{"id":52,"kind":"semantic-declaration"},{"id":53,"kind":"semantic-declaration"},{"id":54,"kind":"semantic-declaration"},{"id":55,"kind":"semantic-declaration"},{"id":56,"kind":"semantic-declaration"},{"id":57,"kind":"semantic-declaration"},{"id":58,"kind":"semantic-declaration"},{"id":59,"kind":"semantic-declaration"},{"id":60,"kind":"semantic-declaration"},{"id":61,"kind":"semantic-declaration"},{"id":62,"kind":"semantic-declaration"},{"id":63,"kind":"semantic-declaration"},{"id":64,"kind":"semantic-declaration"},{"id":65,"kind":"semantic-declaration"},{"id":66,"kind":"semantic-declaration"},{"id":67,"kind":"semantic-declaration"},{"id":68,"kind":"semantic-declaration"},{"id":69,"kind":"semantic-declaration"},{"id":70,"kind":"semantic-declaration"},{"id":71,"kind":"semantic-declaration"},{"id":72,"kind":"semantic-declaration"},{"id":73,"kind":"semantic-declaration"},{"id":74,"kind":"semantic-declaration"},{"id":75,"kind":"semantic-declaration"}],"semantic_id":"e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb","source_id":"965efd311d3549a7c17dd823b4418cfee906beecd273f4bfcafb371c36d9ce99","sources":[{"id":0,"kind":"file","path":"src/TargetSemantics.lex.tex","sha256":"92551ec717ba14a68c53203b5ea1f68359902201116de69c2816668038eb4a60"}],"spec":"lexlean/source-map/1"} diff --git a/compiler/expected/build/maps/LexLeanTarget/TargetSyntax.map.json b/compiler/expected/build/maps/LexLeanTarget/TargetSyntax.map.json index b466637a7..7409f92f7 100644 --- a/compiler/expected/build/maps/LexLeanTarget/TargetSyntax.map.json +++ b/compiler/expected/build/maps/LexLeanTarget/TargetSyntax.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/LexLeanTarget/TargetSyntax.lean"},{"id":1,"kind":"tex","path":"modules/LexLeanTarget/TargetSyntax.tex"}],"mappings":[{"artifact":0,"gen_end":209,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":5518,"src_start":0},{"artifact":0,"gen_end":303,"gen_start":209,"node":1,"role":"declaration","source":0,"src_end":442,"src_start":121},{"artifact":0,"gen_end":360,"gen_start":303,"node":2,"role":"declaration","source":0,"src_end":607,"src_start":444},{"artifact":0,"gen_end":623,"gen_start":360,"node":3,"role":"declaration","source":0,"src_end":1161,"src_start":609},{"artifact":0,"gen_end":1163,"gen_start":623,"node":4,"role":"declaration","source":0,"src_end":2079,"src_start":1163},{"artifact":0,"gen_end":1339,"gen_start":1163,"node":5,"role":"declaration","source":0,"src_end":2649,"src_start":2081},{"artifact":0,"gen_end":1909,"gen_start":1339,"node":6,"role":"declaration","source":0,"src_end":4148,"src_start":2651},{"artifact":0,"gen_end":2417,"gen_start":1909,"node":7,"role":"declaration","source":0,"src_end":4825,"src_start":4150},{"artifact":0,"gen_end":2497,"gen_start":2417,"node":8,"role":"declaration","source":0,"src_end":4974,"src_start":4827},{"artifact":0,"gen_end":2559,"gen_start":2497,"node":9,"role":"declaration","source":0,"src_end":5099,"src_start":4976},{"artifact":0,"gen_end":2666,"gen_start":2559,"node":10,"role":"declaration","source":0,"src_end":5325,"src_start":5101},{"artifact":0,"gen_end":2748,"gen_start":2666,"node":11,"role":"declaration","source":0,"src_end":5482,"src_start":5327},{"artifact":0,"gen_end":2780,"gen_start":2748,"node":0,"role":"declaration","source":0,"src_end":5518,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":12,"role":"declaration","source":0,"src_end":5518,"src_start":0},{"artifact":1,"gen_end":627,"gen_start":134,"node":13,"role":"declaration","source":0,"src_end":442,"src_start":121},{"artifact":1,"gen_end":858,"gen_start":627,"node":14,"role":"declaration","source":0,"src_end":607,"src_start":444},{"artifact":1,"gen_end":1726,"gen_start":858,"node":15,"role":"declaration","source":0,"src_end":1161,"src_start":609},{"artifact":1,"gen_end":3178,"gen_start":1726,"node":16,"role":"declaration","source":0,"src_end":2079,"src_start":1163},{"artifact":1,"gen_end":4106,"gen_start":3178,"node":17,"role":"declaration","source":0,"src_end":2649,"src_start":2081},{"artifact":1,"gen_end":6591,"gen_start":4106,"node":18,"role":"declaration","source":0,"src_end":4148,"src_start":2651},{"artifact":1,"gen_end":7585,"gen_start":6591,"node":19,"role":"declaration","source":0,"src_end":4825,"src_start":4150},{"artifact":1,"gen_end":7771,"gen_start":7585,"node":20,"role":"declaration","source":0,"src_end":4974,"src_start":4827},{"artifact":1,"gen_end":7908,"gen_start":7771,"node":21,"role":"declaration","source":0,"src_end":5099,"src_start":4976},{"artifact":1,"gen_end":8198,"gen_start":7908,"node":22,"role":"declaration","source":0,"src_end":5325,"src_start":5101},{"artifact":1,"gen_end":8391,"gen_start":8198,"node":23,"role":"declaration","source":0,"src_end":5482,"src_start":5327},{"artifact":1,"gen_end":8406,"gen_start":8391,"node":12,"role":"declaration","source":0,"src_end":5518,"src_start":0}],"module":"TargetSyntax","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-latex-module"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"}],"semantic_id":"c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517","source_id":"ce718723d5d252a9adafdc3cb3b76931b1d91e053dd3e7e31bcb9b9496a1941c","sources":[{"id":0,"kind":"file","path":"src/TargetSyntax.lex.tex","sha256":"943d39daf9ece2d492cf8b15ba2df218f84031dbf0757b8ee765d240df55276e"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/LexLeanTarget/TargetSyntax.lean"},{"id":1,"kind":"tex","path":"modules/LexLeanTarget/TargetSyntax.tex"}],"mappings":[{"artifact":0,"gen_end":209,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":5518,"src_start":0},{"artifact":0,"gen_end":303,"gen_start":209,"node":1,"role":"declaration","source":0,"src_end":442,"src_start":121},{"artifact":0,"gen_end":360,"gen_start":303,"node":2,"role":"declaration","source":0,"src_end":607,"src_start":444},{"artifact":0,"gen_end":623,"gen_start":360,"node":3,"role":"declaration","source":0,"src_end":1161,"src_start":609},{"artifact":0,"gen_end":1163,"gen_start":623,"node":4,"role":"declaration","source":0,"src_end":2079,"src_start":1163},{"artifact":0,"gen_end":1339,"gen_start":1163,"node":5,"role":"declaration","source":0,"src_end":2649,"src_start":2081},{"artifact":0,"gen_end":1909,"gen_start":1339,"node":6,"role":"declaration","source":0,"src_end":4148,"src_start":2651},{"artifact":0,"gen_end":2417,"gen_start":1909,"node":7,"role":"declaration","source":0,"src_end":4825,"src_start":4150},{"artifact":0,"gen_end":2497,"gen_start":2417,"node":8,"role":"declaration","source":0,"src_end":4974,"src_start":4827},{"artifact":0,"gen_end":2559,"gen_start":2497,"node":9,"role":"declaration","source":0,"src_end":5099,"src_start":4976},{"artifact":0,"gen_end":2666,"gen_start":2559,"node":10,"role":"declaration","source":0,"src_end":5325,"src_start":5101},{"artifact":0,"gen_end":2748,"gen_start":2666,"node":11,"role":"declaration","source":0,"src_end":5482,"src_start":5327},{"artifact":0,"gen_end":2780,"gen_start":2748,"node":0,"role":"declaration","source":0,"src_end":5518,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":12,"role":"declaration","source":0,"src_end":5518,"src_start":0},{"artifact":1,"gen_end":627,"gen_start":134,"node":13,"role":"declaration","source":0,"src_end":442,"src_start":121},{"artifact":1,"gen_end":858,"gen_start":627,"node":14,"role":"declaration","source":0,"src_end":607,"src_start":444},{"artifact":1,"gen_end":1726,"gen_start":858,"node":15,"role":"declaration","source":0,"src_end":1161,"src_start":609},{"artifact":1,"gen_end":3178,"gen_start":1726,"node":16,"role":"declaration","source":0,"src_end":2079,"src_start":1163},{"artifact":1,"gen_end":4106,"gen_start":3178,"node":17,"role":"declaration","source":0,"src_end":2649,"src_start":2081},{"artifact":1,"gen_end":6591,"gen_start":4106,"node":18,"role":"declaration","source":0,"src_end":4148,"src_start":2651},{"artifact":1,"gen_end":7585,"gen_start":6591,"node":19,"role":"declaration","source":0,"src_end":4825,"src_start":4150},{"artifact":1,"gen_end":7771,"gen_start":7585,"node":20,"role":"declaration","source":0,"src_end":4974,"src_start":4827},{"artifact":1,"gen_end":7908,"gen_start":7771,"node":21,"role":"declaration","source":0,"src_end":5099,"src_start":4976},{"artifact":1,"gen_end":8198,"gen_start":7908,"node":22,"role":"declaration","source":0,"src_end":5325,"src_start":5101},{"artifact":1,"gen_end":8391,"gen_start":8198,"node":23,"role":"declaration","source":0,"src_end":5482,"src_start":5327},{"artifact":1,"gen_end":8406,"gen_start":8391,"node":12,"role":"declaration","source":0,"src_end":5518,"src_start":0}],"module":"TargetSyntax","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-latex-module"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"}],"semantic_id":"e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb","source_id":"965efd311d3549a7c17dd823b4418cfee906beecd273f4bfcafb371c36d9ce99","sources":[{"id":0,"kind":"file","path":"src/TargetSyntax.lex.tex","sha256":"943d39daf9ece2d492cf8b15ba2df218f84031dbf0757b8ee765d240df55276e"}],"spec":"lexlean/source-map/1"} diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanRuntime.Collections.process.json b/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanRuntime.Collections.process.json deleted file mode 100644 index fcf0cf722..000000000 --- a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanRuntime.Collections.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanRuntime.Collections.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanRuntime.Collections","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanCollections.Key' does not depend on any axioms\n'LexLeanCollections.Key.casesOn' does not depend on any axioms\n'LexLeanCollections.Key.compare' does not depend on any axioms\n'LexLeanCollections.Key.ctorIdx' does not depend on any axioms\n'LexLeanCollections.Key.mk._flat_ctor' does not depend on any axioms\n'LexLeanCollections.Key.mk.noConfusion' does not depend on any axioms\n'LexLeanCollections.Key.noConfusion' does not depend on any axioms\n'LexLeanCollections.Key.noConfusionType' does not depend on any axioms\n'LexLeanCollections.Key.recOn' does not depend on any axioms\n'LexLeanCollections.compareCodes' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._f' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._sunfold' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._unsafe_rec' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.match_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.match_4' does not depend on any axioms\n'LexLeanCollections.containsElement' does not depend on any axioms\n'LexLeanCollections.containsElement._f' does not depend on any axioms\n'LexLeanCollections.containsElement._sunfold' does not depend on any axioms\n'LexLeanCollections.containsElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.graphNodes' does not depend on any axioms\n'LexLeanCollections.graphReachable' depends on axioms: [propext]\n'LexLeanCollections.graphSuccessors' does not depend on any axioms\n'LexLeanCollections.graphTopological' does not depend on any axioms\n'LexLeanCollections.insertElement' does not depend on any axioms\n'LexLeanCollections.insertElement._f' does not depend on any axioms\n'LexLeanCollections.insertElement._sunfold' does not depend on any axioms\n'LexLeanCollections.insertElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.insertElement.match_1' does not depend on any axioms\n'LexLeanCollections.insertEntry' does not depend on any axioms\n'LexLeanCollections.insertEntry._f' does not depend on any axioms\n'LexLeanCollections.insertEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.insertEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.insertEntry.match_1' does not depend on any axioms\n'LexLeanCollections.insertEntry.match_3' does not depend on any axioms\n'LexLeanCollections.instKeyBool' depends on axioms: [propext]\n'LexLeanCollections.instKeyInt' does not depend on any axioms\n'LexLeanCollections.instKeyInt16' does not depend on any axioms\n'LexLeanCollections.instKeyInt32' does not depend on any axioms\n'LexLeanCollections.instKeyInt64' does not depend on any axioms\n'LexLeanCollections.instKeyInt8' does not depend on any axioms\n'LexLeanCollections.instKeyNat' does not depend on any axioms\n'LexLeanCollections.instKeyProd' depends on axioms: [propext]\n'LexLeanCollections.instKeyString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanCollections.instKeyUInt16' does not depend on any axioms\n'LexLeanCollections.instKeyUInt32' does not depend on any axioms\n'LexLeanCollections.instKeyUInt64' does not depend on any axioms\n'LexLeanCollections.instKeyUInt8' does not depend on any axioms\n'LexLeanCollections.iterate' does not depend on any axioms\n'LexLeanCollections.iterate._f' does not depend on any axioms\n'LexLeanCollections.iterate._sunfold' does not depend on any axioms\n'LexLeanCollections.iterate._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.iterate.match_1' does not depend on any axioms\n'LexLeanCollections.iterateUntil' does not depend on any axioms\n'LexLeanCollections.iterateUntil._f' does not depend on any axioms\n'LexLeanCollections.iterateUntil._sunfold' does not depend on any axioms\n'LexLeanCollections.iterateUntil._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.iterateUntil.match_1' does not depend on any axioms\n'LexLeanCollections.lessThan' depends on axioms: [propext]\n'LexLeanCollections.lessThan._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.lessThan.match_1' depends on axioms: [propext]\n'LexLeanCollections.listFold' does not depend on any axioms\n'LexLeanCollections.lookupEntry' does not depend on any axioms\n'LexLeanCollections.lookupEntry._f' does not depend on any axioms\n'LexLeanCollections.lookupEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.lookupEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.mapContains' does not depend on any axioms\n'LexLeanCollections.mapEntries' does not depend on any axioms\n'LexLeanCollections.mapFold' does not depend on any axioms\n'LexLeanCollections.mapInsert' does not depend on any axioms\n'LexLeanCollections.mapKeys' does not depend on any axioms\n'LexLeanCollections.mapLookup' does not depend on any axioms\n'LexLeanCollections.mapRemove' does not depend on any axioms\n'LexLeanCollections.mapSize' does not depend on any axioms\n'LexLeanCollections.mapValues' does not depend on any axioms\n'LexLeanCollections.reachableFrom' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._f' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._sunfold' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._unsafe_rec' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom.match_1' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom.match_4' does not depend on any axioms\n'LexLeanCollections.removeElement' does not depend on any axioms\n'LexLeanCollections.removeElement._f' does not depend on any axioms\n'LexLeanCollections.removeElement._sunfold' does not depend on any axioms\n'LexLeanCollections.removeElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.removeEntry' does not depend on any axioms\n'LexLeanCollections.removeEntry._f' does not depend on any axioms\n'LexLeanCollections.removeEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.removeEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.setContains' does not depend on any axioms\n'LexLeanCollections.setDifference' does not depend on any axioms\n'LexLeanCollections.setElements' does not depend on any axioms\n'LexLeanCollections.setFold' does not depend on any axioms\n'LexLeanCollections.setInsert' does not depend on any axioms\n'LexLeanCollections.setIntersection' does not depend on any axioms\n'LexLeanCollections.setRemove' does not depend on any axioms\n'LexLeanCollections.setSize' does not depend on any axioms\n'LexLeanCollections.setUnion' does not depend on any axioms\n'LexLeanCollections.topological' does not depend on any axioms\n'LexLeanCollections.topological._f' does not depend on any axioms\n'LexLeanCollections.topological._sunfold' does not depend on any axioms\n'LexLeanCollections.topological._unsafe_rec' does not depend on any axioms\n","stdout_sha256":"b75acc0e99e23684c3cc876eacbfc93f47161cfee8a7440df17fa45f321c8c6a","tool":"lean"} diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanRuntime.Laws.process.json b/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanRuntime.Laws.process.json deleted file mode 100644 index 8b17b7d17..000000000 --- a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanRuntime.Laws.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanRuntime.Laws.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanRuntime.Laws","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanCollections.lessThan._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanCollections.lessThan.eq_1' depends on axioms: [propext]\n'LexLeanCollections.listFold.eq_1' does not depend on any axioms\n'LexLeanLaws.append_list' does not depend on any axioms\n'LexLeanLaws.length_list' does not depend on any axioms\n'LexLeanLaws.lessThan_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int16' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int32' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int64' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int8' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_nat' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint16' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint32' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint64' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint8' depends on axioms: [propext]\n'LexLeanLaws.listFold_add_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_add_int_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_add_nat' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_add_nat_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_append' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_cons' does not depend on any axioms\n'LexLeanLaws.listFold_extend' depends on axioms: [propext]\n'LexLeanLaws.listFold_fusion' does not depend on any axioms\n'LexLeanLaws.listFold_nil' does not depend on any axioms\n'LexLeanLaws.listFold_pair' does not depend on any axioms\n'LexLeanLaws.listFold_prepend' depends on axioms: [propext]\n'LexLeanLaws.listFold_sub_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_sub_int_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.mapEntries_self' does not depend on any axioms\n'LexLeanLaws.mapFold_listFold' does not depend on any axioms\n'LexLeanLaws.mapSize_length' does not depend on any axioms\n'LexLeanLaws.quotient_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.quotient_nat' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.remainder_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.remainder_nat' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.setElements_self' does not depend on any axioms\n'LexLeanLaws.setFold_listFold' does not depend on any axioms\n'LexLeanLaws.setSize_length' does not depend on any axioms\n'LexLeanLaws.sumInt' does not depend on any axioms\n'LexLeanLaws.sumInt._f' does not depend on any axioms\n'LexLeanLaws.sumInt._sunfold' does not depend on any axioms\n'LexLeanLaws.sumInt._unsafe_rec' does not depend on any axioms\n'LexLeanLaws.sumInt.eq_1' does not depend on any axioms\n'LexLeanLaws.sumInt.eq_2' does not depend on any axioms\n'LexLeanLaws.sumInt.eq_def' does not depend on any axioms\n'LexLeanLaws.sumInt_add' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_append' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_cons' does not depend on any axioms\n'LexLeanLaws.sumInt_const' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_mul' depends on axioms: [propext]\n'LexLeanLaws.sumInt_mul_right' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_mul_self' depends on axioms: [propext]\n'LexLeanLaws.sumInt_neg' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_neg_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_nil' does not depend on any axioms\n'LexLeanLaws.sumInt_perm' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_reverse' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_sub' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat' does not depend on any axioms\n'LexLeanLaws.sumNat._f' does not depend on any axioms\n'LexLeanLaws.sumNat._sunfold' does not depend on any axioms\n'LexLeanLaws.sumNat._unsafe_rec' does not depend on any axioms\n'LexLeanLaws.sumNat.eq_1' does not depend on any axioms\n'LexLeanLaws.sumNat.eq_2' does not depend on any axioms\n'LexLeanLaws.sumNat.eq_def' does not depend on any axioms\n'LexLeanLaws.sumNat.match_1' does not depend on any axioms\n'LexLeanLaws.sumNat_add' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_append' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_cons' does not depend on any axioms\n'LexLeanLaws.sumNat_const' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_mul' does not depend on any axioms\n'LexLeanLaws.sumNat_mul_right' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_mul_self' does not depend on any axioms\n'LexLeanLaws.sumNat_nil' does not depend on any axioms\n'LexLeanLaws.sumNat_perm' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_reverse' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.tdiv_ediv' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.tmod_emod' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.quotient.eq_1' does not depend on any axioms\n'LexLeanRuntime.remainder.eq_1' does not depend on any axioms\n","stdout_sha256":"a4ba2d39c9cdfd5e40c41c5ccf4726d937fd192fc042b74bb56cc0651e28919e","tool":"lean"} diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanRuntime.Models.process.json b/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanRuntime.Models.process.json deleted file mode 100644 index 46605066e..000000000 --- a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanRuntime.Models.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanRuntime.Models.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanRuntime.Models","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanModels.Agreement' does not depend on any axioms\n'LexLeanModels.Complete1' does not depend on any axioms\n'LexLeanModels.Complete2' does not depend on any axioms\n'LexLeanModels.Complete4' does not depend on any axioms\n'LexLeanModels.Equivalent' does not depend on any axioms\n'LexLeanModels.EquivalentStep' does not depend on any axioms\n'LexLeanModels.EquivalentStepNoInvariant' does not depend on any axioms\n'LexLeanModels.EquivalentStepNoPrecondition' does not depend on any axioms\n'LexLeanModels.EquivalentStepTotal' does not depend on any axioms\n'LexLeanModels.EquivalentTotal' does not depend on any axioms\n'LexLeanModels.Initial' does not depend on any axioms\n'LexLeanModels.Preserves' does not depend on any axioms\n'LexLeanModels.PreservesTotal' does not depend on any axioms\n'LexLeanModels.Satisfies' does not depend on any axioms\n'LexLeanModels.SatisfiesStep' does not depend on any axioms\n'LexLeanModels.SatisfiesStepNoInvariant' does not depend on any axioms\n'LexLeanModels.SatisfiesStepNoPrecondition' does not depend on any axioms\n'LexLeanModels.SatisfiesStepTotal' does not depend on any axioms\n'LexLeanModels.SatisfiesTotal' does not depend on any axioms\n'LexLeanModels.Sound1' does not depend on any axioms\n'LexLeanModels.Sound2' does not depend on any axioms\n'LexLeanModels.Sound4' does not depend on any axioms\n'LexLeanModels.encodeInt' does not depend on any axioms\n'LexLeanModels.inRange' does not depend on any axioms\n'LexLeanModels.linesMatch' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanModels.tensorMatches' does not depend on any axioms\n'LexLeanModels.utf8Char' does not depend on any axioms\n","stdout_sha256":"43ad1c715570458672aedc9abb1691012eef870f5b804f1e230abb890e49ffee","tool":"lean"} diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanRuntime.Portable.process.json b/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanRuntime.Portable.process.json deleted file mode 100644 index c2cc38853..000000000 --- a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanRuntime.Portable.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanRuntime.Portable.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanRuntime.Portable","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanRuntime.Appendable' does not depend on any axioms\n'LexLeanRuntime.Appendable.append' does not depend on any axioms\n'LexLeanRuntime.Appendable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Appendable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Appendable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Appendable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Appendable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Appendable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Appendable.recOn' does not depend on any axioms\n'LexLeanRuntime.Decimal' does not depend on any axioms\n'LexLeanRuntime.Decimal.casesOn' does not depend on any axioms\n'LexLeanRuntime.Decimal.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Decimal.format' does not depend on any axioms\n'LexLeanRuntime.Decimal.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Decimal.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Decimal.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Decimal.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Decimal.parse' does not depend on any axioms\n'LexLeanRuntime.Decimal.recOn' does not depend on any axioms\n'LexLeanRuntime.Fixed' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitAnd' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitNot' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitOr' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitXor' does not depend on any axioms\n'LexLeanRuntime.Fixed.casesOn' does not depend on any axioms\n'LexLeanRuntime.Fixed.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Fixed.fromInt' does not depend on any axioms\n'LexLeanRuntime.Fixed.maximum' does not depend on any axioms\n'LexLeanRuntime.Fixed.minimum' does not depend on any axioms\n'LexLeanRuntime.Fixed.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Fixed.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Fixed.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Fixed.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Fixed.recOn' does not depend on any axioms\n'LexLeanRuntime.Fixed.shiftLeft' does not depend on any axioms\n'LexLeanRuntime.Fixed.shiftRight' does not depend on any axioms\n'LexLeanRuntime.Fixed.toToMathInt' does not depend on any axioms\n'LexLeanRuntime.Indexable' does not depend on any axioms\n'LexLeanRuntime.Indexable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Indexable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Indexable.index' does not depend on any axioms\n'LexLeanRuntime.Indexable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Indexable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Indexable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Indexable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Indexable.recOn' does not depend on any axioms\n'LexLeanRuntime.Lengthable' does not depend on any axioms\n'LexLeanRuntime.Lengthable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Lengthable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Lengthable.length' does not depend on any axioms\n'LexLeanRuntime.Lengthable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Lengthable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Lengthable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Lengthable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Lengthable.recOn' does not depend on any axioms\n'LexLeanRuntime.Quotient' does not depend on any axioms\n'LexLeanRuntime.Quotient.casesOn' does not depend on any axioms\n'LexLeanRuntime.Quotient.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Quotient.isZero' does not depend on any axioms\n'LexLeanRuntime.Quotient.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Quotient.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Quotient.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Quotient.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Quotient.quotient' does not depend on any axioms\n'LexLeanRuntime.Quotient.recOn' does not depend on any axioms\n'LexLeanRuntime.Quotient.remainder' does not depend on any axioms\n'LexLeanRuntime.Sliceable' does not depend on any axioms\n'LexLeanRuntime.Sliceable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Sliceable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Sliceable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Sliceable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Sliceable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Sliceable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Sliceable.recOn' does not depend on any axioms\n'LexLeanRuntime.Sliceable.slice' does not depend on any axioms\n'LexLeanRuntime.ToMathInt' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.casesOn' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.noConfusion' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.recOn' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.toInt' does not depend on any axioms\n'LexLeanRuntime.append' does not depend on any axioms\n'LexLeanRuntime.bitAnd' does not depend on any axioms\n'LexLeanRuntime.bitNot' does not depend on any axioms\n'LexLeanRuntime.bitOr' does not depend on any axioms\n'LexLeanRuntime.bitXor' does not depend on any axioms\n'LexLeanRuntime.checkedAdd' does not depend on any axioms\n'LexLeanRuntime.checkedAddInt64' does not depend on any axioms\n'LexLeanRuntime.checkedConvert' does not depend on any axioms\n'LexLeanRuntime.checkedFromInt' does not depend on any axioms\n'LexLeanRuntime.checkedMultiply' does not depend on any axioms\n'LexLeanRuntime.checkedMultiplyInt64' does not depend on any axioms\n'LexLeanRuntime.checkedMultiplyInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.checkedNegate' does not depend on any axioms\n'LexLeanRuntime.checkedNegateInt64' does not depend on any axioms\n'LexLeanRuntime.checkedQuotient' does not depend on any axioms\n'LexLeanRuntime.checkedQuotientInt64' does not depend on any axioms\n'LexLeanRuntime.checkedSubtract' does not depend on any axioms\n'LexLeanRuntime.checkedSubtractInt64' does not depend on any axioms\n'LexLeanRuntime.compareBytes' depends on axioms: [propext]\n'LexLeanRuntime.divideMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._f' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._sunfold' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.equal' does not depend on any axioms\n'LexLeanRuntime.formatDecimal' does not depend on any axioms\n'LexLeanRuntime.index' does not depend on any axioms\n'LexLeanRuntime.instAppendableByteArray' does not depend on any axioms\n'LexLeanRuntime.instAppendableList' does not depend on any axioms\n'LexLeanRuntime.instDecimalInt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instDecimalInt.match_1' does not depend on any axioms\n'LexLeanRuntime.instDecimalOfFixedOfToString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instFixedInt16' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt32' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt64' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt8' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt16' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt32' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt64' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt8' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instIndexableByteArrayUInt8' does not depend on any axioms\n'LexLeanRuntime.instIndexableList' does not depend on any axioms\n'LexLeanRuntime.instLengthableByteArray' does not depend on any axioms\n'LexLeanRuntime.instLengthableList' does not depend on any axioms\n'LexLeanRuntime.instLengthableString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instQuotientInt' does not depend on any axioms\n'LexLeanRuntime.instQuotientNat' does not depend on any axioms\n'LexLeanRuntime.instSliceableByteArray' does not depend on any axioms\n'LexLeanRuntime.instSliceableList' does not depend on any axioms\n'LexLeanRuntime.instToMathIntInt' does not depend on any axioms\n'LexLeanRuntime.join' depends on axioms: [propext]\n'LexLeanRuntime.length' does not depend on any axioms\n'LexLeanRuntime.listIndex' does not depend on any axioms\n'LexLeanRuntime.listIndex._f' does not depend on any axioms\n'LexLeanRuntime.listIndex._sunfold' does not depend on any axioms\n'LexLeanRuntime.listIndex._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.listIndex.match_1' does not depend on any axioms\n'LexLeanRuntime.magnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.multiply' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._f' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._sunfold' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.negate' does not depend on any axioms\n'LexLeanRuntime.parseDecimal' does not depend on any axioms\n'LexLeanRuntime.quotient' does not depend on any axioms\n'LexLeanRuntime.remainder' does not depend on any axioms\n'LexLeanRuntime.shiftLeft' does not depend on any axioms\n'LexLeanRuntime.shiftRight' does not depend on any axioms\n'LexLeanRuntime.signedMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.slice' does not depend on any axioms\n'LexLeanRuntime.splitExact' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.subtract' does not depend on any axioms\n'LexLeanRuntime.utf8Decode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.utf8Encode' does not depend on any axioms\n","stdout_sha256":"73fea1d9e9e9f0a2f1363b9f284eeeb9e434430e9fa910260b9526bad864641e","tool":"lean"} diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanRuntime.Reasoning.process.json b/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanRuntime.Reasoning.process.json deleted file mode 100644 index e99dfed26..000000000 --- a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanRuntime.Reasoning.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanRuntime.Reasoning.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanRuntime.Reasoning","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanReasoning.All' does not depend on any axioms\n'LexLeanReasoning.All.below' does not depend on any axioms\n'LexLeanReasoning.All.below.casesOn' does not depend on any axioms\n'LexLeanReasoning.All.brecOn' does not depend on any axioms\n'LexLeanReasoning.All.casesOn' does not depend on any axioms\n'LexLeanReasoning.All.recOn' does not depend on any axioms\n'LexLeanReasoning.Complete' does not depend on any axioms\n'LexLeanReasoning.Found' does not depend on any axioms\n'LexLeanReasoning.Found.match_1' does not depend on any axioms\n'LexLeanReasoning.Preserves' does not depend on any axioms\n'LexLeanReasoning.Reaches' does not depend on any axioms\n'LexLeanReasoning.SearchOk' does not depend on any axioms\n'LexLeanReasoning.Sound' does not depend on any axioms\n'LexLeanReasoning.Star' does not depend on any axioms\n'LexLeanReasoning.Star.below' does not depend on any axioms\n'LexLeanReasoning.Star.below.casesOn' does not depend on any axioms\n'LexLeanReasoning.Star.brecOn' does not depend on any axioms\n'LexLeanReasoning.Star.casesOn' does not depend on any axioms\n'LexLeanReasoning.Star.recOn' does not depend on any axioms\n'LexLeanReasoning.allAppend' does not depend on any axioms\n'LexLeanReasoning.allFold' does not depend on any axioms\n'LexLeanReasoning.allHead' does not depend on any axioms\n'LexLeanReasoning.allSingle' does not depend on any axioms\n'LexLeanReasoning.allTail' does not depend on any axioms\n'LexLeanReasoning.bltSucc' does not depend on any axioms\n'LexLeanReasoning.capAll' does not depend on any axioms\n'LexLeanReasoning.capBound' does not depend on any axioms\n'LexLeanReasoning.checked' does not depend on any axioms\n'LexLeanReasoning.foldInvariant' does not depend on any axioms\n'LexLeanReasoning.foldSnoc' does not depend on any axioms\n'LexLeanReasoning.freshAll' does not depend on any axioms\n'LexLeanReasoning.guarded' does not depend on any axioms\n'LexLeanReasoning.guardedRank' does not depend on any axioms\n'LexLeanReasoning.iterateUntilBound' does not depend on any axioms\n'LexLeanReasoning.iterateUntilCount' does not depend on any axioms\n'LexLeanReasoning.iterateUntilGrowth' does not depend on any axioms\n'LexLeanReasoning.iterateUntilInvariant' does not depend on any axioms\n'LexLeanReasoning.iterateUntilSimulate' does not depend on any axioms\n'LexLeanReasoning.iterateUntilStops' does not depend on any axioms\n'LexLeanReasoning.lengthSnoc' does not depend on any axioms\n'LexLeanReasoning.noneSome' does not depend on any axioms\n'LexLeanReasoning.peakBound' does not depend on any axioms\n'LexLeanReasoning.reachesStart' does not depend on any axioms\n'LexLeanReasoning.searchStart' does not depend on any axioms\n'LexLeanReasoning.starPreserves' does not depend on any axioms\n'LexLeanReasoning.zeroLe' does not depend on any axioms\n","stdout_sha256":"bcad061b4e8b3848b9d6815070631b4088a7b6b1512ab5c741c66c6dea825fee","tool":"lean"} diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.BudgetOracle.process.json b/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.BudgetOracle.process.json deleted file mode 100644 index c33f3d81a..000000000 --- a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.BudgetOracle.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.BudgetOracle.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.BudgetOracle","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanTarget.BudgetOracle.Burn.apply' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Burn.apply_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.BudgetOracle.Burn.apply_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.BudgetOracle.Burn.candidates' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Burn.conclusion' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Burn.guard' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Drained.sound' depends on axioms: [propext]\n'LexLeanTarget.BudgetOracle.Empty' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.Ledger' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.Run' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.Step' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.accept' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.accept_sound' depends on axioms: [propext]\n'LexLeanTarget.BudgetOracle.Refund.account' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.answer' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.attempts' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.conclude' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.conclude_accept' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.conclude_sound' depends on axioms: [propext]\n'LexLeanTarget.BudgetOracle.Refund.derivation' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.BudgetOracle.Refund.explained' depends on axioms: [propext]\n'LexLeanTarget.BudgetOracle.Refund.extract' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.fire' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.fire_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.BudgetOracle.Refund.firings_bounded' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.follow' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.iterations_bounded' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.next' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.next_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.BudgetOracle.Refund.observe' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.replay' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.replay_fire' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.replay_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.BudgetOracle.Refund.run' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.run_state' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.run_trace' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.saturate' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.saturate_derivation' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.BudgetOracle.Refund.select' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.start' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.step' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.step_count' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.step_fired' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.step_none' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.step_some' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.step_trace' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.verdict' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.verdict_sound' depends on axioms: [propext]\n'LexLeanTarget.BudgetOracle.Remaining' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.Ledger' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.Run' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.Step' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.accept' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.accept_sound' depends on axioms: [propext]\n'LexLeanTarget.BudgetOracle.Spend.account' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.answer' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.attempts' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.conclude' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.conclude_accept' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.conclude_sound' depends on axioms: [propext]\n'LexLeanTarget.BudgetOracle.Spend.derivation' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.BudgetOracle.Spend.explained' depends on axioms: [propext]\n'LexLeanTarget.BudgetOracle.Spend.extract' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.fire' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.fire_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.BudgetOracle.Spend.fire_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.BudgetOracle.Spend.firings_bounded' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.follow' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.iterations_bounded' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.next' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.next_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.BudgetOracle.Spend.next_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.BudgetOracle.Spend.observe' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.replay' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.replay_fire' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.replay_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.BudgetOracle.Spend.run' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.run_state' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.run_trace' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.saturate' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.saturate_derivation' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.BudgetOracle.Spend.saturates' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.BudgetOracle.Spend.select' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.start' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.step' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.step_count' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.step_fired' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.step_none' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.step_some' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.step_trace' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.verdict' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.verdict_sound' depends on axioms: [propext]\n'LexLeanTarget.BudgetOracle.Spent' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Tick.apply' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Tick.apply_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.BudgetOracle.Tick.apply_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.BudgetOracle.Tick.conclusion' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Tick.guard' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.allowance_bound' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.BudgetOracle.burn_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.BudgetOracle.burn_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.BudgetOracle.emptyCheck' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.empty_sound' depends on axioms: [propext]\n'LexLeanTarget.BudgetOracle.tick_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.BudgetOracle.tick_sound' depends on axioms: [propext, Quot.sound]\n","stdout_sha256":"59007df9d3aac13b14aaf31eaed78191fe1dd3bed8cf0c08553de02edaf64988","tool":"lean"} diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.Certification.process.json b/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.Certification.process.json deleted file mode 100644 index f41f54312..000000000 --- a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.Certification.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.Certification.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.Certification","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanTarget.Certification.Bridge' does not depend on any axioms\n'LexLeanTarget.Certification.Certificate' does not depend on any axioms\n'LexLeanTarget.Certification.Certified' does not depend on any axioms\n'LexLeanTarget.Certification.Established' does not depend on any axioms\n'LexLeanTarget.Certification.Fact' does not depend on any axioms\n'LexLeanTarget.Certification.Obligation' does not depend on any axioms\n'LexLeanTarget.Certification.Premise' does not depend on any axioms\n'LexLeanTarget.Certification.Refusal' does not depend on any axioms\n'LexLeanTarget.Certification.Route' does not depend on any axioms\n'LexLeanTarget.Certification.Schema' does not depend on any axioms\n'LexLeanTarget.Certification.Verdict' does not depend on any axioms\n'LexLeanTarget.Certification.allBelow' does not depend on any axioms\n'LexLeanTarget.Certification.allLists' does not depend on any axioms\n'LexLeanTarget.Certification.allLong' does not depend on any axioms\n'LexLeanTarget.Certification.allShorter' does not depend on any axioms\n'LexLeanTarget.Certification.argumentStatus' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.Certification.armIsolated' does not depend on any axioms\n'LexLeanTarget.Certification.armsIsolated' does not depend on any axioms\n'LexLeanTarget.Certification.ascending' does not depend on any axioms\n'LexLeanTarget.Certification.bridgePosition' does not depend on any axioms\n'LexLeanTarget.Certification.certificateReductionsPreserve' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.Certification.cheaperObservation' does not depend on any axioms\n'LexLeanTarget.Certification.check' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.Certification.claimShape' does not depend on any axioms\n'LexLeanTarget.Certification.eligible' does not depend on any axioms\n'LexLeanTarget.Certification.establishedFrom' does not depend on any axioms\n'LexLeanTarget.Certification.exprIsolated' does not depend on any axioms\n'LexLeanTarget.Certification.exprsIsolated' does not depend on any axioms\n'LexLeanTarget.Certification.factAt' does not depend on any axioms\n'LexLeanTarget.Certification.factRows' does not depend on any axioms\n'LexLeanTarget.Certification.factsOf' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.Certification.firstSmaller' does not depend on any axioms\n'LexLeanTarget.Certification.frontierPosition' does not depend on any axioms\n'LexLeanTarget.Certification.frontierVerdict' does not depend on any axioms\n'LexLeanTarget.Certification.improves' does not depend on any axioms\n'LexLeanTarget.Certification.isList' does not depend on any axioms\n'LexLeanTarget.Certification.isLong' does not depend on any axioms\n'LexLeanTarget.Certification.isNormal' does not depend on any axioms\n'LexLeanTarget.Certification.isShorter' does not depend on any axioms\n'LexLeanTarget.Certification.keepsObservation' does not depend on any axioms\n'LexLeanTarget.Certification.lowerPosition' does not depend on any axioms\n'LexLeanTarget.Certification.lowerVerdict' does not depend on any axioms\n'LexLeanTarget.Certification.natAt' does not depend on any axioms\n'LexLeanTarget.Certification.normalityVerdict' does not depend on any axioms\n'LexLeanTarget.Certification.pairRelation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.Certification.pickFrom' does not depend on any axioms\n'LexLeanTarget.Certification.plansIsolated' does not depend on any axioms\n'LexLeanTarget.Certification.positionOf' does not depend on any axioms\n'LexLeanTarget.Certification.premiseFact' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.Certification.preserves' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.Certification.reductionVerdict' does not depend on any axioms\n'LexLeanTarget.Certification.reductionsPreserve' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.Certification.representationVerdict' does not depend on any axioms\n'LexLeanTarget.Certification.rewrite' does not depend on any axioms\n'LexLeanTarget.Certification.rowsOfMembers' does not depend on any axioms\n'LexLeanTarget.Certification.sameObjective' does not depend on any axioms\n'LexLeanTarget.Certification.sameObservations' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.Certification.sameObservationsAt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.Certification.sameScope' does not depend on any axioms\n'LexLeanTarget.Certification.scanBridge' does not depend on any axioms\n'LexLeanTarget.Certification.scanFrontier' does not depend on any axioms\n'LexLeanTarget.Certification.scanLower' does not depend on any axioms\n'LexLeanTarget.Certification.scanReduction' does not depend on any axioms\n'LexLeanTarget.Certification.selectorAt' does not depend on any axioms\n'LexLeanTarget.Certification.sizesOf' does not depend on any axioms\n'LexLeanTarget.Certification.staticCharge' does not depend on any axioms\n'LexLeanTarget.Certification.staticSize' does not depend on any axioms\n'LexLeanTarget.Certification.strictlyCheaper' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.Certification.strictlyCheaperAt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.Certification.valueAt' does not depend on any axioms\n","stdout_sha256":"80f2bb229260f7d797c445dfde090e98a616a384a81de5827faf42cb60c0213e","tool":"lean"} diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.Gnaf.process.json b/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.Gnaf.process.json deleted file mode 100644 index b7355b99e..000000000 --- a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.Gnaf.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.Gnaf.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.Gnaf","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanTarget.Gnaf.Action' does not depend on any axioms\n'LexLeanTarget.Gnaf.ActionKind' does not depend on any axioms\n'LexLeanTarget.Gnaf.Answer' does not depend on any axioms\n'LexLeanTarget.Gnaf.Boundary' does not depend on any axioms\n'LexLeanTarget.Gnaf.Capacity' does not depend on any axioms\n'LexLeanTarget.Gnaf.Carrier' does not depend on any axioms\n'LexLeanTarget.Gnaf.Charge' does not depend on any axioms\n'LexLeanTarget.Gnaf.ClaimClass' does not depend on any axioms\n'LexLeanTarget.Gnaf.Completeness' does not depend on any axioms\n'LexLeanTarget.Gnaf.Grammar' does not depend on any axioms\n'LexLeanTarget.Gnaf.Machine' does not depend on any axioms\n'LexLeanTarget.Gnaf.Objective' does not depend on any axioms\n'LexLeanTarget.Gnaf.OperandSize' does not depend on any axioms\n'LexLeanTarget.Gnaf.Plan' does not depend on any axioms\n'LexLeanTarget.Gnaf.Prepared' does not depend on any axioms\n'LexLeanTarget.Gnaf.Rejection' does not depend on any axioms\n'LexLeanTarget.Gnaf.Request' does not depend on any axioms\n'LexLeanTarget.Gnaf.Scope' does not depend on any axioms\n'LexLeanTarget.Gnaf.Selector' does not depend on any axioms\n'LexLeanTarget.Gnaf.Status' does not depend on any axioms\n'LexLeanTarget.Gnaf.addNew' does not depend on any axioms\n'LexLeanTarget.Gnaf.admittedRows' does not depend on any axioms\n'LexLeanTarget.Gnaf.allIn' does not depend on any axioms\n'LexLeanTarget.Gnaf.andFalse' does not depend on any axioms\n'LexLeanTarget.Gnaf.andOverOr' does not depend on any axioms\n'LexLeanTarget.Gnaf.answer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.Gnaf.anyBy' does not depend on any axioms\n'LexLeanTarget.Gnaf.anyUnresolved' does not depend on any axioms\n'LexLeanTarget.Gnaf.appendAll' does not depend on any axioms\n'LexLeanTarget.Gnaf.argmin' does not depend on any axioms\n'LexLeanTarget.Gnaf.armCallees' does not depend on any axioms\n'LexLeanTarget.Gnaf.armSize' does not depend on any axioms\n'LexLeanTarget.Gnaf.armsCallees' does not depend on any axioms\n'LexLeanTarget.Gnaf.armsSize' does not depend on any axioms\n'LexLeanTarget.Gnaf.arrivals' does not depend on any axioms\n'LexLeanTarget.Gnaf.attaining' does not depend on any axioms\n'LexLeanTarget.Gnaf.attains' does not depend on any axioms\n'LexLeanTarget.Gnaf.beqNext' does not depend on any axioms\n'LexLeanTarget.Gnaf.bltNext' does not depend on any axioms\n'LexLeanTarget.Gnaf.bltSucc' depends on axioms: [propext]\n'LexLeanTarget.Gnaf.calleesOf' does not depend on any axioms\n'LexLeanTarget.Gnaf.certifies' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.Gnaf.certifiesArgmin' does not depend on any axioms\n'LexLeanTarget.Gnaf.certifiesFrontier' does not depend on any axioms\n'LexLeanTarget.Gnaf.chargeBeyond' does not depend on any axioms\n'LexLeanTarget.Gnaf.checkAllDeclared' does not depend on any axioms\n'LexLeanTarget.Gnaf.checkClaim' does not depend on any axioms\n'LexLeanTarget.Gnaf.checkDeclared' does not depend on any axioms\n'LexLeanTarget.Gnaf.checkDistinct' does not depend on any axioms\n'LexLeanTarget.Gnaf.checkKindsAccounted' does not depend on any axioms\n'LexLeanTarget.Gnaf.checkPerformed' does not depend on any axioms\n'LexLeanTarget.Gnaf.checkPlanPreparation' does not depend on any axioms\n'LexLeanTarget.Gnaf.checkPrepared' does not depend on any axioms\n'LexLeanTarget.Gnaf.closeOver' does not depend on any axioms\n'LexLeanTarget.Gnaf.componentwiseMinimum' does not depend on any axioms\n'LexLeanTarget.Gnaf.compositions' does not depend on any axioms\n'LexLeanTarget.Gnaf.countKind' does not depend on any axioms\n'LexLeanTarget.Gnaf.dispatchInFixed' depends on axioms: [propext]\n'LexLeanTarget.Gnaf.dispatchInOver' depends on axioms: [propext]\n'LexLeanTarget.Gnaf.dispatchInSmalls' depends on axioms: [propext]\n'LexLeanTarget.Gnaf.dispatchInThresholds' depends on axioms: [propext]\n'LexLeanTarget.Gnaf.dispatchOver' does not depend on any axioms\n'LexLeanTarget.Gnaf.dispatchSmalls' does not depend on any axioms\n'LexLeanTarget.Gnaf.dispatchThresholds' does not depend on any axioms\n'LexLeanTarget.Gnaf.dominatedIn' does not depend on any axioms\n'LexLeanTarget.Gnaf.dominates' does not depend on any axioms\n'LexLeanTarget.Gnaf.entryBody' does not depend on any axioms\n'LexLeanTarget.Gnaf.environmentRows' does not depend on any axioms\n'LexLeanTarget.Gnaf.evaluate' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.Gnaf.expand' does not depend on any axioms\n'LexLeanTarget.Gnaf.expandComplete' depends on axioms: [propext]\n'LexLeanTarget.Gnaf.exprCallees' does not depend on any axioms\n'LexLeanTarget.Gnaf.exprSize' does not depend on any axioms\n'LexLeanTarget.Gnaf.exprsCallees' does not depend on any axioms\n'LexLeanTarget.Gnaf.exprsSize' does not depend on any axioms\n'LexLeanTarget.Gnaf.extendAll' does not depend on any axioms\n'LexLeanTarget.Gnaf.extendWalk' does not depend on any axioms\n'LexLeanTarget.Gnaf.fairExpectation' does not depend on any axioms\n'LexLeanTarget.Gnaf.falseAnd' does not depend on any axioms\n'LexLeanTarget.Gnaf.falseOr' does not depend on any axioms\n'LexLeanTarget.Gnaf.findAction' does not depend on any axioms\n'LexLeanTarget.Gnaf.fixedInDispatch' depends on axioms: [propext]\n'LexLeanTarget.Gnaf.fixedInFixed' depends on axioms: [propext]\n'LexLeanTarget.Gnaf.fixedInOver' depends on axioms: [propext]\n'LexLeanTarget.Gnaf.fixedInSmalls' depends on axioms: [propext]\n'LexLeanTarget.Gnaf.fixedOver' does not depend on any axioms\n'LexLeanTarget.Gnaf.frontier' does not depend on any axioms\n'LexLeanTarget.Gnaf.frontierFrom' does not depend on any axioms\n'LexLeanTarget.Gnaf.functionAt' does not depend on any axioms\n'LexLeanTarget.Gnaf.hiddenBitCost' does not depend on any axioms\n'LexLeanTarget.Gnaf.kindIndex' does not depend on any axioms\n'LexLeanTarget.Gnaf.minimaAttained' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.Gnaf.minimumFrom' does not depend on any axioms\n'LexLeanTarget.Gnaf.natIn' does not depend on any axioms\n'LexLeanTarget.Gnaf.natInAppend' depends on axioms: [propext]\n'LexLeanTarget.Gnaf.natInRange' depends on axioms: [propext]\n'LexLeanTarget.Gnaf.natSame' does not depend on any axioms\n'LexLeanTarget.Gnaf.normalize' does not depend on any axioms\n'LexLeanTarget.Gnaf.orAssociative' does not depend on any axioms\n'LexLeanTarget.Gnaf.orFalse' does not depend on any axioms\n'LexLeanTarget.Gnaf.orUnderAnd' does not depend on any axioms\n'LexLeanTarget.Gnaf.performed' does not depend on any axioms\n'LexLeanTarget.Gnaf.planAt' does not depend on any axioms\n'LexLeanTarget.Gnaf.planCharge' does not depend on any axioms\n'LexLeanTarget.Gnaf.planFunctions' does not depend on any axioms\n'LexLeanTarget.Gnaf.pointwiseMinimum' does not depend on any axioms\n'LexLeanTarget.Gnaf.preparation' does not depend on any axioms\n'LexLeanTarget.Gnaf.preparedFor' does not depend on any axioms\n'LexLeanTarget.Gnaf.range' does not depend on any axioms\n'LexLeanTarget.Gnaf.reachable' does not depend on any axioms\n'LexLeanTarget.Gnaf.reachableCharge' does not depend on any axioms\n'LexLeanTarget.Gnaf.reachableSize' does not depend on any axioms\n'LexLeanTarget.Gnaf.realize' does not depend on any axioms\n'LexLeanTarget.Gnaf.rej14ComponentwiseMinima' does not depend on any axioms\n'LexLeanTarget.Gnaf.rej14MinimaUnattained' does not depend on any axioms\n'LexLeanTarget.Gnaf.rej29FrontierOmission' does not depend on any axioms\n'LexLeanTarget.Gnaf.rewriteOnce' does not depend on any axioms\n'LexLeanTarget.Gnaf.sameIdsBy' does not depend on any axioms\n'LexLeanTarget.Gnaf.sameKind' does not depend on any axioms\n'LexLeanTarget.Gnaf.scalarMinimum' does not depend on any axioms\n'LexLeanTarget.Gnaf.scalarRows' does not depend on any axioms\n'LexLeanTarget.Gnaf.selectorEq' does not depend on any axioms\n'LexLeanTarget.Gnaf.selectorIn' does not depend on any axioms\n'LexLeanTarget.Gnaf.selectorInAppend' depends on axioms: [propext]\n'LexLeanTarget.Gnaf.status' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.Gnaf.statusOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.Gnaf.statuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.Gnaf.statusesOf' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.Gnaf.uniformRows' does not depend on any axioms\n'LexLeanTarget.Gnaf.unitCharge' does not depend on any axioms\n'LexLeanTarget.Gnaf.universeOf' does not depend on any axioms\n'LexLeanTarget.Gnaf.validate' does not depend on any axioms\n'LexLeanTarget.Gnaf.valueEq' does not depend on any axioms\n'LexLeanTarget.Gnaf.valuesEq' does not depend on any axioms\n'LexLeanTarget.Gnaf.vec01CertificateHolds' does not depend on any axioms\n'LexLeanTarget.Gnaf.vec01CertificateInvalidated' does not depend on any axioms\n'LexLeanTarget.Gnaf.vec01Extension' does not depend on any axioms\n'LexLeanTarget.Gnaf.vec01Optimum' does not depend on any axioms\n'LexLeanTarget.Gnaf.vec02Frontier' does not depend on any axioms\n'LexLeanTarget.Gnaf.vec04GlobalMinimumIsC' does not depend on any axioms\n'LexLeanTarget.Gnaf.vec04NormalFormIsB' does not depend on any axioms\n'LexLeanTarget.Gnaf.vec04NormalFormRefused' does not depend on any axioms\n'LexLeanTarget.Gnaf.vec17EnvelopeAtOne' does not depend on any axioms\n'LexLeanTarget.Gnaf.vec17EnvelopeAtZero' does not depend on any axioms\n'LexLeanTarget.Gnaf.vec17FairExpectationAtOne' does not depend on any axioms\n'LexLeanTarget.Gnaf.vec17FairExpectationAtZero' does not depend on any axioms\n'LexLeanTarget.Gnaf.vec17PointwiseValueRefused' does not depend on any axioms\n'LexLeanTarget.Gnaf.vec17UniformWorstCase' does not depend on any axioms\n'LexLeanTarget.Gnaf.vectorEq' does not depend on any axioms\n'LexLeanTarget.Gnaf.weaklyBelow' does not depend on any axioms\n'LexLeanTarget.Gnaf.wellFormed' does not depend on any axioms\n'LexLeanTarget.Gnaf.worstCase' does not depend on any axioms\n","stdout_sha256":"1331df9e3d4bee88e89d70ef6b406f01870c0b8da40a372fd990d013ddc52447","tool":"lean"} diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.GnafCertificates.process.json b/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.GnafCertificates.process.json deleted file mode 100644 index b9dcfacb7..000000000 --- a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.GnafCertificates.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.GnafCertificates.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.GnafCertificates","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanTarget.GnafCertificates.argminOverSystemsPair0x0Cheaper' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.argminOverSystemsPair0x0Keeps' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.argminOverSystemsPair2x0Cheaper' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.argminOverSystemsPair2x0Keeps' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.bridgeAttainedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.bridgeAttainedVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.bridgeMissingCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.bridgeMissingVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.bridgeNotMinimalCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.bridgeNotMinimalVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.bridgeOutOfRangeCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.bridgeOutOfRangeVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.bridgeReducedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.bridgeReducedPreserves' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.bridgeReducedVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.bridgeUnattainedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.bridgeUnattainedVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.bridgeUnprovenCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.bridgeUnprovenVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.bridgeUnresolvedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.bridgeUnresolvedVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.bridgeViolatedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.bridgeViolatedVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.claimMismatchCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.claimMismatchVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.frontierDominatedMemberCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.frontierDominatedMemberVerdict' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.frontierMemberAtCountCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.frontierMemberAtCountVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.frontierMemberOmittedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.frontierMemberOmittedVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.frontierMemberUnprovenCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.frontierMemberUnprovenVerdict' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.frontierMembersUnorderedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.frontierMembersUnorderedVerdict' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.frontierNonmemberUnprovenCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.frontierNonmemberUnprovenVerdict' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.frontierParetoOptimalCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.frontierParetoOptimalVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.frontierPremiseWeakenedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.frontierPremiseWeakenedVerdict' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.frontierTieCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.frontierTieDroppedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.frontierTieDroppedVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.frontierTieVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.frontierUnresolvedMemberCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.frontierUnresolvedMemberVerdict' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.frontierUnresolvedNonmemberCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.frontierUnresolvedNonmemberVerdict' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.frontierVec02Certificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.frontierVec02Verdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.inadmissiblePlanExcludedPair0x0Cheaper' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.inadmissiblePlanExcludedPair0x0Keeps' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.inadmissiblePlanExcludedPair0x1Cheaper' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.inadmissiblePlanExcludedPair0x1Keeps' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.inadmissiblePlanExcludedPair2x0Cheaper' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.inadmissiblePlanExcludedPair2x0Keeps' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.internalBestOnShortListsPair0x0Cheaper' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.internalBestOnShortListsPair0x0Keeps' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.internalBestOnShortListsPair1x0Cheaper' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.internalBestOnShortListsPair1x0Keeps' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.lbArgminCompleteCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbArgminCompleteVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbArgminMeasuredCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbArgminMeasuredVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbArgminOverSystemsCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbArgminOverSystemsVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbArgminTieCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbArgminTieVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbAttainerAtCountCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbAttainerAtCountVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbAttainerBoundedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbAttainerBoundedVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbAttainerOutOfRangeCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbAttainerOutOfRangeVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbAttainersUnorderedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbAttainersUnorderedVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbDivergingPlanCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbDivergingPlanVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbExcludedAdmittedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbExcludedAdmittedVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbExcludedAtLengthCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbExcludedAtLengthVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbExcludedUnresolvedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbExcludedUnresolvedVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbExtraPremiseCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbExtraPremiseVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbInfeasibleAttainerCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbInfeasibleAttainerVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbNoAttainerCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbNoAttainerVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbOptimumTieMeasuredCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbOptimumTieMeasuredVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbOverUnresolvedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbOverUnresolvedVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbPaysInadmissiblePrefixCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbPaysInadmissiblePrefixVerdict' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.lbPositionOutOfDomainCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbPositionOutOfDomainVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbPositionsRepeatedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbPositionsRepeatedVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbPremiseOmittedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbPremiseOmittedVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbPremiseWeakenedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbPremiseWeakenedVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbPreparationChargedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbPreparationChargedVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbTieBoundedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbTieBoundedVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbTieDroppedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbTieDroppedVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbUnattainedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbUnattainedVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbUndercutCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbUndercutVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbUnresolvedMeasuredCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbUnresolvedMeasuredVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbUnresolvedUnboundedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbUnresolvedUnboundedVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.normalClaimedGlobalCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.normalClaimedGlobalVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.normalNotGlobalCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.normalNotGlobalVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.normalityImprovableCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.normalityImprovableVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.normalityOptimumCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.normalityOptimumVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.objectiveMismatchCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.objectiveMismatchVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.reductionCollapseDistinctCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.reductionCollapseDistinctPreserves' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.reductionCollapseDistinctVerdict' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.reductionIncompleteCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.reductionIncompletePreserves' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.reductionIncompleteVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.reductionIneligibleCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.reductionIneligiblePreserves' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.reductionIneligibleVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.reductionMixedDomainCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.reductionMixedDomainPreserves' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.reductionMixedDomainVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.reductionOverUnresolvedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.reductionOverUnresolvedVerdict' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.reductionParetoCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.reductionParetoVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.reductionShortListsCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.reductionShortListsPreserves' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.reductionShortListsVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.reductionSmallAtThresholdCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.reductionSmallAtThresholdPreserves' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.reductionSmallAtThresholdVerdict' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.reductionThresholdEdgeCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.reductionThresholdEdgePreserves' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.reductionThresholdEdgeVerdict' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.requestRejectedCachedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.requestRejectedCachedPreserves' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.requestRejectedCachedVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.requestRejectedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.requestRejectedVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.reusedEnlargedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.reusedEnlargedVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.routeIncompatibleCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.routeIncompatibleVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.routeLowerBoundParetoCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.routeLowerBoundParetoVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.scopeMismatchCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.scopeMismatchVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.thresholdEdgePair0x0Cheaper' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.thresholdEdgePair0x0Keeps' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.thresholdEdgePair1x0Cheaper' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.thresholdEdgePair1x0Keeps' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.verifierMismatchCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.verifierMismatchVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n","stdout_sha256":"71d56f58daf3ebbc941b59ce5953be0e2d87a70a3d394ccbec6873c2bfc11058","tool":"lean"} diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.GnafFixtures.process.json b/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.GnafFixtures.process.json deleted file mode 100644 index 86aa09834..000000000 --- a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.GnafFixtures.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.GnafFixtures.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.GnafFixtures","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanTarget.GnafFixtures.argminCompleteAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.argminCompleteRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.argminCompleteStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.argminCompleteUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.argminOverSystemsAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.argminOverSystemsRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.argminOverSystemsStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.argminOverSystemsUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.argminTieAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.argminTieRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.argminTieStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.argminTieUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.boundOverUnresolvedAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.boundOverUnresolvedRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.boundOverUnresolvedStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.boundOverUnresolvedUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.bridgeStraightLineAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.bridgeStraightLineRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.bridgeStraightLineStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.bridgeStraightLineUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.frontierIncomparableAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.frontierIncomparableRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.frontierIncomparableStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.frontierIncomparableUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.frontierOverUnresolvedAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.frontierOverUnresolvedRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.frontierOverUnresolvedStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.frontierOverUnresolvedUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.frontierParetoOptimalAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.frontierParetoOptimalRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.frontierParetoOptimalStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.frontierParetoOptimalUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.frontierTieAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.frontierTieRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.frontierTieStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.frontierTieUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.inadmissiblePlanExcludedAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.inadmissiblePlanExcludedRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.inadmissiblePlanExcludedStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.inadmissiblePlanExcludedUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.infeasibleUniverseAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.infeasibleUniverseRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.infeasibleUniverseStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.infeasibleUniverseUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.internalBestOnLongListsAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.internalBestOnLongListsRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.internalBestOnLongListsStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.internalBestOnLongListsUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.internalBestOnShortListsAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.internalBestOnShortListsRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.internalBestOnShortListsStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.internalBestOnShortListsUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.optimumOverUnresolvedAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.optimumOverUnresolvedRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.optimumOverUnresolvedStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.optimumOverUnresolvedUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.optimumTieAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.optimumTieRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.optimumTieStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.optimumTieUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.preparationChargedAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.preparationChargedRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.preparationChargedStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.preparationChargedUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.preparationCommonPlanAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.preparationCommonPlanRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.preparationCommonPlanStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.preparationCommonPlanUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.preparationCommonStateAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.preparationCommonStateRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.preparationCommonStateStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.preparationCommonStateUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.reasoningArgminAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.reasoningArgminRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.reasoningArgminStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.reasoningArgminUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.reasoningFrontierAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.reasoningFrontierRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.reasoningFrontierStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.reasoningFrontierUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectBeyondCapacityAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectBeyondCapacityRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectBeyondCapacityUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectCachedUniverseAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectCachedUniverseRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectCachedUniverseUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectCalculusProgramScopeAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectCalculusProgramScopeRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectCalculusProgramScopeUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectCommunicationAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectCommunicationRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectCommunicationUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectConstantCostFallbackAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectConstantCostFallbackRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectConstantCostFallbackUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectDiscoveredUniverseAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectDiscoveredUniverseRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectDiscoveredUniverseUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectDuplicateActionAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectDuplicateActionRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectDuplicateActionUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectEmptyDomainAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectEmptyDomainRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectEmptyDomainUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectFreeObservationAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectFreeObservationRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectFreeObservationUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectFreePreprocessingCompleteBoundaryAnswer' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectFreePreprocessingCompleteBoundaryRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectFreePreprocessingCompleteBoundaryUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectInstanceOptimalClaimAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectInstanceOptimalClaimRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectInstanceOptimalClaimUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectInternalPlanUniverseAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectInternalPlanUniverseRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectInternalPlanUniverseUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectMissingCompletenessAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectMissingCompletenessRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectMissingCompletenessUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectOptimizerCompletenessAnswer' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectOptimizerCompletenessRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectOptimizerCompletenessUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectOptimizerDefinedUniverseAnswer' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectOptimizerDefinedUniverseRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectOptimizerDefinedUniverseUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectProfileDefinedComparisonClaimAnswer' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectProfileDefinedComparisonClaimRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectProfileDefinedComparisonClaimUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectRandomnessAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectRandomnessRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectRandomnessUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectReasoningDiscoveredUniverseAnswer' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectReasoningDiscoveredUniverseRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectReasoningDiscoveredUniverseUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectReasoningFreeSearchAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectReasoningFreeSearchRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectReasoningFreeSearchUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectRestrictedUniverseAliasAnswer' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectRestrictedUniverseAliasRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectRestrictedUniverseAliasUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectRustProgramScopeAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectRustProgramScopeRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectRustProgramScopeUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectScalarClaimPartialOrderAnswer' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectScalarClaimPartialOrderRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectScalarClaimPartialOrderUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectSchedulingAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectSchedulingRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectSchedulingUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectSelfReferentialCompletenessAnswer' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectSelfReferentialCompletenessRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectSelfReferentialCompletenessUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectStepChargedAdviceAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectStepChargedAdviceRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectStepChargedAdviceUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectStrayPreparedArtifactAnswer' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectStrayPreparedArtifactRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectStrayPreparedArtifactUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectUnaccountedDispatchAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectUnaccountedDispatchRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectUnaccountedDispatchUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectUnaccountedPlanPreparationAnswer' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectUnaccountedPlanPreparationRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectUnaccountedPlanPreparationUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectUnboundPreparedStateAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectUnboundPreparedStateRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectUnboundPreparedStateUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectUndeclaredExecutionAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectUndeclaredExecutionRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectUndeclaredExecutionUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectUndeclaredRetainedStateAnswer' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectUndeclaredRetainedStateRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectUndeclaredRetainedStateUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectUnitCostOperandsAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectUnitCostOperandsRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectUnitCostOperandsUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectUnsupportedClaimAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectUnsupportedClaimRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectUnsupportedClaimUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectVectorClaimTotalOrderAnswer' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectVectorClaimTotalOrderRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectVectorClaimTotalOrderUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectZeroCostDispatchAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectZeroCostDispatchRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectZeroCostDispatchUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectZeroCostPreprocessingAnswer' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectZeroCostPreprocessingRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectZeroCostPreprocessingUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.thresholdEdgeAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.thresholdEdgeRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.thresholdEdgeStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.thresholdEdgeUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.unknownCostIncompleteAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.unknownCostIncompleteRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.unknownCostIncompleteStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.unknownCostIncompleteUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.vec02ParetoEnvelopeAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.vec02ParetoEnvelopeCertified' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.vec02ParetoEnvelopeMinimaUnattained' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafFixtures.vec02ParetoEnvelopeOmits0' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.vec02ParetoEnvelopeOmits1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.vec02ParetoEnvelopeOmits2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.vec02ParetoEnvelopeRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.vec02ParetoEnvelopeStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.vec02ParetoEnvelopeUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.vec08EnlargedAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.vec08EnlargedRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.vec08EnlargedStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.vec08EnlargedUniverse' does not depend on any axioms\n","stdout_sha256":"e81a8012148d7879e88bf0122728eaf3bc463a9dc405d7de812313e48575f9fc","tool":"lean"} diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.GradeOracle.process.json b/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.GradeOracle.process.json deleted file mode 100644 index c31e27913..000000000 --- a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.GradeOracle.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.GradeOracle.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.GradeOracle","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanTarget.GradeOracle.Grade' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.Ledger' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.Run' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.Step' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.accept' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.accept_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GradeOracle.Grade.account' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.answer' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.attempts' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.conclude' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.conclude_accept' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.conclude_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GradeOracle.Grade.derivation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GradeOracle.Grade.explained' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GradeOracle.Grade.extract' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.fire' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.fire_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.GradeOracle.Grade.fire_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GradeOracle.Grade.firings_bounded' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.follow' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.follow_invariant' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GradeOracle.Grade.follow_relation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GradeOracle.Grade.iterations_bounded' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.next' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.next_preserves' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GradeOracle.Grade.next_preserves_relation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GradeOracle.Grade.next_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.GradeOracle.Grade.next_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GradeOracle.Grade.observe' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.replay' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.replay_fire' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.replay_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GradeOracle.Grade.run' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.run_relation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GradeOracle.Grade.run_state' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.run_trace' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.saturate' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.saturate_derivation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GradeOracle.Grade.saturate_invariant' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GradeOracle.Grade.saturate_relation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GradeOracle.Grade.saturates' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GradeOracle.Grade.select' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.start' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.step' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.step_count' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.step_fired' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.step_none' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.step_some' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.step_trace' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.verdict' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.verdict_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GradeOracle.Graded' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Related' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Scale.sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GradeOracle.grade_admitted' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GradeOracle.grade_correct' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GradeOracle.grade_pending' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.GradeOracle.gradedCheck' does not depend on any axioms\n'LexLeanTarget.GradeOracle.graded_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GradeOracle.related_admitted' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GradeOracle.related_preserved' depends on axioms: [propext, Classical.choice, Quot.sound]\n","stdout_sha256":"41e26d5b11d5016c3ee787bc19434a0752cf8d9139e8c67bcd737479a87622e5","tool":"lean"} diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.Main.process.json b/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.Main.process.json deleted file mode 100644 index a648772e0..000000000 --- a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.Main.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.Main.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.Main","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanTarget.Main.emptyProgram' does not depend on any axioms\n","stdout_sha256":"7d2326f4d7e78d1f284ea2efd07b36431427f867a86f0aed74877f3834844c2d","tool":"lean"} diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.PlannerOracle.process.json b/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.PlannerOracle.process.json deleted file mode 100644 index a6ea9e728..000000000 --- a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.PlannerOracle.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.PlannerOracle.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.PlannerOracle","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanTarget.PlannerOracle.Anywhere.sound' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.EmptyB.apply' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.EmptyB.apply_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.EmptyB.conclusion' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.EmptyB.guard' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.FillA.apply' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.FillA.apply_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.FillA.conclusion' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.FillA.guard' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Fits' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Held' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Inside.sound' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.Measured.sound' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.Measures' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Moves' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.Plan.EmptyB.successors' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.EmptyB.successors_ok' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.FillA.successors' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.FillA.successors_ok' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.Ledger' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.Node' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.Pour.collect' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.Pour.successors' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.Pour.successors_ok' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.Search' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.Step' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.accept' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.accept_sound' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.Plan.answer' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.attempts' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.derivation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.Plan.expansions_bounded' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.Plan.explained' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.Plan.extend' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.extract' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.failure' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.fire' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.fire_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.Plan.follow' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.follow_invariant' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.Plan.fresh' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.Plan.fresh_ok' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.Plan.frontier_bounded' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.Plan.iterations_bounded' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.Plan.observe' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.replay' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.replay_fire' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.replay_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.Plan.run' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.Plan.searchStep' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.Plan.search_count' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.Plan.search_expanded' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.Plan.search_ok' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.Plan.search_peak' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.Plan.search_step' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.Plan.search_verify_growth' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.Plan.start' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.Plan.successors' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.successors_ok' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.verdict' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.Plan.verdict_sound' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.Plan.verifications_bounded' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFit' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFit.EmptyB.successors' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.EmptyB.successors_ok' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.FillA.successors' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.FillA.successors_ok' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.Ledger' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.Node' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.Pour.collect' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.Pour.successors' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.Pour.successors_ok' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.Search' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.Step' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.accept' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.accept_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.PlannerOracle.PlanFit.answer' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.attempts' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.derivation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.PlanFit.expansions_bounded' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFit.explained' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.PlanFit.extend' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.extract' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.failure' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.fire' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.fire_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.PlanFit.follow' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.follow_invariant' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.PlanFit.fresh' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFit.fresh_ok' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFit.frontier_bounded' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFit.iterations_bounded' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFit.observe' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.replay' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.replay_fire' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.replay_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.PlanFit.run' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFit.searchStep' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFit.search_count' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFit.search_expanded' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFit.search_ok' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFit.search_peak' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFit.search_step' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFit.search_verify_growth' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFit.start' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFit.successors' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.successors_ok' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.verdict' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFit.verdict_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.PlanFit.verifications_bounded' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitR' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitR.EmptyB.successors' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.EmptyB.successors_ok' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.FillA.successors' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.FillA.successors_ok' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.Ledger' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.Node' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.Pour.collect' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.Pour.successors' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.Pour.successors_ok' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.Search' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.Step' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.accept' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.accept_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.PlannerOracle.PlanFitR.answer' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.attempts' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.derivation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.PlanFitR.expansions_bounded' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitR.explained' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.PlanFitR.extend' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.extract' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.failure' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.fire' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.fire_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.PlanFitR.follow' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.follow_invariant' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.PlanFitR.follow_relation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.PlanFitR.fresh' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitR.fresh_ok' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitR.frontier_bounded' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitR.iterations_bounded' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitR.observe' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.replay' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.replay_fire' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.replay_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.PlanFitR.run' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitR.searchStep' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitR.search_count' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitR.search_expanded' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitR.search_ok' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitR.search_peak' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitR.search_step' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitR.search_verify_growth' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitR.start' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitR.successors' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.successors_ok' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.verdict' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitR.verdict_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.PlanFitR.verifications_bounded' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitU' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitU.EmptyB.successors' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.EmptyB.successors_ok' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.FillA.successors' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.FillA.successors_ok' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.Ledger' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.Node' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.Pour.collect' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.Pour.successors' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.Pour.successors_ok' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.Search' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.Step' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.accept' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.accept_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.PlannerOracle.PlanFitU.answer' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.attempts' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.derivation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.PlanFitU.expansions_bounded' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitU.explained' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.PlannerOracle.PlanFitU.extend' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.extract' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.failure' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.fire' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.fire_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.PlanFitU.follow' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.follow_invariant' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.PlanFitU.fresh' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitU.fresh_ok' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitU.frontier_bounded' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitU.iterations_bounded' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitU.observe' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.replay' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.replay_fire' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.replay_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.PlanFitU.run' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitU.searchStep' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitU.search_count' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitU.search_expanded' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitU.search_ok' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitU.search_peak' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitU.search_step' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitU.search_verify_growth' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitU.start' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitU.successors' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.successors_ok' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.verdict' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitU.verdict_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.PlannerOracle.PlanFitU.verifications_bounded' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.Pour.apply' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Pour.apply_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.Pour.candidates' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Pour.conclusion' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Pour.guard' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Pouring.preserves' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Whole' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Within' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.empty_jugs_fit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.emptyb_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.filla_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.fits_kept' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.held_initial' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.held_preserved' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.measuresCheck' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.measures_sound' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.plan_fit_correct' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.PlannerOracle.plan_held_correct' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.PlannerOracle.plan_whole_correct' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.PlannerOracle.pour_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.wholeCheck' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.whole_sound' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.withinCheck' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.within_sound' depends on axioms: [propext]\n","stdout_sha256":"0758e97b7a8f57ecef82cca97e2d440e8ff64d83b29d17bef960473b67dec2b7","tool":"lean"} diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.ReasoningFixtures.process.json b/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.ReasoningFixtures.process.json deleted file mode 100644 index 7f0cac551..000000000 --- a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.ReasoningFixtures.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.ReasoningFixtures.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.ReasoningFixtures","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanTarget.ReasoningFixtures.encodeDoseSteps' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.encodeDoseStepsOne' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.encodeFailure' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.encodePlanSteps' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.encodePlanStepsOne' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.encodeScreenSteps' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.encodeScreenStepsOne' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.encodeTriageStep' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.encodeTriageSteps' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.reasoningDose120Agrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningDose120Outcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningDose120Program' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.reasoningDose120Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningDose60Agrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningDose60Outcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningDose60Program' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.reasoningDose60Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningGnafGoalAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningGnafGoalOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningGnafGoalProgram' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.reasoningGnafGoalRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningGnafPriorityAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningGnafPriorityOutcome' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningGnafPriorityProgram' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.reasoningGnafPriorityRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningGnafSweepAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningGnafSweepOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningGnafSweepProgram' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.reasoningGnafSweepRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningGradeShockAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningGradeShockOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningGradeShockProgram' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.reasoningGradeShockRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningGradeWellAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningGradeWellOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningGradeWellProgram' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.reasoningGradeWellRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningPlan2Agrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningPlan2Outcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningPlan2Program' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.reasoningPlan2Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningPlan5Agrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningPlan5Outcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningPlan5Program' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.reasoningPlan5Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningReviewExhaustedAgrees' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningReviewExhaustedOutcome' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningReviewExhaustedProgram' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.reasoningReviewExhaustedRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningReviewRejectedAgrees' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningReviewRejectedOutcome' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningReviewRejectedProgram' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.reasoningReviewRejectedRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningScreen0Agrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningScreen0Outcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningScreen0Program' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.reasoningScreen0Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningScreen100Agrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningScreen100Outcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningScreen100Program' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.reasoningScreen100Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningScreen60Agrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningScreen60Outcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningScreen60Program' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.reasoningScreen60Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningSpend2Agrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningSpend2Outcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningSpend2Program' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.reasoningSpend2Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningTriageShockAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningTriageShockOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningTriageShockProgram' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.reasoningTriageShockRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningTriageTracedAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningTriageTracedOutcome' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningTriageTracedProgram' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.reasoningTriageTracedRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningTriageWellAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningTriageWellOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningTriageWellProgram' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.reasoningTriageWellRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n","stdout_sha256":"1de37e5613059ad2366b5f16de757528c552aa5af91db58ab847229eab7edaef","tool":"lean"} diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.ReasoningOracle.process.json b/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.ReasoningOracle.process.json deleted file mode 100644 index 94d766e78..000000000 --- a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.ReasoningOracle.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.ReasoningOracle.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.ReasoningOracle","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanTarget.ReasoningOracle.Chart' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Consistent' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Discharged' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Escalate.apply' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Escalate.apply_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Escalate.apply_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Escalate.conclusion' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Escalate.guard' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Febrile' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Fever.apply' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Fever.apply_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Fever.apply_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Fever.conclusion' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Fever.guard' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Findings.preserves' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Hypotensive' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Indicated' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Justified' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Leukocytic' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Leukocytosis.apply' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Leukocytosis.apply_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Leukocytosis.apply_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Leukocytosis.conclusion' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Leukocytosis.guard' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Outpatient.sound' depends on axioms: [propext]\n'LexLeanTarget.ReasoningOracle.Pending' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Recommendation.complete' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Recommendation.sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Review' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.Ledger' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.Run' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.Step' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.accept' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.accept_sound' depends on axioms: [propext]\n'LexLeanTarget.ReasoningOracle.Review.account' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.answer' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.attempts' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.conclude' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.conclude_accept' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.conclude_sound' depends on axioms: [propext]\n'LexLeanTarget.ReasoningOracle.Review.derivation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Review.explained' depends on axioms: [propext]\n'LexLeanTarget.ReasoningOracle.Review.extract' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.fire' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.fire_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Review.firings_bounded' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.follow' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.follow_invariant' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Review.iterations_bounded' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.next' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.next_preserves' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Review.next_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Review.observe' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.replay' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.replay_fire' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.replay_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Review.run' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.run_state' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.run_trace' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.saturate' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.saturate_derivation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Review.saturate_invariant' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Review.select' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.start' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.step' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.step_count' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.step_fired' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.step_none' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.step_some' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.step_trace' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.verdict' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.verdict_sound' depends on axioms: [propext]\n'LexLeanTarget.ReasoningOracle.Sepsis.apply' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Sepsis.apply_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Sepsis.apply_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Sepsis.conclusion' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Sepsis.guard' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Shock.apply' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Shock.apply_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Shock.apply_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Shock.conclusion' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Shock.guard' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Sirs.apply' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Sirs.apply_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Sirs.apply_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Sirs.conclusion' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Sirs.guard' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Tachycardia.apply' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Tachycardia.apply_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Tachycardia.apply_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Tachycardia.conclusion' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Tachycardia.guard' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Tachycardic' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Tachypnea.apply' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Tachypnea.apply_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Tachypnea.apply_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Tachypnea.conclusion' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Tachypnea.guard' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Tachypneic' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.Ledger' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.Run' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.Step' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.accept' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.accept_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Triage.account' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.answer' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.attempts' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.conclude' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.conclude_accept' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.conclude_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Triage.derivation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Triage.explained' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Triage.extract' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.fire' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.fire_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Triage.fire_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Triage.firings_bounded' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.follow' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.follow_invariant' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Triage.iterations_bounded' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.next' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.next_preserves' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Triage.next_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Triage.next_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Triage.observe' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.replay' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.replay_fire' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.replay_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Triage.run' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.run_state' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.run_trace' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.saturate' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.saturate_derivation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Triage.saturate_invariant' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Triage.saturates' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Triage.select' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.start' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.step' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.step_count' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.step_fired' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.step_none' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.step_some' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.step_trace' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.verdict' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.verdict_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Vitals' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Warranted' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.admitted_consistent' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.admitted_pending' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.ReasoningOracle.consistent_preserved' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.dischargeCheck' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.discharge_sound' depends on axioms: [propext]\n'LexLeanTarget.ReasoningOracle.escalate_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.ReasoningOracle.escalate_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.fever_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.ReasoningOracle.fever_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.feverish' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.hypotensive' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.leukocytic' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.leukocytosis_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.ReasoningOracle.leukocytosis_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.recommendationCheck' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.recommendation_complete' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.recommendation_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.sepsis_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.ReasoningOracle.sepsis_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.shock_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.ReasoningOracle.shock_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.sirs_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.ReasoningOracle.sirs_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.tachycardia_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.ReasoningOracle.tachycardia_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.tachycardic' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.tachypnea_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.ReasoningOracle.tachypnea_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.tachypneic' does not depend on any axioms\n","stdout_sha256":"6379b45e287b8ba78784669ac39cab6f41ad650597c513813a6a806f7cd9a16a","tool":"lean"} diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.RustSemantics.process.json b/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.RustSemantics.process.json deleted file mode 100644 index cd26748ae..000000000 --- a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.RustSemantics.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.RustSemantics.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.RustSemantics","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanTarget.RustSemantics.ROutcome' does not depend on any axioms\n'LexLeanTarget.RustSemantics.ROutcomes' does not depend on any axioms\n'LexLeanTarget.RustSemantics.allWidth' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns' does not depend on any axioms\n'LexLeanTarget.RustSemantics.constructValue' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched' does not depend on any axioms\n'LexLeanTarget.RustSemantics.eval' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.fallibleType' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findArm' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findFunction' does not depend on any axioms\n'LexLeanTarget.RustSemantics.finished' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth' does not depend on any axioms\n'LexLeanTarget.RustSemantics.invoke' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.isBytes' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemAccepts' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemShifts' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber' does not depend on any axioms\n'LexLeanTarget.RustSemantics.literal' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.lookup' does not depend on any axioms\n'LexLeanTarget.RustSemantics.patternsOf' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated' does not depend on any axioms\n'LexLeanTarget.RustSemantics.returned' does not depend on any axioms\n'LexLeanTarget.RustSemantics.runExport' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.runItem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.sameIdent' does not depend on any axioms\n'LexLeanTarget.RustSemantics.widened' does not depend on any axioms\n","stdout_sha256":"c4a74f7df92c28739cb1b581e499298ce1763d48d3d86b5e835853a86cf5a339","tool":"lean"} diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.RustSyntax.process.json b/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.RustSyntax.process.json deleted file mode 100644 index bf025274f..000000000 --- a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.RustSyntax.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.RustSyntax.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.RustSyntax","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanTarget.RustSyntax.Arm' does not depend on any axioms\n'LexLeanTarget.RustSyntax.Block' does not depend on any axioms\n'LexLeanTarget.RustSyntax.Callee' does not depend on any axioms\n'LexLeanTarget.RustSyntax.CaptureRead' does not depend on any axioms\n'LexLeanTarget.RustSyntax.Crate' does not depend on any axioms\n'LexLeanTarget.RustSyntax.Ctor' does not depend on any axioms\n'LexLeanTarget.RustSyntax.Dispatch' does not depend on any axioms\n'LexLeanTarget.RustSyntax.Expr' does not depend on any axioms\n'LexLeanTarget.RustSyntax.Ident' does not depend on any axioms\n'LexLeanTarget.RustSyntax.IdentKind' does not depend on any axioms\n'LexLeanTarget.RustSyntax.Item' does not depend on any axioms\n'LexLeanTarget.RustSyntax.ItemDef' does not depend on any axioms\n'LexLeanTarget.RustSyntax.Let' does not depend on any axioms\n'LexLeanTarget.RustSyntax.Lit' does not depend on any axioms\n'LexLeanTarget.RustSyntax.Parameter' does not depend on any axioms\n'LexLeanTarget.RustSyntax.Pat' does not depend on any axioms\n'LexLeanTarget.RustSyntax.Profile' does not depend on any axioms\n'LexLeanTarget.RustSyntax.RustType' does not depend on any axioms\n'LexLeanTarget.RustSyntax.Variant' does not depend on any axioms\n","stdout_sha256":"340586ca755a53bbd0e772cc6bb0bd43c7dc6e45a64449a50df424ff1ad72629","tool":"lean"} diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.ScreeningOracle.process.json b/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.ScreeningOracle.process.json deleted file mode 100644 index 8fc5c47bd..000000000 --- a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.ScreeningOracle.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.ScreeningOracle.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.ScreeningOracle","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanTarget.ScreeningOracle.Dose' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Dose.Ledger' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Dose.Step' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Dose.Trial' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Dose.answer' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Dose.candidates' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Dose.explained' depends on axioms: [propext]\n'LexLeanTarget.ScreeningOracle.Dose.failure' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Dose.run' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Dose.run_sound' depends on axioms: [propext]\n'LexLeanTarget.ScreeningOracle.Dose.try' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Dose.try_count' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Dose.try_sound' depends on axioms: [propext]\n'LexLeanTarget.ScreeningOracle.Dose.verdict' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Dose.verdict_sound' depends on axioms: [propext]\n'LexLeanTarget.ScreeningOracle.Dose.verifications_bounded' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Dose.verify' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Dose.verify_sound' depends on axioms: [propext]\n'LexLeanTarget.ScreeningOracle.DoseCandidates' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.DoseContract.postcondition_sound' depends on axioms: [propext]\n'LexLeanTarget.ScreeningOracle.DoseModel' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Propose.apply' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Propose.apply_sound' depends on axioms: [propext]\n'LexLeanTarget.ScreeningOracle.Propose.candidates' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Propose.conclusion' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Propose.guard' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Proposed' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Safe' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.SafeDose.sound' depends on axioms: [propext]\n'LexLeanTarget.ScreeningOracle.Screen' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.Ledger' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.Node' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.Propose.collect' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.Propose.successors' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.Propose.successors_ok' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.Search' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.Step' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.accept' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.accept_sound' depends on axioms: [propext]\n'LexLeanTarget.ScreeningOracle.Screen.answer' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.attempts' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.derivation' depends on axioms: [propext]\n'LexLeanTarget.ScreeningOracle.Screen.expansions_bounded' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.explained' depends on axioms: [propext]\n'LexLeanTarget.ScreeningOracle.Screen.extend' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.extract' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.failure' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.fire' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.fire_sound' depends on axioms: [propext]\n'LexLeanTarget.ScreeningOracle.Screen.follow' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.frontier_bounded' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.iterations_bounded' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.observe' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.replay' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.replay_fire' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.replay_sound' depends on axioms: [propext]\n'LexLeanTarget.ScreeningOracle.Screen.run' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.searchStep' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.search_count' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.search_expanded' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.search_ok' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.search_peak' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.search_step' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.search_verify_growth' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.start' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.successors' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.successors_ok' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.verdict' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.verdict_sound' depends on axioms: [propext]\n'LexLeanTarget.ScreeningOracle.Screen.verifications_bounded' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Short' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.propose_sound' depends on axioms: [propext]\n'LexLeanTarget.ScreeningOracle.safeCheck' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.safe_sound' depends on axioms: [propext]\n'LexLeanTarget.ScreeningOracle.shortCheck' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.short_sound' depends on axioms: [propext]\n","stdout_sha256":"9d44b4b2ace8f5e69c8889eeabedaab7479c25761828af32df261812b28b9066","tool":"lean"} diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.TargetFixtures.process.json b/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.TargetFixtures.process.json deleted file mode 100644 index 21f20c2f5..000000000 --- a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.TargetFixtures.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.TargetFixtures.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.TargetFixtures","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanTarget.TargetFixtures.adtEvaluationOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.adtEvaluationProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.adtEvaluationRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.bindingAndShapesOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.bindingAndShapesProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.bindingAndShapesRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.booleanShapesOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.booleanShapesProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.booleanShapesRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.booleansOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.booleansProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.booleansRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.boxedFieldOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.boxedFieldProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.boxedFieldRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.byteCompareProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.byteCompareRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.byteOrderProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.byteOrderRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.byteSlicesOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.byteSlicesProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.byteSlicesRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.bytesAndTextOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.bytesAndTextProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.bytesAndTextRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.closureCapturesOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.closureCapturesProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.closureCapturesRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.closureDispatchOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.closureDispatchProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.closureDispatchRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.closureInlineOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.closureInlineProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.closureInlineRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.closureRecursiveOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.closureRecursiveProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.closureRecursiveRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.closureUninhabitedOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.closureUninhabitedProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.closureUninhabitedRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.closureValueOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.closureValueProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.closureValueRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.closuresOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.closuresProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.closuresRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.convertOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.convertProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.convertRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.decimalOverflowProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.decimalOverflowRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.decimalOverflowWideProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.decimalOverflowWideRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.decimalProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.decimalRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.equalityOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.equalityProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.equalityRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fallibleConditionValueOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fallibleConditionValueProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.fallibleConditionValueRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedBitsSignedOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedBitsSignedProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.fixedBitsSignedRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedBitsUnsignedOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedBitsUnsignedProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.fixedBitsUnsignedRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedCheckedNarrowOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedCheckedNarrowProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.fixedCheckedNarrowRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedCheckedSignedOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedCheckedSignedProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.fixedCheckedSignedRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedCheckedWideOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedCheckedWideProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.fixedCheckedWideRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedDecimalI16Program' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.fixedDecimalI16Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedDecimalI32Program' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.fixedDecimalI32Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedDecimalI64Program' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.fixedDecimalI64Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedDecimalI8Program' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.fixedDecimalI8Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedDecimalU16Program' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.fixedDecimalU16Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedDecimalU32Program' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.fixedDecimalU32Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedDecimalU64Program' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.fixedDecimalU64Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedDecimalU8Program' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.fixedDecimalU8Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedWidthI16Outcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedWidthI16Program' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.fixedWidthI16Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedWidthI32Outcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedWidthI32Program' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.fixedWidthI32Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedWidthI64Outcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedWidthI64Program' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.fixedWidthI64Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedWidthI8Outcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedWidthI8Program' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.fixedWidthI8Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedWidthU16Outcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedWidthU16Program' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.fixedWidthU16Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedWidthU32Outcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedWidthU32Program' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.fixedWidthU32Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedWidthU64Outcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedWidthU64Program' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.fixedWidthU64Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedWidthU8Outcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedWidthU8Program' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.fixedWidthU8Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.functionShapesOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.functionShapesProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.functionShapesRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.graphReachableAbsentAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.graphReachableAbsentOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.graphReachableAbsentProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.graphReachableAbsentRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.graphReachableAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.graphReachableInnerAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.graphReachableInnerOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.graphReachableInnerProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.graphReachableInnerRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.graphReachableOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.graphReachableProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.graphReachableRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.graphSuccessorsAbsentAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.graphSuccessorsAbsentOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.graphSuccessorsAbsentProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.graphSuccessorsAbsentRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.graphSuccessorsAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.graphSuccessorsOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.graphSuccessorsProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.graphSuccessorsRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.graphTopologicalAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.graphTopologicalCycleAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.graphTopologicalCycleOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.graphTopologicalCycleProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.graphTopologicalCycleRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.graphTopologicalOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.graphTopologicalProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.graphTopologicalRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.intArithmeticOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.intArithmeticProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.intArithmeticRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.intOverflowMulOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.intOverflowMulProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.intOverflowMulRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.intOverflowNegOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.intOverflowNegProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.intOverflowNegRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.intOverflowQuotOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.intOverflowQuotProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.intOverflowQuotRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.intOverflowSubOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.intOverflowSubProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.intOverflowSubRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.iterateAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.iterateOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.iterateProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.iterateRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.iterateUntilAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.iterateUntilBoundedAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.iterateUntilBoundedOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.iterateUntilBoundedProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.iterateUntilBoundedRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.iterateUntilOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.iterateUntilProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.iterateUntilRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.listAppendLongOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.listAppendLongProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.listAppendLongRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.listFoldAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.listFoldOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.listFoldProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.listFoldRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.listsOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.listsProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.listsRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.literalsOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.literalsProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.literalsRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapContainsAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapContainsOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapContainsProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.mapContainsRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapFoldAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapFoldOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapFoldProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.mapFoldRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapInsertAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapInsertLastAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapInsertLastOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapInsertLastProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.mapInsertLastRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapInsertOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapInsertProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.mapInsertReplaceAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapInsertReplaceOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapInsertReplaceProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.mapInsertReplaceRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapInsertRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapKeysAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapKeysOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapKeysProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.mapKeysRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapLookupAbsentAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapLookupAbsentOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapLookupAbsentProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.mapLookupAbsentRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapLookupAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapLookupOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapLookupProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.mapLookupRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapRemoveAbsentAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapRemoveAbsentOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapRemoveAbsentProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.mapRemoveAbsentRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapRemoveAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapRemoveOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapRemoveProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.mapRemoveRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapValuesAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapValuesOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapValuesProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.mapValuesRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.matchShapesOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.matchShapesProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.matchShapesRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.natArithmeticOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.natArithmeticProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.natArithmeticRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.natOverflowAddOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.natOverflowAddProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.natOverflowAddRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.natOverflowMulOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.natOverflowMulProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.natOverflowMulRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.natOverflowNestedOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.natOverflowNestedProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.natOverflowNestedRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.natOverflowSuccOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.natOverflowSuccProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.natOverflowSuccRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.orderingOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.orderingProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.orderingRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.pairAndListMatchOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.pairAndListMatchProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.pairAndListMatchRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.recordFieldsOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.recordFieldsProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.recordFieldsRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setContainsAbsentAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setContainsAbsentOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setContainsAbsentProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.setContainsAbsentRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setContainsAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setContainsOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setContainsProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.setContainsRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setDifferenceAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setDifferenceOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setDifferenceProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.setDifferenceRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setFoldAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setFoldOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setFoldProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.setFoldRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setInsertBoolAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setInsertBoolOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setInsertBoolProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.setInsertBoolRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setInsertInt8Agrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setInsertInt8Outcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setInsertInt8Program' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.setInsertInt8Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setInsertIntAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setInsertIntOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setInsertIntProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.setInsertIntRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setInsertNatAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setInsertNatOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setInsertNatProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.setInsertNatRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setInsertProductAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setInsertProductOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setInsertProductProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.setInsertProductRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setInsertStringAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setInsertStringOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setInsertStringProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.setInsertStringRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setIntersectionAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setIntersectionOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setIntersectionProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.setIntersectionRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setRemoveAbsentAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setRemoveAbsentOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setRemoveAbsentProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.setRemoveAbsentRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setRemoveAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setRemoveOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setRemoveProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.setRemoveRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setUnionAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setUnionOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setUnionProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.setUnionRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.splitAndJoinProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.splitAndJoinRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.stringEscapesOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.stringEscapesProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.stringEscapesRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.sumToExhaustedOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.sumToExhaustedProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.sumToExhaustedRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.sumToOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.sumToProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.sumToRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.unitClosuresOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.unitClosuresProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.unitClosuresRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.unitValuesOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.unitValuesProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.unitValuesRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.wideShapesOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.wideShapesProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.wideShapesRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n","stdout_sha256":"9028f03268ae25228c0a1c64afc3998515828206dcf201c38e280caf05fb7ca0","tool":"lean"} diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.TargetOracle.process.json b/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.TargetOracle.process.json deleted file mode 100644 index 8c8e797a0..000000000 --- a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.TargetOracle.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.TargetOracle.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.TargetOracle","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanTarget.TargetOracle.encodeAdjacency' does not depend on any axioms\n'LexLeanTarget.TargetOracle.encodeBools' does not depend on any axioms\n'LexLeanTarget.TargetOracle.encodeI8s' does not depend on any axioms\n'LexLeanTarget.TargetOracle.encodeInts' does not depend on any axioms\n'LexLeanTarget.TargetOracle.encodeNatStrings' does not depend on any axioms\n'LexLeanTarget.TargetOracle.encodeNats' does not depend on any axioms\n'LexLeanTarget.TargetOracle.encodeStrings' does not depend on any axioms\n","stdout_sha256":"e5d09f1ed61a07fda3dba02d424da6b01bceef18c4e1e3c70b41a8c133503ccd","tool":"lean"} diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.TargetSemantics.process.json b/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.TargetSemantics.process.json deleted file mode 100644 index b90600c23..000000000 --- a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.TargetSemantics.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.TargetSemantics.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.TargetSemantics","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanTarget.TargetSemantics.Outcome' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.Outcomes' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.addSteps' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.chargeResult' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValues' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.construct' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.depth' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.eval' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.fromOrdering' depends on axioms: [propext]\n'LexLeanTarget.TargetSemantics.fromStrings' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.intResult' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.TargetSemantics.lookup' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.natResult' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.orderBool' depends on axioms: [propext]\n'LexLeanTarget.TargetSemantics.orderI16' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.orderI32' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.orderI64' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.orderI8' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.orderInt' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.orderNat' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.orderOf' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.orderString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU16' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.orderU32' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.orderU64' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.orderU8' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.primitive' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.sameOrder' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.toStrings' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.weight' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.weights' depends on axioms: [propext, Classical.choice, Quot.sound]\n","stdout_sha256":"5db7059cbd2e67dd7cdac827d671c436156acb744114ba6a068eca77cfb130ca","tool":"lean"} diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.TargetSyntax.process.json b/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.TargetSyntax.process.json deleted file mode 100644 index ab7a4e08d..000000000 --- a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.TargetSyntax.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.TargetSyntax.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.TargetSyntax","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanTarget.TargetSyntax.Adt' does not depend on any axioms\n'LexLeanTarget.TargetSyntax.Arm' does not depend on any axioms\n'LexLeanTarget.TargetSyntax.Expr' does not depend on any axioms\n'LexLeanTarget.TargetSyntax.Function' does not depend on any axioms\n'LexLeanTarget.TargetSyntax.IntKind' does not depend on any axioms\n'LexLeanTarget.TargetSyntax.Order' does not depend on any axioms\n'LexLeanTarget.TargetSyntax.Prim' does not depend on any axioms\n'LexLeanTarget.TargetSyntax.Program' does not depend on any axioms\n'LexLeanTarget.TargetSyntax.Shape' does not depend on any axioms\n'LexLeanTarget.TargetSyntax.Ty' does not depend on any axioms\n'LexLeanTarget.TargetSyntax.Value' does not depend on any axioms\n","stdout_sha256":"81b555d6535a4ba91c825f93f1d0da80257f7eb8f83fff55f85f7e2fe759deba","tool":"lean"} diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanRuntime.Collections.lean b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanRuntime.Collections.lean similarity index 100% rename from compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanRuntime.Collections.lean rename to compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanRuntime.Collections.lean diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanRuntime.Collections.process.json b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanRuntime.Collections.process.json new file mode 100644 index 000000000..a5b73d054 --- /dev/null +++ b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanRuntime.Collections.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanRuntime.Collections.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanRuntime.Collections","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanCollections.Key' does not depend on any axioms\n'LexLeanCollections.Key.casesOn' does not depend on any axioms\n'LexLeanCollections.Key.compare' does not depend on any axioms\n'LexLeanCollections.Key.ctorIdx' does not depend on any axioms\n'LexLeanCollections.Key.mk._flat_ctor' does not depend on any axioms\n'LexLeanCollections.Key.mk.noConfusion' does not depend on any axioms\n'LexLeanCollections.Key.noConfusion' does not depend on any axioms\n'LexLeanCollections.Key.noConfusionType' does not depend on any axioms\n'LexLeanCollections.Key.recOn' does not depend on any axioms\n'LexLeanCollections.compareCodes' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._f' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._sunfold' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._unsafe_rec' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.match_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.match_4' does not depend on any axioms\n'LexLeanCollections.containsElement' does not depend on any axioms\n'LexLeanCollections.containsElement._f' does not depend on any axioms\n'LexLeanCollections.containsElement._sunfold' does not depend on any axioms\n'LexLeanCollections.containsElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.graphNodes' does not depend on any axioms\n'LexLeanCollections.graphReachable' depends on axioms: [propext]\n'LexLeanCollections.graphSuccessors' does not depend on any axioms\n'LexLeanCollections.graphTopological' does not depend on any axioms\n'LexLeanCollections.insertElement' does not depend on any axioms\n'LexLeanCollections.insertElement._f' does not depend on any axioms\n'LexLeanCollections.insertElement._sunfold' does not depend on any axioms\n'LexLeanCollections.insertElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.insertElement.match_1' does not depend on any axioms\n'LexLeanCollections.insertEntry' does not depend on any axioms\n'LexLeanCollections.insertEntry._f' does not depend on any axioms\n'LexLeanCollections.insertEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.insertEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.insertEntry.match_1' does not depend on any axioms\n'LexLeanCollections.insertEntry.match_3' does not depend on any axioms\n'LexLeanCollections.instKeyBool' depends on axioms: [propext]\n'LexLeanCollections.instKeyInt' does not depend on any axioms\n'LexLeanCollections.instKeyInt16' does not depend on any axioms\n'LexLeanCollections.instKeyInt32' does not depend on any axioms\n'LexLeanCollections.instKeyInt64' does not depend on any axioms\n'LexLeanCollections.instKeyInt8' does not depend on any axioms\n'LexLeanCollections.instKeyNat' does not depend on any axioms\n'LexLeanCollections.instKeyProd' depends on axioms: [propext]\n'LexLeanCollections.instKeyString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanCollections.instKeyUInt16' does not depend on any axioms\n'LexLeanCollections.instKeyUInt32' does not depend on any axioms\n'LexLeanCollections.instKeyUInt64' does not depend on any axioms\n'LexLeanCollections.instKeyUInt8' does not depend on any axioms\n'LexLeanCollections.iterate' does not depend on any axioms\n'LexLeanCollections.iterate._f' does not depend on any axioms\n'LexLeanCollections.iterate._sunfold' does not depend on any axioms\n'LexLeanCollections.iterate._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.iterate.match_1' does not depend on any axioms\n'LexLeanCollections.iterateUntil' does not depend on any axioms\n'LexLeanCollections.iterateUntil._f' does not depend on any axioms\n'LexLeanCollections.iterateUntil._sunfold' does not depend on any axioms\n'LexLeanCollections.iterateUntil._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.iterateUntil.match_1' does not depend on any axioms\n'LexLeanCollections.lessThan' depends on axioms: [propext]\n'LexLeanCollections.lessThan._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.lessThan.match_1' depends on axioms: [propext]\n'LexLeanCollections.listFold' does not depend on any axioms\n'LexLeanCollections.lookupEntry' does not depend on any axioms\n'LexLeanCollections.lookupEntry._f' does not depend on any axioms\n'LexLeanCollections.lookupEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.lookupEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.mapContains' does not depend on any axioms\n'LexLeanCollections.mapEntries' does not depend on any axioms\n'LexLeanCollections.mapFold' does not depend on any axioms\n'LexLeanCollections.mapInsert' does not depend on any axioms\n'LexLeanCollections.mapKeys' does not depend on any axioms\n'LexLeanCollections.mapLookup' does not depend on any axioms\n'LexLeanCollections.mapRemove' does not depend on any axioms\n'LexLeanCollections.mapSize' does not depend on any axioms\n'LexLeanCollections.mapValues' does not depend on any axioms\n'LexLeanCollections.reachableFrom' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._f' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._sunfold' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._unsafe_rec' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom.match_1' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom.match_4' does not depend on any axioms\n'LexLeanCollections.removeElement' does not depend on any axioms\n'LexLeanCollections.removeElement._f' does not depend on any axioms\n'LexLeanCollections.removeElement._sunfold' does not depend on any axioms\n'LexLeanCollections.removeElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.removeEntry' does not depend on any axioms\n'LexLeanCollections.removeEntry._f' does not depend on any axioms\n'LexLeanCollections.removeEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.removeEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.setContains' does not depend on any axioms\n'LexLeanCollections.setDifference' does not depend on any axioms\n'LexLeanCollections.setElements' does not depend on any axioms\n'LexLeanCollections.setFold' does not depend on any axioms\n'LexLeanCollections.setInsert' does not depend on any axioms\n'LexLeanCollections.setIntersection' does not depend on any axioms\n'LexLeanCollections.setRemove' does not depend on any axioms\n'LexLeanCollections.setSize' does not depend on any axioms\n'LexLeanCollections.setUnion' does not depend on any axioms\n'LexLeanCollections.topological' does not depend on any axioms\n'LexLeanCollections.topological._f' does not depend on any axioms\n'LexLeanCollections.topological._sunfold' does not depend on any axioms\n'LexLeanCollections.topological._unsafe_rec' does not depend on any axioms\n","stdout_sha256":"b75acc0e99e23684c3cc876eacbfc93f47161cfee8a7440df17fa45f321c8c6a","tool":"lean"} diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanRuntime.Laws.lean b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanRuntime.Laws.lean similarity index 100% rename from compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanRuntime.Laws.lean rename to compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanRuntime.Laws.lean diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanRuntime.Laws.process.json b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanRuntime.Laws.process.json new file mode 100644 index 000000000..1318263bf --- /dev/null +++ b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanRuntime.Laws.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanRuntime.Laws.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanRuntime.Laws","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanCollections.lessThan._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanCollections.lessThan.eq_1' depends on axioms: [propext]\n'LexLeanCollections.listFold.eq_1' does not depend on any axioms\n'LexLeanLaws.append_list' does not depend on any axioms\n'LexLeanLaws.length_list' does not depend on any axioms\n'LexLeanLaws.lessThan_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int16' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int32' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int64' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int8' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_nat' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint16' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint32' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint64' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint8' depends on axioms: [propext]\n'LexLeanLaws.listFold_add_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_add_int_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_add_nat' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_add_nat_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_append' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_cons' does not depend on any axioms\n'LexLeanLaws.listFold_extend' depends on axioms: [propext]\n'LexLeanLaws.listFold_fusion' does not depend on any axioms\n'LexLeanLaws.listFold_nil' does not depend on any axioms\n'LexLeanLaws.listFold_pair' does not depend on any axioms\n'LexLeanLaws.listFold_prepend' depends on axioms: [propext]\n'LexLeanLaws.listFold_sub_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_sub_int_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.mapEntries_self' does not depend on any axioms\n'LexLeanLaws.mapFold_listFold' does not depend on any axioms\n'LexLeanLaws.mapSize_length' does not depend on any axioms\n'LexLeanLaws.quotient_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.quotient_nat' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.remainder_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.remainder_nat' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.setElements_self' does not depend on any axioms\n'LexLeanLaws.setFold_listFold' does not depend on any axioms\n'LexLeanLaws.setSize_length' does not depend on any axioms\n'LexLeanLaws.sumInt' does not depend on any axioms\n'LexLeanLaws.sumInt._f' does not depend on any axioms\n'LexLeanLaws.sumInt._sunfold' does not depend on any axioms\n'LexLeanLaws.sumInt._unsafe_rec' does not depend on any axioms\n'LexLeanLaws.sumInt.eq_1' does not depend on any axioms\n'LexLeanLaws.sumInt.eq_2' does not depend on any axioms\n'LexLeanLaws.sumInt.eq_def' does not depend on any axioms\n'LexLeanLaws.sumInt_add' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_append' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_cons' does not depend on any axioms\n'LexLeanLaws.sumInt_const' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_mul' depends on axioms: [propext]\n'LexLeanLaws.sumInt_mul_right' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_mul_self' depends on axioms: [propext]\n'LexLeanLaws.sumInt_neg' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_neg_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_nil' does not depend on any axioms\n'LexLeanLaws.sumInt_perm' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_reverse' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_sub' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat' does not depend on any axioms\n'LexLeanLaws.sumNat._f' does not depend on any axioms\n'LexLeanLaws.sumNat._sunfold' does not depend on any axioms\n'LexLeanLaws.sumNat._unsafe_rec' does not depend on any axioms\n'LexLeanLaws.sumNat.eq_1' does not depend on any axioms\n'LexLeanLaws.sumNat.eq_2' does not depend on any axioms\n'LexLeanLaws.sumNat.eq_def' does not depend on any axioms\n'LexLeanLaws.sumNat.match_1' does not depend on any axioms\n'LexLeanLaws.sumNat_add' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_append' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_cons' does not depend on any axioms\n'LexLeanLaws.sumNat_const' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_mul' does not depend on any axioms\n'LexLeanLaws.sumNat_mul_right' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_mul_self' does not depend on any axioms\n'LexLeanLaws.sumNat_nil' does not depend on any axioms\n'LexLeanLaws.sumNat_perm' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_reverse' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.tdiv_ediv' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.tmod_emod' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.quotient.eq_1' does not depend on any axioms\n'LexLeanRuntime.remainder.eq_1' does not depend on any axioms\n","stdout_sha256":"a4ba2d39c9cdfd5e40c41c5ccf4726d937fd192fc042b74bb56cc0651e28919e","tool":"lean"} diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanRuntime.Models.lean b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanRuntime.Models.lean similarity index 100% rename from compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanRuntime.Models.lean rename to compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanRuntime.Models.lean diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanRuntime.Models.process.json b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanRuntime.Models.process.json new file mode 100644 index 000000000..38cbf6302 --- /dev/null +++ b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanRuntime.Models.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanRuntime.Models.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanRuntime.Models","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanModels.Agreement' does not depend on any axioms\n'LexLeanModels.Complete1' does not depend on any axioms\n'LexLeanModels.Complete2' does not depend on any axioms\n'LexLeanModels.Complete4' does not depend on any axioms\n'LexLeanModels.Equivalent' does not depend on any axioms\n'LexLeanModels.EquivalentStep' does not depend on any axioms\n'LexLeanModels.EquivalentStepNoInvariant' does not depend on any axioms\n'LexLeanModels.EquivalentStepNoPrecondition' does not depend on any axioms\n'LexLeanModels.EquivalentStepTotal' does not depend on any axioms\n'LexLeanModels.EquivalentTotal' does not depend on any axioms\n'LexLeanModels.Initial' does not depend on any axioms\n'LexLeanModels.Preserves' does not depend on any axioms\n'LexLeanModels.PreservesTotal' does not depend on any axioms\n'LexLeanModels.Satisfies' does not depend on any axioms\n'LexLeanModels.SatisfiesStep' does not depend on any axioms\n'LexLeanModels.SatisfiesStepNoInvariant' does not depend on any axioms\n'LexLeanModels.SatisfiesStepNoPrecondition' does not depend on any axioms\n'LexLeanModels.SatisfiesStepTotal' does not depend on any axioms\n'LexLeanModels.SatisfiesTotal' does not depend on any axioms\n'LexLeanModels.Sound1' does not depend on any axioms\n'LexLeanModels.Sound2' does not depend on any axioms\n'LexLeanModels.Sound4' does not depend on any axioms\n'LexLeanModels.encodeInt' does not depend on any axioms\n'LexLeanModels.inRange' does not depend on any axioms\n'LexLeanModels.linesMatch' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanModels.tensorMatches' does not depend on any axioms\n'LexLeanModels.utf8Char' does not depend on any axioms\n","stdout_sha256":"43ad1c715570458672aedc9abb1691012eef870f5b804f1e230abb890e49ffee","tool":"lean"} diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanRuntime.Portable.lean b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanRuntime.Portable.lean similarity index 100% rename from compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanRuntime.Portable.lean rename to compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanRuntime.Portable.lean diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanRuntime.Portable.process.json b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanRuntime.Portable.process.json new file mode 100644 index 000000000..6009a5a33 --- /dev/null +++ b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanRuntime.Portable.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanRuntime.Portable.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanRuntime.Portable","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanRuntime.Appendable' does not depend on any axioms\n'LexLeanRuntime.Appendable.append' does not depend on any axioms\n'LexLeanRuntime.Appendable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Appendable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Appendable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Appendable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Appendable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Appendable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Appendable.recOn' does not depend on any axioms\n'LexLeanRuntime.Decimal' does not depend on any axioms\n'LexLeanRuntime.Decimal.casesOn' does not depend on any axioms\n'LexLeanRuntime.Decimal.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Decimal.format' does not depend on any axioms\n'LexLeanRuntime.Decimal.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Decimal.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Decimal.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Decimal.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Decimal.parse' does not depend on any axioms\n'LexLeanRuntime.Decimal.recOn' does not depend on any axioms\n'LexLeanRuntime.Fixed' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitAnd' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitNot' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitOr' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitXor' does not depend on any axioms\n'LexLeanRuntime.Fixed.casesOn' does not depend on any axioms\n'LexLeanRuntime.Fixed.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Fixed.fromInt' does not depend on any axioms\n'LexLeanRuntime.Fixed.maximum' does not depend on any axioms\n'LexLeanRuntime.Fixed.minimum' does not depend on any axioms\n'LexLeanRuntime.Fixed.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Fixed.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Fixed.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Fixed.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Fixed.recOn' does not depend on any axioms\n'LexLeanRuntime.Fixed.shiftLeft' does not depend on any axioms\n'LexLeanRuntime.Fixed.shiftRight' does not depend on any axioms\n'LexLeanRuntime.Fixed.toToMathInt' does not depend on any axioms\n'LexLeanRuntime.Indexable' does not depend on any axioms\n'LexLeanRuntime.Indexable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Indexable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Indexable.index' does not depend on any axioms\n'LexLeanRuntime.Indexable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Indexable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Indexable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Indexable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Indexable.recOn' does not depend on any axioms\n'LexLeanRuntime.Lengthable' does not depend on any axioms\n'LexLeanRuntime.Lengthable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Lengthable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Lengthable.length' does not depend on any axioms\n'LexLeanRuntime.Lengthable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Lengthable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Lengthable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Lengthable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Lengthable.recOn' does not depend on any axioms\n'LexLeanRuntime.Quotient' does not depend on any axioms\n'LexLeanRuntime.Quotient.casesOn' does not depend on any axioms\n'LexLeanRuntime.Quotient.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Quotient.isZero' does not depend on any axioms\n'LexLeanRuntime.Quotient.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Quotient.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Quotient.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Quotient.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Quotient.quotient' does not depend on any axioms\n'LexLeanRuntime.Quotient.recOn' does not depend on any axioms\n'LexLeanRuntime.Quotient.remainder' does not depend on any axioms\n'LexLeanRuntime.Sliceable' does not depend on any axioms\n'LexLeanRuntime.Sliceable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Sliceable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Sliceable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Sliceable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Sliceable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Sliceable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Sliceable.recOn' does not depend on any axioms\n'LexLeanRuntime.Sliceable.slice' does not depend on any axioms\n'LexLeanRuntime.ToMathInt' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.casesOn' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.noConfusion' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.recOn' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.toInt' does not depend on any axioms\n'LexLeanRuntime.append' does not depend on any axioms\n'LexLeanRuntime.bitAnd' does not depend on any axioms\n'LexLeanRuntime.bitNot' does not depend on any axioms\n'LexLeanRuntime.bitOr' does not depend on any axioms\n'LexLeanRuntime.bitXor' does not depend on any axioms\n'LexLeanRuntime.checkedAdd' does not depend on any axioms\n'LexLeanRuntime.checkedAddInt64' does not depend on any axioms\n'LexLeanRuntime.checkedConvert' does not depend on any axioms\n'LexLeanRuntime.checkedFromInt' does not depend on any axioms\n'LexLeanRuntime.checkedMultiply' does not depend on any axioms\n'LexLeanRuntime.checkedMultiplyInt64' does not depend on any axioms\n'LexLeanRuntime.checkedMultiplyInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.checkedNegate' does not depend on any axioms\n'LexLeanRuntime.checkedNegateInt64' does not depend on any axioms\n'LexLeanRuntime.checkedQuotient' does not depend on any axioms\n'LexLeanRuntime.checkedQuotientInt64' does not depend on any axioms\n'LexLeanRuntime.checkedSubtract' does not depend on any axioms\n'LexLeanRuntime.checkedSubtractInt64' does not depend on any axioms\n'LexLeanRuntime.compareBytes' depends on axioms: [propext]\n'LexLeanRuntime.divideMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._f' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._sunfold' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.equal' does not depend on any axioms\n'LexLeanRuntime.formatDecimal' does not depend on any axioms\n'LexLeanRuntime.index' does not depend on any axioms\n'LexLeanRuntime.instAppendableByteArray' does not depend on any axioms\n'LexLeanRuntime.instAppendableList' does not depend on any axioms\n'LexLeanRuntime.instDecimalInt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instDecimalInt.match_1' does not depend on any axioms\n'LexLeanRuntime.instDecimalOfFixedOfToString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instFixedInt16' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt32' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt64' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt8' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt16' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt32' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt64' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt8' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instIndexableByteArrayUInt8' does not depend on any axioms\n'LexLeanRuntime.instIndexableList' does not depend on any axioms\n'LexLeanRuntime.instLengthableByteArray' does not depend on any axioms\n'LexLeanRuntime.instLengthableList' does not depend on any axioms\n'LexLeanRuntime.instLengthableString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instQuotientInt' does not depend on any axioms\n'LexLeanRuntime.instQuotientNat' does not depend on any axioms\n'LexLeanRuntime.instSliceableByteArray' does not depend on any axioms\n'LexLeanRuntime.instSliceableList' does not depend on any axioms\n'LexLeanRuntime.instToMathIntInt' does not depend on any axioms\n'LexLeanRuntime.join' depends on axioms: [propext]\n'LexLeanRuntime.length' does not depend on any axioms\n'LexLeanRuntime.listIndex' does not depend on any axioms\n'LexLeanRuntime.listIndex._f' does not depend on any axioms\n'LexLeanRuntime.listIndex._sunfold' does not depend on any axioms\n'LexLeanRuntime.listIndex._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.listIndex.match_1' does not depend on any axioms\n'LexLeanRuntime.magnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.multiply' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._f' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._sunfold' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.negate' does not depend on any axioms\n'LexLeanRuntime.parseDecimal' does not depend on any axioms\n'LexLeanRuntime.quotient' does not depend on any axioms\n'LexLeanRuntime.remainder' does not depend on any axioms\n'LexLeanRuntime.shiftLeft' does not depend on any axioms\n'LexLeanRuntime.shiftRight' does not depend on any axioms\n'LexLeanRuntime.signedMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.slice' does not depend on any axioms\n'LexLeanRuntime.splitExact' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.subtract' does not depend on any axioms\n'LexLeanRuntime.utf8Decode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.utf8Encode' does not depend on any axioms\n","stdout_sha256":"73fea1d9e9e9f0a2f1363b9f284eeeb9e434430e9fa910260b9526bad864641e","tool":"lean"} diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanRuntime.Reasoning.lean b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanRuntime.Reasoning.lean similarity index 100% rename from compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanRuntime.Reasoning.lean rename to compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanRuntime.Reasoning.lean diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanRuntime.Reasoning.process.json b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanRuntime.Reasoning.process.json new file mode 100644 index 000000000..7df63150e --- /dev/null +++ b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanRuntime.Reasoning.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanRuntime.Reasoning.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanRuntime.Reasoning","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanReasoning.All' does not depend on any axioms\n'LexLeanReasoning.All.below' does not depend on any axioms\n'LexLeanReasoning.All.below.casesOn' does not depend on any axioms\n'LexLeanReasoning.All.brecOn' does not depend on any axioms\n'LexLeanReasoning.All.casesOn' does not depend on any axioms\n'LexLeanReasoning.All.recOn' does not depend on any axioms\n'LexLeanReasoning.Complete' does not depend on any axioms\n'LexLeanReasoning.Found' does not depend on any axioms\n'LexLeanReasoning.Found.match_1' does not depend on any axioms\n'LexLeanReasoning.Preserves' does not depend on any axioms\n'LexLeanReasoning.Reaches' does not depend on any axioms\n'LexLeanReasoning.SearchOk' does not depend on any axioms\n'LexLeanReasoning.Sound' does not depend on any axioms\n'LexLeanReasoning.Star' does not depend on any axioms\n'LexLeanReasoning.Star.below' does not depend on any axioms\n'LexLeanReasoning.Star.below.casesOn' does not depend on any axioms\n'LexLeanReasoning.Star.brecOn' does not depend on any axioms\n'LexLeanReasoning.Star.casesOn' does not depend on any axioms\n'LexLeanReasoning.Star.recOn' does not depend on any axioms\n'LexLeanReasoning.allAppend' does not depend on any axioms\n'LexLeanReasoning.allFold' does not depend on any axioms\n'LexLeanReasoning.allHead' does not depend on any axioms\n'LexLeanReasoning.allSingle' does not depend on any axioms\n'LexLeanReasoning.allTail' does not depend on any axioms\n'LexLeanReasoning.bltSucc' does not depend on any axioms\n'LexLeanReasoning.capAll' does not depend on any axioms\n'LexLeanReasoning.capBound' does not depend on any axioms\n'LexLeanReasoning.checked' does not depend on any axioms\n'LexLeanReasoning.foldInvariant' does not depend on any axioms\n'LexLeanReasoning.foldSnoc' does not depend on any axioms\n'LexLeanReasoning.freshAll' does not depend on any axioms\n'LexLeanReasoning.guarded' does not depend on any axioms\n'LexLeanReasoning.guardedRank' does not depend on any axioms\n'LexLeanReasoning.iterateUntilBound' does not depend on any axioms\n'LexLeanReasoning.iterateUntilCount' does not depend on any axioms\n'LexLeanReasoning.iterateUntilGrowth' does not depend on any axioms\n'LexLeanReasoning.iterateUntilInvariant' does not depend on any axioms\n'LexLeanReasoning.iterateUntilSimulate' does not depend on any axioms\n'LexLeanReasoning.iterateUntilStops' does not depend on any axioms\n'LexLeanReasoning.lengthSnoc' does not depend on any axioms\n'LexLeanReasoning.noneSome' does not depend on any axioms\n'LexLeanReasoning.peakBound' does not depend on any axioms\n'LexLeanReasoning.reachesStart' does not depend on any axioms\n'LexLeanReasoning.searchStart' does not depend on any axioms\n'LexLeanReasoning.starPreserves' does not depend on any axioms\n'LexLeanReasoning.zeroLe' does not depend on any axioms\n","stdout_sha256":"bcad061b4e8b3848b9d6815070631b4088a7b6b1512ab5c741c66c6dea825fee","tool":"lean"} diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.BudgetOracle.lean b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.BudgetOracle.lean similarity index 100% rename from compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.BudgetOracle.lean rename to compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.BudgetOracle.lean diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.BudgetOracle.process.json b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.BudgetOracle.process.json new file mode 100644 index 000000000..dd15742d8 --- /dev/null +++ b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.BudgetOracle.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.BudgetOracle.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.BudgetOracle","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanTarget.BudgetOracle.Burn.apply' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Burn.apply_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.BudgetOracle.Burn.apply_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.BudgetOracle.Burn.candidates' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Burn.conclusion' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Burn.guard' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Drained.sound' depends on axioms: [propext]\n'LexLeanTarget.BudgetOracle.Empty' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.Ledger' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.Run' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.Step' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.accept' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.accept_sound' depends on axioms: [propext]\n'LexLeanTarget.BudgetOracle.Refund.account' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.answer' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.attempts' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.conclude' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.conclude_accept' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.conclude_sound' depends on axioms: [propext]\n'LexLeanTarget.BudgetOracle.Refund.derivation' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.BudgetOracle.Refund.explained' depends on axioms: [propext]\n'LexLeanTarget.BudgetOracle.Refund.extract' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.fire' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.fire_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.BudgetOracle.Refund.firings_bounded' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.follow' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.iterations_bounded' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.next' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.next_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.BudgetOracle.Refund.observe' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.replay' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.replay_fire' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.replay_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.BudgetOracle.Refund.run' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.run_state' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.run_trace' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.saturate' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.saturate_derivation' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.BudgetOracle.Refund.select' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.start' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.step' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.step_count' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.step_fired' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.step_none' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.step_some' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.step_trace' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.verdict' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Refund.verdict_sound' depends on axioms: [propext]\n'LexLeanTarget.BudgetOracle.Remaining' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.Ledger' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.Run' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.Step' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.accept' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.accept_sound' depends on axioms: [propext]\n'LexLeanTarget.BudgetOracle.Spend.account' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.answer' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.attempts' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.conclude' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.conclude_accept' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.conclude_sound' depends on axioms: [propext]\n'LexLeanTarget.BudgetOracle.Spend.derivation' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.BudgetOracle.Spend.explained' depends on axioms: [propext]\n'LexLeanTarget.BudgetOracle.Spend.extract' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.fire' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.fire_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.BudgetOracle.Spend.fire_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.BudgetOracle.Spend.firings_bounded' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.follow' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.iterations_bounded' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.next' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.next_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.BudgetOracle.Spend.next_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.BudgetOracle.Spend.observe' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.replay' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.replay_fire' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.replay_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.BudgetOracle.Spend.run' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.run_state' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.run_trace' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.saturate' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.saturate_derivation' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.BudgetOracle.Spend.saturates' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.BudgetOracle.Spend.select' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.start' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.step' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.step_count' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.step_fired' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.step_none' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.step_some' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.step_trace' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.verdict' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Spend.verdict_sound' depends on axioms: [propext]\n'LexLeanTarget.BudgetOracle.Spent' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Tick.apply' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Tick.apply_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.BudgetOracle.Tick.apply_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.BudgetOracle.Tick.conclusion' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.Tick.guard' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.allowance_bound' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.BudgetOracle.burn_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.BudgetOracle.burn_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.BudgetOracle.emptyCheck' does not depend on any axioms\n'LexLeanTarget.BudgetOracle.empty_sound' depends on axioms: [propext]\n'LexLeanTarget.BudgetOracle.tick_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.BudgetOracle.tick_sound' depends on axioms: [propext, Quot.sound]\n","stdout_sha256":"59007df9d3aac13b14aaf31eaed78191fe1dd3bed8cf0c08553de02edaf64988","tool":"lean"} diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.Certification.lean b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.Certification.lean similarity index 100% rename from compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.Certification.lean rename to compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.Certification.lean diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.Certification.process.json b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.Certification.process.json new file mode 100644 index 000000000..287f7ad88 --- /dev/null +++ b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.Certification.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.Certification.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.Certification","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanTarget.Certification.Bridge' does not depend on any axioms\n'LexLeanTarget.Certification.Certificate' does not depend on any axioms\n'LexLeanTarget.Certification.Certified' does not depend on any axioms\n'LexLeanTarget.Certification.Established' does not depend on any axioms\n'LexLeanTarget.Certification.Fact' does not depend on any axioms\n'LexLeanTarget.Certification.Obligation' does not depend on any axioms\n'LexLeanTarget.Certification.Premise' does not depend on any axioms\n'LexLeanTarget.Certification.Refusal' does not depend on any axioms\n'LexLeanTarget.Certification.Route' does not depend on any axioms\n'LexLeanTarget.Certification.Schema' does not depend on any axioms\n'LexLeanTarget.Certification.Verdict' does not depend on any axioms\n'LexLeanTarget.Certification.allBelow' does not depend on any axioms\n'LexLeanTarget.Certification.allLists' does not depend on any axioms\n'LexLeanTarget.Certification.allLong' does not depend on any axioms\n'LexLeanTarget.Certification.allShorter' does not depend on any axioms\n'LexLeanTarget.Certification.argumentStatus' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.Certification.armIsolated' does not depend on any axioms\n'LexLeanTarget.Certification.armsIsolated' does not depend on any axioms\n'LexLeanTarget.Certification.ascending' does not depend on any axioms\n'LexLeanTarget.Certification.bridgePosition' does not depend on any axioms\n'LexLeanTarget.Certification.certificateReductionsPreserve' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.Certification.cheaperObservation' does not depend on any axioms\n'LexLeanTarget.Certification.check' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.Certification.claimShape' does not depend on any axioms\n'LexLeanTarget.Certification.eligible' does not depend on any axioms\n'LexLeanTarget.Certification.establishedFrom' does not depend on any axioms\n'LexLeanTarget.Certification.exprIsolated' does not depend on any axioms\n'LexLeanTarget.Certification.exprsIsolated' does not depend on any axioms\n'LexLeanTarget.Certification.factAt' does not depend on any axioms\n'LexLeanTarget.Certification.factRows' does not depend on any axioms\n'LexLeanTarget.Certification.factsOf' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.Certification.firstSmaller' does not depend on any axioms\n'LexLeanTarget.Certification.frontierPosition' does not depend on any axioms\n'LexLeanTarget.Certification.frontierVerdict' does not depend on any axioms\n'LexLeanTarget.Certification.improves' does not depend on any axioms\n'LexLeanTarget.Certification.isList' does not depend on any axioms\n'LexLeanTarget.Certification.isLong' does not depend on any axioms\n'LexLeanTarget.Certification.isNormal' does not depend on any axioms\n'LexLeanTarget.Certification.isShorter' does not depend on any axioms\n'LexLeanTarget.Certification.keepsObservation' does not depend on any axioms\n'LexLeanTarget.Certification.lowerPosition' does not depend on any axioms\n'LexLeanTarget.Certification.lowerVerdict' does not depend on any axioms\n'LexLeanTarget.Certification.natAt' does not depend on any axioms\n'LexLeanTarget.Certification.normalityVerdict' does not depend on any axioms\n'LexLeanTarget.Certification.pairRelation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.Certification.pickFrom' does not depend on any axioms\n'LexLeanTarget.Certification.plansIsolated' does not depend on any axioms\n'LexLeanTarget.Certification.positionOf' does not depend on any axioms\n'LexLeanTarget.Certification.premiseFact' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.Certification.preserves' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.Certification.reductionVerdict' does not depend on any axioms\n'LexLeanTarget.Certification.reductionsPreserve' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.Certification.representationVerdict' does not depend on any axioms\n'LexLeanTarget.Certification.rewrite' does not depend on any axioms\n'LexLeanTarget.Certification.rowsOfMembers' does not depend on any axioms\n'LexLeanTarget.Certification.sameObjective' does not depend on any axioms\n'LexLeanTarget.Certification.sameObservations' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.Certification.sameObservationsAt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.Certification.sameScope' does not depend on any axioms\n'LexLeanTarget.Certification.scanBridge' does not depend on any axioms\n'LexLeanTarget.Certification.scanFrontier' does not depend on any axioms\n'LexLeanTarget.Certification.scanLower' does not depend on any axioms\n'LexLeanTarget.Certification.scanReduction' does not depend on any axioms\n'LexLeanTarget.Certification.selectorAt' does not depend on any axioms\n'LexLeanTarget.Certification.sizesOf' does not depend on any axioms\n'LexLeanTarget.Certification.staticCharge' does not depend on any axioms\n'LexLeanTarget.Certification.staticSize' does not depend on any axioms\n'LexLeanTarget.Certification.strictlyCheaper' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.Certification.strictlyCheaperAt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.Certification.valueAt' does not depend on any axioms\n","stdout_sha256":"80f2bb229260f7d797c445dfde090e98a616a384a81de5827faf42cb60c0213e","tool":"lean"} diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.Gnaf.lean b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.Gnaf.lean similarity index 100% rename from compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.Gnaf.lean rename to compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.Gnaf.lean diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.Gnaf.process.json b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.Gnaf.process.json new file mode 100644 index 000000000..f12456bb5 --- /dev/null +++ b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.Gnaf.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.Gnaf.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.Gnaf","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanTarget.Gnaf.Action' does not depend on any axioms\n'LexLeanTarget.Gnaf.ActionKind' does not depend on any axioms\n'LexLeanTarget.Gnaf.Answer' does not depend on any axioms\n'LexLeanTarget.Gnaf.Boundary' does not depend on any axioms\n'LexLeanTarget.Gnaf.Capacity' does not depend on any axioms\n'LexLeanTarget.Gnaf.Carrier' does not depend on any axioms\n'LexLeanTarget.Gnaf.Charge' does not depend on any axioms\n'LexLeanTarget.Gnaf.ClaimClass' does not depend on any axioms\n'LexLeanTarget.Gnaf.Completeness' does not depend on any axioms\n'LexLeanTarget.Gnaf.Grammar' does not depend on any axioms\n'LexLeanTarget.Gnaf.Machine' does not depend on any axioms\n'LexLeanTarget.Gnaf.Objective' does not depend on any axioms\n'LexLeanTarget.Gnaf.OperandSize' does not depend on any axioms\n'LexLeanTarget.Gnaf.Plan' does not depend on any axioms\n'LexLeanTarget.Gnaf.Prepared' does not depend on any axioms\n'LexLeanTarget.Gnaf.Rejection' does not depend on any axioms\n'LexLeanTarget.Gnaf.Request' does not depend on any axioms\n'LexLeanTarget.Gnaf.Scope' does not depend on any axioms\n'LexLeanTarget.Gnaf.Selector' does not depend on any axioms\n'LexLeanTarget.Gnaf.Status' does not depend on any axioms\n'LexLeanTarget.Gnaf.addNew' does not depend on any axioms\n'LexLeanTarget.Gnaf.admittedRows' does not depend on any axioms\n'LexLeanTarget.Gnaf.allIn' does not depend on any axioms\n'LexLeanTarget.Gnaf.andFalse' does not depend on any axioms\n'LexLeanTarget.Gnaf.andOverOr' does not depend on any axioms\n'LexLeanTarget.Gnaf.answer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.Gnaf.anyBy' does not depend on any axioms\n'LexLeanTarget.Gnaf.anyUnresolved' does not depend on any axioms\n'LexLeanTarget.Gnaf.appendAll' does not depend on any axioms\n'LexLeanTarget.Gnaf.argmin' does not depend on any axioms\n'LexLeanTarget.Gnaf.armCallees' does not depend on any axioms\n'LexLeanTarget.Gnaf.armSize' does not depend on any axioms\n'LexLeanTarget.Gnaf.armsCallees' does not depend on any axioms\n'LexLeanTarget.Gnaf.armsSize' does not depend on any axioms\n'LexLeanTarget.Gnaf.arrivals' does not depend on any axioms\n'LexLeanTarget.Gnaf.attaining' does not depend on any axioms\n'LexLeanTarget.Gnaf.attains' does not depend on any axioms\n'LexLeanTarget.Gnaf.beqNext' does not depend on any axioms\n'LexLeanTarget.Gnaf.bltNext' does not depend on any axioms\n'LexLeanTarget.Gnaf.bltSucc' depends on axioms: [propext]\n'LexLeanTarget.Gnaf.calleesOf' does not depend on any axioms\n'LexLeanTarget.Gnaf.certifies' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.Gnaf.certifiesArgmin' does not depend on any axioms\n'LexLeanTarget.Gnaf.certifiesFrontier' does not depend on any axioms\n'LexLeanTarget.Gnaf.chargeBeyond' does not depend on any axioms\n'LexLeanTarget.Gnaf.checkAllDeclared' does not depend on any axioms\n'LexLeanTarget.Gnaf.checkClaim' does not depend on any axioms\n'LexLeanTarget.Gnaf.checkDeclared' does not depend on any axioms\n'LexLeanTarget.Gnaf.checkDistinct' does not depend on any axioms\n'LexLeanTarget.Gnaf.checkKindsAccounted' does not depend on any axioms\n'LexLeanTarget.Gnaf.checkPerformed' does not depend on any axioms\n'LexLeanTarget.Gnaf.checkPlanPreparation' does not depend on any axioms\n'LexLeanTarget.Gnaf.checkPrepared' does not depend on any axioms\n'LexLeanTarget.Gnaf.closeOver' does not depend on any axioms\n'LexLeanTarget.Gnaf.componentwiseMinimum' does not depend on any axioms\n'LexLeanTarget.Gnaf.compositions' does not depend on any axioms\n'LexLeanTarget.Gnaf.countKind' does not depend on any axioms\n'LexLeanTarget.Gnaf.dispatchInFixed' depends on axioms: [propext]\n'LexLeanTarget.Gnaf.dispatchInOver' depends on axioms: [propext]\n'LexLeanTarget.Gnaf.dispatchInSmalls' depends on axioms: [propext]\n'LexLeanTarget.Gnaf.dispatchInThresholds' depends on axioms: [propext]\n'LexLeanTarget.Gnaf.dispatchOver' does not depend on any axioms\n'LexLeanTarget.Gnaf.dispatchSmalls' does not depend on any axioms\n'LexLeanTarget.Gnaf.dispatchThresholds' does not depend on any axioms\n'LexLeanTarget.Gnaf.dominatedIn' does not depend on any axioms\n'LexLeanTarget.Gnaf.dominates' does not depend on any axioms\n'LexLeanTarget.Gnaf.entryBody' does not depend on any axioms\n'LexLeanTarget.Gnaf.environmentRows' does not depend on any axioms\n'LexLeanTarget.Gnaf.evaluate' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.Gnaf.expand' does not depend on any axioms\n'LexLeanTarget.Gnaf.expandComplete' depends on axioms: [propext]\n'LexLeanTarget.Gnaf.exprCallees' does not depend on any axioms\n'LexLeanTarget.Gnaf.exprSize' does not depend on any axioms\n'LexLeanTarget.Gnaf.exprsCallees' does not depend on any axioms\n'LexLeanTarget.Gnaf.exprsSize' does not depend on any axioms\n'LexLeanTarget.Gnaf.extendAll' does not depend on any axioms\n'LexLeanTarget.Gnaf.extendWalk' does not depend on any axioms\n'LexLeanTarget.Gnaf.fairExpectation' does not depend on any axioms\n'LexLeanTarget.Gnaf.falseAnd' does not depend on any axioms\n'LexLeanTarget.Gnaf.falseOr' does not depend on any axioms\n'LexLeanTarget.Gnaf.findAction' does not depend on any axioms\n'LexLeanTarget.Gnaf.fixedInDispatch' depends on axioms: [propext]\n'LexLeanTarget.Gnaf.fixedInFixed' depends on axioms: [propext]\n'LexLeanTarget.Gnaf.fixedInOver' depends on axioms: [propext]\n'LexLeanTarget.Gnaf.fixedInSmalls' depends on axioms: [propext]\n'LexLeanTarget.Gnaf.fixedOver' does not depend on any axioms\n'LexLeanTarget.Gnaf.frontier' does not depend on any axioms\n'LexLeanTarget.Gnaf.frontierFrom' does not depend on any axioms\n'LexLeanTarget.Gnaf.functionAt' does not depend on any axioms\n'LexLeanTarget.Gnaf.hiddenBitCost' does not depend on any axioms\n'LexLeanTarget.Gnaf.kindIndex' does not depend on any axioms\n'LexLeanTarget.Gnaf.minimaAttained' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.Gnaf.minimumFrom' does not depend on any axioms\n'LexLeanTarget.Gnaf.natIn' does not depend on any axioms\n'LexLeanTarget.Gnaf.natInAppend' depends on axioms: [propext]\n'LexLeanTarget.Gnaf.natInRange' depends on axioms: [propext]\n'LexLeanTarget.Gnaf.natSame' does not depend on any axioms\n'LexLeanTarget.Gnaf.normalize' does not depend on any axioms\n'LexLeanTarget.Gnaf.orAssociative' does not depend on any axioms\n'LexLeanTarget.Gnaf.orFalse' does not depend on any axioms\n'LexLeanTarget.Gnaf.orUnderAnd' does not depend on any axioms\n'LexLeanTarget.Gnaf.performed' does not depend on any axioms\n'LexLeanTarget.Gnaf.planAt' does not depend on any axioms\n'LexLeanTarget.Gnaf.planCharge' does not depend on any axioms\n'LexLeanTarget.Gnaf.planFunctions' does not depend on any axioms\n'LexLeanTarget.Gnaf.pointwiseMinimum' does not depend on any axioms\n'LexLeanTarget.Gnaf.preparation' does not depend on any axioms\n'LexLeanTarget.Gnaf.preparedFor' does not depend on any axioms\n'LexLeanTarget.Gnaf.range' does not depend on any axioms\n'LexLeanTarget.Gnaf.reachable' does not depend on any axioms\n'LexLeanTarget.Gnaf.reachableCharge' does not depend on any axioms\n'LexLeanTarget.Gnaf.reachableSize' does not depend on any axioms\n'LexLeanTarget.Gnaf.realize' does not depend on any axioms\n'LexLeanTarget.Gnaf.rej14ComponentwiseMinima' does not depend on any axioms\n'LexLeanTarget.Gnaf.rej14MinimaUnattained' does not depend on any axioms\n'LexLeanTarget.Gnaf.rej29FrontierOmission' does not depend on any axioms\n'LexLeanTarget.Gnaf.rewriteOnce' does not depend on any axioms\n'LexLeanTarget.Gnaf.sameIdsBy' does not depend on any axioms\n'LexLeanTarget.Gnaf.sameKind' does not depend on any axioms\n'LexLeanTarget.Gnaf.scalarMinimum' does not depend on any axioms\n'LexLeanTarget.Gnaf.scalarRows' does not depend on any axioms\n'LexLeanTarget.Gnaf.selectorEq' does not depend on any axioms\n'LexLeanTarget.Gnaf.selectorIn' does not depend on any axioms\n'LexLeanTarget.Gnaf.selectorInAppend' depends on axioms: [propext]\n'LexLeanTarget.Gnaf.status' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.Gnaf.statusOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.Gnaf.statuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.Gnaf.statusesOf' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.Gnaf.uniformRows' does not depend on any axioms\n'LexLeanTarget.Gnaf.unitCharge' does not depend on any axioms\n'LexLeanTarget.Gnaf.universeOf' does not depend on any axioms\n'LexLeanTarget.Gnaf.validate' does not depend on any axioms\n'LexLeanTarget.Gnaf.valueEq' does not depend on any axioms\n'LexLeanTarget.Gnaf.valuesEq' does not depend on any axioms\n'LexLeanTarget.Gnaf.vec01CertificateHolds' does not depend on any axioms\n'LexLeanTarget.Gnaf.vec01CertificateInvalidated' does not depend on any axioms\n'LexLeanTarget.Gnaf.vec01Extension' does not depend on any axioms\n'LexLeanTarget.Gnaf.vec01Optimum' does not depend on any axioms\n'LexLeanTarget.Gnaf.vec02Frontier' does not depend on any axioms\n'LexLeanTarget.Gnaf.vec04GlobalMinimumIsC' does not depend on any axioms\n'LexLeanTarget.Gnaf.vec04NormalFormIsB' does not depend on any axioms\n'LexLeanTarget.Gnaf.vec04NormalFormRefused' does not depend on any axioms\n'LexLeanTarget.Gnaf.vec17EnvelopeAtOne' does not depend on any axioms\n'LexLeanTarget.Gnaf.vec17EnvelopeAtZero' does not depend on any axioms\n'LexLeanTarget.Gnaf.vec17FairExpectationAtOne' does not depend on any axioms\n'LexLeanTarget.Gnaf.vec17FairExpectationAtZero' does not depend on any axioms\n'LexLeanTarget.Gnaf.vec17PointwiseValueRefused' does not depend on any axioms\n'LexLeanTarget.Gnaf.vec17UniformWorstCase' does not depend on any axioms\n'LexLeanTarget.Gnaf.vectorEq' does not depend on any axioms\n'LexLeanTarget.Gnaf.weaklyBelow' does not depend on any axioms\n'LexLeanTarget.Gnaf.wellFormed' does not depend on any axioms\n'LexLeanTarget.Gnaf.worstCase' does not depend on any axioms\n","stdout_sha256":"1331df9e3d4bee88e89d70ef6b406f01870c0b8da40a372fd990d013ddc52447","tool":"lean"} diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.GnafCertificates.lean b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.GnafCertificates.lean similarity index 100% rename from compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.GnafCertificates.lean rename to compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.GnafCertificates.lean diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.GnafCertificates.process.json b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.GnafCertificates.process.json new file mode 100644 index 000000000..3f09edaea --- /dev/null +++ b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.GnafCertificates.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.GnafCertificates.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.GnafCertificates","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanTarget.GnafCertificates.argminOverSystemsPair0x0Cheaper' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.argminOverSystemsPair0x0Keeps' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.argminOverSystemsPair2x0Cheaper' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.argminOverSystemsPair2x0Keeps' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.bridgeAttainedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.bridgeAttainedVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.bridgeMissingCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.bridgeMissingVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.bridgeNotMinimalCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.bridgeNotMinimalVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.bridgeOutOfRangeCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.bridgeOutOfRangeVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.bridgeReducedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.bridgeReducedPreserves' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.bridgeReducedVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.bridgeUnattainedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.bridgeUnattainedVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.bridgeUnprovenCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.bridgeUnprovenVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.bridgeUnresolvedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.bridgeUnresolvedVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.bridgeViolatedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.bridgeViolatedVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.claimMismatchCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.claimMismatchVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.frontierDominatedMemberCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.frontierDominatedMemberVerdict' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.frontierMemberAtCountCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.frontierMemberAtCountVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.frontierMemberOmittedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.frontierMemberOmittedVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.frontierMemberUnprovenCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.frontierMemberUnprovenVerdict' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.frontierMembersUnorderedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.frontierMembersUnorderedVerdict' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.frontierNonmemberUnprovenCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.frontierNonmemberUnprovenVerdict' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.frontierParetoOptimalCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.frontierParetoOptimalVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.frontierPremiseWeakenedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.frontierPremiseWeakenedVerdict' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.frontierTieCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.frontierTieDroppedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.frontierTieDroppedVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.frontierTieVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.frontierUnresolvedMemberCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.frontierUnresolvedMemberVerdict' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.frontierUnresolvedNonmemberCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.frontierUnresolvedNonmemberVerdict' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.frontierVec02Certificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.frontierVec02Verdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.inadmissiblePlanExcludedPair0x0Cheaper' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.inadmissiblePlanExcludedPair0x0Keeps' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.inadmissiblePlanExcludedPair0x1Cheaper' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.inadmissiblePlanExcludedPair0x1Keeps' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.inadmissiblePlanExcludedPair2x0Cheaper' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.inadmissiblePlanExcludedPair2x0Keeps' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.internalBestOnShortListsPair0x0Cheaper' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.internalBestOnShortListsPair0x0Keeps' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.internalBestOnShortListsPair1x0Cheaper' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.internalBestOnShortListsPair1x0Keeps' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.lbArgminCompleteCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbArgminCompleteVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbArgminMeasuredCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbArgminMeasuredVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbArgminOverSystemsCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbArgminOverSystemsVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbArgminTieCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbArgminTieVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbAttainerAtCountCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbAttainerAtCountVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbAttainerBoundedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbAttainerBoundedVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbAttainerOutOfRangeCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbAttainerOutOfRangeVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbAttainersUnorderedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbAttainersUnorderedVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbDivergingPlanCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbDivergingPlanVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbExcludedAdmittedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbExcludedAdmittedVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbExcludedAtLengthCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbExcludedAtLengthVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbExcludedUnresolvedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbExcludedUnresolvedVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbExtraPremiseCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbExtraPremiseVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbInfeasibleAttainerCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbInfeasibleAttainerVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbNoAttainerCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbNoAttainerVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbOptimumTieMeasuredCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbOptimumTieMeasuredVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbOverUnresolvedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbOverUnresolvedVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbPaysInadmissiblePrefixCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbPaysInadmissiblePrefixVerdict' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.lbPositionOutOfDomainCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbPositionOutOfDomainVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbPositionsRepeatedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbPositionsRepeatedVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbPremiseOmittedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbPremiseOmittedVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbPremiseWeakenedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbPremiseWeakenedVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbPreparationChargedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbPreparationChargedVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbTieBoundedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbTieBoundedVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbTieDroppedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbTieDroppedVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbUnattainedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbUnattainedVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbUndercutCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbUndercutVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbUnresolvedMeasuredCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbUnresolvedMeasuredVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.lbUnresolvedUnboundedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.lbUnresolvedUnboundedVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.normalClaimedGlobalCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.normalClaimedGlobalVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.normalNotGlobalCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.normalNotGlobalVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.normalityImprovableCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.normalityImprovableVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.normalityOptimumCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.normalityOptimumVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.objectiveMismatchCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.objectiveMismatchVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.reductionCollapseDistinctCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.reductionCollapseDistinctPreserves' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.reductionCollapseDistinctVerdict' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.reductionIncompleteCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.reductionIncompletePreserves' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.reductionIncompleteVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.reductionIneligibleCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.reductionIneligiblePreserves' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.reductionIneligibleVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.reductionMixedDomainCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.reductionMixedDomainPreserves' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.reductionMixedDomainVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.reductionOverUnresolvedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.reductionOverUnresolvedVerdict' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.reductionParetoCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.reductionParetoVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.reductionShortListsCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.reductionShortListsPreserves' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.reductionShortListsVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.reductionSmallAtThresholdCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.reductionSmallAtThresholdPreserves' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.reductionSmallAtThresholdVerdict' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.reductionThresholdEdgeCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.reductionThresholdEdgePreserves' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.reductionThresholdEdgeVerdict' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.requestRejectedCachedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.requestRejectedCachedPreserves' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafCertificates.requestRejectedCachedVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.requestRejectedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.requestRejectedVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.reusedEnlargedCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.reusedEnlargedVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.routeIncompatibleCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.routeIncompatibleVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.routeLowerBoundParetoCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.routeLowerBoundParetoVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.scopeMismatchCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.scopeMismatchVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.thresholdEdgePair0x0Cheaper' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.thresholdEdgePair0x0Keeps' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.thresholdEdgePair1x0Cheaper' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.thresholdEdgePair1x0Keeps' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafCertificates.verifierMismatchCertificate' does not depend on any axioms\n'LexLeanTarget.GnafCertificates.verifierMismatchVerdict' depends on axioms: [propext, Classical.choice, Quot.sound]\n","stdout_sha256":"71d56f58daf3ebbc941b59ce5953be0e2d87a70a3d394ccbec6873c2bfc11058","tool":"lean"} diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.GnafFixtures.lean b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.GnafFixtures.lean similarity index 100% rename from compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.GnafFixtures.lean rename to compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.GnafFixtures.lean diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.GnafFixtures.process.json b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.GnafFixtures.process.json new file mode 100644 index 000000000..d98062f6e --- /dev/null +++ b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.GnafFixtures.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.GnafFixtures.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.GnafFixtures","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanTarget.GnafFixtures.argminCompleteAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.argminCompleteRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.argminCompleteStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.argminCompleteUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.argminOverSystemsAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.argminOverSystemsRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.argminOverSystemsStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.argminOverSystemsUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.argminTieAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.argminTieRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.argminTieStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.argminTieUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.boundOverUnresolvedAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.boundOverUnresolvedRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.boundOverUnresolvedStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.boundOverUnresolvedUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.bridgeStraightLineAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.bridgeStraightLineRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.bridgeStraightLineStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.bridgeStraightLineUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.frontierIncomparableAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.frontierIncomparableRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.frontierIncomparableStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.frontierIncomparableUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.frontierOverUnresolvedAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.frontierOverUnresolvedRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.frontierOverUnresolvedStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.frontierOverUnresolvedUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.frontierParetoOptimalAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.frontierParetoOptimalRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.frontierParetoOptimalStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.frontierParetoOptimalUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.frontierTieAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.frontierTieRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.frontierTieStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.frontierTieUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.inadmissiblePlanExcludedAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.inadmissiblePlanExcludedRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.inadmissiblePlanExcludedStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.inadmissiblePlanExcludedUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.infeasibleUniverseAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.infeasibleUniverseRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.infeasibleUniverseStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.infeasibleUniverseUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.internalBestOnLongListsAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.internalBestOnLongListsRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.internalBestOnLongListsStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.internalBestOnLongListsUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.internalBestOnShortListsAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.internalBestOnShortListsRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.internalBestOnShortListsStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.internalBestOnShortListsUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.optimumOverUnresolvedAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.optimumOverUnresolvedRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.optimumOverUnresolvedStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.optimumOverUnresolvedUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.optimumTieAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.optimumTieRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.optimumTieStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.optimumTieUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.preparationChargedAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.preparationChargedRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.preparationChargedStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.preparationChargedUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.preparationCommonPlanAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.preparationCommonPlanRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.preparationCommonPlanStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.preparationCommonPlanUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.preparationCommonStateAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.preparationCommonStateRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.preparationCommonStateStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.preparationCommonStateUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.reasoningArgminAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.reasoningArgminRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.reasoningArgminStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.reasoningArgminUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.reasoningFrontierAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.reasoningFrontierRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.reasoningFrontierStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.reasoningFrontierUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectBeyondCapacityAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectBeyondCapacityRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectBeyondCapacityUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectCachedUniverseAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectCachedUniverseRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectCachedUniverseUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectCalculusProgramScopeAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectCalculusProgramScopeRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectCalculusProgramScopeUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectCommunicationAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectCommunicationRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectCommunicationUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectConstantCostFallbackAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectConstantCostFallbackRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectConstantCostFallbackUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectDiscoveredUniverseAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectDiscoveredUniverseRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectDiscoveredUniverseUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectDuplicateActionAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectDuplicateActionRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectDuplicateActionUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectEmptyDomainAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectEmptyDomainRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectEmptyDomainUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectFreeObservationAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectFreeObservationRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectFreeObservationUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectFreePreprocessingCompleteBoundaryAnswer' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectFreePreprocessingCompleteBoundaryRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectFreePreprocessingCompleteBoundaryUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectInstanceOptimalClaimAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectInstanceOptimalClaimRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectInstanceOptimalClaimUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectInternalPlanUniverseAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectInternalPlanUniverseRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectInternalPlanUniverseUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectMissingCompletenessAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectMissingCompletenessRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectMissingCompletenessUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectOptimizerCompletenessAnswer' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectOptimizerCompletenessRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectOptimizerCompletenessUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectOptimizerDefinedUniverseAnswer' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectOptimizerDefinedUniverseRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectOptimizerDefinedUniverseUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectProfileDefinedComparisonClaimAnswer' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectProfileDefinedComparisonClaimRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectProfileDefinedComparisonClaimUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectRandomnessAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectRandomnessRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectRandomnessUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectReasoningDiscoveredUniverseAnswer' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectReasoningDiscoveredUniverseRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectReasoningDiscoveredUniverseUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectReasoningFreeSearchAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectReasoningFreeSearchRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectReasoningFreeSearchUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectRestrictedUniverseAliasAnswer' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectRestrictedUniverseAliasRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectRestrictedUniverseAliasUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectRustProgramScopeAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectRustProgramScopeRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectRustProgramScopeUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectScalarClaimPartialOrderAnswer' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectScalarClaimPartialOrderRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectScalarClaimPartialOrderUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectSchedulingAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectSchedulingRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectSchedulingUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectSelfReferentialCompletenessAnswer' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectSelfReferentialCompletenessRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectSelfReferentialCompletenessUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectStepChargedAdviceAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectStepChargedAdviceRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectStepChargedAdviceUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectStrayPreparedArtifactAnswer' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectStrayPreparedArtifactRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectStrayPreparedArtifactUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectUnaccountedDispatchAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectUnaccountedDispatchRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectUnaccountedDispatchUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectUnaccountedPlanPreparationAnswer' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectUnaccountedPlanPreparationRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectUnaccountedPlanPreparationUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectUnboundPreparedStateAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectUnboundPreparedStateRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectUnboundPreparedStateUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectUndeclaredExecutionAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectUndeclaredExecutionRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectUndeclaredExecutionUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectUndeclaredRetainedStateAnswer' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectUndeclaredRetainedStateRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectUndeclaredRetainedStateUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectUnitCostOperandsAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectUnitCostOperandsRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectUnitCostOperandsUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectUnsupportedClaimAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectUnsupportedClaimRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectUnsupportedClaimUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectVectorClaimTotalOrderAnswer' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectVectorClaimTotalOrderRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectVectorClaimTotalOrderUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectZeroCostDispatchAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectZeroCostDispatchRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectZeroCostDispatchUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectZeroCostPreprocessingAnswer' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafFixtures.rejectZeroCostPreprocessingRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.rejectZeroCostPreprocessingUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.thresholdEdgeAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.thresholdEdgeRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.thresholdEdgeStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.thresholdEdgeUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.unknownCostIncompleteAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.unknownCostIncompleteRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.unknownCostIncompleteStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.unknownCostIncompleteUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.vec02ParetoEnvelopeAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.vec02ParetoEnvelopeCertified' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.vec02ParetoEnvelopeMinimaUnattained' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.GnafFixtures.vec02ParetoEnvelopeOmits0' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.vec02ParetoEnvelopeOmits1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.vec02ParetoEnvelopeOmits2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.vec02ParetoEnvelopeRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.vec02ParetoEnvelopeStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.vec02ParetoEnvelopeUniverse' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.vec08EnlargedAnswer' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.vec08EnlargedRequest' does not depend on any axioms\n'LexLeanTarget.GnafFixtures.vec08EnlargedStatuses' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GnafFixtures.vec08EnlargedUniverse' does not depend on any axioms\n","stdout_sha256":"e81a8012148d7879e88bf0122728eaf3bc463a9dc405d7de812313e48575f9fc","tool":"lean"} diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.GradeOracle.lean b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.GradeOracle.lean similarity index 100% rename from compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.GradeOracle.lean rename to compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.GradeOracle.lean diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.GradeOracle.process.json b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.GradeOracle.process.json new file mode 100644 index 000000000..21b3ff002 --- /dev/null +++ b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.GradeOracle.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.GradeOracle.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.GradeOracle","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanTarget.GradeOracle.Grade' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.Ledger' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.Run' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.Step' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.accept' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.accept_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GradeOracle.Grade.account' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.answer' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.attempts' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.conclude' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.conclude_accept' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.conclude_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GradeOracle.Grade.derivation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GradeOracle.Grade.explained' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GradeOracle.Grade.extract' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.fire' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.fire_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.GradeOracle.Grade.fire_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GradeOracle.Grade.firings_bounded' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.follow' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.follow_invariant' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GradeOracle.Grade.follow_relation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GradeOracle.Grade.iterations_bounded' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.next' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.next_preserves' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GradeOracle.Grade.next_preserves_relation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GradeOracle.Grade.next_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.GradeOracle.Grade.next_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GradeOracle.Grade.observe' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.replay' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.replay_fire' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.replay_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GradeOracle.Grade.run' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.run_relation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GradeOracle.Grade.run_state' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.run_trace' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.saturate' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.saturate_derivation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GradeOracle.Grade.saturate_invariant' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GradeOracle.Grade.saturate_relation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GradeOracle.Grade.saturates' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GradeOracle.Grade.select' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.start' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.step' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.step_count' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.step_fired' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.step_none' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.step_some' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.step_trace' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.verdict' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Grade.verdict_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GradeOracle.Graded' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Related' does not depend on any axioms\n'LexLeanTarget.GradeOracle.Scale.sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GradeOracle.grade_admitted' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GradeOracle.grade_correct' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GradeOracle.grade_pending' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.GradeOracle.gradedCheck' does not depend on any axioms\n'LexLeanTarget.GradeOracle.graded_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GradeOracle.related_admitted' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.GradeOracle.related_preserved' depends on axioms: [propext, Classical.choice, Quot.sound]\n","stdout_sha256":"41e26d5b11d5016c3ee787bc19434a0752cf8d9139e8c67bcd737479a87622e5","tool":"lean"} diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.Main.lean b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.Main.lean similarity index 100% rename from compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.Main.lean rename to compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.Main.lean diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.Main.process.json b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.Main.process.json new file mode 100644 index 000000000..1a2dca6d9 --- /dev/null +++ b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.Main.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.Main.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.Main","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanTarget.Main.emptyProgram' does not depend on any axioms\n","stdout_sha256":"7d2326f4d7e78d1f284ea2efd07b36431427f867a86f0aed74877f3834844c2d","tool":"lean"} diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.PlannerOracle.lean b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.PlannerOracle.lean similarity index 100% rename from compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.PlannerOracle.lean rename to compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.PlannerOracle.lean diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.PlannerOracle.process.json b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.PlannerOracle.process.json new file mode 100644 index 000000000..9f889d39d --- /dev/null +++ b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.PlannerOracle.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.PlannerOracle.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.PlannerOracle","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanTarget.PlannerOracle.Anywhere.sound' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.EmptyB.apply' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.EmptyB.apply_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.EmptyB.conclusion' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.EmptyB.guard' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.FillA.apply' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.FillA.apply_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.FillA.conclusion' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.FillA.guard' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Fits' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Held' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Inside.sound' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.Measured.sound' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.Measures' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Moves' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.Plan.EmptyB.successors' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.EmptyB.successors_ok' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.FillA.successors' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.FillA.successors_ok' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.Ledger' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.Node' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.Pour.collect' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.Pour.successors' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.Pour.successors_ok' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.Search' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.Step' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.accept' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.accept_sound' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.Plan.answer' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.attempts' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.derivation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.Plan.expansions_bounded' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.Plan.explained' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.Plan.extend' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.extract' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.failure' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.fire' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.fire_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.Plan.follow' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.follow_invariant' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.Plan.fresh' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.Plan.fresh_ok' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.Plan.frontier_bounded' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.Plan.iterations_bounded' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.Plan.observe' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.replay' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.replay_fire' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.replay_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.Plan.run' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.Plan.searchStep' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.Plan.search_count' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.Plan.search_expanded' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.Plan.search_ok' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.Plan.search_peak' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.Plan.search_step' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.Plan.search_verify_growth' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.Plan.start' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.Plan.successors' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.successors_ok' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Plan.verdict' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.Plan.verdict_sound' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.Plan.verifications_bounded' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFit' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFit.EmptyB.successors' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.EmptyB.successors_ok' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.FillA.successors' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.FillA.successors_ok' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.Ledger' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.Node' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.Pour.collect' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.Pour.successors' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.Pour.successors_ok' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.Search' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.Step' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.accept' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.accept_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.PlannerOracle.PlanFit.answer' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.attempts' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.derivation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.PlanFit.expansions_bounded' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFit.explained' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.PlanFit.extend' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.extract' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.failure' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.fire' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.fire_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.PlanFit.follow' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.follow_invariant' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.PlanFit.fresh' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFit.fresh_ok' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFit.frontier_bounded' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFit.iterations_bounded' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFit.observe' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.replay' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.replay_fire' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.replay_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.PlanFit.run' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFit.searchStep' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFit.search_count' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFit.search_expanded' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFit.search_ok' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFit.search_peak' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFit.search_step' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFit.search_verify_growth' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFit.start' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFit.successors' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.successors_ok' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFit.verdict' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFit.verdict_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.PlanFit.verifications_bounded' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitR' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitR.EmptyB.successors' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.EmptyB.successors_ok' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.FillA.successors' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.FillA.successors_ok' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.Ledger' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.Node' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.Pour.collect' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.Pour.successors' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.Pour.successors_ok' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.Search' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.Step' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.accept' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.accept_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.PlannerOracle.PlanFitR.answer' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.attempts' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.derivation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.PlanFitR.expansions_bounded' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitR.explained' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.PlanFitR.extend' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.extract' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.failure' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.fire' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.fire_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.PlanFitR.follow' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.follow_invariant' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.PlanFitR.follow_relation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.PlanFitR.fresh' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitR.fresh_ok' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitR.frontier_bounded' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitR.iterations_bounded' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitR.observe' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.replay' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.replay_fire' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.replay_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.PlanFitR.run' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitR.searchStep' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitR.search_count' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitR.search_expanded' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitR.search_ok' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitR.search_peak' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitR.search_step' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitR.search_verify_growth' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitR.start' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitR.successors' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.successors_ok' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitR.verdict' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitR.verdict_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.PlanFitR.verifications_bounded' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitU' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitU.EmptyB.successors' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.EmptyB.successors_ok' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.FillA.successors' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.FillA.successors_ok' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.Ledger' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.Node' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.Pour.collect' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.Pour.successors' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.Pour.successors_ok' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.Search' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.Step' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.accept' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.accept_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.PlannerOracle.PlanFitU.answer' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.attempts' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.derivation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.PlanFitU.expansions_bounded' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitU.explained' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.PlannerOracle.PlanFitU.extend' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.extract' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.failure' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.fire' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.fire_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.PlanFitU.follow' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.follow_invariant' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.PlanFitU.fresh' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitU.fresh_ok' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitU.frontier_bounded' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitU.iterations_bounded' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitU.observe' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.replay' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.replay_fire' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.replay_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.PlanFitU.run' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitU.searchStep' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitU.search_count' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitU.search_expanded' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitU.search_ok' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitU.search_peak' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitU.search_step' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitU.search_verify_growth' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitU.start' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitU.successors' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.successors_ok' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.PlanFitU.verdict' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.PlanFitU.verdict_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.PlannerOracle.PlanFitU.verifications_bounded' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.Pour.apply' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Pour.apply_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.Pour.candidates' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Pour.conclusion' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Pour.guard' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Pouring.preserves' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Whole' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.Within' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.empty_jugs_fit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.emptyb_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.filla_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.fits_kept' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.held_initial' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.held_preserved' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.measuresCheck' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.measures_sound' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.plan_fit_correct' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.PlannerOracle.plan_held_correct' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.PlannerOracle.plan_whole_correct' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.PlannerOracle.pour_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.PlannerOracle.wholeCheck' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.whole_sound' depends on axioms: [propext]\n'LexLeanTarget.PlannerOracle.withinCheck' does not depend on any axioms\n'LexLeanTarget.PlannerOracle.within_sound' depends on axioms: [propext]\n","stdout_sha256":"0758e97b7a8f57ecef82cca97e2d440e8ff64d83b29d17bef960473b67dec2b7","tool":"lean"} diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.ReasoningFixtures.lean b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.ReasoningFixtures.lean similarity index 100% rename from compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.ReasoningFixtures.lean rename to compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.ReasoningFixtures.lean diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.ReasoningFixtures.process.json b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.ReasoningFixtures.process.json new file mode 100644 index 000000000..9d18cda8d --- /dev/null +++ b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.ReasoningFixtures.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.ReasoningFixtures.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.ReasoningFixtures","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanTarget.ReasoningFixtures.encodeDoseSteps' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.encodeDoseStepsOne' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.encodeFailure' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.encodePlanSteps' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.encodePlanStepsOne' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.encodeScreenSteps' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.encodeScreenStepsOne' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.encodeTriageStep' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.encodeTriageSteps' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.reasoningDose120Agrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningDose120Outcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningDose120Program' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.reasoningDose120Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningDose60Agrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningDose60Outcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningDose60Program' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.reasoningDose60Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningGnafGoalAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningGnafGoalOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningGnafGoalProgram' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.reasoningGnafGoalRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningGnafPriorityAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningGnafPriorityOutcome' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningGnafPriorityProgram' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.reasoningGnafPriorityRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningGnafSweepAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningGnafSweepOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningGnafSweepProgram' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.reasoningGnafSweepRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningGradeShockAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningGradeShockOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningGradeShockProgram' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.reasoningGradeShockRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningGradeWellAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningGradeWellOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningGradeWellProgram' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.reasoningGradeWellRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningPlan2Agrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningPlan2Outcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningPlan2Program' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.reasoningPlan2Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningPlan5Agrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningPlan5Outcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningPlan5Program' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.reasoningPlan5Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningReviewExhaustedAgrees' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningReviewExhaustedOutcome' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningReviewExhaustedProgram' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.reasoningReviewExhaustedRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningReviewRejectedAgrees' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningReviewRejectedOutcome' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningReviewRejectedProgram' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.reasoningReviewRejectedRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningScreen0Agrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningScreen0Outcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningScreen0Program' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.reasoningScreen0Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningScreen100Agrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningScreen100Outcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningScreen100Program' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.reasoningScreen100Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningScreen60Agrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningScreen60Outcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningScreen60Program' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.reasoningScreen60Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningSpend2Agrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningSpend2Outcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningSpend2Program' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.reasoningSpend2Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningTriageShockAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningTriageShockOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningTriageShockProgram' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.reasoningTriageShockRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningTriageTracedAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningTriageTracedOutcome' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningTriageTracedProgram' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.reasoningTriageTracedRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningTriageWellAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningTriageWellOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningFixtures.reasoningTriageWellProgram' does not depend on any axioms\n'LexLeanTarget.ReasoningFixtures.reasoningTriageWellRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n","stdout_sha256":"1de37e5613059ad2366b5f16de757528c552aa5af91db58ab847229eab7edaef","tool":"lean"} diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.ReasoningOracle.lean b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.ReasoningOracle.lean similarity index 100% rename from compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.ReasoningOracle.lean rename to compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.ReasoningOracle.lean diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.ReasoningOracle.process.json b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.ReasoningOracle.process.json new file mode 100644 index 000000000..55ea2e8b8 --- /dev/null +++ b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.ReasoningOracle.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.ReasoningOracle.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.ReasoningOracle","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanTarget.ReasoningOracle.Chart' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Consistent' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Discharged' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Escalate.apply' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Escalate.apply_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Escalate.apply_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Escalate.conclusion' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Escalate.guard' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Febrile' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Fever.apply' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Fever.apply_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Fever.apply_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Fever.conclusion' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Fever.guard' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Findings.preserves' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Hypotensive' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Indicated' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Justified' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Leukocytic' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Leukocytosis.apply' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Leukocytosis.apply_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Leukocytosis.apply_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Leukocytosis.conclusion' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Leukocytosis.guard' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Outpatient.sound' depends on axioms: [propext]\n'LexLeanTarget.ReasoningOracle.Pending' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Recommendation.complete' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Recommendation.sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Review' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.Ledger' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.Run' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.Step' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.accept' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.accept_sound' depends on axioms: [propext]\n'LexLeanTarget.ReasoningOracle.Review.account' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.answer' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.attempts' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.conclude' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.conclude_accept' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.conclude_sound' depends on axioms: [propext]\n'LexLeanTarget.ReasoningOracle.Review.derivation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Review.explained' depends on axioms: [propext]\n'LexLeanTarget.ReasoningOracle.Review.extract' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.fire' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.fire_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Review.firings_bounded' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.follow' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.follow_invariant' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Review.iterations_bounded' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.next' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.next_preserves' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Review.next_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Review.observe' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.replay' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.replay_fire' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.replay_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Review.run' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.run_state' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.run_trace' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.saturate' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.saturate_derivation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Review.saturate_invariant' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Review.select' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.start' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.step' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.step_count' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.step_fired' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.step_none' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.step_some' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.step_trace' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.verdict' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Review.verdict_sound' depends on axioms: [propext]\n'LexLeanTarget.ReasoningOracle.Sepsis.apply' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Sepsis.apply_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Sepsis.apply_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Sepsis.conclusion' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Sepsis.guard' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Shock.apply' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Shock.apply_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Shock.apply_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Shock.conclusion' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Shock.guard' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Sirs.apply' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Sirs.apply_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Sirs.apply_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Sirs.conclusion' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Sirs.guard' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Tachycardia.apply' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Tachycardia.apply_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Tachycardia.apply_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Tachycardia.conclusion' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Tachycardia.guard' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Tachycardic' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Tachypnea.apply' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Tachypnea.apply_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Tachypnea.apply_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Tachypnea.conclusion' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Tachypnea.guard' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Tachypneic' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.Ledger' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.Run' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.Step' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.accept' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.accept_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Triage.account' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.answer' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.attempts' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.conclude' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.conclude_accept' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.conclude_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Triage.derivation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Triage.explained' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Triage.extract' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.fire' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.fire_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Triage.fire_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Triage.firings_bounded' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.follow' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.follow_invariant' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Triage.iterations_bounded' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.next' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.next_preserves' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Triage.next_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Triage.next_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Triage.observe' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.replay' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.replay_fire' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.replay_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Triage.run' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.run_state' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.run_trace' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.saturate' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.saturate_derivation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Triage.saturate_invariant' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Triage.saturates' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Triage.select' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.start' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.step' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.step_count' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.step_fired' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.step_none' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.step_some' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.step_trace' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.verdict' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Triage.verdict_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.Vitals' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.Warranted' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.admitted_consistent' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.admitted_pending' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.ReasoningOracle.consistent_preserved' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.dischargeCheck' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.discharge_sound' depends on axioms: [propext]\n'LexLeanTarget.ReasoningOracle.escalate_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.ReasoningOracle.escalate_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.fever_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.ReasoningOracle.fever_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.feverish' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.hypotensive' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.leukocytic' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.leukocytosis_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.ReasoningOracle.leukocytosis_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.recommendationCheck' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.recommendation_complete' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.recommendation_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.sepsis_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.ReasoningOracle.sepsis_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.shock_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.ReasoningOracle.shock_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.sirs_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.ReasoningOracle.sirs_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.tachycardia_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.ReasoningOracle.tachycardia_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.tachycardic' does not depend on any axioms\n'LexLeanTarget.ReasoningOracle.tachypnea_progress' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.ReasoningOracle.tachypnea_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.ReasoningOracle.tachypneic' does not depend on any axioms\n","stdout_sha256":"6379b45e287b8ba78784669ac39cab6f41ad650597c513813a6a806f7cd9a16a","tool":"lean"} diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.RustSemantics.lean b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.RustSemantics.lean similarity index 100% rename from compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.RustSemantics.lean rename to compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.RustSemantics.lean diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.RustSemantics.process.json b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.RustSemantics.process.json new file mode 100644 index 000000000..9b8cccdf3 --- /dev/null +++ b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.RustSemantics.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.RustSemantics.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.RustSemantics","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanTarget.RustSemantics.ROutcome' does not depend on any axioms\n'LexLeanTarget.RustSemantics.ROutcomes' does not depend on any axioms\n'LexLeanTarget.RustSemantics.allWidth' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns' does not depend on any axioms\n'LexLeanTarget.RustSemantics.constructValue' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched' does not depend on any axioms\n'LexLeanTarget.RustSemantics.eval' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.fallibleType' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findArm' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findFunction' does not depend on any axioms\n'LexLeanTarget.RustSemantics.finished' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth' does not depend on any axioms\n'LexLeanTarget.RustSemantics.invoke' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.isBytes' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemAccepts' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemShifts' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber' does not depend on any axioms\n'LexLeanTarget.RustSemantics.literal' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.lookup' does not depend on any axioms\n'LexLeanTarget.RustSemantics.patternsOf' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated' does not depend on any axioms\n'LexLeanTarget.RustSemantics.returned' does not depend on any axioms\n'LexLeanTarget.RustSemantics.runExport' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.runItem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.sameIdent' does not depend on any axioms\n'LexLeanTarget.RustSemantics.widened' does not depend on any axioms\n","stdout_sha256":"c4a74f7df92c28739cb1b581e499298ce1763d48d3d86b5e835853a86cf5a339","tool":"lean"} diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.RustSyntax.lean b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.RustSyntax.lean similarity index 100% rename from compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.RustSyntax.lean rename to compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.RustSyntax.lean diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.RustSyntax.process.json b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.RustSyntax.process.json new file mode 100644 index 000000000..08c2f700c --- /dev/null +++ b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.RustSyntax.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.RustSyntax.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.RustSyntax","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanTarget.RustSyntax.Arm' does not depend on any axioms\n'LexLeanTarget.RustSyntax.Block' does not depend on any axioms\n'LexLeanTarget.RustSyntax.Callee' does not depend on any axioms\n'LexLeanTarget.RustSyntax.CaptureRead' does not depend on any axioms\n'LexLeanTarget.RustSyntax.Crate' does not depend on any axioms\n'LexLeanTarget.RustSyntax.Ctor' does not depend on any axioms\n'LexLeanTarget.RustSyntax.Dispatch' does not depend on any axioms\n'LexLeanTarget.RustSyntax.Expr' does not depend on any axioms\n'LexLeanTarget.RustSyntax.Ident' does not depend on any axioms\n'LexLeanTarget.RustSyntax.IdentKind' does not depend on any axioms\n'LexLeanTarget.RustSyntax.Item' does not depend on any axioms\n'LexLeanTarget.RustSyntax.ItemDef' does not depend on any axioms\n'LexLeanTarget.RustSyntax.Let' does not depend on any axioms\n'LexLeanTarget.RustSyntax.Lit' does not depend on any axioms\n'LexLeanTarget.RustSyntax.Parameter' does not depend on any axioms\n'LexLeanTarget.RustSyntax.Pat' does not depend on any axioms\n'LexLeanTarget.RustSyntax.Profile' does not depend on any axioms\n'LexLeanTarget.RustSyntax.RustType' does not depend on any axioms\n'LexLeanTarget.RustSyntax.Variant' does not depend on any axioms\n","stdout_sha256":"340586ca755a53bbd0e772cc6bb0bd43c7dc6e45a64449a50df424ff1ad72629","tool":"lean"} diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.ScreeningOracle.lean b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.ScreeningOracle.lean similarity index 100% rename from compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.ScreeningOracle.lean rename to compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.ScreeningOracle.lean diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.ScreeningOracle.process.json b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.ScreeningOracle.process.json new file mode 100644 index 000000000..54f86a2c6 --- /dev/null +++ b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.ScreeningOracle.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.ScreeningOracle.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.ScreeningOracle","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanTarget.ScreeningOracle.Dose' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Dose.Ledger' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Dose.Step' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Dose.Trial' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Dose.answer' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Dose.candidates' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Dose.explained' depends on axioms: [propext]\n'LexLeanTarget.ScreeningOracle.Dose.failure' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Dose.run' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Dose.run_sound' depends on axioms: [propext]\n'LexLeanTarget.ScreeningOracle.Dose.try' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Dose.try_count' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Dose.try_sound' depends on axioms: [propext]\n'LexLeanTarget.ScreeningOracle.Dose.verdict' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Dose.verdict_sound' depends on axioms: [propext]\n'LexLeanTarget.ScreeningOracle.Dose.verifications_bounded' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Dose.verify' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Dose.verify_sound' depends on axioms: [propext]\n'LexLeanTarget.ScreeningOracle.DoseCandidates' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.DoseContract.postcondition_sound' depends on axioms: [propext]\n'LexLeanTarget.ScreeningOracle.DoseModel' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Propose.apply' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Propose.apply_sound' depends on axioms: [propext]\n'LexLeanTarget.ScreeningOracle.Propose.candidates' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Propose.conclusion' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Propose.guard' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Proposed' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Safe' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.SafeDose.sound' depends on axioms: [propext]\n'LexLeanTarget.ScreeningOracle.Screen' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.Ledger' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.Node' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.Propose.collect' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.Propose.successors' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.Propose.successors_ok' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.Search' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.Step' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.accept' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.accept_sound' depends on axioms: [propext]\n'LexLeanTarget.ScreeningOracle.Screen.answer' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.attempts' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.derivation' depends on axioms: [propext]\n'LexLeanTarget.ScreeningOracle.Screen.expansions_bounded' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.explained' depends on axioms: [propext]\n'LexLeanTarget.ScreeningOracle.Screen.extend' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.extract' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.failure' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.fire' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.fire_sound' depends on axioms: [propext]\n'LexLeanTarget.ScreeningOracle.Screen.follow' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.frontier_bounded' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.iterations_bounded' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.observe' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.replay' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.replay_fire' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.replay_sound' depends on axioms: [propext]\n'LexLeanTarget.ScreeningOracle.Screen.run' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.searchStep' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.search_count' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.search_expanded' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.search_ok' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.search_peak' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.search_step' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.search_verify_growth' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.start' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.successors' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.successors_ok' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.verdict' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Screen.verdict_sound' depends on axioms: [propext]\n'LexLeanTarget.ScreeningOracle.Screen.verifications_bounded' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.Short' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.propose_sound' depends on axioms: [propext]\n'LexLeanTarget.ScreeningOracle.safeCheck' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.safe_sound' depends on axioms: [propext]\n'LexLeanTarget.ScreeningOracle.shortCheck' does not depend on any axioms\n'LexLeanTarget.ScreeningOracle.short_sound' depends on axioms: [propext]\n","stdout_sha256":"9d44b4b2ace8f5e69c8889eeabedaab7479c25761828af32df261812b28b9066","tool":"lean"} diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.TargetFixtures.lean b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.TargetFixtures.lean similarity index 100% rename from compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.TargetFixtures.lean rename to compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.TargetFixtures.lean diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.TargetFixtures.process.json b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.TargetFixtures.process.json new file mode 100644 index 000000000..7825aca89 --- /dev/null +++ b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.TargetFixtures.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.TargetFixtures.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.TargetFixtures","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanTarget.TargetFixtures.adtEvaluationOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.adtEvaluationProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.adtEvaluationRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.bindingAndShapesOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.bindingAndShapesProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.bindingAndShapesRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.booleanShapesOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.booleanShapesProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.booleanShapesRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.booleansOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.booleansProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.booleansRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.boxedFieldOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.boxedFieldProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.boxedFieldRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.byteCompareProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.byteCompareRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.byteOrderProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.byteOrderRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.byteSlicesOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.byteSlicesProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.byteSlicesRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.bytesAndTextOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.bytesAndTextProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.bytesAndTextRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.closureCapturesOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.closureCapturesProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.closureCapturesRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.closureDispatchOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.closureDispatchProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.closureDispatchRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.closureInlineOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.closureInlineProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.closureInlineRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.closureRecursiveOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.closureRecursiveProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.closureRecursiveRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.closureUninhabitedOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.closureUninhabitedProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.closureUninhabitedRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.closureValueOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.closureValueProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.closureValueRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.closuresOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.closuresProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.closuresRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.convertOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.convertProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.convertRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.decimalOverflowProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.decimalOverflowRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.decimalOverflowWideProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.decimalOverflowWideRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.decimalProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.decimalRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.equalityOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.equalityProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.equalityRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fallibleConditionValueOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fallibleConditionValueProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.fallibleConditionValueRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedBitsSignedOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedBitsSignedProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.fixedBitsSignedRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedBitsUnsignedOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedBitsUnsignedProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.fixedBitsUnsignedRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedCheckedNarrowOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedCheckedNarrowProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.fixedCheckedNarrowRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedCheckedSignedOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedCheckedSignedProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.fixedCheckedSignedRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedCheckedWideOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedCheckedWideProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.fixedCheckedWideRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedDecimalI16Program' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.fixedDecimalI16Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedDecimalI32Program' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.fixedDecimalI32Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedDecimalI64Program' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.fixedDecimalI64Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedDecimalI8Program' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.fixedDecimalI8Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedDecimalU16Program' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.fixedDecimalU16Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedDecimalU32Program' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.fixedDecimalU32Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedDecimalU64Program' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.fixedDecimalU64Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedDecimalU8Program' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.fixedDecimalU8Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedWidthI16Outcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedWidthI16Program' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.fixedWidthI16Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedWidthI32Outcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedWidthI32Program' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.fixedWidthI32Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedWidthI64Outcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedWidthI64Program' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.fixedWidthI64Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedWidthI8Outcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedWidthI8Program' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.fixedWidthI8Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedWidthU16Outcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedWidthU16Program' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.fixedWidthU16Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedWidthU32Outcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedWidthU32Program' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.fixedWidthU32Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedWidthU64Outcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedWidthU64Program' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.fixedWidthU64Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedWidthU8Outcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.fixedWidthU8Program' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.fixedWidthU8Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.functionShapesOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.functionShapesProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.functionShapesRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.graphReachableAbsentAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.graphReachableAbsentOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.graphReachableAbsentProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.graphReachableAbsentRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.graphReachableAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.graphReachableInnerAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.graphReachableInnerOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.graphReachableInnerProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.graphReachableInnerRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.graphReachableOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.graphReachableProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.graphReachableRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.graphSuccessorsAbsentAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.graphSuccessorsAbsentOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.graphSuccessorsAbsentProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.graphSuccessorsAbsentRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.graphSuccessorsAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.graphSuccessorsOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.graphSuccessorsProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.graphSuccessorsRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.graphTopologicalAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.graphTopologicalCycleAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.graphTopologicalCycleOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.graphTopologicalCycleProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.graphTopologicalCycleRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.graphTopologicalOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.graphTopologicalProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.graphTopologicalRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.intArithmeticOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.intArithmeticProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.intArithmeticRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.intOverflowMulOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.intOverflowMulProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.intOverflowMulRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.intOverflowNegOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.intOverflowNegProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.intOverflowNegRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.intOverflowQuotOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.intOverflowQuotProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.intOverflowQuotRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.intOverflowSubOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.intOverflowSubProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.intOverflowSubRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.iterateAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.iterateOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.iterateProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.iterateRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.iterateUntilAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.iterateUntilBoundedAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.iterateUntilBoundedOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.iterateUntilBoundedProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.iterateUntilBoundedRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.iterateUntilOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.iterateUntilProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.iterateUntilRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.listAppendLongOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.listAppendLongProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.listAppendLongRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.listFoldAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.listFoldOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.listFoldProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.listFoldRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.listsOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.listsProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.listsRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.literalsOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.literalsProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.literalsRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapContainsAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapContainsOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapContainsProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.mapContainsRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapFoldAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapFoldOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapFoldProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.mapFoldRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapInsertAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapInsertLastAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapInsertLastOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapInsertLastProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.mapInsertLastRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapInsertOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapInsertProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.mapInsertReplaceAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapInsertReplaceOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapInsertReplaceProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.mapInsertReplaceRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapInsertRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapKeysAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapKeysOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapKeysProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.mapKeysRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapLookupAbsentAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapLookupAbsentOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapLookupAbsentProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.mapLookupAbsentRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapLookupAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapLookupOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapLookupProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.mapLookupRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapRemoveAbsentAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapRemoveAbsentOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapRemoveAbsentProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.mapRemoveAbsentRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapRemoveAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapRemoveOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapRemoveProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.mapRemoveRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapValuesAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapValuesOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.mapValuesProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.mapValuesRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.matchShapesOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.matchShapesProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.matchShapesRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.natArithmeticOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.natArithmeticProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.natArithmeticRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.natOverflowAddOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.natOverflowAddProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.natOverflowAddRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.natOverflowMulOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.natOverflowMulProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.natOverflowMulRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.natOverflowNestedOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.natOverflowNestedProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.natOverflowNestedRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.natOverflowSuccOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.natOverflowSuccProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.natOverflowSuccRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.orderingOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.orderingProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.orderingRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.pairAndListMatchOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.pairAndListMatchProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.pairAndListMatchRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.recordFieldsOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.recordFieldsProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.recordFieldsRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setContainsAbsentAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setContainsAbsentOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setContainsAbsentProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.setContainsAbsentRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setContainsAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setContainsOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setContainsProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.setContainsRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setDifferenceAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setDifferenceOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setDifferenceProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.setDifferenceRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setFoldAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setFoldOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setFoldProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.setFoldRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setInsertBoolAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setInsertBoolOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setInsertBoolProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.setInsertBoolRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setInsertInt8Agrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setInsertInt8Outcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setInsertInt8Program' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.setInsertInt8Run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setInsertIntAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setInsertIntOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setInsertIntProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.setInsertIntRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setInsertNatAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setInsertNatOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setInsertNatProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.setInsertNatRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setInsertProductAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setInsertProductOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setInsertProductProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.setInsertProductRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setInsertStringAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setInsertStringOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setInsertStringProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.setInsertStringRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setIntersectionAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setIntersectionOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setIntersectionProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.setIntersectionRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setRemoveAbsentAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setRemoveAbsentOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setRemoveAbsentProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.setRemoveAbsentRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setRemoveAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setRemoveOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setRemoveProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.setRemoveRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setUnionAgrees' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setUnionOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.setUnionProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.setUnionRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.splitAndJoinProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.splitAndJoinRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.stringEscapesOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.stringEscapesProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.stringEscapesRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.sumToExhaustedOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.sumToExhaustedProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.sumToExhaustedRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.sumToOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.sumToProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.sumToRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.unitClosuresOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.unitClosuresProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.unitClosuresRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.unitValuesOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.unitValuesProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.unitValuesRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.wideShapesOutcome' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetFixtures.wideShapesProgram' does not depend on any axioms\n'LexLeanTarget.TargetFixtures.wideShapesRun' depends on axioms: [propext, Classical.choice, Quot.sound]\n","stdout_sha256":"9028f03268ae25228c0a1c64afc3998515828206dcf201c38e280caf05fb7ca0","tool":"lean"} diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.TargetOracle.lean b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.TargetOracle.lean similarity index 100% rename from compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.TargetOracle.lean rename to compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.TargetOracle.lean diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.TargetOracle.process.json b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.TargetOracle.process.json new file mode 100644 index 000000000..b9aee03c1 --- /dev/null +++ b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.TargetOracle.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.TargetOracle.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.TargetOracle","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanTarget.TargetOracle.encodeAdjacency' does not depend on any axioms\n'LexLeanTarget.TargetOracle.encodeBools' does not depend on any axioms\n'LexLeanTarget.TargetOracle.encodeI8s' does not depend on any axioms\n'LexLeanTarget.TargetOracle.encodeInts' does not depend on any axioms\n'LexLeanTarget.TargetOracle.encodeNatStrings' does not depend on any axioms\n'LexLeanTarget.TargetOracle.encodeNats' does not depend on any axioms\n'LexLeanTarget.TargetOracle.encodeStrings' does not depend on any axioms\n","stdout_sha256":"e5d09f1ed61a07fda3dba02d424da6b01bceef18c4e1e3c70b41a8c133503ccd","tool":"lean"} diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.TargetSemantics.lean b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.TargetSemantics.lean similarity index 100% rename from compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.TargetSemantics.lean rename to compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.TargetSemantics.lean diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.TargetSemantics.process.json b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.TargetSemantics.process.json new file mode 100644 index 000000000..538fa3721 --- /dev/null +++ b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.TargetSemantics.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.TargetSemantics.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.TargetSemantics","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanTarget.TargetSemantics.Outcome' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.Outcomes' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.addSteps' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.chargeResult' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValues' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.construct' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.depth' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.eval' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.fromOrdering' depends on axioms: [propext]\n'LexLeanTarget.TargetSemantics.fromStrings' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.intResult' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.TargetSemantics.lookup' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.natResult' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.orderBool' depends on axioms: [propext]\n'LexLeanTarget.TargetSemantics.orderI16' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.orderI32' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.orderI64' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.orderI8' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.orderInt' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.orderNat' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.orderOf' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.orderString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU16' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.orderU32' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.orderU64' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.orderU8' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.primitive' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.run' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.sameOrder' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.toStrings' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.weight' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.weights' depends on axioms: [propext, Classical.choice, Quot.sound]\n","stdout_sha256":"5db7059cbd2e67dd7cdac827d671c436156acb744114ba6a068eca77cfb130ca","tool":"lean"} diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.TargetSyntax.lean b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.TargetSyntax.lean similarity index 100% rename from compiler/expected/verify/audit/LexLeanAudit.Ac8f5fdecd4eefbea9d5648c31c7d3f79.LexLeanTarget.TargetSyntax.lean rename to compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.TargetSyntax.lean diff --git a/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.TargetSyntax.process.json b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.TargetSyntax.process.json new file mode 100644 index 000000000..d7c2c67ab --- /dev/null +++ b/compiler/expected/verify/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.TargetSyntax.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.TargetSyntax.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ae36982ff9545254b9a90d88b07a1ff91.LexLeanTarget.TargetSyntax","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanTarget.TargetSyntax.Adt' does not depend on any axioms\n'LexLeanTarget.TargetSyntax.Arm' does not depend on any axioms\n'LexLeanTarget.TargetSyntax.Expr' does not depend on any axioms\n'LexLeanTarget.TargetSyntax.Function' does not depend on any axioms\n'LexLeanTarget.TargetSyntax.IntKind' does not depend on any axioms\n'LexLeanTarget.TargetSyntax.Order' does not depend on any axioms\n'LexLeanTarget.TargetSyntax.Prim' does not depend on any axioms\n'LexLeanTarget.TargetSyntax.Program' does not depend on any axioms\n'LexLeanTarget.TargetSyntax.Shape' does not depend on any axioms\n'LexLeanTarget.TargetSyntax.Ty' does not depend on any axioms\n'LexLeanTarget.TargetSyntax.Value' does not depend on any axioms\n","stdout_sha256":"81b555d6535a4ba91c825f93f1d0da80257f7eb8f83fff55f85f7e2fe759deba","tool":"lean"} diff --git a/compiler/expected/verify/probe/LexLeanProbe.Pc8f5fdecd4eefbea9d5648c31c7d3f79.lean b/compiler/expected/verify/probe/LexLeanProbe.Pe36982ff9545254b9a90d88b07a1ff91.lean similarity index 100% rename from compiler/expected/verify/probe/LexLeanProbe.Pc8f5fdecd4eefbea9d5648c31c7d3f79.lean rename to compiler/expected/verify/probe/LexLeanProbe.Pe36982ff9545254b9a90d88b07a1ff91.lean diff --git a/compiler/expected/verify/probe/process.json b/compiler/expected/verify/probe/process.json index b2d7ab39c..9d5621d79 100644 --- a/compiler/expected/verify/probe/process.json +++ b/compiler/expected/verify/probe/process.json @@ -1 +1 @@ -{"argv":["env","lean","$STAGING/probe/LexLeanProbe.Pc8f5fdecd4eefbea9d5648c31c7d3f79.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanProbe.Pc8f5fdecd4eefbea9d5648c31c7d3f79","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} +{"argv":["env","lean","$STAGING/probe/LexLeanProbe.Pe36982ff9545254b9a90d88b07a1ff91.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanProbe.Pe36982ff9545254b9a90d88b07a1ff91","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/compiler/lexlean.lock b/compiler/lexlean.lock index 2bb01f7e4..b2991ab01 100644 --- a/compiler/lexlean.lock +++ b/compiler/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "ef58478b65de0ad784269ab3513059f5afbb7f461bda9476efce78344301755e" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/compiler/rust/negative/arithmetic-invented-overflow.json b/compiler/rust/negative/arithmetic-invented-overflow.json index 64e80dd04..351a06b45 100644 --- a/compiler/rust/negative/arithmetic-invented-overflow.json +++ b/compiler/rust/negative/arithmetic-invented-overflow.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"booleans_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"bool_not"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bool_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bool_or"}},{"kind":"build","operands":[{"condition":{"kind":"var","name":0},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"true"}},{"binders":[],"body":{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"bool_not"}},"shape":{"kind":"false"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"bool"},"kind":"list"},"types":[{"kind":"bool"},{"kind":"bool"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"booleans_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"bool_not"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bool_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bool_or"}},{"kind":"build","operands":[{"condition":{"kind":"var","name":0},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"true"}},{"binders":[],"body":{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"bool_not"}},"shape":{"kind":"false"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"bool"},"kind":"list"},"types":[{"kind":"bool"},{"kind":"bool"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/negative/arithmetic-undeclared-overflow.json b/compiler/rust/negative/arithmetic-undeclared-overflow.json index b0f92a8d2..9f53c0edf 100644 --- a/compiler/rust/negative/arithmetic-undeclared-overflow.json +++ b/compiler/rust/negative/arithmetic-undeclared-overflow.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own"]}],"name":"sum_to_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"kind":"prim","operands":[{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"succ"},"type":{"kind":"nat"}},{"function":0,"kind":"call","operands":[{"kind":"var","name":1}]}],"operation":{"kind":"nat_add"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own"]}],"name":"sum_to_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"kind":"prim","operands":[{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"succ"},"type":{"kind":"nat"}},{"function":0,"kind":"call","operands":[{"kind":"var","name":1}]}],"operation":{"kind":"nat_add"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/negative/export-arity.json b/compiler/rust/negative/export-arity.json index 834eb9c7b..6ea4f4b42 100644 --- a/compiler/rust/negative/export-arity.json +++ b/compiler/rust/negative/export-arity.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"sum_to_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"kind":"prim","operands":[{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"succ"},"type":{"kind":"nat"}},{"function":0,"kind":"call","operands":[{"kind":"var","name":1}]}],"operation":{"kind":"nat_add"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"sum_to_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"kind":"prim","operands":[{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"succ"},"type":{"kind":"nat"}},{"function":0,"kind":"call","operands":[{"kind":"var","name":1}]}],"operation":{"kind":"nat_add"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/negative/hidden-allocation-list.json b/compiler/rust/negative/hidden-allocation-list.json index 7c54d2e38..2806a610a 100644 --- a/compiler/rust/negative/hidden-allocation-list.json +++ b/compiler/rust/negative/hidden-allocation-list.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own"]}],"name":"lists_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"9"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"operation":{"kind":"append"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"index"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"index"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"slice"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"slice"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}}}}},"parameters":[0],"result":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}}}},"types":[{"element":{"kind":"nat"},"kind":"list"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own"]}],"name":"lists_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"9"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"operation":{"kind":"append"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"index"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"index"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"slice"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"slice"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}}}}},"parameters":[0],"result":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}}}},"types":[{"element":{"kind":"nat"},"kind":"list"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/negative/hidden-allocation-recursive-type.json b/compiler/rust/negative/hidden-allocation-recursive-type.json index eab5a6ba0..5e74168a5 100644 --- a/compiler/rust/negative/hidden-allocation-recursive-type.json +++ b/compiler/rust/negative/hidden-allocation-recursive-type.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":1,"name":"run","parameters":[]}],"name":"adt_evaluation_core","profile":"rust-core","program":{"adts":[{"constructors":[[{"kind":"nat"}],[{"index":0,"kind":"adt"},{"index":0,"kind":"adt"}],[{"index":1,"kind":"adt"},{"index":0,"kind":"adt"}]]},{"constructors":[[{"kind":"nat"},{"kind":"nat"}]]}],"functions":[{"body":{"arms":[{"binders":[1],"body":{"kind":"var","name":1},"shape":{"constructor":0,"kind":"adt"}},{"binders":[2,3],"body":{"kind":"prim","operands":[{"function":0,"kind":"call","operands":[{"kind":"var","name":2}]},{"function":0,"kind":"call","operands":[{"kind":"var","name":3}]}],"operation":{"kind":"nat_add"}},"shape":{"constructor":1,"kind":"adt"}},{"binders":[4,5],"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":4}},{"index":1,"kind":"field","value":{"kind":"var","name":4}}],"operation":{"kind":"nat_add"}},{"function":0,"kind":"call","operands":[{"kind":"var","name":5}]}],"operation":{"kind":"nat_mul"}},"shape":{"constructor":2,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"index":0,"kind":"adt"}]},{"body":{"function":0,"kind":"call","operands":[{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"5"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}}],"shape":{"constructor":2,"kind":"adt"},"type":{"index":0,"kind":"adt"}}],"shape":{"constructor":1,"kind":"adt"},"type":{"index":0,"kind":"adt"}}]},"parameters":[],"result":{"kind":"nat"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":1,"name":"run","parameters":[]}],"name":"adt_evaluation_core","profile":"rust-core","program":{"adts":[{"constructors":[[{"kind":"nat"}],[{"index":0,"kind":"adt"},{"index":0,"kind":"adt"}],[{"index":1,"kind":"adt"},{"index":0,"kind":"adt"}]]},{"constructors":[[{"kind":"nat"},{"kind":"nat"}]]}],"functions":[{"body":{"arms":[{"binders":[1],"body":{"kind":"var","name":1},"shape":{"constructor":0,"kind":"adt"}},{"binders":[2,3],"body":{"kind":"prim","operands":[{"function":0,"kind":"call","operands":[{"kind":"var","name":2}]},{"function":0,"kind":"call","operands":[{"kind":"var","name":3}]}],"operation":{"kind":"nat_add"}},"shape":{"constructor":1,"kind":"adt"}},{"binders":[4,5],"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":4}},{"index":1,"kind":"field","value":{"kind":"var","name":4}}],"operation":{"kind":"nat_add"}},{"function":0,"kind":"call","operands":[{"kind":"var","name":5}]}],"operation":{"kind":"nat_mul"}},"shape":{"constructor":2,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"index":0,"kind":"adt"}]},{"body":{"function":0,"kind":"call","operands":[{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"5"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}}],"shape":{"constructor":2,"kind":"adt"},"type":{"index":0,"kind":"adt"}}],"shape":{"constructor":1,"kind":"adt"},"type":{"index":0,"kind":"adt"}}]},"parameters":[],"result":{"kind":"nat"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/negative/identifier-exported-twice.json b/compiler/rust/negative/identifier-exported-twice.json index 23676e3e1..a2f6ee405 100644 --- a/compiler/rust/negative/identifier-exported-twice.json +++ b/compiler/rust/negative/identifier-exported-twice.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]},{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"sum_to_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"kind":"prim","operands":[{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"succ"},"type":{"kind":"nat"}},{"function":0,"kind":"call","operands":[{"kind":"var","name":1}]}],"operation":{"kind":"nat_add"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]},{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"sum_to_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"kind":"prim","operands":[{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"succ"},"type":{"kind":"nat"}},{"function":0,"kind":"call","operands":[{"kind":"var","name":1}]}],"operation":{"kind":"nat_add"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/negative/identifier-generated.json b/compiler/rust/negative/identifier-generated.json index b64655b4e..3a181083e 100644 --- a/compiler/rust/negative/identifier-generated.json +++ b/compiler/rust/negative/identifier-generated.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"v3","parameters":["own"]}],"name":"sum_to_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"kind":"prim","operands":[{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"succ"},"type":{"kind":"nat"}},{"function":0,"kind":"call","operands":[{"kind":"var","name":1}]}],"operation":{"kind":"nat_add"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"v3","parameters":["own"]}],"name":"sum_to_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"kind":"prim","operands":[{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"succ"},"type":{"kind":"nat"}},{"function":0,"kind":"call","operands":[{"kind":"var","name":1}]}],"operation":{"kind":"nat_add"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/negative/identifier-keyword.json b/compiler/rust/negative/identifier-keyword.json index 0ee6b49bd..365e6772c 100644 --- a/compiler/rust/negative/identifier-keyword.json +++ b/compiler/rust/negative/identifier-keyword.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"match","parameters":["own"]}],"name":"sum_to_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"kind":"prim","operands":[{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"succ"},"type":{"kind":"nat"}},{"function":0,"kind":"call","operands":[{"kind":"var","name":1}]}],"operation":{"kind":"nat_add"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"match","parameters":["own"]}],"name":"sum_to_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"kind":"prim","operands":[{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"succ"},"type":{"kind":"nat"}},{"function":0,"kind":"call","operands":[{"kind":"var","name":1}]}],"operation":{"kind":"nat_add"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/negative/identifier-not-snake-case.json b/compiler/rust/negative/identifier-not-snake-case.json index 113245ee6..a8c50e5de 100644 --- a/compiler/rust/negative/identifier-not-snake-case.json +++ b/compiler/rust/negative/identifier-not-snake-case.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"Run","parameters":["own"]}],"name":"sum_to_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"kind":"prim","operands":[{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"succ"},"type":{"kind":"nat"}},{"function":0,"kind":"call","operands":[{"kind":"var","name":1}]}],"operation":{"kind":"nat_add"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"Run","parameters":["own"]}],"name":"sum_to_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"kind":"prim","operands":[{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"succ"},"type":{"kind":"nat"}},{"function":0,"kind":"call","operands":[{"kind":"var","name":1}]}],"operation":{"kind":"nat_add"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/negative/identifier-reserved-crate.json b/compiler/rust/negative/identifier-reserved-crate.json index d51485117..92a61c527 100644 --- a/compiler/rust/negative/identifier-reserved-crate.json +++ b/compiler/rust/negative/identifier-reserved-crate.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"core","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"kind":"prim","operands":[{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"succ"},"type":{"kind":"nat"}},{"function":0,"kind":"call","operands":[{"kind":"var","name":1}]}],"operation":{"kind":"nat_add"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"core","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"kind":"prim","operands":[{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"succ"},"type":{"kind":"nat"}},{"function":0,"kind":"call","operands":[{"kind":"var","name":1}]}],"operation":{"kind":"nat_add"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/negative/identifier-runtime-function.json b/compiler/rust/negative/identifier-runtime-function.json index 43c4909af..5289e433f 100644 --- a/compiler/rust/negative/identifier-runtime-function.json +++ b/compiler/rust/negative/identifier-runtime-function.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"nat_add","parameters":["own"]}],"name":"sum_to_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"kind":"prim","operands":[{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"succ"},"type":{"kind":"nat"}},{"function":0,"kind":"call","operands":[{"kind":"var","name":1}]}],"operation":{"kind":"nat_add"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"nat_add","parameters":["own"]}],"name":"sum_to_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"kind":"prim","operands":[{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"succ"},"type":{"kind":"nat"}},{"function":0,"kind":"call","operands":[{"kind":"var","name":1}]}],"operation":{"kind":"nat_add"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/negative/identifier-runtime-item.json b/compiler/rust/negative/identifier-runtime-item.json index d05700104..5876158c3 100644 --- a/compiler/rust/negative/identifier-runtime-item.json +++ b/compiler/rust/negative/identifier-runtime-item.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"tick","parameters":["own"]}],"name":"sum_to_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"kind":"prim","operands":[{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"succ"},"type":{"kind":"nat"}},{"function":0,"kind":"call","operands":[{"kind":"var","name":1}]}],"operation":{"kind":"nat_add"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"tick","parameters":["own"]}],"name":"sum_to_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"kind":"prim","operands":[{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"succ"},"type":{"kind":"nat"}},{"function":0,"kind":"call","operands":[{"kind":"var","name":1}]}],"operation":{"kind":"nat_add"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/negative/malformed-unknown-member.json b/compiler/rust/negative/malformed-unknown-member.json index 80cb4694f..e01bc297e 100644 --- a/compiler/rust/negative/malformed-unknown-member.json +++ b/compiler/rust/negative/malformed-unknown-member.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"sum_to_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"kind":"prim","operands":[{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"succ"},"type":{"kind":"nat"}},{"function":0,"kind":"call","operands":[{"kind":"var","name":1}]}],"operation":{"kind":"nat_add"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","unchecked":true,"version":"1.0.0"} \ No newline at end of file +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"sum_to_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"kind":"prim","operands":[{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"succ"},"type":{"kind":"nat"}},{"function":0,"kind":"call","operands":[{"kind":"var","name":1}]}],"operation":{"kind":"nat_add"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","unchecked":true,"version":"1.0.0"} \ No newline at end of file diff --git a/compiler/rust/negative/ownership-copy-list.json b/compiler/rust/negative/ownership-copy-list.json index 25b156d44..1c3e3d443 100644 --- a/compiler/rust/negative/ownership-copy-list.json +++ b/compiler/rust/negative/ownership-copy-list.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["copy"]}],"name":"lists_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"9"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"operation":{"kind":"append"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"index"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"index"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"slice"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"slice"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}}}}},"parameters":[0],"result":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}}}},"types":[{"element":{"kind":"nat"},"kind":"list"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["copy"]}],"name":"lists_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"9"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"operation":{"kind":"append"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"index"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"index"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"slice"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"slice"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}}}}},"parameters":[0],"result":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}}}},"types":[{"element":{"kind":"nat"},"kind":"list"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/negative/unsupported-function-boundary.json b/compiler/rust/negative/unsupported-function-boundary.json index b03279039..1e88f9f3b 100644 --- a/compiler/rust/negative/unsupported-function-boundary.json +++ b/compiler/rust/negative/unsupported-function-boundary.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":1,"name":"run","parameters":["own","own"]}],"name":"closures_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"captures":[{"kind":"var","name":1}],"function":2,"kind":"closure"},{"kind":"var","name":0}]},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"kind":"build","operands":[{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"nat"}},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"operation":{"kind":"nat_add"}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":1,"name":"run","parameters":["own","own"]}],"name":"closures_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"captures":[{"kind":"var","name":1}],"function":2,"kind":"closure"},{"kind":"var","name":0}]},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"kind":"build","operands":[{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"nat"}},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"operation":{"kind":"nat_add"}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/negative/unsupported-function-in-record.json b/compiler/rust/negative/unsupported-function-in-record.json index 49cffe4b3..96e8d52be 100644 --- a/compiler/rust/negative/unsupported-function-in-record.json +++ b/compiler/rust/negative/unsupported-function-in-record.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own"]}],"name":"sum_to_std","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"nat"}}]]}],"functions":[{"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"index":0,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own"]}],"name":"sum_to_std","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"nat"}}]]}],"functions":[{"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"index":0,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/negative/unsupported-uninhabited-value.json b/compiler/rust/negative/unsupported-uninhabited-value.json index 16136db10..c2b59cf7a 100644 --- a/compiler/rust/negative/unsupported-uninhabited-value.json +++ b/compiler/rust/negative/unsupported-uninhabited-value.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":[]}],"name":"sum_to_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"apply","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"target":{"function":1,"kind":"call","operands":[]}},"parameters":[],"result":{"kind":"nat"},"types":[]},{"body":{"function":1,"kind":"call","operands":[]},"parameters":[],"result":{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"nat"}},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":[]}],"name":"sum_to_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"apply","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"target":{"function":1,"kind":"call","operands":[]}},"parameters":[],"result":{"kind":"nat"},"types":[]},{"body":{"function":1,"kind":"call","operands":[]},"parameters":[],"result":{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"nat"}},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/negative/version-noncanonical.json b/compiler/rust/negative/version-noncanonical.json index 78c9cfb89..d8a6e3457 100644 --- a/compiler/rust/negative/version-noncanonical.json +++ b/compiler/rust/negative/version-noncanonical.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"sum_to_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"kind":"prim","operands":[{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"succ"},"type":{"kind":"nat"}},{"function":0,"kind":"call","operands":[{"kind":"var","name":1}]}],"operation":{"kind":"nat_add"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.01.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"sum_to_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"kind":"prim","operands":[{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"succ"},"type":{"kind":"nat"}},{"function":0,"kind":"call","operands":[{"kind":"var","name":1}]}],"operation":{"kind":"nat_add"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.01.0"} diff --git a/compiler/rust/negative/version-overflow.json b/compiler/rust/negative/version-overflow.json index 73f65fcaa..047ed8274 100644 --- a/compiler/rust/negative/version-overflow.json +++ b/compiler/rust/negative/version-overflow.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"sum_to_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"kind":"prim","operands":[{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"succ"},"type":{"kind":"nat"}},{"function":0,"kind":"call","operands":[{"kind":"var","name":1}]}],"operation":{"kind":"nat_add"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"99999999999999999999.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"sum_to_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"kind":"prim","operands":[{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"succ"},"type":{"kind":"nat"}},{"function":0,"kind":"call","operands":[{"kind":"var","name":1}]}],"operation":{"kind":"nat_add"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"99999999999999999999.0.0"} diff --git a/compiler/rust/rust-core/boolean-shapes/package.json b/compiler/rust/rust-core/boolean-shapes/package.json index 7e80893bb..1003ab1b7 100644 --- a/compiler/rust/rust-core/boolean-shapes/package.json +++ b/compiler/rust/rust-core/boolean-shapes/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"boolean_shapes_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"true"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"false"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"true"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"false"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"bool"}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"zero"}},{"binders":[4],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}},{"kind":"build","operands":[{"condition":{"condition":{"kind":"var","name":0},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"var","name":1}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}},{"kind":"build","operands":[{"condition":{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}}},{"kind":"build","operands":[{"condition":{"kind":"var","name":0},"else_branch":{"condition":{"kind":"var","name":1},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"7"}},"shape":{"kind":"zero"}},{"binders":[5],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"7"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"nat"}},{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"8"}},"shape":{"kind":"true"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"8"}},"shape":{"kind":"false"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"nat"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}}},"types":[{"kind":"bool"},{"kind":"bool"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"boolean_shapes_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"true"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"false"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"true"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"false"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"bool"}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"zero"}},{"binders":[4],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}},{"kind":"build","operands":[{"condition":{"condition":{"kind":"var","name":0},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"var","name":1}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}},{"kind":"build","operands":[{"condition":{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}}},{"kind":"build","operands":[{"condition":{"kind":"var","name":0},"else_branch":{"condition":{"kind":"var","name":1},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"7"}},"shape":{"kind":"zero"}},{"binders":[5],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"7"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"nat"}},{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"8"}},"shape":{"kind":"true"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"8"}},"shape":{"kind":"false"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"nat"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}}},"types":[{"kind":"bool"},{"kind":"bool"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/boolean-shapes/provenance.json b/compiler/rust/rust-core/boolean-shapes/provenance.json index b6d3ba1fd..d8d128a8d 100644 --- a/compiler/rust/rust-core/boolean-shapes/provenance.json +++ b/compiler/rust/rust-core/boolean-shapes/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"270742331c4b51375f678f97518fef1740d1842a36da8c59f5d3fea16ed91ff2","src/lib.rs":"65e63587931891835448f453c9452a33b30003641aa1f8fc341fdb2102aba0a1"},"name":"boolean_shapes_core","profile":"rust-core","program":"08c54665d09d55ac525712aaf1c9be1ab4a4335c07dcc89b2bc107f4e151e2c9","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"270742331c4b51375f678f97518fef1740d1842a36da8c59f5d3fea16ed91ff2","src/lib.rs":"65e63587931891835448f453c9452a33b30003641aa1f8fc341fdb2102aba0a1"},"name":"boolean_shapes_core","profile":"rust-core","program":"08c54665d09d55ac525712aaf1c9be1ab4a4335c07dcc89b2bc107f4e151e2c9","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/closure-captures/package.json b/compiler/rust/rust-core/closure-captures/package.json index 777c3b8df..450f54a7f 100644 --- a/compiler/rust/rust-core/closure-captures/package.json +++ b/compiler/rust/rust-core/closure-captures/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own","own"]}],"name":"closure_captures_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"captures":[{"kind":"var","name":0},{"kind":"var","name":1}],"function":2,"kind":"closure"},{"kind":"var","name":2}]},"parameters":[0,1,2],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]},{"body":{"kind":"apply","operands":[{"kind":"apply","operands":[{"kind":"var","name":1}],"target":{"kind":"var","name":0}}],"target":{"kind":"var","name":0}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":0}],"operation":{"kind":"nat_mul"}},{"kind":"var","name":1}],"operation":{"kind":"nat_sub"}},"parameters":[0,1,2],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own","own"]}],"name":"closure_captures_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"captures":[{"kind":"var","name":0},{"kind":"var","name":1}],"function":2,"kind":"closure"},{"kind":"var","name":2}]},"parameters":[0,1,2],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]},{"body":{"kind":"apply","operands":[{"kind":"apply","operands":[{"kind":"var","name":1}],"target":{"kind":"var","name":0}}],"target":{"kind":"var","name":0}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":0}],"operation":{"kind":"nat_mul"}},{"kind":"var","name":1}],"operation":{"kind":"nat_sub"}},"parameters":[0,1,2],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/closure-captures/provenance.json b/compiler/rust/rust-core/closure-captures/provenance.json index c312e85e8..887aa7c89 100644 --- a/compiler/rust/rust-core/closure-captures/provenance.json +++ b/compiler/rust/rust-core/closure-captures/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"513f6df0a5c7e40a18b97e58427e056e0ceece99bbb616056ee599ebc220a9bf","src/lib.rs":"18cfe1a5740827e7c2ddd1af708b09451d92a158072840a063fe08a4f26ee32f"},"name":"closure_captures_core","profile":"rust-core","program":"e2d52d5414c5f9639f8e127b054cd3820f186da100f2dd2c1b707805abba379f","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"513f6df0a5c7e40a18b97e58427e056e0ceece99bbb616056ee599ebc220a9bf","src/lib.rs":"18cfe1a5740827e7c2ddd1af708b09451d92a158072840a063fe08a4f26ee32f"},"name":"closure_captures_core","profile":"rust-core","program":"e2d52d5414c5f9639f8e127b054cd3820f186da100f2dd2c1b707805abba379f","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/closure-inline/package.json b/compiler/rust/rust-core/closure-inline/package.json index de32c6f5e..8d77c1ad8 100644 --- a/compiler/rust/rust-core/closure-inline/package.json +++ b/compiler/rust/rust-core/closure-inline/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"closure_inline_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"apply","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"100"}}],"target":{"captures":[{"kind":"var","name":0},{"kind":"var","name":1}],"function":1,"kind":"closure"}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":0}],"operation":{"kind":"nat_mul"}},{"kind":"var","name":1}],"operation":{"kind":"nat_sub"}},"parameters":[0,1,2],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"closure_inline_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"apply","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"100"}}],"target":{"captures":[{"kind":"var","name":0},{"kind":"var","name":1}],"function":1,"kind":"closure"}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":0}],"operation":{"kind":"nat_mul"}},{"kind":"var","name":1}],"operation":{"kind":"nat_sub"}},"parameters":[0,1,2],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/closure-inline/provenance.json b/compiler/rust/rust-core/closure-inline/provenance.json index be90a19ca..c6879afd3 100644 --- a/compiler/rust/rust-core/closure-inline/provenance.json +++ b/compiler/rust/rust-core/closure-inline/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"335aa4c0de5f90930e2c19c8a9fea191702847d951ad7e2ee90795a416482576","src/lib.rs":"42788e5240eb4ac7026621a0ef10a381221e18e2a25e449814e4532ba2b0e4bd"},"name":"closure_inline_core","profile":"rust-core","program":"cce3e8632d8c7b42f7961f9a6c0f734f50ea0eab68ab6e496f16558de67003ce","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"335aa4c0de5f90930e2c19c8a9fea191702847d951ad7e2ee90795a416482576","src/lib.rs":"42788e5240eb4ac7026621a0ef10a381221e18e2a25e449814e4532ba2b0e4bd"},"name":"closure_inline_core","profile":"rust-core","program":"cce3e8632d8c7b42f7961f9a6c0f734f50ea0eab68ab6e496f16558de67003ce","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/closure-uninhabited/package.json b/compiler/rust/rust-core/closure-uninhabited/package.json index 768852566..b769817f5 100644 --- a/compiler/rust/rust-core/closure-uninhabited/package.json +++ b/compiler/rust/rust-core/closure-uninhabited/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own"]}],"name":"closure_uninhabited_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"function":2,"kind":"call","operands":[{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"nat"}}}},{"kind":"var","name":0}]},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]},{"body":{"kind":"apply","operands":[{"kind":"var","name":1}],"target":{"kind":"var","name":0}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"none"}},{"binders":[2],"body":{"kind":"apply","operands":[{"kind":"var","name":1}],"target":{"kind":"var","name":2}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"option","value":{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"nat"}}},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own"]}],"name":"closure_uninhabited_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"function":2,"kind":"call","operands":[{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"nat"}}}},{"kind":"var","name":0}]},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]},{"body":{"kind":"apply","operands":[{"kind":"var","name":1}],"target":{"kind":"var","name":0}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"none"}},{"binders":[2],"body":{"kind":"apply","operands":[{"kind":"var","name":1}],"target":{"kind":"var","name":2}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"option","value":{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"nat"}}},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/closure-uninhabited/provenance.json b/compiler/rust/rust-core/closure-uninhabited/provenance.json index d10c9f47a..338e2fdd3 100644 --- a/compiler/rust/rust-core/closure-uninhabited/provenance.json +++ b/compiler/rust/rust-core/closure-uninhabited/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"028327704b4d2dc090da323b38046c4165b5f1a96c1fd53f9be114292c6c29a5","src/lib.rs":"cc89f8dec9d4c8de63b66e7895279423fe44c964a56d26681813898faec4a14b"},"name":"closure_uninhabited_core","profile":"rust-core","program":"057be489c5323c3dc11411532fd63e39ec3436d200fc45dfd8e385bec6106b04","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"028327704b4d2dc090da323b38046c4165b5f1a96c1fd53f9be114292c6c29a5","src/lib.rs":"cc89f8dec9d4c8de63b66e7895279423fe44c964a56d26681813898faec4a14b"},"name":"closure_uninhabited_core","profile":"rust-core","program":"057be489c5323c3dc11411532fd63e39ec3436d200fc45dfd8e385bec6106b04","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/convert/package.json b/compiler/rust/rust-core/convert/package.json index d81e6c951..4b5d79ca9 100644 --- a/compiler/rust/rust-core/convert/package.json +++ b/compiler/rust/rust-core/convert/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":[]}],"name":"convert_core","profile":"rust-core","program":{"adts":[{"constructors":[[{"kind":"option","value":{"kind":"fixed","width":"u8"}},{"kind":"option","value":{"kind":"fixed","width":"u16"}},{"kind":"option","value":{"kind":"fixed","width":"u32"}},{"kind":"option","value":{"kind":"fixed","width":"u64"}},{"kind":"option","value":{"kind":"fixed","width":"i8"}},{"kind":"option","value":{"kind":"fixed","width":"i16"}},{"kind":"option","value":{"kind":"fixed","width":"i32"}},{"kind":"option","value":{"kind":"fixed","width":"i64"}}]]}],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"300"}}],"operation":{"kind":"convert","target":"u8"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"65535"}}],"operation":{"kind":"convert","target":"u16"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"-1"}}],"operation":{"kind":"convert","target":"u32"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"4294967295"}}],"operation":{"kind":"convert","target":"u64"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"128"}}],"operation":{"kind":"convert","target":"i8"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i64"},"value":{"kind":"i64","value":"-32768"}}],"operation":{"kind":"convert","target":"i16"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u64"},"value":{"kind":"u64","value":"18446744073709551615"}}],"operation":{"kind":"convert","target":"i32"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-9223372036854775808"}}],"operation":{"kind":"convert","target":"i64"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},"parameters":[],"result":{"index":0,"kind":"adt"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":[]}],"name":"convert_core","profile":"rust-core","program":{"adts":[{"constructors":[[{"kind":"option","value":{"kind":"fixed","width":"u8"}},{"kind":"option","value":{"kind":"fixed","width":"u16"}},{"kind":"option","value":{"kind":"fixed","width":"u32"}},{"kind":"option","value":{"kind":"fixed","width":"u64"}},{"kind":"option","value":{"kind":"fixed","width":"i8"}},{"kind":"option","value":{"kind":"fixed","width":"i16"}},{"kind":"option","value":{"kind":"fixed","width":"i32"}},{"kind":"option","value":{"kind":"fixed","width":"i64"}}]]}],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"300"}}],"operation":{"kind":"convert","target":"u8"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"65535"}}],"operation":{"kind":"convert","target":"u16"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"-1"}}],"operation":{"kind":"convert","target":"u32"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"4294967295"}}],"operation":{"kind":"convert","target":"u64"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"128"}}],"operation":{"kind":"convert","target":"i8"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i64"},"value":{"kind":"i64","value":"-32768"}}],"operation":{"kind":"convert","target":"i16"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u64"},"value":{"kind":"u64","value":"18446744073709551615"}}],"operation":{"kind":"convert","target":"i32"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-9223372036854775808"}}],"operation":{"kind":"convert","target":"i64"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},"parameters":[],"result":{"index":0,"kind":"adt"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/convert/provenance.json b/compiler/rust/rust-core/convert/provenance.json index bf2aa3bb1..fdd52b0c8 100644 --- a/compiler/rust/rust-core/convert/provenance.json +++ b/compiler/rust/rust-core/convert/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"eb5b8719a62544af24875ac26fc79a3ecac479e6ae96bba411b93c91d8be2115","src/lib.rs":"467414792ece513732505a93277d6770bcd85be30d5457ffdc72d3bfde288c5a"},"name":"convert_core","profile":"rust-core","program":"53f534696ea7212909ffcf637122ef370f71853fc0ce58655b91be97455279f5","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"eb5b8719a62544af24875ac26fc79a3ecac479e6ae96bba411b93c91d8be2115","src/lib.rs":"467414792ece513732505a93277d6770bcd85be30d5457ffdc72d3bfde288c5a"},"name":"convert_core","profile":"rust-core","program":"53f534696ea7212909ffcf637122ef370f71853fc0ce58655b91be97455279f5","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/fallible-condition-value/package.json b/compiler/rust/rust-core/fallible-condition-value/package.json index 3fbecff78..d40fc7978 100644 --- a/compiler/rust/rust-core/fallible-condition-value/package.json +++ b/compiler/rust/rust-core/fallible-condition-value/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"fallible_condition_value_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"condition":{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"5"}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"fallible_condition_value_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"condition":{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"5"}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/fallible-condition-value/provenance.json b/compiler/rust/rust-core/fallible-condition-value/provenance.json index 6217636dc..b5710243f 100644 --- a/compiler/rust/rust-core/fallible-condition-value/provenance.json +++ b/compiler/rust/rust-core/fallible-condition-value/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"1c786dda2900c26d0db6af21a1218b68ab82fcc35902da344bb9903a8b971c96","src/lib.rs":"bddb19e6192a93407de2d177726dd4012b6f70e6e92f42f1396c5d985f0092bb"},"name":"fallible_condition_value_core","profile":"rust-core","program":"1e4bbfc9aa1667d930aa5d3c7df5105e11161bde3842639d8fd684b9e7c9ab80","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"1c786dda2900c26d0db6af21a1218b68ab82fcc35902da344bb9903a8b971c96","src/lib.rs":"bddb19e6192a93407de2d177726dd4012b6f70e6e92f42f1396c5d985f0092bb"},"name":"fallible_condition_value_core","profile":"rust-core","program":"1e4bbfc9aa1667d930aa5d3c7df5105e11161bde3842639d8fd684b9e7c9ab80","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/fixed-width-i16/package.json b/compiler/rust/rust-core/fixed-width-i16/package.json index 78e7dfdb2..aed4c5a70 100644 --- a/compiler/rust/rust-core/fixed-width-i16/package.json +++ b/compiler/rust/rust-core/fixed-width-i16/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"fixed_width_i16_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"checked_neg"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_xor"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"bit_not"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2}],"operation":{"kind":"shift_right"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"16"}}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"300"}}],"operation":{"kind":"convert","target":"i16"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"equal"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"compare"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}},"types":[{"kind":"fixed","width":"i16"},{"kind":"fixed","width":"i16"},{"kind":"fixed","width":"u32"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"fixed_width_i16_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"checked_neg"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_xor"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"bit_not"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2}],"operation":{"kind":"shift_right"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"16"}}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"300"}}],"operation":{"kind":"convert","target":"i16"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"equal"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"compare"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}},"types":[{"kind":"fixed","width":"i16"},{"kind":"fixed","width":"i16"},{"kind":"fixed","width":"u32"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/fixed-width-i16/provenance.json b/compiler/rust/rust-core/fixed-width-i16/provenance.json index 19ba3c3a1..6e159f289 100644 --- a/compiler/rust/rust-core/fixed-width-i16/provenance.json +++ b/compiler/rust/rust-core/fixed-width-i16/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"853341a44b5be6732073d7787b210c4d0eea984965d76d8f9f75225017444c06","src/lib.rs":"7c2699d6b1bbced03ccb18536fa78c7ee2f01344c07d13742eaa100c48acfa14"},"name":"fixed_width_i16_core","profile":"rust-core","program":"23f1a6e3b665ccabf568dce2bcfd6ca2247170568ae24f097dc9f260f0d2369e","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"853341a44b5be6732073d7787b210c4d0eea984965d76d8f9f75225017444c06","src/lib.rs":"7c2699d6b1bbced03ccb18536fa78c7ee2f01344c07d13742eaa100c48acfa14"},"name":"fixed_width_i16_core","profile":"rust-core","program":"23f1a6e3b665ccabf568dce2bcfd6ca2247170568ae24f097dc9f260f0d2369e","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/fixed-width-i32/package.json b/compiler/rust/rust-core/fixed-width-i32/package.json index e360c30d0..0be74df1a 100644 --- a/compiler/rust/rust-core/fixed-width-i32/package.json +++ b/compiler/rust/rust-core/fixed-width-i32/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"fixed_width_i32_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"checked_neg"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_xor"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"bit_not"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2}],"operation":{"kind":"shift_right"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"32"}}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"300"}}],"operation":{"kind":"convert","target":"i32"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"equal"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"compare"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}},"types":[{"kind":"fixed","width":"i32"},{"kind":"fixed","width":"i32"},{"kind":"fixed","width":"u32"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"fixed_width_i32_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"checked_neg"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_xor"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"bit_not"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2}],"operation":{"kind":"shift_right"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"32"}}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"300"}}],"operation":{"kind":"convert","target":"i32"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"equal"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"compare"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}},"types":[{"kind":"fixed","width":"i32"},{"kind":"fixed","width":"i32"},{"kind":"fixed","width":"u32"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/fixed-width-i32/provenance.json b/compiler/rust/rust-core/fixed-width-i32/provenance.json index 74da52433..11efec56b 100644 --- a/compiler/rust/rust-core/fixed-width-i32/provenance.json +++ b/compiler/rust/rust-core/fixed-width-i32/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"d8447a870cb64afbda2e9b3a3da2c9ca3ed1e8795f70e7d67c0c9e74148f8df0","src/lib.rs":"49031024a1bb8be1243847a84d67804aa79ceecdf659cc6a8d9bdbe771be2468"},"name":"fixed_width_i32_core","profile":"rust-core","program":"a55c0f3839fd471d83e04fe51ad076da864407a9027bc8225331cb1e562880ee","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"d8447a870cb64afbda2e9b3a3da2c9ca3ed1e8795f70e7d67c0c9e74148f8df0","src/lib.rs":"49031024a1bb8be1243847a84d67804aa79ceecdf659cc6a8d9bdbe771be2468"},"name":"fixed_width_i32_core","profile":"rust-core","program":"a55c0f3839fd471d83e04fe51ad076da864407a9027bc8225331cb1e562880ee","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/fixed-width-i64/package.json b/compiler/rust/rust-core/fixed-width-i64/package.json index 08f1ea3c7..773de814c 100644 --- a/compiler/rust/rust-core/fixed-width-i64/package.json +++ b/compiler/rust/rust-core/fixed-width-i64/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"fixed_width_i64_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"checked_neg"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_xor"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"bit_not"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2}],"operation":{"kind":"shift_right"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"64"}}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"300"}}],"operation":{"kind":"convert","target":"i64"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"equal"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"compare"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}},"types":[{"kind":"fixed","width":"i64"},{"kind":"fixed","width":"i64"},{"kind":"fixed","width":"u32"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"fixed_width_i64_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"checked_neg"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_xor"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"bit_not"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2}],"operation":{"kind":"shift_right"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"64"}}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"300"}}],"operation":{"kind":"convert","target":"i64"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"equal"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"compare"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}},"types":[{"kind":"fixed","width":"i64"},{"kind":"fixed","width":"i64"},{"kind":"fixed","width":"u32"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/fixed-width-i64/provenance.json b/compiler/rust/rust-core/fixed-width-i64/provenance.json index 58d7641fe..0afe8bc15 100644 --- a/compiler/rust/rust-core/fixed-width-i64/provenance.json +++ b/compiler/rust/rust-core/fixed-width-i64/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"b5daf860b0116ece635b5ee6bec0ad90e970e77b3bb3f4cbe5a311fb1bacad1b","src/lib.rs":"f4f0aded7852cfc7562eb3935c39c1c9aa026e0432d874094bfda8276b76a4ae"},"name":"fixed_width_i64_core","profile":"rust-core","program":"bf6c9acc0c25eb22d8c1deb59574ad70d65f06123c556ed17e1b7c5bbc5aa902","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"b5daf860b0116ece635b5ee6bec0ad90e970e77b3bb3f4cbe5a311fb1bacad1b","src/lib.rs":"f4f0aded7852cfc7562eb3935c39c1c9aa026e0432d874094bfda8276b76a4ae"},"name":"fixed_width_i64_core","profile":"rust-core","program":"bf6c9acc0c25eb22d8c1deb59574ad70d65f06123c556ed17e1b7c5bbc5aa902","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/fixed-width-i8/package.json b/compiler/rust/rust-core/fixed-width-i8/package.json index 35200cd07..0e6b26165 100644 --- a/compiler/rust/rust-core/fixed-width-i8/package.json +++ b/compiler/rust/rust-core/fixed-width-i8/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"fixed_width_i8_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"checked_neg"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_xor"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"bit_not"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2}],"operation":{"kind":"shift_right"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"8"}}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"300"}}],"operation":{"kind":"convert","target":"i8"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"equal"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"compare"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}},"types":[{"kind":"fixed","width":"i8"},{"kind":"fixed","width":"i8"},{"kind":"fixed","width":"u32"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"fixed_width_i8_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"checked_neg"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_xor"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"bit_not"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2}],"operation":{"kind":"shift_right"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"8"}}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"300"}}],"operation":{"kind":"convert","target":"i8"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"equal"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"compare"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}},"types":[{"kind":"fixed","width":"i8"},{"kind":"fixed","width":"i8"},{"kind":"fixed","width":"u32"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/fixed-width-i8/provenance.json b/compiler/rust/rust-core/fixed-width-i8/provenance.json index 7b2c47f41..de002a5fa 100644 --- a/compiler/rust/rust-core/fixed-width-i8/provenance.json +++ b/compiler/rust/rust-core/fixed-width-i8/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"e3c91103a71f1b25c70eb55ae56707e4ba1d1d599e5646271c92ff84e40a4215","src/lib.rs":"ecf7bc047379c906cdf15240bdaf8989a82293c10e1bc119b64808179f2ca777"},"name":"fixed_width_i8_core","profile":"rust-core","program":"d57d16e24c0ae93fc46223897266514db7bf77781397039e12b9f8781e3b6631","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"e3c91103a71f1b25c70eb55ae56707e4ba1d1d599e5646271c92ff84e40a4215","src/lib.rs":"ecf7bc047379c906cdf15240bdaf8989a82293c10e1bc119b64808179f2ca777"},"name":"fixed_width_i8_core","profile":"rust-core","program":"d57d16e24c0ae93fc46223897266514db7bf77781397039e12b9f8781e3b6631","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/fixed-width-u16/package.json b/compiler/rust/rust-core/fixed-width-u16/package.json index a3e117523..3bb4c2a09 100644 --- a/compiler/rust/rust-core/fixed-width-u16/package.json +++ b/compiler/rust/rust-core/fixed-width-u16/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"fixed_width_u16_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_xor"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"bit_not"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2}],"operation":{"kind":"shift_right"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"16"}}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"300"}}],"operation":{"kind":"convert","target":"u16"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"equal"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"compare"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}},"types":[{"kind":"fixed","width":"u16"},{"kind":"fixed","width":"u16"},{"kind":"fixed","width":"u32"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"fixed_width_u16_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_xor"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"bit_not"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2}],"operation":{"kind":"shift_right"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"16"}}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"300"}}],"operation":{"kind":"convert","target":"u16"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"equal"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"compare"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}},"types":[{"kind":"fixed","width":"u16"},{"kind":"fixed","width":"u16"},{"kind":"fixed","width":"u32"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/fixed-width-u16/provenance.json b/compiler/rust/rust-core/fixed-width-u16/provenance.json index 433b68e2b..49a3517f2 100644 --- a/compiler/rust/rust-core/fixed-width-u16/provenance.json +++ b/compiler/rust/rust-core/fixed-width-u16/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"eb503bab98acf82cf1b106647d9825b61c675c364249f4b69bf9fbed22e53883","src/lib.rs":"83a09ad442b65134d7eff880560c2c445ee528c9c8a416494a9116934e4eebe8"},"name":"fixed_width_u16_core","profile":"rust-core","program":"9b805d1f67c7b7fa48388bf6b3921d64f311b660e5894d4c4ad299390f0ef380","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"eb503bab98acf82cf1b106647d9825b61c675c364249f4b69bf9fbed22e53883","src/lib.rs":"83a09ad442b65134d7eff880560c2c445ee528c9c8a416494a9116934e4eebe8"},"name":"fixed_width_u16_core","profile":"rust-core","program":"9b805d1f67c7b7fa48388bf6b3921d64f311b660e5894d4c4ad299390f0ef380","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/fixed-width-u32/package.json b/compiler/rust/rust-core/fixed-width-u32/package.json index 39c7b6b25..fd66f5f53 100644 --- a/compiler/rust/rust-core/fixed-width-u32/package.json +++ b/compiler/rust/rust-core/fixed-width-u32/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"fixed_width_u32_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_xor"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"bit_not"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2}],"operation":{"kind":"shift_right"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"32"}}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"300"}}],"operation":{"kind":"convert","target":"u32"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"equal"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"compare"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}},"types":[{"kind":"fixed","width":"u32"},{"kind":"fixed","width":"u32"},{"kind":"fixed","width":"u32"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"fixed_width_u32_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_xor"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"bit_not"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2}],"operation":{"kind":"shift_right"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"32"}}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"300"}}],"operation":{"kind":"convert","target":"u32"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"equal"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"compare"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}},"types":[{"kind":"fixed","width":"u32"},{"kind":"fixed","width":"u32"},{"kind":"fixed","width":"u32"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/fixed-width-u32/provenance.json b/compiler/rust/rust-core/fixed-width-u32/provenance.json index 4ac3c0df8..393041a7f 100644 --- a/compiler/rust/rust-core/fixed-width-u32/provenance.json +++ b/compiler/rust/rust-core/fixed-width-u32/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"3c62f6890f19778d954fad4331fb626c474b3d18b9fcd5ad76a5ff5789bce13b","src/lib.rs":"1a4b701574c9b97cdb95175a94c658da613a639e1732c6083f0fdf43c42d7035"},"name":"fixed_width_u32_core","profile":"rust-core","program":"b0d32e1ba47aad96742baed7ac5cc12f337d84e7d478c3d00ed0992be2861fe1","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"3c62f6890f19778d954fad4331fb626c474b3d18b9fcd5ad76a5ff5789bce13b","src/lib.rs":"1a4b701574c9b97cdb95175a94c658da613a639e1732c6083f0fdf43c42d7035"},"name":"fixed_width_u32_core","profile":"rust-core","program":"b0d32e1ba47aad96742baed7ac5cc12f337d84e7d478c3d00ed0992be2861fe1","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/fixed-width-u64/package.json b/compiler/rust/rust-core/fixed-width-u64/package.json index 75edf051c..df39c2db7 100644 --- a/compiler/rust/rust-core/fixed-width-u64/package.json +++ b/compiler/rust/rust-core/fixed-width-u64/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"fixed_width_u64_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_xor"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"bit_not"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2}],"operation":{"kind":"shift_right"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"64"}}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"300"}}],"operation":{"kind":"convert","target":"u64"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"equal"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"compare"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}},"types":[{"kind":"fixed","width":"u64"},{"kind":"fixed","width":"u64"},{"kind":"fixed","width":"u32"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"fixed_width_u64_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_xor"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"bit_not"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2}],"operation":{"kind":"shift_right"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"64"}}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"300"}}],"operation":{"kind":"convert","target":"u64"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"equal"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"compare"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}},"types":[{"kind":"fixed","width":"u64"},{"kind":"fixed","width":"u64"},{"kind":"fixed","width":"u32"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/fixed-width-u64/provenance.json b/compiler/rust/rust-core/fixed-width-u64/provenance.json index 4f7a4ffe8..d8f7854f9 100644 --- a/compiler/rust/rust-core/fixed-width-u64/provenance.json +++ b/compiler/rust/rust-core/fixed-width-u64/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"e409382597a6c5de3bfcab4092daee6af3ddb29c71f0cc12637e686505807e41","src/lib.rs":"2f3d0a88af320a1f613631fbf174d6c248b30e69840aa7c35094b7541e7c1251"},"name":"fixed_width_u64_core","profile":"rust-core","program":"d173c6c0813a7ca7f471cf3a55f2a25c4771bbeea58ca9cd42e5ee35e352fc43","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"e409382597a6c5de3bfcab4092daee6af3ddb29c71f0cc12637e686505807e41","src/lib.rs":"2f3d0a88af320a1f613631fbf174d6c248b30e69840aa7c35094b7541e7c1251"},"name":"fixed_width_u64_core","profile":"rust-core","program":"d173c6c0813a7ca7f471cf3a55f2a25c4771bbeea58ca9cd42e5ee35e352fc43","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/fixed-width-u8-passing/package.json b/compiler/rust/rust-core/fixed-width-u8-passing/package.json index 53688d8d6..f359830a3 100644 --- a/compiler/rust/rust-core/fixed-width-u8-passing/package.json +++ b/compiler/rust/rust-core/fixed-width-u8-passing/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["copy","borrow","own"]}],"name":"fixed_width_u8_passing_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_xor"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"bit_not"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2}],"operation":{"kind":"shift_right"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"8"}}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"300"}}],"operation":{"kind":"convert","target":"u8"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"equal"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"compare"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}},"types":[{"kind":"fixed","width":"u8"},{"kind":"fixed","width":"u8"},{"kind":"fixed","width":"u32"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["copy","borrow","own"]}],"name":"fixed_width_u8_passing_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_xor"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"bit_not"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2}],"operation":{"kind":"shift_right"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"8"}}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"300"}}],"operation":{"kind":"convert","target":"u8"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"equal"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"compare"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}},"types":[{"kind":"fixed","width":"u8"},{"kind":"fixed","width":"u8"},{"kind":"fixed","width":"u32"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/fixed-width-u8-passing/provenance.json b/compiler/rust/rust-core/fixed-width-u8-passing/provenance.json index 12055f6a0..575a3a8ef 100644 --- a/compiler/rust/rust-core/fixed-width-u8-passing/provenance.json +++ b/compiler/rust/rust-core/fixed-width-u8-passing/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"13014f6dfaeb8d3a6c42e7459d1355afbcd6654dadfbda1c9bd24b13598d1076","src/lib.rs":"415e38c5ed71b8443393ae8f6e32f1b7d9d1ec7b16465c9aa07b204493845847"},"name":"fixed_width_u8_passing_core","profile":"rust-core","program":"10a50859bd6fdf829c844b5c4758a464f5524865ef0b64f63cf0e9bb838c1d8d","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"13014f6dfaeb8d3a6c42e7459d1355afbcd6654dadfbda1c9bd24b13598d1076","src/lib.rs":"415e38c5ed71b8443393ae8f6e32f1b7d9d1ec7b16465c9aa07b204493845847"},"name":"fixed_width_u8_passing_core","profile":"rust-core","program":"10a50859bd6fdf829c844b5c4758a464f5524865ef0b64f63cf0e9bb838c1d8d","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/fixed-width-u8/package.json b/compiler/rust/rust-core/fixed-width-u8/package.json index 4d3cf4797..14e4ad57d 100644 --- a/compiler/rust/rust-core/fixed-width-u8/package.json +++ b/compiler/rust/rust-core/fixed-width-u8/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"fixed_width_u8_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_xor"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"bit_not"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2}],"operation":{"kind":"shift_right"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"8"}}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"300"}}],"operation":{"kind":"convert","target":"u8"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"equal"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"compare"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}},"types":[{"kind":"fixed","width":"u8"},{"kind":"fixed","width":"u8"},{"kind":"fixed","width":"u32"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"fixed_width_u8_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_xor"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"bit_not"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2}],"operation":{"kind":"shift_right"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"8"}}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"300"}}],"operation":{"kind":"convert","target":"u8"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"equal"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"compare"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}},"types":[{"kind":"fixed","width":"u8"},{"kind":"fixed","width":"u8"},{"kind":"fixed","width":"u32"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/fixed-width-u8/provenance.json b/compiler/rust/rust-core/fixed-width-u8/provenance.json index fcc473bbc..1e0b53b03 100644 --- a/compiler/rust/rust-core/fixed-width-u8/provenance.json +++ b/compiler/rust/rust-core/fixed-width-u8/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"f6bd44702dee9317d3ccfb7cf717124b71b06ad65fbbd675d1efa63547106ec4","src/lib.rs":"b51f3227ad244f0c2abc01f6ed2613919f81b4488f247e489119151d7ae123ac"},"name":"fixed_width_u8_core","profile":"rust-core","program":"10a50859bd6fdf829c844b5c4758a464f5524865ef0b64f63cf0e9bb838c1d8d","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"f6bd44702dee9317d3ccfb7cf717124b71b06ad65fbbd675d1efa63547106ec4","src/lib.rs":"b51f3227ad244f0c2abc01f6ed2613919f81b4488f247e489119151d7ae123ac"},"name":"fixed_width_u8_core","profile":"rust-core","program":"10a50859bd6fdf829c844b5c4758a464f5524865ef0b64f63cf0e9bb838c1d8d","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/function-shapes/package.json b/compiler/rust/rust-core/function-shapes/package.json index a1977aa2f..2cc0849a6 100644 --- a/compiler/rust/rust-core/function-shapes/package.json +++ b/compiler/rust/rust-core/function-shapes/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":[]}],"name":"function_shapes_core","profile":"rust-core","program":{"adts":[{"constructors":[[{"kind":"nat"},{"kind":"nat"}]]}],"functions":[{"body":{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"value","type":{"kind":"option","value":{"kind":"nat"}},"value":{"kind":"some","value":{"kind":"nat","value":"3"}}}]},{"kind":"build","operands":[{"function":2,"kind":"call","operands":[{"kind":"value","type":{"kind":"option","value":{"kind":"nat"}},"value":{"kind":"some","value":{"kind":"nat","value":"4"}}}]},{"kind":"build","operands":[{"function":3,"kind":"call","operands":[{"kind":"value","type":{"error":{"kind":"bool"},"kind":"result","ok":{"kind":"nat"}},"value":{"kind":"ok","value":{"kind":"nat","value":"5"}}}]},{"kind":"build","operands":[{"function":4,"kind":"call","operands":[{"kind":"value","type":{"kind":"option","value":{"kind":"nat"}},"value":{"kind":"none"}}]},{"kind":"build","operands":[{"function":5,"kind":"call","operands":[{"kind":"value","type":{"kind":"option","value":{"kind":"nat"}},"value":{"kind":"some","value":{"kind":"nat","value":"6"}}}]},{"kind":"build","operands":[{"function":6,"kind":"call","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"9"}}]},{"kind":"build","operands":[{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"bool"},"value":{"kind":"bool","value":false}}]},{"kind":"build","operands":[{"function":8,"kind":"call","operands":[{"kind":"value","type":{"index":0,"kind":"adt"},"value":{"constructor":0,"fields":[{"kind":"nat","value":"1"},{"kind":"nat","value":"2"}],"kind":"adt"}}]},{"function":9,"kind":"call","operands":[{"kind":"value","type":{"kind":"option","value":{"kind":"nat"}},"value":{"kind":"some","value":{"kind":"nat","value":"1"}}}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}}}}}},"parameters":[],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}}}}},"types":[]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[1],"body":{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"option","value":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[1],"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_sub"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"option","value":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[1],"body":{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"ok"}},{"binders":[2],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"error"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"error":{"kind":"bool"},"kind":"result","ok":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"none"}},{"binders":[1],"body":{"kind":"var","name":1},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"option","value":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"7"}},"shape":{"kind":"none"}},{"binders":[1],"body":{"kind":"var","name":1},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"option","value":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"kind":"var","name":1},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]},{"body":{"condition":{"kind":"var","name":0},"else_branch":{"condition":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"200"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"200"}}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"bool"}]},{"body":{"index":0,"kind":"field","value":{"arms":[{"binders":[1,2],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"var","name":1}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},"shape":{"constructor":0,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"index":0,"kind":"adt"}}},"parameters":[0],"result":{"kind":"nat"},"types":[{"index":0,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"function":10,"kind":"call","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}]},"shape":{"kind":"none"}},{"binders":[1],"body":{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"unit"}},"parameters":[0],"result":{"kind":"unit"},"types":[{"kind":"option","value":{"kind":"nat"}}]},{"body":{"body":{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"kind":"let","name":1,"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"unit"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":[]}],"name":"function_shapes_core","profile":"rust-core","program":{"adts":[{"constructors":[[{"kind":"nat"},{"kind":"nat"}]]}],"functions":[{"body":{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"value","type":{"kind":"option","value":{"kind":"nat"}},"value":{"kind":"some","value":{"kind":"nat","value":"3"}}}]},{"kind":"build","operands":[{"function":2,"kind":"call","operands":[{"kind":"value","type":{"kind":"option","value":{"kind":"nat"}},"value":{"kind":"some","value":{"kind":"nat","value":"4"}}}]},{"kind":"build","operands":[{"function":3,"kind":"call","operands":[{"kind":"value","type":{"error":{"kind":"bool"},"kind":"result","ok":{"kind":"nat"}},"value":{"kind":"ok","value":{"kind":"nat","value":"5"}}}]},{"kind":"build","operands":[{"function":4,"kind":"call","operands":[{"kind":"value","type":{"kind":"option","value":{"kind":"nat"}},"value":{"kind":"none"}}]},{"kind":"build","operands":[{"function":5,"kind":"call","operands":[{"kind":"value","type":{"kind":"option","value":{"kind":"nat"}},"value":{"kind":"some","value":{"kind":"nat","value":"6"}}}]},{"kind":"build","operands":[{"function":6,"kind":"call","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"9"}}]},{"kind":"build","operands":[{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"bool"},"value":{"kind":"bool","value":false}}]},{"kind":"build","operands":[{"function":8,"kind":"call","operands":[{"kind":"value","type":{"index":0,"kind":"adt"},"value":{"constructor":0,"fields":[{"kind":"nat","value":"1"},{"kind":"nat","value":"2"}],"kind":"adt"}}]},{"function":9,"kind":"call","operands":[{"kind":"value","type":{"kind":"option","value":{"kind":"nat"}},"value":{"kind":"some","value":{"kind":"nat","value":"1"}}}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}}}}}},"parameters":[],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}}}}},"types":[]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[1],"body":{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"option","value":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[1],"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_sub"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"option","value":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[1],"body":{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"ok"}},{"binders":[2],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"error"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"error":{"kind":"bool"},"kind":"result","ok":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"none"}},{"binders":[1],"body":{"kind":"var","name":1},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"option","value":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"7"}},"shape":{"kind":"none"}},{"binders":[1],"body":{"kind":"var","name":1},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"option","value":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"kind":"var","name":1},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]},{"body":{"condition":{"kind":"var","name":0},"else_branch":{"condition":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"200"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"200"}}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"bool"}]},{"body":{"index":0,"kind":"field","value":{"arms":[{"binders":[1,2],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"var","name":1}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},"shape":{"constructor":0,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"index":0,"kind":"adt"}}},"parameters":[0],"result":{"kind":"nat"},"types":[{"index":0,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"function":10,"kind":"call","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}]},"shape":{"kind":"none"}},{"binders":[1],"body":{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"unit"}},"parameters":[0],"result":{"kind":"unit"},"types":[{"kind":"option","value":{"kind":"nat"}}]},{"body":{"body":{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"kind":"let","name":1,"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"unit"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/function-shapes/provenance.json b/compiler/rust/rust-core/function-shapes/provenance.json index 382bd536b..45f000afe 100644 --- a/compiler/rust/rust-core/function-shapes/provenance.json +++ b/compiler/rust/rust-core/function-shapes/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"a5df3bc62b7ea643165c769bdf602de0d1b45d0754cfeaa422f5147684987a03","src/lib.rs":"1cb7c08442da5f088b88a0935b30a29d0be5b248634b56cee80bfd7fecee7657"},"name":"function_shapes_core","profile":"rust-core","program":"5156d5b2edb83f9b58b89720da3005d24bde4f212a0a5f4d25175cc4ba0628e9","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"a5df3bc62b7ea643165c769bdf602de0d1b45d0754cfeaa422f5147684987a03","src/lib.rs":"1cb7c08442da5f088b88a0935b30a29d0be5b248634b56cee80bfd7fecee7657"},"name":"function_shapes_core","profile":"rust-core","program":"5156d5b2edb83f9b58b89720da3005d24bde4f212a0a5f4d25175cc4ba0628e9","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/int-overflow-mul/package.json b/compiler/rust/rust-core/int-overflow-mul/package.json index 9e8b5c7d5..bacfb6fa7 100644 --- a/compiler/rust/rust-core/int-overflow-mul/package.json +++ b/compiler/rust/rust-core/int-overflow-mul/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":[]}],"name":"int_overflow_mul_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"9223372036854775807"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"2"}}],"operation":{"kind":"int_mul"}},"parameters":[],"result":{"kind":"int"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":[]}],"name":"int_overflow_mul_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"9223372036854775807"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"2"}}],"operation":{"kind":"int_mul"}},"parameters":[],"result":{"kind":"int"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/int-overflow-mul/provenance.json b/compiler/rust/rust-core/int-overflow-mul/provenance.json index 6b68b4e91..88b66f6e0 100644 --- a/compiler/rust/rust-core/int-overflow-mul/provenance.json +++ b/compiler/rust/rust-core/int-overflow-mul/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"b186404ff099a80943ab16842d0b48cce272545c968c9d500b3b6d04d814d7f1","src/lib.rs":"6eb68f996c3bee3391f9c6853d5d9d731a8340b04bec5ed557ac5349e627d3d3"},"name":"int_overflow_mul_core","profile":"rust-core","program":"1b65e9c0d0ec40bd0d8f70b9b32771560c2418a33777717ce781aca86a2ec51c","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"b186404ff099a80943ab16842d0b48cce272545c968c9d500b3b6d04d814d7f1","src/lib.rs":"6eb68f996c3bee3391f9c6853d5d9d731a8340b04bec5ed557ac5349e627d3d3"},"name":"int_overflow_mul_core","profile":"rust-core","program":"1b65e9c0d0ec40bd0d8f70b9b32771560c2418a33777717ce781aca86a2ec51c","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/int-overflow-neg/package.json b/compiler/rust/rust-core/int-overflow-neg/package.json index d72ff339d..e9ff7969e 100644 --- a/compiler/rust/rust-core/int-overflow-neg/package.json +++ b/compiler/rust/rust-core/int-overflow-neg/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":[]}],"name":"int_overflow_neg_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-9223372036854775808"}}],"operation":{"kind":"int_neg"}},"parameters":[],"result":{"kind":"int"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":[]}],"name":"int_overflow_neg_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-9223372036854775808"}}],"operation":{"kind":"int_neg"}},"parameters":[],"result":{"kind":"int"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/int-overflow-neg/provenance.json b/compiler/rust/rust-core/int-overflow-neg/provenance.json index 2055e8b27..ced12c58d 100644 --- a/compiler/rust/rust-core/int-overflow-neg/provenance.json +++ b/compiler/rust/rust-core/int-overflow-neg/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"06eb467e24999ffa41032bb2e1a0ec4fb5227046b7ffa2d653588f8364063e40","src/lib.rs":"6f6bd459f918babde88a365059212e78f45cabb564f1ae82ea2f08e780cda071"},"name":"int_overflow_neg_core","profile":"rust-core","program":"d9fbf0bb602a1238f9d26866ce0b3b6c6b2aaeef713f2a3912ee3377f9a21523","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"06eb467e24999ffa41032bb2e1a0ec4fb5227046b7ffa2d653588f8364063e40","src/lib.rs":"6f6bd459f918babde88a365059212e78f45cabb564f1ae82ea2f08e780cda071"},"name":"int_overflow_neg_core","profile":"rust-core","program":"d9fbf0bb602a1238f9d26866ce0b3b6c6b2aaeef713f2a3912ee3377f9a21523","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/int-overflow-quot/package.json b/compiler/rust/rust-core/int-overflow-quot/package.json index 3950f791d..c4648832a 100644 --- a/compiler/rust/rust-core/int-overflow-quot/package.json +++ b/compiler/rust/rust-core/int-overflow-quot/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":[]}],"name":"int_overflow_quot_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-9223372036854775808"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-1"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"0"}}],"operation":{"kind":"int_quot"}},"parameters":[],"result":{"kind":"int"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":[]}],"name":"int_overflow_quot_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-9223372036854775808"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-1"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"0"}}],"operation":{"kind":"int_quot"}},"parameters":[],"result":{"kind":"int"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/int-overflow-quot/provenance.json b/compiler/rust/rust-core/int-overflow-quot/provenance.json index 1a68e7c01..9ba39a5e9 100644 --- a/compiler/rust/rust-core/int-overflow-quot/provenance.json +++ b/compiler/rust/rust-core/int-overflow-quot/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"cc2fd98230e16a642ea442c302a3aba183de07236da19c4f4045aecc3d6d2a2f","src/lib.rs":"3b6ab9170264c1df1789a7ceb31c0a9e212514e37416e7caf72b28cf1c1b0402"},"name":"int_overflow_quot_core","profile":"rust-core","program":"1692b3adcca40a04933f6aebc3fea8b84cdd602624476a65e9ba90b04f7b7380","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"cc2fd98230e16a642ea442c302a3aba183de07236da19c4f4045aecc3d6d2a2f","src/lib.rs":"3b6ab9170264c1df1789a7ceb31c0a9e212514e37416e7caf72b28cf1c1b0402"},"name":"int_overflow_quot_core","profile":"rust-core","program":"1692b3adcca40a04933f6aebc3fea8b84cdd602624476a65e9ba90b04f7b7380","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/int-overflow-sub/package.json b/compiler/rust/rust-core/int-overflow-sub/package.json index 814156c6e..e60de7069 100644 --- a/compiler/rust/rust-core/int-overflow-sub/package.json +++ b/compiler/rust/rust-core/int-overflow-sub/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":[]}],"name":"int_overflow_sub_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-9223372036854775808"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"1"}}],"operation":{"kind":"int_sub"}},"parameters":[],"result":{"kind":"int"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":[]}],"name":"int_overflow_sub_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-9223372036854775808"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"1"}}],"operation":{"kind":"int_sub"}},"parameters":[],"result":{"kind":"int"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/int-overflow-sub/provenance.json b/compiler/rust/rust-core/int-overflow-sub/provenance.json index 030fd0e41..c87cc8b18 100644 --- a/compiler/rust/rust-core/int-overflow-sub/provenance.json +++ b/compiler/rust/rust-core/int-overflow-sub/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"897f2fabd3135e24874deb13b076a30dbf0ea55b4b4b976993b7bda85ef5c9d8","src/lib.rs":"aec63756973ebcef39a39f855d2e4b83ee7089d8ac003c7920796ece08b84840"},"name":"int_overflow_sub_core","profile":"rust-core","program":"1e4e6f4192ceb578c2a360bce823d1c1aa01db87a593efa4ac989ee1d3dbb168","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"897f2fabd3135e24874deb13b076a30dbf0ea55b4b4b976993b7bda85ef5c9d8","src/lib.rs":"aec63756973ebcef39a39f855d2e4b83ee7089d8ac003c7920796ece08b84840"},"name":"int_overflow_sub_core","profile":"rust-core","program":"1e4e6f4192ceb578c2a360bce823d1c1aa01db87a593efa4ac989ee1d3dbb168","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/iterate-until-bounded/package.json b/compiler/rust/rust-core/iterate-until-bounded/package.json index 7da9f3352..e21e4a854 100644 --- a/compiler/rust/rust-core/iterate-until-bounded/package.json +++ b/compiler/rust/rust-core/iterate-until-bounded/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"iterate_until_bounded_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"function":2,"kind":"call","operands":[{"captures":[],"function":1,"kind":"closure"},{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}]},"parameters":[0],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"types":[{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"option","value":{"kind":"nat"}}},{"kind":"nat"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"iterate_until_bounded_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"function":2,"kind":"call","operands":[{"captures":[],"function":1,"kind":"closure"},{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}]},"parameters":[0],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"types":[{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"option","value":{"kind":"nat"}}},{"kind":"nat"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/iterate-until-bounded/provenance.json b/compiler/rust/rust-core/iterate-until-bounded/provenance.json index f187d4ef8..a084bbeed 100644 --- a/compiler/rust/rust-core/iterate-until-bounded/provenance.json +++ b/compiler/rust/rust-core/iterate-until-bounded/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"49fbedaa9a76664357097acae248b8fb8152f77f957504442834cbbebe5ad9ed","src/lib.rs":"f39ef7cb1aa9a59c63ccb6c872c7c76b0a896ad4bae77fca0b093a79d338f1c9"},"name":"iterate_until_bounded_core","profile":"rust-core","program":"933ed0017ae24e1b179af5f2624474a367dab0414bfc90db4f456ec1f3f54e8a","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"49fbedaa9a76664357097acae248b8fb8152f77f957504442834cbbebe5ad9ed","src/lib.rs":"f39ef7cb1aa9a59c63ccb6c872c7c76b0a896ad4bae77fca0b093a79d338f1c9"},"name":"iterate_until_bounded_core","profile":"rust-core","program":"933ed0017ae24e1b179af5f2624474a367dab0414bfc90db4f456ec1f3f54e8a","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/iterate-until/package.json b/compiler/rust/rust-core/iterate-until/package.json index e180621f3..cdea69ca1 100644 --- a/compiler/rust/rust-core/iterate-until/package.json +++ b/compiler/rust/rust-core/iterate-until/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"iterate_until_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"function":2,"kind":"call","operands":[{"captures":[],"function":1,"kind":"closure"},{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}]},"parameters":[0],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"types":[{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"option","value":{"kind":"nat"}}},{"kind":"nat"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"iterate_until_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"function":2,"kind":"call","operands":[{"captures":[],"function":1,"kind":"closure"},{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}]},"parameters":[0],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"types":[{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"option","value":{"kind":"nat"}}},{"kind":"nat"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/iterate-until/provenance.json b/compiler/rust/rust-core/iterate-until/provenance.json index 37728a45d..bc9c61b7e 100644 --- a/compiler/rust/rust-core/iterate-until/provenance.json +++ b/compiler/rust/rust-core/iterate-until/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"64ceeab6ac02bc1f724bf26634dddc9f6c506b9867ea9b24ca85874598d484f1","src/lib.rs":"f39ef7cb1aa9a59c63ccb6c872c7c76b0a896ad4bae77fca0b093a79d338f1c9"},"name":"iterate_until_core","profile":"rust-core","program":"933ed0017ae24e1b179af5f2624474a367dab0414bfc90db4f456ec1f3f54e8a","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"64ceeab6ac02bc1f724bf26634dddc9f6c506b9867ea9b24ca85874598d484f1","src/lib.rs":"f39ef7cb1aa9a59c63ccb6c872c7c76b0a896ad4bae77fca0b093a79d338f1c9"},"name":"iterate_until_core","profile":"rust-core","program":"933ed0017ae24e1b179af5f2624474a367dab0414bfc90db4f456ec1f3f54e8a","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/iterate/package.json b/compiler/rust/rust-core/iterate/package.json index b19dd1b0c..252d7fc1d 100644 --- a/compiler/rust/rust-core/iterate/package.json +++ b/compiler/rust/rust-core/iterate/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"iterate_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"function":2,"kind":"call","operands":[{"captures":[],"function":1,"kind":"closure"},{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}]},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_add"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":2},"shape":{"kind":"zero"}},{"binders":[3],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}}]},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"nat"}},"parameters":[0,1,2],"result":{"kind":"nat"},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"nat"}},{"kind":"nat"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"iterate_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"function":2,"kind":"call","operands":[{"captures":[],"function":1,"kind":"closure"},{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}]},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_add"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":2},"shape":{"kind":"zero"}},{"binders":[3],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}}]},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"nat"}},"parameters":[0,1,2],"result":{"kind":"nat"},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"nat"}},{"kind":"nat"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/iterate/provenance.json b/compiler/rust/rust-core/iterate/provenance.json index 8802e1119..84006efa9 100644 --- a/compiler/rust/rust-core/iterate/provenance.json +++ b/compiler/rust/rust-core/iterate/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"bda30a7b9b61728abe20e4b25ce515e6af98829be9f26ebe4f34cbacc74fd303","src/lib.rs":"8e4a74c1282321b2686519e64b14dbc04fe1fe07bb29743bee99edd5a561788d"},"name":"iterate_core","profile":"rust-core","program":"93495cb93bd9292be524f0e8414d7b827b60f812c842ab717fef46322758cf60","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"bda30a7b9b61728abe20e4b25ce515e6af98829be9f26ebe4f34cbacc74fd303","src/lib.rs":"8e4a74c1282321b2686519e64b14dbc04fe1fe07bb29743bee99edd5a561788d"},"name":"iterate_core","profile":"rust-core","program":"93495cb93bd9292be524f0e8414d7b827b60f812c842ab717fef46322758cf60","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/match-shapes/package.json b/compiler/rust/rust-core/match-shapes/package.json index 27f0dc289..0f5e4cc7c 100644 --- a/compiler/rust/rust-core/match-shapes/package.json +++ b/compiler/rust/rust-core/match-shapes/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own","own","own"]}],"name":"match_shapes_core","profile":"rust-core","program":{"adts":[{"constructors":[[{"kind":"nat"}],[{"kind":"bool"}]]}],"functions":[{"body":{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[5],"body":{"kind":"build","operands":[{"kind":"var","name":5}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"kind":"nat"}}},{"kind":"build","operands":[{"arms":[{"binders":[6],"body":{"kind":"build","operands":[{"kind":"var","name":6}],"shape":{"kind":"ok"},"type":{"error":{"kind":"bool"},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"ok"}},{"binders":[7],"body":{"kind":"build","operands":[{"kind":"var","name":7}],"shape":{"kind":"error"},"type":{"error":{"kind":"bool"},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"error"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"error":{"kind":"bool"},"kind":"result","ok":{"kind":"nat"}}},{"kind":"build","operands":[{"arms":[{"binders":[8],"body":{"kind":"build","operands":[{"kind":"var","name":8}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},"shape":{"constructor":0,"kind":"adt"}},{"binders":[9],"body":{"kind":"build","operands":[{"kind":"var","name":9}],"shape":{"constructor":1,"kind":"adt"},"type":{"index":0,"kind":"adt"}},"shape":{"constructor":1,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"index":0,"kind":"adt"}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"lt"},"type":{"kind":"ordering"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"eq"},"type":{"kind":"ordering"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"gt"},"type":{"kind":"ordering"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"var","name":4}],"operation":{"kind":"compare"}},"type":{"kind":"ordering"}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[10],"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":10},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_sub"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"kind":"nat"}}},{"kind":"build","operands":[{"arms":[{"binders":[11],"body":{"kind":"build","operands":[{"kind":"var","name":11}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"ok"}},{"binders":[12],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"error"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"kind":"nat"}}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"5"}},"shape":{"kind":"none"}},{"binders":[13],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"5"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"ordering"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":0,"kind":"adt"},"right":{"kind":"pair","left":{"kind":"ordering"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"error":{"kind":"bool"},"kind":"result","ok":{"kind":"nat"}},"right":{"kind":"pair","left":{"index":0,"kind":"adt"},"right":{"kind":"pair","left":{"kind":"ordering"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"error":{"kind":"bool"},"kind":"result","ok":{"kind":"nat"}},"right":{"kind":"pair","left":{"index":0,"kind":"adt"},"right":{"kind":"pair","left":{"kind":"ordering"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}}}}},"parameters":[0,1,2,3,4],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"error":{"kind":"bool"},"kind":"result","ok":{"kind":"nat"}},"right":{"kind":"pair","left":{"index":0,"kind":"adt"},"right":{"kind":"pair","left":{"kind":"ordering"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}}}},"types":[{"kind":"option","value":{"kind":"nat"}},{"error":{"kind":"bool"},"kind":"result","ok":{"kind":"nat"}},{"index":0,"kind":"adt"},{"kind":"nat"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}},"shape":{"kind":"none"}},{"binders":[1],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":1}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"unit"}},"parameters":[0],"result":{"kind":"unit"},"types":[{"kind":"option","value":{"kind":"nat"}}]},{"body":{"body":{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"kind":"let","name":1,"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"unit"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own","own","own"]}],"name":"match_shapes_core","profile":"rust-core","program":{"adts":[{"constructors":[[{"kind":"nat"}],[{"kind":"bool"}]]}],"functions":[{"body":{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[5],"body":{"kind":"build","operands":[{"kind":"var","name":5}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"kind":"nat"}}},{"kind":"build","operands":[{"arms":[{"binders":[6],"body":{"kind":"build","operands":[{"kind":"var","name":6}],"shape":{"kind":"ok"},"type":{"error":{"kind":"bool"},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"ok"}},{"binders":[7],"body":{"kind":"build","operands":[{"kind":"var","name":7}],"shape":{"kind":"error"},"type":{"error":{"kind":"bool"},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"error"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"error":{"kind":"bool"},"kind":"result","ok":{"kind":"nat"}}},{"kind":"build","operands":[{"arms":[{"binders":[8],"body":{"kind":"build","operands":[{"kind":"var","name":8}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},"shape":{"constructor":0,"kind":"adt"}},{"binders":[9],"body":{"kind":"build","operands":[{"kind":"var","name":9}],"shape":{"constructor":1,"kind":"adt"},"type":{"index":0,"kind":"adt"}},"shape":{"constructor":1,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"index":0,"kind":"adt"}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"lt"},"type":{"kind":"ordering"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"eq"},"type":{"kind":"ordering"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"gt"},"type":{"kind":"ordering"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"var","name":4}],"operation":{"kind":"compare"}},"type":{"kind":"ordering"}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[10],"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":10},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_sub"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"kind":"nat"}}},{"kind":"build","operands":[{"arms":[{"binders":[11],"body":{"kind":"build","operands":[{"kind":"var","name":11}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"ok"}},{"binders":[12],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"error"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"kind":"nat"}}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"5"}},"shape":{"kind":"none"}},{"binders":[13],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"5"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"ordering"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":0,"kind":"adt"},"right":{"kind":"pair","left":{"kind":"ordering"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"error":{"kind":"bool"},"kind":"result","ok":{"kind":"nat"}},"right":{"kind":"pair","left":{"index":0,"kind":"adt"},"right":{"kind":"pair","left":{"kind":"ordering"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"error":{"kind":"bool"},"kind":"result","ok":{"kind":"nat"}},"right":{"kind":"pair","left":{"index":0,"kind":"adt"},"right":{"kind":"pair","left":{"kind":"ordering"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}}}}},"parameters":[0,1,2,3,4],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"error":{"kind":"bool"},"kind":"result","ok":{"kind":"nat"}},"right":{"kind":"pair","left":{"index":0,"kind":"adt"},"right":{"kind":"pair","left":{"kind":"ordering"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}}}},"types":[{"kind":"option","value":{"kind":"nat"}},{"error":{"kind":"bool"},"kind":"result","ok":{"kind":"nat"}},{"index":0,"kind":"adt"},{"kind":"nat"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}},"shape":{"kind":"none"}},{"binders":[1],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":1}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"unit"}},"parameters":[0],"result":{"kind":"unit"},"types":[{"kind":"option","value":{"kind":"nat"}}]},{"body":{"body":{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"kind":"let","name":1,"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"unit"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/match-shapes/provenance.json b/compiler/rust/rust-core/match-shapes/provenance.json index 7f58f8ba3..e65397070 100644 --- a/compiler/rust/rust-core/match-shapes/provenance.json +++ b/compiler/rust/rust-core/match-shapes/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"6ada04666c2ad8f441c2b0cb866224b03f2fee5fae613a111dd24de4014734fe","src/lib.rs":"9f9fddc2169c8e9193f3f1fdd688dfd06097185e3e634cfbfa620a6f87ba2b9b"},"name":"match_shapes_core","profile":"rust-core","program":"9680443f3a937a999f89648157989a00a6143ddefdeb16329afe27891c3279a2","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"6ada04666c2ad8f441c2b0cb866224b03f2fee5fae613a111dd24de4014734fe","src/lib.rs":"9f9fddc2169c8e9193f3f1fdd688dfd06097185e3e634cfbfa620a6f87ba2b9b"},"name":"match_shapes_core","profile":"rust-core","program":"9680443f3a937a999f89648157989a00a6143ddefdeb16329afe27891c3279a2","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/nat-overflow-add/package.json b/compiler/rust/rust-core/nat-overflow-add/package.json index 9aede9ee6..8596b4e3d 100644 --- a/compiler/rust/rust-core/nat-overflow-add/package.json +++ b/compiler/rust/rust-core/nat-overflow-add/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":[]}],"name":"nat_overflow_add_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"18446744073709551615"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},"parameters":[],"result":{"kind":"nat"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":[]}],"name":"nat_overflow_add_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"18446744073709551615"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},"parameters":[],"result":{"kind":"nat"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/nat-overflow-add/provenance.json b/compiler/rust/rust-core/nat-overflow-add/provenance.json index 26cf9f62d..ab459fde7 100644 --- a/compiler/rust/rust-core/nat-overflow-add/provenance.json +++ b/compiler/rust/rust-core/nat-overflow-add/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"29d0ecc0775661ad2ef3400d30e5ddabdd011f32e3998989e1b5f92c86cbd3a8","src/lib.rs":"f757bef6232ef38b69895b5d7992f72334ae783bc94dd6b4d76bc726f5c59518"},"name":"nat_overflow_add_core","profile":"rust-core","program":"75136000ad8f2649db77d0237b973fea7740fa9fa28016b113d678a049dc353a","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"29d0ecc0775661ad2ef3400d30e5ddabdd011f32e3998989e1b5f92c86cbd3a8","src/lib.rs":"f757bef6232ef38b69895b5d7992f72334ae783bc94dd6b4d76bc726f5c59518"},"name":"nat_overflow_add_core","profile":"rust-core","program":"75136000ad8f2649db77d0237b973fea7740fa9fa28016b113d678a049dc353a","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/nat-overflow-mul/package.json b/compiler/rust/rust-core/nat-overflow-mul/package.json index ceb70d70b..4016c42ca 100644 --- a/compiler/rust/rust-core/nat-overflow-mul/package.json +++ b/compiler/rust/rust-core/nat-overflow-mul/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":[]}],"name":"nat_overflow_mul_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4294967296"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4294967296"}}],"operation":{"kind":"nat_mul"}},"parameters":[],"result":{"kind":"nat"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":[]}],"name":"nat_overflow_mul_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4294967296"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4294967296"}}],"operation":{"kind":"nat_mul"}},"parameters":[],"result":{"kind":"nat"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/nat-overflow-mul/provenance.json b/compiler/rust/rust-core/nat-overflow-mul/provenance.json index 31d4d0987..6c430b552 100644 --- a/compiler/rust/rust-core/nat-overflow-mul/provenance.json +++ b/compiler/rust/rust-core/nat-overflow-mul/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"b25ad6b1239397b4733e53cc70c9b298a21ee2913c5fa5c2a1fcd13201c933fc","src/lib.rs":"457fcf9b047f518bf2b059d3db569ffab629b48bd0f9cec384881780a351f43f"},"name":"nat_overflow_mul_core","profile":"rust-core","program":"39cd232f7cdf413f7c2ca48cb08a2ba12c63d0e4cad7e882987c21ac7b2ca535","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"b25ad6b1239397b4733e53cc70c9b298a21ee2913c5fa5c2a1fcd13201c933fc","src/lib.rs":"457fcf9b047f518bf2b059d3db569ffab629b48bd0f9cec384881780a351f43f"},"name":"nat_overflow_mul_core","profile":"rust-core","program":"39cd232f7cdf413f7c2ca48cb08a2ba12c63d0e4cad7e882987c21ac7b2ca535","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/nat-overflow-nested/package.json b/compiler/rust/rust-core/nat-overflow-nested/package.json index 72195d449..9f2286bab 100644 --- a/compiler/rust/rust-core/nat-overflow-nested/package.json +++ b/compiler/rust/rust-core/nat-overflow-nested/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":[]}],"name":"nat_overflow_nested_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"18446744073709551615"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_mul"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},"parameters":[],"result":{"kind":"nat"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":[]}],"name":"nat_overflow_nested_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"18446744073709551615"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_mul"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},"parameters":[],"result":{"kind":"nat"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/nat-overflow-nested/provenance.json b/compiler/rust/rust-core/nat-overflow-nested/provenance.json index 4ebe77957..7e2314d2b 100644 --- a/compiler/rust/rust-core/nat-overflow-nested/provenance.json +++ b/compiler/rust/rust-core/nat-overflow-nested/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"879fbc11c0e775e4c2e5f6c7a20f1a767350a14956e43e6e85b974dafee4066e","src/lib.rs":"dc91031bb8617ad6589ca423e0d2164f6e7ec94de5843bb4e93c8b898967913f"},"name":"nat_overflow_nested_core","profile":"rust-core","program":"ce3c27adceeaff5a870453e77162774541aaadbd6163b168d754ee39f964d7f9","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"879fbc11c0e775e4c2e5f6c7a20f1a767350a14956e43e6e85b974dafee4066e","src/lib.rs":"dc91031bb8617ad6589ca423e0d2164f6e7ec94de5843bb4e93c8b898967913f"},"name":"nat_overflow_nested_core","profile":"rust-core","program":"ce3c27adceeaff5a870453e77162774541aaadbd6163b168d754ee39f964d7f9","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/nat-overflow-succ/package.json b/compiler/rust/rust-core/nat-overflow-succ/package.json index 754c2f74c..1e834b7c5 100644 --- a/compiler/rust/rust-core/nat-overflow-succ/package.json +++ b/compiler/rust/rust-core/nat-overflow-succ/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":[]}],"name":"nat_overflow_succ_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"18446744073709551615"}}],"shape":{"kind":"succ"},"type":{"kind":"nat"}},"parameters":[],"result":{"kind":"nat"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":[]}],"name":"nat_overflow_succ_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"18446744073709551615"}}],"shape":{"kind":"succ"},"type":{"kind":"nat"}},"parameters":[],"result":{"kind":"nat"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/nat-overflow-succ/provenance.json b/compiler/rust/rust-core/nat-overflow-succ/provenance.json index 0a81b0850..ca311487b 100644 --- a/compiler/rust/rust-core/nat-overflow-succ/provenance.json +++ b/compiler/rust/rust-core/nat-overflow-succ/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"58be6b46c490679ed7dae3830f6928c2ec1fdc9eeee909b9ee3eee02dfd775d7","src/lib.rs":"8c0612e89cd12bd51bd74666e292dcf87e694b07a9648eba47c5c377647b3c5d"},"name":"nat_overflow_succ_core","profile":"rust-core","program":"71f5809a5001f094afc988a2e7a574309cd425857b135a51fbfeb799e80c9ee5","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"58be6b46c490679ed7dae3830f6928c2ec1fdc9eeee909b9ee3eee02dfd775d7","src/lib.rs":"8c0612e89cd12bd51bd74666e292dcf87e694b07a9648eba47c5c377647b3c5d"},"name":"nat_overflow_succ_core","profile":"rust-core","program":"71f5809a5001f094afc988a2e7a574309cd425857b135a51fbfeb799e80c9ee5","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/reasoning-gnaf-goal/package.json b/compiler/rust/rust-core/reasoning-gnaf-goal/package.json index 2931f6cb5..e3b3d30b9 100644 --- a/compiler/rust/rust-core/reasoning-gnaf-goal/package.json +++ b/compiler/rust/rust-core/reasoning-gnaf-goal/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own","own","own","own"]}],"name":"reasoning_gnaf_goal_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":1}]},{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":2}]},{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":3}]},{"function":1,"kind":"call","operands":[{"kind":"var","name":4}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}},"parameters":[0,1,2,3,4],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}},"types":[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"8"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"16"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"32"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"8"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"16"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"8"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own","own","own","own"]}],"name":"reasoning_gnaf_goal_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":1}]},{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":2}]},{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":3}]},{"function":1,"kind":"call","operands":[{"kind":"var","name":4}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}},"parameters":[0,1,2,3,4],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}},"types":[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"8"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"16"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"32"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"8"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"16"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"8"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/reasoning-gnaf-goal/provenance.json b/compiler/rust/rust-core/reasoning-gnaf-goal/provenance.json index c3f2ac1db..9e276930f 100644 --- a/compiler/rust/rust-core/reasoning-gnaf-goal/provenance.json +++ b/compiler/rust/rust-core/reasoning-gnaf-goal/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"7b54b24663375adbe2e204e2b858f03466ad76d876c5bf352d38b06577139c45","src/lib.rs":"9536fc681dbe92bb11d33af1586fc422d1d3d97255d48335f3125a7a2aa3e2d9"},"name":"reasoning_gnaf_goal_core","profile":"rust-core","program":"3f7539345858c86ded3ea323d38024b3deb6a45c6c7de84927959e23bbf92512","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"7b54b24663375adbe2e204e2b858f03466ad76d876c5bf352d38b06577139c45","src/lib.rs":"9536fc681dbe92bb11d33af1586fc422d1d3d97255d48335f3125a7a2aa3e2d9"},"name":"reasoning_gnaf_goal_core","profile":"rust-core","program":"3f7539345858c86ded3ea323d38024b3deb6a45c6c7de84927959e23bbf92512","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/reasoning-gnaf-priority/package.json b/compiler/rust/rust-core/reasoning-gnaf-priority/package.json index 90d599a90..0a7a6e195 100644 --- a/compiler/rust/rust-core/reasoning-gnaf-priority/package.json +++ b/compiler/rust/rust-core/reasoning-gnaf-priority/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own","own","own","own"]}],"name":"reasoning_gnaf_priority_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":1}]},{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":2}]},{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":3}]},{"function":1,"kind":"call","operands":[{"kind":"var","name":4}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}},"parameters":[0,1,2,3,4],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}},"types":[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"256"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_not"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"128"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"32"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"128"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_not"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"64"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"16"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"64"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_not"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"8"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"256"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"128"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"64"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}},"kind":"cond","then_branch":{"function":1,"kind":"call","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"64"}}],"operation":{"kind":"nat_add"}}]}},"kind":"cond","then_branch":{"function":1,"kind":"call","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"128"}}],"operation":{"kind":"nat_add"}}]}},"kind":"cond","then_branch":{"function":1,"kind":"call","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"256"}}],"operation":{"kind":"nat_add"}}]}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own","own","own","own"]}],"name":"reasoning_gnaf_priority_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":1}]},{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":2}]},{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":3}]},{"function":1,"kind":"call","operands":[{"kind":"var","name":4}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}},"parameters":[0,1,2,3,4],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}},"types":[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"256"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_not"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"128"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"32"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"128"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_not"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"64"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"16"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"64"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_not"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"8"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"256"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"128"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"64"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}},"kind":"cond","then_branch":{"function":1,"kind":"call","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"64"}}],"operation":{"kind":"nat_add"}}]}},"kind":"cond","then_branch":{"function":1,"kind":"call","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"128"}}],"operation":{"kind":"nat_add"}}]}},"kind":"cond","then_branch":{"function":1,"kind":"call","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"256"}}],"operation":{"kind":"nat_add"}}]}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/reasoning-gnaf-priority/provenance.json b/compiler/rust/rust-core/reasoning-gnaf-priority/provenance.json index 221e1f9b9..138abaaf0 100644 --- a/compiler/rust/rust-core/reasoning-gnaf-priority/provenance.json +++ b/compiler/rust/rust-core/reasoning-gnaf-priority/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"3535efab36ca3a8d39c5976323811badc0280578bae597a2a714624ac29213ed","src/lib.rs":"662506d0fad69b47183b300a4bc3b1ccd93b140a207a78e3cd6e49cd6b69f1c3"},"name":"reasoning_gnaf_priority_core","profile":"rust-core","program":"3daf7454a6bd393de7d12ecf49636d2914d09cec5748ae837b7684e00b95fe74","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"3535efab36ca3a8d39c5976323811badc0280578bae597a2a714624ac29213ed","src/lib.rs":"662506d0fad69b47183b300a4bc3b1ccd93b140a207a78e3cd6e49cd6b69f1c3"},"name":"reasoning_gnaf_priority_core","profile":"rust-core","program":"3daf7454a6bd393de7d12ecf49636d2914d09cec5748ae837b7684e00b95fe74","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/reasoning-gnaf-sweep/package.json b/compiler/rust/rust-core/reasoning-gnaf-sweep/package.json index 6f55c743e..d268b3d32 100644 --- a/compiler/rust/rust-core/reasoning-gnaf-sweep/package.json +++ b/compiler/rust/rust-core/reasoning-gnaf-sweep/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own","own","own","own"]}],"name":"reasoning_gnaf_sweep_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":1}]},{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":2}]},{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":3}]},{"function":1,"kind":"call","operands":[{"kind":"var","name":4}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}},"parameters":[0,1,2,3,4],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}},"types":[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]},{"body":{"body":{"body":{"body":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"256"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"128"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"64"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}},"bound":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"256"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_not"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"128"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"32"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"else_branch":{"kind":"var","name":2},"kind":"cond","then_branch":{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"256"}}],"operation":{"kind":"nat_add"}}},"kind":"let","name":3,"type":{"kind":"nat"}},"bound":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"128"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_not"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"64"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"16"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"else_branch":{"kind":"var","name":1},"kind":"cond","then_branch":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"128"}}],"operation":{"kind":"nat_add"}}},"kind":"let","name":2,"type":{"kind":"nat"}},"bound":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"64"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_not"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"8"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}},"else_branch":{"kind":"var","name":0},"kind":"cond","then_branch":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"64"}}],"operation":{"kind":"nat_add"}}},"kind":"let","name":1,"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own","own","own","own"]}],"name":"reasoning_gnaf_sweep_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":1}]},{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":2}]},{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":3}]},{"function":1,"kind":"call","operands":[{"kind":"var","name":4}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}},"parameters":[0,1,2,3,4],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}},"types":[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]},{"body":{"body":{"body":{"body":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"256"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"128"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"64"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}},"bound":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"256"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_not"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"128"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"32"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"else_branch":{"kind":"var","name":2},"kind":"cond","then_branch":{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"256"}}],"operation":{"kind":"nat_add"}}},"kind":"let","name":3,"type":{"kind":"nat"}},"bound":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"128"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_not"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"64"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"16"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"else_branch":{"kind":"var","name":1},"kind":"cond","then_branch":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"128"}}],"operation":{"kind":"nat_add"}}},"kind":"let","name":2,"type":{"kind":"nat"}},"bound":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"64"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_not"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"8"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}},"else_branch":{"kind":"var","name":0},"kind":"cond","then_branch":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"64"}}],"operation":{"kind":"nat_add"}}},"kind":"let","name":1,"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/reasoning-gnaf-sweep/provenance.json b/compiler/rust/rust-core/reasoning-gnaf-sweep/provenance.json index 824f18d96..6b0421e0b 100644 --- a/compiler/rust/rust-core/reasoning-gnaf-sweep/provenance.json +++ b/compiler/rust/rust-core/reasoning-gnaf-sweep/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"841bb00629c7ce887e593e1e6ae9fe3e5a14c38e059b93ac1b676f122a621666","src/lib.rs":"3c51fb6124e3bcf7cccc2bf6bb9c7a3b9d40b3a4d51bb35511faab4eef723f2f"},"name":"reasoning_gnaf_sweep_core","profile":"rust-core","program":"ed0eba6159b16bcdf765c6e275fceab30b7c9c1b6470f4a19bb09a92a79e19f4","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"841bb00629c7ce887e593e1e6ae9fe3e5a14c38e059b93ac1b676f122a621666","src/lib.rs":"3c51fb6124e3bcf7cccc2bf6bb9c7a3b9d40b3a4d51bb35511faab4eef723f2f"},"name":"reasoning_gnaf_sweep_core","profile":"rust-core","program":"ed0eba6159b16bcdf765c6e275fceab30b7c9c1b6470f4a19bb09a92a79e19f4","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/reasoning-grade-shock/package.json b/compiler/rust/rust-core/reasoning-grade-shock/package.json index f0bf7dcf3..cf440fc94 100644 --- a/compiler/rust/rust-core/reasoning-grade-shock/package.json +++ b/compiler/rust/rust-core/reasoning-grade-shock/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"reasoning_grade_shock_core","profile":"rust-core","program":{"adts":[{"constructors":[[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[{"index":0,"kind":"adt"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[],[],[],[],[],[],[],[]]}],"functions":[{"body":{"body":{"condition":{"kind":"second","value":{"kind":"var","name":1}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"kind":"cond","then_branch":{"function":36,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"first","value":{"kind":"var","name":1}}]}},"bound":{"function":37,"kind":"call","operands":[{"captures":[],"function":33,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"11"}},{"function":30,"kind":"call","operands":[{"kind":"var","name":0}]}]},"kind":"let","name":1,"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"380"}},{"index":0,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}},{"index":1,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"20"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"12"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":1,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":2,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":3,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":4,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"index":0,"kind":"field","value":{"kind":"var","name":0}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"function":5,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":14,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":15,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":16,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":17,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":18,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":19,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":20,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":0,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":7,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":6,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":5,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":4,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":3,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":2,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":1,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":2,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"function":22,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":0,"kind":"adt"}},{"binders":[],"body":{"function":23,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":1,"kind":"adt"}},{"binders":[],"body":{"function":24,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":2,"kind":"adt"}},{"binders":[],"body":{"function":25,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":3,"kind":"adt"}},{"binders":[],"body":{"function":26,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":4,"kind":"adt"}},{"binders":[],"body":{"function":27,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":5,"kind":"adt"}},{"binders":[],"body":{"function":28,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":6,"kind":"adt"}},{"binders":[],"body":{"function":29,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":7,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0,1],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"},{"index":2,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"shape":{"kind":"none"}},{"binders":[1],"body":{"function":32,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":31,"kind":"call","operands":[{"kind":"var","name":0}]},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[2],"body":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"ok"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"arms":[{"binders":[3],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":35,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"parameters":[0,1],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":37,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"index":1,"kind":"adt"}],"result":{"kind":"option","value":{"index":1,"kind":"adt"}}},{"kind":"nat"},{"index":1,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"reasoning_grade_shock_core","profile":"rust-core","program":{"adts":[{"constructors":[[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[{"index":0,"kind":"adt"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[],[],[],[],[],[],[],[]]}],"functions":[{"body":{"body":{"condition":{"kind":"second","value":{"kind":"var","name":1}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"kind":"cond","then_branch":{"function":36,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"first","value":{"kind":"var","name":1}}]}},"bound":{"function":37,"kind":"call","operands":[{"captures":[],"function":33,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"11"}},{"function":30,"kind":"call","operands":[{"kind":"var","name":0}]}]},"kind":"let","name":1,"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"380"}},{"index":0,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}},{"index":1,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"20"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"12"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":1,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":2,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":3,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":4,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"index":0,"kind":"field","value":{"kind":"var","name":0}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"function":5,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":14,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":15,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":16,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":17,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":18,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":19,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":20,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":0,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":7,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":6,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":5,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":4,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":3,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":2,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":1,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":2,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"function":22,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":0,"kind":"adt"}},{"binders":[],"body":{"function":23,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":1,"kind":"adt"}},{"binders":[],"body":{"function":24,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":2,"kind":"adt"}},{"binders":[],"body":{"function":25,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":3,"kind":"adt"}},{"binders":[],"body":{"function":26,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":4,"kind":"adt"}},{"binders":[],"body":{"function":27,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":5,"kind":"adt"}},{"binders":[],"body":{"function":28,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":6,"kind":"adt"}},{"binders":[],"body":{"function":29,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":7,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0,1],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"},{"index":2,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"shape":{"kind":"none"}},{"binders":[1],"body":{"function":32,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":31,"kind":"call","operands":[{"kind":"var","name":0}]},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[2],"body":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"ok"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"arms":[{"binders":[3],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":35,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"parameters":[0,1],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":37,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"index":1,"kind":"adt"}],"result":{"kind":"option","value":{"index":1,"kind":"adt"}}},{"kind":"nat"},{"index":1,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/reasoning-grade-shock/provenance.json b/compiler/rust/rust-core/reasoning-grade-shock/provenance.json index ba730a196..254fecc48 100644 --- a/compiler/rust/rust-core/reasoning-grade-shock/provenance.json +++ b/compiler/rust/rust-core/reasoning-grade-shock/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"281173f36bdfa7c25b07a935ce271f8b0ae236e179794ef4b702920bb7e9a5e0","src/lib.rs":"8983f815a05c87426498b43886fd1fbe05c24d4ff63fd5451ecf8e5c1477b02d"},"name":"reasoning_grade_shock_core","profile":"rust-core","program":"7ff5b1276ef132016ac9da5b0a77c470eccabe50e899ca8c471b5c1d088afd5d","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"281173f36bdfa7c25b07a935ce271f8b0ae236e179794ef4b702920bb7e9a5e0","src/lib.rs":"8983f815a05c87426498b43886fd1fbe05c24d4ff63fd5451ecf8e5c1477b02d"},"name":"reasoning_grade_shock_core","profile":"rust-core","program":"7ff5b1276ef132016ac9da5b0a77c470eccabe50e899ca8c471b5c1d088afd5d","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/reasoning-grade-well/package.json b/compiler/rust/rust-core/reasoning-grade-well/package.json index 75ce56b1e..49d2b6fed 100644 --- a/compiler/rust/rust-core/reasoning-grade-well/package.json +++ b/compiler/rust/rust-core/reasoning-grade-well/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"reasoning_grade_well_core","profile":"rust-core","program":{"adts":[{"constructors":[[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[{"index":0,"kind":"adt"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[],[],[],[],[],[],[],[]]}],"functions":[{"body":{"body":{"condition":{"kind":"second","value":{"kind":"var","name":1}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"kind":"cond","then_branch":{"function":36,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"first","value":{"kind":"var","name":1}}]}},"bound":{"function":37,"kind":"call","operands":[{"captures":[],"function":33,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"11"}},{"function":30,"kind":"call","operands":[{"kind":"var","name":0}]}]},"kind":"let","name":1,"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"380"}},{"index":0,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}},{"index":1,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"20"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"12"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":1,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":2,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":3,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":4,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"index":0,"kind":"field","value":{"kind":"var","name":0}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"function":5,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":14,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":15,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":16,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":17,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":18,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":19,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":20,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":0,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":7,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":6,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":5,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":4,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":3,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":2,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":1,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":2,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"function":22,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":0,"kind":"adt"}},{"binders":[],"body":{"function":23,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":1,"kind":"adt"}},{"binders":[],"body":{"function":24,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":2,"kind":"adt"}},{"binders":[],"body":{"function":25,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":3,"kind":"adt"}},{"binders":[],"body":{"function":26,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":4,"kind":"adt"}},{"binders":[],"body":{"function":27,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":5,"kind":"adt"}},{"binders":[],"body":{"function":28,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":6,"kind":"adt"}},{"binders":[],"body":{"function":29,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":7,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0,1],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"},{"index":2,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"shape":{"kind":"none"}},{"binders":[1],"body":{"function":32,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":31,"kind":"call","operands":[{"kind":"var","name":0}]},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[2],"body":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"ok"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"arms":[{"binders":[3],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":35,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"parameters":[0,1],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":37,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"index":1,"kind":"adt"}],"result":{"kind":"option","value":{"index":1,"kind":"adt"}}},{"kind":"nat"},{"index":1,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"reasoning_grade_well_core","profile":"rust-core","program":{"adts":[{"constructors":[[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[{"index":0,"kind":"adt"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[],[],[],[],[],[],[],[]]}],"functions":[{"body":{"body":{"condition":{"kind":"second","value":{"kind":"var","name":1}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"kind":"cond","then_branch":{"function":36,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"first","value":{"kind":"var","name":1}}]}},"bound":{"function":37,"kind":"call","operands":[{"captures":[],"function":33,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"11"}},{"function":30,"kind":"call","operands":[{"kind":"var","name":0}]}]},"kind":"let","name":1,"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"380"}},{"index":0,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}},{"index":1,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"20"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"12"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":1,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":2,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":3,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":4,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"index":0,"kind":"field","value":{"kind":"var","name":0}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"function":5,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":14,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":15,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":16,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":17,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":18,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":19,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":20,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":0,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":7,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":6,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":5,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":4,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":3,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":2,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":1,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":2,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"function":22,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":0,"kind":"adt"}},{"binders":[],"body":{"function":23,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":1,"kind":"adt"}},{"binders":[],"body":{"function":24,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":2,"kind":"adt"}},{"binders":[],"body":{"function":25,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":3,"kind":"adt"}},{"binders":[],"body":{"function":26,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":4,"kind":"adt"}},{"binders":[],"body":{"function":27,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":5,"kind":"adt"}},{"binders":[],"body":{"function":28,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":6,"kind":"adt"}},{"binders":[],"body":{"function":29,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":7,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0,1],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"},{"index":2,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"shape":{"kind":"none"}},{"binders":[1],"body":{"function":32,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":31,"kind":"call","operands":[{"kind":"var","name":0}]},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[2],"body":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"ok"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"arms":[{"binders":[3],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":35,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"parameters":[0,1],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":37,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"index":1,"kind":"adt"}],"result":{"kind":"option","value":{"index":1,"kind":"adt"}}},{"kind":"nat"},{"index":1,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/reasoning-grade-well/provenance.json b/compiler/rust/rust-core/reasoning-grade-well/provenance.json index 90b530e67..cdf9c9589 100644 --- a/compiler/rust/rust-core/reasoning-grade-well/provenance.json +++ b/compiler/rust/rust-core/reasoning-grade-well/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"851436668cd106d5db562e51def9d73a253b9c18ed0dfa27aa96f479c18e1b9e","src/lib.rs":"8983f815a05c87426498b43886fd1fbe05c24d4ff63fd5451ecf8e5c1477b02d"},"name":"reasoning_grade_well_core","profile":"rust-core","program":"7ff5b1276ef132016ac9da5b0a77c470eccabe50e899ca8c471b5c1d088afd5d","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"851436668cd106d5db562e51def9d73a253b9c18ed0dfa27aa96f479c18e1b9e","src/lib.rs":"8983f815a05c87426498b43886fd1fbe05c24d4ff63fd5451ecf8e5c1477b02d"},"name":"reasoning_grade_well_core","profile":"rust-core","program":"7ff5b1276ef132016ac9da5b0a77c470eccabe50e899ca8c471b5c1d088afd5d","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/reasoning-review-exhausted/package.json b/compiler/rust/rust-core/reasoning-review-exhausted/package.json index 0a4d3e369..e09bc45ae 100644 --- a/compiler/rust/rust-core/reasoning-review-exhausted/package.json +++ b/compiler/rust/rust-core/reasoning-review-exhausted/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"reasoning_review_exhausted_core","profile":"rust-core","program":{"adts":[{"constructors":[[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[{"index":0,"kind":"adt"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[],[],[],[],[],[],[],[]]}],"functions":[{"body":{"body":{"condition":{"kind":"second","value":{"kind":"var","name":1}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"kind":"cond","then_branch":{"function":36,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"first","value":{"kind":"var","name":1}}]}},"bound":{"function":38,"kind":"call","operands":[{"captures":[],"function":33,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"6"}},{"function":30,"kind":"call","operands":[{"kind":"var","name":0}]}]},"kind":"let","name":1,"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"380"}},{"index":0,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}},{"index":1,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"20"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"12"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":1,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":2,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":3,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":4,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"index":0,"kind":"field","value":{"kind":"var","name":0}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"function":5,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":14,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":15,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":16,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":17,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":18,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":19,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":20,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":0,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":7,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":6,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":5,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":4,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":3,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":2,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":1,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":2,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"function":22,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":0,"kind":"adt"}},{"binders":[],"body":{"function":23,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":1,"kind":"adt"}},{"binders":[],"body":{"function":24,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":2,"kind":"adt"}},{"binders":[],"body":{"function":25,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":3,"kind":"adt"}},{"binders":[],"body":{"function":26,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":4,"kind":"adt"}},{"binders":[],"body":{"function":27,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":5,"kind":"adt"}},{"binders":[],"body":{"function":28,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":6,"kind":"adt"}},{"binders":[],"body":{"function":29,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":7,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0,1],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"},{"index":2,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"shape":{"kind":"none"}},{"binders":[1],"body":{"function":32,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":31,"kind":"call","operands":[{"kind":"var","name":0}]},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[2],"body":{"body":{"condition":{"kind":"var","name":3},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"bound":{"function":37,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"kind":"let","name":3,"type":{"kind":"bool"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"ok"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"arms":[{"binders":[3],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":35,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"parameters":[0,1],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":38,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"index":1,"kind":"adt"}],"result":{"kind":"option","value":{"index":1,"kind":"adt"}}},{"kind":"nat"},{"index":1,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"reasoning_review_exhausted_core","profile":"rust-core","program":{"adts":[{"constructors":[[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[{"index":0,"kind":"adt"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[],[],[],[],[],[],[],[]]}],"functions":[{"body":{"body":{"condition":{"kind":"second","value":{"kind":"var","name":1}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"kind":"cond","then_branch":{"function":36,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"first","value":{"kind":"var","name":1}}]}},"bound":{"function":38,"kind":"call","operands":[{"captures":[],"function":33,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"6"}},{"function":30,"kind":"call","operands":[{"kind":"var","name":0}]}]},"kind":"let","name":1,"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"380"}},{"index":0,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}},{"index":1,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"20"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"12"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":1,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":2,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":3,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":4,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"index":0,"kind":"field","value":{"kind":"var","name":0}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"function":5,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":14,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":15,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":16,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":17,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":18,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":19,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":20,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":0,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":7,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":6,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":5,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":4,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":3,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":2,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":1,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":2,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"function":22,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":0,"kind":"adt"}},{"binders":[],"body":{"function":23,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":1,"kind":"adt"}},{"binders":[],"body":{"function":24,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":2,"kind":"adt"}},{"binders":[],"body":{"function":25,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":3,"kind":"adt"}},{"binders":[],"body":{"function":26,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":4,"kind":"adt"}},{"binders":[],"body":{"function":27,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":5,"kind":"adt"}},{"binders":[],"body":{"function":28,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":6,"kind":"adt"}},{"binders":[],"body":{"function":29,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":7,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0,1],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"},{"index":2,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"shape":{"kind":"none"}},{"binders":[1],"body":{"function":32,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":31,"kind":"call","operands":[{"kind":"var","name":0}]},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[2],"body":{"body":{"condition":{"kind":"var","name":3},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"bound":{"function":37,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"kind":"let","name":3,"type":{"kind":"bool"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"ok"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"arms":[{"binders":[3],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":35,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"parameters":[0,1],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":38,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"index":1,"kind":"adt"}],"result":{"kind":"option","value":{"index":1,"kind":"adt"}}},{"kind":"nat"},{"index":1,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/reasoning-review-exhausted/provenance.json b/compiler/rust/rust-core/reasoning-review-exhausted/provenance.json index c04e7c8bc..2a33d06f8 100644 --- a/compiler/rust/rust-core/reasoning-review-exhausted/provenance.json +++ b/compiler/rust/rust-core/reasoning-review-exhausted/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"998f44193d50ca3cc6bfbad743b1f4aaef06513fea5b7f45ca0124f521e60619","src/lib.rs":"05ba28812d2ee0e599163d3596f0f1a43eaad683b717f58294702298a7ad4da9"},"name":"reasoning_review_exhausted_core","profile":"rust-core","program":"4fbef4ae1d9d00a4f618d0ca2a38865abf9a97c170f9458eb0d583c2182ccb90","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"998f44193d50ca3cc6bfbad743b1f4aaef06513fea5b7f45ca0124f521e60619","src/lib.rs":"05ba28812d2ee0e599163d3596f0f1a43eaad683b717f58294702298a7ad4da9"},"name":"reasoning_review_exhausted_core","profile":"rust-core","program":"4fbef4ae1d9d00a4f618d0ca2a38865abf9a97c170f9458eb0d583c2182ccb90","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/reasoning-review-rejected/package.json b/compiler/rust/rust-core/reasoning-review-rejected/package.json index e030d7e3c..63cef39d5 100644 --- a/compiler/rust/rust-core/reasoning-review-rejected/package.json +++ b/compiler/rust/rust-core/reasoning-review-rejected/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"reasoning_review_rejected_core","profile":"rust-core","program":{"adts":[{"constructors":[[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[{"index":0,"kind":"adt"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[],[],[],[],[],[],[],[]]}],"functions":[{"body":{"body":{"condition":{"kind":"second","value":{"kind":"var","name":1}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"kind":"cond","then_branch":{"function":36,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"first","value":{"kind":"var","name":1}}]}},"bound":{"function":38,"kind":"call","operands":[{"captures":[],"function":33,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"6"}},{"function":30,"kind":"call","operands":[{"kind":"var","name":0}]}]},"kind":"let","name":1,"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"380"}},{"index":0,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}},{"index":1,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"20"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"12"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":1,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":2,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":3,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":4,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"index":0,"kind":"field","value":{"kind":"var","name":0}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"function":5,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":14,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":15,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":16,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":17,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":18,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":19,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":20,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":0,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":7,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":6,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":5,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":4,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":3,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":2,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":1,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":2,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"function":22,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":0,"kind":"adt"}},{"binders":[],"body":{"function":23,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":1,"kind":"adt"}},{"binders":[],"body":{"function":24,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":2,"kind":"adt"}},{"binders":[],"body":{"function":25,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":3,"kind":"adt"}},{"binders":[],"body":{"function":26,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":4,"kind":"adt"}},{"binders":[],"body":{"function":27,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":5,"kind":"adt"}},{"binders":[],"body":{"function":28,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":6,"kind":"adt"}},{"binders":[],"body":{"function":29,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":7,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0,1],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"},{"index":2,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"shape":{"kind":"none"}},{"binders":[1],"body":{"function":32,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":31,"kind":"call","operands":[{"kind":"var","name":0}]},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[2],"body":{"body":{"condition":{"kind":"var","name":3},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"bound":{"function":37,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"kind":"let","name":3,"type":{"kind":"bool"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"ok"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"arms":[{"binders":[3],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":35,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"parameters":[0,1],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":38,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"index":1,"kind":"adt"}],"result":{"kind":"option","value":{"index":1,"kind":"adt"}}},{"kind":"nat"},{"index":1,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"reasoning_review_rejected_core","profile":"rust-core","program":{"adts":[{"constructors":[[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[{"index":0,"kind":"adt"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[],[],[],[],[],[],[],[]]}],"functions":[{"body":{"body":{"condition":{"kind":"second","value":{"kind":"var","name":1}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"kind":"cond","then_branch":{"function":36,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"first","value":{"kind":"var","name":1}}]}},"bound":{"function":38,"kind":"call","operands":[{"captures":[],"function":33,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"6"}},{"function":30,"kind":"call","operands":[{"kind":"var","name":0}]}]},"kind":"let","name":1,"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"380"}},{"index":0,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}},{"index":1,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"20"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"12"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":1,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":2,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":3,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":4,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"index":0,"kind":"field","value":{"kind":"var","name":0}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"function":5,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":14,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":15,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":16,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":17,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":18,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":19,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":20,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":0,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":7,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":6,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":5,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":4,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":3,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":2,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":1,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":2,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"function":22,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":0,"kind":"adt"}},{"binders":[],"body":{"function":23,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":1,"kind":"adt"}},{"binders":[],"body":{"function":24,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":2,"kind":"adt"}},{"binders":[],"body":{"function":25,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":3,"kind":"adt"}},{"binders":[],"body":{"function":26,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":4,"kind":"adt"}},{"binders":[],"body":{"function":27,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":5,"kind":"adt"}},{"binders":[],"body":{"function":28,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":6,"kind":"adt"}},{"binders":[],"body":{"function":29,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":7,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0,1],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"},{"index":2,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"shape":{"kind":"none"}},{"binders":[1],"body":{"function":32,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":31,"kind":"call","operands":[{"kind":"var","name":0}]},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[2],"body":{"body":{"condition":{"kind":"var","name":3},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"bound":{"function":37,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"kind":"let","name":3,"type":{"kind":"bool"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"ok"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"arms":[{"binders":[3],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":35,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"parameters":[0,1],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":38,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"index":1,"kind":"adt"}],"result":{"kind":"option","value":{"index":1,"kind":"adt"}}},{"kind":"nat"},{"index":1,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/reasoning-review-rejected/provenance.json b/compiler/rust/rust-core/reasoning-review-rejected/provenance.json index bd1ab7c5a..22fa64acb 100644 --- a/compiler/rust/rust-core/reasoning-review-rejected/provenance.json +++ b/compiler/rust/rust-core/reasoning-review-rejected/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"021fdd34c74ecae0c6c5792782b294011079c531ccff83ee06a83e8c496f5bf0","src/lib.rs":"05ba28812d2ee0e599163d3596f0f1a43eaad683b717f58294702298a7ad4da9"},"name":"reasoning_review_rejected_core","profile":"rust-core","program":"4fbef4ae1d9d00a4f618d0ca2a38865abf9a97c170f9458eb0d583c2182ccb90","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"021fdd34c74ecae0c6c5792782b294011079c531ccff83ee06a83e8c496f5bf0","src/lib.rs":"05ba28812d2ee0e599163d3596f0f1a43eaad683b717f58294702298a7ad4da9"},"name":"reasoning_review_rejected_core","profile":"rust-core","program":"4fbef4ae1d9d00a4f618d0ca2a38865abf9a97c170f9458eb0d583c2182ccb90","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/reasoning-triage-shock/package.json b/compiler/rust/rust-core/reasoning-triage-shock/package.json index e93e0069c..341f92b7f 100644 --- a/compiler/rust/rust-core/reasoning-triage-shock/package.json +++ b/compiler/rust/rust-core/reasoning-triage-shock/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"reasoning_triage_shock_core","profile":"rust-core","program":{"adts":[{"constructors":[[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[{"index":0,"kind":"adt"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[],[],[],[],[],[],[],[]]}],"functions":[{"body":{"body":{"condition":{"kind":"second","value":{"kind":"var","name":1}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"kind":"cond","then_branch":{"function":36,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"first","value":{"kind":"var","name":1}}]}},"bound":{"function":38,"kind":"call","operands":[{"captures":[],"function":33,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"11"}},{"function":30,"kind":"call","operands":[{"kind":"var","name":0}]}]},"kind":"let","name":1,"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"380"}},{"index":0,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}},{"index":1,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"20"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"12"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":1,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":2,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":3,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":4,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"index":0,"kind":"field","value":{"kind":"var","name":0}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"function":5,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":14,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":15,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":16,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":17,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":18,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":19,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":20,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":0,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":7,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":6,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":5,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":4,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":3,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":2,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":1,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":2,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"function":22,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":0,"kind":"adt"}},{"binders":[],"body":{"function":23,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":1,"kind":"adt"}},{"binders":[],"body":{"function":24,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":2,"kind":"adt"}},{"binders":[],"body":{"function":25,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":3,"kind":"adt"}},{"binders":[],"body":{"function":26,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":4,"kind":"adt"}},{"binders":[],"body":{"function":27,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":5,"kind":"adt"}},{"binders":[],"body":{"function":28,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":6,"kind":"adt"}},{"binders":[],"body":{"function":29,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":7,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0,1],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"},{"index":2,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"shape":{"kind":"none"}},{"binders":[1],"body":{"function":32,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":31,"kind":"call","operands":[{"kind":"var","name":0}]},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[2],"body":{"body":{"condition":{"kind":"var","name":3},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"bound":{"function":37,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"kind":"let","name":3,"type":{"kind":"bool"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"ok"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"arms":[{"binders":[3],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":35,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"parameters":[0,1],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_le"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"function":5,"kind":"call","operands":[{"kind":"var","name":0}]},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},{"function":2,"kind":"call","operands":[{"kind":"var","name":0}]}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_not"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_and"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":38,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"index":1,"kind":"adt"}],"result":{"kind":"option","value":{"index":1,"kind":"adt"}}},{"kind":"nat"},{"index":1,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"reasoning_triage_shock_core","profile":"rust-core","program":{"adts":[{"constructors":[[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[{"index":0,"kind":"adt"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[],[],[],[],[],[],[],[]]}],"functions":[{"body":{"body":{"condition":{"kind":"second","value":{"kind":"var","name":1}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"kind":"cond","then_branch":{"function":36,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"first","value":{"kind":"var","name":1}}]}},"bound":{"function":38,"kind":"call","operands":[{"captures":[],"function":33,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"11"}},{"function":30,"kind":"call","operands":[{"kind":"var","name":0}]}]},"kind":"let","name":1,"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"380"}},{"index":0,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}},{"index":1,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"20"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"12"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":1,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":2,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":3,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":4,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"index":0,"kind":"field","value":{"kind":"var","name":0}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"function":5,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":14,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":15,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":16,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":17,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":18,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":19,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":20,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":0,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":7,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":6,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":5,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":4,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":3,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":2,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":1,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":2,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"function":22,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":0,"kind":"adt"}},{"binders":[],"body":{"function":23,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":1,"kind":"adt"}},{"binders":[],"body":{"function":24,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":2,"kind":"adt"}},{"binders":[],"body":{"function":25,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":3,"kind":"adt"}},{"binders":[],"body":{"function":26,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":4,"kind":"adt"}},{"binders":[],"body":{"function":27,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":5,"kind":"adt"}},{"binders":[],"body":{"function":28,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":6,"kind":"adt"}},{"binders":[],"body":{"function":29,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":7,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0,1],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"},{"index":2,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"shape":{"kind":"none"}},{"binders":[1],"body":{"function":32,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":31,"kind":"call","operands":[{"kind":"var","name":0}]},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[2],"body":{"body":{"condition":{"kind":"var","name":3},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"bound":{"function":37,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"kind":"let","name":3,"type":{"kind":"bool"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"ok"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"arms":[{"binders":[3],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":35,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"parameters":[0,1],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_le"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"function":5,"kind":"call","operands":[{"kind":"var","name":0}]},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},{"function":2,"kind":"call","operands":[{"kind":"var","name":0}]}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_not"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_and"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":38,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"index":1,"kind":"adt"}],"result":{"kind":"option","value":{"index":1,"kind":"adt"}}},{"kind":"nat"},{"index":1,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/reasoning-triage-shock/provenance.json b/compiler/rust/rust-core/reasoning-triage-shock/provenance.json index c8380afb5..b9c11fa39 100644 --- a/compiler/rust/rust-core/reasoning-triage-shock/provenance.json +++ b/compiler/rust/rust-core/reasoning-triage-shock/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"e04326cfaee916a459127b3b48ef9fe3a013a40c628024431d49e6ff034339c4","src/lib.rs":"08a4c05a0f77186244b6e3021c578fc3771c866bc17dc3eb795c46e422db2f23"},"name":"reasoning_triage_shock_core","profile":"rust-core","program":"754fca76975093fa27b62f115ad8a931069e28b657cc9d03073a6bf862ffb02e","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"e04326cfaee916a459127b3b48ef9fe3a013a40c628024431d49e6ff034339c4","src/lib.rs":"08a4c05a0f77186244b6e3021c578fc3771c866bc17dc3eb795c46e422db2f23"},"name":"reasoning_triage_shock_core","profile":"rust-core","program":"754fca76975093fa27b62f115ad8a931069e28b657cc9d03073a6bf862ffb02e","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/reasoning-triage-well/package.json b/compiler/rust/rust-core/reasoning-triage-well/package.json index dd6f489c9..8bcd23b2f 100644 --- a/compiler/rust/rust-core/reasoning-triage-well/package.json +++ b/compiler/rust/rust-core/reasoning-triage-well/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"reasoning_triage_well_core","profile":"rust-core","program":{"adts":[{"constructors":[[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[{"index":0,"kind":"adt"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[],[],[],[],[],[],[],[]]}],"functions":[{"body":{"body":{"condition":{"kind":"second","value":{"kind":"var","name":1}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"kind":"cond","then_branch":{"function":36,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"first","value":{"kind":"var","name":1}}]}},"bound":{"function":38,"kind":"call","operands":[{"captures":[],"function":33,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"11"}},{"function":30,"kind":"call","operands":[{"kind":"var","name":0}]}]},"kind":"let","name":1,"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"380"}},{"index":0,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}},{"index":1,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"20"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"12"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":1,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":2,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":3,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":4,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"index":0,"kind":"field","value":{"kind":"var","name":0}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"function":5,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":14,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":15,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":16,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":17,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":18,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":19,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":20,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":0,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":7,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":6,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":5,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":4,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":3,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":2,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":1,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":2,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"function":22,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":0,"kind":"adt"}},{"binders":[],"body":{"function":23,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":1,"kind":"adt"}},{"binders":[],"body":{"function":24,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":2,"kind":"adt"}},{"binders":[],"body":{"function":25,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":3,"kind":"adt"}},{"binders":[],"body":{"function":26,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":4,"kind":"adt"}},{"binders":[],"body":{"function":27,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":5,"kind":"adt"}},{"binders":[],"body":{"function":28,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":6,"kind":"adt"}},{"binders":[],"body":{"function":29,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":7,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0,1],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"},{"index":2,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"shape":{"kind":"none"}},{"binders":[1],"body":{"function":32,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":31,"kind":"call","operands":[{"kind":"var","name":0}]},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[2],"body":{"body":{"condition":{"kind":"var","name":3},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"bound":{"function":37,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"kind":"let","name":3,"type":{"kind":"bool"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"ok"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"arms":[{"binders":[3],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":35,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"parameters":[0,1],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_le"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"function":5,"kind":"call","operands":[{"kind":"var","name":0}]},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},{"function":2,"kind":"call","operands":[{"kind":"var","name":0}]}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_not"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_and"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":38,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"index":1,"kind":"adt"}],"result":{"kind":"option","value":{"index":1,"kind":"adt"}}},{"kind":"nat"},{"index":1,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"reasoning_triage_well_core","profile":"rust-core","program":{"adts":[{"constructors":[[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[{"index":0,"kind":"adt"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[],[],[],[],[],[],[],[]]}],"functions":[{"body":{"body":{"condition":{"kind":"second","value":{"kind":"var","name":1}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"kind":"cond","then_branch":{"function":36,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"first","value":{"kind":"var","name":1}}]}},"bound":{"function":38,"kind":"call","operands":[{"captures":[],"function":33,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"11"}},{"function":30,"kind":"call","operands":[{"kind":"var","name":0}]}]},"kind":"let","name":1,"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"380"}},{"index":0,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}},{"index":1,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"20"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"12"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":1,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":2,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":3,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":4,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"index":0,"kind":"field","value":{"kind":"var","name":0}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"function":5,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":14,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":15,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":16,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":17,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":18,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":19,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":20,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":0,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":7,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":6,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":5,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":4,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":3,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":2,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":1,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":2,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"function":22,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":0,"kind":"adt"}},{"binders":[],"body":{"function":23,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":1,"kind":"adt"}},{"binders":[],"body":{"function":24,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":2,"kind":"adt"}},{"binders":[],"body":{"function":25,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":3,"kind":"adt"}},{"binders":[],"body":{"function":26,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":4,"kind":"adt"}},{"binders":[],"body":{"function":27,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":5,"kind":"adt"}},{"binders":[],"body":{"function":28,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":6,"kind":"adt"}},{"binders":[],"body":{"function":29,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":7,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0,1],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"},{"index":2,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"shape":{"kind":"none"}},{"binders":[1],"body":{"function":32,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":31,"kind":"call","operands":[{"kind":"var","name":0}]},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[2],"body":{"body":{"condition":{"kind":"var","name":3},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"bound":{"function":37,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"kind":"let","name":3,"type":{"kind":"bool"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"ok"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"arms":[{"binders":[3],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":35,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"parameters":[0,1],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_le"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"function":5,"kind":"call","operands":[{"kind":"var","name":0}]},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},{"function":2,"kind":"call","operands":[{"kind":"var","name":0}]}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_not"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_and"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":38,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"index":1,"kind":"adt"}],"result":{"kind":"option","value":{"index":1,"kind":"adt"}}},{"kind":"nat"},{"index":1,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/reasoning-triage-well/provenance.json b/compiler/rust/rust-core/reasoning-triage-well/provenance.json index 705edba20..b646667e9 100644 --- a/compiler/rust/rust-core/reasoning-triage-well/provenance.json +++ b/compiler/rust/rust-core/reasoning-triage-well/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"fec28bf9de2addfa3bf3ce9f515185851e543bd16000fabdd5bbbe665c9c0e9c","src/lib.rs":"08a4c05a0f77186244b6e3021c578fc3771c866bc17dc3eb795c46e422db2f23"},"name":"reasoning_triage_well_core","profile":"rust-core","program":"754fca76975093fa27b62f115ad8a931069e28b657cc9d03073a6bf862ffb02e","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"fec28bf9de2addfa3bf3ce9f515185851e543bd16000fabdd5bbbe665c9c0e9c","src/lib.rs":"08a4c05a0f77186244b6e3021c578fc3771c866bc17dc3eb795c46e422db2f23"},"name":"reasoning_triage_well_core","profile":"rust-core","program":"754fca76975093fa27b62f115ad8a931069e28b657cc9d03073a6bf862ffb02e","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/record-fields/package.json b/compiler/rust/rust-core/record-fields/package.json index 831f00fb0..a6a33db18 100644 --- a/compiler/rust/rust-core/record-fields/package.json +++ b/compiler/rust/rust-core/record-fields/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own"]}],"name":"record_fields_core","profile":"rust-core","program":{"adts":[{"constructors":[[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]}],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"index":0,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own"]}],"name":"record_fields_core","profile":"rust-core","program":{"adts":[{"constructors":[[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]}],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"index":0,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/record-fields/provenance.json b/compiler/rust/rust-core/record-fields/provenance.json index 2d62fc290..c10e5a224 100644 --- a/compiler/rust/rust-core/record-fields/provenance.json +++ b/compiler/rust/rust-core/record-fields/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"ec4cee195074d69882a3f6e5e4bbf6de21dfbfec8722c213645e22b9b6a499b9","src/lib.rs":"bce72d4976ac1979220d1076143a53904f169dcedb4992441f9aa24c38b97352"},"name":"record_fields_core","profile":"rust-core","program":"526bb181b433435ecf3b9116937f342406bd8db3d26cc26b870d03e7f3c11ca9","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"ec4cee195074d69882a3f6e5e4bbf6de21dfbfec8722c213645e22b9b6a499b9","src/lib.rs":"bce72d4976ac1979220d1076143a53904f169dcedb4992441f9aa24c38b97352"},"name":"record_fields_core","profile":"rust-core","program":"526bb181b433435ecf3b9116937f342406bd8db3d26cc26b870d03e7f3c11ca9","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/sum-to-exhausted/package.json b/compiler/rust/rust-core/sum-to-exhausted/package.json index 5a86679a9..453361ee5 100644 --- a/compiler/rust/rust-core/sum-to-exhausted/package.json +++ b/compiler/rust/rust-core/sum-to-exhausted/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"sum_to_exhausted_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"kind":"prim","operands":[{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"succ"},"type":{"kind":"nat"}},{"function":0,"kind":"call","operands":[{"kind":"var","name":1}]}],"operation":{"kind":"nat_add"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"sum_to_exhausted_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"kind":"prim","operands":[{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"succ"},"type":{"kind":"nat"}},{"function":0,"kind":"call","operands":[{"kind":"var","name":1}]}],"operation":{"kind":"nat_add"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/sum-to-exhausted/provenance.json b/compiler/rust/rust-core/sum-to-exhausted/provenance.json index 100f2bdc1..4e53570a4 100644 --- a/compiler/rust/rust-core/sum-to-exhausted/provenance.json +++ b/compiler/rust/rust-core/sum-to-exhausted/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"bac87758ae0145c960c00f8badc41eac7c8a85900f4472616b4aa784f4bfebb4","src/lib.rs":"534c18643ecfdfdb6864809e6d39bf903946b2d2a50f8d68028eaa8fb5ec42a0"},"name":"sum_to_exhausted_core","profile":"rust-core","program":"0b5d1623110dd3c47e6d54ff536aea2157c78593eaae53a9752197a171fdc79a","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"bac87758ae0145c960c00f8badc41eac7c8a85900f4472616b4aa784f4bfebb4","src/lib.rs":"534c18643ecfdfdb6864809e6d39bf903946b2d2a50f8d68028eaa8fb5ec42a0"},"name":"sum_to_exhausted_core","profile":"rust-core","program":"0b5d1623110dd3c47e6d54ff536aea2157c78593eaae53a9752197a171fdc79a","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/sum-to/package.json b/compiler/rust/rust-core/sum-to/package.json index fdab71444..60148184b 100644 --- a/compiler/rust/rust-core/sum-to/package.json +++ b/compiler/rust/rust-core/sum-to/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"sum_to_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"kind":"prim","operands":[{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"succ"},"type":{"kind":"nat"}},{"function":0,"kind":"call","operands":[{"kind":"var","name":1}]}],"operation":{"kind":"nat_add"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"sum_to_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"kind":"prim","operands":[{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"succ"},"type":{"kind":"nat"}},{"function":0,"kind":"call","operands":[{"kind":"var","name":1}]}],"operation":{"kind":"nat_add"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/sum-to/provenance.json b/compiler/rust/rust-core/sum-to/provenance.json index cfbe30703..75b8f2b29 100644 --- a/compiler/rust/rust-core/sum-to/provenance.json +++ b/compiler/rust/rust-core/sum-to/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"6a8011ffd55c1c68e8ffe52afb89c94f028e906fe02f9ee5d79f7db3d619f6e0","src/lib.rs":"534c18643ecfdfdb6864809e6d39bf903946b2d2a50f8d68028eaa8fb5ec42a0"},"name":"sum_to_core","profile":"rust-core","program":"0b5d1623110dd3c47e6d54ff536aea2157c78593eaae53a9752197a171fdc79a","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"6a8011ffd55c1c68e8ffe52afb89c94f028e906fe02f9ee5d79f7db3d619f6e0","src/lib.rs":"534c18643ecfdfdb6864809e6d39bf903946b2d2a50f8d68028eaa8fb5ec42a0"},"name":"sum_to_core","profile":"rust-core","program":"0b5d1623110dd3c47e6d54ff536aea2157c78593eaae53a9752197a171fdc79a","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/unit-closures/package.json b/compiler/rust/rust-core/unit-closures/package.json index a53e2cb3f..a1f5b80bb 100644 --- a/compiler/rust/rust-core/unit-closures/package.json +++ b/compiler/rust/rust-core/unit-closures/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"unit_closures_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"build","operands":[{"function":2,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"unit"}}},{"kind":"build","operands":[{"function":3,"kind":"call","operands":[{"captures":[],"function":1,"kind":"closure"},{"kind":"var","name":0}]},{"kind":"build","operands":[{"function":3,"kind":"call","operands":[{"captures":[],"function":2,"kind":"closure"},{"kind":"var","name":0}]},{"function":4,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"unit"},"right":{"kind":"unit"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"unit"},"right":{"kind":"pair","left":{"kind":"unit"},"right":{"kind":"unit"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"unit"}},"right":{"kind":"pair","left":{"kind":"unit"},"right":{"kind":"pair","left":{"kind":"unit"},"right":{"kind":"unit"}}}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"unit"}},"right":{"kind":"pair","left":{"kind":"unit"},"right":{"kind":"pair","left":{"kind":"unit"},"right":{"kind":"unit"}}}},"types":[{"kind":"nat"}]},{"body":{"body":{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},"kind":"let","name":1,"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"unit"},"types":[{"kind":"nat"}]},{"body":{"body":{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"kind":"let","name":1,"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"unit"},"types":[{"kind":"nat"}]},{"body":{"kind":"apply","operands":[{"kind":"var","name":1}],"target":{"kind":"var","name":0}},"parameters":[0,1],"result":{"kind":"unit"},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"unit"}},{"kind":"nat"}]},{"body":{"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0}]},"bound":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_add"}},"kind":"let","name":1,"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"unit"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"unit_closures_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"build","operands":[{"function":2,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"unit"}}},{"kind":"build","operands":[{"function":3,"kind":"call","operands":[{"captures":[],"function":1,"kind":"closure"},{"kind":"var","name":0}]},{"kind":"build","operands":[{"function":3,"kind":"call","operands":[{"captures":[],"function":2,"kind":"closure"},{"kind":"var","name":0}]},{"function":4,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"unit"},"right":{"kind":"unit"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"unit"},"right":{"kind":"pair","left":{"kind":"unit"},"right":{"kind":"unit"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"unit"}},"right":{"kind":"pair","left":{"kind":"unit"},"right":{"kind":"pair","left":{"kind":"unit"},"right":{"kind":"unit"}}}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"unit"}},"right":{"kind":"pair","left":{"kind":"unit"},"right":{"kind":"pair","left":{"kind":"unit"},"right":{"kind":"unit"}}}},"types":[{"kind":"nat"}]},{"body":{"body":{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},"kind":"let","name":1,"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"unit"},"types":[{"kind":"nat"}]},{"body":{"body":{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"kind":"let","name":1,"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"unit"},"types":[{"kind":"nat"}]},{"body":{"kind":"apply","operands":[{"kind":"var","name":1}],"target":{"kind":"var","name":0}},"parameters":[0,1],"result":{"kind":"unit"},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"unit"}},{"kind":"nat"}]},{"body":{"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0}]},"bound":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_add"}},"kind":"let","name":1,"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"unit"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/unit-closures/provenance.json b/compiler/rust/rust-core/unit-closures/provenance.json index bb64a08d6..12963cf27 100644 --- a/compiler/rust/rust-core/unit-closures/provenance.json +++ b/compiler/rust/rust-core/unit-closures/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"a191efaef909a589104c2eaa34cabd3d20c7a4938cba92935d2a5a28ea898044","src/lib.rs":"ef8a474329bc8d587ec4d72ae082da03fd98bf5bf9bdb2185ebd7820843d973c"},"name":"unit_closures_core","profile":"rust-core","program":"e2f55254e66e933625b9a18c2414242a0f3a55dccef58b663673c4027a619c34","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"a191efaef909a589104c2eaa34cabd3d20c7a4938cba92935d2a5a28ea898044","src/lib.rs":"ef8a474329bc8d587ec4d72ae082da03fd98bf5bf9bdb2185ebd7820843d973c"},"name":"unit_closures_core","profile":"rust-core","program":"e2f55254e66e933625b9a18c2414242a0f3a55dccef58b663673c4027a619c34","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/unit-values/package.json b/compiler/rust/rust-core/unit-values/package.json index 14d0f4b5c..47685d3ed 100644 --- a/compiler/rust/rust-core/unit-values/package.json +++ b/compiler/rust/rust-core/unit-values/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"unit_values_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"body":{"body":{"body":{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":2}]},{"kind":"build","operands":[{"function":2,"kind":"call","operands":[{"kind":"var","name":1}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"unit"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"unit"},"right":{"kind":"option","value":{"kind":"unit"}}}},"bound":{"function":5,"kind":"call","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"9"}}],"operation":{"kind":"nat_lt"}},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_lt"}}]},"kind":"let","name":4,"type":{"kind":"unit"}},"bound":{"function":4,"kind":"call","operands":[{"kind":"var","name":1}]},"kind":"let","name":3,"type":{"kind":"unit"}},"bound":{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},"kind":"let","name":2,"type":{"kind":"unit"}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"unit"},"right":{"kind":"option","value":{"kind":"unit"}}},"types":[{"kind":"unit"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"unit"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"unit"}},"parameters":[0],"result":{"kind":"unit"},"types":[{"kind":"unit"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"function":3,"kind":"call","operands":[{"kind":"var","name":1}]},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"unit"}},"parameters":[0],"result":{"kind":"unit"},"types":[{"kind":"nat"}]},{"body":{"body":{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},"kind":"let","name":1,"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"unit"},"types":[{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}},"kind":"cond","then_branch":{"function":3,"kind":"call","operands":[{"kind":"var","name":0}]}},"parameters":[0],"result":{"kind":"unit"},"types":[{"kind":"nat"}]},{"body":{"condition":{"kind":"var","name":0},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}},"kind":"cond","then_branch":{"condition":{"kind":"var","name":1},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}},"kind":"cond","then_branch":{"function":1,"kind":"call","operands":[{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}}]}}},"parameters":[0,1],"result":{"kind":"unit"},"types":[{"kind":"bool"},{"kind":"bool"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"unit_values_core","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"body":{"body":{"body":{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":2}]},{"kind":"build","operands":[{"function":2,"kind":"call","operands":[{"kind":"var","name":1}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"unit"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"unit"},"right":{"kind":"option","value":{"kind":"unit"}}}},"bound":{"function":5,"kind":"call","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"9"}}],"operation":{"kind":"nat_lt"}},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_lt"}}]},"kind":"let","name":4,"type":{"kind":"unit"}},"bound":{"function":4,"kind":"call","operands":[{"kind":"var","name":1}]},"kind":"let","name":3,"type":{"kind":"unit"}},"bound":{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},"kind":"let","name":2,"type":{"kind":"unit"}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"unit"},"right":{"kind":"option","value":{"kind":"unit"}}},"types":[{"kind":"unit"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"unit"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"unit"}},"parameters":[0],"result":{"kind":"unit"},"types":[{"kind":"unit"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"function":3,"kind":"call","operands":[{"kind":"var","name":1}]},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"unit"}},"parameters":[0],"result":{"kind":"unit"},"types":[{"kind":"nat"}]},{"body":{"body":{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},"kind":"let","name":1,"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"unit"},"types":[{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}},"kind":"cond","then_branch":{"function":3,"kind":"call","operands":[{"kind":"var","name":0}]}},"parameters":[0],"result":{"kind":"unit"},"types":[{"kind":"nat"}]},{"body":{"condition":{"kind":"var","name":0},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}},"kind":"cond","then_branch":{"condition":{"kind":"var","name":1},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}},"kind":"cond","then_branch":{"function":1,"kind":"call","operands":[{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}}]}}},"parameters":[0,1],"result":{"kind":"unit"},"types":[{"kind":"bool"},{"kind":"bool"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/unit-values/provenance.json b/compiler/rust/rust-core/unit-values/provenance.json index d1e07b99b..942e6fb8a 100644 --- a/compiler/rust/rust-core/unit-values/provenance.json +++ b/compiler/rust/rust-core/unit-values/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"61e5f6497df7d1aea5341af494e12a23d168d9b415043427c7f081e7bae06fee","src/lib.rs":"eaa59c524f3c4b03f5f86c540e3b5469b53df5714e5e8d64f754654f53fc49d2"},"name":"unit_values_core","profile":"rust-core","program":"da46c33882a69c2a5bed667c6e026399692e7ebc318523c341cef90e9257d9ea","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"61e5f6497df7d1aea5341af494e12a23d168d9b415043427c7f081e7bae06fee","src/lib.rs":"eaa59c524f3c4b03f5f86c540e3b5469b53df5714e5e8d64f754654f53fc49d2"},"name":"unit_values_core","profile":"rust-core","program":"da46c33882a69c2a5bed667c6e026399692e7ebc318523c341cef90e9257d9ea","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/wide-shapes/package.json b/compiler/rust/rust-core/wide-shapes/package.json index 650d28534..5b1845fbf 100644 --- a/compiler/rust/rust-core/wide-shapes/package.json +++ b/compiler/rust/rust-core/wide-shapes/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own"]}],"name":"wide_shapes_core","profile":"rust-core","program":{"adts":[{"constructors":[[],[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]}],"functions":[{"body":{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"5"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"6"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"7"}}]},{"kind":"build","operands":[{"function":2,"kind":"call","operands":[{"kind":"var","name":0}]},{"function":3,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"kind":"nat"}},"right":{"error":{"kind":"unit"},"kind":"result","ok":{"kind":"nat"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"kind":"nat"}},"right":{"error":{"kind":"unit"},"kind":"result","ok":{"kind":"nat"}}}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"kind":"nat"}},"right":{"error":{"kind":"unit"},"kind":"result","ok":{"kind":"nat"}}}},"types":[{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":7},{"kind":"var","name":0}],"operation":{"kind":"nat_sub"}},"parameters":[0,1,2,3,4,5,6,7],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"5"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}}],"shape":{"kind":"error"},"type":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":0}],"shape":{"kind":"ok"},"type":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"kind":"nat"}}}},"parameters":[0],"result":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"kind":"nat"}},"types":[{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}}],"shape":{"kind":"error"},"type":{"error":{"kind":"unit"},"kind":"result","ok":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":0}],"shape":{"kind":"ok"},"type":{"error":{"kind":"unit"},"kind":"result","ok":{"kind":"nat"}}}},"parameters":[0],"result":{"error":{"kind":"unit"},"kind":"result","ok":{"kind":"nat"}},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own"]}],"name":"wide_shapes_core","profile":"rust-core","program":{"adts":[{"constructors":[[],[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]}],"functions":[{"body":{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"5"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"6"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"7"}}]},{"kind":"build","operands":[{"function":2,"kind":"call","operands":[{"kind":"var","name":0}]},{"function":3,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"kind":"nat"}},"right":{"error":{"kind":"unit"},"kind":"result","ok":{"kind":"nat"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"kind":"nat"}},"right":{"error":{"kind":"unit"},"kind":"result","ok":{"kind":"nat"}}}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"kind":"nat"}},"right":{"error":{"kind":"unit"},"kind":"result","ok":{"kind":"nat"}}}},"types":[{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":7},{"kind":"var","name":0}],"operation":{"kind":"nat_sub"}},"parameters":[0,1,2,3,4,5,6,7],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"5"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}}],"shape":{"kind":"error"},"type":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":0}],"shape":{"kind":"ok"},"type":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"kind":"nat"}}}},"parameters":[0],"result":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"kind":"nat"}},"types":[{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}}],"shape":{"kind":"error"},"type":{"error":{"kind":"unit"},"kind":"result","ok":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":0}],"shape":{"kind":"ok"},"type":{"error":{"kind":"unit"},"kind":"result","ok":{"kind":"nat"}}}},"parameters":[0],"result":{"error":{"kind":"unit"},"kind":"result","ok":{"kind":"nat"}},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-core/wide-shapes/provenance.json b/compiler/rust/rust-core/wide-shapes/provenance.json index 7e870b189..606db945b 100644 --- a/compiler/rust/rust-core/wide-shapes/provenance.json +++ b/compiler/rust/rust-core/wide-shapes/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"a5d6d54e6cd75aa85e08ca3fa3f4083d046d682328f6e35595b14ef3c3d6724e","src/lib.rs":"ba61f4e116c8681cf54f92be37833831410972ce4cbe87a0ee16749178b494cd"},"name":"wide_shapes_core","profile":"rust-core","program":"d0de8fa403502aaf54be1ccfae31401db4a92de6aa9ae953b340395fe2de28ec","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"a5d6d54e6cd75aa85e08ca3fa3f4083d046d682328f6e35595b14ef3c3d6724e","src/lib.rs":"ba61f4e116c8681cf54f92be37833831410972ce4cbe87a0ee16749178b494cd"},"name":"wide_shapes_core","profile":"rust-core","program":"d0de8fa403502aaf54be1ccfae31401db4a92de6aa9ae953b340395fe2de28ec","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/adt-evaluation/package.json b/compiler/rust/rust-std/adt-evaluation/package.json index 35e2fe0a4..cca015a9c 100644 --- a/compiler/rust/rust-std/adt-evaluation/package.json +++ b/compiler/rust/rust-std/adt-evaluation/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":1,"name":"run","parameters":[]}],"name":"adt_evaluation_std","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"nat"}],[{"index":0,"kind":"adt"},{"index":0,"kind":"adt"}],[{"index":1,"kind":"adt"},{"index":0,"kind":"adt"}]]},{"constructors":[[{"kind":"nat"},{"kind":"nat"}]]}],"functions":[{"body":{"arms":[{"binders":[1],"body":{"kind":"var","name":1},"shape":{"constructor":0,"kind":"adt"}},{"binders":[2,3],"body":{"kind":"prim","operands":[{"function":0,"kind":"call","operands":[{"kind":"var","name":2}]},{"function":0,"kind":"call","operands":[{"kind":"var","name":3}]}],"operation":{"kind":"nat_add"}},"shape":{"constructor":1,"kind":"adt"}},{"binders":[4,5],"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":4}},{"index":1,"kind":"field","value":{"kind":"var","name":4}}],"operation":{"kind":"nat_add"}},{"function":0,"kind":"call","operands":[{"kind":"var","name":5}]}],"operation":{"kind":"nat_mul"}},"shape":{"constructor":2,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"index":0,"kind":"adt"}]},{"body":{"function":0,"kind":"call","operands":[{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"5"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}}],"shape":{"constructor":2,"kind":"adt"},"type":{"index":0,"kind":"adt"}}],"shape":{"constructor":1,"kind":"adt"},"type":{"index":0,"kind":"adt"}}]},"parameters":[],"result":{"kind":"nat"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":1,"name":"run","parameters":[]}],"name":"adt_evaluation_std","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"nat"}],[{"index":0,"kind":"adt"},{"index":0,"kind":"adt"}],[{"index":1,"kind":"adt"},{"index":0,"kind":"adt"}]]},{"constructors":[[{"kind":"nat"},{"kind":"nat"}]]}],"functions":[{"body":{"arms":[{"binders":[1],"body":{"kind":"var","name":1},"shape":{"constructor":0,"kind":"adt"}},{"binders":[2,3],"body":{"kind":"prim","operands":[{"function":0,"kind":"call","operands":[{"kind":"var","name":2}]},{"function":0,"kind":"call","operands":[{"kind":"var","name":3}]}],"operation":{"kind":"nat_add"}},"shape":{"constructor":1,"kind":"adt"}},{"binders":[4,5],"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":4}},{"index":1,"kind":"field","value":{"kind":"var","name":4}}],"operation":{"kind":"nat_add"}},{"function":0,"kind":"call","operands":[{"kind":"var","name":5}]}],"operation":{"kind":"nat_mul"}},"shape":{"constructor":2,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"index":0,"kind":"adt"}]},{"body":{"function":0,"kind":"call","operands":[{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"5"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}}],"shape":{"constructor":2,"kind":"adt"},"type":{"index":0,"kind":"adt"}}],"shape":{"constructor":1,"kind":"adt"},"type":{"index":0,"kind":"adt"}}]},"parameters":[],"result":{"kind":"nat"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/adt-evaluation/provenance.json b/compiler/rust/rust-std/adt-evaluation/provenance.json index b1b4890c0..6b752cfd4 100644 --- a/compiler/rust/rust-std/adt-evaluation/provenance.json +++ b/compiler/rust/rust-std/adt-evaluation/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":1,"name":"run"}],"files":{"Cargo.toml":"c75702ca27cc592448af8c7d1d90d22fef746dc99342a5c720b38656aa722105","src/lib.rs":"10390762c4bbf72b815eb8895a8e5490cfbc4b1e8a58bc6febb5618961f11fb4"},"name":"adt_evaluation_std","profile":"rust-std","program":"c573271cec93dbc40bebdbbe9002fadeade7cb1d7821a5f52ec1ddbca9e2b836","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":1,"name":"run"}],"files":{"Cargo.toml":"c75702ca27cc592448af8c7d1d90d22fef746dc99342a5c720b38656aa722105","src/lib.rs":"10390762c4bbf72b815eb8895a8e5490cfbc4b1e8a58bc6febb5618961f11fb4"},"name":"adt_evaluation_std","profile":"rust-std","program":"c573271cec93dbc40bebdbbe9002fadeade7cb1d7821a5f52ec1ddbca9e2b836","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/binding-and-shapes/package.json b/compiler/rust/rust-std/binding-and-shapes/package.json index d7e57d82d..9bfddbba8 100644 --- a/compiler/rust/rust-std/binding-and-shapes/package.json +++ b/compiler/rust/rust-std/binding-and-shapes/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own"]}],"name":"binding_and_shapes_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"body":{"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":1}},{"kind":"first","value":{"kind":"var","name":1}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"none"}},{"binders":[3],"body":{"kind":"var","name":3},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"nat"}},{"kind":"build","operands":[{"arms":[{"binders":[4],"body":{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"ok"}},"shape":{"kind":"ok"}},{"binders":[5],"body":{"kind":"var","name":5},"shape":{"kind":"error"}}],"kind":"match","scrutinee":{"kind":"build","operands":[{"kind":"var","name":0}],"shape":{"kind":"ok"},"type":{"error":{"kind":"string"},"kind":"result","ok":{"kind":"nat"}}},"type":{"kind":"string"}},{"arms":[{"binders":[],"body":{"arms":[{"binders":[6],"body":{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"ok"}},"shape":{"kind":"ok"}},{"binders":[7],"body":{"kind":"var","name":7},"shape":{"kind":"error"}}],"kind":"match","scrutinee":{"kind":"build","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"failed"}}],"shape":{"kind":"error"},"type":{"error":{"kind":"string"},"kind":"result","ok":{"kind":"nat"}}},"type":{"kind":"string"}},"shape":{"kind":"unit"}}],"kind":"match","scrutinee":{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}},"type":{"kind":"string"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"string"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"string"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"string"}}}}},"bound":{"kind":"build","operands":[{"kind":"first","value":{"kind":"var","name":1}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"let","name":2,"type":{"kind":"option","value":{"kind":"nat"}}},"bound":{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"left"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}}},"kind":"let","name":1,"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"string"}}}},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own"]}],"name":"binding_and_shapes_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"body":{"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":1}},{"kind":"first","value":{"kind":"var","name":1}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"none"}},{"binders":[3],"body":{"kind":"var","name":3},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"nat"}},{"kind":"build","operands":[{"arms":[{"binders":[4],"body":{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"ok"}},"shape":{"kind":"ok"}},{"binders":[5],"body":{"kind":"var","name":5},"shape":{"kind":"error"}}],"kind":"match","scrutinee":{"kind":"build","operands":[{"kind":"var","name":0}],"shape":{"kind":"ok"},"type":{"error":{"kind":"string"},"kind":"result","ok":{"kind":"nat"}}},"type":{"kind":"string"}},{"arms":[{"binders":[],"body":{"arms":[{"binders":[6],"body":{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"ok"}},"shape":{"kind":"ok"}},{"binders":[7],"body":{"kind":"var","name":7},"shape":{"kind":"error"}}],"kind":"match","scrutinee":{"kind":"build","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"failed"}}],"shape":{"kind":"error"},"type":{"error":{"kind":"string"},"kind":"result","ok":{"kind":"nat"}}},"type":{"kind":"string"}},"shape":{"kind":"unit"}}],"kind":"match","scrutinee":{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}},"type":{"kind":"string"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"string"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"string"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"string"}}}}},"bound":{"kind":"build","operands":[{"kind":"first","value":{"kind":"var","name":1}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"let","name":2,"type":{"kind":"option","value":{"kind":"nat"}}},"bound":{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"left"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}}},"kind":"let","name":1,"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"string"}}}},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/binding-and-shapes/provenance.json b/compiler/rust/rust-std/binding-and-shapes/provenance.json index a2595ddf8..404533f38 100644 --- a/compiler/rust/rust-std/binding-and-shapes/provenance.json +++ b/compiler/rust/rust-std/binding-and-shapes/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"f7ec8b673a50007f2518189f48be5d0c87cbd3d4c9b3bca9d5435388ac9b1929","src/lib.rs":"66485d61c9126e0538d619f5254125b6257c6bae07a9d7e9c35506062544c501"},"name":"binding_and_shapes_std","profile":"rust-std","program":"03bfd0349c88b8cb299f4a49adf5370e43e53e319b3ea8cc32bc9c15c9b6b54f","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"f7ec8b673a50007f2518189f48be5d0c87cbd3d4c9b3bca9d5435388ac9b1929","src/lib.rs":"66485d61c9126e0538d619f5254125b6257c6bae07a9d7e9c35506062544c501"},"name":"binding_and_shapes_std","profile":"rust-std","program":"03bfd0349c88b8cb299f4a49adf5370e43e53e319b3ea8cc32bc9c15c9b6b54f","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/boolean-shapes/package.json b/compiler/rust/rust-std/boolean-shapes/package.json index 477475233..81745b49c 100644 --- a/compiler/rust/rust-std/boolean-shapes/package.json +++ b/compiler/rust/rust-std/boolean-shapes/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"boolean_shapes_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"true"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"false"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"true"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"false"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"bool"}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"zero"}},{"binders":[4],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}},{"kind":"build","operands":[{"condition":{"condition":{"kind":"var","name":0},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"var","name":1}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}},{"kind":"build","operands":[{"condition":{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}}},{"kind":"build","operands":[{"condition":{"kind":"var","name":0},"else_branch":{"condition":{"kind":"var","name":1},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"7"}},"shape":{"kind":"zero"}},{"binders":[5],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"7"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"nat"}},{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"8"}},"shape":{"kind":"true"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"8"}},"shape":{"kind":"false"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"nat"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}}},"types":[{"kind":"bool"},{"kind":"bool"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"boolean_shapes_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"true"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"false"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"true"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"false"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"bool"}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"zero"}},{"binders":[4],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}},{"kind":"build","operands":[{"condition":{"condition":{"kind":"var","name":0},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"var","name":1}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}},{"kind":"build","operands":[{"condition":{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}}},{"kind":"build","operands":[{"condition":{"kind":"var","name":0},"else_branch":{"condition":{"kind":"var","name":1},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"7"}},"shape":{"kind":"zero"}},{"binders":[5],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"7"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"nat"}},{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"8"}},"shape":{"kind":"true"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"8"}},"shape":{"kind":"false"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"nat"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}}},"types":[{"kind":"bool"},{"kind":"bool"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/boolean-shapes/provenance.json b/compiler/rust/rust-std/boolean-shapes/provenance.json index e5522695b..1c06bd8fa 100644 --- a/compiler/rust/rust-std/boolean-shapes/provenance.json +++ b/compiler/rust/rust-std/boolean-shapes/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"27f4b6d8ea06bd40796ffb2da18b034f66ac5dbe717d22914d0e3ee60c18c66c","src/lib.rs":"40841d1a8fd88a1bb0e013dbe131d7e5879b5e209a1654279dd1f35357cbed26"},"name":"boolean_shapes_std","profile":"rust-std","program":"08c54665d09d55ac525712aaf1c9be1ab4a4335c07dcc89b2bc107f4e151e2c9","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"27f4b6d8ea06bd40796ffb2da18b034f66ac5dbe717d22914d0e3ee60c18c66c","src/lib.rs":"40841d1a8fd88a1bb0e013dbe131d7e5879b5e209a1654279dd1f35357cbed26"},"name":"boolean_shapes_std","profile":"rust-std","program":"08c54665d09d55ac525712aaf1c9be1ab4a4335c07dcc89b2bc107f4e151e2c9","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/booleans/package.json b/compiler/rust/rust-std/booleans/package.json index 69ea979f4..11f5c0ef6 100644 --- a/compiler/rust/rust-std/booleans/package.json +++ b/compiler/rust/rust-std/booleans/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"booleans_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"bool_not"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bool_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bool_or"}},{"kind":"build","operands":[{"condition":{"kind":"var","name":0},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"true"}},{"binders":[],"body":{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"bool_not"}},"shape":{"kind":"false"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"bool"},"kind":"list"},"types":[{"kind":"bool"},{"kind":"bool"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"booleans_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"bool_not"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bool_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bool_or"}},{"kind":"build","operands":[{"condition":{"kind":"var","name":0},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"true"}},{"binders":[],"body":{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"bool_not"}},"shape":{"kind":"false"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"bool"},"kind":"list"},"types":[{"kind":"bool"},{"kind":"bool"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/booleans/provenance.json b/compiler/rust/rust-std/booleans/provenance.json index 776df9b4f..0aa66ae7a 100644 --- a/compiler/rust/rust-std/booleans/provenance.json +++ b/compiler/rust/rust-std/booleans/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"4197743b8008a08e062227c578c44fd3fb12b2377e05378e0613c2c63dab15da","src/lib.rs":"cf1e99037d3f9d080d1ce4e8706e38ab339279d5d7e803cc641916759b7763da"},"name":"booleans_std","profile":"rust-std","program":"df569820e9e36f6ecd0c9ad30a82b24e02db81757db33e6c0789609ea89bdbab","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"4197743b8008a08e062227c578c44fd3fb12b2377e05378e0613c2c63dab15da","src/lib.rs":"cf1e99037d3f9d080d1ce4e8706e38ab339279d5d7e803cc641916759b7763da"},"name":"booleans_std","profile":"rust-std","program":"df569820e9e36f6ecd0c9ad30a82b24e02db81757db33e6c0789609ea89bdbab","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/boxed-field/package.json b/compiler/rust/rust-std/boxed-field/package.json index f7e7b03f0..9d8fb56ef 100644 --- a/compiler/rust/rust-std/boxed-field/package.json +++ b/compiler/rust/rust-std/boxed-field/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own"]}],"name":"boxed_field_std","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"nat"},{"kind":"option","value":{"index":0,"kind":"adt"}}]]}],"functions":[{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"none"}},{"binders":[1],"body":{"index":0,"kind":"field","value":{"kind":"var","name":1}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"index":1,"kind":"field","value":{"kind":"var","name":0}},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"index":0,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own"]}],"name":"boxed_field_std","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"nat"},{"kind":"option","value":{"index":0,"kind":"adt"}}]]}],"functions":[{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"none"}},{"binders":[1],"body":{"index":0,"kind":"field","value":{"kind":"var","name":1}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"index":1,"kind":"field","value":{"kind":"var","name":0}},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"index":0,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/boxed-field/provenance.json b/compiler/rust/rust-std/boxed-field/provenance.json index 79c974de2..ed5548a69 100644 --- a/compiler/rust/rust-std/boxed-field/provenance.json +++ b/compiler/rust/rust-std/boxed-field/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"cc0862b3a8ee27dbce70b00690d265640d4a1703f4b4398739a97970461c6f01","src/lib.rs":"ddece29562ad1947f5534fb5b422f25e96b9b9b7f625fd0438638120215acfa3"},"name":"boxed_field_std","profile":"rust-std","program":"51b72a735ab4653f0b06e46b13240e830423df152d765b1b3e5000727e7a8728","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"cc0862b3a8ee27dbce70b00690d265640d4a1703f4b4398739a97970461c6f01","src/lib.rs":"ddece29562ad1947f5534fb5b422f25e96b9b9b7f625fd0438638120215acfa3"},"name":"boxed_field_std","profile":"rust-std","program":"51b72a735ab4653f0b06e46b13240e830423df152d765b1b3e5000727e7a8728","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/byte-compare/package.json b/compiler/rust/rust-std/byte-compare/package.json index a1a0fe20e..d5f92234b 100644 --- a/compiler/rust/rust-std/byte-compare/package.json +++ b/compiler/rust/rust-std/byte-compare/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":[]}],"name":"byte_compare_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"0102","kind":"bytes"}},{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"0103","kind":"bytes"}}],"operation":{"kind":"compare_bytes"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"ff","kind":"bytes"}},{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"00ff","kind":"bytes"}}],"operation":{"kind":"compare_bytes"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"0a0b","kind":"bytes"}},{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"0a0b","kind":"bytes"}}],"operation":{"kind":"compare_bytes"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"","kind":"bytes"}},{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"00","kind":"bytes"}}],"operation":{"kind":"compare_bytes"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"ordering"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"ordering"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"ordering"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"ordering"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"ordering"},"kind":"list"}},"parameters":[],"result":{"element":{"kind":"ordering"},"kind":"list"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":[]}],"name":"byte_compare_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"0102","kind":"bytes"}},{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"0103","kind":"bytes"}}],"operation":{"kind":"compare_bytes"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"ff","kind":"bytes"}},{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"00ff","kind":"bytes"}}],"operation":{"kind":"compare_bytes"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"0a0b","kind":"bytes"}},{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"0a0b","kind":"bytes"}}],"operation":{"kind":"compare_bytes"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"","kind":"bytes"}},{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"00","kind":"bytes"}}],"operation":{"kind":"compare_bytes"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"ordering"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"ordering"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"ordering"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"ordering"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"ordering"},"kind":"list"}},"parameters":[],"result":{"element":{"kind":"ordering"},"kind":"list"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/byte-compare/provenance.json b/compiler/rust/rust-std/byte-compare/provenance.json index afe344801..d6f8c9ba5 100644 --- a/compiler/rust/rust-std/byte-compare/provenance.json +++ b/compiler/rust/rust-std/byte-compare/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"1685888a79754795f2c3d730e7c284c74027d3bfc41dd450b78cad1e03d4105e","src/lib.rs":"33be023ea6962ac6e6c85247e6f48f02a629963c6447294648c76d9345db263b"},"name":"byte_compare_std","profile":"rust-std","program":"d48f6f4d3b00001f687ef861c922a17e1d1ea6f22bc87f2eba0315b790bbcb78","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"1685888a79754795f2c3d730e7c284c74027d3bfc41dd450b78cad1e03d4105e","src/lib.rs":"33be023ea6962ac6e6c85247e6f48f02a629963c6447294648c76d9345db263b"},"name":"byte_compare_std","profile":"rust-std","program":"d48f6f4d3b00001f687ef861c922a17e1d1ea6f22bc87f2eba0315b790bbcb78","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/byte-order/package.json b/compiler/rust/rust-std/byte-order/package.json index 460e56731..6fbc3780d 100644 --- a/compiler/rust/rust-std/byte-order/package.json +++ b/compiler/rust/rust-std/byte-order/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":[]}],"name":"byte_order_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"00ff","kind":"bytes"}},{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"00fe","kind":"bytes"}}],"operation":{"kind":"equal"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"","kind":"bytes"}},{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"","kind":"bytes"}}],"operation":{"kind":"equal"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"01","kind":"bytes"}},{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"02","kind":"bytes"}}],"operation":{"kind":"compare_bytes"}},{"kind":"value","type":{"kind":"ordering"},"value":{"kind":"ordering","value":"lt"}}],"operation":{"kind":"equal"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"hé€"}}],"operation":{"kind":"utf8_encode"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"01","kind":"bytes"}},{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"0100","kind":"bytes"}}],"operation":{"kind":"compare_bytes"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"ff","kind":"bytes"}},{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"0100","kind":"bytes"}}],"operation":{"kind":"compare_bytes"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"","kind":"bytes"}},{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"","kind":"bytes"}}],"operation":{"kind":"compare_bytes"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"ordering"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"ordering"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"ordering"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"ordering"},"kind":"list"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"ordering"},"kind":"list"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"bool"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"ordering"},"kind":"list"}}}},"parameters":[],"result":{"kind":"pair","left":{"element":{"kind":"bool"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"ordering"},"kind":"list"}}},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":[]}],"name":"byte_order_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"00ff","kind":"bytes"}},{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"00fe","kind":"bytes"}}],"operation":{"kind":"equal"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"","kind":"bytes"}},{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"","kind":"bytes"}}],"operation":{"kind":"equal"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"01","kind":"bytes"}},{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"02","kind":"bytes"}}],"operation":{"kind":"compare_bytes"}},{"kind":"value","type":{"kind":"ordering"},"value":{"kind":"ordering","value":"lt"}}],"operation":{"kind":"equal"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"hé€"}}],"operation":{"kind":"utf8_encode"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"01","kind":"bytes"}},{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"0100","kind":"bytes"}}],"operation":{"kind":"compare_bytes"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"ff","kind":"bytes"}},{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"0100","kind":"bytes"}}],"operation":{"kind":"compare_bytes"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"","kind":"bytes"}},{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"","kind":"bytes"}}],"operation":{"kind":"compare_bytes"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"ordering"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"ordering"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"ordering"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"ordering"},"kind":"list"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"ordering"},"kind":"list"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"bool"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"ordering"},"kind":"list"}}}},"parameters":[],"result":{"kind":"pair","left":{"element":{"kind":"bool"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"ordering"},"kind":"list"}}},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/byte-order/provenance.json b/compiler/rust/rust-std/byte-order/provenance.json index b0083dbf7..606a74093 100644 --- a/compiler/rust/rust-std/byte-order/provenance.json +++ b/compiler/rust/rust-std/byte-order/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"929bf7f4536e35e0c45ec5138a10d02b53bfc4e9bc9cbb2c5808e8e9aaa4051a","src/lib.rs":"63428c562c0f57a11f31de57cc06086a888403bba505548b007317e542254f43"},"name":"byte_order_std","profile":"rust-std","program":"58df17f0cb505de9d250d998d4f5f43ba6e1e90ad88feea2eea1667aaa80495a","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"929bf7f4536e35e0c45ec5138a10d02b53bfc4e9bc9cbb2c5808e8e9aaa4051a","src/lib.rs":"63428c562c0f57a11f31de57cc06086a888403bba505548b007317e542254f43"},"name":"byte_order_std","profile":"rust-std","program":"58df17f0cb505de9d250d998d4f5f43ba6e1e90ad88feea2eea1667aaa80495a","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/byte-slices/package.json b/compiler/rust/rust-std/byte-slices/package.json index 02e530289..8658c2451 100644 --- a/compiler/rust/rust-std/byte-slices/package.json +++ b/compiler/rust/rust-std/byte-slices/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":[]}],"name":"byte_slices_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"00112233","kind":"bytes"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"slice"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"00112233","kind":"bytes"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"slice"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"00112233","kind":"bytes"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"slice"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"option","value":{"kind":"bytes"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"bytes"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"bytes"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"bytes"}},"kind":"list"}},"parameters":[],"result":{"element":{"kind":"option","value":{"kind":"bytes"}},"kind":"list"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":[]}],"name":"byte_slices_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"00112233","kind":"bytes"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"slice"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"00112233","kind":"bytes"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"slice"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"00112233","kind":"bytes"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"slice"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"option","value":{"kind":"bytes"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"bytes"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"bytes"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"bytes"}},"kind":"list"}},"parameters":[],"result":{"element":{"kind":"option","value":{"kind":"bytes"}},"kind":"list"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/byte-slices/provenance.json b/compiler/rust/rust-std/byte-slices/provenance.json index 7e78a84df..c9bf972ed 100644 --- a/compiler/rust/rust-std/byte-slices/provenance.json +++ b/compiler/rust/rust-std/byte-slices/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"3a8a7c456c3309edccaea0c3543cd0211401e43fdf6cd3e626763123ddd45743","src/lib.rs":"19ea90f565cb047055c05e8c1af6944b0e3341d21fc02cb0bfaa7ddf9cc193e6"},"name":"byte_slices_std","profile":"rust-std","program":"db383c532849c59ce08e51c7905d23385c122dd7ee30de0e6e56fdc2d9ebba33","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"3a8a7c456c3309edccaea0c3543cd0211401e43fdf6cd3e626763123ddd45743","src/lib.rs":"19ea90f565cb047055c05e8c1af6944b0e3341d21fc02cb0bfaa7ddf9cc193e6"},"name":"byte_slices_std","profile":"rust-std","program":"db383c532849c59ce08e51c7905d23385c122dd7ee30de0e6e56fdc2d9ebba33","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/bytes-and-text/package.json b/compiler/rust/rust-std/bytes-and-text/package.json index accc0cfa5..beed6a2b0 100644 --- a/compiler/rust/rust-std/bytes-and-text/package.json +++ b/compiler/rust/rust-std/bytes-and-text/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":[]}],"name":"bytes_and_text_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"0102","kind":"bytes"}},{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"ff","kind":"bytes"}}],"operation":{"kind":"append"}},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"010203","kind":"bytes"}}],"operation":{"kind":"length"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"héllo€"}}],"operation":{"kind":"length"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"0aff","kind":"bytes"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"index"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"0aff","kind":"bytes"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"index"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"68c3a9","kind":"bytes"}}],"operation":{"kind":"utf8_decode"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"c328","kind":"bytes"}}],"operation":{"kind":"utf8_decode"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"option","value":{"kind":"string"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"string"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"string"}},"kind":"list"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"},"right":{"element":{"kind":"option","value":{"kind":"string"}},"kind":"list"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"},"right":{"element":{"kind":"option","value":{"kind":"string"}},"kind":"list"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bytes"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"},"right":{"element":{"kind":"option","value":{"kind":"string"}},"kind":"list"}}}}},"parameters":[],"result":{"kind":"pair","left":{"kind":"bytes"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"},"right":{"element":{"kind":"option","value":{"kind":"string"}},"kind":"list"}}}},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":[]}],"name":"bytes_and_text_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"0102","kind":"bytes"}},{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"ff","kind":"bytes"}}],"operation":{"kind":"append"}},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"010203","kind":"bytes"}}],"operation":{"kind":"length"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"héllo€"}}],"operation":{"kind":"length"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"0aff","kind":"bytes"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"index"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"0aff","kind":"bytes"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"index"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"68c3a9","kind":"bytes"}}],"operation":{"kind":"utf8_decode"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"c328","kind":"bytes"}}],"operation":{"kind":"utf8_decode"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"option","value":{"kind":"string"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"string"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"string"}},"kind":"list"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"},"right":{"element":{"kind":"option","value":{"kind":"string"}},"kind":"list"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"},"right":{"element":{"kind":"option","value":{"kind":"string"}},"kind":"list"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bytes"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"},"right":{"element":{"kind":"option","value":{"kind":"string"}},"kind":"list"}}}}},"parameters":[],"result":{"kind":"pair","left":{"kind":"bytes"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"},"right":{"element":{"kind":"option","value":{"kind":"string"}},"kind":"list"}}}},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/bytes-and-text/provenance.json b/compiler/rust/rust-std/bytes-and-text/provenance.json index a785023f4..a2fef6714 100644 --- a/compiler/rust/rust-std/bytes-and-text/provenance.json +++ b/compiler/rust/rust-std/bytes-and-text/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"4d0cfb5ef3ce72b9fd8cfe426f60ee8c75c7d554746aab9bb334391618f42ce7","src/lib.rs":"2efa4fcdc45d46335320ca258257e94adfd4718f78f1d13243f8e8a105ddd3ee"},"name":"bytes_and_text_std","profile":"rust-std","program":"90c512537d4f85ae493b4d8df30d97811078d055c0b69a120949ed63053e089e","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"4d0cfb5ef3ce72b9fd8cfe426f60ee8c75c7d554746aab9bb334391618f42ce7","src/lib.rs":"2efa4fcdc45d46335320ca258257e94adfd4718f78f1d13243f8e8a105ddd3ee"},"name":"bytes_and_text_std","profile":"rust-std","program":"90c512537d4f85ae493b4d8df30d97811078d055c0b69a120949ed63053e089e","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/closure-captures/package.json b/compiler/rust/rust-std/closure-captures/package.json index 44d235ba0..1cade2cf0 100644 --- a/compiler/rust/rust-std/closure-captures/package.json +++ b/compiler/rust/rust-std/closure-captures/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own","own"]}],"name":"closure_captures_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"captures":[{"kind":"var","name":0},{"kind":"var","name":1}],"function":2,"kind":"closure"},{"kind":"var","name":2}]},"parameters":[0,1,2],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]},{"body":{"kind":"apply","operands":[{"kind":"apply","operands":[{"kind":"var","name":1}],"target":{"kind":"var","name":0}}],"target":{"kind":"var","name":0}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":0}],"operation":{"kind":"nat_mul"}},{"kind":"var","name":1}],"operation":{"kind":"nat_sub"}},"parameters":[0,1,2],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own","own"]}],"name":"closure_captures_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"captures":[{"kind":"var","name":0},{"kind":"var","name":1}],"function":2,"kind":"closure"},{"kind":"var","name":2}]},"parameters":[0,1,2],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]},{"body":{"kind":"apply","operands":[{"kind":"apply","operands":[{"kind":"var","name":1}],"target":{"kind":"var","name":0}}],"target":{"kind":"var","name":0}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":0}],"operation":{"kind":"nat_mul"}},{"kind":"var","name":1}],"operation":{"kind":"nat_sub"}},"parameters":[0,1,2],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/closure-captures/provenance.json b/compiler/rust/rust-std/closure-captures/provenance.json index a88c78ee8..5e9d52a76 100644 --- a/compiler/rust/rust-std/closure-captures/provenance.json +++ b/compiler/rust/rust-std/closure-captures/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"c0f4ab7556534e9d6bcc971dc361820251d3127ce9d387d02227c6d97747350e","src/lib.rs":"88b362fc18cc7bb954a76f869ca5dcd8723fa11aeefd5a0b986ab136132d7a40"},"name":"closure_captures_std","profile":"rust-std","program":"e2d52d5414c5f9639f8e127b054cd3820f186da100f2dd2c1b707805abba379f","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"c0f4ab7556534e9d6bcc971dc361820251d3127ce9d387d02227c6d97747350e","src/lib.rs":"88b362fc18cc7bb954a76f869ca5dcd8723fa11aeefd5a0b986ab136132d7a40"},"name":"closure_captures_std","profile":"rust-std","program":"e2d52d5414c5f9639f8e127b054cd3820f186da100f2dd2c1b707805abba379f","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/closure-dispatch/package.json b/compiler/rust/rust-std/closure-dispatch/package.json index e9819762b..d76680eea 100644 --- a/compiler/rust/rust-std/closure-dispatch/package.json +++ b/compiler/rust/rust-std/closure-dispatch/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"closure_dispatch_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"function":3,"kind":"call","operands":[{"captures":[{"kind":"var","name":0},{"kind":"var","name":1}],"function":1,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"10"}}]},{"function":3,"kind":"call","operands":[{"captures":[{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}}],"function":2,"kind":"closure"},{"kind":"var","name":0}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"types":[{"kind":"nat"},{"kind":"string"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_add"}},{"kind":"var","name":2}],"operation":{"kind":"nat_add"}},"parameters":[0,1,2],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"string"},{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_sub"}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"unit"},{"kind":"nat"}]},{"body":{"kind":"apply","operands":[{"kind":"var","name":1}],"target":{"kind":"var","name":0}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"nat"}},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"closure_dispatch_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"function":3,"kind":"call","operands":[{"captures":[{"kind":"var","name":0},{"kind":"var","name":1}],"function":1,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"10"}}]},{"function":3,"kind":"call","operands":[{"captures":[{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}}],"function":2,"kind":"closure"},{"kind":"var","name":0}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"types":[{"kind":"nat"},{"kind":"string"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_add"}},{"kind":"var","name":2}],"operation":{"kind":"nat_add"}},"parameters":[0,1,2],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"string"},{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_sub"}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"unit"},{"kind":"nat"}]},{"body":{"kind":"apply","operands":[{"kind":"var","name":1}],"target":{"kind":"var","name":0}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"nat"}},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/closure-dispatch/provenance.json b/compiler/rust/rust-std/closure-dispatch/provenance.json index 3c25c198f..0c16feec6 100644 --- a/compiler/rust/rust-std/closure-dispatch/provenance.json +++ b/compiler/rust/rust-std/closure-dispatch/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"9baf4aaaf363171f1ee359cc787061e8f3b838a40f496da53d3ef3d2e27afd45","src/lib.rs":"4ebcb07a381642994ce7721d5b2b0ba5a812addc835f88b566112388dd234188"},"name":"closure_dispatch_std","profile":"rust-std","program":"2c8491e46d4c4170f5f7e314245c304d91dc7cc4401639794e0057c1fbf4ff3e","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"9baf4aaaf363171f1ee359cc787061e8f3b838a40f496da53d3ef3d2e27afd45","src/lib.rs":"4ebcb07a381642994ce7721d5b2b0ba5a812addc835f88b566112388dd234188"},"name":"closure_dispatch_std","profile":"rust-std","program":"2c8491e46d4c4170f5f7e314245c304d91dc7cc4401639794e0057c1fbf4ff3e","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/closure-inline/package.json b/compiler/rust/rust-std/closure-inline/package.json index ef4a68c93..1c14b3914 100644 --- a/compiler/rust/rust-std/closure-inline/package.json +++ b/compiler/rust/rust-std/closure-inline/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"closure_inline_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"apply","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"100"}}],"target":{"captures":[{"kind":"var","name":0},{"kind":"var","name":1}],"function":1,"kind":"closure"}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":0}],"operation":{"kind":"nat_mul"}},{"kind":"var","name":1}],"operation":{"kind":"nat_sub"}},"parameters":[0,1,2],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"closure_inline_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"apply","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"100"}}],"target":{"captures":[{"kind":"var","name":0},{"kind":"var","name":1}],"function":1,"kind":"closure"}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":0}],"operation":{"kind":"nat_mul"}},{"kind":"var","name":1}],"operation":{"kind":"nat_sub"}},"parameters":[0,1,2],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/closure-inline/provenance.json b/compiler/rust/rust-std/closure-inline/provenance.json index ebbd9d5e0..74c9ad89b 100644 --- a/compiler/rust/rust-std/closure-inline/provenance.json +++ b/compiler/rust/rust-std/closure-inline/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"5b5cb8b712efe50f580de93fe24776f3dfbaaa75efcefb60afb85aeb265f99d2","src/lib.rs":"938d07d0745e3d9be6f051487ba58a8ccc9d2c0006c79f6bde8b9c31c646ea0e"},"name":"closure_inline_std","profile":"rust-std","program":"cce3e8632d8c7b42f7961f9a6c0f734f50ea0eab68ab6e496f16558de67003ce","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"5b5cb8b712efe50f580de93fe24776f3dfbaaa75efcefb60afb85aeb265f99d2","src/lib.rs":"938d07d0745e3d9be6f051487ba58a8ccc9d2c0006c79f6bde8b9c31c646ea0e"},"name":"closure_inline_std","profile":"rust-std","program":"cce3e8632d8c7b42f7961f9a6c0f734f50ea0eab68ab6e496f16558de67003ce","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/closure-recursive/package.json b/compiler/rust/rust-std/closure-recursive/package.json index 97298275f..8292bc38c 100644 --- a/compiler/rust/rust-std/closure-recursive/package.json +++ b/compiler/rust/rust-std/closure-recursive/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"closure_recursive_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"body":{"body":{"kind":"apply","operands":[{"kind":"var","name":0}],"target":{"kind":"var","name":2}},"bound":{"captures":[{"kind":"var","name":1}],"function":1,"kind":"closure"},"kind":"let","name":2,"type":{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"nat"}}},"bound":{"captures":[],"function":2,"kind":"closure"},"kind":"let","name":1,"type":{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]},{"body":{"kind":"apply","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_mul"}}],"target":{"kind":"var","name":0}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_sub"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"closure_recursive_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"body":{"body":{"kind":"apply","operands":[{"kind":"var","name":0}],"target":{"kind":"var","name":2}},"bound":{"captures":[{"kind":"var","name":1}],"function":1,"kind":"closure"},"kind":"let","name":2,"type":{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"nat"}}},"bound":{"captures":[],"function":2,"kind":"closure"},"kind":"let","name":1,"type":{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]},{"body":{"kind":"apply","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_mul"}}],"target":{"kind":"var","name":0}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_sub"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/closure-recursive/provenance.json b/compiler/rust/rust-std/closure-recursive/provenance.json index 9a477a5cc..1c02e0ca4 100644 --- a/compiler/rust/rust-std/closure-recursive/provenance.json +++ b/compiler/rust/rust-std/closure-recursive/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"9f6db8365b69e43ade216f5993b4f55d7ecfcf7131eab5cd8deaad84f6269a61","src/lib.rs":"b99a6cee6a59280031d6bf530fea6c7a4e3b6fae47f742eee2f0ed354810bf54"},"name":"closure_recursive_std","profile":"rust-std","program":"837e1e72b2e960d2360d8b2d6047eb52402faac0e1796676243bd01ebc1befaf","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"9f6db8365b69e43ade216f5993b4f55d7ecfcf7131eab5cd8deaad84f6269a61","src/lib.rs":"b99a6cee6a59280031d6bf530fea6c7a4e3b6fae47f742eee2f0ed354810bf54"},"name":"closure_recursive_std","profile":"rust-std","program":"837e1e72b2e960d2360d8b2d6047eb52402faac0e1796676243bd01ebc1befaf","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/closure-uninhabited/package.json b/compiler/rust/rust-std/closure-uninhabited/package.json index 0a2c2ccd9..a43a04eed 100644 --- a/compiler/rust/rust-std/closure-uninhabited/package.json +++ b/compiler/rust/rust-std/closure-uninhabited/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own"]}],"name":"closure_uninhabited_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":2,"kind":"call","operands":[{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"nat"}}}},{"kind":"var","name":0}]},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]},{"body":{"kind":"apply","operands":[{"kind":"var","name":1}],"target":{"kind":"var","name":0}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"none"}},{"binders":[2],"body":{"kind":"apply","operands":[{"kind":"var","name":1}],"target":{"kind":"var","name":2}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"option","value":{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"nat"}}},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own"]}],"name":"closure_uninhabited_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":2,"kind":"call","operands":[{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"nat"}}}},{"kind":"var","name":0}]},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]},{"body":{"kind":"apply","operands":[{"kind":"var","name":1}],"target":{"kind":"var","name":0}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"none"}},{"binders":[2],"body":{"kind":"apply","operands":[{"kind":"var","name":1}],"target":{"kind":"var","name":2}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"option","value":{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"nat"}}},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/closure-uninhabited/provenance.json b/compiler/rust/rust-std/closure-uninhabited/provenance.json index 3ca264fca..326ad0c7d 100644 --- a/compiler/rust/rust-std/closure-uninhabited/provenance.json +++ b/compiler/rust/rust-std/closure-uninhabited/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"04d6b324f4c65f5513123c9ef98cb4cab811b35341cf5c35fe56d03293429bc7","src/lib.rs":"544ddb0dbd7e521411c081ea1c60a713fff177cdb03367246f957b866eba6444"},"name":"closure_uninhabited_std","profile":"rust-std","program":"057be489c5323c3dc11411532fd63e39ec3436d200fc45dfd8e385bec6106b04","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"04d6b324f4c65f5513123c9ef98cb4cab811b35341cf5c35fe56d03293429bc7","src/lib.rs":"544ddb0dbd7e521411c081ea1c60a713fff177cdb03367246f957b866eba6444"},"name":"closure_uninhabited_std","profile":"rust-std","program":"057be489c5323c3dc11411532fd63e39ec3436d200fc45dfd8e385bec6106b04","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/closures/package.json b/compiler/rust/rust-std/closures/package.json index 7c8a1230d..32e6f59f9 100644 --- a/compiler/rust/rust-std/closures/package.json +++ b/compiler/rust/rust-std/closures/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"closures_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"captures":[{"kind":"var","name":1}],"function":2,"kind":"closure"},{"kind":"var","name":0}]},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"kind":"build","operands":[{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"nat"}},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"operation":{"kind":"nat_add"}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"closures_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"captures":[{"kind":"var","name":1}],"function":2,"kind":"closure"},{"kind":"var","name":0}]},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"kind":"build","operands":[{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"nat"}},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"operation":{"kind":"nat_add"}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/closures/provenance.json b/compiler/rust/rust-std/closures/provenance.json index 6f81302af..30b6bdd6d 100644 --- a/compiler/rust/rust-std/closures/provenance.json +++ b/compiler/rust/rust-std/closures/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"dc94fa130dfb344cb9f25385def51572570da514423c2ca7c1f15af3d113478f","src/lib.rs":"42173a0ef40045059859a5f616c1f407fa4d0a67215d4dcede94d0c950d650d9"},"name":"closures_std","profile":"rust-std","program":"1853f6da889803b1a20a6b08710abf3c24a96ca453073ec176f5854649afcb98","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"dc94fa130dfb344cb9f25385def51572570da514423c2ca7c1f15af3d113478f","src/lib.rs":"42173a0ef40045059859a5f616c1f407fa4d0a67215d4dcede94d0c950d650d9"},"name":"closures_std","profile":"rust-std","program":"1853f6da889803b1a20a6b08710abf3c24a96ca453073ec176f5854649afcb98","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/convert/package.json b/compiler/rust/rust-std/convert/package.json index c322e54bf..b7972815b 100644 --- a/compiler/rust/rust-std/convert/package.json +++ b/compiler/rust/rust-std/convert/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":[]}],"name":"convert_std","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"option","value":{"kind":"fixed","width":"u8"}},{"kind":"option","value":{"kind":"fixed","width":"u16"}},{"kind":"option","value":{"kind":"fixed","width":"u32"}},{"kind":"option","value":{"kind":"fixed","width":"u64"}},{"kind":"option","value":{"kind":"fixed","width":"i8"}},{"kind":"option","value":{"kind":"fixed","width":"i16"}},{"kind":"option","value":{"kind":"fixed","width":"i32"}},{"kind":"option","value":{"kind":"fixed","width":"i64"}}]]}],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"300"}}],"operation":{"kind":"convert","target":"u8"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"65535"}}],"operation":{"kind":"convert","target":"u16"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"-1"}}],"operation":{"kind":"convert","target":"u32"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"4294967295"}}],"operation":{"kind":"convert","target":"u64"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"128"}}],"operation":{"kind":"convert","target":"i8"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i64"},"value":{"kind":"i64","value":"-32768"}}],"operation":{"kind":"convert","target":"i16"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u64"},"value":{"kind":"u64","value":"18446744073709551615"}}],"operation":{"kind":"convert","target":"i32"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-9223372036854775808"}}],"operation":{"kind":"convert","target":"i64"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},"parameters":[],"result":{"index":0,"kind":"adt"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":[]}],"name":"convert_std","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"option","value":{"kind":"fixed","width":"u8"}},{"kind":"option","value":{"kind":"fixed","width":"u16"}},{"kind":"option","value":{"kind":"fixed","width":"u32"}},{"kind":"option","value":{"kind":"fixed","width":"u64"}},{"kind":"option","value":{"kind":"fixed","width":"i8"}},{"kind":"option","value":{"kind":"fixed","width":"i16"}},{"kind":"option","value":{"kind":"fixed","width":"i32"}},{"kind":"option","value":{"kind":"fixed","width":"i64"}}]]}],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"300"}}],"operation":{"kind":"convert","target":"u8"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"65535"}}],"operation":{"kind":"convert","target":"u16"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"-1"}}],"operation":{"kind":"convert","target":"u32"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"4294967295"}}],"operation":{"kind":"convert","target":"u64"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"128"}}],"operation":{"kind":"convert","target":"i8"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i64"},"value":{"kind":"i64","value":"-32768"}}],"operation":{"kind":"convert","target":"i16"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u64"},"value":{"kind":"u64","value":"18446744073709551615"}}],"operation":{"kind":"convert","target":"i32"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-9223372036854775808"}}],"operation":{"kind":"convert","target":"i64"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},"parameters":[],"result":{"index":0,"kind":"adt"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/convert/provenance.json b/compiler/rust/rust-std/convert/provenance.json index 117ecc51b..9817c9abf 100644 --- a/compiler/rust/rust-std/convert/provenance.json +++ b/compiler/rust/rust-std/convert/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"186b3f1828951cb08082806c9210e4dbf844513fe1d48a27ca5d74f8d67f2b54","src/lib.rs":"970c4741fa0a2f13bd0b8d405aa9f405ebd84463f81ce1d1460956b03dd455c0"},"name":"convert_std","profile":"rust-std","program":"53f534696ea7212909ffcf637122ef370f71853fc0ce58655b91be97455279f5","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"186b3f1828951cb08082806c9210e4dbf844513fe1d48a27ca5d74f8d67f2b54","src/lib.rs":"970c4741fa0a2f13bd0b8d405aa9f405ebd84463f81ce1d1460956b03dd455c0"},"name":"convert_std","profile":"rust-std","program":"53f534696ea7212909ffcf637122ef370f71853fc0ce58655b91be97455279f5","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/decimal-overflow-wide/package.json b/compiler/rust/rust-std/decimal-overflow-wide/package.json index 5e49a9403..cdabb4698 100644 --- a/compiler/rust/rust-std/decimal-overflow-wide/package.json +++ b/compiler/rust/rust-std/decimal-overflow-wide/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":[]}],"name":"decimal_overflow_wide_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"10000000000000000000000000000000000000000"}}],"operation":{"kind":"parse_decimal","target":{"kind":"int"}}},"parameters":[],"result":{"kind":"option","value":{"kind":"int"}},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":[]}],"name":"decimal_overflow_wide_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"10000000000000000000000000000000000000000"}}],"operation":{"kind":"parse_decimal","target":{"kind":"int"}}},"parameters":[],"result":{"kind":"option","value":{"kind":"int"}},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/decimal-overflow-wide/provenance.json b/compiler/rust/rust-std/decimal-overflow-wide/provenance.json index 4153fb68c..3d1c3a10a 100644 --- a/compiler/rust/rust-std/decimal-overflow-wide/provenance.json +++ b/compiler/rust/rust-std/decimal-overflow-wide/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"8f2688f2b9be7e8b4941212040e903215f55599c6b072a55166df7aee74ef0b1","src/lib.rs":"f190deab80ccf28489de8079d90a09ade862bbe08c849a0e73c7dd8f631f8b91"},"name":"decimal_overflow_wide_std","profile":"rust-std","program":"2eb56b9de0ed586a9904ebd46b52284abcf89305b744cf7d02248ca3ea38a437","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"8f2688f2b9be7e8b4941212040e903215f55599c6b072a55166df7aee74ef0b1","src/lib.rs":"f190deab80ccf28489de8079d90a09ade862bbe08c849a0e73c7dd8f631f8b91"},"name":"decimal_overflow_wide_std","profile":"rust-std","program":"2eb56b9de0ed586a9904ebd46b52284abcf89305b744cf7d02248ca3ea38a437","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/decimal-overflow/package.json b/compiler/rust/rust-std/decimal-overflow/package.json index 7692a2266..766a2455f 100644 --- a/compiler/rust/rust-std/decimal-overflow/package.json +++ b/compiler/rust/rust-std/decimal-overflow/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":[]}],"name":"decimal_overflow_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"9223372036854775808"}}],"operation":{"kind":"parse_decimal","target":{"kind":"int"}}},"parameters":[],"result":{"kind":"option","value":{"kind":"int"}},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":[]}],"name":"decimal_overflow_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"9223372036854775808"}}],"operation":{"kind":"parse_decimal","target":{"kind":"int"}}},"parameters":[],"result":{"kind":"option","value":{"kind":"int"}},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/decimal-overflow/provenance.json b/compiler/rust/rust-std/decimal-overflow/provenance.json index d09a5afcf..c6c68c4d4 100644 --- a/compiler/rust/rust-std/decimal-overflow/provenance.json +++ b/compiler/rust/rust-std/decimal-overflow/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"b5362b31d364c5322f81ea3a913999d029e11436d1dda27ae4a7f1be1a7bb254","src/lib.rs":"fd611ff2a78cb5260a0618dd736ab78730976b452ea91ad72419d978bf991e2f"},"name":"decimal_overflow_std","profile":"rust-std","program":"1c9f1ff8a2866ebe8ee40dcd094b558723ac3a80054cbd83e599ba63cbd7841c","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"b5362b31d364c5322f81ea3a913999d029e11436d1dda27ae4a7f1be1a7bb254","src/lib.rs":"fd611ff2a78cb5260a0618dd736ab78730976b452ea91ad72419d978bf991e2f"},"name":"decimal_overflow_std","profile":"rust-std","program":"1c9f1ff8a2866ebe8ee40dcd094b558723ac3a80054cbd83e599ba63cbd7841c","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/decimal/package.json b/compiler/rust/rust-std/decimal/package.json index 3843b3543..c382d1868 100644 --- a/compiler/rust/rust-std/decimal/package.json +++ b/compiler/rust/rust-std/decimal/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":[]}],"name":"decimal_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-42"}}],"operation":{"kind":"format_decimal"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"-128"}}],"operation":{"kind":"format_decimal"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u64"},"value":{"kind":"u64","value":"18446744073709551615"}}],"operation":{"kind":"format_decimal"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"string"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"string"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"string"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"string"},"kind":"list"}},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"123"}}],"operation":{"kind":"parse_decimal","target":{"kind":"int"}}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"-0"}}],"operation":{"kind":"parse_decimal","target":{"kind":"int"}}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"007"}}],"operation":{"kind":"parse_decimal","target":{"kind":"int"}}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"+5"}}],"operation":{"kind":"parse_decimal","target":{"kind":"int"}}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":""}}],"operation":{"kind":"parse_decimal","target":{"kind":"int"}}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"-"}}],"operation":{"kind":"parse_decimal","target":{"kind":"int"}}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"-9223372036854775808"}}],"operation":{"kind":"parse_decimal","target":{"kind":"int"}}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"12a"}}],"operation":{"kind":"parse_decimal","target":{"kind":"int"}}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"option","value":{"kind":"int"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"int"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"int"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"int"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"int"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"int"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"int"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"int"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"int"}},"kind":"list"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"255"}}],"operation":{"kind":"parse_decimal","target":{"kind":"fixed","width":"u8"}}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"256"}}],"operation":{"kind":"parse_decimal","target":{"kind":"fixed","width":"u8"}}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"-1"}}],"operation":{"kind":"parse_decimal","target":{"kind":"fixed","width":"u8"}}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"0"}}],"operation":{"kind":"parse_decimal","target":{"kind":"fixed","width":"u8"}}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"option","value":{"kind":"int"}},"kind":"list"},"right":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"string"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"option","value":{"kind":"int"}},"kind":"list"},"right":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"}}}},"parameters":[],"result":{"kind":"pair","left":{"element":{"kind":"string"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"option","value":{"kind":"int"}},"kind":"list"},"right":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"}}},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":[]}],"name":"decimal_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-42"}}],"operation":{"kind":"format_decimal"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"-128"}}],"operation":{"kind":"format_decimal"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u64"},"value":{"kind":"u64","value":"18446744073709551615"}}],"operation":{"kind":"format_decimal"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"string"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"string"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"string"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"string"},"kind":"list"}},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"123"}}],"operation":{"kind":"parse_decimal","target":{"kind":"int"}}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"-0"}}],"operation":{"kind":"parse_decimal","target":{"kind":"int"}}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"007"}}],"operation":{"kind":"parse_decimal","target":{"kind":"int"}}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"+5"}}],"operation":{"kind":"parse_decimal","target":{"kind":"int"}}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":""}}],"operation":{"kind":"parse_decimal","target":{"kind":"int"}}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"-"}}],"operation":{"kind":"parse_decimal","target":{"kind":"int"}}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"-9223372036854775808"}}],"operation":{"kind":"parse_decimal","target":{"kind":"int"}}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"12a"}}],"operation":{"kind":"parse_decimal","target":{"kind":"int"}}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"option","value":{"kind":"int"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"int"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"int"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"int"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"int"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"int"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"int"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"int"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"int"}},"kind":"list"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"255"}}],"operation":{"kind":"parse_decimal","target":{"kind":"fixed","width":"u8"}}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"256"}}],"operation":{"kind":"parse_decimal","target":{"kind":"fixed","width":"u8"}}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"-1"}}],"operation":{"kind":"parse_decimal","target":{"kind":"fixed","width":"u8"}}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"0"}}],"operation":{"kind":"parse_decimal","target":{"kind":"fixed","width":"u8"}}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"option","value":{"kind":"int"}},"kind":"list"},"right":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"string"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"option","value":{"kind":"int"}},"kind":"list"},"right":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"}}}},"parameters":[],"result":{"kind":"pair","left":{"element":{"kind":"string"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"option","value":{"kind":"int"}},"kind":"list"},"right":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"}}},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/decimal/provenance.json b/compiler/rust/rust-std/decimal/provenance.json index b6db351d2..2bc50eaca 100644 --- a/compiler/rust/rust-std/decimal/provenance.json +++ b/compiler/rust/rust-std/decimal/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"4de336d24eccd5b8c7610e67d45f0f54333e2cbc4409e3bd6ea04275a068d3dc","src/lib.rs":"cfdc59f297dd78321a99d53d799aeea3577c9c573171169989ba0ce921a5e8cc"},"name":"decimal_std","profile":"rust-std","program":"917f310d200f9f4fa5ebf83c791b56d8e08333293edf4fc50fd597570ae58d4d","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"4de336d24eccd5b8c7610e67d45f0f54333e2cbc4409e3bd6ea04275a068d3dc","src/lib.rs":"cfdc59f297dd78321a99d53d799aeea3577c9c573171169989ba0ce921a5e8cc"},"name":"decimal_std","profile":"rust-std","program":"917f310d200f9f4fa5ebf83c791b56d8e08333293edf4fc50fd597570ae58d4d","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/equality/package.json b/compiler/rust/rust-std/equality/package.json index bec29352c..638d71b29 100644 --- a/compiler/rust/rust-std/equality/package.json +++ b/compiler/rust/rust-std/equality/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":[]}],"name":"equality_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}}],"operation":{"kind":"equal"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"operation":{"kind":"equal"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"é"}},{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"é"}}],"operation":{"kind":"equal"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"compare"}},{"kind":"value","type":{"kind":"ordering"},"value":{"kind":"ordering","value":"lt"}}],"operation":{"kind":"equal"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"build","operands":[],"shape":{"kind":"gt"},"type":{"kind":"ordering"}},{"kind":"value","type":{"kind":"ordering"},"value":{"kind":"ordering","value":"lt"}}],"operation":{"kind":"equal"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u16"},"value":{"kind":"u16","value":"65535"}},{"kind":"value","type":{"kind":"fixed","width":"u16"},"value":{"kind":"u16","value":"65535"}}],"operation":{"kind":"equal"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i32"},"value":{"kind":"i32","value":"-1"}},{"kind":"value","type":{"kind":"fixed","width":"i32"},"value":{"kind":"i32","value":"1"}}],"operation":{"kind":"equal"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}},"parameters":[],"result":{"element":{"kind":"bool"},"kind":"list"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":[]}],"name":"equality_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}}],"operation":{"kind":"equal"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"operation":{"kind":"equal"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"é"}},{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"é"}}],"operation":{"kind":"equal"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"compare"}},{"kind":"value","type":{"kind":"ordering"},"value":{"kind":"ordering","value":"lt"}}],"operation":{"kind":"equal"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"build","operands":[],"shape":{"kind":"gt"},"type":{"kind":"ordering"}},{"kind":"value","type":{"kind":"ordering"},"value":{"kind":"ordering","value":"lt"}}],"operation":{"kind":"equal"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u16"},"value":{"kind":"u16","value":"65535"}},{"kind":"value","type":{"kind":"fixed","width":"u16"},"value":{"kind":"u16","value":"65535"}}],"operation":{"kind":"equal"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i32"},"value":{"kind":"i32","value":"-1"}},{"kind":"value","type":{"kind":"fixed","width":"i32"},"value":{"kind":"i32","value":"1"}}],"operation":{"kind":"equal"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}},"parameters":[],"result":{"element":{"kind":"bool"},"kind":"list"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/equality/provenance.json b/compiler/rust/rust-std/equality/provenance.json index 7dd83c0b3..acceaa43d 100644 --- a/compiler/rust/rust-std/equality/provenance.json +++ b/compiler/rust/rust-std/equality/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"01ae42b51273b4ca067a4e5295206260cbcbbab4b765b04045954060004d3ce1","src/lib.rs":"649f7a4c1d4377c9a8f22cd463f21defdef0cb3330f2cc0bc943ea8a838c98ff"},"name":"equality_std","profile":"rust-std","program":"60cbf0f5a5314bb087d9eb23ac978b692465e0b4defea241a2f8917c776ee53a","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"01ae42b51273b4ca067a4e5295206260cbcbbab4b765b04045954060004d3ce1","src/lib.rs":"649f7a4c1d4377c9a8f22cd463f21defdef0cb3330f2cc0bc943ea8a838c98ff"},"name":"equality_std","profile":"rust-std","program":"60cbf0f5a5314bb087d9eb23ac978b692465e0b4defea241a2f8917c776ee53a","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/fallible-condition-value/package.json b/compiler/rust/rust-std/fallible-condition-value/package.json index 7445bc3b4..f2fbfa853 100644 --- a/compiler/rust/rust-std/fallible-condition-value/package.json +++ b/compiler/rust/rust-std/fallible-condition-value/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"fallible_condition_value_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"condition":{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"5"}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"fallible_condition_value_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"condition":{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"5"}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/fallible-condition-value/provenance.json b/compiler/rust/rust-std/fallible-condition-value/provenance.json index 5aebb92c5..ddecbd397 100644 --- a/compiler/rust/rust-std/fallible-condition-value/provenance.json +++ b/compiler/rust/rust-std/fallible-condition-value/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"ff8caa18077ba0b84554e6608e87ada6df04c923d5424f5a09bbd7c041222b74","src/lib.rs":"6e99d97fbf4346956d10e02e2702e1bc3dd048bf868cd2b1ad02ec9699b76a1f"},"name":"fallible_condition_value_std","profile":"rust-std","program":"1e4bbfc9aa1667d930aa5d3c7df5105e11161bde3842639d8fd684b9e7c9ab80","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"ff8caa18077ba0b84554e6608e87ada6df04c923d5424f5a09bbd7c041222b74","src/lib.rs":"6e99d97fbf4346956d10e02e2702e1bc3dd048bf868cd2b1ad02ec9699b76a1f"},"name":"fallible_condition_value_std","profile":"rust-std","program":"1e4bbfc9aa1667d930aa5d3c7df5105e11161bde3842639d8fd684b9e7c9ab80","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/fixed-bits-signed/package.json b/compiler/rust/rust-std/fixed-bits-signed/package.json index 7f1735e26..d8e31a78b 100644 --- a/compiler/rust/rust-std/fixed-bits-signed/package.json +++ b/compiler/rust/rust-std/fixed-bits-signed/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":[]}],"name":"fixed_bits_signed_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"0"}}],"operation":{"kind":"bit_not"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"-1"}},{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"85"}}],"operation":{"kind":"bit_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"-128"}},{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"-1"}}],"operation":{"kind":"bit_xor"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"fixed","width":"i8"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"fixed","width":"i8"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"fixed","width":"i8"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"fixed","width":"i8"},"kind":"list"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"-128"}},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"1"}}],"operation":{"kind":"shift_right"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"-1"}},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"7"}}],"operation":{"kind":"shift_right"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"64"}},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"1"}}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"1"}},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"7"}}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"1"}},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"8"}}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"kind":"list"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"fixed","width":"i8"},"kind":"list"},"right":{"element":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"kind":"list"}}},"parameters":[],"result":{"kind":"pair","left":{"element":{"kind":"fixed","width":"i8"},"kind":"list"},"right":{"element":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"kind":"list"}},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":[]}],"name":"fixed_bits_signed_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"0"}}],"operation":{"kind":"bit_not"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"-1"}},{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"85"}}],"operation":{"kind":"bit_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"-128"}},{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"-1"}}],"operation":{"kind":"bit_xor"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"fixed","width":"i8"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"fixed","width":"i8"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"fixed","width":"i8"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"fixed","width":"i8"},"kind":"list"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"-128"}},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"1"}}],"operation":{"kind":"shift_right"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"-1"}},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"7"}}],"operation":{"kind":"shift_right"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"64"}},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"1"}}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"1"}},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"7"}}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"1"}},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"8"}}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"kind":"list"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"fixed","width":"i8"},"kind":"list"},"right":{"element":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"kind":"list"}}},"parameters":[],"result":{"kind":"pair","left":{"element":{"kind":"fixed","width":"i8"},"kind":"list"},"right":{"element":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"kind":"list"}},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/fixed-bits-signed/provenance.json b/compiler/rust/rust-std/fixed-bits-signed/provenance.json index 740b5378f..964c2715a 100644 --- a/compiler/rust/rust-std/fixed-bits-signed/provenance.json +++ b/compiler/rust/rust-std/fixed-bits-signed/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"f871d81d9fc4899c784298ce0e48b0c3c85a38f28d1aa3a1215f3555e76bbbde","src/lib.rs":"b27b0bd2257f07014bfcad7a71e2db95c4859ac11d6ccbafed7c7d2430ce50c8"},"name":"fixed_bits_signed_std","profile":"rust-std","program":"6c9d502f069507ff072ae6bfd7948657e1eb89d4f56767270c22b4c0d94d1bcb","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"f871d81d9fc4899c784298ce0e48b0c3c85a38f28d1aa3a1215f3555e76bbbde","src/lib.rs":"b27b0bd2257f07014bfcad7a71e2db95c4859ac11d6ccbafed7c7d2430ce50c8"},"name":"fixed_bits_signed_std","profile":"rust-std","program":"6c9d502f069507ff072ae6bfd7948657e1eb89d4f56767270c22b4c0d94d1bcb","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/fixed-bits-unsigned/package.json b/compiler/rust/rust-std/fixed-bits-unsigned/package.json index 44056bd59..92bc959ee 100644 --- a/compiler/rust/rust-std/fixed-bits-unsigned/package.json +++ b/compiler/rust/rust-std/fixed-bits-unsigned/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":[]}],"name":"fixed_bits_unsigned_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"240"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"60"}}],"operation":{"kind":"bit_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"240"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"12"}}],"operation":{"kind":"bit_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"255"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"15"}}],"operation":{"kind":"bit_xor"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"0"}}],"operation":{"kind":"bit_not"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"fixed","width":"u8"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"fixed","width":"u8"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"fixed","width":"u8"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"fixed","width":"u8"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"fixed","width":"u8"},"kind":"list"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"129"}},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"1"}}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"1"}},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"8"}}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"128"}},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"7"}}],"operation":{"kind":"shift_right"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"128"}},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"9"}}],"operation":{"kind":"shift_right"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"fixed","width":"u8"},"kind":"list"},"right":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"}}},"parameters":[],"result":{"kind":"pair","left":{"element":{"kind":"fixed","width":"u8"},"kind":"list"},"right":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"}},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":[]}],"name":"fixed_bits_unsigned_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"240"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"60"}}],"operation":{"kind":"bit_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"240"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"12"}}],"operation":{"kind":"bit_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"255"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"15"}}],"operation":{"kind":"bit_xor"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"0"}}],"operation":{"kind":"bit_not"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"fixed","width":"u8"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"fixed","width":"u8"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"fixed","width":"u8"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"fixed","width":"u8"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"fixed","width":"u8"},"kind":"list"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"129"}},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"1"}}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"1"}},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"8"}}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"128"}},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"7"}}],"operation":{"kind":"shift_right"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"128"}},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"9"}}],"operation":{"kind":"shift_right"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"fixed","width":"u8"},"kind":"list"},"right":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"}}},"parameters":[],"result":{"kind":"pair","left":{"element":{"kind":"fixed","width":"u8"},"kind":"list"},"right":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"}},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/fixed-bits-unsigned/provenance.json b/compiler/rust/rust-std/fixed-bits-unsigned/provenance.json index 9b45821a6..2f757811f 100644 --- a/compiler/rust/rust-std/fixed-bits-unsigned/provenance.json +++ b/compiler/rust/rust-std/fixed-bits-unsigned/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"e320b5bea08c3075f1547cef263c16b05ee771fd553e78e2016874a72bfef600","src/lib.rs":"b11239851d649dfb4cfac5996223562daef5bee04f5fd64a0a5fa8c07413949f"},"name":"fixed_bits_unsigned_std","profile":"rust-std","program":"96eb8f161d9bb4e0f9f006be3e5df5125525a2888aec343e03b99de23bb5d9eb","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"e320b5bea08c3075f1547cef263c16b05ee771fd553e78e2016874a72bfef600","src/lib.rs":"b11239851d649dfb4cfac5996223562daef5bee04f5fd64a0a5fa8c07413949f"},"name":"fixed_bits_unsigned_std","profile":"rust-std","program":"96eb8f161d9bb4e0f9f006be3e5df5125525a2888aec343e03b99de23bb5d9eb","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/fixed-checked-narrow/package.json b/compiler/rust/rust-std/fixed-checked-narrow/package.json index e45ca0980..464c2228b 100644 --- a/compiler/rust/rust-std/fixed-checked-narrow/package.json +++ b/compiler/rust/rust-std/fixed-checked-narrow/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":[]}],"name":"fixed_checked_narrow_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"255"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"1"}}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"15"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"17"}}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"}},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u16"},"value":{"kind":"u16","value":"0"}},{"kind":"value","type":{"kind":"fixed","width":"u16"},"value":{"kind":"u16","value":"1"}}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u16"},"value":{"kind":"u16","value":"65000"}},{"kind":"value","type":{"kind":"fixed","width":"u16"},"value":{"kind":"u16","value":"535"}}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"kind":"list"}},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i16"},"value":{"kind":"i16","value":"-32768"}}],"operation":{"kind":"checked_neg"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i16"},"value":{"kind":"i16","value":"-32767"}},{"kind":"value","type":{"kind":"fixed","width":"i16"},"value":{"kind":"i16","value":"-1"}}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"kind":"list"}},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"65536"}},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"65536"}}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"9"}},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"4"}}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"kind":"list"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i32"},"value":{"kind":"i32","value":"-2147483648"}},{"kind":"value","type":{"kind":"fixed","width":"i32"},"value":{"kind":"i32","value":"1"}}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i32"},"value":{"kind":"i32","value":"-2147483647"}}],"operation":{"kind":"checked_neg"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"kind":"list"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"kind":"list"},"right":{"element":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"kind":"list"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"kind":"list"},"right":{"element":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"kind":"list"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"kind":"list"},"right":{"element":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"kind":"list"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"kind":"list"},"right":{"element":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"kind":"list"}}}}}},"parameters":[],"result":{"kind":"pair","left":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"kind":"list"},"right":{"element":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"kind":"list"}}}}},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":[]}],"name":"fixed_checked_narrow_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"255"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"1"}}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"15"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"17"}}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"}},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u16"},"value":{"kind":"u16","value":"0"}},{"kind":"value","type":{"kind":"fixed","width":"u16"},"value":{"kind":"u16","value":"1"}}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u16"},"value":{"kind":"u16","value":"65000"}},{"kind":"value","type":{"kind":"fixed","width":"u16"},"value":{"kind":"u16","value":"535"}}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"kind":"list"}},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i16"},"value":{"kind":"i16","value":"-32768"}}],"operation":{"kind":"checked_neg"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i16"},"value":{"kind":"i16","value":"-32767"}},{"kind":"value","type":{"kind":"fixed","width":"i16"},"value":{"kind":"i16","value":"-1"}}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"kind":"list"}},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"65536"}},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"65536"}}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"9"}},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"4"}}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"kind":"list"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i32"},"value":{"kind":"i32","value":"-2147483648"}},{"kind":"value","type":{"kind":"fixed","width":"i32"},"value":{"kind":"i32","value":"1"}}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i32"},"value":{"kind":"i32","value":"-2147483647"}}],"operation":{"kind":"checked_neg"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"kind":"list"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"kind":"list"},"right":{"element":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"kind":"list"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"kind":"list"},"right":{"element":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"kind":"list"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"kind":"list"},"right":{"element":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"kind":"list"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"kind":"list"},"right":{"element":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"kind":"list"}}}}}},"parameters":[],"result":{"kind":"pair","left":{"element":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"kind":"list"},"right":{"element":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"kind":"list"}}}}},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/fixed-checked-narrow/provenance.json b/compiler/rust/rust-std/fixed-checked-narrow/provenance.json index 46e9a25d7..5e28955e4 100644 --- a/compiler/rust/rust-std/fixed-checked-narrow/provenance.json +++ b/compiler/rust/rust-std/fixed-checked-narrow/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"e95afae963b20737123226cf65e4ae7b78f41c3032df05d51a93b326916ae0c1","src/lib.rs":"11d91c22a05213e8eccdf406823fe9b74948a90be211e5922e4ff6e717ae0288"},"name":"fixed_checked_narrow_std","profile":"rust-std","program":"e1ee29f08689361924b2e4fab8b538d626ee0a2af4597cb924b1a1d45204cb0d","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"e95afae963b20737123226cf65e4ae7b78f41c3032df05d51a93b326916ae0c1","src/lib.rs":"11d91c22a05213e8eccdf406823fe9b74948a90be211e5922e4ff6e717ae0288"},"name":"fixed_checked_narrow_std","profile":"rust-std","program":"e1ee29f08689361924b2e4fab8b538d626ee0a2af4597cb924b1a1d45204cb0d","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/fixed-checked-signed/package.json b/compiler/rust/rust-std/fixed-checked-signed/package.json index 4fa0eb49a..53f413a42 100644 --- a/compiler/rust/rust-std/fixed-checked-signed/package.json +++ b/compiler/rust/rust-std/fixed-checked-signed/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":[]}],"name":"fixed_checked_signed_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"127"}},{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"1"}}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"100"}},{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"27"}}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"-128"}},{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"1"}}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"-64"}},{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"2"}}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"16"}},{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"16"}}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"-128"}}],"operation":{"kind":"checked_neg"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"5"}}],"operation":{"kind":"checked_neg"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"-128"}},{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"-1"}}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"7"}},{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"0"}}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"-7"}},{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"2"}}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"kind":"list"}},"parameters":[],"result":{"element":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"kind":"list"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":[]}],"name":"fixed_checked_signed_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"127"}},{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"1"}}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"100"}},{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"27"}}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"-128"}},{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"1"}}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"-64"}},{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"2"}}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"16"}},{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"16"}}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"-128"}}],"operation":{"kind":"checked_neg"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"5"}}],"operation":{"kind":"checked_neg"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"-128"}},{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"-1"}}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"7"}},{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"0"}}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"-7"}},{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"2"}}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"kind":"list"}},"parameters":[],"result":{"element":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"kind":"list"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/fixed-checked-signed/provenance.json b/compiler/rust/rust-std/fixed-checked-signed/provenance.json index a4744f309..10bd55cb6 100644 --- a/compiler/rust/rust-std/fixed-checked-signed/provenance.json +++ b/compiler/rust/rust-std/fixed-checked-signed/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"4964e71a361318314437bb557b92bbfb39faac25f1e67555316f7f10e993811b","src/lib.rs":"d57c8b8ca18aa96b1cf4b88d8895939a4e3f1487e5eecf66bf29787452801c32"},"name":"fixed_checked_signed_std","profile":"rust-std","program":"9f5fded1de374e8c05f3da2df5057e3c1f4648b06ed06dae7f3940179f3bea93","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"4964e71a361318314437bb557b92bbfb39faac25f1e67555316f7f10e993811b","src/lib.rs":"d57c8b8ca18aa96b1cf4b88d8895939a4e3f1487e5eecf66bf29787452801c32"},"name":"fixed_checked_signed_std","profile":"rust-std","program":"9f5fded1de374e8c05f3da2df5057e3c1f4648b06ed06dae7f3940179f3bea93","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/fixed-checked-wide/package.json b/compiler/rust/rust-std/fixed-checked-wide/package.json index 987e47a27..cafd66e44 100644 --- a/compiler/rust/rust-std/fixed-checked-wide/package.json +++ b/compiler/rust/rust-std/fixed-checked-wide/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":[]}],"name":"fixed_checked_wide_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i64"},"value":{"kind":"i64","value":"9223372036854775807"}},{"kind":"value","type":{"kind":"fixed","width":"i64"},"value":{"kind":"i64","value":"1"}}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i64"},"value":{"kind":"i64","value":"-9223372036854775808"}},{"kind":"value","type":{"kind":"fixed","width":"i64"},"value":{"kind":"i64","value":"1"}}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i64"},"value":{"kind":"i64","value":"-9223372036854775808"}},{"kind":"value","type":{"kind":"fixed","width":"i64"},"value":{"kind":"i64","value":"-1"}}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i64"},"value":{"kind":"i64","value":"-3037000499"}},{"kind":"value","type":{"kind":"fixed","width":"i64"},"value":{"kind":"i64","value":"3037000499"}}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i64"},"value":{"kind":"i64","value":"-9223372036854775808"}},{"kind":"value","type":{"kind":"fixed","width":"i64"},"value":{"kind":"i64","value":"-1"}}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i64"},"value":{"kind":"i64","value":"-9223372036854775808"}},{"kind":"value","type":{"kind":"fixed","width":"i64"},"value":{"kind":"i64","value":"7"}}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i64"},"value":{"kind":"i64","value":"-9223372036854775808"}}],"operation":{"kind":"checked_neg"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"kind":"list"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u64"},"value":{"kind":"u64","value":"18446744073709551615"}},{"kind":"value","type":{"kind":"fixed","width":"u64"},"value":{"kind":"u64","value":"1"}}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u64"},"value":{"kind":"u64","value":"0"}},{"kind":"value","type":{"kind":"fixed","width":"u64"},"value":{"kind":"u64","value":"1"}}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u64"},"value":{"kind":"u64","value":"4294967296"}},{"kind":"value","type":{"kind":"fixed","width":"u64"},"value":{"kind":"u64","value":"4294967296"}}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u64"},"value":{"kind":"u64","value":"4294967295"}},{"kind":"value","type":{"kind":"fixed","width":"u64"},"value":{"kind":"u64","value":"4294967297"}}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u64"},"value":{"kind":"u64","value":"18446744073709551615"}},{"kind":"value","type":{"kind":"fixed","width":"u64"},"value":{"kind":"u64","value":"16"}}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"kind":"list"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"kind":"list"},"right":{"element":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"kind":"list"}}},"parameters":[],"result":{"kind":"pair","left":{"element":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"kind":"list"},"right":{"element":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"kind":"list"}},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":[]}],"name":"fixed_checked_wide_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i64"},"value":{"kind":"i64","value":"9223372036854775807"}},{"kind":"value","type":{"kind":"fixed","width":"i64"},"value":{"kind":"i64","value":"1"}}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i64"},"value":{"kind":"i64","value":"-9223372036854775808"}},{"kind":"value","type":{"kind":"fixed","width":"i64"},"value":{"kind":"i64","value":"1"}}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i64"},"value":{"kind":"i64","value":"-9223372036854775808"}},{"kind":"value","type":{"kind":"fixed","width":"i64"},"value":{"kind":"i64","value":"-1"}}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i64"},"value":{"kind":"i64","value":"-3037000499"}},{"kind":"value","type":{"kind":"fixed","width":"i64"},"value":{"kind":"i64","value":"3037000499"}}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i64"},"value":{"kind":"i64","value":"-9223372036854775808"}},{"kind":"value","type":{"kind":"fixed","width":"i64"},"value":{"kind":"i64","value":"-1"}}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i64"},"value":{"kind":"i64","value":"-9223372036854775808"}},{"kind":"value","type":{"kind":"fixed","width":"i64"},"value":{"kind":"i64","value":"7"}}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i64"},"value":{"kind":"i64","value":"-9223372036854775808"}}],"operation":{"kind":"checked_neg"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"kind":"list"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u64"},"value":{"kind":"u64","value":"18446744073709551615"}},{"kind":"value","type":{"kind":"fixed","width":"u64"},"value":{"kind":"u64","value":"1"}}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u64"},"value":{"kind":"u64","value":"0"}},{"kind":"value","type":{"kind":"fixed","width":"u64"},"value":{"kind":"u64","value":"1"}}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u64"},"value":{"kind":"u64","value":"4294967296"}},{"kind":"value","type":{"kind":"fixed","width":"u64"},"value":{"kind":"u64","value":"4294967296"}}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u64"},"value":{"kind":"u64","value":"4294967295"}},{"kind":"value","type":{"kind":"fixed","width":"u64"},"value":{"kind":"u64","value":"4294967297"}}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u64"},"value":{"kind":"u64","value":"18446744073709551615"}},{"kind":"value","type":{"kind":"fixed","width":"u64"},"value":{"kind":"u64","value":"16"}}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"kind":"list"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"kind":"list"},"right":{"element":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"kind":"list"}}},"parameters":[],"result":{"kind":"pair","left":{"element":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"kind":"list"},"right":{"element":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"kind":"list"}},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/fixed-checked-wide/provenance.json b/compiler/rust/rust-std/fixed-checked-wide/provenance.json index 2e0f345b4..cc2469fb0 100644 --- a/compiler/rust/rust-std/fixed-checked-wide/provenance.json +++ b/compiler/rust/rust-std/fixed-checked-wide/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"b12ee21dde2e598d2f7df74efab7b21048a8aeb5d06d664f2cf68179f108f9e4","src/lib.rs":"c5341c261169122a9d2e7dee4534ea00e07636647a7fa986a3b84d7472cad1d5"},"name":"fixed_checked_wide_std","profile":"rust-std","program":"a7dd87527d7b8a8f41e5ceb6fe7da703c570fd388f042f5977421e66fb77f2f8","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"b12ee21dde2e598d2f7df74efab7b21048a8aeb5d06d664f2cf68179f108f9e4","src/lib.rs":"c5341c261169122a9d2e7dee4534ea00e07636647a7fa986a3b84d7472cad1d5"},"name":"fixed_checked_wide_std","profile":"rust-std","program":"a7dd87527d7b8a8f41e5ceb6fe7da703c570fd388f042f5977421e66fb77f2f8","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/fixed-decimal-i16/package.json b/compiler/rust/rust-std/fixed-decimal-i16/package.json index 626e8f052..781a6fe81 100644 --- a/compiler/rust/rust-std/fixed-decimal-i16/package.json +++ b/compiler/rust/rust-std/fixed-decimal-i16/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"fixed_decimal_i16_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"format_decimal"}},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"parse_decimal","target":{"kind":"fixed","width":"i16"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"option","value":{"kind":"fixed","width":"i16"}}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"option","value":{"kind":"fixed","width":"i16"}}},"types":[{"kind":"fixed","width":"i16"},{"kind":"string"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"fixed_decimal_i16_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"format_decimal"}},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"parse_decimal","target":{"kind":"fixed","width":"i16"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"option","value":{"kind":"fixed","width":"i16"}}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"option","value":{"kind":"fixed","width":"i16"}}},"types":[{"kind":"fixed","width":"i16"},{"kind":"string"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/fixed-decimal-i16/provenance.json b/compiler/rust/rust-std/fixed-decimal-i16/provenance.json index 42b159cd3..424ed1797 100644 --- a/compiler/rust/rust-std/fixed-decimal-i16/provenance.json +++ b/compiler/rust/rust-std/fixed-decimal-i16/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"a59d41814aa524370e84433f7d33372cab7324ce572f8f096477f475432a8d33","src/lib.rs":"6ea4209d9311ec748dfb89582c9ca3a1ce94bb31c850a7408332d64cc8e3d19f"},"name":"fixed_decimal_i16_std","profile":"rust-std","program":"89b37d79a3be04d78ab73a737c875066a8b6015505ff7d08345f978955598638","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"a59d41814aa524370e84433f7d33372cab7324ce572f8f096477f475432a8d33","src/lib.rs":"6ea4209d9311ec748dfb89582c9ca3a1ce94bb31c850a7408332d64cc8e3d19f"},"name":"fixed_decimal_i16_std","profile":"rust-std","program":"89b37d79a3be04d78ab73a737c875066a8b6015505ff7d08345f978955598638","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/fixed-decimal-i32/package.json b/compiler/rust/rust-std/fixed-decimal-i32/package.json index 62964c201..1fb8c02a2 100644 --- a/compiler/rust/rust-std/fixed-decimal-i32/package.json +++ b/compiler/rust/rust-std/fixed-decimal-i32/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"fixed_decimal_i32_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"format_decimal"}},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"parse_decimal","target":{"kind":"fixed","width":"i32"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"option","value":{"kind":"fixed","width":"i32"}}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"option","value":{"kind":"fixed","width":"i32"}}},"types":[{"kind":"fixed","width":"i32"},{"kind":"string"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"fixed_decimal_i32_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"format_decimal"}},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"parse_decimal","target":{"kind":"fixed","width":"i32"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"option","value":{"kind":"fixed","width":"i32"}}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"option","value":{"kind":"fixed","width":"i32"}}},"types":[{"kind":"fixed","width":"i32"},{"kind":"string"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/fixed-decimal-i32/provenance.json b/compiler/rust/rust-std/fixed-decimal-i32/provenance.json index 135ca1fb4..2580b2ba9 100644 --- a/compiler/rust/rust-std/fixed-decimal-i32/provenance.json +++ b/compiler/rust/rust-std/fixed-decimal-i32/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"6588c07da677119bd26c26a1eba39e8f490e5e0834e2744e4157b9e818a5ea04","src/lib.rs":"522dd2bf570a358a252a34f712a1bca3eac9e735ea192160d646963cf261cde3"},"name":"fixed_decimal_i32_std","profile":"rust-std","program":"c82e9607bcb2b657ef8a24e7eee7b6eb956668a53f03f6ee5b40f5789e511dfd","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"6588c07da677119bd26c26a1eba39e8f490e5e0834e2744e4157b9e818a5ea04","src/lib.rs":"522dd2bf570a358a252a34f712a1bca3eac9e735ea192160d646963cf261cde3"},"name":"fixed_decimal_i32_std","profile":"rust-std","program":"c82e9607bcb2b657ef8a24e7eee7b6eb956668a53f03f6ee5b40f5789e511dfd","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/fixed-decimal-i64/package.json b/compiler/rust/rust-std/fixed-decimal-i64/package.json index 9f2b00b14..639039bea 100644 --- a/compiler/rust/rust-std/fixed-decimal-i64/package.json +++ b/compiler/rust/rust-std/fixed-decimal-i64/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"fixed_decimal_i64_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"format_decimal"}},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"parse_decimal","target":{"kind":"fixed","width":"i64"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"option","value":{"kind":"fixed","width":"i64"}}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"option","value":{"kind":"fixed","width":"i64"}}},"types":[{"kind":"fixed","width":"i64"},{"kind":"string"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"fixed_decimal_i64_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"format_decimal"}},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"parse_decimal","target":{"kind":"fixed","width":"i64"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"option","value":{"kind":"fixed","width":"i64"}}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"option","value":{"kind":"fixed","width":"i64"}}},"types":[{"kind":"fixed","width":"i64"},{"kind":"string"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/fixed-decimal-i64/provenance.json b/compiler/rust/rust-std/fixed-decimal-i64/provenance.json index 9f111fc97..86ea556b0 100644 --- a/compiler/rust/rust-std/fixed-decimal-i64/provenance.json +++ b/compiler/rust/rust-std/fixed-decimal-i64/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"6249ebde29c7bf618a1221eacd8f2dcbcf2f42eaf2a9688a3ffa9fec5288c829","src/lib.rs":"62401bb3dac69e30842c0cebd580ff360d7cc3dc09c81c99fe128817a5a7f039"},"name":"fixed_decimal_i64_std","profile":"rust-std","program":"785d836fa54d435e12beb5276622ea28adae2cee3ba08424c06eea5aab25ba29","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"6249ebde29c7bf618a1221eacd8f2dcbcf2f42eaf2a9688a3ffa9fec5288c829","src/lib.rs":"62401bb3dac69e30842c0cebd580ff360d7cc3dc09c81c99fe128817a5a7f039"},"name":"fixed_decimal_i64_std","profile":"rust-std","program":"785d836fa54d435e12beb5276622ea28adae2cee3ba08424c06eea5aab25ba29","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/fixed-decimal-i8/package.json b/compiler/rust/rust-std/fixed-decimal-i8/package.json index e68ddfe03..2a7044b2c 100644 --- a/compiler/rust/rust-std/fixed-decimal-i8/package.json +++ b/compiler/rust/rust-std/fixed-decimal-i8/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"fixed_decimal_i8_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"format_decimal"}},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"parse_decimal","target":{"kind":"fixed","width":"i8"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"option","value":{"kind":"fixed","width":"i8"}}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"option","value":{"kind":"fixed","width":"i8"}}},"types":[{"kind":"fixed","width":"i8"},{"kind":"string"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"fixed_decimal_i8_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"format_decimal"}},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"parse_decimal","target":{"kind":"fixed","width":"i8"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"option","value":{"kind":"fixed","width":"i8"}}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"option","value":{"kind":"fixed","width":"i8"}}},"types":[{"kind":"fixed","width":"i8"},{"kind":"string"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/fixed-decimal-i8/provenance.json b/compiler/rust/rust-std/fixed-decimal-i8/provenance.json index 666a5a38b..64c0e7021 100644 --- a/compiler/rust/rust-std/fixed-decimal-i8/provenance.json +++ b/compiler/rust/rust-std/fixed-decimal-i8/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"4a405fe7ecb7b3b184653f976db65e74d29ec3c4beae0232fab83fe1e664f1ea","src/lib.rs":"48a11400a02155faf4c2145ed34925458d901ceaa7eeb182af46817ebeac723b"},"name":"fixed_decimal_i8_std","profile":"rust-std","program":"14a60e07970669a503125f5b991dfb159f254255caa1497e52d9abb25c61de84","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"4a405fe7ecb7b3b184653f976db65e74d29ec3c4beae0232fab83fe1e664f1ea","src/lib.rs":"48a11400a02155faf4c2145ed34925458d901ceaa7eeb182af46817ebeac723b"},"name":"fixed_decimal_i8_std","profile":"rust-std","program":"14a60e07970669a503125f5b991dfb159f254255caa1497e52d9abb25c61de84","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/fixed-decimal-u16/package.json b/compiler/rust/rust-std/fixed-decimal-u16/package.json index da75066e2..483a800c8 100644 --- a/compiler/rust/rust-std/fixed-decimal-u16/package.json +++ b/compiler/rust/rust-std/fixed-decimal-u16/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"fixed_decimal_u16_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"format_decimal"}},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"parse_decimal","target":{"kind":"fixed","width":"u16"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"option","value":{"kind":"fixed","width":"u16"}}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"option","value":{"kind":"fixed","width":"u16"}}},"types":[{"kind":"fixed","width":"u16"},{"kind":"string"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"fixed_decimal_u16_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"format_decimal"}},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"parse_decimal","target":{"kind":"fixed","width":"u16"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"option","value":{"kind":"fixed","width":"u16"}}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"option","value":{"kind":"fixed","width":"u16"}}},"types":[{"kind":"fixed","width":"u16"},{"kind":"string"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/fixed-decimal-u16/provenance.json b/compiler/rust/rust-std/fixed-decimal-u16/provenance.json index 91bb61dd4..942196bfb 100644 --- a/compiler/rust/rust-std/fixed-decimal-u16/provenance.json +++ b/compiler/rust/rust-std/fixed-decimal-u16/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"21e8c7595089e11ff728aac7ebb0bb09602e02b6513fb4e90dc6346e3e4af84f","src/lib.rs":"7b4595b5e02b9e307668b4ec4d3e139d76ccc5550767f09aa00c714dd7432cd6"},"name":"fixed_decimal_u16_std","profile":"rust-std","program":"f1a32f6ce00adfb60b0c9f4c5069d16f9fc4887d5cd07876af1c9918f998d21a","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"21e8c7595089e11ff728aac7ebb0bb09602e02b6513fb4e90dc6346e3e4af84f","src/lib.rs":"7b4595b5e02b9e307668b4ec4d3e139d76ccc5550767f09aa00c714dd7432cd6"},"name":"fixed_decimal_u16_std","profile":"rust-std","program":"f1a32f6ce00adfb60b0c9f4c5069d16f9fc4887d5cd07876af1c9918f998d21a","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/fixed-decimal-u32/package.json b/compiler/rust/rust-std/fixed-decimal-u32/package.json index 9ac376685..a7190afd0 100644 --- a/compiler/rust/rust-std/fixed-decimal-u32/package.json +++ b/compiler/rust/rust-std/fixed-decimal-u32/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"fixed_decimal_u32_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"format_decimal"}},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"parse_decimal","target":{"kind":"fixed","width":"u32"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"option","value":{"kind":"fixed","width":"u32"}}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"option","value":{"kind":"fixed","width":"u32"}}},"types":[{"kind":"fixed","width":"u32"},{"kind":"string"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"fixed_decimal_u32_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"format_decimal"}},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"parse_decimal","target":{"kind":"fixed","width":"u32"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"option","value":{"kind":"fixed","width":"u32"}}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"option","value":{"kind":"fixed","width":"u32"}}},"types":[{"kind":"fixed","width":"u32"},{"kind":"string"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/fixed-decimal-u32/provenance.json b/compiler/rust/rust-std/fixed-decimal-u32/provenance.json index 25a981ea2..bc7014bb6 100644 --- a/compiler/rust/rust-std/fixed-decimal-u32/provenance.json +++ b/compiler/rust/rust-std/fixed-decimal-u32/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"adc66c6240acbd13cd6d2f31d3a5187f2a97773e864635bb1fb41f73e73bd75f","src/lib.rs":"fa4904b35271fd7bc08c7a6a1a8efdcc59359821fe1cc8222488bd8aa8664d47"},"name":"fixed_decimal_u32_std","profile":"rust-std","program":"bb8e626dc5598c29492979bc05547188e293b3a89987a866d6f7b5cbde14fa30","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"adc66c6240acbd13cd6d2f31d3a5187f2a97773e864635bb1fb41f73e73bd75f","src/lib.rs":"fa4904b35271fd7bc08c7a6a1a8efdcc59359821fe1cc8222488bd8aa8664d47"},"name":"fixed_decimal_u32_std","profile":"rust-std","program":"bb8e626dc5598c29492979bc05547188e293b3a89987a866d6f7b5cbde14fa30","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/fixed-decimal-u64/package.json b/compiler/rust/rust-std/fixed-decimal-u64/package.json index 475a0ca1a..a3900bbe8 100644 --- a/compiler/rust/rust-std/fixed-decimal-u64/package.json +++ b/compiler/rust/rust-std/fixed-decimal-u64/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"fixed_decimal_u64_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"format_decimal"}},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"parse_decimal","target":{"kind":"fixed","width":"u64"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"option","value":{"kind":"fixed","width":"u64"}}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"option","value":{"kind":"fixed","width":"u64"}}},"types":[{"kind":"fixed","width":"u64"},{"kind":"string"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"fixed_decimal_u64_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"format_decimal"}},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"parse_decimal","target":{"kind":"fixed","width":"u64"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"option","value":{"kind":"fixed","width":"u64"}}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"option","value":{"kind":"fixed","width":"u64"}}},"types":[{"kind":"fixed","width":"u64"},{"kind":"string"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/fixed-decimal-u64/provenance.json b/compiler/rust/rust-std/fixed-decimal-u64/provenance.json index 283275b60..d64f54408 100644 --- a/compiler/rust/rust-std/fixed-decimal-u64/provenance.json +++ b/compiler/rust/rust-std/fixed-decimal-u64/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"f32638b5b0e4c7880f7e3825207ed5be713ff9ee28078dfecdc0733610a25fb7","src/lib.rs":"037401fb04368ce8cbfab87738220f41338f1297ae230272af61a1955af1d4fc"},"name":"fixed_decimal_u64_std","profile":"rust-std","program":"5ae83fff2b2b4e34046e3dc348d93ee8db42c5bfe95f4cdce6f67ef2808a6d3c","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"f32638b5b0e4c7880f7e3825207ed5be713ff9ee28078dfecdc0733610a25fb7","src/lib.rs":"037401fb04368ce8cbfab87738220f41338f1297ae230272af61a1955af1d4fc"},"name":"fixed_decimal_u64_std","profile":"rust-std","program":"5ae83fff2b2b4e34046e3dc348d93ee8db42c5bfe95f4cdce6f67ef2808a6d3c","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/fixed-decimal-u8/package.json b/compiler/rust/rust-std/fixed-decimal-u8/package.json index 52bc9ca62..6fb645535 100644 --- a/compiler/rust/rust-std/fixed-decimal-u8/package.json +++ b/compiler/rust/rust-std/fixed-decimal-u8/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"fixed_decimal_u8_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"format_decimal"}},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"parse_decimal","target":{"kind":"fixed","width":"u8"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"option","value":{"kind":"fixed","width":"u8"}}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"option","value":{"kind":"fixed","width":"u8"}}},"types":[{"kind":"fixed","width":"u8"},{"kind":"string"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"fixed_decimal_u8_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"format_decimal"}},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"parse_decimal","target":{"kind":"fixed","width":"u8"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"option","value":{"kind":"fixed","width":"u8"}}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"option","value":{"kind":"fixed","width":"u8"}}},"types":[{"kind":"fixed","width":"u8"},{"kind":"string"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/fixed-decimal-u8/provenance.json b/compiler/rust/rust-std/fixed-decimal-u8/provenance.json index b2015f890..45337cd38 100644 --- a/compiler/rust/rust-std/fixed-decimal-u8/provenance.json +++ b/compiler/rust/rust-std/fixed-decimal-u8/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"5cf821591b25b595bfb765eef85ae77e20e0da9fb292ef3ceff8cc0cf3b0c530","src/lib.rs":"0b01c22de8dcd4d1f7d02e13a14f753b89af89f749450dc864c75dac2c330f96"},"name":"fixed_decimal_u8_std","profile":"rust-std","program":"e6b650c8e38c51cacdff8d110e4d9583226d457160f3dd2ba10bb725f9a2d751","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"5cf821591b25b595bfb765eef85ae77e20e0da9fb292ef3ceff8cc0cf3b0c530","src/lib.rs":"0b01c22de8dcd4d1f7d02e13a14f753b89af89f749450dc864c75dac2c330f96"},"name":"fixed_decimal_u8_std","profile":"rust-std","program":"e6b650c8e38c51cacdff8d110e4d9583226d457160f3dd2ba10bb725f9a2d751","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/fixed-width-i16/package.json b/compiler/rust/rust-std/fixed-width-i16/package.json index 6b5b0d029..74002e02a 100644 --- a/compiler/rust/rust-std/fixed-width-i16/package.json +++ b/compiler/rust/rust-std/fixed-width-i16/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"fixed_width_i16_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"checked_neg"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_xor"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"bit_not"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2}],"operation":{"kind":"shift_right"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"16"}}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"300"}}],"operation":{"kind":"convert","target":"i16"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"equal"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"compare"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}},"types":[{"kind":"fixed","width":"i16"},{"kind":"fixed","width":"i16"},{"kind":"fixed","width":"u32"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"fixed_width_i16_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"checked_neg"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_xor"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"bit_not"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2}],"operation":{"kind":"shift_right"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"16"}}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"300"}}],"operation":{"kind":"convert","target":"i16"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"equal"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"compare"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}},"types":[{"kind":"fixed","width":"i16"},{"kind":"fixed","width":"i16"},{"kind":"fixed","width":"u32"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/fixed-width-i16/provenance.json b/compiler/rust/rust-std/fixed-width-i16/provenance.json index 34f36d0ce..2db327516 100644 --- a/compiler/rust/rust-std/fixed-width-i16/provenance.json +++ b/compiler/rust/rust-std/fixed-width-i16/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"ac3e941463beedf8f36065be8c6bc2dab16ae4493e1b932b25021d45792f9bb5","src/lib.rs":"0fe14e563b17aa0e7023ec82925f8461eb64c0d8b7e8cd81b6d78bbb01d375b2"},"name":"fixed_width_i16_std","profile":"rust-std","program":"23f1a6e3b665ccabf568dce2bcfd6ca2247170568ae24f097dc9f260f0d2369e","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"ac3e941463beedf8f36065be8c6bc2dab16ae4493e1b932b25021d45792f9bb5","src/lib.rs":"0fe14e563b17aa0e7023ec82925f8461eb64c0d8b7e8cd81b6d78bbb01d375b2"},"name":"fixed_width_i16_std","profile":"rust-std","program":"23f1a6e3b665ccabf568dce2bcfd6ca2247170568ae24f097dc9f260f0d2369e","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/fixed-width-i32/package.json b/compiler/rust/rust-std/fixed-width-i32/package.json index 12c30c796..33f3a9505 100644 --- a/compiler/rust/rust-std/fixed-width-i32/package.json +++ b/compiler/rust/rust-std/fixed-width-i32/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"fixed_width_i32_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"checked_neg"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_xor"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"bit_not"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2}],"operation":{"kind":"shift_right"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"32"}}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"300"}}],"operation":{"kind":"convert","target":"i32"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"equal"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"compare"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}},"types":[{"kind":"fixed","width":"i32"},{"kind":"fixed","width":"i32"},{"kind":"fixed","width":"u32"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"fixed_width_i32_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"checked_neg"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_xor"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"bit_not"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2}],"operation":{"kind":"shift_right"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"32"}}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"300"}}],"operation":{"kind":"convert","target":"i32"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"equal"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"compare"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}},"types":[{"kind":"fixed","width":"i32"},{"kind":"fixed","width":"i32"},{"kind":"fixed","width":"u32"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/fixed-width-i32/provenance.json b/compiler/rust/rust-std/fixed-width-i32/provenance.json index 8a963bd70..808c22e08 100644 --- a/compiler/rust/rust-std/fixed-width-i32/provenance.json +++ b/compiler/rust/rust-std/fixed-width-i32/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"6582666bf5c49fdb65bcb1ac6fd4bc1231bad9b5048bb365a05bd3de00fb3c07","src/lib.rs":"801b1676ee623f1037e12fa29dcbdbe7cf2a07e6ea19d20cdf48885bd63f51b7"},"name":"fixed_width_i32_std","profile":"rust-std","program":"a55c0f3839fd471d83e04fe51ad076da864407a9027bc8225331cb1e562880ee","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"6582666bf5c49fdb65bcb1ac6fd4bc1231bad9b5048bb365a05bd3de00fb3c07","src/lib.rs":"801b1676ee623f1037e12fa29dcbdbe7cf2a07e6ea19d20cdf48885bd63f51b7"},"name":"fixed_width_i32_std","profile":"rust-std","program":"a55c0f3839fd471d83e04fe51ad076da864407a9027bc8225331cb1e562880ee","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/fixed-width-i64/package.json b/compiler/rust/rust-std/fixed-width-i64/package.json index 53fe950b0..db99abf1d 100644 --- a/compiler/rust/rust-std/fixed-width-i64/package.json +++ b/compiler/rust/rust-std/fixed-width-i64/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"fixed_width_i64_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"checked_neg"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_xor"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"bit_not"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2}],"operation":{"kind":"shift_right"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"64"}}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"300"}}],"operation":{"kind":"convert","target":"i64"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"equal"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"compare"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}},"types":[{"kind":"fixed","width":"i64"},{"kind":"fixed","width":"i64"},{"kind":"fixed","width":"u32"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"fixed_width_i64_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"checked_neg"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_xor"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"bit_not"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2}],"operation":{"kind":"shift_right"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"64"}}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"300"}}],"operation":{"kind":"convert","target":"i64"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"equal"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"compare"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}},"types":[{"kind":"fixed","width":"i64"},{"kind":"fixed","width":"i64"},{"kind":"fixed","width":"u32"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/fixed-width-i64/provenance.json b/compiler/rust/rust-std/fixed-width-i64/provenance.json index 2860b7346..a7ff88a8e 100644 --- a/compiler/rust/rust-std/fixed-width-i64/provenance.json +++ b/compiler/rust/rust-std/fixed-width-i64/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"cde911b169deaabeb45fab6fdda2b9f2eae776b91ee419c40331bfd5812c48af","src/lib.rs":"6a9ed2eead6111996e8e87e37bf6c127e4f488885243f5b4d71961ce3d252efa"},"name":"fixed_width_i64_std","profile":"rust-std","program":"bf6c9acc0c25eb22d8c1deb59574ad70d65f06123c556ed17e1b7c5bbc5aa902","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"cde911b169deaabeb45fab6fdda2b9f2eae776b91ee419c40331bfd5812c48af","src/lib.rs":"6a9ed2eead6111996e8e87e37bf6c127e4f488885243f5b4d71961ce3d252efa"},"name":"fixed_width_i64_std","profile":"rust-std","program":"bf6c9acc0c25eb22d8c1deb59574ad70d65f06123c556ed17e1b7c5bbc5aa902","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/fixed-width-i8/package.json b/compiler/rust/rust-std/fixed-width-i8/package.json index 5ca5cc714..6e0cf8cfd 100644 --- a/compiler/rust/rust-std/fixed-width-i8/package.json +++ b/compiler/rust/rust-std/fixed-width-i8/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"fixed_width_i8_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"checked_neg"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_xor"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"bit_not"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2}],"operation":{"kind":"shift_right"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"8"}}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"300"}}],"operation":{"kind":"convert","target":"i8"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"equal"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"compare"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}},"types":[{"kind":"fixed","width":"i8"},{"kind":"fixed","width":"i8"},{"kind":"fixed","width":"u32"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"fixed_width_i8_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"checked_neg"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_xor"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"bit_not"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2}],"operation":{"kind":"shift_right"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"8"}}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"300"}}],"operation":{"kind":"convert","target":"i8"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"equal"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"compare"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}},"types":[{"kind":"fixed","width":"i8"},{"kind":"fixed","width":"i8"},{"kind":"fixed","width":"u32"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/fixed-width-i8/provenance.json b/compiler/rust/rust-std/fixed-width-i8/provenance.json index aba80e011..cf3ff1ff3 100644 --- a/compiler/rust/rust-std/fixed-width-i8/provenance.json +++ b/compiler/rust/rust-std/fixed-width-i8/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"0d77a1e1b8ac41d3b057dfd7e202ecc9ce54669755cbdb58c61e4a9e92e37eeb","src/lib.rs":"e4b66e46b712ccf3e6c6153a6ed2978ba817eda5b0f9e561fade6d5c4d5cadbb"},"name":"fixed_width_i8_std","profile":"rust-std","program":"d57d16e24c0ae93fc46223897266514db7bf77781397039e12b9f8781e3b6631","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"0d77a1e1b8ac41d3b057dfd7e202ecc9ce54669755cbdb58c61e4a9e92e37eeb","src/lib.rs":"e4b66e46b712ccf3e6c6153a6ed2978ba817eda5b0f9e561fade6d5c4d5cadbb"},"name":"fixed_width_i8_std","profile":"rust-std","program":"d57d16e24c0ae93fc46223897266514db7bf77781397039e12b9f8781e3b6631","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/fixed-width-u16/package.json b/compiler/rust/rust-std/fixed-width-u16/package.json index 738b1d24c..9fd05561c 100644 --- a/compiler/rust/rust-std/fixed-width-u16/package.json +++ b/compiler/rust/rust-std/fixed-width-u16/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"fixed_width_u16_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_xor"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"bit_not"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2}],"operation":{"kind":"shift_right"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"16"}}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"300"}}],"operation":{"kind":"convert","target":"u16"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"equal"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"compare"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}},"types":[{"kind":"fixed","width":"u16"},{"kind":"fixed","width":"u16"},{"kind":"fixed","width":"u32"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"fixed_width_u16_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_xor"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"bit_not"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2}],"operation":{"kind":"shift_right"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"16"}}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"300"}}],"operation":{"kind":"convert","target":"u16"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"equal"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"compare"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}},"types":[{"kind":"fixed","width":"u16"},{"kind":"fixed","width":"u16"},{"kind":"fixed","width":"u32"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/fixed-width-u16/provenance.json b/compiler/rust/rust-std/fixed-width-u16/provenance.json index 23978746d..fba48def6 100644 --- a/compiler/rust/rust-std/fixed-width-u16/provenance.json +++ b/compiler/rust/rust-std/fixed-width-u16/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"9f5d626f7aa7566339d1b44ae264c3fb6fa6c4aa24d381558907e415a6176e2e","src/lib.rs":"b16bf3ba972a1fa7386094b346da2d58c0b8a70a3dda08668da9332b063df634"},"name":"fixed_width_u16_std","profile":"rust-std","program":"9b805d1f67c7b7fa48388bf6b3921d64f311b660e5894d4c4ad299390f0ef380","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"9f5d626f7aa7566339d1b44ae264c3fb6fa6c4aa24d381558907e415a6176e2e","src/lib.rs":"b16bf3ba972a1fa7386094b346da2d58c0b8a70a3dda08668da9332b063df634"},"name":"fixed_width_u16_std","profile":"rust-std","program":"9b805d1f67c7b7fa48388bf6b3921d64f311b660e5894d4c4ad299390f0ef380","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/fixed-width-u32/package.json b/compiler/rust/rust-std/fixed-width-u32/package.json index 4d72f0783..00f29e240 100644 --- a/compiler/rust/rust-std/fixed-width-u32/package.json +++ b/compiler/rust/rust-std/fixed-width-u32/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"fixed_width_u32_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_xor"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"bit_not"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2}],"operation":{"kind":"shift_right"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"32"}}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"300"}}],"operation":{"kind":"convert","target":"u32"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"equal"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"compare"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}},"types":[{"kind":"fixed","width":"u32"},{"kind":"fixed","width":"u32"},{"kind":"fixed","width":"u32"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"fixed_width_u32_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_xor"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"bit_not"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2}],"operation":{"kind":"shift_right"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"32"}}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"300"}}],"operation":{"kind":"convert","target":"u32"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"equal"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"compare"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u32"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}},"types":[{"kind":"fixed","width":"u32"},{"kind":"fixed","width":"u32"},{"kind":"fixed","width":"u32"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/fixed-width-u32/provenance.json b/compiler/rust/rust-std/fixed-width-u32/provenance.json index f833bdee2..c2032ff3e 100644 --- a/compiler/rust/rust-std/fixed-width-u32/provenance.json +++ b/compiler/rust/rust-std/fixed-width-u32/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"2a6cff29ea67e59a4eedd7ae9b392f9b5a161aa68a1063c3e41170125f48d60e","src/lib.rs":"1adbe48dbd2f66a6210fd75661c391a42326fadc9a9eff950750ad9d6c8da9bb"},"name":"fixed_width_u32_std","profile":"rust-std","program":"b0d32e1ba47aad96742baed7ac5cc12f337d84e7d478c3d00ed0992be2861fe1","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"2a6cff29ea67e59a4eedd7ae9b392f9b5a161aa68a1063c3e41170125f48d60e","src/lib.rs":"1adbe48dbd2f66a6210fd75661c391a42326fadc9a9eff950750ad9d6c8da9bb"},"name":"fixed_width_u32_std","profile":"rust-std","program":"b0d32e1ba47aad96742baed7ac5cc12f337d84e7d478c3d00ed0992be2861fe1","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/fixed-width-u64/package.json b/compiler/rust/rust-std/fixed-width-u64/package.json index a9926b4c1..527a04b43 100644 --- a/compiler/rust/rust-std/fixed-width-u64/package.json +++ b/compiler/rust/rust-std/fixed-width-u64/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"fixed_width_u64_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_xor"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"bit_not"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2}],"operation":{"kind":"shift_right"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"64"}}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"300"}}],"operation":{"kind":"convert","target":"u64"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"equal"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"compare"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}},"types":[{"kind":"fixed","width":"u64"},{"kind":"fixed","width":"u64"},{"kind":"fixed","width":"u32"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"fixed_width_u64_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_xor"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"bit_not"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2}],"operation":{"kind":"shift_right"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"64"}}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"300"}}],"operation":{"kind":"convert","target":"u64"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"equal"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"compare"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u64"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}},"types":[{"kind":"fixed","width":"u64"},{"kind":"fixed","width":"u64"},{"kind":"fixed","width":"u32"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/fixed-width-u64/provenance.json b/compiler/rust/rust-std/fixed-width-u64/provenance.json index fee34e966..7ddaa7e55 100644 --- a/compiler/rust/rust-std/fixed-width-u64/provenance.json +++ b/compiler/rust/rust-std/fixed-width-u64/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"ec73f29a9126ee2d49de7fc1ad07cd8266830795de2e25887e20b3c51bb0b6c0","src/lib.rs":"09e06b1818312060acbb808fc9cc7716b6851a6ea0b0018872cb92a8665e2354"},"name":"fixed_width_u64_std","profile":"rust-std","program":"d173c6c0813a7ca7f471cf3a55f2a25c4771bbeea58ca9cd42e5ee35e352fc43","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"ec73f29a9126ee2d49de7fc1ad07cd8266830795de2e25887e20b3c51bb0b6c0","src/lib.rs":"09e06b1818312060acbb808fc9cc7716b6851a6ea0b0018872cb92a8665e2354"},"name":"fixed_width_u64_std","profile":"rust-std","program":"d173c6c0813a7ca7f471cf3a55f2a25c4771bbeea58ca9cd42e5ee35e352fc43","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/fixed-width-u8-passing/package.json b/compiler/rust/rust-std/fixed-width-u8-passing/package.json index 65508bee7..b51167c93 100644 --- a/compiler/rust/rust-std/fixed-width-u8-passing/package.json +++ b/compiler/rust/rust-std/fixed-width-u8-passing/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["copy","borrow","own"]}],"name":"fixed_width_u8_passing_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_xor"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"bit_not"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2}],"operation":{"kind":"shift_right"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"8"}}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"300"}}],"operation":{"kind":"convert","target":"u8"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"equal"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"compare"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}},"types":[{"kind":"fixed","width":"u8"},{"kind":"fixed","width":"u8"},{"kind":"fixed","width":"u32"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["copy","borrow","own"]}],"name":"fixed_width_u8_passing_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_xor"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"bit_not"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2}],"operation":{"kind":"shift_right"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"8"}}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"300"}}],"operation":{"kind":"convert","target":"u8"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"equal"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"compare"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}},"types":[{"kind":"fixed","width":"u8"},{"kind":"fixed","width":"u8"},{"kind":"fixed","width":"u32"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/fixed-width-u8-passing/provenance.json b/compiler/rust/rust-std/fixed-width-u8-passing/provenance.json index 6d9acfa80..a02155366 100644 --- a/compiler/rust/rust-std/fixed-width-u8-passing/provenance.json +++ b/compiler/rust/rust-std/fixed-width-u8-passing/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"548ed7c45bd87abc6ff3a1939949401dbb6e6e30ac8975aa0f4b1778321f9855","src/lib.rs":"0370e79ec900b45a87a8d0e849cbb62900b547c3e9473a35d10cbf2a8bdad077"},"name":"fixed_width_u8_passing_std","profile":"rust-std","program":"10a50859bd6fdf829c844b5c4758a464f5524865ef0b64f63cf0e9bb838c1d8d","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"548ed7c45bd87abc6ff3a1939949401dbb6e6e30ac8975aa0f4b1778321f9855","src/lib.rs":"0370e79ec900b45a87a8d0e849cbb62900b547c3e9473a35d10cbf2a8bdad077"},"name":"fixed_width_u8_passing_std","profile":"rust-std","program":"10a50859bd6fdf829c844b5c4758a464f5524865ef0b64f63cf0e9bb838c1d8d","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/fixed-width-u8/package.json b/compiler/rust/rust-std/fixed-width-u8/package.json index 1585087ac..ed9305fda 100644 --- a/compiler/rust/rust-std/fixed-width-u8/package.json +++ b/compiler/rust/rust-std/fixed-width-u8/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"fixed_width_u8_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_xor"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"bit_not"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2}],"operation":{"kind":"shift_right"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"8"}}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"300"}}],"operation":{"kind":"convert","target":"u8"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"equal"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"compare"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}},"types":[{"kind":"fixed","width":"u8"},{"kind":"fixed","width":"u8"},{"kind":"fixed","width":"u32"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"fixed_width_u8_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_xor"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"bit_not"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2}],"operation":{"kind":"shift_right"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"8"}}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"300"}}],"operation":{"kind":"convert","target":"u8"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"equal"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"compare"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u8"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"ordering"}}}}}}}}}}}}}},"types":[{"kind":"fixed","width":"u8"},{"kind":"fixed","width":"u8"},{"kind":"fixed","width":"u32"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/fixed-width-u8/provenance.json b/compiler/rust/rust-std/fixed-width-u8/provenance.json index 62b705405..b57a1d508 100644 --- a/compiler/rust/rust-std/fixed-width-u8/provenance.json +++ b/compiler/rust/rust-std/fixed-width-u8/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"18452ebfe5322a5e89f00aff96f6358ea98f50af4e8d59f35f549aa2e332d92f","src/lib.rs":"f2ed99f614b9d9c0457bb15fc00a45e7ad8b49446b461d5ec33eac11646947e1"},"name":"fixed_width_u8_std","profile":"rust-std","program":"10a50859bd6fdf829c844b5c4758a464f5524865ef0b64f63cf0e9bb838c1d8d","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"18452ebfe5322a5e89f00aff96f6358ea98f50af4e8d59f35f549aa2e332d92f","src/lib.rs":"f2ed99f614b9d9c0457bb15fc00a45e7ad8b49446b461d5ec33eac11646947e1"},"name":"fixed_width_u8_std","profile":"rust-std","program":"10a50859bd6fdf829c844b5c4758a464f5524865ef0b64f63cf0e9bb838c1d8d","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/function-shapes/package.json b/compiler/rust/rust-std/function-shapes/package.json index 987402d7c..924ff07ba 100644 --- a/compiler/rust/rust-std/function-shapes/package.json +++ b/compiler/rust/rust-std/function-shapes/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":[]}],"name":"function_shapes_std","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"nat"},{"kind":"nat"}]]}],"functions":[{"body":{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"value","type":{"kind":"option","value":{"kind":"nat"}},"value":{"kind":"some","value":{"kind":"nat","value":"3"}}}]},{"kind":"build","operands":[{"function":2,"kind":"call","operands":[{"kind":"value","type":{"kind":"option","value":{"kind":"nat"}},"value":{"kind":"some","value":{"kind":"nat","value":"4"}}}]},{"kind":"build","operands":[{"function":3,"kind":"call","operands":[{"kind":"value","type":{"error":{"kind":"bool"},"kind":"result","ok":{"kind":"nat"}},"value":{"kind":"ok","value":{"kind":"nat","value":"5"}}}]},{"kind":"build","operands":[{"function":4,"kind":"call","operands":[{"kind":"value","type":{"kind":"option","value":{"kind":"nat"}},"value":{"kind":"none"}}]},{"kind":"build","operands":[{"function":5,"kind":"call","operands":[{"kind":"value","type":{"kind":"option","value":{"kind":"nat"}},"value":{"kind":"some","value":{"kind":"nat","value":"6"}}}]},{"kind":"build","operands":[{"function":6,"kind":"call","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"9"}}]},{"kind":"build","operands":[{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"bool"},"value":{"kind":"bool","value":false}}]},{"kind":"build","operands":[{"function":8,"kind":"call","operands":[{"kind":"value","type":{"index":0,"kind":"adt"},"value":{"constructor":0,"fields":[{"kind":"nat","value":"1"},{"kind":"nat","value":"2"}],"kind":"adt"}}]},{"function":9,"kind":"call","operands":[{"kind":"value","type":{"kind":"option","value":{"kind":"nat"}},"value":{"kind":"some","value":{"kind":"nat","value":"1"}}}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}}}}}},"parameters":[],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}}}}},"types":[]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[1],"body":{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"option","value":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[1],"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_sub"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"option","value":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[1],"body":{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"ok"}},{"binders":[2],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"error"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"error":{"kind":"bool"},"kind":"result","ok":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"none"}},{"binders":[1],"body":{"kind":"var","name":1},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"option","value":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"7"}},"shape":{"kind":"none"}},{"binders":[1],"body":{"kind":"var","name":1},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"option","value":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"kind":"var","name":1},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]},{"body":{"condition":{"kind":"var","name":0},"else_branch":{"condition":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"200"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"200"}}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"bool"}]},{"body":{"index":0,"kind":"field","value":{"arms":[{"binders":[1,2],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"var","name":1}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},"shape":{"constructor":0,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"index":0,"kind":"adt"}}},"parameters":[0],"result":{"kind":"nat"},"types":[{"index":0,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"function":10,"kind":"call","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}]},"shape":{"kind":"none"}},{"binders":[1],"body":{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"unit"}},"parameters":[0],"result":{"kind":"unit"},"types":[{"kind":"option","value":{"kind":"nat"}}]},{"body":{"body":{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"kind":"let","name":1,"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"unit"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":[]}],"name":"function_shapes_std","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"nat"},{"kind":"nat"}]]}],"functions":[{"body":{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"value","type":{"kind":"option","value":{"kind":"nat"}},"value":{"kind":"some","value":{"kind":"nat","value":"3"}}}]},{"kind":"build","operands":[{"function":2,"kind":"call","operands":[{"kind":"value","type":{"kind":"option","value":{"kind":"nat"}},"value":{"kind":"some","value":{"kind":"nat","value":"4"}}}]},{"kind":"build","operands":[{"function":3,"kind":"call","operands":[{"kind":"value","type":{"error":{"kind":"bool"},"kind":"result","ok":{"kind":"nat"}},"value":{"kind":"ok","value":{"kind":"nat","value":"5"}}}]},{"kind":"build","operands":[{"function":4,"kind":"call","operands":[{"kind":"value","type":{"kind":"option","value":{"kind":"nat"}},"value":{"kind":"none"}}]},{"kind":"build","operands":[{"function":5,"kind":"call","operands":[{"kind":"value","type":{"kind":"option","value":{"kind":"nat"}},"value":{"kind":"some","value":{"kind":"nat","value":"6"}}}]},{"kind":"build","operands":[{"function":6,"kind":"call","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"9"}}]},{"kind":"build","operands":[{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"bool"},"value":{"kind":"bool","value":false}}]},{"kind":"build","operands":[{"function":8,"kind":"call","operands":[{"kind":"value","type":{"index":0,"kind":"adt"},"value":{"constructor":0,"fields":[{"kind":"nat","value":"1"},{"kind":"nat","value":"2"}],"kind":"adt"}}]},{"function":9,"kind":"call","operands":[{"kind":"value","type":{"kind":"option","value":{"kind":"nat"}},"value":{"kind":"some","value":{"kind":"nat","value":"1"}}}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}}}}}},"parameters":[],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}}}}},"types":[]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[1],"body":{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"option","value":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[1],"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_sub"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"option","value":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[1],"body":{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"ok"}},{"binders":[2],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"error"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"error":{"kind":"bool"},"kind":"result","ok":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"none"}},{"binders":[1],"body":{"kind":"var","name":1},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"option","value":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"7"}},"shape":{"kind":"none"}},{"binders":[1],"body":{"kind":"var","name":1},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"option","value":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"kind":"var","name":1},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]},{"body":{"condition":{"kind":"var","name":0},"else_branch":{"condition":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"200"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"200"}}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"bool"}]},{"body":{"index":0,"kind":"field","value":{"arms":[{"binders":[1,2],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"var","name":1}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},"shape":{"constructor":0,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"index":0,"kind":"adt"}}},"parameters":[0],"result":{"kind":"nat"},"types":[{"index":0,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"function":10,"kind":"call","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}]},"shape":{"kind":"none"}},{"binders":[1],"body":{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"unit"}},"parameters":[0],"result":{"kind":"unit"},"types":[{"kind":"option","value":{"kind":"nat"}}]},{"body":{"body":{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"kind":"let","name":1,"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"unit"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/function-shapes/provenance.json b/compiler/rust/rust-std/function-shapes/provenance.json index c9134bf41..beedd1f4a 100644 --- a/compiler/rust/rust-std/function-shapes/provenance.json +++ b/compiler/rust/rust-std/function-shapes/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"3720c9f130285e3c390b2b0046c6a9a7796f49ac243f1badb2c5b06d088fc912","src/lib.rs":"6635977a6aefcea9911c98821ae4f0c89e4b2ce949057eec28d55891bbb6b9b6"},"name":"function_shapes_std","profile":"rust-std","program":"5156d5b2edb83f9b58b89720da3005d24bde4f212a0a5f4d25175cc4ba0628e9","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"3720c9f130285e3c390b2b0046c6a9a7796f49ac243f1badb2c5b06d088fc912","src/lib.rs":"6635977a6aefcea9911c98821ae4f0c89e4b2ce949057eec28d55891bbb6b9b6"},"name":"function_shapes_std","profile":"rust-std","program":"5156d5b2edb83f9b58b89720da3005d24bde4f212a0a5f4d25175cc4ba0628e9","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/graph-reachable-absent/package.json b/compiler/rust/rust-std/graph-reachable-absent/package.json index 60f81c080..f29ad489b 100644 --- a/compiler/rust/rust-std/graph-reachable-absent/package.json +++ b/compiler/rust/rust-std/graph-reachable-absent/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"graph_reachable_absent_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"prim","operands":[{"function":11,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}]}],"operation":{"kind":"length"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}]},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":3},"shape":{"kind":"zero"}},{"binders":[4],"body":{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":3},"shape":{"kind":"nil"}},{"binders":[6,7],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":4},{"kind":"var","name":5},{"function":9,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":5}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":5},"type":{"element":{"kind":"nat"},"kind":"list"}},"bound":{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}]},"kind":"let","name":5,"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1,2,3],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"},{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":3},"shape":{"kind":"nil"}},{"binders":[4,5],"body":{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":5},{"function":4,"kind":"call","operands":[{"kind":"var","name":1},{"function":5,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":4}]},{"kind":"var","name":3}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1,2,3],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":2},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":4,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":4},{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3}]},"else_branch":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":2},{"kind":"var","name":3}]},"else_branch":{"function":8,"kind":"call","operands":[{"kind":"var","name":2},{"kind":"var","name":3}]},"kind":"cond","then_branch":{"kind":"var","name":2}},"kind":"cond","then_branch":{"kind":"var","name":2}}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"none"}},{"binders":[2],"body":{"kind":"var","name":2},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":6,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":2}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":6,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"parameters":[0,1],"result":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":7,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":8,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":9,"kind":"call","operands":[{"function":10,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},{"kind":"var","name":3}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":10,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":11,"kind":"call","operands":[{"kind":"var","name":3},{"function":12,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":2}},{"function":13,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}]}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":12,"kind":"call","operands":[{"kind":"var","name":3},{"function":13,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"var","name":2}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":13,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"graph_reachable_absent_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"prim","operands":[{"function":11,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}]}],"operation":{"kind":"length"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}]},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":3},"shape":{"kind":"zero"}},{"binders":[4],"body":{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":3},"shape":{"kind":"nil"}},{"binders":[6,7],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":4},{"kind":"var","name":5},{"function":9,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":5}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":5},"type":{"element":{"kind":"nat"},"kind":"list"}},"bound":{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}]},"kind":"let","name":5,"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1,2,3],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"},{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":3},"shape":{"kind":"nil"}},{"binders":[4,5],"body":{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":5},{"function":4,"kind":"call","operands":[{"kind":"var","name":1},{"function":5,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":4}]},{"kind":"var","name":3}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1,2,3],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":2},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":4,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":4},{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3}]},"else_branch":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":2},{"kind":"var","name":3}]},"else_branch":{"function":8,"kind":"call","operands":[{"kind":"var","name":2},{"kind":"var","name":3}]},"kind":"cond","then_branch":{"kind":"var","name":2}},"kind":"cond","then_branch":{"kind":"var","name":2}}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"none"}},{"binders":[2],"body":{"kind":"var","name":2},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":6,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":2}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":6,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"parameters":[0,1],"result":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":7,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":8,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":9,"kind":"call","operands":[{"function":10,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},{"kind":"var","name":3}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":10,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":11,"kind":"call","operands":[{"kind":"var","name":3},{"function":12,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":2}},{"function":13,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}]}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":12,"kind":"call","operands":[{"kind":"var","name":3},{"function":13,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"var","name":2}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":13,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/graph-reachable-absent/provenance.json b/compiler/rust/rust-std/graph-reachable-absent/provenance.json index cc0e877a6..7f6acef77 100644 --- a/compiler/rust/rust-std/graph-reachable-absent/provenance.json +++ b/compiler/rust/rust-std/graph-reachable-absent/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"0b2894d1c10b616bb5180d7a2efbdf1c8607ca584feee908c6d54f4920aac040","src/lib.rs":"e0f9f9498cc48964b8d873933bf9113da118746f98f1f0c609706161114d0e3c"},"name":"graph_reachable_absent_std","profile":"rust-std","program":"041e81a39e799bfc6ec17b360f2f9379382345aae6466d5338d3027f5523baa0","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"0b2894d1c10b616bb5180d7a2efbdf1c8607ca584feee908c6d54f4920aac040","src/lib.rs":"e0f9f9498cc48964b8d873933bf9113da118746f98f1f0c609706161114d0e3c"},"name":"graph_reachable_absent_std","profile":"rust-std","program":"041e81a39e799bfc6ec17b360f2f9379382345aae6466d5338d3027f5523baa0","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/graph-reachable-inner/package.json b/compiler/rust/rust-std/graph-reachable-inner/package.json index 0c974464b..5407a886a 100644 --- a/compiler/rust/rust-std/graph-reachable-inner/package.json +++ b/compiler/rust/rust-std/graph-reachable-inner/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"graph_reachable_inner_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"prim","operands":[{"function":11,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}]}],"operation":{"kind":"length"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}]},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":3},"shape":{"kind":"zero"}},{"binders":[4],"body":{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":3},"shape":{"kind":"nil"}},{"binders":[6,7],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":4},{"kind":"var","name":5},{"function":9,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":5}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":5},"type":{"element":{"kind":"nat"},"kind":"list"}},"bound":{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}]},"kind":"let","name":5,"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1,2,3],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"},{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":3},"shape":{"kind":"nil"}},{"binders":[4,5],"body":{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":5},{"function":4,"kind":"call","operands":[{"kind":"var","name":1},{"function":5,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":4}]},{"kind":"var","name":3}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1,2,3],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":2},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":4,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":4},{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3}]},"else_branch":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":2},{"kind":"var","name":3}]},"else_branch":{"function":8,"kind":"call","operands":[{"kind":"var","name":2},{"kind":"var","name":3}]},"kind":"cond","then_branch":{"kind":"var","name":2}},"kind":"cond","then_branch":{"kind":"var","name":2}}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"none"}},{"binders":[2],"body":{"kind":"var","name":2},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":6,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":2}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":6,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"parameters":[0,1],"result":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":7,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":8,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":9,"kind":"call","operands":[{"function":10,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},{"kind":"var","name":3}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":10,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":11,"kind":"call","operands":[{"kind":"var","name":3},{"function":12,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":2}},{"function":13,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}]}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":12,"kind":"call","operands":[{"kind":"var","name":3},{"function":13,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"var","name":2}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":13,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"graph_reachable_inner_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"prim","operands":[{"function":11,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}]}],"operation":{"kind":"length"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}]},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":3},"shape":{"kind":"zero"}},{"binders":[4],"body":{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":3},"shape":{"kind":"nil"}},{"binders":[6,7],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":4},{"kind":"var","name":5},{"function":9,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":5}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":5},"type":{"element":{"kind":"nat"},"kind":"list"}},"bound":{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}]},"kind":"let","name":5,"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1,2,3],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"},{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":3},"shape":{"kind":"nil"}},{"binders":[4,5],"body":{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":5},{"function":4,"kind":"call","operands":[{"kind":"var","name":1},{"function":5,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":4}]},{"kind":"var","name":3}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1,2,3],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":2},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":4,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":4},{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3}]},"else_branch":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":2},{"kind":"var","name":3}]},"else_branch":{"function":8,"kind":"call","operands":[{"kind":"var","name":2},{"kind":"var","name":3}]},"kind":"cond","then_branch":{"kind":"var","name":2}},"kind":"cond","then_branch":{"kind":"var","name":2}}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"none"}},{"binders":[2],"body":{"kind":"var","name":2},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":6,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":2}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":6,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"parameters":[0,1],"result":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":7,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":8,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":9,"kind":"call","operands":[{"function":10,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},{"kind":"var","name":3}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":10,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":11,"kind":"call","operands":[{"kind":"var","name":3},{"function":12,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":2}},{"function":13,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}]}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":12,"kind":"call","operands":[{"kind":"var","name":3},{"function":13,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"var","name":2}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":13,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/graph-reachable-inner/provenance.json b/compiler/rust/rust-std/graph-reachable-inner/provenance.json index 414e1a987..1818d66d1 100644 --- a/compiler/rust/rust-std/graph-reachable-inner/provenance.json +++ b/compiler/rust/rust-std/graph-reachable-inner/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"8e23f25f2becada80c24b87f98b3606a48517046b5bdea38ff315b03d171cbf9","src/lib.rs":"e0f9f9498cc48964b8d873933bf9113da118746f98f1f0c609706161114d0e3c"},"name":"graph_reachable_inner_std","profile":"rust-std","program":"041e81a39e799bfc6ec17b360f2f9379382345aae6466d5338d3027f5523baa0","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"8e23f25f2becada80c24b87f98b3606a48517046b5bdea38ff315b03d171cbf9","src/lib.rs":"e0f9f9498cc48964b8d873933bf9113da118746f98f1f0c609706161114d0e3c"},"name":"graph_reachable_inner_std","profile":"rust-std","program":"041e81a39e799bfc6ec17b360f2f9379382345aae6466d5338d3027f5523baa0","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/graph-reachable/package.json b/compiler/rust/rust-std/graph-reachable/package.json index 4691e76b0..8041f51fc 100644 --- a/compiler/rust/rust-std/graph-reachable/package.json +++ b/compiler/rust/rust-std/graph-reachable/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"graph_reachable_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"prim","operands":[{"function":11,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}]}],"operation":{"kind":"length"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}]},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":3},"shape":{"kind":"zero"}},{"binders":[4],"body":{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":3},"shape":{"kind":"nil"}},{"binders":[6,7],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":4},{"kind":"var","name":5},{"function":9,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":5}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":5},"type":{"element":{"kind":"nat"},"kind":"list"}},"bound":{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}]},"kind":"let","name":5,"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1,2,3],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"},{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":3},"shape":{"kind":"nil"}},{"binders":[4,5],"body":{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":5},{"function":4,"kind":"call","operands":[{"kind":"var","name":1},{"function":5,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":4}]},{"kind":"var","name":3}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1,2,3],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":2},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":4,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":4},{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3}]},"else_branch":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":2},{"kind":"var","name":3}]},"else_branch":{"function":8,"kind":"call","operands":[{"kind":"var","name":2},{"kind":"var","name":3}]},"kind":"cond","then_branch":{"kind":"var","name":2}},"kind":"cond","then_branch":{"kind":"var","name":2}}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"none"}},{"binders":[2],"body":{"kind":"var","name":2},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":6,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":2}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":6,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"parameters":[0,1],"result":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":7,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":8,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":9,"kind":"call","operands":[{"function":10,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},{"kind":"var","name":3}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":10,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":11,"kind":"call","operands":[{"kind":"var","name":3},{"function":12,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":2}},{"function":13,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}]}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":12,"kind":"call","operands":[{"kind":"var","name":3},{"function":13,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"var","name":2}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":13,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"graph_reachable_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"prim","operands":[{"function":11,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}]}],"operation":{"kind":"length"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}]},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":3},"shape":{"kind":"zero"}},{"binders":[4],"body":{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":3},"shape":{"kind":"nil"}},{"binders":[6,7],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":4},{"kind":"var","name":5},{"function":9,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":5}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":5},"type":{"element":{"kind":"nat"},"kind":"list"}},"bound":{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}]},"kind":"let","name":5,"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1,2,3],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"},{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":3},"shape":{"kind":"nil"}},{"binders":[4,5],"body":{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":5},{"function":4,"kind":"call","operands":[{"kind":"var","name":1},{"function":5,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":4}]},{"kind":"var","name":3}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1,2,3],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":2},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":4,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":4},{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3}]},"else_branch":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":2},{"kind":"var","name":3}]},"else_branch":{"function":8,"kind":"call","operands":[{"kind":"var","name":2},{"kind":"var","name":3}]},"kind":"cond","then_branch":{"kind":"var","name":2}},"kind":"cond","then_branch":{"kind":"var","name":2}}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"none"}},{"binders":[2],"body":{"kind":"var","name":2},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":6,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":2}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":6,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"parameters":[0,1],"result":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":7,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":8,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":9,"kind":"call","operands":[{"function":10,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},{"kind":"var","name":3}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":10,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":11,"kind":"call","operands":[{"kind":"var","name":3},{"function":12,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":2}},{"function":13,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}]}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":12,"kind":"call","operands":[{"kind":"var","name":3},{"function":13,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"var","name":2}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":13,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/graph-reachable/provenance.json b/compiler/rust/rust-std/graph-reachable/provenance.json index 3b1ff9d56..c379b0d86 100644 --- a/compiler/rust/rust-std/graph-reachable/provenance.json +++ b/compiler/rust/rust-std/graph-reachable/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"da47a0ccbd1ff7c07b1e4aff98e6b080304e153038cd3e7bb28d4cb5f4c26b74","src/lib.rs":"e0f9f9498cc48964b8d873933bf9113da118746f98f1f0c609706161114d0e3c"},"name":"graph_reachable_std","profile":"rust-std","program":"041e81a39e799bfc6ec17b360f2f9379382345aae6466d5338d3027f5523baa0","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"da47a0ccbd1ff7c07b1e4aff98e6b080304e153038cd3e7bb28d4cb5f4c26b74","src/lib.rs":"e0f9f9498cc48964b8d873933bf9113da118746f98f1f0c609706161114d0e3c"},"name":"graph_reachable_std","profile":"rust-std","program":"041e81a39e799bfc6ec17b360f2f9379382345aae6466d5338d3027f5523baa0","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/graph-successors-absent/package.json b/compiler/rust/rust-std/graph-successors-absent/package.json index 051ae75ec..cdecf9612 100644 --- a/compiler/rust/rust-std/graph-successors-absent/package.json +++ b/compiler/rust/rust-std/graph-successors-absent/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"graph_successors_absent_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"none"}},{"binders":[2],"body":{"kind":"var","name":2},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":2}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"parameters":[0,1],"result":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"graph_successors_absent_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"none"}},{"binders":[2],"body":{"kind":"var","name":2},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":2}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"parameters":[0,1],"result":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/graph-successors-absent/provenance.json b/compiler/rust/rust-std/graph-successors-absent/provenance.json index 5996c3152..a4e112a31 100644 --- a/compiler/rust/rust-std/graph-successors-absent/provenance.json +++ b/compiler/rust/rust-std/graph-successors-absent/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"42089a95d945ae662acd664bfb0f90af87d5e25c8a365451632dc8da2d430db8","src/lib.rs":"0aa41c3a86d4fc8e40515711e0b344cd496cd95682297d865508cb1604c87cb3"},"name":"graph_successors_absent_std","profile":"rust-std","program":"8b3c90ca61d51f5e057122592afdc93c1514acbc9954325abc0b9fbca01152ef","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"42089a95d945ae662acd664bfb0f90af87d5e25c8a365451632dc8da2d430db8","src/lib.rs":"0aa41c3a86d4fc8e40515711e0b344cd496cd95682297d865508cb1604c87cb3"},"name":"graph_successors_absent_std","profile":"rust-std","program":"8b3c90ca61d51f5e057122592afdc93c1514acbc9954325abc0b9fbca01152ef","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/graph-successors/package.json b/compiler/rust/rust-std/graph-successors/package.json index d1d704d30..5ae243eed 100644 --- a/compiler/rust/rust-std/graph-successors/package.json +++ b/compiler/rust/rust-std/graph-successors/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"graph_successors_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"none"}},{"binders":[2],"body":{"kind":"var","name":2},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":2}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"parameters":[0,1],"result":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"graph_successors_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"none"}},{"binders":[2],"body":{"kind":"var","name":2},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":2}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"parameters":[0,1],"result":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/graph-successors/provenance.json b/compiler/rust/rust-std/graph-successors/provenance.json index 4e5c9cbb3..ea214d197 100644 --- a/compiler/rust/rust-std/graph-successors/provenance.json +++ b/compiler/rust/rust-std/graph-successors/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"75e8b7813e553c19915e4c083ffa0b27ea15889775d0f0b756afb3f7f8071f52","src/lib.rs":"0aa41c3a86d4fc8e40515711e0b344cd496cd95682297d865508cb1604c87cb3"},"name":"graph_successors_std","profile":"rust-std","program":"8b3c90ca61d51f5e057122592afdc93c1514acbc9954325abc0b9fbca01152ef","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"75e8b7813e553c19915e4c083ffa0b27ea15889775d0f0b756afb3f7f8071f52","src/lib.rs":"0aa41c3a86d4fc8e40515711e0b344cd496cd95682297d865508cb1604c87cb3"},"name":"graph_successors_std","profile":"rust-std","program":"8b3c90ca61d51f5e057122592afdc93c1514acbc9954325abc0b9fbca01152ef","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/graph-topological-cycle/package.json b/compiler/rust/rust-std/graph-topological-cycle/package.json index e117fe958..44711a732 100644 --- a/compiler/rust/rust-std/graph-topological-cycle/package.json +++ b/compiler/rust/rust-std/graph-topological-cycle/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"graph_topological_cycle_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},"parameters":[0],"result":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"}]},{"body":{"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}]},"bound":{"function":6,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}]},"kind":"let","name":1,"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0],"result":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"function":5,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[4,5],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"zero"}},{"binders":[6],"body":{"arms":[{"binders":[],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"function":5,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[7,8],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[9,10],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":6},{"function":12,"kind":"call","operands":[{"kind":"var","name":2},{"kind":"var","name":9}]},{"kind":"build","operands":[{"kind":"var","name":9},{"kind":"var","name":3}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2},{"kind":"var","name":2}]},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"parameters":[0,1,2,3],"result":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"},{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"function":4,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":1}]},"else_branch":{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":4}]},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":3},{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":4}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"function":11,"kind":"call","operands":[{"function":9,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3}]},{"kind":"var","name":1}]},"else_branch":{"function":4,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":4}]},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}},"parameters":[0,1,2],"result":{"kind":"bool"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":5,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"var","name":1}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":6,"kind":"call","operands":[{"kind":"var","name":3},{"function":7,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":2}},{"function":8,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}]}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":7,"kind":"call","operands":[{"kind":"var","name":3},{"function":8,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"var","name":2}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":8,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"none"}},{"binders":[2],"body":{"kind":"var","name":2},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":10,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":2}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":10,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"parameters":[0,1],"result":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":11,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":3},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":12,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"graph_topological_cycle_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},"parameters":[0],"result":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"}]},{"body":{"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}]},"bound":{"function":6,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}]},"kind":"let","name":1,"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0],"result":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"function":5,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[4,5],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"zero"}},{"binders":[6],"body":{"arms":[{"binders":[],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"function":5,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[7,8],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[9,10],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":6},{"function":12,"kind":"call","operands":[{"kind":"var","name":2},{"kind":"var","name":9}]},{"kind":"build","operands":[{"kind":"var","name":9},{"kind":"var","name":3}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2},{"kind":"var","name":2}]},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"parameters":[0,1,2,3],"result":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"},{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"function":4,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":1}]},"else_branch":{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":4}]},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":3},{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":4}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"function":11,"kind":"call","operands":[{"function":9,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3}]},{"kind":"var","name":1}]},"else_branch":{"function":4,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":4}]},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}},"parameters":[0,1,2],"result":{"kind":"bool"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":5,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"var","name":1}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":6,"kind":"call","operands":[{"kind":"var","name":3},{"function":7,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":2}},{"function":8,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}]}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":7,"kind":"call","operands":[{"kind":"var","name":3},{"function":8,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"var","name":2}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":8,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"none"}},{"binders":[2],"body":{"kind":"var","name":2},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":10,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":2}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":10,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"parameters":[0,1],"result":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":11,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":3},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":12,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/graph-topological-cycle/provenance.json b/compiler/rust/rust-std/graph-topological-cycle/provenance.json index 376bcf0d7..5f59d8307 100644 --- a/compiler/rust/rust-std/graph-topological-cycle/provenance.json +++ b/compiler/rust/rust-std/graph-topological-cycle/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"bdfec0f1b193227451cb08f1aea9afe7297d425e41cd2fa6267e8cd22daeaee1","src/lib.rs":"c51b0abc58eceaf1d8ec17c5ab25145b5987ed7e14f741b44560d6726b6cdca4"},"name":"graph_topological_cycle_std","profile":"rust-std","program":"f9745fab4349647798801c4e66ecead44a5242a05bdb373aae5e5f102c659e5f","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"bdfec0f1b193227451cb08f1aea9afe7297d425e41cd2fa6267e8cd22daeaee1","src/lib.rs":"c51b0abc58eceaf1d8ec17c5ab25145b5987ed7e14f741b44560d6726b6cdca4"},"name":"graph_topological_cycle_std","profile":"rust-std","program":"f9745fab4349647798801c4e66ecead44a5242a05bdb373aae5e5f102c659e5f","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/graph-topological/package.json b/compiler/rust/rust-std/graph-topological/package.json index 82b5175e3..03599867e 100644 --- a/compiler/rust/rust-std/graph-topological/package.json +++ b/compiler/rust/rust-std/graph-topological/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"graph_topological_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},"parameters":[0],"result":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"}]},{"body":{"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}]},"bound":{"function":6,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}]},"kind":"let","name":1,"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0],"result":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"function":5,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[4,5],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"zero"}},{"binders":[6],"body":{"arms":[{"binders":[],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"function":5,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[7,8],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[9,10],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":6},{"function":12,"kind":"call","operands":[{"kind":"var","name":2},{"kind":"var","name":9}]},{"kind":"build","operands":[{"kind":"var","name":9},{"kind":"var","name":3}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2},{"kind":"var","name":2}]},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"parameters":[0,1,2,3],"result":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"},{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"function":4,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":1}]},"else_branch":{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":4}]},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":3},{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":4}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"function":11,"kind":"call","operands":[{"function":9,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3}]},{"kind":"var","name":1}]},"else_branch":{"function":4,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":4}]},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}},"parameters":[0,1,2],"result":{"kind":"bool"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":5,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"var","name":1}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":6,"kind":"call","operands":[{"kind":"var","name":3},{"function":7,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":2}},{"function":8,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}]}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":7,"kind":"call","operands":[{"kind":"var","name":3},{"function":8,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"var","name":2}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":8,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"none"}},{"binders":[2],"body":{"kind":"var","name":2},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":10,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":2}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":10,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"parameters":[0,1],"result":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":11,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":3},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":12,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"graph_topological_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},"parameters":[0],"result":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"}]},{"body":{"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}]},"bound":{"function":6,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}]},"kind":"let","name":1,"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0],"result":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"function":5,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[4,5],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"zero"}},{"binders":[6],"body":{"arms":[{"binders":[],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"function":5,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[7,8],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[9,10],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":6},{"function":12,"kind":"call","operands":[{"kind":"var","name":2},{"kind":"var","name":9}]},{"kind":"build","operands":[{"kind":"var","name":9},{"kind":"var","name":3}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2},{"kind":"var","name":2}]},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"parameters":[0,1,2,3],"result":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"},{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"function":4,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":1}]},"else_branch":{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":4}]},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":3},{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":4}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"function":11,"kind":"call","operands":[{"function":9,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3}]},{"kind":"var","name":1}]},"else_branch":{"function":4,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":4}]},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}},"parameters":[0,1,2],"result":{"kind":"bool"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":5,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"var","name":1}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":6,"kind":"call","operands":[{"kind":"var","name":3},{"function":7,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":2}},{"function":8,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}]}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":7,"kind":"call","operands":[{"kind":"var","name":3},{"function":8,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"var","name":2}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":8,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"none"}},{"binders":[2],"body":{"kind":"var","name":2},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":10,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":2}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":10,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"parameters":[0,1],"result":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":11,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":3},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":12,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/graph-topological/provenance.json b/compiler/rust/rust-std/graph-topological/provenance.json index 96f5a2e76..e187e2c14 100644 --- a/compiler/rust/rust-std/graph-topological/provenance.json +++ b/compiler/rust/rust-std/graph-topological/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"0538685cbe3e01d2e8df62cd2eaa6b557850a54d1562ac4893a7a7fb9f27d410","src/lib.rs":"c51b0abc58eceaf1d8ec17c5ab25145b5987ed7e14f741b44560d6726b6cdca4"},"name":"graph_topological_std","profile":"rust-std","program":"f9745fab4349647798801c4e66ecead44a5242a05bdb373aae5e5f102c659e5f","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"0538685cbe3e01d2e8df62cd2eaa6b557850a54d1562ac4893a7a7fb9f27d410","src/lib.rs":"c51b0abc58eceaf1d8ec17c5ab25145b5987ed7e14f741b44560d6726b6cdca4"},"name":"graph_topological_std","profile":"rust-std","program":"f9745fab4349647798801c4e66ecead44a5242a05bdb373aae5e5f102c659e5f","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/int-arithmetic/package.json b/compiler/rust/rust-std/int-arithmetic/package.json index 46425116c..56e7b9448 100644 --- a/compiler/rust/rust-std/int-arithmetic/package.json +++ b/compiler/rust/rust-std/int-arithmetic/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":[]}],"name":"int_arithmetic_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-5"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"3"}}],"operation":{"kind":"int_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-5"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"3"}}],"operation":{"kind":"int_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-4"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"6"}}],"operation":{"kind":"int_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"7"}}],"operation":{"kind":"int_neg"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-7"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"2"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"0"}}],"operation":{"kind":"int_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-7"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"2"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"0"}}],"operation":{"kind":"int_rem"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"7"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-2"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"0"}}],"operation":{"kind":"int_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"7"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-2"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"0"}}],"operation":{"kind":"int_rem"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"5"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"0"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-9"}}],"operation":{"kind":"int_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"5"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"0"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"4"}}],"operation":{"kind":"int_rem"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-9223372036854775808"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"1"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"5"}}],"operation":{"kind":"int_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-9223372036854775808"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-1"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"7"}}],"operation":{"kind":"int_rem"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"9223372036854775807"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-9223372036854775808"}}],"operation":{"kind":"int_add"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"int"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"int"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"int"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"int"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"int"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"int"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"int"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"int"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"int"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"int"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"int"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"int"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"int"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"int"},"kind":"list"}},"parameters":[],"result":{"element":{"kind":"int"},"kind":"list"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":[]}],"name":"int_arithmetic_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-5"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"3"}}],"operation":{"kind":"int_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-5"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"3"}}],"operation":{"kind":"int_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-4"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"6"}}],"operation":{"kind":"int_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"7"}}],"operation":{"kind":"int_neg"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-7"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"2"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"0"}}],"operation":{"kind":"int_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-7"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"2"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"0"}}],"operation":{"kind":"int_rem"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"7"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-2"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"0"}}],"operation":{"kind":"int_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"7"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-2"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"0"}}],"operation":{"kind":"int_rem"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"5"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"0"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-9"}}],"operation":{"kind":"int_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"5"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"0"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"4"}}],"operation":{"kind":"int_rem"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-9223372036854775808"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"1"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"5"}}],"operation":{"kind":"int_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-9223372036854775808"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-1"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"7"}}],"operation":{"kind":"int_rem"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"9223372036854775807"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-9223372036854775808"}}],"operation":{"kind":"int_add"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"int"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"int"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"int"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"int"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"int"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"int"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"int"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"int"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"int"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"int"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"int"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"int"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"int"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"int"},"kind":"list"}},"parameters":[],"result":{"element":{"kind":"int"},"kind":"list"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/int-arithmetic/provenance.json b/compiler/rust/rust-std/int-arithmetic/provenance.json index 8e116cf6c..dc6cf9f28 100644 --- a/compiler/rust/rust-std/int-arithmetic/provenance.json +++ b/compiler/rust/rust-std/int-arithmetic/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"3912b5dd8d90f16cf7f3f96dc90dedbcfe40f29bf8db40b02503eb2cefe1549f","src/lib.rs":"2adbdbbec80a62be6202aeb2962daf4e485f3aba019021c904ee5c22ddb38f1c"},"name":"int_arithmetic_std","profile":"rust-std","program":"74490a35f7912610de983120cac89d47c5a80a56f2d22398ebe0d116219ac822","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"3912b5dd8d90f16cf7f3f96dc90dedbcfe40f29bf8db40b02503eb2cefe1549f","src/lib.rs":"2adbdbbec80a62be6202aeb2962daf4e485f3aba019021c904ee5c22ddb38f1c"},"name":"int_arithmetic_std","profile":"rust-std","program":"74490a35f7912610de983120cac89d47c5a80a56f2d22398ebe0d116219ac822","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/int-overflow-mul/package.json b/compiler/rust/rust-std/int-overflow-mul/package.json index 9ec4698b9..02c3954db 100644 --- a/compiler/rust/rust-std/int-overflow-mul/package.json +++ b/compiler/rust/rust-std/int-overflow-mul/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":[]}],"name":"int_overflow_mul_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"9223372036854775807"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"2"}}],"operation":{"kind":"int_mul"}},"parameters":[],"result":{"kind":"int"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":[]}],"name":"int_overflow_mul_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"9223372036854775807"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"2"}}],"operation":{"kind":"int_mul"}},"parameters":[],"result":{"kind":"int"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/int-overflow-mul/provenance.json b/compiler/rust/rust-std/int-overflow-mul/provenance.json index 399607ba1..9af7e9dad 100644 --- a/compiler/rust/rust-std/int-overflow-mul/provenance.json +++ b/compiler/rust/rust-std/int-overflow-mul/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"b1f26995a0ca536b6104f6ad4d8d528a98c58a03886b3cb976eca90ed9c62366","src/lib.rs":"e39c37c7dc031d658fc2300157b14c0df61ddbcb1694492c6817f4b6ad9c5676"},"name":"int_overflow_mul_std","profile":"rust-std","program":"1b65e9c0d0ec40bd0d8f70b9b32771560c2418a33777717ce781aca86a2ec51c","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"b1f26995a0ca536b6104f6ad4d8d528a98c58a03886b3cb976eca90ed9c62366","src/lib.rs":"e39c37c7dc031d658fc2300157b14c0df61ddbcb1694492c6817f4b6ad9c5676"},"name":"int_overflow_mul_std","profile":"rust-std","program":"1b65e9c0d0ec40bd0d8f70b9b32771560c2418a33777717ce781aca86a2ec51c","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/int-overflow-neg/package.json b/compiler/rust/rust-std/int-overflow-neg/package.json index 37647feec..08f485a49 100644 --- a/compiler/rust/rust-std/int-overflow-neg/package.json +++ b/compiler/rust/rust-std/int-overflow-neg/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":[]}],"name":"int_overflow_neg_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-9223372036854775808"}}],"operation":{"kind":"int_neg"}},"parameters":[],"result":{"kind":"int"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":[]}],"name":"int_overflow_neg_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-9223372036854775808"}}],"operation":{"kind":"int_neg"}},"parameters":[],"result":{"kind":"int"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/int-overflow-neg/provenance.json b/compiler/rust/rust-std/int-overflow-neg/provenance.json index 1820bc818..cabb06843 100644 --- a/compiler/rust/rust-std/int-overflow-neg/provenance.json +++ b/compiler/rust/rust-std/int-overflow-neg/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"48139720f49abbee04a31a60c01a06fa0711a314acccefb2df2fe9612375465d","src/lib.rs":"d2e970c895a57f0ad211e923467b7176fe2e167ab59e1d0183ef230108b6a00f"},"name":"int_overflow_neg_std","profile":"rust-std","program":"d9fbf0bb602a1238f9d26866ce0b3b6c6b2aaeef713f2a3912ee3377f9a21523","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"48139720f49abbee04a31a60c01a06fa0711a314acccefb2df2fe9612375465d","src/lib.rs":"d2e970c895a57f0ad211e923467b7176fe2e167ab59e1d0183ef230108b6a00f"},"name":"int_overflow_neg_std","profile":"rust-std","program":"d9fbf0bb602a1238f9d26866ce0b3b6c6b2aaeef713f2a3912ee3377f9a21523","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/int-overflow-quot/package.json b/compiler/rust/rust-std/int-overflow-quot/package.json index cd617cd94..979398887 100644 --- a/compiler/rust/rust-std/int-overflow-quot/package.json +++ b/compiler/rust/rust-std/int-overflow-quot/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":[]}],"name":"int_overflow_quot_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-9223372036854775808"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-1"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"0"}}],"operation":{"kind":"int_quot"}},"parameters":[],"result":{"kind":"int"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":[]}],"name":"int_overflow_quot_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-9223372036854775808"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-1"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"0"}}],"operation":{"kind":"int_quot"}},"parameters":[],"result":{"kind":"int"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/int-overflow-quot/provenance.json b/compiler/rust/rust-std/int-overflow-quot/provenance.json index 0c67be594..46db2234e 100644 --- a/compiler/rust/rust-std/int-overflow-quot/provenance.json +++ b/compiler/rust/rust-std/int-overflow-quot/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"70ecec50cbfc19ea6d1783b7e5e38e62f4bcdc7bc48a2b0c1cb406029b1ff358","src/lib.rs":"ceacae55969aa621af4f7c53eee82890863497f39dc4bbf01645ca820e3fc410"},"name":"int_overflow_quot_std","profile":"rust-std","program":"1692b3adcca40a04933f6aebc3fea8b84cdd602624476a65e9ba90b04f7b7380","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"70ecec50cbfc19ea6d1783b7e5e38e62f4bcdc7bc48a2b0c1cb406029b1ff358","src/lib.rs":"ceacae55969aa621af4f7c53eee82890863497f39dc4bbf01645ca820e3fc410"},"name":"int_overflow_quot_std","profile":"rust-std","program":"1692b3adcca40a04933f6aebc3fea8b84cdd602624476a65e9ba90b04f7b7380","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/int-overflow-sub/package.json b/compiler/rust/rust-std/int-overflow-sub/package.json index 81c97dae7..9341821e8 100644 --- a/compiler/rust/rust-std/int-overflow-sub/package.json +++ b/compiler/rust/rust-std/int-overflow-sub/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":[]}],"name":"int_overflow_sub_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-9223372036854775808"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"1"}}],"operation":{"kind":"int_sub"}},"parameters":[],"result":{"kind":"int"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":[]}],"name":"int_overflow_sub_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-9223372036854775808"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"1"}}],"operation":{"kind":"int_sub"}},"parameters":[],"result":{"kind":"int"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/int-overflow-sub/provenance.json b/compiler/rust/rust-std/int-overflow-sub/provenance.json index 75dbd338a..f9500c815 100644 --- a/compiler/rust/rust-std/int-overflow-sub/provenance.json +++ b/compiler/rust/rust-std/int-overflow-sub/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"d136f543104a9d2e33514775925d7a9888f80f24c925561daea0503ae6aae6d9","src/lib.rs":"bc4de8365b8317da6a29d4caee4e6d5a35f3e09eb574ba1e3b600af7dc850f21"},"name":"int_overflow_sub_std","profile":"rust-std","program":"1e4e6f4192ceb578c2a360bce823d1c1aa01db87a593efa4ac989ee1d3dbb168","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"d136f543104a9d2e33514775925d7a9888f80f24c925561daea0503ae6aae6d9","src/lib.rs":"bc4de8365b8317da6a29d4caee4e6d5a35f3e09eb574ba1e3b600af7dc850f21"},"name":"int_overflow_sub_std","profile":"rust-std","program":"1e4e6f4192ceb578c2a360bce823d1c1aa01db87a593efa4ac989ee1d3dbb168","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/iterate-until-bounded/package.json b/compiler/rust/rust-std/iterate-until-bounded/package.json index becb7cb3c..d671556b7 100644 --- a/compiler/rust/rust-std/iterate-until-bounded/package.json +++ b/compiler/rust/rust-std/iterate-until-bounded/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"iterate_until_bounded_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":2,"kind":"call","operands":[{"captures":[],"function":1,"kind":"closure"},{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}]},"parameters":[0],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"types":[{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"option","value":{"kind":"nat"}}},{"kind":"nat"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"iterate_until_bounded_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":2,"kind":"call","operands":[{"captures":[],"function":1,"kind":"closure"},{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}]},"parameters":[0],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"types":[{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"option","value":{"kind":"nat"}}},{"kind":"nat"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/iterate-until-bounded/provenance.json b/compiler/rust/rust-std/iterate-until-bounded/provenance.json index 21971e427..fc79ca417 100644 --- a/compiler/rust/rust-std/iterate-until-bounded/provenance.json +++ b/compiler/rust/rust-std/iterate-until-bounded/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"ee140028333f5242547bbd85a2b8d54702b6e2ba3667ddbeef4b5d6b9d819bc3","src/lib.rs":"f5c52af9a85516cfdcc6e80bd6b0547e63a683ebce6837efb443f23dea4b9817"},"name":"iterate_until_bounded_std","profile":"rust-std","program":"933ed0017ae24e1b179af5f2624474a367dab0414bfc90db4f456ec1f3f54e8a","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"ee140028333f5242547bbd85a2b8d54702b6e2ba3667ddbeef4b5d6b9d819bc3","src/lib.rs":"f5c52af9a85516cfdcc6e80bd6b0547e63a683ebce6837efb443f23dea4b9817"},"name":"iterate_until_bounded_std","profile":"rust-std","program":"933ed0017ae24e1b179af5f2624474a367dab0414bfc90db4f456ec1f3f54e8a","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/iterate-until/package.json b/compiler/rust/rust-std/iterate-until/package.json index 7be5b5a87..b8376ff17 100644 --- a/compiler/rust/rust-std/iterate-until/package.json +++ b/compiler/rust/rust-std/iterate-until/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"iterate_until_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":2,"kind":"call","operands":[{"captures":[],"function":1,"kind":"closure"},{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}]},"parameters":[0],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"types":[{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"option","value":{"kind":"nat"}}},{"kind":"nat"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"iterate_until_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":2,"kind":"call","operands":[{"captures":[],"function":1,"kind":"closure"},{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}]},"parameters":[0],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"types":[{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"option","value":{"kind":"nat"}}},{"kind":"nat"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/iterate-until/provenance.json b/compiler/rust/rust-std/iterate-until/provenance.json index 9e90fe691..780f91051 100644 --- a/compiler/rust/rust-std/iterate-until/provenance.json +++ b/compiler/rust/rust-std/iterate-until/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"5beaded8ae28b4f2bf60cbd1f89f1af4acbcc5f3732efbc80dc60377fa7f0e37","src/lib.rs":"f5c52af9a85516cfdcc6e80bd6b0547e63a683ebce6837efb443f23dea4b9817"},"name":"iterate_until_std","profile":"rust-std","program":"933ed0017ae24e1b179af5f2624474a367dab0414bfc90db4f456ec1f3f54e8a","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"5beaded8ae28b4f2bf60cbd1f89f1af4acbcc5f3732efbc80dc60377fa7f0e37","src/lib.rs":"f5c52af9a85516cfdcc6e80bd6b0547e63a683ebce6837efb443f23dea4b9817"},"name":"iterate_until_std","profile":"rust-std","program":"933ed0017ae24e1b179af5f2624474a367dab0414bfc90db4f456ec1f3f54e8a","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/iterate/package.json b/compiler/rust/rust-std/iterate/package.json index 8b260d9f3..95eb6e2e9 100644 --- a/compiler/rust/rust-std/iterate/package.json +++ b/compiler/rust/rust-std/iterate/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"iterate_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":2,"kind":"call","operands":[{"captures":[],"function":1,"kind":"closure"},{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}]},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_add"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":2},"shape":{"kind":"zero"}},{"binders":[3],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}}]},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"nat"}},"parameters":[0,1,2],"result":{"kind":"nat"},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"nat"}},{"kind":"nat"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"iterate_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":2,"kind":"call","operands":[{"captures":[],"function":1,"kind":"closure"},{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}]},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_add"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":2},"shape":{"kind":"zero"}},{"binders":[3],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}}]},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"nat"}},"parameters":[0,1,2],"result":{"kind":"nat"},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"nat"}},{"kind":"nat"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/iterate/provenance.json b/compiler/rust/rust-std/iterate/provenance.json index c3aa9033b..128136dc5 100644 --- a/compiler/rust/rust-std/iterate/provenance.json +++ b/compiler/rust/rust-std/iterate/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"de5e3eccc209f817965fe1ad22fe279b7b53ee8e98f0d7db012c96d31fc537a5","src/lib.rs":"5d451605ced8820aa8a88d0abb178655645ae80d417d2fb2ac53938266c4ddc0"},"name":"iterate_std","profile":"rust-std","program":"93495cb93bd9292be524f0e8414d7b827b60f812c842ab717fef46322758cf60","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"de5e3eccc209f817965fe1ad22fe279b7b53ee8e98f0d7db012c96d31fc537a5","src/lib.rs":"5d451605ced8820aa8a88d0abb178655645ae80d417d2fb2ac53938266c4ddc0"},"name":"iterate_std","profile":"rust-std","program":"93495cb93bd9292be524f0e8414d7b827b60f812c842ab717fef46322758cf60","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/list-append-long/package.json b/compiler/rust/rust-std/list-append-long/package.json index 54f6f8224..bd51bf0ad 100644 --- a/compiler/rust/rust-std/list-append-long/package.json +++ b/compiler/rust/rust-std/list-append-long/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"list_append_long_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"append"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"list_append_long_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"append"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/list-append-long/provenance.json b/compiler/rust/rust-std/list-append-long/provenance.json index 35a010bfc..268e48822 100644 --- a/compiler/rust/rust-std/list-append-long/provenance.json +++ b/compiler/rust/rust-std/list-append-long/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"93d1a8d4386d26dc94e93d98d6b3a6cc4600e57bf96756bd2f3c9eb1299b3a67","src/lib.rs":"1ca63cf500f9c44fecb3d73abed05dffcc0d60e6c0cde7ce93770e8832eb2689"},"name":"list_append_long_std","profile":"rust-std","program":"cb41d13830f113f3c6e79e5b8ac4b5766e5950f96132f30c46ae597f2e3586df","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"93d1a8d4386d26dc94e93d98d6b3a6cc4600e57bf96756bd2f3c9eb1299b3a67","src/lib.rs":"1ca63cf500f9c44fecb3d73abed05dffcc0d60e6c0cde7ce93770e8832eb2689"},"name":"list_append_long_std","profile":"rust-std","program":"cb41d13830f113f3c6e79e5b8ac4b5766e5950f96132f30c46ae597f2e3586df","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/list-fold/package.json b/compiler/rust/rust-std/list-fold/package.json index 65d53ba46..512bf015d 100644 --- a/compiler/rust/rust-std/list-fold/package.json +++ b/compiler/rust/rust-std/list-fold/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"list_fold_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":2,"kind":"call","operands":[{"captures":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"function":1,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"var","name":0}]},"parameters":[0],"result":{"kind":"nat"},"types":[{"element":{"kind":"string"},"kind":"list"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":2}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_mul"}}],"operation":{"kind":"nat_add"}},"parameters":[0,1,2],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"},{"kind":"string"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"nat"}},"parameters":[0,1,2],"result":{"kind":"nat"},"types":[{"kind":"fn","parameters":[{"kind":"nat"},{"kind":"string"}],"result":{"kind":"nat"}},{"kind":"nat"},{"element":{"kind":"string"},"kind":"list"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"list_fold_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":2,"kind":"call","operands":[{"captures":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"function":1,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"var","name":0}]},"parameters":[0],"result":{"kind":"nat"},"types":[{"element":{"kind":"string"},"kind":"list"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":2}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_mul"}}],"operation":{"kind":"nat_add"}},"parameters":[0,1,2],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"},{"kind":"string"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"nat"}},"parameters":[0,1,2],"result":{"kind":"nat"},"types":[{"kind":"fn","parameters":[{"kind":"nat"},{"kind":"string"}],"result":{"kind":"nat"}},{"kind":"nat"},{"element":{"kind":"string"},"kind":"list"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/list-fold/provenance.json b/compiler/rust/rust-std/list-fold/provenance.json index cbf8d1444..75b1fe6bf 100644 --- a/compiler/rust/rust-std/list-fold/provenance.json +++ b/compiler/rust/rust-std/list-fold/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"f3400f1bb065c95570809435d17afa7f43f5b6d210165450bd749d33dc15fc4e","src/lib.rs":"fe2e803b29ade977a8cadf5ff0e59bd0db2f013c41a2d17ca7432880dfa2779c"},"name":"list_fold_std","profile":"rust-std","program":"2aa5c562412f19a36dc6871936614db4c9fcffb88ac2dc090b7a8113b4062d0d","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"f3400f1bb065c95570809435d17afa7f43f5b6d210165450bd749d33dc15fc4e","src/lib.rs":"fe2e803b29ade977a8cadf5ff0e59bd0db2f013c41a2d17ca7432880dfa2779c"},"name":"list_fold_std","profile":"rust-std","program":"2aa5c562412f19a36dc6871936614db4c9fcffb88ac2dc090b7a8113b4062d0d","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/lists-borrowed/package.json b/compiler/rust/rust-std/lists-borrowed/package.json index 04c179fc8..9ccb84155 100644 --- a/compiler/rust/rust-std/lists-borrowed/package.json +++ b/compiler/rust/rust-std/lists-borrowed/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["borrow"]}],"name":"lists_borrowed_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"9"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"operation":{"kind":"append"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"index"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"index"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"slice"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"slice"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}}}}},"parameters":[0],"result":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}}}},"types":[{"element":{"kind":"nat"},"kind":"list"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["borrow"]}],"name":"lists_borrowed_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"9"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"operation":{"kind":"append"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"index"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"index"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"slice"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"slice"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}}}}},"parameters":[0],"result":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}}}},"types":[{"element":{"kind":"nat"},"kind":"list"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/lists-borrowed/provenance.json b/compiler/rust/rust-std/lists-borrowed/provenance.json index 25c31b996..8ad7781fe 100644 --- a/compiler/rust/rust-std/lists-borrowed/provenance.json +++ b/compiler/rust/rust-std/lists-borrowed/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"01ec12b89f6a1df6e0fdc7c9b3b0a981bc8b7c530d46f1befb9dc3da9bbd3344","src/lib.rs":"563ca680f395a8843b904d29481e17efcda374d28eaf912235792eb8858ae858"},"name":"lists_borrowed_std","profile":"rust-std","program":"6ccce5df53085556ae8de4d7783d2b5f3734fdee0f895ed7c612b695af1b208e","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"01ec12b89f6a1df6e0fdc7c9b3b0a981bc8b7c530d46f1befb9dc3da9bbd3344","src/lib.rs":"563ca680f395a8843b904d29481e17efcda374d28eaf912235792eb8858ae858"},"name":"lists_borrowed_std","profile":"rust-std","program":"6ccce5df53085556ae8de4d7783d2b5f3734fdee0f895ed7c612b695af1b208e","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/lists/package.json b/compiler/rust/rust-std/lists/package.json index 368c2cde5..9ce9a6466 100644 --- a/compiler/rust/rust-std/lists/package.json +++ b/compiler/rust/rust-std/lists/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own"]}],"name":"lists_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"9"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"operation":{"kind":"append"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"index"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"index"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"slice"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"slice"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}}}}},"parameters":[0],"result":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}}}},"types":[{"element":{"kind":"nat"},"kind":"list"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own"]}],"name":"lists_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"9"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"operation":{"kind":"append"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"index"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"index"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"slice"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"slice"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}}}}},"parameters":[0],"result":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}}}},"types":[{"element":{"kind":"nat"},"kind":"list"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/lists/provenance.json b/compiler/rust/rust-std/lists/provenance.json index 5caa72e8b..12b92a5f1 100644 --- a/compiler/rust/rust-std/lists/provenance.json +++ b/compiler/rust/rust-std/lists/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"20a5e788febf3f6995f85883485d6e561b1d12dfa390f426c37a4676b4c7e6bd","src/lib.rs":"f658b6c437ef639208128f85ab4caf2c83fa4a1243d700fd8384d12bd4d504a4"},"name":"lists_std","profile":"rust-std","program":"6ccce5df53085556ae8de4d7783d2b5f3734fdee0f895ed7c612b695af1b208e","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"20a5e788febf3f6995f85883485d6e561b1d12dfa390f426c37a4676b4c7e6bd","src/lib.rs":"f658b6c437ef639208128f85ab4caf2c83fa4a1243d700fd8384d12bd4d504a4"},"name":"lists_std","profile":"rust-std","program":"6ccce5df53085556ae8de4d7783d2b5f3734fdee0f895ed7c612b695af1b208e","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/literals/package.json b/compiler/rust/rust-std/literals/package.json index 3a2d79c66..ab0c22708 100644 --- a/compiler/rust/rust-std/literals/package.json +++ b/compiler/rust/rust-std/literals/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":[]}],"name":"literals_std","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"unit"},{"kind":"bool"},{"kind":"nat"},{"kind":"int"},{"kind":"fixed","width":"u8"},{"kind":"fixed","width":"u16"},{"kind":"fixed","width":"u32"},{"kind":"fixed","width":"u64"},{"kind":"fixed","width":"i8"},{"kind":"fixed","width":"i16"},{"kind":"fixed","width":"i32"},{"kind":"fixed","width":"i64"},{"kind":"string"},{"kind":"bytes"},{"kind":"ordering"},{"kind":"option","value":{"kind":"nat"}},{"kind":"option","value":{"kind":"bool"}},{"error":{"kind":"string"},"kind":"result","ok":{"kind":"nat"}},{"error":{"kind":"string"},"kind":"result","ok":{"kind":"nat"}},{"element":{"kind":"nat"},"kind":"list"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},{"index":1,"kind":"adt"}]]},{"constructors":[[],[{"kind":"nat"}]]}],"functions":[{"body":{"kind":"build","operands":[{"kind":"value","type":{"kind":"unit"},"value":{"kind":"unit"}},{"kind":"value","type":{"kind":"bool"},"value":{"kind":"bool","value":true}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"18446744073709551615"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-9223372036854775808"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"255"}},{"kind":"value","type":{"kind":"fixed","width":"u16"},"value":{"kind":"u16","value":"65535"}},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"4294967295"}},{"kind":"value","type":{"kind":"fixed","width":"u64"},"value":{"kind":"u64","value":"18446744073709551615"}},{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"-128"}},{"kind":"value","type":{"kind":"fixed","width":"i16"},"value":{"kind":"i16","value":"-32768"}},{"kind":"value","type":{"kind":"fixed","width":"i32"},"value":{"kind":"i32","value":"-2147483648"}},{"kind":"value","type":{"kind":"fixed","width":"i64"},"value":{"kind":"i64","value":"-9223372036854775808"}},{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"snow ☃"}},{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"00ff7f","kind":"bytes"}},{"kind":"value","type":{"kind":"ordering"},"value":{"kind":"ordering","value":"eq"}},{"kind":"value","type":{"kind":"option","value":{"kind":"nat"}},"value":{"kind":"none"}},{"kind":"value","type":{"kind":"option","value":{"kind":"bool"}},"value":{"kind":"some","value":{"kind":"bool","value":false}}},{"kind":"value","type":{"error":{"kind":"string"},"kind":"result","ok":{"kind":"nat"}},"value":{"kind":"ok","value":{"kind":"nat","value":"1"}}},{"kind":"value","type":{"error":{"kind":"string"},"kind":"result","ok":{"kind":"nat"}},"value":{"kind":"error","value":{"kind":"string","value":"no"}}},{"kind":"value","type":{"element":{"kind":"nat"},"kind":"list"},"value":{"items":[{"kind":"nat","value":"1"},{"kind":"nat","value":"2"}],"kind":"list"}},{"kind":"value","type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"value":{"kind":"pair","left":{"kind":"nat","value":"3"},"right":{"kind":"string","value":"three"}}},{"kind":"value","type":{"index":1,"kind":"adt"},"value":{"constructor":1,"fields":[{"kind":"nat","value":"5"}],"kind":"adt"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},"parameters":[],"result":{"index":0,"kind":"adt"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":[]}],"name":"literals_std","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"unit"},{"kind":"bool"},{"kind":"nat"},{"kind":"int"},{"kind":"fixed","width":"u8"},{"kind":"fixed","width":"u16"},{"kind":"fixed","width":"u32"},{"kind":"fixed","width":"u64"},{"kind":"fixed","width":"i8"},{"kind":"fixed","width":"i16"},{"kind":"fixed","width":"i32"},{"kind":"fixed","width":"i64"},{"kind":"string"},{"kind":"bytes"},{"kind":"ordering"},{"kind":"option","value":{"kind":"nat"}},{"kind":"option","value":{"kind":"bool"}},{"error":{"kind":"string"},"kind":"result","ok":{"kind":"nat"}},{"error":{"kind":"string"},"kind":"result","ok":{"kind":"nat"}},{"element":{"kind":"nat"},"kind":"list"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},{"index":1,"kind":"adt"}]]},{"constructors":[[],[{"kind":"nat"}]]}],"functions":[{"body":{"kind":"build","operands":[{"kind":"value","type":{"kind":"unit"},"value":{"kind":"unit"}},{"kind":"value","type":{"kind":"bool"},"value":{"kind":"bool","value":true}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"18446744073709551615"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-9223372036854775808"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"255"}},{"kind":"value","type":{"kind":"fixed","width":"u16"},"value":{"kind":"u16","value":"65535"}},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"4294967295"}},{"kind":"value","type":{"kind":"fixed","width":"u64"},"value":{"kind":"u64","value":"18446744073709551615"}},{"kind":"value","type":{"kind":"fixed","width":"i8"},"value":{"kind":"i8","value":"-128"}},{"kind":"value","type":{"kind":"fixed","width":"i16"},"value":{"kind":"i16","value":"-32768"}},{"kind":"value","type":{"kind":"fixed","width":"i32"},"value":{"kind":"i32","value":"-2147483648"}},{"kind":"value","type":{"kind":"fixed","width":"i64"},"value":{"kind":"i64","value":"-9223372036854775808"}},{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"snow ☃"}},{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"00ff7f","kind":"bytes"}},{"kind":"value","type":{"kind":"ordering"},"value":{"kind":"ordering","value":"eq"}},{"kind":"value","type":{"kind":"option","value":{"kind":"nat"}},"value":{"kind":"none"}},{"kind":"value","type":{"kind":"option","value":{"kind":"bool"}},"value":{"kind":"some","value":{"kind":"bool","value":false}}},{"kind":"value","type":{"error":{"kind":"string"},"kind":"result","ok":{"kind":"nat"}},"value":{"kind":"ok","value":{"kind":"nat","value":"1"}}},{"kind":"value","type":{"error":{"kind":"string"},"kind":"result","ok":{"kind":"nat"}},"value":{"kind":"error","value":{"kind":"string","value":"no"}}},{"kind":"value","type":{"element":{"kind":"nat"},"kind":"list"},"value":{"items":[{"kind":"nat","value":"1"},{"kind":"nat","value":"2"}],"kind":"list"}},{"kind":"value","type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"value":{"kind":"pair","left":{"kind":"nat","value":"3"},"right":{"kind":"string","value":"three"}}},{"kind":"value","type":{"index":1,"kind":"adt"},"value":{"constructor":1,"fields":[{"kind":"nat","value":"5"}],"kind":"adt"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},"parameters":[],"result":{"index":0,"kind":"adt"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/literals/provenance.json b/compiler/rust/rust-std/literals/provenance.json index f53b0ec09..e76742ee1 100644 --- a/compiler/rust/rust-std/literals/provenance.json +++ b/compiler/rust/rust-std/literals/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"0967689a42ab9a6bdcfba8e93c74e0293cda460413bb245ec0b39aa1e2b5a2ca","src/lib.rs":"929569285659bc8ab598f7239e30b103056ee70f74bd2b69daca22764355f294"},"name":"literals_std","profile":"rust-std","program":"2c3026cfe7aae0d5cdd2a0c9ac2ba5174566b5aa92ebdb3a069953cffc7178aa","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"0967689a42ab9a6bdcfba8e93c74e0293cda460413bb245ec0b39aa1e2b5a2ca","src/lib.rs":"929569285659bc8ab598f7239e30b103056ee70f74bd2b69daca22764355f294"},"name":"literals_std","profile":"rust-std","program":"2c3026cfe7aae0d5cdd2a0c9ac2ba5174566b5aa92ebdb3a069953cffc7178aa","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/map-contains/package.json b/compiler/rust/rust-std/map-contains/package.json index 2930cf06d..dd4fba63b 100644 --- a/compiler/rust/rust-std/map-contains/package.json +++ b/compiler/rust/rust-std/map-contains/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"map_contains_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"none"}},{"binders":[2],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"kind":"bool"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"string"}}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"string"}}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":2}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"string"}}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"kind":"option","value":{"kind":"string"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"kind":"string"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"string"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"map_contains_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"none"}},{"binders":[2],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"kind":"bool"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"string"}}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"string"}}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":2}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"string"}}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"kind":"option","value":{"kind":"string"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"kind":"string"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"string"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/map-contains/provenance.json b/compiler/rust/rust-std/map-contains/provenance.json index c54e6b4d7..77c2bd54a 100644 --- a/compiler/rust/rust-std/map-contains/provenance.json +++ b/compiler/rust/rust-std/map-contains/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"ce447f41f31637f37caf9685507d57dbbec7a9838715fe8c6ac4defc594791b6","src/lib.rs":"88e3fd1de99645c19db740404d9388da840543994a417a0a8f069052b2cd45d3"},"name":"map_contains_std","profile":"rust-std","program":"df72d86cdcf4f1ec907202221da90c365a110f9ad9a04027d440ef0791bf98d0","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"ce447f41f31637f37caf9685507d57dbbec7a9838715fe8c6ac4defc594791b6","src/lib.rs":"88e3fd1de99645c19db740404d9388da840543994a417a0a8f069052b2cd45d3"},"name":"map_contains_std","profile":"rust-std","program":"df72d86cdcf4f1ec907202221da90c365a110f9ad9a04027d440ef0791bf98d0","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/map-fold/package.json b/compiler/rust/rust-std/map-fold/package.json index fd19be6e1..b3cd51f06 100644 --- a/compiler/rust/rust-std/map-fold/package.json +++ b/compiler/rust/rust-std/map-fold/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"map_fold_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":2,"kind":"call","operands":[{"captures":[],"function":1,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"100"}},{"kind":"var","name":0}]},"parameters":[0],"result":{"kind":"nat"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"kind":"var","name":2}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_add"}},"parameters":[0,1,2],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"},{"kind":"string"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":3}},{"kind":"second","value":{"kind":"var","name":3}}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"nat"}},"parameters":[0,1,2],"result":{"kind":"nat"},"types":[{"kind":"fn","parameters":[{"kind":"nat"},{"kind":"nat"},{"kind":"string"}],"result":{"kind":"nat"}},{"kind":"nat"},{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"map_fold_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":2,"kind":"call","operands":[{"captures":[],"function":1,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"100"}},{"kind":"var","name":0}]},"parameters":[0],"result":{"kind":"nat"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"kind":"var","name":2}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_add"}},"parameters":[0,1,2],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"},{"kind":"string"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":3}},{"kind":"second","value":{"kind":"var","name":3}}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"nat"}},"parameters":[0,1,2],"result":{"kind":"nat"},"types":[{"kind":"fn","parameters":[{"kind":"nat"},{"kind":"nat"},{"kind":"string"}],"result":{"kind":"nat"}},{"kind":"nat"},{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/map-fold/provenance.json b/compiler/rust/rust-std/map-fold/provenance.json index aeb298b2d..89ffccd9c 100644 --- a/compiler/rust/rust-std/map-fold/provenance.json +++ b/compiler/rust/rust-std/map-fold/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"acd3221748be57ca02c0c93ab3c62c29e381c2b61efe6580fba612c28f379fa3","src/lib.rs":"583d7fceb7d79922f310fbc134c58646916187c1f9066d2b61bad72e1d816b0b"},"name":"map_fold_std","profile":"rust-std","program":"63b90078766cb65f800cd8a26affe5549439339580190e43f94bd40e77c44ae9","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"acd3221748be57ca02c0c93ab3c62c29e381c2b61efe6580fba612c28f379fa3","src/lib.rs":"583d7fceb7d79922f310fbc134c58646916187c1f9066d2b61bad72e1d816b0b"},"name":"map_fold_std","profile":"rust-std","program":"63b90078766cb65f800cd8a26affe5549439339580190e43f94bd40e77c44ae9","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/map-insert-last/package.json b/compiler/rust/rust-std/map-insert-last/package.json index 06c4b3419..d87a21022 100644 --- a/compiler/rust/rust-std/map-insert-last/package.json +++ b/compiler/rust/rust-std/map-insert-last/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"map_insert_last_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":2}]},"parameters":[0,1,2],"result":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},{"kind":"nat"},{"kind":"string"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}}},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}}},{"kind":"var","name":4}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":3},{"function":1,"kind":"call","operands":[{"kind":"var","name":4},{"kind":"var","name":1},{"kind":"var","name":2}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":3}}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},{"kind":"nat"},{"kind":"string"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"map_insert_last_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":2}]},"parameters":[0,1,2],"result":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},{"kind":"nat"},{"kind":"string"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}}},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}}},{"kind":"var","name":4}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":3},{"function":1,"kind":"call","operands":[{"kind":"var","name":4},{"kind":"var","name":1},{"kind":"var","name":2}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":3}}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},{"kind":"nat"},{"kind":"string"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/map-insert-last/provenance.json b/compiler/rust/rust-std/map-insert-last/provenance.json index 67c5b11fa..4aabac897 100644 --- a/compiler/rust/rust-std/map-insert-last/provenance.json +++ b/compiler/rust/rust-std/map-insert-last/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"2f8618383f2124ef08ead6b647ca07d17cd0fc89e6fd3788e1b0621caf42d774","src/lib.rs":"aaec98e55df975f9cfe92f9af0029672221cf16f34376b04f17d9067ec2aa258"},"name":"map_insert_last_std","profile":"rust-std","program":"5a01e58fc0d604993996bb97ea9ae231bdf42b95ffc1e1a14babe6a9f9760146","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"2f8618383f2124ef08ead6b647ca07d17cd0fc89e6fd3788e1b0621caf42d774","src/lib.rs":"aaec98e55df975f9cfe92f9af0029672221cf16f34376b04f17d9067ec2aa258"},"name":"map_insert_last_std","profile":"rust-std","program":"5a01e58fc0d604993996bb97ea9ae231bdf42b95ffc1e1a14babe6a9f9760146","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/map-insert-replace/package.json b/compiler/rust/rust-std/map-insert-replace/package.json index b99d38100..988704d57 100644 --- a/compiler/rust/rust-std/map-insert-replace/package.json +++ b/compiler/rust/rust-std/map-insert-replace/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"map_insert_replace_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":2}]},"parameters":[0,1,2],"result":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},{"kind":"nat"},{"kind":"string"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}}},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}}},{"kind":"var","name":4}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":3},{"function":1,"kind":"call","operands":[{"kind":"var","name":4},{"kind":"var","name":1},{"kind":"var","name":2}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":3}}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},{"kind":"nat"},{"kind":"string"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"map_insert_replace_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":2}]},"parameters":[0,1,2],"result":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},{"kind":"nat"},{"kind":"string"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}}},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}}},{"kind":"var","name":4}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":3},{"function":1,"kind":"call","operands":[{"kind":"var","name":4},{"kind":"var","name":1},{"kind":"var","name":2}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":3}}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},{"kind":"nat"},{"kind":"string"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/map-insert-replace/provenance.json b/compiler/rust/rust-std/map-insert-replace/provenance.json index f217c514f..7b7a4f933 100644 --- a/compiler/rust/rust-std/map-insert-replace/provenance.json +++ b/compiler/rust/rust-std/map-insert-replace/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"4e3afd163bad1322c23b861692ee6e15998741fb5dbf234985415b3cd9185f25","src/lib.rs":"aaec98e55df975f9cfe92f9af0029672221cf16f34376b04f17d9067ec2aa258"},"name":"map_insert_replace_std","profile":"rust-std","program":"5a01e58fc0d604993996bb97ea9ae231bdf42b95ffc1e1a14babe6a9f9760146","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"4e3afd163bad1322c23b861692ee6e15998741fb5dbf234985415b3cd9185f25","src/lib.rs":"aaec98e55df975f9cfe92f9af0029672221cf16f34376b04f17d9067ec2aa258"},"name":"map_insert_replace_std","profile":"rust-std","program":"5a01e58fc0d604993996bb97ea9ae231bdf42b95ffc1e1a14babe6a9f9760146","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/map-insert/package.json b/compiler/rust/rust-std/map-insert/package.json index dbf2cab10..5d0eeec75 100644 --- a/compiler/rust/rust-std/map-insert/package.json +++ b/compiler/rust/rust-std/map-insert/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"map_insert_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":2}]},"parameters":[0,1,2],"result":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},{"kind":"nat"},{"kind":"string"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}}},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}}},{"kind":"var","name":4}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":3},{"function":1,"kind":"call","operands":[{"kind":"var","name":4},{"kind":"var","name":1},{"kind":"var","name":2}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":3}}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},{"kind":"nat"},{"kind":"string"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"map_insert_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":2}]},"parameters":[0,1,2],"result":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},{"kind":"nat"},{"kind":"string"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}}},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}}},{"kind":"var","name":4}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":3},{"function":1,"kind":"call","operands":[{"kind":"var","name":4},{"kind":"var","name":1},{"kind":"var","name":2}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":3}}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},{"kind":"nat"},{"kind":"string"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/map-insert/provenance.json b/compiler/rust/rust-std/map-insert/provenance.json index 516a7d3bb..230b6355c 100644 --- a/compiler/rust/rust-std/map-insert/provenance.json +++ b/compiler/rust/rust-std/map-insert/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"8cd5b6cabaa16bbfb42573a6909a72db39ceead8cc4f57f1128d6e3ff7717895","src/lib.rs":"aaec98e55df975f9cfe92f9af0029672221cf16f34376b04f17d9067ec2aa258"},"name":"map_insert_std","profile":"rust-std","program":"5a01e58fc0d604993996bb97ea9ae231bdf42b95ffc1e1a14babe6a9f9760146","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"8cd5b6cabaa16bbfb42573a6909a72db39ceead8cc4f57f1128d6e3ff7717895","src/lib.rs":"aaec98e55df975f9cfe92f9af0029672221cf16f34376b04f17d9067ec2aa258"},"name":"map_insert_std","profile":"rust-std","program":"5a01e58fc0d604993996bb97ea9ae231bdf42b95ffc1e1a14babe6a9f9760146","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/map-keys/package.json b/compiler/rust/rust-std/map-keys/package.json index 34a1c4901..d5f7061c7 100644 --- a/compiler/rust/rust-std/map-keys/package.json +++ b/compiler/rust/rust-std/map-keys/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own"]}],"name":"map_keys_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},"parameters":[0],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"kind":"build","operands":[{"kind":"first","value":{"kind":"var","name":1}},{"function":1,"kind":"call","operands":[{"kind":"var","name":2}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own"]}],"name":"map_keys_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},"parameters":[0],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"kind":"build","operands":[{"kind":"first","value":{"kind":"var","name":1}},{"function":1,"kind":"call","operands":[{"kind":"var","name":2}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/map-keys/provenance.json b/compiler/rust/rust-std/map-keys/provenance.json index c6730b7df..faba212e2 100644 --- a/compiler/rust/rust-std/map-keys/provenance.json +++ b/compiler/rust/rust-std/map-keys/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"9a54e4fad0cbdaed5584a08314a193ff57dd32021316c1dd556511e541965ede","src/lib.rs":"9eb502c8b15d3fcfbb95a53990d6397bdc83c6c8015311c1dc594aac2cf591f0"},"name":"map_keys_std","profile":"rust-std","program":"1e925223f9489bafbe49be0806a77d50daa7d530901c0996aa7fcdff8c722000","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"9a54e4fad0cbdaed5584a08314a193ff57dd32021316c1dd556511e541965ede","src/lib.rs":"9eb502c8b15d3fcfbb95a53990d6397bdc83c6c8015311c1dc594aac2cf591f0"},"name":"map_keys_std","profile":"rust-std","program":"1e925223f9489bafbe49be0806a77d50daa7d530901c0996aa7fcdff8c722000","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/map-lookup-absent/package.json b/compiler/rust/rust-std/map-lookup-absent/package.json index 81ddcb375..bf39834b3 100644 --- a/compiler/rust/rust-std/map-lookup-absent/package.json +++ b/compiler/rust/rust-std/map-lookup-absent/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"map_lookup_absent_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"string"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"string"}}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"string"}}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":2}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"string"}}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"kind":"option","value":{"kind":"string"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"kind":"string"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"string"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"map_lookup_absent_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"string"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"string"}}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"string"}}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":2}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"string"}}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"kind":"option","value":{"kind":"string"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"kind":"string"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"string"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/map-lookup-absent/provenance.json b/compiler/rust/rust-std/map-lookup-absent/provenance.json index f6d46ee14..cf746dcef 100644 --- a/compiler/rust/rust-std/map-lookup-absent/provenance.json +++ b/compiler/rust/rust-std/map-lookup-absent/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"5e325a7730ab6428120698b0da48e7862add0fb1259c1b40fdad9eb9401c285b","src/lib.rs":"e9feece1646c9b1991285d88596061f5ddf6356621e9537025f3dcd85742ca29"},"name":"map_lookup_absent_std","profile":"rust-std","program":"5836c1d18da2bb1aafa25ef6128410fa43467be15a9530d1244cff1678d7c9a9","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"5e325a7730ab6428120698b0da48e7862add0fb1259c1b40fdad9eb9401c285b","src/lib.rs":"e9feece1646c9b1991285d88596061f5ddf6356621e9537025f3dcd85742ca29"},"name":"map_lookup_absent_std","profile":"rust-std","program":"5836c1d18da2bb1aafa25ef6128410fa43467be15a9530d1244cff1678d7c9a9","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/map-lookup/package.json b/compiler/rust/rust-std/map-lookup/package.json index ba45351f5..9f742cf13 100644 --- a/compiler/rust/rust-std/map-lookup/package.json +++ b/compiler/rust/rust-std/map-lookup/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"map_lookup_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"string"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"string"}}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"string"}}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":2}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"string"}}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"kind":"option","value":{"kind":"string"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"kind":"string"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"string"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"map_lookup_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"string"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"string"}}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"string"}}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":2}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"string"}}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"kind":"option","value":{"kind":"string"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"kind":"string"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"string"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/map-lookup/provenance.json b/compiler/rust/rust-std/map-lookup/provenance.json index ecbb01a0b..61dd612df 100644 --- a/compiler/rust/rust-std/map-lookup/provenance.json +++ b/compiler/rust/rust-std/map-lookup/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"6da1f98af3cd5fd00b1ef2306204a56a335c7fa779fdd526238e546a80808d29","src/lib.rs":"e9feece1646c9b1991285d88596061f5ddf6356621e9537025f3dcd85742ca29"},"name":"map_lookup_std","profile":"rust-std","program":"5836c1d18da2bb1aafa25ef6128410fa43467be15a9530d1244cff1678d7c9a9","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"6da1f98af3cd5fd00b1ef2306204a56a335c7fa779fdd526238e546a80808d29","src/lib.rs":"e9feece1646c9b1991285d88596061f5ddf6356621e9537025f3dcd85742ca29"},"name":"map_lookup_std","profile":"rust-std","program":"5836c1d18da2bb1aafa25ef6128410fa43467be15a9530d1244cff1678d7c9a9","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/map-remove-absent/package.json b/compiler/rust/rust-std/map-remove-absent/package.json index 18ddb2b6f..bcdc5b547 100644 --- a/compiler/rust/rust-std/map-remove-absent/package.json +++ b/compiler/rust/rust-std/map-remove-absent/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"map_remove_absent_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":3},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":1,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"map_remove_absent_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":3},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":1,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/map-remove-absent/provenance.json b/compiler/rust/rust-std/map-remove-absent/provenance.json index f098fd015..fcb27e01f 100644 --- a/compiler/rust/rust-std/map-remove-absent/provenance.json +++ b/compiler/rust/rust-std/map-remove-absent/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"5f55bd671897808bf269007a9aa515d53c8380c2b60b30ccf7b5e9cf2f3cbca8","src/lib.rs":"2f110e9c33251cb47c9bd9b5ce0834a2092737ba26c79ae8288bcbaa90a684f0"},"name":"map_remove_absent_std","profile":"rust-std","program":"14052f9d4e78410cfe25294fafa508aeea89995b11fe20f274d9e09a673c9883","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"5f55bd671897808bf269007a9aa515d53c8380c2b60b30ccf7b5e9cf2f3cbca8","src/lib.rs":"2f110e9c33251cb47c9bd9b5ce0834a2092737ba26c79ae8288bcbaa90a684f0"},"name":"map_remove_absent_std","profile":"rust-std","program":"14052f9d4e78410cfe25294fafa508aeea89995b11fe20f274d9e09a673c9883","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/map-remove/package.json b/compiler/rust/rust-std/map-remove/package.json index 4bd86c9e3..11d801e22 100644 --- a/compiler/rust/rust-std/map-remove/package.json +++ b/compiler/rust/rust-std/map-remove/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"map_remove_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":3},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":1,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"map_remove_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":3},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":1,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/map-remove/provenance.json b/compiler/rust/rust-std/map-remove/provenance.json index 8ab91714b..0ee447e03 100644 --- a/compiler/rust/rust-std/map-remove/provenance.json +++ b/compiler/rust/rust-std/map-remove/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"e594ad5e1e13afda2304aae978748aeb1fe043d0fe84b4e1d0444eb3ec2f33b4","src/lib.rs":"2f110e9c33251cb47c9bd9b5ce0834a2092737ba26c79ae8288bcbaa90a684f0"},"name":"map_remove_std","profile":"rust-std","program":"14052f9d4e78410cfe25294fafa508aeea89995b11fe20f274d9e09a673c9883","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"e594ad5e1e13afda2304aae978748aeb1fe043d0fe84b4e1d0444eb3ec2f33b4","src/lib.rs":"2f110e9c33251cb47c9bd9b5ce0834a2092737ba26c79ae8288bcbaa90a684f0"},"name":"map_remove_std","profile":"rust-std","program":"14052f9d4e78410cfe25294fafa508aeea89995b11fe20f274d9e09a673c9883","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/map-values/package.json b/compiler/rust/rust-std/map-values/package.json index 7c9df582b..631da2082 100644 --- a/compiler/rust/rust-std/map-values/package.json +++ b/compiler/rust/rust-std/map-values/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own"]}],"name":"map_values_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},"parameters":[0],"result":{"element":{"kind":"string"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"string"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":1}},{"function":1,"kind":"call","operands":[{"kind":"var","name":2}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"string"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"string"},"kind":"list"}},"parameters":[0],"result":{"element":{"kind":"string"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own"]}],"name":"map_values_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},"parameters":[0],"result":{"element":{"kind":"string"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"string"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":1}},{"function":1,"kind":"call","operands":[{"kind":"var","name":2}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"string"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"string"},"kind":"list"}},"parameters":[0],"result":{"element":{"kind":"string"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/map-values/provenance.json b/compiler/rust/rust-std/map-values/provenance.json index 3ce098b83..2f22b9a00 100644 --- a/compiler/rust/rust-std/map-values/provenance.json +++ b/compiler/rust/rust-std/map-values/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"de84dcf781a2251130941f8019fbd4711b083bc77acd61c8f4ca19a211125745","src/lib.rs":"cca7349ebb43212df44eed3ed41779b6c4a93319fa2157052c69ce46039630ed"},"name":"map_values_std","profile":"rust-std","program":"26378f9985f96f922ee1a94bcd555bdda1e7b31d8f0e0d11d7dcc219fe9ae853","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"de84dcf781a2251130941f8019fbd4711b083bc77acd61c8f4ca19a211125745","src/lib.rs":"cca7349ebb43212df44eed3ed41779b6c4a93319fa2157052c69ce46039630ed"},"name":"map_values_std","profile":"rust-std","program":"26378f9985f96f922ee1a94bcd555bdda1e7b31d8f0e0d11d7dcc219fe9ae853","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/match-shapes/package.json b/compiler/rust/rust-std/match-shapes/package.json index c8af4ba93..3cf27bff6 100644 --- a/compiler/rust/rust-std/match-shapes/package.json +++ b/compiler/rust/rust-std/match-shapes/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own","own","own"]}],"name":"match_shapes_std","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"nat"}],[{"kind":"bool"}]]}],"functions":[{"body":{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[5],"body":{"kind":"build","operands":[{"kind":"var","name":5}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"kind":"nat"}}},{"kind":"build","operands":[{"arms":[{"binders":[6],"body":{"kind":"build","operands":[{"kind":"var","name":6}],"shape":{"kind":"ok"},"type":{"error":{"kind":"bool"},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"ok"}},{"binders":[7],"body":{"kind":"build","operands":[{"kind":"var","name":7}],"shape":{"kind":"error"},"type":{"error":{"kind":"bool"},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"error"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"error":{"kind":"bool"},"kind":"result","ok":{"kind":"nat"}}},{"kind":"build","operands":[{"arms":[{"binders":[8],"body":{"kind":"build","operands":[{"kind":"var","name":8}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},"shape":{"constructor":0,"kind":"adt"}},{"binders":[9],"body":{"kind":"build","operands":[{"kind":"var","name":9}],"shape":{"constructor":1,"kind":"adt"},"type":{"index":0,"kind":"adt"}},"shape":{"constructor":1,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"index":0,"kind":"adt"}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"lt"},"type":{"kind":"ordering"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"eq"},"type":{"kind":"ordering"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"gt"},"type":{"kind":"ordering"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"var","name":4}],"operation":{"kind":"compare"}},"type":{"kind":"ordering"}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[10],"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":10},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_sub"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"kind":"nat"}}},{"kind":"build","operands":[{"arms":[{"binders":[11],"body":{"kind":"build","operands":[{"kind":"var","name":11}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"ok"}},{"binders":[12],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"error"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"kind":"nat"}}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"5"}},"shape":{"kind":"none"}},{"binders":[13],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"5"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"ordering"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":0,"kind":"adt"},"right":{"kind":"pair","left":{"kind":"ordering"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"error":{"kind":"bool"},"kind":"result","ok":{"kind":"nat"}},"right":{"kind":"pair","left":{"index":0,"kind":"adt"},"right":{"kind":"pair","left":{"kind":"ordering"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"error":{"kind":"bool"},"kind":"result","ok":{"kind":"nat"}},"right":{"kind":"pair","left":{"index":0,"kind":"adt"},"right":{"kind":"pair","left":{"kind":"ordering"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}}}}},"parameters":[0,1,2,3,4],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"error":{"kind":"bool"},"kind":"result","ok":{"kind":"nat"}},"right":{"kind":"pair","left":{"index":0,"kind":"adt"},"right":{"kind":"pair","left":{"kind":"ordering"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}}}},"types":[{"kind":"option","value":{"kind":"nat"}},{"error":{"kind":"bool"},"kind":"result","ok":{"kind":"nat"}},{"index":0,"kind":"adt"},{"kind":"nat"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}},"shape":{"kind":"none"}},{"binders":[1],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":1}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"unit"}},"parameters":[0],"result":{"kind":"unit"},"types":[{"kind":"option","value":{"kind":"nat"}}]},{"body":{"body":{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"kind":"let","name":1,"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"unit"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own","own","own"]}],"name":"match_shapes_std","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"nat"}],[{"kind":"bool"}]]}],"functions":[{"body":{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[5],"body":{"kind":"build","operands":[{"kind":"var","name":5}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"kind":"nat"}}},{"kind":"build","operands":[{"arms":[{"binders":[6],"body":{"kind":"build","operands":[{"kind":"var","name":6}],"shape":{"kind":"ok"},"type":{"error":{"kind":"bool"},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"ok"}},{"binders":[7],"body":{"kind":"build","operands":[{"kind":"var","name":7}],"shape":{"kind":"error"},"type":{"error":{"kind":"bool"},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"error"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"error":{"kind":"bool"},"kind":"result","ok":{"kind":"nat"}}},{"kind":"build","operands":[{"arms":[{"binders":[8],"body":{"kind":"build","operands":[{"kind":"var","name":8}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},"shape":{"constructor":0,"kind":"adt"}},{"binders":[9],"body":{"kind":"build","operands":[{"kind":"var","name":9}],"shape":{"constructor":1,"kind":"adt"},"type":{"index":0,"kind":"adt"}},"shape":{"constructor":1,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"index":0,"kind":"adt"}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"lt"},"type":{"kind":"ordering"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"eq"},"type":{"kind":"ordering"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"gt"},"type":{"kind":"ordering"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"var","name":4}],"operation":{"kind":"compare"}},"type":{"kind":"ordering"}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[10],"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":10},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_sub"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"kind":"nat"}}},{"kind":"build","operands":[{"arms":[{"binders":[11],"body":{"kind":"build","operands":[{"kind":"var","name":11}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"ok"}},{"binders":[12],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"error"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"kind":"nat"}}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"5"}},"shape":{"kind":"none"}},{"binders":[13],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"5"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"ordering"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":0,"kind":"adt"},"right":{"kind":"pair","left":{"kind":"ordering"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"error":{"kind":"bool"},"kind":"result","ok":{"kind":"nat"}},"right":{"kind":"pair","left":{"index":0,"kind":"adt"},"right":{"kind":"pair","left":{"kind":"ordering"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"error":{"kind":"bool"},"kind":"result","ok":{"kind":"nat"}},"right":{"kind":"pair","left":{"index":0,"kind":"adt"},"right":{"kind":"pair","left":{"kind":"ordering"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}}}}},"parameters":[0,1,2,3,4],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"error":{"kind":"bool"},"kind":"result","ok":{"kind":"nat"}},"right":{"kind":"pair","left":{"index":0,"kind":"adt"},"right":{"kind":"pair","left":{"kind":"ordering"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"unit"}}}}}}}},"types":[{"kind":"option","value":{"kind":"nat"}},{"error":{"kind":"bool"},"kind":"result","ok":{"kind":"nat"}},{"index":0,"kind":"adt"},{"kind":"nat"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}},"shape":{"kind":"none"}},{"binders":[1],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":1}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"unit"}},"parameters":[0],"result":{"kind":"unit"},"types":[{"kind":"option","value":{"kind":"nat"}}]},{"body":{"body":{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"kind":"let","name":1,"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"unit"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/match-shapes/provenance.json b/compiler/rust/rust-std/match-shapes/provenance.json index f1ec94da8..ad4ad38f4 100644 --- a/compiler/rust/rust-std/match-shapes/provenance.json +++ b/compiler/rust/rust-std/match-shapes/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"0fc175e8e696efab2e0974dc5539bc94654a9eeef8fcc26f11a0a4bb03f3d483","src/lib.rs":"03c28aa070c011683bbd164a59f2de77fe840f40e08512c69984460efc597b24"},"name":"match_shapes_std","profile":"rust-std","program":"9680443f3a937a999f89648157989a00a6143ddefdeb16329afe27891c3279a2","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"0fc175e8e696efab2e0974dc5539bc94654a9eeef8fcc26f11a0a4bb03f3d483","src/lib.rs":"03c28aa070c011683bbd164a59f2de77fe840f40e08512c69984460efc597b24"},"name":"match_shapes_std","profile":"rust-std","program":"9680443f3a937a999f89648157989a00a6143ddefdeb16329afe27891c3279a2","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/nat-arithmetic/package.json b/compiler/rust/rust-std/nat-arithmetic/package.json index 560fe29c1..5c73707c1 100644 --- a/compiler/rust/rust-std/nat-arithmetic/package.json +++ b/compiler/rust/rust-std/nat-arithmetic/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":[]}],"name":"nat_arithmetic_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"5"}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"9"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"6"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"7"}}],"operation":{"kind":"nat_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"17"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"5"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"17"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"5"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"7"}}],"operation":{"kind":"nat_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"8"}}],"operation":{"kind":"nat_rem"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"18446744073709551614"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_eq"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}}],"operation":{"kind":"nat_eq"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_le"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_le"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}}],"operation":{"kind":"nat_lt"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}}],"operation":{"kind":"nat_lt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"element":{"kind":"bool"},"kind":"list"}}},"parameters":[],"result":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"element":{"kind":"bool"},"kind":"list"}},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":[]}],"name":"nat_arithmetic_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"5"}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"9"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"6"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"7"}}],"operation":{"kind":"nat_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"17"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"5"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"17"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"5"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"7"}}],"operation":{"kind":"nat_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"8"}}],"operation":{"kind":"nat_rem"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"18446744073709551614"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_eq"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}}],"operation":{"kind":"nat_eq"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_le"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_le"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}}],"operation":{"kind":"nat_lt"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}}],"operation":{"kind":"nat_lt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"element":{"kind":"bool"},"kind":"list"}}},"parameters":[],"result":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"element":{"kind":"bool"},"kind":"list"}},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/nat-arithmetic/provenance.json b/compiler/rust/rust-std/nat-arithmetic/provenance.json index 22b400342..998f0b448 100644 --- a/compiler/rust/rust-std/nat-arithmetic/provenance.json +++ b/compiler/rust/rust-std/nat-arithmetic/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"52d874842364a98a1ec3af35151dc6553820eb61a73b729963df7c502dc45656","src/lib.rs":"b90de3b8c5e1a292e2bcd4f27fe82dd61ff975398b9cf3c6ef006692e6d7c829"},"name":"nat_arithmetic_std","profile":"rust-std","program":"18e386987a44d4e9057579c3775b66c5293ebaa332bb2cba7811f2f828c7df9c","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"52d874842364a98a1ec3af35151dc6553820eb61a73b729963df7c502dc45656","src/lib.rs":"b90de3b8c5e1a292e2bcd4f27fe82dd61ff975398b9cf3c6ef006692e6d7c829"},"name":"nat_arithmetic_std","profile":"rust-std","program":"18e386987a44d4e9057579c3775b66c5293ebaa332bb2cba7811f2f828c7df9c","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/nat-overflow-add/package.json b/compiler/rust/rust-std/nat-overflow-add/package.json index 1556e88f1..c72b527a9 100644 --- a/compiler/rust/rust-std/nat-overflow-add/package.json +++ b/compiler/rust/rust-std/nat-overflow-add/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":[]}],"name":"nat_overflow_add_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"18446744073709551615"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},"parameters":[],"result":{"kind":"nat"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":[]}],"name":"nat_overflow_add_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"18446744073709551615"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},"parameters":[],"result":{"kind":"nat"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/nat-overflow-add/provenance.json b/compiler/rust/rust-std/nat-overflow-add/provenance.json index 38881773a..9d3af3399 100644 --- a/compiler/rust/rust-std/nat-overflow-add/provenance.json +++ b/compiler/rust/rust-std/nat-overflow-add/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"c7d9a73db6e119b2287af8553c30fcc2ba8490c05fe072c99b3693ab3f14c484","src/lib.rs":"f2eca38aef1cf7d204233f8bd6561803dca4fb7bfb1ec1f58caa726bbd3fc130"},"name":"nat_overflow_add_std","profile":"rust-std","program":"75136000ad8f2649db77d0237b973fea7740fa9fa28016b113d678a049dc353a","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"c7d9a73db6e119b2287af8553c30fcc2ba8490c05fe072c99b3693ab3f14c484","src/lib.rs":"f2eca38aef1cf7d204233f8bd6561803dca4fb7bfb1ec1f58caa726bbd3fc130"},"name":"nat_overflow_add_std","profile":"rust-std","program":"75136000ad8f2649db77d0237b973fea7740fa9fa28016b113d678a049dc353a","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/nat-overflow-mul/package.json b/compiler/rust/rust-std/nat-overflow-mul/package.json index aed58c27f..59c39ea7d 100644 --- a/compiler/rust/rust-std/nat-overflow-mul/package.json +++ b/compiler/rust/rust-std/nat-overflow-mul/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":[]}],"name":"nat_overflow_mul_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4294967296"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4294967296"}}],"operation":{"kind":"nat_mul"}},"parameters":[],"result":{"kind":"nat"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":[]}],"name":"nat_overflow_mul_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4294967296"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4294967296"}}],"operation":{"kind":"nat_mul"}},"parameters":[],"result":{"kind":"nat"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/nat-overflow-mul/provenance.json b/compiler/rust/rust-std/nat-overflow-mul/provenance.json index c79bfddb6..a722c997e 100644 --- a/compiler/rust/rust-std/nat-overflow-mul/provenance.json +++ b/compiler/rust/rust-std/nat-overflow-mul/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"c51c40386c887537c3db34b43f2599c75078af2764050494c5fdbbd35c91426d","src/lib.rs":"44257ffe7458bc923269bc1c46ad8d68a93e0d55ac1743c45be328370993e5bf"},"name":"nat_overflow_mul_std","profile":"rust-std","program":"39cd232f7cdf413f7c2ca48cb08a2ba12c63d0e4cad7e882987c21ac7b2ca535","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"c51c40386c887537c3db34b43f2599c75078af2764050494c5fdbbd35c91426d","src/lib.rs":"44257ffe7458bc923269bc1c46ad8d68a93e0d55ac1743c45be328370993e5bf"},"name":"nat_overflow_mul_std","profile":"rust-std","program":"39cd232f7cdf413f7c2ca48cb08a2ba12c63d0e4cad7e882987c21ac7b2ca535","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/nat-overflow-nested/package.json b/compiler/rust/rust-std/nat-overflow-nested/package.json index 2630d205d..2ea890334 100644 --- a/compiler/rust/rust-std/nat-overflow-nested/package.json +++ b/compiler/rust/rust-std/nat-overflow-nested/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":[]}],"name":"nat_overflow_nested_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"18446744073709551615"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_mul"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},"parameters":[],"result":{"kind":"nat"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":[]}],"name":"nat_overflow_nested_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"18446744073709551615"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_mul"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},"parameters":[],"result":{"kind":"nat"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/nat-overflow-nested/provenance.json b/compiler/rust/rust-std/nat-overflow-nested/provenance.json index e2bde9e76..516bca87f 100644 --- a/compiler/rust/rust-std/nat-overflow-nested/provenance.json +++ b/compiler/rust/rust-std/nat-overflow-nested/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"63ae0461075538d1b66575a4ed6deb54143cfee5157c49aeb77bf881619127b5","src/lib.rs":"bdd6ca1493a1086d5f5ad34f4ebfba15288a59a193e0f9c9f4abc8581c3a49c3"},"name":"nat_overflow_nested_std","profile":"rust-std","program":"ce3c27adceeaff5a870453e77162774541aaadbd6163b168d754ee39f964d7f9","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"63ae0461075538d1b66575a4ed6deb54143cfee5157c49aeb77bf881619127b5","src/lib.rs":"bdd6ca1493a1086d5f5ad34f4ebfba15288a59a193e0f9c9f4abc8581c3a49c3"},"name":"nat_overflow_nested_std","profile":"rust-std","program":"ce3c27adceeaff5a870453e77162774541aaadbd6163b168d754ee39f964d7f9","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/nat-overflow-succ/package.json b/compiler/rust/rust-std/nat-overflow-succ/package.json index 105ffb03d..e6f429c9a 100644 --- a/compiler/rust/rust-std/nat-overflow-succ/package.json +++ b/compiler/rust/rust-std/nat-overflow-succ/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":[]}],"name":"nat_overflow_succ_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"18446744073709551615"}}],"shape":{"kind":"succ"},"type":{"kind":"nat"}},"parameters":[],"result":{"kind":"nat"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":[]}],"name":"nat_overflow_succ_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"18446744073709551615"}}],"shape":{"kind":"succ"},"type":{"kind":"nat"}},"parameters":[],"result":{"kind":"nat"},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/nat-overflow-succ/provenance.json b/compiler/rust/rust-std/nat-overflow-succ/provenance.json index 0b6b931d6..a7b625f01 100644 --- a/compiler/rust/rust-std/nat-overflow-succ/provenance.json +++ b/compiler/rust/rust-std/nat-overflow-succ/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"aa64b611cb42944aa7f2368328114b98d0c0771ca2fb3703b7c8d04c965f0023","src/lib.rs":"08d68e1e54ea4e238b9947e1c314dee05b3f8cdb8687c14168612d9da31493c8"},"name":"nat_overflow_succ_std","profile":"rust-std","program":"71f5809a5001f094afc988a2e7a574309cd425857b135a51fbfeb799e80c9ee5","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"aa64b611cb42944aa7f2368328114b98d0c0771ca2fb3703b7c8d04c965f0023","src/lib.rs":"08d68e1e54ea4e238b9947e1c314dee05b3f8cdb8687c14168612d9da31493c8"},"name":"nat_overflow_succ_std","profile":"rust-std","program":"71f5809a5001f094afc988a2e7a574309cd425857b135a51fbfeb799e80c9ee5","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/ordering/package.json b/compiler/rust/rust-std/ordering/package.json index 319aa2a72..ee904b83a 100644 --- a/compiler/rust/rust-std/ordering/package.json +++ b/compiler/rust/rust-std/ordering/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":[]}],"name":"ordering_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"10"}}],"operation":{"kind":"compare"}},"type":{"kind":"nat"}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-3"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-3"}}],"operation":{"kind":"compare"}},"type":{"kind":"nat"}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i16"},"value":{"kind":"i16","value":"5"}},{"kind":"value","type":{"kind":"fixed","width":"i16"},"value":{"kind":"i16","value":"-5"}}],"operation":{"kind":"compare"}},"type":{"kind":"nat"}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u64"},"value":{"kind":"u64","value":"0"}},{"kind":"value","type":{"kind":"fixed","width":"u64"},"value":{"kind":"u64","value":"1"}}],"operation":{"kind":"compare"}},"type":{"kind":"nat"}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"operation":{"kind":"compare"}},"type":{"kind":"nat"}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"z"}},{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"é"}}],"operation":{"kind":"compare"}},"type":{"kind":"nat"}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"ab"}},{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"a"}}],"operation":{"kind":"compare"}},"type":{"kind":"nat"}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"build","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"1"}},{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"b"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"int"},"right":{"kind":"string"}}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"1"}},{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"a"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"int"},"right":{"kind":"string"}}}],"operation":{"kind":"compare"}},"type":{"kind":"nat"}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"build","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"0"}},{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"z"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"int"},"right":{"kind":"string"}}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"1"}},{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"a"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"int"},"right":{"kind":"string"}}}],"operation":{"kind":"compare"}},"type":{"kind":"nat"}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"value","type":{"kind":"ordering"},"value":{"kind":"ordering","value":"gt"}},"type":{"kind":"nat"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"lt"},"type":{"kind":"ordering"}},{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"eq"},"type":{"kind":"ordering"}},{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"gt"},"type":{"kind":"ordering"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"ordering"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"ordering"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"ordering"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"ordering"},"kind":"list"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"element":{"kind":"ordering"},"kind":"list"}}},"parameters":[],"result":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"element":{"kind":"ordering"},"kind":"list"}},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":[]}],"name":"ordering_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"10"}}],"operation":{"kind":"compare"}},"type":{"kind":"nat"}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-3"}},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-3"}}],"operation":{"kind":"compare"}},"type":{"kind":"nat"}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"i16"},"value":{"kind":"i16","value":"5"}},{"kind":"value","type":{"kind":"fixed","width":"i16"},"value":{"kind":"i16","value":"-5"}}],"operation":{"kind":"compare"}},"type":{"kind":"nat"}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"fixed","width":"u64"},"value":{"kind":"u64","value":"0"}},{"kind":"value","type":{"kind":"fixed","width":"u64"},"value":{"kind":"u64","value":"1"}}],"operation":{"kind":"compare"}},"type":{"kind":"nat"}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"operation":{"kind":"compare"}},"type":{"kind":"nat"}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"z"}},{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"é"}}],"operation":{"kind":"compare"}},"type":{"kind":"nat"}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"ab"}},{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"a"}}],"operation":{"kind":"compare"}},"type":{"kind":"nat"}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"build","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"1"}},{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"b"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"int"},"right":{"kind":"string"}}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"1"}},{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"a"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"int"},"right":{"kind":"string"}}}],"operation":{"kind":"compare"}},"type":{"kind":"nat"}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"build","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"0"}},{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"z"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"int"},"right":{"kind":"string"}}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"1"}},{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"a"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"int"},"right":{"kind":"string"}}}],"operation":{"kind":"compare"}},"type":{"kind":"nat"}},{"kind":"build","operands":[{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"value","type":{"kind":"ordering"},"value":{"kind":"ordering","value":"gt"}},"type":{"kind":"nat"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"lt"},"type":{"kind":"ordering"}},{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"eq"},"type":{"kind":"ordering"}},{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"gt"},"type":{"kind":"ordering"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"ordering"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"ordering"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"ordering"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"ordering"},"kind":"list"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"element":{"kind":"ordering"},"kind":"list"}}},"parameters":[],"result":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"element":{"kind":"ordering"},"kind":"list"}},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/ordering/provenance.json b/compiler/rust/rust-std/ordering/provenance.json index f28616e8d..7b52fa615 100644 --- a/compiler/rust/rust-std/ordering/provenance.json +++ b/compiler/rust/rust-std/ordering/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"142a59240c00723aa00ed298dd5b431f7f14b956d4b09b9752c4802c0d21b326","src/lib.rs":"36558853c89ae0ee0daf0aaa24d39d1b20f1d65407f2bd6d5b4ca71970460983"},"name":"ordering_std","profile":"rust-std","program":"3217967643b88e6bc78df4e90f18f31985e02fe048e60d864ef4567a410b67e4","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"142a59240c00723aa00ed298dd5b431f7f14b956d4b09b9752c4802c0d21b326","src/lib.rs":"36558853c89ae0ee0daf0aaa24d39d1b20f1d65407f2bd6d5b4ca71970460983"},"name":"ordering_std","profile":"rust-std","program":"3217967643b88e6bc78df4e90f18f31985e02fe048e60d864ef4567a410b67e4","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/pair-and-list-match/package.json b/compiler/rust/rust-std/pair-and-list-match/package.json index d772f5f09..6553da4e7 100644 --- a/compiler/rust/rust-std/pair-and-list-match/package.json +++ b/compiler/rust/rust-std/pair-and-list-match/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"pair_and_list_match_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"arms":[{"binders":[1,2],"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"arms":[{"binders":[],"body":{"kind":"var","name":3},"shape":{"kind":"none"}},{"binders":[5],"body":{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"var","name":5}],"operation":{"kind":"nat_add"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"nat"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"nat"}},"shape":{"kind":"pair"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"option","value":{"kind":"nat"}}}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"pair_and_list_match_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"arms":[{"binders":[1,2],"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"arms":[{"binders":[],"body":{"kind":"var","name":3},"shape":{"kind":"none"}},{"binders":[5],"body":{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"var","name":5}],"operation":{"kind":"nat_add"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"nat"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"nat"}},"shape":{"kind":"pair"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"option","value":{"kind":"nat"}}}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/pair-and-list-match/provenance.json b/compiler/rust/rust-std/pair-and-list-match/provenance.json index d02186e74..3634a0529 100644 --- a/compiler/rust/rust-std/pair-and-list-match/provenance.json +++ b/compiler/rust/rust-std/pair-and-list-match/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"e0950c055dee20845f6a4ba4b9abcdaa1edb939a5a9c9896993fa947cc3728da","src/lib.rs":"44d429c4629f6b714bf018623c134c6a165f24ac81a740d6cd6f145510481eb9"},"name":"pair_and_list_match_std","profile":"rust-std","program":"64b6104291406dae5cd141de083c74e050f1bc09e350c00f0d6a6e7f59eefb09","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"e0950c055dee20845f6a4ba4b9abcdaa1edb939a5a9c9896993fa947cc3728da","src/lib.rs":"44d429c4629f6b714bf018623c134c6a165f24ac81a740d6cd6f145510481eb9"},"name":"pair_and_list_match_std","profile":"rust-std","program":"64b6104291406dae5cd141de083c74e050f1bc09e350c00f0d6a6e7f59eefb09","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/reasoning-dose-120/package.json b/compiler/rust/rust-std/reasoning-dose-120/package.json index e40392d8d..6e7c31f0f 100644 --- a/compiler/rust/rust-std/reasoning-dose-120/package.json +++ b/compiler/rust/rust-std/reasoning-dose-120/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"reasoning_dose_120_std","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"option","value":{"kind":"nat"}},{"kind":"bool"},{"index":1,"kind":"adt"}]]},{"constructors":[[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[{"kind":"nat"}]]}],"functions":[{"body":{"body":{"kind":"build","operands":[{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":2,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":2,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":2,"kind":"adt"},"kind":"list"}}}],"shape":{"kind":"ok"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":2,"kind":"adt"},"kind":"list"}}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[{"function":5,"kind":"call","operands":[{"kind":"var","name":1}]}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":2,"kind":"adt"},"kind":"list"}}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"index":0,"kind":"field","value":{"kind":"var","name":1}},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":2,"kind":"adt"},"kind":"list"}}}},{"kind":"build","operands":[{"index":0,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"build","operands":[{"index":1,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"build","operands":[{"index":2,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"build","operands":[{"index":3,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"build","operands":[{"index":4,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}},{"index":5,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":2,"kind":"adt"},"kind":"list"}}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}},"bound":{"function":6,"kind":"call","operands":[{"captures":[{"kind":"var","name":0}],"function":4,"kind":"closure"},{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]}]},"kind":"let","name":1,"type":{"index":0,"kind":"adt"}},"parameters":[0],"result":{"kind":"pair","left":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":2,"kind":"adt"},"kind":"list"}}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}},"types":[{"kind":"nat"}]},{"body":{"body":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}}],"operation":{"kind":"nat_le"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"kind":"cond","then_branch":{"kind":"var","name":1}},"bound":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"10"}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"20"}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"30"}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"50"}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"kind":"let","name":1,"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":1}],"operation":{"kind":"nat_add"}},{"kind":"var","name":0}],"operation":{"kind":"nat_le"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"condition":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[3],"body":{"kind":"var","name":1},"shape":{"kind":"some"}},{"binders":[],"body":{"condition":{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},{"index":2,"kind":"field","value":{"kind":"var","name":1}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},{"index":1,"kind":"field","value":{"kind":"var","name":1}},{"kind":"build","operands":[{"kind":"prim","operands":[{"index":0,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"index":2,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}},{"index":3,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"index":5,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"index":0,"kind":"field","value":{"kind":"var","name":1}},"type":{"index":0,"kind":"adt"}},"parameters":[0,1,2],"result":{"index":0,"kind":"adt"},"types":[{"kind":"nat"},{"index":0,"kind":"adt"},{"kind":"nat"}]},{"body":{"condition":{"index":1,"kind":"field","value":{"kind":"var","name":0}},"else_branch":{"condition":{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":0}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"types":[{"index":0,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":6,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"index":0,"kind":"adt"}},"parameters":[0,1,2],"result":{"index":0,"kind":"adt"},"types":[{"kind":"fn","parameters":[{"index":0,"kind":"adt"},{"kind":"nat"}],"result":{"index":0,"kind":"adt"}},{"index":0,"kind":"adt"},{"element":{"kind":"nat"},"kind":"list"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"reasoning_dose_120_std","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"option","value":{"kind":"nat"}},{"kind":"bool"},{"index":1,"kind":"adt"}]]},{"constructors":[[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[{"kind":"nat"}]]}],"functions":[{"body":{"body":{"kind":"build","operands":[{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":2,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":2,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":2,"kind":"adt"},"kind":"list"}}}],"shape":{"kind":"ok"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":2,"kind":"adt"},"kind":"list"}}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[{"function":5,"kind":"call","operands":[{"kind":"var","name":1}]}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":2,"kind":"adt"},"kind":"list"}}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"index":0,"kind":"field","value":{"kind":"var","name":1}},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":2,"kind":"adt"},"kind":"list"}}}},{"kind":"build","operands":[{"index":0,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"build","operands":[{"index":1,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"build","operands":[{"index":2,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"build","operands":[{"index":3,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"build","operands":[{"index":4,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}},{"index":5,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":2,"kind":"adt"},"kind":"list"}}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}},"bound":{"function":6,"kind":"call","operands":[{"captures":[{"kind":"var","name":0}],"function":4,"kind":"closure"},{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]}]},"kind":"let","name":1,"type":{"index":0,"kind":"adt"}},"parameters":[0],"result":{"kind":"pair","left":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":2,"kind":"adt"},"kind":"list"}}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}},"types":[{"kind":"nat"}]},{"body":{"body":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}}],"operation":{"kind":"nat_le"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"kind":"cond","then_branch":{"kind":"var","name":1}},"bound":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"10"}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"20"}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"30"}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"50"}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"kind":"let","name":1,"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":1}],"operation":{"kind":"nat_add"}},{"kind":"var","name":0}],"operation":{"kind":"nat_le"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"condition":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[3],"body":{"kind":"var","name":1},"shape":{"kind":"some"}},{"binders":[],"body":{"condition":{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},{"index":2,"kind":"field","value":{"kind":"var","name":1}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},{"index":1,"kind":"field","value":{"kind":"var","name":1}},{"kind":"build","operands":[{"kind":"prim","operands":[{"index":0,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"index":2,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}},{"index":3,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"index":5,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"index":0,"kind":"field","value":{"kind":"var","name":1}},"type":{"index":0,"kind":"adt"}},"parameters":[0,1,2],"result":{"index":0,"kind":"adt"},"types":[{"kind":"nat"},{"index":0,"kind":"adt"},{"kind":"nat"}]},{"body":{"condition":{"index":1,"kind":"field","value":{"kind":"var","name":0}},"else_branch":{"condition":{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":0}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"types":[{"index":0,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":6,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"index":0,"kind":"adt"}},"parameters":[0,1,2],"result":{"index":0,"kind":"adt"},"types":[{"kind":"fn","parameters":[{"index":0,"kind":"adt"},{"kind":"nat"}],"result":{"index":0,"kind":"adt"}},{"index":0,"kind":"adt"},{"element":{"kind":"nat"},"kind":"list"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/reasoning-dose-120/provenance.json b/compiler/rust/rust-std/reasoning-dose-120/provenance.json index 4412709d8..54d87135a 100644 --- a/compiler/rust/rust-std/reasoning-dose-120/provenance.json +++ b/compiler/rust/rust-std/reasoning-dose-120/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"347ca6976c581cfc7210315f36ce0d8079179f4f8988dcf909b6110270779d7a","src/lib.rs":"d717a3caeb5fa31378975d68db7192958c9beb599c424476f857c3fd164b3e0b"},"name":"reasoning_dose_120_std","profile":"rust-std","program":"94fc260ab569c32e5f07d9b4018587bf3894f17d5f47f026fdadb127ee750c08","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"347ca6976c581cfc7210315f36ce0d8079179f4f8988dcf909b6110270779d7a","src/lib.rs":"d717a3caeb5fa31378975d68db7192958c9beb599c424476f857c3fd164b3e0b"},"name":"reasoning_dose_120_std","profile":"rust-std","program":"94fc260ab569c32e5f07d9b4018587bf3894f17d5f47f026fdadb127ee750c08","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/reasoning-dose-60/package.json b/compiler/rust/rust-std/reasoning-dose-60/package.json index 532fc0340..95dc0afe9 100644 --- a/compiler/rust/rust-std/reasoning-dose-60/package.json +++ b/compiler/rust/rust-std/reasoning-dose-60/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"reasoning_dose_60_std","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"option","value":{"kind":"nat"}},{"kind":"bool"},{"index":1,"kind":"adt"}]]},{"constructors":[[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[{"kind":"nat"}]]}],"functions":[{"body":{"body":{"kind":"build","operands":[{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":2,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":2,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":2,"kind":"adt"},"kind":"list"}}}],"shape":{"kind":"ok"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":2,"kind":"adt"},"kind":"list"}}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[{"function":5,"kind":"call","operands":[{"kind":"var","name":1}]}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":2,"kind":"adt"},"kind":"list"}}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"index":0,"kind":"field","value":{"kind":"var","name":1}},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":2,"kind":"adt"},"kind":"list"}}}},{"kind":"build","operands":[{"index":0,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"build","operands":[{"index":1,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"build","operands":[{"index":2,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"build","operands":[{"index":3,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"build","operands":[{"index":4,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}},{"index":5,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":2,"kind":"adt"},"kind":"list"}}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}},"bound":{"function":6,"kind":"call","operands":[{"captures":[{"kind":"var","name":0}],"function":4,"kind":"closure"},{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]}]},"kind":"let","name":1,"type":{"index":0,"kind":"adt"}},"parameters":[0],"result":{"kind":"pair","left":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":2,"kind":"adt"},"kind":"list"}}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}},"types":[{"kind":"nat"}]},{"body":{"body":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}}],"operation":{"kind":"nat_le"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"kind":"cond","then_branch":{"kind":"var","name":1}},"bound":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"10"}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"20"}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"30"}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"50"}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"kind":"let","name":1,"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":1}],"operation":{"kind":"nat_add"}},{"kind":"var","name":0}],"operation":{"kind":"nat_le"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"condition":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[3],"body":{"kind":"var","name":1},"shape":{"kind":"some"}},{"binders":[],"body":{"condition":{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},{"index":2,"kind":"field","value":{"kind":"var","name":1}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},{"index":1,"kind":"field","value":{"kind":"var","name":1}},{"kind":"build","operands":[{"kind":"prim","operands":[{"index":0,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"index":2,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}},{"index":3,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"index":5,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"index":0,"kind":"field","value":{"kind":"var","name":1}},"type":{"index":0,"kind":"adt"}},"parameters":[0,1,2],"result":{"index":0,"kind":"adt"},"types":[{"kind":"nat"},{"index":0,"kind":"adt"},{"kind":"nat"}]},{"body":{"condition":{"index":1,"kind":"field","value":{"kind":"var","name":0}},"else_branch":{"condition":{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":0}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"types":[{"index":0,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":6,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"index":0,"kind":"adt"}},"parameters":[0,1,2],"result":{"index":0,"kind":"adt"},"types":[{"kind":"fn","parameters":[{"index":0,"kind":"adt"},{"kind":"nat"}],"result":{"index":0,"kind":"adt"}},{"index":0,"kind":"adt"},{"element":{"kind":"nat"},"kind":"list"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"reasoning_dose_60_std","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"option","value":{"kind":"nat"}},{"kind":"bool"},{"index":1,"kind":"adt"}]]},{"constructors":[[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[{"kind":"nat"}]]}],"functions":[{"body":{"body":{"kind":"build","operands":[{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":2,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":2,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":2,"kind":"adt"},"kind":"list"}}}],"shape":{"kind":"ok"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":2,"kind":"adt"},"kind":"list"}}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[{"function":5,"kind":"call","operands":[{"kind":"var","name":1}]}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":2,"kind":"adt"},"kind":"list"}}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"index":0,"kind":"field","value":{"kind":"var","name":1}},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":2,"kind":"adt"},"kind":"list"}}}},{"kind":"build","operands":[{"index":0,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"build","operands":[{"index":1,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"build","operands":[{"index":2,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"build","operands":[{"index":3,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"build","operands":[{"index":4,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}},{"index":5,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":2,"kind":"adt"},"kind":"list"}}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}},"bound":{"function":6,"kind":"call","operands":[{"captures":[{"kind":"var","name":0}],"function":4,"kind":"closure"},{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]}]},"kind":"let","name":1,"type":{"index":0,"kind":"adt"}},"parameters":[0],"result":{"kind":"pair","left":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":2,"kind":"adt"},"kind":"list"}}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}},"types":[{"kind":"nat"}]},{"body":{"body":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}}],"operation":{"kind":"nat_le"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"kind":"cond","then_branch":{"kind":"var","name":1}},"bound":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"10"}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"20"}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"30"}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"50"}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"kind":"let","name":1,"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":1}],"operation":{"kind":"nat_add"}},{"kind":"var","name":0}],"operation":{"kind":"nat_le"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"condition":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[3],"body":{"kind":"var","name":1},"shape":{"kind":"some"}},{"binders":[],"body":{"condition":{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},{"index":2,"kind":"field","value":{"kind":"var","name":1}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},{"index":1,"kind":"field","value":{"kind":"var","name":1}},{"kind":"build","operands":[{"kind":"prim","operands":[{"index":0,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"index":2,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}},{"index":3,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"index":5,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":1}}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"index":0,"kind":"field","value":{"kind":"var","name":1}},"type":{"index":0,"kind":"adt"}},"parameters":[0,1,2],"result":{"index":0,"kind":"adt"},"types":[{"kind":"nat"},{"index":0,"kind":"adt"},{"kind":"nat"}]},{"body":{"condition":{"index":1,"kind":"field","value":{"kind":"var","name":0}},"else_branch":{"condition":{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":0}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"types":[{"index":0,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":6,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"index":0,"kind":"adt"}},"parameters":[0,1,2],"result":{"index":0,"kind":"adt"},"types":[{"kind":"fn","parameters":[{"index":0,"kind":"adt"},{"kind":"nat"}],"result":{"index":0,"kind":"adt"}},{"index":0,"kind":"adt"},{"element":{"kind":"nat"},"kind":"list"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/reasoning-dose-60/provenance.json b/compiler/rust/rust-std/reasoning-dose-60/provenance.json index 903c98eaf..0d244eadc 100644 --- a/compiler/rust/rust-std/reasoning-dose-60/provenance.json +++ b/compiler/rust/rust-std/reasoning-dose-60/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"f96501b3836fc78e84a14d4a3f7123bdfa3032a365236e06263cd7493b1b94f7","src/lib.rs":"d717a3caeb5fa31378975d68db7192958c9beb599c424476f857c3fd164b3e0b"},"name":"reasoning_dose_60_std","profile":"rust-std","program":"94fc260ab569c32e5f07d9b4018587bf3894f17d5f47f026fdadb127ee750c08","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"f96501b3836fc78e84a14d4a3f7123bdfa3032a365236e06263cd7493b1b94f7","src/lib.rs":"d717a3caeb5fa31378975d68db7192958c9beb599c424476f857c3fd164b3e0b"},"name":"reasoning_dose_60_std","profile":"rust-std","program":"94fc260ab569c32e5f07d9b4018587bf3894f17d5f47f026fdadb127ee750c08","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/reasoning-gnaf-goal/package.json b/compiler/rust/rust-std/reasoning-gnaf-goal/package.json index ddb0a125c..d54dc2823 100644 --- a/compiler/rust/rust-std/reasoning-gnaf-goal/package.json +++ b/compiler/rust/rust-std/reasoning-gnaf-goal/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own","own","own","own"]}],"name":"reasoning_gnaf_goal_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":1}]},{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":2}]},{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":3}]},{"function":1,"kind":"call","operands":[{"kind":"var","name":4}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}},"parameters":[0,1,2,3,4],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}},"types":[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"8"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"16"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"32"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"8"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"16"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"8"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own","own","own","own"]}],"name":"reasoning_gnaf_goal_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":1}]},{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":2}]},{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":3}]},{"function":1,"kind":"call","operands":[{"kind":"var","name":4}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}},"parameters":[0,1,2,3,4],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}},"types":[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"8"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"16"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"32"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"8"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"16"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"8"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/reasoning-gnaf-goal/provenance.json b/compiler/rust/rust-std/reasoning-gnaf-goal/provenance.json index 267cabdf1..51676b516 100644 --- a/compiler/rust/rust-std/reasoning-gnaf-goal/provenance.json +++ b/compiler/rust/rust-std/reasoning-gnaf-goal/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"7c664b1a44d8b0d82829f8a530bf9f18a59c195086e35dd97e0d8d1db06f6b70","src/lib.rs":"3c9f85f3ec07a4ff1c6a736746141acbd3cc061dfcd1ddbdfdd999d66cae1dd1"},"name":"reasoning_gnaf_goal_std","profile":"rust-std","program":"3f7539345858c86ded3ea323d38024b3deb6a45c6c7de84927959e23bbf92512","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"7c664b1a44d8b0d82829f8a530bf9f18a59c195086e35dd97e0d8d1db06f6b70","src/lib.rs":"3c9f85f3ec07a4ff1c6a736746141acbd3cc061dfcd1ddbdfdd999d66cae1dd1"},"name":"reasoning_gnaf_goal_std","profile":"rust-std","program":"3f7539345858c86ded3ea323d38024b3deb6a45c6c7de84927959e23bbf92512","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/reasoning-gnaf-priority/package.json b/compiler/rust/rust-std/reasoning-gnaf-priority/package.json index 8c34f7e79..7d0634445 100644 --- a/compiler/rust/rust-std/reasoning-gnaf-priority/package.json +++ b/compiler/rust/rust-std/reasoning-gnaf-priority/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own","own","own","own"]}],"name":"reasoning_gnaf_priority_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":1}]},{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":2}]},{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":3}]},{"function":1,"kind":"call","operands":[{"kind":"var","name":4}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}},"parameters":[0,1,2,3,4],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}},"types":[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"256"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_not"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"128"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"32"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"128"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_not"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"64"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"16"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"64"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_not"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"8"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"256"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"128"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"64"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}},"kind":"cond","then_branch":{"function":1,"kind":"call","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"64"}}],"operation":{"kind":"nat_add"}}]}},"kind":"cond","then_branch":{"function":1,"kind":"call","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"128"}}],"operation":{"kind":"nat_add"}}]}},"kind":"cond","then_branch":{"function":1,"kind":"call","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"256"}}],"operation":{"kind":"nat_add"}}]}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own","own","own","own"]}],"name":"reasoning_gnaf_priority_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":1}]},{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":2}]},{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":3}]},{"function":1,"kind":"call","operands":[{"kind":"var","name":4}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}},"parameters":[0,1,2,3,4],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}},"types":[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"256"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_not"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"128"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"32"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"128"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_not"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"64"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"16"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"64"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_not"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"8"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"256"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"128"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"64"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}},"kind":"cond","then_branch":{"function":1,"kind":"call","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"64"}}],"operation":{"kind":"nat_add"}}]}},"kind":"cond","then_branch":{"function":1,"kind":"call","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"128"}}],"operation":{"kind":"nat_add"}}]}},"kind":"cond","then_branch":{"function":1,"kind":"call","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"256"}}],"operation":{"kind":"nat_add"}}]}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/reasoning-gnaf-priority/provenance.json b/compiler/rust/rust-std/reasoning-gnaf-priority/provenance.json index e88fda7e1..0e259c178 100644 --- a/compiler/rust/rust-std/reasoning-gnaf-priority/provenance.json +++ b/compiler/rust/rust-std/reasoning-gnaf-priority/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"d274b20570b03341619467b141a37178a487d0b5de24733e083f91931360a26f","src/lib.rs":"9d82d8d81f6a7c7d5f9c6afc5a52e35128a33cfd58dcb9b238ef7881e296b376"},"name":"reasoning_gnaf_priority_std","profile":"rust-std","program":"3daf7454a6bd393de7d12ecf49636d2914d09cec5748ae837b7684e00b95fe74","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"d274b20570b03341619467b141a37178a487d0b5de24733e083f91931360a26f","src/lib.rs":"9d82d8d81f6a7c7d5f9c6afc5a52e35128a33cfd58dcb9b238ef7881e296b376"},"name":"reasoning_gnaf_priority_std","profile":"rust-std","program":"3daf7454a6bd393de7d12ecf49636d2914d09cec5748ae837b7684e00b95fe74","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/reasoning-gnaf-sweep/package.json b/compiler/rust/rust-std/reasoning-gnaf-sweep/package.json index f86f8d96c..5e6489895 100644 --- a/compiler/rust/rust-std/reasoning-gnaf-sweep/package.json +++ b/compiler/rust/rust-std/reasoning-gnaf-sweep/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own","own","own","own"]}],"name":"reasoning_gnaf_sweep_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":1}]},{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":2}]},{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":3}]},{"function":1,"kind":"call","operands":[{"kind":"var","name":4}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}},"parameters":[0,1,2,3,4],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}},"types":[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]},{"body":{"body":{"body":{"body":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"256"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"128"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"64"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}},"bound":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"256"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_not"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"128"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"32"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"else_branch":{"kind":"var","name":2},"kind":"cond","then_branch":{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"256"}}],"operation":{"kind":"nat_add"}}},"kind":"let","name":3,"type":{"kind":"nat"}},"bound":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"128"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_not"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"64"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"16"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"else_branch":{"kind":"var","name":1},"kind":"cond","then_branch":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"128"}}],"operation":{"kind":"nat_add"}}},"kind":"let","name":2,"type":{"kind":"nat"}},"bound":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"64"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_not"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"8"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}},"else_branch":{"kind":"var","name":0},"kind":"cond","then_branch":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"64"}}],"operation":{"kind":"nat_add"}}},"kind":"let","name":1,"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own","own","own","own"]}],"name":"reasoning_gnaf_sweep_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":1}]},{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":2}]},{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":3}]},{"function":1,"kind":"call","operands":[{"kind":"var","name":4}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}},"parameters":[0,1,2,3,4],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}},"types":[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]},{"body":{"body":{"body":{"body":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"256"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"128"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"64"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}},"bound":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"256"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_not"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"128"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"32"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"else_branch":{"kind":"var","name":2},"kind":"cond","then_branch":{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"256"}}],"operation":{"kind":"nat_add"}}},"kind":"let","name":3,"type":{"kind":"nat"}},"bound":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"128"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_not"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"64"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"16"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"else_branch":{"kind":"var","name":1},"kind":"cond","then_branch":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"128"}}],"operation":{"kind":"nat_add"}}},"kind":"let","name":2,"type":{"kind":"nat"}},"bound":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"64"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_not"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"8"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}},"else_branch":{"kind":"var","name":0},"kind":"cond","then_branch":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"64"}}],"operation":{"kind":"nat_add"}}},"kind":"let","name":1,"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/reasoning-gnaf-sweep/provenance.json b/compiler/rust/rust-std/reasoning-gnaf-sweep/provenance.json index cefcb51be..26669aec3 100644 --- a/compiler/rust/rust-std/reasoning-gnaf-sweep/provenance.json +++ b/compiler/rust/rust-std/reasoning-gnaf-sweep/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"cdf1a2e6549bd88950dfe97e645ceb896a5437e8a3bf85fde9fda45caeabd1af","src/lib.rs":"1dd6fa41d8bc7c26bd2829b420e6de6bfd26d017ca394c70cf50d5565469bbc5"},"name":"reasoning_gnaf_sweep_std","profile":"rust-std","program":"ed0eba6159b16bcdf765c6e275fceab30b7c9c1b6470f4a19bb09a92a79e19f4","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"cdf1a2e6549bd88950dfe97e645ceb896a5437e8a3bf85fde9fda45caeabd1af","src/lib.rs":"1dd6fa41d8bc7c26bd2829b420e6de6bfd26d017ca394c70cf50d5565469bbc5"},"name":"reasoning_gnaf_sweep_std","profile":"rust-std","program":"ed0eba6159b16bcdf765c6e275fceab30b7c9c1b6470f4a19bb09a92a79e19f4","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/reasoning-grade-shock/package.json b/compiler/rust/rust-std/reasoning-grade-shock/package.json index 1d7e77bb6..2a18d9419 100644 --- a/compiler/rust/rust-std/reasoning-grade-shock/package.json +++ b/compiler/rust/rust-std/reasoning-grade-shock/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"reasoning_grade_shock_std","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[{"index":0,"kind":"adt"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[],[],[],[],[],[],[],[]]}],"functions":[{"body":{"body":{"condition":{"kind":"second","value":{"kind":"var","name":1}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"kind":"cond","then_branch":{"function":36,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"first","value":{"kind":"var","name":1}}]}},"bound":{"function":37,"kind":"call","operands":[{"captures":[],"function":33,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"11"}},{"function":30,"kind":"call","operands":[{"kind":"var","name":0}]}]},"kind":"let","name":1,"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"380"}},{"index":0,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}},{"index":1,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"20"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"12"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":1,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":2,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":3,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":4,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"index":0,"kind":"field","value":{"kind":"var","name":0}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"function":5,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":14,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":15,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":16,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":17,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":18,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":19,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":20,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":0,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":7,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":6,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":5,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":4,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":3,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":2,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":1,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":2,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"function":22,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":0,"kind":"adt"}},{"binders":[],"body":{"function":23,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":1,"kind":"adt"}},{"binders":[],"body":{"function":24,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":2,"kind":"adt"}},{"binders":[],"body":{"function":25,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":3,"kind":"adt"}},{"binders":[],"body":{"function":26,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":4,"kind":"adt"}},{"binders":[],"body":{"function":27,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":5,"kind":"adt"}},{"binders":[],"body":{"function":28,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":6,"kind":"adt"}},{"binders":[],"body":{"function":29,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":7,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0,1],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"},{"index":2,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"shape":{"kind":"none"}},{"binders":[1],"body":{"function":32,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":31,"kind":"call","operands":[{"kind":"var","name":0}]},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[2],"body":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"ok"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"arms":[{"binders":[3],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":35,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"parameters":[0,1],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":37,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"index":1,"kind":"adt"}],"result":{"kind":"option","value":{"index":1,"kind":"adt"}}},{"kind":"nat"},{"index":1,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"reasoning_grade_shock_std","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[{"index":0,"kind":"adt"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[],[],[],[],[],[],[],[]]}],"functions":[{"body":{"body":{"condition":{"kind":"second","value":{"kind":"var","name":1}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"kind":"cond","then_branch":{"function":36,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"first","value":{"kind":"var","name":1}}]}},"bound":{"function":37,"kind":"call","operands":[{"captures":[],"function":33,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"11"}},{"function":30,"kind":"call","operands":[{"kind":"var","name":0}]}]},"kind":"let","name":1,"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"380"}},{"index":0,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}},{"index":1,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"20"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"12"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":1,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":2,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":3,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":4,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"index":0,"kind":"field","value":{"kind":"var","name":0}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"function":5,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":14,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":15,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":16,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":17,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":18,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":19,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":20,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":0,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":7,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":6,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":5,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":4,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":3,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":2,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":1,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":2,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"function":22,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":0,"kind":"adt"}},{"binders":[],"body":{"function":23,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":1,"kind":"adt"}},{"binders":[],"body":{"function":24,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":2,"kind":"adt"}},{"binders":[],"body":{"function":25,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":3,"kind":"adt"}},{"binders":[],"body":{"function":26,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":4,"kind":"adt"}},{"binders":[],"body":{"function":27,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":5,"kind":"adt"}},{"binders":[],"body":{"function":28,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":6,"kind":"adt"}},{"binders":[],"body":{"function":29,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":7,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0,1],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"},{"index":2,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"shape":{"kind":"none"}},{"binders":[1],"body":{"function":32,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":31,"kind":"call","operands":[{"kind":"var","name":0}]},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[2],"body":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"ok"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"arms":[{"binders":[3],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":35,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"parameters":[0,1],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":37,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"index":1,"kind":"adt"}],"result":{"kind":"option","value":{"index":1,"kind":"adt"}}},{"kind":"nat"},{"index":1,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/reasoning-grade-shock/provenance.json b/compiler/rust/rust-std/reasoning-grade-shock/provenance.json index 5d1325f5d..5be95765c 100644 --- a/compiler/rust/rust-std/reasoning-grade-shock/provenance.json +++ b/compiler/rust/rust-std/reasoning-grade-shock/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"b0ec18565a0061f342e0ddbea1c571e6cdc31b992192b18851da3f63a7f66492","src/lib.rs":"9f0933e50f47ed44513bdb1e5764d9b13c33de1be96385880c939b503a81bc31"},"name":"reasoning_grade_shock_std","profile":"rust-std","program":"7ff5b1276ef132016ac9da5b0a77c470eccabe50e899ca8c471b5c1d088afd5d","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"b0ec18565a0061f342e0ddbea1c571e6cdc31b992192b18851da3f63a7f66492","src/lib.rs":"9f0933e50f47ed44513bdb1e5764d9b13c33de1be96385880c939b503a81bc31"},"name":"reasoning_grade_shock_std","profile":"rust-std","program":"7ff5b1276ef132016ac9da5b0a77c470eccabe50e899ca8c471b5c1d088afd5d","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/reasoning-grade-well/package.json b/compiler/rust/rust-std/reasoning-grade-well/package.json index 7c38a4315..c62098f13 100644 --- a/compiler/rust/rust-std/reasoning-grade-well/package.json +++ b/compiler/rust/rust-std/reasoning-grade-well/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"reasoning_grade_well_std","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[{"index":0,"kind":"adt"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[],[],[],[],[],[],[],[]]}],"functions":[{"body":{"body":{"condition":{"kind":"second","value":{"kind":"var","name":1}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"kind":"cond","then_branch":{"function":36,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"first","value":{"kind":"var","name":1}}]}},"bound":{"function":37,"kind":"call","operands":[{"captures":[],"function":33,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"11"}},{"function":30,"kind":"call","operands":[{"kind":"var","name":0}]}]},"kind":"let","name":1,"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"380"}},{"index":0,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}},{"index":1,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"20"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"12"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":1,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":2,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":3,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":4,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"index":0,"kind":"field","value":{"kind":"var","name":0}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"function":5,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":14,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":15,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":16,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":17,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":18,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":19,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":20,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":0,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":7,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":6,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":5,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":4,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":3,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":2,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":1,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":2,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"function":22,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":0,"kind":"adt"}},{"binders":[],"body":{"function":23,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":1,"kind":"adt"}},{"binders":[],"body":{"function":24,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":2,"kind":"adt"}},{"binders":[],"body":{"function":25,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":3,"kind":"adt"}},{"binders":[],"body":{"function":26,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":4,"kind":"adt"}},{"binders":[],"body":{"function":27,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":5,"kind":"adt"}},{"binders":[],"body":{"function":28,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":6,"kind":"adt"}},{"binders":[],"body":{"function":29,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":7,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0,1],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"},{"index":2,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"shape":{"kind":"none"}},{"binders":[1],"body":{"function":32,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":31,"kind":"call","operands":[{"kind":"var","name":0}]},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[2],"body":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"ok"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"arms":[{"binders":[3],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":35,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"parameters":[0,1],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":37,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"index":1,"kind":"adt"}],"result":{"kind":"option","value":{"index":1,"kind":"adt"}}},{"kind":"nat"},{"index":1,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"reasoning_grade_well_std","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[{"index":0,"kind":"adt"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[],[],[],[],[],[],[],[]]}],"functions":[{"body":{"body":{"condition":{"kind":"second","value":{"kind":"var","name":1}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"kind":"cond","then_branch":{"function":36,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"first","value":{"kind":"var","name":1}}]}},"bound":{"function":37,"kind":"call","operands":[{"captures":[],"function":33,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"11"}},{"function":30,"kind":"call","operands":[{"kind":"var","name":0}]}]},"kind":"let","name":1,"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"380"}},{"index":0,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}},{"index":1,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"20"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"12"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":1,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":2,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":3,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":4,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"index":0,"kind":"field","value":{"kind":"var","name":0}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"function":5,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":14,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":15,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":16,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":17,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":18,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":19,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":20,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":0,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":7,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":6,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":5,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":4,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":3,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":2,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":1,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":2,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"function":22,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":0,"kind":"adt"}},{"binders":[],"body":{"function":23,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":1,"kind":"adt"}},{"binders":[],"body":{"function":24,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":2,"kind":"adt"}},{"binders":[],"body":{"function":25,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":3,"kind":"adt"}},{"binders":[],"body":{"function":26,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":4,"kind":"adt"}},{"binders":[],"body":{"function":27,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":5,"kind":"adt"}},{"binders":[],"body":{"function":28,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":6,"kind":"adt"}},{"binders":[],"body":{"function":29,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":7,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0,1],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"},{"index":2,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"shape":{"kind":"none"}},{"binders":[1],"body":{"function":32,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":31,"kind":"call","operands":[{"kind":"var","name":0}]},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[2],"body":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"ok"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"arms":[{"binders":[3],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":35,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"parameters":[0,1],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":37,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"index":1,"kind":"adt"}],"result":{"kind":"option","value":{"index":1,"kind":"adt"}}},{"kind":"nat"},{"index":1,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/reasoning-grade-well/provenance.json b/compiler/rust/rust-std/reasoning-grade-well/provenance.json index ec49bedb5..243710968 100644 --- a/compiler/rust/rust-std/reasoning-grade-well/provenance.json +++ b/compiler/rust/rust-std/reasoning-grade-well/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"e5aae7bacd38b43468b7d1aad15d6666cc62a5bed9abc588a425a8938a781e05","src/lib.rs":"9f0933e50f47ed44513bdb1e5764d9b13c33de1be96385880c939b503a81bc31"},"name":"reasoning_grade_well_std","profile":"rust-std","program":"7ff5b1276ef132016ac9da5b0a77c470eccabe50e899ca8c471b5c1d088afd5d","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"e5aae7bacd38b43468b7d1aad15d6666cc62a5bed9abc588a425a8938a781e05","src/lib.rs":"9f0933e50f47ed44513bdb1e5764d9b13c33de1be96385880c939b503a81bc31"},"name":"reasoning_grade_well_std","profile":"rust-std","program":"7ff5b1276ef132016ac9da5b0a77c470eccabe50e899ca8c471b5c1d088afd5d","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/reasoning-plan-2/package.json b/compiler/rust/rust-std/reasoning-plan-2/package.json index 41a0f8c3a..9061e250c 100644 --- a/compiler/rust/rust-std/reasoning-plan-2/package.json +++ b/compiler/rust/rust-std/reasoning-plan-2/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"reasoning_plan_2_std","profile":"rust-std","program":{"adts":[{"constructors":[[],[],[{"kind":"nat"}]]},{"constructors":[[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"element":{"index":0,"kind":"adt"},"kind":"list"}]]},{"constructors":[[{"element":{"index":1,"kind":"adt"},"kind":"list"},{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"option","value":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"index":1,"kind":"adt"}}},{"kind":"bool"},{"index":3,"kind":"adt"}]]},{"constructors":[[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]}],"functions":[{"body":{"body":{"kind":"build","operands":[{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"first","value":{"kind":"var","name":2}},{"index":1,"kind":"field","value":{"kind":"second","value":{"kind":"var","name":2}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}}],"shape":{"kind":"ok"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[{"condition":{"kind":"prim","operands":[{"kind":"second","value":{"kind":"var","name":1}},{"kind":"prim","operands":[{"index":3,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}],"operation":{"kind":"bool_not"}}],"operation":{"kind":"bool_and"}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"index":2,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}}},{"kind":"build","operands":[{"index":0,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"kind":"build","operands":[{"index":1,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"kind":"build","operands":[{"index":2,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"kind":"build","operands":[{"index":3,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"kind":"build","operands":[{"index":4,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"index":5,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}},"bound":{"function":32,"kind":"call","operands":[{"captures":[{"kind":"var","name":0}],"function":25,"kind":"closure"},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"8"}}],"operation":{"kind":"nat_mul"}},{"function":24,"kind":"call","operands":[{"kind":"var","name":0}]}]},"kind":"let","name":1,"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0],"result":{"kind":"pair","left":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}},"types":[{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}}],"operation":{"kind":"nat_lt"}},{"kind":"prim","operands":[{"kind":"second","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}},{"kind":"second","value":{"kind":"var","name":0}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"condition":{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":2,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"second","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"kind":"build","operands":[{"kind":"first","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"condition":{"function":4,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":5,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_le"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"second","value":{"kind":"var","name":0}},{"kind":"var","name":1}],"operation":{"kind":"nat_add"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_le"}},{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":0}},{"kind":"var","name":1}],"operation":{"kind":"nat_sub"}},{"kind":"prim","operands":[{"kind":"second","value":{"kind":"var","name":0}},{"kind":"var","name":1}],"operation":{"kind":"nat_add"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":8,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"function":3,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":0,"kind":"adt"}},{"binders":[],"body":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":1,"kind":"adt"}},{"binders":[2],"body":{"function":10,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"shape":{"constructor":2,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"index":0,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"types":[{"kind":"nat"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":0}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"second","value":{"kind":"var","name":1}},{"kind":"var","name":0}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":1}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"kind":"nat"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"shape":{"kind":"none"}},{"binders":[2],"body":{"body":{"condition":{"kind":"var","name":3},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}},"bound":{"function":14,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"kind":"let","name":3,"type":{"kind":"bool"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":13,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"nat"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"shape":{"kind":"none"}},{"binders":[1],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"operation":{"kind":"append"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":11,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"kind":"build","operands":[],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}}]},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"parameters":[0],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"shape":{"kind":"none"}},{"binders":[1],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":1,"kind":"adt"},"type":{"index":0,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"operation":{"kind":"append"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":11,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"kind":"build","operands":[],"shape":{"constructor":1,"kind":"adt"},"type":{"index":0,"kind":"adt"}}]},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"parameters":[0],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"none"}},{"binders":[3],"body":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":3},{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"constructor":2,"kind":"adt"},"type":{"index":0,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"operation":{"kind":"append"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"operation":{"kind":"append"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":11,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"constructor":2,"kind":"adt"},"type":{"index":0,"kind":"adt"}}]},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"index":1,"kind":"adt"},{"element":{"index":1,"kind":"adt"},"kind":"list"},{"kind":"nat"}]},{"body":{"function":28,"kind":"call","operands":[{"captures":[{"kind":"var","name":0}],"function":18,"kind":"closure"},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"function":9,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}]},"parameters":[0],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"function":16,"kind":"call","operands":[{"kind":"var","name":0}]},{"kind":"prim","operands":[{"function":17,"kind":"call","operands":[{"kind":"var","name":0}]},{"function":19,"kind":"call","operands":[{"kind":"var","name":0}]}],"operation":{"kind":"append"}}],"operation":{"kind":"append"}},"parameters":[0],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":30,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":0}},{"index":0,"kind":"field","value":{"kind":"var","name":1}}]},"else_branch":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":0}},{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"operation":{"kind":"append"}},{"function":31,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":0}},{"index":0,"kind":"field","value":{"kind":"var","name":1}}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"index":1,"kind":"adt"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}}},"kind":"cond","then_branch":{"kind":"var","name":0}},"parameters":[0,1],"result":{"kind":"pair","left":{"element":{"index":1,"kind":"adt"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},"types":[{"kind":"pair","left":{"element":{"index":1,"kind":"adt"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},{"index":1,"kind":"adt"}]},{"body":{"function":29,"kind":"call","operands":[{"captures":[],"function":21,"kind":"closure"},{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"kind":"var","name":0}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"index":1,"kind":"adt"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}}},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"kind":"pair","left":{"element":{"index":1,"kind":"adt"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"},{"element":{"index":1,"kind":"adt"},"kind":"list"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}},{"kind":"var","name":0}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"var","name":1},"kind":"cond","then_branch":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"operation":{"kind":"append"}}},"parameters":[0,1,2],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"kind":"nat"},{"element":{"index":1,"kind":"adt"},"kind":"list"},{"index":1,"kind":"adt"}]},{"body":{"body":{"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":31,"kind":"call","operands":[{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]}]},{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"index":1,"kind":"adt"}}}},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_lt"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"prim","operands":[{"kind":"var","name":2}],"operation":{"kind":"length"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":3,"kind":"adt"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}},"bound":{"function":27,"kind":"call","operands":[{"captures":[{"kind":"var","name":1}],"function":23,"kind":"closure"},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"kind":"build","operands":[{"kind":"build","operands":[{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}]},"kind":"let","name":2,"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":0}],"operation":{"kind":"nat_add"}},"kind":"let","name":1,"type":{"kind":"nat"}},"parameters":[0],"result":{"index":2,"kind":"adt"},"types":[{"kind":"nat"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"arms":[{"binders":[5],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":4},{"index":1,"kind":"field","value":{"kind":"var","name":1}},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":5},{"kind":"var","name":3}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"index":1,"kind":"adt"}}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"index":1,"kind":"adt"}}}},{"index":3,"kind":"field","value":{"kind":"var","name":1}},{"kind":"build","operands":[{"kind":"prim","operands":[{"index":0,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"index":1,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},{"index":2,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},{"index":3,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"index":5,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":3,"kind":"adt"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"body":{"body":{"body":{"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":9},{"kind":"second","value":{"kind":"var","name":7}},{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"index":1,"kind":"adt"}}}},{"kind":"prim","operands":[{"index":3,"kind":"field","value":{"kind":"var","name":1}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":0}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"kind":"var","name":8}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_lt"}}],"operation":{"kind":"bool_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"index":0,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},{"function":26,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":3}}]}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"prim","operands":[{"kind":"var","name":6}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":3,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"condition":{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"prim","operands":[{"kind":"var","name":9}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"index":5,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},"kind":"cond","then_branch":{"kind":"prim","operands":[{"kind":"var","name":9}],"operation":{"kind":"length"}}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":3,"kind":"adt"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"bound":{"function":27,"kind":"call","operands":[{"captures":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":0}],"operation":{"kind":"nat_add"}}],"function":23,"kind":"closure"},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"kind":"var","name":8}]},"kind":"let","name":9,"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":4},{"kind":"first","value":{"kind":"var","name":7}}],"operation":{"kind":"append"}},"kind":"let","name":8,"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"bound":{"function":22,"kind":"call","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":1}},{"kind":"var","name":6}]},"kind":"let","name":7,"type":{"kind":"pair","left":{"element":{"index":1,"kind":"adt"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}}},"bound":{"function":20,"kind":"call","operands":[{"kind":"var","name":3}]},"kind":"let","name":6,"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":15,"kind":"call","operands":[{"kind":"var","name":0},{"index":0,"kind":"field","value":{"kind":"var","name":3}}]},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"index":0,"kind":"field","value":{"kind":"var","name":1}},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"index":2,"kind":"field","value":{"kind":"var","name":1}},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"parameters":[0,1],"result":{"kind":"option","value":{"index":2,"kind":"adt"}},"types":[{"kind":"nat"},{"index":2,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"prim","operands":[{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_add"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":27,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"kind":"fn","parameters":[{"element":{"index":1,"kind":"adt"},"kind":"list"},{"index":1,"kind":"adt"}],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"element":{"index":1,"kind":"adt"},"kind":"list"},{"element":{"index":1,"kind":"adt"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":28,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"kind":"fn","parameters":[{"element":{"index":1,"kind":"adt"},"kind":"list"},{"kind":"nat"}],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"element":{"index":1,"kind":"adt"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":29,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"pair","left":{"element":{"index":1,"kind":"adt"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"element":{"index":1,"kind":"adt"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},"types":[{"kind":"fn","parameters":[{"kind":"pair","left":{"element":{"index":1,"kind":"adt"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},{"index":1,"kind":"adt"}],"result":{"kind":"pair","left":{"element":{"index":1,"kind":"adt"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}}},{"kind":"pair","left":{"element":{"index":1,"kind":"adt"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},{"element":{"index":1,"kind":"adt"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":30,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":31,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":32,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"index":2,"kind":"adt"}],"result":{"kind":"option","value":{"index":2,"kind":"adt"}}},{"kind":"nat"},{"index":2,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"reasoning_plan_2_std","profile":"rust-std","program":{"adts":[{"constructors":[[],[],[{"kind":"nat"}]]},{"constructors":[[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"element":{"index":0,"kind":"adt"},"kind":"list"}]]},{"constructors":[[{"element":{"index":1,"kind":"adt"},"kind":"list"},{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"option","value":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"index":1,"kind":"adt"}}},{"kind":"bool"},{"index":3,"kind":"adt"}]]},{"constructors":[[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]}],"functions":[{"body":{"body":{"kind":"build","operands":[{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"first","value":{"kind":"var","name":2}},{"index":1,"kind":"field","value":{"kind":"second","value":{"kind":"var","name":2}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}}],"shape":{"kind":"ok"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[{"condition":{"kind":"prim","operands":[{"kind":"second","value":{"kind":"var","name":1}},{"kind":"prim","operands":[{"index":3,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}],"operation":{"kind":"bool_not"}}],"operation":{"kind":"bool_and"}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"index":2,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}}},{"kind":"build","operands":[{"index":0,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"kind":"build","operands":[{"index":1,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"kind":"build","operands":[{"index":2,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"kind":"build","operands":[{"index":3,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"kind":"build","operands":[{"index":4,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"index":5,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}},"bound":{"function":32,"kind":"call","operands":[{"captures":[{"kind":"var","name":0}],"function":25,"kind":"closure"},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"8"}}],"operation":{"kind":"nat_mul"}},{"function":24,"kind":"call","operands":[{"kind":"var","name":0}]}]},"kind":"let","name":1,"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0],"result":{"kind":"pair","left":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}},"types":[{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}}],"operation":{"kind":"nat_lt"}},{"kind":"prim","operands":[{"kind":"second","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}},{"kind":"second","value":{"kind":"var","name":0}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"condition":{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":2,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"second","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"kind":"build","operands":[{"kind":"first","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"condition":{"function":4,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":5,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_le"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"second","value":{"kind":"var","name":0}},{"kind":"var","name":1}],"operation":{"kind":"nat_add"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_le"}},{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":0}},{"kind":"var","name":1}],"operation":{"kind":"nat_sub"}},{"kind":"prim","operands":[{"kind":"second","value":{"kind":"var","name":0}},{"kind":"var","name":1}],"operation":{"kind":"nat_add"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":8,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"function":3,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":0,"kind":"adt"}},{"binders":[],"body":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":1,"kind":"adt"}},{"binders":[2],"body":{"function":10,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"shape":{"constructor":2,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"index":0,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"types":[{"kind":"nat"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":0}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"second","value":{"kind":"var","name":1}},{"kind":"var","name":0}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":1}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"kind":"nat"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"shape":{"kind":"none"}},{"binders":[2],"body":{"body":{"condition":{"kind":"var","name":3},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}},"bound":{"function":14,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"kind":"let","name":3,"type":{"kind":"bool"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":13,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"nat"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"shape":{"kind":"none"}},{"binders":[1],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"operation":{"kind":"append"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":11,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"kind":"build","operands":[],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}}]},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"parameters":[0],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"shape":{"kind":"none"}},{"binders":[1],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":1,"kind":"adt"},"type":{"index":0,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"operation":{"kind":"append"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":11,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"kind":"build","operands":[],"shape":{"constructor":1,"kind":"adt"},"type":{"index":0,"kind":"adt"}}]},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"parameters":[0],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"none"}},{"binders":[3],"body":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":3},{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"constructor":2,"kind":"adt"},"type":{"index":0,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"operation":{"kind":"append"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"operation":{"kind":"append"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":11,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"constructor":2,"kind":"adt"},"type":{"index":0,"kind":"adt"}}]},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"index":1,"kind":"adt"},{"element":{"index":1,"kind":"adt"},"kind":"list"},{"kind":"nat"}]},{"body":{"function":28,"kind":"call","operands":[{"captures":[{"kind":"var","name":0}],"function":18,"kind":"closure"},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"function":9,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}]},"parameters":[0],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"function":16,"kind":"call","operands":[{"kind":"var","name":0}]},{"kind":"prim","operands":[{"function":17,"kind":"call","operands":[{"kind":"var","name":0}]},{"function":19,"kind":"call","operands":[{"kind":"var","name":0}]}],"operation":{"kind":"append"}}],"operation":{"kind":"append"}},"parameters":[0],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":30,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":0}},{"index":0,"kind":"field","value":{"kind":"var","name":1}}]},"else_branch":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":0}},{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"operation":{"kind":"append"}},{"function":31,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":0}},{"index":0,"kind":"field","value":{"kind":"var","name":1}}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"index":1,"kind":"adt"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}}},"kind":"cond","then_branch":{"kind":"var","name":0}},"parameters":[0,1],"result":{"kind":"pair","left":{"element":{"index":1,"kind":"adt"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},"types":[{"kind":"pair","left":{"element":{"index":1,"kind":"adt"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},{"index":1,"kind":"adt"}]},{"body":{"function":29,"kind":"call","operands":[{"captures":[],"function":21,"kind":"closure"},{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"kind":"var","name":0}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"index":1,"kind":"adt"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}}},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"kind":"pair","left":{"element":{"index":1,"kind":"adt"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"},{"element":{"index":1,"kind":"adt"},"kind":"list"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}},{"kind":"var","name":0}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"var","name":1},"kind":"cond","then_branch":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"operation":{"kind":"append"}}},"parameters":[0,1,2],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"kind":"nat"},{"element":{"index":1,"kind":"adt"},"kind":"list"},{"index":1,"kind":"adt"}]},{"body":{"body":{"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":31,"kind":"call","operands":[{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]}]},{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"index":1,"kind":"adt"}}}},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_lt"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"prim","operands":[{"kind":"var","name":2}],"operation":{"kind":"length"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":3,"kind":"adt"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}},"bound":{"function":27,"kind":"call","operands":[{"captures":[{"kind":"var","name":1}],"function":23,"kind":"closure"},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"kind":"build","operands":[{"kind":"build","operands":[{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}]},"kind":"let","name":2,"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":0}],"operation":{"kind":"nat_add"}},"kind":"let","name":1,"type":{"kind":"nat"}},"parameters":[0],"result":{"index":2,"kind":"adt"},"types":[{"kind":"nat"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"arms":[{"binders":[5],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":4},{"index":1,"kind":"field","value":{"kind":"var","name":1}},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":5},{"kind":"var","name":3}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"index":1,"kind":"adt"}}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"index":1,"kind":"adt"}}}},{"index":3,"kind":"field","value":{"kind":"var","name":1}},{"kind":"build","operands":[{"kind":"prim","operands":[{"index":0,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"index":1,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},{"index":2,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},{"index":3,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"index":5,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":3,"kind":"adt"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"body":{"body":{"body":{"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":9},{"kind":"second","value":{"kind":"var","name":7}},{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"index":1,"kind":"adt"}}}},{"kind":"prim","operands":[{"index":3,"kind":"field","value":{"kind":"var","name":1}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":0}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"kind":"var","name":8}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_lt"}}],"operation":{"kind":"bool_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"index":0,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},{"function":26,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":3}}]}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"prim","operands":[{"kind":"var","name":6}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":3,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"condition":{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"prim","operands":[{"kind":"var","name":9}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"index":5,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},"kind":"cond","then_branch":{"kind":"prim","operands":[{"kind":"var","name":9}],"operation":{"kind":"length"}}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":3,"kind":"adt"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"bound":{"function":27,"kind":"call","operands":[{"captures":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":0}],"operation":{"kind":"nat_add"}}],"function":23,"kind":"closure"},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"kind":"var","name":8}]},"kind":"let","name":9,"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":4},{"kind":"first","value":{"kind":"var","name":7}}],"operation":{"kind":"append"}},"kind":"let","name":8,"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"bound":{"function":22,"kind":"call","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":1}},{"kind":"var","name":6}]},"kind":"let","name":7,"type":{"kind":"pair","left":{"element":{"index":1,"kind":"adt"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}}},"bound":{"function":20,"kind":"call","operands":[{"kind":"var","name":3}]},"kind":"let","name":6,"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":15,"kind":"call","operands":[{"kind":"var","name":0},{"index":0,"kind":"field","value":{"kind":"var","name":3}}]},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"index":0,"kind":"field","value":{"kind":"var","name":1}},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"index":2,"kind":"field","value":{"kind":"var","name":1}},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"parameters":[0,1],"result":{"kind":"option","value":{"index":2,"kind":"adt"}},"types":[{"kind":"nat"},{"index":2,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"prim","operands":[{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_add"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":27,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"kind":"fn","parameters":[{"element":{"index":1,"kind":"adt"},"kind":"list"},{"index":1,"kind":"adt"}],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"element":{"index":1,"kind":"adt"},"kind":"list"},{"element":{"index":1,"kind":"adt"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":28,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"kind":"fn","parameters":[{"element":{"index":1,"kind":"adt"},"kind":"list"},{"kind":"nat"}],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"element":{"index":1,"kind":"adt"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":29,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"pair","left":{"element":{"index":1,"kind":"adt"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"element":{"index":1,"kind":"adt"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},"types":[{"kind":"fn","parameters":[{"kind":"pair","left":{"element":{"index":1,"kind":"adt"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},{"index":1,"kind":"adt"}],"result":{"kind":"pair","left":{"element":{"index":1,"kind":"adt"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}}},{"kind":"pair","left":{"element":{"index":1,"kind":"adt"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},{"element":{"index":1,"kind":"adt"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":30,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":31,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":32,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"index":2,"kind":"adt"}],"result":{"kind":"option","value":{"index":2,"kind":"adt"}}},{"kind":"nat"},{"index":2,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/reasoning-plan-2/provenance.json b/compiler/rust/rust-std/reasoning-plan-2/provenance.json index 790a77870..6e10de80b 100644 --- a/compiler/rust/rust-std/reasoning-plan-2/provenance.json +++ b/compiler/rust/rust-std/reasoning-plan-2/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"717568141a6f7d58a1256ffbb9faa063536255f60c354d18318f9fbed31c5606","src/lib.rs":"a7ada95cc9dfe0c7dcf9d2fcac9194236134b82061947cc1cc304af9c454849a"},"name":"reasoning_plan_2_std","profile":"rust-std","program":"ca078dae05ae66f886417b7bbdb424579795ed76385f082a0e889ee35408dff1","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"717568141a6f7d58a1256ffbb9faa063536255f60c354d18318f9fbed31c5606","src/lib.rs":"a7ada95cc9dfe0c7dcf9d2fcac9194236134b82061947cc1cc304af9c454849a"},"name":"reasoning_plan_2_std","profile":"rust-std","program":"ca078dae05ae66f886417b7bbdb424579795ed76385f082a0e889ee35408dff1","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/reasoning-plan-5/package.json b/compiler/rust/rust-std/reasoning-plan-5/package.json index 520ff2923..78f7f6e6f 100644 --- a/compiler/rust/rust-std/reasoning-plan-5/package.json +++ b/compiler/rust/rust-std/reasoning-plan-5/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"reasoning_plan_5_std","profile":"rust-std","program":{"adts":[{"constructors":[[],[],[{"kind":"nat"}]]},{"constructors":[[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"element":{"index":0,"kind":"adt"},"kind":"list"}]]},{"constructors":[[{"element":{"index":1,"kind":"adt"},"kind":"list"},{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"option","value":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"index":1,"kind":"adt"}}},{"kind":"bool"},{"index":3,"kind":"adt"}]]},{"constructors":[[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]}],"functions":[{"body":{"body":{"kind":"build","operands":[{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"first","value":{"kind":"var","name":2}},{"index":1,"kind":"field","value":{"kind":"second","value":{"kind":"var","name":2}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}}],"shape":{"kind":"ok"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[{"condition":{"kind":"prim","operands":[{"kind":"second","value":{"kind":"var","name":1}},{"kind":"prim","operands":[{"index":3,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}],"operation":{"kind":"bool_not"}}],"operation":{"kind":"bool_and"}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"index":2,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}}},{"kind":"build","operands":[{"index":0,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"kind":"build","operands":[{"index":1,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"kind":"build","operands":[{"index":2,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"kind":"build","operands":[{"index":3,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"kind":"build","operands":[{"index":4,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"index":5,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}},"bound":{"function":32,"kind":"call","operands":[{"captures":[{"kind":"var","name":0}],"function":25,"kind":"closure"},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"8"}}],"operation":{"kind":"nat_mul"}},{"function":24,"kind":"call","operands":[{"kind":"var","name":0}]}]},"kind":"let","name":1,"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0],"result":{"kind":"pair","left":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}},"types":[{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}}],"operation":{"kind":"nat_lt"}},{"kind":"prim","operands":[{"kind":"second","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}},{"kind":"second","value":{"kind":"var","name":0}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"condition":{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":2,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"second","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"kind":"build","operands":[{"kind":"first","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"condition":{"function":4,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":5,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_le"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"second","value":{"kind":"var","name":0}},{"kind":"var","name":1}],"operation":{"kind":"nat_add"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_le"}},{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":0}},{"kind":"var","name":1}],"operation":{"kind":"nat_sub"}},{"kind":"prim","operands":[{"kind":"second","value":{"kind":"var","name":0}},{"kind":"var","name":1}],"operation":{"kind":"nat_add"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":8,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"function":3,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":0,"kind":"adt"}},{"binders":[],"body":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":1,"kind":"adt"}},{"binders":[2],"body":{"function":10,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"shape":{"constructor":2,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"index":0,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"types":[{"kind":"nat"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":0}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"second","value":{"kind":"var","name":1}},{"kind":"var","name":0}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":1}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"kind":"nat"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"shape":{"kind":"none"}},{"binders":[2],"body":{"body":{"condition":{"kind":"var","name":3},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}},"bound":{"function":14,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"kind":"let","name":3,"type":{"kind":"bool"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":13,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"nat"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"shape":{"kind":"none"}},{"binders":[1],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"operation":{"kind":"append"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":11,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"kind":"build","operands":[],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}}]},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"parameters":[0],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"shape":{"kind":"none"}},{"binders":[1],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":1,"kind":"adt"},"type":{"index":0,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"operation":{"kind":"append"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":11,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"kind":"build","operands":[],"shape":{"constructor":1,"kind":"adt"},"type":{"index":0,"kind":"adt"}}]},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"parameters":[0],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"none"}},{"binders":[3],"body":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":3},{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"constructor":2,"kind":"adt"},"type":{"index":0,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"operation":{"kind":"append"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"operation":{"kind":"append"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":11,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"constructor":2,"kind":"adt"},"type":{"index":0,"kind":"adt"}}]},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"index":1,"kind":"adt"},{"element":{"index":1,"kind":"adt"},"kind":"list"},{"kind":"nat"}]},{"body":{"function":28,"kind":"call","operands":[{"captures":[{"kind":"var","name":0}],"function":18,"kind":"closure"},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"function":9,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}]},"parameters":[0],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"function":16,"kind":"call","operands":[{"kind":"var","name":0}]},{"kind":"prim","operands":[{"function":17,"kind":"call","operands":[{"kind":"var","name":0}]},{"function":19,"kind":"call","operands":[{"kind":"var","name":0}]}],"operation":{"kind":"append"}}],"operation":{"kind":"append"}},"parameters":[0],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":30,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":0}},{"index":0,"kind":"field","value":{"kind":"var","name":1}}]},"else_branch":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":0}},{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"operation":{"kind":"append"}},{"function":31,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":0}},{"index":0,"kind":"field","value":{"kind":"var","name":1}}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"index":1,"kind":"adt"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}}},"kind":"cond","then_branch":{"kind":"var","name":0}},"parameters":[0,1],"result":{"kind":"pair","left":{"element":{"index":1,"kind":"adt"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},"types":[{"kind":"pair","left":{"element":{"index":1,"kind":"adt"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},{"index":1,"kind":"adt"}]},{"body":{"function":29,"kind":"call","operands":[{"captures":[],"function":21,"kind":"closure"},{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"kind":"var","name":0}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"index":1,"kind":"adt"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}}},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"kind":"pair","left":{"element":{"index":1,"kind":"adt"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"},{"element":{"index":1,"kind":"adt"},"kind":"list"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}},{"kind":"var","name":0}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"var","name":1},"kind":"cond","then_branch":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"operation":{"kind":"append"}}},"parameters":[0,1,2],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"kind":"nat"},{"element":{"index":1,"kind":"adt"},"kind":"list"},{"index":1,"kind":"adt"}]},{"body":{"body":{"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":31,"kind":"call","operands":[{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]}]},{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"index":1,"kind":"adt"}}}},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_lt"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"prim","operands":[{"kind":"var","name":2}],"operation":{"kind":"length"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":3,"kind":"adt"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}},"bound":{"function":27,"kind":"call","operands":[{"captures":[{"kind":"var","name":1}],"function":23,"kind":"closure"},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"kind":"build","operands":[{"kind":"build","operands":[{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}]},"kind":"let","name":2,"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":0}],"operation":{"kind":"nat_add"}},"kind":"let","name":1,"type":{"kind":"nat"}},"parameters":[0],"result":{"index":2,"kind":"adt"},"types":[{"kind":"nat"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"arms":[{"binders":[5],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":4},{"index":1,"kind":"field","value":{"kind":"var","name":1}},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":5},{"kind":"var","name":3}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"index":1,"kind":"adt"}}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"index":1,"kind":"adt"}}}},{"index":3,"kind":"field","value":{"kind":"var","name":1}},{"kind":"build","operands":[{"kind":"prim","operands":[{"index":0,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"index":1,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},{"index":2,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},{"index":3,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"index":5,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":3,"kind":"adt"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"body":{"body":{"body":{"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":9},{"kind":"second","value":{"kind":"var","name":7}},{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"index":1,"kind":"adt"}}}},{"kind":"prim","operands":[{"index":3,"kind":"field","value":{"kind":"var","name":1}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":0}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"kind":"var","name":8}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_lt"}}],"operation":{"kind":"bool_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"index":0,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},{"function":26,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":3}}]}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"prim","operands":[{"kind":"var","name":6}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":3,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"condition":{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"prim","operands":[{"kind":"var","name":9}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"index":5,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},"kind":"cond","then_branch":{"kind":"prim","operands":[{"kind":"var","name":9}],"operation":{"kind":"length"}}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":3,"kind":"adt"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"bound":{"function":27,"kind":"call","operands":[{"captures":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":0}],"operation":{"kind":"nat_add"}}],"function":23,"kind":"closure"},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"kind":"var","name":8}]},"kind":"let","name":9,"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":4},{"kind":"first","value":{"kind":"var","name":7}}],"operation":{"kind":"append"}},"kind":"let","name":8,"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"bound":{"function":22,"kind":"call","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":1}},{"kind":"var","name":6}]},"kind":"let","name":7,"type":{"kind":"pair","left":{"element":{"index":1,"kind":"adt"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}}},"bound":{"function":20,"kind":"call","operands":[{"kind":"var","name":3}]},"kind":"let","name":6,"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":15,"kind":"call","operands":[{"kind":"var","name":0},{"index":0,"kind":"field","value":{"kind":"var","name":3}}]},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"index":0,"kind":"field","value":{"kind":"var","name":1}},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"index":2,"kind":"field","value":{"kind":"var","name":1}},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"parameters":[0,1],"result":{"kind":"option","value":{"index":2,"kind":"adt"}},"types":[{"kind":"nat"},{"index":2,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"prim","operands":[{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_add"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":27,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"kind":"fn","parameters":[{"element":{"index":1,"kind":"adt"},"kind":"list"},{"index":1,"kind":"adt"}],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"element":{"index":1,"kind":"adt"},"kind":"list"},{"element":{"index":1,"kind":"adt"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":28,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"kind":"fn","parameters":[{"element":{"index":1,"kind":"adt"},"kind":"list"},{"kind":"nat"}],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"element":{"index":1,"kind":"adt"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":29,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"pair","left":{"element":{"index":1,"kind":"adt"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"element":{"index":1,"kind":"adt"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},"types":[{"kind":"fn","parameters":[{"kind":"pair","left":{"element":{"index":1,"kind":"adt"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},{"index":1,"kind":"adt"}],"result":{"kind":"pair","left":{"element":{"index":1,"kind":"adt"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}}},{"kind":"pair","left":{"element":{"index":1,"kind":"adt"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},{"element":{"index":1,"kind":"adt"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":30,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":31,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":32,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"index":2,"kind":"adt"}],"result":{"kind":"option","value":{"index":2,"kind":"adt"}}},{"kind":"nat"},{"index":2,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"reasoning_plan_5_std","profile":"rust-std","program":{"adts":[{"constructors":[[],[],[{"kind":"nat"}]]},{"constructors":[[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"element":{"index":0,"kind":"adt"},"kind":"list"}]]},{"constructors":[[{"element":{"index":1,"kind":"adt"},"kind":"list"},{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"option","value":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"index":1,"kind":"adt"}}},{"kind":"bool"},{"index":3,"kind":"adt"}]]},{"constructors":[[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]}],"functions":[{"body":{"body":{"kind":"build","operands":[{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"first","value":{"kind":"var","name":2}},{"index":1,"kind":"field","value":{"kind":"second","value":{"kind":"var","name":2}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}}],"shape":{"kind":"ok"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[{"condition":{"kind":"prim","operands":[{"kind":"second","value":{"kind":"var","name":1}},{"kind":"prim","operands":[{"index":3,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}],"operation":{"kind":"bool_not"}}],"operation":{"kind":"bool_and"}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"index":2,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}}},{"kind":"build","operands":[{"index":0,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"kind":"build","operands":[{"index":1,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"kind":"build","operands":[{"index":2,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"kind":"build","operands":[{"index":3,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"kind":"build","operands":[{"index":4,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"index":5,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}},"bound":{"function":32,"kind":"call","operands":[{"captures":[{"kind":"var","name":0}],"function":25,"kind":"closure"},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"8"}}],"operation":{"kind":"nat_mul"}},{"function":24,"kind":"call","operands":[{"kind":"var","name":0}]}]},"kind":"let","name":1,"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0],"result":{"kind":"pair","left":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}},"types":[{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}}],"operation":{"kind":"nat_lt"}},{"kind":"prim","operands":[{"kind":"second","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}},{"kind":"second","value":{"kind":"var","name":0}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"condition":{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":2,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"second","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"kind":"build","operands":[{"kind":"first","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"condition":{"function":4,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":5,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_le"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"second","value":{"kind":"var","name":0}},{"kind":"var","name":1}],"operation":{"kind":"nat_add"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_le"}},{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":0}},{"kind":"var","name":1}],"operation":{"kind":"nat_sub"}},{"kind":"prim","operands":[{"kind":"second","value":{"kind":"var","name":0}},{"kind":"var","name":1}],"operation":{"kind":"nat_add"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":8,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"function":3,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":0,"kind":"adt"}},{"binders":[],"body":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":1,"kind":"adt"}},{"binders":[2],"body":{"function":10,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"shape":{"constructor":2,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"index":0,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"types":[{"kind":"nat"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":0}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"second","value":{"kind":"var","name":1}},{"kind":"var","name":0}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":1}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"kind":"nat"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"shape":{"kind":"none"}},{"binders":[2],"body":{"body":{"condition":{"kind":"var","name":3},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}},"bound":{"function":14,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"kind":"let","name":3,"type":{"kind":"bool"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":13,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"nat"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"shape":{"kind":"none"}},{"binders":[1],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"operation":{"kind":"append"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":11,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"kind":"build","operands":[],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}}]},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"parameters":[0],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"shape":{"kind":"none"}},{"binders":[1],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":1,"kind":"adt"},"type":{"index":0,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"operation":{"kind":"append"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":11,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"kind":"build","operands":[],"shape":{"constructor":1,"kind":"adt"},"type":{"index":0,"kind":"adt"}}]},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"parameters":[0],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"none"}},{"binders":[3],"body":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":3},{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"constructor":2,"kind":"adt"},"type":{"index":0,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"operation":{"kind":"append"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"operation":{"kind":"append"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":11,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"constructor":2,"kind":"adt"},"type":{"index":0,"kind":"adt"}}]},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"index":1,"kind":"adt"},{"element":{"index":1,"kind":"adt"},"kind":"list"},{"kind":"nat"}]},{"body":{"function":28,"kind":"call","operands":[{"captures":[{"kind":"var","name":0}],"function":18,"kind":"closure"},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"function":9,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}]},"parameters":[0],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"function":16,"kind":"call","operands":[{"kind":"var","name":0}]},{"kind":"prim","operands":[{"function":17,"kind":"call","operands":[{"kind":"var","name":0}]},{"function":19,"kind":"call","operands":[{"kind":"var","name":0}]}],"operation":{"kind":"append"}}],"operation":{"kind":"append"}},"parameters":[0],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":30,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":0}},{"index":0,"kind":"field","value":{"kind":"var","name":1}}]},"else_branch":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":0}},{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"operation":{"kind":"append"}},{"function":31,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":0}},{"index":0,"kind":"field","value":{"kind":"var","name":1}}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"index":1,"kind":"adt"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}}},"kind":"cond","then_branch":{"kind":"var","name":0}},"parameters":[0,1],"result":{"kind":"pair","left":{"element":{"index":1,"kind":"adt"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},"types":[{"kind":"pair","left":{"element":{"index":1,"kind":"adt"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},{"index":1,"kind":"adt"}]},{"body":{"function":29,"kind":"call","operands":[{"captures":[],"function":21,"kind":"closure"},{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"kind":"var","name":0}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"index":1,"kind":"adt"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}}},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"kind":"pair","left":{"element":{"index":1,"kind":"adt"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"},{"element":{"index":1,"kind":"adt"},"kind":"list"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}},{"kind":"var","name":0}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"var","name":1},"kind":"cond","then_branch":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"operation":{"kind":"append"}}},"parameters":[0,1,2],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"kind":"nat"},{"element":{"index":1,"kind":"adt"},"kind":"list"},{"index":1,"kind":"adt"}]},{"body":{"body":{"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":31,"kind":"call","operands":[{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]}]},{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"index":1,"kind":"adt"}}}},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_lt"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"prim","operands":[{"kind":"var","name":2}],"operation":{"kind":"length"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":3,"kind":"adt"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}},"bound":{"function":27,"kind":"call","operands":[{"captures":[{"kind":"var","name":1}],"function":23,"kind":"closure"},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"kind":"build","operands":[{"kind":"build","operands":[{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}]},"kind":"let","name":2,"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":0}],"operation":{"kind":"nat_add"}},"kind":"let","name":1,"type":{"kind":"nat"}},"parameters":[0],"result":{"index":2,"kind":"adt"},"types":[{"kind":"nat"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"arms":[{"binders":[5],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":4},{"index":1,"kind":"field","value":{"kind":"var","name":1}},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":5},{"kind":"var","name":3}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"index":1,"kind":"adt"}}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"index":1,"kind":"adt"}}}},{"index":3,"kind":"field","value":{"kind":"var","name":1}},{"kind":"build","operands":[{"kind":"prim","operands":[{"index":0,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"index":1,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},{"index":2,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},{"index":3,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"index":5,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":3,"kind":"adt"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"body":{"body":{"body":{"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":9},{"kind":"second","value":{"kind":"var","name":7}},{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"index":1,"kind":"adt"}}}},{"kind":"prim","operands":[{"index":3,"kind":"field","value":{"kind":"var","name":1}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":0}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"kind":"var","name":8}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_lt"}}],"operation":{"kind":"bool_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"index":0,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},{"function":26,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":3}}]}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"prim","operands":[{"kind":"var","name":6}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":3,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"condition":{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"prim","operands":[{"kind":"var","name":9}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"index":5,"kind":"field","value":{"index":4,"kind":"field","value":{"kind":"var","name":1}}},"kind":"cond","then_branch":{"kind":"prim","operands":[{"kind":"var","name":9}],"operation":{"kind":"length"}}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":3,"kind":"adt"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"bound":{"function":27,"kind":"call","operands":[{"captures":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":0}],"operation":{"kind":"nat_add"}}],"function":23,"kind":"closure"},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"kind":"var","name":8}]},"kind":"let","name":9,"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":4},{"kind":"first","value":{"kind":"var","name":7}}],"operation":{"kind":"append"}},"kind":"let","name":8,"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"bound":{"function":22,"kind":"call","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":1}},{"kind":"var","name":6}]},"kind":"let","name":7,"type":{"kind":"pair","left":{"element":{"index":1,"kind":"adt"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}}},"bound":{"function":20,"kind":"call","operands":[{"kind":"var","name":3}]},"kind":"let","name":6,"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":15,"kind":"call","operands":[{"kind":"var","name":0},{"index":0,"kind":"field","value":{"kind":"var","name":3}}]},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"index":0,"kind":"field","value":{"kind":"var","name":1}},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"index":2,"kind":"field","value":{"kind":"var","name":1}},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"parameters":[0,1],"result":{"kind":"option","value":{"index":2,"kind":"adt"}},"types":[{"kind":"nat"},{"index":2,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"prim","operands":[{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_add"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":27,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"kind":"fn","parameters":[{"element":{"index":1,"kind":"adt"},"kind":"list"},{"index":1,"kind":"adt"}],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"element":{"index":1,"kind":"adt"},"kind":"list"},{"element":{"index":1,"kind":"adt"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":28,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"kind":"fn","parameters":[{"element":{"index":1,"kind":"adt"},"kind":"list"},{"kind":"nat"}],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"element":{"index":1,"kind":"adt"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":29,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"pair","left":{"element":{"index":1,"kind":"adt"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"element":{"index":1,"kind":"adt"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},"types":[{"kind":"fn","parameters":[{"kind":"pair","left":{"element":{"index":1,"kind":"adt"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},{"index":1,"kind":"adt"}],"result":{"kind":"pair","left":{"element":{"index":1,"kind":"adt"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}}},{"kind":"pair","left":{"element":{"index":1,"kind":"adt"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},{"element":{"index":1,"kind":"adt"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":30,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":31,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":32,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"index":2,"kind":"adt"}],"result":{"kind":"option","value":{"index":2,"kind":"adt"}}},{"kind":"nat"},{"index":2,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/reasoning-plan-5/provenance.json b/compiler/rust/rust-std/reasoning-plan-5/provenance.json index 63ed8e6b9..7cbb6e0d8 100644 --- a/compiler/rust/rust-std/reasoning-plan-5/provenance.json +++ b/compiler/rust/rust-std/reasoning-plan-5/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"498a4b1410308f4b1abdf2fee3d1bb543ecf1395f8984caad5891bd5dbeffdcd","src/lib.rs":"a7ada95cc9dfe0c7dcf9d2fcac9194236134b82061947cc1cc304af9c454849a"},"name":"reasoning_plan_5_std","profile":"rust-std","program":"ca078dae05ae66f886417b7bbdb424579795ed76385f082a0e889ee35408dff1","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"498a4b1410308f4b1abdf2fee3d1bb543ecf1395f8984caad5891bd5dbeffdcd","src/lib.rs":"a7ada95cc9dfe0c7dcf9d2fcac9194236134b82061947cc1cc304af9c454849a"},"name":"reasoning_plan_5_std","profile":"rust-std","program":"ca078dae05ae66f886417b7bbdb424579795ed76385f082a0e889ee35408dff1","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/reasoning-review-exhausted/package.json b/compiler/rust/rust-std/reasoning-review-exhausted/package.json index a00658c6c..602f98d43 100644 --- a/compiler/rust/rust-std/reasoning-review-exhausted/package.json +++ b/compiler/rust/rust-std/reasoning-review-exhausted/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"reasoning_review_exhausted_std","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[{"index":0,"kind":"adt"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[],[],[],[],[],[],[],[]]}],"functions":[{"body":{"body":{"condition":{"kind":"second","value":{"kind":"var","name":1}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"kind":"cond","then_branch":{"function":36,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"first","value":{"kind":"var","name":1}}]}},"bound":{"function":38,"kind":"call","operands":[{"captures":[],"function":33,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"6"}},{"function":30,"kind":"call","operands":[{"kind":"var","name":0}]}]},"kind":"let","name":1,"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"380"}},{"index":0,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}},{"index":1,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"20"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"12"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":1,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":2,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":3,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":4,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"index":0,"kind":"field","value":{"kind":"var","name":0}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"function":5,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":14,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":15,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":16,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":17,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":18,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":19,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":20,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":0,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":7,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":6,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":5,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":4,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":3,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":2,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":1,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":2,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"function":22,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":0,"kind":"adt"}},{"binders":[],"body":{"function":23,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":1,"kind":"adt"}},{"binders":[],"body":{"function":24,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":2,"kind":"adt"}},{"binders":[],"body":{"function":25,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":3,"kind":"adt"}},{"binders":[],"body":{"function":26,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":4,"kind":"adt"}},{"binders":[],"body":{"function":27,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":5,"kind":"adt"}},{"binders":[],"body":{"function":28,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":6,"kind":"adt"}},{"binders":[],"body":{"function":29,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":7,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0,1],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"},{"index":2,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"shape":{"kind":"none"}},{"binders":[1],"body":{"function":32,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":31,"kind":"call","operands":[{"kind":"var","name":0}]},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[2],"body":{"body":{"condition":{"kind":"var","name":3},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"bound":{"function":37,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"kind":"let","name":3,"type":{"kind":"bool"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"ok"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"arms":[{"binders":[3],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":35,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"parameters":[0,1],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":38,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"index":1,"kind":"adt"}],"result":{"kind":"option","value":{"index":1,"kind":"adt"}}},{"kind":"nat"},{"index":1,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"reasoning_review_exhausted_std","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[{"index":0,"kind":"adt"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[],[],[],[],[],[],[],[]]}],"functions":[{"body":{"body":{"condition":{"kind":"second","value":{"kind":"var","name":1}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"kind":"cond","then_branch":{"function":36,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"first","value":{"kind":"var","name":1}}]}},"bound":{"function":38,"kind":"call","operands":[{"captures":[],"function":33,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"6"}},{"function":30,"kind":"call","operands":[{"kind":"var","name":0}]}]},"kind":"let","name":1,"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"380"}},{"index":0,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}},{"index":1,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"20"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"12"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":1,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":2,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":3,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":4,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"index":0,"kind":"field","value":{"kind":"var","name":0}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"function":5,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":14,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":15,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":16,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":17,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":18,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":19,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":20,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":0,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":7,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":6,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":5,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":4,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":3,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":2,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":1,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":2,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"function":22,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":0,"kind":"adt"}},{"binders":[],"body":{"function":23,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":1,"kind":"adt"}},{"binders":[],"body":{"function":24,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":2,"kind":"adt"}},{"binders":[],"body":{"function":25,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":3,"kind":"adt"}},{"binders":[],"body":{"function":26,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":4,"kind":"adt"}},{"binders":[],"body":{"function":27,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":5,"kind":"adt"}},{"binders":[],"body":{"function":28,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":6,"kind":"adt"}},{"binders":[],"body":{"function":29,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":7,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0,1],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"},{"index":2,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"shape":{"kind":"none"}},{"binders":[1],"body":{"function":32,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":31,"kind":"call","operands":[{"kind":"var","name":0}]},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[2],"body":{"body":{"condition":{"kind":"var","name":3},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"bound":{"function":37,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"kind":"let","name":3,"type":{"kind":"bool"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"ok"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"arms":[{"binders":[3],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":35,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"parameters":[0,1],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":38,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"index":1,"kind":"adt"}],"result":{"kind":"option","value":{"index":1,"kind":"adt"}}},{"kind":"nat"},{"index":1,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/reasoning-review-exhausted/provenance.json b/compiler/rust/rust-std/reasoning-review-exhausted/provenance.json index b3f7ba628..7bdcc5762 100644 --- a/compiler/rust/rust-std/reasoning-review-exhausted/provenance.json +++ b/compiler/rust/rust-std/reasoning-review-exhausted/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"cb500516998adf5971e40f1d9c52e9238e38648efaa07dcb99191dc723608681","src/lib.rs":"5396dbd5d51335c3ee80994acb616953a93b315895cdee0447c3902e744e9391"},"name":"reasoning_review_exhausted_std","profile":"rust-std","program":"4fbef4ae1d9d00a4f618d0ca2a38865abf9a97c170f9458eb0d583c2182ccb90","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"cb500516998adf5971e40f1d9c52e9238e38648efaa07dcb99191dc723608681","src/lib.rs":"5396dbd5d51335c3ee80994acb616953a93b315895cdee0447c3902e744e9391"},"name":"reasoning_review_exhausted_std","profile":"rust-std","program":"4fbef4ae1d9d00a4f618d0ca2a38865abf9a97c170f9458eb0d583c2182ccb90","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/reasoning-review-rejected/package.json b/compiler/rust/rust-std/reasoning-review-rejected/package.json index 346bd48ae..b227ef9b3 100644 --- a/compiler/rust/rust-std/reasoning-review-rejected/package.json +++ b/compiler/rust/rust-std/reasoning-review-rejected/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"reasoning_review_rejected_std","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[{"index":0,"kind":"adt"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[],[],[],[],[],[],[],[]]}],"functions":[{"body":{"body":{"condition":{"kind":"second","value":{"kind":"var","name":1}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"kind":"cond","then_branch":{"function":36,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"first","value":{"kind":"var","name":1}}]}},"bound":{"function":38,"kind":"call","operands":[{"captures":[],"function":33,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"6"}},{"function":30,"kind":"call","operands":[{"kind":"var","name":0}]}]},"kind":"let","name":1,"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"380"}},{"index":0,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}},{"index":1,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"20"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"12"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":1,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":2,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":3,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":4,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"index":0,"kind":"field","value":{"kind":"var","name":0}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"function":5,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":14,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":15,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":16,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":17,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":18,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":19,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":20,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":0,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":7,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":6,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":5,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":4,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":3,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":2,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":1,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":2,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"function":22,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":0,"kind":"adt"}},{"binders":[],"body":{"function":23,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":1,"kind":"adt"}},{"binders":[],"body":{"function":24,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":2,"kind":"adt"}},{"binders":[],"body":{"function":25,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":3,"kind":"adt"}},{"binders":[],"body":{"function":26,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":4,"kind":"adt"}},{"binders":[],"body":{"function":27,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":5,"kind":"adt"}},{"binders":[],"body":{"function":28,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":6,"kind":"adt"}},{"binders":[],"body":{"function":29,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":7,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0,1],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"},{"index":2,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"shape":{"kind":"none"}},{"binders":[1],"body":{"function":32,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":31,"kind":"call","operands":[{"kind":"var","name":0}]},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[2],"body":{"body":{"condition":{"kind":"var","name":3},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"bound":{"function":37,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"kind":"let","name":3,"type":{"kind":"bool"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"ok"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"arms":[{"binders":[3],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":35,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"parameters":[0,1],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":38,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"index":1,"kind":"adt"}],"result":{"kind":"option","value":{"index":1,"kind":"adt"}}},{"kind":"nat"},{"index":1,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"reasoning_review_rejected_std","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[{"index":0,"kind":"adt"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[],[],[],[],[],[],[],[]]}],"functions":[{"body":{"body":{"condition":{"kind":"second","value":{"kind":"var","name":1}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"kind":"cond","then_branch":{"function":36,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"first","value":{"kind":"var","name":1}}]}},"bound":{"function":38,"kind":"call","operands":[{"captures":[],"function":33,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"6"}},{"function":30,"kind":"call","operands":[{"kind":"var","name":0}]}]},"kind":"let","name":1,"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"380"}},{"index":0,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}},{"index":1,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"20"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"12"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":1,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":2,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":3,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":4,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"index":0,"kind":"field","value":{"kind":"var","name":0}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"function":5,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":14,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":15,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":16,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":17,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":18,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":19,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":20,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":0,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":7,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":6,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":5,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":4,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":3,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":2,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":1,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":2,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"function":22,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":0,"kind":"adt"}},{"binders":[],"body":{"function":23,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":1,"kind":"adt"}},{"binders":[],"body":{"function":24,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":2,"kind":"adt"}},{"binders":[],"body":{"function":25,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":3,"kind":"adt"}},{"binders":[],"body":{"function":26,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":4,"kind":"adt"}},{"binders":[],"body":{"function":27,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":5,"kind":"adt"}},{"binders":[],"body":{"function":28,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":6,"kind":"adt"}},{"binders":[],"body":{"function":29,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":7,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0,1],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"},{"index":2,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"shape":{"kind":"none"}},{"binders":[1],"body":{"function":32,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":31,"kind":"call","operands":[{"kind":"var","name":0}]},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[2],"body":{"body":{"condition":{"kind":"var","name":3},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"bound":{"function":37,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"kind":"let","name":3,"type":{"kind":"bool"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"ok"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"arms":[{"binders":[3],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":35,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"parameters":[0,1],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":38,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"index":1,"kind":"adt"}],"result":{"kind":"option","value":{"index":1,"kind":"adt"}}},{"kind":"nat"},{"index":1,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/reasoning-review-rejected/provenance.json b/compiler/rust/rust-std/reasoning-review-rejected/provenance.json index 3ca323465..f86932e2b 100644 --- a/compiler/rust/rust-std/reasoning-review-rejected/provenance.json +++ b/compiler/rust/rust-std/reasoning-review-rejected/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"09ad0e8f7a241718b3911348bc5bcfc23e79cc3ae156726eb0ca6c77043ef334","src/lib.rs":"5396dbd5d51335c3ee80994acb616953a93b315895cdee0447c3902e744e9391"},"name":"reasoning_review_rejected_std","profile":"rust-std","program":"4fbef4ae1d9d00a4f618d0ca2a38865abf9a97c170f9458eb0d583c2182ccb90","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"09ad0e8f7a241718b3911348bc5bcfc23e79cc3ae156726eb0ca6c77043ef334","src/lib.rs":"5396dbd5d51335c3ee80994acb616953a93b315895cdee0447c3902e744e9391"},"name":"reasoning_review_rejected_std","profile":"rust-std","program":"4fbef4ae1d9d00a4f618d0ca2a38865abf9a97c170f9458eb0d583c2182ccb90","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/reasoning-screen-0/package.json b/compiler/rust/rust-std/reasoning-screen-0/package.json index a78d4344a..513d7e856 100644 --- a/compiler/rust/rust-std/reasoning-screen-0/package.json +++ b/compiler/rust/rust-std/reasoning-screen-0/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"reasoning_screen_0_std","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"nat"}]]},{"constructors":[[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"element":{"index":0,"kind":"adt"},"kind":"list"}]]},{"constructors":[[{"element":{"index":1,"kind":"adt"},"kind":"list"},{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"index":1,"kind":"adt"}}},{"kind":"bool"},{"index":3,"kind":"adt"}]]},{"constructors":[[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]}],"functions":[{"body":{"body":{"kind":"build","operands":[{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"first","value":{"kind":"var","name":2}},{"index":1,"kind":"field","value":{"kind":"second","value":{"kind":"var","name":2}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}}],"shape":{"kind":"ok"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[{"condition":{"kind":"prim","operands":[{"kind":"second","value":{"kind":"var","name":1}},{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}],"operation":{"kind":"bool_not"}}],"operation":{"kind":"bool_and"}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"index":1,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}}},{"kind":"build","operands":[{"index":0,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"kind":"build","operands":[{"index":1,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"kind":"build","operands":[{"index":2,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"kind":"build","operands":[{"index":3,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"kind":"build","operands":[{"index":4,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"index":5,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}},"bound":{"function":19,"kind":"call","operands":[{"captures":[{"kind":"var","name":0}],"function":15,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"8"}},{"function":14,"kind":"call","operands":[{"kind":"var","name":0}]}]},"kind":"let","name":1,"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0],"result":{"kind":"pair","left":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}},"types":[{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"second","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"var","name":1}],"operation":{"kind":"nat_lt"}}],"operation":{"kind":"bool_and"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"kind":"build","operands":[{"kind":"first","value":{"kind":"var","name":0}},{"kind":"var","name":1}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"condition":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"body":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}}],"operation":{"kind":"nat_le"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"kind":"cond","then_branch":{"kind":"var","name":1}},"bound":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"10"}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"20"}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"30"}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"50"}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"kind":"let","name":1,"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"kind":"nat"}]},{"body":{"function":4,"kind":"call","operands":[{"kind":"first","value":{"kind":"var","name":0}}]},"parameters":[0],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[2],"body":{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"shape":{"constructor":0,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"index":0,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"types":[{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"second","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":0}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":1}],"operation":{"kind":"nat_add"}},{"kind":"var","name":0}],"operation":{"kind":"nat_le"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[2],"body":{"body":{"condition":{"kind":"var","name":3},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"bound":{"function":9,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"kind":"let","name":3,"type":{"kind":"bool"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":8,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"nat"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"none"}},{"binders":[3],"body":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":3},{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"operation":{"kind":"append"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"operation":{"kind":"append"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":6,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}}]},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"index":1,"kind":"adt"},{"element":{"index":1,"kind":"adt"},"kind":"list"},{"kind":"nat"}]},{"body":{"function":18,"kind":"call","operands":[{"captures":[{"kind":"var","name":0}],"function":11,"kind":"closure"},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"function":5,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}]},"parameters":[0],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}},{"kind":"var","name":0}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"var","name":1},"kind":"cond","then_branch":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"operation":{"kind":"append"}}},"parameters":[0,1,2],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"kind":"nat"},{"element":{"index":1,"kind":"adt"},"kind":"list"},{"index":1,"kind":"adt"}]},{"body":{"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"index":1,"kind":"adt"}}}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_lt"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":3,"kind":"adt"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}},"bound":{"function":17,"kind":"call","operands":[{"captures":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"function":13,"kind":"closure"},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"kind":"build","operands":[{"kind":"build","operands":[{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}]},"kind":"let","name":1,"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"parameters":[0],"result":{"index":2,"kind":"adt"},"types":[{"kind":"nat"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"arms":[{"binders":[5],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":4},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":5},{"kind":"var","name":3}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"index":1,"kind":"adt"}}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"index":1,"kind":"adt"}}}},{"index":2,"kind":"field","value":{"kind":"var","name":1}},{"kind":"build","operands":[{"kind":"prim","operands":[{"index":0,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"index":1,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"index":2,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"index":3,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"index":5,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":3,"kind":"adt"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"body":{"body":{"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":8},{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"index":1,"kind":"adt"}}}},{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"kind":"var","name":1}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}},{"kind":"prim","operands":[{"kind":"var","name":7}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_lt"}}],"operation":{"kind":"bool_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"index":0,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"function":16,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":3}}]}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"prim","operands":[{"kind":"var","name":6}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":3,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"condition":{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"prim","operands":[{"kind":"var","name":8}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"index":5,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},"kind":"cond","then_branch":{"kind":"prim","operands":[{"kind":"var","name":8}],"operation":{"kind":"length"}}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":3,"kind":"adt"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"bound":{"function":17,"kind":"call","operands":[{"captures":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"function":13,"kind":"closure"},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"kind":"var","name":7}]},"kind":"let","name":8,"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":6},{"kind":"var","name":4}],"operation":{"kind":"append"}},"kind":"let","name":7,"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"bound":{"function":12,"kind":"call","operands":[{"kind":"var","name":3}]},"kind":"let","name":6,"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":10,"kind":"call","operands":[{"kind":"var","name":0},{"index":0,"kind":"field","value":{"kind":"var","name":3}}]},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"index":0,"kind":"field","value":{"kind":"var","name":1}},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"index":1,"kind":"field","value":{"kind":"var","name":1}},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"parameters":[0,1],"result":{"kind":"option","value":{"index":2,"kind":"adt"}},"types":[{"kind":"nat"},{"index":2,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"function":5,"kind":"call","operands":[{"kind":"var","name":0}]}],"operation":{"kind":"length"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":17,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"kind":"fn","parameters":[{"element":{"index":1,"kind":"adt"},"kind":"list"},{"index":1,"kind":"adt"}],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"element":{"index":1,"kind":"adt"},"kind":"list"},{"element":{"index":1,"kind":"adt"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":18,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"kind":"fn","parameters":[{"element":{"index":1,"kind":"adt"},"kind":"list"},{"kind":"nat"}],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"element":{"index":1,"kind":"adt"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":19,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"index":2,"kind":"adt"}],"result":{"kind":"option","value":{"index":2,"kind":"adt"}}},{"kind":"nat"},{"index":2,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"reasoning_screen_0_std","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"nat"}]]},{"constructors":[[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"element":{"index":0,"kind":"adt"},"kind":"list"}]]},{"constructors":[[{"element":{"index":1,"kind":"adt"},"kind":"list"},{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"index":1,"kind":"adt"}}},{"kind":"bool"},{"index":3,"kind":"adt"}]]},{"constructors":[[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]}],"functions":[{"body":{"body":{"kind":"build","operands":[{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"first","value":{"kind":"var","name":2}},{"index":1,"kind":"field","value":{"kind":"second","value":{"kind":"var","name":2}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}}],"shape":{"kind":"ok"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[{"condition":{"kind":"prim","operands":[{"kind":"second","value":{"kind":"var","name":1}},{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}],"operation":{"kind":"bool_not"}}],"operation":{"kind":"bool_and"}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"index":1,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}}},{"kind":"build","operands":[{"index":0,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"kind":"build","operands":[{"index":1,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"kind":"build","operands":[{"index":2,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"kind":"build","operands":[{"index":3,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"kind":"build","operands":[{"index":4,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"index":5,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}},"bound":{"function":19,"kind":"call","operands":[{"captures":[{"kind":"var","name":0}],"function":15,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"8"}},{"function":14,"kind":"call","operands":[{"kind":"var","name":0}]}]},"kind":"let","name":1,"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0],"result":{"kind":"pair","left":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}},"types":[{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"second","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"var","name":1}],"operation":{"kind":"nat_lt"}}],"operation":{"kind":"bool_and"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"kind":"build","operands":[{"kind":"first","value":{"kind":"var","name":0}},{"kind":"var","name":1}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"condition":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"body":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}}],"operation":{"kind":"nat_le"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"kind":"cond","then_branch":{"kind":"var","name":1}},"bound":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"10"}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"20"}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"30"}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"50"}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"kind":"let","name":1,"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"kind":"nat"}]},{"body":{"function":4,"kind":"call","operands":[{"kind":"first","value":{"kind":"var","name":0}}]},"parameters":[0],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[2],"body":{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"shape":{"constructor":0,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"index":0,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"types":[{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"second","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":0}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":1}],"operation":{"kind":"nat_add"}},{"kind":"var","name":0}],"operation":{"kind":"nat_le"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[2],"body":{"body":{"condition":{"kind":"var","name":3},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"bound":{"function":9,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"kind":"let","name":3,"type":{"kind":"bool"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":8,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"nat"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"none"}},{"binders":[3],"body":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":3},{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"operation":{"kind":"append"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"operation":{"kind":"append"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":6,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}}]},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"index":1,"kind":"adt"},{"element":{"index":1,"kind":"adt"},"kind":"list"},{"kind":"nat"}]},{"body":{"function":18,"kind":"call","operands":[{"captures":[{"kind":"var","name":0}],"function":11,"kind":"closure"},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"function":5,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}]},"parameters":[0],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}},{"kind":"var","name":0}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"var","name":1},"kind":"cond","then_branch":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"operation":{"kind":"append"}}},"parameters":[0,1,2],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"kind":"nat"},{"element":{"index":1,"kind":"adt"},"kind":"list"},{"index":1,"kind":"adt"}]},{"body":{"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"index":1,"kind":"adt"}}}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_lt"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":3,"kind":"adt"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}},"bound":{"function":17,"kind":"call","operands":[{"captures":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"function":13,"kind":"closure"},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"kind":"build","operands":[{"kind":"build","operands":[{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}]},"kind":"let","name":1,"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"parameters":[0],"result":{"index":2,"kind":"adt"},"types":[{"kind":"nat"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"arms":[{"binders":[5],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":4},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":5},{"kind":"var","name":3}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"index":1,"kind":"adt"}}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"index":1,"kind":"adt"}}}},{"index":2,"kind":"field","value":{"kind":"var","name":1}},{"kind":"build","operands":[{"kind":"prim","operands":[{"index":0,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"index":1,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"index":2,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"index":3,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"index":5,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":3,"kind":"adt"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"body":{"body":{"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":8},{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"index":1,"kind":"adt"}}}},{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"kind":"var","name":1}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}},{"kind":"prim","operands":[{"kind":"var","name":7}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_lt"}}],"operation":{"kind":"bool_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"index":0,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"function":16,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":3}}]}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"prim","operands":[{"kind":"var","name":6}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":3,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"condition":{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"prim","operands":[{"kind":"var","name":8}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"index":5,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},"kind":"cond","then_branch":{"kind":"prim","operands":[{"kind":"var","name":8}],"operation":{"kind":"length"}}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":3,"kind":"adt"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"bound":{"function":17,"kind":"call","operands":[{"captures":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"function":13,"kind":"closure"},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"kind":"var","name":7}]},"kind":"let","name":8,"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":6},{"kind":"var","name":4}],"operation":{"kind":"append"}},"kind":"let","name":7,"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"bound":{"function":12,"kind":"call","operands":[{"kind":"var","name":3}]},"kind":"let","name":6,"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":10,"kind":"call","operands":[{"kind":"var","name":0},{"index":0,"kind":"field","value":{"kind":"var","name":3}}]},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"index":0,"kind":"field","value":{"kind":"var","name":1}},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"index":1,"kind":"field","value":{"kind":"var","name":1}},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"parameters":[0,1],"result":{"kind":"option","value":{"index":2,"kind":"adt"}},"types":[{"kind":"nat"},{"index":2,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"function":5,"kind":"call","operands":[{"kind":"var","name":0}]}],"operation":{"kind":"length"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":17,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"kind":"fn","parameters":[{"element":{"index":1,"kind":"adt"},"kind":"list"},{"index":1,"kind":"adt"}],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"element":{"index":1,"kind":"adt"},"kind":"list"},{"element":{"index":1,"kind":"adt"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":18,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"kind":"fn","parameters":[{"element":{"index":1,"kind":"adt"},"kind":"list"},{"kind":"nat"}],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"element":{"index":1,"kind":"adt"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":19,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"index":2,"kind":"adt"}],"result":{"kind":"option","value":{"index":2,"kind":"adt"}}},{"kind":"nat"},{"index":2,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/reasoning-screen-0/provenance.json b/compiler/rust/rust-std/reasoning-screen-0/provenance.json index 639d86964..e656104b7 100644 --- a/compiler/rust/rust-std/reasoning-screen-0/provenance.json +++ b/compiler/rust/rust-std/reasoning-screen-0/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"51b5d165422c064fbc3b0cc295c64cc620953d945e1a29df58a93c33dd9a5c3c","src/lib.rs":"19bdb3978ae3737d3bf479286a02425b12d2d49c1599b69a56f8fef01b6192c7"},"name":"reasoning_screen_0_std","profile":"rust-std","program":"2c82dd43ba6e271789a7bdc044634f9692c15588ec645405507ced8f905e9760","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"51b5d165422c064fbc3b0cc295c64cc620953d945e1a29df58a93c33dd9a5c3c","src/lib.rs":"19bdb3978ae3737d3bf479286a02425b12d2d49c1599b69a56f8fef01b6192c7"},"name":"reasoning_screen_0_std","profile":"rust-std","program":"2c82dd43ba6e271789a7bdc044634f9692c15588ec645405507ced8f905e9760","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/reasoning-screen-100/package.json b/compiler/rust/rust-std/reasoning-screen-100/package.json index 12a1afef4..51da2068f 100644 --- a/compiler/rust/rust-std/reasoning-screen-100/package.json +++ b/compiler/rust/rust-std/reasoning-screen-100/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"reasoning_screen_100_std","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"nat"}]]},{"constructors":[[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"element":{"index":0,"kind":"adt"},"kind":"list"}]]},{"constructors":[[{"element":{"index":1,"kind":"adt"},"kind":"list"},{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"index":1,"kind":"adt"}}},{"kind":"bool"},{"index":3,"kind":"adt"}]]},{"constructors":[[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]}],"functions":[{"body":{"body":{"kind":"build","operands":[{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"first","value":{"kind":"var","name":2}},{"index":1,"kind":"field","value":{"kind":"second","value":{"kind":"var","name":2}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}}],"shape":{"kind":"ok"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[{"condition":{"kind":"prim","operands":[{"kind":"second","value":{"kind":"var","name":1}},{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}],"operation":{"kind":"bool_not"}}],"operation":{"kind":"bool_and"}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"index":1,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}}},{"kind":"build","operands":[{"index":0,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"kind":"build","operands":[{"index":1,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"kind":"build","operands":[{"index":2,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"kind":"build","operands":[{"index":3,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"kind":"build","operands":[{"index":4,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"index":5,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}},"bound":{"function":19,"kind":"call","operands":[{"captures":[{"kind":"var","name":0}],"function":15,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"8"}},{"function":14,"kind":"call","operands":[{"kind":"var","name":0}]}]},"kind":"let","name":1,"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0],"result":{"kind":"pair","left":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}},"types":[{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"second","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"var","name":1}],"operation":{"kind":"nat_lt"}}],"operation":{"kind":"bool_and"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"kind":"build","operands":[{"kind":"first","value":{"kind":"var","name":0}},{"kind":"var","name":1}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"condition":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"body":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}}],"operation":{"kind":"nat_le"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"kind":"cond","then_branch":{"kind":"var","name":1}},"bound":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"10"}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"20"}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"30"}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"50"}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"kind":"let","name":1,"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"kind":"nat"}]},{"body":{"function":4,"kind":"call","operands":[{"kind":"first","value":{"kind":"var","name":0}}]},"parameters":[0],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[2],"body":{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"shape":{"constructor":0,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"index":0,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"types":[{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"second","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":0}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":1}],"operation":{"kind":"nat_add"}},{"kind":"var","name":0}],"operation":{"kind":"nat_le"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[2],"body":{"body":{"condition":{"kind":"var","name":3},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"bound":{"function":9,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"kind":"let","name":3,"type":{"kind":"bool"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":8,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"nat"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"none"}},{"binders":[3],"body":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":3},{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"operation":{"kind":"append"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"operation":{"kind":"append"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":6,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}}]},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"index":1,"kind":"adt"},{"element":{"index":1,"kind":"adt"},"kind":"list"},{"kind":"nat"}]},{"body":{"function":18,"kind":"call","operands":[{"captures":[{"kind":"var","name":0}],"function":11,"kind":"closure"},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"function":5,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}]},"parameters":[0],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}},{"kind":"var","name":0}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"var","name":1},"kind":"cond","then_branch":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"operation":{"kind":"append"}}},"parameters":[0,1,2],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"kind":"nat"},{"element":{"index":1,"kind":"adt"},"kind":"list"},{"index":1,"kind":"adt"}]},{"body":{"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"index":1,"kind":"adt"}}}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_lt"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":3,"kind":"adt"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}},"bound":{"function":17,"kind":"call","operands":[{"captures":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"function":13,"kind":"closure"},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"kind":"build","operands":[{"kind":"build","operands":[{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}]},"kind":"let","name":1,"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"parameters":[0],"result":{"index":2,"kind":"adt"},"types":[{"kind":"nat"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"arms":[{"binders":[5],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":4},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":5},{"kind":"var","name":3}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"index":1,"kind":"adt"}}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"index":1,"kind":"adt"}}}},{"index":2,"kind":"field","value":{"kind":"var","name":1}},{"kind":"build","operands":[{"kind":"prim","operands":[{"index":0,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"index":1,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"index":2,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"index":3,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"index":5,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":3,"kind":"adt"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"body":{"body":{"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":8},{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"index":1,"kind":"adt"}}}},{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"kind":"var","name":1}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}},{"kind":"prim","operands":[{"kind":"var","name":7}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_lt"}}],"operation":{"kind":"bool_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"index":0,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"function":16,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":3}}]}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"prim","operands":[{"kind":"var","name":6}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":3,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"condition":{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"prim","operands":[{"kind":"var","name":8}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"index":5,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},"kind":"cond","then_branch":{"kind":"prim","operands":[{"kind":"var","name":8}],"operation":{"kind":"length"}}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":3,"kind":"adt"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"bound":{"function":17,"kind":"call","operands":[{"captures":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"function":13,"kind":"closure"},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"kind":"var","name":7}]},"kind":"let","name":8,"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":6},{"kind":"var","name":4}],"operation":{"kind":"append"}},"kind":"let","name":7,"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"bound":{"function":12,"kind":"call","operands":[{"kind":"var","name":3}]},"kind":"let","name":6,"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":10,"kind":"call","operands":[{"kind":"var","name":0},{"index":0,"kind":"field","value":{"kind":"var","name":3}}]},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"index":0,"kind":"field","value":{"kind":"var","name":1}},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"index":1,"kind":"field","value":{"kind":"var","name":1}},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"parameters":[0,1],"result":{"kind":"option","value":{"index":2,"kind":"adt"}},"types":[{"kind":"nat"},{"index":2,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"function":5,"kind":"call","operands":[{"kind":"var","name":0}]}],"operation":{"kind":"length"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":17,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"kind":"fn","parameters":[{"element":{"index":1,"kind":"adt"},"kind":"list"},{"index":1,"kind":"adt"}],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"element":{"index":1,"kind":"adt"},"kind":"list"},{"element":{"index":1,"kind":"adt"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":18,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"kind":"fn","parameters":[{"element":{"index":1,"kind":"adt"},"kind":"list"},{"kind":"nat"}],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"element":{"index":1,"kind":"adt"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":19,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"index":2,"kind":"adt"}],"result":{"kind":"option","value":{"index":2,"kind":"adt"}}},{"kind":"nat"},{"index":2,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"reasoning_screen_100_std","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"nat"}]]},{"constructors":[[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"element":{"index":0,"kind":"adt"},"kind":"list"}]]},{"constructors":[[{"element":{"index":1,"kind":"adt"},"kind":"list"},{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"index":1,"kind":"adt"}}},{"kind":"bool"},{"index":3,"kind":"adt"}]]},{"constructors":[[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]}],"functions":[{"body":{"body":{"kind":"build","operands":[{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"first","value":{"kind":"var","name":2}},{"index":1,"kind":"field","value":{"kind":"second","value":{"kind":"var","name":2}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}}],"shape":{"kind":"ok"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[{"condition":{"kind":"prim","operands":[{"kind":"second","value":{"kind":"var","name":1}},{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}],"operation":{"kind":"bool_not"}}],"operation":{"kind":"bool_and"}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"index":1,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}}},{"kind":"build","operands":[{"index":0,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"kind":"build","operands":[{"index":1,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"kind":"build","operands":[{"index":2,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"kind":"build","operands":[{"index":3,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"kind":"build","operands":[{"index":4,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"index":5,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}},"bound":{"function":19,"kind":"call","operands":[{"captures":[{"kind":"var","name":0}],"function":15,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"8"}},{"function":14,"kind":"call","operands":[{"kind":"var","name":0}]}]},"kind":"let","name":1,"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0],"result":{"kind":"pair","left":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}},"types":[{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"second","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"var","name":1}],"operation":{"kind":"nat_lt"}}],"operation":{"kind":"bool_and"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"kind":"build","operands":[{"kind":"first","value":{"kind":"var","name":0}},{"kind":"var","name":1}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"condition":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"body":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}}],"operation":{"kind":"nat_le"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"kind":"cond","then_branch":{"kind":"var","name":1}},"bound":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"10"}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"20"}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"30"}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"50"}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"kind":"let","name":1,"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"kind":"nat"}]},{"body":{"function":4,"kind":"call","operands":[{"kind":"first","value":{"kind":"var","name":0}}]},"parameters":[0],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[2],"body":{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"shape":{"constructor":0,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"index":0,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"types":[{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"second","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":0}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":1}],"operation":{"kind":"nat_add"}},{"kind":"var","name":0}],"operation":{"kind":"nat_le"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[2],"body":{"body":{"condition":{"kind":"var","name":3},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"bound":{"function":9,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"kind":"let","name":3,"type":{"kind":"bool"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":8,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"nat"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"none"}},{"binders":[3],"body":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":3},{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"operation":{"kind":"append"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"operation":{"kind":"append"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":6,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}}]},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"index":1,"kind":"adt"},{"element":{"index":1,"kind":"adt"},"kind":"list"},{"kind":"nat"}]},{"body":{"function":18,"kind":"call","operands":[{"captures":[{"kind":"var","name":0}],"function":11,"kind":"closure"},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"function":5,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}]},"parameters":[0],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}},{"kind":"var","name":0}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"var","name":1},"kind":"cond","then_branch":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"operation":{"kind":"append"}}},"parameters":[0,1,2],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"kind":"nat"},{"element":{"index":1,"kind":"adt"},"kind":"list"},{"index":1,"kind":"adt"}]},{"body":{"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"index":1,"kind":"adt"}}}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_lt"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":3,"kind":"adt"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}},"bound":{"function":17,"kind":"call","operands":[{"captures":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"function":13,"kind":"closure"},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"kind":"build","operands":[{"kind":"build","operands":[{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}]},"kind":"let","name":1,"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"parameters":[0],"result":{"index":2,"kind":"adt"},"types":[{"kind":"nat"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"arms":[{"binders":[5],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":4},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":5},{"kind":"var","name":3}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"index":1,"kind":"adt"}}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"index":1,"kind":"adt"}}}},{"index":2,"kind":"field","value":{"kind":"var","name":1}},{"kind":"build","operands":[{"kind":"prim","operands":[{"index":0,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"index":1,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"index":2,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"index":3,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"index":5,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":3,"kind":"adt"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"body":{"body":{"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":8},{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"index":1,"kind":"adt"}}}},{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"kind":"var","name":1}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}},{"kind":"prim","operands":[{"kind":"var","name":7}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_lt"}}],"operation":{"kind":"bool_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"index":0,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"function":16,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":3}}]}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"prim","operands":[{"kind":"var","name":6}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":3,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"condition":{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"prim","operands":[{"kind":"var","name":8}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"index":5,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},"kind":"cond","then_branch":{"kind":"prim","operands":[{"kind":"var","name":8}],"operation":{"kind":"length"}}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":3,"kind":"adt"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"bound":{"function":17,"kind":"call","operands":[{"captures":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"function":13,"kind":"closure"},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"kind":"var","name":7}]},"kind":"let","name":8,"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":6},{"kind":"var","name":4}],"operation":{"kind":"append"}},"kind":"let","name":7,"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"bound":{"function":12,"kind":"call","operands":[{"kind":"var","name":3}]},"kind":"let","name":6,"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":10,"kind":"call","operands":[{"kind":"var","name":0},{"index":0,"kind":"field","value":{"kind":"var","name":3}}]},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"index":0,"kind":"field","value":{"kind":"var","name":1}},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"index":1,"kind":"field","value":{"kind":"var","name":1}},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"parameters":[0,1],"result":{"kind":"option","value":{"index":2,"kind":"adt"}},"types":[{"kind":"nat"},{"index":2,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"function":5,"kind":"call","operands":[{"kind":"var","name":0}]}],"operation":{"kind":"length"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":17,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"kind":"fn","parameters":[{"element":{"index":1,"kind":"adt"},"kind":"list"},{"index":1,"kind":"adt"}],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"element":{"index":1,"kind":"adt"},"kind":"list"},{"element":{"index":1,"kind":"adt"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":18,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"kind":"fn","parameters":[{"element":{"index":1,"kind":"adt"},"kind":"list"},{"kind":"nat"}],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"element":{"index":1,"kind":"adt"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":19,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"index":2,"kind":"adt"}],"result":{"kind":"option","value":{"index":2,"kind":"adt"}}},{"kind":"nat"},{"index":2,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/reasoning-screen-100/provenance.json b/compiler/rust/rust-std/reasoning-screen-100/provenance.json index ae39f1043..9ad48bc3d 100644 --- a/compiler/rust/rust-std/reasoning-screen-100/provenance.json +++ b/compiler/rust/rust-std/reasoning-screen-100/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"5e417aa06fc7830dce253eb13df2553f44ae0ae4396f8c17cf861614fd430673","src/lib.rs":"19bdb3978ae3737d3bf479286a02425b12d2d49c1599b69a56f8fef01b6192c7"},"name":"reasoning_screen_100_std","profile":"rust-std","program":"2c82dd43ba6e271789a7bdc044634f9692c15588ec645405507ced8f905e9760","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"5e417aa06fc7830dce253eb13df2553f44ae0ae4396f8c17cf861614fd430673","src/lib.rs":"19bdb3978ae3737d3bf479286a02425b12d2d49c1599b69a56f8fef01b6192c7"},"name":"reasoning_screen_100_std","profile":"rust-std","program":"2c82dd43ba6e271789a7bdc044634f9692c15588ec645405507ced8f905e9760","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/reasoning-screen-60/package.json b/compiler/rust/rust-std/reasoning-screen-60/package.json index d28474cc5..2747564dd 100644 --- a/compiler/rust/rust-std/reasoning-screen-60/package.json +++ b/compiler/rust/rust-std/reasoning-screen-60/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"reasoning_screen_60_std","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"nat"}]]},{"constructors":[[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"element":{"index":0,"kind":"adt"},"kind":"list"}]]},{"constructors":[[{"element":{"index":1,"kind":"adt"},"kind":"list"},{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"index":1,"kind":"adt"}}},{"kind":"bool"},{"index":3,"kind":"adt"}]]},{"constructors":[[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]}],"functions":[{"body":{"body":{"kind":"build","operands":[{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"first","value":{"kind":"var","name":2}},{"index":1,"kind":"field","value":{"kind":"second","value":{"kind":"var","name":2}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}}],"shape":{"kind":"ok"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[{"condition":{"kind":"prim","operands":[{"kind":"second","value":{"kind":"var","name":1}},{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}],"operation":{"kind":"bool_not"}}],"operation":{"kind":"bool_and"}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"index":1,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}}},{"kind":"build","operands":[{"index":0,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"kind":"build","operands":[{"index":1,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"kind":"build","operands":[{"index":2,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"kind":"build","operands":[{"index":3,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"kind":"build","operands":[{"index":4,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"index":5,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}},"bound":{"function":19,"kind":"call","operands":[{"captures":[{"kind":"var","name":0}],"function":15,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"8"}},{"function":14,"kind":"call","operands":[{"kind":"var","name":0}]}]},"kind":"let","name":1,"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0],"result":{"kind":"pair","left":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}},"types":[{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"second","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"var","name":1}],"operation":{"kind":"nat_lt"}}],"operation":{"kind":"bool_and"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"kind":"build","operands":[{"kind":"first","value":{"kind":"var","name":0}},{"kind":"var","name":1}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"condition":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"body":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}}],"operation":{"kind":"nat_le"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"kind":"cond","then_branch":{"kind":"var","name":1}},"bound":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"10"}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"20"}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"30"}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"50"}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"kind":"let","name":1,"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"kind":"nat"}]},{"body":{"function":4,"kind":"call","operands":[{"kind":"first","value":{"kind":"var","name":0}}]},"parameters":[0],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[2],"body":{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"shape":{"constructor":0,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"index":0,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"types":[{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"second","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":0}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":1}],"operation":{"kind":"nat_add"}},{"kind":"var","name":0}],"operation":{"kind":"nat_le"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[2],"body":{"body":{"condition":{"kind":"var","name":3},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"bound":{"function":9,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"kind":"let","name":3,"type":{"kind":"bool"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":8,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"nat"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"none"}},{"binders":[3],"body":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":3},{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"operation":{"kind":"append"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"operation":{"kind":"append"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":6,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}}]},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"index":1,"kind":"adt"},{"element":{"index":1,"kind":"adt"},"kind":"list"},{"kind":"nat"}]},{"body":{"function":18,"kind":"call","operands":[{"captures":[{"kind":"var","name":0}],"function":11,"kind":"closure"},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"function":5,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}]},"parameters":[0],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}},{"kind":"var","name":0}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"var","name":1},"kind":"cond","then_branch":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"operation":{"kind":"append"}}},"parameters":[0,1,2],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"kind":"nat"},{"element":{"index":1,"kind":"adt"},"kind":"list"},{"index":1,"kind":"adt"}]},{"body":{"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"index":1,"kind":"adt"}}}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_lt"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":3,"kind":"adt"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}},"bound":{"function":17,"kind":"call","operands":[{"captures":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"function":13,"kind":"closure"},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"kind":"build","operands":[{"kind":"build","operands":[{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}]},"kind":"let","name":1,"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"parameters":[0],"result":{"index":2,"kind":"adt"},"types":[{"kind":"nat"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"arms":[{"binders":[5],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":4},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":5},{"kind":"var","name":3}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"index":1,"kind":"adt"}}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"index":1,"kind":"adt"}}}},{"index":2,"kind":"field","value":{"kind":"var","name":1}},{"kind":"build","operands":[{"kind":"prim","operands":[{"index":0,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"index":1,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"index":2,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"index":3,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"index":5,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":3,"kind":"adt"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"body":{"body":{"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":8},{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"index":1,"kind":"adt"}}}},{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"kind":"var","name":1}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}},{"kind":"prim","operands":[{"kind":"var","name":7}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_lt"}}],"operation":{"kind":"bool_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"index":0,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"function":16,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":3}}]}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"prim","operands":[{"kind":"var","name":6}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":3,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"condition":{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"prim","operands":[{"kind":"var","name":8}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"index":5,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},"kind":"cond","then_branch":{"kind":"prim","operands":[{"kind":"var","name":8}],"operation":{"kind":"length"}}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":3,"kind":"adt"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"bound":{"function":17,"kind":"call","operands":[{"captures":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"function":13,"kind":"closure"},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"kind":"var","name":7}]},"kind":"let","name":8,"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":6},{"kind":"var","name":4}],"operation":{"kind":"append"}},"kind":"let","name":7,"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"bound":{"function":12,"kind":"call","operands":[{"kind":"var","name":3}]},"kind":"let","name":6,"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":10,"kind":"call","operands":[{"kind":"var","name":0},{"index":0,"kind":"field","value":{"kind":"var","name":3}}]},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"index":0,"kind":"field","value":{"kind":"var","name":1}},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"index":1,"kind":"field","value":{"kind":"var","name":1}},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"parameters":[0,1],"result":{"kind":"option","value":{"index":2,"kind":"adt"}},"types":[{"kind":"nat"},{"index":2,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"function":5,"kind":"call","operands":[{"kind":"var","name":0}]}],"operation":{"kind":"length"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":17,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"kind":"fn","parameters":[{"element":{"index":1,"kind":"adt"},"kind":"list"},{"index":1,"kind":"adt"}],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"element":{"index":1,"kind":"adt"},"kind":"list"},{"element":{"index":1,"kind":"adt"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":18,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"kind":"fn","parameters":[{"element":{"index":1,"kind":"adt"},"kind":"list"},{"kind":"nat"}],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"element":{"index":1,"kind":"adt"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":19,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"index":2,"kind":"adt"}],"result":{"kind":"option","value":{"index":2,"kind":"adt"}}},{"kind":"nat"},{"index":2,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"reasoning_screen_60_std","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"nat"}]]},{"constructors":[[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"element":{"index":0,"kind":"adt"},"kind":"list"}]]},{"constructors":[[{"element":{"index":1,"kind":"adt"},"kind":"list"},{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"index":1,"kind":"adt"}}},{"kind":"bool"},{"index":3,"kind":"adt"}]]},{"constructors":[[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]}],"functions":[{"body":{"body":{"kind":"build","operands":[{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"first","value":{"kind":"var","name":2}},{"index":1,"kind":"field","value":{"kind":"second","value":{"kind":"var","name":2}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}}],"shape":{"kind":"ok"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[{"condition":{"kind":"prim","operands":[{"kind":"second","value":{"kind":"var","name":1}},{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}],"operation":{"kind":"bool_not"}}],"operation":{"kind":"bool_and"}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"index":1,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}}},{"kind":"build","operands":[{"index":0,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"kind":"build","operands":[{"index":1,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"kind":"build","operands":[{"index":2,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"kind":"build","operands":[{"index":3,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"kind":"build","operands":[{"index":4,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}},{"index":5,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"first","value":{"kind":"var","name":1}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}}},"bound":{"function":19,"kind":"call","operands":[{"captures":[{"kind":"var","name":0}],"function":15,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"8"}},{"function":14,"kind":"call","operands":[{"kind":"var","name":0}]}]},"kind":"let","name":1,"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0],"result":{"kind":"pair","left":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":0,"kind":"adt"},"kind":"list"}}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}}}},"types":[{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"second","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"var","name":1}],"operation":{"kind":"nat_lt"}}],"operation":{"kind":"bool_and"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"kind":"build","operands":[{"kind":"first","value":{"kind":"var","name":0}},{"kind":"var","name":1}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"condition":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"body":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}}],"operation":{"kind":"nat_le"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"kind":"cond","then_branch":{"kind":"var","name":1}},"bound":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"10"}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"20"}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"30"}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"50"}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"kind":"let","name":1,"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"kind":"nat"}]},{"body":{"function":4,"kind":"call","operands":[{"kind":"first","value":{"kind":"var","name":0}}]},"parameters":[0],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[2],"body":{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"shape":{"constructor":0,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"index":0,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"types":[{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"second","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":0}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":1}],"operation":{"kind":"nat_add"}},{"kind":"var","name":0}],"operation":{"kind":"nat_le"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[2],"body":{"body":{"condition":{"kind":"var","name":3},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"bound":{"function":9,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"kind":"let","name":3,"type":{"kind":"bool"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":8,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"nat"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"none"}},{"binders":[3],"body":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":3},{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"operation":{"kind":"append"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"operation":{"kind":"append"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":6,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}}]},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"index":1,"kind":"adt"},{"element":{"index":1,"kind":"adt"},"kind":"list"},{"kind":"nat"}]},{"body":{"function":18,"kind":"call","operands":[{"captures":[{"kind":"var","name":0}],"function":11,"kind":"closure"},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"function":5,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}]},"parameters":[0],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}},{"kind":"var","name":0}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"var","name":1},"kind":"cond","then_branch":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"operation":{"kind":"append"}}},"parameters":[0,1,2],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"kind":"nat"},{"element":{"index":1,"kind":"adt"},"kind":"list"},{"index":1,"kind":"adt"}]},{"body":{"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"index":1,"kind":"adt"}}}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_lt"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":3,"kind":"adt"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}},"bound":{"function":17,"kind":"call","operands":[{"captures":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"function":13,"kind":"closure"},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"kind":"build","operands":[{"kind":"build","operands":[{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}}]},"kind":"let","name":1,"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"parameters":[0],"result":{"index":2,"kind":"adt"},"types":[{"kind":"nat"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"arms":[{"binders":[5],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":4},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":5},{"kind":"var","name":3}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"index":1,"kind":"adt"}}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"index":1,"kind":"adt"}}}},{"index":2,"kind":"field","value":{"kind":"var","name":1}},{"kind":"build","operands":[{"kind":"prim","operands":[{"index":0,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"index":1,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"index":2,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"index":3,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"index":5,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":3,"kind":"adt"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"body":{"body":{"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":8},{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"index":1,"kind":"adt"}}}},{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"kind":"var","name":1}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}},{"kind":"prim","operands":[{"kind":"var","name":7}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_lt"}}],"operation":{"kind":"bool_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"index":0,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"function":16,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":3}}]}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"prim","operands":[{"kind":"var","name":6}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":3,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"condition":{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},{"kind":"prim","operands":[{"kind":"var","name":8}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"index":5,"kind":"field","value":{"index":3,"kind":"field","value":{"kind":"var","name":1}}},"kind":"cond","then_branch":{"kind":"prim","operands":[{"kind":"var","name":8}],"operation":{"kind":"length"}}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":3,"kind":"adt"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"bound":{"function":17,"kind":"call","operands":[{"captures":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"function":13,"kind":"closure"},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"kind":"var","name":7}]},"kind":"let","name":8,"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":6},{"kind":"var","name":4}],"operation":{"kind":"append"}},"kind":"let","name":7,"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"bound":{"function":12,"kind":"call","operands":[{"kind":"var","name":3}]},"kind":"let","name":6,"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":10,"kind":"call","operands":[{"kind":"var","name":0},{"index":0,"kind":"field","value":{"kind":"var","name":3}}]},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"index":0,"kind":"field","value":{"kind":"var","name":1}},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"index":1,"kind":"field","value":{"kind":"var","name":1}},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"parameters":[0,1],"result":{"kind":"option","value":{"index":2,"kind":"adt"}},"types":[{"kind":"nat"},{"index":2,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"function":5,"kind":"call","operands":[{"kind":"var","name":0}]}],"operation":{"kind":"length"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":17,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"kind":"fn","parameters":[{"element":{"index":1,"kind":"adt"},"kind":"list"},{"index":1,"kind":"adt"}],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"element":{"index":1,"kind":"adt"},"kind":"list"},{"element":{"index":1,"kind":"adt"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":18,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"element":{"index":1,"kind":"adt"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"},"types":[{"kind":"fn","parameters":[{"element":{"index":1,"kind":"adt"},"kind":"list"},{"kind":"nat"}],"result":{"element":{"index":1,"kind":"adt"},"kind":"list"}},{"element":{"index":1,"kind":"adt"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":19,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"index":2,"kind":"adt"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"index":2,"kind":"adt"}],"result":{"kind":"option","value":{"index":2,"kind":"adt"}}},{"kind":"nat"},{"index":2,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/reasoning-screen-60/provenance.json b/compiler/rust/rust-std/reasoning-screen-60/provenance.json index 5b22e0e8e..cbbc8c0dc 100644 --- a/compiler/rust/rust-std/reasoning-screen-60/provenance.json +++ b/compiler/rust/rust-std/reasoning-screen-60/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"6b2ba79c93d98fec40d7c38459891c240b44b878f9f72528047529e0215f5b9f","src/lib.rs":"19bdb3978ae3737d3bf479286a02425b12d2d49c1599b69a56f8fef01b6192c7"},"name":"reasoning_screen_60_std","profile":"rust-std","program":"2c82dd43ba6e271789a7bdc044634f9692c15588ec645405507ced8f905e9760","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"6b2ba79c93d98fec40d7c38459891c240b44b878f9f72528047529e0215f5b9f","src/lib.rs":"19bdb3978ae3737d3bf479286a02425b12d2d49c1599b69a56f8fef01b6192c7"},"name":"reasoning_screen_60_std","profile":"rust-std","program":"2c82dd43ba6e271789a7bdc044634f9692c15588ec645405507ced8f905e9760","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/reasoning-spend-2/package.json b/compiler/rust/rust-std/reasoning-spend-2/package.json index ace150fa3..6b5a9bf6b 100644 --- a/compiler/rust/rust-std/reasoning-spend-2/package.json +++ b/compiler/rust/rust-std/reasoning-spend-2/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"reasoning_spend_2_std","profile":"rust-std","program":{"adts":[{"constructors":[[],[{"kind":"nat"}]]}],"functions":[{"body":{"body":{"condition":{"kind":"second","value":{"kind":"var","name":1}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"kind":"cond","then_branch":{"function":16,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"first","value":{"kind":"var","name":1}}]}},"bound":{"function":18,"kind":"call","operands":[{"captures":[],"function":12,"kind":"closure"},{"kind":"prim","operands":[{"kind":"second","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}}],"operation":{"kind":"nat_add"}},{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]}]},"kind":"let","name":1,"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"kind":"bool"}}},"parameters":[0],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"kind":"build","operands":[{"kind":"first","value":{"kind":"var","name":0}},{"kind":"prim","operands":[{"kind":"second","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_add"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"second","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"kind":"build","operands":[{"kind":"first","value":{"kind":"var","name":0}},{"kind":"prim","operands":[{"kind":"second","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_sub"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"condition":{"function":2,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":3,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"second","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_le"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"var","name":1}],"operation":{"kind":"nat_lt"}}],"operation":{"kind":"bool_and"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"kind":"build","operands":[{"kind":"first","value":{"kind":"var","name":0}},{"kind":"prim","operands":[{"kind":"second","value":{"kind":"var","name":0}},{"kind":"var","name":1}],"operation":{"kind":"nat_sub"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"condition":{"function":5,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":6,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"arms":[{"binders":[3],"body":{"kind":"build","operands":[{"kind":"var","name":3}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":0,"kind":"adt"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"condition":{"function":5,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":0,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"constructor":1,"kind":"adt"},"type":{"index":0,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":0,"kind":"adt"}}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"index":0,"kind":"adt"}}},"parameters":[0,1,2],"result":{"kind":"option","value":{"index":0,"kind":"adt"}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"kind":"option","value":{"index":0,"kind":"adt"}},{"kind":"nat"}]},{"body":{"arms":[{"binders":[1],"body":{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":0,"kind":"adt"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"function":17,"kind":"call","operands":[{"captures":[{"kind":"var","name":0}],"function":9,"kind":"closure"},{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":0,"kind":"adt"}}},{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]}]},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"condition":{"function":2,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":0,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":0,"kind":"adt"}}}},"type":{"kind":"option","value":{"index":0,"kind":"adt"}}},"parameters":[0],"result":{"kind":"option","value":{"index":0,"kind":"adt"}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"function":4,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":0,"kind":"adt"}},{"binders":[2],"body":{"function":8,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"shape":{"constructor":1,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"index":0,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"shape":{"kind":"none"}},{"binders":[1],"body":{"function":11,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":0}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[2],"body":{"body":{"condition":{"kind":"var","name":3},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"bound":{"function":14,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"kind":"let","name":3,"type":{"kind":"bool"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":13,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"ok"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"arms":[{"binders":[3],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":13,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":15,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"parameters":[0,1],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":17,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"option","value":{"index":0,"kind":"adt"}}},"parameters":[0,1,2],"result":{"kind":"option","value":{"index":0,"kind":"adt"}},"types":[{"kind":"fn","parameters":[{"kind":"option","value":{"index":0,"kind":"adt"}},{"kind":"nat"}],"result":{"kind":"option","value":{"index":0,"kind":"adt"}}},{"kind":"option","value":{"index":0,"kind":"adt"}},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":18,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},{"kind":"nat"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"reasoning_spend_2_std","profile":"rust-std","program":{"adts":[{"constructors":[[],[{"kind":"nat"}]]}],"functions":[{"body":{"body":{"condition":{"kind":"second","value":{"kind":"var","name":1}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"kind":"cond","then_branch":{"function":16,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"first","value":{"kind":"var","name":1}}]}},"bound":{"function":18,"kind":"call","operands":[{"captures":[],"function":12,"kind":"closure"},{"kind":"prim","operands":[{"kind":"second","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}}],"operation":{"kind":"nat_add"}},{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]}]},"kind":"let","name":1,"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"kind":"bool"}}},"parameters":[0],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"kind":"build","operands":[{"kind":"first","value":{"kind":"var","name":0}},{"kind":"prim","operands":[{"kind":"second","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_add"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"second","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"kind":"build","operands":[{"kind":"first","value":{"kind":"var","name":0}},{"kind":"prim","operands":[{"kind":"second","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_sub"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"condition":{"function":2,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":3,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"second","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_le"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"var","name":1}],"operation":{"kind":"nat_lt"}}],"operation":{"kind":"bool_and"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"kind":"build","operands":[{"kind":"first","value":{"kind":"var","name":0}},{"kind":"prim","operands":[{"kind":"second","value":{"kind":"var","name":0}},{"kind":"var","name":1}],"operation":{"kind":"nat_sub"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"condition":{"function":5,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":6,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"arms":[{"binders":[3],"body":{"kind":"build","operands":[{"kind":"var","name":3}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":0,"kind":"adt"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"condition":{"function":5,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":0,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"constructor":1,"kind":"adt"},"type":{"index":0,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":0,"kind":"adt"}}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"index":0,"kind":"adt"}}},"parameters":[0,1,2],"result":{"kind":"option","value":{"index":0,"kind":"adt"}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"kind":"option","value":{"index":0,"kind":"adt"}},{"kind":"nat"}]},{"body":{"arms":[{"binders":[1],"body":{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":0,"kind":"adt"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"function":17,"kind":"call","operands":[{"captures":[{"kind":"var","name":0}],"function":9,"kind":"closure"},{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":0,"kind":"adt"}}},{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]}]},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"condition":{"function":2,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":0,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":0,"kind":"adt"}}}},"type":{"kind":"option","value":{"index":0,"kind":"adt"}}},"parameters":[0],"result":{"kind":"option","value":{"index":0,"kind":"adt"}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"function":4,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":0,"kind":"adt"}},{"binders":[2],"body":{"function":8,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"shape":{"constructor":1,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"index":0,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"shape":{"kind":"none"}},{"binders":[1],"body":{"function":11,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":0}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[2],"body":{"body":{"condition":{"kind":"var","name":3},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"bound":{"function":14,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"kind":"let","name":3,"type":{"kind":"bool"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":13,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"ok"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"arms":[{"binders":[3],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":13,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":15,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"parameters":[0,1],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":17,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"option","value":{"index":0,"kind":"adt"}}},"parameters":[0,1,2],"result":{"kind":"option","value":{"index":0,"kind":"adt"}},"types":[{"kind":"fn","parameters":[{"kind":"option","value":{"index":0,"kind":"adt"}},{"kind":"nat"}],"result":{"kind":"option","value":{"index":0,"kind":"adt"}}},{"kind":"option","value":{"index":0,"kind":"adt"}},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":18,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},{"kind":"nat"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/reasoning-spend-2/provenance.json b/compiler/rust/rust-std/reasoning-spend-2/provenance.json index b12749315..14a0076b1 100644 --- a/compiler/rust/rust-std/reasoning-spend-2/provenance.json +++ b/compiler/rust/rust-std/reasoning-spend-2/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"c2c0345745bacad0251a4e80ba7a892918c1c6a168796097020e4bdeb384462e","src/lib.rs":"6cb861df6eb1109f2978be8097a5f4d0e34aad0afd939536ffc0ac19e986344f"},"name":"reasoning_spend_2_std","profile":"rust-std","program":"17434eb3a9b6f5c3d3c280a02d2c2af7cb3c4cdb5780c3478abb893d9a0915df","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"c2c0345745bacad0251a4e80ba7a892918c1c6a168796097020e4bdeb384462e","src/lib.rs":"6cb861df6eb1109f2978be8097a5f4d0e34aad0afd939536ffc0ac19e986344f"},"name":"reasoning_spend_2_std","profile":"rust-std","program":"17434eb3a9b6f5c3d3c280a02d2c2af7cb3c4cdb5780c3478abb893d9a0915df","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/reasoning-triage-shock/package.json b/compiler/rust/rust-std/reasoning-triage-shock/package.json index 2c170e6f1..69e53e34d 100644 --- a/compiler/rust/rust-std/reasoning-triage-shock/package.json +++ b/compiler/rust/rust-std/reasoning-triage-shock/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"reasoning_triage_shock_std","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[{"index":0,"kind":"adt"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[],[],[],[],[],[],[],[]]}],"functions":[{"body":{"body":{"condition":{"kind":"second","value":{"kind":"var","name":1}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"kind":"cond","then_branch":{"function":36,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"first","value":{"kind":"var","name":1}}]}},"bound":{"function":38,"kind":"call","operands":[{"captures":[],"function":33,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"11"}},{"function":30,"kind":"call","operands":[{"kind":"var","name":0}]}]},"kind":"let","name":1,"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"380"}},{"index":0,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}},{"index":1,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"20"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"12"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":1,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":2,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":3,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":4,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"index":0,"kind":"field","value":{"kind":"var","name":0}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"function":5,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":14,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":15,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":16,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":17,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":18,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":19,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":20,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":0,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":7,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":6,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":5,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":4,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":3,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":2,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":1,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":2,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"function":22,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":0,"kind":"adt"}},{"binders":[],"body":{"function":23,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":1,"kind":"adt"}},{"binders":[],"body":{"function":24,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":2,"kind":"adt"}},{"binders":[],"body":{"function":25,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":3,"kind":"adt"}},{"binders":[],"body":{"function":26,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":4,"kind":"adt"}},{"binders":[],"body":{"function":27,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":5,"kind":"adt"}},{"binders":[],"body":{"function":28,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":6,"kind":"adt"}},{"binders":[],"body":{"function":29,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":7,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0,1],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"},{"index":2,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"shape":{"kind":"none"}},{"binders":[1],"body":{"function":32,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":31,"kind":"call","operands":[{"kind":"var","name":0}]},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[2],"body":{"body":{"condition":{"kind":"var","name":3},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"bound":{"function":37,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"kind":"let","name":3,"type":{"kind":"bool"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"ok"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"arms":[{"binders":[3],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":35,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"parameters":[0,1],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_le"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"function":5,"kind":"call","operands":[{"kind":"var","name":0}]},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},{"function":2,"kind":"call","operands":[{"kind":"var","name":0}]}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_not"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_and"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":38,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"index":1,"kind":"adt"}],"result":{"kind":"option","value":{"index":1,"kind":"adt"}}},{"kind":"nat"},{"index":1,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"reasoning_triage_shock_std","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[{"index":0,"kind":"adt"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[],[],[],[],[],[],[],[]]}],"functions":[{"body":{"body":{"condition":{"kind":"second","value":{"kind":"var","name":1}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"kind":"cond","then_branch":{"function":36,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"first","value":{"kind":"var","name":1}}]}},"bound":{"function":38,"kind":"call","operands":[{"captures":[],"function":33,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"11"}},{"function":30,"kind":"call","operands":[{"kind":"var","name":0}]}]},"kind":"let","name":1,"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"380"}},{"index":0,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}},{"index":1,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"20"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"12"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":1,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":2,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":3,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":4,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"index":0,"kind":"field","value":{"kind":"var","name":0}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"function":5,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":14,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":15,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":16,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":17,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":18,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":19,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":20,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":0,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":7,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":6,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":5,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":4,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":3,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":2,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":1,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":2,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"function":22,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":0,"kind":"adt"}},{"binders":[],"body":{"function":23,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":1,"kind":"adt"}},{"binders":[],"body":{"function":24,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":2,"kind":"adt"}},{"binders":[],"body":{"function":25,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":3,"kind":"adt"}},{"binders":[],"body":{"function":26,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":4,"kind":"adt"}},{"binders":[],"body":{"function":27,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":5,"kind":"adt"}},{"binders":[],"body":{"function":28,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":6,"kind":"adt"}},{"binders":[],"body":{"function":29,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":7,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0,1],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"},{"index":2,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"shape":{"kind":"none"}},{"binders":[1],"body":{"function":32,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":31,"kind":"call","operands":[{"kind":"var","name":0}]},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[2],"body":{"body":{"condition":{"kind":"var","name":3},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"bound":{"function":37,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"kind":"let","name":3,"type":{"kind":"bool"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"ok"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"arms":[{"binders":[3],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":35,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"parameters":[0,1],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_le"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"function":5,"kind":"call","operands":[{"kind":"var","name":0}]},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},{"function":2,"kind":"call","operands":[{"kind":"var","name":0}]}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_not"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_and"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":38,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"index":1,"kind":"adt"}],"result":{"kind":"option","value":{"index":1,"kind":"adt"}}},{"kind":"nat"},{"index":1,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/reasoning-triage-shock/provenance.json b/compiler/rust/rust-std/reasoning-triage-shock/provenance.json index 2f8788903..660461dfc 100644 --- a/compiler/rust/rust-std/reasoning-triage-shock/provenance.json +++ b/compiler/rust/rust-std/reasoning-triage-shock/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"46d28860996d9df4a3360d03655c6f27c081ec31f6c333a1983f433b055e728d","src/lib.rs":"5948011c40fff786904f62fe0a4097bcdc99c97a436cc265433e3a74f0168db4"},"name":"reasoning_triage_shock_std","profile":"rust-std","program":"754fca76975093fa27b62f115ad8a931069e28b657cc9d03073a6bf862ffb02e","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"46d28860996d9df4a3360d03655c6f27c081ec31f6c333a1983f433b055e728d","src/lib.rs":"5948011c40fff786904f62fe0a4097bcdc99c97a436cc265433e3a74f0168db4"},"name":"reasoning_triage_shock_std","profile":"rust-std","program":"754fca76975093fa27b62f115ad8a931069e28b657cc9d03073a6bf862ffb02e","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/reasoning-triage-traced/package.json b/compiler/rust/rust-std/reasoning-triage-traced/package.json index 097b08647..e1cd2e7fc 100644 --- a/compiler/rust/rust-std/reasoning-triage-traced/package.json +++ b/compiler/rust/rust-std/reasoning-triage-traced/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"reasoning_triage_traced_std","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[{"index":0,"kind":"adt"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[],[],[],[],[],[],[],[]]},{"constructors":[[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[{"index":1,"kind":"adt"},{"element":{"index":2,"kind":"adt"},"kind":"list"},{"index":3,"kind":"adt"}]]}],"functions":[{"body":{"body":{"body":{"kind":"build","operands":[{"condition":{"kind":"second","value":{"kind":"var","name":1}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":2,"kind":"adt"},"kind":"list"}}}},"kind":"cond","then_branch":{"arms":[{"binders":[3],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":3},{"index":1,"kind":"field","value":{"kind":"var","name":2}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":2,"kind":"adt"},"kind":"list"}}}],"shape":{"kind":"ok"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":2,"kind":"adt"},"kind":"list"}}}},"shape":{"kind":"ok"}},{"binders":[4],"body":{"kind":"build","operands":[{"kind":"var","name":4}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":2,"kind":"adt"},"kind":"list"}}}},"shape":{"kind":"error"}}],"kind":"match","scrutinee":{"function":39,"kind":"call","operands":[{"kind":"var","name":0},{"index":0,"kind":"field","value":{"kind":"var","name":2}}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":2,"kind":"adt"},"kind":"list"}}}}},{"kind":"build","operands":[{"condition":{"kind":"second","value":{"kind":"var","name":1}},"else_branch":{"index":1,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":2}}},"kind":"cond","then_branch":{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":2}}},{"function":3,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":2}}]}],"operation":{"kind":"nat_add"}}},{"index":2,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":2}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":2,"kind":"adt"},"kind":"list"}}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"bound":{"kind":"first","value":{"kind":"var","name":1}},"kind":"let","name":2,"type":{"index":4,"kind":"adt"}},"bound":{"function":41,"kind":"call","operands":[{"captures":[],"function":2,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"11"}},{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]}]},"kind":"let","name":1,"type":{"kind":"pair","left":{"index":4,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0],"result":{"kind":"pair","left":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":2,"kind":"adt"},"kind":"list"}}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"function":33,"kind":"call","operands":[{"kind":"var","name":0}]},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":2,"kind":"adt"},"kind":"list"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":3,"kind":"adt"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":4,"kind":"adt"}},"parameters":[0],"result":{"index":4,"kind":"adt"},"types":[{"index":0,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":4,"kind":"adt"}}},"shape":{"kind":"none"}},{"binders":[1],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":4,"kind":"adt"}}},"shape":{"kind":"none"}},{"binders":[2],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":2,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":2,"kind":"adt"},"kind":"list"}}],"operation":{"kind":"append"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"index":0,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":0}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":0}}},{"function":3,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":0}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"index":3,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":0}}},{"index":4,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":0}}},{"index":5,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":0}}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":3,"kind":"adt"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":4,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":4,"kind":"adt"}}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":35,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"kind":"var","name":1}]},"type":{"kind":"option","value":{"index":4,"kind":"adt"}}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]},"type":{"kind":"option","value":{"index":4,"kind":"adt"}}},"parameters":[0],"result":{"kind":"option","value":{"index":4,"kind":"adt"}},"types":[{"index":4,"kind":"adt"}]},{"body":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"prim","operands":[{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"prim","operands":[{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"prim","operands":[{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"prim","operands":[{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"prim","operands":[{"condition":{"function":14,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"prim","operands":[{"condition":{"function":15,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"prim","operands":[{"condition":{"function":16,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},"parameters":[0],"result":{"kind":"nat"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"380"}},{"index":0,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}},{"index":1,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"20"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"12"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":4,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":5,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":6,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":7,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"index":0,"kind":"field","value":{"kind":"var","name":0}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"function":8,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":17,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":18,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":19,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":20,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":14,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":22,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":15,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":23,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":16,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":24,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":0,"kind":"adt"}]},{"body":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":14,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":15,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":16,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":7,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":6,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":5,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":4,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":3,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":2,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":1,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":2,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"function":25,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":0,"kind":"adt"}},{"binders":[],"body":{"function":26,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":1,"kind":"adt"}},{"binders":[],"body":{"function":27,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":2,"kind":"adt"}},{"binders":[],"body":{"function":28,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":3,"kind":"adt"}},{"binders":[],"body":{"function":29,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":4,"kind":"adt"}},{"binders":[],"body":{"function":30,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":5,"kind":"adt"}},{"binders":[],"body":{"function":31,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":6,"kind":"adt"}},{"binders":[],"body":{"function":32,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":7,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0,1],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"},{"index":2,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"shape":{"kind":"none"}},{"binders":[1],"body":{"function":35,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":0}]},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[2],"body":{"body":{"condition":{"kind":"var","name":3},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"bound":{"function":40,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"kind":"let","name":3,"type":{"kind":"bool"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":37,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"ok"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"arms":[{"binders":[3],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":37,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":38,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"parameters":[0,1],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_le"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"function":4,"kind":"call","operands":[{"kind":"var","name":0}]},{"function":5,"kind":"call","operands":[{"kind":"var","name":0}]}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_not"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_and"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":4,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":4,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":41,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"index":4,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"index":4,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"index":4,"kind":"adt"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"index":4,"kind":"adt"}],"result":{"kind":"option","value":{"index":4,"kind":"adt"}}},{"kind":"nat"},{"index":4,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"reasoning_triage_traced_std","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[{"index":0,"kind":"adt"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[],[],[],[],[],[],[],[]]},{"constructors":[[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[{"index":1,"kind":"adt"},{"element":{"index":2,"kind":"adt"},"kind":"list"},{"index":3,"kind":"adt"}]]}],"functions":[{"body":{"body":{"body":{"kind":"build","operands":[{"condition":{"kind":"second","value":{"kind":"var","name":1}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":2,"kind":"adt"},"kind":"list"}}}},"kind":"cond","then_branch":{"arms":[{"binders":[3],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":3},{"index":1,"kind":"field","value":{"kind":"var","name":2}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":2,"kind":"adt"},"kind":"list"}}}],"shape":{"kind":"ok"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":2,"kind":"adt"},"kind":"list"}}}},"shape":{"kind":"ok"}},{"binders":[4],"body":{"kind":"build","operands":[{"kind":"var","name":4}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":2,"kind":"adt"},"kind":"list"}}}},"shape":{"kind":"error"}}],"kind":"match","scrutinee":{"function":39,"kind":"call","operands":[{"kind":"var","name":0},{"index":0,"kind":"field","value":{"kind":"var","name":2}}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":2,"kind":"adt"},"kind":"list"}}}}},{"kind":"build","operands":[{"condition":{"kind":"second","value":{"kind":"var","name":1}},"else_branch":{"index":1,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":2}}},"kind":"cond","then_branch":{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":2}}},{"function":3,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":2}}]}],"operation":{"kind":"nat_add"}}},{"index":2,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":2}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":2,"kind":"adt"},"kind":"list"}}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"bound":{"kind":"first","value":{"kind":"var","name":1}},"kind":"let","name":2,"type":{"index":4,"kind":"adt"}},"bound":{"function":41,"kind":"call","operands":[{"captures":[],"function":2,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"11"}},{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]}]},"kind":"let","name":1,"type":{"kind":"pair","left":{"index":4,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0],"result":{"kind":"pair","left":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"index":2,"kind":"adt"},"kind":"list"}}},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"function":33,"kind":"call","operands":[{"kind":"var","name":0}]},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":2,"kind":"adt"},"kind":"list"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":3,"kind":"adt"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":4,"kind":"adt"}},"parameters":[0],"result":{"index":4,"kind":"adt"},"types":[{"index":0,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":4,"kind":"adt"}}},"shape":{"kind":"none"}},{"binders":[1],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":4,"kind":"adt"}}},"shape":{"kind":"none"}},{"binders":[2],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":2,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":2,"kind":"adt"},"kind":"list"}}],"operation":{"kind":"append"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"index":0,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":0}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":0}}},{"function":3,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":0}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"index":3,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":0}}},{"index":4,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":0}}},{"index":5,"kind":"field","value":{"index":2,"kind":"field","value":{"kind":"var","name":0}}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":3,"kind":"adt"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":4,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":4,"kind":"adt"}}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":35,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"kind":"var","name":1}]},"type":{"kind":"option","value":{"index":4,"kind":"adt"}}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]},"type":{"kind":"option","value":{"index":4,"kind":"adt"}}},"parameters":[0],"result":{"kind":"option","value":{"index":4,"kind":"adt"}},"types":[{"index":4,"kind":"adt"}]},{"body":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"prim","operands":[{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"prim","operands":[{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"prim","operands":[{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"prim","operands":[{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"prim","operands":[{"condition":{"function":14,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"prim","operands":[{"condition":{"function":15,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"prim","operands":[{"condition":{"function":16,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},"parameters":[0],"result":{"kind":"nat"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"380"}},{"index":0,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}},{"index":1,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"20"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"12"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":4,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":5,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":6,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":7,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"index":0,"kind":"field","value":{"kind":"var","name":0}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"function":8,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":17,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":18,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":19,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":20,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":14,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":22,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":15,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":23,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":16,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":24,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":0,"kind":"adt"}]},{"body":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":14,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":15,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":16,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":7,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":6,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":5,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":4,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":3,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":2,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":1,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":2,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"function":25,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":0,"kind":"adt"}},{"binders":[],"body":{"function":26,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":1,"kind":"adt"}},{"binders":[],"body":{"function":27,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":2,"kind":"adt"}},{"binders":[],"body":{"function":28,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":3,"kind":"adt"}},{"binders":[],"body":{"function":29,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":4,"kind":"adt"}},{"binders":[],"body":{"function":30,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":5,"kind":"adt"}},{"binders":[],"body":{"function":31,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":6,"kind":"adt"}},{"binders":[],"body":{"function":32,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":7,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0,1],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"},{"index":2,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"shape":{"kind":"none"}},{"binders":[1],"body":{"function":35,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":0}]},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[2],"body":{"body":{"condition":{"kind":"var","name":3},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"bound":{"function":40,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"kind":"let","name":3,"type":{"kind":"bool"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":37,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"ok"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"arms":[{"binders":[3],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":37,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":38,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"parameters":[0,1],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_le"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"function":4,"kind":"call","operands":[{"kind":"var","name":0}]},{"function":5,"kind":"call","operands":[{"kind":"var","name":0}]}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_not"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_and"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":4,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":4,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":41,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"index":4,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"index":4,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"index":4,"kind":"adt"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"index":4,"kind":"adt"}],"result":{"kind":"option","value":{"index":4,"kind":"adt"}}},{"kind":"nat"},{"index":4,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/reasoning-triage-traced/provenance.json b/compiler/rust/rust-std/reasoning-triage-traced/provenance.json index 6fa45efc3..0b4d8d5a9 100644 --- a/compiler/rust/rust-std/reasoning-triage-traced/provenance.json +++ b/compiler/rust/rust-std/reasoning-triage-traced/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"d9f99faa03f5d85f3668afd131e4913d1dd8f244eae5cff2be1be3e50fd7d819","src/lib.rs":"f8586929a562aa500caab2148af0d1eeb40b7baa9f5e39ac6dae57ce3f43eb8f"},"name":"reasoning_triage_traced_std","profile":"rust-std","program":"e33ee5ee49170ed518748c5476e407b9437a41cdd26f5421125ecfa55e152ac3","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"d9f99faa03f5d85f3668afd131e4913d1dd8f244eae5cff2be1be3e50fd7d819","src/lib.rs":"f8586929a562aa500caab2148af0d1eeb40b7baa9f5e39ac6dae57ce3f43eb8f"},"name":"reasoning_triage_traced_std","profile":"rust-std","program":"e33ee5ee49170ed518748c5476e407b9437a41cdd26f5421125ecfa55e152ac3","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/reasoning-triage-well/package.json b/compiler/rust/rust-std/reasoning-triage-well/package.json index e5dfec6cc..925e62ff4 100644 --- a/compiler/rust/rust-std/reasoning-triage-well/package.json +++ b/compiler/rust/rust-std/reasoning-triage-well/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"reasoning_triage_well_std","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[{"index":0,"kind":"adt"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[],[],[],[],[],[],[],[]]}],"functions":[{"body":{"body":{"condition":{"kind":"second","value":{"kind":"var","name":1}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"kind":"cond","then_branch":{"function":36,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"first","value":{"kind":"var","name":1}}]}},"bound":{"function":38,"kind":"call","operands":[{"captures":[],"function":33,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"11"}},{"function":30,"kind":"call","operands":[{"kind":"var","name":0}]}]},"kind":"let","name":1,"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"380"}},{"index":0,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}},{"index":1,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"20"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"12"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":1,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":2,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":3,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":4,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"index":0,"kind":"field","value":{"kind":"var","name":0}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"function":5,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":14,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":15,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":16,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":17,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":18,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":19,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":20,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":0,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":7,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":6,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":5,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":4,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":3,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":2,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":1,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":2,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"function":22,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":0,"kind":"adt"}},{"binders":[],"body":{"function":23,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":1,"kind":"adt"}},{"binders":[],"body":{"function":24,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":2,"kind":"adt"}},{"binders":[],"body":{"function":25,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":3,"kind":"adt"}},{"binders":[],"body":{"function":26,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":4,"kind":"adt"}},{"binders":[],"body":{"function":27,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":5,"kind":"adt"}},{"binders":[],"body":{"function":28,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":6,"kind":"adt"}},{"binders":[],"body":{"function":29,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":7,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0,1],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"},{"index":2,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"shape":{"kind":"none"}},{"binders":[1],"body":{"function":32,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":31,"kind":"call","operands":[{"kind":"var","name":0}]},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[2],"body":{"body":{"condition":{"kind":"var","name":3},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"bound":{"function":37,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"kind":"let","name":3,"type":{"kind":"bool"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"ok"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"arms":[{"binders":[3],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":35,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"parameters":[0,1],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_le"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"function":5,"kind":"call","operands":[{"kind":"var","name":0}]},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},{"function":2,"kind":"call","operands":[{"kind":"var","name":0}]}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_not"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_and"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":38,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"index":1,"kind":"adt"}],"result":{"kind":"option","value":{"index":1,"kind":"adt"}}},{"kind":"nat"},{"index":1,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"reasoning_triage_well_std","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[{"index":0,"kind":"adt"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[],[],[],[],[],[],[],[]]}],"functions":[{"body":{"body":{"condition":{"kind":"second","value":{"kind":"var","name":1}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"kind":"cond","then_branch":{"function":36,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"first","value":{"kind":"var","name":1}}]}},"bound":{"function":38,"kind":"call","operands":[{"captures":[],"function":33,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"11"}},{"function":30,"kind":"call","operands":[{"kind":"var","name":0}]}]},"kind":"let","name":1,"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"380"}},{"index":0,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}},{"index":1,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"20"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"12"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"90"}}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":1,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":2,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":3,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"function":4,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"index":0,"kind":"field","value":{"kind":"var","name":0}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"function":5,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}}]}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_and"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}},{"index":3,"kind":"field","value":{"kind":"var","name":0}},{"index":4,"kind":"field","value":{"kind":"var","name":0}},{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"index":6,"kind":"field","value":{"kind":"var","name":0}},{"index":7,"kind":"field","value":{"kind":"var","name":0}},{"kind":"prim","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":14,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":15,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":16,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":17,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":18,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":19,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":20,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0],"result":{"index":1,"kind":"adt"},"types":[{"index":0,"kind":"adt"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":7,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":6,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":5,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":4,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":3,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":2,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":1,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"index":2,"kind":"adt"}}}},"parameters":[0],"result":{"kind":"option","value":{"index":2,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"function":22,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":0,"kind":"adt"}},{"binders":[],"body":{"function":23,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":1,"kind":"adt"}},{"binders":[],"body":{"function":24,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":2,"kind":"adt"}},{"binders":[],"body":{"function":25,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":3,"kind":"adt"}},{"binders":[],"body":{"function":26,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":4,"kind":"adt"}},{"binders":[],"body":{"function":27,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":5,"kind":"adt"}},{"binders":[],"body":{"function":28,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":6,"kind":"adt"}},{"binders":[],"body":{"function":29,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"constructor":7,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0,1],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"},{"index":2,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"shape":{"kind":"none"}},{"binders":[1],"body":{"function":32,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":31,"kind":"call","operands":[{"kind":"var","name":0}]},"type":{"kind":"option","value":{"index":1,"kind":"adt"}}},"parameters":[0],"result":{"kind":"option","value":{"index":1,"kind":"adt"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"kind":"build","operands":[{"index":8,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"none"}},{"binders":[2],"body":{"body":{"condition":{"kind":"var","name":3},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"bound":{"function":37,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"kind":"let","name":3,"type":{"kind":"bool"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"ok"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"arms":[{"binders":[3],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"error"},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":34,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":35,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}}},"parameters":[0,1],"result":{"error":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}},"kind":"result","ok":{"kind":"nat"}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_le"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"function":5,"kind":"call","operands":[{"kind":"var","name":0}]},{"kind":"prim","operands":[{"kind":"prim","operands":[{"index":5,"kind":"field","value":{"kind":"var","name":0}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},{"kind":"prim","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},{"function":2,"kind":"call","operands":[{"kind":"var","name":0}]}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_and"}}],"operation":{"kind":"bool_not"}}],"operation":{"kind":"bool_or"}}],"operation":{"kind":"bool_and"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":38,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"index":1,"kind":"adt"}],"result":{"kind":"option","value":{"index":1,"kind":"adt"}}},{"kind":"nat"},{"index":1,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/reasoning-triage-well/provenance.json b/compiler/rust/rust-std/reasoning-triage-well/provenance.json index 01d0fbf28..55321191d 100644 --- a/compiler/rust/rust-std/reasoning-triage-well/provenance.json +++ b/compiler/rust/rust-std/reasoning-triage-well/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"aceb80958d7147805d89b25b06e0deeabff1948a86f4f7653fa7305263dd17f7","src/lib.rs":"5948011c40fff786904f62fe0a4097bcdc99c97a436cc265433e3a74f0168db4"},"name":"reasoning_triage_well_std","profile":"rust-std","program":"754fca76975093fa27b62f115ad8a931069e28b657cc9d03073a6bf862ffb02e","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"aceb80958d7147805d89b25b06e0deeabff1948a86f4f7653fa7305263dd17f7","src/lib.rs":"5948011c40fff786904f62fe0a4097bcdc99c97a436cc265433e3a74f0168db4"},"name":"reasoning_triage_well_std","profile":"rust-std","program":"754fca76975093fa27b62f115ad8a931069e28b657cc9d03073a6bf862ffb02e","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/record-fields/package.json b/compiler/rust/rust-std/record-fields/package.json index ef7da003a..bd49cf1dc 100644 --- a/compiler/rust/rust-std/record-fields/package.json +++ b/compiler/rust/rust-std/record-fields/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own"]}],"name":"record_fields_std","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]}],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"index":0,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own"]}],"name":"record_fields_std","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]}],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"operation":{"kind":"nat_sub"}},{"kind":"build","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":0}},{"index":2,"kind":"field","value":{"kind":"var","name":0}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"index":0,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/record-fields/provenance.json b/compiler/rust/rust-std/record-fields/provenance.json index 4ca7e4cc8..77adac5d4 100644 --- a/compiler/rust/rust-std/record-fields/provenance.json +++ b/compiler/rust/rust-std/record-fields/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"657125c6db500bcf591eb9b5898a4fb6aa8b9f416dd2191d51e69c9d67e6a88c","src/lib.rs":"c13b5754cdf4860ffbb861d0ba6f54acb22dc4d1a086e8ac5750e4297bcb974e"},"name":"record_fields_std","profile":"rust-std","program":"526bb181b433435ecf3b9116937f342406bd8db3d26cc26b870d03e7f3c11ca9","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"657125c6db500bcf591eb9b5898a4fb6aa8b9f416dd2191d51e69c9d67e6a88c","src/lib.rs":"c13b5754cdf4860ffbb861d0ba6f54acb22dc4d1a086e8ac5750e4297bcb974e"},"name":"record_fields_std","profile":"rust-std","program":"526bb181b433435ecf3b9116937f342406bd8db3d26cc26b870d03e7f3c11ca9","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/set-contains-absent/package.json b/compiler/rust/rust-std/set-contains-absent/package.json index f87cd470a..5500278e2 100644 --- a/compiler/rust/rust-std/set-contains-absent/package.json +++ b/compiler/rust/rust-std/set-contains-absent/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"set_contains_absent_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"set_contains_absent_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/set-contains-absent/provenance.json b/compiler/rust/rust-std/set-contains-absent/provenance.json index 668347cc1..ad6d48b5e 100644 --- a/compiler/rust/rust-std/set-contains-absent/provenance.json +++ b/compiler/rust/rust-std/set-contains-absent/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"d0390ea8a751a564e893b86883b7c4ded0bdcdf0fd444111d2015750ab6c0fe0","src/lib.rs":"f8ded3662c8756234a9fe0ad3f725becbbfb3945e38cec3088dcafac76bd44bd"},"name":"set_contains_absent_std","profile":"rust-std","program":"2830740fb7f083476ef600b571be85a9e1ad2a7d7a2f0965d2ff4d8a184cd330","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"d0390ea8a751a564e893b86883b7c4ded0bdcdf0fd444111d2015750ab6c0fe0","src/lib.rs":"f8ded3662c8756234a9fe0ad3f725becbbfb3945e38cec3088dcafac76bd44bd"},"name":"set_contains_absent_std","profile":"rust-std","program":"2830740fb7f083476ef600b571be85a9e1ad2a7d7a2f0965d2ff4d8a184cd330","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/set-contains/package.json b/compiler/rust/rust-std/set-contains/package.json index 5b775006f..2ddb68079 100644 --- a/compiler/rust/rust-std/set-contains/package.json +++ b/compiler/rust/rust-std/set-contains/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"set_contains_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"set_contains_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/set-contains/provenance.json b/compiler/rust/rust-std/set-contains/provenance.json index 38c57f5f6..4fbb45c4d 100644 --- a/compiler/rust/rust-std/set-contains/provenance.json +++ b/compiler/rust/rust-std/set-contains/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"91a6d7687599dc3bd4c1a1de6489516564fc670387c3094da506db6305395617","src/lib.rs":"f8ded3662c8756234a9fe0ad3f725becbbfb3945e38cec3088dcafac76bd44bd"},"name":"set_contains_std","profile":"rust-std","program":"2830740fb7f083476ef600b571be85a9e1ad2a7d7a2f0965d2ff4d8a184cd330","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"91a6d7687599dc3bd4c1a1de6489516564fc670387c3094da506db6305395617","src/lib.rs":"f8ded3662c8756234a9fe0ad3f725becbbfb3945e38cec3088dcafac76bd44bd"},"name":"set_contains_std","profile":"rust-std","program":"2830740fb7f083476ef600b571be85a9e1ad2a7d7a2f0965d2ff4d8a184cd330","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/set-difference/package.json b/compiler/rust/rust-std/set-difference/package.json index 33df24a5a..7457db72c 100644 --- a/compiler/rust/rust-std/set-difference/package.json +++ b/compiler/rust/rust-std/set-difference/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"set_difference_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"condition":{"function":2,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"var","name":2}]},"else_branch":{"kind":"build","operands":[{"kind":"var","name":2},{"function":1,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"kind":"cond","then_branch":{"function":1,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"set_difference_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"condition":{"function":2,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"var","name":2}]},"else_branch":{"kind":"build","operands":[{"kind":"var","name":2},{"function":1,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"kind":"cond","then_branch":{"function":1,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/set-difference/provenance.json b/compiler/rust/rust-std/set-difference/provenance.json index 38b3b885e..f9e48e8b4 100644 --- a/compiler/rust/rust-std/set-difference/provenance.json +++ b/compiler/rust/rust-std/set-difference/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"7d66fd60ef4599f30ed46df653974df13d29815852f0762ea225e9b214406c46","src/lib.rs":"03edafd16af85fd58f68d2608ad2a29dfbfc75e32d055eadcba43c1c143f6985"},"name":"set_difference_std","profile":"rust-std","program":"e4eedda413cfe9163e193858d2055a14ab25e3243d13a52063f2db62b9d0e044","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"7d66fd60ef4599f30ed46df653974df13d29815852f0762ea225e9b214406c46","src/lib.rs":"03edafd16af85fd58f68d2608ad2a29dfbfc75e32d055eadcba43c1c143f6985"},"name":"set_difference_std","profile":"rust-std","program":"e4eedda413cfe9163e193858d2055a14ab25e3243d13a52063f2db62b9d0e044","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/set-fold/package.json b/compiler/rust/rust-std/set-fold/package.json index 530e4efa7..e687ba191 100644 --- a/compiler/rust/rust-std/set-fold/package.json +++ b/compiler/rust/rust-std/set-fold/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"set_fold_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":2,"kind":"call","operands":[{"captures":[],"function":1,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"var","name":0}]},"parameters":[0],"result":{"kind":"nat"},"types":[{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"10"}}],"operation":{"kind":"nat_mul"}},{"kind":"var","name":1}],"operation":{"kind":"nat_add"}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"nat"}},"parameters":[0,1,2],"result":{"kind":"nat"},"types":[{"kind":"fn","parameters":[{"kind":"nat"},{"kind":"nat"}],"result":{"kind":"nat"}},{"kind":"nat"},{"element":{"kind":"nat"},"kind":"list"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"set_fold_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":2,"kind":"call","operands":[{"captures":[],"function":1,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"var","name":0}]},"parameters":[0],"result":{"kind":"nat"},"types":[{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"10"}}],"operation":{"kind":"nat_mul"}},{"kind":"var","name":1}],"operation":{"kind":"nat_add"}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"nat"}},"parameters":[0,1,2],"result":{"kind":"nat"},"types":[{"kind":"fn","parameters":[{"kind":"nat"},{"kind":"nat"}],"result":{"kind":"nat"}},{"kind":"nat"},{"element":{"kind":"nat"},"kind":"list"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/set-fold/provenance.json b/compiler/rust/rust-std/set-fold/provenance.json index e493605e7..749113a55 100644 --- a/compiler/rust/rust-std/set-fold/provenance.json +++ b/compiler/rust/rust-std/set-fold/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"7473aca13da8e0e6cf970bffae5f972798f7cbe74fd83f4a572aa2f9e268c43e","src/lib.rs":"9b1f7c8d2991d0f182a4a81a590dddeb5c3d58c01fb799f067b87f9cf3340b21"},"name":"set_fold_std","profile":"rust-std","program":"9ec1f516d6a7a34284bd32ea60ad534e79b8a3051e015182f82e02663f083863","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"7473aca13da8e0e6cf970bffae5f972798f7cbe74fd83f4a572aa2f9e268c43e","src/lib.rs":"9b1f7c8d2991d0f182a4a81a590dddeb5c3d58c01fb799f067b87f9cf3340b21"},"name":"set_fold_std","profile":"rust-std","program":"9ec1f516d6a7a34284bd32ea60ad534e79b8a3051e015182f82e02663f083863","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/set-insert-bool/package.json b/compiler/rust/rust-std/set-insert-bool/package.json index e6b559dc2..a62996fb5 100644 --- a/compiler/rust/rust-std/set-insert-bool/package.json +++ b/compiler/rust/rust-std/set-insert-bool/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"set_insert_bool_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"element":{"kind":"bool"},"kind":"list"},"types":[{"element":{"kind":"bool"},"kind":"list"},{"kind":"bool"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":1,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"bool"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"bool"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"bool"},"kind":"list"},"types":[{"element":{"kind":"bool"},"kind":"list"},{"kind":"bool"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"set_insert_bool_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"element":{"kind":"bool"},"kind":"list"},"types":[{"element":{"kind":"bool"},"kind":"list"},{"kind":"bool"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"bool"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":1,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"bool"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"bool"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"bool"},"kind":"list"},"types":[{"element":{"kind":"bool"},"kind":"list"},{"kind":"bool"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/set-insert-bool/provenance.json b/compiler/rust/rust-std/set-insert-bool/provenance.json index 41d5f47fa..8a80454fc 100644 --- a/compiler/rust/rust-std/set-insert-bool/provenance.json +++ b/compiler/rust/rust-std/set-insert-bool/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"ac8196157ba2b724656ab338c86de33b1cfeb222d4450ad25852d973d8cdaa10","src/lib.rs":"a4df278260c79a1680f80dabbe1adc4c5e7b9088731deb27061f99b82f83b5ef"},"name":"set_insert_bool_std","profile":"rust-std","program":"3b7f3f374ccb0b9f3a3ccf2b65f878f5f3a3d928757a7f54116edd2d6fc09cd6","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"ac8196157ba2b724656ab338c86de33b1cfeb222d4450ad25852d973d8cdaa10","src/lib.rs":"a4df278260c79a1680f80dabbe1adc4c5e7b9088731deb27061f99b82f83b5ef"},"name":"set_insert_bool_std","profile":"rust-std","program":"3b7f3f374ccb0b9f3a3ccf2b65f878f5f3a3d928757a7f54116edd2d6fc09cd6","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/set-insert-int/package.json b/compiler/rust/rust-std/set-insert-int/package.json index 2e400893d..53b4d9319 100644 --- a/compiler/rust/rust-std/set-insert-int/package.json +++ b/compiler/rust/rust-std/set-insert-int/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"set_insert_int_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"element":{"kind":"int"},"kind":"list"},"types":[{"element":{"kind":"int"},"kind":"list"},{"kind":"int"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"int"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"int"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"int"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":1,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"int"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"int"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"int"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"int"},"kind":"list"},"types":[{"element":{"kind":"int"},"kind":"list"},{"kind":"int"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"set_insert_int_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"element":{"kind":"int"},"kind":"list"},"types":[{"element":{"kind":"int"},"kind":"list"},{"kind":"int"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"int"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"int"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"int"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":1,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"int"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"int"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"int"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"int"},"kind":"list"},"types":[{"element":{"kind":"int"},"kind":"list"},{"kind":"int"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/set-insert-int/provenance.json b/compiler/rust/rust-std/set-insert-int/provenance.json index 739924dd5..66f1f19c7 100644 --- a/compiler/rust/rust-std/set-insert-int/provenance.json +++ b/compiler/rust/rust-std/set-insert-int/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"51f8f5cfc5ddb86c8cf62f6db2e3c95a011e50de63a1d4b070be9a3d5e3eb38f","src/lib.rs":"427014d899e9c4cd5a84a5e8d3d7fae012881d9674268393f91ef70499613878"},"name":"set_insert_int_std","profile":"rust-std","program":"210b77cf3849c034b591a9dba6ebb3b71f0bf5385789667cfdf8a1a6cf96a322","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"51f8f5cfc5ddb86c8cf62f6db2e3c95a011e50de63a1d4b070be9a3d5e3eb38f","src/lib.rs":"427014d899e9c4cd5a84a5e8d3d7fae012881d9674268393f91ef70499613878"},"name":"set_insert_int_std","profile":"rust-std","program":"210b77cf3849c034b591a9dba6ebb3b71f0bf5385789667cfdf8a1a6cf96a322","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/set-insert-int8/package.json b/compiler/rust/rust-std/set-insert-int8/package.json index 0fc463c3a..0f623702a 100644 --- a/compiler/rust/rust-std/set-insert-int8/package.json +++ b/compiler/rust/rust-std/set-insert-int8/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"set_insert_int8_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"element":{"kind":"fixed","width":"i8"},"kind":"list"},"types":[{"element":{"kind":"fixed","width":"i8"},"kind":"list"},{"kind":"fixed","width":"i8"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"fixed","width":"i8"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"fixed","width":"i8"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"fixed","width":"i8"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":1,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"fixed","width":"i8"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"fixed","width":"i8"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"fixed","width":"i8"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"fixed","width":"i8"},"kind":"list"},"types":[{"element":{"kind":"fixed","width":"i8"},"kind":"list"},{"kind":"fixed","width":"i8"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"set_insert_int8_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"element":{"kind":"fixed","width":"i8"},"kind":"list"},"types":[{"element":{"kind":"fixed","width":"i8"},"kind":"list"},{"kind":"fixed","width":"i8"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"fixed","width":"i8"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"fixed","width":"i8"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"fixed","width":"i8"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":1,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"fixed","width":"i8"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"fixed","width":"i8"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"fixed","width":"i8"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"fixed","width":"i8"},"kind":"list"},"types":[{"element":{"kind":"fixed","width":"i8"},"kind":"list"},{"kind":"fixed","width":"i8"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/set-insert-int8/provenance.json b/compiler/rust/rust-std/set-insert-int8/provenance.json index 2c41bb8fb..e46280794 100644 --- a/compiler/rust/rust-std/set-insert-int8/provenance.json +++ b/compiler/rust/rust-std/set-insert-int8/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"a0e7c7dc27fc08ddf2f3f1e6896e08bf274fe21d581bef3bd53a99e40ca3cf76","src/lib.rs":"44fb9adfeb185dd26db4416f564615751a1d03e9b24901e70cfbd5913a36c81c"},"name":"set_insert_int8_std","profile":"rust-std","program":"9babee8751d6e4795ac73b01fde4a598f1b1bca03d612fd7f206fb0b17c02165","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"a0e7c7dc27fc08ddf2f3f1e6896e08bf274fe21d581bef3bd53a99e40ca3cf76","src/lib.rs":"44fb9adfeb185dd26db4416f564615751a1d03e9b24901e70cfbd5913a36c81c"},"name":"set_insert_int8_std","profile":"rust-std","program":"9babee8751d6e4795ac73b01fde4a598f1b1bca03d612fd7f206fb0b17c02165","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/set-insert-nat/package.json b/compiler/rust/rust-std/set-insert-nat/package.json index 00ba1b55f..8f9ec4b3e 100644 --- a/compiler/rust/rust-std/set-insert-nat/package.json +++ b/compiler/rust/rust-std/set-insert-nat/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"set_insert_nat_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":1,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"set_insert_nat_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":1,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/set-insert-nat/provenance.json b/compiler/rust/rust-std/set-insert-nat/provenance.json index f17f1db5e..13564369b 100644 --- a/compiler/rust/rust-std/set-insert-nat/provenance.json +++ b/compiler/rust/rust-std/set-insert-nat/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"c1627f7f40f8302b3c95611ae71074d87c05b01f3f18d9ae11f2fb07ff3afe02","src/lib.rs":"e2c636a38f005c91b3d6b5884726656520ef2cb793265251d7812cadadae81c6"},"name":"set_insert_nat_std","profile":"rust-std","program":"e29f1fa97756e738282778c32d52b6bb6a525fcc19254de13baa4383e13a9cf3","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"c1627f7f40f8302b3c95611ae71074d87c05b01f3f18d9ae11f2fb07ff3afe02","src/lib.rs":"e2c636a38f005c91b3d6b5884726656520ef2cb793265251d7812cadadae81c6"},"name":"set_insert_nat_std","profile":"rust-std","program":"e29f1fa97756e738282778c32d52b6bb6a525fcc19254de13baa4383e13a9cf3","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/set-insert-product/package.json b/compiler/rust/rust-std/set-insert-product/package.json index be69b0dc0..0a581f1f5 100644 --- a/compiler/rust/rust-std/set-insert-product/package.json +++ b/compiler/rust/rust-std/set-insert-product/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"set_insert_product_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":1,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"set_insert_product_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":1,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"kind":"list"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/set-insert-product/provenance.json b/compiler/rust/rust-std/set-insert-product/provenance.json index d8d859bd1..0500294a4 100644 --- a/compiler/rust/rust-std/set-insert-product/provenance.json +++ b/compiler/rust/rust-std/set-insert-product/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"dc9df9cc09a1c8992c9f97f34533b23c85d1bf109850fa406f140a46c25016e1","src/lib.rs":"5dba2f1f61e0e0fb48674da270e63250eee92027c5005f9a0bc851c1246f420f"},"name":"set_insert_product_std","profile":"rust-std","program":"869f8307350a0a879811d02d90671307c266023d05b322a1aea0b80156307fe3","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"dc9df9cc09a1c8992c9f97f34533b23c85d1bf109850fa406f140a46c25016e1","src/lib.rs":"5dba2f1f61e0e0fb48674da270e63250eee92027c5005f9a0bc851c1246f420f"},"name":"set_insert_product_std","profile":"rust-std","program":"869f8307350a0a879811d02d90671307c266023d05b322a1aea0b80156307fe3","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/set-insert-string/package.json b/compiler/rust/rust-std/set-insert-string/package.json index a7b3ef745..9de01a841 100644 --- a/compiler/rust/rust-std/set-insert-string/package.json +++ b/compiler/rust/rust-std/set-insert-string/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"set_insert_string_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"element":{"kind":"string"},"kind":"list"},"types":[{"element":{"kind":"string"},"kind":"list"},{"kind":"string"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"string"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"string"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"string"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":1,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"string"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"string"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"string"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"string"},"kind":"list"},"types":[{"element":{"kind":"string"},"kind":"list"},{"kind":"string"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"set_insert_string_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"element":{"kind":"string"},"kind":"list"},"types":[{"element":{"kind":"string"},"kind":"list"},{"kind":"string"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"string"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"string"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"string"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":1,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"string"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"string"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"string"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"string"},"kind":"list"},"types":[{"element":{"kind":"string"},"kind":"list"},{"kind":"string"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/set-insert-string/provenance.json b/compiler/rust/rust-std/set-insert-string/provenance.json index 3f009c9a7..d107864e8 100644 --- a/compiler/rust/rust-std/set-insert-string/provenance.json +++ b/compiler/rust/rust-std/set-insert-string/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"e04bbe8317dd705fbdeed47dc59087473da9a1cc6ce512f00cda702a57f037a0","src/lib.rs":"a3045920e4eb0b27999ce5ddc535a1bb8f20764e381c2623e2486090841cfa2a"},"name":"set_insert_string_std","profile":"rust-std","program":"2aaa06fbba9d8f784ebbaa8cc892760f0dcd8c9ee30a7b117aa2c2894f1fe01a","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"e04bbe8317dd705fbdeed47dc59087473da9a1cc6ce512f00cda702a57f037a0","src/lib.rs":"a3045920e4eb0b27999ce5ddc535a1bb8f20764e381c2623e2486090841cfa2a"},"name":"set_insert_string_std","profile":"rust-std","program":"2aaa06fbba9d8f784ebbaa8cc892760f0dcd8c9ee30a7b117aa2c2894f1fe01a","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/set-intersection/package.json b/compiler/rust/rust-std/set-intersection/package.json index 90497d4f0..8847804ec 100644 --- a/compiler/rust/rust-std/set-intersection/package.json +++ b/compiler/rust/rust-std/set-intersection/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"set_intersection_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"condition":{"function":2,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"var","name":2}]},"else_branch":{"function":1,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":2},{"function":1,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"set_intersection_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"condition":{"function":2,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"var","name":2}]},"else_branch":{"function":1,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":2},{"function":1,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/set-intersection/provenance.json b/compiler/rust/rust-std/set-intersection/provenance.json index 149d48a4e..f2596bc5b 100644 --- a/compiler/rust/rust-std/set-intersection/provenance.json +++ b/compiler/rust/rust-std/set-intersection/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"065c99ac2d8e445f9c7d1e757ed1b8d310d62b5dae4591b4f1606d9f696d24a9","src/lib.rs":"a3201ca47c4a09f97a962f7917317536bd4d08027603dfe9fbad12ceb89c0bca"},"name":"set_intersection_std","profile":"rust-std","program":"75c582aab0f65628af4cbdb8726df1c63bb3f09de1c011a8977a1cdddb717930","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"065c99ac2d8e445f9c7d1e757ed1b8d310d62b5dae4591b4f1606d9f696d24a9","src/lib.rs":"a3201ca47c4a09f97a962f7917317536bd4d08027603dfe9fbad12ceb89c0bca"},"name":"set_intersection_std","profile":"rust-std","program":"75c582aab0f65628af4cbdb8726df1c63bb3f09de1c011a8977a1cdddb717930","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/set-remove-absent/package.json b/compiler/rust/rust-std/set-remove-absent/package.json index 5fd5285cf..861c35cc4 100644 --- a/compiler/rust/rust-std/set-remove-absent/package.json +++ b/compiler/rust/rust-std/set-remove-absent/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"set_remove_absent_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":3},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":1,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"set_remove_absent_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":3},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":1,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/set-remove-absent/provenance.json b/compiler/rust/rust-std/set-remove-absent/provenance.json index 4ab66af55..6ba533f77 100644 --- a/compiler/rust/rust-std/set-remove-absent/provenance.json +++ b/compiler/rust/rust-std/set-remove-absent/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"ed7b29efadc01b3250e6b8792579e99adb13ee7cca750934476eb73393f3f8dc","src/lib.rs":"67eb791bec07c8a95e727cba4f72d33409c1702f5306ad028de150b6a89b12eb"},"name":"set_remove_absent_std","profile":"rust-std","program":"9f8b76594bb07bf979cb966167884a9bb89ae977401c0fbb9457a939a51a3880","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"ed7b29efadc01b3250e6b8792579e99adb13ee7cca750934476eb73393f3f8dc","src/lib.rs":"67eb791bec07c8a95e727cba4f72d33409c1702f5306ad028de150b6a89b12eb"},"name":"set_remove_absent_std","profile":"rust-std","program":"9f8b76594bb07bf979cb966167884a9bb89ae977401c0fbb9457a939a51a3880","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/set-remove/package.json b/compiler/rust/rust-std/set-remove/package.json index a5d5e6468..a2840e6df 100644 --- a/compiler/rust/rust-std/set-remove/package.json +++ b/compiler/rust/rust-std/set-remove/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"set_remove_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":3},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":1,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"set_remove_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":3},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":1,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/set-remove/provenance.json b/compiler/rust/rust-std/set-remove/provenance.json index 6805f67fa..b414d6974 100644 --- a/compiler/rust/rust-std/set-remove/provenance.json +++ b/compiler/rust/rust-std/set-remove/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"4b2810bd671579e13c1912c6134046c7ae1f1f48369e8fc16b333d503b0f6ced","src/lib.rs":"67eb791bec07c8a95e727cba4f72d33409c1702f5306ad028de150b6a89b12eb"},"name":"set_remove_std","profile":"rust-std","program":"9f8b76594bb07bf979cb966167884a9bb89ae977401c0fbb9457a939a51a3880","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"4b2810bd671579e13c1912c6134046c7ae1f1f48369e8fc16b333d503b0f6ced","src/lib.rs":"67eb791bec07c8a95e727cba4f72d33409c1702f5306ad028de150b6a89b12eb"},"name":"set_remove_std","profile":"rust-std","program":"9f8b76594bb07bf979cb966167884a9bb89ae977401c0fbb9457a939a51a3880","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/set-union/package.json b/compiler/rust/rust-std/set-union/package.json index d2e2bb1c7..a2f2b170e 100644 --- a/compiler/rust/rust-std/set-union/package.json +++ b/compiler/rust/rust-std/set-union/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"set_union_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":1,"kind":"call","operands":[{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},{"kind":"var","name":3}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":2,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"set_union_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":1,"kind":"call","operands":[{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},{"kind":"var","name":3}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":2,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/set-union/provenance.json b/compiler/rust/rust-std/set-union/provenance.json index b6ed1f9a2..e42f4f4fd 100644 --- a/compiler/rust/rust-std/set-union/provenance.json +++ b/compiler/rust/rust-std/set-union/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"c65da910246da08808f2da2155dd2c328b5ce0961cae63e65d8b98e13b0eb202","src/lib.rs":"4e2d3e13b2cb15205dfc0ed8e9676606d1faa4addcef5672ea36348b502c34a8"},"name":"set_union_std","profile":"rust-std","program":"b7c250f72618139aea007f0241c6e91525523c5710484f1c76b89d9e77090a90","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"c65da910246da08808f2da2155dd2c328b5ce0961cae63e65d8b98e13b0eb202","src/lib.rs":"4e2d3e13b2cb15205dfc0ed8e9676606d1faa4addcef5672ea36348b502c34a8"},"name":"set_union_std","profile":"rust-std","program":"b7c250f72618139aea007f0241c6e91525523c5710484f1c76b89d9e77090a90","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/split-and-join/package.json b/compiler/rust/rust-std/split-and-join/package.json index ea3de85ac..9a25a9d4e 100644 --- a/compiler/rust/rust-std/split-and-join/package.json +++ b/compiler/rust/rust-std/split-and-join/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":[]}],"name":"split_and_join_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"a,b,,c"}},{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":","}},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"10"}}],"operation":{"kind":"split_exact"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"a,b"}},{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":""}},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"10"}}],"operation":{"kind":"split_exact"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"a,b,c"}},{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":","}},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"2"}}],"operation":{"kind":"split_exact"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"aaa"}},{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"aa"}},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"5"}}],"operation":{"kind":"split_exact"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"ababcab"}},{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"abc"}},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"5"}}],"operation":{"kind":"split_exact"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"aabaab"}},{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"ab"}},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"5"}}],"operation":{"kind":"split_exact"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":""}},{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":";"}},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"1"}}],"operation":{"kind":"split_exact"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}},"kind":"list"}},{"kind":"prim","operands":[{"kind":"build","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"x"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":""}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"z"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"string"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"string"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"string"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"string"},"kind":"list"}},{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"--"}}],"operation":{"kind":"join"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}},"kind":"list"},"right":{"kind":"string"}}},"parameters":[],"result":{"kind":"pair","left":{"element":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}},"kind":"list"},"right":{"kind":"string"}},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":[]}],"name":"split_and_join_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"a,b,,c"}},{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":","}},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"10"}}],"operation":{"kind":"split_exact"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"a,b"}},{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":""}},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"10"}}],"operation":{"kind":"split_exact"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"a,b,c"}},{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":","}},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"2"}}],"operation":{"kind":"split_exact"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"aaa"}},{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"aa"}},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"5"}}],"operation":{"kind":"split_exact"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"ababcab"}},{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"abc"}},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"5"}}],"operation":{"kind":"split_exact"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"aabaab"}},{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"ab"}},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"5"}}],"operation":{"kind":"split_exact"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":""}},{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":";"}},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"1"}}],"operation":{"kind":"split_exact"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}},"kind":"list"}},{"kind":"prim","operands":[{"kind":"build","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"x"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":""}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"z"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"string"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"string"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"string"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"string"},"kind":"list"}},{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"--"}}],"operation":{"kind":"join"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}},"kind":"list"},"right":{"kind":"string"}}},"parameters":[],"result":{"kind":"pair","left":{"element":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}},"kind":"list"},"right":{"kind":"string"}},"types":[]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/split-and-join/provenance.json b/compiler/rust/rust-std/split-and-join/provenance.json index 4338417e0..a621b1045 100644 --- a/compiler/rust/rust-std/split-and-join/provenance.json +++ b/compiler/rust/rust-std/split-and-join/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"d200d2a2d485f56f7a86aa2fa75772148915872ae02fb849cc3525c62ee3fc37","src/lib.rs":"90446edf1600486dff6670082ece42ce4650c8c52d03785de8c929e17553db22"},"name":"split_and_join_std","profile":"rust-std","program":"982ffd950ccdcc64baecacf59f92f2b927b0ed9924aab15840d15e590abf8f65","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"d200d2a2d485f56f7a86aa2fa75772148915872ae02fb849cc3525c62ee3fc37","src/lib.rs":"90446edf1600486dff6670082ece42ce4650c8c52d03785de8c929e17553db22"},"name":"split_and_join_std","profile":"rust-std","program":"982ffd950ccdcc64baecacf59f92f2b927b0ed9924aab15840d15e590abf8f65","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/string-escapes/package.json b/compiler/rust/rust-std/string-escapes/package.json index 68a62f254..729b33cae 100644 --- a/compiler/rust/rust-std/string-escapes/package.json +++ b/compiler/rust/rust-std/string-escapes/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"string_escapes_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"quote\" backslash\\ newline\n tab\t nul\u0000 é x́ ☃ 😀"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"quote\" backslash\\ newline\n tab\t nul\u0000 é x́ ☃ 😀"}}],"operation":{"kind":"length"}},{"kind":"var","name":0}],"operation":{"kind":"nat_add"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"string_escapes_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"quote\" backslash\\ newline\n tab\t nul\u0000 é x́ ☃ 😀"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"quote\" backslash\\ newline\n tab\t nul\u0000 é x́ ☃ 😀"}}],"operation":{"kind":"length"}},{"kind":"var","name":0}],"operation":{"kind":"nat_add"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/string-escapes/provenance.json b/compiler/rust/rust-std/string-escapes/provenance.json index 265878d0e..001e9ef2f 100644 --- a/compiler/rust/rust-std/string-escapes/provenance.json +++ b/compiler/rust/rust-std/string-escapes/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"351089a11ce92eae6cbc7f2ce1779fecb816df12c52b7c764e90e850474d6c63","src/lib.rs":"0850367b9b7bf6cb08df1fc745ac222d811cf02e7eda08ff655975faded885d8"},"name":"string_escapes_std","profile":"rust-std","program":"9b460d74ab6318d4fa2802d576ba50f580c272d87a100c66e6f85da294374ba9","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"351089a11ce92eae6cbc7f2ce1779fecb816df12c52b7c764e90e850474d6c63","src/lib.rs":"0850367b9b7bf6cb08df1fc745ac222d811cf02e7eda08ff655975faded885d8"},"name":"string_escapes_std","profile":"rust-std","program":"9b460d74ab6318d4fa2802d576ba50f580c272d87a100c66e6f85da294374ba9","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/sum-to-exhausted/package.json b/compiler/rust/rust-std/sum-to-exhausted/package.json index f63db23ff..f41821612 100644 --- a/compiler/rust/rust-std/sum-to-exhausted/package.json +++ b/compiler/rust/rust-std/sum-to-exhausted/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"sum_to_exhausted_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"kind":"prim","operands":[{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"succ"},"type":{"kind":"nat"}},{"function":0,"kind":"call","operands":[{"kind":"var","name":1}]}],"operation":{"kind":"nat_add"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"sum_to_exhausted_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"kind":"prim","operands":[{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"succ"},"type":{"kind":"nat"}},{"function":0,"kind":"call","operands":[{"kind":"var","name":1}]}],"operation":{"kind":"nat_add"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/sum-to-exhausted/provenance.json b/compiler/rust/rust-std/sum-to-exhausted/provenance.json index 449a214f0..8ba13e28d 100644 --- a/compiler/rust/rust-std/sum-to-exhausted/provenance.json +++ b/compiler/rust/rust-std/sum-to-exhausted/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"e78d34d4b838463c88bb11d83eefe033510ab268fe40522ef6b14aaa96117b67","src/lib.rs":"0a13b867605105995fa9a094147359caa58edba2102dbf7b05af7d3db6d7c9a7"},"name":"sum_to_exhausted_std","profile":"rust-std","program":"0b5d1623110dd3c47e6d54ff536aea2157c78593eaae53a9752197a171fdc79a","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"e78d34d4b838463c88bb11d83eefe033510ab268fe40522ef6b14aaa96117b67","src/lib.rs":"0a13b867605105995fa9a094147359caa58edba2102dbf7b05af7d3db6d7c9a7"},"name":"sum_to_exhausted_std","profile":"rust-std","program":"0b5d1623110dd3c47e6d54ff536aea2157c78593eaae53a9752197a171fdc79a","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/sum-to/package.json b/compiler/rust/rust-std/sum-to/package.json index 1d0a45e67..beb0108b2 100644 --- a/compiler/rust/rust-std/sum-to/package.json +++ b/compiler/rust/rust-std/sum-to/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"sum_to_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"kind":"prim","operands":[{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"succ"},"type":{"kind":"nat"}},{"function":0,"kind":"call","operands":[{"kind":"var","name":1}]}],"operation":{"kind":"nat_add"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"sum_to_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"kind":"prim","operands":[{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"succ"},"type":{"kind":"nat"}},{"function":0,"kind":"call","operands":[{"kind":"var","name":1}]}],"operation":{"kind":"nat_add"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/sum-to/provenance.json b/compiler/rust/rust-std/sum-to/provenance.json index 17cd93b68..f8687ef6a 100644 --- a/compiler/rust/rust-std/sum-to/provenance.json +++ b/compiler/rust/rust-std/sum-to/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"1e23e50d35294a571590ad01935ab2630558839c3c27048800075f7864aa6a95","src/lib.rs":"0a13b867605105995fa9a094147359caa58edba2102dbf7b05af7d3db6d7c9a7"},"name":"sum_to_std","profile":"rust-std","program":"0b5d1623110dd3c47e6d54ff536aea2157c78593eaae53a9752197a171fdc79a","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"1e23e50d35294a571590ad01935ab2630558839c3c27048800075f7864aa6a95","src/lib.rs":"0a13b867605105995fa9a094147359caa58edba2102dbf7b05af7d3db6d7c9a7"},"name":"sum_to_std","profile":"rust-std","program":"0b5d1623110dd3c47e6d54ff536aea2157c78593eaae53a9752197a171fdc79a","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/unit-closures/package.json b/compiler/rust/rust-std/unit-closures/package.json index 732e3fafd..314e8f2e6 100644 --- a/compiler/rust/rust-std/unit-closures/package.json +++ b/compiler/rust/rust-std/unit-closures/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"unit_closures_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"build","operands":[{"function":2,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"unit"}}},{"kind":"build","operands":[{"function":3,"kind":"call","operands":[{"captures":[],"function":1,"kind":"closure"},{"kind":"var","name":0}]},{"kind":"build","operands":[{"function":3,"kind":"call","operands":[{"captures":[],"function":2,"kind":"closure"},{"kind":"var","name":0}]},{"function":4,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"unit"},"right":{"kind":"unit"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"unit"},"right":{"kind":"pair","left":{"kind":"unit"},"right":{"kind":"unit"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"unit"}},"right":{"kind":"pair","left":{"kind":"unit"},"right":{"kind":"pair","left":{"kind":"unit"},"right":{"kind":"unit"}}}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"unit"}},"right":{"kind":"pair","left":{"kind":"unit"},"right":{"kind":"pair","left":{"kind":"unit"},"right":{"kind":"unit"}}}},"types":[{"kind":"nat"}]},{"body":{"body":{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},"kind":"let","name":1,"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"unit"},"types":[{"kind":"nat"}]},{"body":{"body":{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"kind":"let","name":1,"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"unit"},"types":[{"kind":"nat"}]},{"body":{"kind":"apply","operands":[{"kind":"var","name":1}],"target":{"kind":"var","name":0}},"parameters":[0,1],"result":{"kind":"unit"},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"unit"}},{"kind":"nat"}]},{"body":{"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0}]},"bound":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_add"}},"kind":"let","name":1,"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"unit"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"unit_closures_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"build","operands":[{"function":2,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"unit"}}},{"kind":"build","operands":[{"function":3,"kind":"call","operands":[{"captures":[],"function":1,"kind":"closure"},{"kind":"var","name":0}]},{"kind":"build","operands":[{"function":3,"kind":"call","operands":[{"captures":[],"function":2,"kind":"closure"},{"kind":"var","name":0}]},{"function":4,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"unit"},"right":{"kind":"unit"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"unit"},"right":{"kind":"pair","left":{"kind":"unit"},"right":{"kind":"unit"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"unit"}},"right":{"kind":"pair","left":{"kind":"unit"},"right":{"kind":"pair","left":{"kind":"unit"},"right":{"kind":"unit"}}}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"unit"}},"right":{"kind":"pair","left":{"kind":"unit"},"right":{"kind":"pair","left":{"kind":"unit"},"right":{"kind":"unit"}}}},"types":[{"kind":"nat"}]},{"body":{"body":{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},"kind":"let","name":1,"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"unit"},"types":[{"kind":"nat"}]},{"body":{"body":{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"kind":"let","name":1,"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"unit"},"types":[{"kind":"nat"}]},{"body":{"kind":"apply","operands":[{"kind":"var","name":1}],"target":{"kind":"var","name":0}},"parameters":[0,1],"result":{"kind":"unit"},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"unit"}},{"kind":"nat"}]},{"body":{"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0}]},"bound":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_add"}},"kind":"let","name":1,"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"unit"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/unit-closures/provenance.json b/compiler/rust/rust-std/unit-closures/provenance.json index 22e4c9005..fc2f7d459 100644 --- a/compiler/rust/rust-std/unit-closures/provenance.json +++ b/compiler/rust/rust-std/unit-closures/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"faf953f919550ce28fe52f8222706cce910b60edf6a11f96f8f762743109191f","src/lib.rs":"020561b609c98bcdd3cd49b4473a6d3aa021cd9dc8d3e6f1fa8854d233583917"},"name":"unit_closures_std","profile":"rust-std","program":"e2f55254e66e933625b9a18c2414242a0f3a55dccef58b663673c4027a619c34","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"faf953f919550ce28fe52f8222706cce910b60edf6a11f96f8f762743109191f","src/lib.rs":"020561b609c98bcdd3cd49b4473a6d3aa021cd9dc8d3e6f1fa8854d233583917"},"name":"unit_closures_std","profile":"rust-std","program":"e2f55254e66e933625b9a18c2414242a0f3a55dccef58b663673c4027a619c34","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/unit-values/package.json b/compiler/rust/rust-std/unit-values/package.json index ca9cf229f..2fbf6859a 100644 --- a/compiler/rust/rust-std/unit-values/package.json +++ b/compiler/rust/rust-std/unit-values/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"unit_values_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"body":{"body":{"body":{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":2}]},{"kind":"build","operands":[{"function":2,"kind":"call","operands":[{"kind":"var","name":1}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"unit"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"unit"},"right":{"kind":"option","value":{"kind":"unit"}}}},"bound":{"function":5,"kind":"call","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"9"}}],"operation":{"kind":"nat_lt"}},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_lt"}}]},"kind":"let","name":4,"type":{"kind":"unit"}},"bound":{"function":4,"kind":"call","operands":[{"kind":"var","name":1}]},"kind":"let","name":3,"type":{"kind":"unit"}},"bound":{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},"kind":"let","name":2,"type":{"kind":"unit"}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"unit"},"right":{"kind":"option","value":{"kind":"unit"}}},"types":[{"kind":"unit"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"unit"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"unit"}},"parameters":[0],"result":{"kind":"unit"},"types":[{"kind":"unit"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"function":3,"kind":"call","operands":[{"kind":"var","name":1}]},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"unit"}},"parameters":[0],"result":{"kind":"unit"},"types":[{"kind":"nat"}]},{"body":{"body":{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},"kind":"let","name":1,"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"unit"},"types":[{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}},"kind":"cond","then_branch":{"function":3,"kind":"call","operands":[{"kind":"var","name":0}]}},"parameters":[0],"result":{"kind":"unit"},"types":[{"kind":"nat"}]},{"body":{"condition":{"kind":"var","name":0},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}},"kind":"cond","then_branch":{"condition":{"kind":"var","name":1},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}},"kind":"cond","then_branch":{"function":1,"kind":"call","operands":[{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}}]}}},"parameters":[0,1],"result":{"kind":"unit"},"types":[{"kind":"bool"},{"kind":"bool"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"unit_values_std","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"body":{"body":{"body":{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":2}]},{"kind":"build","operands":[{"function":2,"kind":"call","operands":[{"kind":"var","name":1}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"unit"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"unit"},"right":{"kind":"option","value":{"kind":"unit"}}}},"bound":{"function":5,"kind":"call","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"9"}}],"operation":{"kind":"nat_lt"}},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_lt"}}]},"kind":"let","name":4,"type":{"kind":"unit"}},"bound":{"function":4,"kind":"call","operands":[{"kind":"var","name":1}]},"kind":"let","name":3,"type":{"kind":"unit"}},"bound":{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},"kind":"let","name":2,"type":{"kind":"unit"}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"unit"},"right":{"kind":"option","value":{"kind":"unit"}}},"types":[{"kind":"unit"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"unit"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"unit"}},"parameters":[0],"result":{"kind":"unit"},"types":[{"kind":"unit"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"function":3,"kind":"call","operands":[{"kind":"var","name":1}]},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"unit"}},"parameters":[0],"result":{"kind":"unit"},"types":[{"kind":"nat"}]},{"body":{"body":{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},"kind":"let","name":1,"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"unit"},"types":[{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}},"kind":"cond","then_branch":{"function":3,"kind":"call","operands":[{"kind":"var","name":0}]}},"parameters":[0],"result":{"kind":"unit"},"types":[{"kind":"nat"}]},{"body":{"condition":{"kind":"var","name":0},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}},"kind":"cond","then_branch":{"condition":{"kind":"var","name":1},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}},"kind":"cond","then_branch":{"function":1,"kind":"call","operands":[{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}}]}}},"parameters":[0,1],"result":{"kind":"unit"},"types":[{"kind":"bool"},{"kind":"bool"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/unit-values/provenance.json b/compiler/rust/rust-std/unit-values/provenance.json index 576a44334..1a9997a6f 100644 --- a/compiler/rust/rust-std/unit-values/provenance.json +++ b/compiler/rust/rust-std/unit-values/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"8045da83d6b2fb2030e227d9f791ff98b6e68266b4557c08ff33a8e204025f14","src/lib.rs":"ad13289bec0890225a90bdacdef0305b22052f11c27aa4b3af47b12ed83967b1"},"name":"unit_values_std","profile":"rust-std","program":"da46c33882a69c2a5bed667c6e026399692e7ebc318523c341cef90e9257d9ea","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"8045da83d6b2fb2030e227d9f791ff98b6e68266b4557c08ff33a8e204025f14","src/lib.rs":"ad13289bec0890225a90bdacdef0305b22052f11c27aa4b3af47b12ed83967b1"},"name":"unit_values_std","profile":"rust-std","program":"da46c33882a69c2a5bed667c6e026399692e7ebc318523c341cef90e9257d9ea","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/wide-shapes/package.json b/compiler/rust/rust-std/wide-shapes/package.json index 81dfb4dc3..1cf934caa 100644 --- a/compiler/rust/rust-std/wide-shapes/package.json +++ b/compiler/rust/rust-std/wide-shapes/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own"]}],"name":"wide_shapes_std","profile":"rust-std","program":{"adts":[{"constructors":[[],[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]}],"functions":[{"body":{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"5"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"6"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"7"}}]},{"kind":"build","operands":[{"function":2,"kind":"call","operands":[{"kind":"var","name":0}]},{"function":3,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"kind":"nat"}},"right":{"error":{"kind":"unit"},"kind":"result","ok":{"kind":"nat"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"kind":"nat"}},"right":{"error":{"kind":"unit"},"kind":"result","ok":{"kind":"nat"}}}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"kind":"nat"}},"right":{"error":{"kind":"unit"},"kind":"result","ok":{"kind":"nat"}}}},"types":[{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":7},{"kind":"var","name":0}],"operation":{"kind":"nat_sub"}},"parameters":[0,1,2,3,4,5,6,7],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"5"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}}],"shape":{"kind":"error"},"type":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":0}],"shape":{"kind":"ok"},"type":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"kind":"nat"}}}},"parameters":[0],"result":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"kind":"nat"}},"types":[{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}}],"shape":{"kind":"error"},"type":{"error":{"kind":"unit"},"kind":"result","ok":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":0}],"shape":{"kind":"ok"},"type":{"error":{"kind":"unit"},"kind":"result","ok":{"kind":"nat"}}}},"parameters":[0],"result":{"error":{"kind":"unit"},"kind":"result","ok":{"kind":"nat"}},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own"]}],"name":"wide_shapes_std","profile":"rust-std","program":{"adts":[{"constructors":[[],[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]]}],"functions":[{"body":{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"4"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"5"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"6"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"7"}}]},{"kind":"build","operands":[{"function":2,"kind":"call","operands":[{"kind":"var","name":0}]},{"function":3,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"kind":"nat"}},"right":{"error":{"kind":"unit"},"kind":"result","ok":{"kind":"nat"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"kind":"nat"}},"right":{"error":{"kind":"unit"},"kind":"result","ok":{"kind":"nat"}}}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"kind":"nat"}},"right":{"error":{"kind":"unit"},"kind":"result","ok":{"kind":"nat"}}}},"types":[{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":7},{"kind":"var","name":0}],"operation":{"kind":"nat_sub"}},"parameters":[0,1,2,3,4,5,6,7],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"5"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}}],"shape":{"kind":"error"},"type":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":0}],"shape":{"kind":"ok"},"type":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"kind":"nat"}}}},"parameters":[0],"result":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"kind":"nat"}},"types":[{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}}],"shape":{"kind":"error"},"type":{"error":{"kind":"unit"},"kind":"result","ok":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":0}],"shape":{"kind":"ok"},"type":{"error":{"kind":"unit"},"kind":"result","ok":{"kind":"nat"}}}},"parameters":[0],"result":{"error":{"kind":"unit"},"kind":"result","ok":{"kind":"nat"}},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/compiler/rust/rust-std/wide-shapes/provenance.json b/compiler/rust/rust-std/wide-shapes/provenance.json index 7869315ba..3aad06c03 100644 --- a/compiler/rust/rust-std/wide-shapes/provenance.json +++ b/compiler/rust/rust-std/wide-shapes/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"415c3a0d89f14d73987b411bad9cab765e5cda57c0d5271fa87d0341d6507918","src/lib.rs":"2fc8cd4e24bccd554f7e80296b25f799a403dadc4d2d29a70c28f5e03005143a"},"name":"wide_shapes_std","profile":"rust-std","program":"d0de8fa403502aaf54be1ccfae31401db4a92de6aa9ae953b340395fe2de28ec","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["c8f5fdecd4eefbea9d5648c31c7d3f792f742fa8bfec23cfde9d3c0fc99ee517"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"415c3a0d89f14d73987b411bad9cab765e5cda57c0d5271fa87d0341d6507918","src/lib.rs":"2fc8cd4e24bccd554f7e80296b25f799a403dadc4d2d29a70c28f5e03005143a"},"name":"wide_shapes_std","profile":"rust-std","program":"d0de8fa403502aaf54be1ccfae31401db4a92de6aa9ae953b340395fe2de28ec","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e36982ff9545254b9a90d88b07a1ff91624e3016601aeadadf87c9934f8554cb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/crates/conformance/src/cases/mod.rs b/crates/conformance/src/cases/mod.rs index 4df7e2c19..42ef7a9b9 100644 --- a/crates/conformance/src/cases/mod.rs +++ b/crates/conformance/src/cases/mod.rs @@ -27,6 +27,7 @@ mod lexicon; mod models; mod operational; mod oracle; +mod packages; mod preservation; mod production; mod production_export; @@ -120,6 +121,7 @@ pub fn run(id: &str) { "AU" => authoring::run(id), "SL" => stdlib::run(id), "BS" => bootstrap::run(id), + "PK" => packages::run(id), _ => panic!("no conformance case is wired for {id}"), } } diff --git a/crates/conformance/src/cases/packages.rs b/crates/conformance/src/cases/packages.rs new file mode 100644 index 000000000..e80116ce1 --- /dev/null +++ b/crates/conformance/src/cases/packages.rs @@ -0,0 +1,734 @@ +//! The `packages` suite: PK-01..PK-04, source packages (SPEC.md §10.5): a +//! language-1.2 project imports the modules of a locked, content-addressed +//! package of its workspace. + +use lexlean::{Engine, LexLeanError, LockRequest}; + +use crate::production_consumer::{AppRoot, Application}; +use crate::support::{self, P}; + +/// Run the case for one `PK` ID. +/// +/// # Panics +/// +/// Panics when the case's assertion fails. +pub fn run(id: &str) { + match id { + "PK-01" => pk_01(), + "PK-02" => pk_02(), + "PK-03" => pk_03(), + "PK-04" => pk_04(), + _ => panic!("no packages case is wired for {id}"), + } +} + +/// Edit one occurrence in a file of the copy by its own bytes: `P::edit` reads +/// a `.lex.tex` file in its data form, which would rewrite the notation. +fn edit_raw(project: &P, relative: &str, from: &str, to: &str) { + let path = project.root.join(relative); + let text = std::fs::read_to_string(path.as_std_path()).expect("read"); + assert!(text.contains(from), "{relative} does not contain {from:?}"); + std::fs::write(path.as_std_path(), text.replacen(from, to, 1)).expect("write"); +} + +fn lock_request(check_only: bool) -> LockRequest { + LockRequest { + check_only, + allow_network: false, + } +} + +/// The first failure of loading the project, then `lock --check`, then +/// `check`: the stage a refusal surfaces in is not what these cases pin, the +/// code is. +fn first_error(project: &P) -> LexLeanError { + let engine = match Engine::load(&project.root.join("lexlean.toml")) { + Ok(engine) => engine, + Err(error) => return error, + }; + if let Err(error) = engine.lock(lock_request(true)) { + return error; + } + match engine.check(lexlean::CheckRequest { + selection: lexlean::Selection::Entrypoints, + }) { + Ok(_) => panic!("the project is refused"), + Err(error) => error, + } +} + +fn refused(project: &P, code: &str) -> LexLeanError { + let error = first_error(project); + support::expect_code(&error, code); + // Refused before any backend runs: nothing is built or verified. + for output in [".lexlean/build", ".lexlean/verified"] { + assert!( + !project.root.join(output).as_std_path().exists(), + "{code}: `{output}` was published" + ); + } + error +} + +fn lock_text(project: &P) -> String { + project.read_raw("lexlean.lock") +} + +/// The digest a lock row of `id` carries in `field`. +fn locked(lock: &str, id: &str, field: &str) -> String { + let row = lock + .split("[[source_package]]") + .skip(1) + .find(|row| row.contains(&format!("id = \"{id}\"\n"))) + .unwrap_or_else(|| panic!("the lock has a row for `{id}`")); + let prefix = format!("{field} = \""); + let value = row + .lines() + .find_map(|line| line.strip_prefix(prefix.as_str())) + .unwrap_or_else(|| panic!("the row of `{id}` has `{field}`")); + value.trim_end_matches('"').to_owned() +} + +fn modules_of(project: &P) -> Vec { + support::checked_project(project) + .modules + .keys() + .cloned() + .collect() +} + +/// PK-01: configuration, lock, workspace, and the refusals. +#[allow(clippy::too_many_lines)] +fn pk_01() { + // The configuration and the lock read back to the bytes written. + let app = P::package_workspace("app"); + app.relock(); + let lock = lock_text(&app); + assert!(lock.starts_with("spec = \"lexlean/lock/2\"\n")); + let base_row = "[[source_package]]\nid = \"base\"\nversion = \"1.0.0\"\nkind = \"path\"\nsource = \"base\"\nmodule_prefix = \"PkgBase\"\n"; + let lib_row = "[[source_package]]\nid = \"lib\"\nversion = \"1.0.0\"\nkind = \"path\"\nsource = \"lib\"\nmodule_prefix = \"PkgLib\"\n"; + assert!(lock.contains(base_row), "{lock}"); + assert!(lock.contains(lib_row), "{lock}"); + assert!( + lock.find(base_row) < lock.find(lib_row), + "rows are sorted by id" + ); + assert!(lock.contains("imports = []\n")); + assert!(lock.contains("imports = [\"base@1.0.0\"]\n")); + for id in ["base", "lib"] { + for field in ["tree_sha256", "manifest_sha256"] { + assert_eq!(locked(&lock, id, field).len(), 64, "{id} {field}"); + } + } + let engine = app.engine(); + engine + .lock(lock_request(true)) + .expect("lock --check accepts the lock it wrote"); + engine.lock(lock_request(false)).expect("lock again"); + assert_eq!(lock, lock_text(&app), "locking again writes the same bytes"); + let config = + lexlean::config::parse_project("lexlean.toml", app.read_raw("lexlean.toml").as_bytes()) + .expect("the configuration parses"); + assert_eq!(config.source_packages.len(), 1); + assert_eq!( + config.canonical_toml(), + app.read_raw("lexlean.toml"), + "the configuration is its own canonical serialization" + ); + let tree = locked(&lock, "lib", "tree_sha256"); + // The pin is of the package's bytes alone: the same package in another + // workspace copy has the same digest. + let other = P::package_workspace("app"); + other.relock(); + assert_eq!(tree, locked(&lock_text(&other), "lib", "tree_sha256")); + + // A project without a source package keeps its bytes (§10.1). + let example = P::example(); + assert!(!lock_text(&example).contains("source_package")); + assert_eq!( + example.read_raw("lexlean.lock"), + std::fs::read_to_string( + support::repo_root() + .join("examples/nat-add-zero/lexlean.lock") + .as_std_path() + ) + .expect("committed lock"), + "a language-1.0 project locks to the bytes it locked to before" + ); + example.relock(); + assert!(!lock_text(&example).contains("source_package")); + + // A changed byte of the package: the locked and the observed digests are + // both named. + let tampered = P::package_workspace("app"); + tampered.relock(); + let before = lock_text(&tampered); + edit_raw( + &tampered, + "../base/src/Core.lex.tex", + "name: twice_two,", + "name: twice_twoo,", + ); + let error = refused(&tampered, "LLC0105"); + let message = error.to_string(); + let locked_digest = locked(&before, "base", "tree_sha256"); + assert!(message.contains("`base`"), "{message}"); + assert!(message.contains(&locked_digest), "{message}"); + tampered.relock(); + let observed = locked(&lock_text(&tampered), "base", "tree_sha256"); + assert_ne!(observed, locked_digest); + assert!(message.contains(&observed), "{message}"); + + // Every command that links reads the package again: a lock read before the + // package changed is not the lock of what would be linked. + let direct = P::package_workspace("app"); + direct.relock(); + let loaded = lexlean::project::Project::load(&direct.root.join("lexlean.toml")).expect("loads"); + let (read, resolved) = lexlean::lock::read_current_lock(&loaded).expect("the lock is current"); + edit_raw( + &direct, + "../base/src/Core.lex.tex", + "name: twice_two,", + "name: twice_twoo,", + ); + let stale = + lexlean::link::check_project(&loaded, &lexlean::Selection::Entrypoints, &read, resolved) + .err() + .expect("linking reads the package again"); + support::expect_code(&stale, "LLC0105"); + + // The same bytes for a changed manifest of the package. + let manifest = P::package_workspace("app"); + manifest.relock(); + edit_raw( + &manifest, + "../base/lexlean.toml", + "name = \"base\"", + "name = \"basis\"", + ); + refused(&manifest, "LLC0105"); + + // A changed version, in the declaration. + let version = P::package_workspace("app"); + version.relock(); + edit_raw( + &version, + "lexlean.toml", + "version = \"1.0.0\"", + "version = \"1.0.1\"", + ); + let error = refused(&version, "LLC0105"); + assert!(error.to_string().contains("1.0.1"), "{error}"); + + // An undeclared package: the lock names one the configuration does not. + let undeclared = P::package_workspace("app"); + undeclared.relock(); + edit_raw( + &undeclared, + "lexlean.toml", + "[[source_package]]\npackage = \"lib\"\nversion = \"1.0.0\"\nkind = \"path\"\npath = \"lib\"\n\n", + "", + ); + refused(&undeclared, "LLC0106"); + + // One identifier with two sources. + let split = P::package_workspace("app"); + edit_raw( + &split, + "../lib/lexlean.toml", + "path = \"base\"", + "path = \"lib\"", + ); + edit_raw( + &split, + "lexlean.toml", + "package = \"lib\"", + "package = \"lib\"", + ); + let split_error = Engine::load(&split.root.join("lexlean.toml")) + .ok() + .and_then(|engine| engine.lock(lock_request(false)).err()) + .expect("the lock is refused"); + assert!( + split_error + .diagnostics + .iter() + .any(|d| d.code.as_str() == "LLC0106" || d.code.as_str() == "LLR3003"), + "{split_error}" + ); + + // A module prefix claimed by two sources. + let prefix = P::package_workspace("app"); + edit_raw( + &prefix, + "../base/lexlean.toml", + "module_prefix = \"PkgBase\"", + "module_prefix = \"PkgLib\"", + ); + let error = Engine::load(&prefix.root.join("lexlean.toml")) + .expect("loads") + .lock(lock_request(false)) + .err() + .expect("two sources claim PkgLib"); + support::expect_code(&error, "LLC0107"); + let own = P::package_workspace("app"); + edit_raw( + &own, + "lexlean.toml", + "module_prefix = \"PkgApp\"", + "module_prefix = \"PkgLib.Sub\"", + ); + let error = Engine::load(&own.root.join("lexlean.toml")) + .expect("loads") + .lock(lock_request(false)) + .err() + .expect("the project's prefix lies below a package's"); + support::expect_code(&error, "LLC0107"); + + // A path that is not a member, a project that is not a member, and no + // workspace at all. + let stranger = P::package_workspace("app"); + edit_raw( + &stranger, + "lexlean.toml", + "path = \"lib\"", + "path = \"other\"", + ); + refused(&stranger, "LLC0108"); + let not_member = P::package_workspace("app"); + std::fs::write( + not_member + .workspace_dir() + .join("lexlean-workspace.toml") + .as_std_path(), + "spec = \"lexlean/workspace/1\"\nmembers = [\"base\", \"lib\"]\n", + ) + .expect("write"); + refused(¬_member, "LLC0108"); + let outside = P::package_workspace("app"); + std::fs::remove_file( + outside + .workspace_dir() + .join("lexlean-workspace.toml") + .as_std_path(), + ) + .expect("remove"); + refused(&outside, "LLC0108"); + let malformed = P::package_workspace("app"); + std::fs::write( + malformed + .workspace_dir() + .join("lexlean-workspace.toml") + .as_std_path(), + "spec = \"lexlean/workspace/1\"\nmembers = [\"lib\", \"base\"]\n", + ) + .expect("write"); + refused(&malformed, "LLC0108"); + + // A path that escapes the workspace, and a symlink. + let escaping = P::package_workspace("app"); + edit_raw( + &escaping, + "lexlean.toml", + "path = \"lib\"", + "path = \"../lib\"", + ); + refused(&escaping, "LLS8001"); + let absolute = P::package_workspace("app"); + edit_raw( + &absolute, + "lexlean.toml", + "path = \"lib\"", + "path = \"/lib\"", + ); + refused(&absolute, "LLS8001"); + if cfg!(unix) { + let linked = P::package_workspace("app"); + let workspace = linked.workspace_dir(); + std::fs::rename( + workspace.join("lib").as_std_path(), + workspace.join("lib-real").as_std_path(), + ) + .expect("rename"); + support::symlink_any(workspace.join("lib-real"), workspace.join("lib")); + refused(&linked, "LLS8001"); + let inner = P::package_workspace("app"); + let source = inner.workspace_dir().join("base/src"); + std::fs::rename( + source.as_std_path(), + inner.workspace_dir().join("base/src-real").as_std_path(), + ) + .expect("rename"); + support::symlink_any(inner.workspace_dir().join("base/src-real"), source); + refused(&inner, "LLS8001"); + } + + // Other kinds and other languages are refused, not accepted. + let git = P::package_workspace("app"); + edit_raw( + &git, + "lexlean.toml", + "kind = \"path\"\npath = \"lib\"", + "kind = \"git\"\npath = \"lib\"", + ); + refused(&git, "LLC0101"); + let language = P::package_workspace("app"); + edit_raw( + &language, + "lexlean.toml", + "language = \"1.2\"", + "language = \"1.1\"", + ); + refused(&language, "LLC0101"); + let unsorted = P::package_workspace("app"); + edit_raw( + &unsorted, + "lexlean.toml", + "\n[limits]", + "\n[[source_package]]\npackage = \"base\"\nversion = \"1.0.0\"\nkind = \"path\"\npath = \"base\"\n\n[limits]", + ); + refused(&unsorted, "LLC0101"); + // A package may declare no model artifact, no PDF provider, and no + // lexicon source but a builtin one: those would read outside what the + // pin covers. + let artifact = P::package_workspace("app"); + edit_raw( + &artifact, + "../base/lexlean.toml", + "\n[limits]", + "\n[[artifact_source]]\nsha256 = \"0000000000000000000000000000000000000000000000000000000000000000\"\npath = \"artifact.bin\"\n\n[limits]", + ); + refused(&artifact, "LLC0101"); +} + +/// PK-02: the import closure at link. +fn pk_02() { + let app = P::package_workspace("app"); + app.relock(); + app.check_ok(); + let modules = modules_of(&app); + assert_eq!( + modules, + ["Main", "PkgBase.Core", "PkgLib.Shapes", "PkgLib.Util"], + "package modules are modules of the importing project under their own prefix" + ); + let checked = support::checked_project(&app); + for (name, lean) in [ + ("Main", "PkgApp.Main"), + ("PkgBase.Core", "PkgBase.Core"), + ("PkgLib.Shapes", "PkgLib.Shapes"), + ("PkgLib.Util", "PkgLib.Util"), + ] { + assert_eq!(checked.modules[name].document.lean_module, lean); + } + // Inside a package a module keeps its relative import of a sibling and + // names a module of a package its manifest declares by that package's + // prefix. + assert_eq!( + checked.modules["PkgLib.Util"].document.imports, + ["PkgLib.Shapes"] + ); + assert_eq!( + checked.modules["PkgLib.Shapes"].document.imports, + ["PkgBase.Core"] + ); + + // A module of a package the project does not declare, though the + // closure holds it. + let transitive = P::package_workspace("app"); + edit_raw( + &transitive, + "src/Main.lex.tex", + "\\importmodule{PkgLib.Util}\n", + "\\importmodule{PkgBase.Core}\n\\importmodule{PkgLib.Util}\n", + ); + transitive.relock(); + transitive.check_fails_with("LLR3009"); + + // The same for a module of a package: `base` does not declare `lib`. + let inward = P::package_workspace("app"); + edit_raw( + &inward, + "../base/src/Core.lex.tex", + "\\title{Natural number addition}", + "\\importmodule{PkgLib.Util}\n\\title{Natural number addition}", + ); + inward.relock(); + inward.check_fails_with("LLR3009"); + + // A module no source provides keeps the existing refusal. + let unknown = P::package_workspace("app"); + edit_raw( + &unknown, + "src/Main.lex.tex", + "\\importmodule{PkgLib.Util}\n", + "\\importmodule{PkgLib.Util}\n\\importmodule{PkgLib.Missing}\n", + ); + unknown.relock(); + unknown.check_fails_with("LLR3005"); + + // A name both the project and a package provide. + let both = P::package_workspace("app"); + both.write( + "src/PkgLib/Util.lex.tex", + &std::fs::read_to_string( + both.workspace_dir() + .join("lib/src/Util.lex.tex") + .as_std_path(), + ) + .expect("read") + .replace("\\begin{lexlean}{Util}", "\\begin{lexlean}{PkgLib.Util}") + .replace("\\importmodule{Shapes}\n", ""), + ); + both.relock(); + both.check_fails_with("LLC0107"); + + // A cycle through a package. + let cycle = P::package_workspace("app"); + edit_raw( + &cycle, + "../base/lexlean.toml", + "\n[limits]", + "\n[[source_package]]\npackage = \"lib\"\nversion = \"1.0.0\"\nkind = \"path\"\npath = \"lib\"\n\n[limits]", + ); + let error = Engine::load(&cycle.root.join("lexlean.toml")) + .expect("loads") + .lock(lock_request(false)) + .err() + .expect("the packages depend on each other"); + support::expect_code(&error, "LLR3003"); + + // A package is read through its own configuration: a change of its + // entrypoints or of a module no import reaches changes the pin, but only + // the modules imported are linked. + let spare = P::package_workspace("app"); + spare.write( + "../lib/src/Spare.lex.tex", + "\\begin{lexlean}{Spare}\n\\title{Spare}\n\\end{lexlean}\n", + ); + spare.relock(); + assert_eq!(modules_of(&spare), modules); +} + +/// PK-03: an importing project builds, verifies, and records the origin. +fn pk_03() { + let app = P::package_workspace("app"); + // A package file that is not canonical stays as its package wrote it: + // formatting the importing project never rewrites it. + edit_raw( + &app, + "../lib/src/Util.lex.tex", + " name: quadPlusOne,", + " name: quadPlusOne,", + ); + app.relock(); + let before = package_bytes(&app); + let formatted = app + .engine() + .format(lexlean::FormatRequest { + selection: lexlean::Selection::Entrypoints, + check_only: false, + }) + .expect("fmt"); + assert_eq!( + formatted.units.keys().cloned().collect::>(), + ["Main"], + "only the project's own modules are formatted" + ); + assert_eq!(before, package_bytes(&app), "fmt wrote no package file"); + app.fmt_check_ok(); + let built = app.build_ok(); + let source_id = built.source_id; + let build_dir = app.build_dir(&built.build_id.expect("a build ID")); + for module in [ + "PkgApp/Main", + "PkgBase/Core", + "PkgLib/Shapes", + "PkgLib/Util", + ] { + assert!( + build_dir.join(format!("modules/{module}.lean")).is_file(), + "{module}" + ); + } + let manifest = + std::fs::read_to_string(build_dir.join("manifest.json").as_std_path()).expect("manifest"); + assert!( + manifest.contains("\"origin\":\"lib\""), + "the manifest names the origin of a package module" + ); + assert!( + manifest.contains("\"origin\":\"base\""), + "the manifest names the origin of a package module" + ); + assert_eq!(manifest.matches("\"origin\"").count(), 3); + + // The source ID follows the pins: a byte of the package moves it once + // the lock is rewritten, and no run reads the changed package before. + let moved = P::package_workspace("app"); + moved.relock(); + edit_raw( + &moved, + "../base/src/Core.lex.tex", + "name: twice_two,", + "name: twice_twoo,", + ); + moved.verify_fails_with("LLC0105"); + moved.assert_no_backend_output_with("LLC0105"); + moved.relock(); + let relocked = moved.check_ok(); + assert_ne!( + relocked.source_id, source_id, + "the source ID follows the pins" + ); + + if !support::lean_backed("PK-03") { + return; + } + let _environment = support::env_shared(); + let verified = support::verify_ok(&app); + assert_eq!( + verified.units.keys().cloned().collect::>(), + ["Main", "PkgBase.Core", "PkgLib.Shapes", "PkgLib.Util"] + ); + assert_eq!(verified.units["PkgLib.Util"].lean_module, "PkgLib.Util"); + // Every module is replayed and audited, the package modules under their + // own prefix and with their origin in the records. + let verified_dir = app + .root + .join(".lexlean/verified") + .join(verified.attestation_id.to_hex()); + let attestation: serde_json::Value = serde_json::from_slice( + &std::fs::read(verified_dir.join("attestation.json").as_std_path()).expect("attestation"), + ) + .expect("the attestation is JSON"); + let processes = attestation["processes"].as_array().expect("processes"); + for module in [ + "PkgApp.Main", + "PkgBase.Core", + "PkgLib.Shapes", + "PkgLib.Util", + ] { + for tool in ["lean", "leanchecker"] { + assert!( + processes.iter().any(|process| { + process["module"] == module + && process["argv"].as_array().is_some_and(|argv| { + argv.iter().any(|a| { + a.as_str() + .is_some_and(|a| a == tool || a.ends_with(&format!("/{tool}"))) + }) + }) + }), + "`{module}` is run through `{tool}`" + ); + } + } + let declarations: Vec<&str> = attestation["declarations"] + .as_array() + .expect("declarations") + .iter() + .filter_map(|row| row["name"].as_str()) + .collect(); + for name in [ + "PkgBase.Core.twice", + "PkgBase.Core.twice_two", + "PkgLib.Shapes.quad", + "PkgLib.Util.quadPlusOne", + "PkgApp.Main.appValue", + ] { + assert!(declarations.contains(&name), "`{name}` is audited"); + } + assert_eq!( + attestation["origins"], + serde_json::json!({ + "PkgBase.Core": "base", + "PkgLib.Shapes": "lib", + "PkgLib.Util": "lib" + }), + "the modules of a package carry the package as their origin" + ); + assert_eq!(before, package_bytes(&app), "verify wrote no package file"); +} + +/// The bytes of every file of the packages beside the project. +fn package_bytes(project: &P) -> Vec<(String, Vec)> { + let mut files = Vec::new(); + for member in ["base", "lib"] { + for entry in walkdir::WalkDir::new(project.workspace_dir().join(member).as_std_path()) + .sort_by_file_name() + .into_iter() + .flatten() + .filter(|entry| entry.file_type().is_file()) + { + files.push(( + entry.path().to_string_lossy().into_owned(), + std::fs::read(entry.path()).expect("read"), + )); + } + } + files +} + +/// PK-04: a production root reaches a package definition. +fn pk_04() { + let app = P::package_workspace("app"); + app.relock(); + let checked = support::checked_project(&app); + for (name, module) in &checked.modules { + assert_eq!( + module.production.is_some(), + name == "Main", + "`{name}`: only the importing project's own roots are analysed" + ); + } + let roots = lexlean::production::lower::roots(&checked).expect("roots"); + assert_eq!( + roots + .iter() + .map(|root| root.report.root.clone()) + .collect::>(), + ["PkgApp.Main.appValue"], + "a package's own roots are not roots of the importing project" + ); + // The closure of the root includes the definitions of both packages. + let program = crate::production_export::lowered_program(&app, "PkgApp.Main.appValue"); + let rendered = format!("{program:?}"); + assert!(!rendered.is_empty()); + + if !support::lean_backed("PK-04") { + return; + } + let _environment = support::env_shared(); + let application = Application { + roots: vec![AppRoot { + root: "PkgApp.Main.appValue".to_owned(), + name: "app_value".to_owned(), + version: "1.0.0".to_owned(), + targets: vec!["rust-std".to_owned()], + }], + }; + let (output, report) = + crate::production_consumer::export(&app.root.join("lexlean.toml"), &application, &[]) + .expect("the root certifies and exports"); + let _ = report; + assert_eq!( + output + .result + .roots + .iter() + .map(|root| root.root.clone()) + .collect::>(), + ["PkgApp.Main.appValue"], + "the export holds the importing project's root alone" + ); + let bundle = app.root.join(&output.bundle); + let files = crate::production_export::tree(&bundle); + assert!( + files + .keys() + .all(|path| !path.contains("PkgBase") && !path.contains("PkgLib")), + "no certificate of the package's own roots is published: {:?}", + files.keys().collect::>() + ); +} diff --git a/crates/conformance/src/cases/repository.rs b/crates/conformance/src/cases/repository.rs index 0c8e26a4c..1d4ad0389 100644 --- a/crates/conformance/src/cases/repository.rs +++ b/crates/conformance/src/cases/repository.rs @@ -411,7 +411,7 @@ pub(crate) fn run(id: &str) { let model = repo_model::Model::load(&root.join("model").into_std_path_buf()) .expect("the model loads"); let table = spec_table(); - assert_eq!(table.len(), 398, "§31 has 398 rows"); + assert_eq!(table.len(), 402, "§31 has 402 rows"); assert_eq!(model.ids.id.len(), table.len(), "register row count"); for ((spec_id, spec_suite, spec_statement), row) in table.iter().zip(model.ids.id.iter()) diff --git a/crates/conformance/src/support.rs b/crates/conformance/src/support.rs index 4b5d5e1cf..74ca4ef19 100644 --- a/crates/conformance/src/support.rs +++ b/crates/conformance/src/support.rs @@ -387,6 +387,30 @@ impl P { Self { temp, root } } + /// A fresh copy of the committed source-package workspace + /// (`tests/packages/workspace`, SPEC.md §10.5): `root` is the member + /// project `member` (`app`, `lib`, or `base`), and the workspace itself is + /// [`Self::workspace_dir`]. The members carry no lock and no build output. + #[must_use] + pub fn package_workspace(member: &str) -> Self { + let temp = tempfile::Builder::new() + .prefix("lexlean-packages-case-") + .tempdir() + .expect("tempdir"); + let source = repo_root().join("tests/packages/workspace"); + assert!(source.is_dir(), "the package workspace fixture is required"); + copy_tree(source.as_std_path(), temp.path(), &[]); + let root = Utf8PathBuf::from_path_buf(temp.path().join(member)).expect("utf8 tempdir"); + assert!(root.is_dir(), "`{member}` is a member of the fixture"); + Self { temp, root } + } + + /// The directory holding the project copies of [`Self::package_workspace`]. + #[must_use] + pub fn workspace_dir(&self) -> Utf8PathBuf { + Utf8PathBuf::from_path_buf(self.temp.path().to_path_buf()).expect("utf8 tempdir") + } + /// A fresh copy of the preservation library's own project (SPEC.md /// §17.17), without build output or a lock. #[must_use] diff --git a/crates/conformance/tests/conformance.rs b/crates/conformance/tests/conformance.rs index 201267ab3..e769f05f6 100644 --- a/crates/conformance/tests/conformance.rs +++ b/crates/conformance/tests/conformance.rs @@ -1975,6 +1975,26 @@ fn conformance_bs_01() { repo_conformance::cases::run("BS-01"); } +#[test] +fn conformance_pk_01() { + repo_conformance::cases::run("PK-01"); +} + +#[test] +fn conformance_pk_02() { + repo_conformance::cases::run("PK-02"); +} + +#[test] +fn conformance_pk_03() { + repo_conformance::cases::run("PK-03"); +} + +#[test] +fn conformance_pk_04() { + repo_conformance::cases::run("PK-04"); +} + #[test] fn conformance_lm_01() { repo_conformance::cases::run("LM-01"); diff --git a/crates/lexlean/src/api.rs b/crates/lexlean/src/api.rs index 1be7bf840..2fac21e5c 100644 --- a/crates/lexlean/src/api.rs +++ b/crates/lexlean/src/api.rs @@ -416,6 +416,7 @@ pub fn render_build( module: name.clone(), lean_module: lean_module.clone(), source_path: checked_module.document.source_path.clone(), + origin: checked_module.document.origin.clone(), }); modules.push(RenderedModule { module: name.clone(), @@ -809,6 +810,17 @@ impl Engine { let existing = crate::lock::read_lock_bytes(&self.project) .map_err(LexLeanError::from_diagnostic)?; if existing != bytes { + // §10.5: a source package that is not the one the lock pins + // is named with both digests, not called a stale lock. + if let Ok(committed) = + crate::lock::parse_lock(&self.project.config.lockfile, &existing) + { + crate::source_package::check_pins( + &committed.source_packages, + &lock.source_packages, + ) + .map_err(LexLeanError::from_diagnostics)?; + } return Err(LexLeanError::from_diagnostic(Diagnostic::new( code!("LLC0102"), format!( @@ -1090,6 +1102,10 @@ impl Engine { let (checked, _lock) = self.checked(&request.selection)?; let mut units = BTreeMap::new(); for (name, module) in &checked.modules { + // A module of a source package is the package's file (§10.5). + if module.document.origin.is_some() { + continue; + } let canonical = crate::fmt::canonical_source(module, &checked.closure) .map_err(LexLeanError::from_diagnostic)?; let raw = raw_bytes(&module.document.source_path)?; @@ -1133,7 +1149,16 @@ impl Engine { .map(|path| path.join("project")) .map_err(LexLeanError::from_diagnostic)?; self.scratch_project_copy(&scratch)?; - let scratch_engine = Self::load(&scratch.join(&self.project.config_name))?; + let scratch_engine = match (&self.project.workspace, &self.project.workspace_member) { + (Some(workspace), Some(member)) => Self { + project: Project::load_as_member( + &scratch.join(&self.project.config_name), + workspace, + member, + )?, + }, + _ => Self::load(&scratch.join(&self.project.config_name))?, + }; for relative in scratch_engine .project .all_modules() @@ -1152,6 +1177,9 @@ impl Engine { let mut units = BTreeMap::new(); let mut rewrites: Vec<(String, String)> = Vec::new(); for (name, module) in &before.modules { + if module.document.origin.is_some() { + continue; + } let canonical = crate::fmt::canonical_source(module, &before.closure) .map_err(LexLeanError::from_diagnostic)?; let raw = raw_bytes(&module.document.source_path)?; @@ -1178,6 +1206,9 @@ impl Engine { } // The canonical text must itself be a fixed point. for (name, module) in &after.modules { + if module.document.origin.is_some() { + continue; + } let again = crate::fmt::canonical_source(module, &after.closure) .map_err(LexLeanError::from_diagnostic)?; if again != module.normalized { diff --git a/crates/lexlean/src/artifact/manifest.rs b/crates/lexlean/src/artifact/manifest.rs index 678c7a037..bcf0f4ccf 100644 --- a/crates/lexlean/src/artifact/manifest.rs +++ b/crates/lexlean/src/artifact/manifest.rs @@ -39,6 +39,9 @@ pub struct ModuleRow { pub lean_module: String, /// The project-relative source path. pub source_path: String, + /// The source package the module belongs to (SPEC.md §10.5), absent for a + /// module of the project itself. + pub origin: Option, } /// The build manifest (§21.6). It never contains its own hash. @@ -111,11 +114,15 @@ impl BuildManifest { self.modules .iter() .map(|row| { - Json::object(vec![ + let mut fields = vec![ ("module", Json::Str(row.module.clone())), ("lean_module", Json::Str(row.lean_module.clone())), ("source_path", Json::Str(row.source_path.clone())), - ]) + ]; + if let Some(origin) = &row.origin { + fields.push(("origin", Json::Str(origin.clone()))); + } + Json::object(fields) }) .collect(), ), diff --git a/crates/lexlean/src/artifact/snapshot.rs b/crates/lexlean/src/artifact/snapshot.rs index e01f0a631..aecf0d64d 100644 --- a/crates/lexlean/src/artifact/snapshot.rs +++ b/crates/lexlean/src/artifact/snapshot.rs @@ -30,6 +30,9 @@ pub struct SemanticSnapshot { pub struct SnapshotModule { name: String, lean_module: String, + /// The source package the module belongs to (SPEC.md §10.5). + #[serde(default, skip_serializing_if = "Option::is_none")] + origin: Option, imports: Vec, glossary: Vec, visible_packages: Vec, @@ -346,6 +349,7 @@ impl SemanticSnapshot { modules.push(SnapshotModule { name: name.clone(), lean_module: module.document.lean_module.clone(), + origin: module.document.origin.clone(), imports: module.document.imports.clone(), glossary: module.document.glossary.clone(), visible_packages: module.visible.iter().cloned().collect(), diff --git a/crates/lexlean/src/backend/lean.rs b/crates/lexlean/src/backend/lean.rs index 10ff1006a..161ad3838 100644 --- a/crates/lexlean/src/backend/lean.rs +++ b/crates/lexlean/src/backend/lean.rs @@ -2028,17 +2028,13 @@ pub fn document_externals( /// of every reached external constant plus the full generated names of /// document imports. #[must_use] -pub fn module_imports( - document: &DocumentModule, - closure: &Closure, - module_prefix: &str, -) -> Vec { +pub fn module_imports(document: &DocumentModule, closure: &Closure) -> Vec { let mut imports: BTreeSet = BTreeSet::new(); for external in document_externals(document, closure).values() { imports.insert(external.lean_module.clone()); } for import in &document.imports { - imports.insert(format!("{module_prefix}.{import}")); + imports.insert(document.lean_import(import)); } imports.into_iter().collect() } @@ -2108,7 +2104,7 @@ pub fn render_module( }; sink.kw("module"); sink.ws("\n"); - for import in module_imports(document, closure, module_prefix) { + for import in module_imports(document, closure) { // Under the Lean 4.32.1 module system a plain `import` is // private: constants of the imported module may not appear in // the signatures of this module's `public` declarations. Every diff --git a/crates/lexlean/src/backend/semantic.rs b/crates/lexlean/src/backend/semantic.rs index 77712e776..eda958ef1 100644 --- a/crates/lexlean/src/backend/semantic.rs +++ b/crates/lexlean/src/backend/semantic.rs @@ -21,6 +21,9 @@ mod reasoning; struct Render<'a> { prefix: &'a str, + /// The Lean module each imported module's key names; a module not in it + /// lies under `prefix` (§10.5). + lean_imports: &'a std::collections::BTreeMap, /// §17.12: in a well-founded definition, each `if` (by node address) /// lowers to a dependent match binding its numbered hypothesis. hypotheses: std::collections::BTreeMap, @@ -349,7 +352,14 @@ impl Render<'_> { (Some(module), _) if module == crate::text_laws::PREFIX => { identifier(&format!("{module}.{}", member.name)) } - (Some(module), _) => identifier(&format!("{}.{}.{}", self.prefix, module, member.name)), + (Some(module), _) => identifier(&format!( + "{}.{}", + self.lean_imports + .get(module) + .cloned() + .unwrap_or_else(|| format!("{}.{module}", self.prefix)), + member.name + )), (None, Some(own)) if !builtin => identifier(&format!("{own}.{}", member.name)), (None, _) => identifier(&member.name), } @@ -558,6 +568,7 @@ impl Render<'_> { fn cross_check(&self, check: &CrossCheck, module: &str) -> String { let qualified = Render { prefix: self.prefix, + lean_imports: self.lean_imports, hypotheses: std::collections::BTreeMap::new(), document: false, qualify: Some(module), @@ -1346,6 +1357,7 @@ fn well_founded_definition( })?; let render = Render { prefix: base.prefix, + lean_imports: base.lean_imports, hypotheses: plan .addresses .iter() @@ -1750,6 +1762,7 @@ pub fn render_lean( let document = &checked.document; let base_render = Render { prefix: module_prefix, + lean_imports: &document.import_lean, hypotheses: std::collections::BTreeMap::new(), document: false, qualify: None, @@ -1759,6 +1772,7 @@ pub fn render_lean( // reference it makes is written qualified (§17.12, models). let model_render = Render { prefix: module_prefix, + lean_imports: &document.import_lean, hypotheses: std::collections::BTreeMap::new(), document: false, qualify: Some(&document.lean_module), @@ -1798,7 +1812,7 @@ pub fn render_lean( for import in &document.imports { text.push_str(&format!( "public import {}\n", - identifier(&format!("{module_prefix}.{import}")) + identifier(&document.lean_import(import)) )); } // §17.12 (text): the elaboration's own imports — the sealed laws @@ -2831,6 +2845,7 @@ pub fn render_latex( ) -> Result { let render = Render { prefix: module_prefix, + lean_imports: &checked.document.import_lean, hypotheses: std::collections::BTreeMap::new(), document: true, qualify: None, diff --git a/crates/lexlean/src/cli.rs b/crates/lexlean/src/cli.rs index a1924a3f2..5f8f9f9f3 100644 --- a/crates/lexlean/src/cli.rs +++ b/crates/lexlean/src/cli.rs @@ -786,6 +786,7 @@ fn init_project( package: "lexlean.std.nat".to_owned(), }], artifact_sources: Vec::new(), + source_packages: Vec::new(), limits: INIT_LIMITS, pdf: None, }; diff --git a/crates/lexlean/src/config.rs b/crates/lexlean/src/config.rs index 6bca577f1..2f9cc39e6 100644 --- a/crates/lexlean/src/config.rs +++ b/crates/lexlean/src/config.rs @@ -179,6 +179,19 @@ pub struct ArtifactSource { pub path: String, } +/// Language 1.2: one source package a project imports modules from (§10.5): a +/// member project of the workspace, pinned in the lock by the digest of its +/// manifest and source files. `kind` is `path` and nothing else. +#[derive(Debug, Clone, PartialEq, Eq)] +pub struct SourcePackage { + /// The package identifier, unique in the project. + pub package: String, + /// The version, for readers: the pin is the digest. + pub version: String, + /// The workspace-relative member directory. + pub path: String, +} + /// The validated project configuration. #[derive(Debug, Clone, PartialEq, Eq)] pub struct ProjectConfig { @@ -202,6 +215,8 @@ pub struct ProjectConfig { pub lexicon_sources: Vec, /// Language 1.2: model artifact sources, sorted by digest. pub artifact_sources: Vec, + /// Language 1.2: source packages, sorted by package. + pub source_packages: Vec, /// The explicit resource policy. pub limits: Limits, /// The optional PDF provider. @@ -225,6 +240,8 @@ struct RawProject { lexicon_sources: Vec, #[serde(default, rename = "artifact_source")] artifact_sources: Option>, + #[serde(default, rename = "source_package")] + source_packages: Option>, limits: Limits, pdf: Option, } @@ -247,6 +264,15 @@ struct RawArtifactSource { path: String, } +#[derive(Deserialize)] +#[serde(deny_unknown_fields)] +struct RawSourcePackage { + package: String, + version: String, + kind: String, + path: String, +} + #[derive(Deserialize)] #[serde(deny_unknown_fields)] struct RawPdf { @@ -364,6 +390,19 @@ pub fn is_project_name(text: &str) -> bool { .all(|b| b.is_ascii_lowercase() || b.is_ascii_digit() || *b == b'-') } +/// A source package version (§10.5): a reader's string of ASCII letters, +/// digits, `.`, `+`, and `-`, beginning with a letter or digit, of at most 64 +/// characters. It is pinned in the lock, never interpreted. +#[must_use] +pub fn is_package_version(text: &str) -> bool { + let bytes = text.as_bytes(); + (1..=64).contains(&bytes.len()) + && bytes[0].is_ascii_alphanumeric() + && bytes + .iter() + .all(|b| b.is_ascii_alphanumeric() || matches!(b, b'.' | b'+' | b'-')) +} + /// One `[A-Z][A-Za-z0-9_]*` Lean-name segment (§10.1). #[must_use] pub fn is_module_segment(text: &str) -> bool { @@ -793,6 +832,76 @@ pub fn parse_project(path: &str, bytes: &[u8]) -> Result None, @@ -921,6 +1030,7 @@ pub fn parse_project(path: &str, bytes: &[u8]) -> Result, /// Used glossary packages, `package@version`, sorted. pub glossary: Vec, - /// Explicit module imports, sorted. + /// Explicit module imports, by the names the linked project gives the + /// modules, sorted. pub imports: Vec, + /// The Lean module each import names. A module of the project imports + /// another under the project's prefix; a module of a source package, or a + /// module that imports one, names it by its own Lean name. + pub import_lean: BTreeMap, /// The title phrase. pub title: Phrase, /// Top-level blocks in source order. @@ -115,6 +123,27 @@ pub struct DocumentModule { } impl DocumentModule { + /// The Lean module an import of this module names (§18.3). + #[must_use] + pub fn lean_import(&self, import: &str) -> String { + self.import_lean + .get(import) + .cloned() + .unwrap_or_else(|| self.default_lean_import(import)) + } + + /// The Lean module an import names when it lies under the same module + /// prefix as this module: its key beneath the prefix this module's Lean + /// name carries. A module of a source package carries its prefix in its + /// key, so it has no such prefix. + fn default_lean_import(&self, import: &str) -> String { + let stem = self + .lean_module + .strip_suffix(self.name.as_str()) + .unwrap_or_default(); + format!("{stem}{import}") + } + /// Every declaration in source order, with its inherited-parameter /// context flattened by the linker. #[must_use] @@ -199,6 +228,20 @@ impl DocumentModule { ), ), ]; + // Written only for a module of a source package or one that imports + // one, so every other project keeps its linked bytes (§10.5). + if let Some(origin) = &self.origin { + fields.push(("origin", Json::Str(origin.clone()))); + } + let foreign: Vec<(&str, Json)> = self + .import_lean + .iter() + .filter(|(import, lean)| **lean != self.default_lean_import(import)) + .map(|(import, lean)| (import.as_str(), Json::Str(lean.clone()))) + .collect(); + if !foreign.is_empty() { + fields.push(("import_lean", Json::object(foreign))); + } if let Some(core) = &self.core { fields.push(( "core", diff --git a/crates/lexlean/src/lib.rs b/crates/lexlean/src/lib.rs index 0741e2dc4..b69b50458 100644 --- a/crates/lexlean/src/lib.rs +++ b/crates/lexlean/src/lib.rs @@ -57,6 +57,8 @@ pub mod project; #[doc(hidden)] pub mod source; #[doc(hidden)] +pub mod source_package; +#[doc(hidden)] pub mod surface; #[doc(hidden)] pub mod text_laws; diff --git a/crates/lexlean/src/link.rs b/crates/lexlean/src/link.rs index 7931039c8..57c9b4725 100644 --- a/crates/lexlean/src/link.rs +++ b/crates/lexlean/src/link.rs @@ -306,6 +306,29 @@ struct ModuleLoad { normalized: String, atoms: Vec, ast: ModuleAst, + /// The source package the module belongs to, absent for the project's own + /// (§10.5). + package: Option, + /// The module's name inside its own project: its header names it, and a + /// package's source writes its references to its siblings by it. + relative_name: String, + /// Each import as written, with the key of the module it names in the + /// importing project, in source order. + import_keys: Vec<(String, String)>, + /// The module prefix the module's Lean name lies under: its project's, or + /// its package's (§10.5). + prefix: String, +} + +/// Where a module of the linked project is read from (§10.5). +#[derive(Clone)] +struct ModuleSource { + /// The source package, absent for the project's own modules. + package: Option, + /// The module's name inside its own project. + relative_name: String, + /// The project-relative path, or the member-relative path of a package. + path: String, } /// Run the complete check pipeline for a selection on a dedicated thread @@ -452,29 +475,68 @@ fn check_project_inline( return Err(error); } - // Load the selection, then the transitive import closure (§15.1). - let all_modules = project.all_modules().map_err(err)?; + // Load the selection, then the transitive import closure (§15.1). A + // module of a source package is read from the bytes the pin covers, so + // nothing but the verified tree is ever linked (§10.5). + let source_packages = crate::source_package::load_locked(project, lock).map_err(err)?; + let own_modules = project.all_modules().map_err(err)?; let selected = project.resolve_selection(selection).map_err(err)?; let mut loaded: BTreeMap = BTreeMap::new(); - let mut worklist: Vec<(String, String)> = selected + let mut worklist: Vec<(String, ModuleSource)> = selected .iter() - .map(|(module, path)| (module.clone(), path.clone())) + .map(|(module, path)| { + ( + module.clone(), + ModuleSource { + package: None, + relative_name: module.clone(), + path: path.clone(), + }, + ) + }) .collect(); - while let Some((module_name, relative)) = worklist.pop() { - if loaded.contains_key(&module_name) { + while let Some((module_name, source)) = worklist.pop() { + if let Some(existing) = loaded.get(&module_name) { + if existing.package != source.package { + return Err(err(vec![Diagnostic::new( + code!("LLC0107"), + format!( + "module `{module_name}` is provided by both the project and a source package" + ), + )])); + } continue; } - let absolute = project - .confined_file_or_missing(&relative, || { - Diagnostic::new(code!("LLC0002"), format!("`{relative}` does not exist")) - }) - .map_err(|diagnostic| err(vec![diagnostic]))?; - let bytes = std::fs::read(absolute.as_std_path()).map_err(|io_error| { - err(vec![Diagnostic::new( - code!("LLS8001"), - format!("{relative}: {io_error}"), - )]) - })?; + let scope_package = source + .package + .as_ref() + .and_then(|id| source_packages.packages.get(id)); + let (relative, bytes) = match scope_package { + None => { + let relative = source.path.clone(); + let absolute = project + .confined_file_or_missing(&relative, || { + Diagnostic::new(code!("LLC0002"), format!("`{relative}` does not exist")) + }) + .map_err(|diagnostic| err(vec![diagnostic]))?; + let bytes = std::fs::read(absolute.as_std_path()).map_err(|io_error| { + err(vec![Diagnostic::new( + code!("LLS8001"), + format!("{relative}: {io_error}"), + )]) + })?; + (relative, bytes) + } + Some(package) => { + let bytes = package.files.get(&source.path).cloned().ok_or_else(|| { + err(vec![Diagnostic::new( + code!("LLC0002"), + format!("`{}` does not exist", package.display_path(&source.path)), + )]) + })?; + (package.display_path(&source.path), bytes) + } + }; if bytes.len() as u64 > limits.max_file_bytes { return Err(err(vec![Diagnostic::new( code!("LLS8002"), @@ -500,31 +562,33 @@ fn check_project_inline( &closure.bootstrap.structural.forbidden_controls, ) .map_err(|diagnostic| err(vec![diagnostic]))?; - let ast = structural::parse_module(&relative, &atoms, &module_name, limits.max_scope_depth) - .map_err(|diagnostic| err(vec![diagnostic]))?; + let ast = structural::parse_module( + &relative, + &atoms, + &source.relative_name, + limits.max_scope_depth, + ) + .map_err(|diagnostic| err(vec![diagnostic]))?; + let mut import_keys: Vec<(String, String)> = Vec::new(); for import in &ast.imports { - let import_name = import.text.clone(); - if import_name == module_name { + let (import_key, import_source) = resolve_import( + &source_packages, + &own_modules, + scope_package, + &module_name, + &import.text, + ) + .map_err(|diagnostic| err(vec![diagnostic]))?; + if import_key == module_name { return Err(err(vec![Diagnostic::new( code!("LLR3003"), format!("module `{module_name}` imports itself"), )])); } - if !loaded.contains_key(&import_name) { - match all_modules.get(&import_name) { - Some(import_path) => { - worklist.push((import_name, import_path.clone())); - } - None => { - return Err(err(vec![Diagnostic::new( - code!("LLR3005"), - format!( - "`{module_name}` imports `{import_name}`, which is not a project module" - ), - )])); - } - } + if !loaded.contains_key(&import_key) { + worklist.push((import_key.clone(), import_source)); } + import_keys.push((import.text.clone(), import_key)); } loaded.insert( module_name, @@ -533,6 +597,13 @@ fn check_project_inline( normalized, atoms, ast, + prefix: scope_package.map_or_else( + || project.config.module_prefix.clone(), + |package| package.prefix.clone(), + ), + package: source.package, + relative_name: source.relative_name, + import_keys, }, ); } @@ -564,7 +635,8 @@ fn check_project_inline( // as data, so it captures none, and the proof library's modules are // named for what they state (`Fixed`, `Keys`). if project.config.language == crate::LANGUAGE_1_2 && load.ast.core.is_none() { - if let Some(segment) = crate::ir::semantic::reserved_module_segment(module_name) { + if let Some(segment) = crate::ir::semantic::reserved_module_segment(&load.relative_name) + { return Err(err(vec![Diagnostic::new( code!("LLT4001"), format!( @@ -622,28 +694,49 @@ fn check_project_inline( // Module imports: sorted, unique, direct-availability (§15.1, §17.7). let mut imports: Vec = Vec::new(); - for import in &load.ast.imports { - if imports.contains(&import.text) { + let mut written_imports: Vec = Vec::new(); + for (import, (_, key)) in load.ast.imports.iter().zip(&load.import_keys) { + if written_imports.contains(&import.text) { return Err(err(vec![Diagnostic::new( code!("LLP2003"), format!("duplicate \\importmodule{{{}}}", import.text), ) .with_span(span_of_range(&load.path, &load.atoms, import.range))])); } - imports.push(import.text.clone()); + written_imports.push(import.text.clone()); + imports.push(key.clone()); } imports.sort(); + // Inside a package a module writes its references to a sibling by the + // sibling's own name; the linked project names the sibling by its key. + // The declarations a module sees carry the name the module writes. + let renamed: BTreeMap = load + .import_keys + .iter() + .filter(|(written, key)| written != key) + .map(|(written, key)| (key.clone(), written.clone())) + .collect(); // The declarations visible to this module: its direct imports' // declarations, in availability order; its own grow as blocks link. let mut module_decls = DeclTable::default(); for row in &decls.rows { if imports.contains(&row.module) { - module_decls.rows.push(row.clone()); + let mut visible_row = row.clone(); + if let Some(written) = renamed.get(&row.module) { + visible_row.module = written.clone(); + } + module_decls.rows.push(visible_row); } } - let lean_module = format!("{}.{}", project.config.module_prefix, module_name); + // A package module is named by its Lean name throughout the linked + // project; the project's own are named under the project's prefix. + let lean_module = if load.package.is_some() { + module_name.clone() + } else { + format!("{}.{}", project.config.module_prefix, module_name) + }; let mut rows: Vec = load.ast.structural_rows.clone(); let mut scopes = ScopeStack::default(); scopes.push_frame(); @@ -661,7 +754,7 @@ fn check_project_inline( visible: &visible, decls: &module_decls, module: module_name, - module_prefix: &project.config.module_prefix, + module_prefix: &load.prefix, }; elab_phrase( &shared, @@ -678,7 +771,6 @@ fn check_project_inline( let mut blocks: Vec = Vec::new(); for block in &load.ast.blocks { let linked = link_block( - project, &closure, &visible, &mut module_decls, @@ -811,11 +903,36 @@ fn check_project_inline( } else { std::borrow::Cow::Borrowed(ast.data.text.as_str()) }; + // A package's source writes a sibling module by its own name; the + // linked project names it by its key, so the references are read + // under the key and every later phase finds the module (§10.5). + let data: std::borrow::Cow<'_, str> = if renamed.is_empty() { + data + } else { + let to_key: BTreeMap = renamed + .iter() + .map(|(key, written)| (written.clone(), key.clone())) + .collect(); + let mut json = crate::artifact::canonical_json::Json::parse(data.as_bytes()) + .map_err(|reason| { + err(vec![Diagnostic::new( + code!("LLP2001"), + format!("phase link: semantic data: {reason}"), + ) + .with_span(span_of_range( + &load.path, + &load.atoms, + ast.data.range, + ))]) + })?; + rename_member_modules(&mut json, &to_key); + std::borrow::Cow::Owned(json.to_canonical_string()) + }; Some( SemanticModule::parse( &data, &project.config.language, - &project.config.module_prefix, + &load.prefix, &imports, &imported_semantic, &artifacts, @@ -899,7 +1016,12 @@ fn check_project_inline( // §17.13: every production root is analysed over the linked // closure of this module and its imports before any backend runs. let production = match &semantic { - Some(semantic) if project.config.language == crate::LANGUAGE_1_2 => { + // A package's own production roots are roots of its project, built + // when it is built; imported, its definitions are ordinary ones + // (§10.5), so no module of a package is analysed here. + Some(semantic) + if project.config.language == crate::LANGUAGE_1_2 && load.package.is_none() => + { let mut linked: BTreeMap> = modules .iter() @@ -978,12 +1100,22 @@ fn check_project_inline( } report_bytes = report_bytes.saturating_add(production.as_ref().map_or(0, |report| report.bytes)); + let import_lean: BTreeMap = imports + .iter() + .filter_map(|key| { + modules + .get(key) + .map(|module| (key.clone(), module.document.lean_module.clone())) + }) + .collect(); let document = DocumentModule { name: module_name.clone(), lean_module, source_path: load.path.clone(), source_sha256: Sha256Digest::of(load.normalized.as_bytes()), + origin: load.package.clone(), glossary, + import_lean, imports, title, blocks, @@ -1083,6 +1215,122 @@ fn check_project_inline( }) } +/// Rename the modules that the member references of `json` (an object of +/// exactly a string `module` and a string `name`) write, by `map`. +fn rename_member_modules( + json: &mut crate::artifact::canonical_json::Json, + map: &BTreeMap, +) { + use crate::artifact::canonical_json::Json; + match json { + Json::Arr(items) => { + for item in items { + rename_member_modules(item, map); + } + } + Json::Obj(fields) => { + let is_member = fields.len() == 2 + && matches!(fields.get("module"), Some(Json::Str(_))) + && matches!(fields.get("name"), Some(Json::Str(_))); + if is_member { + if let Some(Json::Str(module)) = fields.get_mut("module") { + if let Some(key) = map.get(module.as_str()) { + module.clone_from(key); + } + } + } + for value in fields.values_mut() { + rename_member_modules(value, map); + } + } + Json::Bool(_) | Json::Int(_) | Json::Str(_) => {} + } +} + +/// Resolve one import of a module to the key of the module it names in the +/// importing project (§10.5): a module of the module's own project, or a +/// module of a package that project declares, which is written with the +/// package's module prefix. Anything else is not a dependency of the module. +fn resolve_import( + packages: &crate::source_package::SourcePackages, + own: &BTreeMap, + scope: Option<&crate::source_package::ResolvedSourcePackage>, + importer: &str, + text: &str, +) -> Result<(String, ModuleSource), Diagnostic> { + let local = match scope { + None => own.get(text).map(|path| { + ( + text.to_owned(), + ModuleSource { + package: None, + relative_name: text.to_owned(), + path: path.clone(), + }, + ) + }), + Some(package) => package.modules.get(text).map(|path| { + ( + package.key(text), + ModuleSource { + package: Some(package.id.clone()), + relative_name: text.to_owned(), + path: path.clone(), + }, + ) + }), + }; + let declared: &[String] = match scope { + None => &packages.declared, + Some(package) => &package.dependencies, + }; + let foreign = declared.iter().find_map(|id| { + let package = packages.packages.get(id)?; + let relative = text + .strip_prefix(package.prefix.as_str())? + .strip_prefix('.')?; + let path = package.modules.get(relative)?; + Some(( + text.to_owned(), + ModuleSource { + package: Some(package.id.clone()), + relative_name: relative.to_owned(), + path: path.clone(), + }, + )) + }); + match (local, foreign) { + (Some(_), Some(_)) => Err(Diagnostic::new( + code!("LLC0107"), + format!( + "`{importer}` imports `{text}`, which both its own project and a source package provide" + ), + )), + (Some(hit), None) | (None, Some(hit)) => Ok(hit), + (None, None) => { + if let Some((owner, _)) = packages.owner_of_key(text) { + if scope.is_none_or(|package| package.id != owner.id) { + return Err(Diagnostic::new( + code!("LLR3009"), + format!( + "`{importer}` imports `{text}`, a module of source package `{}`, which {} does not declare", + owner.id, + scope.map_or_else( + || "the project".to_owned(), + |package| format!("source package `{}`", package.id) + ) + ), + )); + } + } + Err(Diagnostic::new( + code!("LLR3005"), + format!("`{importer}` imports `{text}`, which is not a project module"), + )) + } + } +} + fn topo_order(loaded: &BTreeMap) -> Result, String> { let mut order = Vec::new(); let mut state: BTreeMap<&str, u8> = BTreeMap::new(); @@ -1099,10 +1347,10 @@ fn topo_order(loaded: &BTreeMap) -> Result, Stri } state.insert(name, 1); if let Some(load) = loaded.get(name) { - for import in &load.ast.imports { - if loaded.contains_key(&import.text) { + for (_, import_key) in &load.import_keys { + if loaded.contains_key(import_key) { let key = loaded - .get_key_value(&import.text) + .get_key_value(import_key) .map(|(k, _)| k.as_str()) .unwrap_or(name); visit(key, loaded, state, order)?; @@ -1405,7 +1653,6 @@ fn elab_binder_list( #[allow(clippy::too_many_arguments, clippy::too_many_lines)] fn link_block( - project: &Project, closure: &Closure, visible: &BTreeSet, module_decls: &mut DeclTable, @@ -1445,7 +1692,7 @@ fn link_block( visible, decls: module_decls, module: module_name, - module_prefix: &project.config.module_prefix, + module_prefix: &load.prefix, }; let (heading_phrase, heading_rows) = elab_phrase(&shared, scopes, alloc, budget, *heading)?; @@ -1466,7 +1713,6 @@ fn link_block( let mut inner = Vec::new(); for child in blocks { match link_block( - project, closure, visible, module_decls, @@ -1501,7 +1747,6 @@ fn link_block( } BlockAst::Declaration(decl) => { let declaration = link_declaration( - project, closure, visible, module_decls, @@ -1526,7 +1771,6 @@ fn link_block( #[allow(clippy::too_many_arguments, clippy::too_many_lines)] fn link_declaration( - project: &Project, closure: &Closure, visible: &BTreeSet, module_decls: &mut DeclTable, @@ -1585,7 +1829,7 @@ fn link_declaration( visible, decls: module_decls, module: module_name, - module_prefix: &project.config.module_prefix, + module_prefix: &load.prefix, }; let origin = DeclOrigin { whole: bytes_of(&load.atoms, (decl.begin, decl.end)), diff --git a/crates/lexlean/src/lock.rs b/crates/lexlean/src/lock.rs index 579fb53dc..872a28b08 100644 --- a/crates/lexlean/src/lock.rs +++ b/crates/lexlean/src/lock.rs @@ -36,6 +36,28 @@ pub struct LockPackage { pub imports: Vec, } +/// One locked source package row (§10.5, §11.1): the pin of a package of the +/// workspace by the digest of its manifest and source files. +#[derive(Debug, Clone, PartialEq, Eq)] +pub struct LockSourcePackage { + /// The package identifier. + pub id: String, + /// The declared version, for readers. + pub version: String, + /// `path`. + pub kind: String, + /// The workspace-relative member directory. + pub source: String, + /// The package's module prefix. + pub module_prefix: String, + /// The tree digest over the manifest and the source files. + pub tree_sha256: Sha256Digest, + /// SHA-256 of the manifest. + pub manifest_sha256: Sha256Digest, + /// Sorted unique `package@version` of the packages it declares. + pub imports: Vec, +} + /// A locked PDF provider record (§11.1): it mirrors the configured /// provider (program, argument vectors, output pattern, hashes) and records /// the hash of every declared resource. @@ -70,6 +92,9 @@ pub struct Lock { pub workspace_files: Vec<(String, Sha256Digest)>, /// Package rows sorted by `(id, version)`. pub packages: Vec, + /// Language 1.2: source package rows sorted by identifier, the + /// transitive closure of the project's source packages. + pub source_packages: Vec, /// The optional PDF record. pub pdf: Option, } @@ -130,6 +155,30 @@ impl Lock { let imports: Vec = package.imports.iter().map(|i| toml_string(i)).collect(); out.push_str(&format!("imports = [{}]\n", imports.join(", "))); } + // Written only when the project declares source packages, so every + // other lock keeps its bytes. + let mut source_packages = self.source_packages.clone(); + source_packages.sort_by(|a, b| a.id.cmp(&b.id)); + for package in &source_packages { + out.push_str("\n[[source_package]]\n"); + out.push_str(&format!("id = {}\n", toml_string(&package.id))); + out.push_str(&format!("version = {}\n", toml_string(&package.version))); + out.push_str(&format!("kind = {}\n", toml_string(&package.kind))); + out.push_str(&format!("source = {}\n", toml_string(&package.source))); + out.push_str(&format!( + "module_prefix = {}\n", + toml_string(&package.module_prefix) + )); + out.push_str(&format!( + "tree_sha256 = {}\n", + toml_string(&package.tree_sha256.to_hex()) + )); + out.push_str(&format!( + "manifest_sha256 = {}\n", + toml_string(&package.manifest_sha256.to_hex()) + )); + out.push_str(&format!("imports = {}\n", toml_array(&package.imports))); + } if let Some(pdf) = &self.pdf { out.push_str("\n[pdf]\n"); out.push_str(&format!("program = {}\n", toml_string(&pdf.program))); @@ -174,6 +223,8 @@ struct RawLock { workspace_files: Vec, #[serde(rename = "package", default)] packages: Vec, + #[serde(rename = "source_package", default)] + source_packages: Vec, pdf: Option, } @@ -197,6 +248,19 @@ struct RawLockPackage { imports: Vec, } +#[derive(Deserialize)] +#[serde(deny_unknown_fields)] +struct RawLockSourcePackage { + id: String, + version: String, + kind: String, + source: String, + module_prefix: String, + tree_sha256: String, + manifest_sha256: String, + imports: Vec, +} + #[derive(Deserialize)] #[serde(deny_unknown_fields)] struct RawLockPdf { @@ -325,6 +389,66 @@ pub fn parse_lock(path: &str, bytes: &[u8]) -> Result> { ))); } } + // §10.5: the rows of the source packages, language 1.2 only, sorted and + // unique by identifier, each `package@version` import well formed. + if !raw.source_packages.is_empty() && raw.language != crate::LANGUAGE_1_2 { + diagnostics.push(lock_error(format!( + "{path}: source_package rows are a language-1.2 field" + ))); + } + if !raw + .source_packages + .windows(2) + .all(|pair| pair[0].id < pair[1].id) + { + diagnostics.push(lock_error(format!( + "{path}: source_package rows must be unique and sorted by id" + ))); + } + let mut source_packages = Vec::new(); + for row in &raw.source_packages { + if row.kind != "path" { + diagnostics.push(lock_error(format!( + "{path}: source package `{}` has kind `{}`, not `path`", + row.id, row.kind + ))); + } + for import in &row.imports { + let well_formed = import.split_once('@').is_some_and(|(id, version)| { + crate::config::is_project_name(id) && crate::config::is_package_version(version) + }); + if !well_formed { + diagnostics.push(lock_error(format!( + "{path}: source package `{}` has invalid import `{import}`", + row.id + ))); + } + } + if !row.imports.windows(2).all(|pair| pair[0] < pair[1]) { + diagnostics.push(lock_error(format!( + "{path}: source package `{}` imports are not sorted and unique", + row.id + ))); + } + source_packages.push(LockSourcePackage { + id: row.id.clone(), + version: row.version.clone(), + kind: row.kind.clone(), + source: row.source.clone(), + module_prefix: row.module_prefix.clone(), + tree_sha256: hex( + "source_package.tree_sha256", + &row.tree_sha256, + &mut diagnostics, + ), + manifest_sha256: hex( + "source_package.manifest_sha256", + &row.manifest_sha256, + &mut diagnostics, + ), + imports: row.imports.clone(), + }); + } let pdf = raw.pdf.as_ref().map(|raw_pdf| LockPdf { program: raw_pdf.program.clone(), version_argv: raw_pdf.version_argv.clone(), @@ -357,6 +481,7 @@ pub fn parse_lock(path: &str, bytes: &[u8]) -> Result> { project_config_sha256, workspace_files, packages, + source_packages, pdf, }; if diagnostics.is_empty() { @@ -1122,6 +1247,7 @@ pub fn compute_lock( allow_network: bool, ) -> Result<(Lock, Vec), Vec> { let resolved = resolve_packages(project, allow_network)?; + let source_packages = crate::source_package::resolve(project)?; // The closure must include every transitive import exactly once (§11.3); // imports of loaded packages must all be loaded. @@ -1187,6 +1313,7 @@ pub fn compute_lock( project_config_sha256: project.config.config_sha256(), workspace_files, packages: resolved.rows, + source_packages: source_packages.rows(), pdf, }, resolved.packages, @@ -1219,6 +1346,9 @@ pub fn read_current_lock( let bytes = read_lock_bytes(project).map_err(|d| vec![d])?; let committed = parse_lock(&project.config.lockfile, &bytes)?; let (expected, packages) = compute_lock(project, false)?; + // §10.5: a package that is not the one the lock pins is named with both + // digests before the lock is called stale as a whole. + crate::source_package::check_pins(&committed.source_packages, &expected.source_packages)?; if expected.canonical_bytes() != bytes { let mut mismatch = lock_error(format!( "{} is stale or noncanonical; run `lexlean lock`", diff --git a/crates/lexlean/src/project.rs b/crates/lexlean/src/project.rs index 44b93c9d5..c1fb0eea4 100644 --- a/crates/lexlean/src/project.rs +++ b/crates/lexlean/src/project.rs @@ -9,6 +9,7 @@ use crate::code; use crate::config::{is_module_segment, parse_project, ProjectConfig}; use crate::diagnostic::Diagnostic; use crate::error::LexLeanError; +use crate::source_package::Workspace; /// Rewrite a path the host rendered with its own separator into the /// canonical `/`-separated project-relative spelling. @@ -56,6 +57,13 @@ pub struct Project { /// through [`Project::with_tooling`]; no configuration member, command /// line option, request field, or environment variable can. pub tooling: bool, + /// Language 1.2: the workspace of a project that declares source + /// packages (§10.5). Read when the project loads, and absent for a + /// project that declares none, which reads nothing beside its own root. + pub workspace: Option, + /// The workspace-relative directory of this project among the workspace's + /// members, present exactly when [`Self::workspace`] is. + pub workspace_member: Option, } /// The selection modes (SPEC.md §24.2). @@ -144,6 +152,25 @@ impl Project { /// Load a project from its configuration file path. pub fn load(config_path: &Utf8Path) -> Result { + Self::load_in(config_path, None) + } + + /// Load a project that stands in for a member of `workspace`: a scratch + /// copy of a project made to re-check its formatting, which resolves the + /// packages the original does and has no workspace file of its own. The + /// member is the directory of the project it stands in for. + pub fn load_as_member( + config_path: &Utf8Path, + workspace: &Workspace, + member: &str, + ) -> Result { + Self::load_in(config_path, Some((workspace.clone(), member.to_owned()))) + } + + fn load_in( + config_path: &Utf8Path, + stand_in: Option<(Workspace, String)>, + ) -> Result { // Messages name the configuration as the user gave it when that is // relative, and by file name otherwise (§20.6: no absolute paths). let shown: String = if config_path.is_absolute() { @@ -200,6 +227,8 @@ impl Project { config, config_bytes, tooling: false, + workspace: None, + workspace_member: None, }; // The build root must resolve within the project and no component // of it may be a symlink (§10.1, §25.1); the same holds for the @@ -218,6 +247,21 @@ impl Project { .confined(&workspace, Expect::Creatable) .map_err(LexLeanError::from_diagnostic)?; } + // §10.5: a project that declares source packages belongs to a + // workspace that lists it; a project that declares none reads no + // directory beside its own. + let mut project = project; + if !project.config.source_packages.is_empty() { + if let Some((workspace, member)) = stand_in { + project.workspace = Some(workspace); + project.workspace_member = Some(member); + } else { + let workspace = + Workspace::of_project(&project.root).map_err(LexLeanError::from_diagnostic)?; + project.workspace_member = workspace.member_of(&project.root); + project.workspace = Some(workspace); + } + } Ok(project) } diff --git a/crates/lexlean/src/source_package.rs b/crates/lexlean/src/source_package.rs new file mode 100644 index 000000000..485cda73e --- /dev/null +++ b/crates/lexlean/src/source_package.rs @@ -0,0 +1,772 @@ +//! Source packages (SPEC.md §10.5): the workspace rule, the resolution of the +//! packages a language-1.2 project declares from member projects of its +//! workspace, and their pins in the lock. +//! +//! A source package is a project. Nothing is fetched: a package is read from a +//! member directory of the workspace, confined to its manifest and its source +//! roots, and hashed; the pin is the digest, and every command recomputes it. + +use std::collections::{BTreeMap, BTreeSet}; + +use camino::{Utf8Path, Utf8PathBuf}; +use serde::Deserialize; + +use crate::artifact::content_id::{tree_digest, Sha256Digest}; +use crate::code; +use crate::config::{ + is_module_segment, is_project_relative, parse_project, LexiconSource, Limits, ProjectConfig, +}; +use crate::diagnostic::Diagnostic; +use crate::lexicon::package::toml_comment_at; +use crate::lock::{Lock, LockSourcePackage}; +use crate::project::Project; + +/// The workspace file name (§10.5), at the root of the workspace. +pub const WORKSPACE_FILE: &str = "lexlean-workspace.toml"; + +/// The workspace schema. +pub const WORKSPACE_SPEC: &str = "lexlean/workspace/1"; + +fn workspace_error(message: impl Into) -> Diagnostic { + Diagnostic::new(code!("LLC0108"), message) +} + +fn security(message: impl Into) -> Diagnostic { + Diagnostic::new(code!("LLS8001"), message) +} + +fn config_error(message: impl Into) -> Diagnostic { + Diagnostic::new(code!("LLC0101"), message) +} + +/// The workspace a project belongs to (§10.5): the directory holding +/// [`WORKSPACE_FILE`] and the member projects it lists. +#[derive(Debug, Clone, PartialEq, Eq)] +pub struct Workspace { + /// The canonical workspace root. + pub root: Utf8PathBuf, + /// The member project directories, workspace-relative, sorted. + pub members: Vec, +} + +#[derive(Deserialize)] +#[serde(deny_unknown_fields)] +struct RawWorkspace { + spec: String, + members: Vec, +} + +impl Workspace { + /// Read the workspace file of `directory`, when it holds one. A symlinked + /// or unreadable file, or one that is not a `lexlean/workspace/1` + /// document, is refused. + pub fn read(directory: &Utf8Path) -> Result, Diagnostic> { + let file = directory.join(WORKSPACE_FILE); + let metadata = match std::fs::symlink_metadata(file.as_std_path()) { + Ok(metadata) => metadata, + Err(io_error) if io_error.kind() == std::io::ErrorKind::NotFound => return Ok(None), + Err(io_error) => return Err(security(format!("{WORKSPACE_FILE}: {io_error}"))), + }; + if metadata.file_type().is_symlink() || !metadata.is_file() { + return Err(security(format!( + "{WORKSPACE_FILE}: the workspace file must be a regular file" + ))); + } + let bytes = std::fs::read(file.as_std_path()) + .map_err(|io_error| workspace_error(format!("{WORKSPACE_FILE}: {io_error}")))?; + let text = std::str::from_utf8(&bytes) + .map_err(|_| workspace_error(format!("{WORKSPACE_FILE} is not UTF-8")))?; + if toml_comment_at(text).is_some() { + return Err(workspace_error(format!( + "{WORKSPACE_FILE}: comments are forbidden" + ))); + } + let raw: RawWorkspace = toml::from_str(text) + .map_err(|error| workspace_error(format!("{WORKSPACE_FILE}: {error}")))?; + if raw.spec != WORKSPACE_SPEC { + return Err(workspace_error(format!( + "{WORKSPACE_FILE}: unsupported workspace schema `{}`", + raw.spec + ))); + } + for member in &raw.members { + if !is_project_relative(member) { + return Err(workspace_error(format!( + "{WORKSPACE_FILE}: member `{member}` is not a relative directory of the workspace" + ))); + } + } + if !raw.members.windows(2).all(|pair| pair[0] < pair[1]) { + return Err(workspace_error(format!( + "{WORKSPACE_FILE}: members must be unique and sorted" + ))); + } + Ok(Some(Self { + root: directory.to_path_buf(), + members: raw.members, + })) + } + + /// The workspace of a project: the nearest ancestor of its canonical root + /// that holds a workspace file, which must list the project's own + /// directory. A project is not a member of the workspace of its own + /// directory, and a stray file higher up grants nothing to a project it + /// does not list. + pub fn of_project(root: &Utf8Path) -> Result { + let mut current = root.parent(); + while let Some(directory) = current { + if let Some(workspace) = Self::read(directory)? { + if workspace.member_of(root).is_none() { + return Err(workspace_error(format!( + "the project is not a member of its workspace: {WORKSPACE_FILE} does not list its directory" + ))); + } + return Ok(workspace); + } + current = directory.parent(); + } + Err(workspace_error(format!( + "a project outside any workspace cannot declare a source package: no ancestor directory holds a {WORKSPACE_FILE}" + ))) + } + + /// The member directory (workspace-relative) of a project root beneath + /// this workspace, when it is a listed member. + #[must_use] + pub fn member_of(&self, root: &Utf8Path) -> Option { + let relative = + crate::project::project_relative(root.strip_prefix(&self.root).ok()?.as_str()); + self.members.contains(&relative).then_some(relative) + } +} + +/// One source package read from its member directory and verified against +/// the rules of §10.5. +#[derive(Debug, Clone)] +pub struct ResolvedSourcePackage { + /// The identifier the declaration gave it. + pub id: String, + /// The declared version. + pub version: String, + /// The workspace-relative member directory. + pub member: String, + /// Its module prefix, the first thing its modules are named under. + pub prefix: String, + /// Its parsed manifest. + pub config: ProjectConfig, + /// The tree digest over its manifest and source files. + pub tree_sha256: Sha256Digest, + /// The digest of its manifest bytes. + pub manifest_sha256: Sha256Digest, + /// The identifiers of the packages its manifest declares, sorted. + pub dependencies: Vec, + /// Every file the tree digest covers beneath the member, by + /// member-relative path. + pub files: BTreeMap>, + /// Its modules by name relative to its source roots, with the + /// member-relative path of the file that declares each. + pub modules: BTreeMap, +} + +impl ResolvedSourcePackage { + /// The key of one of its modules in a project that imports it: the Lean + /// name the module has, its prefix and its relative name (§10.5). + #[must_use] + pub fn key(&self, relative_name: &str) -> String { + format!("{}.{relative_name}", self.prefix) + } + + /// The display path of one of its files in diagnostics and records. + #[must_use] + pub fn display_path(&self, member_relative: &str) -> String { + format!("{}:{member_relative}", self.id) + } +} + +/// Every source package a project's closure reaches, by identifier. +#[derive(Debug, Clone, Default)] +pub struct SourcePackages { + /// The packages, by identifier. + pub packages: BTreeMap, + /// The identifiers the project declares itself, sorted. + pub declared: Vec, +} + +impl SourcePackages { + /// The lock rows of the closure, sorted by identifier (§11.1). + #[must_use] + pub fn rows(&self) -> Vec { + self.packages + .values() + .map(|package| LockSourcePackage { + id: package.id.clone(), + version: package.version.clone(), + kind: "path".to_owned(), + source: package.member.clone(), + module_prefix: package.prefix.clone(), + tree_sha256: package.tree_sha256, + manifest_sha256: package.manifest_sha256, + imports: package + .dependencies + .iter() + .map(|dependency| format!("{dependency}@{}", self.packages[dependency].version)) + .collect(), + }) + .collect() + } + + /// Whether the project reaches no source package. + #[must_use] + pub fn is_empty(&self) -> bool { + self.packages.is_empty() + } + + /// The package that owns a module key of the importing project, with the + /// module's name relative to the package's source roots. + #[must_use] + pub fn owner_of_key<'a>( + &'a self, + key: &'a str, + ) -> Option<(&'a ResolvedSourcePackage, &'a str)> { + self.packages.values().find_map(|package| { + let relative = key + .strip_prefix(package.prefix.as_str())? + .strip_prefix('.')?; + package + .modules + .contains_key(relative) + .then_some((package, relative)) + }) + } +} + +/// Is `prefix` equal to `other` or a dotted extension of it, either way? +fn prefixes_overlap(prefix: &str, other: &str) -> bool { + prefix == other + || prefix + .strip_prefix(other) + .is_some_and(|rest| rest.starts_with('.')) + || other + .strip_prefix(prefix) + .is_some_and(|rest| rest.starts_with('.')) +} + +/// Walk `member` beneath the workspace root with `symlink_metadata`, refusing +/// any symlink component, and require the last component to be a directory. +fn confined_member(workspace: &Workspace, member: &str) -> Result { + if !is_project_relative(member) { + return Err(security(format!("`{member}` escapes the workspace"))); + } + let mut current = workspace.root.clone(); + let mut walked = String::new(); + for segment in member.split('/') { + current.push(segment); + if !walked.is_empty() { + walked.push('/'); + } + walked.push_str(segment); + let metadata = std::fs::symlink_metadata(current.as_std_path()) + .map_err(|io_error| workspace_error(format!("`{walked}`: {io_error}")))?; + if metadata.file_type().is_symlink() { + return Err(security(format!( + "`{walked}`: symlinks are rejected in the path of a source package" + ))); + } + } + let metadata = std::fs::symlink_metadata(current.as_std_path()) + .map_err(|io_error| workspace_error(format!("`{member}`: {io_error}")))?; + if !metadata.is_dir() { + return Err(workspace_error(format!( + "`{member}` is not a directory of the workspace" + ))); + } + Ok(current) +} + +/// Read one regular file of a package, bounded by `max_file_bytes`. +fn read_file( + absolute: &Utf8Path, + shown: &str, + limits: &Limits, +) -> Result, Vec> { + let metadata = std::fs::symlink_metadata(absolute.as_std_path()) + .map_err(|io_error| vec![workspace_error(format!("{shown}: {io_error}"))])?; + if metadata.file_type().is_symlink() { + return Err(vec![security(format!( + "`{shown}`: symlinks are rejected in a source package" + ))]); + } + if !metadata.is_file() { + return Err(vec![security(format!( + "`{shown}`: special files are rejected in a source package" + ))]); + } + if metadata.len() > limits.max_file_bytes { + return Err(vec![Diagnostic::new( + code!("LLS8002"), + format!( + "max_file_bytes exceeded: configured {}, observed {} in {shown}", + limits.max_file_bytes, + metadata.len() + ), + )]); + } + std::fs::read(absolute.as_std_path()) + .map_err(|io_error| vec![workspace_error(format!("{shown}: {io_error}"))]) +} + +/// The modules of a package by name relative to its source roots (§10.5), +/// with the same duplicate and case-fold rules as a project's own (§23.3). +fn package_modules( + id: &str, + config: &ProjectConfig, + files: &BTreeMap>, +) -> Result, Vec> { + let mut diagnostics = Vec::new(); + let mut modules: BTreeMap = BTreeMap::new(); + for root in &config.source_roots { + let prefix = format!("{root}/"); + for path in files.keys() { + let Some(inside) = path.strip_prefix(&prefix) else { + continue; + }; + let Some(stem) = inside.strip_suffix(".lex.tex") else { + continue; + }; + let name = stem.replace('/', "."); + if !name.split('.').all(is_module_segment) { + diagnostics.push(config_error(format!( + "source package `{id}`: `{path}` is not a valid module path" + ))); + continue; + } + if let Some(existing) = modules.get(&name) { + diagnostics.push(Diagnostic::new( + code!("LLC0104"), + format!( + "source package `{id}`: `{path}` and `{existing}` declare the same module `{name}`" + ), + )); + continue; + } + modules.insert(name, path.clone()); + } + } + let mut folded: BTreeMap = BTreeMap::new(); + for module in modules.keys() { + if let Some(existing) = folded.insert(module.to_lowercase(), module) { + diagnostics.push(Diagnostic::new( + code!("LLC0104"), + format!( + "source package `{id}`: modules `{existing}` and `{module}` collide under case folding" + ), + )); + } + } + if diagnostics.is_empty() { + Ok(modules) + } else { + Err(diagnostics) + } +} + +/// Read one member as a source package: its manifest, its source roots, and +/// nothing else (§25.1). +fn load_member( + workspace: &Workspace, + id: &str, + version: &str, + member: &str, + limits: &Limits, +) -> Result> { + if !workspace.members.iter().any(|listed| listed == member) { + return Err(vec![workspace_error(format!( + "source package `{id}`: `{member}` is not a member of the workspace; {WORKSPACE_FILE} lists the directories a source package may name" + ))]); + } + let directory = confined_member(workspace, member).map_err(|d| vec![d])?; + let manifest_name = format!("{member}/lexlean.toml"); + let manifest_bytes = read_file(&directory.join("lexlean.toml"), &manifest_name, limits)?; + let config = parse_project(&manifest_name, &manifest_bytes)?; + let mut policy = Vec::new(); + if config.language != crate::LANGUAGE_1_2 { + policy.push(config_error(format!( + "source package `{id}`: {manifest_name} is language {}, and a source package is a language-1.2 project", + config.language + ))); + } + if !config.artifact_sources.is_empty() { + policy.push(config_error(format!( + "source package `{id}`: {manifest_name} declares artifact_source, which a package may not: its files would lie outside the pin" + ))); + } + if config.pdf.is_some() { + policy.push(config_error(format!( + "source package `{id}`: {manifest_name} declares a pdf provider, which a package may not" + ))); + } + if config + .lexicon_sources + .iter() + .any(|source| !matches!(source, LexiconSource::Builtin { .. })) + { + policy.push(config_error(format!( + "source package `{id}`: {manifest_name} declares a lexicon source other than a builtin one; its glossaries are those of the importing project" + ))); + } + if !policy.is_empty() { + return Err(policy); + } + let mut files: BTreeMap> = BTreeMap::new(); + files.insert("lexlean.toml".to_owned(), manifest_bytes.clone()); + for root in &config.source_roots { + let absolute_root = confined_member( + &Workspace { + root: workspace.root.clone(), + members: Vec::new(), + }, + &format!("{member}/{root}"), + ) + .map_err(|d| vec![d])?; + for entry in walkdir::WalkDir::new(absolute_root.as_std_path()) + .follow_links(false) + .sort_by_file_name() + { + let entry = entry + .map_err(|walk_error| vec![security(format!("`{member}/{root}`: {walk_error}"))])?; + let file_type = entry.file_type(); + if file_type.is_dir() { + continue; + } + let absolute = crate::project::utf8_path(entry.path()).map_err(|d| vec![d])?; + let relative = absolute + .strip_prefix(&directory) + .map(|inside| crate::project::project_relative(inside.as_str())) + .map_err(|_| vec![security(format!("`{member}/{root}` escapes the package"))])?; + let bytes = read_file(&absolute, &format!("{member}/{relative}"), limits)?; + files.insert(relative, bytes); + } + } + let rows: Vec<(&str, &[u8])> = files + .iter() + .map(|(path, bytes)| (path.as_str(), bytes.as_slice())) + .collect(); + let mut sorted = rows; + sorted.sort_by(|a, b| a.0.as_bytes().cmp(b.0.as_bytes())); + let tree_sha256 = tree_digest(&sorted); + let modules = package_modules(id, &config, &files)?; + Ok(ResolvedSourcePackage { + id: id.to_owned(), + version: version.to_owned(), + member: member.to_owned(), + prefix: config.module_prefix.clone(), + manifest_sha256: Sha256Digest::of(&manifest_bytes), + dependencies: config + .source_packages + .iter() + .map(|package| package.package.clone()) + .collect(), + config, + tree_sha256, + files, + modules, + }) +} + +/// Resolve every source package a project declares, with the packages theirs +/// declare in turn, from the member directories of its workspace (§10.5). +/// Nothing here reads outside a package's manifest and source roots, and +/// nothing is fetched. +/// +/// # Errors +/// +/// `LLC0108` for a workspace rule, `LLS8001` for a symlink or an escaping +/// path, `LLC0106` for an identifier with two sources, `LLR3003` for a +/// package that reaches itself, `LLC0107` for a module prefix two sources +/// claim, and the configuration errors of a manifest. +pub fn resolve(project: &Project) -> Result> { + if project.config.source_packages.is_empty() { + return Ok(SourcePackages::default()); + } + let Some(workspace) = &project.workspace else { + return Err(vec![workspace_error( + "a project outside any workspace cannot declare a source package", + )]); + }; + let own_member = project.workspace_member.clone(); + let limits = &project.config.limits; + let mut found: BTreeMap = BTreeMap::new(); + let mut work: Vec<(String, String, String)> = project + .config + .source_packages + .iter() + .map(|package| { + ( + package.package.clone(), + package.version.clone(), + package.path.clone(), + ) + }) + .collect(); + let mut diagnostics = Vec::new(); + while let Some((id, version, member)) = work.pop() { + if let Some(existing) = found.get(&id) { + if existing.member != member || existing.version != version { + diagnostics.push(Diagnostic::new( + code!("LLC0106"), + format!( + "source package `{id}` is declared with two sources: `{}` at {} and `{member}` at {version}", + existing.member, existing.version + ), + )); + } + continue; + } + if own_member.as_deref() == Some(member.as_str()) { + diagnostics.push(Diagnostic::new( + code!("LLR3003"), + format!("source package `{id}` names the importing project itself (`{member}`)"), + )); + continue; + } + match load_member(workspace, &id, &version, &member, limits) { + Ok(package) => { + for dependency in &package.config.source_packages { + work.push(( + dependency.package.clone(), + dependency.version.clone(), + dependency.path.clone(), + )); + } + found.insert(id, package); + } + Err(mut errors) => diagnostics.append(&mut errors), + } + } + if !diagnostics.is_empty() { + return Err(diagnostics); + } + let declared: Vec = project + .config + .source_packages + .iter() + .map(|package| package.package.clone()) + .collect(); + let packages = SourcePackages { + packages: found, + declared, + }; + check_acyclic(&packages)?; + check_prefixes(project, &packages)?; + Ok(packages) +} + +/// A package that reaches itself through the packages it declares is an +/// import cycle (§15.1). +fn check_acyclic(packages: &SourcePackages) -> Result<(), Vec> { + fn visit<'a>( + id: &'a str, + packages: &'a SourcePackages, + state: &mut BTreeMap<&'a str, u8>, + ) -> Result<(), String> { + match state.get(id) { + Some(1) => return Err(id.to_owned()), + Some(2) => return Ok(()), + _ => {} + } + state.insert(id, 1); + if let Some(package) = packages.packages.get(id) { + for dependency in &package.dependencies { + visit(dependency, packages, state)?; + } + } + state.insert(id, 2); + Ok(()) + } + let mut state = BTreeMap::new(); + for id in packages.packages.keys() { + visit(id, packages, &mut state).map_err(|cycle| { + vec![Diagnostic::new( + code!("LLR3003"), + format!("source packages depend on each other through `{cycle}`"), + )] + })?; + } + Ok(()) +} + +/// A module prefix is claimed by one source (§10.5): the project's own and +/// every package's must not be equal, and none may lie beneath another. +fn check_prefixes(project: &Project, packages: &SourcePackages) -> Result<(), Vec> { + let mut claims: Vec<(String, String)> = vec![( + project.config.module_prefix.clone(), + "the importing project".to_owned(), + )]; + claims.extend(packages.packages.values().map(|package| { + ( + package.prefix.clone(), + format!("source package `{}`", package.id), + ) + })); + let mut diagnostics = Vec::new(); + for (index, (prefix, owner)) in claims.iter().enumerate() { + for (other_prefix, other_owner) in &claims[index + 1..] { + if prefixes_overlap(prefix, other_prefix) { + diagnostics.push(Diagnostic::new( + code!("LLC0107"), + format!( + "the module prefix `{prefix}` of {owner} and the module prefix `{other_prefix}` of {other_owner} overlap: a module prefix is claimed by one source" + ), + )); + } + } + } + if diagnostics.is_empty() { + Ok(()) + } else { + Err(diagnostics) + } +} + +/// Compare the pins of a lock with the packages as they are now (§11.1): a +/// package whose version, source, prefix, or digests differ is `LLC0105`, naming +/// the package and both digests; a package the lock pins that the project's +/// closure does not reach is `LLC0106`. A package the closure reaches that the +/// lock lacks is left to the staleness of the lock as a whole. +/// +/// # Errors +/// +/// The diagnostics above. +pub fn check_pins( + locked: &[LockSourcePackage], + expected: &[LockSourcePackage], +) -> Result<(), Vec> { + let mut diagnostics = Vec::new(); + for row in locked { + match expected.iter().find(|candidate| candidate.id == row.id) { + None => diagnostics.push(Diagnostic::new( + code!("LLC0106"), + format!( + "the lock pins source package `{}`, which the project does not declare", + row.id + ), + )), + Some(current) if current != row => { + let mut differences = Vec::new(); + if row.version != current.version { + differences.push(format!( + "version: locked {}, found {}", + row.version, current.version + )); + } + if row.source != current.source { + differences.push(format!( + "source: locked {}, found {}", + row.source, current.source + )); + } + if row.module_prefix != current.module_prefix { + differences.push(format!( + "module_prefix: locked {}, found {}", + row.module_prefix, current.module_prefix + )); + } + if row.tree_sha256 != current.tree_sha256 { + differences.push(format!( + "tree_sha256: locked {}, found {}", + row.tree_sha256.to_hex(), + current.tree_sha256.to_hex() + )); + } + if row.manifest_sha256 != current.manifest_sha256 { + differences.push(format!( + "manifest_sha256: locked {}, found {}", + row.manifest_sha256.to_hex(), + current.manifest_sha256.to_hex() + )); + } + if row.imports != current.imports { + differences.push(format!( + "imports: locked [{}], found [{}]", + row.imports.join(", "), + current.imports.join(", ") + )); + } + diagnostics.push(Diagnostic::new( + code!("LLC0105"), + format!( + "source package `{}` is not the package the lock pins: {}", + row.id, + differences.join("; ") + ), + )); + } + Some(_) => {} + } + } + if diagnostics.is_empty() { + Ok(()) + } else { + Err(diagnostics) + } +} + +/// Resolve the source packages and require them to be the ones `lock` pins: +/// every command that links recomputes the digests (§11.1). +/// +/// # Errors +/// +/// Those of [`resolve`] and [`check_pins`], and `LLC0102` for a package the +/// closure reaches that the lock does not pin. +pub fn load_locked(project: &Project, lock: &Lock) -> Result> { + let packages = resolve(project)?; + let expected = packages.rows(); + check_pins(&lock.source_packages, &expected)?; + let pinned: BTreeSet<&str> = lock + .source_packages + .iter() + .map(|row| row.id.as_str()) + .collect(); + if let Some(missing) = expected + .iter() + .find(|row| !pinned.contains(row.id.as_str())) + { + return Err(vec![Diagnostic::new( + code!("LLC0102"), + format!( + "{} does not pin source package `{}`; run `lexlean lock`", + project.config.lockfile, missing.id + ), + )]); + } + Ok(packages) +} + +#[cfg(test)] +mod tests { + use super::prefixes_overlap; + use crate::config::is_package_version; + + /// §10.5: a module prefix is claimed by one source, and a prefix beneath + /// another is a claim on it, but a longer segment is not. + #[test] + fn a_prefix_beneath_another_overlaps_it_and_a_longer_segment_does_not() { + assert!(prefixes_overlap("PkgLib", "PkgLib")); + assert!(prefixes_overlap("PkgLib.Sub", "PkgLib")); + assert!(prefixes_overlap("PkgLib", "PkgLib.Sub")); + assert!(!prefixes_overlap("PkgLib", "PkgLibrary")); + assert!(!prefixes_overlap("PkgLib.A", "PkgLib.B")); + } + + /// §10.1: a version is a reader's string of at most 64 ASCII letters, + /// digits, `.`, `+`, and `-` that begins with a letter or digit. + #[test] + fn a_version_is_a_short_ascii_string() { + for good in ["1.0.0", "2026.10", "1.0.0-rc.1+build5", "v1"] { + assert!(is_package_version(good), "{good}"); + } + for bad in ["", "-1", ".1", "1 0", "1/0", "é", &"1".repeat(65)] { + assert!(!is_package_version(bad), "{bad:?}"); + } + } +} diff --git a/crates/lexlean/src/verify/mod.rs b/crates/lexlean/src/verify/mod.rs index 2c0f74c80..72837ba57 100644 --- a/crates/lexlean/src/verify/mod.rs +++ b/crates/lexlean/src/verify/mod.rs @@ -2957,6 +2957,22 @@ pub fn run_part( ), ("declarations", Json::Arr(declaration_rows)), ]; + // §10.5: the modules of a source package carry the package as their + // origin, keyed by their Lean module. + let origins: Vec<(&str, Json)> = build + .modules + .iter() + .filter_map(|module| { + checked.modules[&module.module] + .document + .origin + .as_ref() + .map(|origin| (module.lean_module.as_str(), Json::Str(origin.clone()))) + }) + .collect(); + if !origins.is_empty() { + body_fields.push(("origins", Json::object(origins))); + } if let Some(row) = compiler_input_row { body_fields.push(("compiler_input", row)); } diff --git a/examples/collections/expected/build/manifest.json b/examples/collections/expected/build/manifest.json index 720ecfbb8..7105e0381 100644 --- a/examples/collections/expected/build/manifest.json +++ b/examples/collections/expected/build/manifest.json @@ -1 +1 @@ -{"build_id":"52ca3fdc7cf7417df8b66378c6b95f366a30a1c78748c1fdab7c85a1277cf863","compiler":{"semantics_id":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","version":"0.3.0"},"inputs":[{"byte_length":2684,"kind":"lexicon","path":"embedded","sha256":"3bc0fb09d706ffa7d5a1363302ea87c049acc7c7dcafde63c62682620c11be9b"},{"byte_length":14885,"kind":"lexicon","path":"embedded","sha256":"e0db021e01b91d651c43921d66f6b0023c8efbf17cac2ec53192ce5305e4e1ac"},{"byte_length":36197,"kind":"lexicon","path":"embedded","sha256":"827317cae68c162f3a96c8a8de4e53ab348e7d3724fd2b834fa85ecde1a1b392"},{"byte_length":1597,"kind":"lock","path":"lexlean.lock","sha256":"8cbd56bf470c1660a0d45176b3f719de8f0b42afe7e7418f8bfd71adad6da892"},{"byte_length":644,"kind":"project-config","path":"lexlean.toml","sha256":"87b05dc405590c51e9a51ac60ef00f9096c4a38c29b9bab379a02d5c6a1cd744"},{"byte_length":18677,"kind":"source","path":"src/Main.lex.tex","sha256":"75d9370d719bc1634123f79db391070eda6061e88c461626129911161efa63a9"},{"byte_length":550,"kind":"source","path":"src/Measure.lex.tex","sha256":"227f5dad1ec06da3d2759ffa2ab2d4908aa5a02880ca0219bc46169089be9081"},{"byte_length":1620,"kind":"source","path":"src/Tables.lex.tex","sha256":"f5e7c1b714c8eee02fedacfb367c7e64dc01664eaa41fb48f4e42ae37aef43f0"}],"language":"1.2","lean_toolchain":"leanprover/lean4:v4.32.1","modules":[{"lean_module":"Collections.Main","module":"Main","source_path":"src/Main.lex.tex"},{"lean_module":"Collections.Measure","module":"Measure","source_path":"src/Measure.lex.tex"},{"lean_module":"Collections.Tables","module":"Tables","source_path":"src/Tables.lex.tex"}],"outputs":[{"byte_length":21846,"kind":"coverage","path":"coverage/Collections/Main.coverage.json","sha256":"be10513f257ec431bec3263ed332d7ff9781c9e345d8afd5d856d0be3bb2f4d6"},{"byte_length":7799,"kind":"coverage","path":"coverage/Collections/Measure.coverage.json","sha256":"6d77336208aa88befdcc66039951d5a307d68179653e5d5026df24ab1aa245ce"},{"byte_length":7956,"kind":"coverage","path":"coverage/Collections/Tables.coverage.json","sha256":"3fff848e16180ce1689e5bba8289953d21cb5e9e34ca8ee6c2266f678133c434"},{"byte_length":14135,"kind":"lean","path":"modules/Collections/Main.lean","sha256":"455526e5c3f8dc239041d1652cc455bfff6097b7f53396f9235f27c138d42318"},{"byte_length":569,"kind":"lean","path":"modules/Collections/Measure.lean","sha256":"7d5af864fa1a79d11b37dd77d3a3d330caf8ed8a76cab5049a5cb882d8c0abeb"},{"byte_length":1328,"kind":"lean","path":"modules/Collections/Tables.lean","sha256":"0b51fd70df2b936977dca55fca83a38aa0048197b139186bc14b5d49e6d394fd"},{"byte_length":10602,"kind":"lexicon-closure","path":"lexicons/Main.closure.json","sha256":"727110f90daff26a2e5eb8069fcefecd5790c1264f5d6d4b2ef57db1c2bfb867"},{"byte_length":10605,"kind":"lexicon-closure","path":"lexicons/Measure.closure.json","sha256":"624095a690526571fd42d5aa56a92d3fe7bc0953f3148c7535b69201e497e783"},{"byte_length":10604,"kind":"lexicon-closure","path":"lexicons/Tables.closure.json","sha256":"28c6adc505e1fcd48a5d3d5dda53c47f2ff7818607748bb77ffeb26a241c7b29"},{"byte_length":17922,"kind":"map","path":"maps/Collections/Main.map.json","sha256":"57c46b5bd75e535896245485bbbbc9bfc96046c52c5d8c6d4c9c014266c2e9d9"},{"byte_length":1667,"kind":"map","path":"maps/Collections/Measure.map.json","sha256":"92b82dc7111b6e99b5bf2bb41b68c8beaa83636800c826e5742748416e37cbb2"},{"byte_length":2627,"kind":"map","path":"maps/Collections/Tables.map.json","sha256":"ece5f23c2637c72066f07dfaaaf20ee663147c6d91d2c8129b96c4304ed9213b"},{"byte_length":20493,"kind":"tex","path":"modules/Collections/Main.tex","sha256":"5da0ed1c1437f937d741891494e5371b54a01d16295ce1d1405a87826d3d15fa"},{"byte_length":714,"kind":"tex","path":"modules/Collections/Measure.tex","sha256":"0ee1d42862fc24ddb8624de071a22a2f54712440d10275f524d18ff29d9dd4e6"},{"byte_length":2287,"kind":"tex","path":"modules/Collections/Tables.tex","sha256":"92a01628c5c75c23c0e57a062ae6c0043c3a876d2a0bd077eb7d965913eb6abf"}],"project":"collections","selection":["Main","Measure","Tables"],"semantic_id":"9962d043362f4a167c67517d483f0f2432f8ee9485a2eb221e128b9491113c00","source_id":"f9fc0327d1cd85598a9abd472c45532aec5e6da8e748cf96072d3c5e098ab9b6","spec":"lexlean/build-manifest/1"} +{"build_id":"30ff66aa2215054c936fffb65158c822fde618c6de324215cad3af60faf123b5","compiler":{"semantics_id":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","version":"0.3.0"},"inputs":[{"byte_length":2684,"kind":"lexicon","path":"embedded","sha256":"3bc0fb09d706ffa7d5a1363302ea87c049acc7c7dcafde63c62682620c11be9b"},{"byte_length":14885,"kind":"lexicon","path":"embedded","sha256":"e0db021e01b91d651c43921d66f6b0023c8efbf17cac2ec53192ce5305e4e1ac"},{"byte_length":36197,"kind":"lexicon","path":"embedded","sha256":"827317cae68c162f3a96c8a8de4e53ab348e7d3724fd2b834fa85ecde1a1b392"},{"byte_length":1597,"kind":"lock","path":"lexlean.lock","sha256":"2d6a1e459dcb88409b4f13d80db653a3bdc012a8b40872dfa600d4b90a562de2"},{"byte_length":644,"kind":"project-config","path":"lexlean.toml","sha256":"87b05dc405590c51e9a51ac60ef00f9096c4a38c29b9bab379a02d5c6a1cd744"},{"byte_length":18677,"kind":"source","path":"src/Main.lex.tex","sha256":"75d9370d719bc1634123f79db391070eda6061e88c461626129911161efa63a9"},{"byte_length":550,"kind":"source","path":"src/Measure.lex.tex","sha256":"227f5dad1ec06da3d2759ffa2ab2d4908aa5a02880ca0219bc46169089be9081"},{"byte_length":1620,"kind":"source","path":"src/Tables.lex.tex","sha256":"f5e7c1b714c8eee02fedacfb367c7e64dc01664eaa41fb48f4e42ae37aef43f0"}],"language":"1.2","lean_toolchain":"leanprover/lean4:v4.32.1","modules":[{"lean_module":"Collections.Main","module":"Main","source_path":"src/Main.lex.tex"},{"lean_module":"Collections.Measure","module":"Measure","source_path":"src/Measure.lex.tex"},{"lean_module":"Collections.Tables","module":"Tables","source_path":"src/Tables.lex.tex"}],"outputs":[{"byte_length":21846,"kind":"coverage","path":"coverage/Collections/Main.coverage.json","sha256":"be10513f257ec431bec3263ed332d7ff9781c9e345d8afd5d856d0be3bb2f4d6"},{"byte_length":7799,"kind":"coverage","path":"coverage/Collections/Measure.coverage.json","sha256":"6d77336208aa88befdcc66039951d5a307d68179653e5d5026df24ab1aa245ce"},{"byte_length":7956,"kind":"coverage","path":"coverage/Collections/Tables.coverage.json","sha256":"3fff848e16180ce1689e5bba8289953d21cb5e9e34ca8ee6c2266f678133c434"},{"byte_length":14135,"kind":"lean","path":"modules/Collections/Main.lean","sha256":"455526e5c3f8dc239041d1652cc455bfff6097b7f53396f9235f27c138d42318"},{"byte_length":569,"kind":"lean","path":"modules/Collections/Measure.lean","sha256":"7d5af864fa1a79d11b37dd77d3a3d330caf8ed8a76cab5049a5cb882d8c0abeb"},{"byte_length":1328,"kind":"lean","path":"modules/Collections/Tables.lean","sha256":"0b51fd70df2b936977dca55fca83a38aa0048197b139186bc14b5d49e6d394fd"},{"byte_length":10602,"kind":"lexicon-closure","path":"lexicons/Main.closure.json","sha256":"727110f90daff26a2e5eb8069fcefecd5790c1264f5d6d4b2ef57db1c2bfb867"},{"byte_length":10605,"kind":"lexicon-closure","path":"lexicons/Measure.closure.json","sha256":"624095a690526571fd42d5aa56a92d3fe7bc0953f3148c7535b69201e497e783"},{"byte_length":10604,"kind":"lexicon-closure","path":"lexicons/Tables.closure.json","sha256":"28c6adc505e1fcd48a5d3d5dda53c47f2ff7818607748bb77ffeb26a241c7b29"},{"byte_length":17922,"kind":"map","path":"maps/Collections/Main.map.json","sha256":"c119eda0f2f6af44b29980fa0145d786ab25b2da0e31484090e2a8f71b0d0adf"},{"byte_length":1667,"kind":"map","path":"maps/Collections/Measure.map.json","sha256":"47a06a857dd2ef0825a8e49dd5161fab1930fc314b158d0ef5594fbaa411d939"},{"byte_length":2627,"kind":"map","path":"maps/Collections/Tables.map.json","sha256":"9f6c60d217a33d459ad9613d3f59fbe61616504b12a9fb154b72d311b1978881"},{"byte_length":20493,"kind":"tex","path":"modules/Collections/Main.tex","sha256":"5da0ed1c1437f937d741891494e5371b54a01d16295ce1d1405a87826d3d15fa"},{"byte_length":714,"kind":"tex","path":"modules/Collections/Measure.tex","sha256":"0ee1d42862fc24ddb8624de071a22a2f54712440d10275f524d18ff29d9dd4e6"},{"byte_length":2287,"kind":"tex","path":"modules/Collections/Tables.tex","sha256":"92a01628c5c75c23c0e57a062ae6c0043c3a876d2a0bd077eb7d965913eb6abf"}],"project":"collections","selection":["Main","Measure","Tables"],"semantic_id":"0f6d359d50d0d086f47af2c0608b2e13253fe1d63025e4c861d89779908d9890","source_id":"282120f2cc10752f544cd95f7085068b83e51e26ba43cddd8e064dfd84869823","spec":"lexlean/build-manifest/1"} diff --git a/examples/collections/expected/build/maps/Collections/Main.map.json b/examples/collections/expected/build/maps/Collections/Main.map.json index 8c0d65623..58a24a0b8 100644 --- a/examples/collections/expected/build/maps/Collections/Main.map.json +++ b/examples/collections/expected/build/maps/Collections/Main.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/Collections/Main.lean"},{"id":1,"kind":"tex","path":"modules/Collections/Main.tex"}],"mappings":[{"artifact":0,"gen_end":345,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":18677,"src_start":0},{"artifact":0,"gen_end":1240,"gen_start":345,"node":1,"role":"declaration","source":0,"src_end":978,"src_start":158},{"artifact":0,"gen_end":1355,"gen_start":1240,"node":2,"role":"declaration","source":0,"src_end":1134,"src_start":980},{"artifact":0,"gen_end":1548,"gen_start":1355,"node":3,"role":"declaration","source":0,"src_end":1471,"src_start":1136},{"artifact":0,"gen_end":1739,"gen_start":1548,"node":4,"role":"declaration","source":0,"src_end":1730,"src_start":1473},{"artifact":0,"gen_end":1913,"gen_start":1739,"node":5,"role":"declaration","source":0,"src_end":2007,"src_start":1732},{"artifact":0,"gen_end":2041,"gen_start":1913,"node":6,"role":"declaration","source":0,"src_end":2249,"src_start":2009},{"artifact":0,"gen_end":2227,"gen_start":2041,"node":7,"role":"declaration","source":0,"src_end":2535,"src_start":2251},{"artifact":0,"gen_end":2387,"gen_start":2227,"node":8,"role":"declaration","source":0,"src_end":2783,"src_start":2537},{"artifact":0,"gen_end":2524,"gen_start":2387,"node":9,"role":"declaration","source":0,"src_end":2938,"src_start":2785},{"artifact":0,"gen_end":2689,"gen_start":2524,"node":10,"role":"declaration","source":0,"src_end":3245,"src_start":2940},{"artifact":0,"gen_end":2926,"gen_start":2689,"node":11,"role":"declaration","source":0,"src_end":3666,"src_start":3247},{"artifact":0,"gen_end":3162,"gen_start":2926,"node":12,"role":"declaration","source":0,"src_end":4074,"src_start":3668},{"artifact":0,"gen_end":3375,"gen_start":3162,"node":13,"role":"declaration","source":0,"src_end":4449,"src_start":4076},{"artifact":0,"gen_end":3605,"gen_start":3375,"node":14,"role":"declaration","source":0,"src_end":4853,"src_start":4451},{"artifact":0,"gen_end":3778,"gen_start":3605,"node":15,"role":"declaration","source":0,"src_end":5165,"src_start":4855},{"artifact":0,"gen_end":3954,"gen_start":3778,"node":16,"role":"declaration","source":0,"src_end":5482,"src_start":5167},{"artifact":0,"gen_end":4112,"gen_start":3954,"node":17,"role":"declaration","source":0,"src_end":5768,"src_start":5484},{"artifact":0,"gen_end":4252,"gen_start":4112,"node":18,"role":"declaration","source":0,"src_end":5987,"src_start":5770},{"artifact":0,"gen_end":4439,"gen_start":4252,"node":19,"role":"declaration","source":0,"src_end":6249,"src_start":5989},{"artifact":0,"gen_end":4620,"gen_start":4439,"node":20,"role":"declaration","source":0,"src_end":6505,"src_start":6251},{"artifact":0,"gen_end":4853,"gen_start":4620,"node":21,"role":"declaration","source":0,"src_end":6799,"src_start":6507},{"artifact":0,"gen_end":5147,"gen_start":4853,"node":22,"role":"declaration","source":0,"src_end":7157,"src_start":6801},{"artifact":0,"gen_end":5301,"gen_start":5147,"node":23,"role":"declaration","source":0,"src_end":7387,"src_start":7159},{"artifact":0,"gen_end":5449,"gen_start":5301,"node":24,"role":"declaration","source":0,"src_end":7611,"src_start":7389},{"artifact":0,"gen_end":5579,"gen_start":5449,"node":25,"role":"declaration","source":0,"src_end":7784,"src_start":7613},{"artifact":0,"gen_end":5692,"gen_start":5579,"node":26,"role":"declaration","source":0,"src_end":7942,"src_start":7786},{"artifact":0,"gen_end":5857,"gen_start":5692,"node":27,"role":"declaration","source":0,"src_end":8162,"src_start":7944},{"artifact":0,"gen_end":6032,"gen_start":5857,"node":28,"role":"declaration","source":0,"src_end":8447,"src_start":8164},{"artifact":0,"gen_end":6215,"gen_start":6032,"node":29,"role":"declaration","source":0,"src_end":8740,"src_start":8449},{"artifact":0,"gen_end":6388,"gen_start":6215,"node":30,"role":"declaration","source":0,"src_end":9023,"src_start":8742},{"artifact":0,"gen_end":6636,"gen_start":6388,"node":31,"role":"declaration","source":0,"src_end":9316,"src_start":9025},{"artifact":0,"gen_end":6900,"gen_start":6636,"node":32,"role":"declaration","source":0,"src_end":9589,"src_start":9318},{"artifact":0,"gen_end":7035,"gen_start":6900,"node":33,"role":"declaration","source":0,"src_end":9742,"src_start":9591},{"artifact":0,"gen_end":7276,"gen_start":7035,"node":34,"role":"declaration","source":0,"src_end":10010,"src_start":9744},{"artifact":0,"gen_end":7515,"gen_start":7276,"node":35,"role":"declaration","source":0,"src_end":10276,"src_start":10012},{"artifact":0,"gen_end":7728,"gen_start":7515,"node":36,"role":"declaration","source":0,"src_end":10650,"src_start":10278},{"artifact":0,"gen_end":7944,"gen_start":7728,"node":37,"role":"declaration","source":0,"src_end":11027,"src_start":10652},{"artifact":0,"gen_end":8155,"gen_start":7944,"node":38,"role":"declaration","source":0,"src_end":11420,"src_start":11029},{"artifact":0,"gen_end":8413,"gen_start":8155,"node":39,"role":"declaration","source":0,"src_end":11838,"src_start":11422},{"artifact":0,"gen_end":8731,"gen_start":8413,"node":40,"role":"declaration","source":0,"src_end":12225,"src_start":11840},{"artifact":0,"gen_end":9189,"gen_start":8731,"node":41,"role":"declaration","source":0,"src_end":12756,"src_start":12227},{"artifact":0,"gen_end":9639,"gen_start":9189,"node":42,"role":"declaration","source":0,"src_end":13277,"src_start":12758},{"artifact":0,"gen_end":10121,"gen_start":9639,"node":43,"role":"declaration","source":0,"src_end":13872,"src_start":13279},{"artifact":0,"gen_end":10627,"gen_start":10121,"node":44,"role":"declaration","source":0,"src_end":14491,"src_start":13874},{"artifact":0,"gen_end":11165,"gen_start":10627,"node":45,"role":"declaration","source":0,"src_end":15142,"src_start":14493},{"artifact":0,"gen_end":11567,"gen_start":11165,"node":46,"role":"declaration","source":0,"src_end":15611,"src_start":15144},{"artifact":0,"gen_end":11989,"gen_start":11567,"node":47,"role":"declaration","source":0,"src_end":16100,"src_start":15613},{"artifact":0,"gen_end":12425,"gen_start":11989,"node":48,"role":"declaration","source":0,"src_end":16603,"src_start":16102},{"artifact":0,"gen_end":12877,"gen_start":12425,"node":49,"role":"declaration","source":0,"src_end":17122,"src_start":16605},{"artifact":0,"gen_end":13179,"gen_start":12877,"node":50,"role":"declaration","source":0,"src_end":17508,"src_start":17124},{"artifact":0,"gen_end":13627,"gen_start":13179,"node":51,"role":"declaration","source":0,"src_end":18086,"src_start":17510},{"artifact":0,"gen_end":14113,"gen_start":13627,"node":52,"role":"declaration","source":0,"src_end":18641,"src_start":18088},{"artifact":0,"gen_end":14135,"gen_start":14113,"node":0,"role":"declaration","source":0,"src_end":18677,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":53,"role":"declaration","source":0,"src_end":18677,"src_start":0},{"artifact":1,"gen_end":1512,"gen_start":134,"node":54,"role":"declaration","source":0,"src_end":978,"src_start":158},{"artifact":1,"gen_end":1772,"gen_start":1512,"node":55,"role":"declaration","source":0,"src_end":1134,"src_start":980},{"artifact":1,"gen_end":2113,"gen_start":1772,"node":56,"role":"declaration","source":0,"src_end":1471,"src_start":1136},{"artifact":1,"gen_end":2452,"gen_start":2113,"node":57,"role":"declaration","source":0,"src_end":1730,"src_start":1473},{"artifact":1,"gen_end":2774,"gen_start":2452,"node":58,"role":"declaration","source":0,"src_end":2007,"src_start":1732},{"artifact":1,"gen_end":3051,"gen_start":2774,"node":59,"role":"declaration","source":0,"src_end":2249,"src_start":2009},{"artifact":1,"gen_end":3346,"gen_start":3051,"node":60,"role":"declaration","source":0,"src_end":2535,"src_start":2251},{"artifact":1,"gen_end":3624,"gen_start":3346,"node":61,"role":"declaration","source":0,"src_end":2783,"src_start":2537},{"artifact":1,"gen_end":3868,"gen_start":3624,"node":62,"role":"declaration","source":0,"src_end":2938,"src_start":2785},{"artifact":1,"gen_end":4144,"gen_start":3868,"node":63,"role":"declaration","source":0,"src_end":3245,"src_start":2940},{"artifact":1,"gen_end":4522,"gen_start":4144,"node":64,"role":"declaration","source":0,"src_end":3666,"src_start":3247},{"artifact":1,"gen_end":4900,"gen_start":4522,"node":65,"role":"declaration","source":0,"src_end":4074,"src_start":3668},{"artifact":1,"gen_end":5254,"gen_start":4900,"node":66,"role":"declaration","source":0,"src_end":4449,"src_start":4076},{"artifact":1,"gen_end":5626,"gen_start":5254,"node":67,"role":"declaration","source":0,"src_end":4853,"src_start":4451},{"artifact":1,"gen_end":5948,"gen_start":5626,"node":68,"role":"declaration","source":0,"src_end":5165,"src_start":4855},{"artifact":1,"gen_end":6274,"gen_start":5948,"node":69,"role":"declaration","source":0,"src_end":5482,"src_start":5167},{"artifact":1,"gen_end":6581,"gen_start":6274,"node":70,"role":"declaration","source":0,"src_end":5768,"src_start":5484},{"artifact":1,"gen_end":6829,"gen_start":6581,"node":71,"role":"declaration","source":0,"src_end":5987,"src_start":5770},{"artifact":1,"gen_end":7124,"gen_start":6829,"node":72,"role":"declaration","source":0,"src_end":6249,"src_start":5989},{"artifact":1,"gen_end":7413,"gen_start":7124,"node":73,"role":"declaration","source":0,"src_end":6505,"src_start":6251},{"artifact":1,"gen_end":7754,"gen_start":7413,"node":74,"role":"declaration","source":0,"src_end":6799,"src_start":6507},{"artifact":1,"gen_end":8157,"gen_start":7754,"node":75,"role":"declaration","source":0,"src_end":7157,"src_start":6801},{"artifact":1,"gen_end":8418,"gen_start":8157,"node":76,"role":"declaration","source":0,"src_end":7387,"src_start":7159},{"artifact":1,"gen_end":8673,"gen_start":8418,"node":77,"role":"declaration","source":0,"src_end":7611,"src_start":7389},{"artifact":1,"gen_end":8911,"gen_start":8673,"node":78,"role":"declaration","source":0,"src_end":7784,"src_start":7613},{"artifact":1,"gen_end":9132,"gen_start":8911,"node":79,"role":"declaration","source":0,"src_end":7942,"src_start":7786},{"artifact":1,"gen_end":9405,"gen_start":9132,"node":80,"role":"declaration","source":0,"src_end":8162,"src_start":7944},{"artifact":1,"gen_end":9687,"gen_start":9405,"node":81,"role":"declaration","source":0,"src_end":8447,"src_start":8164},{"artifact":1,"gen_end":9977,"gen_start":9687,"node":82,"role":"declaration","source":0,"src_end":8740,"src_start":8449},{"artifact":1,"gen_end":10257,"gen_start":9977,"node":83,"role":"declaration","source":0,"src_end":9023,"src_start":8742},{"artifact":1,"gen_end":10613,"gen_start":10257,"node":84,"role":"declaration","source":0,"src_end":9316,"src_start":9025},{"artifact":1,"gen_end":10985,"gen_start":10613,"node":85,"role":"declaration","source":0,"src_end":9589,"src_start":9318},{"artifact":1,"gen_end":11228,"gen_start":10985,"node":86,"role":"declaration","source":0,"src_end":9742,"src_start":9591},{"artifact":1,"gen_end":11579,"gen_start":11228,"node":87,"role":"declaration","source":0,"src_end":10010,"src_start":9744},{"artifact":1,"gen_end":11927,"gen_start":11579,"node":88,"role":"declaration","source":0,"src_end":10276,"src_start":10012},{"artifact":1,"gen_end":12247,"gen_start":11927,"node":89,"role":"declaration","source":0,"src_end":10650,"src_start":10278},{"artifact":1,"gen_end":12571,"gen_start":12247,"node":90,"role":"declaration","source":0,"src_end":11027,"src_start":10652},{"artifact":1,"gen_end":12900,"gen_start":12571,"node":91,"role":"declaration","source":0,"src_end":11420,"src_start":11029},{"artifact":1,"gen_end":13266,"gen_start":12900,"node":92,"role":"declaration","source":0,"src_end":11838,"src_start":11422},{"artifact":1,"gen_end":13689,"gen_start":13266,"node":93,"role":"declaration","source":0,"src_end":12225,"src_start":11840},{"artifact":1,"gen_end":14252,"gen_start":13689,"node":94,"role":"declaration","source":0,"src_end":12756,"src_start":12227},{"artifact":1,"gen_end":14807,"gen_start":14252,"node":95,"role":"declaration","source":0,"src_end":13277,"src_start":12758},{"artifact":1,"gen_end":15394,"gen_start":14807,"node":96,"role":"declaration","source":0,"src_end":13872,"src_start":13279},{"artifact":1,"gen_end":16005,"gen_start":15394,"node":97,"role":"declaration","source":0,"src_end":14491,"src_start":13874},{"artifact":1,"gen_end":16648,"gen_start":16005,"node":98,"role":"declaration","source":0,"src_end":15142,"src_start":14493},{"artifact":1,"gen_end":17155,"gen_start":16648,"node":99,"role":"declaration","source":0,"src_end":15611,"src_start":15144},{"artifact":1,"gen_end":17682,"gen_start":17155,"node":100,"role":"declaration","source":0,"src_end":16100,"src_start":15613},{"artifact":1,"gen_end":18223,"gen_start":17682,"node":101,"role":"declaration","source":0,"src_end":16603,"src_start":16102},{"artifact":1,"gen_end":18780,"gen_start":18223,"node":102,"role":"declaration","source":0,"src_end":17122,"src_start":16605},{"artifact":1,"gen_end":19198,"gen_start":18780,"node":103,"role":"declaration","source":0,"src_end":17508,"src_start":17124},{"artifact":1,"gen_end":19846,"gen_start":19198,"node":104,"role":"declaration","source":0,"src_end":18086,"src_start":17510},{"artifact":1,"gen_end":20478,"gen_start":19846,"node":105,"role":"declaration","source":0,"src_end":18641,"src_start":18088},{"artifact":1,"gen_end":20493,"gen_start":20478,"node":53,"role":"declaration","source":0,"src_end":18677,"src_start":0}],"module":"Main","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"},{"id":40,"kind":"semantic-declaration"},{"id":41,"kind":"semantic-declaration"},{"id":42,"kind":"semantic-declaration"},{"id":43,"kind":"semantic-declaration"},{"id":44,"kind":"semantic-declaration"},{"id":45,"kind":"semantic-declaration"},{"id":46,"kind":"semantic-declaration"},{"id":47,"kind":"semantic-declaration"},{"id":48,"kind":"semantic-declaration"},{"id":49,"kind":"semantic-declaration"},{"id":50,"kind":"semantic-declaration"},{"id":51,"kind":"semantic-declaration"},{"id":52,"kind":"semantic-declaration"},{"id":53,"kind":"semantic-latex-module"},{"id":54,"kind":"semantic-declaration"},{"id":55,"kind":"semantic-declaration"},{"id":56,"kind":"semantic-declaration"},{"id":57,"kind":"semantic-declaration"},{"id":58,"kind":"semantic-declaration"},{"id":59,"kind":"semantic-declaration"},{"id":60,"kind":"semantic-declaration"},{"id":61,"kind":"semantic-declaration"},{"id":62,"kind":"semantic-declaration"},{"id":63,"kind":"semantic-declaration"},{"id":64,"kind":"semantic-declaration"},{"id":65,"kind":"semantic-declaration"},{"id":66,"kind":"semantic-declaration"},{"id":67,"kind":"semantic-declaration"},{"id":68,"kind":"semantic-declaration"},{"id":69,"kind":"semantic-declaration"},{"id":70,"kind":"semantic-declaration"},{"id":71,"kind":"semantic-declaration"},{"id":72,"kind":"semantic-declaration"},{"id":73,"kind":"semantic-declaration"},{"id":74,"kind":"semantic-declaration"},{"id":75,"kind":"semantic-declaration"},{"id":76,"kind":"semantic-declaration"},{"id":77,"kind":"semantic-declaration"},{"id":78,"kind":"semantic-declaration"},{"id":79,"kind":"semantic-declaration"},{"id":80,"kind":"semantic-declaration"},{"id":81,"kind":"semantic-declaration"},{"id":82,"kind":"semantic-declaration"},{"id":83,"kind":"semantic-declaration"},{"id":84,"kind":"semantic-declaration"},{"id":85,"kind":"semantic-declaration"},{"id":86,"kind":"semantic-declaration"},{"id":87,"kind":"semantic-declaration"},{"id":88,"kind":"semantic-declaration"},{"id":89,"kind":"semantic-declaration"},{"id":90,"kind":"semantic-declaration"},{"id":91,"kind":"semantic-declaration"},{"id":92,"kind":"semantic-declaration"},{"id":93,"kind":"semantic-declaration"},{"id":94,"kind":"semantic-declaration"},{"id":95,"kind":"semantic-declaration"},{"id":96,"kind":"semantic-declaration"},{"id":97,"kind":"semantic-declaration"},{"id":98,"kind":"semantic-declaration"},{"id":99,"kind":"semantic-declaration"},{"id":100,"kind":"semantic-declaration"},{"id":101,"kind":"semantic-declaration"},{"id":102,"kind":"semantic-declaration"},{"id":103,"kind":"semantic-declaration"},{"id":104,"kind":"semantic-declaration"},{"id":105,"kind":"semantic-declaration"}],"semantic_id":"9962d043362f4a167c67517d483f0f2432f8ee9485a2eb221e128b9491113c00","source_id":"f9fc0327d1cd85598a9abd472c45532aec5e6da8e748cf96072d3c5e098ab9b6","sources":[{"id":0,"kind":"file","path":"src/Main.lex.tex","sha256":"75d9370d719bc1634123f79db391070eda6061e88c461626129911161efa63a9"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/Collections/Main.lean"},{"id":1,"kind":"tex","path":"modules/Collections/Main.tex"}],"mappings":[{"artifact":0,"gen_end":345,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":18677,"src_start":0},{"artifact":0,"gen_end":1240,"gen_start":345,"node":1,"role":"declaration","source":0,"src_end":978,"src_start":158},{"artifact":0,"gen_end":1355,"gen_start":1240,"node":2,"role":"declaration","source":0,"src_end":1134,"src_start":980},{"artifact":0,"gen_end":1548,"gen_start":1355,"node":3,"role":"declaration","source":0,"src_end":1471,"src_start":1136},{"artifact":0,"gen_end":1739,"gen_start":1548,"node":4,"role":"declaration","source":0,"src_end":1730,"src_start":1473},{"artifact":0,"gen_end":1913,"gen_start":1739,"node":5,"role":"declaration","source":0,"src_end":2007,"src_start":1732},{"artifact":0,"gen_end":2041,"gen_start":1913,"node":6,"role":"declaration","source":0,"src_end":2249,"src_start":2009},{"artifact":0,"gen_end":2227,"gen_start":2041,"node":7,"role":"declaration","source":0,"src_end":2535,"src_start":2251},{"artifact":0,"gen_end":2387,"gen_start":2227,"node":8,"role":"declaration","source":0,"src_end":2783,"src_start":2537},{"artifact":0,"gen_end":2524,"gen_start":2387,"node":9,"role":"declaration","source":0,"src_end":2938,"src_start":2785},{"artifact":0,"gen_end":2689,"gen_start":2524,"node":10,"role":"declaration","source":0,"src_end":3245,"src_start":2940},{"artifact":0,"gen_end":2926,"gen_start":2689,"node":11,"role":"declaration","source":0,"src_end":3666,"src_start":3247},{"artifact":0,"gen_end":3162,"gen_start":2926,"node":12,"role":"declaration","source":0,"src_end":4074,"src_start":3668},{"artifact":0,"gen_end":3375,"gen_start":3162,"node":13,"role":"declaration","source":0,"src_end":4449,"src_start":4076},{"artifact":0,"gen_end":3605,"gen_start":3375,"node":14,"role":"declaration","source":0,"src_end":4853,"src_start":4451},{"artifact":0,"gen_end":3778,"gen_start":3605,"node":15,"role":"declaration","source":0,"src_end":5165,"src_start":4855},{"artifact":0,"gen_end":3954,"gen_start":3778,"node":16,"role":"declaration","source":0,"src_end":5482,"src_start":5167},{"artifact":0,"gen_end":4112,"gen_start":3954,"node":17,"role":"declaration","source":0,"src_end":5768,"src_start":5484},{"artifact":0,"gen_end":4252,"gen_start":4112,"node":18,"role":"declaration","source":0,"src_end":5987,"src_start":5770},{"artifact":0,"gen_end":4439,"gen_start":4252,"node":19,"role":"declaration","source":0,"src_end":6249,"src_start":5989},{"artifact":0,"gen_end":4620,"gen_start":4439,"node":20,"role":"declaration","source":0,"src_end":6505,"src_start":6251},{"artifact":0,"gen_end":4853,"gen_start":4620,"node":21,"role":"declaration","source":0,"src_end":6799,"src_start":6507},{"artifact":0,"gen_end":5147,"gen_start":4853,"node":22,"role":"declaration","source":0,"src_end":7157,"src_start":6801},{"artifact":0,"gen_end":5301,"gen_start":5147,"node":23,"role":"declaration","source":0,"src_end":7387,"src_start":7159},{"artifact":0,"gen_end":5449,"gen_start":5301,"node":24,"role":"declaration","source":0,"src_end":7611,"src_start":7389},{"artifact":0,"gen_end":5579,"gen_start":5449,"node":25,"role":"declaration","source":0,"src_end":7784,"src_start":7613},{"artifact":0,"gen_end":5692,"gen_start":5579,"node":26,"role":"declaration","source":0,"src_end":7942,"src_start":7786},{"artifact":0,"gen_end":5857,"gen_start":5692,"node":27,"role":"declaration","source":0,"src_end":8162,"src_start":7944},{"artifact":0,"gen_end":6032,"gen_start":5857,"node":28,"role":"declaration","source":0,"src_end":8447,"src_start":8164},{"artifact":0,"gen_end":6215,"gen_start":6032,"node":29,"role":"declaration","source":0,"src_end":8740,"src_start":8449},{"artifact":0,"gen_end":6388,"gen_start":6215,"node":30,"role":"declaration","source":0,"src_end":9023,"src_start":8742},{"artifact":0,"gen_end":6636,"gen_start":6388,"node":31,"role":"declaration","source":0,"src_end":9316,"src_start":9025},{"artifact":0,"gen_end":6900,"gen_start":6636,"node":32,"role":"declaration","source":0,"src_end":9589,"src_start":9318},{"artifact":0,"gen_end":7035,"gen_start":6900,"node":33,"role":"declaration","source":0,"src_end":9742,"src_start":9591},{"artifact":0,"gen_end":7276,"gen_start":7035,"node":34,"role":"declaration","source":0,"src_end":10010,"src_start":9744},{"artifact":0,"gen_end":7515,"gen_start":7276,"node":35,"role":"declaration","source":0,"src_end":10276,"src_start":10012},{"artifact":0,"gen_end":7728,"gen_start":7515,"node":36,"role":"declaration","source":0,"src_end":10650,"src_start":10278},{"artifact":0,"gen_end":7944,"gen_start":7728,"node":37,"role":"declaration","source":0,"src_end":11027,"src_start":10652},{"artifact":0,"gen_end":8155,"gen_start":7944,"node":38,"role":"declaration","source":0,"src_end":11420,"src_start":11029},{"artifact":0,"gen_end":8413,"gen_start":8155,"node":39,"role":"declaration","source":0,"src_end":11838,"src_start":11422},{"artifact":0,"gen_end":8731,"gen_start":8413,"node":40,"role":"declaration","source":0,"src_end":12225,"src_start":11840},{"artifact":0,"gen_end":9189,"gen_start":8731,"node":41,"role":"declaration","source":0,"src_end":12756,"src_start":12227},{"artifact":0,"gen_end":9639,"gen_start":9189,"node":42,"role":"declaration","source":0,"src_end":13277,"src_start":12758},{"artifact":0,"gen_end":10121,"gen_start":9639,"node":43,"role":"declaration","source":0,"src_end":13872,"src_start":13279},{"artifact":0,"gen_end":10627,"gen_start":10121,"node":44,"role":"declaration","source":0,"src_end":14491,"src_start":13874},{"artifact":0,"gen_end":11165,"gen_start":10627,"node":45,"role":"declaration","source":0,"src_end":15142,"src_start":14493},{"artifact":0,"gen_end":11567,"gen_start":11165,"node":46,"role":"declaration","source":0,"src_end":15611,"src_start":15144},{"artifact":0,"gen_end":11989,"gen_start":11567,"node":47,"role":"declaration","source":0,"src_end":16100,"src_start":15613},{"artifact":0,"gen_end":12425,"gen_start":11989,"node":48,"role":"declaration","source":0,"src_end":16603,"src_start":16102},{"artifact":0,"gen_end":12877,"gen_start":12425,"node":49,"role":"declaration","source":0,"src_end":17122,"src_start":16605},{"artifact":0,"gen_end":13179,"gen_start":12877,"node":50,"role":"declaration","source":0,"src_end":17508,"src_start":17124},{"artifact":0,"gen_end":13627,"gen_start":13179,"node":51,"role":"declaration","source":0,"src_end":18086,"src_start":17510},{"artifact":0,"gen_end":14113,"gen_start":13627,"node":52,"role":"declaration","source":0,"src_end":18641,"src_start":18088},{"artifact":0,"gen_end":14135,"gen_start":14113,"node":0,"role":"declaration","source":0,"src_end":18677,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":53,"role":"declaration","source":0,"src_end":18677,"src_start":0},{"artifact":1,"gen_end":1512,"gen_start":134,"node":54,"role":"declaration","source":0,"src_end":978,"src_start":158},{"artifact":1,"gen_end":1772,"gen_start":1512,"node":55,"role":"declaration","source":0,"src_end":1134,"src_start":980},{"artifact":1,"gen_end":2113,"gen_start":1772,"node":56,"role":"declaration","source":0,"src_end":1471,"src_start":1136},{"artifact":1,"gen_end":2452,"gen_start":2113,"node":57,"role":"declaration","source":0,"src_end":1730,"src_start":1473},{"artifact":1,"gen_end":2774,"gen_start":2452,"node":58,"role":"declaration","source":0,"src_end":2007,"src_start":1732},{"artifact":1,"gen_end":3051,"gen_start":2774,"node":59,"role":"declaration","source":0,"src_end":2249,"src_start":2009},{"artifact":1,"gen_end":3346,"gen_start":3051,"node":60,"role":"declaration","source":0,"src_end":2535,"src_start":2251},{"artifact":1,"gen_end":3624,"gen_start":3346,"node":61,"role":"declaration","source":0,"src_end":2783,"src_start":2537},{"artifact":1,"gen_end":3868,"gen_start":3624,"node":62,"role":"declaration","source":0,"src_end":2938,"src_start":2785},{"artifact":1,"gen_end":4144,"gen_start":3868,"node":63,"role":"declaration","source":0,"src_end":3245,"src_start":2940},{"artifact":1,"gen_end":4522,"gen_start":4144,"node":64,"role":"declaration","source":0,"src_end":3666,"src_start":3247},{"artifact":1,"gen_end":4900,"gen_start":4522,"node":65,"role":"declaration","source":0,"src_end":4074,"src_start":3668},{"artifact":1,"gen_end":5254,"gen_start":4900,"node":66,"role":"declaration","source":0,"src_end":4449,"src_start":4076},{"artifact":1,"gen_end":5626,"gen_start":5254,"node":67,"role":"declaration","source":0,"src_end":4853,"src_start":4451},{"artifact":1,"gen_end":5948,"gen_start":5626,"node":68,"role":"declaration","source":0,"src_end":5165,"src_start":4855},{"artifact":1,"gen_end":6274,"gen_start":5948,"node":69,"role":"declaration","source":0,"src_end":5482,"src_start":5167},{"artifact":1,"gen_end":6581,"gen_start":6274,"node":70,"role":"declaration","source":0,"src_end":5768,"src_start":5484},{"artifact":1,"gen_end":6829,"gen_start":6581,"node":71,"role":"declaration","source":0,"src_end":5987,"src_start":5770},{"artifact":1,"gen_end":7124,"gen_start":6829,"node":72,"role":"declaration","source":0,"src_end":6249,"src_start":5989},{"artifact":1,"gen_end":7413,"gen_start":7124,"node":73,"role":"declaration","source":0,"src_end":6505,"src_start":6251},{"artifact":1,"gen_end":7754,"gen_start":7413,"node":74,"role":"declaration","source":0,"src_end":6799,"src_start":6507},{"artifact":1,"gen_end":8157,"gen_start":7754,"node":75,"role":"declaration","source":0,"src_end":7157,"src_start":6801},{"artifact":1,"gen_end":8418,"gen_start":8157,"node":76,"role":"declaration","source":0,"src_end":7387,"src_start":7159},{"artifact":1,"gen_end":8673,"gen_start":8418,"node":77,"role":"declaration","source":0,"src_end":7611,"src_start":7389},{"artifact":1,"gen_end":8911,"gen_start":8673,"node":78,"role":"declaration","source":0,"src_end":7784,"src_start":7613},{"artifact":1,"gen_end":9132,"gen_start":8911,"node":79,"role":"declaration","source":0,"src_end":7942,"src_start":7786},{"artifact":1,"gen_end":9405,"gen_start":9132,"node":80,"role":"declaration","source":0,"src_end":8162,"src_start":7944},{"artifact":1,"gen_end":9687,"gen_start":9405,"node":81,"role":"declaration","source":0,"src_end":8447,"src_start":8164},{"artifact":1,"gen_end":9977,"gen_start":9687,"node":82,"role":"declaration","source":0,"src_end":8740,"src_start":8449},{"artifact":1,"gen_end":10257,"gen_start":9977,"node":83,"role":"declaration","source":0,"src_end":9023,"src_start":8742},{"artifact":1,"gen_end":10613,"gen_start":10257,"node":84,"role":"declaration","source":0,"src_end":9316,"src_start":9025},{"artifact":1,"gen_end":10985,"gen_start":10613,"node":85,"role":"declaration","source":0,"src_end":9589,"src_start":9318},{"artifact":1,"gen_end":11228,"gen_start":10985,"node":86,"role":"declaration","source":0,"src_end":9742,"src_start":9591},{"artifact":1,"gen_end":11579,"gen_start":11228,"node":87,"role":"declaration","source":0,"src_end":10010,"src_start":9744},{"artifact":1,"gen_end":11927,"gen_start":11579,"node":88,"role":"declaration","source":0,"src_end":10276,"src_start":10012},{"artifact":1,"gen_end":12247,"gen_start":11927,"node":89,"role":"declaration","source":0,"src_end":10650,"src_start":10278},{"artifact":1,"gen_end":12571,"gen_start":12247,"node":90,"role":"declaration","source":0,"src_end":11027,"src_start":10652},{"artifact":1,"gen_end":12900,"gen_start":12571,"node":91,"role":"declaration","source":0,"src_end":11420,"src_start":11029},{"artifact":1,"gen_end":13266,"gen_start":12900,"node":92,"role":"declaration","source":0,"src_end":11838,"src_start":11422},{"artifact":1,"gen_end":13689,"gen_start":13266,"node":93,"role":"declaration","source":0,"src_end":12225,"src_start":11840},{"artifact":1,"gen_end":14252,"gen_start":13689,"node":94,"role":"declaration","source":0,"src_end":12756,"src_start":12227},{"artifact":1,"gen_end":14807,"gen_start":14252,"node":95,"role":"declaration","source":0,"src_end":13277,"src_start":12758},{"artifact":1,"gen_end":15394,"gen_start":14807,"node":96,"role":"declaration","source":0,"src_end":13872,"src_start":13279},{"artifact":1,"gen_end":16005,"gen_start":15394,"node":97,"role":"declaration","source":0,"src_end":14491,"src_start":13874},{"artifact":1,"gen_end":16648,"gen_start":16005,"node":98,"role":"declaration","source":0,"src_end":15142,"src_start":14493},{"artifact":1,"gen_end":17155,"gen_start":16648,"node":99,"role":"declaration","source":0,"src_end":15611,"src_start":15144},{"artifact":1,"gen_end":17682,"gen_start":17155,"node":100,"role":"declaration","source":0,"src_end":16100,"src_start":15613},{"artifact":1,"gen_end":18223,"gen_start":17682,"node":101,"role":"declaration","source":0,"src_end":16603,"src_start":16102},{"artifact":1,"gen_end":18780,"gen_start":18223,"node":102,"role":"declaration","source":0,"src_end":17122,"src_start":16605},{"artifact":1,"gen_end":19198,"gen_start":18780,"node":103,"role":"declaration","source":0,"src_end":17508,"src_start":17124},{"artifact":1,"gen_end":19846,"gen_start":19198,"node":104,"role":"declaration","source":0,"src_end":18086,"src_start":17510},{"artifact":1,"gen_end":20478,"gen_start":19846,"node":105,"role":"declaration","source":0,"src_end":18641,"src_start":18088},{"artifact":1,"gen_end":20493,"gen_start":20478,"node":53,"role":"declaration","source":0,"src_end":18677,"src_start":0}],"module":"Main","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"},{"id":40,"kind":"semantic-declaration"},{"id":41,"kind":"semantic-declaration"},{"id":42,"kind":"semantic-declaration"},{"id":43,"kind":"semantic-declaration"},{"id":44,"kind":"semantic-declaration"},{"id":45,"kind":"semantic-declaration"},{"id":46,"kind":"semantic-declaration"},{"id":47,"kind":"semantic-declaration"},{"id":48,"kind":"semantic-declaration"},{"id":49,"kind":"semantic-declaration"},{"id":50,"kind":"semantic-declaration"},{"id":51,"kind":"semantic-declaration"},{"id":52,"kind":"semantic-declaration"},{"id":53,"kind":"semantic-latex-module"},{"id":54,"kind":"semantic-declaration"},{"id":55,"kind":"semantic-declaration"},{"id":56,"kind":"semantic-declaration"},{"id":57,"kind":"semantic-declaration"},{"id":58,"kind":"semantic-declaration"},{"id":59,"kind":"semantic-declaration"},{"id":60,"kind":"semantic-declaration"},{"id":61,"kind":"semantic-declaration"},{"id":62,"kind":"semantic-declaration"},{"id":63,"kind":"semantic-declaration"},{"id":64,"kind":"semantic-declaration"},{"id":65,"kind":"semantic-declaration"},{"id":66,"kind":"semantic-declaration"},{"id":67,"kind":"semantic-declaration"},{"id":68,"kind":"semantic-declaration"},{"id":69,"kind":"semantic-declaration"},{"id":70,"kind":"semantic-declaration"},{"id":71,"kind":"semantic-declaration"},{"id":72,"kind":"semantic-declaration"},{"id":73,"kind":"semantic-declaration"},{"id":74,"kind":"semantic-declaration"},{"id":75,"kind":"semantic-declaration"},{"id":76,"kind":"semantic-declaration"},{"id":77,"kind":"semantic-declaration"},{"id":78,"kind":"semantic-declaration"},{"id":79,"kind":"semantic-declaration"},{"id":80,"kind":"semantic-declaration"},{"id":81,"kind":"semantic-declaration"},{"id":82,"kind":"semantic-declaration"},{"id":83,"kind":"semantic-declaration"},{"id":84,"kind":"semantic-declaration"},{"id":85,"kind":"semantic-declaration"},{"id":86,"kind":"semantic-declaration"},{"id":87,"kind":"semantic-declaration"},{"id":88,"kind":"semantic-declaration"},{"id":89,"kind":"semantic-declaration"},{"id":90,"kind":"semantic-declaration"},{"id":91,"kind":"semantic-declaration"},{"id":92,"kind":"semantic-declaration"},{"id":93,"kind":"semantic-declaration"},{"id":94,"kind":"semantic-declaration"},{"id":95,"kind":"semantic-declaration"},{"id":96,"kind":"semantic-declaration"},{"id":97,"kind":"semantic-declaration"},{"id":98,"kind":"semantic-declaration"},{"id":99,"kind":"semantic-declaration"},{"id":100,"kind":"semantic-declaration"},{"id":101,"kind":"semantic-declaration"},{"id":102,"kind":"semantic-declaration"},{"id":103,"kind":"semantic-declaration"},{"id":104,"kind":"semantic-declaration"},{"id":105,"kind":"semantic-declaration"}],"semantic_id":"0f6d359d50d0d086f47af2c0608b2e13253fe1d63025e4c861d89779908d9890","source_id":"282120f2cc10752f544cd95f7085068b83e51e26ba43cddd8e064dfd84869823","sources":[{"id":0,"kind":"file","path":"src/Main.lex.tex","sha256":"75d9370d719bc1634123f79db391070eda6061e88c461626129911161efa63a9"}],"spec":"lexlean/source-map/1"} diff --git a/examples/collections/expected/build/maps/Collections/Measure.map.json b/examples/collections/expected/build/maps/Collections/Measure.map.json index 32c58a169..317348774 100644 --- a/examples/collections/expected/build/maps/Collections/Measure.map.json +++ b/examples/collections/expected/build/maps/Collections/Measure.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/Collections/Measure.lean"},{"id":1,"kind":"tex","path":"modules/Collections/Measure.tex"}],"mappings":[{"artifact":0,"gen_end":314,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":550,"src_start":0},{"artifact":0,"gen_end":476,"gen_start":314,"node":1,"role":"declaration","source":0,"src_end":355,"src_start":138},{"artifact":0,"gen_end":544,"gen_start":476,"node":2,"role":"declaration","source":0,"src_end":514,"src_start":357},{"artifact":0,"gen_end":569,"gen_start":544,"node":0,"role":"declaration","source":0,"src_end":550,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":3,"role":"declaration","source":0,"src_end":550,"src_start":0},{"artifact":1,"gen_end":483,"gen_start":134,"node":4,"role":"declaration","source":0,"src_end":355,"src_start":138},{"artifact":1,"gen_end":699,"gen_start":483,"node":5,"role":"declaration","source":0,"src_end":514,"src_start":357},{"artifact":1,"gen_end":714,"gen_start":699,"node":3,"role":"declaration","source":0,"src_end":550,"src_start":0}],"module":"Measure","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-latex-module"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"}],"semantic_id":"9962d043362f4a167c67517d483f0f2432f8ee9485a2eb221e128b9491113c00","source_id":"f9fc0327d1cd85598a9abd472c45532aec5e6da8e748cf96072d3c5e098ab9b6","sources":[{"id":0,"kind":"file","path":"src/Measure.lex.tex","sha256":"227f5dad1ec06da3d2759ffa2ab2d4908aa5a02880ca0219bc46169089be9081"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/Collections/Measure.lean"},{"id":1,"kind":"tex","path":"modules/Collections/Measure.tex"}],"mappings":[{"artifact":0,"gen_end":314,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":550,"src_start":0},{"artifact":0,"gen_end":476,"gen_start":314,"node":1,"role":"declaration","source":0,"src_end":355,"src_start":138},{"artifact":0,"gen_end":544,"gen_start":476,"node":2,"role":"declaration","source":0,"src_end":514,"src_start":357},{"artifact":0,"gen_end":569,"gen_start":544,"node":0,"role":"declaration","source":0,"src_end":550,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":3,"role":"declaration","source":0,"src_end":550,"src_start":0},{"artifact":1,"gen_end":483,"gen_start":134,"node":4,"role":"declaration","source":0,"src_end":355,"src_start":138},{"artifact":1,"gen_end":699,"gen_start":483,"node":5,"role":"declaration","source":0,"src_end":514,"src_start":357},{"artifact":1,"gen_end":714,"gen_start":699,"node":3,"role":"declaration","source":0,"src_end":550,"src_start":0}],"module":"Measure","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-latex-module"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"}],"semantic_id":"0f6d359d50d0d086f47af2c0608b2e13253fe1d63025e4c861d89779908d9890","source_id":"282120f2cc10752f544cd95f7085068b83e51e26ba43cddd8e064dfd84869823","sources":[{"id":0,"kind":"file","path":"src/Measure.lex.tex","sha256":"227f5dad1ec06da3d2759ffa2ab2d4908aa5a02880ca0219bc46169089be9081"}],"spec":"lexlean/source-map/1"} diff --git a/examples/collections/expected/build/maps/Collections/Tables.map.json b/examples/collections/expected/build/maps/Collections/Tables.map.json index b49fc1e9f..4e37c82d2 100644 --- a/examples/collections/expected/build/maps/Collections/Tables.map.json +++ b/examples/collections/expected/build/maps/Collections/Tables.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/Collections/Tables.lean"},{"id":1,"kind":"tex","path":"modules/Collections/Tables.tex"}],"mappings":[{"artifact":0,"gen_end":280,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":1620,"src_start":0},{"artifact":0,"gen_end":490,"gen_start":280,"node":1,"role":"declaration","source":0,"src_end":374,"src_start":115},{"artifact":0,"gen_end":814,"gen_start":490,"node":2,"role":"declaration","source":0,"src_end":764,"src_start":376},{"artifact":0,"gen_end":1035,"gen_start":814,"node":3,"role":"declaration","source":0,"src_end":1175,"src_start":766},{"artifact":0,"gen_end":1170,"gen_start":1035,"node":4,"role":"declaration","source":0,"src_end":1382,"src_start":1177},{"artifact":0,"gen_end":1304,"gen_start":1170,"node":5,"role":"declaration","source":0,"src_end":1584,"src_start":1384},{"artifact":0,"gen_end":1328,"gen_start":1304,"node":0,"role":"declaration","source":0,"src_end":1620,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":6,"role":"declaration","source":0,"src_end":1620,"src_start":0},{"artifact":1,"gen_end":608,"gen_start":134,"node":7,"role":"declaration","source":0,"src_end":374,"src_start":115},{"artifact":1,"gen_end":1273,"gen_start":608,"node":8,"role":"declaration","source":0,"src_end":764,"src_start":376},{"artifact":1,"gen_end":1631,"gen_start":1273,"node":9,"role":"declaration","source":0,"src_end":1175,"src_start":766},{"artifact":1,"gen_end":1953,"gen_start":1631,"node":10,"role":"declaration","source":0,"src_end":1382,"src_start":1177},{"artifact":1,"gen_end":2272,"gen_start":1953,"node":11,"role":"declaration","source":0,"src_end":1584,"src_start":1384},{"artifact":1,"gen_end":2287,"gen_start":2272,"node":6,"role":"declaration","source":0,"src_end":1620,"src_start":0}],"module":"Tables","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-latex-module"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"}],"semantic_id":"9962d043362f4a167c67517d483f0f2432f8ee9485a2eb221e128b9491113c00","source_id":"f9fc0327d1cd85598a9abd472c45532aec5e6da8e748cf96072d3c5e098ab9b6","sources":[{"id":0,"kind":"file","path":"src/Tables.lex.tex","sha256":"f5e7c1b714c8eee02fedacfb367c7e64dc01664eaa41fb48f4e42ae37aef43f0"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/Collections/Tables.lean"},{"id":1,"kind":"tex","path":"modules/Collections/Tables.tex"}],"mappings":[{"artifact":0,"gen_end":280,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":1620,"src_start":0},{"artifact":0,"gen_end":490,"gen_start":280,"node":1,"role":"declaration","source":0,"src_end":374,"src_start":115},{"artifact":0,"gen_end":814,"gen_start":490,"node":2,"role":"declaration","source":0,"src_end":764,"src_start":376},{"artifact":0,"gen_end":1035,"gen_start":814,"node":3,"role":"declaration","source":0,"src_end":1175,"src_start":766},{"artifact":0,"gen_end":1170,"gen_start":1035,"node":4,"role":"declaration","source":0,"src_end":1382,"src_start":1177},{"artifact":0,"gen_end":1304,"gen_start":1170,"node":5,"role":"declaration","source":0,"src_end":1584,"src_start":1384},{"artifact":0,"gen_end":1328,"gen_start":1304,"node":0,"role":"declaration","source":0,"src_end":1620,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":6,"role":"declaration","source":0,"src_end":1620,"src_start":0},{"artifact":1,"gen_end":608,"gen_start":134,"node":7,"role":"declaration","source":0,"src_end":374,"src_start":115},{"artifact":1,"gen_end":1273,"gen_start":608,"node":8,"role":"declaration","source":0,"src_end":764,"src_start":376},{"artifact":1,"gen_end":1631,"gen_start":1273,"node":9,"role":"declaration","source":0,"src_end":1175,"src_start":766},{"artifact":1,"gen_end":1953,"gen_start":1631,"node":10,"role":"declaration","source":0,"src_end":1382,"src_start":1177},{"artifact":1,"gen_end":2272,"gen_start":1953,"node":11,"role":"declaration","source":0,"src_end":1584,"src_start":1384},{"artifact":1,"gen_end":2287,"gen_start":2272,"node":6,"role":"declaration","source":0,"src_end":1620,"src_start":0}],"module":"Tables","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-latex-module"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"}],"semantic_id":"0f6d359d50d0d086f47af2c0608b2e13253fe1d63025e4c861d89779908d9890","source_id":"282120f2cc10752f544cd95f7085068b83e51e26ba43cddd8e064dfd84869823","sources":[{"id":0,"kind":"file","path":"src/Tables.lex.tex","sha256":"f5e7c1b714c8eee02fedacfb367c7e64dc01664eaa41fb48f4e42ae37aef43f0"}],"spec":"lexlean/source-map/1"} diff --git a/examples/collections/expected/verify/audit/LexLeanAudit.A9962d043362f4a167c67517d483f0f24.Collections.Main.lean b/examples/collections/expected/verify/audit/LexLeanAudit.A0f6d359d50d0d086f47af2c0608b2e13.Collections.Main.lean similarity index 100% rename from examples/collections/expected/verify/audit/LexLeanAudit.A9962d043362f4a167c67517d483f0f24.Collections.Main.lean rename to examples/collections/expected/verify/audit/LexLeanAudit.A0f6d359d50d0d086f47af2c0608b2e13.Collections.Main.lean diff --git a/examples/collections/expected/verify/audit/LexLeanAudit.A0f6d359d50d0d086f47af2c0608b2e13.Collections.Main.process.json b/examples/collections/expected/verify/audit/LexLeanAudit.A0f6d359d50d0d086f47af2c0608b2e13.Collections.Main.process.json new file mode 100644 index 000000000..dcd609a9c --- /dev/null +++ b/examples/collections/expected/verify/audit/LexLeanAudit.A0f6d359d50d0d086f47af2c0608b2e13.Collections.Main.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A0f6d359d50d0d086f47af2c0608b2e13.Collections.Main.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A0f6d359d50d0d086f47af2c0608b2e13.Collections.Main","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Collections.Main.ancestor_closure' depends on axioms: [propext]\n'Collections.Main.ancestors' depends on axioms: [propext]\n'Collections.Main.bounded_iteration' does not depend on any axioms\n'Collections.Main.call_order' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Collections.Main.cycle_has_no_order' does not depend on any axioms\n'Collections.Main.family' does not depend on any axioms\n'Collections.Main.key_order_bool' depends on axioms: [propext]\n'Collections.Main.key_order_int' does not depend on any axioms\n'Collections.Main.key_order_int16' does not depend on any axioms\n'Collections.Main.key_order_int32' does not depend on any axioms\n'Collections.Main.key_order_int64' does not depend on any axioms\n'Collections.Main.key_order_int8' does not depend on any axioms\n'Collections.Main.key_order_nat' does not depend on any axioms\n'Collections.Main.key_order_product' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Collections.Main.key_order_string' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Collections.Main.key_order_uint16' does not depend on any axioms\n'Collections.Main.key_order_uint32' does not depend on any axioms\n'Collections.Main.key_order_uint64' does not depend on any axioms\n'Collections.Main.key_order_uint8' does not depend on any axioms\n'Collections.Main.op_graph_reachable' depends on axioms: [propext]\n'Collections.Main.op_graph_successors' does not depend on any axioms\n'Collections.Main.op_graph_successors_absent' does not depend on any axioms\n'Collections.Main.op_graph_topological' does not depend on any axioms\n'Collections.Main.op_iterate_until_exhausted' does not depend on any axioms\n'Collections.Main.op_iterate_until_fixed_point' does not depend on any axioms\n'Collections.Main.op_iterate_zero' does not depend on any axioms\n'Collections.Main.op_list_fold' does not depend on any axioms\n'Collections.Main.op_map_contains' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Collections.Main.op_map_entries' does not depend on any axioms\n'Collections.Main.op_map_fold' does not depend on any axioms\n'Collections.Main.op_map_insert' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Collections.Main.op_map_insert_replaces' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Collections.Main.op_map_keys' does not depend on any axioms\n'Collections.Main.op_map_lookup' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Collections.Main.op_map_lookup_absent' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Collections.Main.op_map_remove' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Collections.Main.op_map_remove_absent' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Collections.Main.op_map_size' does not depend on any axioms\n'Collections.Main.op_map_values' does not depend on any axioms\n'Collections.Main.op_set_contains' does not depend on any axioms\n'Collections.Main.op_set_difference' does not depend on any axioms\n'Collections.Main.op_set_elements' does not depend on any axioms\n'Collections.Main.op_set_fold' does not depend on any axioms\n'Collections.Main.op_set_insert' does not depend on any axioms\n'Collections.Main.op_set_intersection' does not depend on any axioms\n'Collections.Main.op_set_remove' does not depend on any axioms\n'Collections.Main.op_set_size' does not depend on any axioms\n'Collections.Main.op_set_union' does not depend on any axioms\n'Collections.Main.parse_reaches_lex' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Collections.Main.reordered_literals_agree' does not depend on any axioms\n'Collections.Main.table_lookup' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Collections.Main.table_slots' depends on axioms: [propext, Classical.choice, Quot.sound]\n","stdout_sha256":"3d77f9bcb113d76b5e385245365c454f35d99c86cb74e7dfeb18ce445b9a81e2","tool":"lean"} diff --git a/examples/collections/expected/verify/audit/LexLeanAudit.A9962d043362f4a167c67517d483f0f24.Collections.Measure.lean b/examples/collections/expected/verify/audit/LexLeanAudit.A0f6d359d50d0d086f47af2c0608b2e13.Collections.Measure.lean similarity index 100% rename from examples/collections/expected/verify/audit/LexLeanAudit.A9962d043362f4a167c67517d483f0f24.Collections.Measure.lean rename to examples/collections/expected/verify/audit/LexLeanAudit.A0f6d359d50d0d086f47af2c0608b2e13.Collections.Measure.lean diff --git a/examples/collections/expected/verify/audit/LexLeanAudit.A0f6d359d50d0d086f47af2c0608b2e13.Collections.Measure.process.json b/examples/collections/expected/verify/audit/LexLeanAudit.A0f6d359d50d0d086f47af2c0608b2e13.Collections.Measure.process.json new file mode 100644 index 000000000..005d59661 --- /dev/null +++ b/examples/collections/expected/verify/audit/LexLeanAudit.A0f6d359d50d0d086f47af2c0608b2e13.Collections.Measure.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A0f6d359d50d0d086f47af2c0608b2e13.Collections.Measure.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A0f6d359d50d0d086f47af2c0608b2e13.Collections.Measure","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Collections.Measure.distinctNames' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Collections.Measure.distinct_names' depends on axioms: [propext, Classical.choice, Quot.sound]\n","stdout_sha256":"9a0b51347cf1806a3c5870dffe83294b16325a9e46b47bba1233e7e3fb48209e","tool":"lean"} diff --git a/examples/collections/expected/verify/audit/LexLeanAudit.A9962d043362f4a167c67517d483f0f24.Collections.Tables.lean b/examples/collections/expected/verify/audit/LexLeanAudit.A0f6d359d50d0d086f47af2c0608b2e13.Collections.Tables.lean similarity index 100% rename from examples/collections/expected/verify/audit/LexLeanAudit.A9962d043362f4a167c67517d483f0f24.Collections.Tables.lean rename to examples/collections/expected/verify/audit/LexLeanAudit.A0f6d359d50d0d086f47af2c0608b2e13.Collections.Tables.lean diff --git a/examples/collections/expected/verify/audit/LexLeanAudit.A0f6d359d50d0d086f47af2c0608b2e13.Collections.Tables.process.json b/examples/collections/expected/verify/audit/LexLeanAudit.A0f6d359d50d0d086f47af2c0608b2e13.Collections.Tables.process.json new file mode 100644 index 000000000..6c1e31f44 --- /dev/null +++ b/examples/collections/expected/verify/audit/LexLeanAudit.A0f6d359d50d0d086f47af2c0608b2e13.Collections.Tables.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A0f6d359d50d0d086f47af2c0608b2e13.Collections.Tables.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A0f6d359d50d0d086f47af2c0608b2e13.Collections.Tables","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Collections.Tables.buildTable' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Collections.Tables.callGraph' does not depend on any axioms\n'Collections.Tables.callOrder' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Collections.Tables.declare' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Collections.Tables.reachableFromParse' depends on axioms: [propext, Classical.choice, Quot.sound]\n","stdout_sha256":"b5887435160be7412b795a6f5a33d36ac682a409c841bd95a8d98982df4173e9","tool":"lean"} diff --git a/examples/collections/expected/verify/audit/LexLeanAudit.A9962d043362f4a167c67517d483f0f24.LexLeanRuntime.Collections.lean b/examples/collections/expected/verify/audit/LexLeanAudit.A0f6d359d50d0d086f47af2c0608b2e13.LexLeanRuntime.Collections.lean similarity index 100% rename from examples/collections/expected/verify/audit/LexLeanAudit.A9962d043362f4a167c67517d483f0f24.LexLeanRuntime.Collections.lean rename to examples/collections/expected/verify/audit/LexLeanAudit.A0f6d359d50d0d086f47af2c0608b2e13.LexLeanRuntime.Collections.lean diff --git a/examples/collections/expected/verify/audit/LexLeanAudit.A0f6d359d50d0d086f47af2c0608b2e13.LexLeanRuntime.Collections.process.json b/examples/collections/expected/verify/audit/LexLeanAudit.A0f6d359d50d0d086f47af2c0608b2e13.LexLeanRuntime.Collections.process.json new file mode 100644 index 000000000..ca7fb4454 --- /dev/null +++ b/examples/collections/expected/verify/audit/LexLeanAudit.A0f6d359d50d0d086f47af2c0608b2e13.LexLeanRuntime.Collections.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A0f6d359d50d0d086f47af2c0608b2e13.LexLeanRuntime.Collections.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A0f6d359d50d0d086f47af2c0608b2e13.LexLeanRuntime.Collections","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanCollections.Key' does not depend on any axioms\n'LexLeanCollections.Key.casesOn' does not depend on any axioms\n'LexLeanCollections.Key.compare' does not depend on any axioms\n'LexLeanCollections.Key.ctorIdx' does not depend on any axioms\n'LexLeanCollections.Key.mk._flat_ctor' does not depend on any axioms\n'LexLeanCollections.Key.mk.noConfusion' does not depend on any axioms\n'LexLeanCollections.Key.noConfusion' does not depend on any axioms\n'LexLeanCollections.Key.noConfusionType' does not depend on any axioms\n'LexLeanCollections.Key.recOn' does not depend on any axioms\n'LexLeanCollections.compareCodes' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._f' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._sunfold' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._unsafe_rec' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.match_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.match_4' does not depend on any axioms\n'LexLeanCollections.containsElement' does not depend on any axioms\n'LexLeanCollections.containsElement._f' does not depend on any axioms\n'LexLeanCollections.containsElement._sunfold' does not depend on any axioms\n'LexLeanCollections.containsElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.graphNodes' does not depend on any axioms\n'LexLeanCollections.graphReachable' depends on axioms: [propext]\n'LexLeanCollections.graphSuccessors' does not depend on any axioms\n'LexLeanCollections.graphTopological' does not depend on any axioms\n'LexLeanCollections.insertElement' does not depend on any axioms\n'LexLeanCollections.insertElement._f' does not depend on any axioms\n'LexLeanCollections.insertElement._sunfold' does not depend on any axioms\n'LexLeanCollections.insertElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.insertElement.match_1' does not depend on any axioms\n'LexLeanCollections.insertEntry' does not depend on any axioms\n'LexLeanCollections.insertEntry._f' does not depend on any axioms\n'LexLeanCollections.insertEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.insertEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.insertEntry.match_1' does not depend on any axioms\n'LexLeanCollections.insertEntry.match_3' does not depend on any axioms\n'LexLeanCollections.instKeyBool' depends on axioms: [propext]\n'LexLeanCollections.instKeyInt' does not depend on any axioms\n'LexLeanCollections.instKeyInt16' does not depend on any axioms\n'LexLeanCollections.instKeyInt32' does not depend on any axioms\n'LexLeanCollections.instKeyInt64' does not depend on any axioms\n'LexLeanCollections.instKeyInt8' does not depend on any axioms\n'LexLeanCollections.instKeyNat' does not depend on any axioms\n'LexLeanCollections.instKeyProd' depends on axioms: [propext]\n'LexLeanCollections.instKeyString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanCollections.instKeyUInt16' does not depend on any axioms\n'LexLeanCollections.instKeyUInt32' does not depend on any axioms\n'LexLeanCollections.instKeyUInt64' does not depend on any axioms\n'LexLeanCollections.instKeyUInt8' does not depend on any axioms\n'LexLeanCollections.iterate' does not depend on any axioms\n'LexLeanCollections.iterate._f' does not depend on any axioms\n'LexLeanCollections.iterate._sunfold' does not depend on any axioms\n'LexLeanCollections.iterate._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.iterate.match_1' does not depend on any axioms\n'LexLeanCollections.iterateUntil' does not depend on any axioms\n'LexLeanCollections.iterateUntil._f' does not depend on any axioms\n'LexLeanCollections.iterateUntil._sunfold' does not depend on any axioms\n'LexLeanCollections.iterateUntil._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.iterateUntil.match_1' does not depend on any axioms\n'LexLeanCollections.lessThan' depends on axioms: [propext]\n'LexLeanCollections.lessThan._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.lessThan.match_1' depends on axioms: [propext]\n'LexLeanCollections.listFold' does not depend on any axioms\n'LexLeanCollections.lookupEntry' does not depend on any axioms\n'LexLeanCollections.lookupEntry._f' does not depend on any axioms\n'LexLeanCollections.lookupEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.lookupEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.mapContains' does not depend on any axioms\n'LexLeanCollections.mapEntries' does not depend on any axioms\n'LexLeanCollections.mapFold' does not depend on any axioms\n'LexLeanCollections.mapInsert' does not depend on any axioms\n'LexLeanCollections.mapKeys' does not depend on any axioms\n'LexLeanCollections.mapLookup' does not depend on any axioms\n'LexLeanCollections.mapRemove' does not depend on any axioms\n'LexLeanCollections.mapSize' does not depend on any axioms\n'LexLeanCollections.mapValues' does not depend on any axioms\n'LexLeanCollections.reachableFrom' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._f' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._sunfold' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._unsafe_rec' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom.match_1' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom.match_4' does not depend on any axioms\n'LexLeanCollections.removeElement' does not depend on any axioms\n'LexLeanCollections.removeElement._f' does not depend on any axioms\n'LexLeanCollections.removeElement._sunfold' does not depend on any axioms\n'LexLeanCollections.removeElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.removeEntry' does not depend on any axioms\n'LexLeanCollections.removeEntry._f' does not depend on any axioms\n'LexLeanCollections.removeEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.removeEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.setContains' does not depend on any axioms\n'LexLeanCollections.setDifference' does not depend on any axioms\n'LexLeanCollections.setElements' does not depend on any axioms\n'LexLeanCollections.setFold' does not depend on any axioms\n'LexLeanCollections.setInsert' does not depend on any axioms\n'LexLeanCollections.setIntersection' does not depend on any axioms\n'LexLeanCollections.setRemove' does not depend on any axioms\n'LexLeanCollections.setSize' does not depend on any axioms\n'LexLeanCollections.setUnion' does not depend on any axioms\n'LexLeanCollections.topological' does not depend on any axioms\n'LexLeanCollections.topological._f' does not depend on any axioms\n'LexLeanCollections.topological._sunfold' does not depend on any axioms\n'LexLeanCollections.topological._unsafe_rec' does not depend on any axioms\n","stdout_sha256":"b75acc0e99e23684c3cc876eacbfc93f47161cfee8a7440df17fa45f321c8c6a","tool":"lean"} diff --git a/examples/collections/expected/verify/audit/LexLeanAudit.A9962d043362f4a167c67517d483f0f24.LexLeanRuntime.Portable.lean b/examples/collections/expected/verify/audit/LexLeanAudit.A0f6d359d50d0d086f47af2c0608b2e13.LexLeanRuntime.Portable.lean similarity index 100% rename from examples/collections/expected/verify/audit/LexLeanAudit.A9962d043362f4a167c67517d483f0f24.LexLeanRuntime.Portable.lean rename to examples/collections/expected/verify/audit/LexLeanAudit.A0f6d359d50d0d086f47af2c0608b2e13.LexLeanRuntime.Portable.lean diff --git a/examples/collections/expected/verify/audit/LexLeanAudit.A0f6d359d50d0d086f47af2c0608b2e13.LexLeanRuntime.Portable.process.json b/examples/collections/expected/verify/audit/LexLeanAudit.A0f6d359d50d0d086f47af2c0608b2e13.LexLeanRuntime.Portable.process.json new file mode 100644 index 000000000..13f3bde15 --- /dev/null +++ b/examples/collections/expected/verify/audit/LexLeanAudit.A0f6d359d50d0d086f47af2c0608b2e13.LexLeanRuntime.Portable.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A0f6d359d50d0d086f47af2c0608b2e13.LexLeanRuntime.Portable.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A0f6d359d50d0d086f47af2c0608b2e13.LexLeanRuntime.Portable","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanRuntime.Appendable' does not depend on any axioms\n'LexLeanRuntime.Appendable.append' does not depend on any axioms\n'LexLeanRuntime.Appendable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Appendable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Appendable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Appendable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Appendable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Appendable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Appendable.recOn' does not depend on any axioms\n'LexLeanRuntime.Decimal' does not depend on any axioms\n'LexLeanRuntime.Decimal.casesOn' does not depend on any axioms\n'LexLeanRuntime.Decimal.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Decimal.format' does not depend on any axioms\n'LexLeanRuntime.Decimal.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Decimal.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Decimal.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Decimal.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Decimal.parse' does not depend on any axioms\n'LexLeanRuntime.Decimal.recOn' does not depend on any axioms\n'LexLeanRuntime.Fixed' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitAnd' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitNot' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitOr' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitXor' does not depend on any axioms\n'LexLeanRuntime.Fixed.casesOn' does not depend on any axioms\n'LexLeanRuntime.Fixed.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Fixed.fromInt' does not depend on any axioms\n'LexLeanRuntime.Fixed.maximum' does not depend on any axioms\n'LexLeanRuntime.Fixed.minimum' does not depend on any axioms\n'LexLeanRuntime.Fixed.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Fixed.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Fixed.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Fixed.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Fixed.recOn' does not depend on any axioms\n'LexLeanRuntime.Fixed.shiftLeft' does not depend on any axioms\n'LexLeanRuntime.Fixed.shiftRight' does not depend on any axioms\n'LexLeanRuntime.Fixed.toToMathInt' does not depend on any axioms\n'LexLeanRuntime.Indexable' does not depend on any axioms\n'LexLeanRuntime.Indexable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Indexable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Indexable.index' does not depend on any axioms\n'LexLeanRuntime.Indexable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Indexable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Indexable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Indexable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Indexable.recOn' does not depend on any axioms\n'LexLeanRuntime.Lengthable' does not depend on any axioms\n'LexLeanRuntime.Lengthable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Lengthable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Lengthable.length' does not depend on any axioms\n'LexLeanRuntime.Lengthable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Lengthable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Lengthable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Lengthable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Lengthable.recOn' does not depend on any axioms\n'LexLeanRuntime.Quotient' does not depend on any axioms\n'LexLeanRuntime.Quotient.casesOn' does not depend on any axioms\n'LexLeanRuntime.Quotient.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Quotient.isZero' does not depend on any axioms\n'LexLeanRuntime.Quotient.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Quotient.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Quotient.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Quotient.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Quotient.quotient' does not depend on any axioms\n'LexLeanRuntime.Quotient.recOn' does not depend on any axioms\n'LexLeanRuntime.Quotient.remainder' does not depend on any axioms\n'LexLeanRuntime.Sliceable' does not depend on any axioms\n'LexLeanRuntime.Sliceable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Sliceable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Sliceable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Sliceable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Sliceable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Sliceable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Sliceable.recOn' does not depend on any axioms\n'LexLeanRuntime.Sliceable.slice' does not depend on any axioms\n'LexLeanRuntime.ToMathInt' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.casesOn' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.noConfusion' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.recOn' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.toInt' does not depend on any axioms\n'LexLeanRuntime.append' does not depend on any axioms\n'LexLeanRuntime.bitAnd' does not depend on any axioms\n'LexLeanRuntime.bitNot' does not depend on any axioms\n'LexLeanRuntime.bitOr' does not depend on any axioms\n'LexLeanRuntime.bitXor' does not depend on any axioms\n'LexLeanRuntime.checkedAdd' does not depend on any axioms\n'LexLeanRuntime.checkedAddInt64' does not depend on any axioms\n'LexLeanRuntime.checkedConvert' does not depend on any axioms\n'LexLeanRuntime.checkedFromInt' does not depend on any axioms\n'LexLeanRuntime.checkedMultiply' does not depend on any axioms\n'LexLeanRuntime.checkedMultiplyInt64' does not depend on any axioms\n'LexLeanRuntime.checkedMultiplyInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.checkedNegate' does not depend on any axioms\n'LexLeanRuntime.checkedNegateInt64' does not depend on any axioms\n'LexLeanRuntime.checkedQuotient' does not depend on any axioms\n'LexLeanRuntime.checkedQuotientInt64' does not depend on any axioms\n'LexLeanRuntime.checkedSubtract' does not depend on any axioms\n'LexLeanRuntime.checkedSubtractInt64' does not depend on any axioms\n'LexLeanRuntime.compareBytes' depends on axioms: [propext]\n'LexLeanRuntime.divideMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._f' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._sunfold' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.equal' does not depend on any axioms\n'LexLeanRuntime.formatDecimal' does not depend on any axioms\n'LexLeanRuntime.index' does not depend on any axioms\n'LexLeanRuntime.instAppendableByteArray' does not depend on any axioms\n'LexLeanRuntime.instAppendableList' does not depend on any axioms\n'LexLeanRuntime.instDecimalInt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instDecimalInt.match_1' does not depend on any axioms\n'LexLeanRuntime.instDecimalOfFixedOfToString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instFixedInt16' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt32' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt64' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt8' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt16' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt32' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt64' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt8' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instIndexableByteArrayUInt8' does not depend on any axioms\n'LexLeanRuntime.instIndexableList' does not depend on any axioms\n'LexLeanRuntime.instLengthableByteArray' does not depend on any axioms\n'LexLeanRuntime.instLengthableList' does not depend on any axioms\n'LexLeanRuntime.instLengthableString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instQuotientInt' does not depend on any axioms\n'LexLeanRuntime.instQuotientNat' does not depend on any axioms\n'LexLeanRuntime.instSliceableByteArray' does not depend on any axioms\n'LexLeanRuntime.instSliceableList' does not depend on any axioms\n'LexLeanRuntime.instToMathIntInt' does not depend on any axioms\n'LexLeanRuntime.join' depends on axioms: [propext]\n'LexLeanRuntime.length' does not depend on any axioms\n'LexLeanRuntime.listIndex' does not depend on any axioms\n'LexLeanRuntime.listIndex._f' does not depend on any axioms\n'LexLeanRuntime.listIndex._sunfold' does not depend on any axioms\n'LexLeanRuntime.listIndex._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.listIndex.match_1' does not depend on any axioms\n'LexLeanRuntime.magnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.multiply' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._f' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._sunfold' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.negate' does not depend on any axioms\n'LexLeanRuntime.parseDecimal' does not depend on any axioms\n'LexLeanRuntime.quotient' does not depend on any axioms\n'LexLeanRuntime.remainder' does not depend on any axioms\n'LexLeanRuntime.shiftLeft' does not depend on any axioms\n'LexLeanRuntime.shiftRight' does not depend on any axioms\n'LexLeanRuntime.signedMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.slice' does not depend on any axioms\n'LexLeanRuntime.splitExact' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.subtract' does not depend on any axioms\n'LexLeanRuntime.utf8Decode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.utf8Encode' does not depend on any axioms\n","stdout_sha256":"73fea1d9e9e9f0a2f1363b9f284eeeb9e434430e9fa910260b9526bad864641e","tool":"lean"} diff --git a/examples/collections/expected/verify/audit/LexLeanAudit.A9962d043362f4a167c67517d483f0f24.Collections.Main.process.json b/examples/collections/expected/verify/audit/LexLeanAudit.A9962d043362f4a167c67517d483f0f24.Collections.Main.process.json deleted file mode 100644 index 9b1254498..000000000 --- a/examples/collections/expected/verify/audit/LexLeanAudit.A9962d043362f4a167c67517d483f0f24.Collections.Main.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A9962d043362f4a167c67517d483f0f24.Collections.Main.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A9962d043362f4a167c67517d483f0f24.Collections.Main","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Collections.Main.ancestor_closure' depends on axioms: [propext]\n'Collections.Main.ancestors' depends on axioms: [propext]\n'Collections.Main.bounded_iteration' does not depend on any axioms\n'Collections.Main.call_order' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Collections.Main.cycle_has_no_order' does not depend on any axioms\n'Collections.Main.family' does not depend on any axioms\n'Collections.Main.key_order_bool' depends on axioms: [propext]\n'Collections.Main.key_order_int' does not depend on any axioms\n'Collections.Main.key_order_int16' does not depend on any axioms\n'Collections.Main.key_order_int32' does not depend on any axioms\n'Collections.Main.key_order_int64' does not depend on any axioms\n'Collections.Main.key_order_int8' does not depend on any axioms\n'Collections.Main.key_order_nat' does not depend on any axioms\n'Collections.Main.key_order_product' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Collections.Main.key_order_string' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Collections.Main.key_order_uint16' does not depend on any axioms\n'Collections.Main.key_order_uint32' does not depend on any axioms\n'Collections.Main.key_order_uint64' does not depend on any axioms\n'Collections.Main.key_order_uint8' does not depend on any axioms\n'Collections.Main.op_graph_reachable' depends on axioms: [propext]\n'Collections.Main.op_graph_successors' does not depend on any axioms\n'Collections.Main.op_graph_successors_absent' does not depend on any axioms\n'Collections.Main.op_graph_topological' does not depend on any axioms\n'Collections.Main.op_iterate_until_exhausted' does not depend on any axioms\n'Collections.Main.op_iterate_until_fixed_point' does not depend on any axioms\n'Collections.Main.op_iterate_zero' does not depend on any axioms\n'Collections.Main.op_list_fold' does not depend on any axioms\n'Collections.Main.op_map_contains' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Collections.Main.op_map_entries' does not depend on any axioms\n'Collections.Main.op_map_fold' does not depend on any axioms\n'Collections.Main.op_map_insert' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Collections.Main.op_map_insert_replaces' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Collections.Main.op_map_keys' does not depend on any axioms\n'Collections.Main.op_map_lookup' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Collections.Main.op_map_lookup_absent' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Collections.Main.op_map_remove' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Collections.Main.op_map_remove_absent' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Collections.Main.op_map_size' does not depend on any axioms\n'Collections.Main.op_map_values' does not depend on any axioms\n'Collections.Main.op_set_contains' does not depend on any axioms\n'Collections.Main.op_set_difference' does not depend on any axioms\n'Collections.Main.op_set_elements' does not depend on any axioms\n'Collections.Main.op_set_fold' does not depend on any axioms\n'Collections.Main.op_set_insert' does not depend on any axioms\n'Collections.Main.op_set_intersection' does not depend on any axioms\n'Collections.Main.op_set_remove' does not depend on any axioms\n'Collections.Main.op_set_size' does not depend on any axioms\n'Collections.Main.op_set_union' does not depend on any axioms\n'Collections.Main.parse_reaches_lex' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Collections.Main.reordered_literals_agree' does not depend on any axioms\n'Collections.Main.table_lookup' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Collections.Main.table_slots' depends on axioms: [propext, Classical.choice, Quot.sound]\n","stdout_sha256":"3d77f9bcb113d76b5e385245365c454f35d99c86cb74e7dfeb18ce445b9a81e2","tool":"lean"} diff --git a/examples/collections/expected/verify/audit/LexLeanAudit.A9962d043362f4a167c67517d483f0f24.Collections.Measure.process.json b/examples/collections/expected/verify/audit/LexLeanAudit.A9962d043362f4a167c67517d483f0f24.Collections.Measure.process.json deleted file mode 100644 index f67bd64fe..000000000 --- a/examples/collections/expected/verify/audit/LexLeanAudit.A9962d043362f4a167c67517d483f0f24.Collections.Measure.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A9962d043362f4a167c67517d483f0f24.Collections.Measure.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A9962d043362f4a167c67517d483f0f24.Collections.Measure","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Collections.Measure.distinctNames' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Collections.Measure.distinct_names' depends on axioms: [propext, Classical.choice, Quot.sound]\n","stdout_sha256":"9a0b51347cf1806a3c5870dffe83294b16325a9e46b47bba1233e7e3fb48209e","tool":"lean"} diff --git a/examples/collections/expected/verify/audit/LexLeanAudit.A9962d043362f4a167c67517d483f0f24.Collections.Tables.process.json b/examples/collections/expected/verify/audit/LexLeanAudit.A9962d043362f4a167c67517d483f0f24.Collections.Tables.process.json deleted file mode 100644 index aed476e8c..000000000 --- a/examples/collections/expected/verify/audit/LexLeanAudit.A9962d043362f4a167c67517d483f0f24.Collections.Tables.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A9962d043362f4a167c67517d483f0f24.Collections.Tables.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A9962d043362f4a167c67517d483f0f24.Collections.Tables","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Collections.Tables.buildTable' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Collections.Tables.callGraph' does not depend on any axioms\n'Collections.Tables.callOrder' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Collections.Tables.declare' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Collections.Tables.reachableFromParse' depends on axioms: [propext, Classical.choice, Quot.sound]\n","stdout_sha256":"b5887435160be7412b795a6f5a33d36ac682a409c841bd95a8d98982df4173e9","tool":"lean"} diff --git a/examples/collections/expected/verify/audit/LexLeanAudit.A9962d043362f4a167c67517d483f0f24.LexLeanRuntime.Collections.process.json b/examples/collections/expected/verify/audit/LexLeanAudit.A9962d043362f4a167c67517d483f0f24.LexLeanRuntime.Collections.process.json deleted file mode 100644 index 7443c5144..000000000 --- a/examples/collections/expected/verify/audit/LexLeanAudit.A9962d043362f4a167c67517d483f0f24.LexLeanRuntime.Collections.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A9962d043362f4a167c67517d483f0f24.LexLeanRuntime.Collections.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A9962d043362f4a167c67517d483f0f24.LexLeanRuntime.Collections","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanCollections.Key' does not depend on any axioms\n'LexLeanCollections.Key.casesOn' does not depend on any axioms\n'LexLeanCollections.Key.compare' does not depend on any axioms\n'LexLeanCollections.Key.ctorIdx' does not depend on any axioms\n'LexLeanCollections.Key.mk._flat_ctor' does not depend on any axioms\n'LexLeanCollections.Key.mk.noConfusion' does not depend on any axioms\n'LexLeanCollections.Key.noConfusion' does not depend on any axioms\n'LexLeanCollections.Key.noConfusionType' does not depend on any axioms\n'LexLeanCollections.Key.recOn' does not depend on any axioms\n'LexLeanCollections.compareCodes' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._f' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._sunfold' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._unsafe_rec' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.match_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.match_4' does not depend on any axioms\n'LexLeanCollections.containsElement' does not depend on any axioms\n'LexLeanCollections.containsElement._f' does not depend on any axioms\n'LexLeanCollections.containsElement._sunfold' does not depend on any axioms\n'LexLeanCollections.containsElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.graphNodes' does not depend on any axioms\n'LexLeanCollections.graphReachable' depends on axioms: [propext]\n'LexLeanCollections.graphSuccessors' does not depend on any axioms\n'LexLeanCollections.graphTopological' does not depend on any axioms\n'LexLeanCollections.insertElement' does not depend on any axioms\n'LexLeanCollections.insertElement._f' does not depend on any axioms\n'LexLeanCollections.insertElement._sunfold' does not depend on any axioms\n'LexLeanCollections.insertElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.insertElement.match_1' does not depend on any axioms\n'LexLeanCollections.insertEntry' does not depend on any axioms\n'LexLeanCollections.insertEntry._f' does not depend on any axioms\n'LexLeanCollections.insertEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.insertEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.insertEntry.match_1' does not depend on any axioms\n'LexLeanCollections.insertEntry.match_3' does not depend on any axioms\n'LexLeanCollections.instKeyBool' depends on axioms: [propext]\n'LexLeanCollections.instKeyInt' does not depend on any axioms\n'LexLeanCollections.instKeyInt16' does not depend on any axioms\n'LexLeanCollections.instKeyInt32' does not depend on any axioms\n'LexLeanCollections.instKeyInt64' does not depend on any axioms\n'LexLeanCollections.instKeyInt8' does not depend on any axioms\n'LexLeanCollections.instKeyNat' does not depend on any axioms\n'LexLeanCollections.instKeyProd' depends on axioms: [propext]\n'LexLeanCollections.instKeyString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanCollections.instKeyUInt16' does not depend on any axioms\n'LexLeanCollections.instKeyUInt32' does not depend on any axioms\n'LexLeanCollections.instKeyUInt64' does not depend on any axioms\n'LexLeanCollections.instKeyUInt8' does not depend on any axioms\n'LexLeanCollections.iterate' does not depend on any axioms\n'LexLeanCollections.iterate._f' does not depend on any axioms\n'LexLeanCollections.iterate._sunfold' does not depend on any axioms\n'LexLeanCollections.iterate._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.iterate.match_1' does not depend on any axioms\n'LexLeanCollections.iterateUntil' does not depend on any axioms\n'LexLeanCollections.iterateUntil._f' does not depend on any axioms\n'LexLeanCollections.iterateUntil._sunfold' does not depend on any axioms\n'LexLeanCollections.iterateUntil._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.iterateUntil.match_1' does not depend on any axioms\n'LexLeanCollections.lessThan' depends on axioms: [propext]\n'LexLeanCollections.lessThan._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.lessThan.match_1' depends on axioms: [propext]\n'LexLeanCollections.listFold' does not depend on any axioms\n'LexLeanCollections.lookupEntry' does not depend on any axioms\n'LexLeanCollections.lookupEntry._f' does not depend on any axioms\n'LexLeanCollections.lookupEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.lookupEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.mapContains' does not depend on any axioms\n'LexLeanCollections.mapEntries' does not depend on any axioms\n'LexLeanCollections.mapFold' does not depend on any axioms\n'LexLeanCollections.mapInsert' does not depend on any axioms\n'LexLeanCollections.mapKeys' does not depend on any axioms\n'LexLeanCollections.mapLookup' does not depend on any axioms\n'LexLeanCollections.mapRemove' does not depend on any axioms\n'LexLeanCollections.mapSize' does not depend on any axioms\n'LexLeanCollections.mapValues' does not depend on any axioms\n'LexLeanCollections.reachableFrom' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._f' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._sunfold' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._unsafe_rec' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom.match_1' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom.match_4' does not depend on any axioms\n'LexLeanCollections.removeElement' does not depend on any axioms\n'LexLeanCollections.removeElement._f' does not depend on any axioms\n'LexLeanCollections.removeElement._sunfold' does not depend on any axioms\n'LexLeanCollections.removeElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.removeEntry' does not depend on any axioms\n'LexLeanCollections.removeEntry._f' does not depend on any axioms\n'LexLeanCollections.removeEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.removeEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.setContains' does not depend on any axioms\n'LexLeanCollections.setDifference' does not depend on any axioms\n'LexLeanCollections.setElements' does not depend on any axioms\n'LexLeanCollections.setFold' does not depend on any axioms\n'LexLeanCollections.setInsert' does not depend on any axioms\n'LexLeanCollections.setIntersection' does not depend on any axioms\n'LexLeanCollections.setRemove' does not depend on any axioms\n'LexLeanCollections.setSize' does not depend on any axioms\n'LexLeanCollections.setUnion' does not depend on any axioms\n'LexLeanCollections.topological' does not depend on any axioms\n'LexLeanCollections.topological._f' does not depend on any axioms\n'LexLeanCollections.topological._sunfold' does not depend on any axioms\n'LexLeanCollections.topological._unsafe_rec' does not depend on any axioms\n","stdout_sha256":"b75acc0e99e23684c3cc876eacbfc93f47161cfee8a7440df17fa45f321c8c6a","tool":"lean"} diff --git a/examples/collections/expected/verify/audit/LexLeanAudit.A9962d043362f4a167c67517d483f0f24.LexLeanRuntime.Portable.process.json b/examples/collections/expected/verify/audit/LexLeanAudit.A9962d043362f4a167c67517d483f0f24.LexLeanRuntime.Portable.process.json deleted file mode 100644 index 96c75ddd6..000000000 --- a/examples/collections/expected/verify/audit/LexLeanAudit.A9962d043362f4a167c67517d483f0f24.LexLeanRuntime.Portable.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A9962d043362f4a167c67517d483f0f24.LexLeanRuntime.Portable.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A9962d043362f4a167c67517d483f0f24.LexLeanRuntime.Portable","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanRuntime.Appendable' does not depend on any axioms\n'LexLeanRuntime.Appendable.append' does not depend on any axioms\n'LexLeanRuntime.Appendable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Appendable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Appendable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Appendable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Appendable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Appendable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Appendable.recOn' does not depend on any axioms\n'LexLeanRuntime.Decimal' does not depend on any axioms\n'LexLeanRuntime.Decimal.casesOn' does not depend on any axioms\n'LexLeanRuntime.Decimal.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Decimal.format' does not depend on any axioms\n'LexLeanRuntime.Decimal.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Decimal.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Decimal.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Decimal.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Decimal.parse' does not depend on any axioms\n'LexLeanRuntime.Decimal.recOn' does not depend on any axioms\n'LexLeanRuntime.Fixed' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitAnd' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitNot' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitOr' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitXor' does not depend on any axioms\n'LexLeanRuntime.Fixed.casesOn' does not depend on any axioms\n'LexLeanRuntime.Fixed.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Fixed.fromInt' does not depend on any axioms\n'LexLeanRuntime.Fixed.maximum' does not depend on any axioms\n'LexLeanRuntime.Fixed.minimum' does not depend on any axioms\n'LexLeanRuntime.Fixed.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Fixed.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Fixed.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Fixed.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Fixed.recOn' does not depend on any axioms\n'LexLeanRuntime.Fixed.shiftLeft' does not depend on any axioms\n'LexLeanRuntime.Fixed.shiftRight' does not depend on any axioms\n'LexLeanRuntime.Fixed.toToMathInt' does not depend on any axioms\n'LexLeanRuntime.Indexable' does not depend on any axioms\n'LexLeanRuntime.Indexable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Indexable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Indexable.index' does not depend on any axioms\n'LexLeanRuntime.Indexable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Indexable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Indexable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Indexable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Indexable.recOn' does not depend on any axioms\n'LexLeanRuntime.Lengthable' does not depend on any axioms\n'LexLeanRuntime.Lengthable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Lengthable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Lengthable.length' does not depend on any axioms\n'LexLeanRuntime.Lengthable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Lengthable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Lengthable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Lengthable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Lengthable.recOn' does not depend on any axioms\n'LexLeanRuntime.Quotient' does not depend on any axioms\n'LexLeanRuntime.Quotient.casesOn' does not depend on any axioms\n'LexLeanRuntime.Quotient.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Quotient.isZero' does not depend on any axioms\n'LexLeanRuntime.Quotient.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Quotient.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Quotient.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Quotient.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Quotient.quotient' does not depend on any axioms\n'LexLeanRuntime.Quotient.recOn' does not depend on any axioms\n'LexLeanRuntime.Quotient.remainder' does not depend on any axioms\n'LexLeanRuntime.Sliceable' does not depend on any axioms\n'LexLeanRuntime.Sliceable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Sliceable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Sliceable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Sliceable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Sliceable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Sliceable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Sliceable.recOn' does not depend on any axioms\n'LexLeanRuntime.Sliceable.slice' does not depend on any axioms\n'LexLeanRuntime.ToMathInt' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.casesOn' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.noConfusion' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.recOn' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.toInt' does not depend on any axioms\n'LexLeanRuntime.append' does not depend on any axioms\n'LexLeanRuntime.bitAnd' does not depend on any axioms\n'LexLeanRuntime.bitNot' does not depend on any axioms\n'LexLeanRuntime.bitOr' does not depend on any axioms\n'LexLeanRuntime.bitXor' does not depend on any axioms\n'LexLeanRuntime.checkedAdd' does not depend on any axioms\n'LexLeanRuntime.checkedAddInt64' does not depend on any axioms\n'LexLeanRuntime.checkedConvert' does not depend on any axioms\n'LexLeanRuntime.checkedFromInt' does not depend on any axioms\n'LexLeanRuntime.checkedMultiply' does not depend on any axioms\n'LexLeanRuntime.checkedMultiplyInt64' does not depend on any axioms\n'LexLeanRuntime.checkedMultiplyInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.checkedNegate' does not depend on any axioms\n'LexLeanRuntime.checkedNegateInt64' does not depend on any axioms\n'LexLeanRuntime.checkedQuotient' does not depend on any axioms\n'LexLeanRuntime.checkedQuotientInt64' does not depend on any axioms\n'LexLeanRuntime.checkedSubtract' does not depend on any axioms\n'LexLeanRuntime.checkedSubtractInt64' does not depend on any axioms\n'LexLeanRuntime.compareBytes' depends on axioms: [propext]\n'LexLeanRuntime.divideMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._f' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._sunfold' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.equal' does not depend on any axioms\n'LexLeanRuntime.formatDecimal' does not depend on any axioms\n'LexLeanRuntime.index' does not depend on any axioms\n'LexLeanRuntime.instAppendableByteArray' does not depend on any axioms\n'LexLeanRuntime.instAppendableList' does not depend on any axioms\n'LexLeanRuntime.instDecimalInt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instDecimalInt.match_1' does not depend on any axioms\n'LexLeanRuntime.instDecimalOfFixedOfToString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instFixedInt16' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt32' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt64' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt8' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt16' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt32' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt64' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt8' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instIndexableByteArrayUInt8' does not depend on any axioms\n'LexLeanRuntime.instIndexableList' does not depend on any axioms\n'LexLeanRuntime.instLengthableByteArray' does not depend on any axioms\n'LexLeanRuntime.instLengthableList' does not depend on any axioms\n'LexLeanRuntime.instLengthableString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instQuotientInt' does not depend on any axioms\n'LexLeanRuntime.instQuotientNat' does not depend on any axioms\n'LexLeanRuntime.instSliceableByteArray' does not depend on any axioms\n'LexLeanRuntime.instSliceableList' does not depend on any axioms\n'LexLeanRuntime.instToMathIntInt' does not depend on any axioms\n'LexLeanRuntime.join' depends on axioms: [propext]\n'LexLeanRuntime.length' does not depend on any axioms\n'LexLeanRuntime.listIndex' does not depend on any axioms\n'LexLeanRuntime.listIndex._f' does not depend on any axioms\n'LexLeanRuntime.listIndex._sunfold' does not depend on any axioms\n'LexLeanRuntime.listIndex._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.listIndex.match_1' does not depend on any axioms\n'LexLeanRuntime.magnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.multiply' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._f' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._sunfold' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.negate' does not depend on any axioms\n'LexLeanRuntime.parseDecimal' does not depend on any axioms\n'LexLeanRuntime.quotient' does not depend on any axioms\n'LexLeanRuntime.remainder' does not depend on any axioms\n'LexLeanRuntime.shiftLeft' does not depend on any axioms\n'LexLeanRuntime.shiftRight' does not depend on any axioms\n'LexLeanRuntime.signedMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.slice' does not depend on any axioms\n'LexLeanRuntime.splitExact' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.subtract' does not depend on any axioms\n'LexLeanRuntime.utf8Decode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.utf8Encode' does not depend on any axioms\n","stdout_sha256":"73fea1d9e9e9f0a2f1363b9f284eeeb9e434430e9fa910260b9526bad864641e","tool":"lean"} diff --git a/examples/collections/expected/verify/probe/LexLeanProbe.P9962d043362f4a167c67517d483f0f24.lean b/examples/collections/expected/verify/probe/LexLeanProbe.P0f6d359d50d0d086f47af2c0608b2e13.lean similarity index 100% rename from examples/collections/expected/verify/probe/LexLeanProbe.P9962d043362f4a167c67517d483f0f24.lean rename to examples/collections/expected/verify/probe/LexLeanProbe.P0f6d359d50d0d086f47af2c0608b2e13.lean diff --git a/examples/collections/expected/verify/probe/process.json b/examples/collections/expected/verify/probe/process.json index 5e7a1d634..3d1d541d3 100644 --- a/examples/collections/expected/verify/probe/process.json +++ b/examples/collections/expected/verify/probe/process.json @@ -1 +1 @@ -{"argv":["env","lean","$STAGING/probe/LexLeanProbe.P9962d043362f4a167c67517d483f0f24.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanProbe.P9962d043362f4a167c67517d483f0f24","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} +{"argv":["env","lean","$STAGING/probe/LexLeanProbe.P0f6d359d50d0d086f47af2c0608b2e13.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanProbe.P0f6d359d50d0d086f47af2c0608b2e13","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/collections/lexlean.lock b/examples/collections/lexlean.lock index d5a2abdac..55d71299a 100644 --- a/examples/collections/lexlean.lock +++ b/examples/collections/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "87b05dc405590c51e9a51ac60ef00f9096c4a38c29b9bab379a02d5c6a1cd744" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/examples/fold-laws/expected/build/manifest.json b/examples/fold-laws/expected/build/manifest.json index 6587df6df..1852bcb4e 100644 --- a/examples/fold-laws/expected/build/manifest.json +++ b/examples/fold-laws/expected/build/manifest.json @@ -1 +1 @@ -{"build_id":"e744465bcea2371d6d58d0d12b2feec45b3e588a941e9dbe597a8e0005a2aaf6","compiler":{"semantics_id":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","version":"0.3.0"},"inputs":[{"byte_length":2684,"kind":"lexicon","path":"embedded","sha256":"3bc0fb09d706ffa7d5a1363302ea87c049acc7c7dcafde63c62682620c11be9b"},{"byte_length":14885,"kind":"lexicon","path":"embedded","sha256":"e0db021e01b91d651c43921d66f6b0023c8efbf17cac2ec53192ce5305e4e1ac"},{"byte_length":36197,"kind":"lexicon","path":"embedded","sha256":"827317cae68c162f3a96c8a8de4e53ab348e7d3724fd2b834fa85ecde1a1b392"},{"byte_length":1055,"kind":"lexicon","path":"glossary/folds.titles","sha256":"0f45f7e4112147980b825a8d49fce9743085673af0beb23f5819d7e4170ae8cc"},{"byte_length":1937,"kind":"lock","path":"lexlean.lock","sha256":"7cf5f545f0bd7a3a3d1c48c3e9a8e71ddd8b2bf32d8e3c31a91987861ed49c39"},{"byte_length":729,"kind":"project-config","path":"lexlean.toml","sha256":"6b4aefb16459176dc5845ec6df13b390d7105a2c9d8ccc8ce08d2bbabb4058d0"},{"byte_length":4675,"kind":"source","path":"src/Folds.lex.tex","sha256":"54564f4bf135ae9deafd8bd854fbc5c09723b85a054ae2261f19b3b137bc3598"},{"byte_length":4105,"kind":"source","path":"src/Kernels.lex.tex","sha256":"951bf028cbf1d8a95dcdddc7e9d6608e180ed697c5ea9df60b8b1c2507b7190f"},{"byte_length":2919,"kind":"source","path":"src/Main.lex.tex","sha256":"1b2a8a0757e577bf53d164171059e97b45db69e9baa1cfedd09511f03d941a59"}],"language":"1.2","lean_toolchain":"leanprover/lean4:v4.32.1","modules":[{"lean_module":"FoldLaws.Folds","module":"Folds","source_path":"src/Folds.lex.tex"},{"lean_module":"FoldLaws.Kernels","module":"Kernels","source_path":"src/Kernels.lex.tex"},{"lean_module":"FoldLaws.Main","module":"Main","source_path":"src/Main.lex.tex"}],"outputs":[{"byte_length":13833,"kind":"coverage","path":"coverage/FoldLaws/Folds.coverage.json","sha256":"63d21e10c047710bf1325fc8271efed1ff6240d36873ea0b5e4fbbf42445eb91"},{"byte_length":12885,"kind":"coverage","path":"coverage/FoldLaws/Kernels.coverage.json","sha256":"92223c1952d44fce36580349b24c8be1a6ef5be828e06cc31d46186618b84fb5"},{"byte_length":11508,"kind":"coverage","path":"coverage/FoldLaws/Main.coverage.json","sha256":"b852d2cfc2f4500ea7af013832451ca248e81f731d08a8fe9dff4bf4db583424"},{"byte_length":27238,"kind":"lean","path":"modules/FoldLaws/Folds.lean","sha256":"ca2813622e361c44f9aee1f54bc5b17ce07f2d22bd3719da79c3ff17120ec55f"},{"byte_length":46927,"kind":"lean","path":"modules/FoldLaws/Kernels.lean","sha256":"e120b160e36d551c343d3315d79108421701b0dece4c00e812975f4dd99db001"},{"byte_length":8527,"kind":"lean","path":"modules/FoldLaws/Main.lean","sha256":"1c9a93fdd3335cd736efa668527a232c7da770c9f1fac983e9fc5fa33b8f1956"},{"byte_length":10939,"kind":"lexicon-closure","path":"lexicons/Folds.closure.json","sha256":"cc043dc592e53f7530772cc415b57c829a241e34477d41ba4bd49dd0bbead60e"},{"byte_length":10941,"kind":"lexicon-closure","path":"lexicons/Kernels.closure.json","sha256":"a5720bb307053d30157fb4b207e491e95463e36735a568226e3f11927af91f8e"},{"byte_length":10938,"kind":"lexicon-closure","path":"lexicons/Main.closure.json","sha256":"b1f4da7a53917fe7bb7857e086af159801d5d909c6cdf9edf064cfcecd599a2d"},{"byte_length":7773,"kind":"map","path":"maps/FoldLaws/Folds.map.json","sha256":"f0e8c5882d3201392beadaef1f9281f30851547acef7d4e2672470b93f922505"},{"byte_length":6519,"kind":"map","path":"maps/FoldLaws/Kernels.map.json","sha256":"3e11f296a75598e25ba9aa479263456d6c4bba2caa9e99023761b9dcc4ffaefe"},{"byte_length":3577,"kind":"map","path":"maps/FoldLaws/Main.map.json","sha256":"7d5737774f6a2226722f68f8955397ab891d1a4ec1ebd2d5696a79cdad49b49f"},{"byte_length":8799,"kind":"tex","path":"modules/FoldLaws/Folds.tex","sha256":"b286c23d9fbeed668b1da86f12d726fa3b94465a6275301cc895eb4aea0a006d"},{"byte_length":5957,"kind":"tex","path":"modules/FoldLaws/Kernels.tex","sha256":"27b7af40fc4d77c285877bbe4e7835a8f640e0e0eaa31a9dae842a9e8b18f697"},{"byte_length":3536,"kind":"tex","path":"modules/FoldLaws/Main.tex","sha256":"27fc7bc2dccb4b3ef3178f23e8690bb10809c4fa122ccfe9ec586327b54fa513"}],"project":"fold-laws","selection":["Folds","Kernels","Main"],"semantic_id":"3cc5e8a42a7c9d201fd51d5ce22fd4f8d507769c4f777aec27ead70793c63b27","source_id":"643d28fdf0ac27267ae8c7c2fb534537b5a0305161d242aa876f844aee6222d2","spec":"lexlean/build-manifest/1"} +{"build_id":"590699971512affe9527578dc000fd192708a1010294ea9c11f9d771bece9bac","compiler":{"semantics_id":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","version":"0.3.0"},"inputs":[{"byte_length":2684,"kind":"lexicon","path":"embedded","sha256":"3bc0fb09d706ffa7d5a1363302ea87c049acc7c7dcafde63c62682620c11be9b"},{"byte_length":14885,"kind":"lexicon","path":"embedded","sha256":"e0db021e01b91d651c43921d66f6b0023c8efbf17cac2ec53192ce5305e4e1ac"},{"byte_length":36197,"kind":"lexicon","path":"embedded","sha256":"827317cae68c162f3a96c8a8de4e53ab348e7d3724fd2b834fa85ecde1a1b392"},{"byte_length":1055,"kind":"lexicon","path":"glossary/folds.titles","sha256":"0f45f7e4112147980b825a8d49fce9743085673af0beb23f5819d7e4170ae8cc"},{"byte_length":1937,"kind":"lock","path":"lexlean.lock","sha256":"24881495aac58e9d0702a0b0fabc8c7174e987e5ba94a2905594692e723a6816"},{"byte_length":729,"kind":"project-config","path":"lexlean.toml","sha256":"6b4aefb16459176dc5845ec6df13b390d7105a2c9d8ccc8ce08d2bbabb4058d0"},{"byte_length":4675,"kind":"source","path":"src/Folds.lex.tex","sha256":"54564f4bf135ae9deafd8bd854fbc5c09723b85a054ae2261f19b3b137bc3598"},{"byte_length":4105,"kind":"source","path":"src/Kernels.lex.tex","sha256":"951bf028cbf1d8a95dcdddc7e9d6608e180ed697c5ea9df60b8b1c2507b7190f"},{"byte_length":2919,"kind":"source","path":"src/Main.lex.tex","sha256":"1b2a8a0757e577bf53d164171059e97b45db69e9baa1cfedd09511f03d941a59"}],"language":"1.2","lean_toolchain":"leanprover/lean4:v4.32.1","modules":[{"lean_module":"FoldLaws.Folds","module":"Folds","source_path":"src/Folds.lex.tex"},{"lean_module":"FoldLaws.Kernels","module":"Kernels","source_path":"src/Kernels.lex.tex"},{"lean_module":"FoldLaws.Main","module":"Main","source_path":"src/Main.lex.tex"}],"outputs":[{"byte_length":13833,"kind":"coverage","path":"coverage/FoldLaws/Folds.coverage.json","sha256":"63d21e10c047710bf1325fc8271efed1ff6240d36873ea0b5e4fbbf42445eb91"},{"byte_length":12885,"kind":"coverage","path":"coverage/FoldLaws/Kernels.coverage.json","sha256":"92223c1952d44fce36580349b24c8be1a6ef5be828e06cc31d46186618b84fb5"},{"byte_length":11508,"kind":"coverage","path":"coverage/FoldLaws/Main.coverage.json","sha256":"b852d2cfc2f4500ea7af013832451ca248e81f731d08a8fe9dff4bf4db583424"},{"byte_length":27238,"kind":"lean","path":"modules/FoldLaws/Folds.lean","sha256":"ca2813622e361c44f9aee1f54bc5b17ce07f2d22bd3719da79c3ff17120ec55f"},{"byte_length":46927,"kind":"lean","path":"modules/FoldLaws/Kernels.lean","sha256":"e120b160e36d551c343d3315d79108421701b0dece4c00e812975f4dd99db001"},{"byte_length":8527,"kind":"lean","path":"modules/FoldLaws/Main.lean","sha256":"1c9a93fdd3335cd736efa668527a232c7da770c9f1fac983e9fc5fa33b8f1956"},{"byte_length":10939,"kind":"lexicon-closure","path":"lexicons/Folds.closure.json","sha256":"cc043dc592e53f7530772cc415b57c829a241e34477d41ba4bd49dd0bbead60e"},{"byte_length":10941,"kind":"lexicon-closure","path":"lexicons/Kernels.closure.json","sha256":"a5720bb307053d30157fb4b207e491e95463e36735a568226e3f11927af91f8e"},{"byte_length":10938,"kind":"lexicon-closure","path":"lexicons/Main.closure.json","sha256":"b1f4da7a53917fe7bb7857e086af159801d5d909c6cdf9edf064cfcecd599a2d"},{"byte_length":7773,"kind":"map","path":"maps/FoldLaws/Folds.map.json","sha256":"e538dbded555072d8ad228f2ec041880bb970733869b48bf5412cd243eafc465"},{"byte_length":6519,"kind":"map","path":"maps/FoldLaws/Kernels.map.json","sha256":"1e378da694565f0eab13e0b742d2f9a9a18f1d35044e73b8a384871c274b7bde"},{"byte_length":3577,"kind":"map","path":"maps/FoldLaws/Main.map.json","sha256":"8b5e0464405f30dc407ed8be495e7eda892847633990565978b52a7c93b8dd3c"},{"byte_length":8799,"kind":"tex","path":"modules/FoldLaws/Folds.tex","sha256":"b286c23d9fbeed668b1da86f12d726fa3b94465a6275301cc895eb4aea0a006d"},{"byte_length":5957,"kind":"tex","path":"modules/FoldLaws/Kernels.tex","sha256":"27b7af40fc4d77c285877bbe4e7835a8f640e0e0eaa31a9dae842a9e8b18f697"},{"byte_length":3536,"kind":"tex","path":"modules/FoldLaws/Main.tex","sha256":"27fc7bc2dccb4b3ef3178f23e8690bb10809c4fa122ccfe9ec586327b54fa513"}],"project":"fold-laws","selection":["Folds","Kernels","Main"],"semantic_id":"1d59f84598c9f4c2cea21d972760d780f4ba88099ed49b81ffedd3f1acbf79d7","source_id":"4435dd3506d9df549955aa769eb32cb63293a6067cbbed9b94d0fc281ce7e34f","spec":"lexlean/build-manifest/1"} diff --git a/examples/fold-laws/expected/build/maps/FoldLaws/Folds.map.json b/examples/fold-laws/expected/build/maps/FoldLaws/Folds.map.json index 212ffa05c..8cbb099a9 100644 --- a/examples/fold-laws/expected/build/maps/FoldLaws/Folds.map.json +++ b/examples/fold-laws/expected/build/maps/FoldLaws/Folds.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/FoldLaws/Folds.lean"},{"id":1,"kind":"tex","path":"modules/FoldLaws/Folds.tex"}],"mappings":[{"artifact":0,"gen_end":310,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":4675,"src_start":0},{"artifact":0,"gen_end":453,"gen_start":310,"node":1,"role":"declaration","source":0,"src_end":312,"src_start":139},{"artifact":0,"gen_end":597,"gen_start":453,"node":2,"role":"declaration","source":0,"src_end":487,"src_start":314},{"artifact":0,"gen_end":753,"gen_start":597,"node":3,"role":"declaration","source":0,"src_end":675,"src_start":489},{"artifact":0,"gen_end":943,"gen_start":753,"node":4,"role":"declaration","source":0,"src_end":883,"src_start":677},{"artifact":0,"gen_end":1127,"gen_start":943,"node":5,"role":"declaration","source":0,"src_end":1093,"src_start":885},{"artifact":0,"gen_end":1340,"gen_start":1127,"node":6,"role":"declaration","source":0,"src_end":1323,"src_start":1095},{"artifact":0,"gen_end":1584,"gen_start":1340,"node":7,"role":"declaration","source":0,"src_end":1572,"src_start":1325},{"artifact":0,"gen_end":1727,"gen_start":1584,"node":8,"role":"declaration","source":0,"src_end":1746,"src_start":1574},{"artifact":0,"gen_end":1910,"gen_start":1727,"node":9,"role":"declaration","source":0,"src_end":1946,"src_start":1748},{"artifact":0,"gen_end":2084,"gen_start":1910,"node":10,"role":"declaration","source":0,"src_end":2142,"src_start":1948},{"artifact":0,"gen_end":2251,"gen_start":2084,"node":11,"role":"declaration","source":0,"src_end":2330,"src_start":2144},{"artifact":0,"gen_end":2420,"gen_start":2251,"node":12,"role":"declaration","source":0,"src_end":2520,"src_start":2332},{"artifact":0,"gen_end":5473,"gen_start":2420,"node":13,"role":"declaration","source":0,"src_end":2746,"src_start":2522},{"artifact":0,"gen_end":8516,"gen_start":5473,"node":14,"role":"declaration","source":0,"src_end":2950,"src_start":2748},{"artifact":0,"gen_end":11607,"gen_start":8516,"node":15,"role":"declaration","source":0,"src_end":3200,"src_start":2952},{"artifact":0,"gen_end":14738,"gen_start":11607,"node":16,"role":"declaration","source":0,"src_end":3475,"src_start":3202},{"artifact":0,"gen_end":17777,"gen_start":14738,"node":17,"role":"declaration","source":0,"src_end":3687,"src_start":3477},{"artifact":0,"gen_end":20953,"gen_start":17777,"node":18,"role":"declaration","source":0,"src_end":4003,"src_start":3689},{"artifact":0,"gen_end":24026,"gen_start":20953,"node":19,"role":"declaration","source":0,"src_end":4234,"src_start":4005},{"artifact":0,"gen_end":27103,"gen_start":24026,"node":20,"role":"declaration","source":0,"src_end":4474,"src_start":4236},{"artifact":0,"gen_end":27218,"gen_start":27103,"node":21,"role":"declaration","source":0,"src_end":4639,"src_start":4476},{"artifact":0,"gen_end":27238,"gen_start":27218,"node":0,"role":"declaration","source":0,"src_end":4675,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":22,"role":"declaration","source":0,"src_end":4675,"src_start":0},{"artifact":1,"gen_end":596,"gen_start":134,"node":23,"role":"declaration","source":0,"src_end":312,"src_start":139},{"artifact":1,"gen_end":1060,"gen_start":596,"node":24,"role":"declaration","source":0,"src_end":487,"src_start":314},{"artifact":1,"gen_end":1535,"gen_start":1060,"node":25,"role":"declaration","source":0,"src_end":675,"src_start":489},{"artifact":1,"gen_end":2044,"gen_start":1535,"node":26,"role":"declaration","source":0,"src_end":883,"src_start":677},{"artifact":1,"gen_end":2547,"gen_start":2044,"node":27,"role":"declaration","source":0,"src_end":1093,"src_start":885},{"artifact":1,"gen_end":3079,"gen_start":2547,"node":28,"role":"declaration","source":0,"src_end":1323,"src_start":1095},{"artifact":1,"gen_end":3642,"gen_start":3079,"node":29,"role":"declaration","source":0,"src_end":1572,"src_start":1325},{"artifact":1,"gen_end":4103,"gen_start":3642,"node":30,"role":"declaration","source":0,"src_end":1746,"src_start":1574},{"artifact":1,"gen_end":4604,"gen_start":4103,"node":31,"role":"declaration","source":0,"src_end":1946,"src_start":1748},{"artifact":1,"gen_end":5092,"gen_start":4604,"node":32,"role":"declaration","source":0,"src_end":2142,"src_start":1948},{"artifact":1,"gen_end":5574,"gen_start":5092,"node":33,"role":"declaration","source":0,"src_end":2330,"src_start":2144},{"artifact":1,"gen_end":6058,"gen_start":5574,"node":34,"role":"declaration","source":0,"src_end":2520,"src_start":2332},{"artifact":1,"gen_end":6337,"gen_start":6058,"node":35,"role":"declaration","source":0,"src_end":2746,"src_start":2522},{"artifact":1,"gen_end":6621,"gen_start":6337,"node":36,"role":"declaration","source":0,"src_end":2950,"src_start":2748},{"artifact":1,"gen_end":6935,"gen_start":6621,"node":37,"role":"declaration","source":0,"src_end":3200,"src_start":2952},{"artifact":1,"gen_end":7307,"gen_start":6935,"node":38,"role":"declaration","source":0,"src_end":3475,"src_start":3202},{"artifact":1,"gen_end":7576,"gen_start":7307,"node":39,"role":"declaration","source":0,"src_end":3687,"src_start":3477},{"artifact":1,"gen_end":7982,"gen_start":7576,"node":40,"role":"declaration","source":0,"src_end":4003,"src_start":3689},{"artifact":1,"gen_end":8279,"gen_start":7982,"node":41,"role":"declaration","source":0,"src_end":4234,"src_start":4005},{"artifact":1,"gen_end":8561,"gen_start":8279,"node":42,"role":"declaration","source":0,"src_end":4474,"src_start":4236},{"artifact":1,"gen_end":8784,"gen_start":8561,"node":43,"role":"declaration","source":0,"src_end":4639,"src_start":4476},{"artifact":1,"gen_end":8799,"gen_start":8784,"node":22,"role":"declaration","source":0,"src_end":4675,"src_start":0}],"module":"Folds","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-latex-module"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"},{"id":40,"kind":"semantic-declaration"},{"id":41,"kind":"semantic-declaration"},{"id":42,"kind":"semantic-declaration"},{"id":43,"kind":"semantic-declaration"}],"semantic_id":"3cc5e8a42a7c9d201fd51d5ce22fd4f8d507769c4f777aec27ead70793c63b27","source_id":"643d28fdf0ac27267ae8c7c2fb534537b5a0305161d242aa876f844aee6222d2","sources":[{"id":0,"kind":"file","path":"src/Folds.lex.tex","sha256":"54564f4bf135ae9deafd8bd854fbc5c09723b85a054ae2261f19b3b137bc3598"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/FoldLaws/Folds.lean"},{"id":1,"kind":"tex","path":"modules/FoldLaws/Folds.tex"}],"mappings":[{"artifact":0,"gen_end":310,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":4675,"src_start":0},{"artifact":0,"gen_end":453,"gen_start":310,"node":1,"role":"declaration","source":0,"src_end":312,"src_start":139},{"artifact":0,"gen_end":597,"gen_start":453,"node":2,"role":"declaration","source":0,"src_end":487,"src_start":314},{"artifact":0,"gen_end":753,"gen_start":597,"node":3,"role":"declaration","source":0,"src_end":675,"src_start":489},{"artifact":0,"gen_end":943,"gen_start":753,"node":4,"role":"declaration","source":0,"src_end":883,"src_start":677},{"artifact":0,"gen_end":1127,"gen_start":943,"node":5,"role":"declaration","source":0,"src_end":1093,"src_start":885},{"artifact":0,"gen_end":1340,"gen_start":1127,"node":6,"role":"declaration","source":0,"src_end":1323,"src_start":1095},{"artifact":0,"gen_end":1584,"gen_start":1340,"node":7,"role":"declaration","source":0,"src_end":1572,"src_start":1325},{"artifact":0,"gen_end":1727,"gen_start":1584,"node":8,"role":"declaration","source":0,"src_end":1746,"src_start":1574},{"artifact":0,"gen_end":1910,"gen_start":1727,"node":9,"role":"declaration","source":0,"src_end":1946,"src_start":1748},{"artifact":0,"gen_end":2084,"gen_start":1910,"node":10,"role":"declaration","source":0,"src_end":2142,"src_start":1948},{"artifact":0,"gen_end":2251,"gen_start":2084,"node":11,"role":"declaration","source":0,"src_end":2330,"src_start":2144},{"artifact":0,"gen_end":2420,"gen_start":2251,"node":12,"role":"declaration","source":0,"src_end":2520,"src_start":2332},{"artifact":0,"gen_end":5473,"gen_start":2420,"node":13,"role":"declaration","source":0,"src_end":2746,"src_start":2522},{"artifact":0,"gen_end":8516,"gen_start":5473,"node":14,"role":"declaration","source":0,"src_end":2950,"src_start":2748},{"artifact":0,"gen_end":11607,"gen_start":8516,"node":15,"role":"declaration","source":0,"src_end":3200,"src_start":2952},{"artifact":0,"gen_end":14738,"gen_start":11607,"node":16,"role":"declaration","source":0,"src_end":3475,"src_start":3202},{"artifact":0,"gen_end":17777,"gen_start":14738,"node":17,"role":"declaration","source":0,"src_end":3687,"src_start":3477},{"artifact":0,"gen_end":20953,"gen_start":17777,"node":18,"role":"declaration","source":0,"src_end":4003,"src_start":3689},{"artifact":0,"gen_end":24026,"gen_start":20953,"node":19,"role":"declaration","source":0,"src_end":4234,"src_start":4005},{"artifact":0,"gen_end":27103,"gen_start":24026,"node":20,"role":"declaration","source":0,"src_end":4474,"src_start":4236},{"artifact":0,"gen_end":27218,"gen_start":27103,"node":21,"role":"declaration","source":0,"src_end":4639,"src_start":4476},{"artifact":0,"gen_end":27238,"gen_start":27218,"node":0,"role":"declaration","source":0,"src_end":4675,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":22,"role":"declaration","source":0,"src_end":4675,"src_start":0},{"artifact":1,"gen_end":596,"gen_start":134,"node":23,"role":"declaration","source":0,"src_end":312,"src_start":139},{"artifact":1,"gen_end":1060,"gen_start":596,"node":24,"role":"declaration","source":0,"src_end":487,"src_start":314},{"artifact":1,"gen_end":1535,"gen_start":1060,"node":25,"role":"declaration","source":0,"src_end":675,"src_start":489},{"artifact":1,"gen_end":2044,"gen_start":1535,"node":26,"role":"declaration","source":0,"src_end":883,"src_start":677},{"artifact":1,"gen_end":2547,"gen_start":2044,"node":27,"role":"declaration","source":0,"src_end":1093,"src_start":885},{"artifact":1,"gen_end":3079,"gen_start":2547,"node":28,"role":"declaration","source":0,"src_end":1323,"src_start":1095},{"artifact":1,"gen_end":3642,"gen_start":3079,"node":29,"role":"declaration","source":0,"src_end":1572,"src_start":1325},{"artifact":1,"gen_end":4103,"gen_start":3642,"node":30,"role":"declaration","source":0,"src_end":1746,"src_start":1574},{"artifact":1,"gen_end":4604,"gen_start":4103,"node":31,"role":"declaration","source":0,"src_end":1946,"src_start":1748},{"artifact":1,"gen_end":5092,"gen_start":4604,"node":32,"role":"declaration","source":0,"src_end":2142,"src_start":1948},{"artifact":1,"gen_end":5574,"gen_start":5092,"node":33,"role":"declaration","source":0,"src_end":2330,"src_start":2144},{"artifact":1,"gen_end":6058,"gen_start":5574,"node":34,"role":"declaration","source":0,"src_end":2520,"src_start":2332},{"artifact":1,"gen_end":6337,"gen_start":6058,"node":35,"role":"declaration","source":0,"src_end":2746,"src_start":2522},{"artifact":1,"gen_end":6621,"gen_start":6337,"node":36,"role":"declaration","source":0,"src_end":2950,"src_start":2748},{"artifact":1,"gen_end":6935,"gen_start":6621,"node":37,"role":"declaration","source":0,"src_end":3200,"src_start":2952},{"artifact":1,"gen_end":7307,"gen_start":6935,"node":38,"role":"declaration","source":0,"src_end":3475,"src_start":3202},{"artifact":1,"gen_end":7576,"gen_start":7307,"node":39,"role":"declaration","source":0,"src_end":3687,"src_start":3477},{"artifact":1,"gen_end":7982,"gen_start":7576,"node":40,"role":"declaration","source":0,"src_end":4003,"src_start":3689},{"artifact":1,"gen_end":8279,"gen_start":7982,"node":41,"role":"declaration","source":0,"src_end":4234,"src_start":4005},{"artifact":1,"gen_end":8561,"gen_start":8279,"node":42,"role":"declaration","source":0,"src_end":4474,"src_start":4236},{"artifact":1,"gen_end":8784,"gen_start":8561,"node":43,"role":"declaration","source":0,"src_end":4639,"src_start":4476},{"artifact":1,"gen_end":8799,"gen_start":8784,"node":22,"role":"declaration","source":0,"src_end":4675,"src_start":0}],"module":"Folds","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-latex-module"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"},{"id":40,"kind":"semantic-declaration"},{"id":41,"kind":"semantic-declaration"},{"id":42,"kind":"semantic-declaration"},{"id":43,"kind":"semantic-declaration"}],"semantic_id":"1d59f84598c9f4c2cea21d972760d780f4ba88099ed49b81ffedd3f1acbf79d7","source_id":"4435dd3506d9df549955aa769eb32cb63293a6067cbbed9b94d0fc281ce7e34f","sources":[{"id":0,"kind":"file","path":"src/Folds.lex.tex","sha256":"54564f4bf135ae9deafd8bd854fbc5c09723b85a054ae2261f19b3b137bc3598"}],"spec":"lexlean/source-map/1"} diff --git a/examples/fold-laws/expected/build/maps/FoldLaws/Kernels.map.json b/examples/fold-laws/expected/build/maps/FoldLaws/Kernels.map.json index 6a540252b..64979156b 100644 --- a/examples/fold-laws/expected/build/maps/FoldLaws/Kernels.map.json +++ b/examples/fold-laws/expected/build/maps/FoldLaws/Kernels.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/FoldLaws/Kernels.lean"},{"id":1,"kind":"tex","path":"modules/FoldLaws/Kernels.tex"}],"mappings":[{"artifact":0,"gen_end":312,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":4105,"src_start":0},{"artifact":0,"gen_end":769,"gen_start":312,"node":1,"role":"declaration","source":0,"src_end":576,"src_start":141},{"artifact":0,"gen_end":3822,"gen_start":769,"node":2,"role":"declaration","source":0,"src_end":801,"src_start":578},{"artifact":0,"gen_end":6975,"gen_start":3822,"node":3,"role":"declaration","source":0,"src_end":1092,"src_start":803},{"artifact":0,"gen_end":9994,"gen_start":6975,"node":4,"role":"declaration","source":0,"src_end":1284,"src_start":1094},{"artifact":0,"gen_end":13016,"gen_start":9994,"node":5,"role":"declaration","source":0,"src_end":1479,"src_start":1286},{"artifact":0,"gen_end":16226,"gen_start":13016,"node":6,"role":"declaration","source":0,"src_end":1790,"src_start":1481},{"artifact":0,"gen_end":19448,"gen_start":16226,"node":7,"role":"declaration","source":0,"src_end":2113,"src_start":1792},{"artifact":0,"gen_end":22609,"gen_start":19448,"node":8,"role":"declaration","source":0,"src_end":2397,"src_start":2115},{"artifact":0,"gen_end":25643,"gen_start":22609,"node":9,"role":"declaration","source":0,"src_end":2587,"src_start":2399},{"artifact":0,"gen_end":28659,"gen_start":25643,"node":10,"role":"declaration","source":0,"src_end":2760,"src_start":2589},{"artifact":0,"gen_end":31680,"gen_start":28659,"node":11,"role":"declaration","source":0,"src_end":2952,"src_start":2762},{"artifact":0,"gen_end":34665,"gen_start":31680,"node":12,"role":"declaration","source":0,"src_end":3110,"src_start":2954},{"artifact":0,"gen_end":37671,"gen_start":34665,"node":13,"role":"declaration","source":0,"src_end":3289,"src_start":3112},{"artifact":0,"gen_end":40717,"gen_start":37671,"node":14,"role":"declaration","source":0,"src_end":3490,"src_start":3291},{"artifact":0,"gen_end":43777,"gen_start":40717,"node":15,"role":"declaration","source":0,"src_end":3724,"src_start":3492},{"artifact":0,"gen_end":46815,"gen_start":43777,"node":16,"role":"declaration","source":0,"src_end":3920,"src_start":3726},{"artifact":0,"gen_end":46905,"gen_start":46815,"node":17,"role":"declaration","source":0,"src_end":4069,"src_start":3922},{"artifact":0,"gen_end":46927,"gen_start":46905,"node":0,"role":"declaration","source":0,"src_end":4105,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":18,"role":"declaration","source":0,"src_end":4105,"src_start":0},{"artifact":1,"gen_end":849,"gen_start":134,"node":19,"role":"declaration","source":0,"src_end":576,"src_start":141},{"artifact":1,"gen_end":1137,"gen_start":849,"node":20,"role":"declaration","source":0,"src_end":801,"src_start":578},{"artifact":1,"gen_end":1526,"gen_start":1137,"node":21,"role":"declaration","source":0,"src_end":1092,"src_start":803},{"artifact":1,"gen_end":1780,"gen_start":1526,"node":22,"role":"declaration","source":0,"src_end":1284,"src_start":1094},{"artifact":1,"gen_end":2037,"gen_start":1780,"node":23,"role":"declaration","source":0,"src_end":1479,"src_start":1286},{"artifact":1,"gen_end":2507,"gen_start":2037,"node":24,"role":"declaration","source":0,"src_end":1790,"src_start":1481},{"artifact":1,"gen_end":2990,"gen_start":2507,"node":25,"role":"declaration","source":0,"src_end":2113,"src_start":1792},{"artifact":1,"gen_end":3412,"gen_start":2990,"node":26,"role":"declaration","source":0,"src_end":2397,"src_start":2115},{"artifact":1,"gen_end":3707,"gen_start":3412,"node":27,"role":"declaration","source":0,"src_end":2587,"src_start":2399},{"artifact":1,"gen_end":3983,"gen_start":3707,"node":28,"role":"declaration","source":0,"src_end":2760,"src_start":2589},{"artifact":1,"gen_end":4264,"gen_start":3983,"node":29,"role":"declaration","source":0,"src_end":2952,"src_start":2762},{"artifact":1,"gen_end":4509,"gen_start":4264,"node":30,"role":"declaration","source":0,"src_end":3110,"src_start":2954},{"artifact":1,"gen_end":4775,"gen_start":4509,"node":31,"role":"declaration","source":0,"src_end":3289,"src_start":3112},{"artifact":1,"gen_end":5082,"gen_start":4775,"node":32,"role":"declaration","source":0,"src_end":3490,"src_start":3291},{"artifact":1,"gen_end":5436,"gen_start":5082,"node":33,"role":"declaration","source":0,"src_end":3724,"src_start":3492},{"artifact":1,"gen_end":5734,"gen_start":5436,"node":34,"role":"declaration","source":0,"src_end":3920,"src_start":3726},{"artifact":1,"gen_end":5942,"gen_start":5734,"node":35,"role":"declaration","source":0,"src_end":4069,"src_start":3922},{"artifact":1,"gen_end":5957,"gen_start":5942,"node":18,"role":"declaration","source":0,"src_end":4105,"src_start":0}],"module":"Kernels","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-latex-module"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"}],"semantic_id":"3cc5e8a42a7c9d201fd51d5ce22fd4f8d507769c4f777aec27ead70793c63b27","source_id":"643d28fdf0ac27267ae8c7c2fb534537b5a0305161d242aa876f844aee6222d2","sources":[{"id":0,"kind":"file","path":"src/Kernels.lex.tex","sha256":"951bf028cbf1d8a95dcdddc7e9d6608e180ed697c5ea9df60b8b1c2507b7190f"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/FoldLaws/Kernels.lean"},{"id":1,"kind":"tex","path":"modules/FoldLaws/Kernels.tex"}],"mappings":[{"artifact":0,"gen_end":312,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":4105,"src_start":0},{"artifact":0,"gen_end":769,"gen_start":312,"node":1,"role":"declaration","source":0,"src_end":576,"src_start":141},{"artifact":0,"gen_end":3822,"gen_start":769,"node":2,"role":"declaration","source":0,"src_end":801,"src_start":578},{"artifact":0,"gen_end":6975,"gen_start":3822,"node":3,"role":"declaration","source":0,"src_end":1092,"src_start":803},{"artifact":0,"gen_end":9994,"gen_start":6975,"node":4,"role":"declaration","source":0,"src_end":1284,"src_start":1094},{"artifact":0,"gen_end":13016,"gen_start":9994,"node":5,"role":"declaration","source":0,"src_end":1479,"src_start":1286},{"artifact":0,"gen_end":16226,"gen_start":13016,"node":6,"role":"declaration","source":0,"src_end":1790,"src_start":1481},{"artifact":0,"gen_end":19448,"gen_start":16226,"node":7,"role":"declaration","source":0,"src_end":2113,"src_start":1792},{"artifact":0,"gen_end":22609,"gen_start":19448,"node":8,"role":"declaration","source":0,"src_end":2397,"src_start":2115},{"artifact":0,"gen_end":25643,"gen_start":22609,"node":9,"role":"declaration","source":0,"src_end":2587,"src_start":2399},{"artifact":0,"gen_end":28659,"gen_start":25643,"node":10,"role":"declaration","source":0,"src_end":2760,"src_start":2589},{"artifact":0,"gen_end":31680,"gen_start":28659,"node":11,"role":"declaration","source":0,"src_end":2952,"src_start":2762},{"artifact":0,"gen_end":34665,"gen_start":31680,"node":12,"role":"declaration","source":0,"src_end":3110,"src_start":2954},{"artifact":0,"gen_end":37671,"gen_start":34665,"node":13,"role":"declaration","source":0,"src_end":3289,"src_start":3112},{"artifact":0,"gen_end":40717,"gen_start":37671,"node":14,"role":"declaration","source":0,"src_end":3490,"src_start":3291},{"artifact":0,"gen_end":43777,"gen_start":40717,"node":15,"role":"declaration","source":0,"src_end":3724,"src_start":3492},{"artifact":0,"gen_end":46815,"gen_start":43777,"node":16,"role":"declaration","source":0,"src_end":3920,"src_start":3726},{"artifact":0,"gen_end":46905,"gen_start":46815,"node":17,"role":"declaration","source":0,"src_end":4069,"src_start":3922},{"artifact":0,"gen_end":46927,"gen_start":46905,"node":0,"role":"declaration","source":0,"src_end":4105,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":18,"role":"declaration","source":0,"src_end":4105,"src_start":0},{"artifact":1,"gen_end":849,"gen_start":134,"node":19,"role":"declaration","source":0,"src_end":576,"src_start":141},{"artifact":1,"gen_end":1137,"gen_start":849,"node":20,"role":"declaration","source":0,"src_end":801,"src_start":578},{"artifact":1,"gen_end":1526,"gen_start":1137,"node":21,"role":"declaration","source":0,"src_end":1092,"src_start":803},{"artifact":1,"gen_end":1780,"gen_start":1526,"node":22,"role":"declaration","source":0,"src_end":1284,"src_start":1094},{"artifact":1,"gen_end":2037,"gen_start":1780,"node":23,"role":"declaration","source":0,"src_end":1479,"src_start":1286},{"artifact":1,"gen_end":2507,"gen_start":2037,"node":24,"role":"declaration","source":0,"src_end":1790,"src_start":1481},{"artifact":1,"gen_end":2990,"gen_start":2507,"node":25,"role":"declaration","source":0,"src_end":2113,"src_start":1792},{"artifact":1,"gen_end":3412,"gen_start":2990,"node":26,"role":"declaration","source":0,"src_end":2397,"src_start":2115},{"artifact":1,"gen_end":3707,"gen_start":3412,"node":27,"role":"declaration","source":0,"src_end":2587,"src_start":2399},{"artifact":1,"gen_end":3983,"gen_start":3707,"node":28,"role":"declaration","source":0,"src_end":2760,"src_start":2589},{"artifact":1,"gen_end":4264,"gen_start":3983,"node":29,"role":"declaration","source":0,"src_end":2952,"src_start":2762},{"artifact":1,"gen_end":4509,"gen_start":4264,"node":30,"role":"declaration","source":0,"src_end":3110,"src_start":2954},{"artifact":1,"gen_end":4775,"gen_start":4509,"node":31,"role":"declaration","source":0,"src_end":3289,"src_start":3112},{"artifact":1,"gen_end":5082,"gen_start":4775,"node":32,"role":"declaration","source":0,"src_end":3490,"src_start":3291},{"artifact":1,"gen_end":5436,"gen_start":5082,"node":33,"role":"declaration","source":0,"src_end":3724,"src_start":3492},{"artifact":1,"gen_end":5734,"gen_start":5436,"node":34,"role":"declaration","source":0,"src_end":3920,"src_start":3726},{"artifact":1,"gen_end":5942,"gen_start":5734,"node":35,"role":"declaration","source":0,"src_end":4069,"src_start":3922},{"artifact":1,"gen_end":5957,"gen_start":5942,"node":18,"role":"declaration","source":0,"src_end":4105,"src_start":0}],"module":"Kernels","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-latex-module"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"}],"semantic_id":"1d59f84598c9f4c2cea21d972760d780f4ba88099ed49b81ffedd3f1acbf79d7","source_id":"4435dd3506d9df549955aa769eb32cb63293a6067cbbed9b94d0fc281ce7e34f","sources":[{"id":0,"kind":"file","path":"src/Kernels.lex.tex","sha256":"951bf028cbf1d8a95dcdddc7e9d6608e180ed697c5ea9df60b8b1c2507b7190f"}],"spec":"lexlean/source-map/1"} diff --git a/examples/fold-laws/expected/build/maps/FoldLaws/Main.map.json b/examples/fold-laws/expected/build/maps/FoldLaws/Main.map.json index fa6c2ad1a..58b7e2194 100644 --- a/examples/fold-laws/expected/build/maps/FoldLaws/Main.map.json +++ b/examples/fold-laws/expected/build/maps/FoldLaws/Main.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/FoldLaws/Main.lean"},{"id":1,"kind":"tex","path":"modules/FoldLaws/Main.tex"}],"mappings":[{"artifact":0,"gen_end":369,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":2919,"src_start":0},{"artifact":0,"gen_end":582,"gen_start":369,"node":1,"role":"declaration","source":0,"src_end":427,"src_start":196},{"artifact":0,"gen_end":872,"gen_start":582,"node":2,"role":"declaration","source":0,"src_end":815,"src_start":429},{"artifact":0,"gen_end":1059,"gen_start":872,"node":3,"role":"declaration","source":0,"src_end":1018,"src_start":817},{"artifact":0,"gen_end":4179,"gen_start":1059,"node":4,"role":"declaration","source":0,"src_end":1262,"src_start":1020},{"artifact":0,"gen_end":4752,"gen_start":4179,"node":5,"role":"declaration","source":0,"src_end":1879,"src_start":1264},{"artifact":0,"gen_end":4921,"gen_start":4752,"node":6,"role":"declaration","source":0,"src_end":2112,"src_start":1881},{"artifact":0,"gen_end":5288,"gen_start":4921,"node":7,"role":"declaration","source":0,"src_end":2527,"src_start":2114},{"artifact":0,"gen_end":8508,"gen_start":5288,"node":8,"role":"declaration","source":0,"src_end":2883,"src_start":2529},{"artifact":0,"gen_end":8527,"gen_start":8508,"node":0,"role":"declaration","source":0,"src_end":2919,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":9,"role":"declaration","source":0,"src_end":2919,"src_start":0},{"artifact":1,"gen_end":664,"gen_start":134,"node":10,"role":"declaration","source":0,"src_end":427,"src_start":196},{"artifact":1,"gen_end":954,"gen_start":664,"node":11,"role":"declaration","source":0,"src_end":815,"src_start":429},{"artifact":1,"gen_end":1460,"gen_start":954,"node":12,"role":"declaration","source":0,"src_end":1018,"src_start":817},{"artifact":1,"gen_end":1840,"gen_start":1460,"node":13,"role":"declaration","source":0,"src_end":1262,"src_start":1020},{"artifact":1,"gen_end":2317,"gen_start":1840,"node":14,"role":"declaration","source":0,"src_end":1879,"src_start":1264},{"artifact":1,"gen_end":2636,"gen_start":2317,"node":15,"role":"declaration","source":0,"src_end":2112,"src_start":1881},{"artifact":1,"gen_end":3072,"gen_start":2636,"node":16,"role":"declaration","source":0,"src_end":2527,"src_start":2114},{"artifact":1,"gen_end":3521,"gen_start":3072,"node":17,"role":"declaration","source":0,"src_end":2883,"src_start":2529},{"artifact":1,"gen_end":3536,"gen_start":3521,"node":9,"role":"declaration","source":0,"src_end":2919,"src_start":0}],"module":"Main","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-latex-module"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"}],"semantic_id":"3cc5e8a42a7c9d201fd51d5ce22fd4f8d507769c4f777aec27ead70793c63b27","source_id":"643d28fdf0ac27267ae8c7c2fb534537b5a0305161d242aa876f844aee6222d2","sources":[{"id":0,"kind":"file","path":"src/Main.lex.tex","sha256":"1b2a8a0757e577bf53d164171059e97b45db69e9baa1cfedd09511f03d941a59"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/FoldLaws/Main.lean"},{"id":1,"kind":"tex","path":"modules/FoldLaws/Main.tex"}],"mappings":[{"artifact":0,"gen_end":369,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":2919,"src_start":0},{"artifact":0,"gen_end":582,"gen_start":369,"node":1,"role":"declaration","source":0,"src_end":427,"src_start":196},{"artifact":0,"gen_end":872,"gen_start":582,"node":2,"role":"declaration","source":0,"src_end":815,"src_start":429},{"artifact":0,"gen_end":1059,"gen_start":872,"node":3,"role":"declaration","source":0,"src_end":1018,"src_start":817},{"artifact":0,"gen_end":4179,"gen_start":1059,"node":4,"role":"declaration","source":0,"src_end":1262,"src_start":1020},{"artifact":0,"gen_end":4752,"gen_start":4179,"node":5,"role":"declaration","source":0,"src_end":1879,"src_start":1264},{"artifact":0,"gen_end":4921,"gen_start":4752,"node":6,"role":"declaration","source":0,"src_end":2112,"src_start":1881},{"artifact":0,"gen_end":5288,"gen_start":4921,"node":7,"role":"declaration","source":0,"src_end":2527,"src_start":2114},{"artifact":0,"gen_end":8508,"gen_start":5288,"node":8,"role":"declaration","source":0,"src_end":2883,"src_start":2529},{"artifact":0,"gen_end":8527,"gen_start":8508,"node":0,"role":"declaration","source":0,"src_end":2919,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":9,"role":"declaration","source":0,"src_end":2919,"src_start":0},{"artifact":1,"gen_end":664,"gen_start":134,"node":10,"role":"declaration","source":0,"src_end":427,"src_start":196},{"artifact":1,"gen_end":954,"gen_start":664,"node":11,"role":"declaration","source":0,"src_end":815,"src_start":429},{"artifact":1,"gen_end":1460,"gen_start":954,"node":12,"role":"declaration","source":0,"src_end":1018,"src_start":817},{"artifact":1,"gen_end":1840,"gen_start":1460,"node":13,"role":"declaration","source":0,"src_end":1262,"src_start":1020},{"artifact":1,"gen_end":2317,"gen_start":1840,"node":14,"role":"declaration","source":0,"src_end":1879,"src_start":1264},{"artifact":1,"gen_end":2636,"gen_start":2317,"node":15,"role":"declaration","source":0,"src_end":2112,"src_start":1881},{"artifact":1,"gen_end":3072,"gen_start":2636,"node":16,"role":"declaration","source":0,"src_end":2527,"src_start":2114},{"artifact":1,"gen_end":3521,"gen_start":3072,"node":17,"role":"declaration","source":0,"src_end":2883,"src_start":2529},{"artifact":1,"gen_end":3536,"gen_start":3521,"node":9,"role":"declaration","source":0,"src_end":2919,"src_start":0}],"module":"Main","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-latex-module"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"}],"semantic_id":"1d59f84598c9f4c2cea21d972760d780f4ba88099ed49b81ffedd3f1acbf79d7","source_id":"4435dd3506d9df549955aa769eb32cb63293a6067cbbed9b94d0fc281ce7e34f","sources":[{"id":0,"kind":"file","path":"src/Main.lex.tex","sha256":"1b2a8a0757e577bf53d164171059e97b45db69e9baa1cfedd09511f03d941a59"}],"spec":"lexlean/source-map/1"} diff --git a/examples/fold-laws/expected/verify/audit/LexLeanAudit.A3cc5e8a42a7c9d201fd51d5ce22fd4f8.FoldLaws.Folds.lean b/examples/fold-laws/expected/verify/audit/LexLeanAudit.A1d59f84598c9f4c2cea21d972760d780.FoldLaws.Folds.lean similarity index 100% rename from examples/fold-laws/expected/verify/audit/LexLeanAudit.A3cc5e8a42a7c9d201fd51d5ce22fd4f8.FoldLaws.Folds.lean rename to examples/fold-laws/expected/verify/audit/LexLeanAudit.A1d59f84598c9f4c2cea21d972760d780.FoldLaws.Folds.lean diff --git a/examples/fold-laws/expected/verify/audit/LexLeanAudit.A1d59f84598c9f4c2cea21d972760d780.FoldLaws.Folds.process.json b/examples/fold-laws/expected/verify/audit/LexLeanAudit.A1d59f84598c9f4c2cea21d972760d780.FoldLaws.Folds.process.json new file mode 100644 index 000000000..275c064ad --- /dev/null +++ b/examples/fold-laws/expected/verify/audit/LexLeanAudit.A1d59f84598c9f4c2cea21d972760d780.FoldLaws.Folds.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A1d59f84598c9f4c2cea21d972760d780.FoldLaws.Folds.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A1d59f84598c9f4c2cea21d972760d780.FoldLaws.Folds","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'FoldLaws.Folds.balance' does not depend on any axioms\n'FoldLaws.Folds.balance_credit' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Folds.count' does not depend on any axioms\n'FoldLaws.Folds.count_is_length' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Folds.credit' does not depend on any axioms\n'FoldLaws.Folds.doubledTotal' does not depend on any axioms\n'FoldLaws.Folds.doubled_total' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Folds.doubled_total_closed' does not depend on any axioms\n'FoldLaws.Folds.entryTotal' does not depend on any axioms\n'FoldLaws.Folds.keyTotal' does not depend on any axioms\n'FoldLaws.Folds.map_split' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Folds.reversed' does not depend on any axioms\n'FoldLaws.Folds.setDoubled' does not depend on any axioms\n'FoldLaws.Folds.setTotal' does not depend on any axioms\n'FoldLaws.Folds.set_doubled' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Folds.total' does not depend on any axioms\n'FoldLaws.Folds.total_append_commutes' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Folds.total_reversed' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Folds.valueTotal' does not depend on any axioms\n'FoldLaws.Folds.weighted' does not depend on any axioms\n'FoldLaws.Folds.weighted_total' depends on axioms: [propext, Quot.sound]\n","stdout_sha256":"a4ea8f3cb685d7641c55877667545b867aa7403287fe0cbb81eac6a43b056506","tool":"lean"} diff --git a/examples/fold-laws/expected/verify/audit/LexLeanAudit.A3cc5e8a42a7c9d201fd51d5ce22fd4f8.FoldLaws.Kernels.lean b/examples/fold-laws/expected/verify/audit/LexLeanAudit.A1d59f84598c9f4c2cea21d972760d780.FoldLaws.Kernels.lean similarity index 100% rename from examples/fold-laws/expected/verify/audit/LexLeanAudit.A3cc5e8a42a7c9d201fd51d5ce22fd4f8.FoldLaws.Kernels.lean rename to examples/fold-laws/expected/verify/audit/LexLeanAudit.A1d59f84598c9f4c2cea21d972760d780.FoldLaws.Kernels.lean diff --git a/examples/fold-laws/expected/verify/audit/LexLeanAudit.A1d59f84598c9f4c2cea21d972760d780.FoldLaws.Kernels.process.json b/examples/fold-laws/expected/verify/audit/LexLeanAudit.A1d59f84598c9f4c2cea21d972760d780.FoldLaws.Kernels.process.json new file mode 100644 index 000000000..9056c6ff2 --- /dev/null +++ b/examples/fold-laws/expected/verify/audit/LexLeanAudit.A1d59f84598c9f4c2cea21d972760d780.FoldLaws.Kernels.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A1d59f84598c9f4c2cea21d972760d780.FoldLaws.Kernels.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A1d59f84598c9f4c2cea21d972760d780.FoldLaws.Kernels","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'FoldLaws.Kernels.byte_ceiling' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Kernels.byte_equality' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Kernels.byte_literal' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Kernels.byte_order' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Kernels.division_by_zero' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Kernels.halving_shrinks' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Kernels.requantize' depends on axioms: [propext]\n'FoldLaws.Kernels.requantize_closed' depends on axioms: [propext]\n'FoldLaws.Kernels.requantize_high' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Kernels.requantize_low' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Kernels.requantize_monotone' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Kernels.requantize_runtime_monotone' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Kernels.signed_byte_floor' depends on axioms: [propext, Classical.choice, Quot.sound]\n'FoldLaws.Kernels.signed_byte_order' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Kernels.truncating_division' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Kernels.truncating_division_negative' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Kernels.truncation_toward_zero' depends on axioms: [propext, Quot.sound]\n","stdout_sha256":"9c2786735b0465a160f39ed65373181ac6dd6bfb42059e3dea28559c3548b286","tool":"lean"} diff --git a/examples/fold-laws/expected/verify/audit/LexLeanAudit.A3cc5e8a42a7c9d201fd51d5ce22fd4f8.FoldLaws.Main.lean b/examples/fold-laws/expected/verify/audit/LexLeanAudit.A1d59f84598c9f4c2cea21d972760d780.FoldLaws.Main.lean similarity index 100% rename from examples/fold-laws/expected/verify/audit/LexLeanAudit.A3cc5e8a42a7c9d201fd51d5ce22fd4f8.FoldLaws.Main.lean rename to examples/fold-laws/expected/verify/audit/LexLeanAudit.A1d59f84598c9f4c2cea21d972760d780.FoldLaws.Main.lean diff --git a/examples/fold-laws/expected/verify/audit/LexLeanAudit.A1d59f84598c9f4c2cea21d972760d780.FoldLaws.Main.process.json b/examples/fold-laws/expected/verify/audit/LexLeanAudit.A1d59f84598c9f4c2cea21d972760d780.FoldLaws.Main.process.json new file mode 100644 index 000000000..61e5e6ccb --- /dev/null +++ b/examples/fold-laws/expected/verify/audit/LexLeanAudit.A1d59f84598c9f4c2cea21d972760d780.FoldLaws.Main.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A1d59f84598c9f4c2cea21d972760d780.FoldLaws.Main.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A1d59f84598c9f4c2cea21d972760d780.FoldLaws.Main","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'FoldLaws.Main.count_append' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Main.parity' does not depend on any axioms\n'FoldLaws.Main.parity_fused' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Main.parity_of_total' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Main.parity_step' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Main.requantized_total' depends on axioms: [propext, Classical.choice, Quot.sound]\n'FoldLaws.Main.statistics' does not depend on any axioms\n'FoldLaws.Main.statistics_one_pass' does not depend on any axioms\n","stdout_sha256":"2652bf9be8931830e86bc7c942d488e4ad691681729b6203eed87d39cb027f07","tool":"lean"} diff --git a/examples/fold-laws/expected/verify/audit/LexLeanAudit.A3cc5e8a42a7c9d201fd51d5ce22fd4f8.LexLeanRuntime.Collections.lean b/examples/fold-laws/expected/verify/audit/LexLeanAudit.A1d59f84598c9f4c2cea21d972760d780.LexLeanRuntime.Collections.lean similarity index 100% rename from examples/fold-laws/expected/verify/audit/LexLeanAudit.A3cc5e8a42a7c9d201fd51d5ce22fd4f8.LexLeanRuntime.Collections.lean rename to examples/fold-laws/expected/verify/audit/LexLeanAudit.A1d59f84598c9f4c2cea21d972760d780.LexLeanRuntime.Collections.lean diff --git a/examples/fold-laws/expected/verify/audit/LexLeanAudit.A1d59f84598c9f4c2cea21d972760d780.LexLeanRuntime.Collections.process.json b/examples/fold-laws/expected/verify/audit/LexLeanAudit.A1d59f84598c9f4c2cea21d972760d780.LexLeanRuntime.Collections.process.json new file mode 100644 index 000000000..5dad67779 --- /dev/null +++ b/examples/fold-laws/expected/verify/audit/LexLeanAudit.A1d59f84598c9f4c2cea21d972760d780.LexLeanRuntime.Collections.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A1d59f84598c9f4c2cea21d972760d780.LexLeanRuntime.Collections.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A1d59f84598c9f4c2cea21d972760d780.LexLeanRuntime.Collections","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanCollections.Key' does not depend on any axioms\n'LexLeanCollections.Key.casesOn' does not depend on any axioms\n'LexLeanCollections.Key.compare' does not depend on any axioms\n'LexLeanCollections.Key.ctorIdx' does not depend on any axioms\n'LexLeanCollections.Key.mk._flat_ctor' does not depend on any axioms\n'LexLeanCollections.Key.mk.noConfusion' does not depend on any axioms\n'LexLeanCollections.Key.noConfusion' does not depend on any axioms\n'LexLeanCollections.Key.noConfusionType' does not depend on any axioms\n'LexLeanCollections.Key.recOn' does not depend on any axioms\n'LexLeanCollections.compareCodes' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._f' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._sunfold' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._unsafe_rec' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.match_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.match_4' does not depend on any axioms\n'LexLeanCollections.containsElement' does not depend on any axioms\n'LexLeanCollections.containsElement._f' does not depend on any axioms\n'LexLeanCollections.containsElement._sunfold' does not depend on any axioms\n'LexLeanCollections.containsElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.graphNodes' does not depend on any axioms\n'LexLeanCollections.graphReachable' depends on axioms: [propext]\n'LexLeanCollections.graphSuccessors' does not depend on any axioms\n'LexLeanCollections.graphTopological' does not depend on any axioms\n'LexLeanCollections.insertElement' does not depend on any axioms\n'LexLeanCollections.insertElement._f' does not depend on any axioms\n'LexLeanCollections.insertElement._sunfold' does not depend on any axioms\n'LexLeanCollections.insertElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.insertElement.match_1' does not depend on any axioms\n'LexLeanCollections.insertEntry' does not depend on any axioms\n'LexLeanCollections.insertEntry._f' does not depend on any axioms\n'LexLeanCollections.insertEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.insertEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.insertEntry.match_1' does not depend on any axioms\n'LexLeanCollections.insertEntry.match_3' does not depend on any axioms\n'LexLeanCollections.instKeyBool' depends on axioms: [propext]\n'LexLeanCollections.instKeyInt' does not depend on any axioms\n'LexLeanCollections.instKeyInt16' does not depend on any axioms\n'LexLeanCollections.instKeyInt32' does not depend on any axioms\n'LexLeanCollections.instKeyInt64' does not depend on any axioms\n'LexLeanCollections.instKeyInt8' does not depend on any axioms\n'LexLeanCollections.instKeyNat' does not depend on any axioms\n'LexLeanCollections.instKeyProd' depends on axioms: [propext]\n'LexLeanCollections.instKeyString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanCollections.instKeyUInt16' does not depend on any axioms\n'LexLeanCollections.instKeyUInt32' does not depend on any axioms\n'LexLeanCollections.instKeyUInt64' does not depend on any axioms\n'LexLeanCollections.instKeyUInt8' does not depend on any axioms\n'LexLeanCollections.iterate' does not depend on any axioms\n'LexLeanCollections.iterate._f' does not depend on any axioms\n'LexLeanCollections.iterate._sunfold' does not depend on any axioms\n'LexLeanCollections.iterate._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.iterate.match_1' does not depend on any axioms\n'LexLeanCollections.iterateUntil' does not depend on any axioms\n'LexLeanCollections.iterateUntil._f' does not depend on any axioms\n'LexLeanCollections.iterateUntil._sunfold' does not depend on any axioms\n'LexLeanCollections.iterateUntil._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.iterateUntil.match_1' does not depend on any axioms\n'LexLeanCollections.lessThan' depends on axioms: [propext]\n'LexLeanCollections.lessThan._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.lessThan.match_1' depends on axioms: [propext]\n'LexLeanCollections.listFold' does not depend on any axioms\n'LexLeanCollections.lookupEntry' does not depend on any axioms\n'LexLeanCollections.lookupEntry._f' does not depend on any axioms\n'LexLeanCollections.lookupEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.lookupEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.mapContains' does not depend on any axioms\n'LexLeanCollections.mapEntries' does not depend on any axioms\n'LexLeanCollections.mapFold' does not depend on any axioms\n'LexLeanCollections.mapInsert' does not depend on any axioms\n'LexLeanCollections.mapKeys' does not depend on any axioms\n'LexLeanCollections.mapLookup' does not depend on any axioms\n'LexLeanCollections.mapRemove' does not depend on any axioms\n'LexLeanCollections.mapSize' does not depend on any axioms\n'LexLeanCollections.mapValues' does not depend on any axioms\n'LexLeanCollections.reachableFrom' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._f' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._sunfold' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._unsafe_rec' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom.match_1' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom.match_4' does not depend on any axioms\n'LexLeanCollections.removeElement' does not depend on any axioms\n'LexLeanCollections.removeElement._f' does not depend on any axioms\n'LexLeanCollections.removeElement._sunfold' does not depend on any axioms\n'LexLeanCollections.removeElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.removeEntry' does not depend on any axioms\n'LexLeanCollections.removeEntry._f' does not depend on any axioms\n'LexLeanCollections.removeEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.removeEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.setContains' does not depend on any axioms\n'LexLeanCollections.setDifference' does not depend on any axioms\n'LexLeanCollections.setElements' does not depend on any axioms\n'LexLeanCollections.setFold' does not depend on any axioms\n'LexLeanCollections.setInsert' does not depend on any axioms\n'LexLeanCollections.setIntersection' does not depend on any axioms\n'LexLeanCollections.setRemove' does not depend on any axioms\n'LexLeanCollections.setSize' does not depend on any axioms\n'LexLeanCollections.setUnion' does not depend on any axioms\n'LexLeanCollections.topological' does not depend on any axioms\n'LexLeanCollections.topological._f' does not depend on any axioms\n'LexLeanCollections.topological._sunfold' does not depend on any axioms\n'LexLeanCollections.topological._unsafe_rec' does not depend on any axioms\n","stdout_sha256":"b75acc0e99e23684c3cc876eacbfc93f47161cfee8a7440df17fa45f321c8c6a","tool":"lean"} diff --git a/examples/fold-laws/expected/verify/audit/LexLeanAudit.A3cc5e8a42a7c9d201fd51d5ce22fd4f8.LexLeanRuntime.Laws.lean b/examples/fold-laws/expected/verify/audit/LexLeanAudit.A1d59f84598c9f4c2cea21d972760d780.LexLeanRuntime.Laws.lean similarity index 100% rename from examples/fold-laws/expected/verify/audit/LexLeanAudit.A3cc5e8a42a7c9d201fd51d5ce22fd4f8.LexLeanRuntime.Laws.lean rename to examples/fold-laws/expected/verify/audit/LexLeanAudit.A1d59f84598c9f4c2cea21d972760d780.LexLeanRuntime.Laws.lean diff --git a/examples/fold-laws/expected/verify/audit/LexLeanAudit.A1d59f84598c9f4c2cea21d972760d780.LexLeanRuntime.Laws.process.json b/examples/fold-laws/expected/verify/audit/LexLeanAudit.A1d59f84598c9f4c2cea21d972760d780.LexLeanRuntime.Laws.process.json new file mode 100644 index 000000000..0cf794c28 --- /dev/null +++ b/examples/fold-laws/expected/verify/audit/LexLeanAudit.A1d59f84598c9f4c2cea21d972760d780.LexLeanRuntime.Laws.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A1d59f84598c9f4c2cea21d972760d780.LexLeanRuntime.Laws.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A1d59f84598c9f4c2cea21d972760d780.LexLeanRuntime.Laws","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanCollections.lessThan._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanCollections.lessThan.eq_1' depends on axioms: [propext]\n'LexLeanCollections.listFold.eq_1' does not depend on any axioms\n'LexLeanLaws.append_list' does not depend on any axioms\n'LexLeanLaws.length_list' does not depend on any axioms\n'LexLeanLaws.lessThan_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int16' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int32' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int64' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int8' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_nat' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint16' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint32' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint64' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint8' depends on axioms: [propext]\n'LexLeanLaws.listFold_add_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_add_int_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_add_nat' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_add_nat_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_append' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_cons' does not depend on any axioms\n'LexLeanLaws.listFold_extend' depends on axioms: [propext]\n'LexLeanLaws.listFold_fusion' does not depend on any axioms\n'LexLeanLaws.listFold_nil' does not depend on any axioms\n'LexLeanLaws.listFold_pair' does not depend on any axioms\n'LexLeanLaws.listFold_prepend' depends on axioms: [propext]\n'LexLeanLaws.listFold_sub_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_sub_int_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.mapEntries_self' does not depend on any axioms\n'LexLeanLaws.mapFold_listFold' does not depend on any axioms\n'LexLeanLaws.mapSize_length' does not depend on any axioms\n'LexLeanLaws.quotient_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.quotient_nat' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.remainder_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.remainder_nat' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.setElements_self' does not depend on any axioms\n'LexLeanLaws.setFold_listFold' does not depend on any axioms\n'LexLeanLaws.setSize_length' does not depend on any axioms\n'LexLeanLaws.sumInt' does not depend on any axioms\n'LexLeanLaws.sumInt._f' does not depend on any axioms\n'LexLeanLaws.sumInt._sunfold' does not depend on any axioms\n'LexLeanLaws.sumInt._unsafe_rec' does not depend on any axioms\n'LexLeanLaws.sumInt.eq_1' does not depend on any axioms\n'LexLeanLaws.sumInt.eq_2' does not depend on any axioms\n'LexLeanLaws.sumInt.eq_def' does not depend on any axioms\n'LexLeanLaws.sumInt_add' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_append' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_cons' does not depend on any axioms\n'LexLeanLaws.sumInt_const' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_mul' depends on axioms: [propext]\n'LexLeanLaws.sumInt_mul_right' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_mul_self' depends on axioms: [propext]\n'LexLeanLaws.sumInt_neg' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_neg_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_nil' does not depend on any axioms\n'LexLeanLaws.sumInt_perm' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_reverse' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_sub' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat' does not depend on any axioms\n'LexLeanLaws.sumNat._f' does not depend on any axioms\n'LexLeanLaws.sumNat._sunfold' does not depend on any axioms\n'LexLeanLaws.sumNat._unsafe_rec' does not depend on any axioms\n'LexLeanLaws.sumNat.eq_1' does not depend on any axioms\n'LexLeanLaws.sumNat.eq_2' does not depend on any axioms\n'LexLeanLaws.sumNat.eq_def' does not depend on any axioms\n'LexLeanLaws.sumNat.match_1' does not depend on any axioms\n'LexLeanLaws.sumNat_add' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_append' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_cons' does not depend on any axioms\n'LexLeanLaws.sumNat_const' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_mul' does not depend on any axioms\n'LexLeanLaws.sumNat_mul_right' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_mul_self' does not depend on any axioms\n'LexLeanLaws.sumNat_nil' does not depend on any axioms\n'LexLeanLaws.sumNat_perm' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_reverse' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.tdiv_ediv' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.tmod_emod' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.quotient.eq_1' does not depend on any axioms\n'LexLeanRuntime.remainder.eq_1' does not depend on any axioms\n","stdout_sha256":"a4ba2d39c9cdfd5e40c41c5ccf4726d937fd192fc042b74bb56cc0651e28919e","tool":"lean"} diff --git a/examples/fold-laws/expected/verify/audit/LexLeanAudit.A3cc5e8a42a7c9d201fd51d5ce22fd4f8.LexLeanRuntime.Portable.lean b/examples/fold-laws/expected/verify/audit/LexLeanAudit.A1d59f84598c9f4c2cea21d972760d780.LexLeanRuntime.Portable.lean similarity index 100% rename from examples/fold-laws/expected/verify/audit/LexLeanAudit.A3cc5e8a42a7c9d201fd51d5ce22fd4f8.LexLeanRuntime.Portable.lean rename to examples/fold-laws/expected/verify/audit/LexLeanAudit.A1d59f84598c9f4c2cea21d972760d780.LexLeanRuntime.Portable.lean diff --git a/examples/fold-laws/expected/verify/audit/LexLeanAudit.A1d59f84598c9f4c2cea21d972760d780.LexLeanRuntime.Portable.process.json b/examples/fold-laws/expected/verify/audit/LexLeanAudit.A1d59f84598c9f4c2cea21d972760d780.LexLeanRuntime.Portable.process.json new file mode 100644 index 000000000..76e7a4edc --- /dev/null +++ b/examples/fold-laws/expected/verify/audit/LexLeanAudit.A1d59f84598c9f4c2cea21d972760d780.LexLeanRuntime.Portable.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A1d59f84598c9f4c2cea21d972760d780.LexLeanRuntime.Portable.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A1d59f84598c9f4c2cea21d972760d780.LexLeanRuntime.Portable","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanRuntime.Appendable' does not depend on any axioms\n'LexLeanRuntime.Appendable.append' does not depend on any axioms\n'LexLeanRuntime.Appendable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Appendable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Appendable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Appendable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Appendable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Appendable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Appendable.recOn' does not depend on any axioms\n'LexLeanRuntime.Decimal' does not depend on any axioms\n'LexLeanRuntime.Decimal.casesOn' does not depend on any axioms\n'LexLeanRuntime.Decimal.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Decimal.format' does not depend on any axioms\n'LexLeanRuntime.Decimal.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Decimal.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Decimal.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Decimal.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Decimal.parse' does not depend on any axioms\n'LexLeanRuntime.Decimal.recOn' does not depend on any axioms\n'LexLeanRuntime.Fixed' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitAnd' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitNot' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitOr' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitXor' does not depend on any axioms\n'LexLeanRuntime.Fixed.casesOn' does not depend on any axioms\n'LexLeanRuntime.Fixed.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Fixed.fromInt' does not depend on any axioms\n'LexLeanRuntime.Fixed.maximum' does not depend on any axioms\n'LexLeanRuntime.Fixed.minimum' does not depend on any axioms\n'LexLeanRuntime.Fixed.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Fixed.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Fixed.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Fixed.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Fixed.recOn' does not depend on any axioms\n'LexLeanRuntime.Fixed.shiftLeft' does not depend on any axioms\n'LexLeanRuntime.Fixed.shiftRight' does not depend on any axioms\n'LexLeanRuntime.Fixed.toToMathInt' does not depend on any axioms\n'LexLeanRuntime.Indexable' does not depend on any axioms\n'LexLeanRuntime.Indexable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Indexable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Indexable.index' does not depend on any axioms\n'LexLeanRuntime.Indexable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Indexable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Indexable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Indexable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Indexable.recOn' does not depend on any axioms\n'LexLeanRuntime.Lengthable' does not depend on any axioms\n'LexLeanRuntime.Lengthable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Lengthable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Lengthable.length' does not depend on any axioms\n'LexLeanRuntime.Lengthable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Lengthable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Lengthable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Lengthable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Lengthable.recOn' does not depend on any axioms\n'LexLeanRuntime.Quotient' does not depend on any axioms\n'LexLeanRuntime.Quotient.casesOn' does not depend on any axioms\n'LexLeanRuntime.Quotient.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Quotient.isZero' does not depend on any axioms\n'LexLeanRuntime.Quotient.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Quotient.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Quotient.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Quotient.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Quotient.quotient' does not depend on any axioms\n'LexLeanRuntime.Quotient.recOn' does not depend on any axioms\n'LexLeanRuntime.Quotient.remainder' does not depend on any axioms\n'LexLeanRuntime.Sliceable' does not depend on any axioms\n'LexLeanRuntime.Sliceable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Sliceable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Sliceable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Sliceable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Sliceable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Sliceable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Sliceable.recOn' does not depend on any axioms\n'LexLeanRuntime.Sliceable.slice' does not depend on any axioms\n'LexLeanRuntime.ToMathInt' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.casesOn' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.noConfusion' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.recOn' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.toInt' does not depend on any axioms\n'LexLeanRuntime.append' does not depend on any axioms\n'LexLeanRuntime.bitAnd' does not depend on any axioms\n'LexLeanRuntime.bitNot' does not depend on any axioms\n'LexLeanRuntime.bitOr' does not depend on any axioms\n'LexLeanRuntime.bitXor' does not depend on any axioms\n'LexLeanRuntime.checkedAdd' does not depend on any axioms\n'LexLeanRuntime.checkedAddInt64' does not depend on any axioms\n'LexLeanRuntime.checkedConvert' does not depend on any axioms\n'LexLeanRuntime.checkedFromInt' does not depend on any axioms\n'LexLeanRuntime.checkedMultiply' does not depend on any axioms\n'LexLeanRuntime.checkedMultiplyInt64' does not depend on any axioms\n'LexLeanRuntime.checkedMultiplyInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.checkedNegate' does not depend on any axioms\n'LexLeanRuntime.checkedNegateInt64' does not depend on any axioms\n'LexLeanRuntime.checkedQuotient' does not depend on any axioms\n'LexLeanRuntime.checkedQuotientInt64' does not depend on any axioms\n'LexLeanRuntime.checkedSubtract' does not depend on any axioms\n'LexLeanRuntime.checkedSubtractInt64' does not depend on any axioms\n'LexLeanRuntime.compareBytes' depends on axioms: [propext]\n'LexLeanRuntime.divideMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._f' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._sunfold' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.equal' does not depend on any axioms\n'LexLeanRuntime.formatDecimal' does not depend on any axioms\n'LexLeanRuntime.index' does not depend on any axioms\n'LexLeanRuntime.instAppendableByteArray' does not depend on any axioms\n'LexLeanRuntime.instAppendableList' does not depend on any axioms\n'LexLeanRuntime.instDecimalInt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instDecimalInt.match_1' does not depend on any axioms\n'LexLeanRuntime.instDecimalOfFixedOfToString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instFixedInt16' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt32' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt64' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt8' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt16' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt32' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt64' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt8' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instIndexableByteArrayUInt8' does not depend on any axioms\n'LexLeanRuntime.instIndexableList' does not depend on any axioms\n'LexLeanRuntime.instLengthableByteArray' does not depend on any axioms\n'LexLeanRuntime.instLengthableList' does not depend on any axioms\n'LexLeanRuntime.instLengthableString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instQuotientInt' does not depend on any axioms\n'LexLeanRuntime.instQuotientNat' does not depend on any axioms\n'LexLeanRuntime.instSliceableByteArray' does not depend on any axioms\n'LexLeanRuntime.instSliceableList' does not depend on any axioms\n'LexLeanRuntime.instToMathIntInt' does not depend on any axioms\n'LexLeanRuntime.join' depends on axioms: [propext]\n'LexLeanRuntime.length' does not depend on any axioms\n'LexLeanRuntime.listIndex' does not depend on any axioms\n'LexLeanRuntime.listIndex._f' does not depend on any axioms\n'LexLeanRuntime.listIndex._sunfold' does not depend on any axioms\n'LexLeanRuntime.listIndex._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.listIndex.match_1' does not depend on any axioms\n'LexLeanRuntime.magnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.multiply' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._f' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._sunfold' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.negate' does not depend on any axioms\n'LexLeanRuntime.parseDecimal' does not depend on any axioms\n'LexLeanRuntime.quotient' does not depend on any axioms\n'LexLeanRuntime.remainder' does not depend on any axioms\n'LexLeanRuntime.shiftLeft' does not depend on any axioms\n'LexLeanRuntime.shiftRight' does not depend on any axioms\n'LexLeanRuntime.signedMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.slice' does not depend on any axioms\n'LexLeanRuntime.splitExact' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.subtract' does not depend on any axioms\n'LexLeanRuntime.utf8Decode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.utf8Encode' does not depend on any axioms\n","stdout_sha256":"73fea1d9e9e9f0a2f1363b9f284eeeb9e434430e9fa910260b9526bad864641e","tool":"lean"} diff --git a/examples/fold-laws/expected/verify/audit/LexLeanAudit.A3cc5e8a42a7c9d201fd51d5ce22fd4f8.FoldLaws.Folds.process.json b/examples/fold-laws/expected/verify/audit/LexLeanAudit.A3cc5e8a42a7c9d201fd51d5ce22fd4f8.FoldLaws.Folds.process.json deleted file mode 100644 index 70da9cfb4..000000000 --- a/examples/fold-laws/expected/verify/audit/LexLeanAudit.A3cc5e8a42a7c9d201fd51d5ce22fd4f8.FoldLaws.Folds.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A3cc5e8a42a7c9d201fd51d5ce22fd4f8.FoldLaws.Folds.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A3cc5e8a42a7c9d201fd51d5ce22fd4f8.FoldLaws.Folds","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'FoldLaws.Folds.balance' does not depend on any axioms\n'FoldLaws.Folds.balance_credit' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Folds.count' does not depend on any axioms\n'FoldLaws.Folds.count_is_length' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Folds.credit' does not depend on any axioms\n'FoldLaws.Folds.doubledTotal' does not depend on any axioms\n'FoldLaws.Folds.doubled_total' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Folds.doubled_total_closed' does not depend on any axioms\n'FoldLaws.Folds.entryTotal' does not depend on any axioms\n'FoldLaws.Folds.keyTotal' does not depend on any axioms\n'FoldLaws.Folds.map_split' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Folds.reversed' does not depend on any axioms\n'FoldLaws.Folds.setDoubled' does not depend on any axioms\n'FoldLaws.Folds.setTotal' does not depend on any axioms\n'FoldLaws.Folds.set_doubled' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Folds.total' does not depend on any axioms\n'FoldLaws.Folds.total_append_commutes' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Folds.total_reversed' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Folds.valueTotal' does not depend on any axioms\n'FoldLaws.Folds.weighted' does not depend on any axioms\n'FoldLaws.Folds.weighted_total' depends on axioms: [propext, Quot.sound]\n","stdout_sha256":"a4ea8f3cb685d7641c55877667545b867aa7403287fe0cbb81eac6a43b056506","tool":"lean"} diff --git a/examples/fold-laws/expected/verify/audit/LexLeanAudit.A3cc5e8a42a7c9d201fd51d5ce22fd4f8.FoldLaws.Kernels.process.json b/examples/fold-laws/expected/verify/audit/LexLeanAudit.A3cc5e8a42a7c9d201fd51d5ce22fd4f8.FoldLaws.Kernels.process.json deleted file mode 100644 index f67e88121..000000000 --- a/examples/fold-laws/expected/verify/audit/LexLeanAudit.A3cc5e8a42a7c9d201fd51d5ce22fd4f8.FoldLaws.Kernels.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A3cc5e8a42a7c9d201fd51d5ce22fd4f8.FoldLaws.Kernels.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A3cc5e8a42a7c9d201fd51d5ce22fd4f8.FoldLaws.Kernels","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'FoldLaws.Kernels.byte_ceiling' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Kernels.byte_equality' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Kernels.byte_literal' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Kernels.byte_order' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Kernels.division_by_zero' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Kernels.halving_shrinks' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Kernels.requantize' depends on axioms: [propext]\n'FoldLaws.Kernels.requantize_closed' depends on axioms: [propext]\n'FoldLaws.Kernels.requantize_high' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Kernels.requantize_low' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Kernels.requantize_monotone' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Kernels.requantize_runtime_monotone' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Kernels.signed_byte_floor' depends on axioms: [propext, Classical.choice, Quot.sound]\n'FoldLaws.Kernels.signed_byte_order' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Kernels.truncating_division' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Kernels.truncating_division_negative' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Kernels.truncation_toward_zero' depends on axioms: [propext, Quot.sound]\n","stdout_sha256":"9c2786735b0465a160f39ed65373181ac6dd6bfb42059e3dea28559c3548b286","tool":"lean"} diff --git a/examples/fold-laws/expected/verify/audit/LexLeanAudit.A3cc5e8a42a7c9d201fd51d5ce22fd4f8.FoldLaws.Main.process.json b/examples/fold-laws/expected/verify/audit/LexLeanAudit.A3cc5e8a42a7c9d201fd51d5ce22fd4f8.FoldLaws.Main.process.json deleted file mode 100644 index eee62dcb6..000000000 --- a/examples/fold-laws/expected/verify/audit/LexLeanAudit.A3cc5e8a42a7c9d201fd51d5ce22fd4f8.FoldLaws.Main.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A3cc5e8a42a7c9d201fd51d5ce22fd4f8.FoldLaws.Main.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A3cc5e8a42a7c9d201fd51d5ce22fd4f8.FoldLaws.Main","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'FoldLaws.Main.count_append' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Main.parity' does not depend on any axioms\n'FoldLaws.Main.parity_fused' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Main.parity_of_total' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Main.parity_step' depends on axioms: [propext, Quot.sound]\n'FoldLaws.Main.requantized_total' depends on axioms: [propext, Classical.choice, Quot.sound]\n'FoldLaws.Main.statistics' does not depend on any axioms\n'FoldLaws.Main.statistics_one_pass' does not depend on any axioms\n","stdout_sha256":"2652bf9be8931830e86bc7c942d488e4ad691681729b6203eed87d39cb027f07","tool":"lean"} diff --git a/examples/fold-laws/expected/verify/audit/LexLeanAudit.A3cc5e8a42a7c9d201fd51d5ce22fd4f8.LexLeanRuntime.Collections.process.json b/examples/fold-laws/expected/verify/audit/LexLeanAudit.A3cc5e8a42a7c9d201fd51d5ce22fd4f8.LexLeanRuntime.Collections.process.json deleted file mode 100644 index ab9a0c573..000000000 --- a/examples/fold-laws/expected/verify/audit/LexLeanAudit.A3cc5e8a42a7c9d201fd51d5ce22fd4f8.LexLeanRuntime.Collections.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A3cc5e8a42a7c9d201fd51d5ce22fd4f8.LexLeanRuntime.Collections.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A3cc5e8a42a7c9d201fd51d5ce22fd4f8.LexLeanRuntime.Collections","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanCollections.Key' does not depend on any axioms\n'LexLeanCollections.Key.casesOn' does not depend on any axioms\n'LexLeanCollections.Key.compare' does not depend on any axioms\n'LexLeanCollections.Key.ctorIdx' does not depend on any axioms\n'LexLeanCollections.Key.mk._flat_ctor' does not depend on any axioms\n'LexLeanCollections.Key.mk.noConfusion' does not depend on any axioms\n'LexLeanCollections.Key.noConfusion' does not depend on any axioms\n'LexLeanCollections.Key.noConfusionType' does not depend on any axioms\n'LexLeanCollections.Key.recOn' does not depend on any axioms\n'LexLeanCollections.compareCodes' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._f' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._sunfold' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._unsafe_rec' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.match_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.match_4' does not depend on any axioms\n'LexLeanCollections.containsElement' does not depend on any axioms\n'LexLeanCollections.containsElement._f' does not depend on any axioms\n'LexLeanCollections.containsElement._sunfold' does not depend on any axioms\n'LexLeanCollections.containsElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.graphNodes' does not depend on any axioms\n'LexLeanCollections.graphReachable' depends on axioms: [propext]\n'LexLeanCollections.graphSuccessors' does not depend on any axioms\n'LexLeanCollections.graphTopological' does not depend on any axioms\n'LexLeanCollections.insertElement' does not depend on any axioms\n'LexLeanCollections.insertElement._f' does not depend on any axioms\n'LexLeanCollections.insertElement._sunfold' does not depend on any axioms\n'LexLeanCollections.insertElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.insertElement.match_1' does not depend on any axioms\n'LexLeanCollections.insertEntry' does not depend on any axioms\n'LexLeanCollections.insertEntry._f' does not depend on any axioms\n'LexLeanCollections.insertEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.insertEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.insertEntry.match_1' does not depend on any axioms\n'LexLeanCollections.insertEntry.match_3' does not depend on any axioms\n'LexLeanCollections.instKeyBool' depends on axioms: [propext]\n'LexLeanCollections.instKeyInt' does not depend on any axioms\n'LexLeanCollections.instKeyInt16' does not depend on any axioms\n'LexLeanCollections.instKeyInt32' does not depend on any axioms\n'LexLeanCollections.instKeyInt64' does not depend on any axioms\n'LexLeanCollections.instKeyInt8' does not depend on any axioms\n'LexLeanCollections.instKeyNat' does not depend on any axioms\n'LexLeanCollections.instKeyProd' depends on axioms: [propext]\n'LexLeanCollections.instKeyString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanCollections.instKeyUInt16' does not depend on any axioms\n'LexLeanCollections.instKeyUInt32' does not depend on any axioms\n'LexLeanCollections.instKeyUInt64' does not depend on any axioms\n'LexLeanCollections.instKeyUInt8' does not depend on any axioms\n'LexLeanCollections.iterate' does not depend on any axioms\n'LexLeanCollections.iterate._f' does not depend on any axioms\n'LexLeanCollections.iterate._sunfold' does not depend on any axioms\n'LexLeanCollections.iterate._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.iterate.match_1' does not depend on any axioms\n'LexLeanCollections.iterateUntil' does not depend on any axioms\n'LexLeanCollections.iterateUntil._f' does not depend on any axioms\n'LexLeanCollections.iterateUntil._sunfold' does not depend on any axioms\n'LexLeanCollections.iterateUntil._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.iterateUntil.match_1' does not depend on any axioms\n'LexLeanCollections.lessThan' depends on axioms: [propext]\n'LexLeanCollections.lessThan._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.lessThan.match_1' depends on axioms: [propext]\n'LexLeanCollections.listFold' does not depend on any axioms\n'LexLeanCollections.lookupEntry' does not depend on any axioms\n'LexLeanCollections.lookupEntry._f' does not depend on any axioms\n'LexLeanCollections.lookupEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.lookupEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.mapContains' does not depend on any axioms\n'LexLeanCollections.mapEntries' does not depend on any axioms\n'LexLeanCollections.mapFold' does not depend on any axioms\n'LexLeanCollections.mapInsert' does not depend on any axioms\n'LexLeanCollections.mapKeys' does not depend on any axioms\n'LexLeanCollections.mapLookup' does not depend on any axioms\n'LexLeanCollections.mapRemove' does not depend on any axioms\n'LexLeanCollections.mapSize' does not depend on any axioms\n'LexLeanCollections.mapValues' does not depend on any axioms\n'LexLeanCollections.reachableFrom' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._f' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._sunfold' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._unsafe_rec' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom.match_1' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom.match_4' does not depend on any axioms\n'LexLeanCollections.removeElement' does not depend on any axioms\n'LexLeanCollections.removeElement._f' does not depend on any axioms\n'LexLeanCollections.removeElement._sunfold' does not depend on any axioms\n'LexLeanCollections.removeElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.removeEntry' does not depend on any axioms\n'LexLeanCollections.removeEntry._f' does not depend on any axioms\n'LexLeanCollections.removeEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.removeEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.setContains' does not depend on any axioms\n'LexLeanCollections.setDifference' does not depend on any axioms\n'LexLeanCollections.setElements' does not depend on any axioms\n'LexLeanCollections.setFold' does not depend on any axioms\n'LexLeanCollections.setInsert' does not depend on any axioms\n'LexLeanCollections.setIntersection' does not depend on any axioms\n'LexLeanCollections.setRemove' does not depend on any axioms\n'LexLeanCollections.setSize' does not depend on any axioms\n'LexLeanCollections.setUnion' does not depend on any axioms\n'LexLeanCollections.topological' does not depend on any axioms\n'LexLeanCollections.topological._f' does not depend on any axioms\n'LexLeanCollections.topological._sunfold' does not depend on any axioms\n'LexLeanCollections.topological._unsafe_rec' does not depend on any axioms\n","stdout_sha256":"b75acc0e99e23684c3cc876eacbfc93f47161cfee8a7440df17fa45f321c8c6a","tool":"lean"} diff --git a/examples/fold-laws/expected/verify/audit/LexLeanAudit.A3cc5e8a42a7c9d201fd51d5ce22fd4f8.LexLeanRuntime.Laws.process.json b/examples/fold-laws/expected/verify/audit/LexLeanAudit.A3cc5e8a42a7c9d201fd51d5ce22fd4f8.LexLeanRuntime.Laws.process.json deleted file mode 100644 index e3812b90a..000000000 --- a/examples/fold-laws/expected/verify/audit/LexLeanAudit.A3cc5e8a42a7c9d201fd51d5ce22fd4f8.LexLeanRuntime.Laws.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A3cc5e8a42a7c9d201fd51d5ce22fd4f8.LexLeanRuntime.Laws.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A3cc5e8a42a7c9d201fd51d5ce22fd4f8.LexLeanRuntime.Laws","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanCollections.lessThan._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanCollections.lessThan.eq_1' depends on axioms: [propext]\n'LexLeanCollections.listFold.eq_1' does not depend on any axioms\n'LexLeanLaws.append_list' does not depend on any axioms\n'LexLeanLaws.length_list' does not depend on any axioms\n'LexLeanLaws.lessThan_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int16' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int32' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int64' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int8' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_nat' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint16' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint32' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint64' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint8' depends on axioms: [propext]\n'LexLeanLaws.listFold_add_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_add_int_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_add_nat' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_add_nat_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_append' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_cons' does not depend on any axioms\n'LexLeanLaws.listFold_extend' depends on axioms: [propext]\n'LexLeanLaws.listFold_fusion' does not depend on any axioms\n'LexLeanLaws.listFold_nil' does not depend on any axioms\n'LexLeanLaws.listFold_pair' does not depend on any axioms\n'LexLeanLaws.listFold_prepend' depends on axioms: [propext]\n'LexLeanLaws.listFold_sub_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_sub_int_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.mapEntries_self' does not depend on any axioms\n'LexLeanLaws.mapFold_listFold' does not depend on any axioms\n'LexLeanLaws.mapSize_length' does not depend on any axioms\n'LexLeanLaws.quotient_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.quotient_nat' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.remainder_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.remainder_nat' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.setElements_self' does not depend on any axioms\n'LexLeanLaws.setFold_listFold' does not depend on any axioms\n'LexLeanLaws.setSize_length' does not depend on any axioms\n'LexLeanLaws.sumInt' does not depend on any axioms\n'LexLeanLaws.sumInt._f' does not depend on any axioms\n'LexLeanLaws.sumInt._sunfold' does not depend on any axioms\n'LexLeanLaws.sumInt._unsafe_rec' does not depend on any axioms\n'LexLeanLaws.sumInt.eq_1' does not depend on any axioms\n'LexLeanLaws.sumInt.eq_2' does not depend on any axioms\n'LexLeanLaws.sumInt.eq_def' does not depend on any axioms\n'LexLeanLaws.sumInt_add' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_append' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_cons' does not depend on any axioms\n'LexLeanLaws.sumInt_const' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_mul' depends on axioms: [propext]\n'LexLeanLaws.sumInt_mul_right' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_mul_self' depends on axioms: [propext]\n'LexLeanLaws.sumInt_neg' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_neg_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_nil' does not depend on any axioms\n'LexLeanLaws.sumInt_perm' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_reverse' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_sub' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat' does not depend on any axioms\n'LexLeanLaws.sumNat._f' does not depend on any axioms\n'LexLeanLaws.sumNat._sunfold' does not depend on any axioms\n'LexLeanLaws.sumNat._unsafe_rec' does not depend on any axioms\n'LexLeanLaws.sumNat.eq_1' does not depend on any axioms\n'LexLeanLaws.sumNat.eq_2' does not depend on any axioms\n'LexLeanLaws.sumNat.eq_def' does not depend on any axioms\n'LexLeanLaws.sumNat.match_1' does not depend on any axioms\n'LexLeanLaws.sumNat_add' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_append' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_cons' does not depend on any axioms\n'LexLeanLaws.sumNat_const' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_mul' does not depend on any axioms\n'LexLeanLaws.sumNat_mul_right' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_mul_self' does not depend on any axioms\n'LexLeanLaws.sumNat_nil' does not depend on any axioms\n'LexLeanLaws.sumNat_perm' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_reverse' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.tdiv_ediv' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.tmod_emod' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.quotient.eq_1' does not depend on any axioms\n'LexLeanRuntime.remainder.eq_1' does not depend on any axioms\n","stdout_sha256":"a4ba2d39c9cdfd5e40c41c5ccf4726d937fd192fc042b74bb56cc0651e28919e","tool":"lean"} diff --git a/examples/fold-laws/expected/verify/audit/LexLeanAudit.A3cc5e8a42a7c9d201fd51d5ce22fd4f8.LexLeanRuntime.Portable.process.json b/examples/fold-laws/expected/verify/audit/LexLeanAudit.A3cc5e8a42a7c9d201fd51d5ce22fd4f8.LexLeanRuntime.Portable.process.json deleted file mode 100644 index d1cd9b0bb..000000000 --- a/examples/fold-laws/expected/verify/audit/LexLeanAudit.A3cc5e8a42a7c9d201fd51d5ce22fd4f8.LexLeanRuntime.Portable.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A3cc5e8a42a7c9d201fd51d5ce22fd4f8.LexLeanRuntime.Portable.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A3cc5e8a42a7c9d201fd51d5ce22fd4f8.LexLeanRuntime.Portable","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanRuntime.Appendable' does not depend on any axioms\n'LexLeanRuntime.Appendable.append' does not depend on any axioms\n'LexLeanRuntime.Appendable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Appendable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Appendable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Appendable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Appendable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Appendable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Appendable.recOn' does not depend on any axioms\n'LexLeanRuntime.Decimal' does not depend on any axioms\n'LexLeanRuntime.Decimal.casesOn' does not depend on any axioms\n'LexLeanRuntime.Decimal.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Decimal.format' does not depend on any axioms\n'LexLeanRuntime.Decimal.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Decimal.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Decimal.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Decimal.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Decimal.parse' does not depend on any axioms\n'LexLeanRuntime.Decimal.recOn' does not depend on any axioms\n'LexLeanRuntime.Fixed' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitAnd' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitNot' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitOr' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitXor' does not depend on any axioms\n'LexLeanRuntime.Fixed.casesOn' does not depend on any axioms\n'LexLeanRuntime.Fixed.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Fixed.fromInt' does not depend on any axioms\n'LexLeanRuntime.Fixed.maximum' does not depend on any axioms\n'LexLeanRuntime.Fixed.minimum' does not depend on any axioms\n'LexLeanRuntime.Fixed.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Fixed.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Fixed.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Fixed.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Fixed.recOn' does not depend on any axioms\n'LexLeanRuntime.Fixed.shiftLeft' does not depend on any axioms\n'LexLeanRuntime.Fixed.shiftRight' does not depend on any axioms\n'LexLeanRuntime.Fixed.toToMathInt' does not depend on any axioms\n'LexLeanRuntime.Indexable' does not depend on any axioms\n'LexLeanRuntime.Indexable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Indexable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Indexable.index' does not depend on any axioms\n'LexLeanRuntime.Indexable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Indexable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Indexable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Indexable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Indexable.recOn' does not depend on any axioms\n'LexLeanRuntime.Lengthable' does not depend on any axioms\n'LexLeanRuntime.Lengthable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Lengthable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Lengthable.length' does not depend on any axioms\n'LexLeanRuntime.Lengthable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Lengthable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Lengthable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Lengthable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Lengthable.recOn' does not depend on any axioms\n'LexLeanRuntime.Quotient' does not depend on any axioms\n'LexLeanRuntime.Quotient.casesOn' does not depend on any axioms\n'LexLeanRuntime.Quotient.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Quotient.isZero' does not depend on any axioms\n'LexLeanRuntime.Quotient.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Quotient.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Quotient.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Quotient.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Quotient.quotient' does not depend on any axioms\n'LexLeanRuntime.Quotient.recOn' does not depend on any axioms\n'LexLeanRuntime.Quotient.remainder' does not depend on any axioms\n'LexLeanRuntime.Sliceable' does not depend on any axioms\n'LexLeanRuntime.Sliceable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Sliceable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Sliceable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Sliceable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Sliceable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Sliceable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Sliceable.recOn' does not depend on any axioms\n'LexLeanRuntime.Sliceable.slice' does not depend on any axioms\n'LexLeanRuntime.ToMathInt' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.casesOn' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.noConfusion' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.recOn' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.toInt' does not depend on any axioms\n'LexLeanRuntime.append' does not depend on any axioms\n'LexLeanRuntime.bitAnd' does not depend on any axioms\n'LexLeanRuntime.bitNot' does not depend on any axioms\n'LexLeanRuntime.bitOr' does not depend on any axioms\n'LexLeanRuntime.bitXor' does not depend on any axioms\n'LexLeanRuntime.checkedAdd' does not depend on any axioms\n'LexLeanRuntime.checkedAddInt64' does not depend on any axioms\n'LexLeanRuntime.checkedConvert' does not depend on any axioms\n'LexLeanRuntime.checkedFromInt' does not depend on any axioms\n'LexLeanRuntime.checkedMultiply' does not depend on any axioms\n'LexLeanRuntime.checkedMultiplyInt64' does not depend on any axioms\n'LexLeanRuntime.checkedMultiplyInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.checkedNegate' does not depend on any axioms\n'LexLeanRuntime.checkedNegateInt64' does not depend on any axioms\n'LexLeanRuntime.checkedQuotient' does not depend on any axioms\n'LexLeanRuntime.checkedQuotientInt64' does not depend on any axioms\n'LexLeanRuntime.checkedSubtract' does not depend on any axioms\n'LexLeanRuntime.checkedSubtractInt64' does not depend on any axioms\n'LexLeanRuntime.compareBytes' depends on axioms: [propext]\n'LexLeanRuntime.divideMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._f' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._sunfold' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.equal' does not depend on any axioms\n'LexLeanRuntime.formatDecimal' does not depend on any axioms\n'LexLeanRuntime.index' does not depend on any axioms\n'LexLeanRuntime.instAppendableByteArray' does not depend on any axioms\n'LexLeanRuntime.instAppendableList' does not depend on any axioms\n'LexLeanRuntime.instDecimalInt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instDecimalInt.match_1' does not depend on any axioms\n'LexLeanRuntime.instDecimalOfFixedOfToString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instFixedInt16' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt32' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt64' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt8' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt16' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt32' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt64' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt8' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instIndexableByteArrayUInt8' does not depend on any axioms\n'LexLeanRuntime.instIndexableList' does not depend on any axioms\n'LexLeanRuntime.instLengthableByteArray' does not depend on any axioms\n'LexLeanRuntime.instLengthableList' does not depend on any axioms\n'LexLeanRuntime.instLengthableString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instQuotientInt' does not depend on any axioms\n'LexLeanRuntime.instQuotientNat' does not depend on any axioms\n'LexLeanRuntime.instSliceableByteArray' does not depend on any axioms\n'LexLeanRuntime.instSliceableList' does not depend on any axioms\n'LexLeanRuntime.instToMathIntInt' does not depend on any axioms\n'LexLeanRuntime.join' depends on axioms: [propext]\n'LexLeanRuntime.length' does not depend on any axioms\n'LexLeanRuntime.listIndex' does not depend on any axioms\n'LexLeanRuntime.listIndex._f' does not depend on any axioms\n'LexLeanRuntime.listIndex._sunfold' does not depend on any axioms\n'LexLeanRuntime.listIndex._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.listIndex.match_1' does not depend on any axioms\n'LexLeanRuntime.magnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.multiply' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._f' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._sunfold' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.negate' does not depend on any axioms\n'LexLeanRuntime.parseDecimal' does not depend on any axioms\n'LexLeanRuntime.quotient' does not depend on any axioms\n'LexLeanRuntime.remainder' does not depend on any axioms\n'LexLeanRuntime.shiftLeft' does not depend on any axioms\n'LexLeanRuntime.shiftRight' does not depend on any axioms\n'LexLeanRuntime.signedMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.slice' does not depend on any axioms\n'LexLeanRuntime.splitExact' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.subtract' does not depend on any axioms\n'LexLeanRuntime.utf8Decode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.utf8Encode' does not depend on any axioms\n","stdout_sha256":"73fea1d9e9e9f0a2f1363b9f284eeeb9e434430e9fa910260b9526bad864641e","tool":"lean"} diff --git a/examples/fold-laws/expected/verify/probe/LexLeanProbe.P3cc5e8a42a7c9d201fd51d5ce22fd4f8.lean b/examples/fold-laws/expected/verify/probe/LexLeanProbe.P1d59f84598c9f4c2cea21d972760d780.lean similarity index 100% rename from examples/fold-laws/expected/verify/probe/LexLeanProbe.P3cc5e8a42a7c9d201fd51d5ce22fd4f8.lean rename to examples/fold-laws/expected/verify/probe/LexLeanProbe.P1d59f84598c9f4c2cea21d972760d780.lean diff --git a/examples/fold-laws/expected/verify/probe/process.json b/examples/fold-laws/expected/verify/probe/process.json index a80a80952..315331aa6 100644 --- a/examples/fold-laws/expected/verify/probe/process.json +++ b/examples/fold-laws/expected/verify/probe/process.json @@ -1 +1 @@ -{"argv":["env","lean","$STAGING/probe/LexLeanProbe.P3cc5e8a42a7c9d201fd51d5ce22fd4f8.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanProbe.P3cc5e8a42a7c9d201fd51d5ce22fd4f8","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} +{"argv":["env","lean","$STAGING/probe/LexLeanProbe.P1d59f84598c9f4c2cea21d972760d780.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanProbe.P1d59f84598c9f4c2cea21d972760d780","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/fold-laws/lexlean.lock b/examples/fold-laws/lexlean.lock index 917cecf91..d4049844d 100644 --- a/examples/fold-laws/lexlean.lock +++ b/examples/fold-laws/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6b4aefb16459176dc5845ec6df13b390d7105a2c9d8ccc8ce08d2bbabb4058d0" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/examples/higher-order/expected/build/manifest.json b/examples/higher-order/expected/build/manifest.json index 2cabe0814..6670cf42e 100644 --- a/examples/higher-order/expected/build/manifest.json +++ b/examples/higher-order/expected/build/manifest.json @@ -1 +1 @@ -{"build_id":"9782462874c8c1f265723a0caa09bad82e1eb4f62551148cbb759d3db1da1355","compiler":{"semantics_id":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","version":"0.3.0"},"inputs":[{"byte_length":2684,"kind":"lexicon","path":"embedded","sha256":"3bc0fb09d706ffa7d5a1363302ea87c049acc7c7dcafde63c62682620c11be9b"},{"byte_length":14885,"kind":"lexicon","path":"embedded","sha256":"e0db021e01b91d651c43921d66f6b0023c8efbf17cac2ec53192ce5305e4e1ac"},{"byte_length":36197,"kind":"lexicon","path":"embedded","sha256":"827317cae68c162f3a96c8a8de4e53ab348e7d3724fd2b834fa85ecde1a1b392"},{"byte_length":1597,"kind":"lock","path":"lexlean.lock","sha256":"cad25c680b70cc19738e955d42f5338084e673ec5bb07afd260782dfba6d81fb"},{"byte_length":645,"kind":"project-config","path":"lexlean.toml","sha256":"63cb702cbed6f4e72305e820ab8e7310f3323d3244a100faf4c849ec4330110a"},{"byte_length":2489,"kind":"source","path":"src/Combinators.lex.tex","sha256":"2897acd583a9c31765e9da32301cde5132a25902e7549c23a1ce629eb94a4bf9"},{"byte_length":3168,"kind":"source","path":"src/Main.lex.tex","sha256":"639694334033c139f99b6a002940b094e4aac2fd1d50a80adcba1accccb4adb5"}],"language":"1.2","lean_toolchain":"leanprover/lean4:v4.32.1","modules":[{"lean_module":"HigherOrder.Combinators","module":"Combinators","source_path":"src/Combinators.lex.tex"},{"lean_module":"HigherOrder.Main","module":"Main","source_path":"src/Main.lex.tex"}],"outputs":[{"byte_length":8967,"kind":"coverage","path":"coverage/HigherOrder/Combinators.coverage.json","sha256":"779593e39cdb5d165393afe9b60fcf4a3f1c035a4fd3df6f8f1738e081bc58e5"},{"byte_length":10374,"kind":"coverage","path":"coverage/HigherOrder/Main.coverage.json","sha256":"a49a19840ccc46c8be7b55b6db5e0b2bce9b9bbacd59ed831070ce6e51356830"},{"byte_length":1939,"kind":"lean","path":"modules/HigherOrder/Combinators.lean","sha256":"ba1d10dae60ef45d890c567b29320c1138baa0524aba40b5517d3e9dea3cb0b9"},{"byte_length":2689,"kind":"lean","path":"modules/HigherOrder/Main.lean","sha256":"5ca36cd0507376d552dab17320fff5ce6ed2bf31236a8eb27c1c8b3fd52224e6"},{"byte_length":10609,"kind":"lexicon-closure","path":"lexicons/Combinators.closure.json","sha256":"fae48e1888c045329cd97b90396673745ec6a61b5755fc5eba81998ce219bda9"},{"byte_length":10602,"kind":"lexicon-closure","path":"lexicons/Main.closure.json","sha256":"727110f90daff26a2e5eb8069fcefecd5790c1264f5d6d4b2ef57db1c2bfb867"},{"byte_length":3613,"kind":"map","path":"maps/HigherOrder/Combinators.map.json","sha256":"27343ecef7f98fdb14eca7a655677c7ac5757dbff6153587f110f7fd0648ff65"},{"byte_length":4862,"kind":"map","path":"maps/HigherOrder/Main.map.json","sha256":"201f32a5ec6914fa29c4226c7027812213b39cf76ada2cd20ba5ed5310769f73"},{"byte_length":3628,"kind":"tex","path":"modules/HigherOrder/Combinators.tex","sha256":"a1d0978dcb8841db9ee6d8ee416345122c237a6e3cc6d65689a75638a358ed17"},{"byte_length":4694,"kind":"tex","path":"modules/HigherOrder/Main.tex","sha256":"d81f718da50aac062cda1e68639966bbdcf9b897353ac8c3c23f6dfd8c4428b4"}],"project":"higher-order","selection":["Combinators","Main"],"semantic_id":"e5a01d2449b3b246c026e507417cc495d46a0e67241da855cb6160482b98a9dd","source_id":"900caaea784dcd8326315a0494198c04de19a59eca8bb810dfdc910878d1e1a9","spec":"lexlean/build-manifest/1"} +{"build_id":"1a737063464bd298b4952585542bbe08340b0826d4b308d234eb56e0a6a9d99e","compiler":{"semantics_id":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","version":"0.3.0"},"inputs":[{"byte_length":2684,"kind":"lexicon","path":"embedded","sha256":"3bc0fb09d706ffa7d5a1363302ea87c049acc7c7dcafde63c62682620c11be9b"},{"byte_length":14885,"kind":"lexicon","path":"embedded","sha256":"e0db021e01b91d651c43921d66f6b0023c8efbf17cac2ec53192ce5305e4e1ac"},{"byte_length":36197,"kind":"lexicon","path":"embedded","sha256":"827317cae68c162f3a96c8a8de4e53ab348e7d3724fd2b834fa85ecde1a1b392"},{"byte_length":1597,"kind":"lock","path":"lexlean.lock","sha256":"39ac49fb3792f02d003ac88b9ee96bdc9f2c943941ec36ebe012ad30e5974a08"},{"byte_length":645,"kind":"project-config","path":"lexlean.toml","sha256":"63cb702cbed6f4e72305e820ab8e7310f3323d3244a100faf4c849ec4330110a"},{"byte_length":2489,"kind":"source","path":"src/Combinators.lex.tex","sha256":"2897acd583a9c31765e9da32301cde5132a25902e7549c23a1ce629eb94a4bf9"},{"byte_length":3168,"kind":"source","path":"src/Main.lex.tex","sha256":"639694334033c139f99b6a002940b094e4aac2fd1d50a80adcba1accccb4adb5"}],"language":"1.2","lean_toolchain":"leanprover/lean4:v4.32.1","modules":[{"lean_module":"HigherOrder.Combinators","module":"Combinators","source_path":"src/Combinators.lex.tex"},{"lean_module":"HigherOrder.Main","module":"Main","source_path":"src/Main.lex.tex"}],"outputs":[{"byte_length":8967,"kind":"coverage","path":"coverage/HigherOrder/Combinators.coverage.json","sha256":"779593e39cdb5d165393afe9b60fcf4a3f1c035a4fd3df6f8f1738e081bc58e5"},{"byte_length":10374,"kind":"coverage","path":"coverage/HigherOrder/Main.coverage.json","sha256":"a49a19840ccc46c8be7b55b6db5e0b2bce9b9bbacd59ed831070ce6e51356830"},{"byte_length":1939,"kind":"lean","path":"modules/HigherOrder/Combinators.lean","sha256":"ba1d10dae60ef45d890c567b29320c1138baa0524aba40b5517d3e9dea3cb0b9"},{"byte_length":2689,"kind":"lean","path":"modules/HigherOrder/Main.lean","sha256":"5ca36cd0507376d552dab17320fff5ce6ed2bf31236a8eb27c1c8b3fd52224e6"},{"byte_length":10609,"kind":"lexicon-closure","path":"lexicons/Combinators.closure.json","sha256":"fae48e1888c045329cd97b90396673745ec6a61b5755fc5eba81998ce219bda9"},{"byte_length":10602,"kind":"lexicon-closure","path":"lexicons/Main.closure.json","sha256":"727110f90daff26a2e5eb8069fcefecd5790c1264f5d6d4b2ef57db1c2bfb867"},{"byte_length":3613,"kind":"map","path":"maps/HigherOrder/Combinators.map.json","sha256":"b727ea50a1f5ea6fa39b1e4c38cf6075404b0b51fc6c6093ebef70567d9ceeea"},{"byte_length":4862,"kind":"map","path":"maps/HigherOrder/Main.map.json","sha256":"1b2f7ecb7355b3651196f04b146f803f6eee32e6e9cc248a37d23f4576e0f62d"},{"byte_length":3628,"kind":"tex","path":"modules/HigherOrder/Combinators.tex","sha256":"a1d0978dcb8841db9ee6d8ee416345122c237a6e3cc6d65689a75638a358ed17"},{"byte_length":4694,"kind":"tex","path":"modules/HigherOrder/Main.tex","sha256":"d81f718da50aac062cda1e68639966bbdcf9b897353ac8c3c23f6dfd8c4428b4"}],"project":"higher-order","selection":["Combinators","Main"],"semantic_id":"b5934bc97e423cda9eec0f05d9678db72dbbde9e2fc250815ae781fbcef24ade","source_id":"ffdfb7956d15dc50a911119859eb3b794041edfb07cb3a688310f55ad46fa91e","spec":"lexlean/build-manifest/1"} diff --git a/examples/higher-order/expected/build/maps/HigherOrder/Combinators.map.json b/examples/higher-order/expected/build/maps/HigherOrder/Combinators.map.json index 6a07adbe6..f962f6130 100644 --- a/examples/higher-order/expected/build/maps/HigherOrder/Combinators.map.json +++ b/examples/higher-order/expected/build/maps/HigherOrder/Combinators.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/HigherOrder/Combinators.lean"},{"id":1,"kind":"tex","path":"modules/HigherOrder/Combinators.tex"}],"mappings":[{"artifact":0,"gen_end":206,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":2489,"src_start":0},{"artifact":0,"gen_end":504,"gen_start":206,"node":1,"role":"declaration","source":0,"src_end":494,"src_start":120},{"artifact":0,"gen_end":818,"gen_start":504,"node":2,"role":"declaration","source":0,"src_end":872,"src_start":496},{"artifact":0,"gen_end":1035,"gen_start":818,"node":3,"role":"declaration","source":0,"src_end":1140,"src_start":874},{"artifact":0,"gen_end":1102,"gen_start":1035,"node":4,"role":"declaration","source":0,"src_end":1258,"src_start":1142},{"artifact":0,"gen_end":1209,"gen_start":1102,"node":5,"role":"declaration","source":0,"src_end":1463,"src_start":1260},{"artifact":0,"gen_end":1338,"gen_start":1209,"node":6,"role":"declaration","source":0,"src_end":1684,"src_start":1465},{"artifact":0,"gen_end":1673,"gen_start":1338,"node":7,"role":"declaration","source":0,"src_end":2106,"src_start":1686},{"artifact":0,"gen_end":1910,"gen_start":1673,"node":8,"role":"declaration","source":0,"src_end":2453,"src_start":2108},{"artifact":0,"gen_end":1939,"gen_start":1910,"node":0,"role":"declaration","source":0,"src_end":2489,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":9,"role":"declaration","source":0,"src_end":2489,"src_start":0},{"artifact":1,"gen_end":695,"gen_start":134,"node":10,"role":"declaration","source":0,"src_end":494,"src_start":120},{"artifact":1,"gen_end":1261,"gen_start":695,"node":11,"role":"declaration","source":0,"src_end":872,"src_start":496},{"artifact":1,"gen_end":1761,"gen_start":1261,"node":12,"role":"declaration","source":0,"src_end":1140,"src_start":874},{"artifact":1,"gen_end":2075,"gen_start":1761,"node":13,"role":"declaration","source":0,"src_end":1258,"src_start":1142},{"artifact":1,"gen_end":2330,"gen_start":2075,"node":14,"role":"declaration","source":0,"src_end":1463,"src_start":1260},{"artifact":1,"gen_end":2606,"gen_start":2330,"node":15,"role":"declaration","source":0,"src_end":1684,"src_start":1465},{"artifact":1,"gen_end":3111,"gen_start":2606,"node":16,"role":"declaration","source":0,"src_end":2106,"src_start":1686},{"artifact":1,"gen_end":3613,"gen_start":3111,"node":17,"role":"declaration","source":0,"src_end":2453,"src_start":2108},{"artifact":1,"gen_end":3628,"gen_start":3613,"node":9,"role":"declaration","source":0,"src_end":2489,"src_start":0}],"module":"Combinators","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-latex-module"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"}],"semantic_id":"e5a01d2449b3b246c026e507417cc495d46a0e67241da855cb6160482b98a9dd","source_id":"900caaea784dcd8326315a0494198c04de19a59eca8bb810dfdc910878d1e1a9","sources":[{"id":0,"kind":"file","path":"src/Combinators.lex.tex","sha256":"2897acd583a9c31765e9da32301cde5132a25902e7549c23a1ce629eb94a4bf9"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/HigherOrder/Combinators.lean"},{"id":1,"kind":"tex","path":"modules/HigherOrder/Combinators.tex"}],"mappings":[{"artifact":0,"gen_end":206,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":2489,"src_start":0},{"artifact":0,"gen_end":504,"gen_start":206,"node":1,"role":"declaration","source":0,"src_end":494,"src_start":120},{"artifact":0,"gen_end":818,"gen_start":504,"node":2,"role":"declaration","source":0,"src_end":872,"src_start":496},{"artifact":0,"gen_end":1035,"gen_start":818,"node":3,"role":"declaration","source":0,"src_end":1140,"src_start":874},{"artifact":0,"gen_end":1102,"gen_start":1035,"node":4,"role":"declaration","source":0,"src_end":1258,"src_start":1142},{"artifact":0,"gen_end":1209,"gen_start":1102,"node":5,"role":"declaration","source":0,"src_end":1463,"src_start":1260},{"artifact":0,"gen_end":1338,"gen_start":1209,"node":6,"role":"declaration","source":0,"src_end":1684,"src_start":1465},{"artifact":0,"gen_end":1673,"gen_start":1338,"node":7,"role":"declaration","source":0,"src_end":2106,"src_start":1686},{"artifact":0,"gen_end":1910,"gen_start":1673,"node":8,"role":"declaration","source":0,"src_end":2453,"src_start":2108},{"artifact":0,"gen_end":1939,"gen_start":1910,"node":0,"role":"declaration","source":0,"src_end":2489,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":9,"role":"declaration","source":0,"src_end":2489,"src_start":0},{"artifact":1,"gen_end":695,"gen_start":134,"node":10,"role":"declaration","source":0,"src_end":494,"src_start":120},{"artifact":1,"gen_end":1261,"gen_start":695,"node":11,"role":"declaration","source":0,"src_end":872,"src_start":496},{"artifact":1,"gen_end":1761,"gen_start":1261,"node":12,"role":"declaration","source":0,"src_end":1140,"src_start":874},{"artifact":1,"gen_end":2075,"gen_start":1761,"node":13,"role":"declaration","source":0,"src_end":1258,"src_start":1142},{"artifact":1,"gen_end":2330,"gen_start":2075,"node":14,"role":"declaration","source":0,"src_end":1463,"src_start":1260},{"artifact":1,"gen_end":2606,"gen_start":2330,"node":15,"role":"declaration","source":0,"src_end":1684,"src_start":1465},{"artifact":1,"gen_end":3111,"gen_start":2606,"node":16,"role":"declaration","source":0,"src_end":2106,"src_start":1686},{"artifact":1,"gen_end":3613,"gen_start":3111,"node":17,"role":"declaration","source":0,"src_end":2453,"src_start":2108},{"artifact":1,"gen_end":3628,"gen_start":3613,"node":9,"role":"declaration","source":0,"src_end":2489,"src_start":0}],"module":"Combinators","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-latex-module"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"}],"semantic_id":"b5934bc97e423cda9eec0f05d9678db72dbbde9e2fc250815ae781fbcef24ade","source_id":"ffdfb7956d15dc50a911119859eb3b794041edfb07cb3a688310f55ad46fa91e","sources":[{"id":0,"kind":"file","path":"src/Combinators.lex.tex","sha256":"2897acd583a9c31765e9da32301cde5132a25902e7549c23a1ce629eb94a4bf9"}],"spec":"lexlean/source-map/1"} diff --git a/examples/higher-order/expected/build/maps/HigherOrder/Main.map.json b/examples/higher-order/expected/build/maps/HigherOrder/Main.map.json index 7b1229c50..f590d4363 100644 --- a/examples/higher-order/expected/build/maps/HigherOrder/Main.map.json +++ b/examples/higher-order/expected/build/maps/HigherOrder/Main.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/HigherOrder/Main.lean"},{"id":1,"kind":"tex","path":"modules/HigherOrder/Main.tex"}],"mappings":[{"artifact":0,"gen_end":237,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":3168,"src_start":0},{"artifact":0,"gen_end":414,"gen_start":237,"node":1,"role":"declaration","source":0,"src_end":360,"src_start":140},{"artifact":0,"gen_end":582,"gen_start":414,"node":2,"role":"declaration","source":0,"src_end":563,"src_start":362},{"artifact":0,"gen_end":741,"gen_start":582,"node":3,"role":"declaration","source":0,"src_end":752,"src_start":565},{"artifact":0,"gen_end":928,"gen_start":741,"node":4,"role":"declaration","source":0,"src_end":949,"src_start":754},{"artifact":0,"gen_end":1192,"gen_start":928,"node":5,"role":"declaration","source":0,"src_end":1228,"src_start":951},{"artifact":0,"gen_end":1329,"gen_start":1192,"node":6,"role":"declaration","source":0,"src_end":1405,"src_start":1230},{"artifact":0,"gen_end":1430,"gen_start":1329,"node":7,"role":"declaration","source":0,"src_end":1552,"src_start":1407},{"artifact":0,"gen_end":1547,"gen_start":1430,"node":8,"role":"declaration","source":0,"src_end":1707,"src_start":1554},{"artifact":0,"gen_end":1613,"gen_start":1547,"node":9,"role":"declaration","source":0,"src_end":1825,"src_start":1709},{"artifact":0,"gen_end":2063,"gen_start":1613,"node":10,"role":"declaration","source":0,"src_end":2247,"src_start":1827},{"artifact":0,"gen_end":2416,"gen_start":2063,"node":11,"role":"declaration","source":0,"src_end":2795,"src_start":2249},{"artifact":0,"gen_end":2667,"gen_start":2416,"node":12,"role":"declaration","source":0,"src_end":3132,"src_start":2797},{"artifact":0,"gen_end":2689,"gen_start":2667,"node":0,"role":"declaration","source":0,"src_end":3168,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":13,"role":"declaration","source":0,"src_end":3168,"src_start":0},{"artifact":1,"gen_end":635,"gen_start":134,"node":14,"role":"declaration","source":0,"src_end":360,"src_start":140},{"artifact":1,"gen_end":1126,"gen_start":635,"node":15,"role":"declaration","source":0,"src_end":563,"src_start":362},{"artifact":1,"gen_end":1532,"gen_start":1126,"node":16,"role":"declaration","source":0,"src_end":752,"src_start":565},{"artifact":1,"gen_end":1936,"gen_start":1532,"node":17,"role":"declaration","source":0,"src_end":949,"src_start":754},{"artifact":1,"gen_end":2567,"gen_start":1936,"node":18,"role":"declaration","source":0,"src_end":1228,"src_start":951},{"artifact":1,"gen_end":2814,"gen_start":2567,"node":19,"role":"declaration","source":0,"src_end":1405,"src_start":1230},{"artifact":1,"gen_end":3025,"gen_start":2814,"node":20,"role":"declaration","source":0,"src_end":1552,"src_start":1407},{"artifact":1,"gen_end":3252,"gen_start":3025,"node":21,"role":"declaration","source":0,"src_end":1707,"src_start":1554},{"artifact":1,"gen_end":3427,"gen_start":3252,"node":22,"role":"declaration","source":0,"src_end":1825,"src_start":1709},{"artifact":1,"gen_end":3987,"gen_start":3427,"node":23,"role":"declaration","source":0,"src_end":2247,"src_start":1827},{"artifact":1,"gen_end":4361,"gen_start":3987,"node":24,"role":"declaration","source":0,"src_end":2795,"src_start":2249},{"artifact":1,"gen_end":4679,"gen_start":4361,"node":25,"role":"declaration","source":0,"src_end":3132,"src_start":2797},{"artifact":1,"gen_end":4694,"gen_start":4679,"node":13,"role":"declaration","source":0,"src_end":3168,"src_start":0}],"module":"Main","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-latex-module"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"}],"semantic_id":"e5a01d2449b3b246c026e507417cc495d46a0e67241da855cb6160482b98a9dd","source_id":"900caaea784dcd8326315a0494198c04de19a59eca8bb810dfdc910878d1e1a9","sources":[{"id":0,"kind":"file","path":"src/Main.lex.tex","sha256":"639694334033c139f99b6a002940b094e4aac2fd1d50a80adcba1accccb4adb5"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/HigherOrder/Main.lean"},{"id":1,"kind":"tex","path":"modules/HigherOrder/Main.tex"}],"mappings":[{"artifact":0,"gen_end":237,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":3168,"src_start":0},{"artifact":0,"gen_end":414,"gen_start":237,"node":1,"role":"declaration","source":0,"src_end":360,"src_start":140},{"artifact":0,"gen_end":582,"gen_start":414,"node":2,"role":"declaration","source":0,"src_end":563,"src_start":362},{"artifact":0,"gen_end":741,"gen_start":582,"node":3,"role":"declaration","source":0,"src_end":752,"src_start":565},{"artifact":0,"gen_end":928,"gen_start":741,"node":4,"role":"declaration","source":0,"src_end":949,"src_start":754},{"artifact":0,"gen_end":1192,"gen_start":928,"node":5,"role":"declaration","source":0,"src_end":1228,"src_start":951},{"artifact":0,"gen_end":1329,"gen_start":1192,"node":6,"role":"declaration","source":0,"src_end":1405,"src_start":1230},{"artifact":0,"gen_end":1430,"gen_start":1329,"node":7,"role":"declaration","source":0,"src_end":1552,"src_start":1407},{"artifact":0,"gen_end":1547,"gen_start":1430,"node":8,"role":"declaration","source":0,"src_end":1707,"src_start":1554},{"artifact":0,"gen_end":1613,"gen_start":1547,"node":9,"role":"declaration","source":0,"src_end":1825,"src_start":1709},{"artifact":0,"gen_end":2063,"gen_start":1613,"node":10,"role":"declaration","source":0,"src_end":2247,"src_start":1827},{"artifact":0,"gen_end":2416,"gen_start":2063,"node":11,"role":"declaration","source":0,"src_end":2795,"src_start":2249},{"artifact":0,"gen_end":2667,"gen_start":2416,"node":12,"role":"declaration","source":0,"src_end":3132,"src_start":2797},{"artifact":0,"gen_end":2689,"gen_start":2667,"node":0,"role":"declaration","source":0,"src_end":3168,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":13,"role":"declaration","source":0,"src_end":3168,"src_start":0},{"artifact":1,"gen_end":635,"gen_start":134,"node":14,"role":"declaration","source":0,"src_end":360,"src_start":140},{"artifact":1,"gen_end":1126,"gen_start":635,"node":15,"role":"declaration","source":0,"src_end":563,"src_start":362},{"artifact":1,"gen_end":1532,"gen_start":1126,"node":16,"role":"declaration","source":0,"src_end":752,"src_start":565},{"artifact":1,"gen_end":1936,"gen_start":1532,"node":17,"role":"declaration","source":0,"src_end":949,"src_start":754},{"artifact":1,"gen_end":2567,"gen_start":1936,"node":18,"role":"declaration","source":0,"src_end":1228,"src_start":951},{"artifact":1,"gen_end":2814,"gen_start":2567,"node":19,"role":"declaration","source":0,"src_end":1405,"src_start":1230},{"artifact":1,"gen_end":3025,"gen_start":2814,"node":20,"role":"declaration","source":0,"src_end":1552,"src_start":1407},{"artifact":1,"gen_end":3252,"gen_start":3025,"node":21,"role":"declaration","source":0,"src_end":1707,"src_start":1554},{"artifact":1,"gen_end":3427,"gen_start":3252,"node":22,"role":"declaration","source":0,"src_end":1825,"src_start":1709},{"artifact":1,"gen_end":3987,"gen_start":3427,"node":23,"role":"declaration","source":0,"src_end":2247,"src_start":1827},{"artifact":1,"gen_end":4361,"gen_start":3987,"node":24,"role":"declaration","source":0,"src_end":2795,"src_start":2249},{"artifact":1,"gen_end":4679,"gen_start":4361,"node":25,"role":"declaration","source":0,"src_end":3132,"src_start":2797},{"artifact":1,"gen_end":4694,"gen_start":4679,"node":13,"role":"declaration","source":0,"src_end":3168,"src_start":0}],"module":"Main","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-latex-module"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"}],"semantic_id":"b5934bc97e423cda9eec0f05d9678db72dbbde9e2fc250815ae781fbcef24ade","source_id":"ffdfb7956d15dc50a911119859eb3b794041edfb07cb3a688310f55ad46fa91e","sources":[{"id":0,"kind":"file","path":"src/Main.lex.tex","sha256":"639694334033c139f99b6a002940b094e4aac2fd1d50a80adcba1accccb4adb5"}],"spec":"lexlean/source-map/1"} diff --git a/examples/higher-order/expected/verify/audit/LexLeanAudit.Ae5a01d2449b3b246c026e507417cc495.HigherOrder.Combinators.lean b/examples/higher-order/expected/verify/audit/LexLeanAudit.Ab5934bc97e423cda9eec0f05d9678db7.HigherOrder.Combinators.lean similarity index 100% rename from examples/higher-order/expected/verify/audit/LexLeanAudit.Ae5a01d2449b3b246c026e507417cc495.HigherOrder.Combinators.lean rename to examples/higher-order/expected/verify/audit/LexLeanAudit.Ab5934bc97e423cda9eec0f05d9678db7.HigherOrder.Combinators.lean diff --git a/examples/higher-order/expected/verify/audit/LexLeanAudit.Ab5934bc97e423cda9eec0f05d9678db7.HigherOrder.Combinators.process.json b/examples/higher-order/expected/verify/audit/LexLeanAudit.Ab5934bc97e423cda9eec0f05d9678db7.HigherOrder.Combinators.process.json new file mode 100644 index 000000000..f0ca17951 --- /dev/null +++ b/examples/higher-order/expected/verify/audit/LexLeanAudit.Ab5934bc97e423cda9eec0f05d9678db7.HigherOrder.Combinators.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ab5934bc97e423cda9eec0f05d9678db7.HigherOrder.Combinators.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ab5934bc97e423cda9eec0f05d9678db7.HigherOrder.Combinators","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'HigherOrder.Combinators.Arith' does not depend on any axioms\n'HigherOrder.Combinators.Visitor' does not depend on any axioms\n'HigherOrder.Combinators.compose' does not depend on any axioms\n'HigherOrder.Combinators.evaluate' does not depend on any axioms\n'HigherOrder.Combinators.foldList' does not depend on any axioms\n'HigherOrder.Combinators.increment' does not depend on any axioms\n'HigherOrder.Combinators.mapList' does not depend on any axioms\n'HigherOrder.Combinators.visit' does not depend on any axioms\n","stdout_sha256":"de1e33aa3f1e3e8770d289a02cc7469a8a96a5958bc23bca0cccd7b9b7805bfc","tool":"lean"} diff --git a/examples/higher-order/expected/verify/audit/LexLeanAudit.Ae5a01d2449b3b246c026e507417cc495.HigherOrder.Main.lean b/examples/higher-order/expected/verify/audit/LexLeanAudit.Ab5934bc97e423cda9eec0f05d9678db7.HigherOrder.Main.lean similarity index 100% rename from examples/higher-order/expected/verify/audit/LexLeanAudit.Ae5a01d2449b3b246c026e507417cc495.HigherOrder.Main.lean rename to examples/higher-order/expected/verify/audit/LexLeanAudit.Ab5934bc97e423cda9eec0f05d9678db7.HigherOrder.Main.lean diff --git a/examples/higher-order/expected/verify/audit/LexLeanAudit.Ab5934bc97e423cda9eec0f05d9678db7.HigherOrder.Main.process.json b/examples/higher-order/expected/verify/audit/LexLeanAudit.Ab5934bc97e423cda9eec0f05d9678db7.HigherOrder.Main.process.json new file mode 100644 index 000000000..7be66bd43 --- /dev/null +++ b/examples/higher-order/expected/verify/audit/LexLeanAudit.Ab5934bc97e423cda9eec0f05d9678db7.HigherOrder.Main.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ab5934bc97e423cda9eec0f05d9678db7.HigherOrder.Main.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ab5934bc97e423cda9eec0f05d9678db7.HigherOrder.Main","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'HigherOrder.Main.addAll' does not depend on any axioms\n'HigherOrder.Main.addThenDouble' does not depend on any axioms\n'HigherOrder.Main.add_all' does not depend on any axioms\n'HigherOrder.Main.bumpAll' does not depend on any axioms\n'HigherOrder.Main.bump_all' does not depend on any axioms\n'HigherOrder.Main.composed' does not depend on any axioms\n'HigherOrder.Main.evaluator' does not depend on any axioms\n'HigherOrder.Main.map_identity' depends on axioms: [propext]\n'HigherOrder.Main.map_identity_numbers' depends on axioms: [propext]\n'HigherOrder.Main.total' does not depend on any axioms\n'HigherOrder.Main.total_sum' does not depend on any axioms\n'HigherOrder.Main.visitor_agrees' does not depend on any axioms\n","stdout_sha256":"9e0e7e9c7139fa04a4a7345994d644c70eff086f8c7a7a5afa2bfb7e457c1764","tool":"lean"} diff --git a/examples/higher-order/expected/verify/audit/LexLeanAudit.Ae5a01d2449b3b246c026e507417cc495.HigherOrder.Combinators.process.json b/examples/higher-order/expected/verify/audit/LexLeanAudit.Ae5a01d2449b3b246c026e507417cc495.HigherOrder.Combinators.process.json deleted file mode 100644 index 435d6b891..000000000 --- a/examples/higher-order/expected/verify/audit/LexLeanAudit.Ae5a01d2449b3b246c026e507417cc495.HigherOrder.Combinators.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ae5a01d2449b3b246c026e507417cc495.HigherOrder.Combinators.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ae5a01d2449b3b246c026e507417cc495.HigherOrder.Combinators","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'HigherOrder.Combinators.Arith' does not depend on any axioms\n'HigherOrder.Combinators.Visitor' does not depend on any axioms\n'HigherOrder.Combinators.compose' does not depend on any axioms\n'HigherOrder.Combinators.evaluate' does not depend on any axioms\n'HigherOrder.Combinators.foldList' does not depend on any axioms\n'HigherOrder.Combinators.increment' does not depend on any axioms\n'HigherOrder.Combinators.mapList' does not depend on any axioms\n'HigherOrder.Combinators.visit' does not depend on any axioms\n","stdout_sha256":"de1e33aa3f1e3e8770d289a02cc7469a8a96a5958bc23bca0cccd7b9b7805bfc","tool":"lean"} diff --git a/examples/higher-order/expected/verify/audit/LexLeanAudit.Ae5a01d2449b3b246c026e507417cc495.HigherOrder.Main.process.json b/examples/higher-order/expected/verify/audit/LexLeanAudit.Ae5a01d2449b3b246c026e507417cc495.HigherOrder.Main.process.json deleted file mode 100644 index f594d7715..000000000 --- a/examples/higher-order/expected/verify/audit/LexLeanAudit.Ae5a01d2449b3b246c026e507417cc495.HigherOrder.Main.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ae5a01d2449b3b246c026e507417cc495.HigherOrder.Main.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ae5a01d2449b3b246c026e507417cc495.HigherOrder.Main","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'HigherOrder.Main.addAll' does not depend on any axioms\n'HigherOrder.Main.addThenDouble' does not depend on any axioms\n'HigherOrder.Main.add_all' does not depend on any axioms\n'HigherOrder.Main.bumpAll' does not depend on any axioms\n'HigherOrder.Main.bump_all' does not depend on any axioms\n'HigherOrder.Main.composed' does not depend on any axioms\n'HigherOrder.Main.evaluator' does not depend on any axioms\n'HigherOrder.Main.map_identity' depends on axioms: [propext]\n'HigherOrder.Main.map_identity_numbers' depends on axioms: [propext]\n'HigherOrder.Main.total' does not depend on any axioms\n'HigherOrder.Main.total_sum' does not depend on any axioms\n'HigherOrder.Main.visitor_agrees' does not depend on any axioms\n","stdout_sha256":"9e0e7e9c7139fa04a4a7345994d644c70eff086f8c7a7a5afa2bfb7e457c1764","tool":"lean"} diff --git a/examples/higher-order/expected/verify/probe/LexLeanProbe.Pe5a01d2449b3b246c026e507417cc495.lean b/examples/higher-order/expected/verify/probe/LexLeanProbe.Pb5934bc97e423cda9eec0f05d9678db7.lean similarity index 100% rename from examples/higher-order/expected/verify/probe/LexLeanProbe.Pe5a01d2449b3b246c026e507417cc495.lean rename to examples/higher-order/expected/verify/probe/LexLeanProbe.Pb5934bc97e423cda9eec0f05d9678db7.lean diff --git a/examples/higher-order/expected/verify/probe/process.json b/examples/higher-order/expected/verify/probe/process.json index 0db3ec619..5f3bcc234 100644 --- a/examples/higher-order/expected/verify/probe/process.json +++ b/examples/higher-order/expected/verify/probe/process.json @@ -1 +1 @@ -{"argv":["env","lean","$STAGING/probe/LexLeanProbe.Pe5a01d2449b3b246c026e507417cc495.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanProbe.Pe5a01d2449b3b246c026e507417cc495","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} +{"argv":["env","lean","$STAGING/probe/LexLeanProbe.Pb5934bc97e423cda9eec0f05d9678db7.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanProbe.Pb5934bc97e423cda9eec0f05d9678db7","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/higher-order/lexlean.lock b/examples/higher-order/lexlean.lock index 95766de49..f9fdcd36b 100644 --- a/examples/higher-order/lexlean.lock +++ b/examples/higher-order/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "63cb702cbed6f4e72305e820ab8e7310f3323d3244a100faf4c849ec4330110a" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/examples/language-1.2/expected/build/manifest.json b/examples/language-1.2/expected/build/manifest.json index 3ff5288ae..2d16f840f 100644 --- a/examples/language-1.2/expected/build/manifest.json +++ b/examples/language-1.2/expected/build/manifest.json @@ -1 +1 @@ -{"build_id":"1475b4c63f4f019af6248d4b04fc7585a368f6b2bee98b853079a676bf9427d0","compiler":{"semantics_id":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","version":"0.3.0"},"inputs":[{"byte_length":2684,"kind":"lexicon","path":"embedded","sha256":"3bc0fb09d706ffa7d5a1363302ea87c049acc7c7dcafde63c62682620c11be9b"},{"byte_length":14885,"kind":"lexicon","path":"embedded","sha256":"e0db021e01b91d651c43921d66f6b0023c8efbf17cac2ec53192ce5305e4e1ac"},{"byte_length":36197,"kind":"lexicon","path":"embedded","sha256":"827317cae68c162f3a96c8a8de4e53ab348e7d3724fd2b834fa85ecde1a1b392"},{"byte_length":1597,"kind":"lock","path":"lexlean.lock","sha256":"a5a10f7bdd52ae1c601cfedd1676424bc8d42e523c3827979507e8c433221b95"},{"byte_length":651,"kind":"project-config","path":"lexlean.toml","sha256":"6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d"},{"byte_length":551,"kind":"source","path":"src/Main.lex.tex","sha256":"953f3abc01c25e1b7f7660030023464667bcfd01a05e0b92a30b52ded0a4e0f9"}],"language":"1.2","lean_toolchain":"leanprover/lean4:v4.32.1","modules":[{"lean_module":"LanguageTwelve.Main","module":"Main","source_path":"src/Main.lex.tex"}],"outputs":[{"byte_length":7313,"kind":"coverage","path":"coverage/LanguageTwelve/Main.coverage.json","sha256":"dbda5c8a9d0d3d7b1083172702012ff50ea7b5a4887b712ea58d51f3f8449e48"},{"byte_length":508,"kind":"lean","path":"modules/LanguageTwelve/Main.lean","sha256":"a0c1babda5d001501ce7db4d5b691711a049f6d4735bc5bf74bdbeadda4320e0"},{"byte_length":10602,"kind":"lexicon-closure","path":"lexicons/Main.closure.json","sha256":"727110f90daff26a2e5eb8069fcefecd5790c1264f5d6d4b2ef57db1c2bfb867"},{"byte_length":1971,"kind":"map","path":"maps/LanguageTwelve/Main.map.json","sha256":"612aeae0c9e9057c83a844879e37520b70c89af185ec96a726c4e7602f356638"},{"byte_length":834,"kind":"tex","path":"modules/LanguageTwelve/Main.tex","sha256":"c1b7005570e64d41f460dbb1d974d941e5c5e36d43e9c2bfc64fbd9dca26e11b"}],"project":"language-twelve","selection":["Main"],"semantic_id":"91252ea0ee170a673bd0462010771fa8f2a1003d1c1dde186b221fed42f2c92e","source_id":"597e4c79d1382afb0adef6c533bb53d30663375b89a4a5fb008a35d1ce41c32e","spec":"lexlean/build-manifest/1"} +{"build_id":"627ce1060d62b964606d1af1321ddda66323209fb971574de727d29c413aaa2f","compiler":{"semantics_id":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","version":"0.3.0"},"inputs":[{"byte_length":2684,"kind":"lexicon","path":"embedded","sha256":"3bc0fb09d706ffa7d5a1363302ea87c049acc7c7dcafde63c62682620c11be9b"},{"byte_length":14885,"kind":"lexicon","path":"embedded","sha256":"e0db021e01b91d651c43921d66f6b0023c8efbf17cac2ec53192ce5305e4e1ac"},{"byte_length":36197,"kind":"lexicon","path":"embedded","sha256":"827317cae68c162f3a96c8a8de4e53ab348e7d3724fd2b834fa85ecde1a1b392"},{"byte_length":1597,"kind":"lock","path":"lexlean.lock","sha256":"5c6d7fc042fdf73b33150f5033c4538fb300221698e7f6267e4d524d464dca8d"},{"byte_length":651,"kind":"project-config","path":"lexlean.toml","sha256":"6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d"},{"byte_length":551,"kind":"source","path":"src/Main.lex.tex","sha256":"953f3abc01c25e1b7f7660030023464667bcfd01a05e0b92a30b52ded0a4e0f9"}],"language":"1.2","lean_toolchain":"leanprover/lean4:v4.32.1","modules":[{"lean_module":"LanguageTwelve.Main","module":"Main","source_path":"src/Main.lex.tex"}],"outputs":[{"byte_length":7313,"kind":"coverage","path":"coverage/LanguageTwelve/Main.coverage.json","sha256":"dbda5c8a9d0d3d7b1083172702012ff50ea7b5a4887b712ea58d51f3f8449e48"},{"byte_length":508,"kind":"lean","path":"modules/LanguageTwelve/Main.lean","sha256":"a0c1babda5d001501ce7db4d5b691711a049f6d4735bc5bf74bdbeadda4320e0"},{"byte_length":10602,"kind":"lexicon-closure","path":"lexicons/Main.closure.json","sha256":"727110f90daff26a2e5eb8069fcefecd5790c1264f5d6d4b2ef57db1c2bfb867"},{"byte_length":1971,"kind":"map","path":"maps/LanguageTwelve/Main.map.json","sha256":"d41aac35a3320051fee760c3f177769d1310efa16eba63627114403d435e80cf"},{"byte_length":834,"kind":"tex","path":"modules/LanguageTwelve/Main.tex","sha256":"c1b7005570e64d41f460dbb1d974d941e5c5e36d43e9c2bfc64fbd9dca26e11b"}],"project":"language-twelve","selection":["Main"],"semantic_id":"8f90c02b42edd596631d3fdfeeada166814d54f55ea1874ed55a5b6f071fd409","source_id":"44d0ce4799789f60a676e7b3756945674ba9c6743d516cb1b7a33f8fdf9dd9a9","spec":"lexlean/build-manifest/1"} diff --git a/examples/language-1.2/expected/build/maps/LanguageTwelve/Main.map.json b/examples/language-1.2/expected/build/maps/LanguageTwelve/Main.map.json index cdfff8685..6ba616f05 100644 --- a/examples/language-1.2/expected/build/maps/LanguageTwelve/Main.map.json +++ b/examples/language-1.2/expected/build/maps/LanguageTwelve/Main.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/LanguageTwelve/Main.lean"},{"id":1,"kind":"tex","path":"modules/LanguageTwelve/Main.tex"}],"mappings":[{"artifact":0,"gen_end":202,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":551,"src_start":0},{"artifact":0,"gen_end":306,"gen_start":202,"node":1,"role":"declaration","source":0,"src_end":246,"src_start":113},{"artifact":0,"gen_end":385,"gen_start":306,"node":2,"role":"declaration","source":0,"src_end":371,"src_start":248},{"artifact":0,"gen_end":483,"gen_start":385,"node":3,"role":"declaration","source":0,"src_end":515,"src_start":373},{"artifact":0,"gen_end":508,"gen_start":483,"node":0,"role":"declaration","source":0,"src_end":551,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":4,"role":"declaration","source":0,"src_end":551,"src_start":0},{"artifact":1,"gen_end":420,"gen_start":134,"node":5,"role":"declaration","source":0,"src_end":246,"src_start":113},{"artifact":1,"gen_end":610,"gen_start":420,"node":6,"role":"declaration","source":0,"src_end":371,"src_start":248},{"artifact":1,"gen_end":819,"gen_start":610,"node":7,"role":"declaration","source":0,"src_end":515,"src_start":373},{"artifact":1,"gen_end":834,"gen_start":819,"node":4,"role":"declaration","source":0,"src_end":551,"src_start":0}],"module":"Main","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-latex-module"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"}],"semantic_id":"91252ea0ee170a673bd0462010771fa8f2a1003d1c1dde186b221fed42f2c92e","source_id":"597e4c79d1382afb0adef6c533bb53d30663375b89a4a5fb008a35d1ce41c32e","sources":[{"id":0,"kind":"file","path":"src/Main.lex.tex","sha256":"953f3abc01c25e1b7f7660030023464667bcfd01a05e0b92a30b52ded0a4e0f9"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/LanguageTwelve/Main.lean"},{"id":1,"kind":"tex","path":"modules/LanguageTwelve/Main.tex"}],"mappings":[{"artifact":0,"gen_end":202,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":551,"src_start":0},{"artifact":0,"gen_end":306,"gen_start":202,"node":1,"role":"declaration","source":0,"src_end":246,"src_start":113},{"artifact":0,"gen_end":385,"gen_start":306,"node":2,"role":"declaration","source":0,"src_end":371,"src_start":248},{"artifact":0,"gen_end":483,"gen_start":385,"node":3,"role":"declaration","source":0,"src_end":515,"src_start":373},{"artifact":0,"gen_end":508,"gen_start":483,"node":0,"role":"declaration","source":0,"src_end":551,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":4,"role":"declaration","source":0,"src_end":551,"src_start":0},{"artifact":1,"gen_end":420,"gen_start":134,"node":5,"role":"declaration","source":0,"src_end":246,"src_start":113},{"artifact":1,"gen_end":610,"gen_start":420,"node":6,"role":"declaration","source":0,"src_end":371,"src_start":248},{"artifact":1,"gen_end":819,"gen_start":610,"node":7,"role":"declaration","source":0,"src_end":515,"src_start":373},{"artifact":1,"gen_end":834,"gen_start":819,"node":4,"role":"declaration","source":0,"src_end":551,"src_start":0}],"module":"Main","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-latex-module"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"}],"semantic_id":"8f90c02b42edd596631d3fdfeeada166814d54f55ea1874ed55a5b6f071fd409","source_id":"44d0ce4799789f60a676e7b3756945674ba9c6743d516cb1b7a33f8fdf9dd9a9","sources":[{"id":0,"kind":"file","path":"src/Main.lex.tex","sha256":"953f3abc01c25e1b7f7660030023464667bcfd01a05e0b92a30b52ded0a4e0f9"}],"spec":"lexlean/source-map/1"} diff --git a/examples/language-1.2/expected/verify/audit/LexLeanAudit.A91252ea0ee170a673bd0462010771fa8.LanguageTwelve.Main.lean b/examples/language-1.2/expected/verify/audit/LexLeanAudit.A8f90c02b42edd596631d3fdfeeada166.LanguageTwelve.Main.lean similarity index 100% rename from examples/language-1.2/expected/verify/audit/LexLeanAudit.A91252ea0ee170a673bd0462010771fa8.LanguageTwelve.Main.lean rename to examples/language-1.2/expected/verify/audit/LexLeanAudit.A8f90c02b42edd596631d3fdfeeada166.LanguageTwelve.Main.lean diff --git a/examples/language-1.2/expected/verify/audit/LexLeanAudit.A8f90c02b42edd596631d3fdfeeada166.LanguageTwelve.Main.process.json b/examples/language-1.2/expected/verify/audit/LexLeanAudit.A8f90c02b42edd596631d3fdfeeada166.LanguageTwelve.Main.process.json new file mode 100644 index 000000000..53b8f96fe --- /dev/null +++ b/examples/language-1.2/expected/verify/audit/LexLeanAudit.A8f90c02b42edd596631d3fdfeeada166.LanguageTwelve.Main.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A8f90c02b42edd596631d3fdfeeada166.LanguageTwelve.Main.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A8f90c02b42edd596631d3fdfeeada166.LanguageTwelve.Main","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LanguageTwelve.Main.doubledSuccessor' does not depend on any axioms\n'LanguageTwelve.Main.doubled_successor_two' does not depend on any axioms\n'LanguageTwelve.Main.let_statement_unfolds' does not depend on any axioms\n","stdout_sha256":"96052f032fc09970e5f3f333cca6d8656a749c07d2832f02c21c3cbff2caafa0","tool":"lean"} diff --git a/examples/language-1.2/expected/verify/audit/LexLeanAudit.A91252ea0ee170a673bd0462010771fa8.LanguageTwelve.Main.process.json b/examples/language-1.2/expected/verify/audit/LexLeanAudit.A91252ea0ee170a673bd0462010771fa8.LanguageTwelve.Main.process.json deleted file mode 100644 index 9f1c01828..000000000 --- a/examples/language-1.2/expected/verify/audit/LexLeanAudit.A91252ea0ee170a673bd0462010771fa8.LanguageTwelve.Main.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A91252ea0ee170a673bd0462010771fa8.LanguageTwelve.Main.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A91252ea0ee170a673bd0462010771fa8.LanguageTwelve.Main","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LanguageTwelve.Main.doubledSuccessor' does not depend on any axioms\n'LanguageTwelve.Main.doubled_successor_two' does not depend on any axioms\n'LanguageTwelve.Main.let_statement_unfolds' does not depend on any axioms\n","stdout_sha256":"96052f032fc09970e5f3f333cca6d8656a749c07d2832f02c21c3cbff2caafa0","tool":"lean"} diff --git a/examples/language-1.2/expected/verify/probe/LexLeanProbe.P91252ea0ee170a673bd0462010771fa8.lean b/examples/language-1.2/expected/verify/probe/LexLeanProbe.P8f90c02b42edd596631d3fdfeeada166.lean similarity index 100% rename from examples/language-1.2/expected/verify/probe/LexLeanProbe.P91252ea0ee170a673bd0462010771fa8.lean rename to examples/language-1.2/expected/verify/probe/LexLeanProbe.P8f90c02b42edd596631d3fdfeeada166.lean diff --git a/examples/language-1.2/expected/verify/probe/process.json b/examples/language-1.2/expected/verify/probe/process.json index 6a8a4e7e0..f78d6cfc7 100644 --- a/examples/language-1.2/expected/verify/probe/process.json +++ b/examples/language-1.2/expected/verify/probe/process.json @@ -1 +1 @@ -{"argv":["env","lean","$STAGING/probe/LexLeanProbe.P91252ea0ee170a673bd0462010771fa8.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanProbe.P91252ea0ee170a673bd0462010771fa8","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} +{"argv":["env","lean","$STAGING/probe/LexLeanProbe.P8f90c02b42edd596631d3fdfeeada166.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanProbe.P8f90c02b42edd596631d3fdfeeada166","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/language-1.2/lexlean.lock b/examples/language-1.2/lexlean.lock index f326b4b18..a84849b34 100644 --- a/examples/language-1.2/lexlean.lock +++ b/examples/language-1.2/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/examples/models/expected/build/manifest.json b/examples/models/expected/build/manifest.json index ec884b6f6..b57b42e81 100644 --- a/examples/models/expected/build/manifest.json +++ b/examples/models/expected/build/manifest.json @@ -1 +1 @@ -{"build_id":"f429f1ac2de18973bbf72302bd4c103e89027e7876b407963fd8133714915362","compiler":{"semantics_id":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","version":"0.3.0"},"inputs":[{"byte_length":2684,"kind":"lexicon","path":"embedded","sha256":"3bc0fb09d706ffa7d5a1363302ea87c049acc7c7dcafde63c62682620c11be9b"},{"byte_length":14885,"kind":"lexicon","path":"embedded","sha256":"e0db021e01b91d651c43921d66f6b0023c8efbf17cac2ec53192ce5305e4e1ac"},{"byte_length":36197,"kind":"lexicon","path":"embedded","sha256":"827317cae68c162f3a96c8a8de4e53ab348e7d3724fd2b834fa85ecde1a1b392"},{"byte_length":4811,"kind":"lexicon","path":"glossary/models.titles","sha256":"0b8dcd3efdfb82e5f572dcf1e598744aaba14c52e1c66f5300c5ed83d4b5e1be"},{"byte_length":1939,"kind":"lock","path":"lexlean.lock","sha256":"7b2cb774e7ab429db2074870595fa7bf693c0db936ce66ffda40d405928ae19e"},{"byte_length":5,"kind":"model-artifact","path":"artifacts/banner.bin","sha256":"3369421cb6a657bcbdbec197a0c3b2a8e208dd7746853513f9d77331d0fa1397"},{"byte_length":50,"kind":"model-artifact","path":"artifacts/digit-names.txt","sha256":"476e03af7ff499e63fe93fffa0567a69128761f538ec7dd1f3e2c197a0c90981"},{"byte_length":48,"kind":"model-artifact","path":"artifacts/hidden-bias.bin","sha256":"102bf7ceb176bc23dd4abb56dada713135d79093a79c20c7c79471f751f9a778"},{"byte_length":84,"kind":"model-artifact","path":"artifacts/hidden-weights.bin","sha256":"670b5066543781ad41947e253f1e5dd45157070e78116a588dc2b6bcea2e7bd8"},{"byte_length":40,"kind":"model-artifact","path":"artifacts/output-bias.bin","sha256":"ba0505206b75f60de72e117e01155033a68c40972a7f6687a2b05ca0004c5ab4"},{"byte_length":120,"kind":"model-artifact","path":"artifacts/output-weights.bin","sha256":"6a536cff5b44d31e45ff9b128794e29c3fe9c09bad111f0dbe9df3fc29941de7"},{"byte_length":6,"kind":"model-artifact","path":"artifacts/triage-bias.bin","sha256":"34b5d0d734084832dea276360f994018f4e6eb7921334265e58217b360a2a79d"},{"byte_length":18,"kind":"model-artifact","path":"artifacts/triage-weights.bin","sha256":"7a1039fea753fdbab50d96e9b180fb5f987c6ba688d847da0e209608c5c0f58e"},{"byte_length":1786,"kind":"project-config","path":"lexlean.toml","sha256":"b79e1070aab27c02ec4396ee66aa4bad7b90f9bca923932529eb9eb26264761a"},{"byte_length":13246,"kind":"source","path":"src/Flows.lex.tex","sha256":"28ec74d66a4db50353250e50c656dd75d6e0555eaacc19fbd37c573f8e938c33"},{"byte_length":3921,"kind":"source","path":"src/Glyphs.lex.tex","sha256":"14f0f695eb5d2853be86d0599bc52cad41f92c971c4b8b69ac77ddc0635d3b70"},{"byte_length":13264,"kind":"source","path":"src/Ledger.lex.tex","sha256":"4eaf7867fbd19e7f03c139d4f5bfa753cc7022d2c1f2faf6b849abecff4e9815"},{"byte_length":13995,"kind":"source","path":"src/Main.lex.tex","sha256":"09fef2732bb2b95f41909df0570942389cddbf5bcefe01e667b6ec7400caad75"},{"byte_length":12945,"kind":"source","path":"src/Pipeline.lex.tex","sha256":"82cec7477a537982dab7be86130292d11e3cc2123c2e7188a32b8d8808ab22c1"},{"byte_length":3172,"kind":"source","path":"src/Policy.lex.tex","sha256":"32d2ea99e908b81d5210299ee8e6148cc87e4ae72d9bef235cadf5cf69947ecf"},{"byte_length":8290,"kind":"source","path":"src/Recognizer.lex.tex","sha256":"28bd37cb2876ff04da7a9efddf50a52d3019c64910aca2b806b4b6181e84b04b"},{"byte_length":3686,"kind":"source","path":"src/Session.lex.tex","sha256":"0077c43c5251814a8329dc387538b9d0aafb0780238f61ce60bb245e9a15bbb1"},{"byte_length":6766,"kind":"source","path":"src/Triage.lex.tex","sha256":"61ce4693fcb18df340d1f0f9a9a0d29a73912cc4075bd20dcbda09508373808b"}],"language":"1.2","lean_toolchain":"leanprover/lean4:v4.32.1","modules":[{"lean_module":"Models.Flows","module":"Flows","source_path":"src/Flows.lex.tex"},{"lean_module":"Models.Glyphs","module":"Glyphs","source_path":"src/Glyphs.lex.tex"},{"lean_module":"Models.Ledger","module":"Ledger","source_path":"src/Ledger.lex.tex"},{"lean_module":"Models.Main","module":"Main","source_path":"src/Main.lex.tex"},{"lean_module":"Models.Pipeline","module":"Pipeline","source_path":"src/Pipeline.lex.tex"},{"lean_module":"Models.Policy","module":"Policy","source_path":"src/Policy.lex.tex"},{"lean_module":"Models.Recognizer","module":"Recognizer","source_path":"src/Recognizer.lex.tex"},{"lean_module":"Models.Session","module":"Session","source_path":"src/Session.lex.tex"},{"lean_module":"Models.Triage","module":"Triage","source_path":"src/Triage.lex.tex"}],"outputs":[{"byte_length":24217,"kind":"coverage","path":"coverage/Models/Flows.coverage.json","sha256":"e9b1f6037cee26e0cdc097c7bc65ed0345263b1ed4463ed7d210eafaad1adff4"},{"byte_length":9847,"kind":"coverage","path":"coverage/Models/Glyphs.coverage.json","sha256":"072aea809bb4e07810443bd6655b3dbedd5ffc81ee90b3b281013c7dc18f0001"},{"byte_length":25557,"kind":"coverage","path":"coverage/Models/Ledger.coverage.json","sha256":"8029c3cef9485dee7bf5585898f5416186731f9b0ec1df5b5186865278447b01"},{"byte_length":30015,"kind":"coverage","path":"coverage/Models/Main.coverage.json","sha256":"477bcd9b3e0f0d6061de1f0e125668d19ca0a963a869aebd621c4f8361f9d42d"},{"byte_length":24131,"kind":"coverage","path":"coverage/Models/Pipeline.coverage.json","sha256":"e082ea27d2b6e96f9168548252aa12f19153ef34d27b5031617fd7720cbabb88"},{"byte_length":12248,"kind":"coverage","path":"coverage/Models/Policy.coverage.json","sha256":"04dc9b952a28d723f62e3b56b063eddd9953f0aefd29d3897e66bc735ff78445"},{"byte_length":15495,"kind":"coverage","path":"coverage/Models/Recognizer.coverage.json","sha256":"69fdda5a237d1935f7ca26006e6560af6dcbebadb69d17f227a2429866e7cbb9"},{"byte_length":12487,"kind":"coverage","path":"coverage/Models/Session.coverage.json","sha256":"480eff88eec1169a6d701a53c9669598b579ce0699d75c695d043020180095ed"},{"byte_length":13513,"kind":"coverage","path":"coverage/Models/Triage.coverage.json","sha256":"5837a31c1b4d9651670e477b15abfb0c466a57d9b777987c99f059e2b3a02ac5"},{"byte_length":62836,"kind":"lean","path":"modules/Models/Flows.lean","sha256":"871a71c6eed0efaca275f805e9b26dd7eb07d1bbf0d6fccaf65fd0ffcbf61f3e"},{"byte_length":2855,"kind":"lean","path":"modules/Models/Glyphs.lean","sha256":"8aa86a6b8345f27ccbe31ec8e215ccbc41f5a94b80b06b46c9a953e230e2f14c"},{"byte_length":67242,"kind":"lean","path":"modules/Models/Ledger.lean","sha256":"6097dcedded56f40246156dbf0b299695566039e964ca0e1cc1e95641bd9cdac"},{"byte_length":17668,"kind":"lean","path":"modules/Models/Main.lean","sha256":"658e891f7761222d52582f26186d208769621fdabaa1a0309cba849c8f0d0509"},{"byte_length":15495,"kind":"lean","path":"modules/Models/Pipeline.lean","sha256":"0974e254daa6ea324063802ef965309e195c2cadb3ff154a7ecab65e011e2cb1"},{"byte_length":2673,"kind":"lean","path":"modules/Models/Policy.lean","sha256":"75af53ee823cb3b3a8a2fa5518ca4705eaf5cd16ff963e45a936a3bc888f2105"},{"byte_length":25032,"kind":"lean","path":"modules/Models/Recognizer.lean","sha256":"c3c1a25b313cdf4e12d29fad952adf3d0e4fc0c8d8f4c2d4ba6db942e53a3b09"},{"byte_length":15239,"kind":"lean","path":"modules/Models/Session.lean","sha256":"6b3037069b9b123c316c85e9a2126779078ed85ea658a8d04ae4693582185074"},{"byte_length":7179,"kind":"lean","path":"modules/Models/Triage.lean","sha256":"da0208edd92e97b9d9052875c679a7a6954bd41f37497e00ddcf40d47389147b"},{"byte_length":11477,"kind":"lexicon-closure","path":"lexicons/Flows.closure.json","sha256":"858b26caa8a4ba472b9fda1c075790e289bad1bc2c8fd9972ce01c780e1249d5"},{"byte_length":11478,"kind":"lexicon-closure","path":"lexicons/Glyphs.closure.json","sha256":"de21ab7949a2df29237c6a4d7f321091f5acd24d46fa1807cdbc0b65f864b27a"},{"byte_length":11478,"kind":"lexicon-closure","path":"lexicons/Ledger.closure.json","sha256":"f9388586b5a83a1936fb2a98fc17b01d7cd07e13687d01d5899a3688adb62427"},{"byte_length":11476,"kind":"lexicon-closure","path":"lexicons/Main.closure.json","sha256":"76718e3e6f6a37d3170b892b6beafe27c8a80a81ff6c957e571441ddcf81b1d6"},{"byte_length":11480,"kind":"lexicon-closure","path":"lexicons/Pipeline.closure.json","sha256":"83cdbac593b6281d194e892e8c635551073cd5113cf47b84e4aa8dc3165cb4ae"},{"byte_length":11478,"kind":"lexicon-closure","path":"lexicons/Policy.closure.json","sha256":"cfea6fccd554628e92aa4e4ab9501276443605e9b7b7222894a9345acdeeaf5c"},{"byte_length":11482,"kind":"lexicon-closure","path":"lexicons/Recognizer.closure.json","sha256":"9297441e84743784deedc603cbc74d71441164d59f788c3b6c0e7bbb3ac6e2a8"},{"byte_length":11479,"kind":"lexicon-closure","path":"lexicons/Session.closure.json","sha256":"8300e307091b03c0b18bafb8be0a476514693fddaac26c9481b5bec9bc1908f8"},{"byte_length":11478,"kind":"lexicon-closure","path":"lexicons/Triage.closure.json","sha256":"b2f32bd383076cd4db64bfbc67ef975f94d237edb76f59a156317639270e482f"},{"byte_length":19292,"kind":"map","path":"maps/Models/Flows.map.json","sha256":"1a530c893156915c9539e4d951fa396c7344564dfdddc18c016e89bcab43d37d"},{"byte_length":2945,"kind":"map","path":"maps/Models/Glyphs.map.json","sha256":"527239448d7296f56693b016e0cd931074491a98f5c0cbc72bfeedb9e9893cd2"},{"byte_length":21594,"kind":"map","path":"maps/Models/Ledger.map.json","sha256":"ef56fc44cdbb83244f2fac09e1a0793caa1ccfc4481c6929da0b2ea89df2c1cf"},{"byte_length":21960,"kind":"map","path":"maps/Models/Main.map.json","sha256":"7b3537a095ec810fbdfad6f67976468bd954bceffcfe8b105e8eb5b11608a625"},{"byte_length":15952,"kind":"map","path":"maps/Models/Pipeline.map.json","sha256":"257e99d80b95be47655470f79d9731f17c9194e3ac18c994bb8c98cf6faf547f"},{"byte_length":4862,"kind":"map","path":"maps/Models/Policy.map.json","sha256":"61b9407d57a8920dbbdbfcfef29a4b9a3c23a29ec48b37f42344189fbaa3ad65"},{"byte_length":8484,"kind":"map","path":"maps/Models/Recognizer.map.json","sha256":"73a4a001fe45cea3a8f5bc9f63f04b3cfbb0a768aaca20249ad010441148b56f"},{"byte_length":5833,"kind":"map","path":"maps/Models/Session.map.json","sha256":"52a7a4a9587144d80a8153b65baab7bfa46f73c5a8d711c0ce387f6f6bfb1569"},{"byte_length":7133,"kind":"map","path":"maps/Models/Triage.map.json","sha256":"9ed5be22d4de37d26090ab348781c4662e162b371a2250c496ceac15f421671d"},{"byte_length":79615,"kind":"production-eligibility","path":"production/Models/Main.eligibility.json","sha256":"e65c147e2755a7f0140521b73588e6e206590c70f8d3c313a6b13be2420dd3b8"},{"byte_length":37412,"kind":"tex","path":"modules/Models/Flows.tex","sha256":"a7ad124df989dba8e1e5d673c9cc40e6d4b9b5f2a66821d04dc0cbc5ce3bb174"},{"byte_length":4181,"kind":"tex","path":"modules/Models/Glyphs.tex","sha256":"6996f9482d5460c45ac62c9cd8bbe44b376ad98661730c898501535ca39ef537"},{"byte_length":32582,"kind":"tex","path":"modules/Models/Ledger.tex","sha256":"86863d003899b6037aab9ed859608ac66c19ca0f594b2e363577e9cd8c8bae65"},{"byte_length":22675,"kind":"tex","path":"modules/Models/Main.tex","sha256":"99c225ea6da22156c56975a427fb5529abe3b64087760d5962c94a929228b17b"},{"byte_length":22804,"kind":"tex","path":"modules/Models/Pipeline.tex","sha256":"8afd93d17cfb93d15d0a453f85434722a713b25c57ee79637885d6a43bfa1a57"},{"byte_length":5668,"kind":"tex","path":"modules/Models/Policy.tex","sha256":"9b896db44315af8db6859dcb061178eef227967f4835c897f47bd5df85b7649d"},{"byte_length":18868,"kind":"tex","path":"modules/Models/Recognizer.tex","sha256":"4fda5d8ad4890ae385da68c4be4c23b44a5e021869b92e6c599469bfde00e1ba"},{"byte_length":7934,"kind":"tex","path":"modules/Models/Session.tex","sha256":"bdee6203c11a7e19bbcb0cbc81c785c5c8168dc450c4f167215e2d2f4a19dd14"},{"byte_length":11815,"kind":"tex","path":"modules/Models/Triage.tex","sha256":"37fe90aac05faee917c08a1ff9faa63403cf7e42459bad80798152739099b827"}],"project":"models","selection":["Flows","Glyphs","Ledger","Main","Pipeline","Policy","Recognizer","Session","Triage"],"semantic_id":"49cf062e918bdc2f8a44a66473c4435ee310d33b78d7093624f025547ab95bfd","source_id":"029a1a5ebafd24dc317957624d7e5417c3a563331be1ac2c56d796c47a51d75f","spec":"lexlean/build-manifest/1"} +{"build_id":"618767111e40546cbf7aa237732be6717a8997c0c2632b8f5f14d2506e84dc1e","compiler":{"semantics_id":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","version":"0.3.0"},"inputs":[{"byte_length":2684,"kind":"lexicon","path":"embedded","sha256":"3bc0fb09d706ffa7d5a1363302ea87c049acc7c7dcafde63c62682620c11be9b"},{"byte_length":14885,"kind":"lexicon","path":"embedded","sha256":"e0db021e01b91d651c43921d66f6b0023c8efbf17cac2ec53192ce5305e4e1ac"},{"byte_length":36197,"kind":"lexicon","path":"embedded","sha256":"827317cae68c162f3a96c8a8de4e53ab348e7d3724fd2b834fa85ecde1a1b392"},{"byte_length":4811,"kind":"lexicon","path":"glossary/models.titles","sha256":"0b8dcd3efdfb82e5f572dcf1e598744aaba14c52e1c66f5300c5ed83d4b5e1be"},{"byte_length":1939,"kind":"lock","path":"lexlean.lock","sha256":"0aa8b0ac2226c2f5a7edb072636b7c97536b3448eecd16cd29cb9ea210c718a5"},{"byte_length":5,"kind":"model-artifact","path":"artifacts/banner.bin","sha256":"3369421cb6a657bcbdbec197a0c3b2a8e208dd7746853513f9d77331d0fa1397"},{"byte_length":50,"kind":"model-artifact","path":"artifacts/digit-names.txt","sha256":"476e03af7ff499e63fe93fffa0567a69128761f538ec7dd1f3e2c197a0c90981"},{"byte_length":48,"kind":"model-artifact","path":"artifacts/hidden-bias.bin","sha256":"102bf7ceb176bc23dd4abb56dada713135d79093a79c20c7c79471f751f9a778"},{"byte_length":84,"kind":"model-artifact","path":"artifacts/hidden-weights.bin","sha256":"670b5066543781ad41947e253f1e5dd45157070e78116a588dc2b6bcea2e7bd8"},{"byte_length":40,"kind":"model-artifact","path":"artifacts/output-bias.bin","sha256":"ba0505206b75f60de72e117e01155033a68c40972a7f6687a2b05ca0004c5ab4"},{"byte_length":120,"kind":"model-artifact","path":"artifacts/output-weights.bin","sha256":"6a536cff5b44d31e45ff9b128794e29c3fe9c09bad111f0dbe9df3fc29941de7"},{"byte_length":6,"kind":"model-artifact","path":"artifacts/triage-bias.bin","sha256":"34b5d0d734084832dea276360f994018f4e6eb7921334265e58217b360a2a79d"},{"byte_length":18,"kind":"model-artifact","path":"artifacts/triage-weights.bin","sha256":"7a1039fea753fdbab50d96e9b180fb5f987c6ba688d847da0e209608c5c0f58e"},{"byte_length":1786,"kind":"project-config","path":"lexlean.toml","sha256":"b79e1070aab27c02ec4396ee66aa4bad7b90f9bca923932529eb9eb26264761a"},{"byte_length":13246,"kind":"source","path":"src/Flows.lex.tex","sha256":"28ec74d66a4db50353250e50c656dd75d6e0555eaacc19fbd37c573f8e938c33"},{"byte_length":3921,"kind":"source","path":"src/Glyphs.lex.tex","sha256":"14f0f695eb5d2853be86d0599bc52cad41f92c971c4b8b69ac77ddc0635d3b70"},{"byte_length":13264,"kind":"source","path":"src/Ledger.lex.tex","sha256":"4eaf7867fbd19e7f03c139d4f5bfa753cc7022d2c1f2faf6b849abecff4e9815"},{"byte_length":13995,"kind":"source","path":"src/Main.lex.tex","sha256":"09fef2732bb2b95f41909df0570942389cddbf5bcefe01e667b6ec7400caad75"},{"byte_length":12945,"kind":"source","path":"src/Pipeline.lex.tex","sha256":"82cec7477a537982dab7be86130292d11e3cc2123c2e7188a32b8d8808ab22c1"},{"byte_length":3172,"kind":"source","path":"src/Policy.lex.tex","sha256":"32d2ea99e908b81d5210299ee8e6148cc87e4ae72d9bef235cadf5cf69947ecf"},{"byte_length":8290,"kind":"source","path":"src/Recognizer.lex.tex","sha256":"28bd37cb2876ff04da7a9efddf50a52d3019c64910aca2b806b4b6181e84b04b"},{"byte_length":3686,"kind":"source","path":"src/Session.lex.tex","sha256":"0077c43c5251814a8329dc387538b9d0aafb0780238f61ce60bb245e9a15bbb1"},{"byte_length":6766,"kind":"source","path":"src/Triage.lex.tex","sha256":"61ce4693fcb18df340d1f0f9a9a0d29a73912cc4075bd20dcbda09508373808b"}],"language":"1.2","lean_toolchain":"leanprover/lean4:v4.32.1","modules":[{"lean_module":"Models.Flows","module":"Flows","source_path":"src/Flows.lex.tex"},{"lean_module":"Models.Glyphs","module":"Glyphs","source_path":"src/Glyphs.lex.tex"},{"lean_module":"Models.Ledger","module":"Ledger","source_path":"src/Ledger.lex.tex"},{"lean_module":"Models.Main","module":"Main","source_path":"src/Main.lex.tex"},{"lean_module":"Models.Pipeline","module":"Pipeline","source_path":"src/Pipeline.lex.tex"},{"lean_module":"Models.Policy","module":"Policy","source_path":"src/Policy.lex.tex"},{"lean_module":"Models.Recognizer","module":"Recognizer","source_path":"src/Recognizer.lex.tex"},{"lean_module":"Models.Session","module":"Session","source_path":"src/Session.lex.tex"},{"lean_module":"Models.Triage","module":"Triage","source_path":"src/Triage.lex.tex"}],"outputs":[{"byte_length":24217,"kind":"coverage","path":"coverage/Models/Flows.coverage.json","sha256":"e9b1f6037cee26e0cdc097c7bc65ed0345263b1ed4463ed7d210eafaad1adff4"},{"byte_length":9847,"kind":"coverage","path":"coverage/Models/Glyphs.coverage.json","sha256":"072aea809bb4e07810443bd6655b3dbedd5ffc81ee90b3b281013c7dc18f0001"},{"byte_length":25557,"kind":"coverage","path":"coverage/Models/Ledger.coverage.json","sha256":"8029c3cef9485dee7bf5585898f5416186731f9b0ec1df5b5186865278447b01"},{"byte_length":30015,"kind":"coverage","path":"coverage/Models/Main.coverage.json","sha256":"477bcd9b3e0f0d6061de1f0e125668d19ca0a963a869aebd621c4f8361f9d42d"},{"byte_length":24131,"kind":"coverage","path":"coverage/Models/Pipeline.coverage.json","sha256":"e082ea27d2b6e96f9168548252aa12f19153ef34d27b5031617fd7720cbabb88"},{"byte_length":12248,"kind":"coverage","path":"coverage/Models/Policy.coverage.json","sha256":"04dc9b952a28d723f62e3b56b063eddd9953f0aefd29d3897e66bc735ff78445"},{"byte_length":15495,"kind":"coverage","path":"coverage/Models/Recognizer.coverage.json","sha256":"69fdda5a237d1935f7ca26006e6560af6dcbebadb69d17f227a2429866e7cbb9"},{"byte_length":12487,"kind":"coverage","path":"coverage/Models/Session.coverage.json","sha256":"480eff88eec1169a6d701a53c9669598b579ce0699d75c695d043020180095ed"},{"byte_length":13513,"kind":"coverage","path":"coverage/Models/Triage.coverage.json","sha256":"5837a31c1b4d9651670e477b15abfb0c466a57d9b777987c99f059e2b3a02ac5"},{"byte_length":62836,"kind":"lean","path":"modules/Models/Flows.lean","sha256":"871a71c6eed0efaca275f805e9b26dd7eb07d1bbf0d6fccaf65fd0ffcbf61f3e"},{"byte_length":2855,"kind":"lean","path":"modules/Models/Glyphs.lean","sha256":"8aa86a6b8345f27ccbe31ec8e215ccbc41f5a94b80b06b46c9a953e230e2f14c"},{"byte_length":67242,"kind":"lean","path":"modules/Models/Ledger.lean","sha256":"6097dcedded56f40246156dbf0b299695566039e964ca0e1cc1e95641bd9cdac"},{"byte_length":17668,"kind":"lean","path":"modules/Models/Main.lean","sha256":"658e891f7761222d52582f26186d208769621fdabaa1a0309cba849c8f0d0509"},{"byte_length":15495,"kind":"lean","path":"modules/Models/Pipeline.lean","sha256":"0974e254daa6ea324063802ef965309e195c2cadb3ff154a7ecab65e011e2cb1"},{"byte_length":2673,"kind":"lean","path":"modules/Models/Policy.lean","sha256":"75af53ee823cb3b3a8a2fa5518ca4705eaf5cd16ff963e45a936a3bc888f2105"},{"byte_length":25032,"kind":"lean","path":"modules/Models/Recognizer.lean","sha256":"c3c1a25b313cdf4e12d29fad952adf3d0e4fc0c8d8f4c2d4ba6db942e53a3b09"},{"byte_length":15239,"kind":"lean","path":"modules/Models/Session.lean","sha256":"6b3037069b9b123c316c85e9a2126779078ed85ea658a8d04ae4693582185074"},{"byte_length":7179,"kind":"lean","path":"modules/Models/Triage.lean","sha256":"da0208edd92e97b9d9052875c679a7a6954bd41f37497e00ddcf40d47389147b"},{"byte_length":11477,"kind":"lexicon-closure","path":"lexicons/Flows.closure.json","sha256":"858b26caa8a4ba472b9fda1c075790e289bad1bc2c8fd9972ce01c780e1249d5"},{"byte_length":11478,"kind":"lexicon-closure","path":"lexicons/Glyphs.closure.json","sha256":"de21ab7949a2df29237c6a4d7f321091f5acd24d46fa1807cdbc0b65f864b27a"},{"byte_length":11478,"kind":"lexicon-closure","path":"lexicons/Ledger.closure.json","sha256":"f9388586b5a83a1936fb2a98fc17b01d7cd07e13687d01d5899a3688adb62427"},{"byte_length":11476,"kind":"lexicon-closure","path":"lexicons/Main.closure.json","sha256":"76718e3e6f6a37d3170b892b6beafe27c8a80a81ff6c957e571441ddcf81b1d6"},{"byte_length":11480,"kind":"lexicon-closure","path":"lexicons/Pipeline.closure.json","sha256":"83cdbac593b6281d194e892e8c635551073cd5113cf47b84e4aa8dc3165cb4ae"},{"byte_length":11478,"kind":"lexicon-closure","path":"lexicons/Policy.closure.json","sha256":"cfea6fccd554628e92aa4e4ab9501276443605e9b7b7222894a9345acdeeaf5c"},{"byte_length":11482,"kind":"lexicon-closure","path":"lexicons/Recognizer.closure.json","sha256":"9297441e84743784deedc603cbc74d71441164d59f788c3b6c0e7bbb3ac6e2a8"},{"byte_length":11479,"kind":"lexicon-closure","path":"lexicons/Session.closure.json","sha256":"8300e307091b03c0b18bafb8be0a476514693fddaac26c9481b5bec9bc1908f8"},{"byte_length":11478,"kind":"lexicon-closure","path":"lexicons/Triage.closure.json","sha256":"b2f32bd383076cd4db64bfbc67ef975f94d237edb76f59a156317639270e482f"},{"byte_length":19292,"kind":"map","path":"maps/Models/Flows.map.json","sha256":"940583ea24b19ccba35d62d8dd047ac9d5bf53782d809d728b4cad075cf6b318"},{"byte_length":2945,"kind":"map","path":"maps/Models/Glyphs.map.json","sha256":"79b7da8f356b211b39fdba29daf4b8f014e0941671516d7a8ba408ed9d52666e"},{"byte_length":21594,"kind":"map","path":"maps/Models/Ledger.map.json","sha256":"925504d898b13bac4a0157b6dd5c7cff923a68ad75d09d17be17569445d4ef5f"},{"byte_length":21960,"kind":"map","path":"maps/Models/Main.map.json","sha256":"931fb5c17684ac7b1584cfe007a2efa8dba120b0aa8d767e5376f5fe7fe5d885"},{"byte_length":15952,"kind":"map","path":"maps/Models/Pipeline.map.json","sha256":"e8f625b074758785668941fb56f24db011c16f17fb95feafc5f6b869a8af4193"},{"byte_length":4862,"kind":"map","path":"maps/Models/Policy.map.json","sha256":"7cbb9f501f0b7cfdc779e4c45686a684236b43b4391547bd59a9c54d41d9b97a"},{"byte_length":8484,"kind":"map","path":"maps/Models/Recognizer.map.json","sha256":"fa5850a1f861dc61374daa9673a7995e334fdd72360d6cc2b546311047d0249c"},{"byte_length":5833,"kind":"map","path":"maps/Models/Session.map.json","sha256":"9f137acaaf2f126775dc252f790feb386da35d9dc99b19e4065b1f930ea8d9f1"},{"byte_length":7133,"kind":"map","path":"maps/Models/Triage.map.json","sha256":"27ccaf0a9474418d2c9a551cef5456ec6006d51d5518b92cdc93cefc9eb6103f"},{"byte_length":79615,"kind":"production-eligibility","path":"production/Models/Main.eligibility.json","sha256":"e65c147e2755a7f0140521b73588e6e206590c70f8d3c313a6b13be2420dd3b8"},{"byte_length":37412,"kind":"tex","path":"modules/Models/Flows.tex","sha256":"a7ad124df989dba8e1e5d673c9cc40e6d4b9b5f2a66821d04dc0cbc5ce3bb174"},{"byte_length":4181,"kind":"tex","path":"modules/Models/Glyphs.tex","sha256":"6996f9482d5460c45ac62c9cd8bbe44b376ad98661730c898501535ca39ef537"},{"byte_length":32582,"kind":"tex","path":"modules/Models/Ledger.tex","sha256":"86863d003899b6037aab9ed859608ac66c19ca0f594b2e363577e9cd8c8bae65"},{"byte_length":22675,"kind":"tex","path":"modules/Models/Main.tex","sha256":"99c225ea6da22156c56975a427fb5529abe3b64087760d5962c94a929228b17b"},{"byte_length":22804,"kind":"tex","path":"modules/Models/Pipeline.tex","sha256":"8afd93d17cfb93d15d0a453f85434722a713b25c57ee79637885d6a43bfa1a57"},{"byte_length":5668,"kind":"tex","path":"modules/Models/Policy.tex","sha256":"9b896db44315af8db6859dcb061178eef227967f4835c897f47bd5df85b7649d"},{"byte_length":18868,"kind":"tex","path":"modules/Models/Recognizer.tex","sha256":"4fda5d8ad4890ae385da68c4be4c23b44a5e021869b92e6c599469bfde00e1ba"},{"byte_length":7934,"kind":"tex","path":"modules/Models/Session.tex","sha256":"bdee6203c11a7e19bbcb0cbc81c785c5c8168dc450c4f167215e2d2f4a19dd14"},{"byte_length":11815,"kind":"tex","path":"modules/Models/Triage.tex","sha256":"37fe90aac05faee917c08a1ff9faa63403cf7e42459bad80798152739099b827"}],"project":"models","selection":["Flows","Glyphs","Ledger","Main","Pipeline","Policy","Recognizer","Session","Triage"],"semantic_id":"91b57d30cfd6f60128d6c72e374148ef2e79e45a626e878a7c7551c9a29b1534","source_id":"a2b28f35f0ba5d1a28d3832af59389874c0d5e4006af1c81f108c4bed5e405aa","spec":"lexlean/build-manifest/1"} diff --git a/examples/models/expected/build/maps/Models/Flows.map.json b/examples/models/expected/build/maps/Models/Flows.map.json index 20a63b403..aea06f827 100644 --- a/examples/models/expected/build/maps/Models/Flows.map.json +++ b/examples/models/expected/build/maps/Models/Flows.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/Models/Flows.lean"},{"id":1,"kind":"tex","path":"modules/Models/Flows.tex"}],"mappings":[{"artifact":0,"gen_end":372,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":13246,"src_start":0},{"artifact":0,"gen_end":538,"gen_start":372,"node":1,"role":"declaration","source":0,"src_end":382,"src_start":160},{"artifact":0,"gen_end":695,"gen_start":538,"node":2,"role":"declaration","source":0,"src_end":694,"src_start":384},{"artifact":0,"gen_end":1312,"gen_start":695,"node":3,"role":"declaration","source":0,"src_end":1026,"src_start":696},{"artifact":0,"gen_end":4373,"gen_start":1312,"node":4,"role":"declaration","source":0,"src_end":1207,"src_start":1028},{"artifact":0,"gen_end":4613,"gen_start":4373,"node":5,"role":"declaration","source":0,"src_end":1331,"src_start":1209},{"artifact":0,"gen_end":4779,"gen_start":4613,"node":6,"role":"declaration","source":0,"src_end":1555,"src_start":1333},{"artifact":0,"gen_end":4944,"gen_start":4779,"node":7,"role":"declaration","source":0,"src_end":1846,"src_start":1557},{"artifact":0,"gen_end":5382,"gen_start":4944,"node":8,"role":"declaration","source":0,"src_end":2107,"src_start":1848},{"artifact":0,"gen_end":8437,"gen_start":5382,"node":9,"role":"declaration","source":0,"src_end":2284,"src_start":2109},{"artifact":0,"gen_end":11493,"gen_start":8437,"node":10,"role":"declaration","source":0,"src_end":2462,"src_start":2286},{"artifact":0,"gen_end":11632,"gen_start":11493,"node":11,"role":"declaration","source":0,"src_end":2619,"src_start":2464},{"artifact":0,"gen_end":12073,"gen_start":11632,"node":12,"role":"declaration","source":0,"src_end":2883,"src_start":2621},{"artifact":0,"gen_end":12220,"gen_start":12073,"node":13,"role":"declaration","source":0,"src_end":3048,"src_start":2885},{"artifact":0,"gen_end":12329,"gen_start":12220,"node":14,"role":"declaration","source":0,"src_end":3165,"src_start":3050},{"artifact":0,"gen_end":12441,"gen_start":12329,"node":15,"role":"declaration","source":0,"src_end":3308,"src_start":3167},{"artifact":0,"gen_end":15479,"gen_start":12441,"node":16,"role":"declaration","source":0,"src_end":3507,"src_start":3310},{"artifact":0,"gen_end":15636,"gen_start":15479,"node":17,"role":"declaration","source":0,"src_end":3783,"src_start":3509},{"artifact":0,"gen_end":16767,"gen_start":15636,"node":18,"role":"declaration","source":0,"src_end":4022,"src_start":3785},{"artifact":0,"gen_end":16908,"gen_start":16767,"node":19,"role":"declaration","source":0,"src_end":4138,"src_start":4024},{"artifact":0,"gen_end":17016,"gen_start":16908,"node":20,"role":"declaration","source":0,"src_end":4257,"src_start":4140},{"artifact":0,"gen_end":17123,"gen_start":17016,"node":21,"role":"declaration","source":0,"src_end":4406,"src_start":4259},{"artifact":0,"gen_end":20251,"gen_start":17123,"node":22,"role":"declaration","source":0,"src_end":4684,"src_start":4408},{"artifact":0,"gen_end":20350,"gen_start":20251,"node":23,"role":"declaration","source":0,"src_end":4784,"src_start":4686},{"artifact":0,"gen_end":20452,"gen_start":20350,"node":24,"role":"declaration","source":0,"src_end":4920,"src_start":4786},{"artifact":0,"gen_end":23544,"gen_start":20452,"node":25,"role":"declaration","source":0,"src_end":5161,"src_start":4922},{"artifact":0,"gen_end":23881,"gen_start":23544,"node":26,"role":"declaration","source":0,"src_end":5584,"src_start":5163},{"artifact":0,"gen_end":24458,"gen_start":23881,"node":27,"role":"declaration","source":0,"src_end":5869,"src_start":5586},{"artifact":0,"gen_end":27578,"gen_start":24458,"node":28,"role":"declaration","source":0,"src_end":6111,"src_start":5871},{"artifact":0,"gen_end":30701,"gen_start":27578,"node":29,"role":"declaration","source":0,"src_end":6355,"src_start":6113},{"artifact":0,"gen_end":30973,"gen_start":30701,"node":30,"role":"declaration","source":0,"src_end":6502,"src_start":6357},{"artifact":0,"gen_end":31115,"gen_start":30973,"node":31,"role":"declaration","source":0,"src_end":6654,"src_start":6504},{"artifact":0,"gen_end":31300,"gen_start":31115,"node":32,"role":"declaration","source":0,"src_end":6856,"src_start":6656},{"artifact":0,"gen_end":34401,"gen_start":31300,"node":33,"role":"declaration","source":0,"src_end":7135,"src_start":6858},{"artifact":0,"gen_end":34575,"gen_start":34401,"node":34,"role":"declaration","source":0,"src_end":7477,"src_start":7137},{"artifact":0,"gen_end":35173,"gen_start":34575,"node":35,"role":"declaration","source":0,"src_end":7770,"src_start":7479},{"artifact":0,"gen_end":38275,"gen_start":35173,"node":36,"role":"declaration","source":0,"src_end":8021,"src_start":7772},{"artifact":0,"gen_end":41378,"gen_start":38275,"node":37,"role":"declaration","source":0,"src_end":8274,"src_start":8023},{"artifact":0,"gen_end":41673,"gen_start":41378,"node":38,"role":"declaration","source":0,"src_end":8430,"src_start":8276},{"artifact":0,"gen_end":42014,"gen_start":41673,"node":39,"role":"declaration","source":0,"src_end":8847,"src_start":8432},{"artifact":0,"gen_end":42621,"gen_start":42014,"node":40,"role":"declaration","source":0,"src_end":9167,"src_start":8849},{"artifact":0,"gen_end":45775,"gen_start":42621,"node":41,"role":"declaration","source":0,"src_end":9435,"src_start":9169},{"artifact":0,"gen_end":48932,"gen_start":45775,"node":42,"role":"declaration","source":0,"src_end":9705,"src_start":9437},{"artifact":0,"gen_end":49197,"gen_start":48932,"node":43,"role":"declaration","source":0,"src_end":9861,"src_start":9707},{"artifact":0,"gen_end":49536,"gen_start":49197,"node":44,"role":"declaration","source":0,"src_end":10304,"src_start":9863},{"artifact":0,"gen_end":52767,"gen_start":49536,"node":45,"role":"declaration","source":0,"src_end":10643,"src_start":10306},{"artifact":0,"gen_end":53429,"gen_start":52767,"node":46,"role":"declaration","source":0,"src_end":11008,"src_start":10645},{"artifact":0,"gen_end":56555,"gen_start":53429,"node":47,"role":"declaration","source":0,"src_end":11256,"src_start":11010},{"artifact":0,"gen_end":59686,"gen_start":56555,"node":48,"role":"declaration","source":0,"src_end":11507,"src_start":11258},{"artifact":0,"gen_end":59973,"gen_start":59686,"node":49,"role":"declaration","source":0,"src_end":11670,"src_start":11509},{"artifact":0,"gen_end":60146,"gen_start":59973,"node":50,"role":"declaration","source":0,"src_end":11992,"src_start":11672},{"artifact":0,"gen_end":61165,"gen_start":60146,"node":51,"role":"declaration","source":0,"src_end":12342,"src_start":11994},{"artifact":0,"gen_end":61464,"gen_start":61165,"node":52,"role":"declaration","source":0,"src_end":12454,"src_start":12344},{"artifact":0,"gen_end":61627,"gen_start":61464,"node":53,"role":"declaration","source":0,"src_end":12660,"src_start":12456},{"artifact":0,"gen_end":61831,"gen_start":61627,"node":54,"role":"declaration","source":0,"src_end":12757,"src_start":12662},{"artifact":0,"gen_end":62521,"gen_start":61831,"node":55,"role":"declaration","source":0,"src_end":13099,"src_start":12759},{"artifact":0,"gen_end":62818,"gen_start":62521,"node":56,"role":"declaration","source":0,"src_end":13210,"src_start":13101},{"artifact":0,"gen_end":62836,"gen_start":62818,"node":0,"role":"declaration","source":0,"src_end":13246,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":57,"role":"declaration","source":0,"src_end":13246,"src_start":0},{"artifact":1,"gen_end":419,"gen_start":134,"node":58,"role":"declaration","source":0,"src_end":382,"src_start":160},{"artifact":1,"gen_end":1149,"gen_start":419,"node":59,"role":"declaration","source":0,"src_end":694,"src_start":384},{"artifact":1,"gen_end":2244,"gen_start":1149,"node":60,"role":"declaration","source":0,"src_end":1026,"src_start":696},{"artifact":1,"gen_end":2506,"gen_start":2244,"node":61,"role":"declaration","source":0,"src_end":1207,"src_start":1028},{"artifact":1,"gen_end":3308,"gen_start":2506,"node":62,"role":"declaration","source":0,"src_end":1331,"src_start":1209},{"artifact":1,"gen_end":3593,"gen_start":3308,"node":63,"role":"declaration","source":0,"src_end":1555,"src_start":1333},{"artifact":1,"gen_end":4331,"gen_start":3593,"node":64,"role":"declaration","source":0,"src_end":1846,"src_start":1557},{"artifact":1,"gen_end":5191,"gen_start":4331,"node":65,"role":"declaration","source":0,"src_end":2107,"src_start":1848},{"artifact":1,"gen_end":5449,"gen_start":5191,"node":66,"role":"declaration","source":0,"src_end":2284,"src_start":2109},{"artifact":1,"gen_end":5708,"gen_start":5449,"node":67,"role":"declaration","source":0,"src_end":2462,"src_start":2286},{"artifact":1,"gen_end":6592,"gen_start":5708,"node":68,"role":"declaration","source":0,"src_end":2619,"src_start":2464},{"artifact":1,"gen_end":7458,"gen_start":6592,"node":69,"role":"declaration","source":0,"src_end":2883,"src_start":2621},{"artifact":1,"gen_end":8366,"gen_start":7458,"node":70,"role":"declaration","source":0,"src_end":3048,"src_start":2885},{"artifact":1,"gen_end":8646,"gen_start":8366,"node":71,"role":"declaration","source":0,"src_end":3165,"src_start":3050},{"artifact":1,"gen_end":9005,"gen_start":8646,"node":72,"role":"declaration","source":0,"src_end":3308,"src_start":3167},{"artifact":1,"gen_end":9264,"gen_start":9005,"node":73,"role":"declaration","source":0,"src_end":3507,"src_start":3310},{"artifact":1,"gen_end":9944,"gen_start":9264,"node":74,"role":"declaration","source":0,"src_end":3783,"src_start":3509},{"artifact":1,"gen_end":11530,"gen_start":9944,"node":75,"role":"declaration","source":0,"src_end":4022,"src_start":3785},{"artifact":1,"gen_end":11997,"gen_start":11530,"node":76,"role":"declaration","source":0,"src_end":4138,"src_start":4024},{"artifact":1,"gen_end":12276,"gen_start":11997,"node":77,"role":"declaration","source":0,"src_end":4257,"src_start":4140},{"artifact":1,"gen_end":12630,"gen_start":12276,"node":78,"role":"declaration","source":0,"src_end":4406,"src_start":4259},{"artifact":1,"gen_end":12917,"gen_start":12630,"node":79,"role":"declaration","source":0,"src_end":4684,"src_start":4408},{"artifact":1,"gen_end":13186,"gen_start":12917,"node":80,"role":"declaration","source":0,"src_end":4784,"src_start":4686},{"artifact":1,"gen_end":13534,"gen_start":13186,"node":81,"role":"declaration","source":0,"src_end":4920,"src_start":4786},{"artifact":1,"gen_end":13836,"gen_start":13534,"node":82,"role":"declaration","source":0,"src_end":5161,"src_start":4922},{"artifact":1,"gen_end":15047,"gen_start":13836,"node":83,"role":"declaration","source":0,"src_end":5584,"src_start":5163},{"artifact":1,"gen_end":16099,"gen_start":15047,"node":84,"role":"declaration","source":0,"src_end":5869,"src_start":5586},{"artifact":1,"gen_end":16399,"gen_start":16099,"node":85,"role":"declaration","source":0,"src_end":6111,"src_start":5871},{"artifact":1,"gen_end":16703,"gen_start":16399,"node":86,"role":"declaration","source":0,"src_end":6355,"src_start":6113},{"artifact":1,"gen_end":17832,"gen_start":16703,"node":87,"role":"declaration","source":0,"src_end":6502,"src_start":6357},{"artifact":1,"gen_end":18160,"gen_start":17832,"node":88,"role":"declaration","source":0,"src_end":6654,"src_start":6504},{"artifact":1,"gen_end":18592,"gen_start":18160,"node":89,"role":"declaration","source":0,"src_end":6856,"src_start":6656},{"artifact":1,"gen_end":18909,"gen_start":18592,"node":90,"role":"declaration","source":0,"src_end":7135,"src_start":6858},{"artifact":1,"gen_end":19684,"gen_start":18909,"node":91,"role":"declaration","source":0,"src_end":7477,"src_start":7137},{"artifact":1,"gen_end":20771,"gen_start":19684,"node":92,"role":"declaration","source":0,"src_end":7770,"src_start":7479},{"artifact":1,"gen_end":21086,"gen_start":20771,"node":93,"role":"declaration","source":0,"src_end":8021,"src_start":7772},{"artifact":1,"gen_end":21402,"gen_start":21086,"node":94,"role":"declaration","source":0,"src_end":8274,"src_start":8023},{"artifact":1,"gen_end":22540,"gen_start":21402,"node":95,"role":"declaration","source":0,"src_end":8430,"src_start":8276},{"artifact":1,"gen_end":23742,"gen_start":22540,"node":96,"role":"declaration","source":0,"src_end":8847,"src_start":8432},{"artifact":1,"gen_end":24827,"gen_start":23742,"node":97,"role":"declaration","source":0,"src_end":9167,"src_start":8849},{"artifact":1,"gen_end":25161,"gen_start":24827,"node":98,"role":"declaration","source":0,"src_end":9435,"src_start":9169},{"artifact":1,"gen_end":25499,"gen_start":25161,"node":99,"role":"declaration","source":0,"src_end":9705,"src_start":9437},{"artifact":1,"gen_end":26702,"gen_start":25499,"node":100,"role":"declaration","source":0,"src_end":9861,"src_start":9707},{"artifact":1,"gen_end":27930,"gen_start":26702,"node":101,"role":"declaration","source":0,"src_end":10304,"src_start":9863},{"artifact":1,"gen_end":28295,"gen_start":27930,"node":102,"role":"declaration","source":0,"src_end":10643,"src_start":10306},{"artifact":1,"gen_end":29759,"gen_start":28295,"node":103,"role":"declaration","source":0,"src_end":11008,"src_start":10645},{"artifact":1,"gen_end":30065,"gen_start":29759,"node":104,"role":"declaration","source":0,"src_end":11256,"src_start":11010},{"artifact":1,"gen_end":30377,"gen_start":30065,"node":105,"role":"declaration","source":0,"src_end":11507,"src_start":11258},{"artifact":1,"gen_end":31554,"gen_start":30377,"node":106,"role":"declaration","source":0,"src_end":11670,"src_start":11509},{"artifact":1,"gen_end":32296,"gen_start":31554,"node":107,"role":"declaration","source":0,"src_end":11992,"src_start":11672},{"artifact":1,"gen_end":33838,"gen_start":32296,"node":108,"role":"declaration","source":0,"src_end":12342,"src_start":11994},{"artifact":1,"gen_end":34491,"gen_start":33838,"node":109,"role":"declaration","source":0,"src_end":12454,"src_start":12344},{"artifact":1,"gen_end":35046,"gen_start":34491,"node":110,"role":"declaration","source":0,"src_end":12660,"src_start":12456},{"artifact":1,"gen_end":35580,"gen_start":35046,"node":111,"role":"declaration","source":0,"src_end":12757,"src_start":12662},{"artifact":1,"gen_end":36747,"gen_start":35580,"node":112,"role":"declaration","source":0,"src_end":13099,"src_start":12759},{"artifact":1,"gen_end":37397,"gen_start":36747,"node":113,"role":"declaration","source":0,"src_end":13210,"src_start":13101},{"artifact":1,"gen_end":37412,"gen_start":37397,"node":57,"role":"declaration","source":0,"src_end":13246,"src_start":0}],"module":"Flows","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"},{"id":40,"kind":"semantic-declaration"},{"id":41,"kind":"semantic-declaration"},{"id":42,"kind":"semantic-declaration"},{"id":43,"kind":"semantic-declaration"},{"id":44,"kind":"semantic-declaration"},{"id":45,"kind":"semantic-declaration"},{"id":46,"kind":"semantic-declaration"},{"id":47,"kind":"semantic-declaration"},{"id":48,"kind":"semantic-declaration"},{"id":49,"kind":"semantic-declaration"},{"id":50,"kind":"semantic-declaration"},{"id":51,"kind":"semantic-declaration"},{"id":52,"kind":"semantic-declaration"},{"id":53,"kind":"semantic-declaration"},{"id":54,"kind":"semantic-declaration"},{"id":55,"kind":"semantic-declaration"},{"id":56,"kind":"semantic-declaration"},{"id":57,"kind":"semantic-latex-module"},{"id":58,"kind":"semantic-declaration"},{"id":59,"kind":"semantic-declaration"},{"id":60,"kind":"semantic-declaration"},{"id":61,"kind":"semantic-declaration"},{"id":62,"kind":"semantic-declaration"},{"id":63,"kind":"semantic-declaration"},{"id":64,"kind":"semantic-declaration"},{"id":65,"kind":"semantic-declaration"},{"id":66,"kind":"semantic-declaration"},{"id":67,"kind":"semantic-declaration"},{"id":68,"kind":"semantic-declaration"},{"id":69,"kind":"semantic-declaration"},{"id":70,"kind":"semantic-declaration"},{"id":71,"kind":"semantic-declaration"},{"id":72,"kind":"semantic-declaration"},{"id":73,"kind":"semantic-declaration"},{"id":74,"kind":"semantic-declaration"},{"id":75,"kind":"semantic-declaration"},{"id":76,"kind":"semantic-declaration"},{"id":77,"kind":"semantic-declaration"},{"id":78,"kind":"semantic-declaration"},{"id":79,"kind":"semantic-declaration"},{"id":80,"kind":"semantic-declaration"},{"id":81,"kind":"semantic-declaration"},{"id":82,"kind":"semantic-declaration"},{"id":83,"kind":"semantic-declaration"},{"id":84,"kind":"semantic-declaration"},{"id":85,"kind":"semantic-declaration"},{"id":86,"kind":"semantic-declaration"},{"id":87,"kind":"semantic-declaration"},{"id":88,"kind":"semantic-declaration"},{"id":89,"kind":"semantic-declaration"},{"id":90,"kind":"semantic-declaration"},{"id":91,"kind":"semantic-declaration"},{"id":92,"kind":"semantic-declaration"},{"id":93,"kind":"semantic-declaration"},{"id":94,"kind":"semantic-declaration"},{"id":95,"kind":"semantic-declaration"},{"id":96,"kind":"semantic-declaration"},{"id":97,"kind":"semantic-declaration"},{"id":98,"kind":"semantic-declaration"},{"id":99,"kind":"semantic-declaration"},{"id":100,"kind":"semantic-declaration"},{"id":101,"kind":"semantic-declaration"},{"id":102,"kind":"semantic-declaration"},{"id":103,"kind":"semantic-declaration"},{"id":104,"kind":"semantic-declaration"},{"id":105,"kind":"semantic-declaration"},{"id":106,"kind":"semantic-declaration"},{"id":107,"kind":"semantic-declaration"},{"id":108,"kind":"semantic-declaration"},{"id":109,"kind":"semantic-declaration"},{"id":110,"kind":"semantic-declaration"},{"id":111,"kind":"semantic-declaration"},{"id":112,"kind":"semantic-declaration"},{"id":113,"kind":"semantic-declaration"}],"semantic_id":"49cf062e918bdc2f8a44a66473c4435ee310d33b78d7093624f025547ab95bfd","source_id":"029a1a5ebafd24dc317957624d7e5417c3a563331be1ac2c56d796c47a51d75f","sources":[{"id":0,"kind":"file","path":"src/Flows.lex.tex","sha256":"28ec74d66a4db50353250e50c656dd75d6e0555eaacc19fbd37c573f8e938c33"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/Models/Flows.lean"},{"id":1,"kind":"tex","path":"modules/Models/Flows.tex"}],"mappings":[{"artifact":0,"gen_end":372,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":13246,"src_start":0},{"artifact":0,"gen_end":538,"gen_start":372,"node":1,"role":"declaration","source":0,"src_end":382,"src_start":160},{"artifact":0,"gen_end":695,"gen_start":538,"node":2,"role":"declaration","source":0,"src_end":694,"src_start":384},{"artifact":0,"gen_end":1312,"gen_start":695,"node":3,"role":"declaration","source":0,"src_end":1026,"src_start":696},{"artifact":0,"gen_end":4373,"gen_start":1312,"node":4,"role":"declaration","source":0,"src_end":1207,"src_start":1028},{"artifact":0,"gen_end":4613,"gen_start":4373,"node":5,"role":"declaration","source":0,"src_end":1331,"src_start":1209},{"artifact":0,"gen_end":4779,"gen_start":4613,"node":6,"role":"declaration","source":0,"src_end":1555,"src_start":1333},{"artifact":0,"gen_end":4944,"gen_start":4779,"node":7,"role":"declaration","source":0,"src_end":1846,"src_start":1557},{"artifact":0,"gen_end":5382,"gen_start":4944,"node":8,"role":"declaration","source":0,"src_end":2107,"src_start":1848},{"artifact":0,"gen_end":8437,"gen_start":5382,"node":9,"role":"declaration","source":0,"src_end":2284,"src_start":2109},{"artifact":0,"gen_end":11493,"gen_start":8437,"node":10,"role":"declaration","source":0,"src_end":2462,"src_start":2286},{"artifact":0,"gen_end":11632,"gen_start":11493,"node":11,"role":"declaration","source":0,"src_end":2619,"src_start":2464},{"artifact":0,"gen_end":12073,"gen_start":11632,"node":12,"role":"declaration","source":0,"src_end":2883,"src_start":2621},{"artifact":0,"gen_end":12220,"gen_start":12073,"node":13,"role":"declaration","source":0,"src_end":3048,"src_start":2885},{"artifact":0,"gen_end":12329,"gen_start":12220,"node":14,"role":"declaration","source":0,"src_end":3165,"src_start":3050},{"artifact":0,"gen_end":12441,"gen_start":12329,"node":15,"role":"declaration","source":0,"src_end":3308,"src_start":3167},{"artifact":0,"gen_end":15479,"gen_start":12441,"node":16,"role":"declaration","source":0,"src_end":3507,"src_start":3310},{"artifact":0,"gen_end":15636,"gen_start":15479,"node":17,"role":"declaration","source":0,"src_end":3783,"src_start":3509},{"artifact":0,"gen_end":16767,"gen_start":15636,"node":18,"role":"declaration","source":0,"src_end":4022,"src_start":3785},{"artifact":0,"gen_end":16908,"gen_start":16767,"node":19,"role":"declaration","source":0,"src_end":4138,"src_start":4024},{"artifact":0,"gen_end":17016,"gen_start":16908,"node":20,"role":"declaration","source":0,"src_end":4257,"src_start":4140},{"artifact":0,"gen_end":17123,"gen_start":17016,"node":21,"role":"declaration","source":0,"src_end":4406,"src_start":4259},{"artifact":0,"gen_end":20251,"gen_start":17123,"node":22,"role":"declaration","source":0,"src_end":4684,"src_start":4408},{"artifact":0,"gen_end":20350,"gen_start":20251,"node":23,"role":"declaration","source":0,"src_end":4784,"src_start":4686},{"artifact":0,"gen_end":20452,"gen_start":20350,"node":24,"role":"declaration","source":0,"src_end":4920,"src_start":4786},{"artifact":0,"gen_end":23544,"gen_start":20452,"node":25,"role":"declaration","source":0,"src_end":5161,"src_start":4922},{"artifact":0,"gen_end":23881,"gen_start":23544,"node":26,"role":"declaration","source":0,"src_end":5584,"src_start":5163},{"artifact":0,"gen_end":24458,"gen_start":23881,"node":27,"role":"declaration","source":0,"src_end":5869,"src_start":5586},{"artifact":0,"gen_end":27578,"gen_start":24458,"node":28,"role":"declaration","source":0,"src_end":6111,"src_start":5871},{"artifact":0,"gen_end":30701,"gen_start":27578,"node":29,"role":"declaration","source":0,"src_end":6355,"src_start":6113},{"artifact":0,"gen_end":30973,"gen_start":30701,"node":30,"role":"declaration","source":0,"src_end":6502,"src_start":6357},{"artifact":0,"gen_end":31115,"gen_start":30973,"node":31,"role":"declaration","source":0,"src_end":6654,"src_start":6504},{"artifact":0,"gen_end":31300,"gen_start":31115,"node":32,"role":"declaration","source":0,"src_end":6856,"src_start":6656},{"artifact":0,"gen_end":34401,"gen_start":31300,"node":33,"role":"declaration","source":0,"src_end":7135,"src_start":6858},{"artifact":0,"gen_end":34575,"gen_start":34401,"node":34,"role":"declaration","source":0,"src_end":7477,"src_start":7137},{"artifact":0,"gen_end":35173,"gen_start":34575,"node":35,"role":"declaration","source":0,"src_end":7770,"src_start":7479},{"artifact":0,"gen_end":38275,"gen_start":35173,"node":36,"role":"declaration","source":0,"src_end":8021,"src_start":7772},{"artifact":0,"gen_end":41378,"gen_start":38275,"node":37,"role":"declaration","source":0,"src_end":8274,"src_start":8023},{"artifact":0,"gen_end":41673,"gen_start":41378,"node":38,"role":"declaration","source":0,"src_end":8430,"src_start":8276},{"artifact":0,"gen_end":42014,"gen_start":41673,"node":39,"role":"declaration","source":0,"src_end":8847,"src_start":8432},{"artifact":0,"gen_end":42621,"gen_start":42014,"node":40,"role":"declaration","source":0,"src_end":9167,"src_start":8849},{"artifact":0,"gen_end":45775,"gen_start":42621,"node":41,"role":"declaration","source":0,"src_end":9435,"src_start":9169},{"artifact":0,"gen_end":48932,"gen_start":45775,"node":42,"role":"declaration","source":0,"src_end":9705,"src_start":9437},{"artifact":0,"gen_end":49197,"gen_start":48932,"node":43,"role":"declaration","source":0,"src_end":9861,"src_start":9707},{"artifact":0,"gen_end":49536,"gen_start":49197,"node":44,"role":"declaration","source":0,"src_end":10304,"src_start":9863},{"artifact":0,"gen_end":52767,"gen_start":49536,"node":45,"role":"declaration","source":0,"src_end":10643,"src_start":10306},{"artifact":0,"gen_end":53429,"gen_start":52767,"node":46,"role":"declaration","source":0,"src_end":11008,"src_start":10645},{"artifact":0,"gen_end":56555,"gen_start":53429,"node":47,"role":"declaration","source":0,"src_end":11256,"src_start":11010},{"artifact":0,"gen_end":59686,"gen_start":56555,"node":48,"role":"declaration","source":0,"src_end":11507,"src_start":11258},{"artifact":0,"gen_end":59973,"gen_start":59686,"node":49,"role":"declaration","source":0,"src_end":11670,"src_start":11509},{"artifact":0,"gen_end":60146,"gen_start":59973,"node":50,"role":"declaration","source":0,"src_end":11992,"src_start":11672},{"artifact":0,"gen_end":61165,"gen_start":60146,"node":51,"role":"declaration","source":0,"src_end":12342,"src_start":11994},{"artifact":0,"gen_end":61464,"gen_start":61165,"node":52,"role":"declaration","source":0,"src_end":12454,"src_start":12344},{"artifact":0,"gen_end":61627,"gen_start":61464,"node":53,"role":"declaration","source":0,"src_end":12660,"src_start":12456},{"artifact":0,"gen_end":61831,"gen_start":61627,"node":54,"role":"declaration","source":0,"src_end":12757,"src_start":12662},{"artifact":0,"gen_end":62521,"gen_start":61831,"node":55,"role":"declaration","source":0,"src_end":13099,"src_start":12759},{"artifact":0,"gen_end":62818,"gen_start":62521,"node":56,"role":"declaration","source":0,"src_end":13210,"src_start":13101},{"artifact":0,"gen_end":62836,"gen_start":62818,"node":0,"role":"declaration","source":0,"src_end":13246,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":57,"role":"declaration","source":0,"src_end":13246,"src_start":0},{"artifact":1,"gen_end":419,"gen_start":134,"node":58,"role":"declaration","source":0,"src_end":382,"src_start":160},{"artifact":1,"gen_end":1149,"gen_start":419,"node":59,"role":"declaration","source":0,"src_end":694,"src_start":384},{"artifact":1,"gen_end":2244,"gen_start":1149,"node":60,"role":"declaration","source":0,"src_end":1026,"src_start":696},{"artifact":1,"gen_end":2506,"gen_start":2244,"node":61,"role":"declaration","source":0,"src_end":1207,"src_start":1028},{"artifact":1,"gen_end":3308,"gen_start":2506,"node":62,"role":"declaration","source":0,"src_end":1331,"src_start":1209},{"artifact":1,"gen_end":3593,"gen_start":3308,"node":63,"role":"declaration","source":0,"src_end":1555,"src_start":1333},{"artifact":1,"gen_end":4331,"gen_start":3593,"node":64,"role":"declaration","source":0,"src_end":1846,"src_start":1557},{"artifact":1,"gen_end":5191,"gen_start":4331,"node":65,"role":"declaration","source":0,"src_end":2107,"src_start":1848},{"artifact":1,"gen_end":5449,"gen_start":5191,"node":66,"role":"declaration","source":0,"src_end":2284,"src_start":2109},{"artifact":1,"gen_end":5708,"gen_start":5449,"node":67,"role":"declaration","source":0,"src_end":2462,"src_start":2286},{"artifact":1,"gen_end":6592,"gen_start":5708,"node":68,"role":"declaration","source":0,"src_end":2619,"src_start":2464},{"artifact":1,"gen_end":7458,"gen_start":6592,"node":69,"role":"declaration","source":0,"src_end":2883,"src_start":2621},{"artifact":1,"gen_end":8366,"gen_start":7458,"node":70,"role":"declaration","source":0,"src_end":3048,"src_start":2885},{"artifact":1,"gen_end":8646,"gen_start":8366,"node":71,"role":"declaration","source":0,"src_end":3165,"src_start":3050},{"artifact":1,"gen_end":9005,"gen_start":8646,"node":72,"role":"declaration","source":0,"src_end":3308,"src_start":3167},{"artifact":1,"gen_end":9264,"gen_start":9005,"node":73,"role":"declaration","source":0,"src_end":3507,"src_start":3310},{"artifact":1,"gen_end":9944,"gen_start":9264,"node":74,"role":"declaration","source":0,"src_end":3783,"src_start":3509},{"artifact":1,"gen_end":11530,"gen_start":9944,"node":75,"role":"declaration","source":0,"src_end":4022,"src_start":3785},{"artifact":1,"gen_end":11997,"gen_start":11530,"node":76,"role":"declaration","source":0,"src_end":4138,"src_start":4024},{"artifact":1,"gen_end":12276,"gen_start":11997,"node":77,"role":"declaration","source":0,"src_end":4257,"src_start":4140},{"artifact":1,"gen_end":12630,"gen_start":12276,"node":78,"role":"declaration","source":0,"src_end":4406,"src_start":4259},{"artifact":1,"gen_end":12917,"gen_start":12630,"node":79,"role":"declaration","source":0,"src_end":4684,"src_start":4408},{"artifact":1,"gen_end":13186,"gen_start":12917,"node":80,"role":"declaration","source":0,"src_end":4784,"src_start":4686},{"artifact":1,"gen_end":13534,"gen_start":13186,"node":81,"role":"declaration","source":0,"src_end":4920,"src_start":4786},{"artifact":1,"gen_end":13836,"gen_start":13534,"node":82,"role":"declaration","source":0,"src_end":5161,"src_start":4922},{"artifact":1,"gen_end":15047,"gen_start":13836,"node":83,"role":"declaration","source":0,"src_end":5584,"src_start":5163},{"artifact":1,"gen_end":16099,"gen_start":15047,"node":84,"role":"declaration","source":0,"src_end":5869,"src_start":5586},{"artifact":1,"gen_end":16399,"gen_start":16099,"node":85,"role":"declaration","source":0,"src_end":6111,"src_start":5871},{"artifact":1,"gen_end":16703,"gen_start":16399,"node":86,"role":"declaration","source":0,"src_end":6355,"src_start":6113},{"artifact":1,"gen_end":17832,"gen_start":16703,"node":87,"role":"declaration","source":0,"src_end":6502,"src_start":6357},{"artifact":1,"gen_end":18160,"gen_start":17832,"node":88,"role":"declaration","source":0,"src_end":6654,"src_start":6504},{"artifact":1,"gen_end":18592,"gen_start":18160,"node":89,"role":"declaration","source":0,"src_end":6856,"src_start":6656},{"artifact":1,"gen_end":18909,"gen_start":18592,"node":90,"role":"declaration","source":0,"src_end":7135,"src_start":6858},{"artifact":1,"gen_end":19684,"gen_start":18909,"node":91,"role":"declaration","source":0,"src_end":7477,"src_start":7137},{"artifact":1,"gen_end":20771,"gen_start":19684,"node":92,"role":"declaration","source":0,"src_end":7770,"src_start":7479},{"artifact":1,"gen_end":21086,"gen_start":20771,"node":93,"role":"declaration","source":0,"src_end":8021,"src_start":7772},{"artifact":1,"gen_end":21402,"gen_start":21086,"node":94,"role":"declaration","source":0,"src_end":8274,"src_start":8023},{"artifact":1,"gen_end":22540,"gen_start":21402,"node":95,"role":"declaration","source":0,"src_end":8430,"src_start":8276},{"artifact":1,"gen_end":23742,"gen_start":22540,"node":96,"role":"declaration","source":0,"src_end":8847,"src_start":8432},{"artifact":1,"gen_end":24827,"gen_start":23742,"node":97,"role":"declaration","source":0,"src_end":9167,"src_start":8849},{"artifact":1,"gen_end":25161,"gen_start":24827,"node":98,"role":"declaration","source":0,"src_end":9435,"src_start":9169},{"artifact":1,"gen_end":25499,"gen_start":25161,"node":99,"role":"declaration","source":0,"src_end":9705,"src_start":9437},{"artifact":1,"gen_end":26702,"gen_start":25499,"node":100,"role":"declaration","source":0,"src_end":9861,"src_start":9707},{"artifact":1,"gen_end":27930,"gen_start":26702,"node":101,"role":"declaration","source":0,"src_end":10304,"src_start":9863},{"artifact":1,"gen_end":28295,"gen_start":27930,"node":102,"role":"declaration","source":0,"src_end":10643,"src_start":10306},{"artifact":1,"gen_end":29759,"gen_start":28295,"node":103,"role":"declaration","source":0,"src_end":11008,"src_start":10645},{"artifact":1,"gen_end":30065,"gen_start":29759,"node":104,"role":"declaration","source":0,"src_end":11256,"src_start":11010},{"artifact":1,"gen_end":30377,"gen_start":30065,"node":105,"role":"declaration","source":0,"src_end":11507,"src_start":11258},{"artifact":1,"gen_end":31554,"gen_start":30377,"node":106,"role":"declaration","source":0,"src_end":11670,"src_start":11509},{"artifact":1,"gen_end":32296,"gen_start":31554,"node":107,"role":"declaration","source":0,"src_end":11992,"src_start":11672},{"artifact":1,"gen_end":33838,"gen_start":32296,"node":108,"role":"declaration","source":0,"src_end":12342,"src_start":11994},{"artifact":1,"gen_end":34491,"gen_start":33838,"node":109,"role":"declaration","source":0,"src_end":12454,"src_start":12344},{"artifact":1,"gen_end":35046,"gen_start":34491,"node":110,"role":"declaration","source":0,"src_end":12660,"src_start":12456},{"artifact":1,"gen_end":35580,"gen_start":35046,"node":111,"role":"declaration","source":0,"src_end":12757,"src_start":12662},{"artifact":1,"gen_end":36747,"gen_start":35580,"node":112,"role":"declaration","source":0,"src_end":13099,"src_start":12759},{"artifact":1,"gen_end":37397,"gen_start":36747,"node":113,"role":"declaration","source":0,"src_end":13210,"src_start":13101},{"artifact":1,"gen_end":37412,"gen_start":37397,"node":57,"role":"declaration","source":0,"src_end":13246,"src_start":0}],"module":"Flows","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"},{"id":40,"kind":"semantic-declaration"},{"id":41,"kind":"semantic-declaration"},{"id":42,"kind":"semantic-declaration"},{"id":43,"kind":"semantic-declaration"},{"id":44,"kind":"semantic-declaration"},{"id":45,"kind":"semantic-declaration"},{"id":46,"kind":"semantic-declaration"},{"id":47,"kind":"semantic-declaration"},{"id":48,"kind":"semantic-declaration"},{"id":49,"kind":"semantic-declaration"},{"id":50,"kind":"semantic-declaration"},{"id":51,"kind":"semantic-declaration"},{"id":52,"kind":"semantic-declaration"},{"id":53,"kind":"semantic-declaration"},{"id":54,"kind":"semantic-declaration"},{"id":55,"kind":"semantic-declaration"},{"id":56,"kind":"semantic-declaration"},{"id":57,"kind":"semantic-latex-module"},{"id":58,"kind":"semantic-declaration"},{"id":59,"kind":"semantic-declaration"},{"id":60,"kind":"semantic-declaration"},{"id":61,"kind":"semantic-declaration"},{"id":62,"kind":"semantic-declaration"},{"id":63,"kind":"semantic-declaration"},{"id":64,"kind":"semantic-declaration"},{"id":65,"kind":"semantic-declaration"},{"id":66,"kind":"semantic-declaration"},{"id":67,"kind":"semantic-declaration"},{"id":68,"kind":"semantic-declaration"},{"id":69,"kind":"semantic-declaration"},{"id":70,"kind":"semantic-declaration"},{"id":71,"kind":"semantic-declaration"},{"id":72,"kind":"semantic-declaration"},{"id":73,"kind":"semantic-declaration"},{"id":74,"kind":"semantic-declaration"},{"id":75,"kind":"semantic-declaration"},{"id":76,"kind":"semantic-declaration"},{"id":77,"kind":"semantic-declaration"},{"id":78,"kind":"semantic-declaration"},{"id":79,"kind":"semantic-declaration"},{"id":80,"kind":"semantic-declaration"},{"id":81,"kind":"semantic-declaration"},{"id":82,"kind":"semantic-declaration"},{"id":83,"kind":"semantic-declaration"},{"id":84,"kind":"semantic-declaration"},{"id":85,"kind":"semantic-declaration"},{"id":86,"kind":"semantic-declaration"},{"id":87,"kind":"semantic-declaration"},{"id":88,"kind":"semantic-declaration"},{"id":89,"kind":"semantic-declaration"},{"id":90,"kind":"semantic-declaration"},{"id":91,"kind":"semantic-declaration"},{"id":92,"kind":"semantic-declaration"},{"id":93,"kind":"semantic-declaration"},{"id":94,"kind":"semantic-declaration"},{"id":95,"kind":"semantic-declaration"},{"id":96,"kind":"semantic-declaration"},{"id":97,"kind":"semantic-declaration"},{"id":98,"kind":"semantic-declaration"},{"id":99,"kind":"semantic-declaration"},{"id":100,"kind":"semantic-declaration"},{"id":101,"kind":"semantic-declaration"},{"id":102,"kind":"semantic-declaration"},{"id":103,"kind":"semantic-declaration"},{"id":104,"kind":"semantic-declaration"},{"id":105,"kind":"semantic-declaration"},{"id":106,"kind":"semantic-declaration"},{"id":107,"kind":"semantic-declaration"},{"id":108,"kind":"semantic-declaration"},{"id":109,"kind":"semantic-declaration"},{"id":110,"kind":"semantic-declaration"},{"id":111,"kind":"semantic-declaration"},{"id":112,"kind":"semantic-declaration"},{"id":113,"kind":"semantic-declaration"}],"semantic_id":"91b57d30cfd6f60128d6c72e374148ef2e79e45a626e878a7c7551c9a29b1534","source_id":"a2b28f35f0ba5d1a28d3832af59389874c0d5e4006af1c81f108c4bed5e405aa","sources":[{"id":0,"kind":"file","path":"src/Flows.lex.tex","sha256":"28ec74d66a4db50353250e50c656dd75d6e0555eaacc19fbd37c573f8e938c33"}],"spec":"lexlean/source-map/1"} diff --git a/examples/models/expected/build/maps/Models/Glyphs.map.json b/examples/models/expected/build/maps/Models/Glyphs.map.json index 3f8302b6d..74dd559bc 100644 --- a/examples/models/expected/build/maps/Models/Glyphs.map.json +++ b/examples/models/expected/build/maps/Models/Glyphs.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/Models/Glyphs.lean"},{"id":1,"kind":"tex","path":"modules/Models/Glyphs.tex"}],"mappings":[{"artifact":0,"gen_end":234,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":3921,"src_start":0},{"artifact":0,"gen_end":334,"gen_start":234,"node":1,"role":"declaration","source":0,"src_end":501,"src_start":132},{"artifact":0,"gen_end":1784,"gen_start":334,"node":2,"role":"declaration","source":0,"src_end":2097,"src_start":503},{"artifact":0,"gen_end":2018,"gen_start":1784,"node":3,"role":"declaration","source":0,"src_end":2417,"src_start":2099},{"artifact":0,"gen_end":2257,"gen_start":2018,"node":4,"role":"declaration","source":0,"src_end":2742,"src_start":2419},{"artifact":0,"gen_end":2531,"gen_start":2257,"node":5,"role":"declaration","source":0,"src_end":3102,"src_start":2744},{"artifact":0,"gen_end":2836,"gen_start":2531,"node":6,"role":"declaration","source":0,"src_end":3885,"src_start":3104},{"artifact":0,"gen_end":2855,"gen_start":2836,"node":0,"role":"declaration","source":0,"src_end":3921,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":7,"role":"declaration","source":0,"src_end":3921,"src_start":0},{"artifact":1,"gen_end":723,"gen_start":134,"node":8,"role":"declaration","source":0,"src_end":501,"src_start":132},{"artifact":1,"gen_end":2420,"gen_start":723,"node":9,"role":"declaration","source":0,"src_end":2097,"src_start":503},{"artifact":1,"gen_end":2901,"gen_start":2420,"node":10,"role":"declaration","source":0,"src_end":2417,"src_start":2099},{"artifact":1,"gen_end":3387,"gen_start":2901,"node":11,"role":"declaration","source":0,"src_end":2742,"src_start":2419},{"artifact":1,"gen_end":3908,"gen_start":3387,"node":12,"role":"declaration","source":0,"src_end":3102,"src_start":2744},{"artifact":1,"gen_end":4166,"gen_start":3908,"node":13,"role":"declaration","source":0,"src_end":3885,"src_start":3104},{"artifact":1,"gen_end":4181,"gen_start":4166,"node":7,"role":"declaration","source":0,"src_end":3921,"src_start":0}],"module":"Glyphs","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-latex-module"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"}],"semantic_id":"49cf062e918bdc2f8a44a66473c4435ee310d33b78d7093624f025547ab95bfd","source_id":"029a1a5ebafd24dc317957624d7e5417c3a563331be1ac2c56d796c47a51d75f","sources":[{"id":0,"kind":"file","path":"src/Glyphs.lex.tex","sha256":"14f0f695eb5d2853be86d0599bc52cad41f92c971c4b8b69ac77ddc0635d3b70"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/Models/Glyphs.lean"},{"id":1,"kind":"tex","path":"modules/Models/Glyphs.tex"}],"mappings":[{"artifact":0,"gen_end":234,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":3921,"src_start":0},{"artifact":0,"gen_end":334,"gen_start":234,"node":1,"role":"declaration","source":0,"src_end":501,"src_start":132},{"artifact":0,"gen_end":1784,"gen_start":334,"node":2,"role":"declaration","source":0,"src_end":2097,"src_start":503},{"artifact":0,"gen_end":2018,"gen_start":1784,"node":3,"role":"declaration","source":0,"src_end":2417,"src_start":2099},{"artifact":0,"gen_end":2257,"gen_start":2018,"node":4,"role":"declaration","source":0,"src_end":2742,"src_start":2419},{"artifact":0,"gen_end":2531,"gen_start":2257,"node":5,"role":"declaration","source":0,"src_end":3102,"src_start":2744},{"artifact":0,"gen_end":2836,"gen_start":2531,"node":6,"role":"declaration","source":0,"src_end":3885,"src_start":3104},{"artifact":0,"gen_end":2855,"gen_start":2836,"node":0,"role":"declaration","source":0,"src_end":3921,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":7,"role":"declaration","source":0,"src_end":3921,"src_start":0},{"artifact":1,"gen_end":723,"gen_start":134,"node":8,"role":"declaration","source":0,"src_end":501,"src_start":132},{"artifact":1,"gen_end":2420,"gen_start":723,"node":9,"role":"declaration","source":0,"src_end":2097,"src_start":503},{"artifact":1,"gen_end":2901,"gen_start":2420,"node":10,"role":"declaration","source":0,"src_end":2417,"src_start":2099},{"artifact":1,"gen_end":3387,"gen_start":2901,"node":11,"role":"declaration","source":0,"src_end":2742,"src_start":2419},{"artifact":1,"gen_end":3908,"gen_start":3387,"node":12,"role":"declaration","source":0,"src_end":3102,"src_start":2744},{"artifact":1,"gen_end":4166,"gen_start":3908,"node":13,"role":"declaration","source":0,"src_end":3885,"src_start":3104},{"artifact":1,"gen_end":4181,"gen_start":4166,"node":7,"role":"declaration","source":0,"src_end":3921,"src_start":0}],"module":"Glyphs","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-latex-module"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"}],"semantic_id":"91b57d30cfd6f60128d6c72e374148ef2e79e45a626e878a7c7551c9a29b1534","source_id":"a2b28f35f0ba5d1a28d3832af59389874c0d5e4006af1c81f108c4bed5e405aa","sources":[{"id":0,"kind":"file","path":"src/Glyphs.lex.tex","sha256":"14f0f695eb5d2853be86d0599bc52cad41f92c971c4b8b69ac77ddc0635d3b70"}],"spec":"lexlean/source-map/1"} diff --git a/examples/models/expected/build/maps/Models/Ledger.map.json b/examples/models/expected/build/maps/Models/Ledger.map.json index 7b455cf23..8f124351a 100644 --- a/examples/models/expected/build/maps/Models/Ledger.map.json +++ b/examples/models/expected/build/maps/Models/Ledger.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/Models/Ledger.lean"},{"id":1,"kind":"tex","path":"modules/Models/Ledger.tex"}],"mappings":[{"artifact":0,"gen_end":345,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":13264,"src_start":0},{"artifact":0,"gen_end":416,"gen_start":345,"node":1,"role":"declaration","source":0,"src_end":221,"src_start":142},{"artifact":0,"gen_end":490,"gen_start":416,"node":2,"role":"declaration","source":0,"src_end":338,"src_start":223},{"artifact":0,"gen_end":3533,"gen_start":490,"node":3,"role":"declaration","source":0,"src_end":542,"src_start":340},{"artifact":0,"gen_end":6579,"gen_start":3533,"node":4,"role":"declaration","source":0,"src_end":749,"src_start":544},{"artifact":0,"gen_end":6659,"gen_start":6579,"node":5,"role":"declaration","source":0,"src_end":837,"src_start":751},{"artifact":0,"gen_end":6742,"gen_start":6659,"node":6,"role":"declaration","source":0,"src_end":961,"src_start":839},{"artifact":0,"gen_end":9798,"gen_start":6742,"node":7,"role":"declaration","source":0,"src_end":1173,"src_start":963},{"artifact":0,"gen_end":9898,"gen_start":9798,"node":8,"role":"declaration","source":0,"src_end":1288,"src_start":1175},{"artifact":0,"gen_end":10001,"gen_start":9898,"node":9,"role":"declaration","source":0,"src_end":1429,"src_start":1290},{"artifact":0,"gen_end":13093,"gen_start":10001,"node":10,"role":"declaration","source":0,"src_end":1667,"src_start":1431},{"artifact":0,"gen_end":16188,"gen_start":13093,"node":11,"role":"declaration","source":0,"src_end":1908,"src_start":1669},{"artifact":0,"gen_end":17009,"gen_start":16188,"node":12,"role":"declaration","source":0,"src_end":2521,"src_start":1910},{"artifact":0,"gen_end":17140,"gen_start":17009,"node":13,"role":"declaration","source":0,"src_end":2709,"src_start":2523},{"artifact":0,"gen_end":17228,"gen_start":17140,"node":14,"role":"declaration","source":0,"src_end":2840,"src_start":2711},{"artifact":0,"gen_end":20330,"gen_start":17228,"node":15,"role":"declaration","source":0,"src_end":3111,"src_start":2842},{"artifact":0,"gen_end":23405,"gen_start":20330,"node":16,"role":"declaration","source":0,"src_end":3340,"src_start":3113},{"artifact":0,"gen_end":23603,"gen_start":23405,"node":17,"role":"declaration","source":0,"src_end":3532,"src_start":3342},{"artifact":0,"gen_end":23809,"gen_start":23603,"node":18,"role":"declaration","source":0,"src_end":3670,"src_start":3534},{"artifact":0,"gen_end":24020,"gen_start":23809,"node":19,"role":"declaration","source":0,"src_end":3881,"src_start":3672},{"artifact":0,"gen_end":24232,"gen_start":24020,"node":20,"role":"declaration","source":0,"src_end":4023,"src_start":3883},{"artifact":0,"gen_end":24552,"gen_start":24232,"node":21,"role":"declaration","source":0,"src_end":4410,"src_start":4025},{"artifact":0,"gen_end":24683,"gen_start":24552,"node":22,"role":"declaration","source":0,"src_end":4598,"src_start":4412},{"artifact":0,"gen_end":24771,"gen_start":24683,"node":23,"role":"declaration","source":0,"src_end":4729,"src_start":4600},{"artifact":0,"gen_end":27849,"gen_start":24771,"node":24,"role":"declaration","source":0,"src_end":4976,"src_start":4731},{"artifact":0,"gen_end":30908,"gen_start":27849,"node":25,"role":"declaration","source":0,"src_end":5189,"src_start":4978},{"artifact":0,"gen_end":31287,"gen_start":30908,"node":26,"role":"declaration","source":0,"src_end":5464,"src_start":5191},{"artifact":0,"gen_end":31493,"gen_start":31287,"node":27,"role":"declaration","source":0,"src_end":5601,"src_start":5466},{"artifact":0,"gen_end":31975,"gen_start":31493,"node":28,"role":"declaration","source":0,"src_end":6046,"src_start":5603},{"artifact":0,"gen_end":32302,"gen_start":31975,"node":29,"role":"declaration","source":0,"src_end":6382,"src_start":6048},{"artifact":0,"gen_end":32586,"gen_start":32302,"node":30,"role":"declaration","source":0,"src_end":6653,"src_start":6384},{"artifact":0,"gen_end":32656,"gen_start":32586,"node":31,"role":"declaration","source":0,"src_end":6753,"src_start":6655},{"artifact":0,"gen_end":35702,"gen_start":32656,"node":32,"role":"declaration","source":0,"src_end":6973,"src_start":6755},{"artifact":0,"gen_end":38778,"gen_start":35702,"node":33,"role":"declaration","source":0,"src_end":7220,"src_start":6975},{"artifact":0,"gen_end":41834,"gen_start":38778,"node":34,"role":"declaration","source":0,"src_end":7432,"src_start":7222},{"artifact":0,"gen_end":42532,"gen_start":41834,"node":35,"role":"declaration","source":0,"src_end":7803,"src_start":7434},{"artifact":0,"gen_end":42738,"gen_start":42532,"node":36,"role":"declaration","source":0,"src_end":7938,"src_start":7805},{"artifact":0,"gen_end":42898,"gen_start":42738,"node":37,"role":"declaration","source":0,"src_end":8213,"src_start":7940},{"artifact":0,"gen_end":45955,"gen_start":42898,"node":38,"role":"declaration","source":0,"src_end":8441,"src_start":8215},{"artifact":0,"gen_end":49000,"gen_start":45955,"node":39,"role":"declaration","source":0,"src_end":8642,"src_start":8443},{"artifact":0,"gen_end":49337,"gen_start":49000,"node":40,"role":"declaration","source":0,"src_end":8925,"src_start":8644},{"artifact":0,"gen_end":49541,"gen_start":49337,"node":41,"role":"declaration","source":0,"src_end":9059,"src_start":8927},{"artifact":0,"gen_end":49611,"gen_start":49541,"node":42,"role":"declaration","source":0,"src_end":9139,"src_start":9061},{"artifact":0,"gen_end":49684,"gen_start":49611,"node":43,"role":"declaration","source":0,"src_end":9255,"src_start":9141},{"artifact":0,"gen_end":52727,"gen_start":49684,"node":44,"role":"declaration","source":0,"src_end":9459,"src_start":9257},{"artifact":0,"gen_end":55773,"gen_start":52727,"node":45,"role":"declaration","source":0,"src_end":9666,"src_start":9461},{"artifact":0,"gen_end":55851,"gen_start":55773,"node":46,"role":"declaration","source":0,"src_end":9753,"src_start":9668},{"artifact":0,"gen_end":55932,"gen_start":55851,"node":47,"role":"declaration","source":0,"src_end":9876,"src_start":9755},{"artifact":0,"gen_end":58988,"gen_start":55932,"node":48,"role":"declaration","source":0,"src_end":10088,"src_start":9878},{"artifact":0,"gen_end":59482,"gen_start":58988,"node":49,"role":"declaration","source":0,"src_end":10501,"src_start":10090},{"artifact":0,"gen_end":59569,"gen_start":59482,"node":50,"role":"declaration","source":0,"src_end":10659,"src_start":10503},{"artifact":0,"gen_end":59659,"gen_start":59569,"node":51,"role":"declaration","source":0,"src_end":10786,"src_start":10661},{"artifact":0,"gen_end":62697,"gen_start":59659,"node":52,"role":"declaration","source":0,"src_end":10985,"src_start":10788},{"artifact":0,"gen_end":62856,"gen_start":62697,"node":53,"role":"declaration","source":0,"src_end":11166,"src_start":10987},{"artifact":0,"gen_end":62962,"gen_start":62856,"node":54,"role":"declaration","source":0,"src_end":11313,"src_start":11168},{"artifact":0,"gen_end":66038,"gen_start":62962,"node":55,"role":"declaration","source":0,"src_end":11547,"src_start":11315},{"artifact":0,"gen_end":66349,"gen_start":66038,"node":56,"role":"declaration","source":0,"src_end":11857,"src_start":11549},{"artifact":0,"gen_end":66519,"gen_start":66349,"node":57,"role":"declaration","source":0,"src_end":12172,"src_start":11859},{"artifact":0,"gen_end":66607,"gen_start":66519,"node":58,"role":"declaration","source":0,"src_end":12307,"src_start":12174},{"artifact":0,"gen_end":66792,"gen_start":66607,"node":59,"role":"declaration","source":0,"src_end":12519,"src_start":12309},{"artifact":0,"gen_end":66885,"gen_start":66792,"node":60,"role":"declaration","source":0,"src_end":12664,"src_start":12521},{"artifact":0,"gen_end":66944,"gen_start":66885,"node":61,"role":"declaration","source":0,"src_end":12808,"src_start":12666},{"artifact":0,"gen_end":67040,"gen_start":66944,"node":62,"role":"declaration","source":0,"src_end":12906,"src_start":12810},{"artifact":0,"gen_end":67223,"gen_start":67040,"node":63,"role":"declaration","source":0,"src_end":13228,"src_start":12908},{"artifact":0,"gen_end":67242,"gen_start":67223,"node":0,"role":"declaration","source":0,"src_end":13264,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":64,"role":"declaration","source":0,"src_end":13264,"src_start":0},{"artifact":1,"gen_end":376,"gen_start":134,"node":65,"role":"declaration","source":0,"src_end":221,"src_start":142},{"artifact":1,"gen_end":697,"gen_start":376,"node":66,"role":"declaration","source":0,"src_end":338,"src_start":223},{"artifact":1,"gen_end":955,"gen_start":697,"node":67,"role":"declaration","source":0,"src_end":542,"src_start":340},{"artifact":1,"gen_end":1216,"gen_start":955,"node":68,"role":"declaration","source":0,"src_end":749,"src_start":544},{"artifact":1,"gen_end":1466,"gen_start":1216,"node":69,"role":"declaration","source":0,"src_end":837,"src_start":751},{"artifact":1,"gen_end":1795,"gen_start":1466,"node":70,"role":"declaration","source":0,"src_end":961,"src_start":839},{"artifact":1,"gen_end":2068,"gen_start":1795,"node":71,"role":"declaration","source":0,"src_end":1173,"src_start":963},{"artifact":1,"gen_end":2337,"gen_start":2068,"node":72,"role":"declaration","source":0,"src_end":1288,"src_start":1175},{"artifact":1,"gen_end":2685,"gen_start":2337,"node":73,"role":"declaration","source":0,"src_end":1429,"src_start":1290},{"artifact":1,"gen_end":2994,"gen_start":2685,"node":74,"role":"declaration","source":0,"src_end":1667,"src_start":1431},{"artifact":1,"gen_end":3306,"gen_start":2994,"node":75,"role":"declaration","source":0,"src_end":1908,"src_start":1669},{"artifact":1,"gen_end":5595,"gen_start":3306,"node":76,"role":"declaration","source":0,"src_end":2521,"src_start":1910},{"artifact":1,"gen_end":6086,"gen_start":5595,"node":77,"role":"declaration","source":0,"src_end":2709,"src_start":2523},{"artifact":1,"gen_end":6421,"gen_start":6086,"node":78,"role":"declaration","source":0,"src_end":2840,"src_start":2711},{"artifact":1,"gen_end":6741,"gen_start":6421,"node":79,"role":"declaration","source":0,"src_end":3111,"src_start":2842},{"artifact":1,"gen_end":7034,"gen_start":6741,"node":80,"role":"declaration","source":0,"src_end":3340,"src_start":3113},{"artifact":1,"gen_end":7716,"gen_start":7034,"node":81,"role":"declaration","source":0,"src_end":3532,"src_start":3342},{"artifact":1,"gen_end":8283,"gen_start":7716,"node":82,"role":"declaration","source":0,"src_end":3670,"src_start":3534},{"artifact":1,"gen_end":8932,"gen_start":8283,"node":83,"role":"declaration","source":0,"src_end":3881,"src_start":3672},{"artifact":1,"gen_end":9524,"gen_start":8932,"node":84,"role":"declaration","source":0,"src_end":4023,"src_start":3883},{"artifact":1,"gen_end":10686,"gen_start":9524,"node":85,"role":"declaration","source":0,"src_end":4410,"src_start":4025},{"artifact":1,"gen_end":11177,"gen_start":10686,"node":86,"role":"declaration","source":0,"src_end":4598,"src_start":4412},{"artifact":1,"gen_end":11512,"gen_start":11177,"node":87,"role":"declaration","source":0,"src_end":4729,"src_start":4600},{"artifact":1,"gen_end":11816,"gen_start":11512,"node":88,"role":"declaration","source":0,"src_end":4976,"src_start":4731},{"artifact":1,"gen_end":12093,"gen_start":11816,"node":89,"role":"declaration","source":0,"src_end":5189,"src_start":4978},{"artifact":1,"gen_end":13177,"gen_start":12093,"node":90,"role":"declaration","source":0,"src_end":5464,"src_start":5191},{"artifact":1,"gen_end":13706,"gen_start":13177,"node":91,"role":"declaration","source":0,"src_end":5601,"src_start":5466},{"artifact":1,"gen_end":15155,"gen_start":13706,"node":92,"role":"declaration","source":0,"src_end":6046,"src_start":5603},{"artifact":1,"gen_end":16038,"gen_start":15155,"node":93,"role":"declaration","source":0,"src_end":6382,"src_start":6048},{"artifact":1,"gen_end":16569,"gen_start":16038,"node":94,"role":"declaration","source":0,"src_end":6653,"src_start":6384},{"artifact":1,"gen_end":16746,"gen_start":16569,"node":95,"role":"declaration","source":0,"src_end":6753,"src_start":6655},{"artifact":1,"gen_end":17024,"gen_start":16746,"node":96,"role":"declaration","source":0,"src_end":6973,"src_start":6755},{"artifact":1,"gen_end":17325,"gen_start":17024,"node":97,"role":"declaration","source":0,"src_end":7220,"src_start":6975},{"artifact":1,"gen_end":17599,"gen_start":17325,"node":98,"role":"declaration","source":0,"src_end":7432,"src_start":7222},{"artifact":1,"gen_end":19432,"gen_start":17599,"node":99,"role":"declaration","source":0,"src_end":7803,"src_start":7434},{"artifact":1,"gen_end":19963,"gen_start":19432,"node":100,"role":"declaration","source":0,"src_end":7938,"src_start":7805},{"artifact":1,"gen_end":20674,"gen_start":19963,"node":101,"role":"declaration","source":0,"src_end":8213,"src_start":7940},{"artifact":1,"gen_end":20965,"gen_start":20674,"node":102,"role":"declaration","source":0,"src_end":8441,"src_start":8215},{"artifact":1,"gen_end":21229,"gen_start":20965,"node":103,"role":"declaration","source":0,"src_end":8642,"src_start":8443},{"artifact":1,"gen_end":22305,"gen_start":21229,"node":104,"role":"declaration","source":0,"src_end":8925,"src_start":8644},{"artifact":1,"gen_end":22821,"gen_start":22305,"node":105,"role":"declaration","source":0,"src_end":9059,"src_start":8927},{"artifact":1,"gen_end":23062,"gen_start":22821,"node":106,"role":"declaration","source":0,"src_end":9139,"src_start":9061},{"artifact":1,"gen_end":23382,"gen_start":23062,"node":107,"role":"declaration","source":0,"src_end":9255,"src_start":9141},{"artifact":1,"gen_end":23640,"gen_start":23382,"node":108,"role":"declaration","source":0,"src_end":9459,"src_start":9257},{"artifact":1,"gen_end":23901,"gen_start":23640,"node":109,"role":"declaration","source":0,"src_end":9666,"src_start":9461},{"artifact":1,"gen_end":24150,"gen_start":23901,"node":110,"role":"declaration","source":0,"src_end":9753,"src_start":9668},{"artifact":1,"gen_end":24478,"gen_start":24150,"node":111,"role":"declaration","source":0,"src_end":9876,"src_start":9755},{"artifact":1,"gen_end":24751,"gen_start":24478,"node":112,"role":"declaration","source":0,"src_end":10088,"src_start":9878},{"artifact":1,"gen_end":26161,"gen_start":24751,"node":113,"role":"declaration","source":0,"src_end":10501,"src_start":10090},{"artifact":1,"gen_end":26595,"gen_start":26161,"node":114,"role":"declaration","source":0,"src_end":10659,"src_start":10503},{"artifact":1,"gen_end":26932,"gen_start":26595,"node":115,"role":"declaration","source":0,"src_end":10786,"src_start":10661},{"artifact":1,"gen_end":27188,"gen_start":26932,"node":116,"role":"declaration","source":0,"src_end":10985,"src_start":10788},{"artifact":1,"gen_end":27493,"gen_start":27188,"node":117,"role":"declaration","source":0,"src_end":11166,"src_start":10987},{"artifact":1,"gen_end":27846,"gen_start":27493,"node":118,"role":"declaration","source":0,"src_end":11313,"src_start":11168},{"artifact":1,"gen_end":28149,"gen_start":27846,"node":119,"role":"declaration","source":0,"src_end":11547,"src_start":11315},{"artifact":1,"gen_end":28618,"gen_start":28149,"node":120,"role":"declaration","source":0,"src_end":11857,"src_start":11549},{"artifact":1,"gen_end":29791,"gen_start":28618,"node":121,"role":"declaration","source":0,"src_end":12172,"src_start":11859},{"artifact":1,"gen_end":30207,"gen_start":29791,"node":122,"role":"declaration","source":0,"src_end":12307,"src_start":12174},{"artifact":1,"gen_end":30824,"gen_start":30207,"node":123,"role":"declaration","source":0,"src_end":12519,"src_start":12309},{"artifact":1,"gen_end":31255,"gen_start":30824,"node":124,"role":"declaration","source":0,"src_end":12664,"src_start":12521},{"artifact":1,"gen_end":31633,"gen_start":31255,"node":125,"role":"declaration","source":0,"src_end":12808,"src_start":12666},{"artifact":1,"gen_end":32058,"gen_start":31633,"node":126,"role":"declaration","source":0,"src_end":12906,"src_start":12810},{"artifact":1,"gen_end":32567,"gen_start":32058,"node":127,"role":"declaration","source":0,"src_end":13228,"src_start":12908},{"artifact":1,"gen_end":32582,"gen_start":32567,"node":64,"role":"declaration","source":0,"src_end":13264,"src_start":0}],"module":"Ledger","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"},{"id":40,"kind":"semantic-declaration"},{"id":41,"kind":"semantic-declaration"},{"id":42,"kind":"semantic-declaration"},{"id":43,"kind":"semantic-declaration"},{"id":44,"kind":"semantic-declaration"},{"id":45,"kind":"semantic-declaration"},{"id":46,"kind":"semantic-declaration"},{"id":47,"kind":"semantic-declaration"},{"id":48,"kind":"semantic-declaration"},{"id":49,"kind":"semantic-declaration"},{"id":50,"kind":"semantic-declaration"},{"id":51,"kind":"semantic-declaration"},{"id":52,"kind":"semantic-declaration"},{"id":53,"kind":"semantic-declaration"},{"id":54,"kind":"semantic-declaration"},{"id":55,"kind":"semantic-declaration"},{"id":56,"kind":"semantic-declaration"},{"id":57,"kind":"semantic-declaration"},{"id":58,"kind":"semantic-declaration"},{"id":59,"kind":"semantic-declaration"},{"id":60,"kind":"semantic-declaration"},{"id":61,"kind":"semantic-declaration"},{"id":62,"kind":"semantic-declaration"},{"id":63,"kind":"semantic-declaration"},{"id":64,"kind":"semantic-latex-module"},{"id":65,"kind":"semantic-declaration"},{"id":66,"kind":"semantic-declaration"},{"id":67,"kind":"semantic-declaration"},{"id":68,"kind":"semantic-declaration"},{"id":69,"kind":"semantic-declaration"},{"id":70,"kind":"semantic-declaration"},{"id":71,"kind":"semantic-declaration"},{"id":72,"kind":"semantic-declaration"},{"id":73,"kind":"semantic-declaration"},{"id":74,"kind":"semantic-declaration"},{"id":75,"kind":"semantic-declaration"},{"id":76,"kind":"semantic-declaration"},{"id":77,"kind":"semantic-declaration"},{"id":78,"kind":"semantic-declaration"},{"id":79,"kind":"semantic-declaration"},{"id":80,"kind":"semantic-declaration"},{"id":81,"kind":"semantic-declaration"},{"id":82,"kind":"semantic-declaration"},{"id":83,"kind":"semantic-declaration"},{"id":84,"kind":"semantic-declaration"},{"id":85,"kind":"semantic-declaration"},{"id":86,"kind":"semantic-declaration"},{"id":87,"kind":"semantic-declaration"},{"id":88,"kind":"semantic-declaration"},{"id":89,"kind":"semantic-declaration"},{"id":90,"kind":"semantic-declaration"},{"id":91,"kind":"semantic-declaration"},{"id":92,"kind":"semantic-declaration"},{"id":93,"kind":"semantic-declaration"},{"id":94,"kind":"semantic-declaration"},{"id":95,"kind":"semantic-declaration"},{"id":96,"kind":"semantic-declaration"},{"id":97,"kind":"semantic-declaration"},{"id":98,"kind":"semantic-declaration"},{"id":99,"kind":"semantic-declaration"},{"id":100,"kind":"semantic-declaration"},{"id":101,"kind":"semantic-declaration"},{"id":102,"kind":"semantic-declaration"},{"id":103,"kind":"semantic-declaration"},{"id":104,"kind":"semantic-declaration"},{"id":105,"kind":"semantic-declaration"},{"id":106,"kind":"semantic-declaration"},{"id":107,"kind":"semantic-declaration"},{"id":108,"kind":"semantic-declaration"},{"id":109,"kind":"semantic-declaration"},{"id":110,"kind":"semantic-declaration"},{"id":111,"kind":"semantic-declaration"},{"id":112,"kind":"semantic-declaration"},{"id":113,"kind":"semantic-declaration"},{"id":114,"kind":"semantic-declaration"},{"id":115,"kind":"semantic-declaration"},{"id":116,"kind":"semantic-declaration"},{"id":117,"kind":"semantic-declaration"},{"id":118,"kind":"semantic-declaration"},{"id":119,"kind":"semantic-declaration"},{"id":120,"kind":"semantic-declaration"},{"id":121,"kind":"semantic-declaration"},{"id":122,"kind":"semantic-declaration"},{"id":123,"kind":"semantic-declaration"},{"id":124,"kind":"semantic-declaration"},{"id":125,"kind":"semantic-declaration"},{"id":126,"kind":"semantic-declaration"},{"id":127,"kind":"semantic-declaration"}],"semantic_id":"49cf062e918bdc2f8a44a66473c4435ee310d33b78d7093624f025547ab95bfd","source_id":"029a1a5ebafd24dc317957624d7e5417c3a563331be1ac2c56d796c47a51d75f","sources":[{"id":0,"kind":"file","path":"src/Ledger.lex.tex","sha256":"4eaf7867fbd19e7f03c139d4f5bfa753cc7022d2c1f2faf6b849abecff4e9815"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/Models/Ledger.lean"},{"id":1,"kind":"tex","path":"modules/Models/Ledger.tex"}],"mappings":[{"artifact":0,"gen_end":345,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":13264,"src_start":0},{"artifact":0,"gen_end":416,"gen_start":345,"node":1,"role":"declaration","source":0,"src_end":221,"src_start":142},{"artifact":0,"gen_end":490,"gen_start":416,"node":2,"role":"declaration","source":0,"src_end":338,"src_start":223},{"artifact":0,"gen_end":3533,"gen_start":490,"node":3,"role":"declaration","source":0,"src_end":542,"src_start":340},{"artifact":0,"gen_end":6579,"gen_start":3533,"node":4,"role":"declaration","source":0,"src_end":749,"src_start":544},{"artifact":0,"gen_end":6659,"gen_start":6579,"node":5,"role":"declaration","source":0,"src_end":837,"src_start":751},{"artifact":0,"gen_end":6742,"gen_start":6659,"node":6,"role":"declaration","source":0,"src_end":961,"src_start":839},{"artifact":0,"gen_end":9798,"gen_start":6742,"node":7,"role":"declaration","source":0,"src_end":1173,"src_start":963},{"artifact":0,"gen_end":9898,"gen_start":9798,"node":8,"role":"declaration","source":0,"src_end":1288,"src_start":1175},{"artifact":0,"gen_end":10001,"gen_start":9898,"node":9,"role":"declaration","source":0,"src_end":1429,"src_start":1290},{"artifact":0,"gen_end":13093,"gen_start":10001,"node":10,"role":"declaration","source":0,"src_end":1667,"src_start":1431},{"artifact":0,"gen_end":16188,"gen_start":13093,"node":11,"role":"declaration","source":0,"src_end":1908,"src_start":1669},{"artifact":0,"gen_end":17009,"gen_start":16188,"node":12,"role":"declaration","source":0,"src_end":2521,"src_start":1910},{"artifact":0,"gen_end":17140,"gen_start":17009,"node":13,"role":"declaration","source":0,"src_end":2709,"src_start":2523},{"artifact":0,"gen_end":17228,"gen_start":17140,"node":14,"role":"declaration","source":0,"src_end":2840,"src_start":2711},{"artifact":0,"gen_end":20330,"gen_start":17228,"node":15,"role":"declaration","source":0,"src_end":3111,"src_start":2842},{"artifact":0,"gen_end":23405,"gen_start":20330,"node":16,"role":"declaration","source":0,"src_end":3340,"src_start":3113},{"artifact":0,"gen_end":23603,"gen_start":23405,"node":17,"role":"declaration","source":0,"src_end":3532,"src_start":3342},{"artifact":0,"gen_end":23809,"gen_start":23603,"node":18,"role":"declaration","source":0,"src_end":3670,"src_start":3534},{"artifact":0,"gen_end":24020,"gen_start":23809,"node":19,"role":"declaration","source":0,"src_end":3881,"src_start":3672},{"artifact":0,"gen_end":24232,"gen_start":24020,"node":20,"role":"declaration","source":0,"src_end":4023,"src_start":3883},{"artifact":0,"gen_end":24552,"gen_start":24232,"node":21,"role":"declaration","source":0,"src_end":4410,"src_start":4025},{"artifact":0,"gen_end":24683,"gen_start":24552,"node":22,"role":"declaration","source":0,"src_end":4598,"src_start":4412},{"artifact":0,"gen_end":24771,"gen_start":24683,"node":23,"role":"declaration","source":0,"src_end":4729,"src_start":4600},{"artifact":0,"gen_end":27849,"gen_start":24771,"node":24,"role":"declaration","source":0,"src_end":4976,"src_start":4731},{"artifact":0,"gen_end":30908,"gen_start":27849,"node":25,"role":"declaration","source":0,"src_end":5189,"src_start":4978},{"artifact":0,"gen_end":31287,"gen_start":30908,"node":26,"role":"declaration","source":0,"src_end":5464,"src_start":5191},{"artifact":0,"gen_end":31493,"gen_start":31287,"node":27,"role":"declaration","source":0,"src_end":5601,"src_start":5466},{"artifact":0,"gen_end":31975,"gen_start":31493,"node":28,"role":"declaration","source":0,"src_end":6046,"src_start":5603},{"artifact":0,"gen_end":32302,"gen_start":31975,"node":29,"role":"declaration","source":0,"src_end":6382,"src_start":6048},{"artifact":0,"gen_end":32586,"gen_start":32302,"node":30,"role":"declaration","source":0,"src_end":6653,"src_start":6384},{"artifact":0,"gen_end":32656,"gen_start":32586,"node":31,"role":"declaration","source":0,"src_end":6753,"src_start":6655},{"artifact":0,"gen_end":35702,"gen_start":32656,"node":32,"role":"declaration","source":0,"src_end":6973,"src_start":6755},{"artifact":0,"gen_end":38778,"gen_start":35702,"node":33,"role":"declaration","source":0,"src_end":7220,"src_start":6975},{"artifact":0,"gen_end":41834,"gen_start":38778,"node":34,"role":"declaration","source":0,"src_end":7432,"src_start":7222},{"artifact":0,"gen_end":42532,"gen_start":41834,"node":35,"role":"declaration","source":0,"src_end":7803,"src_start":7434},{"artifact":0,"gen_end":42738,"gen_start":42532,"node":36,"role":"declaration","source":0,"src_end":7938,"src_start":7805},{"artifact":0,"gen_end":42898,"gen_start":42738,"node":37,"role":"declaration","source":0,"src_end":8213,"src_start":7940},{"artifact":0,"gen_end":45955,"gen_start":42898,"node":38,"role":"declaration","source":0,"src_end":8441,"src_start":8215},{"artifact":0,"gen_end":49000,"gen_start":45955,"node":39,"role":"declaration","source":0,"src_end":8642,"src_start":8443},{"artifact":0,"gen_end":49337,"gen_start":49000,"node":40,"role":"declaration","source":0,"src_end":8925,"src_start":8644},{"artifact":0,"gen_end":49541,"gen_start":49337,"node":41,"role":"declaration","source":0,"src_end":9059,"src_start":8927},{"artifact":0,"gen_end":49611,"gen_start":49541,"node":42,"role":"declaration","source":0,"src_end":9139,"src_start":9061},{"artifact":0,"gen_end":49684,"gen_start":49611,"node":43,"role":"declaration","source":0,"src_end":9255,"src_start":9141},{"artifact":0,"gen_end":52727,"gen_start":49684,"node":44,"role":"declaration","source":0,"src_end":9459,"src_start":9257},{"artifact":0,"gen_end":55773,"gen_start":52727,"node":45,"role":"declaration","source":0,"src_end":9666,"src_start":9461},{"artifact":0,"gen_end":55851,"gen_start":55773,"node":46,"role":"declaration","source":0,"src_end":9753,"src_start":9668},{"artifact":0,"gen_end":55932,"gen_start":55851,"node":47,"role":"declaration","source":0,"src_end":9876,"src_start":9755},{"artifact":0,"gen_end":58988,"gen_start":55932,"node":48,"role":"declaration","source":0,"src_end":10088,"src_start":9878},{"artifact":0,"gen_end":59482,"gen_start":58988,"node":49,"role":"declaration","source":0,"src_end":10501,"src_start":10090},{"artifact":0,"gen_end":59569,"gen_start":59482,"node":50,"role":"declaration","source":0,"src_end":10659,"src_start":10503},{"artifact":0,"gen_end":59659,"gen_start":59569,"node":51,"role":"declaration","source":0,"src_end":10786,"src_start":10661},{"artifact":0,"gen_end":62697,"gen_start":59659,"node":52,"role":"declaration","source":0,"src_end":10985,"src_start":10788},{"artifact":0,"gen_end":62856,"gen_start":62697,"node":53,"role":"declaration","source":0,"src_end":11166,"src_start":10987},{"artifact":0,"gen_end":62962,"gen_start":62856,"node":54,"role":"declaration","source":0,"src_end":11313,"src_start":11168},{"artifact":0,"gen_end":66038,"gen_start":62962,"node":55,"role":"declaration","source":0,"src_end":11547,"src_start":11315},{"artifact":0,"gen_end":66349,"gen_start":66038,"node":56,"role":"declaration","source":0,"src_end":11857,"src_start":11549},{"artifact":0,"gen_end":66519,"gen_start":66349,"node":57,"role":"declaration","source":0,"src_end":12172,"src_start":11859},{"artifact":0,"gen_end":66607,"gen_start":66519,"node":58,"role":"declaration","source":0,"src_end":12307,"src_start":12174},{"artifact":0,"gen_end":66792,"gen_start":66607,"node":59,"role":"declaration","source":0,"src_end":12519,"src_start":12309},{"artifact":0,"gen_end":66885,"gen_start":66792,"node":60,"role":"declaration","source":0,"src_end":12664,"src_start":12521},{"artifact":0,"gen_end":66944,"gen_start":66885,"node":61,"role":"declaration","source":0,"src_end":12808,"src_start":12666},{"artifact":0,"gen_end":67040,"gen_start":66944,"node":62,"role":"declaration","source":0,"src_end":12906,"src_start":12810},{"artifact":0,"gen_end":67223,"gen_start":67040,"node":63,"role":"declaration","source":0,"src_end":13228,"src_start":12908},{"artifact":0,"gen_end":67242,"gen_start":67223,"node":0,"role":"declaration","source":0,"src_end":13264,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":64,"role":"declaration","source":0,"src_end":13264,"src_start":0},{"artifact":1,"gen_end":376,"gen_start":134,"node":65,"role":"declaration","source":0,"src_end":221,"src_start":142},{"artifact":1,"gen_end":697,"gen_start":376,"node":66,"role":"declaration","source":0,"src_end":338,"src_start":223},{"artifact":1,"gen_end":955,"gen_start":697,"node":67,"role":"declaration","source":0,"src_end":542,"src_start":340},{"artifact":1,"gen_end":1216,"gen_start":955,"node":68,"role":"declaration","source":0,"src_end":749,"src_start":544},{"artifact":1,"gen_end":1466,"gen_start":1216,"node":69,"role":"declaration","source":0,"src_end":837,"src_start":751},{"artifact":1,"gen_end":1795,"gen_start":1466,"node":70,"role":"declaration","source":0,"src_end":961,"src_start":839},{"artifact":1,"gen_end":2068,"gen_start":1795,"node":71,"role":"declaration","source":0,"src_end":1173,"src_start":963},{"artifact":1,"gen_end":2337,"gen_start":2068,"node":72,"role":"declaration","source":0,"src_end":1288,"src_start":1175},{"artifact":1,"gen_end":2685,"gen_start":2337,"node":73,"role":"declaration","source":0,"src_end":1429,"src_start":1290},{"artifact":1,"gen_end":2994,"gen_start":2685,"node":74,"role":"declaration","source":0,"src_end":1667,"src_start":1431},{"artifact":1,"gen_end":3306,"gen_start":2994,"node":75,"role":"declaration","source":0,"src_end":1908,"src_start":1669},{"artifact":1,"gen_end":5595,"gen_start":3306,"node":76,"role":"declaration","source":0,"src_end":2521,"src_start":1910},{"artifact":1,"gen_end":6086,"gen_start":5595,"node":77,"role":"declaration","source":0,"src_end":2709,"src_start":2523},{"artifact":1,"gen_end":6421,"gen_start":6086,"node":78,"role":"declaration","source":0,"src_end":2840,"src_start":2711},{"artifact":1,"gen_end":6741,"gen_start":6421,"node":79,"role":"declaration","source":0,"src_end":3111,"src_start":2842},{"artifact":1,"gen_end":7034,"gen_start":6741,"node":80,"role":"declaration","source":0,"src_end":3340,"src_start":3113},{"artifact":1,"gen_end":7716,"gen_start":7034,"node":81,"role":"declaration","source":0,"src_end":3532,"src_start":3342},{"artifact":1,"gen_end":8283,"gen_start":7716,"node":82,"role":"declaration","source":0,"src_end":3670,"src_start":3534},{"artifact":1,"gen_end":8932,"gen_start":8283,"node":83,"role":"declaration","source":0,"src_end":3881,"src_start":3672},{"artifact":1,"gen_end":9524,"gen_start":8932,"node":84,"role":"declaration","source":0,"src_end":4023,"src_start":3883},{"artifact":1,"gen_end":10686,"gen_start":9524,"node":85,"role":"declaration","source":0,"src_end":4410,"src_start":4025},{"artifact":1,"gen_end":11177,"gen_start":10686,"node":86,"role":"declaration","source":0,"src_end":4598,"src_start":4412},{"artifact":1,"gen_end":11512,"gen_start":11177,"node":87,"role":"declaration","source":0,"src_end":4729,"src_start":4600},{"artifact":1,"gen_end":11816,"gen_start":11512,"node":88,"role":"declaration","source":0,"src_end":4976,"src_start":4731},{"artifact":1,"gen_end":12093,"gen_start":11816,"node":89,"role":"declaration","source":0,"src_end":5189,"src_start":4978},{"artifact":1,"gen_end":13177,"gen_start":12093,"node":90,"role":"declaration","source":0,"src_end":5464,"src_start":5191},{"artifact":1,"gen_end":13706,"gen_start":13177,"node":91,"role":"declaration","source":0,"src_end":5601,"src_start":5466},{"artifact":1,"gen_end":15155,"gen_start":13706,"node":92,"role":"declaration","source":0,"src_end":6046,"src_start":5603},{"artifact":1,"gen_end":16038,"gen_start":15155,"node":93,"role":"declaration","source":0,"src_end":6382,"src_start":6048},{"artifact":1,"gen_end":16569,"gen_start":16038,"node":94,"role":"declaration","source":0,"src_end":6653,"src_start":6384},{"artifact":1,"gen_end":16746,"gen_start":16569,"node":95,"role":"declaration","source":0,"src_end":6753,"src_start":6655},{"artifact":1,"gen_end":17024,"gen_start":16746,"node":96,"role":"declaration","source":0,"src_end":6973,"src_start":6755},{"artifact":1,"gen_end":17325,"gen_start":17024,"node":97,"role":"declaration","source":0,"src_end":7220,"src_start":6975},{"artifact":1,"gen_end":17599,"gen_start":17325,"node":98,"role":"declaration","source":0,"src_end":7432,"src_start":7222},{"artifact":1,"gen_end":19432,"gen_start":17599,"node":99,"role":"declaration","source":0,"src_end":7803,"src_start":7434},{"artifact":1,"gen_end":19963,"gen_start":19432,"node":100,"role":"declaration","source":0,"src_end":7938,"src_start":7805},{"artifact":1,"gen_end":20674,"gen_start":19963,"node":101,"role":"declaration","source":0,"src_end":8213,"src_start":7940},{"artifact":1,"gen_end":20965,"gen_start":20674,"node":102,"role":"declaration","source":0,"src_end":8441,"src_start":8215},{"artifact":1,"gen_end":21229,"gen_start":20965,"node":103,"role":"declaration","source":0,"src_end":8642,"src_start":8443},{"artifact":1,"gen_end":22305,"gen_start":21229,"node":104,"role":"declaration","source":0,"src_end":8925,"src_start":8644},{"artifact":1,"gen_end":22821,"gen_start":22305,"node":105,"role":"declaration","source":0,"src_end":9059,"src_start":8927},{"artifact":1,"gen_end":23062,"gen_start":22821,"node":106,"role":"declaration","source":0,"src_end":9139,"src_start":9061},{"artifact":1,"gen_end":23382,"gen_start":23062,"node":107,"role":"declaration","source":0,"src_end":9255,"src_start":9141},{"artifact":1,"gen_end":23640,"gen_start":23382,"node":108,"role":"declaration","source":0,"src_end":9459,"src_start":9257},{"artifact":1,"gen_end":23901,"gen_start":23640,"node":109,"role":"declaration","source":0,"src_end":9666,"src_start":9461},{"artifact":1,"gen_end":24150,"gen_start":23901,"node":110,"role":"declaration","source":0,"src_end":9753,"src_start":9668},{"artifact":1,"gen_end":24478,"gen_start":24150,"node":111,"role":"declaration","source":0,"src_end":9876,"src_start":9755},{"artifact":1,"gen_end":24751,"gen_start":24478,"node":112,"role":"declaration","source":0,"src_end":10088,"src_start":9878},{"artifact":1,"gen_end":26161,"gen_start":24751,"node":113,"role":"declaration","source":0,"src_end":10501,"src_start":10090},{"artifact":1,"gen_end":26595,"gen_start":26161,"node":114,"role":"declaration","source":0,"src_end":10659,"src_start":10503},{"artifact":1,"gen_end":26932,"gen_start":26595,"node":115,"role":"declaration","source":0,"src_end":10786,"src_start":10661},{"artifact":1,"gen_end":27188,"gen_start":26932,"node":116,"role":"declaration","source":0,"src_end":10985,"src_start":10788},{"artifact":1,"gen_end":27493,"gen_start":27188,"node":117,"role":"declaration","source":0,"src_end":11166,"src_start":10987},{"artifact":1,"gen_end":27846,"gen_start":27493,"node":118,"role":"declaration","source":0,"src_end":11313,"src_start":11168},{"artifact":1,"gen_end":28149,"gen_start":27846,"node":119,"role":"declaration","source":0,"src_end":11547,"src_start":11315},{"artifact":1,"gen_end":28618,"gen_start":28149,"node":120,"role":"declaration","source":0,"src_end":11857,"src_start":11549},{"artifact":1,"gen_end":29791,"gen_start":28618,"node":121,"role":"declaration","source":0,"src_end":12172,"src_start":11859},{"artifact":1,"gen_end":30207,"gen_start":29791,"node":122,"role":"declaration","source":0,"src_end":12307,"src_start":12174},{"artifact":1,"gen_end":30824,"gen_start":30207,"node":123,"role":"declaration","source":0,"src_end":12519,"src_start":12309},{"artifact":1,"gen_end":31255,"gen_start":30824,"node":124,"role":"declaration","source":0,"src_end":12664,"src_start":12521},{"artifact":1,"gen_end":31633,"gen_start":31255,"node":125,"role":"declaration","source":0,"src_end":12808,"src_start":12666},{"artifact":1,"gen_end":32058,"gen_start":31633,"node":126,"role":"declaration","source":0,"src_end":12906,"src_start":12810},{"artifact":1,"gen_end":32567,"gen_start":32058,"node":127,"role":"declaration","source":0,"src_end":13228,"src_start":12908},{"artifact":1,"gen_end":32582,"gen_start":32567,"node":64,"role":"declaration","source":0,"src_end":13264,"src_start":0}],"module":"Ledger","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"},{"id":40,"kind":"semantic-declaration"},{"id":41,"kind":"semantic-declaration"},{"id":42,"kind":"semantic-declaration"},{"id":43,"kind":"semantic-declaration"},{"id":44,"kind":"semantic-declaration"},{"id":45,"kind":"semantic-declaration"},{"id":46,"kind":"semantic-declaration"},{"id":47,"kind":"semantic-declaration"},{"id":48,"kind":"semantic-declaration"},{"id":49,"kind":"semantic-declaration"},{"id":50,"kind":"semantic-declaration"},{"id":51,"kind":"semantic-declaration"},{"id":52,"kind":"semantic-declaration"},{"id":53,"kind":"semantic-declaration"},{"id":54,"kind":"semantic-declaration"},{"id":55,"kind":"semantic-declaration"},{"id":56,"kind":"semantic-declaration"},{"id":57,"kind":"semantic-declaration"},{"id":58,"kind":"semantic-declaration"},{"id":59,"kind":"semantic-declaration"},{"id":60,"kind":"semantic-declaration"},{"id":61,"kind":"semantic-declaration"},{"id":62,"kind":"semantic-declaration"},{"id":63,"kind":"semantic-declaration"},{"id":64,"kind":"semantic-latex-module"},{"id":65,"kind":"semantic-declaration"},{"id":66,"kind":"semantic-declaration"},{"id":67,"kind":"semantic-declaration"},{"id":68,"kind":"semantic-declaration"},{"id":69,"kind":"semantic-declaration"},{"id":70,"kind":"semantic-declaration"},{"id":71,"kind":"semantic-declaration"},{"id":72,"kind":"semantic-declaration"},{"id":73,"kind":"semantic-declaration"},{"id":74,"kind":"semantic-declaration"},{"id":75,"kind":"semantic-declaration"},{"id":76,"kind":"semantic-declaration"},{"id":77,"kind":"semantic-declaration"},{"id":78,"kind":"semantic-declaration"},{"id":79,"kind":"semantic-declaration"},{"id":80,"kind":"semantic-declaration"},{"id":81,"kind":"semantic-declaration"},{"id":82,"kind":"semantic-declaration"},{"id":83,"kind":"semantic-declaration"},{"id":84,"kind":"semantic-declaration"},{"id":85,"kind":"semantic-declaration"},{"id":86,"kind":"semantic-declaration"},{"id":87,"kind":"semantic-declaration"},{"id":88,"kind":"semantic-declaration"},{"id":89,"kind":"semantic-declaration"},{"id":90,"kind":"semantic-declaration"},{"id":91,"kind":"semantic-declaration"},{"id":92,"kind":"semantic-declaration"},{"id":93,"kind":"semantic-declaration"},{"id":94,"kind":"semantic-declaration"},{"id":95,"kind":"semantic-declaration"},{"id":96,"kind":"semantic-declaration"},{"id":97,"kind":"semantic-declaration"},{"id":98,"kind":"semantic-declaration"},{"id":99,"kind":"semantic-declaration"},{"id":100,"kind":"semantic-declaration"},{"id":101,"kind":"semantic-declaration"},{"id":102,"kind":"semantic-declaration"},{"id":103,"kind":"semantic-declaration"},{"id":104,"kind":"semantic-declaration"},{"id":105,"kind":"semantic-declaration"},{"id":106,"kind":"semantic-declaration"},{"id":107,"kind":"semantic-declaration"},{"id":108,"kind":"semantic-declaration"},{"id":109,"kind":"semantic-declaration"},{"id":110,"kind":"semantic-declaration"},{"id":111,"kind":"semantic-declaration"},{"id":112,"kind":"semantic-declaration"},{"id":113,"kind":"semantic-declaration"},{"id":114,"kind":"semantic-declaration"},{"id":115,"kind":"semantic-declaration"},{"id":116,"kind":"semantic-declaration"},{"id":117,"kind":"semantic-declaration"},{"id":118,"kind":"semantic-declaration"},{"id":119,"kind":"semantic-declaration"},{"id":120,"kind":"semantic-declaration"},{"id":121,"kind":"semantic-declaration"},{"id":122,"kind":"semantic-declaration"},{"id":123,"kind":"semantic-declaration"},{"id":124,"kind":"semantic-declaration"},{"id":125,"kind":"semantic-declaration"},{"id":126,"kind":"semantic-declaration"},{"id":127,"kind":"semantic-declaration"}],"semantic_id":"91b57d30cfd6f60128d6c72e374148ef2e79e45a626e878a7c7551c9a29b1534","source_id":"a2b28f35f0ba5d1a28d3832af59389874c0d5e4006af1c81f108c4bed5e405aa","sources":[{"id":0,"kind":"file","path":"src/Ledger.lex.tex","sha256":"4eaf7867fbd19e7f03c139d4f5bfa753cc7022d2c1f2faf6b849abecff4e9815"}],"spec":"lexlean/source-map/1"} diff --git a/examples/models/expected/build/maps/Models/Main.map.json b/examples/models/expected/build/maps/Models/Main.map.json index ab12d6e70..17fe68872 100644 --- a/examples/models/expected/build/maps/Models/Main.map.json +++ b/examples/models/expected/build/maps/Models/Main.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/Models/Main.lean"},{"id":1,"kind":"tex","path":"modules/Models/Main.tex"}],"mappings":[{"artifact":0,"gen_end":434,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":13995,"src_start":0},{"artifact":0,"gen_end":541,"gen_start":434,"node":1,"role":"declaration","source":0,"src_end":541,"src_start":295},{"artifact":0,"gen_end":952,"gen_start":541,"node":2,"role":"declaration","source":0,"src_end":855,"src_start":543},{"artifact":0,"gen_end":1359,"gen_start":952,"node":3,"role":"declaration","source":0,"src_end":1179,"src_start":857},{"artifact":0,"gen_end":1793,"gen_start":1359,"node":4,"role":"declaration","source":0,"src_end":1493,"src_start":1181},{"artifact":0,"gen_end":2434,"gen_start":1793,"node":5,"role":"declaration","source":0,"src_end":1828,"src_start":1495},{"artifact":0,"gen_end":2522,"gen_start":2434,"node":6,"role":"declaration","source":0,"src_end":1976,"src_start":1830},{"artifact":0,"gen_end":2770,"gen_start":2522,"node":7,"role":"declaration","source":0,"src_end":2307,"src_start":1978},{"artifact":0,"gen_end":2888,"gen_start":2770,"node":8,"role":"declaration","source":0,"src_end":2459,"src_start":2309},{"artifact":0,"gen_end":3012,"gen_start":2888,"node":9,"role":"declaration","source":0,"src_end":2619,"src_start":2461},{"artifact":0,"gen_end":3670,"gen_start":3012,"node":10,"role":"declaration","source":0,"src_end":2935,"src_start":2621},{"artifact":0,"gen_end":4501,"gen_start":3670,"node":11,"role":"declaration","source":0,"src_end":3269,"src_start":2937},{"artifact":0,"gen_end":4962,"gen_start":4501,"node":12,"role":"declaration","source":0,"src_end":3548,"src_start":3271},{"artifact":0,"gen_end":5431,"gen_start":4962,"node":13,"role":"declaration","source":0,"src_end":3754,"src_start":3550},{"artifact":0,"gen_end":6014,"gen_start":5431,"node":14,"role":"declaration","source":0,"src_end":4079,"src_start":3756},{"artifact":0,"gen_end":6435,"gen_start":6014,"node":15,"role":"declaration","source":0,"src_end":4298,"src_start":4081},{"artifact":0,"gen_end":6864,"gen_start":6435,"node":16,"role":"declaration","source":0,"src_end":4525,"src_start":4300},{"artifact":0,"gen_end":7617,"gen_start":6864,"node":17,"role":"declaration","source":0,"src_end":4780,"src_start":4527},{"artifact":0,"gen_end":8276,"gen_start":7617,"node":18,"role":"declaration","source":0,"src_end":5035,"src_start":4782},{"artifact":0,"gen_end":9003,"gen_start":8276,"node":19,"role":"declaration","source":0,"src_end":5286,"src_start":5037},{"artifact":0,"gen_end":9784,"gen_start":9003,"node":20,"role":"declaration","source":0,"src_end":5562,"src_start":5288},{"artifact":0,"gen_end":10441,"gen_start":9784,"node":21,"role":"declaration","source":0,"src_end":5830,"src_start":5564},{"artifact":0,"gen_end":11102,"gen_start":10441,"node":22,"role":"declaration","source":0,"src_end":6102,"src_start":5832},{"artifact":0,"gen_end":11522,"gen_start":11102,"node":23,"role":"declaration","source":0,"src_end":6332,"src_start":6104},{"artifact":0,"gen_end":11747,"gen_start":11522,"node":24,"role":"declaration","source":0,"src_end":6601,"src_start":6334},{"artifact":0,"gen_end":11956,"gen_start":11747,"node":25,"role":"declaration","source":0,"src_end":6857,"src_start":6603},{"artifact":0,"gen_end":12276,"gen_start":11956,"node":26,"role":"declaration","source":0,"src_end":7211,"src_start":6859},{"artifact":0,"gen_end":12695,"gen_start":12276,"node":27,"role":"declaration","source":0,"src_end":7650,"src_start":7213},{"artifact":0,"gen_end":13036,"gen_start":12695,"node":28,"role":"declaration","source":0,"src_end":8018,"src_start":7652},{"artifact":0,"gen_end":13416,"gen_start":13036,"node":29,"role":"declaration","source":0,"src_end":8424,"src_start":8020},{"artifact":0,"gen_end":13843,"gen_start":13416,"node":30,"role":"declaration","source":0,"src_end":8886,"src_start":8426},{"artifact":0,"gen_end":14237,"gen_start":13843,"node":31,"role":"declaration","source":0,"src_end":9315,"src_start":8888},{"artifact":0,"gen_end":14323,"gen_start":14237,"node":32,"role":"declaration","source":0,"src_end":9437,"src_start":9317},{"artifact":0,"gen_end":14415,"gen_start":14323,"node":33,"role":"declaration","source":0,"src_end":9565,"src_start":9439},{"artifact":0,"gen_end":14513,"gen_start":14415,"node":34,"role":"declaration","source":0,"src_end":9699,"src_start":9567},{"artifact":0,"gen_end":14605,"gen_start":14513,"node":35,"role":"declaration","source":0,"src_end":9827,"src_start":9701},{"artifact":0,"gen_end":14696,"gen_start":14605,"node":36,"role":"declaration","source":0,"src_end":9954,"src_start":9829},{"artifact":0,"gen_end":14793,"gen_start":14696,"node":37,"role":"declaration","source":0,"src_end":10087,"src_start":9956},{"artifact":0,"gen_end":14877,"gen_start":14793,"node":38,"role":"declaration","source":0,"src_end":10209,"src_start":10089},{"artifact":0,"gen_end":14973,"gen_start":14877,"node":39,"role":"declaration","source":0,"src_end":10343,"src_start":10211},{"artifact":0,"gen_end":15077,"gen_start":14973,"node":40,"role":"declaration","source":0,"src_end":10485,"src_start":10345},{"artifact":0,"gen_end":15160,"gen_start":15077,"node":41,"role":"declaration","source":0,"src_end":10604,"src_start":10487},{"artifact":0,"gen_end":15253,"gen_start":15160,"node":42,"role":"declaration","source":0,"src_end":10733,"src_start":10606},{"artifact":0,"gen_end":15341,"gen_start":15253,"node":43,"role":"declaration","source":0,"src_end":10857,"src_start":10735},{"artifact":0,"gen_end":15423,"gen_start":15341,"node":44,"role":"declaration","source":0,"src_end":10977,"src_start":10859},{"artifact":0,"gen_end":15504,"gen_start":15423,"node":45,"role":"declaration","source":0,"src_end":11096,"src_start":10979},{"artifact":0,"gen_end":15612,"gen_start":15504,"node":46,"role":"declaration","source":0,"src_end":11242,"src_start":11098},{"artifact":0,"gen_end":15706,"gen_start":15612,"node":47,"role":"declaration","source":0,"src_end":11372,"src_start":11244},{"artifact":0,"gen_end":15805,"gen_start":15706,"node":48,"role":"declaration","source":0,"src_end":11507,"src_start":11374},{"artifact":0,"gen_end":15898,"gen_start":15805,"node":49,"role":"declaration","source":0,"src_end":11636,"src_start":11509},{"artifact":0,"gen_end":16006,"gen_start":15898,"node":50,"role":"declaration","source":0,"src_end":11780,"src_start":11638},{"artifact":0,"gen_end":16111,"gen_start":16006,"node":51,"role":"declaration","source":0,"src_end":11921,"src_start":11782},{"artifact":0,"gen_end":16211,"gen_start":16111,"node":52,"role":"declaration","source":0,"src_end":12057,"src_start":11923},{"artifact":0,"gen_end":16311,"gen_start":16211,"node":53,"role":"declaration","source":0,"src_end":12193,"src_start":12059},{"artifact":0,"gen_end":16416,"gen_start":16311,"node":54,"role":"declaration","source":0,"src_end":12334,"src_start":12195},{"artifact":0,"gen_end":16510,"gen_start":16416,"node":55,"role":"declaration","source":0,"src_end":12464,"src_start":12336},{"artifact":0,"gen_end":16619,"gen_start":16510,"node":56,"role":"declaration","source":0,"src_end":12609,"src_start":12466},{"artifact":0,"gen_end":16721,"gen_start":16619,"node":57,"role":"declaration","source":0,"src_end":12747,"src_start":12611},{"artifact":0,"gen_end":16823,"gen_start":16721,"node":58,"role":"declaration","source":0,"src_end":12885,"src_start":12749},{"artifact":0,"gen_end":16932,"gen_start":16823,"node":59,"role":"declaration","source":0,"src_end":13030,"src_start":12887},{"artifact":0,"gen_end":17049,"gen_start":16932,"node":60,"role":"declaration","source":0,"src_end":13183,"src_start":13032},{"artifact":0,"gen_end":17155,"gen_start":17049,"node":61,"role":"declaration","source":0,"src_end":13325,"src_start":13185},{"artifact":0,"gen_end":17275,"gen_start":17155,"node":62,"role":"declaration","source":0,"src_end":13481,"src_start":13327},{"artifact":0,"gen_end":17456,"gen_start":17275,"node":63,"role":"declaration","source":0,"src_end":13712,"src_start":13483},{"artifact":0,"gen_end":17651,"gen_start":17456,"node":64,"role":"declaration","source":0,"src_end":13959,"src_start":13714},{"artifact":0,"gen_end":17668,"gen_start":17651,"node":0,"role":"declaration","source":0,"src_end":13995,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":65,"role":"declaration","source":0,"src_end":13995,"src_start":0},{"artifact":1,"gen_end":620,"gen_start":134,"node":66,"role":"declaration","source":0,"src_end":541,"src_start":295},{"artifact":1,"gen_end":1171,"gen_start":620,"node":67,"role":"declaration","source":0,"src_end":855,"src_start":543},{"artifact":1,"gen_end":1732,"gen_start":1171,"node":68,"role":"declaration","source":0,"src_end":1179,"src_start":857},{"artifact":1,"gen_end":2289,"gen_start":1732,"node":69,"role":"declaration","source":0,"src_end":1493,"src_start":1181},{"artifact":1,"gen_end":2888,"gen_start":2289,"node":70,"role":"declaration","source":0,"src_end":1828,"src_start":1495},{"artifact":1,"gen_end":3094,"gen_start":2888,"node":71,"role":"declaration","source":0,"src_end":1976,"src_start":1830},{"artifact":1,"gen_end":3594,"gen_start":3094,"node":72,"role":"declaration","source":0,"src_end":2307,"src_start":1978},{"artifact":1,"gen_end":3820,"gen_start":3594,"node":73,"role":"declaration","source":0,"src_end":2459,"src_start":2309},{"artifact":1,"gen_end":4052,"gen_start":3820,"node":74,"role":"declaration","source":0,"src_end":2619,"src_start":2461},{"artifact":1,"gen_end":4621,"gen_start":4052,"node":75,"role":"declaration","source":0,"src_end":2935,"src_start":2621},{"artifact":1,"gen_end":5208,"gen_start":4621,"node":76,"role":"declaration","source":0,"src_end":3269,"src_start":2937},{"artifact":1,"gen_end":5728,"gen_start":5208,"node":77,"role":"declaration","source":0,"src_end":3548,"src_start":3271},{"artifact":1,"gen_end":6135,"gen_start":5728,"node":78,"role":"declaration","source":0,"src_end":3754,"src_start":3550},{"artifact":1,"gen_end":6715,"gen_start":6135,"node":79,"role":"declaration","source":0,"src_end":4079,"src_start":3756},{"artifact":1,"gen_end":7144,"gen_start":6715,"node":80,"role":"declaration","source":0,"src_end":4298,"src_start":4081},{"artifact":1,"gen_end":7581,"gen_start":7144,"node":81,"role":"declaration","source":0,"src_end":4525,"src_start":4300},{"artifact":1,"gen_end":8070,"gen_start":7581,"node":82,"role":"declaration","source":0,"src_end":4780,"src_start":4527},{"artifact":1,"gen_end":8566,"gen_start":8070,"node":83,"role":"declaration","source":0,"src_end":5035,"src_start":4782},{"artifact":1,"gen_end":9044,"gen_start":8566,"node":84,"role":"declaration","source":0,"src_end":5286,"src_start":5037},{"artifact":1,"gen_end":9549,"gen_start":9044,"node":85,"role":"declaration","source":0,"src_end":5562,"src_start":5288},{"artifact":1,"gen_end":10046,"gen_start":9549,"node":86,"role":"declaration","source":0,"src_end":5830,"src_start":5564},{"artifact":1,"gen_end":10547,"gen_start":10046,"node":87,"role":"declaration","source":0,"src_end":6102,"src_start":5832},{"artifact":1,"gen_end":10980,"gen_start":10547,"node":88,"role":"declaration","source":0,"src_end":6332,"src_start":6104},{"artifact":1,"gen_end":11453,"gen_start":10980,"node":89,"role":"declaration","source":0,"src_end":6601,"src_start":6334},{"artifact":1,"gen_end":11910,"gen_start":11453,"node":90,"role":"declaration","source":0,"src_end":6857,"src_start":6603},{"artifact":1,"gen_end":12479,"gen_start":11910,"node":91,"role":"declaration","source":0,"src_end":7211,"src_start":6859},{"artifact":1,"gen_end":13146,"gen_start":12479,"node":92,"role":"declaration","source":0,"src_end":7650,"src_start":7213},{"artifact":1,"gen_end":13735,"gen_start":13146,"node":93,"role":"declaration","source":0,"src_end":8018,"src_start":7652},{"artifact":1,"gen_end":14364,"gen_start":13735,"node":94,"role":"declaration","source":0,"src_end":8424,"src_start":8020},{"artifact":1,"gen_end":15040,"gen_start":14364,"node":95,"role":"declaration","source":0,"src_end":8886,"src_start":8426},{"artifact":1,"gen_end":15683,"gen_start":15040,"node":96,"role":"declaration","source":0,"src_end":9315,"src_start":8888},{"artifact":1,"gen_end":15876,"gen_start":15683,"node":97,"role":"declaration","source":0,"src_end":9437,"src_start":9317},{"artifact":1,"gen_end":16076,"gen_start":15876,"node":98,"role":"declaration","source":0,"src_end":9565,"src_start":9439},{"artifact":1,"gen_end":16282,"gen_start":16076,"node":99,"role":"declaration","source":0,"src_end":9699,"src_start":9567},{"artifact":1,"gen_end":16482,"gen_start":16282,"node":100,"role":"declaration","source":0,"src_end":9827,"src_start":9701},{"artifact":1,"gen_end":16681,"gen_start":16482,"node":101,"role":"declaration","source":0,"src_end":9954,"src_start":9829},{"artifact":1,"gen_end":16887,"gen_start":16681,"node":102,"role":"declaration","source":0,"src_end":10087,"src_start":9956},{"artifact":1,"gen_end":17078,"gen_start":16887,"node":103,"role":"declaration","source":0,"src_end":10209,"src_start":10089},{"artifact":1,"gen_end":17282,"gen_start":17078,"node":104,"role":"declaration","source":0,"src_end":10343,"src_start":10211},{"artifact":1,"gen_end":17494,"gen_start":17282,"node":105,"role":"declaration","source":0,"src_end":10485,"src_start":10345},{"artifact":1,"gen_end":17684,"gen_start":17494,"node":106,"role":"declaration","source":0,"src_end":10604,"src_start":10487},{"artifact":1,"gen_end":17885,"gen_start":17684,"node":107,"role":"declaration","source":0,"src_end":10733,"src_start":10606},{"artifact":1,"gen_end":18081,"gen_start":17885,"node":108,"role":"declaration","source":0,"src_end":10857,"src_start":10735},{"artifact":1,"gen_end":18270,"gen_start":18081,"node":109,"role":"declaration","source":0,"src_end":10977,"src_start":10859},{"artifact":1,"gen_end":18458,"gen_start":18270,"node":110,"role":"declaration","source":0,"src_end":11096,"src_start":10979},{"artifact":1,"gen_end":18675,"gen_start":18458,"node":111,"role":"declaration","source":0,"src_end":11242,"src_start":11098},{"artifact":1,"gen_end":18876,"gen_start":18675,"node":112,"role":"declaration","source":0,"src_end":11372,"src_start":11244},{"artifact":1,"gen_end":19083,"gen_start":18876,"node":113,"role":"declaration","source":0,"src_end":11507,"src_start":11374},{"artifact":1,"gen_end":19284,"gen_start":19083,"node":114,"role":"declaration","source":0,"src_end":11636,"src_start":11509},{"artifact":1,"gen_end":19500,"gen_start":19284,"node":115,"role":"declaration","source":0,"src_end":11780,"src_start":11638},{"artifact":1,"gen_end":19714,"gen_start":19500,"node":116,"role":"declaration","source":0,"src_end":11921,"src_start":11782},{"artifact":1,"gen_end":19922,"gen_start":19714,"node":117,"role":"declaration","source":0,"src_end":12057,"src_start":11923},{"artifact":1,"gen_end":20130,"gen_start":19922,"node":118,"role":"declaration","source":0,"src_end":12193,"src_start":12059},{"artifact":1,"gen_end":20343,"gen_start":20130,"node":119,"role":"declaration","source":0,"src_end":12334,"src_start":12195},{"artifact":1,"gen_end":20544,"gen_start":20343,"node":120,"role":"declaration","source":0,"src_end":12464,"src_start":12336},{"artifact":1,"gen_end":20762,"gen_start":20544,"node":121,"role":"declaration","source":0,"src_end":12609,"src_start":12466},{"artifact":1,"gen_end":20972,"gen_start":20762,"node":122,"role":"declaration","source":0,"src_end":12747,"src_start":12611},{"artifact":1,"gen_end":21182,"gen_start":20972,"node":123,"role":"declaration","source":0,"src_end":12885,"src_start":12749},{"artifact":1,"gen_end":21400,"gen_start":21182,"node":124,"role":"declaration","source":0,"src_end":13030,"src_start":12887},{"artifact":1,"gen_end":21626,"gen_start":21400,"node":125,"role":"declaration","source":0,"src_end":13183,"src_start":13032},{"artifact":1,"gen_end":21840,"gen_start":21626,"node":126,"role":"declaration","source":0,"src_end":13325,"src_start":13185},{"artifact":1,"gen_end":22069,"gen_start":21840,"node":127,"role":"declaration","source":0,"src_end":13481,"src_start":13327},{"artifact":1,"gen_end":22357,"gen_start":22069,"node":128,"role":"declaration","source":0,"src_end":13712,"src_start":13483},{"artifact":1,"gen_end":22660,"gen_start":22357,"node":129,"role":"declaration","source":0,"src_end":13959,"src_start":13714},{"artifact":1,"gen_end":22675,"gen_start":22660,"node":65,"role":"declaration","source":0,"src_end":13995,"src_start":0}],"module":"Main","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"},{"id":40,"kind":"semantic-declaration"},{"id":41,"kind":"semantic-declaration"},{"id":42,"kind":"semantic-declaration"},{"id":43,"kind":"semantic-declaration"},{"id":44,"kind":"semantic-declaration"},{"id":45,"kind":"semantic-declaration"},{"id":46,"kind":"semantic-declaration"},{"id":47,"kind":"semantic-declaration"},{"id":48,"kind":"semantic-declaration"},{"id":49,"kind":"semantic-declaration"},{"id":50,"kind":"semantic-declaration"},{"id":51,"kind":"semantic-declaration"},{"id":52,"kind":"semantic-declaration"},{"id":53,"kind":"semantic-declaration"},{"id":54,"kind":"semantic-declaration"},{"id":55,"kind":"semantic-declaration"},{"id":56,"kind":"semantic-declaration"},{"id":57,"kind":"semantic-declaration"},{"id":58,"kind":"semantic-declaration"},{"id":59,"kind":"semantic-declaration"},{"id":60,"kind":"semantic-declaration"},{"id":61,"kind":"semantic-declaration"},{"id":62,"kind":"semantic-declaration"},{"id":63,"kind":"semantic-declaration"},{"id":64,"kind":"semantic-declaration"},{"id":65,"kind":"semantic-latex-module"},{"id":66,"kind":"semantic-declaration"},{"id":67,"kind":"semantic-declaration"},{"id":68,"kind":"semantic-declaration"},{"id":69,"kind":"semantic-declaration"},{"id":70,"kind":"semantic-declaration"},{"id":71,"kind":"semantic-declaration"},{"id":72,"kind":"semantic-declaration"},{"id":73,"kind":"semantic-declaration"},{"id":74,"kind":"semantic-declaration"},{"id":75,"kind":"semantic-declaration"},{"id":76,"kind":"semantic-declaration"},{"id":77,"kind":"semantic-declaration"},{"id":78,"kind":"semantic-declaration"},{"id":79,"kind":"semantic-declaration"},{"id":80,"kind":"semantic-declaration"},{"id":81,"kind":"semantic-declaration"},{"id":82,"kind":"semantic-declaration"},{"id":83,"kind":"semantic-declaration"},{"id":84,"kind":"semantic-declaration"},{"id":85,"kind":"semantic-declaration"},{"id":86,"kind":"semantic-declaration"},{"id":87,"kind":"semantic-declaration"},{"id":88,"kind":"semantic-declaration"},{"id":89,"kind":"semantic-declaration"},{"id":90,"kind":"semantic-declaration"},{"id":91,"kind":"semantic-declaration"},{"id":92,"kind":"semantic-declaration"},{"id":93,"kind":"semantic-declaration"},{"id":94,"kind":"semantic-declaration"},{"id":95,"kind":"semantic-declaration"},{"id":96,"kind":"semantic-declaration"},{"id":97,"kind":"semantic-declaration"},{"id":98,"kind":"semantic-declaration"},{"id":99,"kind":"semantic-declaration"},{"id":100,"kind":"semantic-declaration"},{"id":101,"kind":"semantic-declaration"},{"id":102,"kind":"semantic-declaration"},{"id":103,"kind":"semantic-declaration"},{"id":104,"kind":"semantic-declaration"},{"id":105,"kind":"semantic-declaration"},{"id":106,"kind":"semantic-declaration"},{"id":107,"kind":"semantic-declaration"},{"id":108,"kind":"semantic-declaration"},{"id":109,"kind":"semantic-declaration"},{"id":110,"kind":"semantic-declaration"},{"id":111,"kind":"semantic-declaration"},{"id":112,"kind":"semantic-declaration"},{"id":113,"kind":"semantic-declaration"},{"id":114,"kind":"semantic-declaration"},{"id":115,"kind":"semantic-declaration"},{"id":116,"kind":"semantic-declaration"},{"id":117,"kind":"semantic-declaration"},{"id":118,"kind":"semantic-declaration"},{"id":119,"kind":"semantic-declaration"},{"id":120,"kind":"semantic-declaration"},{"id":121,"kind":"semantic-declaration"},{"id":122,"kind":"semantic-declaration"},{"id":123,"kind":"semantic-declaration"},{"id":124,"kind":"semantic-declaration"},{"id":125,"kind":"semantic-declaration"},{"id":126,"kind":"semantic-declaration"},{"id":127,"kind":"semantic-declaration"},{"id":128,"kind":"semantic-declaration"},{"id":129,"kind":"semantic-declaration"}],"semantic_id":"49cf062e918bdc2f8a44a66473c4435ee310d33b78d7093624f025547ab95bfd","source_id":"029a1a5ebafd24dc317957624d7e5417c3a563331be1ac2c56d796c47a51d75f","sources":[{"id":0,"kind":"file","path":"src/Main.lex.tex","sha256":"09fef2732bb2b95f41909df0570942389cddbf5bcefe01e667b6ec7400caad75"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/Models/Main.lean"},{"id":1,"kind":"tex","path":"modules/Models/Main.tex"}],"mappings":[{"artifact":0,"gen_end":434,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":13995,"src_start":0},{"artifact":0,"gen_end":541,"gen_start":434,"node":1,"role":"declaration","source":0,"src_end":541,"src_start":295},{"artifact":0,"gen_end":952,"gen_start":541,"node":2,"role":"declaration","source":0,"src_end":855,"src_start":543},{"artifact":0,"gen_end":1359,"gen_start":952,"node":3,"role":"declaration","source":0,"src_end":1179,"src_start":857},{"artifact":0,"gen_end":1793,"gen_start":1359,"node":4,"role":"declaration","source":0,"src_end":1493,"src_start":1181},{"artifact":0,"gen_end":2434,"gen_start":1793,"node":5,"role":"declaration","source":0,"src_end":1828,"src_start":1495},{"artifact":0,"gen_end":2522,"gen_start":2434,"node":6,"role":"declaration","source":0,"src_end":1976,"src_start":1830},{"artifact":0,"gen_end":2770,"gen_start":2522,"node":7,"role":"declaration","source":0,"src_end":2307,"src_start":1978},{"artifact":0,"gen_end":2888,"gen_start":2770,"node":8,"role":"declaration","source":0,"src_end":2459,"src_start":2309},{"artifact":0,"gen_end":3012,"gen_start":2888,"node":9,"role":"declaration","source":0,"src_end":2619,"src_start":2461},{"artifact":0,"gen_end":3670,"gen_start":3012,"node":10,"role":"declaration","source":0,"src_end":2935,"src_start":2621},{"artifact":0,"gen_end":4501,"gen_start":3670,"node":11,"role":"declaration","source":0,"src_end":3269,"src_start":2937},{"artifact":0,"gen_end":4962,"gen_start":4501,"node":12,"role":"declaration","source":0,"src_end":3548,"src_start":3271},{"artifact":0,"gen_end":5431,"gen_start":4962,"node":13,"role":"declaration","source":0,"src_end":3754,"src_start":3550},{"artifact":0,"gen_end":6014,"gen_start":5431,"node":14,"role":"declaration","source":0,"src_end":4079,"src_start":3756},{"artifact":0,"gen_end":6435,"gen_start":6014,"node":15,"role":"declaration","source":0,"src_end":4298,"src_start":4081},{"artifact":0,"gen_end":6864,"gen_start":6435,"node":16,"role":"declaration","source":0,"src_end":4525,"src_start":4300},{"artifact":0,"gen_end":7617,"gen_start":6864,"node":17,"role":"declaration","source":0,"src_end":4780,"src_start":4527},{"artifact":0,"gen_end":8276,"gen_start":7617,"node":18,"role":"declaration","source":0,"src_end":5035,"src_start":4782},{"artifact":0,"gen_end":9003,"gen_start":8276,"node":19,"role":"declaration","source":0,"src_end":5286,"src_start":5037},{"artifact":0,"gen_end":9784,"gen_start":9003,"node":20,"role":"declaration","source":0,"src_end":5562,"src_start":5288},{"artifact":0,"gen_end":10441,"gen_start":9784,"node":21,"role":"declaration","source":0,"src_end":5830,"src_start":5564},{"artifact":0,"gen_end":11102,"gen_start":10441,"node":22,"role":"declaration","source":0,"src_end":6102,"src_start":5832},{"artifact":0,"gen_end":11522,"gen_start":11102,"node":23,"role":"declaration","source":0,"src_end":6332,"src_start":6104},{"artifact":0,"gen_end":11747,"gen_start":11522,"node":24,"role":"declaration","source":0,"src_end":6601,"src_start":6334},{"artifact":0,"gen_end":11956,"gen_start":11747,"node":25,"role":"declaration","source":0,"src_end":6857,"src_start":6603},{"artifact":0,"gen_end":12276,"gen_start":11956,"node":26,"role":"declaration","source":0,"src_end":7211,"src_start":6859},{"artifact":0,"gen_end":12695,"gen_start":12276,"node":27,"role":"declaration","source":0,"src_end":7650,"src_start":7213},{"artifact":0,"gen_end":13036,"gen_start":12695,"node":28,"role":"declaration","source":0,"src_end":8018,"src_start":7652},{"artifact":0,"gen_end":13416,"gen_start":13036,"node":29,"role":"declaration","source":0,"src_end":8424,"src_start":8020},{"artifact":0,"gen_end":13843,"gen_start":13416,"node":30,"role":"declaration","source":0,"src_end":8886,"src_start":8426},{"artifact":0,"gen_end":14237,"gen_start":13843,"node":31,"role":"declaration","source":0,"src_end":9315,"src_start":8888},{"artifact":0,"gen_end":14323,"gen_start":14237,"node":32,"role":"declaration","source":0,"src_end":9437,"src_start":9317},{"artifact":0,"gen_end":14415,"gen_start":14323,"node":33,"role":"declaration","source":0,"src_end":9565,"src_start":9439},{"artifact":0,"gen_end":14513,"gen_start":14415,"node":34,"role":"declaration","source":0,"src_end":9699,"src_start":9567},{"artifact":0,"gen_end":14605,"gen_start":14513,"node":35,"role":"declaration","source":0,"src_end":9827,"src_start":9701},{"artifact":0,"gen_end":14696,"gen_start":14605,"node":36,"role":"declaration","source":0,"src_end":9954,"src_start":9829},{"artifact":0,"gen_end":14793,"gen_start":14696,"node":37,"role":"declaration","source":0,"src_end":10087,"src_start":9956},{"artifact":0,"gen_end":14877,"gen_start":14793,"node":38,"role":"declaration","source":0,"src_end":10209,"src_start":10089},{"artifact":0,"gen_end":14973,"gen_start":14877,"node":39,"role":"declaration","source":0,"src_end":10343,"src_start":10211},{"artifact":0,"gen_end":15077,"gen_start":14973,"node":40,"role":"declaration","source":0,"src_end":10485,"src_start":10345},{"artifact":0,"gen_end":15160,"gen_start":15077,"node":41,"role":"declaration","source":0,"src_end":10604,"src_start":10487},{"artifact":0,"gen_end":15253,"gen_start":15160,"node":42,"role":"declaration","source":0,"src_end":10733,"src_start":10606},{"artifact":0,"gen_end":15341,"gen_start":15253,"node":43,"role":"declaration","source":0,"src_end":10857,"src_start":10735},{"artifact":0,"gen_end":15423,"gen_start":15341,"node":44,"role":"declaration","source":0,"src_end":10977,"src_start":10859},{"artifact":0,"gen_end":15504,"gen_start":15423,"node":45,"role":"declaration","source":0,"src_end":11096,"src_start":10979},{"artifact":0,"gen_end":15612,"gen_start":15504,"node":46,"role":"declaration","source":0,"src_end":11242,"src_start":11098},{"artifact":0,"gen_end":15706,"gen_start":15612,"node":47,"role":"declaration","source":0,"src_end":11372,"src_start":11244},{"artifact":0,"gen_end":15805,"gen_start":15706,"node":48,"role":"declaration","source":0,"src_end":11507,"src_start":11374},{"artifact":0,"gen_end":15898,"gen_start":15805,"node":49,"role":"declaration","source":0,"src_end":11636,"src_start":11509},{"artifact":0,"gen_end":16006,"gen_start":15898,"node":50,"role":"declaration","source":0,"src_end":11780,"src_start":11638},{"artifact":0,"gen_end":16111,"gen_start":16006,"node":51,"role":"declaration","source":0,"src_end":11921,"src_start":11782},{"artifact":0,"gen_end":16211,"gen_start":16111,"node":52,"role":"declaration","source":0,"src_end":12057,"src_start":11923},{"artifact":0,"gen_end":16311,"gen_start":16211,"node":53,"role":"declaration","source":0,"src_end":12193,"src_start":12059},{"artifact":0,"gen_end":16416,"gen_start":16311,"node":54,"role":"declaration","source":0,"src_end":12334,"src_start":12195},{"artifact":0,"gen_end":16510,"gen_start":16416,"node":55,"role":"declaration","source":0,"src_end":12464,"src_start":12336},{"artifact":0,"gen_end":16619,"gen_start":16510,"node":56,"role":"declaration","source":0,"src_end":12609,"src_start":12466},{"artifact":0,"gen_end":16721,"gen_start":16619,"node":57,"role":"declaration","source":0,"src_end":12747,"src_start":12611},{"artifact":0,"gen_end":16823,"gen_start":16721,"node":58,"role":"declaration","source":0,"src_end":12885,"src_start":12749},{"artifact":0,"gen_end":16932,"gen_start":16823,"node":59,"role":"declaration","source":0,"src_end":13030,"src_start":12887},{"artifact":0,"gen_end":17049,"gen_start":16932,"node":60,"role":"declaration","source":0,"src_end":13183,"src_start":13032},{"artifact":0,"gen_end":17155,"gen_start":17049,"node":61,"role":"declaration","source":0,"src_end":13325,"src_start":13185},{"artifact":0,"gen_end":17275,"gen_start":17155,"node":62,"role":"declaration","source":0,"src_end":13481,"src_start":13327},{"artifact":0,"gen_end":17456,"gen_start":17275,"node":63,"role":"declaration","source":0,"src_end":13712,"src_start":13483},{"artifact":0,"gen_end":17651,"gen_start":17456,"node":64,"role":"declaration","source":0,"src_end":13959,"src_start":13714},{"artifact":0,"gen_end":17668,"gen_start":17651,"node":0,"role":"declaration","source":0,"src_end":13995,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":65,"role":"declaration","source":0,"src_end":13995,"src_start":0},{"artifact":1,"gen_end":620,"gen_start":134,"node":66,"role":"declaration","source":0,"src_end":541,"src_start":295},{"artifact":1,"gen_end":1171,"gen_start":620,"node":67,"role":"declaration","source":0,"src_end":855,"src_start":543},{"artifact":1,"gen_end":1732,"gen_start":1171,"node":68,"role":"declaration","source":0,"src_end":1179,"src_start":857},{"artifact":1,"gen_end":2289,"gen_start":1732,"node":69,"role":"declaration","source":0,"src_end":1493,"src_start":1181},{"artifact":1,"gen_end":2888,"gen_start":2289,"node":70,"role":"declaration","source":0,"src_end":1828,"src_start":1495},{"artifact":1,"gen_end":3094,"gen_start":2888,"node":71,"role":"declaration","source":0,"src_end":1976,"src_start":1830},{"artifact":1,"gen_end":3594,"gen_start":3094,"node":72,"role":"declaration","source":0,"src_end":2307,"src_start":1978},{"artifact":1,"gen_end":3820,"gen_start":3594,"node":73,"role":"declaration","source":0,"src_end":2459,"src_start":2309},{"artifact":1,"gen_end":4052,"gen_start":3820,"node":74,"role":"declaration","source":0,"src_end":2619,"src_start":2461},{"artifact":1,"gen_end":4621,"gen_start":4052,"node":75,"role":"declaration","source":0,"src_end":2935,"src_start":2621},{"artifact":1,"gen_end":5208,"gen_start":4621,"node":76,"role":"declaration","source":0,"src_end":3269,"src_start":2937},{"artifact":1,"gen_end":5728,"gen_start":5208,"node":77,"role":"declaration","source":0,"src_end":3548,"src_start":3271},{"artifact":1,"gen_end":6135,"gen_start":5728,"node":78,"role":"declaration","source":0,"src_end":3754,"src_start":3550},{"artifact":1,"gen_end":6715,"gen_start":6135,"node":79,"role":"declaration","source":0,"src_end":4079,"src_start":3756},{"artifact":1,"gen_end":7144,"gen_start":6715,"node":80,"role":"declaration","source":0,"src_end":4298,"src_start":4081},{"artifact":1,"gen_end":7581,"gen_start":7144,"node":81,"role":"declaration","source":0,"src_end":4525,"src_start":4300},{"artifact":1,"gen_end":8070,"gen_start":7581,"node":82,"role":"declaration","source":0,"src_end":4780,"src_start":4527},{"artifact":1,"gen_end":8566,"gen_start":8070,"node":83,"role":"declaration","source":0,"src_end":5035,"src_start":4782},{"artifact":1,"gen_end":9044,"gen_start":8566,"node":84,"role":"declaration","source":0,"src_end":5286,"src_start":5037},{"artifact":1,"gen_end":9549,"gen_start":9044,"node":85,"role":"declaration","source":0,"src_end":5562,"src_start":5288},{"artifact":1,"gen_end":10046,"gen_start":9549,"node":86,"role":"declaration","source":0,"src_end":5830,"src_start":5564},{"artifact":1,"gen_end":10547,"gen_start":10046,"node":87,"role":"declaration","source":0,"src_end":6102,"src_start":5832},{"artifact":1,"gen_end":10980,"gen_start":10547,"node":88,"role":"declaration","source":0,"src_end":6332,"src_start":6104},{"artifact":1,"gen_end":11453,"gen_start":10980,"node":89,"role":"declaration","source":0,"src_end":6601,"src_start":6334},{"artifact":1,"gen_end":11910,"gen_start":11453,"node":90,"role":"declaration","source":0,"src_end":6857,"src_start":6603},{"artifact":1,"gen_end":12479,"gen_start":11910,"node":91,"role":"declaration","source":0,"src_end":7211,"src_start":6859},{"artifact":1,"gen_end":13146,"gen_start":12479,"node":92,"role":"declaration","source":0,"src_end":7650,"src_start":7213},{"artifact":1,"gen_end":13735,"gen_start":13146,"node":93,"role":"declaration","source":0,"src_end":8018,"src_start":7652},{"artifact":1,"gen_end":14364,"gen_start":13735,"node":94,"role":"declaration","source":0,"src_end":8424,"src_start":8020},{"artifact":1,"gen_end":15040,"gen_start":14364,"node":95,"role":"declaration","source":0,"src_end":8886,"src_start":8426},{"artifact":1,"gen_end":15683,"gen_start":15040,"node":96,"role":"declaration","source":0,"src_end":9315,"src_start":8888},{"artifact":1,"gen_end":15876,"gen_start":15683,"node":97,"role":"declaration","source":0,"src_end":9437,"src_start":9317},{"artifact":1,"gen_end":16076,"gen_start":15876,"node":98,"role":"declaration","source":0,"src_end":9565,"src_start":9439},{"artifact":1,"gen_end":16282,"gen_start":16076,"node":99,"role":"declaration","source":0,"src_end":9699,"src_start":9567},{"artifact":1,"gen_end":16482,"gen_start":16282,"node":100,"role":"declaration","source":0,"src_end":9827,"src_start":9701},{"artifact":1,"gen_end":16681,"gen_start":16482,"node":101,"role":"declaration","source":0,"src_end":9954,"src_start":9829},{"artifact":1,"gen_end":16887,"gen_start":16681,"node":102,"role":"declaration","source":0,"src_end":10087,"src_start":9956},{"artifact":1,"gen_end":17078,"gen_start":16887,"node":103,"role":"declaration","source":0,"src_end":10209,"src_start":10089},{"artifact":1,"gen_end":17282,"gen_start":17078,"node":104,"role":"declaration","source":0,"src_end":10343,"src_start":10211},{"artifact":1,"gen_end":17494,"gen_start":17282,"node":105,"role":"declaration","source":0,"src_end":10485,"src_start":10345},{"artifact":1,"gen_end":17684,"gen_start":17494,"node":106,"role":"declaration","source":0,"src_end":10604,"src_start":10487},{"artifact":1,"gen_end":17885,"gen_start":17684,"node":107,"role":"declaration","source":0,"src_end":10733,"src_start":10606},{"artifact":1,"gen_end":18081,"gen_start":17885,"node":108,"role":"declaration","source":0,"src_end":10857,"src_start":10735},{"artifact":1,"gen_end":18270,"gen_start":18081,"node":109,"role":"declaration","source":0,"src_end":10977,"src_start":10859},{"artifact":1,"gen_end":18458,"gen_start":18270,"node":110,"role":"declaration","source":0,"src_end":11096,"src_start":10979},{"artifact":1,"gen_end":18675,"gen_start":18458,"node":111,"role":"declaration","source":0,"src_end":11242,"src_start":11098},{"artifact":1,"gen_end":18876,"gen_start":18675,"node":112,"role":"declaration","source":0,"src_end":11372,"src_start":11244},{"artifact":1,"gen_end":19083,"gen_start":18876,"node":113,"role":"declaration","source":0,"src_end":11507,"src_start":11374},{"artifact":1,"gen_end":19284,"gen_start":19083,"node":114,"role":"declaration","source":0,"src_end":11636,"src_start":11509},{"artifact":1,"gen_end":19500,"gen_start":19284,"node":115,"role":"declaration","source":0,"src_end":11780,"src_start":11638},{"artifact":1,"gen_end":19714,"gen_start":19500,"node":116,"role":"declaration","source":0,"src_end":11921,"src_start":11782},{"artifact":1,"gen_end":19922,"gen_start":19714,"node":117,"role":"declaration","source":0,"src_end":12057,"src_start":11923},{"artifact":1,"gen_end":20130,"gen_start":19922,"node":118,"role":"declaration","source":0,"src_end":12193,"src_start":12059},{"artifact":1,"gen_end":20343,"gen_start":20130,"node":119,"role":"declaration","source":0,"src_end":12334,"src_start":12195},{"artifact":1,"gen_end":20544,"gen_start":20343,"node":120,"role":"declaration","source":0,"src_end":12464,"src_start":12336},{"artifact":1,"gen_end":20762,"gen_start":20544,"node":121,"role":"declaration","source":0,"src_end":12609,"src_start":12466},{"artifact":1,"gen_end":20972,"gen_start":20762,"node":122,"role":"declaration","source":0,"src_end":12747,"src_start":12611},{"artifact":1,"gen_end":21182,"gen_start":20972,"node":123,"role":"declaration","source":0,"src_end":12885,"src_start":12749},{"artifact":1,"gen_end":21400,"gen_start":21182,"node":124,"role":"declaration","source":0,"src_end":13030,"src_start":12887},{"artifact":1,"gen_end":21626,"gen_start":21400,"node":125,"role":"declaration","source":0,"src_end":13183,"src_start":13032},{"artifact":1,"gen_end":21840,"gen_start":21626,"node":126,"role":"declaration","source":0,"src_end":13325,"src_start":13185},{"artifact":1,"gen_end":22069,"gen_start":21840,"node":127,"role":"declaration","source":0,"src_end":13481,"src_start":13327},{"artifact":1,"gen_end":22357,"gen_start":22069,"node":128,"role":"declaration","source":0,"src_end":13712,"src_start":13483},{"artifact":1,"gen_end":22660,"gen_start":22357,"node":129,"role":"declaration","source":0,"src_end":13959,"src_start":13714},{"artifact":1,"gen_end":22675,"gen_start":22660,"node":65,"role":"declaration","source":0,"src_end":13995,"src_start":0}],"module":"Main","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"},{"id":40,"kind":"semantic-declaration"},{"id":41,"kind":"semantic-declaration"},{"id":42,"kind":"semantic-declaration"},{"id":43,"kind":"semantic-declaration"},{"id":44,"kind":"semantic-declaration"},{"id":45,"kind":"semantic-declaration"},{"id":46,"kind":"semantic-declaration"},{"id":47,"kind":"semantic-declaration"},{"id":48,"kind":"semantic-declaration"},{"id":49,"kind":"semantic-declaration"},{"id":50,"kind":"semantic-declaration"},{"id":51,"kind":"semantic-declaration"},{"id":52,"kind":"semantic-declaration"},{"id":53,"kind":"semantic-declaration"},{"id":54,"kind":"semantic-declaration"},{"id":55,"kind":"semantic-declaration"},{"id":56,"kind":"semantic-declaration"},{"id":57,"kind":"semantic-declaration"},{"id":58,"kind":"semantic-declaration"},{"id":59,"kind":"semantic-declaration"},{"id":60,"kind":"semantic-declaration"},{"id":61,"kind":"semantic-declaration"},{"id":62,"kind":"semantic-declaration"},{"id":63,"kind":"semantic-declaration"},{"id":64,"kind":"semantic-declaration"},{"id":65,"kind":"semantic-latex-module"},{"id":66,"kind":"semantic-declaration"},{"id":67,"kind":"semantic-declaration"},{"id":68,"kind":"semantic-declaration"},{"id":69,"kind":"semantic-declaration"},{"id":70,"kind":"semantic-declaration"},{"id":71,"kind":"semantic-declaration"},{"id":72,"kind":"semantic-declaration"},{"id":73,"kind":"semantic-declaration"},{"id":74,"kind":"semantic-declaration"},{"id":75,"kind":"semantic-declaration"},{"id":76,"kind":"semantic-declaration"},{"id":77,"kind":"semantic-declaration"},{"id":78,"kind":"semantic-declaration"},{"id":79,"kind":"semantic-declaration"},{"id":80,"kind":"semantic-declaration"},{"id":81,"kind":"semantic-declaration"},{"id":82,"kind":"semantic-declaration"},{"id":83,"kind":"semantic-declaration"},{"id":84,"kind":"semantic-declaration"},{"id":85,"kind":"semantic-declaration"},{"id":86,"kind":"semantic-declaration"},{"id":87,"kind":"semantic-declaration"},{"id":88,"kind":"semantic-declaration"},{"id":89,"kind":"semantic-declaration"},{"id":90,"kind":"semantic-declaration"},{"id":91,"kind":"semantic-declaration"},{"id":92,"kind":"semantic-declaration"},{"id":93,"kind":"semantic-declaration"},{"id":94,"kind":"semantic-declaration"},{"id":95,"kind":"semantic-declaration"},{"id":96,"kind":"semantic-declaration"},{"id":97,"kind":"semantic-declaration"},{"id":98,"kind":"semantic-declaration"},{"id":99,"kind":"semantic-declaration"},{"id":100,"kind":"semantic-declaration"},{"id":101,"kind":"semantic-declaration"},{"id":102,"kind":"semantic-declaration"},{"id":103,"kind":"semantic-declaration"},{"id":104,"kind":"semantic-declaration"},{"id":105,"kind":"semantic-declaration"},{"id":106,"kind":"semantic-declaration"},{"id":107,"kind":"semantic-declaration"},{"id":108,"kind":"semantic-declaration"},{"id":109,"kind":"semantic-declaration"},{"id":110,"kind":"semantic-declaration"},{"id":111,"kind":"semantic-declaration"},{"id":112,"kind":"semantic-declaration"},{"id":113,"kind":"semantic-declaration"},{"id":114,"kind":"semantic-declaration"},{"id":115,"kind":"semantic-declaration"},{"id":116,"kind":"semantic-declaration"},{"id":117,"kind":"semantic-declaration"},{"id":118,"kind":"semantic-declaration"},{"id":119,"kind":"semantic-declaration"},{"id":120,"kind":"semantic-declaration"},{"id":121,"kind":"semantic-declaration"},{"id":122,"kind":"semantic-declaration"},{"id":123,"kind":"semantic-declaration"},{"id":124,"kind":"semantic-declaration"},{"id":125,"kind":"semantic-declaration"},{"id":126,"kind":"semantic-declaration"},{"id":127,"kind":"semantic-declaration"},{"id":128,"kind":"semantic-declaration"},{"id":129,"kind":"semantic-declaration"}],"semantic_id":"91b57d30cfd6f60128d6c72e374148ef2e79e45a626e878a7c7551c9a29b1534","source_id":"a2b28f35f0ba5d1a28d3832af59389874c0d5e4006af1c81f108c4bed5e405aa","sources":[{"id":0,"kind":"file","path":"src/Main.lex.tex","sha256":"09fef2732bb2b95f41909df0570942389cddbf5bcefe01e667b6ec7400caad75"}],"spec":"lexlean/source-map/1"} diff --git a/examples/models/expected/build/maps/Models/Pipeline.map.json b/examples/models/expected/build/maps/Models/Pipeline.map.json index f88396eb7..957471d8f 100644 --- a/examples/models/expected/build/maps/Models/Pipeline.map.json +++ b/examples/models/expected/build/maps/Models/Pipeline.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/Models/Pipeline.lean"},{"id":1,"kind":"tex","path":"modules/Models/Pipeline.tex"}],"mappings":[{"artifact":0,"gen_end":492,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":12945,"src_start":0},{"artifact":0,"gen_end":618,"gen_start":492,"node":1,"role":"declaration","source":0,"src_end":394,"src_start":258},{"artifact":0,"gen_end":866,"gen_start":618,"node":2,"role":"declaration","source":0,"src_end":673,"src_start":396},{"artifact":0,"gen_end":1043,"gen_start":866,"node":3,"role":"declaration","source":0,"src_end":985,"src_start":675},{"artifact":0,"gen_end":1437,"gen_start":1043,"node":4,"role":"declaration","source":0,"src_end":1718,"src_start":987},{"artifact":0,"gen_end":1680,"gen_start":1437,"node":5,"role":"declaration","source":0,"src_end":2061,"src_start":1720},{"artifact":0,"gen_end":4805,"gen_start":1680,"node":6,"role":"declaration","source":0,"src_end":2302,"src_start":2063},{"artifact":0,"gen_end":5187,"gen_start":4805,"node":7,"role":"declaration","source":0,"src_end":3033,"src_start":2304},{"artifact":0,"gen_end":5395,"gen_start":5187,"node":8,"role":"declaration","source":0,"src_end":3233,"src_start":3035},{"artifact":0,"gen_end":5520,"gen_start":5395,"node":9,"role":"declaration","source":0,"src_end":3436,"src_start":3235},{"artifact":0,"gen_end":5678,"gen_start":5520,"node":10,"role":"declaration","source":0,"src_end":3647,"src_start":3438},{"artifact":0,"gen_end":5847,"gen_start":5678,"node":11,"role":"declaration","source":0,"src_end":3827,"src_start":3649},{"artifact":0,"gen_end":5848,"gen_start":5847,"node":12,"role":"declaration","source":0,"src_end":4052,"src_start":3829},{"artifact":0,"gen_end":6237,"gen_start":5848,"node":13,"role":"declaration","source":0,"src_end":4397,"src_start":4054},{"artifact":0,"gen_end":6618,"gen_start":6237,"node":14,"role":"declaration","source":0,"src_end":5127,"src_start":4399},{"artifact":0,"gen_end":6822,"gen_start":6618,"node":15,"role":"declaration","source":0,"src_end":5324,"src_start":5129},{"artifact":0,"gen_end":6975,"gen_start":6822,"node":16,"role":"declaration","source":0,"src_end":5525,"src_start":5326},{"artifact":0,"gen_end":7086,"gen_start":6975,"node":17,"role":"declaration","source":0,"src_end":5648,"src_start":5527},{"artifact":0,"gen_end":7087,"gen_start":7086,"node":18,"role":"declaration","source":0,"src_end":5791,"src_start":5650},{"artifact":0,"gen_end":7198,"gen_start":7087,"node":19,"role":"declaration","source":0,"src_end":5975,"src_start":5793},{"artifact":0,"gen_end":7531,"gen_start":7198,"node":20,"role":"declaration","source":0,"src_end":6710,"src_start":5977},{"artifact":0,"gen_end":7698,"gen_start":7531,"node":21,"role":"declaration","source":0,"src_end":6882,"src_start":6712},{"artifact":0,"gen_end":7815,"gen_start":7698,"node":22,"role":"declaration","source":0,"src_end":7034,"src_start":6884},{"artifact":0,"gen_end":8000,"gen_start":7815,"node":23,"role":"declaration","source":0,"src_end":7226,"src_start":7036},{"artifact":0,"gen_end":8001,"gen_start":8000,"node":24,"role":"declaration","source":0,"src_end":7379,"src_start":7228},{"artifact":0,"gen_end":8166,"gen_start":8001,"node":25,"role":"declaration","source":0,"src_end":7642,"src_start":7381},{"artifact":0,"gen_end":8503,"gen_start":8166,"node":26,"role":"declaration","source":0,"src_end":8402,"src_start":7644},{"artifact":0,"gen_end":8675,"gen_start":8503,"node":27,"role":"declaration","source":0,"src_end":8592,"src_start":8404},{"artifact":0,"gen_end":8803,"gen_start":8675,"node":28,"role":"declaration","source":0,"src_end":8759,"src_start":8594},{"artifact":0,"gen_end":9011,"gen_start":8803,"node":29,"role":"declaration","source":0,"src_end":8974,"src_start":8761},{"artifact":0,"gen_end":9012,"gen_start":9011,"node":30,"role":"declaration","source":0,"src_end":9143,"src_start":8976},{"artifact":0,"gen_end":9217,"gen_start":9012,"node":31,"role":"declaration","source":0,"src_end":9385,"src_start":9145},{"artifact":0,"gen_end":9450,"gen_start":9217,"node":32,"role":"declaration","source":0,"src_end":9705,"src_start":9387},{"artifact":0,"gen_end":9613,"gen_start":9450,"node":33,"role":"declaration","source":0,"src_end":9866,"src_start":9707},{"artifact":0,"gen_end":9768,"gen_start":9613,"node":34,"role":"declaration","source":0,"src_end":10004,"src_start":9868},{"artifact":0,"gen_end":9878,"gen_start":9768,"node":35,"role":"declaration","source":0,"src_end":10126,"src_start":10006},{"artifact":0,"gen_end":9879,"gen_start":9878,"node":36,"role":"declaration","source":0,"src_end":10269,"src_start":10128},{"artifact":0,"gen_end":10070,"gen_start":9879,"node":37,"role":"declaration","source":0,"src_end":10578,"src_start":10271},{"artifact":0,"gen_end":10405,"gen_start":10070,"node":38,"role":"declaration","source":0,"src_end":11336,"src_start":10580},{"artifact":0,"gen_end":10573,"gen_start":10405,"node":39,"role":"declaration","source":0,"src_end":11522,"src_start":11338},{"artifact":0,"gen_end":10684,"gen_start":10573,"node":40,"role":"declaration","source":0,"src_end":11685,"src_start":11524},{"artifact":0,"gen_end":10808,"gen_start":10684,"node":41,"role":"declaration","source":0,"src_end":11817,"src_start":11687},{"artifact":0,"gen_end":10935,"gen_start":10808,"node":42,"role":"declaration","source":0,"src_end":11974,"src_start":11819},{"artifact":0,"gen_end":14023,"gen_start":10935,"node":43,"role":"declaration","source":0,"src_end":12235,"src_start":11976},{"artifact":0,"gen_end":14209,"gen_start":14023,"node":44,"role":"declaration","source":0,"src_end":12562,"src_start":12237},{"artifact":0,"gen_end":15333,"gen_start":14209,"node":45,"role":"declaration","source":0,"src_end":12809,"src_start":12564},{"artifact":0,"gen_end":15474,"gen_start":15333,"node":46,"role":"declaration","source":0,"src_end":12909,"src_start":12811},{"artifact":0,"gen_end":15495,"gen_start":15474,"node":0,"role":"declaration","source":0,"src_end":12945,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":47,"role":"declaration","source":0,"src_end":12945,"src_start":0},{"artifact":1,"gen_end":430,"gen_start":134,"node":48,"role":"declaration","source":0,"src_end":394,"src_start":258},{"artifact":1,"gen_end":769,"gen_start":430,"node":49,"role":"declaration","source":0,"src_end":673,"src_start":396},{"artifact":1,"gen_end":1611,"gen_start":769,"node":50,"role":"declaration","source":0,"src_end":985,"src_start":675},{"artifact":1,"gen_end":1974,"gen_start":1611,"node":51,"role":"declaration","source":0,"src_end":1718,"src_start":987},{"artifact":1,"gen_end":2951,"gen_start":1974,"node":52,"role":"declaration","source":0,"src_end":2061,"src_start":1720},{"artifact":1,"gen_end":3273,"gen_start":2951,"node":53,"role":"declaration","source":0,"src_end":2302,"src_start":2063},{"artifact":1,"gen_end":3624,"gen_start":3273,"node":54,"role":"declaration","source":0,"src_end":3033,"src_start":2304},{"artifact":1,"gen_end":4369,"gen_start":3624,"node":55,"role":"declaration","source":0,"src_end":3233,"src_start":3035},{"artifact":1,"gen_end":5123,"gen_start":4369,"node":56,"role":"declaration","source":0,"src_end":3436,"src_start":3235},{"artifact":1,"gen_end":5530,"gen_start":5123,"node":57,"role":"declaration","source":0,"src_end":3647,"src_start":3438},{"artifact":1,"gen_end":5870,"gen_start":5530,"node":58,"role":"declaration","source":0,"src_end":3827,"src_start":3649},{"artifact":1,"gen_end":6237,"gen_start":5870,"node":59,"role":"declaration","source":0,"src_end":4052,"src_start":3829},{"artifact":1,"gen_end":7103,"gen_start":6237,"node":60,"role":"declaration","source":0,"src_end":4397,"src_start":4054},{"artifact":1,"gen_end":7453,"gen_start":7103,"node":61,"role":"declaration","source":0,"src_end":5127,"src_start":4399},{"artifact":1,"gen_end":8190,"gen_start":7453,"node":62,"role":"declaration","source":0,"src_end":5324,"src_start":5129},{"artifact":1,"gen_end":8970,"gen_start":8190,"node":63,"role":"declaration","source":0,"src_end":5525,"src_start":5326},{"artifact":1,"gen_end":9251,"gen_start":8970,"node":64,"role":"declaration","source":0,"src_end":5648,"src_start":5527},{"artifact":1,"gen_end":9507,"gen_start":9251,"node":65,"role":"declaration","source":0,"src_end":5791,"src_start":5650},{"artifact":1,"gen_end":9989,"gen_start":9507,"node":66,"role":"declaration","source":0,"src_end":5975,"src_start":5793},{"artifact":1,"gen_end":10245,"gen_start":9989,"node":67,"role":"declaration","source":0,"src_end":6710,"src_start":5977},{"artifact":1,"gen_end":10881,"gen_start":10245,"node":68,"role":"declaration","source":0,"src_end":6882,"src_start":6712},{"artifact":1,"gen_end":11318,"gen_start":10881,"node":69,"role":"declaration","source":0,"src_end":7034,"src_start":6884},{"artifact":1,"gen_end":11689,"gen_start":11318,"node":70,"role":"declaration","source":0,"src_end":7226,"src_start":7036},{"artifact":1,"gen_end":11962,"gen_start":11689,"node":71,"role":"declaration","source":0,"src_end":7379,"src_start":7228},{"artifact":1,"gen_end":12512,"gen_start":11962,"node":72,"role":"declaration","source":0,"src_end":7642,"src_start":7381},{"artifact":1,"gen_end":12783,"gen_start":12512,"node":73,"role":"declaration","source":0,"src_end":8402,"src_start":7644},{"artifact":1,"gen_end":13431,"gen_start":12783,"node":74,"role":"declaration","source":0,"src_end":8592,"src_start":8404},{"artifact":1,"gen_end":13884,"gen_start":13431,"node":75,"role":"declaration","source":0,"src_end":8759,"src_start":8594},{"artifact":1,"gen_end":14278,"gen_start":13884,"node":76,"role":"declaration","source":0,"src_end":8974,"src_start":8761},{"artifact":1,"gen_end":14580,"gen_start":14278,"node":77,"role":"declaration","source":0,"src_end":9143,"src_start":8976},{"artifact":1,"gen_end":15157,"gen_start":14580,"node":78,"role":"declaration","source":0,"src_end":9385,"src_start":9145},{"artifact":1,"gen_end":15446,"gen_start":15157,"node":79,"role":"declaration","source":0,"src_end":9705,"src_start":9387},{"artifact":1,"gen_end":16098,"gen_start":15446,"node":80,"role":"declaration","source":0,"src_end":9866,"src_start":9707},{"artifact":1,"gen_end":16559,"gen_start":16098,"node":81,"role":"declaration","source":0,"src_end":10004,"src_start":9868},{"artifact":1,"gen_end":16839,"gen_start":16559,"node":82,"role":"declaration","source":0,"src_end":10126,"src_start":10006},{"artifact":1,"gen_end":17095,"gen_start":16839,"node":83,"role":"declaration","source":0,"src_end":10269,"src_start":10128},{"artifact":1,"gen_end":17683,"gen_start":17095,"node":84,"role":"declaration","source":0,"src_end":10578,"src_start":10271},{"artifact":1,"gen_end":17952,"gen_start":17683,"node":85,"role":"declaration","source":0,"src_end":11336,"src_start":10580},{"artifact":1,"gen_end":18591,"gen_start":17952,"node":86,"role":"declaration","source":0,"src_end":11522,"src_start":11338},{"artifact":1,"gen_end":19023,"gen_start":18591,"node":87,"role":"declaration","source":0,"src_end":11685,"src_start":11524},{"artifact":1,"gen_end":19318,"gen_start":19023,"node":88,"role":"declaration","source":0,"src_end":11817,"src_start":11687},{"artifact":1,"gen_end":19692,"gen_start":19318,"node":89,"role":"declaration","source":0,"src_end":11974,"src_start":11819},{"artifact":1,"gen_end":19998,"gen_start":19692,"node":90,"role":"declaration","source":0,"src_end":12235,"src_start":11976},{"artifact":1,"gen_end":20752,"gen_start":19998,"node":91,"role":"declaration","source":0,"src_end":12562,"src_start":12237},{"artifact":1,"gen_end":22333,"gen_start":20752,"node":92,"role":"declaration","source":0,"src_end":12809,"src_start":12564},{"artifact":1,"gen_end":22789,"gen_start":22333,"node":93,"role":"declaration","source":0,"src_end":12909,"src_start":12811},{"artifact":1,"gen_end":22804,"gen_start":22789,"node":47,"role":"declaration","source":0,"src_end":12945,"src_start":0}],"module":"Pipeline","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"},{"id":40,"kind":"semantic-declaration"},{"id":41,"kind":"semantic-declaration"},{"id":42,"kind":"semantic-declaration"},{"id":43,"kind":"semantic-declaration"},{"id":44,"kind":"semantic-declaration"},{"id":45,"kind":"semantic-declaration"},{"id":46,"kind":"semantic-declaration"},{"id":47,"kind":"semantic-latex-module"},{"id":48,"kind":"semantic-declaration"},{"id":49,"kind":"semantic-declaration"},{"id":50,"kind":"semantic-declaration"},{"id":51,"kind":"semantic-declaration"},{"id":52,"kind":"semantic-declaration"},{"id":53,"kind":"semantic-declaration"},{"id":54,"kind":"semantic-declaration"},{"id":55,"kind":"semantic-declaration"},{"id":56,"kind":"semantic-declaration"},{"id":57,"kind":"semantic-declaration"},{"id":58,"kind":"semantic-declaration"},{"id":59,"kind":"semantic-declaration"},{"id":60,"kind":"semantic-declaration"},{"id":61,"kind":"semantic-declaration"},{"id":62,"kind":"semantic-declaration"},{"id":63,"kind":"semantic-declaration"},{"id":64,"kind":"semantic-declaration"},{"id":65,"kind":"semantic-declaration"},{"id":66,"kind":"semantic-declaration"},{"id":67,"kind":"semantic-declaration"},{"id":68,"kind":"semantic-declaration"},{"id":69,"kind":"semantic-declaration"},{"id":70,"kind":"semantic-declaration"},{"id":71,"kind":"semantic-declaration"},{"id":72,"kind":"semantic-declaration"},{"id":73,"kind":"semantic-declaration"},{"id":74,"kind":"semantic-declaration"},{"id":75,"kind":"semantic-declaration"},{"id":76,"kind":"semantic-declaration"},{"id":77,"kind":"semantic-declaration"},{"id":78,"kind":"semantic-declaration"},{"id":79,"kind":"semantic-declaration"},{"id":80,"kind":"semantic-declaration"},{"id":81,"kind":"semantic-declaration"},{"id":82,"kind":"semantic-declaration"},{"id":83,"kind":"semantic-declaration"},{"id":84,"kind":"semantic-declaration"},{"id":85,"kind":"semantic-declaration"},{"id":86,"kind":"semantic-declaration"},{"id":87,"kind":"semantic-declaration"},{"id":88,"kind":"semantic-declaration"},{"id":89,"kind":"semantic-declaration"},{"id":90,"kind":"semantic-declaration"},{"id":91,"kind":"semantic-declaration"},{"id":92,"kind":"semantic-declaration"},{"id":93,"kind":"semantic-declaration"}],"semantic_id":"49cf062e918bdc2f8a44a66473c4435ee310d33b78d7093624f025547ab95bfd","source_id":"029a1a5ebafd24dc317957624d7e5417c3a563331be1ac2c56d796c47a51d75f","sources":[{"id":0,"kind":"file","path":"src/Pipeline.lex.tex","sha256":"82cec7477a537982dab7be86130292d11e3cc2123c2e7188a32b8d8808ab22c1"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/Models/Pipeline.lean"},{"id":1,"kind":"tex","path":"modules/Models/Pipeline.tex"}],"mappings":[{"artifact":0,"gen_end":492,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":12945,"src_start":0},{"artifact":0,"gen_end":618,"gen_start":492,"node":1,"role":"declaration","source":0,"src_end":394,"src_start":258},{"artifact":0,"gen_end":866,"gen_start":618,"node":2,"role":"declaration","source":0,"src_end":673,"src_start":396},{"artifact":0,"gen_end":1043,"gen_start":866,"node":3,"role":"declaration","source":0,"src_end":985,"src_start":675},{"artifact":0,"gen_end":1437,"gen_start":1043,"node":4,"role":"declaration","source":0,"src_end":1718,"src_start":987},{"artifact":0,"gen_end":1680,"gen_start":1437,"node":5,"role":"declaration","source":0,"src_end":2061,"src_start":1720},{"artifact":0,"gen_end":4805,"gen_start":1680,"node":6,"role":"declaration","source":0,"src_end":2302,"src_start":2063},{"artifact":0,"gen_end":5187,"gen_start":4805,"node":7,"role":"declaration","source":0,"src_end":3033,"src_start":2304},{"artifact":0,"gen_end":5395,"gen_start":5187,"node":8,"role":"declaration","source":0,"src_end":3233,"src_start":3035},{"artifact":0,"gen_end":5520,"gen_start":5395,"node":9,"role":"declaration","source":0,"src_end":3436,"src_start":3235},{"artifact":0,"gen_end":5678,"gen_start":5520,"node":10,"role":"declaration","source":0,"src_end":3647,"src_start":3438},{"artifact":0,"gen_end":5847,"gen_start":5678,"node":11,"role":"declaration","source":0,"src_end":3827,"src_start":3649},{"artifact":0,"gen_end":5848,"gen_start":5847,"node":12,"role":"declaration","source":0,"src_end":4052,"src_start":3829},{"artifact":0,"gen_end":6237,"gen_start":5848,"node":13,"role":"declaration","source":0,"src_end":4397,"src_start":4054},{"artifact":0,"gen_end":6618,"gen_start":6237,"node":14,"role":"declaration","source":0,"src_end":5127,"src_start":4399},{"artifact":0,"gen_end":6822,"gen_start":6618,"node":15,"role":"declaration","source":0,"src_end":5324,"src_start":5129},{"artifact":0,"gen_end":6975,"gen_start":6822,"node":16,"role":"declaration","source":0,"src_end":5525,"src_start":5326},{"artifact":0,"gen_end":7086,"gen_start":6975,"node":17,"role":"declaration","source":0,"src_end":5648,"src_start":5527},{"artifact":0,"gen_end":7087,"gen_start":7086,"node":18,"role":"declaration","source":0,"src_end":5791,"src_start":5650},{"artifact":0,"gen_end":7198,"gen_start":7087,"node":19,"role":"declaration","source":0,"src_end":5975,"src_start":5793},{"artifact":0,"gen_end":7531,"gen_start":7198,"node":20,"role":"declaration","source":0,"src_end":6710,"src_start":5977},{"artifact":0,"gen_end":7698,"gen_start":7531,"node":21,"role":"declaration","source":0,"src_end":6882,"src_start":6712},{"artifact":0,"gen_end":7815,"gen_start":7698,"node":22,"role":"declaration","source":0,"src_end":7034,"src_start":6884},{"artifact":0,"gen_end":8000,"gen_start":7815,"node":23,"role":"declaration","source":0,"src_end":7226,"src_start":7036},{"artifact":0,"gen_end":8001,"gen_start":8000,"node":24,"role":"declaration","source":0,"src_end":7379,"src_start":7228},{"artifact":0,"gen_end":8166,"gen_start":8001,"node":25,"role":"declaration","source":0,"src_end":7642,"src_start":7381},{"artifact":0,"gen_end":8503,"gen_start":8166,"node":26,"role":"declaration","source":0,"src_end":8402,"src_start":7644},{"artifact":0,"gen_end":8675,"gen_start":8503,"node":27,"role":"declaration","source":0,"src_end":8592,"src_start":8404},{"artifact":0,"gen_end":8803,"gen_start":8675,"node":28,"role":"declaration","source":0,"src_end":8759,"src_start":8594},{"artifact":0,"gen_end":9011,"gen_start":8803,"node":29,"role":"declaration","source":0,"src_end":8974,"src_start":8761},{"artifact":0,"gen_end":9012,"gen_start":9011,"node":30,"role":"declaration","source":0,"src_end":9143,"src_start":8976},{"artifact":0,"gen_end":9217,"gen_start":9012,"node":31,"role":"declaration","source":0,"src_end":9385,"src_start":9145},{"artifact":0,"gen_end":9450,"gen_start":9217,"node":32,"role":"declaration","source":0,"src_end":9705,"src_start":9387},{"artifact":0,"gen_end":9613,"gen_start":9450,"node":33,"role":"declaration","source":0,"src_end":9866,"src_start":9707},{"artifact":0,"gen_end":9768,"gen_start":9613,"node":34,"role":"declaration","source":0,"src_end":10004,"src_start":9868},{"artifact":0,"gen_end":9878,"gen_start":9768,"node":35,"role":"declaration","source":0,"src_end":10126,"src_start":10006},{"artifact":0,"gen_end":9879,"gen_start":9878,"node":36,"role":"declaration","source":0,"src_end":10269,"src_start":10128},{"artifact":0,"gen_end":10070,"gen_start":9879,"node":37,"role":"declaration","source":0,"src_end":10578,"src_start":10271},{"artifact":0,"gen_end":10405,"gen_start":10070,"node":38,"role":"declaration","source":0,"src_end":11336,"src_start":10580},{"artifact":0,"gen_end":10573,"gen_start":10405,"node":39,"role":"declaration","source":0,"src_end":11522,"src_start":11338},{"artifact":0,"gen_end":10684,"gen_start":10573,"node":40,"role":"declaration","source":0,"src_end":11685,"src_start":11524},{"artifact":0,"gen_end":10808,"gen_start":10684,"node":41,"role":"declaration","source":0,"src_end":11817,"src_start":11687},{"artifact":0,"gen_end":10935,"gen_start":10808,"node":42,"role":"declaration","source":0,"src_end":11974,"src_start":11819},{"artifact":0,"gen_end":14023,"gen_start":10935,"node":43,"role":"declaration","source":0,"src_end":12235,"src_start":11976},{"artifact":0,"gen_end":14209,"gen_start":14023,"node":44,"role":"declaration","source":0,"src_end":12562,"src_start":12237},{"artifact":0,"gen_end":15333,"gen_start":14209,"node":45,"role":"declaration","source":0,"src_end":12809,"src_start":12564},{"artifact":0,"gen_end":15474,"gen_start":15333,"node":46,"role":"declaration","source":0,"src_end":12909,"src_start":12811},{"artifact":0,"gen_end":15495,"gen_start":15474,"node":0,"role":"declaration","source":0,"src_end":12945,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":47,"role":"declaration","source":0,"src_end":12945,"src_start":0},{"artifact":1,"gen_end":430,"gen_start":134,"node":48,"role":"declaration","source":0,"src_end":394,"src_start":258},{"artifact":1,"gen_end":769,"gen_start":430,"node":49,"role":"declaration","source":0,"src_end":673,"src_start":396},{"artifact":1,"gen_end":1611,"gen_start":769,"node":50,"role":"declaration","source":0,"src_end":985,"src_start":675},{"artifact":1,"gen_end":1974,"gen_start":1611,"node":51,"role":"declaration","source":0,"src_end":1718,"src_start":987},{"artifact":1,"gen_end":2951,"gen_start":1974,"node":52,"role":"declaration","source":0,"src_end":2061,"src_start":1720},{"artifact":1,"gen_end":3273,"gen_start":2951,"node":53,"role":"declaration","source":0,"src_end":2302,"src_start":2063},{"artifact":1,"gen_end":3624,"gen_start":3273,"node":54,"role":"declaration","source":0,"src_end":3033,"src_start":2304},{"artifact":1,"gen_end":4369,"gen_start":3624,"node":55,"role":"declaration","source":0,"src_end":3233,"src_start":3035},{"artifact":1,"gen_end":5123,"gen_start":4369,"node":56,"role":"declaration","source":0,"src_end":3436,"src_start":3235},{"artifact":1,"gen_end":5530,"gen_start":5123,"node":57,"role":"declaration","source":0,"src_end":3647,"src_start":3438},{"artifact":1,"gen_end":5870,"gen_start":5530,"node":58,"role":"declaration","source":0,"src_end":3827,"src_start":3649},{"artifact":1,"gen_end":6237,"gen_start":5870,"node":59,"role":"declaration","source":0,"src_end":4052,"src_start":3829},{"artifact":1,"gen_end":7103,"gen_start":6237,"node":60,"role":"declaration","source":0,"src_end":4397,"src_start":4054},{"artifact":1,"gen_end":7453,"gen_start":7103,"node":61,"role":"declaration","source":0,"src_end":5127,"src_start":4399},{"artifact":1,"gen_end":8190,"gen_start":7453,"node":62,"role":"declaration","source":0,"src_end":5324,"src_start":5129},{"artifact":1,"gen_end":8970,"gen_start":8190,"node":63,"role":"declaration","source":0,"src_end":5525,"src_start":5326},{"artifact":1,"gen_end":9251,"gen_start":8970,"node":64,"role":"declaration","source":0,"src_end":5648,"src_start":5527},{"artifact":1,"gen_end":9507,"gen_start":9251,"node":65,"role":"declaration","source":0,"src_end":5791,"src_start":5650},{"artifact":1,"gen_end":9989,"gen_start":9507,"node":66,"role":"declaration","source":0,"src_end":5975,"src_start":5793},{"artifact":1,"gen_end":10245,"gen_start":9989,"node":67,"role":"declaration","source":0,"src_end":6710,"src_start":5977},{"artifact":1,"gen_end":10881,"gen_start":10245,"node":68,"role":"declaration","source":0,"src_end":6882,"src_start":6712},{"artifact":1,"gen_end":11318,"gen_start":10881,"node":69,"role":"declaration","source":0,"src_end":7034,"src_start":6884},{"artifact":1,"gen_end":11689,"gen_start":11318,"node":70,"role":"declaration","source":0,"src_end":7226,"src_start":7036},{"artifact":1,"gen_end":11962,"gen_start":11689,"node":71,"role":"declaration","source":0,"src_end":7379,"src_start":7228},{"artifact":1,"gen_end":12512,"gen_start":11962,"node":72,"role":"declaration","source":0,"src_end":7642,"src_start":7381},{"artifact":1,"gen_end":12783,"gen_start":12512,"node":73,"role":"declaration","source":0,"src_end":8402,"src_start":7644},{"artifact":1,"gen_end":13431,"gen_start":12783,"node":74,"role":"declaration","source":0,"src_end":8592,"src_start":8404},{"artifact":1,"gen_end":13884,"gen_start":13431,"node":75,"role":"declaration","source":0,"src_end":8759,"src_start":8594},{"artifact":1,"gen_end":14278,"gen_start":13884,"node":76,"role":"declaration","source":0,"src_end":8974,"src_start":8761},{"artifact":1,"gen_end":14580,"gen_start":14278,"node":77,"role":"declaration","source":0,"src_end":9143,"src_start":8976},{"artifact":1,"gen_end":15157,"gen_start":14580,"node":78,"role":"declaration","source":0,"src_end":9385,"src_start":9145},{"artifact":1,"gen_end":15446,"gen_start":15157,"node":79,"role":"declaration","source":0,"src_end":9705,"src_start":9387},{"artifact":1,"gen_end":16098,"gen_start":15446,"node":80,"role":"declaration","source":0,"src_end":9866,"src_start":9707},{"artifact":1,"gen_end":16559,"gen_start":16098,"node":81,"role":"declaration","source":0,"src_end":10004,"src_start":9868},{"artifact":1,"gen_end":16839,"gen_start":16559,"node":82,"role":"declaration","source":0,"src_end":10126,"src_start":10006},{"artifact":1,"gen_end":17095,"gen_start":16839,"node":83,"role":"declaration","source":0,"src_end":10269,"src_start":10128},{"artifact":1,"gen_end":17683,"gen_start":17095,"node":84,"role":"declaration","source":0,"src_end":10578,"src_start":10271},{"artifact":1,"gen_end":17952,"gen_start":17683,"node":85,"role":"declaration","source":0,"src_end":11336,"src_start":10580},{"artifact":1,"gen_end":18591,"gen_start":17952,"node":86,"role":"declaration","source":0,"src_end":11522,"src_start":11338},{"artifact":1,"gen_end":19023,"gen_start":18591,"node":87,"role":"declaration","source":0,"src_end":11685,"src_start":11524},{"artifact":1,"gen_end":19318,"gen_start":19023,"node":88,"role":"declaration","source":0,"src_end":11817,"src_start":11687},{"artifact":1,"gen_end":19692,"gen_start":19318,"node":89,"role":"declaration","source":0,"src_end":11974,"src_start":11819},{"artifact":1,"gen_end":19998,"gen_start":19692,"node":90,"role":"declaration","source":0,"src_end":12235,"src_start":11976},{"artifact":1,"gen_end":20752,"gen_start":19998,"node":91,"role":"declaration","source":0,"src_end":12562,"src_start":12237},{"artifact":1,"gen_end":22333,"gen_start":20752,"node":92,"role":"declaration","source":0,"src_end":12809,"src_start":12564},{"artifact":1,"gen_end":22789,"gen_start":22333,"node":93,"role":"declaration","source":0,"src_end":12909,"src_start":12811},{"artifact":1,"gen_end":22804,"gen_start":22789,"node":47,"role":"declaration","source":0,"src_end":12945,"src_start":0}],"module":"Pipeline","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"},{"id":40,"kind":"semantic-declaration"},{"id":41,"kind":"semantic-declaration"},{"id":42,"kind":"semantic-declaration"},{"id":43,"kind":"semantic-declaration"},{"id":44,"kind":"semantic-declaration"},{"id":45,"kind":"semantic-declaration"},{"id":46,"kind":"semantic-declaration"},{"id":47,"kind":"semantic-latex-module"},{"id":48,"kind":"semantic-declaration"},{"id":49,"kind":"semantic-declaration"},{"id":50,"kind":"semantic-declaration"},{"id":51,"kind":"semantic-declaration"},{"id":52,"kind":"semantic-declaration"},{"id":53,"kind":"semantic-declaration"},{"id":54,"kind":"semantic-declaration"},{"id":55,"kind":"semantic-declaration"},{"id":56,"kind":"semantic-declaration"},{"id":57,"kind":"semantic-declaration"},{"id":58,"kind":"semantic-declaration"},{"id":59,"kind":"semantic-declaration"},{"id":60,"kind":"semantic-declaration"},{"id":61,"kind":"semantic-declaration"},{"id":62,"kind":"semantic-declaration"},{"id":63,"kind":"semantic-declaration"},{"id":64,"kind":"semantic-declaration"},{"id":65,"kind":"semantic-declaration"},{"id":66,"kind":"semantic-declaration"},{"id":67,"kind":"semantic-declaration"},{"id":68,"kind":"semantic-declaration"},{"id":69,"kind":"semantic-declaration"},{"id":70,"kind":"semantic-declaration"},{"id":71,"kind":"semantic-declaration"},{"id":72,"kind":"semantic-declaration"},{"id":73,"kind":"semantic-declaration"},{"id":74,"kind":"semantic-declaration"},{"id":75,"kind":"semantic-declaration"},{"id":76,"kind":"semantic-declaration"},{"id":77,"kind":"semantic-declaration"},{"id":78,"kind":"semantic-declaration"},{"id":79,"kind":"semantic-declaration"},{"id":80,"kind":"semantic-declaration"},{"id":81,"kind":"semantic-declaration"},{"id":82,"kind":"semantic-declaration"},{"id":83,"kind":"semantic-declaration"},{"id":84,"kind":"semantic-declaration"},{"id":85,"kind":"semantic-declaration"},{"id":86,"kind":"semantic-declaration"},{"id":87,"kind":"semantic-declaration"},{"id":88,"kind":"semantic-declaration"},{"id":89,"kind":"semantic-declaration"},{"id":90,"kind":"semantic-declaration"},{"id":91,"kind":"semantic-declaration"},{"id":92,"kind":"semantic-declaration"},{"id":93,"kind":"semantic-declaration"}],"semantic_id":"91b57d30cfd6f60128d6c72e374148ef2e79e45a626e878a7c7551c9a29b1534","source_id":"a2b28f35f0ba5d1a28d3832af59389874c0d5e4006af1c81f108c4bed5e405aa","sources":[{"id":0,"kind":"file","path":"src/Pipeline.lex.tex","sha256":"82cec7477a537982dab7be86130292d11e3cc2123c2e7188a32b8d8808ab22c1"}],"spec":"lexlean/source-map/1"} diff --git a/examples/models/expected/build/maps/Models/Policy.map.json b/examples/models/expected/build/maps/Models/Policy.map.json index 4a432444b..98dc3dcec 100644 --- a/examples/models/expected/build/maps/Models/Policy.map.json +++ b/examples/models/expected/build/maps/Models/Policy.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/Models/Policy.lean"},{"id":1,"kind":"tex","path":"modules/Models/Policy.tex"}],"mappings":[{"artifact":0,"gen_end":260,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":3172,"src_start":0},{"artifact":0,"gen_end":467,"gen_start":260,"node":1,"role":"declaration","source":0,"src_end":404,"src_start":165},{"artifact":0,"gen_end":593,"gen_start":467,"node":2,"role":"declaration","source":0,"src_end":538,"src_start":406},{"artifact":0,"gen_end":706,"gen_start":593,"node":3,"role":"declaration","source":0,"src_end":693,"src_start":540},{"artifact":0,"gen_end":938,"gen_start":706,"node":4,"role":"declaration","source":0,"src_end":1091,"src_start":695},{"artifact":0,"gen_end":1173,"gen_start":938,"node":5,"role":"declaration","source":0,"src_end":1492,"src_start":1093},{"artifact":0,"gen_end":1286,"gen_start":1173,"node":6,"role":"declaration","source":0,"src_end":1617,"src_start":1494},{"artifact":0,"gen_end":1646,"gen_start":1286,"node":7,"role":"declaration","source":0,"src_end":1968,"src_start":1619},{"artifact":0,"gen_end":2002,"gen_start":1646,"node":8,"role":"declaration","source":0,"src_end":2270,"src_start":1970},{"artifact":0,"gen_end":2235,"gen_start":2002,"node":9,"role":"declaration","source":0,"src_end":2667,"src_start":2272},{"artifact":0,"gen_end":2348,"gen_start":2235,"node":10,"role":"declaration","source":0,"src_end":2819,"src_start":2669},{"artifact":0,"gen_end":2543,"gen_start":2348,"node":11,"role":"declaration","source":0,"src_end":2990,"src_start":2821},{"artifact":0,"gen_end":2654,"gen_start":2543,"node":12,"role":"declaration","source":0,"src_end":3136,"src_start":2992},{"artifact":0,"gen_end":2673,"gen_start":2654,"node":0,"role":"declaration","source":0,"src_end":3172,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":13,"role":"declaration","source":0,"src_end":3172,"src_start":0},{"artifact":1,"gen_end":588,"gen_start":134,"node":14,"role":"declaration","source":0,"src_end":404,"src_start":165},{"artifact":1,"gen_end":885,"gen_start":588,"node":15,"role":"declaration","source":0,"src_end":538,"src_start":406},{"artifact":1,"gen_end":1245,"gen_start":885,"node":16,"role":"declaration","source":0,"src_end":693,"src_start":540},{"artifact":1,"gen_end":1532,"gen_start":1245,"node":17,"role":"declaration","source":0,"src_end":1091,"src_start":695},{"artifact":1,"gen_end":1822,"gen_start":1532,"node":18,"role":"declaration","source":0,"src_end":1492,"src_start":1093},{"artifact":1,"gen_end":2105,"gen_start":1822,"node":19,"role":"declaration","source":0,"src_end":1617,"src_start":1494},{"artifact":1,"gen_end":3224,"gen_start":2105,"node":20,"role":"declaration","source":0,"src_end":1968,"src_start":1619},{"artifact":1,"gen_end":4043,"gen_start":3224,"node":21,"role":"declaration","source":0,"src_end":2270,"src_start":1970},{"artifact":1,"gen_end":4330,"gen_start":4043,"node":22,"role":"declaration","source":0,"src_end":2667,"src_start":2272},{"artifact":1,"gen_end":4550,"gen_start":4330,"node":23,"role":"declaration","source":0,"src_end":2819,"src_start":2669},{"artifact":1,"gen_end":5218,"gen_start":4550,"node":24,"role":"declaration","source":0,"src_end":2990,"src_start":2821},{"artifact":1,"gen_end":5653,"gen_start":5218,"node":25,"role":"declaration","source":0,"src_end":3136,"src_start":2992},{"artifact":1,"gen_end":5668,"gen_start":5653,"node":13,"role":"declaration","source":0,"src_end":3172,"src_start":0}],"module":"Policy","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-latex-module"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"}],"semantic_id":"49cf062e918bdc2f8a44a66473c4435ee310d33b78d7093624f025547ab95bfd","source_id":"029a1a5ebafd24dc317957624d7e5417c3a563331be1ac2c56d796c47a51d75f","sources":[{"id":0,"kind":"file","path":"src/Policy.lex.tex","sha256":"32d2ea99e908b81d5210299ee8e6148cc87e4ae72d9bef235cadf5cf69947ecf"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/Models/Policy.lean"},{"id":1,"kind":"tex","path":"modules/Models/Policy.tex"}],"mappings":[{"artifact":0,"gen_end":260,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":3172,"src_start":0},{"artifact":0,"gen_end":467,"gen_start":260,"node":1,"role":"declaration","source":0,"src_end":404,"src_start":165},{"artifact":0,"gen_end":593,"gen_start":467,"node":2,"role":"declaration","source":0,"src_end":538,"src_start":406},{"artifact":0,"gen_end":706,"gen_start":593,"node":3,"role":"declaration","source":0,"src_end":693,"src_start":540},{"artifact":0,"gen_end":938,"gen_start":706,"node":4,"role":"declaration","source":0,"src_end":1091,"src_start":695},{"artifact":0,"gen_end":1173,"gen_start":938,"node":5,"role":"declaration","source":0,"src_end":1492,"src_start":1093},{"artifact":0,"gen_end":1286,"gen_start":1173,"node":6,"role":"declaration","source":0,"src_end":1617,"src_start":1494},{"artifact":0,"gen_end":1646,"gen_start":1286,"node":7,"role":"declaration","source":0,"src_end":1968,"src_start":1619},{"artifact":0,"gen_end":2002,"gen_start":1646,"node":8,"role":"declaration","source":0,"src_end":2270,"src_start":1970},{"artifact":0,"gen_end":2235,"gen_start":2002,"node":9,"role":"declaration","source":0,"src_end":2667,"src_start":2272},{"artifact":0,"gen_end":2348,"gen_start":2235,"node":10,"role":"declaration","source":0,"src_end":2819,"src_start":2669},{"artifact":0,"gen_end":2543,"gen_start":2348,"node":11,"role":"declaration","source":0,"src_end":2990,"src_start":2821},{"artifact":0,"gen_end":2654,"gen_start":2543,"node":12,"role":"declaration","source":0,"src_end":3136,"src_start":2992},{"artifact":0,"gen_end":2673,"gen_start":2654,"node":0,"role":"declaration","source":0,"src_end":3172,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":13,"role":"declaration","source":0,"src_end":3172,"src_start":0},{"artifact":1,"gen_end":588,"gen_start":134,"node":14,"role":"declaration","source":0,"src_end":404,"src_start":165},{"artifact":1,"gen_end":885,"gen_start":588,"node":15,"role":"declaration","source":0,"src_end":538,"src_start":406},{"artifact":1,"gen_end":1245,"gen_start":885,"node":16,"role":"declaration","source":0,"src_end":693,"src_start":540},{"artifact":1,"gen_end":1532,"gen_start":1245,"node":17,"role":"declaration","source":0,"src_end":1091,"src_start":695},{"artifact":1,"gen_end":1822,"gen_start":1532,"node":18,"role":"declaration","source":0,"src_end":1492,"src_start":1093},{"artifact":1,"gen_end":2105,"gen_start":1822,"node":19,"role":"declaration","source":0,"src_end":1617,"src_start":1494},{"artifact":1,"gen_end":3224,"gen_start":2105,"node":20,"role":"declaration","source":0,"src_end":1968,"src_start":1619},{"artifact":1,"gen_end":4043,"gen_start":3224,"node":21,"role":"declaration","source":0,"src_end":2270,"src_start":1970},{"artifact":1,"gen_end":4330,"gen_start":4043,"node":22,"role":"declaration","source":0,"src_end":2667,"src_start":2272},{"artifact":1,"gen_end":4550,"gen_start":4330,"node":23,"role":"declaration","source":0,"src_end":2819,"src_start":2669},{"artifact":1,"gen_end":5218,"gen_start":4550,"node":24,"role":"declaration","source":0,"src_end":2990,"src_start":2821},{"artifact":1,"gen_end":5653,"gen_start":5218,"node":25,"role":"declaration","source":0,"src_end":3136,"src_start":2992},{"artifact":1,"gen_end":5668,"gen_start":5653,"node":13,"role":"declaration","source":0,"src_end":3172,"src_start":0}],"module":"Policy","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-latex-module"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"}],"semantic_id":"91b57d30cfd6f60128d6c72e374148ef2e79e45a626e878a7c7551c9a29b1534","source_id":"a2b28f35f0ba5d1a28d3832af59389874c0d5e4006af1c81f108c4bed5e405aa","sources":[{"id":0,"kind":"file","path":"src/Policy.lex.tex","sha256":"32d2ea99e908b81d5210299ee8e6148cc87e4ae72d9bef235cadf5cf69947ecf"}],"spec":"lexlean/source-map/1"} diff --git a/examples/models/expected/build/maps/Models/Recognizer.map.json b/examples/models/expected/build/maps/Models/Recognizer.map.json index 84dfffff8..6b5147119 100644 --- a/examples/models/expected/build/maps/Models/Recognizer.map.json +++ b/examples/models/expected/build/maps/Models/Recognizer.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/Models/Recognizer.lean"},{"id":1,"kind":"tex","path":"modules/Models/Recognizer.tex"}],"mappings":[{"artifact":0,"gen_end":377,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":8290,"src_start":0},{"artifact":0,"gen_end":2566,"gen_start":377,"node":1,"role":"declaration","source":0,"src_end":394,"src_start":169},{"artifact":0,"gen_end":3193,"gen_start":2566,"node":2,"role":"declaration","source":0,"src_end":609,"src_start":396},{"artifact":0,"gen_end":5967,"gen_start":3193,"node":3,"role":"declaration","source":0,"src_end":838,"src_start":611},{"artifact":0,"gen_end":6612,"gen_start":5967,"node":4,"role":"declaration","source":0,"src_end":1051,"src_start":840},{"artifact":0,"gen_end":7222,"gen_start":6612,"node":5,"role":"declaration","source":0,"src_end":1293,"src_start":1053},{"artifact":0,"gen_end":7442,"gen_start":7222,"node":6,"role":"declaration","source":0,"src_end":1462,"src_start":1295},{"artifact":0,"gen_end":7580,"gen_start":7442,"node":7,"role":"declaration","source":0,"src_end":1607,"src_start":1464},{"artifact":0,"gen_end":7722,"gen_start":7580,"node":8,"role":"declaration","source":0,"src_end":1778,"src_start":1609},{"artifact":0,"gen_end":10843,"gen_start":7722,"node":9,"role":"declaration","source":0,"src_end":2049,"src_start":1780},{"artifact":0,"gen_end":13967,"gen_start":10843,"node":10,"role":"declaration","source":0,"src_end":2323,"src_start":2051},{"artifact":0,"gen_end":14351,"gen_start":13967,"node":11,"role":"declaration","source":0,"src_end":2667,"src_start":2325},{"artifact":0,"gen_end":14531,"gen_start":14351,"node":12,"role":"declaration","source":0,"src_end":2872,"src_start":2669},{"artifact":0,"gen_end":18440,"gen_start":14531,"node":13,"role":"declaration","source":0,"src_end":3471,"src_start":2874},{"artifact":0,"gen_end":18790,"gen_start":18440,"node":14,"role":"declaration","source":0,"src_end":4240,"src_start":3473},{"artifact":0,"gen_end":19129,"gen_start":18790,"node":15,"role":"declaration","source":0,"src_end":5002,"src_start":4242},{"artifact":0,"gen_end":20581,"gen_start":19129,"node":16,"role":"declaration","source":0,"src_end":6574,"src_start":5004},{"artifact":0,"gen_end":20689,"gen_start":20581,"node":17,"role":"declaration","source":0,"src_end":6723,"src_start":6576},{"artifact":0,"gen_end":23771,"gen_start":20689,"node":18,"role":"declaration","source":0,"src_end":6963,"src_start":6725},{"artifact":0,"gen_end":24109,"gen_start":23771,"node":19,"role":"declaration","source":0,"src_end":7315,"src_start":6965},{"artifact":0,"gen_end":24655,"gen_start":24109,"node":20,"role":"declaration","source":0,"src_end":7800,"src_start":7317},{"artifact":0,"gen_end":24766,"gen_start":24655,"node":21,"role":"declaration","source":0,"src_end":7961,"src_start":7802},{"artifact":0,"gen_end":24880,"gen_start":24766,"node":22,"role":"declaration","source":0,"src_end":8086,"src_start":7963},{"artifact":0,"gen_end":25009,"gen_start":24880,"node":23,"role":"declaration","source":0,"src_end":8254,"src_start":8088},{"artifact":0,"gen_end":25032,"gen_start":25009,"node":0,"role":"declaration","source":0,"src_end":8290,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":24,"role":"declaration","source":0,"src_end":8290,"src_start":0},{"artifact":1,"gen_end":857,"gen_start":134,"node":25,"role":"declaration","source":0,"src_end":394,"src_start":169},{"artifact":1,"gen_end":1552,"gen_start":857,"node":26,"role":"declaration","source":0,"src_end":609,"src_start":396},{"artifact":1,"gen_end":2277,"gen_start":1552,"node":27,"role":"declaration","source":0,"src_end":838,"src_start":611},{"artifact":1,"gen_end":2972,"gen_start":2277,"node":28,"role":"declaration","source":0,"src_end":1051,"src_start":840},{"artifact":1,"gen_end":3687,"gen_start":2972,"node":29,"role":"declaration","source":0,"src_end":1293,"src_start":1053},{"artifact":1,"gen_end":4306,"gen_start":3687,"node":30,"role":"declaration","source":0,"src_end":1462,"src_start":1295},{"artifact":1,"gen_end":4615,"gen_start":4306,"node":31,"role":"declaration","source":0,"src_end":1607,"src_start":1464},{"artifact":1,"gen_end":5004,"gen_start":4615,"node":32,"role":"declaration","source":0,"src_end":1778,"src_start":1609},{"artifact":1,"gen_end":5332,"gen_start":5004,"node":33,"role":"declaration","source":0,"src_end":2049,"src_start":1780},{"artifact":1,"gen_end":5663,"gen_start":5332,"node":34,"role":"declaration","source":0,"src_end":2323,"src_start":2051},{"artifact":1,"gen_end":6806,"gen_start":5663,"node":35,"role":"declaration","source":0,"src_end":2667,"src_start":2325},{"artifact":1,"gen_end":7096,"gen_start":6806,"node":36,"role":"declaration","source":0,"src_end":2872,"src_start":2669},{"artifact":1,"gen_end":12171,"gen_start":7096,"node":37,"role":"declaration","source":0,"src_end":3471,"src_start":2874},{"artifact":1,"gen_end":12456,"gen_start":12171,"node":38,"role":"declaration","source":0,"src_end":4240,"src_start":3473},{"artifact":1,"gen_end":12730,"gen_start":12456,"node":39,"role":"declaration","source":0,"src_end":5002,"src_start":4242},{"artifact":1,"gen_end":14328,"gen_start":12730,"node":40,"role":"declaration","source":0,"src_end":6574,"src_start":5004},{"artifact":1,"gen_end":14683,"gen_start":14328,"node":41,"role":"declaration","source":0,"src_end":6723,"src_start":6576},{"artifact":1,"gen_end":14990,"gen_start":14683,"node":42,"role":"declaration","source":0,"src_end":6963,"src_start":6725},{"artifact":1,"gen_end":15497,"gen_start":14990,"node":43,"role":"declaration","source":0,"src_end":7315,"src_start":6965},{"artifact":1,"gen_end":17615,"gen_start":15497,"node":44,"role":"declaration","source":0,"src_end":7800,"src_start":7317},{"artifact":1,"gen_end":18043,"gen_start":17615,"node":45,"role":"declaration","source":0,"src_end":7961,"src_start":7802},{"artifact":1,"gen_end":18477,"gen_start":18043,"node":46,"role":"declaration","source":0,"src_end":8086,"src_start":7963},{"artifact":1,"gen_end":18853,"gen_start":18477,"node":47,"role":"declaration","source":0,"src_end":8254,"src_start":8088},{"artifact":1,"gen_end":18868,"gen_start":18853,"node":24,"role":"declaration","source":0,"src_end":8290,"src_start":0}],"module":"Recognizer","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-latex-module"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"},{"id":40,"kind":"semantic-declaration"},{"id":41,"kind":"semantic-declaration"},{"id":42,"kind":"semantic-declaration"},{"id":43,"kind":"semantic-declaration"},{"id":44,"kind":"semantic-declaration"},{"id":45,"kind":"semantic-declaration"},{"id":46,"kind":"semantic-declaration"},{"id":47,"kind":"semantic-declaration"}],"semantic_id":"49cf062e918bdc2f8a44a66473c4435ee310d33b78d7093624f025547ab95bfd","source_id":"029a1a5ebafd24dc317957624d7e5417c3a563331be1ac2c56d796c47a51d75f","sources":[{"id":0,"kind":"file","path":"src/Recognizer.lex.tex","sha256":"28bd37cb2876ff04da7a9efddf50a52d3019c64910aca2b806b4b6181e84b04b"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/Models/Recognizer.lean"},{"id":1,"kind":"tex","path":"modules/Models/Recognizer.tex"}],"mappings":[{"artifact":0,"gen_end":377,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":8290,"src_start":0},{"artifact":0,"gen_end":2566,"gen_start":377,"node":1,"role":"declaration","source":0,"src_end":394,"src_start":169},{"artifact":0,"gen_end":3193,"gen_start":2566,"node":2,"role":"declaration","source":0,"src_end":609,"src_start":396},{"artifact":0,"gen_end":5967,"gen_start":3193,"node":3,"role":"declaration","source":0,"src_end":838,"src_start":611},{"artifact":0,"gen_end":6612,"gen_start":5967,"node":4,"role":"declaration","source":0,"src_end":1051,"src_start":840},{"artifact":0,"gen_end":7222,"gen_start":6612,"node":5,"role":"declaration","source":0,"src_end":1293,"src_start":1053},{"artifact":0,"gen_end":7442,"gen_start":7222,"node":6,"role":"declaration","source":0,"src_end":1462,"src_start":1295},{"artifact":0,"gen_end":7580,"gen_start":7442,"node":7,"role":"declaration","source":0,"src_end":1607,"src_start":1464},{"artifact":0,"gen_end":7722,"gen_start":7580,"node":8,"role":"declaration","source":0,"src_end":1778,"src_start":1609},{"artifact":0,"gen_end":10843,"gen_start":7722,"node":9,"role":"declaration","source":0,"src_end":2049,"src_start":1780},{"artifact":0,"gen_end":13967,"gen_start":10843,"node":10,"role":"declaration","source":0,"src_end":2323,"src_start":2051},{"artifact":0,"gen_end":14351,"gen_start":13967,"node":11,"role":"declaration","source":0,"src_end":2667,"src_start":2325},{"artifact":0,"gen_end":14531,"gen_start":14351,"node":12,"role":"declaration","source":0,"src_end":2872,"src_start":2669},{"artifact":0,"gen_end":18440,"gen_start":14531,"node":13,"role":"declaration","source":0,"src_end":3471,"src_start":2874},{"artifact":0,"gen_end":18790,"gen_start":18440,"node":14,"role":"declaration","source":0,"src_end":4240,"src_start":3473},{"artifact":0,"gen_end":19129,"gen_start":18790,"node":15,"role":"declaration","source":0,"src_end":5002,"src_start":4242},{"artifact":0,"gen_end":20581,"gen_start":19129,"node":16,"role":"declaration","source":0,"src_end":6574,"src_start":5004},{"artifact":0,"gen_end":20689,"gen_start":20581,"node":17,"role":"declaration","source":0,"src_end":6723,"src_start":6576},{"artifact":0,"gen_end":23771,"gen_start":20689,"node":18,"role":"declaration","source":0,"src_end":6963,"src_start":6725},{"artifact":0,"gen_end":24109,"gen_start":23771,"node":19,"role":"declaration","source":0,"src_end":7315,"src_start":6965},{"artifact":0,"gen_end":24655,"gen_start":24109,"node":20,"role":"declaration","source":0,"src_end":7800,"src_start":7317},{"artifact":0,"gen_end":24766,"gen_start":24655,"node":21,"role":"declaration","source":0,"src_end":7961,"src_start":7802},{"artifact":0,"gen_end":24880,"gen_start":24766,"node":22,"role":"declaration","source":0,"src_end":8086,"src_start":7963},{"artifact":0,"gen_end":25009,"gen_start":24880,"node":23,"role":"declaration","source":0,"src_end":8254,"src_start":8088},{"artifact":0,"gen_end":25032,"gen_start":25009,"node":0,"role":"declaration","source":0,"src_end":8290,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":24,"role":"declaration","source":0,"src_end":8290,"src_start":0},{"artifact":1,"gen_end":857,"gen_start":134,"node":25,"role":"declaration","source":0,"src_end":394,"src_start":169},{"artifact":1,"gen_end":1552,"gen_start":857,"node":26,"role":"declaration","source":0,"src_end":609,"src_start":396},{"artifact":1,"gen_end":2277,"gen_start":1552,"node":27,"role":"declaration","source":0,"src_end":838,"src_start":611},{"artifact":1,"gen_end":2972,"gen_start":2277,"node":28,"role":"declaration","source":0,"src_end":1051,"src_start":840},{"artifact":1,"gen_end":3687,"gen_start":2972,"node":29,"role":"declaration","source":0,"src_end":1293,"src_start":1053},{"artifact":1,"gen_end":4306,"gen_start":3687,"node":30,"role":"declaration","source":0,"src_end":1462,"src_start":1295},{"artifact":1,"gen_end":4615,"gen_start":4306,"node":31,"role":"declaration","source":0,"src_end":1607,"src_start":1464},{"artifact":1,"gen_end":5004,"gen_start":4615,"node":32,"role":"declaration","source":0,"src_end":1778,"src_start":1609},{"artifact":1,"gen_end":5332,"gen_start":5004,"node":33,"role":"declaration","source":0,"src_end":2049,"src_start":1780},{"artifact":1,"gen_end":5663,"gen_start":5332,"node":34,"role":"declaration","source":0,"src_end":2323,"src_start":2051},{"artifact":1,"gen_end":6806,"gen_start":5663,"node":35,"role":"declaration","source":0,"src_end":2667,"src_start":2325},{"artifact":1,"gen_end":7096,"gen_start":6806,"node":36,"role":"declaration","source":0,"src_end":2872,"src_start":2669},{"artifact":1,"gen_end":12171,"gen_start":7096,"node":37,"role":"declaration","source":0,"src_end":3471,"src_start":2874},{"artifact":1,"gen_end":12456,"gen_start":12171,"node":38,"role":"declaration","source":0,"src_end":4240,"src_start":3473},{"artifact":1,"gen_end":12730,"gen_start":12456,"node":39,"role":"declaration","source":0,"src_end":5002,"src_start":4242},{"artifact":1,"gen_end":14328,"gen_start":12730,"node":40,"role":"declaration","source":0,"src_end":6574,"src_start":5004},{"artifact":1,"gen_end":14683,"gen_start":14328,"node":41,"role":"declaration","source":0,"src_end":6723,"src_start":6576},{"artifact":1,"gen_end":14990,"gen_start":14683,"node":42,"role":"declaration","source":0,"src_end":6963,"src_start":6725},{"artifact":1,"gen_end":15497,"gen_start":14990,"node":43,"role":"declaration","source":0,"src_end":7315,"src_start":6965},{"artifact":1,"gen_end":17615,"gen_start":15497,"node":44,"role":"declaration","source":0,"src_end":7800,"src_start":7317},{"artifact":1,"gen_end":18043,"gen_start":17615,"node":45,"role":"declaration","source":0,"src_end":7961,"src_start":7802},{"artifact":1,"gen_end":18477,"gen_start":18043,"node":46,"role":"declaration","source":0,"src_end":8086,"src_start":7963},{"artifact":1,"gen_end":18853,"gen_start":18477,"node":47,"role":"declaration","source":0,"src_end":8254,"src_start":8088},{"artifact":1,"gen_end":18868,"gen_start":18853,"node":24,"role":"declaration","source":0,"src_end":8290,"src_start":0}],"module":"Recognizer","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-latex-module"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"},{"id":40,"kind":"semantic-declaration"},{"id":41,"kind":"semantic-declaration"},{"id":42,"kind":"semantic-declaration"},{"id":43,"kind":"semantic-declaration"},{"id":44,"kind":"semantic-declaration"},{"id":45,"kind":"semantic-declaration"},{"id":46,"kind":"semantic-declaration"},{"id":47,"kind":"semantic-declaration"}],"semantic_id":"91b57d30cfd6f60128d6c72e374148ef2e79e45a626e878a7c7551c9a29b1534","source_id":"a2b28f35f0ba5d1a28d3832af59389874c0d5e4006af1c81f108c4bed5e405aa","sources":[{"id":0,"kind":"file","path":"src/Recognizer.lex.tex","sha256":"28bd37cb2876ff04da7a9efddf50a52d3019c64910aca2b806b4b6181e84b04b"}],"spec":"lexlean/source-map/1"} diff --git a/examples/models/expected/build/maps/Models/Session.map.json b/examples/models/expected/build/maps/Models/Session.map.json index 4f6257bfa..d96dd6fcd 100644 --- a/examples/models/expected/build/maps/Models/Session.map.json +++ b/examples/models/expected/build/maps/Models/Session.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/Models/Session.lean"},{"id":1,"kind":"tex","path":"modules/Models/Session.tex"}],"mappings":[{"artifact":0,"gen_end":305,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":3686,"src_start":0},{"artifact":0,"gen_end":363,"gen_start":305,"node":1,"role":"declaration","source":0,"src_end":273,"src_start":142},{"artifact":0,"gen_end":462,"gen_start":363,"node":2,"role":"declaration","source":0,"src_end":390,"src_start":275},{"artifact":0,"gen_end":564,"gen_start":462,"node":3,"role":"declaration","source":0,"src_end":533,"src_start":392},{"artifact":0,"gen_end":3672,"gen_start":564,"node":4,"role":"declaration","source":0,"src_end":797,"src_start":535},{"artifact":0,"gen_end":3763,"gen_start":3672,"node":5,"role":"declaration","source":0,"src_end":916,"src_start":799},{"artifact":0,"gen_end":3857,"gen_start":3763,"node":6,"role":"declaration","source":0,"src_end":1061,"src_start":918},{"artifact":0,"gen_end":6923,"gen_start":3857,"node":7,"role":"declaration","source":0,"src_end":1288,"src_start":1063},{"artifact":0,"gen_end":7098,"gen_start":6923,"node":8,"role":"declaration","source":0,"src_end":1496,"src_start":1290},{"artifact":0,"gen_end":7445,"gen_start":7098,"node":9,"role":"declaration","source":0,"src_end":1950,"src_start":1498},{"artifact":0,"gen_end":7936,"gen_start":7445,"node":10,"role":"declaration","source":0,"src_end":2399,"src_start":1952},{"artifact":0,"gen_end":8015,"gen_start":7936,"node":11,"role":"declaration","source":0,"src_end":2518,"src_start":2401},{"artifact":0,"gen_end":11146,"gen_start":8015,"node":12,"role":"declaration","source":0,"src_end":2821,"src_start":2520},{"artifact":0,"gen_end":14340,"gen_start":11146,"node":13,"role":"declaration","source":0,"src_end":3184,"src_start":2823},{"artifact":0,"gen_end":14941,"gen_start":14340,"node":14,"role":"declaration","source":0,"src_end":3501,"src_start":3186},{"artifact":0,"gen_end":15219,"gen_start":14941,"node":15,"role":"declaration","source":0,"src_end":3650,"src_start":3503},{"artifact":0,"gen_end":15239,"gen_start":15219,"node":0,"role":"declaration","source":0,"src_end":3686,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":16,"role":"declaration","source":0,"src_end":3686,"src_start":0},{"artifact":1,"gen_end":303,"gen_start":134,"node":17,"role":"declaration","source":0,"src_end":273,"src_start":142},{"artifact":1,"gen_end":572,"gen_start":303,"node":18,"role":"declaration","source":0,"src_end":390,"src_start":275},{"artifact":1,"gen_end":920,"gen_start":572,"node":19,"role":"declaration","source":0,"src_end":533,"src_start":392},{"artifact":1,"gen_end":1235,"gen_start":920,"node":20,"role":"declaration","source":0,"src_end":797,"src_start":535},{"artifact":1,"gen_end":1497,"gen_start":1235,"node":21,"role":"declaration","source":0,"src_end":916,"src_start":799},{"artifact":1,"gen_end":1838,"gen_start":1497,"node":22,"role":"declaration","source":0,"src_end":1061,"src_start":918},{"artifact":1,"gen_end":2117,"gen_start":1838,"node":23,"role":"declaration","source":0,"src_end":1288,"src_start":1063},{"artifact":1,"gen_end":2463,"gen_start":2117,"node":24,"role":"declaration","source":0,"src_end":1496,"src_start":1290},{"artifact":1,"gen_end":3721,"gen_start":2463,"node":25,"role":"declaration","source":0,"src_end":1950,"src_start":1498},{"artifact":1,"gen_end":4778,"gen_start":3721,"node":26,"role":"declaration","source":0,"src_end":2399,"src_start":1952},{"artifact":1,"gen_end":4964,"gen_start":4778,"node":27,"role":"declaration","source":0,"src_end":2518,"src_start":2401},{"artifact":1,"gen_end":5308,"gen_start":4964,"node":28,"role":"declaration","source":0,"src_end":2821,"src_start":2520},{"artifact":1,"gen_end":5704,"gen_start":5308,"node":29,"role":"declaration","source":0,"src_end":3184,"src_start":2823},{"artifact":1,"gen_end":7335,"gen_start":5704,"node":30,"role":"declaration","source":0,"src_end":3501,"src_start":3186},{"artifact":1,"gen_end":7919,"gen_start":7335,"node":31,"role":"declaration","source":0,"src_end":3650,"src_start":3503},{"artifact":1,"gen_end":7934,"gen_start":7919,"node":16,"role":"declaration","source":0,"src_end":3686,"src_start":0}],"module":"Session","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-latex-module"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"}],"semantic_id":"49cf062e918bdc2f8a44a66473c4435ee310d33b78d7093624f025547ab95bfd","source_id":"029a1a5ebafd24dc317957624d7e5417c3a563331be1ac2c56d796c47a51d75f","sources":[{"id":0,"kind":"file","path":"src/Session.lex.tex","sha256":"0077c43c5251814a8329dc387538b9d0aafb0780238f61ce60bb245e9a15bbb1"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/Models/Session.lean"},{"id":1,"kind":"tex","path":"modules/Models/Session.tex"}],"mappings":[{"artifact":0,"gen_end":305,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":3686,"src_start":0},{"artifact":0,"gen_end":363,"gen_start":305,"node":1,"role":"declaration","source":0,"src_end":273,"src_start":142},{"artifact":0,"gen_end":462,"gen_start":363,"node":2,"role":"declaration","source":0,"src_end":390,"src_start":275},{"artifact":0,"gen_end":564,"gen_start":462,"node":3,"role":"declaration","source":0,"src_end":533,"src_start":392},{"artifact":0,"gen_end":3672,"gen_start":564,"node":4,"role":"declaration","source":0,"src_end":797,"src_start":535},{"artifact":0,"gen_end":3763,"gen_start":3672,"node":5,"role":"declaration","source":0,"src_end":916,"src_start":799},{"artifact":0,"gen_end":3857,"gen_start":3763,"node":6,"role":"declaration","source":0,"src_end":1061,"src_start":918},{"artifact":0,"gen_end":6923,"gen_start":3857,"node":7,"role":"declaration","source":0,"src_end":1288,"src_start":1063},{"artifact":0,"gen_end":7098,"gen_start":6923,"node":8,"role":"declaration","source":0,"src_end":1496,"src_start":1290},{"artifact":0,"gen_end":7445,"gen_start":7098,"node":9,"role":"declaration","source":0,"src_end":1950,"src_start":1498},{"artifact":0,"gen_end":7936,"gen_start":7445,"node":10,"role":"declaration","source":0,"src_end":2399,"src_start":1952},{"artifact":0,"gen_end":8015,"gen_start":7936,"node":11,"role":"declaration","source":0,"src_end":2518,"src_start":2401},{"artifact":0,"gen_end":11146,"gen_start":8015,"node":12,"role":"declaration","source":0,"src_end":2821,"src_start":2520},{"artifact":0,"gen_end":14340,"gen_start":11146,"node":13,"role":"declaration","source":0,"src_end":3184,"src_start":2823},{"artifact":0,"gen_end":14941,"gen_start":14340,"node":14,"role":"declaration","source":0,"src_end":3501,"src_start":3186},{"artifact":0,"gen_end":15219,"gen_start":14941,"node":15,"role":"declaration","source":0,"src_end":3650,"src_start":3503},{"artifact":0,"gen_end":15239,"gen_start":15219,"node":0,"role":"declaration","source":0,"src_end":3686,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":16,"role":"declaration","source":0,"src_end":3686,"src_start":0},{"artifact":1,"gen_end":303,"gen_start":134,"node":17,"role":"declaration","source":0,"src_end":273,"src_start":142},{"artifact":1,"gen_end":572,"gen_start":303,"node":18,"role":"declaration","source":0,"src_end":390,"src_start":275},{"artifact":1,"gen_end":920,"gen_start":572,"node":19,"role":"declaration","source":0,"src_end":533,"src_start":392},{"artifact":1,"gen_end":1235,"gen_start":920,"node":20,"role":"declaration","source":0,"src_end":797,"src_start":535},{"artifact":1,"gen_end":1497,"gen_start":1235,"node":21,"role":"declaration","source":0,"src_end":916,"src_start":799},{"artifact":1,"gen_end":1838,"gen_start":1497,"node":22,"role":"declaration","source":0,"src_end":1061,"src_start":918},{"artifact":1,"gen_end":2117,"gen_start":1838,"node":23,"role":"declaration","source":0,"src_end":1288,"src_start":1063},{"artifact":1,"gen_end":2463,"gen_start":2117,"node":24,"role":"declaration","source":0,"src_end":1496,"src_start":1290},{"artifact":1,"gen_end":3721,"gen_start":2463,"node":25,"role":"declaration","source":0,"src_end":1950,"src_start":1498},{"artifact":1,"gen_end":4778,"gen_start":3721,"node":26,"role":"declaration","source":0,"src_end":2399,"src_start":1952},{"artifact":1,"gen_end":4964,"gen_start":4778,"node":27,"role":"declaration","source":0,"src_end":2518,"src_start":2401},{"artifact":1,"gen_end":5308,"gen_start":4964,"node":28,"role":"declaration","source":0,"src_end":2821,"src_start":2520},{"artifact":1,"gen_end":5704,"gen_start":5308,"node":29,"role":"declaration","source":0,"src_end":3184,"src_start":2823},{"artifact":1,"gen_end":7335,"gen_start":5704,"node":30,"role":"declaration","source":0,"src_end":3501,"src_start":3186},{"artifact":1,"gen_end":7919,"gen_start":7335,"node":31,"role":"declaration","source":0,"src_end":3650,"src_start":3503},{"artifact":1,"gen_end":7934,"gen_start":7919,"node":16,"role":"declaration","source":0,"src_end":3686,"src_start":0}],"module":"Session","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-latex-module"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"}],"semantic_id":"91b57d30cfd6f60128d6c72e374148ef2e79e45a626e878a7c7551c9a29b1534","source_id":"a2b28f35f0ba5d1a28d3832af59389874c0d5e4006af1c81f108c4bed5e405aa","sources":[{"id":0,"kind":"file","path":"src/Session.lex.tex","sha256":"0077c43c5251814a8329dc387538b9d0aafb0780238f61ce60bb245e9a15bbb1"}],"spec":"lexlean/source-map/1"} diff --git a/examples/models/expected/build/maps/Models/Triage.map.json b/examples/models/expected/build/maps/Models/Triage.map.json index 9158f8c00..3d7301678 100644 --- a/examples/models/expected/build/maps/Models/Triage.map.json +++ b/examples/models/expected/build/maps/Models/Triage.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/Models/Triage.lean"},{"id":1,"kind":"tex","path":"modules/Models/Triage.tex"}],"mappings":[{"artifact":0,"gen_end":311,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":6766,"src_start":0},{"artifact":0,"gen_end":404,"gen_start":311,"node":1,"role":"declaration","source":0,"src_end":460,"src_start":140},{"artifact":0,"gen_end":471,"gen_start":404,"node":2,"role":"declaration","source":0,"src_end":651,"src_start":462},{"artifact":0,"gen_end":1246,"gen_start":471,"node":3,"role":"declaration","source":0,"src_end":1488,"src_start":653},{"artifact":0,"gen_end":1554,"gen_start":1246,"node":4,"role":"declaration","source":0,"src_end":1874,"src_start":1490},{"artifact":0,"gen_end":1867,"gen_start":1554,"node":5,"role":"declaration","source":0,"src_end":2265,"src_start":1876},{"artifact":0,"gen_end":2021,"gen_start":1867,"node":6,"role":"declaration","source":0,"src_end":2465,"src_start":2267},{"artifact":0,"gen_end":2173,"gen_start":2021,"node":7,"role":"declaration","source":0,"src_end":2663,"src_start":2467},{"artifact":0,"gen_end":2293,"gen_start":2173,"node":8,"role":"declaration","source":0,"src_end":2803,"src_start":2665},{"artifact":0,"gen_end":2398,"gen_start":2293,"node":9,"role":"declaration","source":0,"src_end":2959,"src_start":2805},{"artifact":0,"gen_end":2743,"gen_start":2398,"node":10,"role":"declaration","source":0,"src_end":3646,"src_start":2961},{"artifact":0,"gen_end":2908,"gen_start":2743,"node":11,"role":"declaration","source":0,"src_end":3830,"src_start":3648},{"artifact":0,"gen_end":3562,"gen_start":2908,"node":12,"role":"declaration","source":0,"src_end":4057,"src_start":3832},{"artifact":0,"gen_end":3914,"gen_start":3562,"node":13,"role":"declaration","source":0,"src_end":4270,"src_start":4059},{"artifact":0,"gen_end":4093,"gen_start":3914,"node":14,"role":"declaration","source":0,"src_end":4559,"src_start":4272},{"artifact":0,"gen_end":4392,"gen_start":4093,"node":15,"role":"declaration","source":0,"src_end":5252,"src_start":4561},{"artifact":0,"gen_end":6504,"gen_start":4392,"node":16,"role":"declaration","source":0,"src_end":5674,"src_start":5254},{"artifact":0,"gen_end":6845,"gen_start":6504,"node":17,"role":"declaration","source":0,"src_end":6376,"src_start":5676},{"artifact":0,"gen_end":7026,"gen_start":6845,"node":18,"role":"declaration","source":0,"src_end":6563,"src_start":6378},{"artifact":0,"gen_end":7160,"gen_start":7026,"node":19,"role":"declaration","source":0,"src_end":6730,"src_start":6565},{"artifact":0,"gen_end":7179,"gen_start":7160,"node":0,"role":"declaration","source":0,"src_end":6766,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":20,"role":"declaration","source":0,"src_end":6766,"src_start":0},{"artifact":1,"gen_end":626,"gen_start":134,"node":21,"role":"declaration","source":0,"src_end":460,"src_start":140},{"artifact":1,"gen_end":867,"gen_start":626,"node":22,"role":"declaration","source":0,"src_end":651,"src_start":462},{"artifact":1,"gen_end":1889,"gen_start":867,"node":23,"role":"declaration","source":0,"src_end":1488,"src_start":653},{"artifact":1,"gen_end":2444,"gen_start":1889,"node":24,"role":"declaration","source":0,"src_end":1874,"src_start":1490},{"artifact":1,"gen_end":3004,"gen_start":2444,"node":25,"role":"declaration","source":0,"src_end":2265,"src_start":1876},{"artifact":1,"gen_end":3405,"gen_start":3004,"node":26,"role":"declaration","source":0,"src_end":2465,"src_start":2267},{"artifact":1,"gen_end":3804,"gen_start":3405,"node":27,"role":"declaration","source":0,"src_end":2663,"src_start":2467},{"artifact":1,"gen_end":4095,"gen_start":3804,"node":28,"role":"declaration","source":0,"src_end":2803,"src_start":2665},{"artifact":1,"gen_end":4447,"gen_start":4095,"node":29,"role":"declaration","source":0,"src_end":2959,"src_start":2805},{"artifact":1,"gen_end":4751,"gen_start":4447,"node":30,"role":"declaration","source":0,"src_end":3646,"src_start":2961},{"artifact":1,"gen_end":5087,"gen_start":4751,"node":31,"role":"declaration","source":0,"src_end":3830,"src_start":3648},{"artifact":1,"gen_end":5810,"gen_start":5087,"node":32,"role":"declaration","source":0,"src_end":4057,"src_start":3832},{"artifact":1,"gen_end":6503,"gen_start":5810,"node":33,"role":"declaration","source":0,"src_end":4270,"src_start":4059},{"artifact":1,"gen_end":7268,"gen_start":6503,"node":34,"role":"declaration","source":0,"src_end":4559,"src_start":4272},{"artifact":1,"gen_end":7549,"gen_start":7268,"node":35,"role":"declaration","source":0,"src_end":5252,"src_start":4561},{"artifact":1,"gen_end":10368,"gen_start":7549,"node":36,"role":"declaration","source":0,"src_end":5674,"src_start":5254},{"artifact":1,"gen_end":10678,"gen_start":10368,"node":37,"role":"declaration","source":0,"src_end":6376,"src_start":5676},{"artifact":1,"gen_end":11359,"gen_start":10678,"node":38,"role":"declaration","source":0,"src_end":6563,"src_start":6378},{"artifact":1,"gen_end":11800,"gen_start":11359,"node":39,"role":"declaration","source":0,"src_end":6730,"src_start":6565},{"artifact":1,"gen_end":11815,"gen_start":11800,"node":20,"role":"declaration","source":0,"src_end":6766,"src_start":0}],"module":"Triage","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-latex-module"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"}],"semantic_id":"49cf062e918bdc2f8a44a66473c4435ee310d33b78d7093624f025547ab95bfd","source_id":"029a1a5ebafd24dc317957624d7e5417c3a563331be1ac2c56d796c47a51d75f","sources":[{"id":0,"kind":"file","path":"src/Triage.lex.tex","sha256":"61ce4693fcb18df340d1f0f9a9a0d29a73912cc4075bd20dcbda09508373808b"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/Models/Triage.lean"},{"id":1,"kind":"tex","path":"modules/Models/Triage.tex"}],"mappings":[{"artifact":0,"gen_end":311,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":6766,"src_start":0},{"artifact":0,"gen_end":404,"gen_start":311,"node":1,"role":"declaration","source":0,"src_end":460,"src_start":140},{"artifact":0,"gen_end":471,"gen_start":404,"node":2,"role":"declaration","source":0,"src_end":651,"src_start":462},{"artifact":0,"gen_end":1246,"gen_start":471,"node":3,"role":"declaration","source":0,"src_end":1488,"src_start":653},{"artifact":0,"gen_end":1554,"gen_start":1246,"node":4,"role":"declaration","source":0,"src_end":1874,"src_start":1490},{"artifact":0,"gen_end":1867,"gen_start":1554,"node":5,"role":"declaration","source":0,"src_end":2265,"src_start":1876},{"artifact":0,"gen_end":2021,"gen_start":1867,"node":6,"role":"declaration","source":0,"src_end":2465,"src_start":2267},{"artifact":0,"gen_end":2173,"gen_start":2021,"node":7,"role":"declaration","source":0,"src_end":2663,"src_start":2467},{"artifact":0,"gen_end":2293,"gen_start":2173,"node":8,"role":"declaration","source":0,"src_end":2803,"src_start":2665},{"artifact":0,"gen_end":2398,"gen_start":2293,"node":9,"role":"declaration","source":0,"src_end":2959,"src_start":2805},{"artifact":0,"gen_end":2743,"gen_start":2398,"node":10,"role":"declaration","source":0,"src_end":3646,"src_start":2961},{"artifact":0,"gen_end":2908,"gen_start":2743,"node":11,"role":"declaration","source":0,"src_end":3830,"src_start":3648},{"artifact":0,"gen_end":3562,"gen_start":2908,"node":12,"role":"declaration","source":0,"src_end":4057,"src_start":3832},{"artifact":0,"gen_end":3914,"gen_start":3562,"node":13,"role":"declaration","source":0,"src_end":4270,"src_start":4059},{"artifact":0,"gen_end":4093,"gen_start":3914,"node":14,"role":"declaration","source":0,"src_end":4559,"src_start":4272},{"artifact":0,"gen_end":4392,"gen_start":4093,"node":15,"role":"declaration","source":0,"src_end":5252,"src_start":4561},{"artifact":0,"gen_end":6504,"gen_start":4392,"node":16,"role":"declaration","source":0,"src_end":5674,"src_start":5254},{"artifact":0,"gen_end":6845,"gen_start":6504,"node":17,"role":"declaration","source":0,"src_end":6376,"src_start":5676},{"artifact":0,"gen_end":7026,"gen_start":6845,"node":18,"role":"declaration","source":0,"src_end":6563,"src_start":6378},{"artifact":0,"gen_end":7160,"gen_start":7026,"node":19,"role":"declaration","source":0,"src_end":6730,"src_start":6565},{"artifact":0,"gen_end":7179,"gen_start":7160,"node":0,"role":"declaration","source":0,"src_end":6766,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":20,"role":"declaration","source":0,"src_end":6766,"src_start":0},{"artifact":1,"gen_end":626,"gen_start":134,"node":21,"role":"declaration","source":0,"src_end":460,"src_start":140},{"artifact":1,"gen_end":867,"gen_start":626,"node":22,"role":"declaration","source":0,"src_end":651,"src_start":462},{"artifact":1,"gen_end":1889,"gen_start":867,"node":23,"role":"declaration","source":0,"src_end":1488,"src_start":653},{"artifact":1,"gen_end":2444,"gen_start":1889,"node":24,"role":"declaration","source":0,"src_end":1874,"src_start":1490},{"artifact":1,"gen_end":3004,"gen_start":2444,"node":25,"role":"declaration","source":0,"src_end":2265,"src_start":1876},{"artifact":1,"gen_end":3405,"gen_start":3004,"node":26,"role":"declaration","source":0,"src_end":2465,"src_start":2267},{"artifact":1,"gen_end":3804,"gen_start":3405,"node":27,"role":"declaration","source":0,"src_end":2663,"src_start":2467},{"artifact":1,"gen_end":4095,"gen_start":3804,"node":28,"role":"declaration","source":0,"src_end":2803,"src_start":2665},{"artifact":1,"gen_end":4447,"gen_start":4095,"node":29,"role":"declaration","source":0,"src_end":2959,"src_start":2805},{"artifact":1,"gen_end":4751,"gen_start":4447,"node":30,"role":"declaration","source":0,"src_end":3646,"src_start":2961},{"artifact":1,"gen_end":5087,"gen_start":4751,"node":31,"role":"declaration","source":0,"src_end":3830,"src_start":3648},{"artifact":1,"gen_end":5810,"gen_start":5087,"node":32,"role":"declaration","source":0,"src_end":4057,"src_start":3832},{"artifact":1,"gen_end":6503,"gen_start":5810,"node":33,"role":"declaration","source":0,"src_end":4270,"src_start":4059},{"artifact":1,"gen_end":7268,"gen_start":6503,"node":34,"role":"declaration","source":0,"src_end":4559,"src_start":4272},{"artifact":1,"gen_end":7549,"gen_start":7268,"node":35,"role":"declaration","source":0,"src_end":5252,"src_start":4561},{"artifact":1,"gen_end":10368,"gen_start":7549,"node":36,"role":"declaration","source":0,"src_end":5674,"src_start":5254},{"artifact":1,"gen_end":10678,"gen_start":10368,"node":37,"role":"declaration","source":0,"src_end":6376,"src_start":5676},{"artifact":1,"gen_end":11359,"gen_start":10678,"node":38,"role":"declaration","source":0,"src_end":6563,"src_start":6378},{"artifact":1,"gen_end":11800,"gen_start":11359,"node":39,"role":"declaration","source":0,"src_end":6730,"src_start":6565},{"artifact":1,"gen_end":11815,"gen_start":11800,"node":20,"role":"declaration","source":0,"src_end":6766,"src_start":0}],"module":"Triage","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-latex-module"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"}],"semantic_id":"91b57d30cfd6f60128d6c72e374148ef2e79e45a626e878a7c7551c9a29b1534","source_id":"a2b28f35f0ba5d1a28d3832af59389874c0d5e4006af1c81f108c4bed5e405aa","sources":[{"id":0,"kind":"file","path":"src/Triage.lex.tex","sha256":"61ce4693fcb18df340d1f0f9a9a0d29a73912cc4075bd20dcbda09508373808b"}],"spec":"lexlean/source-map/1"} diff --git a/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.LexLeanRuntime.Collections.process.json b/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.LexLeanRuntime.Collections.process.json deleted file mode 100644 index fc3520530..000000000 --- a/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.LexLeanRuntime.Collections.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.LexLeanRuntime.Collections.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.LexLeanRuntime.Collections","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanCollections.Key' does not depend on any axioms\n'LexLeanCollections.Key.casesOn' does not depend on any axioms\n'LexLeanCollections.Key.compare' does not depend on any axioms\n'LexLeanCollections.Key.ctorIdx' does not depend on any axioms\n'LexLeanCollections.Key.mk._flat_ctor' does not depend on any axioms\n'LexLeanCollections.Key.mk.noConfusion' does not depend on any axioms\n'LexLeanCollections.Key.noConfusion' does not depend on any axioms\n'LexLeanCollections.Key.noConfusionType' does not depend on any axioms\n'LexLeanCollections.Key.recOn' does not depend on any axioms\n'LexLeanCollections.compareCodes' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._f' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._sunfold' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._unsafe_rec' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.match_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.match_4' does not depend on any axioms\n'LexLeanCollections.containsElement' does not depend on any axioms\n'LexLeanCollections.containsElement._f' does not depend on any axioms\n'LexLeanCollections.containsElement._sunfold' does not depend on any axioms\n'LexLeanCollections.containsElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.graphNodes' does not depend on any axioms\n'LexLeanCollections.graphReachable' depends on axioms: [propext]\n'LexLeanCollections.graphSuccessors' does not depend on any axioms\n'LexLeanCollections.graphTopological' does not depend on any axioms\n'LexLeanCollections.insertElement' does not depend on any axioms\n'LexLeanCollections.insertElement._f' does not depend on any axioms\n'LexLeanCollections.insertElement._sunfold' does not depend on any axioms\n'LexLeanCollections.insertElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.insertElement.match_1' does not depend on any axioms\n'LexLeanCollections.insertEntry' does not depend on any axioms\n'LexLeanCollections.insertEntry._f' does not depend on any axioms\n'LexLeanCollections.insertEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.insertEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.insertEntry.match_1' does not depend on any axioms\n'LexLeanCollections.insertEntry.match_3' does not depend on any axioms\n'LexLeanCollections.instKeyBool' depends on axioms: [propext]\n'LexLeanCollections.instKeyInt' does not depend on any axioms\n'LexLeanCollections.instKeyInt16' does not depend on any axioms\n'LexLeanCollections.instKeyInt32' does not depend on any axioms\n'LexLeanCollections.instKeyInt64' does not depend on any axioms\n'LexLeanCollections.instKeyInt8' does not depend on any axioms\n'LexLeanCollections.instKeyNat' does not depend on any axioms\n'LexLeanCollections.instKeyProd' depends on axioms: [propext]\n'LexLeanCollections.instKeyString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanCollections.instKeyUInt16' does not depend on any axioms\n'LexLeanCollections.instKeyUInt32' does not depend on any axioms\n'LexLeanCollections.instKeyUInt64' does not depend on any axioms\n'LexLeanCollections.instKeyUInt8' does not depend on any axioms\n'LexLeanCollections.iterate' does not depend on any axioms\n'LexLeanCollections.iterate._f' does not depend on any axioms\n'LexLeanCollections.iterate._sunfold' does not depend on any axioms\n'LexLeanCollections.iterate._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.iterate.match_1' does not depend on any axioms\n'LexLeanCollections.iterateUntil' does not depend on any axioms\n'LexLeanCollections.iterateUntil._f' does not depend on any axioms\n'LexLeanCollections.iterateUntil._sunfold' does not depend on any axioms\n'LexLeanCollections.iterateUntil._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.iterateUntil.match_1' does not depend on any axioms\n'LexLeanCollections.lessThan' depends on axioms: [propext]\n'LexLeanCollections.lessThan._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.lessThan.match_1' depends on axioms: [propext]\n'LexLeanCollections.listFold' does not depend on any axioms\n'LexLeanCollections.lookupEntry' does not depend on any axioms\n'LexLeanCollections.lookupEntry._f' does not depend on any axioms\n'LexLeanCollections.lookupEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.lookupEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.mapContains' does not depend on any axioms\n'LexLeanCollections.mapEntries' does not depend on any axioms\n'LexLeanCollections.mapFold' does not depend on any axioms\n'LexLeanCollections.mapInsert' does not depend on any axioms\n'LexLeanCollections.mapKeys' does not depend on any axioms\n'LexLeanCollections.mapLookup' does not depend on any axioms\n'LexLeanCollections.mapRemove' does not depend on any axioms\n'LexLeanCollections.mapSize' does not depend on any axioms\n'LexLeanCollections.mapValues' does not depend on any axioms\n'LexLeanCollections.reachableFrom' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._f' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._sunfold' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._unsafe_rec' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom.match_1' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom.match_4' does not depend on any axioms\n'LexLeanCollections.removeElement' does not depend on any axioms\n'LexLeanCollections.removeElement._f' does not depend on any axioms\n'LexLeanCollections.removeElement._sunfold' does not depend on any axioms\n'LexLeanCollections.removeElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.removeEntry' does not depend on any axioms\n'LexLeanCollections.removeEntry._f' does not depend on any axioms\n'LexLeanCollections.removeEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.removeEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.setContains' does not depend on any axioms\n'LexLeanCollections.setDifference' does not depend on any axioms\n'LexLeanCollections.setElements' does not depend on any axioms\n'LexLeanCollections.setFold' does not depend on any axioms\n'LexLeanCollections.setInsert' does not depend on any axioms\n'LexLeanCollections.setIntersection' does not depend on any axioms\n'LexLeanCollections.setRemove' does not depend on any axioms\n'LexLeanCollections.setSize' does not depend on any axioms\n'LexLeanCollections.setUnion' does not depend on any axioms\n'LexLeanCollections.topological' does not depend on any axioms\n'LexLeanCollections.topological._f' does not depend on any axioms\n'LexLeanCollections.topological._sunfold' does not depend on any axioms\n'LexLeanCollections.topological._unsafe_rec' does not depend on any axioms\n","stdout_sha256":"b75acc0e99e23684c3cc876eacbfc93f47161cfee8a7440df17fa45f321c8c6a","tool":"lean"} diff --git a/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.LexLeanRuntime.Laws.process.json b/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.LexLeanRuntime.Laws.process.json deleted file mode 100644 index 8b29455bb..000000000 --- a/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.LexLeanRuntime.Laws.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.LexLeanRuntime.Laws.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.LexLeanRuntime.Laws","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanCollections.lessThan._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanCollections.lessThan.eq_1' depends on axioms: [propext]\n'LexLeanCollections.listFold.eq_1' does not depend on any axioms\n'LexLeanLaws.append_list' does not depend on any axioms\n'LexLeanLaws.length_list' does not depend on any axioms\n'LexLeanLaws.lessThan_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int16' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int32' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int64' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int8' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_nat' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint16' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint32' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint64' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint8' depends on axioms: [propext]\n'LexLeanLaws.listFold_add_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_add_int_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_add_nat' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_add_nat_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_append' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_cons' does not depend on any axioms\n'LexLeanLaws.listFold_extend' depends on axioms: [propext]\n'LexLeanLaws.listFold_fusion' does not depend on any axioms\n'LexLeanLaws.listFold_nil' does not depend on any axioms\n'LexLeanLaws.listFold_pair' does not depend on any axioms\n'LexLeanLaws.listFold_prepend' depends on axioms: [propext]\n'LexLeanLaws.listFold_sub_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_sub_int_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.mapEntries_self' does not depend on any axioms\n'LexLeanLaws.mapFold_listFold' does not depend on any axioms\n'LexLeanLaws.mapSize_length' does not depend on any axioms\n'LexLeanLaws.quotient_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.quotient_nat' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.remainder_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.remainder_nat' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.setElements_self' does not depend on any axioms\n'LexLeanLaws.setFold_listFold' does not depend on any axioms\n'LexLeanLaws.setSize_length' does not depend on any axioms\n'LexLeanLaws.sumInt' does not depend on any axioms\n'LexLeanLaws.sumInt._f' does not depend on any axioms\n'LexLeanLaws.sumInt._sunfold' does not depend on any axioms\n'LexLeanLaws.sumInt._unsafe_rec' does not depend on any axioms\n'LexLeanLaws.sumInt.eq_1' does not depend on any axioms\n'LexLeanLaws.sumInt.eq_2' does not depend on any axioms\n'LexLeanLaws.sumInt.eq_def' does not depend on any axioms\n'LexLeanLaws.sumInt_add' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_append' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_cons' does not depend on any axioms\n'LexLeanLaws.sumInt_const' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_mul' depends on axioms: [propext]\n'LexLeanLaws.sumInt_mul_right' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_mul_self' depends on axioms: [propext]\n'LexLeanLaws.sumInt_neg' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_neg_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_nil' does not depend on any axioms\n'LexLeanLaws.sumInt_perm' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_reverse' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_sub' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat' does not depend on any axioms\n'LexLeanLaws.sumNat._f' does not depend on any axioms\n'LexLeanLaws.sumNat._sunfold' does not depend on any axioms\n'LexLeanLaws.sumNat._unsafe_rec' does not depend on any axioms\n'LexLeanLaws.sumNat.eq_1' does not depend on any axioms\n'LexLeanLaws.sumNat.eq_2' does not depend on any axioms\n'LexLeanLaws.sumNat.eq_def' does not depend on any axioms\n'LexLeanLaws.sumNat.match_1' does not depend on any axioms\n'LexLeanLaws.sumNat_add' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_append' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_cons' does not depend on any axioms\n'LexLeanLaws.sumNat_const' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_mul' does not depend on any axioms\n'LexLeanLaws.sumNat_mul_right' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_mul_self' does not depend on any axioms\n'LexLeanLaws.sumNat_nil' does not depend on any axioms\n'LexLeanLaws.sumNat_perm' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_reverse' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.tdiv_ediv' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.tmod_emod' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.quotient.eq_1' does not depend on any axioms\n'LexLeanRuntime.remainder.eq_1' does not depend on any axioms\n","stdout_sha256":"a4ba2d39c9cdfd5e40c41c5ccf4726d937fd192fc042b74bb56cc0651e28919e","tool":"lean"} diff --git a/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.LexLeanRuntime.Models.process.json b/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.LexLeanRuntime.Models.process.json deleted file mode 100644 index d20975b12..000000000 --- a/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.LexLeanRuntime.Models.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.LexLeanRuntime.Models.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.LexLeanRuntime.Models","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanModels.Agreement' does not depend on any axioms\n'LexLeanModels.Complete1' does not depend on any axioms\n'LexLeanModels.Complete2' does not depend on any axioms\n'LexLeanModels.Complete4' does not depend on any axioms\n'LexLeanModels.Equivalent' does not depend on any axioms\n'LexLeanModels.EquivalentStep' does not depend on any axioms\n'LexLeanModels.EquivalentStepNoInvariant' does not depend on any axioms\n'LexLeanModels.EquivalentStepNoPrecondition' does not depend on any axioms\n'LexLeanModels.EquivalentStepTotal' does not depend on any axioms\n'LexLeanModels.EquivalentTotal' does not depend on any axioms\n'LexLeanModels.Initial' does not depend on any axioms\n'LexLeanModels.Preserves' does not depend on any axioms\n'LexLeanModels.PreservesTotal' does not depend on any axioms\n'LexLeanModels.Satisfies' does not depend on any axioms\n'LexLeanModels.SatisfiesStep' does not depend on any axioms\n'LexLeanModels.SatisfiesStepNoInvariant' does not depend on any axioms\n'LexLeanModels.SatisfiesStepNoPrecondition' does not depend on any axioms\n'LexLeanModels.SatisfiesStepTotal' does not depend on any axioms\n'LexLeanModels.SatisfiesTotal' does not depend on any axioms\n'LexLeanModels.Sound1' does not depend on any axioms\n'LexLeanModels.Sound2' does not depend on any axioms\n'LexLeanModels.Sound4' does not depend on any axioms\n'LexLeanModels.encodeInt' does not depend on any axioms\n'LexLeanModels.inRange' does not depend on any axioms\n'LexLeanModels.linesMatch' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanModels.tensorMatches' does not depend on any axioms\n'LexLeanModels.utf8Char' does not depend on any axioms\n","stdout_sha256":"43ad1c715570458672aedc9abb1691012eef870f5b804f1e230abb890e49ffee","tool":"lean"} diff --git a/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.LexLeanRuntime.Portable.process.json b/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.LexLeanRuntime.Portable.process.json deleted file mode 100644 index 47effcc90..000000000 --- a/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.LexLeanRuntime.Portable.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.LexLeanRuntime.Portable.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.LexLeanRuntime.Portable","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanRuntime.Appendable' does not depend on any axioms\n'LexLeanRuntime.Appendable.append' does not depend on any axioms\n'LexLeanRuntime.Appendable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Appendable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Appendable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Appendable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Appendable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Appendable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Appendable.recOn' does not depend on any axioms\n'LexLeanRuntime.Decimal' does not depend on any axioms\n'LexLeanRuntime.Decimal.casesOn' does not depend on any axioms\n'LexLeanRuntime.Decimal.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Decimal.format' does not depend on any axioms\n'LexLeanRuntime.Decimal.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Decimal.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Decimal.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Decimal.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Decimal.parse' does not depend on any axioms\n'LexLeanRuntime.Decimal.recOn' does not depend on any axioms\n'LexLeanRuntime.Fixed' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitAnd' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitNot' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitOr' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitXor' does not depend on any axioms\n'LexLeanRuntime.Fixed.casesOn' does not depend on any axioms\n'LexLeanRuntime.Fixed.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Fixed.fromInt' does not depend on any axioms\n'LexLeanRuntime.Fixed.maximum' does not depend on any axioms\n'LexLeanRuntime.Fixed.minimum' does not depend on any axioms\n'LexLeanRuntime.Fixed.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Fixed.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Fixed.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Fixed.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Fixed.recOn' does not depend on any axioms\n'LexLeanRuntime.Fixed.shiftLeft' does not depend on any axioms\n'LexLeanRuntime.Fixed.shiftRight' does not depend on any axioms\n'LexLeanRuntime.Fixed.toToMathInt' does not depend on any axioms\n'LexLeanRuntime.Indexable' does not depend on any axioms\n'LexLeanRuntime.Indexable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Indexable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Indexable.index' does not depend on any axioms\n'LexLeanRuntime.Indexable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Indexable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Indexable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Indexable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Indexable.recOn' does not depend on any axioms\n'LexLeanRuntime.Lengthable' does not depend on any axioms\n'LexLeanRuntime.Lengthable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Lengthable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Lengthable.length' does not depend on any axioms\n'LexLeanRuntime.Lengthable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Lengthable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Lengthable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Lengthable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Lengthable.recOn' does not depend on any axioms\n'LexLeanRuntime.Quotient' does not depend on any axioms\n'LexLeanRuntime.Quotient.casesOn' does not depend on any axioms\n'LexLeanRuntime.Quotient.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Quotient.isZero' does not depend on any axioms\n'LexLeanRuntime.Quotient.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Quotient.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Quotient.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Quotient.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Quotient.quotient' does not depend on any axioms\n'LexLeanRuntime.Quotient.recOn' does not depend on any axioms\n'LexLeanRuntime.Quotient.remainder' does not depend on any axioms\n'LexLeanRuntime.Sliceable' does not depend on any axioms\n'LexLeanRuntime.Sliceable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Sliceable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Sliceable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Sliceable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Sliceable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Sliceable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Sliceable.recOn' does not depend on any axioms\n'LexLeanRuntime.Sliceable.slice' does not depend on any axioms\n'LexLeanRuntime.ToMathInt' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.casesOn' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.noConfusion' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.recOn' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.toInt' does not depend on any axioms\n'LexLeanRuntime.append' does not depend on any axioms\n'LexLeanRuntime.bitAnd' does not depend on any axioms\n'LexLeanRuntime.bitNot' does not depend on any axioms\n'LexLeanRuntime.bitOr' does not depend on any axioms\n'LexLeanRuntime.bitXor' does not depend on any axioms\n'LexLeanRuntime.checkedAdd' does not depend on any axioms\n'LexLeanRuntime.checkedAddInt64' does not depend on any axioms\n'LexLeanRuntime.checkedConvert' does not depend on any axioms\n'LexLeanRuntime.checkedFromInt' does not depend on any axioms\n'LexLeanRuntime.checkedMultiply' does not depend on any axioms\n'LexLeanRuntime.checkedMultiplyInt64' does not depend on any axioms\n'LexLeanRuntime.checkedMultiplyInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.checkedNegate' does not depend on any axioms\n'LexLeanRuntime.checkedNegateInt64' does not depend on any axioms\n'LexLeanRuntime.checkedQuotient' does not depend on any axioms\n'LexLeanRuntime.checkedQuotientInt64' does not depend on any axioms\n'LexLeanRuntime.checkedSubtract' does not depend on any axioms\n'LexLeanRuntime.checkedSubtractInt64' does not depend on any axioms\n'LexLeanRuntime.compareBytes' depends on axioms: [propext]\n'LexLeanRuntime.divideMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._f' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._sunfold' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.equal' does not depend on any axioms\n'LexLeanRuntime.formatDecimal' does not depend on any axioms\n'LexLeanRuntime.index' does not depend on any axioms\n'LexLeanRuntime.instAppendableByteArray' does not depend on any axioms\n'LexLeanRuntime.instAppendableList' does not depend on any axioms\n'LexLeanRuntime.instDecimalInt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instDecimalInt.match_1' does not depend on any axioms\n'LexLeanRuntime.instDecimalOfFixedOfToString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instFixedInt16' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt32' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt64' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt8' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt16' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt32' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt64' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt8' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instIndexableByteArrayUInt8' does not depend on any axioms\n'LexLeanRuntime.instIndexableList' does not depend on any axioms\n'LexLeanRuntime.instLengthableByteArray' does not depend on any axioms\n'LexLeanRuntime.instLengthableList' does not depend on any axioms\n'LexLeanRuntime.instLengthableString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instQuotientInt' does not depend on any axioms\n'LexLeanRuntime.instQuotientNat' does not depend on any axioms\n'LexLeanRuntime.instSliceableByteArray' does not depend on any axioms\n'LexLeanRuntime.instSliceableList' does not depend on any axioms\n'LexLeanRuntime.instToMathIntInt' does not depend on any axioms\n'LexLeanRuntime.join' depends on axioms: [propext]\n'LexLeanRuntime.length' does not depend on any axioms\n'LexLeanRuntime.listIndex' does not depend on any axioms\n'LexLeanRuntime.listIndex._f' does not depend on any axioms\n'LexLeanRuntime.listIndex._sunfold' does not depend on any axioms\n'LexLeanRuntime.listIndex._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.listIndex.match_1' does not depend on any axioms\n'LexLeanRuntime.magnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.multiply' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._f' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._sunfold' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.negate' does not depend on any axioms\n'LexLeanRuntime.parseDecimal' does not depend on any axioms\n'LexLeanRuntime.quotient' does not depend on any axioms\n'LexLeanRuntime.remainder' does not depend on any axioms\n'LexLeanRuntime.shiftLeft' does not depend on any axioms\n'LexLeanRuntime.shiftRight' does not depend on any axioms\n'LexLeanRuntime.signedMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.slice' does not depend on any axioms\n'LexLeanRuntime.splitExact' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.subtract' does not depend on any axioms\n'LexLeanRuntime.utf8Decode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.utf8Encode' does not depend on any axioms\n","stdout_sha256":"73fea1d9e9e9f0a2f1363b9f284eeeb9e434430e9fa910260b9526bad864641e","tool":"lean"} diff --git a/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Flows.process.json b/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Flows.process.json deleted file mode 100644 index f37d5dde9..000000000 --- a/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Flows.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Flows.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Flows","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Models.Flows.BothCapped' does not depend on any axioms\n'Models.Flows.BranchContract.invariant_sound' depends on axioms: [propext]\n'Models.Flows.BranchContract.precondition_sound' depends on axioms: [propext]\n'Models.Flows.BranchModel' does not depend on any axioms\n'Models.Flows.BranchModel.initial' does not depend on any axioms\n'Models.Flows.ChainContract.invariant_sound' depends on axioms: [propext]\n'Models.Flows.ChainContract.precondition_sound' depends on axioms: [propext]\n'Models.Flows.ChainModel' does not depend on any axioms\n'Models.Flows.ChainModel.initial' does not depend on any axioms\n'Models.Flows.ClampBoth' does not depend on any axioms\n'Models.Flows.ClampBoth.initial' does not depend on any axioms\n'Models.Flows.ClampGuess' does not depend on any axioms\n'Models.Flows.ClampGuess.initial' does not depend on any axioms\n'Models.Flows.ClampOrTally' does not depend on any axioms\n'Models.Flows.ClampOrTally.initial' does not depend on any axioms\n'Models.Flows.ClampTally' does not depend on any axioms\n'Models.Flows.ClampTally.initial' does not depend on any axioms\n'Models.Flows.Drain' does not depend on any axioms\n'Models.Flows.Drain.initial' does not depend on any axioms\n'Models.Flows.DrainChainModel' does not depend on any axioms\n'Models.Flows.DrainChainModel.initial' does not depend on any axioms\n'Models.Flows.DrainModel' does not depend on any axioms\n'Models.Flows.DrainModel.initial' does not depend on any axioms\n'Models.Flows.Few' does not depend on any axioms\n'Models.Flows.FlowContract.invariant_sound' depends on axioms: [propext]\n'Models.Flows.FlowModel' does not depend on any axioms\n'Models.Flows.FlowModel.initial' does not depend on any axioms\n'Models.Flows.GuessOvershoot' does not depend on any axioms\n'Models.Flows.GuessTwice' does not depend on any axioms\n'Models.Flows.OvershootPairModel' does not depend on any axioms\n'Models.Flows.PairClampContract.invariant_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Models.Flows.PairClampModel' does not depend on any axioms\n'Models.Flows.PairClampModel.initial' does not depend on any axioms\n'Models.Flows.PairGuessContract.precondition_sound' depends on axioms: [propext]\n'Models.Flows.PairGuessModel' does not depend on any axioms\n'Models.Flows.RawChainContract.invariant_sound' depends on axioms: [propext]\n'Models.Flows.RawChainModel' does not depend on any axioms\n'Models.Flows.RawChainModel.initial' does not depend on any axioms\n'Models.Flows.SpillStream' does not depend on any axioms\n'Models.Flows.SpillStreamContract.precondition_sound' depends on axioms: [propext]\n'Models.Flows.SpillStreamModel' does not depend on any axioms\n'Models.Flows.SpillTally' does not depend on any axioms\n'Models.Flows.SpillTally.initial' does not depend on any axioms\n'Models.Flows.TallyDrain' does not depend on any axioms\n'Models.Flows.TallyDrain.initial' does not depend on any axioms\n'Models.Flows.TallySpillRaw' does not depend on any axioms\n'Models.Flows.TallySpillRaw.initial' does not depend on any axioms\n'Models.Flows.TwinCapped' does not depend on any axioms\n'Models.Flows.TwinContract.invariant_sound' depends on axioms: [propext]\n'Models.Flows.TwinContract.precondition_sound' depends on axioms: [propext]\n'Models.Flows.TwinModel' does not depend on any axioms\n'Models.Flows.TwinModel.initial' does not depend on any axioms\n'Models.Flows.TwinSmall' does not depend on any axioms\n'Models.Flows.bothCappedCheck' does not depend on any axioms\n'Models.Flows.both_capped_check_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Models.Flows.both_entry_left' depends on axioms: [propext, Quot.sound]\n'Models.Flows.both_entry_right' depends on axioms: [propext, Quot.sound]\n'Models.Flows.branch_entry_else' does not depend on any axioms\n'Models.Flows.branch_entry_then' does not depend on any axioms\n'Models.Flows.chain_entry_invariant' does not depend on any axioms\n'Models.Flows.chain_entry_precondition' does not depend on any axioms\n'Models.Flows.fewCheck' does not depend on any axioms\n'Models.Flows.few_check_sound' depends on axioms: [propext]\n'Models.Flows.flow_capped_sound' depends on axioms: [propext]\n'Models.Flows.flow_entry' does not depend on any axioms\n'Models.Flows.pair_entry_left' does not depend on any axioms\n'Models.Flows.pair_entry_right' does not depend on any axioms\n'Models.Flows.pair_within_sound' depends on axioms: [propext]\n'Models.Flows.spill_tally' does not depend on any axioms\n'Models.Flows.twinCappedCheck' does not depend on any axioms\n'Models.Flows.twinSmallCheck' does not depend on any axioms\n'Models.Flows.twin_capped_check_sound' depends on axioms: [propext]\n'Models.Flows.twin_entry_left' does not depend on any axioms\n'Models.Flows.twin_entry_right' does not depend on any axioms\n'Models.Flows.twin_small_check_sound' depends on axioms: [propext]\n","stdout_sha256":"090ddb641a708c3d8e10daed419a524c1203ac41b5b8ae709a5dd78aea4fbf2b","tool":"lean"} diff --git a/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Glyphs.process.json b/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Glyphs.process.json deleted file mode 100644 index 9f11d8307..000000000 --- a/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Glyphs.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Glyphs.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Glyphs","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Models.Glyphs.Glyph' does not depend on any axioms\n'Models.Glyphs.digitOf' does not depend on any axioms\n'Models.Glyphs.encode' does not depend on any axioms\n'Models.Glyphs.encode_width' does not depend on any axioms\n'Models.Glyphs.isEight' does not depend on any axioms\n'Models.Glyphs.segmentCount' does not depend on any axioms\n","stdout_sha256":"1764c5768cb6db2798341b7ddfaf8b768b57d2bb29d42349f16699721cb3527c","tool":"lean"} diff --git a/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Ledger.process.json b/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Ledger.process.json deleted file mode 100644 index 61b9e609e..000000000 --- a/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Ledger.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Ledger.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Ledger","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Models.Ledger.Below' does not depend on any axioms\n'Models.Ledger.CapContract.invariant_complete' depends on axioms: [propext]\n'Models.Ledger.CapContract.invariant_sound' depends on axioms: [propext]\n'Models.Ledger.CapContract.postcondition_sound' depends on axioms: [propext]\n'Models.Ledger.Capped' does not depend on any axioms\n'Models.Ledger.Clamp' does not depend on any axioms\n'Models.Ledger.Clamp.initial' does not depend on any axioms\n'Models.Ledger.ClampEvidence.clamp_grows' depends on axioms: [propext, Quot.sound]\n'Models.Ledger.ClampEvidence.clamp_initial' does not depend on any axioms\n'Models.Ledger.ClampEvidence.clamp_preserves' depends on axioms: [propext, Quot.sound]\n'Models.Ledger.ClampEvidence.clamp_reference' depends on axioms: [propext]\n'Models.Ledger.ClampModel' does not depend on any axioms\n'Models.Ledger.ClampModel.initial' does not depend on any axioms\n'Models.Ledger.FreeContract.postcondition_sound' depends on axioms: [propext]\n'Models.Ledger.FreeEvidence.tally_free_grows' depends on axioms: [propext, Quot.sound]\n'Models.Ledger.FreeEvidence.tally_free_reference' depends on axioms: [propext]\n'Models.Ledger.FreeModel' does not depend on any axioms\n'Models.Ledger.FreeModel.initial' does not depend on any axioms\n'Models.Ledger.Grows' does not depend on any axioms\n'Models.Ledger.Guess' does not depend on any axioms\n'Models.Ledger.GuessContract.postcondition_sound' depends on axioms: [propext]\n'Models.Ledger.GuessContract.precondition_complete' depends on axioms: [propext]\n'Models.Ledger.GuessContract.precondition_sound' depends on axioms: [propext]\n'Models.Ledger.GuessEquivalence.guess_reference' depends on axioms: [propext]\n'Models.Ledger.GuessExactModel' does not depend on any axioms\n'Models.Ledger.GuessModel' does not depend on any axioms\n'Models.Ledger.GuessSample.guess_agreement' does not depend on any axioms\n'Models.Ledger.LedgerContract.invariant_complete' depends on axioms: [propext]\n'Models.Ledger.LedgerContract.invariant_sound' depends on axioms: [propext]\n'Models.Ledger.LedgerContract.postcondition_complete' depends on axioms: [propext]\n'Models.Ledger.LedgerContract.postcondition_sound' depends on axioms: [propext]\n'Models.Ledger.LedgerContract.precondition_sound' depends on axioms: [propext]\n'Models.Ledger.Overshoot' does not depend on any axioms\n'Models.Ledger.OvershootModel' does not depend on any axioms\n'Models.Ledger.Small' does not depend on any axioms\n'Models.Ledger.Spill' does not depend on any axioms\n'Models.Ledger.Spill.initial' does not depend on any axioms\n'Models.Ledger.SpillEvidence.spill_grows' depends on axioms: [propext, Quot.sound]\n'Models.Ledger.SpillModel' does not depend on any axioms\n'Models.Ledger.SpillModel.initial' does not depend on any axioms\n'Models.Ledger.SpillRawModel' does not depend on any axioms\n'Models.Ledger.SpillRawModel.initial' does not depend on any axioms\n'Models.Ledger.SpillReference.spill_reference' depends on axioms: [propext]\n'Models.Ledger.Tally' does not depend on any axioms\n'Models.Ledger.Tally.initial' does not depend on any axioms\n'Models.Ledger.TallyContract.postcondition_sound' depends on axioms: [propext]\n'Models.Ledger.TallyContract.precondition_sound' depends on axioms: [propext]\n'Models.Ledger.TallyEvidence.tally_grows' depends on axioms: [propext, Quot.sound]\n'Models.Ledger.TallyEvidence.tally_reference' depends on axioms: [propext]\n'Models.Ledger.TallyModel' does not depend on any axioms\n'Models.Ledger.TallyModel.initial' does not depend on any axioms\n'Models.Ledger.Within' does not depend on any axioms\n'Models.Ledger.belowCheck' does not depend on any axioms\n'Models.Ledger.below_check_sound' depends on axioms: [propext]\n'Models.Ledger.cappedCheck' does not depend on any axioms\n'Models.Ledger.capped_check_complete' depends on axioms: [propext]\n'Models.Ledger.capped_check_sound' depends on axioms: [propext]\n'Models.Ledger.clampRef' does not depend on any axioms\n'Models.Ledger.clamp_grows' depends on axioms: [propext, Quot.sound]\n'Models.Ledger.clamp_initial' does not depend on any axioms\n'Models.Ledger.clamp_preserves' depends on axioms: [propext, Quot.sound]\n'Models.Ledger.clamp_reference' depends on axioms: [propext]\n'Models.Ledger.growsCheck' does not depend on any axioms\n'Models.Ledger.grows_check_complete' depends on axioms: [propext]\n'Models.Ledger.grows_check_sound' depends on axioms: [propext]\n'Models.Ledger.guessRef' does not depend on any axioms\n'Models.Ledger.guessSamples' does not depend on any axioms\n'Models.Ledger.guess_agreement' does not depend on any axioms\n'Models.Ledger.guess_reference' depends on axioms: [propext]\n'Models.Ledger.sameNat' does not depend on any axioms\n'Models.Ledger.same_nat_sound' depends on axioms: [propext]\n'Models.Ledger.smallCheck' does not depend on any axioms\n'Models.Ledger.small_check_sound' depends on axioms: [propext]\n'Models.Ledger.spillRef' does not depend on any axioms\n'Models.Ledger.spill_grows' depends on axioms: [propext, Quot.sound]\n'Models.Ledger.spill_reference' depends on axioms: [propext]\n'Models.Ledger.tallyRef' does not depend on any axioms\n'Models.Ledger.tally_free_grows' depends on axioms: [propext, Quot.sound]\n'Models.Ledger.tally_free_reference' depends on axioms: [propext]\n'Models.Ledger.tally_grows' depends on axioms: [propext, Quot.sound]\n'Models.Ledger.tally_reference' depends on axioms: [propext]\n'Models.Ledger.violationCode' does not depend on any axioms\n'Models.Ledger.withinCheck' does not depend on any axioms\n'Models.Ledger.within_check_complete' depends on axioms: [propext]\n'Models.Ledger.within_check_sound' depends on axioms: [propext]\n","stdout_sha256":"0906cff53c4ed452adb799c9fa7c1d2a73a86b3cc74b745342ac5245b8acf079","tool":"lean"} diff --git a/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Main.process.json b/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Main.process.json deleted file mode 100644 index 5082ab241..000000000 --- a/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Main.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Main.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Main","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Models.Main.admission' does not depend on any axioms\n'Models.Main.admitCosts' does not depend on any axioms\n'Models.Main.admit_accepts_cheap' does not depend on any axioms\n'Models.Main.admit_rejects_costly' does not depend on any axioms\n'Models.Main.branchCode' does not depend on any axioms\n'Models.Main.branchStep' does not depend on any axioms\n'Models.Main.branch_refuses_precondition' does not depend on any axioms\n'Models.Main.branch_takes_else' does not depend on any axioms\n'Models.Main.branch_takes_then' does not depend on any axioms\n'Models.Main.chainCode' does not depend on any axioms\n'Models.Main.chainStep' does not depend on any axioms\n'Models.Main.chain_accepts' does not depend on any axioms\n'Models.Main.chain_refuses_precondition' does not depend on any axioms\n'Models.Main.chain_refuses_stage_output' does not depend on any axioms\n'Models.Main.classify' depends on axioms: [propext]\n'Models.Main.classifyChecked' depends on axioms: [propext]\n'Models.Main.classify_eight' depends on axioms: [propext]\n'Models.Main.drainChainStep' does not depend on any axioms\n'Models.Main.drain_chain_accepts' does not depend on any axioms\n'Models.Main.drain_chain_refuses_postcondition' does not depend on any axioms\n'Models.Main.flowCode' does not depend on any axioms\n'Models.Main.flowStep' does not depend on any axioms\n'Models.Main.flow_accepts' does not depend on any axioms\n'Models.Main.flow_refuses_input' does not depend on any axioms\n'Models.Main.flow_refuses_junction' does not depend on any axioms\n'Models.Main.guessChecked' does not depend on any axioms\n'Models.Main.guessOvershoot' does not depend on any axioms\n'Models.Main.guessTwice' does not depend on any axioms\n'Models.Main.guess_accepts' does not depend on any axioms\n'Models.Main.guess_refuses_precondition' does not depend on any axioms\n'Models.Main.ledgerFull' does not depend on any axioms\n'Models.Main.ledgerPost' does not depend on any axioms\n'Models.Main.ledger_accepts' does not depend on any axioms\n'Models.Main.ledger_full_accepts' does not depend on any axioms\n'Models.Main.ledger_full_refuses_output' does not depend on any axioms\n'Models.Main.ledger_refuses_input' does not depend on any axioms\n'Models.Main.ledger_refuses_output' does not depend on any axioms\n'Models.Main.ledger_refuses_precondition' does not depend on any axioms\n'Models.Main.overshootChecked' does not depend on any axioms\n'Models.Main.overshoot_pair_refuses_postcondition' does not depend on any axioms\n'Models.Main.overshoot_refuses_postcondition' does not depend on any axioms\n'Models.Main.pairClamp' does not depend on any axioms\n'Models.Main.pair_clamp_accepts' does not depend on any axioms\n'Models.Main.pair_clamp_refuses_input' does not depend on any axioms\n'Models.Main.quadCode' does not depend on any axioms\n'Models.Main.rawChainStep' does not depend on any axioms\n'Models.Main.raw_chain_accepts' does not depend on any axioms\n'Models.Main.raw_chain_refuses_input' does not depend on any axioms\n'Models.Main.raw_chain_refuses_precondition' does not depend on any axioms\n'Models.Main.respond' depends on axioms: [propext]\n'Models.Main.spillStream' does not depend on any axioms\n'Models.Main.step' does not depend on any axioms\n'Models.Main.stepCode' does not depend on any axioms\n'Models.Main.streamCode' does not depend on any axioms\n'Models.Main.stream_accepts' does not depend on any axioms\n'Models.Main.stream_refuses_output' does not depend on any axioms\n'Models.Main.twiceCode' does not depend on any axioms\n'Models.Main.twice_accepts' does not depend on any axioms\n'Models.Main.twice_refuses' does not depend on any axioms\n'Models.Main.twinStep' does not depend on any axioms\n'Models.Main.twin_accepts' does not depend on any axioms\n'Models.Main.twin_refuses_input' does not depend on any axioms\n'Models.Main.twin_refuses_precondition' does not depend on any axioms\n'Models.Main.valueCode' does not depend on any axioms\n","stdout_sha256":"e3d25ec7612d3d524a16f7635c0ff54fe7ee057f27ef341f9b384b0161610666","tool":"lean"} diff --git a/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Pipeline.process.json b/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Pipeline.process.json deleted file mode 100644 index 1e8216508..000000000 --- a/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Pipeline.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Pipeline.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Pipeline","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Models.Pipeline.Answered' does not depend on any axioms\n'Models.Pipeline.Bounded9' does not depend on any axioms\n'Models.Pipeline.CheckedEvidence.checked_answers' depends on axioms: [propext]\n'Models.Pipeline.CheckedModel' depends on axioms: [propext]\n'Models.Pipeline.CheckedPipeline' depends on axioms: [propext]\n'Models.Pipeline.GlyphPair' does not depend on any axioms\n'Models.Pipeline.GlyphReport' depends on axioms: [propext]\n'Models.Pipeline.GlyphRoute' depends on axioms: [propext]\n'Models.Pipeline.Lit' does not depend on any axioms\n'Models.Pipeline.PairEvidence.pair_correct' does not depend on any axioms\n'Models.Pipeline.PairLit' does not depend on any axioms\n'Models.Pipeline.PairModel' does not depend on any axioms\n'Models.Pipeline.PipelineContract.precondition_sound' does not depend on any axioms\n'Models.Pipeline.PipelineEvidence.pipeline_responds' depends on axioms: [propext]\n'Models.Pipeline.PipelineModel' depends on axioms: [propext]\n'Models.Pipeline.ReportEvidence.report_correct' depends on axioms: [propext]\n'Models.Pipeline.ReportModel' depends on axioms: [propext]\n'Models.Pipeline.Reported' does not depend on any axioms\n'Models.Pipeline.Responds' does not depend on any axioms\n'Models.Pipeline.RouteEvidence.route_bounded' depends on axioms: [propext]\n'Models.Pipeline.RouteModel' depends on axioms: [propext]\n'Models.Pipeline.SegmentCounter' does not depend on any axioms\n'Models.Pipeline.SegmentEvidence.segments_lit' does not depend on any axioms\n'Models.Pipeline.SegmentModel' does not depend on any axioms\n'Models.Pipeline.SessionStream' does not depend on any axioms\n'Models.Pipeline.ShortStream' does not depend on any axioms\n'Models.Pipeline.StreamContract.precondition_sound' depends on axioms: [propext, Quot.sound]\n'Models.Pipeline.StreamModel' does not depend on any axioms\n'Models.Pipeline.TriagePipeline' depends on axioms: [propext]\n'Models.Pipeline.checked_answers' depends on axioms: [propext]\n'Models.Pipeline.pair_correct' does not depend on any axioms\n'Models.Pipeline.pipeline_entry' does not depend on any axioms\n'Models.Pipeline.pipeline_responds' depends on axioms: [propext]\n'Models.Pipeline.report_correct' depends on axioms: [propext]\n'Models.Pipeline.resultCode' does not depend on any axioms\n'Models.Pipeline.route_bounded' depends on axioms: [propext]\n'Models.Pipeline.segments_lit' does not depend on any axioms\n'Models.Pipeline.shortStreamCheck' does not depend on any axioms\n'Models.Pipeline.short_stream_check_sound' depends on axioms: [propext, Quot.sound]\n'Models.Pipeline.symptomatic_sound' does not depend on any axioms\n'Models.Pipeline.triage_actionable' depends on axioms: [propext]\n","stdout_sha256":"0dc16ef42f1b4fafea1004c5a0e46ae569ddbec65791ac9fc89c029e62401683","tool":"lean"} diff --git a/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Policy.process.json b/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Policy.process.json deleted file mode 100644 index 472234f9c..000000000 --- a/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Policy.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Policy.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Policy","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Models.Policy.Actionable' does not depend on any axioms\n'Models.Policy.Escalates' does not depend on any axioms\n'Models.Policy.PolicyContract.precondition_complete' does not depend on any axioms\n'Models.Policy.PolicyContract.precondition_sound' does not depend on any axioms\n'Models.Policy.PolicyEvidence.policy_escalates' does not depend on any axioms\n'Models.Policy.PolicyModel' does not depend on any axioms\n'Models.Policy.PolicyRules' does not depend on any axioms\n'Models.Policy.PolicyRules.selected' does not depend on any axioms\n'Models.Policy.actionableCheck' does not depend on any axioms\n'Models.Policy.actionable_check_complete' does not depend on any axioms\n'Models.Policy.actionable_check_sound' does not depend on any axioms\n'Models.Policy.emergency_dispatches' does not depend on any axioms\n'Models.Policy.isUrgent' does not depend on any axioms\n'Models.Policy.policy_escalates' does not depend on any axioms\n","stdout_sha256":"270b3535085cfe0cb7e75fc0f2df214d0fd2ec13f84dd5ee6c2c74e95db97b61","tool":"lean"} diff --git a/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Recognizer.process.json b/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Recognizer.process.json deleted file mode 100644 index fec0c1c40..000000000 --- a/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Recognizer.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Recognizer.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Recognizer","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Models.Recognizer.DigitContract.postcondition_complete' depends on axioms: [propext]\n'Models.Recognizer.DigitContract.postcondition_sound' depends on axioms: [propext]\n'Models.Recognizer.DigitEvidence.digit_net_correct' depends on axioms: [propext]\n'Models.Recognizer.DigitEvidence.digit_net_exact' depends on axioms: [propext]\n'Models.Recognizer.DigitEvidence.labeled_agreement' depends on axioms: [propext]\n'Models.Recognizer.DigitModel' depends on axioms: [propext]\n'Models.Recognizer.DigitNet' depends on axioms: [propext]\n'Models.Recognizer.DigitNet.encoded' does not depend on any axioms\n'Models.Recognizer.DigitNet.layer1' does not depend on any axioms\n'Models.Recognizer.DigitNet.layer2' depends on axioms: [propext]\n'Models.Recognizer.DigitNet.layer3' depends on axioms: [propext]\n'Models.Recognizer.DigitNet.layer4' does not depend on any axioms\n'Models.Recognizer.DigitNet.logits' depends on axioms: [propext]\n'Models.Recognizer.RawDigitModel' depends on axioms: [propext]\n'Models.Recognizer.Recognizes' does not depend on any axioms\n'Models.Recognizer.banner' does not depend on any axioms\n'Models.Recognizer.banner.bytes' does not depend on any axioms\n'Models.Recognizer.banner.decoded' does not depend on any axioms\n'Models.Recognizer.digitName' does not depend on any axioms\n'Models.Recognizer.digitNames' does not depend on any axioms\n'Models.Recognizer.digitNames.bytes' does not depend on any axioms\n'Models.Recognizer.digitNames.decoded' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Models.Recognizer.digit_net_correct' depends on axioms: [propext]\n'Models.Recognizer.digit_net_exact' depends on axioms: [propext]\n'Models.Recognizer.digit_net_width' does not depend on any axioms\n'Models.Recognizer.hiddenBias' does not depend on any axioms\n'Models.Recognizer.hiddenBias.bytes' does not depend on any axioms\n'Models.Recognizer.hiddenBias.decoded' does not depend on any axioms\n'Models.Recognizer.hiddenWeights' does not depend on any axioms\n'Models.Recognizer.hiddenWeights.bytes' does not depend on any axioms\n'Models.Recognizer.hiddenWeights.decoded' does not depend on any axioms\n'Models.Recognizer.labeledGlyphs' does not depend on any axioms\n'Models.Recognizer.labeled_agreement' depends on axioms: [propext]\n'Models.Recognizer.outputBias' does not depend on any axioms\n'Models.Recognizer.outputBias.bytes' does not depend on any axioms\n'Models.Recognizer.outputBias.decoded' does not depend on any axioms\n'Models.Recognizer.outputWeights' does not depend on any axioms\n'Models.Recognizer.outputWeights.bytes' does not depend on any axioms\n'Models.Recognizer.outputWeights.decoded' does not depend on any axioms\n'Models.Recognizer.recognizesCheck' does not depend on any axioms\n'Models.Recognizer.recognizes_check_complete' depends on axioms: [propext]\n'Models.Recognizer.recognizes_check_sound' depends on axioms: [propext]\n'Models.Recognizer.sameDigit' does not depend on any axioms\n'Models.Recognizer.same_digit_sound' depends on axioms: [propext]\n","stdout_sha256":"60af4cd88341dc6ed70fd6c68abe9115fc2ca32ba7267d0e09c06d781e05bb3f","tool":"lean"} diff --git a/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Session.process.json b/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Session.process.json deleted file mode 100644 index 3dc7f958a..000000000 --- a/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Session.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Session.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Session","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Models.Session.Affordable' does not depend on any axioms\n'Models.Session.Bounded' does not depend on any axioms\n'Models.Session.Conserves' does not depend on any axioms\n'Models.Session.SessionContract.invariant_sound' depends on axioms: [propext]\n'Models.Session.SessionContract.precondition_sound' depends on axioms: [propext]\n'Models.Session.SessionEvidence.session_conserves' depends on axioms: [propext, Quot.sound]\n'Models.Session.SessionEvidence.session_initial' does not depend on any axioms\n'Models.Session.SessionEvidence.session_preserves' depends on axioms: [propext, Quot.sound]\n'Models.Session.SessionModel' does not depend on any axioms\n'Models.Session.SessionModel.initial' does not depend on any axioms\n'Models.Session.SessionStep' does not depend on any axioms\n'Models.Session.SessionStep.initial' does not depend on any axioms\n'Models.Session.Window' does not depend on any axioms\n'Models.Session.affordableCheck' does not depend on any axioms\n'Models.Session.affordable_check_sound' depends on axioms: [propext]\n'Models.Session.boundedCheck' does not depend on any axioms\n'Models.Session.bounded_check_sound' depends on axioms: [propext]\n'Models.Session.session_conserves' depends on axioms: [propext, Quot.sound]\n'Models.Session.session_initial' does not depend on any axioms\n'Models.Session.session_preserves' depends on axioms: [propext, Quot.sound]\n","stdout_sha256":"5b3dd4ed72a0f66dee11301a85b919df9929b103d83b10386079e5666ff0ca8c","tool":"lean"} diff --git a/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Triage.process.json b/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Triage.process.json deleted file mode 100644 index c90410840..000000000 --- a/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Triage.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Triage.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Triage","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Models.Triage.Level' does not depend on any axioms\n'Models.Triage.Presentation' does not depend on any axioms\n'Models.Triage.Safe' does not depend on any axioms\n'Models.Triage.Symptomatic' does not depend on any axioms\n'Models.Triage.TriageContract.precondition_sound' does not depend on any axioms\n'Models.Triage.TriageEvidence.triage_safe' depends on axioms: [propext]\n'Models.Triage.TriageModel' depends on axioms: [propext]\n'Models.Triage.TriageScore' depends on axioms: [propext]\n'Models.Triage.TriageScore.features' does not depend on any axioms\n'Models.Triage.TriageScore.scores' does not depend on any axioms\n'Models.Triage.features' does not depend on any axioms\n'Models.Triage.hasSymptom' does not depend on any axioms\n'Models.Triage.isBreathless' does not depend on any axioms\n'Models.Triage.isEmergency' does not depend on any axioms\n'Models.Triage.isRoutine' does not depend on any axioms\n'Models.Triage.symptomaticCheck' does not depend on any axioms\n'Models.Triage.symptomatic_check_sound' does not depend on any axioms\n'Models.Triage.triageBias' does not depend on any axioms\n'Models.Triage.triageBias.bytes' does not depend on any axioms\n'Models.Triage.triageBias.decoded' does not depend on any axioms\n'Models.Triage.triageWeights' does not depend on any axioms\n'Models.Triage.triageWeights.bytes' does not depend on any axioms\n'Models.Triage.triageWeights.decoded' does not depend on any axioms\n'Models.Triage.triage_safe' depends on axioms: [propext]\n'Models.Triage.triage_width' does not depend on any axioms\n","stdout_sha256":"8f5494414737d009f24637a313c3f98408cfea4d290db1d9285d4af1f3d9525c","tool":"lean"} diff --git a/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.LexLeanRuntime.Collections.lean b/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.LexLeanRuntime.Collections.lean similarity index 100% rename from examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.LexLeanRuntime.Collections.lean rename to examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.LexLeanRuntime.Collections.lean diff --git a/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.LexLeanRuntime.Collections.process.json b/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.LexLeanRuntime.Collections.process.json new file mode 100644 index 000000000..cd1d0d0a5 --- /dev/null +++ b/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.LexLeanRuntime.Collections.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.LexLeanRuntime.Collections.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.LexLeanRuntime.Collections","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanCollections.Key' does not depend on any axioms\n'LexLeanCollections.Key.casesOn' does not depend on any axioms\n'LexLeanCollections.Key.compare' does not depend on any axioms\n'LexLeanCollections.Key.ctorIdx' does not depend on any axioms\n'LexLeanCollections.Key.mk._flat_ctor' does not depend on any axioms\n'LexLeanCollections.Key.mk.noConfusion' does not depend on any axioms\n'LexLeanCollections.Key.noConfusion' does not depend on any axioms\n'LexLeanCollections.Key.noConfusionType' does not depend on any axioms\n'LexLeanCollections.Key.recOn' does not depend on any axioms\n'LexLeanCollections.compareCodes' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._f' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._sunfold' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._unsafe_rec' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.match_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.match_4' does not depend on any axioms\n'LexLeanCollections.containsElement' does not depend on any axioms\n'LexLeanCollections.containsElement._f' does not depend on any axioms\n'LexLeanCollections.containsElement._sunfold' does not depend on any axioms\n'LexLeanCollections.containsElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.graphNodes' does not depend on any axioms\n'LexLeanCollections.graphReachable' depends on axioms: [propext]\n'LexLeanCollections.graphSuccessors' does not depend on any axioms\n'LexLeanCollections.graphTopological' does not depend on any axioms\n'LexLeanCollections.insertElement' does not depend on any axioms\n'LexLeanCollections.insertElement._f' does not depend on any axioms\n'LexLeanCollections.insertElement._sunfold' does not depend on any axioms\n'LexLeanCollections.insertElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.insertElement.match_1' does not depend on any axioms\n'LexLeanCollections.insertEntry' does not depend on any axioms\n'LexLeanCollections.insertEntry._f' does not depend on any axioms\n'LexLeanCollections.insertEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.insertEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.insertEntry.match_1' does not depend on any axioms\n'LexLeanCollections.insertEntry.match_3' does not depend on any axioms\n'LexLeanCollections.instKeyBool' depends on axioms: [propext]\n'LexLeanCollections.instKeyInt' does not depend on any axioms\n'LexLeanCollections.instKeyInt16' does not depend on any axioms\n'LexLeanCollections.instKeyInt32' does not depend on any axioms\n'LexLeanCollections.instKeyInt64' does not depend on any axioms\n'LexLeanCollections.instKeyInt8' does not depend on any axioms\n'LexLeanCollections.instKeyNat' does not depend on any axioms\n'LexLeanCollections.instKeyProd' depends on axioms: [propext]\n'LexLeanCollections.instKeyString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanCollections.instKeyUInt16' does not depend on any axioms\n'LexLeanCollections.instKeyUInt32' does not depend on any axioms\n'LexLeanCollections.instKeyUInt64' does not depend on any axioms\n'LexLeanCollections.instKeyUInt8' does not depend on any axioms\n'LexLeanCollections.iterate' does not depend on any axioms\n'LexLeanCollections.iterate._f' does not depend on any axioms\n'LexLeanCollections.iterate._sunfold' does not depend on any axioms\n'LexLeanCollections.iterate._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.iterate.match_1' does not depend on any axioms\n'LexLeanCollections.iterateUntil' does not depend on any axioms\n'LexLeanCollections.iterateUntil._f' does not depend on any axioms\n'LexLeanCollections.iterateUntil._sunfold' does not depend on any axioms\n'LexLeanCollections.iterateUntil._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.iterateUntil.match_1' does not depend on any axioms\n'LexLeanCollections.lessThan' depends on axioms: [propext]\n'LexLeanCollections.lessThan._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.lessThan.match_1' depends on axioms: [propext]\n'LexLeanCollections.listFold' does not depend on any axioms\n'LexLeanCollections.lookupEntry' does not depend on any axioms\n'LexLeanCollections.lookupEntry._f' does not depend on any axioms\n'LexLeanCollections.lookupEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.lookupEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.mapContains' does not depend on any axioms\n'LexLeanCollections.mapEntries' does not depend on any axioms\n'LexLeanCollections.mapFold' does not depend on any axioms\n'LexLeanCollections.mapInsert' does not depend on any axioms\n'LexLeanCollections.mapKeys' does not depend on any axioms\n'LexLeanCollections.mapLookup' does not depend on any axioms\n'LexLeanCollections.mapRemove' does not depend on any axioms\n'LexLeanCollections.mapSize' does not depend on any axioms\n'LexLeanCollections.mapValues' does not depend on any axioms\n'LexLeanCollections.reachableFrom' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._f' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._sunfold' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._unsafe_rec' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom.match_1' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom.match_4' does not depend on any axioms\n'LexLeanCollections.removeElement' does not depend on any axioms\n'LexLeanCollections.removeElement._f' does not depend on any axioms\n'LexLeanCollections.removeElement._sunfold' does not depend on any axioms\n'LexLeanCollections.removeElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.removeEntry' does not depend on any axioms\n'LexLeanCollections.removeEntry._f' does not depend on any axioms\n'LexLeanCollections.removeEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.removeEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.setContains' does not depend on any axioms\n'LexLeanCollections.setDifference' does not depend on any axioms\n'LexLeanCollections.setElements' does not depend on any axioms\n'LexLeanCollections.setFold' does not depend on any axioms\n'LexLeanCollections.setInsert' does not depend on any axioms\n'LexLeanCollections.setIntersection' does not depend on any axioms\n'LexLeanCollections.setRemove' does not depend on any axioms\n'LexLeanCollections.setSize' does not depend on any axioms\n'LexLeanCollections.setUnion' does not depend on any axioms\n'LexLeanCollections.topological' does not depend on any axioms\n'LexLeanCollections.topological._f' does not depend on any axioms\n'LexLeanCollections.topological._sunfold' does not depend on any axioms\n'LexLeanCollections.topological._unsafe_rec' does not depend on any axioms\n","stdout_sha256":"b75acc0e99e23684c3cc876eacbfc93f47161cfee8a7440df17fa45f321c8c6a","tool":"lean"} diff --git a/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.LexLeanRuntime.Laws.lean b/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.LexLeanRuntime.Laws.lean similarity index 100% rename from examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.LexLeanRuntime.Laws.lean rename to examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.LexLeanRuntime.Laws.lean diff --git a/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.LexLeanRuntime.Laws.process.json b/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.LexLeanRuntime.Laws.process.json new file mode 100644 index 000000000..2d58d2bf8 --- /dev/null +++ b/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.LexLeanRuntime.Laws.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.LexLeanRuntime.Laws.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.LexLeanRuntime.Laws","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanCollections.lessThan._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanCollections.lessThan.eq_1' depends on axioms: [propext]\n'LexLeanCollections.listFold.eq_1' does not depend on any axioms\n'LexLeanLaws.append_list' does not depend on any axioms\n'LexLeanLaws.length_list' does not depend on any axioms\n'LexLeanLaws.lessThan_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int16' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int32' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int64' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int8' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_nat' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint16' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint32' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint64' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint8' depends on axioms: [propext]\n'LexLeanLaws.listFold_add_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_add_int_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_add_nat' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_add_nat_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_append' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_cons' does not depend on any axioms\n'LexLeanLaws.listFold_extend' depends on axioms: [propext]\n'LexLeanLaws.listFold_fusion' does not depend on any axioms\n'LexLeanLaws.listFold_nil' does not depend on any axioms\n'LexLeanLaws.listFold_pair' does not depend on any axioms\n'LexLeanLaws.listFold_prepend' depends on axioms: [propext]\n'LexLeanLaws.listFold_sub_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_sub_int_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.mapEntries_self' does not depend on any axioms\n'LexLeanLaws.mapFold_listFold' does not depend on any axioms\n'LexLeanLaws.mapSize_length' does not depend on any axioms\n'LexLeanLaws.quotient_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.quotient_nat' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.remainder_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.remainder_nat' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.setElements_self' does not depend on any axioms\n'LexLeanLaws.setFold_listFold' does not depend on any axioms\n'LexLeanLaws.setSize_length' does not depend on any axioms\n'LexLeanLaws.sumInt' does not depend on any axioms\n'LexLeanLaws.sumInt._f' does not depend on any axioms\n'LexLeanLaws.sumInt._sunfold' does not depend on any axioms\n'LexLeanLaws.sumInt._unsafe_rec' does not depend on any axioms\n'LexLeanLaws.sumInt.eq_1' does not depend on any axioms\n'LexLeanLaws.sumInt.eq_2' does not depend on any axioms\n'LexLeanLaws.sumInt.eq_def' does not depend on any axioms\n'LexLeanLaws.sumInt_add' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_append' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_cons' does not depend on any axioms\n'LexLeanLaws.sumInt_const' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_mul' depends on axioms: [propext]\n'LexLeanLaws.sumInt_mul_right' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_mul_self' depends on axioms: [propext]\n'LexLeanLaws.sumInt_neg' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_neg_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_nil' does not depend on any axioms\n'LexLeanLaws.sumInt_perm' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_reverse' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_sub' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat' does not depend on any axioms\n'LexLeanLaws.sumNat._f' does not depend on any axioms\n'LexLeanLaws.sumNat._sunfold' does not depend on any axioms\n'LexLeanLaws.sumNat._unsafe_rec' does not depend on any axioms\n'LexLeanLaws.sumNat.eq_1' does not depend on any axioms\n'LexLeanLaws.sumNat.eq_2' does not depend on any axioms\n'LexLeanLaws.sumNat.eq_def' does not depend on any axioms\n'LexLeanLaws.sumNat.match_1' does not depend on any axioms\n'LexLeanLaws.sumNat_add' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_append' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_cons' does not depend on any axioms\n'LexLeanLaws.sumNat_const' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_mul' does not depend on any axioms\n'LexLeanLaws.sumNat_mul_right' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_mul_self' does not depend on any axioms\n'LexLeanLaws.sumNat_nil' does not depend on any axioms\n'LexLeanLaws.sumNat_perm' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_reverse' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.tdiv_ediv' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.tmod_emod' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.quotient.eq_1' does not depend on any axioms\n'LexLeanRuntime.remainder.eq_1' does not depend on any axioms\n","stdout_sha256":"a4ba2d39c9cdfd5e40c41c5ccf4726d937fd192fc042b74bb56cc0651e28919e","tool":"lean"} diff --git a/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.LexLeanRuntime.Models.lean b/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.LexLeanRuntime.Models.lean similarity index 100% rename from examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.LexLeanRuntime.Models.lean rename to examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.LexLeanRuntime.Models.lean diff --git a/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.LexLeanRuntime.Models.process.json b/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.LexLeanRuntime.Models.process.json new file mode 100644 index 000000000..9832e8650 --- /dev/null +++ b/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.LexLeanRuntime.Models.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.LexLeanRuntime.Models.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.LexLeanRuntime.Models","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanModels.Agreement' does not depend on any axioms\n'LexLeanModels.Complete1' does not depend on any axioms\n'LexLeanModels.Complete2' does not depend on any axioms\n'LexLeanModels.Complete4' does not depend on any axioms\n'LexLeanModels.Equivalent' does not depend on any axioms\n'LexLeanModels.EquivalentStep' does not depend on any axioms\n'LexLeanModels.EquivalentStepNoInvariant' does not depend on any axioms\n'LexLeanModels.EquivalentStepNoPrecondition' does not depend on any axioms\n'LexLeanModels.EquivalentStepTotal' does not depend on any axioms\n'LexLeanModels.EquivalentTotal' does not depend on any axioms\n'LexLeanModels.Initial' does not depend on any axioms\n'LexLeanModels.Preserves' does not depend on any axioms\n'LexLeanModels.PreservesTotal' does not depend on any axioms\n'LexLeanModels.Satisfies' does not depend on any axioms\n'LexLeanModels.SatisfiesStep' does not depend on any axioms\n'LexLeanModels.SatisfiesStepNoInvariant' does not depend on any axioms\n'LexLeanModels.SatisfiesStepNoPrecondition' does not depend on any axioms\n'LexLeanModels.SatisfiesStepTotal' does not depend on any axioms\n'LexLeanModels.SatisfiesTotal' does not depend on any axioms\n'LexLeanModels.Sound1' does not depend on any axioms\n'LexLeanModels.Sound2' does not depend on any axioms\n'LexLeanModels.Sound4' does not depend on any axioms\n'LexLeanModels.encodeInt' does not depend on any axioms\n'LexLeanModels.inRange' does not depend on any axioms\n'LexLeanModels.linesMatch' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanModels.tensorMatches' does not depend on any axioms\n'LexLeanModels.utf8Char' does not depend on any axioms\n","stdout_sha256":"43ad1c715570458672aedc9abb1691012eef870f5b804f1e230abb890e49ffee","tool":"lean"} diff --git a/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.LexLeanRuntime.Portable.lean b/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.LexLeanRuntime.Portable.lean similarity index 100% rename from examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.LexLeanRuntime.Portable.lean rename to examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.LexLeanRuntime.Portable.lean diff --git a/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.LexLeanRuntime.Portable.process.json b/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.LexLeanRuntime.Portable.process.json new file mode 100644 index 000000000..6bfb8bc44 --- /dev/null +++ b/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.LexLeanRuntime.Portable.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.LexLeanRuntime.Portable.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.LexLeanRuntime.Portable","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanRuntime.Appendable' does not depend on any axioms\n'LexLeanRuntime.Appendable.append' does not depend on any axioms\n'LexLeanRuntime.Appendable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Appendable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Appendable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Appendable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Appendable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Appendable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Appendable.recOn' does not depend on any axioms\n'LexLeanRuntime.Decimal' does not depend on any axioms\n'LexLeanRuntime.Decimal.casesOn' does not depend on any axioms\n'LexLeanRuntime.Decimal.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Decimal.format' does not depend on any axioms\n'LexLeanRuntime.Decimal.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Decimal.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Decimal.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Decimal.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Decimal.parse' does not depend on any axioms\n'LexLeanRuntime.Decimal.recOn' does not depend on any axioms\n'LexLeanRuntime.Fixed' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitAnd' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitNot' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitOr' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitXor' does not depend on any axioms\n'LexLeanRuntime.Fixed.casesOn' does not depend on any axioms\n'LexLeanRuntime.Fixed.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Fixed.fromInt' does not depend on any axioms\n'LexLeanRuntime.Fixed.maximum' does not depend on any axioms\n'LexLeanRuntime.Fixed.minimum' does not depend on any axioms\n'LexLeanRuntime.Fixed.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Fixed.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Fixed.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Fixed.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Fixed.recOn' does not depend on any axioms\n'LexLeanRuntime.Fixed.shiftLeft' does not depend on any axioms\n'LexLeanRuntime.Fixed.shiftRight' does not depend on any axioms\n'LexLeanRuntime.Fixed.toToMathInt' does not depend on any axioms\n'LexLeanRuntime.Indexable' does not depend on any axioms\n'LexLeanRuntime.Indexable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Indexable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Indexable.index' does not depend on any axioms\n'LexLeanRuntime.Indexable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Indexable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Indexable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Indexable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Indexable.recOn' does not depend on any axioms\n'LexLeanRuntime.Lengthable' does not depend on any axioms\n'LexLeanRuntime.Lengthable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Lengthable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Lengthable.length' does not depend on any axioms\n'LexLeanRuntime.Lengthable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Lengthable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Lengthable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Lengthable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Lengthable.recOn' does not depend on any axioms\n'LexLeanRuntime.Quotient' does not depend on any axioms\n'LexLeanRuntime.Quotient.casesOn' does not depend on any axioms\n'LexLeanRuntime.Quotient.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Quotient.isZero' does not depend on any axioms\n'LexLeanRuntime.Quotient.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Quotient.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Quotient.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Quotient.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Quotient.quotient' does not depend on any axioms\n'LexLeanRuntime.Quotient.recOn' does not depend on any axioms\n'LexLeanRuntime.Quotient.remainder' does not depend on any axioms\n'LexLeanRuntime.Sliceable' does not depend on any axioms\n'LexLeanRuntime.Sliceable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Sliceable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Sliceable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Sliceable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Sliceable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Sliceable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Sliceable.recOn' does not depend on any axioms\n'LexLeanRuntime.Sliceable.slice' does not depend on any axioms\n'LexLeanRuntime.ToMathInt' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.casesOn' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.noConfusion' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.recOn' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.toInt' does not depend on any axioms\n'LexLeanRuntime.append' does not depend on any axioms\n'LexLeanRuntime.bitAnd' does not depend on any axioms\n'LexLeanRuntime.bitNot' does not depend on any axioms\n'LexLeanRuntime.bitOr' does not depend on any axioms\n'LexLeanRuntime.bitXor' does not depend on any axioms\n'LexLeanRuntime.checkedAdd' does not depend on any axioms\n'LexLeanRuntime.checkedAddInt64' does not depend on any axioms\n'LexLeanRuntime.checkedConvert' does not depend on any axioms\n'LexLeanRuntime.checkedFromInt' does not depend on any axioms\n'LexLeanRuntime.checkedMultiply' does not depend on any axioms\n'LexLeanRuntime.checkedMultiplyInt64' does not depend on any axioms\n'LexLeanRuntime.checkedMultiplyInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.checkedNegate' does not depend on any axioms\n'LexLeanRuntime.checkedNegateInt64' does not depend on any axioms\n'LexLeanRuntime.checkedQuotient' does not depend on any axioms\n'LexLeanRuntime.checkedQuotientInt64' does not depend on any axioms\n'LexLeanRuntime.checkedSubtract' does not depend on any axioms\n'LexLeanRuntime.checkedSubtractInt64' does not depend on any axioms\n'LexLeanRuntime.compareBytes' depends on axioms: [propext]\n'LexLeanRuntime.divideMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._f' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._sunfold' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.equal' does not depend on any axioms\n'LexLeanRuntime.formatDecimal' does not depend on any axioms\n'LexLeanRuntime.index' does not depend on any axioms\n'LexLeanRuntime.instAppendableByteArray' does not depend on any axioms\n'LexLeanRuntime.instAppendableList' does not depend on any axioms\n'LexLeanRuntime.instDecimalInt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instDecimalInt.match_1' does not depend on any axioms\n'LexLeanRuntime.instDecimalOfFixedOfToString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instFixedInt16' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt32' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt64' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt8' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt16' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt32' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt64' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt8' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instIndexableByteArrayUInt8' does not depend on any axioms\n'LexLeanRuntime.instIndexableList' does not depend on any axioms\n'LexLeanRuntime.instLengthableByteArray' does not depend on any axioms\n'LexLeanRuntime.instLengthableList' does not depend on any axioms\n'LexLeanRuntime.instLengthableString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instQuotientInt' does not depend on any axioms\n'LexLeanRuntime.instQuotientNat' does not depend on any axioms\n'LexLeanRuntime.instSliceableByteArray' does not depend on any axioms\n'LexLeanRuntime.instSliceableList' does not depend on any axioms\n'LexLeanRuntime.instToMathIntInt' does not depend on any axioms\n'LexLeanRuntime.join' depends on axioms: [propext]\n'LexLeanRuntime.length' does not depend on any axioms\n'LexLeanRuntime.listIndex' does not depend on any axioms\n'LexLeanRuntime.listIndex._f' does not depend on any axioms\n'LexLeanRuntime.listIndex._sunfold' does not depend on any axioms\n'LexLeanRuntime.listIndex._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.listIndex.match_1' does not depend on any axioms\n'LexLeanRuntime.magnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.multiply' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._f' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._sunfold' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.negate' does not depend on any axioms\n'LexLeanRuntime.parseDecimal' does not depend on any axioms\n'LexLeanRuntime.quotient' does not depend on any axioms\n'LexLeanRuntime.remainder' does not depend on any axioms\n'LexLeanRuntime.shiftLeft' does not depend on any axioms\n'LexLeanRuntime.shiftRight' does not depend on any axioms\n'LexLeanRuntime.signedMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.slice' does not depend on any axioms\n'LexLeanRuntime.splitExact' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.subtract' does not depend on any axioms\n'LexLeanRuntime.utf8Decode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.utf8Encode' does not depend on any axioms\n","stdout_sha256":"73fea1d9e9e9f0a2f1363b9f284eeeb9e434430e9fa910260b9526bad864641e","tool":"lean"} diff --git a/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Flows.lean b/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Flows.lean similarity index 100% rename from examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Flows.lean rename to examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Flows.lean diff --git a/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Flows.process.json b/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Flows.process.json new file mode 100644 index 000000000..1cbebed5d --- /dev/null +++ b/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Flows.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Flows.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Flows","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Models.Flows.BothCapped' does not depend on any axioms\n'Models.Flows.BranchContract.invariant_sound' depends on axioms: [propext]\n'Models.Flows.BranchContract.precondition_sound' depends on axioms: [propext]\n'Models.Flows.BranchModel' does not depend on any axioms\n'Models.Flows.BranchModel.initial' does not depend on any axioms\n'Models.Flows.ChainContract.invariant_sound' depends on axioms: [propext]\n'Models.Flows.ChainContract.precondition_sound' depends on axioms: [propext]\n'Models.Flows.ChainModel' does not depend on any axioms\n'Models.Flows.ChainModel.initial' does not depend on any axioms\n'Models.Flows.ClampBoth' does not depend on any axioms\n'Models.Flows.ClampBoth.initial' does not depend on any axioms\n'Models.Flows.ClampGuess' does not depend on any axioms\n'Models.Flows.ClampGuess.initial' does not depend on any axioms\n'Models.Flows.ClampOrTally' does not depend on any axioms\n'Models.Flows.ClampOrTally.initial' does not depend on any axioms\n'Models.Flows.ClampTally' does not depend on any axioms\n'Models.Flows.ClampTally.initial' does not depend on any axioms\n'Models.Flows.Drain' does not depend on any axioms\n'Models.Flows.Drain.initial' does not depend on any axioms\n'Models.Flows.DrainChainModel' does not depend on any axioms\n'Models.Flows.DrainChainModel.initial' does not depend on any axioms\n'Models.Flows.DrainModel' does not depend on any axioms\n'Models.Flows.DrainModel.initial' does not depend on any axioms\n'Models.Flows.Few' does not depend on any axioms\n'Models.Flows.FlowContract.invariant_sound' depends on axioms: [propext]\n'Models.Flows.FlowModel' does not depend on any axioms\n'Models.Flows.FlowModel.initial' does not depend on any axioms\n'Models.Flows.GuessOvershoot' does not depend on any axioms\n'Models.Flows.GuessTwice' does not depend on any axioms\n'Models.Flows.OvershootPairModel' does not depend on any axioms\n'Models.Flows.PairClampContract.invariant_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Models.Flows.PairClampModel' does not depend on any axioms\n'Models.Flows.PairClampModel.initial' does not depend on any axioms\n'Models.Flows.PairGuessContract.precondition_sound' depends on axioms: [propext]\n'Models.Flows.PairGuessModel' does not depend on any axioms\n'Models.Flows.RawChainContract.invariant_sound' depends on axioms: [propext]\n'Models.Flows.RawChainModel' does not depend on any axioms\n'Models.Flows.RawChainModel.initial' does not depend on any axioms\n'Models.Flows.SpillStream' does not depend on any axioms\n'Models.Flows.SpillStreamContract.precondition_sound' depends on axioms: [propext]\n'Models.Flows.SpillStreamModel' does not depend on any axioms\n'Models.Flows.SpillTally' does not depend on any axioms\n'Models.Flows.SpillTally.initial' does not depend on any axioms\n'Models.Flows.TallyDrain' does not depend on any axioms\n'Models.Flows.TallyDrain.initial' does not depend on any axioms\n'Models.Flows.TallySpillRaw' does not depend on any axioms\n'Models.Flows.TallySpillRaw.initial' does not depend on any axioms\n'Models.Flows.TwinCapped' does not depend on any axioms\n'Models.Flows.TwinContract.invariant_sound' depends on axioms: [propext]\n'Models.Flows.TwinContract.precondition_sound' depends on axioms: [propext]\n'Models.Flows.TwinModel' does not depend on any axioms\n'Models.Flows.TwinModel.initial' does not depend on any axioms\n'Models.Flows.TwinSmall' does not depend on any axioms\n'Models.Flows.bothCappedCheck' does not depend on any axioms\n'Models.Flows.both_capped_check_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Models.Flows.both_entry_left' depends on axioms: [propext, Quot.sound]\n'Models.Flows.both_entry_right' depends on axioms: [propext, Quot.sound]\n'Models.Flows.branch_entry_else' does not depend on any axioms\n'Models.Flows.branch_entry_then' does not depend on any axioms\n'Models.Flows.chain_entry_invariant' does not depend on any axioms\n'Models.Flows.chain_entry_precondition' does not depend on any axioms\n'Models.Flows.fewCheck' does not depend on any axioms\n'Models.Flows.few_check_sound' depends on axioms: [propext]\n'Models.Flows.flow_capped_sound' depends on axioms: [propext]\n'Models.Flows.flow_entry' does not depend on any axioms\n'Models.Flows.pair_entry_left' does not depend on any axioms\n'Models.Flows.pair_entry_right' does not depend on any axioms\n'Models.Flows.pair_within_sound' depends on axioms: [propext]\n'Models.Flows.spill_tally' does not depend on any axioms\n'Models.Flows.twinCappedCheck' does not depend on any axioms\n'Models.Flows.twinSmallCheck' does not depend on any axioms\n'Models.Flows.twin_capped_check_sound' depends on axioms: [propext]\n'Models.Flows.twin_entry_left' does not depend on any axioms\n'Models.Flows.twin_entry_right' does not depend on any axioms\n'Models.Flows.twin_small_check_sound' depends on axioms: [propext]\n","stdout_sha256":"090ddb641a708c3d8e10daed419a524c1203ac41b5b8ae709a5dd78aea4fbf2b","tool":"lean"} diff --git a/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Glyphs.lean b/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Glyphs.lean similarity index 100% rename from examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Glyphs.lean rename to examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Glyphs.lean diff --git a/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Glyphs.process.json b/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Glyphs.process.json new file mode 100644 index 000000000..e66b00c7f --- /dev/null +++ b/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Glyphs.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Glyphs.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Glyphs","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Models.Glyphs.Glyph' does not depend on any axioms\n'Models.Glyphs.digitOf' does not depend on any axioms\n'Models.Glyphs.encode' does not depend on any axioms\n'Models.Glyphs.encode_width' does not depend on any axioms\n'Models.Glyphs.isEight' does not depend on any axioms\n'Models.Glyphs.segmentCount' does not depend on any axioms\n","stdout_sha256":"1764c5768cb6db2798341b7ddfaf8b768b57d2bb29d42349f16699721cb3527c","tool":"lean"} diff --git a/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Ledger.lean b/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Ledger.lean similarity index 100% rename from examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Ledger.lean rename to examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Ledger.lean diff --git a/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Ledger.process.json b/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Ledger.process.json new file mode 100644 index 000000000..515515212 --- /dev/null +++ b/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Ledger.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Ledger.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Ledger","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Models.Ledger.Below' does not depend on any axioms\n'Models.Ledger.CapContract.invariant_complete' depends on axioms: [propext]\n'Models.Ledger.CapContract.invariant_sound' depends on axioms: [propext]\n'Models.Ledger.CapContract.postcondition_sound' depends on axioms: [propext]\n'Models.Ledger.Capped' does not depend on any axioms\n'Models.Ledger.Clamp' does not depend on any axioms\n'Models.Ledger.Clamp.initial' does not depend on any axioms\n'Models.Ledger.ClampEvidence.clamp_grows' depends on axioms: [propext, Quot.sound]\n'Models.Ledger.ClampEvidence.clamp_initial' does not depend on any axioms\n'Models.Ledger.ClampEvidence.clamp_preserves' depends on axioms: [propext, Quot.sound]\n'Models.Ledger.ClampEvidence.clamp_reference' depends on axioms: [propext]\n'Models.Ledger.ClampModel' does not depend on any axioms\n'Models.Ledger.ClampModel.initial' does not depend on any axioms\n'Models.Ledger.FreeContract.postcondition_sound' depends on axioms: [propext]\n'Models.Ledger.FreeEvidence.tally_free_grows' depends on axioms: [propext, Quot.sound]\n'Models.Ledger.FreeEvidence.tally_free_reference' depends on axioms: [propext]\n'Models.Ledger.FreeModel' does not depend on any axioms\n'Models.Ledger.FreeModel.initial' does not depend on any axioms\n'Models.Ledger.Grows' does not depend on any axioms\n'Models.Ledger.Guess' does not depend on any axioms\n'Models.Ledger.GuessContract.postcondition_sound' depends on axioms: [propext]\n'Models.Ledger.GuessContract.precondition_complete' depends on axioms: [propext]\n'Models.Ledger.GuessContract.precondition_sound' depends on axioms: [propext]\n'Models.Ledger.GuessEquivalence.guess_reference' depends on axioms: [propext]\n'Models.Ledger.GuessExactModel' does not depend on any axioms\n'Models.Ledger.GuessModel' does not depend on any axioms\n'Models.Ledger.GuessSample.guess_agreement' does not depend on any axioms\n'Models.Ledger.LedgerContract.invariant_complete' depends on axioms: [propext]\n'Models.Ledger.LedgerContract.invariant_sound' depends on axioms: [propext]\n'Models.Ledger.LedgerContract.postcondition_complete' depends on axioms: [propext]\n'Models.Ledger.LedgerContract.postcondition_sound' depends on axioms: [propext]\n'Models.Ledger.LedgerContract.precondition_sound' depends on axioms: [propext]\n'Models.Ledger.Overshoot' does not depend on any axioms\n'Models.Ledger.OvershootModel' does not depend on any axioms\n'Models.Ledger.Small' does not depend on any axioms\n'Models.Ledger.Spill' does not depend on any axioms\n'Models.Ledger.Spill.initial' does not depend on any axioms\n'Models.Ledger.SpillEvidence.spill_grows' depends on axioms: [propext, Quot.sound]\n'Models.Ledger.SpillModel' does not depend on any axioms\n'Models.Ledger.SpillModel.initial' does not depend on any axioms\n'Models.Ledger.SpillRawModel' does not depend on any axioms\n'Models.Ledger.SpillRawModel.initial' does not depend on any axioms\n'Models.Ledger.SpillReference.spill_reference' depends on axioms: [propext]\n'Models.Ledger.Tally' does not depend on any axioms\n'Models.Ledger.Tally.initial' does not depend on any axioms\n'Models.Ledger.TallyContract.postcondition_sound' depends on axioms: [propext]\n'Models.Ledger.TallyContract.precondition_sound' depends on axioms: [propext]\n'Models.Ledger.TallyEvidence.tally_grows' depends on axioms: [propext, Quot.sound]\n'Models.Ledger.TallyEvidence.tally_reference' depends on axioms: [propext]\n'Models.Ledger.TallyModel' does not depend on any axioms\n'Models.Ledger.TallyModel.initial' does not depend on any axioms\n'Models.Ledger.Within' does not depend on any axioms\n'Models.Ledger.belowCheck' does not depend on any axioms\n'Models.Ledger.below_check_sound' depends on axioms: [propext]\n'Models.Ledger.cappedCheck' does not depend on any axioms\n'Models.Ledger.capped_check_complete' depends on axioms: [propext]\n'Models.Ledger.capped_check_sound' depends on axioms: [propext]\n'Models.Ledger.clampRef' does not depend on any axioms\n'Models.Ledger.clamp_grows' depends on axioms: [propext, Quot.sound]\n'Models.Ledger.clamp_initial' does not depend on any axioms\n'Models.Ledger.clamp_preserves' depends on axioms: [propext, Quot.sound]\n'Models.Ledger.clamp_reference' depends on axioms: [propext]\n'Models.Ledger.growsCheck' does not depend on any axioms\n'Models.Ledger.grows_check_complete' depends on axioms: [propext]\n'Models.Ledger.grows_check_sound' depends on axioms: [propext]\n'Models.Ledger.guessRef' does not depend on any axioms\n'Models.Ledger.guessSamples' does not depend on any axioms\n'Models.Ledger.guess_agreement' does not depend on any axioms\n'Models.Ledger.guess_reference' depends on axioms: [propext]\n'Models.Ledger.sameNat' does not depend on any axioms\n'Models.Ledger.same_nat_sound' depends on axioms: [propext]\n'Models.Ledger.smallCheck' does not depend on any axioms\n'Models.Ledger.small_check_sound' depends on axioms: [propext]\n'Models.Ledger.spillRef' does not depend on any axioms\n'Models.Ledger.spill_grows' depends on axioms: [propext, Quot.sound]\n'Models.Ledger.spill_reference' depends on axioms: [propext]\n'Models.Ledger.tallyRef' does not depend on any axioms\n'Models.Ledger.tally_free_grows' depends on axioms: [propext, Quot.sound]\n'Models.Ledger.tally_free_reference' depends on axioms: [propext]\n'Models.Ledger.tally_grows' depends on axioms: [propext, Quot.sound]\n'Models.Ledger.tally_reference' depends on axioms: [propext]\n'Models.Ledger.violationCode' does not depend on any axioms\n'Models.Ledger.withinCheck' does not depend on any axioms\n'Models.Ledger.within_check_complete' depends on axioms: [propext]\n'Models.Ledger.within_check_sound' depends on axioms: [propext]\n","stdout_sha256":"0906cff53c4ed452adb799c9fa7c1d2a73a86b3cc74b745342ac5245b8acf079","tool":"lean"} diff --git a/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Main.lean b/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Main.lean similarity index 100% rename from examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Main.lean rename to examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Main.lean diff --git a/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Main.process.json b/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Main.process.json new file mode 100644 index 000000000..cfb980a54 --- /dev/null +++ b/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Main.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Main.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Main","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Models.Main.admission' does not depend on any axioms\n'Models.Main.admitCosts' does not depend on any axioms\n'Models.Main.admit_accepts_cheap' does not depend on any axioms\n'Models.Main.admit_rejects_costly' does not depend on any axioms\n'Models.Main.branchCode' does not depend on any axioms\n'Models.Main.branchStep' does not depend on any axioms\n'Models.Main.branch_refuses_precondition' does not depend on any axioms\n'Models.Main.branch_takes_else' does not depend on any axioms\n'Models.Main.branch_takes_then' does not depend on any axioms\n'Models.Main.chainCode' does not depend on any axioms\n'Models.Main.chainStep' does not depend on any axioms\n'Models.Main.chain_accepts' does not depend on any axioms\n'Models.Main.chain_refuses_precondition' does not depend on any axioms\n'Models.Main.chain_refuses_stage_output' does not depend on any axioms\n'Models.Main.classify' depends on axioms: [propext]\n'Models.Main.classifyChecked' depends on axioms: [propext]\n'Models.Main.classify_eight' depends on axioms: [propext]\n'Models.Main.drainChainStep' does not depend on any axioms\n'Models.Main.drain_chain_accepts' does not depend on any axioms\n'Models.Main.drain_chain_refuses_postcondition' does not depend on any axioms\n'Models.Main.flowCode' does not depend on any axioms\n'Models.Main.flowStep' does not depend on any axioms\n'Models.Main.flow_accepts' does not depend on any axioms\n'Models.Main.flow_refuses_input' does not depend on any axioms\n'Models.Main.flow_refuses_junction' does not depend on any axioms\n'Models.Main.guessChecked' does not depend on any axioms\n'Models.Main.guessOvershoot' does not depend on any axioms\n'Models.Main.guessTwice' does not depend on any axioms\n'Models.Main.guess_accepts' does not depend on any axioms\n'Models.Main.guess_refuses_precondition' does not depend on any axioms\n'Models.Main.ledgerFull' does not depend on any axioms\n'Models.Main.ledgerPost' does not depend on any axioms\n'Models.Main.ledger_accepts' does not depend on any axioms\n'Models.Main.ledger_full_accepts' does not depend on any axioms\n'Models.Main.ledger_full_refuses_output' does not depend on any axioms\n'Models.Main.ledger_refuses_input' does not depend on any axioms\n'Models.Main.ledger_refuses_output' does not depend on any axioms\n'Models.Main.ledger_refuses_precondition' does not depend on any axioms\n'Models.Main.overshootChecked' does not depend on any axioms\n'Models.Main.overshoot_pair_refuses_postcondition' does not depend on any axioms\n'Models.Main.overshoot_refuses_postcondition' does not depend on any axioms\n'Models.Main.pairClamp' does not depend on any axioms\n'Models.Main.pair_clamp_accepts' does not depend on any axioms\n'Models.Main.pair_clamp_refuses_input' does not depend on any axioms\n'Models.Main.quadCode' does not depend on any axioms\n'Models.Main.rawChainStep' does not depend on any axioms\n'Models.Main.raw_chain_accepts' does not depend on any axioms\n'Models.Main.raw_chain_refuses_input' does not depend on any axioms\n'Models.Main.raw_chain_refuses_precondition' does not depend on any axioms\n'Models.Main.respond' depends on axioms: [propext]\n'Models.Main.spillStream' does not depend on any axioms\n'Models.Main.step' does not depend on any axioms\n'Models.Main.stepCode' does not depend on any axioms\n'Models.Main.streamCode' does not depend on any axioms\n'Models.Main.stream_accepts' does not depend on any axioms\n'Models.Main.stream_refuses_output' does not depend on any axioms\n'Models.Main.twiceCode' does not depend on any axioms\n'Models.Main.twice_accepts' does not depend on any axioms\n'Models.Main.twice_refuses' does not depend on any axioms\n'Models.Main.twinStep' does not depend on any axioms\n'Models.Main.twin_accepts' does not depend on any axioms\n'Models.Main.twin_refuses_input' does not depend on any axioms\n'Models.Main.twin_refuses_precondition' does not depend on any axioms\n'Models.Main.valueCode' does not depend on any axioms\n","stdout_sha256":"e3d25ec7612d3d524a16f7635c0ff54fe7ee057f27ef341f9b384b0161610666","tool":"lean"} diff --git a/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Pipeline.lean b/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Pipeline.lean similarity index 100% rename from examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Pipeline.lean rename to examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Pipeline.lean diff --git a/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Pipeline.process.json b/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Pipeline.process.json new file mode 100644 index 000000000..0902ea04c --- /dev/null +++ b/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Pipeline.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Pipeline.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Pipeline","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Models.Pipeline.Answered' does not depend on any axioms\n'Models.Pipeline.Bounded9' does not depend on any axioms\n'Models.Pipeline.CheckedEvidence.checked_answers' depends on axioms: [propext]\n'Models.Pipeline.CheckedModel' depends on axioms: [propext]\n'Models.Pipeline.CheckedPipeline' depends on axioms: [propext]\n'Models.Pipeline.GlyphPair' does not depend on any axioms\n'Models.Pipeline.GlyphReport' depends on axioms: [propext]\n'Models.Pipeline.GlyphRoute' depends on axioms: [propext]\n'Models.Pipeline.Lit' does not depend on any axioms\n'Models.Pipeline.PairEvidence.pair_correct' does not depend on any axioms\n'Models.Pipeline.PairLit' does not depend on any axioms\n'Models.Pipeline.PairModel' does not depend on any axioms\n'Models.Pipeline.PipelineContract.precondition_sound' does not depend on any axioms\n'Models.Pipeline.PipelineEvidence.pipeline_responds' depends on axioms: [propext]\n'Models.Pipeline.PipelineModel' depends on axioms: [propext]\n'Models.Pipeline.ReportEvidence.report_correct' depends on axioms: [propext]\n'Models.Pipeline.ReportModel' depends on axioms: [propext]\n'Models.Pipeline.Reported' does not depend on any axioms\n'Models.Pipeline.Responds' does not depend on any axioms\n'Models.Pipeline.RouteEvidence.route_bounded' depends on axioms: [propext]\n'Models.Pipeline.RouteModel' depends on axioms: [propext]\n'Models.Pipeline.SegmentCounter' does not depend on any axioms\n'Models.Pipeline.SegmentEvidence.segments_lit' does not depend on any axioms\n'Models.Pipeline.SegmentModel' does not depend on any axioms\n'Models.Pipeline.SessionStream' does not depend on any axioms\n'Models.Pipeline.ShortStream' does not depend on any axioms\n'Models.Pipeline.StreamContract.precondition_sound' depends on axioms: [propext, Quot.sound]\n'Models.Pipeline.StreamModel' does not depend on any axioms\n'Models.Pipeline.TriagePipeline' depends on axioms: [propext]\n'Models.Pipeline.checked_answers' depends on axioms: [propext]\n'Models.Pipeline.pair_correct' does not depend on any axioms\n'Models.Pipeline.pipeline_entry' does not depend on any axioms\n'Models.Pipeline.pipeline_responds' depends on axioms: [propext]\n'Models.Pipeline.report_correct' depends on axioms: [propext]\n'Models.Pipeline.resultCode' does not depend on any axioms\n'Models.Pipeline.route_bounded' depends on axioms: [propext]\n'Models.Pipeline.segments_lit' does not depend on any axioms\n'Models.Pipeline.shortStreamCheck' does not depend on any axioms\n'Models.Pipeline.short_stream_check_sound' depends on axioms: [propext, Quot.sound]\n'Models.Pipeline.symptomatic_sound' does not depend on any axioms\n'Models.Pipeline.triage_actionable' depends on axioms: [propext]\n","stdout_sha256":"0dc16ef42f1b4fafea1004c5a0e46ae569ddbec65791ac9fc89c029e62401683","tool":"lean"} diff --git a/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Policy.lean b/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Policy.lean similarity index 100% rename from examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Policy.lean rename to examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Policy.lean diff --git a/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Policy.process.json b/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Policy.process.json new file mode 100644 index 000000000..df5bc2052 --- /dev/null +++ b/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Policy.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Policy.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Policy","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Models.Policy.Actionable' does not depend on any axioms\n'Models.Policy.Escalates' does not depend on any axioms\n'Models.Policy.PolicyContract.precondition_complete' does not depend on any axioms\n'Models.Policy.PolicyContract.precondition_sound' does not depend on any axioms\n'Models.Policy.PolicyEvidence.policy_escalates' does not depend on any axioms\n'Models.Policy.PolicyModel' does not depend on any axioms\n'Models.Policy.PolicyRules' does not depend on any axioms\n'Models.Policy.PolicyRules.selected' does not depend on any axioms\n'Models.Policy.actionableCheck' does not depend on any axioms\n'Models.Policy.actionable_check_complete' does not depend on any axioms\n'Models.Policy.actionable_check_sound' does not depend on any axioms\n'Models.Policy.emergency_dispatches' does not depend on any axioms\n'Models.Policy.isUrgent' does not depend on any axioms\n'Models.Policy.policy_escalates' does not depend on any axioms\n","stdout_sha256":"270b3535085cfe0cb7e75fc0f2df214d0fd2ec13f84dd5ee6c2c74e95db97b61","tool":"lean"} diff --git a/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Recognizer.lean b/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Recognizer.lean similarity index 100% rename from examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Recognizer.lean rename to examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Recognizer.lean diff --git a/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Recognizer.process.json b/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Recognizer.process.json new file mode 100644 index 000000000..dec88c4dc --- /dev/null +++ b/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Recognizer.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Recognizer.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Recognizer","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Models.Recognizer.DigitContract.postcondition_complete' depends on axioms: [propext]\n'Models.Recognizer.DigitContract.postcondition_sound' depends on axioms: [propext]\n'Models.Recognizer.DigitEvidence.digit_net_correct' depends on axioms: [propext]\n'Models.Recognizer.DigitEvidence.digit_net_exact' depends on axioms: [propext]\n'Models.Recognizer.DigitEvidence.labeled_agreement' depends on axioms: [propext]\n'Models.Recognizer.DigitModel' depends on axioms: [propext]\n'Models.Recognizer.DigitNet' depends on axioms: [propext]\n'Models.Recognizer.DigitNet.encoded' does not depend on any axioms\n'Models.Recognizer.DigitNet.layer1' does not depend on any axioms\n'Models.Recognizer.DigitNet.layer2' depends on axioms: [propext]\n'Models.Recognizer.DigitNet.layer3' depends on axioms: [propext]\n'Models.Recognizer.DigitNet.layer4' does not depend on any axioms\n'Models.Recognizer.DigitNet.logits' depends on axioms: [propext]\n'Models.Recognizer.RawDigitModel' depends on axioms: [propext]\n'Models.Recognizer.Recognizes' does not depend on any axioms\n'Models.Recognizer.banner' does not depend on any axioms\n'Models.Recognizer.banner.bytes' does not depend on any axioms\n'Models.Recognizer.banner.decoded' does not depend on any axioms\n'Models.Recognizer.digitName' does not depend on any axioms\n'Models.Recognizer.digitNames' does not depend on any axioms\n'Models.Recognizer.digitNames.bytes' does not depend on any axioms\n'Models.Recognizer.digitNames.decoded' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Models.Recognizer.digit_net_correct' depends on axioms: [propext]\n'Models.Recognizer.digit_net_exact' depends on axioms: [propext]\n'Models.Recognizer.digit_net_width' does not depend on any axioms\n'Models.Recognizer.hiddenBias' does not depend on any axioms\n'Models.Recognizer.hiddenBias.bytes' does not depend on any axioms\n'Models.Recognizer.hiddenBias.decoded' does not depend on any axioms\n'Models.Recognizer.hiddenWeights' does not depend on any axioms\n'Models.Recognizer.hiddenWeights.bytes' does not depend on any axioms\n'Models.Recognizer.hiddenWeights.decoded' does not depend on any axioms\n'Models.Recognizer.labeledGlyphs' does not depend on any axioms\n'Models.Recognizer.labeled_agreement' depends on axioms: [propext]\n'Models.Recognizer.outputBias' does not depend on any axioms\n'Models.Recognizer.outputBias.bytes' does not depend on any axioms\n'Models.Recognizer.outputBias.decoded' does not depend on any axioms\n'Models.Recognizer.outputWeights' does not depend on any axioms\n'Models.Recognizer.outputWeights.bytes' does not depend on any axioms\n'Models.Recognizer.outputWeights.decoded' does not depend on any axioms\n'Models.Recognizer.recognizesCheck' does not depend on any axioms\n'Models.Recognizer.recognizes_check_complete' depends on axioms: [propext]\n'Models.Recognizer.recognizes_check_sound' depends on axioms: [propext]\n'Models.Recognizer.sameDigit' does not depend on any axioms\n'Models.Recognizer.same_digit_sound' depends on axioms: [propext]\n","stdout_sha256":"60af4cd88341dc6ed70fd6c68abe9115fc2ca32ba7267d0e09c06d781e05bb3f","tool":"lean"} diff --git a/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Session.lean b/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Session.lean similarity index 100% rename from examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Session.lean rename to examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Session.lean diff --git a/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Session.process.json b/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Session.process.json new file mode 100644 index 000000000..ec9bf5fd8 --- /dev/null +++ b/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Session.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Session.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Session","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Models.Session.Affordable' does not depend on any axioms\n'Models.Session.Bounded' does not depend on any axioms\n'Models.Session.Conserves' does not depend on any axioms\n'Models.Session.SessionContract.invariant_sound' depends on axioms: [propext]\n'Models.Session.SessionContract.precondition_sound' depends on axioms: [propext]\n'Models.Session.SessionEvidence.session_conserves' depends on axioms: [propext, Quot.sound]\n'Models.Session.SessionEvidence.session_initial' does not depend on any axioms\n'Models.Session.SessionEvidence.session_preserves' depends on axioms: [propext, Quot.sound]\n'Models.Session.SessionModel' does not depend on any axioms\n'Models.Session.SessionModel.initial' does not depend on any axioms\n'Models.Session.SessionStep' does not depend on any axioms\n'Models.Session.SessionStep.initial' does not depend on any axioms\n'Models.Session.Window' does not depend on any axioms\n'Models.Session.affordableCheck' does not depend on any axioms\n'Models.Session.affordable_check_sound' depends on axioms: [propext]\n'Models.Session.boundedCheck' does not depend on any axioms\n'Models.Session.bounded_check_sound' depends on axioms: [propext]\n'Models.Session.session_conserves' depends on axioms: [propext, Quot.sound]\n'Models.Session.session_initial' does not depend on any axioms\n'Models.Session.session_preserves' depends on axioms: [propext, Quot.sound]\n","stdout_sha256":"5b3dd4ed72a0f66dee11301a85b919df9929b103d83b10386079e5666ff0ca8c","tool":"lean"} diff --git a/examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Triage.lean b/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Triage.lean similarity index 100% rename from examples/models/expected/verify/audit/LexLeanAudit.A49cf062e918bdc2f8a44a66473c4435e.Models.Triage.lean rename to examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Triage.lean diff --git a/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Triage.process.json b/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Triage.process.json new file mode 100644 index 000000000..55567b9eb --- /dev/null +++ b/examples/models/expected/verify/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Triage.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Triage.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A91b57d30cfd6f60128d6c72e374148ef.Models.Triage","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Models.Triage.Level' does not depend on any axioms\n'Models.Triage.Presentation' does not depend on any axioms\n'Models.Triage.Safe' does not depend on any axioms\n'Models.Triage.Symptomatic' does not depend on any axioms\n'Models.Triage.TriageContract.precondition_sound' does not depend on any axioms\n'Models.Triage.TriageEvidence.triage_safe' depends on axioms: [propext]\n'Models.Triage.TriageModel' depends on axioms: [propext]\n'Models.Triage.TriageScore' depends on axioms: [propext]\n'Models.Triage.TriageScore.features' does not depend on any axioms\n'Models.Triage.TriageScore.scores' does not depend on any axioms\n'Models.Triage.features' does not depend on any axioms\n'Models.Triage.hasSymptom' does not depend on any axioms\n'Models.Triage.isBreathless' does not depend on any axioms\n'Models.Triage.isEmergency' does not depend on any axioms\n'Models.Triage.isRoutine' does not depend on any axioms\n'Models.Triage.symptomaticCheck' does not depend on any axioms\n'Models.Triage.symptomatic_check_sound' does not depend on any axioms\n'Models.Triage.triageBias' does not depend on any axioms\n'Models.Triage.triageBias.bytes' does not depend on any axioms\n'Models.Triage.triageBias.decoded' does not depend on any axioms\n'Models.Triage.triageWeights' does not depend on any axioms\n'Models.Triage.triageWeights.bytes' does not depend on any axioms\n'Models.Triage.triageWeights.decoded' does not depend on any axioms\n'Models.Triage.triage_safe' depends on axioms: [propext]\n'Models.Triage.triage_width' does not depend on any axioms\n","stdout_sha256":"8f5494414737d009f24637a313c3f98408cfea4d290db1d9285d4af1f3d9525c","tool":"lean"} diff --git a/examples/models/expected/verify/extract/LexLeanExtract.X49cf062e918bdc2f8a44a66473c4435e.lean b/examples/models/expected/verify/extract/LexLeanExtract.X91b57d30cfd6f60128d6c72e374148ef.lean similarity index 100% rename from examples/models/expected/verify/extract/LexLeanExtract.X49cf062e918bdc2f8a44a66473c4435e.lean rename to examples/models/expected/verify/extract/LexLeanExtract.X91b57d30cfd6f60128d6c72e374148ef.lean diff --git a/examples/models/expected/verify/extract/process.json b/examples/models/expected/verify/extract/process.json index fc0d2e530..f143cda4d 100644 --- a/examples/models/expected/verify/extract/process.json +++ b/examples/models/expected/verify/extract/process.json @@ -1 +1 @@ -{"argv":["env","lean","$STAGING/extract/LexLeanExtract.X49cf062e918bdc2f8a44a66473c4435e.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanExtract.X49cf062e918bdc2f8a44a66473c4435e","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"{\"spec\":\"lexlean/lcnf-extraction/2\",\"lean\":{\"version\":\"4.32.1\",\"githash\":\"f054605aea4b840552cca2e725580bffd1e1b704\"},\"roots\":[\"Models.Main.classify\",\"Models.Main.classifyChecked\",\"Models.Main.respond\",\"Models.Main.admitCosts\",\"Models.Main.step\",\"Models.Main.ledgerPost\",\"Models.Main.ledgerFull\",\"Models.Main.guessChecked\",\"Models.Main.flowStep\"],\"constants\":[{\"name\":\"LexLeanCollections.Key\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanCollections.Key.mk\",\"parameters\":1,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}}}}]}},{\"name\":\"LexLeanCollections.instKeyInt\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"instOrdInt\",\"Ord.compare\",\"LexLeanCollections.Key.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.1\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Ord\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instOrdInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Ord\",\"index\":0,\"value\":\"_uniq.1\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.15\"}}}}},\"uses\":[\"Int\",\"Ord\",\"Ordering\",\"instOrdInt\",\"LexLeanCollections.Key\",\"LexLeanCollections.Key.mk\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.lessThan\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Ordering\",\"Unit\",\"Bool.false\",\"Bool.true\",\"LexLeanCollections.Key\",\"LexLeanCollections.Key.compare\",\"LexLeanCollections.lessThan.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}}}},\"parameters\":[{\"id\":\"_uniq.40\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"borrow\":false},{\"id\":\"_uniq.42\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.40\"},\"borrow\":false},{\"id\":\"_uniq.43\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.40\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.51\",\"parameters\":[{\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.50\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.51\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.58\",\"parameters\":[{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.58\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.40\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.40\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanCollections.Key\",\"index\":0,\"value\":\"_uniq.41\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Ordering\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.66\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Ordering.lt\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.52\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.68\"}}}},{\"kind\":\"default\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.73\",\"parameters\":[{\"id\":\"_uniq.71\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.59\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.66\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.72\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.73\",\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"any\"}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.74\"}}}}]}}}}}}}},\"uses\":[\"Bool\",\"Ordering\",\"PUnit\",\"Bool.false\",\"Bool.true\",\"LexLeanCollections.Key\",\"Ordering.lt\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.listFold\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"List.foldl\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":2}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}}},\"parameters\":[{\"id\":\"_uniq.53\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}}},\"borrow\":false},{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},\"borrow\":false},{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},\"value\":{\"kind\":\"const\",\"name\":\"List.foldl\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.64\"}}},\"uses\":[\"List\",\"List.foldl\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.Appendable\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.Appendable.mk\",\"parameters\":1,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"bvar\",\"index\":2}}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}}}}]}},{\"name\":\"LexLeanRuntime.Lengthable\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.Lengthable.mk\",\"parameters\":1,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}}}}]}},{\"name\":\"LexLeanRuntime.Quotient\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.Quotient.mk\",\"parameters\":1,\"fields\":3,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"bvar\",\"index\":2}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}}}]}},{\"name\":\"LexLeanRuntime.append\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.Appendable.append\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}},\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"borrow\":false},{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"borrow\":false},{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Appendable\",\"index\":0,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.39\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.40\"}}}},\"uses\":[\"LexLeanRuntime.Appendable\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instAppendableList\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"List.append\",\"LexLeanRuntime.Appendable.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]}]}},\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"List.appendTR\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}}},\"uses\":[\"List\",\"LexLeanRuntime.Appendable\",\"List.appendTR\",\"LexLeanRuntime.Appendable.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instLengthableList\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"List.length\",\"LexLeanRuntime.Lengthable.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]}]}},\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"List.lengthTR\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.10\"}}}},\"uses\":[\"List\",\"Nat\",\"LexLeanRuntime.Lengthable\",\"List.lengthTR\",\"LexLeanRuntime.Lengthable.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instQuotientInt\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"instBEqOfDecidableEq\",\"instOfNat\",\"BEq.beq\",\"Int.instDecidableEq\",\"Int.tdiv\",\"Int.tmod\",\"OfNat.ofNat\",\"LexLeanRuntime.Quotient.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.2\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"Int.tdiv\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.3\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"Int.tmod\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.15\",\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"Int.instDecidableEq\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"BEq\",\"index\":0,\"value\":\"_uniq.9\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.12\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.10\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.14\"}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.2\"},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.25\"}}}}}},\"uses\":[\"BEq\",\"Bool\",\"Decidable\",\"Int\",\"Nat\",\"OfNat\",\"instBEqOfDecidableEq\",\"instOfNat\",\"Int.instDecidableEq\",\"Int.tdiv\",\"Int.tmod\",\"LexLeanRuntime.Quotient\",\"LexLeanRuntime.Quotient.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.length\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.Lengthable.length\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}}},\"parameters\":[{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Lengthable\",\"index\":0,\"value\":\"_uniq.16\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.18\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.19\"}}}},\"uses\":[\"Nat\",\"LexLeanRuntime.Lengthable\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.multiply\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Mul\",\"instHMul\",\"HMul.hMul\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Mul\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}},\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Mul\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"borrow\":false},{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"borrow\":false},{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HMul\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instHMul\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HMul\",\"index\":0,\"value\":\"_uniq.39\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}}}},\"uses\":[\"HMul\",\"Mul\",\"instHMul\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.negate\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Neg\",\"Neg.neg\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Neg\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"bvar\",\"index\":2}}}},\"parameters\":[{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Neg\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"borrow\":false},{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Neg\",\"index\":0,\"value\":\"_uniq.26\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.35\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.36\"}}}},\"uses\":[\"Neg\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.quotient\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"LexLeanRuntime.Quotient\",\"LexLeanRuntime.Quotient.isZero\",\"LexLeanRuntime.Quotient.quotient\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":3},\"codomain\":{\"kind\":\"bvar\",\"index\":4}}}}}},\"parameters\":[{\"id\":\"_uniq.39\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"borrow\":false},{\"id\":\"_uniq.41\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"borrow\":false},{\"id\":\"_uniq.42\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"borrow\":false},{\"id\":\"_uniq.43\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Quotient\",\"index\":2,\"value\":\"_uniq.40\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.52\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"discriminant\":\"_uniq.55\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Quotient\",\"index\":0,\"value\":\"_uniq.40\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.59\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.60\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.43\"}}]}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.Quotient\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.subtract\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Sub\",\"instHSub\",\"HSub.hSub\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}},\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"borrow\":false},{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"borrow\":false},{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HSub\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instHSub\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HSub\",\"index\":0,\"value\":\"_uniq.39\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}}}},\"uses\":[\"HSub\",\"Sub\",\"instHSub\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.Key.compare\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanCollections.Key\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.Key.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.lessThan._sparseCasesOn_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Nat\",\"Ordering\",\"instOfNatNat\",\"Bool.false\",\"Eq.refl\",\"Nat.hasNotBit\",\"Nat.land\",\"Nat.ne_of_beq_eq_false\",\"Nat.shiftRight\",\"OfNat.ofNat\",\"Ordering.ctorIdx\",\"Ordering.eq\",\"Ordering.gt\",\"Ordering.lt\",\"Ordering.rec\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.lessThan.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Ordering\",\"Unit\",\"Nat.hasNotBit\",\"Ordering.ctorIdx\",\"Ordering.lt\",\"Unit.unit\",\"LexLeanCollections.lessThan._sparseCasesOn_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Appendable.append\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Appendable\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Appendable.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Lengthable.length\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Lengthable\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Lengthable.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Quotient.isZero\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Quotient\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Quotient.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Quotient.quotient\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Quotient\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Flows.ClampGuess\",\"kind\":\"definition\",\"module\":\"Models.Flows\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Except\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"ite\",\"Bool.false\",\"Bool.true\",\"Except.error\",\"Except.ok\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"Models.Ledger.ClampModel\",\"Models.Ledger.GuessModel\",\"Models.Ledger.belowCheck\",\"Models.Ledger.withinCheck\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}}},\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Ledger.ClampModel\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.32\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.33\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.34\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.33\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.36\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Ledger.withinCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.46\"},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.48\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.49\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.53\"}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Ledger.GuessModel\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Ledger.belowCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.66\"},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.67\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.68\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"},{\"kind\":\"fvar\",\"id\":\"_uniq.69\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.72\"}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.73\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.75\"}}}}]}}}}}}]}}}}}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Except\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"Bool.false\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Except.error\",\"Except.ok\",\"Prod.mk\",\"Models.Ledger.ClampModel\",\"Models.Ledger.GuessModel\",\"Models.Ledger.belowCheck\",\"Models.Ledger.withinCheck\"]},\"inductive\":null},{\"name\":\"Models.Flows.FlowModel\",\"kind\":\"definition\",\"module\":\"Models.Flows\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Models.Flows.ClampGuess\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Flows.ClampGuess\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.13\"}}},\"uses\":[\"Bool\",\"Except\",\"Nat\",\"Prod\",\"Models.Flows.ClampGuess\"]},\"inductive\":null},{\"name\":\"Models.Glyphs.Glyph\",\"kind\":\"inductive\",\"module\":\"Models.Glyphs\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Models.Glyphs.Glyph.g0\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]}},{\"name\":\"Models.Glyphs.Glyph.g1\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]}},{\"name\":\"Models.Glyphs.Glyph.g2\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]}},{\"name\":\"Models.Glyphs.Glyph.g3\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]}},{\"name\":\"Models.Glyphs.Glyph.g4\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]}},{\"name\":\"Models.Glyphs.Glyph.g5\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]}},{\"name\":\"Models.Glyphs.Glyph.g6\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]}},{\"name\":\"Models.Glyphs.Glyph.g7\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]}},{\"name\":\"Models.Glyphs.Glyph.g8\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]}},{\"name\":\"Models.Glyphs.Glyph.g9\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]}}]}},{\"name\":\"Models.Glyphs.digitOf\",\"kind\":\"definition\",\"module\":\"Models.Glyphs\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Unit\",\"instOfNatNat\",\"OfNat.ofNat\",\"Models.Glyphs.Glyph\",\"Models.Glyphs.encode.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.88\",\"parameters\":[{\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.85\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.86\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.87\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.88\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.95\",\"parameters\":[{\"id\":\"_uniq.91\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.93\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.94\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.95\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.102\",\"parameters\":[{\"id\":\"_uniq.98\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.99\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.100\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.101\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.102\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.109\",\"parameters\":[{\"id\":\"_uniq.105\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.106\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.107\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.108\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.110\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.109\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.116\",\"parameters\":[{\"id\":\"_uniq.112\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.113\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"4\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.113\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.114\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.115\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.116\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.123\",\"parameters\":[{\"id\":\"_uniq.119\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.120\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"5\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.121\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.120\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.121\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.122\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.124\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.123\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.130\",\"parameters\":[{\"id\":\"_uniq.126\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.127\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"6\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.128\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.127\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.129\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.128\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.129\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.131\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.130\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.137\",\"parameters\":[{\"id\":\"_uniq.133\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"7\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.135\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.134\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.135\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.136\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.138\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.137\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.144\",\"parameters\":[{\"id\":\"_uniq.140\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.141\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"8\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.142\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.141\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.143\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.142\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.143\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.145\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.144\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.151\",\"parameters\":[{\"id\":\"_uniq.147\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.148\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"9\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.149\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.148\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.150\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.149\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.150\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.152\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.151\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Models.Glyphs.Glyph\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.70\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Models.Glyphs.Glyph.g0\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.165\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.166\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.89\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.165\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.166\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Glyphs.Glyph.g1\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.167\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.168\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.96\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.167\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.168\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Glyphs.Glyph.g2\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.169\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.170\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.103\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.169\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.170\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Glyphs.Glyph.g3\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.171\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.172\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.110\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.171\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.172\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Glyphs.Glyph.g4\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.173\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.174\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.117\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.173\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.174\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Glyphs.Glyph.g5\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.175\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.176\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.124\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.175\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.176\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Glyphs.Glyph.g6\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.177\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.178\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.131\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.177\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.178\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Glyphs.Glyph.g7\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.179\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.180\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.138\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.179\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.180\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Glyphs.Glyph.g8\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.181\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.182\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.145\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.181\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.182\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Glyphs.Glyph.g9\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.183\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.184\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.152\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.183\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.184\"}}}}]}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Nat\",\"OfNat\",\"PUnit\",\"instOfNatNat\",\"Unit.unit\",\"Models.Glyphs.Glyph\",\"Models.Glyphs.Glyph.g0\",\"Models.Glyphs.Glyph.g1\",\"Models.Glyphs.Glyph.g2\",\"Models.Glyphs.Glyph.g3\",\"Models.Glyphs.Glyph.g4\",\"Models.Glyphs.Glyph.g5\",\"Models.Glyphs.Glyph.g6\",\"Models.Glyphs.Glyph.g7\",\"Models.Glyphs.Glyph.g8\",\"Models.Glyphs.Glyph.g9\"]},\"inductive\":null},{\"name\":\"Models.Glyphs.encode\",\"kind\":\"definition\",\"module\":\"Models.Glyphs\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"List\",\"Unit\",\"instOfNat\",\"List.cons\",\"List.nil\",\"OfNat.ofNat\",\"Models.Glyphs.Glyph\",\"Models.Glyphs.encode.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.99\",\"parameters\":[{\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.85\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.86\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.89\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.90\"},{\"kind\":\"fvar\",\"id\":\"_uniq.91\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"},{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"},{\"kind\":\"fvar\",\"id\":\"_uniq.93\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"},{\"kind\":\"fvar\",\"id\":\"_uniq.94\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"},{\"kind\":\"fvar\",\"id\":\"_uniq.95\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"},{\"kind\":\"fvar\",\"id\":\"_uniq.96\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"},{\"kind\":\"fvar\",\"id\":\"_uniq.97\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.98\"}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.99\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.117\",\"parameters\":[{\"id\":\"_uniq.102\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.104\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.106\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.107\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.110\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.105\"},{\"kind\":\"fvar\",\"id\":\"_uniq.109\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.111\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.105\"},{\"kind\":\"fvar\",\"id\":\"_uniq.110\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.105\"},{\"kind\":\"fvar\",\"id\":\"_uniq.111\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.113\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.105\"},{\"kind\":\"fvar\",\"id\":\"_uniq.112\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"},{\"kind\":\"fvar\",\"id\":\"_uniq.113\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"},{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.105\"},{\"kind\":\"fvar\",\"id\":\"_uniq.115\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.116\"}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.118\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.117\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.135\",\"parameters\":[{\"id\":\"_uniq.120\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.121\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.121\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.122\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.124\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.124\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.125\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.127\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.128\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.123\"},{\"kind\":\"fvar\",\"id\":\"_uniq.127\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.129\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.126\"},{\"kind\":\"fvar\",\"id\":\"_uniq.128\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.130\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.123\"},{\"kind\":\"fvar\",\"id\":\"_uniq.129\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.131\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.123\"},{\"kind\":\"fvar\",\"id\":\"_uniq.130\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.132\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.126\"},{\"kind\":\"fvar\",\"id\":\"_uniq.131\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.123\"},{\"kind\":\"fvar\",\"id\":\"_uniq.132\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.123\"},{\"kind\":\"fvar\",\"id\":\"_uniq.133\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.134\"}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.135\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.153\",\"parameters\":[{\"id\":\"_uniq.138\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.139\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.140\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.139\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.141\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.140\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.142\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.143\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.142\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.144\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.143\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.145\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.146\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.141\"},{\"kind\":\"fvar\",\"id\":\"_uniq.145\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.147\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.144\"},{\"kind\":\"fvar\",\"id\":\"_uniq.146\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.148\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.144\"},{\"kind\":\"fvar\",\"id\":\"_uniq.147\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.149\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.141\"},{\"kind\":\"fvar\",\"id\":\"_uniq.148\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.150\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.141\"},{\"kind\":\"fvar\",\"id\":\"_uniq.149\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.151\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.141\"},{\"kind\":\"fvar\",\"id\":\"_uniq.150\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.152\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.141\"},{\"kind\":\"fvar\",\"id\":\"_uniq.151\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.152\"}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.154\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.153\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.171\",\"parameters\":[{\"id\":\"_uniq.156\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.157\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.158\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.157\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.159\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.158\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.160\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.161\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.160\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.162\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.161\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.163\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.164\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.162\"},{\"kind\":\"fvar\",\"id\":\"_uniq.163\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.165\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.162\"},{\"kind\":\"fvar\",\"id\":\"_uniq.164\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.166\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.159\"},{\"kind\":\"fvar\",\"id\":\"_uniq.165\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.167\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.159\"},{\"kind\":\"fvar\",\"id\":\"_uniq.166\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.168\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.162\"},{\"kind\":\"fvar\",\"id\":\"_uniq.167\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.169\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.162\"},{\"kind\":\"fvar\",\"id\":\"_uniq.168\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.170\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.159\"},{\"kind\":\"fvar\",\"id\":\"_uniq.169\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.170\"}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.172\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.171\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.189\",\"parameters\":[{\"id\":\"_uniq.174\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.175\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.176\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.175\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.177\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.176\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.178\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.179\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.178\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.180\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.179\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.181\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.182\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.177\"},{\"kind\":\"fvar\",\"id\":\"_uniq.181\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.183\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.177\"},{\"kind\":\"fvar\",\"id\":\"_uniq.182\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.184\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.180\"},{\"kind\":\"fvar\",\"id\":\"_uniq.183\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.185\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.177\"},{\"kind\":\"fvar\",\"id\":\"_uniq.184\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.186\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.177\"},{\"kind\":\"fvar\",\"id\":\"_uniq.185\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.187\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.180\"},{\"kind\":\"fvar\",\"id\":\"_uniq.186\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.188\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.177\"},{\"kind\":\"fvar\",\"id\":\"_uniq.187\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.188\"}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.190\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.189\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.207\",\"parameters\":[{\"id\":\"_uniq.192\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.193\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.194\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.193\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.195\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.194\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.196\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.197\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.196\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.198\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.197\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.199\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.200\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.195\"},{\"kind\":\"fvar\",\"id\":\"_uniq.199\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.201\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.195\"},{\"kind\":\"fvar\",\"id\":\"_uniq.200\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.202\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.195\"},{\"kind\":\"fvar\",\"id\":\"_uniq.201\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.203\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.195\"},{\"kind\":\"fvar\",\"id\":\"_uniq.202\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.204\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.195\"},{\"kind\":\"fvar\",\"id\":\"_uniq.203\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.205\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.198\"},{\"kind\":\"fvar\",\"id\":\"_uniq.204\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.206\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.195\"},{\"kind\":\"fvar\",\"id\":\"_uniq.205\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.206\"}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.208\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.207\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.225\",\"parameters\":[{\"id\":\"_uniq.210\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.211\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.212\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.211\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.213\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.212\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.214\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.215\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.214\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.216\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.215\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.217\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.218\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.216\"},{\"kind\":\"fvar\",\"id\":\"_uniq.217\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.219\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.216\"},{\"kind\":\"fvar\",\"id\":\"_uniq.218\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.220\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.216\"},{\"kind\":\"fvar\",\"id\":\"_uniq.219\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.221\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.216\"},{\"kind\":\"fvar\",\"id\":\"_uniq.220\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.222\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.213\"},{\"kind\":\"fvar\",\"id\":\"_uniq.221\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.223\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.213\"},{\"kind\":\"fvar\",\"id\":\"_uniq.222\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.224\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.213\"},{\"kind\":\"fvar\",\"id\":\"_uniq.223\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.224\"}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.226\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.225\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.240\",\"parameters\":[{\"id\":\"_uniq.228\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.229\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.230\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.229\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.231\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.230\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.232\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.233\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.231\"},{\"kind\":\"fvar\",\"id\":\"_uniq.232\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.234\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.231\"},{\"kind\":\"fvar\",\"id\":\"_uniq.233\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.235\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.231\"},{\"kind\":\"fvar\",\"id\":\"_uniq.234\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.236\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.231\"},{\"kind\":\"fvar\",\"id\":\"_uniq.235\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.237\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.231\"},{\"kind\":\"fvar\",\"id\":\"_uniq.236\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.238\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.231\"},{\"kind\":\"fvar\",\"id\":\"_uniq.237\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.239\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.231\"},{\"kind\":\"fvar\",\"id\":\"_uniq.238\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.239\"}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.241\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.240\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.258\",\"parameters\":[{\"id\":\"_uniq.243\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.244\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.245\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.244\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.246\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.245\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.247\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.248\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.247\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.249\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.248\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.250\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.251\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.246\"},{\"kind\":\"fvar\",\"id\":\"_uniq.250\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.252\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.246\"},{\"kind\":\"fvar\",\"id\":\"_uniq.251\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.253\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.249\"},{\"kind\":\"fvar\",\"id\":\"_uniq.252\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.254\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.246\"},{\"kind\":\"fvar\",\"id\":\"_uniq.253\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.255\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.246\"},{\"kind\":\"fvar\",\"id\":\"_uniq.254\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.256\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.246\"},{\"kind\":\"fvar\",\"id\":\"_uniq.255\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.257\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.246\"},{\"kind\":\"fvar\",\"id\":\"_uniq.256\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.257\"}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.259\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.258\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Models.Glyphs.Glyph\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"discriminant\":\"_uniq.70\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Models.Glyphs.Glyph.g0\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.272\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.273\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.100\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.272\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.273\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Glyphs.Glyph.g1\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.274\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.275\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.118\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.274\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.275\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Glyphs.Glyph.g2\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.276\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.277\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.136\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.276\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.277\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Glyphs.Glyph.g3\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.278\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.279\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.154\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.278\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.279\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Glyphs.Glyph.g4\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.280\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.281\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.172\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.280\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.281\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Glyphs.Glyph.g5\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.282\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.283\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.190\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.282\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.283\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Glyphs.Glyph.g6\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.284\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.285\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.208\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.284\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.285\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Glyphs.Glyph.g7\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.286\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.287\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.226\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.286\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.287\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Glyphs.Glyph.g8\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.288\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.289\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.241\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.288\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.289\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Glyphs.Glyph.g9\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.290\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.291\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.259\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.290\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.291\"}}}}]}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Int\",\"List\",\"Nat\",\"OfNat\",\"PUnit\",\"instOfNat\",\"List.cons\",\"List.nil\",\"Unit.unit\",\"Models.Glyphs.Glyph\",\"Models.Glyphs.Glyph.g0\",\"Models.Glyphs.Glyph.g1\",\"Models.Glyphs.Glyph.g2\",\"Models.Glyphs.Glyph.g3\",\"Models.Glyphs.Glyph.g4\",\"Models.Glyphs.Glyph.g5\",\"Models.Glyphs.Glyph.g6\",\"Models.Glyphs.Glyph.g7\",\"Models.Glyphs.Glyph.g8\",\"Models.Glyphs.Glyph.g9\"]},\"inductive\":null},{\"name\":\"Models.Ledger.Clamp\",\"kind\":\"definition\",\"module\":\"Models.Ledger\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"instSubNat\",\"HAdd.hAdd\",\"LexLeanRuntime.subtract\",\"OfNat.ofNat\",\"Prod.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.18\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.19\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.20\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"100\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.24\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.28\"}}}}}}}}}}}}}},\"uses\":[\"Add\",\"HAdd\",\"Nat\",\"OfNat\",\"Prod\",\"Sub\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"instSubNat\",\"LexLeanRuntime.subtract\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Models.Ledger.ClampModel\",\"kind\":\"definition\",\"module\":\"Models.Ledger\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Models.Ledger.Clamp\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Ledger.Clamp\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.13\"}}},\"uses\":[\"Nat\",\"Prod\",\"Models.Ledger.Clamp\"]},\"inductive\":null},{\"name\":\"Models.Ledger.Guess\",\"kind\":\"definition\",\"module\":\"Models.Ledger\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"instSubNat\",\"LexLeanRuntime.subtract\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.9\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.11\"}}}}}}},\"uses\":[\"Nat\",\"OfNat\",\"Sub\",\"instOfNatNat\",\"instSubNat\",\"LexLeanRuntime.subtract\"]},\"inductive\":null},{\"name\":\"Models.Ledger.GuessModel\",\"kind\":\"definition\",\"module\":\"Models.Ledger\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Models.Ledger.Guess\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Ledger.Guess\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}},\"uses\":[\"Nat\",\"Models.Ledger.Guess\"]},\"inductive\":null},{\"name\":\"Models.Ledger.Spill\",\"kind\":\"definition\",\"module\":\"Models.Ledger\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instAddNat\",\"instHAdd\",\"HAdd.hAdd\",\"Prod.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.14\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.15\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.17\"}}}}}}},\"uses\":[\"Add\",\"HAdd\",\"Nat\",\"Prod\",\"instAddNat\",\"instHAdd\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Models.Ledger.SpillModel\",\"kind\":\"definition\",\"module\":\"Models.Ledger\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Models.Ledger.Spill\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Ledger.Spill\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.13\"}}},\"uses\":[\"Nat\",\"Prod\",\"Models.Ledger.Spill\"]},\"inductive\":null},{\"name\":\"Models.Ledger.SpillRawModel\",\"kind\":\"definition\",\"module\":\"Models.Ledger\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Models.Ledger.Spill\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Ledger.Spill\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.13\"}}},\"uses\":[\"Nat\",\"Prod\",\"Models.Ledger.Spill\"]},\"inductive\":null},{\"name\":\"Models.Ledger.belowCheck\",\"kind\":\"definition\",\"module\":\"Models.Ledger\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Nat.ble\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.13\"}}},\"uses\":[\"Bool\",\"Nat\",\"Nat.ble\"]},\"inductive\":null},{\"name\":\"Models.Ledger.cappedCheck\",\"kind\":\"definition\",\"module\":\"Models.Ledger\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Nat.ble\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"100\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.8\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.10\"}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"instOfNatNat\",\"Nat.ble\"]},\"inductive\":null},{\"name\":\"Models.Ledger.growsCheck\",\"kind\":\"definition\",\"module\":\"Models.Ledger\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Nat.ble\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}}}},\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.25\"}}},\"uses\":[\"Bool\",\"Nat\",\"Nat.ble\"]},\"inductive\":null},{\"name\":\"Models.Ledger.smallCheck\",\"kind\":\"definition\",\"module\":\"Models.Ledger\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Nat.ble\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"10\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.14\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.16\"}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"instOfNatNat\",\"Nat.ble\"]},\"inductive\":null},{\"name\":\"Models.Ledger.withinCheck\",\"kind\":\"definition\",\"module\":\"Models.Ledger\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Nat.ble\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"10\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.8\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.10\"}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"instOfNatNat\",\"Nat.ble\"]},\"inductive\":null},{\"name\":\"Models.Main.admitCosts\",\"kind\":\"definition\",\"module\":\"Models.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Except\",\"List\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"ite\",\"Bool.false\",\"Bool.true\",\"Except.error\",\"Except.ok\",\"Prod.mk\",\"Models.Pipeline.StreamModel\",\"Models.Pipeline.shortStreamCheck\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}},\"parameters\":[{\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.13\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Pipeline.shortStreamCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"discriminant\":\"_uniq.26\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.30\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Pipeline.StreamModel\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.33\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.35\"}}}}}]}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Except\",\"List\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"Bool.false\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Except.error\",\"Except.ok\",\"Prod.mk\",\"Models.Pipeline.StreamModel\",\"Models.Pipeline.shortStreamCheck\"]},\"inductive\":null},{\"name\":\"Models.Main.classify\",\"kind\":\"definition\",\"module\":\"Models.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Models.Glyphs.Glyph\",\"Models.Recognizer.DigitModel\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Recognizer.DigitModel\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}},\"uses\":[\"Nat\",\"Models.Glyphs.Glyph\",\"Models.Recognizer.DigitModel\"]},\"inductive\":null},{\"name\":\"Models.Main.classifyChecked\",\"kind\":\"definition\",\"module\":\"Models.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Except\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"ite\",\"Bool.false\",\"Bool.true\",\"Except.error\",\"Except.ok\",\"Prod.mk\",\"Models.Glyphs.Glyph\",\"Models.Recognizer.RawDigitModel\",\"Models.Recognizer.recognizesCheck\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.15\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Recognizer.RawDigitModel\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.19\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Recognizer.recognizesCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.31\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.41\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.42\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.49\"}}}]}}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Except\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"Bool.false\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Except.error\",\"Except.ok\",\"Prod.mk\",\"Models.Glyphs.Glyph\",\"Models.Recognizer.RawDigitModel\",\"Models.Recognizer.recognizesCheck\"]},\"inductive\":null},{\"name\":\"Models.Main.flowStep\",\"kind\":\"definition\",\"module\":\"Models.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Except\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"ite\",\"Bool.false\",\"Bool.true\",\"Except.error\",\"Except.ok\",\"Prod.fst\",\"Prod.mk\",\"Models.Flows.FlowModel\",\"Models.Ledger.cappedCheck\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}}},\"parameters\":[{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.24\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.25\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Ledger.cappedCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.38\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"discriminant\":\"_uniq.40\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.41\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.44\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.45\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Flows.FlowModel\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.47\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.48\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Ledger.cappedCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.58\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"discriminant\":\"_uniq.59\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.62\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.63\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.64\"}}}]}}}}}}}]}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Except\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"Bool.false\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Except.error\",\"Except.ok\",\"Prod.mk\",\"Models.Flows.FlowModel\",\"Models.Ledger.cappedCheck\"]},\"inductive\":null},{\"name\":\"Models.Main.guessChecked\",\"kind\":\"definition\",\"module\":\"Models.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Except\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"ite\",\"Bool.false\",\"Bool.true\",\"Except.error\",\"Except.ok\",\"Prod.mk\",\"Models.Ledger.GuessModel\",\"Models.Ledger.belowCheck\",\"Models.Ledger.withinCheck\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.16\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Ledger.withinCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.29\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.33\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Ledger.GuessModel\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.36\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Ledger.belowCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.46\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.47\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.48\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.51\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.52\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.53\"}}}]}}}}}}]}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Except\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"Bool.false\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Except.error\",\"Except.ok\",\"Prod.mk\",\"Models.Ledger.GuessModel\",\"Models.Ledger.belowCheck\",\"Models.Ledger.withinCheck\"]},\"inductive\":null},{\"name\":\"Models.Main.ledgerFull\",\"kind\":\"definition\",\"module\":\"Models.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Except\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"ite\",\"Bool.false\",\"Bool.true\",\"Except.error\",\"Except.ok\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"Models.Ledger.SpillRawModel\",\"Models.Ledger.cappedCheck\",\"Models.Ledger.growsCheck\",\"Models.Ledger.smallCheck\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}}},\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.30\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.31\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Ledger.cappedCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.44\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.46\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.47\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.50\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.51\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Ledger.smallCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.61\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.62\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.65\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.66\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Ledger.SpillRawModel\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.68\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.69\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Ledger.cappedCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.78\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.79\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.80\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.81\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.82\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.83\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.84\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.69\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Ledger.growsCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.78\"},{\"kind\":\"fvar\",\"id\":\"_uniq.93\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.94\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.95\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.96\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.97\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.98\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.99\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.100\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.69\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.101\"}}}]}}}}}]}}}}}}}]}}}}]}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Except\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"Bool.false\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Except.error\",\"Except.ok\",\"Prod.mk\",\"Models.Ledger.SpillRawModel\",\"Models.Ledger.cappedCheck\",\"Models.Ledger.growsCheck\",\"Models.Ledger.smallCheck\"]},\"inductive\":null},{\"name\":\"Models.Main.ledgerPost\",\"kind\":\"definition\",\"module\":\"Models.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Except\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"ite\",\"Bool.false\",\"Bool.true\",\"Except.error\",\"Except.ok\",\"Prod.fst\",\"Prod.mk\",\"Models.Ledger.SpillModel\",\"Models.Ledger.cappedCheck\",\"Models.Ledger.smallCheck\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}}},\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.27\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.28\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Ledger.cappedCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.43\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.47\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.48\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Ledger.smallCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.58\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.62\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.63\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Ledger.SpillModel\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.66\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Ledger.cappedCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.76\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.77\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.78\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.79\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.80\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.81\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.66\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.82\"}}}]}}}}}}}]}}}}]}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Except\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"Bool.false\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Except.error\",\"Except.ok\",\"Prod.mk\",\"Models.Ledger.SpillModel\",\"Models.Ledger.cappedCheck\",\"Models.Ledger.smallCheck\"]},\"inductive\":null},{\"name\":\"Models.Main.respond\",\"kind\":\"definition\",\"module\":\"Models.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Except\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"ite\",\"Bool.false\",\"Bool.true\",\"Except.error\",\"Except.ok\",\"Prod.mk\",\"Models.Pipeline.PipelineModel\",\"Models.Triage.Presentation\",\"Models.Triage.symptomaticCheck\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.13\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Triage.symptomaticCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.26\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.30\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Pipeline.PipelineModel\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.33\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.35\"}}}}}]}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Except\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"Bool.false\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Except.error\",\"Except.ok\",\"Prod.mk\",\"Models.Pipeline.PipelineModel\",\"Models.Triage.Presentation\",\"Models.Triage.symptomaticCheck\"]},\"inductive\":null},{\"name\":\"Models.Main.step\",\"kind\":\"definition\",\"module\":\"Models.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Except\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"ite\",\"Bool.false\",\"Bool.true\",\"Except.error\",\"Except.ok\",\"Prod.mk\",\"Models.Session.SessionModel\",\"Models.Session.Window\",\"Models.Session.affordableCheck\",\"Models.Session.boundedCheck\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}}},\"parameters\":[{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.23\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.24\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Session.boundedCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.39\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.40\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.43\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Session.affordableCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.54\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.58\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Session.SessionModel\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.61\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.63\"}}}}}]}}}}]}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Except\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"Bool.false\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Except.error\",\"Except.ok\",\"Prod.mk\",\"Models.Session.SessionModel\",\"Models.Session.Window\",\"Models.Session.affordableCheck\",\"Models.Session.boundedCheck\"]},\"inductive\":null},{\"name\":\"Models.Pipeline.PipelineModel\",\"kind\":\"definition\",\"module\":\"Models.Pipeline\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Models.Pipeline.TriagePipeline\",\"Models.Triage.Presentation\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Pipeline.TriagePipeline\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}},\"uses\":[\"Nat\",\"Models.Pipeline.TriagePipeline\",\"Models.Triage.Presentation\"]},\"inductive\":null},{\"name\":\"Models.Pipeline.SessionStream\",\"kind\":\"definition\",\"module\":\"Models.Pipeline\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Except\",\"List\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"ite\",\"Bool.false\",\"Bool.true\",\"Except.error\",\"Except.ok\",\"LexLeanCollections.listFold\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"List.cons\",\"List.nil\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"Models.Session.SessionModel\",\"Models.Session.Window\",\"Models.Session.affordableCheck\",\"Models.Session.boundedCheck\",\"Models.Pipeline.SessionStream.match_1\",\"Models.Session.SessionModel.initial\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"parameters\":[{\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.140\",\"parameters\":[{\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"borrow\":false},{\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.71\",\"parameters\":[{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.63\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.71\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.123\",\"parameters\":[{\"id\":\"_uniq.76\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.76\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Session.boundedCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.85\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.86\"},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"discriminant\":\"_uniq.88\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.89\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.90\"},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.91\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.92\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.93\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Session.affordableCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.85\"},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.102\"},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"discriminant\":\"_uniq.103\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.104\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.105\"},{\"kind\":\"fvar\",\"id\":\"_uniq.105\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.106\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.107\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.108\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.110\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Session.SessionModel\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.85\"},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.111\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.110\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.111\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.113\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.76\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.111\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.115\"},{\"kind\":\"fvar\",\"id\":\"_uniq.116\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.118\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.113\"},{\"kind\":\"fvar\",\"id\":\"_uniq.114\"},{\"kind\":\"fvar\",\"id\":\"_uniq.117\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.112\"},{\"kind\":\"fvar\",\"id\":\"_uniq.118\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.120\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.119\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.120\"}}}}}}}}}}}}}]}}}}]}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.124\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.123\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Except\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"discriminant\":\"_uniq.63\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Except.error\",\"parameters\":[{\"id\":\"_uniq.135\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.72\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.135\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.136\"}}},{\"kind\":\"constructor\",\"constructor\":\"Except.ok\",\"parameters\":[{\"id\":\"_uniq.137\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.138\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.124\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.137\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.138\"}}}]}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.141\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Session.SessionModel.initial\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.142\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.143\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.141\"},{\"kind\":\"fvar\",\"id\":\"_uniq.142\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.144\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.143\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.145\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.140\"},{\"kind\":\"fvar\",\"id\":\"_uniq.144\"},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.146\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.145\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.152\",\"parameters\":[{\"id\":\"_uniq.150\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.151\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.150\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.151\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.153\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.152\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.160\",\"parameters\":[{\"id\":\"_uniq.157\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.158\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.157\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.159\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.158\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.159\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.161\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.160\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Except\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.146\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Except.error\",\"parameters\":[{\"id\":\"_uniq.172\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.173\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.153\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.172\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.173\"}}},{\"kind\":\"constructor\",\"constructor\":\"Except.ok\",\"parameters\":[{\"id\":\"_uniq.174\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.175\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.161\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.174\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.175\"}}}]}}}}}}}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Except\",\"List\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"Bool.false\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Except.error\",\"Except.ok\",\"LexLeanCollections.listFold\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"List.cons\",\"List.nil\",\"Prod.mk\",\"Models.Session.SessionModel\",\"Models.Session.Window\",\"Models.Session.affordableCheck\",\"Models.Session.boundedCheck\",\"Models.Session.SessionModel.initial\"]},\"inductive\":null},{\"name\":\"Models.Pipeline.StreamModel\",\"kind\":\"definition\",\"module\":\"Models.Pipeline\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Models.Pipeline.SessionStream\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Pipeline.SessionStream\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}},\"uses\":[\"Bool\",\"Except\",\"List\",\"Nat\",\"Prod\",\"Models.Pipeline.SessionStream\"]},\"inductive\":null},{\"name\":\"Models.Pipeline.TriagePipeline\",\"kind\":\"definition\",\"module\":\"Models.Pipeline\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Models.Policy.PolicyModel\",\"Models.Triage.Level\",\"Models.Triage.Presentation\",\"Models.Triage.TriageModel\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Triage.TriageModel\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.15\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Policy.PolicyModel\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.17\",\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.18\"}}}}}},\"uses\":[\"Nat\",\"Models.Policy.PolicyModel\",\"Models.Triage.Level\",\"Models.Triage.Presentation\",\"Models.Triage.TriageModel\"]},\"inductive\":null},{\"name\":\"Models.Pipeline.shortStreamCheck\",\"kind\":\"definition\",\"module\":\"Models.Pipeline\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"instOfNatNat\",\"LexLeanRuntime.instLengthableList\",\"LexLeanRuntime.length\",\"Nat.blt\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1001\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.10\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.12\"}}}}}}}},\"uses\":[\"Bool\",\"List\",\"Nat\",\"OfNat\",\"instOfNatNat\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableList\",\"LexLeanRuntime.length\",\"Nat.blt\"]},\"inductive\":null},{\"name\":\"Models.Policy.PolicyModel\",\"kind\":\"definition\",\"module\":\"Models.Policy\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Models.Policy.PolicyRules\",\"Models.Triage.Level\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Policy.PolicyRules\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}},\"uses\":[\"Nat\",\"Models.Policy.PolicyRules\",\"Models.Triage.Level\"]},\"inductive\":null},{\"name\":\"Models.Policy.PolicyRules\",\"kind\":\"definition\",\"module\":\"Models.Policy\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Nat\",\"instDecidableEqBool\",\"instOfNatNat\",\"ite\",\"Bool.true\",\"OfNat.ofNat\",\"Models.Policy.isUrgent\",\"Models.Triage.Level\",\"Models.Triage.isEmergency\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Triage.isEmergency\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.23\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Policy.isUrgent\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.34\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.37\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.38\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.39\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.41\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.42\"}}}}}]}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.46\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.47\"}}}}}]}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Nat\",\"OfNat\",\"instDecidableEqBool\",\"instOfNatNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Models.Policy.isUrgent\",\"Models.Triage.Level\",\"Models.Triage.isEmergency\"]},\"inductive\":null},{\"name\":\"Models.Policy.isUrgent\",\"kind\":\"definition\",\"module\":\"Models.Policy\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Unit\",\"Bool.false\",\"Bool.true\",\"Models.Triage.Level\",\"Models.Policy.isUrgent.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.35\",\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.34\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.35\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.40\",\"parameters\":[{\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.39\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.40\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.35\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Models.Triage.Level\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.26\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Models.Triage.Level.routine\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.36\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.50\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Triage.Level.urgent\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.41\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.52\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Triage.Level.emergency\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.43\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.54\"}}}}]}}}}}}},\"uses\":[\"Bool\",\"PUnit\",\"Bool.false\",\"Bool.true\",\"Unit.unit\",\"Models.Triage.Level\",\"Models.Triage.Level.emergency\",\"Models.Triage.Level.routine\",\"Models.Triage.Level.urgent\"]},\"inductive\":null},{\"name\":\"Models.Recognizer.DigitModel\",\"kind\":\"definition\",\"module\":\"Models.Recognizer\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Models.Glyphs.Glyph\",\"Models.Recognizer.DigitNet\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Recognizer.DigitNet\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}},\"uses\":[\"Nat\",\"Models.Glyphs.Glyph\",\"Models.Recognizer.DigitNet\"]},\"inductive\":null},{\"name\":\"Models.Recognizer.DigitNet\",\"kind\":\"definition\",\"module\":\"Models.Recognizer\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Int\",\"List\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"instDecidableEqBool\",\"instOfNatNat\",\"ite\",\"Bool.true\",\"LexLeanCollections.instKeyInt\",\"LexLeanCollections.lessThan\",\"LexLeanCollections.listFold\",\"List.cons\",\"List.nil\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"Models.Glyphs.Glyph\",\"Models.Recognizer.DigitNet.logits\",\"Models.Recognizer.DigitNet.match_1\",\"Models.Recognizer.DigitNet.match_3\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.74\",\"parameters\":[{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.72\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.73\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.74\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.81\",\"parameters\":[{\"id\":\"_uniq.79\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.79\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.80\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.81\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.187\",\"parameters\":[{\"id\":\"_uniq.96\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"borrow\":false},{\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.104\",\"parameters\":[{\"id\":\"_uniq.103\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.96\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.104\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.170\",\"parameters\":[{\"id\":\"_uniq.112\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.113\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.122\",\"parameters\":[{\"id\":\"_uniq.119\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.120\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.112\"},{\"kind\":\"fvar\",\"id\":\"_uniq.97\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.121\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.120\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.121\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.122\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.147\",\"parameters\":[{\"id\":\"_uniq.127\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.instKeyInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.137\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.127\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.138\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.lessThan\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.136\"},{\"kind\":\"fvar\",\"id\":\"_uniq.137\"},{\"kind\":\"fvar\",\"id\":\"_uniq.97\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.139\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.140\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.138\"},{\"kind\":\"fvar\",\"id\":\"_uniq.139\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.140\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.141\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.142\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.127\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.142\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.143\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.144\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.112\"},{\"kind\":\"fvar\",\"id\":\"_uniq.97\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.145\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.144\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.145\"}}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.148\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.147\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.156\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.96\"},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.163\",\"parameters\":[{\"id\":\"_uniq.161\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.162\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.161\"},{\"kind\":\"fvar\",\"id\":\"_uniq.113\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.162\"}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.169\",\"parameters\":[{\"id\":\"_uniq.167\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.168\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.148\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.167\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.163\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.168\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.166\",\"parameters\":[{\"id\":\"_uniq.164\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.165\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.123\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.164\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.163\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.165\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.156\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.157\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.166\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.157\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.159\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.169\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.159\"}]}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.171\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.170\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.180\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.96\"},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.180\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.181\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.182\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.105\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.181\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.182\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.183\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.184\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.185\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.171\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.183\"},{\"kind\":\"fvar\",\"id\":\"_uniq.184\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.185\"}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.188\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.189\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.190\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.189\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.191\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.190\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.192\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.193\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.192\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.194\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.193\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.195\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.196\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.195\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.197\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.196\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.198\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.199\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.198\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.200\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.199\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.201\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"4\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.202\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.201\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.203\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.202\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.204\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"5\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.205\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.204\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.206\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.205\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.207\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"6\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.208\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.207\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.209\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.208\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.210\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"7\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.211\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.210\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.212\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.211\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.213\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"8\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.214\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.213\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.215\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.214\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.216\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"9\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.217\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.216\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.218\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.217\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.219\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.220\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.218\"},{\"kind\":\"fvar\",\"id\":\"_uniq.219\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.221\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.215\"},{\"kind\":\"fvar\",\"id\":\"_uniq.220\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.222\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.212\"},{\"kind\":\"fvar\",\"id\":\"_uniq.221\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.223\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.209\"},{\"kind\":\"fvar\",\"id\":\"_uniq.222\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.224\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.206\"},{\"kind\":\"fvar\",\"id\":\"_uniq.223\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.225\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.203\"},{\"kind\":\"fvar\",\"id\":\"_uniq.224\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.226\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.200\"},{\"kind\":\"fvar\",\"id\":\"_uniq.225\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.227\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.197\"},{\"kind\":\"fvar\",\"id\":\"_uniq.226\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.228\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.194\"},{\"kind\":\"fvar\",\"id\":\"_uniq.227\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.229\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.191\"},{\"kind\":\"fvar\",\"id\":\"_uniq.228\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.230\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.188\"},{\"kind\":\"fvar\",\"id\":\"_uniq.229\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.231\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Recognizer.DigitNet.logits\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.64\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.232\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.187\"},{\"kind\":\"fvar\",\"id\":\"_uniq.230\"},{\"kind\":\"fvar\",\"id\":\"_uniq.231\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.233\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.232\"},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.233\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.234\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.235\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.75\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.234\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.235\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.236\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.237\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.82\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.236\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.237\"}}}]}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Int\",\"List\",\"Nat\",\"OfNat\",\"Option\",\"PUnit\",\"Prod\",\"instDecidableEqBool\",\"instOfNatNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanCollections.Key\",\"LexLeanCollections.instKeyInt\",\"LexLeanCollections.lessThan\",\"LexLeanCollections.listFold\",\"List.cons\",\"List.nil\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"Unit.unit\",\"Models.Glyphs.Glyph\",\"Models.Recognizer.DigitNet.logits\"]},\"inductive\":null},{\"name\":\"Models.Recognizer.RawDigitModel\",\"kind\":\"definition\",\"module\":\"Models.Recognizer\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Models.Glyphs.Glyph\",\"Models.Recognizer.DigitNet\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Recognizer.DigitNet\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}},\"uses\":[\"Nat\",\"Models.Glyphs.Glyph\",\"Models.Recognizer.DigitNet\"]},\"inductive\":null},{\"name\":\"Models.Recognizer.hiddenBias\",\"kind\":\"definition\",\"module\":\"Models.Recognizer\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"instOfNat\",\"Int.instNegInt\",\"List.cons\",\"List.nil\",\"Neg.neg\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.1\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.2\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.1\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.3\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.2\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.4\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.5\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.4\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Neg\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instNegInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Neg\",\"index\":0,\"value\":\"_uniq.7\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.10\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.8\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.14\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"5\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.17\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.8\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.32\"}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Int\",\"List\",\"Nat\",\"Neg\",\"OfNat\",\"instOfNat\",\"Int.instNegInt\",\"List.cons\",\"List.nil\"]},\"inductive\":null},{\"name\":\"Models.Recognizer.hiddenWeights\",\"kind\":\"definition\",\"module\":\"Models.Recognizer\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"List\",\"instOfNat\",\"Int.instNegInt\",\"List.cons\",\"List.nil\",\"Neg.neg\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.1\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"4\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.2\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.1\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.3\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.2\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.4\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.5\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.4\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.43\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Neg\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instNegInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Neg\",\"index\":0,\"value\":\"_uniq.45\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.48\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.46\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.52\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.46\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.46\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.66\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"},{\"kind\":\"fvar\",\"id\":\"_uniq.68\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"},{\"kind\":\"fvar\",\"id\":\"_uniq.69\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.72\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.75\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.77\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.78\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.79\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.46\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.3\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.83\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.85\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.82\"},{\"kind\":\"fvar\",\"id\":\"_uniq.86\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.88\"},{\"kind\":\"fvar\",\"id\":\"_uniq.89\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"},{\"kind\":\"fvar\",\"id\":\"_uniq.90\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"},{\"kind\":\"fvar\",\"id\":\"_uniq.91\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.67\"},{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"},{\"kind\":\"fvar\",\"id\":\"_uniq.93\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.94\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.95\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.96\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.97\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.98\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.99\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.100\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.101\"}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Int\",\"List\",\"Nat\",\"Neg\",\"OfNat\",\"instOfNat\",\"Int.instNegInt\",\"List.cons\",\"List.nil\"]},\"inductive\":null},{\"name\":\"Models.Recognizer.outputBias\",\"kind\":\"definition\",\"module\":\"Models.Recognizer\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"instOfNat\",\"Int.instNegInt\",\"List.cons\",\"List.nil\",\"Neg.neg\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.1\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Neg\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instNegInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.2\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Neg\",\"index\":0,\"value\":\"_uniq.1\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.3\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"6\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.4\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.3\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.5\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.4\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.2\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.8\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.2\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"5\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.12\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.2\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"4\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.16\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.2\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.20\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.2\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"7\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.24\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.2\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.37\"}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Int\",\"List\",\"Nat\",\"Neg\",\"OfNat\",\"instOfNat\",\"Int.instNegInt\",\"List.cons\",\"List.nil\"]},\"inductive\":null},{\"name\":\"Models.Recognizer.outputWeights\",\"kind\":\"definition\",\"module\":\"Models.Recognizer\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"List\",\"instOfNat\",\"List.cons\",\"List.nil\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.1\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.2\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.1\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.3\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.2\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.4\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.5\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.4\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.52\"},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.66\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.68\"}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Int\",\"List\",\"Nat\",\"OfNat\",\"instOfNat\",\"List.cons\",\"List.nil\"]},\"inductive\":null},{\"name\":\"Models.Recognizer.recognizesCheck\",\"kind\":\"definition\",\"module\":\"Models.Recognizer\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Nat.beq\",\"Models.Glyphs.Glyph\",\"Models.Glyphs.digitOf\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.digitOf\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.13\"}}}},\"uses\":[\"Bool\",\"Nat\",\"Nat.beq\",\"Models.Glyphs.Glyph\",\"Models.Glyphs.digitOf\"]},\"inductive\":null},{\"name\":\"Models.Session.SessionModel\",\"kind\":\"definition\",\"module\":\"Models.Session\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Models.Session.SessionStep\",\"Models.Session.Window\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Session.SessionStep\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.12\"}}},\"uses\":[\"Nat\",\"Prod\",\"Models.Session.SessionStep\",\"Models.Session.Window\"]},\"inductive\":null},{\"name\":\"Models.Session.SessionStep\",\"kind\":\"definition\",\"module\":\"Models.Session\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"instSubNat\",\"HAdd.hAdd\",\"LexLeanRuntime.subtract\",\"OfNat.ofNat\",\"Prod.mk\",\"Models.Session.Window\",\"Models.Session.Window.items\",\"Models.Session.Window.mk\",\"Models.Session.Window.used\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.17\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Models.Session.Window\",\"index\":0,\"value\":\"_uniq.13\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.34\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.36\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"64\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.40\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Models.Session.Window\",\"index\":1,\"value\":\"_uniq.13\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.46\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.34\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.44\"},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Session.Window.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.43\"},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.50\"}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Add\",\"HAdd\",\"Nat\",\"OfNat\",\"Prod\",\"Sub\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"instSubNat\",\"LexLeanRuntime.subtract\",\"Prod.mk\",\"Models.Session.Window\",\"Models.Session.Window.mk\"]},\"inductive\":null},{\"name\":\"Models.Session.Window\",\"kind\":\"inductive\",\"module\":\"Models.Session\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Models.Session.Window.mk\",\"parameters\":0,\"fields\":2,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]}}}}]}},{\"name\":\"Models.Session.affordableCheck\",\"kind\":\"definition\",\"module\":\"Models.Session\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Nat.ble\",\"OfNat.ofNat\",\"Models.Session.Window\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"16\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.13\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.15\"}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"instOfNatNat\",\"Nat.ble\",\"Models.Session.Window\"]},\"inductive\":null},{\"name\":\"Models.Session.boundedCheck\",\"kind\":\"definition\",\"module\":\"Models.Session\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Nat.ble\",\"OfNat.ofNat\",\"Models.Session.Window\",\"Models.Session.Window.used\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Models.Session.Window\",\"index\":0,\"value\":\"_uniq.6\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"64\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.11\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.13\"}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"instOfNatNat\",\"Nat.ble\",\"Models.Session.Window\"]},\"inductive\":null},{\"name\":\"Models.Triage.Level\",\"kind\":\"inductive\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Models.Triage.Level.routine\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}},{\"name\":\"Models.Triage.Level.urgent\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}},{\"name\":\"Models.Triage.Level.emergency\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}}]}},{\"name\":\"Models.Triage.Presentation\",\"kind\":\"inductive\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Models.Triage.Presentation.p0\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]}},{\"name\":\"Models.Triage.Presentation.p1\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]}},{\"name\":\"Models.Triage.Presentation.p2\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]}},{\"name\":\"Models.Triage.Presentation.p3\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]}},{\"name\":\"Models.Triage.Presentation.p4\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]}},{\"name\":\"Models.Triage.Presentation.p5\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]}},{\"name\":\"Models.Triage.Presentation.p6\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]}},{\"name\":\"Models.Triage.Presentation.p7\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]}}]}},{\"name\":\"Models.Triage.TriageModel\",\"kind\":\"definition\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Models.Triage.Presentation\",\"Models.Triage.TriageScore\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Triage.TriageScore\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.6\"}}},\"uses\":[\"Models.Triage.Level\",\"Models.Triage.Presentation\",\"Models.Triage.TriageScore\"]},\"inductive\":null},{\"name\":\"Models.Triage.TriageScore\",\"kind\":\"definition\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Int\",\"List\",\"Option\",\"Prod\",\"Unit\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"LexLeanCollections.instKeyInt\",\"LexLeanCollections.lessThan\",\"LexLeanCollections.listFold\",\"List.cons\",\"List.nil\",\"Option.none\",\"Option.some\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"Models.Triage.Level\",\"Models.Triage.Presentation\",\"Models.Triage.Level.emergency\",\"Models.Triage.Level.routine\",\"Models.Triage.Level.urgent\",\"Models.Triage.TriageScore.match_1\",\"Models.Triage.TriageScore.match_3\",\"Models.Triage.TriageScore.scores\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.70\",\"parameters\":[{\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level.routine\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.69\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.70\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.76\",\"parameters\":[{\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.74\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.75\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.76\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.181\",\"parameters\":[{\"id\":\"_uniq.91\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]}]},\"borrow\":false},{\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.99\",\"parameters\":[{\"id\":\"_uniq.98\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.91\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.99\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.164\",\"parameters\":[{\"id\":\"_uniq.106\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.107\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.116\",\"parameters\":[{\"id\":\"_uniq.113\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.106\"},{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.115\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.116\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.141\",\"parameters\":[{\"id\":\"_uniq.121\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.130\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.instKeyInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.131\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.121\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.132\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.lessThan\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.130\"},{\"kind\":\"fvar\",\"id\":\"_uniq.131\"},{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.132\"},{\"kind\":\"fvar\",\"id\":\"_uniq.133\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.134\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.135\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.121\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.136\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.137\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.138\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.106\"},{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.139\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.138\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.139\"}}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.142\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.141\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.150\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.91\"},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.157\",\"parameters\":[{\"id\":\"_uniq.155\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.156\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.155\"},{\"kind\":\"fvar\",\"id\":\"_uniq.107\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.156\"}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.163\",\"parameters\":[{\"id\":\"_uniq.161\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.162\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.142\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.161\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.157\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.162\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.160\",\"parameters\":[{\"id\":\"_uniq.158\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.159\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.117\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.158\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.157\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.159\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.150\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.151\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.160\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.151\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.153\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.163\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.153\"}]}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.165\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.164\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.174\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.91\"},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.174\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.175\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.176\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.100\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.175\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.176\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.177\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.178\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.179\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.165\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.177\"},{\"kind\":\"fvar\",\"id\":\"_uniq.178\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.179\"}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.182\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.183\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level.routine\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.184\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level.urgent\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.185\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level.emergency\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.186\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.187\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.185\"},{\"kind\":\"fvar\",\"id\":\"_uniq.186\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.188\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.184\"},{\"kind\":\"fvar\",\"id\":\"_uniq.187\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.189\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.183\"},{\"kind\":\"fvar\",\"id\":\"_uniq.188\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.190\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.182\"},{\"kind\":\"fvar\",\"id\":\"_uniq.189\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.191\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Triage.TriageScore.scores\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.192\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.181\"},{\"kind\":\"fvar\",\"id\":\"_uniq.190\"},{\"kind\":\"fvar\",\"id\":\"_uniq.191\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.193\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.192\"},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},\"discriminant\":\"_uniq.193\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.194\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.195\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.71\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.194\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.195\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.196\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.197\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.77\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.196\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.197\"}}}]}}}}}}}}}}}}}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Int\",\"List\",\"Option\",\"PUnit\",\"Prod\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanCollections.Key\",\"LexLeanCollections.instKeyInt\",\"LexLeanCollections.lessThan\",\"LexLeanCollections.listFold\",\"List.cons\",\"List.nil\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"Unit.unit\",\"Models.Triage.Level\",\"Models.Triage.Presentation\",\"Models.Triage.Level.emergency\",\"Models.Triage.Level.routine\",\"Models.Triage.Level.urgent\",\"Models.Triage.TriageScore.scores\"]},\"inductive\":null},{\"name\":\"Models.Triage.features\",\"kind\":\"definition\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"List\",\"Unit\",\"instOfNat\",\"List.cons\",\"List.nil\",\"OfNat.ofNat\",\"Models.Triage.Presentation\",\"Models.Triage.features.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.78\",\"parameters\":[{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.72\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},{\"kind\":\"fvar\",\"id\":\"_uniq.75\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.77\"}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.78\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.92\",\"parameters\":[{\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.82\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.83\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.85\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.86\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"},{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"},{\"kind\":\"fvar\",\"id\":\"_uniq.89\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.90\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.91\"}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.92\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.106\",\"parameters\":[{\"id\":\"_uniq.95\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.96\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.97\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.99\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.100\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.98\"},{\"kind\":\"fvar\",\"id\":\"_uniq.102\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.101\"},{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.98\"},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.105\"}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.106\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.120\",\"parameters\":[{\"id\":\"_uniq.109\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.110\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.111\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.110\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.111\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.113\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.113\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.114\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.115\"},{\"kind\":\"fvar\",\"id\":\"_uniq.116\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.118\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.112\"},{\"kind\":\"fvar\",\"id\":\"_uniq.117\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.112\"},{\"kind\":\"fvar\",\"id\":\"_uniq.118\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.119\"}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.121\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.120\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.134\",\"parameters\":[{\"id\":\"_uniq.123\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.124\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.124\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.125\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.127\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.128\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.127\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.129\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.128\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.130\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.131\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.129\"},{\"kind\":\"fvar\",\"id\":\"_uniq.130\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.132\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.126\"},{\"kind\":\"fvar\",\"id\":\"_uniq.131\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.126\"},{\"kind\":\"fvar\",\"id\":\"_uniq.132\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.133\"}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.135\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.134\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.148\",\"parameters\":[{\"id\":\"_uniq.137\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.138\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.139\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.138\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.140\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.139\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.141\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.142\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.141\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.143\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.142\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.144\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.145\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.140\"},{\"kind\":\"fvar\",\"id\":\"_uniq.144\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.146\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.143\"},{\"kind\":\"fvar\",\"id\":\"_uniq.145\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.147\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.140\"},{\"kind\":\"fvar\",\"id\":\"_uniq.146\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.147\"}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.149\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.148\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.162\",\"parameters\":[{\"id\":\"_uniq.151\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.152\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.153\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.152\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.154\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.153\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.155\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.156\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.155\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.157\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.156\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.158\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.159\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.157\"},{\"kind\":\"fvar\",\"id\":\"_uniq.158\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.160\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.157\"},{\"kind\":\"fvar\",\"id\":\"_uniq.159\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.161\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.154\"},{\"kind\":\"fvar\",\"id\":\"_uniq.160\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.161\"}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.163\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.162\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.173\",\"parameters\":[{\"id\":\"_uniq.165\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.166\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.167\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.166\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.168\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.167\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.169\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.170\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.168\"},{\"kind\":\"fvar\",\"id\":\"_uniq.169\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.171\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.168\"},{\"kind\":\"fvar\",\"id\":\"_uniq.170\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.172\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.168\"},{\"kind\":\"fvar\",\"id\":\"_uniq.171\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.172\"}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.174\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.173\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Models.Triage.Presentation\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"discriminant\":\"_uniq.58\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Models.Triage.Presentation.p0\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.185\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.186\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.79\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.185\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.186\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Triage.Presentation.p1\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.187\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.188\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.93\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.187\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.188\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Triage.Presentation.p2\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.189\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.190\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.107\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.189\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.190\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Triage.Presentation.p3\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.191\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.192\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.121\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.191\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.192\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Triage.Presentation.p4\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.193\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.194\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.135\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.193\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.194\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Triage.Presentation.p5\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.195\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.196\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.149\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.195\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.196\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Triage.Presentation.p6\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.197\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.198\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.163\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.197\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.198\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Triage.Presentation.p7\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.199\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.200\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.174\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.199\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.200\"}}}}]}}}}}}}}}}}}}}}}}},\"uses\":[\"Int\",\"List\",\"Nat\",\"OfNat\",\"PUnit\",\"instOfNat\",\"List.cons\",\"List.nil\",\"Unit.unit\",\"Models.Triage.Presentation\",\"Models.Triage.Presentation.p0\",\"Models.Triage.Presentation.p1\",\"Models.Triage.Presentation.p2\",\"Models.Triage.Presentation.p3\",\"Models.Triage.Presentation.p4\",\"Models.Triage.Presentation.p5\",\"Models.Triage.Presentation.p6\",\"Models.Triage.Presentation.p7\"]},\"inductive\":null},{\"name\":\"Models.Triage.hasSymptom\",\"kind\":\"definition\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Unit\",\"Bool.false\",\"Bool.true\",\"Models.Triage.Presentation\",\"Models.Triage.features.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.60\",\"parameters\":[{\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.59\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.60\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.65\",\"parameters\":[{\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.64\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Models.Triage.Presentation\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.46\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Models.Triage.Presentation.p0\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.61\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.89\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.90\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Triage.Presentation.p1\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.66\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.91\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.92\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Triage.Presentation.p2\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.68\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.93\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.94\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Triage.Presentation.p3\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.70\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.95\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.96\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Triage.Presentation.p4\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.72\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.97\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.98\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Triage.Presentation.p5\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.74\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.99\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.100\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Triage.Presentation.p6\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.76\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.101\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.102\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Triage.Presentation.p7\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.78\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.104\"}}}}]}}}}}}}}}}}},\"uses\":[\"Bool\",\"PUnit\",\"Bool.false\",\"Bool.true\",\"Unit.unit\",\"Models.Triage.Presentation\",\"Models.Triage.Presentation.p0\",\"Models.Triage.Presentation.p1\",\"Models.Triage.Presentation.p2\",\"Models.Triage.Presentation.p3\",\"Models.Triage.Presentation.p4\",\"Models.Triage.Presentation.p5\",\"Models.Triage.Presentation.p6\",\"Models.Triage.Presentation.p7\"]},\"inductive\":null},{\"name\":\"Models.Triage.isEmergency\",\"kind\":\"definition\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Unit\",\"Bool.false\",\"Bool.true\",\"Models.Triage.Level\",\"Models.Triage.isEmergency.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.35\",\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.34\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.35\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.35\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.42\",\"parameters\":[{\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.41\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.42\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Models.Triage.Level\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.26\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Models.Triage.Level.routine\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.36\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.50\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Triage.Level.urgent\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.38\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.52\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Triage.Level.emergency\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.43\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.54\"}}}}]}}}}}}},\"uses\":[\"Bool\",\"PUnit\",\"Bool.false\",\"Bool.true\",\"Unit.unit\",\"Models.Triage.Level\",\"Models.Triage.Level.emergency\",\"Models.Triage.Level.routine\",\"Models.Triage.Level.urgent\"]},\"inductive\":null},{\"name\":\"Models.Triage.symptomaticCheck\",\"kind\":\"definition\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Models.Triage.Presentation\",\"Models.Triage.hasSymptom\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Triage.hasSymptom\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}},\"uses\":[\"Bool\",\"Models.Triage.Presentation\",\"Models.Triage.hasSymptom\"]},\"inductive\":null},{\"name\":\"Models.Triage.triageBias\",\"kind\":\"definition\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"instOfNat\",\"Int.instNegInt\",\"List.cons\",\"List.nil\",\"Neg.neg\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.1\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.2\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.1\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.3\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.2\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.4\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.5\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.4\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Neg\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instNegInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Neg\",\"index\":0,\"value\":\"_uniq.7\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.8\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.3\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.13\"}}}}}}}}}}}}}}},\"uses\":[\"Int\",\"List\",\"Nat\",\"Neg\",\"OfNat\",\"instOfNat\",\"Int.instNegInt\",\"List.cons\",\"List.nil\"]},\"inductive\":null},{\"name\":\"Models.Triage.triageWeights\",\"kind\":\"definition\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"List\",\"instOfNat\",\"Int.instNegInt\",\"List.cons\",\"List.nil\",\"Neg.neg\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.1\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Neg\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instNegInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.2\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Neg\",\"index\":0,\"value\":\"_uniq.1\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.3\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.4\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.3\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.5\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.4\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.2\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"4\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.8\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.2\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.16\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.5\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.5\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"5\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.25\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.33\"}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Int\",\"List\",\"Nat\",\"Neg\",\"OfNat\",\"instOfNat\",\"Int.instNegInt\",\"List.cons\",\"List.nil\"]},\"inductive\":null},{\"name\":\"Models.Glyphs.Glyph.casesOn\",\"kind\":\"definition\",\"module\":\"Models.Glyphs\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Models.Glyphs.Glyph\",\"Models.Glyphs.Glyph.g0\",\"Models.Glyphs.Glyph.g1\",\"Models.Glyphs.Glyph.g2\",\"Models.Glyphs.Glyph.g3\",\"Models.Glyphs.Glyph.g4\",\"Models.Glyphs.Glyph.g5\",\"Models.Glyphs.Glyph.g6\",\"Models.Glyphs.Glyph.g7\",\"Models.Glyphs.Glyph.g8\",\"Models.Glyphs.Glyph.g9\",\"Models.Glyphs.Glyph.rec\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Glyphs.Glyph.g0\",\"kind\":\"constructor\",\"module\":\"Models.Glyphs\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Glyphs.Glyph.g1\",\"kind\":\"constructor\",\"module\":\"Models.Glyphs\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Glyphs.Glyph.g2\",\"kind\":\"constructor\",\"module\":\"Models.Glyphs\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Glyphs.Glyph.g3\",\"kind\":\"constructor\",\"module\":\"Models.Glyphs\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Glyphs.Glyph.g4\",\"kind\":\"constructor\",\"module\":\"Models.Glyphs\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Glyphs.Glyph.g5\",\"kind\":\"constructor\",\"module\":\"Models.Glyphs\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Glyphs.Glyph.g6\",\"kind\":\"constructor\",\"module\":\"Models.Glyphs\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Glyphs.Glyph.g7\",\"kind\":\"constructor\",\"module\":\"Models.Glyphs\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Glyphs.Glyph.g8\",\"kind\":\"constructor\",\"module\":\"Models.Glyphs\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Glyphs.Glyph.g9\",\"kind\":\"constructor\",\"module\":\"Models.Glyphs\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Glyphs.Glyph.rec\",\"kind\":\"recursor\",\"module\":\"Models.Glyphs\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"recursor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Glyphs.encode.match_1\",\"kind\":\"definition\",\"module\":\"Models.Glyphs\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Unit\",\"Unit.unit\",\"Models.Glyphs.Glyph\",\"Models.Glyphs.Glyph.casesOn\",\"Models.Glyphs.Glyph.g0\",\"Models.Glyphs.Glyph.g1\",\"Models.Glyphs.Glyph.g2\",\"Models.Glyphs.Glyph.g3\",\"Models.Glyphs.Glyph.g4\",\"Models.Glyphs.Glyph.g5\",\"Models.Glyphs.Glyph.g6\",\"Models.Glyphs.Glyph.g7\",\"Models.Glyphs.Glyph.g8\",\"Models.Glyphs.Glyph.g9\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Pipeline.SessionStream.match_1\",\"kind\":\"definition\",\"module\":\"Models.Pipeline\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"List\",\"Nat\",\"Prod\",\"Except.casesOn\",\"Except.error\",\"Except.ok\",\"Models.Session.Window\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Policy.isUrgent.match_1\",\"kind\":\"definition\",\"module\":\"Models.Policy\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Unit\",\"Unit.unit\",\"Models.Triage.Level\",\"Models.Triage.Level.casesOn\",\"Models.Triage.Level.emergency\",\"Models.Triage.Level.routine\",\"Models.Triage.Level.urgent\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Recognizer.DigitNet.encoded\",\"kind\":\"definition\",\"module\":\"Models.Recognizer\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Models.Glyphs.Glyph\",\"Models.Glyphs.encode\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.encode\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}},\"uses\":[\"Int\",\"List\",\"Models.Glyphs.Glyph\",\"Models.Glyphs.encode\"]},\"inductive\":null},{\"name\":\"Models.Recognizer.DigitNet.layer1\",\"kind\":\"definition\",\"module\":\"Models.Recognizer\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"List\",\"Prod\",\"Unit\",\"instOfNat\",\"Int.instMul\",\"Int.instNegInt\",\"Int.instSub\",\"LexLeanCollections.listFold\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"LexLeanRuntime.multiply\",\"LexLeanRuntime.negate\",\"LexLeanRuntime.subtract\",\"List.cons\",\"List.nil\",\"OfNat.ofNat\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"Models.Recognizer.hiddenBias\",\"Models.Recognizer.hiddenWeights\",\"Models.Recognizer.DigitNet.layer1.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.156\",\"parameters\":[{\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"borrow\":false},{\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.65\",\"parameters\":[{\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.139\",\"parameters\":[{\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.57\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instSub\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Neg\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instNegInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.126\",\"parameters\":[{\"id\":\"_uniq.85\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"borrow\":false},{\"id\":\"_uniq.86\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.93\",\"parameters\":[{\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.85\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.93\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.109\",\"parameters\":[{\"id\":\"_uniq.101\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.102\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.85\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Mul\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instMul\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.multiply\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"},{\"kind\":\"fvar\",\"id\":\"_uniq.86\"},{\"kind\":\"fvar\",\"id\":\"_uniq.101\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.negate\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.78\"},{\"kind\":\"fvar\",\"id\":\"_uniq.105\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.77\"},{\"kind\":\"fvar\",\"id\":\"_uniq.103\"},{\"kind\":\"fvar\",\"id\":\"_uniq.106\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.107\"},{\"kind\":\"fvar\",\"id\":\"_uniq.102\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.108\"}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.110\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.109\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.85\"},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.119\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.120\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.121\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.94\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.120\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.121\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.122\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.123\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.124\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.110\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.122\"},{\"kind\":\"fvar\",\"id\":\"_uniq.123\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.124\"}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.127\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.128\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.127\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.129\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.128\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.130\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.129\"},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.131\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.126\"},{\"kind\":\"fvar\",\"id\":\"_uniq.130\"},{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.132\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.131\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.negate\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.78\"},{\"kind\":\"fvar\",\"id\":\"_uniq.132\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.77\"},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},{\"kind\":\"fvar\",\"id\":\"_uniq.133\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.135\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.134\"},{\"kind\":\"fvar\",\"id\":\"_uniq.135\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.137\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"},{\"kind\":\"fvar\",\"id\":\"_uniq.136\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.138\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.137\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.138\"}}}}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.140\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.139\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.149\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.57\"},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.149\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.150\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.151\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.66\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.150\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.151\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.152\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.153\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.154\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.140\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.152\"},{\"kind\":\"fvar\",\"id\":\"_uniq.153\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.154\"}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.157\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.158\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Recognizer.hiddenBias\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.159\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.157\"},{\"kind\":\"fvar\",\"id\":\"_uniq.158\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.160\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Recognizer.hiddenWeights\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.161\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.156\"},{\"kind\":\"fvar\",\"id\":\"_uniq.159\"},{\"kind\":\"fvar\",\"id\":\"_uniq.160\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.162\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.161\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.162\"}}}}}}}}},\"uses\":[\"Int\",\"List\",\"Mul\",\"Nat\",\"Neg\",\"OfNat\",\"PUnit\",\"Prod\",\"Sub\",\"instOfNat\",\"Int.instMul\",\"Int.instNegInt\",\"Int.instSub\",\"LexLeanCollections.listFold\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"LexLeanRuntime.multiply\",\"LexLeanRuntime.negate\",\"LexLeanRuntime.subtract\",\"List.cons\",\"List.nil\",\"Prod.mk\",\"Unit.unit\",\"Models.Recognizer.hiddenBias\",\"Models.Recognizer.hiddenWeights\"]},\"inductive\":null},{\"name\":\"Models.Recognizer.DigitNet.layer2\",\"kind\":\"definition\",\"module\":\"Models.Recognizer\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Int\",\"List\",\"instDecidableEqBool\",\"instOfNat\",\"ite\",\"Bool.true\",\"LexLeanCollections.instKeyInt\",\"LexLeanCollections.lessThan\",\"LexLeanCollections.listFold\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"List.cons\",\"List.nil\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.39\",\"parameters\":[{\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.instKeyInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.27\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.lessThan\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.38\",\"parameters\":[{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.37\"}}}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"discriminant\":\"_uniq.31\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.38\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.38\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]}}]}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},{\"kind\":\"fvar\",\"id\":\"_uniq.40\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.41\"}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Int\",\"List\",\"Nat\",\"OfNat\",\"instDecidableEqBool\",\"instOfNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanCollections.Key\",\"LexLeanCollections.instKeyInt\",\"LexLeanCollections.lessThan\",\"LexLeanCollections.listFold\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"List.cons\",\"List.nil\"]},\"inductive\":null},{\"name\":\"Models.Recognizer.DigitNet.layer3\",\"kind\":\"definition\",\"module\":\"Models.Recognizer\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Int\",\"List\",\"instDecidableEqBool\",\"instOfNat\",\"ite\",\"Bool.true\",\"LexLeanCollections.instKeyInt\",\"LexLeanCollections.lessThan\",\"LexLeanCollections.listFold\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"LexLeanRuntime.instQuotientInt\",\"LexLeanRuntime.quotient\",\"List.cons\",\"List.nil\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.66\",\"parameters\":[{\"id\":\"_uniq.18\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instQuotientInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"4\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.24\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.27\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.quotient\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.29\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.instKeyInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.lessThan\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.65\",\"parameters\":[{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.64\"}}}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"discriminant\":\"_uniq.42\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.43\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"127\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.53\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.lessThan\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"discriminant\":\"_uniq.56\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.57\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.65\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.58\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.65\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]}}]}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.65\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]}}]}}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.66\"},{\"kind\":\"fvar\",\"id\":\"_uniq.67\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.68\"}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Int\",\"List\",\"Nat\",\"OfNat\",\"instDecidableEqBool\",\"instOfNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanCollections.Key\",\"LexLeanCollections.instKeyInt\",\"LexLeanCollections.lessThan\",\"LexLeanCollections.listFold\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.Quotient\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"LexLeanRuntime.instQuotientInt\",\"LexLeanRuntime.quotient\",\"List.cons\",\"List.nil\"]},\"inductive\":null},{\"name\":\"Models.Recognizer.DigitNet.layer4\",\"kind\":\"definition\",\"module\":\"Models.Recognizer\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"List\",\"Prod\",\"Unit\",\"instOfNat\",\"Int.instMul\",\"Int.instNegInt\",\"Int.instSub\",\"LexLeanCollections.listFold\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"LexLeanRuntime.multiply\",\"LexLeanRuntime.negate\",\"LexLeanRuntime.subtract\",\"List.cons\",\"List.nil\",\"OfNat.ofNat\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"Models.Recognizer.outputBias\",\"Models.Recognizer.outputWeights\",\"Models.Recognizer.DigitNet.layer1.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.156\",\"parameters\":[{\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"borrow\":false},{\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.65\",\"parameters\":[{\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.139\",\"parameters\":[{\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.57\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instSub\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Neg\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instNegInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.126\",\"parameters\":[{\"id\":\"_uniq.85\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"borrow\":false},{\"id\":\"_uniq.86\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.93\",\"parameters\":[{\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.85\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.93\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.109\",\"parameters\":[{\"id\":\"_uniq.101\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.102\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.85\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Mul\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instMul\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.multiply\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"},{\"kind\":\"fvar\",\"id\":\"_uniq.86\"},{\"kind\":\"fvar\",\"id\":\"_uniq.101\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.negate\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.78\"},{\"kind\":\"fvar\",\"id\":\"_uniq.105\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.77\"},{\"kind\":\"fvar\",\"id\":\"_uniq.103\"},{\"kind\":\"fvar\",\"id\":\"_uniq.106\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.107\"},{\"kind\":\"fvar\",\"id\":\"_uniq.102\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.108\"}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.110\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.109\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.85\"},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.119\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.120\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.121\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.94\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.120\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.121\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.122\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.123\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.124\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.110\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.122\"},{\"kind\":\"fvar\",\"id\":\"_uniq.123\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.124\"}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.127\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.128\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.127\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.129\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.128\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.130\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.129\"},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.131\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.126\"},{\"kind\":\"fvar\",\"id\":\"_uniq.130\"},{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.132\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.131\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.negate\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.78\"},{\"kind\":\"fvar\",\"id\":\"_uniq.132\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.77\"},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},{\"kind\":\"fvar\",\"id\":\"_uniq.133\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.135\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.134\"},{\"kind\":\"fvar\",\"id\":\"_uniq.135\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.137\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"},{\"kind\":\"fvar\",\"id\":\"_uniq.136\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.138\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.137\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.138\"}}}}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.140\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.139\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.149\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.57\"},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.149\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.150\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.151\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.66\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.150\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.151\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.152\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.153\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.154\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.140\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.152\"},{\"kind\":\"fvar\",\"id\":\"_uniq.153\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.154\"}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.157\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.158\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Recognizer.outputBias\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.159\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.157\"},{\"kind\":\"fvar\",\"id\":\"_uniq.158\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.160\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Recognizer.outputWeights\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.161\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.156\"},{\"kind\":\"fvar\",\"id\":\"_uniq.159\"},{\"kind\":\"fvar\",\"id\":\"_uniq.160\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.162\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.161\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.162\"}}}}}}}}},\"uses\":[\"Int\",\"List\",\"Mul\",\"Nat\",\"Neg\",\"OfNat\",\"PUnit\",\"Prod\",\"Sub\",\"instOfNat\",\"Int.instMul\",\"Int.instNegInt\",\"Int.instSub\",\"LexLeanCollections.listFold\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"LexLeanRuntime.multiply\",\"LexLeanRuntime.negate\",\"LexLeanRuntime.subtract\",\"List.cons\",\"List.nil\",\"Prod.mk\",\"Unit.unit\",\"Models.Recognizer.outputBias\",\"Models.Recognizer.outputWeights\"]},\"inductive\":null},{\"name\":\"Models.Recognizer.DigitNet.logits\",\"kind\":\"definition\",\"module\":\"Models.Recognizer\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Models.Glyphs.Glyph\",\"Models.Recognizer.DigitNet.encoded\",\"Models.Recognizer.DigitNet.layer1\",\"Models.Recognizer.DigitNet.layer2\",\"Models.Recognizer.DigitNet.layer3\",\"Models.Recognizer.DigitNet.layer4\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Recognizer.DigitNet.encoded\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Recognizer.DigitNet.layer1\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Recognizer.DigitNet.layer2\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Recognizer.DigitNet.layer3\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Recognizer.DigitNet.layer4\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.11\"}}}}}}},\"uses\":[\"Int\",\"List\",\"Models.Glyphs.Glyph\",\"Models.Recognizer.DigitNet.encoded\",\"Models.Recognizer.DigitNet.layer1\",\"Models.Recognizer.DigitNet.layer2\",\"Models.Recognizer.DigitNet.layer3\",\"Models.Recognizer.DigitNet.layer4\"]},\"inductive\":null},{\"name\":\"Models.Recognizer.DigitNet.match_1\",\"kind\":\"definition\",\"module\":\"Models.Recognizer\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Recognizer.DigitNet.match_3\",\"kind\":\"definition\",\"module\":\"Models.Recognizer\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Unit\",\"List.casesOn\",\"List.cons\",\"List.nil\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Session.SessionModel.initial\",\"kind\":\"definition\",\"module\":\"Models.Session\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Models.Session.SessionStep.initial\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.1\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Session.SessionStep.initial\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.1\"}}},\"uses\":[\"Models.Session.Window\",\"Models.Session.SessionStep.initial\"]},\"inductive\":null},{\"name\":\"Models.Session.SessionStep.initial\",\"kind\":\"definition\",\"module\":\"Models.Session\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"OfNat.ofNat\",\"Models.Session.Window.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.1\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.2\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.1\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.3\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.2\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.4\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Session.Window.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.4\"}}}}}},\"uses\":[\"Nat\",\"OfNat\",\"instOfNatNat\",\"Models.Session.Window\",\"Models.Session.Window.mk\"]},\"inductive\":null},{\"name\":\"Models.Session.Window.items\",\"kind\":\"definition\",\"module\":\"Models.Session\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Models.Session.Window\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Session.Window.mk\",\"kind\":\"constructor\",\"module\":\"Models.Session\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Session.Window.used\",\"kind\":\"definition\",\"module\":\"Models.Session\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Models.Session.Window\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Triage.Level.casesOn\",\"kind\":\"definition\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Models.Triage.Level\",\"Models.Triage.Level.emergency\",\"Models.Triage.Level.rec\",\"Models.Triage.Level.routine\",\"Models.Triage.Level.urgent\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Triage.Level.emergency\",\"kind\":\"constructor\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Triage.Level.rec\",\"kind\":\"recursor\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"recursor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Triage.Level.routine\",\"kind\":\"constructor\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Triage.Level.urgent\",\"kind\":\"constructor\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Triage.Presentation.casesOn\",\"kind\":\"definition\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Models.Triage.Presentation\",\"Models.Triage.Presentation.p0\",\"Models.Triage.Presentation.p1\",\"Models.Triage.Presentation.p2\",\"Models.Triage.Presentation.p3\",\"Models.Triage.Presentation.p4\",\"Models.Triage.Presentation.p5\",\"Models.Triage.Presentation.p6\",\"Models.Triage.Presentation.p7\",\"Models.Triage.Presentation.rec\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Triage.Presentation.p0\",\"kind\":\"constructor\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Triage.Presentation.p1\",\"kind\":\"constructor\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Triage.Presentation.p2\",\"kind\":\"constructor\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Triage.Presentation.p3\",\"kind\":\"constructor\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Triage.Presentation.p4\",\"kind\":\"constructor\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Triage.Presentation.p5\",\"kind\":\"constructor\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Triage.Presentation.p6\",\"kind\":\"constructor\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Triage.Presentation.p7\",\"kind\":\"constructor\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Triage.Presentation.rec\",\"kind\":\"recursor\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"recursor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Triage.TriageScore.features\",\"kind\":\"definition\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Models.Triage.Presentation\",\"Models.Triage.features\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Triage.features\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}},\"uses\":[\"Int\",\"List\",\"Models.Triage.Presentation\",\"Models.Triage.features\"]},\"inductive\":null},{\"name\":\"Models.Triage.TriageScore.match_1\",\"kind\":\"definition\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"Option\",\"Prod\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Models.Triage.Level\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Triage.TriageScore.match_3\",\"kind\":\"definition\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Unit\",\"List.casesOn\",\"List.cons\",\"List.nil\",\"Unit.unit\",\"Models.Triage.Level\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Triage.TriageScore.scores\",\"kind\":\"definition\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"List\",\"Prod\",\"Unit\",\"instOfNat\",\"Int.instMul\",\"Int.instNegInt\",\"Int.instSub\",\"LexLeanCollections.listFold\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"LexLeanRuntime.multiply\",\"LexLeanRuntime.negate\",\"LexLeanRuntime.subtract\",\"List.cons\",\"List.nil\",\"OfNat.ofNat\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"Models.Triage.Presentation\",\"Models.Triage.triageBias\",\"Models.Triage.triageWeights\",\"Models.Triage.TriageScore.features\",\"Models.Triage.TriageScore.scores.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Triage.TriageScore.features\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.55\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.162\",\"parameters\":[{\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"borrow\":false},{\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.71\",\"parameters\":[{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.63\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.71\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.145\",\"parameters\":[{\"id\":\"_uniq.79\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.80\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.63\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instSub\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Neg\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instNegInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.132\",\"parameters\":[{\"id\":\"_uniq.91\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"borrow\":false},{\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.99\",\"parameters\":[{\"id\":\"_uniq.98\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.91\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.99\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.115\",\"parameters\":[{\"id\":\"_uniq.107\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.108\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.91\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.110\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Mul\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instMul\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.111\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.multiply\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.110\"},{\"kind\":\"fvar\",\"id\":\"_uniq.92\"},{\"kind\":\"fvar\",\"id\":\"_uniq.107\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.negate\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.111\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.113\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.109\"},{\"kind\":\"fvar\",\"id\":\"_uniq.112\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.113\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.114\"}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.115\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.91\"},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.125\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.127\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.100\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.126\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.127\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.128\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.129\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.130\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.116\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.128\"},{\"kind\":\"fvar\",\"id\":\"_uniq.129\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.130\"}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.133\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.135\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.134\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.135\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.137\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.132\"},{\"kind\":\"fvar\",\"id\":\"_uniq.136\"},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.138\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.137\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.139\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.negate\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.138\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.140\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.79\"},{\"kind\":\"fvar\",\"id\":\"_uniq.139\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.141\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.142\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.140\"},{\"kind\":\"fvar\",\"id\":\"_uniq.141\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.143\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"},{\"kind\":\"fvar\",\"id\":\"_uniq.82\"},{\"kind\":\"fvar\",\"id\":\"_uniq.142\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.144\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.143\"},{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.144\"}}}}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.146\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.145\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.155\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.63\"},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.155\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.156\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.157\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.72\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.156\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.157\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.158\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.159\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.160\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.146\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.158\"},{\"kind\":\"fvar\",\"id\":\"_uniq.159\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.160\"}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.163\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.164\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Triage.triageBias\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.165\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.163\"},{\"kind\":\"fvar\",\"id\":\"_uniq.164\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.166\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Triage.triageWeights\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.167\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.162\"},{\"kind\":\"fvar\",\"id\":\"_uniq.165\"},{\"kind\":\"fvar\",\"id\":\"_uniq.166\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.168\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.167\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.168\"}}}}}}}}}}},\"uses\":[\"Int\",\"List\",\"Mul\",\"Nat\",\"Neg\",\"OfNat\",\"PUnit\",\"Prod\",\"Sub\",\"instOfNat\",\"Int.instMul\",\"Int.instNegInt\",\"Int.instSub\",\"LexLeanCollections.listFold\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"LexLeanRuntime.multiply\",\"LexLeanRuntime.negate\",\"LexLeanRuntime.subtract\",\"List.cons\",\"List.nil\",\"Prod.mk\",\"Unit.unit\",\"Models.Triage.Presentation\",\"Models.Triage.triageBias\",\"Models.Triage.triageWeights\",\"Models.Triage.TriageScore.features\"]},\"inductive\":null},{\"name\":\"Models.Triage.features.match_1\",\"kind\":\"definition\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Unit\",\"Unit.unit\",\"Models.Triage.Presentation\",\"Models.Triage.Presentation.casesOn\",\"Models.Triage.Presentation.p0\",\"Models.Triage.Presentation.p1\",\"Models.Triage.Presentation.p2\",\"Models.Triage.Presentation.p3\",\"Models.Triage.Presentation.p4\",\"Models.Triage.Presentation.p5\",\"Models.Triage.Presentation.p6\",\"Models.Triage.Presentation.p7\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Triage.isEmergency.match_1\",\"kind\":\"definition\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Unit\",\"Unit.unit\",\"Models.Triage.Level\",\"Models.Triage.Level.casesOn\",\"Models.Triage.Level.emergency\",\"Models.Triage.Level.routine\",\"Models.Triage.Level.urgent\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Recognizer.DigitNet.layer1.match_1\",\"kind\":\"definition\",\"module\":\"Models.Recognizer\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"List\",\"Unit\",\"List.casesOn\",\"List.cons\",\"List.nil\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Triage.TriageScore.scores.match_1\",\"kind\":\"definition\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"List\",\"Unit\",\"List.casesOn\",\"List.cons\",\"List.nil\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null}],\"externals\":[{\"name\":\"Add\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"BEq\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Bool\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Decidable\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Except\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"HAdd\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"HMul\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"HSub\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Int\",\"kind\":\"inductive\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"List\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Mul\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Nat\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Neg\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"OfNat\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Option\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Ord\",\"kind\":\"inductive\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Ordering\",\"kind\":\"inductive\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"PUnit\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Prod\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Sub\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"instAddNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instBEqOfDecidableEq\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instDecidableEqBool\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instHAdd\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instHMul\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instHSub\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instOfNat\",\"kind\":\"definition\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instOfNatNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instOrdInt\",\"kind\":\"definition\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instSubNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Bool.false\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Bool\"},{\"name\":\"Bool.true\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Bool\"},{\"name\":\"Decidable.isFalse\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Decidable\"},{\"name\":\"Decidable.isTrue\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Decidable\"},{\"name\":\"Except.error\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Except\"},{\"name\":\"Except.ok\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Except\"},{\"name\":\"Int.instDecidableEq\",\"kind\":\"definition\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int.instMul\",\"kind\":\"definition\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int.instNegInt\",\"kind\":\"definition\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int.instSub\",\"kind\":\"definition\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int.tdiv\",\"kind\":\"definition\",\"module\":\"Init.Data.Int.DivMod.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int.tmod\",\"kind\":\"definition\",\"module\":\"Init.Data.Int.DivMod.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"List.appendTR\",\"kind\":\"definition\",\"module\":\"Init.Data.List.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"List.cons\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"List\"},{\"name\":\"List.foldl\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"List.lengthTR\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"List.nil\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"List\"},{\"name\":\"Nat.beq\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.ble\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.blt\",\"kind\":\"definition\",\"module\":\"Init.Data.Nat.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Option.none\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Option\"},{\"name\":\"Option.some\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Option\"},{\"name\":\"Ordering.lt\",\"kind\":\"constructor\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Ordering\"},{\"name\":\"Prod.mk\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Prod\"},{\"name\":\"Unit.unit\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true}]}\n","stdout_sha256":"000ff34b595f013704d31b540b616943f07c5152f042e08d8eaa26fb72622de7","tool":"lean"} +{"argv":["env","lean","$STAGING/extract/LexLeanExtract.X91b57d30cfd6f60128d6c72e374148ef.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanExtract.X91b57d30cfd6f60128d6c72e374148ef","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"{\"spec\":\"lexlean/lcnf-extraction/2\",\"lean\":{\"version\":\"4.32.1\",\"githash\":\"f054605aea4b840552cca2e725580bffd1e1b704\"},\"roots\":[\"Models.Main.classify\",\"Models.Main.classifyChecked\",\"Models.Main.respond\",\"Models.Main.admitCosts\",\"Models.Main.step\",\"Models.Main.ledgerPost\",\"Models.Main.ledgerFull\",\"Models.Main.guessChecked\",\"Models.Main.flowStep\"],\"constants\":[{\"name\":\"LexLeanCollections.Key\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanCollections.Key.mk\",\"parameters\":1,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}}}}]}},{\"name\":\"LexLeanCollections.instKeyInt\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"instOrdInt\",\"Ord.compare\",\"LexLeanCollections.Key.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.1\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Ord\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instOrdInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Ord\",\"index\":0,\"value\":\"_uniq.1\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.15\"}}}}},\"uses\":[\"Int\",\"Ord\",\"Ordering\",\"instOrdInt\",\"LexLeanCollections.Key\",\"LexLeanCollections.Key.mk\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.lessThan\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Ordering\",\"Unit\",\"Bool.false\",\"Bool.true\",\"LexLeanCollections.Key\",\"LexLeanCollections.Key.compare\",\"LexLeanCollections.lessThan.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}}}},\"parameters\":[{\"id\":\"_uniq.40\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"borrow\":false},{\"id\":\"_uniq.42\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.40\"},\"borrow\":false},{\"id\":\"_uniq.43\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.40\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.51\",\"parameters\":[{\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.50\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.51\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.58\",\"parameters\":[{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.58\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.40\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.40\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanCollections.Key\",\"index\":0,\"value\":\"_uniq.41\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Ordering\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.66\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Ordering.lt\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.52\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.68\"}}}},{\"kind\":\"default\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.73\",\"parameters\":[{\"id\":\"_uniq.71\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.59\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.66\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.72\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.73\",\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"any\"}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.74\"}}}}]}}}}}}}},\"uses\":[\"Bool\",\"Ordering\",\"PUnit\",\"Bool.false\",\"Bool.true\",\"LexLeanCollections.Key\",\"Ordering.lt\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.listFold\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"List.foldl\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":2}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}}},\"parameters\":[{\"id\":\"_uniq.53\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}}},\"borrow\":false},{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},\"borrow\":false},{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},\"value\":{\"kind\":\"const\",\"name\":\"List.foldl\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.64\"}}},\"uses\":[\"List\",\"List.foldl\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.Appendable\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.Appendable.mk\",\"parameters\":1,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"bvar\",\"index\":2}}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}}}}]}},{\"name\":\"LexLeanRuntime.Lengthable\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.Lengthable.mk\",\"parameters\":1,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}}}}]}},{\"name\":\"LexLeanRuntime.Quotient\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.Quotient.mk\",\"parameters\":1,\"fields\":3,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"bvar\",\"index\":2}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}}}]}},{\"name\":\"LexLeanRuntime.append\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.Appendable.append\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}},\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"borrow\":false},{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"borrow\":false},{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Appendable\",\"index\":0,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.39\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.40\"}}}},\"uses\":[\"LexLeanRuntime.Appendable\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instAppendableList\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"List.append\",\"LexLeanRuntime.Appendable.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]}]}},\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"List.appendTR\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}}},\"uses\":[\"List\",\"LexLeanRuntime.Appendable\",\"List.appendTR\",\"LexLeanRuntime.Appendable.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instLengthableList\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"List.length\",\"LexLeanRuntime.Lengthable.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]}]}},\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"List.lengthTR\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.10\"}}}},\"uses\":[\"List\",\"Nat\",\"LexLeanRuntime.Lengthable\",\"List.lengthTR\",\"LexLeanRuntime.Lengthable.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instQuotientInt\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"instBEqOfDecidableEq\",\"instOfNat\",\"BEq.beq\",\"Int.instDecidableEq\",\"Int.tdiv\",\"Int.tmod\",\"OfNat.ofNat\",\"LexLeanRuntime.Quotient.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.2\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"Int.tdiv\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.3\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"Int.tmod\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.15\",\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"Int.instDecidableEq\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"BEq\",\"index\":0,\"value\":\"_uniq.9\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.12\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.10\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.14\"}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.2\"},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.25\"}}}}}},\"uses\":[\"BEq\",\"Bool\",\"Decidable\",\"Int\",\"Nat\",\"OfNat\",\"instBEqOfDecidableEq\",\"instOfNat\",\"Int.instDecidableEq\",\"Int.tdiv\",\"Int.tmod\",\"LexLeanRuntime.Quotient\",\"LexLeanRuntime.Quotient.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.length\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.Lengthable.length\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}}},\"parameters\":[{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Lengthable\",\"index\":0,\"value\":\"_uniq.16\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.18\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.19\"}}}},\"uses\":[\"Nat\",\"LexLeanRuntime.Lengthable\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.multiply\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Mul\",\"instHMul\",\"HMul.hMul\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Mul\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}},\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Mul\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"borrow\":false},{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"borrow\":false},{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HMul\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instHMul\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HMul\",\"index\":0,\"value\":\"_uniq.39\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}}}},\"uses\":[\"HMul\",\"Mul\",\"instHMul\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.negate\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Neg\",\"Neg.neg\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Neg\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"bvar\",\"index\":2}}}},\"parameters\":[{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Neg\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"borrow\":false},{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Neg\",\"index\":0,\"value\":\"_uniq.26\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.35\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.36\"}}}},\"uses\":[\"Neg\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.quotient\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"LexLeanRuntime.Quotient\",\"LexLeanRuntime.Quotient.isZero\",\"LexLeanRuntime.Quotient.quotient\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":3},\"codomain\":{\"kind\":\"bvar\",\"index\":4}}}}}},\"parameters\":[{\"id\":\"_uniq.39\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"borrow\":false},{\"id\":\"_uniq.41\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"borrow\":false},{\"id\":\"_uniq.42\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"borrow\":false},{\"id\":\"_uniq.43\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Quotient\",\"index\":2,\"value\":\"_uniq.40\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.52\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"discriminant\":\"_uniq.55\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Quotient\",\"index\":0,\"value\":\"_uniq.40\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.59\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.60\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.43\"}}]}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.Quotient\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.subtract\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Sub\",\"instHSub\",\"HSub.hSub\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}},\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"borrow\":false},{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"borrow\":false},{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HSub\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instHSub\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HSub\",\"index\":0,\"value\":\"_uniq.39\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}}}},\"uses\":[\"HSub\",\"Sub\",\"instHSub\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.Key.compare\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanCollections.Key\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.Key.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.lessThan._sparseCasesOn_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Nat\",\"Ordering\",\"instOfNatNat\",\"Bool.false\",\"Eq.refl\",\"Nat.hasNotBit\",\"Nat.land\",\"Nat.ne_of_beq_eq_false\",\"Nat.shiftRight\",\"OfNat.ofNat\",\"Ordering.ctorIdx\",\"Ordering.eq\",\"Ordering.gt\",\"Ordering.lt\",\"Ordering.rec\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.lessThan.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Ordering\",\"Unit\",\"Nat.hasNotBit\",\"Ordering.ctorIdx\",\"Ordering.lt\",\"Unit.unit\",\"LexLeanCollections.lessThan._sparseCasesOn_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Appendable.append\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Appendable\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Appendable.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Lengthable.length\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Lengthable\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Lengthable.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Quotient.isZero\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Quotient\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Quotient.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Quotient.quotient\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Quotient\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Flows.ClampGuess\",\"kind\":\"definition\",\"module\":\"Models.Flows\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Except\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"ite\",\"Bool.false\",\"Bool.true\",\"Except.error\",\"Except.ok\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"Models.Ledger.ClampModel\",\"Models.Ledger.GuessModel\",\"Models.Ledger.belowCheck\",\"Models.Ledger.withinCheck\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}}},\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Ledger.ClampModel\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.32\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.33\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.34\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.33\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.36\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Ledger.withinCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.46\"},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.48\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.49\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.53\"}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Ledger.GuessModel\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Ledger.belowCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.66\"},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.67\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.68\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"},{\"kind\":\"fvar\",\"id\":\"_uniq.69\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.72\"}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.73\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.75\"}}}}]}}}}}}]}}}}}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Except\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"Bool.false\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Except.error\",\"Except.ok\",\"Prod.mk\",\"Models.Ledger.ClampModel\",\"Models.Ledger.GuessModel\",\"Models.Ledger.belowCheck\",\"Models.Ledger.withinCheck\"]},\"inductive\":null},{\"name\":\"Models.Flows.FlowModel\",\"kind\":\"definition\",\"module\":\"Models.Flows\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Models.Flows.ClampGuess\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Flows.ClampGuess\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.13\"}}},\"uses\":[\"Bool\",\"Except\",\"Nat\",\"Prod\",\"Models.Flows.ClampGuess\"]},\"inductive\":null},{\"name\":\"Models.Glyphs.Glyph\",\"kind\":\"inductive\",\"module\":\"Models.Glyphs\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Models.Glyphs.Glyph.g0\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]}},{\"name\":\"Models.Glyphs.Glyph.g1\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]}},{\"name\":\"Models.Glyphs.Glyph.g2\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]}},{\"name\":\"Models.Glyphs.Glyph.g3\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]}},{\"name\":\"Models.Glyphs.Glyph.g4\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]}},{\"name\":\"Models.Glyphs.Glyph.g5\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]}},{\"name\":\"Models.Glyphs.Glyph.g6\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]}},{\"name\":\"Models.Glyphs.Glyph.g7\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]}},{\"name\":\"Models.Glyphs.Glyph.g8\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]}},{\"name\":\"Models.Glyphs.Glyph.g9\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]}}]}},{\"name\":\"Models.Glyphs.digitOf\",\"kind\":\"definition\",\"module\":\"Models.Glyphs\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Unit\",\"instOfNatNat\",\"OfNat.ofNat\",\"Models.Glyphs.Glyph\",\"Models.Glyphs.encode.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.88\",\"parameters\":[{\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.85\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.86\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.87\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.88\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.95\",\"parameters\":[{\"id\":\"_uniq.91\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.93\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.94\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.95\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.102\",\"parameters\":[{\"id\":\"_uniq.98\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.99\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.100\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.101\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.102\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.109\",\"parameters\":[{\"id\":\"_uniq.105\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.106\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.107\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.108\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.110\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.109\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.116\",\"parameters\":[{\"id\":\"_uniq.112\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.113\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"4\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.113\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.114\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.115\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.116\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.123\",\"parameters\":[{\"id\":\"_uniq.119\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.120\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"5\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.121\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.120\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.121\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.122\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.124\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.123\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.130\",\"parameters\":[{\"id\":\"_uniq.126\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.127\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"6\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.128\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.127\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.129\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.128\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.129\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.131\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.130\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.137\",\"parameters\":[{\"id\":\"_uniq.133\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"7\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.135\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.134\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.135\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.136\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.138\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.137\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.144\",\"parameters\":[{\"id\":\"_uniq.140\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.141\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"8\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.142\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.141\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.143\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.142\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.143\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.145\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.144\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.151\",\"parameters\":[{\"id\":\"_uniq.147\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.148\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"9\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.149\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.148\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.150\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.149\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.150\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.152\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.151\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Models.Glyphs.Glyph\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.70\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Models.Glyphs.Glyph.g0\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.165\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.166\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.89\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.165\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.166\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Glyphs.Glyph.g1\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.167\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.168\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.96\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.167\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.168\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Glyphs.Glyph.g2\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.169\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.170\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.103\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.169\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.170\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Glyphs.Glyph.g3\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.171\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.172\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.110\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.171\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.172\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Glyphs.Glyph.g4\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.173\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.174\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.117\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.173\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.174\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Glyphs.Glyph.g5\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.175\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.176\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.124\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.175\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.176\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Glyphs.Glyph.g6\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.177\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.178\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.131\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.177\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.178\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Glyphs.Glyph.g7\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.179\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.180\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.138\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.179\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.180\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Glyphs.Glyph.g8\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.181\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.182\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.145\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.181\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.182\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Glyphs.Glyph.g9\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.183\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.184\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.152\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.183\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.184\"}}}}]}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Nat\",\"OfNat\",\"PUnit\",\"instOfNatNat\",\"Unit.unit\",\"Models.Glyphs.Glyph\",\"Models.Glyphs.Glyph.g0\",\"Models.Glyphs.Glyph.g1\",\"Models.Glyphs.Glyph.g2\",\"Models.Glyphs.Glyph.g3\",\"Models.Glyphs.Glyph.g4\",\"Models.Glyphs.Glyph.g5\",\"Models.Glyphs.Glyph.g6\",\"Models.Glyphs.Glyph.g7\",\"Models.Glyphs.Glyph.g8\",\"Models.Glyphs.Glyph.g9\"]},\"inductive\":null},{\"name\":\"Models.Glyphs.encode\",\"kind\":\"definition\",\"module\":\"Models.Glyphs\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"List\",\"Unit\",\"instOfNat\",\"List.cons\",\"List.nil\",\"OfNat.ofNat\",\"Models.Glyphs.Glyph\",\"Models.Glyphs.encode.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.99\",\"parameters\":[{\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.85\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.86\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.89\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.90\"},{\"kind\":\"fvar\",\"id\":\"_uniq.91\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"},{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"},{\"kind\":\"fvar\",\"id\":\"_uniq.93\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"},{\"kind\":\"fvar\",\"id\":\"_uniq.94\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"},{\"kind\":\"fvar\",\"id\":\"_uniq.95\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"},{\"kind\":\"fvar\",\"id\":\"_uniq.96\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"},{\"kind\":\"fvar\",\"id\":\"_uniq.97\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.98\"}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.99\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.117\",\"parameters\":[{\"id\":\"_uniq.102\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.104\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.106\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.107\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.110\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.105\"},{\"kind\":\"fvar\",\"id\":\"_uniq.109\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.111\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.105\"},{\"kind\":\"fvar\",\"id\":\"_uniq.110\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.105\"},{\"kind\":\"fvar\",\"id\":\"_uniq.111\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.113\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.105\"},{\"kind\":\"fvar\",\"id\":\"_uniq.112\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"},{\"kind\":\"fvar\",\"id\":\"_uniq.113\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"},{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.105\"},{\"kind\":\"fvar\",\"id\":\"_uniq.115\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.116\"}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.118\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.117\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.135\",\"parameters\":[{\"id\":\"_uniq.120\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.121\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.121\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.122\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.124\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.124\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.125\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.127\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.128\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.123\"},{\"kind\":\"fvar\",\"id\":\"_uniq.127\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.129\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.126\"},{\"kind\":\"fvar\",\"id\":\"_uniq.128\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.130\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.123\"},{\"kind\":\"fvar\",\"id\":\"_uniq.129\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.131\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.123\"},{\"kind\":\"fvar\",\"id\":\"_uniq.130\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.132\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.126\"},{\"kind\":\"fvar\",\"id\":\"_uniq.131\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.123\"},{\"kind\":\"fvar\",\"id\":\"_uniq.132\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.123\"},{\"kind\":\"fvar\",\"id\":\"_uniq.133\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.134\"}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.135\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.153\",\"parameters\":[{\"id\":\"_uniq.138\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.139\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.140\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.139\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.141\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.140\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.142\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.143\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.142\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.144\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.143\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.145\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.146\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.141\"},{\"kind\":\"fvar\",\"id\":\"_uniq.145\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.147\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.144\"},{\"kind\":\"fvar\",\"id\":\"_uniq.146\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.148\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.144\"},{\"kind\":\"fvar\",\"id\":\"_uniq.147\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.149\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.141\"},{\"kind\":\"fvar\",\"id\":\"_uniq.148\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.150\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.141\"},{\"kind\":\"fvar\",\"id\":\"_uniq.149\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.151\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.141\"},{\"kind\":\"fvar\",\"id\":\"_uniq.150\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.152\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.141\"},{\"kind\":\"fvar\",\"id\":\"_uniq.151\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.152\"}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.154\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.153\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.171\",\"parameters\":[{\"id\":\"_uniq.156\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.157\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.158\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.157\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.159\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.158\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.160\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.161\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.160\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.162\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.161\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.163\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.164\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.162\"},{\"kind\":\"fvar\",\"id\":\"_uniq.163\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.165\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.162\"},{\"kind\":\"fvar\",\"id\":\"_uniq.164\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.166\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.159\"},{\"kind\":\"fvar\",\"id\":\"_uniq.165\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.167\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.159\"},{\"kind\":\"fvar\",\"id\":\"_uniq.166\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.168\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.162\"},{\"kind\":\"fvar\",\"id\":\"_uniq.167\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.169\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.162\"},{\"kind\":\"fvar\",\"id\":\"_uniq.168\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.170\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.159\"},{\"kind\":\"fvar\",\"id\":\"_uniq.169\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.170\"}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.172\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.171\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.189\",\"parameters\":[{\"id\":\"_uniq.174\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.175\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.176\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.175\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.177\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.176\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.178\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.179\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.178\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.180\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.179\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.181\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.182\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.177\"},{\"kind\":\"fvar\",\"id\":\"_uniq.181\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.183\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.177\"},{\"kind\":\"fvar\",\"id\":\"_uniq.182\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.184\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.180\"},{\"kind\":\"fvar\",\"id\":\"_uniq.183\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.185\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.177\"},{\"kind\":\"fvar\",\"id\":\"_uniq.184\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.186\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.177\"},{\"kind\":\"fvar\",\"id\":\"_uniq.185\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.187\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.180\"},{\"kind\":\"fvar\",\"id\":\"_uniq.186\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.188\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.177\"},{\"kind\":\"fvar\",\"id\":\"_uniq.187\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.188\"}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.190\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.189\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.207\",\"parameters\":[{\"id\":\"_uniq.192\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.193\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.194\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.193\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.195\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.194\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.196\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.197\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.196\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.198\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.197\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.199\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.200\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.195\"},{\"kind\":\"fvar\",\"id\":\"_uniq.199\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.201\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.195\"},{\"kind\":\"fvar\",\"id\":\"_uniq.200\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.202\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.195\"},{\"kind\":\"fvar\",\"id\":\"_uniq.201\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.203\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.195\"},{\"kind\":\"fvar\",\"id\":\"_uniq.202\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.204\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.195\"},{\"kind\":\"fvar\",\"id\":\"_uniq.203\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.205\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.198\"},{\"kind\":\"fvar\",\"id\":\"_uniq.204\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.206\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.195\"},{\"kind\":\"fvar\",\"id\":\"_uniq.205\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.206\"}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.208\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.207\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.225\",\"parameters\":[{\"id\":\"_uniq.210\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.211\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.212\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.211\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.213\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.212\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.214\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.215\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.214\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.216\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.215\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.217\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.218\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.216\"},{\"kind\":\"fvar\",\"id\":\"_uniq.217\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.219\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.216\"},{\"kind\":\"fvar\",\"id\":\"_uniq.218\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.220\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.216\"},{\"kind\":\"fvar\",\"id\":\"_uniq.219\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.221\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.216\"},{\"kind\":\"fvar\",\"id\":\"_uniq.220\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.222\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.213\"},{\"kind\":\"fvar\",\"id\":\"_uniq.221\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.223\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.213\"},{\"kind\":\"fvar\",\"id\":\"_uniq.222\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.224\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.213\"},{\"kind\":\"fvar\",\"id\":\"_uniq.223\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.224\"}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.226\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.225\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.240\",\"parameters\":[{\"id\":\"_uniq.228\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.229\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.230\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.229\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.231\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.230\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.232\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.233\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.231\"},{\"kind\":\"fvar\",\"id\":\"_uniq.232\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.234\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.231\"},{\"kind\":\"fvar\",\"id\":\"_uniq.233\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.235\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.231\"},{\"kind\":\"fvar\",\"id\":\"_uniq.234\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.236\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.231\"},{\"kind\":\"fvar\",\"id\":\"_uniq.235\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.237\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.231\"},{\"kind\":\"fvar\",\"id\":\"_uniq.236\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.238\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.231\"},{\"kind\":\"fvar\",\"id\":\"_uniq.237\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.239\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.231\"},{\"kind\":\"fvar\",\"id\":\"_uniq.238\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.239\"}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.241\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.240\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.258\",\"parameters\":[{\"id\":\"_uniq.243\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.244\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.245\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.244\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.246\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.245\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.247\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.248\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.247\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.249\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.248\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.250\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.251\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.246\"},{\"kind\":\"fvar\",\"id\":\"_uniq.250\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.252\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.246\"},{\"kind\":\"fvar\",\"id\":\"_uniq.251\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.253\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.249\"},{\"kind\":\"fvar\",\"id\":\"_uniq.252\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.254\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.246\"},{\"kind\":\"fvar\",\"id\":\"_uniq.253\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.255\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.246\"},{\"kind\":\"fvar\",\"id\":\"_uniq.254\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.256\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.246\"},{\"kind\":\"fvar\",\"id\":\"_uniq.255\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.257\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.246\"},{\"kind\":\"fvar\",\"id\":\"_uniq.256\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.257\"}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.259\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.258\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Models.Glyphs.Glyph\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"discriminant\":\"_uniq.70\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Models.Glyphs.Glyph.g0\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.272\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.273\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.100\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.272\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.273\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Glyphs.Glyph.g1\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.274\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.275\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.118\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.274\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.275\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Glyphs.Glyph.g2\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.276\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.277\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.136\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.276\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.277\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Glyphs.Glyph.g3\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.278\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.279\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.154\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.278\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.279\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Glyphs.Glyph.g4\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.280\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.281\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.172\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.280\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.281\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Glyphs.Glyph.g5\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.282\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.283\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.190\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.282\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.283\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Glyphs.Glyph.g6\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.284\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.285\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.208\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.284\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.285\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Glyphs.Glyph.g7\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.286\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.287\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.226\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.286\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.287\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Glyphs.Glyph.g8\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.288\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.289\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.241\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.288\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.289\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Glyphs.Glyph.g9\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.290\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.291\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.259\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.290\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.291\"}}}}]}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Int\",\"List\",\"Nat\",\"OfNat\",\"PUnit\",\"instOfNat\",\"List.cons\",\"List.nil\",\"Unit.unit\",\"Models.Glyphs.Glyph\",\"Models.Glyphs.Glyph.g0\",\"Models.Glyphs.Glyph.g1\",\"Models.Glyphs.Glyph.g2\",\"Models.Glyphs.Glyph.g3\",\"Models.Glyphs.Glyph.g4\",\"Models.Glyphs.Glyph.g5\",\"Models.Glyphs.Glyph.g6\",\"Models.Glyphs.Glyph.g7\",\"Models.Glyphs.Glyph.g8\",\"Models.Glyphs.Glyph.g9\"]},\"inductive\":null},{\"name\":\"Models.Ledger.Clamp\",\"kind\":\"definition\",\"module\":\"Models.Ledger\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"instSubNat\",\"HAdd.hAdd\",\"LexLeanRuntime.subtract\",\"OfNat.ofNat\",\"Prod.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.18\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.19\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.20\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"100\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.24\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.28\"}}}}}}}}}}}}}},\"uses\":[\"Add\",\"HAdd\",\"Nat\",\"OfNat\",\"Prod\",\"Sub\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"instSubNat\",\"LexLeanRuntime.subtract\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Models.Ledger.ClampModel\",\"kind\":\"definition\",\"module\":\"Models.Ledger\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Models.Ledger.Clamp\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Ledger.Clamp\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.13\"}}},\"uses\":[\"Nat\",\"Prod\",\"Models.Ledger.Clamp\"]},\"inductive\":null},{\"name\":\"Models.Ledger.Guess\",\"kind\":\"definition\",\"module\":\"Models.Ledger\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"instSubNat\",\"LexLeanRuntime.subtract\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.9\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.11\"}}}}}}},\"uses\":[\"Nat\",\"OfNat\",\"Sub\",\"instOfNatNat\",\"instSubNat\",\"LexLeanRuntime.subtract\"]},\"inductive\":null},{\"name\":\"Models.Ledger.GuessModel\",\"kind\":\"definition\",\"module\":\"Models.Ledger\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Models.Ledger.Guess\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Ledger.Guess\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}},\"uses\":[\"Nat\",\"Models.Ledger.Guess\"]},\"inductive\":null},{\"name\":\"Models.Ledger.Spill\",\"kind\":\"definition\",\"module\":\"Models.Ledger\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instAddNat\",\"instHAdd\",\"HAdd.hAdd\",\"Prod.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.14\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.15\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.17\"}}}}}}},\"uses\":[\"Add\",\"HAdd\",\"Nat\",\"Prod\",\"instAddNat\",\"instHAdd\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Models.Ledger.SpillModel\",\"kind\":\"definition\",\"module\":\"Models.Ledger\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Models.Ledger.Spill\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Ledger.Spill\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.13\"}}},\"uses\":[\"Nat\",\"Prod\",\"Models.Ledger.Spill\"]},\"inductive\":null},{\"name\":\"Models.Ledger.SpillRawModel\",\"kind\":\"definition\",\"module\":\"Models.Ledger\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Models.Ledger.Spill\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Ledger.Spill\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.13\"}}},\"uses\":[\"Nat\",\"Prod\",\"Models.Ledger.Spill\"]},\"inductive\":null},{\"name\":\"Models.Ledger.belowCheck\",\"kind\":\"definition\",\"module\":\"Models.Ledger\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Nat.ble\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.13\"}}},\"uses\":[\"Bool\",\"Nat\",\"Nat.ble\"]},\"inductive\":null},{\"name\":\"Models.Ledger.cappedCheck\",\"kind\":\"definition\",\"module\":\"Models.Ledger\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Nat.ble\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"100\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.8\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.10\"}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"instOfNatNat\",\"Nat.ble\"]},\"inductive\":null},{\"name\":\"Models.Ledger.growsCheck\",\"kind\":\"definition\",\"module\":\"Models.Ledger\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Nat.ble\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}}}},\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.25\"}}},\"uses\":[\"Bool\",\"Nat\",\"Nat.ble\"]},\"inductive\":null},{\"name\":\"Models.Ledger.smallCheck\",\"kind\":\"definition\",\"module\":\"Models.Ledger\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Nat.ble\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"10\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.14\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.16\"}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"instOfNatNat\",\"Nat.ble\"]},\"inductive\":null},{\"name\":\"Models.Ledger.withinCheck\",\"kind\":\"definition\",\"module\":\"Models.Ledger\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Nat.ble\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"10\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.8\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.10\"}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"instOfNatNat\",\"Nat.ble\"]},\"inductive\":null},{\"name\":\"Models.Main.admitCosts\",\"kind\":\"definition\",\"module\":\"Models.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Except\",\"List\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"ite\",\"Bool.false\",\"Bool.true\",\"Except.error\",\"Except.ok\",\"Prod.mk\",\"Models.Pipeline.StreamModel\",\"Models.Pipeline.shortStreamCheck\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}},\"parameters\":[{\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.13\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Pipeline.shortStreamCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"discriminant\":\"_uniq.26\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.30\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Pipeline.StreamModel\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.33\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.35\"}}}}}]}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Except\",\"List\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"Bool.false\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Except.error\",\"Except.ok\",\"Prod.mk\",\"Models.Pipeline.StreamModel\",\"Models.Pipeline.shortStreamCheck\"]},\"inductive\":null},{\"name\":\"Models.Main.classify\",\"kind\":\"definition\",\"module\":\"Models.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Models.Glyphs.Glyph\",\"Models.Recognizer.DigitModel\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Recognizer.DigitModel\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}},\"uses\":[\"Nat\",\"Models.Glyphs.Glyph\",\"Models.Recognizer.DigitModel\"]},\"inductive\":null},{\"name\":\"Models.Main.classifyChecked\",\"kind\":\"definition\",\"module\":\"Models.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Except\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"ite\",\"Bool.false\",\"Bool.true\",\"Except.error\",\"Except.ok\",\"Prod.mk\",\"Models.Glyphs.Glyph\",\"Models.Recognizer.RawDigitModel\",\"Models.Recognizer.recognizesCheck\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.15\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Recognizer.RawDigitModel\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.19\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Recognizer.recognizesCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.31\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.41\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.42\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.49\"}}}]}}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Except\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"Bool.false\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Except.error\",\"Except.ok\",\"Prod.mk\",\"Models.Glyphs.Glyph\",\"Models.Recognizer.RawDigitModel\",\"Models.Recognizer.recognizesCheck\"]},\"inductive\":null},{\"name\":\"Models.Main.flowStep\",\"kind\":\"definition\",\"module\":\"Models.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Except\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"ite\",\"Bool.false\",\"Bool.true\",\"Except.error\",\"Except.ok\",\"Prod.fst\",\"Prod.mk\",\"Models.Flows.FlowModel\",\"Models.Ledger.cappedCheck\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}}},\"parameters\":[{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.24\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.25\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Ledger.cappedCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.38\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"discriminant\":\"_uniq.40\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.41\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.44\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.45\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Flows.FlowModel\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.47\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.48\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Ledger.cappedCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.58\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"discriminant\":\"_uniq.59\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.62\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.63\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.64\"}}}]}}}}}}}]}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Except\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"Bool.false\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Except.error\",\"Except.ok\",\"Prod.mk\",\"Models.Flows.FlowModel\",\"Models.Ledger.cappedCheck\"]},\"inductive\":null},{\"name\":\"Models.Main.guessChecked\",\"kind\":\"definition\",\"module\":\"Models.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Except\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"ite\",\"Bool.false\",\"Bool.true\",\"Except.error\",\"Except.ok\",\"Prod.mk\",\"Models.Ledger.GuessModel\",\"Models.Ledger.belowCheck\",\"Models.Ledger.withinCheck\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.16\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Ledger.withinCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.29\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.33\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Ledger.GuessModel\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.36\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Ledger.belowCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.46\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.47\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.48\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.51\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.52\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.53\"}}}]}}}}}}]}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Except\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"Bool.false\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Except.error\",\"Except.ok\",\"Prod.mk\",\"Models.Ledger.GuessModel\",\"Models.Ledger.belowCheck\",\"Models.Ledger.withinCheck\"]},\"inductive\":null},{\"name\":\"Models.Main.ledgerFull\",\"kind\":\"definition\",\"module\":\"Models.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Except\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"ite\",\"Bool.false\",\"Bool.true\",\"Except.error\",\"Except.ok\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"Models.Ledger.SpillRawModel\",\"Models.Ledger.cappedCheck\",\"Models.Ledger.growsCheck\",\"Models.Ledger.smallCheck\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}}},\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.30\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.31\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Ledger.cappedCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.44\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.46\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.47\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.50\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.51\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Ledger.smallCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.61\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.62\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.65\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.66\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Ledger.SpillRawModel\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.68\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.69\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Ledger.cappedCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.78\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.79\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.80\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.81\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.82\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.83\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.84\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.69\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Ledger.growsCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.78\"},{\"kind\":\"fvar\",\"id\":\"_uniq.93\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.94\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.95\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.96\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.97\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.98\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.99\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.100\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.69\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.101\"}}}]}}}}}]}}}}}}}]}}}}]}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Except\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"Bool.false\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Except.error\",\"Except.ok\",\"Prod.mk\",\"Models.Ledger.SpillRawModel\",\"Models.Ledger.cappedCheck\",\"Models.Ledger.growsCheck\",\"Models.Ledger.smallCheck\"]},\"inductive\":null},{\"name\":\"Models.Main.ledgerPost\",\"kind\":\"definition\",\"module\":\"Models.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Except\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"ite\",\"Bool.false\",\"Bool.true\",\"Except.error\",\"Except.ok\",\"Prod.fst\",\"Prod.mk\",\"Models.Ledger.SpillModel\",\"Models.Ledger.cappedCheck\",\"Models.Ledger.smallCheck\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}}},\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.27\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.28\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Ledger.cappedCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.43\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.47\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.48\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Ledger.smallCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.58\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.62\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.63\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Ledger.SpillModel\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.66\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Ledger.cappedCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.76\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.77\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.78\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.79\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.80\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.81\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.66\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.82\"}}}]}}}}}}}]}}}}]}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Except\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"Bool.false\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Except.error\",\"Except.ok\",\"Prod.mk\",\"Models.Ledger.SpillModel\",\"Models.Ledger.cappedCheck\",\"Models.Ledger.smallCheck\"]},\"inductive\":null},{\"name\":\"Models.Main.respond\",\"kind\":\"definition\",\"module\":\"Models.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Except\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"ite\",\"Bool.false\",\"Bool.true\",\"Except.error\",\"Except.ok\",\"Prod.mk\",\"Models.Pipeline.PipelineModel\",\"Models.Triage.Presentation\",\"Models.Triage.symptomaticCheck\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.13\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Triage.symptomaticCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.26\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.30\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Pipeline.PipelineModel\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.33\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.35\"}}}}}]}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Except\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"Bool.false\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Except.error\",\"Except.ok\",\"Prod.mk\",\"Models.Pipeline.PipelineModel\",\"Models.Triage.Presentation\",\"Models.Triage.symptomaticCheck\"]},\"inductive\":null},{\"name\":\"Models.Main.step\",\"kind\":\"definition\",\"module\":\"Models.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Except\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"ite\",\"Bool.false\",\"Bool.true\",\"Except.error\",\"Except.ok\",\"Prod.mk\",\"Models.Session.SessionModel\",\"Models.Session.Window\",\"Models.Session.affordableCheck\",\"Models.Session.boundedCheck\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}}},\"parameters\":[{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.23\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.24\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Session.boundedCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.39\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.40\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.43\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Session.affordableCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.54\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.58\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Session.SessionModel\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.61\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.63\"}}}}}]}}}}]}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Except\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"Bool.false\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Except.error\",\"Except.ok\",\"Prod.mk\",\"Models.Session.SessionModel\",\"Models.Session.Window\",\"Models.Session.affordableCheck\",\"Models.Session.boundedCheck\"]},\"inductive\":null},{\"name\":\"Models.Pipeline.PipelineModel\",\"kind\":\"definition\",\"module\":\"Models.Pipeline\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Models.Pipeline.TriagePipeline\",\"Models.Triage.Presentation\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Pipeline.TriagePipeline\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}},\"uses\":[\"Nat\",\"Models.Pipeline.TriagePipeline\",\"Models.Triage.Presentation\"]},\"inductive\":null},{\"name\":\"Models.Pipeline.SessionStream\",\"kind\":\"definition\",\"module\":\"Models.Pipeline\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Except\",\"List\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"ite\",\"Bool.false\",\"Bool.true\",\"Except.error\",\"Except.ok\",\"LexLeanCollections.listFold\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"List.cons\",\"List.nil\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"Models.Session.SessionModel\",\"Models.Session.Window\",\"Models.Session.affordableCheck\",\"Models.Session.boundedCheck\",\"Models.Pipeline.SessionStream.match_1\",\"Models.Session.SessionModel.initial\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"parameters\":[{\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.140\",\"parameters\":[{\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"borrow\":false},{\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.71\",\"parameters\":[{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.63\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.71\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.123\",\"parameters\":[{\"id\":\"_uniq.76\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.76\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Session.boundedCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.85\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.86\"},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"discriminant\":\"_uniq.88\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.89\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.90\"},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.91\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.92\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.93\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Session.affordableCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.85\"},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.102\"},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"discriminant\":\"_uniq.103\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.104\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.105\"},{\"kind\":\"fvar\",\"id\":\"_uniq.105\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.106\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.107\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.108\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.110\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Session.SessionModel\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.85\"},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.111\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.110\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.111\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.113\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.76\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.111\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.115\"},{\"kind\":\"fvar\",\"id\":\"_uniq.116\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.118\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.113\"},{\"kind\":\"fvar\",\"id\":\"_uniq.114\"},{\"kind\":\"fvar\",\"id\":\"_uniq.117\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.112\"},{\"kind\":\"fvar\",\"id\":\"_uniq.118\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.120\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.119\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.120\"}}}}}}}}}}}}}]}}}}]}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.124\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.123\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Except\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"discriminant\":\"_uniq.63\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Except.error\",\"parameters\":[{\"id\":\"_uniq.135\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.72\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.135\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.136\"}}},{\"kind\":\"constructor\",\"constructor\":\"Except.ok\",\"parameters\":[{\"id\":\"_uniq.137\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.138\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.124\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.137\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.138\"}}}]}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.141\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Session.SessionModel.initial\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.142\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.143\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.141\"},{\"kind\":\"fvar\",\"id\":\"_uniq.142\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.144\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.143\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.145\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.140\"},{\"kind\":\"fvar\",\"id\":\"_uniq.144\"},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.146\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.145\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.152\",\"parameters\":[{\"id\":\"_uniq.150\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.151\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.150\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.151\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.153\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.152\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.160\",\"parameters\":[{\"id\":\"_uniq.157\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.158\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.157\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.159\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.158\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.159\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.161\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.160\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Except\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.146\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Except.error\",\"parameters\":[{\"id\":\"_uniq.172\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.173\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.153\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.172\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.173\"}}},{\"kind\":\"constructor\",\"constructor\":\"Except.ok\",\"parameters\":[{\"id\":\"_uniq.174\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.175\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.161\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.174\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.175\"}}}]}}}}}}}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Except\",\"List\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"Bool.false\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Except.error\",\"Except.ok\",\"LexLeanCollections.listFold\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"List.cons\",\"List.nil\",\"Prod.mk\",\"Models.Session.SessionModel\",\"Models.Session.Window\",\"Models.Session.affordableCheck\",\"Models.Session.boundedCheck\",\"Models.Session.SessionModel.initial\"]},\"inductive\":null},{\"name\":\"Models.Pipeline.StreamModel\",\"kind\":\"definition\",\"module\":\"Models.Pipeline\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Models.Pipeline.SessionStream\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Pipeline.SessionStream\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}},\"uses\":[\"Bool\",\"Except\",\"List\",\"Nat\",\"Prod\",\"Models.Pipeline.SessionStream\"]},\"inductive\":null},{\"name\":\"Models.Pipeline.TriagePipeline\",\"kind\":\"definition\",\"module\":\"Models.Pipeline\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Models.Policy.PolicyModel\",\"Models.Triage.Level\",\"Models.Triage.Presentation\",\"Models.Triage.TriageModel\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Triage.TriageModel\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.15\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Policy.PolicyModel\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.17\",\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.18\"}}}}}},\"uses\":[\"Nat\",\"Models.Policy.PolicyModel\",\"Models.Triage.Level\",\"Models.Triage.Presentation\",\"Models.Triage.TriageModel\"]},\"inductive\":null},{\"name\":\"Models.Pipeline.shortStreamCheck\",\"kind\":\"definition\",\"module\":\"Models.Pipeline\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"instOfNatNat\",\"LexLeanRuntime.instLengthableList\",\"LexLeanRuntime.length\",\"Nat.blt\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1001\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.10\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.12\"}}}}}}}},\"uses\":[\"Bool\",\"List\",\"Nat\",\"OfNat\",\"instOfNatNat\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableList\",\"LexLeanRuntime.length\",\"Nat.blt\"]},\"inductive\":null},{\"name\":\"Models.Policy.PolicyModel\",\"kind\":\"definition\",\"module\":\"Models.Policy\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Models.Policy.PolicyRules\",\"Models.Triage.Level\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Policy.PolicyRules\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}},\"uses\":[\"Nat\",\"Models.Policy.PolicyRules\",\"Models.Triage.Level\"]},\"inductive\":null},{\"name\":\"Models.Policy.PolicyRules\",\"kind\":\"definition\",\"module\":\"Models.Policy\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Nat\",\"instDecidableEqBool\",\"instOfNatNat\",\"ite\",\"Bool.true\",\"OfNat.ofNat\",\"Models.Policy.isUrgent\",\"Models.Triage.Level\",\"Models.Triage.isEmergency\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Triage.isEmergency\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.23\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Policy.isUrgent\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.34\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.37\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.38\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.39\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.41\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.42\"}}}}}]}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.46\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.47\"}}}}}]}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Nat\",\"OfNat\",\"instDecidableEqBool\",\"instOfNatNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Models.Policy.isUrgent\",\"Models.Triage.Level\",\"Models.Triage.isEmergency\"]},\"inductive\":null},{\"name\":\"Models.Policy.isUrgent\",\"kind\":\"definition\",\"module\":\"Models.Policy\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Unit\",\"Bool.false\",\"Bool.true\",\"Models.Triage.Level\",\"Models.Policy.isUrgent.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.35\",\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.34\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.35\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.40\",\"parameters\":[{\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.39\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.40\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.35\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Models.Triage.Level\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.26\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Models.Triage.Level.routine\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.36\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.50\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Triage.Level.urgent\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.41\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.52\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Triage.Level.emergency\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.43\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.54\"}}}}]}}}}}}},\"uses\":[\"Bool\",\"PUnit\",\"Bool.false\",\"Bool.true\",\"Unit.unit\",\"Models.Triage.Level\",\"Models.Triage.Level.emergency\",\"Models.Triage.Level.routine\",\"Models.Triage.Level.urgent\"]},\"inductive\":null},{\"name\":\"Models.Recognizer.DigitModel\",\"kind\":\"definition\",\"module\":\"Models.Recognizer\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Models.Glyphs.Glyph\",\"Models.Recognizer.DigitNet\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Recognizer.DigitNet\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}},\"uses\":[\"Nat\",\"Models.Glyphs.Glyph\",\"Models.Recognizer.DigitNet\"]},\"inductive\":null},{\"name\":\"Models.Recognizer.DigitNet\",\"kind\":\"definition\",\"module\":\"Models.Recognizer\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Int\",\"List\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"instDecidableEqBool\",\"instOfNatNat\",\"ite\",\"Bool.true\",\"LexLeanCollections.instKeyInt\",\"LexLeanCollections.lessThan\",\"LexLeanCollections.listFold\",\"List.cons\",\"List.nil\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"Models.Glyphs.Glyph\",\"Models.Recognizer.DigitNet.logits\",\"Models.Recognizer.DigitNet.match_1\",\"Models.Recognizer.DigitNet.match_3\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.74\",\"parameters\":[{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.72\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.73\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.74\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.81\",\"parameters\":[{\"id\":\"_uniq.79\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.79\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.80\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.81\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.187\",\"parameters\":[{\"id\":\"_uniq.96\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"borrow\":false},{\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.104\",\"parameters\":[{\"id\":\"_uniq.103\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.96\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.104\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.170\",\"parameters\":[{\"id\":\"_uniq.112\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.113\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.122\",\"parameters\":[{\"id\":\"_uniq.119\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.120\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.112\"},{\"kind\":\"fvar\",\"id\":\"_uniq.97\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.121\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.120\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.121\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.122\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.147\",\"parameters\":[{\"id\":\"_uniq.127\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.instKeyInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.137\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.127\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.138\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.lessThan\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.136\"},{\"kind\":\"fvar\",\"id\":\"_uniq.137\"},{\"kind\":\"fvar\",\"id\":\"_uniq.97\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.139\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.140\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.138\"},{\"kind\":\"fvar\",\"id\":\"_uniq.139\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.140\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.141\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.142\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.127\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.142\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.143\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.144\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.112\"},{\"kind\":\"fvar\",\"id\":\"_uniq.97\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.145\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.144\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.145\"}}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.148\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.147\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.156\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.96\"},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.163\",\"parameters\":[{\"id\":\"_uniq.161\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.162\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.161\"},{\"kind\":\"fvar\",\"id\":\"_uniq.113\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.162\"}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.169\",\"parameters\":[{\"id\":\"_uniq.167\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.168\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.148\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.167\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.163\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.168\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.166\",\"parameters\":[{\"id\":\"_uniq.164\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.165\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.123\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.164\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.163\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.165\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.156\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.157\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.166\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.157\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.159\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.169\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.159\"}]}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.171\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.170\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.180\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.96\"},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.180\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.181\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.182\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.105\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.181\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.182\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.183\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.184\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.185\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.171\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.183\"},{\"kind\":\"fvar\",\"id\":\"_uniq.184\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.185\"}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.188\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.189\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.190\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.189\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.191\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.190\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.192\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.193\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.192\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.194\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.193\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.195\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.196\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.195\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.197\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.196\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.198\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.199\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.198\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.200\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.199\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.201\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"4\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.202\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.201\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.203\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.202\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.204\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"5\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.205\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.204\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.206\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.205\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.207\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"6\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.208\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.207\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.209\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.208\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.210\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"7\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.211\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.210\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.212\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.211\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.213\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"8\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.214\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.213\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.215\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.214\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.216\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"9\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.217\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.216\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.218\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.217\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.219\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.220\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.218\"},{\"kind\":\"fvar\",\"id\":\"_uniq.219\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.221\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.215\"},{\"kind\":\"fvar\",\"id\":\"_uniq.220\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.222\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.212\"},{\"kind\":\"fvar\",\"id\":\"_uniq.221\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.223\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.209\"},{\"kind\":\"fvar\",\"id\":\"_uniq.222\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.224\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.206\"},{\"kind\":\"fvar\",\"id\":\"_uniq.223\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.225\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.203\"},{\"kind\":\"fvar\",\"id\":\"_uniq.224\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.226\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.200\"},{\"kind\":\"fvar\",\"id\":\"_uniq.225\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.227\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.197\"},{\"kind\":\"fvar\",\"id\":\"_uniq.226\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.228\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.194\"},{\"kind\":\"fvar\",\"id\":\"_uniq.227\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.229\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.191\"},{\"kind\":\"fvar\",\"id\":\"_uniq.228\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.230\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.188\"},{\"kind\":\"fvar\",\"id\":\"_uniq.229\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.231\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Recognizer.DigitNet.logits\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.64\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.232\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.187\"},{\"kind\":\"fvar\",\"id\":\"_uniq.230\"},{\"kind\":\"fvar\",\"id\":\"_uniq.231\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.233\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.232\"},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.233\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.234\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.235\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.75\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.234\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.235\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.236\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.237\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.82\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.236\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.237\"}}}]}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Int\",\"List\",\"Nat\",\"OfNat\",\"Option\",\"PUnit\",\"Prod\",\"instDecidableEqBool\",\"instOfNatNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanCollections.Key\",\"LexLeanCollections.instKeyInt\",\"LexLeanCollections.lessThan\",\"LexLeanCollections.listFold\",\"List.cons\",\"List.nil\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"Unit.unit\",\"Models.Glyphs.Glyph\",\"Models.Recognizer.DigitNet.logits\"]},\"inductive\":null},{\"name\":\"Models.Recognizer.RawDigitModel\",\"kind\":\"definition\",\"module\":\"Models.Recognizer\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Models.Glyphs.Glyph\",\"Models.Recognizer.DigitNet\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Recognizer.DigitNet\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}},\"uses\":[\"Nat\",\"Models.Glyphs.Glyph\",\"Models.Recognizer.DigitNet\"]},\"inductive\":null},{\"name\":\"Models.Recognizer.hiddenBias\",\"kind\":\"definition\",\"module\":\"Models.Recognizer\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"instOfNat\",\"Int.instNegInt\",\"List.cons\",\"List.nil\",\"Neg.neg\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.1\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.2\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.1\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.3\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.2\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.4\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.5\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.4\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Neg\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instNegInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Neg\",\"index\":0,\"value\":\"_uniq.7\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.10\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.8\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.14\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"5\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.17\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.8\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.32\"}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Int\",\"List\",\"Nat\",\"Neg\",\"OfNat\",\"instOfNat\",\"Int.instNegInt\",\"List.cons\",\"List.nil\"]},\"inductive\":null},{\"name\":\"Models.Recognizer.hiddenWeights\",\"kind\":\"definition\",\"module\":\"Models.Recognizer\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"List\",\"instOfNat\",\"Int.instNegInt\",\"List.cons\",\"List.nil\",\"Neg.neg\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.1\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"4\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.2\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.1\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.3\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.2\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.4\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.5\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.4\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.43\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Neg\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instNegInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Neg\",\"index\":0,\"value\":\"_uniq.45\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.48\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.46\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.52\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.46\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.46\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.66\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"},{\"kind\":\"fvar\",\"id\":\"_uniq.68\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"},{\"kind\":\"fvar\",\"id\":\"_uniq.69\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.72\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.75\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.77\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.78\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.79\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.46\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.3\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.83\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.85\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.82\"},{\"kind\":\"fvar\",\"id\":\"_uniq.86\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.88\"},{\"kind\":\"fvar\",\"id\":\"_uniq.89\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"},{\"kind\":\"fvar\",\"id\":\"_uniq.90\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"},{\"kind\":\"fvar\",\"id\":\"_uniq.91\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.67\"},{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"},{\"kind\":\"fvar\",\"id\":\"_uniq.93\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.94\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.95\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.96\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.97\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.98\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.99\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.100\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.101\"}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Int\",\"List\",\"Nat\",\"Neg\",\"OfNat\",\"instOfNat\",\"Int.instNegInt\",\"List.cons\",\"List.nil\"]},\"inductive\":null},{\"name\":\"Models.Recognizer.outputBias\",\"kind\":\"definition\",\"module\":\"Models.Recognizer\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"instOfNat\",\"Int.instNegInt\",\"List.cons\",\"List.nil\",\"Neg.neg\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.1\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Neg\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instNegInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.2\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Neg\",\"index\":0,\"value\":\"_uniq.1\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.3\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"6\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.4\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.3\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.5\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.4\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.2\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.8\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.2\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"5\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.12\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.2\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"4\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.16\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.2\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.20\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.2\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"7\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.24\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.2\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.37\"}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Int\",\"List\",\"Nat\",\"Neg\",\"OfNat\",\"instOfNat\",\"Int.instNegInt\",\"List.cons\",\"List.nil\"]},\"inductive\":null},{\"name\":\"Models.Recognizer.outputWeights\",\"kind\":\"definition\",\"module\":\"Models.Recognizer\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"List\",\"instOfNat\",\"List.cons\",\"List.nil\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.1\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.2\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.1\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.3\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.2\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.4\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.5\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.4\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.52\"},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.66\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.68\"}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Int\",\"List\",\"Nat\",\"OfNat\",\"instOfNat\",\"List.cons\",\"List.nil\"]},\"inductive\":null},{\"name\":\"Models.Recognizer.recognizesCheck\",\"kind\":\"definition\",\"module\":\"Models.Recognizer\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Nat.beq\",\"Models.Glyphs.Glyph\",\"Models.Glyphs.digitOf\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.digitOf\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.13\"}}}},\"uses\":[\"Bool\",\"Nat\",\"Nat.beq\",\"Models.Glyphs.Glyph\",\"Models.Glyphs.digitOf\"]},\"inductive\":null},{\"name\":\"Models.Session.SessionModel\",\"kind\":\"definition\",\"module\":\"Models.Session\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Models.Session.SessionStep\",\"Models.Session.Window\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Session.SessionStep\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.12\"}}},\"uses\":[\"Nat\",\"Prod\",\"Models.Session.SessionStep\",\"Models.Session.Window\"]},\"inductive\":null},{\"name\":\"Models.Session.SessionStep\",\"kind\":\"definition\",\"module\":\"Models.Session\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"instSubNat\",\"HAdd.hAdd\",\"LexLeanRuntime.subtract\",\"OfNat.ofNat\",\"Prod.mk\",\"Models.Session.Window\",\"Models.Session.Window.items\",\"Models.Session.Window.mk\",\"Models.Session.Window.used\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.17\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Models.Session.Window\",\"index\":0,\"value\":\"_uniq.13\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.34\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.36\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"64\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.40\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Models.Session.Window\",\"index\":1,\"value\":\"_uniq.13\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.46\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.34\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.44\"},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Session.Window.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.43\"},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.50\"}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Add\",\"HAdd\",\"Nat\",\"OfNat\",\"Prod\",\"Sub\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"instSubNat\",\"LexLeanRuntime.subtract\",\"Prod.mk\",\"Models.Session.Window\",\"Models.Session.Window.mk\"]},\"inductive\":null},{\"name\":\"Models.Session.Window\",\"kind\":\"inductive\",\"module\":\"Models.Session\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Models.Session.Window.mk\",\"parameters\":0,\"fields\":2,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]}}}}]}},{\"name\":\"Models.Session.affordableCheck\",\"kind\":\"definition\",\"module\":\"Models.Session\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Nat.ble\",\"OfNat.ofNat\",\"Models.Session.Window\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"16\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.13\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.15\"}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"instOfNatNat\",\"Nat.ble\",\"Models.Session.Window\"]},\"inductive\":null},{\"name\":\"Models.Session.boundedCheck\",\"kind\":\"definition\",\"module\":\"Models.Session\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Nat.ble\",\"OfNat.ofNat\",\"Models.Session.Window\",\"Models.Session.Window.used\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Models.Session.Window\",\"index\":0,\"value\":\"_uniq.6\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"64\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.11\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.13\"}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"instOfNatNat\",\"Nat.ble\",\"Models.Session.Window\"]},\"inductive\":null},{\"name\":\"Models.Triage.Level\",\"kind\":\"inductive\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Models.Triage.Level.routine\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}},{\"name\":\"Models.Triage.Level.urgent\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}},{\"name\":\"Models.Triage.Level.emergency\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}}]}},{\"name\":\"Models.Triage.Presentation\",\"kind\":\"inductive\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Models.Triage.Presentation.p0\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]}},{\"name\":\"Models.Triage.Presentation.p1\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]}},{\"name\":\"Models.Triage.Presentation.p2\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]}},{\"name\":\"Models.Triage.Presentation.p3\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]}},{\"name\":\"Models.Triage.Presentation.p4\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]}},{\"name\":\"Models.Triage.Presentation.p5\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]}},{\"name\":\"Models.Triage.Presentation.p6\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]}},{\"name\":\"Models.Triage.Presentation.p7\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]}}]}},{\"name\":\"Models.Triage.TriageModel\",\"kind\":\"definition\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Models.Triage.Presentation\",\"Models.Triage.TriageScore\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Triage.TriageScore\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.6\"}}},\"uses\":[\"Models.Triage.Level\",\"Models.Triage.Presentation\",\"Models.Triage.TriageScore\"]},\"inductive\":null},{\"name\":\"Models.Triage.TriageScore\",\"kind\":\"definition\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Int\",\"List\",\"Option\",\"Prod\",\"Unit\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"LexLeanCollections.instKeyInt\",\"LexLeanCollections.lessThan\",\"LexLeanCollections.listFold\",\"List.cons\",\"List.nil\",\"Option.none\",\"Option.some\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"Models.Triage.Level\",\"Models.Triage.Presentation\",\"Models.Triage.Level.emergency\",\"Models.Triage.Level.routine\",\"Models.Triage.Level.urgent\",\"Models.Triage.TriageScore.match_1\",\"Models.Triage.TriageScore.match_3\",\"Models.Triage.TriageScore.scores\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.70\",\"parameters\":[{\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level.routine\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.69\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.70\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.76\",\"parameters\":[{\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.74\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.75\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.76\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.181\",\"parameters\":[{\"id\":\"_uniq.91\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]}]},\"borrow\":false},{\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.99\",\"parameters\":[{\"id\":\"_uniq.98\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.91\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.99\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.164\",\"parameters\":[{\"id\":\"_uniq.106\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.107\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.116\",\"parameters\":[{\"id\":\"_uniq.113\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.106\"},{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.115\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.116\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.141\",\"parameters\":[{\"id\":\"_uniq.121\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.130\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.instKeyInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.131\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.121\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.132\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.lessThan\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.130\"},{\"kind\":\"fvar\",\"id\":\"_uniq.131\"},{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.132\"},{\"kind\":\"fvar\",\"id\":\"_uniq.133\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.134\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.135\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.121\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.136\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.137\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.138\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.106\"},{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.139\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.138\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.139\"}}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.142\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.141\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.150\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.91\"},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.157\",\"parameters\":[{\"id\":\"_uniq.155\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.156\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.155\"},{\"kind\":\"fvar\",\"id\":\"_uniq.107\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.156\"}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.163\",\"parameters\":[{\"id\":\"_uniq.161\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.162\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.142\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.161\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.157\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.162\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.160\",\"parameters\":[{\"id\":\"_uniq.158\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.159\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.117\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.158\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.157\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.159\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.150\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.151\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.160\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.151\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.153\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.163\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.153\"}]}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.165\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.164\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.174\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.91\"},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.174\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.175\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.176\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.100\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.175\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.176\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.177\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.178\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.179\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.165\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.177\"},{\"kind\":\"fvar\",\"id\":\"_uniq.178\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.179\"}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.182\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.183\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level.routine\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.184\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level.urgent\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.185\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level.emergency\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.186\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.187\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.185\"},{\"kind\":\"fvar\",\"id\":\"_uniq.186\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.188\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.184\"},{\"kind\":\"fvar\",\"id\":\"_uniq.187\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.189\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.183\"},{\"kind\":\"fvar\",\"id\":\"_uniq.188\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.190\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.182\"},{\"kind\":\"fvar\",\"id\":\"_uniq.189\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.191\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Triage.TriageScore.scores\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.192\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.181\"},{\"kind\":\"fvar\",\"id\":\"_uniq.190\"},{\"kind\":\"fvar\",\"id\":\"_uniq.191\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.193\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.192\"},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},\"discriminant\":\"_uniq.193\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.194\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.195\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.71\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.194\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.195\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.196\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.197\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.77\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.196\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.197\"}}}]}}}}}}}}}}}}}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Int\",\"List\",\"Option\",\"PUnit\",\"Prod\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanCollections.Key\",\"LexLeanCollections.instKeyInt\",\"LexLeanCollections.lessThan\",\"LexLeanCollections.listFold\",\"List.cons\",\"List.nil\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"Unit.unit\",\"Models.Triage.Level\",\"Models.Triage.Presentation\",\"Models.Triage.Level.emergency\",\"Models.Triage.Level.routine\",\"Models.Triage.Level.urgent\",\"Models.Triage.TriageScore.scores\"]},\"inductive\":null},{\"name\":\"Models.Triage.features\",\"kind\":\"definition\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"List\",\"Unit\",\"instOfNat\",\"List.cons\",\"List.nil\",\"OfNat.ofNat\",\"Models.Triage.Presentation\",\"Models.Triage.features.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.78\",\"parameters\":[{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.72\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},{\"kind\":\"fvar\",\"id\":\"_uniq.75\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.77\"}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.78\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.92\",\"parameters\":[{\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.82\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.83\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.85\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.86\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"},{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"},{\"kind\":\"fvar\",\"id\":\"_uniq.89\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.90\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.91\"}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.92\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.106\",\"parameters\":[{\"id\":\"_uniq.95\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.96\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.97\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.99\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.100\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.98\"},{\"kind\":\"fvar\",\"id\":\"_uniq.102\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.101\"},{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.98\"},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.105\"}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.106\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.120\",\"parameters\":[{\"id\":\"_uniq.109\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.110\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.111\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.110\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.111\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.113\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.113\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.114\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.115\"},{\"kind\":\"fvar\",\"id\":\"_uniq.116\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.118\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.112\"},{\"kind\":\"fvar\",\"id\":\"_uniq.117\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.112\"},{\"kind\":\"fvar\",\"id\":\"_uniq.118\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.119\"}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.121\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.120\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.134\",\"parameters\":[{\"id\":\"_uniq.123\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.124\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.124\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.125\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.127\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.128\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.127\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.129\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.128\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.130\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.131\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.129\"},{\"kind\":\"fvar\",\"id\":\"_uniq.130\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.132\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.126\"},{\"kind\":\"fvar\",\"id\":\"_uniq.131\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.126\"},{\"kind\":\"fvar\",\"id\":\"_uniq.132\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.133\"}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.135\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.134\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.148\",\"parameters\":[{\"id\":\"_uniq.137\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.138\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.139\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.138\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.140\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.139\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.141\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.142\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.141\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.143\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.142\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.144\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.145\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.140\"},{\"kind\":\"fvar\",\"id\":\"_uniq.144\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.146\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.143\"},{\"kind\":\"fvar\",\"id\":\"_uniq.145\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.147\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.140\"},{\"kind\":\"fvar\",\"id\":\"_uniq.146\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.147\"}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.149\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.148\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.162\",\"parameters\":[{\"id\":\"_uniq.151\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.152\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.153\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.152\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.154\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.153\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.155\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.156\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.155\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.157\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.156\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.158\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.159\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.157\"},{\"kind\":\"fvar\",\"id\":\"_uniq.158\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.160\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.157\"},{\"kind\":\"fvar\",\"id\":\"_uniq.159\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.161\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.154\"},{\"kind\":\"fvar\",\"id\":\"_uniq.160\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.161\"}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.163\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.162\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.173\",\"parameters\":[{\"id\":\"_uniq.165\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.166\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.167\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.166\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.168\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.167\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.169\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.170\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.168\"},{\"kind\":\"fvar\",\"id\":\"_uniq.169\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.171\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.168\"},{\"kind\":\"fvar\",\"id\":\"_uniq.170\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.172\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.168\"},{\"kind\":\"fvar\",\"id\":\"_uniq.171\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.172\"}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.174\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.173\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Models.Triage.Presentation\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"discriminant\":\"_uniq.58\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Models.Triage.Presentation.p0\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.185\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.186\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.79\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.185\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.186\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Triage.Presentation.p1\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.187\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.188\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.93\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.187\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.188\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Triage.Presentation.p2\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.189\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.190\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.107\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.189\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.190\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Triage.Presentation.p3\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.191\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.192\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.121\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.191\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.192\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Triage.Presentation.p4\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.193\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.194\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.135\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.193\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.194\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Triage.Presentation.p5\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.195\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.196\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.149\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.195\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.196\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Triage.Presentation.p6\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.197\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.198\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.163\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.197\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.198\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Triage.Presentation.p7\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.199\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.200\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.174\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.199\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.200\"}}}}]}}}}}}}}}}}}}}}}}},\"uses\":[\"Int\",\"List\",\"Nat\",\"OfNat\",\"PUnit\",\"instOfNat\",\"List.cons\",\"List.nil\",\"Unit.unit\",\"Models.Triage.Presentation\",\"Models.Triage.Presentation.p0\",\"Models.Triage.Presentation.p1\",\"Models.Triage.Presentation.p2\",\"Models.Triage.Presentation.p3\",\"Models.Triage.Presentation.p4\",\"Models.Triage.Presentation.p5\",\"Models.Triage.Presentation.p6\",\"Models.Triage.Presentation.p7\"]},\"inductive\":null},{\"name\":\"Models.Triage.hasSymptom\",\"kind\":\"definition\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Unit\",\"Bool.false\",\"Bool.true\",\"Models.Triage.Presentation\",\"Models.Triage.features.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.60\",\"parameters\":[{\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.59\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.60\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.65\",\"parameters\":[{\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.64\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Models.Triage.Presentation\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.46\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Models.Triage.Presentation.p0\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.61\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.89\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.90\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Triage.Presentation.p1\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.66\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.91\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.92\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Triage.Presentation.p2\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.68\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.93\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.94\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Triage.Presentation.p3\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.70\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.95\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.96\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Triage.Presentation.p4\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.72\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.97\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.98\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Triage.Presentation.p5\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.74\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.99\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.100\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Triage.Presentation.p6\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.76\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.101\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.102\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Triage.Presentation.p7\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.78\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.104\"}}}}]}}}}}}}}}}}},\"uses\":[\"Bool\",\"PUnit\",\"Bool.false\",\"Bool.true\",\"Unit.unit\",\"Models.Triage.Presentation\",\"Models.Triage.Presentation.p0\",\"Models.Triage.Presentation.p1\",\"Models.Triage.Presentation.p2\",\"Models.Triage.Presentation.p3\",\"Models.Triage.Presentation.p4\",\"Models.Triage.Presentation.p5\",\"Models.Triage.Presentation.p6\",\"Models.Triage.Presentation.p7\"]},\"inductive\":null},{\"name\":\"Models.Triage.isEmergency\",\"kind\":\"definition\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Unit\",\"Bool.false\",\"Bool.true\",\"Models.Triage.Level\",\"Models.Triage.isEmergency.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Level\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.35\",\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.34\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.35\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.35\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.42\",\"parameters\":[{\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.41\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.42\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Models.Triage.Level\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.26\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Models.Triage.Level.routine\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.36\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.50\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Triage.Level.urgent\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.38\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.52\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Models.Triage.Level.emergency\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.43\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.54\"}}}}]}}}}}}},\"uses\":[\"Bool\",\"PUnit\",\"Bool.false\",\"Bool.true\",\"Unit.unit\",\"Models.Triage.Level\",\"Models.Triage.Level.emergency\",\"Models.Triage.Level.routine\",\"Models.Triage.Level.urgent\"]},\"inductive\":null},{\"name\":\"Models.Triage.symptomaticCheck\",\"kind\":\"definition\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Models.Triage.Presentation\",\"Models.Triage.hasSymptom\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Triage.hasSymptom\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}},\"uses\":[\"Bool\",\"Models.Triage.Presentation\",\"Models.Triage.hasSymptom\"]},\"inductive\":null},{\"name\":\"Models.Triage.triageBias\",\"kind\":\"definition\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"instOfNat\",\"Int.instNegInt\",\"List.cons\",\"List.nil\",\"Neg.neg\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.1\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.2\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.1\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.3\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.2\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.4\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.5\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.4\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Neg\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instNegInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Neg\",\"index\":0,\"value\":\"_uniq.7\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.8\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.3\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.13\"}}}}}}}}}}}}}}},\"uses\":[\"Int\",\"List\",\"Nat\",\"Neg\",\"OfNat\",\"instOfNat\",\"Int.instNegInt\",\"List.cons\",\"List.nil\"]},\"inductive\":null},{\"name\":\"Models.Triage.triageWeights\",\"kind\":\"definition\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"List\",\"instOfNat\",\"Int.instNegInt\",\"List.cons\",\"List.nil\",\"Neg.neg\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.1\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Neg\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instNegInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.2\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Neg\",\"index\":0,\"value\":\"_uniq.1\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.3\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.4\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.3\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.5\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.4\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.2\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"4\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.8\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.2\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.16\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.5\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.5\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"5\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.25\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.33\"}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Int\",\"List\",\"Nat\",\"Neg\",\"OfNat\",\"instOfNat\",\"Int.instNegInt\",\"List.cons\",\"List.nil\"]},\"inductive\":null},{\"name\":\"Models.Glyphs.Glyph.casesOn\",\"kind\":\"definition\",\"module\":\"Models.Glyphs\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Models.Glyphs.Glyph\",\"Models.Glyphs.Glyph.g0\",\"Models.Glyphs.Glyph.g1\",\"Models.Glyphs.Glyph.g2\",\"Models.Glyphs.Glyph.g3\",\"Models.Glyphs.Glyph.g4\",\"Models.Glyphs.Glyph.g5\",\"Models.Glyphs.Glyph.g6\",\"Models.Glyphs.Glyph.g7\",\"Models.Glyphs.Glyph.g8\",\"Models.Glyphs.Glyph.g9\",\"Models.Glyphs.Glyph.rec\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Glyphs.Glyph.g0\",\"kind\":\"constructor\",\"module\":\"Models.Glyphs\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Glyphs.Glyph.g1\",\"kind\":\"constructor\",\"module\":\"Models.Glyphs\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Glyphs.Glyph.g2\",\"kind\":\"constructor\",\"module\":\"Models.Glyphs\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Glyphs.Glyph.g3\",\"kind\":\"constructor\",\"module\":\"Models.Glyphs\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Glyphs.Glyph.g4\",\"kind\":\"constructor\",\"module\":\"Models.Glyphs\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Glyphs.Glyph.g5\",\"kind\":\"constructor\",\"module\":\"Models.Glyphs\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Glyphs.Glyph.g6\",\"kind\":\"constructor\",\"module\":\"Models.Glyphs\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Glyphs.Glyph.g7\",\"kind\":\"constructor\",\"module\":\"Models.Glyphs\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Glyphs.Glyph.g8\",\"kind\":\"constructor\",\"module\":\"Models.Glyphs\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Glyphs.Glyph.g9\",\"kind\":\"constructor\",\"module\":\"Models.Glyphs\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Glyphs.Glyph.rec\",\"kind\":\"recursor\",\"module\":\"Models.Glyphs\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"recursor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Glyphs.encode.match_1\",\"kind\":\"definition\",\"module\":\"Models.Glyphs\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Unit\",\"Unit.unit\",\"Models.Glyphs.Glyph\",\"Models.Glyphs.Glyph.casesOn\",\"Models.Glyphs.Glyph.g0\",\"Models.Glyphs.Glyph.g1\",\"Models.Glyphs.Glyph.g2\",\"Models.Glyphs.Glyph.g3\",\"Models.Glyphs.Glyph.g4\",\"Models.Glyphs.Glyph.g5\",\"Models.Glyphs.Glyph.g6\",\"Models.Glyphs.Glyph.g7\",\"Models.Glyphs.Glyph.g8\",\"Models.Glyphs.Glyph.g9\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Pipeline.SessionStream.match_1\",\"kind\":\"definition\",\"module\":\"Models.Pipeline\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"List\",\"Nat\",\"Prod\",\"Except.casesOn\",\"Except.error\",\"Except.ok\",\"Models.Session.Window\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Policy.isUrgent.match_1\",\"kind\":\"definition\",\"module\":\"Models.Policy\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Unit\",\"Unit.unit\",\"Models.Triage.Level\",\"Models.Triage.Level.casesOn\",\"Models.Triage.Level.emergency\",\"Models.Triage.Level.routine\",\"Models.Triage.Level.urgent\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Recognizer.DigitNet.encoded\",\"kind\":\"definition\",\"module\":\"Models.Recognizer\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Models.Glyphs.Glyph\",\"Models.Glyphs.encode\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.encode\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}},\"uses\":[\"Int\",\"List\",\"Models.Glyphs.Glyph\",\"Models.Glyphs.encode\"]},\"inductive\":null},{\"name\":\"Models.Recognizer.DigitNet.layer1\",\"kind\":\"definition\",\"module\":\"Models.Recognizer\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"List\",\"Prod\",\"Unit\",\"instOfNat\",\"Int.instMul\",\"Int.instNegInt\",\"Int.instSub\",\"LexLeanCollections.listFold\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"LexLeanRuntime.multiply\",\"LexLeanRuntime.negate\",\"LexLeanRuntime.subtract\",\"List.cons\",\"List.nil\",\"OfNat.ofNat\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"Models.Recognizer.hiddenBias\",\"Models.Recognizer.hiddenWeights\",\"Models.Recognizer.DigitNet.layer1.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.156\",\"parameters\":[{\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"borrow\":false},{\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.65\",\"parameters\":[{\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.139\",\"parameters\":[{\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.57\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instSub\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Neg\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instNegInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.126\",\"parameters\":[{\"id\":\"_uniq.85\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"borrow\":false},{\"id\":\"_uniq.86\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.93\",\"parameters\":[{\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.85\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.93\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.109\",\"parameters\":[{\"id\":\"_uniq.101\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.102\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.85\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Mul\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instMul\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.multiply\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"},{\"kind\":\"fvar\",\"id\":\"_uniq.86\"},{\"kind\":\"fvar\",\"id\":\"_uniq.101\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.negate\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.78\"},{\"kind\":\"fvar\",\"id\":\"_uniq.105\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.77\"},{\"kind\":\"fvar\",\"id\":\"_uniq.103\"},{\"kind\":\"fvar\",\"id\":\"_uniq.106\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.107\"},{\"kind\":\"fvar\",\"id\":\"_uniq.102\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.108\"}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.110\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.109\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.85\"},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.119\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.120\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.121\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.94\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.120\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.121\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.122\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.123\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.124\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.110\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.122\"},{\"kind\":\"fvar\",\"id\":\"_uniq.123\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.124\"}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.127\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.128\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.127\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.129\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.128\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.130\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.129\"},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.131\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.126\"},{\"kind\":\"fvar\",\"id\":\"_uniq.130\"},{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.132\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.131\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.negate\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.78\"},{\"kind\":\"fvar\",\"id\":\"_uniq.132\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.77\"},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},{\"kind\":\"fvar\",\"id\":\"_uniq.133\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.135\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.134\"},{\"kind\":\"fvar\",\"id\":\"_uniq.135\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.137\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"},{\"kind\":\"fvar\",\"id\":\"_uniq.136\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.138\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.137\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.138\"}}}}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.140\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.139\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.149\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.57\"},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.149\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.150\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.151\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.66\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.150\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.151\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.152\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.153\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.154\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.140\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.152\"},{\"kind\":\"fvar\",\"id\":\"_uniq.153\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.154\"}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.157\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.158\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Recognizer.hiddenBias\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.159\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.157\"},{\"kind\":\"fvar\",\"id\":\"_uniq.158\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.160\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Recognizer.hiddenWeights\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.161\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.156\"},{\"kind\":\"fvar\",\"id\":\"_uniq.159\"},{\"kind\":\"fvar\",\"id\":\"_uniq.160\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.162\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.161\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.162\"}}}}}}}}},\"uses\":[\"Int\",\"List\",\"Mul\",\"Nat\",\"Neg\",\"OfNat\",\"PUnit\",\"Prod\",\"Sub\",\"instOfNat\",\"Int.instMul\",\"Int.instNegInt\",\"Int.instSub\",\"LexLeanCollections.listFold\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"LexLeanRuntime.multiply\",\"LexLeanRuntime.negate\",\"LexLeanRuntime.subtract\",\"List.cons\",\"List.nil\",\"Prod.mk\",\"Unit.unit\",\"Models.Recognizer.hiddenBias\",\"Models.Recognizer.hiddenWeights\"]},\"inductive\":null},{\"name\":\"Models.Recognizer.DigitNet.layer2\",\"kind\":\"definition\",\"module\":\"Models.Recognizer\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Int\",\"List\",\"instDecidableEqBool\",\"instOfNat\",\"ite\",\"Bool.true\",\"LexLeanCollections.instKeyInt\",\"LexLeanCollections.lessThan\",\"LexLeanCollections.listFold\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"List.cons\",\"List.nil\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.39\",\"parameters\":[{\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.instKeyInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.27\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.lessThan\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.38\",\"parameters\":[{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.37\"}}}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"discriminant\":\"_uniq.31\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.38\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.38\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]}}]}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},{\"kind\":\"fvar\",\"id\":\"_uniq.40\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.41\"}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Int\",\"List\",\"Nat\",\"OfNat\",\"instDecidableEqBool\",\"instOfNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanCollections.Key\",\"LexLeanCollections.instKeyInt\",\"LexLeanCollections.lessThan\",\"LexLeanCollections.listFold\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"List.cons\",\"List.nil\"]},\"inductive\":null},{\"name\":\"Models.Recognizer.DigitNet.layer3\",\"kind\":\"definition\",\"module\":\"Models.Recognizer\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Int\",\"List\",\"instDecidableEqBool\",\"instOfNat\",\"ite\",\"Bool.true\",\"LexLeanCollections.instKeyInt\",\"LexLeanCollections.lessThan\",\"LexLeanCollections.listFold\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"LexLeanRuntime.instQuotientInt\",\"LexLeanRuntime.quotient\",\"List.cons\",\"List.nil\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.66\",\"parameters\":[{\"id\":\"_uniq.18\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instQuotientInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"4\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.24\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.27\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.quotient\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.29\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.instKeyInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.lessThan\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.65\",\"parameters\":[{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.64\"}}}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"discriminant\":\"_uniq.42\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.43\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"127\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.53\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.lessThan\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"discriminant\":\"_uniq.56\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.57\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.65\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.58\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.65\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]}}]}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.65\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]}}]}}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.66\"},{\"kind\":\"fvar\",\"id\":\"_uniq.67\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.68\"}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Int\",\"List\",\"Nat\",\"OfNat\",\"instDecidableEqBool\",\"instOfNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanCollections.Key\",\"LexLeanCollections.instKeyInt\",\"LexLeanCollections.lessThan\",\"LexLeanCollections.listFold\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.Quotient\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"LexLeanRuntime.instQuotientInt\",\"LexLeanRuntime.quotient\",\"List.cons\",\"List.nil\"]},\"inductive\":null},{\"name\":\"Models.Recognizer.DigitNet.layer4\",\"kind\":\"definition\",\"module\":\"Models.Recognizer\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"List\",\"Prod\",\"Unit\",\"instOfNat\",\"Int.instMul\",\"Int.instNegInt\",\"Int.instSub\",\"LexLeanCollections.listFold\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"LexLeanRuntime.multiply\",\"LexLeanRuntime.negate\",\"LexLeanRuntime.subtract\",\"List.cons\",\"List.nil\",\"OfNat.ofNat\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"Models.Recognizer.outputBias\",\"Models.Recognizer.outputWeights\",\"Models.Recognizer.DigitNet.layer1.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.156\",\"parameters\":[{\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"borrow\":false},{\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.65\",\"parameters\":[{\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.139\",\"parameters\":[{\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.57\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instSub\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Neg\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instNegInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.126\",\"parameters\":[{\"id\":\"_uniq.85\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"borrow\":false},{\"id\":\"_uniq.86\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.93\",\"parameters\":[{\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.85\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.93\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.109\",\"parameters\":[{\"id\":\"_uniq.101\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.102\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.85\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Mul\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instMul\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.multiply\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"},{\"kind\":\"fvar\",\"id\":\"_uniq.86\"},{\"kind\":\"fvar\",\"id\":\"_uniq.101\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.negate\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.78\"},{\"kind\":\"fvar\",\"id\":\"_uniq.105\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.77\"},{\"kind\":\"fvar\",\"id\":\"_uniq.103\"},{\"kind\":\"fvar\",\"id\":\"_uniq.106\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.107\"},{\"kind\":\"fvar\",\"id\":\"_uniq.102\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.108\"}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.110\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.109\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.85\"},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.119\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.120\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.121\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.94\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.120\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.121\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.122\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.123\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.124\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.110\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.122\"},{\"kind\":\"fvar\",\"id\":\"_uniq.123\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.124\"}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.127\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.128\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.127\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.129\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.128\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.130\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.129\"},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.131\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.126\"},{\"kind\":\"fvar\",\"id\":\"_uniq.130\"},{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.132\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.131\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.negate\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.78\"},{\"kind\":\"fvar\",\"id\":\"_uniq.132\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.77\"},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},{\"kind\":\"fvar\",\"id\":\"_uniq.133\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.135\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.134\"},{\"kind\":\"fvar\",\"id\":\"_uniq.135\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.137\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"},{\"kind\":\"fvar\",\"id\":\"_uniq.136\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.138\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.137\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.138\"}}}}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.140\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.139\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.149\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.57\"},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.149\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.150\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.151\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.66\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.150\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.151\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.152\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.153\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.154\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.140\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.152\"},{\"kind\":\"fvar\",\"id\":\"_uniq.153\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.154\"}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.157\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.158\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Recognizer.outputBias\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.159\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.157\"},{\"kind\":\"fvar\",\"id\":\"_uniq.158\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.160\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Recognizer.outputWeights\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.161\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.156\"},{\"kind\":\"fvar\",\"id\":\"_uniq.159\"},{\"kind\":\"fvar\",\"id\":\"_uniq.160\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.162\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.161\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.162\"}}}}}}}}},\"uses\":[\"Int\",\"List\",\"Mul\",\"Nat\",\"Neg\",\"OfNat\",\"PUnit\",\"Prod\",\"Sub\",\"instOfNat\",\"Int.instMul\",\"Int.instNegInt\",\"Int.instSub\",\"LexLeanCollections.listFold\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"LexLeanRuntime.multiply\",\"LexLeanRuntime.negate\",\"LexLeanRuntime.subtract\",\"List.cons\",\"List.nil\",\"Prod.mk\",\"Unit.unit\",\"Models.Recognizer.outputBias\",\"Models.Recognizer.outputWeights\"]},\"inductive\":null},{\"name\":\"Models.Recognizer.DigitNet.logits\",\"kind\":\"definition\",\"module\":\"Models.Recognizer\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Models.Glyphs.Glyph\",\"Models.Recognizer.DigitNet.encoded\",\"Models.Recognizer.DigitNet.layer1\",\"Models.Recognizer.DigitNet.layer2\",\"Models.Recognizer.DigitNet.layer3\",\"Models.Recognizer.DigitNet.layer4\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Glyphs.Glyph\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Recognizer.DigitNet.encoded\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Recognizer.DigitNet.layer1\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Recognizer.DigitNet.layer2\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Recognizer.DigitNet.layer3\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Recognizer.DigitNet.layer4\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.11\"}}}}}}},\"uses\":[\"Int\",\"List\",\"Models.Glyphs.Glyph\",\"Models.Recognizer.DigitNet.encoded\",\"Models.Recognizer.DigitNet.layer1\",\"Models.Recognizer.DigitNet.layer2\",\"Models.Recognizer.DigitNet.layer3\",\"Models.Recognizer.DigitNet.layer4\"]},\"inductive\":null},{\"name\":\"Models.Recognizer.DigitNet.match_1\",\"kind\":\"definition\",\"module\":\"Models.Recognizer\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Recognizer.DigitNet.match_3\",\"kind\":\"definition\",\"module\":\"Models.Recognizer\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Unit\",\"List.casesOn\",\"List.cons\",\"List.nil\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Session.SessionModel.initial\",\"kind\":\"definition\",\"module\":\"Models.Session\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Models.Session.SessionStep.initial\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.1\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Session.SessionStep.initial\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.1\"}}},\"uses\":[\"Models.Session.Window\",\"Models.Session.SessionStep.initial\"]},\"inductive\":null},{\"name\":\"Models.Session.SessionStep.initial\",\"kind\":\"definition\",\"module\":\"Models.Session\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"OfNat.ofNat\",\"Models.Session.Window.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.1\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.2\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.1\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.3\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.2\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.4\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Session.Window\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Session.Window.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.4\"}}}}}},\"uses\":[\"Nat\",\"OfNat\",\"instOfNatNat\",\"Models.Session.Window\",\"Models.Session.Window.mk\"]},\"inductive\":null},{\"name\":\"Models.Session.Window.items\",\"kind\":\"definition\",\"module\":\"Models.Session\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Models.Session.Window\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Session.Window.mk\",\"kind\":\"constructor\",\"module\":\"Models.Session\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Session.Window.used\",\"kind\":\"definition\",\"module\":\"Models.Session\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Models.Session.Window\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Triage.Level.casesOn\",\"kind\":\"definition\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Models.Triage.Level\",\"Models.Triage.Level.emergency\",\"Models.Triage.Level.rec\",\"Models.Triage.Level.routine\",\"Models.Triage.Level.urgent\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Triage.Level.emergency\",\"kind\":\"constructor\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Triage.Level.rec\",\"kind\":\"recursor\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"recursor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Triage.Level.routine\",\"kind\":\"constructor\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Triage.Level.urgent\",\"kind\":\"constructor\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Triage.Presentation.casesOn\",\"kind\":\"definition\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Models.Triage.Presentation\",\"Models.Triage.Presentation.p0\",\"Models.Triage.Presentation.p1\",\"Models.Triage.Presentation.p2\",\"Models.Triage.Presentation.p3\",\"Models.Triage.Presentation.p4\",\"Models.Triage.Presentation.p5\",\"Models.Triage.Presentation.p6\",\"Models.Triage.Presentation.p7\",\"Models.Triage.Presentation.rec\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Triage.Presentation.p0\",\"kind\":\"constructor\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Triage.Presentation.p1\",\"kind\":\"constructor\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Triage.Presentation.p2\",\"kind\":\"constructor\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Triage.Presentation.p3\",\"kind\":\"constructor\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Triage.Presentation.p4\",\"kind\":\"constructor\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Triage.Presentation.p5\",\"kind\":\"constructor\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Triage.Presentation.p6\",\"kind\":\"constructor\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Triage.Presentation.p7\",\"kind\":\"constructor\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Triage.Presentation.rec\",\"kind\":\"recursor\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"recursor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Triage.TriageScore.features\",\"kind\":\"definition\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Models.Triage.Presentation\",\"Models.Triage.features\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Triage.features\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}},\"uses\":[\"Int\",\"List\",\"Models.Triage.Presentation\",\"Models.Triage.features\"]},\"inductive\":null},{\"name\":\"Models.Triage.TriageScore.match_1\",\"kind\":\"definition\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"Option\",\"Prod\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Models.Triage.Level\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Triage.TriageScore.match_3\",\"kind\":\"definition\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Unit\",\"List.casesOn\",\"List.cons\",\"List.nil\",\"Unit.unit\",\"Models.Triage.Level\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Triage.TriageScore.scores\",\"kind\":\"definition\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"List\",\"Prod\",\"Unit\",\"instOfNat\",\"Int.instMul\",\"Int.instNegInt\",\"Int.instSub\",\"LexLeanCollections.listFold\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"LexLeanRuntime.multiply\",\"LexLeanRuntime.negate\",\"LexLeanRuntime.subtract\",\"List.cons\",\"List.nil\",\"OfNat.ofNat\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"Models.Triage.Presentation\",\"Models.Triage.triageBias\",\"Models.Triage.triageWeights\",\"Models.Triage.TriageScore.features\",\"Models.Triage.TriageScore.scores.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Models.Triage.Presentation\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Triage.TriageScore.features\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.55\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.162\",\"parameters\":[{\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"borrow\":false},{\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.71\",\"parameters\":[{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.63\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.71\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.145\",\"parameters\":[{\"id\":\"_uniq.79\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.80\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.63\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instSub\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Neg\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instNegInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.132\",\"parameters\":[{\"id\":\"_uniq.91\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"borrow\":false},{\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.99\",\"parameters\":[{\"id\":\"_uniq.98\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.91\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.99\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.115\",\"parameters\":[{\"id\":\"_uniq.107\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.108\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.91\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.110\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Mul\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instMul\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.111\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.multiply\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.110\"},{\"kind\":\"fvar\",\"id\":\"_uniq.92\"},{\"kind\":\"fvar\",\"id\":\"_uniq.107\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.negate\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.111\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.113\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.109\"},{\"kind\":\"fvar\",\"id\":\"_uniq.112\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.113\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.114\"}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.115\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.91\"},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.125\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.127\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.100\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.126\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.127\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.128\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.129\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.130\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.116\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.128\"},{\"kind\":\"fvar\",\"id\":\"_uniq.129\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.130\"}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.133\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.135\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.134\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.135\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.137\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.132\"},{\"kind\":\"fvar\",\"id\":\"_uniq.136\"},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.138\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.137\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.139\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.negate\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.138\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.140\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.79\"},{\"kind\":\"fvar\",\"id\":\"_uniq.139\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.141\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.142\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.140\"},{\"kind\":\"fvar\",\"id\":\"_uniq.141\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.143\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"},{\"kind\":\"fvar\",\"id\":\"_uniq.82\"},{\"kind\":\"fvar\",\"id\":\"_uniq.142\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.144\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.143\"},{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.144\"}}}}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.146\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.145\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.155\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.63\"},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.155\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.156\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.157\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.72\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.156\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.157\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.158\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.159\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.160\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.146\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.158\"},{\"kind\":\"fvar\",\"id\":\"_uniq.159\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.160\"}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.163\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.164\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Triage.triageBias\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.165\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.163\"},{\"kind\":\"fvar\",\"id\":\"_uniq.164\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.166\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Models.Triage.triageWeights\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.167\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.162\"},{\"kind\":\"fvar\",\"id\":\"_uniq.165\"},{\"kind\":\"fvar\",\"id\":\"_uniq.166\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.168\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.167\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.168\"}}}}}}}}}}},\"uses\":[\"Int\",\"List\",\"Mul\",\"Nat\",\"Neg\",\"OfNat\",\"PUnit\",\"Prod\",\"Sub\",\"instOfNat\",\"Int.instMul\",\"Int.instNegInt\",\"Int.instSub\",\"LexLeanCollections.listFold\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"LexLeanRuntime.multiply\",\"LexLeanRuntime.negate\",\"LexLeanRuntime.subtract\",\"List.cons\",\"List.nil\",\"Prod.mk\",\"Unit.unit\",\"Models.Triage.Presentation\",\"Models.Triage.triageBias\",\"Models.Triage.triageWeights\",\"Models.Triage.TriageScore.features\"]},\"inductive\":null},{\"name\":\"Models.Triage.features.match_1\",\"kind\":\"definition\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Unit\",\"Unit.unit\",\"Models.Triage.Presentation\",\"Models.Triage.Presentation.casesOn\",\"Models.Triage.Presentation.p0\",\"Models.Triage.Presentation.p1\",\"Models.Triage.Presentation.p2\",\"Models.Triage.Presentation.p3\",\"Models.Triage.Presentation.p4\",\"Models.Triage.Presentation.p5\",\"Models.Triage.Presentation.p6\",\"Models.Triage.Presentation.p7\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Triage.isEmergency.match_1\",\"kind\":\"definition\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Unit\",\"Unit.unit\",\"Models.Triage.Level\",\"Models.Triage.Level.casesOn\",\"Models.Triage.Level.emergency\",\"Models.Triage.Level.routine\",\"Models.Triage.Level.urgent\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Recognizer.DigitNet.layer1.match_1\",\"kind\":\"definition\",\"module\":\"Models.Recognizer\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"List\",\"Unit\",\"List.casesOn\",\"List.cons\",\"List.nil\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Models.Triage.TriageScore.scores.match_1\",\"kind\":\"definition\",\"module\":\"Models.Triage\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"List\",\"Unit\",\"List.casesOn\",\"List.cons\",\"List.nil\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null}],\"externals\":[{\"name\":\"Add\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"BEq\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Bool\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Decidable\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Except\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"HAdd\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"HMul\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"HSub\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Int\",\"kind\":\"inductive\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"List\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Mul\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Nat\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Neg\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"OfNat\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Option\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Ord\",\"kind\":\"inductive\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Ordering\",\"kind\":\"inductive\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"PUnit\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Prod\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Sub\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"instAddNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instBEqOfDecidableEq\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instDecidableEqBool\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instHAdd\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instHMul\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instHSub\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instOfNat\",\"kind\":\"definition\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instOfNatNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instOrdInt\",\"kind\":\"definition\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instSubNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Bool.false\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Bool\"},{\"name\":\"Bool.true\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Bool\"},{\"name\":\"Decidable.isFalse\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Decidable\"},{\"name\":\"Decidable.isTrue\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Decidable\"},{\"name\":\"Except.error\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Except\"},{\"name\":\"Except.ok\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Except\"},{\"name\":\"Int.instDecidableEq\",\"kind\":\"definition\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int.instMul\",\"kind\":\"definition\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int.instNegInt\",\"kind\":\"definition\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int.instSub\",\"kind\":\"definition\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int.tdiv\",\"kind\":\"definition\",\"module\":\"Init.Data.Int.DivMod.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int.tmod\",\"kind\":\"definition\",\"module\":\"Init.Data.Int.DivMod.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"List.appendTR\",\"kind\":\"definition\",\"module\":\"Init.Data.List.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"List.cons\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"List\"},{\"name\":\"List.foldl\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"List.lengthTR\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"List.nil\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"List\"},{\"name\":\"Nat.beq\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.ble\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.blt\",\"kind\":\"definition\",\"module\":\"Init.Data.Nat.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Option.none\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Option\"},{\"name\":\"Option.some\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Option\"},{\"name\":\"Ordering.lt\",\"kind\":\"constructor\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Ordering\"},{\"name\":\"Prod.mk\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Prod\"},{\"name\":\"Unit.unit\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true}]}\n","stdout_sha256":"000ff34b595f013704d31b540b616943f07c5152f042e08d8eaa26fb72622de7","tool":"lean"} diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R0.lean b/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R0.lean deleted file mode 100644 index 620b3b2cf..000000000 --- a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R0.lean +++ /dev/null @@ -1,228 +0,0 @@ -import LexLeanPreservation.Core -import LexLeanPreservation.Values -import LexLeanPreservation.Primitives -import LexLeanPreservation.Fixed -import LexLeanPreservation.Keys -import LexLeanPreservation.Templates -import LexLeanPreservation.Validate -import Models.Flows -import Models.Glyphs -import Models.Ledger -import Models.Main -import Models.Pipeline -import Models.Policy -import Models.Recognizer -import Models.Session -import Models.Triage -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -set_option linter.unusedVariables false -namespace LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0 - -def __prog : _root_.LexLeanTarget.TargetSyntax.Program := - { adts := [{ constructors := [[], [], [], [], [], [], [], [], [], []] }], functions := [ - { parameters := [0], types := [(.adt 0)], result := .nat, - body := (.call 1 [(.var 0)]) }, - { parameters := [0], types := [(.adt 0)], result := .nat, - body := (.call 2 [(.var 0)]) }, - { parameters := [0], types := [(.adt 0)], result := .nat, - body := (.«match» .nat (.first (.call 3 [(.closure 4 []), (.build .pair (.pair (.option (.pair .nat .int)) (.list .nat)) [(.build .none (.option (.pair .nat .int)) []), (.build .cons (.list .nat) [(.value .nat (.nat 0)), (.build .cons (.list .nat) [(.value .nat (.nat 1)), (.build .cons (.list .nat) [(.value .nat (.nat 2)), (.build .cons (.list .nat) [(.value .nat (.nat 3)), (.build .cons (.list .nat) [(.value .nat (.nat 4)), (.build .cons (.list .nat) [(.value .nat (.nat 5)), (.build .cons (.list .nat) [(.value .nat (.nat 6)), (.build .cons (.list .nat) [(.value .nat (.nat 7)), (.build .cons (.list .nat) [(.value .nat (.nat 8)), (.build .cons (.list .nat) [(.value .nat (.nat 9)), (.build .nil (.list .nat) [])])])])])])])])])])])]), (.call 5 [(.var 0)])])) [(.arm .none [] (.value .nat (.nat 0))), (.arm .some [1] (.first (.var 1)))]) }, - { parameters := [0, 1, 2], types := [(.fn [(.pair (.option (.pair .nat .int)) (.list .nat)), .int] (.pair (.option (.pair .nat .int)) (.list .nat))), (.pair (.option (.pair .nat .int)) (.list .nat)), (.list .int)], result := (.pair (.option (.pair .nat .int)) (.list .nat)), - body := (.«match» (.pair (.option (.pair .nat .int)) (.list .nat)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 3 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, - { parameters := [0, 1], types := [(.pair (.option (.pair .nat .int)) (.list .nat)), .int], result := (.pair (.option (.pair .nat .int)) (.list .nat)), - body := (.«match» (.pair (.option (.pair .nat .int)) (.list .nat)) (.second (.var 0)) [(.arm .nil [] (.var 0)), (.arm .cons [2, 3] (.build .pair (.pair (.option (.pair .nat .int)) (.list .nat)) [(.«match» (.option (.pair .nat .int)) (.first (.var 0)) [(.arm .none [] (.build .some (.option (.pair .nat .int)) [(.build .pair (.pair .nat .int) [(.var 2), (.var 1)])])), (.arm .some [4] (.cond (.«match» .bool (.prim .compare [(.second (.var 4)), (.var 1)]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.build .some (.option (.pair .nat .int)) [(.build .pair (.pair .nat .int) [(.var 2), (.var 1)])]) (.build .some (.option (.pair .nat .int)) [(.var 4)])))]), (.var 3)]))]) }, - { parameters := [0], types := [(.adt 0)], result := (.list .int), - body := (.call 6 [(.call 7 [(.call 8 [(.call 9 [(.call 10 [(.var 0)])])])])]) }, - { parameters := [0], types := [(.list .int)], result := (.list .int), - body := (.first (.call 11 [(.closure 12 [(.var 0)]), (.build .pair (.pair (.list .int) (.list .int)) [(.build .nil (.list .int) []), (.call 13 [])]), (.call 14 [])])) }, - { parameters := [0], types := [(.list .int)], result := (.list .int), - body := (.call 15 [(.closure 16 []), (.build .nil (.list .int) []), (.var 0)]) }, - { parameters := [0], types := [(.list .int)], result := (.list .int), - body := (.call 15 [(.closure 17 []), (.build .nil (.list .int) []), (.var 0)]) }, - { parameters := [0], types := [(.list .int)], result := (.list .int), - body := (.first (.call 11 [(.closure 18 [(.var 0)]), (.build .pair (.pair (.list .int) (.list .int)) [(.build .nil (.list .int) []), (.call 19 [])]), (.call 20 [])])) }, - { parameters := [0], types := [(.adt 0)], result := (.list .int), - body := (.call 21 [(.var 0)]) }, - { parameters := [0, 1, 2], types := [(.fn [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int))), (.pair (.list .int) (.list .int)), (.list (.list .int))], result := (.pair (.list .int) (.list .int)), - body := (.«match» (.pair (.list .int) (.list .int)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 11 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, - { parameters := [0, 1, 2], types := [(.list .int), (.pair (.list .int) (.list .int)), (.list .int)], result := (.pair (.list .int) (.list .int)), - body := (.«match» (.pair (.list .int) (.list .int)) (.second (.var 1)) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.build .pair (.pair (.list .int) (.list .int)) [(.prim .append [(.first (.var 1)), (.build .cons (.list .int) [(.prim .intSub [(.var 3), (.prim .intNeg [(.first (.call 22 [(.closure 23 []), (.build .pair (.pair .int (.list .int)) [(.value .int (.int 0)), (.var 0)]), (.var 2)]))])]), (.build .nil (.list .int) [])])]), (.var 4)]))]) }, - { parameters := [], types := [], result := (.list .int), - body := (.build .cons (.list .int) [(.value .int (.int (-6))), (.build .cons (.list .int) [(.value .int (.int (-2))), (.build .cons (.list .int) [(.value .int (.int (-5))), (.build .cons (.list .int) [(.value .int (.int (-5))), (.build .cons (.list .int) [(.value .int (.int (-4))), (.build .cons (.list .int) [(.value .int (.int (-5))), (.build .cons (.list .int) [(.value .int (.int (-6))), (.build .cons (.list .int) [(.value .int (.int (-3))), (.build .cons (.list .int) [(.value .int (.int (-7))), (.build .cons (.list .int) [(.value .int (.int (-6))), (.build .nil (.list .int) [])])])])])])])])])])]) }, - { parameters := [], types := [], result := (.list (.list .int)), - body := (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .nil (.list (.list .int)) [])])])])])])])])])])]) }, - { parameters := [0, 1, 2], types := [(.fn [(.list .int), .int] (.list .int)), (.list .int), (.list .int)], result := (.list .int), - body := (.«match» (.list .int) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 15 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, - { parameters := [0, 1], types := [(.list .int), .int], result := (.list .int), - body := (.prim .append [(.var 0), (.build .cons (.list .int) [(.«let» 2 .int (.prim .intQuot [(.var 1), (.value .int (.int 4)), (.value .int (.int 0))]) (.cond (.«match» .bool (.prim .compare [(.var 2), (.value .int (.int 0))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.value .int (.int 0)) (.cond (.«match» .bool (.prim .compare [(.value .int (.int 127)), (.var 2)]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.value .int (.int 127)) (.var 2)))), (.build .nil (.list .int) [])])]) }, - { parameters := [0, 1], types := [(.list .int), .int], result := (.list .int), - body := (.prim .append [(.var 0), (.build .cons (.list .int) [(.cond (.«match» .bool (.prim .compare [(.var 1), (.value .int (.int 0))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.value .int (.int 0)) (.var 1)), (.build .nil (.list .int) [])])]) }, - { parameters := [0, 1, 2], types := [(.list .int), (.pair (.list .int) (.list .int)), (.list .int)], result := (.pair (.list .int) (.list .int)), - body := (.«match» (.pair (.list .int) (.list .int)) (.second (.var 1)) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.build .pair (.pair (.list .int) (.list .int)) [(.prim .append [(.first (.var 1)), (.build .cons (.list .int) [(.prim .intSub [(.var 3), (.prim .intNeg [(.first (.call 22 [(.closure 24 []), (.build .pair (.pair .int (.list .int)) [(.value .int (.int 0)), (.var 0)]), (.var 2)]))])]), (.build .nil (.list .int) [])])]), (.var 4)]))]) }, - { parameters := [], types := [], result := (.list .int), - body := (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int (-2))), (.build .cons (.list .int) [(.value .int (.int 3)), (.build .cons (.list .int) [(.value .int (.int (-5))), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .nil (.list .int) [])])])])])])])])])])])])]) }, - { parameters := [], types := [], result := (.list (.list .int)), - body := (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 3)), (.build .cons (.list .int) [(.value .int (.int (-2))), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int (-1))), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int (-3))), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int (-1))), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int (-2))), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int (-4))), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 3)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .nil (.list (.list .int)) [])])])])])])])])])])])])]) }, - { parameters := [0], types := [(.adt 0)], result := (.list .int), - body := (.«match» (.list .int) (.var 0) [(.arm (.adt 0) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 1) [] (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 2) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 3) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 4) [] (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 5) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 6) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 7) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 8) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 9) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])]))]) }, - { parameters := [0, 1, 2], types := [(.fn [(.pair .int (.list .int)), .int] (.pair .int (.list .int))), (.pair .int (.list .int)), (.list .int)], result := (.pair .int (.list .int)), - body := (.«match» (.pair .int (.list .int)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 22 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, - { parameters := [0, 1], types := [(.pair .int (.list .int)), .int], result := (.pair .int (.list .int)), - body := (.«match» (.pair .int (.list .int)) (.second (.var 0)) [(.arm .nil [] (.var 0)), (.arm .cons [2, 3] (.build .pair (.pair .int (.list .int)) [(.prim .intSub [(.first (.var 0)), (.prim .intNeg [(.prim .intMul [(.var 1), (.var 2)])])]), (.var 3)]))]) }, - { parameters := [0, 1], types := [(.pair .int (.list .int)), .int], result := (.pair .int (.list .int)), - body := (.«match» (.pair .int (.list .int)) (.second (.var 0)) [(.arm .nil [] (.var 0)), (.arm .cons [2, 3] (.build .pair (.pair .int (.list .int)) [(.prim .intSub [(.first (.var 0)), (.prim .intNeg [(.prim .intMul [(.var 1), (.var 2)])])]), (.var 3)]))]) }] } - -def __enc_0 : (Models.Glyphs.Glyph) -> _root_.LexLeanTarget.TargetSyntax.Value - | Models.Glyphs.Glyph.g0 => _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [] - | Models.Glyphs.Glyph.g1 => _root_.LexLeanTarget.TargetSyntax.Value.adt 1 [] - | Models.Glyphs.Glyph.g2 => _root_.LexLeanTarget.TargetSyntax.Value.adt 2 [] - | Models.Glyphs.Glyph.g3 => _root_.LexLeanTarget.TargetSyntax.Value.adt 3 [] - | Models.Glyphs.Glyph.g4 => _root_.LexLeanTarget.TargetSyntax.Value.adt 4 [] - | Models.Glyphs.Glyph.g5 => _root_.LexLeanTarget.TargetSyntax.Value.adt 5 [] - | Models.Glyphs.Glyph.g6 => _root_.LexLeanTarget.TargetSyntax.Value.adt 6 [] - | Models.Glyphs.Glyph.g7 => _root_.LexLeanTarget.TargetSyntax.Value.adt 7 [] - | Models.Glyphs.Glyph.g8 => _root_.LexLeanTarget.TargetSyntax.Value.adt 8 [] - | Models.Glyphs.Glyph.g9 => _root_.LexLeanTarget.TargetSyntax.Value.adt 9 [] - -def __fits_4 (_ybest : (Prod (Option (Prod Nat Int)) (List Nat))) (_yscore : Int) : Bool := - (Bool.true && (match (_ybest).2 with | List.nil => Bool.true | List.cons _ylabel _ylabels => (((Bool.true && (match (_ybest).1 with | Option.none => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.some _yleader => ((Bool.true && (Bool.true && Bool.true)) && (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((Bool.true && Bool.true) && Bool.true))))) && (Bool.true && Bool.true)) && Bool.true))) - -theorem __rel_4 (_ybest : (Prod (Option (Prod Nat Int)) (List Nat))) (_yscore : Int) : _root_.LexLeanPreservation.FunRel __prog 4 [((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int)) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) _ybest), (_root_.LexLeanTarget.TargetSyntax.Value.int _yscore)] (_root_.LexLeanPreservation.Rel (__fits_4 _ybest _yscore) ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int)) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) ((match (_ybest).2 with | List.nil => _ybest | List.cons _ylabel _ylabels => ((match (_ybest).1 with | Option.none => (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) | Option.some _yleader => (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) else (Option.some (_yleader) : (Option (Prod Nat Int))))), _ylabels))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (List Nat)) => (match __a with | List.nil => Bool.true | List.cons _ylabel _ylabels => (((Bool.true && (match (_ybest).1 with | Option.none => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.some _yleader => ((Bool.true && (Bool.true && Bool.true)) && (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((Bool.true && Bool.true) && Bool.true))))) && (Bool.true && Bool.true)) && Bool.true))) (fun (__a : (List Nat)) => (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int)) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) (match __a with | List.nil => _ybest | List.cons _ylabel _ylabels => ((match (_ybest).1 with | Option.none => (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) | Option.some _yleader => (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) else (Option.some (_yleader) : (Option (Prod Nat Int))))), _ylabels))) (_ybest).2 (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (fun (__a : (List Nat)) _ => match __a with | List.nil => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | List.cons _ylabel _ylabels => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int)) (fun (__a : (Option (Prod Nat Int))) => (match __a with | Option.none => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.some _yleader => ((Bool.true && (Bool.true && Bool.true)) && (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((Bool.true && Bool.true) && Bool.true))))) (fun (__a : (Option (Prod Nat Int))) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int)) (match __a with | Option.none => (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) | Option.some _yleader => (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) else (Option.some (_yleader) : (Option (Prod Nat Int)))))) (_ybest).1 (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (fun (__a : (Option (Prod Nat Int))) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.some _yleader => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((Bool.true && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int)) (if __b then (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) else (Option.some (_yleader) : (Option (Prod Nat Int))))) (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) (_root_.LexLeanPreservation.conv_lessThan (_root_.LexLeanPreservation.keySpec_int (_root_.LexLeanCollections.Key.compare : Int -> Int -> Ordering) (fun _ _ => rfl)) _root_.LexLeanCollections.lessThan (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some))))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))))) - -def __fits_23 (_ysum : (Prod Int (List Int))) (_yweight : Int) : Bool := - (Bool.true && (match (_ysum).2 with | List.nil => Bool.true | List.cons _yvalue _yrest => ((((Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int))) && Bool.true) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int))) && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int))) && (Bool.true && Bool.true)) && Bool.true))) - -theorem __rel_23 (_ysum : (Prod Int (List Int))) (_yweight : Int) : _root_.LexLeanPreservation.FunRel __prog 23 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) _ysum), (_root_.LexLeanTarget.TargetSyntax.Value.int _yweight)] (_root_.LexLeanPreservation.Rel (__fits_23 _ysum _yweight) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) ((match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (fun (__a : (List Int)) => (match __a with | List.nil => Bool.true | List.cons _yvalue _yrest => ((((Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int))) && Bool.true) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int))) && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int))) && (Bool.true && Bool.true)) && Bool.true))) (fun (__a : (List Int)) => (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (match __a with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest))) (_ysum).2 (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (fun (__a : (List Int)) _ => match __a with | List.nil => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | List.cons _yvalue _yrest => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_intMul _yweight _yvalue)) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_intNeg (_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_intSub (_ysum).1 (_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))))) - -def __fits_12 (_yvalues : (List Int)) (_yacc : (Prod (List Int) (List Int))) (_yrow : (List Int)) : Bool := - (Bool.true && (match (_yacc).2 with | List.nil => Bool.true | List.cons _ybias _ybiases => ((((Bool.true && (((((Bool.true && (((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Prod Int (List Int))) (__p1 : Int) => __fits_23 __p0 __p1) ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow))) && Bool.true) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int))) && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int))) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (Bool.true && Bool.true)) && Bool.true))) - -theorem __rel_12 (_yvalues : (List Int)) (_yacc : (Prod (List Int) (List Int))) (_yrow : (List Int)) : _root_.LexLeanPreservation.FunRel __prog 12 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yvalues), ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) _yacc), ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yrow)] (_root_.LexLeanPreservation.Rel (__fits_12 _yvalues _yacc _yrow) ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) ((match (_yacc).2 with | List.nil => _yacc | List.cons _ybias _ybiases => ((_root_.LexLeanRuntime.append ((_yacc).1) (((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int))) : (List Int)), _ybiases))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (fun (__a : (List Int)) => (match __a with | List.nil => Bool.true | List.cons _ybias _ybiases => ((((Bool.true && (((((Bool.true && (((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Prod Int (List Int))) (__p1 : Int) => __fits_23 __p0 __p1) ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow))) && Bool.true) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int))) && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int))) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (Bool.true && Bool.true)) && Bool.true))) (fun (__a : (List Int)) => (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (match __a with | List.nil => _yacc | List.cons _ybias _ybiases => ((_root_.LexLeanRuntime.append ((_yacc).1) (((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int))) : (List Int)), _ybiases))) (_yacc).2 (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (fun (__a : (List Int)) _ => match __a with | List.nil => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | List.cons _ybias _ybiases => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.int) (es := (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int))) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.int) (fun _ => rfl) ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (fun (__p0 : (Prod Int (List Int))) (__p1 : Int) => __fits_23 __p0 __p1) 23 [] (fun (__p0 : (Prod Int (List Int))) (__p1 : Int) => __rel_23 __p0 __p1) (p := __prog) (fi := 22) (ta := .int) (ts := (.pair .int (.list .int))) rfl (((0 : Int), _yvalues)) (_yrow)))) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_intNeg ((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_intSub _ybias (_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.int) (_yacc).1 ((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))))) - -def __fits_13 : Bool := - ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) - -theorem __rel_13 : _root_.LexLeanPreservation.FunRel __prog 13 [] (_root_.LexLeanPreservation.Rel (__fits_13) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (Models.Recognizer.outputBias))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) - -def __fits_14 : Bool := - ((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) - -theorem __rel_14 : _root_.LexLeanPreservation.FunRel __prog 14 [] (_root_.LexLeanPreservation.Rel (__fits_14) ((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (Models.Recognizer.outputWeights))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) - -def __fits_6 (_yvalues : (List Int)) : Bool := - (((Bool.true && Bool.true) && ((((Bool.true && Bool.true) && ((Bool.true && (__fits_13)) && Bool.true)) && Bool.true) && ((Bool.true && (__fits_14)) && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Prod (List Int) (List Int))) (__p1 : (List Int)) => __fits_12 (_yvalues) __p0 __p1) ((fun (_yacc : (Prod (List Int) (List Int))) (_yrow : (List Int)) => (match (_yacc).2 with | List.nil => _yacc | List.cons _ybias _ybiases => ((_root_.LexLeanRuntime.append ((_yacc).1) (((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int))) : (List Int)), _ybiases)))) ((([] : List Int), (Models.Recognizer.outputBias))) ((Models.Recognizer.outputWeights)))) - -attribute [local irreducible] Models.Recognizer.outputBias Models.Recognizer.outputWeights in -theorem __rel_6 (_yvalues : (List Int)) : _root_.LexLeanPreservation.FunRel __prog 6 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yvalues)] (_root_.LexLeanPreservation.Rel (__fits_6 _yvalues) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (Models.Recognizer.DigitNet.layer4 _yvalues))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call _root_.LexLeanPreservation.convL_nil (__rel_13)) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call _root_.LexLeanPreservation.convL_nil (__rel_14)) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (es := (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int))) (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (fun _ => rfl) ((fun (_yacc : (Prod (List Int) (List Int))) (_yrow : (List Int)) => (match (_yacc).2 with | List.nil => _yacc | List.cons _ybias _ybiases => ((_root_.LexLeanRuntime.append ((_yacc).1) (((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int))) : (List Int)), _ybiases)))) (fun (__p0 : (Prod (List Int) (List Int))) (__p1 : (List Int)) => __fits_12 (_yvalues) __p0 __p1) 12 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yvalues)] (fun (__p0 : (Prod (List Int) (List Int))) (__p1 : (List Int)) => __rel_12 (_yvalues) __p0 __p1) (p := __prog) (fi := 11) (ta := (.list .int)) (ts := (.pair (.list .int) (.list .int))) rfl ((([] : List Int), (Models.Recognizer.outputBias))) ((Models.Recognizer.outputWeights))))) - -def __fits_16 (_yout : (List Int)) (_yvalue : Int) : Bool := - ((Bool.true && ((((((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.quotient (_yvalue) ((4 : Int)) ((0 : Int)) : Int))) && (let _yquotient : Int := (_root_.LexLeanRuntime.quotient (_yvalue) ((4 : Int)) ((0 : Int)) : Int); ((Bool.true && (Bool.true && Bool.true)) && (if (_root_.LexLeanCollections.lessThan (_yquotient) ((0 : Int)) : Bool) then Bool.true else ((Bool.true && (Bool.true && Bool.true)) && (if (_root_.LexLeanCollections.lessThan ((127 : Int)) (_yquotient) : Bool) then Bool.true else Bool.true)))))) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) - -theorem __rel_16 (_yout : (List Int)) (_yvalue : Int) : _root_.LexLeanPreservation.FunRel __prog 16 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yout), (_root_.LexLeanTarget.TargetSyntax.Value.int _yvalue)] (_root_.LexLeanPreservation.Rel (__fits_16 _yout _yvalue) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) ((_root_.LexLeanRuntime.append (_yout) (((let _yquotient : Int := (_root_.LexLeanRuntime.quotient (_yvalue) ((4 : Int)) ((0 : Int)) : Int); (if (_root_.LexLeanCollections.lessThan (_yquotient) ((0 : Int)) : Bool) then (0 : Int) else (if (_root_.LexLeanCollections.lessThan ((127 : Int)) (_yquotient) : Bool) then (127 : Int) else _yquotient))) :: ([] : List Int))) : (List Int))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (let _yquotient : Int := (_root_.LexLeanRuntime.quotient (_yvalue) ((4 : Int)) ((0 : Int)) : Int); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.prim_intQuot _yvalue (4 : Int) (0 : Int))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else ((Bool.true && (Bool.true && Bool.true)) && (if (_root_.LexLeanCollections.lessThan ((127 : Int)) (_yquotient) : Bool) then Bool.true else Bool.true)))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.int (if __b then (0 : Int) else (if (_root_.LexLeanCollections.lessThan ((127 : Int)) (_yquotient) : Bool) then (127 : Int) else _yquotient))) (_root_.LexLeanCollections.lessThan (_yquotient) ((0 : Int)) : Bool) (_root_.LexLeanPreservation.conv_lessThan (_root_.LexLeanPreservation.keySpec_int (_root_.LexLeanCollections.Key.compare : Int -> Int -> Ordering) (fun _ _ => rfl)) _root_.LexLeanCollections.lessThan (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.int (if __b then (127 : Int) else _yquotient)) (_root_.LexLeanCollections.lessThan ((127 : Int)) (_yquotient) : Bool) (_root_.LexLeanPreservation.conv_lessThan (_root_.LexLeanPreservation.keySpec_int (_root_.LexLeanCollections.Key.compare : Int -> Int -> Ordering) (fun _ _ => rfl)) _root_.LexLeanCollections.lessThan (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => (_root_.LexLeanPreservation.conv_var rfl)))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.int) _yout ((let _yquotient : Int := (_root_.LexLeanRuntime.quotient (_yvalue) ((4 : Int)) ((0 : Int)) : Int); (if (_root_.LexLeanCollections.lessThan (_yquotient) ((0 : Int)) : Bool) then (0 : Int) else (if (_root_.LexLeanCollections.lessThan ((127 : Int)) (_yquotient) : Bool) then (127 : Int) else _yquotient))) :: ([] : List Int)))) - -def __fits_7 (_yvalues : (List Int)) : Bool := - ((Bool.true && ((Bool.true && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (List Int)) (__p1 : Int) => __fits_16 __p0 __p1) ((fun (_yout : (List Int)) (_yvalue : Int) => (_root_.LexLeanRuntime.append (_yout) (((let _yquotient : Int := (_root_.LexLeanRuntime.quotient (_yvalue) ((4 : Int)) ((0 : Int)) : Int); (if (_root_.LexLeanCollections.lessThan (_yquotient) ((0 : Int)) : Bool) then (0 : Int) else (if (_root_.LexLeanCollections.lessThan ((127 : Int)) (_yquotient) : Bool) then (127 : Int) else _yquotient))) :: ([] : List Int))) : (List Int)))) (([] : List Int)) (_yvalues))) - -theorem __rel_7 (_yvalues : (List Int)) : _root_.LexLeanPreservation.FunRel __prog 7 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yvalues)] (_root_.LexLeanPreservation.Rel (__fits_7 _yvalues) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (Models.Recognizer.DigitNet.layer3 _yvalues))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.int) (es := (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.int) (fun _ => rfl) ((fun (_yout : (List Int)) (_yvalue : Int) => (_root_.LexLeanRuntime.append (_yout) (((let _yquotient : Int := (_root_.LexLeanRuntime.quotient (_yvalue) ((4 : Int)) ((0 : Int)) : Int); (if (_root_.LexLeanCollections.lessThan (_yquotient) ((0 : Int)) : Bool) then (0 : Int) else (if (_root_.LexLeanCollections.lessThan ((127 : Int)) (_yquotient) : Bool) then (127 : Int) else _yquotient))) :: ([] : List Int))) : (List Int)))) (fun (__p0 : (List Int)) (__p1 : Int) => __fits_16 __p0 __p1) 16 [] (fun (__p0 : (List Int)) (__p1 : Int) => __rel_16 __p0 __p1) (p := __prog) (fi := 15) (ta := .int) (ts := (.list .int)) rfl (([] : List Int)) (_yvalues))) - -def __fits_17 (_yout : (List Int)) (_yvalue : Int) : Bool := - ((Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && (if (_root_.LexLeanCollections.lessThan (_yvalue) ((0 : Int)) : Bool) then Bool.true else Bool.true)) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) - -theorem __rel_17 (_yout : (List Int)) (_yvalue : Int) : _root_.LexLeanPreservation.FunRel __prog 17 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yout), (_root_.LexLeanTarget.TargetSyntax.Value.int _yvalue)] (_root_.LexLeanPreservation.Rel (__fits_17 _yout _yvalue) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) ((_root_.LexLeanRuntime.append (_yout) (((if (_root_.LexLeanCollections.lessThan (_yvalue) ((0 : Int)) : Bool) then (0 : Int) else _yvalue) :: ([] : List Int))) : (List Int))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.int (if __b then (0 : Int) else _yvalue)) (_root_.LexLeanCollections.lessThan (_yvalue) ((0 : Int)) : Bool) (_root_.LexLeanPreservation.conv_lessThan (_root_.LexLeanPreservation.keySpec_int (_root_.LexLeanCollections.Key.compare : Int -> Int -> Ordering) (fun _ _ => rfl)) _root_.LexLeanCollections.lessThan (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => (_root_.LexLeanPreservation.conv_var rfl))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.int) _yout ((if (_root_.LexLeanCollections.lessThan (_yvalue) ((0 : Int)) : Bool) then (0 : Int) else _yvalue) :: ([] : List Int)))) - -def __fits_8 (_yvalues : (List Int)) : Bool := - ((Bool.true && ((Bool.true && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (List Int)) (__p1 : Int) => __fits_17 __p0 __p1) ((fun (_yout : (List Int)) (_yvalue : Int) => (_root_.LexLeanRuntime.append (_yout) (((if (_root_.LexLeanCollections.lessThan (_yvalue) ((0 : Int)) : Bool) then (0 : Int) else _yvalue) :: ([] : List Int))) : (List Int)))) (([] : List Int)) (_yvalues))) - -theorem __rel_8 (_yvalues : (List Int)) : _root_.LexLeanPreservation.FunRel __prog 8 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yvalues)] (_root_.LexLeanPreservation.Rel (__fits_8 _yvalues) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (Models.Recognizer.DigitNet.layer2 _yvalues))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.int) (es := (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.int) (fun _ => rfl) ((fun (_yout : (List Int)) (_yvalue : Int) => (_root_.LexLeanRuntime.append (_yout) (((if (_root_.LexLeanCollections.lessThan (_yvalue) ((0 : Int)) : Bool) then (0 : Int) else _yvalue) :: ([] : List Int))) : (List Int)))) (fun (__p0 : (List Int)) (__p1 : Int) => __fits_17 __p0 __p1) 17 [] (fun (__p0 : (List Int)) (__p1 : Int) => __rel_17 __p0 __p1) (p := __prog) (fi := 15) (ta := .int) (ts := (.list .int)) rfl (([] : List Int)) (_yvalues))) - -def __fits_24 (_ysum : (Prod Int (List Int))) (_yweight : Int) : Bool := - (Bool.true && (match (_ysum).2 with | List.nil => Bool.true | List.cons _yvalue _yrest => ((((Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int))) && Bool.true) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int))) && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int))) && (Bool.true && Bool.true)) && Bool.true))) - -theorem __rel_24 (_ysum : (Prod Int (List Int))) (_yweight : Int) : _root_.LexLeanPreservation.FunRel __prog 24 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) _ysum), (_root_.LexLeanTarget.TargetSyntax.Value.int _yweight)] (_root_.LexLeanPreservation.Rel (__fits_24 _ysum _yweight) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) ((match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (fun (__a : (List Int)) => (match __a with | List.nil => Bool.true | List.cons _yvalue _yrest => ((((Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int))) && Bool.true) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int))) && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int))) && (Bool.true && Bool.true)) && Bool.true))) (fun (__a : (List Int)) => (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (match __a with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest))) (_ysum).2 (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (fun (__a : (List Int)) _ => match __a with | List.nil => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | List.cons _yvalue _yrest => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_intMul _yweight _yvalue)) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_intNeg (_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_intSub (_ysum).1 (_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))))) - -def __fits_18 (_yvalues : (List Int)) (_yacc : (Prod (List Int) (List Int))) (_yrow : (List Int)) : Bool := - (Bool.true && (match (_yacc).2 with | List.nil => Bool.true | List.cons _ybias _ybiases => ((((Bool.true && (((((Bool.true && (((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Prod Int (List Int))) (__p1 : Int) => __fits_24 __p0 __p1) ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow))) && Bool.true) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int))) && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int))) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (Bool.true && Bool.true)) && Bool.true))) - -theorem __rel_18 (_yvalues : (List Int)) (_yacc : (Prod (List Int) (List Int))) (_yrow : (List Int)) : _root_.LexLeanPreservation.FunRel __prog 18 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yvalues), ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) _yacc), ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yrow)] (_root_.LexLeanPreservation.Rel (__fits_18 _yvalues _yacc _yrow) ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) ((match (_yacc).2 with | List.nil => _yacc | List.cons _ybias _ybiases => ((_root_.LexLeanRuntime.append ((_yacc).1) (((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int))) : (List Int)), _ybiases))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (fun (__a : (List Int)) => (match __a with | List.nil => Bool.true | List.cons _ybias _ybiases => ((((Bool.true && (((((Bool.true && (((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Prod Int (List Int))) (__p1 : Int) => __fits_24 __p0 __p1) ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow))) && Bool.true) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int))) && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int))) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (Bool.true && Bool.true)) && Bool.true))) (fun (__a : (List Int)) => (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (match __a with | List.nil => _yacc | List.cons _ybias _ybiases => ((_root_.LexLeanRuntime.append ((_yacc).1) (((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int))) : (List Int)), _ybiases))) (_yacc).2 (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (fun (__a : (List Int)) _ => match __a with | List.nil => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | List.cons _ybias _ybiases => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.int) (es := (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int))) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.int) (fun _ => rfl) ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (fun (__p0 : (Prod Int (List Int))) (__p1 : Int) => __fits_24 __p0 __p1) 24 [] (fun (__p0 : (Prod Int (List Int))) (__p1 : Int) => __rel_24 __p0 __p1) (p := __prog) (fi := 22) (ta := .int) (ts := (.pair .int (.list .int))) rfl (((0 : Int), _yvalues)) (_yrow)))) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_intNeg ((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_intSub _ybias (_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.int) (_yacc).1 ((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))))) - -def __fits_19 : Bool := - ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) - -theorem __rel_19 : _root_.LexLeanPreservation.FunRel __prog 19 [] (_root_.LexLeanPreservation.Rel (__fits_19) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (Models.Recognizer.hiddenBias))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) - -def __fits_20 : Bool := - ((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) - -theorem __rel_20 : _root_.LexLeanPreservation.FunRel __prog 20 [] (_root_.LexLeanPreservation.Rel (__fits_20) ((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (Models.Recognizer.hiddenWeights))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) - -def __fits_9 (_yvalues : (List Int)) : Bool := - (((Bool.true && Bool.true) && ((((Bool.true && Bool.true) && ((Bool.true && (__fits_19)) && Bool.true)) && Bool.true) && ((Bool.true && (__fits_20)) && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Prod (List Int) (List Int))) (__p1 : (List Int)) => __fits_18 (_yvalues) __p0 __p1) ((fun (_yacc : (Prod (List Int) (List Int))) (_yrow : (List Int)) => (match (_yacc).2 with | List.nil => _yacc | List.cons _ybias _ybiases => ((_root_.LexLeanRuntime.append ((_yacc).1) (((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int))) : (List Int)), _ybiases)))) ((([] : List Int), (Models.Recognizer.hiddenBias))) ((Models.Recognizer.hiddenWeights)))) - -attribute [local irreducible] Models.Recognizer.hiddenBias Models.Recognizer.hiddenWeights in -theorem __rel_9 (_yvalues : (List Int)) : _root_.LexLeanPreservation.FunRel __prog 9 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yvalues)] (_root_.LexLeanPreservation.Rel (__fits_9 _yvalues) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (Models.Recognizer.DigitNet.layer1 _yvalues))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call _root_.LexLeanPreservation.convL_nil (__rel_19)) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call _root_.LexLeanPreservation.convL_nil (__rel_20)) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (es := (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int))) (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (fun _ => rfl) ((fun (_yacc : (Prod (List Int) (List Int))) (_yrow : (List Int)) => (match (_yacc).2 with | List.nil => _yacc | List.cons _ybias _ybiases => ((_root_.LexLeanRuntime.append ((_yacc).1) (((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int))) : (List Int)), _ybiases)))) (fun (__p0 : (Prod (List Int) (List Int))) (__p1 : (List Int)) => __fits_18 (_yvalues) __p0 __p1) 18 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yvalues)] (fun (__p0 : (Prod (List Int) (List Int))) (__p1 : (List Int)) => __rel_18 (_yvalues) __p0 __p1) (p := __prog) (fi := 11) (ta := (.list .int)) (ts := (.pair (.list .int) (.list .int))) rfl ((([] : List Int), (Models.Recognizer.hiddenBias))) ((Models.Recognizer.hiddenWeights))))) - -def __fits_21 (glyph : (Models.Glyphs.Glyph)) : Bool := - (Bool.true && (match glyph with | Models.Glyphs.Glyph.g0 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g1 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g2 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g3 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g4 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g5 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g6 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g7 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g8 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g9 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true))) - -theorem __rel_21 (glyph : (Models.Glyphs.Glyph)) : _root_.LexLeanPreservation.FunRel __prog 21 [(__enc_0 glyph)] (_root_.LexLeanPreservation.Rel (__fits_21 glyph) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (Models.Glyphs.encode glyph))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV __enc_0 (fun (__a : (Models.Glyphs.Glyph)) => (match __a with | Models.Glyphs.Glyph.g0 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g1 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g2 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g3 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g4 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g5 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g6 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g7 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g8 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g9 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true))) (fun (__a : (Models.Glyphs.Glyph)) => (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (match __a with | Models.Glyphs.Glyph.g0 => ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((0 : Int) :: ([] : List Int)))))))) | Models.Glyphs.Glyph.g1 => ((0 : Int) :: ((1 : Int) :: ((1 : Int) :: ((0 : Int) :: ((0 : Int) :: ((0 : Int) :: ((0 : Int) :: ([] : List Int)))))))) | Models.Glyphs.Glyph.g2 => ((1 : Int) :: ((1 : Int) :: ((0 : Int) :: ((1 : Int) :: ((1 : Int) :: ((0 : Int) :: ((1 : Int) :: ([] : List Int)))))))) | Models.Glyphs.Glyph.g3 => ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((0 : Int) :: ((0 : Int) :: ((1 : Int) :: ([] : List Int)))))))) | Models.Glyphs.Glyph.g4 => ((0 : Int) :: ((1 : Int) :: ((1 : Int) :: ((0 : Int) :: ((0 : Int) :: ((1 : Int) :: ((1 : Int) :: ([] : List Int)))))))) | Models.Glyphs.Glyph.g5 => ((1 : Int) :: ((0 : Int) :: ((1 : Int) :: ((1 : Int) :: ((0 : Int) :: ((1 : Int) :: ((1 : Int) :: ([] : List Int)))))))) | Models.Glyphs.Glyph.g6 => ((1 : Int) :: ((0 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ([] : List Int)))))))) | Models.Glyphs.Glyph.g7 => ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((0 : Int) :: ((0 : Int) :: ((0 : Int) :: ((0 : Int) :: ([] : List Int)))))))) | Models.Glyphs.Glyph.g8 => ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ([] : List Int)))))))) | Models.Glyphs.Glyph.g9 => ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((0 : Int) :: ((1 : Int) :: ((1 : Int) :: ([] : List Int)))))))))) glyph (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (Models.Glyphs.Glyph)) _ => match __a with | Models.Glyphs.Glyph.g0 => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons)) | Models.Glyphs.Glyph.g1 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons))) | Models.Glyphs.Glyph.g2 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons)))) | Models.Glyphs.Glyph.g3 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons))))) | Models.Glyphs.Glyph.g4 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons)))))) | Models.Glyphs.Glyph.g5 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons))))))) | Models.Glyphs.Glyph.g6 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons)))))))) | Models.Glyphs.Glyph.g7 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons))))))))) | Models.Glyphs.Glyph.g8 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons)))))))))) | Models.Glyphs.Glyph.g9 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons))))))))))))) - -def __fits_10 (glyph : (Models.Glyphs.Glyph)) : Bool := - ((Bool.true && Bool.true) && (__fits_21 (glyph))) - -attribute [local irreducible] Models.Glyphs.encode in -theorem __rel_10 (glyph : (Models.Glyphs.Glyph)) : _root_.LexLeanPreservation.FunRel __prog 10 [(__enc_0 glyph)] (_root_.LexLeanPreservation.Rel (__fits_10 glyph) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (Models.Recognizer.DigitNet.encoded glyph))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_21 (glyph))) - -def __fits_5 (glyph : (Models.Glyphs.Glyph)) : Bool := - ((((((((((Bool.true && Bool.true) && (__fits_10 (glyph))) && Bool.true) && (__fits_9 ((Models.Recognizer.DigitNet.encoded (glyph))))) && Bool.true) && (__fits_8 ((Models.Recognizer.DigitNet.layer1 ((Models.Recognizer.DigitNet.encoded (glyph))))))) && Bool.true) && (__fits_7 ((Models.Recognizer.DigitNet.layer2 ((Models.Recognizer.DigitNet.layer1 ((Models.Recognizer.DigitNet.encoded (glyph))))))))) && Bool.true) && (__fits_6 ((Models.Recognizer.DigitNet.layer3 ((Models.Recognizer.DigitNet.layer2 ((Models.Recognizer.DigitNet.layer1 ((Models.Recognizer.DigitNet.encoded (glyph))))))))))) - -attribute [local irreducible] Models.Recognizer.DigitNet.encoded Models.Recognizer.DigitNet.layer1 Models.Recognizer.DigitNet.layer2 Models.Recognizer.DigitNet.layer3 Models.Recognizer.DigitNet.layer4 in -theorem __rel_5 (glyph : (Models.Glyphs.Glyph)) : _root_.LexLeanPreservation.FunRel __prog 5 [(__enc_0 glyph)] (_root_.LexLeanPreservation.Rel (__fits_5 glyph) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (Models.Recognizer.DigitNet.logits glyph))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_10 (glyph))) _root_.LexLeanPreservation.convL_nil) (__rel_9 ((Models.Recognizer.DigitNet.encoded (glyph))))) _root_.LexLeanPreservation.convL_nil) (__rel_8 ((Models.Recognizer.DigitNet.layer1 ((Models.Recognizer.DigitNet.encoded (glyph))))))) _root_.LexLeanPreservation.convL_nil) (__rel_7 ((Models.Recognizer.DigitNet.layer2 ((Models.Recognizer.DigitNet.layer1 ((Models.Recognizer.DigitNet.encoded (glyph))))))))) _root_.LexLeanPreservation.convL_nil) (__rel_6 ((Models.Recognizer.DigitNet.layer3 ((Models.Recognizer.DigitNet.layer2 ((Models.Recognizer.DigitNet.layer1 ((Models.Recognizer.DigitNet.encoded (glyph))))))))))) - -def __fits_2 (glyph : (Models.Glyphs.Glyph)) : Bool := - (((Bool.true && ((((Bool.true && Bool.true) && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((Bool.true && Bool.true) && (__fits_5 (glyph))) && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Prod (Option (Prod Nat Int)) (List Nat))) (__p1 : Int) => __fits_4 __p0 __p1) ((fun (_ybest : (Prod (Option (Prod Nat Int)) (List Nat))) (_yscore : Int) => (match (_ybest).2 with | List.nil => _ybest | List.cons _ylabel _ylabels => ((match (_ybest).1 with | Option.none => (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) | Option.some _yleader => (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) else (Option.some (_yleader) : (Option (Prod Nat Int))))), _ylabels)))) (((Option.none : (Option (Prod Nat Int))), ((0 : Nat) :: ((1 : Nat) :: ((2 : Nat) :: ((3 : Nat) :: ((4 : Nat) :: ((5 : Nat) :: ((6 : Nat) :: ((7 : Nat) :: ((8 : Nat) :: ((9 : Nat) :: ([] : List Nat))))))))))))) ((Models.Recognizer.DigitNet.logits (glyph))))) && (match ((_root_.LexLeanCollections.listFold ((fun (_ybest : (Prod (Option (Prod Nat Int)) (List Nat))) (_yscore : Int) => (match (_ybest).2 with | List.nil => _ybest | List.cons _ylabel _ylabels => ((match (_ybest).1 with | Option.none => (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) | Option.some _yleader => (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) else (Option.some (_yleader) : (Option (Prod Nat Int))))), _ylabels)))) (((Option.none : (Option (Prod Nat Int))), ((0 : Nat) :: ((1 : Nat) :: ((2 : Nat) :: ((3 : Nat) :: ((4 : Nat) :: ((5 : Nat) :: ((6 : Nat) :: ((7 : Nat) :: ((8 : Nat) :: ((9 : Nat) :: ([] : List Nat))))))))))))) ((Models.Recognizer.DigitNet.logits (glyph))) : (Prod (Option (Prod Nat Int)) (List Nat)))).1 with | Option.none => Bool.true | Option.some _ywinner => Bool.true)) - -attribute [local irreducible] Models.Recognizer.DigitNet.logits in -theorem __rel_2 (glyph : (Models.Glyphs.Glyph)) : _root_.LexLeanPreservation.FunRel __prog 2 [(__enc_0 glyph)] (_root_.LexLeanPreservation.Rel (__fits_2 glyph) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Models.Recognizer.DigitNet glyph))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int)) (fun (__a : (Option (Prod Nat Int))) => (match __a with | Option.none => Bool.true | Option.some _ywinner => Bool.true)) (fun (__a : (Option (Prod Nat Int))) => _root_.LexLeanTarget.TargetSyntax.Value.nat (match __a with | Option.none => (0 : Nat) | Option.some _ywinner => (_ywinner).1)) ((_root_.LexLeanCollections.listFold ((fun (_ybest : (Prod (Option (Prod Nat Int)) (List Nat))) (_yscore : Int) => (match (_ybest).2 with | List.nil => _ybest | List.cons _ylabel _ylabels => ((match (_ybest).1 with | Option.none => (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) | Option.some _yleader => (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) else (Option.some (_yleader) : (Option (Prod Nat Int))))), _ylabels)))) (((Option.none : (Option (Prod Nat Int))), ((0 : Nat) :: ((1 : Nat) :: ((2 : Nat) :: ((3 : Nat) :: ((4 : Nat) :: ((5 : Nat) :: ((6 : Nat) :: ((7 : Nat) :: ((8 : Nat) :: ((9 : Nat) :: ([] : List Nat))))))))))))) ((Models.Recognizer.DigitNet.logits (glyph))) : (Prod (Option (Prod Nat Int)) (List Nat)))).1 (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_5 (glyph))) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.int) (es := (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int)) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat))) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.int) (fun _ => rfl) ((fun (_ybest : (Prod (Option (Prod Nat Int)) (List Nat))) (_yscore : Int) => (match (_ybest).2 with | List.nil => _ybest | List.cons _ylabel _ylabels => ((match (_ybest).1 with | Option.none => (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) | Option.some _yleader => (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) else (Option.some (_yleader) : (Option (Prod Nat Int))))), _ylabels)))) (fun (__p0 : (Prod (Option (Prod Nat Int)) (List Nat))) (__p1 : Int) => __fits_4 __p0 __p1) 4 [] (fun (__p0 : (Prod (Option (Prod Nat Int)) (List Nat))) (__p1 : Int) => __rel_4 __p0 __p1) (p := __prog) (fi := 3) (ta := .int) (ts := (.pair (.option (.pair .nat .int)) (.list .nat))) rfl (((Option.none : (Option (Prod Nat Int))), ((0 : Nat) :: ((1 : Nat) :: ((2 : Nat) :: ((3 : Nat) :: ((4 : Nat) :: ((5 : Nat) :: ((6 : Nat) :: ((7 : Nat) :: ((8 : Nat) :: ((9 : Nat) :: ([] : List Nat))))))))))))) ((Models.Recognizer.DigitNet.logits (glyph)))))) (fun (__a : (Option (Prod Nat Int))) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value) | Option.some _ywinner => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)))))) - -def __fits_1 (_yinput : (Models.Glyphs.Glyph)) : Bool := - ((Bool.true && Bool.true) && (__fits_2 (_yinput))) - -attribute [local irreducible] Models.Recognizer.DigitNet in -theorem __rel_1 (_yinput : (Models.Glyphs.Glyph)) : _root_.LexLeanPreservation.FunRel __prog 1 [(__enc_0 _yinput)] (_root_.LexLeanPreservation.Rel (__fits_1 _yinput) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Models.Recognizer.DigitModel _yinput))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_2 (_yinput))) - -def __fits_0 (glyph : (Models.Glyphs.Glyph)) : Bool := - ((Bool.true && Bool.true) && (__fits_1 (glyph))) - -attribute [local irreducible] Models.Recognizer.DigitModel in -theorem __rel_0 (glyph : (Models.Glyphs.Glyph)) : _root_.LexLeanPreservation.FunRel __prog 0 [(__enc_0 glyph)] (_root_.LexLeanPreservation.Rel (__fits_0 glyph) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Models.Main.classify glyph))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_1 (glyph))) - -def denote (glyph : (Models.Glyphs.Glyph)) : _root_.LexLeanPreservation.Obs := - _root_.cond (__fits_0 glyph) (_root_.LexLeanPreservation.Obs.value ((_root_.LexLeanTarget.TargetSyntax.Value.nat (Models.Main.classify glyph)))) _root_.LexLeanPreservation.Obs.overflow - -theorem root (glyph : (Models.Glyphs.Glyph)) : _root_.LexLeanPreservation.RunConv __prog 0 [(__enc_0 glyph)] (_root_.LexLeanPreservation.Rel (__fits_0 glyph) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Models.Main.classify glyph))) := - _root_.LexLeanPreservation.run_of_funRel (__rel_0 glyph) - -end LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0 diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R0/Compose/RustStd.lex.tex b/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R0/Compose/RustStd.lex.tex deleted file mode 100644 index 1e2c6070c..000000000 --- a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R0/Compose/RustStd.lex.tex +++ /dev/null @@ -1,585 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0, - LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.Compose.RustStd.__wt_0 : @16 := @448 { - all: [LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.Compose.RustStd.__wt_0], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.Compose.RustStd.root : @1168 := @1169 { - all: [LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.RustStd.program -@1 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.RustStd.krate -@2 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.RustStd.flags -@3 := Models.Glyphs.Glyph -@4 := #0 -@5 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.__enc_0 -@6 := @5 @4 -@7 := LexLeanPreservation.Rust.WT -@8 := LexLeanTarget.TargetSyntax.Ty.adt -@9 := 0 -@10 := @8 @9 -@11 := @7 @0 -@12 := @11 @1 -@13 := @12 @2 -@15 := @13 @6 @10 -@16 := (__v : @3) -> @15 -@17 := fun (__v : @3) => @15 -@18 := LexLeanTarget.TargetSyntax.Value -@19 := LexLeanTarget.TargetSyntax.Ty -@20 := List.nil.{0} -@21 := List.cons.{0} -@22 := @20 @18 -@23 := @20 @19 -@24 := LexLeanTarget.TargetSyntax.Program -@25 := LexLeanPreservation.Rust.RCrate -@26 := LexLeanPreservation.Rust.Flags -@27 := LexLeanPreservation.Rust.WTL -@28 := #2 -@29 := @27 @28 -@30 := #1 -@37 := {p : @24} -> {c : @25} -> {A : @26} -> @29 @30 @4 @22 @23 -@39 := LexLeanPreservation.Rust.wtl_nil @0 -@40 := @27 @0 -@46 := {c : @25} -> {A : @26} -> @40 @30 @4 @22 @23 -@47 := @39 @1 -@48 := @40 @1 -@52 := {A : @26} -> @48 @4 @22 @23 -@53 := @47 @2 -@54 := @48 @2 -@55 := @54 @22 -@56 := @55 @23 -@57 := Nat -@58 := List.{0} -@59 := @58 @18 -@60 := @58 @19 -@61 := Eq.{1} -@62 := Option.{0} -@63 := @62 @60 -@64 := @61 @63 -@65 := LexLeanPreservation.Rust.adtFields -@66 := #6 -@67 := @65 @66 -@68 := #3 -@71 := @64 (@67 @68 @28) -@72 := Option.some.{0} -@73 := @72 @60 -@74 := @73 @4 -@75 := @71 @74 -@76 := #7 -@78 := @27 @76 @66 -@79 := #5 -@82 := @78 @79 @28 @30 -@83 := #8 -@86 := @7 @83 @76 @66 -@87 := LexLeanTarget.TargetSyntax.Value.adt -@88 := #4 -@90 := @87 @88 @68 -@91 := @86 @90 -@92 := @8 @79 -@102 := {p : @24} -> - {c : @25} -> - {A : @26} -> - {i : @57} -> {k : @57} -> {fs : @59} -> {tys : @60} -> (h : @75) -> (hf : @82) -> @91 @92 -@104 := LexLeanPreservation.Rust.wt_adt @0 -@105 := @65 @0 -@109 := @64 (@105 @68 @28) @74 -@113 := @40 @66 @79 @28 @30 -@125 := {c : @25} -> - {A : @26} -> - {i : @57} -> - {k : @57} -> {fs : @59} -> {tys : @60} -> (h : @109) -> (hf : @113) -> @11 @76 @66 @90 @92 -@126 := @104 @1 -@129 := @48 @79 @28 @30 -@139 := {A : @26} -> - {i : @57} -> - {k : @57} -> {fs : @59} -> {tys : @60} -> (h : @109) -> (hf : @129) -> @12 @66 @90 @92 -@140 := @126 @2 -@142 := @54 @28 @30 -@143 := @13 @90 -@150 := {i : @57} -> {k : @57} -> {fs : @59} -> {tys : @60} -> (h : @109) -> (hf : @142) -> @143 @92 -@151 := @140 @9 -@152 := @105 @9 -@161 := {k : @57} -> - {fs : @59} -> {tys : @60} -> (h : @64 (@152 @28) @74) -> (hf : @142) -> @143 @10 -@162 := @151 @9 -@163 := @152 @9 -@164 := @64 @163 -@165 := @164 @74 -@166 := @87 @9 -@173 := {fs : @59} -> {tys : @60} -> (h : @165) -> (hf : @142) -> @13 (@166 @68) @10 -@174 := @162 @22 -@175 := @55 @30 -@178 := @13 (@166 @22) @10 -@181 := {tys : @60} -> (h : @165) -> (hf : @175) -> @178 -@182 := @174 @23 -@183 := @73 @23 -@186 := (h : @164 @183) -> (hf : @56) -> @178 -@187 := Eq.refl.{1} -@188 := @187 @63 -@191 := @182 (@188 @163) @53 -@192 := 1 -@193 := @151 @192 -@194 := @152 @192 -@195 := @64 @194 -@196 := @195 @74 -@197 := @87 @192 -@204 := {fs : @59} -> {tys : @60} -> (h : @196) -> (hf : @142) -> @13 (@197 @68) @10 -@205 := @193 @22 -@208 := @13 (@197 @22) @10 -@211 := {tys : @60} -> (h : @196) -> (hf : @175) -> @208 -@212 := @205 @23 -@215 := (h : @195 @183) -> (hf : @56) -> @208 -@218 := @212 (@188 @194) @53 -@219 := 2 -@220 := @151 @219 -@221 := @152 @219 -@222 := @64 @221 -@223 := @222 @74 -@224 := @87 @219 -@231 := {fs : @59} -> {tys : @60} -> (h : @223) -> (hf : @142) -> @13 (@224 @68) @10 -@232 := @220 @22 -@235 := @13 (@224 @22) @10 -@238 := {tys : @60} -> (h : @223) -> (hf : @175) -> @235 -@239 := @232 @23 -@242 := (h : @222 @183) -> (hf : @56) -> @235 -@245 := @239 (@188 @221) @53 -@246 := 3 -@247 := @151 @246 -@248 := @152 @246 -@249 := @64 @248 -@250 := @249 @74 -@251 := @87 @246 -@258 := {fs : @59} -> {tys : @60} -> (h : @250) -> (hf : @142) -> @13 (@251 @68) @10 -@259 := @247 @22 -@262 := @13 (@251 @22) @10 -@265 := {tys : @60} -> (h : @250) -> (hf : @175) -> @262 -@266 := @259 @23 -@269 := (h : @249 @183) -> (hf : @56) -> @262 -@272 := @266 (@188 @248) @53 -@273 := 4 -@274 := @151 @273 -@275 := @152 @273 -@276 := @64 @275 -@277 := @276 @74 -@278 := @87 @273 -@285 := {fs : @59} -> {tys : @60} -> (h : @277) -> (hf : @142) -> @13 (@278 @68) @10 -@286 := @274 @22 -@289 := @13 (@278 @22) @10 -@292 := {tys : @60} -> (h : @277) -> (hf : @175) -> @289 -@293 := @286 @23 -@296 := (h : @276 @183) -> (hf : @56) -> @289 -@299 := @293 (@188 @275) @53 -@300 := 5 -@301 := @151 @300 -@302 := @152 @300 -@303 := @64 @302 -@304 := @303 @74 -@305 := @87 @300 -@312 := {fs : @59} -> {tys : @60} -> (h : @304) -> (hf : @142) -> @13 (@305 @68) @10 -@313 := @301 @22 -@316 := @13 (@305 @22) @10 -@319 := {tys : @60} -> (h : @304) -> (hf : @175) -> @316 -@320 := @313 @23 -@323 := (h : @303 @183) -> (hf : @56) -> @316 -@326 := @320 (@188 @302) @53 -@327 := 6 -@328 := @151 @327 -@329 := @152 @327 -@330 := @64 @329 -@331 := @330 @74 -@332 := @87 @327 -@339 := {fs : @59} -> {tys : @60} -> (h : @331) -> (hf : @142) -> @13 (@332 @68) @10 -@340 := @328 @22 -@343 := @13 (@332 @22) @10 -@346 := {tys : @60} -> (h : @331) -> (hf : @175) -> @343 -@347 := @340 @23 -@350 := (h : @330 @183) -> (hf : @56) -> @343 -@353 := @347 (@188 @329) @53 -@354 := 7 -@355 := @151 @354 -@356 := @152 @354 -@357 := @64 @356 -@358 := @357 @74 -@359 := @87 @354 -@366 := {fs : @59} -> {tys : @60} -> (h : @358) -> (hf : @142) -> @13 (@359 @68) @10 -@367 := @355 @22 -@370 := @13 (@359 @22) @10 -@373 := {tys : @60} -> (h : @358) -> (hf : @175) -> @370 -@374 := @367 @23 -@377 := (h : @357 @183) -> (hf : @56) -> @370 -@380 := @374 (@188 @356) @53 -@381 := 8 -@382 := @151 @381 -@383 := @152 @381 -@384 := @64 @383 -@385 := @384 @74 -@386 := @87 @381 -@393 := {fs : @59} -> {tys : @60} -> (h : @385) -> (hf : @142) -> @13 (@386 @68) @10 -@394 := @382 @22 -@397 := @13 (@386 @22) @10 -@400 := {tys : @60} -> (h : @385) -> (hf : @175) -> @397 -@401 := @394 @23 -@404 := (h : @384 @183) -> (hf : @56) -> @397 -@407 := @401 (@188 @383) @53 -@408 := 9 -@409 := @151 @408 -@410 := @152 @408 -@411 := @64 @410 -@412 := @411 @74 -@413 := @87 @408 -@420 := {fs : @59} -> {tys : @60} -> (h : @412) -> (hf : @142) -> @13 (@413 @68) @10 -@421 := @409 @22 -@424 := @13 (@413 @22) @10 -@427 := {tys : @60} -> (h : @412) -> (hf : @175) -> @424 -@428 := @421 @23 -@431 := (h : @411 @183) -> (hf : @56) -> @424 -@434 := @428 (@188 @410) @53 -@448 := fun (__v : @3) => - Models.Glyphs.Glyph.casesOn.{0} @17 @4 @191 @218 @245 @272 @299 @326 @353 @380 @407 @434 -@449 := @5 @30 -@451 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.Compose.RustStd.__wt_0 @30 -@452 := @21 @18 -@454 := @452 @449 @22 -@457 := Prod.{0, 0} @57 @18 -@461 := Prod.mk.{0, 0} @57 @18 @9 -@462 := @461 @449 -@463 := @20 @457 -@464 := @21 @457 -@466 := @464 @462 @463 -@467 := Bool.true -@468 := LexLeanTarget.TargetSyntax.Function -@469 := LexLeanTarget.TargetSyntax.Program.functions -@470 := @469 @0 -@471 := @20 @57 -@472 := LexLeanTarget.TargetSyntax.Ty.unit -@473 := LexLeanTarget.TargetSyntax.Value.unit -@476 := LexLeanTarget.TargetSyntax.Expr.value @472 @473 -@481 := LexLeanTarget.TargetSyntax.Function.mk @471 @23 @472 @476 -@486 := List.getD.{0} @468 @470 @9 @481 -@490 := fun (__e_n : @57) => LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.RustStd.root @4 @9 -@495 := @7 @66 @79 @88 @68 @28 -@498 := @27 @83 @76 @66 -@500 := @452 @79 @68 -@501 := @498 @500 -@502 := @21 @19 -@504 := @502 @88 @28 -@514 := {p : @24} -> - {c : @25} -> - {A : @26} -> - {v : @18} -> {t : @19} -> {vs : @59} -> {ts : @60} -> (h : @495) -> (hs : @82) -> @501 @504 -@516 := LexLeanPreservation.Rust.wtl_cons @0 -@532 := {c : @25} -> - {A : @26} -> - {v : @18} -> - {t : @19} -> - {vs : @59} -> {ts : @60} -> (h : @11 @79 @88 @68 @28) -> (hs : @113) -> @40 @76 @66 @500 @504 -@533 := @516 @1 -@546 := {A : @26} -> - {v : @18} -> - {t : @19} -> {vs : @59} -> {ts : @60} -> (h : @12 @88 @68 @28) -> (hs : @129) -> @48 @66 @500 @504 -@547 := @533 @2 -@557 := {v : @18} -> - {t : @19} -> {vs : @59} -> {ts : @60} -> (h : @13 @68 @28) -> (hs : @142) -> @54 @500 @504 -@558 := @547 @449 -@559 := @5 @88 -@561 := @13 @559 @28 -@562 := @5 @66 -@563 := @452 @562 -@571 := {t : @19} -> {vs : @59} -> {ts : @60} -> (h : @561) -> (hs : @142) -> @54 (@563 @68) @504 -@572 := @558 @10 -@573 := @5 @68 -@575 := @13 @573 @10 -@576 := @5 @79 -@577 := @452 @576 -@579 := @54 (@577 @68) -@580 := @502 @10 -@581 := @580 @28 -@586 := {vs : @59} -> {ts : @60} -> (h : @575) -> (hs : @142) -> @579 @581 -@587 := @572 @22 -@588 := @5 @28 -@590 := @13 @588 @10 -@592 := @452 @559 @22 -@593 := @54 @592 -@597 := {ts : @60} -> (h : @590) -> (hs : @175) -> @593 @581 -@598 := @587 @23 -@600 := @13 @449 @10 -@602 := @452 @573 @22 -@603 := @54 @602 -@604 := @580 @23 -@607 := (h : @600) -> (hs : @56) -> @603 @604 -@608 := @598 @451 -@610 := @452 @588 @22 -@611 := @54 @610 -@613 := (hs : @56) -> @611 @604 -@614 := @608 @53 -@615 := @54 @454 -@616 := @615 @604 -@617 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.denote -@618 := @617 @30 -@619 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.__fits_0 -@620 := @619 @30 -@622 := Models.Main.classify @30 -@624 := LexLeanTarget.TargetSyntax.Value.nat @622 -@626 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.root @30 -@627 := Bool -@628 := Ne.{1} -@629 := LexLeanPreservation.Obs -@630 := @628 @629 -@631 := LexLeanPreservation.Rel -@634 := @630 (@631 @30 @4) -@635 := LexLeanPreservation.Obs.stuck -@638 := (f : @627) -> (v : @18) -> @634 @635 -@640 := LexLeanPreservation.Rust.rel_ne_stuck @620 -@646 := (v : @18) -> @630 (@631 (@619 @28) @4) @635 -@647 := @640 @624 -@651 := @630 (@631 @620 @624) @635 -@652 := @58 @457 -@653 := LexLeanPreservation.Rust.FunSem -@654 := #9 -@660 := (n : @57) -> @653 @654 @83 @76 @4 @66 -@661 := @62 @468 -@662 := @61 @661 -@669 := LexLeanRuntime.index (@58 @468) @468 (LexLeanRuntime.instIndexableList @468) -@673 := @662 (@669 (@469 @654) @66) -@674 := @72 @468 -@675 := @674 @79 -@676 := @673 @675 -@677 := #10 -@681 := @27 @677 @654 @83 @79 -@682 := LexLeanTarget.TargetSyntax.Function.types -@683 := @682 @66 -@684 := @681 @683 -@685 := @62 @652 -@686 := @61 @685 -@687 := LexLeanTarget.TargetSemantics.bindAll -@688 := LexLeanTarget.TargetSyntax.Function.parameters -@693 := @686 (@687 (@688 @76) @66 @463) -@694 := @72 @652 -@695 := @694 @79 -@696 := @693 @695 -@697 := @62 @627 -@698 := @61 @697 -@699 := LexLeanPreservation.Rust.fnFallible -@700 := #11 -@703 := @698 (@699 @700 @654) -@704 := @72 @627 -@705 := @704 @79 -@706 := @703 @705 -@707 := LexLeanPreservation.RunConv -@708 := #13 -@712 := @707 @708 @677 @83 @79 -@714 := @630 @66 @635 -@715 := Exists.{1} -@716 := LexLeanPreservation.Rust.ROut -@717 := @715 @716 -@718 := And -@719 := LexLeanPreservation.Rust.RealizesFn -@723 := @718 (@719 @654 @83 @4) -@724 := LexLeanPreservation.Rust.RCI -@726 := @724 #15 -@727 := LexLeanPreservation.Rust.fnIdent -@728 := @727 @708 -@735 := (hne : @714) -> @717 (fun (ro : @716) => @723 (@726 @728 @700 @4)) -@750 := {p : @24} -> - {c : @25} -> - {A : @26} -> - {f : @57} -> - {fn : @468} -> - {args : @59} -> - {env : @652} -> - {F : @627} -> - {o : @629} -> - (hB : @660) -> - (hfn : @676) -> (hwt : @684) -> (hbind : @696) -> (hF : @706) -> (hA : @712) -> @735 -@752 := LexLeanPreservation.Rust.compose @0 -@753 := @653 @0 -@758 := (n : @57) -> @753 @83 @76 @4 @66 -@759 := @669 @470 -@762 := @662 (@759 @66) @675 -@766 := @40 @654 @83 @79 @683 -@767 := @707 @0 -@770 := @767 @677 @83 @79 -@784 := {c : @25} -> - {A : @26} -> - {f : @57} -> - {fn : @468} -> - {args : @59} -> - {env : @652} -> - {F : @627} -> - {o : @629} -> - (hB : @758) -> - (hfn : @762) -> (hwt : @766) -> (hbind : @696) -> (hF : @706) -> (hA : @770) -> @735 -@785 := @752 @1 -@786 := @753 @1 -@790 := (n : @57) -> @786 @76 @4 @66 -@793 := @48 @83 @79 @683 -@794 := @699 @1 -@797 := @698 (@794 @654) @705 -@798 := @724 @1 -@808 := (hbind : @696) -> - (hF : @797) -> (hA : @770) -> (hne : @714) -> @717 (fun (ro : @716) => @723 (@798 @728 @700 @4)) -@818 := {A : @26} -> - {f : @57} -> - {fn : @468} -> - {args : @59} -> - {env : @652} -> {F : @627} -> {o : @629} -> (hB : @790) -> (hfn : @762) -> (hwt : @793) -> @808 -@819 := @785 @2 -@821 := @786 @2 @4 -@823 := (n : @57) -> @821 @66 -@824 := @54 @79 -@825 := @824 @683 -@834 := {f : @57} -> - {fn : @468} -> - {args : @59} -> - {env : @652} -> {F : @627} -> {o : @629} -> (hB : @823) -> (hfn : @762) -> (hwt : @825) -> @808 -@835 := @819 @9 -@837 := (n : @57) -> @821 @9 -@838 := @759 @9 -@839 := @662 @838 -@840 := @839 @675 -@841 := @794 @9 -@842 := @698 @841 -@843 := @842 @705 -@844 := @767 @9 -@846 := @844 @83 @79 -@848 := @798 (@727 @9) -@856 := (hF : @843) -> (hA : @846) -> (hne : @714) -> @717 (fun (ro : @716) => @723 (@848 @700 @4)) -@865 := {fn : @468} -> - {args : @59} -> - {env : @652} -> - {F : @627} -> {o : @629} -> (hB : @837) -> (hfn : @840) -> (hwt : @825) -> (hbind : @696) -> @856 -@866 := @835 @486 -@868 := @839 (@674 @486) -@869 := @682 @486 -@870 := @824 @869 -@872 := @687 (@688 @486) -@884 := {args : @59} -> - {env : @652} -> - {F : @627} -> - {o : @629} -> - (hB : @837) -> (hfn : @868) -> (hwt : @870) -> (hbind : @686 (@872 @66 @463) @695) -> @856 -@885 := @866 @454 -@886 := @563 @22 -@888 := @54 @886 @869 -@891 := @452 (@5 @76) @22 -@895 := @686 (@872 @891 @463) @695 -@898 := @452 (@5 @654) @22 -@919 := {env : @652} -> - {F : @627} -> - {o : @629} -> - (hB : @837) -> - (hfn : @868) -> - (hwt : @888) -> - (hbind : @895) -> - (hF : @843) -> - (hA : @844 @898 @79) -> - (hne : @714) -> @717 (fun (ro : @716) => @723 (@848 (@452 (@5 #12) @22) @4)) -@920 := @885 @466 -@921 := @577 @22 -@923 := @54 @921 @869 -@931 := @686 (@872 @886 @463) (@694 (@464 (@461 @562) @463)) -@934 := @452 (@5 @83) @22 -@953 := {F : @627} -> - {o : @629} -> - (hB : @837) -> - (hfn : @868) -> - (hwt : @923) -> - (hbind : @931) -> - (hF : @843) -> - (hA : @844 @934 @79) -> - (hne : @714) -> @717 (fun (ro : @716) => @723 (@848 (@452 (@5 @700) @22) @4)) -@954 := @920 @467 -@955 := @593 @869 -@963 := @686 (@872 @921 @463) (@694 (@464 (@461 @576) @463)) -@965 := @842 (@704 @467) -@967 := @844 @891 @79 -@968 := @719 @467 -@987 := {o : @629} -> - (hB : @837) -> - (hfn : @868) -> - (hwt : @955) -> - (hbind : @963) -> - (hF : @965) -> - (hA : @967) -> - (hne : @714) -> @717 (fun (ro : @716) => @718 (@968 @83 @4) (@848 (@452 (@5 @677) @22) @4)) -@988 := @954 @618 -@989 := @603 @869 -@997 := @686 (@872 @592 @463) (@694 (@464 (@461 @559) @463)) -@998 := @844 @886 -@999 := @617 @66 -@1000 := @998 @999 -@1001 := @617 @76 -@1019 := (hB : @837) -> - (hfn : @868) -> - (hwt : @989) -> - (hbind : @997) -> - (hF : @965) -> - (hA : @1000) -> - (hne : @630 @1001 @635) -> @717 (fun (ro : @716) => @718 (@968 (@617 @654) @4) (@848 @898 @4)) -@1020 := @988 @490 -@1021 := @611 @869 -@1029 := @686 (@872 @602 @463) (@694 (@464 (@461 @573) @463)) -@1030 := @844 @921 -@1031 := @617 @79 -@1049 := (hfn : @868) -> - (hwt : @1021) -> - (hbind : @1029) -> - (hF : @965) -> - (hA : @1030 @1031) -> - (hne : @630 @999 @635) -> @717 (fun (ro : @716) => @718 (@968 (@617 @83) @4) (@848 @934 @4)) -@1052 := @1020 (@187 @661 @838) -@1053 := @615 @869 -@1061 := @686 (@872 @610 @463) (@694 (@464 (@461 @588) @463)) -@1062 := @844 @592 -@1063 := @617 @88 -@1079 := (hwt : @1053) -> - (hbind : @1061) -> - (hF : @965) -> - (hA : @1062 @1063) -> - (hne : @630 @1031 @635) -> @717 (fun (ro : @716) => @718 (@968 @1001 @4) (@848 @891 @4)) -@1080 := @1052 @614 -@1082 := @872 @454 @463 -@1085 := @686 @1082 (@694 @466) -@1086 := @844 @602 -@1087 := @617 @68 -@1102 := (hbind : @1085) -> - (hF : @965) -> - (hA : @1086 @1087) -> - (hne : @630 @1063 @635) -> @717 (fun (ro : @716) => @718 (@968 @999 @4) (@848 @886 @4)) -@1105 := @1080 (@187 @685 @1082) -@1106 := @844 @610 -@1107 := @617 @28 -@1121 := (hF : @965) -> - (hA : @1106 @1107) -> - (hne : @630 @1087 @635) -> @717 (fun (ro : @716) => @718 (@968 @1031 @4) (@848 @921 @4)) -@1124 := @1105 (@187 @697 @841) -@1138 := (hA : @844 @454 @618) -> - (hne : @630 @1107 @635) -> @717 (fun (ro : @716) => @718 (@968 @1063 @4) (@848 @592 @4)) -@1139 := @1124 @626 -@1150 := (hne : @630 @618 @635) -> @717 (fun (ro : @716) => @718 (@968 @1087 @4) (@848 @602 @4)) -@1151 := @1139 @647 -@1157 := @718 (@968 @1107 @4) (@848 @610 @4) -@1159 := @717 (fun (ro : @716) => @1157) -@1161 := @717 (fun (__e_ro : @716) => @1157) -@1165 := LexLeanPreservation.Rust.RepresentableL (@452 @6 @22) -@1166 := (__e_hrep : @1165) -> @1161 -@1167 := fun (__e_hrep : @1165) => @1151 -@1168 := (glyph : @3) -> @1166 -@1169 := fun (glyph : @3) => @1167 -\end{coremodule} -\end{lexlean} diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R0/RustStd.lean b/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R0/RustStd.lean deleted file mode 100644 index acfc0ed0b..000000000 --- a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R0/RustStd.lean +++ /dev/null @@ -1,234 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [{ constructors := [[], [], [], [], [], [], [], [], [], []] }], functions := [ - { parameters := [0], types := [(.adt 0)], result := .nat, - body := (.call 1 [(.var 0)]) }, - { parameters := [0], types := [(.adt 0)], result := .nat, - body := (.call 2 [(.var 0)]) }, - { parameters := [0], types := [(.adt 0)], result := .nat, - body := (.«match» .nat (.first (.call 3 [(.closure 4 []), (.build .pair (.pair (.option (.pair .nat .int)) (.list .nat)) [(.build .none (.option (.pair .nat .int)) []), (.build .cons (.list .nat) [(.value .nat (.nat 0)), (.build .cons (.list .nat) [(.value .nat (.nat 1)), (.build .cons (.list .nat) [(.value .nat (.nat 2)), (.build .cons (.list .nat) [(.value .nat (.nat 3)), (.build .cons (.list .nat) [(.value .nat (.nat 4)), (.build .cons (.list .nat) [(.value .nat (.nat 5)), (.build .cons (.list .nat) [(.value .nat (.nat 6)), (.build .cons (.list .nat) [(.value .nat (.nat 7)), (.build .cons (.list .nat) [(.value .nat (.nat 8)), (.build .cons (.list .nat) [(.value .nat (.nat 9)), (.build .nil (.list .nat) [])])])])])])])])])])])]), (.call 5 [(.var 0)])])) [(.arm .none [] (.value .nat (.nat 0))), (.arm .some [1] (.first (.var 1)))]) }, - { parameters := [0, 1, 2], types := [(.fn [(.pair (.option (.pair .nat .int)) (.list .nat)), .int] (.pair (.option (.pair .nat .int)) (.list .nat))), (.pair (.option (.pair .nat .int)) (.list .nat)), (.list .int)], result := (.pair (.option (.pair .nat .int)) (.list .nat)), - body := (.«match» (.pair (.option (.pair .nat .int)) (.list .nat)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 3 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, - { parameters := [0, 1], types := [(.pair (.option (.pair .nat .int)) (.list .nat)), .int], result := (.pair (.option (.pair .nat .int)) (.list .nat)), - body := (.«match» (.pair (.option (.pair .nat .int)) (.list .nat)) (.second (.var 0)) [(.arm .nil [] (.var 0)), (.arm .cons [2, 3] (.build .pair (.pair (.option (.pair .nat .int)) (.list .nat)) [(.«match» (.option (.pair .nat .int)) (.first (.var 0)) [(.arm .none [] (.build .some (.option (.pair .nat .int)) [(.build .pair (.pair .nat .int) [(.var 2), (.var 1)])])), (.arm .some [4] (.cond (.«match» .bool (.prim .compare [(.second (.var 4)), (.var 1)]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.build .some (.option (.pair .nat .int)) [(.build .pair (.pair .nat .int) [(.var 2), (.var 1)])]) (.build .some (.option (.pair .nat .int)) [(.var 4)])))]), (.var 3)]))]) }, - { parameters := [0], types := [(.adt 0)], result := (.list .int), - body := (.call 6 [(.call 7 [(.call 8 [(.call 9 [(.call 10 [(.var 0)])])])])]) }, - { parameters := [0], types := [(.list .int)], result := (.list .int), - body := (.first (.call 11 [(.closure 12 [(.var 0)]), (.build .pair (.pair (.list .int) (.list .int)) [(.build .nil (.list .int) []), (.call 13 [])]), (.call 14 [])])) }, - { parameters := [0], types := [(.list .int)], result := (.list .int), - body := (.call 15 [(.closure 16 []), (.build .nil (.list .int) []), (.var 0)]) }, - { parameters := [0], types := [(.list .int)], result := (.list .int), - body := (.call 15 [(.closure 17 []), (.build .nil (.list .int) []), (.var 0)]) }, - { parameters := [0], types := [(.list .int)], result := (.list .int), - body := (.first (.call 11 [(.closure 18 [(.var 0)]), (.build .pair (.pair (.list .int) (.list .int)) [(.build .nil (.list .int) []), (.call 19 [])]), (.call 20 [])])) }, - { parameters := [0], types := [(.adt 0)], result := (.list .int), - body := (.call 21 [(.var 0)]) }, - { parameters := [0, 1, 2], types := [(.fn [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int))), (.pair (.list .int) (.list .int)), (.list (.list .int))], result := (.pair (.list .int) (.list .int)), - body := (.«match» (.pair (.list .int) (.list .int)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 11 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, - { parameters := [0, 1, 2], types := [(.list .int), (.pair (.list .int) (.list .int)), (.list .int)], result := (.pair (.list .int) (.list .int)), - body := (.«match» (.pair (.list .int) (.list .int)) (.second (.var 1)) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.build .pair (.pair (.list .int) (.list .int)) [(.prim .append [(.first (.var 1)), (.build .cons (.list .int) [(.prim .intSub [(.var 3), (.prim .intNeg [(.first (.call 22 [(.closure 23 []), (.build .pair (.pair .int (.list .int)) [(.value .int (.int 0)), (.var 0)]), (.var 2)]))])]), (.build .nil (.list .int) [])])]), (.var 4)]))]) }, - { parameters := [], types := [], result := (.list .int), - body := (.build .cons (.list .int) [(.value .int (.int (-6))), (.build .cons (.list .int) [(.value .int (.int (-2))), (.build .cons (.list .int) [(.value .int (.int (-5))), (.build .cons (.list .int) [(.value .int (.int (-5))), (.build .cons (.list .int) [(.value .int (.int (-4))), (.build .cons (.list .int) [(.value .int (.int (-5))), (.build .cons (.list .int) [(.value .int (.int (-6))), (.build .cons (.list .int) [(.value .int (.int (-3))), (.build .cons (.list .int) [(.value .int (.int (-7))), (.build .cons (.list .int) [(.value .int (.int (-6))), (.build .nil (.list .int) [])])])])])])])])])])]) }, - { parameters := [], types := [], result := (.list (.list .int)), - body := (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .nil (.list (.list .int)) [])])])])])])])])])])]) }, - { parameters := [0, 1, 2], types := [(.fn [(.list .int), .int] (.list .int)), (.list .int), (.list .int)], result := (.list .int), - body := (.«match» (.list .int) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 15 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, - { parameters := [0, 1], types := [(.list .int), .int], result := (.list .int), - body := (.prim .append [(.var 0), (.build .cons (.list .int) [(.«let» 2 .int (.prim .intQuot [(.var 1), (.value .int (.int 4)), (.value .int (.int 0))]) (.cond (.«match» .bool (.prim .compare [(.var 2), (.value .int (.int 0))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.value .int (.int 0)) (.cond (.«match» .bool (.prim .compare [(.value .int (.int 127)), (.var 2)]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.value .int (.int 127)) (.var 2)))), (.build .nil (.list .int) [])])]) }, - { parameters := [0, 1], types := [(.list .int), .int], result := (.list .int), - body := (.prim .append [(.var 0), (.build .cons (.list .int) [(.cond (.«match» .bool (.prim .compare [(.var 1), (.value .int (.int 0))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.value .int (.int 0)) (.var 1)), (.build .nil (.list .int) [])])]) }, - { parameters := [0, 1, 2], types := [(.list .int), (.pair (.list .int) (.list .int)), (.list .int)], result := (.pair (.list .int) (.list .int)), - body := (.«match» (.pair (.list .int) (.list .int)) (.second (.var 1)) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.build .pair (.pair (.list .int) (.list .int)) [(.prim .append [(.first (.var 1)), (.build .cons (.list .int) [(.prim .intSub [(.var 3), (.prim .intNeg [(.first (.call 22 [(.closure 24 []), (.build .pair (.pair .int (.list .int)) [(.value .int (.int 0)), (.var 0)]), (.var 2)]))])]), (.build .nil (.list .int) [])])]), (.var 4)]))]) }, - { parameters := [], types := [], result := (.list .int), - body := (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int (-2))), (.build .cons (.list .int) [(.value .int (.int 3)), (.build .cons (.list .int) [(.value .int (.int (-5))), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .nil (.list .int) [])])])])])])])])])])])])]) }, - { parameters := [], types := [], result := (.list (.list .int)), - body := (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 3)), (.build .cons (.list .int) [(.value .int (.int (-2))), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int (-1))), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int (-3))), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int (-1))), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int (-2))), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int (-4))), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 3)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .nil (.list (.list .int)) [])])])])])])])])])])])])]) }, - { parameters := [0], types := [(.adt 0)], result := (.list .int), - body := (.«match» (.list .int) (.var 0) [(.arm (.adt 0) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 1) [] (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 2) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 3) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 4) [] (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 5) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 6) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 7) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 8) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 9) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])]))]) }, - { parameters := [0, 1, 2], types := [(.fn [(.pair .int (.list .int)), .int] (.pair .int (.list .int))), (.pair .int (.list .int)), (.list .int)], result := (.pair .int (.list .int)), - body := (.«match» (.pair .int (.list .int)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 22 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, - { parameters := [0, 1], types := [(.pair .int (.list .int)), .int], result := (.pair .int (.list .int)), - body := (.«match» (.pair .int (.list .int)) (.second (.var 0)) [(.arm .nil [] (.var 0)), (.arm .cons [2, 3] (.build .pair (.pair .int (.list .int)) [(.prim .intSub [(.first (.var 0)), (.prim .intNeg [(.prim .intMul [(.var 1), (.var 2)])])]), (.var 3)]))]) }, - { parameters := [0, 1], types := [(.pair .int (.list .int)), .int], result := (.pair .int (.list .int)), - body := (.«match» (.pair .int (.list .int)) (.second (.var 0)) [(.arm .nil [] (.var 0)), (.arm .cons [2, 3] (.build .pair (.pair .int (.list .int)) [(.prim .intSub [(.first (.var 0)), (.prim .intNeg [(.prim .intMul [(.var 1), (.var 2)])])]), (.var 3)]))]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := ((.enum (.adt 0) [{ number := 0, fields := [] }, { number := 1, fields := [] }, { number := 2, fields := [] }, { number := 3, fields := [] }, { number := 4, fields := [] }, { number := 5, fields := [] }, { number := 6, fields := [] }, { number := 7, fields := [] }, { number := 8, fields := [] }, { number := 9, fields := [] }]) :: - (.enum (.fn 0) [{ number := 4, fields := [] }]) :: - (.apply 0 [(.pair (.option (.pair .nat .int)) (.list .nat)), .int] (.pair (.option (.pair .nat .int)) (.list .nat)) false [{ function := 4, captures := [], functionFallible := false }]) :: - (.enum (.fn 1) [{ number := 12, fields := [(.list .int)] }, { number := 18, fields := [(.list .int)] }]) :: - (.apply 1 [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int)) true [{ function := 12, captures := [.clone], functionFallible := true }, { function := 18, captures := [.clone], functionFallible := true }]) :: - (.enum (.fn 2) [{ number := 16, fields := [] }, { number := 17, fields := [] }]) :: - (.apply 2 [(.list .int), .int] (.list .int) true [{ function := 16, captures := [], functionFallible := true }, { function := 17, captures := [], functionFallible := false }]) :: - (.enum (.fn 3) [{ number := 23, fields := [] }, { number := 24, fields := [] }]) :: - (.apply 3 [(.pair .int (.list .int)), .int] (.pair .int (.list .int)) true [{ function := 23, captures := [], functionFallible := true }, { function := 24, captures := [], functionFallible := true }]) :: - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible .nat) (.mk [] (.call (.function 1) [(.move (.generated .binding 0))] false))) :: - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible .nat) (.mk [] (.call (.function 2) [(.move (.generated .binding 0))] false))) :: - (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 2)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 1)), .wild]) none (.call (.function 3) [(.construct (.closure 0 4) []), (.pair (.construct (.none (.pair .nat .int)) []) (.construct .cons [(.lit (.nat 0)), (.construct .cons [(.lit (.nat 1)), (.construct .cons [(.lit (.nat 2)), (.construct .cons [(.lit (.nat 3)), (.construct .cons [(.lit (.nat 4)), (.construct .cons [(.lit (.nat 5)), (.construct .cons [(.lit (.nat 6)), (.construct .cons [(.lit (.nat 7)), (.construct .cons [(.lit (.nat 8)), (.construct .cons [(.lit (.nat 9)), (.construct (.nil .nat) [])])])])])])])])])])])), (.call (.function 5) [(.move (.generated .binding 0))] true)] false))] (.move (.generated .part 1)))))] (.matchOn (.move (.generated .holder 2)) [(.mk .none (.mk [] (.succeed (.lit (.nat 0))))), (.mk (.some (.bind (.generated .binding 1))) (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.copy (.generated .binding 1)))] (.succeed (.move (.generated .part 3)))))]))) :: - (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := (.pair (.option (.pair .nat .int)) (.list .nat)) }, { pattern := (.bind (.generated .binding 2)), type := (.list .int) }] (.pair (.option (.pair .nat .int)) (.list .nat)) (.mk [(.mk (.bind (.generated .holder 4)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 4)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 3) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 5)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 5) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]))) :: - (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := (.pair (.option (.pair .nat .int)) (.list .nat)) }, { pattern := (.bind (.generated .binding 1)), type := .int }] (.pair (.option (.pair .nat .int)) (.list .nat)) (.mk [(.mk (.bind (.generated .holder 7)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 6))]) none (.clone (.generated .binding 0)))] (.move (.generated .part 6)))))] (.matchOn (.uncons (.generated .holder 7)) [(.mk .none (.mk [] (.move (.generated .binding 0)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.pair (.block (.mk [(.mk (.bind (.generated .holder 9)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 8)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 8)))))] (.matchOn (.move (.generated .holder 9)) [(.mk .none (.mk [] (.construct .some [(.pair (.copy (.generated .binding 2)) (.copy (.generated .binding 1)))]))), (.mk (.some (.bind (.generated .binding 4))) (.mk [(.mk (.bind (.generated .holder 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 10))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 10))))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .compare) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))] (.cond (.matchOn (.move (.generated .holder 13)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.construct .some [(.pair (.copy (.generated .binding 2)) (.copy (.generated .binding 1)))])) (.mk [] (.construct .some [(.copy (.generated .binding 4))])))))]))) (.move (.generated .binding 3)))))]))) :: - (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible (.list .int)) (.mk [] (.call (.function 6) [(.call (.function 7) [(.call (.function 8) [(.call (.function 9) [(.call (.function 10) [(.move (.generated .binding 0))] false)] true)] true)] true)] false))) :: - (.function (.generated .function 6) [{ pattern := (.bind (.generated .binding 0)), type := (.list .int) }] (.fallible (.list .int)) (.mk [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.call (.function 11) [(.construct (.closure 1 12) [(.move (.generated .binding 0))]), (.pair (.construct (.nil .int) []) (.call (.function 13) [] false)), (.call (.function 14) [] false)] true))] (.succeed (.move (.generated .part 14))))) :: - (.function (.generated .function 7) [{ pattern := (.bind (.generated .binding 0)), type := (.list .int) }] (.fallible (.list .int)) (.mk [] (.call (.function 15) [(.construct (.closure 2 16) []), (.construct (.nil .int) []), (.move (.generated .binding 0))] false))) :: - (.function (.generated .function 8) [{ pattern := (.bind (.generated .binding 0)), type := (.list .int) }] (.fallible (.list .int)) (.mk [] (.call (.function 15) [(.construct (.closure 2 17) []), (.construct (.nil .int) []), (.move (.generated .binding 0))] false))) :: - (.function (.generated .function 9) [{ pattern := (.bind (.generated .binding 0)), type := (.list .int) }] (.fallible (.list .int)) (.mk [(.mk (.tuple [(.bind (.generated .part 15)), .wild]) none (.call (.function 11) [(.construct (.closure 1 18) [(.move (.generated .binding 0))]), (.pair (.construct (.nil .int) []) (.call (.function 19) [] false)), (.call (.function 20) [] false)] true))] (.succeed (.move (.generated .part 15))))) :: - (.function (.generated .function 10) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.list .int) (.mk [] (.call (.function 21) [(.move (.generated .binding 0))] false))) :: - (.function (.generated .function 11) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 1) }, { pattern := (.bind (.generated .binding 1)), type := (.pair (.list .int) (.list .int)) }, { pattern := (.bind (.generated .binding 2)), type := (.list (.list .int)) }] (.fallible (.pair (.list .int) (.list .int))) (.mk [(.mk (.bind (.generated .holder 16)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 16)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 11) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 17)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 17) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]))) :: - (.function (.generated .function 12) [{ pattern := (.bind (.generated .binding 0)), type := (.list .int) }, { pattern := (.bind (.generated .binding 1)), type := (.pair (.list .int) (.list .int)) }, { pattern := (.bind (.generated .binding 2)), type := (.list .int) }] (.fallible (.pair (.list .int) (.list .int))) (.mk [(.mk (.bind (.generated .holder 19)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 18))]) none (.clone (.generated .binding 1)))] (.move (.generated .part 18)))))] (.matchOn (.uncons (.generated .holder 19)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 20)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 20))))), (.mk (.bind (.generated .operand 26)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 21)), .wild]) none (.call (.function 22) [(.construct (.closure 3 23) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 21)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 22))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] true))), (.construct (.nil .int) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))) (.move (.generated .binding 4))))))]))) :: - (.function (.generated .function 13) [] (.list .int) (.mk [] (.construct .cons [(.lit (.int (-6))), (.construct .cons [(.lit (.int (-2))), (.construct .cons [(.lit (.int (-5))), (.construct .cons [(.lit (.int (-5))), (.construct .cons [(.lit (.int (-4))), (.construct .cons [(.lit (.int (-5))), (.construct .cons [(.lit (.int (-6))), (.construct .cons [(.lit (.int (-3))), (.construct .cons [(.lit (.int (-7))), (.construct .cons [(.lit (.int (-6))), (.construct (.nil .int) [])])])])])])])])])])]))) :: - (.function (.generated .function 14) [] (.list (.list .int)) (.mk [] (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct (.nil (.list .int)) [])])])])])])])])])])]))) :: - (.function (.generated .function 15) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 2) }, { pattern := (.bind (.generated .binding 1)), type := (.list .int) }, { pattern := (.bind (.generated .binding 2)), type := (.list .int) }] (.fallible (.list .int)) (.mk [(.mk (.bind (.generated .holder 27)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 27)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 15) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 28)) (some (.fn 2)) (.move (.generated .binding 0)))] (.apply (.generated .callee 28) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]))) :: - (.function (.generated .function 16) [{ pattern := (.bind (.generated .binding 0)), type := (.list .int) }, { pattern := (.bind (.generated .binding 1)), type := .int }] (.fallible (.list .int)) (.mk [(.mk (.bind (.generated .operand 38)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 39)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .binding 2)) (some .int) (.block (.mk [(.mk (.bind (.generated .operand 29)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 30)) none (.lit (.int 4))), (.mk (.bind (.generated .operand 31)) none (.lit (.int 0)))] (.call (.runtime .intQuot) [(.move (.generated .operand 29)), (.move (.generated .operand 30)), (.move (.generated .operand 31))] true)))), (.mk (.bind (.generated .holder 34)) none (.block (.mk [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 33)) none (.lit (.int 0)))] (.call (.runtime .compare) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] false))))] (.cond (.matchOn (.move (.generated .holder 34)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.lit (.int 0))) (.mk [(.mk (.bind (.generated .holder 37)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.lit (.int 127))), (.mk (.bind (.generated .operand 36)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false))))] (.cond (.matchOn (.move (.generated .holder 37)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.lit (.int 127))) (.mk [] (.copy (.generated .binding 2)))))))), (.construct (.nil .int) [])]))] (.succeed (.call (.runtime .appendList) [(.move (.generated .operand 38)), (.move (.generated .operand 39))] false)))) :: - (.function (.generated .function 17) [{ pattern := (.bind (.generated .binding 0)), type := (.list .int) }, { pattern := (.bind (.generated .binding 1)), type := .int }] (.list .int) (.mk [(.mk (.bind (.generated .operand 43)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 44)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .holder 42)) none (.block (.mk [(.mk (.bind (.generated .operand 40)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 41)) none (.lit (.int 0)))] (.call (.runtime .compare) [(.move (.generated .operand 40)), (.move (.generated .operand 41))] false))))] (.cond (.matchOn (.move (.generated .holder 42)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.lit (.int 0))) (.mk [] (.copy (.generated .binding 1)))))), (.construct (.nil .int) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] false))) :: - (.function (.generated .function 18) [{ pattern := (.bind (.generated .binding 0)), type := (.list .int) }, { pattern := (.bind (.generated .binding 1)), type := (.pair (.list .int) (.list .int)) }, { pattern := (.bind (.generated .binding 2)), type := (.list .int) }] (.fallible (.pair (.list .int) (.list .int))) (.mk [(.mk (.bind (.generated .holder 46)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 45))]) none (.clone (.generated .binding 1)))] (.move (.generated .part 45)))))] (.matchOn (.uncons (.generated .holder 46)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 52)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 47)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 47))))), (.mk (.bind (.generated .operand 53)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 50)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 51)) none (.block (.mk [(.mk (.bind (.generated .operand 49)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 48)), .wild]) none (.call (.function 22) [(.construct (.closure 3 24) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 48)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 49))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 50)), (.move (.generated .operand 51))] true))), (.construct (.nil .int) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 52)), (.move (.generated .operand 53))] false))) (.move (.generated .binding 4))))))]))) :: - (.function (.generated .function 19) [] (.list .int) (.mk [] (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int (-2))), (.construct .cons [(.lit (.int 3)), (.construct .cons [(.lit (.int (-5))), (.construct .cons [(.lit (.int 2)), (.construct (.nil .int) [])])])])])])])])])])])])]))) :: - (.function (.generated .function 20) [] (.list (.list .int)) (.mk [] (.construct .cons [(.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 3)), (.construct .cons [(.lit (.int (-2))), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int (-1))), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int (-3))), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int (-1))), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int (-2))), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int (-4))), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 3)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct (.nil (.list .int)) [])])])])])])])])])])])])]))) :: - (.function (.generated .function 21) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.list .int) (.mk [(.mk (.bind (.generated .holder 54)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 54)) [(.mk (.adt 0 0 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 1 []) (.mk [] (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 2 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 3 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 4 []) (.mk [] (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 5 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 6 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 7 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 8 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 9 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])])))]))) :: - (.function (.generated .function 22) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 3) }, { pattern := (.bind (.generated .binding 1)), type := (.pair .int (.list .int)) }, { pattern := (.bind (.generated .binding 2)), type := (.list .int) }] (.fallible (.pair .int (.list .int))) (.mk [(.mk (.bind (.generated .holder 55)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 55)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 22) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 56)) (some (.fn 3)) (.move (.generated .binding 0)))] (.apply (.generated .callee 56) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]))) :: - (.function (.generated .function 23) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .int (.list .int)) }, { pattern := (.bind (.generated .binding 1)), type := .int }] (.fallible (.pair .int (.list .int))) (.mk [(.mk (.bind (.generated .holder 58)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 57))]) none (.clone (.generated .binding 0)))] (.move (.generated .part 57)))))] (.matchOn (.uncons (.generated .holder 58)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 0))))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 63)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 59)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 59))))), (.mk (.bind (.generated .operand 64)) none (.block (.mk [(.mk (.bind (.generated .operand 62)) none (.block (.mk [(.mk (.bind (.generated .operand 60)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 61)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] true))))] (.call (.runtime .intNeg) [(.move (.generated .operand 62))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 63)), (.move (.generated .operand 64))] true))) (.move (.generated .binding 3))))))]))) :: - (.function (.generated .function 24) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .int (.list .int)) }, { pattern := (.bind (.generated .binding 1)), type := .int }] (.fallible (.pair .int (.list .int))) (.mk [(.mk (.bind (.generated .holder 66)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 65))]) none (.clone (.generated .binding 0)))] (.move (.generated .part 65)))))] (.matchOn (.uncons (.generated .holder 66)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 0))))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 71)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 67)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 67))))), (.mk (.bind (.generated .operand 72)) none (.block (.mk [(.mk (.bind (.generated .operand 70)) none (.block (.mk [(.mk (.bind (.generated .operand 68)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 69)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 68)), (.move (.generated .operand 69))] true))))] (.call (.runtime .intNeg) [(.move (.generated .operand 70))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 71)), (.move (.generated .operand 72))] true))) (.move (.generated .binding 3))))))]))) :: - []) } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [(([(.pair (.option (.pair .nat .int)) (.list .nat)), .int], (.pair (.option (.pair .nat .int)) (.list .nat))), false), (([(.pair (.list .int) (.list .int)), (.list .int)], (.pair (.list .int) (.list .int))), true), (([(.list .int), .int], (.list .int)), true), (([(.pair .int (.list .int)), .int], (.pair .int (.list .int))), true)] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 1) [(.move (.generated .binding 0))] false), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.callF (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 2) [(.move (.generated .binding 0))] false), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.callF (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 2)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 1)), .wild]) none (.call (.function 3) [(.construct (.closure 0 4) []), (.pair (.construct (.none (.pair .nat .int)) []) (.construct .cons [(.lit (.nat 0)), (.construct .cons [(.lit (.nat 1)), (.construct .cons [(.lit (.nat 2)), (.construct .cons [(.lit (.nat 3)), (.construct .cons [(.lit (.nat 4)), (.construct .cons [(.lit (.nat 5)), (.construct .cons [(.lit (.nat 6)), (.construct .cons [(.lit (.nat 7)), (.construct .cons [(.lit (.nat 8)), (.construct .cons [(.lit (.nat 9)), (.construct (.nil .nat) [])])])])])])])])])])])), (.call (.function 5) [(.move (.generated .binding 0))] true)] false))] (.move (.generated .part 1)))))], (.matchOn (.move (.generated .holder 2)) [(.mk .none (.mk [] (.succeed (.lit (.nat 0))))), (.mk (.some (.bind (.generated .binding 1))) (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.copy (.generated .binding 1)))] (.succeed (.move (.generated .part 3)))))]), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option (.pair .nat .int))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 1)), .wild]) none (.call (.function 3) [(.construct (.closure 0 4) []), (.pair (.construct (.none (.pair .nat .int)) []) (.construct .cons [(.lit (.nat 0)), (.construct .cons [(.lit (.nat 1)), (.construct .cons [(.lit (.nat 2)), (.construct .cons [(.lit (.nat 3)), (.construct .cons [(.lit (.nat 4)), (.construct .cons [(.lit (.nat 5)), (.construct .cons [(.lit (.nat 6)), (.construct .cons [(.lit (.nat 7)), (.construct .cons [(.lit (.nat 8)), (.construct .cons [(.lit (.nat 9)), (.construct (.nil .nat) [])])])])])])])])])])])), (.call (.function 5) [(.move (.generated .binding 0))] true)] false))]) (tail := (.move (.generated .part 1))) (Corr.first (ta := (.option (.pair .nat .int))) (tb := (.list .nat)) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.pair (.option (.pair .nat .int)) (.list .nat)), .int] (.pair (.option (.pair .nat .int)) (.list .nat))), (.pair (.option (.pair .nat .int)) (.list .nat)), (.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := false) (ff := false) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl)) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.lit (.nat 0)))) (Corr.mCons (Γ' := [(1, (.pair .nat .int), (some 1)), (0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.copy (.generated .binding 1)))]) (tail := (.succeed (.move (.generated .part 3)))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.first (ta := .nat) (tb := .int) (Corr.var rfl rfl) rfl))) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl)))) rfl rfl rfl)⟩⟩ - -theorem fun3 : FunOK program krate flags 3 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 4)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 4)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 3) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 5)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 5) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]), [(2, (.list .int), (some 2)), (1, (.pair (.option (.pair .nat .int)) (.list .nat)), (some 1)), (0, (.fn [(.pair (.option (.pair .nat .int)) (.list .nat)), .int] (.pair (.option (.pair .nat .int)) (.list .nat))), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .int)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .int), (some 2)), (1, (.pair (.option (.pair .nat .int)) (.list .nat)), (some 1)), (0, (.fn [(.pair (.option (.pair .nat .int)) (.list .nat)), .int] (.pair (.option (.pair .nat .int)) (.list .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 1))) (Corr.mCons (Γ' := [(4, (.list .int), (some 4)), (3, .int, (some 3)), (2, (.list .int), (some 2)), (1, (.pair (.option (.pair .nat .int)) (.list .nat)), (some 1)), (0, (.fn [(.pair (.option (.pair .nat .int)) (.list .nat)), .int] (.pair (.option (.pair .nat .int)) (.list .nat))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 3) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 5)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 5) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.fn [(.pair (.option (.pair .nat .int)) (.list .nat)), .int] (.pair (.option (.pair .nat .int)) (.list .nat))), (.pair (.option (.pair .nat .int)) (.list .nat)), (.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 5)) (some (.fn 0)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 5) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] false)) (Corr.apply (ps := [(.pair (.option (.pair .nat .int)) (.list .nat)), .int]) (af := false) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ - -theorem fun4 : FunOK program krate flags 4 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 7)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 6))]) none (.clone (.generated .binding 0)))] (.move (.generated .part 6)))))], (.matchOn (.uncons (.generated .holder 7)) [(.mk .none (.mk [] (.move (.generated .binding 0)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.pair (.block (.mk [(.mk (.bind (.generated .holder 9)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 8)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 8)))))] (.matchOn (.move (.generated .holder 9)) [(.mk .none (.mk [] (.construct .some [(.pair (.copy (.generated .binding 2)) (.copy (.generated .binding 1)))]))), (.mk (.some (.bind (.generated .binding 4))) (.mk [(.mk (.bind (.generated .holder 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 10))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 10))))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .compare) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))] (.cond (.matchOn (.move (.generated .holder 13)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.construct .some [(.pair (.copy (.generated .binding 2)) (.copy (.generated .binding 1)))])) (.mk [] (.construct .some [(.copy (.generated .binding 4))])))))]))) (.move (.generated .binding 3)))))]), [(1, .int, (some 1)), (0, (.pair (.option (.pair .nat .int)) (.list .nat)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 6))]) none (.clone (.generated .binding 0)))]) (tail := (.move (.generated .part 6))) (Corr.second (ta := (.option (.pair .nat .int))) (tb := (.list .nat)) (Corr.var rfl rfl) rfl)) (Corr.mCons (Γ' := [(1, .int, (some 1)), (0, (.pair (.option (.pair .nat .int)) (.list .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 0))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .int, (some 1)), (0, (.pair (.option (.pair .nat .int)) (.list .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.pair (.block (.mk [(.mk (.bind (.generated .holder 9)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 8)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 8)))))] (.matchOn (.move (.generated .holder 9)) [(.mk .none (.mk [] (.construct .some [(.pair (.copy (.generated .binding 2)) (.copy (.generated .binding 1)))]))), (.mk (.some (.bind (.generated .binding 4))) (.mk [(.mk (.bind (.generated .holder 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 10))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 10))))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .compare) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))] (.cond (.matchOn (.move (.generated .holder 13)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.construct .some [(.pair (.copy (.generated .binding 2)) (.copy (.generated .binding 1)))])) (.mk [] (.construct .some [(.copy (.generated .binding 4))])))))]))) (.move (.generated .binding 3)))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 9)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 8)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 8)))))]) (tail := (.matchOn (.move (.generated .holder 9)) [(.mk .none (.mk [] (.construct .some [(.pair (.copy (.generated .binding 2)) (.copy (.generated .binding 1)))]))), (.mk (.some (.bind (.generated .binding 4))) (.mk [(.mk (.bind (.generated .holder 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 10))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 10))))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .compare) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))] (.cond (.matchOn (.move (.generated .holder 13)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.construct .some [(.pair (.copy (.generated .binding 2)) (.copy (.generated .binding 1)))])) (.mk [] (.construct .some [(.copy (.generated .binding 4))])))))])) (Corr.matchArms (st := (.option (.pair .nat .int))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 8)), .wild]) none (.move (.generated .binding 0)))]) (tail := (.move (.generated .part 8))) (Corr.first (ta := (.option (.pair .nat .int))) (tb := (.list .nat)) (Corr.var rfl rfl) rfl)) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .int, (some 1)), (0, (.pair (.option (.pair .nat .int)) (.list .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.pair (.copy (.generated .binding 2)) (.copy (.generated .binding 1)))])) (Corr.mCons (Γ' := [(4, (.pair .nat .int), (some 4)), (3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .int, (some 1)), (0, (.pair (.option (.pair .nat .int)) (.list .nat)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 10))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 10))))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .compare) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 13)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.construct .some [(.pair (.copy (.generated .binding 2)) (.copy (.generated .binding 1)))])) (.mk [] (.construct .some [(.copy (.generated .binding 4))])))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .holder 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 10))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 10))))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .compare) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))]) (ce := (.matchOn (.move (.generated .holder 13)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 11)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 10))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 10))))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 10))]) none (.copy (.generated .binding 4)))]) (tail := (.move (.generated .part 10))) (Corr.second (ta := .nat) (tb := .int) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.pair .nat .int), (some 4)), (3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .int, (some 1)), (0, (.pair (.option (.pair .nat .int)) (.list .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.pair .nat .int), (some 4)), (3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .int, (some 1)), (0, (.pair (.option (.pair .nat .int)) (.list .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, (.pair .nat .int), (some 4)), (3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .int, (some 1)), (0, (.pair (.option (.pair .nat .int)) (.list .nat)), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.pair (.copy (.generated .binding 2)) (.copy (.generated .binding 1)))])) (lb := []) (tb := (.construct .some [(.copy (.generated .binding 4))])) (Corr.build (ts := [(.pair .nat .int)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lNil))) rfl) (Corr.build (ts := [(.pair .nat .int)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)))) rfl rfl rfl (Corr.build (ts := [(.pair .nat .int)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lNil))) rfl)) rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))))) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ - -theorem fun5 : FunOK program krate flags 5 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 6) [(.call (.function 7) [(.call (.function 8) [(.call (.function 9) [(.call (.function 10) [(.move (.generated .binding 0))] false)] true)] true)] true)] false), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.callF (ts := [(.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl)⟩⟩ - -theorem fun6 : FunOK program krate flags 6 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.call (.function 11) [(.construct (.closure 1 12) [(.move (.generated .binding 0))]), (.pair (.construct (.nil .int) []) (.call (.function 13) [] false)), (.call (.function 14) [] false)] true))], (.succeed (.move (.generated .part 14))), [(0, (.list .int), (some 0))], rfl, rfl, - (Corr.fOfB (Corr.first (ta := (.list .int)) (tb := (.list .int)) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int))), (.pair (.list .int) (.list .int)), (.list (.list .int))]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [(.list .int)]) (mask := [false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := []) (Corr.opsNil) rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := []) (Corr.opsNil) rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl))⟩⟩ - -theorem fun7 : FunOK program krate flags 7 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 15) [(.construct (.closure 2 16) []), (.construct (.nil .int) []), (.move (.generated .binding 0))] false), [(0, (.list .int), (some 0))], rfl, rfl, - (Corr.callF (ts := [(.fn [(.list .int), .int] (.list .int)), (.list .int), (.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)⟩⟩ - -theorem fun8 : FunOK program krate flags 8 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 15) [(.construct (.closure 2 17) []), (.construct (.nil .int) []), (.move (.generated .binding 0))] false), [(0, (.list .int), (some 0))], rfl, rfl, - (Corr.callF (ts := [(.fn [(.list .int), .int] (.list .int)), (.list .int), (.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := false) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)⟩⟩ - -theorem fun9 : FunOK program krate flags 9 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.tuple [(.bind (.generated .part 15)), .wild]) none (.call (.function 11) [(.construct (.closure 1 18) [(.move (.generated .binding 0))]), (.pair (.construct (.nil .int) []) (.call (.function 19) [] false)), (.call (.function 20) [] false)] true))], (.succeed (.move (.generated .part 15))), [(0, (.list .int), (some 0))], rfl, rfl, - (Corr.fOfB (Corr.first (ta := (.list .int)) (tb := (.list .int)) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int))), (.pair (.list .int) (.list .int)), (.list (.list .int))]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [(.list .int)]) (mask := [false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := []) (Corr.opsNil) rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := []) (Corr.opsNil) rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl))⟩⟩ - -theorem fun10 : FunOK program krate flags 10 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 21) [(.move (.generated .binding 0))] false), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun11 : FunOK program krate flags 11 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 16)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 16)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 11) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 17)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 17) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]), [(2, (.list (.list .int)), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.fn [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int))), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.list .int))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.list .int)), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.fn [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list (.list .int)), (some 4)), (3, (.list .int), (some 3)), (2, (.list (.list .int)), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.fn [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 11) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 17)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 17) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int))), (.pair (.list .int) (.list .int)), (.list (.list .int))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 17)) (some (.fn 1)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 17) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true)) (Corr.apply (ps := [(.pair (.list .int) (.list .int)), (.list .int)]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ - -theorem fun12 : FunOK program krate flags 12 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 19)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 18))]) none (.clone (.generated .binding 1)))] (.move (.generated .part 18)))))], (.matchOn (.uncons (.generated .holder 19)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 20)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 20))))), (.mk (.bind (.generated .operand 26)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 21)), .wild]) none (.call (.function 22) [(.construct (.closure 3 23) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 21)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 22))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] true))), (.construct (.nil .int) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))) (.move (.generated .binding 4))))))]), [(2, (.list .int), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.list .int), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .int)) (U := []) (view := true) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 18))]) none (.clone (.generated .binding 1)))]) (tail := (.move (.generated .part 18))) (Corr.second (ta := (.list .int)) (tb := (.list .int)) (Corr.var rfl rfl) rfl)) (Corr.mCons (Γ' := [(2, (.list .int), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.list .int), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list .int), (some 4)), (3, .int, (some 3)), (2, (.list .int), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.list .int), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 20)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 20))))), (.mk (.bind (.generated .operand 26)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 21)), .wild]) none (.call (.function 22) [(.construct (.closure 3 23) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 21)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 22))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] true))), (.construct (.nil .int) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))) (.move (.generated .binding 4))))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 25)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 20)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 20))))), (.mk (.bind (.generated .operand 26)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 21)), .wild]) none (.call (.function 22) [(.construct (.closure 3 23) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 21)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 22))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] true))), (.construct (.nil .int) [])]))]) (tail := (.call (.runtime .appendList) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false)) (Corr.prim (ts := [(.list .int), (.list .int)]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 20)), .wild]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 20))) (Corr.first (ta := (.list .int)) (tb := (.list .int)) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 21)), .wild]) none (.call (.function 22) [(.construct (.closure 3 23) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 21)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 22))] true))))]) (tail := (.call (.runtime .intSub) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] true)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 21)), .wild]) none (.call (.function 22) [(.construct (.closure 3 23) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 21)))))]) (tail := (.call (.runtime .intNeg) [(.move (.generated .operand 22))] true)) (Corr.prim (ts := [.int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 21)), .wild]) none (.call (.function 22) [(.construct (.closure 3 23) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))]) (tail := (.move (.generated .part 21))) (Corr.first (ta := .int) (tb := (.list .int)) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.pair .int (.list .int)), .int] (.pair .int (.list .int))), (.pair .int (.list .int)), (.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl)) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))))) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ - -theorem fun13 : FunOK program krate flags 13 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct .cons [(.lit (.int (-6))), (.construct .cons [(.lit (.int (-2))), (.construct .cons [(.lit (.int (-5))), (.construct .cons [(.lit (.int (-5))), (.construct .cons [(.lit (.int (-4))), (.construct .cons [(.lit (.int (-5))), (.construct .cons [(.lit (.int (-6))), (.construct .cons [(.lit (.int (-3))), (.construct .cons [(.lit (.int (-7))), (.construct .cons [(.lit (.int (-6))), (.construct (.nil .int) [])])])])])])])])])])]), [], rfl, rfl, - (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)⟩⟩ - -theorem fun14 : FunOK program krate flags 14 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct (.nil (.list .int)) [])])])])])])])])])])]), [], rfl, rfl, - (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)⟩⟩ - -theorem fun15 : FunOK program krate flags 15 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 27)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 27)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 15) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 28)) (some (.fn 2)) (.move (.generated .binding 0)))] (.apply (.generated .callee 28) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]), [(2, (.list .int), (some 2)), (1, (.list .int), (some 1)), (0, (.fn [(.list .int), .int] (.list .int)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .int)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .int), (some 2)), (1, (.list .int), (some 1)), (0, (.fn [(.list .int), .int] (.list .int)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list .int), (some 4)), (3, .int, (some 3)), (2, (.list .int), (some 2)), (1, (.list .int), (some 1)), (0, (.fn [(.list .int), .int] (.list .int)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 15) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 28)) (some (.fn 2)) (.move (.generated .binding 0)))] (.apply (.generated .callee 28) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.list .int), .int] (.list .int)), (.list .int), (.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 28)) (some (.fn 2)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 28) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true)) (Corr.apply (ps := [(.list .int), .int]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ - -theorem fun16 : FunOK program krate flags 16 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 38)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 39)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .binding 2)) (some .int) (.block (.mk [(.mk (.bind (.generated .operand 29)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 30)) none (.lit (.int 4))), (.mk (.bind (.generated .operand 31)) none (.lit (.int 0)))] (.call (.runtime .intQuot) [(.move (.generated .operand 29)), (.move (.generated .operand 30)), (.move (.generated .operand 31))] true)))), (.mk (.bind (.generated .holder 34)) none (.block (.mk [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 33)) none (.lit (.int 0)))] (.call (.runtime .compare) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] false))))] (.cond (.matchOn (.move (.generated .holder 34)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.lit (.int 0))) (.mk [(.mk (.bind (.generated .holder 37)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.lit (.int 127))), (.mk (.bind (.generated .operand 36)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false))))] (.cond (.matchOn (.move (.generated .holder 37)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.lit (.int 127))) (.mk [] (.copy (.generated .binding 2)))))))), (.construct (.nil .int) [])]))], (.succeed (.call (.runtime .appendList) [(.move (.generated .operand 38)), (.move (.generated .operand 39))] false)), [(1, .int, (some 1)), (0, (.list .int), (some 0))], rfl, rfl, - (Corr.fOfB (Corr.prim (ts := [(.list .int), (.list .int)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .binding 2)) (some .int) (.block (.mk [(.mk (.bind (.generated .operand 29)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 30)) none (.lit (.int 4))), (.mk (.bind (.generated .operand 31)) none (.lit (.int 0)))] (.call (.runtime .intQuot) [(.move (.generated .operand 29)), (.move (.generated .operand 30)), (.move (.generated .operand 31))] true)))), (.mk (.bind (.generated .holder 34)) none (.block (.mk [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 33)) none (.lit (.int 0)))] (.call (.runtime .compare) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 34)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.lit (.int 0))) (.mk [(.mk (.bind (.generated .holder 37)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.lit (.int 127))), (.mk (.bind (.generated .operand 36)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false))))] (.cond (.matchOn (.move (.generated .holder 37)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.lit (.int 127))) (.mk [] (.copy (.generated .binding 2))))))) (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 29)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 30)) none (.lit (.int 4))), (.mk (.bind (.generated .operand 31)) none (.lit (.int 0)))]) (tail := (.call (.runtime .intQuot) [(.move (.generated .operand 29)), (.move (.generated .operand 30)), (.move (.generated .operand 31))] true)) (Corr.prim (ts := [.int, .int, .int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := [(.mk (.bind (.generated .holder 34)) none (.block (.mk [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 33)) none (.lit (.int 0)))] (.call (.runtime .compare) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] false))))]) (ce := (.matchOn (.move (.generated .holder 34)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 33)) none (.lit (.int 0)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] false)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(2, .int, (some 2)), (1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, .int, (some 2)), (1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(2, .int, (some 2)), (1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.int 0))) (lb := [(.mk (.bind (.generated .holder 37)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.lit (.int 127))), (.mk (.bind (.generated .operand 36)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false))))]) (tb := (.cond (.matchOn (.move (.generated .holder 37)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.lit (.int 127))) (.mk [] (.copy (.generated .binding 2))))) (Corr.bOfE (Corr.value rfl rfl)) (Corr.cond (lc := [(.mk (.bind (.generated .holder 37)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.lit (.int 127))), (.mk (.bind (.generated .operand 36)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false))))]) (ce := (.matchOn (.move (.generated .holder 37)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 35)) none (.lit (.int 127))), (.mk (.bind (.generated .operand 36)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(2, .int, (some 2)), (1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, .int, (some 2)), (1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(2, .int, (some 2)), (1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.int 127))) (lb := []) (tb := (.copy (.generated .binding 2))) (Corr.bOfE (Corr.value rfl rfl)) (Corr.bOfE (Corr.var rfl rfl)))))))) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl))⟩⟩ - -theorem fun17 : FunOK program krate flags 17 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 43)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 44)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .holder 42)) none (.block (.mk [(.mk (.bind (.generated .operand 40)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 41)) none (.lit (.int 0)))] (.call (.runtime .compare) [(.move (.generated .operand 40)), (.move (.generated .operand 41))] false))))] (.cond (.matchOn (.move (.generated .holder 42)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.lit (.int 0))) (.mk [] (.copy (.generated .binding 1)))))), (.construct (.nil .int) [])]))], (.call (.runtime .appendList) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] false), [(1, .int, (some 1)), (0, (.list .int), (some 0))], rfl, rfl, - (Corr.prim (ts := [(.list .int), (.list .int)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 42)) none (.block (.mk [(.mk (.bind (.generated .operand 40)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 41)) none (.lit (.int 0)))] (.call (.runtime .compare) [(.move (.generated .operand 40)), (.move (.generated .operand 41))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 42)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.lit (.int 0))) (.mk [] (.copy (.generated .binding 1))))) (Corr.cond (lc := [(.mk (.bind (.generated .holder 42)) none (.block (.mk [(.mk (.bind (.generated .operand 40)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 41)) none (.lit (.int 0)))] (.call (.runtime .compare) [(.move (.generated .operand 40)), (.move (.generated .operand 41))] false))))]) (ce := (.matchOn (.move (.generated .holder 42)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 40)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 41)) none (.lit (.int 0)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 40)), (.move (.generated .operand 41))] false)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.int 0))) (lb := []) (tb := (.copy (.generated .binding 1))) (Corr.bOfE (Corr.value rfl rfl)) (Corr.bOfE (Corr.var rfl rfl))))) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun18 : FunOK program krate flags 18 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 46)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 45))]) none (.clone (.generated .binding 1)))] (.move (.generated .part 45)))))], (.matchOn (.uncons (.generated .holder 46)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 52)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 47)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 47))))), (.mk (.bind (.generated .operand 53)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 50)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 51)) none (.block (.mk [(.mk (.bind (.generated .operand 49)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 48)), .wild]) none (.call (.function 22) [(.construct (.closure 3 24) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 48)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 49))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 50)), (.move (.generated .operand 51))] true))), (.construct (.nil .int) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 52)), (.move (.generated .operand 53))] false))) (.move (.generated .binding 4))))))]), [(2, (.list .int), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.list .int), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .int)) (U := []) (view := true) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 45))]) none (.clone (.generated .binding 1)))]) (tail := (.move (.generated .part 45))) (Corr.second (ta := (.list .int)) (tb := (.list .int)) (Corr.var rfl rfl) rfl)) (Corr.mCons (Γ' := [(2, (.list .int), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.list .int), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list .int), (some 4)), (3, .int, (some 3)), (2, (.list .int), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.list .int), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 52)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 47)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 47))))), (.mk (.bind (.generated .operand 53)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 50)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 51)) none (.block (.mk [(.mk (.bind (.generated .operand 49)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 48)), .wild]) none (.call (.function 22) [(.construct (.closure 3 24) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 48)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 49))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 50)), (.move (.generated .operand 51))] true))), (.construct (.nil .int) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 52)), (.move (.generated .operand 53))] false))) (.move (.generated .binding 4))))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 52)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 47)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 47))))), (.mk (.bind (.generated .operand 53)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 50)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 51)) none (.block (.mk [(.mk (.bind (.generated .operand 49)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 48)), .wild]) none (.call (.function 22) [(.construct (.closure 3 24) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 48)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 49))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 50)), (.move (.generated .operand 51))] true))), (.construct (.nil .int) [])]))]) (tail := (.call (.runtime .appendList) [(.move (.generated .operand 52)), (.move (.generated .operand 53))] false)) (Corr.prim (ts := [(.list .int), (.list .int)]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 47)), .wild]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 47))) (Corr.first (ta := (.list .int)) (tb := (.list .int)) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 50)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 51)) none (.block (.mk [(.mk (.bind (.generated .operand 49)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 48)), .wild]) none (.call (.function 22) [(.construct (.closure 3 24) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 48)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 49))] true))))]) (tail := (.call (.runtime .intSub) [(.move (.generated .operand 50)), (.move (.generated .operand 51))] true)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 49)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 48)), .wild]) none (.call (.function 22) [(.construct (.closure 3 24) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 48)))))]) (tail := (.call (.runtime .intNeg) [(.move (.generated .operand 49))] true)) (Corr.prim (ts := [.int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 48)), .wild]) none (.call (.function 22) [(.construct (.closure 3 24) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))]) (tail := (.move (.generated .part 48))) (Corr.first (ta := .int) (tb := (.list .int)) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.pair .int (.list .int)), .int] (.pair .int (.list .int))), (.pair .int (.list .int)), (.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl)) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))))) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ - -theorem fun19 : FunOK program krate flags 19 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int (-2))), (.construct .cons [(.lit (.int 3)), (.construct .cons [(.lit (.int (-5))), (.construct .cons [(.lit (.int 2)), (.construct (.nil .int) [])])])])])])])])])])])])]), [], rfl, rfl, - (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)⟩⟩ - -theorem fun20 : FunOK program krate flags 20 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct .cons [(.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 3)), (.construct .cons [(.lit (.int (-2))), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int (-1))), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int (-3))), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int (-1))), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int (-2))), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int (-4))), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 3)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct (.nil (.list .int)) [])])])])])])])])])])])])]), [], rfl, rfl, - (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)⟩⟩ - -theorem fun21 : FunOK program krate flags 21 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 54)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 54)) [(.mk (.adt 0 0 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 1 []) (.mk [] (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 2 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 3 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 4 []) (.mk [] (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 5 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 6 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 7 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 8 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 9 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])])))]), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.adt 0)) (U := []) (view := false) (idx := [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 3) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 4) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 5) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 6) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 7) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 8) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 9) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun22 : FunOK program krate flags 22 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 55)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 55)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 22) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 56)) (some (.fn 3)) (.move (.generated .binding 0)))] (.apply (.generated .callee 56) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]), [(2, (.list .int), (some 2)), (1, (.pair .int (.list .int)), (some 1)), (0, (.fn [(.pair .int (.list .int)), .int] (.pair .int (.list .int))), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .int)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .int), (some 2)), (1, (.pair .int (.list .int)), (some 1)), (0, (.fn [(.pair .int (.list .int)), .int] (.pair .int (.list .int))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list .int), (some 4)), (3, .int, (some 3)), (2, (.list .int), (some 2)), (1, (.pair .int (.list .int)), (some 1)), (0, (.fn [(.pair .int (.list .int)), .int] (.pair .int (.list .int))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 22) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 56)) (some (.fn 3)) (.move (.generated .binding 0)))] (.apply (.generated .callee 56) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.pair .int (.list .int)), .int] (.pair .int (.list .int))), (.pair .int (.list .int)), (.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 56)) (some (.fn 3)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 56) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true)) (Corr.apply (ps := [(.pair .int (.list .int)), .int]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ - -theorem fun23 : FunOK program krate flags 23 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 58)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 57))]) none (.clone (.generated .binding 0)))] (.move (.generated .part 57)))))], (.matchOn (.uncons (.generated .holder 58)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 0))))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 63)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 59)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 59))))), (.mk (.bind (.generated .operand 64)) none (.block (.mk [(.mk (.bind (.generated .operand 62)) none (.block (.mk [(.mk (.bind (.generated .operand 60)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 61)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] true))))] (.call (.runtime .intNeg) [(.move (.generated .operand 62))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 63)), (.move (.generated .operand 64))] true))) (.move (.generated .binding 3))))))]), [(1, .int, (some 1)), (0, (.pair .int (.list .int)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .int)) (U := []) (view := true) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 57))]) none (.clone (.generated .binding 0)))]) (tail := (.move (.generated .part 57))) (Corr.second (ta := .int) (tb := (.list .int)) (Corr.var rfl rfl) rfl)) (Corr.mCons (Γ' := [(1, .int, (some 1)), (0, (.pair .int (.list .int)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 0)))) (Corr.mCons (Γ' := [(3, (.list .int), (some 3)), (2, .int, (some 2)), (1, .int, (some 1)), (0, (.pair .int (.list .int)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 63)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 59)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 59))))), (.mk (.bind (.generated .operand 64)) none (.block (.mk [(.mk (.bind (.generated .operand 62)) none (.block (.mk [(.mk (.bind (.generated .operand 60)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 61)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] true))))] (.call (.runtime .intNeg) [(.move (.generated .operand 62))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 63)), (.move (.generated .operand 64))] true))) (.move (.generated .binding 3))))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 63)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 59)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 59))))), (.mk (.bind (.generated .operand 64)) none (.block (.mk [(.mk (.bind (.generated .operand 62)) none (.block (.mk [(.mk (.bind (.generated .operand 60)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 61)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] true))))] (.call (.runtime .intNeg) [(.move (.generated .operand 62))] true))))]) (tail := (.call (.runtime .intSub) [(.move (.generated .operand 63)), (.move (.generated .operand 64))] true)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 59)), .wild]) none (.move (.generated .binding 0)))]) (tail := (.move (.generated .part 59))) (Corr.first (ta := .int) (tb := (.list .int)) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 62)) none (.block (.mk [(.mk (.bind (.generated .operand 60)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 61)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] true))))]) (tail := (.call (.runtime .intNeg) [(.move (.generated .operand 62))] true)) (Corr.prim (ts := [.int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 60)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 61)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .intMul) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] true)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))))) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ - -theorem fun24 : FunOK program krate flags 24 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 66)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 65))]) none (.clone (.generated .binding 0)))] (.move (.generated .part 65)))))], (.matchOn (.uncons (.generated .holder 66)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 0))))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 71)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 67)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 67))))), (.mk (.bind (.generated .operand 72)) none (.block (.mk [(.mk (.bind (.generated .operand 70)) none (.block (.mk [(.mk (.bind (.generated .operand 68)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 69)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 68)), (.move (.generated .operand 69))] true))))] (.call (.runtime .intNeg) [(.move (.generated .operand 70))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 71)), (.move (.generated .operand 72))] true))) (.move (.generated .binding 3))))))]), [(1, .int, (some 1)), (0, (.pair .int (.list .int)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .int)) (U := []) (view := true) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 65))]) none (.clone (.generated .binding 0)))]) (tail := (.move (.generated .part 65))) (Corr.second (ta := .int) (tb := (.list .int)) (Corr.var rfl rfl) rfl)) (Corr.mCons (Γ' := [(1, .int, (some 1)), (0, (.pair .int (.list .int)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 0)))) (Corr.mCons (Γ' := [(3, (.list .int), (some 3)), (2, .int, (some 2)), (1, .int, (some 1)), (0, (.pair .int (.list .int)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 71)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 67)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 67))))), (.mk (.bind (.generated .operand 72)) none (.block (.mk [(.mk (.bind (.generated .operand 70)) none (.block (.mk [(.mk (.bind (.generated .operand 68)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 69)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 68)), (.move (.generated .operand 69))] true))))] (.call (.runtime .intNeg) [(.move (.generated .operand 70))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 71)), (.move (.generated .operand 72))] true))) (.move (.generated .binding 3))))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 71)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 67)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 67))))), (.mk (.bind (.generated .operand 72)) none (.block (.mk [(.mk (.bind (.generated .operand 70)) none (.block (.mk [(.mk (.bind (.generated .operand 68)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 69)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 68)), (.move (.generated .operand 69))] true))))] (.call (.runtime .intNeg) [(.move (.generated .operand 70))] true))))]) (tail := (.call (.runtime .intSub) [(.move (.generated .operand 71)), (.move (.generated .operand 72))] true)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 67)), .wild]) none (.move (.generated .binding 0)))]) (tail := (.move (.generated .part 67))) (Corr.first (ta := .int) (tb := (.list .int)) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 70)) none (.block (.mk [(.mk (.bind (.generated .operand 68)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 69)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 68)), (.move (.generated .operand 69))] true))))]) (tail := (.call (.runtime .intNeg) [(.move (.generated .operand 70))] true)) (Corr.prim (ts := [.int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 68)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 69)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .intMul) [(.move (.generated .operand 68)), (.move (.generated .operand 69))] true)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))))) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | 3 => exact fun3 - | 4 => exact fun4 - | 5 => exact fun5 - | 6 => exact fun6 - | 7 => exact fun7 - | 8 => exact fun8 - | 9 => exact fun9 - | 10 => exact fun10 - | 11 => exact fun11 - | 12 => exact fun12 - | 13 => exact fun13 - | 14 => exact fun14 - | 15 => exact fun15 - | 16 => exact fun16 - | 17 => exact fun17 - | 18 => exact fun18 - | 19 => exact fun19 - | 20 => exact fun20 - | 21 => exact fun21 - | 22 => exact fun22 - | 23 => exact fun23 - | 24 => exact fun24 - | _ + 25 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.RustStd diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R1.lean b/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R1.lean deleted file mode 100644 index 2ddb16b4e..000000000 --- a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R1.lean +++ /dev/null @@ -1,245 +0,0 @@ -import LexLeanPreservation.Core -import LexLeanPreservation.Values -import LexLeanPreservation.Primitives -import LexLeanPreservation.Fixed -import LexLeanPreservation.Keys -import LexLeanPreservation.Templates -import LexLeanPreservation.Validate -import Models.Flows -import Models.Glyphs -import Models.Ledger -import Models.Main -import Models.Pipeline -import Models.Policy -import Models.Recognizer -import Models.Session -import Models.Triage -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -set_option linter.unusedVariables false -namespace LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1 - -def __prog : _root_.LexLeanTarget.TargetSyntax.Program := - { adts := [{ constructors := [[], [], [], [], [], [], [], [], [], []] }], functions := [ - { parameters := [0], types := [(.adt 0)], result := (.result .nat (.pair .bool .bool)), - body := (.«let» 1 (.adt 0) (.var 0) (.«let» 2 .nat (.call 1 [(.var 1)]) (.cond (.call 2 [(.var 1), (.var 2)]) (.build .ok (.result .nat (.pair .bool .bool)) [(.var 2)]) (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])])])))) }, - { parameters := [0], types := [(.adt 0)], result := .nat, - body := (.call 3 [(.var 0)]) }, - { parameters := [0, 1], types := [(.adt 0), .nat], result := .bool, - body := (.prim .natEq [(.var 1), (.call 4 [(.var 0)])]) }, - { parameters := [0], types := [(.adt 0)], result := .nat, - body := (.«match» .nat (.first (.call 5 [(.closure 6 []), (.build .pair (.pair (.option (.pair .nat .int)) (.list .nat)) [(.build .none (.option (.pair .nat .int)) []), (.build .cons (.list .nat) [(.value .nat (.nat 0)), (.build .cons (.list .nat) [(.value .nat (.nat 1)), (.build .cons (.list .nat) [(.value .nat (.nat 2)), (.build .cons (.list .nat) [(.value .nat (.nat 3)), (.build .cons (.list .nat) [(.value .nat (.nat 4)), (.build .cons (.list .nat) [(.value .nat (.nat 5)), (.build .cons (.list .nat) [(.value .nat (.nat 6)), (.build .cons (.list .nat) [(.value .nat (.nat 7)), (.build .cons (.list .nat) [(.value .nat (.nat 8)), (.build .cons (.list .nat) [(.value .nat (.nat 9)), (.build .nil (.list .nat) [])])])])])])])])])])])]), (.call 7 [(.var 0)])])) [(.arm .none [] (.value .nat (.nat 0))), (.arm .some [1] (.first (.var 1)))]) }, - { parameters := [0], types := [(.adt 0)], result := .nat, - body := (.«match» .nat (.var 0) [(.arm (.adt 0) [] (.value .nat (.nat 0))), (.arm (.adt 1) [] (.value .nat (.nat 1))), (.arm (.adt 2) [] (.value .nat (.nat 2))), (.arm (.adt 3) [] (.value .nat (.nat 3))), (.arm (.adt 4) [] (.value .nat (.nat 4))), (.arm (.adt 5) [] (.value .nat (.nat 5))), (.arm (.adt 6) [] (.value .nat (.nat 6))), (.arm (.adt 7) [] (.value .nat (.nat 7))), (.arm (.adt 8) [] (.value .nat (.nat 8))), (.arm (.adt 9) [] (.value .nat (.nat 9)))]) }, - { parameters := [0, 1, 2], types := [(.fn [(.pair (.option (.pair .nat .int)) (.list .nat)), .int] (.pair (.option (.pair .nat .int)) (.list .nat))), (.pair (.option (.pair .nat .int)) (.list .nat)), (.list .int)], result := (.pair (.option (.pair .nat .int)) (.list .nat)), - body := (.«match» (.pair (.option (.pair .nat .int)) (.list .nat)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 5 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, - { parameters := [0, 1], types := [(.pair (.option (.pair .nat .int)) (.list .nat)), .int], result := (.pair (.option (.pair .nat .int)) (.list .nat)), - body := (.«match» (.pair (.option (.pair .nat .int)) (.list .nat)) (.second (.var 0)) [(.arm .nil [] (.var 0)), (.arm .cons [2, 3] (.build .pair (.pair (.option (.pair .nat .int)) (.list .nat)) [(.«match» (.option (.pair .nat .int)) (.first (.var 0)) [(.arm .none [] (.build .some (.option (.pair .nat .int)) [(.build .pair (.pair .nat .int) [(.var 2), (.var 1)])])), (.arm .some [4] (.cond (.«match» .bool (.prim .compare [(.second (.var 4)), (.var 1)]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.build .some (.option (.pair .nat .int)) [(.build .pair (.pair .nat .int) [(.var 2), (.var 1)])]) (.build .some (.option (.pair .nat .int)) [(.var 4)])))]), (.var 3)]))]) }, - { parameters := [0], types := [(.adt 0)], result := (.list .int), - body := (.call 8 [(.call 9 [(.call 10 [(.call 11 [(.call 12 [(.var 0)])])])])]) }, - { parameters := [0], types := [(.list .int)], result := (.list .int), - body := (.first (.call 13 [(.closure 14 [(.var 0)]), (.build .pair (.pair (.list .int) (.list .int)) [(.build .nil (.list .int) []), (.call 15 [])]), (.call 16 [])])) }, - { parameters := [0], types := [(.list .int)], result := (.list .int), - body := (.call 17 [(.closure 18 []), (.build .nil (.list .int) []), (.var 0)]) }, - { parameters := [0], types := [(.list .int)], result := (.list .int), - body := (.call 17 [(.closure 19 []), (.build .nil (.list .int) []), (.var 0)]) }, - { parameters := [0], types := [(.list .int)], result := (.list .int), - body := (.first (.call 13 [(.closure 20 [(.var 0)]), (.build .pair (.pair (.list .int) (.list .int)) [(.build .nil (.list .int) []), (.call 21 [])]), (.call 22 [])])) }, - { parameters := [0], types := [(.adt 0)], result := (.list .int), - body := (.call 23 [(.var 0)]) }, - { parameters := [0, 1, 2], types := [(.fn [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int))), (.pair (.list .int) (.list .int)), (.list (.list .int))], result := (.pair (.list .int) (.list .int)), - body := (.«match» (.pair (.list .int) (.list .int)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 13 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, - { parameters := [0, 1, 2], types := [(.list .int), (.pair (.list .int) (.list .int)), (.list .int)], result := (.pair (.list .int) (.list .int)), - body := (.«match» (.pair (.list .int) (.list .int)) (.second (.var 1)) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.build .pair (.pair (.list .int) (.list .int)) [(.prim .append [(.first (.var 1)), (.build .cons (.list .int) [(.prim .intSub [(.var 3), (.prim .intNeg [(.first (.call 24 [(.closure 25 []), (.build .pair (.pair .int (.list .int)) [(.value .int (.int 0)), (.var 0)]), (.var 2)]))])]), (.build .nil (.list .int) [])])]), (.var 4)]))]) }, - { parameters := [], types := [], result := (.list .int), - body := (.build .cons (.list .int) [(.value .int (.int (-6))), (.build .cons (.list .int) [(.value .int (.int (-2))), (.build .cons (.list .int) [(.value .int (.int (-5))), (.build .cons (.list .int) [(.value .int (.int (-5))), (.build .cons (.list .int) [(.value .int (.int (-4))), (.build .cons (.list .int) [(.value .int (.int (-5))), (.build .cons (.list .int) [(.value .int (.int (-6))), (.build .cons (.list .int) [(.value .int (.int (-3))), (.build .cons (.list .int) [(.value .int (.int (-7))), (.build .cons (.list .int) [(.value .int (.int (-6))), (.build .nil (.list .int) [])])])])])])])])])])]) }, - { parameters := [], types := [], result := (.list (.list .int)), - body := (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .nil (.list (.list .int)) [])])])])])])])])])])]) }, - { parameters := [0, 1, 2], types := [(.fn [(.list .int), .int] (.list .int)), (.list .int), (.list .int)], result := (.list .int), - body := (.«match» (.list .int) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 17 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, - { parameters := [0, 1], types := [(.list .int), .int], result := (.list .int), - body := (.prim .append [(.var 0), (.build .cons (.list .int) [(.«let» 2 .int (.prim .intQuot [(.var 1), (.value .int (.int 4)), (.value .int (.int 0))]) (.cond (.«match» .bool (.prim .compare [(.var 2), (.value .int (.int 0))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.value .int (.int 0)) (.cond (.«match» .bool (.prim .compare [(.value .int (.int 127)), (.var 2)]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.value .int (.int 127)) (.var 2)))), (.build .nil (.list .int) [])])]) }, - { parameters := [0, 1], types := [(.list .int), .int], result := (.list .int), - body := (.prim .append [(.var 0), (.build .cons (.list .int) [(.cond (.«match» .bool (.prim .compare [(.var 1), (.value .int (.int 0))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.value .int (.int 0)) (.var 1)), (.build .nil (.list .int) [])])]) }, - { parameters := [0, 1, 2], types := [(.list .int), (.pair (.list .int) (.list .int)), (.list .int)], result := (.pair (.list .int) (.list .int)), - body := (.«match» (.pair (.list .int) (.list .int)) (.second (.var 1)) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.build .pair (.pair (.list .int) (.list .int)) [(.prim .append [(.first (.var 1)), (.build .cons (.list .int) [(.prim .intSub [(.var 3), (.prim .intNeg [(.first (.call 24 [(.closure 26 []), (.build .pair (.pair .int (.list .int)) [(.value .int (.int 0)), (.var 0)]), (.var 2)]))])]), (.build .nil (.list .int) [])])]), (.var 4)]))]) }, - { parameters := [], types := [], result := (.list .int), - body := (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int (-2))), (.build .cons (.list .int) [(.value .int (.int 3)), (.build .cons (.list .int) [(.value .int (.int (-5))), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .nil (.list .int) [])])])])])])])])])])])])]) }, - { parameters := [], types := [], result := (.list (.list .int)), - body := (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 3)), (.build .cons (.list .int) [(.value .int (.int (-2))), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int (-1))), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int (-3))), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int (-1))), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int (-2))), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int (-4))), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 3)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .nil (.list (.list .int)) [])])])])])])])])])])])])]) }, - { parameters := [0], types := [(.adt 0)], result := (.list .int), - body := (.«match» (.list .int) (.var 0) [(.arm (.adt 0) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 1) [] (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 2) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 3) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 4) [] (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 5) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 6) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 7) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 8) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 9) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])]))]) }, - { parameters := [0, 1, 2], types := [(.fn [(.pair .int (.list .int)), .int] (.pair .int (.list .int))), (.pair .int (.list .int)), (.list .int)], result := (.pair .int (.list .int)), - body := (.«match» (.pair .int (.list .int)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 24 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, - { parameters := [0, 1], types := [(.pair .int (.list .int)), .int], result := (.pair .int (.list .int)), - body := (.«match» (.pair .int (.list .int)) (.second (.var 0)) [(.arm .nil [] (.var 0)), (.arm .cons [2, 3] (.build .pair (.pair .int (.list .int)) [(.prim .intSub [(.first (.var 0)), (.prim .intNeg [(.prim .intMul [(.var 1), (.var 2)])])]), (.var 3)]))]) }, - { parameters := [0, 1], types := [(.pair .int (.list .int)), .int], result := (.pair .int (.list .int)), - body := (.«match» (.pair .int (.list .int)) (.second (.var 0)) [(.arm .nil [] (.var 0)), (.arm .cons [2, 3] (.build .pair (.pair .int (.list .int)) [(.prim .intSub [(.first (.var 0)), (.prim .intNeg [(.prim .intMul [(.var 1), (.var 2)])])]), (.var 3)]))]) }] } - -def __enc_0 : (Models.Glyphs.Glyph) -> _root_.LexLeanTarget.TargetSyntax.Value - | Models.Glyphs.Glyph.g0 => _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [] - | Models.Glyphs.Glyph.g1 => _root_.LexLeanTarget.TargetSyntax.Value.adt 1 [] - | Models.Glyphs.Glyph.g2 => _root_.LexLeanTarget.TargetSyntax.Value.adt 2 [] - | Models.Glyphs.Glyph.g3 => _root_.LexLeanTarget.TargetSyntax.Value.adt 3 [] - | Models.Glyphs.Glyph.g4 => _root_.LexLeanTarget.TargetSyntax.Value.adt 4 [] - | Models.Glyphs.Glyph.g5 => _root_.LexLeanTarget.TargetSyntax.Value.adt 5 [] - | Models.Glyphs.Glyph.g6 => _root_.LexLeanTarget.TargetSyntax.Value.adt 6 [] - | Models.Glyphs.Glyph.g7 => _root_.LexLeanTarget.TargetSyntax.Value.adt 7 [] - | Models.Glyphs.Glyph.g8 => _root_.LexLeanTarget.TargetSyntax.Value.adt 8 [] - | Models.Glyphs.Glyph.g9 => _root_.LexLeanTarget.TargetSyntax.Value.adt 9 [] - -def __fits_6 (_ybest : (Prod (Option (Prod Nat Int)) (List Nat))) (_yscore : Int) : Bool := - (Bool.true && (match (_ybest).2 with | List.nil => Bool.true | List.cons _ylabel _ylabels => (((Bool.true && (match (_ybest).1 with | Option.none => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.some _yleader => ((Bool.true && (Bool.true && Bool.true)) && (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((Bool.true && Bool.true) && Bool.true))))) && (Bool.true && Bool.true)) && Bool.true))) - -theorem __rel_6 (_ybest : (Prod (Option (Prod Nat Int)) (List Nat))) (_yscore : Int) : _root_.LexLeanPreservation.FunRel __prog 6 [((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int)) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) _ybest), (_root_.LexLeanTarget.TargetSyntax.Value.int _yscore)] (_root_.LexLeanPreservation.Rel (__fits_6 _ybest _yscore) ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int)) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) ((match (_ybest).2 with | List.nil => _ybest | List.cons _ylabel _ylabels => ((match (_ybest).1 with | Option.none => (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) | Option.some _yleader => (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) else (Option.some (_yleader) : (Option (Prod Nat Int))))), _ylabels))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (List Nat)) => (match __a with | List.nil => Bool.true | List.cons _ylabel _ylabels => (((Bool.true && (match (_ybest).1 with | Option.none => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.some _yleader => ((Bool.true && (Bool.true && Bool.true)) && (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((Bool.true && Bool.true) && Bool.true))))) && (Bool.true && Bool.true)) && Bool.true))) (fun (__a : (List Nat)) => (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int)) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) (match __a with | List.nil => _ybest | List.cons _ylabel _ylabels => ((match (_ybest).1 with | Option.none => (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) | Option.some _yleader => (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) else (Option.some (_yleader) : (Option (Prod Nat Int))))), _ylabels))) (_ybest).2 (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (fun (__a : (List Nat)) _ => match __a with | List.nil => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | List.cons _ylabel _ylabels => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int)) (fun (__a : (Option (Prod Nat Int))) => (match __a with | Option.none => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.some _yleader => ((Bool.true && (Bool.true && Bool.true)) && (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((Bool.true && Bool.true) && Bool.true))))) (fun (__a : (Option (Prod Nat Int))) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int)) (match __a with | Option.none => (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) | Option.some _yleader => (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) else (Option.some (_yleader) : (Option (Prod Nat Int)))))) (_ybest).1 (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (fun (__a : (Option (Prod Nat Int))) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.some _yleader => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((Bool.true && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int)) (if __b then (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) else (Option.some (_yleader) : (Option (Prod Nat Int))))) (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) (_root_.LexLeanPreservation.conv_lessThan (_root_.LexLeanPreservation.keySpec_int (_root_.LexLeanCollections.Key.compare : Int -> Int -> Ordering) (fun _ _ => rfl)) _root_.LexLeanCollections.lessThan (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some))))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))))) - -def __fits_25 (_ysum : (Prod Int (List Int))) (_yweight : Int) : Bool := - (Bool.true && (match (_ysum).2 with | List.nil => Bool.true | List.cons _yvalue _yrest => ((((Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int))) && Bool.true) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int))) && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int))) && (Bool.true && Bool.true)) && Bool.true))) - -theorem __rel_25 (_ysum : (Prod Int (List Int))) (_yweight : Int) : _root_.LexLeanPreservation.FunRel __prog 25 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) _ysum), (_root_.LexLeanTarget.TargetSyntax.Value.int _yweight)] (_root_.LexLeanPreservation.Rel (__fits_25 _ysum _yweight) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) ((match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (fun (__a : (List Int)) => (match __a with | List.nil => Bool.true | List.cons _yvalue _yrest => ((((Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int))) && Bool.true) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int))) && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int))) && (Bool.true && Bool.true)) && Bool.true))) (fun (__a : (List Int)) => (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (match __a with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest))) (_ysum).2 (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (fun (__a : (List Int)) _ => match __a with | List.nil => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | List.cons _yvalue _yrest => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_intMul _yweight _yvalue)) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_intNeg (_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_intSub (_ysum).1 (_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))))) - -def __fits_14 (_yvalues : (List Int)) (_yacc : (Prod (List Int) (List Int))) (_yrow : (List Int)) : Bool := - (Bool.true && (match (_yacc).2 with | List.nil => Bool.true | List.cons _ybias _ybiases => ((((Bool.true && (((((Bool.true && (((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Prod Int (List Int))) (__p1 : Int) => __fits_25 __p0 __p1) ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow))) && Bool.true) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int))) && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int))) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (Bool.true && Bool.true)) && Bool.true))) - -theorem __rel_14 (_yvalues : (List Int)) (_yacc : (Prod (List Int) (List Int))) (_yrow : (List Int)) : _root_.LexLeanPreservation.FunRel __prog 14 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yvalues), ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) _yacc), ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yrow)] (_root_.LexLeanPreservation.Rel (__fits_14 _yvalues _yacc _yrow) ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) ((match (_yacc).2 with | List.nil => _yacc | List.cons _ybias _ybiases => ((_root_.LexLeanRuntime.append ((_yacc).1) (((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int))) : (List Int)), _ybiases))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (fun (__a : (List Int)) => (match __a with | List.nil => Bool.true | List.cons _ybias _ybiases => ((((Bool.true && (((((Bool.true && (((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Prod Int (List Int))) (__p1 : Int) => __fits_25 __p0 __p1) ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow))) && Bool.true) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int))) && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int))) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (Bool.true && Bool.true)) && Bool.true))) (fun (__a : (List Int)) => (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (match __a with | List.nil => _yacc | List.cons _ybias _ybiases => ((_root_.LexLeanRuntime.append ((_yacc).1) (((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int))) : (List Int)), _ybiases))) (_yacc).2 (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (fun (__a : (List Int)) _ => match __a with | List.nil => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | List.cons _ybias _ybiases => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.int) (es := (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int))) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.int) (fun _ => rfl) ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (fun (__p0 : (Prod Int (List Int))) (__p1 : Int) => __fits_25 __p0 __p1) 25 [] (fun (__p0 : (Prod Int (List Int))) (__p1 : Int) => __rel_25 __p0 __p1) (p := __prog) (fi := 24) (ta := .int) (ts := (.pair .int (.list .int))) rfl (((0 : Int), _yvalues)) (_yrow)))) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_intNeg ((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_intSub _ybias (_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.int) (_yacc).1 ((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))))) - -def __fits_15 : Bool := - ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) - -theorem __rel_15 : _root_.LexLeanPreservation.FunRel __prog 15 [] (_root_.LexLeanPreservation.Rel (__fits_15) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (Models.Recognizer.outputBias))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) - -def __fits_16 : Bool := - ((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) - -theorem __rel_16 : _root_.LexLeanPreservation.FunRel __prog 16 [] (_root_.LexLeanPreservation.Rel (__fits_16) ((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (Models.Recognizer.outputWeights))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) - -def __fits_8 (_yvalues : (List Int)) : Bool := - (((Bool.true && Bool.true) && ((((Bool.true && Bool.true) && ((Bool.true && (__fits_15)) && Bool.true)) && Bool.true) && ((Bool.true && (__fits_16)) && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Prod (List Int) (List Int))) (__p1 : (List Int)) => __fits_14 (_yvalues) __p0 __p1) ((fun (_yacc : (Prod (List Int) (List Int))) (_yrow : (List Int)) => (match (_yacc).2 with | List.nil => _yacc | List.cons _ybias _ybiases => ((_root_.LexLeanRuntime.append ((_yacc).1) (((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int))) : (List Int)), _ybiases)))) ((([] : List Int), (Models.Recognizer.outputBias))) ((Models.Recognizer.outputWeights)))) - -attribute [local irreducible] Models.Recognizer.outputBias Models.Recognizer.outputWeights in -theorem __rel_8 (_yvalues : (List Int)) : _root_.LexLeanPreservation.FunRel __prog 8 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yvalues)] (_root_.LexLeanPreservation.Rel (__fits_8 _yvalues) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (Models.Recognizer.DigitNet.layer4 _yvalues))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call _root_.LexLeanPreservation.convL_nil (__rel_15)) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call _root_.LexLeanPreservation.convL_nil (__rel_16)) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (es := (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int))) (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (fun _ => rfl) ((fun (_yacc : (Prod (List Int) (List Int))) (_yrow : (List Int)) => (match (_yacc).2 with | List.nil => _yacc | List.cons _ybias _ybiases => ((_root_.LexLeanRuntime.append ((_yacc).1) (((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int))) : (List Int)), _ybiases)))) (fun (__p0 : (Prod (List Int) (List Int))) (__p1 : (List Int)) => __fits_14 (_yvalues) __p0 __p1) 14 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yvalues)] (fun (__p0 : (Prod (List Int) (List Int))) (__p1 : (List Int)) => __rel_14 (_yvalues) __p0 __p1) (p := __prog) (fi := 13) (ta := (.list .int)) (ts := (.pair (.list .int) (.list .int))) rfl ((([] : List Int), (Models.Recognizer.outputBias))) ((Models.Recognizer.outputWeights))))) - -def __fits_18 (_yout : (List Int)) (_yvalue : Int) : Bool := - ((Bool.true && ((((((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.quotient (_yvalue) ((4 : Int)) ((0 : Int)) : Int))) && (let _yquotient : Int := (_root_.LexLeanRuntime.quotient (_yvalue) ((4 : Int)) ((0 : Int)) : Int); ((Bool.true && (Bool.true && Bool.true)) && (if (_root_.LexLeanCollections.lessThan (_yquotient) ((0 : Int)) : Bool) then Bool.true else ((Bool.true && (Bool.true && Bool.true)) && (if (_root_.LexLeanCollections.lessThan ((127 : Int)) (_yquotient) : Bool) then Bool.true else Bool.true)))))) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) - -theorem __rel_18 (_yout : (List Int)) (_yvalue : Int) : _root_.LexLeanPreservation.FunRel __prog 18 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yout), (_root_.LexLeanTarget.TargetSyntax.Value.int _yvalue)] (_root_.LexLeanPreservation.Rel (__fits_18 _yout _yvalue) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) ((_root_.LexLeanRuntime.append (_yout) (((let _yquotient : Int := (_root_.LexLeanRuntime.quotient (_yvalue) ((4 : Int)) ((0 : Int)) : Int); (if (_root_.LexLeanCollections.lessThan (_yquotient) ((0 : Int)) : Bool) then (0 : Int) else (if (_root_.LexLeanCollections.lessThan ((127 : Int)) (_yquotient) : Bool) then (127 : Int) else _yquotient))) :: ([] : List Int))) : (List Int))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (let _yquotient : Int := (_root_.LexLeanRuntime.quotient (_yvalue) ((4 : Int)) ((0 : Int)) : Int); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.prim_intQuot _yvalue (4 : Int) (0 : Int))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else ((Bool.true && (Bool.true && Bool.true)) && (if (_root_.LexLeanCollections.lessThan ((127 : Int)) (_yquotient) : Bool) then Bool.true else Bool.true)))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.int (if __b then (0 : Int) else (if (_root_.LexLeanCollections.lessThan ((127 : Int)) (_yquotient) : Bool) then (127 : Int) else _yquotient))) (_root_.LexLeanCollections.lessThan (_yquotient) ((0 : Int)) : Bool) (_root_.LexLeanPreservation.conv_lessThan (_root_.LexLeanPreservation.keySpec_int (_root_.LexLeanCollections.Key.compare : Int -> Int -> Ordering) (fun _ _ => rfl)) _root_.LexLeanCollections.lessThan (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.int (if __b then (127 : Int) else _yquotient)) (_root_.LexLeanCollections.lessThan ((127 : Int)) (_yquotient) : Bool) (_root_.LexLeanPreservation.conv_lessThan (_root_.LexLeanPreservation.keySpec_int (_root_.LexLeanCollections.Key.compare : Int -> Int -> Ordering) (fun _ _ => rfl)) _root_.LexLeanCollections.lessThan (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => (_root_.LexLeanPreservation.conv_var rfl)))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.int) _yout ((let _yquotient : Int := (_root_.LexLeanRuntime.quotient (_yvalue) ((4 : Int)) ((0 : Int)) : Int); (if (_root_.LexLeanCollections.lessThan (_yquotient) ((0 : Int)) : Bool) then (0 : Int) else (if (_root_.LexLeanCollections.lessThan ((127 : Int)) (_yquotient) : Bool) then (127 : Int) else _yquotient))) :: ([] : List Int)))) - -def __fits_9 (_yvalues : (List Int)) : Bool := - ((Bool.true && ((Bool.true && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (List Int)) (__p1 : Int) => __fits_18 __p0 __p1) ((fun (_yout : (List Int)) (_yvalue : Int) => (_root_.LexLeanRuntime.append (_yout) (((let _yquotient : Int := (_root_.LexLeanRuntime.quotient (_yvalue) ((4 : Int)) ((0 : Int)) : Int); (if (_root_.LexLeanCollections.lessThan (_yquotient) ((0 : Int)) : Bool) then (0 : Int) else (if (_root_.LexLeanCollections.lessThan ((127 : Int)) (_yquotient) : Bool) then (127 : Int) else _yquotient))) :: ([] : List Int))) : (List Int)))) (([] : List Int)) (_yvalues))) - -theorem __rel_9 (_yvalues : (List Int)) : _root_.LexLeanPreservation.FunRel __prog 9 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yvalues)] (_root_.LexLeanPreservation.Rel (__fits_9 _yvalues) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (Models.Recognizer.DigitNet.layer3 _yvalues))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.int) (es := (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.int) (fun _ => rfl) ((fun (_yout : (List Int)) (_yvalue : Int) => (_root_.LexLeanRuntime.append (_yout) (((let _yquotient : Int := (_root_.LexLeanRuntime.quotient (_yvalue) ((4 : Int)) ((0 : Int)) : Int); (if (_root_.LexLeanCollections.lessThan (_yquotient) ((0 : Int)) : Bool) then (0 : Int) else (if (_root_.LexLeanCollections.lessThan ((127 : Int)) (_yquotient) : Bool) then (127 : Int) else _yquotient))) :: ([] : List Int))) : (List Int)))) (fun (__p0 : (List Int)) (__p1 : Int) => __fits_18 __p0 __p1) 18 [] (fun (__p0 : (List Int)) (__p1 : Int) => __rel_18 __p0 __p1) (p := __prog) (fi := 17) (ta := .int) (ts := (.list .int)) rfl (([] : List Int)) (_yvalues))) - -def __fits_19 (_yout : (List Int)) (_yvalue : Int) : Bool := - ((Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && (if (_root_.LexLeanCollections.lessThan (_yvalue) ((0 : Int)) : Bool) then Bool.true else Bool.true)) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) - -theorem __rel_19 (_yout : (List Int)) (_yvalue : Int) : _root_.LexLeanPreservation.FunRel __prog 19 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yout), (_root_.LexLeanTarget.TargetSyntax.Value.int _yvalue)] (_root_.LexLeanPreservation.Rel (__fits_19 _yout _yvalue) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) ((_root_.LexLeanRuntime.append (_yout) (((if (_root_.LexLeanCollections.lessThan (_yvalue) ((0 : Int)) : Bool) then (0 : Int) else _yvalue) :: ([] : List Int))) : (List Int))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.int (if __b then (0 : Int) else _yvalue)) (_root_.LexLeanCollections.lessThan (_yvalue) ((0 : Int)) : Bool) (_root_.LexLeanPreservation.conv_lessThan (_root_.LexLeanPreservation.keySpec_int (_root_.LexLeanCollections.Key.compare : Int -> Int -> Ordering) (fun _ _ => rfl)) _root_.LexLeanCollections.lessThan (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => (_root_.LexLeanPreservation.conv_var rfl))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.int) _yout ((if (_root_.LexLeanCollections.lessThan (_yvalue) ((0 : Int)) : Bool) then (0 : Int) else _yvalue) :: ([] : List Int)))) - -def __fits_10 (_yvalues : (List Int)) : Bool := - ((Bool.true && ((Bool.true && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (List Int)) (__p1 : Int) => __fits_19 __p0 __p1) ((fun (_yout : (List Int)) (_yvalue : Int) => (_root_.LexLeanRuntime.append (_yout) (((if (_root_.LexLeanCollections.lessThan (_yvalue) ((0 : Int)) : Bool) then (0 : Int) else _yvalue) :: ([] : List Int))) : (List Int)))) (([] : List Int)) (_yvalues))) - -theorem __rel_10 (_yvalues : (List Int)) : _root_.LexLeanPreservation.FunRel __prog 10 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yvalues)] (_root_.LexLeanPreservation.Rel (__fits_10 _yvalues) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (Models.Recognizer.DigitNet.layer2 _yvalues))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.int) (es := (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.int) (fun _ => rfl) ((fun (_yout : (List Int)) (_yvalue : Int) => (_root_.LexLeanRuntime.append (_yout) (((if (_root_.LexLeanCollections.lessThan (_yvalue) ((0 : Int)) : Bool) then (0 : Int) else _yvalue) :: ([] : List Int))) : (List Int)))) (fun (__p0 : (List Int)) (__p1 : Int) => __fits_19 __p0 __p1) 19 [] (fun (__p0 : (List Int)) (__p1 : Int) => __rel_19 __p0 __p1) (p := __prog) (fi := 17) (ta := .int) (ts := (.list .int)) rfl (([] : List Int)) (_yvalues))) - -def __fits_26 (_ysum : (Prod Int (List Int))) (_yweight : Int) : Bool := - (Bool.true && (match (_ysum).2 with | List.nil => Bool.true | List.cons _yvalue _yrest => ((((Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int))) && Bool.true) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int))) && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int))) && (Bool.true && Bool.true)) && Bool.true))) - -theorem __rel_26 (_ysum : (Prod Int (List Int))) (_yweight : Int) : _root_.LexLeanPreservation.FunRel __prog 26 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) _ysum), (_root_.LexLeanTarget.TargetSyntax.Value.int _yweight)] (_root_.LexLeanPreservation.Rel (__fits_26 _ysum _yweight) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) ((match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (fun (__a : (List Int)) => (match __a with | List.nil => Bool.true | List.cons _yvalue _yrest => ((((Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int))) && Bool.true) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int))) && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int))) && (Bool.true && Bool.true)) && Bool.true))) (fun (__a : (List Int)) => (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (match __a with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest))) (_ysum).2 (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (fun (__a : (List Int)) _ => match __a with | List.nil => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | List.cons _yvalue _yrest => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_intMul _yweight _yvalue)) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_intNeg (_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_intSub (_ysum).1 (_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))))) - -def __fits_20 (_yvalues : (List Int)) (_yacc : (Prod (List Int) (List Int))) (_yrow : (List Int)) : Bool := - (Bool.true && (match (_yacc).2 with | List.nil => Bool.true | List.cons _ybias _ybiases => ((((Bool.true && (((((Bool.true && (((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Prod Int (List Int))) (__p1 : Int) => __fits_26 __p0 __p1) ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow))) && Bool.true) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int))) && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int))) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (Bool.true && Bool.true)) && Bool.true))) - -theorem __rel_20 (_yvalues : (List Int)) (_yacc : (Prod (List Int) (List Int))) (_yrow : (List Int)) : _root_.LexLeanPreservation.FunRel __prog 20 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yvalues), ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) _yacc), ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yrow)] (_root_.LexLeanPreservation.Rel (__fits_20 _yvalues _yacc _yrow) ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) ((match (_yacc).2 with | List.nil => _yacc | List.cons _ybias _ybiases => ((_root_.LexLeanRuntime.append ((_yacc).1) (((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int))) : (List Int)), _ybiases))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (fun (__a : (List Int)) => (match __a with | List.nil => Bool.true | List.cons _ybias _ybiases => ((((Bool.true && (((((Bool.true && (((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Prod Int (List Int))) (__p1 : Int) => __fits_26 __p0 __p1) ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow))) && Bool.true) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int))) && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int))) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (Bool.true && Bool.true)) && Bool.true))) (fun (__a : (List Int)) => (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (match __a with | List.nil => _yacc | List.cons _ybias _ybiases => ((_root_.LexLeanRuntime.append ((_yacc).1) (((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int))) : (List Int)), _ybiases))) (_yacc).2 (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (fun (__a : (List Int)) _ => match __a with | List.nil => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | List.cons _ybias _ybiases => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.int) (es := (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int))) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.int) (fun _ => rfl) ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (fun (__p0 : (Prod Int (List Int))) (__p1 : Int) => __fits_26 __p0 __p1) 26 [] (fun (__p0 : (Prod Int (List Int))) (__p1 : Int) => __rel_26 __p0 __p1) (p := __prog) (fi := 24) (ta := .int) (ts := (.pair .int (.list .int))) rfl (((0 : Int), _yvalues)) (_yrow)))) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_intNeg ((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_intSub _ybias (_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.int) (_yacc).1 ((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))))) - -def __fits_21 : Bool := - ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) - -theorem __rel_21 : _root_.LexLeanPreservation.FunRel __prog 21 [] (_root_.LexLeanPreservation.Rel (__fits_21) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (Models.Recognizer.hiddenBias))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) - -def __fits_22 : Bool := - ((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) - -theorem __rel_22 : _root_.LexLeanPreservation.FunRel __prog 22 [] (_root_.LexLeanPreservation.Rel (__fits_22) ((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (Models.Recognizer.hiddenWeights))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) - -def __fits_11 (_yvalues : (List Int)) : Bool := - (((Bool.true && Bool.true) && ((((Bool.true && Bool.true) && ((Bool.true && (__fits_21)) && Bool.true)) && Bool.true) && ((Bool.true && (__fits_22)) && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Prod (List Int) (List Int))) (__p1 : (List Int)) => __fits_20 (_yvalues) __p0 __p1) ((fun (_yacc : (Prod (List Int) (List Int))) (_yrow : (List Int)) => (match (_yacc).2 with | List.nil => _yacc | List.cons _ybias _ybiases => ((_root_.LexLeanRuntime.append ((_yacc).1) (((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int))) : (List Int)), _ybiases)))) ((([] : List Int), (Models.Recognizer.hiddenBias))) ((Models.Recognizer.hiddenWeights)))) - -attribute [local irreducible] Models.Recognizer.hiddenBias Models.Recognizer.hiddenWeights in -theorem __rel_11 (_yvalues : (List Int)) : _root_.LexLeanPreservation.FunRel __prog 11 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yvalues)] (_root_.LexLeanPreservation.Rel (__fits_11 _yvalues) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (Models.Recognizer.DigitNet.layer1 _yvalues))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call _root_.LexLeanPreservation.convL_nil (__rel_21)) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call _root_.LexLeanPreservation.convL_nil (__rel_22)) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (es := (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int))) (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (fun _ => rfl) ((fun (_yacc : (Prod (List Int) (List Int))) (_yrow : (List Int)) => (match (_yacc).2 with | List.nil => _yacc | List.cons _ybias _ybiases => ((_root_.LexLeanRuntime.append ((_yacc).1) (((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int))) : (List Int)), _ybiases)))) (fun (__p0 : (Prod (List Int) (List Int))) (__p1 : (List Int)) => __fits_20 (_yvalues) __p0 __p1) 20 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yvalues)] (fun (__p0 : (Prod (List Int) (List Int))) (__p1 : (List Int)) => __rel_20 (_yvalues) __p0 __p1) (p := __prog) (fi := 13) (ta := (.list .int)) (ts := (.pair (.list .int) (.list .int))) rfl ((([] : List Int), (Models.Recognizer.hiddenBias))) ((Models.Recognizer.hiddenWeights))))) - -def __fits_23 (glyph : (Models.Glyphs.Glyph)) : Bool := - (Bool.true && (match glyph with | Models.Glyphs.Glyph.g0 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g1 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g2 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g3 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g4 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g5 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g6 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g7 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g8 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g9 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true))) - -theorem __rel_23 (glyph : (Models.Glyphs.Glyph)) : _root_.LexLeanPreservation.FunRel __prog 23 [(__enc_0 glyph)] (_root_.LexLeanPreservation.Rel (__fits_23 glyph) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (Models.Glyphs.encode glyph))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV __enc_0 (fun (__a : (Models.Glyphs.Glyph)) => (match __a with | Models.Glyphs.Glyph.g0 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g1 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g2 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g3 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g4 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g5 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g6 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g7 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g8 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g9 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true))) (fun (__a : (Models.Glyphs.Glyph)) => (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (match __a with | Models.Glyphs.Glyph.g0 => ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((0 : Int) :: ([] : List Int)))))))) | Models.Glyphs.Glyph.g1 => ((0 : Int) :: ((1 : Int) :: ((1 : Int) :: ((0 : Int) :: ((0 : Int) :: ((0 : Int) :: ((0 : Int) :: ([] : List Int)))))))) | Models.Glyphs.Glyph.g2 => ((1 : Int) :: ((1 : Int) :: ((0 : Int) :: ((1 : Int) :: ((1 : Int) :: ((0 : Int) :: ((1 : Int) :: ([] : List Int)))))))) | Models.Glyphs.Glyph.g3 => ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((0 : Int) :: ((0 : Int) :: ((1 : Int) :: ([] : List Int)))))))) | Models.Glyphs.Glyph.g4 => ((0 : Int) :: ((1 : Int) :: ((1 : Int) :: ((0 : Int) :: ((0 : Int) :: ((1 : Int) :: ((1 : Int) :: ([] : List Int)))))))) | Models.Glyphs.Glyph.g5 => ((1 : Int) :: ((0 : Int) :: ((1 : Int) :: ((1 : Int) :: ((0 : Int) :: ((1 : Int) :: ((1 : Int) :: ([] : List Int)))))))) | Models.Glyphs.Glyph.g6 => ((1 : Int) :: ((0 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ([] : List Int)))))))) | Models.Glyphs.Glyph.g7 => ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((0 : Int) :: ((0 : Int) :: ((0 : Int) :: ((0 : Int) :: ([] : List Int)))))))) | Models.Glyphs.Glyph.g8 => ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ([] : List Int)))))))) | Models.Glyphs.Glyph.g9 => ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((0 : Int) :: ((1 : Int) :: ((1 : Int) :: ([] : List Int)))))))))) glyph (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (Models.Glyphs.Glyph)) _ => match __a with | Models.Glyphs.Glyph.g0 => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons)) | Models.Glyphs.Glyph.g1 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons))) | Models.Glyphs.Glyph.g2 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons)))) | Models.Glyphs.Glyph.g3 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons))))) | Models.Glyphs.Glyph.g4 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons)))))) | Models.Glyphs.Glyph.g5 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons))))))) | Models.Glyphs.Glyph.g6 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons)))))))) | Models.Glyphs.Glyph.g7 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons))))))))) | Models.Glyphs.Glyph.g8 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons)))))))))) | Models.Glyphs.Glyph.g9 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons))))))))))))) - -def __fits_12 (glyph : (Models.Glyphs.Glyph)) : Bool := - ((Bool.true && Bool.true) && (__fits_23 (glyph))) - -attribute [local irreducible] Models.Glyphs.encode in -theorem __rel_12 (glyph : (Models.Glyphs.Glyph)) : _root_.LexLeanPreservation.FunRel __prog 12 [(__enc_0 glyph)] (_root_.LexLeanPreservation.Rel (__fits_12 glyph) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (Models.Recognizer.DigitNet.encoded glyph))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_23 (glyph))) - -def __fits_7 (glyph : (Models.Glyphs.Glyph)) : Bool := - ((((((((((Bool.true && Bool.true) && (__fits_12 (glyph))) && Bool.true) && (__fits_11 ((Models.Recognizer.DigitNet.encoded (glyph))))) && Bool.true) && (__fits_10 ((Models.Recognizer.DigitNet.layer1 ((Models.Recognizer.DigitNet.encoded (glyph))))))) && Bool.true) && (__fits_9 ((Models.Recognizer.DigitNet.layer2 ((Models.Recognizer.DigitNet.layer1 ((Models.Recognizer.DigitNet.encoded (glyph))))))))) && Bool.true) && (__fits_8 ((Models.Recognizer.DigitNet.layer3 ((Models.Recognizer.DigitNet.layer2 ((Models.Recognizer.DigitNet.layer1 ((Models.Recognizer.DigitNet.encoded (glyph))))))))))) - -attribute [local irreducible] Models.Recognizer.DigitNet.encoded Models.Recognizer.DigitNet.layer1 Models.Recognizer.DigitNet.layer2 Models.Recognizer.DigitNet.layer3 Models.Recognizer.DigitNet.layer4 in -theorem __rel_7 (glyph : (Models.Glyphs.Glyph)) : _root_.LexLeanPreservation.FunRel __prog 7 [(__enc_0 glyph)] (_root_.LexLeanPreservation.Rel (__fits_7 glyph) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (Models.Recognizer.DigitNet.logits glyph))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_12 (glyph))) _root_.LexLeanPreservation.convL_nil) (__rel_11 ((Models.Recognizer.DigitNet.encoded (glyph))))) _root_.LexLeanPreservation.convL_nil) (__rel_10 ((Models.Recognizer.DigitNet.layer1 ((Models.Recognizer.DigitNet.encoded (glyph))))))) _root_.LexLeanPreservation.convL_nil) (__rel_9 ((Models.Recognizer.DigitNet.layer2 ((Models.Recognizer.DigitNet.layer1 ((Models.Recognizer.DigitNet.encoded (glyph))))))))) _root_.LexLeanPreservation.convL_nil) (__rel_8 ((Models.Recognizer.DigitNet.layer3 ((Models.Recognizer.DigitNet.layer2 ((Models.Recognizer.DigitNet.layer1 ((Models.Recognizer.DigitNet.encoded (glyph))))))))))) - -def __fits_3 (glyph : (Models.Glyphs.Glyph)) : Bool := - (((Bool.true && ((((Bool.true && Bool.true) && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((Bool.true && Bool.true) && (__fits_7 (glyph))) && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Prod (Option (Prod Nat Int)) (List Nat))) (__p1 : Int) => __fits_6 __p0 __p1) ((fun (_ybest : (Prod (Option (Prod Nat Int)) (List Nat))) (_yscore : Int) => (match (_ybest).2 with | List.nil => _ybest | List.cons _ylabel _ylabels => ((match (_ybest).1 with | Option.none => (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) | Option.some _yleader => (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) else (Option.some (_yleader) : (Option (Prod Nat Int))))), _ylabels)))) (((Option.none : (Option (Prod Nat Int))), ((0 : Nat) :: ((1 : Nat) :: ((2 : Nat) :: ((3 : Nat) :: ((4 : Nat) :: ((5 : Nat) :: ((6 : Nat) :: ((7 : Nat) :: ((8 : Nat) :: ((9 : Nat) :: ([] : List Nat))))))))))))) ((Models.Recognizer.DigitNet.logits (glyph))))) && (match ((_root_.LexLeanCollections.listFold ((fun (_ybest : (Prod (Option (Prod Nat Int)) (List Nat))) (_yscore : Int) => (match (_ybest).2 with | List.nil => _ybest | List.cons _ylabel _ylabels => ((match (_ybest).1 with | Option.none => (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) | Option.some _yleader => (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) else (Option.some (_yleader) : (Option (Prod Nat Int))))), _ylabels)))) (((Option.none : (Option (Prod Nat Int))), ((0 : Nat) :: ((1 : Nat) :: ((2 : Nat) :: ((3 : Nat) :: ((4 : Nat) :: ((5 : Nat) :: ((6 : Nat) :: ((7 : Nat) :: ((8 : Nat) :: ((9 : Nat) :: ([] : List Nat))))))))))))) ((Models.Recognizer.DigitNet.logits (glyph))) : (Prod (Option (Prod Nat Int)) (List Nat)))).1 with | Option.none => Bool.true | Option.some _ywinner => Bool.true)) - -attribute [local irreducible] Models.Recognizer.DigitNet.logits in -theorem __rel_3 (glyph : (Models.Glyphs.Glyph)) : _root_.LexLeanPreservation.FunRel __prog 3 [(__enc_0 glyph)] (_root_.LexLeanPreservation.Rel (__fits_3 glyph) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Models.Recognizer.DigitNet glyph))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int)) (fun (__a : (Option (Prod Nat Int))) => (match __a with | Option.none => Bool.true | Option.some _ywinner => Bool.true)) (fun (__a : (Option (Prod Nat Int))) => _root_.LexLeanTarget.TargetSyntax.Value.nat (match __a with | Option.none => (0 : Nat) | Option.some _ywinner => (_ywinner).1)) ((_root_.LexLeanCollections.listFold ((fun (_ybest : (Prod (Option (Prod Nat Int)) (List Nat))) (_yscore : Int) => (match (_ybest).2 with | List.nil => _ybest | List.cons _ylabel _ylabels => ((match (_ybest).1 with | Option.none => (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) | Option.some _yleader => (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) else (Option.some (_yleader) : (Option (Prod Nat Int))))), _ylabels)))) (((Option.none : (Option (Prod Nat Int))), ((0 : Nat) :: ((1 : Nat) :: ((2 : Nat) :: ((3 : Nat) :: ((4 : Nat) :: ((5 : Nat) :: ((6 : Nat) :: ((7 : Nat) :: ((8 : Nat) :: ((9 : Nat) :: ([] : List Nat))))))))))))) ((Models.Recognizer.DigitNet.logits (glyph))) : (Prod (Option (Prod Nat Int)) (List Nat)))).1 (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_7 (glyph))) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.int) (es := (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int)) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat))) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.int) (fun _ => rfl) ((fun (_ybest : (Prod (Option (Prod Nat Int)) (List Nat))) (_yscore : Int) => (match (_ybest).2 with | List.nil => _ybest | List.cons _ylabel _ylabels => ((match (_ybest).1 with | Option.none => (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) | Option.some _yleader => (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) else (Option.some (_yleader) : (Option (Prod Nat Int))))), _ylabels)))) (fun (__p0 : (Prod (Option (Prod Nat Int)) (List Nat))) (__p1 : Int) => __fits_6 __p0 __p1) 6 [] (fun (__p0 : (Prod (Option (Prod Nat Int)) (List Nat))) (__p1 : Int) => __rel_6 __p0 __p1) (p := __prog) (fi := 5) (ta := .int) (ts := (.pair (.option (.pair .nat .int)) (.list .nat))) rfl (((Option.none : (Option (Prod Nat Int))), ((0 : Nat) :: ((1 : Nat) :: ((2 : Nat) :: ((3 : Nat) :: ((4 : Nat) :: ((5 : Nat) :: ((6 : Nat) :: ((7 : Nat) :: ((8 : Nat) :: ((9 : Nat) :: ([] : List Nat))))))))))))) ((Models.Recognizer.DigitNet.logits (glyph)))))) (fun (__a : (Option (Prod Nat Int))) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value) | Option.some _ywinner => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)))))) - -def __fits_1 (_yinput : (Models.Glyphs.Glyph)) : Bool := - ((Bool.true && Bool.true) && (__fits_3 (_yinput))) - -attribute [local irreducible] Models.Recognizer.DigitNet in -theorem __rel_1 (_yinput : (Models.Glyphs.Glyph)) : _root_.LexLeanPreservation.FunRel __prog 1 [(__enc_0 _yinput)] (_root_.LexLeanPreservation.Rel (__fits_1 _yinput) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Models.Recognizer.RawDigitModel _yinput))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_3 (_yinput))) - -def __fits_4 (glyph : (Models.Glyphs.Glyph)) : Bool := - (Bool.true && (match glyph with | Models.Glyphs.Glyph.g0 => Bool.true | Models.Glyphs.Glyph.g1 => Bool.true | Models.Glyphs.Glyph.g2 => Bool.true | Models.Glyphs.Glyph.g3 => Bool.true | Models.Glyphs.Glyph.g4 => Bool.true | Models.Glyphs.Glyph.g5 => Bool.true | Models.Glyphs.Glyph.g6 => Bool.true | Models.Glyphs.Glyph.g7 => Bool.true | Models.Glyphs.Glyph.g8 => Bool.true | Models.Glyphs.Glyph.g9 => Bool.true)) - -theorem __rel_4 (glyph : (Models.Glyphs.Glyph)) : _root_.LexLeanPreservation.FunRel __prog 4 [(__enc_0 glyph)] (_root_.LexLeanPreservation.Rel (__fits_4 glyph) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Models.Glyphs.digitOf glyph))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV __enc_0 (fun (__a : (Models.Glyphs.Glyph)) => (match __a with | Models.Glyphs.Glyph.g0 => Bool.true | Models.Glyphs.Glyph.g1 => Bool.true | Models.Glyphs.Glyph.g2 => Bool.true | Models.Glyphs.Glyph.g3 => Bool.true | Models.Glyphs.Glyph.g4 => Bool.true | Models.Glyphs.Glyph.g5 => Bool.true | Models.Glyphs.Glyph.g6 => Bool.true | Models.Glyphs.Glyph.g7 => Bool.true | Models.Glyphs.Glyph.g8 => Bool.true | Models.Glyphs.Glyph.g9 => Bool.true)) (fun (__a : (Models.Glyphs.Glyph)) => _root_.LexLeanTarget.TargetSyntax.Value.nat (match __a with | Models.Glyphs.Glyph.g0 => (0 : Nat) | Models.Glyphs.Glyph.g1 => (1 : Nat) | Models.Glyphs.Glyph.g2 => (2 : Nat) | Models.Glyphs.Glyph.g3 => (3 : Nat) | Models.Glyphs.Glyph.g4 => (4 : Nat) | Models.Glyphs.Glyph.g5 => (5 : Nat) | Models.Glyphs.Glyph.g6 => (6 : Nat) | Models.Glyphs.Glyph.g7 => (7 : Nat) | Models.Glyphs.Glyph.g8 => (8 : Nat) | Models.Glyphs.Glyph.g9 => (9 : Nat))) glyph (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (Models.Glyphs.Glyph)) _ => match __a with | Models.Glyphs.Glyph.g0 => (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value) | Models.Glyphs.Glyph.g1 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value)) | Models.Glyphs.Glyph.g2 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value))) | Models.Glyphs.Glyph.g3 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value)))) | Models.Glyphs.Glyph.g4 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value))))) | Models.Glyphs.Glyph.g5 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value)))))) | Models.Glyphs.Glyph.g6 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value))))))) | Models.Glyphs.Glyph.g7 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value)))))))) | Models.Glyphs.Glyph.g8 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value))))))))) | Models.Glyphs.Glyph.g9 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value)))))))))))) - -def __fits_2 (glyph : (Models.Glyphs.Glyph)) (digit : Nat) : Bool := - ((Bool.true && (((Bool.true && Bool.true) && (__fits_4 (glyph))) && Bool.true)) && Bool.true) - -attribute [local irreducible] Models.Glyphs.digitOf in -theorem __rel_2 (glyph : (Models.Glyphs.Glyph)) (digit : Nat) : _root_.LexLeanPreservation.FunRel __prog 2 [(__enc_0 glyph), (_root_.LexLeanTarget.TargetSyntax.Value.nat digit)] (_root_.LexLeanPreservation.Rel (__fits_2 glyph digit) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Models.Recognizer.recognizesCheck glyph digit))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_4 (glyph))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq digit (Models.Glyphs.digitOf (glyph)))) - -def __fits_0 (glyph : (Models.Glyphs.Glyph)) : Bool := - (Bool.true && (let _ychecked1_input : (Models.Glyphs.Glyph) := glyph; (((Bool.true && Bool.true) && (__fits_1 (_ychecked1_input))) && (let _ychecked1_output : Nat := (Models.Recognizer.RawDigitModel (_ychecked1_input)); (((Bool.true && (Bool.true && Bool.true)) && (__fits_2 (_ychecked1_input) (_ychecked1_output))) && (if (Models.Recognizer.recognizesCheck (_ychecked1_input) (_ychecked1_output)) then ((Bool.true && Bool.true) && Bool.true) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))))) - -attribute [local irreducible] Models.Recognizer.RawDigitModel Models.Recognizer.recognizesCheck in -theorem __rel_0 (glyph : (Models.Glyphs.Glyph)) : _root_.LexLeanPreservation.FunRel __prog 0 [(__enc_0 glyph)] (_root_.LexLeanPreservation.Rel (__fits_0 glyph) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (Models.Main.classifyChecked glyph))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (let _ychecked1_input : (Models.Glyphs.Glyph) := glyph; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_var rfl) (let _ychecked1_output : Nat := (Models.Recognizer.RawDigitModel (_ychecked1_input)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_1 (_ychecked1_input))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && Bool.true) && Bool.true) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Except.ok (_ychecked1_output) : (Except (Prod Bool Bool) Nat)) else (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)))) (Models.Recognizer.recognizesCheck (_ychecked1_input) (_ychecked1_output)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_2 (_ychecked1_input) (_ychecked1_output))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error))))) - -def denote (glyph : (Models.Glyphs.Glyph)) : _root_.LexLeanPreservation.Obs := - _root_.cond (__fits_0 glyph) (_root_.LexLeanPreservation.Obs.value (((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (Models.Main.classifyChecked glyph)))) _root_.LexLeanPreservation.Obs.overflow - -theorem root (glyph : (Models.Glyphs.Glyph)) : _root_.LexLeanPreservation.RunConv __prog 0 [(__enc_0 glyph)] (_root_.LexLeanPreservation.Rel (__fits_0 glyph) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (Models.Main.classifyChecked glyph))) := - _root_.LexLeanPreservation.run_of_funRel (__rel_0 glyph) - -end LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1 diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R1/Compose/RustStd.lex.tex b/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R1/Compose/RustStd.lex.tex deleted file mode 100644 index f6dafc6a7..000000000 --- a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R1/Compose/RustStd.lex.tex +++ /dev/null @@ -1,590 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1, - LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.Compose.RustStd.__wt_0 : @16 := @448 { - all: [LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.Compose.RustStd.__wt_0], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.Compose.RustStd.root : @1181 := @1182 { - all: [LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.RustStd.program -@1 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.RustStd.krate -@2 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.RustStd.flags -@3 := Models.Glyphs.Glyph -@4 := #0 -@5 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.__enc_0 -@6 := @5 @4 -@7 := LexLeanPreservation.Rust.WT -@8 := LexLeanTarget.TargetSyntax.Ty.adt -@9 := 0 -@10 := @8 @9 -@11 := @7 @0 -@12 := @11 @1 -@13 := @12 @2 -@15 := @13 @6 @10 -@16 := (__v : @3) -> @15 -@17 := fun (__v : @3) => @15 -@18 := LexLeanTarget.TargetSyntax.Value -@19 := LexLeanTarget.TargetSyntax.Ty -@20 := List.nil.{0} -@21 := List.cons.{0} -@22 := @20 @18 -@23 := @20 @19 -@24 := LexLeanTarget.TargetSyntax.Program -@25 := LexLeanPreservation.Rust.RCrate -@26 := LexLeanPreservation.Rust.Flags -@27 := LexLeanPreservation.Rust.WTL -@28 := #2 -@29 := @27 @28 -@30 := #1 -@37 := {p : @24} -> {c : @25} -> {A : @26} -> @29 @30 @4 @22 @23 -@39 := LexLeanPreservation.Rust.wtl_nil @0 -@40 := @27 @0 -@46 := {c : @25} -> {A : @26} -> @40 @30 @4 @22 @23 -@47 := @39 @1 -@48 := @40 @1 -@52 := {A : @26} -> @48 @4 @22 @23 -@53 := @47 @2 -@54 := @48 @2 -@55 := @54 @22 -@56 := @55 @23 -@57 := Nat -@58 := List.{0} -@59 := @58 @18 -@60 := @58 @19 -@61 := Eq.{1} -@62 := Option.{0} -@63 := @62 @60 -@64 := @61 @63 -@65 := LexLeanPreservation.Rust.adtFields -@66 := #6 -@67 := @65 @66 -@68 := #3 -@71 := @64 (@67 @68 @28) -@72 := Option.some.{0} -@73 := @72 @60 -@74 := @73 @4 -@75 := @71 @74 -@76 := #7 -@78 := @27 @76 @66 -@79 := #5 -@82 := @78 @79 @28 @30 -@83 := #8 -@86 := @7 @83 @76 @66 -@87 := LexLeanTarget.TargetSyntax.Value.adt -@88 := #4 -@90 := @87 @88 @68 -@91 := @86 @90 -@92 := @8 @79 -@102 := {p : @24} -> - {c : @25} -> - {A : @26} -> - {i : @57} -> {k : @57} -> {fs : @59} -> {tys : @60} -> (h : @75) -> (hf : @82) -> @91 @92 -@104 := LexLeanPreservation.Rust.wt_adt @0 -@105 := @65 @0 -@109 := @64 (@105 @68 @28) @74 -@113 := @40 @66 @79 @28 @30 -@125 := {c : @25} -> - {A : @26} -> - {i : @57} -> - {k : @57} -> {fs : @59} -> {tys : @60} -> (h : @109) -> (hf : @113) -> @11 @76 @66 @90 @92 -@126 := @104 @1 -@129 := @48 @79 @28 @30 -@139 := {A : @26} -> - {i : @57} -> - {k : @57} -> {fs : @59} -> {tys : @60} -> (h : @109) -> (hf : @129) -> @12 @66 @90 @92 -@140 := @126 @2 -@142 := @54 @28 @30 -@143 := @13 @90 -@150 := {i : @57} -> {k : @57} -> {fs : @59} -> {tys : @60} -> (h : @109) -> (hf : @142) -> @143 @92 -@151 := @140 @9 -@152 := @105 @9 -@161 := {k : @57} -> - {fs : @59} -> {tys : @60} -> (h : @64 (@152 @28) @74) -> (hf : @142) -> @143 @10 -@162 := @151 @9 -@163 := @152 @9 -@164 := @64 @163 -@165 := @164 @74 -@166 := @87 @9 -@173 := {fs : @59} -> {tys : @60} -> (h : @165) -> (hf : @142) -> @13 (@166 @68) @10 -@174 := @162 @22 -@175 := @55 @30 -@178 := @13 (@166 @22) @10 -@181 := {tys : @60} -> (h : @165) -> (hf : @175) -> @178 -@182 := @174 @23 -@183 := @73 @23 -@186 := (h : @164 @183) -> (hf : @56) -> @178 -@187 := Eq.refl.{1} -@188 := @187 @63 -@191 := @182 (@188 @163) @53 -@192 := 1 -@193 := @151 @192 -@194 := @152 @192 -@195 := @64 @194 -@196 := @195 @74 -@197 := @87 @192 -@204 := {fs : @59} -> {tys : @60} -> (h : @196) -> (hf : @142) -> @13 (@197 @68) @10 -@205 := @193 @22 -@208 := @13 (@197 @22) @10 -@211 := {tys : @60} -> (h : @196) -> (hf : @175) -> @208 -@212 := @205 @23 -@215 := (h : @195 @183) -> (hf : @56) -> @208 -@218 := @212 (@188 @194) @53 -@219 := 2 -@220 := @151 @219 -@221 := @152 @219 -@222 := @64 @221 -@223 := @222 @74 -@224 := @87 @219 -@231 := {fs : @59} -> {tys : @60} -> (h : @223) -> (hf : @142) -> @13 (@224 @68) @10 -@232 := @220 @22 -@235 := @13 (@224 @22) @10 -@238 := {tys : @60} -> (h : @223) -> (hf : @175) -> @235 -@239 := @232 @23 -@242 := (h : @222 @183) -> (hf : @56) -> @235 -@245 := @239 (@188 @221) @53 -@246 := 3 -@247 := @151 @246 -@248 := @152 @246 -@249 := @64 @248 -@250 := @249 @74 -@251 := @87 @246 -@258 := {fs : @59} -> {tys : @60} -> (h : @250) -> (hf : @142) -> @13 (@251 @68) @10 -@259 := @247 @22 -@262 := @13 (@251 @22) @10 -@265 := {tys : @60} -> (h : @250) -> (hf : @175) -> @262 -@266 := @259 @23 -@269 := (h : @249 @183) -> (hf : @56) -> @262 -@272 := @266 (@188 @248) @53 -@273 := 4 -@274 := @151 @273 -@275 := @152 @273 -@276 := @64 @275 -@277 := @276 @74 -@278 := @87 @273 -@285 := {fs : @59} -> {tys : @60} -> (h : @277) -> (hf : @142) -> @13 (@278 @68) @10 -@286 := @274 @22 -@289 := @13 (@278 @22) @10 -@292 := {tys : @60} -> (h : @277) -> (hf : @175) -> @289 -@293 := @286 @23 -@296 := (h : @276 @183) -> (hf : @56) -> @289 -@299 := @293 (@188 @275) @53 -@300 := 5 -@301 := @151 @300 -@302 := @152 @300 -@303 := @64 @302 -@304 := @303 @74 -@305 := @87 @300 -@312 := {fs : @59} -> {tys : @60} -> (h : @304) -> (hf : @142) -> @13 (@305 @68) @10 -@313 := @301 @22 -@316 := @13 (@305 @22) @10 -@319 := {tys : @60} -> (h : @304) -> (hf : @175) -> @316 -@320 := @313 @23 -@323 := (h : @303 @183) -> (hf : @56) -> @316 -@326 := @320 (@188 @302) @53 -@327 := 6 -@328 := @151 @327 -@329 := @152 @327 -@330 := @64 @329 -@331 := @330 @74 -@332 := @87 @327 -@339 := {fs : @59} -> {tys : @60} -> (h : @331) -> (hf : @142) -> @13 (@332 @68) @10 -@340 := @328 @22 -@343 := @13 (@332 @22) @10 -@346 := {tys : @60} -> (h : @331) -> (hf : @175) -> @343 -@347 := @340 @23 -@350 := (h : @330 @183) -> (hf : @56) -> @343 -@353 := @347 (@188 @329) @53 -@354 := 7 -@355 := @151 @354 -@356 := @152 @354 -@357 := @64 @356 -@358 := @357 @74 -@359 := @87 @354 -@366 := {fs : @59} -> {tys : @60} -> (h : @358) -> (hf : @142) -> @13 (@359 @68) @10 -@367 := @355 @22 -@370 := @13 (@359 @22) @10 -@373 := {tys : @60} -> (h : @358) -> (hf : @175) -> @370 -@374 := @367 @23 -@377 := (h : @357 @183) -> (hf : @56) -> @370 -@380 := @374 (@188 @356) @53 -@381 := 8 -@382 := @151 @381 -@383 := @152 @381 -@384 := @64 @383 -@385 := @384 @74 -@386 := @87 @381 -@393 := {fs : @59} -> {tys : @60} -> (h : @385) -> (hf : @142) -> @13 (@386 @68) @10 -@394 := @382 @22 -@397 := @13 (@386 @22) @10 -@400 := {tys : @60} -> (h : @385) -> (hf : @175) -> @397 -@401 := @394 @23 -@404 := (h : @384 @183) -> (hf : @56) -> @397 -@407 := @401 (@188 @383) @53 -@408 := 9 -@409 := @151 @408 -@410 := @152 @408 -@411 := @64 @410 -@412 := @411 @74 -@413 := @87 @408 -@420 := {fs : @59} -> {tys : @60} -> (h : @412) -> (hf : @142) -> @13 (@413 @68) @10 -@421 := @409 @22 -@424 := @13 (@413 @22) @10 -@427 := {tys : @60} -> (h : @412) -> (hf : @175) -> @424 -@428 := @421 @23 -@431 := (h : @411 @183) -> (hf : @56) -> @424 -@434 := @428 (@188 @410) @53 -@448 := fun (__v : @3) => - Models.Glyphs.Glyph.casesOn.{0} @17 @4 @191 @218 @245 @272 @299 @326 @353 @380 @407 @434 -@449 := @5 @30 -@451 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.Compose.RustStd.__wt_0 @30 -@452 := @21 @18 -@454 := @452 @449 @22 -@455 := Prod.{0, 0} -@457 := @455 @57 @18 -@461 := Prod.mk.{0, 0} @57 @18 @9 -@462 := @461 @449 -@463 := @20 @457 -@464 := @21 @457 -@466 := @464 @462 @463 -@467 := Bool.true -@468 := LexLeanTarget.TargetSyntax.Function -@469 := LexLeanTarget.TargetSyntax.Program.functions -@470 := @469 @0 -@471 := @20 @57 -@472 := LexLeanTarget.TargetSyntax.Ty.unit -@473 := LexLeanTarget.TargetSyntax.Value.unit -@476 := LexLeanTarget.TargetSyntax.Expr.value @472 @473 -@481 := LexLeanTarget.TargetSyntax.Function.mk @471 @23 @472 @476 -@486 := List.getD.{0} @468 @470 @9 @481 -@490 := fun (__e_n : @57) => LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.RustStd.root @4 @9 -@495 := @7 @66 @79 @88 @68 @28 -@498 := @27 @83 @76 @66 -@500 := @452 @79 @68 -@501 := @498 @500 -@502 := @21 @19 -@504 := @502 @88 @28 -@514 := {p : @24} -> - {c : @25} -> - {A : @26} -> - {v : @18} -> {t : @19} -> {vs : @59} -> {ts : @60} -> (h : @495) -> (hs : @82) -> @501 @504 -@516 := LexLeanPreservation.Rust.wtl_cons @0 -@532 := {c : @25} -> - {A : @26} -> - {v : @18} -> - {t : @19} -> - {vs : @59} -> {ts : @60} -> (h : @11 @79 @88 @68 @28) -> (hs : @113) -> @40 @76 @66 @500 @504 -@533 := @516 @1 -@546 := {A : @26} -> - {v : @18} -> - {t : @19} -> {vs : @59} -> {ts : @60} -> (h : @12 @88 @68 @28) -> (hs : @129) -> @48 @66 @500 @504 -@547 := @533 @2 -@557 := {v : @18} -> - {t : @19} -> {vs : @59} -> {ts : @60} -> (h : @13 @68 @28) -> (hs : @142) -> @54 @500 @504 -@558 := @547 @449 -@559 := @5 @88 -@561 := @13 @559 @28 -@562 := @5 @66 -@563 := @452 @562 -@571 := {t : @19} -> {vs : @59} -> {ts : @60} -> (h : @561) -> (hs : @142) -> @54 (@563 @68) @504 -@572 := @558 @10 -@573 := @5 @68 -@575 := @13 @573 @10 -@576 := @5 @79 -@577 := @452 @576 -@579 := @54 (@577 @68) -@580 := @502 @10 -@581 := @580 @28 -@586 := {vs : @59} -> {ts : @60} -> (h : @575) -> (hs : @142) -> @579 @581 -@587 := @572 @22 -@588 := @5 @28 -@590 := @13 @588 @10 -@592 := @452 @559 @22 -@593 := @54 @592 -@597 := {ts : @60} -> (h : @590) -> (hs : @175) -> @593 @581 -@598 := @587 @23 -@600 := @13 @449 @10 -@602 := @452 @573 @22 -@603 := @54 @602 -@604 := @580 @23 -@607 := (h : @600) -> (hs : @56) -> @603 @604 -@608 := @598 @451 -@610 := @452 @588 @22 -@611 := @54 @610 -@613 := (hs : @56) -> @611 @604 -@614 := @608 @53 -@615 := @54 @454 -@616 := @615 @604 -@617 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.denote -@618 := @617 @30 -@619 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.__fits_0 -@620 := @619 @30 -@622 := Models.Main.classifyChecked @30 -@623 := Bool -@625 := @455 @623 @623 -@626 := LexLeanTarget.TargetSyntax.Value.bool -@631 := LexLeanPreservation.encPair @623 @623 @626 @626 -@632 := LexLeanTarget.TargetSyntax.Value.nat -@638 := LexLeanPreservation.encExcept @625 @57 @631 @632 @622 -@640 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.root @30 -@641 := Ne.{1} -@642 := LexLeanPreservation.Obs -@643 := @641 @642 -@644 := LexLeanPreservation.Rel -@647 := @643 (@644 @30 @4) -@648 := LexLeanPreservation.Obs.stuck -@651 := (f : @623) -> (v : @18) -> @647 @648 -@653 := LexLeanPreservation.Rust.rel_ne_stuck @620 -@659 := (v : @18) -> @643 (@644 (@619 @28) @4) @648 -@660 := @653 @638 -@664 := @643 (@644 @620 @638) @648 -@665 := @58 @457 -@666 := LexLeanPreservation.Rust.FunSem -@667 := #9 -@673 := (n : @57) -> @666 @667 @83 @76 @4 @66 -@674 := @62 @468 -@675 := @61 @674 -@682 := LexLeanRuntime.index (@58 @468) @468 (LexLeanRuntime.instIndexableList @468) -@686 := @675 (@682 (@469 @667) @66) -@687 := @72 @468 -@688 := @687 @79 -@689 := @686 @688 -@690 := #10 -@694 := @27 @690 @667 @83 @79 -@695 := LexLeanTarget.TargetSyntax.Function.types -@696 := @695 @66 -@697 := @694 @696 -@698 := @62 @665 -@699 := @61 @698 -@700 := LexLeanTarget.TargetSemantics.bindAll -@701 := LexLeanTarget.TargetSyntax.Function.parameters -@706 := @699 (@700 (@701 @76) @66 @463) -@707 := @72 @665 -@708 := @707 @79 -@709 := @706 @708 -@710 := @62 @623 -@711 := @61 @710 -@712 := LexLeanPreservation.Rust.fnFallible -@713 := #11 -@716 := @711 (@712 @713 @667) -@717 := @72 @623 -@718 := @717 @79 -@719 := @716 @718 -@720 := LexLeanPreservation.RunConv -@721 := #13 -@725 := @720 @721 @690 @83 @79 -@727 := @643 @66 @648 -@728 := Exists.{1} -@729 := LexLeanPreservation.Rust.ROut -@730 := @728 @729 -@731 := And -@732 := LexLeanPreservation.Rust.RealizesFn -@736 := @731 (@732 @667 @83 @4) -@737 := LexLeanPreservation.Rust.RCI -@739 := @737 #15 -@740 := LexLeanPreservation.Rust.fnIdent -@741 := @740 @721 -@748 := (hne : @727) -> @730 (fun (ro : @729) => @736 (@739 @741 @713 @4)) -@763 := {p : @24} -> - {c : @25} -> - {A : @26} -> - {f : @57} -> - {fn : @468} -> - {args : @59} -> - {env : @665} -> - {F : @623} -> - {o : @642} -> - (hB : @673) -> - (hfn : @689) -> (hwt : @697) -> (hbind : @709) -> (hF : @719) -> (hA : @725) -> @748 -@765 := LexLeanPreservation.Rust.compose @0 -@766 := @666 @0 -@771 := (n : @57) -> @766 @83 @76 @4 @66 -@772 := @682 @470 -@775 := @675 (@772 @66) @688 -@779 := @40 @667 @83 @79 @696 -@780 := @720 @0 -@783 := @780 @690 @83 @79 -@797 := {c : @25} -> - {A : @26} -> - {f : @57} -> - {fn : @468} -> - {args : @59} -> - {env : @665} -> - {F : @623} -> - {o : @642} -> - (hB : @771) -> - (hfn : @775) -> (hwt : @779) -> (hbind : @709) -> (hF : @719) -> (hA : @783) -> @748 -@798 := @765 @1 -@799 := @766 @1 -@803 := (n : @57) -> @799 @76 @4 @66 -@806 := @48 @83 @79 @696 -@807 := @712 @1 -@810 := @711 (@807 @667) @718 -@811 := @737 @1 -@821 := (hbind : @709) -> - (hF : @810) -> (hA : @783) -> (hne : @727) -> @730 (fun (ro : @729) => @736 (@811 @741 @713 @4)) -@831 := {A : @26} -> - {f : @57} -> - {fn : @468} -> - {args : @59} -> - {env : @665} -> {F : @623} -> {o : @642} -> (hB : @803) -> (hfn : @775) -> (hwt : @806) -> @821 -@832 := @798 @2 -@834 := @799 @2 @4 -@836 := (n : @57) -> @834 @66 -@837 := @54 @79 -@838 := @837 @696 -@847 := {f : @57} -> - {fn : @468} -> - {args : @59} -> - {env : @665} -> {F : @623} -> {o : @642} -> (hB : @836) -> (hfn : @775) -> (hwt : @838) -> @821 -@848 := @832 @9 -@850 := (n : @57) -> @834 @9 -@851 := @772 @9 -@852 := @675 @851 -@853 := @852 @688 -@854 := @807 @9 -@855 := @711 @854 -@856 := @855 @718 -@857 := @780 @9 -@859 := @857 @83 @79 -@861 := @811 (@740 @9) -@869 := (hF : @856) -> (hA : @859) -> (hne : @727) -> @730 (fun (ro : @729) => @736 (@861 @713 @4)) -@878 := {fn : @468} -> - {args : @59} -> - {env : @665} -> - {F : @623} -> {o : @642} -> (hB : @850) -> (hfn : @853) -> (hwt : @838) -> (hbind : @709) -> @869 -@879 := @848 @486 -@881 := @852 (@687 @486) -@882 := @695 @486 -@883 := @837 @882 -@885 := @700 (@701 @486) -@897 := {args : @59} -> - {env : @665} -> - {F : @623} -> - {o : @642} -> - (hB : @850) -> (hfn : @881) -> (hwt : @883) -> (hbind : @699 (@885 @66 @463) @708) -> @869 -@898 := @879 @454 -@899 := @563 @22 -@901 := @54 @899 @882 -@904 := @452 (@5 @76) @22 -@908 := @699 (@885 @904 @463) @708 -@911 := @452 (@5 @667) @22 -@932 := {env : @665} -> - {F : @623} -> - {o : @642} -> - (hB : @850) -> - (hfn : @881) -> - (hwt : @901) -> - (hbind : @908) -> - (hF : @856) -> - (hA : @857 @911 @79) -> - (hne : @727) -> @730 (fun (ro : @729) => @736 (@861 (@452 (@5 #12) @22) @4)) -@933 := @898 @466 -@934 := @577 @22 -@936 := @54 @934 @882 -@944 := @699 (@885 @899 @463) (@707 (@464 (@461 @562) @463)) -@947 := @452 (@5 @83) @22 -@966 := {F : @623} -> - {o : @642} -> - (hB : @850) -> - (hfn : @881) -> - (hwt : @936) -> - (hbind : @944) -> - (hF : @856) -> - (hA : @857 @947 @79) -> - (hne : @727) -> @730 (fun (ro : @729) => @736 (@861 (@452 (@5 @713) @22) @4)) -@967 := @933 @467 -@968 := @593 @882 -@976 := @699 (@885 @934 @463) (@707 (@464 (@461 @576) @463)) -@978 := @855 (@717 @467) -@980 := @857 @904 @79 -@981 := @732 @467 -@1000 := {o : @642} -> - (hB : @850) -> - (hfn : @881) -> - (hwt : @968) -> - (hbind : @976) -> - (hF : @978) -> - (hA : @980) -> - (hne : @727) -> @730 (fun (ro : @729) => @731 (@981 @83 @4) (@861 (@452 (@5 @690) @22) @4)) -@1001 := @967 @618 -@1002 := @603 @882 -@1010 := @699 (@885 @592 @463) (@707 (@464 (@461 @559) @463)) -@1011 := @857 @899 -@1012 := @617 @66 -@1013 := @1011 @1012 -@1014 := @617 @76 -@1032 := (hB : @850) -> - (hfn : @881) -> - (hwt : @1002) -> - (hbind : @1010) -> - (hF : @978) -> - (hA : @1013) -> - (hne : @643 @1014 @648) -> @730 (fun (ro : @729) => @731 (@981 (@617 @667) @4) (@861 @911 @4)) -@1033 := @1001 @490 -@1034 := @611 @882 -@1042 := @699 (@885 @602 @463) (@707 (@464 (@461 @573) @463)) -@1043 := @857 @934 -@1044 := @617 @79 -@1062 := (hfn : @881) -> - (hwt : @1034) -> - (hbind : @1042) -> - (hF : @978) -> - (hA : @1043 @1044) -> - (hne : @643 @1012 @648) -> @730 (fun (ro : @729) => @731 (@981 (@617 @83) @4) (@861 @947 @4)) -@1065 := @1033 (@187 @674 @851) -@1066 := @615 @882 -@1074 := @699 (@885 @610 @463) (@707 (@464 (@461 @588) @463)) -@1075 := @857 @592 -@1076 := @617 @88 -@1092 := (hwt : @1066) -> - (hbind : @1074) -> - (hF : @978) -> - (hA : @1075 @1076) -> - (hne : @643 @1044 @648) -> @730 (fun (ro : @729) => @731 (@981 @1014 @4) (@861 @904 @4)) -@1093 := @1065 @614 -@1095 := @885 @454 @463 -@1098 := @699 @1095 (@707 @466) -@1099 := @857 @602 -@1100 := @617 @68 -@1115 := (hbind : @1098) -> - (hF : @978) -> - (hA : @1099 @1100) -> - (hne : @643 @1076 @648) -> @730 (fun (ro : @729) => @731 (@981 @1012 @4) (@861 @899 @4)) -@1118 := @1093 (@187 @698 @1095) -@1119 := @857 @610 -@1120 := @617 @28 -@1134 := (hF : @978) -> - (hA : @1119 @1120) -> - (hne : @643 @1100 @648) -> @730 (fun (ro : @729) => @731 (@981 @1044 @4) (@861 @934 @4)) -@1137 := @1118 (@187 @710 @854) -@1151 := (hA : @857 @454 @618) -> - (hne : @643 @1120 @648) -> @730 (fun (ro : @729) => @731 (@981 @1076 @4) (@861 @592 @4)) -@1152 := @1137 @640 -@1163 := (hne : @643 @618 @648) -> @730 (fun (ro : @729) => @731 (@981 @1100 @4) (@861 @602 @4)) -@1164 := @1152 @660 -@1170 := @731 (@981 @1120 @4) (@861 @610 @4) -@1172 := @730 (fun (ro : @729) => @1170) -@1174 := @730 (fun (__e_ro : @729) => @1170) -@1178 := LexLeanPreservation.Rust.RepresentableL (@452 @6 @22) -@1179 := (__e_hrep : @1178) -> @1174 -@1180 := fun (__e_hrep : @1178) => @1164 -@1181 := (glyph : @3) -> @1179 -@1182 := fun (glyph : @3) => @1180 -\end{coremodule} -\end{lexlean} diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R1/RustStd.lean b/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R1/RustStd.lean deleted file mode 100644 index b44133f2a..000000000 --- a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R1/RustStd.lean +++ /dev/null @@ -1,250 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [{ constructors := [[], [], [], [], [], [], [], [], [], []] }], functions := [ - { parameters := [0], types := [(.adt 0)], result := (.result .nat (.pair .bool .bool)), - body := (.«let» 1 (.adt 0) (.var 0) (.«let» 2 .nat (.call 1 [(.var 1)]) (.cond (.call 2 [(.var 1), (.var 2)]) (.build .ok (.result .nat (.pair .bool .bool)) [(.var 2)]) (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])])])))) }, - { parameters := [0], types := [(.adt 0)], result := .nat, - body := (.call 3 [(.var 0)]) }, - { parameters := [0, 1], types := [(.adt 0), .nat], result := .bool, - body := (.prim .natEq [(.var 1), (.call 4 [(.var 0)])]) }, - { parameters := [0], types := [(.adt 0)], result := .nat, - body := (.«match» .nat (.first (.call 5 [(.closure 6 []), (.build .pair (.pair (.option (.pair .nat .int)) (.list .nat)) [(.build .none (.option (.pair .nat .int)) []), (.build .cons (.list .nat) [(.value .nat (.nat 0)), (.build .cons (.list .nat) [(.value .nat (.nat 1)), (.build .cons (.list .nat) [(.value .nat (.nat 2)), (.build .cons (.list .nat) [(.value .nat (.nat 3)), (.build .cons (.list .nat) [(.value .nat (.nat 4)), (.build .cons (.list .nat) [(.value .nat (.nat 5)), (.build .cons (.list .nat) [(.value .nat (.nat 6)), (.build .cons (.list .nat) [(.value .nat (.nat 7)), (.build .cons (.list .nat) [(.value .nat (.nat 8)), (.build .cons (.list .nat) [(.value .nat (.nat 9)), (.build .nil (.list .nat) [])])])])])])])])])])])]), (.call 7 [(.var 0)])])) [(.arm .none [] (.value .nat (.nat 0))), (.arm .some [1] (.first (.var 1)))]) }, - { parameters := [0], types := [(.adt 0)], result := .nat, - body := (.«match» .nat (.var 0) [(.arm (.adt 0) [] (.value .nat (.nat 0))), (.arm (.adt 1) [] (.value .nat (.nat 1))), (.arm (.adt 2) [] (.value .nat (.nat 2))), (.arm (.adt 3) [] (.value .nat (.nat 3))), (.arm (.adt 4) [] (.value .nat (.nat 4))), (.arm (.adt 5) [] (.value .nat (.nat 5))), (.arm (.adt 6) [] (.value .nat (.nat 6))), (.arm (.adt 7) [] (.value .nat (.nat 7))), (.arm (.adt 8) [] (.value .nat (.nat 8))), (.arm (.adt 9) [] (.value .nat (.nat 9)))]) }, - { parameters := [0, 1, 2], types := [(.fn [(.pair (.option (.pair .nat .int)) (.list .nat)), .int] (.pair (.option (.pair .nat .int)) (.list .nat))), (.pair (.option (.pair .nat .int)) (.list .nat)), (.list .int)], result := (.pair (.option (.pair .nat .int)) (.list .nat)), - body := (.«match» (.pair (.option (.pair .nat .int)) (.list .nat)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 5 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, - { parameters := [0, 1], types := [(.pair (.option (.pair .nat .int)) (.list .nat)), .int], result := (.pair (.option (.pair .nat .int)) (.list .nat)), - body := (.«match» (.pair (.option (.pair .nat .int)) (.list .nat)) (.second (.var 0)) [(.arm .nil [] (.var 0)), (.arm .cons [2, 3] (.build .pair (.pair (.option (.pair .nat .int)) (.list .nat)) [(.«match» (.option (.pair .nat .int)) (.first (.var 0)) [(.arm .none [] (.build .some (.option (.pair .nat .int)) [(.build .pair (.pair .nat .int) [(.var 2), (.var 1)])])), (.arm .some [4] (.cond (.«match» .bool (.prim .compare [(.second (.var 4)), (.var 1)]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.build .some (.option (.pair .nat .int)) [(.build .pair (.pair .nat .int) [(.var 2), (.var 1)])]) (.build .some (.option (.pair .nat .int)) [(.var 4)])))]), (.var 3)]))]) }, - { parameters := [0], types := [(.adt 0)], result := (.list .int), - body := (.call 8 [(.call 9 [(.call 10 [(.call 11 [(.call 12 [(.var 0)])])])])]) }, - { parameters := [0], types := [(.list .int)], result := (.list .int), - body := (.first (.call 13 [(.closure 14 [(.var 0)]), (.build .pair (.pair (.list .int) (.list .int)) [(.build .nil (.list .int) []), (.call 15 [])]), (.call 16 [])])) }, - { parameters := [0], types := [(.list .int)], result := (.list .int), - body := (.call 17 [(.closure 18 []), (.build .nil (.list .int) []), (.var 0)]) }, - { parameters := [0], types := [(.list .int)], result := (.list .int), - body := (.call 17 [(.closure 19 []), (.build .nil (.list .int) []), (.var 0)]) }, - { parameters := [0], types := [(.list .int)], result := (.list .int), - body := (.first (.call 13 [(.closure 20 [(.var 0)]), (.build .pair (.pair (.list .int) (.list .int)) [(.build .nil (.list .int) []), (.call 21 [])]), (.call 22 [])])) }, - { parameters := [0], types := [(.adt 0)], result := (.list .int), - body := (.call 23 [(.var 0)]) }, - { parameters := [0, 1, 2], types := [(.fn [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int))), (.pair (.list .int) (.list .int)), (.list (.list .int))], result := (.pair (.list .int) (.list .int)), - body := (.«match» (.pair (.list .int) (.list .int)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 13 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, - { parameters := [0, 1, 2], types := [(.list .int), (.pair (.list .int) (.list .int)), (.list .int)], result := (.pair (.list .int) (.list .int)), - body := (.«match» (.pair (.list .int) (.list .int)) (.second (.var 1)) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.build .pair (.pair (.list .int) (.list .int)) [(.prim .append [(.first (.var 1)), (.build .cons (.list .int) [(.prim .intSub [(.var 3), (.prim .intNeg [(.first (.call 24 [(.closure 25 []), (.build .pair (.pair .int (.list .int)) [(.value .int (.int 0)), (.var 0)]), (.var 2)]))])]), (.build .nil (.list .int) [])])]), (.var 4)]))]) }, - { parameters := [], types := [], result := (.list .int), - body := (.build .cons (.list .int) [(.value .int (.int (-6))), (.build .cons (.list .int) [(.value .int (.int (-2))), (.build .cons (.list .int) [(.value .int (.int (-5))), (.build .cons (.list .int) [(.value .int (.int (-5))), (.build .cons (.list .int) [(.value .int (.int (-4))), (.build .cons (.list .int) [(.value .int (.int (-5))), (.build .cons (.list .int) [(.value .int (.int (-6))), (.build .cons (.list .int) [(.value .int (.int (-3))), (.build .cons (.list .int) [(.value .int (.int (-7))), (.build .cons (.list .int) [(.value .int (.int (-6))), (.build .nil (.list .int) [])])])])])])])])])])]) }, - { parameters := [], types := [], result := (.list (.list .int)), - body := (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .nil (.list (.list .int)) [])])])])])])])])])])]) }, - { parameters := [0, 1, 2], types := [(.fn [(.list .int), .int] (.list .int)), (.list .int), (.list .int)], result := (.list .int), - body := (.«match» (.list .int) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 17 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, - { parameters := [0, 1], types := [(.list .int), .int], result := (.list .int), - body := (.prim .append [(.var 0), (.build .cons (.list .int) [(.«let» 2 .int (.prim .intQuot [(.var 1), (.value .int (.int 4)), (.value .int (.int 0))]) (.cond (.«match» .bool (.prim .compare [(.var 2), (.value .int (.int 0))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.value .int (.int 0)) (.cond (.«match» .bool (.prim .compare [(.value .int (.int 127)), (.var 2)]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.value .int (.int 127)) (.var 2)))), (.build .nil (.list .int) [])])]) }, - { parameters := [0, 1], types := [(.list .int), .int], result := (.list .int), - body := (.prim .append [(.var 0), (.build .cons (.list .int) [(.cond (.«match» .bool (.prim .compare [(.var 1), (.value .int (.int 0))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.value .int (.int 0)) (.var 1)), (.build .nil (.list .int) [])])]) }, - { parameters := [0, 1, 2], types := [(.list .int), (.pair (.list .int) (.list .int)), (.list .int)], result := (.pair (.list .int) (.list .int)), - body := (.«match» (.pair (.list .int) (.list .int)) (.second (.var 1)) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.build .pair (.pair (.list .int) (.list .int)) [(.prim .append [(.first (.var 1)), (.build .cons (.list .int) [(.prim .intSub [(.var 3), (.prim .intNeg [(.first (.call 24 [(.closure 26 []), (.build .pair (.pair .int (.list .int)) [(.value .int (.int 0)), (.var 0)]), (.var 2)]))])]), (.build .nil (.list .int) [])])]), (.var 4)]))]) }, - { parameters := [], types := [], result := (.list .int), - body := (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int (-2))), (.build .cons (.list .int) [(.value .int (.int 3)), (.build .cons (.list .int) [(.value .int (.int (-5))), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .nil (.list .int) [])])])])])])])])])])])])]) }, - { parameters := [], types := [], result := (.list (.list .int)), - body := (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 3)), (.build .cons (.list .int) [(.value .int (.int (-2))), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int (-1))), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int (-3))), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int (-1))), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int (-2))), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int (-4))), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 3)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .nil (.list (.list .int)) [])])])])])])])])])])])])]) }, - { parameters := [0], types := [(.adt 0)], result := (.list .int), - body := (.«match» (.list .int) (.var 0) [(.arm (.adt 0) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 1) [] (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 2) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 3) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 4) [] (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 5) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 6) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 7) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 8) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 9) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])]))]) }, - { parameters := [0, 1, 2], types := [(.fn [(.pair .int (.list .int)), .int] (.pair .int (.list .int))), (.pair .int (.list .int)), (.list .int)], result := (.pair .int (.list .int)), - body := (.«match» (.pair .int (.list .int)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 24 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, - { parameters := [0, 1], types := [(.pair .int (.list .int)), .int], result := (.pair .int (.list .int)), - body := (.«match» (.pair .int (.list .int)) (.second (.var 0)) [(.arm .nil [] (.var 0)), (.arm .cons [2, 3] (.build .pair (.pair .int (.list .int)) [(.prim .intSub [(.first (.var 0)), (.prim .intNeg [(.prim .intMul [(.var 1), (.var 2)])])]), (.var 3)]))]) }, - { parameters := [0, 1], types := [(.pair .int (.list .int)), .int], result := (.pair .int (.list .int)), - body := (.«match» (.pair .int (.list .int)) (.second (.var 0)) [(.arm .nil [] (.var 0)), (.arm .cons [2, 3] (.build .pair (.pair .int (.list .int)) [(.prim .intSub [(.first (.var 0)), (.prim .intNeg [(.prim .intMul [(.var 1), (.var 2)])])]), (.var 3)]))]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := ((.enum (.adt 0) [{ number := 0, fields := [] }, { number := 1, fields := [] }, { number := 2, fields := [] }, { number := 3, fields := [] }, { number := 4, fields := [] }, { number := 5, fields := [] }, { number := 6, fields := [] }, { number := 7, fields := [] }, { number := 8, fields := [] }, { number := 9, fields := [] }]) :: - (.enum (.fn 0) [{ number := 6, fields := [] }]) :: - (.apply 0 [(.pair (.option (.pair .nat .int)) (.list .nat)), .int] (.pair (.option (.pair .nat .int)) (.list .nat)) false [{ function := 6, captures := [], functionFallible := false }]) :: - (.enum (.fn 1) [{ number := 14, fields := [(.list .int)] }, { number := 20, fields := [(.list .int)] }]) :: - (.apply 1 [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int)) true [{ function := 14, captures := [.clone], functionFallible := true }, { function := 20, captures := [.clone], functionFallible := true }]) :: - (.enum (.fn 2) [{ number := 18, fields := [] }, { number := 19, fields := [] }]) :: - (.apply 2 [(.list .int), .int] (.list .int) true [{ function := 18, captures := [], functionFallible := true }, { function := 19, captures := [], functionFallible := false }]) :: - (.enum (.fn 3) [{ number := 25, fields := [] }, { number := 26, fields := [] }]) :: - (.apply 3 [(.pair .int (.list .int)), .int] (.pair .int (.list .int)) true [{ function := 25, captures := [], functionFallible := true }, { function := 26, captures := [], functionFallible := true }]) :: - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible (.result .nat (.pair .bool .bool))) (.mk [(.mk (.bind (.generated .binding 1)) (some (.adt 0)) (.move (.generated .binding 0))), (.mk (.bind (.generated .binding 2)) (some .nat) (.call (.function 1) [(.clone (.generated .binding 1))] true))] (.cond (.call (.function 2) [(.move (.generated .binding 1)), (.copy (.generated .binding 2))] false) (.mk [] (.succeed (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))]))) (.mk [] (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))))) :: - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible .nat) (.mk [] (.call (.function 3) [(.move (.generated .binding 0))] false))) :: - (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 2)) none (.call (.function 4) [(.move (.generated .binding 0))] false))] (.call (.runtime .natEq) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false))) :: - (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 4)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.call (.function 5) [(.construct (.closure 0 6) []), (.pair (.construct (.none (.pair .nat .int)) []) (.construct .cons [(.lit (.nat 0)), (.construct .cons [(.lit (.nat 1)), (.construct .cons [(.lit (.nat 2)), (.construct .cons [(.lit (.nat 3)), (.construct .cons [(.lit (.nat 4)), (.construct .cons [(.lit (.nat 5)), (.construct .cons [(.lit (.nat 6)), (.construct .cons [(.lit (.nat 7)), (.construct .cons [(.lit (.nat 8)), (.construct .cons [(.lit (.nat 9)), (.construct (.nil .nat) [])])])])])])])])])])])), (.call (.function 7) [(.move (.generated .binding 0))] true)] false))] (.move (.generated .part 3)))))] (.matchOn (.move (.generated .holder 4)) [(.mk .none (.mk [] (.succeed (.lit (.nat 0))))), (.mk (.some (.bind (.generated .binding 1))) (.mk [(.mk (.tuple [(.bind (.generated .part 5)), .wild]) none (.copy (.generated .binding 1)))] (.succeed (.move (.generated .part 5)))))]))) :: - (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .nat (.mk [(.mk (.bind (.generated .holder 6)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 6)) [(.mk (.adt 0 0 []) (.mk [] (.lit (.nat 0)))), (.mk (.adt 0 1 []) (.mk [] (.lit (.nat 1)))), (.mk (.adt 0 2 []) (.mk [] (.lit (.nat 2)))), (.mk (.adt 0 3 []) (.mk [] (.lit (.nat 3)))), (.mk (.adt 0 4 []) (.mk [] (.lit (.nat 4)))), (.mk (.adt 0 5 []) (.mk [] (.lit (.nat 5)))), (.mk (.adt 0 6 []) (.mk [] (.lit (.nat 6)))), (.mk (.adt 0 7 []) (.mk [] (.lit (.nat 7)))), (.mk (.adt 0 8 []) (.mk [] (.lit (.nat 8)))), (.mk (.adt 0 9 []) (.mk [] (.lit (.nat 9))))]))) :: - (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := (.pair (.option (.pair .nat .int)) (.list .nat)) }, { pattern := (.bind (.generated .binding 2)), type := (.list .int) }] (.pair (.option (.pair .nat .int)) (.list .nat)) (.mk [(.mk (.bind (.generated .holder 7)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 7)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 5) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 8)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 8) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]))) :: - (.function (.generated .function 6) [{ pattern := (.bind (.generated .binding 0)), type := (.pair (.option (.pair .nat .int)) (.list .nat)) }, { pattern := (.bind (.generated .binding 1)), type := .int }] (.pair (.option (.pair .nat .int)) (.list .nat)) (.mk [(.mk (.bind (.generated .holder 10)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 9))]) none (.clone (.generated .binding 0)))] (.move (.generated .part 9)))))] (.matchOn (.uncons (.generated .holder 10)) [(.mk .none (.mk [] (.move (.generated .binding 0)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.pair (.block (.mk [(.mk (.bind (.generated .holder 12)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 11)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 11)))))] (.matchOn (.move (.generated .holder 12)) [(.mk .none (.mk [] (.construct .some [(.pair (.copy (.generated .binding 2)) (.copy (.generated .binding 1)))]))), (.mk (.some (.bind (.generated .binding 4))) (.mk [(.mk (.bind (.generated .holder 16)) none (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 13))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 13))))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1)))] (.call (.runtime .compare) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false))))] (.cond (.matchOn (.move (.generated .holder 16)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.construct .some [(.pair (.copy (.generated .binding 2)) (.copy (.generated .binding 1)))])) (.mk [] (.construct .some [(.copy (.generated .binding 4))])))))]))) (.move (.generated .binding 3)))))]))) :: - (.function (.generated .function 7) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible (.list .int)) (.mk [] (.call (.function 8) [(.call (.function 9) [(.call (.function 10) [(.call (.function 11) [(.call (.function 12) [(.move (.generated .binding 0))] false)] true)] true)] true)] false))) :: - (.function (.generated .function 8) [{ pattern := (.bind (.generated .binding 0)), type := (.list .int) }] (.fallible (.list .int)) (.mk [(.mk (.tuple [(.bind (.generated .part 17)), .wild]) none (.call (.function 13) [(.construct (.closure 1 14) [(.move (.generated .binding 0))]), (.pair (.construct (.nil .int) []) (.call (.function 15) [] false)), (.call (.function 16) [] false)] true))] (.succeed (.move (.generated .part 17))))) :: - (.function (.generated .function 9) [{ pattern := (.bind (.generated .binding 0)), type := (.list .int) }] (.fallible (.list .int)) (.mk [] (.call (.function 17) [(.construct (.closure 2 18) []), (.construct (.nil .int) []), (.move (.generated .binding 0))] false))) :: - (.function (.generated .function 10) [{ pattern := (.bind (.generated .binding 0)), type := (.list .int) }] (.fallible (.list .int)) (.mk [] (.call (.function 17) [(.construct (.closure 2 19) []), (.construct (.nil .int) []), (.move (.generated .binding 0))] false))) :: - (.function (.generated .function 11) [{ pattern := (.bind (.generated .binding 0)), type := (.list .int) }] (.fallible (.list .int)) (.mk [(.mk (.tuple [(.bind (.generated .part 18)), .wild]) none (.call (.function 13) [(.construct (.closure 1 20) [(.move (.generated .binding 0))]), (.pair (.construct (.nil .int) []) (.call (.function 21) [] false)), (.call (.function 22) [] false)] true))] (.succeed (.move (.generated .part 18))))) :: - (.function (.generated .function 12) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.list .int) (.mk [] (.call (.function 23) [(.move (.generated .binding 0))] false))) :: - (.function (.generated .function 13) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 1) }, { pattern := (.bind (.generated .binding 1)), type := (.pair (.list .int) (.list .int)) }, { pattern := (.bind (.generated .binding 2)), type := (.list (.list .int)) }] (.fallible (.pair (.list .int) (.list .int))) (.mk [(.mk (.bind (.generated .holder 19)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 19)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 13) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 20)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 20) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]))) :: - (.function (.generated .function 14) [{ pattern := (.bind (.generated .binding 0)), type := (.list .int) }, { pattern := (.bind (.generated .binding 1)), type := (.pair (.list .int) (.list .int)) }, { pattern := (.bind (.generated .binding 2)), type := (.list .int) }] (.fallible (.pair (.list .int) (.list .int))) (.mk [(.mk (.bind (.generated .holder 22)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 21))]) none (.clone (.generated .binding 1)))] (.move (.generated .part 21)))))] (.matchOn (.uncons (.generated .holder 22)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 23)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 23))))), (.mk (.bind (.generated .operand 29)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 27)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 24)), .wild]) none (.call (.function 24) [(.construct (.closure 3 25) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 24)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 25))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] true))), (.construct (.nil .int) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 28)), (.move (.generated .operand 29))] false))) (.move (.generated .binding 4))))))]))) :: - (.function (.generated .function 15) [] (.list .int) (.mk [] (.construct .cons [(.lit (.int (-6))), (.construct .cons [(.lit (.int (-2))), (.construct .cons [(.lit (.int (-5))), (.construct .cons [(.lit (.int (-5))), (.construct .cons [(.lit (.int (-4))), (.construct .cons [(.lit (.int (-5))), (.construct .cons [(.lit (.int (-6))), (.construct .cons [(.lit (.int (-3))), (.construct .cons [(.lit (.int (-7))), (.construct .cons [(.lit (.int (-6))), (.construct (.nil .int) [])])])])])])])])])])]))) :: - (.function (.generated .function 16) [] (.list (.list .int)) (.mk [] (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct (.nil (.list .int)) [])])])])])])])])])])]))) :: - (.function (.generated .function 17) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 2) }, { pattern := (.bind (.generated .binding 1)), type := (.list .int) }, { pattern := (.bind (.generated .binding 2)), type := (.list .int) }] (.fallible (.list .int)) (.mk [(.mk (.bind (.generated .holder 30)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 30)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 17) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 31)) (some (.fn 2)) (.move (.generated .binding 0)))] (.apply (.generated .callee 31) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]))) :: - (.function (.generated .function 18) [{ pattern := (.bind (.generated .binding 0)), type := (.list .int) }, { pattern := (.bind (.generated .binding 1)), type := .int }] (.fallible (.list .int)) (.mk [(.mk (.bind (.generated .operand 41)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 42)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .binding 2)) (some .int) (.block (.mk [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 33)) none (.lit (.int 4))), (.mk (.bind (.generated .operand 34)) none (.lit (.int 0)))] (.call (.runtime .intQuot) [(.move (.generated .operand 32)), (.move (.generated .operand 33)), (.move (.generated .operand 34))] true)))), (.mk (.bind (.generated .holder 37)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 36)) none (.lit (.int 0)))] (.call (.runtime .compare) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false))))] (.cond (.matchOn (.move (.generated .holder 37)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.lit (.int 0))) (.mk [(.mk (.bind (.generated .holder 40)) none (.block (.mk [(.mk (.bind (.generated .operand 38)) none (.lit (.int 127))), (.mk (.bind (.generated .operand 39)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 38)), (.move (.generated .operand 39))] false))))] (.cond (.matchOn (.move (.generated .holder 40)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.lit (.int 127))) (.mk [] (.copy (.generated .binding 2)))))))), (.construct (.nil .int) [])]))] (.succeed (.call (.runtime .appendList) [(.move (.generated .operand 41)), (.move (.generated .operand 42))] false)))) :: - (.function (.generated .function 19) [{ pattern := (.bind (.generated .binding 0)), type := (.list .int) }, { pattern := (.bind (.generated .binding 1)), type := .int }] (.list .int) (.mk [(.mk (.bind (.generated .operand 46)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 47)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .holder 45)) none (.block (.mk [(.mk (.bind (.generated .operand 43)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 44)) none (.lit (.int 0)))] (.call (.runtime .compare) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] false))))] (.cond (.matchOn (.move (.generated .holder 45)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.lit (.int 0))) (.mk [] (.copy (.generated .binding 1)))))), (.construct (.nil .int) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 46)), (.move (.generated .operand 47))] false))) :: - (.function (.generated .function 20) [{ pattern := (.bind (.generated .binding 0)), type := (.list .int) }, { pattern := (.bind (.generated .binding 1)), type := (.pair (.list .int) (.list .int)) }, { pattern := (.bind (.generated .binding 2)), type := (.list .int) }] (.fallible (.pair (.list .int) (.list .int))) (.mk [(.mk (.bind (.generated .holder 49)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 48))]) none (.clone (.generated .binding 1)))] (.move (.generated .part 48)))))] (.matchOn (.uncons (.generated .holder 49)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 55)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 50)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 50))))), (.mk (.bind (.generated .operand 56)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 53)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 54)) none (.block (.mk [(.mk (.bind (.generated .operand 52)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 51)), .wild]) none (.call (.function 24) [(.construct (.closure 3 26) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 51)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 52))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] true))), (.construct (.nil .int) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 55)), (.move (.generated .operand 56))] false))) (.move (.generated .binding 4))))))]))) :: - (.function (.generated .function 21) [] (.list .int) (.mk [] (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int (-2))), (.construct .cons [(.lit (.int 3)), (.construct .cons [(.lit (.int (-5))), (.construct .cons [(.lit (.int 2)), (.construct (.nil .int) [])])])])])])])])])])])])]))) :: - (.function (.generated .function 22) [] (.list (.list .int)) (.mk [] (.construct .cons [(.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 3)), (.construct .cons [(.lit (.int (-2))), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int (-1))), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int (-3))), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int (-1))), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int (-2))), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int (-4))), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 3)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct (.nil (.list .int)) [])])])])])])])])])])])])]))) :: - (.function (.generated .function 23) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.list .int) (.mk [(.mk (.bind (.generated .holder 57)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 57)) [(.mk (.adt 0 0 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 1 []) (.mk [] (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 2 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 3 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 4 []) (.mk [] (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 5 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 6 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 7 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 8 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 9 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])])))]))) :: - (.function (.generated .function 24) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 3) }, { pattern := (.bind (.generated .binding 1)), type := (.pair .int (.list .int)) }, { pattern := (.bind (.generated .binding 2)), type := (.list .int) }] (.fallible (.pair .int (.list .int))) (.mk [(.mk (.bind (.generated .holder 58)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 58)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 24) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 59)) (some (.fn 3)) (.move (.generated .binding 0)))] (.apply (.generated .callee 59) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]))) :: - (.function (.generated .function 25) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .int (.list .int)) }, { pattern := (.bind (.generated .binding 1)), type := .int }] (.fallible (.pair .int (.list .int))) (.mk [(.mk (.bind (.generated .holder 61)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 60))]) none (.clone (.generated .binding 0)))] (.move (.generated .part 60)))))] (.matchOn (.uncons (.generated .holder 61)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 0))))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 66)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 62)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 62))))), (.mk (.bind (.generated .operand 67)) none (.block (.mk [(.mk (.bind (.generated .operand 65)) none (.block (.mk [(.mk (.bind (.generated .operand 63)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 64)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 63)), (.move (.generated .operand 64))] true))))] (.call (.runtime .intNeg) [(.move (.generated .operand 65))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 66)), (.move (.generated .operand 67))] true))) (.move (.generated .binding 3))))))]))) :: - (.function (.generated .function 26) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .int (.list .int)) }, { pattern := (.bind (.generated .binding 1)), type := .int }] (.fallible (.pair .int (.list .int))) (.mk [(.mk (.bind (.generated .holder 69)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 68))]) none (.clone (.generated .binding 0)))] (.move (.generated .part 68)))))] (.matchOn (.uncons (.generated .holder 69)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 0))))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 74)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 70)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 70))))), (.mk (.bind (.generated .operand 75)) none (.block (.mk [(.mk (.bind (.generated .operand 73)) none (.block (.mk [(.mk (.bind (.generated .operand 71)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 72)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 71)), (.move (.generated .operand 72))] true))))] (.call (.runtime .intNeg) [(.move (.generated .operand 73))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 74)), (.move (.generated .operand 75))] true))) (.move (.generated .binding 3))))))]))) :: - []) } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [(([(.pair (.option (.pair .nat .int)) (.list .nat)), .int], (.pair (.option (.pair .nat .int)) (.list .nat))), false), (([(.pair (.list .int) (.list .int)), (.list .int)], (.pair (.list .int) (.list .int))), true), (([(.list .int), .int], (.list .int)), true), (([(.pair .int (.list .int)), .int], (.pair .int (.list .int))), true)] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some (.adt 0)) (.move (.generated .binding 0))), (.mk (.bind (.generated .binding 2)) (some .nat) (.call (.function 1) [(.clone (.generated .binding 1))] true))], (.cond (.call (.function 2) [(.move (.generated .binding 1)), (.copy (.generated .binding 2))] false) (.mk [] (.succeed (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))]))) (.mk [] (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.letBind (Corr.var rfl rfl) rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := []) (ce := (.call (.function 2) [(.move (.generated .binding 1)), (.copy (.generated .binding 2))] false)) (lk := []) (Corr.callOps (ts := [(.adt 0), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))]))) (lb := []) (tb := (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))]))) (Corr.fOfB (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl))))))⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 3) [(.move (.generated .binding 0))] false), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.callF (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 2)) none (.call (.function 4) [(.move (.generated .binding 0))] false))], (.call (.runtime .natEq) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false), [(1, .nat, (some 1)), (0, (.adt 0), (some 0))], rfl, rfl, - (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun3 : FunOK program krate flags 3 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 4)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.call (.function 5) [(.construct (.closure 0 6) []), (.pair (.construct (.none (.pair .nat .int)) []) (.construct .cons [(.lit (.nat 0)), (.construct .cons [(.lit (.nat 1)), (.construct .cons [(.lit (.nat 2)), (.construct .cons [(.lit (.nat 3)), (.construct .cons [(.lit (.nat 4)), (.construct .cons [(.lit (.nat 5)), (.construct .cons [(.lit (.nat 6)), (.construct .cons [(.lit (.nat 7)), (.construct .cons [(.lit (.nat 8)), (.construct .cons [(.lit (.nat 9)), (.construct (.nil .nat) [])])])])])])])])])])])), (.call (.function 7) [(.move (.generated .binding 0))] true)] false))] (.move (.generated .part 3)))))], (.matchOn (.move (.generated .holder 4)) [(.mk .none (.mk [] (.succeed (.lit (.nat 0))))), (.mk (.some (.bind (.generated .binding 1))) (.mk [(.mk (.tuple [(.bind (.generated .part 5)), .wild]) none (.copy (.generated .binding 1)))] (.succeed (.move (.generated .part 5)))))]), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option (.pair .nat .int))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.call (.function 5) [(.construct (.closure 0 6) []), (.pair (.construct (.none (.pair .nat .int)) []) (.construct .cons [(.lit (.nat 0)), (.construct .cons [(.lit (.nat 1)), (.construct .cons [(.lit (.nat 2)), (.construct .cons [(.lit (.nat 3)), (.construct .cons [(.lit (.nat 4)), (.construct .cons [(.lit (.nat 5)), (.construct .cons [(.lit (.nat 6)), (.construct .cons [(.lit (.nat 7)), (.construct .cons [(.lit (.nat 8)), (.construct .cons [(.lit (.nat 9)), (.construct (.nil .nat) [])])])])])])])])])])])), (.call (.function 7) [(.move (.generated .binding 0))] true)] false))]) (tail := (.move (.generated .part 3))) (Corr.first (ta := (.option (.pair .nat .int))) (tb := (.list .nat)) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.pair (.option (.pair .nat .int)) (.list .nat)), .int] (.pair (.option (.pair .nat .int)) (.list .nat))), (.pair (.option (.pair .nat .int)) (.list .nat)), (.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := false) (ff := false) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl)) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.lit (.nat 0)))) (Corr.mCons (Γ' := [(1, (.pair .nat .int), (some 1)), (0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.tuple [(.bind (.generated .part 5)), .wild]) none (.copy (.generated .binding 1)))]) (tail := (.succeed (.move (.generated .part 5)))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.first (ta := .nat) (tb := .int) (Corr.var rfl rfl) rfl))) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl)))) rfl rfl rfl)⟩⟩ - -theorem fun4 : FunOK program krate flags 4 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 6)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 6)) [(.mk (.adt 0 0 []) (.mk [] (.lit (.nat 0)))), (.mk (.adt 0 1 []) (.mk [] (.lit (.nat 1)))), (.mk (.adt 0 2 []) (.mk [] (.lit (.nat 2)))), (.mk (.adt 0 3 []) (.mk [] (.lit (.nat 3)))), (.mk (.adt 0 4 []) (.mk [] (.lit (.nat 4)))), (.mk (.adt 0 5 []) (.mk [] (.lit (.nat 5)))), (.mk (.adt 0 6 []) (.mk [] (.lit (.nat 6)))), (.mk (.adt 0 7 []) (.mk [] (.lit (.nat 7)))), (.mk (.adt 0 8 []) (.mk [] (.lit (.nat 8)))), (.mk (.adt 0 9 []) (.mk [] (.lit (.nat 9))))]), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.adt 0)) (U := []) (view := false) (idx := [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.nat 0))) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.nat 1))) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.nat 2))) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 3) (loads := []) (lets := []) (tail := (.lit (.nat 3))) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 4) (loads := []) (lets := []) (tail := (.lit (.nat 4))) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 5) (loads := []) (lets := []) (tail := (.lit (.nat 5))) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 6) (loads := []) (lets := []) (tail := (.lit (.nat 6))) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 7) (loads := []) (lets := []) (tail := (.lit (.nat 7))) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 8) (loads := []) (lets := []) (tail := (.lit (.nat 8))) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 9) (loads := []) (lets := []) (tail := (.lit (.nat 9))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.value rfl rfl))) rfl rfl rfl (Corr.bOfE (Corr.value rfl rfl))) rfl rfl rfl (Corr.bOfE (Corr.value rfl rfl))) rfl rfl rfl (Corr.bOfE (Corr.value rfl rfl))) rfl rfl rfl (Corr.bOfE (Corr.value rfl rfl))) rfl rfl rfl (Corr.bOfE (Corr.value rfl rfl))) rfl rfl rfl (Corr.bOfE (Corr.value rfl rfl))) rfl rfl rfl (Corr.bOfE (Corr.value rfl rfl))) rfl rfl rfl (Corr.bOfE (Corr.value rfl rfl))) rfl rfl rfl (Corr.bOfE (Corr.value rfl rfl))) rfl rfl rfl)⟩⟩ - -theorem fun5 : FunOK program krate flags 5 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 7)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 7)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 5) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 8)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 8) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]), [(2, (.list .int), (some 2)), (1, (.pair (.option (.pair .nat .int)) (.list .nat)), (some 1)), (0, (.fn [(.pair (.option (.pair .nat .int)) (.list .nat)), .int] (.pair (.option (.pair .nat .int)) (.list .nat))), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .int)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .int), (some 2)), (1, (.pair (.option (.pair .nat .int)) (.list .nat)), (some 1)), (0, (.fn [(.pair (.option (.pair .nat .int)) (.list .nat)), .int] (.pair (.option (.pair .nat .int)) (.list .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 1))) (Corr.mCons (Γ' := [(4, (.list .int), (some 4)), (3, .int, (some 3)), (2, (.list .int), (some 2)), (1, (.pair (.option (.pair .nat .int)) (.list .nat)), (some 1)), (0, (.fn [(.pair (.option (.pair .nat .int)) (.list .nat)), .int] (.pair (.option (.pair .nat .int)) (.list .nat))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 5) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 8)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 8) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.fn [(.pair (.option (.pair .nat .int)) (.list .nat)), .int] (.pair (.option (.pair .nat .int)) (.list .nat))), (.pair (.option (.pair .nat .int)) (.list .nat)), (.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 8)) (some (.fn 0)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 8) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] false)) (Corr.apply (ps := [(.pair (.option (.pair .nat .int)) (.list .nat)), .int]) (af := false) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ - -theorem fun6 : FunOK program krate flags 6 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 10)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 9))]) none (.clone (.generated .binding 0)))] (.move (.generated .part 9)))))], (.matchOn (.uncons (.generated .holder 10)) [(.mk .none (.mk [] (.move (.generated .binding 0)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.pair (.block (.mk [(.mk (.bind (.generated .holder 12)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 11)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 11)))))] (.matchOn (.move (.generated .holder 12)) [(.mk .none (.mk [] (.construct .some [(.pair (.copy (.generated .binding 2)) (.copy (.generated .binding 1)))]))), (.mk (.some (.bind (.generated .binding 4))) (.mk [(.mk (.bind (.generated .holder 16)) none (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 13))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 13))))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1)))] (.call (.runtime .compare) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false))))] (.cond (.matchOn (.move (.generated .holder 16)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.construct .some [(.pair (.copy (.generated .binding 2)) (.copy (.generated .binding 1)))])) (.mk [] (.construct .some [(.copy (.generated .binding 4))])))))]))) (.move (.generated .binding 3)))))]), [(1, .int, (some 1)), (0, (.pair (.option (.pair .nat .int)) (.list .nat)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 9))]) none (.clone (.generated .binding 0)))]) (tail := (.move (.generated .part 9))) (Corr.second (ta := (.option (.pair .nat .int))) (tb := (.list .nat)) (Corr.var rfl rfl) rfl)) (Corr.mCons (Γ' := [(1, .int, (some 1)), (0, (.pair (.option (.pair .nat .int)) (.list .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 0))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .int, (some 1)), (0, (.pair (.option (.pair .nat .int)) (.list .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.pair (.block (.mk [(.mk (.bind (.generated .holder 12)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 11)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 11)))))] (.matchOn (.move (.generated .holder 12)) [(.mk .none (.mk [] (.construct .some [(.pair (.copy (.generated .binding 2)) (.copy (.generated .binding 1)))]))), (.mk (.some (.bind (.generated .binding 4))) (.mk [(.mk (.bind (.generated .holder 16)) none (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 13))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 13))))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1)))] (.call (.runtime .compare) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false))))] (.cond (.matchOn (.move (.generated .holder 16)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.construct .some [(.pair (.copy (.generated .binding 2)) (.copy (.generated .binding 1)))])) (.mk [] (.construct .some [(.copy (.generated .binding 4))])))))]))) (.move (.generated .binding 3)))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 12)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 11)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 11)))))]) (tail := (.matchOn (.move (.generated .holder 12)) [(.mk .none (.mk [] (.construct .some [(.pair (.copy (.generated .binding 2)) (.copy (.generated .binding 1)))]))), (.mk (.some (.bind (.generated .binding 4))) (.mk [(.mk (.bind (.generated .holder 16)) none (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 13))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 13))))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1)))] (.call (.runtime .compare) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false))))] (.cond (.matchOn (.move (.generated .holder 16)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.construct .some [(.pair (.copy (.generated .binding 2)) (.copy (.generated .binding 1)))])) (.mk [] (.construct .some [(.copy (.generated .binding 4))])))))])) (Corr.matchArms (st := (.option (.pair .nat .int))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 11)), .wild]) none (.move (.generated .binding 0)))]) (tail := (.move (.generated .part 11))) (Corr.first (ta := (.option (.pair .nat .int))) (tb := (.list .nat)) (Corr.var rfl rfl) rfl)) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .int, (some 1)), (0, (.pair (.option (.pair .nat .int)) (.list .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.pair (.copy (.generated .binding 2)) (.copy (.generated .binding 1)))])) (Corr.mCons (Γ' := [(4, (.pair .nat .int), (some 4)), (3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .int, (some 1)), (0, (.pair (.option (.pair .nat .int)) (.list .nat)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 16)) none (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 13))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 13))))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1)))] (.call (.runtime .compare) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 16)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.construct .some [(.pair (.copy (.generated .binding 2)) (.copy (.generated .binding 1)))])) (.mk [] (.construct .some [(.copy (.generated .binding 4))])))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .holder 16)) none (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 13))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 13))))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1)))] (.call (.runtime .compare) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false))))]) (ce := (.matchOn (.move (.generated .holder 16)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 14)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 13))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 13))))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 13))]) none (.copy (.generated .binding 4)))]) (tail := (.move (.generated .part 13))) (Corr.second (ta := .nat) (tb := .int) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.pair .nat .int), (some 4)), (3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .int, (some 1)), (0, (.pair (.option (.pair .nat .int)) (.list .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.pair .nat .int), (some 4)), (3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .int, (some 1)), (0, (.pair (.option (.pair .nat .int)) (.list .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, (.pair .nat .int), (some 4)), (3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .int, (some 1)), (0, (.pair (.option (.pair .nat .int)) (.list .nat)), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.pair (.copy (.generated .binding 2)) (.copy (.generated .binding 1)))])) (lb := []) (tb := (.construct .some [(.copy (.generated .binding 4))])) (Corr.build (ts := [(.pair .nat .int)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lNil))) rfl) (Corr.build (ts := [(.pair .nat .int)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)))) rfl rfl rfl (Corr.build (ts := [(.pair .nat .int)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lNil))) rfl)) rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))))) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ - -theorem fun7 : FunOK program krate flags 7 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 8) [(.call (.function 9) [(.call (.function 10) [(.call (.function 11) [(.call (.function 12) [(.move (.generated .binding 0))] false)] true)] true)] true)] false), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.callF (ts := [(.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl)⟩⟩ - -theorem fun8 : FunOK program krate flags 8 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.tuple [(.bind (.generated .part 17)), .wild]) none (.call (.function 13) [(.construct (.closure 1 14) [(.move (.generated .binding 0))]), (.pair (.construct (.nil .int) []) (.call (.function 15) [] false)), (.call (.function 16) [] false)] true))], (.succeed (.move (.generated .part 17))), [(0, (.list .int), (some 0))], rfl, rfl, - (Corr.fOfB (Corr.first (ta := (.list .int)) (tb := (.list .int)) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int))), (.pair (.list .int) (.list .int)), (.list (.list .int))]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [(.list .int)]) (mask := [false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := []) (Corr.opsNil) rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := []) (Corr.opsNil) rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl))⟩⟩ - -theorem fun9 : FunOK program krate flags 9 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 17) [(.construct (.closure 2 18) []), (.construct (.nil .int) []), (.move (.generated .binding 0))] false), [(0, (.list .int), (some 0))], rfl, rfl, - (Corr.callF (ts := [(.fn [(.list .int), .int] (.list .int)), (.list .int), (.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)⟩⟩ - -theorem fun10 : FunOK program krate flags 10 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 17) [(.construct (.closure 2 19) []), (.construct (.nil .int) []), (.move (.generated .binding 0))] false), [(0, (.list .int), (some 0))], rfl, rfl, - (Corr.callF (ts := [(.fn [(.list .int), .int] (.list .int)), (.list .int), (.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := false) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)⟩⟩ - -theorem fun11 : FunOK program krate flags 11 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.tuple [(.bind (.generated .part 18)), .wild]) none (.call (.function 13) [(.construct (.closure 1 20) [(.move (.generated .binding 0))]), (.pair (.construct (.nil .int) []) (.call (.function 21) [] false)), (.call (.function 22) [] false)] true))], (.succeed (.move (.generated .part 18))), [(0, (.list .int), (some 0))], rfl, rfl, - (Corr.fOfB (Corr.first (ta := (.list .int)) (tb := (.list .int)) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int))), (.pair (.list .int) (.list .int)), (.list (.list .int))]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [(.list .int)]) (mask := [false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := []) (Corr.opsNil) rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := []) (Corr.opsNil) rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl))⟩⟩ - -theorem fun12 : FunOK program krate flags 12 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 23) [(.move (.generated .binding 0))] false), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun13 : FunOK program krate flags 13 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 19)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 19)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 13) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 20)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 20) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]), [(2, (.list (.list .int)), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.fn [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int))), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.list .int))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.list .int)), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.fn [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list (.list .int)), (some 4)), (3, (.list .int), (some 3)), (2, (.list (.list .int)), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.fn [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 13) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 20)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 20) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int))), (.pair (.list .int) (.list .int)), (.list (.list .int))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 20)) (some (.fn 1)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 20) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true)) (Corr.apply (ps := [(.pair (.list .int) (.list .int)), (.list .int)]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ - -theorem fun14 : FunOK program krate flags 14 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 22)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 21))]) none (.clone (.generated .binding 1)))] (.move (.generated .part 21)))))], (.matchOn (.uncons (.generated .holder 22)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 23)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 23))))), (.mk (.bind (.generated .operand 29)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 27)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 24)), .wild]) none (.call (.function 24) [(.construct (.closure 3 25) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 24)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 25))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] true))), (.construct (.nil .int) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 28)), (.move (.generated .operand 29))] false))) (.move (.generated .binding 4))))))]), [(2, (.list .int), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.list .int), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .int)) (U := []) (view := true) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 21))]) none (.clone (.generated .binding 1)))]) (tail := (.move (.generated .part 21))) (Corr.second (ta := (.list .int)) (tb := (.list .int)) (Corr.var rfl rfl) rfl)) (Corr.mCons (Γ' := [(2, (.list .int), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.list .int), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list .int), (some 4)), (3, .int, (some 3)), (2, (.list .int), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.list .int), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 23)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 23))))), (.mk (.bind (.generated .operand 29)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 27)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 24)), .wild]) none (.call (.function 24) [(.construct (.closure 3 25) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 24)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 25))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] true))), (.construct (.nil .int) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 28)), (.move (.generated .operand 29))] false))) (.move (.generated .binding 4))))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 23)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 23))))), (.mk (.bind (.generated .operand 29)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 27)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 24)), .wild]) none (.call (.function 24) [(.construct (.closure 3 25) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 24)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 25))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] true))), (.construct (.nil .int) [])]))]) (tail := (.call (.runtime .appendList) [(.move (.generated .operand 28)), (.move (.generated .operand 29))] false)) (Corr.prim (ts := [(.list .int), (.list .int)]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 23)), .wild]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 23))) (Corr.first (ta := (.list .int)) (tb := (.list .int)) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 27)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 24)), .wild]) none (.call (.function 24) [(.construct (.closure 3 25) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 24)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 25))] true))))]) (tail := (.call (.runtime .intSub) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] true)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 25)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 24)), .wild]) none (.call (.function 24) [(.construct (.closure 3 25) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 24)))))]) (tail := (.call (.runtime .intNeg) [(.move (.generated .operand 25))] true)) (Corr.prim (ts := [.int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 24)), .wild]) none (.call (.function 24) [(.construct (.closure 3 25) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))]) (tail := (.move (.generated .part 24))) (Corr.first (ta := .int) (tb := (.list .int)) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.pair .int (.list .int)), .int] (.pair .int (.list .int))), (.pair .int (.list .int)), (.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl)) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))))) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ - -theorem fun15 : FunOK program krate flags 15 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct .cons [(.lit (.int (-6))), (.construct .cons [(.lit (.int (-2))), (.construct .cons [(.lit (.int (-5))), (.construct .cons [(.lit (.int (-5))), (.construct .cons [(.lit (.int (-4))), (.construct .cons [(.lit (.int (-5))), (.construct .cons [(.lit (.int (-6))), (.construct .cons [(.lit (.int (-3))), (.construct .cons [(.lit (.int (-7))), (.construct .cons [(.lit (.int (-6))), (.construct (.nil .int) [])])])])])])])])])])]), [], rfl, rfl, - (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)⟩⟩ - -theorem fun16 : FunOK program krate flags 16 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct (.nil (.list .int)) [])])])])])])])])])])]), [], rfl, rfl, - (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)⟩⟩ - -theorem fun17 : FunOK program krate flags 17 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 30)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 30)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 17) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 31)) (some (.fn 2)) (.move (.generated .binding 0)))] (.apply (.generated .callee 31) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]), [(2, (.list .int), (some 2)), (1, (.list .int), (some 1)), (0, (.fn [(.list .int), .int] (.list .int)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .int)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .int), (some 2)), (1, (.list .int), (some 1)), (0, (.fn [(.list .int), .int] (.list .int)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list .int), (some 4)), (3, .int, (some 3)), (2, (.list .int), (some 2)), (1, (.list .int), (some 1)), (0, (.fn [(.list .int), .int] (.list .int)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 17) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 31)) (some (.fn 2)) (.move (.generated .binding 0)))] (.apply (.generated .callee 31) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.list .int), .int] (.list .int)), (.list .int), (.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 31)) (some (.fn 2)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 31) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true)) (Corr.apply (ps := [(.list .int), .int]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ - -theorem fun18 : FunOK program krate flags 18 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 41)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 42)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .binding 2)) (some .int) (.block (.mk [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 33)) none (.lit (.int 4))), (.mk (.bind (.generated .operand 34)) none (.lit (.int 0)))] (.call (.runtime .intQuot) [(.move (.generated .operand 32)), (.move (.generated .operand 33)), (.move (.generated .operand 34))] true)))), (.mk (.bind (.generated .holder 37)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 36)) none (.lit (.int 0)))] (.call (.runtime .compare) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false))))] (.cond (.matchOn (.move (.generated .holder 37)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.lit (.int 0))) (.mk [(.mk (.bind (.generated .holder 40)) none (.block (.mk [(.mk (.bind (.generated .operand 38)) none (.lit (.int 127))), (.mk (.bind (.generated .operand 39)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 38)), (.move (.generated .operand 39))] false))))] (.cond (.matchOn (.move (.generated .holder 40)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.lit (.int 127))) (.mk [] (.copy (.generated .binding 2)))))))), (.construct (.nil .int) [])]))], (.succeed (.call (.runtime .appendList) [(.move (.generated .operand 41)), (.move (.generated .operand 42))] false)), [(1, .int, (some 1)), (0, (.list .int), (some 0))], rfl, rfl, - (Corr.fOfB (Corr.prim (ts := [(.list .int), (.list .int)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .binding 2)) (some .int) (.block (.mk [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 33)) none (.lit (.int 4))), (.mk (.bind (.generated .operand 34)) none (.lit (.int 0)))] (.call (.runtime .intQuot) [(.move (.generated .operand 32)), (.move (.generated .operand 33)), (.move (.generated .operand 34))] true)))), (.mk (.bind (.generated .holder 37)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 36)) none (.lit (.int 0)))] (.call (.runtime .compare) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 37)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.lit (.int 0))) (.mk [(.mk (.bind (.generated .holder 40)) none (.block (.mk [(.mk (.bind (.generated .operand 38)) none (.lit (.int 127))), (.mk (.bind (.generated .operand 39)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 38)), (.move (.generated .operand 39))] false))))] (.cond (.matchOn (.move (.generated .holder 40)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.lit (.int 127))) (.mk [] (.copy (.generated .binding 2))))))) (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 33)) none (.lit (.int 4))), (.mk (.bind (.generated .operand 34)) none (.lit (.int 0)))]) (tail := (.call (.runtime .intQuot) [(.move (.generated .operand 32)), (.move (.generated .operand 33)), (.move (.generated .operand 34))] true)) (Corr.prim (ts := [.int, .int, .int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := [(.mk (.bind (.generated .holder 37)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 36)) none (.lit (.int 0)))] (.call (.runtime .compare) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false))))]) (ce := (.matchOn (.move (.generated .holder 37)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 35)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 36)) none (.lit (.int 0)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(2, .int, (some 2)), (1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, .int, (some 2)), (1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(2, .int, (some 2)), (1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.int 0))) (lb := [(.mk (.bind (.generated .holder 40)) none (.block (.mk [(.mk (.bind (.generated .operand 38)) none (.lit (.int 127))), (.mk (.bind (.generated .operand 39)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 38)), (.move (.generated .operand 39))] false))))]) (tb := (.cond (.matchOn (.move (.generated .holder 40)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.lit (.int 127))) (.mk [] (.copy (.generated .binding 2))))) (Corr.bOfE (Corr.value rfl rfl)) (Corr.cond (lc := [(.mk (.bind (.generated .holder 40)) none (.block (.mk [(.mk (.bind (.generated .operand 38)) none (.lit (.int 127))), (.mk (.bind (.generated .operand 39)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 38)), (.move (.generated .operand 39))] false))))]) (ce := (.matchOn (.move (.generated .holder 40)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 38)) none (.lit (.int 127))), (.mk (.bind (.generated .operand 39)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 38)), (.move (.generated .operand 39))] false)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(2, .int, (some 2)), (1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, .int, (some 2)), (1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(2, .int, (some 2)), (1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.int 127))) (lb := []) (tb := (.copy (.generated .binding 2))) (Corr.bOfE (Corr.value rfl rfl)) (Corr.bOfE (Corr.var rfl rfl)))))))) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl))⟩⟩ - -theorem fun19 : FunOK program krate flags 19 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 46)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 47)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .holder 45)) none (.block (.mk [(.mk (.bind (.generated .operand 43)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 44)) none (.lit (.int 0)))] (.call (.runtime .compare) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] false))))] (.cond (.matchOn (.move (.generated .holder 45)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.lit (.int 0))) (.mk [] (.copy (.generated .binding 1)))))), (.construct (.nil .int) [])]))], (.call (.runtime .appendList) [(.move (.generated .operand 46)), (.move (.generated .operand 47))] false), [(1, .int, (some 1)), (0, (.list .int), (some 0))], rfl, rfl, - (Corr.prim (ts := [(.list .int), (.list .int)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 45)) none (.block (.mk [(.mk (.bind (.generated .operand 43)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 44)) none (.lit (.int 0)))] (.call (.runtime .compare) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 45)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.lit (.int 0))) (.mk [] (.copy (.generated .binding 1))))) (Corr.cond (lc := [(.mk (.bind (.generated .holder 45)) none (.block (.mk [(.mk (.bind (.generated .operand 43)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 44)) none (.lit (.int 0)))] (.call (.runtime .compare) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] false))))]) (ce := (.matchOn (.move (.generated .holder 45)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 43)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 44)) none (.lit (.int 0)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] false)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.int 0))) (lb := []) (tb := (.copy (.generated .binding 1))) (Corr.bOfE (Corr.value rfl rfl)) (Corr.bOfE (Corr.var rfl rfl))))) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun20 : FunOK program krate flags 20 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 49)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 48))]) none (.clone (.generated .binding 1)))] (.move (.generated .part 48)))))], (.matchOn (.uncons (.generated .holder 49)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 55)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 50)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 50))))), (.mk (.bind (.generated .operand 56)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 53)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 54)) none (.block (.mk [(.mk (.bind (.generated .operand 52)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 51)), .wild]) none (.call (.function 24) [(.construct (.closure 3 26) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 51)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 52))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] true))), (.construct (.nil .int) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 55)), (.move (.generated .operand 56))] false))) (.move (.generated .binding 4))))))]), [(2, (.list .int), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.list .int), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .int)) (U := []) (view := true) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 48))]) none (.clone (.generated .binding 1)))]) (tail := (.move (.generated .part 48))) (Corr.second (ta := (.list .int)) (tb := (.list .int)) (Corr.var rfl rfl) rfl)) (Corr.mCons (Γ' := [(2, (.list .int), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.list .int), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list .int), (some 4)), (3, .int, (some 3)), (2, (.list .int), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.list .int), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 55)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 50)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 50))))), (.mk (.bind (.generated .operand 56)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 53)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 54)) none (.block (.mk [(.mk (.bind (.generated .operand 52)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 51)), .wild]) none (.call (.function 24) [(.construct (.closure 3 26) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 51)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 52))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] true))), (.construct (.nil .int) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 55)), (.move (.generated .operand 56))] false))) (.move (.generated .binding 4))))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 55)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 50)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 50))))), (.mk (.bind (.generated .operand 56)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 53)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 54)) none (.block (.mk [(.mk (.bind (.generated .operand 52)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 51)), .wild]) none (.call (.function 24) [(.construct (.closure 3 26) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 51)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 52))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] true))), (.construct (.nil .int) [])]))]) (tail := (.call (.runtime .appendList) [(.move (.generated .operand 55)), (.move (.generated .operand 56))] false)) (Corr.prim (ts := [(.list .int), (.list .int)]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 50)), .wild]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 50))) (Corr.first (ta := (.list .int)) (tb := (.list .int)) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 53)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 54)) none (.block (.mk [(.mk (.bind (.generated .operand 52)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 51)), .wild]) none (.call (.function 24) [(.construct (.closure 3 26) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 51)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 52))] true))))]) (tail := (.call (.runtime .intSub) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] true)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 52)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 51)), .wild]) none (.call (.function 24) [(.construct (.closure 3 26) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 51)))))]) (tail := (.call (.runtime .intNeg) [(.move (.generated .operand 52))] true)) (Corr.prim (ts := [.int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 51)), .wild]) none (.call (.function 24) [(.construct (.closure 3 26) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))]) (tail := (.move (.generated .part 51))) (Corr.first (ta := .int) (tb := (.list .int)) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.pair .int (.list .int)), .int] (.pair .int (.list .int))), (.pair .int (.list .int)), (.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl)) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))))) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ - -theorem fun21 : FunOK program krate flags 21 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int (-2))), (.construct .cons [(.lit (.int 3)), (.construct .cons [(.lit (.int (-5))), (.construct .cons [(.lit (.int 2)), (.construct (.nil .int) [])])])])])])])])])])])])]), [], rfl, rfl, - (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)⟩⟩ - -theorem fun22 : FunOK program krate flags 22 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct .cons [(.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 3)), (.construct .cons [(.lit (.int (-2))), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int (-1))), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int (-3))), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int (-1))), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int (-2))), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int (-4))), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 3)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct (.nil (.list .int)) [])])])])])])])])])])])])]), [], rfl, rfl, - (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)⟩⟩ - -theorem fun23 : FunOK program krate flags 23 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 57)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 57)) [(.mk (.adt 0 0 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 1 []) (.mk [] (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 2 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 3 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 4 []) (.mk [] (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 5 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 6 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 7 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 8 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 9 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])])))]), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.adt 0)) (U := []) (view := false) (idx := [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 3) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 4) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 5) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 6) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 7) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 8) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 9) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun24 : FunOK program krate flags 24 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 58)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 58)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 24) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 59)) (some (.fn 3)) (.move (.generated .binding 0)))] (.apply (.generated .callee 59) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]), [(2, (.list .int), (some 2)), (1, (.pair .int (.list .int)), (some 1)), (0, (.fn [(.pair .int (.list .int)), .int] (.pair .int (.list .int))), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .int)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .int), (some 2)), (1, (.pair .int (.list .int)), (some 1)), (0, (.fn [(.pair .int (.list .int)), .int] (.pair .int (.list .int))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list .int), (some 4)), (3, .int, (some 3)), (2, (.list .int), (some 2)), (1, (.pair .int (.list .int)), (some 1)), (0, (.fn [(.pair .int (.list .int)), .int] (.pair .int (.list .int))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 24) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 59)) (some (.fn 3)) (.move (.generated .binding 0)))] (.apply (.generated .callee 59) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.pair .int (.list .int)), .int] (.pair .int (.list .int))), (.pair .int (.list .int)), (.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 59)) (some (.fn 3)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 59) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true)) (Corr.apply (ps := [(.pair .int (.list .int)), .int]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ - -theorem fun25 : FunOK program krate flags 25 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 61)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 60))]) none (.clone (.generated .binding 0)))] (.move (.generated .part 60)))))], (.matchOn (.uncons (.generated .holder 61)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 0))))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 66)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 62)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 62))))), (.mk (.bind (.generated .operand 67)) none (.block (.mk [(.mk (.bind (.generated .operand 65)) none (.block (.mk [(.mk (.bind (.generated .operand 63)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 64)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 63)), (.move (.generated .operand 64))] true))))] (.call (.runtime .intNeg) [(.move (.generated .operand 65))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 66)), (.move (.generated .operand 67))] true))) (.move (.generated .binding 3))))))]), [(1, .int, (some 1)), (0, (.pair .int (.list .int)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .int)) (U := []) (view := true) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 60))]) none (.clone (.generated .binding 0)))]) (tail := (.move (.generated .part 60))) (Corr.second (ta := .int) (tb := (.list .int)) (Corr.var rfl rfl) rfl)) (Corr.mCons (Γ' := [(1, .int, (some 1)), (0, (.pair .int (.list .int)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 0)))) (Corr.mCons (Γ' := [(3, (.list .int), (some 3)), (2, .int, (some 2)), (1, .int, (some 1)), (0, (.pair .int (.list .int)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 66)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 62)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 62))))), (.mk (.bind (.generated .operand 67)) none (.block (.mk [(.mk (.bind (.generated .operand 65)) none (.block (.mk [(.mk (.bind (.generated .operand 63)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 64)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 63)), (.move (.generated .operand 64))] true))))] (.call (.runtime .intNeg) [(.move (.generated .operand 65))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 66)), (.move (.generated .operand 67))] true))) (.move (.generated .binding 3))))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 66)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 62)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 62))))), (.mk (.bind (.generated .operand 67)) none (.block (.mk [(.mk (.bind (.generated .operand 65)) none (.block (.mk [(.mk (.bind (.generated .operand 63)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 64)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 63)), (.move (.generated .operand 64))] true))))] (.call (.runtime .intNeg) [(.move (.generated .operand 65))] true))))]) (tail := (.call (.runtime .intSub) [(.move (.generated .operand 66)), (.move (.generated .operand 67))] true)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 62)), .wild]) none (.move (.generated .binding 0)))]) (tail := (.move (.generated .part 62))) (Corr.first (ta := .int) (tb := (.list .int)) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 65)) none (.block (.mk [(.mk (.bind (.generated .operand 63)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 64)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 63)), (.move (.generated .operand 64))] true))))]) (tail := (.call (.runtime .intNeg) [(.move (.generated .operand 65))] true)) (Corr.prim (ts := [.int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 63)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 64)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .intMul) [(.move (.generated .operand 63)), (.move (.generated .operand 64))] true)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))))) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ - -theorem fun26 : FunOK program krate flags 26 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 69)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 68))]) none (.clone (.generated .binding 0)))] (.move (.generated .part 68)))))], (.matchOn (.uncons (.generated .holder 69)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 0))))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 74)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 70)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 70))))), (.mk (.bind (.generated .operand 75)) none (.block (.mk [(.mk (.bind (.generated .operand 73)) none (.block (.mk [(.mk (.bind (.generated .operand 71)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 72)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 71)), (.move (.generated .operand 72))] true))))] (.call (.runtime .intNeg) [(.move (.generated .operand 73))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 74)), (.move (.generated .operand 75))] true))) (.move (.generated .binding 3))))))]), [(1, .int, (some 1)), (0, (.pair .int (.list .int)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .int)) (U := []) (view := true) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 68))]) none (.clone (.generated .binding 0)))]) (tail := (.move (.generated .part 68))) (Corr.second (ta := .int) (tb := (.list .int)) (Corr.var rfl rfl) rfl)) (Corr.mCons (Γ' := [(1, .int, (some 1)), (0, (.pair .int (.list .int)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 0)))) (Corr.mCons (Γ' := [(3, (.list .int), (some 3)), (2, .int, (some 2)), (1, .int, (some 1)), (0, (.pair .int (.list .int)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 74)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 70)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 70))))), (.mk (.bind (.generated .operand 75)) none (.block (.mk [(.mk (.bind (.generated .operand 73)) none (.block (.mk [(.mk (.bind (.generated .operand 71)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 72)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 71)), (.move (.generated .operand 72))] true))))] (.call (.runtime .intNeg) [(.move (.generated .operand 73))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 74)), (.move (.generated .operand 75))] true))) (.move (.generated .binding 3))))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 74)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 70)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 70))))), (.mk (.bind (.generated .operand 75)) none (.block (.mk [(.mk (.bind (.generated .operand 73)) none (.block (.mk [(.mk (.bind (.generated .operand 71)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 72)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 71)), (.move (.generated .operand 72))] true))))] (.call (.runtime .intNeg) [(.move (.generated .operand 73))] true))))]) (tail := (.call (.runtime .intSub) [(.move (.generated .operand 74)), (.move (.generated .operand 75))] true)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 70)), .wild]) none (.move (.generated .binding 0)))]) (tail := (.move (.generated .part 70))) (Corr.first (ta := .int) (tb := (.list .int)) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 73)) none (.block (.mk [(.mk (.bind (.generated .operand 71)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 72)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 71)), (.move (.generated .operand 72))] true))))]) (tail := (.call (.runtime .intNeg) [(.move (.generated .operand 73))] true)) (Corr.prim (ts := [.int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 71)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 72)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .intMul) [(.move (.generated .operand 71)), (.move (.generated .operand 72))] true)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))))) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | 3 => exact fun3 - | 4 => exact fun4 - | 5 => exact fun5 - | 6 => exact fun6 - | 7 => exact fun7 - | 8 => exact fun8 - | 9 => exact fun9 - | 10 => exact fun10 - | 11 => exact fun11 - | 12 => exact fun12 - | 13 => exact fun13 - | 14 => exact fun14 - | 15 => exact fun15 - | 16 => exact fun16 - | 17 => exact fun17 - | 18 => exact fun18 - | 19 => exact fun19 - | 20 => exact fun20 - | 21 => exact fun21 - | 22 => exact fun22 - | 23 => exact fun23 - | 24 => exact fun24 - | 25 => exact fun25 - | 26 => exact fun26 - | _ + 27 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.RustStd diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R2.lean b/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R2.lean deleted file mode 100644 index 948bebb0d..000000000 --- a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R2.lean +++ /dev/null @@ -1,217 +0,0 @@ -import LexLeanPreservation.Core -import LexLeanPreservation.Values -import LexLeanPreservation.Primitives -import LexLeanPreservation.Fixed -import LexLeanPreservation.Keys -import LexLeanPreservation.Templates -import LexLeanPreservation.Validate -import Models.Flows -import Models.Glyphs -import Models.Ledger -import Models.Main -import Models.Pipeline -import Models.Policy -import Models.Recognizer -import Models.Session -import Models.Triage -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -set_option linter.unusedVariables false -namespace LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2 - -def __prog : _root_.LexLeanTarget.TargetSyntax.Program := - { adts := [{ constructors := [[], [], [], [], [], [], [], []] }, - { constructors := [[], [], []] }], functions := [ - { parameters := [0], types := [(.adt 0)], result := (.result .nat (.pair .bool .bool)), - body := (.«let» 1 (.adt 0) (.var 0) (.cond (.call 1 [(.var 1)]) (.«let» 2 .nat (.call 2 [(.var 1)]) (.build .ok (.result .nat (.pair .bool .bool)) [(.var 2)])) (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])]))) }, - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.call 3 [(.var 0)]) }, - { parameters := [0], types := [(.adt 0)], result := .nat, - body := (.call 4 [(.var 0)]) }, - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.«match» .bool (.var 0) [(.arm (.adt 0) [] (.build .false .bool [])), (.arm (.adt 1) [] (.build .true .bool [])), (.arm (.adt 2) [] (.build .true .bool [])), (.arm (.adt 3) [] (.build .true .bool [])), (.arm (.adt 4) [] (.build .true .bool [])), (.arm (.adt 5) [] (.build .true .bool [])), (.arm (.adt 6) [] (.build .true .bool [])), (.arm (.adt 7) [] (.build .true .bool []))]) }, - { parameters := [0], types := [(.adt 0)], result := .nat, - body := (.«let» 1 (.adt 1) (.call 5 [(.var 0)]) (.«let» 2 .nat (.call 6 [(.var 1)]) (.var 2))) }, - { parameters := [0], types := [(.adt 0)], result := (.adt 1), - body := (.call 7 [(.var 0)]) }, - { parameters := [0], types := [(.adt 1)], result := .nat, - body := (.call 8 [(.var 0)]) }, - { parameters := [0], types := [(.adt 0)], result := (.adt 1), - body := (.«match» (.adt 1) (.first (.call 9 [(.closure 10 []), (.build .pair (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))) [(.build .none (.option (.pair (.adt 1) .int)) []), (.build .cons (.list (.adt 1)) [(.build (.adt 0) (.adt 1) []), (.build .cons (.list (.adt 1)) [(.build (.adt 1) (.adt 1) []), (.build .cons (.list (.adt 1)) [(.build (.adt 2) (.adt 1) []), (.build .nil (.list (.adt 1)) [])])])])]), (.call 11 [(.var 0)])])) [(.arm .none [] (.build (.adt 0) (.adt 1) [])), (.arm .some [1] (.first (.var 1)))]) }, - { parameters := [0], types := [(.adt 1)], result := .nat, - body := (.cond (.call 12 [(.var 0)]) (.value .nat (.nat 2)) (.cond (.call 13 [(.var 0)]) (.value .nat (.nat 1)) (.value .nat (.nat 0)))) }, - { parameters := [0, 1, 2], types := [(.fn [(.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), .int] (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1)))), (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), (.list .int)], result := (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), - body := (.«match» (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 9 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, - { parameters := [0, 1], types := [(.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), .int], result := (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), - body := (.«match» (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))) (.second (.var 0)) [(.arm .nil [] (.var 0)), (.arm .cons [2, 3] (.build .pair (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))) [(.«match» (.option (.pair (.adt 1) .int)) (.first (.var 0)) [(.arm .none [] (.build .some (.option (.pair (.adt 1) .int)) [(.build .pair (.pair (.adt 1) .int) [(.var 2), (.var 1)])])), (.arm .some [4] (.cond (.«match» .bool (.prim .compare [(.second (.var 4)), (.var 1)]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.build .some (.option (.pair (.adt 1) .int)) [(.build .pair (.pair (.adt 1) .int) [(.var 2), (.var 1)])]) (.build .some (.option (.pair (.adt 1) .int)) [(.var 4)])))]), (.var 3)]))]) }, - { parameters := [0], types := [(.adt 0)], result := (.list .int), - body := (.«let» 1 (.list .int) (.call 14 [(.var 0)]) (.first (.call 15 [(.closure 16 [(.var 1)]), (.build .pair (.pair (.list .int) (.list .int)) [(.build .nil (.list .int) []), (.call 17 [])]), (.call 18 [])]))) }, - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.«match» .bool (.var 0) [(.arm (.adt 0) [] (.build .false .bool [])), (.arm (.adt 1) [] (.build .false .bool [])), (.arm (.adt 2) [] (.build .true .bool []))]) }, - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.«match» .bool (.var 0) [(.arm (.adt 0) [] (.build .false .bool [])), (.arm (.adt 1) [] (.build .true .bool [])), (.arm (.adt 2) [] (.build .false .bool []))]) }, - { parameters := [0], types := [(.adt 0)], result := (.list .int), - body := (.call 19 [(.var 0)]) }, - { parameters := [0, 1, 2], types := [(.fn [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int))), (.pair (.list .int) (.list .int)), (.list (.list .int))], result := (.pair (.list .int) (.list .int)), - body := (.«match» (.pair (.list .int) (.list .int)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 15 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, - { parameters := [0, 1, 2], types := [(.list .int), (.pair (.list .int) (.list .int)), (.list .int)], result := (.pair (.list .int) (.list .int)), - body := (.«match» (.pair (.list .int) (.list .int)) (.second (.var 1)) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.build .pair (.pair (.list .int) (.list .int)) [(.prim .append [(.first (.var 1)), (.build .cons (.list .int) [(.prim .intSub [(.var 3), (.prim .intNeg [(.first (.call 20 [(.closure 21 []), (.build .pair (.pair .int (.list .int)) [(.value .int (.int 0)), (.var 0)]), (.var 2)]))])]), (.build .nil (.list .int) [])])]), (.var 4)]))]) }, - { parameters := [], types := [], result := (.list .int), - body := (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int (-1))), (.build .nil (.list .int) [])])])]) }, - { parameters := [], types := [], result := (.list (.list .int)), - body := (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int (-2))), (.build .cons (.list .int) [(.value .int (.int (-2))), (.build .cons (.list .int) [(.value .int (.int (-4))), (.build .nil (.list .int) [])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 5)), (.build .nil (.list .int) [])])])]), (.build .nil (.list (.list .int)) [])])])]) }, - { parameters := [0], types := [(.adt 0)], result := (.list .int), - body := (.«match» (.list .int) (.var 0) [(.arm (.adt 0) [] (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])), (.arm (.adt 1) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])), (.arm (.adt 2) [] (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])), (.arm (.adt 3) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])), (.arm (.adt 4) [] (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])), (.arm (.adt 5) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])), (.arm (.adt 6) [] (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])), (.arm (.adt 7) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])]))]) }, - { parameters := [0, 1, 2], types := [(.fn [(.pair .int (.list .int)), .int] (.pair .int (.list .int))), (.pair .int (.list .int)), (.list .int)], result := (.pair .int (.list .int)), - body := (.«match» (.pair .int (.list .int)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 20 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, - { parameters := [0, 1], types := [(.pair .int (.list .int)), .int], result := (.pair .int (.list .int)), - body := (.«match» (.pair .int (.list .int)) (.second (.var 0)) [(.arm .nil [] (.var 0)), (.arm .cons [2, 3] (.build .pair (.pair .int (.list .int)) [(.prim .intSub [(.first (.var 0)), (.prim .intNeg [(.prim .intMul [(.var 1), (.var 2)])])]), (.var 3)]))]) }] } - -def __enc_0 : (Models.Triage.Presentation) -> _root_.LexLeanTarget.TargetSyntax.Value - | Models.Triage.Presentation.p0 => _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [] - | Models.Triage.Presentation.p1 => _root_.LexLeanTarget.TargetSyntax.Value.adt 1 [] - | Models.Triage.Presentation.p2 => _root_.LexLeanTarget.TargetSyntax.Value.adt 2 [] - | Models.Triage.Presentation.p3 => _root_.LexLeanTarget.TargetSyntax.Value.adt 3 [] - | Models.Triage.Presentation.p4 => _root_.LexLeanTarget.TargetSyntax.Value.adt 4 [] - | Models.Triage.Presentation.p5 => _root_.LexLeanTarget.TargetSyntax.Value.adt 5 [] - | Models.Triage.Presentation.p6 => _root_.LexLeanTarget.TargetSyntax.Value.adt 6 [] - | Models.Triage.Presentation.p7 => _root_.LexLeanTarget.TargetSyntax.Value.adt 7 [] - -def __enc_1 : (Models.Triage.Level) -> _root_.LexLeanTarget.TargetSyntax.Value - | Models.Triage.Level.routine => _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [] - | Models.Triage.Level.urgent => _root_.LexLeanTarget.TargetSyntax.Value.adt 1 [] - | Models.Triage.Level.emergency => _root_.LexLeanTarget.TargetSyntax.Value.adt 2 [] - -def __fits_3 (presentation : (Models.Triage.Presentation)) : Bool := - (Bool.true && (match presentation with | Models.Triage.Presentation.p0 => (Bool.true && Bool.true) | Models.Triage.Presentation.p1 => (Bool.true && Bool.true) | Models.Triage.Presentation.p2 => (Bool.true && Bool.true) | Models.Triage.Presentation.p3 => (Bool.true && Bool.true) | Models.Triage.Presentation.p4 => (Bool.true && Bool.true) | Models.Triage.Presentation.p5 => (Bool.true && Bool.true) | Models.Triage.Presentation.p6 => (Bool.true && Bool.true) | Models.Triage.Presentation.p7 => (Bool.true && Bool.true))) - -theorem __rel_3 (presentation : (Models.Triage.Presentation)) : _root_.LexLeanPreservation.FunRel __prog 3 [(__enc_0 presentation)] (_root_.LexLeanPreservation.Rel (__fits_3 presentation) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Models.Triage.hasSymptom presentation))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV __enc_0 (fun (__a : (Models.Triage.Presentation)) => (match __a with | Models.Triage.Presentation.p0 => (Bool.true && Bool.true) | Models.Triage.Presentation.p1 => (Bool.true && Bool.true) | Models.Triage.Presentation.p2 => (Bool.true && Bool.true) | Models.Triage.Presentation.p3 => (Bool.true && Bool.true) | Models.Triage.Presentation.p4 => (Bool.true && Bool.true) | Models.Triage.Presentation.p5 => (Bool.true && Bool.true) | Models.Triage.Presentation.p6 => (Bool.true && Bool.true) | Models.Triage.Presentation.p7 => (Bool.true && Bool.true))) (fun (__a : (Models.Triage.Presentation)) => _root_.LexLeanTarget.TargetSyntax.Value.bool (match __a with | Models.Triage.Presentation.p0 => Bool.false | Models.Triage.Presentation.p1 => Bool.true | Models.Triage.Presentation.p2 => Bool.true | Models.Triage.Presentation.p3 => Bool.true | Models.Triage.Presentation.p4 => Bool.true | Models.Triage.Presentation.p5 => Bool.true | Models.Triage.Presentation.p6 => Bool.true | Models.Triage.Presentation.p7 => Bool.true)) presentation (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (Models.Triage.Presentation)) _ => match __a with | Models.Triage.Presentation.p0 => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)) | Models.Triage.Presentation.p1 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true))) | Models.Triage.Presentation.p2 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)))) | Models.Triage.Presentation.p3 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true))))) | Models.Triage.Presentation.p4 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)))))) | Models.Triage.Presentation.p5 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true))))))) | Models.Triage.Presentation.p6 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)))))))) | Models.Triage.Presentation.p7 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true))))))))))) - -def __fits_1 (presentation : (Models.Triage.Presentation)) : Bool := - ((Bool.true && Bool.true) && (__fits_3 (presentation))) - -attribute [local irreducible] Models.Triage.hasSymptom in -theorem __rel_1 (presentation : (Models.Triage.Presentation)) : _root_.LexLeanPreservation.FunRel __prog 1 [(__enc_0 presentation)] (_root_.LexLeanPreservation.Rel (__fits_1 presentation) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Models.Triage.symptomaticCheck presentation))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_3 (presentation))) - -def __fits_10 (_ybest : (Prod (Option (Prod (Models.Triage.Level) Int)) (List (Models.Triage.Level)))) (_yscore : Int) : Bool := - (Bool.true && (match (_ybest).2 with | List.nil => Bool.true | List.cons _ylabel _ylabels => (((Bool.true && (match (_ybest).1 with | Option.none => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.some _yleader => ((Bool.true && (Bool.true && Bool.true)) && (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((Bool.true && Bool.true) && Bool.true))))) && (Bool.true && Bool.true)) && Bool.true))) - -theorem __rel_10 (_ybest : (Prod (Option (Prod (Models.Triage.Level) Int)) (List (Models.Triage.Level)))) (_yscore : Int) : _root_.LexLeanPreservation.FunRel __prog 10 [((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair __enc_1 _root_.LexLeanTarget.TargetSyntax.Value.int)) (_root_.LexLeanPreservation.encList __enc_1)) _ybest), (_root_.LexLeanTarget.TargetSyntax.Value.int _yscore)] (_root_.LexLeanPreservation.Rel (__fits_10 _ybest _yscore) ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair __enc_1 _root_.LexLeanTarget.TargetSyntax.Value.int)) (_root_.LexLeanPreservation.encList __enc_1)) ((match (_ybest).2 with | List.nil => _ybest | List.cons _ylabel _ylabels => ((match (_ybest).1 with | Option.none => (Option.some ((_ylabel, _yscore)) : (Option (Prod (Models.Triage.Level) Int))) | Option.some _yleader => (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then (Option.some ((_ylabel, _yscore)) : (Option (Prod (Models.Triage.Level) Int))) else (Option.some (_yleader) : (Option (Prod (Models.Triage.Level) Int))))), _ylabels))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encList __enc_1) (fun (__a : (List (Models.Triage.Level))) => (match __a with | List.nil => Bool.true | List.cons _ylabel _ylabels => (((Bool.true && (match (_ybest).1 with | Option.none => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.some _yleader => ((Bool.true && (Bool.true && Bool.true)) && (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((Bool.true && Bool.true) && Bool.true))))) && (Bool.true && Bool.true)) && Bool.true))) (fun (__a : (List (Models.Triage.Level))) => (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair __enc_1 _root_.LexLeanTarget.TargetSyntax.Value.int)) (_root_.LexLeanPreservation.encList __enc_1)) (match __a with | List.nil => _ybest | List.cons _ylabel _ylabels => ((match (_ybest).1 with | Option.none => (Option.some ((_ylabel, _yscore)) : (Option (Prod (Models.Triage.Level) Int))) | Option.some _yleader => (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then (Option.some ((_ylabel, _yscore)) : (Option (Prod (Models.Triage.Level) Int))) else (Option.some (_yleader) : (Option (Prod (Models.Triage.Level) Int))))), _ylabels))) (_ybest).2 (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (fun (__a : (List (Models.Triage.Level))) _ => match __a with | List.nil => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | List.cons _ylabel _ylabels => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair __enc_1 _root_.LexLeanTarget.TargetSyntax.Value.int)) (fun (__a : (Option (Prod (Models.Triage.Level) Int))) => (match __a with | Option.none => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.some _yleader => ((Bool.true && (Bool.true && Bool.true)) && (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((Bool.true && Bool.true) && Bool.true))))) (fun (__a : (Option (Prod (Models.Triage.Level) Int))) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair __enc_1 _root_.LexLeanTarget.TargetSyntax.Value.int)) (match __a with | Option.none => (Option.some ((_ylabel, _yscore)) : (Option (Prod (Models.Triage.Level) Int))) | Option.some _yleader => (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then (Option.some ((_ylabel, _yscore)) : (Option (Prod (Models.Triage.Level) Int))) else (Option.some (_yleader) : (Option (Prod (Models.Triage.Level) Int)))))) (_ybest).1 (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (fun (__a : (Option (Prod (Models.Triage.Level) Int))) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.some _yleader => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((Bool.true && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair __enc_1 _root_.LexLeanTarget.TargetSyntax.Value.int)) (if __b then (Option.some ((_ylabel, _yscore)) : (Option (Prod (Models.Triage.Level) Int))) else (Option.some (_yleader) : (Option (Prod (Models.Triage.Level) Int))))) (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) (_root_.LexLeanPreservation.conv_lessThan (_root_.LexLeanPreservation.keySpec_int (_root_.LexLeanCollections.Key.compare : Int -> Int -> Ordering) (fun _ _ => rfl)) _root_.LexLeanCollections.lessThan (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some))))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))))) - -def __fits_19 (presentation : (Models.Triage.Presentation)) : Bool := - (Bool.true && (match presentation with | Models.Triage.Presentation.p0 => ((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Triage.Presentation.p1 => ((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Triage.Presentation.p2 => ((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Triage.Presentation.p3 => ((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Triage.Presentation.p4 => ((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Triage.Presentation.p5 => ((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Triage.Presentation.p6 => ((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Triage.Presentation.p7 => ((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true))) - -theorem __rel_19 (presentation : (Models.Triage.Presentation)) : _root_.LexLeanPreservation.FunRel __prog 19 [(__enc_0 presentation)] (_root_.LexLeanPreservation.Rel (__fits_19 presentation) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (Models.Triage.features presentation))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV __enc_0 (fun (__a : (Models.Triage.Presentation)) => (match __a with | Models.Triage.Presentation.p0 => ((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Triage.Presentation.p1 => ((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Triage.Presentation.p2 => ((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Triage.Presentation.p3 => ((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Triage.Presentation.p4 => ((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Triage.Presentation.p5 => ((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Triage.Presentation.p6 => ((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Triage.Presentation.p7 => ((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true))) (fun (__a : (Models.Triage.Presentation)) => (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (match __a with | Models.Triage.Presentation.p0 => ((0 : Int) :: ((0 : Int) :: ((0 : Int) :: ([] : List Int)))) | Models.Triage.Presentation.p1 => ((1 : Int) :: ((0 : Int) :: ((0 : Int) :: ([] : List Int)))) | Models.Triage.Presentation.p2 => ((0 : Int) :: ((1 : Int) :: ((0 : Int) :: ([] : List Int)))) | Models.Triage.Presentation.p3 => ((1 : Int) :: ((1 : Int) :: ((0 : Int) :: ([] : List Int)))) | Models.Triage.Presentation.p4 => ((0 : Int) :: ((0 : Int) :: ((1 : Int) :: ([] : List Int)))) | Models.Triage.Presentation.p5 => ((1 : Int) :: ((0 : Int) :: ((1 : Int) :: ([] : List Int)))) | Models.Triage.Presentation.p6 => ((0 : Int) :: ((1 : Int) :: ((1 : Int) :: ([] : List Int)))) | Models.Triage.Presentation.p7 => ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ([] : List Int)))))) presentation (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (Models.Triage.Presentation)) _ => match __a with | Models.Triage.Presentation.p0 => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons)) | Models.Triage.Presentation.p1 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons))) | Models.Triage.Presentation.p2 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons)))) | Models.Triage.Presentation.p3 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons))))) | Models.Triage.Presentation.p4 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons)))))) | Models.Triage.Presentation.p5 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons))))))) | Models.Triage.Presentation.p6 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons)))))))) | Models.Triage.Presentation.p7 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons))))))))))) - -def __fits_14 (presentation : (Models.Triage.Presentation)) : Bool := - ((Bool.true && Bool.true) && (__fits_19 (presentation))) - -attribute [local irreducible] Models.Triage.features in -theorem __rel_14 (presentation : (Models.Triage.Presentation)) : _root_.LexLeanPreservation.FunRel __prog 14 [(__enc_0 presentation)] (_root_.LexLeanPreservation.Rel (__fits_14 presentation) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (Models.Triage.TriageScore.features presentation))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_19 (presentation))) - -def __fits_21 (_ysum : (Prod Int (List Int))) (_yweight : Int) : Bool := - (Bool.true && (match (_ysum).2 with | List.nil => Bool.true | List.cons _yvalue _yrest => ((((Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int))) && Bool.true) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int))) && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int))) && (Bool.true && Bool.true)) && Bool.true))) - -theorem __rel_21 (_ysum : (Prod Int (List Int))) (_yweight : Int) : _root_.LexLeanPreservation.FunRel __prog 21 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) _ysum), (_root_.LexLeanTarget.TargetSyntax.Value.int _yweight)] (_root_.LexLeanPreservation.Rel (__fits_21 _ysum _yweight) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) ((match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (fun (__a : (List Int)) => (match __a with | List.nil => Bool.true | List.cons _yvalue _yrest => ((((Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int))) && Bool.true) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int))) && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int))) && (Bool.true && Bool.true)) && Bool.true))) (fun (__a : (List Int)) => (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (match __a with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest))) (_ysum).2 (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (fun (__a : (List Int)) _ => match __a with | List.nil => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | List.cons _yvalue _yrest => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_intMul _yweight _yvalue)) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_intNeg (_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_intSub (_ysum).1 (_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))))) - -def __fits_16 (_yvalues : (List Int)) (_yacc : (Prod (List Int) (List Int))) (_yrow : (List Int)) : Bool := - (Bool.true && (match (_yacc).2 with | List.nil => Bool.true | List.cons _ybias _ybiases => ((((Bool.true && (((((Bool.true && (((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Prod Int (List Int))) (__p1 : Int) => __fits_21 __p0 __p1) ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow))) && Bool.true) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int))) && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int))) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (Bool.true && Bool.true)) && Bool.true))) - -theorem __rel_16 (_yvalues : (List Int)) (_yacc : (Prod (List Int) (List Int))) (_yrow : (List Int)) : _root_.LexLeanPreservation.FunRel __prog 16 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yvalues), ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) _yacc), ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yrow)] (_root_.LexLeanPreservation.Rel (__fits_16 _yvalues _yacc _yrow) ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) ((match (_yacc).2 with | List.nil => _yacc | List.cons _ybias _ybiases => ((_root_.LexLeanRuntime.append ((_yacc).1) (((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int))) : (List Int)), _ybiases))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (fun (__a : (List Int)) => (match __a with | List.nil => Bool.true | List.cons _ybias _ybiases => ((((Bool.true && (((((Bool.true && (((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Prod Int (List Int))) (__p1 : Int) => __fits_21 __p0 __p1) ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow))) && Bool.true) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int))) && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int))) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (Bool.true && Bool.true)) && Bool.true))) (fun (__a : (List Int)) => (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (match __a with | List.nil => _yacc | List.cons _ybias _ybiases => ((_root_.LexLeanRuntime.append ((_yacc).1) (((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int))) : (List Int)), _ybiases))) (_yacc).2 (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (fun (__a : (List Int)) _ => match __a with | List.nil => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | List.cons _ybias _ybiases => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.int) (es := (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int))) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.int) (fun _ => rfl) ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (fun (__p0 : (Prod Int (List Int))) (__p1 : Int) => __fits_21 __p0 __p1) 21 [] (fun (__p0 : (Prod Int (List Int))) (__p1 : Int) => __rel_21 __p0 __p1) (p := __prog) (fi := 20) (ta := .int) (ts := (.pair .int (.list .int))) rfl (((0 : Int), _yvalues)) (_yrow)))) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_intNeg ((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_intSub _ybias (_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.int) (_yacc).1 ((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))))) - -def __fits_17 : Bool := - ((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) - -theorem __rel_17 : _root_.LexLeanPreservation.FunRel __prog 17 [] (_root_.LexLeanPreservation.Rel (__fits_17) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (Models.Triage.triageBias))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) - -def __fits_18 : Bool := - ((((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) - -theorem __rel_18 : _root_.LexLeanPreservation.FunRel __prog 18 [] (_root_.LexLeanPreservation.Rel (__fits_18) ((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (Models.Triage.triageWeights))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) - -def __fits_11 (presentation : (Models.Triage.Presentation)) : Bool := - (((Bool.true && Bool.true) && (__fits_14 (presentation))) && (let _yvalues : (List Int) := (Models.Triage.TriageScore.features (presentation)); (((Bool.true && Bool.true) && ((((Bool.true && Bool.true) && ((Bool.true && (__fits_17)) && Bool.true)) && Bool.true) && ((Bool.true && (__fits_18)) && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Prod (List Int) (List Int))) (__p1 : (List Int)) => __fits_16 (_yvalues) __p0 __p1) ((fun (_yacc : (Prod (List Int) (List Int))) (_yrow : (List Int)) => (match (_yacc).2 with | List.nil => _yacc | List.cons _ybias _ybiases => ((_root_.LexLeanRuntime.append ((_yacc).1) (((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int))) : (List Int)), _ybiases)))) ((([] : List Int), (Models.Triage.triageBias))) ((Models.Triage.triageWeights)))))) - -attribute [local irreducible] Models.Triage.TriageScore.features Models.Triage.triageBias Models.Triage.triageWeights in -theorem __rel_11 (presentation : (Models.Triage.Presentation)) : _root_.LexLeanPreservation.FunRel __prog 11 [(__enc_0 presentation)] (_root_.LexLeanPreservation.Rel (__fits_11 presentation) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (Models.Triage.TriageScore.scores presentation))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (let _yvalues : (List Int) := (Models.Triage.TriageScore.features (presentation)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_14 (presentation))) (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call _root_.LexLeanPreservation.convL_nil (__rel_17)) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call _root_.LexLeanPreservation.convL_nil (__rel_18)) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (es := (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int))) (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (fun _ => rfl) ((fun (_yacc : (Prod (List Int) (List Int))) (_yrow : (List Int)) => (match (_yacc).2 with | List.nil => _yacc | List.cons _ybias _ybiases => ((_root_.LexLeanRuntime.append ((_yacc).1) (((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int))) : (List Int)), _ybiases)))) (fun (__p0 : (Prod (List Int) (List Int))) (__p1 : (List Int)) => __fits_16 (_yvalues) __p0 __p1) 16 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yvalues)] (fun (__p0 : (Prod (List Int) (List Int))) (__p1 : (List Int)) => __rel_16 (_yvalues) __p0 __p1) (p := __prog) (fi := 15) (ta := (.list .int)) (ts := (.pair (.list .int) (.list .int))) rfl ((([] : List Int), (Models.Triage.triageBias))) ((Models.Triage.triageWeights)))))) - -def __fits_7 (presentation : (Models.Triage.Presentation)) : Bool := - (((Bool.true && ((((Bool.true && Bool.true) && ((((Bool.true && Bool.true) && ((((Bool.true && Bool.true) && ((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((Bool.true && Bool.true) && (__fits_11 (presentation))) && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Prod (Option (Prod (Models.Triage.Level) Int)) (List (Models.Triage.Level)))) (__p1 : Int) => __fits_10 __p0 __p1) ((fun (_ybest : (Prod (Option (Prod (Models.Triage.Level) Int)) (List (Models.Triage.Level)))) (_yscore : Int) => (match (_ybest).2 with | List.nil => _ybest | List.cons _ylabel _ylabels => ((match (_ybest).1 with | Option.none => (Option.some ((_ylabel, _yscore)) : (Option (Prod (Models.Triage.Level) Int))) | Option.some _yleader => (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then (Option.some ((_ylabel, _yscore)) : (Option (Prod (Models.Triage.Level) Int))) else (Option.some (_yleader) : (Option (Prod (Models.Triage.Level) Int))))), _ylabels)))) (((Option.none : (Option (Prod (Models.Triage.Level) Int))), ((Models.Triage.Level.routine : (Models.Triage.Level)) :: ((Models.Triage.Level.urgent : (Models.Triage.Level)) :: ((Models.Triage.Level.emergency : (Models.Triage.Level)) :: ([] : List (Models.Triage.Level))))))) ((Models.Triage.TriageScore.scores (presentation))))) && (match ((_root_.LexLeanCollections.listFold ((fun (_ybest : (Prod (Option (Prod (Models.Triage.Level) Int)) (List (Models.Triage.Level)))) (_yscore : Int) => (match (_ybest).2 with | List.nil => _ybest | List.cons _ylabel _ylabels => ((match (_ybest).1 with | Option.none => (Option.some ((_ylabel, _yscore)) : (Option (Prod (Models.Triage.Level) Int))) | Option.some _yleader => (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then (Option.some ((_ylabel, _yscore)) : (Option (Prod (Models.Triage.Level) Int))) else (Option.some (_yleader) : (Option (Prod (Models.Triage.Level) Int))))), _ylabels)))) (((Option.none : (Option (Prod (Models.Triage.Level) Int))), ((Models.Triage.Level.routine : (Models.Triage.Level)) :: ((Models.Triage.Level.urgent : (Models.Triage.Level)) :: ((Models.Triage.Level.emergency : (Models.Triage.Level)) :: ([] : List (Models.Triage.Level))))))) ((Models.Triage.TriageScore.scores (presentation))) : (Prod (Option (Prod (Models.Triage.Level) Int)) (List (Models.Triage.Level))))).1 with | Option.none => (Bool.true && Bool.true) | Option.some _ywinner => Bool.true)) - -attribute [local irreducible] Models.Triage.TriageScore.scores in -theorem __rel_7 (presentation : (Models.Triage.Presentation)) : _root_.LexLeanPreservation.FunRel __prog 7 [(__enc_0 presentation)] (_root_.LexLeanPreservation.Rel (__fits_7 presentation) (__enc_1 (Models.Triage.TriageScore presentation))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair __enc_1 _root_.LexLeanTarget.TargetSyntax.Value.int)) (fun (__a : (Option (Prod (Models.Triage.Level) Int))) => (match __a with | Option.none => (Bool.true && Bool.true) | Option.some _ywinner => Bool.true)) (fun (__a : (Option (Prod (Models.Triage.Level) Int))) => __enc_1 (match __a with | Option.none => (Models.Triage.Level.routine : (Models.Triage.Level)) | Option.some _ywinner => (_ywinner).1)) ((_root_.LexLeanCollections.listFold ((fun (_ybest : (Prod (Option (Prod (Models.Triage.Level) Int)) (List (Models.Triage.Level)))) (_yscore : Int) => (match (_ybest).2 with | List.nil => _ybest | List.cons _ylabel _ylabels => ((match (_ybest).1 with | Option.none => (Option.some ((_ylabel, _yscore)) : (Option (Prod (Models.Triage.Level) Int))) | Option.some _yleader => (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then (Option.some ((_ylabel, _yscore)) : (Option (Prod (Models.Triage.Level) Int))) else (Option.some (_yleader) : (Option (Prod (Models.Triage.Level) Int))))), _ylabels)))) (((Option.none : (Option (Prod (Models.Triage.Level) Int))), ((Models.Triage.Level.routine : (Models.Triage.Level)) :: ((Models.Triage.Level.urgent : (Models.Triage.Level)) :: ((Models.Triage.Level.emergency : (Models.Triage.Level)) :: ([] : List (Models.Triage.Level))))))) ((Models.Triage.TriageScore.scores (presentation))) : (Prod (Option (Prod (Models.Triage.Level) Int)) (List (Models.Triage.Level))))).1 (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_11 (presentation))) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.int) (es := (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair __enc_1 _root_.LexLeanTarget.TargetSyntax.Value.int)) (_root_.LexLeanPreservation.encList __enc_1))) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.int) (fun _ => rfl) ((fun (_ybest : (Prod (Option (Prod (Models.Triage.Level) Int)) (List (Models.Triage.Level)))) (_yscore : Int) => (match (_ybest).2 with | List.nil => _ybest | List.cons _ylabel _ylabels => ((match (_ybest).1 with | Option.none => (Option.some ((_ylabel, _yscore)) : (Option (Prod (Models.Triage.Level) Int))) | Option.some _yleader => (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then (Option.some ((_ylabel, _yscore)) : (Option (Prod (Models.Triage.Level) Int))) else (Option.some (_yleader) : (Option (Prod (Models.Triage.Level) Int))))), _ylabels)))) (fun (__p0 : (Prod (Option (Prod (Models.Triage.Level) Int)) (List (Models.Triage.Level)))) (__p1 : Int) => __fits_10 __p0 __p1) 10 [] (fun (__p0 : (Prod (Option (Prod (Models.Triage.Level) Int)) (List (Models.Triage.Level)))) (__p1 : Int) => __rel_10 __p0 __p1) (p := __prog) (fi := 9) (ta := .int) (ts := (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1)))) rfl (((Option.none : (Option (Prod (Models.Triage.Level) Int))), ((Models.Triage.Level.routine : (Models.Triage.Level)) :: ((Models.Triage.Level.urgent : (Models.Triage.Level)) :: ((Models.Triage.Level.emergency : (Models.Triage.Level)) :: ([] : List (Models.Triage.Level))))))) ((Models.Triage.TriageScore.scores (presentation)))))) (fun (__a : (Option (Prod (Models.Triage.Level) Int))) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt)) | Option.some _ywinner => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)))))) - -def __fits_5 (_yinput : (Models.Triage.Presentation)) : Bool := - ((Bool.true && Bool.true) && (__fits_7 (_yinput))) - -attribute [local irreducible] Models.Triage.TriageScore in -theorem __rel_5 (_yinput : (Models.Triage.Presentation)) : _root_.LexLeanPreservation.FunRel __prog 5 [(__enc_0 _yinput)] (_root_.LexLeanPreservation.Rel (__fits_5 _yinput) (__enc_1 (Models.Triage.TriageModel _yinput))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_7 (_yinput))) - -def __fits_12 (level : (Models.Triage.Level)) : Bool := - (Bool.true && (match level with | Models.Triage.Level.routine => (Bool.true && Bool.true) | Models.Triage.Level.urgent => (Bool.true && Bool.true) | Models.Triage.Level.emergency => (Bool.true && Bool.true))) - -theorem __rel_12 (level : (Models.Triage.Level)) : _root_.LexLeanPreservation.FunRel __prog 12 [(__enc_1 level)] (_root_.LexLeanPreservation.Rel (__fits_12 level) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Models.Triage.isEmergency level))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV __enc_1 (fun (__a : (Models.Triage.Level)) => (match __a with | Models.Triage.Level.routine => (Bool.true && Bool.true) | Models.Triage.Level.urgent => (Bool.true && Bool.true) | Models.Triage.Level.emergency => (Bool.true && Bool.true))) (fun (__a : (Models.Triage.Level)) => _root_.LexLeanTarget.TargetSyntax.Value.bool (match __a with | Models.Triage.Level.routine => Bool.false | Models.Triage.Level.urgent => Bool.false | Models.Triage.Level.emergency => Bool.true)) level (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (Models.Triage.Level)) _ => match __a with | Models.Triage.Level.routine => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)) | Models.Triage.Level.urgent => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) | Models.Triage.Level.emergency => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)))))) - -def __fits_13 (level : (Models.Triage.Level)) : Bool := - (Bool.true && (match level with | Models.Triage.Level.routine => (Bool.true && Bool.true) | Models.Triage.Level.urgent => (Bool.true && Bool.true) | Models.Triage.Level.emergency => (Bool.true && Bool.true))) - -theorem __rel_13 (level : (Models.Triage.Level)) : _root_.LexLeanPreservation.FunRel __prog 13 [(__enc_1 level)] (_root_.LexLeanPreservation.Rel (__fits_13 level) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Models.Policy.isUrgent level))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV __enc_1 (fun (__a : (Models.Triage.Level)) => (match __a with | Models.Triage.Level.routine => (Bool.true && Bool.true) | Models.Triage.Level.urgent => (Bool.true && Bool.true) | Models.Triage.Level.emergency => (Bool.true && Bool.true))) (fun (__a : (Models.Triage.Level)) => _root_.LexLeanTarget.TargetSyntax.Value.bool (match __a with | Models.Triage.Level.routine => Bool.false | Models.Triage.Level.urgent => Bool.true | Models.Triage.Level.emergency => Bool.false)) level (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (Models.Triage.Level)) _ => match __a with | Models.Triage.Level.routine => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)) | Models.Triage.Level.urgent => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true))) | Models.Triage.Level.emergency => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))))) - -def __fits_8 (level : (Models.Triage.Level)) : Bool := - (((Bool.true && Bool.true) && (__fits_12 (level))) && (if (Models.Triage.isEmergency (level)) then Bool.true else (((Bool.true && Bool.true) && (__fits_13 (level))) && (if (Models.Policy.isUrgent (level)) then Bool.true else Bool.true)))) - -attribute [local irreducible] Models.Policy.isUrgent Models.Triage.isEmergency in -theorem __rel_8 (level : (Models.Triage.Level)) : _root_.LexLeanPreservation.FunRel __prog 8 [(__enc_1 level)] (_root_.LexLeanPreservation.Rel (__fits_8 level) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Models.Policy.PolicyRules level))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else (((Bool.true && Bool.true) && (__fits_13 (level))) && (if (Models.Policy.isUrgent (level)) then Bool.true else Bool.true)))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (2 : Nat) else (if (Models.Policy.isUrgent (level)) then (1 : Nat) else (0 : Nat)))) (Models.Triage.isEmergency (level)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_12 (level))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (1 : Nat) else (0 : Nat))) (Models.Policy.isUrgent (level)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_13 (level))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => _root_.LexLeanPreservation.conv_value)))) - -def __fits_6 (_yinput : (Models.Triage.Level)) : Bool := - ((Bool.true && Bool.true) && (__fits_8 (_yinput))) - -attribute [local irreducible] Models.Policy.PolicyRules in -theorem __rel_6 (_yinput : (Models.Triage.Level)) : _root_.LexLeanPreservation.FunRel __prog 6 [(__enc_1 _yinput)] (_root_.LexLeanPreservation.Rel (__fits_6 _yinput) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Models.Policy.PolicyModel _yinput))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_8 (_yinput))) - -def __fits_4 (presentation : (Models.Triage.Presentation)) : Bool := - (((Bool.true && Bool.true) && (__fits_5 (presentation))) && (let _ystage1 : (Models.Triage.Level) := (Models.Triage.TriageModel (presentation)); (((Bool.true && Bool.true) && (__fits_6 (_ystage1))) && (let _ystage2 : Nat := (Models.Policy.PolicyModel (_ystage1)); Bool.true)))) - -attribute [local irreducible] Models.Policy.PolicyModel Models.Triage.TriageModel in -theorem __rel_4 (presentation : (Models.Triage.Presentation)) : _root_.LexLeanPreservation.FunRel __prog 4 [(__enc_0 presentation)] (_root_.LexLeanPreservation.Rel (__fits_4 presentation) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Models.Pipeline.TriagePipeline presentation))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (let _ystage1 : (Models.Triage.Level) := (Models.Triage.TriageModel (presentation)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_5 (presentation))) (let _ystage2 : Nat := (Models.Policy.PolicyModel (_ystage1)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_6 (_ystage1))) (_root_.LexLeanPreservation.conv_var rfl))) - -def __fits_2 (_yinput : (Models.Triage.Presentation)) : Bool := - ((Bool.true && Bool.true) && (__fits_4 (_yinput))) - -attribute [local irreducible] Models.Pipeline.TriagePipeline in -theorem __rel_2 (_yinput : (Models.Triage.Presentation)) : _root_.LexLeanPreservation.FunRel __prog 2 [(__enc_0 _yinput)] (_root_.LexLeanPreservation.Rel (__fits_2 _yinput) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Models.Pipeline.PipelineModel _yinput))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_4 (_yinput))) - -def __fits_0 (presentation : (Models.Triage.Presentation)) : Bool := - (Bool.true && (let _ychecked1_input : (Models.Triage.Presentation) := presentation; (((Bool.true && Bool.true) && (__fits_1 (_ychecked1_input))) && (if (Models.Triage.symptomaticCheck (_ychecked1_input)) then (((Bool.true && Bool.true) && (__fits_2 (_ychecked1_input))) && (let _ychecked1_output : Nat := (Models.Pipeline.PipelineModel (_ychecked1_input)); ((Bool.true && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) - -attribute [local irreducible] Models.Pipeline.PipelineModel Models.Triage.symptomaticCheck in -theorem __rel_0 (presentation : (Models.Triage.Presentation)) : _root_.LexLeanPreservation.FunRel __prog 0 [(__enc_0 presentation)] (_root_.LexLeanPreservation.Rel (__fits_0 presentation) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (Models.Main.respond presentation))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (let _ychecked1_input : (Models.Triage.Presentation) := presentation; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && (__fits_2 (_ychecked1_input))) && (let _ychecked1_output : Nat := (Models.Pipeline.PipelineModel (_ychecked1_input)); ((Bool.true && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (let _ychecked1_output : Nat := (Models.Pipeline.PipelineModel (_ychecked1_input)); (Except.ok (_ychecked1_output) : (Except (Prod Bool Bool) Nat))) else (Except.error (((Bool.false, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)))) (Models.Triage.symptomaticCheck (_ychecked1_input)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_1 (_ychecked1_input))) (fun _ => (let _ychecked1_output : Nat := (Models.Pipeline.PipelineModel (_ychecked1_input)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_2 (_ychecked1_input))) (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)))) - -def denote (presentation : (Models.Triage.Presentation)) : _root_.LexLeanPreservation.Obs := - _root_.cond (__fits_0 presentation) (_root_.LexLeanPreservation.Obs.value (((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (Models.Main.respond presentation)))) _root_.LexLeanPreservation.Obs.overflow - -theorem root (presentation : (Models.Triage.Presentation)) : _root_.LexLeanPreservation.RunConv __prog 0 [(__enc_0 presentation)] (_root_.LexLeanPreservation.Rel (__fits_0 presentation) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (Models.Main.respond presentation))) := - _root_.LexLeanPreservation.run_of_funRel (__rel_0 presentation) - -end LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2 diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R2/Compose/RustStd.lex.tex b/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R2/Compose/RustStd.lex.tex deleted file mode 100644 index dd6504b1d..000000000 --- a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R2/Compose/RustStd.lex.tex +++ /dev/null @@ -1,621 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2, - LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.Compose.RustStd.__wt_0 : @16 := @392 { - all: [LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.Compose.RustStd.__wt_0], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.Compose.RustStd.__wt_1 : @399 := @481 { - all: [LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.Compose.RustStd.__wt_1], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.Compose.RustStd.root : @1214 := @1215 { - all: [LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.RustStd.program -@1 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.RustStd.krate -@2 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.RustStd.flags -@3 := Models.Triage.Presentation -@4 := #0 -@5 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.__enc_0 -@6 := @5 @4 -@7 := LexLeanPreservation.Rust.WT -@8 := LexLeanTarget.TargetSyntax.Ty.adt -@9 := 0 -@10 := @8 @9 -@11 := @7 @0 -@12 := @11 @1 -@13 := @12 @2 -@15 := @13 @6 @10 -@16 := (__v : @3) -> @15 -@17 := fun (__v : @3) => @15 -@18 := LexLeanTarget.TargetSyntax.Value -@19 := LexLeanTarget.TargetSyntax.Ty -@20 := List.nil.{0} -@21 := List.cons.{0} -@22 := @20 @18 -@23 := @20 @19 -@24 := LexLeanTarget.TargetSyntax.Program -@25 := LexLeanPreservation.Rust.RCrate -@26 := LexLeanPreservation.Rust.Flags -@27 := LexLeanPreservation.Rust.WTL -@28 := #2 -@29 := @27 @28 -@30 := #1 -@37 := {p : @24} -> {c : @25} -> {A : @26} -> @29 @30 @4 @22 @23 -@39 := LexLeanPreservation.Rust.wtl_nil @0 -@40 := @27 @0 -@46 := {c : @25} -> {A : @26} -> @40 @30 @4 @22 @23 -@47 := @39 @1 -@48 := @40 @1 -@52 := {A : @26} -> @48 @4 @22 @23 -@53 := @47 @2 -@54 := @48 @2 -@55 := @54 @22 -@56 := @55 @23 -@57 := Nat -@58 := List.{0} -@59 := @58 @18 -@60 := @58 @19 -@61 := Eq.{1} -@62 := Option.{0} -@63 := @62 @60 -@64 := @61 @63 -@65 := LexLeanPreservation.Rust.adtFields -@66 := #6 -@67 := @65 @66 -@68 := #3 -@71 := @64 (@67 @68 @28) -@72 := Option.some.{0} -@73 := @72 @60 -@74 := @73 @4 -@75 := @71 @74 -@76 := #7 -@78 := @27 @76 @66 -@79 := #5 -@82 := @78 @79 @28 @30 -@83 := #8 -@86 := @7 @83 @76 @66 -@87 := LexLeanTarget.TargetSyntax.Value.adt -@88 := #4 -@90 := @87 @88 @68 -@91 := @86 @90 -@92 := @8 @79 -@102 := {p : @24} -> - {c : @25} -> - {A : @26} -> - {i : @57} -> {k : @57} -> {fs : @59} -> {tys : @60} -> (h : @75) -> (hf : @82) -> @91 @92 -@104 := LexLeanPreservation.Rust.wt_adt @0 -@105 := @65 @0 -@109 := @64 (@105 @68 @28) @74 -@113 := @40 @66 @79 @28 @30 -@125 := {c : @25} -> - {A : @26} -> - {i : @57} -> - {k : @57} -> {fs : @59} -> {tys : @60} -> (h : @109) -> (hf : @113) -> @11 @76 @66 @90 @92 -@126 := @104 @1 -@129 := @48 @79 @28 @30 -@139 := {A : @26} -> - {i : @57} -> - {k : @57} -> {fs : @59} -> {tys : @60} -> (h : @109) -> (hf : @129) -> @12 @66 @90 @92 -@140 := @126 @2 -@142 := @54 @28 @30 -@143 := @13 @90 -@150 := {i : @57} -> {k : @57} -> {fs : @59} -> {tys : @60} -> (h : @109) -> (hf : @142) -> @143 @92 -@151 := @140 @9 -@152 := @105 @9 -@161 := {k : @57} -> - {fs : @59} -> {tys : @60} -> (h : @64 (@152 @28) @74) -> (hf : @142) -> @143 @10 -@162 := @151 @9 -@163 := @152 @9 -@164 := @64 @163 -@165 := @164 @74 -@166 := @87 @9 -@168 := @13 (@166 @68) -@173 := {fs : @59} -> {tys : @60} -> (h : @165) -> (hf : @142) -> @168 @10 -@174 := @162 @22 -@175 := @55 @30 -@177 := @13 (@166 @22) -@178 := @177 @10 -@181 := {tys : @60} -> (h : @165) -> (hf : @175) -> @178 -@182 := @174 @23 -@183 := @73 @23 -@186 := (h : @164 @183) -> (hf : @56) -> @178 -@187 := Eq.refl.{1} -@188 := @187 @63 -@191 := @182 (@188 @163) @53 -@192 := 1 -@193 := @151 @192 -@194 := @152 @192 -@195 := @64 @194 -@196 := @195 @74 -@197 := @87 @192 -@199 := @13 (@197 @68) -@204 := {fs : @59} -> {tys : @60} -> (h : @196) -> (hf : @142) -> @199 @10 -@205 := @193 @22 -@207 := @13 (@197 @22) -@208 := @207 @10 -@211 := {tys : @60} -> (h : @196) -> (hf : @175) -> @208 -@212 := @205 @23 -@215 := (h : @195 @183) -> (hf : @56) -> @208 -@218 := @212 (@188 @194) @53 -@219 := 2 -@220 := @151 @219 -@221 := @152 @219 -@222 := @64 @221 -@223 := @222 @74 -@224 := @87 @219 -@226 := @13 (@224 @68) -@231 := {fs : @59} -> {tys : @60} -> (h : @223) -> (hf : @142) -> @226 @10 -@232 := @220 @22 -@234 := @13 (@224 @22) -@235 := @234 @10 -@238 := {tys : @60} -> (h : @223) -> (hf : @175) -> @235 -@239 := @232 @23 -@242 := (h : @222 @183) -> (hf : @56) -> @235 -@245 := @239 (@188 @221) @53 -@246 := 3 -@247 := @151 @246 -@248 := @152 @246 -@249 := @64 @248 -@250 := @249 @74 -@251 := @87 @246 -@258 := {fs : @59} -> {tys : @60} -> (h : @250) -> (hf : @142) -> @13 (@251 @68) @10 -@259 := @247 @22 -@262 := @13 (@251 @22) @10 -@265 := {tys : @60} -> (h : @250) -> (hf : @175) -> @262 -@266 := @259 @23 -@269 := (h : @249 @183) -> (hf : @56) -> @262 -@272 := @266 (@188 @248) @53 -@273 := 4 -@274 := @151 @273 -@275 := @152 @273 -@276 := @64 @275 -@277 := @276 @74 -@278 := @87 @273 -@285 := {fs : @59} -> {tys : @60} -> (h : @277) -> (hf : @142) -> @13 (@278 @68) @10 -@286 := @274 @22 -@289 := @13 (@278 @22) @10 -@292 := {tys : @60} -> (h : @277) -> (hf : @175) -> @289 -@293 := @286 @23 -@296 := (h : @276 @183) -> (hf : @56) -> @289 -@299 := @293 (@188 @275) @53 -@300 := 5 -@301 := @151 @300 -@302 := @152 @300 -@303 := @64 @302 -@304 := @303 @74 -@305 := @87 @300 -@312 := {fs : @59} -> {tys : @60} -> (h : @304) -> (hf : @142) -> @13 (@305 @68) @10 -@313 := @301 @22 -@316 := @13 (@305 @22) @10 -@319 := {tys : @60} -> (h : @304) -> (hf : @175) -> @316 -@320 := @313 @23 -@323 := (h : @303 @183) -> (hf : @56) -> @316 -@326 := @320 (@188 @302) @53 -@327 := 6 -@328 := @151 @327 -@329 := @152 @327 -@330 := @64 @329 -@331 := @330 @74 -@332 := @87 @327 -@339 := {fs : @59} -> {tys : @60} -> (h : @331) -> (hf : @142) -> @13 (@332 @68) @10 -@340 := @328 @22 -@343 := @13 (@332 @22) @10 -@346 := {tys : @60} -> (h : @331) -> (hf : @175) -> @343 -@347 := @340 @23 -@350 := (h : @330 @183) -> (hf : @56) -> @343 -@353 := @347 (@188 @329) @53 -@354 := 7 -@355 := @151 @354 -@356 := @152 @354 -@357 := @64 @356 -@358 := @357 @74 -@359 := @87 @354 -@366 := {fs : @59} -> {tys : @60} -> (h : @358) -> (hf : @142) -> @13 (@359 @68) @10 -@367 := @355 @22 -@370 := @13 (@359 @22) @10 -@373 := {tys : @60} -> (h : @358) -> (hf : @175) -> @370 -@374 := @367 @23 -@377 := (h : @357 @183) -> (hf : @56) -> @370 -@380 := @374 (@188 @356) @53 -@392 := fun (__v : @3) => - Models.Triage.Presentation.casesOn.{0} @17 @4 @191 @218 @245 @272 @299 @326 @353 @380 -@393 := Models.Triage.Level -@395 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.__enc_1 @4 -@396 := @8 @192 -@398 := @13 @395 @396 -@399 := (__v : @393) -> @398 -@400 := fun (__v : @393) => @398 -@401 := @140 @192 -@402 := @105 @192 -@411 := {k : @57} -> - {fs : @59} -> {tys : @60} -> (h : @64 (@402 @28) @74) -> (hf : @142) -> @143 @396 -@412 := @401 @9 -@413 := @402 @9 -@414 := @64 @413 -@415 := @414 @74 -@420 := {fs : @59} -> {tys : @60} -> (h : @415) -> (hf : @142) -> @168 @396 -@421 := @412 @22 -@422 := @177 @396 -@425 := {tys : @60} -> (h : @415) -> (hf : @175) -> @422 -@426 := @421 @23 -@429 := (h : @414 @183) -> (hf : @56) -> @422 -@432 := @426 (@188 @413) @53 -@433 := @401 @192 -@434 := @402 @192 -@435 := @64 @434 -@436 := @435 @74 -@441 := {fs : @59} -> {tys : @60} -> (h : @436) -> (hf : @142) -> @199 @396 -@442 := @433 @22 -@443 := @207 @396 -@446 := {tys : @60} -> (h : @436) -> (hf : @175) -> @443 -@447 := @442 @23 -@450 := (h : @435 @183) -> (hf : @56) -> @443 -@453 := @447 (@188 @434) @53 -@454 := @401 @219 -@455 := @402 @219 -@456 := @64 @455 -@457 := @456 @74 -@462 := {fs : @59} -> {tys : @60} -> (h : @457) -> (hf : @142) -> @226 @396 -@463 := @454 @22 -@464 := @234 @396 -@467 := {tys : @60} -> (h : @457) -> (hf : @175) -> @464 -@468 := @463 @23 -@471 := (h : @456 @183) -> (hf : @56) -> @464 -@474 := @468 (@188 @455) @53 -@481 := fun (__v : @393) => Models.Triage.Level.casesOn.{0} @400 @4 @432 @453 @474 -@482 := @5 @30 -@484 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.Compose.RustStd.__wt_0 @30 -@485 := @21 @18 -@487 := @485 @482 @22 -@488 := Prod.{0, 0} -@490 := @488 @57 @18 -@494 := Prod.mk.{0, 0} @57 @18 @9 -@495 := @494 @482 -@496 := @20 @490 -@497 := @21 @490 -@499 := @497 @495 @496 -@500 := Bool.true -@501 := LexLeanTarget.TargetSyntax.Function -@502 := LexLeanTarget.TargetSyntax.Program.functions -@503 := @502 @0 -@504 := @20 @57 -@505 := LexLeanTarget.TargetSyntax.Ty.unit -@506 := LexLeanTarget.TargetSyntax.Value.unit -@509 := LexLeanTarget.TargetSyntax.Expr.value @505 @506 -@514 := LexLeanTarget.TargetSyntax.Function.mk @504 @23 @505 @509 -@519 := List.getD.{0} @501 @503 @9 @514 -@523 := fun (__e_n : @57) => LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.RustStd.root @4 @9 -@528 := @7 @66 @79 @88 @68 @28 -@531 := @27 @83 @76 @66 -@533 := @485 @79 @68 -@534 := @531 @533 -@535 := @21 @19 -@537 := @535 @88 @28 -@547 := {p : @24} -> - {c : @25} -> - {A : @26} -> - {v : @18} -> {t : @19} -> {vs : @59} -> {ts : @60} -> (h : @528) -> (hs : @82) -> @534 @537 -@549 := LexLeanPreservation.Rust.wtl_cons @0 -@565 := {c : @25} -> - {A : @26} -> - {v : @18} -> - {t : @19} -> - {vs : @59} -> {ts : @60} -> (h : @11 @79 @88 @68 @28) -> (hs : @113) -> @40 @76 @66 @533 @537 -@566 := @549 @1 -@579 := {A : @26} -> - {v : @18} -> - {t : @19} -> {vs : @59} -> {ts : @60} -> (h : @12 @88 @68 @28) -> (hs : @129) -> @48 @66 @533 @537 -@580 := @566 @2 -@590 := {v : @18} -> - {t : @19} -> {vs : @59} -> {ts : @60} -> (h : @13 @68 @28) -> (hs : @142) -> @54 @533 @537 -@591 := @580 @482 -@592 := @5 @88 -@594 := @13 @592 @28 -@595 := @5 @66 -@596 := @485 @595 -@604 := {t : @19} -> {vs : @59} -> {ts : @60} -> (h : @594) -> (hs : @142) -> @54 (@596 @68) @537 -@605 := @591 @10 -@606 := @5 @68 -@608 := @13 @606 @10 -@609 := @5 @79 -@610 := @485 @609 -@612 := @54 (@610 @68) -@613 := @535 @10 -@614 := @613 @28 -@619 := {vs : @59} -> {ts : @60} -> (h : @608) -> (hs : @142) -> @612 @614 -@620 := @605 @22 -@621 := @5 @28 -@623 := @13 @621 @10 -@625 := @485 @592 @22 -@626 := @54 @625 -@630 := {ts : @60} -> (h : @623) -> (hs : @175) -> @626 @614 -@631 := @620 @23 -@633 := @13 @482 @10 -@635 := @485 @606 @22 -@636 := @54 @635 -@637 := @613 @23 -@640 := (h : @633) -> (hs : @56) -> @636 @637 -@641 := @631 @484 -@643 := @485 @621 @22 -@644 := @54 @643 -@646 := (hs : @56) -> @644 @637 -@647 := @641 @53 -@648 := @54 @487 -@649 := @648 @637 -@650 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.denote -@651 := @650 @30 -@652 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.__fits_0 -@653 := @652 @30 -@655 := Models.Main.respond @30 -@656 := Bool -@658 := @488 @656 @656 -@659 := LexLeanTarget.TargetSyntax.Value.bool -@664 := LexLeanPreservation.encPair @656 @656 @659 @659 -@665 := LexLeanTarget.TargetSyntax.Value.nat -@671 := LexLeanPreservation.encExcept @658 @57 @664 @665 @655 -@673 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.root @30 -@674 := Ne.{1} -@675 := LexLeanPreservation.Obs -@676 := @674 @675 -@677 := LexLeanPreservation.Rel -@680 := @676 (@677 @30 @4) -@681 := LexLeanPreservation.Obs.stuck -@684 := (f : @656) -> (v : @18) -> @680 @681 -@686 := LexLeanPreservation.Rust.rel_ne_stuck @653 -@692 := (v : @18) -> @676 (@677 (@652 @28) @4) @681 -@693 := @686 @671 -@697 := @676 (@677 @653 @671) @681 -@698 := @58 @490 -@699 := LexLeanPreservation.Rust.FunSem -@700 := #9 -@706 := (n : @57) -> @699 @700 @83 @76 @4 @66 -@707 := @62 @501 -@708 := @61 @707 -@715 := LexLeanRuntime.index (@58 @501) @501 (LexLeanRuntime.instIndexableList @501) -@719 := @708 (@715 (@502 @700) @66) -@720 := @72 @501 -@721 := @720 @79 -@722 := @719 @721 -@723 := #10 -@727 := @27 @723 @700 @83 @79 -@728 := LexLeanTarget.TargetSyntax.Function.types -@729 := @728 @66 -@730 := @727 @729 -@731 := @62 @698 -@732 := @61 @731 -@733 := LexLeanTarget.TargetSemantics.bindAll -@734 := LexLeanTarget.TargetSyntax.Function.parameters -@739 := @732 (@733 (@734 @76) @66 @496) -@740 := @72 @698 -@741 := @740 @79 -@742 := @739 @741 -@743 := @62 @656 -@744 := @61 @743 -@745 := LexLeanPreservation.Rust.fnFallible -@746 := #11 -@749 := @744 (@745 @746 @700) -@750 := @72 @656 -@751 := @750 @79 -@752 := @749 @751 -@753 := LexLeanPreservation.RunConv -@754 := #13 -@758 := @753 @754 @723 @83 @79 -@760 := @676 @66 @681 -@761 := Exists.{1} -@762 := LexLeanPreservation.Rust.ROut -@763 := @761 @762 -@764 := And -@765 := LexLeanPreservation.Rust.RealizesFn -@769 := @764 (@765 @700 @83 @4) -@770 := LexLeanPreservation.Rust.RCI -@772 := @770 #15 -@773 := LexLeanPreservation.Rust.fnIdent -@774 := @773 @754 -@781 := (hne : @760) -> @763 (fun (ro : @762) => @769 (@772 @774 @746 @4)) -@796 := {p : @24} -> - {c : @25} -> - {A : @26} -> - {f : @57} -> - {fn : @501} -> - {args : @59} -> - {env : @698} -> - {F : @656} -> - {o : @675} -> - (hB : @706) -> - (hfn : @722) -> (hwt : @730) -> (hbind : @742) -> (hF : @752) -> (hA : @758) -> @781 -@798 := LexLeanPreservation.Rust.compose @0 -@799 := @699 @0 -@804 := (n : @57) -> @799 @83 @76 @4 @66 -@805 := @715 @503 -@808 := @708 (@805 @66) @721 -@812 := @40 @700 @83 @79 @729 -@813 := @753 @0 -@816 := @813 @723 @83 @79 -@830 := {c : @25} -> - {A : @26} -> - {f : @57} -> - {fn : @501} -> - {args : @59} -> - {env : @698} -> - {F : @656} -> - {o : @675} -> - (hB : @804) -> - (hfn : @808) -> (hwt : @812) -> (hbind : @742) -> (hF : @752) -> (hA : @816) -> @781 -@831 := @798 @1 -@832 := @799 @1 -@836 := (n : @57) -> @832 @76 @4 @66 -@839 := @48 @83 @79 @729 -@840 := @745 @1 -@843 := @744 (@840 @700) @751 -@844 := @770 @1 -@854 := (hbind : @742) -> - (hF : @843) -> (hA : @816) -> (hne : @760) -> @763 (fun (ro : @762) => @769 (@844 @774 @746 @4)) -@864 := {A : @26} -> - {f : @57} -> - {fn : @501} -> - {args : @59} -> - {env : @698} -> {F : @656} -> {o : @675} -> (hB : @836) -> (hfn : @808) -> (hwt : @839) -> @854 -@865 := @831 @2 -@867 := @832 @2 @4 -@869 := (n : @57) -> @867 @66 -@870 := @54 @79 -@871 := @870 @729 -@880 := {f : @57} -> - {fn : @501} -> - {args : @59} -> - {env : @698} -> {F : @656} -> {o : @675} -> (hB : @869) -> (hfn : @808) -> (hwt : @871) -> @854 -@881 := @865 @9 -@883 := (n : @57) -> @867 @9 -@884 := @805 @9 -@885 := @708 @884 -@886 := @885 @721 -@887 := @840 @9 -@888 := @744 @887 -@889 := @888 @751 -@890 := @813 @9 -@892 := @890 @83 @79 -@894 := @844 (@773 @9) -@902 := (hF : @889) -> (hA : @892) -> (hne : @760) -> @763 (fun (ro : @762) => @769 (@894 @746 @4)) -@911 := {fn : @501} -> - {args : @59} -> - {env : @698} -> - {F : @656} -> {o : @675} -> (hB : @883) -> (hfn : @886) -> (hwt : @871) -> (hbind : @742) -> @902 -@912 := @881 @519 -@914 := @885 (@720 @519) -@915 := @728 @519 -@916 := @870 @915 -@918 := @733 (@734 @519) -@930 := {args : @59} -> - {env : @698} -> - {F : @656} -> - {o : @675} -> - (hB : @883) -> (hfn : @914) -> (hwt : @916) -> (hbind : @732 (@918 @66 @496) @741) -> @902 -@931 := @912 @487 -@932 := @596 @22 -@934 := @54 @932 @915 -@937 := @485 (@5 @76) @22 -@941 := @732 (@918 @937 @496) @741 -@944 := @485 (@5 @700) @22 -@965 := {env : @698} -> - {F : @656} -> - {o : @675} -> - (hB : @883) -> - (hfn : @914) -> - (hwt : @934) -> - (hbind : @941) -> - (hF : @889) -> - (hA : @890 @944 @79) -> - (hne : @760) -> @763 (fun (ro : @762) => @769 (@894 (@485 (@5 #12) @22) @4)) -@966 := @931 @499 -@967 := @610 @22 -@969 := @54 @967 @915 -@977 := @732 (@918 @932 @496) (@740 (@497 (@494 @595) @496)) -@980 := @485 (@5 @83) @22 -@999 := {F : @656} -> - {o : @675} -> - (hB : @883) -> - (hfn : @914) -> - (hwt : @969) -> - (hbind : @977) -> - (hF : @889) -> - (hA : @890 @980 @79) -> - (hne : @760) -> @763 (fun (ro : @762) => @769 (@894 (@485 (@5 @746) @22) @4)) -@1000 := @966 @500 -@1001 := @626 @915 -@1009 := @732 (@918 @967 @496) (@740 (@497 (@494 @609) @496)) -@1011 := @888 (@750 @500) -@1013 := @890 @937 @79 -@1014 := @765 @500 -@1033 := {o : @675} -> - (hB : @883) -> - (hfn : @914) -> - (hwt : @1001) -> - (hbind : @1009) -> - (hF : @1011) -> - (hA : @1013) -> - (hne : @760) -> @763 (fun (ro : @762) => @764 (@1014 @83 @4) (@894 (@485 (@5 @723) @22) @4)) -@1034 := @1000 @651 -@1035 := @636 @915 -@1043 := @732 (@918 @625 @496) (@740 (@497 (@494 @592) @496)) -@1044 := @890 @932 -@1045 := @650 @66 -@1046 := @1044 @1045 -@1047 := @650 @76 -@1065 := (hB : @883) -> - (hfn : @914) -> - (hwt : @1035) -> - (hbind : @1043) -> - (hF : @1011) -> - (hA : @1046) -> - (hne : @676 @1047 @681) -> @763 (fun (ro : @762) => @764 (@1014 (@650 @700) @4) (@894 @944 @4)) -@1066 := @1034 @523 -@1067 := @644 @915 -@1075 := @732 (@918 @635 @496) (@740 (@497 (@494 @606) @496)) -@1076 := @890 @967 -@1077 := @650 @79 -@1095 := (hfn : @914) -> - (hwt : @1067) -> - (hbind : @1075) -> - (hF : @1011) -> - (hA : @1076 @1077) -> - (hne : @676 @1045 @681) -> @763 (fun (ro : @762) => @764 (@1014 (@650 @83) @4) (@894 @980 @4)) -@1098 := @1066 (@187 @707 @884) -@1099 := @648 @915 -@1107 := @732 (@918 @643 @496) (@740 (@497 (@494 @621) @496)) -@1108 := @890 @625 -@1109 := @650 @88 -@1125 := (hwt : @1099) -> - (hbind : @1107) -> - (hF : @1011) -> - (hA : @1108 @1109) -> - (hne : @676 @1077 @681) -> @763 (fun (ro : @762) => @764 (@1014 @1047 @4) (@894 @937 @4)) -@1126 := @1098 @647 -@1128 := @918 @487 @496 -@1131 := @732 @1128 (@740 @499) -@1132 := @890 @635 -@1133 := @650 @68 -@1148 := (hbind : @1131) -> - (hF : @1011) -> - (hA : @1132 @1133) -> - (hne : @676 @1109 @681) -> @763 (fun (ro : @762) => @764 (@1014 @1045 @4) (@894 @932 @4)) -@1151 := @1126 (@187 @731 @1128) -@1152 := @890 @643 -@1153 := @650 @28 -@1167 := (hF : @1011) -> - (hA : @1152 @1153) -> - (hne : @676 @1133 @681) -> @763 (fun (ro : @762) => @764 (@1014 @1077 @4) (@894 @967 @4)) -@1170 := @1151 (@187 @743 @887) -@1184 := (hA : @890 @487 @651) -> - (hne : @676 @1153 @681) -> @763 (fun (ro : @762) => @764 (@1014 @1109 @4) (@894 @625 @4)) -@1185 := @1170 @673 -@1196 := (hne : @676 @651 @681) -> @763 (fun (ro : @762) => @764 (@1014 @1133 @4) (@894 @635 @4)) -@1197 := @1185 @693 -@1203 := @764 (@1014 @1153 @4) (@894 @643 @4) -@1205 := @763 (fun (ro : @762) => @1203) -@1207 := @763 (fun (__e_ro : @762) => @1203) -@1211 := LexLeanPreservation.Rust.RepresentableL (@485 @6 @22) -@1212 := (__e_hrep : @1211) -> @1207 -@1213 := fun (__e_hrep : @1211) => @1197 -@1214 := (presentation : @3) -> @1212 -@1215 := fun (presentation : @3) => @1213 -\end{coremodule} -\end{lexlean} diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R2/RustStd.lean b/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R2/RustStd.lean deleted file mode 100644 index c303e84e3..000000000 --- a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R2/RustStd.lean +++ /dev/null @@ -1,210 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [{ constructors := [[], [], [], [], [], [], [], []] }, - { constructors := [[], [], []] }], functions := [ - { parameters := [0], types := [(.adt 0)], result := (.result .nat (.pair .bool .bool)), - body := (.«let» 1 (.adt 0) (.var 0) (.cond (.call 1 [(.var 1)]) (.«let» 2 .nat (.call 2 [(.var 1)]) (.build .ok (.result .nat (.pair .bool .bool)) [(.var 2)])) (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])]))) }, - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.call 3 [(.var 0)]) }, - { parameters := [0], types := [(.adt 0)], result := .nat, - body := (.call 4 [(.var 0)]) }, - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.«match» .bool (.var 0) [(.arm (.adt 0) [] (.build .false .bool [])), (.arm (.adt 1) [] (.build .true .bool [])), (.arm (.adt 2) [] (.build .true .bool [])), (.arm (.adt 3) [] (.build .true .bool [])), (.arm (.adt 4) [] (.build .true .bool [])), (.arm (.adt 5) [] (.build .true .bool [])), (.arm (.adt 6) [] (.build .true .bool [])), (.arm (.adt 7) [] (.build .true .bool []))]) }, - { parameters := [0], types := [(.adt 0)], result := .nat, - body := (.«let» 1 (.adt 1) (.call 5 [(.var 0)]) (.«let» 2 .nat (.call 6 [(.var 1)]) (.var 2))) }, - { parameters := [0], types := [(.adt 0)], result := (.adt 1), - body := (.call 7 [(.var 0)]) }, - { parameters := [0], types := [(.adt 1)], result := .nat, - body := (.call 8 [(.var 0)]) }, - { parameters := [0], types := [(.adt 0)], result := (.adt 1), - body := (.«match» (.adt 1) (.first (.call 9 [(.closure 10 []), (.build .pair (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))) [(.build .none (.option (.pair (.adt 1) .int)) []), (.build .cons (.list (.adt 1)) [(.build (.adt 0) (.adt 1) []), (.build .cons (.list (.adt 1)) [(.build (.adt 1) (.adt 1) []), (.build .cons (.list (.adt 1)) [(.build (.adt 2) (.adt 1) []), (.build .nil (.list (.adt 1)) [])])])])]), (.call 11 [(.var 0)])])) [(.arm .none [] (.build (.adt 0) (.adt 1) [])), (.arm .some [1] (.first (.var 1)))]) }, - { parameters := [0], types := [(.adt 1)], result := .nat, - body := (.cond (.call 12 [(.var 0)]) (.value .nat (.nat 2)) (.cond (.call 13 [(.var 0)]) (.value .nat (.nat 1)) (.value .nat (.nat 0)))) }, - { parameters := [0, 1, 2], types := [(.fn [(.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), .int] (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1)))), (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), (.list .int)], result := (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), - body := (.«match» (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 9 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, - { parameters := [0, 1], types := [(.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), .int], result := (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), - body := (.«match» (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))) (.second (.var 0)) [(.arm .nil [] (.var 0)), (.arm .cons [2, 3] (.build .pair (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))) [(.«match» (.option (.pair (.adt 1) .int)) (.first (.var 0)) [(.arm .none [] (.build .some (.option (.pair (.adt 1) .int)) [(.build .pair (.pair (.adt 1) .int) [(.var 2), (.var 1)])])), (.arm .some [4] (.cond (.«match» .bool (.prim .compare [(.second (.var 4)), (.var 1)]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.build .some (.option (.pair (.adt 1) .int)) [(.build .pair (.pair (.adt 1) .int) [(.var 2), (.var 1)])]) (.build .some (.option (.pair (.adt 1) .int)) [(.var 4)])))]), (.var 3)]))]) }, - { parameters := [0], types := [(.adt 0)], result := (.list .int), - body := (.«let» 1 (.list .int) (.call 14 [(.var 0)]) (.first (.call 15 [(.closure 16 [(.var 1)]), (.build .pair (.pair (.list .int) (.list .int)) [(.build .nil (.list .int) []), (.call 17 [])]), (.call 18 [])]))) }, - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.«match» .bool (.var 0) [(.arm (.adt 0) [] (.build .false .bool [])), (.arm (.adt 1) [] (.build .false .bool [])), (.arm (.adt 2) [] (.build .true .bool []))]) }, - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.«match» .bool (.var 0) [(.arm (.adt 0) [] (.build .false .bool [])), (.arm (.adt 1) [] (.build .true .bool [])), (.arm (.adt 2) [] (.build .false .bool []))]) }, - { parameters := [0], types := [(.adt 0)], result := (.list .int), - body := (.call 19 [(.var 0)]) }, - { parameters := [0, 1, 2], types := [(.fn [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int))), (.pair (.list .int) (.list .int)), (.list (.list .int))], result := (.pair (.list .int) (.list .int)), - body := (.«match» (.pair (.list .int) (.list .int)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 15 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, - { parameters := [0, 1, 2], types := [(.list .int), (.pair (.list .int) (.list .int)), (.list .int)], result := (.pair (.list .int) (.list .int)), - body := (.«match» (.pair (.list .int) (.list .int)) (.second (.var 1)) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.build .pair (.pair (.list .int) (.list .int)) [(.prim .append [(.first (.var 1)), (.build .cons (.list .int) [(.prim .intSub [(.var 3), (.prim .intNeg [(.first (.call 20 [(.closure 21 []), (.build .pair (.pair .int (.list .int)) [(.value .int (.int 0)), (.var 0)]), (.var 2)]))])]), (.build .nil (.list .int) [])])]), (.var 4)]))]) }, - { parameters := [], types := [], result := (.list .int), - body := (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int (-1))), (.build .nil (.list .int) [])])])]) }, - { parameters := [], types := [], result := (.list (.list .int)), - body := (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int (-2))), (.build .cons (.list .int) [(.value .int (.int (-2))), (.build .cons (.list .int) [(.value .int (.int (-4))), (.build .nil (.list .int) [])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 5)), (.build .nil (.list .int) [])])])]), (.build .nil (.list (.list .int)) [])])])]) }, - { parameters := [0], types := [(.adt 0)], result := (.list .int), - body := (.«match» (.list .int) (.var 0) [(.arm (.adt 0) [] (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])), (.arm (.adt 1) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])), (.arm (.adt 2) [] (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])), (.arm (.adt 3) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])), (.arm (.adt 4) [] (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])), (.arm (.adt 5) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])), (.arm (.adt 6) [] (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])), (.arm (.adt 7) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])]))]) }, - { parameters := [0, 1, 2], types := [(.fn [(.pair .int (.list .int)), .int] (.pair .int (.list .int))), (.pair .int (.list .int)), (.list .int)], result := (.pair .int (.list .int)), - body := (.«match» (.pair .int (.list .int)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 20 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, - { parameters := [0, 1], types := [(.pair .int (.list .int)), .int], result := (.pair .int (.list .int)), - body := (.«match» (.pair .int (.list .int)) (.second (.var 0)) [(.arm .nil [] (.var 0)), (.arm .cons [2, 3] (.build .pair (.pair .int (.list .int)) [(.prim .intSub [(.first (.var 0)), (.prim .intNeg [(.prim .intMul [(.var 1), (.var 2)])])]), (.var 3)]))]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.enum (.adt 0) [{ number := 0, fields := [] }, { number := 1, fields := [] }, { number := 2, fields := [] }, { number := 3, fields := [] }, { number := 4, fields := [] }, { number := 5, fields := [] }, { number := 6, fields := [] }, { number := 7, fields := [] }]), - (.enum (.adt 1) [{ number := 0, fields := [] }, { number := 1, fields := [] }, { number := 2, fields := [] }]), - (.enum (.fn 0) [{ number := 10, fields := [] }]), - (.apply 0 [(.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), .int] (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))) false [{ function := 10, captures := [], functionFallible := false }]), - (.enum (.fn 1) [{ number := 16, fields := [(.list .int)] }]), - (.apply 1 [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int)) true [{ function := 16, captures := [.clone], functionFallible := true }]), - (.enum (.fn 2) [{ number := 21, fields := [] }]), - (.apply 2 [(.pair .int (.list .int)), .int] (.pair .int (.list .int)) true [{ function := 21, captures := [], functionFallible := true }]), - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible (.result .nat (.pair .bool .bool))) (.mk [(.mk (.bind (.generated .binding 1)) (some (.adt 0)) (.move (.generated .binding 0)))] (.cond (.call (.function 1) [(.clone (.generated .binding 1))] false) (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.call (.function 2) [(.move (.generated .binding 1))] true))] (.succeed (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))]))) (.mk [] (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))])))))), - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [] (.call (.function 3) [(.move (.generated .binding 0))] false))), - (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible .nat) (.mk [] (.call (.function 4) [(.move (.generated .binding 0))] false))), - (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 1)) [(.mk (.adt 0 0 []) (.mk [] (.lit (.bool false)))), (.mk (.adt 0 1 []) (.mk [] (.lit (.bool true)))), (.mk (.adt 0 2 []) (.mk [] (.lit (.bool true)))), (.mk (.adt 0 3 []) (.mk [] (.lit (.bool true)))), (.mk (.adt 0 4 []) (.mk [] (.lit (.bool true)))), (.mk (.adt 0 5 []) (.mk [] (.lit (.bool true)))), (.mk (.adt 0 6 []) (.mk [] (.lit (.bool true)))), (.mk (.adt 0 7 []) (.mk [] (.lit (.bool true))))]))), - (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible .nat) (.mk [(.mk (.bind (.generated .binding 1)) (some (.adt 1)) (.call (.function 5) [(.move (.generated .binding 0))] true)), (.mk (.bind (.generated .binding 2)) (some .nat) (.call (.function 6) [(.move (.generated .binding 1))] false))] (.succeed (.copy (.generated .binding 2))))), - (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible (.adt 1)) (.mk [] (.call (.function 7) [(.move (.generated .binding 0))] false))), - (.function (.generated .function 6) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .nat (.mk [] (.call (.function 8) [(.move (.generated .binding 0))] false))), - (.function (.generated .function 7) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible (.adt 1)) (.mk [(.mk (.bind (.generated .holder 3)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.call (.function 9) [(.construct (.closure 0 10) []), (.pair (.construct (.none (.pair (.adt 1) .int)) []) (.construct .cons [(.construct (.adt 1 0) []), (.construct .cons [(.construct (.adt 1 1) []), (.construct .cons [(.construct (.adt 1 2) []), (.construct (.nil (.adt 1)) [])])])])), (.call (.function 11) [(.move (.generated .binding 0))] true)] false))] (.move (.generated .part 2)))))] (.matchOn (.move (.generated .holder 3)) [(.mk .none (.mk [] (.succeed (.construct (.adt 1 0) [])))), (.mk (.some (.bind (.generated .binding 1))) (.mk [(.mk (.tuple [(.bind (.generated .part 4)), .wild]) none (.move (.generated .binding 1)))] (.succeed (.move (.generated .part 4)))))]))), - (.function (.generated .function 8) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .nat (.mk [] (.cond (.call (.function 12) [(.clone (.generated .binding 0))] false) (.mk [] (.lit (.nat 2))) (.mk [] (.cond (.call (.function 13) [(.move (.generated .binding 0))] false) (.mk [] (.lit (.nat 1))) (.mk [] (.lit (.nat 0)))))))), - (.function (.generated .function 9) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))) }, { pattern := (.bind (.generated .binding 2)), type := (.list .int) }] (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))) (.mk [(.mk (.bind (.generated .holder 5)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 5)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 9) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 6)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 6) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]))), - (.function (.generated .function 10) [{ pattern := (.bind (.generated .binding 0)), type := (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))) }, { pattern := (.bind (.generated .binding 1)), type := .int }] (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))) (.mk [(.mk (.bind (.generated .holder 8)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 7))]) none (.clone (.generated .binding 0)))] (.move (.generated .part 7)))))] (.matchOn (.uncons (.generated .holder 8)) [(.mk .none (.mk [] (.move (.generated .binding 0)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.pair (.block (.mk [(.mk (.bind (.generated .holder 10)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 9)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 9)))))] (.matchOn (.move (.generated .holder 10)) [(.mk .none (.mk [] (.construct .some [(.pair (.move (.generated .binding 2)) (.copy (.generated .binding 1)))]))), (.mk (.some (.bind (.generated .binding 4))) (.mk [(.mk (.bind (.generated .holder 14)) none (.block (.mk [(.mk (.bind (.generated .operand 12)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 11))]) none (.clone (.generated .binding 4)))] (.move (.generated .part 11))))), (.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1)))] (.call (.runtime .compare) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false))))] (.cond (.matchOn (.move (.generated .holder 14)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.construct .some [(.pair (.move (.generated .binding 2)) (.copy (.generated .binding 1)))])) (.mk [] (.construct .some [(.move (.generated .binding 4))])))))]))) (.move (.generated .binding 3)))))]))), - (.function (.generated .function 11) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible (.list .int)) (.mk [(.mk (.bind (.generated .binding 1)) (some (.list .int)) (.call (.function 14) [(.move (.generated .binding 0))] false)), (.mk (.tuple [(.bind (.generated .part 15)), .wild]) none (.call (.function 15) [(.construct (.closure 1 16) [(.move (.generated .binding 1))]), (.pair (.construct (.nil .int) []) (.call (.function 17) [] false)), (.call (.function 18) [] false)] true))] (.succeed (.move (.generated .part 15))))), - (.function (.generated .function 12) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .holder 16)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 16)) [(.mk (.adt 1 0 []) (.mk [] (.lit (.bool false)))), (.mk (.adt 1 1 []) (.mk [] (.lit (.bool false)))), (.mk (.adt 1 2 []) (.mk [] (.lit (.bool true))))]))), - (.function (.generated .function 13) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .holder 17)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 17)) [(.mk (.adt 1 0 []) (.mk [] (.lit (.bool false)))), (.mk (.adt 1 1 []) (.mk [] (.lit (.bool true)))), (.mk (.adt 1 2 []) (.mk [] (.lit (.bool false))))]))), - (.function (.generated .function 14) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.list .int) (.mk [] (.call (.function 19) [(.move (.generated .binding 0))] false))), - (.function (.generated .function 15) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 1) }, { pattern := (.bind (.generated .binding 1)), type := (.pair (.list .int) (.list .int)) }, { pattern := (.bind (.generated .binding 2)), type := (.list (.list .int)) }] (.fallible (.pair (.list .int) (.list .int))) (.mk [(.mk (.bind (.generated .holder 18)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 18)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 15) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 19)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 19) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]))), - (.function (.generated .function 16) [{ pattern := (.bind (.generated .binding 0)), type := (.list .int) }, { pattern := (.bind (.generated .binding 1)), type := (.pair (.list .int) (.list .int)) }, { pattern := (.bind (.generated .binding 2)), type := (.list .int) }] (.fallible (.pair (.list .int) (.list .int))) (.mk [(.mk (.bind (.generated .holder 21)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 20))]) none (.clone (.generated .binding 1)))] (.move (.generated .part 20)))))] (.matchOn (.uncons (.generated .holder 21)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 22)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 22))))), (.mk (.bind (.generated .operand 28)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 25)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 23)), .wild]) none (.call (.function 20) [(.construct (.closure 2 21) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 23)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 24))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] true))), (.construct (.nil .int) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))) (.move (.generated .binding 4))))))]))), - (.function (.generated .function 17) [] (.list .int) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int (-1))), (.construct (.nil .int) [])])])]))), - (.function (.generated .function 18) [] (.list (.list .int)) (.mk [] (.construct .cons [(.construct .cons [(.lit (.int (-2))), (.construct .cons [(.lit (.int (-2))), (.construct .cons [(.lit (.int (-4))), (.construct (.nil .int) [])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 5)), (.construct (.nil .int) [])])])]), (.construct (.nil (.list .int)) [])])])]))), - (.function (.generated .function 19) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.list .int) (.mk [(.mk (.bind (.generated .holder 29)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 29)) [(.mk (.adt 0 0 []) (.mk [] (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])]))), (.mk (.adt 0 1 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])]))), (.mk (.adt 0 2 []) (.mk [] (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])]))), (.mk (.adt 0 3 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])]))), (.mk (.adt 0 4 []) (.mk [] (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])]))), (.mk (.adt 0 5 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])]))), (.mk (.adt 0 6 []) (.mk [] (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])]))), (.mk (.adt 0 7 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])))]))), - (.function (.generated .function 20) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 2) }, { pattern := (.bind (.generated .binding 1)), type := (.pair .int (.list .int)) }, { pattern := (.bind (.generated .binding 2)), type := (.list .int) }] (.fallible (.pair .int (.list .int))) (.mk [(.mk (.bind (.generated .holder 30)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 30)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 20) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 31)) (some (.fn 2)) (.move (.generated .binding 0)))] (.apply (.generated .callee 31) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]))), - (.function (.generated .function 21) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .int (.list .int)) }, { pattern := (.bind (.generated .binding 1)), type := .int }] (.fallible (.pair .int (.list .int))) (.mk [(.mk (.bind (.generated .holder 33)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 32))]) none (.clone (.generated .binding 0)))] (.move (.generated .part 32)))))] (.matchOn (.uncons (.generated .holder 33)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 0))))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 38)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 34)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 34))))), (.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.bind (.generated .operand 37)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 36)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] true))))] (.call (.runtime .intNeg) [(.move (.generated .operand 37))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 38)), (.move (.generated .operand 39))] true))) (.move (.generated .binding 3))))))])))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [(([(.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), .int], (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1)))), false), (([(.pair (.list .int) (.list .int)), (.list .int)], (.pair (.list .int) (.list .int))), true), (([(.pair .int (.list .int)), .int], (.pair .int (.list .int))), true)] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some (.adt 0)) (.move (.generated .binding 0)))], (.cond (.call (.function 1) [(.clone (.generated .binding 1))] false) (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.call (.function 2) [(.move (.generated .binding 1))] true))] (.succeed (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))]))) (.mk [] (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))])))), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.letBind (Corr.var rfl rfl) rfl (Corr.cond (lc := []) (ce := (.call (.function 1) [(.clone (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .binding 2)) (some .nat) (.call (.function 2) [(.move (.generated .binding 1))] true))]) (ta := (.succeed (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))]))) (lb := []) (tb := (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))) (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.fOfB (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl))) (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)))))⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 3) [(.move (.generated .binding 0))] false), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 4) [(.move (.generated .binding 0))] false), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.callF (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)⟩⟩ - -theorem fun3 : FunOK program krate flags 3 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 1)) [(.mk (.adt 0 0 []) (.mk [] (.lit (.bool false)))), (.mk (.adt 0 1 []) (.mk [] (.lit (.bool true)))), (.mk (.adt 0 2 []) (.mk [] (.lit (.bool true)))), (.mk (.adt 0 3 []) (.mk [] (.lit (.bool true)))), (.mk (.adt 0 4 []) (.mk [] (.lit (.bool true)))), (.mk (.adt 0 5 []) (.mk [] (.lit (.bool true)))), (.mk (.adt 0 6 []) (.mk [] (.lit (.bool true)))), (.mk (.adt 0 7 []) (.mk [] (.lit (.bool true))))]), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.adt 0)) (U := []) (view := false) (idx := [0, 1, 2, 3, 4, 5, 6, 7]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 3) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 4) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 5) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 6) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 7) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ - -theorem fun4 : FunOK program krate flags 4 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some (.adt 1)) (.call (.function 5) [(.move (.generated .binding 0))] true)), (.mk (.bind (.generated .binding 2)) (some .nat) (.call (.function 6) [(.move (.generated .binding 1))] false))], (.succeed (.copy (.generated .binding 2))), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))))⟩⟩ - -theorem fun5 : FunOK program krate flags 5 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 7) [(.move (.generated .binding 0))] false), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.callF (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)⟩⟩ - -theorem fun6 : FunOK program krate flags 6 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 8) [(.move (.generated .binding 0))] false), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun7 : FunOK program krate flags 7 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 3)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.call (.function 9) [(.construct (.closure 0 10) []), (.pair (.construct (.none (.pair (.adt 1) .int)) []) (.construct .cons [(.construct (.adt 1 0) []), (.construct .cons [(.construct (.adt 1 1) []), (.construct .cons [(.construct (.adt 1 2) []), (.construct (.nil (.adt 1)) [])])])])), (.call (.function 11) [(.move (.generated .binding 0))] true)] false))] (.move (.generated .part 2)))))], (.matchOn (.move (.generated .holder 3)) [(.mk .none (.mk [] (.succeed (.construct (.adt 1 0) [])))), (.mk (.some (.bind (.generated .binding 1))) (.mk [(.mk (.tuple [(.bind (.generated .part 4)), .wild]) none (.move (.generated .binding 1)))] (.succeed (.move (.generated .part 4)))))]), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option (.pair (.adt 1) .int))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.call (.function 9) [(.construct (.closure 0 10) []), (.pair (.construct (.none (.pair (.adt 1) .int)) []) (.construct .cons [(.construct (.adt 1 0) []), (.construct .cons [(.construct (.adt 1 1) []), (.construct .cons [(.construct (.adt 1 2) []), (.construct (.nil (.adt 1)) [])])])])), (.call (.function 11) [(.move (.generated .binding 0))] true)] false))]) (tail := (.move (.generated .part 2))) (Corr.first (ta := (.option (.pair (.adt 1) .int))) (tb := (.list (.adt 1))) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), .int] (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1)))), (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), (.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := false) (ff := false) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.adt 1), (.list (.adt 1))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.adt 1), (.list (.adt 1))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.adt 1), (.list (.adt 1))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl)) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct (.adt 1 0) []))) (Corr.mCons (Γ' := [(1, (.pair (.adt 1) .int), (some 1)), (0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.tuple [(.bind (.generated .part 4)), .wild]) none (.move (.generated .binding 1)))]) (tail := (.succeed (.move (.generated .part 4)))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.first (ta := (.adt 1)) (tb := .int) (Corr.var rfl rfl) rfl))) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl)⟩⟩ - -theorem fun8 : FunOK program krate flags 8 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 12) [(.clone (.generated .binding 0))] false) (.mk [] (.lit (.nat 2))) (.mk [] (.cond (.call (.function 13) [(.move (.generated .binding 0))] false) (.mk [] (.lit (.nat 1))) (.mk [] (.lit (.nat 0)))))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 12) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.nat 2))) (lb := []) (tb := (.cond (.call (.function 13) [(.move (.generated .binding 0))] false) (.mk [] (.lit (.nat 1))) (.mk [] (.lit (.nat 0))))) (Corr.bOfE (Corr.value rfl rfl)) (Corr.cond (lc := []) (ce := (.call (.function 13) [(.move (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.nat 1))) (lb := []) (tb := (.lit (.nat 0))) (Corr.bOfE (Corr.value rfl rfl)) (Corr.bOfE (Corr.value rfl rfl))))))⟩⟩ - -theorem fun9 : FunOK program krate flags 9 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 5)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 5)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 9) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 6)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 6) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]), [(2, (.list .int), (some 2)), (1, (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), (some 1)), (0, (.fn [(.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), .int] (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1)))), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .int)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .int), (some 2)), (1, (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), (some 1)), (0, (.fn [(.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), .int] (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1)))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 1))) (Corr.mCons (Γ' := [(4, (.list .int), (some 4)), (3, .int, (some 3)), (2, (.list .int), (some 2)), (1, (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), (some 1)), (0, (.fn [(.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), .int] (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1)))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 9) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 6)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 6) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.fn [(.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), .int] (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1)))), (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), (.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 6)) (some (.fn 0)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 6) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] false)) (Corr.apply (ps := [(.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), .int]) (af := false) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ - -theorem fun10 : FunOK program krate flags 10 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 8)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 7))]) none (.clone (.generated .binding 0)))] (.move (.generated .part 7)))))], (.matchOn (.uncons (.generated .holder 8)) [(.mk .none (.mk [] (.move (.generated .binding 0)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.pair (.block (.mk [(.mk (.bind (.generated .holder 10)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 9)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 9)))))] (.matchOn (.move (.generated .holder 10)) [(.mk .none (.mk [] (.construct .some [(.pair (.move (.generated .binding 2)) (.copy (.generated .binding 1)))]))), (.mk (.some (.bind (.generated .binding 4))) (.mk [(.mk (.bind (.generated .holder 14)) none (.block (.mk [(.mk (.bind (.generated .operand 12)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 11))]) none (.clone (.generated .binding 4)))] (.move (.generated .part 11))))), (.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1)))] (.call (.runtime .compare) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false))))] (.cond (.matchOn (.move (.generated .holder 14)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.construct .some [(.pair (.move (.generated .binding 2)) (.copy (.generated .binding 1)))])) (.mk [] (.construct .some [(.move (.generated .binding 4))])))))]))) (.move (.generated .binding 3)))))]), [(1, .int, (some 1)), (0, (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.adt 1))) (U := []) (view := true) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 7))]) none (.clone (.generated .binding 0)))]) (tail := (.move (.generated .part 7))) (Corr.second (ta := (.option (.pair (.adt 1) .int))) (tb := (.list (.adt 1))) (Corr.var rfl rfl) rfl)) (Corr.mCons (Γ' := [(1, .int, (some 1)), (0, (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 0))) (Corr.mCons (Γ' := [(3, (.list (.adt 1)), (some 3)), (2, (.adt 1), (some 2)), (1, .int, (some 1)), (0, (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.pair (.block (.mk [(.mk (.bind (.generated .holder 10)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 9)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 9)))))] (.matchOn (.move (.generated .holder 10)) [(.mk .none (.mk [] (.construct .some [(.pair (.move (.generated .binding 2)) (.copy (.generated .binding 1)))]))), (.mk (.some (.bind (.generated .binding 4))) (.mk [(.mk (.bind (.generated .holder 14)) none (.block (.mk [(.mk (.bind (.generated .operand 12)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 11))]) none (.clone (.generated .binding 4)))] (.move (.generated .part 11))))), (.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1)))] (.call (.runtime .compare) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false))))] (.cond (.matchOn (.move (.generated .holder 14)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.construct .some [(.pair (.move (.generated .binding 2)) (.copy (.generated .binding 1)))])) (.mk [] (.construct .some [(.move (.generated .binding 4))])))))]))) (.move (.generated .binding 3)))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 10)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 9)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 9)))))]) (tail := (.matchOn (.move (.generated .holder 10)) [(.mk .none (.mk [] (.construct .some [(.pair (.move (.generated .binding 2)) (.copy (.generated .binding 1)))]))), (.mk (.some (.bind (.generated .binding 4))) (.mk [(.mk (.bind (.generated .holder 14)) none (.block (.mk [(.mk (.bind (.generated .operand 12)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 11))]) none (.clone (.generated .binding 4)))] (.move (.generated .part 11))))), (.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1)))] (.call (.runtime .compare) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false))))] (.cond (.matchOn (.move (.generated .holder 14)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.construct .some [(.pair (.move (.generated .binding 2)) (.copy (.generated .binding 1)))])) (.mk [] (.construct .some [(.move (.generated .binding 4))])))))])) (Corr.matchArms (st := (.option (.pair (.adt 1) .int))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 9)), .wild]) none (.move (.generated .binding 0)))]) (tail := (.move (.generated .part 9))) (Corr.first (ta := (.option (.pair (.adt 1) .int))) (tb := (.list (.adt 1))) (Corr.var rfl rfl) rfl)) (Corr.mCons (Γ' := [(3, (.list (.adt 1)), (some 3)), (2, (.adt 1), (some 2)), (1, .int, (some 1)), (0, (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.pair (.move (.generated .binding 2)) (.copy (.generated .binding 1)))])) (Corr.mCons (Γ' := [(4, (.pair (.adt 1) .int), (some 4)), (3, (.list (.adt 1)), (some 3)), (2, (.adt 1), (some 2)), (1, .int, (some 1)), (0, (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 14)) none (.block (.mk [(.mk (.bind (.generated .operand 12)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 11))]) none (.clone (.generated .binding 4)))] (.move (.generated .part 11))))), (.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1)))] (.call (.runtime .compare) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 14)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.construct .some [(.pair (.move (.generated .binding 2)) (.copy (.generated .binding 1)))])) (.mk [] (.construct .some [(.move (.generated .binding 4))])))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .holder 14)) none (.block (.mk [(.mk (.bind (.generated .operand 12)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 11))]) none (.clone (.generated .binding 4)))] (.move (.generated .part 11))))), (.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1)))] (.call (.runtime .compare) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false))))]) (ce := (.matchOn (.move (.generated .holder 14)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 12)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 11))]) none (.clone (.generated .binding 4)))] (.move (.generated .part 11))))), (.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 11))]) none (.clone (.generated .binding 4)))]) (tail := (.move (.generated .part 11))) (Corr.second (ta := (.adt 1)) (tb := .int) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.pair (.adt 1) .int), (some 4)), (3, (.list (.adt 1)), (some 3)), (2, (.adt 1), (some 2)), (1, .int, (some 1)), (0, (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.pair (.adt 1) .int), (some 4)), (3, (.list (.adt 1)), (some 3)), (2, (.adt 1), (some 2)), (1, .int, (some 1)), (0, (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, (.pair (.adt 1) .int), (some 4)), (3, (.list (.adt 1)), (some 3)), (2, (.adt 1), (some 2)), (1, .int, (some 1)), (0, (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.pair (.move (.generated .binding 2)) (.copy (.generated .binding 1)))])) (lb := []) (tb := (.construct .some [(.move (.generated .binding 4))])) (Corr.build (ts := [(.pair (.adt 1) .int)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lNil))) rfl) (Corr.build (ts := [(.pair (.adt 1) .int)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)))) rfl rfl rfl (Corr.build (ts := [(.pair (.adt 1) .int)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lNil))) rfl)) rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))))) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ - -theorem fun11 : FunOK program krate flags 11 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some (.list .int)) (.call (.function 14) [(.move (.generated .binding 0))] false)), (.mk (.tuple [(.bind (.generated .part 15)), .wild]) none (.call (.function 15) [(.construct (.closure 1 16) [(.move (.generated .binding 1))]), (.pair (.construct (.nil .int) []) (.call (.function 17) [] false)), (.call (.function 18) [] false)] true))], (.succeed (.move (.generated .part 15))), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.fOfB (Corr.first (ta := (.list .int)) (tb := (.list .int)) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int))), (.pair (.list .int) (.list .int)), (.list (.list .int))]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [(.list .int)]) (mask := [false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := []) (Corr.opsNil) rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := []) (Corr.opsNil) rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl)))⟩⟩ - -theorem fun12 : FunOK program krate flags 12 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 16)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 16)) [(.mk (.adt 1 0 []) (.mk [] (.lit (.bool false)))), (.mk (.adt 1 1 []) (.mk [] (.lit (.bool false)))), (.mk (.adt 1 2 []) (.mk [] (.lit (.bool true))))]), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.adt 1)) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ - -theorem fun13 : FunOK program krate flags 13 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 17)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 17)) [(.mk (.adt 1 0 []) (.mk [] (.lit (.bool false)))), (.mk (.adt 1 1 []) (.mk [] (.lit (.bool true)))), (.mk (.adt 1 2 []) (.mk [] (.lit (.bool false))))]), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.adt 1)) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ - -theorem fun14 : FunOK program krate flags 14 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 19) [(.move (.generated .binding 0))] false), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun15 : FunOK program krate flags 15 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 18)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 18)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 15) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 19)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 19) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]), [(2, (.list (.list .int)), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.fn [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int))), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.list .int))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.list .int)), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.fn [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list (.list .int)), (some 4)), (3, (.list .int), (some 3)), (2, (.list (.list .int)), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.fn [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 15) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 19)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 19) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int))), (.pair (.list .int) (.list .int)), (.list (.list .int))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 19)) (some (.fn 1)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 19) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true)) (Corr.apply (ps := [(.pair (.list .int) (.list .int)), (.list .int)]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ - -theorem fun16 : FunOK program krate flags 16 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 21)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 20))]) none (.clone (.generated .binding 1)))] (.move (.generated .part 20)))))], (.matchOn (.uncons (.generated .holder 21)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 22)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 22))))), (.mk (.bind (.generated .operand 28)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 25)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 23)), .wild]) none (.call (.function 20) [(.construct (.closure 2 21) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 23)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 24))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] true))), (.construct (.nil .int) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))) (.move (.generated .binding 4))))))]), [(2, (.list .int), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.list .int), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .int)) (U := []) (view := true) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 20))]) none (.clone (.generated .binding 1)))]) (tail := (.move (.generated .part 20))) (Corr.second (ta := (.list .int)) (tb := (.list .int)) (Corr.var rfl rfl) rfl)) (Corr.mCons (Γ' := [(2, (.list .int), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.list .int), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list .int), (some 4)), (3, .int, (some 3)), (2, (.list .int), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.list .int), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 22)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 22))))), (.mk (.bind (.generated .operand 28)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 25)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 23)), .wild]) none (.call (.function 20) [(.construct (.closure 2 21) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 23)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 24))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] true))), (.construct (.nil .int) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))) (.move (.generated .binding 4))))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 27)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 22)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 22))))), (.mk (.bind (.generated .operand 28)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 25)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 23)), .wild]) none (.call (.function 20) [(.construct (.closure 2 21) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 23)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 24))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] true))), (.construct (.nil .int) [])]))]) (tail := (.call (.runtime .appendList) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false)) (Corr.prim (ts := [(.list .int), (.list .int)]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 22)), .wild]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 22))) (Corr.first (ta := (.list .int)) (tb := (.list .int)) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 25)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 23)), .wild]) none (.call (.function 20) [(.construct (.closure 2 21) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 23)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 24))] true))))]) (tail := (.call (.runtime .intSub) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] true)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 23)), .wild]) none (.call (.function 20) [(.construct (.closure 2 21) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 23)))))]) (tail := (.call (.runtime .intNeg) [(.move (.generated .operand 24))] true)) (Corr.prim (ts := [.int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 23)), .wild]) none (.call (.function 20) [(.construct (.closure 2 21) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))]) (tail := (.move (.generated .part 23))) (Corr.first (ta := .int) (tb := (.list .int)) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.pair .int (.list .int)), .int] (.pair .int (.list .int))), (.pair .int (.list .int)), (.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl)) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))))) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ - -theorem fun17 : FunOK program krate flags 17 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int (-1))), (.construct (.nil .int) [])])])]), [], rfl, rfl, - (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)⟩⟩ - -theorem fun18 : FunOK program krate flags 18 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct .cons [(.construct .cons [(.lit (.int (-2))), (.construct .cons [(.lit (.int (-2))), (.construct .cons [(.lit (.int (-4))), (.construct (.nil .int) [])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 5)), (.construct (.nil .int) [])])])]), (.construct (.nil (.list .int)) [])])])]), [], rfl, rfl, - (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)⟩⟩ - -theorem fun19 : FunOK program krate flags 19 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 29)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 29)) [(.mk (.adt 0 0 []) (.mk [] (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])]))), (.mk (.adt 0 1 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])]))), (.mk (.adt 0 2 []) (.mk [] (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])]))), (.mk (.adt 0 3 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])]))), (.mk (.adt 0 4 []) (.mk [] (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])]))), (.mk (.adt 0 5 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])]))), (.mk (.adt 0 6 []) (.mk [] (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])]))), (.mk (.adt 0 7 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])))]), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.adt 0)) (U := []) (view := false) (idx := [0, 1, 2, 3, 4, 5, 6, 7]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 3) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 4) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 5) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 6) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 7) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun20 : FunOK program krate flags 20 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 30)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 30)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 20) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 31)) (some (.fn 2)) (.move (.generated .binding 0)))] (.apply (.generated .callee 31) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]), [(2, (.list .int), (some 2)), (1, (.pair .int (.list .int)), (some 1)), (0, (.fn [(.pair .int (.list .int)), .int] (.pair .int (.list .int))), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .int)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .int), (some 2)), (1, (.pair .int (.list .int)), (some 1)), (0, (.fn [(.pair .int (.list .int)), .int] (.pair .int (.list .int))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list .int), (some 4)), (3, .int, (some 3)), (2, (.list .int), (some 2)), (1, (.pair .int (.list .int)), (some 1)), (0, (.fn [(.pair .int (.list .int)), .int] (.pair .int (.list .int))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 20) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 31)) (some (.fn 2)) (.move (.generated .binding 0)))] (.apply (.generated .callee 31) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.pair .int (.list .int)), .int] (.pair .int (.list .int))), (.pair .int (.list .int)), (.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 31)) (some (.fn 2)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 31) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true)) (Corr.apply (ps := [(.pair .int (.list .int)), .int]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ - -theorem fun21 : FunOK program krate flags 21 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 33)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 32))]) none (.clone (.generated .binding 0)))] (.move (.generated .part 32)))))], (.matchOn (.uncons (.generated .holder 33)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 0))))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 38)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 34)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 34))))), (.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.bind (.generated .operand 37)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 36)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] true))))] (.call (.runtime .intNeg) [(.move (.generated .operand 37))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 38)), (.move (.generated .operand 39))] true))) (.move (.generated .binding 3))))))]), [(1, .int, (some 1)), (0, (.pair .int (.list .int)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .int)) (U := []) (view := true) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 32))]) none (.clone (.generated .binding 0)))]) (tail := (.move (.generated .part 32))) (Corr.second (ta := .int) (tb := (.list .int)) (Corr.var rfl rfl) rfl)) (Corr.mCons (Γ' := [(1, .int, (some 1)), (0, (.pair .int (.list .int)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 0)))) (Corr.mCons (Γ' := [(3, (.list .int), (some 3)), (2, .int, (some 2)), (1, .int, (some 1)), (0, (.pair .int (.list .int)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 38)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 34)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 34))))), (.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.bind (.generated .operand 37)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 36)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] true))))] (.call (.runtime .intNeg) [(.move (.generated .operand 37))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 38)), (.move (.generated .operand 39))] true))) (.move (.generated .binding 3))))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 38)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 34)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 34))))), (.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.bind (.generated .operand 37)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 36)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] true))))] (.call (.runtime .intNeg) [(.move (.generated .operand 37))] true))))]) (tail := (.call (.runtime .intSub) [(.move (.generated .operand 38)), (.move (.generated .operand 39))] true)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 34)), .wild]) none (.move (.generated .binding 0)))]) (tail := (.move (.generated .part 34))) (Corr.first (ta := .int) (tb := (.list .int)) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 37)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 36)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] true))))]) (tail := (.call (.runtime .intNeg) [(.move (.generated .operand 37))] true)) (Corr.prim (ts := [.int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 35)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 36)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .intMul) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] true)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))))) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | 3 => exact fun3 - | 4 => exact fun4 - | 5 => exact fun5 - | 6 => exact fun6 - | 7 => exact fun7 - | 8 => exact fun8 - | 9 => exact fun9 - | 10 => exact fun10 - | 11 => exact fun11 - | 12 => exact fun12 - | 13 => exact fun13 - | 14 => exact fun14 - | 15 => exact fun15 - | 16 => exact fun16 - | 17 => exact fun17 - | 18 => exact fun18 - | 19 => exact fun19 - | 20 => exact fun20 - | 21 => exact fun21 - | _ + 22 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.RustStd diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R3.lean b/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R3.lean deleted file mode 100644 index a47446710..000000000 --- a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R3.lean +++ /dev/null @@ -1,132 +0,0 @@ -import LexLeanPreservation.Core -import LexLeanPreservation.Values -import LexLeanPreservation.Primitives -import LexLeanPreservation.Fixed -import LexLeanPreservation.Keys -import LexLeanPreservation.Templates -import LexLeanPreservation.Validate -import Models.Flows -import Models.Glyphs -import Models.Ledger -import Models.Main -import Models.Pipeline -import Models.Policy -import Models.Recognizer -import Models.Session -import Models.Triage -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -set_option linter.unusedVariables false -namespace LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3 - -def __prog : _root_.LexLeanTarget.TargetSyntax.Program := - { adts := [{ constructors := [[.nat, .nat]] }], functions := [ - { parameters := [0], types := [(.list .nat)], result := (.result (.result (.list .nat) (.pair .bool .bool)) (.pair .bool .bool)), - body := (.«let» 1 (.list .nat) (.var 0) (.cond (.call 1 [(.var 1)]) (.«let» 2 (.result (.list .nat) (.pair .bool .bool)) (.call 2 [(.var 1)]) (.build .ok (.result (.result (.list .nat) (.pair .bool .bool)) (.pair .bool .bool)) [(.var 2)])) (.build .error (.result (.result (.list .nat) (.pair .bool .bool)) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])]))) }, - { parameters := [0], types := [(.list .nat)], result := .bool, - body := (.prim .natLt [(.prim .length [(.var 0)]), (.value .nat (.nat 1001))]) }, - { parameters := [0], types := [(.list .nat)], result := (.result (.list .nat) (.pair .bool .bool)), - body := (.call 3 [(.var 0)]) }, - { parameters := [0], types := [(.list .nat)], result := (.result (.list .nat) (.pair .bool .bool)), - body := (.«let» 1 (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) (.call 4 [(.closure 5 []), (.build .ok (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.build .pair (.pair (.adt 0) (.list .nat)) [(.call 6 []), (.build .nil (.list .nat) [])])]), (.var 0)]) (.«match» (.result (.list .nat) (.pair .bool .bool)) (.var 1) [(.arm .error [2] (.build .error (.result (.list .nat) (.pair .bool .bool)) [(.var 2)])), (.arm .ok [3] (.build .ok (.result (.list .nat) (.pair .bool .bool)) [(.second (.var 3))]))])) }, - { parameters := [0, 1, 2], types := [(.fn [(.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), .nat] (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool))), (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), (.list .nat)], result := (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), - body := (.«match» (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 4 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, - { parameters := [0, 1], types := [(.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), .nat], result := (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), - body := (.«match» (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) (.var 0) [(.arm .error [2] (.var 0)), (.arm .ok [3] (.cond (.call 7 [(.first (.var 3))]) (.cond (.call 8 [(.first (.var 3)), (.var 1)]) (.«let» 4 (.pair (.adt 0) .nat) (.call 9 [(.first (.var 3)), (.var 1)]) (.build .ok (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.build .pair (.pair (.adt 0) (.list .nat)) [(.first (.var 4)), (.prim .append [(.second (.var 3)), (.build .cons (.list .nat) [(.second (.var 4)), (.build .nil (.list .nat) [])])])])])) (.build .error (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])])) (.build .error (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])])])))]) }, - { parameters := [], types := [], result := (.adt 0), - body := (.call 10 []) }, - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.prim .natLe [(.field (.var 0) 0), (.value .nat (.nat 64))]) }, - { parameters := [0, 1], types := [(.adt 0), .nat], result := .bool, - body := (.prim .natLe [(.var 1), (.value .nat (.nat 16))]) }, - { parameters := [0, 1], types := [(.adt 0), .nat], result := (.pair (.adt 0) .nat), - body := (.call 11 [(.var 0), (.var 1)]) }, - { parameters := [], types := [], result := (.adt 0), - body := (.build (.adt 0) (.adt 0) [(.value .nat (.nat 0)), (.value .nat (.nat 0))]) }, - { parameters := [0, 1], types := [(.adt 0), .nat], result := (.pair (.adt 0) .nat), - body := (.«let» 2 .nat (.prim .natAdd [(.field (.var 0) 0), (.var 1)]) (.build .pair (.pair (.adt 0) .nat) [(.build (.adt 0) (.adt 0) [(.prim .natSub [(.var 2), (.prim .natSub [(.var 2), (.value .nat (.nat 64))])]), (.prim .natAdd [(.field (.var 0) 1), (.value .nat (.nat 1))])]), (.prim .natSub [(.var 2), (.value .nat (.nat 64))])])) }] } - -def __enc_0 (__s : (Models.Session.Window)) : _root_.LexLeanTarget.TargetSyntax.Value := - _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).used), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).items)] - -def __fits_1 (costs : (List Nat)) : Bool := - ((((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (costs) : Nat) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_1 (costs : (List Nat)) : _root_.LexLeanPreservation.FunRel __prog 1 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) costs)] (_root_.LexLeanPreservation.Rel (__fits_1 costs) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Models.Pipeline.shortStreamCheck costs))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) costs)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (_root_.LexLeanRuntime.length (costs) : Nat) (1001 : Nat))) - -def __fits_7 (window : (Models.Session.Window)) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_7 (window : (Models.Session.Window)) : _root_.LexLeanPreservation.FunRel __prog 7 [(__enc_0 window)] (_root_.LexLeanPreservation.Rel (__fits_7 window) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Models.Session.boundedCheck window))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe (window).used (64 : Nat))) - -def __fits_8 (window : (Models.Session.Window)) (cost : Nat) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_8 (window : (Models.Session.Window)) (cost : Nat) : _root_.LexLeanPreservation.FunRel __prog 8 [(__enc_0 window), (_root_.LexLeanTarget.TargetSyntax.Value.nat cost)] (_root_.LexLeanPreservation.Rel (__fits_8 window cost) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Models.Session.affordableCheck window cost))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe cost (16 : Nat))) - -def __fits_11 (window : (Models.Session.Window)) (cost : Nat) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((window).used + cost) 18446744073709551616)) && (let total : Nat := ((window).used + cost); ((((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((window).items + (1 : Nat)) 18446744073709551616)) && Bool.true)) && Bool.true) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true))) - -theorem __rel_11 (window : (Models.Session.Window)) (cost : Nat) : _root_.LexLeanPreservation.FunRel __prog 11 [(__enc_0 window), (_root_.LexLeanTarget.TargetSyntax.Value.nat cost)] (_root_.LexLeanPreservation.Rel (__fits_11 window cost) ((_root_.LexLeanPreservation.encPair __enc_0 _root_.LexLeanTarget.TargetSyntax.Value.nat) (Models.Session.SessionStep window cost))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (let total : Nat := ((window).used + cost); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (window).used cost)) (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub total (64 : Nat))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub total (_root_.LexLeanRuntime.subtract (total) ((64 : Nat)) : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (window).items (1 : Nat))) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_adt) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub total (64 : Nat))) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair)) - -def __fits_9 (_ystate : (Models.Session.Window)) (_yinput : Nat) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && (__fits_11 (_ystate) (_yinput))) - -attribute [local irreducible] Models.Session.SessionStep in -theorem __rel_9 (_ystate : (Models.Session.Window)) (_yinput : Nat) : _root_.LexLeanPreservation.FunRel __prog 9 [(__enc_0 _ystate), (_root_.LexLeanTarget.TargetSyntax.Value.nat _yinput)] (_root_.LexLeanPreservation.Rel (__fits_9 _ystate _yinput) ((_root_.LexLeanPreservation.encPair __enc_0 _root_.LexLeanTarget.TargetSyntax.Value.nat) (Models.Session.SessionModel _ystate _yinput))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_11 (_ystate) (_yinput))) - -def __fits_5 (_yacc : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat)))) (_yitem : Nat) : Bool := - (Bool.true && (match _yacc with | Except.error _yviolation => Bool.true | Except.ok _ystate => (((Bool.true && Bool.true) && (__fits_7 ((_ystate).1))) && (if (Models.Session.boundedCheck ((_ystate).1)) then (((Bool.true && (Bool.true && Bool.true)) && (__fits_8 ((_ystate).1) (_yitem))) && (if (Models.Session.affordableCheck ((_ystate).1) (_yitem)) then (((Bool.true && (Bool.true && Bool.true)) && (__fits_9 ((_ystate).1) (_yitem))) && (let _ystep : (Prod (Models.Session.Window) Nat) := (Models.Session.SessionModel ((_ystate).1) (_yitem)); ((((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) - -attribute [local irreducible] Models.Session.SessionModel Models.Session.affordableCheck Models.Session.boundedCheck in -theorem __rel_5 (_yacc : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat)))) (_yitem : Nat) : _root_.LexLeanPreservation.FunRel __prog 5 [((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair __enc_0 (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat))) _yacc), (_root_.LexLeanTarget.TargetSyntax.Value.nat _yitem)] (_root_.LexLeanPreservation.Rel (__fits_5 _yacc _yitem) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair __enc_0 (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat))) ((match _yacc with | Except.error _yviolation => _yacc | Except.ok _ystate => (if (Models.Session.boundedCheck ((_ystate).1)) then (if (Models.Session.affordableCheck ((_ystate).1) (_yitem)) then (let _ystep : (Prod (Models.Session.Window) Nat) := (Models.Session.SessionModel ((_ystate).1) (_yitem)); (Except.ok (((_ystep).1, (_root_.LexLeanRuntime.append ((_ystate).2) (((_ystep).2 :: ([] : List Nat))) : (List Nat)))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat))))) else (Except.error (((Bool.false, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat))))) else (Except.error (((Bool.false, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat))))))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair __enc_0 (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat))) (fun (__a : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat)))) => (match __a with | Except.error _yviolation => Bool.true | Except.ok _ystate => (((Bool.true && Bool.true) && (__fits_7 ((_ystate).1))) && (if (Models.Session.boundedCheck ((_ystate).1)) then (((Bool.true && (Bool.true && Bool.true)) && (__fits_8 ((_ystate).1) (_yitem))) && (if (Models.Session.affordableCheck ((_ystate).1) (_yitem)) then (((Bool.true && (Bool.true && Bool.true)) && (__fits_9 ((_ystate).1) (_yitem))) && (let _ystep : (Prod (Models.Session.Window) Nat) := (Models.Session.SessionModel ((_ystate).1) (_yitem)); ((((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) (fun (__a : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat)))) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair __enc_0 (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat))) (match __a with | Except.error _yviolation => _yacc | Except.ok _ystate => (if (Models.Session.boundedCheck ((_ystate).1)) then (if (Models.Session.affordableCheck ((_ystate).1) (_yitem)) then (let _ystep : (Prod (Models.Session.Window) Nat) := (Models.Session.SessionModel ((_ystate).1) (_yitem)); (Except.ok (((_ystep).1, (_root_.LexLeanRuntime.append ((_ystate).2) (((_ystep).2 :: ([] : List Nat))) : (List Nat)))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat))))) else (Except.error (((Bool.false, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat))))) else (Except.error (((Bool.false, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat))))))) _yacc (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat)))) _ => match __a with | Except.error _yviolation => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | Except.ok _ystate => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (Bool.true && Bool.true)) && (__fits_8 ((_ystate).1) (_yitem))) && (if (Models.Session.affordableCheck ((_ystate).1) (_yitem)) then (((Bool.true && (Bool.true && Bool.true)) && (__fits_9 ((_ystate).1) (_yitem))) && (let _ystep : (Prod (Models.Session.Window) Nat) := (Models.Session.SessionModel ((_ystate).1) (_yitem)); ((((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair __enc_0 (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat))) (if __b then (if (Models.Session.affordableCheck ((_ystate).1) (_yitem)) then (let _ystep : (Prod (Models.Session.Window) Nat) := (Models.Session.SessionModel ((_ystate).1) (_yitem)); (Except.ok (((_ystep).1, (_root_.LexLeanRuntime.append ((_ystate).2) (((_ystep).2 :: ([] : List Nat))) : (List Nat)))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat))))) else (Except.error (((Bool.false, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat))))) else (Except.error (((Bool.false, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat)))))) (Models.Session.boundedCheck ((_ystate).1)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil) (__rel_7 ((_ystate).1))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (Bool.true && Bool.true)) && (__fits_9 ((_ystate).1) (_yitem))) && (let _ystep : (Prod (Models.Session.Window) Nat) := (Models.Session.SessionModel ((_ystate).1) (_yitem)); ((((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair __enc_0 (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat))) (if __b then (let _ystep : (Prod (Models.Session.Window) Nat) := (Models.Session.SessionModel ((_ystate).1) (_yitem)); (Except.ok (((_ystep).1, (_root_.LexLeanRuntime.append ((_ystate).2) (((_ystep).2 :: ([] : List Nat))) : (List Nat)))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat))))) else (Except.error (((Bool.false, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat)))))) (Models.Session.affordableCheck ((_ystate).1) (_yitem)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_8 ((_ystate).1) (_yitem))) (fun _ => (let _ystep : (Prod (Models.Session.Window) Nat) := (Models.Session.SessionModel ((_ystate).1) (_yitem)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_9 ((_ystate).1) (_yitem))) (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (_ystate).2 ((_ystep).2 :: ([] : List Nat)))) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error))))))) - -def __fits_10 : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_10 : _root_.LexLeanPreservation.FunRel __prog 10 [] (_root_.LexLeanPreservation.Rel (__fits_10) (__enc_0 (Models.Session.SessionStep.initial))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_adt) - -def __fits_6 : Bool := - (Bool.true && (__fits_10)) - -attribute [local irreducible] Models.Session.SessionStep.initial in -theorem __rel_6 : _root_.LexLeanPreservation.FunRel __prog 6 [] (_root_.LexLeanPreservation.Rel (__fits_6) (__enc_0 (Models.Session.SessionModel.initial))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call _root_.LexLeanPreservation.convL_nil (__rel_10)) - -def __fits_3 (costs : (List Nat)) : Bool := - (((Bool.true && ((((((Bool.true && (__fits_6)) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat)))) (__p1 : Nat) => __fits_5 __p0 __p1) ((fun (_yacc : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat)))) (_yitem : Nat) => (match _yacc with | Except.error _yviolation => _yacc | Except.ok _ystate => (if (Models.Session.boundedCheck ((_ystate).1)) then (if (Models.Session.affordableCheck ((_ystate).1) (_yitem)) then (let _ystep : (Prod (Models.Session.Window) Nat) := (Models.Session.SessionModel ((_ystate).1) (_yitem)); (Except.ok (((_ystep).1, (_root_.LexLeanRuntime.append ((_ystate).2) (((_ystep).2 :: ([] : List Nat))) : (List Nat)))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat))))) else (Except.error (((Bool.false, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat))))) else (Except.error (((Bool.false, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat)))))))) ((Except.ok (((Models.Session.SessionModel.initial), ([] : List Nat))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat))))) (costs))) && (let _yscanned : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat))) := (_root_.LexLeanCollections.listFold ((fun (_yacc : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat)))) (_yitem : Nat) => (match _yacc with | Except.error _yviolation => _yacc | Except.ok _ystate => (if (Models.Session.boundedCheck ((_ystate).1)) then (if (Models.Session.affordableCheck ((_ystate).1) (_yitem)) then (let _ystep : (Prod (Models.Session.Window) Nat) := (Models.Session.SessionModel ((_ystate).1) (_yitem)); (Except.ok (((_ystep).1, (_root_.LexLeanRuntime.append ((_ystate).2) (((_ystep).2 :: ([] : List Nat))) : (List Nat)))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat))))) else (Except.error (((Bool.false, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat))))) else (Except.error (((Bool.false, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat)))))))) ((Except.ok (((Models.Session.SessionModel.initial), ([] : List Nat))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat))))) (costs) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat)))); (Bool.true && (match _yscanned with | Except.error _yviolation => ((Bool.true && Bool.true) && Bool.true) | Except.ok _ystate => ((Bool.true && Bool.true) && Bool.true))))) - -attribute [local irreducible] Models.Session.SessionModel Models.Session.SessionModel.initial Models.Session.affordableCheck Models.Session.boundedCheck in -theorem __rel_3 (costs : (List Nat)) : _root_.LexLeanPreservation.FunRel __prog 3 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) costs)] (_root_.LexLeanPreservation.Rel (__fits_3 costs) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Models.Pipeline.SessionStream costs))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (let _yscanned : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat))) := (_root_.LexLeanCollections.listFold ((fun (_yacc : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat)))) (_yitem : Nat) => (match _yacc with | Except.error _yviolation => _yacc | Except.ok _ystate => (if (Models.Session.boundedCheck ((_ystate).1)) then (if (Models.Session.affordableCheck ((_ystate).1) (_yitem)) then (let _ystep : (Prod (Models.Session.Window) Nat) := (Models.Session.SessionModel ((_ystate).1) (_yitem)); (Except.ok (((_ystep).1, (_root_.LexLeanRuntime.append ((_ystate).2) (((_ystep).2 :: ([] : List Nat))) : (List Nat)))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat))))) else (Except.error (((Bool.false, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat))))) else (Except.error (((Bool.false, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat)))))))) ((Except.ok (((Models.Session.SessionModel.initial), ([] : List Nat))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat))))) (costs) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat)))); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call _root_.LexLeanPreservation.convL_nil (__rel_6)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.nat) (es := (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair __enc_0 (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)))) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) ((fun (_yacc : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat)))) (_yitem : Nat) => (match _yacc with | Except.error _yviolation => _yacc | Except.ok _ystate => (if (Models.Session.boundedCheck ((_ystate).1)) then (if (Models.Session.affordableCheck ((_ystate).1) (_yitem)) then (let _ystep : (Prod (Models.Session.Window) Nat) := (Models.Session.SessionModel ((_ystate).1) (_yitem)); (Except.ok (((_ystep).1, (_root_.LexLeanRuntime.append ((_ystate).2) (((_ystep).2 :: ([] : List Nat))) : (List Nat)))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat))))) else (Except.error (((Bool.false, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat))))) else (Except.error (((Bool.false, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat)))))))) (fun (__p0 : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat)))) (__p1 : Nat) => __fits_5 __p0 __p1) 5 [] (fun (__p0 : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat)))) (__p1 : Nat) => __rel_5 __p0 __p1) (p := __prog) (fi := 4) (ta := .nat) (ts := (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool))) rfl ((Except.ok (((Models.Session.SessionModel.initial), ([] : List Nat))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat))))) (costs))) (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair __enc_0 (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat))) (fun (__a : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat)))) => (match __a with | Except.error _yviolation => ((Bool.true && Bool.true) && Bool.true) | Except.ok _ystate => ((Bool.true && Bool.true) && Bool.true))) (fun (__a : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat)))) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) (match __a with | Except.error _yviolation => (Except.error (_yviolation) : (Except (Prod Bool Bool) (List Nat))) | Except.ok _ystate => (Except.ok ((_ystate).2) : (Except (Prod Bool Bool) (List Nat))))) _yscanned (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat)))) _ => match __a with | Except.error _yviolation => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)) | Except.ok _ystate => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok)))))) - -def __fits_2 (_yinput : (List Nat)) : Bool := - ((Bool.true && Bool.true) && (__fits_3 (_yinput))) - -attribute [local irreducible] Models.Pipeline.SessionStream in -theorem __rel_2 (_yinput : (List Nat)) : _root_.LexLeanPreservation.FunRel __prog 2 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) _yinput)] (_root_.LexLeanPreservation.Rel (__fits_2 _yinput) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Models.Pipeline.StreamModel _yinput))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_3 (_yinput))) - -def __fits_0 (costs : (List Nat)) : Bool := - (Bool.true && (let _ychecked1_input : (List Nat) := costs; (((Bool.true && Bool.true) && (__fits_1 (_ychecked1_input))) && (if (Models.Pipeline.shortStreamCheck (_ychecked1_input)) then (((Bool.true && Bool.true) && (__fits_2 (_ychecked1_input))) && (let _ychecked1_output : (Except (Prod Bool Bool) (List Nat)) := (Models.Pipeline.StreamModel (_ychecked1_input)); ((Bool.true && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) - -attribute [local irreducible] Models.Pipeline.StreamModel Models.Pipeline.shortStreamCheck in -theorem __rel_0 (costs : (List Nat)) : _root_.LexLeanPreservation.FunRel __prog 0 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) costs)] (_root_.LexLeanPreservation.Rel (__fits_0 costs) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat))) (Models.Main.admitCosts costs))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (let _ychecked1_input : (List Nat) := costs; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && (__fits_2 (_ychecked1_input))) && (let _ychecked1_output : (Except (Prod Bool Bool) (List Nat)) := (Models.Pipeline.StreamModel (_ychecked1_input)); ((Bool.true && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat))) (if __b then (let _ychecked1_output : (Except (Prod Bool Bool) (List Nat)) := (Models.Pipeline.StreamModel (_ychecked1_input)); (Except.ok (_ychecked1_output) : (Except (Prod Bool Bool) (Except (Prod Bool Bool) (List Nat))))) else (Except.error (((Bool.false, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Except (Prod Bool Bool) (List Nat)))))) (Models.Pipeline.shortStreamCheck (_ychecked1_input)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_1 (_ychecked1_input))) (fun _ => (let _ychecked1_output : (Except (Prod Bool Bool) (List Nat)) := (Models.Pipeline.StreamModel (_ychecked1_input)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_2 (_ychecked1_input))) (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)))) - -def denote (costs : (List Nat)) : _root_.LexLeanPreservation.Obs := - _root_.cond (__fits_0 costs) (_root_.LexLeanPreservation.Obs.value (((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat))) (Models.Main.admitCosts costs)))) _root_.LexLeanPreservation.Obs.overflow - -theorem root (costs : (List Nat)) : _root_.LexLeanPreservation.RunConv __prog 0 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) costs)] (_root_.LexLeanPreservation.Rel (__fits_0 costs) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat))) (Models.Main.admitCosts costs))) := - _root_.LexLeanPreservation.run_of_funRel (__rel_0 costs) - -end LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3 diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R3/Compose/RustStd.lex.tex b/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R3/Compose/RustStd.lex.tex deleted file mode 100644 index 4f5cb11fd..000000000 --- a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R3/Compose/RustStd.lex.tex +++ /dev/null @@ -1,600 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3, - LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.Compose.RustStd.__wt_0 : @16 := @440 { - all: [LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.Compose.RustStd.__wt_0], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.Compose.RustStd.root : @1207 := @1208 { - all: [LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.RustStd.program -@1 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.RustStd.krate -@2 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.RustStd.flags -@3 := Models.Session.Window -@4 := #0 -@6 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.__enc_0 @4 -@7 := LexLeanPreservation.Rust.WT -@8 := LexLeanTarget.TargetSyntax.Ty.adt -@9 := 0 -@10 := @8 @9 -@11 := @7 @0 -@12 := @11 @1 -@13 := @12 @2 -@16 := (__s : @3) -> @13 @6 @10 -@17 := Models.Session.Window.used -@18 := @17 @4 -@19 := Models.Session.Window.items -@20 := @19 @4 -@21 := LexLeanTarget.TargetSyntax.Value.nat -@22 := @21 @18 -@23 := LexLeanTarget.TargetSyntax.Ty.nat -@24 := LexLeanTarget.TargetSyntax.Program -@25 := LexLeanPreservation.Rust.RCrate -@26 := LexLeanPreservation.Rust.Flags -@27 := Nat -@28 := #3 -@29 := @7 @28 -@30 := #2 -@31 := @29 @30 -@32 := #1 -@33 := @31 @32 -@34 := @21 @4 -@40 := {p : @24} -> {c : @25} -> {A : @26} -> (n : @27) -> @33 @34 @23 -@42 := LexLeanPreservation.Rust.wt_nat @0 -@49 := {c : @25} -> {A : @26} -> (n : @27) -> @11 @30 @32 @34 @23 -@50 := @42 @1 -@55 := {A : @26} -> (n : @27) -> @12 @32 @34 @23 -@56 := @50 @2 -@57 := @13 @34 -@58 := @57 @23 -@59 := (n : @27) -> @58 -@60 := @56 @18 -@62 := @13 @22 @23 -@63 := @21 @20 -@64 := @56 @20 -@66 := @13 @63 @23 -@67 := LexLeanTarget.TargetSyntax.Value -@68 := LexLeanTarget.TargetSyntax.Ty -@69 := List.nil.{0} -@70 := List.cons.{0} -@71 := @69 @67 -@72 := @70 @67 -@74 := @72 @63 @71 -@76 := @72 @22 @74 -@77 := @69 @68 -@78 := @70 @68 -@79 := @78 @23 -@80 := @79 @77 -@81 := @79 @80 -@82 := LexLeanPreservation.Rust.WTL -@90 := {p : @24} -> {c : @25} -> {A : @26} -> @82 @30 @32 @4 @71 @77 -@92 := LexLeanPreservation.Rust.wtl_nil @0 -@93 := @82 @0 -@99 := {c : @25} -> {A : @26} -> @93 @32 @4 @71 @77 -@100 := @92 @1 -@101 := @93 @1 -@105 := {A : @26} -> @101 @4 @71 @77 -@106 := @100 @2 -@107 := @101 @2 -@108 := @107 @71 -@109 := @108 @77 -@110 := List.{0} -@111 := @110 @67 -@112 := @110 @68 -@113 := #6 -@114 := @7 @113 -@115 := #5 -@116 := @114 @115 -@117 := #4 -@118 := @116 @117 -@120 := @118 @28 @30 -@121 := #7 -@126 := @82 @121 @113 @115 @30 @32 -@127 := #8 -@130 := @82 @127 @121 @113 -@132 := @72 @115 @28 -@133 := @130 @132 -@135 := @78 @117 @30 -@145 := {p : @24} -> - {c : @25} -> - {A : @26} -> - {v : @67} -> {t : @68} -> {vs : @111} -> {ts : @112} -> (h : @120) -> (hs : @126) -> @133 @135 -@147 := LexLeanPreservation.Rust.wtl_cons @0 -@149 := @11 @115 @117 -@151 := @149 @28 @30 -@155 := @93 @113 @115 @30 @32 -@167 := {c : @25} -> - {A : @26} -> - {v : @67} -> - {t : @68} -> {vs : @111} -> {ts : @112} -> (h : @151) -> (hs : @155) -> @93 @121 @113 @132 @135 -@168 := @147 @1 -@169 := @12 @117 -@171 := @169 @28 @30 -@174 := @101 @115 @30 @32 -@184 := {A : @26} -> - {v : @67} -> - {t : @68} -> {vs : @111} -> {ts : @112} -> (h : @171) -> (hs : @174) -> @101 @113 @132 @135 -@185 := @168 @2 -@187 := @13 @28 @30 -@189 := @107 @30 @32 -@197 := {v : @67} -> - {t : @68} -> {vs : @111} -> {ts : @112} -> (h : @187) -> (hs : @189) -> @107 @132 @135 -@198 := @185 @63 -@200 := @21 (@19 @28) -@213 := {t : @68} -> - {vs : @111} -> - {ts : @112} -> (h : @13 @200 @30) -> (hs : @189) -> @107 (@72 (@21 (@19 @115)) @28) @135 -@214 := @198 @23 -@216 := @21 (@19 @30) -@218 := @13 @216 @23 -@223 := @107 (@72 (@21 (@19 @117)) @28) -@224 := @79 @30 -@229 := {vs : @111} -> {ts : @112} -> (h : @218) -> (hs : @189) -> @223 @224 -@230 := @214 @71 -@232 := @21 (@19 @32) -@234 := @13 @232 @23 -@235 := @108 @32 -@237 := @72 @200 @71 -@242 := {ts : @112} -> (h : @234) -> (hs : @235) -> @107 @237 @224 -@243 := @230 @77 -@245 := @72 @216 @71 -@246 := @107 @245 -@249 := (h : @66) -> (hs : @109) -> @246 @80 -@250 := @243 @64 -@252 := @72 @232 @71 -@254 := @107 @252 @80 -@255 := (hs : @109) -> @254 -@256 := @250 @106 -@258 := @107 @74 @80 -@259 := @185 @22 -@261 := @21 (@17 @28) -@274 := {t : @68} -> - {vs : @111} -> - {ts : @112} -> (h : @13 @261 @30) -> (hs : @189) -> @107 (@72 (@21 (@17 @115)) @28) @135 -@275 := @259 @23 -@277 := @21 (@17 @30) -@289 := {vs : @111} -> - {ts : @112} -> (h : @13 @277 @23) -> (hs : @189) -> @107 (@72 (@21 (@17 @117)) @28) @224 -@290 := @275 @74 -@292 := @21 (@17 @32) -@294 := @13 @292 @23 -@295 := @246 @32 -@297 := @72 @261 @237 -@302 := {ts : @112} -> (h : @294) -> (hs : @295) -> @107 @297 @224 -@303 := @290 @80 -@305 := @72 @277 @245 -@306 := @107 @305 -@309 := (h : @62) -> (hs : @254) -> @306 @81 -@310 := @303 @60 -@312 := @72 @292 @252 -@314 := @107 @312 @81 -@315 := (hs : @258) -> @314 -@316 := @310 @256 -@318 := @107 @76 @81 -@319 := Eq.{1} -@320 := Option.{0} -@321 := @320 @112 -@322 := @319 @321 -@323 := LexLeanPreservation.Rust.adtFields -@327 := @322 (@323 @113 @28 @30) -@328 := Option.some.{0} -@329 := @328 @112 -@330 := @329 @4 -@331 := @327 @330 -@334 := @7 @127 @121 @113 -@335 := LexLeanTarget.TargetSyntax.Value.adt -@337 := @335 @117 @28 -@338 := @334 @337 -@339 := @8 @115 -@349 := {p : @24} -> - {c : @25} -> - {A : @26} -> - {i : @27} -> {k : @27} -> {fs : @111} -> {tys : @112} -> (h : @331) -> (hf : @126) -> @338 @339 -@351 := LexLeanPreservation.Rust.wt_adt @0 -@352 := @323 @0 -@356 := @322 (@352 @28 @30) @330 -@368 := {c : @25} -> - {A : @26} -> - {i : @27} -> - {k : @27} -> {fs : @111} -> {tys : @112} -> (h : @356) -> (hf : @155) -> @11 @121 @113 @337 @339 -@369 := @351 @1 -@379 := {A : @26} -> - {i : @27} -> - {k : @27} -> {fs : @111} -> {tys : @112} -> (h : @356) -> (hf : @174) -> @12 @113 @337 @339 -@380 := @369 @2 -@381 := @13 @337 -@388 := {i : @27} -> - {k : @27} -> {fs : @111} -> {tys : @112} -> (h : @356) -> (hf : @189) -> @381 @339 -@389 := @380 @9 -@390 := @352 @9 -@399 := {k : @27} -> - {fs : @111} -> {tys : @112} -> (h : @322 (@390 @30) @330) -> (hf : @189) -> @381 @10 -@400 := @389 @9 -@401 := @390 @9 -@402 := @322 @401 -@403 := @402 @330 -@404 := @335 @9 -@411 := {fs : @111} -> {tys : @112} -> (h : @403) -> (hf : @189) -> @13 (@404 @28) @10 -@412 := @400 @76 -@419 := {tys : @112} -> (h : @403) -> (hf : @306 @32) -> @13 (@404 @297) @10 -@420 := @412 @81 -@427 := (h : @402 (@329 @81)) -> (hf : @314) -> @13 (@404 @305) @10 -@428 := Eq.refl.{1} -@431 := @420 (@428 @321 @401) -@435 := (hf : @318) -> @13 (@404 @312) @10 -@436 := @431 @316 -@439 := @13 (@404 @76) @10 -@440 := fun (__s : @3) => @436 -@441 := @110 @27 -@442 := LexLeanPreservation.encList -@443 := @442 @27 -@444 := @443 @21 -@445 := @444 @32 -@446 := LexLeanTarget.TargetSyntax.Ty.list -@447 := @446 @23 -@449 := fun (__x : @27) => @56 @4 -@450 := Sort 1 -@451 := (a._@._internal._hyg.#0 : @4) -> @67 -@452 := @30 @4 -@455 := (x : @30) -> @118 @452 @32 -@456 := @110 @28 -@459 := @7 @121 @113 @115 -@462 := @442 @117 @28 @4 -@463 := @459 @462 -@464 := @446 @30 -@473 := {p : @24} -> - {c : @25} -> - {A : @26} -> {α : @450} -> {e : @451} -> {t : @68} -> (h : @455) -> (xs : @456) -> @463 @464 -@475 := LexLeanPreservation.Rust.wt_encList @0 -@489 := {c : @25} -> - {A : @26} -> - {α : @450} -> - {e : @451} -> - {t : @68} -> (h : (x : @30) -> @149 @452 @32) -> (xs : @456) -> @11 @113 @115 @462 @464 -@490 := @475 @1 -@502 := {A : @26} -> - {α : @450} -> - {e : @451} -> {t : @68} -> (h : (x : @30) -> @169 @452 @32) -> (xs : @456) -> @12 @115 @462 @464 -@503 := @490 @2 -@505 := @13 @452 @32 -@513 := {α : @450} -> - {e : @451} -> {t : @68} -> (h : (x : @30) -> @505) -> (xs : @456) -> @13 @462 @464 -@514 := @503 @27 -@524 := {e : (a._@._internal._hyg.#0 : @27) -> @67} -> - {t : @68} -> (h : (x : @27) -> @505) -> (xs : @441) -> @13 (@443 @28 @4) @464 -@525 := @514 @21 -@527 := (x : @27) -> @57 @32 -@528 := @444 @4 -@529 := @13 @528 -@533 := {t : @68} -> (h : @527) -> (xs : @441) -> @529 @464 -@534 := @525 @23 -@538 := (h : (x : @27) -> @58) -> (xs : @441) -> @529 @447 -@540 := @534 @449 @32 -@542 := @13 @445 @447 -@544 := @72 @445 @71 -@545 := Prod.{0, 0} -@547 := @545 @27 @67 -@551 := Prod.mk.{0, 0} @27 @67 @9 -@552 := @551 @445 -@553 := @69 @547 -@554 := @70 @547 -@556 := @554 @552 @553 -@557 := Bool.true -@558 := LexLeanTarget.TargetSyntax.Function -@559 := LexLeanTarget.TargetSyntax.Program.functions -@560 := @559 @0 -@561 := @69 @27 -@562 := LexLeanTarget.TargetSyntax.Ty.unit -@563 := LexLeanTarget.TargetSyntax.Value.unit -@566 := LexLeanTarget.TargetSyntax.Expr.value @562 @563 -@571 := LexLeanTarget.TargetSyntax.Function.mk @561 @77 @562 @566 -@576 := List.getD.{0} @558 @560 @9 @571 -@580 := fun (__e_n : @27) => LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.RustStd.root @4 @9 -@581 := @185 @445 -@582 := @444 @117 -@584 := @13 @582 @30 -@585 := @444 @113 -@586 := @72 @585 -@594 := {t : @68} -> {vs : @111} -> {ts : @112} -> (h : @584) -> (hs : @189) -> @107 (@586 @28) @135 -@595 := @581 @447 -@596 := @444 @28 -@598 := @13 @596 @447 -@599 := @444 @115 -@600 := @72 @599 -@602 := @107 (@600 @28) -@603 := @78 @447 -@604 := @603 @30 -@609 := {vs : @111} -> {ts : @112} -> (h : @598) -> (hs : @189) -> @602 @604 -@610 := @595 @71 -@611 := @444 @30 -@613 := @13 @611 @447 -@615 := @72 @582 @71 -@616 := @107 @615 -@620 := {ts : @112} -> (h : @613) -> (hs : @235) -> @616 @604 -@621 := @610 @77 -@623 := @72 @596 @71 -@624 := @107 @623 -@625 := @603 @77 -@628 := (h : @542) -> (hs : @109) -> @624 @625 -@629 := @621 @540 -@631 := @72 @611 @71 -@632 := @107 @631 -@634 := (hs : @109) -> @632 @625 -@635 := @629 @106 -@636 := @107 @544 -@637 := @636 @625 -@638 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.denote -@639 := @638 @32 -@640 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.__fits_0 -@641 := @640 @32 -@643 := Models.Main.admitCosts @32 -@644 := Bool -@646 := @545 @644 @644 -@649 := Except.{0, 0} @646 @441 -@650 := LexLeanTarget.TargetSyntax.Value.bool -@655 := LexLeanPreservation.encPair @644 @644 @650 @650 -@657 := LexLeanPreservation.encExcept @646 -@660 := @657 @441 @655 @444 -@664 := @657 @649 @655 @660 @643 -@666 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.root @32 -@667 := Ne.{1} -@668 := LexLeanPreservation.Obs -@669 := @667 @668 -@670 := LexLeanPreservation.Rel -@673 := @669 (@670 @32 @4) -@674 := LexLeanPreservation.Obs.stuck -@677 := (f : @644) -> (v : @67) -> @673 @674 -@679 := LexLeanPreservation.Rust.rel_ne_stuck @641 -@685 := (v : @67) -> @669 (@670 (@640 @30) @4) @674 -@686 := @679 @664 -@690 := @669 (@670 @641 @664) @674 -@691 := @110 @547 -@692 := LexLeanPreservation.Rust.FunSem -@693 := #9 -@699 := (n : @27) -> @692 @693 @127 @121 @4 @113 -@700 := @320 @558 -@701 := @319 @700 -@708 := LexLeanRuntime.index (@110 @558) @558 (LexLeanRuntime.instIndexableList @558) -@712 := @701 (@708 (@559 @693) @113) -@713 := @328 @558 -@714 := @713 @115 -@715 := @712 @714 -@716 := #10 -@720 := @82 @716 @693 @127 @115 -@721 := LexLeanTarget.TargetSyntax.Function.types -@722 := @721 @113 -@723 := @720 @722 -@724 := @320 @691 -@725 := @319 @724 -@726 := LexLeanTarget.TargetSemantics.bindAll -@727 := LexLeanTarget.TargetSyntax.Function.parameters -@732 := @725 (@726 (@727 @121) @113 @553) -@733 := @328 @691 -@734 := @733 @115 -@735 := @732 @734 -@736 := @320 @644 -@737 := @319 @736 -@738 := LexLeanPreservation.Rust.fnFallible -@739 := #11 -@742 := @737 (@738 @739 @693) -@743 := @328 @644 -@744 := @743 @115 -@745 := @742 @744 -@746 := LexLeanPreservation.RunConv -@747 := #13 -@751 := @746 @747 @716 @127 @115 -@753 := @669 @113 @674 -@754 := Exists.{1} -@755 := LexLeanPreservation.Rust.ROut -@756 := @754 @755 -@757 := And -@758 := LexLeanPreservation.Rust.RealizesFn -@762 := @757 (@758 @693 @127 @4) -@763 := LexLeanPreservation.Rust.RCI -@765 := @763 #15 -@766 := LexLeanPreservation.Rust.fnIdent -@767 := @766 @747 -@774 := (hne : @753) -> @756 (fun (ro : @755) => @762 (@765 @767 @739 @4)) -@789 := {p : @24} -> - {c : @25} -> - {A : @26} -> - {f : @27} -> - {fn : @558} -> - {args : @111} -> - {env : @691} -> - {F : @644} -> - {o : @668} -> - (hB : @699) -> - (hfn : @715) -> (hwt : @723) -> (hbind : @735) -> (hF : @745) -> (hA : @751) -> @774 -@791 := LexLeanPreservation.Rust.compose @0 -@792 := @692 @0 -@797 := (n : @27) -> @792 @127 @121 @4 @113 -@798 := @708 @560 -@801 := @701 (@798 @113) @714 -@805 := @93 @693 @127 @115 @722 -@806 := @746 @0 -@809 := @806 @716 @127 @115 -@823 := {c : @25} -> - {A : @26} -> - {f : @27} -> - {fn : @558} -> - {args : @111} -> - {env : @691} -> - {F : @644} -> - {o : @668} -> - (hB : @797) -> - (hfn : @801) -> (hwt : @805) -> (hbind : @735) -> (hF : @745) -> (hA : @809) -> @774 -@824 := @791 @1 -@825 := @792 @1 -@829 := (n : @27) -> @825 @121 @4 @113 -@832 := @101 @127 @115 @722 -@833 := @738 @1 -@836 := @737 (@833 @693) @744 -@837 := @763 @1 -@847 := (hbind : @735) -> - (hF : @836) -> (hA : @809) -> (hne : @753) -> @756 (fun (ro : @755) => @762 (@837 @767 @739 @4)) -@857 := {A : @26} -> - {f : @27} -> - {fn : @558} -> - {args : @111} -> - {env : @691} -> {F : @644} -> {o : @668} -> (hB : @829) -> (hfn : @801) -> (hwt : @832) -> @847 -@858 := @824 @2 -@860 := @825 @2 @4 -@862 := (n : @27) -> @860 @113 -@863 := @107 @115 -@864 := @863 @722 -@873 := {f : @27} -> - {fn : @558} -> - {args : @111} -> - {env : @691} -> {F : @644} -> {o : @668} -> (hB : @862) -> (hfn : @801) -> (hwt : @864) -> @847 -@874 := @858 @9 -@876 := (n : @27) -> @860 @9 -@877 := @798 @9 -@878 := @701 @877 -@879 := @878 @714 -@880 := @833 @9 -@881 := @737 @880 -@882 := @881 @744 -@883 := @806 @9 -@885 := @883 @127 @115 -@887 := @837 (@766 @9) -@895 := (hF : @882) -> (hA : @885) -> (hne : @753) -> @756 (fun (ro : @755) => @762 (@887 @739 @4)) -@904 := {fn : @558} -> - {args : @111} -> - {env : @691} -> - {F : @644} -> {o : @668} -> (hB : @876) -> (hfn : @879) -> (hwt : @864) -> (hbind : @735) -> @895 -@905 := @874 @576 -@907 := @878 (@713 @576) -@908 := @721 @576 -@909 := @863 @908 -@911 := @726 (@727 @576) -@923 := {args : @111} -> - {env : @691} -> - {F : @644} -> - {o : @668} -> - (hB : @876) -> (hfn : @907) -> (hwt : @909) -> (hbind : @725 (@911 @113 @553) @734) -> @895 -@924 := @905 @544 -@925 := @586 @71 -@927 := @107 @925 @908 -@930 := @72 (@444 @121) @71 -@934 := @725 (@911 @930 @553) @734 -@937 := @72 (@444 @693) @71 -@958 := {env : @691} -> - {F : @644} -> - {o : @668} -> - (hB : @876) -> - (hfn : @907) -> - (hwt : @927) -> - (hbind : @934) -> - (hF : @882) -> - (hA : @883 @937 @115) -> - (hne : @753) -> @756 (fun (ro : @755) => @762 (@887 (@72 (@444 #12) @71) @4)) -@959 := @924 @556 -@960 := @600 @71 -@962 := @107 @960 @908 -@970 := @725 (@911 @925 @553) (@733 (@554 (@551 @585) @553)) -@973 := @72 (@444 @127) @71 -@992 := {F : @644} -> - {o : @668} -> - (hB : @876) -> - (hfn : @907) -> - (hwt : @962) -> - (hbind : @970) -> - (hF : @882) -> - (hA : @883 @973 @115) -> - (hne : @753) -> @756 (fun (ro : @755) => @762 (@887 (@72 (@444 @739) @71) @4)) -@993 := @959 @557 -@994 := @616 @908 -@1002 := @725 (@911 @960 @553) (@733 (@554 (@551 @599) @553)) -@1004 := @881 (@743 @557) -@1006 := @883 @930 @115 -@1007 := @758 @557 -@1026 := {o : @668} -> - (hB : @876) -> - (hfn : @907) -> - (hwt : @994) -> - (hbind : @1002) -> - (hF : @1004) -> - (hA : @1006) -> - (hne : @753) -> @756 (fun (ro : @755) => @757 (@1007 @127 @4) (@887 (@72 (@444 @716) @71) @4)) -@1027 := @993 @639 -@1028 := @624 @908 -@1036 := @725 (@911 @615 @553) (@733 (@554 (@551 @582) @553)) -@1037 := @883 @925 -@1038 := @638 @113 -@1039 := @1037 @1038 -@1040 := @638 @121 -@1058 := (hB : @876) -> - (hfn : @907) -> - (hwt : @1028) -> - (hbind : @1036) -> - (hF : @1004) -> - (hA : @1039) -> - (hne : @669 @1040 @674) -> @756 (fun (ro : @755) => @757 (@1007 (@638 @693) @4) (@887 @937 @4)) -@1059 := @1027 @580 -@1060 := @632 @908 -@1068 := @725 (@911 @623 @553) (@733 (@554 (@551 @596) @553)) -@1069 := @883 @960 -@1070 := @638 @115 -@1088 := (hfn : @907) -> - (hwt : @1060) -> - (hbind : @1068) -> - (hF : @1004) -> - (hA : @1069 @1070) -> - (hne : @669 @1038 @674) -> @756 (fun (ro : @755) => @757 (@1007 (@638 @127) @4) (@887 @973 @4)) -@1091 := @1059 (@428 @700 @877) -@1092 := @636 @908 -@1100 := @725 (@911 @631 @553) (@733 (@554 (@551 @611) @553)) -@1101 := @883 @615 -@1102 := @638 @117 -@1118 := (hwt : @1092) -> - (hbind : @1100) -> - (hF : @1004) -> - (hA : @1101 @1102) -> - (hne : @669 @1070 @674) -> @756 (fun (ro : @755) => @757 (@1007 @1040 @4) (@887 @930 @4)) -@1119 := @1091 @635 -@1121 := @911 @544 @553 -@1124 := @725 @1121 (@733 @556) -@1125 := @883 @623 -@1126 := @638 @28 -@1141 := (hbind : @1124) -> - (hF : @1004) -> - (hA : @1125 @1126) -> - (hne : @669 @1102 @674) -> @756 (fun (ro : @755) => @757 (@1007 @1038 @4) (@887 @925 @4)) -@1144 := @1119 (@428 @724 @1121) -@1145 := @883 @631 -@1146 := @638 @30 -@1160 := (hF : @1004) -> - (hA : @1145 @1146) -> - (hne : @669 @1126 @674) -> @756 (fun (ro : @755) => @757 (@1007 @1070 @4) (@887 @960 @4)) -@1163 := @1144 (@428 @736 @880) -@1177 := (hA : @883 @544 @639) -> - (hne : @669 @1146 @674) -> @756 (fun (ro : @755) => @757 (@1007 @1102 @4) (@887 @615 @4)) -@1178 := @1163 @666 -@1189 := (hne : @669 @639 @674) -> @756 (fun (ro : @755) => @757 (@1007 @1126 @4) (@887 @623 @4)) -@1190 := @1178 @686 -@1196 := @757 (@1007 @1146 @4) (@887 @631 @4) -@1198 := @756 (fun (ro : @755) => @1196) -@1200 := @756 (fun (__e_ro : @755) => @1196) -@1204 := LexLeanPreservation.Rust.RepresentableL (@72 @528 @71) -@1205 := (__e_hrep : @1204) -> @1200 -@1206 := fun (__e_hrep : @1204) => @1190 -@1207 := (costs : @441) -> @1205 -@1208 := fun (costs : @441) => @1206 -\end{coremodule} -\end{lexlean} diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R3/RustStd.lean b/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R3/RustStd.lean deleted file mode 100644 index 1b8904eee..000000000 --- a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R3/RustStd.lean +++ /dev/null @@ -1,124 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [{ constructors := [[.nat, .nat]] }], functions := [ - { parameters := [0], types := [(.list .nat)], result := (.result (.result (.list .nat) (.pair .bool .bool)) (.pair .bool .bool)), - body := (.«let» 1 (.list .nat) (.var 0) (.cond (.call 1 [(.var 1)]) (.«let» 2 (.result (.list .nat) (.pair .bool .bool)) (.call 2 [(.var 1)]) (.build .ok (.result (.result (.list .nat) (.pair .bool .bool)) (.pair .bool .bool)) [(.var 2)])) (.build .error (.result (.result (.list .nat) (.pair .bool .bool)) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])]))) }, - { parameters := [0], types := [(.list .nat)], result := .bool, - body := (.prim .natLt [(.prim .length [(.var 0)]), (.value .nat (.nat 1001))]) }, - { parameters := [0], types := [(.list .nat)], result := (.result (.list .nat) (.pair .bool .bool)), - body := (.call 3 [(.var 0)]) }, - { parameters := [0], types := [(.list .nat)], result := (.result (.list .nat) (.pair .bool .bool)), - body := (.«let» 1 (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) (.call 4 [(.closure 5 []), (.build .ok (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.build .pair (.pair (.adt 0) (.list .nat)) [(.call 6 []), (.build .nil (.list .nat) [])])]), (.var 0)]) (.«match» (.result (.list .nat) (.pair .bool .bool)) (.var 1) [(.arm .error [2] (.build .error (.result (.list .nat) (.pair .bool .bool)) [(.var 2)])), (.arm .ok [3] (.build .ok (.result (.list .nat) (.pair .bool .bool)) [(.second (.var 3))]))])) }, - { parameters := [0, 1, 2], types := [(.fn [(.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), .nat] (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool))), (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), (.list .nat)], result := (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), - body := (.«match» (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 4 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, - { parameters := [0, 1], types := [(.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), .nat], result := (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), - body := (.«match» (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) (.var 0) [(.arm .error [2] (.var 0)), (.arm .ok [3] (.cond (.call 7 [(.first (.var 3))]) (.cond (.call 8 [(.first (.var 3)), (.var 1)]) (.«let» 4 (.pair (.adt 0) .nat) (.call 9 [(.first (.var 3)), (.var 1)]) (.build .ok (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.build .pair (.pair (.adt 0) (.list .nat)) [(.first (.var 4)), (.prim .append [(.second (.var 3)), (.build .cons (.list .nat) [(.second (.var 4)), (.build .nil (.list .nat) [])])])])])) (.build .error (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])])) (.build .error (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])])])))]) }, - { parameters := [], types := [], result := (.adt 0), - body := (.call 10 []) }, - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.prim .natLe [(.field (.var 0) 0), (.value .nat (.nat 64))]) }, - { parameters := [0, 1], types := [(.adt 0), .nat], result := .bool, - body := (.prim .natLe [(.var 1), (.value .nat (.nat 16))]) }, - { parameters := [0, 1], types := [(.adt 0), .nat], result := (.pair (.adt 0) .nat), - body := (.call 11 [(.var 0), (.var 1)]) }, - { parameters := [], types := [], result := (.adt 0), - body := (.build (.adt 0) (.adt 0) [(.value .nat (.nat 0)), (.value .nat (.nat 0))]) }, - { parameters := [0, 1], types := [(.adt 0), .nat], result := (.pair (.adt 0) .nat), - body := (.«let» 2 .nat (.prim .natAdd [(.field (.var 0) 0), (.var 1)]) (.build .pair (.pair (.adt 0) .nat) [(.build (.adt 0) (.adt 0) [(.prim .natSub [(.var 2), (.prim .natSub [(.var 2), (.value .nat (.nat 64))])]), (.prim .natAdd [(.field (.var 0) 1), (.value .nat (.nat 1))])]), (.prim .natSub [(.var 2), (.value .nat (.nat 64))])])) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.enum (.adt 0) [{ number := 0, fields := [.nat, .nat] }]), - (.enum (.fn 0) [{ number := 5, fields := [] }]), - (.apply 0 [(.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), .nat] (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) true [{ function := 5, captures := [], functionFallible := true }]), - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }] (.fallible (.result (.result (.list .nat) (.pair .bool .bool)) (.pair .bool .bool))) (.mk [(.mk (.bind (.generated .binding 1)) (some (.list .nat)) (.move (.generated .binding 0)))] (.cond (.call (.function 1) [(.clone (.generated .binding 1))] false) (.mk [(.mk (.bind (.generated .binding 2)) (some (.result (.list .nat) (.pair .bool .bool))) (.call (.function 2) [(.move (.generated .binding 1))] true))] (.succeed (.construct (.ok (.result (.list .nat) (.pair .bool .bool)) (.pair .bool .bool)) [(.move (.generated .binding 2))]))) (.mk [] (.succeed (.construct (.err (.result (.list .nat) (.pair .bool .bool)) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))])))))), - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }] .bool (.mk [(.mk (.bind (.generated .operand 2)) none (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthList) [(.move (.generated .operand 1))] false)))), (.mk (.bind (.generated .operand 3)) none (.lit (.nat 1001)))] (.call (.runtime .natLt) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] false))), - (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }] (.fallible (.result (.list .nat) (.pair .bool .bool))) (.mk [] (.call (.function 3) [(.move (.generated .binding 0))] false))), - (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }] (.fallible (.result (.list .nat) (.pair .bool .bool))) (.mk [(.mk (.bind (.generated .binding 1)) (some (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool))) (.call (.function 4) [(.construct (.closure 0 5) []), (.construct (.ok (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.pair (.call (.function 6) [] false) (.construct (.nil .nat) []))]), (.move (.generated .binding 0))] true)), (.mk (.bind (.generated .holder 4)) none (.move (.generated .binding 1)))] (.matchOn (.move (.generated .holder 4)) [(.mk (.ok (.bind (.generated .binding 3))) (.mk [] (.succeed (.construct (.ok (.list .nat) (.pair .bool .bool)) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 5))]) none (.move (.generated .binding 3)))] (.move (.generated .part 5))))])))), (.mk (.err (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct (.err (.list .nat) (.pair .bool .bool)) [(.copy (.generated .binding 2))]))))]))), - (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) }, { pattern := (.bind (.generated .binding 2)), type := (.list .nat) }] (.fallible (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool))) (.mk [(.mk (.bind (.generated .holder 6)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 6)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 4) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 7)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 7) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]))), - (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool))) (.mk [(.mk (.bind (.generated .holder 8)) none (.clone (.generated .binding 0)))] (.matchOn (.move (.generated .holder 8)) [(.mk (.ok (.bind (.generated .binding 3))) (.mk [] (.cond (.call (.function 7) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 9)), .wild]) none (.clone (.generated .binding 3)))] (.move (.generated .part 9))))] false) (.mk [] (.cond (.call (.function 8) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 10)), .wild]) none (.clone (.generated .binding 3)))] (.move (.generated .part 10)))), (.copy (.generated .binding 1))] false) (.mk [(.mk (.bind (.generated .binding 4)) (some (.pair (.adt 0) .nat)) (.call (.function 9) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 11)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 11)))), (.copy (.generated .binding 1))] true))] (.succeed (.construct (.ok (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 12)), .wild]) none (.move (.generated .binding 4)))] (.move (.generated .part 12)))) (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 13))]) none (.move (.generated .binding 3)))] (.move (.generated .part 13))))), (.mk (.bind (.generated .operand 16)) none (.construct .cons [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 14))]) none (.move (.generated .binding 4)))] (.move (.generated .part 14)))), (.construct (.nil .nat) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] false))))]))) (.mk [] (.succeed (.construct (.err (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))))) (.mk [] (.succeed (.construct (.err (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))])))))), (.mk (.err .wild) (.mk [] (.succeed (.move (.generated .binding 0)))))]))), - (.function (.generated .function 6) [] (.adt 0) (.mk [] (.call (.function 10) [] false))), - (.function (.generated .function 7) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .operand 18)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [(.bind (.generated .part 17)), .wild]) (.mk [] (.move (.generated .part 17))))])), (.mk (.bind (.generated .operand 19)) none (.lit (.nat 64)))] (.call (.runtime .natLe) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false))), - (.function (.generated .function 8) [{ pattern := .wild, type := (.adt 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .operand 20)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 21)) none (.lit (.nat 16)))] (.call (.runtime .natLe) [(.move (.generated .operand 20)), (.move (.generated .operand 21))] false))), - (.function (.generated .function 9) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.pair (.adt 0) .nat)) (.mk [] (.call (.function 11) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false))), - (.function (.generated .function 10) [] (.adt 0) (.mk [] (.construct (.adt 0 0) [(.lit (.nat 0)), (.lit (.nat 0))]))), - (.function (.generated .function 11) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.pair (.adt 0) .nat)) (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [(.bind (.generated .part 22)), .wild]) (.mk [] (.move (.generated .part 22))))])), (.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] true))))] (.succeed (.pair (.construct (.adt 0 0) [(.block (.mk [(.mk (.bind (.generated .operand 27)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 26)) none (.lit (.nat 64)))] (.call (.runtime .natSub) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))))] (.call (.runtime .natSub) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))), (.block (.mk [(.mk (.bind (.generated .operand 30)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 29))]) (.mk [] (.move (.generated .part 29))))])), (.mk (.bind (.generated .operand 31)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] true)))]) (.block (.mk [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 33)) none (.lit (.nat 64)))] (.call (.runtime .natSub) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] false)))))))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [(([(.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), .nat], (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool))), true)] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some (.list .nat)) (.move (.generated .binding 0)))], (.cond (.call (.function 1) [(.clone (.generated .binding 1))] false) (.mk [(.mk (.bind (.generated .binding 2)) (some (.result (.list .nat) (.pair .bool .bool))) (.call (.function 2) [(.move (.generated .binding 1))] true))] (.succeed (.construct (.ok (.result (.list .nat) (.pair .bool .bool)) (.pair .bool .bool)) [(.move (.generated .binding 2))]))) (.mk [] (.succeed (.construct (.err (.result (.list .nat) (.pair .bool .bool)) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))])))), [(0, (.list .nat), (some 0))], rfl, rfl, - (Corr.letBind (Corr.var rfl rfl) rfl (Corr.cond (lc := []) (ce := (.call (.function 1) [(.clone (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [(.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .binding 2)) (some (.result (.list .nat) (.pair .bool .bool))) (.call (.function 2) [(.move (.generated .binding 1))] true))]) (ta := (.succeed (.construct (.ok (.result (.list .nat) (.pair .bool .bool)) (.pair .bool .bool)) [(.move (.generated .binding 2))]))) (lb := []) (tb := (.succeed (.construct (.err (.result (.list .nat) (.pair .bool .bool)) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))) (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.fOfB (Corr.build (ts := [(.result (.list .nat) (.pair .bool .bool))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl))) (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)))))⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 2)) none (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthList) [(.move (.generated .operand 1))] false)))), (.mk (.bind (.generated .operand 3)) none (.lit (.nat 1001)))], (.call (.runtime .natLt) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] false), [(0, (.list .nat), (some 0))], rfl, rfl, - (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.move (.generated .binding 0)))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 1))] false)) (Corr.prim (ts := [(.list .nat)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 3) [(.move (.generated .binding 0))] false), [(0, (.list .nat), (some 0))], rfl, rfl, - (Corr.callF (ts := [(.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)⟩⟩ - -theorem fun3 : FunOK program krate flags 3 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool))) (.call (.function 4) [(.construct (.closure 0 5) []), (.construct (.ok (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.pair (.call (.function 6) [] false) (.construct (.nil .nat) []))]), (.move (.generated .binding 0))] true)), (.mk (.bind (.generated .holder 4)) none (.move (.generated .binding 1)))], (.matchOn (.move (.generated .holder 4)) [(.mk (.ok (.bind (.generated .binding 3))) (.mk [] (.succeed (.construct (.ok (.list .nat) (.pair .bool .bool)) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 5))]) none (.move (.generated .binding 3)))] (.move (.generated .part 5))))])))), (.mk (.err (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct (.err (.list .nat) (.pair .bool .bool)) [(.copy (.generated .binding 2))]))))]), [(0, (.list .nat), (some 0))], rfl, rfl, - (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), .nat] (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool))), (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.pair (.adt 0) (.list .nat))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := []) (Corr.opsNil) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) (Corr.lNil))) rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl (Corr.matchArms (st := (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool))) (U := []) (view := false) (idx := [1, 0]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(3, (.pair (.adt 0) (.list .nat)), (some 3)), (1, (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.construct (.ok (.list .nat) (.pair .bool .bool)) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 5))]) none (.move (.generated .binding 3)))] (.move (.generated .part 5))))]))) (Corr.mCons (Γ' := [(2, (.pair .bool .bool), (some 2)), (1, (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct (.err (.list .nat) (.pair .bool .bool)) [(.copy (.generated .binding 2))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.list .nat)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 5))]) none (.move (.generated .binding 3)))]) (tail := (.move (.generated .part 5))) (Corr.second (ta := (.adt 0)) (tb := (.list .nat)) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl))) rfl rfl rfl))⟩⟩ - -theorem fun4 : FunOK program krate flags 4 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 6)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 6)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 4) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 7)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 7) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]), [(2, (.list .nat), (some 2)), (1, (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), (some 1)), (0, (.fn [(.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), .nat] (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool))), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .nat), (some 2)), (1, (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), (some 1)), (0, (.fn [(.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), .nat] (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list .nat), (some 4)), (3, .nat, (some 3)), (2, (.list .nat), (some 2)), (1, (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), (some 1)), (0, (.fn [(.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), .nat] (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 4) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 7)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 7) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), .nat] (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool))), (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 7)) (some (.fn 0)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 7) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true)) (Corr.apply (ps := [(.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), .nat]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ - -theorem fun5 : FunOK program krate flags 5 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 8)) none (.clone (.generated .binding 0)))], (.matchOn (.move (.generated .holder 8)) [(.mk (.ok (.bind (.generated .binding 3))) (.mk [] (.cond (.call (.function 7) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 9)), .wild]) none (.clone (.generated .binding 3)))] (.move (.generated .part 9))))] false) (.mk [] (.cond (.call (.function 8) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 10)), .wild]) none (.clone (.generated .binding 3)))] (.move (.generated .part 10)))), (.copy (.generated .binding 1))] false) (.mk [(.mk (.bind (.generated .binding 4)) (some (.pair (.adt 0) .nat)) (.call (.function 9) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 11)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 11)))), (.copy (.generated .binding 1))] true))] (.succeed (.construct (.ok (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 12)), .wild]) none (.move (.generated .binding 4)))] (.move (.generated .part 12)))) (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 13))]) none (.move (.generated .binding 3)))] (.move (.generated .part 13))))), (.mk (.bind (.generated .operand 16)) none (.construct .cons [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 14))]) none (.move (.generated .binding 4)))] (.move (.generated .part 14)))), (.construct (.nil .nat) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] false))))]))) (.mk [] (.succeed (.construct (.err (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))))) (.mk [] (.succeed (.construct (.err (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))])))))), (.mk (.err .wild) (.mk [] (.succeed (.move (.generated .binding 0)))))]), [(1, .nat, (some 1)), (0, (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool))) (U := []) (view := false) (idx := [1, 0]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(3, (.pair (.adt 0) (.list .nat)), (some 3)), (1, .nat, (some 1)), (0, (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 7) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 9)), .wild]) none (.clone (.generated .binding 3)))] (.move (.generated .part 9))))] false) (.mk [] (.cond (.call (.function 8) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 10)), .wild]) none (.clone (.generated .binding 3)))] (.move (.generated .part 10)))), (.copy (.generated .binding 1))] false) (.mk [(.mk (.bind (.generated .binding 4)) (some (.pair (.adt 0) .nat)) (.call (.function 9) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 11)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 11)))), (.copy (.generated .binding 1))] true))] (.succeed (.construct (.ok (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 12)), .wild]) none (.move (.generated .binding 4)))] (.move (.generated .part 12)))) (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 13))]) none (.move (.generated .binding 3)))] (.move (.generated .part 13))))), (.mk (.bind (.generated .operand 16)) none (.construct .cons [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 14))]) none (.move (.generated .binding 4)))] (.move (.generated .part 14)))), (.construct (.nil .nat) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] false))))]))) (.mk [] (.succeed (.construct (.err (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))))) (.mk [] (.succeed (.construct (.err (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))]))))) (Corr.mCons (Γ' := [(2, (.pair .bool .bool), none), (1, .nat, (some 1)), (0, (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 0)))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 7) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 9)), .wild]) none (.clone (.generated .binding 3)))] (.move (.generated .part 9))))] false)) (lk := []) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 9)), .wild]) none (.clone (.generated .binding 3)))]) (tail := (.move (.generated .part 9))) (Corr.first (ta := (.adt 0)) (tb := (.list .nat)) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 8) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 10)), .wild]) none (.clone (.generated .binding 3)))] (.move (.generated .part 10)))), (.copy (.generated .binding 1))] false) (.mk [(.mk (.bind (.generated .binding 4)) (some (.pair (.adt 0) .nat)) (.call (.function 9) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 11)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 11)))), (.copy (.generated .binding 1))] true))] (.succeed (.construct (.ok (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 12)), .wild]) none (.move (.generated .binding 4)))] (.move (.generated .part 12)))) (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 13))]) none (.move (.generated .binding 3)))] (.move (.generated .part 13))))), (.mk (.bind (.generated .operand 16)) none (.construct .cons [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 14))]) none (.move (.generated .binding 4)))] (.move (.generated .part 14)))), (.construct (.nil .nat) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] false))))]))) (.mk [] (.succeed (.construct (.err (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))))) (lb := []) (tb := (.succeed (.construct (.err (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))]))) (Corr.cond (lc := []) (ce := (.call (.function 8) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 10)), .wild]) none (.clone (.generated .binding 3)))] (.move (.generated .part 10)))), (.copy (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [(.adt 0), .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 10)), .wild]) none (.clone (.generated .binding 3)))]) (tail := (.move (.generated .part 10))) (Corr.first (ta := (.adt 0)) (tb := (.list .nat)) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .binding 4)) (some (.pair (.adt 0) .nat)) (.call (.function 9) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 11)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 11)))), (.copy (.generated .binding 1))] true))]) (ta := (.succeed (.construct (.ok (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 12)), .wild]) none (.move (.generated .binding 4)))] (.move (.generated .part 12)))) (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 13))]) none (.move (.generated .binding 3)))] (.move (.generated .part 13))))), (.mk (.bind (.generated .operand 16)) none (.construct .cons [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 14))]) none (.move (.generated .binding 4)))] (.move (.generated .part 14)))), (.construct (.nil .nat) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] false))))]))) (lb := []) (tb := (.succeed (.construct (.err (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))) (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0), .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 11)), .wild]) none (.move (.generated .binding 3)))]) (tail := (.move (.generated .part 11))) (Corr.first (ta := (.adt 0)) (tb := (.list .nat)) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl (Corr.fOfB (Corr.build (ts := [(.pair (.adt 0) (.list .nat))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 12)), .wild]) none (.move (.generated .binding 4)))]) (tail := (.move (.generated .part 12))) (Corr.first (ta := (.adt 0)) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 15)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 13))]) none (.move (.generated .binding 3)))] (.move (.generated .part 13))))), (.mk (.bind (.generated .operand 16)) none (.construct .cons [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 14))]) none (.move (.generated .binding 4)))] (.move (.generated .part 14)))), (.construct (.nil .nat) [])]))]) (tail := (.call (.runtime .appendList) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] false)) (Corr.prim (ts := [(.list .nat), (.list .nat)]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 13))]) none (.move (.generated .binding 3)))]) (tail := (.move (.generated .part 13))) (Corr.second (ta := (.adt 0)) (tb := (.list .nat)) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 14))]) none (.move (.generated .binding 4)))]) (tail := (.move (.generated .part 14))) (Corr.second (ta := (.adt 0)) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lNil))) rfl))) (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)))) (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl))))) rfl rfl rfl)⟩⟩ - -theorem fun6 : FunOK program krate flags 6 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 10) [] false), [], rfl, rfl, - (Corr.callOps (ts := []) (Corr.opsNil) rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun7 : FunOK program krate flags 7 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 18)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [(.bind (.generated .part 17)), .wild]) (.mk [] (.move (.generated .part 17))))])), (.mk (.bind (.generated .operand 19)) none (.lit (.nat 64)))], (.call (.runtime .natLe) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat]) (rd := (.move (.generated .part 17))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun8 : FunOK program krate flags 8 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 20)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 21)) none (.lit (.nat 16)))], (.call (.runtime .natLe) [(.move (.generated .operand 20)), (.move (.generated .operand 21))] false), [(1, .nat, (some 1)), (0, (.adt 0), none)], rfl, rfl, - (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun9 : FunOK program krate flags 9 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 11) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false), [(1, .nat, (some 1)), (0, (.adt 0), (some 0))], rfl, rfl, - (Corr.callF (ts := [(.adt 0), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)⟩⟩ - -theorem fun10 : FunOK program krate flags 10 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 0 0) [(.lit (.nat 0)), (.lit (.nat 0))]), [], rfl, rfl, - (Corr.build (ts := [.nat, .nat]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl)⟩⟩ - -theorem fun11 : FunOK program krate flags 11 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [(.bind (.generated .part 22)), .wild]) (.mk [] (.move (.generated .part 22))))])), (.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] true))))], (.succeed (.pair (.construct (.adt 0 0) [(.block (.mk [(.mk (.bind (.generated .operand 27)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 26)) none (.lit (.nat 64)))] (.call (.runtime .natSub) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))))] (.call (.runtime .natSub) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))), (.block (.mk [(.mk (.bind (.generated .operand 30)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 29))]) (.mk [] (.move (.generated .part 29))))])), (.mk (.bind (.generated .operand 31)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] true)))]) (.block (.mk [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 33)) none (.lit (.nat 64)))] (.call (.runtime .natSub) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] false))))), [(1, .nat, (some 1)), (0, (.adt 0), (some 0))], rfl, rfl, - (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 23)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [(.bind (.generated .part 22)), .wild]) (.mk [] (.move (.generated .part 22))))])), (.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat]) (rd := (.move (.generated .part 22))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, .nat]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 27)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 26)) none (.lit (.nat 64)))] (.call (.runtime .natSub) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 25)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 26)) none (.lit (.nat 64)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 30)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 29))]) (.mk [] (.move (.generated .part 29))))])), (.mk (.bind (.generated .operand 31)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat]) (rd := (.move (.generated .part 29))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 33)) none (.lit (.nat 64)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))))))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | 3 => exact fun3 - | 4 => exact fun4 - | 5 => exact fun5 - | 6 => exact fun6 - | 7 => exact fun7 - | 8 => exact fun8 - | 9 => exact fun9 - | 10 => exact fun10 - | 11 => exact fun11 - | _ + 12 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.RustStd diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R4.lean b/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R4.lean deleted file mode 100644 index 0216c28bf..000000000 --- a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R4.lean +++ /dev/null @@ -1,78 +0,0 @@ -import LexLeanPreservation.Core -import LexLeanPreservation.Values -import LexLeanPreservation.Primitives -import LexLeanPreservation.Fixed -import LexLeanPreservation.Keys -import LexLeanPreservation.Templates -import LexLeanPreservation.Validate -import Models.Flows -import Models.Glyphs -import Models.Ledger -import Models.Main -import Models.Pipeline -import Models.Policy -import Models.Recognizer -import Models.Session -import Models.Triage -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -set_option linter.unusedVariables false -namespace LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4 - -def __prog : _root_.LexLeanTarget.TargetSyntax.Program := - { adts := [{ constructors := [[.nat, .nat]] }], functions := [ - { parameters := [0, 1], types := [(.adt 0), .nat], result := (.result (.pair (.adt 0) .nat) (.pair .bool .bool)), - body := (.«let» 2 (.adt 0) (.var 0) (.«let» 3 .nat (.var 1) (.cond (.call 1 [(.var 2)]) (.cond (.call 2 [(.var 2), (.var 3)]) (.«let» 4 (.pair (.adt 0) .nat) (.call 3 [(.var 2), (.var 3)]) (.build .ok (.result (.pair (.adt 0) .nat) (.pair .bool .bool)) [(.var 4)])) (.build .error (.result (.pair (.adt 0) .nat) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])])) (.build .error (.result (.pair (.adt 0) .nat) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])])])))) }, - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.prim .natLe [(.field (.var 0) 0), (.value .nat (.nat 64))]) }, - { parameters := [0, 1], types := [(.adt 0), .nat], result := .bool, - body := (.prim .natLe [(.var 1), (.value .nat (.nat 16))]) }, - { parameters := [0, 1], types := [(.adt 0), .nat], result := (.pair (.adt 0) .nat), - body := (.call 4 [(.var 0), (.var 1)]) }, - { parameters := [0, 1], types := [(.adt 0), .nat], result := (.pair (.adt 0) .nat), - body := (.«let» 2 .nat (.prim .natAdd [(.field (.var 0) 0), (.var 1)]) (.build .pair (.pair (.adt 0) .nat) [(.build (.adt 0) (.adt 0) [(.prim .natSub [(.var 2), (.prim .natSub [(.var 2), (.value .nat (.nat 64))])]), (.prim .natAdd [(.field (.var 0) 1), (.value .nat (.nat 1))])]), (.prim .natSub [(.var 2), (.value .nat (.nat 64))])])) }] } - -def __enc_0 (__s : (Models.Session.Window)) : _root_.LexLeanTarget.TargetSyntax.Value := - _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).used), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).items)] - -def __fits_1 (window : (Models.Session.Window)) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_1 (window : (Models.Session.Window)) : _root_.LexLeanPreservation.FunRel __prog 1 [(__enc_0 window)] (_root_.LexLeanPreservation.Rel (__fits_1 window) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Models.Session.boundedCheck window))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe (window).used (64 : Nat))) - -def __fits_2 (window : (Models.Session.Window)) (cost : Nat) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_2 (window : (Models.Session.Window)) (cost : Nat) : _root_.LexLeanPreservation.FunRel __prog 2 [(__enc_0 window), (_root_.LexLeanTarget.TargetSyntax.Value.nat cost)] (_root_.LexLeanPreservation.Rel (__fits_2 window cost) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Models.Session.affordableCheck window cost))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe cost (16 : Nat))) - -def __fits_4 (window : (Models.Session.Window)) (cost : Nat) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((window).used + cost) 18446744073709551616)) && (let total : Nat := ((window).used + cost); ((((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((window).items + (1 : Nat)) 18446744073709551616)) && Bool.true)) && Bool.true) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true))) - -theorem __rel_4 (window : (Models.Session.Window)) (cost : Nat) : _root_.LexLeanPreservation.FunRel __prog 4 [(__enc_0 window), (_root_.LexLeanTarget.TargetSyntax.Value.nat cost)] (_root_.LexLeanPreservation.Rel (__fits_4 window cost) ((_root_.LexLeanPreservation.encPair __enc_0 _root_.LexLeanTarget.TargetSyntax.Value.nat) (Models.Session.SessionStep window cost))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (let total : Nat := ((window).used + cost); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (window).used cost)) (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub total (64 : Nat))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub total (_root_.LexLeanRuntime.subtract (total) ((64 : Nat)) : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (window).items (1 : Nat))) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_adt) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub total (64 : Nat))) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair)) - -def __fits_3 (_ystate : (Models.Session.Window)) (_yinput : Nat) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && (__fits_4 (_ystate) (_yinput))) - -attribute [local irreducible] Models.Session.SessionStep in -theorem __rel_3 (_ystate : (Models.Session.Window)) (_yinput : Nat) : _root_.LexLeanPreservation.FunRel __prog 3 [(__enc_0 _ystate), (_root_.LexLeanTarget.TargetSyntax.Value.nat _yinput)] (_root_.LexLeanPreservation.Rel (__fits_3 _ystate _yinput) ((_root_.LexLeanPreservation.encPair __enc_0 _root_.LexLeanTarget.TargetSyntax.Value.nat) (Models.Session.SessionModel _ystate _yinput))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_4 (_ystate) (_yinput))) - -def __fits_0 (window : (Models.Session.Window)) (cost : Nat) : Bool := - (Bool.true && (let _ychecked1_state : (Models.Session.Window) := window; (Bool.true && (let _ychecked1_input : Nat := cost; (((Bool.true && Bool.true) && (__fits_1 (_ychecked1_state))) && (if (Models.Session.boundedCheck (_ychecked1_state)) then (((Bool.true && (Bool.true && Bool.true)) && (__fits_2 (_ychecked1_state) (_ychecked1_input))) && (if (Models.Session.affordableCheck (_ychecked1_state) (_ychecked1_input)) then (((Bool.true && (Bool.true && Bool.true)) && (__fits_3 (_ychecked1_state) (_ychecked1_input))) && (let _ychecked1_step : (Prod (Models.Session.Window) Nat) := (Models.Session.SessionModel (_ychecked1_state) (_ychecked1_input)); ((Bool.true && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))))) - -attribute [local irreducible] Models.Session.SessionModel Models.Session.affordableCheck Models.Session.boundedCheck in -theorem __rel_0 (window : (Models.Session.Window)) (cost : Nat) : _root_.LexLeanPreservation.FunRel __prog 0 [(__enc_0 window), (_root_.LexLeanTarget.TargetSyntax.Value.nat cost)] (_root_.LexLeanPreservation.Rel (__fits_0 window cost) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair __enc_0 _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Models.Main.step window cost))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (let _ychecked1_state : (Models.Session.Window) := window; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_var rfl) (let _ychecked1_input : Nat := cost; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (Bool.true && Bool.true)) && (__fits_2 (_ychecked1_state) (_ychecked1_input))) && (if (Models.Session.affordableCheck (_ychecked1_state) (_ychecked1_input)) then (((Bool.true && (Bool.true && Bool.true)) && (__fits_3 (_ychecked1_state) (_ychecked1_input))) && (let _ychecked1_step : (Prod (Models.Session.Window) Nat) := (Models.Session.SessionModel (_ychecked1_state) (_ychecked1_input)); ((Bool.true && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair __enc_0 _root_.LexLeanTarget.TargetSyntax.Value.nat)) (if __b then (if (Models.Session.affordableCheck (_ychecked1_state) (_ychecked1_input)) then (let _ychecked1_step : (Prod (Models.Session.Window) Nat) := (Models.Session.SessionModel (_ychecked1_state) (_ychecked1_input)); (Except.ok (_ychecked1_step) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) Nat)))) else (Except.error (((Bool.false, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) Nat)))) else (Except.error (((Bool.false, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) Nat))))) (Models.Session.boundedCheck (_ychecked1_state)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_1 (_ychecked1_state))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (Bool.true && Bool.true)) && (__fits_3 (_ychecked1_state) (_ychecked1_input))) && (let _ychecked1_step : (Prod (Models.Session.Window) Nat) := (Models.Session.SessionModel (_ychecked1_state) (_ychecked1_input)); ((Bool.true && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair __enc_0 _root_.LexLeanTarget.TargetSyntax.Value.nat)) (if __b then (let _ychecked1_step : (Prod (Models.Session.Window) Nat) := (Models.Session.SessionModel (_ychecked1_state) (_ychecked1_input)); (Except.ok (_ychecked1_step) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) Nat)))) else (Except.error (((Bool.false, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) Nat))))) (Models.Session.affordableCheck (_ychecked1_state) (_ychecked1_input)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_2 (_ychecked1_state) (_ychecked1_input))) (fun _ => (let _ychecked1_step : (Prod (Models.Session.Window) Nat) := (Models.Session.SessionModel (_ychecked1_state) (_ychecked1_input)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_3 (_ychecked1_state) (_ychecked1_input))) (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error))))) - -def denote (window : (Models.Session.Window)) (cost : Nat) : _root_.LexLeanPreservation.Obs := - _root_.cond (__fits_0 window cost) (_root_.LexLeanPreservation.Obs.value (((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair __enc_0 _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Models.Main.step window cost)))) _root_.LexLeanPreservation.Obs.overflow - -theorem root (window : (Models.Session.Window)) (cost : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [(__enc_0 window), (_root_.LexLeanTarget.TargetSyntax.Value.nat cost)] (_root_.LexLeanPreservation.Rel (__fits_0 window cost) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair __enc_0 _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Models.Main.step window cost))) := - _root_.LexLeanPreservation.run_of_funRel (__rel_0 window cost) - -end LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4 diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R4/Compose/RustStd.lex.tex b/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R4/Compose/RustStd.lex.tex deleted file mode 100644 index 22cb41927..000000000 --- a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R4/Compose/RustStd.lex.tex +++ /dev/null @@ -1,601 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4, - LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.Compose.RustStd.__wt_0 : @16 := @440 { - all: [LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.Compose.RustStd.__wt_0], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.Compose.RustStd.root : @1229 := @1230 { - all: [LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.RustStd.program -@1 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.RustStd.krate -@2 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.RustStd.flags -@3 := Models.Session.Window -@4 := #0 -@5 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.__enc_0 -@6 := @5 @4 -@7 := LexLeanPreservation.Rust.WT -@8 := LexLeanTarget.TargetSyntax.Ty.adt -@9 := 0 -@10 := @8 @9 -@11 := @7 @0 -@12 := @11 @1 -@13 := @12 @2 -@16 := (__s : @3) -> @13 @6 @10 -@17 := Models.Session.Window.used -@18 := @17 @4 -@19 := Models.Session.Window.items -@20 := @19 @4 -@21 := LexLeanTarget.TargetSyntax.Value.nat -@22 := @21 @18 -@23 := LexLeanTarget.TargetSyntax.Ty.nat -@24 := LexLeanTarget.TargetSyntax.Program -@25 := LexLeanPreservation.Rust.RCrate -@26 := LexLeanPreservation.Rust.Flags -@27 := Nat -@28 := #3 -@29 := @7 @28 -@30 := #2 -@31 := @29 @30 -@32 := #1 -@33 := @31 @32 -@34 := @21 @4 -@40 := {p : @24} -> {c : @25} -> {A : @26} -> (n : @27) -> @33 @34 @23 -@42 := LexLeanPreservation.Rust.wt_nat @0 -@49 := {c : @25} -> {A : @26} -> (n : @27) -> @11 @30 @32 @34 @23 -@50 := @42 @1 -@55 := {A : @26} -> (n : @27) -> @12 @32 @34 @23 -@56 := @50 @2 -@59 := (n : @27) -> @13 @34 @23 -@60 := @56 @18 -@62 := @13 @22 @23 -@63 := @21 @20 -@64 := @56 @20 -@66 := @13 @63 @23 -@67 := LexLeanTarget.TargetSyntax.Value -@68 := LexLeanTarget.TargetSyntax.Ty -@69 := List.nil.{0} -@70 := List.cons.{0} -@71 := @69 @67 -@72 := @70 @67 -@74 := @72 @63 @71 -@76 := @72 @22 @74 -@77 := @69 @68 -@78 := @70 @68 -@79 := @78 @23 -@80 := @79 @77 -@81 := @79 @80 -@82 := LexLeanPreservation.Rust.WTL -@90 := {p : @24} -> {c : @25} -> {A : @26} -> @82 @30 @32 @4 @71 @77 -@92 := LexLeanPreservation.Rust.wtl_nil @0 -@93 := @82 @0 -@99 := {c : @25} -> {A : @26} -> @93 @32 @4 @71 @77 -@100 := @92 @1 -@101 := @93 @1 -@105 := {A : @26} -> @101 @4 @71 @77 -@106 := @100 @2 -@107 := @101 @2 -@108 := @107 @71 -@109 := @108 @77 -@110 := List.{0} -@111 := @110 @67 -@112 := @110 @68 -@113 := #6 -@114 := @7 @113 -@115 := #5 -@116 := @114 @115 -@117 := #4 -@120 := @116 @117 @28 @30 -@121 := #7 -@126 := @82 @121 @113 @115 @30 @32 -@127 := #8 -@130 := @82 @127 @121 @113 -@132 := @72 @115 @28 -@133 := @130 @132 -@135 := @78 @117 @30 -@145 := {p : @24} -> - {c : @25} -> - {A : @26} -> - {v : @67} -> {t : @68} -> {vs : @111} -> {ts : @112} -> (h : @120) -> (hs : @126) -> @133 @135 -@147 := LexLeanPreservation.Rust.wtl_cons @0 -@151 := @11 @115 @117 @28 @30 -@155 := @93 @113 @115 @30 @32 -@167 := {c : @25} -> - {A : @26} -> - {v : @67} -> - {t : @68} -> {vs : @111} -> {ts : @112} -> (h : @151) -> (hs : @155) -> @93 @121 @113 @132 @135 -@168 := @147 @1 -@171 := @12 @117 @28 @30 -@174 := @101 @115 @30 @32 -@184 := {A : @26} -> - {v : @67} -> - {t : @68} -> {vs : @111} -> {ts : @112} -> (h : @171) -> (hs : @174) -> @101 @113 @132 @135 -@185 := @168 @2 -@187 := @13 @28 @30 -@189 := @107 @30 @32 -@197 := {v : @67} -> - {t : @68} -> {vs : @111} -> {ts : @112} -> (h : @187) -> (hs : @189) -> @107 @132 @135 -@198 := @185 @63 -@200 := @21 (@19 @28) -@213 := {t : @68} -> - {vs : @111} -> - {ts : @112} -> (h : @13 @200 @30) -> (hs : @189) -> @107 (@72 (@21 (@19 @115)) @28) @135 -@214 := @198 @23 -@216 := @21 (@19 @30) -@218 := @13 @216 @23 -@223 := @107 (@72 (@21 (@19 @117)) @28) -@224 := @79 @30 -@229 := {vs : @111} -> {ts : @112} -> (h : @218) -> (hs : @189) -> @223 @224 -@230 := @214 @71 -@232 := @21 (@19 @32) -@234 := @13 @232 @23 -@235 := @108 @32 -@237 := @72 @200 @71 -@242 := {ts : @112} -> (h : @234) -> (hs : @235) -> @107 @237 @224 -@243 := @230 @77 -@245 := @72 @216 @71 -@246 := @107 @245 -@249 := (h : @66) -> (hs : @109) -> @246 @80 -@250 := @243 @64 -@252 := @72 @232 @71 -@254 := @107 @252 @80 -@255 := (hs : @109) -> @254 -@256 := @250 @106 -@258 := @107 @74 @80 -@259 := @185 @22 -@261 := @21 (@17 @28) -@274 := {t : @68} -> - {vs : @111} -> - {ts : @112} -> (h : @13 @261 @30) -> (hs : @189) -> @107 (@72 (@21 (@17 @115)) @28) @135 -@275 := @259 @23 -@277 := @21 (@17 @30) -@289 := {vs : @111} -> - {ts : @112} -> (h : @13 @277 @23) -> (hs : @189) -> @107 (@72 (@21 (@17 @117)) @28) @224 -@290 := @275 @74 -@292 := @21 (@17 @32) -@294 := @13 @292 @23 -@295 := @246 @32 -@297 := @72 @261 @237 -@302 := {ts : @112} -> (h : @294) -> (hs : @295) -> @107 @297 @224 -@303 := @290 @80 -@305 := @72 @277 @245 -@306 := @107 @305 -@309 := (h : @62) -> (hs : @254) -> @306 @81 -@310 := @303 @60 -@312 := @72 @292 @252 -@314 := @107 @312 @81 -@315 := (hs : @258) -> @314 -@316 := @310 @256 -@318 := @107 @76 @81 -@319 := Eq.{1} -@320 := Option.{0} -@321 := @320 @112 -@322 := @319 @321 -@323 := LexLeanPreservation.Rust.adtFields -@327 := @322 (@323 @113 @28 @30) -@328 := Option.some.{0} -@329 := @328 @112 -@330 := @329 @4 -@331 := @327 @330 -@334 := @7 @127 @121 @113 -@335 := LexLeanTarget.TargetSyntax.Value.adt -@337 := @335 @117 @28 -@338 := @334 @337 -@339 := @8 @115 -@349 := {p : @24} -> - {c : @25} -> - {A : @26} -> - {i : @27} -> {k : @27} -> {fs : @111} -> {tys : @112} -> (h : @331) -> (hf : @126) -> @338 @339 -@351 := LexLeanPreservation.Rust.wt_adt @0 -@352 := @323 @0 -@356 := @322 (@352 @28 @30) @330 -@368 := {c : @25} -> - {A : @26} -> - {i : @27} -> - {k : @27} -> {fs : @111} -> {tys : @112} -> (h : @356) -> (hf : @155) -> @11 @121 @113 @337 @339 -@369 := @351 @1 -@379 := {A : @26} -> - {i : @27} -> - {k : @27} -> {fs : @111} -> {tys : @112} -> (h : @356) -> (hf : @174) -> @12 @113 @337 @339 -@380 := @369 @2 -@381 := @13 @337 -@388 := {i : @27} -> - {k : @27} -> {fs : @111} -> {tys : @112} -> (h : @356) -> (hf : @189) -> @381 @339 -@389 := @380 @9 -@390 := @352 @9 -@399 := {k : @27} -> - {fs : @111} -> {tys : @112} -> (h : @322 (@390 @30) @330) -> (hf : @189) -> @381 @10 -@400 := @389 @9 -@401 := @390 @9 -@402 := @322 @401 -@403 := @402 @330 -@404 := @335 @9 -@411 := {fs : @111} -> {tys : @112} -> (h : @403) -> (hf : @189) -> @13 (@404 @28) @10 -@412 := @400 @76 -@419 := {tys : @112} -> (h : @403) -> (hf : @306 @32) -> @13 (@404 @297) @10 -@420 := @412 @81 -@427 := (h : @402 (@329 @81)) -> (hf : @314) -> @13 (@404 @305) @10 -@428 := Eq.refl.{1} -@431 := @420 (@428 @321 @401) -@435 := (hf : @318) -> @13 (@404 @312) @10 -@436 := @431 @316 -@439 := @13 (@404 @76) @10 -@440 := fun (__s : @3) => @436 -@441 := @5 @30 -@443 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.Compose.RustStd.__wt_0 @30 -@444 := @21 @32 -@445 := @56 @32 -@447 := @13 @444 @23 -@449 := @72 @444 @71 -@451 := @72 @441 @449 -@452 := Prod.{0, 0} -@454 := @452 @27 @67 -@455 := 1 -@458 := Prod.mk.{0, 0} @27 @67 -@459 := @458 @455 -@460 := @459 @444 -@461 := @458 @9 -@462 := @461 @441 -@463 := @69 @454 -@464 := @70 @454 -@466 := @464 @462 @463 -@468 := @464 @460 @466 -@469 := Bool.true -@470 := LexLeanTarget.TargetSyntax.Function -@471 := LexLeanTarget.TargetSyntax.Program.functions -@472 := @471 @0 -@473 := @69 @27 -@474 := LexLeanTarget.TargetSyntax.Ty.unit -@475 := LexLeanTarget.TargetSyntax.Value.unit -@478 := LexLeanTarget.TargetSyntax.Expr.value @474 @475 -@483 := LexLeanTarget.TargetSyntax.Function.mk @473 @77 @474 @478 -@488 := List.getD.{0} @470 @472 @9 @483 -@492 := fun (__e_n : @27) => LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.RustStd.root @4 @9 -@493 := @185 @444 -@494 := @21 @117 -@496 := @13 @494 @30 -@497 := @21 @113 -@498 := @72 @497 -@506 := {t : @68} -> {vs : @111} -> {ts : @112} -> (h : @496) -> (hs : @189) -> @107 (@498 @28) @135 -@507 := @493 @23 -@508 := @21 @28 -@510 := @13 @508 @23 -@511 := @21 @115 -@512 := @72 @511 -@519 := {vs : @111} -> {ts : @112} -> (h : @510) -> (hs : @189) -> @107 (@512 @28) @224 -@520 := @507 @71 -@521 := @21 @30 -@523 := @13 @521 @23 -@525 := @72 @494 @71 -@530 := {ts : @112} -> (h : @523) -> (hs : @235) -> @107 @525 @224 -@531 := @520 @77 -@533 := @72 @508 @71 -@534 := @107 @533 -@537 := (h : @447) -> (hs : @109) -> @534 @80 -@538 := @531 @445 -@540 := @72 @521 @71 -@542 := @107 @540 @80 -@543 := (hs : @109) -> @542 -@544 := @538 @106 -@546 := @107 @449 @80 -@547 := @185 @441 -@548 := @5 @115 -@550 := @13 @548 @30 -@551 := @5 @121 -@552 := @72 @551 -@560 := {t : @68} -> {vs : @111} -> {ts : @112} -> (h : @550) -> (hs : @189) -> @107 (@552 @28) @135 -@561 := @547 @10 -@562 := @5 @117 -@564 := @13 @562 @10 -@565 := @5 @113 -@566 := @72 @565 -@568 := @107 (@566 @28) -@569 := @78 @10 -@570 := @569 @30 -@575 := {vs : @111} -> {ts : @112} -> (h : @564) -> (hs : @189) -> @568 @570 -@576 := @561 @449 -@577 := @5 @28 -@579 := @13 @577 @10 -@580 := @534 @32 -@582 := @72 @548 @525 -@583 := @107 @582 -@587 := {ts : @112} -> (h : @579) -> (hs : @580) -> @583 @570 -@588 := @576 @80 -@590 := @13 @441 @10 -@592 := @72 @562 @533 -@593 := @107 @592 -@594 := @569 @80 -@597 := (h : @590) -> (hs : @542) -> @593 @594 -@598 := @588 @443 -@600 := @72 @577 @540 -@601 := @107 @600 -@603 := (hs : @546) -> @601 @594 -@604 := @598 @544 -@605 := @107 @451 -@606 := @605 @594 -@607 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.denote -@609 := @607 @30 @32 -@610 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.__fits_0 -@612 := @610 @30 @32 -@615 := Models.Main.step @30 @32 -@616 := Bool -@618 := @452 @616 @616 -@620 := @452 @3 @27 -@621 := LexLeanTarget.TargetSyntax.Value.bool -@622 := LexLeanPreservation.encPair -@626 := @622 @616 @616 @621 @621 -@630 := @622 @3 @27 @5 @21 -@636 := LexLeanPreservation.encExcept @618 @620 @626 @630 @615 -@639 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.root @30 @32 -@640 := Ne.{1} -@641 := LexLeanPreservation.Obs -@642 := @640 @641 -@643 := LexLeanPreservation.Rel -@646 := @642 (@643 @32 @4) -@647 := LexLeanPreservation.Obs.stuck -@650 := (f : @616) -> (v : @67) -> @646 @647 -@652 := LexLeanPreservation.Rust.rel_ne_stuck @612 -@659 := (v : @67) -> @642 (@643 (@610 @28 @30) @4) @647 -@660 := @652 @636 -@664 := @642 (@643 @612 @636) @647 -@665 := @110 @454 -@666 := LexLeanPreservation.Rust.FunSem -@667 := #9 -@673 := (n : @27) -> @666 @667 @127 @121 @4 @113 -@674 := @320 @470 -@675 := @319 @674 -@682 := LexLeanRuntime.index (@110 @470) @470 (LexLeanRuntime.instIndexableList @470) -@686 := @675 (@682 (@471 @667) @113) -@687 := @328 @470 -@688 := @687 @115 -@689 := @686 @688 -@690 := #10 -@694 := @82 @690 @667 @127 @115 -@695 := LexLeanTarget.TargetSyntax.Function.types -@696 := @695 @113 -@697 := @694 @696 -@698 := @320 @665 -@699 := @319 @698 -@700 := LexLeanTarget.TargetSemantics.bindAll -@701 := LexLeanTarget.TargetSyntax.Function.parameters -@706 := @699 (@700 (@701 @121) @113 @463) -@707 := @328 @665 -@708 := @707 @115 -@709 := @706 @708 -@710 := @320 @616 -@711 := @319 @710 -@712 := LexLeanPreservation.Rust.fnFallible -@713 := #11 -@716 := @711 (@712 @713 @667) -@717 := @328 @616 -@718 := @717 @115 -@719 := @716 @718 -@720 := LexLeanPreservation.RunConv -@721 := #13 -@725 := @720 @721 @690 @127 @115 -@727 := @642 @113 @647 -@728 := Exists.{1} -@729 := LexLeanPreservation.Rust.ROut -@730 := @728 @729 -@731 := And -@732 := LexLeanPreservation.Rust.RealizesFn -@736 := @731 (@732 @667 @127 @4) -@737 := LexLeanPreservation.Rust.RCI -@739 := @737 #15 -@740 := LexLeanPreservation.Rust.fnIdent -@741 := @740 @721 -@748 := (hne : @727) -> @730 (fun (ro : @729) => @736 (@739 @741 @713 @4)) -@763 := {p : @24} -> - {c : @25} -> - {A : @26} -> - {f : @27} -> - {fn : @470} -> - {args : @111} -> - {env : @665} -> - {F : @616} -> - {o : @641} -> - (hB : @673) -> - (hfn : @689) -> (hwt : @697) -> (hbind : @709) -> (hF : @719) -> (hA : @725) -> @748 -@765 := LexLeanPreservation.Rust.compose @0 -@766 := @666 @0 -@771 := (n : @27) -> @766 @127 @121 @4 @113 -@772 := @682 @472 -@775 := @675 (@772 @113) @688 -@779 := @93 @667 @127 @115 @696 -@780 := @720 @0 -@783 := @780 @690 @127 @115 -@797 := {c : @25} -> - {A : @26} -> - {f : @27} -> - {fn : @470} -> - {args : @111} -> - {env : @665} -> - {F : @616} -> - {o : @641} -> - (hB : @771) -> - (hfn : @775) -> (hwt : @779) -> (hbind : @709) -> (hF : @719) -> (hA : @783) -> @748 -@798 := @765 @1 -@799 := @766 @1 -@803 := (n : @27) -> @799 @121 @4 @113 -@806 := @101 @127 @115 @696 -@807 := @712 @1 -@810 := @711 (@807 @667) @718 -@811 := @737 @1 -@821 := (hbind : @709) -> - (hF : @810) -> (hA : @783) -> (hne : @727) -> @730 (fun (ro : @729) => @736 (@811 @741 @713 @4)) -@831 := {A : @26} -> - {f : @27} -> - {fn : @470} -> - {args : @111} -> - {env : @665} -> {F : @616} -> {o : @641} -> (hB : @803) -> (hfn : @775) -> (hwt : @806) -> @821 -@832 := @798 @2 -@834 := @799 @2 @4 -@836 := (n : @27) -> @834 @113 -@837 := @107 @115 -@838 := @837 @696 -@847 := {f : @27} -> - {fn : @470} -> - {args : @111} -> - {env : @665} -> {F : @616} -> {o : @641} -> (hB : @836) -> (hfn : @775) -> (hwt : @838) -> @821 -@848 := @832 @9 -@850 := (n : @27) -> @834 @9 -@851 := @772 @9 -@852 := @675 @851 -@853 := @852 @688 -@854 := @807 @9 -@855 := @711 @854 -@856 := @855 @718 -@857 := @780 @9 -@859 := @857 @127 @115 -@861 := @811 (@740 @9) -@869 := (hF : @856) -> (hA : @859) -> (hne : @727) -> @730 (fun (ro : @729) => @736 (@861 @713 @4)) -@878 := {fn : @470} -> - {args : @111} -> - {env : @665} -> - {F : @616} -> {o : @641} -> (hB : @850) -> (hfn : @853) -> (hwt : @838) -> (hbind : @709) -> @869 -@879 := @848 @488 -@881 := @852 (@687 @488) -@882 := @695 @488 -@883 := @837 @882 -@885 := @700 (@701 @488) -@897 := {args : @111} -> - {env : @665} -> - {F : @616} -> - {o : @641} -> - (hB : @850) -> (hfn : @881) -> (hwt : @883) -> (hbind : @699 (@885 @113 @463) @708) -> @869 -@898 := @879 @451 -@900 := @552 (@498 @71) -@902 := @107 @900 @882 -@908 := @72 (@5 @127) (@72 (@21 @121) @71) -@912 := @699 (@885 @908 @463) @708 -@918 := @72 (@5 @690) (@72 (@21 @667) @71) -@920 := @857 @918 @115 -@922 := @72 (@5 @721) -@923 := #12 -@942 := {env : @665} -> - {F : @616} -> - {o : @641} -> - (hB : @850) -> - (hfn : @881) -> - (hwt : @902) -> - (hbind : @912) -> - (hF : @856) -> - (hA : @920) -> - (hne : @727) -> @730 (fun (ro : @729) => @736 (@861 (@922 (@72 (@21 @923) @71)) @4)) -@943 := @898 @468 -@945 := @566 (@512 @71) -@947 := @107 @945 @882 -@958 := @699 (@885 @900 @463) (@707 (@464 (@459 @497) (@464 (@461 @551) @463))) -@964 := @72 (@5 @667) (@72 (@21 @127) @71) -@986 := {F : @616} -> - {o : @641} -> - (hB : @850) -> - (hfn : @881) -> - (hwt : @947) -> - (hbind : @958) -> - (hF : @856) -> - (hA : @857 @964 @115) -> - (hne : @727) -> @730 (fun (ro : @729) => @736 (@861 (@72 (@5 @923) (@72 (@21 @713) @71)) @4)) -@987 := @943 @469 -@988 := @583 @882 -@999 := @699 (@885 @945 @463) (@707 (@464 (@459 @511) (@464 (@461 @565) @463))) -@1001 := @855 (@717 @469) -@1003 := @857 @908 @115 -@1004 := @732 @469 -@1026 := {o : @641} -> - (hB : @850) -> - (hfn : @881) -> - (hwt : @988) -> - (hbind : @999) -> - (hF : @1001) -> - (hA : @1003) -> - (hne : @727) -> - @730 (fun (ro : @729) => @731 (@1004 @127 @4) (@861 (@72 (@5 @713) (@72 (@21 @690) @71)) @4)) -@1027 := @987 @609 -@1028 := @593 @882 -@1039 := @699 (@885 @582 @463) (@707 (@464 (@459 @494) (@464 (@461 @548) @463))) -@1040 := @857 @900 -@1042 := @607 @121 @113 -@1043 := @1040 @1042 -@1045 := @607 @127 @121 -@1064 := (hB : @850) -> - (hfn : @881) -> - (hwt : @1028) -> - (hbind : @1039) -> - (hF : @1001) -> - (hA : @1043) -> - (hne : @642 @1045 @647) -> - @730 (fun (ro : @729) => @731 (@1004 (@607 @690 @667) @4) (@861 @918 @4)) -@1065 := @1027 @492 -@1066 := @601 @882 -@1077 := @699 (@885 @592 @463) (@707 (@464 (@459 @508) (@464 (@461 @562) @463))) -@1078 := @857 @945 -@1080 := @607 @113 @115 -@1099 := (hfn : @881) -> - (hwt : @1066) -> - (hbind : @1077) -> - (hF : @1001) -> - (hA : @1078 @1080) -> - (hne : @642 @1042 @647) -> - @730 (fun (ro : @729) => @731 (@1004 (@607 @667 @127) @4) (@861 @964 @4)) -@1102 := @1065 (@428 @674 @851) -@1103 := @605 @882 -@1114 := @699 (@885 @600 @463) (@707 (@464 (@459 @521) (@464 (@461 @577) @463))) -@1115 := @857 @582 -@1117 := @607 @115 @117 -@1133 := (hwt : @1103) -> - (hbind : @1114) -> - (hF : @1001) -> - (hA : @1115 @1117) -> - (hne : @642 @1080 @647) -> @730 (fun (ro : @729) => @731 (@1004 @1045 @4) (@861 @908 @4)) -@1134 := @1102 @604 -@1136 := @885 @451 @463 -@1139 := @699 @1136 (@707 @468) -@1140 := @857 @592 -@1142 := @607 @117 @28 -@1157 := (hbind : @1139) -> - (hF : @1001) -> - (hA : @1140 @1142) -> - (hne : @642 @1117 @647) -> @730 (fun (ro : @729) => @731 (@1004 @1042 @4) (@861 @900 @4)) -@1160 := @1134 (@428 @698 @1136) -@1161 := @857 @600 -@1163 := @607 @28 @30 -@1177 := (hF : @1001) -> - (hA : @1161 @1163) -> - (hne : @642 @1142 @647) -> @730 (fun (ro : @729) => @731 (@1004 @1080 @4) (@861 @945 @4)) -@1180 := @1160 (@428 @710 @854) -@1194 := (hA : @857 @451 @609) -> - (hne : @642 @1163 @647) -> @730 (fun (ro : @729) => @731 (@1004 @1117 @4) (@861 @582 @4)) -@1195 := @1180 @639 -@1206 := (hne : @642 @609 @647) -> @730 (fun (ro : @729) => @731 (@1004 @1142 @4) (@861 @592 @4)) -@1207 := @1195 @660 -@1213 := @731 (@1004 @1163 @4) (@861 @600 @4) -@1215 := @730 (fun (ro : @729) => @1213) -@1217 := @730 (fun (__e_ro : @729) => @1213) -@1218 := LexLeanPreservation.Rust.RepresentableL -@1219 := @5 @32 -@1221 := @72 @34 @71 -@1224 := @1218 (@72 @1219 @1221) -@1225 := (__e_hrep : @1224) -> @1217 -@1226 := fun (__e_hrep : @1224) => @1207 -@1227 := (cost : @27) -> @1225 -@1228 := fun (cost : @27) => @1226 -@1229 := (window : @3) -> @1227 -@1230 := fun (window : @3) => @1228 -\end{coremodule} -\end{lexlean} diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R4/RustStd.lean b/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R4/RustStd.lean deleted file mode 100644 index 9aebb3066..000000000 --- a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R4/RustStd.lean +++ /dev/null @@ -1,66 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [{ constructors := [[.nat, .nat]] }], functions := [ - { parameters := [0, 1], types := [(.adt 0), .nat], result := (.result (.pair (.adt 0) .nat) (.pair .bool .bool)), - body := (.«let» 2 (.adt 0) (.var 0) (.«let» 3 .nat (.var 1) (.cond (.call 1 [(.var 2)]) (.cond (.call 2 [(.var 2), (.var 3)]) (.«let» 4 (.pair (.adt 0) .nat) (.call 3 [(.var 2), (.var 3)]) (.build .ok (.result (.pair (.adt 0) .nat) (.pair .bool .bool)) [(.var 4)])) (.build .error (.result (.pair (.adt 0) .nat) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])])) (.build .error (.result (.pair (.adt 0) .nat) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])])])))) }, - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.prim .natLe [(.field (.var 0) 0), (.value .nat (.nat 64))]) }, - { parameters := [0, 1], types := [(.adt 0), .nat], result := .bool, - body := (.prim .natLe [(.var 1), (.value .nat (.nat 16))]) }, - { parameters := [0, 1], types := [(.adt 0), .nat], result := (.pair (.adt 0) .nat), - body := (.call 4 [(.var 0), (.var 1)]) }, - { parameters := [0, 1], types := [(.adt 0), .nat], result := (.pair (.adt 0) .nat), - body := (.«let» 2 .nat (.prim .natAdd [(.field (.var 0) 0), (.var 1)]) (.build .pair (.pair (.adt 0) .nat) [(.build (.adt 0) (.adt 0) [(.prim .natSub [(.var 2), (.prim .natSub [(.var 2), (.value .nat (.nat 64))])]), (.prim .natAdd [(.field (.var 0) 1), (.value .nat (.nat 1))])]), (.prim .natSub [(.var 2), (.value .nat (.nat 64))])])) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.enum (.adt 0) [{ number := 0, fields := [.nat, .nat] }]), - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.result (.pair (.adt 0) .nat) (.pair .bool .bool))) (.mk [(.mk (.bind (.generated .binding 2)) (some (.adt 0)) (.move (.generated .binding 0))), (.mk (.bind (.generated .binding 3)) (some .nat) (.copy (.generated .binding 1)))] (.cond (.call (.function 1) [(.clone (.generated .binding 2))] false) (.mk [] (.cond (.call (.function 2) [(.clone (.generated .binding 2)), (.copy (.generated .binding 3))] false) (.mk [(.mk (.bind (.generated .binding 4)) (some (.pair (.adt 0) .nat)) (.call (.function 3) [(.move (.generated .binding 2)), (.copy (.generated .binding 3))] true))] (.succeed (.construct (.ok (.pair (.adt 0) .nat) (.pair .bool .bool)) [(.move (.generated .binding 4))]))) (.mk [] (.succeed (.construct (.err (.pair (.adt 0) .nat) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))))) (.mk [] (.succeed (.construct (.err (.pair (.adt 0) .nat) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))])))))), - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .operand 2)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [(.bind (.generated .part 1)), .wild]) (.mk [] (.move (.generated .part 1))))])), (.mk (.bind (.generated .operand 3)) none (.lit (.nat 64)))] (.call (.runtime .natLe) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] false))), - (.function (.generated .function 2) [{ pattern := .wild, type := (.adt 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 5)) none (.lit (.nat 16)))] (.call (.runtime .natLe) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false))), - (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.pair (.adt 0) .nat)) (.mk [] (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false))), - (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.pair (.adt 0) .nat)) (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [(.bind (.generated .part 6)), .wild]) (.mk [] (.move (.generated .part 6))))])), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] true))))] (.succeed (.pair (.construct (.adt 0 0) [(.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 12)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 10)) none (.lit (.nat 64)))] (.call (.runtime .natSub) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false))))] (.call (.runtime .natSub) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))), (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 13))]) (.mk [] (.move (.generated .part 13))))])), (.mk (.bind (.generated .operand 15)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] true)))]) (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 17)) none (.lit (.nat 64)))] (.call (.runtime .natSub) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false)))))))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some (.adt 0)) (.move (.generated .binding 0))), (.mk (.bind (.generated .binding 3)) (some .nat) (.copy (.generated .binding 1)))], (.cond (.call (.function 1) [(.clone (.generated .binding 2))] false) (.mk [] (.cond (.call (.function 2) [(.clone (.generated .binding 2)), (.copy (.generated .binding 3))] false) (.mk [(.mk (.bind (.generated .binding 4)) (some (.pair (.adt 0) .nat)) (.call (.function 3) [(.move (.generated .binding 2)), (.copy (.generated .binding 3))] true))] (.succeed (.construct (.ok (.pair (.adt 0) .nat) (.pair .bool .bool)) [(.move (.generated .binding 4))]))) (.mk [] (.succeed (.construct (.err (.pair (.adt 0) .nat) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))))) (.mk [] (.succeed (.construct (.err (.pair (.adt 0) .nat) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))])))), [(1, .nat, (some 1)), (0, (.adt 0), (some 0))], rfl, rfl, - (Corr.letBind (Corr.var rfl rfl) rfl (Corr.letBind (Corr.var rfl rfl) rfl (Corr.cond (lc := []) (ce := (.call (.function 1) [(.clone (.generated .binding 2))] false)) (lk := []) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 2) [(.clone (.generated .binding 2)), (.copy (.generated .binding 3))] false) (.mk [(.mk (.bind (.generated .binding 4)) (some (.pair (.adt 0) .nat)) (.call (.function 3) [(.move (.generated .binding 2)), (.copy (.generated .binding 3))] true))] (.succeed (.construct (.ok (.pair (.adt 0) .nat) (.pair .bool .bool)) [(.move (.generated .binding 4))]))) (.mk [] (.succeed (.construct (.err (.pair (.adt 0) .nat) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))))) (lb := []) (tb := (.succeed (.construct (.err (.pair (.adt 0) .nat) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))]))) (Corr.cond (lc := []) (ce := (.call (.function 2) [(.clone (.generated .binding 2)), (.copy (.generated .binding 3))] false)) (lk := []) (Corr.callOps (ts := [(.adt 0), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .binding 4)) (some (.pair (.adt 0) .nat)) (.call (.function 3) [(.move (.generated .binding 2)), (.copy (.generated .binding 3))] true))]) (ta := (.succeed (.construct (.ok (.pair (.adt 0) .nat) (.pair .bool .bool)) [(.move (.generated .binding 4))]))) (lb := []) (tb := (.succeed (.construct (.err (.pair (.adt 0) .nat) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))) (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl (Corr.fOfB (Corr.build (ts := [(.pair (.adt 0) .nat)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl))) (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)))) (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl))))))⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 2)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [(.bind (.generated .part 1)), .wild]) (.mk [] (.move (.generated .part 1))))])), (.mk (.bind (.generated .operand 3)) none (.lit (.nat 64)))], (.call (.runtime .natLe) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] false), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat]) (rd := (.move (.generated .part 1))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 5)) none (.lit (.nat 16)))], (.call (.runtime .natLe) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false), [(1, .nat, (some 1)), (0, (.adt 0), none)], rfl, rfl, - (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun3 : FunOK program krate flags 3 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false), [(1, .nat, (some 1)), (0, (.adt 0), (some 0))], rfl, rfl, - (Corr.callF (ts := [(.adt 0), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)⟩⟩ - -theorem fun4 : FunOK program krate flags 4 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [(.bind (.generated .part 6)), .wild]) (.mk [] (.move (.generated .part 6))))])), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] true))))], (.succeed (.pair (.construct (.adt 0 0) [(.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 12)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 10)) none (.lit (.nat 64)))] (.call (.runtime .natSub) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false))))] (.call (.runtime .natSub) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))), (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 13))]) (.mk [] (.move (.generated .part 13))))])), (.mk (.bind (.generated .operand 15)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] true)))]) (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 17)) none (.lit (.nat 64)))] (.call (.runtime .natSub) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false))))), [(1, .nat, (some 1)), (0, (.adt 0), (some 0))], rfl, rfl, - (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 7)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [(.bind (.generated .part 6)), .wild]) (.mk [] (.move (.generated .part 6))))])), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat]) (rd := (.move (.generated .part 6))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, .nat]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 12)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 10)) none (.lit (.nat 64)))] (.call (.runtime .natSub) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false))))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 10)) none (.lit (.nat 64)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 14)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 13))]) (.mk [] (.move (.generated .part 13))))])), (.mk (.bind (.generated .operand 15)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat]) (rd := (.move (.generated .part 13))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 17)) none (.lit (.nat 64)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))))))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | 3 => exact fun3 - | 4 => exact fun4 - | _ + 5 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.RustStd diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R5.lean b/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R5.lean deleted file mode 100644 index 7cf37ba95..000000000 --- a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R5.lean +++ /dev/null @@ -1,75 +0,0 @@ -import LexLeanPreservation.Core -import LexLeanPreservation.Values -import LexLeanPreservation.Primitives -import LexLeanPreservation.Fixed -import LexLeanPreservation.Keys -import LexLeanPreservation.Templates -import LexLeanPreservation.Validate -import Models.Flows -import Models.Glyphs -import Models.Ledger -import Models.Main -import Models.Pipeline -import Models.Policy -import Models.Recognizer -import Models.Session -import Models.Triage -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -set_option linter.unusedVariables false -namespace LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5 - -def __prog : _root_.LexLeanTarget.TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1], types := [.nat, .nat], result := (.result (.pair .nat .nat) (.pair .bool .bool)), - body := (.«let» 2 .nat (.var 0) (.«let» 3 .nat (.var 1) (.cond (.call 1 [(.var 2)]) (.cond (.call 2 [(.var 2), (.var 3)]) (.«let» 4 (.pair .nat .nat) (.call 3 [(.var 2), (.var 3)]) (.cond (.call 1 [(.first (.var 4))]) (.build .ok (.result (.pair .nat .nat) (.pair .bool .bool)) [(.var 4)]) (.build .error (.result (.pair .nat .nat) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .true .bool [])])]))) (.build .error (.result (.pair .nat .nat) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])])) (.build .error (.result (.pair .nat .nat) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])])])))) }, - { parameters := [0], types := [.nat], result := .bool, - body := (.prim .natLe [(.var 0), (.value .nat (.nat 100))]) }, - { parameters := [0, 1], types := [.nat, .nat], result := .bool, - body := (.prim .natLe [(.var 1), (.value .nat (.nat 10))]) }, - { parameters := [0, 1], types := [.nat, .nat], result := (.pair .nat .nat), - body := (.call 4 [(.var 0), (.var 1)]) }, - { parameters := [0, 1], types := [.nat, .nat], result := (.pair .nat .nat), - body := (.build .pair (.pair .nat .nat) [(.prim .natAdd [(.var 0), (.var 1)]), (.var 1)]) }] } - -def __fits_1 (s : Nat) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_1 (s : Nat) : _root_.LexLeanPreservation.FunRel __prog 1 [(_root_.LexLeanTarget.TargetSyntax.Value.nat s)] (_root_.LexLeanPreservation.Rel (__fits_1 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Models.Ledger.cappedCheck s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe s (100 : Nat))) - -def __fits_2 (s : Nat) (x : Nat) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_2 (s : Nat) (x : Nat) : _root_.LexLeanPreservation.FunRel __prog 2 [(_root_.LexLeanTarget.TargetSyntax.Value.nat s), (_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_2 s x) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Models.Ledger.smallCheck s x))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe x (10 : Nat))) - -def __fits_4 (s : Nat) (x : Nat) : Bool := - ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (s + x) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_4 (s : Nat) (x : Nat) : _root_.LexLeanPreservation.FunRel __prog 4 [(_root_.LexLeanTarget.TargetSyntax.Value.nat s), (_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_4 s x) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) (Models.Ledger.Spill s x))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd s x)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) - -def __fits_3 (_ystate : Nat) (_yinput : Nat) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && (__fits_4 (_ystate) (_yinput))) - -attribute [local irreducible] Models.Ledger.Spill in -theorem __rel_3 (_ystate : Nat) (_yinput : Nat) : _root_.LexLeanPreservation.FunRel __prog 3 [(_root_.LexLeanTarget.TargetSyntax.Value.nat _ystate), (_root_.LexLeanTarget.TargetSyntax.Value.nat _yinput)] (_root_.LexLeanPreservation.Rel (__fits_3 _ystate _yinput) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) (Models.Ledger.SpillModel _ystate _yinput))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_4 (_ystate) (_yinput))) - -def __fits_0 (s : Nat) (x : Nat) : Bool := - (Bool.true && (let _ychecked1_state : Nat := s; (Bool.true && (let _ychecked1_input : Nat := x; (((Bool.true && Bool.true) && (__fits_1 (_ychecked1_state))) && (if (Models.Ledger.cappedCheck (_ychecked1_state)) then (((Bool.true && (Bool.true && Bool.true)) && (__fits_2 (_ychecked1_state) (_ychecked1_input))) && (if (Models.Ledger.smallCheck (_ychecked1_state) (_ychecked1_input)) then (((Bool.true && (Bool.true && Bool.true)) && (__fits_3 (_ychecked1_state) (_ychecked1_input))) && (let _ychecked1_step : (Prod Nat Nat) := (Models.Ledger.SpillModel (_ychecked1_state) (_ychecked1_input)); (((Bool.true && Bool.true) && (__fits_1 ((_ychecked1_step).1))) && (if (Models.Ledger.cappedCheck ((_ychecked1_step).1)) then ((Bool.true && Bool.true) && Bool.true) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))))) - -attribute [local irreducible] Models.Ledger.SpillModel Models.Ledger.cappedCheck Models.Ledger.smallCheck in -theorem __rel_0 (s : Nat) (x : Nat) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat s), (_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_0 s x) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Models.Main.ledgerPost s x))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (let _ychecked1_state : Nat := s; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_var rfl) (let _ychecked1_input : Nat := x; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (Bool.true && Bool.true)) && (__fits_2 (_ychecked1_state) (_ychecked1_input))) && (if (Models.Ledger.smallCheck (_ychecked1_state) (_ychecked1_input)) then (((Bool.true && (Bool.true && Bool.true)) && (__fits_3 (_ychecked1_state) (_ychecked1_input))) && (let _ychecked1_step : (Prod Nat Nat) := (Models.Ledger.SpillModel (_ychecked1_state) (_ychecked1_input)); (((Bool.true && Bool.true) && (__fits_1 ((_ychecked1_step).1))) && (if (Models.Ledger.cappedCheck ((_ychecked1_step).1)) then ((Bool.true && Bool.true) && Bool.true) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (if __b then (if (Models.Ledger.smallCheck (_ychecked1_state) (_ychecked1_input)) then (let _ychecked1_step : (Prod Nat Nat) := (Models.Ledger.SpillModel (_ychecked1_state) (_ychecked1_input)); (if (Models.Ledger.cappedCheck ((_ychecked1_step).1)) then (Except.ok (_ychecked1_step) : (Except (Prod Bool Bool) (Prod Nat Nat))) else (Except.error (((Bool.true, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod Nat Nat))))) else (Except.error (((Bool.false, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod Nat Nat)))) else (Except.error (((Bool.false, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod Nat Nat))))) (Models.Ledger.cappedCheck (_ychecked1_state)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_1 (_ychecked1_state))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (Bool.true && Bool.true)) && (__fits_3 (_ychecked1_state) (_ychecked1_input))) && (let _ychecked1_step : (Prod Nat Nat) := (Models.Ledger.SpillModel (_ychecked1_state) (_ychecked1_input)); (((Bool.true && Bool.true) && (__fits_1 ((_ychecked1_step).1))) && (if (Models.Ledger.cappedCheck ((_ychecked1_step).1)) then ((Bool.true && Bool.true) && Bool.true) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (if __b then (let _ychecked1_step : (Prod Nat Nat) := (Models.Ledger.SpillModel (_ychecked1_state) (_ychecked1_input)); (if (Models.Ledger.cappedCheck ((_ychecked1_step).1)) then (Except.ok (_ychecked1_step) : (Except (Prod Bool Bool) (Prod Nat Nat))) else (Except.error (((Bool.true, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod Nat Nat))))) else (Except.error (((Bool.false, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod Nat Nat))))) (Models.Ledger.smallCheck (_ychecked1_state) (_ychecked1_input)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_2 (_ychecked1_state) (_ychecked1_input))) (fun _ => (let _ychecked1_step : (Prod Nat Nat) := (Models.Ledger.SpillModel (_ychecked1_state) (_ychecked1_input)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_3 (_ychecked1_state) (_ychecked1_input))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && Bool.true) && Bool.true) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (if __b then (Except.ok (_ychecked1_step) : (Except (Prod Bool Bool) (Prod Nat Nat))) else (Except.error (((Bool.true, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod Nat Nat))))) (Models.Ledger.cappedCheck ((_ychecked1_step).1)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil) (__rel_1 ((_ychecked1_step).1))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error))))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error))))) - -def denote (s : Nat) (x : Nat) : _root_.LexLeanPreservation.Obs := - _root_.cond (__fits_0 s x) (_root_.LexLeanPreservation.Obs.value (((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Models.Main.ledgerPost s x)))) _root_.LexLeanPreservation.Obs.overflow - -theorem root (s : Nat) (x : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat s), (_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_0 s x) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Models.Main.ledgerPost s x))) := - _root_.LexLeanPreservation.run_of_funRel (__rel_0 s x) - -end LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5 diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R5/Compose/RustStd.lex.tex b/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R5/Compose/RustStd.lex.tex deleted file mode 100644 index 7184a08d4..000000000 --- a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R5/Compose/RustStd.lex.tex +++ /dev/null @@ -1,471 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5, - LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.Compose.RustStd.root : @932 := @933 { - all: [LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.RustStd.program -@1 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.RustStd.krate -@2 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.RustStd.flags -@3 := Nat -@4 := #2 -@5 := LexLeanTarget.TargetSyntax.Value.nat -@6 := @5 @4 -@7 := LexLeanTarget.TargetSyntax.Ty.nat -@8 := LexLeanTarget.TargetSyntax.Program -@9 := LexLeanPreservation.Rust.RCrate -@10 := LexLeanPreservation.Rust.Flags -@11 := LexLeanPreservation.Rust.WT -@12 := #3 -@14 := @11 @12 @4 -@15 := #1 -@16 := @14 @15 -@17 := #0 -@18 := @5 @17 -@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 -@26 := LexLeanPreservation.Rust.wt_nat @0 -@27 := @11 @0 -@34 := {c : @9} -> {A : @10} -> (n : @3) -> @27 @4 @15 @18 @7 -@35 := @26 @1 -@36 := @27 @1 -@41 := {A : @10} -> (n : @3) -> @36 @15 @18 @7 -@42 := @35 @2 -@43 := @36 @2 -@46 := (n : @3) -> @43 @18 @7 -@47 := @42 @4 -@49 := @43 @6 @7 -@50 := @5 @15 -@51 := @42 @15 -@53 := @43 @50 @7 -@54 := LexLeanTarget.TargetSyntax.Value -@55 := List.nil.{0} -@56 := List.cons.{0} -@57 := @55 @54 -@58 := @56 @54 -@59 := @58 @50 -@60 := @59 @57 -@61 := @58 @6 -@62 := @61 @60 -@63 := Prod.{0, 0} -@64 := @63 @3 -@65 := @64 @54 -@66 := 1 -@69 := Prod.mk.{0, 0} @3 @54 -@70 := @69 @66 -@71 := @70 @50 -@72 := 0 -@73 := @69 @72 -@74 := @73 @6 -@75 := @55 @65 -@76 := @56 @65 -@78 := @76 @74 @75 -@80 := @76 @71 @78 -@81 := Bool.true -@82 := LexLeanTarget.TargetSyntax.Function -@83 := LexLeanTarget.TargetSyntax.Program.functions -@84 := @83 @0 -@85 := LexLeanTarget.TargetSyntax.Ty -@86 := @55 @3 -@87 := @55 @85 -@88 := LexLeanTarget.TargetSyntax.Ty.unit -@89 := LexLeanTarget.TargetSyntax.Value.unit -@92 := LexLeanTarget.TargetSyntax.Expr.value @88 @89 -@97 := LexLeanTarget.TargetSyntax.Function.mk @86 @87 @88 @92 -@102 := List.getD.{0} @82 @84 @72 @97 -@106 := fun (__e_n : @3) => - LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.RustStd.root @17 @72 -@107 := LexLeanPreservation.Rust.WTL -@115 := {p : @8} -> {c : @9} -> {A : @10} -> @107 @4 @15 @17 @57 @87 -@117 := LexLeanPreservation.Rust.wtl_nil @0 -@118 := @107 @0 -@124 := {c : @9} -> {A : @10} -> @118 @15 @17 @57 @87 -@125 := @117 @1 -@126 := @118 @1 -@130 := {A : @10} -> @126 @17 @57 @87 -@131 := @125 @2 -@132 := @126 @2 -@133 := @132 @57 -@134 := @133 @87 -@135 := List.{0} -@136 := @135 @54 -@137 := @135 @85 -@138 := #6 -@139 := @11 @138 -@140 := #5 -@141 := @139 @140 -@142 := #4 -@145 := @141 @142 @12 @4 -@146 := #7 -@151 := @107 @146 @138 @140 @4 @15 -@152 := #8 -@155 := @107 @152 @146 @138 -@157 := @58 @140 @12 -@158 := @155 @157 -@159 := @56 @85 -@161 := @159 @142 @4 -@171 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {v : @54} -> {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @145) -> (hs : @151) -> @158 @161 -@173 := LexLeanPreservation.Rust.wtl_cons @0 -@193 := {c : @9} -> - {A : @10} -> - {v : @54} -> - {t : @85} -> - {vs : @136} -> - {ts : @137} -> - (h : @27 @140 @142 @12 @4) -> (hs : @118 @138 @140 @4 @15) -> @118 @146 @138 @157 @161 -@194 := @173 @1 -@210 := {A : @10} -> - {v : @54} -> - {t : @85} -> - {vs : @136} -> - {ts : @137} -> (h : @36 @142 @12 @4) -> (hs : @126 @140 @4 @15) -> @126 @138 @157 @161 -@211 := @194 @2 -@213 := @43 @12 @4 -@215 := @132 @4 @15 -@223 := {v : @54} -> - {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @213) -> (hs : @215) -> @132 @157 @161 -@224 := @211 @50 -@225 := @5 @142 -@226 := @43 @225 -@227 := @226 @4 -@228 := @5 @138 -@229 := @58 @228 -@231 := @132 (@229 @12) -@237 := {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @227) -> (hs : @215) -> @231 @161 -@238 := @224 @7 -@239 := @5 @12 -@241 := @43 @239 @7 -@242 := @5 @140 -@243 := @58 @242 -@245 := @132 (@243 @12) -@246 := @159 @7 -@247 := @246 @4 -@252 := {vs : @136} -> {ts : @137} -> (h : @241) -> (hs : @215) -> @245 @247 -@253 := @238 @57 -@254 := @133 @15 -@255 := @58 @225 -@256 := @255 @57 -@261 := {ts : @137} -> (h : @49) -> (hs : @254) -> @132 @256 @247 -@262 := @253 @87 -@263 := @58 @239 -@264 := @263 @57 -@265 := @132 @264 -@266 := @246 @87 -@269 := (h : @53) -> (hs : @134) -> @265 @266 -@270 := @262 @51 -@271 := @61 @57 -@273 := @132 @271 @266 -@274 := (hs : @134) -> @273 -@275 := @270 @131 -@277 := @132 @60 @266 -@278 := @211 @6 -@280 := @43 @242 @4 -@281 := @5 @146 -@282 := @58 @281 -@290 := {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @280) -> (hs : @215) -> @132 (@282 @12) @161 -@291 := @278 @7 -@297 := {vs : @136} -> {ts : @137} -> (h : @226 @7) -> (hs : @215) -> @231 @247 -@298 := @291 @60 -@299 := @265 @15 -@300 := @243 @256 -@301 := @132 @300 -@305 := {ts : @137} -> (h : @241) -> (hs : @299) -> @301 @247 -@306 := @298 @266 -@307 := @255 @264 -@308 := @132 @307 -@309 := @246 @266 -@312 := (h : @49) -> (hs : @273) -> @308 @309 -@313 := @306 @47 -@314 := @263 @271 -@315 := @132 @314 -@317 := (hs : @277) -> @315 @309 -@318 := @313 @275 -@319 := @132 @62 -@320 := @319 @309 -@321 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.denote -@323 := @321 @4 @15 -@324 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.__fits_0 -@326 := @324 @4 @15 -@329 := Models.Main.ledgerPost @4 @15 -@330 := Bool -@332 := @63 @330 @330 -@333 := @64 @3 -@334 := LexLeanTarget.TargetSyntax.Value.bool -@335 := LexLeanPreservation.encPair -@339 := @335 @330 @330 @334 @334 -@343 := @335 @3 @3 @5 @5 -@349 := LexLeanPreservation.encExcept @332 @333 @339 @343 @329 -@352 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.root @4 @15 -@353 := Ne.{1} -@354 := LexLeanPreservation.Obs -@355 := @353 @354 -@356 := LexLeanPreservation.Rel -@359 := @355 (@356 @15 @17) -@360 := LexLeanPreservation.Obs.stuck -@363 := (f : @330) -> (v : @54) -> @359 @360 -@365 := LexLeanPreservation.Rust.rel_ne_stuck @326 -@372 := (v : @54) -> @355 (@356 (@324 @12 @4) @17) @360 -@373 := @365 @349 -@377 := @355 (@356 @326 @349) @360 -@378 := @135 @65 -@379 := LexLeanPreservation.Rust.FunSem -@380 := #9 -@386 := (n : @3) -> @379 @380 @152 @146 @17 @138 -@387 := Eq.{1} -@388 := Option.{0} -@389 := @388 @82 -@390 := @387 @389 -@397 := LexLeanRuntime.index (@135 @82) @82 (LexLeanRuntime.instIndexableList @82) -@401 := @390 (@397 (@83 @380) @138) -@402 := Option.some.{0} -@403 := @402 @82 -@404 := @403 @140 -@405 := @401 @404 -@406 := #10 -@410 := @107 @406 @380 @152 @140 -@411 := LexLeanTarget.TargetSyntax.Function.types -@412 := @411 @138 -@413 := @410 @412 -@414 := @388 @378 -@415 := @387 @414 -@416 := LexLeanTarget.TargetSemantics.bindAll -@417 := LexLeanTarget.TargetSyntax.Function.parameters -@422 := @415 (@416 (@417 @146) @138 @75) -@423 := @402 @378 -@424 := @423 @140 -@425 := @422 @424 -@426 := @388 @330 -@427 := @387 @426 -@428 := LexLeanPreservation.Rust.fnFallible -@429 := #11 -@432 := @427 (@428 @429 @380) -@433 := @402 @330 -@434 := @433 @140 -@435 := @432 @434 -@436 := LexLeanPreservation.RunConv -@437 := #13 -@441 := @436 @437 @406 @152 @140 -@443 := @355 @138 @360 -@444 := Exists.{1} -@445 := LexLeanPreservation.Rust.ROut -@446 := @444 @445 -@447 := And -@448 := LexLeanPreservation.Rust.RealizesFn -@452 := @447 (@448 @380 @152 @17) -@453 := LexLeanPreservation.Rust.RCI -@455 := @453 #15 -@456 := LexLeanPreservation.Rust.fnIdent -@457 := @456 @437 -@464 := (hne : @443) -> @446 (fun (ro : @445) => @452 (@455 @457 @429 @17)) -@479 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {f : @3} -> - {fn : @82} -> - {args : @136} -> - {env : @378} -> - {F : @330} -> - {o : @354} -> - (hB : @386) -> - (hfn : @405) -> (hwt : @413) -> (hbind : @425) -> (hF : @435) -> (hA : @441) -> @464 -@481 := LexLeanPreservation.Rust.compose @0 -@482 := @379 @0 -@487 := (n : @3) -> @482 @152 @146 @17 @138 -@488 := @397 @84 -@491 := @390 (@488 @138) @404 -@495 := @118 @380 @152 @140 @412 -@496 := @436 @0 -@499 := @496 @406 @152 @140 -@513 := {c : @9} -> - {A : @10} -> - {f : @3} -> - {fn : @82} -> - {args : @136} -> - {env : @378} -> - {F : @330} -> - {o : @354} -> - (hB : @487) -> - (hfn : @491) -> (hwt : @495) -> (hbind : @425) -> (hF : @435) -> (hA : @499) -> @464 -@514 := @481 @1 -@515 := @482 @1 -@519 := (n : @3) -> @515 @146 @17 @138 -@522 := @126 @152 @140 @412 -@523 := @428 @1 -@526 := @427 (@523 @380) @434 -@527 := @453 @1 -@537 := (hbind : @425) -> - (hF : @526) -> (hA : @499) -> (hne : @443) -> @446 (fun (ro : @445) => @452 (@527 @457 @429 @17)) -@547 := {A : @10} -> - {f : @3} -> - {fn : @82} -> - {args : @136} -> - {env : @378} -> {F : @330} -> {o : @354} -> (hB : @519) -> (hfn : @491) -> (hwt : @522) -> @537 -@548 := @514 @2 -@550 := @515 @2 @17 -@552 := (n : @3) -> @550 @138 -@553 := @132 @140 -@554 := @553 @412 -@563 := {f : @3} -> - {fn : @82} -> - {args : @136} -> - {env : @378} -> {F : @330} -> {o : @354} -> (hB : @552) -> (hfn : @491) -> (hwt : @554) -> @537 -@564 := @548 @72 -@566 := (n : @3) -> @550 @72 -@567 := @488 @72 -@568 := @390 @567 -@569 := @568 @404 -@570 := @523 @72 -@571 := @427 @570 -@572 := @571 @434 -@573 := @496 @72 -@575 := @573 @152 @140 -@577 := @527 (@456 @72) -@585 := (hF : @572) -> (hA : @575) -> (hne : @443) -> @446 (fun (ro : @445) => @452 (@577 @429 @17)) -@594 := {fn : @82} -> - {args : @136} -> - {env : @378} -> - {F : @330} -> {o : @354} -> (hB : @566) -> (hfn : @569) -> (hwt : @554) -> (hbind : @425) -> @585 -@595 := @564 @102 -@597 := @568 (@403 @102) -@598 := @411 @102 -@599 := @553 @598 -@601 := @416 (@417 @102) -@613 := {args : @136} -> - {env : @378} -> - {F : @330} -> - {o : @354} -> - (hB : @566) -> (hfn : @597) -> (hwt : @599) -> (hbind : @415 (@601 @138 @75) @424) -> @585 -@614 := @595 @62 -@616 := @282 (@229 @57) -@618 := @132 @616 @598 -@620 := @58 (@5 @152) -@622 := @620 (@282 @57) -@626 := @415 (@601 @622 @75) @424 -@628 := @58 (@5 @406) -@630 := @58 (@5 @380) -@632 := @628 (@630 @57) -@634 := @573 @632 @140 -@636 := @58 (@5 @437) -@639 := @58 (@5 #12) -@656 := {env : @378} -> - {F : @330} -> - {o : @354} -> - (hB : @566) -> - (hfn : @597) -> - (hwt : @618) -> - (hbind : @626) -> - (hF : @572) -> - (hA : @634) -> (hne : @443) -> @446 (fun (ro : @445) => @452 (@577 (@636 (@639 @57)) @17)) -@657 := @614 @80 -@659 := @229 (@243 @57) -@661 := @132 @659 @598 -@672 := @415 (@601 @616 @75) (@423 (@76 (@70 @228) (@76 (@73 @281) @75))) -@674 := @630 (@620 @57) -@676 := @573 @674 @140 -@678 := @58 (@5 @429) -@694 := {F : @330} -> - {o : @354} -> - (hB : @566) -> - (hfn : @597) -> - (hwt : @661) -> - (hbind : @672) -> - (hF : @572) -> - (hA : @676) -> (hne : @443) -> @446 (fun (ro : @445) => @452 (@577 (@639 (@678 @57)) @17)) -@695 := @657 @81 -@696 := @301 @598 -@707 := @415 (@601 @659 @75) (@423 (@76 (@70 @242) (@76 (@73 @228) @75))) -@709 := @571 (@433 @81) -@711 := @573 @622 @140 -@712 := @448 @81 -@730 := {o : @354} -> - (hB : @566) -> - (hfn : @597) -> - (hwt : @696) -> - (hbind : @707) -> - (hF : @709) -> - (hA : @711) -> - (hne : @443) -> @446 (fun (ro : @445) => @447 (@712 @152 @17) (@577 (@678 (@628 @57)) @17)) -@731 := @695 @323 -@732 := @308 @598 -@743 := @415 (@601 @300 @75) (@423 (@76 (@70 @225) (@76 (@73 @242) @75))) -@744 := @573 @616 -@746 := @321 @146 @138 -@747 := @744 @746 -@749 := @321 @152 @146 -@768 := (hB : @566) -> - (hfn : @597) -> - (hwt : @732) -> - (hbind : @743) -> - (hF : @709) -> - (hA : @747) -> - (hne : @355 @749 @360) -> - @446 (fun (ro : @445) => @447 (@712 (@321 @406 @380) @17) (@577 @632 @17)) -@769 := @731 @106 -@770 := @315 @598 -@781 := @415 (@601 @307 @75) (@423 (@76 (@70 @239) (@76 (@73 @225) @75))) -@782 := @573 @659 -@784 := @321 @138 @140 -@803 := (hfn : @597) -> - (hwt : @770) -> - (hbind : @781) -> - (hF : @709) -> - (hA : @782 @784) -> - (hne : @355 @746 @360) -> - @446 (fun (ro : @445) => @447 (@712 (@321 @380 @152) @17) (@577 @674 @17)) -@804 := Eq.refl.{1} -@807 := @769 (@804 @389 @567) -@808 := @319 @598 -@819 := @415 (@601 @314 @75) (@423 (@76 (@70 @6) (@76 (@73 @239) @75))) -@820 := @573 @300 -@822 := @321 @140 @142 -@838 := (hwt : @808) -> - (hbind : @819) -> - (hF : @709) -> - (hA : @820 @822) -> - (hne : @355 @784 @360) -> @446 (fun (ro : @445) => @447 (@712 @749 @17) (@577 @622 @17)) -@839 := @807 @318 -@841 := @601 @62 @75 -@844 := @415 @841 (@423 @80) -@845 := @573 @307 -@847 := @321 @142 @12 -@862 := (hbind : @844) -> - (hF : @709) -> - (hA : @845 @847) -> - (hne : @355 @822 @360) -> @446 (fun (ro : @445) => @447 (@712 @746 @17) (@577 @616 @17)) -@865 := @839 (@804 @414 @841) -@866 := @573 @314 -@868 := @321 @12 @4 -@882 := (hF : @709) -> - (hA : @866 @868) -> - (hne : @355 @847 @360) -> @446 (fun (ro : @445) => @447 (@712 @784 @17) (@577 @659 @17)) -@885 := @865 (@804 @426 @570) -@899 := (hA : @573 @62 @323) -> - (hne : @355 @868 @360) -> @446 (fun (ro : @445) => @447 (@712 @822 @17) (@577 @300 @17)) -@900 := @885 @352 -@911 := (hne : @355 @323 @360) -> @446 (fun (ro : @445) => @447 (@712 @847 @17) (@577 @307 @17)) -@912 := @900 @373 -@918 := @447 (@712 @868 @17) (@577 @314 @17) -@920 := @446 (fun (ro : @445) => @918) -@922 := @446 (fun (__e_ro : @445) => @918) -@927 := LexLeanPreservation.Rust.RepresentableL (@59 (@58 @18 @57)) -@928 := (__e_hrep : @927) -> @922 -@929 := fun (__e_hrep : @927) => @912 -@930 := (x : @3) -> @928 -@931 := fun (x : @3) => @929 -@932 := (s : @3) -> @930 -@933 := fun (s : @3) => @931 -\end{coremodule} -\end{lexlean} diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R5/RustStd.lean b/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R5/RustStd.lean deleted file mode 100644 index 55df8a9b2..000000000 --- a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R5/RustStd.lean +++ /dev/null @@ -1,65 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1], types := [.nat, .nat], result := (.result (.pair .nat .nat) (.pair .bool .bool)), - body := (.«let» 2 .nat (.var 0) (.«let» 3 .nat (.var 1) (.cond (.call 1 [(.var 2)]) (.cond (.call 2 [(.var 2), (.var 3)]) (.«let» 4 (.pair .nat .nat) (.call 3 [(.var 2), (.var 3)]) (.cond (.call 1 [(.first (.var 4))]) (.build .ok (.result (.pair .nat .nat) (.pair .bool .bool)) [(.var 4)]) (.build .error (.result (.pair .nat .nat) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .true .bool [])])]))) (.build .error (.result (.pair .nat .nat) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])])) (.build .error (.result (.pair .nat .nat) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])])])))) }, - { parameters := [0], types := [.nat], result := .bool, - body := (.prim .natLe [(.var 0), (.value .nat (.nat 100))]) }, - { parameters := [0, 1], types := [.nat, .nat], result := .bool, - body := (.prim .natLe [(.var 1), (.value .nat (.nat 10))]) }, - { parameters := [0, 1], types := [.nat, .nat], result := (.pair .nat .nat), - body := (.call 4 [(.var 0), (.var 1)]) }, - { parameters := [0, 1], types := [.nat, .nat], result := (.pair .nat .nat), - body := (.build .pair (.pair .nat .nat) [(.prim .natAdd [(.var 0), (.var 1)]), (.var 1)]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.result (.pair .nat .nat) (.pair .bool .bool))) (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.copy (.generated .binding 0))), (.mk (.bind (.generated .binding 3)) (some .nat) (.copy (.generated .binding 1)))] (.cond (.call (.function 1) [(.copy (.generated .binding 2))] false) (.mk [] (.cond (.call (.function 2) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3))] false) (.mk [(.mk (.bind (.generated .binding 4)) (some (.pair .nat .nat)) (.call (.function 3) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3))] true))] (.cond (.call (.function 1) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 1)), .wild]) none (.copy (.generated .binding 4)))] (.move (.generated .part 1))))] false) (.mk [] (.succeed (.construct (.ok (.pair .nat .nat) (.pair .bool .bool)) [(.copy (.generated .binding 4))]))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool true)))]))))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))])))))), - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 3)) none (.lit (.nat 100)))] (.call (.runtime .natLe) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] false))), - (.function (.generated .function 2) [{ pattern := .wild, type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 5)) none (.lit (.nat 10)))] (.call (.runtime .natLe) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false))), - (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.pair .nat .nat)) (.mk [] (.call (.function 4) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false))), - (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.pair .nat .nat)) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] true))) (.copy (.generated .binding 1))))))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some .nat) (.copy (.generated .binding 0))), (.mk (.bind (.generated .binding 3)) (some .nat) (.copy (.generated .binding 1)))], (.cond (.call (.function 1) [(.copy (.generated .binding 2))] false) (.mk [] (.cond (.call (.function 2) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3))] false) (.mk [(.mk (.bind (.generated .binding 4)) (some (.pair .nat .nat)) (.call (.function 3) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3))] true))] (.cond (.call (.function 1) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 1)), .wild]) none (.copy (.generated .binding 4)))] (.move (.generated .part 1))))] false) (.mk [] (.succeed (.construct (.ok (.pair .nat .nat) (.pair .bool .bool)) [(.copy (.generated .binding 4))]))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool true)))]))))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))])))), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.letBind (Corr.var rfl rfl) rfl (Corr.letBind (Corr.var rfl rfl) rfl (Corr.cond (lc := []) (ce := (.call (.function 1) [(.copy (.generated .binding 2))] false)) (lk := []) (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 2) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3))] false) (.mk [(.mk (.bind (.generated .binding 4)) (some (.pair .nat .nat)) (.call (.function 3) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3))] true))] (.cond (.call (.function 1) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 1)), .wild]) none (.copy (.generated .binding 4)))] (.move (.generated .part 1))))] false) (.mk [] (.succeed (.construct (.ok (.pair .nat .nat) (.pair .bool .bool)) [(.copy (.generated .binding 4))]))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool true)))]))))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))))) (lb := []) (tb := (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))]))) (Corr.cond (lc := []) (ce := (.call (.function 2) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3))] false)) (lk := []) (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .binding 4)) (some (.pair .nat .nat)) (.call (.function 3) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3))] true))]) (ta := (.cond (.call (.function 1) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 1)), .wild]) none (.copy (.generated .binding 4)))] (.move (.generated .part 1))))] false) (.mk [] (.succeed (.construct (.ok (.pair .nat .nat) (.pair .bool .bool)) [(.copy (.generated .binding 4))]))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool true)))]))))) (lb := []) (tb := (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))) (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := []) (ce := (.call (.function 1) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 1)), .wild]) none (.copy (.generated .binding 4)))] (.move (.generated .part 1))))] false)) (lk := []) (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 1)), .wild]) none (.copy (.generated .binding 4)))]) (tail := (.move (.generated .part 1))) (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct (.ok (.pair .nat .nat) (.pair .bool .bool)) [(.copy (.generated .binding 4))]))) (lb := []) (tb := (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool true)))]))) (Corr.fOfB (Corr.build (ts := [(.pair .nat .nat)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl))))) (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)))) (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl))))))⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 3)) none (.lit (.nat 100)))], (.call (.runtime .natLe) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] false), [(0, .nat, (some 0))], rfl, rfl, - (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 5)) none (.lit (.nat 10)))], (.call (.runtime .natLe) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false), [(1, .nat, (some 1)), (0, .nat, none)], rfl, rfl, - (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun3 : FunOK program krate flags 3 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 4) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.callF (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)⟩⟩ - -theorem fun4 : FunOK program krate flags 4 := - ⟨_, rfl, .inl ⟨_, _, [], (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] true))) (.copy (.generated .binding 1)))), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | 3 => exact fun3 - | 4 => exact fun4 - | _ + 5 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.RustStd diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R6.lean b/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R6.lean deleted file mode 100644 index 0a363ddf9..000000000 --- a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R6.lean +++ /dev/null @@ -1,83 +0,0 @@ -import LexLeanPreservation.Core -import LexLeanPreservation.Values -import LexLeanPreservation.Primitives -import LexLeanPreservation.Fixed -import LexLeanPreservation.Keys -import LexLeanPreservation.Templates -import LexLeanPreservation.Validate -import Models.Flows -import Models.Glyphs -import Models.Ledger -import Models.Main -import Models.Pipeline -import Models.Policy -import Models.Recognizer -import Models.Session -import Models.Triage -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -set_option linter.unusedVariables false -namespace LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6 - -def __prog : _root_.LexLeanTarget.TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1], types := [.nat, .nat], result := (.result (.pair .nat .nat) (.pair .bool .bool)), - body := (.«let» 2 .nat (.var 0) (.«let» 3 .nat (.var 1) (.cond (.call 1 [(.var 2)]) (.cond (.call 2 [(.var 2), (.var 3)]) (.«let» 4 (.pair .nat .nat) (.call 3 [(.var 2), (.var 3)]) (.cond (.call 1 [(.first (.var 4))]) (.cond (.call 4 [(.var 2), (.var 3), (.first (.var 4)), (.second (.var 4))]) (.build .ok (.result (.pair .nat .nat) (.pair .bool .bool)) [(.var 4)]) (.build .error (.result (.pair .nat .nat) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])])])) (.build .error (.result (.pair .nat .nat) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .true .bool [])])]))) (.build .error (.result (.pair .nat .nat) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])])) (.build .error (.result (.pair .nat .nat) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])])])))) }, - { parameters := [0], types := [.nat], result := .bool, - body := (.prim .natLe [(.var 0), (.value .nat (.nat 100))]) }, - { parameters := [0, 1], types := [.nat, .nat], result := .bool, - body := (.prim .natLe [(.var 1), (.value .nat (.nat 10))]) }, - { parameters := [0, 1], types := [.nat, .nat], result := (.pair .nat .nat), - body := (.call 5 [(.var 0), (.var 1)]) }, - { parameters := [0, 1, 2, 3], types := [.nat, .nat, .nat, .nat], result := .bool, - body := (.prim .natLe [(.var 0), (.var 2)]) }, - { parameters := [0, 1], types := [.nat, .nat], result := (.pair .nat .nat), - body := (.build .pair (.pair .nat .nat) [(.prim .natAdd [(.var 0), (.var 1)]), (.var 1)]) }] } - -def __fits_1 (s : Nat) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_1 (s : Nat) : _root_.LexLeanPreservation.FunRel __prog 1 [(_root_.LexLeanTarget.TargetSyntax.Value.nat s)] (_root_.LexLeanPreservation.Rel (__fits_1 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Models.Ledger.cappedCheck s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe s (100 : Nat))) - -def __fits_2 (s : Nat) (x : Nat) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_2 (s : Nat) (x : Nat) : _root_.LexLeanPreservation.FunRel __prog 2 [(_root_.LexLeanTarget.TargetSyntax.Value.nat s), (_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_2 s x) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Models.Ledger.smallCheck s x))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe x (10 : Nat))) - -def __fits_5 (s : Nat) (x : Nat) : Bool := - ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (s + x) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_5 (s : Nat) (x : Nat) : _root_.LexLeanPreservation.FunRel __prog 5 [(_root_.LexLeanTarget.TargetSyntax.Value.nat s), (_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_5 s x) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) (Models.Ledger.Spill s x))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd s x)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) - -def __fits_3 (_ystate : Nat) (_yinput : Nat) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && (__fits_5 (_ystate) (_yinput))) - -attribute [local irreducible] Models.Ledger.Spill in -theorem __rel_3 (_ystate : Nat) (_yinput : Nat) : _root_.LexLeanPreservation.FunRel __prog 3 [(_root_.LexLeanTarget.TargetSyntax.Value.nat _ystate), (_root_.LexLeanTarget.TargetSyntax.Value.nat _yinput)] (_root_.LexLeanPreservation.Rel (__fits_3 _ystate _yinput) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) (Models.Ledger.SpillRawModel _ystate _yinput))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_5 (_ystate) (_yinput))) - -def __fits_4 (s : Nat) (x : Nat) (t : Nat) (y : Nat) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_4 (s : Nat) (x : Nat) (t : Nat) (y : Nat) : _root_.LexLeanPreservation.FunRel __prog 4 [(_root_.LexLeanTarget.TargetSyntax.Value.nat s), (_root_.LexLeanTarget.TargetSyntax.Value.nat x), (_root_.LexLeanTarget.TargetSyntax.Value.nat t), (_root_.LexLeanTarget.TargetSyntax.Value.nat y)] (_root_.LexLeanPreservation.Rel (__fits_4 s x t y) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Models.Ledger.growsCheck s x t y))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe s t)) - -def __fits_0 (s : Nat) (x : Nat) : Bool := - (Bool.true && (let _ychecked1_state : Nat := s; (Bool.true && (let _ychecked1_input : Nat := x; (((Bool.true && Bool.true) && (__fits_1 (_ychecked1_state))) && (if (Models.Ledger.cappedCheck (_ychecked1_state)) then (((Bool.true && (Bool.true && Bool.true)) && (__fits_2 (_ychecked1_state) (_ychecked1_input))) && (if (Models.Ledger.smallCheck (_ychecked1_state) (_ychecked1_input)) then (((Bool.true && (Bool.true && Bool.true)) && (__fits_3 (_ychecked1_state) (_ychecked1_input))) && (let _ychecked1_step : (Prod Nat Nat) := (Models.Ledger.SpillRawModel (_ychecked1_state) (_ychecked1_input)); (((Bool.true && Bool.true) && (__fits_1 ((_ychecked1_step).1))) && (if (Models.Ledger.cappedCheck ((_ychecked1_step).1)) then (((Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true)))) && (__fits_4 (_ychecked1_state) (_ychecked1_input) ((_ychecked1_step).1) ((_ychecked1_step).2))) && (if (Models.Ledger.growsCheck (_ychecked1_state) (_ychecked1_input) ((_ychecked1_step).1) ((_ychecked1_step).2)) then ((Bool.true && Bool.true) && Bool.true) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))))) - -attribute [local irreducible] Models.Ledger.SpillRawModel Models.Ledger.cappedCheck Models.Ledger.growsCheck Models.Ledger.smallCheck in -theorem __rel_0 (s : Nat) (x : Nat) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat s), (_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_0 s x) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Models.Main.ledgerFull s x))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (let _ychecked1_state : Nat := s; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_var rfl) (let _ychecked1_input : Nat := x; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (Bool.true && Bool.true)) && (__fits_2 (_ychecked1_state) (_ychecked1_input))) && (if (Models.Ledger.smallCheck (_ychecked1_state) (_ychecked1_input)) then (((Bool.true && (Bool.true && Bool.true)) && (__fits_3 (_ychecked1_state) (_ychecked1_input))) && (let _ychecked1_step : (Prod Nat Nat) := (Models.Ledger.SpillRawModel (_ychecked1_state) (_ychecked1_input)); (((Bool.true && Bool.true) && (__fits_1 ((_ychecked1_step).1))) && (if (Models.Ledger.cappedCheck ((_ychecked1_step).1)) then (((Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true)))) && (__fits_4 (_ychecked1_state) (_ychecked1_input) ((_ychecked1_step).1) ((_ychecked1_step).2))) && (if (Models.Ledger.growsCheck (_ychecked1_state) (_ychecked1_input) ((_ychecked1_step).1) ((_ychecked1_step).2)) then ((Bool.true && Bool.true) && Bool.true) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (if __b then (if (Models.Ledger.smallCheck (_ychecked1_state) (_ychecked1_input)) then (let _ychecked1_step : (Prod Nat Nat) := (Models.Ledger.SpillRawModel (_ychecked1_state) (_ychecked1_input)); (if (Models.Ledger.cappedCheck ((_ychecked1_step).1)) then (if (Models.Ledger.growsCheck (_ychecked1_state) (_ychecked1_input) ((_ychecked1_step).1) ((_ychecked1_step).2)) then (Except.ok (_ychecked1_step) : (Except (Prod Bool Bool) (Prod Nat Nat))) else (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod Nat Nat)))) else (Except.error (((Bool.true, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod Nat Nat))))) else (Except.error (((Bool.false, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod Nat Nat)))) else (Except.error (((Bool.false, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod Nat Nat))))) (Models.Ledger.cappedCheck (_ychecked1_state)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_1 (_ychecked1_state))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (Bool.true && Bool.true)) && (__fits_3 (_ychecked1_state) (_ychecked1_input))) && (let _ychecked1_step : (Prod Nat Nat) := (Models.Ledger.SpillRawModel (_ychecked1_state) (_ychecked1_input)); (((Bool.true && Bool.true) && (__fits_1 ((_ychecked1_step).1))) && (if (Models.Ledger.cappedCheck ((_ychecked1_step).1)) then (((Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true)))) && (__fits_4 (_ychecked1_state) (_ychecked1_input) ((_ychecked1_step).1) ((_ychecked1_step).2))) && (if (Models.Ledger.growsCheck (_ychecked1_state) (_ychecked1_input) ((_ychecked1_step).1) ((_ychecked1_step).2)) then ((Bool.true && Bool.true) && Bool.true) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (if __b then (let _ychecked1_step : (Prod Nat Nat) := (Models.Ledger.SpillRawModel (_ychecked1_state) (_ychecked1_input)); (if (Models.Ledger.cappedCheck ((_ychecked1_step).1)) then (if (Models.Ledger.growsCheck (_ychecked1_state) (_ychecked1_input) ((_ychecked1_step).1) ((_ychecked1_step).2)) then (Except.ok (_ychecked1_step) : (Except (Prod Bool Bool) (Prod Nat Nat))) else (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod Nat Nat)))) else (Except.error (((Bool.true, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod Nat Nat))))) else (Except.error (((Bool.false, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod Nat Nat))))) (Models.Ledger.smallCheck (_ychecked1_state) (_ychecked1_input)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_2 (_ychecked1_state) (_ychecked1_input))) (fun _ => (let _ychecked1_step : (Prod Nat Nat) := (Models.Ledger.SpillRawModel (_ychecked1_state) (_ychecked1_input)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_3 (_ychecked1_state) (_ychecked1_input))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true)))) && (__fits_4 (_ychecked1_state) (_ychecked1_input) ((_ychecked1_step).1) ((_ychecked1_step).2))) && (if (Models.Ledger.growsCheck (_ychecked1_state) (_ychecked1_input) ((_ychecked1_step).1) ((_ychecked1_step).2)) then ((Bool.true && Bool.true) && Bool.true) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (if __b then (if (Models.Ledger.growsCheck (_ychecked1_state) (_ychecked1_input) ((_ychecked1_step).1) ((_ychecked1_step).2)) then (Except.ok (_ychecked1_step) : (Except (Prod Bool Bool) (Prod Nat Nat))) else (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod Nat Nat)))) else (Except.error (((Bool.true, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod Nat Nat))))) (Models.Ledger.cappedCheck ((_ychecked1_step).1)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil) (__rel_1 ((_ychecked1_step).1))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && Bool.true) && Bool.true) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (if __b then (Except.ok (_ychecked1_step) : (Except (Prod Bool Bool) (Prod Nat Nat))) else (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod Nat Nat))))) (Models.Ledger.growsCheck (_ychecked1_state) (_ychecked1_input) ((_ychecked1_step).1) ((_ychecked1_step).2)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil)))) (__rel_4 (_ychecked1_state) (_ychecked1_input) ((_ychecked1_step).1) ((_ychecked1_step).2))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error))))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error))))) - -def denote (s : Nat) (x : Nat) : _root_.LexLeanPreservation.Obs := - _root_.cond (__fits_0 s x) (_root_.LexLeanPreservation.Obs.value (((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Models.Main.ledgerFull s x)))) _root_.LexLeanPreservation.Obs.overflow - -theorem root (s : Nat) (x : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat s), (_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_0 s x) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Models.Main.ledgerFull s x))) := - _root_.LexLeanPreservation.run_of_funRel (__rel_0 s x) - -end LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6 diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R6/Compose/RustStd.lex.tex b/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R6/Compose/RustStd.lex.tex deleted file mode 100644 index 36bc1cb06..000000000 --- a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R6/Compose/RustStd.lex.tex +++ /dev/null @@ -1,471 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6, - LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.Compose.RustStd.root : @932 := @933 { - all: [LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.RustStd.program -@1 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.RustStd.krate -@2 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.RustStd.flags -@3 := Nat -@4 := #2 -@5 := LexLeanTarget.TargetSyntax.Value.nat -@6 := @5 @4 -@7 := LexLeanTarget.TargetSyntax.Ty.nat -@8 := LexLeanTarget.TargetSyntax.Program -@9 := LexLeanPreservation.Rust.RCrate -@10 := LexLeanPreservation.Rust.Flags -@11 := LexLeanPreservation.Rust.WT -@12 := #3 -@14 := @11 @12 @4 -@15 := #1 -@16 := @14 @15 -@17 := #0 -@18 := @5 @17 -@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 -@26 := LexLeanPreservation.Rust.wt_nat @0 -@27 := @11 @0 -@34 := {c : @9} -> {A : @10} -> (n : @3) -> @27 @4 @15 @18 @7 -@35 := @26 @1 -@36 := @27 @1 -@41 := {A : @10} -> (n : @3) -> @36 @15 @18 @7 -@42 := @35 @2 -@43 := @36 @2 -@46 := (n : @3) -> @43 @18 @7 -@47 := @42 @4 -@49 := @43 @6 @7 -@50 := @5 @15 -@51 := @42 @15 -@53 := @43 @50 @7 -@54 := LexLeanTarget.TargetSyntax.Value -@55 := List.nil.{0} -@56 := List.cons.{0} -@57 := @55 @54 -@58 := @56 @54 -@59 := @58 @50 -@60 := @59 @57 -@61 := @58 @6 -@62 := @61 @60 -@63 := Prod.{0, 0} -@64 := @63 @3 -@65 := @64 @54 -@66 := 1 -@69 := Prod.mk.{0, 0} @3 @54 -@70 := @69 @66 -@71 := @70 @50 -@72 := 0 -@73 := @69 @72 -@74 := @73 @6 -@75 := @55 @65 -@76 := @56 @65 -@78 := @76 @74 @75 -@80 := @76 @71 @78 -@81 := Bool.true -@82 := LexLeanTarget.TargetSyntax.Function -@83 := LexLeanTarget.TargetSyntax.Program.functions -@84 := @83 @0 -@85 := LexLeanTarget.TargetSyntax.Ty -@86 := @55 @3 -@87 := @55 @85 -@88 := LexLeanTarget.TargetSyntax.Ty.unit -@89 := LexLeanTarget.TargetSyntax.Value.unit -@92 := LexLeanTarget.TargetSyntax.Expr.value @88 @89 -@97 := LexLeanTarget.TargetSyntax.Function.mk @86 @87 @88 @92 -@102 := List.getD.{0} @82 @84 @72 @97 -@106 := fun (__e_n : @3) => - LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.RustStd.root @17 @72 -@107 := LexLeanPreservation.Rust.WTL -@115 := {p : @8} -> {c : @9} -> {A : @10} -> @107 @4 @15 @17 @57 @87 -@117 := LexLeanPreservation.Rust.wtl_nil @0 -@118 := @107 @0 -@124 := {c : @9} -> {A : @10} -> @118 @15 @17 @57 @87 -@125 := @117 @1 -@126 := @118 @1 -@130 := {A : @10} -> @126 @17 @57 @87 -@131 := @125 @2 -@132 := @126 @2 -@133 := @132 @57 -@134 := @133 @87 -@135 := List.{0} -@136 := @135 @54 -@137 := @135 @85 -@138 := #6 -@139 := @11 @138 -@140 := #5 -@141 := @139 @140 -@142 := #4 -@145 := @141 @142 @12 @4 -@146 := #7 -@151 := @107 @146 @138 @140 @4 @15 -@152 := #8 -@155 := @107 @152 @146 @138 -@157 := @58 @140 @12 -@158 := @155 @157 -@159 := @56 @85 -@161 := @159 @142 @4 -@171 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {v : @54} -> {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @145) -> (hs : @151) -> @158 @161 -@173 := LexLeanPreservation.Rust.wtl_cons @0 -@193 := {c : @9} -> - {A : @10} -> - {v : @54} -> - {t : @85} -> - {vs : @136} -> - {ts : @137} -> - (h : @27 @140 @142 @12 @4) -> (hs : @118 @138 @140 @4 @15) -> @118 @146 @138 @157 @161 -@194 := @173 @1 -@210 := {A : @10} -> - {v : @54} -> - {t : @85} -> - {vs : @136} -> - {ts : @137} -> (h : @36 @142 @12 @4) -> (hs : @126 @140 @4 @15) -> @126 @138 @157 @161 -@211 := @194 @2 -@213 := @43 @12 @4 -@215 := @132 @4 @15 -@223 := {v : @54} -> - {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @213) -> (hs : @215) -> @132 @157 @161 -@224 := @211 @50 -@225 := @5 @142 -@226 := @43 @225 -@227 := @226 @4 -@228 := @5 @138 -@229 := @58 @228 -@231 := @132 (@229 @12) -@237 := {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @227) -> (hs : @215) -> @231 @161 -@238 := @224 @7 -@239 := @5 @12 -@241 := @43 @239 @7 -@242 := @5 @140 -@243 := @58 @242 -@245 := @132 (@243 @12) -@246 := @159 @7 -@247 := @246 @4 -@252 := {vs : @136} -> {ts : @137} -> (h : @241) -> (hs : @215) -> @245 @247 -@253 := @238 @57 -@254 := @133 @15 -@255 := @58 @225 -@256 := @255 @57 -@261 := {ts : @137} -> (h : @49) -> (hs : @254) -> @132 @256 @247 -@262 := @253 @87 -@263 := @58 @239 -@264 := @263 @57 -@265 := @132 @264 -@266 := @246 @87 -@269 := (h : @53) -> (hs : @134) -> @265 @266 -@270 := @262 @51 -@271 := @61 @57 -@273 := @132 @271 @266 -@274 := (hs : @134) -> @273 -@275 := @270 @131 -@277 := @132 @60 @266 -@278 := @211 @6 -@280 := @43 @242 @4 -@281 := @5 @146 -@282 := @58 @281 -@290 := {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @280) -> (hs : @215) -> @132 (@282 @12) @161 -@291 := @278 @7 -@297 := {vs : @136} -> {ts : @137} -> (h : @226 @7) -> (hs : @215) -> @231 @247 -@298 := @291 @60 -@299 := @265 @15 -@300 := @243 @256 -@301 := @132 @300 -@305 := {ts : @137} -> (h : @241) -> (hs : @299) -> @301 @247 -@306 := @298 @266 -@307 := @255 @264 -@308 := @132 @307 -@309 := @246 @266 -@312 := (h : @49) -> (hs : @273) -> @308 @309 -@313 := @306 @47 -@314 := @263 @271 -@315 := @132 @314 -@317 := (hs : @277) -> @315 @309 -@318 := @313 @275 -@319 := @132 @62 -@320 := @319 @309 -@321 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.denote -@323 := @321 @4 @15 -@324 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.__fits_0 -@326 := @324 @4 @15 -@329 := Models.Main.ledgerFull @4 @15 -@330 := Bool -@332 := @63 @330 @330 -@333 := @64 @3 -@334 := LexLeanTarget.TargetSyntax.Value.bool -@335 := LexLeanPreservation.encPair -@339 := @335 @330 @330 @334 @334 -@343 := @335 @3 @3 @5 @5 -@349 := LexLeanPreservation.encExcept @332 @333 @339 @343 @329 -@352 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.root @4 @15 -@353 := Ne.{1} -@354 := LexLeanPreservation.Obs -@355 := @353 @354 -@356 := LexLeanPreservation.Rel -@359 := @355 (@356 @15 @17) -@360 := LexLeanPreservation.Obs.stuck -@363 := (f : @330) -> (v : @54) -> @359 @360 -@365 := LexLeanPreservation.Rust.rel_ne_stuck @326 -@372 := (v : @54) -> @355 (@356 (@324 @12 @4) @17) @360 -@373 := @365 @349 -@377 := @355 (@356 @326 @349) @360 -@378 := @135 @65 -@379 := LexLeanPreservation.Rust.FunSem -@380 := #9 -@386 := (n : @3) -> @379 @380 @152 @146 @17 @138 -@387 := Eq.{1} -@388 := Option.{0} -@389 := @388 @82 -@390 := @387 @389 -@397 := LexLeanRuntime.index (@135 @82) @82 (LexLeanRuntime.instIndexableList @82) -@401 := @390 (@397 (@83 @380) @138) -@402 := Option.some.{0} -@403 := @402 @82 -@404 := @403 @140 -@405 := @401 @404 -@406 := #10 -@410 := @107 @406 @380 @152 @140 -@411 := LexLeanTarget.TargetSyntax.Function.types -@412 := @411 @138 -@413 := @410 @412 -@414 := @388 @378 -@415 := @387 @414 -@416 := LexLeanTarget.TargetSemantics.bindAll -@417 := LexLeanTarget.TargetSyntax.Function.parameters -@422 := @415 (@416 (@417 @146) @138 @75) -@423 := @402 @378 -@424 := @423 @140 -@425 := @422 @424 -@426 := @388 @330 -@427 := @387 @426 -@428 := LexLeanPreservation.Rust.fnFallible -@429 := #11 -@432 := @427 (@428 @429 @380) -@433 := @402 @330 -@434 := @433 @140 -@435 := @432 @434 -@436 := LexLeanPreservation.RunConv -@437 := #13 -@441 := @436 @437 @406 @152 @140 -@443 := @355 @138 @360 -@444 := Exists.{1} -@445 := LexLeanPreservation.Rust.ROut -@446 := @444 @445 -@447 := And -@448 := LexLeanPreservation.Rust.RealizesFn -@452 := @447 (@448 @380 @152 @17) -@453 := LexLeanPreservation.Rust.RCI -@455 := @453 #15 -@456 := LexLeanPreservation.Rust.fnIdent -@457 := @456 @437 -@464 := (hne : @443) -> @446 (fun (ro : @445) => @452 (@455 @457 @429 @17)) -@479 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {f : @3} -> - {fn : @82} -> - {args : @136} -> - {env : @378} -> - {F : @330} -> - {o : @354} -> - (hB : @386) -> - (hfn : @405) -> (hwt : @413) -> (hbind : @425) -> (hF : @435) -> (hA : @441) -> @464 -@481 := LexLeanPreservation.Rust.compose @0 -@482 := @379 @0 -@487 := (n : @3) -> @482 @152 @146 @17 @138 -@488 := @397 @84 -@491 := @390 (@488 @138) @404 -@495 := @118 @380 @152 @140 @412 -@496 := @436 @0 -@499 := @496 @406 @152 @140 -@513 := {c : @9} -> - {A : @10} -> - {f : @3} -> - {fn : @82} -> - {args : @136} -> - {env : @378} -> - {F : @330} -> - {o : @354} -> - (hB : @487) -> - (hfn : @491) -> (hwt : @495) -> (hbind : @425) -> (hF : @435) -> (hA : @499) -> @464 -@514 := @481 @1 -@515 := @482 @1 -@519 := (n : @3) -> @515 @146 @17 @138 -@522 := @126 @152 @140 @412 -@523 := @428 @1 -@526 := @427 (@523 @380) @434 -@527 := @453 @1 -@537 := (hbind : @425) -> - (hF : @526) -> (hA : @499) -> (hne : @443) -> @446 (fun (ro : @445) => @452 (@527 @457 @429 @17)) -@547 := {A : @10} -> - {f : @3} -> - {fn : @82} -> - {args : @136} -> - {env : @378} -> {F : @330} -> {o : @354} -> (hB : @519) -> (hfn : @491) -> (hwt : @522) -> @537 -@548 := @514 @2 -@550 := @515 @2 @17 -@552 := (n : @3) -> @550 @138 -@553 := @132 @140 -@554 := @553 @412 -@563 := {f : @3} -> - {fn : @82} -> - {args : @136} -> - {env : @378} -> {F : @330} -> {o : @354} -> (hB : @552) -> (hfn : @491) -> (hwt : @554) -> @537 -@564 := @548 @72 -@566 := (n : @3) -> @550 @72 -@567 := @488 @72 -@568 := @390 @567 -@569 := @568 @404 -@570 := @523 @72 -@571 := @427 @570 -@572 := @571 @434 -@573 := @496 @72 -@575 := @573 @152 @140 -@577 := @527 (@456 @72) -@585 := (hF : @572) -> (hA : @575) -> (hne : @443) -> @446 (fun (ro : @445) => @452 (@577 @429 @17)) -@594 := {fn : @82} -> - {args : @136} -> - {env : @378} -> - {F : @330} -> {o : @354} -> (hB : @566) -> (hfn : @569) -> (hwt : @554) -> (hbind : @425) -> @585 -@595 := @564 @102 -@597 := @568 (@403 @102) -@598 := @411 @102 -@599 := @553 @598 -@601 := @416 (@417 @102) -@613 := {args : @136} -> - {env : @378} -> - {F : @330} -> - {o : @354} -> - (hB : @566) -> (hfn : @597) -> (hwt : @599) -> (hbind : @415 (@601 @138 @75) @424) -> @585 -@614 := @595 @62 -@616 := @282 (@229 @57) -@618 := @132 @616 @598 -@620 := @58 (@5 @152) -@622 := @620 (@282 @57) -@626 := @415 (@601 @622 @75) @424 -@628 := @58 (@5 @406) -@630 := @58 (@5 @380) -@632 := @628 (@630 @57) -@634 := @573 @632 @140 -@636 := @58 (@5 @437) -@639 := @58 (@5 #12) -@656 := {env : @378} -> - {F : @330} -> - {o : @354} -> - (hB : @566) -> - (hfn : @597) -> - (hwt : @618) -> - (hbind : @626) -> - (hF : @572) -> - (hA : @634) -> (hne : @443) -> @446 (fun (ro : @445) => @452 (@577 (@636 (@639 @57)) @17)) -@657 := @614 @80 -@659 := @229 (@243 @57) -@661 := @132 @659 @598 -@672 := @415 (@601 @616 @75) (@423 (@76 (@70 @228) (@76 (@73 @281) @75))) -@674 := @630 (@620 @57) -@676 := @573 @674 @140 -@678 := @58 (@5 @429) -@694 := {F : @330} -> - {o : @354} -> - (hB : @566) -> - (hfn : @597) -> - (hwt : @661) -> - (hbind : @672) -> - (hF : @572) -> - (hA : @676) -> (hne : @443) -> @446 (fun (ro : @445) => @452 (@577 (@639 (@678 @57)) @17)) -@695 := @657 @81 -@696 := @301 @598 -@707 := @415 (@601 @659 @75) (@423 (@76 (@70 @242) (@76 (@73 @228) @75))) -@709 := @571 (@433 @81) -@711 := @573 @622 @140 -@712 := @448 @81 -@730 := {o : @354} -> - (hB : @566) -> - (hfn : @597) -> - (hwt : @696) -> - (hbind : @707) -> - (hF : @709) -> - (hA : @711) -> - (hne : @443) -> @446 (fun (ro : @445) => @447 (@712 @152 @17) (@577 (@678 (@628 @57)) @17)) -@731 := @695 @323 -@732 := @308 @598 -@743 := @415 (@601 @300 @75) (@423 (@76 (@70 @225) (@76 (@73 @242) @75))) -@744 := @573 @616 -@746 := @321 @146 @138 -@747 := @744 @746 -@749 := @321 @152 @146 -@768 := (hB : @566) -> - (hfn : @597) -> - (hwt : @732) -> - (hbind : @743) -> - (hF : @709) -> - (hA : @747) -> - (hne : @355 @749 @360) -> - @446 (fun (ro : @445) => @447 (@712 (@321 @406 @380) @17) (@577 @632 @17)) -@769 := @731 @106 -@770 := @315 @598 -@781 := @415 (@601 @307 @75) (@423 (@76 (@70 @239) (@76 (@73 @225) @75))) -@782 := @573 @659 -@784 := @321 @138 @140 -@803 := (hfn : @597) -> - (hwt : @770) -> - (hbind : @781) -> - (hF : @709) -> - (hA : @782 @784) -> - (hne : @355 @746 @360) -> - @446 (fun (ro : @445) => @447 (@712 (@321 @380 @152) @17) (@577 @674 @17)) -@804 := Eq.refl.{1} -@807 := @769 (@804 @389 @567) -@808 := @319 @598 -@819 := @415 (@601 @314 @75) (@423 (@76 (@70 @6) (@76 (@73 @239) @75))) -@820 := @573 @300 -@822 := @321 @140 @142 -@838 := (hwt : @808) -> - (hbind : @819) -> - (hF : @709) -> - (hA : @820 @822) -> - (hne : @355 @784 @360) -> @446 (fun (ro : @445) => @447 (@712 @749 @17) (@577 @622 @17)) -@839 := @807 @318 -@841 := @601 @62 @75 -@844 := @415 @841 (@423 @80) -@845 := @573 @307 -@847 := @321 @142 @12 -@862 := (hbind : @844) -> - (hF : @709) -> - (hA : @845 @847) -> - (hne : @355 @822 @360) -> @446 (fun (ro : @445) => @447 (@712 @746 @17) (@577 @616 @17)) -@865 := @839 (@804 @414 @841) -@866 := @573 @314 -@868 := @321 @12 @4 -@882 := (hF : @709) -> - (hA : @866 @868) -> - (hne : @355 @847 @360) -> @446 (fun (ro : @445) => @447 (@712 @784 @17) (@577 @659 @17)) -@885 := @865 (@804 @426 @570) -@899 := (hA : @573 @62 @323) -> - (hne : @355 @868 @360) -> @446 (fun (ro : @445) => @447 (@712 @822 @17) (@577 @300 @17)) -@900 := @885 @352 -@911 := (hne : @355 @323 @360) -> @446 (fun (ro : @445) => @447 (@712 @847 @17) (@577 @307 @17)) -@912 := @900 @373 -@918 := @447 (@712 @868 @17) (@577 @314 @17) -@920 := @446 (fun (ro : @445) => @918) -@922 := @446 (fun (__e_ro : @445) => @918) -@927 := LexLeanPreservation.Rust.RepresentableL (@59 (@58 @18 @57)) -@928 := (__e_hrep : @927) -> @922 -@929 := fun (__e_hrep : @927) => @912 -@930 := (x : @3) -> @928 -@931 := fun (x : @3) => @929 -@932 := (s : @3) -> @930 -@933 := fun (s : @3) => @931 -\end{coremodule} -\end{lexlean} diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R6/RustStd.lean b/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R6/RustStd.lean deleted file mode 100644 index ccc4f5d1c..000000000 --- a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R6/RustStd.lean +++ /dev/null @@ -1,73 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1], types := [.nat, .nat], result := (.result (.pair .nat .nat) (.pair .bool .bool)), - body := (.«let» 2 .nat (.var 0) (.«let» 3 .nat (.var 1) (.cond (.call 1 [(.var 2)]) (.cond (.call 2 [(.var 2), (.var 3)]) (.«let» 4 (.pair .nat .nat) (.call 3 [(.var 2), (.var 3)]) (.cond (.call 1 [(.first (.var 4))]) (.cond (.call 4 [(.var 2), (.var 3), (.first (.var 4)), (.second (.var 4))]) (.build .ok (.result (.pair .nat .nat) (.pair .bool .bool)) [(.var 4)]) (.build .error (.result (.pair .nat .nat) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])])])) (.build .error (.result (.pair .nat .nat) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .true .bool [])])]))) (.build .error (.result (.pair .nat .nat) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])])) (.build .error (.result (.pair .nat .nat) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])])])))) }, - { parameters := [0], types := [.nat], result := .bool, - body := (.prim .natLe [(.var 0), (.value .nat (.nat 100))]) }, - { parameters := [0, 1], types := [.nat, .nat], result := .bool, - body := (.prim .natLe [(.var 1), (.value .nat (.nat 10))]) }, - { parameters := [0, 1], types := [.nat, .nat], result := (.pair .nat .nat), - body := (.call 5 [(.var 0), (.var 1)]) }, - { parameters := [0, 1, 2, 3], types := [.nat, .nat, .nat, .nat], result := .bool, - body := (.prim .natLe [(.var 0), (.var 2)]) }, - { parameters := [0, 1], types := [.nat, .nat], result := (.pair .nat .nat), - body := (.build .pair (.pair .nat .nat) [(.prim .natAdd [(.var 0), (.var 1)]), (.var 1)]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.result (.pair .nat .nat) (.pair .bool .bool))) (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.copy (.generated .binding 0))), (.mk (.bind (.generated .binding 3)) (some .nat) (.copy (.generated .binding 1)))] (.cond (.call (.function 1) [(.copy (.generated .binding 2))] false) (.mk [] (.cond (.call (.function 2) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3))] false) (.mk [(.mk (.bind (.generated .binding 4)) (some (.pair .nat .nat)) (.call (.function 3) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3))] true))] (.cond (.call (.function 1) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 1)), .wild]) none (.copy (.generated .binding 4)))] (.move (.generated .part 1))))] false) (.mk [] (.cond (.call (.function 4) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.copy (.generated .binding 4)))] (.move (.generated .part 2)))), (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 3))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 3))))] false) (.mk [] (.succeed (.construct (.ok (.pair .nat .nat) (.pair .bool .bool)) [(.copy (.generated .binding 4))]))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))]))))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool true)))]))))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))])))))), - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 5)) none (.lit (.nat 100)))] (.call (.runtime .natLe) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false))), - (.function (.generated .function 2) [{ pattern := .wild, type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 7)) none (.lit (.nat 10)))] (.call (.runtime .natLe) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false))), - (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.pair .nat .nat)) (.mk [] (.call (.function 5) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false))), - (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := .wild, type := .nat }, { pattern := (.bind (.generated .binding 2)), type := .nat }, { pattern := .wild, type := .nat }] .bool (.mk [(.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 2)))] (.call (.runtime .natLe) [(.move (.generated .operand 8)), (.move (.generated .operand 9))] false))), - (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.pair .nat .nat)) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] true))) (.copy (.generated .binding 1))))))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some .nat) (.copy (.generated .binding 0))), (.mk (.bind (.generated .binding 3)) (some .nat) (.copy (.generated .binding 1)))], (.cond (.call (.function 1) [(.copy (.generated .binding 2))] false) (.mk [] (.cond (.call (.function 2) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3))] false) (.mk [(.mk (.bind (.generated .binding 4)) (some (.pair .nat .nat)) (.call (.function 3) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3))] true))] (.cond (.call (.function 1) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 1)), .wild]) none (.copy (.generated .binding 4)))] (.move (.generated .part 1))))] false) (.mk [] (.cond (.call (.function 4) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.copy (.generated .binding 4)))] (.move (.generated .part 2)))), (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 3))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 3))))] false) (.mk [] (.succeed (.construct (.ok (.pair .nat .nat) (.pair .bool .bool)) [(.copy (.generated .binding 4))]))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))]))))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool true)))]))))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))])))), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.letBind (Corr.var rfl rfl) rfl (Corr.letBind (Corr.var rfl rfl) rfl (Corr.cond (lc := []) (ce := (.call (.function 1) [(.copy (.generated .binding 2))] false)) (lk := []) (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 2) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3))] false) (.mk [(.mk (.bind (.generated .binding 4)) (some (.pair .nat .nat)) (.call (.function 3) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3))] true))] (.cond (.call (.function 1) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 1)), .wild]) none (.copy (.generated .binding 4)))] (.move (.generated .part 1))))] false) (.mk [] (.cond (.call (.function 4) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.copy (.generated .binding 4)))] (.move (.generated .part 2)))), (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 3))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 3))))] false) (.mk [] (.succeed (.construct (.ok (.pair .nat .nat) (.pair .bool .bool)) [(.copy (.generated .binding 4))]))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))]))))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool true)))]))))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))))) (lb := []) (tb := (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))]))) (Corr.cond (lc := []) (ce := (.call (.function 2) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3))] false)) (lk := []) (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .binding 4)) (some (.pair .nat .nat)) (.call (.function 3) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3))] true))]) (ta := (.cond (.call (.function 1) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 1)), .wild]) none (.copy (.generated .binding 4)))] (.move (.generated .part 1))))] false) (.mk [] (.cond (.call (.function 4) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.copy (.generated .binding 4)))] (.move (.generated .part 2)))), (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 3))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 3))))] false) (.mk [] (.succeed (.construct (.ok (.pair .nat .nat) (.pair .bool .bool)) [(.copy (.generated .binding 4))]))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))]))))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool true)))]))))) (lb := []) (tb := (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))) (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := []) (ce := (.call (.function 1) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 1)), .wild]) none (.copy (.generated .binding 4)))] (.move (.generated .part 1))))] false)) (lk := []) (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 1)), .wild]) none (.copy (.generated .binding 4)))]) (tail := (.move (.generated .part 1))) (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 4) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.copy (.generated .binding 4)))] (.move (.generated .part 2)))), (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 3))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 3))))] false) (.mk [] (.succeed (.construct (.ok (.pair .nat .nat) (.pair .bool .bool)) [(.copy (.generated .binding 4))]))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))]))))) (lb := []) (tb := (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool true)))]))) (Corr.cond (lc := []) (ce := (.call (.function 4) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.copy (.generated .binding 4)))] (.move (.generated .part 2)))), (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 3))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 3))))] false)) (lk := []) (Corr.callOps (ts := [.nat, .nat, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.copy (.generated .binding 4)))]) (tail := (.move (.generated .part 2))) (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 3))]) none (.copy (.generated .binding 4)))]) (tail := (.move (.generated .part 3))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lNil)))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct (.ok (.pair .nat .nat) (.pair .bool .bool)) [(.copy (.generated .binding 4))]))) (lb := []) (tb := (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))]))) (Corr.fOfB (Corr.build (ts := [(.pair .nat .nat)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)))) (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl))))) (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)))) (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl))))))⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 5)) none (.lit (.nat 100)))], (.call (.runtime .natLe) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false), [(0, .nat, (some 0))], rfl, rfl, - (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 7)) none (.lit (.nat 10)))], (.call (.runtime .natLe) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false), [(1, .nat, (some 1)), (0, .nat, none)], rfl, rfl, - (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun3 : FunOK program krate flags 3 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 5) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.callF (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)⟩⟩ - -theorem fun4 : FunOK program krate flags 4 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 2)))], (.call (.runtime .natLe) [(.move (.generated .operand 8)), (.move (.generated .operand 9))] false), [(3, .nat, none), (2, .nat, (some 2)), (1, .nat, none), (0, .nat, (some 0))], rfl, rfl, - (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun5 : FunOK program krate flags 5 := - ⟨_, rfl, .inl ⟨_, _, [], (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] true))) (.copy (.generated .binding 1)))), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | 3 => exact fun3 - | 4 => exact fun4 - | 5 => exact fun5 - | _ + 6 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.RustStd diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R7.lean b/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R7.lean deleted file mode 100644 index b4357d8c2..000000000 --- a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R7.lean +++ /dev/null @@ -1,75 +0,0 @@ -import LexLeanPreservation.Core -import LexLeanPreservation.Values -import LexLeanPreservation.Primitives -import LexLeanPreservation.Fixed -import LexLeanPreservation.Keys -import LexLeanPreservation.Templates -import LexLeanPreservation.Validate -import Models.Flows -import Models.Glyphs -import Models.Ledger -import Models.Main -import Models.Pipeline -import Models.Policy -import Models.Recognizer -import Models.Session -import Models.Triage -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -set_option linter.unusedVariables false -namespace LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7 - -def __prog : _root_.LexLeanTarget.TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0], types := [.nat], result := (.result .nat (.pair .bool .bool)), - body := (.«let» 1 .nat (.var 0) (.cond (.call 1 [(.var 1)]) (.«let» 2 .nat (.call 2 [(.var 1)]) (.cond (.call 3 [(.var 1), (.var 2)]) (.build .ok (.result .nat (.pair .bool .bool)) [(.var 2)]) (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])])]))) (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])]))) }, - { parameters := [0], types := [.nat], result := .bool, - body := (.prim .natLe [(.var 0), (.value .nat (.nat 10))]) }, - { parameters := [0], types := [.nat], result := .nat, - body := (.call 4 [(.var 0)]) }, - { parameters := [0, 1], types := [.nat, .nat], result := .bool, - body := (.prim .natLe [(.var 1), (.var 0)]) }, - { parameters := [0], types := [.nat], result := .nat, - body := (.prim .natSub [(.var 0), (.value .nat (.nat 1))]) }] } - -def __fits_1 (x : Nat) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_1 (x : Nat) : _root_.LexLeanPreservation.FunRel __prog 1 [(_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_1 x) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Models.Ledger.withinCheck x))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe x (10 : Nat))) - -def __fits_4 (x : Nat) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_4 (x : Nat) : _root_.LexLeanPreservation.FunRel __prog 4 [(_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_4 x) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Models.Ledger.Guess x))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub x (1 : Nat))) - -def __fits_2 (_yinput : Nat) : Bool := - ((Bool.true && Bool.true) && (__fits_4 (_yinput))) - -attribute [local irreducible] Models.Ledger.Guess in -theorem __rel_2 (_yinput : Nat) : _root_.LexLeanPreservation.FunRel __prog 2 [(_root_.LexLeanTarget.TargetSyntax.Value.nat _yinput)] (_root_.LexLeanPreservation.Rel (__fits_2 _yinput) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Models.Ledger.GuessModel _yinput))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_4 (_yinput))) - -def __fits_3 (x : Nat) (y : Nat) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_3 (x : Nat) (y : Nat) : _root_.LexLeanPreservation.FunRel __prog 3 [(_root_.LexLeanTarget.TargetSyntax.Value.nat x), (_root_.LexLeanTarget.TargetSyntax.Value.nat y)] (_root_.LexLeanPreservation.Rel (__fits_3 x y) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Models.Ledger.belowCheck x y))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe y x)) - -def __fits_0 (x : Nat) : Bool := - (Bool.true && (let _ychecked1_input : Nat := x; (((Bool.true && Bool.true) && (__fits_1 (_ychecked1_input))) && (if (Models.Ledger.withinCheck (_ychecked1_input)) then (((Bool.true && Bool.true) && (__fits_2 (_ychecked1_input))) && (let _ychecked1_output : Nat := (Models.Ledger.GuessModel (_ychecked1_input)); (((Bool.true && (Bool.true && Bool.true)) && (__fits_3 (_ychecked1_input) (_ychecked1_output))) && (if (Models.Ledger.belowCheck (_ychecked1_input) (_ychecked1_output)) then ((Bool.true && Bool.true) && Bool.true) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) - -attribute [local irreducible] Models.Ledger.GuessModel Models.Ledger.belowCheck Models.Ledger.withinCheck in -theorem __rel_0 (x : Nat) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_0 x) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (Models.Main.guessChecked x))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (let _ychecked1_input : Nat := x; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && (__fits_2 (_ychecked1_input))) && (let _ychecked1_output : Nat := (Models.Ledger.GuessModel (_ychecked1_input)); (((Bool.true && (Bool.true && Bool.true)) && (__fits_3 (_ychecked1_input) (_ychecked1_output))) && (if (Models.Ledger.belowCheck (_ychecked1_input) (_ychecked1_output)) then ((Bool.true && Bool.true) && Bool.true) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (let _ychecked1_output : Nat := (Models.Ledger.GuessModel (_ychecked1_input)); (if (Models.Ledger.belowCheck (_ychecked1_input) (_ychecked1_output)) then (Except.ok (_ychecked1_output) : (Except (Prod Bool Bool) Nat)) else (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)))) else (Except.error (((Bool.false, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)))) (Models.Ledger.withinCheck (_ychecked1_input)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_1 (_ychecked1_input))) (fun _ => (let _ychecked1_output : Nat := (Models.Ledger.GuessModel (_ychecked1_input)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_2 (_ychecked1_input))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && Bool.true) && Bool.true) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Except.ok (_ychecked1_output) : (Except (Prod Bool Bool) Nat)) else (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)))) (Models.Ledger.belowCheck (_ychecked1_input) (_ychecked1_output)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_3 (_ychecked1_input) (_ychecked1_output))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error))))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)))) - -def denote (x : Nat) : _root_.LexLeanPreservation.Obs := - _root_.cond (__fits_0 x) (_root_.LexLeanPreservation.Obs.value (((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (Models.Main.guessChecked x)))) _root_.LexLeanPreservation.Obs.overflow - -theorem root (x : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_0 x) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (Models.Main.guessChecked x))) := - _root_.LexLeanPreservation.run_of_funRel (__rel_0 x) - -end LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7 diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R7/Compose/RustStd.lex.tex b/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R7/Compose/RustStd.lex.tex deleted file mode 100644 index 1d8ca9f6c..000000000 --- a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R7/Compose/RustStd.lex.tex +++ /dev/null @@ -1,421 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7, - LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.Compose.RustStd.root : @838 := @839 { - all: [LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.RustStd.program -@1 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.RustStd.krate -@2 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.RustStd.flags -@3 := Nat -@4 := #1 -@5 := LexLeanTarget.TargetSyntax.Value.nat -@6 := @5 @4 -@7 := LexLeanTarget.TargetSyntax.Ty.nat -@8 := LexLeanTarget.TargetSyntax.Program -@9 := LexLeanPreservation.Rust.RCrate -@10 := LexLeanPreservation.Rust.Flags -@11 := LexLeanPreservation.Rust.WT -@12 := #3 -@13 := @11 @12 -@14 := #2 -@16 := @13 @14 @4 -@17 := #0 -@18 := @5 @17 -@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 -@26 := LexLeanPreservation.Rust.wt_nat @0 -@27 := @11 @0 -@34 := {c : @9} -> {A : @10} -> (n : @3) -> @27 @14 @4 @18 @7 -@35 := @26 @1 -@36 := @27 @1 -@41 := {A : @10} -> (n : @3) -> @36 @4 @18 @7 -@42 := @35 @2 -@43 := @36 @2 -@46 := (n : @3) -> @43 @18 @7 -@47 := @42 @4 -@49 := @43 @6 @7 -@50 := LexLeanTarget.TargetSyntax.Value -@51 := List.nil.{0} -@52 := List.cons.{0} -@53 := @51 @50 -@54 := @52 @50 -@56 := @54 @6 @53 -@57 := Prod.{0, 0} -@59 := @57 @3 @50 -@60 := 0 -@64 := Prod.mk.{0, 0} @3 @50 @60 -@65 := @64 @6 -@66 := @51 @59 -@67 := @52 @59 -@69 := @67 @65 @66 -@70 := Bool.false -@71 := LexLeanTarget.TargetSyntax.Function -@72 := LexLeanTarget.TargetSyntax.Program.functions -@73 := @72 @0 -@74 := LexLeanTarget.TargetSyntax.Ty -@75 := @51 @3 -@76 := @51 @74 -@77 := LexLeanTarget.TargetSyntax.Ty.unit -@78 := LexLeanTarget.TargetSyntax.Value.unit -@81 := LexLeanTarget.TargetSyntax.Expr.value @77 @78 -@86 := LexLeanTarget.TargetSyntax.Function.mk @75 @76 @77 @81 -@91 := List.getD.{0} @71 @73 @60 @86 -@95 := fun (__e_n : @3) => LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.RustStd.root @17 @60 -@96 := LexLeanPreservation.Rust.WTL -@104 := {p : @8} -> {c : @9} -> {A : @10} -> @96 @14 @4 @17 @53 @76 -@106 := LexLeanPreservation.Rust.wtl_nil @0 -@107 := @96 @0 -@113 := {c : @9} -> {A : @10} -> @107 @4 @17 @53 @76 -@114 := @106 @1 -@115 := @107 @1 -@119 := {A : @10} -> @115 @17 @53 @76 -@120 := @114 @2 -@121 := @115 @2 -@122 := @121 @53 -@123 := @122 @76 -@124 := List.{0} -@125 := @124 @50 -@126 := @124 @74 -@127 := #6 -@128 := @11 @127 -@129 := #5 -@130 := @128 @129 -@131 := #4 -@134 := @130 @131 @12 @14 -@135 := #7 -@140 := @96 @135 @127 @129 @14 @4 -@141 := #8 -@144 := @96 @141 @135 @127 -@146 := @54 @129 @12 -@147 := @144 @146 -@148 := @52 @74 -@150 := @148 @131 @14 -@160 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {v : @50} -> {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @134) -> (hs : @140) -> @147 @150 -@162 := LexLeanPreservation.Rust.wtl_cons @0 -@182 := {c : @9} -> - {A : @10} -> - {v : @50} -> - {t : @74} -> - {vs : @125} -> - {ts : @126} -> - (h : @27 @129 @131 @12 @14) -> (hs : @107 @127 @129 @14 @4) -> @107 @135 @127 @146 @150 -@183 := @162 @1 -@199 := {A : @10} -> - {v : @50} -> - {t : @74} -> - {vs : @125} -> - {ts : @126} -> (h : @36 @131 @12 @14) -> (hs : @115 @129 @14 @4) -> @115 @127 @146 @150 -@200 := @183 @2 -@202 := @43 @12 @14 -@204 := @121 @14 @4 -@212 := {v : @50} -> - {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @202) -> (hs : @204) -> @121 @146 @150 -@213 := @200 @6 -@214 := @5 @131 -@216 := @43 @214 @14 -@217 := @5 @127 -@218 := @54 @217 -@226 := {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @216) -> (hs : @204) -> @121 (@218 @12) @150 -@227 := @213 @7 -@228 := @5 @12 -@230 := @43 @228 @7 -@231 := @5 @129 -@232 := @54 @231 -@234 := @121 (@232 @12) -@235 := @148 @7 -@236 := @235 @14 -@241 := {vs : @125} -> {ts : @126} -> (h : @230) -> (hs : @204) -> @234 @236 -@242 := @227 @53 -@243 := @5 @14 -@245 := @43 @243 @7 -@246 := @122 @4 -@248 := @54 @214 @53 -@249 := @121 @248 -@253 := {ts : @126} -> (h : @245) -> (hs : @246) -> @249 @236 -@254 := @242 @76 -@256 := @54 @228 @53 -@257 := @121 @256 -@258 := @235 @76 -@261 := (h : @49) -> (hs : @123) -> @257 @258 -@262 := @254 @47 -@264 := @54 @243 @53 -@265 := @121 @264 -@267 := (hs : @123) -> @265 @258 -@268 := @262 @120 -@269 := @121 @56 -@270 := @269 @258 -@271 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.denote -@272 := @271 @4 -@273 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.__fits_0 -@274 := @273 @4 -@276 := Models.Main.guessChecked @4 -@277 := Bool -@279 := @57 @277 @277 -@280 := LexLeanTarget.TargetSyntax.Value.bool -@285 := LexLeanPreservation.encPair @277 @277 @280 @280 -@291 := LexLeanPreservation.encExcept @279 @3 @285 @5 @276 -@293 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.root @4 -@294 := Ne.{1} -@295 := LexLeanPreservation.Obs -@296 := @294 @295 -@297 := LexLeanPreservation.Rel -@300 := @296 (@297 @4 @17) -@301 := LexLeanPreservation.Obs.stuck -@304 := (f : @277) -> (v : @50) -> @300 @301 -@306 := LexLeanPreservation.Rust.rel_ne_stuck @274 -@312 := (v : @50) -> @296 (@297 (@273 @14) @17) @301 -@313 := @306 @291 -@317 := @296 (@297 @274 @291) @301 -@318 := @124 @59 -@319 := LexLeanPreservation.Rust.FunSem -@320 := #9 -@326 := (n : @3) -> @319 @320 @141 @135 @17 @127 -@327 := Eq.{1} -@328 := Option.{0} -@329 := @328 @71 -@330 := @327 @329 -@337 := LexLeanRuntime.index (@124 @71) @71 (LexLeanRuntime.instIndexableList @71) -@341 := @330 (@337 (@72 @320) @127) -@342 := Option.some.{0} -@343 := @342 @71 -@344 := @343 @129 -@345 := @341 @344 -@346 := #10 -@350 := @96 @346 @320 @141 @129 -@351 := LexLeanTarget.TargetSyntax.Function.types -@352 := @351 @127 -@353 := @350 @352 -@354 := @328 @318 -@355 := @327 @354 -@356 := LexLeanTarget.TargetSemantics.bindAll -@357 := LexLeanTarget.TargetSyntax.Function.parameters -@362 := @355 (@356 (@357 @135) @127 @66) -@363 := @342 @318 -@364 := @363 @129 -@365 := @362 @364 -@366 := @328 @277 -@367 := @327 @366 -@368 := LexLeanPreservation.Rust.fnFallible -@369 := #11 -@372 := @367 (@368 @369 @320) -@373 := @342 @277 -@374 := @373 @129 -@375 := @372 @374 -@376 := LexLeanPreservation.RunConv -@377 := #13 -@381 := @376 @377 @346 @141 @129 -@383 := @296 @127 @301 -@384 := Exists.{1} -@385 := LexLeanPreservation.Rust.ROut -@386 := @384 @385 -@387 := And -@388 := LexLeanPreservation.Rust.RealizesFn -@392 := @387 (@388 @320 @141 @17) -@393 := LexLeanPreservation.Rust.RCI -@395 := @393 #15 -@396 := LexLeanPreservation.Rust.fnIdent -@397 := @396 @377 -@404 := (hne : @383) -> @386 (fun (ro : @385) => @392 (@395 @397 @369 @17)) -@419 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {f : @3} -> - {fn : @71} -> - {args : @125} -> - {env : @318} -> - {F : @277} -> - {o : @295} -> - (hB : @326) -> - (hfn : @345) -> (hwt : @353) -> (hbind : @365) -> (hF : @375) -> (hA : @381) -> @404 -@421 := LexLeanPreservation.Rust.compose @0 -@422 := @319 @0 -@427 := (n : @3) -> @422 @141 @135 @17 @127 -@428 := @337 @73 -@431 := @330 (@428 @127) @344 -@435 := @107 @320 @141 @129 @352 -@436 := @376 @0 -@439 := @436 @346 @141 @129 -@453 := {c : @9} -> - {A : @10} -> - {f : @3} -> - {fn : @71} -> - {args : @125} -> - {env : @318} -> - {F : @277} -> - {o : @295} -> - (hB : @427) -> - (hfn : @431) -> (hwt : @435) -> (hbind : @365) -> (hF : @375) -> (hA : @439) -> @404 -@454 := @421 @1 -@455 := @422 @1 -@459 := (n : @3) -> @455 @135 @17 @127 -@462 := @115 @141 @129 @352 -@463 := @368 @1 -@466 := @367 (@463 @320) @374 -@467 := @393 @1 -@477 := (hbind : @365) -> - (hF : @466) -> (hA : @439) -> (hne : @383) -> @386 (fun (ro : @385) => @392 (@467 @397 @369 @17)) -@487 := {A : @10} -> - {f : @3} -> - {fn : @71} -> - {args : @125} -> - {env : @318} -> {F : @277} -> {o : @295} -> (hB : @459) -> (hfn : @431) -> (hwt : @462) -> @477 -@488 := @454 @2 -@490 := @455 @2 @17 -@492 := (n : @3) -> @490 @127 -@493 := @121 @129 -@494 := @493 @352 -@503 := {f : @3} -> - {fn : @71} -> - {args : @125} -> - {env : @318} -> {F : @277} -> {o : @295} -> (hB : @492) -> (hfn : @431) -> (hwt : @494) -> @477 -@504 := @488 @60 -@506 := (n : @3) -> @490 @60 -@507 := @428 @60 -@508 := @330 @507 -@509 := @508 @344 -@510 := @463 @60 -@511 := @367 @510 -@512 := @511 @374 -@513 := @436 @60 -@515 := @513 @141 @129 -@517 := @467 (@396 @60) -@525 := (hF : @512) -> (hA : @515) -> (hne : @383) -> @386 (fun (ro : @385) => @392 (@517 @369 @17)) -@534 := {fn : @71} -> - {args : @125} -> - {env : @318} -> - {F : @277} -> {o : @295} -> (hB : @506) -> (hfn : @509) -> (hwt : @494) -> (hbind : @365) -> @525 -@535 := @504 @91 -@537 := @508 (@343 @91) -@538 := @351 @91 -@539 := @493 @538 -@541 := @356 (@357 @91) -@553 := {args : @125} -> - {env : @318} -> - {F : @277} -> - {o : @295} -> - (hB : @506) -> (hfn : @537) -> (hwt : @539) -> (hbind : @355 (@541 @127 @66) @364) -> @525 -@554 := @535 @56 -@555 := @218 @53 -@557 := @121 @555 @538 -@560 := @54 (@5 @135) @53 -@564 := @355 (@541 @560 @66) @364 -@567 := @54 (@5 @320) @53 -@588 := {env : @318} -> - {F : @277} -> - {o : @295} -> - (hB : @506) -> - (hfn : @537) -> - (hwt : @557) -> - (hbind : @564) -> - (hF : @512) -> - (hA : @513 @567 @129) -> - (hne : @383) -> @386 (fun (ro : @385) => @392 (@517 (@54 (@5 #12) @53) @17)) -@589 := @554 @69 -@590 := @232 @53 -@592 := @121 @590 @538 -@600 := @355 (@541 @555 @66) (@363 (@67 (@64 @217) @66)) -@603 := @54 (@5 @141) @53 -@622 := {F : @277} -> - {o : @295} -> - (hB : @506) -> - (hfn : @537) -> - (hwt : @592) -> - (hbind : @600) -> - (hF : @512) -> - (hA : @513 @603 @129) -> - (hne : @383) -> @386 (fun (ro : @385) => @392 (@517 (@54 (@5 @369) @53) @17)) -@623 := @589 @70 -@624 := @249 @538 -@632 := @355 (@541 @590 @66) (@363 (@67 (@64 @231) @66)) -@634 := @511 (@373 @70) -@636 := @513 @560 @129 -@637 := @388 @70 -@656 := {o : @295} -> - (hB : @506) -> - (hfn : @537) -> - (hwt : @624) -> - (hbind : @632) -> - (hF : @634) -> - (hA : @636) -> - (hne : @383) -> @386 (fun (ro : @385) => @387 (@637 @141 @17) (@517 (@54 (@5 @346) @53) @17)) -@657 := @623 @272 -@658 := @257 @538 -@666 := @355 (@541 @248 @66) (@363 (@67 (@64 @214) @66)) -@667 := @513 @555 -@668 := @271 @127 -@669 := @667 @668 -@670 := @271 @135 -@688 := (hB : @506) -> - (hfn : @537) -> - (hwt : @658) -> - (hbind : @666) -> - (hF : @634) -> - (hA : @669) -> - (hne : @296 @670 @301) -> @386 (fun (ro : @385) => @387 (@637 (@271 @320) @17) (@517 @567 @17)) -@689 := @657 @95 -@690 := @265 @538 -@698 := @355 (@541 @256 @66) (@363 (@67 (@64 @228) @66)) -@699 := @513 @590 -@700 := @271 @129 -@718 := (hfn : @537) -> - (hwt : @690) -> - (hbind : @698) -> - (hF : @634) -> - (hA : @699 @700) -> - (hne : @296 @668 @301) -> @386 (fun (ro : @385) => @387 (@637 (@271 @141) @17) (@517 @603 @17)) -@719 := Eq.refl.{1} -@722 := @689 (@719 @329 @507) -@723 := @269 @538 -@731 := @355 (@541 @264 @66) (@363 (@67 (@64 @243) @66)) -@732 := @513 @248 -@733 := @271 @131 -@749 := (hwt : @723) -> - (hbind : @731) -> - (hF : @634) -> - (hA : @732 @733) -> - (hne : @296 @700 @301) -> @386 (fun (ro : @385) => @387 (@637 @670 @17) (@517 @560 @17)) -@750 := @722 @268 -@752 := @541 @56 @66 -@755 := @355 @752 (@363 @69) -@756 := @513 @256 -@757 := @271 @12 -@772 := (hbind : @755) -> - (hF : @634) -> - (hA : @756 @757) -> - (hne : @296 @733 @301) -> @386 (fun (ro : @385) => @387 (@637 @668 @17) (@517 @555 @17)) -@775 := @750 (@719 @354 @752) -@776 := @513 @264 -@777 := @271 @14 -@791 := (hF : @634) -> - (hA : @776 @777) -> - (hne : @296 @757 @301) -> @386 (fun (ro : @385) => @387 (@637 @700 @17) (@517 @590 @17)) -@794 := @775 (@719 @366 @510) -@808 := (hA : @513 @56 @272) -> - (hne : @296 @777 @301) -> @386 (fun (ro : @385) => @387 (@637 @733 @17) (@517 @248 @17)) -@809 := @794 @293 -@820 := (hne : @296 @272 @301) -> @386 (fun (ro : @385) => @387 (@637 @757 @17) (@517 @256 @17)) -@821 := @809 @313 -@827 := @387 (@637 @777 @17) (@517 @264 @17) -@829 := @386 (fun (ro : @385) => @827) -@831 := @386 (fun (__e_ro : @385) => @827) -@835 := LexLeanPreservation.Rust.RepresentableL (@54 @18 @53) -@836 := (__e_hrep : @835) -> @831 -@837 := fun (__e_hrep : @835) => @821 -@838 := (x : @3) -> @836 -@839 := fun (x : @3) => @837 -\end{coremodule} -\end{lexlean} diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R7/RustStd.lean b/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R7/RustStd.lean deleted file mode 100644 index ff86ff29a..000000000 --- a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R7/RustStd.lean +++ /dev/null @@ -1,65 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0], types := [.nat], result := (.result .nat (.pair .bool .bool)), - body := (.«let» 1 .nat (.var 0) (.cond (.call 1 [(.var 1)]) (.«let» 2 .nat (.call 2 [(.var 1)]) (.cond (.call 3 [(.var 1), (.var 2)]) (.build .ok (.result .nat (.pair .bool .bool)) [(.var 2)]) (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])])]))) (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])]))) }, - { parameters := [0], types := [.nat], result := .bool, - body := (.prim .natLe [(.var 0), (.value .nat (.nat 10))]) }, - { parameters := [0], types := [.nat], result := .nat, - body := (.call 4 [(.var 0)]) }, - { parameters := [0, 1], types := [.nat, .nat], result := .bool, - body := (.prim .natLe [(.var 1), (.var 0)]) }, - { parameters := [0], types := [.nat], result := .nat, - body := (.prim .natSub [(.var 0), (.value .nat (.nat 1))]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.result .nat (.pair .bool .bool)) (.mk [(.mk (.bind (.generated .binding 1)) (some .nat) (.copy (.generated .binding 0)))] (.cond (.call (.function 1) [(.copy (.generated .binding 1))] false) (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.call (.function 2) [(.copy (.generated .binding 1))] false))] (.cond (.call (.function 3) [(.copy (.generated .binding 1)), (.copy (.generated .binding 2))] false) (.mk [] (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))])) (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))) (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))))), - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 10)))] (.call (.runtime .natLe) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false))), - (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] .nat (.mk [] (.call (.function 4) [(.copy (.generated .binding 0))] false))), - (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 0)))] (.call (.runtime .natLe) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))), - (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] .nat (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false)))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some .nat) (.copy (.generated .binding 0)))], (.cond (.call (.function 1) [(.copy (.generated .binding 1))] false) (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.call (.function 2) [(.copy (.generated .binding 1))] false))] (.cond (.call (.function 3) [(.copy (.generated .binding 1)), (.copy (.generated .binding 2))] false) (.mk [] (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))])) (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))) (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))), [(0, .nat, (some 0))], rfl, rfl, - (Corr.letBind (Corr.var rfl rfl) rfl (Corr.cond (lc := []) (ce := (.call (.function 1) [(.copy (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .binding 2)) (some .nat) (.call (.function 2) [(.copy (.generated .binding 1))] false))]) (ta := (.cond (.call (.function 3) [(.copy (.generated .binding 1)), (.copy (.generated .binding 2))] false) (.mk [] (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))])) (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))) (lb := []) (tb := (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))])) (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := []) (ce := (.call (.function 3) [(.copy (.generated .binding 1)), (.copy (.generated .binding 2))] false)) (lk := []) (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))])) (lb := []) (tb := (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])) (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl) (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)))) (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl))))⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 10)))], (.call (.runtime .natLe) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false), [(0, .nat, (some 0))], rfl, rfl, - (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 4) [(.copy (.generated .binding 0))] false), [(0, .nat, (some 0))], rfl, rfl, - (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun3 : FunOK program krate flags 3 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 0)))], (.call (.runtime .natLe) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun4 : FunOK program krate flags 4 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 1)))], (.call (.runtime .natSub) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false), [(0, .nat, (some 0))], rfl, rfl, - (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | 3 => exact fun3 - | 4 => exact fun4 - | _ + 5 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.RustStd diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R8.lean b/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R8.lean deleted file mode 100644 index e5285606d..000000000 --- a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R8.lean +++ /dev/null @@ -1,118 +0,0 @@ -import LexLeanPreservation.Core -import LexLeanPreservation.Values -import LexLeanPreservation.Primitives -import LexLeanPreservation.Fixed -import LexLeanPreservation.Keys -import LexLeanPreservation.Templates -import LexLeanPreservation.Validate -import Models.Flows -import Models.Glyphs -import Models.Ledger -import Models.Main -import Models.Pipeline -import Models.Policy -import Models.Recognizer -import Models.Session -import Models.Triage -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -set_option linter.unusedVariables false -namespace LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8 - -def __prog : _root_.LexLeanTarget.TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1], types := [.nat, .nat], result := (.result (.pair .nat (.result .nat (.pair .bool .bool))) (.pair .bool .bool)), - body := (.«let» 2 .nat (.var 0) (.«let» 3 .nat (.var 1) (.cond (.call 1 [(.var 2)]) (.«let» 4 (.pair .nat (.result .nat (.pair .bool .bool))) (.call 2 [(.var 2), (.var 3)]) (.cond (.call 1 [(.first (.var 4))]) (.build .ok (.result (.pair .nat (.result .nat (.pair .bool .bool))) (.pair .bool .bool)) [(.var 4)]) (.build .error (.result (.pair .nat (.result .nat (.pair .bool .bool))) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .true .bool [])])]))) (.build .error (.result (.pair .nat (.result .nat (.pair .bool .bool))) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])])])))) }, - { parameters := [0], types := [.nat], result := .bool, - body := (.prim .natLe [(.var 0), (.value .nat (.nat 100))]) }, - { parameters := [0, 1], types := [.nat, .nat], result := (.pair .nat (.result .nat (.pair .bool .bool))), - body := (.call 3 [(.var 0), (.var 1)]) }, - { parameters := [0, 1], types := [.nat, .nat], result := (.pair .nat (.result .nat (.pair .bool .bool))), - body := (.«let» 2 (.pair .nat .nat) (.call 4 [(.var 0), (.var 1)]) (.«let» 3 .nat (.second (.var 2)) (.«let» 4 .nat (.first (.var 2)) (.cond (.call 5 [(.var 3)]) (.«let» 5 .nat (.call 6 [(.var 3)]) (.cond (.call 7 [(.var 3), (.var 5)]) (.build .pair (.pair .nat (.result .nat (.pair .bool .bool))) [(.var 4), (.build .ok (.result .nat (.pair .bool .bool)) [(.var 5)])]) (.build .pair (.pair .nat (.result .nat (.pair .bool .bool))) [(.var 0), (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])])])]))) (.build .pair (.pair .nat (.result .nat (.pair .bool .bool))) [(.var 0), (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])])]))))) }, - { parameters := [0, 1], types := [.nat, .nat], result := (.pair .nat .nat), - body := (.call 8 [(.var 0), (.var 1)]) }, - { parameters := [0], types := [.nat], result := .bool, - body := (.prim .natLe [(.var 0), (.value .nat (.nat 10))]) }, - { parameters := [0], types := [.nat], result := .nat, - body := (.call 9 [(.var 0)]) }, - { parameters := [0, 1], types := [.nat, .nat], result := .bool, - body := (.prim .natLe [(.var 1), (.var 0)]) }, - { parameters := [0, 1], types := [.nat, .nat], result := (.pair .nat .nat), - body := (.«let» 2 .nat (.prim .natAdd [(.var 0), (.var 1)]) (.build .pair (.pair .nat .nat) [(.prim .natSub [(.var 2), (.prim .natSub [(.var 2), (.value .nat (.nat 100))])]), (.prim .natSub [(.var 2), (.prim .natSub [(.var 2), (.value .nat (.nat 100))])])])) }, - { parameters := [0], types := [.nat], result := .nat, - body := (.prim .natSub [(.var 0), (.value .nat (.nat 1))]) }] } - -def __fits_1 (s : Nat) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_1 (s : Nat) : _root_.LexLeanPreservation.FunRel __prog 1 [(_root_.LexLeanTarget.TargetSyntax.Value.nat s)] (_root_.LexLeanPreservation.Rel (__fits_1 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Models.Ledger.cappedCheck s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe s (100 : Nat))) - -def __fits_8 (s : Nat) (x : Nat) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (s + x) 18446744073709551616)) && (let total : Nat := (s + x); ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true))) - -theorem __rel_8 (s : Nat) (x : Nat) : _root_.LexLeanPreservation.FunRel __prog 8 [(_root_.LexLeanTarget.TargetSyntax.Value.nat s), (_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_8 s x) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) (Models.Ledger.Clamp s x))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (let total : Nat := (s + x); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd s x)) (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub total (100 : Nat))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub total (_root_.LexLeanRuntime.subtract (total) ((100 : Nat)) : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub total (100 : Nat))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub total (_root_.LexLeanRuntime.subtract (total) ((100 : Nat)) : Nat))) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair)) - -def __fits_4 (_ystate : Nat) (_yinput : Nat) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && (__fits_8 (_ystate) (_yinput))) - -attribute [local irreducible] Models.Ledger.Clamp in -theorem __rel_4 (_ystate : Nat) (_yinput : Nat) : _root_.LexLeanPreservation.FunRel __prog 4 [(_root_.LexLeanTarget.TargetSyntax.Value.nat _ystate), (_root_.LexLeanTarget.TargetSyntax.Value.nat _yinput)] (_root_.LexLeanPreservation.Rel (__fits_4 _ystate _yinput) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) (Models.Ledger.ClampModel _ystate _yinput))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_8 (_ystate) (_yinput))) - -def __fits_5 (x : Nat) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_5 (x : Nat) : _root_.LexLeanPreservation.FunRel __prog 5 [(_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_5 x) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Models.Ledger.withinCheck x))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe x (10 : Nat))) - -def __fits_9 (x : Nat) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_9 (x : Nat) : _root_.LexLeanPreservation.FunRel __prog 9 [(_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_9 x) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Models.Ledger.Guess x))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub x (1 : Nat))) - -def __fits_6 (_yinput : Nat) : Bool := - ((Bool.true && Bool.true) && (__fits_9 (_yinput))) - -attribute [local irreducible] Models.Ledger.Guess in -theorem __rel_6 (_yinput : Nat) : _root_.LexLeanPreservation.FunRel __prog 6 [(_root_.LexLeanTarget.TargetSyntax.Value.nat _yinput)] (_root_.LexLeanPreservation.Rel (__fits_6 _yinput) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Models.Ledger.GuessModel _yinput))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_9 (_yinput))) - -def __fits_7 (x : Nat) (y : Nat) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_7 (x : Nat) (y : Nat) : _root_.LexLeanPreservation.FunRel __prog 7 [(_root_.LexLeanTarget.TargetSyntax.Value.nat x), (_root_.LexLeanTarget.TargetSyntax.Value.nat y)] (_root_.LexLeanPreservation.Rel (__fits_7 x y) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Models.Ledger.belowCheck x y))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe y x)) - -def __fits_3 (s : Nat) (x : Nat) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && (__fits_4 (s) (x))) && (let _ystep1 : (Prod Nat Nat) := (Models.Ledger.ClampModel (s) (x)); (Bool.true && (let _ystage1 : Nat := (_ystep1).2; (Bool.true && (let _ystate1 : Nat := (_ystep1).1; (((Bool.true && Bool.true) && (__fits_5 (_ystage1))) && (if (Models.Ledger.withinCheck (_ystage1)) then (((Bool.true && Bool.true) && (__fits_6 (_ystage1))) && (let _ystage2 : Nat := (Models.Ledger.GuessModel (_ystage1)); (((Bool.true && (Bool.true && Bool.true)) && (__fits_7 (_ystage1) (_ystage2))) && (if (Models.Ledger.belowCheck (_ystage1) (_ystage2)) then ((Bool.true && (((Bool.true && Bool.true) && Bool.true) && Bool.true)) && Bool.true) else ((Bool.true && ((((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) && Bool.true)) && Bool.true))))) else ((Bool.true && ((((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) && Bool.true)) && Bool.true))))))))) - -attribute [local irreducible] Models.Ledger.ClampModel Models.Ledger.GuessModel Models.Ledger.belowCheck Models.Ledger.withinCheck in -theorem __rel_3 (s : Nat) (x : Nat) : _root_.LexLeanPreservation.FunRel __prog 3 [(_root_.LexLeanTarget.TargetSyntax.Value.nat s), (_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_3 s x) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Models.Flows.ClampGuess s x))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (let _ystep1 : (Prod Nat Nat) := (Models.Ledger.ClampModel (s) (x)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_4 (s) (x))) (let _ystage1 : Nat := (_ystep1).2; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (let _ystate1 : Nat := (_ystep1).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && (__fits_6 (_ystage1))) && (let _ystage2 : Nat := (Models.Ledger.GuessModel (_ystage1)); (((Bool.true && (Bool.true && Bool.true)) && (__fits_7 (_ystage1) (_ystage2))) && (if (Models.Ledger.belowCheck (_ystage1) (_ystage2)) then ((Bool.true && (((Bool.true && Bool.true) && Bool.true) && Bool.true)) && Bool.true) else ((Bool.true && ((((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) && Bool.true)) && Bool.true))))) else ((Bool.true && ((((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) && Bool.true)) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat)) (if __b then (let _ystage2 : Nat := (Models.Ledger.GuessModel (_ystage1)); (if (Models.Ledger.belowCheck (_ystage1) (_ystage2)) then (_ystate1, (Except.ok (_ystage2) : (Except (Prod Bool Bool) Nat))) else (s, (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat))))) else (s, (Except.error (((Bool.false, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat))))) (Models.Ledger.withinCheck (_ystage1)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_5 (_ystage1))) (fun _ => (let _ystage2 : Nat := (Models.Ledger.GuessModel (_ystage1)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_6 (_ystage1))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && (((Bool.true && Bool.true) && Bool.true) && Bool.true)) && Bool.true) else ((Bool.true && ((((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) && Bool.true)) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat)) (if __b then (_ystate1, (Except.ok (_ystage2) : (Except (Prod Bool Bool) Nat))) else (s, (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat))))) (Models.Ledger.belowCheck (_ystage1) (_ystage2)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_7 (_ystage1) (_ystage2))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair)))))) - -def __fits_2 (_ystate : Nat) (_yinput : Nat) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && (__fits_3 (_ystate) (_yinput))) - -attribute [local irreducible] Models.Flows.ClampGuess in -theorem __rel_2 (_ystate : Nat) (_yinput : Nat) : _root_.LexLeanPreservation.FunRel __prog 2 [(_root_.LexLeanTarget.TargetSyntax.Value.nat _ystate), (_root_.LexLeanTarget.TargetSyntax.Value.nat _yinput)] (_root_.LexLeanPreservation.Rel (__fits_2 _ystate _yinput) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Models.Flows.FlowModel _ystate _yinput))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_3 (_ystate) (_yinput))) - -def __fits_0 (s : Nat) (x : Nat) : Bool := - (Bool.true && (let _ychecked1_state : Nat := s; (Bool.true && (let _ychecked1_input : Nat := x; (((Bool.true && Bool.true) && (__fits_1 (_ychecked1_state))) && (if (Models.Ledger.cappedCheck (_ychecked1_state)) then (((Bool.true && (Bool.true && Bool.true)) && (__fits_2 (_ychecked1_state) (_ychecked1_input))) && (let _ychecked1_step : (Prod Nat (Except (Prod Bool Bool) Nat)) := (Models.Flows.FlowModel (_ychecked1_state) (_ychecked1_input)); (((Bool.true && Bool.true) && (__fits_1 ((_ychecked1_step).1))) && (if (Models.Ledger.cappedCheck ((_ychecked1_step).1)) then ((Bool.true && Bool.true) && Bool.true) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))))) - -attribute [local irreducible] Models.Flows.FlowModel Models.Ledger.cappedCheck in -theorem __rel_0 (s : Nat) (x : Nat) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat s), (_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_0 s x) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat))) (Models.Main.flowStep s x))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (let _ychecked1_state : Nat := s; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_var rfl) (let _ychecked1_input : Nat := x; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (Bool.true && Bool.true)) && (__fits_2 (_ychecked1_state) (_ychecked1_input))) && (let _ychecked1_step : (Prod Nat (Except (Prod Bool Bool) Nat)) := (Models.Flows.FlowModel (_ychecked1_state) (_ychecked1_input)); (((Bool.true && Bool.true) && (__fits_1 ((_ychecked1_step).1))) && (if (Models.Ledger.cappedCheck ((_ychecked1_step).1)) then ((Bool.true && Bool.true) && Bool.true) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat))) (if __b then (let _ychecked1_step : (Prod Nat (Except (Prod Bool Bool) Nat)) := (Models.Flows.FlowModel (_ychecked1_state) (_ychecked1_input)); (if (Models.Ledger.cappedCheck ((_ychecked1_step).1)) then (Except.ok (_ychecked1_step) : (Except (Prod Bool Bool) (Prod Nat (Except (Prod Bool Bool) Nat)))) else (Except.error (((Bool.true, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod Nat (Except (Prod Bool Bool) Nat)))))) else (Except.error (((Bool.false, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod Nat (Except (Prod Bool Bool) Nat)))))) (Models.Ledger.cappedCheck (_ychecked1_state)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_1 (_ychecked1_state))) (fun _ => (let _ychecked1_step : (Prod Nat (Except (Prod Bool Bool) Nat)) := (Models.Flows.FlowModel (_ychecked1_state) (_ychecked1_input)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_2 (_ychecked1_state) (_ychecked1_input))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && Bool.true) && Bool.true) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat))) (if __b then (Except.ok (_ychecked1_step) : (Except (Prod Bool Bool) (Prod Nat (Except (Prod Bool Bool) Nat)))) else (Except.error (((Bool.true, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod Nat (Except (Prod Bool Bool) Nat)))))) (Models.Ledger.cappedCheck ((_ychecked1_step).1)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil) (__rel_1 ((_ychecked1_step).1))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error))))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error))))) - -def denote (s : Nat) (x : Nat) : _root_.LexLeanPreservation.Obs := - _root_.cond (__fits_0 s x) (_root_.LexLeanPreservation.Obs.value (((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat))) (Models.Main.flowStep s x)))) _root_.LexLeanPreservation.Obs.overflow - -theorem root (s : Nat) (x : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat s), (_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_0 s x) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat))) (Models.Main.flowStep s x))) := - _root_.LexLeanPreservation.run_of_funRel (__rel_0 s x) - -end LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8 diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R8/Compose/RustStd.lex.tex b/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R8/Compose/RustStd.lex.tex deleted file mode 100644 index 73fe7e96b..000000000 --- a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R8/Compose/RustStd.lex.tex +++ /dev/null @@ -1,474 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8, - LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.Compose.RustStd.root : @938 := @939 { - all: [LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.RustStd.program -@1 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.RustStd.krate -@2 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.RustStd.flags -@3 := Nat -@4 := #2 -@5 := LexLeanTarget.TargetSyntax.Value.nat -@6 := @5 @4 -@7 := LexLeanTarget.TargetSyntax.Ty.nat -@8 := LexLeanTarget.TargetSyntax.Program -@9 := LexLeanPreservation.Rust.RCrate -@10 := LexLeanPreservation.Rust.Flags -@11 := LexLeanPreservation.Rust.WT -@12 := #3 -@14 := @11 @12 @4 -@15 := #1 -@16 := @14 @15 -@17 := #0 -@18 := @5 @17 -@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 -@26 := LexLeanPreservation.Rust.wt_nat @0 -@27 := @11 @0 -@34 := {c : @9} -> {A : @10} -> (n : @3) -> @27 @4 @15 @18 @7 -@35 := @26 @1 -@36 := @27 @1 -@41 := {A : @10} -> (n : @3) -> @36 @15 @18 @7 -@42 := @35 @2 -@43 := @36 @2 -@46 := (n : @3) -> @43 @18 @7 -@47 := @42 @4 -@49 := @43 @6 @7 -@50 := @5 @15 -@51 := @42 @15 -@53 := @43 @50 @7 -@54 := LexLeanTarget.TargetSyntax.Value -@55 := List.nil.{0} -@56 := List.cons.{0} -@57 := @55 @54 -@58 := @56 @54 -@59 := @58 @50 -@60 := @59 @57 -@61 := @58 @6 -@62 := @61 @60 -@63 := Prod.{0, 0} -@64 := @63 @3 -@65 := @64 @54 -@66 := 1 -@69 := Prod.mk.{0, 0} @3 @54 -@70 := @69 @66 -@71 := @70 @50 -@72 := 0 -@73 := @69 @72 -@74 := @73 @6 -@75 := @55 @65 -@76 := @56 @65 -@78 := @76 @74 @75 -@80 := @76 @71 @78 -@81 := Bool.true -@82 := LexLeanTarget.TargetSyntax.Function -@83 := LexLeanTarget.TargetSyntax.Program.functions -@84 := @83 @0 -@85 := LexLeanTarget.TargetSyntax.Ty -@86 := @55 @3 -@87 := @55 @85 -@88 := LexLeanTarget.TargetSyntax.Ty.unit -@89 := LexLeanTarget.TargetSyntax.Value.unit -@92 := LexLeanTarget.TargetSyntax.Expr.value @88 @89 -@97 := LexLeanTarget.TargetSyntax.Function.mk @86 @87 @88 @92 -@102 := List.getD.{0} @82 @84 @72 @97 -@106 := fun (__e_n : @3) => - LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.RustStd.root @17 @72 -@107 := LexLeanPreservation.Rust.WTL -@115 := {p : @8} -> {c : @9} -> {A : @10} -> @107 @4 @15 @17 @57 @87 -@117 := LexLeanPreservation.Rust.wtl_nil @0 -@118 := @107 @0 -@124 := {c : @9} -> {A : @10} -> @118 @15 @17 @57 @87 -@125 := @117 @1 -@126 := @118 @1 -@130 := {A : @10} -> @126 @17 @57 @87 -@131 := @125 @2 -@132 := @126 @2 -@133 := @132 @57 -@134 := @133 @87 -@135 := List.{0} -@136 := @135 @54 -@137 := @135 @85 -@138 := #6 -@139 := @11 @138 -@140 := #5 -@141 := @139 @140 -@142 := #4 -@145 := @141 @142 @12 @4 -@146 := #7 -@151 := @107 @146 @138 @140 @4 @15 -@152 := #8 -@155 := @107 @152 @146 @138 -@157 := @58 @140 @12 -@158 := @155 @157 -@159 := @56 @85 -@161 := @159 @142 @4 -@171 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {v : @54} -> {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @145) -> (hs : @151) -> @158 @161 -@173 := LexLeanPreservation.Rust.wtl_cons @0 -@193 := {c : @9} -> - {A : @10} -> - {v : @54} -> - {t : @85} -> - {vs : @136} -> - {ts : @137} -> - (h : @27 @140 @142 @12 @4) -> (hs : @118 @138 @140 @4 @15) -> @118 @146 @138 @157 @161 -@194 := @173 @1 -@210 := {A : @10} -> - {v : @54} -> - {t : @85} -> - {vs : @136} -> - {ts : @137} -> (h : @36 @142 @12 @4) -> (hs : @126 @140 @4 @15) -> @126 @138 @157 @161 -@211 := @194 @2 -@213 := @43 @12 @4 -@215 := @132 @4 @15 -@223 := {v : @54} -> - {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @213) -> (hs : @215) -> @132 @157 @161 -@224 := @211 @50 -@225 := @5 @142 -@226 := @43 @225 -@227 := @226 @4 -@228 := @5 @138 -@229 := @58 @228 -@231 := @132 (@229 @12) -@237 := {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @227) -> (hs : @215) -> @231 @161 -@238 := @224 @7 -@239 := @5 @12 -@241 := @43 @239 @7 -@242 := @5 @140 -@243 := @58 @242 -@245 := @132 (@243 @12) -@246 := @159 @7 -@247 := @246 @4 -@252 := {vs : @136} -> {ts : @137} -> (h : @241) -> (hs : @215) -> @245 @247 -@253 := @238 @57 -@254 := @133 @15 -@255 := @58 @225 -@256 := @255 @57 -@261 := {ts : @137} -> (h : @49) -> (hs : @254) -> @132 @256 @247 -@262 := @253 @87 -@263 := @58 @239 -@264 := @263 @57 -@265 := @132 @264 -@266 := @246 @87 -@269 := (h : @53) -> (hs : @134) -> @265 @266 -@270 := @262 @51 -@271 := @61 @57 -@273 := @132 @271 @266 -@274 := (hs : @134) -> @273 -@275 := @270 @131 -@277 := @132 @60 @266 -@278 := @211 @6 -@280 := @43 @242 @4 -@281 := @5 @146 -@282 := @58 @281 -@290 := {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @280) -> (hs : @215) -> @132 (@282 @12) @161 -@291 := @278 @7 -@297 := {vs : @136} -> {ts : @137} -> (h : @226 @7) -> (hs : @215) -> @231 @247 -@298 := @291 @60 -@299 := @265 @15 -@300 := @243 @256 -@301 := @132 @300 -@305 := {ts : @137} -> (h : @241) -> (hs : @299) -> @301 @247 -@306 := @298 @266 -@307 := @255 @264 -@308 := @132 @307 -@309 := @246 @266 -@312 := (h : @49) -> (hs : @273) -> @308 @309 -@313 := @306 @47 -@314 := @263 @271 -@315 := @132 @314 -@317 := (hs : @277) -> @315 @309 -@318 := @313 @275 -@319 := @132 @62 -@320 := @319 @309 -@321 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.denote -@323 := @321 @4 @15 -@324 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.__fits_0 -@326 := @324 @4 @15 -@329 := Models.Main.flowStep @4 @15 -@330 := Bool -@332 := @63 @330 @330 -@335 := Except.{0, 0} @332 @3 -@336 := @64 @335 -@337 := LexLeanTarget.TargetSyntax.Value.bool -@338 := LexLeanPreservation.encPair -@342 := @338 @330 @330 @337 @337 -@344 := LexLeanPreservation.encExcept @332 -@347 := @344 @3 @342 @5 -@351 := @338 @3 @335 @5 @347 -@355 := @344 @336 @342 @351 @329 -@358 := LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.root @4 @15 -@359 := Ne.{1} -@360 := LexLeanPreservation.Obs -@361 := @359 @360 -@362 := LexLeanPreservation.Rel -@365 := @361 (@362 @15 @17) -@366 := LexLeanPreservation.Obs.stuck -@369 := (f : @330) -> (v : @54) -> @365 @366 -@371 := LexLeanPreservation.Rust.rel_ne_stuck @326 -@378 := (v : @54) -> @361 (@362 (@324 @12 @4) @17) @366 -@379 := @371 @355 -@383 := @361 (@362 @326 @355) @366 -@384 := @135 @65 -@385 := LexLeanPreservation.Rust.FunSem -@386 := #9 -@392 := (n : @3) -> @385 @386 @152 @146 @17 @138 -@393 := Eq.{1} -@394 := Option.{0} -@395 := @394 @82 -@396 := @393 @395 -@403 := LexLeanRuntime.index (@135 @82) @82 (LexLeanRuntime.instIndexableList @82) -@407 := @396 (@403 (@83 @386) @138) -@408 := Option.some.{0} -@409 := @408 @82 -@410 := @409 @140 -@411 := @407 @410 -@412 := #10 -@416 := @107 @412 @386 @152 @140 -@417 := LexLeanTarget.TargetSyntax.Function.types -@418 := @417 @138 -@419 := @416 @418 -@420 := @394 @384 -@421 := @393 @420 -@422 := LexLeanTarget.TargetSemantics.bindAll -@423 := LexLeanTarget.TargetSyntax.Function.parameters -@428 := @421 (@422 (@423 @146) @138 @75) -@429 := @408 @384 -@430 := @429 @140 -@431 := @428 @430 -@432 := @394 @330 -@433 := @393 @432 -@434 := LexLeanPreservation.Rust.fnFallible -@435 := #11 -@438 := @433 (@434 @435 @386) -@439 := @408 @330 -@440 := @439 @140 -@441 := @438 @440 -@442 := LexLeanPreservation.RunConv -@443 := #13 -@447 := @442 @443 @412 @152 @140 -@449 := @361 @138 @366 -@450 := Exists.{1} -@451 := LexLeanPreservation.Rust.ROut -@452 := @450 @451 -@453 := And -@454 := LexLeanPreservation.Rust.RealizesFn -@458 := @453 (@454 @386 @152 @17) -@459 := LexLeanPreservation.Rust.RCI -@461 := @459 #15 -@462 := LexLeanPreservation.Rust.fnIdent -@463 := @462 @443 -@470 := (hne : @449) -> @452 (fun (ro : @451) => @458 (@461 @463 @435 @17)) -@485 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {f : @3} -> - {fn : @82} -> - {args : @136} -> - {env : @384} -> - {F : @330} -> - {o : @360} -> - (hB : @392) -> - (hfn : @411) -> (hwt : @419) -> (hbind : @431) -> (hF : @441) -> (hA : @447) -> @470 -@487 := LexLeanPreservation.Rust.compose @0 -@488 := @385 @0 -@493 := (n : @3) -> @488 @152 @146 @17 @138 -@494 := @403 @84 -@497 := @396 (@494 @138) @410 -@501 := @118 @386 @152 @140 @418 -@502 := @442 @0 -@505 := @502 @412 @152 @140 -@519 := {c : @9} -> - {A : @10} -> - {f : @3} -> - {fn : @82} -> - {args : @136} -> - {env : @384} -> - {F : @330} -> - {o : @360} -> - (hB : @493) -> - (hfn : @497) -> (hwt : @501) -> (hbind : @431) -> (hF : @441) -> (hA : @505) -> @470 -@520 := @487 @1 -@521 := @488 @1 -@525 := (n : @3) -> @521 @146 @17 @138 -@528 := @126 @152 @140 @418 -@529 := @434 @1 -@532 := @433 (@529 @386) @440 -@533 := @459 @1 -@543 := (hbind : @431) -> - (hF : @532) -> (hA : @505) -> (hne : @449) -> @452 (fun (ro : @451) => @458 (@533 @463 @435 @17)) -@553 := {A : @10} -> - {f : @3} -> - {fn : @82} -> - {args : @136} -> - {env : @384} -> {F : @330} -> {o : @360} -> (hB : @525) -> (hfn : @497) -> (hwt : @528) -> @543 -@554 := @520 @2 -@556 := @521 @2 @17 -@558 := (n : @3) -> @556 @138 -@559 := @132 @140 -@560 := @559 @418 -@569 := {f : @3} -> - {fn : @82} -> - {args : @136} -> - {env : @384} -> {F : @330} -> {o : @360} -> (hB : @558) -> (hfn : @497) -> (hwt : @560) -> @543 -@570 := @554 @72 -@572 := (n : @3) -> @556 @72 -@573 := @494 @72 -@574 := @396 @573 -@575 := @574 @410 -@576 := @529 @72 -@577 := @433 @576 -@578 := @577 @440 -@579 := @502 @72 -@581 := @579 @152 @140 -@583 := @533 (@462 @72) -@591 := (hF : @578) -> (hA : @581) -> (hne : @449) -> @452 (fun (ro : @451) => @458 (@583 @435 @17)) -@600 := {fn : @82} -> - {args : @136} -> - {env : @384} -> - {F : @330} -> {o : @360} -> (hB : @572) -> (hfn : @575) -> (hwt : @560) -> (hbind : @431) -> @591 -@601 := @570 @102 -@603 := @574 (@409 @102) -@604 := @417 @102 -@605 := @559 @604 -@607 := @422 (@423 @102) -@619 := {args : @136} -> - {env : @384} -> - {F : @330} -> - {o : @360} -> - (hB : @572) -> (hfn : @603) -> (hwt : @605) -> (hbind : @421 (@607 @138 @75) @430) -> @591 -@620 := @601 @62 -@622 := @282 (@229 @57) -@624 := @132 @622 @604 -@626 := @58 (@5 @152) -@628 := @626 (@282 @57) -@632 := @421 (@607 @628 @75) @430 -@634 := @58 (@5 @412) -@636 := @58 (@5 @386) -@638 := @634 (@636 @57) -@640 := @579 @638 @140 -@642 := @58 (@5 @443) -@645 := @58 (@5 #12) -@662 := {env : @384} -> - {F : @330} -> - {o : @360} -> - (hB : @572) -> - (hfn : @603) -> - (hwt : @624) -> - (hbind : @632) -> - (hF : @578) -> - (hA : @640) -> (hne : @449) -> @452 (fun (ro : @451) => @458 (@583 (@642 (@645 @57)) @17)) -@663 := @620 @80 -@665 := @229 (@243 @57) -@667 := @132 @665 @604 -@678 := @421 (@607 @622 @75) (@429 (@76 (@70 @228) (@76 (@73 @281) @75))) -@680 := @636 (@626 @57) -@682 := @579 @680 @140 -@684 := @58 (@5 @435) -@700 := {F : @330} -> - {o : @360} -> - (hB : @572) -> - (hfn : @603) -> - (hwt : @667) -> - (hbind : @678) -> - (hF : @578) -> - (hA : @682) -> (hne : @449) -> @452 (fun (ro : @451) => @458 (@583 (@645 (@684 @57)) @17)) -@701 := @663 @81 -@702 := @301 @604 -@713 := @421 (@607 @665 @75) (@429 (@76 (@70 @242) (@76 (@73 @228) @75))) -@715 := @577 (@439 @81) -@717 := @579 @628 @140 -@718 := @454 @81 -@736 := {o : @360} -> - (hB : @572) -> - (hfn : @603) -> - (hwt : @702) -> - (hbind : @713) -> - (hF : @715) -> - (hA : @717) -> - (hne : @449) -> @452 (fun (ro : @451) => @453 (@718 @152 @17) (@583 (@684 (@634 @57)) @17)) -@737 := @701 @323 -@738 := @308 @604 -@749 := @421 (@607 @300 @75) (@429 (@76 (@70 @225) (@76 (@73 @242) @75))) -@750 := @579 @622 -@752 := @321 @146 @138 -@753 := @750 @752 -@755 := @321 @152 @146 -@774 := (hB : @572) -> - (hfn : @603) -> - (hwt : @738) -> - (hbind : @749) -> - (hF : @715) -> - (hA : @753) -> - (hne : @361 @755 @366) -> - @452 (fun (ro : @451) => @453 (@718 (@321 @412 @386) @17) (@583 @638 @17)) -@775 := @737 @106 -@776 := @315 @604 -@787 := @421 (@607 @307 @75) (@429 (@76 (@70 @239) (@76 (@73 @225) @75))) -@788 := @579 @665 -@790 := @321 @138 @140 -@809 := (hfn : @603) -> - (hwt : @776) -> - (hbind : @787) -> - (hF : @715) -> - (hA : @788 @790) -> - (hne : @361 @752 @366) -> - @452 (fun (ro : @451) => @453 (@718 (@321 @386 @152) @17) (@583 @680 @17)) -@810 := Eq.refl.{1} -@813 := @775 (@810 @395 @573) -@814 := @319 @604 -@825 := @421 (@607 @314 @75) (@429 (@76 (@70 @6) (@76 (@73 @239) @75))) -@826 := @579 @300 -@828 := @321 @140 @142 -@844 := (hwt : @814) -> - (hbind : @825) -> - (hF : @715) -> - (hA : @826 @828) -> - (hne : @361 @790 @366) -> @452 (fun (ro : @451) => @453 (@718 @755 @17) (@583 @628 @17)) -@845 := @813 @318 -@847 := @607 @62 @75 -@850 := @421 @847 (@429 @80) -@851 := @579 @307 -@853 := @321 @142 @12 -@868 := (hbind : @850) -> - (hF : @715) -> - (hA : @851 @853) -> - (hne : @361 @828 @366) -> @452 (fun (ro : @451) => @453 (@718 @752 @17) (@583 @622 @17)) -@871 := @845 (@810 @420 @847) -@872 := @579 @314 -@874 := @321 @12 @4 -@888 := (hF : @715) -> - (hA : @872 @874) -> - (hne : @361 @853 @366) -> @452 (fun (ro : @451) => @453 (@718 @790 @17) (@583 @665 @17)) -@891 := @871 (@810 @432 @576) -@905 := (hA : @579 @62 @323) -> - (hne : @361 @874 @366) -> @452 (fun (ro : @451) => @453 (@718 @828 @17) (@583 @300 @17)) -@906 := @891 @358 -@917 := (hne : @361 @323 @366) -> @452 (fun (ro : @451) => @453 (@718 @853 @17) (@583 @307 @17)) -@918 := @906 @379 -@924 := @453 (@718 @874 @17) (@583 @314 @17) -@926 := @452 (fun (ro : @451) => @924) -@928 := @452 (fun (__e_ro : @451) => @924) -@933 := LexLeanPreservation.Rust.RepresentableL (@59 (@58 @18 @57)) -@934 := (__e_hrep : @933) -> @928 -@935 := fun (__e_hrep : @933) => @918 -@936 := (x : @3) -> @934 -@937 := fun (x : @3) => @935 -@938 := (s : @3) -> @936 -@939 := fun (s : @3) => @937 -\end{coremodule} -\end{lexlean} diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R8/RustStd.lean b/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R8/RustStd.lean deleted file mode 100644 index a95b527b0..000000000 --- a/examples/models/expected/verify/preserve/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R8/RustStd.lean +++ /dev/null @@ -1,105 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1], types := [.nat, .nat], result := (.result (.pair .nat (.result .nat (.pair .bool .bool))) (.pair .bool .bool)), - body := (.«let» 2 .nat (.var 0) (.«let» 3 .nat (.var 1) (.cond (.call 1 [(.var 2)]) (.«let» 4 (.pair .nat (.result .nat (.pair .bool .bool))) (.call 2 [(.var 2), (.var 3)]) (.cond (.call 1 [(.first (.var 4))]) (.build .ok (.result (.pair .nat (.result .nat (.pair .bool .bool))) (.pair .bool .bool)) [(.var 4)]) (.build .error (.result (.pair .nat (.result .nat (.pair .bool .bool))) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .true .bool [])])]))) (.build .error (.result (.pair .nat (.result .nat (.pair .bool .bool))) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])])])))) }, - { parameters := [0], types := [.nat], result := .bool, - body := (.prim .natLe [(.var 0), (.value .nat (.nat 100))]) }, - { parameters := [0, 1], types := [.nat, .nat], result := (.pair .nat (.result .nat (.pair .bool .bool))), - body := (.call 3 [(.var 0), (.var 1)]) }, - { parameters := [0, 1], types := [.nat, .nat], result := (.pair .nat (.result .nat (.pair .bool .bool))), - body := (.«let» 2 (.pair .nat .nat) (.call 4 [(.var 0), (.var 1)]) (.«let» 3 .nat (.second (.var 2)) (.«let» 4 .nat (.first (.var 2)) (.cond (.call 5 [(.var 3)]) (.«let» 5 .nat (.call 6 [(.var 3)]) (.cond (.call 7 [(.var 3), (.var 5)]) (.build .pair (.pair .nat (.result .nat (.pair .bool .bool))) [(.var 4), (.build .ok (.result .nat (.pair .bool .bool)) [(.var 5)])]) (.build .pair (.pair .nat (.result .nat (.pair .bool .bool))) [(.var 0), (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])])])]))) (.build .pair (.pair .nat (.result .nat (.pair .bool .bool))) [(.var 0), (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])])]))))) }, - { parameters := [0, 1], types := [.nat, .nat], result := (.pair .nat .nat), - body := (.call 8 [(.var 0), (.var 1)]) }, - { parameters := [0], types := [.nat], result := .bool, - body := (.prim .natLe [(.var 0), (.value .nat (.nat 10))]) }, - { parameters := [0], types := [.nat], result := .nat, - body := (.call 9 [(.var 0)]) }, - { parameters := [0, 1], types := [.nat, .nat], result := .bool, - body := (.prim .natLe [(.var 1), (.var 0)]) }, - { parameters := [0, 1], types := [.nat, .nat], result := (.pair .nat .nat), - body := (.«let» 2 .nat (.prim .natAdd [(.var 0), (.var 1)]) (.build .pair (.pair .nat .nat) [(.prim .natSub [(.var 2), (.prim .natSub [(.var 2), (.value .nat (.nat 100))])]), (.prim .natSub [(.var 2), (.prim .natSub [(.var 2), (.value .nat (.nat 100))])])])) }, - { parameters := [0], types := [.nat], result := .nat, - body := (.prim .natSub [(.var 0), (.value .nat (.nat 1))]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.result (.pair .nat (.result .nat (.pair .bool .bool))) (.pair .bool .bool))) (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.copy (.generated .binding 0))), (.mk (.bind (.generated .binding 3)) (some .nat) (.copy (.generated .binding 1)))] (.cond (.call (.function 1) [(.copy (.generated .binding 2))] false) (.mk [(.mk (.bind (.generated .binding 4)) (some (.pair .nat (.result .nat (.pair .bool .bool)))) (.call (.function 2) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3))] true))] (.cond (.call (.function 1) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 1)), .wild]) none (.copy (.generated .binding 4)))] (.move (.generated .part 1))))] false) (.mk [] (.succeed (.construct (.ok (.pair .nat (.result .nat (.pair .bool .bool))) (.pair .bool .bool)) [(.copy (.generated .binding 4))]))) (.mk [] (.succeed (.construct (.err (.pair .nat (.result .nat (.pair .bool .bool))) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool true)))]))))) (.mk [] (.succeed (.construct (.err (.pair .nat (.result .nat (.pair .bool .bool))) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))])))))), - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 3)) none (.lit (.nat 100)))] (.call (.runtime .natLe) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] false))), - (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.pair .nat (.result .nat (.pair .bool .bool)))) (.mk [] (.call (.function 3) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false))), - (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.pair .nat (.result .nat (.pair .bool .bool)))) (.mk [(.mk (.bind (.generated .binding 2)) (some (.pair .nat .nat)) (.call (.function 4) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] true)), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 4))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 4))))), (.mk (.bind (.generated .binding 4)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 5)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 5)))))] (.cond (.call (.function 5) [(.copy (.generated .binding 3))] false) (.mk [(.mk (.bind (.generated .binding 5)) (some .nat) (.call (.function 6) [(.copy (.generated .binding 3))] false))] (.cond (.call (.function 7) [(.copy (.generated .binding 3)), (.copy (.generated .binding 5))] false) (.mk [] (.succeed (.pair (.copy (.generated .binding 4)) (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 5))])))) (.mk [] (.succeed (.pair (.copy (.generated .binding 0)) (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))))) (.mk [] (.succeed (.pair (.copy (.generated .binding 0)) (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))))))), - (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.pair .nat .nat)) (.mk [] (.call (.function 8) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false))), - (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 7)) none (.lit (.nat 10)))] (.call (.runtime .natLe) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false))), - (.function (.generated .function 6) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] .nat (.mk [] (.call (.function 9) [(.copy (.generated .binding 0))] false))), - (.function (.generated .function 7) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 0)))] (.call (.runtime .natLe) [(.move (.generated .operand 8)), (.move (.generated .operand 9))] false))), - (.function (.generated .function 8) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.pair .nat .nat)) (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] true))))] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 15)) none (.block (.mk [(.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 13)) none (.lit (.nat 100)))] (.call (.runtime .natSub) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false))))] (.call (.runtime .natSub) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false))) (.block (.mk [(.mk (.bind (.generated .operand 18)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 19)) none (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 17)) none (.lit (.nat 100)))] (.call (.runtime .natSub) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false))))] (.call (.runtime .natSub) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false))))))), - (.function (.generated .function 9) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] .nat (.mk [(.mk (.bind (.generated .operand 20)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 21)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 20)), (.move (.generated .operand 21))] false)))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some .nat) (.copy (.generated .binding 0))), (.mk (.bind (.generated .binding 3)) (some .nat) (.copy (.generated .binding 1)))], (.cond (.call (.function 1) [(.copy (.generated .binding 2))] false) (.mk [(.mk (.bind (.generated .binding 4)) (some (.pair .nat (.result .nat (.pair .bool .bool)))) (.call (.function 2) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3))] true))] (.cond (.call (.function 1) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 1)), .wild]) none (.copy (.generated .binding 4)))] (.move (.generated .part 1))))] false) (.mk [] (.succeed (.construct (.ok (.pair .nat (.result .nat (.pair .bool .bool))) (.pair .bool .bool)) [(.copy (.generated .binding 4))]))) (.mk [] (.succeed (.construct (.err (.pair .nat (.result .nat (.pair .bool .bool))) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool true)))]))))) (.mk [] (.succeed (.construct (.err (.pair .nat (.result .nat (.pair .bool .bool))) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))])))), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.letBind (Corr.var rfl rfl) rfl (Corr.letBind (Corr.var rfl rfl) rfl (Corr.cond (lc := []) (ce := (.call (.function 1) [(.copy (.generated .binding 2))] false)) (lk := []) (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .binding 4)) (some (.pair .nat (.result .nat (.pair .bool .bool)))) (.call (.function 2) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3))] true))]) (ta := (.cond (.call (.function 1) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 1)), .wild]) none (.copy (.generated .binding 4)))] (.move (.generated .part 1))))] false) (.mk [] (.succeed (.construct (.ok (.pair .nat (.result .nat (.pair .bool .bool))) (.pair .bool .bool)) [(.copy (.generated .binding 4))]))) (.mk [] (.succeed (.construct (.err (.pair .nat (.result .nat (.pair .bool .bool))) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool true)))]))))) (lb := []) (tb := (.succeed (.construct (.err (.pair .nat (.result .nat (.pair .bool .bool))) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))]))) (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := []) (ce := (.call (.function 1) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 1)), .wild]) none (.copy (.generated .binding 4)))] (.move (.generated .part 1))))] false)) (lk := []) (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 1)), .wild]) none (.copy (.generated .binding 4)))]) (tail := (.move (.generated .part 1))) (Corr.first (ta := .nat) (tb := (.result .nat (.pair .bool .bool))) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct (.ok (.pair .nat (.result .nat (.pair .bool .bool))) (.pair .bool .bool)) [(.copy (.generated .binding 4))]))) (lb := []) (tb := (.succeed (.construct (.err (.pair .nat (.result .nat (.pair .bool .bool))) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool true)))]))) (Corr.fOfB (Corr.build (ts := [(.pair .nat (.result .nat (.pair .bool .bool)))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl))))) (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl))))))⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 3)) none (.lit (.nat 100)))], (.call (.runtime .natLe) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] false), [(0, .nat, (some 0))], rfl, rfl, - (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 3) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.callF (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)⟩⟩ - -theorem fun3 : FunOK program krate flags 3 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some (.pair .nat .nat)) (.call (.function 4) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] true)), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 4))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 4))))), (.mk (.bind (.generated .binding 4)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 5)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 5)))))], (.cond (.call (.function 5) [(.copy (.generated .binding 3))] false) (.mk [(.mk (.bind (.generated .binding 5)) (some .nat) (.call (.function 6) [(.copy (.generated .binding 3))] false))] (.cond (.call (.function 7) [(.copy (.generated .binding 3)), (.copy (.generated .binding 5))] false) (.mk [] (.succeed (.pair (.copy (.generated .binding 4)) (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 5))])))) (.mk [] (.succeed (.pair (.copy (.generated .binding 0)) (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))))) (.mk [] (.succeed (.pair (.copy (.generated .binding 0)) (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))))), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 4))]) none (.copy (.generated .binding 2)))]) (tail := (.move (.generated .part 4))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 5)), .wild]) none (.copy (.generated .binding 2)))]) (tail := (.move (.generated .part 5))) (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) rfl (Corr.cond (lc := []) (ce := (.call (.function 5) [(.copy (.generated .binding 3))] false)) (lk := []) (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .binding 5)) (some .nat) (.call (.function 6) [(.copy (.generated .binding 3))] false))]) (ta := (.cond (.call (.function 7) [(.copy (.generated .binding 3)), (.copy (.generated .binding 5))] false) (.mk [] (.succeed (.pair (.copy (.generated .binding 4)) (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 5))])))) (.mk [] (.succeed (.pair (.copy (.generated .binding 0)) (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))))) (lb := []) (tb := (.succeed (.pair (.copy (.generated .binding 0)) (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))])))) (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := []) (ce := (.call (.function 7) [(.copy (.generated .binding 3)), (.copy (.generated .binding 5))] false)) (lk := []) (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.pair (.copy (.generated .binding 4)) (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 5))])))) (lb := []) (tb := (.succeed (.pair (.copy (.generated .binding 0)) (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))) (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) (Corr.lNil)))))) (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)) (Corr.lNil))))))))) (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)) (Corr.lNil)))))))))))⟩⟩ - -theorem fun4 : FunOK program krate flags 4 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 8) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.callF (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)⟩⟩ - -theorem fun5 : FunOK program krate flags 5 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 7)) none (.lit (.nat 10)))], (.call (.runtime .natLe) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false), [(0, .nat, (some 0))], rfl, rfl, - (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun6 : FunOK program krate flags 6 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 9) [(.copy (.generated .binding 0))] false), [(0, .nat, (some 0))], rfl, rfl, - (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun7 : FunOK program krate flags 7 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 0)))], (.call (.runtime .natLe) [(.move (.generated .operand 8)), (.move (.generated .operand 9))] false), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun8 : FunOK program krate flags 8 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] true))))], (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 15)) none (.block (.mk [(.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 13)) none (.lit (.nat 100)))] (.call (.runtime .natSub) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false))))] (.call (.runtime .natSub) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false))) (.block (.mk [(.mk (.bind (.generated .operand 18)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 19)) none (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 17)) none (.lit (.nat 100)))] (.call (.runtime .natSub) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false))))] (.call (.runtime .natSub) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false))))), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 15)) none (.block (.mk [(.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 13)) none (.lit (.nat 100)))] (.call (.runtime .natSub) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false))))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 13)) none (.lit (.nat 100)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 18)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 19)) none (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 17)) none (.lit (.nat 100)))] (.call (.runtime .natSub) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false))))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 17)) none (.lit (.nat 100)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))))))⟩⟩ - -theorem fun9 : FunOK program krate flags 9 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 20)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 21)) none (.lit (.nat 1)))], (.call (.runtime .natSub) [(.move (.generated .operand 20)), (.move (.generated .operand 21))] false), [(0, .nat, (some 0))], rfl, rfl, - (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | 3 => exact fun3 - | 4 => exact fun4 - | 5 => exact fun5 - | 6 => exact fun6 - | 7 => exact fun7 - | 8 => exact fun8 - | 9 => exact fun9 - | _ + 10 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.RustStd diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R0.lean b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R0.lean new file mode 100644 index 000000000..f7bd291ae --- /dev/null +++ b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R0.lean @@ -0,0 +1,228 @@ +import LexLeanPreservation.Core +import LexLeanPreservation.Values +import LexLeanPreservation.Primitives +import LexLeanPreservation.Fixed +import LexLeanPreservation.Keys +import LexLeanPreservation.Templates +import LexLeanPreservation.Validate +import Models.Flows +import Models.Glyphs +import Models.Ledger +import Models.Main +import Models.Pipeline +import Models.Policy +import Models.Recognizer +import Models.Session +import Models.Triage +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +set_option linter.unusedVariables false +namespace LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0 + +def __prog : _root_.LexLeanTarget.TargetSyntax.Program := + { adts := [{ constructors := [[], [], [], [], [], [], [], [], [], []] }], functions := [ + { parameters := [0], types := [(.adt 0)], result := .nat, + body := (.call 1 [(.var 0)]) }, + { parameters := [0], types := [(.adt 0)], result := .nat, + body := (.call 2 [(.var 0)]) }, + { parameters := [0], types := [(.adt 0)], result := .nat, + body := (.«match» .nat (.first (.call 3 [(.closure 4 []), (.build .pair (.pair (.option (.pair .nat .int)) (.list .nat)) [(.build .none (.option (.pair .nat .int)) []), (.build .cons (.list .nat) [(.value .nat (.nat 0)), (.build .cons (.list .nat) [(.value .nat (.nat 1)), (.build .cons (.list .nat) [(.value .nat (.nat 2)), (.build .cons (.list .nat) [(.value .nat (.nat 3)), (.build .cons (.list .nat) [(.value .nat (.nat 4)), (.build .cons (.list .nat) [(.value .nat (.nat 5)), (.build .cons (.list .nat) [(.value .nat (.nat 6)), (.build .cons (.list .nat) [(.value .nat (.nat 7)), (.build .cons (.list .nat) [(.value .nat (.nat 8)), (.build .cons (.list .nat) [(.value .nat (.nat 9)), (.build .nil (.list .nat) [])])])])])])])])])])])]), (.call 5 [(.var 0)])])) [(.arm .none [] (.value .nat (.nat 0))), (.arm .some [1] (.first (.var 1)))]) }, + { parameters := [0, 1, 2], types := [(.fn [(.pair (.option (.pair .nat .int)) (.list .nat)), .int] (.pair (.option (.pair .nat .int)) (.list .nat))), (.pair (.option (.pair .nat .int)) (.list .nat)), (.list .int)], result := (.pair (.option (.pair .nat .int)) (.list .nat)), + body := (.«match» (.pair (.option (.pair .nat .int)) (.list .nat)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 3 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, + { parameters := [0, 1], types := [(.pair (.option (.pair .nat .int)) (.list .nat)), .int], result := (.pair (.option (.pair .nat .int)) (.list .nat)), + body := (.«match» (.pair (.option (.pair .nat .int)) (.list .nat)) (.second (.var 0)) [(.arm .nil [] (.var 0)), (.arm .cons [2, 3] (.build .pair (.pair (.option (.pair .nat .int)) (.list .nat)) [(.«match» (.option (.pair .nat .int)) (.first (.var 0)) [(.arm .none [] (.build .some (.option (.pair .nat .int)) [(.build .pair (.pair .nat .int) [(.var 2), (.var 1)])])), (.arm .some [4] (.cond (.«match» .bool (.prim .compare [(.second (.var 4)), (.var 1)]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.build .some (.option (.pair .nat .int)) [(.build .pair (.pair .nat .int) [(.var 2), (.var 1)])]) (.build .some (.option (.pair .nat .int)) [(.var 4)])))]), (.var 3)]))]) }, + { parameters := [0], types := [(.adt 0)], result := (.list .int), + body := (.call 6 [(.call 7 [(.call 8 [(.call 9 [(.call 10 [(.var 0)])])])])]) }, + { parameters := [0], types := [(.list .int)], result := (.list .int), + body := (.first (.call 11 [(.closure 12 [(.var 0)]), (.build .pair (.pair (.list .int) (.list .int)) [(.build .nil (.list .int) []), (.call 13 [])]), (.call 14 [])])) }, + { parameters := [0], types := [(.list .int)], result := (.list .int), + body := (.call 15 [(.closure 16 []), (.build .nil (.list .int) []), (.var 0)]) }, + { parameters := [0], types := [(.list .int)], result := (.list .int), + body := (.call 15 [(.closure 17 []), (.build .nil (.list .int) []), (.var 0)]) }, + { parameters := [0], types := [(.list .int)], result := (.list .int), + body := (.first (.call 11 [(.closure 18 [(.var 0)]), (.build .pair (.pair (.list .int) (.list .int)) [(.build .nil (.list .int) []), (.call 19 [])]), (.call 20 [])])) }, + { parameters := [0], types := [(.adt 0)], result := (.list .int), + body := (.call 21 [(.var 0)]) }, + { parameters := [0, 1, 2], types := [(.fn [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int))), (.pair (.list .int) (.list .int)), (.list (.list .int))], result := (.pair (.list .int) (.list .int)), + body := (.«match» (.pair (.list .int) (.list .int)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 11 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, + { parameters := [0, 1, 2], types := [(.list .int), (.pair (.list .int) (.list .int)), (.list .int)], result := (.pair (.list .int) (.list .int)), + body := (.«match» (.pair (.list .int) (.list .int)) (.second (.var 1)) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.build .pair (.pair (.list .int) (.list .int)) [(.prim .append [(.first (.var 1)), (.build .cons (.list .int) [(.prim .intSub [(.var 3), (.prim .intNeg [(.first (.call 22 [(.closure 23 []), (.build .pair (.pair .int (.list .int)) [(.value .int (.int 0)), (.var 0)]), (.var 2)]))])]), (.build .nil (.list .int) [])])]), (.var 4)]))]) }, + { parameters := [], types := [], result := (.list .int), + body := (.build .cons (.list .int) [(.value .int (.int (-6))), (.build .cons (.list .int) [(.value .int (.int (-2))), (.build .cons (.list .int) [(.value .int (.int (-5))), (.build .cons (.list .int) [(.value .int (.int (-5))), (.build .cons (.list .int) [(.value .int (.int (-4))), (.build .cons (.list .int) [(.value .int (.int (-5))), (.build .cons (.list .int) [(.value .int (.int (-6))), (.build .cons (.list .int) [(.value .int (.int (-3))), (.build .cons (.list .int) [(.value .int (.int (-7))), (.build .cons (.list .int) [(.value .int (.int (-6))), (.build .nil (.list .int) [])])])])])])])])])])]) }, + { parameters := [], types := [], result := (.list (.list .int)), + body := (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .nil (.list (.list .int)) [])])])])])])])])])])]) }, + { parameters := [0, 1, 2], types := [(.fn [(.list .int), .int] (.list .int)), (.list .int), (.list .int)], result := (.list .int), + body := (.«match» (.list .int) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 15 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, + { parameters := [0, 1], types := [(.list .int), .int], result := (.list .int), + body := (.prim .append [(.var 0), (.build .cons (.list .int) [(.«let» 2 .int (.prim .intQuot [(.var 1), (.value .int (.int 4)), (.value .int (.int 0))]) (.cond (.«match» .bool (.prim .compare [(.var 2), (.value .int (.int 0))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.value .int (.int 0)) (.cond (.«match» .bool (.prim .compare [(.value .int (.int 127)), (.var 2)]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.value .int (.int 127)) (.var 2)))), (.build .nil (.list .int) [])])]) }, + { parameters := [0, 1], types := [(.list .int), .int], result := (.list .int), + body := (.prim .append [(.var 0), (.build .cons (.list .int) [(.cond (.«match» .bool (.prim .compare [(.var 1), (.value .int (.int 0))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.value .int (.int 0)) (.var 1)), (.build .nil (.list .int) [])])]) }, + { parameters := [0, 1, 2], types := [(.list .int), (.pair (.list .int) (.list .int)), (.list .int)], result := (.pair (.list .int) (.list .int)), + body := (.«match» (.pair (.list .int) (.list .int)) (.second (.var 1)) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.build .pair (.pair (.list .int) (.list .int)) [(.prim .append [(.first (.var 1)), (.build .cons (.list .int) [(.prim .intSub [(.var 3), (.prim .intNeg [(.first (.call 22 [(.closure 24 []), (.build .pair (.pair .int (.list .int)) [(.value .int (.int 0)), (.var 0)]), (.var 2)]))])]), (.build .nil (.list .int) [])])]), (.var 4)]))]) }, + { parameters := [], types := [], result := (.list .int), + body := (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int (-2))), (.build .cons (.list .int) [(.value .int (.int 3)), (.build .cons (.list .int) [(.value .int (.int (-5))), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .nil (.list .int) [])])])])])])])])])])])])]) }, + { parameters := [], types := [], result := (.list (.list .int)), + body := (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 3)), (.build .cons (.list .int) [(.value .int (.int (-2))), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int (-1))), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int (-3))), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int (-1))), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int (-2))), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int (-4))), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 3)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .nil (.list (.list .int)) [])])])])])])])])])])])])]) }, + { parameters := [0], types := [(.adt 0)], result := (.list .int), + body := (.«match» (.list .int) (.var 0) [(.arm (.adt 0) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 1) [] (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 2) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 3) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 4) [] (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 5) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 6) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 7) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 8) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 9) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])]))]) }, + { parameters := [0, 1, 2], types := [(.fn [(.pair .int (.list .int)), .int] (.pair .int (.list .int))), (.pair .int (.list .int)), (.list .int)], result := (.pair .int (.list .int)), + body := (.«match» (.pair .int (.list .int)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 22 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, + { parameters := [0, 1], types := [(.pair .int (.list .int)), .int], result := (.pair .int (.list .int)), + body := (.«match» (.pair .int (.list .int)) (.second (.var 0)) [(.arm .nil [] (.var 0)), (.arm .cons [2, 3] (.build .pair (.pair .int (.list .int)) [(.prim .intSub [(.first (.var 0)), (.prim .intNeg [(.prim .intMul [(.var 1), (.var 2)])])]), (.var 3)]))]) }, + { parameters := [0, 1], types := [(.pair .int (.list .int)), .int], result := (.pair .int (.list .int)), + body := (.«match» (.pair .int (.list .int)) (.second (.var 0)) [(.arm .nil [] (.var 0)), (.arm .cons [2, 3] (.build .pair (.pair .int (.list .int)) [(.prim .intSub [(.first (.var 0)), (.prim .intNeg [(.prim .intMul [(.var 1), (.var 2)])])]), (.var 3)]))]) }] } + +def __enc_0 : (Models.Glyphs.Glyph) -> _root_.LexLeanTarget.TargetSyntax.Value + | Models.Glyphs.Glyph.g0 => _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [] + | Models.Glyphs.Glyph.g1 => _root_.LexLeanTarget.TargetSyntax.Value.adt 1 [] + | Models.Glyphs.Glyph.g2 => _root_.LexLeanTarget.TargetSyntax.Value.adt 2 [] + | Models.Glyphs.Glyph.g3 => _root_.LexLeanTarget.TargetSyntax.Value.adt 3 [] + | Models.Glyphs.Glyph.g4 => _root_.LexLeanTarget.TargetSyntax.Value.adt 4 [] + | Models.Glyphs.Glyph.g5 => _root_.LexLeanTarget.TargetSyntax.Value.adt 5 [] + | Models.Glyphs.Glyph.g6 => _root_.LexLeanTarget.TargetSyntax.Value.adt 6 [] + | Models.Glyphs.Glyph.g7 => _root_.LexLeanTarget.TargetSyntax.Value.adt 7 [] + | Models.Glyphs.Glyph.g8 => _root_.LexLeanTarget.TargetSyntax.Value.adt 8 [] + | Models.Glyphs.Glyph.g9 => _root_.LexLeanTarget.TargetSyntax.Value.adt 9 [] + +def __fits_4 (_ybest : (Prod (Option (Prod Nat Int)) (List Nat))) (_yscore : Int) : Bool := + (Bool.true && (match (_ybest).2 with | List.nil => Bool.true | List.cons _ylabel _ylabels => (((Bool.true && (match (_ybest).1 with | Option.none => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.some _yleader => ((Bool.true && (Bool.true && Bool.true)) && (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((Bool.true && Bool.true) && Bool.true))))) && (Bool.true && Bool.true)) && Bool.true))) + +theorem __rel_4 (_ybest : (Prod (Option (Prod Nat Int)) (List Nat))) (_yscore : Int) : _root_.LexLeanPreservation.FunRel __prog 4 [((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int)) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) _ybest), (_root_.LexLeanTarget.TargetSyntax.Value.int _yscore)] (_root_.LexLeanPreservation.Rel (__fits_4 _ybest _yscore) ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int)) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) ((match (_ybest).2 with | List.nil => _ybest | List.cons _ylabel _ylabels => ((match (_ybest).1 with | Option.none => (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) | Option.some _yleader => (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) else (Option.some (_yleader) : (Option (Prod Nat Int))))), _ylabels))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (List Nat)) => (match __a with | List.nil => Bool.true | List.cons _ylabel _ylabels => (((Bool.true && (match (_ybest).1 with | Option.none => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.some _yleader => ((Bool.true && (Bool.true && Bool.true)) && (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((Bool.true && Bool.true) && Bool.true))))) && (Bool.true && Bool.true)) && Bool.true))) (fun (__a : (List Nat)) => (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int)) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) (match __a with | List.nil => _ybest | List.cons _ylabel _ylabels => ((match (_ybest).1 with | Option.none => (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) | Option.some _yleader => (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) else (Option.some (_yleader) : (Option (Prod Nat Int))))), _ylabels))) (_ybest).2 (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (fun (__a : (List Nat)) _ => match __a with | List.nil => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | List.cons _ylabel _ylabels => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int)) (fun (__a : (Option (Prod Nat Int))) => (match __a with | Option.none => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.some _yleader => ((Bool.true && (Bool.true && Bool.true)) && (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((Bool.true && Bool.true) && Bool.true))))) (fun (__a : (Option (Prod Nat Int))) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int)) (match __a with | Option.none => (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) | Option.some _yleader => (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) else (Option.some (_yleader) : (Option (Prod Nat Int)))))) (_ybest).1 (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (fun (__a : (Option (Prod Nat Int))) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.some _yleader => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((Bool.true && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int)) (if __b then (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) else (Option.some (_yleader) : (Option (Prod Nat Int))))) (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) (_root_.LexLeanPreservation.conv_lessThan (_root_.LexLeanPreservation.keySpec_int (_root_.LexLeanCollections.Key.compare : Int -> Int -> Ordering) (fun _ _ => rfl)) _root_.LexLeanCollections.lessThan (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some))))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))))) + +def __fits_23 (_ysum : (Prod Int (List Int))) (_yweight : Int) : Bool := + (Bool.true && (match (_ysum).2 with | List.nil => Bool.true | List.cons _yvalue _yrest => ((((Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int))) && Bool.true) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int))) && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int))) && (Bool.true && Bool.true)) && Bool.true))) + +theorem __rel_23 (_ysum : (Prod Int (List Int))) (_yweight : Int) : _root_.LexLeanPreservation.FunRel __prog 23 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) _ysum), (_root_.LexLeanTarget.TargetSyntax.Value.int _yweight)] (_root_.LexLeanPreservation.Rel (__fits_23 _ysum _yweight) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) ((match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (fun (__a : (List Int)) => (match __a with | List.nil => Bool.true | List.cons _yvalue _yrest => ((((Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int))) && Bool.true) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int))) && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int))) && (Bool.true && Bool.true)) && Bool.true))) (fun (__a : (List Int)) => (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (match __a with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest))) (_ysum).2 (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (fun (__a : (List Int)) _ => match __a with | List.nil => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | List.cons _yvalue _yrest => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_intMul _yweight _yvalue)) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_intNeg (_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_intSub (_ysum).1 (_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))))) + +def __fits_12 (_yvalues : (List Int)) (_yacc : (Prod (List Int) (List Int))) (_yrow : (List Int)) : Bool := + (Bool.true && (match (_yacc).2 with | List.nil => Bool.true | List.cons _ybias _ybiases => ((((Bool.true && (((((Bool.true && (((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Prod Int (List Int))) (__p1 : Int) => __fits_23 __p0 __p1) ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow))) && Bool.true) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int))) && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int))) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (Bool.true && Bool.true)) && Bool.true))) + +theorem __rel_12 (_yvalues : (List Int)) (_yacc : (Prod (List Int) (List Int))) (_yrow : (List Int)) : _root_.LexLeanPreservation.FunRel __prog 12 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yvalues), ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) _yacc), ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yrow)] (_root_.LexLeanPreservation.Rel (__fits_12 _yvalues _yacc _yrow) ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) ((match (_yacc).2 with | List.nil => _yacc | List.cons _ybias _ybiases => ((_root_.LexLeanRuntime.append ((_yacc).1) (((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int))) : (List Int)), _ybiases))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (fun (__a : (List Int)) => (match __a with | List.nil => Bool.true | List.cons _ybias _ybiases => ((((Bool.true && (((((Bool.true && (((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Prod Int (List Int))) (__p1 : Int) => __fits_23 __p0 __p1) ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow))) && Bool.true) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int))) && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int))) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (Bool.true && Bool.true)) && Bool.true))) (fun (__a : (List Int)) => (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (match __a with | List.nil => _yacc | List.cons _ybias _ybiases => ((_root_.LexLeanRuntime.append ((_yacc).1) (((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int))) : (List Int)), _ybiases))) (_yacc).2 (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (fun (__a : (List Int)) _ => match __a with | List.nil => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | List.cons _ybias _ybiases => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.int) (es := (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int))) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.int) (fun _ => rfl) ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (fun (__p0 : (Prod Int (List Int))) (__p1 : Int) => __fits_23 __p0 __p1) 23 [] (fun (__p0 : (Prod Int (List Int))) (__p1 : Int) => __rel_23 __p0 __p1) (p := __prog) (fi := 22) (ta := .int) (ts := (.pair .int (.list .int))) rfl (((0 : Int), _yvalues)) (_yrow)))) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_intNeg ((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_intSub _ybias (_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.int) (_yacc).1 ((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))))) + +def __fits_13 : Bool := + ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) + +theorem __rel_13 : _root_.LexLeanPreservation.FunRel __prog 13 [] (_root_.LexLeanPreservation.Rel (__fits_13) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (Models.Recognizer.outputBias))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) + +def __fits_14 : Bool := + ((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) + +theorem __rel_14 : _root_.LexLeanPreservation.FunRel __prog 14 [] (_root_.LexLeanPreservation.Rel (__fits_14) ((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (Models.Recognizer.outputWeights))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) + +def __fits_6 (_yvalues : (List Int)) : Bool := + (((Bool.true && Bool.true) && ((((Bool.true && Bool.true) && ((Bool.true && (__fits_13)) && Bool.true)) && Bool.true) && ((Bool.true && (__fits_14)) && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Prod (List Int) (List Int))) (__p1 : (List Int)) => __fits_12 (_yvalues) __p0 __p1) ((fun (_yacc : (Prod (List Int) (List Int))) (_yrow : (List Int)) => (match (_yacc).2 with | List.nil => _yacc | List.cons _ybias _ybiases => ((_root_.LexLeanRuntime.append ((_yacc).1) (((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int))) : (List Int)), _ybiases)))) ((([] : List Int), (Models.Recognizer.outputBias))) ((Models.Recognizer.outputWeights)))) + +attribute [local irreducible] Models.Recognizer.outputBias Models.Recognizer.outputWeights in +theorem __rel_6 (_yvalues : (List Int)) : _root_.LexLeanPreservation.FunRel __prog 6 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yvalues)] (_root_.LexLeanPreservation.Rel (__fits_6 _yvalues) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (Models.Recognizer.DigitNet.layer4 _yvalues))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call _root_.LexLeanPreservation.convL_nil (__rel_13)) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call _root_.LexLeanPreservation.convL_nil (__rel_14)) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (es := (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int))) (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (fun _ => rfl) ((fun (_yacc : (Prod (List Int) (List Int))) (_yrow : (List Int)) => (match (_yacc).2 with | List.nil => _yacc | List.cons _ybias _ybiases => ((_root_.LexLeanRuntime.append ((_yacc).1) (((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int))) : (List Int)), _ybiases)))) (fun (__p0 : (Prod (List Int) (List Int))) (__p1 : (List Int)) => __fits_12 (_yvalues) __p0 __p1) 12 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yvalues)] (fun (__p0 : (Prod (List Int) (List Int))) (__p1 : (List Int)) => __rel_12 (_yvalues) __p0 __p1) (p := __prog) (fi := 11) (ta := (.list .int)) (ts := (.pair (.list .int) (.list .int))) rfl ((([] : List Int), (Models.Recognizer.outputBias))) ((Models.Recognizer.outputWeights))))) + +def __fits_16 (_yout : (List Int)) (_yvalue : Int) : Bool := + ((Bool.true && ((((((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.quotient (_yvalue) ((4 : Int)) ((0 : Int)) : Int))) && (let _yquotient : Int := (_root_.LexLeanRuntime.quotient (_yvalue) ((4 : Int)) ((0 : Int)) : Int); ((Bool.true && (Bool.true && Bool.true)) && (if (_root_.LexLeanCollections.lessThan (_yquotient) ((0 : Int)) : Bool) then Bool.true else ((Bool.true && (Bool.true && Bool.true)) && (if (_root_.LexLeanCollections.lessThan ((127 : Int)) (_yquotient) : Bool) then Bool.true else Bool.true)))))) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) + +theorem __rel_16 (_yout : (List Int)) (_yvalue : Int) : _root_.LexLeanPreservation.FunRel __prog 16 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yout), (_root_.LexLeanTarget.TargetSyntax.Value.int _yvalue)] (_root_.LexLeanPreservation.Rel (__fits_16 _yout _yvalue) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) ((_root_.LexLeanRuntime.append (_yout) (((let _yquotient : Int := (_root_.LexLeanRuntime.quotient (_yvalue) ((4 : Int)) ((0 : Int)) : Int); (if (_root_.LexLeanCollections.lessThan (_yquotient) ((0 : Int)) : Bool) then (0 : Int) else (if (_root_.LexLeanCollections.lessThan ((127 : Int)) (_yquotient) : Bool) then (127 : Int) else _yquotient))) :: ([] : List Int))) : (List Int))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (let _yquotient : Int := (_root_.LexLeanRuntime.quotient (_yvalue) ((4 : Int)) ((0 : Int)) : Int); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.prim_intQuot _yvalue (4 : Int) (0 : Int))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else ((Bool.true && (Bool.true && Bool.true)) && (if (_root_.LexLeanCollections.lessThan ((127 : Int)) (_yquotient) : Bool) then Bool.true else Bool.true)))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.int (if __b then (0 : Int) else (if (_root_.LexLeanCollections.lessThan ((127 : Int)) (_yquotient) : Bool) then (127 : Int) else _yquotient))) (_root_.LexLeanCollections.lessThan (_yquotient) ((0 : Int)) : Bool) (_root_.LexLeanPreservation.conv_lessThan (_root_.LexLeanPreservation.keySpec_int (_root_.LexLeanCollections.Key.compare : Int -> Int -> Ordering) (fun _ _ => rfl)) _root_.LexLeanCollections.lessThan (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.int (if __b then (127 : Int) else _yquotient)) (_root_.LexLeanCollections.lessThan ((127 : Int)) (_yquotient) : Bool) (_root_.LexLeanPreservation.conv_lessThan (_root_.LexLeanPreservation.keySpec_int (_root_.LexLeanCollections.Key.compare : Int -> Int -> Ordering) (fun _ _ => rfl)) _root_.LexLeanCollections.lessThan (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => (_root_.LexLeanPreservation.conv_var rfl)))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.int) _yout ((let _yquotient : Int := (_root_.LexLeanRuntime.quotient (_yvalue) ((4 : Int)) ((0 : Int)) : Int); (if (_root_.LexLeanCollections.lessThan (_yquotient) ((0 : Int)) : Bool) then (0 : Int) else (if (_root_.LexLeanCollections.lessThan ((127 : Int)) (_yquotient) : Bool) then (127 : Int) else _yquotient))) :: ([] : List Int)))) + +def __fits_7 (_yvalues : (List Int)) : Bool := + ((Bool.true && ((Bool.true && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (List Int)) (__p1 : Int) => __fits_16 __p0 __p1) ((fun (_yout : (List Int)) (_yvalue : Int) => (_root_.LexLeanRuntime.append (_yout) (((let _yquotient : Int := (_root_.LexLeanRuntime.quotient (_yvalue) ((4 : Int)) ((0 : Int)) : Int); (if (_root_.LexLeanCollections.lessThan (_yquotient) ((0 : Int)) : Bool) then (0 : Int) else (if (_root_.LexLeanCollections.lessThan ((127 : Int)) (_yquotient) : Bool) then (127 : Int) else _yquotient))) :: ([] : List Int))) : (List Int)))) (([] : List Int)) (_yvalues))) + +theorem __rel_7 (_yvalues : (List Int)) : _root_.LexLeanPreservation.FunRel __prog 7 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yvalues)] (_root_.LexLeanPreservation.Rel (__fits_7 _yvalues) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (Models.Recognizer.DigitNet.layer3 _yvalues))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.int) (es := (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.int) (fun _ => rfl) ((fun (_yout : (List Int)) (_yvalue : Int) => (_root_.LexLeanRuntime.append (_yout) (((let _yquotient : Int := (_root_.LexLeanRuntime.quotient (_yvalue) ((4 : Int)) ((0 : Int)) : Int); (if (_root_.LexLeanCollections.lessThan (_yquotient) ((0 : Int)) : Bool) then (0 : Int) else (if (_root_.LexLeanCollections.lessThan ((127 : Int)) (_yquotient) : Bool) then (127 : Int) else _yquotient))) :: ([] : List Int))) : (List Int)))) (fun (__p0 : (List Int)) (__p1 : Int) => __fits_16 __p0 __p1) 16 [] (fun (__p0 : (List Int)) (__p1 : Int) => __rel_16 __p0 __p1) (p := __prog) (fi := 15) (ta := .int) (ts := (.list .int)) rfl (([] : List Int)) (_yvalues))) + +def __fits_17 (_yout : (List Int)) (_yvalue : Int) : Bool := + ((Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && (if (_root_.LexLeanCollections.lessThan (_yvalue) ((0 : Int)) : Bool) then Bool.true else Bool.true)) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) + +theorem __rel_17 (_yout : (List Int)) (_yvalue : Int) : _root_.LexLeanPreservation.FunRel __prog 17 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yout), (_root_.LexLeanTarget.TargetSyntax.Value.int _yvalue)] (_root_.LexLeanPreservation.Rel (__fits_17 _yout _yvalue) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) ((_root_.LexLeanRuntime.append (_yout) (((if (_root_.LexLeanCollections.lessThan (_yvalue) ((0 : Int)) : Bool) then (0 : Int) else _yvalue) :: ([] : List Int))) : (List Int))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.int (if __b then (0 : Int) else _yvalue)) (_root_.LexLeanCollections.lessThan (_yvalue) ((0 : Int)) : Bool) (_root_.LexLeanPreservation.conv_lessThan (_root_.LexLeanPreservation.keySpec_int (_root_.LexLeanCollections.Key.compare : Int -> Int -> Ordering) (fun _ _ => rfl)) _root_.LexLeanCollections.lessThan (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => (_root_.LexLeanPreservation.conv_var rfl))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.int) _yout ((if (_root_.LexLeanCollections.lessThan (_yvalue) ((0 : Int)) : Bool) then (0 : Int) else _yvalue) :: ([] : List Int)))) + +def __fits_8 (_yvalues : (List Int)) : Bool := + ((Bool.true && ((Bool.true && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (List Int)) (__p1 : Int) => __fits_17 __p0 __p1) ((fun (_yout : (List Int)) (_yvalue : Int) => (_root_.LexLeanRuntime.append (_yout) (((if (_root_.LexLeanCollections.lessThan (_yvalue) ((0 : Int)) : Bool) then (0 : Int) else _yvalue) :: ([] : List Int))) : (List Int)))) (([] : List Int)) (_yvalues))) + +theorem __rel_8 (_yvalues : (List Int)) : _root_.LexLeanPreservation.FunRel __prog 8 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yvalues)] (_root_.LexLeanPreservation.Rel (__fits_8 _yvalues) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (Models.Recognizer.DigitNet.layer2 _yvalues))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.int) (es := (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.int) (fun _ => rfl) ((fun (_yout : (List Int)) (_yvalue : Int) => (_root_.LexLeanRuntime.append (_yout) (((if (_root_.LexLeanCollections.lessThan (_yvalue) ((0 : Int)) : Bool) then (0 : Int) else _yvalue) :: ([] : List Int))) : (List Int)))) (fun (__p0 : (List Int)) (__p1 : Int) => __fits_17 __p0 __p1) 17 [] (fun (__p0 : (List Int)) (__p1 : Int) => __rel_17 __p0 __p1) (p := __prog) (fi := 15) (ta := .int) (ts := (.list .int)) rfl (([] : List Int)) (_yvalues))) + +def __fits_24 (_ysum : (Prod Int (List Int))) (_yweight : Int) : Bool := + (Bool.true && (match (_ysum).2 with | List.nil => Bool.true | List.cons _yvalue _yrest => ((((Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int))) && Bool.true) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int))) && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int))) && (Bool.true && Bool.true)) && Bool.true))) + +theorem __rel_24 (_ysum : (Prod Int (List Int))) (_yweight : Int) : _root_.LexLeanPreservation.FunRel __prog 24 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) _ysum), (_root_.LexLeanTarget.TargetSyntax.Value.int _yweight)] (_root_.LexLeanPreservation.Rel (__fits_24 _ysum _yweight) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) ((match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (fun (__a : (List Int)) => (match __a with | List.nil => Bool.true | List.cons _yvalue _yrest => ((((Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int))) && Bool.true) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int))) && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int))) && (Bool.true && Bool.true)) && Bool.true))) (fun (__a : (List Int)) => (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (match __a with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest))) (_ysum).2 (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (fun (__a : (List Int)) _ => match __a with | List.nil => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | List.cons _yvalue _yrest => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_intMul _yweight _yvalue)) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_intNeg (_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_intSub (_ysum).1 (_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))))) + +def __fits_18 (_yvalues : (List Int)) (_yacc : (Prod (List Int) (List Int))) (_yrow : (List Int)) : Bool := + (Bool.true && (match (_yacc).2 with | List.nil => Bool.true | List.cons _ybias _ybiases => ((((Bool.true && (((((Bool.true && (((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Prod Int (List Int))) (__p1 : Int) => __fits_24 __p0 __p1) ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow))) && Bool.true) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int))) && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int))) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (Bool.true && Bool.true)) && Bool.true))) + +theorem __rel_18 (_yvalues : (List Int)) (_yacc : (Prod (List Int) (List Int))) (_yrow : (List Int)) : _root_.LexLeanPreservation.FunRel __prog 18 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yvalues), ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) _yacc), ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yrow)] (_root_.LexLeanPreservation.Rel (__fits_18 _yvalues _yacc _yrow) ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) ((match (_yacc).2 with | List.nil => _yacc | List.cons _ybias _ybiases => ((_root_.LexLeanRuntime.append ((_yacc).1) (((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int))) : (List Int)), _ybiases))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (fun (__a : (List Int)) => (match __a with | List.nil => Bool.true | List.cons _ybias _ybiases => ((((Bool.true && (((((Bool.true && (((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Prod Int (List Int))) (__p1 : Int) => __fits_24 __p0 __p1) ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow))) && Bool.true) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int))) && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int))) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (Bool.true && Bool.true)) && Bool.true))) (fun (__a : (List Int)) => (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (match __a with | List.nil => _yacc | List.cons _ybias _ybiases => ((_root_.LexLeanRuntime.append ((_yacc).1) (((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int))) : (List Int)), _ybiases))) (_yacc).2 (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (fun (__a : (List Int)) _ => match __a with | List.nil => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | List.cons _ybias _ybiases => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.int) (es := (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int))) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.int) (fun _ => rfl) ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (fun (__p0 : (Prod Int (List Int))) (__p1 : Int) => __fits_24 __p0 __p1) 24 [] (fun (__p0 : (Prod Int (List Int))) (__p1 : Int) => __rel_24 __p0 __p1) (p := __prog) (fi := 22) (ta := .int) (ts := (.pair .int (.list .int))) rfl (((0 : Int), _yvalues)) (_yrow)))) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_intNeg ((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_intSub _ybias (_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.int) (_yacc).1 ((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))))) + +def __fits_19 : Bool := + ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) + +theorem __rel_19 : _root_.LexLeanPreservation.FunRel __prog 19 [] (_root_.LexLeanPreservation.Rel (__fits_19) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (Models.Recognizer.hiddenBias))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) + +def __fits_20 : Bool := + ((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) + +theorem __rel_20 : _root_.LexLeanPreservation.FunRel __prog 20 [] (_root_.LexLeanPreservation.Rel (__fits_20) ((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (Models.Recognizer.hiddenWeights))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) + +def __fits_9 (_yvalues : (List Int)) : Bool := + (((Bool.true && Bool.true) && ((((Bool.true && Bool.true) && ((Bool.true && (__fits_19)) && Bool.true)) && Bool.true) && ((Bool.true && (__fits_20)) && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Prod (List Int) (List Int))) (__p1 : (List Int)) => __fits_18 (_yvalues) __p0 __p1) ((fun (_yacc : (Prod (List Int) (List Int))) (_yrow : (List Int)) => (match (_yacc).2 with | List.nil => _yacc | List.cons _ybias _ybiases => ((_root_.LexLeanRuntime.append ((_yacc).1) (((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int))) : (List Int)), _ybiases)))) ((([] : List Int), (Models.Recognizer.hiddenBias))) ((Models.Recognizer.hiddenWeights)))) + +attribute [local irreducible] Models.Recognizer.hiddenBias Models.Recognizer.hiddenWeights in +theorem __rel_9 (_yvalues : (List Int)) : _root_.LexLeanPreservation.FunRel __prog 9 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yvalues)] (_root_.LexLeanPreservation.Rel (__fits_9 _yvalues) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (Models.Recognizer.DigitNet.layer1 _yvalues))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call _root_.LexLeanPreservation.convL_nil (__rel_19)) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call _root_.LexLeanPreservation.convL_nil (__rel_20)) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (es := (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int))) (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (fun _ => rfl) ((fun (_yacc : (Prod (List Int) (List Int))) (_yrow : (List Int)) => (match (_yacc).2 with | List.nil => _yacc | List.cons _ybias _ybiases => ((_root_.LexLeanRuntime.append ((_yacc).1) (((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int))) : (List Int)), _ybiases)))) (fun (__p0 : (Prod (List Int) (List Int))) (__p1 : (List Int)) => __fits_18 (_yvalues) __p0 __p1) 18 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yvalues)] (fun (__p0 : (Prod (List Int) (List Int))) (__p1 : (List Int)) => __rel_18 (_yvalues) __p0 __p1) (p := __prog) (fi := 11) (ta := (.list .int)) (ts := (.pair (.list .int) (.list .int))) rfl ((([] : List Int), (Models.Recognizer.hiddenBias))) ((Models.Recognizer.hiddenWeights))))) + +def __fits_21 (glyph : (Models.Glyphs.Glyph)) : Bool := + (Bool.true && (match glyph with | Models.Glyphs.Glyph.g0 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g1 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g2 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g3 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g4 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g5 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g6 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g7 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g8 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g9 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true))) + +theorem __rel_21 (glyph : (Models.Glyphs.Glyph)) : _root_.LexLeanPreservation.FunRel __prog 21 [(__enc_0 glyph)] (_root_.LexLeanPreservation.Rel (__fits_21 glyph) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (Models.Glyphs.encode glyph))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV __enc_0 (fun (__a : (Models.Glyphs.Glyph)) => (match __a with | Models.Glyphs.Glyph.g0 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g1 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g2 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g3 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g4 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g5 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g6 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g7 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g8 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g9 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true))) (fun (__a : (Models.Glyphs.Glyph)) => (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (match __a with | Models.Glyphs.Glyph.g0 => ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((0 : Int) :: ([] : List Int)))))))) | Models.Glyphs.Glyph.g1 => ((0 : Int) :: ((1 : Int) :: ((1 : Int) :: ((0 : Int) :: ((0 : Int) :: ((0 : Int) :: ((0 : Int) :: ([] : List Int)))))))) | Models.Glyphs.Glyph.g2 => ((1 : Int) :: ((1 : Int) :: ((0 : Int) :: ((1 : Int) :: ((1 : Int) :: ((0 : Int) :: ((1 : Int) :: ([] : List Int)))))))) | Models.Glyphs.Glyph.g3 => ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((0 : Int) :: ((0 : Int) :: ((1 : Int) :: ([] : List Int)))))))) | Models.Glyphs.Glyph.g4 => ((0 : Int) :: ((1 : Int) :: ((1 : Int) :: ((0 : Int) :: ((0 : Int) :: ((1 : Int) :: ((1 : Int) :: ([] : List Int)))))))) | Models.Glyphs.Glyph.g5 => ((1 : Int) :: ((0 : Int) :: ((1 : Int) :: ((1 : Int) :: ((0 : Int) :: ((1 : Int) :: ((1 : Int) :: ([] : List Int)))))))) | Models.Glyphs.Glyph.g6 => ((1 : Int) :: ((0 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ([] : List Int)))))))) | Models.Glyphs.Glyph.g7 => ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((0 : Int) :: ((0 : Int) :: ((0 : Int) :: ((0 : Int) :: ([] : List Int)))))))) | Models.Glyphs.Glyph.g8 => ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ([] : List Int)))))))) | Models.Glyphs.Glyph.g9 => ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((0 : Int) :: ((1 : Int) :: ((1 : Int) :: ([] : List Int)))))))))) glyph (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (Models.Glyphs.Glyph)) _ => match __a with | Models.Glyphs.Glyph.g0 => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons)) | Models.Glyphs.Glyph.g1 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons))) | Models.Glyphs.Glyph.g2 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons)))) | Models.Glyphs.Glyph.g3 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons))))) | Models.Glyphs.Glyph.g4 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons)))))) | Models.Glyphs.Glyph.g5 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons))))))) | Models.Glyphs.Glyph.g6 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons)))))))) | Models.Glyphs.Glyph.g7 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons))))))))) | Models.Glyphs.Glyph.g8 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons)))))))))) | Models.Glyphs.Glyph.g9 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons))))))))))))) + +def __fits_10 (glyph : (Models.Glyphs.Glyph)) : Bool := + ((Bool.true && Bool.true) && (__fits_21 (glyph))) + +attribute [local irreducible] Models.Glyphs.encode in +theorem __rel_10 (glyph : (Models.Glyphs.Glyph)) : _root_.LexLeanPreservation.FunRel __prog 10 [(__enc_0 glyph)] (_root_.LexLeanPreservation.Rel (__fits_10 glyph) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (Models.Recognizer.DigitNet.encoded glyph))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_21 (glyph))) + +def __fits_5 (glyph : (Models.Glyphs.Glyph)) : Bool := + ((((((((((Bool.true && Bool.true) && (__fits_10 (glyph))) && Bool.true) && (__fits_9 ((Models.Recognizer.DigitNet.encoded (glyph))))) && Bool.true) && (__fits_8 ((Models.Recognizer.DigitNet.layer1 ((Models.Recognizer.DigitNet.encoded (glyph))))))) && Bool.true) && (__fits_7 ((Models.Recognizer.DigitNet.layer2 ((Models.Recognizer.DigitNet.layer1 ((Models.Recognizer.DigitNet.encoded (glyph))))))))) && Bool.true) && (__fits_6 ((Models.Recognizer.DigitNet.layer3 ((Models.Recognizer.DigitNet.layer2 ((Models.Recognizer.DigitNet.layer1 ((Models.Recognizer.DigitNet.encoded (glyph))))))))))) + +attribute [local irreducible] Models.Recognizer.DigitNet.encoded Models.Recognizer.DigitNet.layer1 Models.Recognizer.DigitNet.layer2 Models.Recognizer.DigitNet.layer3 Models.Recognizer.DigitNet.layer4 in +theorem __rel_5 (glyph : (Models.Glyphs.Glyph)) : _root_.LexLeanPreservation.FunRel __prog 5 [(__enc_0 glyph)] (_root_.LexLeanPreservation.Rel (__fits_5 glyph) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (Models.Recognizer.DigitNet.logits glyph))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_10 (glyph))) _root_.LexLeanPreservation.convL_nil) (__rel_9 ((Models.Recognizer.DigitNet.encoded (glyph))))) _root_.LexLeanPreservation.convL_nil) (__rel_8 ((Models.Recognizer.DigitNet.layer1 ((Models.Recognizer.DigitNet.encoded (glyph))))))) _root_.LexLeanPreservation.convL_nil) (__rel_7 ((Models.Recognizer.DigitNet.layer2 ((Models.Recognizer.DigitNet.layer1 ((Models.Recognizer.DigitNet.encoded (glyph))))))))) _root_.LexLeanPreservation.convL_nil) (__rel_6 ((Models.Recognizer.DigitNet.layer3 ((Models.Recognizer.DigitNet.layer2 ((Models.Recognizer.DigitNet.layer1 ((Models.Recognizer.DigitNet.encoded (glyph))))))))))) + +def __fits_2 (glyph : (Models.Glyphs.Glyph)) : Bool := + (((Bool.true && ((((Bool.true && Bool.true) && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((Bool.true && Bool.true) && (__fits_5 (glyph))) && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Prod (Option (Prod Nat Int)) (List Nat))) (__p1 : Int) => __fits_4 __p0 __p1) ((fun (_ybest : (Prod (Option (Prod Nat Int)) (List Nat))) (_yscore : Int) => (match (_ybest).2 with | List.nil => _ybest | List.cons _ylabel _ylabels => ((match (_ybest).1 with | Option.none => (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) | Option.some _yleader => (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) else (Option.some (_yleader) : (Option (Prod Nat Int))))), _ylabels)))) (((Option.none : (Option (Prod Nat Int))), ((0 : Nat) :: ((1 : Nat) :: ((2 : Nat) :: ((3 : Nat) :: ((4 : Nat) :: ((5 : Nat) :: ((6 : Nat) :: ((7 : Nat) :: ((8 : Nat) :: ((9 : Nat) :: ([] : List Nat))))))))))))) ((Models.Recognizer.DigitNet.logits (glyph))))) && (match ((_root_.LexLeanCollections.listFold ((fun (_ybest : (Prod (Option (Prod Nat Int)) (List Nat))) (_yscore : Int) => (match (_ybest).2 with | List.nil => _ybest | List.cons _ylabel _ylabels => ((match (_ybest).1 with | Option.none => (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) | Option.some _yleader => (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) else (Option.some (_yleader) : (Option (Prod Nat Int))))), _ylabels)))) (((Option.none : (Option (Prod Nat Int))), ((0 : Nat) :: ((1 : Nat) :: ((2 : Nat) :: ((3 : Nat) :: ((4 : Nat) :: ((5 : Nat) :: ((6 : Nat) :: ((7 : Nat) :: ((8 : Nat) :: ((9 : Nat) :: ([] : List Nat))))))))))))) ((Models.Recognizer.DigitNet.logits (glyph))) : (Prod (Option (Prod Nat Int)) (List Nat)))).1 with | Option.none => Bool.true | Option.some _ywinner => Bool.true)) + +attribute [local irreducible] Models.Recognizer.DigitNet.logits in +theorem __rel_2 (glyph : (Models.Glyphs.Glyph)) : _root_.LexLeanPreservation.FunRel __prog 2 [(__enc_0 glyph)] (_root_.LexLeanPreservation.Rel (__fits_2 glyph) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Models.Recognizer.DigitNet glyph))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int)) (fun (__a : (Option (Prod Nat Int))) => (match __a with | Option.none => Bool.true | Option.some _ywinner => Bool.true)) (fun (__a : (Option (Prod Nat Int))) => _root_.LexLeanTarget.TargetSyntax.Value.nat (match __a with | Option.none => (0 : Nat) | Option.some _ywinner => (_ywinner).1)) ((_root_.LexLeanCollections.listFold ((fun (_ybest : (Prod (Option (Prod Nat Int)) (List Nat))) (_yscore : Int) => (match (_ybest).2 with | List.nil => _ybest | List.cons _ylabel _ylabels => ((match (_ybest).1 with | Option.none => (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) | Option.some _yleader => (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) else (Option.some (_yleader) : (Option (Prod Nat Int))))), _ylabels)))) (((Option.none : (Option (Prod Nat Int))), ((0 : Nat) :: ((1 : Nat) :: ((2 : Nat) :: ((3 : Nat) :: ((4 : Nat) :: ((5 : Nat) :: ((6 : Nat) :: ((7 : Nat) :: ((8 : Nat) :: ((9 : Nat) :: ([] : List Nat))))))))))))) ((Models.Recognizer.DigitNet.logits (glyph))) : (Prod (Option (Prod Nat Int)) (List Nat)))).1 (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_5 (glyph))) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.int) (es := (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int)) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat))) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.int) (fun _ => rfl) ((fun (_ybest : (Prod (Option (Prod Nat Int)) (List Nat))) (_yscore : Int) => (match (_ybest).2 with | List.nil => _ybest | List.cons _ylabel _ylabels => ((match (_ybest).1 with | Option.none => (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) | Option.some _yleader => (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) else (Option.some (_yleader) : (Option (Prod Nat Int))))), _ylabels)))) (fun (__p0 : (Prod (Option (Prod Nat Int)) (List Nat))) (__p1 : Int) => __fits_4 __p0 __p1) 4 [] (fun (__p0 : (Prod (Option (Prod Nat Int)) (List Nat))) (__p1 : Int) => __rel_4 __p0 __p1) (p := __prog) (fi := 3) (ta := .int) (ts := (.pair (.option (.pair .nat .int)) (.list .nat))) rfl (((Option.none : (Option (Prod Nat Int))), ((0 : Nat) :: ((1 : Nat) :: ((2 : Nat) :: ((3 : Nat) :: ((4 : Nat) :: ((5 : Nat) :: ((6 : Nat) :: ((7 : Nat) :: ((8 : Nat) :: ((9 : Nat) :: ([] : List Nat))))))))))))) ((Models.Recognizer.DigitNet.logits (glyph)))))) (fun (__a : (Option (Prod Nat Int))) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value) | Option.some _ywinner => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)))))) + +def __fits_1 (_yinput : (Models.Glyphs.Glyph)) : Bool := + ((Bool.true && Bool.true) && (__fits_2 (_yinput))) + +attribute [local irreducible] Models.Recognizer.DigitNet in +theorem __rel_1 (_yinput : (Models.Glyphs.Glyph)) : _root_.LexLeanPreservation.FunRel __prog 1 [(__enc_0 _yinput)] (_root_.LexLeanPreservation.Rel (__fits_1 _yinput) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Models.Recognizer.DigitModel _yinput))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_2 (_yinput))) + +def __fits_0 (glyph : (Models.Glyphs.Glyph)) : Bool := + ((Bool.true && Bool.true) && (__fits_1 (glyph))) + +attribute [local irreducible] Models.Recognizer.DigitModel in +theorem __rel_0 (glyph : (Models.Glyphs.Glyph)) : _root_.LexLeanPreservation.FunRel __prog 0 [(__enc_0 glyph)] (_root_.LexLeanPreservation.Rel (__fits_0 glyph) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Models.Main.classify glyph))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_1 (glyph))) + +def denote (glyph : (Models.Glyphs.Glyph)) : _root_.LexLeanPreservation.Obs := + _root_.cond (__fits_0 glyph) (_root_.LexLeanPreservation.Obs.value ((_root_.LexLeanTarget.TargetSyntax.Value.nat (Models.Main.classify glyph)))) _root_.LexLeanPreservation.Obs.overflow + +theorem root (glyph : (Models.Glyphs.Glyph)) : _root_.LexLeanPreservation.RunConv __prog 0 [(__enc_0 glyph)] (_root_.LexLeanPreservation.Rel (__fits_0 glyph) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Models.Main.classify glyph))) := + _root_.LexLeanPreservation.run_of_funRel (__rel_0 glyph) + +end LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0 diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R0/Compose/RustStd.lex.tex b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R0/Compose/RustStd.lex.tex new file mode 100644 index 000000000..3860a5379 --- /dev/null +++ b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R0/Compose/RustStd.lex.tex @@ -0,0 +1,585 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0, + LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.Compose.RustStd.__wt_0 : @16 := @448 { + all: [LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.Compose.RustStd.__wt_0], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.Compose.RustStd.root : @1168 := @1169 { + all: [LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.RustStd.program +@1 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.RustStd.krate +@2 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.RustStd.flags +@3 := Models.Glyphs.Glyph +@4 := #0 +@5 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.__enc_0 +@6 := @5 @4 +@7 := LexLeanPreservation.Rust.WT +@8 := LexLeanTarget.TargetSyntax.Ty.adt +@9 := 0 +@10 := @8 @9 +@11 := @7 @0 +@12 := @11 @1 +@13 := @12 @2 +@15 := @13 @6 @10 +@16 := (__v : @3) -> @15 +@17 := fun (__v : @3) => @15 +@18 := LexLeanTarget.TargetSyntax.Value +@19 := LexLeanTarget.TargetSyntax.Ty +@20 := List.nil.{0} +@21 := List.cons.{0} +@22 := @20 @18 +@23 := @20 @19 +@24 := LexLeanTarget.TargetSyntax.Program +@25 := LexLeanPreservation.Rust.RCrate +@26 := LexLeanPreservation.Rust.Flags +@27 := LexLeanPreservation.Rust.WTL +@28 := #2 +@29 := @27 @28 +@30 := #1 +@37 := {p : @24} -> {c : @25} -> {A : @26} -> @29 @30 @4 @22 @23 +@39 := LexLeanPreservation.Rust.wtl_nil @0 +@40 := @27 @0 +@46 := {c : @25} -> {A : @26} -> @40 @30 @4 @22 @23 +@47 := @39 @1 +@48 := @40 @1 +@52 := {A : @26} -> @48 @4 @22 @23 +@53 := @47 @2 +@54 := @48 @2 +@55 := @54 @22 +@56 := @55 @23 +@57 := Nat +@58 := List.{0} +@59 := @58 @18 +@60 := @58 @19 +@61 := Eq.{1} +@62 := Option.{0} +@63 := @62 @60 +@64 := @61 @63 +@65 := LexLeanPreservation.Rust.adtFields +@66 := #6 +@67 := @65 @66 +@68 := #3 +@71 := @64 (@67 @68 @28) +@72 := Option.some.{0} +@73 := @72 @60 +@74 := @73 @4 +@75 := @71 @74 +@76 := #7 +@78 := @27 @76 @66 +@79 := #5 +@82 := @78 @79 @28 @30 +@83 := #8 +@86 := @7 @83 @76 @66 +@87 := LexLeanTarget.TargetSyntax.Value.adt +@88 := #4 +@90 := @87 @88 @68 +@91 := @86 @90 +@92 := @8 @79 +@102 := {p : @24} -> + {c : @25} -> + {A : @26} -> + {i : @57} -> {k : @57} -> {fs : @59} -> {tys : @60} -> (h : @75) -> (hf : @82) -> @91 @92 +@104 := LexLeanPreservation.Rust.wt_adt @0 +@105 := @65 @0 +@109 := @64 (@105 @68 @28) @74 +@113 := @40 @66 @79 @28 @30 +@125 := {c : @25} -> + {A : @26} -> + {i : @57} -> + {k : @57} -> {fs : @59} -> {tys : @60} -> (h : @109) -> (hf : @113) -> @11 @76 @66 @90 @92 +@126 := @104 @1 +@129 := @48 @79 @28 @30 +@139 := {A : @26} -> + {i : @57} -> + {k : @57} -> {fs : @59} -> {tys : @60} -> (h : @109) -> (hf : @129) -> @12 @66 @90 @92 +@140 := @126 @2 +@142 := @54 @28 @30 +@143 := @13 @90 +@150 := {i : @57} -> {k : @57} -> {fs : @59} -> {tys : @60} -> (h : @109) -> (hf : @142) -> @143 @92 +@151 := @140 @9 +@152 := @105 @9 +@161 := {k : @57} -> + {fs : @59} -> {tys : @60} -> (h : @64 (@152 @28) @74) -> (hf : @142) -> @143 @10 +@162 := @151 @9 +@163 := @152 @9 +@164 := @64 @163 +@165 := @164 @74 +@166 := @87 @9 +@173 := {fs : @59} -> {tys : @60} -> (h : @165) -> (hf : @142) -> @13 (@166 @68) @10 +@174 := @162 @22 +@175 := @55 @30 +@178 := @13 (@166 @22) @10 +@181 := {tys : @60} -> (h : @165) -> (hf : @175) -> @178 +@182 := @174 @23 +@183 := @73 @23 +@186 := (h : @164 @183) -> (hf : @56) -> @178 +@187 := Eq.refl.{1} +@188 := @187 @63 +@191 := @182 (@188 @163) @53 +@192 := 1 +@193 := @151 @192 +@194 := @152 @192 +@195 := @64 @194 +@196 := @195 @74 +@197 := @87 @192 +@204 := {fs : @59} -> {tys : @60} -> (h : @196) -> (hf : @142) -> @13 (@197 @68) @10 +@205 := @193 @22 +@208 := @13 (@197 @22) @10 +@211 := {tys : @60} -> (h : @196) -> (hf : @175) -> @208 +@212 := @205 @23 +@215 := (h : @195 @183) -> (hf : @56) -> @208 +@218 := @212 (@188 @194) @53 +@219 := 2 +@220 := @151 @219 +@221 := @152 @219 +@222 := @64 @221 +@223 := @222 @74 +@224 := @87 @219 +@231 := {fs : @59} -> {tys : @60} -> (h : @223) -> (hf : @142) -> @13 (@224 @68) @10 +@232 := @220 @22 +@235 := @13 (@224 @22) @10 +@238 := {tys : @60} -> (h : @223) -> (hf : @175) -> @235 +@239 := @232 @23 +@242 := (h : @222 @183) -> (hf : @56) -> @235 +@245 := @239 (@188 @221) @53 +@246 := 3 +@247 := @151 @246 +@248 := @152 @246 +@249 := @64 @248 +@250 := @249 @74 +@251 := @87 @246 +@258 := {fs : @59} -> {tys : @60} -> (h : @250) -> (hf : @142) -> @13 (@251 @68) @10 +@259 := @247 @22 +@262 := @13 (@251 @22) @10 +@265 := {tys : @60} -> (h : @250) -> (hf : @175) -> @262 +@266 := @259 @23 +@269 := (h : @249 @183) -> (hf : @56) -> @262 +@272 := @266 (@188 @248) @53 +@273 := 4 +@274 := @151 @273 +@275 := @152 @273 +@276 := @64 @275 +@277 := @276 @74 +@278 := @87 @273 +@285 := {fs : @59} -> {tys : @60} -> (h : @277) -> (hf : @142) -> @13 (@278 @68) @10 +@286 := @274 @22 +@289 := @13 (@278 @22) @10 +@292 := {tys : @60} -> (h : @277) -> (hf : @175) -> @289 +@293 := @286 @23 +@296 := (h : @276 @183) -> (hf : @56) -> @289 +@299 := @293 (@188 @275) @53 +@300 := 5 +@301 := @151 @300 +@302 := @152 @300 +@303 := @64 @302 +@304 := @303 @74 +@305 := @87 @300 +@312 := {fs : @59} -> {tys : @60} -> (h : @304) -> (hf : @142) -> @13 (@305 @68) @10 +@313 := @301 @22 +@316 := @13 (@305 @22) @10 +@319 := {tys : @60} -> (h : @304) -> (hf : @175) -> @316 +@320 := @313 @23 +@323 := (h : @303 @183) -> (hf : @56) -> @316 +@326 := @320 (@188 @302) @53 +@327 := 6 +@328 := @151 @327 +@329 := @152 @327 +@330 := @64 @329 +@331 := @330 @74 +@332 := @87 @327 +@339 := {fs : @59} -> {tys : @60} -> (h : @331) -> (hf : @142) -> @13 (@332 @68) @10 +@340 := @328 @22 +@343 := @13 (@332 @22) @10 +@346 := {tys : @60} -> (h : @331) -> (hf : @175) -> @343 +@347 := @340 @23 +@350 := (h : @330 @183) -> (hf : @56) -> @343 +@353 := @347 (@188 @329) @53 +@354 := 7 +@355 := @151 @354 +@356 := @152 @354 +@357 := @64 @356 +@358 := @357 @74 +@359 := @87 @354 +@366 := {fs : @59} -> {tys : @60} -> (h : @358) -> (hf : @142) -> @13 (@359 @68) @10 +@367 := @355 @22 +@370 := @13 (@359 @22) @10 +@373 := {tys : @60} -> (h : @358) -> (hf : @175) -> @370 +@374 := @367 @23 +@377 := (h : @357 @183) -> (hf : @56) -> @370 +@380 := @374 (@188 @356) @53 +@381 := 8 +@382 := @151 @381 +@383 := @152 @381 +@384 := @64 @383 +@385 := @384 @74 +@386 := @87 @381 +@393 := {fs : @59} -> {tys : @60} -> (h : @385) -> (hf : @142) -> @13 (@386 @68) @10 +@394 := @382 @22 +@397 := @13 (@386 @22) @10 +@400 := {tys : @60} -> (h : @385) -> (hf : @175) -> @397 +@401 := @394 @23 +@404 := (h : @384 @183) -> (hf : @56) -> @397 +@407 := @401 (@188 @383) @53 +@408 := 9 +@409 := @151 @408 +@410 := @152 @408 +@411 := @64 @410 +@412 := @411 @74 +@413 := @87 @408 +@420 := {fs : @59} -> {tys : @60} -> (h : @412) -> (hf : @142) -> @13 (@413 @68) @10 +@421 := @409 @22 +@424 := @13 (@413 @22) @10 +@427 := {tys : @60} -> (h : @412) -> (hf : @175) -> @424 +@428 := @421 @23 +@431 := (h : @411 @183) -> (hf : @56) -> @424 +@434 := @428 (@188 @410) @53 +@448 := fun (__v : @3) => + Models.Glyphs.Glyph.casesOn.{0} @17 @4 @191 @218 @245 @272 @299 @326 @353 @380 @407 @434 +@449 := @5 @30 +@451 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.Compose.RustStd.__wt_0 @30 +@452 := @21 @18 +@454 := @452 @449 @22 +@457 := Prod.{0, 0} @57 @18 +@461 := Prod.mk.{0, 0} @57 @18 @9 +@462 := @461 @449 +@463 := @20 @457 +@464 := @21 @457 +@466 := @464 @462 @463 +@467 := Bool.true +@468 := LexLeanTarget.TargetSyntax.Function +@469 := LexLeanTarget.TargetSyntax.Program.functions +@470 := @469 @0 +@471 := @20 @57 +@472 := LexLeanTarget.TargetSyntax.Ty.unit +@473 := LexLeanTarget.TargetSyntax.Value.unit +@476 := LexLeanTarget.TargetSyntax.Expr.value @472 @473 +@481 := LexLeanTarget.TargetSyntax.Function.mk @471 @23 @472 @476 +@486 := List.getD.{0} @468 @470 @9 @481 +@490 := fun (__e_n : @57) => LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.RustStd.root @4 @9 +@495 := @7 @66 @79 @88 @68 @28 +@498 := @27 @83 @76 @66 +@500 := @452 @79 @68 +@501 := @498 @500 +@502 := @21 @19 +@504 := @502 @88 @28 +@514 := {p : @24} -> + {c : @25} -> + {A : @26} -> + {v : @18} -> {t : @19} -> {vs : @59} -> {ts : @60} -> (h : @495) -> (hs : @82) -> @501 @504 +@516 := LexLeanPreservation.Rust.wtl_cons @0 +@532 := {c : @25} -> + {A : @26} -> + {v : @18} -> + {t : @19} -> + {vs : @59} -> {ts : @60} -> (h : @11 @79 @88 @68 @28) -> (hs : @113) -> @40 @76 @66 @500 @504 +@533 := @516 @1 +@546 := {A : @26} -> + {v : @18} -> + {t : @19} -> {vs : @59} -> {ts : @60} -> (h : @12 @88 @68 @28) -> (hs : @129) -> @48 @66 @500 @504 +@547 := @533 @2 +@557 := {v : @18} -> + {t : @19} -> {vs : @59} -> {ts : @60} -> (h : @13 @68 @28) -> (hs : @142) -> @54 @500 @504 +@558 := @547 @449 +@559 := @5 @88 +@561 := @13 @559 @28 +@562 := @5 @66 +@563 := @452 @562 +@571 := {t : @19} -> {vs : @59} -> {ts : @60} -> (h : @561) -> (hs : @142) -> @54 (@563 @68) @504 +@572 := @558 @10 +@573 := @5 @68 +@575 := @13 @573 @10 +@576 := @5 @79 +@577 := @452 @576 +@579 := @54 (@577 @68) +@580 := @502 @10 +@581 := @580 @28 +@586 := {vs : @59} -> {ts : @60} -> (h : @575) -> (hs : @142) -> @579 @581 +@587 := @572 @22 +@588 := @5 @28 +@590 := @13 @588 @10 +@592 := @452 @559 @22 +@593 := @54 @592 +@597 := {ts : @60} -> (h : @590) -> (hs : @175) -> @593 @581 +@598 := @587 @23 +@600 := @13 @449 @10 +@602 := @452 @573 @22 +@603 := @54 @602 +@604 := @580 @23 +@607 := (h : @600) -> (hs : @56) -> @603 @604 +@608 := @598 @451 +@610 := @452 @588 @22 +@611 := @54 @610 +@613 := (hs : @56) -> @611 @604 +@614 := @608 @53 +@615 := @54 @454 +@616 := @615 @604 +@617 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.denote +@618 := @617 @30 +@619 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.__fits_0 +@620 := @619 @30 +@622 := Models.Main.classify @30 +@624 := LexLeanTarget.TargetSyntax.Value.nat @622 +@626 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.root @30 +@627 := Bool +@628 := Ne.{1} +@629 := LexLeanPreservation.Obs +@630 := @628 @629 +@631 := LexLeanPreservation.Rel +@634 := @630 (@631 @30 @4) +@635 := LexLeanPreservation.Obs.stuck +@638 := (f : @627) -> (v : @18) -> @634 @635 +@640 := LexLeanPreservation.Rust.rel_ne_stuck @620 +@646 := (v : @18) -> @630 (@631 (@619 @28) @4) @635 +@647 := @640 @624 +@651 := @630 (@631 @620 @624) @635 +@652 := @58 @457 +@653 := LexLeanPreservation.Rust.FunSem +@654 := #9 +@660 := (n : @57) -> @653 @654 @83 @76 @4 @66 +@661 := @62 @468 +@662 := @61 @661 +@669 := LexLeanRuntime.index (@58 @468) @468 (LexLeanRuntime.instIndexableList @468) +@673 := @662 (@669 (@469 @654) @66) +@674 := @72 @468 +@675 := @674 @79 +@676 := @673 @675 +@677 := #10 +@681 := @27 @677 @654 @83 @79 +@682 := LexLeanTarget.TargetSyntax.Function.types +@683 := @682 @66 +@684 := @681 @683 +@685 := @62 @652 +@686 := @61 @685 +@687 := LexLeanTarget.TargetSemantics.bindAll +@688 := LexLeanTarget.TargetSyntax.Function.parameters +@693 := @686 (@687 (@688 @76) @66 @463) +@694 := @72 @652 +@695 := @694 @79 +@696 := @693 @695 +@697 := @62 @627 +@698 := @61 @697 +@699 := LexLeanPreservation.Rust.fnFallible +@700 := #11 +@703 := @698 (@699 @700 @654) +@704 := @72 @627 +@705 := @704 @79 +@706 := @703 @705 +@707 := LexLeanPreservation.RunConv +@708 := #13 +@712 := @707 @708 @677 @83 @79 +@714 := @630 @66 @635 +@715 := Exists.{1} +@716 := LexLeanPreservation.Rust.ROut +@717 := @715 @716 +@718 := And +@719 := LexLeanPreservation.Rust.RealizesFn +@723 := @718 (@719 @654 @83 @4) +@724 := LexLeanPreservation.Rust.RCI +@726 := @724 #15 +@727 := LexLeanPreservation.Rust.fnIdent +@728 := @727 @708 +@735 := (hne : @714) -> @717 (fun (ro : @716) => @723 (@726 @728 @700 @4)) +@750 := {p : @24} -> + {c : @25} -> + {A : @26} -> + {f : @57} -> + {fn : @468} -> + {args : @59} -> + {env : @652} -> + {F : @627} -> + {o : @629} -> + (hB : @660) -> + (hfn : @676) -> (hwt : @684) -> (hbind : @696) -> (hF : @706) -> (hA : @712) -> @735 +@752 := LexLeanPreservation.Rust.compose @0 +@753 := @653 @0 +@758 := (n : @57) -> @753 @83 @76 @4 @66 +@759 := @669 @470 +@762 := @662 (@759 @66) @675 +@766 := @40 @654 @83 @79 @683 +@767 := @707 @0 +@770 := @767 @677 @83 @79 +@784 := {c : @25} -> + {A : @26} -> + {f : @57} -> + {fn : @468} -> + {args : @59} -> + {env : @652} -> + {F : @627} -> + {o : @629} -> + (hB : @758) -> + (hfn : @762) -> (hwt : @766) -> (hbind : @696) -> (hF : @706) -> (hA : @770) -> @735 +@785 := @752 @1 +@786 := @753 @1 +@790 := (n : @57) -> @786 @76 @4 @66 +@793 := @48 @83 @79 @683 +@794 := @699 @1 +@797 := @698 (@794 @654) @705 +@798 := @724 @1 +@808 := (hbind : @696) -> + (hF : @797) -> (hA : @770) -> (hne : @714) -> @717 (fun (ro : @716) => @723 (@798 @728 @700 @4)) +@818 := {A : @26} -> + {f : @57} -> + {fn : @468} -> + {args : @59} -> + {env : @652} -> {F : @627} -> {o : @629} -> (hB : @790) -> (hfn : @762) -> (hwt : @793) -> @808 +@819 := @785 @2 +@821 := @786 @2 @4 +@823 := (n : @57) -> @821 @66 +@824 := @54 @79 +@825 := @824 @683 +@834 := {f : @57} -> + {fn : @468} -> + {args : @59} -> + {env : @652} -> {F : @627} -> {o : @629} -> (hB : @823) -> (hfn : @762) -> (hwt : @825) -> @808 +@835 := @819 @9 +@837 := (n : @57) -> @821 @9 +@838 := @759 @9 +@839 := @662 @838 +@840 := @839 @675 +@841 := @794 @9 +@842 := @698 @841 +@843 := @842 @705 +@844 := @767 @9 +@846 := @844 @83 @79 +@848 := @798 (@727 @9) +@856 := (hF : @843) -> (hA : @846) -> (hne : @714) -> @717 (fun (ro : @716) => @723 (@848 @700 @4)) +@865 := {fn : @468} -> + {args : @59} -> + {env : @652} -> + {F : @627} -> {o : @629} -> (hB : @837) -> (hfn : @840) -> (hwt : @825) -> (hbind : @696) -> @856 +@866 := @835 @486 +@868 := @839 (@674 @486) +@869 := @682 @486 +@870 := @824 @869 +@872 := @687 (@688 @486) +@884 := {args : @59} -> + {env : @652} -> + {F : @627} -> + {o : @629} -> + (hB : @837) -> (hfn : @868) -> (hwt : @870) -> (hbind : @686 (@872 @66 @463) @695) -> @856 +@885 := @866 @454 +@886 := @563 @22 +@888 := @54 @886 @869 +@891 := @452 (@5 @76) @22 +@895 := @686 (@872 @891 @463) @695 +@898 := @452 (@5 @654) @22 +@919 := {env : @652} -> + {F : @627} -> + {o : @629} -> + (hB : @837) -> + (hfn : @868) -> + (hwt : @888) -> + (hbind : @895) -> + (hF : @843) -> + (hA : @844 @898 @79) -> + (hne : @714) -> @717 (fun (ro : @716) => @723 (@848 (@452 (@5 #12) @22) @4)) +@920 := @885 @466 +@921 := @577 @22 +@923 := @54 @921 @869 +@931 := @686 (@872 @886 @463) (@694 (@464 (@461 @562) @463)) +@934 := @452 (@5 @83) @22 +@953 := {F : @627} -> + {o : @629} -> + (hB : @837) -> + (hfn : @868) -> + (hwt : @923) -> + (hbind : @931) -> + (hF : @843) -> + (hA : @844 @934 @79) -> + (hne : @714) -> @717 (fun (ro : @716) => @723 (@848 (@452 (@5 @700) @22) @4)) +@954 := @920 @467 +@955 := @593 @869 +@963 := @686 (@872 @921 @463) (@694 (@464 (@461 @576) @463)) +@965 := @842 (@704 @467) +@967 := @844 @891 @79 +@968 := @719 @467 +@987 := {o : @629} -> + (hB : @837) -> + (hfn : @868) -> + (hwt : @955) -> + (hbind : @963) -> + (hF : @965) -> + (hA : @967) -> + (hne : @714) -> @717 (fun (ro : @716) => @718 (@968 @83 @4) (@848 (@452 (@5 @677) @22) @4)) +@988 := @954 @618 +@989 := @603 @869 +@997 := @686 (@872 @592 @463) (@694 (@464 (@461 @559) @463)) +@998 := @844 @886 +@999 := @617 @66 +@1000 := @998 @999 +@1001 := @617 @76 +@1019 := (hB : @837) -> + (hfn : @868) -> + (hwt : @989) -> + (hbind : @997) -> + (hF : @965) -> + (hA : @1000) -> + (hne : @630 @1001 @635) -> @717 (fun (ro : @716) => @718 (@968 (@617 @654) @4) (@848 @898 @4)) +@1020 := @988 @490 +@1021 := @611 @869 +@1029 := @686 (@872 @602 @463) (@694 (@464 (@461 @573) @463)) +@1030 := @844 @921 +@1031 := @617 @79 +@1049 := (hfn : @868) -> + (hwt : @1021) -> + (hbind : @1029) -> + (hF : @965) -> + (hA : @1030 @1031) -> + (hne : @630 @999 @635) -> @717 (fun (ro : @716) => @718 (@968 (@617 @83) @4) (@848 @934 @4)) +@1052 := @1020 (@187 @661 @838) +@1053 := @615 @869 +@1061 := @686 (@872 @610 @463) (@694 (@464 (@461 @588) @463)) +@1062 := @844 @592 +@1063 := @617 @88 +@1079 := (hwt : @1053) -> + (hbind : @1061) -> + (hF : @965) -> + (hA : @1062 @1063) -> + (hne : @630 @1031 @635) -> @717 (fun (ro : @716) => @718 (@968 @1001 @4) (@848 @891 @4)) +@1080 := @1052 @614 +@1082 := @872 @454 @463 +@1085 := @686 @1082 (@694 @466) +@1086 := @844 @602 +@1087 := @617 @68 +@1102 := (hbind : @1085) -> + (hF : @965) -> + (hA : @1086 @1087) -> + (hne : @630 @1063 @635) -> @717 (fun (ro : @716) => @718 (@968 @999 @4) (@848 @886 @4)) +@1105 := @1080 (@187 @685 @1082) +@1106 := @844 @610 +@1107 := @617 @28 +@1121 := (hF : @965) -> + (hA : @1106 @1107) -> + (hne : @630 @1087 @635) -> @717 (fun (ro : @716) => @718 (@968 @1031 @4) (@848 @921 @4)) +@1124 := @1105 (@187 @697 @841) +@1138 := (hA : @844 @454 @618) -> + (hne : @630 @1107 @635) -> @717 (fun (ro : @716) => @718 (@968 @1063 @4) (@848 @592 @4)) +@1139 := @1124 @626 +@1150 := (hne : @630 @618 @635) -> @717 (fun (ro : @716) => @718 (@968 @1087 @4) (@848 @602 @4)) +@1151 := @1139 @647 +@1157 := @718 (@968 @1107 @4) (@848 @610 @4) +@1159 := @717 (fun (ro : @716) => @1157) +@1161 := @717 (fun (__e_ro : @716) => @1157) +@1165 := LexLeanPreservation.Rust.RepresentableL (@452 @6 @22) +@1166 := (__e_hrep : @1165) -> @1161 +@1167 := fun (__e_hrep : @1165) => @1151 +@1168 := (glyph : @3) -> @1166 +@1169 := fun (glyph : @3) => @1167 +\end{coremodule} +\end{lexlean} diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R0/RustStd.lean b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R0/RustStd.lean new file mode 100644 index 000000000..b6e290d73 --- /dev/null +++ b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R0/RustStd.lean @@ -0,0 +1,234 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [{ constructors := [[], [], [], [], [], [], [], [], [], []] }], functions := [ + { parameters := [0], types := [(.adt 0)], result := .nat, + body := (.call 1 [(.var 0)]) }, + { parameters := [0], types := [(.adt 0)], result := .nat, + body := (.call 2 [(.var 0)]) }, + { parameters := [0], types := [(.adt 0)], result := .nat, + body := (.«match» .nat (.first (.call 3 [(.closure 4 []), (.build .pair (.pair (.option (.pair .nat .int)) (.list .nat)) [(.build .none (.option (.pair .nat .int)) []), (.build .cons (.list .nat) [(.value .nat (.nat 0)), (.build .cons (.list .nat) [(.value .nat (.nat 1)), (.build .cons (.list .nat) [(.value .nat (.nat 2)), (.build .cons (.list .nat) [(.value .nat (.nat 3)), (.build .cons (.list .nat) [(.value .nat (.nat 4)), (.build .cons (.list .nat) [(.value .nat (.nat 5)), (.build .cons (.list .nat) [(.value .nat (.nat 6)), (.build .cons (.list .nat) [(.value .nat (.nat 7)), (.build .cons (.list .nat) [(.value .nat (.nat 8)), (.build .cons (.list .nat) [(.value .nat (.nat 9)), (.build .nil (.list .nat) [])])])])])])])])])])])]), (.call 5 [(.var 0)])])) [(.arm .none [] (.value .nat (.nat 0))), (.arm .some [1] (.first (.var 1)))]) }, + { parameters := [0, 1, 2], types := [(.fn [(.pair (.option (.pair .nat .int)) (.list .nat)), .int] (.pair (.option (.pair .nat .int)) (.list .nat))), (.pair (.option (.pair .nat .int)) (.list .nat)), (.list .int)], result := (.pair (.option (.pair .nat .int)) (.list .nat)), + body := (.«match» (.pair (.option (.pair .nat .int)) (.list .nat)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 3 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, + { parameters := [0, 1], types := [(.pair (.option (.pair .nat .int)) (.list .nat)), .int], result := (.pair (.option (.pair .nat .int)) (.list .nat)), + body := (.«match» (.pair (.option (.pair .nat .int)) (.list .nat)) (.second (.var 0)) [(.arm .nil [] (.var 0)), (.arm .cons [2, 3] (.build .pair (.pair (.option (.pair .nat .int)) (.list .nat)) [(.«match» (.option (.pair .nat .int)) (.first (.var 0)) [(.arm .none [] (.build .some (.option (.pair .nat .int)) [(.build .pair (.pair .nat .int) [(.var 2), (.var 1)])])), (.arm .some [4] (.cond (.«match» .bool (.prim .compare [(.second (.var 4)), (.var 1)]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.build .some (.option (.pair .nat .int)) [(.build .pair (.pair .nat .int) [(.var 2), (.var 1)])]) (.build .some (.option (.pair .nat .int)) [(.var 4)])))]), (.var 3)]))]) }, + { parameters := [0], types := [(.adt 0)], result := (.list .int), + body := (.call 6 [(.call 7 [(.call 8 [(.call 9 [(.call 10 [(.var 0)])])])])]) }, + { parameters := [0], types := [(.list .int)], result := (.list .int), + body := (.first (.call 11 [(.closure 12 [(.var 0)]), (.build .pair (.pair (.list .int) (.list .int)) [(.build .nil (.list .int) []), (.call 13 [])]), (.call 14 [])])) }, + { parameters := [0], types := [(.list .int)], result := (.list .int), + body := (.call 15 [(.closure 16 []), (.build .nil (.list .int) []), (.var 0)]) }, + { parameters := [0], types := [(.list .int)], result := (.list .int), + body := (.call 15 [(.closure 17 []), (.build .nil (.list .int) []), (.var 0)]) }, + { parameters := [0], types := [(.list .int)], result := (.list .int), + body := (.first (.call 11 [(.closure 18 [(.var 0)]), (.build .pair (.pair (.list .int) (.list .int)) [(.build .nil (.list .int) []), (.call 19 [])]), (.call 20 [])])) }, + { parameters := [0], types := [(.adt 0)], result := (.list .int), + body := (.call 21 [(.var 0)]) }, + { parameters := [0, 1, 2], types := [(.fn [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int))), (.pair (.list .int) (.list .int)), (.list (.list .int))], result := (.pair (.list .int) (.list .int)), + body := (.«match» (.pair (.list .int) (.list .int)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 11 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, + { parameters := [0, 1, 2], types := [(.list .int), (.pair (.list .int) (.list .int)), (.list .int)], result := (.pair (.list .int) (.list .int)), + body := (.«match» (.pair (.list .int) (.list .int)) (.second (.var 1)) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.build .pair (.pair (.list .int) (.list .int)) [(.prim .append [(.first (.var 1)), (.build .cons (.list .int) [(.prim .intSub [(.var 3), (.prim .intNeg [(.first (.call 22 [(.closure 23 []), (.build .pair (.pair .int (.list .int)) [(.value .int (.int 0)), (.var 0)]), (.var 2)]))])]), (.build .nil (.list .int) [])])]), (.var 4)]))]) }, + { parameters := [], types := [], result := (.list .int), + body := (.build .cons (.list .int) [(.value .int (.int (-6))), (.build .cons (.list .int) [(.value .int (.int (-2))), (.build .cons (.list .int) [(.value .int (.int (-5))), (.build .cons (.list .int) [(.value .int (.int (-5))), (.build .cons (.list .int) [(.value .int (.int (-4))), (.build .cons (.list .int) [(.value .int (.int (-5))), (.build .cons (.list .int) [(.value .int (.int (-6))), (.build .cons (.list .int) [(.value .int (.int (-3))), (.build .cons (.list .int) [(.value .int (.int (-7))), (.build .cons (.list .int) [(.value .int (.int (-6))), (.build .nil (.list .int) [])])])])])])])])])])]) }, + { parameters := [], types := [], result := (.list (.list .int)), + body := (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .nil (.list (.list .int)) [])])])])])])])])])])]) }, + { parameters := [0, 1, 2], types := [(.fn [(.list .int), .int] (.list .int)), (.list .int), (.list .int)], result := (.list .int), + body := (.«match» (.list .int) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 15 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, + { parameters := [0, 1], types := [(.list .int), .int], result := (.list .int), + body := (.prim .append [(.var 0), (.build .cons (.list .int) [(.«let» 2 .int (.prim .intQuot [(.var 1), (.value .int (.int 4)), (.value .int (.int 0))]) (.cond (.«match» .bool (.prim .compare [(.var 2), (.value .int (.int 0))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.value .int (.int 0)) (.cond (.«match» .bool (.prim .compare [(.value .int (.int 127)), (.var 2)]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.value .int (.int 127)) (.var 2)))), (.build .nil (.list .int) [])])]) }, + { parameters := [0, 1], types := [(.list .int), .int], result := (.list .int), + body := (.prim .append [(.var 0), (.build .cons (.list .int) [(.cond (.«match» .bool (.prim .compare [(.var 1), (.value .int (.int 0))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.value .int (.int 0)) (.var 1)), (.build .nil (.list .int) [])])]) }, + { parameters := [0, 1, 2], types := [(.list .int), (.pair (.list .int) (.list .int)), (.list .int)], result := (.pair (.list .int) (.list .int)), + body := (.«match» (.pair (.list .int) (.list .int)) (.second (.var 1)) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.build .pair (.pair (.list .int) (.list .int)) [(.prim .append [(.first (.var 1)), (.build .cons (.list .int) [(.prim .intSub [(.var 3), (.prim .intNeg [(.first (.call 22 [(.closure 24 []), (.build .pair (.pair .int (.list .int)) [(.value .int (.int 0)), (.var 0)]), (.var 2)]))])]), (.build .nil (.list .int) [])])]), (.var 4)]))]) }, + { parameters := [], types := [], result := (.list .int), + body := (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int (-2))), (.build .cons (.list .int) [(.value .int (.int 3)), (.build .cons (.list .int) [(.value .int (.int (-5))), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .nil (.list .int) [])])])])])])])])])])])])]) }, + { parameters := [], types := [], result := (.list (.list .int)), + body := (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 3)), (.build .cons (.list .int) [(.value .int (.int (-2))), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int (-1))), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int (-3))), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int (-1))), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int (-2))), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int (-4))), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 3)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .nil (.list (.list .int)) [])])])])])])])])])])])])]) }, + { parameters := [0], types := [(.adt 0)], result := (.list .int), + body := (.«match» (.list .int) (.var 0) [(.arm (.adt 0) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 1) [] (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 2) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 3) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 4) [] (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 5) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 6) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 7) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 8) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 9) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])]))]) }, + { parameters := [0, 1, 2], types := [(.fn [(.pair .int (.list .int)), .int] (.pair .int (.list .int))), (.pair .int (.list .int)), (.list .int)], result := (.pair .int (.list .int)), + body := (.«match» (.pair .int (.list .int)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 22 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, + { parameters := [0, 1], types := [(.pair .int (.list .int)), .int], result := (.pair .int (.list .int)), + body := (.«match» (.pair .int (.list .int)) (.second (.var 0)) [(.arm .nil [] (.var 0)), (.arm .cons [2, 3] (.build .pair (.pair .int (.list .int)) [(.prim .intSub [(.first (.var 0)), (.prim .intNeg [(.prim .intMul [(.var 1), (.var 2)])])]), (.var 3)]))]) }, + { parameters := [0, 1], types := [(.pair .int (.list .int)), .int], result := (.pair .int (.list .int)), + body := (.«match» (.pair .int (.list .int)) (.second (.var 0)) [(.arm .nil [] (.var 0)), (.arm .cons [2, 3] (.build .pair (.pair .int (.list .int)) [(.prim .intSub [(.first (.var 0)), (.prim .intNeg [(.prim .intMul [(.var 1), (.var 2)])])]), (.var 3)]))]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := ((.enum (.adt 0) [{ number := 0, fields := [] }, { number := 1, fields := [] }, { number := 2, fields := [] }, { number := 3, fields := [] }, { number := 4, fields := [] }, { number := 5, fields := [] }, { number := 6, fields := [] }, { number := 7, fields := [] }, { number := 8, fields := [] }, { number := 9, fields := [] }]) :: + (.enum (.fn 0) [{ number := 4, fields := [] }]) :: + (.apply 0 [(.pair (.option (.pair .nat .int)) (.list .nat)), .int] (.pair (.option (.pair .nat .int)) (.list .nat)) false [{ function := 4, captures := [], functionFallible := false }]) :: + (.enum (.fn 1) [{ number := 12, fields := [(.list .int)] }, { number := 18, fields := [(.list .int)] }]) :: + (.apply 1 [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int)) true [{ function := 12, captures := [.clone], functionFallible := true }, { function := 18, captures := [.clone], functionFallible := true }]) :: + (.enum (.fn 2) [{ number := 16, fields := [] }, { number := 17, fields := [] }]) :: + (.apply 2 [(.list .int), .int] (.list .int) true [{ function := 16, captures := [], functionFallible := true }, { function := 17, captures := [], functionFallible := false }]) :: + (.enum (.fn 3) [{ number := 23, fields := [] }, { number := 24, fields := [] }]) :: + (.apply 3 [(.pair .int (.list .int)), .int] (.pair .int (.list .int)) true [{ function := 23, captures := [], functionFallible := true }, { function := 24, captures := [], functionFallible := true }]) :: + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible .nat) (.mk [] (.call (.function 1) [(.move (.generated .binding 0))] false))) :: + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible .nat) (.mk [] (.call (.function 2) [(.move (.generated .binding 0))] false))) :: + (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 2)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 1)), .wild]) none (.call (.function 3) [(.construct (.closure 0 4) []), (.pair (.construct (.none (.pair .nat .int)) []) (.construct .cons [(.lit (.nat 0)), (.construct .cons [(.lit (.nat 1)), (.construct .cons [(.lit (.nat 2)), (.construct .cons [(.lit (.nat 3)), (.construct .cons [(.lit (.nat 4)), (.construct .cons [(.lit (.nat 5)), (.construct .cons [(.lit (.nat 6)), (.construct .cons [(.lit (.nat 7)), (.construct .cons [(.lit (.nat 8)), (.construct .cons [(.lit (.nat 9)), (.construct (.nil .nat) [])])])])])])])])])])])), (.call (.function 5) [(.move (.generated .binding 0))] true)] false))] (.move (.generated .part 1)))))] (.matchOn (.move (.generated .holder 2)) [(.mk .none (.mk [] (.succeed (.lit (.nat 0))))), (.mk (.some (.bind (.generated .binding 1))) (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.copy (.generated .binding 1)))] (.succeed (.move (.generated .part 3)))))]))) :: + (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := (.pair (.option (.pair .nat .int)) (.list .nat)) }, { pattern := (.bind (.generated .binding 2)), type := (.list .int) }] (.pair (.option (.pair .nat .int)) (.list .nat)) (.mk [(.mk (.bind (.generated .holder 4)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 4)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 3) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 5)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 5) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]))) :: + (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := (.pair (.option (.pair .nat .int)) (.list .nat)) }, { pattern := (.bind (.generated .binding 1)), type := .int }] (.pair (.option (.pair .nat .int)) (.list .nat)) (.mk [(.mk (.bind (.generated .holder 7)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 6))]) none (.clone (.generated .binding 0)))] (.move (.generated .part 6)))))] (.matchOn (.uncons (.generated .holder 7)) [(.mk .none (.mk [] (.move (.generated .binding 0)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.pair (.block (.mk [(.mk (.bind (.generated .holder 9)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 8)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 8)))))] (.matchOn (.move (.generated .holder 9)) [(.mk .none (.mk [] (.construct .some [(.pair (.copy (.generated .binding 2)) (.copy (.generated .binding 1)))]))), (.mk (.some (.bind (.generated .binding 4))) (.mk [(.mk (.bind (.generated .holder 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 10))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 10))))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .compare) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))] (.cond (.matchOn (.move (.generated .holder 13)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.construct .some [(.pair (.copy (.generated .binding 2)) (.copy (.generated .binding 1)))])) (.mk [] (.construct .some [(.copy (.generated .binding 4))])))))]))) (.move (.generated .binding 3)))))]))) :: + (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible (.list .int)) (.mk [] (.call (.function 6) [(.call (.function 7) [(.call (.function 8) [(.call (.function 9) [(.call (.function 10) [(.move (.generated .binding 0))] false)] true)] true)] true)] false))) :: + (.function (.generated .function 6) [{ pattern := (.bind (.generated .binding 0)), type := (.list .int) }] (.fallible (.list .int)) (.mk [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.call (.function 11) [(.construct (.closure 1 12) [(.move (.generated .binding 0))]), (.pair (.construct (.nil .int) []) (.call (.function 13) [] false)), (.call (.function 14) [] false)] true))] (.succeed (.move (.generated .part 14))))) :: + (.function (.generated .function 7) [{ pattern := (.bind (.generated .binding 0)), type := (.list .int) }] (.fallible (.list .int)) (.mk [] (.call (.function 15) [(.construct (.closure 2 16) []), (.construct (.nil .int) []), (.move (.generated .binding 0))] false))) :: + (.function (.generated .function 8) [{ pattern := (.bind (.generated .binding 0)), type := (.list .int) }] (.fallible (.list .int)) (.mk [] (.call (.function 15) [(.construct (.closure 2 17) []), (.construct (.nil .int) []), (.move (.generated .binding 0))] false))) :: + (.function (.generated .function 9) [{ pattern := (.bind (.generated .binding 0)), type := (.list .int) }] (.fallible (.list .int)) (.mk [(.mk (.tuple [(.bind (.generated .part 15)), .wild]) none (.call (.function 11) [(.construct (.closure 1 18) [(.move (.generated .binding 0))]), (.pair (.construct (.nil .int) []) (.call (.function 19) [] false)), (.call (.function 20) [] false)] true))] (.succeed (.move (.generated .part 15))))) :: + (.function (.generated .function 10) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.list .int) (.mk [] (.call (.function 21) [(.move (.generated .binding 0))] false))) :: + (.function (.generated .function 11) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 1) }, { pattern := (.bind (.generated .binding 1)), type := (.pair (.list .int) (.list .int)) }, { pattern := (.bind (.generated .binding 2)), type := (.list (.list .int)) }] (.fallible (.pair (.list .int) (.list .int))) (.mk [(.mk (.bind (.generated .holder 16)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 16)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 11) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 17)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 17) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]))) :: + (.function (.generated .function 12) [{ pattern := (.bind (.generated .binding 0)), type := (.list .int) }, { pattern := (.bind (.generated .binding 1)), type := (.pair (.list .int) (.list .int)) }, { pattern := (.bind (.generated .binding 2)), type := (.list .int) }] (.fallible (.pair (.list .int) (.list .int))) (.mk [(.mk (.bind (.generated .holder 19)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 18))]) none (.clone (.generated .binding 1)))] (.move (.generated .part 18)))))] (.matchOn (.uncons (.generated .holder 19)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 20)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 20))))), (.mk (.bind (.generated .operand 26)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 21)), .wild]) none (.call (.function 22) [(.construct (.closure 3 23) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 21)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 22))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] true))), (.construct (.nil .int) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))) (.move (.generated .binding 4))))))]))) :: + (.function (.generated .function 13) [] (.list .int) (.mk [] (.construct .cons [(.lit (.int (-6))), (.construct .cons [(.lit (.int (-2))), (.construct .cons [(.lit (.int (-5))), (.construct .cons [(.lit (.int (-5))), (.construct .cons [(.lit (.int (-4))), (.construct .cons [(.lit (.int (-5))), (.construct .cons [(.lit (.int (-6))), (.construct .cons [(.lit (.int (-3))), (.construct .cons [(.lit (.int (-7))), (.construct .cons [(.lit (.int (-6))), (.construct (.nil .int) [])])])])])])])])])])]))) :: + (.function (.generated .function 14) [] (.list (.list .int)) (.mk [] (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct (.nil (.list .int)) [])])])])])])])])])])]))) :: + (.function (.generated .function 15) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 2) }, { pattern := (.bind (.generated .binding 1)), type := (.list .int) }, { pattern := (.bind (.generated .binding 2)), type := (.list .int) }] (.fallible (.list .int)) (.mk [(.mk (.bind (.generated .holder 27)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 27)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 15) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 28)) (some (.fn 2)) (.move (.generated .binding 0)))] (.apply (.generated .callee 28) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]))) :: + (.function (.generated .function 16) [{ pattern := (.bind (.generated .binding 0)), type := (.list .int) }, { pattern := (.bind (.generated .binding 1)), type := .int }] (.fallible (.list .int)) (.mk [(.mk (.bind (.generated .operand 38)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 39)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .binding 2)) (some .int) (.block (.mk [(.mk (.bind (.generated .operand 29)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 30)) none (.lit (.int 4))), (.mk (.bind (.generated .operand 31)) none (.lit (.int 0)))] (.call (.runtime .intQuot) [(.move (.generated .operand 29)), (.move (.generated .operand 30)), (.move (.generated .operand 31))] true)))), (.mk (.bind (.generated .holder 34)) none (.block (.mk [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 33)) none (.lit (.int 0)))] (.call (.runtime .compare) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] false))))] (.cond (.matchOn (.move (.generated .holder 34)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.lit (.int 0))) (.mk [(.mk (.bind (.generated .holder 37)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.lit (.int 127))), (.mk (.bind (.generated .operand 36)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false))))] (.cond (.matchOn (.move (.generated .holder 37)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.lit (.int 127))) (.mk [] (.copy (.generated .binding 2)))))))), (.construct (.nil .int) [])]))] (.succeed (.call (.runtime .appendList) [(.move (.generated .operand 38)), (.move (.generated .operand 39))] false)))) :: + (.function (.generated .function 17) [{ pattern := (.bind (.generated .binding 0)), type := (.list .int) }, { pattern := (.bind (.generated .binding 1)), type := .int }] (.list .int) (.mk [(.mk (.bind (.generated .operand 43)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 44)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .holder 42)) none (.block (.mk [(.mk (.bind (.generated .operand 40)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 41)) none (.lit (.int 0)))] (.call (.runtime .compare) [(.move (.generated .operand 40)), (.move (.generated .operand 41))] false))))] (.cond (.matchOn (.move (.generated .holder 42)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.lit (.int 0))) (.mk [] (.copy (.generated .binding 1)))))), (.construct (.nil .int) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] false))) :: + (.function (.generated .function 18) [{ pattern := (.bind (.generated .binding 0)), type := (.list .int) }, { pattern := (.bind (.generated .binding 1)), type := (.pair (.list .int) (.list .int)) }, { pattern := (.bind (.generated .binding 2)), type := (.list .int) }] (.fallible (.pair (.list .int) (.list .int))) (.mk [(.mk (.bind (.generated .holder 46)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 45))]) none (.clone (.generated .binding 1)))] (.move (.generated .part 45)))))] (.matchOn (.uncons (.generated .holder 46)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 52)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 47)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 47))))), (.mk (.bind (.generated .operand 53)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 50)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 51)) none (.block (.mk [(.mk (.bind (.generated .operand 49)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 48)), .wild]) none (.call (.function 22) [(.construct (.closure 3 24) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 48)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 49))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 50)), (.move (.generated .operand 51))] true))), (.construct (.nil .int) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 52)), (.move (.generated .operand 53))] false))) (.move (.generated .binding 4))))))]))) :: + (.function (.generated .function 19) [] (.list .int) (.mk [] (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int (-2))), (.construct .cons [(.lit (.int 3)), (.construct .cons [(.lit (.int (-5))), (.construct .cons [(.lit (.int 2)), (.construct (.nil .int) [])])])])])])])])])])])])]))) :: + (.function (.generated .function 20) [] (.list (.list .int)) (.mk [] (.construct .cons [(.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 3)), (.construct .cons [(.lit (.int (-2))), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int (-1))), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int (-3))), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int (-1))), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int (-2))), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int (-4))), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 3)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct (.nil (.list .int)) [])])])])])])])])])])])])]))) :: + (.function (.generated .function 21) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.list .int) (.mk [(.mk (.bind (.generated .holder 54)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 54)) [(.mk (.adt 0 0 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 1 []) (.mk [] (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 2 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 3 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 4 []) (.mk [] (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 5 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 6 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 7 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 8 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 9 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])])))]))) :: + (.function (.generated .function 22) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 3) }, { pattern := (.bind (.generated .binding 1)), type := (.pair .int (.list .int)) }, { pattern := (.bind (.generated .binding 2)), type := (.list .int) }] (.fallible (.pair .int (.list .int))) (.mk [(.mk (.bind (.generated .holder 55)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 55)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 22) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 56)) (some (.fn 3)) (.move (.generated .binding 0)))] (.apply (.generated .callee 56) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]))) :: + (.function (.generated .function 23) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .int (.list .int)) }, { pattern := (.bind (.generated .binding 1)), type := .int }] (.fallible (.pair .int (.list .int))) (.mk [(.mk (.bind (.generated .holder 58)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 57))]) none (.clone (.generated .binding 0)))] (.move (.generated .part 57)))))] (.matchOn (.uncons (.generated .holder 58)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 0))))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 63)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 59)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 59))))), (.mk (.bind (.generated .operand 64)) none (.block (.mk [(.mk (.bind (.generated .operand 62)) none (.block (.mk [(.mk (.bind (.generated .operand 60)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 61)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] true))))] (.call (.runtime .intNeg) [(.move (.generated .operand 62))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 63)), (.move (.generated .operand 64))] true))) (.move (.generated .binding 3))))))]))) :: + (.function (.generated .function 24) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .int (.list .int)) }, { pattern := (.bind (.generated .binding 1)), type := .int }] (.fallible (.pair .int (.list .int))) (.mk [(.mk (.bind (.generated .holder 66)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 65))]) none (.clone (.generated .binding 0)))] (.move (.generated .part 65)))))] (.matchOn (.uncons (.generated .holder 66)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 0))))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 71)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 67)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 67))))), (.mk (.bind (.generated .operand 72)) none (.block (.mk [(.mk (.bind (.generated .operand 70)) none (.block (.mk [(.mk (.bind (.generated .operand 68)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 69)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 68)), (.move (.generated .operand 69))] true))))] (.call (.runtime .intNeg) [(.move (.generated .operand 70))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 71)), (.move (.generated .operand 72))] true))) (.move (.generated .binding 3))))))]))) :: + []) } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [(([(.pair (.option (.pair .nat .int)) (.list .nat)), .int], (.pair (.option (.pair .nat .int)) (.list .nat))), false), (([(.pair (.list .int) (.list .int)), (.list .int)], (.pair (.list .int) (.list .int))), true), (([(.list .int), .int], (.list .int)), true), (([(.pair .int (.list .int)), .int], (.pair .int (.list .int))), true)] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 1) [(.move (.generated .binding 0))] false), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.callF (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 2) [(.move (.generated .binding 0))] false), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.callF (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 2)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 1)), .wild]) none (.call (.function 3) [(.construct (.closure 0 4) []), (.pair (.construct (.none (.pair .nat .int)) []) (.construct .cons [(.lit (.nat 0)), (.construct .cons [(.lit (.nat 1)), (.construct .cons [(.lit (.nat 2)), (.construct .cons [(.lit (.nat 3)), (.construct .cons [(.lit (.nat 4)), (.construct .cons [(.lit (.nat 5)), (.construct .cons [(.lit (.nat 6)), (.construct .cons [(.lit (.nat 7)), (.construct .cons [(.lit (.nat 8)), (.construct .cons [(.lit (.nat 9)), (.construct (.nil .nat) [])])])])])])])])])])])), (.call (.function 5) [(.move (.generated .binding 0))] true)] false))] (.move (.generated .part 1)))))], (.matchOn (.move (.generated .holder 2)) [(.mk .none (.mk [] (.succeed (.lit (.nat 0))))), (.mk (.some (.bind (.generated .binding 1))) (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.copy (.generated .binding 1)))] (.succeed (.move (.generated .part 3)))))]), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option (.pair .nat .int))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 1)), .wild]) none (.call (.function 3) [(.construct (.closure 0 4) []), (.pair (.construct (.none (.pair .nat .int)) []) (.construct .cons [(.lit (.nat 0)), (.construct .cons [(.lit (.nat 1)), (.construct .cons [(.lit (.nat 2)), (.construct .cons [(.lit (.nat 3)), (.construct .cons [(.lit (.nat 4)), (.construct .cons [(.lit (.nat 5)), (.construct .cons [(.lit (.nat 6)), (.construct .cons [(.lit (.nat 7)), (.construct .cons [(.lit (.nat 8)), (.construct .cons [(.lit (.nat 9)), (.construct (.nil .nat) [])])])])])])])])])])])), (.call (.function 5) [(.move (.generated .binding 0))] true)] false))]) (tail := (.move (.generated .part 1))) (Corr.first (ta := (.option (.pair .nat .int))) (tb := (.list .nat)) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.pair (.option (.pair .nat .int)) (.list .nat)), .int] (.pair (.option (.pair .nat .int)) (.list .nat))), (.pair (.option (.pair .nat .int)) (.list .nat)), (.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := false) (ff := false) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl)) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.lit (.nat 0)))) (Corr.mCons (Γ' := [(1, (.pair .nat .int), (some 1)), (0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.copy (.generated .binding 1)))]) (tail := (.succeed (.move (.generated .part 3)))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.first (ta := .nat) (tb := .int) (Corr.var rfl rfl) rfl))) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl)))) rfl rfl rfl)⟩⟩ + +theorem fun3 : FunOK program krate flags 3 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 4)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 4)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 3) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 5)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 5) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]), [(2, (.list .int), (some 2)), (1, (.pair (.option (.pair .nat .int)) (.list .nat)), (some 1)), (0, (.fn [(.pair (.option (.pair .nat .int)) (.list .nat)), .int] (.pair (.option (.pair .nat .int)) (.list .nat))), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .int)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .int), (some 2)), (1, (.pair (.option (.pair .nat .int)) (.list .nat)), (some 1)), (0, (.fn [(.pair (.option (.pair .nat .int)) (.list .nat)), .int] (.pair (.option (.pair .nat .int)) (.list .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 1))) (Corr.mCons (Γ' := [(4, (.list .int), (some 4)), (3, .int, (some 3)), (2, (.list .int), (some 2)), (1, (.pair (.option (.pair .nat .int)) (.list .nat)), (some 1)), (0, (.fn [(.pair (.option (.pair .nat .int)) (.list .nat)), .int] (.pair (.option (.pair .nat .int)) (.list .nat))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 3) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 5)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 5) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.fn [(.pair (.option (.pair .nat .int)) (.list .nat)), .int] (.pair (.option (.pair .nat .int)) (.list .nat))), (.pair (.option (.pair .nat .int)) (.list .nat)), (.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 5)) (some (.fn 0)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 5) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] false)) (Corr.apply (ps := [(.pair (.option (.pair .nat .int)) (.list .nat)), .int]) (af := false) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ + +theorem fun4 : FunOK program krate flags 4 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 7)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 6))]) none (.clone (.generated .binding 0)))] (.move (.generated .part 6)))))], (.matchOn (.uncons (.generated .holder 7)) [(.mk .none (.mk [] (.move (.generated .binding 0)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.pair (.block (.mk [(.mk (.bind (.generated .holder 9)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 8)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 8)))))] (.matchOn (.move (.generated .holder 9)) [(.mk .none (.mk [] (.construct .some [(.pair (.copy (.generated .binding 2)) (.copy (.generated .binding 1)))]))), (.mk (.some (.bind (.generated .binding 4))) (.mk [(.mk (.bind (.generated .holder 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 10))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 10))))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .compare) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))] (.cond (.matchOn (.move (.generated .holder 13)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.construct .some [(.pair (.copy (.generated .binding 2)) (.copy (.generated .binding 1)))])) (.mk [] (.construct .some [(.copy (.generated .binding 4))])))))]))) (.move (.generated .binding 3)))))]), [(1, .int, (some 1)), (0, (.pair (.option (.pair .nat .int)) (.list .nat)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 6))]) none (.clone (.generated .binding 0)))]) (tail := (.move (.generated .part 6))) (Corr.second (ta := (.option (.pair .nat .int))) (tb := (.list .nat)) (Corr.var rfl rfl) rfl)) (Corr.mCons (Γ' := [(1, .int, (some 1)), (0, (.pair (.option (.pair .nat .int)) (.list .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 0))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .int, (some 1)), (0, (.pair (.option (.pair .nat .int)) (.list .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.pair (.block (.mk [(.mk (.bind (.generated .holder 9)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 8)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 8)))))] (.matchOn (.move (.generated .holder 9)) [(.mk .none (.mk [] (.construct .some [(.pair (.copy (.generated .binding 2)) (.copy (.generated .binding 1)))]))), (.mk (.some (.bind (.generated .binding 4))) (.mk [(.mk (.bind (.generated .holder 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 10))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 10))))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .compare) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))] (.cond (.matchOn (.move (.generated .holder 13)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.construct .some [(.pair (.copy (.generated .binding 2)) (.copy (.generated .binding 1)))])) (.mk [] (.construct .some [(.copy (.generated .binding 4))])))))]))) (.move (.generated .binding 3)))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 9)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 8)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 8)))))]) (tail := (.matchOn (.move (.generated .holder 9)) [(.mk .none (.mk [] (.construct .some [(.pair (.copy (.generated .binding 2)) (.copy (.generated .binding 1)))]))), (.mk (.some (.bind (.generated .binding 4))) (.mk [(.mk (.bind (.generated .holder 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 10))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 10))))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .compare) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))] (.cond (.matchOn (.move (.generated .holder 13)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.construct .some [(.pair (.copy (.generated .binding 2)) (.copy (.generated .binding 1)))])) (.mk [] (.construct .some [(.copy (.generated .binding 4))])))))])) (Corr.matchArms (st := (.option (.pair .nat .int))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 8)), .wild]) none (.move (.generated .binding 0)))]) (tail := (.move (.generated .part 8))) (Corr.first (ta := (.option (.pair .nat .int))) (tb := (.list .nat)) (Corr.var rfl rfl) rfl)) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .int, (some 1)), (0, (.pair (.option (.pair .nat .int)) (.list .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.pair (.copy (.generated .binding 2)) (.copy (.generated .binding 1)))])) (Corr.mCons (Γ' := [(4, (.pair .nat .int), (some 4)), (3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .int, (some 1)), (0, (.pair (.option (.pair .nat .int)) (.list .nat)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 10))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 10))))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .compare) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 13)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.construct .some [(.pair (.copy (.generated .binding 2)) (.copy (.generated .binding 1)))])) (.mk [] (.construct .some [(.copy (.generated .binding 4))])))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .holder 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 10))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 10))))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .compare) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))]) (ce := (.matchOn (.move (.generated .holder 13)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 11)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 10))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 10))))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 10))]) none (.copy (.generated .binding 4)))]) (tail := (.move (.generated .part 10))) (Corr.second (ta := .nat) (tb := .int) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.pair .nat .int), (some 4)), (3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .int, (some 1)), (0, (.pair (.option (.pair .nat .int)) (.list .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.pair .nat .int), (some 4)), (3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .int, (some 1)), (0, (.pair (.option (.pair .nat .int)) (.list .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, (.pair .nat .int), (some 4)), (3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .int, (some 1)), (0, (.pair (.option (.pair .nat .int)) (.list .nat)), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.pair (.copy (.generated .binding 2)) (.copy (.generated .binding 1)))])) (lb := []) (tb := (.construct .some [(.copy (.generated .binding 4))])) (Corr.build (ts := [(.pair .nat .int)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lNil))) rfl) (Corr.build (ts := [(.pair .nat .int)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)))) rfl rfl rfl (Corr.build (ts := [(.pair .nat .int)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lNil))) rfl)) rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))))) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ + +theorem fun5 : FunOK program krate flags 5 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 6) [(.call (.function 7) [(.call (.function 8) [(.call (.function 9) [(.call (.function 10) [(.move (.generated .binding 0))] false)] true)] true)] true)] false), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.callF (ts := [(.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl)⟩⟩ + +theorem fun6 : FunOK program krate flags 6 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.call (.function 11) [(.construct (.closure 1 12) [(.move (.generated .binding 0))]), (.pair (.construct (.nil .int) []) (.call (.function 13) [] false)), (.call (.function 14) [] false)] true))], (.succeed (.move (.generated .part 14))), [(0, (.list .int), (some 0))], rfl, rfl, + (Corr.fOfB (Corr.first (ta := (.list .int)) (tb := (.list .int)) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int))), (.pair (.list .int) (.list .int)), (.list (.list .int))]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [(.list .int)]) (mask := [false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := []) (Corr.opsNil) rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := []) (Corr.opsNil) rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl))⟩⟩ + +theorem fun7 : FunOK program krate flags 7 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 15) [(.construct (.closure 2 16) []), (.construct (.nil .int) []), (.move (.generated .binding 0))] false), [(0, (.list .int), (some 0))], rfl, rfl, + (Corr.callF (ts := [(.fn [(.list .int), .int] (.list .int)), (.list .int), (.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)⟩⟩ + +theorem fun8 : FunOK program krate flags 8 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 15) [(.construct (.closure 2 17) []), (.construct (.nil .int) []), (.move (.generated .binding 0))] false), [(0, (.list .int), (some 0))], rfl, rfl, + (Corr.callF (ts := [(.fn [(.list .int), .int] (.list .int)), (.list .int), (.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := false) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)⟩⟩ + +theorem fun9 : FunOK program krate flags 9 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.tuple [(.bind (.generated .part 15)), .wild]) none (.call (.function 11) [(.construct (.closure 1 18) [(.move (.generated .binding 0))]), (.pair (.construct (.nil .int) []) (.call (.function 19) [] false)), (.call (.function 20) [] false)] true))], (.succeed (.move (.generated .part 15))), [(0, (.list .int), (some 0))], rfl, rfl, + (Corr.fOfB (Corr.first (ta := (.list .int)) (tb := (.list .int)) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int))), (.pair (.list .int) (.list .int)), (.list (.list .int))]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [(.list .int)]) (mask := [false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := []) (Corr.opsNil) rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := []) (Corr.opsNil) rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl))⟩⟩ + +theorem fun10 : FunOK program krate flags 10 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 21) [(.move (.generated .binding 0))] false), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun11 : FunOK program krate flags 11 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 16)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 16)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 11) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 17)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 17) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]), [(2, (.list (.list .int)), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.fn [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int))), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.list .int))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.list .int)), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.fn [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list (.list .int)), (some 4)), (3, (.list .int), (some 3)), (2, (.list (.list .int)), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.fn [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 11) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 17)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 17) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int))), (.pair (.list .int) (.list .int)), (.list (.list .int))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 17)) (some (.fn 1)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 17) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true)) (Corr.apply (ps := [(.pair (.list .int) (.list .int)), (.list .int)]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ + +theorem fun12 : FunOK program krate flags 12 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 19)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 18))]) none (.clone (.generated .binding 1)))] (.move (.generated .part 18)))))], (.matchOn (.uncons (.generated .holder 19)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 20)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 20))))), (.mk (.bind (.generated .operand 26)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 21)), .wild]) none (.call (.function 22) [(.construct (.closure 3 23) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 21)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 22))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] true))), (.construct (.nil .int) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))) (.move (.generated .binding 4))))))]), [(2, (.list .int), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.list .int), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .int)) (U := []) (view := true) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 18))]) none (.clone (.generated .binding 1)))]) (tail := (.move (.generated .part 18))) (Corr.second (ta := (.list .int)) (tb := (.list .int)) (Corr.var rfl rfl) rfl)) (Corr.mCons (Γ' := [(2, (.list .int), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.list .int), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list .int), (some 4)), (3, .int, (some 3)), (2, (.list .int), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.list .int), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 20)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 20))))), (.mk (.bind (.generated .operand 26)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 21)), .wild]) none (.call (.function 22) [(.construct (.closure 3 23) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 21)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 22))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] true))), (.construct (.nil .int) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))) (.move (.generated .binding 4))))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 25)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 20)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 20))))), (.mk (.bind (.generated .operand 26)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 21)), .wild]) none (.call (.function 22) [(.construct (.closure 3 23) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 21)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 22))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] true))), (.construct (.nil .int) [])]))]) (tail := (.call (.runtime .appendList) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false)) (Corr.prim (ts := [(.list .int), (.list .int)]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 20)), .wild]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 20))) (Corr.first (ta := (.list .int)) (tb := (.list .int)) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 21)), .wild]) none (.call (.function 22) [(.construct (.closure 3 23) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 21)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 22))] true))))]) (tail := (.call (.runtime .intSub) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] true)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 21)), .wild]) none (.call (.function 22) [(.construct (.closure 3 23) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 21)))))]) (tail := (.call (.runtime .intNeg) [(.move (.generated .operand 22))] true)) (Corr.prim (ts := [.int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 21)), .wild]) none (.call (.function 22) [(.construct (.closure 3 23) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))]) (tail := (.move (.generated .part 21))) (Corr.first (ta := .int) (tb := (.list .int)) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.pair .int (.list .int)), .int] (.pair .int (.list .int))), (.pair .int (.list .int)), (.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl)) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))))) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ + +theorem fun13 : FunOK program krate flags 13 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct .cons [(.lit (.int (-6))), (.construct .cons [(.lit (.int (-2))), (.construct .cons [(.lit (.int (-5))), (.construct .cons [(.lit (.int (-5))), (.construct .cons [(.lit (.int (-4))), (.construct .cons [(.lit (.int (-5))), (.construct .cons [(.lit (.int (-6))), (.construct .cons [(.lit (.int (-3))), (.construct .cons [(.lit (.int (-7))), (.construct .cons [(.lit (.int (-6))), (.construct (.nil .int) [])])])])])])])])])])]), [], rfl, rfl, + (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)⟩⟩ + +theorem fun14 : FunOK program krate flags 14 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct (.nil (.list .int)) [])])])])])])])])])])]), [], rfl, rfl, + (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)⟩⟩ + +theorem fun15 : FunOK program krate flags 15 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 27)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 27)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 15) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 28)) (some (.fn 2)) (.move (.generated .binding 0)))] (.apply (.generated .callee 28) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]), [(2, (.list .int), (some 2)), (1, (.list .int), (some 1)), (0, (.fn [(.list .int), .int] (.list .int)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .int)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .int), (some 2)), (1, (.list .int), (some 1)), (0, (.fn [(.list .int), .int] (.list .int)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list .int), (some 4)), (3, .int, (some 3)), (2, (.list .int), (some 2)), (1, (.list .int), (some 1)), (0, (.fn [(.list .int), .int] (.list .int)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 15) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 28)) (some (.fn 2)) (.move (.generated .binding 0)))] (.apply (.generated .callee 28) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.list .int), .int] (.list .int)), (.list .int), (.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 28)) (some (.fn 2)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 28) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true)) (Corr.apply (ps := [(.list .int), .int]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ + +theorem fun16 : FunOK program krate flags 16 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 38)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 39)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .binding 2)) (some .int) (.block (.mk [(.mk (.bind (.generated .operand 29)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 30)) none (.lit (.int 4))), (.mk (.bind (.generated .operand 31)) none (.lit (.int 0)))] (.call (.runtime .intQuot) [(.move (.generated .operand 29)), (.move (.generated .operand 30)), (.move (.generated .operand 31))] true)))), (.mk (.bind (.generated .holder 34)) none (.block (.mk [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 33)) none (.lit (.int 0)))] (.call (.runtime .compare) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] false))))] (.cond (.matchOn (.move (.generated .holder 34)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.lit (.int 0))) (.mk [(.mk (.bind (.generated .holder 37)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.lit (.int 127))), (.mk (.bind (.generated .operand 36)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false))))] (.cond (.matchOn (.move (.generated .holder 37)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.lit (.int 127))) (.mk [] (.copy (.generated .binding 2)))))))), (.construct (.nil .int) [])]))], (.succeed (.call (.runtime .appendList) [(.move (.generated .operand 38)), (.move (.generated .operand 39))] false)), [(1, .int, (some 1)), (0, (.list .int), (some 0))], rfl, rfl, + (Corr.fOfB (Corr.prim (ts := [(.list .int), (.list .int)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .binding 2)) (some .int) (.block (.mk [(.mk (.bind (.generated .operand 29)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 30)) none (.lit (.int 4))), (.mk (.bind (.generated .operand 31)) none (.lit (.int 0)))] (.call (.runtime .intQuot) [(.move (.generated .operand 29)), (.move (.generated .operand 30)), (.move (.generated .operand 31))] true)))), (.mk (.bind (.generated .holder 34)) none (.block (.mk [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 33)) none (.lit (.int 0)))] (.call (.runtime .compare) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 34)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.lit (.int 0))) (.mk [(.mk (.bind (.generated .holder 37)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.lit (.int 127))), (.mk (.bind (.generated .operand 36)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false))))] (.cond (.matchOn (.move (.generated .holder 37)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.lit (.int 127))) (.mk [] (.copy (.generated .binding 2))))))) (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 29)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 30)) none (.lit (.int 4))), (.mk (.bind (.generated .operand 31)) none (.lit (.int 0)))]) (tail := (.call (.runtime .intQuot) [(.move (.generated .operand 29)), (.move (.generated .operand 30)), (.move (.generated .operand 31))] true)) (Corr.prim (ts := [.int, .int, .int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := [(.mk (.bind (.generated .holder 34)) none (.block (.mk [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 33)) none (.lit (.int 0)))] (.call (.runtime .compare) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] false))))]) (ce := (.matchOn (.move (.generated .holder 34)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 33)) none (.lit (.int 0)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] false)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(2, .int, (some 2)), (1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, .int, (some 2)), (1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(2, .int, (some 2)), (1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.int 0))) (lb := [(.mk (.bind (.generated .holder 37)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.lit (.int 127))), (.mk (.bind (.generated .operand 36)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false))))]) (tb := (.cond (.matchOn (.move (.generated .holder 37)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.lit (.int 127))) (.mk [] (.copy (.generated .binding 2))))) (Corr.bOfE (Corr.value rfl rfl)) (Corr.cond (lc := [(.mk (.bind (.generated .holder 37)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.lit (.int 127))), (.mk (.bind (.generated .operand 36)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false))))]) (ce := (.matchOn (.move (.generated .holder 37)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 35)) none (.lit (.int 127))), (.mk (.bind (.generated .operand 36)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(2, .int, (some 2)), (1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, .int, (some 2)), (1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(2, .int, (some 2)), (1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.int 127))) (lb := []) (tb := (.copy (.generated .binding 2))) (Corr.bOfE (Corr.value rfl rfl)) (Corr.bOfE (Corr.var rfl rfl)))))))) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl))⟩⟩ + +theorem fun17 : FunOK program krate flags 17 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 43)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 44)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .holder 42)) none (.block (.mk [(.mk (.bind (.generated .operand 40)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 41)) none (.lit (.int 0)))] (.call (.runtime .compare) [(.move (.generated .operand 40)), (.move (.generated .operand 41))] false))))] (.cond (.matchOn (.move (.generated .holder 42)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.lit (.int 0))) (.mk [] (.copy (.generated .binding 1)))))), (.construct (.nil .int) [])]))], (.call (.runtime .appendList) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] false), [(1, .int, (some 1)), (0, (.list .int), (some 0))], rfl, rfl, + (Corr.prim (ts := [(.list .int), (.list .int)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 42)) none (.block (.mk [(.mk (.bind (.generated .operand 40)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 41)) none (.lit (.int 0)))] (.call (.runtime .compare) [(.move (.generated .operand 40)), (.move (.generated .operand 41))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 42)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.lit (.int 0))) (.mk [] (.copy (.generated .binding 1))))) (Corr.cond (lc := [(.mk (.bind (.generated .holder 42)) none (.block (.mk [(.mk (.bind (.generated .operand 40)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 41)) none (.lit (.int 0)))] (.call (.runtime .compare) [(.move (.generated .operand 40)), (.move (.generated .operand 41))] false))))]) (ce := (.matchOn (.move (.generated .holder 42)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 40)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 41)) none (.lit (.int 0)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 40)), (.move (.generated .operand 41))] false)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.int 0))) (lb := []) (tb := (.copy (.generated .binding 1))) (Corr.bOfE (Corr.value rfl rfl)) (Corr.bOfE (Corr.var rfl rfl))))) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun18 : FunOK program krate flags 18 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 46)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 45))]) none (.clone (.generated .binding 1)))] (.move (.generated .part 45)))))], (.matchOn (.uncons (.generated .holder 46)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 52)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 47)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 47))))), (.mk (.bind (.generated .operand 53)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 50)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 51)) none (.block (.mk [(.mk (.bind (.generated .operand 49)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 48)), .wild]) none (.call (.function 22) [(.construct (.closure 3 24) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 48)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 49))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 50)), (.move (.generated .operand 51))] true))), (.construct (.nil .int) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 52)), (.move (.generated .operand 53))] false))) (.move (.generated .binding 4))))))]), [(2, (.list .int), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.list .int), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .int)) (U := []) (view := true) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 45))]) none (.clone (.generated .binding 1)))]) (tail := (.move (.generated .part 45))) (Corr.second (ta := (.list .int)) (tb := (.list .int)) (Corr.var rfl rfl) rfl)) (Corr.mCons (Γ' := [(2, (.list .int), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.list .int), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list .int), (some 4)), (3, .int, (some 3)), (2, (.list .int), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.list .int), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 52)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 47)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 47))))), (.mk (.bind (.generated .operand 53)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 50)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 51)) none (.block (.mk [(.mk (.bind (.generated .operand 49)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 48)), .wild]) none (.call (.function 22) [(.construct (.closure 3 24) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 48)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 49))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 50)), (.move (.generated .operand 51))] true))), (.construct (.nil .int) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 52)), (.move (.generated .operand 53))] false))) (.move (.generated .binding 4))))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 52)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 47)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 47))))), (.mk (.bind (.generated .operand 53)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 50)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 51)) none (.block (.mk [(.mk (.bind (.generated .operand 49)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 48)), .wild]) none (.call (.function 22) [(.construct (.closure 3 24) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 48)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 49))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 50)), (.move (.generated .operand 51))] true))), (.construct (.nil .int) [])]))]) (tail := (.call (.runtime .appendList) [(.move (.generated .operand 52)), (.move (.generated .operand 53))] false)) (Corr.prim (ts := [(.list .int), (.list .int)]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 47)), .wild]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 47))) (Corr.first (ta := (.list .int)) (tb := (.list .int)) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 50)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 51)) none (.block (.mk [(.mk (.bind (.generated .operand 49)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 48)), .wild]) none (.call (.function 22) [(.construct (.closure 3 24) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 48)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 49))] true))))]) (tail := (.call (.runtime .intSub) [(.move (.generated .operand 50)), (.move (.generated .operand 51))] true)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 49)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 48)), .wild]) none (.call (.function 22) [(.construct (.closure 3 24) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 48)))))]) (tail := (.call (.runtime .intNeg) [(.move (.generated .operand 49))] true)) (Corr.prim (ts := [.int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 48)), .wild]) none (.call (.function 22) [(.construct (.closure 3 24) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))]) (tail := (.move (.generated .part 48))) (Corr.first (ta := .int) (tb := (.list .int)) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.pair .int (.list .int)), .int] (.pair .int (.list .int))), (.pair .int (.list .int)), (.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl)) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))))) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ + +theorem fun19 : FunOK program krate flags 19 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int (-2))), (.construct .cons [(.lit (.int 3)), (.construct .cons [(.lit (.int (-5))), (.construct .cons [(.lit (.int 2)), (.construct (.nil .int) [])])])])])])])])])])])])]), [], rfl, rfl, + (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)⟩⟩ + +theorem fun20 : FunOK program krate flags 20 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct .cons [(.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 3)), (.construct .cons [(.lit (.int (-2))), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int (-1))), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int (-3))), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int (-1))), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int (-2))), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int (-4))), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 3)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct (.nil (.list .int)) [])])])])])])])])])])])])]), [], rfl, rfl, + (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)⟩⟩ + +theorem fun21 : FunOK program krate flags 21 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 54)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 54)) [(.mk (.adt 0 0 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 1 []) (.mk [] (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 2 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 3 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 4 []) (.mk [] (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 5 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 6 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 7 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 8 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 9 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])])))]), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.adt 0)) (U := []) (view := false) (idx := [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 3) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 4) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 5) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 6) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 7) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 8) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 9) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun22 : FunOK program krate flags 22 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 55)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 55)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 22) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 56)) (some (.fn 3)) (.move (.generated .binding 0)))] (.apply (.generated .callee 56) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]), [(2, (.list .int), (some 2)), (1, (.pair .int (.list .int)), (some 1)), (0, (.fn [(.pair .int (.list .int)), .int] (.pair .int (.list .int))), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .int)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .int), (some 2)), (1, (.pair .int (.list .int)), (some 1)), (0, (.fn [(.pair .int (.list .int)), .int] (.pair .int (.list .int))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list .int), (some 4)), (3, .int, (some 3)), (2, (.list .int), (some 2)), (1, (.pair .int (.list .int)), (some 1)), (0, (.fn [(.pair .int (.list .int)), .int] (.pair .int (.list .int))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 22) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 56)) (some (.fn 3)) (.move (.generated .binding 0)))] (.apply (.generated .callee 56) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.pair .int (.list .int)), .int] (.pair .int (.list .int))), (.pair .int (.list .int)), (.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 56)) (some (.fn 3)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 56) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true)) (Corr.apply (ps := [(.pair .int (.list .int)), .int]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ + +theorem fun23 : FunOK program krate flags 23 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 58)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 57))]) none (.clone (.generated .binding 0)))] (.move (.generated .part 57)))))], (.matchOn (.uncons (.generated .holder 58)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 0))))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 63)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 59)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 59))))), (.mk (.bind (.generated .operand 64)) none (.block (.mk [(.mk (.bind (.generated .operand 62)) none (.block (.mk [(.mk (.bind (.generated .operand 60)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 61)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] true))))] (.call (.runtime .intNeg) [(.move (.generated .operand 62))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 63)), (.move (.generated .operand 64))] true))) (.move (.generated .binding 3))))))]), [(1, .int, (some 1)), (0, (.pair .int (.list .int)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .int)) (U := []) (view := true) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 57))]) none (.clone (.generated .binding 0)))]) (tail := (.move (.generated .part 57))) (Corr.second (ta := .int) (tb := (.list .int)) (Corr.var rfl rfl) rfl)) (Corr.mCons (Γ' := [(1, .int, (some 1)), (0, (.pair .int (.list .int)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 0)))) (Corr.mCons (Γ' := [(3, (.list .int), (some 3)), (2, .int, (some 2)), (1, .int, (some 1)), (0, (.pair .int (.list .int)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 63)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 59)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 59))))), (.mk (.bind (.generated .operand 64)) none (.block (.mk [(.mk (.bind (.generated .operand 62)) none (.block (.mk [(.mk (.bind (.generated .operand 60)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 61)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] true))))] (.call (.runtime .intNeg) [(.move (.generated .operand 62))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 63)), (.move (.generated .operand 64))] true))) (.move (.generated .binding 3))))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 63)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 59)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 59))))), (.mk (.bind (.generated .operand 64)) none (.block (.mk [(.mk (.bind (.generated .operand 62)) none (.block (.mk [(.mk (.bind (.generated .operand 60)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 61)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] true))))] (.call (.runtime .intNeg) [(.move (.generated .operand 62))] true))))]) (tail := (.call (.runtime .intSub) [(.move (.generated .operand 63)), (.move (.generated .operand 64))] true)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 59)), .wild]) none (.move (.generated .binding 0)))]) (tail := (.move (.generated .part 59))) (Corr.first (ta := .int) (tb := (.list .int)) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 62)) none (.block (.mk [(.mk (.bind (.generated .operand 60)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 61)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] true))))]) (tail := (.call (.runtime .intNeg) [(.move (.generated .operand 62))] true)) (Corr.prim (ts := [.int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 60)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 61)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .intMul) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] true)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))))) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ + +theorem fun24 : FunOK program krate flags 24 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 66)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 65))]) none (.clone (.generated .binding 0)))] (.move (.generated .part 65)))))], (.matchOn (.uncons (.generated .holder 66)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 0))))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 71)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 67)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 67))))), (.mk (.bind (.generated .operand 72)) none (.block (.mk [(.mk (.bind (.generated .operand 70)) none (.block (.mk [(.mk (.bind (.generated .operand 68)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 69)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 68)), (.move (.generated .operand 69))] true))))] (.call (.runtime .intNeg) [(.move (.generated .operand 70))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 71)), (.move (.generated .operand 72))] true))) (.move (.generated .binding 3))))))]), [(1, .int, (some 1)), (0, (.pair .int (.list .int)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .int)) (U := []) (view := true) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 65))]) none (.clone (.generated .binding 0)))]) (tail := (.move (.generated .part 65))) (Corr.second (ta := .int) (tb := (.list .int)) (Corr.var rfl rfl) rfl)) (Corr.mCons (Γ' := [(1, .int, (some 1)), (0, (.pair .int (.list .int)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 0)))) (Corr.mCons (Γ' := [(3, (.list .int), (some 3)), (2, .int, (some 2)), (1, .int, (some 1)), (0, (.pair .int (.list .int)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 71)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 67)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 67))))), (.mk (.bind (.generated .operand 72)) none (.block (.mk [(.mk (.bind (.generated .operand 70)) none (.block (.mk [(.mk (.bind (.generated .operand 68)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 69)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 68)), (.move (.generated .operand 69))] true))))] (.call (.runtime .intNeg) [(.move (.generated .operand 70))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 71)), (.move (.generated .operand 72))] true))) (.move (.generated .binding 3))))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 71)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 67)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 67))))), (.mk (.bind (.generated .operand 72)) none (.block (.mk [(.mk (.bind (.generated .operand 70)) none (.block (.mk [(.mk (.bind (.generated .operand 68)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 69)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 68)), (.move (.generated .operand 69))] true))))] (.call (.runtime .intNeg) [(.move (.generated .operand 70))] true))))]) (tail := (.call (.runtime .intSub) [(.move (.generated .operand 71)), (.move (.generated .operand 72))] true)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 67)), .wild]) none (.move (.generated .binding 0)))]) (tail := (.move (.generated .part 67))) (Corr.first (ta := .int) (tb := (.list .int)) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 70)) none (.block (.mk [(.mk (.bind (.generated .operand 68)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 69)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 68)), (.move (.generated .operand 69))] true))))]) (tail := (.call (.runtime .intNeg) [(.move (.generated .operand 70))] true)) (Corr.prim (ts := [.int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 68)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 69)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .intMul) [(.move (.generated .operand 68)), (.move (.generated .operand 69))] true)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))))) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | 3 => exact fun3 + | 4 => exact fun4 + | 5 => exact fun5 + | 6 => exact fun6 + | 7 => exact fun7 + | 8 => exact fun8 + | 9 => exact fun9 + | 10 => exact fun10 + | 11 => exact fun11 + | 12 => exact fun12 + | 13 => exact fun13 + | 14 => exact fun14 + | 15 => exact fun15 + | 16 => exact fun16 + | 17 => exact fun17 + | 18 => exact fun18 + | 19 => exact fun19 + | 20 => exact fun20 + | 21 => exact fun21 + | 22 => exact fun22 + | 23 => exact fun23 + | 24 => exact fun24 + | _ + 25 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.RustStd diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R1.lean b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R1.lean new file mode 100644 index 000000000..f0ddf68d7 --- /dev/null +++ b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R1.lean @@ -0,0 +1,245 @@ +import LexLeanPreservation.Core +import LexLeanPreservation.Values +import LexLeanPreservation.Primitives +import LexLeanPreservation.Fixed +import LexLeanPreservation.Keys +import LexLeanPreservation.Templates +import LexLeanPreservation.Validate +import Models.Flows +import Models.Glyphs +import Models.Ledger +import Models.Main +import Models.Pipeline +import Models.Policy +import Models.Recognizer +import Models.Session +import Models.Triage +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +set_option linter.unusedVariables false +namespace LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1 + +def __prog : _root_.LexLeanTarget.TargetSyntax.Program := + { adts := [{ constructors := [[], [], [], [], [], [], [], [], [], []] }], functions := [ + { parameters := [0], types := [(.adt 0)], result := (.result .nat (.pair .bool .bool)), + body := (.«let» 1 (.adt 0) (.var 0) (.«let» 2 .nat (.call 1 [(.var 1)]) (.cond (.call 2 [(.var 1), (.var 2)]) (.build .ok (.result .nat (.pair .bool .bool)) [(.var 2)]) (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])])])))) }, + { parameters := [0], types := [(.adt 0)], result := .nat, + body := (.call 3 [(.var 0)]) }, + { parameters := [0, 1], types := [(.adt 0), .nat], result := .bool, + body := (.prim .natEq [(.var 1), (.call 4 [(.var 0)])]) }, + { parameters := [0], types := [(.adt 0)], result := .nat, + body := (.«match» .nat (.first (.call 5 [(.closure 6 []), (.build .pair (.pair (.option (.pair .nat .int)) (.list .nat)) [(.build .none (.option (.pair .nat .int)) []), (.build .cons (.list .nat) [(.value .nat (.nat 0)), (.build .cons (.list .nat) [(.value .nat (.nat 1)), (.build .cons (.list .nat) [(.value .nat (.nat 2)), (.build .cons (.list .nat) [(.value .nat (.nat 3)), (.build .cons (.list .nat) [(.value .nat (.nat 4)), (.build .cons (.list .nat) [(.value .nat (.nat 5)), (.build .cons (.list .nat) [(.value .nat (.nat 6)), (.build .cons (.list .nat) [(.value .nat (.nat 7)), (.build .cons (.list .nat) [(.value .nat (.nat 8)), (.build .cons (.list .nat) [(.value .nat (.nat 9)), (.build .nil (.list .nat) [])])])])])])])])])])])]), (.call 7 [(.var 0)])])) [(.arm .none [] (.value .nat (.nat 0))), (.arm .some [1] (.first (.var 1)))]) }, + { parameters := [0], types := [(.adt 0)], result := .nat, + body := (.«match» .nat (.var 0) [(.arm (.adt 0) [] (.value .nat (.nat 0))), (.arm (.adt 1) [] (.value .nat (.nat 1))), (.arm (.adt 2) [] (.value .nat (.nat 2))), (.arm (.adt 3) [] (.value .nat (.nat 3))), (.arm (.adt 4) [] (.value .nat (.nat 4))), (.arm (.adt 5) [] (.value .nat (.nat 5))), (.arm (.adt 6) [] (.value .nat (.nat 6))), (.arm (.adt 7) [] (.value .nat (.nat 7))), (.arm (.adt 8) [] (.value .nat (.nat 8))), (.arm (.adt 9) [] (.value .nat (.nat 9)))]) }, + { parameters := [0, 1, 2], types := [(.fn [(.pair (.option (.pair .nat .int)) (.list .nat)), .int] (.pair (.option (.pair .nat .int)) (.list .nat))), (.pair (.option (.pair .nat .int)) (.list .nat)), (.list .int)], result := (.pair (.option (.pair .nat .int)) (.list .nat)), + body := (.«match» (.pair (.option (.pair .nat .int)) (.list .nat)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 5 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, + { parameters := [0, 1], types := [(.pair (.option (.pair .nat .int)) (.list .nat)), .int], result := (.pair (.option (.pair .nat .int)) (.list .nat)), + body := (.«match» (.pair (.option (.pair .nat .int)) (.list .nat)) (.second (.var 0)) [(.arm .nil [] (.var 0)), (.arm .cons [2, 3] (.build .pair (.pair (.option (.pair .nat .int)) (.list .nat)) [(.«match» (.option (.pair .nat .int)) (.first (.var 0)) [(.arm .none [] (.build .some (.option (.pair .nat .int)) [(.build .pair (.pair .nat .int) [(.var 2), (.var 1)])])), (.arm .some [4] (.cond (.«match» .bool (.prim .compare [(.second (.var 4)), (.var 1)]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.build .some (.option (.pair .nat .int)) [(.build .pair (.pair .nat .int) [(.var 2), (.var 1)])]) (.build .some (.option (.pair .nat .int)) [(.var 4)])))]), (.var 3)]))]) }, + { parameters := [0], types := [(.adt 0)], result := (.list .int), + body := (.call 8 [(.call 9 [(.call 10 [(.call 11 [(.call 12 [(.var 0)])])])])]) }, + { parameters := [0], types := [(.list .int)], result := (.list .int), + body := (.first (.call 13 [(.closure 14 [(.var 0)]), (.build .pair (.pair (.list .int) (.list .int)) [(.build .nil (.list .int) []), (.call 15 [])]), (.call 16 [])])) }, + { parameters := [0], types := [(.list .int)], result := (.list .int), + body := (.call 17 [(.closure 18 []), (.build .nil (.list .int) []), (.var 0)]) }, + { parameters := [0], types := [(.list .int)], result := (.list .int), + body := (.call 17 [(.closure 19 []), (.build .nil (.list .int) []), (.var 0)]) }, + { parameters := [0], types := [(.list .int)], result := (.list .int), + body := (.first (.call 13 [(.closure 20 [(.var 0)]), (.build .pair (.pair (.list .int) (.list .int)) [(.build .nil (.list .int) []), (.call 21 [])]), (.call 22 [])])) }, + { parameters := [0], types := [(.adt 0)], result := (.list .int), + body := (.call 23 [(.var 0)]) }, + { parameters := [0, 1, 2], types := [(.fn [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int))), (.pair (.list .int) (.list .int)), (.list (.list .int))], result := (.pair (.list .int) (.list .int)), + body := (.«match» (.pair (.list .int) (.list .int)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 13 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, + { parameters := [0, 1, 2], types := [(.list .int), (.pair (.list .int) (.list .int)), (.list .int)], result := (.pair (.list .int) (.list .int)), + body := (.«match» (.pair (.list .int) (.list .int)) (.second (.var 1)) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.build .pair (.pair (.list .int) (.list .int)) [(.prim .append [(.first (.var 1)), (.build .cons (.list .int) [(.prim .intSub [(.var 3), (.prim .intNeg [(.first (.call 24 [(.closure 25 []), (.build .pair (.pair .int (.list .int)) [(.value .int (.int 0)), (.var 0)]), (.var 2)]))])]), (.build .nil (.list .int) [])])]), (.var 4)]))]) }, + { parameters := [], types := [], result := (.list .int), + body := (.build .cons (.list .int) [(.value .int (.int (-6))), (.build .cons (.list .int) [(.value .int (.int (-2))), (.build .cons (.list .int) [(.value .int (.int (-5))), (.build .cons (.list .int) [(.value .int (.int (-5))), (.build .cons (.list .int) [(.value .int (.int (-4))), (.build .cons (.list .int) [(.value .int (.int (-5))), (.build .cons (.list .int) [(.value .int (.int (-6))), (.build .cons (.list .int) [(.value .int (.int (-3))), (.build .cons (.list .int) [(.value .int (.int (-7))), (.build .cons (.list .int) [(.value .int (.int (-6))), (.build .nil (.list .int) [])])])])])])])])])])]) }, + { parameters := [], types := [], result := (.list (.list .int)), + body := (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .nil (.list (.list .int)) [])])])])])])])])])])]) }, + { parameters := [0, 1, 2], types := [(.fn [(.list .int), .int] (.list .int)), (.list .int), (.list .int)], result := (.list .int), + body := (.«match» (.list .int) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 17 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, + { parameters := [0, 1], types := [(.list .int), .int], result := (.list .int), + body := (.prim .append [(.var 0), (.build .cons (.list .int) [(.«let» 2 .int (.prim .intQuot [(.var 1), (.value .int (.int 4)), (.value .int (.int 0))]) (.cond (.«match» .bool (.prim .compare [(.var 2), (.value .int (.int 0))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.value .int (.int 0)) (.cond (.«match» .bool (.prim .compare [(.value .int (.int 127)), (.var 2)]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.value .int (.int 127)) (.var 2)))), (.build .nil (.list .int) [])])]) }, + { parameters := [0, 1], types := [(.list .int), .int], result := (.list .int), + body := (.prim .append [(.var 0), (.build .cons (.list .int) [(.cond (.«match» .bool (.prim .compare [(.var 1), (.value .int (.int 0))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.value .int (.int 0)) (.var 1)), (.build .nil (.list .int) [])])]) }, + { parameters := [0, 1, 2], types := [(.list .int), (.pair (.list .int) (.list .int)), (.list .int)], result := (.pair (.list .int) (.list .int)), + body := (.«match» (.pair (.list .int) (.list .int)) (.second (.var 1)) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.build .pair (.pair (.list .int) (.list .int)) [(.prim .append [(.first (.var 1)), (.build .cons (.list .int) [(.prim .intSub [(.var 3), (.prim .intNeg [(.first (.call 24 [(.closure 26 []), (.build .pair (.pair .int (.list .int)) [(.value .int (.int 0)), (.var 0)]), (.var 2)]))])]), (.build .nil (.list .int) [])])]), (.var 4)]))]) }, + { parameters := [], types := [], result := (.list .int), + body := (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int (-2))), (.build .cons (.list .int) [(.value .int (.int 3)), (.build .cons (.list .int) [(.value .int (.int (-5))), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .nil (.list .int) [])])])])])])])])])])])])]) }, + { parameters := [], types := [], result := (.list (.list .int)), + body := (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 3)), (.build .cons (.list .int) [(.value .int (.int (-2))), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int (-1))), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int (-3))), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int (-1))), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int (-2))), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int (-4))), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 3)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .nil (.list (.list .int)) [])])])])])])])])])])])])]) }, + { parameters := [0], types := [(.adt 0)], result := (.list .int), + body := (.«match» (.list .int) (.var 0) [(.arm (.adt 0) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 1) [] (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 2) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 3) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 4) [] (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 5) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 6) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 7) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 8) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 9) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])]))]) }, + { parameters := [0, 1, 2], types := [(.fn [(.pair .int (.list .int)), .int] (.pair .int (.list .int))), (.pair .int (.list .int)), (.list .int)], result := (.pair .int (.list .int)), + body := (.«match» (.pair .int (.list .int)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 24 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, + { parameters := [0, 1], types := [(.pair .int (.list .int)), .int], result := (.pair .int (.list .int)), + body := (.«match» (.pair .int (.list .int)) (.second (.var 0)) [(.arm .nil [] (.var 0)), (.arm .cons [2, 3] (.build .pair (.pair .int (.list .int)) [(.prim .intSub [(.first (.var 0)), (.prim .intNeg [(.prim .intMul [(.var 1), (.var 2)])])]), (.var 3)]))]) }, + { parameters := [0, 1], types := [(.pair .int (.list .int)), .int], result := (.pair .int (.list .int)), + body := (.«match» (.pair .int (.list .int)) (.second (.var 0)) [(.arm .nil [] (.var 0)), (.arm .cons [2, 3] (.build .pair (.pair .int (.list .int)) [(.prim .intSub [(.first (.var 0)), (.prim .intNeg [(.prim .intMul [(.var 1), (.var 2)])])]), (.var 3)]))]) }] } + +def __enc_0 : (Models.Glyphs.Glyph) -> _root_.LexLeanTarget.TargetSyntax.Value + | Models.Glyphs.Glyph.g0 => _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [] + | Models.Glyphs.Glyph.g1 => _root_.LexLeanTarget.TargetSyntax.Value.adt 1 [] + | Models.Glyphs.Glyph.g2 => _root_.LexLeanTarget.TargetSyntax.Value.adt 2 [] + | Models.Glyphs.Glyph.g3 => _root_.LexLeanTarget.TargetSyntax.Value.adt 3 [] + | Models.Glyphs.Glyph.g4 => _root_.LexLeanTarget.TargetSyntax.Value.adt 4 [] + | Models.Glyphs.Glyph.g5 => _root_.LexLeanTarget.TargetSyntax.Value.adt 5 [] + | Models.Glyphs.Glyph.g6 => _root_.LexLeanTarget.TargetSyntax.Value.adt 6 [] + | Models.Glyphs.Glyph.g7 => _root_.LexLeanTarget.TargetSyntax.Value.adt 7 [] + | Models.Glyphs.Glyph.g8 => _root_.LexLeanTarget.TargetSyntax.Value.adt 8 [] + | Models.Glyphs.Glyph.g9 => _root_.LexLeanTarget.TargetSyntax.Value.adt 9 [] + +def __fits_6 (_ybest : (Prod (Option (Prod Nat Int)) (List Nat))) (_yscore : Int) : Bool := + (Bool.true && (match (_ybest).2 with | List.nil => Bool.true | List.cons _ylabel _ylabels => (((Bool.true && (match (_ybest).1 with | Option.none => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.some _yleader => ((Bool.true && (Bool.true && Bool.true)) && (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((Bool.true && Bool.true) && Bool.true))))) && (Bool.true && Bool.true)) && Bool.true))) + +theorem __rel_6 (_ybest : (Prod (Option (Prod Nat Int)) (List Nat))) (_yscore : Int) : _root_.LexLeanPreservation.FunRel __prog 6 [((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int)) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) _ybest), (_root_.LexLeanTarget.TargetSyntax.Value.int _yscore)] (_root_.LexLeanPreservation.Rel (__fits_6 _ybest _yscore) ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int)) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) ((match (_ybest).2 with | List.nil => _ybest | List.cons _ylabel _ylabels => ((match (_ybest).1 with | Option.none => (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) | Option.some _yleader => (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) else (Option.some (_yleader) : (Option (Prod Nat Int))))), _ylabels))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (List Nat)) => (match __a with | List.nil => Bool.true | List.cons _ylabel _ylabels => (((Bool.true && (match (_ybest).1 with | Option.none => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.some _yleader => ((Bool.true && (Bool.true && Bool.true)) && (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((Bool.true && Bool.true) && Bool.true))))) && (Bool.true && Bool.true)) && Bool.true))) (fun (__a : (List Nat)) => (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int)) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) (match __a with | List.nil => _ybest | List.cons _ylabel _ylabels => ((match (_ybest).1 with | Option.none => (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) | Option.some _yleader => (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) else (Option.some (_yleader) : (Option (Prod Nat Int))))), _ylabels))) (_ybest).2 (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (fun (__a : (List Nat)) _ => match __a with | List.nil => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | List.cons _ylabel _ylabels => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int)) (fun (__a : (Option (Prod Nat Int))) => (match __a with | Option.none => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.some _yleader => ((Bool.true && (Bool.true && Bool.true)) && (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((Bool.true && Bool.true) && Bool.true))))) (fun (__a : (Option (Prod Nat Int))) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int)) (match __a with | Option.none => (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) | Option.some _yleader => (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) else (Option.some (_yleader) : (Option (Prod Nat Int)))))) (_ybest).1 (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (fun (__a : (Option (Prod Nat Int))) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.some _yleader => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((Bool.true && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int)) (if __b then (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) else (Option.some (_yleader) : (Option (Prod Nat Int))))) (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) (_root_.LexLeanPreservation.conv_lessThan (_root_.LexLeanPreservation.keySpec_int (_root_.LexLeanCollections.Key.compare : Int -> Int -> Ordering) (fun _ _ => rfl)) _root_.LexLeanCollections.lessThan (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some))))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))))) + +def __fits_25 (_ysum : (Prod Int (List Int))) (_yweight : Int) : Bool := + (Bool.true && (match (_ysum).2 with | List.nil => Bool.true | List.cons _yvalue _yrest => ((((Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int))) && Bool.true) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int))) && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int))) && (Bool.true && Bool.true)) && Bool.true))) + +theorem __rel_25 (_ysum : (Prod Int (List Int))) (_yweight : Int) : _root_.LexLeanPreservation.FunRel __prog 25 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) _ysum), (_root_.LexLeanTarget.TargetSyntax.Value.int _yweight)] (_root_.LexLeanPreservation.Rel (__fits_25 _ysum _yweight) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) ((match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (fun (__a : (List Int)) => (match __a with | List.nil => Bool.true | List.cons _yvalue _yrest => ((((Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int))) && Bool.true) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int))) && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int))) && (Bool.true && Bool.true)) && Bool.true))) (fun (__a : (List Int)) => (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (match __a with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest))) (_ysum).2 (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (fun (__a : (List Int)) _ => match __a with | List.nil => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | List.cons _yvalue _yrest => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_intMul _yweight _yvalue)) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_intNeg (_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_intSub (_ysum).1 (_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))))) + +def __fits_14 (_yvalues : (List Int)) (_yacc : (Prod (List Int) (List Int))) (_yrow : (List Int)) : Bool := + (Bool.true && (match (_yacc).2 with | List.nil => Bool.true | List.cons _ybias _ybiases => ((((Bool.true && (((((Bool.true && (((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Prod Int (List Int))) (__p1 : Int) => __fits_25 __p0 __p1) ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow))) && Bool.true) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int))) && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int))) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (Bool.true && Bool.true)) && Bool.true))) + +theorem __rel_14 (_yvalues : (List Int)) (_yacc : (Prod (List Int) (List Int))) (_yrow : (List Int)) : _root_.LexLeanPreservation.FunRel __prog 14 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yvalues), ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) _yacc), ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yrow)] (_root_.LexLeanPreservation.Rel (__fits_14 _yvalues _yacc _yrow) ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) ((match (_yacc).2 with | List.nil => _yacc | List.cons _ybias _ybiases => ((_root_.LexLeanRuntime.append ((_yacc).1) (((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int))) : (List Int)), _ybiases))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (fun (__a : (List Int)) => (match __a with | List.nil => Bool.true | List.cons _ybias _ybiases => ((((Bool.true && (((((Bool.true && (((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Prod Int (List Int))) (__p1 : Int) => __fits_25 __p0 __p1) ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow))) && Bool.true) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int))) && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int))) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (Bool.true && Bool.true)) && Bool.true))) (fun (__a : (List Int)) => (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (match __a with | List.nil => _yacc | List.cons _ybias _ybiases => ((_root_.LexLeanRuntime.append ((_yacc).1) (((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int))) : (List Int)), _ybiases))) (_yacc).2 (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (fun (__a : (List Int)) _ => match __a with | List.nil => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | List.cons _ybias _ybiases => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.int) (es := (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int))) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.int) (fun _ => rfl) ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (fun (__p0 : (Prod Int (List Int))) (__p1 : Int) => __fits_25 __p0 __p1) 25 [] (fun (__p0 : (Prod Int (List Int))) (__p1 : Int) => __rel_25 __p0 __p1) (p := __prog) (fi := 24) (ta := .int) (ts := (.pair .int (.list .int))) rfl (((0 : Int), _yvalues)) (_yrow)))) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_intNeg ((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_intSub _ybias (_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.int) (_yacc).1 ((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))))) + +def __fits_15 : Bool := + ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) + +theorem __rel_15 : _root_.LexLeanPreservation.FunRel __prog 15 [] (_root_.LexLeanPreservation.Rel (__fits_15) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (Models.Recognizer.outputBias))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) + +def __fits_16 : Bool := + ((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) + +theorem __rel_16 : _root_.LexLeanPreservation.FunRel __prog 16 [] (_root_.LexLeanPreservation.Rel (__fits_16) ((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (Models.Recognizer.outputWeights))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) + +def __fits_8 (_yvalues : (List Int)) : Bool := + (((Bool.true && Bool.true) && ((((Bool.true && Bool.true) && ((Bool.true && (__fits_15)) && Bool.true)) && Bool.true) && ((Bool.true && (__fits_16)) && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Prod (List Int) (List Int))) (__p1 : (List Int)) => __fits_14 (_yvalues) __p0 __p1) ((fun (_yacc : (Prod (List Int) (List Int))) (_yrow : (List Int)) => (match (_yacc).2 with | List.nil => _yacc | List.cons _ybias _ybiases => ((_root_.LexLeanRuntime.append ((_yacc).1) (((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int))) : (List Int)), _ybiases)))) ((([] : List Int), (Models.Recognizer.outputBias))) ((Models.Recognizer.outputWeights)))) + +attribute [local irreducible] Models.Recognizer.outputBias Models.Recognizer.outputWeights in +theorem __rel_8 (_yvalues : (List Int)) : _root_.LexLeanPreservation.FunRel __prog 8 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yvalues)] (_root_.LexLeanPreservation.Rel (__fits_8 _yvalues) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (Models.Recognizer.DigitNet.layer4 _yvalues))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call _root_.LexLeanPreservation.convL_nil (__rel_15)) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call _root_.LexLeanPreservation.convL_nil (__rel_16)) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (es := (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int))) (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (fun _ => rfl) ((fun (_yacc : (Prod (List Int) (List Int))) (_yrow : (List Int)) => (match (_yacc).2 with | List.nil => _yacc | List.cons _ybias _ybiases => ((_root_.LexLeanRuntime.append ((_yacc).1) (((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int))) : (List Int)), _ybiases)))) (fun (__p0 : (Prod (List Int) (List Int))) (__p1 : (List Int)) => __fits_14 (_yvalues) __p0 __p1) 14 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yvalues)] (fun (__p0 : (Prod (List Int) (List Int))) (__p1 : (List Int)) => __rel_14 (_yvalues) __p0 __p1) (p := __prog) (fi := 13) (ta := (.list .int)) (ts := (.pair (.list .int) (.list .int))) rfl ((([] : List Int), (Models.Recognizer.outputBias))) ((Models.Recognizer.outputWeights))))) + +def __fits_18 (_yout : (List Int)) (_yvalue : Int) : Bool := + ((Bool.true && ((((((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.quotient (_yvalue) ((4 : Int)) ((0 : Int)) : Int))) && (let _yquotient : Int := (_root_.LexLeanRuntime.quotient (_yvalue) ((4 : Int)) ((0 : Int)) : Int); ((Bool.true && (Bool.true && Bool.true)) && (if (_root_.LexLeanCollections.lessThan (_yquotient) ((0 : Int)) : Bool) then Bool.true else ((Bool.true && (Bool.true && Bool.true)) && (if (_root_.LexLeanCollections.lessThan ((127 : Int)) (_yquotient) : Bool) then Bool.true else Bool.true)))))) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) + +theorem __rel_18 (_yout : (List Int)) (_yvalue : Int) : _root_.LexLeanPreservation.FunRel __prog 18 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yout), (_root_.LexLeanTarget.TargetSyntax.Value.int _yvalue)] (_root_.LexLeanPreservation.Rel (__fits_18 _yout _yvalue) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) ((_root_.LexLeanRuntime.append (_yout) (((let _yquotient : Int := (_root_.LexLeanRuntime.quotient (_yvalue) ((4 : Int)) ((0 : Int)) : Int); (if (_root_.LexLeanCollections.lessThan (_yquotient) ((0 : Int)) : Bool) then (0 : Int) else (if (_root_.LexLeanCollections.lessThan ((127 : Int)) (_yquotient) : Bool) then (127 : Int) else _yquotient))) :: ([] : List Int))) : (List Int))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (let _yquotient : Int := (_root_.LexLeanRuntime.quotient (_yvalue) ((4 : Int)) ((0 : Int)) : Int); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.prim_intQuot _yvalue (4 : Int) (0 : Int))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else ((Bool.true && (Bool.true && Bool.true)) && (if (_root_.LexLeanCollections.lessThan ((127 : Int)) (_yquotient) : Bool) then Bool.true else Bool.true)))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.int (if __b then (0 : Int) else (if (_root_.LexLeanCollections.lessThan ((127 : Int)) (_yquotient) : Bool) then (127 : Int) else _yquotient))) (_root_.LexLeanCollections.lessThan (_yquotient) ((0 : Int)) : Bool) (_root_.LexLeanPreservation.conv_lessThan (_root_.LexLeanPreservation.keySpec_int (_root_.LexLeanCollections.Key.compare : Int -> Int -> Ordering) (fun _ _ => rfl)) _root_.LexLeanCollections.lessThan (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.int (if __b then (127 : Int) else _yquotient)) (_root_.LexLeanCollections.lessThan ((127 : Int)) (_yquotient) : Bool) (_root_.LexLeanPreservation.conv_lessThan (_root_.LexLeanPreservation.keySpec_int (_root_.LexLeanCollections.Key.compare : Int -> Int -> Ordering) (fun _ _ => rfl)) _root_.LexLeanCollections.lessThan (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => (_root_.LexLeanPreservation.conv_var rfl)))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.int) _yout ((let _yquotient : Int := (_root_.LexLeanRuntime.quotient (_yvalue) ((4 : Int)) ((0 : Int)) : Int); (if (_root_.LexLeanCollections.lessThan (_yquotient) ((0 : Int)) : Bool) then (0 : Int) else (if (_root_.LexLeanCollections.lessThan ((127 : Int)) (_yquotient) : Bool) then (127 : Int) else _yquotient))) :: ([] : List Int)))) + +def __fits_9 (_yvalues : (List Int)) : Bool := + ((Bool.true && ((Bool.true && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (List Int)) (__p1 : Int) => __fits_18 __p0 __p1) ((fun (_yout : (List Int)) (_yvalue : Int) => (_root_.LexLeanRuntime.append (_yout) (((let _yquotient : Int := (_root_.LexLeanRuntime.quotient (_yvalue) ((4 : Int)) ((0 : Int)) : Int); (if (_root_.LexLeanCollections.lessThan (_yquotient) ((0 : Int)) : Bool) then (0 : Int) else (if (_root_.LexLeanCollections.lessThan ((127 : Int)) (_yquotient) : Bool) then (127 : Int) else _yquotient))) :: ([] : List Int))) : (List Int)))) (([] : List Int)) (_yvalues))) + +theorem __rel_9 (_yvalues : (List Int)) : _root_.LexLeanPreservation.FunRel __prog 9 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yvalues)] (_root_.LexLeanPreservation.Rel (__fits_9 _yvalues) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (Models.Recognizer.DigitNet.layer3 _yvalues))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.int) (es := (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.int) (fun _ => rfl) ((fun (_yout : (List Int)) (_yvalue : Int) => (_root_.LexLeanRuntime.append (_yout) (((let _yquotient : Int := (_root_.LexLeanRuntime.quotient (_yvalue) ((4 : Int)) ((0 : Int)) : Int); (if (_root_.LexLeanCollections.lessThan (_yquotient) ((0 : Int)) : Bool) then (0 : Int) else (if (_root_.LexLeanCollections.lessThan ((127 : Int)) (_yquotient) : Bool) then (127 : Int) else _yquotient))) :: ([] : List Int))) : (List Int)))) (fun (__p0 : (List Int)) (__p1 : Int) => __fits_18 __p0 __p1) 18 [] (fun (__p0 : (List Int)) (__p1 : Int) => __rel_18 __p0 __p1) (p := __prog) (fi := 17) (ta := .int) (ts := (.list .int)) rfl (([] : List Int)) (_yvalues))) + +def __fits_19 (_yout : (List Int)) (_yvalue : Int) : Bool := + ((Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && (if (_root_.LexLeanCollections.lessThan (_yvalue) ((0 : Int)) : Bool) then Bool.true else Bool.true)) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) + +theorem __rel_19 (_yout : (List Int)) (_yvalue : Int) : _root_.LexLeanPreservation.FunRel __prog 19 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yout), (_root_.LexLeanTarget.TargetSyntax.Value.int _yvalue)] (_root_.LexLeanPreservation.Rel (__fits_19 _yout _yvalue) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) ((_root_.LexLeanRuntime.append (_yout) (((if (_root_.LexLeanCollections.lessThan (_yvalue) ((0 : Int)) : Bool) then (0 : Int) else _yvalue) :: ([] : List Int))) : (List Int))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.int (if __b then (0 : Int) else _yvalue)) (_root_.LexLeanCollections.lessThan (_yvalue) ((0 : Int)) : Bool) (_root_.LexLeanPreservation.conv_lessThan (_root_.LexLeanPreservation.keySpec_int (_root_.LexLeanCollections.Key.compare : Int -> Int -> Ordering) (fun _ _ => rfl)) _root_.LexLeanCollections.lessThan (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => (_root_.LexLeanPreservation.conv_var rfl))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.int) _yout ((if (_root_.LexLeanCollections.lessThan (_yvalue) ((0 : Int)) : Bool) then (0 : Int) else _yvalue) :: ([] : List Int)))) + +def __fits_10 (_yvalues : (List Int)) : Bool := + ((Bool.true && ((Bool.true && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (List Int)) (__p1 : Int) => __fits_19 __p0 __p1) ((fun (_yout : (List Int)) (_yvalue : Int) => (_root_.LexLeanRuntime.append (_yout) (((if (_root_.LexLeanCollections.lessThan (_yvalue) ((0 : Int)) : Bool) then (0 : Int) else _yvalue) :: ([] : List Int))) : (List Int)))) (([] : List Int)) (_yvalues))) + +theorem __rel_10 (_yvalues : (List Int)) : _root_.LexLeanPreservation.FunRel __prog 10 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yvalues)] (_root_.LexLeanPreservation.Rel (__fits_10 _yvalues) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (Models.Recognizer.DigitNet.layer2 _yvalues))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.int) (es := (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.int) (fun _ => rfl) ((fun (_yout : (List Int)) (_yvalue : Int) => (_root_.LexLeanRuntime.append (_yout) (((if (_root_.LexLeanCollections.lessThan (_yvalue) ((0 : Int)) : Bool) then (0 : Int) else _yvalue) :: ([] : List Int))) : (List Int)))) (fun (__p0 : (List Int)) (__p1 : Int) => __fits_19 __p0 __p1) 19 [] (fun (__p0 : (List Int)) (__p1 : Int) => __rel_19 __p0 __p1) (p := __prog) (fi := 17) (ta := .int) (ts := (.list .int)) rfl (([] : List Int)) (_yvalues))) + +def __fits_26 (_ysum : (Prod Int (List Int))) (_yweight : Int) : Bool := + (Bool.true && (match (_ysum).2 with | List.nil => Bool.true | List.cons _yvalue _yrest => ((((Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int))) && Bool.true) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int))) && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int))) && (Bool.true && Bool.true)) && Bool.true))) + +theorem __rel_26 (_ysum : (Prod Int (List Int))) (_yweight : Int) : _root_.LexLeanPreservation.FunRel __prog 26 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) _ysum), (_root_.LexLeanTarget.TargetSyntax.Value.int _yweight)] (_root_.LexLeanPreservation.Rel (__fits_26 _ysum _yweight) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) ((match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (fun (__a : (List Int)) => (match __a with | List.nil => Bool.true | List.cons _yvalue _yrest => ((((Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int))) && Bool.true) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int))) && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int))) && (Bool.true && Bool.true)) && Bool.true))) (fun (__a : (List Int)) => (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (match __a with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest))) (_ysum).2 (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (fun (__a : (List Int)) _ => match __a with | List.nil => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | List.cons _yvalue _yrest => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_intMul _yweight _yvalue)) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_intNeg (_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_intSub (_ysum).1 (_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))))) + +def __fits_20 (_yvalues : (List Int)) (_yacc : (Prod (List Int) (List Int))) (_yrow : (List Int)) : Bool := + (Bool.true && (match (_yacc).2 with | List.nil => Bool.true | List.cons _ybias _ybiases => ((((Bool.true && (((((Bool.true && (((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Prod Int (List Int))) (__p1 : Int) => __fits_26 __p0 __p1) ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow))) && Bool.true) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int))) && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int))) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (Bool.true && Bool.true)) && Bool.true))) + +theorem __rel_20 (_yvalues : (List Int)) (_yacc : (Prod (List Int) (List Int))) (_yrow : (List Int)) : _root_.LexLeanPreservation.FunRel __prog 20 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yvalues), ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) _yacc), ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yrow)] (_root_.LexLeanPreservation.Rel (__fits_20 _yvalues _yacc _yrow) ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) ((match (_yacc).2 with | List.nil => _yacc | List.cons _ybias _ybiases => ((_root_.LexLeanRuntime.append ((_yacc).1) (((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int))) : (List Int)), _ybiases))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (fun (__a : (List Int)) => (match __a with | List.nil => Bool.true | List.cons _ybias _ybiases => ((((Bool.true && (((((Bool.true && (((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Prod Int (List Int))) (__p1 : Int) => __fits_26 __p0 __p1) ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow))) && Bool.true) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int))) && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int))) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (Bool.true && Bool.true)) && Bool.true))) (fun (__a : (List Int)) => (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (match __a with | List.nil => _yacc | List.cons _ybias _ybiases => ((_root_.LexLeanRuntime.append ((_yacc).1) (((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int))) : (List Int)), _ybiases))) (_yacc).2 (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (fun (__a : (List Int)) _ => match __a with | List.nil => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | List.cons _ybias _ybiases => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.int) (es := (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int))) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.int) (fun _ => rfl) ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (fun (__p0 : (Prod Int (List Int))) (__p1 : Int) => __fits_26 __p0 __p1) 26 [] (fun (__p0 : (Prod Int (List Int))) (__p1 : Int) => __rel_26 __p0 __p1) (p := __prog) (fi := 24) (ta := .int) (ts := (.pair .int (.list .int))) rfl (((0 : Int), _yvalues)) (_yrow)))) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_intNeg ((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_intSub _ybias (_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.int) (_yacc).1 ((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))))) + +def __fits_21 : Bool := + ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) + +theorem __rel_21 : _root_.LexLeanPreservation.FunRel __prog 21 [] (_root_.LexLeanPreservation.Rel (__fits_21) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (Models.Recognizer.hiddenBias))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) + +def __fits_22 : Bool := + ((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) + +theorem __rel_22 : _root_.LexLeanPreservation.FunRel __prog 22 [] (_root_.LexLeanPreservation.Rel (__fits_22) ((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (Models.Recognizer.hiddenWeights))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) + +def __fits_11 (_yvalues : (List Int)) : Bool := + (((Bool.true && Bool.true) && ((((Bool.true && Bool.true) && ((Bool.true && (__fits_21)) && Bool.true)) && Bool.true) && ((Bool.true && (__fits_22)) && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Prod (List Int) (List Int))) (__p1 : (List Int)) => __fits_20 (_yvalues) __p0 __p1) ((fun (_yacc : (Prod (List Int) (List Int))) (_yrow : (List Int)) => (match (_yacc).2 with | List.nil => _yacc | List.cons _ybias _ybiases => ((_root_.LexLeanRuntime.append ((_yacc).1) (((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int))) : (List Int)), _ybiases)))) ((([] : List Int), (Models.Recognizer.hiddenBias))) ((Models.Recognizer.hiddenWeights)))) + +attribute [local irreducible] Models.Recognizer.hiddenBias Models.Recognizer.hiddenWeights in +theorem __rel_11 (_yvalues : (List Int)) : _root_.LexLeanPreservation.FunRel __prog 11 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yvalues)] (_root_.LexLeanPreservation.Rel (__fits_11 _yvalues) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (Models.Recognizer.DigitNet.layer1 _yvalues))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call _root_.LexLeanPreservation.convL_nil (__rel_21)) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call _root_.LexLeanPreservation.convL_nil (__rel_22)) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (es := (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int))) (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (fun _ => rfl) ((fun (_yacc : (Prod (List Int) (List Int))) (_yrow : (List Int)) => (match (_yacc).2 with | List.nil => _yacc | List.cons _ybias _ybiases => ((_root_.LexLeanRuntime.append ((_yacc).1) (((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int))) : (List Int)), _ybiases)))) (fun (__p0 : (Prod (List Int) (List Int))) (__p1 : (List Int)) => __fits_20 (_yvalues) __p0 __p1) 20 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yvalues)] (fun (__p0 : (Prod (List Int) (List Int))) (__p1 : (List Int)) => __rel_20 (_yvalues) __p0 __p1) (p := __prog) (fi := 13) (ta := (.list .int)) (ts := (.pair (.list .int) (.list .int))) rfl ((([] : List Int), (Models.Recognizer.hiddenBias))) ((Models.Recognizer.hiddenWeights))))) + +def __fits_23 (glyph : (Models.Glyphs.Glyph)) : Bool := + (Bool.true && (match glyph with | Models.Glyphs.Glyph.g0 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g1 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g2 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g3 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g4 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g5 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g6 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g7 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g8 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g9 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true))) + +theorem __rel_23 (glyph : (Models.Glyphs.Glyph)) : _root_.LexLeanPreservation.FunRel __prog 23 [(__enc_0 glyph)] (_root_.LexLeanPreservation.Rel (__fits_23 glyph) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (Models.Glyphs.encode glyph))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV __enc_0 (fun (__a : (Models.Glyphs.Glyph)) => (match __a with | Models.Glyphs.Glyph.g0 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g1 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g2 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g3 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g4 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g5 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g6 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g7 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g8 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Glyphs.Glyph.g9 => ((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true))) (fun (__a : (Models.Glyphs.Glyph)) => (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (match __a with | Models.Glyphs.Glyph.g0 => ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((0 : Int) :: ([] : List Int)))))))) | Models.Glyphs.Glyph.g1 => ((0 : Int) :: ((1 : Int) :: ((1 : Int) :: ((0 : Int) :: ((0 : Int) :: ((0 : Int) :: ((0 : Int) :: ([] : List Int)))))))) | Models.Glyphs.Glyph.g2 => ((1 : Int) :: ((1 : Int) :: ((0 : Int) :: ((1 : Int) :: ((1 : Int) :: ((0 : Int) :: ((1 : Int) :: ([] : List Int)))))))) | Models.Glyphs.Glyph.g3 => ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((0 : Int) :: ((0 : Int) :: ((1 : Int) :: ([] : List Int)))))))) | Models.Glyphs.Glyph.g4 => ((0 : Int) :: ((1 : Int) :: ((1 : Int) :: ((0 : Int) :: ((0 : Int) :: ((1 : Int) :: ((1 : Int) :: ([] : List Int)))))))) | Models.Glyphs.Glyph.g5 => ((1 : Int) :: ((0 : Int) :: ((1 : Int) :: ((1 : Int) :: ((0 : Int) :: ((1 : Int) :: ((1 : Int) :: ([] : List Int)))))))) | Models.Glyphs.Glyph.g6 => ((1 : Int) :: ((0 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ([] : List Int)))))))) | Models.Glyphs.Glyph.g7 => ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((0 : Int) :: ((0 : Int) :: ((0 : Int) :: ((0 : Int) :: ([] : List Int)))))))) | Models.Glyphs.Glyph.g8 => ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ([] : List Int)))))))) | Models.Glyphs.Glyph.g9 => ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ((0 : Int) :: ((1 : Int) :: ((1 : Int) :: ([] : List Int)))))))))) glyph (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (Models.Glyphs.Glyph)) _ => match __a with | Models.Glyphs.Glyph.g0 => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons)) | Models.Glyphs.Glyph.g1 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons))) | Models.Glyphs.Glyph.g2 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons)))) | Models.Glyphs.Glyph.g3 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons))))) | Models.Glyphs.Glyph.g4 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons)))))) | Models.Glyphs.Glyph.g5 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons))))))) | Models.Glyphs.Glyph.g6 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons)))))))) | Models.Glyphs.Glyph.g7 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons))))))))) | Models.Glyphs.Glyph.g8 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons)))))))))) | Models.Glyphs.Glyph.g9 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons))))))))))))) + +def __fits_12 (glyph : (Models.Glyphs.Glyph)) : Bool := + ((Bool.true && Bool.true) && (__fits_23 (glyph))) + +attribute [local irreducible] Models.Glyphs.encode in +theorem __rel_12 (glyph : (Models.Glyphs.Glyph)) : _root_.LexLeanPreservation.FunRel __prog 12 [(__enc_0 glyph)] (_root_.LexLeanPreservation.Rel (__fits_12 glyph) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (Models.Recognizer.DigitNet.encoded glyph))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_23 (glyph))) + +def __fits_7 (glyph : (Models.Glyphs.Glyph)) : Bool := + ((((((((((Bool.true && Bool.true) && (__fits_12 (glyph))) && Bool.true) && (__fits_11 ((Models.Recognizer.DigitNet.encoded (glyph))))) && Bool.true) && (__fits_10 ((Models.Recognizer.DigitNet.layer1 ((Models.Recognizer.DigitNet.encoded (glyph))))))) && Bool.true) && (__fits_9 ((Models.Recognizer.DigitNet.layer2 ((Models.Recognizer.DigitNet.layer1 ((Models.Recognizer.DigitNet.encoded (glyph))))))))) && Bool.true) && (__fits_8 ((Models.Recognizer.DigitNet.layer3 ((Models.Recognizer.DigitNet.layer2 ((Models.Recognizer.DigitNet.layer1 ((Models.Recognizer.DigitNet.encoded (glyph))))))))))) + +attribute [local irreducible] Models.Recognizer.DigitNet.encoded Models.Recognizer.DigitNet.layer1 Models.Recognizer.DigitNet.layer2 Models.Recognizer.DigitNet.layer3 Models.Recognizer.DigitNet.layer4 in +theorem __rel_7 (glyph : (Models.Glyphs.Glyph)) : _root_.LexLeanPreservation.FunRel __prog 7 [(__enc_0 glyph)] (_root_.LexLeanPreservation.Rel (__fits_7 glyph) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (Models.Recognizer.DigitNet.logits glyph))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_12 (glyph))) _root_.LexLeanPreservation.convL_nil) (__rel_11 ((Models.Recognizer.DigitNet.encoded (glyph))))) _root_.LexLeanPreservation.convL_nil) (__rel_10 ((Models.Recognizer.DigitNet.layer1 ((Models.Recognizer.DigitNet.encoded (glyph))))))) _root_.LexLeanPreservation.convL_nil) (__rel_9 ((Models.Recognizer.DigitNet.layer2 ((Models.Recognizer.DigitNet.layer1 ((Models.Recognizer.DigitNet.encoded (glyph))))))))) _root_.LexLeanPreservation.convL_nil) (__rel_8 ((Models.Recognizer.DigitNet.layer3 ((Models.Recognizer.DigitNet.layer2 ((Models.Recognizer.DigitNet.layer1 ((Models.Recognizer.DigitNet.encoded (glyph))))))))))) + +def __fits_3 (glyph : (Models.Glyphs.Glyph)) : Bool := + (((Bool.true && ((((Bool.true && Bool.true) && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((Bool.true && Bool.true) && (__fits_7 (glyph))) && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Prod (Option (Prod Nat Int)) (List Nat))) (__p1 : Int) => __fits_6 __p0 __p1) ((fun (_ybest : (Prod (Option (Prod Nat Int)) (List Nat))) (_yscore : Int) => (match (_ybest).2 with | List.nil => _ybest | List.cons _ylabel _ylabels => ((match (_ybest).1 with | Option.none => (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) | Option.some _yleader => (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) else (Option.some (_yleader) : (Option (Prod Nat Int))))), _ylabels)))) (((Option.none : (Option (Prod Nat Int))), ((0 : Nat) :: ((1 : Nat) :: ((2 : Nat) :: ((3 : Nat) :: ((4 : Nat) :: ((5 : Nat) :: ((6 : Nat) :: ((7 : Nat) :: ((8 : Nat) :: ((9 : Nat) :: ([] : List Nat))))))))))))) ((Models.Recognizer.DigitNet.logits (glyph))))) && (match ((_root_.LexLeanCollections.listFold ((fun (_ybest : (Prod (Option (Prod Nat Int)) (List Nat))) (_yscore : Int) => (match (_ybest).2 with | List.nil => _ybest | List.cons _ylabel _ylabels => ((match (_ybest).1 with | Option.none => (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) | Option.some _yleader => (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) else (Option.some (_yleader) : (Option (Prod Nat Int))))), _ylabels)))) (((Option.none : (Option (Prod Nat Int))), ((0 : Nat) :: ((1 : Nat) :: ((2 : Nat) :: ((3 : Nat) :: ((4 : Nat) :: ((5 : Nat) :: ((6 : Nat) :: ((7 : Nat) :: ((8 : Nat) :: ((9 : Nat) :: ([] : List Nat))))))))))))) ((Models.Recognizer.DigitNet.logits (glyph))) : (Prod (Option (Prod Nat Int)) (List Nat)))).1 with | Option.none => Bool.true | Option.some _ywinner => Bool.true)) + +attribute [local irreducible] Models.Recognizer.DigitNet.logits in +theorem __rel_3 (glyph : (Models.Glyphs.Glyph)) : _root_.LexLeanPreservation.FunRel __prog 3 [(__enc_0 glyph)] (_root_.LexLeanPreservation.Rel (__fits_3 glyph) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Models.Recognizer.DigitNet glyph))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int)) (fun (__a : (Option (Prod Nat Int))) => (match __a with | Option.none => Bool.true | Option.some _ywinner => Bool.true)) (fun (__a : (Option (Prod Nat Int))) => _root_.LexLeanTarget.TargetSyntax.Value.nat (match __a with | Option.none => (0 : Nat) | Option.some _ywinner => (_ywinner).1)) ((_root_.LexLeanCollections.listFold ((fun (_ybest : (Prod (Option (Prod Nat Int)) (List Nat))) (_yscore : Int) => (match (_ybest).2 with | List.nil => _ybest | List.cons _ylabel _ylabels => ((match (_ybest).1 with | Option.none => (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) | Option.some _yleader => (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) else (Option.some (_yleader) : (Option (Prod Nat Int))))), _ylabels)))) (((Option.none : (Option (Prod Nat Int))), ((0 : Nat) :: ((1 : Nat) :: ((2 : Nat) :: ((3 : Nat) :: ((4 : Nat) :: ((5 : Nat) :: ((6 : Nat) :: ((7 : Nat) :: ((8 : Nat) :: ((9 : Nat) :: ([] : List Nat))))))))))))) ((Models.Recognizer.DigitNet.logits (glyph))) : (Prod (Option (Prod Nat Int)) (List Nat)))).1 (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_7 (glyph))) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.int) (es := (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int)) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat))) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.int) (fun _ => rfl) ((fun (_ybest : (Prod (Option (Prod Nat Int)) (List Nat))) (_yscore : Int) => (match (_ybest).2 with | List.nil => _ybest | List.cons _ylabel _ylabels => ((match (_ybest).1 with | Option.none => (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) | Option.some _yleader => (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then (Option.some ((_ylabel, _yscore)) : (Option (Prod Nat Int))) else (Option.some (_yleader) : (Option (Prod Nat Int))))), _ylabels)))) (fun (__p0 : (Prod (Option (Prod Nat Int)) (List Nat))) (__p1 : Int) => __fits_6 __p0 __p1) 6 [] (fun (__p0 : (Prod (Option (Prod Nat Int)) (List Nat))) (__p1 : Int) => __rel_6 __p0 __p1) (p := __prog) (fi := 5) (ta := .int) (ts := (.pair (.option (.pair .nat .int)) (.list .nat))) rfl (((Option.none : (Option (Prod Nat Int))), ((0 : Nat) :: ((1 : Nat) :: ((2 : Nat) :: ((3 : Nat) :: ((4 : Nat) :: ((5 : Nat) :: ((6 : Nat) :: ((7 : Nat) :: ((8 : Nat) :: ((9 : Nat) :: ([] : List Nat))))))))))))) ((Models.Recognizer.DigitNet.logits (glyph)))))) (fun (__a : (Option (Prod Nat Int))) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value) | Option.some _ywinner => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)))))) + +def __fits_1 (_yinput : (Models.Glyphs.Glyph)) : Bool := + ((Bool.true && Bool.true) && (__fits_3 (_yinput))) + +attribute [local irreducible] Models.Recognizer.DigitNet in +theorem __rel_1 (_yinput : (Models.Glyphs.Glyph)) : _root_.LexLeanPreservation.FunRel __prog 1 [(__enc_0 _yinput)] (_root_.LexLeanPreservation.Rel (__fits_1 _yinput) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Models.Recognizer.RawDigitModel _yinput))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_3 (_yinput))) + +def __fits_4 (glyph : (Models.Glyphs.Glyph)) : Bool := + (Bool.true && (match glyph with | Models.Glyphs.Glyph.g0 => Bool.true | Models.Glyphs.Glyph.g1 => Bool.true | Models.Glyphs.Glyph.g2 => Bool.true | Models.Glyphs.Glyph.g3 => Bool.true | Models.Glyphs.Glyph.g4 => Bool.true | Models.Glyphs.Glyph.g5 => Bool.true | Models.Glyphs.Glyph.g6 => Bool.true | Models.Glyphs.Glyph.g7 => Bool.true | Models.Glyphs.Glyph.g8 => Bool.true | Models.Glyphs.Glyph.g9 => Bool.true)) + +theorem __rel_4 (glyph : (Models.Glyphs.Glyph)) : _root_.LexLeanPreservation.FunRel __prog 4 [(__enc_0 glyph)] (_root_.LexLeanPreservation.Rel (__fits_4 glyph) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Models.Glyphs.digitOf glyph))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV __enc_0 (fun (__a : (Models.Glyphs.Glyph)) => (match __a with | Models.Glyphs.Glyph.g0 => Bool.true | Models.Glyphs.Glyph.g1 => Bool.true | Models.Glyphs.Glyph.g2 => Bool.true | Models.Glyphs.Glyph.g3 => Bool.true | Models.Glyphs.Glyph.g4 => Bool.true | Models.Glyphs.Glyph.g5 => Bool.true | Models.Glyphs.Glyph.g6 => Bool.true | Models.Glyphs.Glyph.g7 => Bool.true | Models.Glyphs.Glyph.g8 => Bool.true | Models.Glyphs.Glyph.g9 => Bool.true)) (fun (__a : (Models.Glyphs.Glyph)) => _root_.LexLeanTarget.TargetSyntax.Value.nat (match __a with | Models.Glyphs.Glyph.g0 => (0 : Nat) | Models.Glyphs.Glyph.g1 => (1 : Nat) | Models.Glyphs.Glyph.g2 => (2 : Nat) | Models.Glyphs.Glyph.g3 => (3 : Nat) | Models.Glyphs.Glyph.g4 => (4 : Nat) | Models.Glyphs.Glyph.g5 => (5 : Nat) | Models.Glyphs.Glyph.g6 => (6 : Nat) | Models.Glyphs.Glyph.g7 => (7 : Nat) | Models.Glyphs.Glyph.g8 => (8 : Nat) | Models.Glyphs.Glyph.g9 => (9 : Nat))) glyph (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (Models.Glyphs.Glyph)) _ => match __a with | Models.Glyphs.Glyph.g0 => (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value) | Models.Glyphs.Glyph.g1 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value)) | Models.Glyphs.Glyph.g2 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value))) | Models.Glyphs.Glyph.g3 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value)))) | Models.Glyphs.Glyph.g4 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value))))) | Models.Glyphs.Glyph.g5 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value)))))) | Models.Glyphs.Glyph.g6 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value))))))) | Models.Glyphs.Glyph.g7 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value)))))))) | Models.Glyphs.Glyph.g8 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value))))))))) | Models.Glyphs.Glyph.g9 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value)))))))))))) + +def __fits_2 (glyph : (Models.Glyphs.Glyph)) (digit : Nat) : Bool := + ((Bool.true && (((Bool.true && Bool.true) && (__fits_4 (glyph))) && Bool.true)) && Bool.true) + +attribute [local irreducible] Models.Glyphs.digitOf in +theorem __rel_2 (glyph : (Models.Glyphs.Glyph)) (digit : Nat) : _root_.LexLeanPreservation.FunRel __prog 2 [(__enc_0 glyph), (_root_.LexLeanTarget.TargetSyntax.Value.nat digit)] (_root_.LexLeanPreservation.Rel (__fits_2 glyph digit) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Models.Recognizer.recognizesCheck glyph digit))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_4 (glyph))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq digit (Models.Glyphs.digitOf (glyph)))) + +def __fits_0 (glyph : (Models.Glyphs.Glyph)) : Bool := + (Bool.true && (let _ychecked1_input : (Models.Glyphs.Glyph) := glyph; (((Bool.true && Bool.true) && (__fits_1 (_ychecked1_input))) && (let _ychecked1_output : Nat := (Models.Recognizer.RawDigitModel (_ychecked1_input)); (((Bool.true && (Bool.true && Bool.true)) && (__fits_2 (_ychecked1_input) (_ychecked1_output))) && (if (Models.Recognizer.recognizesCheck (_ychecked1_input) (_ychecked1_output)) then ((Bool.true && Bool.true) && Bool.true) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))))) + +attribute [local irreducible] Models.Recognizer.RawDigitModel Models.Recognizer.recognizesCheck in +theorem __rel_0 (glyph : (Models.Glyphs.Glyph)) : _root_.LexLeanPreservation.FunRel __prog 0 [(__enc_0 glyph)] (_root_.LexLeanPreservation.Rel (__fits_0 glyph) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (Models.Main.classifyChecked glyph))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (let _ychecked1_input : (Models.Glyphs.Glyph) := glyph; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_var rfl) (let _ychecked1_output : Nat := (Models.Recognizer.RawDigitModel (_ychecked1_input)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_1 (_ychecked1_input))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && Bool.true) && Bool.true) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Except.ok (_ychecked1_output) : (Except (Prod Bool Bool) Nat)) else (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)))) (Models.Recognizer.recognizesCheck (_ychecked1_input) (_ychecked1_output)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_2 (_ychecked1_input) (_ychecked1_output))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error))))) + +def denote (glyph : (Models.Glyphs.Glyph)) : _root_.LexLeanPreservation.Obs := + _root_.cond (__fits_0 glyph) (_root_.LexLeanPreservation.Obs.value (((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (Models.Main.classifyChecked glyph)))) _root_.LexLeanPreservation.Obs.overflow + +theorem root (glyph : (Models.Glyphs.Glyph)) : _root_.LexLeanPreservation.RunConv __prog 0 [(__enc_0 glyph)] (_root_.LexLeanPreservation.Rel (__fits_0 glyph) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (Models.Main.classifyChecked glyph))) := + _root_.LexLeanPreservation.run_of_funRel (__rel_0 glyph) + +end LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1 diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R1/Compose/RustStd.lex.tex b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R1/Compose/RustStd.lex.tex new file mode 100644 index 000000000..777bf8f48 --- /dev/null +++ b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R1/Compose/RustStd.lex.tex @@ -0,0 +1,590 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1, + LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.Compose.RustStd.__wt_0 : @16 := @448 { + all: [LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.Compose.RustStd.__wt_0], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.Compose.RustStd.root : @1181 := @1182 { + all: [LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.RustStd.program +@1 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.RustStd.krate +@2 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.RustStd.flags +@3 := Models.Glyphs.Glyph +@4 := #0 +@5 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.__enc_0 +@6 := @5 @4 +@7 := LexLeanPreservation.Rust.WT +@8 := LexLeanTarget.TargetSyntax.Ty.adt +@9 := 0 +@10 := @8 @9 +@11 := @7 @0 +@12 := @11 @1 +@13 := @12 @2 +@15 := @13 @6 @10 +@16 := (__v : @3) -> @15 +@17 := fun (__v : @3) => @15 +@18 := LexLeanTarget.TargetSyntax.Value +@19 := LexLeanTarget.TargetSyntax.Ty +@20 := List.nil.{0} +@21 := List.cons.{0} +@22 := @20 @18 +@23 := @20 @19 +@24 := LexLeanTarget.TargetSyntax.Program +@25 := LexLeanPreservation.Rust.RCrate +@26 := LexLeanPreservation.Rust.Flags +@27 := LexLeanPreservation.Rust.WTL +@28 := #2 +@29 := @27 @28 +@30 := #1 +@37 := {p : @24} -> {c : @25} -> {A : @26} -> @29 @30 @4 @22 @23 +@39 := LexLeanPreservation.Rust.wtl_nil @0 +@40 := @27 @0 +@46 := {c : @25} -> {A : @26} -> @40 @30 @4 @22 @23 +@47 := @39 @1 +@48 := @40 @1 +@52 := {A : @26} -> @48 @4 @22 @23 +@53 := @47 @2 +@54 := @48 @2 +@55 := @54 @22 +@56 := @55 @23 +@57 := Nat +@58 := List.{0} +@59 := @58 @18 +@60 := @58 @19 +@61 := Eq.{1} +@62 := Option.{0} +@63 := @62 @60 +@64 := @61 @63 +@65 := LexLeanPreservation.Rust.adtFields +@66 := #6 +@67 := @65 @66 +@68 := #3 +@71 := @64 (@67 @68 @28) +@72 := Option.some.{0} +@73 := @72 @60 +@74 := @73 @4 +@75 := @71 @74 +@76 := #7 +@78 := @27 @76 @66 +@79 := #5 +@82 := @78 @79 @28 @30 +@83 := #8 +@86 := @7 @83 @76 @66 +@87 := LexLeanTarget.TargetSyntax.Value.adt +@88 := #4 +@90 := @87 @88 @68 +@91 := @86 @90 +@92 := @8 @79 +@102 := {p : @24} -> + {c : @25} -> + {A : @26} -> + {i : @57} -> {k : @57} -> {fs : @59} -> {tys : @60} -> (h : @75) -> (hf : @82) -> @91 @92 +@104 := LexLeanPreservation.Rust.wt_adt @0 +@105 := @65 @0 +@109 := @64 (@105 @68 @28) @74 +@113 := @40 @66 @79 @28 @30 +@125 := {c : @25} -> + {A : @26} -> + {i : @57} -> + {k : @57} -> {fs : @59} -> {tys : @60} -> (h : @109) -> (hf : @113) -> @11 @76 @66 @90 @92 +@126 := @104 @1 +@129 := @48 @79 @28 @30 +@139 := {A : @26} -> + {i : @57} -> + {k : @57} -> {fs : @59} -> {tys : @60} -> (h : @109) -> (hf : @129) -> @12 @66 @90 @92 +@140 := @126 @2 +@142 := @54 @28 @30 +@143 := @13 @90 +@150 := {i : @57} -> {k : @57} -> {fs : @59} -> {tys : @60} -> (h : @109) -> (hf : @142) -> @143 @92 +@151 := @140 @9 +@152 := @105 @9 +@161 := {k : @57} -> + {fs : @59} -> {tys : @60} -> (h : @64 (@152 @28) @74) -> (hf : @142) -> @143 @10 +@162 := @151 @9 +@163 := @152 @9 +@164 := @64 @163 +@165 := @164 @74 +@166 := @87 @9 +@173 := {fs : @59} -> {tys : @60} -> (h : @165) -> (hf : @142) -> @13 (@166 @68) @10 +@174 := @162 @22 +@175 := @55 @30 +@178 := @13 (@166 @22) @10 +@181 := {tys : @60} -> (h : @165) -> (hf : @175) -> @178 +@182 := @174 @23 +@183 := @73 @23 +@186 := (h : @164 @183) -> (hf : @56) -> @178 +@187 := Eq.refl.{1} +@188 := @187 @63 +@191 := @182 (@188 @163) @53 +@192 := 1 +@193 := @151 @192 +@194 := @152 @192 +@195 := @64 @194 +@196 := @195 @74 +@197 := @87 @192 +@204 := {fs : @59} -> {tys : @60} -> (h : @196) -> (hf : @142) -> @13 (@197 @68) @10 +@205 := @193 @22 +@208 := @13 (@197 @22) @10 +@211 := {tys : @60} -> (h : @196) -> (hf : @175) -> @208 +@212 := @205 @23 +@215 := (h : @195 @183) -> (hf : @56) -> @208 +@218 := @212 (@188 @194) @53 +@219 := 2 +@220 := @151 @219 +@221 := @152 @219 +@222 := @64 @221 +@223 := @222 @74 +@224 := @87 @219 +@231 := {fs : @59} -> {tys : @60} -> (h : @223) -> (hf : @142) -> @13 (@224 @68) @10 +@232 := @220 @22 +@235 := @13 (@224 @22) @10 +@238 := {tys : @60} -> (h : @223) -> (hf : @175) -> @235 +@239 := @232 @23 +@242 := (h : @222 @183) -> (hf : @56) -> @235 +@245 := @239 (@188 @221) @53 +@246 := 3 +@247 := @151 @246 +@248 := @152 @246 +@249 := @64 @248 +@250 := @249 @74 +@251 := @87 @246 +@258 := {fs : @59} -> {tys : @60} -> (h : @250) -> (hf : @142) -> @13 (@251 @68) @10 +@259 := @247 @22 +@262 := @13 (@251 @22) @10 +@265 := {tys : @60} -> (h : @250) -> (hf : @175) -> @262 +@266 := @259 @23 +@269 := (h : @249 @183) -> (hf : @56) -> @262 +@272 := @266 (@188 @248) @53 +@273 := 4 +@274 := @151 @273 +@275 := @152 @273 +@276 := @64 @275 +@277 := @276 @74 +@278 := @87 @273 +@285 := {fs : @59} -> {tys : @60} -> (h : @277) -> (hf : @142) -> @13 (@278 @68) @10 +@286 := @274 @22 +@289 := @13 (@278 @22) @10 +@292 := {tys : @60} -> (h : @277) -> (hf : @175) -> @289 +@293 := @286 @23 +@296 := (h : @276 @183) -> (hf : @56) -> @289 +@299 := @293 (@188 @275) @53 +@300 := 5 +@301 := @151 @300 +@302 := @152 @300 +@303 := @64 @302 +@304 := @303 @74 +@305 := @87 @300 +@312 := {fs : @59} -> {tys : @60} -> (h : @304) -> (hf : @142) -> @13 (@305 @68) @10 +@313 := @301 @22 +@316 := @13 (@305 @22) @10 +@319 := {tys : @60} -> (h : @304) -> (hf : @175) -> @316 +@320 := @313 @23 +@323 := (h : @303 @183) -> (hf : @56) -> @316 +@326 := @320 (@188 @302) @53 +@327 := 6 +@328 := @151 @327 +@329 := @152 @327 +@330 := @64 @329 +@331 := @330 @74 +@332 := @87 @327 +@339 := {fs : @59} -> {tys : @60} -> (h : @331) -> (hf : @142) -> @13 (@332 @68) @10 +@340 := @328 @22 +@343 := @13 (@332 @22) @10 +@346 := {tys : @60} -> (h : @331) -> (hf : @175) -> @343 +@347 := @340 @23 +@350 := (h : @330 @183) -> (hf : @56) -> @343 +@353 := @347 (@188 @329) @53 +@354 := 7 +@355 := @151 @354 +@356 := @152 @354 +@357 := @64 @356 +@358 := @357 @74 +@359 := @87 @354 +@366 := {fs : @59} -> {tys : @60} -> (h : @358) -> (hf : @142) -> @13 (@359 @68) @10 +@367 := @355 @22 +@370 := @13 (@359 @22) @10 +@373 := {tys : @60} -> (h : @358) -> (hf : @175) -> @370 +@374 := @367 @23 +@377 := (h : @357 @183) -> (hf : @56) -> @370 +@380 := @374 (@188 @356) @53 +@381 := 8 +@382 := @151 @381 +@383 := @152 @381 +@384 := @64 @383 +@385 := @384 @74 +@386 := @87 @381 +@393 := {fs : @59} -> {tys : @60} -> (h : @385) -> (hf : @142) -> @13 (@386 @68) @10 +@394 := @382 @22 +@397 := @13 (@386 @22) @10 +@400 := {tys : @60} -> (h : @385) -> (hf : @175) -> @397 +@401 := @394 @23 +@404 := (h : @384 @183) -> (hf : @56) -> @397 +@407 := @401 (@188 @383) @53 +@408 := 9 +@409 := @151 @408 +@410 := @152 @408 +@411 := @64 @410 +@412 := @411 @74 +@413 := @87 @408 +@420 := {fs : @59} -> {tys : @60} -> (h : @412) -> (hf : @142) -> @13 (@413 @68) @10 +@421 := @409 @22 +@424 := @13 (@413 @22) @10 +@427 := {tys : @60} -> (h : @412) -> (hf : @175) -> @424 +@428 := @421 @23 +@431 := (h : @411 @183) -> (hf : @56) -> @424 +@434 := @428 (@188 @410) @53 +@448 := fun (__v : @3) => + Models.Glyphs.Glyph.casesOn.{0} @17 @4 @191 @218 @245 @272 @299 @326 @353 @380 @407 @434 +@449 := @5 @30 +@451 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.Compose.RustStd.__wt_0 @30 +@452 := @21 @18 +@454 := @452 @449 @22 +@455 := Prod.{0, 0} +@457 := @455 @57 @18 +@461 := Prod.mk.{0, 0} @57 @18 @9 +@462 := @461 @449 +@463 := @20 @457 +@464 := @21 @457 +@466 := @464 @462 @463 +@467 := Bool.true +@468 := LexLeanTarget.TargetSyntax.Function +@469 := LexLeanTarget.TargetSyntax.Program.functions +@470 := @469 @0 +@471 := @20 @57 +@472 := LexLeanTarget.TargetSyntax.Ty.unit +@473 := LexLeanTarget.TargetSyntax.Value.unit +@476 := LexLeanTarget.TargetSyntax.Expr.value @472 @473 +@481 := LexLeanTarget.TargetSyntax.Function.mk @471 @23 @472 @476 +@486 := List.getD.{0} @468 @470 @9 @481 +@490 := fun (__e_n : @57) => LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.RustStd.root @4 @9 +@495 := @7 @66 @79 @88 @68 @28 +@498 := @27 @83 @76 @66 +@500 := @452 @79 @68 +@501 := @498 @500 +@502 := @21 @19 +@504 := @502 @88 @28 +@514 := {p : @24} -> + {c : @25} -> + {A : @26} -> + {v : @18} -> {t : @19} -> {vs : @59} -> {ts : @60} -> (h : @495) -> (hs : @82) -> @501 @504 +@516 := LexLeanPreservation.Rust.wtl_cons @0 +@532 := {c : @25} -> + {A : @26} -> + {v : @18} -> + {t : @19} -> + {vs : @59} -> {ts : @60} -> (h : @11 @79 @88 @68 @28) -> (hs : @113) -> @40 @76 @66 @500 @504 +@533 := @516 @1 +@546 := {A : @26} -> + {v : @18} -> + {t : @19} -> {vs : @59} -> {ts : @60} -> (h : @12 @88 @68 @28) -> (hs : @129) -> @48 @66 @500 @504 +@547 := @533 @2 +@557 := {v : @18} -> + {t : @19} -> {vs : @59} -> {ts : @60} -> (h : @13 @68 @28) -> (hs : @142) -> @54 @500 @504 +@558 := @547 @449 +@559 := @5 @88 +@561 := @13 @559 @28 +@562 := @5 @66 +@563 := @452 @562 +@571 := {t : @19} -> {vs : @59} -> {ts : @60} -> (h : @561) -> (hs : @142) -> @54 (@563 @68) @504 +@572 := @558 @10 +@573 := @5 @68 +@575 := @13 @573 @10 +@576 := @5 @79 +@577 := @452 @576 +@579 := @54 (@577 @68) +@580 := @502 @10 +@581 := @580 @28 +@586 := {vs : @59} -> {ts : @60} -> (h : @575) -> (hs : @142) -> @579 @581 +@587 := @572 @22 +@588 := @5 @28 +@590 := @13 @588 @10 +@592 := @452 @559 @22 +@593 := @54 @592 +@597 := {ts : @60} -> (h : @590) -> (hs : @175) -> @593 @581 +@598 := @587 @23 +@600 := @13 @449 @10 +@602 := @452 @573 @22 +@603 := @54 @602 +@604 := @580 @23 +@607 := (h : @600) -> (hs : @56) -> @603 @604 +@608 := @598 @451 +@610 := @452 @588 @22 +@611 := @54 @610 +@613 := (hs : @56) -> @611 @604 +@614 := @608 @53 +@615 := @54 @454 +@616 := @615 @604 +@617 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.denote +@618 := @617 @30 +@619 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.__fits_0 +@620 := @619 @30 +@622 := Models.Main.classifyChecked @30 +@623 := Bool +@625 := @455 @623 @623 +@626 := LexLeanTarget.TargetSyntax.Value.bool +@631 := LexLeanPreservation.encPair @623 @623 @626 @626 +@632 := LexLeanTarget.TargetSyntax.Value.nat +@638 := LexLeanPreservation.encExcept @625 @57 @631 @632 @622 +@640 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.root @30 +@641 := Ne.{1} +@642 := LexLeanPreservation.Obs +@643 := @641 @642 +@644 := LexLeanPreservation.Rel +@647 := @643 (@644 @30 @4) +@648 := LexLeanPreservation.Obs.stuck +@651 := (f : @623) -> (v : @18) -> @647 @648 +@653 := LexLeanPreservation.Rust.rel_ne_stuck @620 +@659 := (v : @18) -> @643 (@644 (@619 @28) @4) @648 +@660 := @653 @638 +@664 := @643 (@644 @620 @638) @648 +@665 := @58 @457 +@666 := LexLeanPreservation.Rust.FunSem +@667 := #9 +@673 := (n : @57) -> @666 @667 @83 @76 @4 @66 +@674 := @62 @468 +@675 := @61 @674 +@682 := LexLeanRuntime.index (@58 @468) @468 (LexLeanRuntime.instIndexableList @468) +@686 := @675 (@682 (@469 @667) @66) +@687 := @72 @468 +@688 := @687 @79 +@689 := @686 @688 +@690 := #10 +@694 := @27 @690 @667 @83 @79 +@695 := LexLeanTarget.TargetSyntax.Function.types +@696 := @695 @66 +@697 := @694 @696 +@698 := @62 @665 +@699 := @61 @698 +@700 := LexLeanTarget.TargetSemantics.bindAll +@701 := LexLeanTarget.TargetSyntax.Function.parameters +@706 := @699 (@700 (@701 @76) @66 @463) +@707 := @72 @665 +@708 := @707 @79 +@709 := @706 @708 +@710 := @62 @623 +@711 := @61 @710 +@712 := LexLeanPreservation.Rust.fnFallible +@713 := #11 +@716 := @711 (@712 @713 @667) +@717 := @72 @623 +@718 := @717 @79 +@719 := @716 @718 +@720 := LexLeanPreservation.RunConv +@721 := #13 +@725 := @720 @721 @690 @83 @79 +@727 := @643 @66 @648 +@728 := Exists.{1} +@729 := LexLeanPreservation.Rust.ROut +@730 := @728 @729 +@731 := And +@732 := LexLeanPreservation.Rust.RealizesFn +@736 := @731 (@732 @667 @83 @4) +@737 := LexLeanPreservation.Rust.RCI +@739 := @737 #15 +@740 := LexLeanPreservation.Rust.fnIdent +@741 := @740 @721 +@748 := (hne : @727) -> @730 (fun (ro : @729) => @736 (@739 @741 @713 @4)) +@763 := {p : @24} -> + {c : @25} -> + {A : @26} -> + {f : @57} -> + {fn : @468} -> + {args : @59} -> + {env : @665} -> + {F : @623} -> + {o : @642} -> + (hB : @673) -> + (hfn : @689) -> (hwt : @697) -> (hbind : @709) -> (hF : @719) -> (hA : @725) -> @748 +@765 := LexLeanPreservation.Rust.compose @0 +@766 := @666 @0 +@771 := (n : @57) -> @766 @83 @76 @4 @66 +@772 := @682 @470 +@775 := @675 (@772 @66) @688 +@779 := @40 @667 @83 @79 @696 +@780 := @720 @0 +@783 := @780 @690 @83 @79 +@797 := {c : @25} -> + {A : @26} -> + {f : @57} -> + {fn : @468} -> + {args : @59} -> + {env : @665} -> + {F : @623} -> + {o : @642} -> + (hB : @771) -> + (hfn : @775) -> (hwt : @779) -> (hbind : @709) -> (hF : @719) -> (hA : @783) -> @748 +@798 := @765 @1 +@799 := @766 @1 +@803 := (n : @57) -> @799 @76 @4 @66 +@806 := @48 @83 @79 @696 +@807 := @712 @1 +@810 := @711 (@807 @667) @718 +@811 := @737 @1 +@821 := (hbind : @709) -> + (hF : @810) -> (hA : @783) -> (hne : @727) -> @730 (fun (ro : @729) => @736 (@811 @741 @713 @4)) +@831 := {A : @26} -> + {f : @57} -> + {fn : @468} -> + {args : @59} -> + {env : @665} -> {F : @623} -> {o : @642} -> (hB : @803) -> (hfn : @775) -> (hwt : @806) -> @821 +@832 := @798 @2 +@834 := @799 @2 @4 +@836 := (n : @57) -> @834 @66 +@837 := @54 @79 +@838 := @837 @696 +@847 := {f : @57} -> + {fn : @468} -> + {args : @59} -> + {env : @665} -> {F : @623} -> {o : @642} -> (hB : @836) -> (hfn : @775) -> (hwt : @838) -> @821 +@848 := @832 @9 +@850 := (n : @57) -> @834 @9 +@851 := @772 @9 +@852 := @675 @851 +@853 := @852 @688 +@854 := @807 @9 +@855 := @711 @854 +@856 := @855 @718 +@857 := @780 @9 +@859 := @857 @83 @79 +@861 := @811 (@740 @9) +@869 := (hF : @856) -> (hA : @859) -> (hne : @727) -> @730 (fun (ro : @729) => @736 (@861 @713 @4)) +@878 := {fn : @468} -> + {args : @59} -> + {env : @665} -> + {F : @623} -> {o : @642} -> (hB : @850) -> (hfn : @853) -> (hwt : @838) -> (hbind : @709) -> @869 +@879 := @848 @486 +@881 := @852 (@687 @486) +@882 := @695 @486 +@883 := @837 @882 +@885 := @700 (@701 @486) +@897 := {args : @59} -> + {env : @665} -> + {F : @623} -> + {o : @642} -> + (hB : @850) -> (hfn : @881) -> (hwt : @883) -> (hbind : @699 (@885 @66 @463) @708) -> @869 +@898 := @879 @454 +@899 := @563 @22 +@901 := @54 @899 @882 +@904 := @452 (@5 @76) @22 +@908 := @699 (@885 @904 @463) @708 +@911 := @452 (@5 @667) @22 +@932 := {env : @665} -> + {F : @623} -> + {o : @642} -> + (hB : @850) -> + (hfn : @881) -> + (hwt : @901) -> + (hbind : @908) -> + (hF : @856) -> + (hA : @857 @911 @79) -> + (hne : @727) -> @730 (fun (ro : @729) => @736 (@861 (@452 (@5 #12) @22) @4)) +@933 := @898 @466 +@934 := @577 @22 +@936 := @54 @934 @882 +@944 := @699 (@885 @899 @463) (@707 (@464 (@461 @562) @463)) +@947 := @452 (@5 @83) @22 +@966 := {F : @623} -> + {o : @642} -> + (hB : @850) -> + (hfn : @881) -> + (hwt : @936) -> + (hbind : @944) -> + (hF : @856) -> + (hA : @857 @947 @79) -> + (hne : @727) -> @730 (fun (ro : @729) => @736 (@861 (@452 (@5 @713) @22) @4)) +@967 := @933 @467 +@968 := @593 @882 +@976 := @699 (@885 @934 @463) (@707 (@464 (@461 @576) @463)) +@978 := @855 (@717 @467) +@980 := @857 @904 @79 +@981 := @732 @467 +@1000 := {o : @642} -> + (hB : @850) -> + (hfn : @881) -> + (hwt : @968) -> + (hbind : @976) -> + (hF : @978) -> + (hA : @980) -> + (hne : @727) -> @730 (fun (ro : @729) => @731 (@981 @83 @4) (@861 (@452 (@5 @690) @22) @4)) +@1001 := @967 @618 +@1002 := @603 @882 +@1010 := @699 (@885 @592 @463) (@707 (@464 (@461 @559) @463)) +@1011 := @857 @899 +@1012 := @617 @66 +@1013 := @1011 @1012 +@1014 := @617 @76 +@1032 := (hB : @850) -> + (hfn : @881) -> + (hwt : @1002) -> + (hbind : @1010) -> + (hF : @978) -> + (hA : @1013) -> + (hne : @643 @1014 @648) -> @730 (fun (ro : @729) => @731 (@981 (@617 @667) @4) (@861 @911 @4)) +@1033 := @1001 @490 +@1034 := @611 @882 +@1042 := @699 (@885 @602 @463) (@707 (@464 (@461 @573) @463)) +@1043 := @857 @934 +@1044 := @617 @79 +@1062 := (hfn : @881) -> + (hwt : @1034) -> + (hbind : @1042) -> + (hF : @978) -> + (hA : @1043 @1044) -> + (hne : @643 @1012 @648) -> @730 (fun (ro : @729) => @731 (@981 (@617 @83) @4) (@861 @947 @4)) +@1065 := @1033 (@187 @674 @851) +@1066 := @615 @882 +@1074 := @699 (@885 @610 @463) (@707 (@464 (@461 @588) @463)) +@1075 := @857 @592 +@1076 := @617 @88 +@1092 := (hwt : @1066) -> + (hbind : @1074) -> + (hF : @978) -> + (hA : @1075 @1076) -> + (hne : @643 @1044 @648) -> @730 (fun (ro : @729) => @731 (@981 @1014 @4) (@861 @904 @4)) +@1093 := @1065 @614 +@1095 := @885 @454 @463 +@1098 := @699 @1095 (@707 @466) +@1099 := @857 @602 +@1100 := @617 @68 +@1115 := (hbind : @1098) -> + (hF : @978) -> + (hA : @1099 @1100) -> + (hne : @643 @1076 @648) -> @730 (fun (ro : @729) => @731 (@981 @1012 @4) (@861 @899 @4)) +@1118 := @1093 (@187 @698 @1095) +@1119 := @857 @610 +@1120 := @617 @28 +@1134 := (hF : @978) -> + (hA : @1119 @1120) -> + (hne : @643 @1100 @648) -> @730 (fun (ro : @729) => @731 (@981 @1044 @4) (@861 @934 @4)) +@1137 := @1118 (@187 @710 @854) +@1151 := (hA : @857 @454 @618) -> + (hne : @643 @1120 @648) -> @730 (fun (ro : @729) => @731 (@981 @1076 @4) (@861 @592 @4)) +@1152 := @1137 @640 +@1163 := (hne : @643 @618 @648) -> @730 (fun (ro : @729) => @731 (@981 @1100 @4) (@861 @602 @4)) +@1164 := @1152 @660 +@1170 := @731 (@981 @1120 @4) (@861 @610 @4) +@1172 := @730 (fun (ro : @729) => @1170) +@1174 := @730 (fun (__e_ro : @729) => @1170) +@1178 := LexLeanPreservation.Rust.RepresentableL (@452 @6 @22) +@1179 := (__e_hrep : @1178) -> @1174 +@1180 := fun (__e_hrep : @1178) => @1164 +@1181 := (glyph : @3) -> @1179 +@1182 := fun (glyph : @3) => @1180 +\end{coremodule} +\end{lexlean} diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R1/RustStd.lean b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R1/RustStd.lean new file mode 100644 index 000000000..b65d9f83d --- /dev/null +++ b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R1/RustStd.lean @@ -0,0 +1,250 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [{ constructors := [[], [], [], [], [], [], [], [], [], []] }], functions := [ + { parameters := [0], types := [(.adt 0)], result := (.result .nat (.pair .bool .bool)), + body := (.«let» 1 (.adt 0) (.var 0) (.«let» 2 .nat (.call 1 [(.var 1)]) (.cond (.call 2 [(.var 1), (.var 2)]) (.build .ok (.result .nat (.pair .bool .bool)) [(.var 2)]) (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])])])))) }, + { parameters := [0], types := [(.adt 0)], result := .nat, + body := (.call 3 [(.var 0)]) }, + { parameters := [0, 1], types := [(.adt 0), .nat], result := .bool, + body := (.prim .natEq [(.var 1), (.call 4 [(.var 0)])]) }, + { parameters := [0], types := [(.adt 0)], result := .nat, + body := (.«match» .nat (.first (.call 5 [(.closure 6 []), (.build .pair (.pair (.option (.pair .nat .int)) (.list .nat)) [(.build .none (.option (.pair .nat .int)) []), (.build .cons (.list .nat) [(.value .nat (.nat 0)), (.build .cons (.list .nat) [(.value .nat (.nat 1)), (.build .cons (.list .nat) [(.value .nat (.nat 2)), (.build .cons (.list .nat) [(.value .nat (.nat 3)), (.build .cons (.list .nat) [(.value .nat (.nat 4)), (.build .cons (.list .nat) [(.value .nat (.nat 5)), (.build .cons (.list .nat) [(.value .nat (.nat 6)), (.build .cons (.list .nat) [(.value .nat (.nat 7)), (.build .cons (.list .nat) [(.value .nat (.nat 8)), (.build .cons (.list .nat) [(.value .nat (.nat 9)), (.build .nil (.list .nat) [])])])])])])])])])])])]), (.call 7 [(.var 0)])])) [(.arm .none [] (.value .nat (.nat 0))), (.arm .some [1] (.first (.var 1)))]) }, + { parameters := [0], types := [(.adt 0)], result := .nat, + body := (.«match» .nat (.var 0) [(.arm (.adt 0) [] (.value .nat (.nat 0))), (.arm (.adt 1) [] (.value .nat (.nat 1))), (.arm (.adt 2) [] (.value .nat (.nat 2))), (.arm (.adt 3) [] (.value .nat (.nat 3))), (.arm (.adt 4) [] (.value .nat (.nat 4))), (.arm (.adt 5) [] (.value .nat (.nat 5))), (.arm (.adt 6) [] (.value .nat (.nat 6))), (.arm (.adt 7) [] (.value .nat (.nat 7))), (.arm (.adt 8) [] (.value .nat (.nat 8))), (.arm (.adt 9) [] (.value .nat (.nat 9)))]) }, + { parameters := [0, 1, 2], types := [(.fn [(.pair (.option (.pair .nat .int)) (.list .nat)), .int] (.pair (.option (.pair .nat .int)) (.list .nat))), (.pair (.option (.pair .nat .int)) (.list .nat)), (.list .int)], result := (.pair (.option (.pair .nat .int)) (.list .nat)), + body := (.«match» (.pair (.option (.pair .nat .int)) (.list .nat)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 5 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, + { parameters := [0, 1], types := [(.pair (.option (.pair .nat .int)) (.list .nat)), .int], result := (.pair (.option (.pair .nat .int)) (.list .nat)), + body := (.«match» (.pair (.option (.pair .nat .int)) (.list .nat)) (.second (.var 0)) [(.arm .nil [] (.var 0)), (.arm .cons [2, 3] (.build .pair (.pair (.option (.pair .nat .int)) (.list .nat)) [(.«match» (.option (.pair .nat .int)) (.first (.var 0)) [(.arm .none [] (.build .some (.option (.pair .nat .int)) [(.build .pair (.pair .nat .int) [(.var 2), (.var 1)])])), (.arm .some [4] (.cond (.«match» .bool (.prim .compare [(.second (.var 4)), (.var 1)]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.build .some (.option (.pair .nat .int)) [(.build .pair (.pair .nat .int) [(.var 2), (.var 1)])]) (.build .some (.option (.pair .nat .int)) [(.var 4)])))]), (.var 3)]))]) }, + { parameters := [0], types := [(.adt 0)], result := (.list .int), + body := (.call 8 [(.call 9 [(.call 10 [(.call 11 [(.call 12 [(.var 0)])])])])]) }, + { parameters := [0], types := [(.list .int)], result := (.list .int), + body := (.first (.call 13 [(.closure 14 [(.var 0)]), (.build .pair (.pair (.list .int) (.list .int)) [(.build .nil (.list .int) []), (.call 15 [])]), (.call 16 [])])) }, + { parameters := [0], types := [(.list .int)], result := (.list .int), + body := (.call 17 [(.closure 18 []), (.build .nil (.list .int) []), (.var 0)]) }, + { parameters := [0], types := [(.list .int)], result := (.list .int), + body := (.call 17 [(.closure 19 []), (.build .nil (.list .int) []), (.var 0)]) }, + { parameters := [0], types := [(.list .int)], result := (.list .int), + body := (.first (.call 13 [(.closure 20 [(.var 0)]), (.build .pair (.pair (.list .int) (.list .int)) [(.build .nil (.list .int) []), (.call 21 [])]), (.call 22 [])])) }, + { parameters := [0], types := [(.adt 0)], result := (.list .int), + body := (.call 23 [(.var 0)]) }, + { parameters := [0, 1, 2], types := [(.fn [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int))), (.pair (.list .int) (.list .int)), (.list (.list .int))], result := (.pair (.list .int) (.list .int)), + body := (.«match» (.pair (.list .int) (.list .int)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 13 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, + { parameters := [0, 1, 2], types := [(.list .int), (.pair (.list .int) (.list .int)), (.list .int)], result := (.pair (.list .int) (.list .int)), + body := (.«match» (.pair (.list .int) (.list .int)) (.second (.var 1)) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.build .pair (.pair (.list .int) (.list .int)) [(.prim .append [(.first (.var 1)), (.build .cons (.list .int) [(.prim .intSub [(.var 3), (.prim .intNeg [(.first (.call 24 [(.closure 25 []), (.build .pair (.pair .int (.list .int)) [(.value .int (.int 0)), (.var 0)]), (.var 2)]))])]), (.build .nil (.list .int) [])])]), (.var 4)]))]) }, + { parameters := [], types := [], result := (.list .int), + body := (.build .cons (.list .int) [(.value .int (.int (-6))), (.build .cons (.list .int) [(.value .int (.int (-2))), (.build .cons (.list .int) [(.value .int (.int (-5))), (.build .cons (.list .int) [(.value .int (.int (-5))), (.build .cons (.list .int) [(.value .int (.int (-4))), (.build .cons (.list .int) [(.value .int (.int (-5))), (.build .cons (.list .int) [(.value .int (.int (-6))), (.build .cons (.list .int) [(.value .int (.int (-3))), (.build .cons (.list .int) [(.value .int (.int (-7))), (.build .cons (.list .int) [(.value .int (.int (-6))), (.build .nil (.list .int) [])])])])])])])])])])]) }, + { parameters := [], types := [], result := (.list (.list .int)), + body := (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])])])])])]), (.build .nil (.list (.list .int)) [])])])])])])])])])])]) }, + { parameters := [0, 1, 2], types := [(.fn [(.list .int), .int] (.list .int)), (.list .int), (.list .int)], result := (.list .int), + body := (.«match» (.list .int) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 17 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, + { parameters := [0, 1], types := [(.list .int), .int], result := (.list .int), + body := (.prim .append [(.var 0), (.build .cons (.list .int) [(.«let» 2 .int (.prim .intQuot [(.var 1), (.value .int (.int 4)), (.value .int (.int 0))]) (.cond (.«match» .bool (.prim .compare [(.var 2), (.value .int (.int 0))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.value .int (.int 0)) (.cond (.«match» .bool (.prim .compare [(.value .int (.int 127)), (.var 2)]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.value .int (.int 127)) (.var 2)))), (.build .nil (.list .int) [])])]) }, + { parameters := [0, 1], types := [(.list .int), .int], result := (.list .int), + body := (.prim .append [(.var 0), (.build .cons (.list .int) [(.cond (.«match» .bool (.prim .compare [(.var 1), (.value .int (.int 0))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.value .int (.int 0)) (.var 1)), (.build .nil (.list .int) [])])]) }, + { parameters := [0, 1, 2], types := [(.list .int), (.pair (.list .int) (.list .int)), (.list .int)], result := (.pair (.list .int) (.list .int)), + body := (.«match» (.pair (.list .int) (.list .int)) (.second (.var 1)) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.build .pair (.pair (.list .int) (.list .int)) [(.prim .append [(.first (.var 1)), (.build .cons (.list .int) [(.prim .intSub [(.var 3), (.prim .intNeg [(.first (.call 24 [(.closure 26 []), (.build .pair (.pair .int (.list .int)) [(.value .int (.int 0)), (.var 0)]), (.var 2)]))])]), (.build .nil (.list .int) [])])]), (.var 4)]))]) }, + { parameters := [], types := [], result := (.list .int), + body := (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int (-2))), (.build .cons (.list .int) [(.value .int (.int 3)), (.build .cons (.list .int) [(.value .int (.int (-5))), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .nil (.list .int) [])])])])])])])])])])])])]) }, + { parameters := [], types := [], result := (.list (.list .int)), + body := (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 4)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 3)), (.build .cons (.list .int) [(.value .int (.int (-2))), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int (-1))), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int (-3))), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int (-1))), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int (-2))), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int (-4))), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 3)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])]), (.build .nil (.list (.list .int)) [])])])])])])])])])])])])]) }, + { parameters := [0], types := [(.adt 0)], result := (.list .int), + body := (.«match» (.list .int) (.var 0) [(.arm (.adt 0) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 1) [] (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 2) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 3) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 4) [] (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 5) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 6) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 7) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 8) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])])), (.arm (.adt 9) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])])])])]))]) }, + { parameters := [0, 1, 2], types := [(.fn [(.pair .int (.list .int)), .int] (.pair .int (.list .int))), (.pair .int (.list .int)), (.list .int)], result := (.pair .int (.list .int)), + body := (.«match» (.pair .int (.list .int)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 24 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, + { parameters := [0, 1], types := [(.pair .int (.list .int)), .int], result := (.pair .int (.list .int)), + body := (.«match» (.pair .int (.list .int)) (.second (.var 0)) [(.arm .nil [] (.var 0)), (.arm .cons [2, 3] (.build .pair (.pair .int (.list .int)) [(.prim .intSub [(.first (.var 0)), (.prim .intNeg [(.prim .intMul [(.var 1), (.var 2)])])]), (.var 3)]))]) }, + { parameters := [0, 1], types := [(.pair .int (.list .int)), .int], result := (.pair .int (.list .int)), + body := (.«match» (.pair .int (.list .int)) (.second (.var 0)) [(.arm .nil [] (.var 0)), (.arm .cons [2, 3] (.build .pair (.pair .int (.list .int)) [(.prim .intSub [(.first (.var 0)), (.prim .intNeg [(.prim .intMul [(.var 1), (.var 2)])])]), (.var 3)]))]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := ((.enum (.adt 0) [{ number := 0, fields := [] }, { number := 1, fields := [] }, { number := 2, fields := [] }, { number := 3, fields := [] }, { number := 4, fields := [] }, { number := 5, fields := [] }, { number := 6, fields := [] }, { number := 7, fields := [] }, { number := 8, fields := [] }, { number := 9, fields := [] }]) :: + (.enum (.fn 0) [{ number := 6, fields := [] }]) :: + (.apply 0 [(.pair (.option (.pair .nat .int)) (.list .nat)), .int] (.pair (.option (.pair .nat .int)) (.list .nat)) false [{ function := 6, captures := [], functionFallible := false }]) :: + (.enum (.fn 1) [{ number := 14, fields := [(.list .int)] }, { number := 20, fields := [(.list .int)] }]) :: + (.apply 1 [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int)) true [{ function := 14, captures := [.clone], functionFallible := true }, { function := 20, captures := [.clone], functionFallible := true }]) :: + (.enum (.fn 2) [{ number := 18, fields := [] }, { number := 19, fields := [] }]) :: + (.apply 2 [(.list .int), .int] (.list .int) true [{ function := 18, captures := [], functionFallible := true }, { function := 19, captures := [], functionFallible := false }]) :: + (.enum (.fn 3) [{ number := 25, fields := [] }, { number := 26, fields := [] }]) :: + (.apply 3 [(.pair .int (.list .int)), .int] (.pair .int (.list .int)) true [{ function := 25, captures := [], functionFallible := true }, { function := 26, captures := [], functionFallible := true }]) :: + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible (.result .nat (.pair .bool .bool))) (.mk [(.mk (.bind (.generated .binding 1)) (some (.adt 0)) (.move (.generated .binding 0))), (.mk (.bind (.generated .binding 2)) (some .nat) (.call (.function 1) [(.clone (.generated .binding 1))] true))] (.cond (.call (.function 2) [(.move (.generated .binding 1)), (.copy (.generated .binding 2))] false) (.mk [] (.succeed (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))]))) (.mk [] (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))))) :: + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible .nat) (.mk [] (.call (.function 3) [(.move (.generated .binding 0))] false))) :: + (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 2)) none (.call (.function 4) [(.move (.generated .binding 0))] false))] (.call (.runtime .natEq) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false))) :: + (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 4)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.call (.function 5) [(.construct (.closure 0 6) []), (.pair (.construct (.none (.pair .nat .int)) []) (.construct .cons [(.lit (.nat 0)), (.construct .cons [(.lit (.nat 1)), (.construct .cons [(.lit (.nat 2)), (.construct .cons [(.lit (.nat 3)), (.construct .cons [(.lit (.nat 4)), (.construct .cons [(.lit (.nat 5)), (.construct .cons [(.lit (.nat 6)), (.construct .cons [(.lit (.nat 7)), (.construct .cons [(.lit (.nat 8)), (.construct .cons [(.lit (.nat 9)), (.construct (.nil .nat) [])])])])])])])])])])])), (.call (.function 7) [(.move (.generated .binding 0))] true)] false))] (.move (.generated .part 3)))))] (.matchOn (.move (.generated .holder 4)) [(.mk .none (.mk [] (.succeed (.lit (.nat 0))))), (.mk (.some (.bind (.generated .binding 1))) (.mk [(.mk (.tuple [(.bind (.generated .part 5)), .wild]) none (.copy (.generated .binding 1)))] (.succeed (.move (.generated .part 5)))))]))) :: + (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .nat (.mk [(.mk (.bind (.generated .holder 6)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 6)) [(.mk (.adt 0 0 []) (.mk [] (.lit (.nat 0)))), (.mk (.adt 0 1 []) (.mk [] (.lit (.nat 1)))), (.mk (.adt 0 2 []) (.mk [] (.lit (.nat 2)))), (.mk (.adt 0 3 []) (.mk [] (.lit (.nat 3)))), (.mk (.adt 0 4 []) (.mk [] (.lit (.nat 4)))), (.mk (.adt 0 5 []) (.mk [] (.lit (.nat 5)))), (.mk (.adt 0 6 []) (.mk [] (.lit (.nat 6)))), (.mk (.adt 0 7 []) (.mk [] (.lit (.nat 7)))), (.mk (.adt 0 8 []) (.mk [] (.lit (.nat 8)))), (.mk (.adt 0 9 []) (.mk [] (.lit (.nat 9))))]))) :: + (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := (.pair (.option (.pair .nat .int)) (.list .nat)) }, { pattern := (.bind (.generated .binding 2)), type := (.list .int) }] (.pair (.option (.pair .nat .int)) (.list .nat)) (.mk [(.mk (.bind (.generated .holder 7)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 7)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 5) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 8)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 8) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]))) :: + (.function (.generated .function 6) [{ pattern := (.bind (.generated .binding 0)), type := (.pair (.option (.pair .nat .int)) (.list .nat)) }, { pattern := (.bind (.generated .binding 1)), type := .int }] (.pair (.option (.pair .nat .int)) (.list .nat)) (.mk [(.mk (.bind (.generated .holder 10)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 9))]) none (.clone (.generated .binding 0)))] (.move (.generated .part 9)))))] (.matchOn (.uncons (.generated .holder 10)) [(.mk .none (.mk [] (.move (.generated .binding 0)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.pair (.block (.mk [(.mk (.bind (.generated .holder 12)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 11)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 11)))))] (.matchOn (.move (.generated .holder 12)) [(.mk .none (.mk [] (.construct .some [(.pair (.copy (.generated .binding 2)) (.copy (.generated .binding 1)))]))), (.mk (.some (.bind (.generated .binding 4))) (.mk [(.mk (.bind (.generated .holder 16)) none (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 13))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 13))))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1)))] (.call (.runtime .compare) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false))))] (.cond (.matchOn (.move (.generated .holder 16)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.construct .some [(.pair (.copy (.generated .binding 2)) (.copy (.generated .binding 1)))])) (.mk [] (.construct .some [(.copy (.generated .binding 4))])))))]))) (.move (.generated .binding 3)))))]))) :: + (.function (.generated .function 7) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible (.list .int)) (.mk [] (.call (.function 8) [(.call (.function 9) [(.call (.function 10) [(.call (.function 11) [(.call (.function 12) [(.move (.generated .binding 0))] false)] true)] true)] true)] false))) :: + (.function (.generated .function 8) [{ pattern := (.bind (.generated .binding 0)), type := (.list .int) }] (.fallible (.list .int)) (.mk [(.mk (.tuple [(.bind (.generated .part 17)), .wild]) none (.call (.function 13) [(.construct (.closure 1 14) [(.move (.generated .binding 0))]), (.pair (.construct (.nil .int) []) (.call (.function 15) [] false)), (.call (.function 16) [] false)] true))] (.succeed (.move (.generated .part 17))))) :: + (.function (.generated .function 9) [{ pattern := (.bind (.generated .binding 0)), type := (.list .int) }] (.fallible (.list .int)) (.mk [] (.call (.function 17) [(.construct (.closure 2 18) []), (.construct (.nil .int) []), (.move (.generated .binding 0))] false))) :: + (.function (.generated .function 10) [{ pattern := (.bind (.generated .binding 0)), type := (.list .int) }] (.fallible (.list .int)) (.mk [] (.call (.function 17) [(.construct (.closure 2 19) []), (.construct (.nil .int) []), (.move (.generated .binding 0))] false))) :: + (.function (.generated .function 11) [{ pattern := (.bind (.generated .binding 0)), type := (.list .int) }] (.fallible (.list .int)) (.mk [(.mk (.tuple [(.bind (.generated .part 18)), .wild]) none (.call (.function 13) [(.construct (.closure 1 20) [(.move (.generated .binding 0))]), (.pair (.construct (.nil .int) []) (.call (.function 21) [] false)), (.call (.function 22) [] false)] true))] (.succeed (.move (.generated .part 18))))) :: + (.function (.generated .function 12) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.list .int) (.mk [] (.call (.function 23) [(.move (.generated .binding 0))] false))) :: + (.function (.generated .function 13) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 1) }, { pattern := (.bind (.generated .binding 1)), type := (.pair (.list .int) (.list .int)) }, { pattern := (.bind (.generated .binding 2)), type := (.list (.list .int)) }] (.fallible (.pair (.list .int) (.list .int))) (.mk [(.mk (.bind (.generated .holder 19)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 19)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 13) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 20)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 20) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]))) :: + (.function (.generated .function 14) [{ pattern := (.bind (.generated .binding 0)), type := (.list .int) }, { pattern := (.bind (.generated .binding 1)), type := (.pair (.list .int) (.list .int)) }, { pattern := (.bind (.generated .binding 2)), type := (.list .int) }] (.fallible (.pair (.list .int) (.list .int))) (.mk [(.mk (.bind (.generated .holder 22)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 21))]) none (.clone (.generated .binding 1)))] (.move (.generated .part 21)))))] (.matchOn (.uncons (.generated .holder 22)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 23)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 23))))), (.mk (.bind (.generated .operand 29)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 27)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 24)), .wild]) none (.call (.function 24) [(.construct (.closure 3 25) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 24)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 25))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] true))), (.construct (.nil .int) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 28)), (.move (.generated .operand 29))] false))) (.move (.generated .binding 4))))))]))) :: + (.function (.generated .function 15) [] (.list .int) (.mk [] (.construct .cons [(.lit (.int (-6))), (.construct .cons [(.lit (.int (-2))), (.construct .cons [(.lit (.int (-5))), (.construct .cons [(.lit (.int (-5))), (.construct .cons [(.lit (.int (-4))), (.construct .cons [(.lit (.int (-5))), (.construct .cons [(.lit (.int (-6))), (.construct .cons [(.lit (.int (-3))), (.construct .cons [(.lit (.int (-7))), (.construct .cons [(.lit (.int (-6))), (.construct (.nil .int) [])])])])])])])])])])]))) :: + (.function (.generated .function 16) [] (.list (.list .int)) (.mk [] (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct (.nil (.list .int)) [])])])])])])])])])])]))) :: + (.function (.generated .function 17) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 2) }, { pattern := (.bind (.generated .binding 1)), type := (.list .int) }, { pattern := (.bind (.generated .binding 2)), type := (.list .int) }] (.fallible (.list .int)) (.mk [(.mk (.bind (.generated .holder 30)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 30)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 17) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 31)) (some (.fn 2)) (.move (.generated .binding 0)))] (.apply (.generated .callee 31) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]))) :: + (.function (.generated .function 18) [{ pattern := (.bind (.generated .binding 0)), type := (.list .int) }, { pattern := (.bind (.generated .binding 1)), type := .int }] (.fallible (.list .int)) (.mk [(.mk (.bind (.generated .operand 41)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 42)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .binding 2)) (some .int) (.block (.mk [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 33)) none (.lit (.int 4))), (.mk (.bind (.generated .operand 34)) none (.lit (.int 0)))] (.call (.runtime .intQuot) [(.move (.generated .operand 32)), (.move (.generated .operand 33)), (.move (.generated .operand 34))] true)))), (.mk (.bind (.generated .holder 37)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 36)) none (.lit (.int 0)))] (.call (.runtime .compare) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false))))] (.cond (.matchOn (.move (.generated .holder 37)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.lit (.int 0))) (.mk [(.mk (.bind (.generated .holder 40)) none (.block (.mk [(.mk (.bind (.generated .operand 38)) none (.lit (.int 127))), (.mk (.bind (.generated .operand 39)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 38)), (.move (.generated .operand 39))] false))))] (.cond (.matchOn (.move (.generated .holder 40)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.lit (.int 127))) (.mk [] (.copy (.generated .binding 2)))))))), (.construct (.nil .int) [])]))] (.succeed (.call (.runtime .appendList) [(.move (.generated .operand 41)), (.move (.generated .operand 42))] false)))) :: + (.function (.generated .function 19) [{ pattern := (.bind (.generated .binding 0)), type := (.list .int) }, { pattern := (.bind (.generated .binding 1)), type := .int }] (.list .int) (.mk [(.mk (.bind (.generated .operand 46)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 47)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .holder 45)) none (.block (.mk [(.mk (.bind (.generated .operand 43)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 44)) none (.lit (.int 0)))] (.call (.runtime .compare) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] false))))] (.cond (.matchOn (.move (.generated .holder 45)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.lit (.int 0))) (.mk [] (.copy (.generated .binding 1)))))), (.construct (.nil .int) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 46)), (.move (.generated .operand 47))] false))) :: + (.function (.generated .function 20) [{ pattern := (.bind (.generated .binding 0)), type := (.list .int) }, { pattern := (.bind (.generated .binding 1)), type := (.pair (.list .int) (.list .int)) }, { pattern := (.bind (.generated .binding 2)), type := (.list .int) }] (.fallible (.pair (.list .int) (.list .int))) (.mk [(.mk (.bind (.generated .holder 49)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 48))]) none (.clone (.generated .binding 1)))] (.move (.generated .part 48)))))] (.matchOn (.uncons (.generated .holder 49)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 55)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 50)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 50))))), (.mk (.bind (.generated .operand 56)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 53)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 54)) none (.block (.mk [(.mk (.bind (.generated .operand 52)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 51)), .wild]) none (.call (.function 24) [(.construct (.closure 3 26) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 51)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 52))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] true))), (.construct (.nil .int) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 55)), (.move (.generated .operand 56))] false))) (.move (.generated .binding 4))))))]))) :: + (.function (.generated .function 21) [] (.list .int) (.mk [] (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int (-2))), (.construct .cons [(.lit (.int 3)), (.construct .cons [(.lit (.int (-5))), (.construct .cons [(.lit (.int 2)), (.construct (.nil .int) [])])])])])])])])])])])])]))) :: + (.function (.generated .function 22) [] (.list (.list .int)) (.mk [] (.construct .cons [(.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 3)), (.construct .cons [(.lit (.int (-2))), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int (-1))), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int (-3))), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int (-1))), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int (-2))), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int (-4))), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 3)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct (.nil (.list .int)) [])])])])])])])])])])])])]))) :: + (.function (.generated .function 23) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.list .int) (.mk [(.mk (.bind (.generated .holder 57)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 57)) [(.mk (.adt 0 0 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 1 []) (.mk [] (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 2 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 3 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 4 []) (.mk [] (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 5 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 6 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 7 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 8 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 9 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])])))]))) :: + (.function (.generated .function 24) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 3) }, { pattern := (.bind (.generated .binding 1)), type := (.pair .int (.list .int)) }, { pattern := (.bind (.generated .binding 2)), type := (.list .int) }] (.fallible (.pair .int (.list .int))) (.mk [(.mk (.bind (.generated .holder 58)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 58)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 24) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 59)) (some (.fn 3)) (.move (.generated .binding 0)))] (.apply (.generated .callee 59) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]))) :: + (.function (.generated .function 25) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .int (.list .int)) }, { pattern := (.bind (.generated .binding 1)), type := .int }] (.fallible (.pair .int (.list .int))) (.mk [(.mk (.bind (.generated .holder 61)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 60))]) none (.clone (.generated .binding 0)))] (.move (.generated .part 60)))))] (.matchOn (.uncons (.generated .holder 61)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 0))))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 66)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 62)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 62))))), (.mk (.bind (.generated .operand 67)) none (.block (.mk [(.mk (.bind (.generated .operand 65)) none (.block (.mk [(.mk (.bind (.generated .operand 63)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 64)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 63)), (.move (.generated .operand 64))] true))))] (.call (.runtime .intNeg) [(.move (.generated .operand 65))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 66)), (.move (.generated .operand 67))] true))) (.move (.generated .binding 3))))))]))) :: + (.function (.generated .function 26) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .int (.list .int)) }, { pattern := (.bind (.generated .binding 1)), type := .int }] (.fallible (.pair .int (.list .int))) (.mk [(.mk (.bind (.generated .holder 69)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 68))]) none (.clone (.generated .binding 0)))] (.move (.generated .part 68)))))] (.matchOn (.uncons (.generated .holder 69)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 0))))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 74)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 70)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 70))))), (.mk (.bind (.generated .operand 75)) none (.block (.mk [(.mk (.bind (.generated .operand 73)) none (.block (.mk [(.mk (.bind (.generated .operand 71)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 72)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 71)), (.move (.generated .operand 72))] true))))] (.call (.runtime .intNeg) [(.move (.generated .operand 73))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 74)), (.move (.generated .operand 75))] true))) (.move (.generated .binding 3))))))]))) :: + []) } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [(([(.pair (.option (.pair .nat .int)) (.list .nat)), .int], (.pair (.option (.pair .nat .int)) (.list .nat))), false), (([(.pair (.list .int) (.list .int)), (.list .int)], (.pair (.list .int) (.list .int))), true), (([(.list .int), .int], (.list .int)), true), (([(.pair .int (.list .int)), .int], (.pair .int (.list .int))), true)] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some (.adt 0)) (.move (.generated .binding 0))), (.mk (.bind (.generated .binding 2)) (some .nat) (.call (.function 1) [(.clone (.generated .binding 1))] true))], (.cond (.call (.function 2) [(.move (.generated .binding 1)), (.copy (.generated .binding 2))] false) (.mk [] (.succeed (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))]))) (.mk [] (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.letBind (Corr.var rfl rfl) rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := []) (ce := (.call (.function 2) [(.move (.generated .binding 1)), (.copy (.generated .binding 2))] false)) (lk := []) (Corr.callOps (ts := [(.adt 0), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))]))) (lb := []) (tb := (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))]))) (Corr.fOfB (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl))))))⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 3) [(.move (.generated .binding 0))] false), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.callF (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 2)) none (.call (.function 4) [(.move (.generated .binding 0))] false))], (.call (.runtime .natEq) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false), [(1, .nat, (some 1)), (0, (.adt 0), (some 0))], rfl, rfl, + (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun3 : FunOK program krate flags 3 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 4)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.call (.function 5) [(.construct (.closure 0 6) []), (.pair (.construct (.none (.pair .nat .int)) []) (.construct .cons [(.lit (.nat 0)), (.construct .cons [(.lit (.nat 1)), (.construct .cons [(.lit (.nat 2)), (.construct .cons [(.lit (.nat 3)), (.construct .cons [(.lit (.nat 4)), (.construct .cons [(.lit (.nat 5)), (.construct .cons [(.lit (.nat 6)), (.construct .cons [(.lit (.nat 7)), (.construct .cons [(.lit (.nat 8)), (.construct .cons [(.lit (.nat 9)), (.construct (.nil .nat) [])])])])])])])])])])])), (.call (.function 7) [(.move (.generated .binding 0))] true)] false))] (.move (.generated .part 3)))))], (.matchOn (.move (.generated .holder 4)) [(.mk .none (.mk [] (.succeed (.lit (.nat 0))))), (.mk (.some (.bind (.generated .binding 1))) (.mk [(.mk (.tuple [(.bind (.generated .part 5)), .wild]) none (.copy (.generated .binding 1)))] (.succeed (.move (.generated .part 5)))))]), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option (.pair .nat .int))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.call (.function 5) [(.construct (.closure 0 6) []), (.pair (.construct (.none (.pair .nat .int)) []) (.construct .cons [(.lit (.nat 0)), (.construct .cons [(.lit (.nat 1)), (.construct .cons [(.lit (.nat 2)), (.construct .cons [(.lit (.nat 3)), (.construct .cons [(.lit (.nat 4)), (.construct .cons [(.lit (.nat 5)), (.construct .cons [(.lit (.nat 6)), (.construct .cons [(.lit (.nat 7)), (.construct .cons [(.lit (.nat 8)), (.construct .cons [(.lit (.nat 9)), (.construct (.nil .nat) [])])])])])])])])])])])), (.call (.function 7) [(.move (.generated .binding 0))] true)] false))]) (tail := (.move (.generated .part 3))) (Corr.first (ta := (.option (.pair .nat .int))) (tb := (.list .nat)) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.pair (.option (.pair .nat .int)) (.list .nat)), .int] (.pair (.option (.pair .nat .int)) (.list .nat))), (.pair (.option (.pair .nat .int)) (.list .nat)), (.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := false) (ff := false) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl)) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.lit (.nat 0)))) (Corr.mCons (Γ' := [(1, (.pair .nat .int), (some 1)), (0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.tuple [(.bind (.generated .part 5)), .wild]) none (.copy (.generated .binding 1)))]) (tail := (.succeed (.move (.generated .part 5)))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.first (ta := .nat) (tb := .int) (Corr.var rfl rfl) rfl))) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl)))) rfl rfl rfl)⟩⟩ + +theorem fun4 : FunOK program krate flags 4 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 6)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 6)) [(.mk (.adt 0 0 []) (.mk [] (.lit (.nat 0)))), (.mk (.adt 0 1 []) (.mk [] (.lit (.nat 1)))), (.mk (.adt 0 2 []) (.mk [] (.lit (.nat 2)))), (.mk (.adt 0 3 []) (.mk [] (.lit (.nat 3)))), (.mk (.adt 0 4 []) (.mk [] (.lit (.nat 4)))), (.mk (.adt 0 5 []) (.mk [] (.lit (.nat 5)))), (.mk (.adt 0 6 []) (.mk [] (.lit (.nat 6)))), (.mk (.adt 0 7 []) (.mk [] (.lit (.nat 7)))), (.mk (.adt 0 8 []) (.mk [] (.lit (.nat 8)))), (.mk (.adt 0 9 []) (.mk [] (.lit (.nat 9))))]), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.adt 0)) (U := []) (view := false) (idx := [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.nat 0))) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.nat 1))) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.nat 2))) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 3) (loads := []) (lets := []) (tail := (.lit (.nat 3))) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 4) (loads := []) (lets := []) (tail := (.lit (.nat 4))) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 5) (loads := []) (lets := []) (tail := (.lit (.nat 5))) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 6) (loads := []) (lets := []) (tail := (.lit (.nat 6))) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 7) (loads := []) (lets := []) (tail := (.lit (.nat 7))) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 8) (loads := []) (lets := []) (tail := (.lit (.nat 8))) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 9) (loads := []) (lets := []) (tail := (.lit (.nat 9))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.value rfl rfl))) rfl rfl rfl (Corr.bOfE (Corr.value rfl rfl))) rfl rfl rfl (Corr.bOfE (Corr.value rfl rfl))) rfl rfl rfl (Corr.bOfE (Corr.value rfl rfl))) rfl rfl rfl (Corr.bOfE (Corr.value rfl rfl))) rfl rfl rfl (Corr.bOfE (Corr.value rfl rfl))) rfl rfl rfl (Corr.bOfE (Corr.value rfl rfl))) rfl rfl rfl (Corr.bOfE (Corr.value rfl rfl))) rfl rfl rfl (Corr.bOfE (Corr.value rfl rfl))) rfl rfl rfl (Corr.bOfE (Corr.value rfl rfl))) rfl rfl rfl)⟩⟩ + +theorem fun5 : FunOK program krate flags 5 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 7)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 7)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 5) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 8)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 8) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]), [(2, (.list .int), (some 2)), (1, (.pair (.option (.pair .nat .int)) (.list .nat)), (some 1)), (0, (.fn [(.pair (.option (.pair .nat .int)) (.list .nat)), .int] (.pair (.option (.pair .nat .int)) (.list .nat))), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .int)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .int), (some 2)), (1, (.pair (.option (.pair .nat .int)) (.list .nat)), (some 1)), (0, (.fn [(.pair (.option (.pair .nat .int)) (.list .nat)), .int] (.pair (.option (.pair .nat .int)) (.list .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 1))) (Corr.mCons (Γ' := [(4, (.list .int), (some 4)), (3, .int, (some 3)), (2, (.list .int), (some 2)), (1, (.pair (.option (.pair .nat .int)) (.list .nat)), (some 1)), (0, (.fn [(.pair (.option (.pair .nat .int)) (.list .nat)), .int] (.pair (.option (.pair .nat .int)) (.list .nat))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 5) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 8)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 8) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.fn [(.pair (.option (.pair .nat .int)) (.list .nat)), .int] (.pair (.option (.pair .nat .int)) (.list .nat))), (.pair (.option (.pair .nat .int)) (.list .nat)), (.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 8)) (some (.fn 0)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 8) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] false)) (Corr.apply (ps := [(.pair (.option (.pair .nat .int)) (.list .nat)), .int]) (af := false) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ + +theorem fun6 : FunOK program krate flags 6 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 10)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 9))]) none (.clone (.generated .binding 0)))] (.move (.generated .part 9)))))], (.matchOn (.uncons (.generated .holder 10)) [(.mk .none (.mk [] (.move (.generated .binding 0)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.pair (.block (.mk [(.mk (.bind (.generated .holder 12)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 11)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 11)))))] (.matchOn (.move (.generated .holder 12)) [(.mk .none (.mk [] (.construct .some [(.pair (.copy (.generated .binding 2)) (.copy (.generated .binding 1)))]))), (.mk (.some (.bind (.generated .binding 4))) (.mk [(.mk (.bind (.generated .holder 16)) none (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 13))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 13))))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1)))] (.call (.runtime .compare) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false))))] (.cond (.matchOn (.move (.generated .holder 16)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.construct .some [(.pair (.copy (.generated .binding 2)) (.copy (.generated .binding 1)))])) (.mk [] (.construct .some [(.copy (.generated .binding 4))])))))]))) (.move (.generated .binding 3)))))]), [(1, .int, (some 1)), (0, (.pair (.option (.pair .nat .int)) (.list .nat)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 9))]) none (.clone (.generated .binding 0)))]) (tail := (.move (.generated .part 9))) (Corr.second (ta := (.option (.pair .nat .int))) (tb := (.list .nat)) (Corr.var rfl rfl) rfl)) (Corr.mCons (Γ' := [(1, .int, (some 1)), (0, (.pair (.option (.pair .nat .int)) (.list .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 0))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .int, (some 1)), (0, (.pair (.option (.pair .nat .int)) (.list .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.pair (.block (.mk [(.mk (.bind (.generated .holder 12)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 11)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 11)))))] (.matchOn (.move (.generated .holder 12)) [(.mk .none (.mk [] (.construct .some [(.pair (.copy (.generated .binding 2)) (.copy (.generated .binding 1)))]))), (.mk (.some (.bind (.generated .binding 4))) (.mk [(.mk (.bind (.generated .holder 16)) none (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 13))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 13))))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1)))] (.call (.runtime .compare) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false))))] (.cond (.matchOn (.move (.generated .holder 16)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.construct .some [(.pair (.copy (.generated .binding 2)) (.copy (.generated .binding 1)))])) (.mk [] (.construct .some [(.copy (.generated .binding 4))])))))]))) (.move (.generated .binding 3)))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 12)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 11)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 11)))))]) (tail := (.matchOn (.move (.generated .holder 12)) [(.mk .none (.mk [] (.construct .some [(.pair (.copy (.generated .binding 2)) (.copy (.generated .binding 1)))]))), (.mk (.some (.bind (.generated .binding 4))) (.mk [(.mk (.bind (.generated .holder 16)) none (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 13))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 13))))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1)))] (.call (.runtime .compare) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false))))] (.cond (.matchOn (.move (.generated .holder 16)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.construct .some [(.pair (.copy (.generated .binding 2)) (.copy (.generated .binding 1)))])) (.mk [] (.construct .some [(.copy (.generated .binding 4))])))))])) (Corr.matchArms (st := (.option (.pair .nat .int))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 11)), .wild]) none (.move (.generated .binding 0)))]) (tail := (.move (.generated .part 11))) (Corr.first (ta := (.option (.pair .nat .int))) (tb := (.list .nat)) (Corr.var rfl rfl) rfl)) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .int, (some 1)), (0, (.pair (.option (.pair .nat .int)) (.list .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.pair (.copy (.generated .binding 2)) (.copy (.generated .binding 1)))])) (Corr.mCons (Γ' := [(4, (.pair .nat .int), (some 4)), (3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .int, (some 1)), (0, (.pair (.option (.pair .nat .int)) (.list .nat)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 16)) none (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 13))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 13))))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1)))] (.call (.runtime .compare) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 16)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.construct .some [(.pair (.copy (.generated .binding 2)) (.copy (.generated .binding 1)))])) (.mk [] (.construct .some [(.copy (.generated .binding 4))])))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .holder 16)) none (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 13))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 13))))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1)))] (.call (.runtime .compare) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false))))]) (ce := (.matchOn (.move (.generated .holder 16)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 14)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 13))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 13))))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 13))]) none (.copy (.generated .binding 4)))]) (tail := (.move (.generated .part 13))) (Corr.second (ta := .nat) (tb := .int) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.pair .nat .int), (some 4)), (3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .int, (some 1)), (0, (.pair (.option (.pair .nat .int)) (.list .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.pair .nat .int), (some 4)), (3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .int, (some 1)), (0, (.pair (.option (.pair .nat .int)) (.list .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, (.pair .nat .int), (some 4)), (3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .int, (some 1)), (0, (.pair (.option (.pair .nat .int)) (.list .nat)), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.pair (.copy (.generated .binding 2)) (.copy (.generated .binding 1)))])) (lb := []) (tb := (.construct .some [(.copy (.generated .binding 4))])) (Corr.build (ts := [(.pair .nat .int)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lNil))) rfl) (Corr.build (ts := [(.pair .nat .int)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)))) rfl rfl rfl (Corr.build (ts := [(.pair .nat .int)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lNil))) rfl)) rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))))) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ + +theorem fun7 : FunOK program krate flags 7 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 8) [(.call (.function 9) [(.call (.function 10) [(.call (.function 11) [(.call (.function 12) [(.move (.generated .binding 0))] false)] true)] true)] true)] false), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.callF (ts := [(.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl)⟩⟩ + +theorem fun8 : FunOK program krate flags 8 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.tuple [(.bind (.generated .part 17)), .wild]) none (.call (.function 13) [(.construct (.closure 1 14) [(.move (.generated .binding 0))]), (.pair (.construct (.nil .int) []) (.call (.function 15) [] false)), (.call (.function 16) [] false)] true))], (.succeed (.move (.generated .part 17))), [(0, (.list .int), (some 0))], rfl, rfl, + (Corr.fOfB (Corr.first (ta := (.list .int)) (tb := (.list .int)) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int))), (.pair (.list .int) (.list .int)), (.list (.list .int))]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [(.list .int)]) (mask := [false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := []) (Corr.opsNil) rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := []) (Corr.opsNil) rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl))⟩⟩ + +theorem fun9 : FunOK program krate flags 9 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 17) [(.construct (.closure 2 18) []), (.construct (.nil .int) []), (.move (.generated .binding 0))] false), [(0, (.list .int), (some 0))], rfl, rfl, + (Corr.callF (ts := [(.fn [(.list .int), .int] (.list .int)), (.list .int), (.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)⟩⟩ + +theorem fun10 : FunOK program krate flags 10 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 17) [(.construct (.closure 2 19) []), (.construct (.nil .int) []), (.move (.generated .binding 0))] false), [(0, (.list .int), (some 0))], rfl, rfl, + (Corr.callF (ts := [(.fn [(.list .int), .int] (.list .int)), (.list .int), (.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := false) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)⟩⟩ + +theorem fun11 : FunOK program krate flags 11 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.tuple [(.bind (.generated .part 18)), .wild]) none (.call (.function 13) [(.construct (.closure 1 20) [(.move (.generated .binding 0))]), (.pair (.construct (.nil .int) []) (.call (.function 21) [] false)), (.call (.function 22) [] false)] true))], (.succeed (.move (.generated .part 18))), [(0, (.list .int), (some 0))], rfl, rfl, + (Corr.fOfB (Corr.first (ta := (.list .int)) (tb := (.list .int)) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int))), (.pair (.list .int) (.list .int)), (.list (.list .int))]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [(.list .int)]) (mask := [false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := []) (Corr.opsNil) rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := []) (Corr.opsNil) rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl))⟩⟩ + +theorem fun12 : FunOK program krate flags 12 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 23) [(.move (.generated .binding 0))] false), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun13 : FunOK program krate flags 13 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 19)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 19)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 13) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 20)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 20) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]), [(2, (.list (.list .int)), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.fn [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int))), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.list .int))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.list .int)), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.fn [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list (.list .int)), (some 4)), (3, (.list .int), (some 3)), (2, (.list (.list .int)), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.fn [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 13) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 20)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 20) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int))), (.pair (.list .int) (.list .int)), (.list (.list .int))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 20)) (some (.fn 1)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 20) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true)) (Corr.apply (ps := [(.pair (.list .int) (.list .int)), (.list .int)]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ + +theorem fun14 : FunOK program krate flags 14 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 22)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 21))]) none (.clone (.generated .binding 1)))] (.move (.generated .part 21)))))], (.matchOn (.uncons (.generated .holder 22)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 23)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 23))))), (.mk (.bind (.generated .operand 29)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 27)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 24)), .wild]) none (.call (.function 24) [(.construct (.closure 3 25) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 24)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 25))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] true))), (.construct (.nil .int) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 28)), (.move (.generated .operand 29))] false))) (.move (.generated .binding 4))))))]), [(2, (.list .int), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.list .int), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .int)) (U := []) (view := true) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 21))]) none (.clone (.generated .binding 1)))]) (tail := (.move (.generated .part 21))) (Corr.second (ta := (.list .int)) (tb := (.list .int)) (Corr.var rfl rfl) rfl)) (Corr.mCons (Γ' := [(2, (.list .int), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.list .int), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list .int), (some 4)), (3, .int, (some 3)), (2, (.list .int), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.list .int), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 23)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 23))))), (.mk (.bind (.generated .operand 29)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 27)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 24)), .wild]) none (.call (.function 24) [(.construct (.closure 3 25) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 24)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 25))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] true))), (.construct (.nil .int) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 28)), (.move (.generated .operand 29))] false))) (.move (.generated .binding 4))))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 23)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 23))))), (.mk (.bind (.generated .operand 29)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 27)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 24)), .wild]) none (.call (.function 24) [(.construct (.closure 3 25) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 24)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 25))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] true))), (.construct (.nil .int) [])]))]) (tail := (.call (.runtime .appendList) [(.move (.generated .operand 28)), (.move (.generated .operand 29))] false)) (Corr.prim (ts := [(.list .int), (.list .int)]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 23)), .wild]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 23))) (Corr.first (ta := (.list .int)) (tb := (.list .int)) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 27)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 24)), .wild]) none (.call (.function 24) [(.construct (.closure 3 25) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 24)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 25))] true))))]) (tail := (.call (.runtime .intSub) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] true)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 25)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 24)), .wild]) none (.call (.function 24) [(.construct (.closure 3 25) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 24)))))]) (tail := (.call (.runtime .intNeg) [(.move (.generated .operand 25))] true)) (Corr.prim (ts := [.int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 24)), .wild]) none (.call (.function 24) [(.construct (.closure 3 25) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))]) (tail := (.move (.generated .part 24))) (Corr.first (ta := .int) (tb := (.list .int)) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.pair .int (.list .int)), .int] (.pair .int (.list .int))), (.pair .int (.list .int)), (.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl)) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))))) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ + +theorem fun15 : FunOK program krate flags 15 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct .cons [(.lit (.int (-6))), (.construct .cons [(.lit (.int (-2))), (.construct .cons [(.lit (.int (-5))), (.construct .cons [(.lit (.int (-5))), (.construct .cons [(.lit (.int (-4))), (.construct .cons [(.lit (.int (-5))), (.construct .cons [(.lit (.int (-6))), (.construct .cons [(.lit (.int (-3))), (.construct .cons [(.lit (.int (-7))), (.construct .cons [(.lit (.int (-6))), (.construct (.nil .int) [])])])])])])])])])])]), [], rfl, rfl, + (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)⟩⟩ + +theorem fun16 : FunOK program krate flags 16 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])])])])])]), (.construct (.nil (.list .int)) [])])])])])])])])])])]), [], rfl, rfl, + (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)⟩⟩ + +theorem fun17 : FunOK program krate flags 17 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 30)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 30)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 17) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 31)) (some (.fn 2)) (.move (.generated .binding 0)))] (.apply (.generated .callee 31) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]), [(2, (.list .int), (some 2)), (1, (.list .int), (some 1)), (0, (.fn [(.list .int), .int] (.list .int)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .int)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .int), (some 2)), (1, (.list .int), (some 1)), (0, (.fn [(.list .int), .int] (.list .int)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list .int), (some 4)), (3, .int, (some 3)), (2, (.list .int), (some 2)), (1, (.list .int), (some 1)), (0, (.fn [(.list .int), .int] (.list .int)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 17) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 31)) (some (.fn 2)) (.move (.generated .binding 0)))] (.apply (.generated .callee 31) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.list .int), .int] (.list .int)), (.list .int), (.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 31)) (some (.fn 2)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 31) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true)) (Corr.apply (ps := [(.list .int), .int]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ + +theorem fun18 : FunOK program krate flags 18 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 41)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 42)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .binding 2)) (some .int) (.block (.mk [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 33)) none (.lit (.int 4))), (.mk (.bind (.generated .operand 34)) none (.lit (.int 0)))] (.call (.runtime .intQuot) [(.move (.generated .operand 32)), (.move (.generated .operand 33)), (.move (.generated .operand 34))] true)))), (.mk (.bind (.generated .holder 37)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 36)) none (.lit (.int 0)))] (.call (.runtime .compare) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false))))] (.cond (.matchOn (.move (.generated .holder 37)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.lit (.int 0))) (.mk [(.mk (.bind (.generated .holder 40)) none (.block (.mk [(.mk (.bind (.generated .operand 38)) none (.lit (.int 127))), (.mk (.bind (.generated .operand 39)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 38)), (.move (.generated .operand 39))] false))))] (.cond (.matchOn (.move (.generated .holder 40)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.lit (.int 127))) (.mk [] (.copy (.generated .binding 2)))))))), (.construct (.nil .int) [])]))], (.succeed (.call (.runtime .appendList) [(.move (.generated .operand 41)), (.move (.generated .operand 42))] false)), [(1, .int, (some 1)), (0, (.list .int), (some 0))], rfl, rfl, + (Corr.fOfB (Corr.prim (ts := [(.list .int), (.list .int)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .binding 2)) (some .int) (.block (.mk [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 33)) none (.lit (.int 4))), (.mk (.bind (.generated .operand 34)) none (.lit (.int 0)))] (.call (.runtime .intQuot) [(.move (.generated .operand 32)), (.move (.generated .operand 33)), (.move (.generated .operand 34))] true)))), (.mk (.bind (.generated .holder 37)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 36)) none (.lit (.int 0)))] (.call (.runtime .compare) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 37)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.lit (.int 0))) (.mk [(.mk (.bind (.generated .holder 40)) none (.block (.mk [(.mk (.bind (.generated .operand 38)) none (.lit (.int 127))), (.mk (.bind (.generated .operand 39)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 38)), (.move (.generated .operand 39))] false))))] (.cond (.matchOn (.move (.generated .holder 40)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.lit (.int 127))) (.mk [] (.copy (.generated .binding 2))))))) (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 33)) none (.lit (.int 4))), (.mk (.bind (.generated .operand 34)) none (.lit (.int 0)))]) (tail := (.call (.runtime .intQuot) [(.move (.generated .operand 32)), (.move (.generated .operand 33)), (.move (.generated .operand 34))] true)) (Corr.prim (ts := [.int, .int, .int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := [(.mk (.bind (.generated .holder 37)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 36)) none (.lit (.int 0)))] (.call (.runtime .compare) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false))))]) (ce := (.matchOn (.move (.generated .holder 37)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 35)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 36)) none (.lit (.int 0)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(2, .int, (some 2)), (1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, .int, (some 2)), (1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(2, .int, (some 2)), (1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.int 0))) (lb := [(.mk (.bind (.generated .holder 40)) none (.block (.mk [(.mk (.bind (.generated .operand 38)) none (.lit (.int 127))), (.mk (.bind (.generated .operand 39)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 38)), (.move (.generated .operand 39))] false))))]) (tb := (.cond (.matchOn (.move (.generated .holder 40)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.lit (.int 127))) (.mk [] (.copy (.generated .binding 2))))) (Corr.bOfE (Corr.value rfl rfl)) (Corr.cond (lc := [(.mk (.bind (.generated .holder 40)) none (.block (.mk [(.mk (.bind (.generated .operand 38)) none (.lit (.int 127))), (.mk (.bind (.generated .operand 39)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 38)), (.move (.generated .operand 39))] false))))]) (ce := (.matchOn (.move (.generated .holder 40)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 38)) none (.lit (.int 127))), (.mk (.bind (.generated .operand 39)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 38)), (.move (.generated .operand 39))] false)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(2, .int, (some 2)), (1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, .int, (some 2)), (1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(2, .int, (some 2)), (1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.int 127))) (lb := []) (tb := (.copy (.generated .binding 2))) (Corr.bOfE (Corr.value rfl rfl)) (Corr.bOfE (Corr.var rfl rfl)))))))) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl))⟩⟩ + +theorem fun19 : FunOK program krate flags 19 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 46)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 47)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .holder 45)) none (.block (.mk [(.mk (.bind (.generated .operand 43)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 44)) none (.lit (.int 0)))] (.call (.runtime .compare) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] false))))] (.cond (.matchOn (.move (.generated .holder 45)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.lit (.int 0))) (.mk [] (.copy (.generated .binding 1)))))), (.construct (.nil .int) [])]))], (.call (.runtime .appendList) [(.move (.generated .operand 46)), (.move (.generated .operand 47))] false), [(1, .int, (some 1)), (0, (.list .int), (some 0))], rfl, rfl, + (Corr.prim (ts := [(.list .int), (.list .int)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 45)) none (.block (.mk [(.mk (.bind (.generated .operand 43)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 44)) none (.lit (.int 0)))] (.call (.runtime .compare) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 45)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.lit (.int 0))) (.mk [] (.copy (.generated .binding 1))))) (Corr.cond (lc := [(.mk (.bind (.generated .holder 45)) none (.block (.mk [(.mk (.bind (.generated .operand 43)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 44)) none (.lit (.int 0)))] (.call (.runtime .compare) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] false))))]) (ce := (.matchOn (.move (.generated .holder 45)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 43)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 44)) none (.lit (.int 0)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] false)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.int 0))) (lb := []) (tb := (.copy (.generated .binding 1))) (Corr.bOfE (Corr.value rfl rfl)) (Corr.bOfE (Corr.var rfl rfl))))) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun20 : FunOK program krate flags 20 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 49)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 48))]) none (.clone (.generated .binding 1)))] (.move (.generated .part 48)))))], (.matchOn (.uncons (.generated .holder 49)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 55)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 50)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 50))))), (.mk (.bind (.generated .operand 56)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 53)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 54)) none (.block (.mk [(.mk (.bind (.generated .operand 52)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 51)), .wild]) none (.call (.function 24) [(.construct (.closure 3 26) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 51)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 52))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] true))), (.construct (.nil .int) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 55)), (.move (.generated .operand 56))] false))) (.move (.generated .binding 4))))))]), [(2, (.list .int), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.list .int), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .int)) (U := []) (view := true) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 48))]) none (.clone (.generated .binding 1)))]) (tail := (.move (.generated .part 48))) (Corr.second (ta := (.list .int)) (tb := (.list .int)) (Corr.var rfl rfl) rfl)) (Corr.mCons (Γ' := [(2, (.list .int), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.list .int), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list .int), (some 4)), (3, .int, (some 3)), (2, (.list .int), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.list .int), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 55)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 50)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 50))))), (.mk (.bind (.generated .operand 56)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 53)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 54)) none (.block (.mk [(.mk (.bind (.generated .operand 52)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 51)), .wild]) none (.call (.function 24) [(.construct (.closure 3 26) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 51)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 52))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] true))), (.construct (.nil .int) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 55)), (.move (.generated .operand 56))] false))) (.move (.generated .binding 4))))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 55)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 50)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 50))))), (.mk (.bind (.generated .operand 56)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 53)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 54)) none (.block (.mk [(.mk (.bind (.generated .operand 52)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 51)), .wild]) none (.call (.function 24) [(.construct (.closure 3 26) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 51)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 52))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] true))), (.construct (.nil .int) [])]))]) (tail := (.call (.runtime .appendList) [(.move (.generated .operand 55)), (.move (.generated .operand 56))] false)) (Corr.prim (ts := [(.list .int), (.list .int)]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 50)), .wild]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 50))) (Corr.first (ta := (.list .int)) (tb := (.list .int)) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 53)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 54)) none (.block (.mk [(.mk (.bind (.generated .operand 52)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 51)), .wild]) none (.call (.function 24) [(.construct (.closure 3 26) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 51)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 52))] true))))]) (tail := (.call (.runtime .intSub) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] true)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 52)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 51)), .wild]) none (.call (.function 24) [(.construct (.closure 3 26) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 51)))))]) (tail := (.call (.runtime .intNeg) [(.move (.generated .operand 52))] true)) (Corr.prim (ts := [.int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 51)), .wild]) none (.call (.function 24) [(.construct (.closure 3 26) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))]) (tail := (.move (.generated .part 51))) (Corr.first (ta := .int) (tb := (.list .int)) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.pair .int (.list .int)), .int] (.pair .int (.list .int))), (.pair .int (.list .int)), (.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl)) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))))) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ + +theorem fun21 : FunOK program krate flags 21 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int (-2))), (.construct .cons [(.lit (.int 3)), (.construct .cons [(.lit (.int (-5))), (.construct .cons [(.lit (.int 2)), (.construct (.nil .int) [])])])])])])])])])])])])]), [], rfl, rfl, + (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)⟩⟩ + +theorem fun22 : FunOK program krate flags 22 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct .cons [(.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 4)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 3)), (.construct .cons [(.lit (.int (-2))), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int (-1))), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int (-3))), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int (-1))), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int (-2))), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int (-4))), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 3)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]), (.construct (.nil (.list .int)) [])])])])])])])])])])])])]), [], rfl, rfl, + (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)⟩⟩ + +theorem fun23 : FunOK program krate flags 23 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 57)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 57)) [(.mk (.adt 0 0 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 1 []) (.mk [] (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 2 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 3 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 4 []) (.mk [] (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 5 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 6 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 7 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 8 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])]))), (.mk (.adt 0 9 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])])))]), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.adt 0)) (U := []) (view := false) (idx := [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 3) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 4) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 5) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 6) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 7) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 8) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 9) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])])])])])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun24 : FunOK program krate flags 24 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 58)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 58)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 24) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 59)) (some (.fn 3)) (.move (.generated .binding 0)))] (.apply (.generated .callee 59) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]), [(2, (.list .int), (some 2)), (1, (.pair .int (.list .int)), (some 1)), (0, (.fn [(.pair .int (.list .int)), .int] (.pair .int (.list .int))), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .int)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .int), (some 2)), (1, (.pair .int (.list .int)), (some 1)), (0, (.fn [(.pair .int (.list .int)), .int] (.pair .int (.list .int))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list .int), (some 4)), (3, .int, (some 3)), (2, (.list .int), (some 2)), (1, (.pair .int (.list .int)), (some 1)), (0, (.fn [(.pair .int (.list .int)), .int] (.pair .int (.list .int))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 24) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 59)) (some (.fn 3)) (.move (.generated .binding 0)))] (.apply (.generated .callee 59) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.pair .int (.list .int)), .int] (.pair .int (.list .int))), (.pair .int (.list .int)), (.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 59)) (some (.fn 3)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 59) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true)) (Corr.apply (ps := [(.pair .int (.list .int)), .int]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ + +theorem fun25 : FunOK program krate flags 25 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 61)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 60))]) none (.clone (.generated .binding 0)))] (.move (.generated .part 60)))))], (.matchOn (.uncons (.generated .holder 61)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 0))))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 66)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 62)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 62))))), (.mk (.bind (.generated .operand 67)) none (.block (.mk [(.mk (.bind (.generated .operand 65)) none (.block (.mk [(.mk (.bind (.generated .operand 63)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 64)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 63)), (.move (.generated .operand 64))] true))))] (.call (.runtime .intNeg) [(.move (.generated .operand 65))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 66)), (.move (.generated .operand 67))] true))) (.move (.generated .binding 3))))))]), [(1, .int, (some 1)), (0, (.pair .int (.list .int)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .int)) (U := []) (view := true) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 60))]) none (.clone (.generated .binding 0)))]) (tail := (.move (.generated .part 60))) (Corr.second (ta := .int) (tb := (.list .int)) (Corr.var rfl rfl) rfl)) (Corr.mCons (Γ' := [(1, .int, (some 1)), (0, (.pair .int (.list .int)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 0)))) (Corr.mCons (Γ' := [(3, (.list .int), (some 3)), (2, .int, (some 2)), (1, .int, (some 1)), (0, (.pair .int (.list .int)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 66)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 62)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 62))))), (.mk (.bind (.generated .operand 67)) none (.block (.mk [(.mk (.bind (.generated .operand 65)) none (.block (.mk [(.mk (.bind (.generated .operand 63)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 64)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 63)), (.move (.generated .operand 64))] true))))] (.call (.runtime .intNeg) [(.move (.generated .operand 65))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 66)), (.move (.generated .operand 67))] true))) (.move (.generated .binding 3))))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 66)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 62)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 62))))), (.mk (.bind (.generated .operand 67)) none (.block (.mk [(.mk (.bind (.generated .operand 65)) none (.block (.mk [(.mk (.bind (.generated .operand 63)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 64)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 63)), (.move (.generated .operand 64))] true))))] (.call (.runtime .intNeg) [(.move (.generated .operand 65))] true))))]) (tail := (.call (.runtime .intSub) [(.move (.generated .operand 66)), (.move (.generated .operand 67))] true)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 62)), .wild]) none (.move (.generated .binding 0)))]) (tail := (.move (.generated .part 62))) (Corr.first (ta := .int) (tb := (.list .int)) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 65)) none (.block (.mk [(.mk (.bind (.generated .operand 63)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 64)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 63)), (.move (.generated .operand 64))] true))))]) (tail := (.call (.runtime .intNeg) [(.move (.generated .operand 65))] true)) (Corr.prim (ts := [.int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 63)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 64)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .intMul) [(.move (.generated .operand 63)), (.move (.generated .operand 64))] true)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))))) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ + +theorem fun26 : FunOK program krate flags 26 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 69)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 68))]) none (.clone (.generated .binding 0)))] (.move (.generated .part 68)))))], (.matchOn (.uncons (.generated .holder 69)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 0))))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 74)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 70)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 70))))), (.mk (.bind (.generated .operand 75)) none (.block (.mk [(.mk (.bind (.generated .operand 73)) none (.block (.mk [(.mk (.bind (.generated .operand 71)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 72)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 71)), (.move (.generated .operand 72))] true))))] (.call (.runtime .intNeg) [(.move (.generated .operand 73))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 74)), (.move (.generated .operand 75))] true))) (.move (.generated .binding 3))))))]), [(1, .int, (some 1)), (0, (.pair .int (.list .int)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .int)) (U := []) (view := true) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 68))]) none (.clone (.generated .binding 0)))]) (tail := (.move (.generated .part 68))) (Corr.second (ta := .int) (tb := (.list .int)) (Corr.var rfl rfl) rfl)) (Corr.mCons (Γ' := [(1, .int, (some 1)), (0, (.pair .int (.list .int)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 0)))) (Corr.mCons (Γ' := [(3, (.list .int), (some 3)), (2, .int, (some 2)), (1, .int, (some 1)), (0, (.pair .int (.list .int)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 74)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 70)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 70))))), (.mk (.bind (.generated .operand 75)) none (.block (.mk [(.mk (.bind (.generated .operand 73)) none (.block (.mk [(.mk (.bind (.generated .operand 71)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 72)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 71)), (.move (.generated .operand 72))] true))))] (.call (.runtime .intNeg) [(.move (.generated .operand 73))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 74)), (.move (.generated .operand 75))] true))) (.move (.generated .binding 3))))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 74)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 70)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 70))))), (.mk (.bind (.generated .operand 75)) none (.block (.mk [(.mk (.bind (.generated .operand 73)) none (.block (.mk [(.mk (.bind (.generated .operand 71)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 72)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 71)), (.move (.generated .operand 72))] true))))] (.call (.runtime .intNeg) [(.move (.generated .operand 73))] true))))]) (tail := (.call (.runtime .intSub) [(.move (.generated .operand 74)), (.move (.generated .operand 75))] true)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 70)), .wild]) none (.move (.generated .binding 0)))]) (tail := (.move (.generated .part 70))) (Corr.first (ta := .int) (tb := (.list .int)) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 73)) none (.block (.mk [(.mk (.bind (.generated .operand 71)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 72)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 71)), (.move (.generated .operand 72))] true))))]) (tail := (.call (.runtime .intNeg) [(.move (.generated .operand 73))] true)) (Corr.prim (ts := [.int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 71)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 72)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .intMul) [(.move (.generated .operand 71)), (.move (.generated .operand 72))] true)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))))) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | 3 => exact fun3 + | 4 => exact fun4 + | 5 => exact fun5 + | 6 => exact fun6 + | 7 => exact fun7 + | 8 => exact fun8 + | 9 => exact fun9 + | 10 => exact fun10 + | 11 => exact fun11 + | 12 => exact fun12 + | 13 => exact fun13 + | 14 => exact fun14 + | 15 => exact fun15 + | 16 => exact fun16 + | 17 => exact fun17 + | 18 => exact fun18 + | 19 => exact fun19 + | 20 => exact fun20 + | 21 => exact fun21 + | 22 => exact fun22 + | 23 => exact fun23 + | 24 => exact fun24 + | 25 => exact fun25 + | 26 => exact fun26 + | _ + 27 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.RustStd diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R2.lean b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R2.lean new file mode 100644 index 000000000..2a764731d --- /dev/null +++ b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R2.lean @@ -0,0 +1,217 @@ +import LexLeanPreservation.Core +import LexLeanPreservation.Values +import LexLeanPreservation.Primitives +import LexLeanPreservation.Fixed +import LexLeanPreservation.Keys +import LexLeanPreservation.Templates +import LexLeanPreservation.Validate +import Models.Flows +import Models.Glyphs +import Models.Ledger +import Models.Main +import Models.Pipeline +import Models.Policy +import Models.Recognizer +import Models.Session +import Models.Triage +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +set_option linter.unusedVariables false +namespace LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2 + +def __prog : _root_.LexLeanTarget.TargetSyntax.Program := + { adts := [{ constructors := [[], [], [], [], [], [], [], []] }, + { constructors := [[], [], []] }], functions := [ + { parameters := [0], types := [(.adt 0)], result := (.result .nat (.pair .bool .bool)), + body := (.«let» 1 (.adt 0) (.var 0) (.cond (.call 1 [(.var 1)]) (.«let» 2 .nat (.call 2 [(.var 1)]) (.build .ok (.result .nat (.pair .bool .bool)) [(.var 2)])) (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])]))) }, + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.call 3 [(.var 0)]) }, + { parameters := [0], types := [(.adt 0)], result := .nat, + body := (.call 4 [(.var 0)]) }, + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.«match» .bool (.var 0) [(.arm (.adt 0) [] (.build .false .bool [])), (.arm (.adt 1) [] (.build .true .bool [])), (.arm (.adt 2) [] (.build .true .bool [])), (.arm (.adt 3) [] (.build .true .bool [])), (.arm (.adt 4) [] (.build .true .bool [])), (.arm (.adt 5) [] (.build .true .bool [])), (.arm (.adt 6) [] (.build .true .bool [])), (.arm (.adt 7) [] (.build .true .bool []))]) }, + { parameters := [0], types := [(.adt 0)], result := .nat, + body := (.«let» 1 (.adt 1) (.call 5 [(.var 0)]) (.«let» 2 .nat (.call 6 [(.var 1)]) (.var 2))) }, + { parameters := [0], types := [(.adt 0)], result := (.adt 1), + body := (.call 7 [(.var 0)]) }, + { parameters := [0], types := [(.adt 1)], result := .nat, + body := (.call 8 [(.var 0)]) }, + { parameters := [0], types := [(.adt 0)], result := (.adt 1), + body := (.«match» (.adt 1) (.first (.call 9 [(.closure 10 []), (.build .pair (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))) [(.build .none (.option (.pair (.adt 1) .int)) []), (.build .cons (.list (.adt 1)) [(.build (.adt 0) (.adt 1) []), (.build .cons (.list (.adt 1)) [(.build (.adt 1) (.adt 1) []), (.build .cons (.list (.adt 1)) [(.build (.adt 2) (.adt 1) []), (.build .nil (.list (.adt 1)) [])])])])]), (.call 11 [(.var 0)])])) [(.arm .none [] (.build (.adt 0) (.adt 1) [])), (.arm .some [1] (.first (.var 1)))]) }, + { parameters := [0], types := [(.adt 1)], result := .nat, + body := (.cond (.call 12 [(.var 0)]) (.value .nat (.nat 2)) (.cond (.call 13 [(.var 0)]) (.value .nat (.nat 1)) (.value .nat (.nat 0)))) }, + { parameters := [0, 1, 2], types := [(.fn [(.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), .int] (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1)))), (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), (.list .int)], result := (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), + body := (.«match» (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 9 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, + { parameters := [0, 1], types := [(.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), .int], result := (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), + body := (.«match» (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))) (.second (.var 0)) [(.arm .nil [] (.var 0)), (.arm .cons [2, 3] (.build .pair (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))) [(.«match» (.option (.pair (.adt 1) .int)) (.first (.var 0)) [(.arm .none [] (.build .some (.option (.pair (.adt 1) .int)) [(.build .pair (.pair (.adt 1) .int) [(.var 2), (.var 1)])])), (.arm .some [4] (.cond (.«match» .bool (.prim .compare [(.second (.var 4)), (.var 1)]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.build .some (.option (.pair (.adt 1) .int)) [(.build .pair (.pair (.adt 1) .int) [(.var 2), (.var 1)])]) (.build .some (.option (.pair (.adt 1) .int)) [(.var 4)])))]), (.var 3)]))]) }, + { parameters := [0], types := [(.adt 0)], result := (.list .int), + body := (.«let» 1 (.list .int) (.call 14 [(.var 0)]) (.first (.call 15 [(.closure 16 [(.var 1)]), (.build .pair (.pair (.list .int) (.list .int)) [(.build .nil (.list .int) []), (.call 17 [])]), (.call 18 [])]))) }, + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.«match» .bool (.var 0) [(.arm (.adt 0) [] (.build .false .bool [])), (.arm (.adt 1) [] (.build .false .bool [])), (.arm (.adt 2) [] (.build .true .bool []))]) }, + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.«match» .bool (.var 0) [(.arm (.adt 0) [] (.build .false .bool [])), (.arm (.adt 1) [] (.build .true .bool [])), (.arm (.adt 2) [] (.build .false .bool []))]) }, + { parameters := [0], types := [(.adt 0)], result := (.list .int), + body := (.call 19 [(.var 0)]) }, + { parameters := [0, 1, 2], types := [(.fn [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int))), (.pair (.list .int) (.list .int)), (.list (.list .int))], result := (.pair (.list .int) (.list .int)), + body := (.«match» (.pair (.list .int) (.list .int)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 15 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, + { parameters := [0, 1, 2], types := [(.list .int), (.pair (.list .int) (.list .int)), (.list .int)], result := (.pair (.list .int) (.list .int)), + body := (.«match» (.pair (.list .int) (.list .int)) (.second (.var 1)) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.build .pair (.pair (.list .int) (.list .int)) [(.prim .append [(.first (.var 1)), (.build .cons (.list .int) [(.prim .intSub [(.var 3), (.prim .intNeg [(.first (.call 20 [(.closure 21 []), (.build .pair (.pair .int (.list .int)) [(.value .int (.int 0)), (.var 0)]), (.var 2)]))])]), (.build .nil (.list .int) [])])]), (.var 4)]))]) }, + { parameters := [], types := [], result := (.list .int), + body := (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int (-1))), (.build .nil (.list .int) [])])])]) }, + { parameters := [], types := [], result := (.list (.list .int)), + body := (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int (-2))), (.build .cons (.list .int) [(.value .int (.int (-2))), (.build .cons (.list .int) [(.value .int (.int (-4))), (.build .nil (.list .int) [])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 5)), (.build .nil (.list .int) [])])])]), (.build .nil (.list (.list .int)) [])])])]) }, + { parameters := [0], types := [(.adt 0)], result := (.list .int), + body := (.«match» (.list .int) (.var 0) [(.arm (.adt 0) [] (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])), (.arm (.adt 1) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])), (.arm (.adt 2) [] (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])), (.arm (.adt 3) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])), (.arm (.adt 4) [] (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])), (.arm (.adt 5) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])), (.arm (.adt 6) [] (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])), (.arm (.adt 7) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])]))]) }, + { parameters := [0, 1, 2], types := [(.fn [(.pair .int (.list .int)), .int] (.pair .int (.list .int))), (.pair .int (.list .int)), (.list .int)], result := (.pair .int (.list .int)), + body := (.«match» (.pair .int (.list .int)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 20 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, + { parameters := [0, 1], types := [(.pair .int (.list .int)), .int], result := (.pair .int (.list .int)), + body := (.«match» (.pair .int (.list .int)) (.second (.var 0)) [(.arm .nil [] (.var 0)), (.arm .cons [2, 3] (.build .pair (.pair .int (.list .int)) [(.prim .intSub [(.first (.var 0)), (.prim .intNeg [(.prim .intMul [(.var 1), (.var 2)])])]), (.var 3)]))]) }] } + +def __enc_0 : (Models.Triage.Presentation) -> _root_.LexLeanTarget.TargetSyntax.Value + | Models.Triage.Presentation.p0 => _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [] + | Models.Triage.Presentation.p1 => _root_.LexLeanTarget.TargetSyntax.Value.adt 1 [] + | Models.Triage.Presentation.p2 => _root_.LexLeanTarget.TargetSyntax.Value.adt 2 [] + | Models.Triage.Presentation.p3 => _root_.LexLeanTarget.TargetSyntax.Value.adt 3 [] + | Models.Triage.Presentation.p4 => _root_.LexLeanTarget.TargetSyntax.Value.adt 4 [] + | Models.Triage.Presentation.p5 => _root_.LexLeanTarget.TargetSyntax.Value.adt 5 [] + | Models.Triage.Presentation.p6 => _root_.LexLeanTarget.TargetSyntax.Value.adt 6 [] + | Models.Triage.Presentation.p7 => _root_.LexLeanTarget.TargetSyntax.Value.adt 7 [] + +def __enc_1 : (Models.Triage.Level) -> _root_.LexLeanTarget.TargetSyntax.Value + | Models.Triage.Level.routine => _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [] + | Models.Triage.Level.urgent => _root_.LexLeanTarget.TargetSyntax.Value.adt 1 [] + | Models.Triage.Level.emergency => _root_.LexLeanTarget.TargetSyntax.Value.adt 2 [] + +def __fits_3 (presentation : (Models.Triage.Presentation)) : Bool := + (Bool.true && (match presentation with | Models.Triage.Presentation.p0 => (Bool.true && Bool.true) | Models.Triage.Presentation.p1 => (Bool.true && Bool.true) | Models.Triage.Presentation.p2 => (Bool.true && Bool.true) | Models.Triage.Presentation.p3 => (Bool.true && Bool.true) | Models.Triage.Presentation.p4 => (Bool.true && Bool.true) | Models.Triage.Presentation.p5 => (Bool.true && Bool.true) | Models.Triage.Presentation.p6 => (Bool.true && Bool.true) | Models.Triage.Presentation.p7 => (Bool.true && Bool.true))) + +theorem __rel_3 (presentation : (Models.Triage.Presentation)) : _root_.LexLeanPreservation.FunRel __prog 3 [(__enc_0 presentation)] (_root_.LexLeanPreservation.Rel (__fits_3 presentation) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Models.Triage.hasSymptom presentation))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV __enc_0 (fun (__a : (Models.Triage.Presentation)) => (match __a with | Models.Triage.Presentation.p0 => (Bool.true && Bool.true) | Models.Triage.Presentation.p1 => (Bool.true && Bool.true) | Models.Triage.Presentation.p2 => (Bool.true && Bool.true) | Models.Triage.Presentation.p3 => (Bool.true && Bool.true) | Models.Triage.Presentation.p4 => (Bool.true && Bool.true) | Models.Triage.Presentation.p5 => (Bool.true && Bool.true) | Models.Triage.Presentation.p6 => (Bool.true && Bool.true) | Models.Triage.Presentation.p7 => (Bool.true && Bool.true))) (fun (__a : (Models.Triage.Presentation)) => _root_.LexLeanTarget.TargetSyntax.Value.bool (match __a with | Models.Triage.Presentation.p0 => Bool.false | Models.Triage.Presentation.p1 => Bool.true | Models.Triage.Presentation.p2 => Bool.true | Models.Triage.Presentation.p3 => Bool.true | Models.Triage.Presentation.p4 => Bool.true | Models.Triage.Presentation.p5 => Bool.true | Models.Triage.Presentation.p6 => Bool.true | Models.Triage.Presentation.p7 => Bool.true)) presentation (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (Models.Triage.Presentation)) _ => match __a with | Models.Triage.Presentation.p0 => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)) | Models.Triage.Presentation.p1 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true))) | Models.Triage.Presentation.p2 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)))) | Models.Triage.Presentation.p3 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true))))) | Models.Triage.Presentation.p4 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)))))) | Models.Triage.Presentation.p5 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true))))))) | Models.Triage.Presentation.p6 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)))))))) | Models.Triage.Presentation.p7 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true))))))))))) + +def __fits_1 (presentation : (Models.Triage.Presentation)) : Bool := + ((Bool.true && Bool.true) && (__fits_3 (presentation))) + +attribute [local irreducible] Models.Triage.hasSymptom in +theorem __rel_1 (presentation : (Models.Triage.Presentation)) : _root_.LexLeanPreservation.FunRel __prog 1 [(__enc_0 presentation)] (_root_.LexLeanPreservation.Rel (__fits_1 presentation) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Models.Triage.symptomaticCheck presentation))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_3 (presentation))) + +def __fits_10 (_ybest : (Prod (Option (Prod (Models.Triage.Level) Int)) (List (Models.Triage.Level)))) (_yscore : Int) : Bool := + (Bool.true && (match (_ybest).2 with | List.nil => Bool.true | List.cons _ylabel _ylabels => (((Bool.true && (match (_ybest).1 with | Option.none => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.some _yleader => ((Bool.true && (Bool.true && Bool.true)) && (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((Bool.true && Bool.true) && Bool.true))))) && (Bool.true && Bool.true)) && Bool.true))) + +theorem __rel_10 (_ybest : (Prod (Option (Prod (Models.Triage.Level) Int)) (List (Models.Triage.Level)))) (_yscore : Int) : _root_.LexLeanPreservation.FunRel __prog 10 [((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair __enc_1 _root_.LexLeanTarget.TargetSyntax.Value.int)) (_root_.LexLeanPreservation.encList __enc_1)) _ybest), (_root_.LexLeanTarget.TargetSyntax.Value.int _yscore)] (_root_.LexLeanPreservation.Rel (__fits_10 _ybest _yscore) ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair __enc_1 _root_.LexLeanTarget.TargetSyntax.Value.int)) (_root_.LexLeanPreservation.encList __enc_1)) ((match (_ybest).2 with | List.nil => _ybest | List.cons _ylabel _ylabels => ((match (_ybest).1 with | Option.none => (Option.some ((_ylabel, _yscore)) : (Option (Prod (Models.Triage.Level) Int))) | Option.some _yleader => (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then (Option.some ((_ylabel, _yscore)) : (Option (Prod (Models.Triage.Level) Int))) else (Option.some (_yleader) : (Option (Prod (Models.Triage.Level) Int))))), _ylabels))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encList __enc_1) (fun (__a : (List (Models.Triage.Level))) => (match __a with | List.nil => Bool.true | List.cons _ylabel _ylabels => (((Bool.true && (match (_ybest).1 with | Option.none => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.some _yleader => ((Bool.true && (Bool.true && Bool.true)) && (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((Bool.true && Bool.true) && Bool.true))))) && (Bool.true && Bool.true)) && Bool.true))) (fun (__a : (List (Models.Triage.Level))) => (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair __enc_1 _root_.LexLeanTarget.TargetSyntax.Value.int)) (_root_.LexLeanPreservation.encList __enc_1)) (match __a with | List.nil => _ybest | List.cons _ylabel _ylabels => ((match (_ybest).1 with | Option.none => (Option.some ((_ylabel, _yscore)) : (Option (Prod (Models.Triage.Level) Int))) | Option.some _yleader => (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then (Option.some ((_ylabel, _yscore)) : (Option (Prod (Models.Triage.Level) Int))) else (Option.some (_yleader) : (Option (Prod (Models.Triage.Level) Int))))), _ylabels))) (_ybest).2 (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (fun (__a : (List (Models.Triage.Level))) _ => match __a with | List.nil => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | List.cons _ylabel _ylabels => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair __enc_1 _root_.LexLeanTarget.TargetSyntax.Value.int)) (fun (__a : (Option (Prod (Models.Triage.Level) Int))) => (match __a with | Option.none => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.some _yleader => ((Bool.true && (Bool.true && Bool.true)) && (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((Bool.true && Bool.true) && Bool.true))))) (fun (__a : (Option (Prod (Models.Triage.Level) Int))) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair __enc_1 _root_.LexLeanTarget.TargetSyntax.Value.int)) (match __a with | Option.none => (Option.some ((_ylabel, _yscore)) : (Option (Prod (Models.Triage.Level) Int))) | Option.some _yleader => (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then (Option.some ((_ylabel, _yscore)) : (Option (Prod (Models.Triage.Level) Int))) else (Option.some (_yleader) : (Option (Prod (Models.Triage.Level) Int)))))) (_ybest).1 (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (fun (__a : (Option (Prod (Models.Triage.Level) Int))) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.some _yleader => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((Bool.true && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair __enc_1 _root_.LexLeanTarget.TargetSyntax.Value.int)) (if __b then (Option.some ((_ylabel, _yscore)) : (Option (Prod (Models.Triage.Level) Int))) else (Option.some (_yleader) : (Option (Prod (Models.Triage.Level) Int))))) (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) (_root_.LexLeanPreservation.conv_lessThan (_root_.LexLeanPreservation.keySpec_int (_root_.LexLeanCollections.Key.compare : Int -> Int -> Ordering) (fun _ _ => rfl)) _root_.LexLeanCollections.lessThan (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.lessThan, __h]) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some))))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))))) + +def __fits_19 (presentation : (Models.Triage.Presentation)) : Bool := + (Bool.true && (match presentation with | Models.Triage.Presentation.p0 => ((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Triage.Presentation.p1 => ((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Triage.Presentation.p2 => ((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Triage.Presentation.p3 => ((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Triage.Presentation.p4 => ((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Triage.Presentation.p5 => ((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Triage.Presentation.p6 => ((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Triage.Presentation.p7 => ((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true))) + +theorem __rel_19 (presentation : (Models.Triage.Presentation)) : _root_.LexLeanPreservation.FunRel __prog 19 [(__enc_0 presentation)] (_root_.LexLeanPreservation.Rel (__fits_19 presentation) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (Models.Triage.features presentation))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV __enc_0 (fun (__a : (Models.Triage.Presentation)) => (match __a with | Models.Triage.Presentation.p0 => ((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Triage.Presentation.p1 => ((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Triage.Presentation.p2 => ((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Triage.Presentation.p3 => ((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Triage.Presentation.p4 => ((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Triage.Presentation.p5 => ((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Triage.Presentation.p6 => ((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) | Models.Triage.Presentation.p7 => ((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true))) (fun (__a : (Models.Triage.Presentation)) => (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (match __a with | Models.Triage.Presentation.p0 => ((0 : Int) :: ((0 : Int) :: ((0 : Int) :: ([] : List Int)))) | Models.Triage.Presentation.p1 => ((1 : Int) :: ((0 : Int) :: ((0 : Int) :: ([] : List Int)))) | Models.Triage.Presentation.p2 => ((0 : Int) :: ((1 : Int) :: ((0 : Int) :: ([] : List Int)))) | Models.Triage.Presentation.p3 => ((1 : Int) :: ((1 : Int) :: ((0 : Int) :: ([] : List Int)))) | Models.Triage.Presentation.p4 => ((0 : Int) :: ((0 : Int) :: ((1 : Int) :: ([] : List Int)))) | Models.Triage.Presentation.p5 => ((1 : Int) :: ((0 : Int) :: ((1 : Int) :: ([] : List Int)))) | Models.Triage.Presentation.p6 => ((0 : Int) :: ((1 : Int) :: ((1 : Int) :: ([] : List Int)))) | Models.Triage.Presentation.p7 => ((1 : Int) :: ((1 : Int) :: ((1 : Int) :: ([] : List Int)))))) presentation (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (Models.Triage.Presentation)) _ => match __a with | Models.Triage.Presentation.p0 => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons)) | Models.Triage.Presentation.p1 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons))) | Models.Triage.Presentation.p2 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons)))) | Models.Triage.Presentation.p3 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons))))) | Models.Triage.Presentation.p4 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons)))))) | Models.Triage.Presentation.p5 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons))))))) | Models.Triage.Presentation.p6 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons)))))))) | Models.Triage.Presentation.p7 => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons))))))))))) + +def __fits_14 (presentation : (Models.Triage.Presentation)) : Bool := + ((Bool.true && Bool.true) && (__fits_19 (presentation))) + +attribute [local irreducible] Models.Triage.features in +theorem __rel_14 (presentation : (Models.Triage.Presentation)) : _root_.LexLeanPreservation.FunRel __prog 14 [(__enc_0 presentation)] (_root_.LexLeanPreservation.Rel (__fits_14 presentation) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (Models.Triage.TriageScore.features presentation))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_19 (presentation))) + +def __fits_21 (_ysum : (Prod Int (List Int))) (_yweight : Int) : Bool := + (Bool.true && (match (_ysum).2 with | List.nil => Bool.true | List.cons _yvalue _yrest => ((((Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int))) && Bool.true) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int))) && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int))) && (Bool.true && Bool.true)) && Bool.true))) + +theorem __rel_21 (_ysum : (Prod Int (List Int))) (_yweight : Int) : _root_.LexLeanPreservation.FunRel __prog 21 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) _ysum), (_root_.LexLeanTarget.TargetSyntax.Value.int _yweight)] (_root_.LexLeanPreservation.Rel (__fits_21 _ysum _yweight) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) ((match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (fun (__a : (List Int)) => (match __a with | List.nil => Bool.true | List.cons _yvalue _yrest => ((((Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int))) && Bool.true) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int))) && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int))) && (Bool.true && Bool.true)) && Bool.true))) (fun (__a : (List Int)) => (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (match __a with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest))) (_ysum).2 (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (fun (__a : (List Int)) _ => match __a with | List.nil => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | List.cons _yvalue _yrest => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_intMul _yweight _yvalue)) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_intNeg (_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_intSub (_ysum).1 (_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))))) + +def __fits_16 (_yvalues : (List Int)) (_yacc : (Prod (List Int) (List Int))) (_yrow : (List Int)) : Bool := + (Bool.true && (match (_yacc).2 with | List.nil => Bool.true | List.cons _ybias _ybiases => ((((Bool.true && (((((Bool.true && (((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Prod Int (List Int))) (__p1 : Int) => __fits_21 __p0 __p1) ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow))) && Bool.true) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int))) && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int))) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (Bool.true && Bool.true)) && Bool.true))) + +theorem __rel_16 (_yvalues : (List Int)) (_yacc : (Prod (List Int) (List Int))) (_yrow : (List Int)) : _root_.LexLeanPreservation.FunRel __prog 16 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yvalues), ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) _yacc), ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yrow)] (_root_.LexLeanPreservation.Rel (__fits_16 _yvalues _yacc _yrow) ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) ((match (_yacc).2 with | List.nil => _yacc | List.cons _ybias _ybiases => ((_root_.LexLeanRuntime.append ((_yacc).1) (((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int))) : (List Int)), _ybiases))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (fun (__a : (List Int)) => (match __a with | List.nil => Bool.true | List.cons _ybias _ybiases => ((((Bool.true && (((((Bool.true && (((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Prod Int (List Int))) (__p1 : Int) => __fits_21 __p0 __p1) ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow))) && Bool.true) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int))) && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int))) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (Bool.true && Bool.true)) && Bool.true))) (fun (__a : (List Int)) => (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (match __a with | List.nil => _yacc | List.cons _ybias _ybiases => ((_root_.LexLeanRuntime.append ((_yacc).1) (((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int))) : (List Int)), _ybiases))) (_yacc).2 (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (fun (__a : (List Int)) _ => match __a with | List.nil => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | List.cons _ybias _ybiases => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.int) (es := (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int))) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.int) (fun _ => rfl) ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (fun (__p0 : (Prod Int (List Int))) (__p1 : Int) => __fits_21 __p0 __p1) 21 [] (fun (__p0 : (Prod Int (List Int))) (__p1 : Int) => __rel_21 __p0 __p1) (p := __prog) (fi := 20) (ta := .int) (ts := (.pair .int (.list .int))) rfl (((0 : Int), _yvalues)) (_yrow)))) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_intNeg ((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_intSub _ybias (_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.int) (_yacc).1 ((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))))) + +def __fits_17 : Bool := + ((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) + +theorem __rel_17 : _root_.LexLeanPreservation.FunRel __prog 17 [] (_root_.LexLeanPreservation.Rel (__fits_17) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (Models.Triage.triageBias))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) + +def __fits_18 : Bool := + ((((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) + +theorem __rel_18 : _root_.LexLeanPreservation.FunRel __prog 18 [] (_root_.LexLeanPreservation.Rel (__fits_18) ((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (Models.Triage.triageWeights))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) + +def __fits_11 (presentation : (Models.Triage.Presentation)) : Bool := + (((Bool.true && Bool.true) && (__fits_14 (presentation))) && (let _yvalues : (List Int) := (Models.Triage.TriageScore.features (presentation)); (((Bool.true && Bool.true) && ((((Bool.true && Bool.true) && ((Bool.true && (__fits_17)) && Bool.true)) && Bool.true) && ((Bool.true && (__fits_18)) && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Prod (List Int) (List Int))) (__p1 : (List Int)) => __fits_16 (_yvalues) __p0 __p1) ((fun (_yacc : (Prod (List Int) (List Int))) (_yrow : (List Int)) => (match (_yacc).2 with | List.nil => _yacc | List.cons _ybias _ybiases => ((_root_.LexLeanRuntime.append ((_yacc).1) (((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int))) : (List Int)), _ybiases)))) ((([] : List Int), (Models.Triage.triageBias))) ((Models.Triage.triageWeights)))))) + +attribute [local irreducible] Models.Triage.TriageScore.features Models.Triage.triageBias Models.Triage.triageWeights in +theorem __rel_11 (presentation : (Models.Triage.Presentation)) : _root_.LexLeanPreservation.FunRel __prog 11 [(__enc_0 presentation)] (_root_.LexLeanPreservation.Rel (__fits_11 presentation) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (Models.Triage.TriageScore.scores presentation))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (let _yvalues : (List Int) := (Models.Triage.TriageScore.features (presentation)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_14 (presentation))) (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call _root_.LexLeanPreservation.convL_nil (__rel_17)) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call _root_.LexLeanPreservation.convL_nil (__rel_18)) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (es := (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int))) (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int)) (fun _ => rfl) ((fun (_yacc : (Prod (List Int) (List Int))) (_yrow : (List Int)) => (match (_yacc).2 with | List.nil => _yacc | List.cons _ybias _ybiases => ((_root_.LexLeanRuntime.append ((_yacc).1) (((_root_.LexLeanRuntime.subtract (_ybias) ((_root_.LexLeanRuntime.negate (((_root_.LexLeanCollections.listFold ((fun (_ysum : (Prod Int (List Int))) (_yweight : Int) => (match (_ysum).2 with | List.nil => _ysum | List.cons _yvalue _yrest => ((_root_.LexLeanRuntime.subtract ((_ysum).1) ((_root_.LexLeanRuntime.negate ((_root_.LexLeanRuntime.multiply (_yweight) (_yvalue) : Int)) : Int)) : Int), _yrest)))) (((0 : Int), _yvalues)) (_yrow) : (Prod Int (List Int)))).1) : Int)) : Int) :: ([] : List Int))) : (List Int)), _ybiases)))) (fun (__p0 : (Prod (List Int) (List Int))) (__p1 : (List Int)) => __fits_16 (_yvalues) __p0 __p1) 16 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) _yvalues)] (fun (__p0 : (Prod (List Int) (List Int))) (__p1 : (List Int)) => __rel_16 (_yvalues) __p0 __p1) (p := __prog) (fi := 15) (ta := (.list .int)) (ts := (.pair (.list .int) (.list .int))) rfl ((([] : List Int), (Models.Triage.triageBias))) ((Models.Triage.triageWeights)))))) + +def __fits_7 (presentation : (Models.Triage.Presentation)) : Bool := + (((Bool.true && ((((Bool.true && Bool.true) && ((((Bool.true && Bool.true) && ((((Bool.true && Bool.true) && ((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((Bool.true && Bool.true) && (__fits_11 (presentation))) && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Prod (Option (Prod (Models.Triage.Level) Int)) (List (Models.Triage.Level)))) (__p1 : Int) => __fits_10 __p0 __p1) ((fun (_ybest : (Prod (Option (Prod (Models.Triage.Level) Int)) (List (Models.Triage.Level)))) (_yscore : Int) => (match (_ybest).2 with | List.nil => _ybest | List.cons _ylabel _ylabels => ((match (_ybest).1 with | Option.none => (Option.some ((_ylabel, _yscore)) : (Option (Prod (Models.Triage.Level) Int))) | Option.some _yleader => (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then (Option.some ((_ylabel, _yscore)) : (Option (Prod (Models.Triage.Level) Int))) else (Option.some (_yleader) : (Option (Prod (Models.Triage.Level) Int))))), _ylabels)))) (((Option.none : (Option (Prod (Models.Triage.Level) Int))), ((Models.Triage.Level.routine : (Models.Triage.Level)) :: ((Models.Triage.Level.urgent : (Models.Triage.Level)) :: ((Models.Triage.Level.emergency : (Models.Triage.Level)) :: ([] : List (Models.Triage.Level))))))) ((Models.Triage.TriageScore.scores (presentation))))) && (match ((_root_.LexLeanCollections.listFold ((fun (_ybest : (Prod (Option (Prod (Models.Triage.Level) Int)) (List (Models.Triage.Level)))) (_yscore : Int) => (match (_ybest).2 with | List.nil => _ybest | List.cons _ylabel _ylabels => ((match (_ybest).1 with | Option.none => (Option.some ((_ylabel, _yscore)) : (Option (Prod (Models.Triage.Level) Int))) | Option.some _yleader => (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then (Option.some ((_ylabel, _yscore)) : (Option (Prod (Models.Triage.Level) Int))) else (Option.some (_yleader) : (Option (Prod (Models.Triage.Level) Int))))), _ylabels)))) (((Option.none : (Option (Prod (Models.Triage.Level) Int))), ((Models.Triage.Level.routine : (Models.Triage.Level)) :: ((Models.Triage.Level.urgent : (Models.Triage.Level)) :: ((Models.Triage.Level.emergency : (Models.Triage.Level)) :: ([] : List (Models.Triage.Level))))))) ((Models.Triage.TriageScore.scores (presentation))) : (Prod (Option (Prod (Models.Triage.Level) Int)) (List (Models.Triage.Level))))).1 with | Option.none => (Bool.true && Bool.true) | Option.some _ywinner => Bool.true)) + +attribute [local irreducible] Models.Triage.TriageScore.scores in +theorem __rel_7 (presentation : (Models.Triage.Presentation)) : _root_.LexLeanPreservation.FunRel __prog 7 [(__enc_0 presentation)] (_root_.LexLeanPreservation.Rel (__fits_7 presentation) (__enc_1 (Models.Triage.TriageScore presentation))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair __enc_1 _root_.LexLeanTarget.TargetSyntax.Value.int)) (fun (__a : (Option (Prod (Models.Triage.Level) Int))) => (match __a with | Option.none => (Bool.true && Bool.true) | Option.some _ywinner => Bool.true)) (fun (__a : (Option (Prod (Models.Triage.Level) Int))) => __enc_1 (match __a with | Option.none => (Models.Triage.Level.routine : (Models.Triage.Level)) | Option.some _ywinner => (_ywinner).1)) ((_root_.LexLeanCollections.listFold ((fun (_ybest : (Prod (Option (Prod (Models.Triage.Level) Int)) (List (Models.Triage.Level)))) (_yscore : Int) => (match (_ybest).2 with | List.nil => _ybest | List.cons _ylabel _ylabels => ((match (_ybest).1 with | Option.none => (Option.some ((_ylabel, _yscore)) : (Option (Prod (Models.Triage.Level) Int))) | Option.some _yleader => (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then (Option.some ((_ylabel, _yscore)) : (Option (Prod (Models.Triage.Level) Int))) else (Option.some (_yleader) : (Option (Prod (Models.Triage.Level) Int))))), _ylabels)))) (((Option.none : (Option (Prod (Models.Triage.Level) Int))), ((Models.Triage.Level.routine : (Models.Triage.Level)) :: ((Models.Triage.Level.urgent : (Models.Triage.Level)) :: ((Models.Triage.Level.emergency : (Models.Triage.Level)) :: ([] : List (Models.Triage.Level))))))) ((Models.Triage.TriageScore.scores (presentation))) : (Prod (Option (Prod (Models.Triage.Level) Int)) (List (Models.Triage.Level))))).1 (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_11 (presentation))) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.int) (es := (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair __enc_1 _root_.LexLeanTarget.TargetSyntax.Value.int)) (_root_.LexLeanPreservation.encList __enc_1))) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.int) (fun _ => rfl) ((fun (_ybest : (Prod (Option (Prod (Models.Triage.Level) Int)) (List (Models.Triage.Level)))) (_yscore : Int) => (match (_ybest).2 with | List.nil => _ybest | List.cons _ylabel _ylabels => ((match (_ybest).1 with | Option.none => (Option.some ((_ylabel, _yscore)) : (Option (Prod (Models.Triage.Level) Int))) | Option.some _yleader => (if (_root_.LexLeanCollections.lessThan ((_yleader).2) (_yscore) : Bool) then (Option.some ((_ylabel, _yscore)) : (Option (Prod (Models.Triage.Level) Int))) else (Option.some (_yleader) : (Option (Prod (Models.Triage.Level) Int))))), _ylabels)))) (fun (__p0 : (Prod (Option (Prod (Models.Triage.Level) Int)) (List (Models.Triage.Level)))) (__p1 : Int) => __fits_10 __p0 __p1) 10 [] (fun (__p0 : (Prod (Option (Prod (Models.Triage.Level) Int)) (List (Models.Triage.Level)))) (__p1 : Int) => __rel_10 __p0 __p1) (p := __prog) (fi := 9) (ta := .int) (ts := (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1)))) rfl (((Option.none : (Option (Prod (Models.Triage.Level) Int))), ((Models.Triage.Level.routine : (Models.Triage.Level)) :: ((Models.Triage.Level.urgent : (Models.Triage.Level)) :: ((Models.Triage.Level.emergency : (Models.Triage.Level)) :: ([] : List (Models.Triage.Level))))))) ((Models.Triage.TriageScore.scores (presentation)))))) (fun (__a : (Option (Prod (Models.Triage.Level) Int))) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt)) | Option.some _ywinner => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)))))) + +def __fits_5 (_yinput : (Models.Triage.Presentation)) : Bool := + ((Bool.true && Bool.true) && (__fits_7 (_yinput))) + +attribute [local irreducible] Models.Triage.TriageScore in +theorem __rel_5 (_yinput : (Models.Triage.Presentation)) : _root_.LexLeanPreservation.FunRel __prog 5 [(__enc_0 _yinput)] (_root_.LexLeanPreservation.Rel (__fits_5 _yinput) (__enc_1 (Models.Triage.TriageModel _yinput))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_7 (_yinput))) + +def __fits_12 (level : (Models.Triage.Level)) : Bool := + (Bool.true && (match level with | Models.Triage.Level.routine => (Bool.true && Bool.true) | Models.Triage.Level.urgent => (Bool.true && Bool.true) | Models.Triage.Level.emergency => (Bool.true && Bool.true))) + +theorem __rel_12 (level : (Models.Triage.Level)) : _root_.LexLeanPreservation.FunRel __prog 12 [(__enc_1 level)] (_root_.LexLeanPreservation.Rel (__fits_12 level) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Models.Triage.isEmergency level))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV __enc_1 (fun (__a : (Models.Triage.Level)) => (match __a with | Models.Triage.Level.routine => (Bool.true && Bool.true) | Models.Triage.Level.urgent => (Bool.true && Bool.true) | Models.Triage.Level.emergency => (Bool.true && Bool.true))) (fun (__a : (Models.Triage.Level)) => _root_.LexLeanTarget.TargetSyntax.Value.bool (match __a with | Models.Triage.Level.routine => Bool.false | Models.Triage.Level.urgent => Bool.false | Models.Triage.Level.emergency => Bool.true)) level (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (Models.Triage.Level)) _ => match __a with | Models.Triage.Level.routine => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)) | Models.Triage.Level.urgent => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) | Models.Triage.Level.emergency => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)))))) + +def __fits_13 (level : (Models.Triage.Level)) : Bool := + (Bool.true && (match level with | Models.Triage.Level.routine => (Bool.true && Bool.true) | Models.Triage.Level.urgent => (Bool.true && Bool.true) | Models.Triage.Level.emergency => (Bool.true && Bool.true))) + +theorem __rel_13 (level : (Models.Triage.Level)) : _root_.LexLeanPreservation.FunRel __prog 13 [(__enc_1 level)] (_root_.LexLeanPreservation.Rel (__fits_13 level) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Models.Policy.isUrgent level))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV __enc_1 (fun (__a : (Models.Triage.Level)) => (match __a with | Models.Triage.Level.routine => (Bool.true && Bool.true) | Models.Triage.Level.urgent => (Bool.true && Bool.true) | Models.Triage.Level.emergency => (Bool.true && Bool.true))) (fun (__a : (Models.Triage.Level)) => _root_.LexLeanTarget.TargetSyntax.Value.bool (match __a with | Models.Triage.Level.routine => Bool.false | Models.Triage.Level.urgent => Bool.true | Models.Triage.Level.emergency => Bool.false)) level (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (Models.Triage.Level)) _ => match __a with | Models.Triage.Level.routine => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)) | Models.Triage.Level.urgent => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true))) | Models.Triage.Level.emergency => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))))) + +def __fits_8 (level : (Models.Triage.Level)) : Bool := + (((Bool.true && Bool.true) && (__fits_12 (level))) && (if (Models.Triage.isEmergency (level)) then Bool.true else (((Bool.true && Bool.true) && (__fits_13 (level))) && (if (Models.Policy.isUrgent (level)) then Bool.true else Bool.true)))) + +attribute [local irreducible] Models.Policy.isUrgent Models.Triage.isEmergency in +theorem __rel_8 (level : (Models.Triage.Level)) : _root_.LexLeanPreservation.FunRel __prog 8 [(__enc_1 level)] (_root_.LexLeanPreservation.Rel (__fits_8 level) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Models.Policy.PolicyRules level))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else (((Bool.true && Bool.true) && (__fits_13 (level))) && (if (Models.Policy.isUrgent (level)) then Bool.true else Bool.true)))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (2 : Nat) else (if (Models.Policy.isUrgent (level)) then (1 : Nat) else (0 : Nat)))) (Models.Triage.isEmergency (level)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_12 (level))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (1 : Nat) else (0 : Nat))) (Models.Policy.isUrgent (level)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_13 (level))) (fun _ => _root_.LexLeanPreservation.conv_value) (fun _ => _root_.LexLeanPreservation.conv_value)))) + +def __fits_6 (_yinput : (Models.Triage.Level)) : Bool := + ((Bool.true && Bool.true) && (__fits_8 (_yinput))) + +attribute [local irreducible] Models.Policy.PolicyRules in +theorem __rel_6 (_yinput : (Models.Triage.Level)) : _root_.LexLeanPreservation.FunRel __prog 6 [(__enc_1 _yinput)] (_root_.LexLeanPreservation.Rel (__fits_6 _yinput) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Models.Policy.PolicyModel _yinput))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_8 (_yinput))) + +def __fits_4 (presentation : (Models.Triage.Presentation)) : Bool := + (((Bool.true && Bool.true) && (__fits_5 (presentation))) && (let _ystage1 : (Models.Triage.Level) := (Models.Triage.TriageModel (presentation)); (((Bool.true && Bool.true) && (__fits_6 (_ystage1))) && (let _ystage2 : Nat := (Models.Policy.PolicyModel (_ystage1)); Bool.true)))) + +attribute [local irreducible] Models.Policy.PolicyModel Models.Triage.TriageModel in +theorem __rel_4 (presentation : (Models.Triage.Presentation)) : _root_.LexLeanPreservation.FunRel __prog 4 [(__enc_0 presentation)] (_root_.LexLeanPreservation.Rel (__fits_4 presentation) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Models.Pipeline.TriagePipeline presentation))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (let _ystage1 : (Models.Triage.Level) := (Models.Triage.TriageModel (presentation)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_5 (presentation))) (let _ystage2 : Nat := (Models.Policy.PolicyModel (_ystage1)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_6 (_ystage1))) (_root_.LexLeanPreservation.conv_var rfl))) + +def __fits_2 (_yinput : (Models.Triage.Presentation)) : Bool := + ((Bool.true && Bool.true) && (__fits_4 (_yinput))) + +attribute [local irreducible] Models.Pipeline.TriagePipeline in +theorem __rel_2 (_yinput : (Models.Triage.Presentation)) : _root_.LexLeanPreservation.FunRel __prog 2 [(__enc_0 _yinput)] (_root_.LexLeanPreservation.Rel (__fits_2 _yinput) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Models.Pipeline.PipelineModel _yinput))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_4 (_yinput))) + +def __fits_0 (presentation : (Models.Triage.Presentation)) : Bool := + (Bool.true && (let _ychecked1_input : (Models.Triage.Presentation) := presentation; (((Bool.true && Bool.true) && (__fits_1 (_ychecked1_input))) && (if (Models.Triage.symptomaticCheck (_ychecked1_input)) then (((Bool.true && Bool.true) && (__fits_2 (_ychecked1_input))) && (let _ychecked1_output : Nat := (Models.Pipeline.PipelineModel (_ychecked1_input)); ((Bool.true && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) + +attribute [local irreducible] Models.Pipeline.PipelineModel Models.Triage.symptomaticCheck in +theorem __rel_0 (presentation : (Models.Triage.Presentation)) : _root_.LexLeanPreservation.FunRel __prog 0 [(__enc_0 presentation)] (_root_.LexLeanPreservation.Rel (__fits_0 presentation) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (Models.Main.respond presentation))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (let _ychecked1_input : (Models.Triage.Presentation) := presentation; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && (__fits_2 (_ychecked1_input))) && (let _ychecked1_output : Nat := (Models.Pipeline.PipelineModel (_ychecked1_input)); ((Bool.true && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (let _ychecked1_output : Nat := (Models.Pipeline.PipelineModel (_ychecked1_input)); (Except.ok (_ychecked1_output) : (Except (Prod Bool Bool) Nat))) else (Except.error (((Bool.false, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)))) (Models.Triage.symptomaticCheck (_ychecked1_input)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_1 (_ychecked1_input))) (fun _ => (let _ychecked1_output : Nat := (Models.Pipeline.PipelineModel (_ychecked1_input)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_2 (_ychecked1_input))) (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)))) + +def denote (presentation : (Models.Triage.Presentation)) : _root_.LexLeanPreservation.Obs := + _root_.cond (__fits_0 presentation) (_root_.LexLeanPreservation.Obs.value (((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (Models.Main.respond presentation)))) _root_.LexLeanPreservation.Obs.overflow + +theorem root (presentation : (Models.Triage.Presentation)) : _root_.LexLeanPreservation.RunConv __prog 0 [(__enc_0 presentation)] (_root_.LexLeanPreservation.Rel (__fits_0 presentation) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (Models.Main.respond presentation))) := + _root_.LexLeanPreservation.run_of_funRel (__rel_0 presentation) + +end LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2 diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R2/Compose/RustStd.lex.tex b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R2/Compose/RustStd.lex.tex new file mode 100644 index 000000000..0a7bf0f9e --- /dev/null +++ b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R2/Compose/RustStd.lex.tex @@ -0,0 +1,621 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2, + LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.Compose.RustStd.__wt_0 : @16 := @392 { + all: [LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.Compose.RustStd.__wt_0], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.Compose.RustStd.__wt_1 : @399 := @481 { + all: [LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.Compose.RustStd.__wt_1], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.Compose.RustStd.root : @1214 := @1215 { + all: [LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.RustStd.program +@1 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.RustStd.krate +@2 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.RustStd.flags +@3 := Models.Triage.Presentation +@4 := #0 +@5 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.__enc_0 +@6 := @5 @4 +@7 := LexLeanPreservation.Rust.WT +@8 := LexLeanTarget.TargetSyntax.Ty.adt +@9 := 0 +@10 := @8 @9 +@11 := @7 @0 +@12 := @11 @1 +@13 := @12 @2 +@15 := @13 @6 @10 +@16 := (__v : @3) -> @15 +@17 := fun (__v : @3) => @15 +@18 := LexLeanTarget.TargetSyntax.Value +@19 := LexLeanTarget.TargetSyntax.Ty +@20 := List.nil.{0} +@21 := List.cons.{0} +@22 := @20 @18 +@23 := @20 @19 +@24 := LexLeanTarget.TargetSyntax.Program +@25 := LexLeanPreservation.Rust.RCrate +@26 := LexLeanPreservation.Rust.Flags +@27 := LexLeanPreservation.Rust.WTL +@28 := #2 +@29 := @27 @28 +@30 := #1 +@37 := {p : @24} -> {c : @25} -> {A : @26} -> @29 @30 @4 @22 @23 +@39 := LexLeanPreservation.Rust.wtl_nil @0 +@40 := @27 @0 +@46 := {c : @25} -> {A : @26} -> @40 @30 @4 @22 @23 +@47 := @39 @1 +@48 := @40 @1 +@52 := {A : @26} -> @48 @4 @22 @23 +@53 := @47 @2 +@54 := @48 @2 +@55 := @54 @22 +@56 := @55 @23 +@57 := Nat +@58 := List.{0} +@59 := @58 @18 +@60 := @58 @19 +@61 := Eq.{1} +@62 := Option.{0} +@63 := @62 @60 +@64 := @61 @63 +@65 := LexLeanPreservation.Rust.adtFields +@66 := #6 +@67 := @65 @66 +@68 := #3 +@71 := @64 (@67 @68 @28) +@72 := Option.some.{0} +@73 := @72 @60 +@74 := @73 @4 +@75 := @71 @74 +@76 := #7 +@78 := @27 @76 @66 +@79 := #5 +@82 := @78 @79 @28 @30 +@83 := #8 +@86 := @7 @83 @76 @66 +@87 := LexLeanTarget.TargetSyntax.Value.adt +@88 := #4 +@90 := @87 @88 @68 +@91 := @86 @90 +@92 := @8 @79 +@102 := {p : @24} -> + {c : @25} -> + {A : @26} -> + {i : @57} -> {k : @57} -> {fs : @59} -> {tys : @60} -> (h : @75) -> (hf : @82) -> @91 @92 +@104 := LexLeanPreservation.Rust.wt_adt @0 +@105 := @65 @0 +@109 := @64 (@105 @68 @28) @74 +@113 := @40 @66 @79 @28 @30 +@125 := {c : @25} -> + {A : @26} -> + {i : @57} -> + {k : @57} -> {fs : @59} -> {tys : @60} -> (h : @109) -> (hf : @113) -> @11 @76 @66 @90 @92 +@126 := @104 @1 +@129 := @48 @79 @28 @30 +@139 := {A : @26} -> + {i : @57} -> + {k : @57} -> {fs : @59} -> {tys : @60} -> (h : @109) -> (hf : @129) -> @12 @66 @90 @92 +@140 := @126 @2 +@142 := @54 @28 @30 +@143 := @13 @90 +@150 := {i : @57} -> {k : @57} -> {fs : @59} -> {tys : @60} -> (h : @109) -> (hf : @142) -> @143 @92 +@151 := @140 @9 +@152 := @105 @9 +@161 := {k : @57} -> + {fs : @59} -> {tys : @60} -> (h : @64 (@152 @28) @74) -> (hf : @142) -> @143 @10 +@162 := @151 @9 +@163 := @152 @9 +@164 := @64 @163 +@165 := @164 @74 +@166 := @87 @9 +@168 := @13 (@166 @68) +@173 := {fs : @59} -> {tys : @60} -> (h : @165) -> (hf : @142) -> @168 @10 +@174 := @162 @22 +@175 := @55 @30 +@177 := @13 (@166 @22) +@178 := @177 @10 +@181 := {tys : @60} -> (h : @165) -> (hf : @175) -> @178 +@182 := @174 @23 +@183 := @73 @23 +@186 := (h : @164 @183) -> (hf : @56) -> @178 +@187 := Eq.refl.{1} +@188 := @187 @63 +@191 := @182 (@188 @163) @53 +@192 := 1 +@193 := @151 @192 +@194 := @152 @192 +@195 := @64 @194 +@196 := @195 @74 +@197 := @87 @192 +@199 := @13 (@197 @68) +@204 := {fs : @59} -> {tys : @60} -> (h : @196) -> (hf : @142) -> @199 @10 +@205 := @193 @22 +@207 := @13 (@197 @22) +@208 := @207 @10 +@211 := {tys : @60} -> (h : @196) -> (hf : @175) -> @208 +@212 := @205 @23 +@215 := (h : @195 @183) -> (hf : @56) -> @208 +@218 := @212 (@188 @194) @53 +@219 := 2 +@220 := @151 @219 +@221 := @152 @219 +@222 := @64 @221 +@223 := @222 @74 +@224 := @87 @219 +@226 := @13 (@224 @68) +@231 := {fs : @59} -> {tys : @60} -> (h : @223) -> (hf : @142) -> @226 @10 +@232 := @220 @22 +@234 := @13 (@224 @22) +@235 := @234 @10 +@238 := {tys : @60} -> (h : @223) -> (hf : @175) -> @235 +@239 := @232 @23 +@242 := (h : @222 @183) -> (hf : @56) -> @235 +@245 := @239 (@188 @221) @53 +@246 := 3 +@247 := @151 @246 +@248 := @152 @246 +@249 := @64 @248 +@250 := @249 @74 +@251 := @87 @246 +@258 := {fs : @59} -> {tys : @60} -> (h : @250) -> (hf : @142) -> @13 (@251 @68) @10 +@259 := @247 @22 +@262 := @13 (@251 @22) @10 +@265 := {tys : @60} -> (h : @250) -> (hf : @175) -> @262 +@266 := @259 @23 +@269 := (h : @249 @183) -> (hf : @56) -> @262 +@272 := @266 (@188 @248) @53 +@273 := 4 +@274 := @151 @273 +@275 := @152 @273 +@276 := @64 @275 +@277 := @276 @74 +@278 := @87 @273 +@285 := {fs : @59} -> {tys : @60} -> (h : @277) -> (hf : @142) -> @13 (@278 @68) @10 +@286 := @274 @22 +@289 := @13 (@278 @22) @10 +@292 := {tys : @60} -> (h : @277) -> (hf : @175) -> @289 +@293 := @286 @23 +@296 := (h : @276 @183) -> (hf : @56) -> @289 +@299 := @293 (@188 @275) @53 +@300 := 5 +@301 := @151 @300 +@302 := @152 @300 +@303 := @64 @302 +@304 := @303 @74 +@305 := @87 @300 +@312 := {fs : @59} -> {tys : @60} -> (h : @304) -> (hf : @142) -> @13 (@305 @68) @10 +@313 := @301 @22 +@316 := @13 (@305 @22) @10 +@319 := {tys : @60} -> (h : @304) -> (hf : @175) -> @316 +@320 := @313 @23 +@323 := (h : @303 @183) -> (hf : @56) -> @316 +@326 := @320 (@188 @302) @53 +@327 := 6 +@328 := @151 @327 +@329 := @152 @327 +@330 := @64 @329 +@331 := @330 @74 +@332 := @87 @327 +@339 := {fs : @59} -> {tys : @60} -> (h : @331) -> (hf : @142) -> @13 (@332 @68) @10 +@340 := @328 @22 +@343 := @13 (@332 @22) @10 +@346 := {tys : @60} -> (h : @331) -> (hf : @175) -> @343 +@347 := @340 @23 +@350 := (h : @330 @183) -> (hf : @56) -> @343 +@353 := @347 (@188 @329) @53 +@354 := 7 +@355 := @151 @354 +@356 := @152 @354 +@357 := @64 @356 +@358 := @357 @74 +@359 := @87 @354 +@366 := {fs : @59} -> {tys : @60} -> (h : @358) -> (hf : @142) -> @13 (@359 @68) @10 +@367 := @355 @22 +@370 := @13 (@359 @22) @10 +@373 := {tys : @60} -> (h : @358) -> (hf : @175) -> @370 +@374 := @367 @23 +@377 := (h : @357 @183) -> (hf : @56) -> @370 +@380 := @374 (@188 @356) @53 +@392 := fun (__v : @3) => + Models.Triage.Presentation.casesOn.{0} @17 @4 @191 @218 @245 @272 @299 @326 @353 @380 +@393 := Models.Triage.Level +@395 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.__enc_1 @4 +@396 := @8 @192 +@398 := @13 @395 @396 +@399 := (__v : @393) -> @398 +@400 := fun (__v : @393) => @398 +@401 := @140 @192 +@402 := @105 @192 +@411 := {k : @57} -> + {fs : @59} -> {tys : @60} -> (h : @64 (@402 @28) @74) -> (hf : @142) -> @143 @396 +@412 := @401 @9 +@413 := @402 @9 +@414 := @64 @413 +@415 := @414 @74 +@420 := {fs : @59} -> {tys : @60} -> (h : @415) -> (hf : @142) -> @168 @396 +@421 := @412 @22 +@422 := @177 @396 +@425 := {tys : @60} -> (h : @415) -> (hf : @175) -> @422 +@426 := @421 @23 +@429 := (h : @414 @183) -> (hf : @56) -> @422 +@432 := @426 (@188 @413) @53 +@433 := @401 @192 +@434 := @402 @192 +@435 := @64 @434 +@436 := @435 @74 +@441 := {fs : @59} -> {tys : @60} -> (h : @436) -> (hf : @142) -> @199 @396 +@442 := @433 @22 +@443 := @207 @396 +@446 := {tys : @60} -> (h : @436) -> (hf : @175) -> @443 +@447 := @442 @23 +@450 := (h : @435 @183) -> (hf : @56) -> @443 +@453 := @447 (@188 @434) @53 +@454 := @401 @219 +@455 := @402 @219 +@456 := @64 @455 +@457 := @456 @74 +@462 := {fs : @59} -> {tys : @60} -> (h : @457) -> (hf : @142) -> @226 @396 +@463 := @454 @22 +@464 := @234 @396 +@467 := {tys : @60} -> (h : @457) -> (hf : @175) -> @464 +@468 := @463 @23 +@471 := (h : @456 @183) -> (hf : @56) -> @464 +@474 := @468 (@188 @455) @53 +@481 := fun (__v : @393) => Models.Triage.Level.casesOn.{0} @400 @4 @432 @453 @474 +@482 := @5 @30 +@484 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.Compose.RustStd.__wt_0 @30 +@485 := @21 @18 +@487 := @485 @482 @22 +@488 := Prod.{0, 0} +@490 := @488 @57 @18 +@494 := Prod.mk.{0, 0} @57 @18 @9 +@495 := @494 @482 +@496 := @20 @490 +@497 := @21 @490 +@499 := @497 @495 @496 +@500 := Bool.true +@501 := LexLeanTarget.TargetSyntax.Function +@502 := LexLeanTarget.TargetSyntax.Program.functions +@503 := @502 @0 +@504 := @20 @57 +@505 := LexLeanTarget.TargetSyntax.Ty.unit +@506 := LexLeanTarget.TargetSyntax.Value.unit +@509 := LexLeanTarget.TargetSyntax.Expr.value @505 @506 +@514 := LexLeanTarget.TargetSyntax.Function.mk @504 @23 @505 @509 +@519 := List.getD.{0} @501 @503 @9 @514 +@523 := fun (__e_n : @57) => LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.RustStd.root @4 @9 +@528 := @7 @66 @79 @88 @68 @28 +@531 := @27 @83 @76 @66 +@533 := @485 @79 @68 +@534 := @531 @533 +@535 := @21 @19 +@537 := @535 @88 @28 +@547 := {p : @24} -> + {c : @25} -> + {A : @26} -> + {v : @18} -> {t : @19} -> {vs : @59} -> {ts : @60} -> (h : @528) -> (hs : @82) -> @534 @537 +@549 := LexLeanPreservation.Rust.wtl_cons @0 +@565 := {c : @25} -> + {A : @26} -> + {v : @18} -> + {t : @19} -> + {vs : @59} -> {ts : @60} -> (h : @11 @79 @88 @68 @28) -> (hs : @113) -> @40 @76 @66 @533 @537 +@566 := @549 @1 +@579 := {A : @26} -> + {v : @18} -> + {t : @19} -> {vs : @59} -> {ts : @60} -> (h : @12 @88 @68 @28) -> (hs : @129) -> @48 @66 @533 @537 +@580 := @566 @2 +@590 := {v : @18} -> + {t : @19} -> {vs : @59} -> {ts : @60} -> (h : @13 @68 @28) -> (hs : @142) -> @54 @533 @537 +@591 := @580 @482 +@592 := @5 @88 +@594 := @13 @592 @28 +@595 := @5 @66 +@596 := @485 @595 +@604 := {t : @19} -> {vs : @59} -> {ts : @60} -> (h : @594) -> (hs : @142) -> @54 (@596 @68) @537 +@605 := @591 @10 +@606 := @5 @68 +@608 := @13 @606 @10 +@609 := @5 @79 +@610 := @485 @609 +@612 := @54 (@610 @68) +@613 := @535 @10 +@614 := @613 @28 +@619 := {vs : @59} -> {ts : @60} -> (h : @608) -> (hs : @142) -> @612 @614 +@620 := @605 @22 +@621 := @5 @28 +@623 := @13 @621 @10 +@625 := @485 @592 @22 +@626 := @54 @625 +@630 := {ts : @60} -> (h : @623) -> (hs : @175) -> @626 @614 +@631 := @620 @23 +@633 := @13 @482 @10 +@635 := @485 @606 @22 +@636 := @54 @635 +@637 := @613 @23 +@640 := (h : @633) -> (hs : @56) -> @636 @637 +@641 := @631 @484 +@643 := @485 @621 @22 +@644 := @54 @643 +@646 := (hs : @56) -> @644 @637 +@647 := @641 @53 +@648 := @54 @487 +@649 := @648 @637 +@650 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.denote +@651 := @650 @30 +@652 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.__fits_0 +@653 := @652 @30 +@655 := Models.Main.respond @30 +@656 := Bool +@658 := @488 @656 @656 +@659 := LexLeanTarget.TargetSyntax.Value.bool +@664 := LexLeanPreservation.encPair @656 @656 @659 @659 +@665 := LexLeanTarget.TargetSyntax.Value.nat +@671 := LexLeanPreservation.encExcept @658 @57 @664 @665 @655 +@673 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.root @30 +@674 := Ne.{1} +@675 := LexLeanPreservation.Obs +@676 := @674 @675 +@677 := LexLeanPreservation.Rel +@680 := @676 (@677 @30 @4) +@681 := LexLeanPreservation.Obs.stuck +@684 := (f : @656) -> (v : @18) -> @680 @681 +@686 := LexLeanPreservation.Rust.rel_ne_stuck @653 +@692 := (v : @18) -> @676 (@677 (@652 @28) @4) @681 +@693 := @686 @671 +@697 := @676 (@677 @653 @671) @681 +@698 := @58 @490 +@699 := LexLeanPreservation.Rust.FunSem +@700 := #9 +@706 := (n : @57) -> @699 @700 @83 @76 @4 @66 +@707 := @62 @501 +@708 := @61 @707 +@715 := LexLeanRuntime.index (@58 @501) @501 (LexLeanRuntime.instIndexableList @501) +@719 := @708 (@715 (@502 @700) @66) +@720 := @72 @501 +@721 := @720 @79 +@722 := @719 @721 +@723 := #10 +@727 := @27 @723 @700 @83 @79 +@728 := LexLeanTarget.TargetSyntax.Function.types +@729 := @728 @66 +@730 := @727 @729 +@731 := @62 @698 +@732 := @61 @731 +@733 := LexLeanTarget.TargetSemantics.bindAll +@734 := LexLeanTarget.TargetSyntax.Function.parameters +@739 := @732 (@733 (@734 @76) @66 @496) +@740 := @72 @698 +@741 := @740 @79 +@742 := @739 @741 +@743 := @62 @656 +@744 := @61 @743 +@745 := LexLeanPreservation.Rust.fnFallible +@746 := #11 +@749 := @744 (@745 @746 @700) +@750 := @72 @656 +@751 := @750 @79 +@752 := @749 @751 +@753 := LexLeanPreservation.RunConv +@754 := #13 +@758 := @753 @754 @723 @83 @79 +@760 := @676 @66 @681 +@761 := Exists.{1} +@762 := LexLeanPreservation.Rust.ROut +@763 := @761 @762 +@764 := And +@765 := LexLeanPreservation.Rust.RealizesFn +@769 := @764 (@765 @700 @83 @4) +@770 := LexLeanPreservation.Rust.RCI +@772 := @770 #15 +@773 := LexLeanPreservation.Rust.fnIdent +@774 := @773 @754 +@781 := (hne : @760) -> @763 (fun (ro : @762) => @769 (@772 @774 @746 @4)) +@796 := {p : @24} -> + {c : @25} -> + {A : @26} -> + {f : @57} -> + {fn : @501} -> + {args : @59} -> + {env : @698} -> + {F : @656} -> + {o : @675} -> + (hB : @706) -> + (hfn : @722) -> (hwt : @730) -> (hbind : @742) -> (hF : @752) -> (hA : @758) -> @781 +@798 := LexLeanPreservation.Rust.compose @0 +@799 := @699 @0 +@804 := (n : @57) -> @799 @83 @76 @4 @66 +@805 := @715 @503 +@808 := @708 (@805 @66) @721 +@812 := @40 @700 @83 @79 @729 +@813 := @753 @0 +@816 := @813 @723 @83 @79 +@830 := {c : @25} -> + {A : @26} -> + {f : @57} -> + {fn : @501} -> + {args : @59} -> + {env : @698} -> + {F : @656} -> + {o : @675} -> + (hB : @804) -> + (hfn : @808) -> (hwt : @812) -> (hbind : @742) -> (hF : @752) -> (hA : @816) -> @781 +@831 := @798 @1 +@832 := @799 @1 +@836 := (n : @57) -> @832 @76 @4 @66 +@839 := @48 @83 @79 @729 +@840 := @745 @1 +@843 := @744 (@840 @700) @751 +@844 := @770 @1 +@854 := (hbind : @742) -> + (hF : @843) -> (hA : @816) -> (hne : @760) -> @763 (fun (ro : @762) => @769 (@844 @774 @746 @4)) +@864 := {A : @26} -> + {f : @57} -> + {fn : @501} -> + {args : @59} -> + {env : @698} -> {F : @656} -> {o : @675} -> (hB : @836) -> (hfn : @808) -> (hwt : @839) -> @854 +@865 := @831 @2 +@867 := @832 @2 @4 +@869 := (n : @57) -> @867 @66 +@870 := @54 @79 +@871 := @870 @729 +@880 := {f : @57} -> + {fn : @501} -> + {args : @59} -> + {env : @698} -> {F : @656} -> {o : @675} -> (hB : @869) -> (hfn : @808) -> (hwt : @871) -> @854 +@881 := @865 @9 +@883 := (n : @57) -> @867 @9 +@884 := @805 @9 +@885 := @708 @884 +@886 := @885 @721 +@887 := @840 @9 +@888 := @744 @887 +@889 := @888 @751 +@890 := @813 @9 +@892 := @890 @83 @79 +@894 := @844 (@773 @9) +@902 := (hF : @889) -> (hA : @892) -> (hne : @760) -> @763 (fun (ro : @762) => @769 (@894 @746 @4)) +@911 := {fn : @501} -> + {args : @59} -> + {env : @698} -> + {F : @656} -> {o : @675} -> (hB : @883) -> (hfn : @886) -> (hwt : @871) -> (hbind : @742) -> @902 +@912 := @881 @519 +@914 := @885 (@720 @519) +@915 := @728 @519 +@916 := @870 @915 +@918 := @733 (@734 @519) +@930 := {args : @59} -> + {env : @698} -> + {F : @656} -> + {o : @675} -> + (hB : @883) -> (hfn : @914) -> (hwt : @916) -> (hbind : @732 (@918 @66 @496) @741) -> @902 +@931 := @912 @487 +@932 := @596 @22 +@934 := @54 @932 @915 +@937 := @485 (@5 @76) @22 +@941 := @732 (@918 @937 @496) @741 +@944 := @485 (@5 @700) @22 +@965 := {env : @698} -> + {F : @656} -> + {o : @675} -> + (hB : @883) -> + (hfn : @914) -> + (hwt : @934) -> + (hbind : @941) -> + (hF : @889) -> + (hA : @890 @944 @79) -> + (hne : @760) -> @763 (fun (ro : @762) => @769 (@894 (@485 (@5 #12) @22) @4)) +@966 := @931 @499 +@967 := @610 @22 +@969 := @54 @967 @915 +@977 := @732 (@918 @932 @496) (@740 (@497 (@494 @595) @496)) +@980 := @485 (@5 @83) @22 +@999 := {F : @656} -> + {o : @675} -> + (hB : @883) -> + (hfn : @914) -> + (hwt : @969) -> + (hbind : @977) -> + (hF : @889) -> + (hA : @890 @980 @79) -> + (hne : @760) -> @763 (fun (ro : @762) => @769 (@894 (@485 (@5 @746) @22) @4)) +@1000 := @966 @500 +@1001 := @626 @915 +@1009 := @732 (@918 @967 @496) (@740 (@497 (@494 @609) @496)) +@1011 := @888 (@750 @500) +@1013 := @890 @937 @79 +@1014 := @765 @500 +@1033 := {o : @675} -> + (hB : @883) -> + (hfn : @914) -> + (hwt : @1001) -> + (hbind : @1009) -> + (hF : @1011) -> + (hA : @1013) -> + (hne : @760) -> @763 (fun (ro : @762) => @764 (@1014 @83 @4) (@894 (@485 (@5 @723) @22) @4)) +@1034 := @1000 @651 +@1035 := @636 @915 +@1043 := @732 (@918 @625 @496) (@740 (@497 (@494 @592) @496)) +@1044 := @890 @932 +@1045 := @650 @66 +@1046 := @1044 @1045 +@1047 := @650 @76 +@1065 := (hB : @883) -> + (hfn : @914) -> + (hwt : @1035) -> + (hbind : @1043) -> + (hF : @1011) -> + (hA : @1046) -> + (hne : @676 @1047 @681) -> @763 (fun (ro : @762) => @764 (@1014 (@650 @700) @4) (@894 @944 @4)) +@1066 := @1034 @523 +@1067 := @644 @915 +@1075 := @732 (@918 @635 @496) (@740 (@497 (@494 @606) @496)) +@1076 := @890 @967 +@1077 := @650 @79 +@1095 := (hfn : @914) -> + (hwt : @1067) -> + (hbind : @1075) -> + (hF : @1011) -> + (hA : @1076 @1077) -> + (hne : @676 @1045 @681) -> @763 (fun (ro : @762) => @764 (@1014 (@650 @83) @4) (@894 @980 @4)) +@1098 := @1066 (@187 @707 @884) +@1099 := @648 @915 +@1107 := @732 (@918 @643 @496) (@740 (@497 (@494 @621) @496)) +@1108 := @890 @625 +@1109 := @650 @88 +@1125 := (hwt : @1099) -> + (hbind : @1107) -> + (hF : @1011) -> + (hA : @1108 @1109) -> + (hne : @676 @1077 @681) -> @763 (fun (ro : @762) => @764 (@1014 @1047 @4) (@894 @937 @4)) +@1126 := @1098 @647 +@1128 := @918 @487 @496 +@1131 := @732 @1128 (@740 @499) +@1132 := @890 @635 +@1133 := @650 @68 +@1148 := (hbind : @1131) -> + (hF : @1011) -> + (hA : @1132 @1133) -> + (hne : @676 @1109 @681) -> @763 (fun (ro : @762) => @764 (@1014 @1045 @4) (@894 @932 @4)) +@1151 := @1126 (@187 @731 @1128) +@1152 := @890 @643 +@1153 := @650 @28 +@1167 := (hF : @1011) -> + (hA : @1152 @1153) -> + (hne : @676 @1133 @681) -> @763 (fun (ro : @762) => @764 (@1014 @1077 @4) (@894 @967 @4)) +@1170 := @1151 (@187 @743 @887) +@1184 := (hA : @890 @487 @651) -> + (hne : @676 @1153 @681) -> @763 (fun (ro : @762) => @764 (@1014 @1109 @4) (@894 @625 @4)) +@1185 := @1170 @673 +@1196 := (hne : @676 @651 @681) -> @763 (fun (ro : @762) => @764 (@1014 @1133 @4) (@894 @635 @4)) +@1197 := @1185 @693 +@1203 := @764 (@1014 @1153 @4) (@894 @643 @4) +@1205 := @763 (fun (ro : @762) => @1203) +@1207 := @763 (fun (__e_ro : @762) => @1203) +@1211 := LexLeanPreservation.Rust.RepresentableL (@485 @6 @22) +@1212 := (__e_hrep : @1211) -> @1207 +@1213 := fun (__e_hrep : @1211) => @1197 +@1214 := (presentation : @3) -> @1212 +@1215 := fun (presentation : @3) => @1213 +\end{coremodule} +\end{lexlean} diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R2/RustStd.lean b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R2/RustStd.lean new file mode 100644 index 000000000..d5928d966 --- /dev/null +++ b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R2/RustStd.lean @@ -0,0 +1,210 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [{ constructors := [[], [], [], [], [], [], [], []] }, + { constructors := [[], [], []] }], functions := [ + { parameters := [0], types := [(.adt 0)], result := (.result .nat (.pair .bool .bool)), + body := (.«let» 1 (.adt 0) (.var 0) (.cond (.call 1 [(.var 1)]) (.«let» 2 .nat (.call 2 [(.var 1)]) (.build .ok (.result .nat (.pair .bool .bool)) [(.var 2)])) (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])]))) }, + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.call 3 [(.var 0)]) }, + { parameters := [0], types := [(.adt 0)], result := .nat, + body := (.call 4 [(.var 0)]) }, + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.«match» .bool (.var 0) [(.arm (.adt 0) [] (.build .false .bool [])), (.arm (.adt 1) [] (.build .true .bool [])), (.arm (.adt 2) [] (.build .true .bool [])), (.arm (.adt 3) [] (.build .true .bool [])), (.arm (.adt 4) [] (.build .true .bool [])), (.arm (.adt 5) [] (.build .true .bool [])), (.arm (.adt 6) [] (.build .true .bool [])), (.arm (.adt 7) [] (.build .true .bool []))]) }, + { parameters := [0], types := [(.adt 0)], result := .nat, + body := (.«let» 1 (.adt 1) (.call 5 [(.var 0)]) (.«let» 2 .nat (.call 6 [(.var 1)]) (.var 2))) }, + { parameters := [0], types := [(.adt 0)], result := (.adt 1), + body := (.call 7 [(.var 0)]) }, + { parameters := [0], types := [(.adt 1)], result := .nat, + body := (.call 8 [(.var 0)]) }, + { parameters := [0], types := [(.adt 0)], result := (.adt 1), + body := (.«match» (.adt 1) (.first (.call 9 [(.closure 10 []), (.build .pair (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))) [(.build .none (.option (.pair (.adt 1) .int)) []), (.build .cons (.list (.adt 1)) [(.build (.adt 0) (.adt 1) []), (.build .cons (.list (.adt 1)) [(.build (.adt 1) (.adt 1) []), (.build .cons (.list (.adt 1)) [(.build (.adt 2) (.adt 1) []), (.build .nil (.list (.adt 1)) [])])])])]), (.call 11 [(.var 0)])])) [(.arm .none [] (.build (.adt 0) (.adt 1) [])), (.arm .some [1] (.first (.var 1)))]) }, + { parameters := [0], types := [(.adt 1)], result := .nat, + body := (.cond (.call 12 [(.var 0)]) (.value .nat (.nat 2)) (.cond (.call 13 [(.var 0)]) (.value .nat (.nat 1)) (.value .nat (.nat 0)))) }, + { parameters := [0, 1, 2], types := [(.fn [(.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), .int] (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1)))), (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), (.list .int)], result := (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), + body := (.«match» (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 9 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, + { parameters := [0, 1], types := [(.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), .int], result := (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), + body := (.«match» (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))) (.second (.var 0)) [(.arm .nil [] (.var 0)), (.arm .cons [2, 3] (.build .pair (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))) [(.«match» (.option (.pair (.adt 1) .int)) (.first (.var 0)) [(.arm .none [] (.build .some (.option (.pair (.adt 1) .int)) [(.build .pair (.pair (.adt 1) .int) [(.var 2), (.var 1)])])), (.arm .some [4] (.cond (.«match» .bool (.prim .compare [(.second (.var 4)), (.var 1)]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.build .some (.option (.pair (.adt 1) .int)) [(.build .pair (.pair (.adt 1) .int) [(.var 2), (.var 1)])]) (.build .some (.option (.pair (.adt 1) .int)) [(.var 4)])))]), (.var 3)]))]) }, + { parameters := [0], types := [(.adt 0)], result := (.list .int), + body := (.«let» 1 (.list .int) (.call 14 [(.var 0)]) (.first (.call 15 [(.closure 16 [(.var 1)]), (.build .pair (.pair (.list .int) (.list .int)) [(.build .nil (.list .int) []), (.call 17 [])]), (.call 18 [])]))) }, + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.«match» .bool (.var 0) [(.arm (.adt 0) [] (.build .false .bool [])), (.arm (.adt 1) [] (.build .false .bool [])), (.arm (.adt 2) [] (.build .true .bool []))]) }, + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.«match» .bool (.var 0) [(.arm (.adt 0) [] (.build .false .bool [])), (.arm (.adt 1) [] (.build .true .bool [])), (.arm (.adt 2) [] (.build .false .bool []))]) }, + { parameters := [0], types := [(.adt 0)], result := (.list .int), + body := (.call 19 [(.var 0)]) }, + { parameters := [0, 1, 2], types := [(.fn [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int))), (.pair (.list .int) (.list .int)), (.list (.list .int))], result := (.pair (.list .int) (.list .int)), + body := (.«match» (.pair (.list .int) (.list .int)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 15 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, + { parameters := [0, 1, 2], types := [(.list .int), (.pair (.list .int) (.list .int)), (.list .int)], result := (.pair (.list .int) (.list .int)), + body := (.«match» (.pair (.list .int) (.list .int)) (.second (.var 1)) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.build .pair (.pair (.list .int) (.list .int)) [(.prim .append [(.first (.var 1)), (.build .cons (.list .int) [(.prim .intSub [(.var 3), (.prim .intNeg [(.first (.call 20 [(.closure 21 []), (.build .pair (.pair .int (.list .int)) [(.value .int (.int 0)), (.var 0)]), (.var 2)]))])]), (.build .nil (.list .int) [])])]), (.var 4)]))]) }, + { parameters := [], types := [], result := (.list .int), + body := (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int (-1))), (.build .nil (.list .int) [])])])]) }, + { parameters := [], types := [], result := (.list (.list .int)), + body := (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int (-2))), (.build .cons (.list .int) [(.value .int (.int (-2))), (.build .cons (.list .int) [(.value .int (.int (-4))), (.build .nil (.list .int) [])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 2)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])]), (.build .cons (.list (.list .int)) [(.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 5)), (.build .nil (.list .int) [])])])]), (.build .nil (.list (.list .int)) [])])])]) }, + { parameters := [0], types := [(.adt 0)], result := (.list .int), + body := (.«match» (.list .int) (.var 0) [(.arm (.adt 0) [] (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])), (.arm (.adt 1) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])), (.arm (.adt 2) [] (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])), (.arm (.adt 3) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .nil (.list .int) [])])])])), (.arm (.adt 4) [] (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])), (.arm (.adt 5) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])), (.arm (.adt 6) [] (.build .cons (.list .int) [(.value .int (.int 0)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])])), (.arm (.adt 7) [] (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .cons (.list .int) [(.value .int (.int 1)), (.build .nil (.list .int) [])])])]))]) }, + { parameters := [0, 1, 2], types := [(.fn [(.pair .int (.list .int)), .int] (.pair .int (.list .int))), (.pair .int (.list .int)), (.list .int)], result := (.pair .int (.list .int)), + body := (.«match» (.pair .int (.list .int)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 20 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, + { parameters := [0, 1], types := [(.pair .int (.list .int)), .int], result := (.pair .int (.list .int)), + body := (.«match» (.pair .int (.list .int)) (.second (.var 0)) [(.arm .nil [] (.var 0)), (.arm .cons [2, 3] (.build .pair (.pair .int (.list .int)) [(.prim .intSub [(.first (.var 0)), (.prim .intNeg [(.prim .intMul [(.var 1), (.var 2)])])]), (.var 3)]))]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.enum (.adt 0) [{ number := 0, fields := [] }, { number := 1, fields := [] }, { number := 2, fields := [] }, { number := 3, fields := [] }, { number := 4, fields := [] }, { number := 5, fields := [] }, { number := 6, fields := [] }, { number := 7, fields := [] }]), + (.enum (.adt 1) [{ number := 0, fields := [] }, { number := 1, fields := [] }, { number := 2, fields := [] }]), + (.enum (.fn 0) [{ number := 10, fields := [] }]), + (.apply 0 [(.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), .int] (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))) false [{ function := 10, captures := [], functionFallible := false }]), + (.enum (.fn 1) [{ number := 16, fields := [(.list .int)] }]), + (.apply 1 [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int)) true [{ function := 16, captures := [.clone], functionFallible := true }]), + (.enum (.fn 2) [{ number := 21, fields := [] }]), + (.apply 2 [(.pair .int (.list .int)), .int] (.pair .int (.list .int)) true [{ function := 21, captures := [], functionFallible := true }]), + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible (.result .nat (.pair .bool .bool))) (.mk [(.mk (.bind (.generated .binding 1)) (some (.adt 0)) (.move (.generated .binding 0)))] (.cond (.call (.function 1) [(.clone (.generated .binding 1))] false) (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.call (.function 2) [(.move (.generated .binding 1))] true))] (.succeed (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))]))) (.mk [] (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))])))))), + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [] (.call (.function 3) [(.move (.generated .binding 0))] false))), + (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible .nat) (.mk [] (.call (.function 4) [(.move (.generated .binding 0))] false))), + (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 1)) [(.mk (.adt 0 0 []) (.mk [] (.lit (.bool false)))), (.mk (.adt 0 1 []) (.mk [] (.lit (.bool true)))), (.mk (.adt 0 2 []) (.mk [] (.lit (.bool true)))), (.mk (.adt 0 3 []) (.mk [] (.lit (.bool true)))), (.mk (.adt 0 4 []) (.mk [] (.lit (.bool true)))), (.mk (.adt 0 5 []) (.mk [] (.lit (.bool true)))), (.mk (.adt 0 6 []) (.mk [] (.lit (.bool true)))), (.mk (.adt 0 7 []) (.mk [] (.lit (.bool true))))]))), + (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible .nat) (.mk [(.mk (.bind (.generated .binding 1)) (some (.adt 1)) (.call (.function 5) [(.move (.generated .binding 0))] true)), (.mk (.bind (.generated .binding 2)) (some .nat) (.call (.function 6) [(.move (.generated .binding 1))] false))] (.succeed (.copy (.generated .binding 2))))), + (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible (.adt 1)) (.mk [] (.call (.function 7) [(.move (.generated .binding 0))] false))), + (.function (.generated .function 6) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .nat (.mk [] (.call (.function 8) [(.move (.generated .binding 0))] false))), + (.function (.generated .function 7) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible (.adt 1)) (.mk [(.mk (.bind (.generated .holder 3)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.call (.function 9) [(.construct (.closure 0 10) []), (.pair (.construct (.none (.pair (.adt 1) .int)) []) (.construct .cons [(.construct (.adt 1 0) []), (.construct .cons [(.construct (.adt 1 1) []), (.construct .cons [(.construct (.adt 1 2) []), (.construct (.nil (.adt 1)) [])])])])), (.call (.function 11) [(.move (.generated .binding 0))] true)] false))] (.move (.generated .part 2)))))] (.matchOn (.move (.generated .holder 3)) [(.mk .none (.mk [] (.succeed (.construct (.adt 1 0) [])))), (.mk (.some (.bind (.generated .binding 1))) (.mk [(.mk (.tuple [(.bind (.generated .part 4)), .wild]) none (.move (.generated .binding 1)))] (.succeed (.move (.generated .part 4)))))]))), + (.function (.generated .function 8) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .nat (.mk [] (.cond (.call (.function 12) [(.clone (.generated .binding 0))] false) (.mk [] (.lit (.nat 2))) (.mk [] (.cond (.call (.function 13) [(.move (.generated .binding 0))] false) (.mk [] (.lit (.nat 1))) (.mk [] (.lit (.nat 0)))))))), + (.function (.generated .function 9) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))) }, { pattern := (.bind (.generated .binding 2)), type := (.list .int) }] (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))) (.mk [(.mk (.bind (.generated .holder 5)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 5)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 9) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 6)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 6) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]))), + (.function (.generated .function 10) [{ pattern := (.bind (.generated .binding 0)), type := (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))) }, { pattern := (.bind (.generated .binding 1)), type := .int }] (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))) (.mk [(.mk (.bind (.generated .holder 8)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 7))]) none (.clone (.generated .binding 0)))] (.move (.generated .part 7)))))] (.matchOn (.uncons (.generated .holder 8)) [(.mk .none (.mk [] (.move (.generated .binding 0)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.pair (.block (.mk [(.mk (.bind (.generated .holder 10)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 9)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 9)))))] (.matchOn (.move (.generated .holder 10)) [(.mk .none (.mk [] (.construct .some [(.pair (.move (.generated .binding 2)) (.copy (.generated .binding 1)))]))), (.mk (.some (.bind (.generated .binding 4))) (.mk [(.mk (.bind (.generated .holder 14)) none (.block (.mk [(.mk (.bind (.generated .operand 12)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 11))]) none (.clone (.generated .binding 4)))] (.move (.generated .part 11))))), (.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1)))] (.call (.runtime .compare) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false))))] (.cond (.matchOn (.move (.generated .holder 14)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.construct .some [(.pair (.move (.generated .binding 2)) (.copy (.generated .binding 1)))])) (.mk [] (.construct .some [(.move (.generated .binding 4))])))))]))) (.move (.generated .binding 3)))))]))), + (.function (.generated .function 11) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible (.list .int)) (.mk [(.mk (.bind (.generated .binding 1)) (some (.list .int)) (.call (.function 14) [(.move (.generated .binding 0))] false)), (.mk (.tuple [(.bind (.generated .part 15)), .wild]) none (.call (.function 15) [(.construct (.closure 1 16) [(.move (.generated .binding 1))]), (.pair (.construct (.nil .int) []) (.call (.function 17) [] false)), (.call (.function 18) [] false)] true))] (.succeed (.move (.generated .part 15))))), + (.function (.generated .function 12) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .holder 16)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 16)) [(.mk (.adt 1 0 []) (.mk [] (.lit (.bool false)))), (.mk (.adt 1 1 []) (.mk [] (.lit (.bool false)))), (.mk (.adt 1 2 []) (.mk [] (.lit (.bool true))))]))), + (.function (.generated .function 13) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .holder 17)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 17)) [(.mk (.adt 1 0 []) (.mk [] (.lit (.bool false)))), (.mk (.adt 1 1 []) (.mk [] (.lit (.bool true)))), (.mk (.adt 1 2 []) (.mk [] (.lit (.bool false))))]))), + (.function (.generated .function 14) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.list .int) (.mk [] (.call (.function 19) [(.move (.generated .binding 0))] false))), + (.function (.generated .function 15) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 1) }, { pattern := (.bind (.generated .binding 1)), type := (.pair (.list .int) (.list .int)) }, { pattern := (.bind (.generated .binding 2)), type := (.list (.list .int)) }] (.fallible (.pair (.list .int) (.list .int))) (.mk [(.mk (.bind (.generated .holder 18)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 18)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 15) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 19)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 19) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]))), + (.function (.generated .function 16) [{ pattern := (.bind (.generated .binding 0)), type := (.list .int) }, { pattern := (.bind (.generated .binding 1)), type := (.pair (.list .int) (.list .int)) }, { pattern := (.bind (.generated .binding 2)), type := (.list .int) }] (.fallible (.pair (.list .int) (.list .int))) (.mk [(.mk (.bind (.generated .holder 21)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 20))]) none (.clone (.generated .binding 1)))] (.move (.generated .part 20)))))] (.matchOn (.uncons (.generated .holder 21)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 22)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 22))))), (.mk (.bind (.generated .operand 28)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 25)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 23)), .wild]) none (.call (.function 20) [(.construct (.closure 2 21) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 23)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 24))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] true))), (.construct (.nil .int) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))) (.move (.generated .binding 4))))))]))), + (.function (.generated .function 17) [] (.list .int) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int (-1))), (.construct (.nil .int) [])])])]))), + (.function (.generated .function 18) [] (.list (.list .int)) (.mk [] (.construct .cons [(.construct .cons [(.lit (.int (-2))), (.construct .cons [(.lit (.int (-2))), (.construct .cons [(.lit (.int (-4))), (.construct (.nil .int) [])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 5)), (.construct (.nil .int) [])])])]), (.construct (.nil (.list .int)) [])])])]))), + (.function (.generated .function 19) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.list .int) (.mk [(.mk (.bind (.generated .holder 29)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 29)) [(.mk (.adt 0 0 []) (.mk [] (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])]))), (.mk (.adt 0 1 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])]))), (.mk (.adt 0 2 []) (.mk [] (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])]))), (.mk (.adt 0 3 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])]))), (.mk (.adt 0 4 []) (.mk [] (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])]))), (.mk (.adt 0 5 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])]))), (.mk (.adt 0 6 []) (.mk [] (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])]))), (.mk (.adt 0 7 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])))]))), + (.function (.generated .function 20) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 2) }, { pattern := (.bind (.generated .binding 1)), type := (.pair .int (.list .int)) }, { pattern := (.bind (.generated .binding 2)), type := (.list .int) }] (.fallible (.pair .int (.list .int))) (.mk [(.mk (.bind (.generated .holder 30)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 30)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 20) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 31)) (some (.fn 2)) (.move (.generated .binding 0)))] (.apply (.generated .callee 31) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]))), + (.function (.generated .function 21) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .int (.list .int)) }, { pattern := (.bind (.generated .binding 1)), type := .int }] (.fallible (.pair .int (.list .int))) (.mk [(.mk (.bind (.generated .holder 33)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 32))]) none (.clone (.generated .binding 0)))] (.move (.generated .part 32)))))] (.matchOn (.uncons (.generated .holder 33)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 0))))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 38)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 34)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 34))))), (.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.bind (.generated .operand 37)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 36)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] true))))] (.call (.runtime .intNeg) [(.move (.generated .operand 37))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 38)), (.move (.generated .operand 39))] true))) (.move (.generated .binding 3))))))])))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [(([(.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), .int], (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1)))), false), (([(.pair (.list .int) (.list .int)), (.list .int)], (.pair (.list .int) (.list .int))), true), (([(.pair .int (.list .int)), .int], (.pair .int (.list .int))), true)] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some (.adt 0)) (.move (.generated .binding 0)))], (.cond (.call (.function 1) [(.clone (.generated .binding 1))] false) (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.call (.function 2) [(.move (.generated .binding 1))] true))] (.succeed (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))]))) (.mk [] (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))])))), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.letBind (Corr.var rfl rfl) rfl (Corr.cond (lc := []) (ce := (.call (.function 1) [(.clone (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .binding 2)) (some .nat) (.call (.function 2) [(.move (.generated .binding 1))] true))]) (ta := (.succeed (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))]))) (lb := []) (tb := (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))) (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.fOfB (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl))) (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)))))⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 3) [(.move (.generated .binding 0))] false), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 4) [(.move (.generated .binding 0))] false), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.callF (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)⟩⟩ + +theorem fun3 : FunOK program krate flags 3 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 1)) [(.mk (.adt 0 0 []) (.mk [] (.lit (.bool false)))), (.mk (.adt 0 1 []) (.mk [] (.lit (.bool true)))), (.mk (.adt 0 2 []) (.mk [] (.lit (.bool true)))), (.mk (.adt 0 3 []) (.mk [] (.lit (.bool true)))), (.mk (.adt 0 4 []) (.mk [] (.lit (.bool true)))), (.mk (.adt 0 5 []) (.mk [] (.lit (.bool true)))), (.mk (.adt 0 6 []) (.mk [] (.lit (.bool true)))), (.mk (.adt 0 7 []) (.mk [] (.lit (.bool true))))]), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.adt 0)) (U := []) (view := false) (idx := [0, 1, 2, 3, 4, 5, 6, 7]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 3) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 4) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 5) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 6) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 7) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ + +theorem fun4 : FunOK program krate flags 4 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some (.adt 1)) (.call (.function 5) [(.move (.generated .binding 0))] true)), (.mk (.bind (.generated .binding 2)) (some .nat) (.call (.function 6) [(.move (.generated .binding 1))] false))], (.succeed (.copy (.generated .binding 2))), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))))⟩⟩ + +theorem fun5 : FunOK program krate flags 5 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 7) [(.move (.generated .binding 0))] false), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.callF (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)⟩⟩ + +theorem fun6 : FunOK program krate flags 6 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 8) [(.move (.generated .binding 0))] false), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun7 : FunOK program krate flags 7 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 3)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.call (.function 9) [(.construct (.closure 0 10) []), (.pair (.construct (.none (.pair (.adt 1) .int)) []) (.construct .cons [(.construct (.adt 1 0) []), (.construct .cons [(.construct (.adt 1 1) []), (.construct .cons [(.construct (.adt 1 2) []), (.construct (.nil (.adt 1)) [])])])])), (.call (.function 11) [(.move (.generated .binding 0))] true)] false))] (.move (.generated .part 2)))))], (.matchOn (.move (.generated .holder 3)) [(.mk .none (.mk [] (.succeed (.construct (.adt 1 0) [])))), (.mk (.some (.bind (.generated .binding 1))) (.mk [(.mk (.tuple [(.bind (.generated .part 4)), .wild]) none (.move (.generated .binding 1)))] (.succeed (.move (.generated .part 4)))))]), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option (.pair (.adt 1) .int))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.call (.function 9) [(.construct (.closure 0 10) []), (.pair (.construct (.none (.pair (.adt 1) .int)) []) (.construct .cons [(.construct (.adt 1 0) []), (.construct .cons [(.construct (.adt 1 1) []), (.construct .cons [(.construct (.adt 1 2) []), (.construct (.nil (.adt 1)) [])])])])), (.call (.function 11) [(.move (.generated .binding 0))] true)] false))]) (tail := (.move (.generated .part 2))) (Corr.first (ta := (.option (.pair (.adt 1) .int))) (tb := (.list (.adt 1))) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), .int] (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1)))), (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), (.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := false) (ff := false) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.adt 1), (.list (.adt 1))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.adt 1), (.list (.adt 1))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.adt 1), (.list (.adt 1))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl)) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct (.adt 1 0) []))) (Corr.mCons (Γ' := [(1, (.pair (.adt 1) .int), (some 1)), (0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.tuple [(.bind (.generated .part 4)), .wild]) none (.move (.generated .binding 1)))]) (tail := (.succeed (.move (.generated .part 4)))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.first (ta := (.adt 1)) (tb := .int) (Corr.var rfl rfl) rfl))) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl)⟩⟩ + +theorem fun8 : FunOK program krate flags 8 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 12) [(.clone (.generated .binding 0))] false) (.mk [] (.lit (.nat 2))) (.mk [] (.cond (.call (.function 13) [(.move (.generated .binding 0))] false) (.mk [] (.lit (.nat 1))) (.mk [] (.lit (.nat 0)))))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 12) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.nat 2))) (lb := []) (tb := (.cond (.call (.function 13) [(.move (.generated .binding 0))] false) (.mk [] (.lit (.nat 1))) (.mk [] (.lit (.nat 0))))) (Corr.bOfE (Corr.value rfl rfl)) (Corr.cond (lc := []) (ce := (.call (.function 13) [(.move (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.nat 1))) (lb := []) (tb := (.lit (.nat 0))) (Corr.bOfE (Corr.value rfl rfl)) (Corr.bOfE (Corr.value rfl rfl))))))⟩⟩ + +theorem fun9 : FunOK program krate flags 9 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 5)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 5)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 9) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 6)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 6) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]), [(2, (.list .int), (some 2)), (1, (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), (some 1)), (0, (.fn [(.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), .int] (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1)))), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .int)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .int), (some 2)), (1, (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), (some 1)), (0, (.fn [(.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), .int] (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1)))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 1))) (Corr.mCons (Γ' := [(4, (.list .int), (some 4)), (3, .int, (some 3)), (2, (.list .int), (some 2)), (1, (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), (some 1)), (0, (.fn [(.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), .int] (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1)))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 9) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 6)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 6) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.fn [(.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), .int] (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1)))), (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), (.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 6)) (some (.fn 0)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 6) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] false)) (Corr.apply (ps := [(.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), .int]) (af := false) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ + +theorem fun10 : FunOK program krate flags 10 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 8)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 7))]) none (.clone (.generated .binding 0)))] (.move (.generated .part 7)))))], (.matchOn (.uncons (.generated .holder 8)) [(.mk .none (.mk [] (.move (.generated .binding 0)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.pair (.block (.mk [(.mk (.bind (.generated .holder 10)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 9)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 9)))))] (.matchOn (.move (.generated .holder 10)) [(.mk .none (.mk [] (.construct .some [(.pair (.move (.generated .binding 2)) (.copy (.generated .binding 1)))]))), (.mk (.some (.bind (.generated .binding 4))) (.mk [(.mk (.bind (.generated .holder 14)) none (.block (.mk [(.mk (.bind (.generated .operand 12)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 11))]) none (.clone (.generated .binding 4)))] (.move (.generated .part 11))))), (.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1)))] (.call (.runtime .compare) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false))))] (.cond (.matchOn (.move (.generated .holder 14)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.construct .some [(.pair (.move (.generated .binding 2)) (.copy (.generated .binding 1)))])) (.mk [] (.construct .some [(.move (.generated .binding 4))])))))]))) (.move (.generated .binding 3)))))]), [(1, .int, (some 1)), (0, (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.adt 1))) (U := []) (view := true) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 7))]) none (.clone (.generated .binding 0)))]) (tail := (.move (.generated .part 7))) (Corr.second (ta := (.option (.pair (.adt 1) .int))) (tb := (.list (.adt 1))) (Corr.var rfl rfl) rfl)) (Corr.mCons (Γ' := [(1, .int, (some 1)), (0, (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 0))) (Corr.mCons (Γ' := [(3, (.list (.adt 1)), (some 3)), (2, (.adt 1), (some 2)), (1, .int, (some 1)), (0, (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.pair (.block (.mk [(.mk (.bind (.generated .holder 10)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 9)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 9)))))] (.matchOn (.move (.generated .holder 10)) [(.mk .none (.mk [] (.construct .some [(.pair (.move (.generated .binding 2)) (.copy (.generated .binding 1)))]))), (.mk (.some (.bind (.generated .binding 4))) (.mk [(.mk (.bind (.generated .holder 14)) none (.block (.mk [(.mk (.bind (.generated .operand 12)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 11))]) none (.clone (.generated .binding 4)))] (.move (.generated .part 11))))), (.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1)))] (.call (.runtime .compare) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false))))] (.cond (.matchOn (.move (.generated .holder 14)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.construct .some [(.pair (.move (.generated .binding 2)) (.copy (.generated .binding 1)))])) (.mk [] (.construct .some [(.move (.generated .binding 4))])))))]))) (.move (.generated .binding 3)))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 10)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 9)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 9)))))]) (tail := (.matchOn (.move (.generated .holder 10)) [(.mk .none (.mk [] (.construct .some [(.pair (.move (.generated .binding 2)) (.copy (.generated .binding 1)))]))), (.mk (.some (.bind (.generated .binding 4))) (.mk [(.mk (.bind (.generated .holder 14)) none (.block (.mk [(.mk (.bind (.generated .operand 12)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 11))]) none (.clone (.generated .binding 4)))] (.move (.generated .part 11))))), (.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1)))] (.call (.runtime .compare) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false))))] (.cond (.matchOn (.move (.generated .holder 14)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.construct .some [(.pair (.move (.generated .binding 2)) (.copy (.generated .binding 1)))])) (.mk [] (.construct .some [(.move (.generated .binding 4))])))))])) (Corr.matchArms (st := (.option (.pair (.adt 1) .int))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 9)), .wild]) none (.move (.generated .binding 0)))]) (tail := (.move (.generated .part 9))) (Corr.first (ta := (.option (.pair (.adt 1) .int))) (tb := (.list (.adt 1))) (Corr.var rfl rfl) rfl)) (Corr.mCons (Γ' := [(3, (.list (.adt 1)), (some 3)), (2, (.adt 1), (some 2)), (1, .int, (some 1)), (0, (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.pair (.move (.generated .binding 2)) (.copy (.generated .binding 1)))])) (Corr.mCons (Γ' := [(4, (.pair (.adt 1) .int), (some 4)), (3, (.list (.adt 1)), (some 3)), (2, (.adt 1), (some 2)), (1, .int, (some 1)), (0, (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 14)) none (.block (.mk [(.mk (.bind (.generated .operand 12)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 11))]) none (.clone (.generated .binding 4)))] (.move (.generated .part 11))))), (.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1)))] (.call (.runtime .compare) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 14)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.construct .some [(.pair (.move (.generated .binding 2)) (.copy (.generated .binding 1)))])) (.mk [] (.construct .some [(.move (.generated .binding 4))])))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .holder 14)) none (.block (.mk [(.mk (.bind (.generated .operand 12)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 11))]) none (.clone (.generated .binding 4)))] (.move (.generated .part 11))))), (.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1)))] (.call (.runtime .compare) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false))))]) (ce := (.matchOn (.move (.generated .holder 14)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 12)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 11))]) none (.clone (.generated .binding 4)))] (.move (.generated .part 11))))), (.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 11))]) none (.clone (.generated .binding 4)))]) (tail := (.move (.generated .part 11))) (Corr.second (ta := (.adt 1)) (tb := .int) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.pair (.adt 1) .int), (some 4)), (3, (.list (.adt 1)), (some 3)), (2, (.adt 1), (some 2)), (1, .int, (some 1)), (0, (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.pair (.adt 1) .int), (some 4)), (3, (.list (.adt 1)), (some 3)), (2, (.adt 1), (some 2)), (1, .int, (some 1)), (0, (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, (.pair (.adt 1) .int), (some 4)), (3, (.list (.adt 1)), (some 3)), (2, (.adt 1), (some 2)), (1, .int, (some 1)), (0, (.pair (.option (.pair (.adt 1) .int)) (.list (.adt 1))), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.pair (.move (.generated .binding 2)) (.copy (.generated .binding 1)))])) (lb := []) (tb := (.construct .some [(.move (.generated .binding 4))])) (Corr.build (ts := [(.pair (.adt 1) .int)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lNil))) rfl) (Corr.build (ts := [(.pair (.adt 1) .int)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)))) rfl rfl rfl (Corr.build (ts := [(.pair (.adt 1) .int)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lNil))) rfl)) rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))))) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ + +theorem fun11 : FunOK program krate flags 11 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some (.list .int)) (.call (.function 14) [(.move (.generated .binding 0))] false)), (.mk (.tuple [(.bind (.generated .part 15)), .wild]) none (.call (.function 15) [(.construct (.closure 1 16) [(.move (.generated .binding 1))]), (.pair (.construct (.nil .int) []) (.call (.function 17) [] false)), (.call (.function 18) [] false)] true))], (.succeed (.move (.generated .part 15))), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.fOfB (Corr.first (ta := (.list .int)) (tb := (.list .int)) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int))), (.pair (.list .int) (.list .int)), (.list (.list .int))]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [(.list .int)]) (mask := [false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := []) (Corr.opsNil) rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := []) (Corr.opsNil) rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl)))⟩⟩ + +theorem fun12 : FunOK program krate flags 12 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 16)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 16)) [(.mk (.adt 1 0 []) (.mk [] (.lit (.bool false)))), (.mk (.adt 1 1 []) (.mk [] (.lit (.bool false)))), (.mk (.adt 1 2 []) (.mk [] (.lit (.bool true))))]), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.adt 1)) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ + +theorem fun13 : FunOK program krate flags 13 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 17)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 17)) [(.mk (.adt 1 0 []) (.mk [] (.lit (.bool false)))), (.mk (.adt 1 1 []) (.mk [] (.lit (.bool true)))), (.mk (.adt 1 2 []) (.mk [] (.lit (.bool false))))]), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.adt 1)) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ + +theorem fun14 : FunOK program krate flags 14 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 19) [(.move (.generated .binding 0))] false), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun15 : FunOK program krate flags 15 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 18)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 18)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 15) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 19)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 19) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]), [(2, (.list (.list .int)), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.fn [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int))), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.list .int))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.list .int)), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.fn [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list (.list .int)), (some 4)), (3, (.list .int), (some 3)), (2, (.list (.list .int)), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.fn [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 15) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 19)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 19) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.pair (.list .int) (.list .int)), (.list .int)] (.pair (.list .int) (.list .int))), (.pair (.list .int) (.list .int)), (.list (.list .int))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 19)) (some (.fn 1)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 19) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true)) (Corr.apply (ps := [(.pair (.list .int) (.list .int)), (.list .int)]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ + +theorem fun16 : FunOK program krate flags 16 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 21)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 20))]) none (.clone (.generated .binding 1)))] (.move (.generated .part 20)))))], (.matchOn (.uncons (.generated .holder 21)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 22)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 22))))), (.mk (.bind (.generated .operand 28)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 25)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 23)), .wild]) none (.call (.function 20) [(.construct (.closure 2 21) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 23)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 24))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] true))), (.construct (.nil .int) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))) (.move (.generated .binding 4))))))]), [(2, (.list .int), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.list .int), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .int)) (U := []) (view := true) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 20))]) none (.clone (.generated .binding 1)))]) (tail := (.move (.generated .part 20))) (Corr.second (ta := (.list .int)) (tb := (.list .int)) (Corr.var rfl rfl) rfl)) (Corr.mCons (Γ' := [(2, (.list .int), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.list .int), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list .int), (some 4)), (3, .int, (some 3)), (2, (.list .int), (some 2)), (1, (.pair (.list .int) (.list .int)), (some 1)), (0, (.list .int), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 22)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 22))))), (.mk (.bind (.generated .operand 28)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 25)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 23)), .wild]) none (.call (.function 20) [(.construct (.closure 2 21) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 23)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 24))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] true))), (.construct (.nil .int) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))) (.move (.generated .binding 4))))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 27)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 22)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 22))))), (.mk (.bind (.generated .operand 28)) none (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 25)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 23)), .wild]) none (.call (.function 20) [(.construct (.closure 2 21) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 23)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 24))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] true))), (.construct (.nil .int) [])]))]) (tail := (.call (.runtime .appendList) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false)) (Corr.prim (ts := [(.list .int), (.list .int)]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 22)), .wild]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 22))) (Corr.first (ta := (.list .int)) (tb := (.list .int)) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 25)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 23)), .wild]) none (.call (.function 20) [(.construct (.closure 2 21) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 23)))))] (.call (.runtime .intNeg) [(.move (.generated .operand 24))] true))))]) (tail := (.call (.runtime .intSub) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] true)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 24)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 23)), .wild]) none (.call (.function 20) [(.construct (.closure 2 21) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))] (.move (.generated .part 23)))))]) (tail := (.call (.runtime .intNeg) [(.move (.generated .operand 24))] true)) (Corr.prim (ts := [.int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 23)), .wild]) none (.call (.function 20) [(.construct (.closure 2 21) []), (.pair (.lit (.int 0)) (.move (.generated .binding 0))), (.move (.generated .binding 2))] true))]) (tail := (.move (.generated .part 23))) (Corr.first (ta := .int) (tb := (.list .int)) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.pair .int (.list .int)), .int] (.pair .int (.list .int))), (.pair .int (.list .int)), (.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl)) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))))) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ + +theorem fun17 : FunOK program krate flags 17 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int (-1))), (.construct (.nil .int) [])])])]), [], rfl, rfl, + (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)⟩⟩ + +theorem fun18 : FunOK program krate flags 18 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct .cons [(.construct .cons [(.lit (.int (-2))), (.construct .cons [(.lit (.int (-2))), (.construct .cons [(.lit (.int (-4))), (.construct (.nil .int) [])])])]), (.construct .cons [(.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 2)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])]), (.construct .cons [(.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 5)), (.construct (.nil .int) [])])])]), (.construct (.nil (.list .int)) [])])])]), [], rfl, rfl, + (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list .int), (.list (.list .int))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)⟩⟩ + +theorem fun19 : FunOK program krate flags 19 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 29)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 29)) [(.mk (.adt 0 0 []) (.mk [] (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])]))), (.mk (.adt 0 1 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])]))), (.mk (.adt 0 2 []) (.mk [] (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])]))), (.mk (.adt 0 3 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])]))), (.mk (.adt 0 4 []) (.mk [] (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])]))), (.mk (.adt 0 5 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])]))), (.mk (.adt 0 6 []) (.mk [] (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])]))), (.mk (.adt 0 7 []) (.mk [] (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])))]), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.adt 0)) (U := []) (view := false) (idx := [0, 1, 2, 3, 4, 5, 6, 7]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 3) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct (.nil .int) [])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 4) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 5) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 6) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 0)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 7) (loads := []) (lets := []) (tail := (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct .cons [(.lit (.int 1)), (.construct (.nil .int) [])])])])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.int, (.list .int)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun20 : FunOK program krate flags 20 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 30)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 30)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 20) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 31)) (some (.fn 2)) (.move (.generated .binding 0)))] (.apply (.generated .callee 31) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]), [(2, (.list .int), (some 2)), (1, (.pair .int (.list .int)), (some 1)), (0, (.fn [(.pair .int (.list .int)), .int] (.pair .int (.list .int))), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .int)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .int), (some 2)), (1, (.pair .int (.list .int)), (some 1)), (0, (.fn [(.pair .int (.list .int)), .int] (.pair .int (.list .int))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list .int), (some 4)), (3, .int, (some 3)), (2, (.list .int), (some 2)), (1, (.pair .int (.list .int)), (some 1)), (0, (.fn [(.pair .int (.list .int)), .int] (.pair .int (.list .int))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 20) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 31)) (some (.fn 2)) (.move (.generated .binding 0)))] (.apply (.generated .callee 31) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.pair .int (.list .int)), .int] (.pair .int (.list .int))), (.pair .int (.list .int)), (.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 31)) (some (.fn 2)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 31) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true)) (Corr.apply (ps := [(.pair .int (.list .int)), .int]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ + +theorem fun21 : FunOK program krate flags 21 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 33)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 32))]) none (.clone (.generated .binding 0)))] (.move (.generated .part 32)))))], (.matchOn (.uncons (.generated .holder 33)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 0))))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 38)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 34)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 34))))), (.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.bind (.generated .operand 37)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 36)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] true))))] (.call (.runtime .intNeg) [(.move (.generated .operand 37))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 38)), (.move (.generated .operand 39))] true))) (.move (.generated .binding 3))))))]), [(1, .int, (some 1)), (0, (.pair .int (.list .int)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .int)) (U := []) (view := true) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 32))]) none (.clone (.generated .binding 0)))]) (tail := (.move (.generated .part 32))) (Corr.second (ta := .int) (tb := (.list .int)) (Corr.var rfl rfl) rfl)) (Corr.mCons (Γ' := [(1, .int, (some 1)), (0, (.pair .int (.list .int)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 0)))) (Corr.mCons (Γ' := [(3, (.list .int), (some 3)), (2, .int, (some 2)), (1, .int, (some 1)), (0, (.pair .int (.list .int)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 38)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 34)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 34))))), (.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.bind (.generated .operand 37)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 36)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] true))))] (.call (.runtime .intNeg) [(.move (.generated .operand 37))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 38)), (.move (.generated .operand 39))] true))) (.move (.generated .binding 3))))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 38)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 34)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 34))))), (.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.bind (.generated .operand 37)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 36)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] true))))] (.call (.runtime .intNeg) [(.move (.generated .operand 37))] true))))]) (tail := (.call (.runtime .intSub) [(.move (.generated .operand 38)), (.move (.generated .operand 39))] true)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 34)), .wild]) none (.move (.generated .binding 0)))]) (tail := (.move (.generated .part 34))) (Corr.first (ta := .int) (tb := (.list .int)) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 37)) none (.block (.mk [(.mk (.bind (.generated .operand 35)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 36)) none (.copy (.generated .binding 2)))] (.call (.runtime .intMul) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] true))))]) (tail := (.call (.runtime .intNeg) [(.move (.generated .operand 37))] true)) (Corr.prim (ts := [.int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 35)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 36)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .intMul) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] true)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))))) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | 3 => exact fun3 + | 4 => exact fun4 + | 5 => exact fun5 + | 6 => exact fun6 + | 7 => exact fun7 + | 8 => exact fun8 + | 9 => exact fun9 + | 10 => exact fun10 + | 11 => exact fun11 + | 12 => exact fun12 + | 13 => exact fun13 + | 14 => exact fun14 + | 15 => exact fun15 + | 16 => exact fun16 + | 17 => exact fun17 + | 18 => exact fun18 + | 19 => exact fun19 + | 20 => exact fun20 + | 21 => exact fun21 + | _ + 22 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.RustStd diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R3.lean b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R3.lean new file mode 100644 index 000000000..85dfdbfc2 --- /dev/null +++ b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R3.lean @@ -0,0 +1,132 @@ +import LexLeanPreservation.Core +import LexLeanPreservation.Values +import LexLeanPreservation.Primitives +import LexLeanPreservation.Fixed +import LexLeanPreservation.Keys +import LexLeanPreservation.Templates +import LexLeanPreservation.Validate +import Models.Flows +import Models.Glyphs +import Models.Ledger +import Models.Main +import Models.Pipeline +import Models.Policy +import Models.Recognizer +import Models.Session +import Models.Triage +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +set_option linter.unusedVariables false +namespace LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3 + +def __prog : _root_.LexLeanTarget.TargetSyntax.Program := + { adts := [{ constructors := [[.nat, .nat]] }], functions := [ + { parameters := [0], types := [(.list .nat)], result := (.result (.result (.list .nat) (.pair .bool .bool)) (.pair .bool .bool)), + body := (.«let» 1 (.list .nat) (.var 0) (.cond (.call 1 [(.var 1)]) (.«let» 2 (.result (.list .nat) (.pair .bool .bool)) (.call 2 [(.var 1)]) (.build .ok (.result (.result (.list .nat) (.pair .bool .bool)) (.pair .bool .bool)) [(.var 2)])) (.build .error (.result (.result (.list .nat) (.pair .bool .bool)) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])]))) }, + { parameters := [0], types := [(.list .nat)], result := .bool, + body := (.prim .natLt [(.prim .length [(.var 0)]), (.value .nat (.nat 1001))]) }, + { parameters := [0], types := [(.list .nat)], result := (.result (.list .nat) (.pair .bool .bool)), + body := (.call 3 [(.var 0)]) }, + { parameters := [0], types := [(.list .nat)], result := (.result (.list .nat) (.pair .bool .bool)), + body := (.«let» 1 (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) (.call 4 [(.closure 5 []), (.build .ok (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.build .pair (.pair (.adt 0) (.list .nat)) [(.call 6 []), (.build .nil (.list .nat) [])])]), (.var 0)]) (.«match» (.result (.list .nat) (.pair .bool .bool)) (.var 1) [(.arm .error [2] (.build .error (.result (.list .nat) (.pair .bool .bool)) [(.var 2)])), (.arm .ok [3] (.build .ok (.result (.list .nat) (.pair .bool .bool)) [(.second (.var 3))]))])) }, + { parameters := [0, 1, 2], types := [(.fn [(.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), .nat] (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool))), (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), (.list .nat)], result := (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), + body := (.«match» (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 4 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, + { parameters := [0, 1], types := [(.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), .nat], result := (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), + body := (.«match» (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) (.var 0) [(.arm .error [2] (.var 0)), (.arm .ok [3] (.cond (.call 7 [(.first (.var 3))]) (.cond (.call 8 [(.first (.var 3)), (.var 1)]) (.«let» 4 (.pair (.adt 0) .nat) (.call 9 [(.first (.var 3)), (.var 1)]) (.build .ok (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.build .pair (.pair (.adt 0) (.list .nat)) [(.first (.var 4)), (.prim .append [(.second (.var 3)), (.build .cons (.list .nat) [(.second (.var 4)), (.build .nil (.list .nat) [])])])])])) (.build .error (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])])) (.build .error (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])])])))]) }, + { parameters := [], types := [], result := (.adt 0), + body := (.call 10 []) }, + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.prim .natLe [(.field (.var 0) 0), (.value .nat (.nat 64))]) }, + { parameters := [0, 1], types := [(.adt 0), .nat], result := .bool, + body := (.prim .natLe [(.var 1), (.value .nat (.nat 16))]) }, + { parameters := [0, 1], types := [(.adt 0), .nat], result := (.pair (.adt 0) .nat), + body := (.call 11 [(.var 0), (.var 1)]) }, + { parameters := [], types := [], result := (.adt 0), + body := (.build (.adt 0) (.adt 0) [(.value .nat (.nat 0)), (.value .nat (.nat 0))]) }, + { parameters := [0, 1], types := [(.adt 0), .nat], result := (.pair (.adt 0) .nat), + body := (.«let» 2 .nat (.prim .natAdd [(.field (.var 0) 0), (.var 1)]) (.build .pair (.pair (.adt 0) .nat) [(.build (.adt 0) (.adt 0) [(.prim .natSub [(.var 2), (.prim .natSub [(.var 2), (.value .nat (.nat 64))])]), (.prim .natAdd [(.field (.var 0) 1), (.value .nat (.nat 1))])]), (.prim .natSub [(.var 2), (.value .nat (.nat 64))])])) }] } + +def __enc_0 (__s : (Models.Session.Window)) : _root_.LexLeanTarget.TargetSyntax.Value := + _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).used), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).items)] + +def __fits_1 (costs : (List Nat)) : Bool := + ((((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (costs) : Nat) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_1 (costs : (List Nat)) : _root_.LexLeanPreservation.FunRel __prog 1 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) costs)] (_root_.LexLeanPreservation.Rel (__fits_1 costs) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Models.Pipeline.shortStreamCheck costs))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) costs)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (_root_.LexLeanRuntime.length (costs) : Nat) (1001 : Nat))) + +def __fits_7 (window : (Models.Session.Window)) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_7 (window : (Models.Session.Window)) : _root_.LexLeanPreservation.FunRel __prog 7 [(__enc_0 window)] (_root_.LexLeanPreservation.Rel (__fits_7 window) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Models.Session.boundedCheck window))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe (window).used (64 : Nat))) + +def __fits_8 (window : (Models.Session.Window)) (cost : Nat) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_8 (window : (Models.Session.Window)) (cost : Nat) : _root_.LexLeanPreservation.FunRel __prog 8 [(__enc_0 window), (_root_.LexLeanTarget.TargetSyntax.Value.nat cost)] (_root_.LexLeanPreservation.Rel (__fits_8 window cost) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Models.Session.affordableCheck window cost))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe cost (16 : Nat))) + +def __fits_11 (window : (Models.Session.Window)) (cost : Nat) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((window).used + cost) 18446744073709551616)) && (let total : Nat := ((window).used + cost); ((((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((window).items + (1 : Nat)) 18446744073709551616)) && Bool.true)) && Bool.true) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true))) + +theorem __rel_11 (window : (Models.Session.Window)) (cost : Nat) : _root_.LexLeanPreservation.FunRel __prog 11 [(__enc_0 window), (_root_.LexLeanTarget.TargetSyntax.Value.nat cost)] (_root_.LexLeanPreservation.Rel (__fits_11 window cost) ((_root_.LexLeanPreservation.encPair __enc_0 _root_.LexLeanTarget.TargetSyntax.Value.nat) (Models.Session.SessionStep window cost))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (let total : Nat := ((window).used + cost); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (window).used cost)) (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub total (64 : Nat))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub total (_root_.LexLeanRuntime.subtract (total) ((64 : Nat)) : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (window).items (1 : Nat))) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_adt) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub total (64 : Nat))) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair)) + +def __fits_9 (_ystate : (Models.Session.Window)) (_yinput : Nat) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && (__fits_11 (_ystate) (_yinput))) + +attribute [local irreducible] Models.Session.SessionStep in +theorem __rel_9 (_ystate : (Models.Session.Window)) (_yinput : Nat) : _root_.LexLeanPreservation.FunRel __prog 9 [(__enc_0 _ystate), (_root_.LexLeanTarget.TargetSyntax.Value.nat _yinput)] (_root_.LexLeanPreservation.Rel (__fits_9 _ystate _yinput) ((_root_.LexLeanPreservation.encPair __enc_0 _root_.LexLeanTarget.TargetSyntax.Value.nat) (Models.Session.SessionModel _ystate _yinput))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_11 (_ystate) (_yinput))) + +def __fits_5 (_yacc : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat)))) (_yitem : Nat) : Bool := + (Bool.true && (match _yacc with | Except.error _yviolation => Bool.true | Except.ok _ystate => (((Bool.true && Bool.true) && (__fits_7 ((_ystate).1))) && (if (Models.Session.boundedCheck ((_ystate).1)) then (((Bool.true && (Bool.true && Bool.true)) && (__fits_8 ((_ystate).1) (_yitem))) && (if (Models.Session.affordableCheck ((_ystate).1) (_yitem)) then (((Bool.true && (Bool.true && Bool.true)) && (__fits_9 ((_ystate).1) (_yitem))) && (let _ystep : (Prod (Models.Session.Window) Nat) := (Models.Session.SessionModel ((_ystate).1) (_yitem)); ((((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) + +attribute [local irreducible] Models.Session.SessionModel Models.Session.affordableCheck Models.Session.boundedCheck in +theorem __rel_5 (_yacc : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat)))) (_yitem : Nat) : _root_.LexLeanPreservation.FunRel __prog 5 [((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair __enc_0 (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat))) _yacc), (_root_.LexLeanTarget.TargetSyntax.Value.nat _yitem)] (_root_.LexLeanPreservation.Rel (__fits_5 _yacc _yitem) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair __enc_0 (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat))) ((match _yacc with | Except.error _yviolation => _yacc | Except.ok _ystate => (if (Models.Session.boundedCheck ((_ystate).1)) then (if (Models.Session.affordableCheck ((_ystate).1) (_yitem)) then (let _ystep : (Prod (Models.Session.Window) Nat) := (Models.Session.SessionModel ((_ystate).1) (_yitem)); (Except.ok (((_ystep).1, (_root_.LexLeanRuntime.append ((_ystate).2) (((_ystep).2 :: ([] : List Nat))) : (List Nat)))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat))))) else (Except.error (((Bool.false, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat))))) else (Except.error (((Bool.false, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat))))))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair __enc_0 (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat))) (fun (__a : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat)))) => (match __a with | Except.error _yviolation => Bool.true | Except.ok _ystate => (((Bool.true && Bool.true) && (__fits_7 ((_ystate).1))) && (if (Models.Session.boundedCheck ((_ystate).1)) then (((Bool.true && (Bool.true && Bool.true)) && (__fits_8 ((_ystate).1) (_yitem))) && (if (Models.Session.affordableCheck ((_ystate).1) (_yitem)) then (((Bool.true && (Bool.true && Bool.true)) && (__fits_9 ((_ystate).1) (_yitem))) && (let _ystep : (Prod (Models.Session.Window) Nat) := (Models.Session.SessionModel ((_ystate).1) (_yitem)); ((((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) (fun (__a : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat)))) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair __enc_0 (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat))) (match __a with | Except.error _yviolation => _yacc | Except.ok _ystate => (if (Models.Session.boundedCheck ((_ystate).1)) then (if (Models.Session.affordableCheck ((_ystate).1) (_yitem)) then (let _ystep : (Prod (Models.Session.Window) Nat) := (Models.Session.SessionModel ((_ystate).1) (_yitem)); (Except.ok (((_ystep).1, (_root_.LexLeanRuntime.append ((_ystate).2) (((_ystep).2 :: ([] : List Nat))) : (List Nat)))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat))))) else (Except.error (((Bool.false, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat))))) else (Except.error (((Bool.false, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat))))))) _yacc (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat)))) _ => match __a with | Except.error _yviolation => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | Except.ok _ystate => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (Bool.true && Bool.true)) && (__fits_8 ((_ystate).1) (_yitem))) && (if (Models.Session.affordableCheck ((_ystate).1) (_yitem)) then (((Bool.true && (Bool.true && Bool.true)) && (__fits_9 ((_ystate).1) (_yitem))) && (let _ystep : (Prod (Models.Session.Window) Nat) := (Models.Session.SessionModel ((_ystate).1) (_yitem)); ((((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair __enc_0 (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat))) (if __b then (if (Models.Session.affordableCheck ((_ystate).1) (_yitem)) then (let _ystep : (Prod (Models.Session.Window) Nat) := (Models.Session.SessionModel ((_ystate).1) (_yitem)); (Except.ok (((_ystep).1, (_root_.LexLeanRuntime.append ((_ystate).2) (((_ystep).2 :: ([] : List Nat))) : (List Nat)))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat))))) else (Except.error (((Bool.false, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat))))) else (Except.error (((Bool.false, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat)))))) (Models.Session.boundedCheck ((_ystate).1)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil) (__rel_7 ((_ystate).1))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (Bool.true && Bool.true)) && (__fits_9 ((_ystate).1) (_yitem))) && (let _ystep : (Prod (Models.Session.Window) Nat) := (Models.Session.SessionModel ((_ystate).1) (_yitem)); ((((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair __enc_0 (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat))) (if __b then (let _ystep : (Prod (Models.Session.Window) Nat) := (Models.Session.SessionModel ((_ystate).1) (_yitem)); (Except.ok (((_ystep).1, (_root_.LexLeanRuntime.append ((_ystate).2) (((_ystep).2 :: ([] : List Nat))) : (List Nat)))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat))))) else (Except.error (((Bool.false, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat)))))) (Models.Session.affordableCheck ((_ystate).1) (_yitem)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_8 ((_ystate).1) (_yitem))) (fun _ => (let _ystep : (Prod (Models.Session.Window) Nat) := (Models.Session.SessionModel ((_ystate).1) (_yitem)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_9 ((_ystate).1) (_yitem))) (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (_ystate).2 ((_ystep).2 :: ([] : List Nat)))) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error))))))) + +def __fits_10 : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_10 : _root_.LexLeanPreservation.FunRel __prog 10 [] (_root_.LexLeanPreservation.Rel (__fits_10) (__enc_0 (Models.Session.SessionStep.initial))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_adt) + +def __fits_6 : Bool := + (Bool.true && (__fits_10)) + +attribute [local irreducible] Models.Session.SessionStep.initial in +theorem __rel_6 : _root_.LexLeanPreservation.FunRel __prog 6 [] (_root_.LexLeanPreservation.Rel (__fits_6) (__enc_0 (Models.Session.SessionModel.initial))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call _root_.LexLeanPreservation.convL_nil (__rel_10)) + +def __fits_3 (costs : (List Nat)) : Bool := + (((Bool.true && ((((((Bool.true && (__fits_6)) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat)))) (__p1 : Nat) => __fits_5 __p0 __p1) ((fun (_yacc : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat)))) (_yitem : Nat) => (match _yacc with | Except.error _yviolation => _yacc | Except.ok _ystate => (if (Models.Session.boundedCheck ((_ystate).1)) then (if (Models.Session.affordableCheck ((_ystate).1) (_yitem)) then (let _ystep : (Prod (Models.Session.Window) Nat) := (Models.Session.SessionModel ((_ystate).1) (_yitem)); (Except.ok (((_ystep).1, (_root_.LexLeanRuntime.append ((_ystate).2) (((_ystep).2 :: ([] : List Nat))) : (List Nat)))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat))))) else (Except.error (((Bool.false, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat))))) else (Except.error (((Bool.false, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat)))))))) ((Except.ok (((Models.Session.SessionModel.initial), ([] : List Nat))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat))))) (costs))) && (let _yscanned : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat))) := (_root_.LexLeanCollections.listFold ((fun (_yacc : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat)))) (_yitem : Nat) => (match _yacc with | Except.error _yviolation => _yacc | Except.ok _ystate => (if (Models.Session.boundedCheck ((_ystate).1)) then (if (Models.Session.affordableCheck ((_ystate).1) (_yitem)) then (let _ystep : (Prod (Models.Session.Window) Nat) := (Models.Session.SessionModel ((_ystate).1) (_yitem)); (Except.ok (((_ystep).1, (_root_.LexLeanRuntime.append ((_ystate).2) (((_ystep).2 :: ([] : List Nat))) : (List Nat)))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat))))) else (Except.error (((Bool.false, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat))))) else (Except.error (((Bool.false, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat)))))))) ((Except.ok (((Models.Session.SessionModel.initial), ([] : List Nat))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat))))) (costs) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat)))); (Bool.true && (match _yscanned with | Except.error _yviolation => ((Bool.true && Bool.true) && Bool.true) | Except.ok _ystate => ((Bool.true && Bool.true) && Bool.true))))) + +attribute [local irreducible] Models.Session.SessionModel Models.Session.SessionModel.initial Models.Session.affordableCheck Models.Session.boundedCheck in +theorem __rel_3 (costs : (List Nat)) : _root_.LexLeanPreservation.FunRel __prog 3 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) costs)] (_root_.LexLeanPreservation.Rel (__fits_3 costs) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Models.Pipeline.SessionStream costs))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (let _yscanned : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat))) := (_root_.LexLeanCollections.listFold ((fun (_yacc : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat)))) (_yitem : Nat) => (match _yacc with | Except.error _yviolation => _yacc | Except.ok _ystate => (if (Models.Session.boundedCheck ((_ystate).1)) then (if (Models.Session.affordableCheck ((_ystate).1) (_yitem)) then (let _ystep : (Prod (Models.Session.Window) Nat) := (Models.Session.SessionModel ((_ystate).1) (_yitem)); (Except.ok (((_ystep).1, (_root_.LexLeanRuntime.append ((_ystate).2) (((_ystep).2 :: ([] : List Nat))) : (List Nat)))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat))))) else (Except.error (((Bool.false, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat))))) else (Except.error (((Bool.false, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat)))))))) ((Except.ok (((Models.Session.SessionModel.initial), ([] : List Nat))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat))))) (costs) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat)))); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call _root_.LexLeanPreservation.convL_nil (__rel_6)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.nat) (es := (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair __enc_0 (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)))) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) ((fun (_yacc : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat)))) (_yitem : Nat) => (match _yacc with | Except.error _yviolation => _yacc | Except.ok _ystate => (if (Models.Session.boundedCheck ((_ystate).1)) then (if (Models.Session.affordableCheck ((_ystate).1) (_yitem)) then (let _ystep : (Prod (Models.Session.Window) Nat) := (Models.Session.SessionModel ((_ystate).1) (_yitem)); (Except.ok (((_ystep).1, (_root_.LexLeanRuntime.append ((_ystate).2) (((_ystep).2 :: ([] : List Nat))) : (List Nat)))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat))))) else (Except.error (((Bool.false, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat))))) else (Except.error (((Bool.false, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat)))))))) (fun (__p0 : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat)))) (__p1 : Nat) => __fits_5 __p0 __p1) 5 [] (fun (__p0 : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat)))) (__p1 : Nat) => __rel_5 __p0 __p1) (p := __prog) (fi := 4) (ta := .nat) (ts := (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool))) rfl ((Except.ok (((Models.Session.SessionModel.initial), ([] : List Nat))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat))))) (costs))) (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair __enc_0 (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat))) (fun (__a : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat)))) => (match __a with | Except.error _yviolation => ((Bool.true && Bool.true) && Bool.true) | Except.ok _ystate => ((Bool.true && Bool.true) && Bool.true))) (fun (__a : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat)))) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) (match __a with | Except.error _yviolation => (Except.error (_yviolation) : (Except (Prod Bool Bool) (List Nat))) | Except.ok _ystate => (Except.ok ((_ystate).2) : (Except (Prod Bool Bool) (List Nat))))) _yscanned (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (Except (Prod Bool Bool) (Prod (Models.Session.Window) (List Nat)))) _ => match __a with | Except.error _yviolation => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)) | Except.ok _ystate => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok)))))) + +def __fits_2 (_yinput : (List Nat)) : Bool := + ((Bool.true && Bool.true) && (__fits_3 (_yinput))) + +attribute [local irreducible] Models.Pipeline.SessionStream in +theorem __rel_2 (_yinput : (List Nat)) : _root_.LexLeanPreservation.FunRel __prog 2 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) _yinput)] (_root_.LexLeanPreservation.Rel (__fits_2 _yinput) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Models.Pipeline.StreamModel _yinput))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_3 (_yinput))) + +def __fits_0 (costs : (List Nat)) : Bool := + (Bool.true && (let _ychecked1_input : (List Nat) := costs; (((Bool.true && Bool.true) && (__fits_1 (_ychecked1_input))) && (if (Models.Pipeline.shortStreamCheck (_ychecked1_input)) then (((Bool.true && Bool.true) && (__fits_2 (_ychecked1_input))) && (let _ychecked1_output : (Except (Prod Bool Bool) (List Nat)) := (Models.Pipeline.StreamModel (_ychecked1_input)); ((Bool.true && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) + +attribute [local irreducible] Models.Pipeline.StreamModel Models.Pipeline.shortStreamCheck in +theorem __rel_0 (costs : (List Nat)) : _root_.LexLeanPreservation.FunRel __prog 0 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) costs)] (_root_.LexLeanPreservation.Rel (__fits_0 costs) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat))) (Models.Main.admitCosts costs))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (let _ychecked1_input : (List Nat) := costs; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && (__fits_2 (_ychecked1_input))) && (let _ychecked1_output : (Except (Prod Bool Bool) (List Nat)) := (Models.Pipeline.StreamModel (_ychecked1_input)); ((Bool.true && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat))) (if __b then (let _ychecked1_output : (Except (Prod Bool Bool) (List Nat)) := (Models.Pipeline.StreamModel (_ychecked1_input)); (Except.ok (_ychecked1_output) : (Except (Prod Bool Bool) (Except (Prod Bool Bool) (List Nat))))) else (Except.error (((Bool.false, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Except (Prod Bool Bool) (List Nat)))))) (Models.Pipeline.shortStreamCheck (_ychecked1_input)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_1 (_ychecked1_input))) (fun _ => (let _ychecked1_output : (Except (Prod Bool Bool) (List Nat)) := (Models.Pipeline.StreamModel (_ychecked1_input)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_2 (_ychecked1_input))) (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)))) + +def denote (costs : (List Nat)) : _root_.LexLeanPreservation.Obs := + _root_.cond (__fits_0 costs) (_root_.LexLeanPreservation.Obs.value (((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat))) (Models.Main.admitCosts costs)))) _root_.LexLeanPreservation.Obs.overflow + +theorem root (costs : (List Nat)) : _root_.LexLeanPreservation.RunConv __prog 0 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) costs)] (_root_.LexLeanPreservation.Rel (__fits_0 costs) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat))) (Models.Main.admitCosts costs))) := + _root_.LexLeanPreservation.run_of_funRel (__rel_0 costs) + +end LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3 diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R3/Compose/RustStd.lex.tex b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R3/Compose/RustStd.lex.tex new file mode 100644 index 000000000..ad33de914 --- /dev/null +++ b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R3/Compose/RustStd.lex.tex @@ -0,0 +1,600 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3, + LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.Compose.RustStd.__wt_0 : @16 := @440 { + all: [LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.Compose.RustStd.__wt_0], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.Compose.RustStd.root : @1207 := @1208 { + all: [LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.RustStd.program +@1 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.RustStd.krate +@2 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.RustStd.flags +@3 := Models.Session.Window +@4 := #0 +@6 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.__enc_0 @4 +@7 := LexLeanPreservation.Rust.WT +@8 := LexLeanTarget.TargetSyntax.Ty.adt +@9 := 0 +@10 := @8 @9 +@11 := @7 @0 +@12 := @11 @1 +@13 := @12 @2 +@16 := (__s : @3) -> @13 @6 @10 +@17 := Models.Session.Window.used +@18 := @17 @4 +@19 := Models.Session.Window.items +@20 := @19 @4 +@21 := LexLeanTarget.TargetSyntax.Value.nat +@22 := @21 @18 +@23 := LexLeanTarget.TargetSyntax.Ty.nat +@24 := LexLeanTarget.TargetSyntax.Program +@25 := LexLeanPreservation.Rust.RCrate +@26 := LexLeanPreservation.Rust.Flags +@27 := Nat +@28 := #3 +@29 := @7 @28 +@30 := #2 +@31 := @29 @30 +@32 := #1 +@33 := @31 @32 +@34 := @21 @4 +@40 := {p : @24} -> {c : @25} -> {A : @26} -> (n : @27) -> @33 @34 @23 +@42 := LexLeanPreservation.Rust.wt_nat @0 +@49 := {c : @25} -> {A : @26} -> (n : @27) -> @11 @30 @32 @34 @23 +@50 := @42 @1 +@55 := {A : @26} -> (n : @27) -> @12 @32 @34 @23 +@56 := @50 @2 +@57 := @13 @34 +@58 := @57 @23 +@59 := (n : @27) -> @58 +@60 := @56 @18 +@62 := @13 @22 @23 +@63 := @21 @20 +@64 := @56 @20 +@66 := @13 @63 @23 +@67 := LexLeanTarget.TargetSyntax.Value +@68 := LexLeanTarget.TargetSyntax.Ty +@69 := List.nil.{0} +@70 := List.cons.{0} +@71 := @69 @67 +@72 := @70 @67 +@74 := @72 @63 @71 +@76 := @72 @22 @74 +@77 := @69 @68 +@78 := @70 @68 +@79 := @78 @23 +@80 := @79 @77 +@81 := @79 @80 +@82 := LexLeanPreservation.Rust.WTL +@90 := {p : @24} -> {c : @25} -> {A : @26} -> @82 @30 @32 @4 @71 @77 +@92 := LexLeanPreservation.Rust.wtl_nil @0 +@93 := @82 @0 +@99 := {c : @25} -> {A : @26} -> @93 @32 @4 @71 @77 +@100 := @92 @1 +@101 := @93 @1 +@105 := {A : @26} -> @101 @4 @71 @77 +@106 := @100 @2 +@107 := @101 @2 +@108 := @107 @71 +@109 := @108 @77 +@110 := List.{0} +@111 := @110 @67 +@112 := @110 @68 +@113 := #6 +@114 := @7 @113 +@115 := #5 +@116 := @114 @115 +@117 := #4 +@118 := @116 @117 +@120 := @118 @28 @30 +@121 := #7 +@126 := @82 @121 @113 @115 @30 @32 +@127 := #8 +@130 := @82 @127 @121 @113 +@132 := @72 @115 @28 +@133 := @130 @132 +@135 := @78 @117 @30 +@145 := {p : @24} -> + {c : @25} -> + {A : @26} -> + {v : @67} -> {t : @68} -> {vs : @111} -> {ts : @112} -> (h : @120) -> (hs : @126) -> @133 @135 +@147 := LexLeanPreservation.Rust.wtl_cons @0 +@149 := @11 @115 @117 +@151 := @149 @28 @30 +@155 := @93 @113 @115 @30 @32 +@167 := {c : @25} -> + {A : @26} -> + {v : @67} -> + {t : @68} -> {vs : @111} -> {ts : @112} -> (h : @151) -> (hs : @155) -> @93 @121 @113 @132 @135 +@168 := @147 @1 +@169 := @12 @117 +@171 := @169 @28 @30 +@174 := @101 @115 @30 @32 +@184 := {A : @26} -> + {v : @67} -> + {t : @68} -> {vs : @111} -> {ts : @112} -> (h : @171) -> (hs : @174) -> @101 @113 @132 @135 +@185 := @168 @2 +@187 := @13 @28 @30 +@189 := @107 @30 @32 +@197 := {v : @67} -> + {t : @68} -> {vs : @111} -> {ts : @112} -> (h : @187) -> (hs : @189) -> @107 @132 @135 +@198 := @185 @63 +@200 := @21 (@19 @28) +@213 := {t : @68} -> + {vs : @111} -> + {ts : @112} -> (h : @13 @200 @30) -> (hs : @189) -> @107 (@72 (@21 (@19 @115)) @28) @135 +@214 := @198 @23 +@216 := @21 (@19 @30) +@218 := @13 @216 @23 +@223 := @107 (@72 (@21 (@19 @117)) @28) +@224 := @79 @30 +@229 := {vs : @111} -> {ts : @112} -> (h : @218) -> (hs : @189) -> @223 @224 +@230 := @214 @71 +@232 := @21 (@19 @32) +@234 := @13 @232 @23 +@235 := @108 @32 +@237 := @72 @200 @71 +@242 := {ts : @112} -> (h : @234) -> (hs : @235) -> @107 @237 @224 +@243 := @230 @77 +@245 := @72 @216 @71 +@246 := @107 @245 +@249 := (h : @66) -> (hs : @109) -> @246 @80 +@250 := @243 @64 +@252 := @72 @232 @71 +@254 := @107 @252 @80 +@255 := (hs : @109) -> @254 +@256 := @250 @106 +@258 := @107 @74 @80 +@259 := @185 @22 +@261 := @21 (@17 @28) +@274 := {t : @68} -> + {vs : @111} -> + {ts : @112} -> (h : @13 @261 @30) -> (hs : @189) -> @107 (@72 (@21 (@17 @115)) @28) @135 +@275 := @259 @23 +@277 := @21 (@17 @30) +@289 := {vs : @111} -> + {ts : @112} -> (h : @13 @277 @23) -> (hs : @189) -> @107 (@72 (@21 (@17 @117)) @28) @224 +@290 := @275 @74 +@292 := @21 (@17 @32) +@294 := @13 @292 @23 +@295 := @246 @32 +@297 := @72 @261 @237 +@302 := {ts : @112} -> (h : @294) -> (hs : @295) -> @107 @297 @224 +@303 := @290 @80 +@305 := @72 @277 @245 +@306 := @107 @305 +@309 := (h : @62) -> (hs : @254) -> @306 @81 +@310 := @303 @60 +@312 := @72 @292 @252 +@314 := @107 @312 @81 +@315 := (hs : @258) -> @314 +@316 := @310 @256 +@318 := @107 @76 @81 +@319 := Eq.{1} +@320 := Option.{0} +@321 := @320 @112 +@322 := @319 @321 +@323 := LexLeanPreservation.Rust.adtFields +@327 := @322 (@323 @113 @28 @30) +@328 := Option.some.{0} +@329 := @328 @112 +@330 := @329 @4 +@331 := @327 @330 +@334 := @7 @127 @121 @113 +@335 := LexLeanTarget.TargetSyntax.Value.adt +@337 := @335 @117 @28 +@338 := @334 @337 +@339 := @8 @115 +@349 := {p : @24} -> + {c : @25} -> + {A : @26} -> + {i : @27} -> {k : @27} -> {fs : @111} -> {tys : @112} -> (h : @331) -> (hf : @126) -> @338 @339 +@351 := LexLeanPreservation.Rust.wt_adt @0 +@352 := @323 @0 +@356 := @322 (@352 @28 @30) @330 +@368 := {c : @25} -> + {A : @26} -> + {i : @27} -> + {k : @27} -> {fs : @111} -> {tys : @112} -> (h : @356) -> (hf : @155) -> @11 @121 @113 @337 @339 +@369 := @351 @1 +@379 := {A : @26} -> + {i : @27} -> + {k : @27} -> {fs : @111} -> {tys : @112} -> (h : @356) -> (hf : @174) -> @12 @113 @337 @339 +@380 := @369 @2 +@381 := @13 @337 +@388 := {i : @27} -> + {k : @27} -> {fs : @111} -> {tys : @112} -> (h : @356) -> (hf : @189) -> @381 @339 +@389 := @380 @9 +@390 := @352 @9 +@399 := {k : @27} -> + {fs : @111} -> {tys : @112} -> (h : @322 (@390 @30) @330) -> (hf : @189) -> @381 @10 +@400 := @389 @9 +@401 := @390 @9 +@402 := @322 @401 +@403 := @402 @330 +@404 := @335 @9 +@411 := {fs : @111} -> {tys : @112} -> (h : @403) -> (hf : @189) -> @13 (@404 @28) @10 +@412 := @400 @76 +@419 := {tys : @112} -> (h : @403) -> (hf : @306 @32) -> @13 (@404 @297) @10 +@420 := @412 @81 +@427 := (h : @402 (@329 @81)) -> (hf : @314) -> @13 (@404 @305) @10 +@428 := Eq.refl.{1} +@431 := @420 (@428 @321 @401) +@435 := (hf : @318) -> @13 (@404 @312) @10 +@436 := @431 @316 +@439 := @13 (@404 @76) @10 +@440 := fun (__s : @3) => @436 +@441 := @110 @27 +@442 := LexLeanPreservation.encList +@443 := @442 @27 +@444 := @443 @21 +@445 := @444 @32 +@446 := LexLeanTarget.TargetSyntax.Ty.list +@447 := @446 @23 +@449 := fun (__x : @27) => @56 @4 +@450 := Sort 1 +@451 := (a._@._internal._hyg.#0 : @4) -> @67 +@452 := @30 @4 +@455 := (x : @30) -> @118 @452 @32 +@456 := @110 @28 +@459 := @7 @121 @113 @115 +@462 := @442 @117 @28 @4 +@463 := @459 @462 +@464 := @446 @30 +@473 := {p : @24} -> + {c : @25} -> + {A : @26} -> {α : @450} -> {e : @451} -> {t : @68} -> (h : @455) -> (xs : @456) -> @463 @464 +@475 := LexLeanPreservation.Rust.wt_encList @0 +@489 := {c : @25} -> + {A : @26} -> + {α : @450} -> + {e : @451} -> + {t : @68} -> (h : (x : @30) -> @149 @452 @32) -> (xs : @456) -> @11 @113 @115 @462 @464 +@490 := @475 @1 +@502 := {A : @26} -> + {α : @450} -> + {e : @451} -> {t : @68} -> (h : (x : @30) -> @169 @452 @32) -> (xs : @456) -> @12 @115 @462 @464 +@503 := @490 @2 +@505 := @13 @452 @32 +@513 := {α : @450} -> + {e : @451} -> {t : @68} -> (h : (x : @30) -> @505) -> (xs : @456) -> @13 @462 @464 +@514 := @503 @27 +@524 := {e : (a._@._internal._hyg.#0 : @27) -> @67} -> + {t : @68} -> (h : (x : @27) -> @505) -> (xs : @441) -> @13 (@443 @28 @4) @464 +@525 := @514 @21 +@527 := (x : @27) -> @57 @32 +@528 := @444 @4 +@529 := @13 @528 +@533 := {t : @68} -> (h : @527) -> (xs : @441) -> @529 @464 +@534 := @525 @23 +@538 := (h : (x : @27) -> @58) -> (xs : @441) -> @529 @447 +@540 := @534 @449 @32 +@542 := @13 @445 @447 +@544 := @72 @445 @71 +@545 := Prod.{0, 0} +@547 := @545 @27 @67 +@551 := Prod.mk.{0, 0} @27 @67 @9 +@552 := @551 @445 +@553 := @69 @547 +@554 := @70 @547 +@556 := @554 @552 @553 +@557 := Bool.true +@558 := LexLeanTarget.TargetSyntax.Function +@559 := LexLeanTarget.TargetSyntax.Program.functions +@560 := @559 @0 +@561 := @69 @27 +@562 := LexLeanTarget.TargetSyntax.Ty.unit +@563 := LexLeanTarget.TargetSyntax.Value.unit +@566 := LexLeanTarget.TargetSyntax.Expr.value @562 @563 +@571 := LexLeanTarget.TargetSyntax.Function.mk @561 @77 @562 @566 +@576 := List.getD.{0} @558 @560 @9 @571 +@580 := fun (__e_n : @27) => LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.RustStd.root @4 @9 +@581 := @185 @445 +@582 := @444 @117 +@584 := @13 @582 @30 +@585 := @444 @113 +@586 := @72 @585 +@594 := {t : @68} -> {vs : @111} -> {ts : @112} -> (h : @584) -> (hs : @189) -> @107 (@586 @28) @135 +@595 := @581 @447 +@596 := @444 @28 +@598 := @13 @596 @447 +@599 := @444 @115 +@600 := @72 @599 +@602 := @107 (@600 @28) +@603 := @78 @447 +@604 := @603 @30 +@609 := {vs : @111} -> {ts : @112} -> (h : @598) -> (hs : @189) -> @602 @604 +@610 := @595 @71 +@611 := @444 @30 +@613 := @13 @611 @447 +@615 := @72 @582 @71 +@616 := @107 @615 +@620 := {ts : @112} -> (h : @613) -> (hs : @235) -> @616 @604 +@621 := @610 @77 +@623 := @72 @596 @71 +@624 := @107 @623 +@625 := @603 @77 +@628 := (h : @542) -> (hs : @109) -> @624 @625 +@629 := @621 @540 +@631 := @72 @611 @71 +@632 := @107 @631 +@634 := (hs : @109) -> @632 @625 +@635 := @629 @106 +@636 := @107 @544 +@637 := @636 @625 +@638 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.denote +@639 := @638 @32 +@640 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.__fits_0 +@641 := @640 @32 +@643 := Models.Main.admitCosts @32 +@644 := Bool +@646 := @545 @644 @644 +@649 := Except.{0, 0} @646 @441 +@650 := LexLeanTarget.TargetSyntax.Value.bool +@655 := LexLeanPreservation.encPair @644 @644 @650 @650 +@657 := LexLeanPreservation.encExcept @646 +@660 := @657 @441 @655 @444 +@664 := @657 @649 @655 @660 @643 +@666 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.root @32 +@667 := Ne.{1} +@668 := LexLeanPreservation.Obs +@669 := @667 @668 +@670 := LexLeanPreservation.Rel +@673 := @669 (@670 @32 @4) +@674 := LexLeanPreservation.Obs.stuck +@677 := (f : @644) -> (v : @67) -> @673 @674 +@679 := LexLeanPreservation.Rust.rel_ne_stuck @641 +@685 := (v : @67) -> @669 (@670 (@640 @30) @4) @674 +@686 := @679 @664 +@690 := @669 (@670 @641 @664) @674 +@691 := @110 @547 +@692 := LexLeanPreservation.Rust.FunSem +@693 := #9 +@699 := (n : @27) -> @692 @693 @127 @121 @4 @113 +@700 := @320 @558 +@701 := @319 @700 +@708 := LexLeanRuntime.index (@110 @558) @558 (LexLeanRuntime.instIndexableList @558) +@712 := @701 (@708 (@559 @693) @113) +@713 := @328 @558 +@714 := @713 @115 +@715 := @712 @714 +@716 := #10 +@720 := @82 @716 @693 @127 @115 +@721 := LexLeanTarget.TargetSyntax.Function.types +@722 := @721 @113 +@723 := @720 @722 +@724 := @320 @691 +@725 := @319 @724 +@726 := LexLeanTarget.TargetSemantics.bindAll +@727 := LexLeanTarget.TargetSyntax.Function.parameters +@732 := @725 (@726 (@727 @121) @113 @553) +@733 := @328 @691 +@734 := @733 @115 +@735 := @732 @734 +@736 := @320 @644 +@737 := @319 @736 +@738 := LexLeanPreservation.Rust.fnFallible +@739 := #11 +@742 := @737 (@738 @739 @693) +@743 := @328 @644 +@744 := @743 @115 +@745 := @742 @744 +@746 := LexLeanPreservation.RunConv +@747 := #13 +@751 := @746 @747 @716 @127 @115 +@753 := @669 @113 @674 +@754 := Exists.{1} +@755 := LexLeanPreservation.Rust.ROut +@756 := @754 @755 +@757 := And +@758 := LexLeanPreservation.Rust.RealizesFn +@762 := @757 (@758 @693 @127 @4) +@763 := LexLeanPreservation.Rust.RCI +@765 := @763 #15 +@766 := LexLeanPreservation.Rust.fnIdent +@767 := @766 @747 +@774 := (hne : @753) -> @756 (fun (ro : @755) => @762 (@765 @767 @739 @4)) +@789 := {p : @24} -> + {c : @25} -> + {A : @26} -> + {f : @27} -> + {fn : @558} -> + {args : @111} -> + {env : @691} -> + {F : @644} -> + {o : @668} -> + (hB : @699) -> + (hfn : @715) -> (hwt : @723) -> (hbind : @735) -> (hF : @745) -> (hA : @751) -> @774 +@791 := LexLeanPreservation.Rust.compose @0 +@792 := @692 @0 +@797 := (n : @27) -> @792 @127 @121 @4 @113 +@798 := @708 @560 +@801 := @701 (@798 @113) @714 +@805 := @93 @693 @127 @115 @722 +@806 := @746 @0 +@809 := @806 @716 @127 @115 +@823 := {c : @25} -> + {A : @26} -> + {f : @27} -> + {fn : @558} -> + {args : @111} -> + {env : @691} -> + {F : @644} -> + {o : @668} -> + (hB : @797) -> + (hfn : @801) -> (hwt : @805) -> (hbind : @735) -> (hF : @745) -> (hA : @809) -> @774 +@824 := @791 @1 +@825 := @792 @1 +@829 := (n : @27) -> @825 @121 @4 @113 +@832 := @101 @127 @115 @722 +@833 := @738 @1 +@836 := @737 (@833 @693) @744 +@837 := @763 @1 +@847 := (hbind : @735) -> + (hF : @836) -> (hA : @809) -> (hne : @753) -> @756 (fun (ro : @755) => @762 (@837 @767 @739 @4)) +@857 := {A : @26} -> + {f : @27} -> + {fn : @558} -> + {args : @111} -> + {env : @691} -> {F : @644} -> {o : @668} -> (hB : @829) -> (hfn : @801) -> (hwt : @832) -> @847 +@858 := @824 @2 +@860 := @825 @2 @4 +@862 := (n : @27) -> @860 @113 +@863 := @107 @115 +@864 := @863 @722 +@873 := {f : @27} -> + {fn : @558} -> + {args : @111} -> + {env : @691} -> {F : @644} -> {o : @668} -> (hB : @862) -> (hfn : @801) -> (hwt : @864) -> @847 +@874 := @858 @9 +@876 := (n : @27) -> @860 @9 +@877 := @798 @9 +@878 := @701 @877 +@879 := @878 @714 +@880 := @833 @9 +@881 := @737 @880 +@882 := @881 @744 +@883 := @806 @9 +@885 := @883 @127 @115 +@887 := @837 (@766 @9) +@895 := (hF : @882) -> (hA : @885) -> (hne : @753) -> @756 (fun (ro : @755) => @762 (@887 @739 @4)) +@904 := {fn : @558} -> + {args : @111} -> + {env : @691} -> + {F : @644} -> {o : @668} -> (hB : @876) -> (hfn : @879) -> (hwt : @864) -> (hbind : @735) -> @895 +@905 := @874 @576 +@907 := @878 (@713 @576) +@908 := @721 @576 +@909 := @863 @908 +@911 := @726 (@727 @576) +@923 := {args : @111} -> + {env : @691} -> + {F : @644} -> + {o : @668} -> + (hB : @876) -> (hfn : @907) -> (hwt : @909) -> (hbind : @725 (@911 @113 @553) @734) -> @895 +@924 := @905 @544 +@925 := @586 @71 +@927 := @107 @925 @908 +@930 := @72 (@444 @121) @71 +@934 := @725 (@911 @930 @553) @734 +@937 := @72 (@444 @693) @71 +@958 := {env : @691} -> + {F : @644} -> + {o : @668} -> + (hB : @876) -> + (hfn : @907) -> + (hwt : @927) -> + (hbind : @934) -> + (hF : @882) -> + (hA : @883 @937 @115) -> + (hne : @753) -> @756 (fun (ro : @755) => @762 (@887 (@72 (@444 #12) @71) @4)) +@959 := @924 @556 +@960 := @600 @71 +@962 := @107 @960 @908 +@970 := @725 (@911 @925 @553) (@733 (@554 (@551 @585) @553)) +@973 := @72 (@444 @127) @71 +@992 := {F : @644} -> + {o : @668} -> + (hB : @876) -> + (hfn : @907) -> + (hwt : @962) -> + (hbind : @970) -> + (hF : @882) -> + (hA : @883 @973 @115) -> + (hne : @753) -> @756 (fun (ro : @755) => @762 (@887 (@72 (@444 @739) @71) @4)) +@993 := @959 @557 +@994 := @616 @908 +@1002 := @725 (@911 @960 @553) (@733 (@554 (@551 @599) @553)) +@1004 := @881 (@743 @557) +@1006 := @883 @930 @115 +@1007 := @758 @557 +@1026 := {o : @668} -> + (hB : @876) -> + (hfn : @907) -> + (hwt : @994) -> + (hbind : @1002) -> + (hF : @1004) -> + (hA : @1006) -> + (hne : @753) -> @756 (fun (ro : @755) => @757 (@1007 @127 @4) (@887 (@72 (@444 @716) @71) @4)) +@1027 := @993 @639 +@1028 := @624 @908 +@1036 := @725 (@911 @615 @553) (@733 (@554 (@551 @582) @553)) +@1037 := @883 @925 +@1038 := @638 @113 +@1039 := @1037 @1038 +@1040 := @638 @121 +@1058 := (hB : @876) -> + (hfn : @907) -> + (hwt : @1028) -> + (hbind : @1036) -> + (hF : @1004) -> + (hA : @1039) -> + (hne : @669 @1040 @674) -> @756 (fun (ro : @755) => @757 (@1007 (@638 @693) @4) (@887 @937 @4)) +@1059 := @1027 @580 +@1060 := @632 @908 +@1068 := @725 (@911 @623 @553) (@733 (@554 (@551 @596) @553)) +@1069 := @883 @960 +@1070 := @638 @115 +@1088 := (hfn : @907) -> + (hwt : @1060) -> + (hbind : @1068) -> + (hF : @1004) -> + (hA : @1069 @1070) -> + (hne : @669 @1038 @674) -> @756 (fun (ro : @755) => @757 (@1007 (@638 @127) @4) (@887 @973 @4)) +@1091 := @1059 (@428 @700 @877) +@1092 := @636 @908 +@1100 := @725 (@911 @631 @553) (@733 (@554 (@551 @611) @553)) +@1101 := @883 @615 +@1102 := @638 @117 +@1118 := (hwt : @1092) -> + (hbind : @1100) -> + (hF : @1004) -> + (hA : @1101 @1102) -> + (hne : @669 @1070 @674) -> @756 (fun (ro : @755) => @757 (@1007 @1040 @4) (@887 @930 @4)) +@1119 := @1091 @635 +@1121 := @911 @544 @553 +@1124 := @725 @1121 (@733 @556) +@1125 := @883 @623 +@1126 := @638 @28 +@1141 := (hbind : @1124) -> + (hF : @1004) -> + (hA : @1125 @1126) -> + (hne : @669 @1102 @674) -> @756 (fun (ro : @755) => @757 (@1007 @1038 @4) (@887 @925 @4)) +@1144 := @1119 (@428 @724 @1121) +@1145 := @883 @631 +@1146 := @638 @30 +@1160 := (hF : @1004) -> + (hA : @1145 @1146) -> + (hne : @669 @1126 @674) -> @756 (fun (ro : @755) => @757 (@1007 @1070 @4) (@887 @960 @4)) +@1163 := @1144 (@428 @736 @880) +@1177 := (hA : @883 @544 @639) -> + (hne : @669 @1146 @674) -> @756 (fun (ro : @755) => @757 (@1007 @1102 @4) (@887 @615 @4)) +@1178 := @1163 @666 +@1189 := (hne : @669 @639 @674) -> @756 (fun (ro : @755) => @757 (@1007 @1126 @4) (@887 @623 @4)) +@1190 := @1178 @686 +@1196 := @757 (@1007 @1146 @4) (@887 @631 @4) +@1198 := @756 (fun (ro : @755) => @1196) +@1200 := @756 (fun (__e_ro : @755) => @1196) +@1204 := LexLeanPreservation.Rust.RepresentableL (@72 @528 @71) +@1205 := (__e_hrep : @1204) -> @1200 +@1206 := fun (__e_hrep : @1204) => @1190 +@1207 := (costs : @441) -> @1205 +@1208 := fun (costs : @441) => @1206 +\end{coremodule} +\end{lexlean} diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R3/RustStd.lean b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R3/RustStd.lean new file mode 100644 index 000000000..5a8e07891 --- /dev/null +++ b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R3/RustStd.lean @@ -0,0 +1,124 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [{ constructors := [[.nat, .nat]] }], functions := [ + { parameters := [0], types := [(.list .nat)], result := (.result (.result (.list .nat) (.pair .bool .bool)) (.pair .bool .bool)), + body := (.«let» 1 (.list .nat) (.var 0) (.cond (.call 1 [(.var 1)]) (.«let» 2 (.result (.list .nat) (.pair .bool .bool)) (.call 2 [(.var 1)]) (.build .ok (.result (.result (.list .nat) (.pair .bool .bool)) (.pair .bool .bool)) [(.var 2)])) (.build .error (.result (.result (.list .nat) (.pair .bool .bool)) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])]))) }, + { parameters := [0], types := [(.list .nat)], result := .bool, + body := (.prim .natLt [(.prim .length [(.var 0)]), (.value .nat (.nat 1001))]) }, + { parameters := [0], types := [(.list .nat)], result := (.result (.list .nat) (.pair .bool .bool)), + body := (.call 3 [(.var 0)]) }, + { parameters := [0], types := [(.list .nat)], result := (.result (.list .nat) (.pair .bool .bool)), + body := (.«let» 1 (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) (.call 4 [(.closure 5 []), (.build .ok (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.build .pair (.pair (.adt 0) (.list .nat)) [(.call 6 []), (.build .nil (.list .nat) [])])]), (.var 0)]) (.«match» (.result (.list .nat) (.pair .bool .bool)) (.var 1) [(.arm .error [2] (.build .error (.result (.list .nat) (.pair .bool .bool)) [(.var 2)])), (.arm .ok [3] (.build .ok (.result (.list .nat) (.pair .bool .bool)) [(.second (.var 3))]))])) }, + { parameters := [0, 1, 2], types := [(.fn [(.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), .nat] (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool))), (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), (.list .nat)], result := (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), + body := (.«match» (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 4 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, + { parameters := [0, 1], types := [(.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), .nat], result := (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), + body := (.«match» (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) (.var 0) [(.arm .error [2] (.var 0)), (.arm .ok [3] (.cond (.call 7 [(.first (.var 3))]) (.cond (.call 8 [(.first (.var 3)), (.var 1)]) (.«let» 4 (.pair (.adt 0) .nat) (.call 9 [(.first (.var 3)), (.var 1)]) (.build .ok (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.build .pair (.pair (.adt 0) (.list .nat)) [(.first (.var 4)), (.prim .append [(.second (.var 3)), (.build .cons (.list .nat) [(.second (.var 4)), (.build .nil (.list .nat) [])])])])])) (.build .error (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])])) (.build .error (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])])])))]) }, + { parameters := [], types := [], result := (.adt 0), + body := (.call 10 []) }, + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.prim .natLe [(.field (.var 0) 0), (.value .nat (.nat 64))]) }, + { parameters := [0, 1], types := [(.adt 0), .nat], result := .bool, + body := (.prim .natLe [(.var 1), (.value .nat (.nat 16))]) }, + { parameters := [0, 1], types := [(.adt 0), .nat], result := (.pair (.adt 0) .nat), + body := (.call 11 [(.var 0), (.var 1)]) }, + { parameters := [], types := [], result := (.adt 0), + body := (.build (.adt 0) (.adt 0) [(.value .nat (.nat 0)), (.value .nat (.nat 0))]) }, + { parameters := [0, 1], types := [(.adt 0), .nat], result := (.pair (.adt 0) .nat), + body := (.«let» 2 .nat (.prim .natAdd [(.field (.var 0) 0), (.var 1)]) (.build .pair (.pair (.adt 0) .nat) [(.build (.adt 0) (.adt 0) [(.prim .natSub [(.var 2), (.prim .natSub [(.var 2), (.value .nat (.nat 64))])]), (.prim .natAdd [(.field (.var 0) 1), (.value .nat (.nat 1))])]), (.prim .natSub [(.var 2), (.value .nat (.nat 64))])])) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.enum (.adt 0) [{ number := 0, fields := [.nat, .nat] }]), + (.enum (.fn 0) [{ number := 5, fields := [] }]), + (.apply 0 [(.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), .nat] (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) true [{ function := 5, captures := [], functionFallible := true }]), + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }] (.fallible (.result (.result (.list .nat) (.pair .bool .bool)) (.pair .bool .bool))) (.mk [(.mk (.bind (.generated .binding 1)) (some (.list .nat)) (.move (.generated .binding 0)))] (.cond (.call (.function 1) [(.clone (.generated .binding 1))] false) (.mk [(.mk (.bind (.generated .binding 2)) (some (.result (.list .nat) (.pair .bool .bool))) (.call (.function 2) [(.move (.generated .binding 1))] true))] (.succeed (.construct (.ok (.result (.list .nat) (.pair .bool .bool)) (.pair .bool .bool)) [(.move (.generated .binding 2))]))) (.mk [] (.succeed (.construct (.err (.result (.list .nat) (.pair .bool .bool)) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))])))))), + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }] .bool (.mk [(.mk (.bind (.generated .operand 2)) none (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthList) [(.move (.generated .operand 1))] false)))), (.mk (.bind (.generated .operand 3)) none (.lit (.nat 1001)))] (.call (.runtime .natLt) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] false))), + (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }] (.fallible (.result (.list .nat) (.pair .bool .bool))) (.mk [] (.call (.function 3) [(.move (.generated .binding 0))] false))), + (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }] (.fallible (.result (.list .nat) (.pair .bool .bool))) (.mk [(.mk (.bind (.generated .binding 1)) (some (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool))) (.call (.function 4) [(.construct (.closure 0 5) []), (.construct (.ok (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.pair (.call (.function 6) [] false) (.construct (.nil .nat) []))]), (.move (.generated .binding 0))] true)), (.mk (.bind (.generated .holder 4)) none (.move (.generated .binding 1)))] (.matchOn (.move (.generated .holder 4)) [(.mk (.ok (.bind (.generated .binding 3))) (.mk [] (.succeed (.construct (.ok (.list .nat) (.pair .bool .bool)) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 5))]) none (.move (.generated .binding 3)))] (.move (.generated .part 5))))])))), (.mk (.err (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct (.err (.list .nat) (.pair .bool .bool)) [(.copy (.generated .binding 2))]))))]))), + (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) }, { pattern := (.bind (.generated .binding 2)), type := (.list .nat) }] (.fallible (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool))) (.mk [(.mk (.bind (.generated .holder 6)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 6)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 4) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 7)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 7) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]))), + (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool))) (.mk [(.mk (.bind (.generated .holder 8)) none (.clone (.generated .binding 0)))] (.matchOn (.move (.generated .holder 8)) [(.mk (.ok (.bind (.generated .binding 3))) (.mk [] (.cond (.call (.function 7) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 9)), .wild]) none (.clone (.generated .binding 3)))] (.move (.generated .part 9))))] false) (.mk [] (.cond (.call (.function 8) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 10)), .wild]) none (.clone (.generated .binding 3)))] (.move (.generated .part 10)))), (.copy (.generated .binding 1))] false) (.mk [(.mk (.bind (.generated .binding 4)) (some (.pair (.adt 0) .nat)) (.call (.function 9) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 11)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 11)))), (.copy (.generated .binding 1))] true))] (.succeed (.construct (.ok (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 12)), .wild]) none (.move (.generated .binding 4)))] (.move (.generated .part 12)))) (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 13))]) none (.move (.generated .binding 3)))] (.move (.generated .part 13))))), (.mk (.bind (.generated .operand 16)) none (.construct .cons [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 14))]) none (.move (.generated .binding 4)))] (.move (.generated .part 14)))), (.construct (.nil .nat) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] false))))]))) (.mk [] (.succeed (.construct (.err (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))))) (.mk [] (.succeed (.construct (.err (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))])))))), (.mk (.err .wild) (.mk [] (.succeed (.move (.generated .binding 0)))))]))), + (.function (.generated .function 6) [] (.adt 0) (.mk [] (.call (.function 10) [] false))), + (.function (.generated .function 7) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .operand 18)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [(.bind (.generated .part 17)), .wild]) (.mk [] (.move (.generated .part 17))))])), (.mk (.bind (.generated .operand 19)) none (.lit (.nat 64)))] (.call (.runtime .natLe) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false))), + (.function (.generated .function 8) [{ pattern := .wild, type := (.adt 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .operand 20)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 21)) none (.lit (.nat 16)))] (.call (.runtime .natLe) [(.move (.generated .operand 20)), (.move (.generated .operand 21))] false))), + (.function (.generated .function 9) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.pair (.adt 0) .nat)) (.mk [] (.call (.function 11) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false))), + (.function (.generated .function 10) [] (.adt 0) (.mk [] (.construct (.adt 0 0) [(.lit (.nat 0)), (.lit (.nat 0))]))), + (.function (.generated .function 11) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.pair (.adt 0) .nat)) (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [(.bind (.generated .part 22)), .wild]) (.mk [] (.move (.generated .part 22))))])), (.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] true))))] (.succeed (.pair (.construct (.adt 0 0) [(.block (.mk [(.mk (.bind (.generated .operand 27)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 26)) none (.lit (.nat 64)))] (.call (.runtime .natSub) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))))] (.call (.runtime .natSub) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))), (.block (.mk [(.mk (.bind (.generated .operand 30)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 29))]) (.mk [] (.move (.generated .part 29))))])), (.mk (.bind (.generated .operand 31)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] true)))]) (.block (.mk [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 33)) none (.lit (.nat 64)))] (.call (.runtime .natSub) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] false)))))))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [(([(.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), .nat], (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool))), true)] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some (.list .nat)) (.move (.generated .binding 0)))], (.cond (.call (.function 1) [(.clone (.generated .binding 1))] false) (.mk [(.mk (.bind (.generated .binding 2)) (some (.result (.list .nat) (.pair .bool .bool))) (.call (.function 2) [(.move (.generated .binding 1))] true))] (.succeed (.construct (.ok (.result (.list .nat) (.pair .bool .bool)) (.pair .bool .bool)) [(.move (.generated .binding 2))]))) (.mk [] (.succeed (.construct (.err (.result (.list .nat) (.pair .bool .bool)) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))])))), [(0, (.list .nat), (some 0))], rfl, rfl, + (Corr.letBind (Corr.var rfl rfl) rfl (Corr.cond (lc := []) (ce := (.call (.function 1) [(.clone (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [(.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .binding 2)) (some (.result (.list .nat) (.pair .bool .bool))) (.call (.function 2) [(.move (.generated .binding 1))] true))]) (ta := (.succeed (.construct (.ok (.result (.list .nat) (.pair .bool .bool)) (.pair .bool .bool)) [(.move (.generated .binding 2))]))) (lb := []) (tb := (.succeed (.construct (.err (.result (.list .nat) (.pair .bool .bool)) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))) (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.fOfB (Corr.build (ts := [(.result (.list .nat) (.pair .bool .bool))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl))) (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)))))⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 2)) none (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthList) [(.move (.generated .operand 1))] false)))), (.mk (.bind (.generated .operand 3)) none (.lit (.nat 1001)))], (.call (.runtime .natLt) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] false), [(0, (.list .nat), (some 0))], rfl, rfl, + (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.move (.generated .binding 0)))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 1))] false)) (Corr.prim (ts := [(.list .nat)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 3) [(.move (.generated .binding 0))] false), [(0, (.list .nat), (some 0))], rfl, rfl, + (Corr.callF (ts := [(.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)⟩⟩ + +theorem fun3 : FunOK program krate flags 3 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool))) (.call (.function 4) [(.construct (.closure 0 5) []), (.construct (.ok (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.pair (.call (.function 6) [] false) (.construct (.nil .nat) []))]), (.move (.generated .binding 0))] true)), (.mk (.bind (.generated .holder 4)) none (.move (.generated .binding 1)))], (.matchOn (.move (.generated .holder 4)) [(.mk (.ok (.bind (.generated .binding 3))) (.mk [] (.succeed (.construct (.ok (.list .nat) (.pair .bool .bool)) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 5))]) none (.move (.generated .binding 3)))] (.move (.generated .part 5))))])))), (.mk (.err (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct (.err (.list .nat) (.pair .bool .bool)) [(.copy (.generated .binding 2))]))))]), [(0, (.list .nat), (some 0))], rfl, rfl, + (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), .nat] (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool))), (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.pair (.adt 0) (.list .nat))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := []) (Corr.opsNil) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) (Corr.lNil))) rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl (Corr.matchArms (st := (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool))) (U := []) (view := false) (idx := [1, 0]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(3, (.pair (.adt 0) (.list .nat)), (some 3)), (1, (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.construct (.ok (.list .nat) (.pair .bool .bool)) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 5))]) none (.move (.generated .binding 3)))] (.move (.generated .part 5))))]))) (Corr.mCons (Γ' := [(2, (.pair .bool .bool), (some 2)), (1, (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct (.err (.list .nat) (.pair .bool .bool)) [(.copy (.generated .binding 2))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.list .nat)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 5))]) none (.move (.generated .binding 3)))]) (tail := (.move (.generated .part 5))) (Corr.second (ta := (.adt 0)) (tb := (.list .nat)) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl))) rfl rfl rfl))⟩⟩ + +theorem fun4 : FunOK program krate flags 4 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 6)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 6)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 4) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 7)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 7) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]), [(2, (.list .nat), (some 2)), (1, (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), (some 1)), (0, (.fn [(.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), .nat] (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool))), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .nat), (some 2)), (1, (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), (some 1)), (0, (.fn [(.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), .nat] (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list .nat), (some 4)), (3, .nat, (some 3)), (2, (.list .nat), (some 2)), (1, (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), (some 1)), (0, (.fn [(.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), .nat] (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 4) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 7)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 7) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), .nat] (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool))), (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 7)) (some (.fn 0)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 7) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true)) (Corr.apply (ps := [(.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), .nat]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ + +theorem fun5 : FunOK program krate flags 5 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 8)) none (.clone (.generated .binding 0)))], (.matchOn (.move (.generated .holder 8)) [(.mk (.ok (.bind (.generated .binding 3))) (.mk [] (.cond (.call (.function 7) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 9)), .wild]) none (.clone (.generated .binding 3)))] (.move (.generated .part 9))))] false) (.mk [] (.cond (.call (.function 8) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 10)), .wild]) none (.clone (.generated .binding 3)))] (.move (.generated .part 10)))), (.copy (.generated .binding 1))] false) (.mk [(.mk (.bind (.generated .binding 4)) (some (.pair (.adt 0) .nat)) (.call (.function 9) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 11)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 11)))), (.copy (.generated .binding 1))] true))] (.succeed (.construct (.ok (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 12)), .wild]) none (.move (.generated .binding 4)))] (.move (.generated .part 12)))) (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 13))]) none (.move (.generated .binding 3)))] (.move (.generated .part 13))))), (.mk (.bind (.generated .operand 16)) none (.construct .cons [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 14))]) none (.move (.generated .binding 4)))] (.move (.generated .part 14)))), (.construct (.nil .nat) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] false))))]))) (.mk [] (.succeed (.construct (.err (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))))) (.mk [] (.succeed (.construct (.err (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))])))))), (.mk (.err .wild) (.mk [] (.succeed (.move (.generated .binding 0)))))]), [(1, .nat, (some 1)), (0, (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool))) (U := []) (view := false) (idx := [1, 0]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(3, (.pair (.adt 0) (.list .nat)), (some 3)), (1, .nat, (some 1)), (0, (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 7) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 9)), .wild]) none (.clone (.generated .binding 3)))] (.move (.generated .part 9))))] false) (.mk [] (.cond (.call (.function 8) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 10)), .wild]) none (.clone (.generated .binding 3)))] (.move (.generated .part 10)))), (.copy (.generated .binding 1))] false) (.mk [(.mk (.bind (.generated .binding 4)) (some (.pair (.adt 0) .nat)) (.call (.function 9) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 11)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 11)))), (.copy (.generated .binding 1))] true))] (.succeed (.construct (.ok (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 12)), .wild]) none (.move (.generated .binding 4)))] (.move (.generated .part 12)))) (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 13))]) none (.move (.generated .binding 3)))] (.move (.generated .part 13))))), (.mk (.bind (.generated .operand 16)) none (.construct .cons [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 14))]) none (.move (.generated .binding 4)))] (.move (.generated .part 14)))), (.construct (.nil .nat) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] false))))]))) (.mk [] (.succeed (.construct (.err (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))))) (.mk [] (.succeed (.construct (.err (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))]))))) (Corr.mCons (Γ' := [(2, (.pair .bool .bool), none), (1, .nat, (some 1)), (0, (.result (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 0)))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 7) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 9)), .wild]) none (.clone (.generated .binding 3)))] (.move (.generated .part 9))))] false)) (lk := []) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 9)), .wild]) none (.clone (.generated .binding 3)))]) (tail := (.move (.generated .part 9))) (Corr.first (ta := (.adt 0)) (tb := (.list .nat)) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 8) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 10)), .wild]) none (.clone (.generated .binding 3)))] (.move (.generated .part 10)))), (.copy (.generated .binding 1))] false) (.mk [(.mk (.bind (.generated .binding 4)) (some (.pair (.adt 0) .nat)) (.call (.function 9) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 11)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 11)))), (.copy (.generated .binding 1))] true))] (.succeed (.construct (.ok (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 12)), .wild]) none (.move (.generated .binding 4)))] (.move (.generated .part 12)))) (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 13))]) none (.move (.generated .binding 3)))] (.move (.generated .part 13))))), (.mk (.bind (.generated .operand 16)) none (.construct .cons [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 14))]) none (.move (.generated .binding 4)))] (.move (.generated .part 14)))), (.construct (.nil .nat) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] false))))]))) (.mk [] (.succeed (.construct (.err (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))))) (lb := []) (tb := (.succeed (.construct (.err (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))]))) (Corr.cond (lc := []) (ce := (.call (.function 8) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 10)), .wild]) none (.clone (.generated .binding 3)))] (.move (.generated .part 10)))), (.copy (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [(.adt 0), .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 10)), .wild]) none (.clone (.generated .binding 3)))]) (tail := (.move (.generated .part 10))) (Corr.first (ta := (.adt 0)) (tb := (.list .nat)) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .binding 4)) (some (.pair (.adt 0) .nat)) (.call (.function 9) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 11)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 11)))), (.copy (.generated .binding 1))] true))]) (ta := (.succeed (.construct (.ok (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 12)), .wild]) none (.move (.generated .binding 4)))] (.move (.generated .part 12)))) (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 13))]) none (.move (.generated .binding 3)))] (.move (.generated .part 13))))), (.mk (.bind (.generated .operand 16)) none (.construct .cons [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 14))]) none (.move (.generated .binding 4)))] (.move (.generated .part 14)))), (.construct (.nil .nat) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] false))))]))) (lb := []) (tb := (.succeed (.construct (.err (.pair (.adt 0) (.list .nat)) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))) (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0), .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 11)), .wild]) none (.move (.generated .binding 3)))]) (tail := (.move (.generated .part 11))) (Corr.first (ta := (.adt 0)) (tb := (.list .nat)) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl (Corr.fOfB (Corr.build (ts := [(.pair (.adt 0) (.list .nat))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 12)), .wild]) none (.move (.generated .binding 4)))]) (tail := (.move (.generated .part 12))) (Corr.first (ta := (.adt 0)) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 15)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 13))]) none (.move (.generated .binding 3)))] (.move (.generated .part 13))))), (.mk (.bind (.generated .operand 16)) none (.construct .cons [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 14))]) none (.move (.generated .binding 4)))] (.move (.generated .part 14)))), (.construct (.nil .nat) [])]))]) (tail := (.call (.runtime .appendList) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] false)) (Corr.prim (ts := [(.list .nat), (.list .nat)]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 13))]) none (.move (.generated .binding 3)))]) (tail := (.move (.generated .part 13))) (Corr.second (ta := (.adt 0)) (tb := (.list .nat)) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 14))]) none (.move (.generated .binding 4)))]) (tail := (.move (.generated .part 14))) (Corr.second (ta := (.adt 0)) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lNil))) rfl))) (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)))) (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl))))) rfl rfl rfl)⟩⟩ + +theorem fun6 : FunOK program krate flags 6 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 10) [] false), [], rfl, rfl, + (Corr.callOps (ts := []) (Corr.opsNil) rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun7 : FunOK program krate flags 7 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 18)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [(.bind (.generated .part 17)), .wild]) (.mk [] (.move (.generated .part 17))))])), (.mk (.bind (.generated .operand 19)) none (.lit (.nat 64)))], (.call (.runtime .natLe) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat]) (rd := (.move (.generated .part 17))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun8 : FunOK program krate flags 8 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 20)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 21)) none (.lit (.nat 16)))], (.call (.runtime .natLe) [(.move (.generated .operand 20)), (.move (.generated .operand 21))] false), [(1, .nat, (some 1)), (0, (.adt 0), none)], rfl, rfl, + (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun9 : FunOK program krate flags 9 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 11) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false), [(1, .nat, (some 1)), (0, (.adt 0), (some 0))], rfl, rfl, + (Corr.callF (ts := [(.adt 0), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)⟩⟩ + +theorem fun10 : FunOK program krate flags 10 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 0 0) [(.lit (.nat 0)), (.lit (.nat 0))]), [], rfl, rfl, + (Corr.build (ts := [.nat, .nat]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl)⟩⟩ + +theorem fun11 : FunOK program krate flags 11 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [(.bind (.generated .part 22)), .wild]) (.mk [] (.move (.generated .part 22))))])), (.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] true))))], (.succeed (.pair (.construct (.adt 0 0) [(.block (.mk [(.mk (.bind (.generated .operand 27)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 26)) none (.lit (.nat 64)))] (.call (.runtime .natSub) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))))] (.call (.runtime .natSub) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))), (.block (.mk [(.mk (.bind (.generated .operand 30)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 29))]) (.mk [] (.move (.generated .part 29))))])), (.mk (.bind (.generated .operand 31)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] true)))]) (.block (.mk [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 33)) none (.lit (.nat 64)))] (.call (.runtime .natSub) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] false))))), [(1, .nat, (some 1)), (0, (.adt 0), (some 0))], rfl, rfl, + (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 23)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [(.bind (.generated .part 22)), .wild]) (.mk [] (.move (.generated .part 22))))])), (.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat]) (rd := (.move (.generated .part 22))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, .nat]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 27)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 26)) none (.lit (.nat 64)))] (.call (.runtime .natSub) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 25)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 26)) none (.lit (.nat 64)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 30)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 29))]) (.mk [] (.move (.generated .part 29))))])), (.mk (.bind (.generated .operand 31)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat]) (rd := (.move (.generated .part 29))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 33)) none (.lit (.nat 64)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))))))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | 3 => exact fun3 + | 4 => exact fun4 + | 5 => exact fun5 + | 6 => exact fun6 + | 7 => exact fun7 + | 8 => exact fun8 + | 9 => exact fun9 + | 10 => exact fun10 + | 11 => exact fun11 + | _ + 12 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.RustStd diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R4.lean b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R4.lean new file mode 100644 index 000000000..f5881b913 --- /dev/null +++ b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R4.lean @@ -0,0 +1,78 @@ +import LexLeanPreservation.Core +import LexLeanPreservation.Values +import LexLeanPreservation.Primitives +import LexLeanPreservation.Fixed +import LexLeanPreservation.Keys +import LexLeanPreservation.Templates +import LexLeanPreservation.Validate +import Models.Flows +import Models.Glyphs +import Models.Ledger +import Models.Main +import Models.Pipeline +import Models.Policy +import Models.Recognizer +import Models.Session +import Models.Triage +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +set_option linter.unusedVariables false +namespace LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4 + +def __prog : _root_.LexLeanTarget.TargetSyntax.Program := + { adts := [{ constructors := [[.nat, .nat]] }], functions := [ + { parameters := [0, 1], types := [(.adt 0), .nat], result := (.result (.pair (.adt 0) .nat) (.pair .bool .bool)), + body := (.«let» 2 (.adt 0) (.var 0) (.«let» 3 .nat (.var 1) (.cond (.call 1 [(.var 2)]) (.cond (.call 2 [(.var 2), (.var 3)]) (.«let» 4 (.pair (.adt 0) .nat) (.call 3 [(.var 2), (.var 3)]) (.build .ok (.result (.pair (.adt 0) .nat) (.pair .bool .bool)) [(.var 4)])) (.build .error (.result (.pair (.adt 0) .nat) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])])) (.build .error (.result (.pair (.adt 0) .nat) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])])])))) }, + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.prim .natLe [(.field (.var 0) 0), (.value .nat (.nat 64))]) }, + { parameters := [0, 1], types := [(.adt 0), .nat], result := .bool, + body := (.prim .natLe [(.var 1), (.value .nat (.nat 16))]) }, + { parameters := [0, 1], types := [(.adt 0), .nat], result := (.pair (.adt 0) .nat), + body := (.call 4 [(.var 0), (.var 1)]) }, + { parameters := [0, 1], types := [(.adt 0), .nat], result := (.pair (.adt 0) .nat), + body := (.«let» 2 .nat (.prim .natAdd [(.field (.var 0) 0), (.var 1)]) (.build .pair (.pair (.adt 0) .nat) [(.build (.adt 0) (.adt 0) [(.prim .natSub [(.var 2), (.prim .natSub [(.var 2), (.value .nat (.nat 64))])]), (.prim .natAdd [(.field (.var 0) 1), (.value .nat (.nat 1))])]), (.prim .natSub [(.var 2), (.value .nat (.nat 64))])])) }] } + +def __enc_0 (__s : (Models.Session.Window)) : _root_.LexLeanTarget.TargetSyntax.Value := + _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).used), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).items)] + +def __fits_1 (window : (Models.Session.Window)) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_1 (window : (Models.Session.Window)) : _root_.LexLeanPreservation.FunRel __prog 1 [(__enc_0 window)] (_root_.LexLeanPreservation.Rel (__fits_1 window) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Models.Session.boundedCheck window))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe (window).used (64 : Nat))) + +def __fits_2 (window : (Models.Session.Window)) (cost : Nat) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_2 (window : (Models.Session.Window)) (cost : Nat) : _root_.LexLeanPreservation.FunRel __prog 2 [(__enc_0 window), (_root_.LexLeanTarget.TargetSyntax.Value.nat cost)] (_root_.LexLeanPreservation.Rel (__fits_2 window cost) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Models.Session.affordableCheck window cost))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe cost (16 : Nat))) + +def __fits_4 (window : (Models.Session.Window)) (cost : Nat) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((window).used + cost) 18446744073709551616)) && (let total : Nat := ((window).used + cost); ((((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((window).items + (1 : Nat)) 18446744073709551616)) && Bool.true)) && Bool.true) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true))) + +theorem __rel_4 (window : (Models.Session.Window)) (cost : Nat) : _root_.LexLeanPreservation.FunRel __prog 4 [(__enc_0 window), (_root_.LexLeanTarget.TargetSyntax.Value.nat cost)] (_root_.LexLeanPreservation.Rel (__fits_4 window cost) ((_root_.LexLeanPreservation.encPair __enc_0 _root_.LexLeanTarget.TargetSyntax.Value.nat) (Models.Session.SessionStep window cost))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (let total : Nat := ((window).used + cost); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (window).used cost)) (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub total (64 : Nat))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub total (_root_.LexLeanRuntime.subtract (total) ((64 : Nat)) : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (window).items (1 : Nat))) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_adt) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub total (64 : Nat))) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair)) + +def __fits_3 (_ystate : (Models.Session.Window)) (_yinput : Nat) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && (__fits_4 (_ystate) (_yinput))) + +attribute [local irreducible] Models.Session.SessionStep in +theorem __rel_3 (_ystate : (Models.Session.Window)) (_yinput : Nat) : _root_.LexLeanPreservation.FunRel __prog 3 [(__enc_0 _ystate), (_root_.LexLeanTarget.TargetSyntax.Value.nat _yinput)] (_root_.LexLeanPreservation.Rel (__fits_3 _ystate _yinput) ((_root_.LexLeanPreservation.encPair __enc_0 _root_.LexLeanTarget.TargetSyntax.Value.nat) (Models.Session.SessionModel _ystate _yinput))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_4 (_ystate) (_yinput))) + +def __fits_0 (window : (Models.Session.Window)) (cost : Nat) : Bool := + (Bool.true && (let _ychecked1_state : (Models.Session.Window) := window; (Bool.true && (let _ychecked1_input : Nat := cost; (((Bool.true && Bool.true) && (__fits_1 (_ychecked1_state))) && (if (Models.Session.boundedCheck (_ychecked1_state)) then (((Bool.true && (Bool.true && Bool.true)) && (__fits_2 (_ychecked1_state) (_ychecked1_input))) && (if (Models.Session.affordableCheck (_ychecked1_state) (_ychecked1_input)) then (((Bool.true && (Bool.true && Bool.true)) && (__fits_3 (_ychecked1_state) (_ychecked1_input))) && (let _ychecked1_step : (Prod (Models.Session.Window) Nat) := (Models.Session.SessionModel (_ychecked1_state) (_ychecked1_input)); ((Bool.true && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))))) + +attribute [local irreducible] Models.Session.SessionModel Models.Session.affordableCheck Models.Session.boundedCheck in +theorem __rel_0 (window : (Models.Session.Window)) (cost : Nat) : _root_.LexLeanPreservation.FunRel __prog 0 [(__enc_0 window), (_root_.LexLeanTarget.TargetSyntax.Value.nat cost)] (_root_.LexLeanPreservation.Rel (__fits_0 window cost) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair __enc_0 _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Models.Main.step window cost))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (let _ychecked1_state : (Models.Session.Window) := window; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_var rfl) (let _ychecked1_input : Nat := cost; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (Bool.true && Bool.true)) && (__fits_2 (_ychecked1_state) (_ychecked1_input))) && (if (Models.Session.affordableCheck (_ychecked1_state) (_ychecked1_input)) then (((Bool.true && (Bool.true && Bool.true)) && (__fits_3 (_ychecked1_state) (_ychecked1_input))) && (let _ychecked1_step : (Prod (Models.Session.Window) Nat) := (Models.Session.SessionModel (_ychecked1_state) (_ychecked1_input)); ((Bool.true && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair __enc_0 _root_.LexLeanTarget.TargetSyntax.Value.nat)) (if __b then (if (Models.Session.affordableCheck (_ychecked1_state) (_ychecked1_input)) then (let _ychecked1_step : (Prod (Models.Session.Window) Nat) := (Models.Session.SessionModel (_ychecked1_state) (_ychecked1_input)); (Except.ok (_ychecked1_step) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) Nat)))) else (Except.error (((Bool.false, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) Nat)))) else (Except.error (((Bool.false, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) Nat))))) (Models.Session.boundedCheck (_ychecked1_state)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_1 (_ychecked1_state))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (Bool.true && Bool.true)) && (__fits_3 (_ychecked1_state) (_ychecked1_input))) && (let _ychecked1_step : (Prod (Models.Session.Window) Nat) := (Models.Session.SessionModel (_ychecked1_state) (_ychecked1_input)); ((Bool.true && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair __enc_0 _root_.LexLeanTarget.TargetSyntax.Value.nat)) (if __b then (let _ychecked1_step : (Prod (Models.Session.Window) Nat) := (Models.Session.SessionModel (_ychecked1_state) (_ychecked1_input)); (Except.ok (_ychecked1_step) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) Nat)))) else (Except.error (((Bool.false, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod (Models.Session.Window) Nat))))) (Models.Session.affordableCheck (_ychecked1_state) (_ychecked1_input)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_2 (_ychecked1_state) (_ychecked1_input))) (fun _ => (let _ychecked1_step : (Prod (Models.Session.Window) Nat) := (Models.Session.SessionModel (_ychecked1_state) (_ychecked1_input)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_3 (_ychecked1_state) (_ychecked1_input))) (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error))))) + +def denote (window : (Models.Session.Window)) (cost : Nat) : _root_.LexLeanPreservation.Obs := + _root_.cond (__fits_0 window cost) (_root_.LexLeanPreservation.Obs.value (((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair __enc_0 _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Models.Main.step window cost)))) _root_.LexLeanPreservation.Obs.overflow + +theorem root (window : (Models.Session.Window)) (cost : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [(__enc_0 window), (_root_.LexLeanTarget.TargetSyntax.Value.nat cost)] (_root_.LexLeanPreservation.Rel (__fits_0 window cost) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair __enc_0 _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Models.Main.step window cost))) := + _root_.LexLeanPreservation.run_of_funRel (__rel_0 window cost) + +end LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4 diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R4/Compose/RustStd.lex.tex b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R4/Compose/RustStd.lex.tex new file mode 100644 index 000000000..ac7ff1d16 --- /dev/null +++ b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R4/Compose/RustStd.lex.tex @@ -0,0 +1,601 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4, + LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.Compose.RustStd.__wt_0 : @16 := @440 { + all: [LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.Compose.RustStd.__wt_0], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.Compose.RustStd.root : @1229 := @1230 { + all: [LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.RustStd.program +@1 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.RustStd.krate +@2 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.RustStd.flags +@3 := Models.Session.Window +@4 := #0 +@5 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.__enc_0 +@6 := @5 @4 +@7 := LexLeanPreservation.Rust.WT +@8 := LexLeanTarget.TargetSyntax.Ty.adt +@9 := 0 +@10 := @8 @9 +@11 := @7 @0 +@12 := @11 @1 +@13 := @12 @2 +@16 := (__s : @3) -> @13 @6 @10 +@17 := Models.Session.Window.used +@18 := @17 @4 +@19 := Models.Session.Window.items +@20 := @19 @4 +@21 := LexLeanTarget.TargetSyntax.Value.nat +@22 := @21 @18 +@23 := LexLeanTarget.TargetSyntax.Ty.nat +@24 := LexLeanTarget.TargetSyntax.Program +@25 := LexLeanPreservation.Rust.RCrate +@26 := LexLeanPreservation.Rust.Flags +@27 := Nat +@28 := #3 +@29 := @7 @28 +@30 := #2 +@31 := @29 @30 +@32 := #1 +@33 := @31 @32 +@34 := @21 @4 +@40 := {p : @24} -> {c : @25} -> {A : @26} -> (n : @27) -> @33 @34 @23 +@42 := LexLeanPreservation.Rust.wt_nat @0 +@49 := {c : @25} -> {A : @26} -> (n : @27) -> @11 @30 @32 @34 @23 +@50 := @42 @1 +@55 := {A : @26} -> (n : @27) -> @12 @32 @34 @23 +@56 := @50 @2 +@59 := (n : @27) -> @13 @34 @23 +@60 := @56 @18 +@62 := @13 @22 @23 +@63 := @21 @20 +@64 := @56 @20 +@66 := @13 @63 @23 +@67 := LexLeanTarget.TargetSyntax.Value +@68 := LexLeanTarget.TargetSyntax.Ty +@69 := List.nil.{0} +@70 := List.cons.{0} +@71 := @69 @67 +@72 := @70 @67 +@74 := @72 @63 @71 +@76 := @72 @22 @74 +@77 := @69 @68 +@78 := @70 @68 +@79 := @78 @23 +@80 := @79 @77 +@81 := @79 @80 +@82 := LexLeanPreservation.Rust.WTL +@90 := {p : @24} -> {c : @25} -> {A : @26} -> @82 @30 @32 @4 @71 @77 +@92 := LexLeanPreservation.Rust.wtl_nil @0 +@93 := @82 @0 +@99 := {c : @25} -> {A : @26} -> @93 @32 @4 @71 @77 +@100 := @92 @1 +@101 := @93 @1 +@105 := {A : @26} -> @101 @4 @71 @77 +@106 := @100 @2 +@107 := @101 @2 +@108 := @107 @71 +@109 := @108 @77 +@110 := List.{0} +@111 := @110 @67 +@112 := @110 @68 +@113 := #6 +@114 := @7 @113 +@115 := #5 +@116 := @114 @115 +@117 := #4 +@120 := @116 @117 @28 @30 +@121 := #7 +@126 := @82 @121 @113 @115 @30 @32 +@127 := #8 +@130 := @82 @127 @121 @113 +@132 := @72 @115 @28 +@133 := @130 @132 +@135 := @78 @117 @30 +@145 := {p : @24} -> + {c : @25} -> + {A : @26} -> + {v : @67} -> {t : @68} -> {vs : @111} -> {ts : @112} -> (h : @120) -> (hs : @126) -> @133 @135 +@147 := LexLeanPreservation.Rust.wtl_cons @0 +@151 := @11 @115 @117 @28 @30 +@155 := @93 @113 @115 @30 @32 +@167 := {c : @25} -> + {A : @26} -> + {v : @67} -> + {t : @68} -> {vs : @111} -> {ts : @112} -> (h : @151) -> (hs : @155) -> @93 @121 @113 @132 @135 +@168 := @147 @1 +@171 := @12 @117 @28 @30 +@174 := @101 @115 @30 @32 +@184 := {A : @26} -> + {v : @67} -> + {t : @68} -> {vs : @111} -> {ts : @112} -> (h : @171) -> (hs : @174) -> @101 @113 @132 @135 +@185 := @168 @2 +@187 := @13 @28 @30 +@189 := @107 @30 @32 +@197 := {v : @67} -> + {t : @68} -> {vs : @111} -> {ts : @112} -> (h : @187) -> (hs : @189) -> @107 @132 @135 +@198 := @185 @63 +@200 := @21 (@19 @28) +@213 := {t : @68} -> + {vs : @111} -> + {ts : @112} -> (h : @13 @200 @30) -> (hs : @189) -> @107 (@72 (@21 (@19 @115)) @28) @135 +@214 := @198 @23 +@216 := @21 (@19 @30) +@218 := @13 @216 @23 +@223 := @107 (@72 (@21 (@19 @117)) @28) +@224 := @79 @30 +@229 := {vs : @111} -> {ts : @112} -> (h : @218) -> (hs : @189) -> @223 @224 +@230 := @214 @71 +@232 := @21 (@19 @32) +@234 := @13 @232 @23 +@235 := @108 @32 +@237 := @72 @200 @71 +@242 := {ts : @112} -> (h : @234) -> (hs : @235) -> @107 @237 @224 +@243 := @230 @77 +@245 := @72 @216 @71 +@246 := @107 @245 +@249 := (h : @66) -> (hs : @109) -> @246 @80 +@250 := @243 @64 +@252 := @72 @232 @71 +@254 := @107 @252 @80 +@255 := (hs : @109) -> @254 +@256 := @250 @106 +@258 := @107 @74 @80 +@259 := @185 @22 +@261 := @21 (@17 @28) +@274 := {t : @68} -> + {vs : @111} -> + {ts : @112} -> (h : @13 @261 @30) -> (hs : @189) -> @107 (@72 (@21 (@17 @115)) @28) @135 +@275 := @259 @23 +@277 := @21 (@17 @30) +@289 := {vs : @111} -> + {ts : @112} -> (h : @13 @277 @23) -> (hs : @189) -> @107 (@72 (@21 (@17 @117)) @28) @224 +@290 := @275 @74 +@292 := @21 (@17 @32) +@294 := @13 @292 @23 +@295 := @246 @32 +@297 := @72 @261 @237 +@302 := {ts : @112} -> (h : @294) -> (hs : @295) -> @107 @297 @224 +@303 := @290 @80 +@305 := @72 @277 @245 +@306 := @107 @305 +@309 := (h : @62) -> (hs : @254) -> @306 @81 +@310 := @303 @60 +@312 := @72 @292 @252 +@314 := @107 @312 @81 +@315 := (hs : @258) -> @314 +@316 := @310 @256 +@318 := @107 @76 @81 +@319 := Eq.{1} +@320 := Option.{0} +@321 := @320 @112 +@322 := @319 @321 +@323 := LexLeanPreservation.Rust.adtFields +@327 := @322 (@323 @113 @28 @30) +@328 := Option.some.{0} +@329 := @328 @112 +@330 := @329 @4 +@331 := @327 @330 +@334 := @7 @127 @121 @113 +@335 := LexLeanTarget.TargetSyntax.Value.adt +@337 := @335 @117 @28 +@338 := @334 @337 +@339 := @8 @115 +@349 := {p : @24} -> + {c : @25} -> + {A : @26} -> + {i : @27} -> {k : @27} -> {fs : @111} -> {tys : @112} -> (h : @331) -> (hf : @126) -> @338 @339 +@351 := LexLeanPreservation.Rust.wt_adt @0 +@352 := @323 @0 +@356 := @322 (@352 @28 @30) @330 +@368 := {c : @25} -> + {A : @26} -> + {i : @27} -> + {k : @27} -> {fs : @111} -> {tys : @112} -> (h : @356) -> (hf : @155) -> @11 @121 @113 @337 @339 +@369 := @351 @1 +@379 := {A : @26} -> + {i : @27} -> + {k : @27} -> {fs : @111} -> {tys : @112} -> (h : @356) -> (hf : @174) -> @12 @113 @337 @339 +@380 := @369 @2 +@381 := @13 @337 +@388 := {i : @27} -> + {k : @27} -> {fs : @111} -> {tys : @112} -> (h : @356) -> (hf : @189) -> @381 @339 +@389 := @380 @9 +@390 := @352 @9 +@399 := {k : @27} -> + {fs : @111} -> {tys : @112} -> (h : @322 (@390 @30) @330) -> (hf : @189) -> @381 @10 +@400 := @389 @9 +@401 := @390 @9 +@402 := @322 @401 +@403 := @402 @330 +@404 := @335 @9 +@411 := {fs : @111} -> {tys : @112} -> (h : @403) -> (hf : @189) -> @13 (@404 @28) @10 +@412 := @400 @76 +@419 := {tys : @112} -> (h : @403) -> (hf : @306 @32) -> @13 (@404 @297) @10 +@420 := @412 @81 +@427 := (h : @402 (@329 @81)) -> (hf : @314) -> @13 (@404 @305) @10 +@428 := Eq.refl.{1} +@431 := @420 (@428 @321 @401) +@435 := (hf : @318) -> @13 (@404 @312) @10 +@436 := @431 @316 +@439 := @13 (@404 @76) @10 +@440 := fun (__s : @3) => @436 +@441 := @5 @30 +@443 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.Compose.RustStd.__wt_0 @30 +@444 := @21 @32 +@445 := @56 @32 +@447 := @13 @444 @23 +@449 := @72 @444 @71 +@451 := @72 @441 @449 +@452 := Prod.{0, 0} +@454 := @452 @27 @67 +@455 := 1 +@458 := Prod.mk.{0, 0} @27 @67 +@459 := @458 @455 +@460 := @459 @444 +@461 := @458 @9 +@462 := @461 @441 +@463 := @69 @454 +@464 := @70 @454 +@466 := @464 @462 @463 +@468 := @464 @460 @466 +@469 := Bool.true +@470 := LexLeanTarget.TargetSyntax.Function +@471 := LexLeanTarget.TargetSyntax.Program.functions +@472 := @471 @0 +@473 := @69 @27 +@474 := LexLeanTarget.TargetSyntax.Ty.unit +@475 := LexLeanTarget.TargetSyntax.Value.unit +@478 := LexLeanTarget.TargetSyntax.Expr.value @474 @475 +@483 := LexLeanTarget.TargetSyntax.Function.mk @473 @77 @474 @478 +@488 := List.getD.{0} @470 @472 @9 @483 +@492 := fun (__e_n : @27) => LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.RustStd.root @4 @9 +@493 := @185 @444 +@494 := @21 @117 +@496 := @13 @494 @30 +@497 := @21 @113 +@498 := @72 @497 +@506 := {t : @68} -> {vs : @111} -> {ts : @112} -> (h : @496) -> (hs : @189) -> @107 (@498 @28) @135 +@507 := @493 @23 +@508 := @21 @28 +@510 := @13 @508 @23 +@511 := @21 @115 +@512 := @72 @511 +@519 := {vs : @111} -> {ts : @112} -> (h : @510) -> (hs : @189) -> @107 (@512 @28) @224 +@520 := @507 @71 +@521 := @21 @30 +@523 := @13 @521 @23 +@525 := @72 @494 @71 +@530 := {ts : @112} -> (h : @523) -> (hs : @235) -> @107 @525 @224 +@531 := @520 @77 +@533 := @72 @508 @71 +@534 := @107 @533 +@537 := (h : @447) -> (hs : @109) -> @534 @80 +@538 := @531 @445 +@540 := @72 @521 @71 +@542 := @107 @540 @80 +@543 := (hs : @109) -> @542 +@544 := @538 @106 +@546 := @107 @449 @80 +@547 := @185 @441 +@548 := @5 @115 +@550 := @13 @548 @30 +@551 := @5 @121 +@552 := @72 @551 +@560 := {t : @68} -> {vs : @111} -> {ts : @112} -> (h : @550) -> (hs : @189) -> @107 (@552 @28) @135 +@561 := @547 @10 +@562 := @5 @117 +@564 := @13 @562 @10 +@565 := @5 @113 +@566 := @72 @565 +@568 := @107 (@566 @28) +@569 := @78 @10 +@570 := @569 @30 +@575 := {vs : @111} -> {ts : @112} -> (h : @564) -> (hs : @189) -> @568 @570 +@576 := @561 @449 +@577 := @5 @28 +@579 := @13 @577 @10 +@580 := @534 @32 +@582 := @72 @548 @525 +@583 := @107 @582 +@587 := {ts : @112} -> (h : @579) -> (hs : @580) -> @583 @570 +@588 := @576 @80 +@590 := @13 @441 @10 +@592 := @72 @562 @533 +@593 := @107 @592 +@594 := @569 @80 +@597 := (h : @590) -> (hs : @542) -> @593 @594 +@598 := @588 @443 +@600 := @72 @577 @540 +@601 := @107 @600 +@603 := (hs : @546) -> @601 @594 +@604 := @598 @544 +@605 := @107 @451 +@606 := @605 @594 +@607 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.denote +@609 := @607 @30 @32 +@610 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.__fits_0 +@612 := @610 @30 @32 +@615 := Models.Main.step @30 @32 +@616 := Bool +@618 := @452 @616 @616 +@620 := @452 @3 @27 +@621 := LexLeanTarget.TargetSyntax.Value.bool +@622 := LexLeanPreservation.encPair +@626 := @622 @616 @616 @621 @621 +@630 := @622 @3 @27 @5 @21 +@636 := LexLeanPreservation.encExcept @618 @620 @626 @630 @615 +@639 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.root @30 @32 +@640 := Ne.{1} +@641 := LexLeanPreservation.Obs +@642 := @640 @641 +@643 := LexLeanPreservation.Rel +@646 := @642 (@643 @32 @4) +@647 := LexLeanPreservation.Obs.stuck +@650 := (f : @616) -> (v : @67) -> @646 @647 +@652 := LexLeanPreservation.Rust.rel_ne_stuck @612 +@659 := (v : @67) -> @642 (@643 (@610 @28 @30) @4) @647 +@660 := @652 @636 +@664 := @642 (@643 @612 @636) @647 +@665 := @110 @454 +@666 := LexLeanPreservation.Rust.FunSem +@667 := #9 +@673 := (n : @27) -> @666 @667 @127 @121 @4 @113 +@674 := @320 @470 +@675 := @319 @674 +@682 := LexLeanRuntime.index (@110 @470) @470 (LexLeanRuntime.instIndexableList @470) +@686 := @675 (@682 (@471 @667) @113) +@687 := @328 @470 +@688 := @687 @115 +@689 := @686 @688 +@690 := #10 +@694 := @82 @690 @667 @127 @115 +@695 := LexLeanTarget.TargetSyntax.Function.types +@696 := @695 @113 +@697 := @694 @696 +@698 := @320 @665 +@699 := @319 @698 +@700 := LexLeanTarget.TargetSemantics.bindAll +@701 := LexLeanTarget.TargetSyntax.Function.parameters +@706 := @699 (@700 (@701 @121) @113 @463) +@707 := @328 @665 +@708 := @707 @115 +@709 := @706 @708 +@710 := @320 @616 +@711 := @319 @710 +@712 := LexLeanPreservation.Rust.fnFallible +@713 := #11 +@716 := @711 (@712 @713 @667) +@717 := @328 @616 +@718 := @717 @115 +@719 := @716 @718 +@720 := LexLeanPreservation.RunConv +@721 := #13 +@725 := @720 @721 @690 @127 @115 +@727 := @642 @113 @647 +@728 := Exists.{1} +@729 := LexLeanPreservation.Rust.ROut +@730 := @728 @729 +@731 := And +@732 := LexLeanPreservation.Rust.RealizesFn +@736 := @731 (@732 @667 @127 @4) +@737 := LexLeanPreservation.Rust.RCI +@739 := @737 #15 +@740 := LexLeanPreservation.Rust.fnIdent +@741 := @740 @721 +@748 := (hne : @727) -> @730 (fun (ro : @729) => @736 (@739 @741 @713 @4)) +@763 := {p : @24} -> + {c : @25} -> + {A : @26} -> + {f : @27} -> + {fn : @470} -> + {args : @111} -> + {env : @665} -> + {F : @616} -> + {o : @641} -> + (hB : @673) -> + (hfn : @689) -> (hwt : @697) -> (hbind : @709) -> (hF : @719) -> (hA : @725) -> @748 +@765 := LexLeanPreservation.Rust.compose @0 +@766 := @666 @0 +@771 := (n : @27) -> @766 @127 @121 @4 @113 +@772 := @682 @472 +@775 := @675 (@772 @113) @688 +@779 := @93 @667 @127 @115 @696 +@780 := @720 @0 +@783 := @780 @690 @127 @115 +@797 := {c : @25} -> + {A : @26} -> + {f : @27} -> + {fn : @470} -> + {args : @111} -> + {env : @665} -> + {F : @616} -> + {o : @641} -> + (hB : @771) -> + (hfn : @775) -> (hwt : @779) -> (hbind : @709) -> (hF : @719) -> (hA : @783) -> @748 +@798 := @765 @1 +@799 := @766 @1 +@803 := (n : @27) -> @799 @121 @4 @113 +@806 := @101 @127 @115 @696 +@807 := @712 @1 +@810 := @711 (@807 @667) @718 +@811 := @737 @1 +@821 := (hbind : @709) -> + (hF : @810) -> (hA : @783) -> (hne : @727) -> @730 (fun (ro : @729) => @736 (@811 @741 @713 @4)) +@831 := {A : @26} -> + {f : @27} -> + {fn : @470} -> + {args : @111} -> + {env : @665} -> {F : @616} -> {o : @641} -> (hB : @803) -> (hfn : @775) -> (hwt : @806) -> @821 +@832 := @798 @2 +@834 := @799 @2 @4 +@836 := (n : @27) -> @834 @113 +@837 := @107 @115 +@838 := @837 @696 +@847 := {f : @27} -> + {fn : @470} -> + {args : @111} -> + {env : @665} -> {F : @616} -> {o : @641} -> (hB : @836) -> (hfn : @775) -> (hwt : @838) -> @821 +@848 := @832 @9 +@850 := (n : @27) -> @834 @9 +@851 := @772 @9 +@852 := @675 @851 +@853 := @852 @688 +@854 := @807 @9 +@855 := @711 @854 +@856 := @855 @718 +@857 := @780 @9 +@859 := @857 @127 @115 +@861 := @811 (@740 @9) +@869 := (hF : @856) -> (hA : @859) -> (hne : @727) -> @730 (fun (ro : @729) => @736 (@861 @713 @4)) +@878 := {fn : @470} -> + {args : @111} -> + {env : @665} -> + {F : @616} -> {o : @641} -> (hB : @850) -> (hfn : @853) -> (hwt : @838) -> (hbind : @709) -> @869 +@879 := @848 @488 +@881 := @852 (@687 @488) +@882 := @695 @488 +@883 := @837 @882 +@885 := @700 (@701 @488) +@897 := {args : @111} -> + {env : @665} -> + {F : @616} -> + {o : @641} -> + (hB : @850) -> (hfn : @881) -> (hwt : @883) -> (hbind : @699 (@885 @113 @463) @708) -> @869 +@898 := @879 @451 +@900 := @552 (@498 @71) +@902 := @107 @900 @882 +@908 := @72 (@5 @127) (@72 (@21 @121) @71) +@912 := @699 (@885 @908 @463) @708 +@918 := @72 (@5 @690) (@72 (@21 @667) @71) +@920 := @857 @918 @115 +@922 := @72 (@5 @721) +@923 := #12 +@942 := {env : @665} -> + {F : @616} -> + {o : @641} -> + (hB : @850) -> + (hfn : @881) -> + (hwt : @902) -> + (hbind : @912) -> + (hF : @856) -> + (hA : @920) -> + (hne : @727) -> @730 (fun (ro : @729) => @736 (@861 (@922 (@72 (@21 @923) @71)) @4)) +@943 := @898 @468 +@945 := @566 (@512 @71) +@947 := @107 @945 @882 +@958 := @699 (@885 @900 @463) (@707 (@464 (@459 @497) (@464 (@461 @551) @463))) +@964 := @72 (@5 @667) (@72 (@21 @127) @71) +@986 := {F : @616} -> + {o : @641} -> + (hB : @850) -> + (hfn : @881) -> + (hwt : @947) -> + (hbind : @958) -> + (hF : @856) -> + (hA : @857 @964 @115) -> + (hne : @727) -> @730 (fun (ro : @729) => @736 (@861 (@72 (@5 @923) (@72 (@21 @713) @71)) @4)) +@987 := @943 @469 +@988 := @583 @882 +@999 := @699 (@885 @945 @463) (@707 (@464 (@459 @511) (@464 (@461 @565) @463))) +@1001 := @855 (@717 @469) +@1003 := @857 @908 @115 +@1004 := @732 @469 +@1026 := {o : @641} -> + (hB : @850) -> + (hfn : @881) -> + (hwt : @988) -> + (hbind : @999) -> + (hF : @1001) -> + (hA : @1003) -> + (hne : @727) -> + @730 (fun (ro : @729) => @731 (@1004 @127 @4) (@861 (@72 (@5 @713) (@72 (@21 @690) @71)) @4)) +@1027 := @987 @609 +@1028 := @593 @882 +@1039 := @699 (@885 @582 @463) (@707 (@464 (@459 @494) (@464 (@461 @548) @463))) +@1040 := @857 @900 +@1042 := @607 @121 @113 +@1043 := @1040 @1042 +@1045 := @607 @127 @121 +@1064 := (hB : @850) -> + (hfn : @881) -> + (hwt : @1028) -> + (hbind : @1039) -> + (hF : @1001) -> + (hA : @1043) -> + (hne : @642 @1045 @647) -> + @730 (fun (ro : @729) => @731 (@1004 (@607 @690 @667) @4) (@861 @918 @4)) +@1065 := @1027 @492 +@1066 := @601 @882 +@1077 := @699 (@885 @592 @463) (@707 (@464 (@459 @508) (@464 (@461 @562) @463))) +@1078 := @857 @945 +@1080 := @607 @113 @115 +@1099 := (hfn : @881) -> + (hwt : @1066) -> + (hbind : @1077) -> + (hF : @1001) -> + (hA : @1078 @1080) -> + (hne : @642 @1042 @647) -> + @730 (fun (ro : @729) => @731 (@1004 (@607 @667 @127) @4) (@861 @964 @4)) +@1102 := @1065 (@428 @674 @851) +@1103 := @605 @882 +@1114 := @699 (@885 @600 @463) (@707 (@464 (@459 @521) (@464 (@461 @577) @463))) +@1115 := @857 @582 +@1117 := @607 @115 @117 +@1133 := (hwt : @1103) -> + (hbind : @1114) -> + (hF : @1001) -> + (hA : @1115 @1117) -> + (hne : @642 @1080 @647) -> @730 (fun (ro : @729) => @731 (@1004 @1045 @4) (@861 @908 @4)) +@1134 := @1102 @604 +@1136 := @885 @451 @463 +@1139 := @699 @1136 (@707 @468) +@1140 := @857 @592 +@1142 := @607 @117 @28 +@1157 := (hbind : @1139) -> + (hF : @1001) -> + (hA : @1140 @1142) -> + (hne : @642 @1117 @647) -> @730 (fun (ro : @729) => @731 (@1004 @1042 @4) (@861 @900 @4)) +@1160 := @1134 (@428 @698 @1136) +@1161 := @857 @600 +@1163 := @607 @28 @30 +@1177 := (hF : @1001) -> + (hA : @1161 @1163) -> + (hne : @642 @1142 @647) -> @730 (fun (ro : @729) => @731 (@1004 @1080 @4) (@861 @945 @4)) +@1180 := @1160 (@428 @710 @854) +@1194 := (hA : @857 @451 @609) -> + (hne : @642 @1163 @647) -> @730 (fun (ro : @729) => @731 (@1004 @1117 @4) (@861 @582 @4)) +@1195 := @1180 @639 +@1206 := (hne : @642 @609 @647) -> @730 (fun (ro : @729) => @731 (@1004 @1142 @4) (@861 @592 @4)) +@1207 := @1195 @660 +@1213 := @731 (@1004 @1163 @4) (@861 @600 @4) +@1215 := @730 (fun (ro : @729) => @1213) +@1217 := @730 (fun (__e_ro : @729) => @1213) +@1218 := LexLeanPreservation.Rust.RepresentableL +@1219 := @5 @32 +@1221 := @72 @34 @71 +@1224 := @1218 (@72 @1219 @1221) +@1225 := (__e_hrep : @1224) -> @1217 +@1226 := fun (__e_hrep : @1224) => @1207 +@1227 := (cost : @27) -> @1225 +@1228 := fun (cost : @27) => @1226 +@1229 := (window : @3) -> @1227 +@1230 := fun (window : @3) => @1228 +\end{coremodule} +\end{lexlean} diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R4/RustStd.lean b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R4/RustStd.lean new file mode 100644 index 000000000..afd7b85b8 --- /dev/null +++ b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R4/RustStd.lean @@ -0,0 +1,66 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [{ constructors := [[.nat, .nat]] }], functions := [ + { parameters := [0, 1], types := [(.adt 0), .nat], result := (.result (.pair (.adt 0) .nat) (.pair .bool .bool)), + body := (.«let» 2 (.adt 0) (.var 0) (.«let» 3 .nat (.var 1) (.cond (.call 1 [(.var 2)]) (.cond (.call 2 [(.var 2), (.var 3)]) (.«let» 4 (.pair (.adt 0) .nat) (.call 3 [(.var 2), (.var 3)]) (.build .ok (.result (.pair (.adt 0) .nat) (.pair .bool .bool)) [(.var 4)])) (.build .error (.result (.pair (.adt 0) .nat) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])])) (.build .error (.result (.pair (.adt 0) .nat) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])])])))) }, + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.prim .natLe [(.field (.var 0) 0), (.value .nat (.nat 64))]) }, + { parameters := [0, 1], types := [(.adt 0), .nat], result := .bool, + body := (.prim .natLe [(.var 1), (.value .nat (.nat 16))]) }, + { parameters := [0, 1], types := [(.adt 0), .nat], result := (.pair (.adt 0) .nat), + body := (.call 4 [(.var 0), (.var 1)]) }, + { parameters := [0, 1], types := [(.adt 0), .nat], result := (.pair (.adt 0) .nat), + body := (.«let» 2 .nat (.prim .natAdd [(.field (.var 0) 0), (.var 1)]) (.build .pair (.pair (.adt 0) .nat) [(.build (.adt 0) (.adt 0) [(.prim .natSub [(.var 2), (.prim .natSub [(.var 2), (.value .nat (.nat 64))])]), (.prim .natAdd [(.field (.var 0) 1), (.value .nat (.nat 1))])]), (.prim .natSub [(.var 2), (.value .nat (.nat 64))])])) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.enum (.adt 0) [{ number := 0, fields := [.nat, .nat] }]), + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.result (.pair (.adt 0) .nat) (.pair .bool .bool))) (.mk [(.mk (.bind (.generated .binding 2)) (some (.adt 0)) (.move (.generated .binding 0))), (.mk (.bind (.generated .binding 3)) (some .nat) (.copy (.generated .binding 1)))] (.cond (.call (.function 1) [(.clone (.generated .binding 2))] false) (.mk [] (.cond (.call (.function 2) [(.clone (.generated .binding 2)), (.copy (.generated .binding 3))] false) (.mk [(.mk (.bind (.generated .binding 4)) (some (.pair (.adt 0) .nat)) (.call (.function 3) [(.move (.generated .binding 2)), (.copy (.generated .binding 3))] true))] (.succeed (.construct (.ok (.pair (.adt 0) .nat) (.pair .bool .bool)) [(.move (.generated .binding 4))]))) (.mk [] (.succeed (.construct (.err (.pair (.adt 0) .nat) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))))) (.mk [] (.succeed (.construct (.err (.pair (.adt 0) .nat) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))])))))), + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .operand 2)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [(.bind (.generated .part 1)), .wild]) (.mk [] (.move (.generated .part 1))))])), (.mk (.bind (.generated .operand 3)) none (.lit (.nat 64)))] (.call (.runtime .natLe) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] false))), + (.function (.generated .function 2) [{ pattern := .wild, type := (.adt 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 5)) none (.lit (.nat 16)))] (.call (.runtime .natLe) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false))), + (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.pair (.adt 0) .nat)) (.mk [] (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false))), + (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.pair (.adt 0) .nat)) (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [(.bind (.generated .part 6)), .wild]) (.mk [] (.move (.generated .part 6))))])), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] true))))] (.succeed (.pair (.construct (.adt 0 0) [(.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 12)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 10)) none (.lit (.nat 64)))] (.call (.runtime .natSub) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false))))] (.call (.runtime .natSub) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))), (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 13))]) (.mk [] (.move (.generated .part 13))))])), (.mk (.bind (.generated .operand 15)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] true)))]) (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 17)) none (.lit (.nat 64)))] (.call (.runtime .natSub) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false)))))))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some (.adt 0)) (.move (.generated .binding 0))), (.mk (.bind (.generated .binding 3)) (some .nat) (.copy (.generated .binding 1)))], (.cond (.call (.function 1) [(.clone (.generated .binding 2))] false) (.mk [] (.cond (.call (.function 2) [(.clone (.generated .binding 2)), (.copy (.generated .binding 3))] false) (.mk [(.mk (.bind (.generated .binding 4)) (some (.pair (.adt 0) .nat)) (.call (.function 3) [(.move (.generated .binding 2)), (.copy (.generated .binding 3))] true))] (.succeed (.construct (.ok (.pair (.adt 0) .nat) (.pair .bool .bool)) [(.move (.generated .binding 4))]))) (.mk [] (.succeed (.construct (.err (.pair (.adt 0) .nat) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))))) (.mk [] (.succeed (.construct (.err (.pair (.adt 0) .nat) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))])))), [(1, .nat, (some 1)), (0, (.adt 0), (some 0))], rfl, rfl, + (Corr.letBind (Corr.var rfl rfl) rfl (Corr.letBind (Corr.var rfl rfl) rfl (Corr.cond (lc := []) (ce := (.call (.function 1) [(.clone (.generated .binding 2))] false)) (lk := []) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 2) [(.clone (.generated .binding 2)), (.copy (.generated .binding 3))] false) (.mk [(.mk (.bind (.generated .binding 4)) (some (.pair (.adt 0) .nat)) (.call (.function 3) [(.move (.generated .binding 2)), (.copy (.generated .binding 3))] true))] (.succeed (.construct (.ok (.pair (.adt 0) .nat) (.pair .bool .bool)) [(.move (.generated .binding 4))]))) (.mk [] (.succeed (.construct (.err (.pair (.adt 0) .nat) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))))) (lb := []) (tb := (.succeed (.construct (.err (.pair (.adt 0) .nat) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))]))) (Corr.cond (lc := []) (ce := (.call (.function 2) [(.clone (.generated .binding 2)), (.copy (.generated .binding 3))] false)) (lk := []) (Corr.callOps (ts := [(.adt 0), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .binding 4)) (some (.pair (.adt 0) .nat)) (.call (.function 3) [(.move (.generated .binding 2)), (.copy (.generated .binding 3))] true))]) (ta := (.succeed (.construct (.ok (.pair (.adt 0) .nat) (.pair .bool .bool)) [(.move (.generated .binding 4))]))) (lb := []) (tb := (.succeed (.construct (.err (.pair (.adt 0) .nat) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))) (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl (Corr.fOfB (Corr.build (ts := [(.pair (.adt 0) .nat)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl))) (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)))) (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl))))))⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 2)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [(.bind (.generated .part 1)), .wild]) (.mk [] (.move (.generated .part 1))))])), (.mk (.bind (.generated .operand 3)) none (.lit (.nat 64)))], (.call (.runtime .natLe) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] false), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat]) (rd := (.move (.generated .part 1))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 5)) none (.lit (.nat 16)))], (.call (.runtime .natLe) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false), [(1, .nat, (some 1)), (0, (.adt 0), none)], rfl, rfl, + (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun3 : FunOK program krate flags 3 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false), [(1, .nat, (some 1)), (0, (.adt 0), (some 0))], rfl, rfl, + (Corr.callF (ts := [(.adt 0), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)⟩⟩ + +theorem fun4 : FunOK program krate flags 4 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [(.bind (.generated .part 6)), .wild]) (.mk [] (.move (.generated .part 6))))])), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] true))))], (.succeed (.pair (.construct (.adt 0 0) [(.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 12)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 10)) none (.lit (.nat 64)))] (.call (.runtime .natSub) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false))))] (.call (.runtime .natSub) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))), (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 13))]) (.mk [] (.move (.generated .part 13))))])), (.mk (.bind (.generated .operand 15)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] true)))]) (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 17)) none (.lit (.nat 64)))] (.call (.runtime .natSub) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false))))), [(1, .nat, (some 1)), (0, (.adt 0), (some 0))], rfl, rfl, + (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 7)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [(.bind (.generated .part 6)), .wild]) (.mk [] (.move (.generated .part 6))))])), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat]) (rd := (.move (.generated .part 6))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, .nat]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 12)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 10)) none (.lit (.nat 64)))] (.call (.runtime .natSub) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false))))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 10)) none (.lit (.nat 64)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 14)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 13))]) (.mk [] (.move (.generated .part 13))))])), (.mk (.bind (.generated .operand 15)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat]) (rd := (.move (.generated .part 13))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 17)) none (.lit (.nat 64)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))))))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | 3 => exact fun3 + | 4 => exact fun4 + | _ + 5 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.RustStd diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R5.lean b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R5.lean new file mode 100644 index 000000000..7dace7261 --- /dev/null +++ b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R5.lean @@ -0,0 +1,75 @@ +import LexLeanPreservation.Core +import LexLeanPreservation.Values +import LexLeanPreservation.Primitives +import LexLeanPreservation.Fixed +import LexLeanPreservation.Keys +import LexLeanPreservation.Templates +import LexLeanPreservation.Validate +import Models.Flows +import Models.Glyphs +import Models.Ledger +import Models.Main +import Models.Pipeline +import Models.Policy +import Models.Recognizer +import Models.Session +import Models.Triage +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +set_option linter.unusedVariables false +namespace LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5 + +def __prog : _root_.LexLeanTarget.TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1], types := [.nat, .nat], result := (.result (.pair .nat .nat) (.pair .bool .bool)), + body := (.«let» 2 .nat (.var 0) (.«let» 3 .nat (.var 1) (.cond (.call 1 [(.var 2)]) (.cond (.call 2 [(.var 2), (.var 3)]) (.«let» 4 (.pair .nat .nat) (.call 3 [(.var 2), (.var 3)]) (.cond (.call 1 [(.first (.var 4))]) (.build .ok (.result (.pair .nat .nat) (.pair .bool .bool)) [(.var 4)]) (.build .error (.result (.pair .nat .nat) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .true .bool [])])]))) (.build .error (.result (.pair .nat .nat) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])])) (.build .error (.result (.pair .nat .nat) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])])])))) }, + { parameters := [0], types := [.nat], result := .bool, + body := (.prim .natLe [(.var 0), (.value .nat (.nat 100))]) }, + { parameters := [0, 1], types := [.nat, .nat], result := .bool, + body := (.prim .natLe [(.var 1), (.value .nat (.nat 10))]) }, + { parameters := [0, 1], types := [.nat, .nat], result := (.pair .nat .nat), + body := (.call 4 [(.var 0), (.var 1)]) }, + { parameters := [0, 1], types := [.nat, .nat], result := (.pair .nat .nat), + body := (.build .pair (.pair .nat .nat) [(.prim .natAdd [(.var 0), (.var 1)]), (.var 1)]) }] } + +def __fits_1 (s : Nat) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_1 (s : Nat) : _root_.LexLeanPreservation.FunRel __prog 1 [(_root_.LexLeanTarget.TargetSyntax.Value.nat s)] (_root_.LexLeanPreservation.Rel (__fits_1 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Models.Ledger.cappedCheck s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe s (100 : Nat))) + +def __fits_2 (s : Nat) (x : Nat) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_2 (s : Nat) (x : Nat) : _root_.LexLeanPreservation.FunRel __prog 2 [(_root_.LexLeanTarget.TargetSyntax.Value.nat s), (_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_2 s x) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Models.Ledger.smallCheck s x))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe x (10 : Nat))) + +def __fits_4 (s : Nat) (x : Nat) : Bool := + ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (s + x) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_4 (s : Nat) (x : Nat) : _root_.LexLeanPreservation.FunRel __prog 4 [(_root_.LexLeanTarget.TargetSyntax.Value.nat s), (_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_4 s x) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) (Models.Ledger.Spill s x))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd s x)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) + +def __fits_3 (_ystate : Nat) (_yinput : Nat) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && (__fits_4 (_ystate) (_yinput))) + +attribute [local irreducible] Models.Ledger.Spill in +theorem __rel_3 (_ystate : Nat) (_yinput : Nat) : _root_.LexLeanPreservation.FunRel __prog 3 [(_root_.LexLeanTarget.TargetSyntax.Value.nat _ystate), (_root_.LexLeanTarget.TargetSyntax.Value.nat _yinput)] (_root_.LexLeanPreservation.Rel (__fits_3 _ystate _yinput) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) (Models.Ledger.SpillModel _ystate _yinput))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_4 (_ystate) (_yinput))) + +def __fits_0 (s : Nat) (x : Nat) : Bool := + (Bool.true && (let _ychecked1_state : Nat := s; (Bool.true && (let _ychecked1_input : Nat := x; (((Bool.true && Bool.true) && (__fits_1 (_ychecked1_state))) && (if (Models.Ledger.cappedCheck (_ychecked1_state)) then (((Bool.true && (Bool.true && Bool.true)) && (__fits_2 (_ychecked1_state) (_ychecked1_input))) && (if (Models.Ledger.smallCheck (_ychecked1_state) (_ychecked1_input)) then (((Bool.true && (Bool.true && Bool.true)) && (__fits_3 (_ychecked1_state) (_ychecked1_input))) && (let _ychecked1_step : (Prod Nat Nat) := (Models.Ledger.SpillModel (_ychecked1_state) (_ychecked1_input)); (((Bool.true && Bool.true) && (__fits_1 ((_ychecked1_step).1))) && (if (Models.Ledger.cappedCheck ((_ychecked1_step).1)) then ((Bool.true && Bool.true) && Bool.true) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))))) + +attribute [local irreducible] Models.Ledger.SpillModel Models.Ledger.cappedCheck Models.Ledger.smallCheck in +theorem __rel_0 (s : Nat) (x : Nat) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat s), (_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_0 s x) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Models.Main.ledgerPost s x))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (let _ychecked1_state : Nat := s; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_var rfl) (let _ychecked1_input : Nat := x; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (Bool.true && Bool.true)) && (__fits_2 (_ychecked1_state) (_ychecked1_input))) && (if (Models.Ledger.smallCheck (_ychecked1_state) (_ychecked1_input)) then (((Bool.true && (Bool.true && Bool.true)) && (__fits_3 (_ychecked1_state) (_ychecked1_input))) && (let _ychecked1_step : (Prod Nat Nat) := (Models.Ledger.SpillModel (_ychecked1_state) (_ychecked1_input)); (((Bool.true && Bool.true) && (__fits_1 ((_ychecked1_step).1))) && (if (Models.Ledger.cappedCheck ((_ychecked1_step).1)) then ((Bool.true && Bool.true) && Bool.true) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (if __b then (if (Models.Ledger.smallCheck (_ychecked1_state) (_ychecked1_input)) then (let _ychecked1_step : (Prod Nat Nat) := (Models.Ledger.SpillModel (_ychecked1_state) (_ychecked1_input)); (if (Models.Ledger.cappedCheck ((_ychecked1_step).1)) then (Except.ok (_ychecked1_step) : (Except (Prod Bool Bool) (Prod Nat Nat))) else (Except.error (((Bool.true, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod Nat Nat))))) else (Except.error (((Bool.false, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod Nat Nat)))) else (Except.error (((Bool.false, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod Nat Nat))))) (Models.Ledger.cappedCheck (_ychecked1_state)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_1 (_ychecked1_state))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (Bool.true && Bool.true)) && (__fits_3 (_ychecked1_state) (_ychecked1_input))) && (let _ychecked1_step : (Prod Nat Nat) := (Models.Ledger.SpillModel (_ychecked1_state) (_ychecked1_input)); (((Bool.true && Bool.true) && (__fits_1 ((_ychecked1_step).1))) && (if (Models.Ledger.cappedCheck ((_ychecked1_step).1)) then ((Bool.true && Bool.true) && Bool.true) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (if __b then (let _ychecked1_step : (Prod Nat Nat) := (Models.Ledger.SpillModel (_ychecked1_state) (_ychecked1_input)); (if (Models.Ledger.cappedCheck ((_ychecked1_step).1)) then (Except.ok (_ychecked1_step) : (Except (Prod Bool Bool) (Prod Nat Nat))) else (Except.error (((Bool.true, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod Nat Nat))))) else (Except.error (((Bool.false, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod Nat Nat))))) (Models.Ledger.smallCheck (_ychecked1_state) (_ychecked1_input)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_2 (_ychecked1_state) (_ychecked1_input))) (fun _ => (let _ychecked1_step : (Prod Nat Nat) := (Models.Ledger.SpillModel (_ychecked1_state) (_ychecked1_input)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_3 (_ychecked1_state) (_ychecked1_input))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && Bool.true) && Bool.true) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (if __b then (Except.ok (_ychecked1_step) : (Except (Prod Bool Bool) (Prod Nat Nat))) else (Except.error (((Bool.true, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod Nat Nat))))) (Models.Ledger.cappedCheck ((_ychecked1_step).1)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil) (__rel_1 ((_ychecked1_step).1))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error))))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error))))) + +def denote (s : Nat) (x : Nat) : _root_.LexLeanPreservation.Obs := + _root_.cond (__fits_0 s x) (_root_.LexLeanPreservation.Obs.value (((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Models.Main.ledgerPost s x)))) _root_.LexLeanPreservation.Obs.overflow + +theorem root (s : Nat) (x : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat s), (_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_0 s x) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Models.Main.ledgerPost s x))) := + _root_.LexLeanPreservation.run_of_funRel (__rel_0 s x) + +end LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5 diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R5/Compose/RustStd.lex.tex b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R5/Compose/RustStd.lex.tex new file mode 100644 index 000000000..773805903 --- /dev/null +++ b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R5/Compose/RustStd.lex.tex @@ -0,0 +1,471 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5, + LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.Compose.RustStd.root : @932 := @933 { + all: [LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.RustStd.program +@1 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.RustStd.krate +@2 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.RustStd.flags +@3 := Nat +@4 := #2 +@5 := LexLeanTarget.TargetSyntax.Value.nat +@6 := @5 @4 +@7 := LexLeanTarget.TargetSyntax.Ty.nat +@8 := LexLeanTarget.TargetSyntax.Program +@9 := LexLeanPreservation.Rust.RCrate +@10 := LexLeanPreservation.Rust.Flags +@11 := LexLeanPreservation.Rust.WT +@12 := #3 +@14 := @11 @12 @4 +@15 := #1 +@16 := @14 @15 +@17 := #0 +@18 := @5 @17 +@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 +@26 := LexLeanPreservation.Rust.wt_nat @0 +@27 := @11 @0 +@34 := {c : @9} -> {A : @10} -> (n : @3) -> @27 @4 @15 @18 @7 +@35 := @26 @1 +@36 := @27 @1 +@41 := {A : @10} -> (n : @3) -> @36 @15 @18 @7 +@42 := @35 @2 +@43 := @36 @2 +@46 := (n : @3) -> @43 @18 @7 +@47 := @42 @4 +@49 := @43 @6 @7 +@50 := @5 @15 +@51 := @42 @15 +@53 := @43 @50 @7 +@54 := LexLeanTarget.TargetSyntax.Value +@55 := List.nil.{0} +@56 := List.cons.{0} +@57 := @55 @54 +@58 := @56 @54 +@59 := @58 @50 +@60 := @59 @57 +@61 := @58 @6 +@62 := @61 @60 +@63 := Prod.{0, 0} +@64 := @63 @3 +@65 := @64 @54 +@66 := 1 +@69 := Prod.mk.{0, 0} @3 @54 +@70 := @69 @66 +@71 := @70 @50 +@72 := 0 +@73 := @69 @72 +@74 := @73 @6 +@75 := @55 @65 +@76 := @56 @65 +@78 := @76 @74 @75 +@80 := @76 @71 @78 +@81 := Bool.true +@82 := LexLeanTarget.TargetSyntax.Function +@83 := LexLeanTarget.TargetSyntax.Program.functions +@84 := @83 @0 +@85 := LexLeanTarget.TargetSyntax.Ty +@86 := @55 @3 +@87 := @55 @85 +@88 := LexLeanTarget.TargetSyntax.Ty.unit +@89 := LexLeanTarget.TargetSyntax.Value.unit +@92 := LexLeanTarget.TargetSyntax.Expr.value @88 @89 +@97 := LexLeanTarget.TargetSyntax.Function.mk @86 @87 @88 @92 +@102 := List.getD.{0} @82 @84 @72 @97 +@106 := fun (__e_n : @3) => + LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.RustStd.root @17 @72 +@107 := LexLeanPreservation.Rust.WTL +@115 := {p : @8} -> {c : @9} -> {A : @10} -> @107 @4 @15 @17 @57 @87 +@117 := LexLeanPreservation.Rust.wtl_nil @0 +@118 := @107 @0 +@124 := {c : @9} -> {A : @10} -> @118 @15 @17 @57 @87 +@125 := @117 @1 +@126 := @118 @1 +@130 := {A : @10} -> @126 @17 @57 @87 +@131 := @125 @2 +@132 := @126 @2 +@133 := @132 @57 +@134 := @133 @87 +@135 := List.{0} +@136 := @135 @54 +@137 := @135 @85 +@138 := #6 +@139 := @11 @138 +@140 := #5 +@141 := @139 @140 +@142 := #4 +@145 := @141 @142 @12 @4 +@146 := #7 +@151 := @107 @146 @138 @140 @4 @15 +@152 := #8 +@155 := @107 @152 @146 @138 +@157 := @58 @140 @12 +@158 := @155 @157 +@159 := @56 @85 +@161 := @159 @142 @4 +@171 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {v : @54} -> {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @145) -> (hs : @151) -> @158 @161 +@173 := LexLeanPreservation.Rust.wtl_cons @0 +@193 := {c : @9} -> + {A : @10} -> + {v : @54} -> + {t : @85} -> + {vs : @136} -> + {ts : @137} -> + (h : @27 @140 @142 @12 @4) -> (hs : @118 @138 @140 @4 @15) -> @118 @146 @138 @157 @161 +@194 := @173 @1 +@210 := {A : @10} -> + {v : @54} -> + {t : @85} -> + {vs : @136} -> + {ts : @137} -> (h : @36 @142 @12 @4) -> (hs : @126 @140 @4 @15) -> @126 @138 @157 @161 +@211 := @194 @2 +@213 := @43 @12 @4 +@215 := @132 @4 @15 +@223 := {v : @54} -> + {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @213) -> (hs : @215) -> @132 @157 @161 +@224 := @211 @50 +@225 := @5 @142 +@226 := @43 @225 +@227 := @226 @4 +@228 := @5 @138 +@229 := @58 @228 +@231 := @132 (@229 @12) +@237 := {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @227) -> (hs : @215) -> @231 @161 +@238 := @224 @7 +@239 := @5 @12 +@241 := @43 @239 @7 +@242 := @5 @140 +@243 := @58 @242 +@245 := @132 (@243 @12) +@246 := @159 @7 +@247 := @246 @4 +@252 := {vs : @136} -> {ts : @137} -> (h : @241) -> (hs : @215) -> @245 @247 +@253 := @238 @57 +@254 := @133 @15 +@255 := @58 @225 +@256 := @255 @57 +@261 := {ts : @137} -> (h : @49) -> (hs : @254) -> @132 @256 @247 +@262 := @253 @87 +@263 := @58 @239 +@264 := @263 @57 +@265 := @132 @264 +@266 := @246 @87 +@269 := (h : @53) -> (hs : @134) -> @265 @266 +@270 := @262 @51 +@271 := @61 @57 +@273 := @132 @271 @266 +@274 := (hs : @134) -> @273 +@275 := @270 @131 +@277 := @132 @60 @266 +@278 := @211 @6 +@280 := @43 @242 @4 +@281 := @5 @146 +@282 := @58 @281 +@290 := {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @280) -> (hs : @215) -> @132 (@282 @12) @161 +@291 := @278 @7 +@297 := {vs : @136} -> {ts : @137} -> (h : @226 @7) -> (hs : @215) -> @231 @247 +@298 := @291 @60 +@299 := @265 @15 +@300 := @243 @256 +@301 := @132 @300 +@305 := {ts : @137} -> (h : @241) -> (hs : @299) -> @301 @247 +@306 := @298 @266 +@307 := @255 @264 +@308 := @132 @307 +@309 := @246 @266 +@312 := (h : @49) -> (hs : @273) -> @308 @309 +@313 := @306 @47 +@314 := @263 @271 +@315 := @132 @314 +@317 := (hs : @277) -> @315 @309 +@318 := @313 @275 +@319 := @132 @62 +@320 := @319 @309 +@321 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.denote +@323 := @321 @4 @15 +@324 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.__fits_0 +@326 := @324 @4 @15 +@329 := Models.Main.ledgerPost @4 @15 +@330 := Bool +@332 := @63 @330 @330 +@333 := @64 @3 +@334 := LexLeanTarget.TargetSyntax.Value.bool +@335 := LexLeanPreservation.encPair +@339 := @335 @330 @330 @334 @334 +@343 := @335 @3 @3 @5 @5 +@349 := LexLeanPreservation.encExcept @332 @333 @339 @343 @329 +@352 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.root @4 @15 +@353 := Ne.{1} +@354 := LexLeanPreservation.Obs +@355 := @353 @354 +@356 := LexLeanPreservation.Rel +@359 := @355 (@356 @15 @17) +@360 := LexLeanPreservation.Obs.stuck +@363 := (f : @330) -> (v : @54) -> @359 @360 +@365 := LexLeanPreservation.Rust.rel_ne_stuck @326 +@372 := (v : @54) -> @355 (@356 (@324 @12 @4) @17) @360 +@373 := @365 @349 +@377 := @355 (@356 @326 @349) @360 +@378 := @135 @65 +@379 := LexLeanPreservation.Rust.FunSem +@380 := #9 +@386 := (n : @3) -> @379 @380 @152 @146 @17 @138 +@387 := Eq.{1} +@388 := Option.{0} +@389 := @388 @82 +@390 := @387 @389 +@397 := LexLeanRuntime.index (@135 @82) @82 (LexLeanRuntime.instIndexableList @82) +@401 := @390 (@397 (@83 @380) @138) +@402 := Option.some.{0} +@403 := @402 @82 +@404 := @403 @140 +@405 := @401 @404 +@406 := #10 +@410 := @107 @406 @380 @152 @140 +@411 := LexLeanTarget.TargetSyntax.Function.types +@412 := @411 @138 +@413 := @410 @412 +@414 := @388 @378 +@415 := @387 @414 +@416 := LexLeanTarget.TargetSemantics.bindAll +@417 := LexLeanTarget.TargetSyntax.Function.parameters +@422 := @415 (@416 (@417 @146) @138 @75) +@423 := @402 @378 +@424 := @423 @140 +@425 := @422 @424 +@426 := @388 @330 +@427 := @387 @426 +@428 := LexLeanPreservation.Rust.fnFallible +@429 := #11 +@432 := @427 (@428 @429 @380) +@433 := @402 @330 +@434 := @433 @140 +@435 := @432 @434 +@436 := LexLeanPreservation.RunConv +@437 := #13 +@441 := @436 @437 @406 @152 @140 +@443 := @355 @138 @360 +@444 := Exists.{1} +@445 := LexLeanPreservation.Rust.ROut +@446 := @444 @445 +@447 := And +@448 := LexLeanPreservation.Rust.RealizesFn +@452 := @447 (@448 @380 @152 @17) +@453 := LexLeanPreservation.Rust.RCI +@455 := @453 #15 +@456 := LexLeanPreservation.Rust.fnIdent +@457 := @456 @437 +@464 := (hne : @443) -> @446 (fun (ro : @445) => @452 (@455 @457 @429 @17)) +@479 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {f : @3} -> + {fn : @82} -> + {args : @136} -> + {env : @378} -> + {F : @330} -> + {o : @354} -> + (hB : @386) -> + (hfn : @405) -> (hwt : @413) -> (hbind : @425) -> (hF : @435) -> (hA : @441) -> @464 +@481 := LexLeanPreservation.Rust.compose @0 +@482 := @379 @0 +@487 := (n : @3) -> @482 @152 @146 @17 @138 +@488 := @397 @84 +@491 := @390 (@488 @138) @404 +@495 := @118 @380 @152 @140 @412 +@496 := @436 @0 +@499 := @496 @406 @152 @140 +@513 := {c : @9} -> + {A : @10} -> + {f : @3} -> + {fn : @82} -> + {args : @136} -> + {env : @378} -> + {F : @330} -> + {o : @354} -> + (hB : @487) -> + (hfn : @491) -> (hwt : @495) -> (hbind : @425) -> (hF : @435) -> (hA : @499) -> @464 +@514 := @481 @1 +@515 := @482 @1 +@519 := (n : @3) -> @515 @146 @17 @138 +@522 := @126 @152 @140 @412 +@523 := @428 @1 +@526 := @427 (@523 @380) @434 +@527 := @453 @1 +@537 := (hbind : @425) -> + (hF : @526) -> (hA : @499) -> (hne : @443) -> @446 (fun (ro : @445) => @452 (@527 @457 @429 @17)) +@547 := {A : @10} -> + {f : @3} -> + {fn : @82} -> + {args : @136} -> + {env : @378} -> {F : @330} -> {o : @354} -> (hB : @519) -> (hfn : @491) -> (hwt : @522) -> @537 +@548 := @514 @2 +@550 := @515 @2 @17 +@552 := (n : @3) -> @550 @138 +@553 := @132 @140 +@554 := @553 @412 +@563 := {f : @3} -> + {fn : @82} -> + {args : @136} -> + {env : @378} -> {F : @330} -> {o : @354} -> (hB : @552) -> (hfn : @491) -> (hwt : @554) -> @537 +@564 := @548 @72 +@566 := (n : @3) -> @550 @72 +@567 := @488 @72 +@568 := @390 @567 +@569 := @568 @404 +@570 := @523 @72 +@571 := @427 @570 +@572 := @571 @434 +@573 := @496 @72 +@575 := @573 @152 @140 +@577 := @527 (@456 @72) +@585 := (hF : @572) -> (hA : @575) -> (hne : @443) -> @446 (fun (ro : @445) => @452 (@577 @429 @17)) +@594 := {fn : @82} -> + {args : @136} -> + {env : @378} -> + {F : @330} -> {o : @354} -> (hB : @566) -> (hfn : @569) -> (hwt : @554) -> (hbind : @425) -> @585 +@595 := @564 @102 +@597 := @568 (@403 @102) +@598 := @411 @102 +@599 := @553 @598 +@601 := @416 (@417 @102) +@613 := {args : @136} -> + {env : @378} -> + {F : @330} -> + {o : @354} -> + (hB : @566) -> (hfn : @597) -> (hwt : @599) -> (hbind : @415 (@601 @138 @75) @424) -> @585 +@614 := @595 @62 +@616 := @282 (@229 @57) +@618 := @132 @616 @598 +@620 := @58 (@5 @152) +@622 := @620 (@282 @57) +@626 := @415 (@601 @622 @75) @424 +@628 := @58 (@5 @406) +@630 := @58 (@5 @380) +@632 := @628 (@630 @57) +@634 := @573 @632 @140 +@636 := @58 (@5 @437) +@639 := @58 (@5 #12) +@656 := {env : @378} -> + {F : @330} -> + {o : @354} -> + (hB : @566) -> + (hfn : @597) -> + (hwt : @618) -> + (hbind : @626) -> + (hF : @572) -> + (hA : @634) -> (hne : @443) -> @446 (fun (ro : @445) => @452 (@577 (@636 (@639 @57)) @17)) +@657 := @614 @80 +@659 := @229 (@243 @57) +@661 := @132 @659 @598 +@672 := @415 (@601 @616 @75) (@423 (@76 (@70 @228) (@76 (@73 @281) @75))) +@674 := @630 (@620 @57) +@676 := @573 @674 @140 +@678 := @58 (@5 @429) +@694 := {F : @330} -> + {o : @354} -> + (hB : @566) -> + (hfn : @597) -> + (hwt : @661) -> + (hbind : @672) -> + (hF : @572) -> + (hA : @676) -> (hne : @443) -> @446 (fun (ro : @445) => @452 (@577 (@639 (@678 @57)) @17)) +@695 := @657 @81 +@696 := @301 @598 +@707 := @415 (@601 @659 @75) (@423 (@76 (@70 @242) (@76 (@73 @228) @75))) +@709 := @571 (@433 @81) +@711 := @573 @622 @140 +@712 := @448 @81 +@730 := {o : @354} -> + (hB : @566) -> + (hfn : @597) -> + (hwt : @696) -> + (hbind : @707) -> + (hF : @709) -> + (hA : @711) -> + (hne : @443) -> @446 (fun (ro : @445) => @447 (@712 @152 @17) (@577 (@678 (@628 @57)) @17)) +@731 := @695 @323 +@732 := @308 @598 +@743 := @415 (@601 @300 @75) (@423 (@76 (@70 @225) (@76 (@73 @242) @75))) +@744 := @573 @616 +@746 := @321 @146 @138 +@747 := @744 @746 +@749 := @321 @152 @146 +@768 := (hB : @566) -> + (hfn : @597) -> + (hwt : @732) -> + (hbind : @743) -> + (hF : @709) -> + (hA : @747) -> + (hne : @355 @749 @360) -> + @446 (fun (ro : @445) => @447 (@712 (@321 @406 @380) @17) (@577 @632 @17)) +@769 := @731 @106 +@770 := @315 @598 +@781 := @415 (@601 @307 @75) (@423 (@76 (@70 @239) (@76 (@73 @225) @75))) +@782 := @573 @659 +@784 := @321 @138 @140 +@803 := (hfn : @597) -> + (hwt : @770) -> + (hbind : @781) -> + (hF : @709) -> + (hA : @782 @784) -> + (hne : @355 @746 @360) -> + @446 (fun (ro : @445) => @447 (@712 (@321 @380 @152) @17) (@577 @674 @17)) +@804 := Eq.refl.{1} +@807 := @769 (@804 @389 @567) +@808 := @319 @598 +@819 := @415 (@601 @314 @75) (@423 (@76 (@70 @6) (@76 (@73 @239) @75))) +@820 := @573 @300 +@822 := @321 @140 @142 +@838 := (hwt : @808) -> + (hbind : @819) -> + (hF : @709) -> + (hA : @820 @822) -> + (hne : @355 @784 @360) -> @446 (fun (ro : @445) => @447 (@712 @749 @17) (@577 @622 @17)) +@839 := @807 @318 +@841 := @601 @62 @75 +@844 := @415 @841 (@423 @80) +@845 := @573 @307 +@847 := @321 @142 @12 +@862 := (hbind : @844) -> + (hF : @709) -> + (hA : @845 @847) -> + (hne : @355 @822 @360) -> @446 (fun (ro : @445) => @447 (@712 @746 @17) (@577 @616 @17)) +@865 := @839 (@804 @414 @841) +@866 := @573 @314 +@868 := @321 @12 @4 +@882 := (hF : @709) -> + (hA : @866 @868) -> + (hne : @355 @847 @360) -> @446 (fun (ro : @445) => @447 (@712 @784 @17) (@577 @659 @17)) +@885 := @865 (@804 @426 @570) +@899 := (hA : @573 @62 @323) -> + (hne : @355 @868 @360) -> @446 (fun (ro : @445) => @447 (@712 @822 @17) (@577 @300 @17)) +@900 := @885 @352 +@911 := (hne : @355 @323 @360) -> @446 (fun (ro : @445) => @447 (@712 @847 @17) (@577 @307 @17)) +@912 := @900 @373 +@918 := @447 (@712 @868 @17) (@577 @314 @17) +@920 := @446 (fun (ro : @445) => @918) +@922 := @446 (fun (__e_ro : @445) => @918) +@927 := LexLeanPreservation.Rust.RepresentableL (@59 (@58 @18 @57)) +@928 := (__e_hrep : @927) -> @922 +@929 := fun (__e_hrep : @927) => @912 +@930 := (x : @3) -> @928 +@931 := fun (x : @3) => @929 +@932 := (s : @3) -> @930 +@933 := fun (s : @3) => @931 +\end{coremodule} +\end{lexlean} diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R5/RustStd.lean b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R5/RustStd.lean new file mode 100644 index 000000000..d1c46b698 --- /dev/null +++ b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R5/RustStd.lean @@ -0,0 +1,65 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1], types := [.nat, .nat], result := (.result (.pair .nat .nat) (.pair .bool .bool)), + body := (.«let» 2 .nat (.var 0) (.«let» 3 .nat (.var 1) (.cond (.call 1 [(.var 2)]) (.cond (.call 2 [(.var 2), (.var 3)]) (.«let» 4 (.pair .nat .nat) (.call 3 [(.var 2), (.var 3)]) (.cond (.call 1 [(.first (.var 4))]) (.build .ok (.result (.pair .nat .nat) (.pair .bool .bool)) [(.var 4)]) (.build .error (.result (.pair .nat .nat) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .true .bool [])])]))) (.build .error (.result (.pair .nat .nat) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])])) (.build .error (.result (.pair .nat .nat) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])])])))) }, + { parameters := [0], types := [.nat], result := .bool, + body := (.prim .natLe [(.var 0), (.value .nat (.nat 100))]) }, + { parameters := [0, 1], types := [.nat, .nat], result := .bool, + body := (.prim .natLe [(.var 1), (.value .nat (.nat 10))]) }, + { parameters := [0, 1], types := [.nat, .nat], result := (.pair .nat .nat), + body := (.call 4 [(.var 0), (.var 1)]) }, + { parameters := [0, 1], types := [.nat, .nat], result := (.pair .nat .nat), + body := (.build .pair (.pair .nat .nat) [(.prim .natAdd [(.var 0), (.var 1)]), (.var 1)]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.result (.pair .nat .nat) (.pair .bool .bool))) (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.copy (.generated .binding 0))), (.mk (.bind (.generated .binding 3)) (some .nat) (.copy (.generated .binding 1)))] (.cond (.call (.function 1) [(.copy (.generated .binding 2))] false) (.mk [] (.cond (.call (.function 2) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3))] false) (.mk [(.mk (.bind (.generated .binding 4)) (some (.pair .nat .nat)) (.call (.function 3) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3))] true))] (.cond (.call (.function 1) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 1)), .wild]) none (.copy (.generated .binding 4)))] (.move (.generated .part 1))))] false) (.mk [] (.succeed (.construct (.ok (.pair .nat .nat) (.pair .bool .bool)) [(.copy (.generated .binding 4))]))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool true)))]))))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))])))))), + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 3)) none (.lit (.nat 100)))] (.call (.runtime .natLe) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] false))), + (.function (.generated .function 2) [{ pattern := .wild, type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 5)) none (.lit (.nat 10)))] (.call (.runtime .natLe) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false))), + (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.pair .nat .nat)) (.mk [] (.call (.function 4) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false))), + (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.pair .nat .nat)) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] true))) (.copy (.generated .binding 1))))))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some .nat) (.copy (.generated .binding 0))), (.mk (.bind (.generated .binding 3)) (some .nat) (.copy (.generated .binding 1)))], (.cond (.call (.function 1) [(.copy (.generated .binding 2))] false) (.mk [] (.cond (.call (.function 2) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3))] false) (.mk [(.mk (.bind (.generated .binding 4)) (some (.pair .nat .nat)) (.call (.function 3) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3))] true))] (.cond (.call (.function 1) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 1)), .wild]) none (.copy (.generated .binding 4)))] (.move (.generated .part 1))))] false) (.mk [] (.succeed (.construct (.ok (.pair .nat .nat) (.pair .bool .bool)) [(.copy (.generated .binding 4))]))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool true)))]))))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))])))), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.letBind (Corr.var rfl rfl) rfl (Corr.letBind (Corr.var rfl rfl) rfl (Corr.cond (lc := []) (ce := (.call (.function 1) [(.copy (.generated .binding 2))] false)) (lk := []) (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 2) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3))] false) (.mk [(.mk (.bind (.generated .binding 4)) (some (.pair .nat .nat)) (.call (.function 3) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3))] true))] (.cond (.call (.function 1) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 1)), .wild]) none (.copy (.generated .binding 4)))] (.move (.generated .part 1))))] false) (.mk [] (.succeed (.construct (.ok (.pair .nat .nat) (.pair .bool .bool)) [(.copy (.generated .binding 4))]))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool true)))]))))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))))) (lb := []) (tb := (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))]))) (Corr.cond (lc := []) (ce := (.call (.function 2) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3))] false)) (lk := []) (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .binding 4)) (some (.pair .nat .nat)) (.call (.function 3) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3))] true))]) (ta := (.cond (.call (.function 1) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 1)), .wild]) none (.copy (.generated .binding 4)))] (.move (.generated .part 1))))] false) (.mk [] (.succeed (.construct (.ok (.pair .nat .nat) (.pair .bool .bool)) [(.copy (.generated .binding 4))]))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool true)))]))))) (lb := []) (tb := (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))) (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := []) (ce := (.call (.function 1) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 1)), .wild]) none (.copy (.generated .binding 4)))] (.move (.generated .part 1))))] false)) (lk := []) (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 1)), .wild]) none (.copy (.generated .binding 4)))]) (tail := (.move (.generated .part 1))) (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct (.ok (.pair .nat .nat) (.pair .bool .bool)) [(.copy (.generated .binding 4))]))) (lb := []) (tb := (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool true)))]))) (Corr.fOfB (Corr.build (ts := [(.pair .nat .nat)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl))))) (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)))) (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl))))))⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 3)) none (.lit (.nat 100)))], (.call (.runtime .natLe) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] false), [(0, .nat, (some 0))], rfl, rfl, + (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 5)) none (.lit (.nat 10)))], (.call (.runtime .natLe) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false), [(1, .nat, (some 1)), (0, .nat, none)], rfl, rfl, + (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun3 : FunOK program krate flags 3 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 4) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.callF (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)⟩⟩ + +theorem fun4 : FunOK program krate flags 4 := + ⟨_, rfl, .inl ⟨_, _, [], (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] true))) (.copy (.generated .binding 1)))), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | 3 => exact fun3 + | 4 => exact fun4 + | _ + 5 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.RustStd diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R6.lean b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R6.lean new file mode 100644 index 000000000..112c5f073 --- /dev/null +++ b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R6.lean @@ -0,0 +1,83 @@ +import LexLeanPreservation.Core +import LexLeanPreservation.Values +import LexLeanPreservation.Primitives +import LexLeanPreservation.Fixed +import LexLeanPreservation.Keys +import LexLeanPreservation.Templates +import LexLeanPreservation.Validate +import Models.Flows +import Models.Glyphs +import Models.Ledger +import Models.Main +import Models.Pipeline +import Models.Policy +import Models.Recognizer +import Models.Session +import Models.Triage +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +set_option linter.unusedVariables false +namespace LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6 + +def __prog : _root_.LexLeanTarget.TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1], types := [.nat, .nat], result := (.result (.pair .nat .nat) (.pair .bool .bool)), + body := (.«let» 2 .nat (.var 0) (.«let» 3 .nat (.var 1) (.cond (.call 1 [(.var 2)]) (.cond (.call 2 [(.var 2), (.var 3)]) (.«let» 4 (.pair .nat .nat) (.call 3 [(.var 2), (.var 3)]) (.cond (.call 1 [(.first (.var 4))]) (.cond (.call 4 [(.var 2), (.var 3), (.first (.var 4)), (.second (.var 4))]) (.build .ok (.result (.pair .nat .nat) (.pair .bool .bool)) [(.var 4)]) (.build .error (.result (.pair .nat .nat) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])])])) (.build .error (.result (.pair .nat .nat) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .true .bool [])])]))) (.build .error (.result (.pair .nat .nat) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])])) (.build .error (.result (.pair .nat .nat) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])])])))) }, + { parameters := [0], types := [.nat], result := .bool, + body := (.prim .natLe [(.var 0), (.value .nat (.nat 100))]) }, + { parameters := [0, 1], types := [.nat, .nat], result := .bool, + body := (.prim .natLe [(.var 1), (.value .nat (.nat 10))]) }, + { parameters := [0, 1], types := [.nat, .nat], result := (.pair .nat .nat), + body := (.call 5 [(.var 0), (.var 1)]) }, + { parameters := [0, 1, 2, 3], types := [.nat, .nat, .nat, .nat], result := .bool, + body := (.prim .natLe [(.var 0), (.var 2)]) }, + { parameters := [0, 1], types := [.nat, .nat], result := (.pair .nat .nat), + body := (.build .pair (.pair .nat .nat) [(.prim .natAdd [(.var 0), (.var 1)]), (.var 1)]) }] } + +def __fits_1 (s : Nat) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_1 (s : Nat) : _root_.LexLeanPreservation.FunRel __prog 1 [(_root_.LexLeanTarget.TargetSyntax.Value.nat s)] (_root_.LexLeanPreservation.Rel (__fits_1 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Models.Ledger.cappedCheck s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe s (100 : Nat))) + +def __fits_2 (s : Nat) (x : Nat) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_2 (s : Nat) (x : Nat) : _root_.LexLeanPreservation.FunRel __prog 2 [(_root_.LexLeanTarget.TargetSyntax.Value.nat s), (_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_2 s x) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Models.Ledger.smallCheck s x))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe x (10 : Nat))) + +def __fits_5 (s : Nat) (x : Nat) : Bool := + ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (s + x) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_5 (s : Nat) (x : Nat) : _root_.LexLeanPreservation.FunRel __prog 5 [(_root_.LexLeanTarget.TargetSyntax.Value.nat s), (_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_5 s x) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) (Models.Ledger.Spill s x))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd s x)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) + +def __fits_3 (_ystate : Nat) (_yinput : Nat) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && (__fits_5 (_ystate) (_yinput))) + +attribute [local irreducible] Models.Ledger.Spill in +theorem __rel_3 (_ystate : Nat) (_yinput : Nat) : _root_.LexLeanPreservation.FunRel __prog 3 [(_root_.LexLeanTarget.TargetSyntax.Value.nat _ystate), (_root_.LexLeanTarget.TargetSyntax.Value.nat _yinput)] (_root_.LexLeanPreservation.Rel (__fits_3 _ystate _yinput) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) (Models.Ledger.SpillRawModel _ystate _yinput))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_5 (_ystate) (_yinput))) + +def __fits_4 (s : Nat) (x : Nat) (t : Nat) (y : Nat) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_4 (s : Nat) (x : Nat) (t : Nat) (y : Nat) : _root_.LexLeanPreservation.FunRel __prog 4 [(_root_.LexLeanTarget.TargetSyntax.Value.nat s), (_root_.LexLeanTarget.TargetSyntax.Value.nat x), (_root_.LexLeanTarget.TargetSyntax.Value.nat t), (_root_.LexLeanTarget.TargetSyntax.Value.nat y)] (_root_.LexLeanPreservation.Rel (__fits_4 s x t y) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Models.Ledger.growsCheck s x t y))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe s t)) + +def __fits_0 (s : Nat) (x : Nat) : Bool := + (Bool.true && (let _ychecked1_state : Nat := s; (Bool.true && (let _ychecked1_input : Nat := x; (((Bool.true && Bool.true) && (__fits_1 (_ychecked1_state))) && (if (Models.Ledger.cappedCheck (_ychecked1_state)) then (((Bool.true && (Bool.true && Bool.true)) && (__fits_2 (_ychecked1_state) (_ychecked1_input))) && (if (Models.Ledger.smallCheck (_ychecked1_state) (_ychecked1_input)) then (((Bool.true && (Bool.true && Bool.true)) && (__fits_3 (_ychecked1_state) (_ychecked1_input))) && (let _ychecked1_step : (Prod Nat Nat) := (Models.Ledger.SpillRawModel (_ychecked1_state) (_ychecked1_input)); (((Bool.true && Bool.true) && (__fits_1 ((_ychecked1_step).1))) && (if (Models.Ledger.cappedCheck ((_ychecked1_step).1)) then (((Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true)))) && (__fits_4 (_ychecked1_state) (_ychecked1_input) ((_ychecked1_step).1) ((_ychecked1_step).2))) && (if (Models.Ledger.growsCheck (_ychecked1_state) (_ychecked1_input) ((_ychecked1_step).1) ((_ychecked1_step).2)) then ((Bool.true && Bool.true) && Bool.true) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))))) + +attribute [local irreducible] Models.Ledger.SpillRawModel Models.Ledger.cappedCheck Models.Ledger.growsCheck Models.Ledger.smallCheck in +theorem __rel_0 (s : Nat) (x : Nat) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat s), (_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_0 s x) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Models.Main.ledgerFull s x))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (let _ychecked1_state : Nat := s; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_var rfl) (let _ychecked1_input : Nat := x; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (Bool.true && Bool.true)) && (__fits_2 (_ychecked1_state) (_ychecked1_input))) && (if (Models.Ledger.smallCheck (_ychecked1_state) (_ychecked1_input)) then (((Bool.true && (Bool.true && Bool.true)) && (__fits_3 (_ychecked1_state) (_ychecked1_input))) && (let _ychecked1_step : (Prod Nat Nat) := (Models.Ledger.SpillRawModel (_ychecked1_state) (_ychecked1_input)); (((Bool.true && Bool.true) && (__fits_1 ((_ychecked1_step).1))) && (if (Models.Ledger.cappedCheck ((_ychecked1_step).1)) then (((Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true)))) && (__fits_4 (_ychecked1_state) (_ychecked1_input) ((_ychecked1_step).1) ((_ychecked1_step).2))) && (if (Models.Ledger.growsCheck (_ychecked1_state) (_ychecked1_input) ((_ychecked1_step).1) ((_ychecked1_step).2)) then ((Bool.true && Bool.true) && Bool.true) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (if __b then (if (Models.Ledger.smallCheck (_ychecked1_state) (_ychecked1_input)) then (let _ychecked1_step : (Prod Nat Nat) := (Models.Ledger.SpillRawModel (_ychecked1_state) (_ychecked1_input)); (if (Models.Ledger.cappedCheck ((_ychecked1_step).1)) then (if (Models.Ledger.growsCheck (_ychecked1_state) (_ychecked1_input) ((_ychecked1_step).1) ((_ychecked1_step).2)) then (Except.ok (_ychecked1_step) : (Except (Prod Bool Bool) (Prod Nat Nat))) else (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod Nat Nat)))) else (Except.error (((Bool.true, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod Nat Nat))))) else (Except.error (((Bool.false, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod Nat Nat)))) else (Except.error (((Bool.false, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod Nat Nat))))) (Models.Ledger.cappedCheck (_ychecked1_state)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_1 (_ychecked1_state))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (Bool.true && Bool.true)) && (__fits_3 (_ychecked1_state) (_ychecked1_input))) && (let _ychecked1_step : (Prod Nat Nat) := (Models.Ledger.SpillRawModel (_ychecked1_state) (_ychecked1_input)); (((Bool.true && Bool.true) && (__fits_1 ((_ychecked1_step).1))) && (if (Models.Ledger.cappedCheck ((_ychecked1_step).1)) then (((Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true)))) && (__fits_4 (_ychecked1_state) (_ychecked1_input) ((_ychecked1_step).1) ((_ychecked1_step).2))) && (if (Models.Ledger.growsCheck (_ychecked1_state) (_ychecked1_input) ((_ychecked1_step).1) ((_ychecked1_step).2)) then ((Bool.true && Bool.true) && Bool.true) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (if __b then (let _ychecked1_step : (Prod Nat Nat) := (Models.Ledger.SpillRawModel (_ychecked1_state) (_ychecked1_input)); (if (Models.Ledger.cappedCheck ((_ychecked1_step).1)) then (if (Models.Ledger.growsCheck (_ychecked1_state) (_ychecked1_input) ((_ychecked1_step).1) ((_ychecked1_step).2)) then (Except.ok (_ychecked1_step) : (Except (Prod Bool Bool) (Prod Nat Nat))) else (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod Nat Nat)))) else (Except.error (((Bool.true, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod Nat Nat))))) else (Except.error (((Bool.false, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod Nat Nat))))) (Models.Ledger.smallCheck (_ychecked1_state) (_ychecked1_input)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_2 (_ychecked1_state) (_ychecked1_input))) (fun _ => (let _ychecked1_step : (Prod Nat Nat) := (Models.Ledger.SpillRawModel (_ychecked1_state) (_ychecked1_input)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_3 (_ychecked1_state) (_ychecked1_input))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true)))) && (__fits_4 (_ychecked1_state) (_ychecked1_input) ((_ychecked1_step).1) ((_ychecked1_step).2))) && (if (Models.Ledger.growsCheck (_ychecked1_state) (_ychecked1_input) ((_ychecked1_step).1) ((_ychecked1_step).2)) then ((Bool.true && Bool.true) && Bool.true) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (if __b then (if (Models.Ledger.growsCheck (_ychecked1_state) (_ychecked1_input) ((_ychecked1_step).1) ((_ychecked1_step).2)) then (Except.ok (_ychecked1_step) : (Except (Prod Bool Bool) (Prod Nat Nat))) else (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod Nat Nat)))) else (Except.error (((Bool.true, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod Nat Nat))))) (Models.Ledger.cappedCheck ((_ychecked1_step).1)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil) (__rel_1 ((_ychecked1_step).1))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && Bool.true) && Bool.true) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (if __b then (Except.ok (_ychecked1_step) : (Except (Prod Bool Bool) (Prod Nat Nat))) else (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod Nat Nat))))) (Models.Ledger.growsCheck (_ychecked1_state) (_ychecked1_input) ((_ychecked1_step).1) ((_ychecked1_step).2)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil)))) (__rel_4 (_ychecked1_state) (_ychecked1_input) ((_ychecked1_step).1) ((_ychecked1_step).2))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error))))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error))))) + +def denote (s : Nat) (x : Nat) : _root_.LexLeanPreservation.Obs := + _root_.cond (__fits_0 s x) (_root_.LexLeanPreservation.Obs.value (((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Models.Main.ledgerFull s x)))) _root_.LexLeanPreservation.Obs.overflow + +theorem root (s : Nat) (x : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat s), (_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_0 s x) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Models.Main.ledgerFull s x))) := + _root_.LexLeanPreservation.run_of_funRel (__rel_0 s x) + +end LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6 diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R6/Compose/RustStd.lex.tex b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R6/Compose/RustStd.lex.tex new file mode 100644 index 000000000..84cc0c587 --- /dev/null +++ b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R6/Compose/RustStd.lex.tex @@ -0,0 +1,471 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6, + LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.Compose.RustStd.root : @932 := @933 { + all: [LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.RustStd.program +@1 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.RustStd.krate +@2 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.RustStd.flags +@3 := Nat +@4 := #2 +@5 := LexLeanTarget.TargetSyntax.Value.nat +@6 := @5 @4 +@7 := LexLeanTarget.TargetSyntax.Ty.nat +@8 := LexLeanTarget.TargetSyntax.Program +@9 := LexLeanPreservation.Rust.RCrate +@10 := LexLeanPreservation.Rust.Flags +@11 := LexLeanPreservation.Rust.WT +@12 := #3 +@14 := @11 @12 @4 +@15 := #1 +@16 := @14 @15 +@17 := #0 +@18 := @5 @17 +@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 +@26 := LexLeanPreservation.Rust.wt_nat @0 +@27 := @11 @0 +@34 := {c : @9} -> {A : @10} -> (n : @3) -> @27 @4 @15 @18 @7 +@35 := @26 @1 +@36 := @27 @1 +@41 := {A : @10} -> (n : @3) -> @36 @15 @18 @7 +@42 := @35 @2 +@43 := @36 @2 +@46 := (n : @3) -> @43 @18 @7 +@47 := @42 @4 +@49 := @43 @6 @7 +@50 := @5 @15 +@51 := @42 @15 +@53 := @43 @50 @7 +@54 := LexLeanTarget.TargetSyntax.Value +@55 := List.nil.{0} +@56 := List.cons.{0} +@57 := @55 @54 +@58 := @56 @54 +@59 := @58 @50 +@60 := @59 @57 +@61 := @58 @6 +@62 := @61 @60 +@63 := Prod.{0, 0} +@64 := @63 @3 +@65 := @64 @54 +@66 := 1 +@69 := Prod.mk.{0, 0} @3 @54 +@70 := @69 @66 +@71 := @70 @50 +@72 := 0 +@73 := @69 @72 +@74 := @73 @6 +@75 := @55 @65 +@76 := @56 @65 +@78 := @76 @74 @75 +@80 := @76 @71 @78 +@81 := Bool.true +@82 := LexLeanTarget.TargetSyntax.Function +@83 := LexLeanTarget.TargetSyntax.Program.functions +@84 := @83 @0 +@85 := LexLeanTarget.TargetSyntax.Ty +@86 := @55 @3 +@87 := @55 @85 +@88 := LexLeanTarget.TargetSyntax.Ty.unit +@89 := LexLeanTarget.TargetSyntax.Value.unit +@92 := LexLeanTarget.TargetSyntax.Expr.value @88 @89 +@97 := LexLeanTarget.TargetSyntax.Function.mk @86 @87 @88 @92 +@102 := List.getD.{0} @82 @84 @72 @97 +@106 := fun (__e_n : @3) => + LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.RustStd.root @17 @72 +@107 := LexLeanPreservation.Rust.WTL +@115 := {p : @8} -> {c : @9} -> {A : @10} -> @107 @4 @15 @17 @57 @87 +@117 := LexLeanPreservation.Rust.wtl_nil @0 +@118 := @107 @0 +@124 := {c : @9} -> {A : @10} -> @118 @15 @17 @57 @87 +@125 := @117 @1 +@126 := @118 @1 +@130 := {A : @10} -> @126 @17 @57 @87 +@131 := @125 @2 +@132 := @126 @2 +@133 := @132 @57 +@134 := @133 @87 +@135 := List.{0} +@136 := @135 @54 +@137 := @135 @85 +@138 := #6 +@139 := @11 @138 +@140 := #5 +@141 := @139 @140 +@142 := #4 +@145 := @141 @142 @12 @4 +@146 := #7 +@151 := @107 @146 @138 @140 @4 @15 +@152 := #8 +@155 := @107 @152 @146 @138 +@157 := @58 @140 @12 +@158 := @155 @157 +@159 := @56 @85 +@161 := @159 @142 @4 +@171 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {v : @54} -> {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @145) -> (hs : @151) -> @158 @161 +@173 := LexLeanPreservation.Rust.wtl_cons @0 +@193 := {c : @9} -> + {A : @10} -> + {v : @54} -> + {t : @85} -> + {vs : @136} -> + {ts : @137} -> + (h : @27 @140 @142 @12 @4) -> (hs : @118 @138 @140 @4 @15) -> @118 @146 @138 @157 @161 +@194 := @173 @1 +@210 := {A : @10} -> + {v : @54} -> + {t : @85} -> + {vs : @136} -> + {ts : @137} -> (h : @36 @142 @12 @4) -> (hs : @126 @140 @4 @15) -> @126 @138 @157 @161 +@211 := @194 @2 +@213 := @43 @12 @4 +@215 := @132 @4 @15 +@223 := {v : @54} -> + {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @213) -> (hs : @215) -> @132 @157 @161 +@224 := @211 @50 +@225 := @5 @142 +@226 := @43 @225 +@227 := @226 @4 +@228 := @5 @138 +@229 := @58 @228 +@231 := @132 (@229 @12) +@237 := {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @227) -> (hs : @215) -> @231 @161 +@238 := @224 @7 +@239 := @5 @12 +@241 := @43 @239 @7 +@242 := @5 @140 +@243 := @58 @242 +@245 := @132 (@243 @12) +@246 := @159 @7 +@247 := @246 @4 +@252 := {vs : @136} -> {ts : @137} -> (h : @241) -> (hs : @215) -> @245 @247 +@253 := @238 @57 +@254 := @133 @15 +@255 := @58 @225 +@256 := @255 @57 +@261 := {ts : @137} -> (h : @49) -> (hs : @254) -> @132 @256 @247 +@262 := @253 @87 +@263 := @58 @239 +@264 := @263 @57 +@265 := @132 @264 +@266 := @246 @87 +@269 := (h : @53) -> (hs : @134) -> @265 @266 +@270 := @262 @51 +@271 := @61 @57 +@273 := @132 @271 @266 +@274 := (hs : @134) -> @273 +@275 := @270 @131 +@277 := @132 @60 @266 +@278 := @211 @6 +@280 := @43 @242 @4 +@281 := @5 @146 +@282 := @58 @281 +@290 := {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @280) -> (hs : @215) -> @132 (@282 @12) @161 +@291 := @278 @7 +@297 := {vs : @136} -> {ts : @137} -> (h : @226 @7) -> (hs : @215) -> @231 @247 +@298 := @291 @60 +@299 := @265 @15 +@300 := @243 @256 +@301 := @132 @300 +@305 := {ts : @137} -> (h : @241) -> (hs : @299) -> @301 @247 +@306 := @298 @266 +@307 := @255 @264 +@308 := @132 @307 +@309 := @246 @266 +@312 := (h : @49) -> (hs : @273) -> @308 @309 +@313 := @306 @47 +@314 := @263 @271 +@315 := @132 @314 +@317 := (hs : @277) -> @315 @309 +@318 := @313 @275 +@319 := @132 @62 +@320 := @319 @309 +@321 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.denote +@323 := @321 @4 @15 +@324 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.__fits_0 +@326 := @324 @4 @15 +@329 := Models.Main.ledgerFull @4 @15 +@330 := Bool +@332 := @63 @330 @330 +@333 := @64 @3 +@334 := LexLeanTarget.TargetSyntax.Value.bool +@335 := LexLeanPreservation.encPair +@339 := @335 @330 @330 @334 @334 +@343 := @335 @3 @3 @5 @5 +@349 := LexLeanPreservation.encExcept @332 @333 @339 @343 @329 +@352 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.root @4 @15 +@353 := Ne.{1} +@354 := LexLeanPreservation.Obs +@355 := @353 @354 +@356 := LexLeanPreservation.Rel +@359 := @355 (@356 @15 @17) +@360 := LexLeanPreservation.Obs.stuck +@363 := (f : @330) -> (v : @54) -> @359 @360 +@365 := LexLeanPreservation.Rust.rel_ne_stuck @326 +@372 := (v : @54) -> @355 (@356 (@324 @12 @4) @17) @360 +@373 := @365 @349 +@377 := @355 (@356 @326 @349) @360 +@378 := @135 @65 +@379 := LexLeanPreservation.Rust.FunSem +@380 := #9 +@386 := (n : @3) -> @379 @380 @152 @146 @17 @138 +@387 := Eq.{1} +@388 := Option.{0} +@389 := @388 @82 +@390 := @387 @389 +@397 := LexLeanRuntime.index (@135 @82) @82 (LexLeanRuntime.instIndexableList @82) +@401 := @390 (@397 (@83 @380) @138) +@402 := Option.some.{0} +@403 := @402 @82 +@404 := @403 @140 +@405 := @401 @404 +@406 := #10 +@410 := @107 @406 @380 @152 @140 +@411 := LexLeanTarget.TargetSyntax.Function.types +@412 := @411 @138 +@413 := @410 @412 +@414 := @388 @378 +@415 := @387 @414 +@416 := LexLeanTarget.TargetSemantics.bindAll +@417 := LexLeanTarget.TargetSyntax.Function.parameters +@422 := @415 (@416 (@417 @146) @138 @75) +@423 := @402 @378 +@424 := @423 @140 +@425 := @422 @424 +@426 := @388 @330 +@427 := @387 @426 +@428 := LexLeanPreservation.Rust.fnFallible +@429 := #11 +@432 := @427 (@428 @429 @380) +@433 := @402 @330 +@434 := @433 @140 +@435 := @432 @434 +@436 := LexLeanPreservation.RunConv +@437 := #13 +@441 := @436 @437 @406 @152 @140 +@443 := @355 @138 @360 +@444 := Exists.{1} +@445 := LexLeanPreservation.Rust.ROut +@446 := @444 @445 +@447 := And +@448 := LexLeanPreservation.Rust.RealizesFn +@452 := @447 (@448 @380 @152 @17) +@453 := LexLeanPreservation.Rust.RCI +@455 := @453 #15 +@456 := LexLeanPreservation.Rust.fnIdent +@457 := @456 @437 +@464 := (hne : @443) -> @446 (fun (ro : @445) => @452 (@455 @457 @429 @17)) +@479 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {f : @3} -> + {fn : @82} -> + {args : @136} -> + {env : @378} -> + {F : @330} -> + {o : @354} -> + (hB : @386) -> + (hfn : @405) -> (hwt : @413) -> (hbind : @425) -> (hF : @435) -> (hA : @441) -> @464 +@481 := LexLeanPreservation.Rust.compose @0 +@482 := @379 @0 +@487 := (n : @3) -> @482 @152 @146 @17 @138 +@488 := @397 @84 +@491 := @390 (@488 @138) @404 +@495 := @118 @380 @152 @140 @412 +@496 := @436 @0 +@499 := @496 @406 @152 @140 +@513 := {c : @9} -> + {A : @10} -> + {f : @3} -> + {fn : @82} -> + {args : @136} -> + {env : @378} -> + {F : @330} -> + {o : @354} -> + (hB : @487) -> + (hfn : @491) -> (hwt : @495) -> (hbind : @425) -> (hF : @435) -> (hA : @499) -> @464 +@514 := @481 @1 +@515 := @482 @1 +@519 := (n : @3) -> @515 @146 @17 @138 +@522 := @126 @152 @140 @412 +@523 := @428 @1 +@526 := @427 (@523 @380) @434 +@527 := @453 @1 +@537 := (hbind : @425) -> + (hF : @526) -> (hA : @499) -> (hne : @443) -> @446 (fun (ro : @445) => @452 (@527 @457 @429 @17)) +@547 := {A : @10} -> + {f : @3} -> + {fn : @82} -> + {args : @136} -> + {env : @378} -> {F : @330} -> {o : @354} -> (hB : @519) -> (hfn : @491) -> (hwt : @522) -> @537 +@548 := @514 @2 +@550 := @515 @2 @17 +@552 := (n : @3) -> @550 @138 +@553 := @132 @140 +@554 := @553 @412 +@563 := {f : @3} -> + {fn : @82} -> + {args : @136} -> + {env : @378} -> {F : @330} -> {o : @354} -> (hB : @552) -> (hfn : @491) -> (hwt : @554) -> @537 +@564 := @548 @72 +@566 := (n : @3) -> @550 @72 +@567 := @488 @72 +@568 := @390 @567 +@569 := @568 @404 +@570 := @523 @72 +@571 := @427 @570 +@572 := @571 @434 +@573 := @496 @72 +@575 := @573 @152 @140 +@577 := @527 (@456 @72) +@585 := (hF : @572) -> (hA : @575) -> (hne : @443) -> @446 (fun (ro : @445) => @452 (@577 @429 @17)) +@594 := {fn : @82} -> + {args : @136} -> + {env : @378} -> + {F : @330} -> {o : @354} -> (hB : @566) -> (hfn : @569) -> (hwt : @554) -> (hbind : @425) -> @585 +@595 := @564 @102 +@597 := @568 (@403 @102) +@598 := @411 @102 +@599 := @553 @598 +@601 := @416 (@417 @102) +@613 := {args : @136} -> + {env : @378} -> + {F : @330} -> + {o : @354} -> + (hB : @566) -> (hfn : @597) -> (hwt : @599) -> (hbind : @415 (@601 @138 @75) @424) -> @585 +@614 := @595 @62 +@616 := @282 (@229 @57) +@618 := @132 @616 @598 +@620 := @58 (@5 @152) +@622 := @620 (@282 @57) +@626 := @415 (@601 @622 @75) @424 +@628 := @58 (@5 @406) +@630 := @58 (@5 @380) +@632 := @628 (@630 @57) +@634 := @573 @632 @140 +@636 := @58 (@5 @437) +@639 := @58 (@5 #12) +@656 := {env : @378} -> + {F : @330} -> + {o : @354} -> + (hB : @566) -> + (hfn : @597) -> + (hwt : @618) -> + (hbind : @626) -> + (hF : @572) -> + (hA : @634) -> (hne : @443) -> @446 (fun (ro : @445) => @452 (@577 (@636 (@639 @57)) @17)) +@657 := @614 @80 +@659 := @229 (@243 @57) +@661 := @132 @659 @598 +@672 := @415 (@601 @616 @75) (@423 (@76 (@70 @228) (@76 (@73 @281) @75))) +@674 := @630 (@620 @57) +@676 := @573 @674 @140 +@678 := @58 (@5 @429) +@694 := {F : @330} -> + {o : @354} -> + (hB : @566) -> + (hfn : @597) -> + (hwt : @661) -> + (hbind : @672) -> + (hF : @572) -> + (hA : @676) -> (hne : @443) -> @446 (fun (ro : @445) => @452 (@577 (@639 (@678 @57)) @17)) +@695 := @657 @81 +@696 := @301 @598 +@707 := @415 (@601 @659 @75) (@423 (@76 (@70 @242) (@76 (@73 @228) @75))) +@709 := @571 (@433 @81) +@711 := @573 @622 @140 +@712 := @448 @81 +@730 := {o : @354} -> + (hB : @566) -> + (hfn : @597) -> + (hwt : @696) -> + (hbind : @707) -> + (hF : @709) -> + (hA : @711) -> + (hne : @443) -> @446 (fun (ro : @445) => @447 (@712 @152 @17) (@577 (@678 (@628 @57)) @17)) +@731 := @695 @323 +@732 := @308 @598 +@743 := @415 (@601 @300 @75) (@423 (@76 (@70 @225) (@76 (@73 @242) @75))) +@744 := @573 @616 +@746 := @321 @146 @138 +@747 := @744 @746 +@749 := @321 @152 @146 +@768 := (hB : @566) -> + (hfn : @597) -> + (hwt : @732) -> + (hbind : @743) -> + (hF : @709) -> + (hA : @747) -> + (hne : @355 @749 @360) -> + @446 (fun (ro : @445) => @447 (@712 (@321 @406 @380) @17) (@577 @632 @17)) +@769 := @731 @106 +@770 := @315 @598 +@781 := @415 (@601 @307 @75) (@423 (@76 (@70 @239) (@76 (@73 @225) @75))) +@782 := @573 @659 +@784 := @321 @138 @140 +@803 := (hfn : @597) -> + (hwt : @770) -> + (hbind : @781) -> + (hF : @709) -> + (hA : @782 @784) -> + (hne : @355 @746 @360) -> + @446 (fun (ro : @445) => @447 (@712 (@321 @380 @152) @17) (@577 @674 @17)) +@804 := Eq.refl.{1} +@807 := @769 (@804 @389 @567) +@808 := @319 @598 +@819 := @415 (@601 @314 @75) (@423 (@76 (@70 @6) (@76 (@73 @239) @75))) +@820 := @573 @300 +@822 := @321 @140 @142 +@838 := (hwt : @808) -> + (hbind : @819) -> + (hF : @709) -> + (hA : @820 @822) -> + (hne : @355 @784 @360) -> @446 (fun (ro : @445) => @447 (@712 @749 @17) (@577 @622 @17)) +@839 := @807 @318 +@841 := @601 @62 @75 +@844 := @415 @841 (@423 @80) +@845 := @573 @307 +@847 := @321 @142 @12 +@862 := (hbind : @844) -> + (hF : @709) -> + (hA : @845 @847) -> + (hne : @355 @822 @360) -> @446 (fun (ro : @445) => @447 (@712 @746 @17) (@577 @616 @17)) +@865 := @839 (@804 @414 @841) +@866 := @573 @314 +@868 := @321 @12 @4 +@882 := (hF : @709) -> + (hA : @866 @868) -> + (hne : @355 @847 @360) -> @446 (fun (ro : @445) => @447 (@712 @784 @17) (@577 @659 @17)) +@885 := @865 (@804 @426 @570) +@899 := (hA : @573 @62 @323) -> + (hne : @355 @868 @360) -> @446 (fun (ro : @445) => @447 (@712 @822 @17) (@577 @300 @17)) +@900 := @885 @352 +@911 := (hne : @355 @323 @360) -> @446 (fun (ro : @445) => @447 (@712 @847 @17) (@577 @307 @17)) +@912 := @900 @373 +@918 := @447 (@712 @868 @17) (@577 @314 @17) +@920 := @446 (fun (ro : @445) => @918) +@922 := @446 (fun (__e_ro : @445) => @918) +@927 := LexLeanPreservation.Rust.RepresentableL (@59 (@58 @18 @57)) +@928 := (__e_hrep : @927) -> @922 +@929 := fun (__e_hrep : @927) => @912 +@930 := (x : @3) -> @928 +@931 := fun (x : @3) => @929 +@932 := (s : @3) -> @930 +@933 := fun (s : @3) => @931 +\end{coremodule} +\end{lexlean} diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R6/RustStd.lean b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R6/RustStd.lean new file mode 100644 index 000000000..a01fe2f90 --- /dev/null +++ b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R6/RustStd.lean @@ -0,0 +1,73 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1], types := [.nat, .nat], result := (.result (.pair .nat .nat) (.pair .bool .bool)), + body := (.«let» 2 .nat (.var 0) (.«let» 3 .nat (.var 1) (.cond (.call 1 [(.var 2)]) (.cond (.call 2 [(.var 2), (.var 3)]) (.«let» 4 (.pair .nat .nat) (.call 3 [(.var 2), (.var 3)]) (.cond (.call 1 [(.first (.var 4))]) (.cond (.call 4 [(.var 2), (.var 3), (.first (.var 4)), (.second (.var 4))]) (.build .ok (.result (.pair .nat .nat) (.pair .bool .bool)) [(.var 4)]) (.build .error (.result (.pair .nat .nat) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])])])) (.build .error (.result (.pair .nat .nat) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .true .bool [])])]))) (.build .error (.result (.pair .nat .nat) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])])) (.build .error (.result (.pair .nat .nat) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])])])))) }, + { parameters := [0], types := [.nat], result := .bool, + body := (.prim .natLe [(.var 0), (.value .nat (.nat 100))]) }, + { parameters := [0, 1], types := [.nat, .nat], result := .bool, + body := (.prim .natLe [(.var 1), (.value .nat (.nat 10))]) }, + { parameters := [0, 1], types := [.nat, .nat], result := (.pair .nat .nat), + body := (.call 5 [(.var 0), (.var 1)]) }, + { parameters := [0, 1, 2, 3], types := [.nat, .nat, .nat, .nat], result := .bool, + body := (.prim .natLe [(.var 0), (.var 2)]) }, + { parameters := [0, 1], types := [.nat, .nat], result := (.pair .nat .nat), + body := (.build .pair (.pair .nat .nat) [(.prim .natAdd [(.var 0), (.var 1)]), (.var 1)]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.result (.pair .nat .nat) (.pair .bool .bool))) (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.copy (.generated .binding 0))), (.mk (.bind (.generated .binding 3)) (some .nat) (.copy (.generated .binding 1)))] (.cond (.call (.function 1) [(.copy (.generated .binding 2))] false) (.mk [] (.cond (.call (.function 2) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3))] false) (.mk [(.mk (.bind (.generated .binding 4)) (some (.pair .nat .nat)) (.call (.function 3) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3))] true))] (.cond (.call (.function 1) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 1)), .wild]) none (.copy (.generated .binding 4)))] (.move (.generated .part 1))))] false) (.mk [] (.cond (.call (.function 4) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.copy (.generated .binding 4)))] (.move (.generated .part 2)))), (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 3))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 3))))] false) (.mk [] (.succeed (.construct (.ok (.pair .nat .nat) (.pair .bool .bool)) [(.copy (.generated .binding 4))]))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))]))))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool true)))]))))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))])))))), + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 5)) none (.lit (.nat 100)))] (.call (.runtime .natLe) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false))), + (.function (.generated .function 2) [{ pattern := .wild, type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 7)) none (.lit (.nat 10)))] (.call (.runtime .natLe) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false))), + (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.pair .nat .nat)) (.mk [] (.call (.function 5) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false))), + (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := .wild, type := .nat }, { pattern := (.bind (.generated .binding 2)), type := .nat }, { pattern := .wild, type := .nat }] .bool (.mk [(.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 2)))] (.call (.runtime .natLe) [(.move (.generated .operand 8)), (.move (.generated .operand 9))] false))), + (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.pair .nat .nat)) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] true))) (.copy (.generated .binding 1))))))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some .nat) (.copy (.generated .binding 0))), (.mk (.bind (.generated .binding 3)) (some .nat) (.copy (.generated .binding 1)))], (.cond (.call (.function 1) [(.copy (.generated .binding 2))] false) (.mk [] (.cond (.call (.function 2) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3))] false) (.mk [(.mk (.bind (.generated .binding 4)) (some (.pair .nat .nat)) (.call (.function 3) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3))] true))] (.cond (.call (.function 1) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 1)), .wild]) none (.copy (.generated .binding 4)))] (.move (.generated .part 1))))] false) (.mk [] (.cond (.call (.function 4) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.copy (.generated .binding 4)))] (.move (.generated .part 2)))), (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 3))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 3))))] false) (.mk [] (.succeed (.construct (.ok (.pair .nat .nat) (.pair .bool .bool)) [(.copy (.generated .binding 4))]))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))]))))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool true)))]))))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))])))), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.letBind (Corr.var rfl rfl) rfl (Corr.letBind (Corr.var rfl rfl) rfl (Corr.cond (lc := []) (ce := (.call (.function 1) [(.copy (.generated .binding 2))] false)) (lk := []) (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 2) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3))] false) (.mk [(.mk (.bind (.generated .binding 4)) (some (.pair .nat .nat)) (.call (.function 3) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3))] true))] (.cond (.call (.function 1) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 1)), .wild]) none (.copy (.generated .binding 4)))] (.move (.generated .part 1))))] false) (.mk [] (.cond (.call (.function 4) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.copy (.generated .binding 4)))] (.move (.generated .part 2)))), (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 3))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 3))))] false) (.mk [] (.succeed (.construct (.ok (.pair .nat .nat) (.pair .bool .bool)) [(.copy (.generated .binding 4))]))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))]))))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool true)))]))))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))))) (lb := []) (tb := (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))]))) (Corr.cond (lc := []) (ce := (.call (.function 2) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3))] false)) (lk := []) (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .binding 4)) (some (.pair .nat .nat)) (.call (.function 3) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3))] true))]) (ta := (.cond (.call (.function 1) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 1)), .wild]) none (.copy (.generated .binding 4)))] (.move (.generated .part 1))))] false) (.mk [] (.cond (.call (.function 4) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.copy (.generated .binding 4)))] (.move (.generated .part 2)))), (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 3))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 3))))] false) (.mk [] (.succeed (.construct (.ok (.pair .nat .nat) (.pair .bool .bool)) [(.copy (.generated .binding 4))]))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))]))))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool true)))]))))) (lb := []) (tb := (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))) (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := []) (ce := (.call (.function 1) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 1)), .wild]) none (.copy (.generated .binding 4)))] (.move (.generated .part 1))))] false)) (lk := []) (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 1)), .wild]) none (.copy (.generated .binding 4)))]) (tail := (.move (.generated .part 1))) (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 4) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.copy (.generated .binding 4)))] (.move (.generated .part 2)))), (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 3))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 3))))] false) (.mk [] (.succeed (.construct (.ok (.pair .nat .nat) (.pair .bool .bool)) [(.copy (.generated .binding 4))]))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))]))))) (lb := []) (tb := (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool true)))]))) (Corr.cond (lc := []) (ce := (.call (.function 4) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.copy (.generated .binding 4)))] (.move (.generated .part 2)))), (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 3))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 3))))] false)) (lk := []) (Corr.callOps (ts := [.nat, .nat, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.copy (.generated .binding 4)))]) (tail := (.move (.generated .part 2))) (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 3))]) none (.copy (.generated .binding 4)))]) (tail := (.move (.generated .part 3))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lNil)))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct (.ok (.pair .nat .nat) (.pair .bool .bool)) [(.copy (.generated .binding 4))]))) (lb := []) (tb := (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))]))) (Corr.fOfB (Corr.build (ts := [(.pair .nat .nat)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)))) (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl))))) (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)))) (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl))))))⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 5)) none (.lit (.nat 100)))], (.call (.runtime .natLe) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false), [(0, .nat, (some 0))], rfl, rfl, + (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 7)) none (.lit (.nat 10)))], (.call (.runtime .natLe) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false), [(1, .nat, (some 1)), (0, .nat, none)], rfl, rfl, + (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun3 : FunOK program krate flags 3 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 5) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.callF (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)⟩⟩ + +theorem fun4 : FunOK program krate flags 4 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 2)))], (.call (.runtime .natLe) [(.move (.generated .operand 8)), (.move (.generated .operand 9))] false), [(3, .nat, none), (2, .nat, (some 2)), (1, .nat, none), (0, .nat, (some 0))], rfl, rfl, + (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun5 : FunOK program krate flags 5 := + ⟨_, rfl, .inl ⟨_, _, [], (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] true))) (.copy (.generated .binding 1)))), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | 3 => exact fun3 + | 4 => exact fun4 + | 5 => exact fun5 + | _ + 6 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.RustStd diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R7.lean b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R7.lean new file mode 100644 index 000000000..2ff244563 --- /dev/null +++ b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R7.lean @@ -0,0 +1,75 @@ +import LexLeanPreservation.Core +import LexLeanPreservation.Values +import LexLeanPreservation.Primitives +import LexLeanPreservation.Fixed +import LexLeanPreservation.Keys +import LexLeanPreservation.Templates +import LexLeanPreservation.Validate +import Models.Flows +import Models.Glyphs +import Models.Ledger +import Models.Main +import Models.Pipeline +import Models.Policy +import Models.Recognizer +import Models.Session +import Models.Triage +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +set_option linter.unusedVariables false +namespace LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7 + +def __prog : _root_.LexLeanTarget.TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0], types := [.nat], result := (.result .nat (.pair .bool .bool)), + body := (.«let» 1 .nat (.var 0) (.cond (.call 1 [(.var 1)]) (.«let» 2 .nat (.call 2 [(.var 1)]) (.cond (.call 3 [(.var 1), (.var 2)]) (.build .ok (.result .nat (.pair .bool .bool)) [(.var 2)]) (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])])]))) (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])]))) }, + { parameters := [0], types := [.nat], result := .bool, + body := (.prim .natLe [(.var 0), (.value .nat (.nat 10))]) }, + { parameters := [0], types := [.nat], result := .nat, + body := (.call 4 [(.var 0)]) }, + { parameters := [0, 1], types := [.nat, .nat], result := .bool, + body := (.prim .natLe [(.var 1), (.var 0)]) }, + { parameters := [0], types := [.nat], result := .nat, + body := (.prim .natSub [(.var 0), (.value .nat (.nat 1))]) }] } + +def __fits_1 (x : Nat) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_1 (x : Nat) : _root_.LexLeanPreservation.FunRel __prog 1 [(_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_1 x) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Models.Ledger.withinCheck x))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe x (10 : Nat))) + +def __fits_4 (x : Nat) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_4 (x : Nat) : _root_.LexLeanPreservation.FunRel __prog 4 [(_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_4 x) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Models.Ledger.Guess x))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub x (1 : Nat))) + +def __fits_2 (_yinput : Nat) : Bool := + ((Bool.true && Bool.true) && (__fits_4 (_yinput))) + +attribute [local irreducible] Models.Ledger.Guess in +theorem __rel_2 (_yinput : Nat) : _root_.LexLeanPreservation.FunRel __prog 2 [(_root_.LexLeanTarget.TargetSyntax.Value.nat _yinput)] (_root_.LexLeanPreservation.Rel (__fits_2 _yinput) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Models.Ledger.GuessModel _yinput))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_4 (_yinput))) + +def __fits_3 (x : Nat) (y : Nat) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_3 (x : Nat) (y : Nat) : _root_.LexLeanPreservation.FunRel __prog 3 [(_root_.LexLeanTarget.TargetSyntax.Value.nat x), (_root_.LexLeanTarget.TargetSyntax.Value.nat y)] (_root_.LexLeanPreservation.Rel (__fits_3 x y) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Models.Ledger.belowCheck x y))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe y x)) + +def __fits_0 (x : Nat) : Bool := + (Bool.true && (let _ychecked1_input : Nat := x; (((Bool.true && Bool.true) && (__fits_1 (_ychecked1_input))) && (if (Models.Ledger.withinCheck (_ychecked1_input)) then (((Bool.true && Bool.true) && (__fits_2 (_ychecked1_input))) && (let _ychecked1_output : Nat := (Models.Ledger.GuessModel (_ychecked1_input)); (((Bool.true && (Bool.true && Bool.true)) && (__fits_3 (_ychecked1_input) (_ychecked1_output))) && (if (Models.Ledger.belowCheck (_ychecked1_input) (_ychecked1_output)) then ((Bool.true && Bool.true) && Bool.true) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) + +attribute [local irreducible] Models.Ledger.GuessModel Models.Ledger.belowCheck Models.Ledger.withinCheck in +theorem __rel_0 (x : Nat) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_0 x) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (Models.Main.guessChecked x))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (let _ychecked1_input : Nat := x; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && (__fits_2 (_ychecked1_input))) && (let _ychecked1_output : Nat := (Models.Ledger.GuessModel (_ychecked1_input)); (((Bool.true && (Bool.true && Bool.true)) && (__fits_3 (_ychecked1_input) (_ychecked1_output))) && (if (Models.Ledger.belowCheck (_ychecked1_input) (_ychecked1_output)) then ((Bool.true && Bool.true) && Bool.true) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (let _ychecked1_output : Nat := (Models.Ledger.GuessModel (_ychecked1_input)); (if (Models.Ledger.belowCheck (_ychecked1_input) (_ychecked1_output)) then (Except.ok (_ychecked1_output) : (Except (Prod Bool Bool) Nat)) else (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)))) else (Except.error (((Bool.false, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)))) (Models.Ledger.withinCheck (_ychecked1_input)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_1 (_ychecked1_input))) (fun _ => (let _ychecked1_output : Nat := (Models.Ledger.GuessModel (_ychecked1_input)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_2 (_ychecked1_input))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && Bool.true) && Bool.true) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Except.ok (_ychecked1_output) : (Except (Prod Bool Bool) Nat)) else (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)))) (Models.Ledger.belowCheck (_ychecked1_input) (_ychecked1_output)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_3 (_ychecked1_input) (_ychecked1_output))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error))))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)))) + +def denote (x : Nat) : _root_.LexLeanPreservation.Obs := + _root_.cond (__fits_0 x) (_root_.LexLeanPreservation.Obs.value (((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (Models.Main.guessChecked x)))) _root_.LexLeanPreservation.Obs.overflow + +theorem root (x : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_0 x) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (Models.Main.guessChecked x))) := + _root_.LexLeanPreservation.run_of_funRel (__rel_0 x) + +end LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7 diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R7/Compose/RustStd.lex.tex b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R7/Compose/RustStd.lex.tex new file mode 100644 index 000000000..1dedc80f2 --- /dev/null +++ b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R7/Compose/RustStd.lex.tex @@ -0,0 +1,421 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7, + LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.Compose.RustStd.root : @838 := @839 { + all: [LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.RustStd.program +@1 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.RustStd.krate +@2 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.RustStd.flags +@3 := Nat +@4 := #1 +@5 := LexLeanTarget.TargetSyntax.Value.nat +@6 := @5 @4 +@7 := LexLeanTarget.TargetSyntax.Ty.nat +@8 := LexLeanTarget.TargetSyntax.Program +@9 := LexLeanPreservation.Rust.RCrate +@10 := LexLeanPreservation.Rust.Flags +@11 := LexLeanPreservation.Rust.WT +@12 := #3 +@13 := @11 @12 +@14 := #2 +@16 := @13 @14 @4 +@17 := #0 +@18 := @5 @17 +@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 +@26 := LexLeanPreservation.Rust.wt_nat @0 +@27 := @11 @0 +@34 := {c : @9} -> {A : @10} -> (n : @3) -> @27 @14 @4 @18 @7 +@35 := @26 @1 +@36 := @27 @1 +@41 := {A : @10} -> (n : @3) -> @36 @4 @18 @7 +@42 := @35 @2 +@43 := @36 @2 +@46 := (n : @3) -> @43 @18 @7 +@47 := @42 @4 +@49 := @43 @6 @7 +@50 := LexLeanTarget.TargetSyntax.Value +@51 := List.nil.{0} +@52 := List.cons.{0} +@53 := @51 @50 +@54 := @52 @50 +@56 := @54 @6 @53 +@57 := Prod.{0, 0} +@59 := @57 @3 @50 +@60 := 0 +@64 := Prod.mk.{0, 0} @3 @50 @60 +@65 := @64 @6 +@66 := @51 @59 +@67 := @52 @59 +@69 := @67 @65 @66 +@70 := Bool.false +@71 := LexLeanTarget.TargetSyntax.Function +@72 := LexLeanTarget.TargetSyntax.Program.functions +@73 := @72 @0 +@74 := LexLeanTarget.TargetSyntax.Ty +@75 := @51 @3 +@76 := @51 @74 +@77 := LexLeanTarget.TargetSyntax.Ty.unit +@78 := LexLeanTarget.TargetSyntax.Value.unit +@81 := LexLeanTarget.TargetSyntax.Expr.value @77 @78 +@86 := LexLeanTarget.TargetSyntax.Function.mk @75 @76 @77 @81 +@91 := List.getD.{0} @71 @73 @60 @86 +@95 := fun (__e_n : @3) => LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.RustStd.root @17 @60 +@96 := LexLeanPreservation.Rust.WTL +@104 := {p : @8} -> {c : @9} -> {A : @10} -> @96 @14 @4 @17 @53 @76 +@106 := LexLeanPreservation.Rust.wtl_nil @0 +@107 := @96 @0 +@113 := {c : @9} -> {A : @10} -> @107 @4 @17 @53 @76 +@114 := @106 @1 +@115 := @107 @1 +@119 := {A : @10} -> @115 @17 @53 @76 +@120 := @114 @2 +@121 := @115 @2 +@122 := @121 @53 +@123 := @122 @76 +@124 := List.{0} +@125 := @124 @50 +@126 := @124 @74 +@127 := #6 +@128 := @11 @127 +@129 := #5 +@130 := @128 @129 +@131 := #4 +@134 := @130 @131 @12 @14 +@135 := #7 +@140 := @96 @135 @127 @129 @14 @4 +@141 := #8 +@144 := @96 @141 @135 @127 +@146 := @54 @129 @12 +@147 := @144 @146 +@148 := @52 @74 +@150 := @148 @131 @14 +@160 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {v : @50} -> {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @134) -> (hs : @140) -> @147 @150 +@162 := LexLeanPreservation.Rust.wtl_cons @0 +@182 := {c : @9} -> + {A : @10} -> + {v : @50} -> + {t : @74} -> + {vs : @125} -> + {ts : @126} -> + (h : @27 @129 @131 @12 @14) -> (hs : @107 @127 @129 @14 @4) -> @107 @135 @127 @146 @150 +@183 := @162 @1 +@199 := {A : @10} -> + {v : @50} -> + {t : @74} -> + {vs : @125} -> + {ts : @126} -> (h : @36 @131 @12 @14) -> (hs : @115 @129 @14 @4) -> @115 @127 @146 @150 +@200 := @183 @2 +@202 := @43 @12 @14 +@204 := @121 @14 @4 +@212 := {v : @50} -> + {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @202) -> (hs : @204) -> @121 @146 @150 +@213 := @200 @6 +@214 := @5 @131 +@216 := @43 @214 @14 +@217 := @5 @127 +@218 := @54 @217 +@226 := {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @216) -> (hs : @204) -> @121 (@218 @12) @150 +@227 := @213 @7 +@228 := @5 @12 +@230 := @43 @228 @7 +@231 := @5 @129 +@232 := @54 @231 +@234 := @121 (@232 @12) +@235 := @148 @7 +@236 := @235 @14 +@241 := {vs : @125} -> {ts : @126} -> (h : @230) -> (hs : @204) -> @234 @236 +@242 := @227 @53 +@243 := @5 @14 +@245 := @43 @243 @7 +@246 := @122 @4 +@248 := @54 @214 @53 +@249 := @121 @248 +@253 := {ts : @126} -> (h : @245) -> (hs : @246) -> @249 @236 +@254 := @242 @76 +@256 := @54 @228 @53 +@257 := @121 @256 +@258 := @235 @76 +@261 := (h : @49) -> (hs : @123) -> @257 @258 +@262 := @254 @47 +@264 := @54 @243 @53 +@265 := @121 @264 +@267 := (hs : @123) -> @265 @258 +@268 := @262 @120 +@269 := @121 @56 +@270 := @269 @258 +@271 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.denote +@272 := @271 @4 +@273 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.__fits_0 +@274 := @273 @4 +@276 := Models.Main.guessChecked @4 +@277 := Bool +@279 := @57 @277 @277 +@280 := LexLeanTarget.TargetSyntax.Value.bool +@285 := LexLeanPreservation.encPair @277 @277 @280 @280 +@291 := LexLeanPreservation.encExcept @279 @3 @285 @5 @276 +@293 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.root @4 +@294 := Ne.{1} +@295 := LexLeanPreservation.Obs +@296 := @294 @295 +@297 := LexLeanPreservation.Rel +@300 := @296 (@297 @4 @17) +@301 := LexLeanPreservation.Obs.stuck +@304 := (f : @277) -> (v : @50) -> @300 @301 +@306 := LexLeanPreservation.Rust.rel_ne_stuck @274 +@312 := (v : @50) -> @296 (@297 (@273 @14) @17) @301 +@313 := @306 @291 +@317 := @296 (@297 @274 @291) @301 +@318 := @124 @59 +@319 := LexLeanPreservation.Rust.FunSem +@320 := #9 +@326 := (n : @3) -> @319 @320 @141 @135 @17 @127 +@327 := Eq.{1} +@328 := Option.{0} +@329 := @328 @71 +@330 := @327 @329 +@337 := LexLeanRuntime.index (@124 @71) @71 (LexLeanRuntime.instIndexableList @71) +@341 := @330 (@337 (@72 @320) @127) +@342 := Option.some.{0} +@343 := @342 @71 +@344 := @343 @129 +@345 := @341 @344 +@346 := #10 +@350 := @96 @346 @320 @141 @129 +@351 := LexLeanTarget.TargetSyntax.Function.types +@352 := @351 @127 +@353 := @350 @352 +@354 := @328 @318 +@355 := @327 @354 +@356 := LexLeanTarget.TargetSemantics.bindAll +@357 := LexLeanTarget.TargetSyntax.Function.parameters +@362 := @355 (@356 (@357 @135) @127 @66) +@363 := @342 @318 +@364 := @363 @129 +@365 := @362 @364 +@366 := @328 @277 +@367 := @327 @366 +@368 := LexLeanPreservation.Rust.fnFallible +@369 := #11 +@372 := @367 (@368 @369 @320) +@373 := @342 @277 +@374 := @373 @129 +@375 := @372 @374 +@376 := LexLeanPreservation.RunConv +@377 := #13 +@381 := @376 @377 @346 @141 @129 +@383 := @296 @127 @301 +@384 := Exists.{1} +@385 := LexLeanPreservation.Rust.ROut +@386 := @384 @385 +@387 := And +@388 := LexLeanPreservation.Rust.RealizesFn +@392 := @387 (@388 @320 @141 @17) +@393 := LexLeanPreservation.Rust.RCI +@395 := @393 #15 +@396 := LexLeanPreservation.Rust.fnIdent +@397 := @396 @377 +@404 := (hne : @383) -> @386 (fun (ro : @385) => @392 (@395 @397 @369 @17)) +@419 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {f : @3} -> + {fn : @71} -> + {args : @125} -> + {env : @318} -> + {F : @277} -> + {o : @295} -> + (hB : @326) -> + (hfn : @345) -> (hwt : @353) -> (hbind : @365) -> (hF : @375) -> (hA : @381) -> @404 +@421 := LexLeanPreservation.Rust.compose @0 +@422 := @319 @0 +@427 := (n : @3) -> @422 @141 @135 @17 @127 +@428 := @337 @73 +@431 := @330 (@428 @127) @344 +@435 := @107 @320 @141 @129 @352 +@436 := @376 @0 +@439 := @436 @346 @141 @129 +@453 := {c : @9} -> + {A : @10} -> + {f : @3} -> + {fn : @71} -> + {args : @125} -> + {env : @318} -> + {F : @277} -> + {o : @295} -> + (hB : @427) -> + (hfn : @431) -> (hwt : @435) -> (hbind : @365) -> (hF : @375) -> (hA : @439) -> @404 +@454 := @421 @1 +@455 := @422 @1 +@459 := (n : @3) -> @455 @135 @17 @127 +@462 := @115 @141 @129 @352 +@463 := @368 @1 +@466 := @367 (@463 @320) @374 +@467 := @393 @1 +@477 := (hbind : @365) -> + (hF : @466) -> (hA : @439) -> (hne : @383) -> @386 (fun (ro : @385) => @392 (@467 @397 @369 @17)) +@487 := {A : @10} -> + {f : @3} -> + {fn : @71} -> + {args : @125} -> + {env : @318} -> {F : @277} -> {o : @295} -> (hB : @459) -> (hfn : @431) -> (hwt : @462) -> @477 +@488 := @454 @2 +@490 := @455 @2 @17 +@492 := (n : @3) -> @490 @127 +@493 := @121 @129 +@494 := @493 @352 +@503 := {f : @3} -> + {fn : @71} -> + {args : @125} -> + {env : @318} -> {F : @277} -> {o : @295} -> (hB : @492) -> (hfn : @431) -> (hwt : @494) -> @477 +@504 := @488 @60 +@506 := (n : @3) -> @490 @60 +@507 := @428 @60 +@508 := @330 @507 +@509 := @508 @344 +@510 := @463 @60 +@511 := @367 @510 +@512 := @511 @374 +@513 := @436 @60 +@515 := @513 @141 @129 +@517 := @467 (@396 @60) +@525 := (hF : @512) -> (hA : @515) -> (hne : @383) -> @386 (fun (ro : @385) => @392 (@517 @369 @17)) +@534 := {fn : @71} -> + {args : @125} -> + {env : @318} -> + {F : @277} -> {o : @295} -> (hB : @506) -> (hfn : @509) -> (hwt : @494) -> (hbind : @365) -> @525 +@535 := @504 @91 +@537 := @508 (@343 @91) +@538 := @351 @91 +@539 := @493 @538 +@541 := @356 (@357 @91) +@553 := {args : @125} -> + {env : @318} -> + {F : @277} -> + {o : @295} -> + (hB : @506) -> (hfn : @537) -> (hwt : @539) -> (hbind : @355 (@541 @127 @66) @364) -> @525 +@554 := @535 @56 +@555 := @218 @53 +@557 := @121 @555 @538 +@560 := @54 (@5 @135) @53 +@564 := @355 (@541 @560 @66) @364 +@567 := @54 (@5 @320) @53 +@588 := {env : @318} -> + {F : @277} -> + {o : @295} -> + (hB : @506) -> + (hfn : @537) -> + (hwt : @557) -> + (hbind : @564) -> + (hF : @512) -> + (hA : @513 @567 @129) -> + (hne : @383) -> @386 (fun (ro : @385) => @392 (@517 (@54 (@5 #12) @53) @17)) +@589 := @554 @69 +@590 := @232 @53 +@592 := @121 @590 @538 +@600 := @355 (@541 @555 @66) (@363 (@67 (@64 @217) @66)) +@603 := @54 (@5 @141) @53 +@622 := {F : @277} -> + {o : @295} -> + (hB : @506) -> + (hfn : @537) -> + (hwt : @592) -> + (hbind : @600) -> + (hF : @512) -> + (hA : @513 @603 @129) -> + (hne : @383) -> @386 (fun (ro : @385) => @392 (@517 (@54 (@5 @369) @53) @17)) +@623 := @589 @70 +@624 := @249 @538 +@632 := @355 (@541 @590 @66) (@363 (@67 (@64 @231) @66)) +@634 := @511 (@373 @70) +@636 := @513 @560 @129 +@637 := @388 @70 +@656 := {o : @295} -> + (hB : @506) -> + (hfn : @537) -> + (hwt : @624) -> + (hbind : @632) -> + (hF : @634) -> + (hA : @636) -> + (hne : @383) -> @386 (fun (ro : @385) => @387 (@637 @141 @17) (@517 (@54 (@5 @346) @53) @17)) +@657 := @623 @272 +@658 := @257 @538 +@666 := @355 (@541 @248 @66) (@363 (@67 (@64 @214) @66)) +@667 := @513 @555 +@668 := @271 @127 +@669 := @667 @668 +@670 := @271 @135 +@688 := (hB : @506) -> + (hfn : @537) -> + (hwt : @658) -> + (hbind : @666) -> + (hF : @634) -> + (hA : @669) -> + (hne : @296 @670 @301) -> @386 (fun (ro : @385) => @387 (@637 (@271 @320) @17) (@517 @567 @17)) +@689 := @657 @95 +@690 := @265 @538 +@698 := @355 (@541 @256 @66) (@363 (@67 (@64 @228) @66)) +@699 := @513 @590 +@700 := @271 @129 +@718 := (hfn : @537) -> + (hwt : @690) -> + (hbind : @698) -> + (hF : @634) -> + (hA : @699 @700) -> + (hne : @296 @668 @301) -> @386 (fun (ro : @385) => @387 (@637 (@271 @141) @17) (@517 @603 @17)) +@719 := Eq.refl.{1} +@722 := @689 (@719 @329 @507) +@723 := @269 @538 +@731 := @355 (@541 @264 @66) (@363 (@67 (@64 @243) @66)) +@732 := @513 @248 +@733 := @271 @131 +@749 := (hwt : @723) -> + (hbind : @731) -> + (hF : @634) -> + (hA : @732 @733) -> + (hne : @296 @700 @301) -> @386 (fun (ro : @385) => @387 (@637 @670 @17) (@517 @560 @17)) +@750 := @722 @268 +@752 := @541 @56 @66 +@755 := @355 @752 (@363 @69) +@756 := @513 @256 +@757 := @271 @12 +@772 := (hbind : @755) -> + (hF : @634) -> + (hA : @756 @757) -> + (hne : @296 @733 @301) -> @386 (fun (ro : @385) => @387 (@637 @668 @17) (@517 @555 @17)) +@775 := @750 (@719 @354 @752) +@776 := @513 @264 +@777 := @271 @14 +@791 := (hF : @634) -> + (hA : @776 @777) -> + (hne : @296 @757 @301) -> @386 (fun (ro : @385) => @387 (@637 @700 @17) (@517 @590 @17)) +@794 := @775 (@719 @366 @510) +@808 := (hA : @513 @56 @272) -> + (hne : @296 @777 @301) -> @386 (fun (ro : @385) => @387 (@637 @733 @17) (@517 @248 @17)) +@809 := @794 @293 +@820 := (hne : @296 @272 @301) -> @386 (fun (ro : @385) => @387 (@637 @757 @17) (@517 @256 @17)) +@821 := @809 @313 +@827 := @387 (@637 @777 @17) (@517 @264 @17) +@829 := @386 (fun (ro : @385) => @827) +@831 := @386 (fun (__e_ro : @385) => @827) +@835 := LexLeanPreservation.Rust.RepresentableL (@54 @18 @53) +@836 := (__e_hrep : @835) -> @831 +@837 := fun (__e_hrep : @835) => @821 +@838 := (x : @3) -> @836 +@839 := fun (x : @3) => @837 +\end{coremodule} +\end{lexlean} diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R7/RustStd.lean b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R7/RustStd.lean new file mode 100644 index 000000000..fe696ff74 --- /dev/null +++ b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R7/RustStd.lean @@ -0,0 +1,65 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0], types := [.nat], result := (.result .nat (.pair .bool .bool)), + body := (.«let» 1 .nat (.var 0) (.cond (.call 1 [(.var 1)]) (.«let» 2 .nat (.call 2 [(.var 1)]) (.cond (.call 3 [(.var 1), (.var 2)]) (.build .ok (.result .nat (.pair .bool .bool)) [(.var 2)]) (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])])]))) (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])]))) }, + { parameters := [0], types := [.nat], result := .bool, + body := (.prim .natLe [(.var 0), (.value .nat (.nat 10))]) }, + { parameters := [0], types := [.nat], result := .nat, + body := (.call 4 [(.var 0)]) }, + { parameters := [0, 1], types := [.nat, .nat], result := .bool, + body := (.prim .natLe [(.var 1), (.var 0)]) }, + { parameters := [0], types := [.nat], result := .nat, + body := (.prim .natSub [(.var 0), (.value .nat (.nat 1))]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.result .nat (.pair .bool .bool)) (.mk [(.mk (.bind (.generated .binding 1)) (some .nat) (.copy (.generated .binding 0)))] (.cond (.call (.function 1) [(.copy (.generated .binding 1))] false) (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.call (.function 2) [(.copy (.generated .binding 1))] false))] (.cond (.call (.function 3) [(.copy (.generated .binding 1)), (.copy (.generated .binding 2))] false) (.mk [] (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))])) (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))) (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))))), + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 10)))] (.call (.runtime .natLe) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false))), + (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] .nat (.mk [] (.call (.function 4) [(.copy (.generated .binding 0))] false))), + (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 0)))] (.call (.runtime .natLe) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))), + (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] .nat (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false)))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some .nat) (.copy (.generated .binding 0)))], (.cond (.call (.function 1) [(.copy (.generated .binding 1))] false) (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.call (.function 2) [(.copy (.generated .binding 1))] false))] (.cond (.call (.function 3) [(.copy (.generated .binding 1)), (.copy (.generated .binding 2))] false) (.mk [] (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))])) (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))) (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))), [(0, .nat, (some 0))], rfl, rfl, + (Corr.letBind (Corr.var rfl rfl) rfl (Corr.cond (lc := []) (ce := (.call (.function 1) [(.copy (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .binding 2)) (some .nat) (.call (.function 2) [(.copy (.generated .binding 1))] false))]) (ta := (.cond (.call (.function 3) [(.copy (.generated .binding 1)), (.copy (.generated .binding 2))] false) (.mk [] (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))])) (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))) (lb := []) (tb := (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))])) (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := []) (ce := (.call (.function 3) [(.copy (.generated .binding 1)), (.copy (.generated .binding 2))] false)) (lk := []) (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))])) (lb := []) (tb := (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])) (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl) (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)))) (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl))))⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 10)))], (.call (.runtime .natLe) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false), [(0, .nat, (some 0))], rfl, rfl, + (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 4) [(.copy (.generated .binding 0))] false), [(0, .nat, (some 0))], rfl, rfl, + (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun3 : FunOK program krate flags 3 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 0)))], (.call (.runtime .natLe) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun4 : FunOK program krate flags 4 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 1)))], (.call (.runtime .natSub) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false), [(0, .nat, (some 0))], rfl, rfl, + (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | 3 => exact fun3 + | 4 => exact fun4 + | _ + 5 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.RustStd diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R8.lean b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R8.lean new file mode 100644 index 000000000..b16804d27 --- /dev/null +++ b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R8.lean @@ -0,0 +1,118 @@ +import LexLeanPreservation.Core +import LexLeanPreservation.Values +import LexLeanPreservation.Primitives +import LexLeanPreservation.Fixed +import LexLeanPreservation.Keys +import LexLeanPreservation.Templates +import LexLeanPreservation.Validate +import Models.Flows +import Models.Glyphs +import Models.Ledger +import Models.Main +import Models.Pipeline +import Models.Policy +import Models.Recognizer +import Models.Session +import Models.Triage +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +set_option linter.unusedVariables false +namespace LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8 + +def __prog : _root_.LexLeanTarget.TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1], types := [.nat, .nat], result := (.result (.pair .nat (.result .nat (.pair .bool .bool))) (.pair .bool .bool)), + body := (.«let» 2 .nat (.var 0) (.«let» 3 .nat (.var 1) (.cond (.call 1 [(.var 2)]) (.«let» 4 (.pair .nat (.result .nat (.pair .bool .bool))) (.call 2 [(.var 2), (.var 3)]) (.cond (.call 1 [(.first (.var 4))]) (.build .ok (.result (.pair .nat (.result .nat (.pair .bool .bool))) (.pair .bool .bool)) [(.var 4)]) (.build .error (.result (.pair .nat (.result .nat (.pair .bool .bool))) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .true .bool [])])]))) (.build .error (.result (.pair .nat (.result .nat (.pair .bool .bool))) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])])])))) }, + { parameters := [0], types := [.nat], result := .bool, + body := (.prim .natLe [(.var 0), (.value .nat (.nat 100))]) }, + { parameters := [0, 1], types := [.nat, .nat], result := (.pair .nat (.result .nat (.pair .bool .bool))), + body := (.call 3 [(.var 0), (.var 1)]) }, + { parameters := [0, 1], types := [.nat, .nat], result := (.pair .nat (.result .nat (.pair .bool .bool))), + body := (.«let» 2 (.pair .nat .nat) (.call 4 [(.var 0), (.var 1)]) (.«let» 3 .nat (.second (.var 2)) (.«let» 4 .nat (.first (.var 2)) (.cond (.call 5 [(.var 3)]) (.«let» 5 .nat (.call 6 [(.var 3)]) (.cond (.call 7 [(.var 3), (.var 5)]) (.build .pair (.pair .nat (.result .nat (.pair .bool .bool))) [(.var 4), (.build .ok (.result .nat (.pair .bool .bool)) [(.var 5)])]) (.build .pair (.pair .nat (.result .nat (.pair .bool .bool))) [(.var 0), (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])])])]))) (.build .pair (.pair .nat (.result .nat (.pair .bool .bool))) [(.var 0), (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])])]))))) }, + { parameters := [0, 1], types := [.nat, .nat], result := (.pair .nat .nat), + body := (.call 8 [(.var 0), (.var 1)]) }, + { parameters := [0], types := [.nat], result := .bool, + body := (.prim .natLe [(.var 0), (.value .nat (.nat 10))]) }, + { parameters := [0], types := [.nat], result := .nat, + body := (.call 9 [(.var 0)]) }, + { parameters := [0, 1], types := [.nat, .nat], result := .bool, + body := (.prim .natLe [(.var 1), (.var 0)]) }, + { parameters := [0, 1], types := [.nat, .nat], result := (.pair .nat .nat), + body := (.«let» 2 .nat (.prim .natAdd [(.var 0), (.var 1)]) (.build .pair (.pair .nat .nat) [(.prim .natSub [(.var 2), (.prim .natSub [(.var 2), (.value .nat (.nat 100))])]), (.prim .natSub [(.var 2), (.prim .natSub [(.var 2), (.value .nat (.nat 100))])])])) }, + { parameters := [0], types := [.nat], result := .nat, + body := (.prim .natSub [(.var 0), (.value .nat (.nat 1))]) }] } + +def __fits_1 (s : Nat) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_1 (s : Nat) : _root_.LexLeanPreservation.FunRel __prog 1 [(_root_.LexLeanTarget.TargetSyntax.Value.nat s)] (_root_.LexLeanPreservation.Rel (__fits_1 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Models.Ledger.cappedCheck s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe s (100 : Nat))) + +def __fits_8 (s : Nat) (x : Nat) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (s + x) 18446744073709551616)) && (let total : Nat := (s + x); ((((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true))) + +theorem __rel_8 (s : Nat) (x : Nat) : _root_.LexLeanPreservation.FunRel __prog 8 [(_root_.LexLeanTarget.TargetSyntax.Value.nat s), (_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_8 s x) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) (Models.Ledger.Clamp s x))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (let total : Nat := (s + x); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd s x)) (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub total (100 : Nat))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub total (_root_.LexLeanRuntime.subtract (total) ((100 : Nat)) : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub total (100 : Nat))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub total (_root_.LexLeanRuntime.subtract (total) ((100 : Nat)) : Nat))) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair)) + +def __fits_4 (_ystate : Nat) (_yinput : Nat) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && (__fits_8 (_ystate) (_yinput))) + +attribute [local irreducible] Models.Ledger.Clamp in +theorem __rel_4 (_ystate : Nat) (_yinput : Nat) : _root_.LexLeanPreservation.FunRel __prog 4 [(_root_.LexLeanTarget.TargetSyntax.Value.nat _ystate), (_root_.LexLeanTarget.TargetSyntax.Value.nat _yinput)] (_root_.LexLeanPreservation.Rel (__fits_4 _ystate _yinput) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) (Models.Ledger.ClampModel _ystate _yinput))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_8 (_ystate) (_yinput))) + +def __fits_5 (x : Nat) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_5 (x : Nat) : _root_.LexLeanPreservation.FunRel __prog 5 [(_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_5 x) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Models.Ledger.withinCheck x))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe x (10 : Nat))) + +def __fits_9 (x : Nat) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_9 (x : Nat) : _root_.LexLeanPreservation.FunRel __prog 9 [(_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_9 x) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Models.Ledger.Guess x))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub x (1 : Nat))) + +def __fits_6 (_yinput : Nat) : Bool := + ((Bool.true && Bool.true) && (__fits_9 (_yinput))) + +attribute [local irreducible] Models.Ledger.Guess in +theorem __rel_6 (_yinput : Nat) : _root_.LexLeanPreservation.FunRel __prog 6 [(_root_.LexLeanTarget.TargetSyntax.Value.nat _yinput)] (_root_.LexLeanPreservation.Rel (__fits_6 _yinput) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Models.Ledger.GuessModel _yinput))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_9 (_yinput))) + +def __fits_7 (x : Nat) (y : Nat) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_7 (x : Nat) (y : Nat) : _root_.LexLeanPreservation.FunRel __prog 7 [(_root_.LexLeanTarget.TargetSyntax.Value.nat x), (_root_.LexLeanTarget.TargetSyntax.Value.nat y)] (_root_.LexLeanPreservation.Rel (__fits_7 x y) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Models.Ledger.belowCheck x y))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe y x)) + +def __fits_3 (s : Nat) (x : Nat) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && (__fits_4 (s) (x))) && (let _ystep1 : (Prod Nat Nat) := (Models.Ledger.ClampModel (s) (x)); (Bool.true && (let _ystage1 : Nat := (_ystep1).2; (Bool.true && (let _ystate1 : Nat := (_ystep1).1; (((Bool.true && Bool.true) && (__fits_5 (_ystage1))) && (if (Models.Ledger.withinCheck (_ystage1)) then (((Bool.true && Bool.true) && (__fits_6 (_ystage1))) && (let _ystage2 : Nat := (Models.Ledger.GuessModel (_ystage1)); (((Bool.true && (Bool.true && Bool.true)) && (__fits_7 (_ystage1) (_ystage2))) && (if (Models.Ledger.belowCheck (_ystage1) (_ystage2)) then ((Bool.true && (((Bool.true && Bool.true) && Bool.true) && Bool.true)) && Bool.true) else ((Bool.true && ((((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) && Bool.true)) && Bool.true))))) else ((Bool.true && ((((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) && Bool.true)) && Bool.true))))))))) + +attribute [local irreducible] Models.Ledger.ClampModel Models.Ledger.GuessModel Models.Ledger.belowCheck Models.Ledger.withinCheck in +theorem __rel_3 (s : Nat) (x : Nat) : _root_.LexLeanPreservation.FunRel __prog 3 [(_root_.LexLeanTarget.TargetSyntax.Value.nat s), (_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_3 s x) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Models.Flows.ClampGuess s x))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (let _ystep1 : (Prod Nat Nat) := (Models.Ledger.ClampModel (s) (x)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_4 (s) (x))) (let _ystage1 : Nat := (_ystep1).2; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (let _ystate1 : Nat := (_ystep1).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && (__fits_6 (_ystage1))) && (let _ystage2 : Nat := (Models.Ledger.GuessModel (_ystage1)); (((Bool.true && (Bool.true && Bool.true)) && (__fits_7 (_ystage1) (_ystage2))) && (if (Models.Ledger.belowCheck (_ystage1) (_ystage2)) then ((Bool.true && (((Bool.true && Bool.true) && Bool.true) && Bool.true)) && Bool.true) else ((Bool.true && ((((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) && Bool.true)) && Bool.true))))) else ((Bool.true && ((((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) && Bool.true)) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat)) (if __b then (let _ystage2 : Nat := (Models.Ledger.GuessModel (_ystage1)); (if (Models.Ledger.belowCheck (_ystage1) (_ystage2)) then (_ystate1, (Except.ok (_ystage2) : (Except (Prod Bool Bool) Nat))) else (s, (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat))))) else (s, (Except.error (((Bool.false, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat))))) (Models.Ledger.withinCheck (_ystage1)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_5 (_ystage1))) (fun _ => (let _ystage2 : Nat := (Models.Ledger.GuessModel (_ystage1)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_6 (_ystage1))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && (((Bool.true && Bool.true) && Bool.true) && Bool.true)) && Bool.true) else ((Bool.true && ((((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) && Bool.true)) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat)) (if __b then (_ystate1, (Except.ok (_ystage2) : (Except (Prod Bool Bool) Nat))) else (s, (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat))))) (Models.Ledger.belowCheck (_ystage1) (_ystage2)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_7 (_ystage1) (_ystage2))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair)))))) + +def __fits_2 (_ystate : Nat) (_yinput : Nat) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && (__fits_3 (_ystate) (_yinput))) + +attribute [local irreducible] Models.Flows.ClampGuess in +theorem __rel_2 (_ystate : Nat) (_yinput : Nat) : _root_.LexLeanPreservation.FunRel __prog 2 [(_root_.LexLeanTarget.TargetSyntax.Value.nat _ystate), (_root_.LexLeanTarget.TargetSyntax.Value.nat _yinput)] (_root_.LexLeanPreservation.Rel (__fits_2 _ystate _yinput) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Models.Flows.FlowModel _ystate _yinput))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_3 (_ystate) (_yinput))) + +def __fits_0 (s : Nat) (x : Nat) : Bool := + (Bool.true && (let _ychecked1_state : Nat := s; (Bool.true && (let _ychecked1_input : Nat := x; (((Bool.true && Bool.true) && (__fits_1 (_ychecked1_state))) && (if (Models.Ledger.cappedCheck (_ychecked1_state)) then (((Bool.true && (Bool.true && Bool.true)) && (__fits_2 (_ychecked1_state) (_ychecked1_input))) && (let _ychecked1_step : (Prod Nat (Except (Prod Bool Bool) Nat)) := (Models.Flows.FlowModel (_ychecked1_state) (_ychecked1_input)); (((Bool.true && Bool.true) && (__fits_1 ((_ychecked1_step).1))) && (if (Models.Ledger.cappedCheck ((_ychecked1_step).1)) then ((Bool.true && Bool.true) && Bool.true) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))))) + +attribute [local irreducible] Models.Flows.FlowModel Models.Ledger.cappedCheck in +theorem __rel_0 (s : Nat) (x : Nat) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat s), (_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_0 s x) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat))) (Models.Main.flowStep s x))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (let _ychecked1_state : Nat := s; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_var rfl) (let _ychecked1_input : Nat := x; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (Bool.true && Bool.true)) && (__fits_2 (_ychecked1_state) (_ychecked1_input))) && (let _ychecked1_step : (Prod Nat (Except (Prod Bool Bool) Nat)) := (Models.Flows.FlowModel (_ychecked1_state) (_ychecked1_input)); (((Bool.true && Bool.true) && (__fits_1 ((_ychecked1_step).1))) && (if (Models.Ledger.cappedCheck ((_ychecked1_step).1)) then ((Bool.true && Bool.true) && Bool.true) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat))) (if __b then (let _ychecked1_step : (Prod Nat (Except (Prod Bool Bool) Nat)) := (Models.Flows.FlowModel (_ychecked1_state) (_ychecked1_input)); (if (Models.Ledger.cappedCheck ((_ychecked1_step).1)) then (Except.ok (_ychecked1_step) : (Except (Prod Bool Bool) (Prod Nat (Except (Prod Bool Bool) Nat)))) else (Except.error (((Bool.true, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod Nat (Except (Prod Bool Bool) Nat)))))) else (Except.error (((Bool.false, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod Nat (Except (Prod Bool Bool) Nat)))))) (Models.Ledger.cappedCheck (_ychecked1_state)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_1 (_ychecked1_state))) (fun _ => (let _ychecked1_step : (Prod Nat (Except (Prod Bool Bool) Nat)) := (Models.Flows.FlowModel (_ychecked1_state) (_ychecked1_input)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_2 (_ychecked1_state) (_ychecked1_input))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && Bool.true) && Bool.true) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat))) (if __b then (Except.ok (_ychecked1_step) : (Except (Prod Bool Bool) (Prod Nat (Except (Prod Bool Bool) Nat)))) else (Except.error (((Bool.true, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod Nat (Except (Prod Bool Bool) Nat)))))) (Models.Ledger.cappedCheck ((_ychecked1_step).1)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil) (__rel_1 ((_ychecked1_step).1))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error))))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error))))) + +def denote (s : Nat) (x : Nat) : _root_.LexLeanPreservation.Obs := + _root_.cond (__fits_0 s x) (_root_.LexLeanPreservation.Obs.value (((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat))) (Models.Main.flowStep s x)))) _root_.LexLeanPreservation.Obs.overflow + +theorem root (s : Nat) (x : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat s), (_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_0 s x) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat))) (Models.Main.flowStep s x))) := + _root_.LexLeanPreservation.run_of_funRel (__rel_0 s x) + +end LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8 diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R8/Compose/RustStd.lex.tex b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R8/Compose/RustStd.lex.tex new file mode 100644 index 000000000..338cd4812 --- /dev/null +++ b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R8/Compose/RustStd.lex.tex @@ -0,0 +1,474 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8, + LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.Compose.RustStd.root : @938 := @939 { + all: [LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.RustStd.program +@1 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.RustStd.krate +@2 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.RustStd.flags +@3 := Nat +@4 := #2 +@5 := LexLeanTarget.TargetSyntax.Value.nat +@6 := @5 @4 +@7 := LexLeanTarget.TargetSyntax.Ty.nat +@8 := LexLeanTarget.TargetSyntax.Program +@9 := LexLeanPreservation.Rust.RCrate +@10 := LexLeanPreservation.Rust.Flags +@11 := LexLeanPreservation.Rust.WT +@12 := #3 +@14 := @11 @12 @4 +@15 := #1 +@16 := @14 @15 +@17 := #0 +@18 := @5 @17 +@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 +@26 := LexLeanPreservation.Rust.wt_nat @0 +@27 := @11 @0 +@34 := {c : @9} -> {A : @10} -> (n : @3) -> @27 @4 @15 @18 @7 +@35 := @26 @1 +@36 := @27 @1 +@41 := {A : @10} -> (n : @3) -> @36 @15 @18 @7 +@42 := @35 @2 +@43 := @36 @2 +@46 := (n : @3) -> @43 @18 @7 +@47 := @42 @4 +@49 := @43 @6 @7 +@50 := @5 @15 +@51 := @42 @15 +@53 := @43 @50 @7 +@54 := LexLeanTarget.TargetSyntax.Value +@55 := List.nil.{0} +@56 := List.cons.{0} +@57 := @55 @54 +@58 := @56 @54 +@59 := @58 @50 +@60 := @59 @57 +@61 := @58 @6 +@62 := @61 @60 +@63 := Prod.{0, 0} +@64 := @63 @3 +@65 := @64 @54 +@66 := 1 +@69 := Prod.mk.{0, 0} @3 @54 +@70 := @69 @66 +@71 := @70 @50 +@72 := 0 +@73 := @69 @72 +@74 := @73 @6 +@75 := @55 @65 +@76 := @56 @65 +@78 := @76 @74 @75 +@80 := @76 @71 @78 +@81 := Bool.true +@82 := LexLeanTarget.TargetSyntax.Function +@83 := LexLeanTarget.TargetSyntax.Program.functions +@84 := @83 @0 +@85 := LexLeanTarget.TargetSyntax.Ty +@86 := @55 @3 +@87 := @55 @85 +@88 := LexLeanTarget.TargetSyntax.Ty.unit +@89 := LexLeanTarget.TargetSyntax.Value.unit +@92 := LexLeanTarget.TargetSyntax.Expr.value @88 @89 +@97 := LexLeanTarget.TargetSyntax.Function.mk @86 @87 @88 @92 +@102 := List.getD.{0} @82 @84 @72 @97 +@106 := fun (__e_n : @3) => + LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.RustStd.root @17 @72 +@107 := LexLeanPreservation.Rust.WTL +@115 := {p : @8} -> {c : @9} -> {A : @10} -> @107 @4 @15 @17 @57 @87 +@117 := LexLeanPreservation.Rust.wtl_nil @0 +@118 := @107 @0 +@124 := {c : @9} -> {A : @10} -> @118 @15 @17 @57 @87 +@125 := @117 @1 +@126 := @118 @1 +@130 := {A : @10} -> @126 @17 @57 @87 +@131 := @125 @2 +@132 := @126 @2 +@133 := @132 @57 +@134 := @133 @87 +@135 := List.{0} +@136 := @135 @54 +@137 := @135 @85 +@138 := #6 +@139 := @11 @138 +@140 := #5 +@141 := @139 @140 +@142 := #4 +@145 := @141 @142 @12 @4 +@146 := #7 +@151 := @107 @146 @138 @140 @4 @15 +@152 := #8 +@155 := @107 @152 @146 @138 +@157 := @58 @140 @12 +@158 := @155 @157 +@159 := @56 @85 +@161 := @159 @142 @4 +@171 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {v : @54} -> {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @145) -> (hs : @151) -> @158 @161 +@173 := LexLeanPreservation.Rust.wtl_cons @0 +@193 := {c : @9} -> + {A : @10} -> + {v : @54} -> + {t : @85} -> + {vs : @136} -> + {ts : @137} -> + (h : @27 @140 @142 @12 @4) -> (hs : @118 @138 @140 @4 @15) -> @118 @146 @138 @157 @161 +@194 := @173 @1 +@210 := {A : @10} -> + {v : @54} -> + {t : @85} -> + {vs : @136} -> + {ts : @137} -> (h : @36 @142 @12 @4) -> (hs : @126 @140 @4 @15) -> @126 @138 @157 @161 +@211 := @194 @2 +@213 := @43 @12 @4 +@215 := @132 @4 @15 +@223 := {v : @54} -> + {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @213) -> (hs : @215) -> @132 @157 @161 +@224 := @211 @50 +@225 := @5 @142 +@226 := @43 @225 +@227 := @226 @4 +@228 := @5 @138 +@229 := @58 @228 +@231 := @132 (@229 @12) +@237 := {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @227) -> (hs : @215) -> @231 @161 +@238 := @224 @7 +@239 := @5 @12 +@241 := @43 @239 @7 +@242 := @5 @140 +@243 := @58 @242 +@245 := @132 (@243 @12) +@246 := @159 @7 +@247 := @246 @4 +@252 := {vs : @136} -> {ts : @137} -> (h : @241) -> (hs : @215) -> @245 @247 +@253 := @238 @57 +@254 := @133 @15 +@255 := @58 @225 +@256 := @255 @57 +@261 := {ts : @137} -> (h : @49) -> (hs : @254) -> @132 @256 @247 +@262 := @253 @87 +@263 := @58 @239 +@264 := @263 @57 +@265 := @132 @264 +@266 := @246 @87 +@269 := (h : @53) -> (hs : @134) -> @265 @266 +@270 := @262 @51 +@271 := @61 @57 +@273 := @132 @271 @266 +@274 := (hs : @134) -> @273 +@275 := @270 @131 +@277 := @132 @60 @266 +@278 := @211 @6 +@280 := @43 @242 @4 +@281 := @5 @146 +@282 := @58 @281 +@290 := {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @280) -> (hs : @215) -> @132 (@282 @12) @161 +@291 := @278 @7 +@297 := {vs : @136} -> {ts : @137} -> (h : @226 @7) -> (hs : @215) -> @231 @247 +@298 := @291 @60 +@299 := @265 @15 +@300 := @243 @256 +@301 := @132 @300 +@305 := {ts : @137} -> (h : @241) -> (hs : @299) -> @301 @247 +@306 := @298 @266 +@307 := @255 @264 +@308 := @132 @307 +@309 := @246 @266 +@312 := (h : @49) -> (hs : @273) -> @308 @309 +@313 := @306 @47 +@314 := @263 @271 +@315 := @132 @314 +@317 := (hs : @277) -> @315 @309 +@318 := @313 @275 +@319 := @132 @62 +@320 := @319 @309 +@321 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.denote +@323 := @321 @4 @15 +@324 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.__fits_0 +@326 := @324 @4 @15 +@329 := Models.Main.flowStep @4 @15 +@330 := Bool +@332 := @63 @330 @330 +@335 := Except.{0, 0} @332 @3 +@336 := @64 @335 +@337 := LexLeanTarget.TargetSyntax.Value.bool +@338 := LexLeanPreservation.encPair +@342 := @338 @330 @330 @337 @337 +@344 := LexLeanPreservation.encExcept @332 +@347 := @344 @3 @342 @5 +@351 := @338 @3 @335 @5 @347 +@355 := @344 @336 @342 @351 @329 +@358 := LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.root @4 @15 +@359 := Ne.{1} +@360 := LexLeanPreservation.Obs +@361 := @359 @360 +@362 := LexLeanPreservation.Rel +@365 := @361 (@362 @15 @17) +@366 := LexLeanPreservation.Obs.stuck +@369 := (f : @330) -> (v : @54) -> @365 @366 +@371 := LexLeanPreservation.Rust.rel_ne_stuck @326 +@378 := (v : @54) -> @361 (@362 (@324 @12 @4) @17) @366 +@379 := @371 @355 +@383 := @361 (@362 @326 @355) @366 +@384 := @135 @65 +@385 := LexLeanPreservation.Rust.FunSem +@386 := #9 +@392 := (n : @3) -> @385 @386 @152 @146 @17 @138 +@393 := Eq.{1} +@394 := Option.{0} +@395 := @394 @82 +@396 := @393 @395 +@403 := LexLeanRuntime.index (@135 @82) @82 (LexLeanRuntime.instIndexableList @82) +@407 := @396 (@403 (@83 @386) @138) +@408 := Option.some.{0} +@409 := @408 @82 +@410 := @409 @140 +@411 := @407 @410 +@412 := #10 +@416 := @107 @412 @386 @152 @140 +@417 := LexLeanTarget.TargetSyntax.Function.types +@418 := @417 @138 +@419 := @416 @418 +@420 := @394 @384 +@421 := @393 @420 +@422 := LexLeanTarget.TargetSemantics.bindAll +@423 := LexLeanTarget.TargetSyntax.Function.parameters +@428 := @421 (@422 (@423 @146) @138 @75) +@429 := @408 @384 +@430 := @429 @140 +@431 := @428 @430 +@432 := @394 @330 +@433 := @393 @432 +@434 := LexLeanPreservation.Rust.fnFallible +@435 := #11 +@438 := @433 (@434 @435 @386) +@439 := @408 @330 +@440 := @439 @140 +@441 := @438 @440 +@442 := LexLeanPreservation.RunConv +@443 := #13 +@447 := @442 @443 @412 @152 @140 +@449 := @361 @138 @366 +@450 := Exists.{1} +@451 := LexLeanPreservation.Rust.ROut +@452 := @450 @451 +@453 := And +@454 := LexLeanPreservation.Rust.RealizesFn +@458 := @453 (@454 @386 @152 @17) +@459 := LexLeanPreservation.Rust.RCI +@461 := @459 #15 +@462 := LexLeanPreservation.Rust.fnIdent +@463 := @462 @443 +@470 := (hne : @449) -> @452 (fun (ro : @451) => @458 (@461 @463 @435 @17)) +@485 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {f : @3} -> + {fn : @82} -> + {args : @136} -> + {env : @384} -> + {F : @330} -> + {o : @360} -> + (hB : @392) -> + (hfn : @411) -> (hwt : @419) -> (hbind : @431) -> (hF : @441) -> (hA : @447) -> @470 +@487 := LexLeanPreservation.Rust.compose @0 +@488 := @385 @0 +@493 := (n : @3) -> @488 @152 @146 @17 @138 +@494 := @403 @84 +@497 := @396 (@494 @138) @410 +@501 := @118 @386 @152 @140 @418 +@502 := @442 @0 +@505 := @502 @412 @152 @140 +@519 := {c : @9} -> + {A : @10} -> + {f : @3} -> + {fn : @82} -> + {args : @136} -> + {env : @384} -> + {F : @330} -> + {o : @360} -> + (hB : @493) -> + (hfn : @497) -> (hwt : @501) -> (hbind : @431) -> (hF : @441) -> (hA : @505) -> @470 +@520 := @487 @1 +@521 := @488 @1 +@525 := (n : @3) -> @521 @146 @17 @138 +@528 := @126 @152 @140 @418 +@529 := @434 @1 +@532 := @433 (@529 @386) @440 +@533 := @459 @1 +@543 := (hbind : @431) -> + (hF : @532) -> (hA : @505) -> (hne : @449) -> @452 (fun (ro : @451) => @458 (@533 @463 @435 @17)) +@553 := {A : @10} -> + {f : @3} -> + {fn : @82} -> + {args : @136} -> + {env : @384} -> {F : @330} -> {o : @360} -> (hB : @525) -> (hfn : @497) -> (hwt : @528) -> @543 +@554 := @520 @2 +@556 := @521 @2 @17 +@558 := (n : @3) -> @556 @138 +@559 := @132 @140 +@560 := @559 @418 +@569 := {f : @3} -> + {fn : @82} -> + {args : @136} -> + {env : @384} -> {F : @330} -> {o : @360} -> (hB : @558) -> (hfn : @497) -> (hwt : @560) -> @543 +@570 := @554 @72 +@572 := (n : @3) -> @556 @72 +@573 := @494 @72 +@574 := @396 @573 +@575 := @574 @410 +@576 := @529 @72 +@577 := @433 @576 +@578 := @577 @440 +@579 := @502 @72 +@581 := @579 @152 @140 +@583 := @533 (@462 @72) +@591 := (hF : @578) -> (hA : @581) -> (hne : @449) -> @452 (fun (ro : @451) => @458 (@583 @435 @17)) +@600 := {fn : @82} -> + {args : @136} -> + {env : @384} -> + {F : @330} -> {o : @360} -> (hB : @572) -> (hfn : @575) -> (hwt : @560) -> (hbind : @431) -> @591 +@601 := @570 @102 +@603 := @574 (@409 @102) +@604 := @417 @102 +@605 := @559 @604 +@607 := @422 (@423 @102) +@619 := {args : @136} -> + {env : @384} -> + {F : @330} -> + {o : @360} -> + (hB : @572) -> (hfn : @603) -> (hwt : @605) -> (hbind : @421 (@607 @138 @75) @430) -> @591 +@620 := @601 @62 +@622 := @282 (@229 @57) +@624 := @132 @622 @604 +@626 := @58 (@5 @152) +@628 := @626 (@282 @57) +@632 := @421 (@607 @628 @75) @430 +@634 := @58 (@5 @412) +@636 := @58 (@5 @386) +@638 := @634 (@636 @57) +@640 := @579 @638 @140 +@642 := @58 (@5 @443) +@645 := @58 (@5 #12) +@662 := {env : @384} -> + {F : @330} -> + {o : @360} -> + (hB : @572) -> + (hfn : @603) -> + (hwt : @624) -> + (hbind : @632) -> + (hF : @578) -> + (hA : @640) -> (hne : @449) -> @452 (fun (ro : @451) => @458 (@583 (@642 (@645 @57)) @17)) +@663 := @620 @80 +@665 := @229 (@243 @57) +@667 := @132 @665 @604 +@678 := @421 (@607 @622 @75) (@429 (@76 (@70 @228) (@76 (@73 @281) @75))) +@680 := @636 (@626 @57) +@682 := @579 @680 @140 +@684 := @58 (@5 @435) +@700 := {F : @330} -> + {o : @360} -> + (hB : @572) -> + (hfn : @603) -> + (hwt : @667) -> + (hbind : @678) -> + (hF : @578) -> + (hA : @682) -> (hne : @449) -> @452 (fun (ro : @451) => @458 (@583 (@645 (@684 @57)) @17)) +@701 := @663 @81 +@702 := @301 @604 +@713 := @421 (@607 @665 @75) (@429 (@76 (@70 @242) (@76 (@73 @228) @75))) +@715 := @577 (@439 @81) +@717 := @579 @628 @140 +@718 := @454 @81 +@736 := {o : @360} -> + (hB : @572) -> + (hfn : @603) -> + (hwt : @702) -> + (hbind : @713) -> + (hF : @715) -> + (hA : @717) -> + (hne : @449) -> @452 (fun (ro : @451) => @453 (@718 @152 @17) (@583 (@684 (@634 @57)) @17)) +@737 := @701 @323 +@738 := @308 @604 +@749 := @421 (@607 @300 @75) (@429 (@76 (@70 @225) (@76 (@73 @242) @75))) +@750 := @579 @622 +@752 := @321 @146 @138 +@753 := @750 @752 +@755 := @321 @152 @146 +@774 := (hB : @572) -> + (hfn : @603) -> + (hwt : @738) -> + (hbind : @749) -> + (hF : @715) -> + (hA : @753) -> + (hne : @361 @755 @366) -> + @452 (fun (ro : @451) => @453 (@718 (@321 @412 @386) @17) (@583 @638 @17)) +@775 := @737 @106 +@776 := @315 @604 +@787 := @421 (@607 @307 @75) (@429 (@76 (@70 @239) (@76 (@73 @225) @75))) +@788 := @579 @665 +@790 := @321 @138 @140 +@809 := (hfn : @603) -> + (hwt : @776) -> + (hbind : @787) -> + (hF : @715) -> + (hA : @788 @790) -> + (hne : @361 @752 @366) -> + @452 (fun (ro : @451) => @453 (@718 (@321 @386 @152) @17) (@583 @680 @17)) +@810 := Eq.refl.{1} +@813 := @775 (@810 @395 @573) +@814 := @319 @604 +@825 := @421 (@607 @314 @75) (@429 (@76 (@70 @6) (@76 (@73 @239) @75))) +@826 := @579 @300 +@828 := @321 @140 @142 +@844 := (hwt : @814) -> + (hbind : @825) -> + (hF : @715) -> + (hA : @826 @828) -> + (hne : @361 @790 @366) -> @452 (fun (ro : @451) => @453 (@718 @755 @17) (@583 @628 @17)) +@845 := @813 @318 +@847 := @607 @62 @75 +@850 := @421 @847 (@429 @80) +@851 := @579 @307 +@853 := @321 @142 @12 +@868 := (hbind : @850) -> + (hF : @715) -> + (hA : @851 @853) -> + (hne : @361 @828 @366) -> @452 (fun (ro : @451) => @453 (@718 @752 @17) (@583 @622 @17)) +@871 := @845 (@810 @420 @847) +@872 := @579 @314 +@874 := @321 @12 @4 +@888 := (hF : @715) -> + (hA : @872 @874) -> + (hne : @361 @853 @366) -> @452 (fun (ro : @451) => @453 (@718 @790 @17) (@583 @665 @17)) +@891 := @871 (@810 @432 @576) +@905 := (hA : @579 @62 @323) -> + (hne : @361 @874 @366) -> @452 (fun (ro : @451) => @453 (@718 @828 @17) (@583 @300 @17)) +@906 := @891 @358 +@917 := (hne : @361 @323 @366) -> @452 (fun (ro : @451) => @453 (@718 @853 @17) (@583 @307 @17)) +@918 := @906 @379 +@924 := @453 (@718 @874 @17) (@583 @314 @17) +@926 := @452 (fun (ro : @451) => @924) +@928 := @452 (fun (__e_ro : @451) => @924) +@933 := LexLeanPreservation.Rust.RepresentableL (@59 (@58 @18 @57)) +@934 := (__e_hrep : @933) -> @928 +@935 := fun (__e_hrep : @933) => @918 +@936 := (x : @3) -> @934 +@937 := fun (x : @3) => @935 +@938 := (s : @3) -> @936 +@939 := fun (s : @3) => @937 +\end{coremodule} +\end{lexlean} diff --git a/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R8/RustStd.lean b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R8/RustStd.lean new file mode 100644 index 000000000..f46f35340 --- /dev/null +++ b/examples/models/expected/verify/preserve/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R8/RustStd.lean @@ -0,0 +1,105 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1], types := [.nat, .nat], result := (.result (.pair .nat (.result .nat (.pair .bool .bool))) (.pair .bool .bool)), + body := (.«let» 2 .nat (.var 0) (.«let» 3 .nat (.var 1) (.cond (.call 1 [(.var 2)]) (.«let» 4 (.pair .nat (.result .nat (.pair .bool .bool))) (.call 2 [(.var 2), (.var 3)]) (.cond (.call 1 [(.first (.var 4))]) (.build .ok (.result (.pair .nat (.result .nat (.pair .bool .bool))) (.pair .bool .bool)) [(.var 4)]) (.build .error (.result (.pair .nat (.result .nat (.pair .bool .bool))) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .true .bool [])])]))) (.build .error (.result (.pair .nat (.result .nat (.pair .bool .bool))) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])])])))) }, + { parameters := [0], types := [.nat], result := .bool, + body := (.prim .natLe [(.var 0), (.value .nat (.nat 100))]) }, + { parameters := [0, 1], types := [.nat, .nat], result := (.pair .nat (.result .nat (.pair .bool .bool))), + body := (.call 3 [(.var 0), (.var 1)]) }, + { parameters := [0, 1], types := [.nat, .nat], result := (.pair .nat (.result .nat (.pair .bool .bool))), + body := (.«let» 2 (.pair .nat .nat) (.call 4 [(.var 0), (.var 1)]) (.«let» 3 .nat (.second (.var 2)) (.«let» 4 .nat (.first (.var 2)) (.cond (.call 5 [(.var 3)]) (.«let» 5 .nat (.call 6 [(.var 3)]) (.cond (.call 7 [(.var 3), (.var 5)]) (.build .pair (.pair .nat (.result .nat (.pair .bool .bool))) [(.var 4), (.build .ok (.result .nat (.pair .bool .bool)) [(.var 5)])]) (.build .pair (.pair .nat (.result .nat (.pair .bool .bool))) [(.var 0), (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])])])]))) (.build .pair (.pair .nat (.result .nat (.pair .bool .bool))) [(.var 0), (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])])]))))) }, + { parameters := [0, 1], types := [.nat, .nat], result := (.pair .nat .nat), + body := (.call 8 [(.var 0), (.var 1)]) }, + { parameters := [0], types := [.nat], result := .bool, + body := (.prim .natLe [(.var 0), (.value .nat (.nat 10))]) }, + { parameters := [0], types := [.nat], result := .nat, + body := (.call 9 [(.var 0)]) }, + { parameters := [0, 1], types := [.nat, .nat], result := .bool, + body := (.prim .natLe [(.var 1), (.var 0)]) }, + { parameters := [0, 1], types := [.nat, .nat], result := (.pair .nat .nat), + body := (.«let» 2 .nat (.prim .natAdd [(.var 0), (.var 1)]) (.build .pair (.pair .nat .nat) [(.prim .natSub [(.var 2), (.prim .natSub [(.var 2), (.value .nat (.nat 100))])]), (.prim .natSub [(.var 2), (.prim .natSub [(.var 2), (.value .nat (.nat 100))])])])) }, + { parameters := [0], types := [.nat], result := .nat, + body := (.prim .natSub [(.var 0), (.value .nat (.nat 1))]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.result (.pair .nat (.result .nat (.pair .bool .bool))) (.pair .bool .bool))) (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.copy (.generated .binding 0))), (.mk (.bind (.generated .binding 3)) (some .nat) (.copy (.generated .binding 1)))] (.cond (.call (.function 1) [(.copy (.generated .binding 2))] false) (.mk [(.mk (.bind (.generated .binding 4)) (some (.pair .nat (.result .nat (.pair .bool .bool)))) (.call (.function 2) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3))] true))] (.cond (.call (.function 1) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 1)), .wild]) none (.copy (.generated .binding 4)))] (.move (.generated .part 1))))] false) (.mk [] (.succeed (.construct (.ok (.pair .nat (.result .nat (.pair .bool .bool))) (.pair .bool .bool)) [(.copy (.generated .binding 4))]))) (.mk [] (.succeed (.construct (.err (.pair .nat (.result .nat (.pair .bool .bool))) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool true)))]))))) (.mk [] (.succeed (.construct (.err (.pair .nat (.result .nat (.pair .bool .bool))) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))])))))), + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 3)) none (.lit (.nat 100)))] (.call (.runtime .natLe) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] false))), + (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.pair .nat (.result .nat (.pair .bool .bool)))) (.mk [] (.call (.function 3) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false))), + (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.pair .nat (.result .nat (.pair .bool .bool)))) (.mk [(.mk (.bind (.generated .binding 2)) (some (.pair .nat .nat)) (.call (.function 4) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] true)), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 4))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 4))))), (.mk (.bind (.generated .binding 4)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 5)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 5)))))] (.cond (.call (.function 5) [(.copy (.generated .binding 3))] false) (.mk [(.mk (.bind (.generated .binding 5)) (some .nat) (.call (.function 6) [(.copy (.generated .binding 3))] false))] (.cond (.call (.function 7) [(.copy (.generated .binding 3)), (.copy (.generated .binding 5))] false) (.mk [] (.succeed (.pair (.copy (.generated .binding 4)) (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 5))])))) (.mk [] (.succeed (.pair (.copy (.generated .binding 0)) (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))))) (.mk [] (.succeed (.pair (.copy (.generated .binding 0)) (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))))))), + (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.pair .nat .nat)) (.mk [] (.call (.function 8) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false))), + (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 7)) none (.lit (.nat 10)))] (.call (.runtime .natLe) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false))), + (.function (.generated .function 6) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] .nat (.mk [] (.call (.function 9) [(.copy (.generated .binding 0))] false))), + (.function (.generated .function 7) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 0)))] (.call (.runtime .natLe) [(.move (.generated .operand 8)), (.move (.generated .operand 9))] false))), + (.function (.generated .function 8) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.pair .nat .nat)) (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] true))))] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 15)) none (.block (.mk [(.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 13)) none (.lit (.nat 100)))] (.call (.runtime .natSub) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false))))] (.call (.runtime .natSub) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false))) (.block (.mk [(.mk (.bind (.generated .operand 18)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 19)) none (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 17)) none (.lit (.nat 100)))] (.call (.runtime .natSub) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false))))] (.call (.runtime .natSub) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false))))))), + (.function (.generated .function 9) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] .nat (.mk [(.mk (.bind (.generated .operand 20)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 21)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 20)), (.move (.generated .operand 21))] false)))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some .nat) (.copy (.generated .binding 0))), (.mk (.bind (.generated .binding 3)) (some .nat) (.copy (.generated .binding 1)))], (.cond (.call (.function 1) [(.copy (.generated .binding 2))] false) (.mk [(.mk (.bind (.generated .binding 4)) (some (.pair .nat (.result .nat (.pair .bool .bool)))) (.call (.function 2) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3))] true))] (.cond (.call (.function 1) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 1)), .wild]) none (.copy (.generated .binding 4)))] (.move (.generated .part 1))))] false) (.mk [] (.succeed (.construct (.ok (.pair .nat (.result .nat (.pair .bool .bool))) (.pair .bool .bool)) [(.copy (.generated .binding 4))]))) (.mk [] (.succeed (.construct (.err (.pair .nat (.result .nat (.pair .bool .bool))) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool true)))]))))) (.mk [] (.succeed (.construct (.err (.pair .nat (.result .nat (.pair .bool .bool))) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))])))), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.letBind (Corr.var rfl rfl) rfl (Corr.letBind (Corr.var rfl rfl) rfl (Corr.cond (lc := []) (ce := (.call (.function 1) [(.copy (.generated .binding 2))] false)) (lk := []) (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .binding 4)) (some (.pair .nat (.result .nat (.pair .bool .bool)))) (.call (.function 2) [(.copy (.generated .binding 2)), (.copy (.generated .binding 3))] true))]) (ta := (.cond (.call (.function 1) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 1)), .wild]) none (.copy (.generated .binding 4)))] (.move (.generated .part 1))))] false) (.mk [] (.succeed (.construct (.ok (.pair .nat (.result .nat (.pair .bool .bool))) (.pair .bool .bool)) [(.copy (.generated .binding 4))]))) (.mk [] (.succeed (.construct (.err (.pair .nat (.result .nat (.pair .bool .bool))) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool true)))]))))) (lb := []) (tb := (.succeed (.construct (.err (.pair .nat (.result .nat (.pair .bool .bool))) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))]))) (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := []) (ce := (.call (.function 1) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 1)), .wild]) none (.copy (.generated .binding 4)))] (.move (.generated .part 1))))] false)) (lk := []) (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 1)), .wild]) none (.copy (.generated .binding 4)))]) (tail := (.move (.generated .part 1))) (Corr.first (ta := .nat) (tb := (.result .nat (.pair .bool .bool))) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct (.ok (.pair .nat (.result .nat (.pair .bool .bool))) (.pair .bool .bool)) [(.copy (.generated .binding 4))]))) (lb := []) (tb := (.succeed (.construct (.err (.pair .nat (.result .nat (.pair .bool .bool))) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool true)))]))) (Corr.fOfB (Corr.build (ts := [(.pair .nat (.result .nat (.pair .bool .bool)))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl))))) (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl))))))⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 3)) none (.lit (.nat 100)))], (.call (.runtime .natLe) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] false), [(0, .nat, (some 0))], rfl, rfl, + (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 3) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.callF (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)⟩⟩ + +theorem fun3 : FunOK program krate flags 3 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some (.pair .nat .nat)) (.call (.function 4) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] true)), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 4))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 4))))), (.mk (.bind (.generated .binding 4)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 5)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 5)))))], (.cond (.call (.function 5) [(.copy (.generated .binding 3))] false) (.mk [(.mk (.bind (.generated .binding 5)) (some .nat) (.call (.function 6) [(.copy (.generated .binding 3))] false))] (.cond (.call (.function 7) [(.copy (.generated .binding 3)), (.copy (.generated .binding 5))] false) (.mk [] (.succeed (.pair (.copy (.generated .binding 4)) (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 5))])))) (.mk [] (.succeed (.pair (.copy (.generated .binding 0)) (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))))) (.mk [] (.succeed (.pair (.copy (.generated .binding 0)) (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))))), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 4))]) none (.copy (.generated .binding 2)))]) (tail := (.move (.generated .part 4))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 5)), .wild]) none (.copy (.generated .binding 2)))]) (tail := (.move (.generated .part 5))) (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) rfl (Corr.cond (lc := []) (ce := (.call (.function 5) [(.copy (.generated .binding 3))] false)) (lk := []) (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .binding 5)) (some .nat) (.call (.function 6) [(.copy (.generated .binding 3))] false))]) (ta := (.cond (.call (.function 7) [(.copy (.generated .binding 3)), (.copy (.generated .binding 5))] false) (.mk [] (.succeed (.pair (.copy (.generated .binding 4)) (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 5))])))) (.mk [] (.succeed (.pair (.copy (.generated .binding 0)) (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))))) (lb := []) (tb := (.succeed (.pair (.copy (.generated .binding 0)) (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))])))) (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := []) (ce := (.call (.function 7) [(.copy (.generated .binding 3)), (.copy (.generated .binding 5))] false)) (lk := []) (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.pair (.copy (.generated .binding 4)) (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 5))])))) (lb := []) (tb := (.succeed (.pair (.copy (.generated .binding 0)) (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))) (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) (Corr.lNil)))))) (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)) (Corr.lNil))))))))) (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)) (Corr.lNil)))))))))))⟩⟩ + +theorem fun4 : FunOK program krate flags 4 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 8) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.callF (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)⟩⟩ + +theorem fun5 : FunOK program krate flags 5 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 7)) none (.lit (.nat 10)))], (.call (.runtime .natLe) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false), [(0, .nat, (some 0))], rfl, rfl, + (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun6 : FunOK program krate flags 6 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 9) [(.copy (.generated .binding 0))] false), [(0, .nat, (some 0))], rfl, rfl, + (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun7 : FunOK program krate flags 7 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 0)))], (.call (.runtime .natLe) [(.move (.generated .operand 8)), (.move (.generated .operand 9))] false), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun8 : FunOK program krate flags 8 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] true))))], (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 15)) none (.block (.mk [(.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 13)) none (.lit (.nat 100)))] (.call (.runtime .natSub) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false))))] (.call (.runtime .natSub) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false))) (.block (.mk [(.mk (.bind (.generated .operand 18)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 19)) none (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 17)) none (.lit (.nat 100)))] (.call (.runtime .natSub) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false))))] (.call (.runtime .natSub) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false))))), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 15)) none (.block (.mk [(.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 13)) none (.lit (.nat 100)))] (.call (.runtime .natSub) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false))))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 13)) none (.lit (.nat 100)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 18)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 19)) none (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 17)) none (.lit (.nat 100)))] (.call (.runtime .natSub) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false))))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 17)) none (.lit (.nat 100)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))))))⟩⟩ + +theorem fun9 : FunOK program krate flags 9 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 20)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 21)) none (.lit (.nat 1)))], (.call (.runtime .natSub) [(.move (.generated .operand 20)), (.move (.generated .operand 21))] false), [(0, .nat, (some 0))], rfl, rfl, + (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | 3 => exact fun3 + | 4 => exact fun4 + | 5 => exact fun5 + | 6 => exact fun6 + | 7 => exact fun7 + | 8 => exact fun8 + | 9 => exact fun9 + | _ + 10 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.RustStd diff --git a/examples/models/expected/verify/preserve/audit.txt b/examples/models/expected/verify/preserve/audit.txt index 1bff85617..b0b0a0a69 100644 --- a/examples/models/expected/verify/preserve/audit.txt +++ b/examples/models/expected/verify/preserve/audit.txt @@ -7737,75 +7737,75 @@ 'LexLeanPreservation.encOption.eq_2' does not depend on any axioms 'LexLeanPreservation.encPair.eq_1' does not depend on any axioms 'LexLeanPreservation.encUnit.eq_1' does not depend on any axioms -'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.Compose.RustStd.__wt_0' depends on axioms: [propext] -'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.Compose.RustStd.__wt_0' depends on axioms: [propext] -'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.Compose.RustStd.__wt_0' depends on axioms: [propext] -'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.Compose.RustStd.__wt_1' depends on axioms: [propext] -'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.Compose.RustStd.__wt_0' depends on axioms: [propext] -'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.Compose.RustStd.__wt_0' depends on axioms: [propext] +'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.Compose.RustStd.__wt_0' depends on axioms: [propext] +'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.Compose.RustStd.__wt_0' depends on axioms: [propext] +'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.Compose.RustStd.__wt_0' depends on axioms: [propext] +'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.Compose.RustStd.__wt_1' depends on axioms: [propext] +'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.Compose.RustStd.__wt_0' depends on axioms: [propext] +'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.Compose.RustStd.__wt_0' depends on axioms: [propext] -- statement vocabulary inductive LexLeanPreservation.Obs : Type number of parameters: 0 diff --git a/examples/models/expected/verify/preserve/preservation.json b/examples/models/expected/verify/preserve/preservation.json index 052cee848..d9e0cad81 100644 --- a/examples/models/expected/verify/preserve/preservation.json +++ b/examples/models/expected/verify/preserve/preservation.json @@ -1 +1 @@ -{"library":{"axioms":["Classical.choice","Quot.sound","propext"],"registry_sha256":"02de6e4be5a6ae43997bacd3713ea587693b8ac66da4aef567463a535a076ff3"},"roots":[{"byte_length":205391,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0","program":{"byte_length":81179,"sha256":"19c6696a115eee2945d9bc249774c91c5aa79a832ce10f52e67adb1a18bad77a"},"renderings":[{"byte_length":201067,"composed":{"byte_length":17234,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.Compose.RustStd","sha256":"8f3a7850020d5c75c5aafcf212bf4020c5b1334529be057bd58872d93593d814","theorem":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.Compose.RustStd.root"},"crate":{"byte_length":29901,"sha256":"52b8e3b70d563369f42dfff8d391090bce768b71ed790f646aa9760fb4ec6d6f"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.RustStd","sha256":"d6e98d5cdf153e75be783d1296b26508707250e3888bc1a86cd52a1aeecf4ba3","target":"rust-std","theorem":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.RustStd.root"}],"root":"Models.Main.classify","sha256":"514db658d4359676b9e7cd9b428386039f1af0edcb4583a5bef8ee72dea97bd9","targets":["rust-std"],"theorem":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.root"},{"byte_length":215569,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1","program":{"byte_length":83992,"sha256":"dce1e094aa452ad9f91b8784cdd0b834f9d69ea208e937eea7aa7d24c0c2addb"},"renderings":[{"byte_length":208269,"composed":{"byte_length":17449,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.Compose.RustStd","sha256":"515c044b41ecc10b2c1572267529ffc9895f8edfa8f55dfcd384ab75512c23c4","theorem":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.Compose.RustStd.root"},"crate":{"byte_length":30770,"sha256":"67121441756174b7f9423e6843041eea64787ce77aa9dcb6762bd775fd74881e"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.RustStd","sha256":"46332f6cb60813b476f5a3d229aa3e267dff82e995f8a4ce9127c451a0738b47","target":"rust-std","theorem":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.RustStd.root"}],"root":"Models.Main.classifyChecked","sha256":"8770e30567c6e91e5cabf7fc549a0e98f2b5617371473a091ac753d759af143e","targets":["rust-std"],"theorem":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.root"},{"byte_length":86246,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2","program":{"byte_length":26060,"sha256":"09ddae4f092ac53b13ff3761c53a1371557124c89d6961d20261654bc4b1bdd9"},"renderings":[{"byte_length":84448,"composed":{"byte_length":18513,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.Compose.RustStd","sha256":"9dca56b40d2f4b4fcaa134ff4848cddfe1fc5b4039e04521bf337248f4cc8d5f","theorem":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.Compose.RustStd.root"},"crate":{"byte_length":21425,"sha256":"f576dc3bf699ab120bb97fe7962cea4bf4f465cea6730924fea750d36285f2c5"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.RustStd","sha256":"9688b4def7551eaeabfce4da7454ba90f2cafbb7d2b1d736d4645b6e76a9b297","target":"rust-std","theorem":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.RustStd.root"}],"root":"Models.Main.respond","sha256":"0da7f8aeaf67fd4bb524b532fe05d10d7684cbd9e41d7df50a5b491606a9714c","targets":["rust-std"],"theorem":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.root"},{"byte_length":41340,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3","program":{"byte_length":11441,"sha256":"5eb0b277acebe2fd4e4accd84aada754039021640f20e31e8a810623b617a840"},"renderings":[{"byte_length":42275,"composed":{"byte_length":17868,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.Compose.RustStd","sha256":"7ef3090972dd0f6b829b8a4db418f9683ebbea57dba78c8cd86259c144fb1c31","theorem":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.Compose.RustStd.root"},"crate":{"byte_length":17019,"sha256":"5f186f5373dce90862c9a810e08bd13a8abf477bd797f8d5ec8716e8d63f652b"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.RustStd","sha256":"d275df28ef7dd9550eb84370561989f3b39abf0112de4bfe7fa4e04247debd91","target":"rust-std","theorem":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.RustStd.root"}],"root":"Models.Main.admitCosts","sha256":"b4ffca48952749367595b34814a8ca18c053155995d85c8894deb2f068655df3","targets":["rust-std"],"theorem":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.root"},{"byte_length":16488,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4","program":{"byte_length":4260,"sha256":"36d1687bd2f49a8a4e634440ac23148a5f94ed7d3c5ec222fe66c0615e9208af"},"renderings":[{"byte_length":16667,"composed":{"byte_length":17788,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.Compose.RustStd","sha256":"8d168e8893d97461bb1bc58823c4120ab91531f7fab6db20d78bbedb3047d48c","theorem":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.Compose.RustStd.root"},"crate":{"byte_length":14275,"sha256":"9580e86941cdeea970dc62f25bbf63090547dd2dc3618a0a303a687147a8f2e8"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.RustStd","sha256":"28c7495af09fe967ba6cfdcc714522c67220f26c7e76d11937cf050e1fb0b27a","target":"rust-std","theorem":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.RustStd.root"}],"root":"Models.Main.step","sha256":"b851e4e02ca61ea193a8cf8ec21799599355c0b587d6bddb447e630541fab87f","targets":["rust-std"],"theorem":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.root"},{"byte_length":16539,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5","program":{"byte_length":3912,"sha256":"223f35bd805c466609ba87317bb05b5d4c84e8ddb34eda0a212e475fa06ed6d0"},"renderings":[{"byte_length":13176,"composed":{"byte_length":13445,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.Compose.RustStd","sha256":"6ac5666f51f7ce14207e3ab2786ed0ac167d1a378908e4b8bb02e2b8af340d3b","theorem":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.Compose.RustStd.root"},"crate":{"byte_length":13783,"sha256":"e8382fdebcad23a5a1550fafd501fdb4e10d1fc1aefe4a8b2313567cf49a4f5c"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.RustStd","sha256":"00cb3aa1573f966fec20c8034fcf5818a5cfc6d7a82e138676ebdb145cc72145","target":"rust-std","theorem":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.RustStd.root"}],"root":"Models.Main.ledgerPost","sha256":"41c656e91c6ba759d5574f79445070c7dceba2e51e90107ce2fb8e194d5c7124","targets":["rust-std"],"theorem":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.root"},{"byte_length":22235,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6","program":{"byte_length":4889,"sha256":"503bc027d950639ac5de5927de7fa4a04fca266c6fd0df3660196e5e287d7ce5"},"renderings":[{"byte_length":18749,"composed":{"byte_length":13445,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.Compose.RustStd","sha256":"7cd6e45f839b9124360d10cb98b6d9f9eb9e949bbeb8e1610244838686a99994","theorem":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.Compose.RustStd.root"},"crate":{"byte_length":14211,"sha256":"898563f8bae88021f224534c1354540b6a565545d6c7c6e0b6cddfd30fe6a429"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.RustStd","sha256":"0c9376cb830d76327a6b43154220e4b55cb53e3e985fa81e4f8d9cdfc3f6bc9e","target":"rust-std","theorem":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.RustStd.root"}],"root":"Models.Main.ledgerFull","sha256":"db5df65996d98d84a49096a1036623e563a74f20cb371e439b706ba178353cee","targets":["rust-std"],"theorem":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.root"},{"byte_length":11285,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7","program":{"byte_length":2614,"sha256":"8f1d418b689da95074ce318bd41caf146e0fc0c6e303165f2b1ca0abd385459d"},"renderings":[{"byte_length":8772,"composed":{"byte_length":12210,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.Compose.RustStd","sha256":"a31f28194d0fd9874b0dd9579830a091fb4d9865b1b415b1944d704a8635df57","theorem":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.Compose.RustStd.root"},"crate":{"byte_length":13420,"sha256":"0250a47719d614ca1aac8b544aa0168a202e61e5eb0011f6aaff82e3e73e59dd"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.RustStd","sha256":"be8958db21e8d1155ad1bc6b01ea4a8bfaa8f0037dc99d682f144ba3d44394fd","target":"rust-std","theorem":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.RustStd.root"}],"root":"Models.Main.guessChecked","sha256":"743f6dba5283a400241b8eb0624689f2dda8dddfcba67ea00d3fd1ab1ea6a85b","targets":["rust-std"],"theorem":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.root"},{"byte_length":28208,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8","program":{"byte_length":8003,"sha256":"61d87ac85673bcb778de069cf6923996eb9e821ad05d71bfde3d36dd1bb3d241"},"renderings":[{"byte_length":26659,"composed":{"byte_length":13516,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.Compose.RustStd","sha256":"418840143c917b517ee3793b31bc8bcd9d9acee07eeec925e4a8efcce8e22979","theorem":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.Compose.RustStd.root"},"crate":{"byte_length":14939,"sha256":"e4f361765740eab4808750f5d31762757ae333d2e23d94047ba8761aeb607264"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.RustStd","sha256":"90fa4da1c04bad779f4dbd5387ed22dda4ee3188c5a459dd46476c2242380666","target":"rust-std","theorem":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.RustStd.root"}],"root":"Models.Main.flowStep","sha256":"1520b9593efda8665c1889f3988b00192d601c543b9875bb3d3aa3647c5b9f94","targets":["rust-std"],"theorem":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.root"}],"spec":"lexlean/preservation/1"} +{"library":{"axioms":["Classical.choice","Quot.sound","propext"],"registry_sha256":"02de6e4be5a6ae43997bacd3713ea587693b8ac66da4aef567463a535a076ff3"},"roots":[{"byte_length":205391,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0","program":{"byte_length":81179,"sha256":"19c6696a115eee2945d9bc249774c91c5aa79a832ce10f52e67adb1a18bad77a"},"renderings":[{"byte_length":201067,"composed":{"byte_length":17234,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.Compose.RustStd","sha256":"88e2625ee1ad1c9c40a8b9347ef3cad43b593dc0f315b6aeb8d4d2f11b2425d1","theorem":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.Compose.RustStd.root"},"crate":{"byte_length":29901,"sha256":"52b8e3b70d563369f42dfff8d391090bce768b71ed790f646aa9760fb4ec6d6f"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.RustStd","sha256":"58441c1d36ed8049fb4e74d9e841b8a9d945261c86693a1e44df67bb455233e6","target":"rust-std","theorem":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.RustStd.root"}],"root":"Models.Main.classify","sha256":"7e29cd4f8cacd3e2c5b5ff88c422f45662bd717c501c29aa466b2e19d473ec28","targets":["rust-std"],"theorem":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.root"},{"byte_length":215569,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1","program":{"byte_length":83992,"sha256":"dce1e094aa452ad9f91b8784cdd0b834f9d69ea208e937eea7aa7d24c0c2addb"},"renderings":[{"byte_length":208269,"composed":{"byte_length":17449,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.Compose.RustStd","sha256":"5b9b0db0bdeda0fa8d0774fab0f031f44660ddc1841c5b7ec213012b904146a8","theorem":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.Compose.RustStd.root"},"crate":{"byte_length":30770,"sha256":"67121441756174b7f9423e6843041eea64787ce77aa9dcb6762bd775fd74881e"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.RustStd","sha256":"71e4f716c241c0cecf737023274c5c0d71d86e65689241b8762ba75c23ad2dab","target":"rust-std","theorem":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.RustStd.root"}],"root":"Models.Main.classifyChecked","sha256":"3857fcaea84106e4e65bdbfbaa097fcbfc97c14e6aabca7b00789826e598c803","targets":["rust-std"],"theorem":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.root"},{"byte_length":86246,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2","program":{"byte_length":26060,"sha256":"09ddae4f092ac53b13ff3761c53a1371557124c89d6961d20261654bc4b1bdd9"},"renderings":[{"byte_length":84448,"composed":{"byte_length":18513,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.Compose.RustStd","sha256":"ed1d37b1b371df25c84d825fd138b5cb576ad3a976e11693364dd94437396ed8","theorem":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.Compose.RustStd.root"},"crate":{"byte_length":21425,"sha256":"f576dc3bf699ab120bb97fe7962cea4bf4f465cea6730924fea750d36285f2c5"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.RustStd","sha256":"d457be31ff91213b77f9d5a06a13a84f20a68b030c7eb9c5012c05004e2ac45d","target":"rust-std","theorem":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.RustStd.root"}],"root":"Models.Main.respond","sha256":"0344d037231b31a600ab2dec4292344d0090032d350daa6751865c205de446ab","targets":["rust-std"],"theorem":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.root"},{"byte_length":41340,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3","program":{"byte_length":11441,"sha256":"5eb0b277acebe2fd4e4accd84aada754039021640f20e31e8a810623b617a840"},"renderings":[{"byte_length":42275,"composed":{"byte_length":17868,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.Compose.RustStd","sha256":"afcaf15775ebf672444ef3e5b38fbea1fb611edafee45f7c2d8152647958fbca","theorem":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.Compose.RustStd.root"},"crate":{"byte_length":17019,"sha256":"5f186f5373dce90862c9a810e08bd13a8abf477bd797f8d5ec8716e8d63f652b"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.RustStd","sha256":"1ea38679b666f685b305ea253249d1408b1879ccce6f15bbe43422157ecb6013","target":"rust-std","theorem":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.RustStd.root"}],"root":"Models.Main.admitCosts","sha256":"7b28a5f3df92871dfa03d879ebc72b406f80638eea871d1a7f15b5d8736daf0e","targets":["rust-std"],"theorem":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.root"},{"byte_length":16488,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4","program":{"byte_length":4260,"sha256":"36d1687bd2f49a8a4e634440ac23148a5f94ed7d3c5ec222fe66c0615e9208af"},"renderings":[{"byte_length":16667,"composed":{"byte_length":17788,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.Compose.RustStd","sha256":"8e26dd0e353d74437b4e4032e3addd8d3f805e3db87a03b2448d00b3d1fbca14","theorem":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.Compose.RustStd.root"},"crate":{"byte_length":14275,"sha256":"9580e86941cdeea970dc62f25bbf63090547dd2dc3618a0a303a687147a8f2e8"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.RustStd","sha256":"41b227935dca5d3a9c7fbc64f0223bec1ad0a7243ba1ff866d2463b106c526c6","target":"rust-std","theorem":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.RustStd.root"}],"root":"Models.Main.step","sha256":"677b3e1d04a642d79c95364e756c957033750ed3f458705753f41fbe7249795b","targets":["rust-std"],"theorem":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.root"},{"byte_length":16539,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5","program":{"byte_length":3912,"sha256":"223f35bd805c466609ba87317bb05b5d4c84e8ddb34eda0a212e475fa06ed6d0"},"renderings":[{"byte_length":13176,"composed":{"byte_length":13445,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.Compose.RustStd","sha256":"705de7d5ade41c308c6f46b9472fcfe4469ee76ab24e9f8e01b25070de372a83","theorem":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.Compose.RustStd.root"},"crate":{"byte_length":13783,"sha256":"e8382fdebcad23a5a1550fafd501fdb4e10d1fc1aefe4a8b2313567cf49a4f5c"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.RustStd","sha256":"49f00fe72c52214d693ad9cc2d952bace977d0840e527471d445f86720882517","target":"rust-std","theorem":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.RustStd.root"}],"root":"Models.Main.ledgerPost","sha256":"1590cc829191bc917e32d35f773116f58ca61297b7a58eea0e61834f5b6a5826","targets":["rust-std"],"theorem":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.root"},{"byte_length":22235,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6","program":{"byte_length":4889,"sha256":"503bc027d950639ac5de5927de7fa4a04fca266c6fd0df3660196e5e287d7ce5"},"renderings":[{"byte_length":18749,"composed":{"byte_length":13445,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.Compose.RustStd","sha256":"ac18355f31ed1cd2331f6c247d57b8a4af5c4e6bbf75d6e3b58c1f54c7b5580f","theorem":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.Compose.RustStd.root"},"crate":{"byte_length":14211,"sha256":"898563f8bae88021f224534c1354540b6a565545d6c7c6e0b6cddfd30fe6a429"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.RustStd","sha256":"0cee23c0892e11b0e7ad7f8fe0096df04d66159f1fccef987477ebabf5819835","target":"rust-std","theorem":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.RustStd.root"}],"root":"Models.Main.ledgerFull","sha256":"c23304418cdc8175168bdd6da1c8d3d70e67da8ea590a0d9985623382ff7874e","targets":["rust-std"],"theorem":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.root"},{"byte_length":11285,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7","program":{"byte_length":2614,"sha256":"8f1d418b689da95074ce318bd41caf146e0fc0c6e303165f2b1ca0abd385459d"},"renderings":[{"byte_length":8772,"composed":{"byte_length":12210,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.Compose.RustStd","sha256":"deee2a75053e5bbd23999687f8409293483816edb6b2a5d32a62f371e1d98d5b","theorem":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.Compose.RustStd.root"},"crate":{"byte_length":13420,"sha256":"0250a47719d614ca1aac8b544aa0168a202e61e5eb0011f6aaff82e3e73e59dd"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.RustStd","sha256":"df460b5f7a165ab67055ca487382cb9117e33b10431d4f9fa4f6d322faa1ad94","target":"rust-std","theorem":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.RustStd.root"}],"root":"Models.Main.guessChecked","sha256":"4b0025d58eb0f9df5c712c00bd92808c416f4de84f9e055c128f4fbedaa3f00b","targets":["rust-std"],"theorem":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.root"},{"byte_length":28208,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8","program":{"byte_length":8003,"sha256":"61d87ac85673bcb778de069cf6923996eb9e821ad05d71bfde3d36dd1bb3d241"},"renderings":[{"byte_length":26659,"composed":{"byte_length":13516,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.Compose.RustStd","sha256":"d84ad9447f2b695ee9c4c2efdaaa604bea742336c7fb3b0308e3de015b9ecaae","theorem":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.Compose.RustStd.root"},"crate":{"byte_length":14939,"sha256":"e4f361765740eab4808750f5d31762757ae333d2e23d94047ba8761aeb607264"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.RustStd","sha256":"1d10511800875e2259addfea828b2fd06fdc4978cd768b42027b30390770c468","target":"rust-std","theorem":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.RustStd.root"}],"root":"Models.Main.flowStep","sha256":"2453c6f03b1743e58ade74f5cf830220c6bd6cf3664b9056e70b7772af906d58","targets":["rust-std"],"theorem":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.root"}],"spec":"lexlean/preservation/1"} diff --git a/examples/models/expected/verify/probe/LexLeanProbe.P49cf062e918bdc2f8a44a66473c4435e.lean b/examples/models/expected/verify/probe/LexLeanProbe.P91b57d30cfd6f60128d6c72e374148ef.lean similarity index 100% rename from examples/models/expected/verify/probe/LexLeanProbe.P49cf062e918bdc2f8a44a66473c4435e.lean rename to examples/models/expected/verify/probe/LexLeanProbe.P91b57d30cfd6f60128d6c72e374148ef.lean diff --git a/examples/models/expected/verify/probe/process.json b/examples/models/expected/verify/probe/process.json index db0e0e950..ef2bfcdd3 100644 --- a/examples/models/expected/verify/probe/process.json +++ b/examples/models/expected/verify/probe/process.json @@ -1 +1 @@ -{"argv":["env","lean","$STAGING/probe/LexLeanProbe.P49cf062e918bdc2f8a44a66473c4435e.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanProbe.P49cf062e918bdc2f8a44a66473c4435e","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} +{"argv":["env","lean","$STAGING/probe/LexLeanProbe.P91b57d30cfd6f60128d6c72e374148ef.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanProbe.P91b57d30cfd6f60128d6c72e374148ef","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.Compose.RustStd.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.Compose.RustStd.json deleted file mode 100644 index fd0452a57..000000000 --- a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.RustStd.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.RustStd.json deleted file mode 100644 index 973eb846a..000000000 --- a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.json deleted file mode 100644 index ba5b6e781..000000000 --- a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.Compose.RustStd.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.Compose.RustStd.json deleted file mode 100644 index e5d88c65e..000000000 --- a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.RustStd.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.RustStd.json deleted file mode 100644 index 1f96ebb2c..000000000 --- a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.json deleted file mode 100644 index fe5c3f7bf..000000000 --- a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.Compose.RustStd.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.Compose.RustStd.json deleted file mode 100644 index 0c5f5790a..000000000 --- a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.RustStd.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.RustStd.json deleted file mode 100644 index 3f1c68ae9..000000000 --- a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.json deleted file mode 100644 index 1f8b71cfc..000000000 --- a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.Compose.RustStd.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.Compose.RustStd.json deleted file mode 100644 index 94676534b..000000000 --- a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.RustStd.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.RustStd.json deleted file mode 100644 index 679bafc59..000000000 --- a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.json deleted file mode 100644 index 612477e7a..000000000 --- a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.Compose.RustStd.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.Compose.RustStd.json deleted file mode 100644 index 32eb297f7..000000000 --- a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.RustStd.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.RustStd.json deleted file mode 100644 index a9e6a339e..000000000 --- a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.json deleted file mode 100644 index 114f01bf3..000000000 --- a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.Compose.RustStd.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.Compose.RustStd.json deleted file mode 100644 index fdc79e741..000000000 --- a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.RustStd.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.RustStd.json deleted file mode 100644 index 1bcab7e87..000000000 --- a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.json deleted file mode 100644 index 000016a64..000000000 --- a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.Compose.RustStd.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.Compose.RustStd.json deleted file mode 100644 index 34b4a086d..000000000 --- a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.RustStd.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.RustStd.json deleted file mode 100644 index d94123f44..000000000 --- a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.json deleted file mode 100644 index d5a6c7f6d..000000000 --- a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.Compose.RustStd.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.Compose.RustStd.json deleted file mode 100644 index 2eb19a121..000000000 --- a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.RustStd.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.RustStd.json deleted file mode 100644 index 68844807f..000000000 --- a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.json deleted file mode 100644 index d8798b018..000000000 --- a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.Compose.RustStd.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.Compose.RustStd.json deleted file mode 100644 index a9c58852e..000000000 --- a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.RustStd.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.RustStd.json deleted file mode 100644 index 9f6288d25..000000000 --- a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.json deleted file mode 100644 index e3ce5e566..000000000 --- a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.Compose.RustStd.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.Compose.RustStd.json new file mode 100644 index 000000000..4e18d040e --- /dev/null +++ b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.RustStd.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.RustStd.json new file mode 100644 index 000000000..91f5554bf --- /dev/null +++ b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.json new file mode 100644 index 000000000..0d38b63f2 --- /dev/null +++ b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.Compose.RustStd.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.Compose.RustStd.json new file mode 100644 index 000000000..5e2444380 --- /dev/null +++ b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.RustStd.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.RustStd.json new file mode 100644 index 000000000..76edd3899 --- /dev/null +++ b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.json new file mode 100644 index 000000000..12136cfbb --- /dev/null +++ b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.Compose.RustStd.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.Compose.RustStd.json new file mode 100644 index 000000000..f5f85aea4 --- /dev/null +++ b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.RustStd.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.RustStd.json new file mode 100644 index 000000000..c62e9cff5 --- /dev/null +++ b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.json new file mode 100644 index 000000000..014785ef2 --- /dev/null +++ b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.Compose.RustStd.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.Compose.RustStd.json new file mode 100644 index 000000000..420cc32c0 --- /dev/null +++ b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.RustStd.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.RustStd.json new file mode 100644 index 000000000..ee4c7dc0f --- /dev/null +++ b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.json new file mode 100644 index 000000000..d1651e7b0 --- /dev/null +++ b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.Compose.RustStd.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.Compose.RustStd.json new file mode 100644 index 000000000..e7439d78f --- /dev/null +++ b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.RustStd.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.RustStd.json new file mode 100644 index 000000000..91cf5521b --- /dev/null +++ b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.json new file mode 100644 index 000000000..c87a8f530 --- /dev/null +++ b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.Compose.RustStd.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.Compose.RustStd.json new file mode 100644 index 000000000..a929667de --- /dev/null +++ b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.RustStd.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.RustStd.json new file mode 100644 index 000000000..ed1784d6b --- /dev/null +++ b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.json new file mode 100644 index 000000000..ffece195d --- /dev/null +++ b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.Compose.RustStd.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.Compose.RustStd.json new file mode 100644 index 000000000..18def3388 --- /dev/null +++ b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.RustStd.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.RustStd.json new file mode 100644 index 000000000..c732373e3 --- /dev/null +++ b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.json new file mode 100644 index 000000000..699b72b21 --- /dev/null +++ b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.Compose.RustStd.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.Compose.RustStd.json new file mode 100644 index 000000000..19eeebc1f --- /dev/null +++ b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.RustStd.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.RustStd.json new file mode 100644 index 000000000..f10d0e520 --- /dev/null +++ b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.json new file mode 100644 index 000000000..b43f32e5f --- /dev/null +++ b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.Compose.RustStd.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.Compose.RustStd.json new file mode 100644 index 000000000..e11611df1 --- /dev/null +++ b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.RustStd.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.RustStd.json new file mode 100644 index 000000000..56e47e906 --- /dev/null +++ b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.json b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.json new file mode 100644 index 000000000..0dfc50aae --- /dev/null +++ b/examples/models/expected/verify/process/leanchecker/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.Audit.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.Audit.json index e61bc15c6..de89e919d 100644 --- a/examples/models/expected/verify/process/preserve/LexLeanPreserve.Audit.json +++ b/examples/models/expected/verify/process/preserve/LexLeanPreserve.Audit.json @@ -1 +1 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","$STAGING/preserve-src/LexLeanPreserve/Audit.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Audit","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanPreservation.Obs' does not depend on any axioms\n'LexLeanPreservation.obs.match_1' does not depend on any axioms\n'LexLeanPreservation.obs' does not depend on any axioms\n'LexLeanPreservation.Conv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ConvA' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ObsL' does not depend on any axioms\n'LexLeanPreservation.obsL.match_1' does not depend on any axioms\n'LexLeanPreservation.obsL' does not depend on any axioms\n'LexLeanPreservation.ConvL' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.FunRel' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Obs._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.Obs._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.Obs.casesOn' does not depend on any axioms\n'LexLeanPreservation.Obs.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.Obs.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Obs.ctorElim' does not depend on any axioms\n'LexLeanPreservation.Obs.overflow.elim' does not depend on any axioms\n'LexLeanPreservation.Obs.stuck.elim' does not depend on any axioms\n'LexLeanPreservation.Obs.value.elim' does not depend on any axioms\n'LexLeanPreservation.Obs.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.Obs.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Obs.overflow.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Obs.recOn' does not depend on any axioms\n'LexLeanPreservation.Obs.stuck.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Obs.value.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Obs.value.inj' does not depend on any axioms\n'LexLeanPreservation.Obs.value.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Obs.value.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ObsL._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.ObsL._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.ObsL.casesOn' does not depend on any axioms\n'LexLeanPreservation.ObsL.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.ObsL.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.ObsL.ctorElim' does not depend on any axioms\n'LexLeanPreservation.ObsL.overflow.elim' does not depend on any axioms\n'LexLeanPreservation.ObsL.stuck.elim' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.elim' does not depend on any axioms\n'LexLeanPreservation.ObsL.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.ObsL.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ObsL.overflow.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ObsL.recOn' does not depend on any axioms\n'LexLeanPreservation.ObsL.stuck.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.inj' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.injEq' depends on axioms: [propext]\n'LexLeanPreservation.ObsL.values.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rel' does not depend on any axioms\n'LexLeanPreservation.Rel.eq_1' does not depend on any axioms\n'LexLeanPreservation.RelL' does not depend on any axioms\n'LexLeanPreservation.RelL.eq_1' does not depend on any axioms\n'LexLeanPreservation.RunConv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.addSteps_ne' does not depend on any axioms\n'LexLeanPreservation.chargeResult_ne' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.stable.match_1_16' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_18' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_20' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_22' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_24' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_26' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.eval.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.stable' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.evalArms_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs_ne' does not depend on any axioms\n'LexLeanPreservation.convA_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.eval_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs_addSteps' does not depend on any axioms\n'LexLeanPreservation.convA_hit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.convA_miss' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.evalList_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obsL_ne' does not depend on any axioms\n'LexLeanPreservation.convL_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.convL_cons._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.convL_cons._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.convL_cons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.convL_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_apply._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_apply._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_apply._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_apply' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_build' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_call._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_call._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_call' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_closure' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_cond._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_cond._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_field' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_first' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_let._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_let._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_let' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_match._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_match._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_match' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_matchV' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs_chargeResult' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_prim' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_second' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_var' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.funRel_intro' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs.eq_1' does not depend on any axioms\n'LexLeanPreservation.obs.eq_2' does not depend on any axioms\n'LexLeanPreservation.obs.eq_3' does not depend on any axioms\n'LexLeanPreservation.obs.eq_4' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_1' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_2' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_3' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_4' does not depend on any axioms\n'LexLeanPreservation.run_of_funRel' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.run.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ListEnc' does not depend on any axioms\n'LexLeanPreservation.ListEnc._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.ListEnc._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.ListEnc.casesOn' does not depend on any axioms\n'LexLeanPreservation.ListEnc.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.ListEnc.elem' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items' does not depend on any axioms\n'LexLeanPreservation.ListEnc.enc' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_cons' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_eq.match_1_1' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_nil' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_eq._f' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_eq' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.ListEnc.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.ListEnc.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk.inj' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk.injEq' depends on axioms: [propext]\n'LexLeanPreservation.ListEnc.mk.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ListEnc.recOn' does not depend on any axioms\n'LexLeanPreservation.OptEnc' does not depend on any axioms\n'LexLeanPreservation.OptEnc._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.OptEnc._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.OptEnc.casesOn' does not depend on any axioms\n'LexLeanPreservation.OptEnc.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.OptEnc.elem' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc_none' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc_some' does not depend on any axioms\n'LexLeanPreservation.encOption.match_1' does not depend on any axioms\n'LexLeanPreservation.encOption' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc_map' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.OptEnc.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.OptEnc.noConfusion' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk.noConfusion' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk.inj' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk.injEq' depends on axioms: [propext]\n'LexLeanPreservation.OptEnc.mk.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.OptEnc.recOn' does not depend on any axioms\n'LexLeanPreservation.construct_adt' does not depend on any axioms\n'LexLeanPreservation.construct_cons' does not depend on any axioms\n'LexLeanPreservation.construct_error' does not depend on any axioms\n'LexLeanPreservation.construct_false' does not depend on any axioms\n'LexLeanPreservation.construct_nil' does not depend on any axioms\n'LexLeanPreservation.construct_none' does not depend on any axioms\n'LexLeanPreservation.construct_ok' does not depend on any axioms\n'LexLeanPreservation.construct_pair' does not depend on any axioms\n'LexLeanPreservation.construct_some' does not depend on any axioms\n'LexLeanPreservation.construct_succ' does not depend on any axioms\n'LexLeanPreservation.construct_true' does not depend on any axioms\n'LexLeanPreservation.construct_unit' does not depend on any axioms\n'LexLeanPreservation.construct_zero' does not depend on any axioms\n'LexLeanPreservation.encExcept.match_1' does not depend on any axioms\n'LexLeanPreservation.encExcept' does not depend on any axioms\n'LexLeanPreservation.encList' does not depend on any axioms\n'LexLeanPreservation.encOrdering.match_1' does not depend on any axioms\n'LexLeanPreservation.encOrdering' does not depend on any axioms\n'LexLeanPreservation.encPair' does not depend on any axioms\n'LexLeanPreservation.encUnit' does not depend on any axioms\n'LexLeanPreservation.listEnc._proof_1' does not depend on any axioms\n'LexLeanPreservation.listEnc._proof_2' does not depend on any axioms\n'LexLeanPreservation.listEnc' does not depend on any axioms\n'LexLeanPreservation.optEnc._proof_1' does not depend on any axioms\n'LexLeanPreservation.optEnc._proof_2' does not depend on any axioms\n'LexLeanPreservation.optEnc' does not depend on any axioms\n'LexLeanPreservation.bytes_empty' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.bytes_one' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.bytes_zero' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.encOrdering.eq_1' does not depend on any axioms\n'LexLeanPreservation.encOrdering.eq_2' does not depend on any axioms\n'LexLeanPreservation.encOrdering.eq_3' does not depend on any axioms\n'LexLeanPreservation.fromOrdering_encOrdering' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.fromStrings_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.fromStrings_map._f' does not depend on any axioms\n'LexLeanPreservation.fromStrings_map' does not depend on any axioms\n'LexLeanPreservation.intFits' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.listIndex_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.listIndex_map._f' does not depend on any axioms\n'LexLeanPreservation.listIndex_map' does not depend on any axioms\n'LexLeanPreservation.listIndex_unique.match_1_1' does not depend on any axioms\n'LexLeanPreservation.listIndex_unique._f' does not depend on any axioms\n'LexLeanPreservation.listIndex_unique' does not depend on any axioms\n'LexLeanPreservation.obs_intResult' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.obs_natResult' does not depend on any axioms\n'LexLeanPreservation.prim_append_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_append_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_boolNot' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_compareBytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_bool' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_nat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_ordering' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_string' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_index_bytes.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_index_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_index_list.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_index_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intMul' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intNeg' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intQuot' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intRem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intSub' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_join.match_1_1' does not depend on any axioms\n'LexLeanPreservation.toStrings_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.toStrings_map.match_1_3' does not depend on any axioms\n'LexLeanPreservation.toStrings_map._f' does not depend on any axioms\n'LexLeanPreservation.toStrings_map' does not depend on any axioms\n'LexLeanPreservation.prim_join' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_length_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_length_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_length_string' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natAdd' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natEq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natLe' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natLt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natMul' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natQuot' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natRem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natSub' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_slice_bytes.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_slice_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_slice_list.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_slice_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_splitExact.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_splitExact' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_utf8Decode.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_utf8Decode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_utf8Encode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.compareBytes.eq_1' depends on axioms: [propext]\n'LexLeanRuntime.equal.eq_1' does not depend on any axioms\n'LexLeanRuntime.length.eq_1' does not depend on any axioms\n'LexLeanRuntime.slice.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromOrdering.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.checkedMultiplyWith.match_1' does not depend on any axioms\n'LexLeanPreservation.checkedMultiplyWith' does not depend on any axioms\n'LexLeanPreservation.checkedQuotientWith' does not depend on any axioms\n'LexLeanPreservation.decimalFits.match_1' does not depend on any axioms\n'LexLeanPreservation.decimalFits' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.divideStep' does not depend on any axioms\n'LexLeanPreservation.divide_unique.match_1_1' does not depend on any axioms\n'LexLeanPreservation.divide_unique._f' does not depend on any axioms\n'LexLeanPreservation.divide_unique' does not depend on any axioms\n'LexLeanPreservation.multiplyStep' does not depend on any axioms\n'LexLeanPreservation.multiply_unique.match_1_1' does not depend on any axioms\n'LexLeanPreservation.multiply_unique._f' does not depend on any axioms\n'LexLeanPreservation.multiply_unique' does not depend on any axioms\n'LexLeanPreservation.prim_bitAnd_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i64.match_1_2' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_int' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_int.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_int' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ordOf.match_1' does not depend on any axioms\n'LexLeanPreservation.ordOf' does not depend on any axioms\n'LexLeanPreservation.KeySpec' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.mk._flat_ctor' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.recOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.spec' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.compareCodes_eq.match_1_1' does not depend on any axioms\n'LexLeanPreservation.compareCodes_eq._f' depends on axioms: [propext]\n'LexLeanPreservation.compareCodes_eq' depends on axioms: [propext]\n'LexLeanPreservation.compareCodes_swap.match_1_1' does not depend on any axioms\n'LexLeanPreservation.compareCodes_swap._f' depends on axioms: [propext]\n'LexLeanPreservation.compareCodes_swap' depends on axioms: [propext]\n'LexLeanPreservation.lessThanE' does not depend on any axioms\n'LexLeanPreservation.prim_compare_key.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_compare_key' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_lessThan' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.orderOf_insert' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.orderBool.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.keySpec_bool' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI16.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI32.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI64.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI8.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderInt.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_int' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderNat.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_nat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.keySpec_pair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderString.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.keySpec_string' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU16.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU32.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU64.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU8.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanCollections.compareCodes._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_2' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_3' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_4' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_def' depends on axioms: [propext]\n'LexLeanCollections.insertEntry.eq_1' does not depend on any axioms\n'LexLeanCollections.insertEntry.eq_2' does not depend on any axioms\n'LexLeanCollections.insertEntry.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.compareValue.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_18' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_20' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_22' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_23' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_24' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_25' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_26' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_27' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_28' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_29' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_30' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_31' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_33' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_34' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_35' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_36' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_37' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_38' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_39' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_40' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_41' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_42' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_43' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_44' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_45' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_46' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_47' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_48' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_49' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_50' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_51' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_52' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_53' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_54' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_55' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_56' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_57' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_58' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_59' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_60' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_61' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_62' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_63' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_65' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_66' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_67' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_68' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_69' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_70' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_71' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_72' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_73' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_74' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_75' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_76' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_77' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_78' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_79' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_80' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_81' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_82' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_83' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_84' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_85' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_86' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_87' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_88' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_89' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_90' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_91' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_92' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_93' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_94' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_95' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_96' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_97' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_98' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_99' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Conv.bool_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Conv.fits_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.FunRel.fits_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ListEnc.enc.eq_1' does not depend on any axioms\n'LexLeanPreservation.ListEnc.enc_cons' does not depend on any axioms\n'LexLeanPreservation.ListEnc.enc_nil' does not depend on any axioms\n'LexLeanPreservation.LookOps' does not depend on any axioms\n'LexLeanPreservation.LookOps.casesOn' does not depend on any axioms\n'LexLeanPreservation.LookOps.l0' does not depend on any axioms\n'LexLeanPreservation.LookOps.leq' does not depend on any axioms\n'LexLeanPreservation.LookOps.lgt' does not depend on any axioms\n'LexLeanPreservation.LookOps.llt' does not depend on any axioms\n'LexLeanPreservation.LookOps.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.LookOps.recOn' does not depend on any axioms\n'LexLeanPreservation.SetOps' does not depend on any axioms\n'LexLeanPreservation.SetOps.c0' does not depend on any axioms\n'LexLeanPreservation.SetOps.casesOn' does not depend on any axioms\n'LexLeanPreservation.SetOps.ceq' does not depend on any axioms\n'LexLeanPreservation.SetOps.cgt' does not depend on any axioms\n'LexLeanPreservation.SetOps.clt' does not depend on any axioms\n'LexLeanPreservation.SetOps.i0' does not depend on any axioms\n'LexLeanPreservation.SetOps.ieq' does not depend on any axioms\n'LexLeanPreservation.SetOps.igt' does not depend on any axioms\n'LexLeanPreservation.SetOps.ilt' does not depend on any axioms\n'LexLeanPreservation.SetOps.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.SetOps.r0' does not depend on any axioms\n'LexLeanPreservation.SetOps.recOn' does not depend on any axioms\n'LexLeanPreservation.SetOps.req' does not depend on any axioms\n'LexLeanPreservation.SetOps.rgt' does not depend on any axioms\n'LexLeanPreservation.SetOps.rlt' does not depend on any axioms\n'LexLeanPreservation.TopoOps' does not depend on any axioms\n'LexLeanPreservation.TopoOps.casesOn' does not depend on any axioms\n'LexLeanPreservation.TopoOps.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.TopoOps.recOn' does not depend on any axioms\n'LexLeanPreservation.TopoOps.s_next' does not depend on any axioms\n'LexLeanPreservation.TopoOps.s_nil' does not depend on any axioms\n'LexLeanPreservation.TopoOps.s_stuck' does not depend on any axioms\n'LexLeanPreservation.TopoOps.z_cons' does not depend on any axioms\n'LexLeanPreservation.TopoOps.z_nil' does not depend on any axioms\n'LexLeanPreservation.Tpl.boolE' does not depend on any axioms\n'LexLeanPreservation.Tpl.byOrder' does not depend on any axioms\n'LexLeanPreservation.Tpl.cns' does not depend on any axioms\n'LexLeanPreservation.Tpl.fn' does not depend on any axioms\n'LexLeanPreservation.Tpl.lst' does not depend on any axioms\n'LexLeanPreservation.Tpl.v' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphInnerFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.pr' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphNodesFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.natOne' does not depend on any axioms\n'LexLeanPreservation.Tpl.nl' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphReachableFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphSuccessorsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphTopologicalFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.iterateFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.iterateUntilFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.listFoldFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapContainsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapFoldFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapInsertFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapLookupFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapProjectFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapRemoveFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reachFrontierFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reachIntoFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reachRoundsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reverseFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setContainsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setFilterFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setInsertFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setRemoveFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setUnionFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoFinished' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoReadyFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoRoundsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoUnreachedFn' does not depend on any axioms\n'LexLeanPreservation.blt_succ_fits._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.blt_succ_fits' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_cond_false' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_cond_true' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.enc_elem' does not depend on any axioms\n'LexLeanPreservation.enc_entry' does not depend on any axioms\n'LexLeanPreservation.foldFits.match_1' does not depend on any axioms\n'LexLeanPreservation.foldFits._f' does not depend on any axioms\n'LexLeanPreservation.foldFits' does not depend on any axioms\n'LexLeanPreservation.foldFits._sunfold' does not depend on any axioms\n'LexLeanPreservation.foldFits._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.foldFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.foldFits.eq_2' does not depend on any axioms\n'LexLeanPreservation.foldFits.eq_def' does not depend on any axioms\n'LexLeanPreservation.graphFits' does not depend on any axioms\n'LexLeanPreservation.graphFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.iterateFits.match_1' does not depend on any axioms\n'LexLeanPreservation.iterateFits._f' does not depend on any axioms\n'LexLeanPreservation.iterateFits' does not depend on any axioms\n'LexLeanPreservation.iterateFits._sunfold' does not depend on any axioms\n'LexLeanPreservation.iterateFits._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.iterateFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.iterateFits.eq_2' does not depend on any axioms\n'LexLeanPreservation.iterateFits.eq_def' does not depend on any axioms\n'LexLeanPreservation.length_eq' does not depend on any axioms\n'LexLeanPreservation.prim_compare_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.reachNext' does not depend on any axioms\n'LexLeanPreservation.tpl_graphInner.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setInsert.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setInsert._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setInsert' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphInner._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphInner' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphNodes.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_graphNodes._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphNodes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapLookup.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapLookup._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapLookup' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphSuccessors' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachFrontier.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_reachInto.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setContains.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setContains._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setContains' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachInto._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachInto' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachFrontier._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachFrontier' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachRounds.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setUnion.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setUnion._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setUnion' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachRounds._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachRounds' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphReachable' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reverse.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_reverse._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reverse' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setRemove.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setRemove._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setRemove' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoReady.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_topoUnreached.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_topoUnreached._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoUnreached' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoReady._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoReady' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoRounds.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_topoRounds._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoRounds' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphTopological' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterate.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_iterate._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterate' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterateUntil.match_1_1' does not depend on any axioms\n'LexLeanPreservation.untilFits.match_1' does not depend on any axioms\n'LexLeanPreservation.untilFits._f' does not depend on any axioms\n'LexLeanPreservation.untilFits' does not depend on any axioms\n'LexLeanPreservation.tpl_iterateUntil._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterateUntil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_listFold.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_listFold._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_listFold' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapContains' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapFold.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapFold._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapFold' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapInsert.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapInsert._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapInsert' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapKeys.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapKeys._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapKeys' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapRemove.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapRemove._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapRemove' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapValues.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapValues._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapValues' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setDifference.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setDifference._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setDifference' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setIntersection.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setIntersection._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setIntersection' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.untilFits._sunfold' does not depend on any axioms\n'LexLeanPreservation.untilFits._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.untilFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.untilFits.eq_2' does not depend on any axioms\n'LexLeanPreservation.untilFits.eq_def' does not depend on any axioms\n'LexLeanPreservation.validExcept.match_1' does not depend on any axioms\n'LexLeanPreservation.InvExcept' does not depend on any axioms\n'LexLeanPreservation.InvList' does not depend on any axioms\n'LexLeanPreservation.InvList.eq_1' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.match_1' does not depend on any axioms\n'LexLeanPreservation.StrictAsc._f' does not depend on any axioms\n'LexLeanPreservation.StrictAsc' does not depend on any axioms\n'LexLeanPreservation.InvMap' does not depend on any axioms\n'LexLeanPreservation.validOption.match_1' does not depend on any axioms\n'LexLeanPreservation.InvOption' does not depend on any axioms\n'LexLeanPreservation.InvOption.eq_1' does not depend on any axioms\n'LexLeanPreservation.InvOption.eq_2' does not depend on any axioms\n'LexLeanPreservation.InvPair' does not depend on any axioms\n'LexLeanPreservation.InvSet' does not depend on any axioms\n'LexLeanPreservation.StrictAsc._sunfold' does not depend on any axioms\n'LexLeanPreservation.StrictAsc._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_1' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_2' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_3' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_def' does not depend on any axioms\n'LexLeanPreservation.Tpl.validListFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validMapFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validOptionFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validPairFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validResultFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validSetFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validTrueFn' does not depend on any axioms\n'LexLeanPreservation.ascMap.match_1' does not depend on any axioms\n'LexLeanPreservation.lessB.match_1' does not depend on any axioms\n'LexLeanPreservation.lessB' does not depend on any axioms\n'LexLeanPreservation.ascMap._f' does not depend on any axioms\n'LexLeanPreservation.ascMap' does not depend on any axioms\n'LexLeanPreservation.ascMap._sunfold' does not depend on any axioms\n'LexLeanPreservation.ascMap._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_1' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_2' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_3' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_def' does not depend on any axioms\n'LexLeanPreservation.ascMap_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.lessB_iff' depends on axioms: [propext]\n'LexLeanPreservation.ascMap_iff._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.ascMap_iff' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.ascMap_inv' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.ascSet._f' does not depend on any axioms\n'LexLeanPreservation.ascSet' does not depend on any axioms\n'LexLeanPreservation.ascSet._sunfold' does not depend on any axioms\n'LexLeanPreservation.ascSet._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_1' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_2' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_3' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_def' does not depend on any axioms\n'LexLeanPreservation.ascSet_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.ascSet_iff._f' depends on axioms: [propext]\n'LexLeanPreservation.ascSet_iff' depends on axioms: [propext]\n'LexLeanPreservation.ascSet_inv' depends on axioms: [propext]\n'LexLeanPreservation.condAnd_iff' depends on axioms: [propext]\n'LexLeanPreservation.invList_eqs.match_1_1' does not depend on any axioms\n'LexLeanPreservation.invList_eqs._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.invList_eqs' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.lessB.eq_1' does not depend on any axioms\n'LexLeanPreservation.lessB_eq' depends on axioms: [propext]\n'LexLeanPreservation.lessB_gt' depends on axioms: [propext]\n'LexLeanPreservation.lessB_lt' depends on axioms: [propext]\n'LexLeanPreservation.someObs.match_1' does not depend on any axioms\n'LexLeanPreservation.someObs' does not depend on any axioms\n'LexLeanPreservation.tpl_validList.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validList.match_1' does not depend on any axioms\n'LexLeanPreservation.validList._f' does not depend on any axioms\n'LexLeanPreservation.validList' does not depend on any axioms\n'LexLeanPreservation.tpl_validList' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validMap.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_validMap._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validMap' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validOption.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validOption' does not depend on any axioms\n'LexLeanPreservation.tpl_validOption' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validPair.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validPair' does not depend on any axioms\n'LexLeanPreservation.tpl_validPair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validResult.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validExcept' does not depend on any axioms\n'LexLeanPreservation.tpl_validResult' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validSet.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_validSet._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validSet' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validTrue' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.trueIff' does not depend on any axioms\n'LexLeanPreservation.validExcept_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validExcept_inv' does not depend on any axioms\n'LexLeanPreservation.validList._sunfold' does not depend on any axioms\n'LexLeanPreservation.validList._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.validList.eq_1' does not depend on any axioms\n'LexLeanPreservation.validList.eq_2' does not depend on any axioms\n'LexLeanPreservation.validList.eq_def' does not depend on any axioms\n'LexLeanPreservation.validList_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validList_iff._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.validList_iff' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.validList_inv' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.validOption.eq_1' does not depend on any axioms\n'LexLeanPreservation.validOption.eq_2' does not depend on any axioms\n'LexLeanPreservation.validOption_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validOption_inv' depends on axioms: [propext]\n'LexLeanPreservation.validPair_inv' depends on axioms: [propext]\n'LexLeanPreservation.validTrue_inv' does not depend on any axioms\n'LexLeanPreservation.Rust.Ctx' does not depend on any axioms\n'LexLeanPreservation.Rust.Flags' does not depend on any axioms\n'LexLeanPreservation.Rust.RCrate' does not depend on any axioms\n'LexLeanPreservation.Rust.RIdent' does not depend on any axioms\n'LexLeanPreservation.Rust.WT._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.adtFields' depends on axioms: [propext]\n'LexLeanTarget.TargetSyntax.IntKind.ofNat' does not depend on any axioms\n'LexLeanTarget.TargetSyntax.IntKind.ofNat_ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Rust.instDecidableEqIntKind_lexLeanPreservation._proof_1' does not depend on any axioms\n'LexLeanPreservation.Rust.instDecidableEqIntKind_lexLeanPreservation._proof_2' does not depend on any axioms\n'LexLeanPreservation.Rust.instDecidableEqIntKind_lexLeanPreservation' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flagOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fnIdent' does not depend on any axioms\n'LexLeanPreservation.Rust.fnFallible' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.inert._f' does not depend on any axioms\n'LexLeanPreservation.Rust.inert' does not depend on any axioms\n'LexLeanPreservation.Rust.WT._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.WTAll._f' does not depend on any axioms\n'LexLeanPreservation.Rust.WTL.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctxLookup.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup._f' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup' does not depend on any axioms\n'LexLeanPreservation.Rust.local_' does not depend on any axioms\n'LexLeanPreservation.Rust.EnvRel' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ROut' does not depend on any axioms\n'LexLeanPreservation.Rust.Halt' does not depend on any axioms\n'LexLeanPreservation.Rust.REnv' does not depend on any axioms\n'LexLeanPreservation.Rust.RExpr' does not depend on any axioms\n'LexLeanPreservation.Rust.RC' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RLet' does not depend on any axioms\n'LexLeanPreservation.Rust.LetsOK' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.append' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.below' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.below.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.brecOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.recOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.append_left' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.append_right' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.below' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.below.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.brecOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.recOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RBlock' does not depend on any axioms\n'LexLeanPreservation.Rust.dispatched_ne' does not depend on any axioms\n'LexLeanPreservation.Rust.finished_ne' does not depend on any axioms\n'LexLeanPreservation.Rust.returned_ne' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_24' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_26' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_28' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_30' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_32' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_34' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_36' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.eval.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_22' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.invoke.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.stable' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.reval_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCB' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.block' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCA' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.revalBlock_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCB.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCI' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.invoke_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCI.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCL' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.revalList_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCL.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.WTAll' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.block_of_lets' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.block_of_raise' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.ctxLookup._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup_slot._simp_1_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotFree' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup_slot' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_cons_other' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sameIdent_self' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_cons_self' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sameIdent_local' depends on axioms: [propext]\n'LexLeanPreservation.Rust.envRel_bind' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.envRel_extra' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.envRel_ghost' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sameIdent_kind' depends on axioms: [propext]\n'LexLeanPreservation.Rust.envRel_temp' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.listIndex_eq.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.listIndex_eq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.listIndex_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.index_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.inert._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.inert._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_nil.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_raise_head.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcl_raise_head.match_1_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcl_raise_head' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_raise_tail' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.revalArms_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.slotFree.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sunfold' depends on axioms: [propext]\n'LexLeanTarget.RustSemantics.eval.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_18' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_20' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.invoke.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.invoke.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.kindNumber.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.lookup.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.lookup.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.lookup.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.lookup.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.lookup.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.lookup.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd' does not depend on any axioms\n'LexLeanPreservation.Rust.isTemp._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isTemp.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isTemp' depends on axioms: [propext]\n'LexLeanPreservation.Rust.letsBind.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds._f' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds._f' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind._f' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind' does not depend on any axioms\n'LexLeanPreservation.Rust.tempFresh' does not depend on any axioms\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.foldN.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.flatB._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep.match_7' does not depend on any axioms\n'LexLeanPreservation.Rust.foldStep' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldB' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats._f' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats' does not depend on any axioms\n'LexLeanPreservation.Rust.okBlock' does not depend on any axioms\n'LexLeanPreservation.Rust.partRead._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Kind.casesOn' does not depend on any axioms\n'LexLeanPreservation.Rust.elseCtx.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.elseCtx' does not depend on any axioms\n'LexLeanPreservation.Rust.elseLets.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.elseLets' does not depend on any axioms\n'LexLeanPreservation.Rust.heldOK.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.heldOK' does not depend on any axioms\n'LexLeanPreservation.Rust.negateR._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.negateR._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.negateR.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.negateR' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_5' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_7' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_9' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identBoxed' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal' does not depend on any axioms\n'LexLeanPreservation.Rust.isWild._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.unboxOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotOK.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocal' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armShape.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.armShape' does not depend on any axioms\n'LexLeanPreservation.Rust.otherArms.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.otherArms' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.noClosure.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.noClosure._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh' depends on axioms: [propext]\n'LexLeanPreservation.Rust.covered' depends on axioms: [propext]\n'LexLeanPreservation.Rust.scrut' does not depend on any axioms\n'LexLeanPreservation.Rust.validU.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.validU' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotOK' does not depend on any axioms\n'LexLeanPreservation.Rust.ctorOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identsDistinct.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct._f' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct' does not depend on any axioms\n'LexLeanPreservation.Rust.litOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArg._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.match_6' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArg.match_8' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArg' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArgs._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildTail.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildsArm.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildsArm' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.itemOK.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemOK' does not depend on any axioms\n'LexLeanPreservation.Rust.itemTyped.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemTyped.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf' does not depend on any axioms\n'LexLeanPreservation.Rust.itemTyped' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_9' does not depend on any axioms\n'LexLeanPreservation.Rust.isFixed._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped' depends on axioms: [propext]\n'LexLeanPreservation.Rust.primTyped' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.litValues._f' does not depend on any axioms\n'LexLeanPreservation.Rust.litValue' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.typedLitAll._f' does not depend on any axioms\n'LexLeanPreservation.Rust.typedLits.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Corr' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.below' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.below.casesOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.brecOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.casesOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.recOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.FunOK' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.CrateOK' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Fresh' does not depend on any axioms\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn' depends on axioms: [propext]\n'LexLeanPreservation.Rust.FunSem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Kind._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.casesOn' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ctorElim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.b.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.e.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.k.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.l.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.m.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.ops.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.recOn' does not depend on any axioms\n'LexLeanPreservation.Rust.KPre.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.KPre' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Kind.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.ctorElim' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Kind.nat.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.plain.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.plain.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.recOn' does not depend on any axioms\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesM.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.RealizesM' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Sem.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.viewVal._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Sem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.foldN._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identsDistinct._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_10' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_11' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_12' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_13' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_14' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_6' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_7' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_8' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.litValues' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue._sunfold' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.litValue._unsafe_rec' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues._sunfold' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.paramCtx._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patsBinds' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.patLocals._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patsBinds._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArgs._sunfold' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs._unsafe_rec' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.typedLitAll' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.typedLits._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_of_inert.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_of_inert.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_of_inert._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_of_inert' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_of_inert._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_of_inert' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Halt.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.LetsRaise.halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.block_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.boxed' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesM.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesM.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_bytes_inv' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_list_inv' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_string_inv' depends on axioms: [propext]\n'LexLeanPreservation.Rust.takes_of_typed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.allWidth_of.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_eq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_eq._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.tysBeq_eq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq_eq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.wt_fixed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.allWidth_of._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.allWidth_of' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.width_of_typed.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.width_of_typed.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.width_of_typed.match_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.width_of_typed' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.accepts_of_typed' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_apply' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtl_append.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_append._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_append' depends on axioms: [propext]\n'LexLeanPreservation.Rust.apply_result' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.bindPattern_shape.match_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.bindPattern_shape._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.bindPatterns_shape._simp_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindPatterns_shape.match_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.bindPatterns_shape._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.bindPattern_shape' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.bindPatterns_shape' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms_spec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_4' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_6' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_7' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.boolArms_eval' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.boxWith.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_100' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_102' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_96' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_98' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_function' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.call_result' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.const_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.convert_args.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.convert_args' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_append_fresh' depends on axioms: [propext]\n'LexLeanPreservation.Rust.envRel_fresh' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_not._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_cond.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.itemResult.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.eval_match' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fixedTyped.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_18' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_19' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_20' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_21' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_22' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_23' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_24' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_25' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_26' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_27' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_28' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_29' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_30' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_31' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_32' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_33' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_34' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_35' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_36' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_37' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_38' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_39' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_40' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_41' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_42' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_43' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_44' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_45' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_46' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_47' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_48' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_49' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_50' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_51' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_52' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_53' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_54' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_55' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_56' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_57' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_58' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_59' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_60' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_61' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN_sound.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.split_last.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.split_last._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.split_last' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep_spec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcb_nil_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_nomatch.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcb_cons_nomatch' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_stop' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_prefix' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_flat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_read_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_cons_same' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcb_fold_last' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldStep_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldN_sound._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldN_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldB_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldN.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_append' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_bind._simp_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_bind' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotFree_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_weaken' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_elseCtx' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_temp._simp_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_temp' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fromStrings_wt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fromStrings_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fromStrings_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.hasWidth_i16' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_i32' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_i64' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_i8' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u16' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u32' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u64' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u8' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.heldOK.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.heldOK.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.isFixed._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.isSeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.isTemp._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.itemOK.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemOperands_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.itemResult' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.kpre_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_pred._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_pred.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_pred' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.kpre_else' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.kpre_then' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_of_lets' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_b_rcb' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.k_branch' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_cond_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_isZero_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_lit_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate_halt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_negate_halt.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_nonZero_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_23' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_25' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_27' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_29' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_31' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_33' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_35' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_37' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_39' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_41' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_43' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_45' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_47' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_49' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_51' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_not_inv.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_not_inv.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_not_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.k_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_read.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_read' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.kpre_held' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.letsBind.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.letsOK_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.letsOK_shape' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.litValue._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_4' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_def' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_5' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.eq_def' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.lit_branch' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.lookup_through._simp_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.lookup_through' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms_spec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms_eval' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.obsL_evalList_zero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.obs_eval_zero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.oneOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf_halt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.param_env.match_1_1' depends on axioms: [propext]\n'LexLeanTarget.TargetSemantics.bindAll.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.param_env._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.param_env' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.patBinds.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_10' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_6' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_7' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_8' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.primTyped.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_apply_halt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_apply_halt.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_apply_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_call_halt.match_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_runtime' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_construct' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct_halt.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct_halt.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_isZero.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_isZero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_lit.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_lit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue._simp_10' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue._simp_9' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue.match_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_pair.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_pair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_litValues.match_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rcl_litValues._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_nonZero.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_nonZero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_pair_halt_left' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_pair_halt_right' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_widen.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_widen' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_widen_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_11' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_7' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_litValues' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_nil_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_single_halt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_single_halt.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_single_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_widen_one' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.readOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizesL_halt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizesL_haltL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizes_halt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizesM_overflow' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizes_oneOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.runItem_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.runItem_succ' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_applyGen.match_1_13' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen.match_1_15' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen.match_1_28' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_apply' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_applyF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_bOfE' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_build.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_build.match_1_99' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_build' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildConst' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildPair.match_1_101' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_97' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_99' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildSucc.match_1_129' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSucc.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSucc' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildSuccF.match_1_101' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSuccF.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSuccF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_callF.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callF.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_callOps.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callOps.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callOps' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_closure.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.wtl_length.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_length._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_length' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_closure' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_cond.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_cond.match_1_11' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_condId.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_condId' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_eOfB' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_eOfBFold' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_eOfBNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_fOfB' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_unit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_fUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kHeld' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kLit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kId' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kIf' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kNeg' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kSame' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_lCons.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons.match_1_17' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons.match_1_19' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_lNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_letBind.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letBind.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letBind' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_letWild.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letWild.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letWild' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBool._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchHolder.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchHolder.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchHolder' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBool' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBoolId._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBoolId.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchBoolId' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchNat._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchNat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchUnit._proof_1_386' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchUnit.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchUnit.match_1_387' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsCons._simp_1_13' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsCons.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons.match_1_14' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons.match_1_16' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsOfL' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_29' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_31' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_ops_box.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_ops_box.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_ops_box.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_ops_box' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_part._sparseCasesOn_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_part.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_part.match_1_14' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_part.match_1_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_part' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_part._sparseCasesOn_1_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_prim.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_prim.match_1_38' does not depend on any axioms\n'LexLeanPreservation.Rust.wtAll_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wtAll_iff._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.wtAll_iff' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_append' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_bitwise' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_checked' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_convert' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_decode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_encode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_fixedTyped.match_1_67' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_format' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_index' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_join' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_parse' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_shift' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.slice_eq' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_slice' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_split' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_unary' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtl_one.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_one' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_three.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_three' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_two.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_two' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_fixedTyped' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_prim' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_prim' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_primF.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF.match_1_7' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_primWiden.match_1_108' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_110' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_112' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_114' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_116' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.typedLitAll_wt.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit_wt.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits_wt.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_var' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_varUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_zero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.shapeOf.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_10' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_11' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_12' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_13' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_14' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_6' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_7' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_8' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.tempFresh.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_12.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_13.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_14.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.allWidth.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.allWidth.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.allWidth.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_100' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_101' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_102' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_103' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_104' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_105' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_106' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_107' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_108' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_109' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_110' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_111' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_112' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_113' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_114' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_115' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_116' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_117' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_118' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_119' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_120' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_121' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_122' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_123' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_124' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_125' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_126' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_127' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_128' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_129' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_130' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_131' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_132' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_133' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_134' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_135' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_136' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_137' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_138' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_139' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_140' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_141' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_142' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_143' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_144' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_145' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_146' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_147' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_148' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_149' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_150' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_151' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_152' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_153' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_154' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_155' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_156' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_157' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_158' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_159' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_160' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_161' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_162' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_163' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_164' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_165' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_166' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_167' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_168' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_169' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_170' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_171' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_172' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_173' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_174' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_175' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_176' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_177' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_178' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_179' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_180' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_181' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_182' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_183' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_184' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_185' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_186' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_51' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_52' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_53' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_54' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_55' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_56' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_57' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_58' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_59' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_60' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_61' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_62' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_63' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_64' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_65' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_66' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_67' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_68' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_69' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_70' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_71' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_72' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_73' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_74' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_75' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_76' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_77' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_78' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_79' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_80' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_81' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_82' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_83' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_84' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_85' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_86' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_87' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_88' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_89' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_90' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_91' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_92' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_93' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_94' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_95' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_96' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_97' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_98' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_99' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_100' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_101' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_102' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_103' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_104' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_105' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_106' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_107' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_108' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_109' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_110' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_111' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_112' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_113' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_114' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_115' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_116' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_117' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_118' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_119' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_120' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_121' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_122' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_123' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_124' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_125' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_126' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_127' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_128' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_129' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_130' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_131' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_132' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_133' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_134' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_135' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_136' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_137' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_138' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_139' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_140' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_141' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_142' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_143' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_144' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_145' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_146' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_147' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_148' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_149' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_150' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_151' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_152' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_153' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_154' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_155' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_156' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_157' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_158' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_159' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_160' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_161' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_162' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_163' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_164' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_165' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_166' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_167' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_168' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_169' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_170' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_171' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_172' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_173' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_174' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_175' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_176' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_177' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_178' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_179' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_180' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_181' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_182' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_183' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_184' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_51' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_52' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_53' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_54' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_55' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_56' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_57' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_58' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_59' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_60' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_61' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_62' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_63' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_64' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_65' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_66' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_67' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_68' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_69' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_70' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_71' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_72' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_73' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_74' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_75' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_76' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_77' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_78' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_79' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_80' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_81' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_82' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_83' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_84' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_85' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_86' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_87' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_88' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_89' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_90' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_91' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_92' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_93' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_94' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_95' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_96' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_97' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_98' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_99' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemAccepts.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemAccepts.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.literal.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_10' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_11' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_12' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_13' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_14' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_15' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_3' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_4' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_5' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_6' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_7' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_8' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_9' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.propagated.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.returned.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_10' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_11' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_12' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_13' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_14' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_15' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_16' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_17' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_18' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_19' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_20' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_21' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_22' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_23' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_24' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_25' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_26' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_27' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_28' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_29' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_30' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_31' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_32' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_33' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_34' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_35' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_36' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_37' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_38' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_39' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_40' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_41' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_42' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_43' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_44' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_45' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_46' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_47' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_48' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_49' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_5' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_50' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_51' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_52' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_53' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_54' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_55' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_56' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_57' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_58' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_59' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_6' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_60' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_61' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_62' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_63' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_64' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_65' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_66' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_67' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_68' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_69' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_7' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_70' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_71' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_72' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_73' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_74' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_75' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_76' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_77' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_78' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_79' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_8' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_80' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_81' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_82' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_83' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_9' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_10' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_100' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_101' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_102' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_103' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_104' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_105' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_106' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_107' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_108' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_109' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_11' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_110' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_111' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_112' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_113' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_114' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_115' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_116' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_117' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_118' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_119' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_12' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_120' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_121' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_122' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_123' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_124' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_125' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_126' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_127' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_128' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_129' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_13' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_130' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_131' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_132' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_133' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_134' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_135' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_136' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_137' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_138' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_139' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_14' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_140' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_141' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_142' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_143' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_144' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_145' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_146' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_147' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_148' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_149' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_15' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_150' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_151' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_152' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_153' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_154' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_155' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_156' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_157' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_158' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_159' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_16' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_160' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_161' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_162' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_163' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_164' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_165' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_166' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_167' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_168' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_169' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_17' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_170' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_171' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_172' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_173' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_174' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_175' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_176' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_177' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_178' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_179' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_18' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_180' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_181' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_182' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_183' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_184' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_185' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_186' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_187' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_188' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_189' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_19' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_190' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_191' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_192' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_193' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_194' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_195' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_196' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_197' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_198' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_199' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_20' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_200' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_201' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_202' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_203' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_204' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_205' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_206' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_207' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_208' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_209' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_21' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_210' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_211' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_212' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_213' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_214' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_215' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_216' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_217' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_218' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_219' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_22' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_220' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_221' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_222' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_223' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_224' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_225' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_226' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_227' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_228' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_229' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_23' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_230' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_231' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_232' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_233' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_234' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_235' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_236' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_237' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_238' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_239' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_24' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_240' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_241' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_242' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_243' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_244' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_245' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_246' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_247' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_248' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_249' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_25' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_250' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_251' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_252' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_253' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_254' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_255' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_256' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_257' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_258' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_259' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_26' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_260' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_261' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_262' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_263' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_264' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_265' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_266' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_267' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_268' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_269' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_27' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_270' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_271' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_272' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_273' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_274' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_275' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_276' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_277' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_278' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_279' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_28' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_280' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_281' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_282' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_283' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_284' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_285' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_286' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_287' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_288' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_289' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_29' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_290' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_291' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_292' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_293' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_294' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_295' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_296' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_297' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_298' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_299' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_30' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_300' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_301' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_302' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_303' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_304' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_305' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_306' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_307' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_308' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_309' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_31' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_310' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_311' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_312' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_313' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_314' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_315' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_316' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_317' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_318' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_319' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_32' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_320' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_321' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_322' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_323' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_324' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_325' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_326' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_327' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_328' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_329' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_33' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_330' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_331' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_332' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_333' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_334' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_335' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_336' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_337' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_338' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_339' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_34' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_340' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_341' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_342' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_343' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_344' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_345' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_346' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_347' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_348' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_349' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_35' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_350' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_351' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_352' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_353' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_354' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_355' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_356' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_357' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_358' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_359' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_36' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_360' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_361' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_362' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_363' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_364' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_365' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_366' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_367' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_368' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_369' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_37' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_370' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_38' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_39' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_40' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_41' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_42' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_43' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_44' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_45' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_46' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_47' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_48' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_49' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_5' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_50' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_51' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_52' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_53' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_54' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_55' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_56' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_57' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_58' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_59' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_6' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_60' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_61' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_62' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_63' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_64' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_65' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_66' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_67' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_68' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_69' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_7' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_70' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_71' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_72' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_73' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_74' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_75' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_76' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_77' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_78' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_79' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_8' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_80' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_81' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_82' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_83' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_84' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_85' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_86' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_87' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_88' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_89' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_9' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_90' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_91' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_92' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_93' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_94' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_95' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_96' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_97' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_98' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_99' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromStrings.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromStrings.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromStrings.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.primitive.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1000' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1001' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1002' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1003' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1004' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1005' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1006' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1007' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1008' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1009' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1010' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1011' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1012' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1013' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1014' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1015' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1016' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1017' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1018' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1019' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1020' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1021' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1022' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1023' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1024' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1025' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1026' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1027' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1028' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1029' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1030' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1031' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1032' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1033' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1034' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1035' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1036' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1037' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1038' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1039' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1040' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1041' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1042' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1043' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1044' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1045' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1046' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1047' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1048' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1049' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1050' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1051' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1052' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1053' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1054' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1055' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1056' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1057' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1058' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1059' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1060' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1061' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1062' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1063' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1064' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1065' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1066' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1067' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1068' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1069' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1070' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1071' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1072' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1073' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1074' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1075' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1076' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1077' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1078' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1079' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1080' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1081' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1082' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1083' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1084' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1085' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1086' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1087' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1088' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1089' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1090' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1091' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1092' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1093' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1094' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1095' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1096' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1097' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1098' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1099' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1426' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1427' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1428' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1429' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1430' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1431' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1432' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1433' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1434' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1435' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1436' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1437' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1438' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1439' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1440' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1441' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1442' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1443' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1444' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1445' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1446' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1447' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1448' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1449' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1450' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1451' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1452' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1453' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1454' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1455' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1456' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1457' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1458' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1459' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1460' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1461' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1462' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1463' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1464' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1465' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1466' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1467' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1468' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1469' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1470' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1471' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1472' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1473' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1474' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1475' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1476' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1477' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1478' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1479' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1480' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1481' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1482' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1483' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1484' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1485' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1486' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1487' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1488' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1489' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1490' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1491' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1492' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1493' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1494' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1495' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1496' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1497' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1498' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1499' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1500' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1501' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1502' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1503' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1504' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1505' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1506' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1507' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1508' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1509' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1510' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1511' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1512' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1513' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1514' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1515' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1516' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1517' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1518' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1519' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1520' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1521' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1522' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1523' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1524' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1525' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1526' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1527' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1528' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1529' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1530' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1531' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1532' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1533' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1534' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1535' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1536' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1537' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1538' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1539' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1540' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1541' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1542' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1543' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1544' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1545' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1546' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1547' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1548' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1549' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1550' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1551' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1552' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1553' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1554' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1555' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1556' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1557' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1558' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1559' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1560' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1561' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1562' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1563' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1564' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1565' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1566' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1567' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1568' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1569' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1570' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1571' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1572' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1573' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1574' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1575' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1576' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1577' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1578' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1579' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1580' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1581' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1582' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1583' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1584' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1585' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1586' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1587' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1588' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1589' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1590' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1591' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1592' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1593' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1594' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1595' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1596' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1597' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1598' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1599' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1600' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1601' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1602' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1603' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1604' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1605' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1606' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1607' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1608' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1609' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1610' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1611' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1612' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1613' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1614' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1615' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1616' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1617' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1618' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1619' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1620' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1621' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1622' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1623' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1624' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1625' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1626' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1627' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1628' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1629' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1630' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1631' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1632' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1633' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1634' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1635' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1636' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1637' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1638' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1639' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1640' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1641' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1642' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1643' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1644' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1645' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1646' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1647' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1648' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1649' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1650' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1651' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1652' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1653' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1654' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1655' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1656' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1657' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1658' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1659' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1660' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1661' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1662' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1663' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1664' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1665' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1666' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1667' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1668' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1669' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1670' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1671' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1672' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1673' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1674' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1675' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1676' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1677' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1678' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1679' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1680' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1681' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1682' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1683' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1684' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1685' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1686' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1687' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1688' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1689' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1690' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1691' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1692' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1693' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1694' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1695' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1696' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1697' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1698' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1699' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1700' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1701' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1702' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1703' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1704' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1705' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1706' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1707' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1708' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1709' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1710' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1711' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1712' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1713' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1714' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1715' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1716' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1717' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1718' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1719' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1720' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1721' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1722' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1723' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1724' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1725' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1726' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1727' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1728' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1729' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1730' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1731' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1732' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1733' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1734' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1735' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1736' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1737' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1738' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1739' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1740' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1741' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1742' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1743' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1744' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1745' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1746' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1747' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1748' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1749' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1750' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1751' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1752' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1753' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1754' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1755' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1756' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1757' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1758' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1759' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1760' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1761' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1762' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1763' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1764' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1765' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1766' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1767' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1768' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1769' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1770' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1771' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1772' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1773' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1774' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1775' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1776' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1777' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1778' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1779' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1780' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1781' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1782' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1783' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1784' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1785' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1786' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1787' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1788' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1789' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1790' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1791' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1792' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1793' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1794' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1795' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1796' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1797' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1798' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1799' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_18' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1800' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1801' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1802' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1803' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1804' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1805' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1806' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1807' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1808' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1809' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1810' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1811' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1812' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1813' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1814' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1815' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1816' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1817' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1818' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1819' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1820' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1821' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1822' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1823' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1824' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1825' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1826' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1827' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1828' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1829' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1830' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1831' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1832' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1833' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1834' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1835' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1836' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1837' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1838' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1839' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1840' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1841' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1842' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1843' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1844' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1845' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1846' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1847' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1848' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1849' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1850' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1851' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1852' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1853' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1854' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1855' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1856' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1857' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1858' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1859' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1860' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1861' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1862' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1863' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1864' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1865' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1866' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1867' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1868' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1869' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1870' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1871' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1872' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1873' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1874' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1875' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1876' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1877' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1878' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1879' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1880' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1881' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1882' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1883' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1884' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1885' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1886' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1887' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1888' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1889' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1890' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1891' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1892' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1893' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1894' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1895' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1896' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1897' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1898' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1899' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1900' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1901' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1902' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1903' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1904' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1905' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1906' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1907' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1908' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1909' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1910' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1911' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1912' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1913' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1914' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1915' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1916' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1917' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1918' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1919' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1920' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1921' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1922' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1923' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1924' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1925' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1926' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1927' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1928' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1929' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1930' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1931' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1932' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1933' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1934' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1935' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1936' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1937' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1938' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1939' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1940' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1941' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1942' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1943' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1944' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1945' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1946' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1947' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1948' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1949' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1950' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1951' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1952' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1953' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1954' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1955' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1956' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1957' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1958' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1959' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1960' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1961' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1962' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1963' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1964' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1965' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1966' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1967' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1968' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1969' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1970' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1971' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1972' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1973' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1974' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1975' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1976' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1977' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1978' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1979' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1980' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1981' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1982' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1983' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1984' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1985' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1986' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1987' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1988' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1989' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1990' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1991' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1992' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1993' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1994' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1995' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1996' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1997' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1998' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1999' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_20' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2000' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2001' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2002' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2003' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2004' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2005' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2006' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2007' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2008' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2009' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2010' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2011' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2012' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2013' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2014' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2015' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2016' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2017' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2018' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2019' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2020' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2021' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2022' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2023' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2024' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2025' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2026' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2027' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2028' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2029' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2030' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2031' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2032' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2033' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2034' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2035' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2036' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2037' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2038' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2039' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2040' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2041' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2042' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2043' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2044' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2045' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2046' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2047' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2048' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2049' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2050' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2051' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2052' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2053' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2054' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2055' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2056' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2057' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2058' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2059' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2060' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2061' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2062' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2063' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2064' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2065' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2066' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2067' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2068' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2069' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2070' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2071' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2072' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2073' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2074' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2075' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2076' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2077' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2078' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2079' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2080' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2081' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2082' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2083' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2084' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2085' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2086' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2087' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2088' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2089' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2090' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2091' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2092' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2093' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2094' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2095' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2096' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2097' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2098' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2099' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_22' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_23' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_24' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2426' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2427' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2428' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2429' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2430' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2431' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2432' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2433' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2434' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2435' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2436' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2437' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2438' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2439' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2440' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2441' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2442' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2443' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2444' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2445' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2446' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2447' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2448' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2449' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2450' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2451' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2452' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2453' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2454' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2455' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2456' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2457' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2458' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2459' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2460' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2461' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2462' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2463' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2464' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2465' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2466' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2467' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2468' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2469' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2470' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2471' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2472' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2473' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2474' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2475' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2476' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2477' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2478' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2479' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2480' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2481' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2482' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2483' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2484' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2485' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2486' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2487' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2488' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2489' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2490' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2491' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2492' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2493' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2494' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2495' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2496' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2497' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2498' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2499' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_25' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2500' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2501' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2502' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2503' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2504' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2505' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2506' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2507' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2508' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2509' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2510' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2511' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2512' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2513' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2514' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2515' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2516' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2517' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2518' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2519' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2520' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2521' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2522' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2523' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2524' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2525' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2526' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2527' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2528' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2529' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2530' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2531' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2532' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2533' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2534' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2535' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2536' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2537' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2538' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2539' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2540' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2541' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2542' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2543' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2544' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2545' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2546' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2547' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2548' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2549' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2550' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2551' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2552' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2553' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2554' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2555' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2556' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2557' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2558' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2559' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2560' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2561' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2562' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2563' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2564' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2565' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2566' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2567' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2568' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2569' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2570' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2571' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2572' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2573' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2574' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2575' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2576' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2577' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2578' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2579' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2580' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2581' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2582' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2583' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2584' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2585' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2586' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2587' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2588' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2589' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2590' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2591' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2592' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2593' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2594' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2595' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2596' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2597' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2598' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2599' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_26' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2600' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2601' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2602' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2603' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2604' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2605' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2606' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2607' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2608' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2609' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2610' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2611' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2612' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2613' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2614' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2615' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2616' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2617' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2618' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2619' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2620' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2621' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2622' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2623' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2624' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2625' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2626' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2627' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2628' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2629' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2630' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2631' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2632' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2633' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2634' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2635' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2636' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2637' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2638' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2639' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2640' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2641' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2642' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2643' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2644' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2645' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2646' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2647' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2648' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2649' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2650' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2651' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2652' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2653' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2654' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2655' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2656' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2657' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2658' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2659' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2660' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2661' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2662' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2663' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2664' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2665' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2666' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2667' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2668' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2669' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2670' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2671' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2672' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2673' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2674' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2675' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2676' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2677' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2678' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2679' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2680' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2681' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2682' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2683' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2684' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2685' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2686' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2687' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2688' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2689' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2690' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2691' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2692' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2693' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2694' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2695' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2696' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2697' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2698' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2699' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_27' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2700' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2701' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2702' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2703' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2704' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2705' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2706' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2707' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2708' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2709' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2710' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2711' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2712' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2713' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2714' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2715' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2716' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2717' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2718' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2719' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2720' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2721' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2722' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2723' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2724' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2725' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2726' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2727' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2728' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2729' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2730' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2731' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2732' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2733' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2734' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2735' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2736' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2737' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2738' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2739' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2740' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2741' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2742' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2743' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2744' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2745' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2746' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2747' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2748' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2749' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2750' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2751' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2752' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2753' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2754' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2755' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2756' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2757' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2758' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2759' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2760' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2761' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2762' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2763' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2764' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2765' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2766' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2767' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2768' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2769' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2770' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2771' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2772' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2773' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2774' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2775' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2776' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2777' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2778' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2779' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2780' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2781' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2782' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2783' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2784' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2785' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2786' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2787' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2788' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2789' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2790' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2791' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2792' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2793' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2794' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2795' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2796' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2797' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2798' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2799' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_28' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2800' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2801' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2802' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2803' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2804' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2805' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2806' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2807' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2808' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2809' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2810' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2811' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2812' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2813' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2814' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2815' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2816' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2817' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2818' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2819' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2820' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2821' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2822' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2823' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2824' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2825' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2826' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2827' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2828' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2829' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2830' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2831' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2832' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2833' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2834' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2835' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2836' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2837' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2838' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2839' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2840' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2841' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2842' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2843' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2844' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2845' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2846' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2847' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2848' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2849' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2850' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2851' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2852' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2853' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2854' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2855' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2856' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2857' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2858' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2859' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2860' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2861' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2862' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2863' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2864' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2865' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2866' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2867' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2868' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2869' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2870' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2871' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2872' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2873' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2874' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2875' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2876' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2877' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2878' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2879' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2880' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2881' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2882' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2883' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2884' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2885' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2886' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2887' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2888' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2889' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2890' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2891' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2892' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2893' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2894' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2895' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2896' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2897' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2898' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2899' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_29' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2900' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2901' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2902' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2903' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2904' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2905' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2906' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2907' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2908' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2909' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2910' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2911' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2912' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2913' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2914' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2915' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2916' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2917' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2918' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2919' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2920' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2921' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2922' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2923' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2924' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2925' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2926' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2927' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2928' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2929' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2930' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2931' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2932' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2933' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2934' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2935' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2936' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2937' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2938' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2939' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2940' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2941' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2942' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2943' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2944' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2945' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2946' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2947' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2948' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2949' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2950' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2951' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2952' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2953' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2954' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2955' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2956' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2957' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2958' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2959' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2960' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2961' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2962' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2963' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2964' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2965' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2966' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2967' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2968' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2969' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2970' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2971' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2972' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2973' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2974' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2975' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2976' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2977' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2978' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2979' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2980' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2981' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2982' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2983' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2984' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2985' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2986' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2987' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2988' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2989' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2990' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2991' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2992' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2993' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2994' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2995' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2996' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2997' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2998' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2999' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_30' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3000' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3001' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3002' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3003' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3004' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3005' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3006' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3007' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3008' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3009' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3010' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3011' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3012' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3013' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3014' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3015' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3016' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3017' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3018' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3019' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3020' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3021' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3022' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3023' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3024' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3025' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3026' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3027' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3028' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3029' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3030' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3031' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3032' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3033' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3034' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3035' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3036' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3037' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3038' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3039' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3040' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3041' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3042' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3043' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3044' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3045' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3046' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3047' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3048' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3049' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3050' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3051' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3052' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3053' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3054' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3055' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3056' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3057' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3058' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3059' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3060' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3061' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3062' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3063' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3064' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3065' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3066' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3067' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3068' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3069' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3070' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3071' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3072' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3073' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3074' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3075' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3076' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3077' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3078' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3079' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3080' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3081' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3082' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3083' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3084' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3085' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3086' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3087' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3088' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3089' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3090' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3091' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3092' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3093' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3094' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3095' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3096' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3097' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3098' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3099' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_31' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_33' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_34' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_35' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_36' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_37' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_38' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_39' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_40' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_41' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_42' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_426' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_427' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_428' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_429' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_43' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_430' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_431' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_432' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_433' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_434' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_435' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_436' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_437' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_438' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_439' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_44' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_440' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_441' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_442' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_443' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_444' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_445' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_446' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_447' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_448' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_449' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_45' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_450' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_451' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_452' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_453' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_454' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_455' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_456' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_457' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_458' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_459' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_46' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_460' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_461' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_462' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_463' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_464' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_465' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_466' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_467' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_468' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_469' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_47' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_470' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_471' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_472' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_473' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_474' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_475' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_476' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_477' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_478' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_479' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_48' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_480' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_481' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_482' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_483' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_484' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_485' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_486' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_487' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_488' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_489' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_49' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_490' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_491' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_492' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_493' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_494' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_495' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_496' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_497' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_498' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_499' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_50' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_500' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_501' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_502' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_503' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_504' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_505' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_506' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_507' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_508' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_509' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_51' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_510' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_511' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_512' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_513' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_514' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_515' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_516' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_517' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_518' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_519' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_52' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_520' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_521' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_522' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_523' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_524' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_525' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_526' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_527' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_528' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_529' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_53' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_530' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_531' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_532' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_533' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_534' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_535' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_536' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_537' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_538' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_539' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_54' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_540' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_541' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_542' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_543' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_544' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_545' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_546' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_547' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_548' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_549' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_55' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_550' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_551' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_552' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_553' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_554' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_555' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_556' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_557' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_558' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_559' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_56' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_560' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_561' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_562' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_563' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_564' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_565' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_566' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_567' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_568' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_569' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_57' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_570' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_571' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_572' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_573' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_574' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_575' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_576' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_577' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_578' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_579' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_58' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_580' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_581' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_582' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_583' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_584' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_585' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_586' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_587' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_588' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_589' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_59' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_590' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_591' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_592' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_593' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_594' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_595' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_596' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_597' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_598' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_599' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_60' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_600' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_601' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_602' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_603' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_604' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_605' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_606' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_607' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_608' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_609' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_61' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_610' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_611' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_612' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_613' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_614' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_615' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_616' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_617' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_618' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_619' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_62' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_620' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_621' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_622' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_623' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_624' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_625' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_626' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_627' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_628' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_629' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_63' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_630' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_631' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_632' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_633' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_634' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_635' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_636' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_637' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_638' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_639' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_640' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_641' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_642' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_643' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_644' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_645' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_646' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_647' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_648' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_649' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_65' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_650' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_651' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_652' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_653' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_654' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_655' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_656' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_657' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_658' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_659' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_66' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_660' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_661' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_662' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_663' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_664' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_665' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_666' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_667' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_668' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_669' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_67' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_670' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_671' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_672' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_673' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_674' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_675' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_676' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_677' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_678' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_679' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_68' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_680' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_681' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_682' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_683' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_684' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_685' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_686' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_687' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_688' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_689' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_69' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_690' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_691' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_692' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_693' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_694' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_695' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_696' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_697' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_698' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_699' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_70' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_700' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_701' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_702' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_703' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_704' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_705' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_706' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_707' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_708' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_709' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_71' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_710' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_711' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_712' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_713' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_714' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_715' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_716' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_717' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_718' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_719' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_72' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_720' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_721' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_722' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_723' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_724' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_725' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_726' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_727' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_728' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_729' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_73' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_730' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_731' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_732' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_733' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_734' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_735' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_736' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_737' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_738' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_739' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_74' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_740' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_741' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_742' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_743' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_744' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_745' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_746' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_747' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_748' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_749' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_75' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_750' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_751' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_752' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_753' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_754' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_755' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_756' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_757' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_758' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_759' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_76' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_760' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_761' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_762' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_763' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_764' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_765' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_766' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_767' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_768' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_769' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_77' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_770' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_771' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_772' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_773' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_774' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_775' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_776' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_777' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_778' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_779' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_78' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_780' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_781' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_782' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_783' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_784' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_785' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_786' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_787' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_788' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_789' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_79' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_790' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_791' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_792' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_793' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_794' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_795' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_796' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_797' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_798' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_799' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_80' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_800' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_801' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_802' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_803' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_804' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_805' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_806' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_807' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_808' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_809' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_81' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_810' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_811' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_812' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_813' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_814' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_815' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_816' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_817' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_818' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_819' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_82' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_820' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_821' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_822' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_823' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_824' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_825' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_826' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_827' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_828' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_829' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_83' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_830' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_831' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_832' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_833' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_834' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_835' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_836' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_837' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_838' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_839' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_84' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_840' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_841' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_842' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_843' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_844' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_845' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_846' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_847' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_848' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_849' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_85' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_850' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_851' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_852' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_853' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_854' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_855' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_856' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_857' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_858' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_859' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_86' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_860' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_861' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_862' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_863' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_864' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_865' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_866' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_867' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_868' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_869' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_87' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_870' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_871' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_872' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_873' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_874' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_875' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_876' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_877' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_878' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_879' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_88' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_880' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_881' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_882' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_883' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_884' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_885' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_886' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_887' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_888' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_889' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_89' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_890' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_891' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_892' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_893' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_894' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_895' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_896' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_897' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_898' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_899' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_90' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_900' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_901' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_902' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_903' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_904' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_905' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_906' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_907' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_908' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_909' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_91' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_910' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_911' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_912' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_913' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_914' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_915' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_916' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_917' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_918' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_919' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_92' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_920' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_921' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_922' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_923' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_924' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_925' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_926' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_927' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_928' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_929' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_93' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_930' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_931' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_932' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_933' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_934' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_935' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_936' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_937' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_938' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_939' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_94' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_940' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_941' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_942' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_943' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_944' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_945' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_946' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_947' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_948' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_949' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_95' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_950' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_951' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_952' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_953' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_954' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_955' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_956' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_957' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_958' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_959' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_96' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_960' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_961' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_962' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_963' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_964' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_965' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_966' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_967' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_968' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_969' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_97' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_970' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_971' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_972' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_973' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_974' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_975' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_976' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_977' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_978' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_979' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_98' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_980' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_981' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_982' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_983' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_984' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_985' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_986' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_987' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_988' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_989' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_99' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_990' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_991' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_992' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_993' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_994' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_995' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_996' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_997' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_998' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_999' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.adtFields.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_12.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_13.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_12.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat_outer' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.boxedOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.boxedOne.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.boxedOne' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bp_entries._simp_1_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.simplePat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bp_entries.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.entriesOf._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bp_entries._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.bp_entries' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.directPat_cons._simp_1_4' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.identBoxed_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identLocal_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf_spec' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_cons' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_len.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_len._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_len' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_loads._simp_1_27' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_loads._simp_1_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_loads.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none._simp_1_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none._simp_1_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rlookup_append' depends on axioms: [propext]\n'LexLeanPreservation.Rust.same_boxed_boxed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_boxed_none' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_local_none._simp_1_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_local_none._simp_1_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_local_none.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.same_local_local' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_local_none._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_local_none' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_boxed_local' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rlookup_local_boxed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rlookup_local_single' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_loads._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.directPat_loads' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_boxed_some._simp_1_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_some._simp_1_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_some.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_some._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.entries_boxed_some' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.envRel_locals' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fields_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindPatterns_single' depends on axioms: [propext]\n'LexLeanPreservation.Rust.outer_bind' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.paramCtx_length.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_length._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_length' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.bindOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOne.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.covered.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.covered_mem._simp_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.wt_uninh._simp_10' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.covered_mem' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.ctorOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.destruct_canon' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq_refl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.destruct_excl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.directPat.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_lookup.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_none_of._simp_1_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_none_of.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sameIdent_iff' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_none_of._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_none_of' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.identsDistinct.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.entries_lookup._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_lookup' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.eval_field.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.eval_field._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_field.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_field' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats_none._simp_1_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats_none.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats_none._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats_none' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats_some._simp_1_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats_some.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats_some._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats_some' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_partRead' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.tyBeq_unit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.field_out' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.findArm_some.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.findArm_some._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.findArm_some' depends on axioms: [propext]\n'LexLeanPreservation.Rust.findDispatch_some.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.findDispatch_some._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.findDispatch_some' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_ext' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identBoxed.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identBoxed.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.isWild._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.okBlock.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.otherArms.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.otherArms_mem._simp_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.otherArms_mem' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.outer_miss' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.outer_view' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_ext.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_ext._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_ext' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_fresh.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_fresh._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_fresh' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocal.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_matchOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_matchOn_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_uncons.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_uncons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_scrut' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rca_hit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rca_miss' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_det' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_rebuild.match_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_eq_of_same' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg_rc' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_rebuild._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_rebuild' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.readOf_rc' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.realizesM_value' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArg_simple' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_def' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs_simple.match_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs_simple._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs_simple' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_14.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuild_rca._simp_1_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuild_rca.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_value._simp_1_21' depends on axioms: [propext]\n'LexLeanPreservation.Rust.single_rebuild' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_rca._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_rca' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuildsArm.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_nil' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_fieldGen._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_fieldGen.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_fieldGen.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.wtl_get.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_get._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_get' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_fieldGen' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_fieldHeld' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_fieldRead' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_mCons._simp_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_mCons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_mNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchArms._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.tyBeq_refl.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq_refl._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.tysBeq_refl.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tysBeq_refl._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_refl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.tysBeq_refl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.uninh_of_inert.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.uninh_of_inert._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh_of_inert' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_uninh.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_uninh._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtl_uninh.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_uninh._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_uninh' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.taken_arm' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchArms' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchPair._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchPair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchRebuilt._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchRebuilt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchRebuilt.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchRebuilt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.simplePat.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.validU.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_uninh' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.findArm.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findArm.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findArm.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_5' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_6' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_7' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_8' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.fl_of' does not depend on any axioms\n'LexLeanPreservation.Rust.fnFallible.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of._simp_1_14' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.funSem_of.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_12' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.isTemp.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isTemp.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.item_ne' depends on axioms: [propext]\n'LexLeanPreservation.Rust.kind_ne' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sound._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sound._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.simulate' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Representable._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Representable.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Representable._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.RepresentableL._f' does not depend on any axioms\n'LexLeanPreservation.Rust.Representable' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Representable._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.Representable._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.compose' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rel_ne_stuck' depends on axioms: [propext]\n'LexLeanPreservation.Rust.repL_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.repL_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.runItem_abort_infallible' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtAll_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wtAll_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_map._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_map' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_adt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_bool' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_bytes' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encExcept.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_encExcept' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_list' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encList' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encOption.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_encOption' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encOrdering' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encPair' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encUnit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_errorV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i32' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i64' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_int' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_listEnc' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_nat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_noneV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_okV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_optEnc.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_someV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_optEnc' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_ordering' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_pairV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_string' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u32' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u64' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_unitValue' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_nil' depends on axioms: [propext]\n'LexLeanPreservation.encExcept.eq_1' does not depend on any axioms\n'LexLeanPreservation.encExcept.eq_2' does not depend on any axioms\n'LexLeanPreservation.encOption.eq_1' does not depend on any axioms\n'LexLeanPreservation.encOption.eq_2' does not depend on any axioms\n'LexLeanPreservation.encPair.eq_1' does not depend on any axioms\n'LexLeanPreservation.encUnit.eq_1' does not depend on any axioms\n'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.Compose.RustStd.__wt_0' depends on axioms: [propext]\n'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.Compose.RustStd.__wt_0' depends on axioms: [propext]\n'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.Compose.RustStd.__wt_0' depends on axioms: [propext]\n'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.Compose.RustStd.__wt_1' depends on axioms: [propext]\n'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.Compose.RustStd.__wt_0' depends on axioms: [propext]\n'LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.Compose.RustStd.__wt_0' depends on axioms: [propext]\n-- statement vocabulary\ninductive LexLeanPreservation.Obs : Type\nnumber of parameters: 0\nconstructors:\nLexLeanPreservation.Obs.value : LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs\nLexLeanPreservation.Obs.overflow : LexLeanPreservation.Obs\nLexLeanPreservation.Obs.stuck : LexLeanPreservation.Obs\ndef LexLeanPreservation.Rel : Bool → LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs :=\nfun fits v => bif fits then LexLeanPreservation.Obs.value v else LexLeanPreservation.Obs.overflow\ndef LexLeanPreservation.Conv : LexLeanTarget.TargetSyntax.Program →\n List (Nat × LexLeanTarget.TargetSyntax.Value) → LexLeanTarget.TargetSyntax.Expr → LexLeanPreservation.Obs → Prop :=\nfun p env e o => ∃ n, LexLeanPreservation.obs (LexLeanTarget.TargetSemantics.eval n p env e) = some o\ndef LexLeanPreservation.FunRel : LexLeanTarget.TargetSyntax.Program →\n Nat → List LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs → Prop :=\nfun p f args o =>\n ∃ fn,\n LexLeanRuntime.index p.functions f = some fn ∧\n ∃ env,\n LexLeanTarget.TargetSemantics.bindAll fn.parameters args [] = some env ∧\n LexLeanPreservation.Conv p env fn.body o\ndef LexLeanPreservation.RunConv : LexLeanTarget.TargetSyntax.Program →\n Nat → List LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs → Prop :=\nfun p entry args o => ∃ n, LexLeanPreservation.obs (LexLeanTarget.TargetSemantics.run n p entry args) = some o\ndef LexLeanPreservation.Rust.WT : LexLeanTarget.TargetSyntax.Program →\n LexLeanPreservation.Rust.RCrate →\n LexLeanPreservation.Rust.Flags → LexLeanTarget.TargetSyntax.Value → LexLeanTarget.TargetSyntax.Ty → Prop :=\nfun p c A x x_1 =>\n x.brecOn (LexLeanPreservation.Rust.WT._f p c A)\n (fun t f => ⟨LexLeanPreservation.Rust.WTL._f p c A t f, LexLeanPreservation.Rust.WTAll._f p c A t f⟩) x_1\ndef LexLeanPreservation.Rust.WTL : LexLeanTarget.TargetSyntax.Program →\n LexLeanPreservation.Rust.RCrate →\n LexLeanPreservation.Rust.Flags →\n List LexLeanTarget.TargetSyntax.Value → List LexLeanTarget.TargetSyntax.Ty → Prop :=\nfun p c A x x_1 =>\n (LexLeanTarget.TargetSyntax.Value.brecOn_1 x (LexLeanPreservation.Rust.WT._f p c A) fun t f =>\n ⟨LexLeanPreservation.Rust.WTL._f p c A t f, LexLeanPreservation.Rust.WTAll._f p c A t f⟩).1\n x_1\ndef LexLeanPreservation.Rust.fnIdent : Nat → LexLeanPreservation.Rust.RIdent :=\nfun f => LexLeanTarget.RustSyntax.Ident.generated LexLeanTarget.RustSyntax.IdentKind.function f\ndef LexLeanPreservation.Rust.fnFallible : LexLeanPreservation.Rust.RCrate → Nat → Option Bool :=\nfun c f =>\n Option.map (fun fn => LexLeanTarget.RustSemantics.fallibleType fn.snd.fst)\n (LexLeanTarget.RustSemantics.findFunction c.items (LexLeanPreservation.Rust.fnIdent f))\ndef LexLeanPreservation.Rust.RCI : LexLeanPreservation.Rust.RCrate →\n LexLeanPreservation.Rust.RIdent → List LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Rust.ROut → Prop :=\nfun c f args o =>\n o ≠ LexLeanTarget.RustSemantics.ROutcome.exhausted ∧ ∃ n, LexLeanTarget.RustSemantics.invoke n c f args = o\ndef LexLeanPreservation.Rust.Realizes : Bool → LexLeanPreservation.Obs → LexLeanPreservation.Rust.ROut → Prop :=\nfun fl x x_1 =>\n match x, x_1 with\n | LexLeanPreservation.Obs.value v, LexLeanTarget.RustSemantics.ROutcome.value w => w = v\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.raise => fl = true\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.abort => True\n | x, x_2 => False\ndef LexLeanPreservation.Rust.RealizesFn : Bool → LexLeanPreservation.Obs → LexLeanPreservation.Rust.ROut → Prop :=\nfun fallible x x_1 =>\n match x, x_1 with\n | LexLeanPreservation.Obs.value v, LexLeanTarget.RustSemantics.ROutcome.value w => w = bif fallible then v.ok else v\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.value w =>\n fallible = true ∧ w = LexLeanTarget.TargetSyntax.Value.unit.error\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.abort => True\n | x, x_2 => False\ndef LexLeanPreservation.Rust.FunSem : LexLeanTarget.TargetSyntax.Program →\n LexLeanPreservation.Rust.RCrate → LexLeanPreservation.Rust.Flags → Nat → Nat → Prop :=\nfun p c A n f =>\n ∀ (fn : LexLeanTarget.TargetSyntax.Function) (args : List LexLeanTarget.TargetSyntax.Value)\n (env : List (Nat × LexLeanTarget.TargetSyntax.Value)) (F : Bool),\n LexLeanRuntime.index p.functions f = some fn →\n LexLeanPreservation.Rust.WTL p c A args fn.types →\n LexLeanTarget.TargetSemantics.bindAll fn.parameters args [] = some env →\n LexLeanPreservation.Rust.fnFallible c f = some F →\n ∀ (o : LexLeanPreservation.Obs),\n LexLeanPreservation.obs (LexLeanTarget.TargetSemantics.eval n p env fn.body) = some o →\n o ≠ LexLeanPreservation.Obs.stuck →\n (∀ (v : LexLeanTarget.TargetSyntax.Value),\n o = LexLeanPreservation.Obs.value v → LexLeanPreservation.Rust.WT p c A v fn.result) ∧\n ∃ ro,\n LexLeanPreservation.Rust.RealizesFn F o ro ∧\n LexLeanPreservation.Rust.RCI c (LexLeanPreservation.Rust.fnIdent f) args ro\ndef LexLeanPreservation.someObs : LexLeanPreservation.Obs → LexLeanPreservation.Obs :=\nfun x =>\n match x with\n | LexLeanPreservation.Obs.value v => LexLeanPreservation.Obs.value v.some\n | LexLeanPreservation.Obs.overflow => LexLeanPreservation.Obs.overflow\n | LexLeanPreservation.Obs.stuck => LexLeanPreservation.Obs.stuck\ndef LexLeanPreservation.Rust.Representable : LexLeanTarget.TargetSyntax.Value → Prop :=\nfun x => x.brecOn LexLeanPreservation.Rust.Representable._f LexLeanPreservation.Rust.RepresentableL._f\ndef LexLeanPreservation.Rust.RepresentableL : List LexLeanTarget.TargetSyntax.Value → Prop :=\nfun x =>\n LexLeanTarget.TargetSyntax.Value.brecOn_1 x LexLeanPreservation.Rust.Representable._f\n LexLeanPreservation.Rust.RepresentableL._f\nLexLeanPreservation.Rust.runItem_abort_infallible : ∀ (profile : LexLeanTarget.RustSyntax.Profile)\n (item : LexLeanTarget.RustSyntax.Item) (values : List LexLeanTarget.TargetSyntax.Value),\n LexLeanTarget.RustSemantics.runItem profile item values = LexLeanTarget.RustSemantics.ROutcome.abort →\n LexLeanTarget.RustSemantics.itemFallible item = false\n","stdout_sha256":"86d0558d668f26b2d92d282894a45adac3e578a2715d9bebb5b4213783bda6ce","tool":"lean"} +{"argv":["env","lean","-R","$STAGING/preserve-src","$STAGING/preserve-src/LexLeanPreserve/Audit.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Audit","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanPreservation.Obs' does not depend on any axioms\n'LexLeanPreservation.obs.match_1' does not depend on any axioms\n'LexLeanPreservation.obs' does not depend on any axioms\n'LexLeanPreservation.Conv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ConvA' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ObsL' does not depend on any axioms\n'LexLeanPreservation.obsL.match_1' does not depend on any axioms\n'LexLeanPreservation.obsL' does not depend on any axioms\n'LexLeanPreservation.ConvL' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.FunRel' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Obs._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.Obs._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.Obs.casesOn' does not depend on any axioms\n'LexLeanPreservation.Obs.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.Obs.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Obs.ctorElim' does not depend on any axioms\n'LexLeanPreservation.Obs.overflow.elim' does not depend on any axioms\n'LexLeanPreservation.Obs.stuck.elim' does not depend on any axioms\n'LexLeanPreservation.Obs.value.elim' does not depend on any axioms\n'LexLeanPreservation.Obs.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.Obs.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Obs.overflow.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Obs.recOn' does not depend on any axioms\n'LexLeanPreservation.Obs.stuck.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Obs.value.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Obs.value.inj' does not depend on any axioms\n'LexLeanPreservation.Obs.value.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Obs.value.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ObsL._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.ObsL._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.ObsL.casesOn' does not depend on any axioms\n'LexLeanPreservation.ObsL.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.ObsL.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.ObsL.ctorElim' does not depend on any axioms\n'LexLeanPreservation.ObsL.overflow.elim' does not depend on any axioms\n'LexLeanPreservation.ObsL.stuck.elim' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.elim' does not depend on any axioms\n'LexLeanPreservation.ObsL.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.ObsL.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ObsL.overflow.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ObsL.recOn' does not depend on any axioms\n'LexLeanPreservation.ObsL.stuck.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.inj' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.injEq' depends on axioms: [propext]\n'LexLeanPreservation.ObsL.values.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rel' does not depend on any axioms\n'LexLeanPreservation.Rel.eq_1' does not depend on any axioms\n'LexLeanPreservation.RelL' does not depend on any axioms\n'LexLeanPreservation.RelL.eq_1' does not depend on any axioms\n'LexLeanPreservation.RunConv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.addSteps_ne' does not depend on any axioms\n'LexLeanPreservation.chargeResult_ne' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.stable.match_1_16' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_18' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_20' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_22' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_24' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_26' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.eval.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.stable' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.evalArms_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs_ne' does not depend on any axioms\n'LexLeanPreservation.convA_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.eval_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs_addSteps' does not depend on any axioms\n'LexLeanPreservation.convA_hit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.convA_miss' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.evalList_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obsL_ne' does not depend on any axioms\n'LexLeanPreservation.convL_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.convL_cons._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.convL_cons._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.convL_cons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.convL_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_apply._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_apply._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_apply._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_apply' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_build' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_call._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_call._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_call' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_closure' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_cond._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_cond._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_field' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_first' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_let._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_let._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_let' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_match._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_match._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_match' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_matchV' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs_chargeResult' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_prim' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_second' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_var' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.funRel_intro' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs.eq_1' does not depend on any axioms\n'LexLeanPreservation.obs.eq_2' does not depend on any axioms\n'LexLeanPreservation.obs.eq_3' does not depend on any axioms\n'LexLeanPreservation.obs.eq_4' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_1' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_2' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_3' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_4' does not depend on any axioms\n'LexLeanPreservation.run_of_funRel' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.run.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ListEnc' does not depend on any axioms\n'LexLeanPreservation.ListEnc._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.ListEnc._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.ListEnc.casesOn' does not depend on any axioms\n'LexLeanPreservation.ListEnc.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.ListEnc.elem' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items' does not depend on any axioms\n'LexLeanPreservation.ListEnc.enc' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_cons' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_eq.match_1_1' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_nil' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_eq._f' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_eq' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.ListEnc.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.ListEnc.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk.inj' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk.injEq' depends on axioms: [propext]\n'LexLeanPreservation.ListEnc.mk.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ListEnc.recOn' does not depend on any axioms\n'LexLeanPreservation.OptEnc' does not depend on any axioms\n'LexLeanPreservation.OptEnc._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.OptEnc._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.OptEnc.casesOn' does not depend on any axioms\n'LexLeanPreservation.OptEnc.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.OptEnc.elem' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc_none' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc_some' does not depend on any axioms\n'LexLeanPreservation.encOption.match_1' does not depend on any axioms\n'LexLeanPreservation.encOption' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc_map' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.OptEnc.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.OptEnc.noConfusion' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk.noConfusion' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk.inj' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk.injEq' depends on axioms: [propext]\n'LexLeanPreservation.OptEnc.mk.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.OptEnc.recOn' does not depend on any axioms\n'LexLeanPreservation.construct_adt' does not depend on any axioms\n'LexLeanPreservation.construct_cons' does not depend on any axioms\n'LexLeanPreservation.construct_error' does not depend on any axioms\n'LexLeanPreservation.construct_false' does not depend on any axioms\n'LexLeanPreservation.construct_nil' does not depend on any axioms\n'LexLeanPreservation.construct_none' does not depend on any axioms\n'LexLeanPreservation.construct_ok' does not depend on any axioms\n'LexLeanPreservation.construct_pair' does not depend on any axioms\n'LexLeanPreservation.construct_some' does not depend on any axioms\n'LexLeanPreservation.construct_succ' does not depend on any axioms\n'LexLeanPreservation.construct_true' does not depend on any axioms\n'LexLeanPreservation.construct_unit' does not depend on any axioms\n'LexLeanPreservation.construct_zero' does not depend on any axioms\n'LexLeanPreservation.encExcept.match_1' does not depend on any axioms\n'LexLeanPreservation.encExcept' does not depend on any axioms\n'LexLeanPreservation.encList' does not depend on any axioms\n'LexLeanPreservation.encOrdering.match_1' does not depend on any axioms\n'LexLeanPreservation.encOrdering' does not depend on any axioms\n'LexLeanPreservation.encPair' does not depend on any axioms\n'LexLeanPreservation.encUnit' does not depend on any axioms\n'LexLeanPreservation.listEnc._proof_1' does not depend on any axioms\n'LexLeanPreservation.listEnc._proof_2' does not depend on any axioms\n'LexLeanPreservation.listEnc' does not depend on any axioms\n'LexLeanPreservation.optEnc._proof_1' does not depend on any axioms\n'LexLeanPreservation.optEnc._proof_2' does not depend on any axioms\n'LexLeanPreservation.optEnc' does not depend on any axioms\n'LexLeanPreservation.bytes_empty' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.bytes_one' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.bytes_zero' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.encOrdering.eq_1' does not depend on any axioms\n'LexLeanPreservation.encOrdering.eq_2' does not depend on any axioms\n'LexLeanPreservation.encOrdering.eq_3' does not depend on any axioms\n'LexLeanPreservation.fromOrdering_encOrdering' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.fromStrings_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.fromStrings_map._f' does not depend on any axioms\n'LexLeanPreservation.fromStrings_map' does not depend on any axioms\n'LexLeanPreservation.intFits' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.listIndex_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.listIndex_map._f' does not depend on any axioms\n'LexLeanPreservation.listIndex_map' does not depend on any axioms\n'LexLeanPreservation.listIndex_unique.match_1_1' does not depend on any axioms\n'LexLeanPreservation.listIndex_unique._f' does not depend on any axioms\n'LexLeanPreservation.listIndex_unique' does not depend on any axioms\n'LexLeanPreservation.obs_intResult' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.obs_natResult' does not depend on any axioms\n'LexLeanPreservation.prim_append_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_append_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_boolNot' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_compareBytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_bool' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_nat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_ordering' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_string' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_index_bytes.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_index_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_index_list.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_index_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intMul' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intNeg' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intQuot' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intRem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intSub' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_join.match_1_1' does not depend on any axioms\n'LexLeanPreservation.toStrings_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.toStrings_map.match_1_3' does not depend on any axioms\n'LexLeanPreservation.toStrings_map._f' does not depend on any axioms\n'LexLeanPreservation.toStrings_map' does not depend on any axioms\n'LexLeanPreservation.prim_join' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_length_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_length_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_length_string' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natAdd' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natEq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natLe' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natLt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natMul' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natQuot' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natRem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natSub' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_slice_bytes.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_slice_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_slice_list.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_slice_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_splitExact.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_splitExact' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_utf8Decode.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_utf8Decode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_utf8Encode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.compareBytes.eq_1' depends on axioms: [propext]\n'LexLeanRuntime.equal.eq_1' does not depend on any axioms\n'LexLeanRuntime.length.eq_1' does not depend on any axioms\n'LexLeanRuntime.slice.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromOrdering.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.checkedMultiplyWith.match_1' does not depend on any axioms\n'LexLeanPreservation.checkedMultiplyWith' does not depend on any axioms\n'LexLeanPreservation.checkedQuotientWith' does not depend on any axioms\n'LexLeanPreservation.decimalFits.match_1' does not depend on any axioms\n'LexLeanPreservation.decimalFits' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.divideStep' does not depend on any axioms\n'LexLeanPreservation.divide_unique.match_1_1' does not depend on any axioms\n'LexLeanPreservation.divide_unique._f' does not depend on any axioms\n'LexLeanPreservation.divide_unique' does not depend on any axioms\n'LexLeanPreservation.multiplyStep' does not depend on any axioms\n'LexLeanPreservation.multiply_unique.match_1_1' does not depend on any axioms\n'LexLeanPreservation.multiply_unique._f' does not depend on any axioms\n'LexLeanPreservation.multiply_unique' does not depend on any axioms\n'LexLeanPreservation.prim_bitAnd_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i64.match_1_2' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_int' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_int.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_int' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ordOf.match_1' does not depend on any axioms\n'LexLeanPreservation.ordOf' does not depend on any axioms\n'LexLeanPreservation.KeySpec' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.mk._flat_ctor' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.recOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.spec' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.compareCodes_eq.match_1_1' does not depend on any axioms\n'LexLeanPreservation.compareCodes_eq._f' depends on axioms: [propext]\n'LexLeanPreservation.compareCodes_eq' depends on axioms: [propext]\n'LexLeanPreservation.compareCodes_swap.match_1_1' does not depend on any axioms\n'LexLeanPreservation.compareCodes_swap._f' depends on axioms: [propext]\n'LexLeanPreservation.compareCodes_swap' depends on axioms: [propext]\n'LexLeanPreservation.lessThanE' does not depend on any axioms\n'LexLeanPreservation.prim_compare_key.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_compare_key' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_lessThan' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.orderOf_insert' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.orderBool.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.keySpec_bool' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI16.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI32.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI64.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI8.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderInt.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_int' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderNat.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_nat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.keySpec_pair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderString.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.keySpec_string' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU16.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU32.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU64.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU8.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanCollections.compareCodes._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_2' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_3' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_4' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_def' depends on axioms: [propext]\n'LexLeanCollections.insertEntry.eq_1' does not depend on any axioms\n'LexLeanCollections.insertEntry.eq_2' does not depend on any axioms\n'LexLeanCollections.insertEntry.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.compareValue.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_18' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_20' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_22' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_23' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_24' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_25' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_26' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_27' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_28' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_29' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_30' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_31' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_33' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_34' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_35' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_36' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_37' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_38' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_39' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_40' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_41' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_42' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_43' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_44' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_45' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_46' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_47' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_48' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_49' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_50' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_51' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_52' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_53' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_54' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_55' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_56' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_57' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_58' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_59' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_60' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_61' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_62' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_63' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_65' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_66' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_67' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_68' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_69' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_70' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_71' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_72' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_73' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_74' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_75' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_76' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_77' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_78' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_79' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_80' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_81' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_82' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_83' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_84' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_85' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_86' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_87' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_88' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_89' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_90' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_91' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_92' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_93' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_94' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_95' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_96' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_97' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_98' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_99' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Conv.bool_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Conv.fits_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.FunRel.fits_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ListEnc.enc.eq_1' does not depend on any axioms\n'LexLeanPreservation.ListEnc.enc_cons' does not depend on any axioms\n'LexLeanPreservation.ListEnc.enc_nil' does not depend on any axioms\n'LexLeanPreservation.LookOps' does not depend on any axioms\n'LexLeanPreservation.LookOps.casesOn' does not depend on any axioms\n'LexLeanPreservation.LookOps.l0' does not depend on any axioms\n'LexLeanPreservation.LookOps.leq' does not depend on any axioms\n'LexLeanPreservation.LookOps.lgt' does not depend on any axioms\n'LexLeanPreservation.LookOps.llt' does not depend on any axioms\n'LexLeanPreservation.LookOps.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.LookOps.recOn' does not depend on any axioms\n'LexLeanPreservation.SetOps' does not depend on any axioms\n'LexLeanPreservation.SetOps.c0' does not depend on any axioms\n'LexLeanPreservation.SetOps.casesOn' does not depend on any axioms\n'LexLeanPreservation.SetOps.ceq' does not depend on any axioms\n'LexLeanPreservation.SetOps.cgt' does not depend on any axioms\n'LexLeanPreservation.SetOps.clt' does not depend on any axioms\n'LexLeanPreservation.SetOps.i0' does not depend on any axioms\n'LexLeanPreservation.SetOps.ieq' does not depend on any axioms\n'LexLeanPreservation.SetOps.igt' does not depend on any axioms\n'LexLeanPreservation.SetOps.ilt' does not depend on any axioms\n'LexLeanPreservation.SetOps.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.SetOps.r0' does not depend on any axioms\n'LexLeanPreservation.SetOps.recOn' does not depend on any axioms\n'LexLeanPreservation.SetOps.req' does not depend on any axioms\n'LexLeanPreservation.SetOps.rgt' does not depend on any axioms\n'LexLeanPreservation.SetOps.rlt' does not depend on any axioms\n'LexLeanPreservation.TopoOps' does not depend on any axioms\n'LexLeanPreservation.TopoOps.casesOn' does not depend on any axioms\n'LexLeanPreservation.TopoOps.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.TopoOps.recOn' does not depend on any axioms\n'LexLeanPreservation.TopoOps.s_next' does not depend on any axioms\n'LexLeanPreservation.TopoOps.s_nil' does not depend on any axioms\n'LexLeanPreservation.TopoOps.s_stuck' does not depend on any axioms\n'LexLeanPreservation.TopoOps.z_cons' does not depend on any axioms\n'LexLeanPreservation.TopoOps.z_nil' does not depend on any axioms\n'LexLeanPreservation.Tpl.boolE' does not depend on any axioms\n'LexLeanPreservation.Tpl.byOrder' does not depend on any axioms\n'LexLeanPreservation.Tpl.cns' does not depend on any axioms\n'LexLeanPreservation.Tpl.fn' does not depend on any axioms\n'LexLeanPreservation.Tpl.lst' does not depend on any axioms\n'LexLeanPreservation.Tpl.v' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphInnerFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.pr' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphNodesFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.natOne' does not depend on any axioms\n'LexLeanPreservation.Tpl.nl' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphReachableFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphSuccessorsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphTopologicalFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.iterateFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.iterateUntilFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.listFoldFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapContainsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapFoldFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapInsertFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapLookupFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapProjectFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapRemoveFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reachFrontierFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reachIntoFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reachRoundsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reverseFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setContainsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setFilterFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setInsertFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setRemoveFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setUnionFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoFinished' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoReadyFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoRoundsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoUnreachedFn' does not depend on any axioms\n'LexLeanPreservation.blt_succ_fits._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.blt_succ_fits' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_cond_false' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_cond_true' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.enc_elem' does not depend on any axioms\n'LexLeanPreservation.enc_entry' does not depend on any axioms\n'LexLeanPreservation.foldFits.match_1' does not depend on any axioms\n'LexLeanPreservation.foldFits._f' does not depend on any axioms\n'LexLeanPreservation.foldFits' does not depend on any axioms\n'LexLeanPreservation.foldFits._sunfold' does not depend on any axioms\n'LexLeanPreservation.foldFits._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.foldFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.foldFits.eq_2' does not depend on any axioms\n'LexLeanPreservation.foldFits.eq_def' does not depend on any axioms\n'LexLeanPreservation.graphFits' does not depend on any axioms\n'LexLeanPreservation.graphFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.iterateFits.match_1' does not depend on any axioms\n'LexLeanPreservation.iterateFits._f' does not depend on any axioms\n'LexLeanPreservation.iterateFits' does not depend on any axioms\n'LexLeanPreservation.iterateFits._sunfold' does not depend on any axioms\n'LexLeanPreservation.iterateFits._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.iterateFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.iterateFits.eq_2' does not depend on any axioms\n'LexLeanPreservation.iterateFits.eq_def' does not depend on any axioms\n'LexLeanPreservation.length_eq' does not depend on any axioms\n'LexLeanPreservation.prim_compare_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.reachNext' does not depend on any axioms\n'LexLeanPreservation.tpl_graphInner.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setInsert.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setInsert._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setInsert' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphInner._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphInner' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphNodes.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_graphNodes._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphNodes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapLookup.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapLookup._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapLookup' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphSuccessors' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachFrontier.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_reachInto.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setContains.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setContains._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setContains' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachInto._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachInto' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachFrontier._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachFrontier' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachRounds.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setUnion.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setUnion._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setUnion' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachRounds._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachRounds' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphReachable' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reverse.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_reverse._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reverse' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setRemove.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setRemove._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setRemove' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoReady.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_topoUnreached.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_topoUnreached._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoUnreached' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoReady._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoReady' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoRounds.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_topoRounds._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoRounds' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphTopological' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterate.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_iterate._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterate' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterateUntil.match_1_1' does not depend on any axioms\n'LexLeanPreservation.untilFits.match_1' does not depend on any axioms\n'LexLeanPreservation.untilFits._f' does not depend on any axioms\n'LexLeanPreservation.untilFits' does not depend on any axioms\n'LexLeanPreservation.tpl_iterateUntil._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterateUntil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_listFold.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_listFold._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_listFold' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapContains' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapFold.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapFold._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapFold' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapInsert.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapInsert._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapInsert' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapKeys.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapKeys._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapKeys' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapRemove.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapRemove._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapRemove' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapValues.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapValues._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapValues' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setDifference.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setDifference._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setDifference' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setIntersection.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setIntersection._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setIntersection' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.untilFits._sunfold' does not depend on any axioms\n'LexLeanPreservation.untilFits._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.untilFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.untilFits.eq_2' does not depend on any axioms\n'LexLeanPreservation.untilFits.eq_def' does not depend on any axioms\n'LexLeanPreservation.validExcept.match_1' does not depend on any axioms\n'LexLeanPreservation.InvExcept' does not depend on any axioms\n'LexLeanPreservation.InvList' does not depend on any axioms\n'LexLeanPreservation.InvList.eq_1' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.match_1' does not depend on any axioms\n'LexLeanPreservation.StrictAsc._f' does not depend on any axioms\n'LexLeanPreservation.StrictAsc' does not depend on any axioms\n'LexLeanPreservation.InvMap' does not depend on any axioms\n'LexLeanPreservation.validOption.match_1' does not depend on any axioms\n'LexLeanPreservation.InvOption' does not depend on any axioms\n'LexLeanPreservation.InvOption.eq_1' does not depend on any axioms\n'LexLeanPreservation.InvOption.eq_2' does not depend on any axioms\n'LexLeanPreservation.InvPair' does not depend on any axioms\n'LexLeanPreservation.InvSet' does not depend on any axioms\n'LexLeanPreservation.StrictAsc._sunfold' does not depend on any axioms\n'LexLeanPreservation.StrictAsc._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_1' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_2' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_3' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_def' does not depend on any axioms\n'LexLeanPreservation.Tpl.validListFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validMapFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validOptionFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validPairFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validResultFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validSetFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validTrueFn' does not depend on any axioms\n'LexLeanPreservation.ascMap.match_1' does not depend on any axioms\n'LexLeanPreservation.lessB.match_1' does not depend on any axioms\n'LexLeanPreservation.lessB' does not depend on any axioms\n'LexLeanPreservation.ascMap._f' does not depend on any axioms\n'LexLeanPreservation.ascMap' does not depend on any axioms\n'LexLeanPreservation.ascMap._sunfold' does not depend on any axioms\n'LexLeanPreservation.ascMap._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_1' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_2' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_3' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_def' does not depend on any axioms\n'LexLeanPreservation.ascMap_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.lessB_iff' depends on axioms: [propext]\n'LexLeanPreservation.ascMap_iff._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.ascMap_iff' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.ascMap_inv' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.ascSet._f' does not depend on any axioms\n'LexLeanPreservation.ascSet' does not depend on any axioms\n'LexLeanPreservation.ascSet._sunfold' does not depend on any axioms\n'LexLeanPreservation.ascSet._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_1' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_2' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_3' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_def' does not depend on any axioms\n'LexLeanPreservation.ascSet_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.ascSet_iff._f' depends on axioms: [propext]\n'LexLeanPreservation.ascSet_iff' depends on axioms: [propext]\n'LexLeanPreservation.ascSet_inv' depends on axioms: [propext]\n'LexLeanPreservation.condAnd_iff' depends on axioms: [propext]\n'LexLeanPreservation.invList_eqs.match_1_1' does not depend on any axioms\n'LexLeanPreservation.invList_eqs._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.invList_eqs' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.lessB.eq_1' does not depend on any axioms\n'LexLeanPreservation.lessB_eq' depends on axioms: [propext]\n'LexLeanPreservation.lessB_gt' depends on axioms: [propext]\n'LexLeanPreservation.lessB_lt' depends on axioms: [propext]\n'LexLeanPreservation.someObs.match_1' does not depend on any axioms\n'LexLeanPreservation.someObs' does not depend on any axioms\n'LexLeanPreservation.tpl_validList.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validList.match_1' does not depend on any axioms\n'LexLeanPreservation.validList._f' does not depend on any axioms\n'LexLeanPreservation.validList' does not depend on any axioms\n'LexLeanPreservation.tpl_validList' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validMap.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_validMap._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validMap' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validOption.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validOption' does not depend on any axioms\n'LexLeanPreservation.tpl_validOption' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validPair.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validPair' does not depend on any axioms\n'LexLeanPreservation.tpl_validPair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validResult.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validExcept' does not depend on any axioms\n'LexLeanPreservation.tpl_validResult' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validSet.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_validSet._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validSet' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validTrue' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.trueIff' does not depend on any axioms\n'LexLeanPreservation.validExcept_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validExcept_inv' does not depend on any axioms\n'LexLeanPreservation.validList._sunfold' does not depend on any axioms\n'LexLeanPreservation.validList._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.validList.eq_1' does not depend on any axioms\n'LexLeanPreservation.validList.eq_2' does not depend on any axioms\n'LexLeanPreservation.validList.eq_def' does not depend on any axioms\n'LexLeanPreservation.validList_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validList_iff._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.validList_iff' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.validList_inv' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.validOption.eq_1' does not depend on any axioms\n'LexLeanPreservation.validOption.eq_2' does not depend on any axioms\n'LexLeanPreservation.validOption_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validOption_inv' depends on axioms: [propext]\n'LexLeanPreservation.validPair_inv' depends on axioms: [propext]\n'LexLeanPreservation.validTrue_inv' does not depend on any axioms\n'LexLeanPreservation.Rust.Ctx' does not depend on any axioms\n'LexLeanPreservation.Rust.Flags' does not depend on any axioms\n'LexLeanPreservation.Rust.RCrate' does not depend on any axioms\n'LexLeanPreservation.Rust.RIdent' does not depend on any axioms\n'LexLeanPreservation.Rust.WT._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.adtFields' depends on axioms: [propext]\n'LexLeanTarget.TargetSyntax.IntKind.ofNat' does not depend on any axioms\n'LexLeanTarget.TargetSyntax.IntKind.ofNat_ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Rust.instDecidableEqIntKind_lexLeanPreservation._proof_1' does not depend on any axioms\n'LexLeanPreservation.Rust.instDecidableEqIntKind_lexLeanPreservation._proof_2' does not depend on any axioms\n'LexLeanPreservation.Rust.instDecidableEqIntKind_lexLeanPreservation' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flagOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fnIdent' does not depend on any axioms\n'LexLeanPreservation.Rust.fnFallible' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.inert._f' does not depend on any axioms\n'LexLeanPreservation.Rust.inert' does not depend on any axioms\n'LexLeanPreservation.Rust.WT._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.WTAll._f' does not depend on any axioms\n'LexLeanPreservation.Rust.WTL.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctxLookup.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup._f' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup' does not depend on any axioms\n'LexLeanPreservation.Rust.local_' does not depend on any axioms\n'LexLeanPreservation.Rust.EnvRel' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ROut' does not depend on any axioms\n'LexLeanPreservation.Rust.Halt' does not depend on any axioms\n'LexLeanPreservation.Rust.REnv' does not depend on any axioms\n'LexLeanPreservation.Rust.RExpr' does not depend on any axioms\n'LexLeanPreservation.Rust.RC' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RLet' does not depend on any axioms\n'LexLeanPreservation.Rust.LetsOK' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.append' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.below' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.below.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.brecOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.recOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.append_left' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.append_right' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.below' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.below.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.brecOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.recOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RBlock' does not depend on any axioms\n'LexLeanPreservation.Rust.dispatched_ne' does not depend on any axioms\n'LexLeanPreservation.Rust.finished_ne' does not depend on any axioms\n'LexLeanPreservation.Rust.returned_ne' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_24' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_26' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_28' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_30' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_32' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_34' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_36' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.eval.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_22' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.invoke.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.stable' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.reval_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCB' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.block' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCA' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.revalBlock_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCB.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCI' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.invoke_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCI.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCL' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.revalList_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCL.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.WTAll' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.block_of_lets' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.block_of_raise' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.ctxLookup._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup_slot._simp_1_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotFree' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup_slot' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_cons_other' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sameIdent_self' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_cons_self' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sameIdent_local' depends on axioms: [propext]\n'LexLeanPreservation.Rust.envRel_bind' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.envRel_extra' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.envRel_ghost' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sameIdent_kind' depends on axioms: [propext]\n'LexLeanPreservation.Rust.envRel_temp' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.listIndex_eq.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.listIndex_eq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.listIndex_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.index_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.inert._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.inert._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_nil.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_raise_head.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcl_raise_head.match_1_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcl_raise_head' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_raise_tail' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.revalArms_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.slotFree.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sunfold' depends on axioms: [propext]\n'LexLeanTarget.RustSemantics.eval.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_18' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_20' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.invoke.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.invoke.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.kindNumber.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.lookup.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.lookup.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.lookup.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.lookup.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.lookup.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.lookup.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd' does not depend on any axioms\n'LexLeanPreservation.Rust.isTemp._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isTemp.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isTemp' depends on axioms: [propext]\n'LexLeanPreservation.Rust.letsBind.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds._f' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds._f' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind._f' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind' does not depend on any axioms\n'LexLeanPreservation.Rust.tempFresh' does not depend on any axioms\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.foldN.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.flatB._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep.match_7' does not depend on any axioms\n'LexLeanPreservation.Rust.foldStep' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldB' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats._f' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats' does not depend on any axioms\n'LexLeanPreservation.Rust.okBlock' does not depend on any axioms\n'LexLeanPreservation.Rust.partRead._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Kind.casesOn' does not depend on any axioms\n'LexLeanPreservation.Rust.elseCtx.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.elseCtx' does not depend on any axioms\n'LexLeanPreservation.Rust.elseLets.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.elseLets' does not depend on any axioms\n'LexLeanPreservation.Rust.heldOK.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.heldOK' does not depend on any axioms\n'LexLeanPreservation.Rust.negateR._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.negateR._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.negateR.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.negateR' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_5' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_7' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_9' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identBoxed' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal' does not depend on any axioms\n'LexLeanPreservation.Rust.isWild._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.unboxOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotOK.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocal' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armShape.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.armShape' does not depend on any axioms\n'LexLeanPreservation.Rust.otherArms.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.otherArms' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.noClosure.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.noClosure._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh' depends on axioms: [propext]\n'LexLeanPreservation.Rust.covered' depends on axioms: [propext]\n'LexLeanPreservation.Rust.scrut' does not depend on any axioms\n'LexLeanPreservation.Rust.validU.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.validU' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotOK' does not depend on any axioms\n'LexLeanPreservation.Rust.ctorOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identsDistinct.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct._f' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct' does not depend on any axioms\n'LexLeanPreservation.Rust.litOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArg._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.match_6' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArg.match_8' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArg' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArgs._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildTail.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildsArm.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildsArm' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.itemOK.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemOK' does not depend on any axioms\n'LexLeanPreservation.Rust.itemTyped.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemTyped.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf' does not depend on any axioms\n'LexLeanPreservation.Rust.itemTyped' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_9' does not depend on any axioms\n'LexLeanPreservation.Rust.isFixed._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped' depends on axioms: [propext]\n'LexLeanPreservation.Rust.primTyped' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.litValues._f' does not depend on any axioms\n'LexLeanPreservation.Rust.litValue' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.typedLitAll._f' does not depend on any axioms\n'LexLeanPreservation.Rust.typedLits.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Corr' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.below' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.below.casesOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.brecOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.casesOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.recOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.FunOK' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.CrateOK' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Fresh' does not depend on any axioms\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn' depends on axioms: [propext]\n'LexLeanPreservation.Rust.FunSem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Kind._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.casesOn' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ctorElim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.b.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.e.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.k.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.l.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.m.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.ops.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.recOn' does not depend on any axioms\n'LexLeanPreservation.Rust.KPre.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.KPre' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Kind.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.ctorElim' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Kind.nat.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.plain.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.plain.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.recOn' does not depend on any axioms\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesM.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.RealizesM' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Sem.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.viewVal._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Sem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.foldN._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identsDistinct._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_10' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_11' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_12' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_13' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_14' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_6' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_7' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_8' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.litValues' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue._sunfold' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.litValue._unsafe_rec' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues._sunfold' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.paramCtx._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patsBinds' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.patLocals._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patsBinds._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArgs._sunfold' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs._unsafe_rec' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.typedLitAll' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.typedLits._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_of_inert.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_of_inert.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_of_inert._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_of_inert' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_of_inert._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_of_inert' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Halt.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.LetsRaise.halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.block_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.boxed' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesM.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesM.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_bytes_inv' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_list_inv' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_string_inv' depends on axioms: [propext]\n'LexLeanPreservation.Rust.takes_of_typed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.allWidth_of.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_eq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_eq._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.tysBeq_eq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq_eq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.wt_fixed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.allWidth_of._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.allWidth_of' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.width_of_typed.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.width_of_typed.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.width_of_typed.match_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.width_of_typed' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.accepts_of_typed' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_apply' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtl_append.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_append._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_append' depends on axioms: [propext]\n'LexLeanPreservation.Rust.apply_result' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.bindPattern_shape.match_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.bindPattern_shape._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.bindPatterns_shape._simp_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindPatterns_shape.match_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.bindPatterns_shape._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.bindPattern_shape' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.bindPatterns_shape' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms_spec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_4' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_6' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_7' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.boolArms_eval' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.boxWith.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_100' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_102' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_96' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_98' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_function' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.call_result' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.const_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.convert_args.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.convert_args' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_append_fresh' depends on axioms: [propext]\n'LexLeanPreservation.Rust.envRel_fresh' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_not._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_cond.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.itemResult.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.eval_match' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fixedTyped.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_18' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_19' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_20' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_21' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_22' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_23' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_24' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_25' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_26' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_27' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_28' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_29' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_30' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_31' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_32' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_33' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_34' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_35' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_36' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_37' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_38' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_39' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_40' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_41' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_42' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_43' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_44' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_45' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_46' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_47' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_48' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_49' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_50' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_51' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_52' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_53' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_54' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_55' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_56' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_57' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_58' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_59' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_60' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_61' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN_sound.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.split_last.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.split_last._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.split_last' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep_spec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcb_nil_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_nomatch.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcb_cons_nomatch' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_stop' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_prefix' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_flat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_read_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_cons_same' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcb_fold_last' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldStep_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldN_sound._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldN_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldB_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldN.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_append' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_bind._simp_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_bind' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotFree_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_weaken' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_elseCtx' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_temp._simp_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_temp' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fromStrings_wt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fromStrings_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fromStrings_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.hasWidth_i16' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_i32' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_i64' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_i8' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u16' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u32' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u64' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u8' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.heldOK.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.heldOK.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.isFixed._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.isSeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.isTemp._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.itemOK.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemOperands_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.itemResult' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.kpre_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_pred._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_pred.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_pred' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.kpre_else' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.kpre_then' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_of_lets' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_b_rcb' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.k_branch' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_cond_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_isZero_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_lit_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate_halt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_negate_halt.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_nonZero_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_23' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_25' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_27' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_29' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_31' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_33' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_35' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_37' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_39' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_41' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_43' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_45' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_47' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_49' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_51' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_not_inv.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_not_inv.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_not_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.k_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_read.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_read' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.kpre_held' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.letsBind.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.letsOK_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.letsOK_shape' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.litValue._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_4' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_def' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_5' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.eq_def' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.lit_branch' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.lookup_through._simp_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.lookup_through' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms_spec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms_eval' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.obsL_evalList_zero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.obs_eval_zero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.oneOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf_halt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.param_env.match_1_1' depends on axioms: [propext]\n'LexLeanTarget.TargetSemantics.bindAll.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.param_env._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.param_env' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.patBinds.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_10' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_6' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_7' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_8' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.primTyped.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_apply_halt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_apply_halt.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_apply_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_call_halt.match_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_runtime' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_construct' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct_halt.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct_halt.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_isZero.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_isZero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_lit.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_lit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue._simp_10' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue._simp_9' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue.match_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_pair.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_pair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_litValues.match_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rcl_litValues._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_nonZero.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_nonZero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_pair_halt_left' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_pair_halt_right' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_widen.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_widen' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_widen_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_11' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_7' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_litValues' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_nil_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_single_halt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_single_halt.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_single_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_widen_one' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.readOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizesL_halt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizesL_haltL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizes_halt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizesM_overflow' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizes_oneOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.runItem_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.runItem_succ' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_applyGen.match_1_13' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen.match_1_15' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen.match_1_28' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_apply' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_applyF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_bOfE' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_build.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_build.match_1_99' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_build' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildConst' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildPair.match_1_101' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_97' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_99' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildSucc.match_1_129' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSucc.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSucc' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildSuccF.match_1_101' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSuccF.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSuccF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_callF.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callF.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_callOps.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callOps.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callOps' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_closure.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.wtl_length.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_length._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_length' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_closure' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_cond.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_cond.match_1_11' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_condId.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_condId' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_eOfB' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_eOfBFold' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_eOfBNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_fOfB' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_unit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_fUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kHeld' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kLit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kId' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kIf' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kNeg' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kSame' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_lCons.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons.match_1_17' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons.match_1_19' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_lNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_letBind.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letBind.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letBind' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_letWild.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letWild.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letWild' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBool._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchHolder.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchHolder.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchHolder' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBool' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBoolId._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBoolId.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchBoolId' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchNat._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchNat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchUnit._proof_1_386' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchUnit.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchUnit.match_1_387' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsCons._simp_1_13' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsCons.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons.match_1_14' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons.match_1_16' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsOfL' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_29' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_31' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_ops_box.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_ops_box.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_ops_box.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_ops_box' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_part._sparseCasesOn_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_part.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_part.match_1_14' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_part.match_1_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_part' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_part._sparseCasesOn_1_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_prim.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_prim.match_1_38' does not depend on any axioms\n'LexLeanPreservation.Rust.wtAll_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wtAll_iff._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.wtAll_iff' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_append' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_bitwise' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_checked' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_convert' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_decode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_encode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_fixedTyped.match_1_67' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_format' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_index' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_join' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_parse' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_shift' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.slice_eq' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_slice' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_split' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_unary' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtl_one.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_one' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_three.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_three' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_two.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_two' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_fixedTyped' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_prim' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_prim' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_primF.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF.match_1_7' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_primWiden.match_1_108' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_110' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_112' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_114' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_116' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.typedLitAll_wt.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit_wt.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits_wt.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_var' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_varUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_zero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.shapeOf.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_10' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_11' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_12' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_13' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_14' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_6' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_7' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_8' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.tempFresh.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_12.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_13.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_14.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.allWidth.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.allWidth.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.allWidth.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_100' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_101' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_102' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_103' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_104' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_105' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_106' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_107' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_108' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_109' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_110' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_111' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_112' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_113' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_114' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_115' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_116' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_117' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_118' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_119' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_120' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_121' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_122' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_123' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_124' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_125' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_126' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_127' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_128' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_129' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_130' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_131' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_132' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_133' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_134' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_135' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_136' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_137' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_138' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_139' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_140' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_141' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_142' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_143' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_144' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_145' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_146' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_147' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_148' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_149' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_150' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_151' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_152' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_153' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_154' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_155' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_156' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_157' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_158' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_159' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_160' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_161' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_162' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_163' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_164' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_165' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_166' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_167' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_168' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_169' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_170' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_171' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_172' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_173' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_174' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_175' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_176' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_177' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_178' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_179' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_180' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_181' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_182' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_183' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_184' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_185' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_186' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_51' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_52' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_53' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_54' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_55' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_56' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_57' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_58' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_59' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_60' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_61' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_62' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_63' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_64' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_65' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_66' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_67' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_68' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_69' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_70' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_71' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_72' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_73' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_74' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_75' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_76' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_77' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_78' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_79' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_80' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_81' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_82' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_83' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_84' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_85' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_86' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_87' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_88' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_89' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_90' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_91' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_92' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_93' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_94' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_95' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_96' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_97' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_98' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_99' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_100' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_101' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_102' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_103' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_104' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_105' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_106' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_107' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_108' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_109' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_110' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_111' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_112' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_113' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_114' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_115' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_116' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_117' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_118' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_119' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_120' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_121' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_122' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_123' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_124' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_125' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_126' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_127' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_128' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_129' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_130' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_131' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_132' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_133' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_134' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_135' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_136' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_137' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_138' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_139' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_140' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_141' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_142' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_143' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_144' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_145' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_146' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_147' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_148' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_149' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_150' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_151' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_152' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_153' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_154' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_155' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_156' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_157' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_158' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_159' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_160' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_161' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_162' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_163' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_164' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_165' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_166' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_167' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_168' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_169' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_170' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_171' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_172' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_173' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_174' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_175' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_176' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_177' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_178' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_179' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_180' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_181' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_182' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_183' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_184' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_51' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_52' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_53' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_54' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_55' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_56' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_57' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_58' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_59' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_60' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_61' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_62' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_63' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_64' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_65' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_66' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_67' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_68' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_69' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_70' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_71' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_72' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_73' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_74' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_75' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_76' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_77' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_78' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_79' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_80' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_81' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_82' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_83' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_84' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_85' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_86' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_87' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_88' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_89' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_90' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_91' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_92' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_93' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_94' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_95' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_96' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_97' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_98' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_99' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemAccepts.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemAccepts.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.literal.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_10' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_11' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_12' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_13' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_14' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_15' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_3' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_4' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_5' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_6' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_7' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_8' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_9' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.propagated.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.returned.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_10' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_11' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_12' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_13' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_14' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_15' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_16' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_17' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_18' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_19' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_20' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_21' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_22' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_23' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_24' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_25' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_26' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_27' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_28' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_29' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_30' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_31' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_32' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_33' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_34' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_35' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_36' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_37' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_38' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_39' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_40' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_41' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_42' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_43' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_44' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_45' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_46' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_47' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_48' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_49' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_5' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_50' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_51' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_52' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_53' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_54' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_55' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_56' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_57' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_58' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_59' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_6' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_60' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_61' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_62' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_63' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_64' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_65' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_66' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_67' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_68' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_69' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_7' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_70' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_71' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_72' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_73' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_74' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_75' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_76' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_77' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_78' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_79' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_8' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_80' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_81' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_82' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_83' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_9' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_10' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_100' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_101' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_102' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_103' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_104' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_105' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_106' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_107' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_108' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_109' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_11' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_110' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_111' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_112' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_113' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_114' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_115' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_116' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_117' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_118' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_119' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_12' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_120' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_121' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_122' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_123' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_124' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_125' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_126' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_127' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_128' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_129' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_13' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_130' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_131' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_132' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_133' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_134' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_135' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_136' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_137' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_138' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_139' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_14' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_140' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_141' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_142' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_143' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_144' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_145' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_146' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_147' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_148' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_149' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_15' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_150' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_151' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_152' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_153' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_154' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_155' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_156' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_157' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_158' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_159' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_16' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_160' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_161' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_162' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_163' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_164' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_165' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_166' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_167' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_168' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_169' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_17' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_170' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_171' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_172' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_173' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_174' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_175' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_176' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_177' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_178' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_179' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_18' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_180' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_181' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_182' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_183' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_184' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_185' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_186' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_187' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_188' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_189' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_19' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_190' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_191' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_192' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_193' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_194' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_195' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_196' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_197' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_198' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_199' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_20' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_200' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_201' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_202' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_203' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_204' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_205' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_206' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_207' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_208' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_209' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_21' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_210' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_211' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_212' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_213' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_214' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_215' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_216' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_217' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_218' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_219' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_22' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_220' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_221' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_222' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_223' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_224' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_225' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_226' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_227' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_228' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_229' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_23' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_230' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_231' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_232' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_233' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_234' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_235' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_236' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_237' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_238' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_239' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_24' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_240' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_241' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_242' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_243' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_244' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_245' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_246' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_247' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_248' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_249' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_25' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_250' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_251' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_252' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_253' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_254' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_255' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_256' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_257' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_258' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_259' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_26' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_260' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_261' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_262' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_263' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_264' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_265' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_266' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_267' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_268' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_269' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_27' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_270' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_271' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_272' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_273' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_274' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_275' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_276' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_277' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_278' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_279' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_28' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_280' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_281' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_282' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_283' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_284' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_285' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_286' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_287' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_288' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_289' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_29' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_290' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_291' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_292' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_293' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_294' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_295' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_296' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_297' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_298' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_299' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_30' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_300' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_301' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_302' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_303' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_304' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_305' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_306' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_307' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_308' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_309' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_31' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_310' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_311' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_312' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_313' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_314' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_315' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_316' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_317' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_318' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_319' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_32' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_320' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_321' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_322' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_323' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_324' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_325' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_326' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_327' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_328' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_329' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_33' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_330' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_331' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_332' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_333' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_334' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_335' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_336' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_337' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_338' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_339' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_34' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_340' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_341' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_342' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_343' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_344' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_345' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_346' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_347' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_348' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_349' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_35' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_350' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_351' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_352' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_353' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_354' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_355' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_356' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_357' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_358' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_359' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_36' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_360' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_361' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_362' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_363' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_364' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_365' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_366' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_367' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_368' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_369' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_37' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_370' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_38' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_39' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_40' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_41' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_42' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_43' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_44' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_45' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_46' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_47' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_48' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_49' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_5' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_50' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_51' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_52' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_53' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_54' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_55' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_56' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_57' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_58' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_59' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_6' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_60' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_61' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_62' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_63' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_64' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_65' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_66' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_67' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_68' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_69' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_7' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_70' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_71' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_72' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_73' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_74' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_75' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_76' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_77' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_78' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_79' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_8' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_80' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_81' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_82' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_83' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_84' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_85' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_86' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_87' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_88' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_89' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_9' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_90' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_91' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_92' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_93' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_94' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_95' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_96' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_97' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_98' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_99' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromStrings.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromStrings.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromStrings.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.primitive.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1000' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1001' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1002' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1003' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1004' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1005' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1006' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1007' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1008' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1009' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1010' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1011' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1012' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1013' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1014' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1015' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1016' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1017' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1018' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1019' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1020' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1021' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1022' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1023' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1024' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1025' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1026' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1027' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1028' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1029' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1030' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1031' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1032' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1033' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1034' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1035' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1036' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1037' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1038' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1039' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1040' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1041' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1042' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1043' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1044' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1045' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1046' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1047' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1048' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1049' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1050' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1051' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1052' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1053' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1054' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1055' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1056' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1057' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1058' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1059' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1060' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1061' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1062' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1063' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1064' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1065' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1066' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1067' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1068' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1069' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1070' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1071' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1072' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1073' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1074' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1075' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1076' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1077' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1078' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1079' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1080' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1081' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1082' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1083' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1084' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1085' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1086' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1087' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1088' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1089' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1090' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1091' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1092' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1093' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1094' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1095' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1096' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1097' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1098' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1099' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1426' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1427' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1428' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1429' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1430' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1431' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1432' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1433' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1434' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1435' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1436' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1437' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1438' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1439' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1440' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1441' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1442' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1443' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1444' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1445' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1446' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1447' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1448' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1449' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1450' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1451' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1452' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1453' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1454' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1455' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1456' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1457' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1458' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1459' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1460' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1461' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1462' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1463' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1464' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1465' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1466' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1467' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1468' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1469' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1470' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1471' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1472' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1473' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1474' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1475' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1476' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1477' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1478' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1479' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1480' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1481' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1482' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1483' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1484' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1485' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1486' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1487' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1488' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1489' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1490' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1491' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1492' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1493' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1494' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1495' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1496' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1497' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1498' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1499' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1500' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1501' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1502' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1503' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1504' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1505' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1506' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1507' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1508' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1509' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1510' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1511' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1512' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1513' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1514' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1515' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1516' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1517' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1518' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1519' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1520' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1521' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1522' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1523' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1524' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1525' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1526' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1527' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1528' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1529' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1530' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1531' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1532' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1533' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1534' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1535' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1536' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1537' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1538' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1539' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1540' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1541' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1542' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1543' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1544' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1545' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1546' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1547' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1548' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1549' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1550' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1551' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1552' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1553' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1554' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1555' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1556' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1557' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1558' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1559' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1560' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1561' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1562' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1563' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1564' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1565' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1566' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1567' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1568' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1569' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1570' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1571' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1572' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1573' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1574' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1575' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1576' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1577' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1578' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1579' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1580' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1581' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1582' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1583' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1584' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1585' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1586' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1587' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1588' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1589' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1590' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1591' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1592' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1593' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1594' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1595' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1596' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1597' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1598' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1599' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1600' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1601' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1602' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1603' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1604' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1605' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1606' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1607' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1608' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1609' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1610' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1611' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1612' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1613' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1614' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1615' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1616' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1617' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1618' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1619' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1620' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1621' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1622' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1623' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1624' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1625' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1626' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1627' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1628' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1629' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1630' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1631' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1632' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1633' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1634' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1635' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1636' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1637' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1638' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1639' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1640' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1641' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1642' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1643' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1644' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1645' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1646' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1647' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1648' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1649' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1650' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1651' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1652' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1653' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1654' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1655' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1656' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1657' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1658' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1659' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1660' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1661' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1662' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1663' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1664' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1665' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1666' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1667' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1668' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1669' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1670' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1671' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1672' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1673' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1674' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1675' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1676' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1677' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1678' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1679' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1680' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1681' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1682' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1683' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1684' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1685' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1686' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1687' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1688' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1689' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1690' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1691' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1692' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1693' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1694' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1695' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1696' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1697' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1698' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1699' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1700' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1701' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1702' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1703' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1704' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1705' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1706' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1707' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1708' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1709' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1710' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1711' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1712' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1713' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1714' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1715' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1716' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1717' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1718' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1719' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1720' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1721' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1722' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1723' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1724' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1725' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1726' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1727' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1728' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1729' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1730' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1731' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1732' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1733' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1734' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1735' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1736' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1737' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1738' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1739' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1740' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1741' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1742' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1743' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1744' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1745' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1746' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1747' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1748' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1749' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1750' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1751' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1752' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1753' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1754' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1755' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1756' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1757' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1758' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1759' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1760' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1761' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1762' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1763' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1764' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1765' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1766' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1767' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1768' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1769' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1770' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1771' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1772' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1773' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1774' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1775' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1776' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1777' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1778' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1779' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1780' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1781' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1782' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1783' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1784' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1785' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1786' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1787' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1788' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1789' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1790' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1791' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1792' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1793' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1794' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1795' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1796' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1797' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1798' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1799' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_18' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1800' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1801' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1802' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1803' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1804' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1805' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1806' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1807' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1808' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1809' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1810' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1811' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1812' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1813' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1814' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1815' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1816' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1817' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1818' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1819' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1820' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1821' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1822' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1823' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1824' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1825' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1826' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1827' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1828' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1829' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1830' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1831' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1832' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1833' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1834' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1835' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1836' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1837' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1838' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1839' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1840' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1841' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1842' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1843' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1844' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1845' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1846' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1847' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1848' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1849' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1850' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1851' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1852' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1853' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1854' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1855' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1856' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1857' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1858' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1859' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1860' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1861' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1862' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1863' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1864' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1865' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1866' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1867' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1868' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1869' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1870' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1871' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1872' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1873' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1874' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1875' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1876' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1877' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1878' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1879' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1880' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1881' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1882' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1883' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1884' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1885' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1886' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1887' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1888' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1889' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1890' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1891' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1892' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1893' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1894' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1895' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1896' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1897' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1898' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1899' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1900' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1901' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1902' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1903' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1904' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1905' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1906' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1907' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1908' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1909' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1910' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1911' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1912' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1913' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1914' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1915' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1916' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1917' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1918' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1919' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1920' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1921' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1922' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1923' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1924' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1925' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1926' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1927' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1928' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1929' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1930' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1931' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1932' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1933' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1934' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1935' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1936' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1937' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1938' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1939' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1940' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1941' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1942' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1943' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1944' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1945' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1946' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1947' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1948' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1949' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1950' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1951' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1952' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1953' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1954' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1955' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1956' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1957' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1958' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1959' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1960' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1961' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1962' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1963' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1964' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1965' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1966' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1967' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1968' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1969' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1970' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1971' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1972' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1973' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1974' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1975' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1976' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1977' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1978' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1979' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1980' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1981' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1982' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1983' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1984' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1985' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1986' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1987' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1988' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1989' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1990' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1991' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1992' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1993' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1994' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1995' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1996' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1997' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1998' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1999' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_20' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2000' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2001' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2002' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2003' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2004' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2005' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2006' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2007' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2008' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2009' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2010' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2011' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2012' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2013' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2014' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2015' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2016' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2017' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2018' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2019' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2020' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2021' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2022' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2023' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2024' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2025' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2026' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2027' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2028' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2029' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2030' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2031' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2032' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2033' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2034' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2035' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2036' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2037' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2038' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2039' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2040' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2041' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2042' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2043' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2044' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2045' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2046' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2047' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2048' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2049' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2050' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2051' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2052' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2053' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2054' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2055' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2056' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2057' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2058' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2059' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2060' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2061' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2062' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2063' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2064' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2065' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2066' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2067' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2068' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2069' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2070' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2071' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2072' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2073' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2074' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2075' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2076' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2077' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2078' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2079' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2080' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2081' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2082' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2083' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2084' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2085' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2086' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2087' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2088' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2089' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2090' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2091' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2092' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2093' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2094' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2095' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2096' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2097' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2098' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2099' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_22' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_23' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_24' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2426' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2427' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2428' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2429' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2430' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2431' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2432' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2433' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2434' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2435' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2436' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2437' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2438' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2439' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2440' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2441' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2442' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2443' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2444' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2445' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2446' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2447' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2448' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2449' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2450' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2451' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2452' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2453' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2454' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2455' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2456' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2457' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2458' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2459' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2460' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2461' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2462' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2463' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2464' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2465' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2466' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2467' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2468' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2469' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2470' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2471' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2472' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2473' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2474' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2475' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2476' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2477' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2478' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2479' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2480' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2481' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2482' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2483' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2484' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2485' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2486' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2487' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2488' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2489' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2490' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2491' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2492' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2493' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2494' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2495' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2496' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2497' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2498' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2499' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_25' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2500' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2501' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2502' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2503' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2504' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2505' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2506' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2507' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2508' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2509' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2510' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2511' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2512' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2513' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2514' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2515' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2516' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2517' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2518' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2519' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2520' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2521' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2522' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2523' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2524' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2525' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2526' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2527' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2528' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2529' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2530' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2531' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2532' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2533' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2534' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2535' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2536' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2537' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2538' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2539' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2540' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2541' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2542' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2543' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2544' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2545' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2546' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2547' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2548' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2549' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2550' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2551' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2552' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2553' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2554' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2555' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2556' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2557' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2558' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2559' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2560' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2561' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2562' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2563' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2564' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2565' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2566' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2567' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2568' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2569' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2570' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2571' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2572' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2573' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2574' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2575' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2576' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2577' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2578' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2579' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2580' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2581' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2582' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2583' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2584' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2585' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2586' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2587' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2588' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2589' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2590' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2591' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2592' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2593' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2594' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2595' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2596' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2597' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2598' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2599' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_26' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2600' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2601' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2602' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2603' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2604' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2605' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2606' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2607' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2608' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2609' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2610' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2611' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2612' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2613' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2614' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2615' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2616' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2617' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2618' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2619' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2620' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2621' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2622' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2623' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2624' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2625' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2626' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2627' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2628' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2629' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2630' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2631' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2632' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2633' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2634' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2635' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2636' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2637' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2638' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2639' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2640' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2641' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2642' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2643' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2644' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2645' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2646' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2647' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2648' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2649' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2650' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2651' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2652' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2653' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2654' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2655' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2656' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2657' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2658' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2659' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2660' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2661' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2662' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2663' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2664' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2665' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2666' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2667' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2668' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2669' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2670' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2671' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2672' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2673' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2674' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2675' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2676' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2677' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2678' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2679' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2680' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2681' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2682' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2683' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2684' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2685' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2686' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2687' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2688' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2689' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2690' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2691' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2692' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2693' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2694' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2695' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2696' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2697' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2698' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2699' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_27' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2700' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2701' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2702' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2703' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2704' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2705' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2706' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2707' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2708' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2709' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2710' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2711' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2712' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2713' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2714' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2715' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2716' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2717' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2718' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2719' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2720' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2721' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2722' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2723' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2724' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2725' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2726' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2727' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2728' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2729' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2730' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2731' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2732' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2733' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2734' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2735' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2736' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2737' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2738' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2739' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2740' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2741' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2742' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2743' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2744' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2745' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2746' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2747' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2748' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2749' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2750' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2751' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2752' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2753' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2754' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2755' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2756' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2757' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2758' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2759' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2760' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2761' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2762' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2763' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2764' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2765' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2766' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2767' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2768' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2769' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2770' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2771' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2772' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2773' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2774' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2775' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2776' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2777' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2778' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2779' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2780' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2781' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2782' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2783' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2784' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2785' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2786' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2787' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2788' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2789' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2790' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2791' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2792' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2793' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2794' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2795' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2796' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2797' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2798' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2799' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_28' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2800' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2801' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2802' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2803' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2804' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2805' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2806' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2807' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2808' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2809' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2810' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2811' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2812' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2813' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2814' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2815' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2816' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2817' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2818' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2819' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2820' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2821' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2822' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2823' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2824' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2825' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2826' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2827' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2828' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2829' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2830' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2831' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2832' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2833' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2834' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2835' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2836' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2837' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2838' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2839' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2840' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2841' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2842' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2843' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2844' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2845' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2846' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2847' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2848' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2849' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2850' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2851' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2852' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2853' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2854' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2855' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2856' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2857' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2858' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2859' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2860' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2861' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2862' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2863' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2864' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2865' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2866' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2867' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2868' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2869' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2870' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2871' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2872' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2873' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2874' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2875' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2876' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2877' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2878' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2879' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2880' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2881' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2882' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2883' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2884' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2885' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2886' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2887' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2888' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2889' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2890' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2891' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2892' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2893' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2894' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2895' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2896' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2897' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2898' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2899' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_29' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2900' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2901' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2902' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2903' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2904' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2905' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2906' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2907' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2908' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2909' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2910' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2911' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2912' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2913' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2914' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2915' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2916' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2917' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2918' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2919' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2920' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2921' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2922' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2923' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2924' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2925' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2926' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2927' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2928' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2929' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2930' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2931' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2932' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2933' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2934' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2935' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2936' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2937' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2938' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2939' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2940' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2941' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2942' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2943' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2944' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2945' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2946' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2947' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2948' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2949' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2950' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2951' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2952' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2953' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2954' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2955' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2956' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2957' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2958' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2959' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2960' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2961' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2962' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2963' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2964' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2965' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2966' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2967' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2968' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2969' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2970' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2971' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2972' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2973' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2974' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2975' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2976' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2977' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2978' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2979' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2980' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2981' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2982' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2983' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2984' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2985' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2986' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2987' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2988' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2989' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2990' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2991' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2992' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2993' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2994' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2995' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2996' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2997' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2998' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2999' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_30' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3000' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3001' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3002' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3003' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3004' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3005' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3006' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3007' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3008' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3009' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3010' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3011' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3012' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3013' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3014' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3015' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3016' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3017' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3018' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3019' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3020' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3021' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3022' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3023' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3024' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3025' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3026' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3027' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3028' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3029' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3030' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3031' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3032' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3033' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3034' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3035' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3036' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3037' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3038' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3039' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3040' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3041' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3042' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3043' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3044' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3045' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3046' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3047' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3048' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3049' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3050' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3051' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3052' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3053' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3054' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3055' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3056' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3057' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3058' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3059' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3060' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3061' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3062' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3063' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3064' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3065' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3066' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3067' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3068' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3069' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3070' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3071' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3072' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3073' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3074' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3075' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3076' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3077' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3078' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3079' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3080' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3081' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3082' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3083' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3084' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3085' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3086' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3087' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3088' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3089' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3090' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3091' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3092' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3093' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3094' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3095' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3096' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3097' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3098' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3099' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_31' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_33' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_34' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_35' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_36' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_37' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_38' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_39' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_40' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_41' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_42' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_426' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_427' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_428' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_429' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_43' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_430' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_431' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_432' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_433' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_434' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_435' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_436' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_437' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_438' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_439' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_44' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_440' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_441' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_442' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_443' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_444' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_445' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_446' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_447' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_448' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_449' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_45' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_450' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_451' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_452' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_453' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_454' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_455' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_456' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_457' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_458' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_459' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_46' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_460' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_461' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_462' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_463' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_464' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_465' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_466' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_467' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_468' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_469' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_47' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_470' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_471' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_472' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_473' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_474' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_475' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_476' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_477' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_478' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_479' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_48' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_480' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_481' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_482' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_483' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_484' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_485' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_486' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_487' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_488' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_489' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_49' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_490' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_491' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_492' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_493' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_494' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_495' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_496' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_497' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_498' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_499' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_50' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_500' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_501' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_502' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_503' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_504' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_505' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_506' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_507' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_508' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_509' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_51' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_510' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_511' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_512' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_513' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_514' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_515' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_516' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_517' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_518' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_519' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_52' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_520' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_521' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_522' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_523' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_524' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_525' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_526' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_527' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_528' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_529' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_53' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_530' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_531' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_532' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_533' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_534' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_535' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_536' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_537' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_538' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_539' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_54' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_540' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_541' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_542' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_543' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_544' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_545' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_546' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_547' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_548' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_549' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_55' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_550' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_551' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_552' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_553' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_554' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_555' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_556' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_557' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_558' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_559' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_56' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_560' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_561' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_562' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_563' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_564' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_565' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_566' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_567' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_568' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_569' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_57' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_570' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_571' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_572' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_573' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_574' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_575' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_576' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_577' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_578' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_579' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_58' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_580' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_581' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_582' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_583' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_584' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_585' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_586' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_587' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_588' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_589' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_59' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_590' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_591' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_592' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_593' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_594' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_595' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_596' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_597' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_598' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_599' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_60' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_600' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_601' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_602' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_603' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_604' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_605' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_606' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_607' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_608' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_609' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_61' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_610' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_611' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_612' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_613' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_614' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_615' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_616' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_617' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_618' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_619' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_62' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_620' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_621' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_622' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_623' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_624' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_625' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_626' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_627' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_628' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_629' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_63' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_630' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_631' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_632' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_633' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_634' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_635' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_636' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_637' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_638' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_639' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_640' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_641' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_642' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_643' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_644' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_645' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_646' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_647' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_648' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_649' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_65' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_650' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_651' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_652' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_653' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_654' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_655' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_656' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_657' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_658' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_659' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_66' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_660' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_661' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_662' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_663' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_664' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_665' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_666' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_667' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_668' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_669' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_67' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_670' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_671' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_672' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_673' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_674' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_675' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_676' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_677' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_678' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_679' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_68' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_680' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_681' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_682' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_683' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_684' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_685' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_686' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_687' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_688' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_689' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_69' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_690' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_691' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_692' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_693' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_694' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_695' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_696' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_697' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_698' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_699' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_70' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_700' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_701' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_702' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_703' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_704' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_705' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_706' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_707' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_708' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_709' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_71' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_710' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_711' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_712' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_713' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_714' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_715' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_716' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_717' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_718' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_719' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_72' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_720' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_721' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_722' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_723' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_724' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_725' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_726' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_727' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_728' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_729' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_73' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_730' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_731' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_732' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_733' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_734' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_735' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_736' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_737' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_738' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_739' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_74' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_740' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_741' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_742' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_743' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_744' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_745' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_746' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_747' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_748' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_749' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_75' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_750' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_751' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_752' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_753' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_754' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_755' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_756' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_757' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_758' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_759' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_76' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_760' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_761' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_762' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_763' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_764' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_765' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_766' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_767' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_768' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_769' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_77' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_770' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_771' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_772' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_773' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_774' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_775' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_776' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_777' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_778' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_779' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_78' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_780' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_781' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_782' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_783' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_784' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_785' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_786' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_787' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_788' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_789' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_79' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_790' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_791' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_792' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_793' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_794' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_795' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_796' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_797' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_798' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_799' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_80' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_800' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_801' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_802' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_803' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_804' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_805' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_806' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_807' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_808' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_809' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_81' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_810' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_811' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_812' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_813' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_814' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_815' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_816' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_817' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_818' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_819' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_82' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_820' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_821' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_822' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_823' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_824' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_825' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_826' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_827' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_828' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_829' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_83' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_830' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_831' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_832' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_833' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_834' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_835' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_836' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_837' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_838' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_839' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_84' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_840' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_841' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_842' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_843' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_844' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_845' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_846' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_847' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_848' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_849' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_85' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_850' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_851' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_852' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_853' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_854' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_855' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_856' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_857' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_858' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_859' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_86' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_860' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_861' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_862' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_863' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_864' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_865' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_866' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_867' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_868' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_869' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_87' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_870' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_871' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_872' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_873' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_874' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_875' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_876' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_877' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_878' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_879' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_88' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_880' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_881' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_882' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_883' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_884' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_885' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_886' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_887' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_888' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_889' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_89' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_890' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_891' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_892' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_893' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_894' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_895' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_896' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_897' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_898' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_899' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_90' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_900' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_901' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_902' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_903' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_904' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_905' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_906' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_907' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_908' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_909' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_91' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_910' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_911' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_912' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_913' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_914' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_915' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_916' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_917' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_918' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_919' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_92' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_920' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_921' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_922' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_923' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_924' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_925' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_926' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_927' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_928' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_929' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_93' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_930' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_931' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_932' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_933' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_934' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_935' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_936' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_937' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_938' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_939' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_94' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_940' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_941' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_942' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_943' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_944' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_945' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_946' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_947' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_948' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_949' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_95' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_950' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_951' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_952' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_953' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_954' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_955' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_956' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_957' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_958' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_959' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_96' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_960' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_961' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_962' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_963' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_964' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_965' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_966' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_967' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_968' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_969' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_97' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_970' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_971' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_972' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_973' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_974' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_975' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_976' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_977' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_978' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_979' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_98' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_980' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_981' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_982' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_983' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_984' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_985' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_986' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_987' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_988' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_989' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_99' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_990' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_991' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_992' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_993' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_994' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_995' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_996' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_997' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_998' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_999' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.adtFields.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_12.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_13.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_12.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat_outer' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.boxedOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.boxedOne.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.boxedOne' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bp_entries._simp_1_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.simplePat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bp_entries.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.entriesOf._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bp_entries._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.bp_entries' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.directPat_cons._simp_1_4' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.identBoxed_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identLocal_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf_spec' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_cons' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_len.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_len._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_len' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_loads._simp_1_27' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_loads._simp_1_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_loads.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none._simp_1_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none._simp_1_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rlookup_append' depends on axioms: [propext]\n'LexLeanPreservation.Rust.same_boxed_boxed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_boxed_none' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_local_none._simp_1_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_local_none._simp_1_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_local_none.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.same_local_local' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_local_none._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_local_none' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_boxed_local' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rlookup_local_boxed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rlookup_local_single' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_loads._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.directPat_loads' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_boxed_some._simp_1_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_some._simp_1_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_some.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_some._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.entries_boxed_some' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.envRel_locals' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fields_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindPatterns_single' depends on axioms: [propext]\n'LexLeanPreservation.Rust.outer_bind' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.paramCtx_length.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_length._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_length' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.bindOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOne.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.covered.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.covered_mem._simp_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.wt_uninh._simp_10' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.covered_mem' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.ctorOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.destruct_canon' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq_refl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.destruct_excl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.directPat.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_lookup.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_none_of._simp_1_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_none_of.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sameIdent_iff' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_none_of._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_none_of' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.identsDistinct.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.entries_lookup._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_lookup' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.eval_field.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.eval_field._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_field.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_field' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats_none._simp_1_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats_none.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats_none._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats_none' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats_some._simp_1_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats_some.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats_some._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats_some' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_partRead' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.tyBeq_unit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.field_out' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.findArm_some.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.findArm_some._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.findArm_some' depends on axioms: [propext]\n'LexLeanPreservation.Rust.findDispatch_some.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.findDispatch_some._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.findDispatch_some' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_ext' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identBoxed.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identBoxed.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.isWild._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.okBlock.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.otherArms.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.otherArms_mem._simp_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.otherArms_mem' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.outer_miss' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.outer_view' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_ext.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_ext._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_ext' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_fresh.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_fresh._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_fresh' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocal.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_matchOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_matchOn_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_uncons.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_uncons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_scrut' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rca_hit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rca_miss' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_det' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_rebuild.match_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_eq_of_same' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg_rc' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_rebuild._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_rebuild' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.readOf_rc' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.realizesM_value' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArg_simple' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_def' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs_simple.match_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs_simple._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs_simple' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_14.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuild_rca._simp_1_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuild_rca.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_value._simp_1_21' depends on axioms: [propext]\n'LexLeanPreservation.Rust.single_rebuild' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_rca._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_rca' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuildsArm.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_nil' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_fieldGen._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_fieldGen.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_fieldGen.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.wtl_get.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_get._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_get' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_fieldGen' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_fieldHeld' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_fieldRead' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_mCons._simp_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_mCons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_mNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchArms._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.tyBeq_refl.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq_refl._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.tysBeq_refl.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tysBeq_refl._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_refl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.tysBeq_refl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.uninh_of_inert.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.uninh_of_inert._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh_of_inert' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_uninh.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_uninh._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtl_uninh.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_uninh._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_uninh' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.taken_arm' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchArms' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchPair._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchPair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchRebuilt._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchRebuilt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchRebuilt.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchRebuilt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.simplePat.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.validU.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_uninh' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.findArm.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findArm.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findArm.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_5' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_6' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_7' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_8' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.fl_of' does not depend on any axioms\n'LexLeanPreservation.Rust.fnFallible.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of._simp_1_14' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.funSem_of.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_12' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.isTemp.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isTemp.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.item_ne' depends on axioms: [propext]\n'LexLeanPreservation.Rust.kind_ne' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sound._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sound._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.simulate' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Representable._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Representable.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Representable._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.RepresentableL._f' does not depend on any axioms\n'LexLeanPreservation.Rust.Representable' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Representable._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.Representable._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.compose' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rel_ne_stuck' depends on axioms: [propext]\n'LexLeanPreservation.Rust.repL_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.repL_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.runItem_abort_infallible' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtAll_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wtAll_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_map._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_map' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_adt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_bool' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_bytes' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encExcept.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_encExcept' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_list' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encList' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encOption.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_encOption' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encOrdering' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encPair' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encUnit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_errorV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i32' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i64' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_int' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_listEnc' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_nat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_noneV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_okV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_optEnc.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_someV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_optEnc' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_ordering' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_pairV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_string' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u32' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u64' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_unitValue' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_nil' depends on axioms: [propext]\n'LexLeanPreservation.encExcept.eq_1' does not depend on any axioms\n'LexLeanPreservation.encExcept.eq_2' does not depend on any axioms\n'LexLeanPreservation.encOption.eq_1' does not depend on any axioms\n'LexLeanPreservation.encOption.eq_2' does not depend on any axioms\n'LexLeanPreservation.encPair.eq_1' does not depend on any axioms\n'LexLeanPreservation.encUnit.eq_1' does not depend on any axioms\n'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.Compose.RustStd.__wt_0' depends on axioms: [propext]\n'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.Compose.RustStd.__wt_0' depends on axioms: [propext]\n'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.Compose.RustStd.__wt_0' depends on axioms: [propext]\n'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.Compose.RustStd.__wt_1' depends on axioms: [propext]\n'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.Compose.RustStd.__wt_0' depends on axioms: [propext]\n'LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.Compose.RustStd.__wt_0' depends on axioms: [propext]\n-- statement vocabulary\ninductive LexLeanPreservation.Obs : Type\nnumber of parameters: 0\nconstructors:\nLexLeanPreservation.Obs.value : LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs\nLexLeanPreservation.Obs.overflow : LexLeanPreservation.Obs\nLexLeanPreservation.Obs.stuck : LexLeanPreservation.Obs\ndef LexLeanPreservation.Rel : Bool → LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs :=\nfun fits v => bif fits then LexLeanPreservation.Obs.value v else LexLeanPreservation.Obs.overflow\ndef LexLeanPreservation.Conv : LexLeanTarget.TargetSyntax.Program →\n List (Nat × LexLeanTarget.TargetSyntax.Value) → LexLeanTarget.TargetSyntax.Expr → LexLeanPreservation.Obs → Prop :=\nfun p env e o => ∃ n, LexLeanPreservation.obs (LexLeanTarget.TargetSemantics.eval n p env e) = some o\ndef LexLeanPreservation.FunRel : LexLeanTarget.TargetSyntax.Program →\n Nat → List LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs → Prop :=\nfun p f args o =>\n ∃ fn,\n LexLeanRuntime.index p.functions f = some fn ∧\n ∃ env,\n LexLeanTarget.TargetSemantics.bindAll fn.parameters args [] = some env ∧\n LexLeanPreservation.Conv p env fn.body o\ndef LexLeanPreservation.RunConv : LexLeanTarget.TargetSyntax.Program →\n Nat → List LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs → Prop :=\nfun p entry args o => ∃ n, LexLeanPreservation.obs (LexLeanTarget.TargetSemantics.run n p entry args) = some o\ndef LexLeanPreservation.Rust.WT : LexLeanTarget.TargetSyntax.Program →\n LexLeanPreservation.Rust.RCrate →\n LexLeanPreservation.Rust.Flags → LexLeanTarget.TargetSyntax.Value → LexLeanTarget.TargetSyntax.Ty → Prop :=\nfun p c A x x_1 =>\n x.brecOn (LexLeanPreservation.Rust.WT._f p c A)\n (fun t f => ⟨LexLeanPreservation.Rust.WTL._f p c A t f, LexLeanPreservation.Rust.WTAll._f p c A t f⟩) x_1\ndef LexLeanPreservation.Rust.WTL : LexLeanTarget.TargetSyntax.Program →\n LexLeanPreservation.Rust.RCrate →\n LexLeanPreservation.Rust.Flags →\n List LexLeanTarget.TargetSyntax.Value → List LexLeanTarget.TargetSyntax.Ty → Prop :=\nfun p c A x x_1 =>\n (LexLeanTarget.TargetSyntax.Value.brecOn_1 x (LexLeanPreservation.Rust.WT._f p c A) fun t f =>\n ⟨LexLeanPreservation.Rust.WTL._f p c A t f, LexLeanPreservation.Rust.WTAll._f p c A t f⟩).1\n x_1\ndef LexLeanPreservation.Rust.fnIdent : Nat → LexLeanPreservation.Rust.RIdent :=\nfun f => LexLeanTarget.RustSyntax.Ident.generated LexLeanTarget.RustSyntax.IdentKind.function f\ndef LexLeanPreservation.Rust.fnFallible : LexLeanPreservation.Rust.RCrate → Nat → Option Bool :=\nfun c f =>\n Option.map (fun fn => LexLeanTarget.RustSemantics.fallibleType fn.snd.fst)\n (LexLeanTarget.RustSemantics.findFunction c.items (LexLeanPreservation.Rust.fnIdent f))\ndef LexLeanPreservation.Rust.RCI : LexLeanPreservation.Rust.RCrate →\n LexLeanPreservation.Rust.RIdent → List LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Rust.ROut → Prop :=\nfun c f args o =>\n o ≠ LexLeanTarget.RustSemantics.ROutcome.exhausted ∧ ∃ n, LexLeanTarget.RustSemantics.invoke n c f args = o\ndef LexLeanPreservation.Rust.Realizes : Bool → LexLeanPreservation.Obs → LexLeanPreservation.Rust.ROut → Prop :=\nfun fl x x_1 =>\n match x, x_1 with\n | LexLeanPreservation.Obs.value v, LexLeanTarget.RustSemantics.ROutcome.value w => w = v\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.raise => fl = true\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.abort => True\n | x, x_2 => False\ndef LexLeanPreservation.Rust.RealizesFn : Bool → LexLeanPreservation.Obs → LexLeanPreservation.Rust.ROut → Prop :=\nfun fallible x x_1 =>\n match x, x_1 with\n | LexLeanPreservation.Obs.value v, LexLeanTarget.RustSemantics.ROutcome.value w => w = bif fallible then v.ok else v\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.value w =>\n fallible = true ∧ w = LexLeanTarget.TargetSyntax.Value.unit.error\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.abort => True\n | x, x_2 => False\ndef LexLeanPreservation.Rust.FunSem : LexLeanTarget.TargetSyntax.Program →\n LexLeanPreservation.Rust.RCrate → LexLeanPreservation.Rust.Flags → Nat → Nat → Prop :=\nfun p c A n f =>\n ∀ (fn : LexLeanTarget.TargetSyntax.Function) (args : List LexLeanTarget.TargetSyntax.Value)\n (env : List (Nat × LexLeanTarget.TargetSyntax.Value)) (F : Bool),\n LexLeanRuntime.index p.functions f = some fn →\n LexLeanPreservation.Rust.WTL p c A args fn.types →\n LexLeanTarget.TargetSemantics.bindAll fn.parameters args [] = some env →\n LexLeanPreservation.Rust.fnFallible c f = some F →\n ∀ (o : LexLeanPreservation.Obs),\n LexLeanPreservation.obs (LexLeanTarget.TargetSemantics.eval n p env fn.body) = some o →\n o ≠ LexLeanPreservation.Obs.stuck →\n (∀ (v : LexLeanTarget.TargetSyntax.Value),\n o = LexLeanPreservation.Obs.value v → LexLeanPreservation.Rust.WT p c A v fn.result) ∧\n ∃ ro,\n LexLeanPreservation.Rust.RealizesFn F o ro ∧\n LexLeanPreservation.Rust.RCI c (LexLeanPreservation.Rust.fnIdent f) args ro\ndef LexLeanPreservation.someObs : LexLeanPreservation.Obs → LexLeanPreservation.Obs :=\nfun x =>\n match x with\n | LexLeanPreservation.Obs.value v => LexLeanPreservation.Obs.value v.some\n | LexLeanPreservation.Obs.overflow => LexLeanPreservation.Obs.overflow\n | LexLeanPreservation.Obs.stuck => LexLeanPreservation.Obs.stuck\ndef LexLeanPreservation.Rust.Representable : LexLeanTarget.TargetSyntax.Value → Prop :=\nfun x => x.brecOn LexLeanPreservation.Rust.Representable._f LexLeanPreservation.Rust.RepresentableL._f\ndef LexLeanPreservation.Rust.RepresentableL : List LexLeanTarget.TargetSyntax.Value → Prop :=\nfun x =>\n LexLeanTarget.TargetSyntax.Value.brecOn_1 x LexLeanPreservation.Rust.Representable._f\n LexLeanPreservation.Rust.RepresentableL._f\nLexLeanPreservation.Rust.runItem_abort_infallible : ∀ (profile : LexLeanTarget.RustSyntax.Profile)\n (item : LexLeanTarget.RustSyntax.Item) (values : List LexLeanTarget.TargetSyntax.Value),\n LexLeanTarget.RustSemantics.runItem profile item values = LexLeanTarget.RustSemantics.ROutcome.abort →\n LexLeanTarget.RustSemantics.itemFallible item = false\n","stdout_sha256":"e7eaa63d9a9bb259ce6b31992e9bbf04cf589c77f524a61cac93cbfa1482b5ad","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.Compose.RustStd.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.Compose.RustStd.json deleted file mode 100644 index 609def963..000000000 --- a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R0/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R0/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.RustStd.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.RustStd.json deleted file mode 100644 index 28653b2a8..000000000 --- a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R0/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R0/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.json deleted file mode 100644 index c92f1e79b..000000000 --- a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R0.olean","$STAGING/preserve-src/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R0.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R0","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.Compose.RustStd.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.Compose.RustStd.json deleted file mode 100644 index ca59d5a4c..000000000 --- a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R1/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R1/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.RustStd.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.RustStd.json deleted file mode 100644 index de44806ee..000000000 --- a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R1/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R1/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.json deleted file mode 100644 index 9a4655a55..000000000 --- a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R1.olean","$STAGING/preserve-src/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R1.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R1","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.Compose.RustStd.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.Compose.RustStd.json deleted file mode 100644 index 3c0296abd..000000000 --- a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R2/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R2/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.RustStd.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.RustStd.json deleted file mode 100644 index 15e629d93..000000000 --- a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R2/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R2/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.json deleted file mode 100644 index a96b99196..000000000 --- a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R2.olean","$STAGING/preserve-src/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R2.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R2","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.Compose.RustStd.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.Compose.RustStd.json deleted file mode 100644 index 40ea7e71f..000000000 --- a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R3/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R3/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.RustStd.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.RustStd.json deleted file mode 100644 index 128a88358..000000000 --- a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R3/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R3/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.json deleted file mode 100644 index 5399bff00..000000000 --- a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R3.olean","$STAGING/preserve-src/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R3.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R3","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.Compose.RustStd.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.Compose.RustStd.json deleted file mode 100644 index 2dd8afd40..000000000 --- a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R4/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R4/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.RustStd.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.RustStd.json deleted file mode 100644 index da06cf2ad..000000000 --- a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R4/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R4/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.json deleted file mode 100644 index d93e4a959..000000000 --- a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R4.olean","$STAGING/preserve-src/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R4.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R4","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.Compose.RustStd.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.Compose.RustStd.json deleted file mode 100644 index 8707fe829..000000000 --- a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R5/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R5/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.RustStd.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.RustStd.json deleted file mode 100644 index baf2caf4a..000000000 --- a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R5/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R5/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.json deleted file mode 100644 index 33e483060..000000000 --- a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R5.olean","$STAGING/preserve-src/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R5.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R5","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.Compose.RustStd.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.Compose.RustStd.json deleted file mode 100644 index 15e5aabc0..000000000 --- a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R6/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R6/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.RustStd.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.RustStd.json deleted file mode 100644 index b3c9c8a14..000000000 --- a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R6/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R6/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.json deleted file mode 100644 index d56e72335..000000000 --- a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R6.olean","$STAGING/preserve-src/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R6.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R6","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.Compose.RustStd.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.Compose.RustStd.json deleted file mode 100644 index e0d2bc69b..000000000 --- a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R7/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R7/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.RustStd.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.RustStd.json deleted file mode 100644 index 05288a509..000000000 --- a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R7/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R7/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.json deleted file mode 100644 index 8bb25e8d8..000000000 --- a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R7.olean","$STAGING/preserve-src/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R7.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R7","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.Compose.RustStd.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.Compose.RustStd.json deleted file mode 100644 index 71b941d33..000000000 --- a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R8/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R8/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.RustStd.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.RustStd.json deleted file mode 100644 index 7af7cb482..000000000 --- a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R8/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R8/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.json deleted file mode 100644 index 4e747b722..000000000 --- a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R8.olean","$STAGING/preserve-src/LexLeanPreserve/C49cf062e918bdc2f8a44a66473c4435e/R8.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C49cf062e918bdc2f8a44a66473c4435e.R8","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.Compose.RustStd.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.Compose.RustStd.json new file mode 100644 index 000000000..c57e7510f --- /dev/null +++ b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R0/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R0/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.RustStd.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.RustStd.json new file mode 100644 index 000000000..743d1fc97 --- /dev/null +++ b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R0/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R0/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.json new file mode 100644 index 000000000..91b63f911 --- /dev/null +++ b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R0.olean","$STAGING/preserve-src/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R0.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R0","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.Compose.RustStd.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.Compose.RustStd.json new file mode 100644 index 000000000..06b520126 --- /dev/null +++ b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R1/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R1/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.RustStd.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.RustStd.json new file mode 100644 index 000000000..5aaa6cab4 --- /dev/null +++ b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R1/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R1/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.json new file mode 100644 index 000000000..0a936ee87 --- /dev/null +++ b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R1.olean","$STAGING/preserve-src/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R1.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R1","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.Compose.RustStd.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.Compose.RustStd.json new file mode 100644 index 000000000..2752c77aa --- /dev/null +++ b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R2/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R2/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.RustStd.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.RustStd.json new file mode 100644 index 000000000..744c19efe --- /dev/null +++ b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R2/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R2/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.json new file mode 100644 index 000000000..f69259edd --- /dev/null +++ b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R2.olean","$STAGING/preserve-src/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R2.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R2","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.Compose.RustStd.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.Compose.RustStd.json new file mode 100644 index 000000000..1d59e9450 --- /dev/null +++ b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R3/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R3/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.RustStd.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.RustStd.json new file mode 100644 index 000000000..e6f5ec03e --- /dev/null +++ b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R3/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R3/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.json new file mode 100644 index 000000000..77f4762f3 --- /dev/null +++ b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R3.olean","$STAGING/preserve-src/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R3.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R3","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.Compose.RustStd.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.Compose.RustStd.json new file mode 100644 index 000000000..e064cadb1 --- /dev/null +++ b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R4/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R4/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.RustStd.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.RustStd.json new file mode 100644 index 000000000..975b0f67d --- /dev/null +++ b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R4/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R4/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.json new file mode 100644 index 000000000..36ddd4e03 --- /dev/null +++ b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R4.olean","$STAGING/preserve-src/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R4.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R4","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.Compose.RustStd.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.Compose.RustStd.json new file mode 100644 index 000000000..6fd708226 --- /dev/null +++ b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R5/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R5/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.RustStd.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.RustStd.json new file mode 100644 index 000000000..ff7551c33 --- /dev/null +++ b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R5/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R5/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.json new file mode 100644 index 000000000..b1ec4e88b --- /dev/null +++ b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R5.olean","$STAGING/preserve-src/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R5.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R5","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.Compose.RustStd.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.Compose.RustStd.json new file mode 100644 index 000000000..3ef288bb4 --- /dev/null +++ b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R6/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R6/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.RustStd.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.RustStd.json new file mode 100644 index 000000000..017884184 --- /dev/null +++ b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R6/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R6/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.json new file mode 100644 index 000000000..7fb2c45ed --- /dev/null +++ b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R6.olean","$STAGING/preserve-src/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R6.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R6","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.Compose.RustStd.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.Compose.RustStd.json new file mode 100644 index 000000000..c14c3dd26 --- /dev/null +++ b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R7/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R7/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.RustStd.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.RustStd.json new file mode 100644 index 000000000..595a07916 --- /dev/null +++ b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R7/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R7/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.json new file mode 100644 index 000000000..de3c6a8d8 --- /dev/null +++ b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R7.olean","$STAGING/preserve-src/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R7.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R7","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.Compose.RustStd.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.Compose.RustStd.json new file mode 100644 index 000000000..1b95df4da --- /dev/null +++ b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R8/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R8/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.RustStd.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.RustStd.json new file mode 100644 index 000000000..89c6710b7 --- /dev/null +++ b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R8/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R8/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.json b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.json new file mode 100644 index 000000000..dd495c1dd --- /dev/null +++ b/examples/models/expected/verify/process/preserve/LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R8.olean","$STAGING/preserve-src/LexLeanPreserve/C91b57d30cfd6f60128d6c72e374148ef/R8.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C91b57d30cfd6f60128d6c72e374148ef.R8","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/models/lexlean.lock b/examples/models/lexlean.lock index 15b28f70b..76dda7232 100644 --- a/examples/models/lexlean.lock +++ b/examples/models/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "b79e1070aab27c02ec4396ee66aa4bad7b90f9bca923932529eb9eb26264761a" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/examples/production-coverage/expected/build/manifest.json b/examples/production-coverage/expected/build/manifest.json index 6c4268037..0a5ec6faa 100644 --- a/examples/production-coverage/expected/build/manifest.json +++ b/examples/production-coverage/expected/build/manifest.json @@ -1 +1 @@ -{"build_id":"59040522a70f7aa3631f88039de565ec405fdcabe1df421c362a0a9b23ebda1a","compiler":{"semantics_id":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","version":"0.3.0"},"inputs":[{"byte_length":2684,"kind":"lexicon","path":"embedded","sha256":"3bc0fb09d706ffa7d5a1363302ea87c049acc7c7dcafde63c62682620c11be9b"},{"byte_length":14885,"kind":"lexicon","path":"embedded","sha256":"e0db021e01b91d651c43921d66f6b0023c8efbf17cac2ec53192ce5305e4e1ac"},{"byte_length":36197,"kind":"lexicon","path":"embedded","sha256":"827317cae68c162f3a96c8a8de4e53ab348e7d3724fd2b834fa85ecde1a1b392"},{"byte_length":1597,"kind":"lock","path":"lexlean.lock","sha256":"45eb63e8c0750ce4f1177cafea858eb1726ebc6f293343e70d11a07cf84f5529"},{"byte_length":739,"kind":"project-config","path":"lexlean.toml","sha256":"1bcbdf2b89a335e2e8685fb89b09d3c4eba9f30371947781755576f588df7434"},{"byte_length":1263,"kind":"source","path":"src/Boundary.lex.tex","sha256":"4675304c0db77f457ca6f558425c5ede68619a65dad4d6210e36f4765c10c222"},{"byte_length":4508,"kind":"source","path":"src/Colls.lex.tex","sha256":"af6d528bfe9c18c9abf2cf03e3bd3dfe6c5bc4808cf0d6e8dedd4faeca05e14e"},{"byte_length":3826,"kind":"source","path":"src/Main.lex.tex","sha256":"42698451ae141f4ea32a38f1e48e6337d30b06b108813e48c566b4d72e58acd6"},{"byte_length":4678,"kind":"source","path":"src/Prims.lex.tex","sha256":"c86661726922c5fadb430769d459ff5db7ec61c66d96386ef10001cd6079adfd"},{"byte_length":1333,"kind":"source","path":"src/RecRoots.lex.tex","sha256":"a10c554b3b0d752c4ae2aee4ae1d5c70c68eb2645fdd528caab1b4f5ceaf3502"},{"byte_length":10226,"kind":"source","path":"src/Recur.lex.tex","sha256":"a404c1ed64818f9b54d3bffeb9c1d5518460164acb9f6deecb54756fec3dabf3"},{"byte_length":861,"kind":"source","path":"src/Syntax.lex.tex","sha256":"4d2d6d5cc65ee405c5b0fe2732babae4d496f16a4e054ac334d2abfa69152dd0"},{"byte_length":2571,"kind":"source","path":"src/Types.lex.tex","sha256":"80d360f45ad31fccc43a06831cc6137982c579a23f3de646be93d3c3ce59193a"}],"language":"1.2","lean_toolchain":"leanprover/lean4:v4.32.1","modules":[{"lean_module":"Coverage.Boundary","module":"Boundary","source_path":"src/Boundary.lex.tex"},{"lean_module":"Coverage.Colls","module":"Colls","source_path":"src/Colls.lex.tex"},{"lean_module":"Coverage.Main","module":"Main","source_path":"src/Main.lex.tex"},{"lean_module":"Coverage.Prims","module":"Prims","source_path":"src/Prims.lex.tex"},{"lean_module":"Coverage.RecRoots","module":"RecRoots","source_path":"src/RecRoots.lex.tex"},{"lean_module":"Coverage.Recur","module":"Recur","source_path":"src/Recur.lex.tex"},{"lean_module":"Coverage.Syntax","module":"Syntax","source_path":"src/Syntax.lex.tex"},{"lean_module":"Coverage.Types","module":"Types","source_path":"src/Types.lex.tex"}],"outputs":[{"byte_length":7767,"kind":"coverage","path":"coverage/Coverage/Boundary.coverage.json","sha256":"c0e188dc71d64e8cf450f3ff2b635bef23fcbad299020c6fa930bbcf51612b7f"},{"byte_length":8998,"kind":"coverage","path":"coverage/Coverage/Colls.coverage.json","sha256":"a286e1aa4ad3f9891c2c783690fc5b565adc2ddbdadbded092b916e5480d415f"},{"byte_length":10376,"kind":"coverage","path":"coverage/Coverage/Main.coverage.json","sha256":"f2fb3a407f3972660ca5750b86ecd67ef51c83279f8bc8b820e62c2b3b880d40"},{"byte_length":8994,"kind":"coverage","path":"coverage/Coverage/Prims.coverage.json","sha256":"bf478753b3e28affdaac74ec00bc2c72c6121b003da67d9482c28f66f1b5412c"},{"byte_length":9030,"kind":"coverage","path":"coverage/Coverage/RecRoots.coverage.json","sha256":"13d817c2c2f255bcedd0b4bc549742daaa3565d4152a84919a31722821fc1bc6"},{"byte_length":14526,"kind":"coverage","path":"coverage/Coverage/Recur.coverage.json","sha256":"9cad30c1149b4f0591fb914334d4316762ae7429645395e40129fde4c7f753cc"},{"byte_length":7661,"kind":"coverage","path":"coverage/Coverage/Syntax.coverage.json","sha256":"a7e7aefd6a325b677497d3186bf0b4558bc092ff093e9d381b2caf6ae1d23432"},{"byte_length":10052,"kind":"coverage","path":"coverage/Coverage/Types.coverage.json","sha256":"c92a3b573ffb98f0378c0613504664a2712349e070fcba9a1967fe2301b96e4c"},{"byte_length":1138,"kind":"lean","path":"modules/Coverage/Boundary.lean","sha256":"af29aee16f61f7465e254ff167e6915bc8c267a1a1003aac3c69c0bf056ba275"},{"byte_length":4032,"kind":"lean","path":"modules/Coverage/Colls.lean","sha256":"61af86e818f34e6566625b62b20bb46c06b7ee09c4ffd102bfcc88ae2fd6f910"},{"byte_length":2739,"kind":"lean","path":"modules/Coverage/Main.lean","sha256":"afd4be513f508614189e0f8c69636a1a49094ecbae949f6373ff9838f90474f0"},{"byte_length":4457,"kind":"lean","path":"modules/Coverage/Prims.lean","sha256":"5cf6e5d468f72f5a61fb45722d19a62299b948de7e2055c483bca0d9a5d85e45"},{"byte_length":984,"kind":"lean","path":"modules/Coverage/RecRoots.lean","sha256":"5280da57d1865ec67a84af791b650a5fab86db12ea33895df2fb02c8f40256e7"},{"byte_length":33283,"kind":"lean","path":"modules/Coverage/Recur.lean","sha256":"25a70c53355965a4d29334138497abf19ea35b12afb9de949063c28b1c71cec5"},{"byte_length":620,"kind":"lean","path":"modules/Coverage/Syntax.lean","sha256":"0969465532980c30cabae6eeaa128080daffb6374d56878d461b98392470b379"},{"byte_length":1788,"kind":"lean","path":"modules/Coverage/Types.lean","sha256":"c6972ba54604d93590d5030bbb58503f0685e2968cdaad0a6e5cfcfe288574ec"},{"byte_length":10606,"kind":"lexicon-closure","path":"lexicons/Boundary.closure.json","sha256":"4e67900912cb73ae57443c035f462b0bf241b097ed8fd5bffb8996d593367f0a"},{"byte_length":10603,"kind":"lexicon-closure","path":"lexicons/Colls.closure.json","sha256":"64b9cfce8348276765e03d03b5561282bc922e22dd0ce092ba295f8d7f9e27e3"},{"byte_length":10602,"kind":"lexicon-closure","path":"lexicons/Main.closure.json","sha256":"727110f90daff26a2e5eb8069fcefecd5790c1264f5d6d4b2ef57db1c2bfb867"},{"byte_length":10603,"kind":"lexicon-closure","path":"lexicons/Prims.closure.json","sha256":"1ca8ce7adbd813b36a6bcbb61422b2e9606eba5108cc48f5723a76d5dd3133b0"},{"byte_length":10606,"kind":"lexicon-closure","path":"lexicons/RecRoots.closure.json","sha256":"b7929d5d112818efe69ec2210e1dac07a1907c35ae67b5963b5b0eb65ad0c086"},{"byte_length":10603,"kind":"lexicon-closure","path":"lexicons/Recur.closure.json","sha256":"e5c73c5262bfb9bb40003c52f6a84431e06f4c9bf729d21993531c28702aa6a8"},{"byte_length":10604,"kind":"lexicon-closure","path":"lexicons/Syntax.closure.json","sha256":"37a0e650d18d332b85cdcc97c6e3a86ffc1dbb591bace0b323fc8bf535336f8b"},{"byte_length":10603,"kind":"lexicon-closure","path":"lexicons/Types.closure.json","sha256":"340585fd2c4c6277fb7214262beee52046db9b165cb6290c4b160f1e4ddc118c"},{"byte_length":2299,"kind":"map","path":"maps/Coverage/Boundary.map.json","sha256":"3351af73bea88e36c6c060482f4748807680683da898da3f2a3cb02ff4edc8e9"},{"byte_length":3916,"kind":"map","path":"maps/Coverage/Colls.map.json","sha256":"93d384549d720e6938b60fc656f4ec34e2bd1fac7700753bc2dd0290a58ee3d1"},{"byte_length":4862,"kind":"map","path":"maps/Coverage/Main.map.json","sha256":"47f8e59e895732299a823a6c46b36a5c07ae205daccb452e406b59815561fa29"},{"byte_length":3912,"kind":"map","path":"maps/Coverage/Prims.map.json","sha256":"8bd765bfd5183a2f0967a908c9df81b4692ed82a82fd17055797a6531a7cf0f1"},{"byte_length":2302,"kind":"map","path":"maps/Coverage/RecRoots.map.json","sha256":"d5bc84f46fa1551d48162cd17b447f56069dea4545ccfe31b2dc03f753380fbc"},{"byte_length":9764,"kind":"map","path":"maps/Coverage/Recur.map.json","sha256":"5c0e10baae5cdd9c28f0926d74c8fb619255db3a945a3e8ff924f8b4d9e290c4"},{"byte_length":2280,"kind":"map","path":"maps/Coverage/Syntax.map.json","sha256":"a38f5ad9890e7ee36b7ca41a1e3c3315461342e4d328c33748d19884eb421c63"},{"byte_length":5166,"kind":"map","path":"maps/Coverage/Types.map.json","sha256":"33812ff710fcaa5e8feb998643406fc8226d0c778b3cd05de4a672542be72bb0"},{"byte_length":5696,"kind":"production-eligibility","path":"production/Coverage/Boundary.eligibility.json","sha256":"e8ee809bef94b69b2257ee1cc20d9846c82f02bc3a3e9b910f69d31a99a8fda6"},{"byte_length":27395,"kind":"production-eligibility","path":"production/Coverage/Colls.eligibility.json","sha256":"8724ec83f26e3bb7f483666f87e14d65af6db7c33b9726d87275d4d79331a20e"},{"byte_length":28948,"kind":"production-eligibility","path":"production/Coverage/Main.eligibility.json","sha256":"6c43769b8becf4ecd39650c3d314511ee6a6c55cb24615c8762fbaa6f2a0f106"},{"byte_length":24889,"kind":"production-eligibility","path":"production/Coverage/Prims.eligibility.json","sha256":"cc1d1f204a4ba4dd523424d31c6c36b031d684a52dd8331949936ab6f87ac96f"},{"byte_length":16974,"kind":"production-eligibility","path":"production/Coverage/RecRoots.eligibility.json","sha256":"19c0640e04dba45dc72d1b0f69927950211bb6b1b92feb81dd2745636772ac62"},{"byte_length":1785,"kind":"tex","path":"modules/Coverage/Boundary.tex","sha256":"7f0b2f7721d8b64bc90af13abd4292d7e4cbdf5e19c38872c5bfe97c763d06f3"},{"byte_length":7518,"kind":"tex","path":"modules/Coverage/Colls.tex","sha256":"1223a4e7c19c2f79e28d56e614092f0f8c2506d0913a2079cd7e5372cb8b8da2"},{"byte_length":6930,"kind":"tex","path":"modules/Coverage/Main.tex","sha256":"08878a5bb3a95d296b6ad999d03a84a810d829a57f38fa91f5cba9c0fbd7e31b"},{"byte_length":7789,"kind":"tex","path":"modules/Coverage/Prims.tex","sha256":"73c1b19b794003957f3e0cf0328ee09251391330a2c6904fd7ae2f4b90ff1858"},{"byte_length":2358,"kind":"tex","path":"modules/Coverage/RecRoots.tex","sha256":"45877d577173fd6e145c67446677c60a1d3cecfa65550b3942d68183fe77a970"},{"byte_length":15320,"kind":"tex","path":"modules/Coverage/Recur.tex","sha256":"9b9efaf01a628d61547155fbf872a9fdec7ea34dac7444e9c5e62e63a42bfd06"},{"byte_length":1093,"kind":"tex","path":"modules/Coverage/Syntax.tex","sha256":"24391ae507ff036ad50cbece531289a033ddff326046c24e85c3968beb127bea"},{"byte_length":4199,"kind":"tex","path":"modules/Coverage/Types.tex","sha256":"e5e6325b5dcb5922332195c23875e4644b0491f4ccb69344ad9d75d860202b4e"}],"project":"production-coverage","selection":["Boundary","Colls","Main","Prims","RecRoots","Recur","Syntax","Types"],"semantic_id":"f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd","source_id":"48db6ed4e506113ff1645455e567d1bd194ef0ffd92498a669c2326e3ac407bd","spec":"lexlean/build-manifest/1"} +{"build_id":"a46b31014101e773c5fee218d9b8cd2004428c64a523172f3c319bcd24a532f7","compiler":{"semantics_id":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","version":"0.3.0"},"inputs":[{"byte_length":2684,"kind":"lexicon","path":"embedded","sha256":"3bc0fb09d706ffa7d5a1363302ea87c049acc7c7dcafde63c62682620c11be9b"},{"byte_length":14885,"kind":"lexicon","path":"embedded","sha256":"e0db021e01b91d651c43921d66f6b0023c8efbf17cac2ec53192ce5305e4e1ac"},{"byte_length":36197,"kind":"lexicon","path":"embedded","sha256":"827317cae68c162f3a96c8a8de4e53ab348e7d3724fd2b834fa85ecde1a1b392"},{"byte_length":1597,"kind":"lock","path":"lexlean.lock","sha256":"f7fc0aa65836d3f1305ff2d691f71b6ac284194204909905dd8394b12b866210"},{"byte_length":739,"kind":"project-config","path":"lexlean.toml","sha256":"1bcbdf2b89a335e2e8685fb89b09d3c4eba9f30371947781755576f588df7434"},{"byte_length":1263,"kind":"source","path":"src/Boundary.lex.tex","sha256":"4675304c0db77f457ca6f558425c5ede68619a65dad4d6210e36f4765c10c222"},{"byte_length":4508,"kind":"source","path":"src/Colls.lex.tex","sha256":"af6d528bfe9c18c9abf2cf03e3bd3dfe6c5bc4808cf0d6e8dedd4faeca05e14e"},{"byte_length":3826,"kind":"source","path":"src/Main.lex.tex","sha256":"42698451ae141f4ea32a38f1e48e6337d30b06b108813e48c566b4d72e58acd6"},{"byte_length":4678,"kind":"source","path":"src/Prims.lex.tex","sha256":"c86661726922c5fadb430769d459ff5db7ec61c66d96386ef10001cd6079adfd"},{"byte_length":1333,"kind":"source","path":"src/RecRoots.lex.tex","sha256":"a10c554b3b0d752c4ae2aee4ae1d5c70c68eb2645fdd528caab1b4f5ceaf3502"},{"byte_length":10226,"kind":"source","path":"src/Recur.lex.tex","sha256":"a404c1ed64818f9b54d3bffeb9c1d5518460164acb9f6deecb54756fec3dabf3"},{"byte_length":861,"kind":"source","path":"src/Syntax.lex.tex","sha256":"4d2d6d5cc65ee405c5b0fe2732babae4d496f16a4e054ac334d2abfa69152dd0"},{"byte_length":2571,"kind":"source","path":"src/Types.lex.tex","sha256":"80d360f45ad31fccc43a06831cc6137982c579a23f3de646be93d3c3ce59193a"}],"language":"1.2","lean_toolchain":"leanprover/lean4:v4.32.1","modules":[{"lean_module":"Coverage.Boundary","module":"Boundary","source_path":"src/Boundary.lex.tex"},{"lean_module":"Coverage.Colls","module":"Colls","source_path":"src/Colls.lex.tex"},{"lean_module":"Coverage.Main","module":"Main","source_path":"src/Main.lex.tex"},{"lean_module":"Coverage.Prims","module":"Prims","source_path":"src/Prims.lex.tex"},{"lean_module":"Coverage.RecRoots","module":"RecRoots","source_path":"src/RecRoots.lex.tex"},{"lean_module":"Coverage.Recur","module":"Recur","source_path":"src/Recur.lex.tex"},{"lean_module":"Coverage.Syntax","module":"Syntax","source_path":"src/Syntax.lex.tex"},{"lean_module":"Coverage.Types","module":"Types","source_path":"src/Types.lex.tex"}],"outputs":[{"byte_length":7767,"kind":"coverage","path":"coverage/Coverage/Boundary.coverage.json","sha256":"c0e188dc71d64e8cf450f3ff2b635bef23fcbad299020c6fa930bbcf51612b7f"},{"byte_length":8998,"kind":"coverage","path":"coverage/Coverage/Colls.coverage.json","sha256":"a286e1aa4ad3f9891c2c783690fc5b565adc2ddbdadbded092b916e5480d415f"},{"byte_length":10376,"kind":"coverage","path":"coverage/Coverage/Main.coverage.json","sha256":"f2fb3a407f3972660ca5750b86ecd67ef51c83279f8bc8b820e62c2b3b880d40"},{"byte_length":8994,"kind":"coverage","path":"coverage/Coverage/Prims.coverage.json","sha256":"bf478753b3e28affdaac74ec00bc2c72c6121b003da67d9482c28f66f1b5412c"},{"byte_length":9030,"kind":"coverage","path":"coverage/Coverage/RecRoots.coverage.json","sha256":"13d817c2c2f255bcedd0b4bc549742daaa3565d4152a84919a31722821fc1bc6"},{"byte_length":14526,"kind":"coverage","path":"coverage/Coverage/Recur.coverage.json","sha256":"9cad30c1149b4f0591fb914334d4316762ae7429645395e40129fde4c7f753cc"},{"byte_length":7661,"kind":"coverage","path":"coverage/Coverage/Syntax.coverage.json","sha256":"a7e7aefd6a325b677497d3186bf0b4558bc092ff093e9d381b2caf6ae1d23432"},{"byte_length":10052,"kind":"coverage","path":"coverage/Coverage/Types.coverage.json","sha256":"c92a3b573ffb98f0378c0613504664a2712349e070fcba9a1967fe2301b96e4c"},{"byte_length":1138,"kind":"lean","path":"modules/Coverage/Boundary.lean","sha256":"af29aee16f61f7465e254ff167e6915bc8c267a1a1003aac3c69c0bf056ba275"},{"byte_length":4032,"kind":"lean","path":"modules/Coverage/Colls.lean","sha256":"61af86e818f34e6566625b62b20bb46c06b7ee09c4ffd102bfcc88ae2fd6f910"},{"byte_length":2739,"kind":"lean","path":"modules/Coverage/Main.lean","sha256":"afd4be513f508614189e0f8c69636a1a49094ecbae949f6373ff9838f90474f0"},{"byte_length":4457,"kind":"lean","path":"modules/Coverage/Prims.lean","sha256":"5cf6e5d468f72f5a61fb45722d19a62299b948de7e2055c483bca0d9a5d85e45"},{"byte_length":984,"kind":"lean","path":"modules/Coverage/RecRoots.lean","sha256":"5280da57d1865ec67a84af791b650a5fab86db12ea33895df2fb02c8f40256e7"},{"byte_length":33283,"kind":"lean","path":"modules/Coverage/Recur.lean","sha256":"25a70c53355965a4d29334138497abf19ea35b12afb9de949063c28b1c71cec5"},{"byte_length":620,"kind":"lean","path":"modules/Coverage/Syntax.lean","sha256":"0969465532980c30cabae6eeaa128080daffb6374d56878d461b98392470b379"},{"byte_length":1788,"kind":"lean","path":"modules/Coverage/Types.lean","sha256":"c6972ba54604d93590d5030bbb58503f0685e2968cdaad0a6e5cfcfe288574ec"},{"byte_length":10606,"kind":"lexicon-closure","path":"lexicons/Boundary.closure.json","sha256":"4e67900912cb73ae57443c035f462b0bf241b097ed8fd5bffb8996d593367f0a"},{"byte_length":10603,"kind":"lexicon-closure","path":"lexicons/Colls.closure.json","sha256":"64b9cfce8348276765e03d03b5561282bc922e22dd0ce092ba295f8d7f9e27e3"},{"byte_length":10602,"kind":"lexicon-closure","path":"lexicons/Main.closure.json","sha256":"727110f90daff26a2e5eb8069fcefecd5790c1264f5d6d4b2ef57db1c2bfb867"},{"byte_length":10603,"kind":"lexicon-closure","path":"lexicons/Prims.closure.json","sha256":"1ca8ce7adbd813b36a6bcbb61422b2e9606eba5108cc48f5723a76d5dd3133b0"},{"byte_length":10606,"kind":"lexicon-closure","path":"lexicons/RecRoots.closure.json","sha256":"b7929d5d112818efe69ec2210e1dac07a1907c35ae67b5963b5b0eb65ad0c086"},{"byte_length":10603,"kind":"lexicon-closure","path":"lexicons/Recur.closure.json","sha256":"e5c73c5262bfb9bb40003c52f6a84431e06f4c9bf729d21993531c28702aa6a8"},{"byte_length":10604,"kind":"lexicon-closure","path":"lexicons/Syntax.closure.json","sha256":"37a0e650d18d332b85cdcc97c6e3a86ffc1dbb591bace0b323fc8bf535336f8b"},{"byte_length":10603,"kind":"lexicon-closure","path":"lexicons/Types.closure.json","sha256":"340585fd2c4c6277fb7214262beee52046db9b165cb6290c4b160f1e4ddc118c"},{"byte_length":2299,"kind":"map","path":"maps/Coverage/Boundary.map.json","sha256":"f81307a9356a8d4c843feb69191b37ba689d5dafe15ca4e42d7f181cfd78d3d4"},{"byte_length":3916,"kind":"map","path":"maps/Coverage/Colls.map.json","sha256":"3affc2cb538b790e10921dd538d523abf6f704698e81317a451ce8dbe5f6634d"},{"byte_length":4862,"kind":"map","path":"maps/Coverage/Main.map.json","sha256":"38efa28d3103f990933fb3aaf14e798843e28fdf5fb205bb616a80bfb2aef02c"},{"byte_length":3912,"kind":"map","path":"maps/Coverage/Prims.map.json","sha256":"35c015d014d9d6b0a88d5dbedd1c981813d3eb783c56ad1812c331c4dc4bdb8a"},{"byte_length":2302,"kind":"map","path":"maps/Coverage/RecRoots.map.json","sha256":"e57ba3305ef341c7096e97532f1b665aa998a017647056c88c02f9ed730a58f6"},{"byte_length":9764,"kind":"map","path":"maps/Coverage/Recur.map.json","sha256":"eb04bbda80be2b586828c4e8767cb111601ed211bfea84781e6cf4790015d947"},{"byte_length":2280,"kind":"map","path":"maps/Coverage/Syntax.map.json","sha256":"b7753da01c67ad6fad5021fe41e11b1f2c3d1f69ca087a1d903de695c31ce65c"},{"byte_length":5166,"kind":"map","path":"maps/Coverage/Types.map.json","sha256":"d03a0ecafccd1a1e86c0f655665899f15d67bba48cc1db4098001dac5c468165"},{"byte_length":5696,"kind":"production-eligibility","path":"production/Coverage/Boundary.eligibility.json","sha256":"e8ee809bef94b69b2257ee1cc20d9846c82f02bc3a3e9b910f69d31a99a8fda6"},{"byte_length":27395,"kind":"production-eligibility","path":"production/Coverage/Colls.eligibility.json","sha256":"8724ec83f26e3bb7f483666f87e14d65af6db7c33b9726d87275d4d79331a20e"},{"byte_length":28948,"kind":"production-eligibility","path":"production/Coverage/Main.eligibility.json","sha256":"6c43769b8becf4ecd39650c3d314511ee6a6c55cb24615c8762fbaa6f2a0f106"},{"byte_length":24889,"kind":"production-eligibility","path":"production/Coverage/Prims.eligibility.json","sha256":"cc1d1f204a4ba4dd523424d31c6c36b031d684a52dd8331949936ab6f87ac96f"},{"byte_length":16974,"kind":"production-eligibility","path":"production/Coverage/RecRoots.eligibility.json","sha256":"19c0640e04dba45dc72d1b0f69927950211bb6b1b92feb81dd2745636772ac62"},{"byte_length":1785,"kind":"tex","path":"modules/Coverage/Boundary.tex","sha256":"7f0b2f7721d8b64bc90af13abd4292d7e4cbdf5e19c38872c5bfe97c763d06f3"},{"byte_length":7518,"kind":"tex","path":"modules/Coverage/Colls.tex","sha256":"1223a4e7c19c2f79e28d56e614092f0f8c2506d0913a2079cd7e5372cb8b8da2"},{"byte_length":6930,"kind":"tex","path":"modules/Coverage/Main.tex","sha256":"08878a5bb3a95d296b6ad999d03a84a810d829a57f38fa91f5cba9c0fbd7e31b"},{"byte_length":7789,"kind":"tex","path":"modules/Coverage/Prims.tex","sha256":"73c1b19b794003957f3e0cf0328ee09251391330a2c6904fd7ae2f4b90ff1858"},{"byte_length":2358,"kind":"tex","path":"modules/Coverage/RecRoots.tex","sha256":"45877d577173fd6e145c67446677c60a1d3cecfa65550b3942d68183fe77a970"},{"byte_length":15320,"kind":"tex","path":"modules/Coverage/Recur.tex","sha256":"9b9efaf01a628d61547155fbf872a9fdec7ea34dac7444e9c5e62e63a42bfd06"},{"byte_length":1093,"kind":"tex","path":"modules/Coverage/Syntax.tex","sha256":"24391ae507ff036ad50cbece531289a033ddff326046c24e85c3968beb127bea"},{"byte_length":4199,"kind":"tex","path":"modules/Coverage/Types.tex","sha256":"e5e6325b5dcb5922332195c23875e4644b0491f4ccb69344ad9d75d860202b4e"}],"project":"production-coverage","selection":["Boundary","Colls","Main","Prims","RecRoots","Recur","Syntax","Types"],"semantic_id":"e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef","source_id":"1dfbb667271e4224522b0cb0324f88e4615f44a470a437f31cfa4ae7cfbb86ab","spec":"lexlean/build-manifest/1"} diff --git a/examples/production-coverage/expected/build/maps/Coverage/Boundary.map.json b/examples/production-coverage/expected/build/maps/Coverage/Boundary.map.json index c72724f63..84cd47ce9 100644 --- a/examples/production-coverage/expected/build/maps/Coverage/Boundary.map.json +++ b/examples/production-coverage/expected/build/maps/Coverage/Boundary.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/Coverage/Boundary.lean"},{"id":1,"kind":"tex","path":"modules/Coverage/Boundary.tex"}],"mappings":[{"artifact":0,"gen_end":279,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":1263,"src_start":0},{"artifact":0,"gen_end":520,"gen_start":279,"node":1,"role":"declaration","source":0,"src_end":427,"src_start":117},{"artifact":0,"gen_end":607,"gen_start":520,"node":2,"role":"declaration","source":0,"src_end":579,"src_start":429},{"artifact":0,"gen_end":838,"gen_start":607,"node":3,"role":"declaration","source":0,"src_end":865,"src_start":581},{"artifact":0,"gen_end":1115,"gen_start":838,"node":4,"role":"declaration","source":0,"src_end":1227,"src_start":867},{"artifact":0,"gen_end":1138,"gen_start":1115,"node":0,"role":"declaration","source":0,"src_end":1263,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":5,"role":"declaration","source":0,"src_end":1263,"src_start":0},{"artifact":1,"gen_end":491,"gen_start":134,"node":6,"role":"declaration","source":0,"src_end":427,"src_start":117},{"artifact":1,"gen_end":681,"gen_start":491,"node":7,"role":"declaration","source":0,"src_end":579,"src_start":429},{"artifact":1,"gen_end":1164,"gen_start":681,"node":8,"role":"declaration","source":0,"src_end":865,"src_start":581},{"artifact":1,"gen_end":1770,"gen_start":1164,"node":9,"role":"declaration","source":0,"src_end":1227,"src_start":867},{"artifact":1,"gen_end":1785,"gen_start":1770,"node":5,"role":"declaration","source":0,"src_end":1263,"src_start":0}],"module":"Boundary","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-latex-module"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"}],"semantic_id":"f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd","source_id":"48db6ed4e506113ff1645455e567d1bd194ef0ffd92498a669c2326e3ac407bd","sources":[{"id":0,"kind":"file","path":"src/Boundary.lex.tex","sha256":"4675304c0db77f457ca6f558425c5ede68619a65dad4d6210e36f4765c10c222"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/Coverage/Boundary.lean"},{"id":1,"kind":"tex","path":"modules/Coverage/Boundary.tex"}],"mappings":[{"artifact":0,"gen_end":279,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":1263,"src_start":0},{"artifact":0,"gen_end":520,"gen_start":279,"node":1,"role":"declaration","source":0,"src_end":427,"src_start":117},{"artifact":0,"gen_end":607,"gen_start":520,"node":2,"role":"declaration","source":0,"src_end":579,"src_start":429},{"artifact":0,"gen_end":838,"gen_start":607,"node":3,"role":"declaration","source":0,"src_end":865,"src_start":581},{"artifact":0,"gen_end":1115,"gen_start":838,"node":4,"role":"declaration","source":0,"src_end":1227,"src_start":867},{"artifact":0,"gen_end":1138,"gen_start":1115,"node":0,"role":"declaration","source":0,"src_end":1263,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":5,"role":"declaration","source":0,"src_end":1263,"src_start":0},{"artifact":1,"gen_end":491,"gen_start":134,"node":6,"role":"declaration","source":0,"src_end":427,"src_start":117},{"artifact":1,"gen_end":681,"gen_start":491,"node":7,"role":"declaration","source":0,"src_end":579,"src_start":429},{"artifact":1,"gen_end":1164,"gen_start":681,"node":8,"role":"declaration","source":0,"src_end":865,"src_start":581},{"artifact":1,"gen_end":1770,"gen_start":1164,"node":9,"role":"declaration","source":0,"src_end":1227,"src_start":867},{"artifact":1,"gen_end":1785,"gen_start":1770,"node":5,"role":"declaration","source":0,"src_end":1263,"src_start":0}],"module":"Boundary","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-latex-module"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"}],"semantic_id":"e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef","source_id":"1dfbb667271e4224522b0cb0324f88e4615f44a470a437f31cfa4ae7cfbb86ab","sources":[{"id":0,"kind":"file","path":"src/Boundary.lex.tex","sha256":"4675304c0db77f457ca6f558425c5ede68619a65dad4d6210e36f4765c10c222"}],"spec":"lexlean/source-map/1"} diff --git a/examples/production-coverage/expected/build/maps/Coverage/Colls.map.json b/examples/production-coverage/expected/build/maps/Coverage/Colls.map.json index 42d34debd..61c1b6058 100644 --- a/examples/production-coverage/expected/build/maps/Coverage/Colls.map.json +++ b/examples/production-coverage/expected/build/maps/Coverage/Colls.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/Coverage/Colls.lean"},{"id":1,"kind":"tex","path":"modules/Coverage/Colls.tex"}],"mappings":[{"artifact":0,"gen_end":276,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":4508,"src_start":0},{"artifact":0,"gen_end":1039,"gen_start":276,"node":1,"role":"declaration","source":0,"src_end":813,"src_start":114},{"artifact":0,"gen_end":1249,"gen_start":1039,"node":2,"role":"declaration","source":0,"src_end":1133,"src_start":815},{"artifact":0,"gen_end":1906,"gen_start":1249,"node":3,"role":"declaration","source":0,"src_end":1727,"src_start":1135},{"artifact":0,"gen_end":2202,"gen_start":1906,"node":4,"role":"declaration","source":0,"src_end":2094,"src_start":1729},{"artifact":0,"gen_end":2535,"gen_start":2202,"node":5,"role":"declaration","source":0,"src_end":2513,"src_start":2096},{"artifact":0,"gen_end":2877,"gen_start":2535,"node":6,"role":"declaration","source":0,"src_end":2929,"src_start":2515},{"artifact":0,"gen_end":3049,"gen_start":2877,"node":7,"role":"declaration","source":0,"src_end":3258,"src_start":2931},{"artifact":0,"gen_end":3725,"gen_start":3049,"node":8,"role":"declaration","source":0,"src_end":3965,"src_start":3260},{"artifact":0,"gen_end":4012,"gen_start":3725,"node":9,"role":"declaration","source":0,"src_end":4472,"src_start":3967},{"artifact":0,"gen_end":4032,"gen_start":4012,"node":0,"role":"declaration","source":0,"src_end":4508,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":10,"role":"declaration","source":0,"src_end":4508,"src_start":0},{"artifact":1,"gen_end":1266,"gen_start":134,"node":11,"role":"declaration","source":0,"src_end":813,"src_start":114},{"artifact":1,"gen_end":1922,"gen_start":1266,"node":12,"role":"declaration","source":0,"src_end":1133,"src_start":815},{"artifact":1,"gen_end":2935,"gen_start":1922,"node":13,"role":"declaration","source":0,"src_end":1727,"src_start":1135},{"artifact":1,"gen_end":3738,"gen_start":2935,"node":14,"role":"declaration","source":0,"src_end":2094,"src_start":1729},{"artifact":1,"gen_end":4573,"gen_start":3738,"node":15,"role":"declaration","source":0,"src_end":2513,"src_start":2096},{"artifact":1,"gen_end":5281,"gen_start":4573,"node":16,"role":"declaration","source":0,"src_end":2929,"src_start":2515},{"artifact":1,"gen_end":5853,"gen_start":5281,"node":17,"role":"declaration","source":0,"src_end":3258,"src_start":2931},{"artifact":1,"gen_end":6888,"gen_start":5853,"node":18,"role":"declaration","source":0,"src_end":3965,"src_start":3260},{"artifact":1,"gen_end":7503,"gen_start":6888,"node":19,"role":"declaration","source":0,"src_end":4472,"src_start":3967},{"artifact":1,"gen_end":7518,"gen_start":7503,"node":10,"role":"declaration","source":0,"src_end":4508,"src_start":0}],"module":"Colls","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-latex-module"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"}],"semantic_id":"f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd","source_id":"48db6ed4e506113ff1645455e567d1bd194ef0ffd92498a669c2326e3ac407bd","sources":[{"id":0,"kind":"file","path":"src/Colls.lex.tex","sha256":"af6d528bfe9c18c9abf2cf03e3bd3dfe6c5bc4808cf0d6e8dedd4faeca05e14e"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/Coverage/Colls.lean"},{"id":1,"kind":"tex","path":"modules/Coverage/Colls.tex"}],"mappings":[{"artifact":0,"gen_end":276,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":4508,"src_start":0},{"artifact":0,"gen_end":1039,"gen_start":276,"node":1,"role":"declaration","source":0,"src_end":813,"src_start":114},{"artifact":0,"gen_end":1249,"gen_start":1039,"node":2,"role":"declaration","source":0,"src_end":1133,"src_start":815},{"artifact":0,"gen_end":1906,"gen_start":1249,"node":3,"role":"declaration","source":0,"src_end":1727,"src_start":1135},{"artifact":0,"gen_end":2202,"gen_start":1906,"node":4,"role":"declaration","source":0,"src_end":2094,"src_start":1729},{"artifact":0,"gen_end":2535,"gen_start":2202,"node":5,"role":"declaration","source":0,"src_end":2513,"src_start":2096},{"artifact":0,"gen_end":2877,"gen_start":2535,"node":6,"role":"declaration","source":0,"src_end":2929,"src_start":2515},{"artifact":0,"gen_end":3049,"gen_start":2877,"node":7,"role":"declaration","source":0,"src_end":3258,"src_start":2931},{"artifact":0,"gen_end":3725,"gen_start":3049,"node":8,"role":"declaration","source":0,"src_end":3965,"src_start":3260},{"artifact":0,"gen_end":4012,"gen_start":3725,"node":9,"role":"declaration","source":0,"src_end":4472,"src_start":3967},{"artifact":0,"gen_end":4032,"gen_start":4012,"node":0,"role":"declaration","source":0,"src_end":4508,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":10,"role":"declaration","source":0,"src_end":4508,"src_start":0},{"artifact":1,"gen_end":1266,"gen_start":134,"node":11,"role":"declaration","source":0,"src_end":813,"src_start":114},{"artifact":1,"gen_end":1922,"gen_start":1266,"node":12,"role":"declaration","source":0,"src_end":1133,"src_start":815},{"artifact":1,"gen_end":2935,"gen_start":1922,"node":13,"role":"declaration","source":0,"src_end":1727,"src_start":1135},{"artifact":1,"gen_end":3738,"gen_start":2935,"node":14,"role":"declaration","source":0,"src_end":2094,"src_start":1729},{"artifact":1,"gen_end":4573,"gen_start":3738,"node":15,"role":"declaration","source":0,"src_end":2513,"src_start":2096},{"artifact":1,"gen_end":5281,"gen_start":4573,"node":16,"role":"declaration","source":0,"src_end":2929,"src_start":2515},{"artifact":1,"gen_end":5853,"gen_start":5281,"node":17,"role":"declaration","source":0,"src_end":3258,"src_start":2931},{"artifact":1,"gen_end":6888,"gen_start":5853,"node":18,"role":"declaration","source":0,"src_end":3965,"src_start":3260},{"artifact":1,"gen_end":7503,"gen_start":6888,"node":19,"role":"declaration","source":0,"src_end":4472,"src_start":3967},{"artifact":1,"gen_end":7518,"gen_start":7503,"node":10,"role":"declaration","source":0,"src_end":4508,"src_start":0}],"module":"Colls","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-latex-module"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"}],"semantic_id":"e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef","source_id":"1dfbb667271e4224522b0cb0324f88e4615f44a470a437f31cfa4ae7cfbb86ab","sources":[{"id":0,"kind":"file","path":"src/Colls.lex.tex","sha256":"af6d528bfe9c18c9abf2cf03e3bd3dfe6c5bc4808cf0d6e8dedd4faeca05e14e"}],"spec":"lexlean/source-map/1"} diff --git a/examples/production-coverage/expected/build/maps/Coverage/Main.map.json b/examples/production-coverage/expected/build/maps/Coverage/Main.map.json index 220c56237..ec3857e50 100644 --- a/examples/production-coverage/expected/build/maps/Coverage/Main.map.json +++ b/examples/production-coverage/expected/build/maps/Coverage/Main.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/Coverage/Main.lean"},{"id":1,"kind":"tex","path":"modules/Coverage/Main.tex"}],"mappings":[{"artifact":0,"gen_end":263,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":3826,"src_start":0},{"artifact":0,"gen_end":319,"gen_start":263,"node":1,"role":"declaration","source":0,"src_end":227,"src_start":134},{"artifact":0,"gen_end":670,"gen_start":319,"node":2,"role":"declaration","source":0,"src_end":614,"src_start":229},{"artifact":0,"gen_end":948,"gen_start":670,"node":3,"role":"declaration","source":0,"src_end":939,"src_start":616},{"artifact":0,"gen_end":1173,"gen_start":948,"node":4,"role":"declaration","source":0,"src_end":1250,"src_start":941},{"artifact":0,"gen_end":1390,"gen_start":1173,"node":5,"role":"declaration","source":0,"src_end":1574,"src_start":1252},{"artifact":0,"gen_end":1685,"gen_start":1390,"node":6,"role":"declaration","source":0,"src_end":2051,"src_start":1576},{"artifact":0,"gen_end":1909,"gen_start":1685,"node":7,"role":"declaration","source":0,"src_end":2398,"src_start":2053},{"artifact":0,"gen_end":2101,"gen_start":1909,"node":8,"role":"declaration","source":0,"src_end":2749,"src_start":2400},{"artifact":0,"gen_end":2195,"gen_start":2101,"node":9,"role":"declaration","source":0,"src_end":2950,"src_start":2751},{"artifact":0,"gen_end":2507,"gen_start":2195,"node":10,"role":"declaration","source":0,"src_end":3357,"src_start":2952},{"artifact":0,"gen_end":2646,"gen_start":2507,"node":11,"role":"declaration","source":0,"src_end":3603,"src_start":3359},{"artifact":0,"gen_end":2720,"gen_start":2646,"node":12,"role":"declaration","source":0,"src_end":3790,"src_start":3605},{"artifact":0,"gen_end":2739,"gen_start":2720,"node":0,"role":"declaration","source":0,"src_end":3826,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":13,"role":"declaration","source":0,"src_end":3826,"src_start":0},{"artifact":1,"gen_end":437,"gen_start":134,"node":14,"role":"declaration","source":0,"src_end":227,"src_start":134},{"artifact":1,"gen_end":1146,"gen_start":437,"node":15,"role":"declaration","source":0,"src_end":614,"src_start":229},{"artifact":1,"gen_end":1780,"gen_start":1146,"node":16,"role":"declaration","source":0,"src_end":939,"src_start":616},{"artifact":1,"gen_end":2361,"gen_start":1780,"node":17,"role":"declaration","source":0,"src_end":1250,"src_start":941},{"artifact":1,"gen_end":2946,"gen_start":2361,"node":18,"role":"declaration","source":0,"src_end":1574,"src_start":1252},{"artifact":1,"gen_end":3601,"gen_start":2946,"node":19,"role":"declaration","source":0,"src_end":2051,"src_start":1576},{"artifact":1,"gen_end":4181,"gen_start":3601,"node":20,"role":"declaration","source":0,"src_end":2398,"src_start":2053},{"artifact":1,"gen_end":4729,"gen_start":4181,"node":21,"role":"declaration","source":0,"src_end":2749,"src_start":2400},{"artifact":1,"gen_end":5175,"gen_start":4729,"node":22,"role":"declaration","source":0,"src_end":2950,"src_start":2751},{"artifact":1,"gen_end":5987,"gen_start":5175,"node":23,"role":"declaration","source":0,"src_end":3357,"src_start":2952},{"artifact":1,"gen_end":6484,"gen_start":5987,"node":24,"role":"declaration","source":0,"src_end":3603,"src_start":3359},{"artifact":1,"gen_end":6915,"gen_start":6484,"node":25,"role":"declaration","source":0,"src_end":3790,"src_start":3605},{"artifact":1,"gen_end":6930,"gen_start":6915,"node":13,"role":"declaration","source":0,"src_end":3826,"src_start":0}],"module":"Main","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-latex-module"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"}],"semantic_id":"f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd","source_id":"48db6ed4e506113ff1645455e567d1bd194ef0ffd92498a669c2326e3ac407bd","sources":[{"id":0,"kind":"file","path":"src/Main.lex.tex","sha256":"42698451ae141f4ea32a38f1e48e6337d30b06b108813e48c566b4d72e58acd6"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/Coverage/Main.lean"},{"id":1,"kind":"tex","path":"modules/Coverage/Main.tex"}],"mappings":[{"artifact":0,"gen_end":263,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":3826,"src_start":0},{"artifact":0,"gen_end":319,"gen_start":263,"node":1,"role":"declaration","source":0,"src_end":227,"src_start":134},{"artifact":0,"gen_end":670,"gen_start":319,"node":2,"role":"declaration","source":0,"src_end":614,"src_start":229},{"artifact":0,"gen_end":948,"gen_start":670,"node":3,"role":"declaration","source":0,"src_end":939,"src_start":616},{"artifact":0,"gen_end":1173,"gen_start":948,"node":4,"role":"declaration","source":0,"src_end":1250,"src_start":941},{"artifact":0,"gen_end":1390,"gen_start":1173,"node":5,"role":"declaration","source":0,"src_end":1574,"src_start":1252},{"artifact":0,"gen_end":1685,"gen_start":1390,"node":6,"role":"declaration","source":0,"src_end":2051,"src_start":1576},{"artifact":0,"gen_end":1909,"gen_start":1685,"node":7,"role":"declaration","source":0,"src_end":2398,"src_start":2053},{"artifact":0,"gen_end":2101,"gen_start":1909,"node":8,"role":"declaration","source":0,"src_end":2749,"src_start":2400},{"artifact":0,"gen_end":2195,"gen_start":2101,"node":9,"role":"declaration","source":0,"src_end":2950,"src_start":2751},{"artifact":0,"gen_end":2507,"gen_start":2195,"node":10,"role":"declaration","source":0,"src_end":3357,"src_start":2952},{"artifact":0,"gen_end":2646,"gen_start":2507,"node":11,"role":"declaration","source":0,"src_end":3603,"src_start":3359},{"artifact":0,"gen_end":2720,"gen_start":2646,"node":12,"role":"declaration","source":0,"src_end":3790,"src_start":3605},{"artifact":0,"gen_end":2739,"gen_start":2720,"node":0,"role":"declaration","source":0,"src_end":3826,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":13,"role":"declaration","source":0,"src_end":3826,"src_start":0},{"artifact":1,"gen_end":437,"gen_start":134,"node":14,"role":"declaration","source":0,"src_end":227,"src_start":134},{"artifact":1,"gen_end":1146,"gen_start":437,"node":15,"role":"declaration","source":0,"src_end":614,"src_start":229},{"artifact":1,"gen_end":1780,"gen_start":1146,"node":16,"role":"declaration","source":0,"src_end":939,"src_start":616},{"artifact":1,"gen_end":2361,"gen_start":1780,"node":17,"role":"declaration","source":0,"src_end":1250,"src_start":941},{"artifact":1,"gen_end":2946,"gen_start":2361,"node":18,"role":"declaration","source":0,"src_end":1574,"src_start":1252},{"artifact":1,"gen_end":3601,"gen_start":2946,"node":19,"role":"declaration","source":0,"src_end":2051,"src_start":1576},{"artifact":1,"gen_end":4181,"gen_start":3601,"node":20,"role":"declaration","source":0,"src_end":2398,"src_start":2053},{"artifact":1,"gen_end":4729,"gen_start":4181,"node":21,"role":"declaration","source":0,"src_end":2749,"src_start":2400},{"artifact":1,"gen_end":5175,"gen_start":4729,"node":22,"role":"declaration","source":0,"src_end":2950,"src_start":2751},{"artifact":1,"gen_end":5987,"gen_start":5175,"node":23,"role":"declaration","source":0,"src_end":3357,"src_start":2952},{"artifact":1,"gen_end":6484,"gen_start":5987,"node":24,"role":"declaration","source":0,"src_end":3603,"src_start":3359},{"artifact":1,"gen_end":6915,"gen_start":6484,"node":25,"role":"declaration","source":0,"src_end":3790,"src_start":3605},{"artifact":1,"gen_end":6930,"gen_start":6915,"node":13,"role":"declaration","source":0,"src_end":3826,"src_start":0}],"module":"Main","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-latex-module"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"}],"semantic_id":"e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef","source_id":"1dfbb667271e4224522b0cb0324f88e4615f44a470a437f31cfa4ae7cfbb86ab","sources":[{"id":0,"kind":"file","path":"src/Main.lex.tex","sha256":"42698451ae141f4ea32a38f1e48e6337d30b06b108813e48c566b4d72e58acd6"}],"spec":"lexlean/source-map/1"} diff --git a/examples/production-coverage/expected/build/maps/Coverage/Prims.map.json b/examples/production-coverage/expected/build/maps/Coverage/Prims.map.json index 0de7f1f39..b3fcfe0fd 100644 --- a/examples/production-coverage/expected/build/maps/Coverage/Prims.map.json +++ b/examples/production-coverage/expected/build/maps/Coverage/Prims.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/Coverage/Prims.lean"},{"id":1,"kind":"tex","path":"modules/Coverage/Prims.tex"}],"mappings":[{"artifact":0,"gen_end":235,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":4678,"src_start":0},{"artifact":0,"gen_end":695,"gen_start":235,"node":1,"role":"declaration","source":0,"src_end":625,"src_start":114},{"artifact":0,"gen_end":1073,"gen_start":695,"node":2,"role":"declaration","source":0,"src_end":1075,"src_start":627},{"artifact":0,"gen_end":1677,"gen_start":1073,"node":3,"role":"declaration","source":0,"src_end":1686,"src_start":1077},{"artifact":0,"gen_end":2212,"gen_start":1677,"node":4,"role":"declaration","source":0,"src_end":2232,"src_start":1688},{"artifact":0,"gen_end":2424,"gen_start":2212,"node":5,"role":"declaration","source":0,"src_end":2559,"src_start":2234},{"artifact":0,"gen_end":3261,"gen_start":2424,"node":6,"role":"declaration","source":0,"src_end":3251,"src_start":2561},{"artifact":0,"gen_end":3454,"gen_start":3261,"node":7,"role":"declaration","source":0,"src_end":3587,"src_start":3253},{"artifact":0,"gen_end":3626,"gen_start":3454,"node":8,"role":"declaration","source":0,"src_end":3891,"src_start":3589},{"artifact":0,"gen_end":4437,"gen_start":3626,"node":9,"role":"declaration","source":0,"src_end":4642,"src_start":3893},{"artifact":0,"gen_end":4457,"gen_start":4437,"node":0,"role":"declaration","source":0,"src_end":4678,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":10,"role":"declaration","source":0,"src_end":4678,"src_start":0},{"artifact":1,"gen_end":969,"gen_start":134,"node":11,"role":"declaration","source":0,"src_end":625,"src_start":114},{"artifact":1,"gen_end":1722,"gen_start":969,"node":12,"role":"declaration","source":0,"src_end":1075,"src_start":627},{"artifact":1,"gen_end":2701,"gen_start":1722,"node":13,"role":"declaration","source":0,"src_end":1686,"src_start":1077},{"artifact":1,"gen_end":3611,"gen_start":2701,"node":14,"role":"declaration","source":0,"src_end":2232,"src_start":1688},{"artifact":1,"gen_end":4198,"gen_start":3611,"node":15,"role":"declaration","source":0,"src_end":2559,"src_start":2234},{"artifact":1,"gen_end":5394,"gen_start":4198,"node":16,"role":"declaration","source":0,"src_end":3251,"src_start":2561},{"artifact":1,"gen_end":5985,"gen_start":5394,"node":17,"role":"declaration","source":0,"src_end":3587,"src_start":3253},{"artifact":1,"gen_end":6545,"gen_start":5985,"node":18,"role":"declaration","source":0,"src_end":3891,"src_start":3589},{"artifact":1,"gen_end":7774,"gen_start":6545,"node":19,"role":"declaration","source":0,"src_end":4642,"src_start":3893},{"artifact":1,"gen_end":7789,"gen_start":7774,"node":10,"role":"declaration","source":0,"src_end":4678,"src_start":0}],"module":"Prims","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-latex-module"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"}],"semantic_id":"f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd","source_id":"48db6ed4e506113ff1645455e567d1bd194ef0ffd92498a669c2326e3ac407bd","sources":[{"id":0,"kind":"file","path":"src/Prims.lex.tex","sha256":"c86661726922c5fadb430769d459ff5db7ec61c66d96386ef10001cd6079adfd"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/Coverage/Prims.lean"},{"id":1,"kind":"tex","path":"modules/Coverage/Prims.tex"}],"mappings":[{"artifact":0,"gen_end":235,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":4678,"src_start":0},{"artifact":0,"gen_end":695,"gen_start":235,"node":1,"role":"declaration","source":0,"src_end":625,"src_start":114},{"artifact":0,"gen_end":1073,"gen_start":695,"node":2,"role":"declaration","source":0,"src_end":1075,"src_start":627},{"artifact":0,"gen_end":1677,"gen_start":1073,"node":3,"role":"declaration","source":0,"src_end":1686,"src_start":1077},{"artifact":0,"gen_end":2212,"gen_start":1677,"node":4,"role":"declaration","source":0,"src_end":2232,"src_start":1688},{"artifact":0,"gen_end":2424,"gen_start":2212,"node":5,"role":"declaration","source":0,"src_end":2559,"src_start":2234},{"artifact":0,"gen_end":3261,"gen_start":2424,"node":6,"role":"declaration","source":0,"src_end":3251,"src_start":2561},{"artifact":0,"gen_end":3454,"gen_start":3261,"node":7,"role":"declaration","source":0,"src_end":3587,"src_start":3253},{"artifact":0,"gen_end":3626,"gen_start":3454,"node":8,"role":"declaration","source":0,"src_end":3891,"src_start":3589},{"artifact":0,"gen_end":4437,"gen_start":3626,"node":9,"role":"declaration","source":0,"src_end":4642,"src_start":3893},{"artifact":0,"gen_end":4457,"gen_start":4437,"node":0,"role":"declaration","source":0,"src_end":4678,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":10,"role":"declaration","source":0,"src_end":4678,"src_start":0},{"artifact":1,"gen_end":969,"gen_start":134,"node":11,"role":"declaration","source":0,"src_end":625,"src_start":114},{"artifact":1,"gen_end":1722,"gen_start":969,"node":12,"role":"declaration","source":0,"src_end":1075,"src_start":627},{"artifact":1,"gen_end":2701,"gen_start":1722,"node":13,"role":"declaration","source":0,"src_end":1686,"src_start":1077},{"artifact":1,"gen_end":3611,"gen_start":2701,"node":14,"role":"declaration","source":0,"src_end":2232,"src_start":1688},{"artifact":1,"gen_end":4198,"gen_start":3611,"node":15,"role":"declaration","source":0,"src_end":2559,"src_start":2234},{"artifact":1,"gen_end":5394,"gen_start":4198,"node":16,"role":"declaration","source":0,"src_end":3251,"src_start":2561},{"artifact":1,"gen_end":5985,"gen_start":5394,"node":17,"role":"declaration","source":0,"src_end":3587,"src_start":3253},{"artifact":1,"gen_end":6545,"gen_start":5985,"node":18,"role":"declaration","source":0,"src_end":3891,"src_start":3589},{"artifact":1,"gen_end":7774,"gen_start":6545,"node":19,"role":"declaration","source":0,"src_end":4642,"src_start":3893},{"artifact":1,"gen_end":7789,"gen_start":7774,"node":10,"role":"declaration","source":0,"src_end":4678,"src_start":0}],"module":"Prims","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-latex-module"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"}],"semantic_id":"e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef","source_id":"1dfbb667271e4224522b0cb0324f88e4615f44a470a437f31cfa4ae7cfbb86ab","sources":[{"id":0,"kind":"file","path":"src/Prims.lex.tex","sha256":"c86661726922c5fadb430769d459ff5db7ec61c66d96386ef10001cd6079adfd"}],"spec":"lexlean/source-map/1"} diff --git a/examples/production-coverage/expected/build/maps/Coverage/RecRoots.map.json b/examples/production-coverage/expected/build/maps/Coverage/RecRoots.map.json index 63a6f6373..9ac0f98e6 100644 --- a/examples/production-coverage/expected/build/maps/Coverage/RecRoots.map.json +++ b/examples/production-coverage/expected/build/maps/Coverage/RecRoots.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/Coverage/RecRoots.lean"},{"id":1,"kind":"tex","path":"modules/Coverage/RecRoots.tex"}],"mappings":[{"artifact":0,"gen_end":259,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":1333,"src_start":0},{"artifact":0,"gen_end":493,"gen_start":259,"node":1,"role":"declaration","source":0,"src_end":488,"src_start":160},{"artifact":0,"gen_end":591,"gen_start":493,"node":2,"role":"declaration","source":0,"src_end":702,"src_start":490},{"artifact":0,"gen_end":787,"gen_start":591,"node":3,"role":"declaration","source":0,"src_end":1015,"src_start":704},{"artifact":0,"gen_end":961,"gen_start":787,"node":4,"role":"declaration","source":0,"src_end":1297,"src_start":1017},{"artifact":0,"gen_end":984,"gen_start":961,"node":0,"role":"declaration","source":0,"src_end":1333,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":5,"role":"declaration","source":0,"src_end":1333,"src_start":0},{"artifact":1,"gen_end":736,"gen_start":134,"node":6,"role":"declaration","source":0,"src_end":488,"src_start":160},{"artifact":1,"gen_end":1202,"gen_start":736,"node":7,"role":"declaration","source":0,"src_end":702,"src_start":490},{"artifact":1,"gen_end":1788,"gen_start":1202,"node":8,"role":"declaration","source":0,"src_end":1015,"src_start":704},{"artifact":1,"gen_end":2343,"gen_start":1788,"node":9,"role":"declaration","source":0,"src_end":1297,"src_start":1017},{"artifact":1,"gen_end":2358,"gen_start":2343,"node":5,"role":"declaration","source":0,"src_end":1333,"src_start":0}],"module":"RecRoots","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-latex-module"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"}],"semantic_id":"f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd","source_id":"48db6ed4e506113ff1645455e567d1bd194ef0ffd92498a669c2326e3ac407bd","sources":[{"id":0,"kind":"file","path":"src/RecRoots.lex.tex","sha256":"a10c554b3b0d752c4ae2aee4ae1d5c70c68eb2645fdd528caab1b4f5ceaf3502"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/Coverage/RecRoots.lean"},{"id":1,"kind":"tex","path":"modules/Coverage/RecRoots.tex"}],"mappings":[{"artifact":0,"gen_end":259,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":1333,"src_start":0},{"artifact":0,"gen_end":493,"gen_start":259,"node":1,"role":"declaration","source":0,"src_end":488,"src_start":160},{"artifact":0,"gen_end":591,"gen_start":493,"node":2,"role":"declaration","source":0,"src_end":702,"src_start":490},{"artifact":0,"gen_end":787,"gen_start":591,"node":3,"role":"declaration","source":0,"src_end":1015,"src_start":704},{"artifact":0,"gen_end":961,"gen_start":787,"node":4,"role":"declaration","source":0,"src_end":1297,"src_start":1017},{"artifact":0,"gen_end":984,"gen_start":961,"node":0,"role":"declaration","source":0,"src_end":1333,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":5,"role":"declaration","source":0,"src_end":1333,"src_start":0},{"artifact":1,"gen_end":736,"gen_start":134,"node":6,"role":"declaration","source":0,"src_end":488,"src_start":160},{"artifact":1,"gen_end":1202,"gen_start":736,"node":7,"role":"declaration","source":0,"src_end":702,"src_start":490},{"artifact":1,"gen_end":1788,"gen_start":1202,"node":8,"role":"declaration","source":0,"src_end":1015,"src_start":704},{"artifact":1,"gen_end":2343,"gen_start":1788,"node":9,"role":"declaration","source":0,"src_end":1297,"src_start":1017},{"artifact":1,"gen_end":2358,"gen_start":2343,"node":5,"role":"declaration","source":0,"src_end":1333,"src_start":0}],"module":"RecRoots","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-latex-module"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"}],"semantic_id":"e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef","source_id":"1dfbb667271e4224522b0cb0324f88e4615f44a470a437f31cfa4ae7cfbb86ab","sources":[{"id":0,"kind":"file","path":"src/RecRoots.lex.tex","sha256":"a10c554b3b0d752c4ae2aee4ae1d5c70c68eb2645fdd528caab1b4f5ceaf3502"}],"spec":"lexlean/source-map/1"} diff --git a/examples/production-coverage/expected/build/maps/Coverage/Recur.map.json b/examples/production-coverage/expected/build/maps/Coverage/Recur.map.json index 70c1fcb18..ca0422115 100644 --- a/examples/production-coverage/expected/build/maps/Coverage/Recur.map.json +++ b/examples/production-coverage/expected/build/maps/Coverage/Recur.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/Coverage/Recur.lean"},{"id":1,"kind":"tex","path":"modules/Coverage/Recur.tex"}],"mappings":[{"artifact":0,"gen_end":299,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":10226,"src_start":0},{"artifact":0,"gen_end":515,"gen_start":299,"node":1,"role":"declaration","source":0,"src_end":417,"src_start":136},{"artifact":0,"gen_end":761,"gen_start":515,"node":2,"role":"declaration","source":0,"src_end":744,"src_start":419},{"artifact":0,"gen_end":1124,"gen_start":761,"node":3,"role":"declaration","source":0,"src_end":1153,"src_start":746},{"artifact":0,"gen_end":1356,"gen_start":1124,"node":4,"role":"declaration","source":0,"src_end":1456,"src_start":1155},{"artifact":0,"gen_end":1654,"gen_start":1356,"node":5,"role":"declaration","source":0,"src_end":1970,"src_start":1458},{"artifact":0,"gen_end":1821,"gen_start":1654,"node":6,"role":"declaration","source":0,"src_end":2197,"src_start":1972},{"artifact":0,"gen_end":1986,"gen_start":1821,"node":7,"role":"declaration","source":0,"src_end":2425,"src_start":2199},{"artifact":0,"gen_end":5069,"gen_start":1986,"node":8,"role":"declaration","source":0,"src_end":2656,"src_start":2427},{"artifact":0,"gen_end":5482,"gen_start":5069,"node":9,"role":"declaration","source":0,"src_end":2966,"src_start":2658},{"artifact":0,"gen_end":8602,"gen_start":5482,"node":10,"role":"declaration","source":0,"src_end":3226,"src_start":2968},{"artifact":0,"gen_end":9117,"gen_start":8602,"node":11,"role":"declaration","source":0,"src_end":3559,"src_start":3228},{"artifact":0,"gen_end":12298,"gen_start":9117,"node":12,"role":"declaration","source":0,"src_end":3866,"src_start":3561},{"artifact":0,"gen_end":12845,"gen_start":12298,"node":13,"role":"declaration","source":0,"src_end":4223,"src_start":3868},{"artifact":0,"gen_end":13054,"gen_start":12845,"node":14,"role":"declaration","source":0,"src_end":4508,"src_start":4225},{"artifact":0,"gen_end":16278,"gen_start":13054,"node":15,"role":"declaration","source":0,"src_end":4870,"src_start":4510},{"artifact":0,"gen_end":19621,"gen_start":16278,"node":16,"role":"declaration","source":0,"src_end":5346,"src_start":4872},{"artifact":0,"gen_end":20503,"gen_start":19621,"node":17,"role":"declaration","source":0,"src_end":5968,"src_start":5348},{"artifact":0,"gen_end":23805,"gen_start":20503,"node":18,"role":"declaration","source":0,"src_end":6408,"src_start":5970},{"artifact":0,"gen_end":24554,"gen_start":23805,"node":19,"role":"declaration","source":0,"src_end":6917,"src_start":6410},{"artifact":0,"gen_end":25627,"gen_start":24554,"node":20,"role":"declaration","source":0,"src_end":8040,"src_start":6919},{"artifact":0,"gen_end":25917,"gen_start":25627,"node":21,"role":"declaration","source":0,"src_end":8376,"src_start":8042},{"artifact":0,"gen_end":26300,"gen_start":25917,"node":22,"role":"declaration","source":0,"src_end":9001,"src_start":8378},{"artifact":0,"gen_end":29351,"gen_start":26300,"node":23,"role":"declaration","source":0,"src_end":9216,"src_start":9003},{"artifact":0,"gen_end":32478,"gen_start":29351,"node":24,"role":"declaration","source":0,"src_end":9479,"src_start":9218},{"artifact":0,"gen_end":32826,"gen_start":32478,"node":25,"role":"declaration","source":0,"src_end":9760,"src_start":9481},{"artifact":0,"gen_end":33203,"gen_start":32826,"node":26,"role":"declaration","source":0,"src_end":10059,"src_start":9762},{"artifact":0,"gen_end":33263,"gen_start":33203,"node":27,"role":"declaration","source":0,"src_end":10190,"src_start":10061},{"artifact":0,"gen_end":33283,"gen_start":33263,"node":0,"role":"declaration","source":0,"src_end":10226,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":28,"role":"declaration","source":0,"src_end":10226,"src_start":0},{"artifact":1,"gen_end":687,"gen_start":134,"node":29,"role":"declaration","source":0,"src_end":417,"src_start":136},{"artifact":1,"gen_end":1270,"gen_start":687,"node":30,"role":"declaration","source":0,"src_end":744,"src_start":419},{"artifact":1,"gen_end":1934,"gen_start":1270,"node":31,"role":"declaration","source":0,"src_end":1153,"src_start":746},{"artifact":1,"gen_end":2475,"gen_start":1934,"node":32,"role":"declaration","source":0,"src_end":1456,"src_start":1155},{"artifact":1,"gen_end":3079,"gen_start":2475,"node":33,"role":"declaration","source":0,"src_end":1970,"src_start":1458},{"artifact":1,"gen_end":3544,"gen_start":3079,"node":34,"role":"declaration","source":0,"src_end":2197,"src_start":1972},{"artifact":1,"gen_end":4010,"gen_start":3544,"node":35,"role":"declaration","source":0,"src_end":2425,"src_start":2199},{"artifact":1,"gen_end":4352,"gen_start":4010,"node":36,"role":"declaration","source":0,"src_end":2656,"src_start":2427},{"artifact":1,"gen_end":4919,"gen_start":4352,"node":37,"role":"declaration","source":0,"src_end":2966,"src_start":2658},{"artifact":1,"gen_end":5299,"gen_start":4919,"node":38,"role":"declaration","source":0,"src_end":3226,"src_start":2968},{"artifact":1,"gen_end":5898,"gen_start":5299,"node":39,"role":"declaration","source":0,"src_end":3559,"src_start":3228},{"artifact":1,"gen_end":6339,"gen_start":5898,"node":40,"role":"declaration","source":0,"src_end":3866,"src_start":3561},{"artifact":1,"gen_end":6964,"gen_start":6339,"node":41,"role":"declaration","source":0,"src_end":4223,"src_start":3868},{"artifact":1,"gen_end":7435,"gen_start":6964,"node":42,"role":"declaration","source":0,"src_end":4508,"src_start":4225},{"artifact":1,"gen_end":7898,"gen_start":7435,"node":43,"role":"declaration","source":0,"src_end":4870,"src_start":4510},{"artifact":1,"gen_end":8480,"gen_start":7898,"node":44,"role":"declaration","source":0,"src_end":5346,"src_start":4872},{"artifact":1,"gen_end":9393,"gen_start":8480,"node":45,"role":"declaration","source":0,"src_end":5968,"src_start":5348},{"artifact":1,"gen_end":9934,"gen_start":9393,"node":46,"role":"declaration","source":0,"src_end":6408,"src_start":5970},{"artifact":1,"gen_end":10716,"gen_start":9934,"node":47,"role":"declaration","source":0,"src_end":6917,"src_start":6410},{"artifact":1,"gen_end":12094,"gen_start":10716,"node":48,"role":"declaration","source":0,"src_end":8040,"src_start":6919},{"artifact":1,"gen_end":12690,"gen_start":12094,"node":49,"role":"declaration","source":0,"src_end":8376,"src_start":8042},{"artifact":1,"gen_end":13375,"gen_start":12690,"node":50,"role":"declaration","source":0,"src_end":9001,"src_start":8378},{"artifact":1,"gen_end":13687,"gen_start":13375,"node":51,"role":"declaration","source":0,"src_end":9216,"src_start":9003},{"artifact":1,"gen_end":14075,"gen_start":13687,"node":52,"role":"declaration","source":0,"src_end":9479,"src_start":9218},{"artifact":1,"gen_end":14579,"gen_start":14075,"node":53,"role":"declaration","source":0,"src_end":9760,"src_start":9481},{"artifact":1,"gen_end":15115,"gen_start":14579,"node":54,"role":"declaration","source":0,"src_end":10059,"src_start":9762},{"artifact":1,"gen_end":15305,"gen_start":15115,"node":55,"role":"declaration","source":0,"src_end":10190,"src_start":10061},{"artifact":1,"gen_end":15320,"gen_start":15305,"node":28,"role":"declaration","source":0,"src_end":10226,"src_start":0}],"module":"Recur","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-latex-module"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"},{"id":40,"kind":"semantic-declaration"},{"id":41,"kind":"semantic-declaration"},{"id":42,"kind":"semantic-declaration"},{"id":43,"kind":"semantic-declaration"},{"id":44,"kind":"semantic-declaration"},{"id":45,"kind":"semantic-declaration"},{"id":46,"kind":"semantic-declaration"},{"id":47,"kind":"semantic-declaration"},{"id":48,"kind":"semantic-declaration"},{"id":49,"kind":"semantic-declaration"},{"id":50,"kind":"semantic-declaration"},{"id":51,"kind":"semantic-declaration"},{"id":52,"kind":"semantic-declaration"},{"id":53,"kind":"semantic-declaration"},{"id":54,"kind":"semantic-declaration"},{"id":55,"kind":"semantic-declaration"}],"semantic_id":"f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd","source_id":"48db6ed4e506113ff1645455e567d1bd194ef0ffd92498a669c2326e3ac407bd","sources":[{"id":0,"kind":"file","path":"src/Recur.lex.tex","sha256":"a404c1ed64818f9b54d3bffeb9c1d5518460164acb9f6deecb54756fec3dabf3"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/Coverage/Recur.lean"},{"id":1,"kind":"tex","path":"modules/Coverage/Recur.tex"}],"mappings":[{"artifact":0,"gen_end":299,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":10226,"src_start":0},{"artifact":0,"gen_end":515,"gen_start":299,"node":1,"role":"declaration","source":0,"src_end":417,"src_start":136},{"artifact":0,"gen_end":761,"gen_start":515,"node":2,"role":"declaration","source":0,"src_end":744,"src_start":419},{"artifact":0,"gen_end":1124,"gen_start":761,"node":3,"role":"declaration","source":0,"src_end":1153,"src_start":746},{"artifact":0,"gen_end":1356,"gen_start":1124,"node":4,"role":"declaration","source":0,"src_end":1456,"src_start":1155},{"artifact":0,"gen_end":1654,"gen_start":1356,"node":5,"role":"declaration","source":0,"src_end":1970,"src_start":1458},{"artifact":0,"gen_end":1821,"gen_start":1654,"node":6,"role":"declaration","source":0,"src_end":2197,"src_start":1972},{"artifact":0,"gen_end":1986,"gen_start":1821,"node":7,"role":"declaration","source":0,"src_end":2425,"src_start":2199},{"artifact":0,"gen_end":5069,"gen_start":1986,"node":8,"role":"declaration","source":0,"src_end":2656,"src_start":2427},{"artifact":0,"gen_end":5482,"gen_start":5069,"node":9,"role":"declaration","source":0,"src_end":2966,"src_start":2658},{"artifact":0,"gen_end":8602,"gen_start":5482,"node":10,"role":"declaration","source":0,"src_end":3226,"src_start":2968},{"artifact":0,"gen_end":9117,"gen_start":8602,"node":11,"role":"declaration","source":0,"src_end":3559,"src_start":3228},{"artifact":0,"gen_end":12298,"gen_start":9117,"node":12,"role":"declaration","source":0,"src_end":3866,"src_start":3561},{"artifact":0,"gen_end":12845,"gen_start":12298,"node":13,"role":"declaration","source":0,"src_end":4223,"src_start":3868},{"artifact":0,"gen_end":13054,"gen_start":12845,"node":14,"role":"declaration","source":0,"src_end":4508,"src_start":4225},{"artifact":0,"gen_end":16278,"gen_start":13054,"node":15,"role":"declaration","source":0,"src_end":4870,"src_start":4510},{"artifact":0,"gen_end":19621,"gen_start":16278,"node":16,"role":"declaration","source":0,"src_end":5346,"src_start":4872},{"artifact":0,"gen_end":20503,"gen_start":19621,"node":17,"role":"declaration","source":0,"src_end":5968,"src_start":5348},{"artifact":0,"gen_end":23805,"gen_start":20503,"node":18,"role":"declaration","source":0,"src_end":6408,"src_start":5970},{"artifact":0,"gen_end":24554,"gen_start":23805,"node":19,"role":"declaration","source":0,"src_end":6917,"src_start":6410},{"artifact":0,"gen_end":25627,"gen_start":24554,"node":20,"role":"declaration","source":0,"src_end":8040,"src_start":6919},{"artifact":0,"gen_end":25917,"gen_start":25627,"node":21,"role":"declaration","source":0,"src_end":8376,"src_start":8042},{"artifact":0,"gen_end":26300,"gen_start":25917,"node":22,"role":"declaration","source":0,"src_end":9001,"src_start":8378},{"artifact":0,"gen_end":29351,"gen_start":26300,"node":23,"role":"declaration","source":0,"src_end":9216,"src_start":9003},{"artifact":0,"gen_end":32478,"gen_start":29351,"node":24,"role":"declaration","source":0,"src_end":9479,"src_start":9218},{"artifact":0,"gen_end":32826,"gen_start":32478,"node":25,"role":"declaration","source":0,"src_end":9760,"src_start":9481},{"artifact":0,"gen_end":33203,"gen_start":32826,"node":26,"role":"declaration","source":0,"src_end":10059,"src_start":9762},{"artifact":0,"gen_end":33263,"gen_start":33203,"node":27,"role":"declaration","source":0,"src_end":10190,"src_start":10061},{"artifact":0,"gen_end":33283,"gen_start":33263,"node":0,"role":"declaration","source":0,"src_end":10226,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":28,"role":"declaration","source":0,"src_end":10226,"src_start":0},{"artifact":1,"gen_end":687,"gen_start":134,"node":29,"role":"declaration","source":0,"src_end":417,"src_start":136},{"artifact":1,"gen_end":1270,"gen_start":687,"node":30,"role":"declaration","source":0,"src_end":744,"src_start":419},{"artifact":1,"gen_end":1934,"gen_start":1270,"node":31,"role":"declaration","source":0,"src_end":1153,"src_start":746},{"artifact":1,"gen_end":2475,"gen_start":1934,"node":32,"role":"declaration","source":0,"src_end":1456,"src_start":1155},{"artifact":1,"gen_end":3079,"gen_start":2475,"node":33,"role":"declaration","source":0,"src_end":1970,"src_start":1458},{"artifact":1,"gen_end":3544,"gen_start":3079,"node":34,"role":"declaration","source":0,"src_end":2197,"src_start":1972},{"artifact":1,"gen_end":4010,"gen_start":3544,"node":35,"role":"declaration","source":0,"src_end":2425,"src_start":2199},{"artifact":1,"gen_end":4352,"gen_start":4010,"node":36,"role":"declaration","source":0,"src_end":2656,"src_start":2427},{"artifact":1,"gen_end":4919,"gen_start":4352,"node":37,"role":"declaration","source":0,"src_end":2966,"src_start":2658},{"artifact":1,"gen_end":5299,"gen_start":4919,"node":38,"role":"declaration","source":0,"src_end":3226,"src_start":2968},{"artifact":1,"gen_end":5898,"gen_start":5299,"node":39,"role":"declaration","source":0,"src_end":3559,"src_start":3228},{"artifact":1,"gen_end":6339,"gen_start":5898,"node":40,"role":"declaration","source":0,"src_end":3866,"src_start":3561},{"artifact":1,"gen_end":6964,"gen_start":6339,"node":41,"role":"declaration","source":0,"src_end":4223,"src_start":3868},{"artifact":1,"gen_end":7435,"gen_start":6964,"node":42,"role":"declaration","source":0,"src_end":4508,"src_start":4225},{"artifact":1,"gen_end":7898,"gen_start":7435,"node":43,"role":"declaration","source":0,"src_end":4870,"src_start":4510},{"artifact":1,"gen_end":8480,"gen_start":7898,"node":44,"role":"declaration","source":0,"src_end":5346,"src_start":4872},{"artifact":1,"gen_end":9393,"gen_start":8480,"node":45,"role":"declaration","source":0,"src_end":5968,"src_start":5348},{"artifact":1,"gen_end":9934,"gen_start":9393,"node":46,"role":"declaration","source":0,"src_end":6408,"src_start":5970},{"artifact":1,"gen_end":10716,"gen_start":9934,"node":47,"role":"declaration","source":0,"src_end":6917,"src_start":6410},{"artifact":1,"gen_end":12094,"gen_start":10716,"node":48,"role":"declaration","source":0,"src_end":8040,"src_start":6919},{"artifact":1,"gen_end":12690,"gen_start":12094,"node":49,"role":"declaration","source":0,"src_end":8376,"src_start":8042},{"artifact":1,"gen_end":13375,"gen_start":12690,"node":50,"role":"declaration","source":0,"src_end":9001,"src_start":8378},{"artifact":1,"gen_end":13687,"gen_start":13375,"node":51,"role":"declaration","source":0,"src_end":9216,"src_start":9003},{"artifact":1,"gen_end":14075,"gen_start":13687,"node":52,"role":"declaration","source":0,"src_end":9479,"src_start":9218},{"artifact":1,"gen_end":14579,"gen_start":14075,"node":53,"role":"declaration","source":0,"src_end":9760,"src_start":9481},{"artifact":1,"gen_end":15115,"gen_start":14579,"node":54,"role":"declaration","source":0,"src_end":10059,"src_start":9762},{"artifact":1,"gen_end":15305,"gen_start":15115,"node":55,"role":"declaration","source":0,"src_end":10190,"src_start":10061},{"artifact":1,"gen_end":15320,"gen_start":15305,"node":28,"role":"declaration","source":0,"src_end":10226,"src_start":0}],"module":"Recur","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-latex-module"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"},{"id":40,"kind":"semantic-declaration"},{"id":41,"kind":"semantic-declaration"},{"id":42,"kind":"semantic-declaration"},{"id":43,"kind":"semantic-declaration"},{"id":44,"kind":"semantic-declaration"},{"id":45,"kind":"semantic-declaration"},{"id":46,"kind":"semantic-declaration"},{"id":47,"kind":"semantic-declaration"},{"id":48,"kind":"semantic-declaration"},{"id":49,"kind":"semantic-declaration"},{"id":50,"kind":"semantic-declaration"},{"id":51,"kind":"semantic-declaration"},{"id":52,"kind":"semantic-declaration"},{"id":53,"kind":"semantic-declaration"},{"id":54,"kind":"semantic-declaration"},{"id":55,"kind":"semantic-declaration"}],"semantic_id":"e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef","source_id":"1dfbb667271e4224522b0cb0324f88e4615f44a470a437f31cfa4ae7cfbb86ab","sources":[{"id":0,"kind":"file","path":"src/Recur.lex.tex","sha256":"a404c1ed64818f9b54d3bffeb9c1d5518460164acb9f6deecb54756fec3dabf3"}],"spec":"lexlean/source-map/1"} diff --git a/examples/production-coverage/expected/build/maps/Coverage/Syntax.map.json b/examples/production-coverage/expected/build/maps/Coverage/Syntax.map.json index 536cf9032..a5d74f8c0 100644 --- a/examples/production-coverage/expected/build/maps/Coverage/Syntax.map.json +++ b/examples/production-coverage/expected/build/maps/Coverage/Syntax.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/Coverage/Syntax.lean"},{"id":1,"kind":"tex","path":"modules/Coverage/Syntax.tex"}],"mappings":[{"artifact":0,"gen_end":198,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":861,"src_start":0},{"artifact":0,"gen_end":286,"gen_start":198,"node":1,"role":"declaration","source":0,"src_end":255,"src_start":115},{"artifact":0,"gen_end":414,"gen_start":286,"node":2,"role":"declaration","source":0,"src_end":487,"src_start":257},{"artifact":0,"gen_end":517,"gen_start":414,"node":3,"role":"declaration","source":0,"src_end":671,"src_start":489},{"artifact":0,"gen_end":599,"gen_start":517,"node":4,"role":"declaration","source":0,"src_end":825,"src_start":673},{"artifact":0,"gen_end":620,"gen_start":599,"node":0,"role":"declaration","source":0,"src_end":861,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":5,"role":"declaration","source":0,"src_end":861,"src_start":0},{"artifact":1,"gen_end":328,"gen_start":134,"node":6,"role":"declaration","source":0,"src_end":255,"src_start":115},{"artifact":1,"gen_end":637,"gen_start":328,"node":7,"role":"declaration","source":0,"src_end":487,"src_start":257},{"artifact":1,"gen_end":886,"gen_start":637,"node":8,"role":"declaration","source":0,"src_end":671,"src_start":489},{"artifact":1,"gen_end":1078,"gen_start":886,"node":9,"role":"declaration","source":0,"src_end":825,"src_start":673},{"artifact":1,"gen_end":1093,"gen_start":1078,"node":5,"role":"declaration","source":0,"src_end":861,"src_start":0}],"module":"Syntax","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-latex-module"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"}],"semantic_id":"f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd","source_id":"48db6ed4e506113ff1645455e567d1bd194ef0ffd92498a669c2326e3ac407bd","sources":[{"id":0,"kind":"file","path":"src/Syntax.lex.tex","sha256":"4d2d6d5cc65ee405c5b0fe2732babae4d496f16a4e054ac334d2abfa69152dd0"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/Coverage/Syntax.lean"},{"id":1,"kind":"tex","path":"modules/Coverage/Syntax.tex"}],"mappings":[{"artifact":0,"gen_end":198,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":861,"src_start":0},{"artifact":0,"gen_end":286,"gen_start":198,"node":1,"role":"declaration","source":0,"src_end":255,"src_start":115},{"artifact":0,"gen_end":414,"gen_start":286,"node":2,"role":"declaration","source":0,"src_end":487,"src_start":257},{"artifact":0,"gen_end":517,"gen_start":414,"node":3,"role":"declaration","source":0,"src_end":671,"src_start":489},{"artifact":0,"gen_end":599,"gen_start":517,"node":4,"role":"declaration","source":0,"src_end":825,"src_start":673},{"artifact":0,"gen_end":620,"gen_start":599,"node":0,"role":"declaration","source":0,"src_end":861,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":5,"role":"declaration","source":0,"src_end":861,"src_start":0},{"artifact":1,"gen_end":328,"gen_start":134,"node":6,"role":"declaration","source":0,"src_end":255,"src_start":115},{"artifact":1,"gen_end":637,"gen_start":328,"node":7,"role":"declaration","source":0,"src_end":487,"src_start":257},{"artifact":1,"gen_end":886,"gen_start":637,"node":8,"role":"declaration","source":0,"src_end":671,"src_start":489},{"artifact":1,"gen_end":1078,"gen_start":886,"node":9,"role":"declaration","source":0,"src_end":825,"src_start":673},{"artifact":1,"gen_end":1093,"gen_start":1078,"node":5,"role":"declaration","source":0,"src_end":861,"src_start":0}],"module":"Syntax","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-latex-module"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"}],"semantic_id":"e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef","source_id":"1dfbb667271e4224522b0cb0324f88e4615f44a470a437f31cfa4ae7cfbb86ab","sources":[{"id":0,"kind":"file","path":"src/Syntax.lex.tex","sha256":"4d2d6d5cc65ee405c5b0fe2732babae4d496f16a4e054ac334d2abfa69152dd0"}],"spec":"lexlean/source-map/1"} diff --git a/examples/production-coverage/expected/build/maps/Coverage/Types.map.json b/examples/production-coverage/expected/build/maps/Coverage/Types.map.json index 121044b93..230f21ecb 100644 --- a/examples/production-coverage/expected/build/maps/Coverage/Types.map.json +++ b/examples/production-coverage/expected/build/maps/Coverage/Types.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/Coverage/Types.lean"},{"id":1,"kind":"tex","path":"modules/Coverage/Types.tex"}],"mappings":[{"artifact":0,"gen_end":235,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":2571,"src_start":0},{"artifact":0,"gen_end":325,"gen_start":235,"node":1,"role":"declaration","source":0,"src_end":307,"src_start":114},{"artifact":0,"gen_end":404,"gen_start":325,"node":2,"role":"declaration","source":0,"src_end":460,"src_start":309},{"artifact":0,"gen_end":454,"gen_start":404,"node":3,"role":"declaration","source":0,"src_end":585,"src_start":462},{"artifact":0,"gen_end":527,"gen_start":454,"node":4,"role":"declaration","source":0,"src_end":724,"src_start":587},{"artifact":0,"gen_end":582,"gen_start":527,"node":5,"role":"declaration","source":0,"src_end":854,"src_start":726},{"artifact":0,"gen_end":674,"gen_start":582,"node":6,"role":"declaration","source":0,"src_end":1006,"src_start":856},{"artifact":0,"gen_end":922,"gen_start":674,"node":7,"role":"declaration","source":0,"src_end":1270,"src_start":1008},{"artifact":0,"gen_end":1051,"gen_start":922,"node":8,"role":"declaration","source":0,"src_end":1487,"src_start":1272},{"artifact":0,"gen_end":1136,"gen_start":1051,"node":9,"role":"declaration","source":0,"src_end":1646,"src_start":1489},{"artifact":0,"gen_end":1237,"gen_start":1136,"node":10,"role":"declaration","source":0,"src_end":1803,"src_start":1648},{"artifact":0,"gen_end":1494,"gen_start":1237,"node":11,"role":"declaration","source":0,"src_end":2138,"src_start":1805},{"artifact":0,"gen_end":1632,"gen_start":1494,"node":12,"role":"declaration","source":0,"src_end":2336,"src_start":2140},{"artifact":0,"gen_end":1768,"gen_start":1632,"node":13,"role":"declaration","source":0,"src_end":2535,"src_start":2338},{"artifact":0,"gen_end":1788,"gen_start":1768,"node":0,"role":"declaration","source":0,"src_end":2571,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":14,"role":"declaration","source":0,"src_end":2571,"src_start":0},{"artifact":1,"gen_end":379,"gen_start":134,"node":15,"role":"declaration","source":0,"src_end":307,"src_start":114},{"artifact":1,"gen_end":570,"gen_start":379,"node":16,"role":"declaration","source":0,"src_end":460,"src_start":309},{"artifact":1,"gen_end":731,"gen_start":570,"node":17,"role":"declaration","source":0,"src_end":585,"src_start":462},{"artifact":1,"gen_end":949,"gen_start":731,"node":18,"role":"declaration","source":0,"src_end":724,"src_start":587},{"artifact":1,"gen_end":1115,"gen_start":949,"node":19,"role":"declaration","source":0,"src_end":854,"src_start":726},{"artifact":1,"gen_end":1192,"gen_start":1115,"node":20,"role":"declaration","source":0,"src_end":1006,"src_start":856},{"artifact":1,"gen_end":1687,"gen_start":1192,"node":21,"role":"declaration","source":0,"src_end":1270,"src_start":1008},{"artifact":1,"gen_end":2077,"gen_start":1687,"node":22,"role":"declaration","source":0,"src_end":1487,"src_start":1272},{"artifact":1,"gen_end":2443,"gen_start":2077,"node":23,"role":"declaration","source":0,"src_end":1646,"src_start":1489},{"artifact":1,"gen_end":2791,"gen_start":2443,"node":24,"role":"declaration","source":0,"src_end":1803,"src_start":1648},{"artifact":1,"gen_end":3311,"gen_start":2791,"node":25,"role":"declaration","source":0,"src_end":2138,"src_start":1805},{"artifact":1,"gen_end":3747,"gen_start":3311,"node":26,"role":"declaration","source":0,"src_end":2336,"src_start":2140},{"artifact":1,"gen_end":4184,"gen_start":3747,"node":27,"role":"declaration","source":0,"src_end":2535,"src_start":2338},{"artifact":1,"gen_end":4199,"gen_start":4184,"node":14,"role":"declaration","source":0,"src_end":2571,"src_start":0}],"module":"Types","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-latex-module"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"}],"semantic_id":"f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd","source_id":"48db6ed4e506113ff1645455e567d1bd194ef0ffd92498a669c2326e3ac407bd","sources":[{"id":0,"kind":"file","path":"src/Types.lex.tex","sha256":"80d360f45ad31fccc43a06831cc6137982c579a23f3de646be93d3c3ce59193a"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/Coverage/Types.lean"},{"id":1,"kind":"tex","path":"modules/Coverage/Types.tex"}],"mappings":[{"artifact":0,"gen_end":235,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":2571,"src_start":0},{"artifact":0,"gen_end":325,"gen_start":235,"node":1,"role":"declaration","source":0,"src_end":307,"src_start":114},{"artifact":0,"gen_end":404,"gen_start":325,"node":2,"role":"declaration","source":0,"src_end":460,"src_start":309},{"artifact":0,"gen_end":454,"gen_start":404,"node":3,"role":"declaration","source":0,"src_end":585,"src_start":462},{"artifact":0,"gen_end":527,"gen_start":454,"node":4,"role":"declaration","source":0,"src_end":724,"src_start":587},{"artifact":0,"gen_end":582,"gen_start":527,"node":5,"role":"declaration","source":0,"src_end":854,"src_start":726},{"artifact":0,"gen_end":674,"gen_start":582,"node":6,"role":"declaration","source":0,"src_end":1006,"src_start":856},{"artifact":0,"gen_end":922,"gen_start":674,"node":7,"role":"declaration","source":0,"src_end":1270,"src_start":1008},{"artifact":0,"gen_end":1051,"gen_start":922,"node":8,"role":"declaration","source":0,"src_end":1487,"src_start":1272},{"artifact":0,"gen_end":1136,"gen_start":1051,"node":9,"role":"declaration","source":0,"src_end":1646,"src_start":1489},{"artifact":0,"gen_end":1237,"gen_start":1136,"node":10,"role":"declaration","source":0,"src_end":1803,"src_start":1648},{"artifact":0,"gen_end":1494,"gen_start":1237,"node":11,"role":"declaration","source":0,"src_end":2138,"src_start":1805},{"artifact":0,"gen_end":1632,"gen_start":1494,"node":12,"role":"declaration","source":0,"src_end":2336,"src_start":2140},{"artifact":0,"gen_end":1768,"gen_start":1632,"node":13,"role":"declaration","source":0,"src_end":2535,"src_start":2338},{"artifact":0,"gen_end":1788,"gen_start":1768,"node":0,"role":"declaration","source":0,"src_end":2571,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":14,"role":"declaration","source":0,"src_end":2571,"src_start":0},{"artifact":1,"gen_end":379,"gen_start":134,"node":15,"role":"declaration","source":0,"src_end":307,"src_start":114},{"artifact":1,"gen_end":570,"gen_start":379,"node":16,"role":"declaration","source":0,"src_end":460,"src_start":309},{"artifact":1,"gen_end":731,"gen_start":570,"node":17,"role":"declaration","source":0,"src_end":585,"src_start":462},{"artifact":1,"gen_end":949,"gen_start":731,"node":18,"role":"declaration","source":0,"src_end":724,"src_start":587},{"artifact":1,"gen_end":1115,"gen_start":949,"node":19,"role":"declaration","source":0,"src_end":854,"src_start":726},{"artifact":1,"gen_end":1192,"gen_start":1115,"node":20,"role":"declaration","source":0,"src_end":1006,"src_start":856},{"artifact":1,"gen_end":1687,"gen_start":1192,"node":21,"role":"declaration","source":0,"src_end":1270,"src_start":1008},{"artifact":1,"gen_end":2077,"gen_start":1687,"node":22,"role":"declaration","source":0,"src_end":1487,"src_start":1272},{"artifact":1,"gen_end":2443,"gen_start":2077,"node":23,"role":"declaration","source":0,"src_end":1646,"src_start":1489},{"artifact":1,"gen_end":2791,"gen_start":2443,"node":24,"role":"declaration","source":0,"src_end":1803,"src_start":1648},{"artifact":1,"gen_end":3311,"gen_start":2791,"node":25,"role":"declaration","source":0,"src_end":2138,"src_start":1805},{"artifact":1,"gen_end":3747,"gen_start":3311,"node":26,"role":"declaration","source":0,"src_end":2336,"src_start":2140},{"artifact":1,"gen_end":4184,"gen_start":3747,"node":27,"role":"declaration","source":0,"src_end":2535,"src_start":2338},{"artifact":1,"gen_end":4199,"gen_start":4184,"node":14,"role":"declaration","source":0,"src_end":2571,"src_start":0}],"module":"Types","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-latex-module"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"}],"semantic_id":"e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef","source_id":"1dfbb667271e4224522b0cb0324f88e4615f44a470a437f31cfa4ae7cfbb86ab","sources":[{"id":0,"kind":"file","path":"src/Types.lex.tex","sha256":"80d360f45ad31fccc43a06831cc6137982c579a23f3de646be93d3c3ce59193a"}],"spec":"lexlean/source-map/1"} diff --git a/examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Boundary.lean b/examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Boundary.lean similarity index 100% rename from examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Boundary.lean rename to examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Boundary.lean diff --git a/examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Boundary.process.json b/examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Boundary.process.json new file mode 100644 index 000000000..54d804b5e --- /dev/null +++ b/examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Boundary.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Boundary.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Boundary","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Coverage.Boundary.Grove' does not depend on any axioms\n'Coverage.Boundary.Ledger' does not depend on any axioms\n'Coverage.Boundary.groveRoot' does not depend on any axioms\n'Coverage.Boundary.groveTags' does not depend on any axioms\n","stdout_sha256":"7ac4178ad6274022ed3970af26a3d40102c2d98c5667fc6435212b6084c7bf9b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Colls.lean b/examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Colls.lean similarity index 100% rename from examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Colls.lean rename to examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Colls.lean diff --git a/examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Colls.process.json b/examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Colls.process.json new file mode 100644 index 000000000..108698ef9 --- /dev/null +++ b/examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Colls.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Colls.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Colls","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Coverage.Colls.folds' does not depend on any axioms\n'Coverage.Colls.graphs' depends on axioms: [propext]\n'Coverage.Colls.iterations' does not depend on any axioms\n'Coverage.Colls.keyTypes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Coverage.Colls.literals' does not depend on any axioms\n'Coverage.Colls.mapFolding' does not depend on any axioms\n'Coverage.Colls.mapOps' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Coverage.Colls.setOps' does not depend on any axioms\n'Coverage.Colls.stringGraph' depends on axioms: [propext, Classical.choice, Quot.sound]\n","stdout_sha256":"22e38c4026fd96a709d4105d50e6ac65f48242f5e698c1649f8970ca291870cf","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Main.lean b/examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Main.lean similarity index 100% rename from examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Main.lean rename to examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Main.lean diff --git a/examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Main.process.json b/examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Main.process.json new file mode 100644 index 000000000..d272d2bf3 --- /dev/null +++ b/examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Main.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Main.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Main","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Coverage.Main.builders' does not depend on any axioms\n'Coverage.Main.double' does not depend on any axioms\n'Coverage.Main.higher' does not depend on any axioms\n'Coverage.Main.intOps' does not depend on any axioms\n'Coverage.Main.mapped' does not depend on any axioms\n'Coverage.Main.natOps' does not depend on any axioms\n'Coverage.Main.options' does not depend on any axioms\n'Coverage.Main.pairs' does not depend on any axioms\n'Coverage.Main.parity' does not depend on any axioms\n'Coverage.Main.records' does not depend on any axioms\n'Coverage.Main.shapes' does not depend on any axioms\n'Coverage.Main.treeTotal' does not depend on any axioms\n","stdout_sha256":"32540c1f973605f1e559888bfb26220c9d29afc1895ab69b12151845ab1ab3d4","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Prims.lean b/examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Prims.lean similarity index 100% rename from examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Prims.lean rename to examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Prims.lean diff --git a/examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Prims.process.json b/examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Prims.process.json new file mode 100644 index 000000000..7d99715ba --- /dev/null +++ b/examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Prims.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Prims.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Prims","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Coverage.Prims.bits' depends on axioms: [propext, Quot.sound]\n'Coverage.Prims.conversions' depends on axioms: [propext, Quot.sound]\n'Coverage.Prims.decimals' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Coverage.Prims.fixedMiddle' depends on axioms: [propext, Quot.sound]\n'Coverage.Prims.fixedSmall' depends on axioms: [propext, Quot.sound]\n'Coverage.Prims.fixedWide' depends on axioms: [propext, Quot.sound]\n'Coverage.Prims.formats' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Coverage.Prims.sequences' does not depend on any axioms\n'Coverage.Prims.text' depends on axioms: [propext, Classical.choice, Quot.sound]\n","stdout_sha256":"5a91887912fd442dec7b31dc407e6d1b41e6daeae41243ead1c4fabccc1055ff","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.RecRoots.lean b/examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.RecRoots.lean similarity index 100% rename from examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.RecRoots.lean rename to examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.RecRoots.lean diff --git a/examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.RecRoots.process.json b/examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.RecRoots.process.json new file mode 100644 index 000000000..9b1ce5fe5 --- /dev/null +++ b/examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.RecRoots.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.RecRoots.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.RecRoots","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Coverage.RecRoots.rewrite' depends on axioms: [propext, Quot.sound]\n'Coverage.RecRoots.roseTotal' does not depend on any axioms\n'Coverage.RecRoots.syntaxTotal' does not depend on any axioms\n'Coverage.RecRoots.wellFounded' depends on axioms: [propext, Quot.sound]\n","stdout_sha256":"65dea254f3d66b71c29827ea8c418df77244a2d6c6272406aa0c3aecdba32862","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Recur.lean b/examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Recur.lean similarity index 100% rename from examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Recur.lean rename to examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Recur.lean diff --git a/examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Recur.process.json b/examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Recur.process.json new file mode 100644 index 000000000..e622c3aa3 --- /dev/null +++ b/examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Recur.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Recur.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Recur","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Coverage.Recur.countdown' depends on axioms: [propext, Quot.sound]\n'Coverage.Recur.countdown_decreases' depends on axioms: [propext, Quot.sound]\n'Coverage.Recur.exprSize' does not depend on any axioms\n'Coverage.Recur.foldExpr' does not depend on any axioms\n'Coverage.Recur.foldStatement' does not depend on any axioms\n'Coverage.Recur.foldStatements' does not depend on any axioms\n'Coverage.Recur.forestSize' does not depend on any axioms\n'Coverage.Recur.isEven' does not depend on any axioms\n'Coverage.Recur.isOdd' does not depend on any axioms\n'Coverage.Recur.ping' depends on axioms: [propext, Quot.sound]\n'Coverage.Recur.ping_seven' depends on axioms: [propext, Quot.sound]\n'Coverage.Recur.ping_to_pong' depends on axioms: [propext, Quot.sound]\n'Coverage.Recur.pong' depends on axioms: [propext, Quot.sound]\n'Coverage.Recur.pong_to_ping' depends on axioms: [propext, Quot.sound]\n'Coverage.Recur.prune' depends on axioms: [propext, Quot.sound]\n'Coverage.Recur.prune_plus' depends on axioms: [propext, Quot.sound]\n'Coverage.Recur.reassociate' depends on axioms: [propext, Quot.sound]\n'Coverage.Recur.reassociate_literal' depends on axioms: [propext, Quot.sound]\n'Coverage.Recur.reassociate_plus' depends on axioms: [propext, Quot.sound]\n'Coverage.Recur.reduce' depends on axioms: [propext, Quot.sound]\n'Coverage.Recur.reduce_decreases' depends on axioms: [propext, Quot.sound]\n'Coverage.Recur.roseSize' does not depend on any axioms\n'Coverage.Recur.search' depends on axioms: [propext, Quot.sound]\n'Coverage.Recur.search_decreases' depends on axioms: [propext, Quot.sound]\n'Coverage.Recur.statementSize' does not depend on any axioms\n'Coverage.Recur.statementsSize' does not depend on any axioms\n'Coverage.Recur.weight' does not depend on any axioms\n","stdout_sha256":"d5be281da5138fa83388f122cca51fad6e839a61dd0f280ff086a543e047bc81","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Syntax.lean b/examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Syntax.lean similarity index 100% rename from examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Syntax.lean rename to examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Syntax.lean diff --git a/examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Syntax.process.json b/examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Syntax.process.json new file mode 100644 index 000000000..20de5ffe9 --- /dev/null +++ b/examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Syntax.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Syntax.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Syntax","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Coverage.Syntax.Expr' does not depend on any axioms\n'Coverage.Syntax.Rose' does not depend on any axioms\n'Coverage.Syntax.Stmt' does not depend on any axioms\n'Coverage.Syntax.Term' does not depend on any axioms\n","stdout_sha256":"4b09296d7c1adfa883818c08a94022f67e3f873a80f2993277495aa5006c6a85","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Types.lean b/examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Types.lean similarity index 100% rename from examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Types.lean rename to examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Types.lean diff --git a/examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Types.process.json b/examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Types.process.json new file mode 100644 index 000000000..eec73cdb4 --- /dev/null +++ b/examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Types.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Types.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.Coverage.Types","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Coverage.Types.Box' does not depend on any axioms\n'Coverage.Types.Point' does not depend on any axioms\n'Coverage.Types.Shape' does not depend on any axioms\n'Coverage.Types.Tree' does not depend on any axioms\n'Coverage.Types.Weights' does not depend on any axioms\n'Coverage.Types.area' does not depend on any axioms\n'Coverage.Types.defaultWeights' does not depend on any axioms\n'Coverage.Types.isEven' does not depend on any axioms\n'Coverage.Types.isOdd' does not depend on any axioms\n'Coverage.Types.mapList' does not depend on any axioms\n'Coverage.Types.treeSum' does not depend on any axioms\n'Coverage.Types.twice' does not depend on any axioms\n'Coverage.Types.unbox' does not depend on any axioms\n","stdout_sha256":"7d45397351748355105332e8e732d26bd2b66ae398e097665e739867e574b3f7","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.LexLeanRuntime.Collections.lean b/examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.LexLeanRuntime.Collections.lean similarity index 100% rename from examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.LexLeanRuntime.Collections.lean rename to examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.LexLeanRuntime.Collections.lean diff --git a/examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.LexLeanRuntime.Collections.process.json b/examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.LexLeanRuntime.Collections.process.json new file mode 100644 index 000000000..74f04fef6 --- /dev/null +++ b/examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.LexLeanRuntime.Collections.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.LexLeanRuntime.Collections.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.LexLeanRuntime.Collections","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanCollections.Key' does not depend on any axioms\n'LexLeanCollections.Key.casesOn' does not depend on any axioms\n'LexLeanCollections.Key.compare' does not depend on any axioms\n'LexLeanCollections.Key.ctorIdx' does not depend on any axioms\n'LexLeanCollections.Key.mk._flat_ctor' does not depend on any axioms\n'LexLeanCollections.Key.mk.noConfusion' does not depend on any axioms\n'LexLeanCollections.Key.noConfusion' does not depend on any axioms\n'LexLeanCollections.Key.noConfusionType' does not depend on any axioms\n'LexLeanCollections.Key.recOn' does not depend on any axioms\n'LexLeanCollections.compareCodes' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._f' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._sunfold' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._unsafe_rec' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.match_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.match_4' does not depend on any axioms\n'LexLeanCollections.containsElement' does not depend on any axioms\n'LexLeanCollections.containsElement._f' does not depend on any axioms\n'LexLeanCollections.containsElement._sunfold' does not depend on any axioms\n'LexLeanCollections.containsElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.graphNodes' does not depend on any axioms\n'LexLeanCollections.graphReachable' depends on axioms: [propext]\n'LexLeanCollections.graphSuccessors' does not depend on any axioms\n'LexLeanCollections.graphTopological' does not depend on any axioms\n'LexLeanCollections.insertElement' does not depend on any axioms\n'LexLeanCollections.insertElement._f' does not depend on any axioms\n'LexLeanCollections.insertElement._sunfold' does not depend on any axioms\n'LexLeanCollections.insertElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.insertElement.match_1' does not depend on any axioms\n'LexLeanCollections.insertEntry' does not depend on any axioms\n'LexLeanCollections.insertEntry._f' does not depend on any axioms\n'LexLeanCollections.insertEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.insertEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.insertEntry.match_1' does not depend on any axioms\n'LexLeanCollections.insertEntry.match_3' does not depend on any axioms\n'LexLeanCollections.instKeyBool' depends on axioms: [propext]\n'LexLeanCollections.instKeyInt' does not depend on any axioms\n'LexLeanCollections.instKeyInt16' does not depend on any axioms\n'LexLeanCollections.instKeyInt32' does not depend on any axioms\n'LexLeanCollections.instKeyInt64' does not depend on any axioms\n'LexLeanCollections.instKeyInt8' does not depend on any axioms\n'LexLeanCollections.instKeyNat' does not depend on any axioms\n'LexLeanCollections.instKeyProd' depends on axioms: [propext]\n'LexLeanCollections.instKeyString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanCollections.instKeyUInt16' does not depend on any axioms\n'LexLeanCollections.instKeyUInt32' does not depend on any axioms\n'LexLeanCollections.instKeyUInt64' does not depend on any axioms\n'LexLeanCollections.instKeyUInt8' does not depend on any axioms\n'LexLeanCollections.iterate' does not depend on any axioms\n'LexLeanCollections.iterate._f' does not depend on any axioms\n'LexLeanCollections.iterate._sunfold' does not depend on any axioms\n'LexLeanCollections.iterate._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.iterate.match_1' does not depend on any axioms\n'LexLeanCollections.iterateUntil' does not depend on any axioms\n'LexLeanCollections.iterateUntil._f' does not depend on any axioms\n'LexLeanCollections.iterateUntil._sunfold' does not depend on any axioms\n'LexLeanCollections.iterateUntil._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.iterateUntil.match_1' does not depend on any axioms\n'LexLeanCollections.lessThan' depends on axioms: [propext]\n'LexLeanCollections.lessThan._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.lessThan.match_1' depends on axioms: [propext]\n'LexLeanCollections.listFold' does not depend on any axioms\n'LexLeanCollections.lookupEntry' does not depend on any axioms\n'LexLeanCollections.lookupEntry._f' does not depend on any axioms\n'LexLeanCollections.lookupEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.lookupEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.mapContains' does not depend on any axioms\n'LexLeanCollections.mapEntries' does not depend on any axioms\n'LexLeanCollections.mapFold' does not depend on any axioms\n'LexLeanCollections.mapInsert' does not depend on any axioms\n'LexLeanCollections.mapKeys' does not depend on any axioms\n'LexLeanCollections.mapLookup' does not depend on any axioms\n'LexLeanCollections.mapRemove' does not depend on any axioms\n'LexLeanCollections.mapSize' does not depend on any axioms\n'LexLeanCollections.mapValues' does not depend on any axioms\n'LexLeanCollections.reachableFrom' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._f' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._sunfold' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._unsafe_rec' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom.match_1' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom.match_4' does not depend on any axioms\n'LexLeanCollections.removeElement' does not depend on any axioms\n'LexLeanCollections.removeElement._f' does not depend on any axioms\n'LexLeanCollections.removeElement._sunfold' does not depend on any axioms\n'LexLeanCollections.removeElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.removeEntry' does not depend on any axioms\n'LexLeanCollections.removeEntry._f' does not depend on any axioms\n'LexLeanCollections.removeEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.removeEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.setContains' does not depend on any axioms\n'LexLeanCollections.setDifference' does not depend on any axioms\n'LexLeanCollections.setElements' does not depend on any axioms\n'LexLeanCollections.setFold' does not depend on any axioms\n'LexLeanCollections.setInsert' does not depend on any axioms\n'LexLeanCollections.setIntersection' does not depend on any axioms\n'LexLeanCollections.setRemove' does not depend on any axioms\n'LexLeanCollections.setSize' does not depend on any axioms\n'LexLeanCollections.setUnion' does not depend on any axioms\n'LexLeanCollections.topological' does not depend on any axioms\n'LexLeanCollections.topological._f' does not depend on any axioms\n'LexLeanCollections.topological._sunfold' does not depend on any axioms\n'LexLeanCollections.topological._unsafe_rec' does not depend on any axioms\n","stdout_sha256":"b75acc0e99e23684c3cc876eacbfc93f47161cfee8a7440df17fa45f321c8c6a","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.LexLeanRuntime.Laws.lean b/examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.LexLeanRuntime.Laws.lean similarity index 100% rename from examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.LexLeanRuntime.Laws.lean rename to examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.LexLeanRuntime.Laws.lean diff --git a/examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.LexLeanRuntime.Laws.process.json b/examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.LexLeanRuntime.Laws.process.json new file mode 100644 index 000000000..6c4669ad7 --- /dev/null +++ b/examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.LexLeanRuntime.Laws.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.LexLeanRuntime.Laws.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.LexLeanRuntime.Laws","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanCollections.lessThan._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanCollections.lessThan.eq_1' depends on axioms: [propext]\n'LexLeanCollections.listFold.eq_1' does not depend on any axioms\n'LexLeanLaws.append_list' does not depend on any axioms\n'LexLeanLaws.length_list' does not depend on any axioms\n'LexLeanLaws.lessThan_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int16' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int32' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int64' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int8' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_nat' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint16' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint32' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint64' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint8' depends on axioms: [propext]\n'LexLeanLaws.listFold_add_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_add_int_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_add_nat' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_add_nat_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_append' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_cons' does not depend on any axioms\n'LexLeanLaws.listFold_extend' depends on axioms: [propext]\n'LexLeanLaws.listFold_fusion' does not depend on any axioms\n'LexLeanLaws.listFold_nil' does not depend on any axioms\n'LexLeanLaws.listFold_pair' does not depend on any axioms\n'LexLeanLaws.listFold_prepend' depends on axioms: [propext]\n'LexLeanLaws.listFold_sub_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_sub_int_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.mapEntries_self' does not depend on any axioms\n'LexLeanLaws.mapFold_listFold' does not depend on any axioms\n'LexLeanLaws.mapSize_length' does not depend on any axioms\n'LexLeanLaws.quotient_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.quotient_nat' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.remainder_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.remainder_nat' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.setElements_self' does not depend on any axioms\n'LexLeanLaws.setFold_listFold' does not depend on any axioms\n'LexLeanLaws.setSize_length' does not depend on any axioms\n'LexLeanLaws.sumInt' does not depend on any axioms\n'LexLeanLaws.sumInt._f' does not depend on any axioms\n'LexLeanLaws.sumInt._sunfold' does not depend on any axioms\n'LexLeanLaws.sumInt._unsafe_rec' does not depend on any axioms\n'LexLeanLaws.sumInt.eq_1' does not depend on any axioms\n'LexLeanLaws.sumInt.eq_2' does not depend on any axioms\n'LexLeanLaws.sumInt.eq_def' does not depend on any axioms\n'LexLeanLaws.sumInt_add' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_append' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_cons' does not depend on any axioms\n'LexLeanLaws.sumInt_const' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_mul' depends on axioms: [propext]\n'LexLeanLaws.sumInt_mul_right' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_mul_self' depends on axioms: [propext]\n'LexLeanLaws.sumInt_neg' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_neg_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_nil' does not depend on any axioms\n'LexLeanLaws.sumInt_perm' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_reverse' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_sub' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat' does not depend on any axioms\n'LexLeanLaws.sumNat._f' does not depend on any axioms\n'LexLeanLaws.sumNat._sunfold' does not depend on any axioms\n'LexLeanLaws.sumNat._unsafe_rec' does not depend on any axioms\n'LexLeanLaws.sumNat.eq_1' does not depend on any axioms\n'LexLeanLaws.sumNat.eq_2' does not depend on any axioms\n'LexLeanLaws.sumNat.eq_def' does not depend on any axioms\n'LexLeanLaws.sumNat.match_1' does not depend on any axioms\n'LexLeanLaws.sumNat_add' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_append' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_cons' does not depend on any axioms\n'LexLeanLaws.sumNat_const' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_mul' does not depend on any axioms\n'LexLeanLaws.sumNat_mul_right' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_mul_self' does not depend on any axioms\n'LexLeanLaws.sumNat_nil' does not depend on any axioms\n'LexLeanLaws.sumNat_perm' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_reverse' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.tdiv_ediv' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.tmod_emod' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.quotient.eq_1' does not depend on any axioms\n'LexLeanRuntime.remainder.eq_1' does not depend on any axioms\n","stdout_sha256":"a4ba2d39c9cdfd5e40c41c5ccf4726d937fd192fc042b74bb56cc0651e28919e","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.LexLeanRuntime.Portable.lean b/examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.LexLeanRuntime.Portable.lean similarity index 100% rename from examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.LexLeanRuntime.Portable.lean rename to examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.LexLeanRuntime.Portable.lean diff --git a/examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.LexLeanRuntime.Portable.process.json b/examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.LexLeanRuntime.Portable.process.json new file mode 100644 index 000000000..54abb4544 --- /dev/null +++ b/examples/production-coverage/expected/verify/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.LexLeanRuntime.Portable.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.LexLeanRuntime.Portable.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ae05bf7cb47aac48ea11c4a7ac75c7962.LexLeanRuntime.Portable","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanRuntime.Appendable' does not depend on any axioms\n'LexLeanRuntime.Appendable.append' does not depend on any axioms\n'LexLeanRuntime.Appendable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Appendable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Appendable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Appendable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Appendable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Appendable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Appendable.recOn' does not depend on any axioms\n'LexLeanRuntime.Decimal' does not depend on any axioms\n'LexLeanRuntime.Decimal.casesOn' does not depend on any axioms\n'LexLeanRuntime.Decimal.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Decimal.format' does not depend on any axioms\n'LexLeanRuntime.Decimal.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Decimal.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Decimal.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Decimal.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Decimal.parse' does not depend on any axioms\n'LexLeanRuntime.Decimal.recOn' does not depend on any axioms\n'LexLeanRuntime.Fixed' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitAnd' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitNot' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitOr' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitXor' does not depend on any axioms\n'LexLeanRuntime.Fixed.casesOn' does not depend on any axioms\n'LexLeanRuntime.Fixed.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Fixed.fromInt' does not depend on any axioms\n'LexLeanRuntime.Fixed.maximum' does not depend on any axioms\n'LexLeanRuntime.Fixed.minimum' does not depend on any axioms\n'LexLeanRuntime.Fixed.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Fixed.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Fixed.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Fixed.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Fixed.recOn' does not depend on any axioms\n'LexLeanRuntime.Fixed.shiftLeft' does not depend on any axioms\n'LexLeanRuntime.Fixed.shiftRight' does not depend on any axioms\n'LexLeanRuntime.Fixed.toToMathInt' does not depend on any axioms\n'LexLeanRuntime.Indexable' does not depend on any axioms\n'LexLeanRuntime.Indexable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Indexable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Indexable.index' does not depend on any axioms\n'LexLeanRuntime.Indexable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Indexable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Indexable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Indexable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Indexable.recOn' does not depend on any axioms\n'LexLeanRuntime.Lengthable' does not depend on any axioms\n'LexLeanRuntime.Lengthable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Lengthable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Lengthable.length' does not depend on any axioms\n'LexLeanRuntime.Lengthable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Lengthable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Lengthable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Lengthable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Lengthable.recOn' does not depend on any axioms\n'LexLeanRuntime.Quotient' does not depend on any axioms\n'LexLeanRuntime.Quotient.casesOn' does not depend on any axioms\n'LexLeanRuntime.Quotient.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Quotient.isZero' does not depend on any axioms\n'LexLeanRuntime.Quotient.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Quotient.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Quotient.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Quotient.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Quotient.quotient' does not depend on any axioms\n'LexLeanRuntime.Quotient.recOn' does not depend on any axioms\n'LexLeanRuntime.Quotient.remainder' does not depend on any axioms\n'LexLeanRuntime.Sliceable' does not depend on any axioms\n'LexLeanRuntime.Sliceable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Sliceable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Sliceable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Sliceable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Sliceable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Sliceable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Sliceable.recOn' does not depend on any axioms\n'LexLeanRuntime.Sliceable.slice' does not depend on any axioms\n'LexLeanRuntime.ToMathInt' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.casesOn' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.noConfusion' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.recOn' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.toInt' does not depend on any axioms\n'LexLeanRuntime.append' does not depend on any axioms\n'LexLeanRuntime.bitAnd' does not depend on any axioms\n'LexLeanRuntime.bitNot' does not depend on any axioms\n'LexLeanRuntime.bitOr' does not depend on any axioms\n'LexLeanRuntime.bitXor' does not depend on any axioms\n'LexLeanRuntime.checkedAdd' does not depend on any axioms\n'LexLeanRuntime.checkedAddInt64' does not depend on any axioms\n'LexLeanRuntime.checkedConvert' does not depend on any axioms\n'LexLeanRuntime.checkedFromInt' does not depend on any axioms\n'LexLeanRuntime.checkedMultiply' does not depend on any axioms\n'LexLeanRuntime.checkedMultiplyInt64' does not depend on any axioms\n'LexLeanRuntime.checkedMultiplyInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.checkedNegate' does not depend on any axioms\n'LexLeanRuntime.checkedNegateInt64' does not depend on any axioms\n'LexLeanRuntime.checkedQuotient' does not depend on any axioms\n'LexLeanRuntime.checkedQuotientInt64' does not depend on any axioms\n'LexLeanRuntime.checkedSubtract' does not depend on any axioms\n'LexLeanRuntime.checkedSubtractInt64' does not depend on any axioms\n'LexLeanRuntime.compareBytes' depends on axioms: [propext]\n'LexLeanRuntime.divideMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._f' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._sunfold' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.equal' does not depend on any axioms\n'LexLeanRuntime.formatDecimal' does not depend on any axioms\n'LexLeanRuntime.index' does not depend on any axioms\n'LexLeanRuntime.instAppendableByteArray' does not depend on any axioms\n'LexLeanRuntime.instAppendableList' does not depend on any axioms\n'LexLeanRuntime.instDecimalInt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instDecimalInt.match_1' does not depend on any axioms\n'LexLeanRuntime.instDecimalOfFixedOfToString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instFixedInt16' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt32' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt64' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt8' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt16' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt32' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt64' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt8' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instIndexableByteArrayUInt8' does not depend on any axioms\n'LexLeanRuntime.instIndexableList' does not depend on any axioms\n'LexLeanRuntime.instLengthableByteArray' does not depend on any axioms\n'LexLeanRuntime.instLengthableList' does not depend on any axioms\n'LexLeanRuntime.instLengthableString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instQuotientInt' does not depend on any axioms\n'LexLeanRuntime.instQuotientNat' does not depend on any axioms\n'LexLeanRuntime.instSliceableByteArray' does not depend on any axioms\n'LexLeanRuntime.instSliceableList' does not depend on any axioms\n'LexLeanRuntime.instToMathIntInt' does not depend on any axioms\n'LexLeanRuntime.join' depends on axioms: [propext]\n'LexLeanRuntime.length' does not depend on any axioms\n'LexLeanRuntime.listIndex' does not depend on any axioms\n'LexLeanRuntime.listIndex._f' does not depend on any axioms\n'LexLeanRuntime.listIndex._sunfold' does not depend on any axioms\n'LexLeanRuntime.listIndex._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.listIndex.match_1' does not depend on any axioms\n'LexLeanRuntime.magnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.multiply' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._f' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._sunfold' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.negate' does not depend on any axioms\n'LexLeanRuntime.parseDecimal' does not depend on any axioms\n'LexLeanRuntime.quotient' does not depend on any axioms\n'LexLeanRuntime.remainder' does not depend on any axioms\n'LexLeanRuntime.shiftLeft' does not depend on any axioms\n'LexLeanRuntime.shiftRight' does not depend on any axioms\n'LexLeanRuntime.signedMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.slice' does not depend on any axioms\n'LexLeanRuntime.splitExact' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.subtract' does not depend on any axioms\n'LexLeanRuntime.utf8Decode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.utf8Encode' does not depend on any axioms\n","stdout_sha256":"73fea1d9e9e9f0a2f1363b9f284eeeb9e434430e9fa910260b9526bad864641e","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Boundary.process.json b/examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Boundary.process.json deleted file mode 100644 index a4ab351d9..000000000 --- a/examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Boundary.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Boundary.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Boundary","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Coverage.Boundary.Grove' does not depend on any axioms\n'Coverage.Boundary.Ledger' does not depend on any axioms\n'Coverage.Boundary.groveRoot' does not depend on any axioms\n'Coverage.Boundary.groveTags' does not depend on any axioms\n","stdout_sha256":"7ac4178ad6274022ed3970af26a3d40102c2d98c5667fc6435212b6084c7bf9b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Colls.process.json b/examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Colls.process.json deleted file mode 100644 index 18230e7e3..000000000 --- a/examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Colls.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Colls.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Colls","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Coverage.Colls.folds' does not depend on any axioms\n'Coverage.Colls.graphs' depends on axioms: [propext]\n'Coverage.Colls.iterations' does not depend on any axioms\n'Coverage.Colls.keyTypes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Coverage.Colls.literals' does not depend on any axioms\n'Coverage.Colls.mapFolding' does not depend on any axioms\n'Coverage.Colls.mapOps' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Coverage.Colls.setOps' does not depend on any axioms\n'Coverage.Colls.stringGraph' depends on axioms: [propext, Classical.choice, Quot.sound]\n","stdout_sha256":"22e38c4026fd96a709d4105d50e6ac65f48242f5e698c1649f8970ca291870cf","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Main.process.json b/examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Main.process.json deleted file mode 100644 index d4deb6f69..000000000 --- a/examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Main.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Main.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Main","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Coverage.Main.builders' does not depend on any axioms\n'Coverage.Main.double' does not depend on any axioms\n'Coverage.Main.higher' does not depend on any axioms\n'Coverage.Main.intOps' does not depend on any axioms\n'Coverage.Main.mapped' does not depend on any axioms\n'Coverage.Main.natOps' does not depend on any axioms\n'Coverage.Main.options' does not depend on any axioms\n'Coverage.Main.pairs' does not depend on any axioms\n'Coverage.Main.parity' does not depend on any axioms\n'Coverage.Main.records' does not depend on any axioms\n'Coverage.Main.shapes' does not depend on any axioms\n'Coverage.Main.treeTotal' does not depend on any axioms\n","stdout_sha256":"32540c1f973605f1e559888bfb26220c9d29afc1895ab69b12151845ab1ab3d4","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Prims.process.json b/examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Prims.process.json deleted file mode 100644 index 4e1b72900..000000000 --- a/examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Prims.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Prims.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Prims","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Coverage.Prims.bits' depends on axioms: [propext, Quot.sound]\n'Coverage.Prims.conversions' depends on axioms: [propext, Quot.sound]\n'Coverage.Prims.decimals' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Coverage.Prims.fixedMiddle' depends on axioms: [propext, Quot.sound]\n'Coverage.Prims.fixedSmall' depends on axioms: [propext, Quot.sound]\n'Coverage.Prims.fixedWide' depends on axioms: [propext, Quot.sound]\n'Coverage.Prims.formats' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Coverage.Prims.sequences' does not depend on any axioms\n'Coverage.Prims.text' depends on axioms: [propext, Classical.choice, Quot.sound]\n","stdout_sha256":"5a91887912fd442dec7b31dc407e6d1b41e6daeae41243ead1c4fabccc1055ff","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.RecRoots.process.json b/examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.RecRoots.process.json deleted file mode 100644 index 2e3016317..000000000 --- a/examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.RecRoots.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.RecRoots.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.RecRoots","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Coverage.RecRoots.rewrite' depends on axioms: [propext, Quot.sound]\n'Coverage.RecRoots.roseTotal' does not depend on any axioms\n'Coverage.RecRoots.syntaxTotal' does not depend on any axioms\n'Coverage.RecRoots.wellFounded' depends on axioms: [propext, Quot.sound]\n","stdout_sha256":"65dea254f3d66b71c29827ea8c418df77244a2d6c6272406aa0c3aecdba32862","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Recur.process.json b/examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Recur.process.json deleted file mode 100644 index 84002f6c9..000000000 --- a/examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Recur.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Recur.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Recur","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Coverage.Recur.countdown' depends on axioms: [propext, Quot.sound]\n'Coverage.Recur.countdown_decreases' depends on axioms: [propext, Quot.sound]\n'Coverage.Recur.exprSize' does not depend on any axioms\n'Coverage.Recur.foldExpr' does not depend on any axioms\n'Coverage.Recur.foldStatement' does not depend on any axioms\n'Coverage.Recur.foldStatements' does not depend on any axioms\n'Coverage.Recur.forestSize' does not depend on any axioms\n'Coverage.Recur.isEven' does not depend on any axioms\n'Coverage.Recur.isOdd' does not depend on any axioms\n'Coverage.Recur.ping' depends on axioms: [propext, Quot.sound]\n'Coverage.Recur.ping_seven' depends on axioms: [propext, Quot.sound]\n'Coverage.Recur.ping_to_pong' depends on axioms: [propext, Quot.sound]\n'Coverage.Recur.pong' depends on axioms: [propext, Quot.sound]\n'Coverage.Recur.pong_to_ping' depends on axioms: [propext, Quot.sound]\n'Coverage.Recur.prune' depends on axioms: [propext, Quot.sound]\n'Coverage.Recur.prune_plus' depends on axioms: [propext, Quot.sound]\n'Coverage.Recur.reassociate' depends on axioms: [propext, Quot.sound]\n'Coverage.Recur.reassociate_literal' depends on axioms: [propext, Quot.sound]\n'Coverage.Recur.reassociate_plus' depends on axioms: [propext, Quot.sound]\n'Coverage.Recur.reduce' depends on axioms: [propext, Quot.sound]\n'Coverage.Recur.reduce_decreases' depends on axioms: [propext, Quot.sound]\n'Coverage.Recur.roseSize' does not depend on any axioms\n'Coverage.Recur.search' depends on axioms: [propext, Quot.sound]\n'Coverage.Recur.search_decreases' depends on axioms: [propext, Quot.sound]\n'Coverage.Recur.statementSize' does not depend on any axioms\n'Coverage.Recur.statementsSize' does not depend on any axioms\n'Coverage.Recur.weight' does not depend on any axioms\n","stdout_sha256":"d5be281da5138fa83388f122cca51fad6e839a61dd0f280ff086a543e047bc81","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Syntax.process.json b/examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Syntax.process.json deleted file mode 100644 index c921e3421..000000000 --- a/examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Syntax.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Syntax.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Syntax","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Coverage.Syntax.Expr' does not depend on any axioms\n'Coverage.Syntax.Rose' does not depend on any axioms\n'Coverage.Syntax.Stmt' does not depend on any axioms\n'Coverage.Syntax.Term' does not depend on any axioms\n","stdout_sha256":"4b09296d7c1adfa883818c08a94022f67e3f873a80f2993277495aa5006c6a85","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Types.process.json b/examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Types.process.json deleted file mode 100644 index 1010867ec..000000000 --- a/examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Types.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Types.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.Coverage.Types","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Coverage.Types.Box' does not depend on any axioms\n'Coverage.Types.Point' does not depend on any axioms\n'Coverage.Types.Shape' does not depend on any axioms\n'Coverage.Types.Tree' does not depend on any axioms\n'Coverage.Types.Weights' does not depend on any axioms\n'Coverage.Types.area' does not depend on any axioms\n'Coverage.Types.defaultWeights' does not depend on any axioms\n'Coverage.Types.isEven' does not depend on any axioms\n'Coverage.Types.isOdd' does not depend on any axioms\n'Coverage.Types.mapList' does not depend on any axioms\n'Coverage.Types.treeSum' does not depend on any axioms\n'Coverage.Types.twice' does not depend on any axioms\n'Coverage.Types.unbox' does not depend on any axioms\n","stdout_sha256":"7d45397351748355105332e8e732d26bd2b66ae398e097665e739867e574b3f7","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.LexLeanRuntime.Collections.process.json b/examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.LexLeanRuntime.Collections.process.json deleted file mode 100644 index 70da36a00..000000000 --- a/examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.LexLeanRuntime.Collections.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.LexLeanRuntime.Collections.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.LexLeanRuntime.Collections","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanCollections.Key' does not depend on any axioms\n'LexLeanCollections.Key.casesOn' does not depend on any axioms\n'LexLeanCollections.Key.compare' does not depend on any axioms\n'LexLeanCollections.Key.ctorIdx' does not depend on any axioms\n'LexLeanCollections.Key.mk._flat_ctor' does not depend on any axioms\n'LexLeanCollections.Key.mk.noConfusion' does not depend on any axioms\n'LexLeanCollections.Key.noConfusion' does not depend on any axioms\n'LexLeanCollections.Key.noConfusionType' does not depend on any axioms\n'LexLeanCollections.Key.recOn' does not depend on any axioms\n'LexLeanCollections.compareCodes' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._f' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._sunfold' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._unsafe_rec' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.match_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.match_4' does not depend on any axioms\n'LexLeanCollections.containsElement' does not depend on any axioms\n'LexLeanCollections.containsElement._f' does not depend on any axioms\n'LexLeanCollections.containsElement._sunfold' does not depend on any axioms\n'LexLeanCollections.containsElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.graphNodes' does not depend on any axioms\n'LexLeanCollections.graphReachable' depends on axioms: [propext]\n'LexLeanCollections.graphSuccessors' does not depend on any axioms\n'LexLeanCollections.graphTopological' does not depend on any axioms\n'LexLeanCollections.insertElement' does not depend on any axioms\n'LexLeanCollections.insertElement._f' does not depend on any axioms\n'LexLeanCollections.insertElement._sunfold' does not depend on any axioms\n'LexLeanCollections.insertElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.insertElement.match_1' does not depend on any axioms\n'LexLeanCollections.insertEntry' does not depend on any axioms\n'LexLeanCollections.insertEntry._f' does not depend on any axioms\n'LexLeanCollections.insertEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.insertEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.insertEntry.match_1' does not depend on any axioms\n'LexLeanCollections.insertEntry.match_3' does not depend on any axioms\n'LexLeanCollections.instKeyBool' depends on axioms: [propext]\n'LexLeanCollections.instKeyInt' does not depend on any axioms\n'LexLeanCollections.instKeyInt16' does not depend on any axioms\n'LexLeanCollections.instKeyInt32' does not depend on any axioms\n'LexLeanCollections.instKeyInt64' does not depend on any axioms\n'LexLeanCollections.instKeyInt8' does not depend on any axioms\n'LexLeanCollections.instKeyNat' does not depend on any axioms\n'LexLeanCollections.instKeyProd' depends on axioms: [propext]\n'LexLeanCollections.instKeyString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanCollections.instKeyUInt16' does not depend on any axioms\n'LexLeanCollections.instKeyUInt32' does not depend on any axioms\n'LexLeanCollections.instKeyUInt64' does not depend on any axioms\n'LexLeanCollections.instKeyUInt8' does not depend on any axioms\n'LexLeanCollections.iterate' does not depend on any axioms\n'LexLeanCollections.iterate._f' does not depend on any axioms\n'LexLeanCollections.iterate._sunfold' does not depend on any axioms\n'LexLeanCollections.iterate._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.iterate.match_1' does not depend on any axioms\n'LexLeanCollections.iterateUntil' does not depend on any axioms\n'LexLeanCollections.iterateUntil._f' does not depend on any axioms\n'LexLeanCollections.iterateUntil._sunfold' does not depend on any axioms\n'LexLeanCollections.iterateUntil._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.iterateUntil.match_1' does not depend on any axioms\n'LexLeanCollections.lessThan' depends on axioms: [propext]\n'LexLeanCollections.lessThan._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.lessThan.match_1' depends on axioms: [propext]\n'LexLeanCollections.listFold' does not depend on any axioms\n'LexLeanCollections.lookupEntry' does not depend on any axioms\n'LexLeanCollections.lookupEntry._f' does not depend on any axioms\n'LexLeanCollections.lookupEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.lookupEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.mapContains' does not depend on any axioms\n'LexLeanCollections.mapEntries' does not depend on any axioms\n'LexLeanCollections.mapFold' does not depend on any axioms\n'LexLeanCollections.mapInsert' does not depend on any axioms\n'LexLeanCollections.mapKeys' does not depend on any axioms\n'LexLeanCollections.mapLookup' does not depend on any axioms\n'LexLeanCollections.mapRemove' does not depend on any axioms\n'LexLeanCollections.mapSize' does not depend on any axioms\n'LexLeanCollections.mapValues' does not depend on any axioms\n'LexLeanCollections.reachableFrom' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._f' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._sunfold' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._unsafe_rec' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom.match_1' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom.match_4' does not depend on any axioms\n'LexLeanCollections.removeElement' does not depend on any axioms\n'LexLeanCollections.removeElement._f' does not depend on any axioms\n'LexLeanCollections.removeElement._sunfold' does not depend on any axioms\n'LexLeanCollections.removeElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.removeEntry' does not depend on any axioms\n'LexLeanCollections.removeEntry._f' does not depend on any axioms\n'LexLeanCollections.removeEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.removeEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.setContains' does not depend on any axioms\n'LexLeanCollections.setDifference' does not depend on any axioms\n'LexLeanCollections.setElements' does not depend on any axioms\n'LexLeanCollections.setFold' does not depend on any axioms\n'LexLeanCollections.setInsert' does not depend on any axioms\n'LexLeanCollections.setIntersection' does not depend on any axioms\n'LexLeanCollections.setRemove' does not depend on any axioms\n'LexLeanCollections.setSize' does not depend on any axioms\n'LexLeanCollections.setUnion' does not depend on any axioms\n'LexLeanCollections.topological' does not depend on any axioms\n'LexLeanCollections.topological._f' does not depend on any axioms\n'LexLeanCollections.topological._sunfold' does not depend on any axioms\n'LexLeanCollections.topological._unsafe_rec' does not depend on any axioms\n","stdout_sha256":"b75acc0e99e23684c3cc876eacbfc93f47161cfee8a7440df17fa45f321c8c6a","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.LexLeanRuntime.Laws.process.json b/examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.LexLeanRuntime.Laws.process.json deleted file mode 100644 index acc49a74a..000000000 --- a/examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.LexLeanRuntime.Laws.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.LexLeanRuntime.Laws.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.LexLeanRuntime.Laws","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanCollections.lessThan._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanCollections.lessThan.eq_1' depends on axioms: [propext]\n'LexLeanCollections.listFold.eq_1' does not depend on any axioms\n'LexLeanLaws.append_list' does not depend on any axioms\n'LexLeanLaws.length_list' does not depend on any axioms\n'LexLeanLaws.lessThan_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int16' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int32' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int64' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int8' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_nat' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint16' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint32' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint64' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint8' depends on axioms: [propext]\n'LexLeanLaws.listFold_add_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_add_int_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_add_nat' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_add_nat_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_append' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_cons' does not depend on any axioms\n'LexLeanLaws.listFold_extend' depends on axioms: [propext]\n'LexLeanLaws.listFold_fusion' does not depend on any axioms\n'LexLeanLaws.listFold_nil' does not depend on any axioms\n'LexLeanLaws.listFold_pair' does not depend on any axioms\n'LexLeanLaws.listFold_prepend' depends on axioms: [propext]\n'LexLeanLaws.listFold_sub_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_sub_int_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.mapEntries_self' does not depend on any axioms\n'LexLeanLaws.mapFold_listFold' does not depend on any axioms\n'LexLeanLaws.mapSize_length' does not depend on any axioms\n'LexLeanLaws.quotient_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.quotient_nat' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.remainder_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.remainder_nat' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.setElements_self' does not depend on any axioms\n'LexLeanLaws.setFold_listFold' does not depend on any axioms\n'LexLeanLaws.setSize_length' does not depend on any axioms\n'LexLeanLaws.sumInt' does not depend on any axioms\n'LexLeanLaws.sumInt._f' does not depend on any axioms\n'LexLeanLaws.sumInt._sunfold' does not depend on any axioms\n'LexLeanLaws.sumInt._unsafe_rec' does not depend on any axioms\n'LexLeanLaws.sumInt.eq_1' does not depend on any axioms\n'LexLeanLaws.sumInt.eq_2' does not depend on any axioms\n'LexLeanLaws.sumInt.eq_def' does not depend on any axioms\n'LexLeanLaws.sumInt_add' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_append' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_cons' does not depend on any axioms\n'LexLeanLaws.sumInt_const' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_mul' depends on axioms: [propext]\n'LexLeanLaws.sumInt_mul_right' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_mul_self' depends on axioms: [propext]\n'LexLeanLaws.sumInt_neg' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_neg_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_nil' does not depend on any axioms\n'LexLeanLaws.sumInt_perm' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_reverse' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_sub' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat' does not depend on any axioms\n'LexLeanLaws.sumNat._f' does not depend on any axioms\n'LexLeanLaws.sumNat._sunfold' does not depend on any axioms\n'LexLeanLaws.sumNat._unsafe_rec' does not depend on any axioms\n'LexLeanLaws.sumNat.eq_1' does not depend on any axioms\n'LexLeanLaws.sumNat.eq_2' does not depend on any axioms\n'LexLeanLaws.sumNat.eq_def' does not depend on any axioms\n'LexLeanLaws.sumNat.match_1' does not depend on any axioms\n'LexLeanLaws.sumNat_add' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_append' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_cons' does not depend on any axioms\n'LexLeanLaws.sumNat_const' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_mul' does not depend on any axioms\n'LexLeanLaws.sumNat_mul_right' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_mul_self' does not depend on any axioms\n'LexLeanLaws.sumNat_nil' does not depend on any axioms\n'LexLeanLaws.sumNat_perm' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_reverse' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.tdiv_ediv' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.tmod_emod' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.quotient.eq_1' does not depend on any axioms\n'LexLeanRuntime.remainder.eq_1' does not depend on any axioms\n","stdout_sha256":"a4ba2d39c9cdfd5e40c41c5ccf4726d937fd192fc042b74bb56cc0651e28919e","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.LexLeanRuntime.Portable.process.json b/examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.LexLeanRuntime.Portable.process.json deleted file mode 100644 index 852a4e75a..000000000 --- a/examples/production-coverage/expected/verify/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.LexLeanRuntime.Portable.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.LexLeanRuntime.Portable.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Af3572b43e36d5c62b7601d32507ebc3a.LexLeanRuntime.Portable","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanRuntime.Appendable' does not depend on any axioms\n'LexLeanRuntime.Appendable.append' does not depend on any axioms\n'LexLeanRuntime.Appendable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Appendable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Appendable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Appendable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Appendable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Appendable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Appendable.recOn' does not depend on any axioms\n'LexLeanRuntime.Decimal' does not depend on any axioms\n'LexLeanRuntime.Decimal.casesOn' does not depend on any axioms\n'LexLeanRuntime.Decimal.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Decimal.format' does not depend on any axioms\n'LexLeanRuntime.Decimal.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Decimal.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Decimal.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Decimal.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Decimal.parse' does not depend on any axioms\n'LexLeanRuntime.Decimal.recOn' does not depend on any axioms\n'LexLeanRuntime.Fixed' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitAnd' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitNot' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitOr' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitXor' does not depend on any axioms\n'LexLeanRuntime.Fixed.casesOn' does not depend on any axioms\n'LexLeanRuntime.Fixed.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Fixed.fromInt' does not depend on any axioms\n'LexLeanRuntime.Fixed.maximum' does not depend on any axioms\n'LexLeanRuntime.Fixed.minimum' does not depend on any axioms\n'LexLeanRuntime.Fixed.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Fixed.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Fixed.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Fixed.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Fixed.recOn' does not depend on any axioms\n'LexLeanRuntime.Fixed.shiftLeft' does not depend on any axioms\n'LexLeanRuntime.Fixed.shiftRight' does not depend on any axioms\n'LexLeanRuntime.Fixed.toToMathInt' does not depend on any axioms\n'LexLeanRuntime.Indexable' does not depend on any axioms\n'LexLeanRuntime.Indexable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Indexable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Indexable.index' does not depend on any axioms\n'LexLeanRuntime.Indexable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Indexable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Indexable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Indexable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Indexable.recOn' does not depend on any axioms\n'LexLeanRuntime.Lengthable' does not depend on any axioms\n'LexLeanRuntime.Lengthable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Lengthable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Lengthable.length' does not depend on any axioms\n'LexLeanRuntime.Lengthable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Lengthable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Lengthable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Lengthable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Lengthable.recOn' does not depend on any axioms\n'LexLeanRuntime.Quotient' does not depend on any axioms\n'LexLeanRuntime.Quotient.casesOn' does not depend on any axioms\n'LexLeanRuntime.Quotient.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Quotient.isZero' does not depend on any axioms\n'LexLeanRuntime.Quotient.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Quotient.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Quotient.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Quotient.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Quotient.quotient' does not depend on any axioms\n'LexLeanRuntime.Quotient.recOn' does not depend on any axioms\n'LexLeanRuntime.Quotient.remainder' does not depend on any axioms\n'LexLeanRuntime.Sliceable' does not depend on any axioms\n'LexLeanRuntime.Sliceable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Sliceable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Sliceable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Sliceable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Sliceable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Sliceable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Sliceable.recOn' does not depend on any axioms\n'LexLeanRuntime.Sliceable.slice' does not depend on any axioms\n'LexLeanRuntime.ToMathInt' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.casesOn' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.noConfusion' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.recOn' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.toInt' does not depend on any axioms\n'LexLeanRuntime.append' does not depend on any axioms\n'LexLeanRuntime.bitAnd' does not depend on any axioms\n'LexLeanRuntime.bitNot' does not depend on any axioms\n'LexLeanRuntime.bitOr' does not depend on any axioms\n'LexLeanRuntime.bitXor' does not depend on any axioms\n'LexLeanRuntime.checkedAdd' does not depend on any axioms\n'LexLeanRuntime.checkedAddInt64' does not depend on any axioms\n'LexLeanRuntime.checkedConvert' does not depend on any axioms\n'LexLeanRuntime.checkedFromInt' does not depend on any axioms\n'LexLeanRuntime.checkedMultiply' does not depend on any axioms\n'LexLeanRuntime.checkedMultiplyInt64' does not depend on any axioms\n'LexLeanRuntime.checkedMultiplyInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.checkedNegate' does not depend on any axioms\n'LexLeanRuntime.checkedNegateInt64' does not depend on any axioms\n'LexLeanRuntime.checkedQuotient' does not depend on any axioms\n'LexLeanRuntime.checkedQuotientInt64' does not depend on any axioms\n'LexLeanRuntime.checkedSubtract' does not depend on any axioms\n'LexLeanRuntime.checkedSubtractInt64' does not depend on any axioms\n'LexLeanRuntime.compareBytes' depends on axioms: [propext]\n'LexLeanRuntime.divideMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._f' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._sunfold' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.equal' does not depend on any axioms\n'LexLeanRuntime.formatDecimal' does not depend on any axioms\n'LexLeanRuntime.index' does not depend on any axioms\n'LexLeanRuntime.instAppendableByteArray' does not depend on any axioms\n'LexLeanRuntime.instAppendableList' does not depend on any axioms\n'LexLeanRuntime.instDecimalInt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instDecimalInt.match_1' does not depend on any axioms\n'LexLeanRuntime.instDecimalOfFixedOfToString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instFixedInt16' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt32' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt64' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt8' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt16' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt32' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt64' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt8' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instIndexableByteArrayUInt8' does not depend on any axioms\n'LexLeanRuntime.instIndexableList' does not depend on any axioms\n'LexLeanRuntime.instLengthableByteArray' does not depend on any axioms\n'LexLeanRuntime.instLengthableList' does not depend on any axioms\n'LexLeanRuntime.instLengthableString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instQuotientInt' does not depend on any axioms\n'LexLeanRuntime.instQuotientNat' does not depend on any axioms\n'LexLeanRuntime.instSliceableByteArray' does not depend on any axioms\n'LexLeanRuntime.instSliceableList' does not depend on any axioms\n'LexLeanRuntime.instToMathIntInt' does not depend on any axioms\n'LexLeanRuntime.join' depends on axioms: [propext]\n'LexLeanRuntime.length' does not depend on any axioms\n'LexLeanRuntime.listIndex' does not depend on any axioms\n'LexLeanRuntime.listIndex._f' does not depend on any axioms\n'LexLeanRuntime.listIndex._sunfold' does not depend on any axioms\n'LexLeanRuntime.listIndex._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.listIndex.match_1' does not depend on any axioms\n'LexLeanRuntime.magnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.multiply' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._f' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._sunfold' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.negate' does not depend on any axioms\n'LexLeanRuntime.parseDecimal' does not depend on any axioms\n'LexLeanRuntime.quotient' does not depend on any axioms\n'LexLeanRuntime.remainder' does not depend on any axioms\n'LexLeanRuntime.shiftLeft' does not depend on any axioms\n'LexLeanRuntime.shiftRight' does not depend on any axioms\n'LexLeanRuntime.signedMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.slice' does not depend on any axioms\n'LexLeanRuntime.splitExact' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.subtract' does not depend on any axioms\n'LexLeanRuntime.utf8Decode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.utf8Encode' does not depend on any axioms\n","stdout_sha256":"73fea1d9e9e9f0a2f1363b9f284eeeb9e434430e9fa910260b9526bad864641e","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/extract/LexLeanExtract.Xf3572b43e36d5c62b7601d32507ebc3a.lean b/examples/production-coverage/expected/verify/extract/LexLeanExtract.Xe05bf7cb47aac48ea11c4a7ac75c7962.lean similarity index 100% rename from examples/production-coverage/expected/verify/extract/LexLeanExtract.Xf3572b43e36d5c62b7601d32507ebc3a.lean rename to examples/production-coverage/expected/verify/extract/LexLeanExtract.Xe05bf7cb47aac48ea11c4a7ac75c7962.lean diff --git a/examples/production-coverage/expected/verify/extract/process.json b/examples/production-coverage/expected/verify/extract/process.json index abc6734c3..bded471d5 100644 --- a/examples/production-coverage/expected/verify/extract/process.json +++ b/examples/production-coverage/expected/verify/extract/process.json @@ -1 +1 @@ -{"argv":["env","lean","$STAGING/extract/LexLeanExtract.Xf3572b43e36d5c62b7601d32507ebc3a.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanExtract.Xf3572b43e36d5c62b7601d32507ebc3a","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"{\"spec\":\"lexlean/lcnf-extraction/2\",\"lean\":{\"version\":\"4.32.1\",\"githash\":\"f054605aea4b840552cca2e725580bffd1e1b704\"},\"roots\":[\"Coverage.Boundary.groveRoot\",\"Coverage.Colls.mapOps\",\"Coverage.Colls.mapFolding\",\"Coverage.Colls.setOps\",\"Coverage.Colls.folds\",\"Coverage.Colls.iterations\",\"Coverage.Colls.graphs\",\"Coverage.Colls.stringGraph\",\"Coverage.Colls.keyTypes\",\"Coverage.Colls.literals\",\"Coverage.Main.natOps\",\"Coverage.Main.intOps\",\"Coverage.Main.shapes\",\"Coverage.Main.treeTotal\",\"Coverage.Main.records\",\"Coverage.Main.options\",\"Coverage.Main.builders\",\"Coverage.Main.pairs\",\"Coverage.Main.higher\",\"Coverage.Main.mapped\",\"Coverage.Main.parity\",\"Coverage.Prims.fixedSmall\",\"Coverage.Prims.fixedMiddle\",\"Coverage.Prims.fixedWide\",\"Coverage.Prims.bits\",\"Coverage.Prims.conversions\",\"Coverage.Prims.sequences\",\"Coverage.Prims.decimals\",\"Coverage.Prims.formats\",\"Coverage.Prims.text\",\"Coverage.RecRoots.roseTotal\",\"Coverage.RecRoots.syntaxTotal\",\"Coverage.RecRoots.wellFounded\",\"Coverage.RecRoots.rewrite\"],\"constants\":[{\"name\":\"LexLeanCollections.Key\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanCollections.Key.mk\",\"parameters\":1,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}}}}]}},{\"name\":\"LexLeanCollections.compareCodes\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Char\",\"List\",\"Ordering\",\"List.brecOn\",\"LexLeanCollections.compareCodes._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.86\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.87\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.97\",\"parameters\":[{\"id\":\"_uniq.95\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Ordering.eq\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.96\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.97\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.108\",\"parameters\":[{\"id\":\"_uniq.105\",\"type\":{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.106\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Ordering.lt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.107\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.108\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.115\",\"parameters\":[{\"id\":\"_uniq.112\",\"type\":{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.113\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Ordering.gt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.114\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.115\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.173\",\"parameters\":[{\"id\":\"_uniq.135\",\"type\":{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.136\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.137\",\"type\":{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.138\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.144\",\"parameters\":[{\"id\":\"_uniq.142\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.143\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.compareCodes\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.136\"},{\"kind\":\"fvar\",\"id\":\"_uniq.138\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.143\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.145\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.144\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.150\",\"parameters\":[{\"id\":\"_uniq.149\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.149\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.151\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.150\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.157\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Ord\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instOrdNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.158\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Ord\",\"index\":0,\"value\":\"_uniq.157\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.159\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Char\",\"index\":0,\"value\":\"_uniq.135\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.160\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.159\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.161\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Char\",\"index\":0,\"value\":\"_uniq.137\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.162\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.161\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.163\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.158\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.160\"},{\"kind\":\"fvar\",\"id\":\"_uniq.162\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Ordering\",\"result_type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"discriminant\":\"_uniq.163\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Ordering.eq\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.164\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.165\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.145\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.164\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.165\"}}}},{\"kind\":\"default\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.170\",\"parameters\":[{\"id\":\"_uniq.168\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.169\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.151\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.163\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.169\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.171\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.170\",\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"any\"}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.171\"}}}}]}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.174\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.173\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"discriminant\":\"_uniq.86\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"discriminant\":\"_uniq.87\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.191\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.192\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.98\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.191\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.192\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.193\",\"type\":{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.194\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.195\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.109\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.193\"},{\"kind\":\"fvar\",\"id\":\"_uniq.194\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.195\"}}}]}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.197\",\"type\":{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.198\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"discriminant\":\"_uniq.87\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.207\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.116\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.197\"},{\"kind\":\"fvar\",\"id\":\"_uniq.198\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.207\"}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.208\",\"type\":{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.209\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.210\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.174\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.197\"},{\"kind\":\"fvar\",\"id\":\"_uniq.198\"},{\"kind\":\"fvar\",\"id\":\"_uniq.208\"},{\"kind\":\"fvar\",\"id\":\"_uniq.209\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.210\"}}}]}}]}}}}}}}}}},\"uses\":[\"Char\",\"List\",\"Nat\",\"Ord\",\"Ordering\",\"PUnit\",\"UInt32\",\"instOrdNat\",\"LexLeanCollections.compareCodes\",\"List.cons\",\"List.nil\",\"Ordering.eq\",\"Ordering.gt\",\"Ordering.lt\",\"UInt32.toNat\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.containsElement\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"List\",\"LexLeanCollections.Key\",\"List.brecOn\",\"LexLeanCollections.containsElement._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}}}},\"parameters\":[{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"borrow\":false},{\"id\":\"_uniq.62\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},\"borrow\":false},{\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.71\",\"parameters\":[{\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.70\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.71\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.115\",\"parameters\":[{\"id\":\"_uniq.84\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},\"borrow\":false},{\"id\":\"_uniq.85\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.71\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.94\",\"parameters\":[{\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.93\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.94\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.99\",\"parameters\":[{\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.containsElement\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},{\"kind\":\"fvar\",\"id\":\"_uniq.85\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.98\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.99\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanCollections.Key\",\"index\":0,\"value\":\"_uniq.61\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.106\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Ordering\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.107\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Ordering.lt\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.90\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.109\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Ordering.eq\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.110\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.111\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.95\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.110\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.111\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Ordering.gt\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.113\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.100\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.112\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.113\"}}}}]}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.115\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.63\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.72\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.125\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.126\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.127\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},\"borrow\":false},{\"id\":\"_uniq.128\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.129\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.116\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.127\"},{\"kind\":\"fvar\",\"id\":\"_uniq.128\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.129\"}}}]}}}}}},\"uses\":[\"Bool\",\"List\",\"Ordering\",\"PUnit\",\"Bool.false\",\"Bool.true\",\"LexLeanCollections.Key\",\"LexLeanCollections.containsElement\",\"List.cons\",\"List.nil\",\"Ordering.eq\",\"Ordering.gt\",\"Ordering.lt\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.graphNodes\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Prod\",\"LexLeanCollections.Key\",\"LexLeanCollections.insertElement\",\"List.foldl\",\"List.nil\",\"Prod.fst\",\"Prod.snd\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]}}}},\"parameters\":[{\"id\":\"_uniq.19\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"borrow\":false},{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]}]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.36\",\"parameters\":[{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"borrow\":false},{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.31\",\"parameters\":[{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"borrow\":false},{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.insertElement\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.30\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.25\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.insertElement\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.25\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.foldl\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.35\"}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.foldl\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.38\"}}}}},\"uses\":[\"List\",\"Prod\",\"LexLeanCollections.Key\",\"LexLeanCollections.insertElement\",\"List.foldl\",\"List.nil\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.graphReachable\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Prod\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"HAdd.hAdd\",\"LexLeanCollections.Key\",\"LexLeanCollections.graphNodes\",\"LexLeanCollections.reachableFrom\",\"List.cons\",\"List.length\",\"List.nil\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}},\"parameters\":[{\"id\":\"_uniq.19\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"borrow\":false},{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]}]}]},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.24\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.graphNodes\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"List.lengthTR\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.29\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.25\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.reachableFrom\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.34\"}}}}}}}}}}}}}},\"uses\":[\"Add\",\"HAdd\",\"List\",\"Nat\",\"OfNat\",\"Prod\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"LexLeanCollections.Key\",\"LexLeanCollections.graphNodes\",\"LexLeanCollections.reachableFrom\",\"List.cons\",\"List.lengthTR\",\"List.nil\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.graphSuccessors\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Prod\",\"LexLeanCollections.Key\",\"LexLeanCollections.lookupEntry\",\"List.nil\",\"Option.getD\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}},\"parameters\":[{\"id\":\"_uniq.40\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"borrow\":false},{\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]}]}]},\"borrow\":false},{\"id\":\"_uniq.43\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.40\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.50\",\"parameters\":[{\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.49\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.50\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.57\",\"parameters\":[{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.56\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.57\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.lookupEntry\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"discriminant\":\"_uniq.66\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.58\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.68\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.69\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.51\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.69\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.70\"}}}]}}}}}}},\"uses\":[\"List\",\"Option\",\"PUnit\",\"Prod\",\"LexLeanCollections.Key\",\"LexLeanCollections.lookupEntry\",\"List.nil\",\"Option.none\",\"Option.some\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.graphTopological\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Prod\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"HAdd.hAdd\",\"LexLeanCollections.Key\",\"LexLeanCollections.graphNodes\",\"LexLeanCollections.topological\",\"List.length\",\"List.nil\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]}]}}}},\"parameters\":[{\"id\":\"_uniq.18\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"borrow\":false},{\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]}]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.graphNodes\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.22\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.25\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"List.lengthTR\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.29\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.26\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.topological\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.33\"}}}}}}}}}}}}}},\"uses\":[\"Add\",\"HAdd\",\"List\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"LexLeanCollections.Key\",\"LexLeanCollections.graphNodes\",\"LexLeanCollections.topological\",\"List.lengthTR\",\"List.nil\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.insertElement\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"LexLeanCollections.Key\",\"List.brecOn\",\"LexLeanCollections.insertElement._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}},\"parameters\":[{\"id\":\"_uniq.62\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"borrow\":false},{\"id\":\"_uniq.64\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},\"borrow\":false},{\"id\":\"_uniq.65\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.74\",\"parameters\":[{\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.72\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.73\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.74\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.123\",\"parameters\":[{\"id\":\"_uniq.87\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},\"borrow\":false},{\"id\":\"_uniq.88\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.96\",\"parameters\":[{\"id\":\"_uniq.93\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"},{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.94\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.95\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.96\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.101\",\"parameters\":[{\"id\":\"_uniq.99\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"},{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.100\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.101\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.107\",\"parameters\":[{\"id\":\"_uniq.104\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.insertElement\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"},{\"kind\":\"fvar\",\"id\":\"_uniq.105\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.106\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.107\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanCollections.Key\",\"index\":0,\"value\":\"_uniq.63\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.114\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Ordering\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"discriminant\":\"_uniq.115\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Ordering.lt\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.97\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.116\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.117\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Ordering.eq\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.118\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.102\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.118\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.119\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Ordering.gt\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.120\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.121\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.108\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.120\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.121\"}}}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.124\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.123\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"discriminant\":\"_uniq.65\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.75\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.133\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.134\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.135\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},\"borrow\":false},{\"id\":\"_uniq.136\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.137\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.124\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.135\"},{\"kind\":\"fvar\",\"id\":\"_uniq.136\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.137\"}}}]}}}}}},\"uses\":[\"List\",\"Ordering\",\"PUnit\",\"LexLeanCollections.Key\",\"LexLeanCollections.insertElement\",\"List.cons\",\"List.nil\",\"Ordering.eq\",\"Ordering.gt\",\"Ordering.lt\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.insertEntry\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Prod\",\"LexLeanCollections.Key\",\"List.brecOn\",\"LexLeanCollections.insertEntry._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":4},{\"kind\":\"bvar\",\"index\":3}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":5},{\"kind\":\"bvar\",\"index\":4}]}]}}}}}}},\"parameters\":[{\"id\":\"_uniq.80\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.81\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.82\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}]},\"borrow\":false},{\"id\":\"_uniq.83\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},\"borrow\":false},{\"id\":\"_uniq.84\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.81\"},\"borrow\":false},{\"id\":\"_uniq.85\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.95\",\"parameters\":[{\"id\":\"_uniq.91\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.92\"},{\"kind\":\"fvar\",\"id\":\"_uniq.93\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.94\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.95\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.153\",\"parameters\":[{\"id\":\"_uniq.112\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},\"borrow\":false},{\"id\":\"_uniq.113\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.81\"},\"borrow\":false},{\"id\":\"_uniq.114\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.81\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]}}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.124\",\"parameters\":[{\"id\":\"_uniq.119\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.120\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.121\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.112\"},{\"kind\":\"fvar\",\"id\":\"_uniq.113\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.121\"},{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.120\"},{\"kind\":\"fvar\",\"id\":\"_uniq.122\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.123\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.124\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.130\",\"parameters\":[{\"id\":\"_uniq.127\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.128\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.129\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.128\"},{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.129\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.131\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.130\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.137\",\"parameters\":[{\"id\":\"_uniq.133\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.112\"},{\"kind\":\"fvar\",\"id\":\"_uniq.113\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.135\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.insertEntry\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.82\"},{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.134\"},{\"kind\":\"fvar\",\"id\":\"_uniq.135\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.136\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.138\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.137\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.144\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanCollections.Key\",\"index\":0,\"value\":\"_uniq.82\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.145\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.144\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.112\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Ordering\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]},\"discriminant\":\"_uniq.145\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Ordering.lt\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.146\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.147\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.125\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.146\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.147\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Ordering.eq\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.148\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.149\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.131\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.148\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.149\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Ordering.gt\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.150\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.151\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.138\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.150\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.151\"}}}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.154\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.81\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]}}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.153\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]},\"discriminant\":\"_uniq.85\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.163\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.164\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.96\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.163\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.164\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.165\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]},\"borrow\":false},{\"id\":\"_uniq.166\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]},\"borrow\":false}],\"code\":{\"kind\":\"cases\",\"type_name\":\"Prod\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]},\"discriminant\":\"_uniq.165\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Prod.mk\",\"parameters\":[{\"id\":\"_uniq.176\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},\"borrow\":false},{\"id\":\"_uniq.177\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.81\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.178\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.154\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.176\"},{\"kind\":\"fvar\",\"id\":\"_uniq.177\"},{\"kind\":\"fvar\",\"id\":\"_uniq.166\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.178\"}}}]}}]}}}}}},\"uses\":[\"List\",\"Ordering\",\"PUnit\",\"Prod\",\"LexLeanCollections.Key\",\"LexLeanCollections.insertEntry\",\"List.cons\",\"List.nil\",\"Ordering.eq\",\"Ordering.gt\",\"Ordering.lt\",\"Prod.mk\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.instKeyBool\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"instOrdBool\",\"Ord.compare\",\"LexLeanCollections.Key.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.1\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Ord\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instOrdBool\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.2\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Ord\",\"index\":0,\"value\":\"_uniq.1\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.3\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.2\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.3\"}}}}},\"uses\":[\"Bool\",\"Ord\",\"Ordering\",\"instOrdBool\",\"LexLeanCollections.Key\",\"LexLeanCollections.Key.mk\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.instKeyInt\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"instOrdInt\",\"Ord.compare\",\"LexLeanCollections.Key.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.1\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Ord\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instOrdInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.2\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Ord\",\"index\":0,\"value\":\"_uniq.1\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.3\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.2\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.3\"}}}}},\"uses\":[\"Int\",\"Ord\",\"Ordering\",\"instOrdInt\",\"LexLeanCollections.Key\",\"LexLeanCollections.Key.mk\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.instKeyInt8\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"Int8\",\"instOrdInt\",\"Int8.toInt\",\"Ord.compare\",\"LexLeanCollections.Key.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.12\",\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Ord\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instOrdInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Ord\",\"index\":0,\"value\":\"_uniq.7\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int8.toInt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int8.toInt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.8\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.11\"}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.13\"}}}},\"uses\":[\"Int\",\"Int8\",\"Ord\",\"Ordering\",\"instOrdInt\",\"Int8.toInt\",\"LexLeanCollections.Key\",\"LexLeanCollections.Key.mk\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.instKeyNat\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOrdNat\",\"Ord.compare\",\"LexLeanCollections.Key.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.1\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Ord\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instOrdNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Ord\",\"index\":0,\"value\":\"_uniq.1\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.11\"}}}}},\"uses\":[\"Nat\",\"Ord\",\"Ordering\",\"instOrdNat\",\"LexLeanCollections.Key\",\"LexLeanCollections.Key.mk\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.instKeyProd\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Ordering\",\"Prod\",\"Unit\",\"LexLeanCollections.Key\",\"Prod.fst\",\"Prod.snd\",\"LexLeanCollections.Key.compare\",\"LexLeanCollections.Key.mk\",\"LexLeanCollections.compareCodes.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3},{\"kind\":\"bvar\",\"index\":2}]}]}}}}},\"parameters\":[{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"borrow\":false},{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.82\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"borrow\":false},{\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.56\",\"parameters\":[{\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanCollections.Key\",\"index\":0,\"value\":\"_uniq.37\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.44\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.45\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.52\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.55\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.62\",\"parameters\":[{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.61\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.62\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanCollections.Key\",\"index\":0,\"value\":\"_uniq.36\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.44\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.45\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.69\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.70\"},{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Ordering\",\"result_type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"discriminant\":\"_uniq.72\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Ordering.eq\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.57\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.74\"}}}},{\"kind\":\"default\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.79\",\"parameters\":[{\"id\":\"_uniq.77\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.63\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.72\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.78\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.79\",\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"any\"}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.80\"}}}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.82\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.83\"}}}},\"uses\":[\"Ordering\",\"PUnit\",\"Prod\",\"LexLeanCollections.Key\",\"Ordering.eq\",\"Unit.unit\",\"LexLeanCollections.Key.mk\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.instKeyString\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"String\",\"LexLeanCollections.compareCodes\",\"String.toList\",\"LexLeanCollections.Key.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.10\",\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"String.toList\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"String.toList\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.compareCodes\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.9\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.15\"}}}},\"uses\":[\"Char\",\"List\",\"Ordering\",\"String\",\"LexLeanCollections.Key\",\"LexLeanCollections.compareCodes\",\"String.toList\",\"LexLeanCollections.Key.mk\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.instKeyUInt64\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"UInt64\",\"instOrdNat\",\"Ord.compare\",\"UInt64.toNat\",\"LexLeanCollections.Key.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.12\",\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Ord\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instOrdNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Ord\",\"index\":0,\"value\":\"_uniq.7\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.8\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.11\"}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.13\"}}}},\"uses\":[\"Nat\",\"Ord\",\"Ordering\",\"UInt64\",\"instOrdNat\",\"LexLeanCollections.Key\",\"UInt64.toNat\",\"LexLeanCollections.Key.mk\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.iterate\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Nat.brecOn\",\"LexLeanCollections.iterate._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"bvar\",\"index\":1}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}},\"parameters\":[{\"id\":\"_uniq.67\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.67\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}},\"borrow\":false},{\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.72\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.67\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.78\",\"parameters\":[{\"id\":\"_uniq.77\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.67\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.67\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.77\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.67\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.78\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.92\",\"parameters\":[{\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.89\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.67\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.67\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.67\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.70\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.89\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.67\"},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterate\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.70\"},{\"kind\":\"fvar\",\"id\":\"_uniq.88\"},{\"kind\":\"fvar\",\"id\":\"_uniq.90\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.91\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.67\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.92\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Nat\",\"result_type\":{\"kind\":\"fvar\",\"id\":\"_uniq.67\"},\"discriminant\":\"_uniq.71\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Nat.zero\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.67\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.79\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.72\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.99\"}}},{\"kind\":\"constructor\",\"constructor\":\"Nat.succ\",\"parameters\":[{\"id\":\"_uniq.100\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.67\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.93\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.100\"},{\"kind\":\"fvar\",\"id\":\"_uniq.72\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.101\"}}}]}}}}}},\"uses\":[\"Nat\",\"LexLeanCollections.iterate\",\"Nat.succ\",\"Nat.zero\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.iterateUntil\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Nat\",\"Option\",\"Prod\",\"Nat.brecOn\",\"LexLeanCollections.iterateUntil._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}}}}},\"parameters\":[{\"id\":\"_uniq.65\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.68\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]}},\"borrow\":false},{\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.79\",\"parameters\":[{\"id\":\"_uniq.76\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"},{\"kind\":\"fvar\",\"id\":\"_uniq.77\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.78\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.79\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.121\",\"parameters\":[{\"id\":\"_uniq.91\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.92\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.101\",\"parameters\":[{\"id\":\"_uniq.98\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.92\"},{\"kind\":\"fvar\",\"id\":\"_uniq.99\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.100\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.101\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.106\",\"parameters\":[{\"id\":\"_uniq.104\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.68\"},{\"kind\":\"fvar\",\"id\":\"_uniq.91\"},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.105\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.106\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.68\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"discriminant\":\"_uniq.115\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.102\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.116\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.117\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.118\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.107\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.118\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.119\"}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.121\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Nat\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"discriminant\":\"_uniq.69\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Nat.zero\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.128\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.80\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.128\"}}},{\"kind\":\"constructor\",\"constructor\":\"Nat.succ\",\"parameters\":[{\"id\":\"_uniq.129\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.130\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.122\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.129\"},{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.130\"}}}]}}}}}},\"uses\":[\"Bool\",\"Nat\",\"Option\",\"PUnit\",\"Prod\",\"Bool.false\",\"Bool.true\",\"LexLeanCollections.iterateUntil\",\"Nat.succ\",\"Nat.zero\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.listFold\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"List.foldl\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":2}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}}},\"parameters\":[{\"id\":\"_uniq.53\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}}},\"borrow\":false},{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},\"borrow\":false},{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},\"value\":{\"kind\":\"const\",\"name\":\"List.foldl\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.64\"}}},\"uses\":[\"List\",\"List.foldl\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.lookupEntry\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Option\",\"Prod\",\"LexLeanCollections.Key\",\"List.brecOn\",\"LexLeanCollections.lookupEntry._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3},{\"kind\":\"bvar\",\"index\":2}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}}},\"parameters\":[{\"id\":\"_uniq.73\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.74\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"borrow\":false},{\"id\":\"_uniq.76\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},\"borrow\":false},{\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.85\",\"parameters\":[{\"id\":\"_uniq.83\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.84\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.85\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.134\",\"parameters\":[{\"id\":\"_uniq.102\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},\"borrow\":false},{\"id\":\"_uniq.103\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.74\"},\"borrow\":false},{\"id\":\"_uniq.104\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.74\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]}}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.85\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.113\",\"parameters\":[{\"id\":\"_uniq.111\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.112\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.113\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.118\",\"parameters\":[{\"id\":\"_uniq.116\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.lookupEntry\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.117\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.118\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanCollections.Key\",\"index\":0,\"value\":\"_uniq.75\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.125\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.76\"},{\"kind\":\"fvar\",\"id\":\"_uniq.102\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Ordering\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"discriminant\":\"_uniq.126\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Ordering.lt\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.127\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.128\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.109\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.127\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.128\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Ordering.eq\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.129\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.130\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.114\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.129\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.130\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Ordering.gt\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.131\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.132\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.119\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.131\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.132\"}}}}]}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.135\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.74\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]}}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.134\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"discriminant\":\"_uniq.77\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.144\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.145\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.86\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.144\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.145\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.146\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"borrow\":false},{\"id\":\"_uniq.147\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]}]},\"borrow\":false}],\"code\":{\"kind\":\"cases\",\"type_name\":\"Prod\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"discriminant\":\"_uniq.146\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Prod.mk\",\"parameters\":[{\"id\":\"_uniq.157\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},\"borrow\":false},{\"id\":\"_uniq.158\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.74\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.159\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.135\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.157\"},{\"kind\":\"fvar\",\"id\":\"_uniq.158\"},{\"kind\":\"fvar\",\"id\":\"_uniq.147\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.159\"}}}]}}]}}}}}},\"uses\":[\"List\",\"Option\",\"Ordering\",\"PUnit\",\"Prod\",\"LexLeanCollections.Key\",\"LexLeanCollections.lookupEntry\",\"List.cons\",\"List.nil\",\"Option.none\",\"Option.some\",\"Ordering.eq\",\"Ordering.gt\",\"Ordering.lt\",\"Prod.mk\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.mapContains\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Prod\",\"LexLeanCollections.Key\",\"LexLeanCollections.lookupEntry\",\"Option.isSome\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2},{\"kind\":\"bvar\",\"index\":1}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":3},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}}}}},\"parameters\":[{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"borrow\":false},{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]}]},\"borrow\":false},{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.lookupEntry\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Option.isSome\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.30\"}}}},\"uses\":[\"Bool\",\"List\",\"Option\",\"Prod\",\"LexLeanCollections.Key\",\"LexLeanCollections.lookupEntry\",\"Option.isSome\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.mapEntries\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Prod\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1},{\"kind\":\"bvar\",\"index\":0}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2},{\"kind\":\"bvar\",\"index\":1}]}]}}}},\"parameters\":[{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.18\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"return\",\"id\":\"_uniq.18\"}},\"uses\":[\"List\",\"Prod\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.mapFold\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Prod\",\"List.foldl\",\"Prod.fst\",\"Prod.snd\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":3},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":3},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":4},{\"kind\":\"bvar\",\"index\":3}]}]},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}}}},\"parameters\":[{\"id\":\"_uniq.69\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.71\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.78\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.71\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.69\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.70\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}}}},\"borrow\":false},{\"id\":\"_uniq.79\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.71\"},\"borrow\":false},{\"id\":\"_uniq.80\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.69\"},{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.93\",\"parameters\":[{\"id\":\"_uniq.85\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.71\"},\"borrow\":false},{\"id\":\"_uniq.86\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.69\"},{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.71\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.69\"},{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.69\"},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.86\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.70\"},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.86\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.71\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.78\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.85\"},{\"kind\":\"fvar\",\"id\":\"_uniq.90\"},{\"kind\":\"fvar\",\"id\":\"_uniq.91\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.92\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.71\"},\"value\":{\"kind\":\"const\",\"name\":\"List.foldl\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.69\"},{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.93\"},{\"kind\":\"fvar\",\"id\":\"_uniq.79\"},{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.94\"}}}},\"uses\":[\"List\",\"Prod\",\"List.foldl\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.mapInsert\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Prod\",\"LexLeanCollections.Key\",\"LexLeanCollections.insertEntry\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2},{\"kind\":\"bvar\",\"index\":1}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":3},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":3},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":5},{\"kind\":\"bvar\",\"index\":4}]}]}}}}}}},\"parameters\":[{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"borrow\":false},{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]}]},\"borrow\":false},{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},\"borrow\":false},{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.insertEntry\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.34\"}}},\"uses\":[\"List\",\"Prod\",\"LexLeanCollections.Key\",\"LexLeanCollections.insertEntry\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.mapKeys\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Prod\",\"List.map\",\"Prod.fst\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1},{\"kind\":\"bvar\",\"index\":0}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]}}}},\"parameters\":[{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.18\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.23\",\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.21\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.22\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.mapTR\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.24\"}}}},\"uses\":[\"List\",\"Prod\",\"List.mapTR\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.mapLookup\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Prod\",\"LexLeanCollections.Key\",\"LexLeanCollections.lookupEntry\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2},{\"kind\":\"bvar\",\"index\":1}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":3},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}}},\"parameters\":[{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"borrow\":false},{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]}]},\"borrow\":false},{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.lookupEntry\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.29\"}}},\"uses\":[\"List\",\"Option\",\"Prod\",\"LexLeanCollections.Key\",\"LexLeanCollections.lookupEntry\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.mapRemove\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Prod\",\"LexLeanCollections.Key\",\"LexLeanCollections.removeEntry\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2},{\"kind\":\"bvar\",\"index\":1}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":3},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":4},{\"kind\":\"bvar\",\"index\":3}]}]}}}}}},\"parameters\":[{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"borrow\":false},{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]}]},\"borrow\":false},{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.removeEntry\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.29\"}}},\"uses\":[\"List\",\"Prod\",\"LexLeanCollections.Key\",\"LexLeanCollections.removeEntry\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.mapSize\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Prod\",\"List.length\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1},{\"kind\":\"bvar\",\"index\":0}]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}}},\"parameters\":[{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.18\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"List.lengthTR\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.19\"}}},\"uses\":[\"List\",\"Nat\",\"Prod\",\"List.lengthTR\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.mapValues\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Prod\",\"List.map\",\"Prod.snd\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1},{\"kind\":\"bvar\",\"index\":0}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}}}},\"parameters\":[{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.18\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.23\",\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.21\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.22\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.mapTR\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.24\"}}}},\"uses\":[\"List\",\"Prod\",\"List.mapTR\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.reachableFrom\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Prod\",\"LexLeanCollections.Key\",\"Nat.brecOn\",\"LexLeanCollections.reachableFrom._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":4}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":5}]}}}}}}},\"parameters\":[{\"id\":\"_uniq.103\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.104\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"borrow\":false},{\"id\":\"_uniq.105\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]}]}]},\"borrow\":false},{\"id\":\"_uniq.106\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.107\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"borrow\":false},{\"id\":\"_uniq.108\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.119\",\"parameters\":[{\"id\":\"_uniq.117\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"borrow\":false},{\"id\":\"_uniq.118\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]}}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.118\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.120\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.119\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.238\",\"parameters\":[{\"id\":\"_uniq.136\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.137\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"borrow\":false},{\"id\":\"_uniq.138\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]}}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.198\",\"parameters\":[{\"id\":\"_uniq.144\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"borrow\":false},{\"id\":\"_uniq.145\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.103\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.103\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.195\",\"parameters\":[{\"id\":\"_uniq.148\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"borrow\":false},{\"id\":\"_uniq.149\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.103\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.103\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.165\",\"parameters\":[{\"id\":\"_uniq.163\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.164\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.164\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.166\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.165\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.170\",\"parameters\":[{\"id\":\"_uniq.168\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.169\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.containsElement\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"},{\"kind\":\"fvar\",\"id\":\"_uniq.149\"},{\"kind\":\"fvar\",\"id\":\"_uniq.148\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.169\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.171\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.170\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.176\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.containsElement\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"},{\"kind\":\"fvar\",\"id\":\"_uniq.149\"},{\"kind\":\"fvar\",\"id\":\"_uniq.138\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.188\",\"parameters\":[{\"id\":\"_uniq.181\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.182\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.183\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.181\"},{\"kind\":\"fvar\",\"id\":\"_uniq.182\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"discriminant\":\"_uniq.183\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.184\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.185\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.insertElement\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"},{\"kind\":\"fvar\",\"id\":\"_uniq.149\"},{\"kind\":\"fvar\",\"id\":\"_uniq.148\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.185\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.186\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.148\"}}]}}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.191\",\"parameters\":[{\"id\":\"_uniq.189\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.190\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.171\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.189\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.188\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.190\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.194\",\"parameters\":[{\"id\":\"_uniq.192\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.193\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.166\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.192\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.188\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.193\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"discriminant\":\"_uniq.176\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.177\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.191\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.177\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.179\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.194\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.179\"}]}}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.196\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.graphSuccessors\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"},{\"kind\":\"fvar\",\"id\":\"_uniq.105\"},{\"kind\":\"fvar\",\"id\":\"_uniq.145\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.197\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.foldl\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.195\"},{\"kind\":\"fvar\",\"id\":\"_uniq.144\"},{\"kind\":\"fvar\",\"id\":\"_uniq.196\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.197\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.199\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.200\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.foldl\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.198\"},{\"kind\":\"fvar\",\"id\":\"_uniq.199\"},{\"kind\":\"fvar\",\"id\":\"_uniq.137\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.201\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.200\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.206\",\"parameters\":[{\"id\":\"_uniq.205\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.138\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.207\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.206\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.220\",\"parameters\":[{\"id\":\"_uniq.211\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.217\",\"parameters\":[{\"id\":\"_uniq.214\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"borrow\":false},{\"id\":\"_uniq.215\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.103\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.103\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.216\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.insertElement\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"},{\"kind\":\"fvar\",\"id\":\"_uniq.215\"},{\"kind\":\"fvar\",\"id\":\"_uniq.214\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.216\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.218\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.foldl\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.217\"},{\"kind\":\"fvar\",\"id\":\"_uniq.138\"},{\"kind\":\"fvar\",\"id\":\"_uniq.201\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.219\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.reachableFrom\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"},{\"kind\":\"fvar\",\"id\":\"_uniq.105\"},{\"kind\":\"fvar\",\"id\":\"_uniq.136\"},{\"kind\":\"fvar\",\"id\":\"_uniq.201\"},{\"kind\":\"fvar\",\"id\":\"_uniq.218\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.219\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.221\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.220\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"discriminant\":\"_uniq.201\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.229\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.230\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.207\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.229\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.230\"}}}},{\"kind\":\"default\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.235\",\"parameters\":[{\"id\":\"_uniq.233\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.234\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.221\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.201\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.234\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.236\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.235\",\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"any\"}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.236\"}}}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.239\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]}}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.238\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Nat\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"discriminant\":\"_uniq.106\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Nat.zero\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.245\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.120\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.107\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.245\"}}},{\"kind\":\"constructor\",\"constructor\":\"Nat.succ\",\"parameters\":[{\"id\":\"_uniq.246\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.247\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.239\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.246\"},{\"kind\":\"fvar\",\"id\":\"_uniq.107\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.247\"}}}]}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"List\",\"Nat\",\"PUnit\",\"Prod\",\"instDecidableEqBool\",\"Bool.false\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanCollections.Key\",\"LexLeanCollections.containsElement\",\"LexLeanCollections.graphSuccessors\",\"LexLeanCollections.insertElement\",\"LexLeanCollections.reachableFrom\",\"List.foldl\",\"List.nil\",\"Nat.succ\",\"Nat.zero\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.removeElement\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"LexLeanCollections.Key\",\"List.brecOn\",\"LexLeanCollections.removeElement._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}},\"parameters\":[{\"id\":\"_uniq.62\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"borrow\":false},{\"id\":\"_uniq.64\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},\"borrow\":false},{\"id\":\"_uniq.65\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.73\",\"parameters\":[{\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.72\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.73\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.120\",\"parameters\":[{\"id\":\"_uniq.86\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},\"borrow\":false},{\"id\":\"_uniq.87\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.94\",\"parameters\":[{\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.86\"},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.93\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.94\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.98\",\"parameters\":[{\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.87\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.98\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.104\",\"parameters\":[{\"id\":\"_uniq.101\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.removeElement\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.86\"},{\"kind\":\"fvar\",\"id\":\"_uniq.102\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.103\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.104\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.111\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanCollections.Key\",\"index\":0,\"value\":\"_uniq.63\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.111\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.86\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Ordering\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"discriminant\":\"_uniq.112\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Ordering.lt\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.113\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.95\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.113\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.114\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Ordering.eq\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.99\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.115\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.116\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Ordering.gt\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.118\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.105\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.117\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.118\"}}}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.121\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.120\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"discriminant\":\"_uniq.65\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.130\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.131\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.74\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.130\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.131\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.132\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},\"borrow\":false},{\"id\":\"_uniq.133\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.121\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.132\"},{\"kind\":\"fvar\",\"id\":\"_uniq.133\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.134\"}}}]}}}}}},\"uses\":[\"List\",\"Ordering\",\"PUnit\",\"LexLeanCollections.Key\",\"LexLeanCollections.removeElement\",\"List.cons\",\"List.nil\",\"Ordering.eq\",\"Ordering.gt\",\"Ordering.lt\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.removeEntry\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Prod\",\"LexLeanCollections.Key\",\"List.brecOn\",\"LexLeanCollections.removeEntry._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3},{\"kind\":\"bvar\",\"index\":2}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":4},{\"kind\":\"bvar\",\"index\":3}]}]}}}}}},\"parameters\":[{\"id\":\"_uniq.75\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.76\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"}]},\"borrow\":false},{\"id\":\"_uniq.78\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},\"borrow\":false},{\"id\":\"_uniq.79\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.87\",\"parameters\":[{\"id\":\"_uniq.85\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.86\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.87\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.141\",\"parameters\":[{\"id\":\"_uniq.104\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},\"borrow\":false},{\"id\":\"_uniq.105\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.76\"},\"borrow\":false},{\"id\":\"_uniq.106\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.76\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]}}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.114\",\"parameters\":[{\"id\":\"_uniq.111\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.75\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"},{\"kind\":\"fvar\",\"id\":\"_uniq.105\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.113\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.112\"},{\"kind\":\"fvar\",\"id\":\"_uniq.106\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.113\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.114\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.118\",\"parameters\":[{\"id\":\"_uniq.117\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.106\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.118\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.125\",\"parameters\":[{\"id\":\"_uniq.121\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.75\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"},{\"kind\":\"fvar\",\"id\":\"_uniq.105\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.removeEntry\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.75\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.77\"},{\"kind\":\"fvar\",\"id\":\"_uniq.78\"},{\"kind\":\"fvar\",\"id\":\"_uniq.106\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.124\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.122\"},{\"kind\":\"fvar\",\"id\":\"_uniq.123\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.124\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.125\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.132\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanCollections.Key\",\"index\":0,\"value\":\"_uniq.77\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.132\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.78\"},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Ordering\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]},\"discriminant\":\"_uniq.133\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Ordering.lt\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.135\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.115\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.134\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.135\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Ordering.eq\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.137\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.119\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.136\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.137\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Ordering.gt\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.138\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.139\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.126\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.138\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.139\"}}}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.142\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.76\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]}}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.141\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]},\"discriminant\":\"_uniq.79\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.151\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.152\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.88\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.151\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.152\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.153\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"borrow\":false},{\"id\":\"_uniq.154\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]},\"borrow\":false}],\"code\":{\"kind\":\"cases\",\"type_name\":\"Prod\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]},\"discriminant\":\"_uniq.153\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Prod.mk\",\"parameters\":[{\"id\":\"_uniq.164\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},\"borrow\":false},{\"id\":\"_uniq.165\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.76\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.166\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.142\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.164\"},{\"kind\":\"fvar\",\"id\":\"_uniq.165\"},{\"kind\":\"fvar\",\"id\":\"_uniq.154\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.166\"}}}]}}]}}}}}},\"uses\":[\"List\",\"Ordering\",\"PUnit\",\"Prod\",\"LexLeanCollections.Key\",\"LexLeanCollections.removeEntry\",\"List.cons\",\"List.nil\",\"Ordering.eq\",\"Ordering.gt\",\"Ordering.lt\",\"Prod.mk\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.setContains\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"LexLeanCollections.Key\",\"LexLeanCollections.containsElement\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}}}},\"parameters\":[{\"id\":\"_uniq.19\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"borrow\":false},{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.containsElement\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.23\"}}},\"uses\":[\"Bool\",\"List\",\"LexLeanCollections.Key\",\"LexLeanCollections.containsElement\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.setDifference\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Bool.not\",\"LexLeanCollections.Key\",\"LexLeanCollections.containsElement\",\"List.filter\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}},\"parameters\":[{\"id\":\"_uniq.20\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"borrow\":false},{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.28\",\"parameters\":[{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.containsElement\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.not\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.27\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.filterTR\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.29\"}}}},\"uses\":[\"Bool\",\"List\",\"Bool.not\",\"LexLeanCollections.Key\",\"LexLeanCollections.containsElement\",\"List.filterTR\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.setElements\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"return\",\"id\":\"_uniq.12\"}},\"uses\":[\"List\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.setFold\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"List.foldl\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":2}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}}},\"parameters\":[{\"id\":\"_uniq.53\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}}},\"borrow\":false},{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},\"borrow\":false},{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},\"value\":{\"kind\":\"const\",\"name\":\"List.foldl\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.64\"}}},\"uses\":[\"List\",\"List.foldl\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.setInsert\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"LexLeanCollections.Key\",\"LexLeanCollections.insertElement\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}},\"parameters\":[{\"id\":\"_uniq.19\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"borrow\":false},{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.insertElement\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.23\"}}},\"uses\":[\"List\",\"LexLeanCollections.Key\",\"LexLeanCollections.insertElement\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.setIntersection\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"LexLeanCollections.Key\",\"LexLeanCollections.containsElement\",\"List.filter\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}},\"parameters\":[{\"id\":\"_uniq.20\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"borrow\":false},{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.27\",\"parameters\":[{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.containsElement\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.26\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.filterTR\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.28\"}}}},\"uses\":[\"Bool\",\"List\",\"LexLeanCollections.Key\",\"LexLeanCollections.containsElement\",\"List.filterTR\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.setRemove\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"LexLeanCollections.Key\",\"LexLeanCollections.removeElement\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}},\"parameters\":[{\"id\":\"_uniq.19\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"borrow\":false},{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.removeElement\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.23\"}}},\"uses\":[\"List\",\"LexLeanCollections.Key\",\"LexLeanCollections.removeElement\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.setSize\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"List.length\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"List.lengthTR\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.13\"}}},\"uses\":[\"List\",\"Nat\",\"List.lengthTR\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.setUnion\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"LexLeanCollections.Key\",\"LexLeanCollections.insertElement\",\"List.foldl\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}},\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"borrow\":false},{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"borrow\":false},{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.30\",\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"borrow\":false},{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.insertElement\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.29\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.foldl\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}}}},\"uses\":[\"List\",\"LexLeanCollections.Key\",\"LexLeanCollections.insertElement\",\"List.foldl\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.topological\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Option\",\"Prod\",\"LexLeanCollections.Key\",\"Nat.brecOn\",\"LexLeanCollections.topological._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":4}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":5}]}]}}}}}}},\"parameters\":[{\"id\":\"_uniq.92\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.93\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"borrow\":false},{\"id\":\"_uniq.94\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}]}]},\"borrow\":false},{\"id\":\"_uniq.95\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.96\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"borrow\":false},{\"id\":\"_uniq.97\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.125\",\"parameters\":[{\"id\":\"_uniq.106\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"borrow\":false},{\"id\":\"_uniq.107\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"List.isEmpty\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.106\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.118\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.116\"},{\"kind\":\"fvar\",\"id\":\"_uniq.117\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}]},\"discriminant\":\"_uniq.118\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.119\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.120\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.120\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.121\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.reverse\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.107\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.122\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.123\"}}}}]}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.125\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.207\",\"parameters\":[{\"id\":\"_uniq.141\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.142\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"borrow\":false},{\"id\":\"_uniq.143\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}]}}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.167\",\"parameters\":[{\"id\":\"_uniq.149\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.158\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"List.isEmpty\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.142\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.159\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.160\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.158\"},{\"kind\":\"fvar\",\"id\":\"_uniq.159\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}]},\"discriminant\":\"_uniq.160\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.161\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.162\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.162\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.163\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.164\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.reverse\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.143\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.165\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.164\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.165\"}}}}]}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.168\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.167\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.180\",\"parameters\":[{\"id\":\"_uniq.175\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.92\"},\"borrow\":false},{\"id\":\"_uniq.176\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.92\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.177\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.removeElement\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.93\"},{\"kind\":\"fvar\",\"id\":\"_uniq.175\"},{\"kind\":\"fvar\",\"id\":\"_uniq.142\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.178\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.175\"},{\"kind\":\"fvar\",\"id\":\"_uniq.143\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.179\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.topological\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.93\"},{\"kind\":\"fvar\",\"id\":\"_uniq.94\"},{\"kind\":\"fvar\",\"id\":\"_uniq.141\"},{\"kind\":\"fvar\",\"id\":\"_uniq.177\"},{\"kind\":\"fvar\",\"id\":\"_uniq.178\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.179\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.181\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.92\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.180\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.199\",\"parameters\":[{\"id\":\"_uniq.191\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.92\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.92\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.197\",\"parameters\":[{\"id\":\"_uniq.193\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.92\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.92\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.194\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.graphSuccessors\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.93\"},{\"kind\":\"fvar\",\"id\":\"_uniq.94\"},{\"kind\":\"fvar\",\"id\":\"_uniq.193\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.195\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.containsElement\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.93\"},{\"kind\":\"fvar\",\"id\":\"_uniq.191\"},{\"kind\":\"fvar\",\"id\":\"_uniq.194\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.196\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.not\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.195\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.196\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.198\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"List.all\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.142\"},{\"kind\":\"fvar\",\"id\":\"_uniq.197\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.198\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.200\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.filterTR\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.199\"},{\"kind\":\"fvar\",\"id\":\"_uniq.142\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}]},\"discriminant\":\"_uniq.200\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.201\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.202\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.168\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.201\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.202\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.203\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.92\"},\"borrow\":false},{\"id\":\"_uniq.204\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.205\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.181\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.203\"},{\"kind\":\"fvar\",\"id\":\"_uniq.204\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.205\"}}}]}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.208\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}]}}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.207\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Nat\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}]},\"discriminant\":\"_uniq.95\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Nat.zero\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.214\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.126\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.96\"},{\"kind\":\"fvar\",\"id\":\"_uniq.97\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.214\"}}},{\"kind\":\"constructor\",\"constructor\":\"Nat.succ\",\"parameters\":[{\"id\":\"_uniq.215\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.216\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.208\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.215\"},{\"kind\":\"fvar\",\"id\":\"_uniq.96\"},{\"kind\":\"fvar\",\"id\":\"_uniq.97\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.216\"}}}]}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"List\",\"Nat\",\"Option\",\"PUnit\",\"Prod\",\"instDecidableEqBool\",\"Bool.not\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanCollections.Key\",\"LexLeanCollections.containsElement\",\"LexLeanCollections.graphSuccessors\",\"LexLeanCollections.removeElement\",\"LexLeanCollections.topological\",\"List.all\",\"List.cons\",\"List.filterTR\",\"List.isEmpty\",\"List.nil\",\"List.reverse\",\"Nat.succ\",\"Nat.zero\",\"Option.none\",\"Option.some\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.Appendable\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.Appendable.mk\",\"parameters\":1,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"bvar\",\"index\":2}}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}}}}]}},{\"name\":\"LexLeanRuntime.Decimal\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.Decimal.mk\",\"parameters\":1,\"fields\":2,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Decimal\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]}}}}}]}},{\"name\":\"LexLeanRuntime.Fixed\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.Fixed.mk\",\"parameters\":1,\"fields\":10,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"bvar\",\"index\":2}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":4},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":5},\"codomain\":{\"kind\":\"bvar\",\"index\":6}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":5},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":6},\"codomain\":{\"kind\":\"bvar\",\"index\":7}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":6},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":7},\"codomain\":{\"kind\":\"bvar\",\"index\":8}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":7},\"codomain\":{\"kind\":\"bvar\",\"index\":8}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":8},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":10}]}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":9},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":11}]}}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":10}]}}}}}}}}}}}}}]}},{\"name\":\"LexLeanRuntime.Indexable\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":2,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.Indexable.mk\",\"parameters\":2,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]}}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2},{\"kind\":\"bvar\",\"index\":1}]}}}}}]}},{\"name\":\"LexLeanRuntime.Lengthable\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.Lengthable.mk\",\"parameters\":1,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}}}}]}},{\"name\":\"LexLeanRuntime.Quotient\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.Quotient.mk\",\"parameters\":1,\"fields\":3,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"bvar\",\"index\":2}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}}}]}},{\"name\":\"LexLeanRuntime.Sliceable\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.Sliceable.mk\",\"parameters\":1,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}}}}]}},{\"name\":\"LexLeanRuntime.ToMathInt\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.ToMathInt.mk\",\"parameters\":1,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}}}}]}},{\"name\":\"LexLeanRuntime.append\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.Appendable.append\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}},\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"borrow\":false},{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"borrow\":false},{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Appendable\",\"index\":0,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.39\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.40\"}}}},\"uses\":[\"LexLeanRuntime.Appendable\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.bitAnd\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.Fixed.bitAnd\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}},\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"borrow\":false},{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"borrow\":false},{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":4,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.35\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.36\"}}}},\"uses\":[\"LexLeanRuntime.Fixed\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.bitNot\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.Fixed.bitNot\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"bvar\",\"index\":2}}}},\"parameters\":[{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"borrow\":false},{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":7,\"value\":\"_uniq.23\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.26\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.27\"}}}},\"uses\":[\"LexLeanRuntime.Fixed\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.bitOr\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.Fixed.bitOr\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}},\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"borrow\":false},{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"borrow\":false},{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":5,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.35\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.36\"}}}},\"uses\":[\"LexLeanRuntime.Fixed\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.bitXor\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.Fixed.bitXor\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}},\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"borrow\":false},{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"borrow\":false},{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":6,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.35\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.36\"}}}},\"uses\":[\"LexLeanRuntime.Fixed\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.checkedAdd\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"instHAdd\",\"HAdd.hAdd\",\"Int.instAdd\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.checkedFromInt\",\"LexLeanRuntime.Fixed.toToMathInt\",\"LexLeanRuntime.ToMathInt.toInt\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}},\"parameters\":[{\"id\":\"_uniq.19\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"borrow\":false},{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instAdd\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.24\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":0,\"value\":\"_uniq.20\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.ToMathInt\",\"index\":0,\"value\":\"_uniq.26\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.30\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.30\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.25\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedFromInt\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.34\"}}}}}}}}}}},\"uses\":[\"Add\",\"HAdd\",\"Int\",\"Option\",\"instHAdd\",\"Int.instAdd\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.ToMathInt\",\"LexLeanRuntime.checkedFromInt\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.checkedAddInt64\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Int64\",\"Option\",\"instAddInt64\",\"instDecidableEqBool\",\"instHAdd\",\"instLTInt64\",\"ite\",\"Bool.and\",\"Bool.or\",\"Bool.true\",\"Decidable.decide\",\"HAdd.hAdd\",\"Int64.decLt\",\"Int64.instOfNat\",\"LT.lt\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddInt64\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.54\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.55\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.73\",\"parameters\":[{\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.72\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.73\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.107\",\"parameters\":[{\"id\":\"_uniq.79\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.85\",\"parameters\":[{\"id\":\"_uniq.83\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.84\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.85\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.91\",\"parameters\":[{\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Decidable.decide\",\"levels\":[],\"arguments\":[{\"kind\":\"erased\"},{\"kind\":\"fvar\",\"id\":\"_uniq.89\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.90\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.91\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.97\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.98\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},{\"kind\":\"fvar\",\"id\":\"_uniq.99\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Decidable.decide\",\"levels\":[],\"arguments\":[{\"kind\":\"erased\"},{\"kind\":\"fvar\",\"id\":\"_uniq.100\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.101\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.86\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.102\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.103\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.92\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.104\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.105\"}}}}]}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.107\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.118\",\"parameters\":[{\"id\":\"_uniq.116\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.117\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.118\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.124\",\"parameters\":[{\"id\":\"_uniq.121\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Decidable.decide\",\"levels\":[],\"arguments\":[{\"kind\":\"erased\"},{\"kind\":\"fvar\",\"id\":\"_uniq.122\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.123\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.124\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.130\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.131\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.130\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.132\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.131\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.132\"},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Decidable.decide\",\"levels\":[],\"arguments\":[{\"kind\":\"erased\"},{\"kind\":\"fvar\",\"id\":\"_uniq.133\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.159\",\"parameters\":[{\"id\":\"_uniq.139\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},\"value\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.152\",\"parameters\":[{\"id\":\"_uniq.144\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.145\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.146\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.144\"},{\"kind\":\"fvar\",\"id\":\"_uniq.145\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"discriminant\":\"_uniq.146\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.147\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.148\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.148\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.149\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.150\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.150\"}}}]}}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.155\",\"parameters\":[{\"id\":\"_uniq.153\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.154\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.108\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.153\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.152\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.154\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.158\",\"parameters\":[{\"id\":\"_uniq.156\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.157\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.74\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.156\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.152\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.157\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"discriminant\":\"_uniq.139\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.140\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.155\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.140\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.142\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.158\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.142\"}]}}}]}}}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.165\",\"parameters\":[{\"id\":\"_uniq.163\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.164\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.125\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.163\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.159\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.164\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.162\",\"parameters\":[{\"id\":\"_uniq.160\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.161\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.119\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.160\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.159\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.161\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"discriminant\":\"_uniq.134\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.135\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.162\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.135\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.137\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.165\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.137\"}]}}}]}}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Add\",\"Bool\",\"Decidable\",\"HAdd\",\"Int64\",\"Nat\",\"OfNat\",\"Option\",\"PUnit\",\"instAddInt64\",\"instDecidableEqBool\",\"instHAdd\",\"Bool.false\",\"Bool.true\",\"Decidable.decide\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Int64.decLt\",\"Int64.instOfNat\",\"Option.none\",\"Option.some\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.checkedConvert\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.ToMathInt\",\"LexLeanRuntime.checkedFromInt\",\"LexLeanRuntime.ToMathInt.toInt\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":3},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}}},\"parameters\":[{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"borrow\":false},{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"borrow\":false},{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.ToMathInt\",\"index\":0,\"value\":\"_uniq.26\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.29\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedFromInt\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}}}}},\"uses\":[\"Int\",\"Option\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.ToMathInt\",\"LexLeanRuntime.checkedFromInt\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.checkedFromInt\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"Option\",\"ite\",\"Int.decLt\",\"Int.instLTInt\",\"LT.lt\",\"LexLeanRuntime.Fixed\",\"Option.none\",\"Option.some\",\"LexLeanRuntime.Fixed.fromInt\",\"LexLeanRuntime.Fixed.maximum\",\"LexLeanRuntime.Fixed.minimum\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]}}}},\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"borrow\":false},{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":2,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"discriminant\":\"_uniq.33\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":3,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.43\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"discriminant\":\"_uniq.44\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.45\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":1,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.47\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.49\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.50\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.51\"}}}]}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.53\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.54\"}}}]}}}},\"uses\":[\"Decidable\",\"Int\",\"Option\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Int.decLt\",\"LexLeanRuntime.Fixed\",\"Option.none\",\"Option.some\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.checkedMultiply\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"instHMul\",\"HMul.hMul\",\"Int.instMul\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.checkedFromInt\",\"LexLeanRuntime.Fixed.toToMathInt\",\"LexLeanRuntime.ToMathInt.toInt\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}},\"parameters\":[{\"id\":\"_uniq.19\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"borrow\":false},{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Mul\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instMul\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HMul\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHMul\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HMul\",\"index\":0,\"value\":\"_uniq.24\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":0,\"value\":\"_uniq.20\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.ToMathInt\",\"index\":0,\"value\":\"_uniq.26\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.27\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.27\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.25\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedFromInt\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}}}}}}}}}}},\"uses\":[\"HMul\",\"Int\",\"Mul\",\"Option\",\"instHMul\",\"Int.instMul\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.ToMathInt\",\"LexLeanRuntime.checkedFromInt\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.checkedMultiplyInt64\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Int64\",\"Nat\",\"Option\",\"UInt64\",\"Unit\",\"bne\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instLTInt64\",\"instOfNatNat\",\"Decidable.decide\",\"Int64.decLt\",\"Int64.instOfNat\",\"LT.lt\",\"LexLeanRuntime.magnitudeInt64\",\"LexLeanRuntime.multiplyMagnitudeInt64\",\"LexLeanRuntime.signedMagnitudeInt64\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"UInt64.instOfNat\",\"LexLeanRuntime.checkedMultiplyInt64.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.43\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Decidable.decide\",\"levels\":[],\"arguments\":[{\"kind\":\"erased\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Decidable.decide\",\"levels\":[],\"arguments\":[{\"kind\":\"erased\"},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"bne\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.49\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.56\",\"parameters\":[{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.55\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.64\",\"parameters\":[{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.signedMagnitudeInt64\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.63\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.64\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"64\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.74\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.magnitudeInt64\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.magnitudeInt64\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.78\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.multiplyMagnitudeInt64\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"},{\"kind\":\"fvar\",\"id\":\"_uniq.77\"},{\"kind\":\"fvar\",\"id\":\"_uniq.79\"},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"discriminant\":\"_uniq.80\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.57\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.82\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.83\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.84\"}}}]}}}}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"BEq\",\"Bool\",\"Decidable\",\"Int64\",\"Nat\",\"OfNat\",\"Option\",\"PUnit\",\"UInt64\",\"bne\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instOfNatNat\",\"Decidable.decide\",\"Int64.decLt\",\"Int64.instOfNat\",\"LexLeanRuntime.magnitudeInt64\",\"LexLeanRuntime.multiplyMagnitudeInt64\",\"LexLeanRuntime.signedMagnitudeInt64\",\"Option.none\",\"Option.some\",\"UInt64.instOfNat\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.checkedNegate\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"Int.instNegInt\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.checkedFromInt\",\"Neg.neg\",\"LexLeanRuntime.Fixed.toToMathInt\",\"LexLeanRuntime.ToMathInt.toInt\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]}}}},\"parameters\":[{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Neg\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instNegInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Neg\",\"index\":0,\"value\":\"_uniq.18\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":0,\"value\":\"_uniq.16\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.ToMathInt\",\"index\":0,\"value\":\"_uniq.20\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.21\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.19\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedFromInt\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.24\"}}}}}}}}},\"uses\":[\"Int\",\"Neg\",\"Option\",\"Int.instNegInt\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.ToMathInt\",\"LexLeanRuntime.checkedFromInt\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.checkedNegateInt64\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Int64\",\"Option\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instDecidableEqInt64\",\"ite\",\"BEq.beq\",\"Bool.true\",\"Int64.instNeg\",\"Int64.instOfNat\",\"Neg.neg\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqInt64\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"BEq\",\"index\":0,\"value\":\"_uniq.21\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Neg\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.instNeg\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Neg\",\"index\":0,\"value\":\"_uniq.23\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"9223372036854775808\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.26\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.24\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.22\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"discriminant\":\"_uniq.31\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.24\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.34\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.36\"}}}]}}}}}}}}}}}}}},\"uses\":[\"BEq\",\"Bool\",\"Decidable\",\"Int64\",\"Nat\",\"Neg\",\"OfNat\",\"Option\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instDecidableEqInt64\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Int64.instNeg\",\"Int64.instOfNat\",\"Option.none\",\"Option.some\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.checkedQuotient\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Eq\",\"Int\",\"Option\",\"instOfNat\",\"ite\",\"Int.instDecidableEq\",\"Int.tdiv\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.checkedFromInt\",\"OfNat.ofNat\",\"Option.none\",\"LexLeanRuntime.Fixed.toToMathInt\",\"LexLeanRuntime.ToMathInt.toInt\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}},\"parameters\":[{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"borrow\":false},{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},\"borrow\":false},{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":0,\"value\":\"_uniq.23\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.ToMathInt\",\"index\":0,\"value\":\"_uniq.34\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.35\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.38\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instDecidableEq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"discriminant\":\"_uniq.40\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.41\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.35\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int.tdiv\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedFromInt\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.44\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.45\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.46\"}}}]}}}}}}}}},\"uses\":[\"Decidable\",\"Int\",\"Nat\",\"OfNat\",\"Option\",\"instOfNat\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Int.instDecidableEq\",\"Int.tdiv\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.ToMathInt\",\"LexLeanRuntime.checkedFromInt\",\"Option.none\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.checkedQuotientInt64\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Int64\",\"Nat\",\"Option\",\"UInt64\",\"bne\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instDecidableEqInt64\",\"instLTInt64\",\"instOfNatNat\",\"ite\",\"BEq.beq\",\"Bool.and\",\"Bool.true\",\"Decidable.decide\",\"Int64.decLt\",\"Int64.instNeg\",\"Int64.instOfNat\",\"LT.lt\",\"LexLeanRuntime.divideMagnitudeInt64\",\"LexLeanRuntime.magnitudeInt64\",\"LexLeanRuntime.signedMagnitudeInt64\",\"Neg.neg\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"UInt64.instOfNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqInt64\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"BEq\",\"index\":0,\"value\":\"_uniq.44\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.46\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.47\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.45\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"discriminant\":\"_uniq.51\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.52\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.68\",\"parameters\":[{\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.67\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.68\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.79\",\"parameters\":[{\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Neg\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.instNeg\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Neg\",\"index\":0,\"value\":\"_uniq.72\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.75\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.73\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.45\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.77\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.78\"}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.79\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Neg\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.instNeg\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Neg\",\"index\":0,\"value\":\"_uniq.85\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"9223372036854775808\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.87\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.88\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.86\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.89\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.45\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.90\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.123\",\"parameters\":[{\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.96\"},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"discriminant\":\"_uniq.97\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.98\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.102\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Decidable.decide\",\"levels\":[],\"arguments\":[{\"kind\":\"erased\"},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Decidable.decide\",\"levels\":[],\"arguments\":[{\"kind\":\"erased\"},{\"kind\":\"fvar\",\"id\":\"_uniq.106\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"bne\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.103\"},{\"kind\":\"fvar\",\"id\":\"_uniq.105\"},{\"kind\":\"fvar\",\"id\":\"_uniq.107\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.108\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.110\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"64\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.111\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.110\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.111\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.113\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.magnitudeInt64\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.magnitudeInt64\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.46\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.115\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.divideMagnitudeInt64\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.112\"},{\"kind\":\"fvar\",\"id\":\"_uniq.113\"},{\"kind\":\"fvar\",\"id\":\"_uniq.114\"},{\"kind\":\"fvar\",\"id\":\"_uniq.116\"},{\"kind\":\"fvar\",\"id\":\"_uniq.116\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.118\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.signedMagnitudeInt64\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.109\"},{\"kind\":\"fvar\",\"id\":\"_uniq.117\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.118\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.119\"}}}}}}}}}}}}}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.120\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.121\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.121\"}}}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.126\",\"parameters\":[{\"id\":\"_uniq.124\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.69\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.124\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.123\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.125\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.129\",\"parameters\":[{\"id\":\"_uniq.127\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.128\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.80\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.127\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.123\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.128\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"discriminant\":\"_uniq.91\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.126\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.129\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.94\"}]}}}]}}}}}}}}}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.130\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.131\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.131\"}}}]}}}}}}}}}}},\"uses\":[\"BEq\",\"Bool\",\"Decidable\",\"Int64\",\"Nat\",\"Neg\",\"OfNat\",\"Option\",\"PUnit\",\"UInt64\",\"bne\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instDecidableEqInt64\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Decidable.decide\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Int64.decLt\",\"Int64.instNeg\",\"Int64.instOfNat\",\"LexLeanRuntime.divideMagnitudeInt64\",\"LexLeanRuntime.magnitudeInt64\",\"LexLeanRuntime.signedMagnitudeInt64\",\"Option.none\",\"Option.some\",\"UInt64.instOfNat\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.checkedSubtract\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"instHSub\",\"HSub.hSub\",\"Int.instSub\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.checkedFromInt\",\"LexLeanRuntime.Fixed.toToMathInt\",\"LexLeanRuntime.ToMathInt.toInt\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}},\"parameters\":[{\"id\":\"_uniq.19\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"borrow\":false},{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instSub\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HSub\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHSub\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HSub\",\"index\":0,\"value\":\"_uniq.24\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":0,\"value\":\"_uniq.20\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.ToMathInt\",\"index\":0,\"value\":\"_uniq.26\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.27\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.27\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.25\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedFromInt\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}}}}}}}}}}},\"uses\":[\"HSub\",\"Int\",\"Option\",\"Sub\",\"instHSub\",\"Int.instSub\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.ToMathInt\",\"LexLeanRuntime.checkedFromInt\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.checkedSubtractInt64\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Int64\",\"Option\",\"instDecidableEqBool\",\"instHSub\",\"instLTInt64\",\"instSubInt64\",\"ite\",\"Bool.and\",\"Bool.or\",\"Bool.true\",\"Decidable.decide\",\"HSub.hSub\",\"Int64.decLt\",\"Int64.instOfNat\",\"LT.lt\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubInt64\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HSub\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHSub\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HSub\",\"index\":0,\"value\":\"_uniq.54\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.55\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.73\",\"parameters\":[{\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.72\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.73\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.107\",\"parameters\":[{\"id\":\"_uniq.79\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.85\",\"parameters\":[{\"id\":\"_uniq.83\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.84\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.85\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.91\",\"parameters\":[{\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Decidable.decide\",\"levels\":[],\"arguments\":[{\"kind\":\"erased\"},{\"kind\":\"fvar\",\"id\":\"_uniq.89\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.90\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.91\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.97\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.98\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},{\"kind\":\"fvar\",\"id\":\"_uniq.99\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Decidable.decide\",\"levels\":[],\"arguments\":[{\"kind\":\"erased\"},{\"kind\":\"fvar\",\"id\":\"_uniq.100\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.101\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.86\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.102\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.103\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.92\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.104\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.105\"}}}}]}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.107\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.118\",\"parameters\":[{\"id\":\"_uniq.116\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.117\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.118\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.124\",\"parameters\":[{\"id\":\"_uniq.121\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Decidable.decide\",\"levels\":[],\"arguments\":[{\"kind\":\"erased\"},{\"kind\":\"fvar\",\"id\":\"_uniq.122\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.123\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.124\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.130\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.131\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.130\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.132\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.131\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.132\"},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Decidable.decide\",\"levels\":[],\"arguments\":[{\"kind\":\"erased\"},{\"kind\":\"fvar\",\"id\":\"_uniq.133\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.159\",\"parameters\":[{\"id\":\"_uniq.139\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},\"value\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.152\",\"parameters\":[{\"id\":\"_uniq.144\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.145\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.146\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.144\"},{\"kind\":\"fvar\",\"id\":\"_uniq.145\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"discriminant\":\"_uniq.146\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.147\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.148\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.148\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.149\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.150\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.150\"}}}]}}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.155\",\"parameters\":[{\"id\":\"_uniq.153\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.154\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.108\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.153\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.152\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.154\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.158\",\"parameters\":[{\"id\":\"_uniq.156\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.157\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.74\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.156\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.152\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.157\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"discriminant\":\"_uniq.139\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.140\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.155\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.140\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.142\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.158\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.142\"}]}}}]}}}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.165\",\"parameters\":[{\"id\":\"_uniq.163\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.164\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.125\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.163\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.159\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.164\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.162\",\"parameters\":[{\"id\":\"_uniq.160\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.161\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.119\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.160\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.159\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.161\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"discriminant\":\"_uniq.134\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.135\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.162\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.135\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.137\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.165\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.137\"}]}}}]}}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"HSub\",\"Int64\",\"Nat\",\"OfNat\",\"Option\",\"PUnit\",\"Sub\",\"instDecidableEqBool\",\"instHSub\",\"instSubInt64\",\"Bool.false\",\"Bool.true\",\"Decidable.decide\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Int64.decLt\",\"Int64.instOfNat\",\"Option.none\",\"Option.some\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.compareBytes\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"List\",\"UInt8\",\"ByteArray.toList\",\"List.instOrd\",\"Ord.compare\",\"UInt8.instOrd\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Ord\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOrd\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Ord\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.instOrd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Ord\",\"index\":0,\"value\":\"_uniq.14\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.toList\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.toList\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.15\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.18\"}}}}}}}},\"uses\":[\"ByteArray\",\"List\",\"Ord\",\"Ordering\",\"UInt8\",\"ByteArray.toList\",\"List.instOrd\",\"UInt8.instOrd\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.divideMagnitudeInt64\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"UInt64\",\"Nat.brecOn\",\"LexLeanRuntime.divideMagnitudeInt64._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}}}}}},\"parameters\":[{\"id\":\"_uniq.94\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.95\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.98\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.117\",\"parameters\":[{\"id\":\"_uniq.113\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.114\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.115\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.116\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}}}}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.116\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.118\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}}}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.117\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.201\",\"parameters\":[{\"id\":\"_uniq.138\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.139\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.140\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.141\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.142\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}}}}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.147\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddUInt64\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.148\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.147\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.149\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.148\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.150\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.149\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.139\"},{\"kind\":\"fvar\",\"id\":\"_uniq.139\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.151\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.150\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.152\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.149\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.141\"},{\"kind\":\"fvar\",\"id\":\"_uniq.141\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.161\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"9223372036854775808\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.162\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.161\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.163\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.162\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.164\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.decLe\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.163\"},{\"kind\":\"fvar\",\"id\":\"_uniq.139\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.200\",\"parameters\":[{\"id\":\"_uniq.173\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.174\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.149\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.152\"},{\"kind\":\"fvar\",\"id\":\"_uniq.173\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.175\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.174\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.176\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.149\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.142\"},{\"kind\":\"fvar\",\"id\":\"_uniq.142\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.177\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.176\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.186\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.decLe\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.140\"},{\"kind\":\"fvar\",\"id\":\"_uniq.175\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"discriminant\":\"_uniq.186\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.187\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.188\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.divideMagnitudeInt64\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.138\"},{\"kind\":\"fvar\",\"id\":\"_uniq.151\"},{\"kind\":\"fvar\",\"id\":\"_uniq.140\"},{\"kind\":\"fvar\",\"id\":\"_uniq.175\"},{\"kind\":\"fvar\",\"id\":\"_uniq.177\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.188\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.189\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.190\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubUInt64\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.191\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HSub\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHSub\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.190\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.192\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HSub\",\"index\":0,\"value\":\"_uniq.191\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.193\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.192\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.175\"},{\"kind\":\"fvar\",\"id\":\"_uniq.140\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.194\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.195\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.194\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.196\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.195\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.197\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.149\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.177\"},{\"kind\":\"fvar\",\"id\":\"_uniq.196\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.198\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.divideMagnitudeInt64\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.138\"},{\"kind\":\"fvar\",\"id\":\"_uniq.151\"},{\"kind\":\"fvar\",\"id\":\"_uniq.140\"},{\"kind\":\"fvar\",\"id\":\"_uniq.193\"},{\"kind\":\"fvar\",\"id\":\"_uniq.197\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.198\"}}}}}}}}}}}]}}}}}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"discriminant\":\"_uniq.164\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.165\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.166\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.167\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.166\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.168\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.167\"},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.200\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.168\"}]}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.169\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.170\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.171\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.170\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.172\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.171\"},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.200\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.172\"}]}}}}}]}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.202\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}}}}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.201\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Nat\",\"result_type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"discriminant\":\"_uniq.94\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Nat.zero\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.208\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.118\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.95\"},{\"kind\":\"fvar\",\"id\":\"_uniq.96\"},{\"kind\":\"fvar\",\"id\":\"_uniq.97\"},{\"kind\":\"fvar\",\"id\":\"_uniq.98\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.208\"}}},{\"kind\":\"constructor\",\"constructor\":\"Nat.succ\",\"parameters\":[{\"id\":\"_uniq.209\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.210\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.202\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.209\"},{\"kind\":\"fvar\",\"id\":\"_uniq.95\"},{\"kind\":\"fvar\",\"id\":\"_uniq.96\"},{\"kind\":\"fvar\",\"id\":\"_uniq.97\"},{\"kind\":\"fvar\",\"id\":\"_uniq.98\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.210\"}}}]}}}}}},\"uses\":[\"Add\",\"Decidable\",\"HAdd\",\"HSub\",\"Nat\",\"OfNat\",\"Sub\",\"UInt64\",\"instAddUInt64\",\"instHAdd\",\"instHSub\",\"instSubUInt64\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.divideMagnitudeInt64\",\"Nat.succ\",\"Nat.zero\",\"UInt64.decLe\",\"UInt64.instOfNat\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.equal\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"BEq\",\"BEq.beq\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}}}},\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"borrow\":false},{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},\"borrow\":false},{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"BEq\",\"index\":0,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.25\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.26\"}}}},\"uses\":[\"BEq\",\"Bool\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.formatDecimal\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Decimal\",\"LexLeanRuntime.Decimal.format\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Decimal\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}}}},\"parameters\":[{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Decimal\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},\"codomain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Decimal\",\"index\":1,\"value\":\"_uniq.16\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.18\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.19\"}}}},\"uses\":[\"String\",\"LexLeanRuntime.Decimal\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.index\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"LexLeanRuntime.Indexable\",\"LexLeanRuntime.Indexable.index\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1},{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}}},\"parameters\":[{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"borrow\":false},{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},\"borrow\":false},{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Indexable\",\"index\":0,\"value\":\"_uniq.26\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.34\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.35\"}}}},\"uses\":[\"Nat\",\"Option\",\"LexLeanRuntime.Indexable\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instAppendableByteArray\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"ByteArray.append\",\"LexLeanRuntime.Appendable.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.1\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.fastAppend\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.2\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.1\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.2\"}}}},\"uses\":[\"ByteArray\",\"ByteArray.fastAppend\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.Appendable.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instAppendableList\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"List.append\",\"LexLeanRuntime.Appendable.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]}]}},\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"List.appendTR\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}}},\"uses\":[\"List\",\"LexLeanRuntime.Appendable\",\"List.appendTR\",\"LexLeanRuntime.Appendable.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instDecimalInt\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Eq\",\"Int\",\"Option\",\"String\",\"Unit\",\"instDecidableEqString\",\"instToStringInt\",\"ite\",\"Option.none\",\"Option.some\",\"String.toInt?\",\"ToString.toString\",\"LexLeanRuntime.Decimal.mk\",\"LexLeanRuntime.instDecimalInt.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Decimal\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.70\",\"parameters\":[{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.48\",\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"ToString\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instToStringInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"ToString\",\"index\":0,\"value\":\"_uniq.39\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.40\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqString\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"discriminant\":\"_uniq.42\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.43\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.44\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.45\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.46\"}}}]}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.48\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.55\",\"parameters\":[{\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.54\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.55\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"String.toInt?\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"discriminant\":\"_uniq.64\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.66\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.49\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.68\"}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"ToString\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instToStringInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"ToString\",\"index\":0,\"value\":\"_uniq.71\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Decimal\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Decimal.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.70\"},{\"kind\":\"fvar\",\"id\":\"_uniq.72\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.78\"}}}}}},\"uses\":[\"Decidable\",\"Int\",\"Option\",\"PUnit\",\"String\",\"ToString\",\"instDecidableEqString\",\"instToStringInt\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.Decimal\",\"Option.none\",\"Option.some\",\"String.toInt?\",\"Unit.unit\",\"LexLeanRuntime.Decimal.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instDecimalOfFixedOfToString\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Eq\",\"Int\",\"Option\",\"String\",\"ToString\",\"Unit\",\"instDecidableEqString\",\"instToStringInt\",\"ite\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.checkedFromInt\",\"Option.none\",\"String.toInt?\",\"ToString.toString\",\"LexLeanRuntime.Decimal.mk\",\"LexLeanRuntime.instDecimalInt.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"ToString\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Decimal\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]}}}},\"parameters\":[{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"borrow\":false},{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"ToString\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.85\",\"parameters\":[{\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.63\",\"parameters\":[{\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"ToString\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instToStringInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"ToString\",\"index\":0,\"value\":\"_uniq.54\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.55\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqString\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"discriminant\":\"_uniq.57\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.58\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.59\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedFromInt\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.61\"}}}]}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.63\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.70\",\"parameters\":[{\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.69\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.70\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"String.toInt?\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"discriminant\":\"_uniq.79\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.71\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.81\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.82\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.64\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.82\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.83\"}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},\"codomain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"ToString\",\"index\":0,\"value\":\"_uniq.34\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Decimal\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Decimal.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.85\"},{\"kind\":\"fvar\",\"id\":\"_uniq.86\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.87\"}}}}},\"uses\":[\"Decidable\",\"Int\",\"Option\",\"PUnit\",\"String\",\"ToString\",\"instDecidableEqString\",\"instToStringInt\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.Decimal\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.checkedFromInt\",\"Option.none\",\"Option.some\",\"String.toInt?\",\"Unit.unit\",\"LexLeanRuntime.Decimal.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instFixedInt16\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"Int16\",\"Nat\",\"Option\",\"UInt32\",\"instLTNat\",\"instOfNat\",\"instOfNatNat\",\"ite\",\"Int.instNegInt\",\"Int16.complement\",\"Int16.land\",\"Int16.lor\",\"Int16.ofInt\",\"Int16.ofNat\",\"Int16.shiftLeft\",\"Int16.shiftRight\",\"Int16.toInt\",\"Int16.xor\",\"LT.lt\",\"Nat.decLt\",\"Neg.neg\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"UInt32.toNat\",\"LexLeanRuntime.Fixed.mk\",\"LexLeanRuntime.ToMathInt.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"Int16.toInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"codomain\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"Int16.ofInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Neg\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instNegInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Neg\",\"index\":0,\"value\":\"_uniq.14\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"32768\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.17\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.15\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"32767\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.21\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"Int16.land\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"Int16.lor\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"Int16.xor\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"Int16.complement\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.51\",\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"16\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.41\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}]},\"discriminant\":\"_uniq.43\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.45\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.46\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int16.ofNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int16.shiftLeft\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.49\"}}}}}]}}}}}}},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.76\",\"parameters\":[{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"16\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.66\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}]},\"discriminant\":\"_uniq.68\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.69\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.70\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.71\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int16.ofNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.64\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int16.shiftRight\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},{\"kind\":\"fvar\",\"id\":\"_uniq.72\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.74\"}}}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.77\"}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Decidable\",\"Int\",\"Int16\",\"Nat\",\"Neg\",\"OfNat\",\"Option\",\"UInt32\",\"instOfNat\",\"instOfNatNat\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Int.instNegInt\",\"Int16.complement\",\"Int16.land\",\"Int16.lor\",\"Int16.ofInt\",\"Int16.ofNat\",\"Int16.shiftLeft\",\"Int16.shiftRight\",\"Int16.toInt\",\"Int16.xor\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.ToMathInt\",\"Nat.decLt\",\"Option.none\",\"Option.some\",\"UInt32.toNat\",\"LexLeanRuntime.Fixed.mk\",\"LexLeanRuntime.ToMathInt.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instFixedInt32\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"Int32\",\"Nat\",\"Option\",\"UInt32\",\"instLTNat\",\"instOfNat\",\"instOfNatNat\",\"ite\",\"Int.instNegInt\",\"Int32.complement\",\"Int32.land\",\"Int32.lor\",\"Int32.ofInt\",\"Int32.ofNat\",\"Int32.shiftLeft\",\"Int32.shiftRight\",\"Int32.toInt\",\"Int32.xor\",\"LT.lt\",\"Nat.decLt\",\"Neg.neg\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"UInt32.toNat\",\"LexLeanRuntime.Fixed.mk\",\"LexLeanRuntime.ToMathInt.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"Int32.toInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"codomain\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"Int32.ofInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Neg\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instNegInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Neg\",\"index\":0,\"value\":\"_uniq.14\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2147483648\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.17\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.15\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2147483647\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.21\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"Int32.land\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"Int32.lor\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"Int32.xor\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"Int32.complement\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.51\",\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"32\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.41\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},\"discriminant\":\"_uniq.43\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.45\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.46\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int32.ofNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int32.shiftLeft\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.49\"}}}}}]}}}}}}},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.76\",\"parameters\":[{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"32\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.66\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},\"discriminant\":\"_uniq.68\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.69\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.70\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.71\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int32.ofNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.64\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int32.shiftRight\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},{\"kind\":\"fvar\",\"id\":\"_uniq.72\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.74\"}}}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.77\"}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Decidable\",\"Int\",\"Int32\",\"Nat\",\"Neg\",\"OfNat\",\"Option\",\"UInt32\",\"instOfNat\",\"instOfNatNat\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Int.instNegInt\",\"Int32.complement\",\"Int32.land\",\"Int32.lor\",\"Int32.ofInt\",\"Int32.ofNat\",\"Int32.shiftLeft\",\"Int32.shiftRight\",\"Int32.toInt\",\"Int32.xor\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.ToMathInt\",\"Nat.decLt\",\"Option.none\",\"Option.some\",\"UInt32.toNat\",\"LexLeanRuntime.Fixed.mk\",\"LexLeanRuntime.ToMathInt.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instFixedInt64\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"Int64\",\"Nat\",\"Option\",\"UInt32\",\"instLTNat\",\"instOfNat\",\"instOfNatNat\",\"ite\",\"Int.instNegInt\",\"Int64.complement\",\"Int64.land\",\"Int64.lor\",\"Int64.ofInt\",\"Int64.ofNat\",\"Int64.shiftLeft\",\"Int64.shiftRight\",\"Int64.toInt\",\"Int64.xor\",\"LT.lt\",\"Nat.decLt\",\"Neg.neg\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"UInt32.toNat\",\"LexLeanRuntime.Fixed.mk\",\"LexLeanRuntime.ToMathInt.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"Int64.toInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"codomain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"Int64.ofInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Neg\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instNegInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Neg\",\"index\":0,\"value\":\"_uniq.14\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"9223372036854775808\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.17\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.15\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"9223372036854775807\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.21\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"Int64.land\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"Int64.lor\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"Int64.xor\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"Int64.complement\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.51\",\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"64\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.41\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"discriminant\":\"_uniq.43\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.45\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.46\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.ofNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.shiftLeft\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.49\"}}}}}]}}}}}}},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.76\",\"parameters\":[{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"64\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.66\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"discriminant\":\"_uniq.68\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.69\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.70\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.71\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.ofNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.64\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.shiftRight\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},{\"kind\":\"fvar\",\"id\":\"_uniq.72\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.74\"}}}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.77\"}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Decidable\",\"Int\",\"Int64\",\"Nat\",\"Neg\",\"OfNat\",\"Option\",\"UInt32\",\"instOfNat\",\"instOfNatNat\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Int.instNegInt\",\"Int64.complement\",\"Int64.land\",\"Int64.lor\",\"Int64.ofInt\",\"Int64.ofNat\",\"Int64.shiftLeft\",\"Int64.shiftRight\",\"Int64.toInt\",\"Int64.xor\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.ToMathInt\",\"Nat.decLt\",\"Option.none\",\"Option.some\",\"UInt32.toNat\",\"LexLeanRuntime.Fixed.mk\",\"LexLeanRuntime.ToMathInt.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instFixedInt8\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"Int8\",\"Nat\",\"Option\",\"UInt32\",\"instLTNat\",\"instOfNat\",\"instOfNatNat\",\"ite\",\"Int.instNegInt\",\"Int8.complement\",\"Int8.land\",\"Int8.lor\",\"Int8.ofInt\",\"Int8.ofNat\",\"Int8.shiftLeft\",\"Int8.shiftRight\",\"Int8.toInt\",\"Int8.xor\",\"LT.lt\",\"Nat.decLt\",\"Neg.neg\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"UInt32.toNat\",\"LexLeanRuntime.Fixed.mk\",\"LexLeanRuntime.ToMathInt.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"Int8.toInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"codomain\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"Int8.ofInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Neg\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instNegInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Neg\",\"index\":0,\"value\":\"_uniq.14\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"128\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.17\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.15\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"127\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.21\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"Int8.land\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"Int8.lor\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"Int8.xor\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"Int8.complement\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.51\",\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"8\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.41\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},\"discriminant\":\"_uniq.43\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.45\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.46\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int8.ofNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int8.shiftLeft\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.49\"}}}}}]}}}}}}},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.76\",\"parameters\":[{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"8\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.66\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},\"discriminant\":\"_uniq.68\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.69\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.70\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.71\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int8.ofNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.64\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int8.shiftRight\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},{\"kind\":\"fvar\",\"id\":\"_uniq.72\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.74\"}}}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.77\"}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Decidable\",\"Int\",\"Int8\",\"Nat\",\"Neg\",\"OfNat\",\"Option\",\"UInt32\",\"instOfNat\",\"instOfNatNat\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Int.instNegInt\",\"Int8.complement\",\"Int8.land\",\"Int8.lor\",\"Int8.ofInt\",\"Int8.ofNat\",\"Int8.shiftLeft\",\"Int8.shiftRight\",\"Int8.toInt\",\"Int8.xor\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.ToMathInt\",\"Nat.decLt\",\"Option.none\",\"Option.some\",\"UInt32.toNat\",\"LexLeanRuntime.Fixed.mk\",\"LexLeanRuntime.ToMathInt.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instFixedUInt16\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"Nat\",\"Option\",\"UInt16\",\"UInt32\",\"instLTNat\",\"instOfNat\",\"instOfNatNat\",\"ite\",\"Int.ofNat\",\"LT.lt\",\"Nat.decLt\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"UInt16.complement\",\"UInt16.land\",\"UInt16.lor\",\"UInt16.ofInt\",\"UInt16.ofNat\",\"UInt16.shiftLeft\",\"UInt16.shiftRight\",\"UInt16.toNat\",\"UInt16.xor\",\"UInt32.toNat\",\"LexLeanRuntime.Fixed.mk\",\"LexLeanRuntime.ToMathInt.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.16\",\"parameters\":[{\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt16.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int.ofNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.15\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"UInt16.ofInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.20\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"65535\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.23\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"UInt16.land\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"UInt16.lor\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"UInt16.xor\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"UInt16.complement\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.53\",\"parameters\":[{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"16\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.43\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},\"discriminant\":\"_uniq.45\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.46\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.47\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.48\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt16.ofNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt16.shiftLeft\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.51\"}}}}}]}}}}}}},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.78\",\"parameters\":[{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"16\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.68\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.66\"},{\"kind\":\"fvar\",\"id\":\"_uniq.69\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},\"discriminant\":\"_uniq.70\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.71\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.72\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.73\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt16.ofNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.66\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt16.shiftRight\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.75\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.76\"}}}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.78\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.79\"}}}}}}}}}}}}}}}}}},\"uses\":[\"Decidable\",\"Int\",\"Nat\",\"OfNat\",\"Option\",\"UInt16\",\"UInt32\",\"instOfNat\",\"instOfNatNat\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Int.ofNat\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.ToMathInt\",\"Nat.decLt\",\"Option.none\",\"Option.some\",\"UInt16.complement\",\"UInt16.land\",\"UInt16.lor\",\"UInt16.ofInt\",\"UInt16.ofNat\",\"UInt16.shiftLeft\",\"UInt16.shiftRight\",\"UInt16.toNat\",\"UInt16.xor\",\"UInt32.toNat\",\"LexLeanRuntime.Fixed.mk\",\"LexLeanRuntime.ToMathInt.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instFixedUInt32\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"Nat\",\"Option\",\"UInt32\",\"instLTNat\",\"instOfNat\",\"instOfNatNat\",\"ite\",\"Int.ofNat\",\"LT.lt\",\"Nat.decLt\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"UInt32.complement\",\"UInt32.land\",\"UInt32.lor\",\"UInt32.ofInt\",\"UInt32.shiftLeft\",\"UInt32.shiftRight\",\"UInt32.toNat\",\"UInt32.xor\",\"LexLeanRuntime.Fixed.mk\",\"LexLeanRuntime.ToMathInt.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.16\",\"parameters\":[{\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int.ofNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.15\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.ofInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.20\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"4294967295\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.23\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.land\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.lor\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.xor\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.complement\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.52\",\"parameters\":[{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"32\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.43\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"discriminant\":\"_uniq.45\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.46\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.47\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.48\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.shiftLeft\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.50\"}}}}]}}}}}}},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.76\",\"parameters\":[{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"32\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.66\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.67\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"fvar\",\"id\":\"_uniq.68\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"discriminant\":\"_uniq.69\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.71\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.72\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.shiftRight\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.74\"}}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.52\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.77\"}}}}}}}}}}}}}}}}}},\"uses\":[\"Decidable\",\"Int\",\"Nat\",\"OfNat\",\"Option\",\"UInt32\",\"instOfNat\",\"instOfNatNat\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Int.ofNat\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.ToMathInt\",\"Nat.decLt\",\"Option.none\",\"Option.some\",\"UInt32.complement\",\"UInt32.land\",\"UInt32.lor\",\"UInt32.ofInt\",\"UInt32.shiftLeft\",\"UInt32.shiftRight\",\"UInt32.toNat\",\"UInt32.xor\",\"LexLeanRuntime.Fixed.mk\",\"LexLeanRuntime.ToMathInt.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instFixedUInt64\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"Nat\",\"Option\",\"UInt32\",\"UInt64\",\"instLTNat\",\"instOfNat\",\"instOfNatNat\",\"ite\",\"Int.ofNat\",\"LT.lt\",\"Nat.decLt\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"UInt32.toNat\",\"UInt64.complement\",\"UInt64.land\",\"UInt64.lor\",\"UInt64.ofInt\",\"UInt64.ofNat\",\"UInt64.shiftLeft\",\"UInt64.shiftRight\",\"UInt64.toNat\",\"UInt64.xor\",\"LexLeanRuntime.Fixed.mk\",\"LexLeanRuntime.ToMathInt.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.16\",\"parameters\":[{\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int.ofNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.15\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.ofInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.20\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"18446744073709551615\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.23\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.land\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.lor\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.xor\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.complement\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.53\",\"parameters\":[{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"64\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.43\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"discriminant\":\"_uniq.45\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.46\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.47\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.48\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.ofNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.shiftLeft\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.51\"}}}}}]}}}}}}},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.78\",\"parameters\":[{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"64\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.68\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.66\"},{\"kind\":\"fvar\",\"id\":\"_uniq.69\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"discriminant\":\"_uniq.70\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.71\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.72\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.73\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.ofNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.66\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.shiftRight\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.75\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.76\"}}}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.78\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.79\"}}}}}}}}}}}}}}}}}},\"uses\":[\"Decidable\",\"Int\",\"Nat\",\"OfNat\",\"Option\",\"UInt32\",\"UInt64\",\"instOfNat\",\"instOfNatNat\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Int.ofNat\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.ToMathInt\",\"Nat.decLt\",\"Option.none\",\"Option.some\",\"UInt32.toNat\",\"UInt64.complement\",\"UInt64.land\",\"UInt64.lor\",\"UInt64.ofInt\",\"UInt64.ofNat\",\"UInt64.shiftLeft\",\"UInt64.shiftRight\",\"UInt64.toNat\",\"UInt64.xor\",\"LexLeanRuntime.Fixed.mk\",\"LexLeanRuntime.ToMathInt.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instIndexableByteArrayUInt8\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Array\",\"ByteArray\",\"Nat\",\"UInt8\",\"instLTNat\",\"Array.instGetElem?NatLtSize\",\"Array.size\",\"ByteArray.data\",\"GetElem?.getElem?\",\"LT.lt\",\"LexLeanRuntime.Indexable.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.59\",\"parameters\":[{\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"GetElem?\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Array.instGetElem?NatLtSize\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"GetElem?\",\"index\":1,\"value\":\"_uniq.9\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.data\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.58\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.60\"}}}},\"uses\":[\"Array\",\"ByteArray\",\"GetElem?\",\"Nat\",\"Option\",\"UInt8\",\"Array.instGetElem?NatLtSize\",\"ByteArray.data\",\"LexLeanRuntime.Indexable\",\"LexLeanRuntime.Indexable.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instIndexableList\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"LexLeanRuntime.listIndex\",\"LexLeanRuntime.Indexable.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},{\"kind\":\"bvar\",\"index\":0}]}},\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.listIndex\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]},{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}}},\"uses\":[\"List\",\"Nat\",\"Option\",\"LexLeanRuntime.Indexable\",\"LexLeanRuntime.listIndex\",\"LexLeanRuntime.Indexable.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"ByteArray.size\",\"LexLeanRuntime.Lengthable.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.1\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.size\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.5\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.1\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.5\"}}}},\"uses\":[\"ByteArray\",\"Nat\",\"ByteArray.size\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.Lengthable.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instLengthableList\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"List.length\",\"LexLeanRuntime.Lengthable.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]}]}},\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"List.lengthTR\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}}},\"uses\":[\"List\",\"Nat\",\"LexLeanRuntime.Lengthable\",\"List.lengthTR\",\"LexLeanRuntime.Lengthable.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instLengthableString\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"String\",\"String.length\",\"LexLeanRuntime.Lengthable.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.1\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"String.length\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.2\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.1\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.2\"}}}},\"uses\":[\"Nat\",\"String\",\"LexLeanRuntime.Lengthable\",\"String.length\",\"LexLeanRuntime.Lengthable.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instQuotientInt\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"instBEqOfDecidableEq\",\"instOfNat\",\"BEq.beq\",\"Int.instDecidableEq\",\"Int.tdiv\",\"Int.tmod\",\"OfNat.ofNat\",\"LexLeanRuntime.Quotient.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.2\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"Int.tdiv\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.3\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"Int.tmod\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.15\",\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"Int.instDecidableEq\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"BEq\",\"index\":0,\"value\":\"_uniq.9\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.12\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.10\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.14\"}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.2\"},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.16\"}}}}}},\"uses\":[\"BEq\",\"Bool\",\"Decidable\",\"Int\",\"Nat\",\"OfNat\",\"instBEqOfDecidableEq\",\"instOfNat\",\"Int.instDecidableEq\",\"Int.tdiv\",\"Int.tmod\",\"LexLeanRuntime.Quotient\",\"LexLeanRuntime.Quotient.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instQuotientNat\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instBEqOfDecidableEq\",\"instDecidableEqNat\",\"instOfNatNat\",\"BEq.beq\",\"Nat.div\",\"Nat.mod\",\"OfNat.ofNat\",\"LexLeanRuntime.Quotient.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.2\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"Nat.div\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.3\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"Nat.mod\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.15\",\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"BEq\",\"index\":0,\"value\":\"_uniq.9\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.12\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.10\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.14\"}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.2\"},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.25\"}}}}}},\"uses\":[\"BEq\",\"Bool\",\"Decidable\",\"Nat\",\"OfNat\",\"instBEqOfDecidableEq\",\"instDecidableEqNat\",\"instOfNatNat\",\"LexLeanRuntime.Quotient\",\"Nat.div\",\"Nat.mod\",\"LexLeanRuntime.Quotient.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instSliceableByteArray\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Nat\",\"Option\",\"instAddNat\",\"instHAdd\",\"instLENat\",\"ite\",\"ByteArray.extract\",\"ByteArray.size\",\"HAdd.hAdd\",\"LE.le\",\"Nat.decLe\",\"Option.none\",\"Option.some\",\"LexLeanRuntime.Sliceable.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.33\",\"parameters\":[{\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.23\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.size\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.decLe\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.26\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.28\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.extract\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}}}}]}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.39\"}}}},\"uses\":[\"Add\",\"ByteArray\",\"Decidable\",\"HAdd\",\"Nat\",\"Option\",\"instAddNat\",\"instHAdd\",\"ByteArray.extract\",\"ByteArray.size\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.Sliceable\",\"Nat.decLe\",\"Option.none\",\"Option.some\",\"LexLeanRuntime.Sliceable.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instSliceableList\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Option\",\"instAddNat\",\"instHAdd\",\"instLENat\",\"ite\",\"HAdd.hAdd\",\"LE.le\",\"List.drop\",\"List.length\",\"List.take\",\"Nat.decLe\",\"Option.none\",\"Option.some\",\"LexLeanRuntime.Sliceable.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]}]}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.39\",\"parameters\":[{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"borrow\":false},{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]}]}}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.27\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.28\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"List.lengthTR\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.decLe\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]}]},\"discriminant\":\"_uniq.31\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.33\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.drop\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.takeTR\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.37\"}}}}}]}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.40\"}}}},\"uses\":[\"Add\",\"Decidable\",\"HAdd\",\"List\",\"Nat\",\"Option\",\"instAddNat\",\"instHAdd\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.Sliceable\",\"List.drop\",\"List.lengthTR\",\"List.takeTR\",\"Nat.decLe\",\"Option.none\",\"Option.some\",\"LexLeanRuntime.Sliceable.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instToMathIntInt\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"LexLeanRuntime.ToMathInt.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.4\",\"parameters\":[{\"id\":\"_uniq.3\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.5\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.4\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.5\"}}}},\"uses\":[\"Int\",\"LexLeanRuntime.ToMathInt\",\"LexLeanRuntime.ToMathInt.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.join\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"String\",\"String.intercalate\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"String.intercalate\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.13\"}}},\"uses\":[\"List\",\"String\",\"String.intercalate\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.length\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.Lengthable.length\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}}},\"parameters\":[{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Lengthable\",\"index\":0,\"value\":\"_uniq.16\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.18\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.19\"}}}},\"uses\":[\"Nat\",\"LexLeanRuntime.Lengthable\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.listIndex\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Option\",\"List.brecOn\",\"LexLeanRuntime.listIndex._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]}}}},\"parameters\":[{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"borrow\":false},{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.70\",\"parameters\":[{\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.69\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.70\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.81\",\"parameters\":[{\"id\":\"_uniq.78\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},\"borrow\":false},{\"id\":\"_uniq.79\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.78\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.80\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.81\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.96\",\"parameters\":[{\"id\":\"_uniq.92\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},\"borrow\":false},{\"id\":\"_uniq.93\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"borrow\":false},{\"id\":\"_uniq.94\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]}}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.listIndex\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.93\"},{\"kind\":\"fvar\",\"id\":\"_uniq.94\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.95\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]}}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.96\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"discriminant\":\"_uniq.60\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.71\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.106\"}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.107\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},\"borrow\":false},{\"id\":\"_uniq.108\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"borrow\":false}],\"code\":{\"kind\":\"cases\",\"type_name\":\"Nat\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"discriminant\":\"_uniq.61\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Nat.zero\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.82\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.107\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.114\"}}},{\"kind\":\"constructor\",\"constructor\":\"Nat.succ\",\"parameters\":[{\"id\":\"_uniq.115\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.97\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.107\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"},{\"kind\":\"fvar\",\"id\":\"_uniq.115\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.116\"}}}]}}]}}}}}}}},\"uses\":[\"List\",\"Nat\",\"Option\",\"LexLeanRuntime.listIndex\",\"List.cons\",\"List.nil\",\"Nat.succ\",\"Nat.zero\",\"Option.none\",\"Option.some\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.magnitudeInt64\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int64\",\"UInt64\",\"instHSub\",\"instLTInt64\",\"instSubUInt64\",\"ite\",\"HSub.hSub\",\"Int64.decLt\",\"Int64.instOfNat\",\"Int64.toUInt64\",\"LT.lt\",\"OfNat.ofNat\",\"UInt64.instOfNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Int64\",\"index\":0,\"value\":\"_uniq.12\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.16\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.27\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"discriminant\":\"_uniq.29\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.17\"}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubUInt64\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HSub\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHSub\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HSub\",\"index\":0,\"value\":\"_uniq.33\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.35\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.34\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.37\"}}}}}}}}]}}}}}}}},\"uses\":[\"Decidable\",\"HSub\",\"Int64\",\"Nat\",\"OfNat\",\"Sub\",\"UInt64\",\"instHSub\",\"instSubUInt64\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Int64.decLt\",\"Int64.instOfNat\",\"UInt64.instOfNat\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.multiply\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Mul\",\"instHMul\",\"HMul.hMul\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Mul\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}},\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Mul\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"borrow\":false},{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"borrow\":false},{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HMul\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instHMul\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HMul\",\"index\":0,\"value\":\"_uniq.39\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}}}},\"uses\":[\"HMul\",\"Mul\",\"instHMul\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.multiplyMagnitudeInt64\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Nat\",\"Option\",\"UInt64\",\"Nat.brecOn\",\"LexLeanRuntime.multiplyMagnitudeInt64._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]}}}}}},\"parameters\":[{\"id\":\"_uniq.114\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.115\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.116\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.117\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.118\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.138\",\"parameters\":[{\"id\":\"_uniq.133\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.134\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.135\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.136\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]}}}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.137\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.135\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.137\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.139\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]}}}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.138\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.295\",\"parameters\":[{\"id\":\"_uniq.158\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.159\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.160\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.161\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.162\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]}}}}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.174\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.175\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.162\"},{\"kind\":\"fvar\",\"id\":\"_uniq.174\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.294\",\"parameters\":[{\"id\":\"_uniq.184\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.185\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.184\",\"arguments\":[]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.293\",\"parameters\":[{\"id\":\"_uniq.202\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.203\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.202\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.212\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.203\"},{\"kind\":\"fvar\",\"id\":\"_uniq.161\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"discriminant\":\"_uniq.212\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.213\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.215\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddUInt64\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.216\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.215\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.217\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.216\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.218\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.217\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.161\"},{\"kind\":\"fvar\",\"id\":\"_uniq.161\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.219\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.218\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.228\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"9223372036854775808\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.229\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.228\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.230\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.229\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.231\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.decLe\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.230\"},{\"kind\":\"fvar\",\"id\":\"_uniq.159\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"discriminant\":\"_uniq.231\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.232\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.233\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.217\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.159\"},{\"kind\":\"fvar\",\"id\":\"_uniq.159\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.234\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.multiplyMagnitudeInt64\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.158\"},{\"kind\":\"fvar\",\"id\":\"_uniq.233\"},{\"kind\":\"fvar\",\"id\":\"_uniq.160\"},{\"kind\":\"fvar\",\"id\":\"_uniq.219\"},{\"kind\":\"fvar\",\"id\":\"_uniq.162\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.234\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.235\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.251\",\"parameters\":[{\"id\":\"_uniq.249\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.250\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.250\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.252\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.251\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.261\",\"parameters\":[{\"id\":\"_uniq.254\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.255\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubUInt64\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.256\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HSub\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHSub\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.255\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.257\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HSub\",\"index\":0,\"value\":\"_uniq.256\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.258\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.257\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.185\"},{\"kind\":\"fvar\",\"id\":\"_uniq.160\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.259\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.258\"},{\"kind\":\"fvar\",\"id\":\"_uniq.219\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.260\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Decidable.decide\",\"levels\":[],\"arguments\":[{\"kind\":\"erased\"},{\"kind\":\"fvar\",\"id\":\"_uniq.259\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.260\"}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.262\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.261\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.267\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.185\"},{\"kind\":\"fvar\",\"id\":\"_uniq.160\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.268\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Decidable.decide\",\"levels\":[],\"arguments\":[{\"kind\":\"erased\"},{\"kind\":\"fvar\",\"id\":\"_uniq.267\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.282\",\"parameters\":[{\"id\":\"_uniq.273\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.274\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.273\"},{\"kind\":\"fvar\",\"id\":\"_uniq.174\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"discriminant\":\"_uniq.274\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.275\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.276\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.217\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.159\"},{\"kind\":\"fvar\",\"id\":\"_uniq.159\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.277\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.217\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.219\"},{\"kind\":\"fvar\",\"id\":\"_uniq.160\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.278\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.multiplyMagnitudeInt64\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.158\"},{\"kind\":\"fvar\",\"id\":\"_uniq.276\"},{\"kind\":\"fvar\",\"id\":\"_uniq.160\"},{\"kind\":\"fvar\",\"id\":\"_uniq.277\"},{\"kind\":\"fvar\",\"id\":\"_uniq.162\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.278\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.279\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.280\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.280\"}}}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.285\",\"parameters\":[{\"id\":\"_uniq.283\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.284\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.262\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.283\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.282\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.284\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.288\",\"parameters\":[{\"id\":\"_uniq.286\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.287\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.252\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.286\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.282\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.287\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"discriminant\":\"_uniq.268\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.269\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.285\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.269\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.271\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.288\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.271\"}]}}}]}}}}}}}}}}}]}}}}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.290\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.291\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.291\"}}}]}}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"discriminant\":\"_uniq.175\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.194\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.195\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"4611686018427387903\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.196\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.195\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.197\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.196\"},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.293\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.197\"}]}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.198\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.199\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"4611686018427387904\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.200\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.199\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.201\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.200\"},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.293\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.201\"}]}}}}}]}}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"discriminant\":\"_uniq.175\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.176\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.177\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"9223372036854775807\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.178\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.177\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.179\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.178\"},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.294\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.179\"}]}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.180\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.181\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"9223372036854775808\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.182\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.181\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.183\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.182\"},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.294\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.183\"}]}}}}}]}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.296\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]}}}}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.295\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Nat\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"discriminant\":\"_uniq.114\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Nat.zero\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.302\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.139\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.115\"},{\"kind\":\"fvar\",\"id\":\"_uniq.116\"},{\"kind\":\"fvar\",\"id\":\"_uniq.117\"},{\"kind\":\"fvar\",\"id\":\"_uniq.118\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.302\"}}},{\"kind\":\"constructor\",\"constructor\":\"Nat.succ\",\"parameters\":[{\"id\":\"_uniq.303\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.304\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.296\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.303\"},{\"kind\":\"fvar\",\"id\":\"_uniq.115\"},{\"kind\":\"fvar\",\"id\":\"_uniq.116\"},{\"kind\":\"fvar\",\"id\":\"_uniq.117\"},{\"kind\":\"fvar\",\"id\":\"_uniq.118\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.304\"}}}]}}}}}},\"uses\":[\"Add\",\"Bool\",\"Decidable\",\"HAdd\",\"HSub\",\"Nat\",\"OfNat\",\"Option\",\"PUnit\",\"Sub\",\"UInt64\",\"instAddUInt64\",\"instDecidableEqBool\",\"instHAdd\",\"instHSub\",\"instSubUInt64\",\"Bool.false\",\"Bool.true\",\"Decidable.decide\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.multiplyMagnitudeInt64\",\"Nat.succ\",\"Nat.zero\",\"Option.none\",\"Option.some\",\"UInt64.decLe\",\"UInt64.decLt\",\"UInt64.instOfNat\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.negate\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Neg\",\"Neg.neg\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Neg\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"bvar\",\"index\":2}}}},\"parameters\":[{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Neg\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"borrow\":false},{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Neg\",\"index\":0,\"value\":\"_uniq.26\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.29\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.30\"}}}},\"uses\":[\"Neg\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.parseDecimal\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"String\",\"LexLeanRuntime.Decimal\",\"LexLeanRuntime.Decimal.parse\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Decimal\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]}}}},\"parameters\":[{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Decimal\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Decimal\",\"index\":0,\"value\":\"_uniq.16\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.18\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.19\"}}}},\"uses\":[\"Option\",\"String\",\"LexLeanRuntime.Decimal\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.quotient\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"LexLeanRuntime.Quotient\",\"LexLeanRuntime.Quotient.isZero\",\"LexLeanRuntime.Quotient.quotient\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":3},\"codomain\":{\"kind\":\"bvar\",\"index\":4}}}}}},\"parameters\":[{\"id\":\"_uniq.39\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"borrow\":false},{\"id\":\"_uniq.41\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"borrow\":false},{\"id\":\"_uniq.42\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"borrow\":false},{\"id\":\"_uniq.43\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Quotient\",\"index\":2,\"value\":\"_uniq.40\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.52\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"discriminant\":\"_uniq.55\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Quotient\",\"index\":0,\"value\":\"_uniq.40\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.59\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.60\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.43\"}}]}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.Quotient\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.remainder\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"LexLeanRuntime.Quotient\",\"LexLeanRuntime.Quotient.isZero\",\"LexLeanRuntime.Quotient.remainder\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":3},\"codomain\":{\"kind\":\"bvar\",\"index\":4}}}}}},\"parameters\":[{\"id\":\"_uniq.39\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"borrow\":false},{\"id\":\"_uniq.41\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"borrow\":false},{\"id\":\"_uniq.42\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"borrow\":false},{\"id\":\"_uniq.43\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Quotient\",\"index\":2,\"value\":\"_uniq.40\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.52\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"discriminant\":\"_uniq.55\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Quotient\",\"index\":1,\"value\":\"_uniq.40\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.59\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.60\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.43\"}}]}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.Quotient\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.shiftLeft\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"UInt32\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.Fixed.shiftLeft\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}},\"parameters\":[{\"id\":\"_uniq.19\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"borrow\":false},{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":8,\"value\":\"_uniq.20\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.23\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.24\"}}}},\"uses\":[\"Option\",\"UInt32\",\"LexLeanRuntime.Fixed\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.shiftRight\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"UInt32\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.Fixed.shiftRight\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}},\"parameters\":[{\"id\":\"_uniq.19\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"borrow\":false},{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":9,\"value\":\"_uniq.20\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.23\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.24\"}}}},\"uses\":[\"Option\",\"UInt32\",\"LexLeanRuntime.Fixed\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.signedMagnitudeInt64\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"UInt64\",\"instDecidableEqBool\",\"instHSub\",\"instSubUInt64\",\"ite\",\"Bool.true\",\"HSub.hSub\",\"OfNat.ofNat\",\"UInt64.instOfNat\",\"UInt64.toInt64\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.37\",\"parameters\":[{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.toInt64\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.36\"}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"discriminant\":\"_uniq.25\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.26\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.37\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubUInt64\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HSub\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHSub\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HSub\",\"index\":0,\"value\":\"_uniq.29\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.32\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.30\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.37\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]}}}}}}}}}]}}}}},\"uses\":[\"Bool\",\"Decidable\",\"HSub\",\"Int64\",\"Nat\",\"OfNat\",\"Sub\",\"UInt64\",\"instDecidableEqBool\",\"instHSub\",\"instSubUInt64\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"UInt64.instOfNat\",\"UInt64.toInt64\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.slice\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"LexLeanRuntime.Sliceable\",\"LexLeanRuntime.Sliceable.slice\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":4}]}}}}}},\"parameters\":[{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"borrow\":false},{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},\"borrow\":false},{\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]}}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Sliceable\",\"index\":0,\"value\":\"_uniq.24\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.28\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.29\"}}}},\"uses\":[\"Nat\",\"Option\",\"LexLeanRuntime.Sliceable\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.splitExact\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"List\",\"Nat\",\"Option\",\"String\",\"UInt32\",\"instDecidableEqBool\",\"instLTNat\",\"ite\",\"Bool.or\",\"Bool.true\",\"Decidable.decide\",\"LT.lt\",\"List.length\",\"Nat.decLt\",\"Option.none\",\"Option.some\",\"String.isEmpty\",\"String.splitOn\",\"UInt32.toNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]}}}},\"parameters\":[{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"String.splitOn\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.39\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.56\",\"parameters\":[{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.55\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.64\",\"parameters\":[{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"List.lengthTR\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Decidable.decide\",\"levels\":[],\"arguments\":[{\"kind\":\"erased\"},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.63\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.64\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"String.isEmpty\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.83\",\"parameters\":[{\"id\":\"_uniq.75\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.77\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.78\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.79\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.80\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.81\"}}}]}}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.89\",\"parameters\":[{\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.57\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.87\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.83\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.86\",\"parameters\":[{\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.84\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.83\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.85\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.70\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.86\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.89\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]}}}]}}}}}}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"List\",\"Nat\",\"Option\",\"PUnit\",\"String\",\"UInt32\",\"instDecidableEqBool\",\"Bool.false\",\"Bool.true\",\"Decidable.decide\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"List.lengthTR\",\"Nat.decLt\",\"Option.none\",\"Option.some\",\"String.isEmpty\",\"String.splitOn\",\"UInt32.toNat\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.subtract\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Sub\",\"instHSub\",\"HSub.hSub\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}},\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"borrow\":false},{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"borrow\":false},{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HSub\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instHSub\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HSub\",\"index\":0,\"value\":\"_uniq.39\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}}}},\"uses\":[\"HSub\",\"Sub\",\"instHSub\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.utf8Decode\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"String.fromUTF8?\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"String.fromUTF8?\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}},\"uses\":[\"ByteArray\",\"Option\",\"String\",\"String.fromUTF8?\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.utf8Encode\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"String\",\"String.toUTF8\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"String.toUTF8\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}},\"uses\":[\"ByteArray\",\"String\",\"String.toUTF8\"]},\"inductive\":null},{\"name\":\"Coverage.Boundary.Grove\",\"kind\":\"inductive\",\"module\":\"Coverage.Boundary\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":true,\"constructors\":[{\"name\":\"Coverage.Boundary.Grove.node\",\"parameters\":0,\"fields\":5,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]}}}}}}},{\"name\":\"Coverage.Boundary.Grove.leaf\",\"parameters\":0,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]}}},{\"name\":\"Coverage.Boundary.Grove.settled\",\"parameters\":0,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]}}}]}},{\"name\":\"Coverage.Boundary.Ledger\",\"kind\":\"inductive\",\"module\":\"Coverage.Boundary\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Coverage.Boundary.Ledger.mk\",\"parameters\":0,\"fields\":2,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Ledger\",\"levels\":[]}}}}]}},{\"name\":\"Coverage.Boundary.groveRoot\",\"kind\":\"definition\",\"module\":\"Coverage.Boundary\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"List\",\"Nat\",\"Option\",\"Prod\",\"Prod.mk\",\"Coverage.Boundary.Grove\",\"Coverage.Boundary.Ledger\",\"Coverage.Boundary.groveTags\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Ledger\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Ledger\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]}]}}}}},\"parameters\":[{\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Ledger\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"borrow\":false},{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Boundary.groveTags\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Ledger\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Ledger\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Ledger\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Ledger\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.25\"}}}}}},\"uses\":[\"Bool\",\"List\",\"Nat\",\"Option\",\"Prod\",\"Prod.mk\",\"Coverage.Boundary.Grove\",\"Coverage.Boundary.Ledger\",\"Coverage.Boundary.groveTags\"]},\"inductive\":null},{\"name\":\"Coverage.Boundary.groveTags\",\"kind\":\"definition\",\"module\":\"Coverage.Boundary\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Except\",\"Int\",\"List\",\"Nat\",\"Option\",\"Prod\",\"String\",\"instOfNatNat\",\"LexLeanCollections.mapSize\",\"LexLeanCollections.setSize\",\"OfNat.ofNat\",\"Coverage.Boundary.Grove\",\"Coverage.Boundary.groveTags.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.75\",\"parameters\":[{\"id\":\"_uniq.69\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.71\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"borrow\":false},{\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.73\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}}}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.setSize\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.69\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.74\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}}}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.75\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.82\",\"parameters\":[{\"id\":\"_uniq.80\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.mapSize\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.81\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.82\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.91\",\"parameters\":[{\"id\":\"_uniq.87\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.89\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.90\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.91\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Coverage.Boundary.Grove\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.53\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Coverage.Boundary.Grove.node\",\"parameters\":[{\"id\":\"_uniq.105\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.106\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.107\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"borrow\":false},{\"id\":\"_uniq.108\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.109\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]}]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.110\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.76\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.105\"},{\"kind\":\"fvar\",\"id\":\"_uniq.106\"},{\"kind\":\"fvar\",\"id\":\"_uniq.107\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"},{\"kind\":\"fvar\",\"id\":\"_uniq.109\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.110\"}}},{\"kind\":\"constructor\",\"constructor\":\"Coverage.Boundary.Grove.leaf\",\"parameters\":[{\"id\":\"_uniq.111\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.83\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.111\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.112\"}}},{\"kind\":\"constructor\",\"constructor\":\"Coverage.Boundary.Grove.settled\",\"parameters\":[{\"id\":\"_uniq.113\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.92\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.113\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.114\"}}}]}}}}}}}},\"uses\":[\"Except\",\"Int\",\"List\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"String\",\"instOfNatNat\",\"LexLeanCollections.mapSize\",\"LexLeanCollections.setSize\",\"Coverage.Boundary.Grove\",\"Coverage.Boundary.Grove.leaf\",\"Coverage.Boundary.Grove.node\",\"Coverage.Boundary.Grove.settled\"]},\"inductive\":null},{\"name\":\"Coverage.Colls.folds\",\"kind\":\"definition\",\"module\":\"Coverage.Colls\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"List\",\"Nat\",\"instAddNat\",\"instHAdd\",\"instOfNat\",\"instOfNatNat\",\"HAdd.hAdd\",\"Int.instSub\",\"LexLeanCollections.listFold\",\"LexLeanCollections.setFold\",\"LexLeanRuntime.subtract\",\"OfNat.ofNat\",\"Prod.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.25\",\"parameters\":[{\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.23\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.24\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.27\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.36\",\"parameters\":[{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instSub\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.35\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"5\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.38\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.setFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.41\"}}}}}}}}}}}}},\"uses\":[\"Add\",\"HAdd\",\"Int\",\"List\",\"Nat\",\"OfNat\",\"Prod\",\"Sub\",\"instAddNat\",\"instHAdd\",\"instOfNat\",\"instOfNatNat\",\"Int.instSub\",\"LexLeanCollections.listFold\",\"LexLeanCollections.setFold\",\"LexLeanRuntime.subtract\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Coverage.Colls.graphs\",\"kind\":\"definition\",\"module\":\"Coverage.Colls\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Option\",\"Prod\",\"LexLeanCollections.graphReachable\",\"LexLeanCollections.graphSuccessors\",\"LexLeanCollections.graphTopological\",\"LexLeanCollections.instKeyNat\",\"Prod.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.instKeyNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.graphSuccessors\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.graphReachable\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.graphTopological\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.18\"}}}}}}}},\"uses\":[\"List\",\"Nat\",\"Option\",\"Prod\",\"LexLeanCollections.Key\",\"LexLeanCollections.graphReachable\",\"LexLeanCollections.graphSuccessors\",\"LexLeanCollections.graphTopological\",\"LexLeanCollections.instKeyNat\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Coverage.Colls.iterations\",\"kind\":\"definition\",\"module\":\"Coverage.Colls\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Nat\",\"Option\",\"Prod\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"ite\",\"Bool.true\",\"HAdd.hAdd\",\"LexLeanCollections.iterate\",\"LexLeanCollections.iterateUntil\",\"Nat.blt\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Prod.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}}},\"parameters\":[{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.27\",\"parameters\":[{\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.21\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.24\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.22\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.26\"}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterate\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.57\",\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"10\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.40\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.44\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.45\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.46\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.47\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.49\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.52\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.50\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.55\"}}}}}}}}}}]}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.59\"}}}}}}},\"uses\":[\"Add\",\"Bool\",\"Decidable\",\"HAdd\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanCollections.iterate\",\"LexLeanCollections.iterateUntil\",\"Nat.blt\",\"Option.none\",\"Option.some\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Coverage.Colls.keyTypes\",\"kind\":\"definition\",\"module\":\"Coverage.Colls\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Int\",\"Int8\",\"List\",\"Nat\",\"Option\",\"Prod\",\"String\",\"UInt64\",\"LexLeanCollections.instKeyBool\",\"LexLeanCollections.instKeyInt\",\"LexLeanCollections.instKeyInt8\",\"LexLeanCollections.instKeyNat\",\"LexLeanCollections.instKeyProd\",\"LexLeanCollections.instKeyString\",\"LexLeanCollections.instKeyUInt64\",\"LexLeanCollections.mapLookup\",\"Prod.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}]}}}}}}}}}}},\"parameters\":[{\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]},\"borrow\":false},{\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"borrow\":false},{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"borrow\":false},{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"borrow\":false},{\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"borrow\":false},{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.instKeyNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.instKeyString\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.instKeyProd\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.mapLookup\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.instKeyInt8\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.mapLookup\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.instKeyBool\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.mapLookup\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.67\"},{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.instKeyInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.mapLookup\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.69\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.instKeyUInt64\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.mapLookup\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.71\"},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.70\"},{\"kind\":\"fvar\",\"id\":\"_uniq.72\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.68\"},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.66\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.75\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.76\"}}}}}}}}}}}}}}}}}},\"uses\":[\"Bool\",\"Int\",\"Int8\",\"List\",\"Nat\",\"Option\",\"Prod\",\"String\",\"UInt64\",\"LexLeanCollections.Key\",\"LexLeanCollections.instKeyBool\",\"LexLeanCollections.instKeyInt\",\"LexLeanCollections.instKeyInt8\",\"LexLeanCollections.instKeyNat\",\"LexLeanCollections.instKeyProd\",\"LexLeanCollections.instKeyString\",\"LexLeanCollections.instKeyUInt64\",\"LexLeanCollections.mapLookup\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Coverage.Colls.literals\",\"kind\":\"definition\",\"module\":\"Coverage.Colls\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Prod\",\"String\",\"instOfNatNat\",\"List.cons\",\"List.nil\",\"OfNat.ofNat\",\"Prod.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"a\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"b\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.17\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.24\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.27\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.40\"}}}}}}}}}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"List\",\"Nat\",\"OfNat\",\"Prod\",\"String\",\"instOfNatNat\",\"List.cons\",\"List.nil\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Coverage.Colls.mapFolding\",\"kind\":\"definition\",\"module\":\"Coverage.Colls\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Prod\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"HAdd.hAdd\",\"LexLeanCollections.mapFold\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"borrow\":false},{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.44\",\"parameters\":[{\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.23\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.40\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.40\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.40\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.43\"}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.46\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.mapFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.48\"}}}}}}},\"uses\":[\"Add\",\"HAdd\",\"List\",\"Nat\",\"OfNat\",\"Prod\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"LexLeanCollections.mapFold\"]},\"inductive\":null},{\"name\":\"Coverage.Colls.mapOps\",\"kind\":\"definition\",\"module\":\"Coverage.Colls\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"List\",\"Nat\",\"Option\",\"Prod\",\"String\",\"LexLeanCollections.instKeyString\",\"LexLeanCollections.mapContains\",\"LexLeanCollections.mapEntries\",\"LexLeanCollections.mapInsert\",\"LexLeanCollections.mapKeys\",\"LexLeanCollections.mapLookup\",\"LexLeanCollections.mapRemove\",\"LexLeanCollections.mapSize\",\"LexLeanCollections.mapValues\",\"Prod.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}]}]}]}]}]}}}},\"parameters\":[{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.instKeyString\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.mapInsert\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.mapRemove\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.mapLookup\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.mapContains\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.mapKeys\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.mapValues\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.mapSize\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.mapEntries\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.34\"}}}}}}}}}}}}}}}}}},\"uses\":[\"Bool\",\"List\",\"Nat\",\"Option\",\"Prod\",\"String\",\"LexLeanCollections.Key\",\"LexLeanCollections.instKeyString\",\"LexLeanCollections.mapContains\",\"LexLeanCollections.mapEntries\",\"LexLeanCollections.mapInsert\",\"LexLeanCollections.mapKeys\",\"LexLeanCollections.mapLookup\",\"LexLeanCollections.mapRemove\",\"LexLeanCollections.mapSize\",\"LexLeanCollections.mapValues\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Coverage.Colls.setOps\",\"kind\":\"definition\",\"module\":\"Coverage.Colls\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"List\",\"Nat\",\"Prod\",\"LexLeanCollections.instKeyNat\",\"LexLeanCollections.setContains\",\"LexLeanCollections.setDifference\",\"LexLeanCollections.setElements\",\"LexLeanCollections.setInsert\",\"LexLeanCollections.setIntersection\",\"LexLeanCollections.setRemove\",\"LexLeanCollections.setSize\",\"LexLeanCollections.setUnion\",\"Prod.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}]}]}]}]}}}},\"parameters\":[{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.instKeyNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.setInsert\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.setRemove\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.setContains\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.setUnion\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.setIntersection\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.setDifference\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.setSize\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.setElements\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.34\"}}}}}}}}}}}}}}}}}},\"uses\":[\"Bool\",\"List\",\"Nat\",\"Prod\",\"LexLeanCollections.Key\",\"LexLeanCollections.instKeyNat\",\"LexLeanCollections.setContains\",\"LexLeanCollections.setDifference\",\"LexLeanCollections.setElements\",\"LexLeanCollections.setInsert\",\"LexLeanCollections.setIntersection\",\"LexLeanCollections.setRemove\",\"LexLeanCollections.setSize\",\"LexLeanCollections.setUnion\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Coverage.Colls.stringGraph\",\"kind\":\"definition\",\"module\":\"Coverage.Colls\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Prod\",\"String\",\"LexLeanCollections.graphTopological\",\"LexLeanCollections.instKeyString\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.instKeyString\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.graphTopological\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.8\"}}}},\"uses\":[\"List\",\"Option\",\"Prod\",\"String\",\"LexLeanCollections.Key\",\"LexLeanCollections.graphTopological\",\"LexLeanCollections.instKeyString\"]},\"inductive\":null},{\"name\":\"Coverage.Main.builders\",\"kind\":\"definition\",\"module\":\"Coverage.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Except\",\"Nat\",\"Option\",\"Unit\",\"instDecidableEqBool\",\"instOfNatNat\",\"ite\",\"Bool.true\",\"Except.error\",\"Except.ok\",\"Nat.blt\",\"Nat.succ\",\"Nat.zero\",\"OfNat.ofNat\",\"Option.some\",\"Prod.mk\",\"Unit.unit\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"parameters\":[{\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.succ\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.23\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.48\",\"parameters\":[{\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.47\"}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.27\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.48\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.zero\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.48\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]}}}}]}}}}}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Except\",\"Nat\",\"OfNat\",\"Option\",\"PUnit\",\"Prod\",\"instDecidableEqBool\",\"instOfNatNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Except.error\",\"Except.ok\",\"Nat.blt\",\"Nat.succ\",\"Nat.zero\",\"Option.some\",\"Prod.mk\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"Coverage.Main.double\",\"kind\":\"definition\",\"module\":\"Coverage.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instAddNat\",\"instHAdd\",\"HAdd.hAdd\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.8\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.9\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.10\"}}}}}},\"uses\":[\"Add\",\"HAdd\",\"Nat\",\"instAddNat\",\"instHAdd\"]},\"inductive\":null},{\"name\":\"Coverage.Main.higher\",\"kind\":\"definition\",\"module\":\"Coverage.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instAddNat\",\"instHAdd\",\"instMulNat\",\"instOfNatNat\",\"instSubNat\",\"HAdd.hAdd\",\"LexLeanRuntime.multiply\",\"LexLeanRuntime.subtract\",\"OfNat.ofNat\",\"Coverage.Main.double\",\"Coverage.Types.twice\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.20\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.23\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.21\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.25\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.32\",\"parameters\":[{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Mul\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instMulNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.multiply\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.21\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.twice\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.39\",\"parameters\":[{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.38\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.39\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Main.double\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.twice\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.21\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.21\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.44\"}}}}}}}}}}}}}}}}}},\"uses\":[\"Add\",\"HAdd\",\"Mul\",\"Nat\",\"OfNat\",\"Sub\",\"instAddNat\",\"instHAdd\",\"instMulNat\",\"instOfNatNat\",\"instSubNat\",\"LexLeanRuntime.multiply\",\"LexLeanRuntime.subtract\",\"Coverage.Main.double\",\"Coverage.Types.twice\"]},\"inductive\":null},{\"name\":\"Coverage.Main.intOps\",\"kind\":\"definition\",\"module\":\"Coverage.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"instOfNat\",\"Int.instMul\",\"Int.instNegInt\",\"Int.instSub\",\"LexLeanRuntime.instQuotientInt\",\"LexLeanRuntime.multiply\",\"LexLeanRuntime.negate\",\"LexLeanRuntime.quotient\",\"LexLeanRuntime.remainder\",\"LexLeanRuntime.subtract\",\"Neg.neg\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instSub\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Mul\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instMul\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Neg\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instNegInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Neg\",\"index\":0,\"value\":\"_uniq.15\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.24\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.22\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.multiply\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instQuotientInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.quotient\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.34\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.remainder\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.negate\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.38\"}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Int\",\"Mul\",\"Nat\",\"Neg\",\"OfNat\",\"Sub\",\"instOfNat\",\"Int.instMul\",\"Int.instNegInt\",\"Int.instSub\",\"LexLeanRuntime.Quotient\",\"LexLeanRuntime.instQuotientInt\",\"LexLeanRuntime.multiply\",\"LexLeanRuntime.negate\",\"LexLeanRuntime.quotient\",\"LexLeanRuntime.remainder\",\"LexLeanRuntime.subtract\"]},\"inductive\":null},{\"name\":\"Coverage.Main.mapped\",\"kind\":\"definition\",\"module\":\"Coverage.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"List\",\"Nat\",\"Coverage.Types.isEven\",\"Coverage.Types.mapList\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.isEven\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.mapList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.8\"}}}},\"uses\":[\"Bool\",\"List\",\"Nat\",\"Coverage.Types.isEven\",\"Coverage.Types.mapList\"]},\"inductive\":null},{\"name\":\"Coverage.Main.natOps\",\"kind\":\"definition\",\"module\":\"Coverage.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Nat\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instMulNat\",\"instOfNatNat\",\"instSubNat\",\"ite\",\"Bool.and\",\"Bool.not\",\"Bool.or\",\"Bool.true\",\"HAdd.hAdd\",\"LexLeanRuntime.instQuotientNat\",\"LexLeanRuntime.multiply\",\"LexLeanRuntime.quotient\",\"LexLeanRuntime.remainder\",\"LexLeanRuntime.subtract\",\"Nat.beq\",\"Nat.ble\",\"Nat.blt\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instQuotientNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"7\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.51\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.quotient\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"},{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.53\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.56\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.remainder\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.58\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.75\",\"parameters\":[{\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.74\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.75\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.108\",\"parameters\":[{\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.87\",\"parameters\":[{\"id\":\"_uniq.85\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.86\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.87\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.93\",\"parameters\":[{\"id\":\"_uniq.90\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.not\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.91\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.92\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.93\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.99\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.100\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.101\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.102\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.94\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.104\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.88\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.105\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.106\"}}}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.108\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.133\",\"parameters\":[{\"id\":\"_uniq.119\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.120\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.121\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.119\"},{\"kind\":\"fvar\",\"id\":\"_uniq.120\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.121\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.122\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Mul\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instMulNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.124\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.multiply\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.123\"},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.124\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.125\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.127\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.126\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.128\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.127\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.129\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.130\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.129\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.131\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.128\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.130\"},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.131\"}}}}}}}}]}}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.136\",\"parameters\":[{\"id\":\"_uniq.134\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.135\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.76\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.134\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.133\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.135\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.139\",\"parameters\":[{\"id\":\"_uniq.137\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.138\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.109\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.137\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.133\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.138\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.114\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.136\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.115\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.139\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.117\"}]}}}]}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Add\",\"Bool\",\"Decidable\",\"HAdd\",\"Mul\",\"Nat\",\"OfNat\",\"PUnit\",\"Sub\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instMulNat\",\"instOfNatNat\",\"instSubNat\",\"Bool.false\",\"Bool.not\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.Quotient\",\"LexLeanRuntime.instQuotientNat\",\"LexLeanRuntime.multiply\",\"LexLeanRuntime.quotient\",\"LexLeanRuntime.remainder\",\"LexLeanRuntime.subtract\",\"Nat.beq\",\"Nat.ble\",\"Nat.blt\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"Coverage.Main.options\",\"kind\":\"definition\",\"module\":\"Coverage.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Except\",\"Nat\",\"Option\",\"Unit\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"ite\",\"Bool.true\",\"HAdd.hAdd\",\"OfNat.ofNat\",\"Coverage.Main.options.match_1\",\"Coverage.Main.options.match_3\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.48\"},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.59\",\"parameters\":[{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.57\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.58\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.59\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.65\",\"parameters\":[{\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.64\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.131\",\"parameters\":[{\"id\":\"_uniq.78\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.106\",\"parameters\":[{\"id\":\"_uniq.86\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.86\"},{\"kind\":\"fvar\",\"id\":\"_uniq.95\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.96\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.97\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.98\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.99\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.100\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.101\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.102\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.103\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.104\"}}}}}]}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.106\",\"arguments\":[]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.124\",\"parameters\":[{\"id\":\"_uniq.122\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.49\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.78\"},{\"kind\":\"fvar\",\"id\":\"_uniq.122\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.123\"}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.130\",\"parameters\":[{\"id\":\"_uniq.128\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.129\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.82\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.128\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.124\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.129\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.127\",\"parameters\":[{\"id\":\"_uniq.125\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.107\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.125\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.124\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.126\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Except\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.46\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Except.error\",\"parameters\":[{\"id\":\"_uniq.118\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.127\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.118\"}]}},{\"kind\":\"constructor\",\"constructor\":\"Except.ok\",\"parameters\":[{\"id\":\"_uniq.120\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.130\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.120\"}]}}]}}}}}}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.134\",\"parameters\":[{\"id\":\"_uniq.132\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.60\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.132\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.131\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.133\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.137\",\"parameters\":[{\"id\":\"_uniq.135\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.66\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.135\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.131\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.136\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.45\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.134\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.137\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}}]}}}}}}}}}}}},\"uses\":[\"Add\",\"Bool\",\"Decidable\",\"Except\",\"HAdd\",\"Nat\",\"OfNat\",\"Option\",\"PUnit\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Except.error\",\"Except.ok\",\"Option.none\",\"Option.some\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"Coverage.Main.pairs\",\"kind\":\"definition\",\"module\":\"Coverage.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Nat\",\"Prod\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.6\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.6\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.9\"}}}}},\"uses\":[\"Bool\",\"Nat\",\"Prod\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Coverage.Main.parity\",\"kind\":\"definition\",\"module\":\"Coverage.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Coverage.Types.isOdd\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.isOdd\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}},\"uses\":[\"Bool\",\"Nat\",\"Coverage.Types.isOdd\"]},\"inductive\":null},{\"name\":\"Coverage.Main.records\",\"kind\":\"definition\",\"module\":\"Coverage.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"HAdd.hAdd\",\"OfNat.ofNat\",\"Prod.mk\",\"Coverage.Types.Point\",\"Coverage.Types.defaultWeights\",\"Coverage.Types.unbox\",\"Coverage.Types.Box.mk\",\"Coverage.Types.Point.mk\",\"Coverage.Types.Point.x\",\"Coverage.Types.Point.y\",\"Coverage.Types.Weights.scale\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Point\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Point.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Point\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.19\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Coverage.Types.Point\",\"index\":0,\"value\":\"_uniq.20\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Weights\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.defaultWeights\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Coverage.Types.Weights\",\"index\":1,\"value\":\"_uniq.25\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.23\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Coverage.Types.Point\",\"index\":1,\"value\":\"_uniq.20\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.32\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Box\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Box.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.unbox\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.39\"}}}}}}}}}}}}}}}}}},\"uses\":[\"Add\",\"HAdd\",\"Nat\",\"OfNat\",\"Prod\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"Prod.mk\",\"Coverage.Types.Box\",\"Coverage.Types.Point\",\"Coverage.Types.Weights\",\"Coverage.Types.defaultWeights\",\"Coverage.Types.unbox\",\"Coverage.Types.Box.mk\",\"Coverage.Types.Point.mk\"]},\"inductive\":null},{\"name\":\"Coverage.Main.shapes\",\"kind\":\"definition\",\"module\":\"Coverage.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instAddNat\",\"instHAdd\",\"HAdd.hAdd\",\"Coverage.Types.area\",\"Coverage.Types.Shape.circle\",\"Coverage.Types.Shape.empty\",\"Coverage.Types.Shape.rect\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.14\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Shape\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Shape.rect\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.area\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Shape\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Shape.circle\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.area\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Shape\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Shape.empty\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.area\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.15\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.15\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.26\"}}}}}}}}}}}}},\"uses\":[\"Add\",\"HAdd\",\"Nat\",\"instAddNat\",\"instHAdd\",\"Coverage.Types.Shape\",\"Coverage.Types.area\",\"Coverage.Types.Shape.circle\",\"Coverage.Types.Shape.empty\",\"Coverage.Types.Shape.rect\"]},\"inductive\":null},{\"name\":\"Coverage.Main.treeTotal\",\"kind\":\"definition\",\"module\":\"Coverage.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"OfNat.ofNat\",\"Coverage.Types.treeSum\",\"Coverage.Types.Tree.leaf\",\"Coverage.Types.Tree.node\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Tree\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Tree.leaf\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"5\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.9\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Tree\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Tree.node\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Tree\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Tree.node\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.treeSum\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.16\"}}}}}}}}},\"uses\":[\"Nat\",\"OfNat\",\"instOfNatNat\",\"Coverage.Types.Tree\",\"Coverage.Types.treeSum\",\"Coverage.Types.Tree.leaf\",\"Coverage.Types.Tree.node\"]},\"inductive\":null},{\"name\":\"Coverage.Prims.bits\",\"kind\":\"definition\",\"module\":\"Coverage.Prims\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Option\",\"Prod\",\"UInt16\",\"UInt32\",\"instBEqOfDecidableEq\",\"instDecidableEqUInt16\",\"LexLeanRuntime.bitAnd\",\"LexLeanRuntime.bitNot\",\"LexLeanRuntime.bitOr\",\"LexLeanRuntime.bitXor\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.instFixedUInt16\",\"LexLeanRuntime.shiftLeft\",\"LexLeanRuntime.shiftRight\",\"OfNat.ofNat\",\"Prod.mk\",\"UInt32.instOfNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]}]}}}},\"parameters\":[{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instFixedUInt16\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.bitAnd\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.bitOr\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.bitXor\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.bitNot\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.shiftLeft\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.26\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.shiftRight\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqUInt16\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.39\"}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"BEq\",\"Bool\",\"Decidable\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"UInt16\",\"UInt32\",\"instBEqOfDecidableEq\",\"instDecidableEqUInt16\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.bitAnd\",\"LexLeanRuntime.bitNot\",\"LexLeanRuntime.bitOr\",\"LexLeanRuntime.bitXor\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.instFixedUInt16\",\"LexLeanRuntime.shiftLeft\",\"LexLeanRuntime.shiftRight\",\"Prod.mk\",\"UInt32.instOfNat\"]},\"inductive\":null},{\"name\":\"Coverage.Prims.conversions\",\"kind\":\"definition\",\"module\":\"Coverage.Prims\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"Int64\",\"Int8\",\"Option\",\"UInt16\",\"LexLeanRuntime.checkedConvert\",\"LexLeanRuntime.instFixedInt64\",\"LexLeanRuntime.instFixedInt8\",\"LexLeanRuntime.instFixedUInt16\",\"LexLeanRuntime.instToMathIntInt\",\"Prod.mk\",\"LexLeanRuntime.Fixed.toToMathInt\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instToMathIntInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instFixedUInt16\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedConvert\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instFixedInt8\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":0,\"value\":\"_uniq.16\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instFixedInt64\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedConvert\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.20\"}}}}}}}}}},\"uses\":[\"Int\",\"Int64\",\"Int8\",\"Option\",\"Prod\",\"UInt16\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.ToMathInt\",\"LexLeanRuntime.checkedConvert\",\"LexLeanRuntime.instFixedInt64\",\"LexLeanRuntime.instFixedInt8\",\"LexLeanRuntime.instFixedUInt16\",\"LexLeanRuntime.instToMathIntInt\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Coverage.Prims.decimals\",\"kind\":\"definition\",\"module\":\"Coverage.Prims\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"Option\",\"String\",\"UInt32\",\"instToStringUInt32\",\"LexLeanRuntime.instDecimalInt\",\"LexLeanRuntime.instDecimalOfFixedOfToString\",\"LexLeanRuntime.instFixedUInt32\",\"LexLeanRuntime.parseDecimal\",\"Prod.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Decimal\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instDecimalInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.parseDecimal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instFixedUInt32\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"ToString\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instToStringUInt32\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Decimal\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instDecimalOfFixedOfToString\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.parseDecimal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.13\"}}}}}}}}},\"uses\":[\"Int\",\"Option\",\"Prod\",\"String\",\"ToString\",\"UInt32\",\"instToStringUInt32\",\"LexLeanRuntime.Decimal\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.instDecimalInt\",\"LexLeanRuntime.instDecimalOfFixedOfToString\",\"LexLeanRuntime.instFixedUInt32\",\"LexLeanRuntime.parseDecimal\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Coverage.Prims.fixedMiddle\",\"kind\":\"definition\",\"module\":\"Coverage.Prims\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Int16\",\"Int32\",\"Option\",\"Prod\",\"instBEqOfDecidableEq\",\"instDecidableEqInt32\",\"Int32.instNeg\",\"Int32.instOfNat\",\"LexLeanRuntime.checkedAdd\",\"LexLeanRuntime.checkedConvert\",\"LexLeanRuntime.checkedMultiply\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.instFixedInt16\",\"LexLeanRuntime.instFixedInt32\",\"Neg.neg\",\"OfNat.ofNat\",\"Prod.mk\",\"LexLeanRuntime.Fixed.toToMathInt\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instFixedInt16\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedMultiply\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instFixedInt32\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Neg\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int32.instNeg\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Neg\",\"index\":0,\"value\":\"_uniq.16\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"7\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int32.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.19\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.17\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedAdd\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":0,\"value\":\"_uniq.13\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedConvert\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqInt32\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int32.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.53\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"},{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.58\"}}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"BEq\",\"Bool\",\"Decidable\",\"Int16\",\"Int32\",\"Nat\",\"Neg\",\"OfNat\",\"Option\",\"Prod\",\"instBEqOfDecidableEq\",\"instDecidableEqInt32\",\"Int32.instNeg\",\"Int32.instOfNat\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.ToMathInt\",\"LexLeanRuntime.checkedAdd\",\"LexLeanRuntime.checkedConvert\",\"LexLeanRuntime.checkedMultiply\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.instFixedInt16\",\"LexLeanRuntime.instFixedInt32\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Coverage.Prims.fixedSmall\",\"kind\":\"definition\",\"module\":\"Coverage.Prims\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int8\",\"Option\",\"Prod\",\"LexLeanRuntime.checkedAdd\",\"LexLeanRuntime.checkedMultiply\",\"LexLeanRuntime.checkedNegate\",\"LexLeanRuntime.checkedQuotient\",\"LexLeanRuntime.checkedSubtract\",\"LexLeanRuntime.instFixedInt8\",\"Prod.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]}]}]}]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instFixedInt8\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedAdd\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedSubtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedMultiply\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedQuotient\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedNegate\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.22\"}}}}}}}}}}}},\"uses\":[\"Int8\",\"Option\",\"Prod\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.checkedAdd\",\"LexLeanRuntime.checkedMultiply\",\"LexLeanRuntime.checkedNegate\",\"LexLeanRuntime.checkedQuotient\",\"LexLeanRuntime.checkedSubtract\",\"LexLeanRuntime.instFixedInt8\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Coverage.Prims.fixedWide\",\"kind\":\"definition\",\"module\":\"Coverage.Prims\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int64\",\"Option\",\"Prod\",\"UInt64\",\"LexLeanRuntime.checkedAdd\",\"LexLeanRuntime.checkedAddInt64\",\"LexLeanRuntime.checkedMultiplyInt64\",\"LexLeanRuntime.checkedNegateInt64\",\"LexLeanRuntime.checkedQuotientInt64\",\"LexLeanRuntime.checkedSubtractInt64\",\"LexLeanRuntime.instFixedUInt64\",\"OfNat.ofNat\",\"Prod.mk\",\"UInt64.instOfNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]}]}]}]}]}]}}}},\"parameters\":[{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedAddInt64\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedSubtractInt64\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedMultiplyInt64\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedQuotientInt64\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedNegateInt64\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instFixedUInt64\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.26\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedAdd\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.33\"}}}}}}}}}}}}}}}}},\"uses\":[\"Int64\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"UInt64\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.checkedAdd\",\"LexLeanRuntime.checkedAddInt64\",\"LexLeanRuntime.checkedMultiplyInt64\",\"LexLeanRuntime.checkedNegateInt64\",\"LexLeanRuntime.checkedQuotientInt64\",\"LexLeanRuntime.checkedSubtractInt64\",\"LexLeanRuntime.instFixedUInt64\",\"Prod.mk\",\"UInt64.instOfNat\"]},\"inductive\":null},{\"name\":\"Coverage.Prims.formats\",\"kind\":\"definition\",\"module\":\"Coverage.Prims\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"Int8\",\"String\",\"instToStringInt8\",\"LexLeanRuntime.formatDecimal\",\"LexLeanRuntime.instDecimalInt\",\"LexLeanRuntime.instDecimalOfFixedOfToString\",\"LexLeanRuntime.instFixedInt8\",\"Prod.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Decimal\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instDecimalInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.formatDecimal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instFixedInt8\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"ToString\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instToStringInt8\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Decimal\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instDecimalOfFixedOfToString\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.formatDecimal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.19\"}}}}}}}}},\"uses\":[\"Int\",\"Int8\",\"Prod\",\"String\",\"ToString\",\"instToStringInt8\",\"LexLeanRuntime.Decimal\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.formatDecimal\",\"LexLeanRuntime.instDecimalInt\",\"LexLeanRuntime.instDecimalOfFixedOfToString\",\"LexLeanRuntime.instFixedInt8\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Coverage.Prims.sequences\",\"kind\":\"definition\",\"module\":\"Coverage.Prims\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"List\",\"Nat\",\"Option\",\"Prod\",\"UInt8\",\"instAddNat\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instDecidableEqNat\",\"instHAdd\",\"instOfNatNat\",\"Bool.true\",\"ByteArray.instBEq\",\"ByteArray.mk\",\"HAdd.hAdd\",\"LexLeanRuntime.append\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.index\",\"LexLeanRuntime.instAppendableByteArray\",\"LexLeanRuntime.instAppendableList\",\"LexLeanRuntime.instIndexableByteArrayUInt8\",\"LexLeanRuntime.instIndexableList\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.instLengthableList\",\"LexLeanRuntime.instSliceableByteArray\",\"LexLeanRuntime.instSliceableList\",\"LexLeanRuntime.length\",\"LexLeanRuntime.slice\",\"List.cons\",\"List.nil\",\"List.toArray\",\"OfNat.ofNat\",\"Prod.mk\",\"UInt8.instOfNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]}]}]}]}}}},\"parameters\":[{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.21\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"10\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.28\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.toArray\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.36\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.40\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.37\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instIndexableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.index\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instIndexableByteArrayUInt8\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.index\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instSliceableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.49\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.slice\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instSliceableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.54\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.slice\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.52\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.instBEq\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.toArray\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.69\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.70\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.68\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.72\"},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},{\"kind\":\"fvar\",\"id\":\"_uniq.75\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"},{\"kind\":\"fvar\",\"id\":\"_uniq.77\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"},{\"kind\":\"fvar\",\"id\":\"_uniq.78\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"},{\"kind\":\"fvar\",\"id\":\"_uniq.79\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.82\"}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Add\",\"Array\",\"BEq\",\"Bool\",\"ByteArray\",\"Decidable\",\"HAdd\",\"List\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"UInt8\",\"instAddNat\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instDecidableEqNat\",\"instHAdd\",\"instOfNatNat\",\"Bool.true\",\"ByteArray.instBEq\",\"ByteArray.mk\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.Indexable\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.Sliceable\",\"LexLeanRuntime.append\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.index\",\"LexLeanRuntime.instAppendableByteArray\",\"LexLeanRuntime.instAppendableList\",\"LexLeanRuntime.instIndexableByteArrayUInt8\",\"LexLeanRuntime.instIndexableList\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.instLengthableList\",\"LexLeanRuntime.instSliceableByteArray\",\"LexLeanRuntime.instSliceableList\",\"LexLeanRuntime.length\",\"LexLeanRuntime.slice\",\"List.cons\",\"List.nil\",\"List.toArray\",\"Prod.mk\",\"UInt8.instOfNat\"]},\"inductive\":null},{\"name\":\"Coverage.Prims.text\",\"kind\":\"definition\",\"module\":\"Coverage.Prims\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"List\",\"Nat\",\"Option\",\"Ordering\",\"Prod\",\"String\",\"UInt32\",\"UInt8\",\"instBEqOfDecidableEq\",\"instDecidableEqOrdering\",\"instDecidableEqString\",\"Bool.and\",\"ByteArray.mk\",\"LexLeanRuntime.compareBytes\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.instLengthableString\",\"LexLeanRuntime.join\",\"LexLeanRuntime.length\",\"LexLeanRuntime.splitExact\",\"LexLeanRuntime.utf8Decode\",\"LexLeanRuntime.utf8Encode\",\"List.cons\",\"List.nil\",\"List.toArray\",\"OfNat.ofNat\",\"Prod.mk\",\"UInt32.instOfNat\",\"UInt8.instOfNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]}]}}},\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.utf8Encode\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.30\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.utf8Decode\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.34\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"255\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.37\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.toArray\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.compareBytes\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"4\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.46\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.splitExact\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"x\\\"y\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.join\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.52\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableString\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.63\",\"parameters\":[{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.62\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.63\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.82\",\"parameters\":[{\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqOrdering\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.69\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.compareBytes\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.toArray\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.72\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.75\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.toArray\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.77\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.78\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.compareBytes\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},{\"kind\":\"fvar\",\"id\":\"_uniq.79\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.70\"},{\"kind\":\"fvar\",\"id\":\"_uniq.71\"},{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.81\"}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.82\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqString\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.90\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.91\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.104\",\"parameters\":[{\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},{\"kind\":\"fvar\",\"id\":\"_uniq.97\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.98\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"},{\"kind\":\"fvar\",\"id\":\"_uniq.99\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"},{\"kind\":\"fvar\",\"id\":\"_uniq.100\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.101\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.102\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.103\"}}}}}}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.110\",\"parameters\":[{\"id\":\"_uniq.108\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.83\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.104\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.109\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.107\",\"parameters\":[{\"id\":\"_uniq.105\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.64\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.105\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.104\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.106\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]}]},\"discriminant\":\"_uniq.92\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.107\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.93\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.110\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.95\"}]}}}]}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Array\",\"BEq\",\"Bool\",\"ByteArray\",\"Decidable\",\"List\",\"Nat\",\"OfNat\",\"Option\",\"Ordering\",\"PUnit\",\"Prod\",\"String\",\"UInt32\",\"UInt8\",\"instBEqOfDecidableEq\",\"instDecidableEqOrdering\",\"instDecidableEqString\",\"Bool.false\",\"Bool.true\",\"ByteArray.mk\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.compareBytes\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.instLengthableString\",\"LexLeanRuntime.join\",\"LexLeanRuntime.length\",\"LexLeanRuntime.splitExact\",\"LexLeanRuntime.utf8Decode\",\"LexLeanRuntime.utf8Encode\",\"List.cons\",\"List.nil\",\"List.toArray\",\"Prod.mk\",\"UInt32.instOfNat\",\"UInt8.instOfNat\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"Coverage.RecRoots.rewrite\",\"kind\":\"definition\",\"module\":\"Coverage.RecRoots\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Prod.mk\",\"Coverage.Recur.prune\",\"Coverage.Recur.reassociate\",\"Coverage.Syntax.Term\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.reassociate\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.prune\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.9\"}}}}},\"uses\":[\"Prod\",\"Prod.mk\",\"Coverage.Recur.prune\",\"Coverage.Recur.reassociate\",\"Coverage.Syntax.Term\"]},\"inductive\":null},{\"name\":\"Coverage.RecRoots.roseTotal\",\"kind\":\"definition\",\"module\":\"Coverage.RecRoots\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"List.cons\",\"List.nil\",\"OfNat.ofNat\",\"Coverage.Recur.roseSize\",\"Coverage.Syntax.Rose\",\"Coverage.Syntax.Rose.node\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.8\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose.node\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose.node\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.roseSize\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.17\"}}}}}}}}}},\"uses\":[\"List\",\"Nat\",\"OfNat\",\"instOfNatNat\",\"List.cons\",\"List.nil\",\"Coverage.Recur.roseSize\",\"Coverage.Syntax.Rose\",\"Coverage.Syntax.Rose.node\"]},\"inductive\":null},{\"name\":\"Coverage.RecRoots.syntaxTotal\",\"kind\":\"definition\",\"module\":\"Coverage.RecRoots\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Coverage.Recur.exprSize\",\"Coverage.Syntax.Expr\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.exprSize\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}},\"uses\":[\"Nat\",\"Coverage.Recur.exprSize\",\"Coverage.Syntax.Expr\"]},\"inductive\":null},{\"name\":\"Coverage.RecRoots.wellFounded\",\"kind\":\"definition\",\"module\":\"Coverage.RecRoots\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Prod\",\"instOfNatNat\",\"OfNat.ofNat\",\"Prod.mk\",\"Coverage.Recur.countdown\",\"Coverage.Recur.reduce\",\"Coverage.Recur.search\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.14\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.countdown\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.reduce\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.search\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.20\"}}}}}}}}}},\"uses\":[\"Nat\",\"OfNat\",\"Prod\",\"instOfNatNat\",\"Prod.mk\",\"Coverage.Recur.countdown\",\"Coverage.Recur.reduce\",\"Coverage.Recur.search\"]},\"inductive\":null},{\"name\":\"Coverage.Recur.countdown\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"PSigma.mk\",\"Coverage.Recur.countdown._unary\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.41\",\"parameters\":[{\"id\":\"_uniq.40\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.33\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.41\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.60\",\"parameters\":[{\"id\":\"_uniq.46\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.49\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.53\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.56\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.54\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.countdown\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.59\"}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.60\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.75\",\"parameters\":[{\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"discriminant\":\"_uniq.66\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.61\"}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.42\"}}]}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.77\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.78\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.75\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.79\"},{\"kind\":\"erased\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.80\"}}}}}}}}}}}},\"uses\":[\"Add\",\"Bool\",\"HAdd\",\"Nat\",\"OfNat\",\"Sub\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"instSubNat\",\"Bool.false\",\"Bool.true\",\"LexLeanRuntime.subtract\",\"Nat.blt\",\"Coverage.Recur.countdown\"]},\"inductive\":null},{\"name\":\"Coverage.Recur.countdown_decreases\",\"kind\":\"theorem\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Nat\",\"Not\",\"congrArg\",\"id\",\"instHSub\",\"instLTNat\",\"instOfNatNat\",\"instSubNat\",\"Bool.false\",\"Bool.true\",\"Decidable.byContradiction\",\"Eq.mp\",\"Eq.trans\",\"HSub.hSub\",\"LT.lt\",\"LexLeanRuntime.subtract\",\"Nat.blt\",\"Nat.blt_eq\",\"Nat.decLt\",\"OfNat.ofNat\",\"_private.Coverage.Recur.0.Coverage.Recur.countdown_decreases._proof_1_32\",\"_private.Coverage.Recur.0.Coverage.Recur.countdown_decreases._simp_1_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.exprSize\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Coverage.Syntax.Expr\",\"Coverage.Syntax.Stmt\",\"Coverage.Recur.exprSize._f\",\"Coverage.Recur.statementSize._f\",\"Coverage.Recur.statementsSize._f\",\"Coverage.Syntax.Expr.brecOn\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.54\",\"parameters\":[{\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.52\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.53\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.54\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.73\",\"parameters\":[{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.62\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.64\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.exprSize\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.exprSize\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.66\"},{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.69\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.70\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.68\"},{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.72\"}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.73\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.88\",\"parameters\":[{\"id\":\"_uniq.80\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.82\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.83\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.statementsSize\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.exprSize\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.84\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.85\"},{\"kind\":\"fvar\",\"id\":\"_uniq.86\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.87\"}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.88\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Coverage.Syntax.Expr\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.43\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Coverage.Syntax.Expr.literal\",\"parameters\":[{\"id\":\"_uniq.100\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.55\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.100\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.101\"}}},{\"kind\":\"constructor\",\"constructor\":\"Coverage.Syntax.Expr.plus\",\"parameters\":[{\"id\":\"_uniq.102\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.103\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.74\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.102\"},{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.104\"}}},{\"kind\":\"constructor\",\"constructor\":\"Coverage.Syntax.Expr.block\",\"parameters\":[{\"id\":\"_uniq.105\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.106\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.89\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.105\"},{\"kind\":\"fvar\",\"id\":\"_uniq.106\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.107\"}}}]}}}}}}}},\"uses\":[\"Add\",\"HAdd\",\"List\",\"Nat\",\"OfNat\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"Coverage.Recur.exprSize\",\"Coverage.Recur.statementsSize\",\"Coverage.Syntax.Expr\",\"Coverage.Syntax.Stmt\",\"Coverage.Syntax.Expr.block\",\"Coverage.Syntax.Expr.literal\",\"Coverage.Syntax.Expr.plus\"]},\"inductive\":null},{\"name\":\"Coverage.Recur.forestSize\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Coverage.Syntax.Rose\",\"Coverage.Recur.forestSize._f\",\"Coverage.Recur.roseSize._f\",\"Coverage.Syntax.Rose.brecOn_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.46\",\"parameters\":[{\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.44\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.45\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.46\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.61\",\"parameters\":[{\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"borrow\":false},{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.56\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.roseSize\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.forestSize\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.57\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.58\"},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.60\"}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.61\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.36\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.47\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.72\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.73\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"borrow\":false},{\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.62\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.75\"}}}]}}}}}},\"uses\":[\"Add\",\"HAdd\",\"List\",\"Nat\",\"OfNat\",\"PUnit\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"List.cons\",\"List.nil\",\"Unit.unit\",\"Coverage.Recur.forestSize\",\"Coverage.Recur.roseSize\",\"Coverage.Syntax.Rose\"]},\"inductive\":null},{\"name\":\"Coverage.Recur.prune\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Eq\",\"InvImage\",\"Nat\",\"instLTNat\",\"LT.lt\",\"Coverage.Recur.weight\",\"Coverage.Syntax.Term\",\"WellFounded.Nat.fix\",\"Coverage.Recur.prune._proof_1\",\"Coverage.Recur.prune._proof_2\",\"Coverage.Recur.reassociate.match_1\",\"Coverage.Syntax.Term.literal\",\"Coverage.Syntax.Term.plus\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.83\",\"parameters\":[{\"id\":\"_uniq.79\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.80\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term.literal\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.79\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.82\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.83\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.149\",\"parameters\":[{\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.98\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.99\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.110\",\"parameters\":[{\"id\":\"_uniq.107\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.108\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.prune\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.98\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.109\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.111\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.110\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.125\",\"parameters\":[{\"id\":\"_uniq.118\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.119\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.120\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term.plus\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.118\"},{\"kind\":\"fvar\",\"id\":\"_uniq.98\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.124\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.prune\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.123\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.124\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.125\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.147\",\"parameters\":[{\"id\":\"_uniq.131\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Coverage.Syntax.Term\",\"result_type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}},\"discriminant\":\"_uniq.131\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Coverage.Syntax.Term.literal\",\"parameters\":[{\"id\":\"_uniq.141\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.142\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.111\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.141\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.142\"}}},{\"kind\":\"constructor\",\"constructor\":\"Coverage.Syntax.Term.plus\",\"parameters\":[{\"id\":\"_uniq.143\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.144\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.145\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.126\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.143\"},{\"kind\":\"fvar\",\"id\":\"_uniq.144\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.145\"}}}]}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.148\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.147\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.97\"},{\"kind\":\"erased\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.148\"}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.150\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.149\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.171\",\"parameters\":[{\"id\":\"_uniq.155\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Coverage.Syntax.Term\",\"result_type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}},\"discriminant\":\"_uniq.155\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Coverage.Syntax.Term.literal\",\"parameters\":[{\"id\":\"_uniq.165\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.166\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.84\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.165\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.166\"}}},{\"kind\":\"constructor\",\"constructor\":\"Coverage.Syntax.Term.plus\",\"parameters\":[{\"id\":\"_uniq.167\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.168\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.169\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.150\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.167\"},{\"kind\":\"fvar\",\"id\":\"_uniq.168\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.169\"}}}]}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.172\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.171\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.71\"},{\"kind\":\"erased\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.172\"}}}}}}}},\"uses\":[\"Nat\",\"Coverage.Recur.prune\",\"Coverage.Syntax.Term\",\"Coverage.Syntax.Term.literal\",\"Coverage.Syntax.Term.plus\"]},\"inductive\":null},{\"name\":\"Coverage.Recur.prune_plus\",\"kind\":\"theorem\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":false,\"kernel_uses\":[\"Eq\",\"Nat\",\"Not\",\"congr\",\"congrArg\",\"congrFun'\",\"id\",\"instAddNat\",\"instHAdd\",\"instLTNat\",\"instOfNatNat\",\"Decidable.byContradiction\",\"Eq.mpr\",\"Eq.ndrec\",\"Eq.symm\",\"Eq.trans\",\"HAdd.hAdd\",\"LT.lt\",\"Nat.add_assoc\",\"Nat.decLt\",\"OfNat.ofNat\",\"Coverage.Recur.weight\",\"Coverage.Syntax.Term\",\"Coverage.Syntax.Term.plus\",\"_private.Coverage.Recur.0.Coverage.Recur.prune_plus._proof_1_35\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.reassociate\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Eq\",\"InvImage\",\"Nat\",\"instLTNat\",\"LT.lt\",\"Coverage.Recur.weight\",\"Coverage.Syntax.Term\",\"WellFounded.Nat.fix\",\"Coverage.Recur.reassociate._proof_1\",\"Coverage.Recur.reassociate._proof_2\",\"Coverage.Recur.reassociate.match_1\",\"Coverage.Syntax.Term.literal\",\"Coverage.Syntax.Term.plus\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.82\",\"parameters\":[{\"id\":\"_uniq.79\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.80\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term.literal\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.79\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.81\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.82\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.149\",\"parameters\":[{\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.98\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.111\",\"parameters\":[{\"id\":\"_uniq.106\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.107\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term.literal\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.106\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.reassociate\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.97\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.110\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term.plus\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.108\"},{\"kind\":\"fvar\",\"id\":\"_uniq.109\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.110\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.111\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.125\",\"parameters\":[{\"id\":\"_uniq.119\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.120\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.121\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term.plus\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.120\"},{\"kind\":\"fvar\",\"id\":\"_uniq.97\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term.plus\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.119\"},{\"kind\":\"fvar\",\"id\":\"_uniq.122\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.124\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.reassociate\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.123\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.124\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.125\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.147\",\"parameters\":[{\"id\":\"_uniq.131\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Coverage.Syntax.Term\",\"result_type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}},\"discriminant\":\"_uniq.131\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Coverage.Syntax.Term.literal\",\"parameters\":[{\"id\":\"_uniq.141\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.142\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.112\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.141\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.142\"}}},{\"kind\":\"constructor\",\"constructor\":\"Coverage.Syntax.Term.plus\",\"parameters\":[{\"id\":\"_uniq.143\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.144\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.145\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.126\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.143\"},{\"kind\":\"fvar\",\"id\":\"_uniq.144\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.145\"}}}]}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.148\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.147\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.96\"},{\"kind\":\"erased\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.148\"}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.150\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.149\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.171\",\"parameters\":[{\"id\":\"_uniq.155\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Coverage.Syntax.Term\",\"result_type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}},\"discriminant\":\"_uniq.155\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Coverage.Syntax.Term.literal\",\"parameters\":[{\"id\":\"_uniq.165\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.166\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.83\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.165\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.166\"}}},{\"kind\":\"constructor\",\"constructor\":\"Coverage.Syntax.Term.plus\",\"parameters\":[{\"id\":\"_uniq.167\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.168\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.169\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.150\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.167\"},{\"kind\":\"fvar\",\"id\":\"_uniq.168\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.169\"}}}]}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.172\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.171\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.71\"},{\"kind\":\"erased\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.172\"}}}}}}}},\"uses\":[\"Nat\",\"Coverage.Recur.reassociate\",\"Coverage.Syntax.Term\",\"Coverage.Syntax.Term.literal\",\"Coverage.Syntax.Term.plus\"]},\"inductive\":null},{\"name\":\"Coverage.Recur.reassociate_literal\",\"kind\":\"theorem\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":false,\"kernel_uses\":[\"Eq\",\"Nat\",\"Not\",\"congrArg\",\"congrFun'\",\"id\",\"instAddNat\",\"instHAdd\",\"instLTNat\",\"instOfNatNat\",\"Decidable.byContradiction\",\"Eq.mpr\",\"Eq.ndrec\",\"Eq.symm\",\"Eq.trans\",\"HAdd.hAdd\",\"LT.lt\",\"Nat.add_assoc\",\"Nat.decLt\",\"OfNat.ofNat\",\"Coverage.Recur.weight\",\"Coverage.Syntax.Term\",\"Coverage.Syntax.Term.literal\",\"Coverage.Syntax.Term.plus\",\"_private.Coverage.Recur.0.Coverage.Recur.reassociate_literal._proof_1_35\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.reassociate_plus\",\"kind\":\"theorem\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":false,\"kernel_uses\":[\"Eq\",\"Nat\",\"Not\",\"congr\",\"congrArg\",\"congrFun'\",\"id\",\"instAddNat\",\"instHAdd\",\"instLTNat\",\"instOfNatNat\",\"Decidable.byContradiction\",\"Eq.mpr\",\"Eq.ndrec\",\"Eq.symm\",\"Eq.trans\",\"HAdd.hAdd\",\"LT.lt\",\"Nat.add_assoc\",\"Nat.decLt\",\"OfNat.ofNat\",\"Coverage.Recur.weight\",\"Coverage.Syntax.Term\",\"Coverage.Syntax.Term.plus\",\"_private.Coverage.Recur.0.Coverage.Recur.reassociate_plus._proof_1_35\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.reduce\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Coverage.Recur.reduce._unary\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.57\",\"parameters\":[{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.48\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.57\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.101\",\"parameters\":[{\"id\":\"_uniq.66\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.74\",\"parameters\":[{\"id\":\"_uniq.73\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.48\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.74\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.83\",\"parameters\":[{\"id\":\"_uniq.79\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.reduce\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.81\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.82\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.83\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.98\",\"parameters\":[{\"id\":\"_uniq.89\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"discriminant\":\"_uniq.89\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.84\"}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.75\"}}]}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.48\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.98\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.99\"},{\"kind\":\"erased\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.100\"}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.101\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.116\",\"parameters\":[{\"id\":\"_uniq.107\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"discriminant\":\"_uniq.107\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.102\"}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.58\"}}]}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.118\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.117\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.118\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.120\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"},{\"kind\":\"fvar\",\"id\":\"_uniq.119\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.121\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.116\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.120\"},{\"kind\":\"erased\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.121\"}}}}}}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"Sub\",\"instOfNatNat\",\"instSubNat\",\"Bool.false\",\"Bool.true\",\"LexLeanRuntime.subtract\",\"Nat.beq\",\"Nat.blt\",\"Coverage.Recur.reduce\"]},\"inductive\":null},{\"name\":\"Coverage.Recur.reduce_decreases\",\"kind\":\"theorem\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Nat\",\"Not\",\"congrArg\",\"id\",\"instHSub\",\"instLTNat\",\"instOfNatNat\",\"instSubNat\",\"Bool.false\",\"Bool.true\",\"Decidable.byContradiction\",\"Eq.mp\",\"Eq.trans\",\"HSub.hSub\",\"LT.lt\",\"LexLeanRuntime.subtract\",\"Nat.beq\",\"Nat.beq_eq\",\"Nat.blt\",\"Nat.blt_eq\",\"Nat.decLt\",\"OfNat.ofNat\",\"_private.Coverage.Recur.0.Coverage.Recur.reduce_decreases._proof_1_32\",\"_private.Coverage.Recur.0.Coverage.Recur.reduce_decreases._simp_1_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.roseSize\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Coverage.Syntax.Rose\",\"Coverage.Recur.forestSize._f\",\"Coverage.Recur.roseSize._f\",\"Coverage.Syntax.Rose.brecOn\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.47\",\"parameters\":[{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},\"borrow\":false},{\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.40\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.43\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.forestSize\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.41\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.44\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.46\"}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.47\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Coverage.Syntax.Rose\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.29\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Coverage.Syntax.Rose.node\",\"parameters\":[{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},\"borrow\":false},{\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.48\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.58\"}}}]}}}},\"uses\":[\"Add\",\"HAdd\",\"List\",\"Nat\",\"OfNat\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"Coverage.Recur.forestSize\",\"Coverage.Syntax.Rose\",\"Coverage.Syntax.Rose.node\"]},\"inductive\":null},{\"name\":\"Coverage.Recur.search\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Coverage.Recur.search._unary\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}}},\"parameters\":[{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.111\",\"parameters\":[{\"id\":\"_uniq.67\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.75\",\"parameters\":[{\"id\":\"_uniq.74\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.55\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.75\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.89\",\"parameters\":[{\"id\":\"_uniq.80\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.82\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.84\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.85\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.83\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},{\"kind\":\"fvar\",\"id\":\"_uniq.86\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.search\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.88\"}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.89\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.104\",\"parameters\":[{\"id\":\"_uniq.95\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"discriminant\":\"_uniq.95\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.90\"}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.76\"}}]}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.105\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.106\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.107\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.110\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.104\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.109\"},{\"kind\":\"erased\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.110\"}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.111\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.117\",\"parameters\":[{\"id\":\"_uniq.116\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.56\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.118\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.117\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.132\",\"parameters\":[{\"id\":\"_uniq.123\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"discriminant\":\"_uniq.123\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.118\"}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.112\"}}]}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.132\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.133\"},{\"kind\":\"erased\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.134\"}}}}}}}}},\"uses\":[\"Add\",\"Bool\",\"HAdd\",\"Nat\",\"OfNat\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Nat.ble\",\"Nat.blt\",\"Coverage.Recur.search\"]},\"inductive\":null},{\"name\":\"Coverage.Recur.search_decreases\",\"kind\":\"theorem\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Nat\",\"Not\",\"id\",\"instAddNat\",\"instHAdd\",\"instHSub\",\"instLTNat\",\"instOfNatNat\",\"instSubNat\",\"Bool.false\",\"Bool.true\",\"Decidable.byContradiction\",\"Eq.mp\",\"HAdd.hAdd\",\"HSub.hSub\",\"LT.lt\",\"LexLeanRuntime.subtract\",\"Nat.ble\",\"Nat.blt\",\"Nat.blt_eq\",\"Nat.decLt\",\"OfNat.ofNat\",\"_private.Coverage.Recur.0.Coverage.Recur.search_decreases._proof_1_32\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.statementSize\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Coverage.Syntax.Expr\",\"Coverage.Syntax.Stmt\",\"Coverage.Recur.exprSize._f\",\"Coverage.Recur.statementSize._f\",\"Coverage.Recur.statementsSize._f\",\"Coverage.Syntax.Stmt.brecOn\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.54\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.47\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.exprSize\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.51\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.48\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"},{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.53\"}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.54\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.69\",\"parameters\":[{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.62\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.64\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.statementSize\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.statementSize\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.66\"},{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.68\"}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.69\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Coverage.Syntax.Stmt\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.35\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Coverage.Syntax.Stmt.assign\",\"parameters\":[{\"id\":\"_uniq.79\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.80\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.55\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.79\"},{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.81\"}}},{\"kind\":\"constructor\",\"constructor\":\"Coverage.Syntax.Stmt.sequence\",\"parameters\":[{\"id\":\"_uniq.82\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.83\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.70\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.82\"},{\"kind\":\"fvar\",\"id\":\"_uniq.83\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.84\"}}}]}}}}}},\"uses\":[\"Add\",\"HAdd\",\"Nat\",\"OfNat\",\"String\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"Coverage.Recur.exprSize\",\"Coverage.Recur.statementSize\",\"Coverage.Syntax.Expr\",\"Coverage.Syntax.Stmt\",\"Coverage.Syntax.Stmt.assign\",\"Coverage.Syntax.Stmt.sequence\"]},\"inductive\":null},{\"name\":\"Coverage.Recur.statementsSize\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Coverage.Syntax.Expr\",\"Coverage.Syntax.Stmt\",\"Coverage.Recur.exprSize._f\",\"Coverage.Recur.statementSize._f\",\"Coverage.Recur.statementsSize._f\",\"Coverage.Syntax.Expr.brecOn_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.39\",\"parameters\":[{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.37\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.38\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.39\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.54\",\"parameters\":[{\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.49\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.statementSize\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.46\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.statementsSize\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.50\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.53\"}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.54\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.29\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.40\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.64\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.65\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.67\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.55\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.66\"},{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.68\"}}}]}}}}}},\"uses\":[\"Add\",\"HAdd\",\"List\",\"Nat\",\"OfNat\",\"PUnit\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"List.cons\",\"List.nil\",\"Unit.unit\",\"Coverage.Recur.statementSize\",\"Coverage.Recur.statementsSize\",\"Coverage.Syntax.Stmt\"]},\"inductive\":null},{\"name\":\"Coverage.Recur.weight\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Coverage.Syntax.Term\",\"Coverage.Recur.weight._f\",\"Coverage.Syntax.Term.brecOn\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Expr\",\"kind\":\"inductive\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":true,\"constructors\":[{\"name\":\"Coverage.Syntax.Expr.literal\",\"parameters\":0,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]}}},{\"name\":\"Coverage.Syntax.Expr.plus\",\"parameters\":0,\"fields\":2,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]}}}},{\"name\":\"Coverage.Syntax.Expr.block\",\"parameters\":0,\"fields\":2,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]}}}}]}},{\"name\":\"Coverage.Syntax.Rose\",\"kind\":\"inductive\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":true,\"constructors\":[{\"name\":\"Coverage.Syntax.Rose.node\",\"parameters\":1,\"fields\":2,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]}}}}}]}},{\"name\":\"Coverage.Syntax.Stmt\",\"kind\":\"inductive\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":true,\"constructors\":[{\"name\":\"Coverage.Syntax.Stmt.assign\",\"parameters\":0,\"fields\":2,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]}}}},{\"name\":\"Coverage.Syntax.Stmt.sequence\",\"parameters\":0,\"fields\":2,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]}}}}]}},{\"name\":\"Coverage.Syntax.Term\",\"kind\":\"inductive\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":true,\"constructors\":[{\"name\":\"Coverage.Syntax.Term.literal\",\"parameters\":0,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}}},{\"name\":\"Coverage.Syntax.Term.plus\",\"parameters\":0,\"fields\":2,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}}}}]}},{\"name\":\"Coverage.Types.Box\",\"kind\":\"inductive\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Coverage.Types.Box.mk\",\"parameters\":1,\"fields\":2,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Box\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]}}}}}]}},{\"name\":\"Coverage.Types.Point\",\"kind\":\"inductive\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Coverage.Types.Point.mk\",\"parameters\":0,\"fields\":2,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Point\",\"levels\":[]}}}}]}},{\"name\":\"Coverage.Types.Shape\",\"kind\":\"inductive\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Coverage.Types.Shape.circle\",\"parameters\":0,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Shape\",\"levels\":[]}}},{\"name\":\"Coverage.Types.Shape.rect\",\"parameters\":0,\"fields\":2,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Shape\",\"levels\":[]}}}},{\"name\":\"Coverage.Types.Shape.empty\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Shape\",\"levels\":[]}}]}},{\"name\":\"Coverage.Types.Tree\",\"kind\":\"inductive\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":true,\"constructors\":[{\"name\":\"Coverage.Types.Tree.leaf\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Tree\",\"levels\":[]}},{\"name\":\"Coverage.Types.Tree.node\",\"parameters\":0,\"fields\":3,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Tree\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Tree\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Tree\",\"levels\":[]}}}}}]}},{\"name\":\"Coverage.Types.Weights\",\"kind\":\"inductive\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Coverage.Types.Weights.mk\",\"parameters\":0,\"fields\":2,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Weights\",\"levels\":[]}}}}]}},{\"name\":\"Coverage.Types.area\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Unit\",\"instMulNat\",\"instOfNatNat\",\"LexLeanRuntime.multiply\",\"OfNat.ofNat\",\"Coverage.Types.Shape\",\"Coverage.Types.area.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Shape\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Shape\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.51\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Mul\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instMulNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.multiply\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.48\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.multiply\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.50\"}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.51\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.63\",\"parameters\":[{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Mul\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instMulNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.multiply\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.62\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.63\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.72\",\"parameters\":[{\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.69\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.70\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.71\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.72\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Coverage.Types.Shape\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.37\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Coverage.Types.Shape.circle\",\"parameters\":[{\"id\":\"_uniq.82\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.52\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.82\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.83\"}}},{\"kind\":\"constructor\",\"constructor\":\"Coverage.Types.Shape.rect\",\"parameters\":[{\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.85\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.64\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.85\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.86\"}}},{\"kind\":\"constructor\",\"constructor\":\"Coverage.Types.Shape.empty\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.73\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.87\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.88\"}}}}]}}}}}}}},\"uses\":[\"Mul\",\"Nat\",\"OfNat\",\"PUnit\",\"instMulNat\",\"instOfNatNat\",\"LexLeanRuntime.multiply\",\"Unit.unit\",\"Coverage.Types.Shape\",\"Coverage.Types.Shape.circle\",\"Coverage.Types.Shape.empty\",\"Coverage.Types.Shape.rect\"]},\"inductive\":null},{\"name\":\"Coverage.Types.defaultWeights\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"OfNat.ofNat\",\"Coverage.Types.Weights.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Weights\",\"levels\":[]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.1\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.2\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.1\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.3\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.2\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.4\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.5\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.4\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Weights\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Weights.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}}}}}}}},\"uses\":[\"Nat\",\"OfNat\",\"instOfNatNat\",\"Coverage.Types.Weights\",\"Coverage.Types.Weights.mk\"]},\"inductive\":null},{\"name\":\"Coverage.Types.isEven\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Nat\",\"PProd\",\"Nat.below\",\"Nat.brecOn\",\"PProd.mk\",\"Coverage.Types.isEven._f\",\"Coverage.Types.isOdd._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.32\",\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.32\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.39\",\"parameters\":[{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.isOdd\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.38\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.39\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Nat\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.24\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Nat.zero\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.33\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.46\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.47\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Nat.succ\",\"parameters\":[{\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.40\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.49\"}}}]}}}}}},\"uses\":[\"Bool\",\"Nat\",\"PUnit\",\"Bool.true\",\"Nat.succ\",\"Nat.zero\",\"Unit.unit\",\"Coverage.Types.isOdd\"]},\"inductive\":null},{\"name\":\"Coverage.Types.isOdd\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Nat\",\"PProd\",\"Nat.below\",\"Nat.brecOn\",\"PProd.mk\",\"Coverage.Types.isEven._f\",\"Coverage.Types.isOdd._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.32\",\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.32\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.39\",\"parameters\":[{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.isEven\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.38\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.39\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Nat\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.24\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Nat.zero\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.33\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.46\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.47\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Nat.succ\",\"parameters\":[{\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.40\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.49\"}}}]}}}}}},\"uses\":[\"Bool\",\"Nat\",\"PUnit\",\"Bool.false\",\"Nat.succ\",\"Nat.zero\",\"Unit.unit\",\"Coverage.Types.isEven\"]},\"inductive\":null},{\"name\":\"Coverage.Types.mapList\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"List.brecOn\",\"Coverage.Types.mapList._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"bvar\",\"index\":1}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]}}}}},\"parameters\":[{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}},\"borrow\":false},{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.70\",\"parameters\":[{\"id\":\"_uniq.68\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.69\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.70\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.90\",\"parameters\":[{\"id\":\"_uniq.83\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}},\"borrow\":false},{\"id\":\"_uniq.84\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},\"borrow\":false},{\"id\":\"_uniq.85\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]}}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.83\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.84\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.mapList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.85\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"},{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.89\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]}}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.90\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"discriminant\":\"_uniq.60\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.71\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.100\"}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.101\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},\"borrow\":false},{\"id\":\"_uniq.102\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.91\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.101\"},{\"kind\":\"fvar\",\"id\":\"_uniq.102\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.103\"}}}]}}}}}},\"uses\":[\"List\",\"List.cons\",\"List.nil\",\"Coverage.Types.mapList\"]},\"inductive\":null},{\"name\":\"Coverage.Types.treeSum\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Coverage.Types.Tree\",\"Coverage.Types.Tree.brecOn\",\"Coverage.Types.treeSum._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Tree\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Tree\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.44\",\"parameters\":[{\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.42\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.43\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.44\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.63\",\"parameters\":[{\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Tree\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Tree\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Tree\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Tree\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.57\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.treeSum\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.58\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.treeSum\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.58\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.62\"}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Tree\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Tree\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.63\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Coverage.Types.Tree\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.34\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Coverage.Types.Tree.leaf\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.45\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.72\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.73\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Coverage.Types.Tree.node\",\"parameters\":[{\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Tree\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.75\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Tree\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.64\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"},{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.77\"}}}]}}}}}},\"uses\":[\"Add\",\"HAdd\",\"Nat\",\"OfNat\",\"PUnit\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"Unit.unit\",\"Coverage.Types.Tree\",\"Coverage.Types.treeSum\",\"Coverage.Types.Tree.leaf\",\"Coverage.Types.Tree.node\"]},\"inductive\":null},{\"name\":\"Coverage.Types.twice\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.16\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.16\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.19\"}}}},\"uses\":[\"Nat\"]},\"inductive\":null},{\"name\":\"Coverage.Types.unbox\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Coverage.Types.Box\",\"Coverage.Types.Box.content\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Box\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"bvar\",\"index\":1}}},\"parameters\":[{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Box\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},\"value\":{\"kind\":\"projection\",\"type_name\":\"Coverage.Types.Box\",\"index\":0,\"value\":\"_uniq.16\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.17\"}}},\"uses\":[\"Coverage.Types.Box\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.Key.compare\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanCollections.Key\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.Key.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.compareCodes._f\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Char\",\"List\",\"Nat\",\"Ordering\",\"Unit\",\"instOrdNat\",\"Char.val\",\"List.below\",\"List.cons\",\"List.nil\",\"Ord.compare\",\"Ordering.eq\",\"Ordering.gt\",\"Ordering.lt\",\"UInt32.toNat\",\"LexLeanCollections.compareCodes.match_1\",\"LexLeanCollections.compareCodes.match_4\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.compareCodes._sparseCasesOn_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Nat\",\"Ordering\",\"instOfNatNat\",\"Bool.false\",\"Eq.refl\",\"Nat.hasNotBit\",\"Nat.land\",\"Nat.ne_of_beq_eq_false\",\"Nat.shiftRight\",\"OfNat.ofNat\",\"Ordering.ctorIdx\",\"Ordering.eq\",\"Ordering.gt\",\"Ordering.lt\",\"Ordering.rec\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.compareCodes.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Ordering\",\"Unit\",\"Nat.hasNotBit\",\"Ordering.ctorIdx\",\"Ordering.eq\",\"Unit.unit\",\"LexLeanCollections.compareCodes._sparseCasesOn_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.compareCodes.match_4\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Char\",\"List\",\"Unit\",\"List.casesOn\",\"List.cons\",\"List.nil\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.containsElement._f\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"List\",\"Ordering\",\"Unit\",\"Bool.false\",\"Bool.true\",\"LexLeanCollections.Key\",\"List.below\",\"List.cons\",\"List.nil\",\"LexLeanCollections.Key.compare\",\"LexLeanCollections.insertElement.match_1\",\"LexLeanCollections.insertEntry.match_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.insertElement._f\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"List\",\"Ordering\",\"Unit\",\"LexLeanCollections.Key\",\"List.below\",\"List.cons\",\"List.nil\",\"LexLeanCollections.Key.compare\",\"LexLeanCollections.insertElement.match_1\",\"LexLeanCollections.insertEntry.match_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.insertElement.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Unit\",\"List.casesOn\",\"List.cons\",\"List.nil\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.insertEntry._f\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"List\",\"Ordering\",\"Prod\",\"Unit\",\"LexLeanCollections.Key\",\"List.below\",\"List.cons\",\"List.nil\",\"Prod.mk\",\"LexLeanCollections.Key.compare\",\"LexLeanCollections.insertEntry.match_1\",\"LexLeanCollections.insertEntry.match_3\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.insertEntry.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Ordering\",\"Unit\",\"Ordering.casesOn\",\"Ordering.eq\",\"Ordering.gt\",\"Ordering.lt\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.insertEntry.match_3\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Prod\",\"Unit\",\"List.casesOn\",\"List.cons\",\"List.nil\",\"Prod.casesOn\",\"Prod.mk\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.iterate._f\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Nat.below\",\"Nat.succ\",\"OfNat.ofNat\",\"LexLeanCollections.iterate.match_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.iterate.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Nat.casesOn\",\"Nat.succ\",\"OfNat.ofNat\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.iterateUntil._f\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Nat.below\",\"Nat.succ\",\"OfNat.ofNat\",\"Prod.mk\",\"LexLeanCollections.iterate.match_1\",\"LexLeanCollections.iterateUntil.match_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.iterateUntil.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.lookupEntry._f\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"List\",\"Option\",\"Ordering\",\"Prod\",\"Unit\",\"LexLeanCollections.Key\",\"List.below\",\"List.cons\",\"List.nil\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"LexLeanCollections.Key.compare\",\"LexLeanCollections.insertEntry.match_1\",\"LexLeanCollections.insertEntry.match_3\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.reachableFrom._f\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Eq\",\"List\",\"Nat\",\"Prod\",\"Unit\",\"instDecidableEqBool\",\"instOfNatNat\",\"ite\",\"Bool.or\",\"Bool.true\",\"LexLeanCollections.Key\",\"LexLeanCollections.containsElement\",\"LexLeanCollections.graphSuccessors\",\"LexLeanCollections.insertElement\",\"List.foldl\",\"List.nil\",\"Nat.below\",\"Nat.succ\",\"OfNat.ofNat\",\"LexLeanCollections.reachableFrom.match_1\",\"LexLeanCollections.reachableFrom.match_4\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.reachableFrom._sparseCasesOn_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"List\",\"Nat\",\"instOfNatNat\",\"Bool.false\",\"Eq.refl\",\"List.cons\",\"List.ctorIdx\",\"List.nil\",\"List.rec\",\"Nat.hasNotBit\",\"Nat.land\",\"Nat.ne_of_beq_eq_false\",\"Nat.shiftRight\",\"OfNat.ofNat\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.reachableFrom.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Unit\",\"List.ctorIdx\",\"List.nil\",\"Nat.hasNotBit\",\"Unit.unit\",\"LexLeanCollections.reachableFrom._sparseCasesOn_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.reachableFrom.match_4\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"instOfNatNat\",\"Nat.casesOn\",\"Nat.succ\",\"OfNat.ofNat\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.removeElement._f\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"List\",\"Ordering\",\"Unit\",\"LexLeanCollections.Key\",\"List.below\",\"List.cons\",\"List.nil\",\"LexLeanCollections.Key.compare\",\"LexLeanCollections.insertElement.match_1\",\"LexLeanCollections.insertEntry.match_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.removeEntry._f\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"List\",\"Ordering\",\"Prod\",\"Unit\",\"LexLeanCollections.Key\",\"List.below\",\"List.cons\",\"List.nil\",\"Prod.mk\",\"LexLeanCollections.Key.compare\",\"LexLeanCollections.insertEntry.match_1\",\"LexLeanCollections.insertEntry.match_3\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.topological._f\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Eq\",\"List\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"instDecidableEqBool\",\"instOfNatNat\",\"ite\",\"Bool.not\",\"Bool.true\",\"LexLeanCollections.Key\",\"LexLeanCollections.containsElement\",\"LexLeanCollections.graphSuccessors\",\"LexLeanCollections.removeElement\",\"List.all\",\"List.cons\",\"List.filter\",\"List.isEmpty\",\"List.reverse\",\"Nat.below\",\"Nat.succ\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"LexLeanCollections.insertElement.match_1\",\"LexLeanCollections.reachableFrom.match_4\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Appendable.append\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Appendable\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Appendable.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Decimal.format\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Decimal\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Decimal.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Decimal.parse\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Decimal\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Fixed.bitAnd\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Fixed\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Fixed.bitNot\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Fixed\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Fixed.bitOr\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Fixed\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Fixed.bitXor\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Fixed\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Fixed.fromInt\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Fixed\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Fixed.maximum\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Fixed\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Fixed.minimum\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Fixed\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Fixed.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Fixed.shiftLeft\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Fixed\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Fixed.shiftRight\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Fixed\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Fixed.toToMathInt\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Fixed\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Indexable.index\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Indexable\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Indexable.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Lengthable.length\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Lengthable\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Lengthable.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Quotient.isZero\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Quotient\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Quotient.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Quotient.quotient\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Quotient\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Quotient.remainder\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Quotient\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Sliceable.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Sliceable.slice\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Sliceable\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.ToMathInt.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.ToMathInt.toInt\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.ToMathInt\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.checkedMultiplyInt64.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Option\",\"UInt64\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.divideMagnitudeInt64._f\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Nat\",\"UInt64\",\"instAddUInt64\",\"instHAdd\",\"instHSub\",\"instLEUInt64\",\"instOfNatNat\",\"instSubUInt64\",\"ite\",\"HAdd.hAdd\",\"HSub.hSub\",\"LE.le\",\"Nat.below\",\"Nat.succ\",\"OfNat.ofNat\",\"UInt64.decLe\",\"UInt64.instOfNat\",\"LexLeanRuntime.divideMagnitudeInt64.match_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.divideMagnitudeInt64.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"UInt64\",\"instOfNatNat\",\"Nat.casesOn\",\"Nat.succ\",\"OfNat.ofNat\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.instDecimalInt.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.listIndex._f\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"List\",\"Nat\",\"Option\",\"List.below\",\"List.cons\",\"List.nil\",\"Option.none\",\"Option.some\",\"LexLeanRuntime.listIndex.match_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.listIndex.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"instOfNatNat\",\"List.casesOn\",\"List.cons\",\"List.nil\",\"Nat.casesOn\",\"Nat.succ\",\"OfNat.ofNat\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.multiplyMagnitudeInt64._f\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Eq\",\"Nat\",\"Option\",\"UInt64\",\"instAddUInt64\",\"instDecidableEqBool\",\"instHAdd\",\"instHSub\",\"instLEUInt64\",\"instLTUInt64\",\"instOfNatNat\",\"instSubUInt64\",\"ite\",\"Bool.or\",\"Bool.true\",\"Decidable.decide\",\"HAdd.hAdd\",\"HSub.hSub\",\"LE.le\",\"LT.lt\",\"Nat.below\",\"Nat.succ\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"UInt64.decLe\",\"UInt64.decLt\",\"UInt64.instOfNat\",\"LexLeanRuntime.multiplyMagnitudeInt64.match_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.multiplyMagnitudeInt64.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Nat\",\"UInt64\",\"instOfNatNat\",\"Nat.casesOn\",\"Nat.succ\",\"OfNat.ofNat\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Boundary.Grove.casesOn\",\"kind\":\"definition\",\"module\":\"Coverage.Boundary\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Except\",\"Int\",\"List\",\"Nat\",\"Option\",\"PUnit\",\"Prod\",\"String\",\"PUnit.unit\",\"Coverage.Boundary.Grove\",\"Coverage.Boundary.Grove.leaf\",\"Coverage.Boundary.Grove.node\",\"Coverage.Boundary.Grove.rec\",\"Coverage.Boundary.Grove.settled\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Boundary.Grove.leaf\",\"kind\":\"constructor\",\"module\":\"Coverage.Boundary\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Boundary.Grove.node\",\"kind\":\"constructor\",\"module\":\"Coverage.Boundary\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Boundary.Grove.rec\",\"kind\":\"recursor\",\"module\":\"Coverage.Boundary\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"recursor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Boundary.Grove.settled\",\"kind\":\"constructor\",\"module\":\"Coverage.Boundary\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Boundary.groveTags.match_1\",\"kind\":\"definition\",\"module\":\"Coverage.Boundary\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Except\",\"Int\",\"List\",\"Nat\",\"Option\",\"Prod\",\"String\",\"Coverage.Boundary.Grove\",\"Coverage.Boundary.Grove.casesOn\",\"Coverage.Boundary.Grove.leaf\",\"Coverage.Boundary.Grove.node\",\"Coverage.Boundary.Grove.settled\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Main.options.match_1\",\"kind\":\"definition\",\"module\":\"Coverage.Main\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Main.options.match_3\",\"kind\":\"definition\",\"module\":\"Coverage.Main\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"Nat\",\"Except.casesOn\",\"Except.error\",\"Except.ok\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.countdown._unary\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Eq\",\"InvImage\",\"Nat\",\"PSigma\",\"instAddNat\",\"instHAdd\",\"instLTNat\",\"instOfNatNat\",\"instSubNat\",\"Bool.false\",\"Bool.true\",\"HAdd.hAdd\",\"LT.lt\",\"LexLeanRuntime.subtract\",\"Nat.blt\",\"OfNat.ofNat\",\"PSigma.casesOn\",\"PSigma.mk\",\"WellFounded.Nat.fix\",\"Coverage.Recur.countdown.match_1\",\"Coverage.Recur.countdown._unary._proof_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.countdown.match_1\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Bool.casesOn\",\"Bool.false\",\"Bool.true\",\"Eq.refl\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.exprSize._f\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"List\",\"Nat\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"HAdd.hAdd\",\"OfNat.ofNat\",\"Coverage.Syntax.Expr\",\"Coverage.Syntax.Stmt\",\"Coverage.Recur.exprSize.match_1\",\"Coverage.Syntax.Expr.below\",\"Coverage.Syntax.Expr.block\",\"Coverage.Syntax.Expr.literal\",\"Coverage.Syntax.Expr.plus\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.exprSize.match_1\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Coverage.Syntax.Expr\",\"Coverage.Syntax.Stmt\",\"Coverage.Syntax.Expr.block\",\"Coverage.Syntax.Expr.casesOn\",\"Coverage.Syntax.Expr.literal\",\"Coverage.Syntax.Expr.plus\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.forestSize._f\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"List\",\"Nat\",\"Unit\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"HAdd.hAdd\",\"List.cons\",\"List.nil\",\"OfNat.ofNat\",\"Coverage.Syntax.Rose\",\"Coverage.Recur.forestSize.match_1\",\"Coverage.Syntax.Rose.below_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.forestSize.match_1\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Unit\",\"List.casesOn\",\"List.cons\",\"List.nil\",\"Unit.unit\",\"Coverage.Syntax.Rose\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.prune._proof_1\",\"kind\":\"theorem\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":true,\"kernel_uses\":[\"Eq\",\"InvImage\",\"Nat\",\"id\",\"instLTNat\",\"Eq.ndrec\",\"Eq.symm\",\"LT.lt\",\"Coverage.Recur.reassociate_literal\",\"Coverage.Recur.weight\",\"Coverage.Syntax.Term\",\"Coverage.Syntax.Term.literal\",\"Coverage.Syntax.Term.plus\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.prune._proof_2\",\"kind\":\"theorem\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":true,\"kernel_uses\":[\"Eq\",\"InvImage\",\"Nat\",\"id\",\"instLTNat\",\"Eq.ndrec\",\"Eq.symm\",\"LT.lt\",\"Coverage.Recur.prune_plus\",\"Coverage.Recur.weight\",\"Coverage.Syntax.Term\",\"Coverage.Syntax.Term.plus\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.reassociate._proof_1\",\"kind\":\"theorem\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":true,\"kernel_uses\":[\"Eq\",\"InvImage\",\"Nat\",\"id\",\"instLTNat\",\"Eq.ndrec\",\"Eq.symm\",\"LT.lt\",\"Coverage.Recur.reassociate_literal\",\"Coverage.Recur.weight\",\"Coverage.Syntax.Term\",\"Coverage.Syntax.Term.literal\",\"Coverage.Syntax.Term.plus\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.reassociate._proof_2\",\"kind\":\"theorem\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":true,\"kernel_uses\":[\"Eq\",\"InvImage\",\"Nat\",\"id\",\"instLTNat\",\"Eq.ndrec\",\"Eq.symm\",\"LT.lt\",\"Coverage.Recur.reassociate_plus\",\"Coverage.Recur.weight\",\"Coverage.Syntax.Term\",\"Coverage.Syntax.Term.plus\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.reassociate.match_1\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Eq\",\"Nat\",\"Eq.refl\",\"Coverage.Syntax.Term\",\"Coverage.Syntax.Term.casesOn\",\"Coverage.Syntax.Term.literal\",\"Coverage.Syntax.Term.plus\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.reduce._unary\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Eq\",\"InvImage\",\"Nat\",\"instLTNat\",\"instOfNatNat\",\"instSubNat\",\"Bool.false\",\"Bool.true\",\"LT.lt\",\"LexLeanRuntime.subtract\",\"Nat.beq\",\"Nat.blt\",\"OfNat.ofNat\",\"WellFounded.Nat.fix\",\"Coverage.Recur.countdown.match_1\",\"Coverage.Recur.reduce._unary._proof_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.roseSize._f\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"List\",\"Nat\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"HAdd.hAdd\",\"OfNat.ofNat\",\"Coverage.Syntax.Rose\",\"Coverage.Recur.roseSize.match_1\",\"Coverage.Syntax.Rose.below\",\"Coverage.Syntax.Rose.node\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.roseSize.match_1\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Coverage.Syntax.Rose\",\"Coverage.Syntax.Rose.casesOn\",\"Coverage.Syntax.Rose.node\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.search._unary\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Eq\",\"InvImage\",\"Nat\",\"instAddNat\",\"instHAdd\",\"instLTNat\",\"instOfNatNat\",\"instSubNat\",\"Bool.false\",\"Bool.true\",\"HAdd.hAdd\",\"LT.lt\",\"LexLeanRuntime.subtract\",\"Nat.ble\",\"Nat.blt\",\"OfNat.ofNat\",\"WellFounded.Nat.fix\",\"Coverage.Recur.countdown.match_1\",\"Coverage.Recur.search._unary._proof_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.statementSize._f\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"List\",\"Nat\",\"String\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"HAdd.hAdd\",\"OfNat.ofNat\",\"Coverage.Syntax.Expr\",\"Coverage.Syntax.Stmt\",\"Coverage.Recur.statementSize.match_1\",\"Coverage.Syntax.Stmt.assign\",\"Coverage.Syntax.Stmt.below\",\"Coverage.Syntax.Stmt.sequence\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.statementSize.match_1\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"String\",\"Coverage.Syntax.Expr\",\"Coverage.Syntax.Stmt\",\"Coverage.Syntax.Stmt.assign\",\"Coverage.Syntax.Stmt.casesOn\",\"Coverage.Syntax.Stmt.sequence\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.statementsSize._f\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"List\",\"Nat\",\"Unit\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"HAdd.hAdd\",\"List.cons\",\"List.nil\",\"OfNat.ofNat\",\"Coverage.Syntax.Expr\",\"Coverage.Syntax.Stmt\",\"Coverage.Recur.statementsSize.match_1\",\"Coverage.Syntax.Expr.below_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.statementsSize.match_1\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Unit\",\"List.casesOn\",\"List.cons\",\"List.nil\",\"Unit.unit\",\"Coverage.Syntax.Stmt\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.weight._f\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Nat\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"HAdd.hAdd\",\"OfNat.ofNat\",\"Coverage.Syntax.Term\",\"Coverage.Recur.weight.match_1\",\"Coverage.Syntax.Term.below\",\"Coverage.Syntax.Term.literal\",\"Coverage.Syntax.Term.plus\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.weight.match_1\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Coverage.Syntax.Term\",\"Coverage.Syntax.Term.casesOn\",\"Coverage.Syntax.Term.literal\",\"Coverage.Syntax.Term.plus\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Expr.below\",\"kind\":\"definition\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"PProd\",\"PUnit\",\"String\",\"Coverage.Syntax.Expr\",\"Coverage.Syntax.Stmt\",\"Coverage.Syntax.Expr.rec\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Expr.below_1\",\"kind\":\"definition\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"PProd\",\"PUnit\",\"String\",\"Coverage.Syntax.Expr\",\"Coverage.Syntax.Stmt\",\"Coverage.Syntax.Expr.rec_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Expr.block\",\"kind\":\"constructor\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Expr.brecOn\",\"kind\":\"definition\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Coverage.Syntax.Expr\",\"Coverage.Syntax.Stmt\",\"Coverage.Syntax.Expr.below\",\"Coverage.Syntax.Expr.below_1\",\"Coverage.Syntax.Stmt.below\",\"Coverage.Syntax.Expr.brecOn.go\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Expr.brecOn_1\",\"kind\":\"definition\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Coverage.Syntax.Expr\",\"Coverage.Syntax.Stmt\",\"Coverage.Syntax.Expr.below\",\"Coverage.Syntax.Expr.below_1\",\"Coverage.Syntax.Stmt.below\",\"Coverage.Syntax.Expr.brecOn_1.go\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Expr.casesOn\",\"kind\":\"definition\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"PUnit\",\"String\",\"PUnit.unit\",\"Coverage.Syntax.Expr\",\"Coverage.Syntax.Stmt\",\"Coverage.Syntax.Expr.block\",\"Coverage.Syntax.Expr.literal\",\"Coverage.Syntax.Expr.plus\",\"Coverage.Syntax.Expr.rec\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Expr.literal\",\"kind\":\"constructor\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Expr.plus\",\"kind\":\"constructor\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Expr.rec\",\"kind\":\"recursor\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"recursor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Expr.rec_1\",\"kind\":\"recursor\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"recursor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Rose.below\",\"kind\":\"definition\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"PProd\",\"PUnit\",\"Coverage.Syntax.Rose\",\"Coverage.Syntax.Rose.rec\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Rose.below_1\",\"kind\":\"definition\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"PProd\",\"PUnit\",\"Coverage.Syntax.Rose\",\"Coverage.Syntax.Rose.rec_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Rose.brecOn\",\"kind\":\"definition\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Coverage.Syntax.Rose\",\"Coverage.Syntax.Rose.below\",\"Coverage.Syntax.Rose.below_1\",\"Coverage.Syntax.Rose.brecOn.go\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Rose.brecOn_1\",\"kind\":\"definition\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Coverage.Syntax.Rose\",\"Coverage.Syntax.Rose.below\",\"Coverage.Syntax.Rose.below_1\",\"Coverage.Syntax.Rose.brecOn_1.go\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Rose.casesOn\",\"kind\":\"definition\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"PUnit\",\"PUnit.unit\",\"Coverage.Syntax.Rose\",\"Coverage.Syntax.Rose.node\",\"Coverage.Syntax.Rose.rec\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Rose.node\",\"kind\":\"constructor\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Rose.rec\",\"kind\":\"recursor\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"recursor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Rose.rec_1\",\"kind\":\"recursor\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"recursor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Stmt.assign\",\"kind\":\"constructor\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Stmt.below\",\"kind\":\"definition\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"PProd\",\"PUnit\",\"String\",\"Coverage.Syntax.Expr\",\"Coverage.Syntax.Stmt\",\"Coverage.Syntax.Stmt.rec\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Stmt.brecOn\",\"kind\":\"definition\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Coverage.Syntax.Expr\",\"Coverage.Syntax.Stmt\",\"Coverage.Syntax.Expr.below\",\"Coverage.Syntax.Expr.below_1\",\"Coverage.Syntax.Stmt.below\",\"Coverage.Syntax.Stmt.brecOn.go\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Stmt.casesOn\",\"kind\":\"definition\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"PUnit\",\"String\",\"PUnit.unit\",\"Coverage.Syntax.Expr\",\"Coverage.Syntax.Stmt\",\"Coverage.Syntax.Stmt.assign\",\"Coverage.Syntax.Stmt.rec\",\"Coverage.Syntax.Stmt.sequence\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Stmt.rec\",\"kind\":\"recursor\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"recursor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Stmt.sequence\",\"kind\":\"constructor\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Term.below\",\"kind\":\"definition\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"PProd\",\"PUnit\",\"Coverage.Syntax.Term\",\"Coverage.Syntax.Term.rec\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Term.brecOn\",\"kind\":\"definition\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Coverage.Syntax.Term\",\"Coverage.Syntax.Term.below\",\"Coverage.Syntax.Term.brecOn.go\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Term.casesOn\",\"kind\":\"definition\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Coverage.Syntax.Term\",\"Coverage.Syntax.Term.literal\",\"Coverage.Syntax.Term.plus\",\"Coverage.Syntax.Term.rec\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Term.literal\",\"kind\":\"constructor\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Term.plus\",\"kind\":\"constructor\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Term.rec\",\"kind\":\"recursor\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"recursor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.Box.content\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Coverage.Types.Box\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.Box.mk\",\"kind\":\"constructor\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.Point.mk\",\"kind\":\"constructor\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.Point.x\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Coverage.Types.Point\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.Point.y\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Coverage.Types.Point\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.Shape.casesOn\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Coverage.Types.Shape\",\"Coverage.Types.Shape.circle\",\"Coverage.Types.Shape.empty\",\"Coverage.Types.Shape.rec\",\"Coverage.Types.Shape.rect\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.Shape.circle\",\"kind\":\"constructor\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.Shape.empty\",\"kind\":\"constructor\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.Shape.rec\",\"kind\":\"recursor\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"recursor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.Shape.rect\",\"kind\":\"constructor\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.Tree.below\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"PProd\",\"PUnit\",\"Coverage.Types.Tree\",\"Coverage.Types.Tree.rec\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.Tree.brecOn\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Coverage.Types.Tree\",\"Coverage.Types.Tree.below\",\"Coverage.Types.Tree.brecOn.go\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.Tree.casesOn\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Coverage.Types.Tree\",\"Coverage.Types.Tree.leaf\",\"Coverage.Types.Tree.node\",\"Coverage.Types.Tree.rec\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.Tree.leaf\",\"kind\":\"constructor\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.Tree.node\",\"kind\":\"constructor\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.Tree.rec\",\"kind\":\"recursor\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"recursor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.Weights.mk\",\"kind\":\"constructor\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.Weights.scale\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Coverage.Types.Weights\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.area.match_1\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Unit\",\"Unit.unit\",\"Coverage.Types.Shape\",\"Coverage.Types.Shape.casesOn\",\"Coverage.Types.Shape.circle\",\"Coverage.Types.Shape.empty\",\"Coverage.Types.Shape.rect\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.isEven._f\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Nat\",\"PProd\",\"Unit\",\"Bool.true\",\"Nat.below\",\"Nat.succ\",\"Nat.zero\",\"Coverage.Types.isEven.match_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.isEven.match_1\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Unit\",\"Nat.casesOn\",\"Nat.succ\",\"Nat.zero\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.isOdd._f\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Nat\",\"PProd\",\"Unit\",\"Bool.false\",\"Nat.below\",\"Nat.succ\",\"Nat.zero\",\"Coverage.Types.isEven.match_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.mapList._f\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"List\",\"List.below\",\"List.cons\",\"List.nil\",\"Coverage.Types.mapList.match_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.mapList.match_1\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"List.casesOn\",\"List.cons\",\"List.nil\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.treeSum._f\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Nat\",\"Unit\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"HAdd.hAdd\",\"OfNat.ofNat\",\"Coverage.Types.Tree\",\"Coverage.Types.Tree.below\",\"Coverage.Types.Tree.leaf\",\"Coverage.Types.Tree.node\",\"Coverage.Types.treeSum.match_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.treeSum.match_1\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Unit\",\"Unit.unit\",\"Coverage.Types.Tree\",\"Coverage.Types.Tree.casesOn\",\"Coverage.Types.Tree.leaf\",\"Coverage.Types.Tree.node\"],\"declaration\":null,\"inductive\":null},{\"name\":\"_private.Coverage.Recur.0.Coverage.Recur.countdown_decreases._proof_1_32\",\"kind\":\"theorem\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":true,\"kernel_uses\":[\"And\",\"Bool\",\"Eq\",\"False\",\"Int\",\"Nat\",\"Not\",\"id\",\"instDecidableEqBool\",\"instHAdd\",\"instHSub\",\"instLENat\",\"instLTNat\",\"instNatCastInt\",\"instOfNat\",\"instOfNatNat\",\"instSubNat\",\"le_of_le_of_eq\",\"of_decide_eq_true\",\"And.left\",\"And.right\",\"Bool.true\",\"Decidable.decide\",\"Eq.refl\",\"Eq.symm\",\"Eq.trans\",\"HAdd.hAdd\",\"HSub.hSub\",\"Int.add_one_le_of_lt\",\"Int.instAdd\",\"Int.instLEInt\",\"Int.instNegInt\",\"Int.instSub\",\"Int.sub_eq_zero_of_eq\",\"Int.sub_nonneg_of_le\",\"LE.le\",\"LT.lt\",\"List.cons\",\"List.nil\",\"Nat.cast\",\"Nat.le_of_not_lt\",\"Neg.neg\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Or.elim\",\"Lean.Omega.LinearCombo\",\"Lean.Omega.tidy_sat\",\"Lean.Omega.Coeffs.ofList\",\"Lean.Omega.Constraint.addEquality_sat\",\"Lean.Omega.Constraint.addInequality_sat\",\"Lean.Omega.Constraint.combine_sat'\",\"Lean.Omega.Constraint.isImpossible\",\"Lean.Omega.Constraint.mk\",\"Lean.Omega.Constraint.not_sat'_of_isImpossible\",\"Lean.Omega.Int.add_congr\",\"Lean.Omega.Int.ofNat_le_of_le\",\"Lean.Omega.Int.ofNat_lt_of_lt\",\"Lean.Omega.Int.ofNat_sub_dichotomy\",\"Lean.Omega.Int.sub_congr\",\"Lean.Omega.LinearCombo.add_eval\",\"Lean.Omega.LinearCombo.coordinate\",\"Lean.Omega.LinearCombo.coordinate_eval_0\",\"Lean.Omega.LinearCombo.coordinate_eval_1\",\"Lean.Omega.LinearCombo.eval\",\"Lean.Omega.LinearCombo.instAdd\",\"Lean.Omega.LinearCombo.instSub\",\"Lean.Omega.LinearCombo.mk\",\"Lean.Omega.LinearCombo.sub_eval\"],\"declaration\":null,\"inductive\":null},{\"name\":\"_private.Coverage.Recur.0.Coverage.Recur.countdown_decreases._simp_1_1\",\"kind\":\"theorem\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Eq\",\"Not\",\"Bool.false\",\"Bool.not_eq_true\",\"Bool.true\",\"Eq.symm\"],\"declaration\":null,\"inductive\":null},{\"name\":\"_private.Coverage.Recur.0.Coverage.Recur.prune_plus._proof_1_35\",\"kind\":\"theorem\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Eq\",\"Int\",\"Nat\",\"Not\",\"id\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instHSub\",\"instLTNat\",\"instNatCastInt\",\"instOfNat\",\"instOfNatNat\",\"le_of_le_of_eq\",\"of_decide_eq_true\",\"Bool.true\",\"Decidable.decide\",\"Eq.refl\",\"Eq.symm\",\"Eq.trans\",\"HAdd.hAdd\",\"HSub.hSub\",\"Int.instAdd\",\"Int.instLEInt\",\"Int.instNegInt\",\"Int.instSub\",\"Int.natCast_add\",\"Int.natCast_nonneg\",\"Int.sub_nonneg_of_le\",\"LT.lt\",\"List.cons\",\"List.nil\",\"Nat.cast\",\"Nat.le_of_not_lt\",\"Neg.neg\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Coverage.Recur.weight\",\"Coverage.Syntax.Term\",\"Lean.Omega.LinearCombo\",\"Lean.Omega.combo_sat'\",\"Lean.Omega.tidy_sat\",\"Lean.Omega.Coeffs.ofList\",\"Lean.Omega.Constraint.addInequality_sat\",\"Lean.Omega.Constraint.combine_sat'\",\"Lean.Omega.Constraint.isImpossible\",\"Lean.Omega.Constraint.mk\",\"Lean.Omega.Constraint.not_sat'_of_isImpossible\",\"Lean.Omega.Int.add_congr\",\"Lean.Omega.Int.ofNat_le_of_le\",\"Lean.Omega.Int.sub_congr\",\"Lean.Omega.LinearCombo.add_eval\",\"Lean.Omega.LinearCombo.coordinate\",\"Lean.Omega.LinearCombo.coordinate_eval_0\",\"Lean.Omega.LinearCombo.coordinate_eval_1\",\"Lean.Omega.LinearCombo.coordinate_eval_2\",\"Lean.Omega.LinearCombo.eval\",\"Lean.Omega.LinearCombo.instAdd\",\"Lean.Omega.LinearCombo.instSub\",\"Lean.Omega.LinearCombo.mk\",\"Lean.Omega.LinearCombo.sub_eval\"],\"declaration\":null,\"inductive\":null},{\"name\":\"_private.Coverage.Recur.0.Coverage.Recur.reassociate_literal._proof_1_35\",\"kind\":\"theorem\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Eq\",\"Int\",\"Nat\",\"Not\",\"id\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instHSub\",\"instLTNat\",\"instNatCastInt\",\"instOfNat\",\"instOfNatNat\",\"le_of_le_of_eq\",\"of_decide_eq_true\",\"Bool.true\",\"Decidable.decide\",\"Eq.refl\",\"Eq.symm\",\"Eq.trans\",\"HAdd.hAdd\",\"HSub.hSub\",\"Int.instAdd\",\"Int.instLEInt\",\"Int.instNegInt\",\"Int.instSub\",\"Int.natCast_add\",\"Int.sub_nonneg_of_le\",\"LT.lt\",\"List.cons\",\"List.nil\",\"Nat.cast\",\"Nat.le_of_not_lt\",\"Neg.neg\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Coverage.Recur.weight\",\"Coverage.Syntax.Term\",\"Lean.Omega.LinearCombo\",\"Lean.Omega.tidy_sat\",\"Lean.Omega.Coeffs.ofList\",\"Lean.Omega.Constraint.addInequality_sat\",\"Lean.Omega.Constraint.isImpossible\",\"Lean.Omega.Constraint.mk\",\"Lean.Omega.Constraint.not_sat'_of_isImpossible\",\"Lean.Omega.Int.add_congr\",\"Lean.Omega.Int.ofNat_le_of_le\",\"Lean.Omega.Int.sub_congr\",\"Lean.Omega.LinearCombo.add_eval\",\"Lean.Omega.LinearCombo.coordinate\",\"Lean.Omega.LinearCombo.coordinate_eval_0\",\"Lean.Omega.LinearCombo.eval\",\"Lean.Omega.LinearCombo.instAdd\",\"Lean.Omega.LinearCombo.instSub\",\"Lean.Omega.LinearCombo.mk\",\"Lean.Omega.LinearCombo.sub_eval\"],\"declaration\":null,\"inductive\":null},{\"name\":\"_private.Coverage.Recur.0.Coverage.Recur.reassociate_plus._proof_1_35\",\"kind\":\"theorem\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Eq\",\"Int\",\"Nat\",\"Not\",\"id\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instHSub\",\"instLTNat\",\"instNatCastInt\",\"instOfNat\",\"instOfNatNat\",\"le_of_le_of_eq\",\"of_decide_eq_true\",\"Bool.true\",\"Decidable.decide\",\"Eq.refl\",\"Eq.symm\",\"Eq.trans\",\"HAdd.hAdd\",\"HSub.hSub\",\"Int.instAdd\",\"Int.instLEInt\",\"Int.instNegInt\",\"Int.instSub\",\"Int.natCast_add\",\"Int.natCast_nonneg\",\"Int.sub_nonneg_of_le\",\"LT.lt\",\"List.cons\",\"List.nil\",\"Nat.cast\",\"Nat.le_of_not_lt\",\"Neg.neg\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Coverage.Recur.weight\",\"Coverage.Syntax.Term\",\"Lean.Omega.LinearCombo\",\"Lean.Omega.combo_sat'\",\"Lean.Omega.tidy_sat\",\"Lean.Omega.Coeffs.ofList\",\"Lean.Omega.Constraint.addInequality_sat\",\"Lean.Omega.Constraint.isImpossible\",\"Lean.Omega.Constraint.mk\",\"Lean.Omega.Constraint.not_sat'_of_isImpossible\",\"Lean.Omega.Int.add_congr\",\"Lean.Omega.Int.ofNat_le_of_le\",\"Lean.Omega.Int.sub_congr\",\"Lean.Omega.LinearCombo.add_eval\",\"Lean.Omega.LinearCombo.coordinate\",\"Lean.Omega.LinearCombo.coordinate_eval_0\",\"Lean.Omega.LinearCombo.coordinate_eval_1\",\"Lean.Omega.LinearCombo.coordinate_eval_2\",\"Lean.Omega.LinearCombo.eval\",\"Lean.Omega.LinearCombo.instAdd\",\"Lean.Omega.LinearCombo.instSub\",\"Lean.Omega.LinearCombo.mk\",\"Lean.Omega.LinearCombo.sub_eval\"],\"declaration\":null,\"inductive\":null},{\"name\":\"_private.Coverage.Recur.0.Coverage.Recur.reduce_decreases._proof_1_32\",\"kind\":\"theorem\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":true,\"kernel_uses\":[\"And\",\"Bool\",\"Eq\",\"False\",\"Int\",\"Nat\",\"Not\",\"id\",\"instDecidableEqBool\",\"instHAdd\",\"instHSub\",\"instLENat\",\"instLTNat\",\"instNatCastInt\",\"instOfNat\",\"instOfNatNat\",\"instSubNat\",\"le_of_le_of_eq\",\"of_decide_eq_true\",\"And.left\",\"And.right\",\"Bool.true\",\"Decidable.decide\",\"Eq.refl\",\"Eq.symm\",\"Eq.trans\",\"GT.gt\",\"HAdd.hAdd\",\"HSub.hSub\",\"Int.add_one_le_of_lt\",\"Int.instAdd\",\"Int.instLEInt\",\"Int.instNegInt\",\"Int.instSub\",\"Int.natCast_nonneg\",\"Int.sub_eq_zero_of_eq\",\"Int.sub_nonneg_of_le\",\"LE.le\",\"LT.lt\",\"List.cons\",\"List.nil\",\"Nat.cast\",\"Nat.le_of_not_lt\",\"Nat.lt_or_gt_of_ne\",\"Neg.neg\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Or.elim\",\"Lean.Omega.LinearCombo\",\"Lean.Omega.combo_sat'\",\"Lean.Omega.tidy_sat\",\"Lean.Omega.Coeffs.ofList\",\"Lean.Omega.Constraint.addEquality_sat\",\"Lean.Omega.Constraint.addInequality_sat\",\"Lean.Omega.Constraint.combine_sat'\",\"Lean.Omega.Constraint.isImpossible\",\"Lean.Omega.Constraint.mk\",\"Lean.Omega.Constraint.not_sat'_of_isImpossible\",\"Lean.Omega.Int.add_congr\",\"Lean.Omega.Int.ofNat_le_of_le\",\"Lean.Omega.Int.ofNat_lt_of_lt\",\"Lean.Omega.Int.ofNat_sub_dichotomy\",\"Lean.Omega.Int.sub_congr\",\"Lean.Omega.LinearCombo.add_eval\",\"Lean.Omega.LinearCombo.coordinate\",\"Lean.Omega.LinearCombo.coordinate_eval_0\",\"Lean.Omega.LinearCombo.coordinate_eval_1\",\"Lean.Omega.LinearCombo.coordinate_eval_2\",\"Lean.Omega.LinearCombo.eval\",\"Lean.Omega.LinearCombo.instAdd\",\"Lean.Omega.LinearCombo.instSub\",\"Lean.Omega.LinearCombo.mk\",\"Lean.Omega.LinearCombo.sub_eval\"],\"declaration\":null,\"inductive\":null},{\"name\":\"_private.Coverage.Recur.0.Coverage.Recur.reduce_decreases._simp_1_1\",\"kind\":\"theorem\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Eq\",\"Not\",\"Bool.false\",\"Bool.not_eq_true\",\"Bool.true\",\"Eq.symm\"],\"declaration\":null,\"inductive\":null},{\"name\":\"_private.Coverage.Recur.0.Coverage.Recur.search_decreases._proof_1_32\",\"kind\":\"theorem\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":true,\"kernel_uses\":[\"And\",\"Bool\",\"Eq\",\"False\",\"Int\",\"Nat\",\"Not\",\"id\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instHSub\",\"instLENat\",\"instLTNat\",\"instNatCastInt\",\"instOfNat\",\"instOfNatNat\",\"instSubNat\",\"le_of_le_of_eq\",\"of_decide_eq_true\",\"And.left\",\"And.right\",\"Bool.true\",\"Decidable.decide\",\"Eq.refl\",\"Eq.symm\",\"Eq.trans\",\"HAdd.hAdd\",\"HSub.hSub\",\"Int.add_one_le_of_lt\",\"Int.instAdd\",\"Int.instLEInt\",\"Int.instNegInt\",\"Int.instSub\",\"Int.natCast_add\",\"Int.sub_eq_zero_of_eq\",\"Int.sub_nonneg_of_le\",\"LE.le\",\"LT.lt\",\"List.cons\",\"List.nil\",\"Nat.cast\",\"Nat.le_of_not_lt\",\"Neg.neg\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Or.elim\",\"Lean.Omega.LinearCombo\",\"Lean.Omega.combo_sat'\",\"Lean.Omega.tidy_sat\",\"Lean.Omega.Coeffs.ofList\",\"Lean.Omega.Constraint.addEquality_sat\",\"Lean.Omega.Constraint.addInequality_sat\",\"Lean.Omega.Constraint.combine_sat'\",\"Lean.Omega.Constraint.isImpossible\",\"Lean.Omega.Constraint.mk\",\"Lean.Omega.Constraint.not_sat'_of_isImpossible\",\"Lean.Omega.Int.add_congr\",\"Lean.Omega.Int.ofNat_le_of_le\",\"Lean.Omega.Int.ofNat_lt_of_lt\",\"Lean.Omega.Int.ofNat_sub_dichotomy\",\"Lean.Omega.Int.sub_congr\",\"Lean.Omega.LinearCombo.add_eval\",\"Lean.Omega.LinearCombo.coordinate\",\"Lean.Omega.LinearCombo.coordinate_eval_0\",\"Lean.Omega.LinearCombo.coordinate_eval_1\",\"Lean.Omega.LinearCombo.coordinate_eval_3\",\"Lean.Omega.LinearCombo.coordinate_eval_4\",\"Lean.Omega.LinearCombo.eval\",\"Lean.Omega.LinearCombo.instAdd\",\"Lean.Omega.LinearCombo.instSub\",\"Lean.Omega.LinearCombo.mk\",\"Lean.Omega.LinearCombo.sub_eval\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.countdown._unary._proof_1\",\"kind\":\"theorem\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Eq\",\"InvImage\",\"Nat\",\"PSigma\",\"id\",\"instAddNat\",\"instHAdd\",\"instLTNat\",\"instOfNatNat\",\"instSubNat\",\"Bool.false\",\"HAdd.hAdd\",\"LT.lt\",\"LexLeanRuntime.subtract\",\"Nat.blt\",\"OfNat.ofNat\",\"PSigma.casesOn\",\"PSigma.mk\",\"Coverage.Recur.countdown_decreases\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.reduce._unary._proof_1\",\"kind\":\"theorem\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Eq\",\"InvImage\",\"Nat\",\"id\",\"instLTNat\",\"instOfNatNat\",\"instSubNat\",\"Bool.false\",\"LT.lt\",\"LexLeanRuntime.subtract\",\"Nat.beq\",\"Nat.blt\",\"OfNat.ofNat\",\"Coverage.Recur.reduce_decreases\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.search._unary._proof_1\",\"kind\":\"theorem\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Eq\",\"InvImage\",\"Nat\",\"id\",\"instAddNat\",\"instHAdd\",\"instLTNat\",\"instOfNatNat\",\"instSubNat\",\"Bool.false\",\"Bool.true\",\"HAdd.hAdd\",\"LT.lt\",\"LexLeanRuntime.subtract\",\"Nat.ble\",\"Nat.blt\",\"OfNat.ofNat\",\"Coverage.Recur.search_decreases\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Expr.brecOn.go\",\"kind\":\"definition\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"PProd\",\"PUnit\",\"String\",\"List.cons\",\"List.nil\",\"PProd.mk\",\"PUnit.unit\",\"Coverage.Syntax.Expr\",\"Coverage.Syntax.Stmt\",\"Coverage.Syntax.Expr.below\",\"Coverage.Syntax.Expr.below_1\",\"Coverage.Syntax.Expr.block\",\"Coverage.Syntax.Expr.literal\",\"Coverage.Syntax.Expr.plus\",\"Coverage.Syntax.Expr.rec\",\"Coverage.Syntax.Stmt.assign\",\"Coverage.Syntax.Stmt.below\",\"Coverage.Syntax.Stmt.sequence\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Expr.brecOn_1.go\",\"kind\":\"definition\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"PProd\",\"PUnit\",\"String\",\"List.cons\",\"List.nil\",\"PProd.mk\",\"PUnit.unit\",\"Coverage.Syntax.Expr\",\"Coverage.Syntax.Stmt\",\"Coverage.Syntax.Expr.below\",\"Coverage.Syntax.Expr.below_1\",\"Coverage.Syntax.Expr.block\",\"Coverage.Syntax.Expr.literal\",\"Coverage.Syntax.Expr.plus\",\"Coverage.Syntax.Expr.rec_1\",\"Coverage.Syntax.Stmt.assign\",\"Coverage.Syntax.Stmt.below\",\"Coverage.Syntax.Stmt.sequence\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Rose.brecOn.go\",\"kind\":\"definition\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"PProd\",\"PUnit\",\"List.cons\",\"List.nil\",\"PProd.mk\",\"PUnit.unit\",\"Coverage.Syntax.Rose\",\"Coverage.Syntax.Rose.below\",\"Coverage.Syntax.Rose.below_1\",\"Coverage.Syntax.Rose.node\",\"Coverage.Syntax.Rose.rec\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Rose.brecOn_1.go\",\"kind\":\"definition\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"PProd\",\"PUnit\",\"List.cons\",\"List.nil\",\"PProd.mk\",\"PUnit.unit\",\"Coverage.Syntax.Rose\",\"Coverage.Syntax.Rose.below\",\"Coverage.Syntax.Rose.below_1\",\"Coverage.Syntax.Rose.node\",\"Coverage.Syntax.Rose.rec_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Stmt.brecOn.go\",\"kind\":\"definition\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"PProd\",\"PUnit\",\"String\",\"List.cons\",\"List.nil\",\"PProd.mk\",\"PUnit.unit\",\"Coverage.Syntax.Expr\",\"Coverage.Syntax.Stmt\",\"Coverage.Syntax.Expr.below\",\"Coverage.Syntax.Expr.below_1\",\"Coverage.Syntax.Expr.block\",\"Coverage.Syntax.Expr.literal\",\"Coverage.Syntax.Expr.plus\",\"Coverage.Syntax.Stmt.assign\",\"Coverage.Syntax.Stmt.below\",\"Coverage.Syntax.Stmt.rec\",\"Coverage.Syntax.Stmt.sequence\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Term.brecOn.go\",\"kind\":\"definition\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"PProd\",\"PUnit\",\"PProd.mk\",\"PUnit.unit\",\"Coverage.Syntax.Term\",\"Coverage.Syntax.Term.below\",\"Coverage.Syntax.Term.literal\",\"Coverage.Syntax.Term.plus\",\"Coverage.Syntax.Term.rec\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.Tree.brecOn.go\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"PProd\",\"PUnit\",\"PProd.mk\",\"PUnit.unit\",\"Coverage.Types.Tree\",\"Coverage.Types.Tree.below\",\"Coverage.Types.Tree.leaf\",\"Coverage.Types.Tree.node\",\"Coverage.Types.Tree.rec\"],\"declaration\":null,\"inductive\":null}],\"externals\":[{\"name\":\"Add\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Array\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"BEq\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Bool\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"ByteArray\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Char\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Decidable\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Except\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"GetElem?\",\"kind\":\"inductive\",\"module\":\"Init.GetElem\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"HAdd\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"HMul\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"HSub\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Int\",\"kind\":\"inductive\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Int16\",\"kind\":\"inductive\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Int32\",\"kind\":\"inductive\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Int64\",\"kind\":\"inductive\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Int8\",\"kind\":\"inductive\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"List\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Mul\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Nat\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Neg\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"OfNat\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Option\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Ord\",\"kind\":\"inductive\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Ordering\",\"kind\":\"inductive\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"PUnit\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Prod\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"String\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Sub\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"ToString\",\"kind\":\"inductive\",\"module\":\"Init.Data.ToString.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"UInt16\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"UInt32\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"UInt64\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"UInt8\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"bne\",\"kind\":\"definition\",\"module\":\"Init.Core\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instAddInt64\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instAddNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instAddUInt64\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instBEqOfDecidableEq\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instDecidableEqBool\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instDecidableEqInt32\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instDecidableEqInt64\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instDecidableEqNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instDecidableEqOrdering\",\"kind\":\"definition\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instDecidableEqString\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instDecidableEqUInt16\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instHAdd\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instHMul\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instHSub\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instMulNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instOfNat\",\"kind\":\"definition\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instOfNatNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instOrdBool\",\"kind\":\"definition\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instOrdInt\",\"kind\":\"definition\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instOrdNat\",\"kind\":\"definition\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instSubInt64\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instSubNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instSubUInt64\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instToStringInt\",\"kind\":\"definition\",\"module\":\"Init.Data.ToString.Extra\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instToStringInt8\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instToStringUInt32\",\"kind\":\"definition\",\"module\":\"Init.Data.ToString.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Array.instGetElem?NatLtSize\",\"kind\":\"definition\",\"module\":\"Init.GetElem\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Bool.false\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Bool\"},{\"name\":\"Bool.not\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Bool.true\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Bool\"},{\"name\":\"ByteArray.data\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"ByteArray.extract\",\"kind\":\"definition\",\"module\":\"Init.Data.ByteArray.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"ByteArray.fastAppend\",\"kind\":\"definition\",\"module\":\"Init.Data.ByteArray.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"ByteArray.instBEq\",\"kind\":\"definition\",\"module\":\"Init.Data.ByteArray.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"ByteArray.mk\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":true,\"inductive_type\":\"ByteArray\"},{\"name\":\"ByteArray.size\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"ByteArray.toList\",\"kind\":\"definition\",\"module\":\"Init.Data.ByteArray.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Decidable.decide\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Decidable.isFalse\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Decidable\"},{\"name\":\"Decidable.isTrue\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Decidable\"},{\"name\":\"Except.error\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Except\"},{\"name\":\"Except.ok\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Except\"},{\"name\":\"Int.decLt\",\"kind\":\"definition\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int.instAdd\",\"kind\":\"definition\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int.instDecidableEq\",\"kind\":\"definition\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int.instMul\",\"kind\":\"definition\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int.instNegInt\",\"kind\":\"definition\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int.instSub\",\"kind\":\"definition\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int.ofNat\",\"kind\":\"constructor\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":true,\"inductive_type\":\"Int\"},{\"name\":\"Int.tdiv\",\"kind\":\"definition\",\"module\":\"Init.Data.Int.DivMod.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int.tmod\",\"kind\":\"definition\",\"module\":\"Init.Data.Int.DivMod.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int16.complement\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int16.land\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int16.lor\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int16.ofInt\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int16.ofNat\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int16.shiftLeft\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int16.shiftRight\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int16.toInt\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int16.xor\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int32.complement\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int32.instNeg\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int32.instOfNat\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int32.land\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int32.lor\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int32.ofInt\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int32.ofNat\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int32.shiftLeft\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int32.shiftRight\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int32.toInt\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int32.xor\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int64.complement\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int64.decLt\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int64.instNeg\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int64.instOfNat\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int64.land\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int64.lor\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int64.ofInt\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int64.ofNat\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int64.shiftLeft\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int64.shiftRight\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int64.toInt\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int64.xor\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int8.complement\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int8.land\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int8.lor\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int8.ofInt\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int8.ofNat\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int8.shiftLeft\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int8.shiftRight\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int8.toInt\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int8.xor\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"List.all\",\"kind\":\"definition\",\"module\":\"Init.Data.List.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"List.appendTR\",\"kind\":\"definition\",\"module\":\"Init.Data.List.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"List.cons\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"List\"},{\"name\":\"List.drop\",\"kind\":\"definition\",\"module\":\"Init.Data.List.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"List.filterTR\",\"kind\":\"definition\",\"module\":\"Init.Data.List.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"List.foldl\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"List.instOrd\",\"kind\":\"definition\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"List.isEmpty\",\"kind\":\"definition\",\"module\":\"Init.Data.List.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"List.lengthTR\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"List.mapTR\",\"kind\":\"definition\",\"module\":\"Init.Data.List.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"List.nil\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"List\"},{\"name\":\"List.reverse\",\"kind\":\"definition\",\"module\":\"Init.Data.List.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"List.takeTR\",\"kind\":\"axiom\",\"module\":\"Init.Data.List.Impl\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"List.toArray\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.beq\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.ble\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.blt\",\"kind\":\"definition\",\"module\":\"Init.Data.Nat.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.decLe\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.decLt\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.div\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.mod\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.succ\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Nat\"},{\"name\":\"Nat.zero\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Nat\"},{\"name\":\"Option.isSome\",\"kind\":\"definition\",\"module\":\"Init.Data.Option.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Option.none\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Option\"},{\"name\":\"Option.some\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Option\"},{\"name\":\"Ordering.eq\",\"kind\":\"constructor\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Ordering\"},{\"name\":\"Ordering.gt\",\"kind\":\"constructor\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Ordering\"},{\"name\":\"Ordering.lt\",\"kind\":\"constructor\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Ordering\"},{\"name\":\"Prod.mk\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Prod\"},{\"name\":\"String.fromUTF8?\",\"kind\":\"definition\",\"module\":\"Init.Data.String.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"String.intercalate\",\"kind\":\"axiom\",\"module\":\"Init.Data.String.Defs\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"String.isEmpty\",\"kind\":\"definition\",\"module\":\"Init.Data.String.Defs\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"String.length\",\"kind\":\"definition\",\"module\":\"Init.Data.String.Length\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"String.splitOn\",\"kind\":\"axiom\",\"module\":\"Init.Data.String.Legacy\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"String.toInt?\",\"kind\":\"axiom\",\"module\":\"Init.Data.String.Search\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"String.toList\",\"kind\":\"definition\",\"module\":\"Init.Data.String.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"String.toUTF8\",\"kind\":\"axiom\",\"module\":\"Init.Data.String.Defs\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt16.complement\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt16.land\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt16.lor\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt16.ofInt\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt16.ofNat\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.BasicAux\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt16.shiftLeft\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt16.shiftRight\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt16.toNat\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.BasicAux\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt16.xor\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt32.complement\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt32.instOfNat\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.BasicAux\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt32.land\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt32.lor\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt32.ofInt\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt32.shiftLeft\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt32.shiftRight\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt32.toNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt32.xor\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt64.complement\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt64.decLe\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt64.decLt\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt64.instOfNat\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.BasicAux\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt64.land\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt64.lor\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt64.ofInt\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt64.ofNat\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.BasicAux\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt64.shiftLeft\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt64.shiftRight\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt64.toInt64\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt64.toNat\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.BasicAux\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt64.xor\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt8.instOfNat\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.BasicAux\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt8.instOrd\",\"kind\":\"definition\",\"module\":\"Init.Data.Ord.UInt\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Unit.unit\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true}]}\n","stdout_sha256":"61bc88661e5d1048dfc867a9b847049b2c9eeceed3cb0f4da5fc8437c0fab574","tool":"lean"} +{"argv":["env","lean","$STAGING/extract/LexLeanExtract.Xe05bf7cb47aac48ea11c4a7ac75c7962.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanExtract.Xe05bf7cb47aac48ea11c4a7ac75c7962","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"{\"spec\":\"lexlean/lcnf-extraction/2\",\"lean\":{\"version\":\"4.32.1\",\"githash\":\"f054605aea4b840552cca2e725580bffd1e1b704\"},\"roots\":[\"Coverage.Boundary.groveRoot\",\"Coverage.Colls.mapOps\",\"Coverage.Colls.mapFolding\",\"Coverage.Colls.setOps\",\"Coverage.Colls.folds\",\"Coverage.Colls.iterations\",\"Coverage.Colls.graphs\",\"Coverage.Colls.stringGraph\",\"Coverage.Colls.keyTypes\",\"Coverage.Colls.literals\",\"Coverage.Main.natOps\",\"Coverage.Main.intOps\",\"Coverage.Main.shapes\",\"Coverage.Main.treeTotal\",\"Coverage.Main.records\",\"Coverage.Main.options\",\"Coverage.Main.builders\",\"Coverage.Main.pairs\",\"Coverage.Main.higher\",\"Coverage.Main.mapped\",\"Coverage.Main.parity\",\"Coverage.Prims.fixedSmall\",\"Coverage.Prims.fixedMiddle\",\"Coverage.Prims.fixedWide\",\"Coverage.Prims.bits\",\"Coverage.Prims.conversions\",\"Coverage.Prims.sequences\",\"Coverage.Prims.decimals\",\"Coverage.Prims.formats\",\"Coverage.Prims.text\",\"Coverage.RecRoots.roseTotal\",\"Coverage.RecRoots.syntaxTotal\",\"Coverage.RecRoots.wellFounded\",\"Coverage.RecRoots.rewrite\"],\"constants\":[{\"name\":\"LexLeanCollections.Key\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanCollections.Key.mk\",\"parameters\":1,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}}}}]}},{\"name\":\"LexLeanCollections.compareCodes\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Char\",\"List\",\"Ordering\",\"List.brecOn\",\"LexLeanCollections.compareCodes._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.86\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.87\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.97\",\"parameters\":[{\"id\":\"_uniq.95\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Ordering.eq\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.96\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.97\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.108\",\"parameters\":[{\"id\":\"_uniq.105\",\"type\":{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.106\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Ordering.lt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.107\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.108\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.115\",\"parameters\":[{\"id\":\"_uniq.112\",\"type\":{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.113\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Ordering.gt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.114\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.115\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.173\",\"parameters\":[{\"id\":\"_uniq.135\",\"type\":{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.136\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.137\",\"type\":{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.138\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.144\",\"parameters\":[{\"id\":\"_uniq.142\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.143\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.compareCodes\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.136\"},{\"kind\":\"fvar\",\"id\":\"_uniq.138\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.143\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.145\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.144\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.150\",\"parameters\":[{\"id\":\"_uniq.149\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.149\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.151\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.150\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.157\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Ord\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instOrdNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.158\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Ord\",\"index\":0,\"value\":\"_uniq.157\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.159\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Char\",\"index\":0,\"value\":\"_uniq.135\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.160\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.159\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.161\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Char\",\"index\":0,\"value\":\"_uniq.137\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.162\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.161\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.163\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.158\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.160\"},{\"kind\":\"fvar\",\"id\":\"_uniq.162\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Ordering\",\"result_type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"discriminant\":\"_uniq.163\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Ordering.eq\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.164\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.165\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.145\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.164\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.165\"}}}},{\"kind\":\"default\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.170\",\"parameters\":[{\"id\":\"_uniq.168\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.169\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.151\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.163\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.169\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.171\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.170\",\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"any\"}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.171\"}}}}]}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.174\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.173\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"discriminant\":\"_uniq.86\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"discriminant\":\"_uniq.87\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.191\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.192\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.98\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.191\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.192\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.193\",\"type\":{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.194\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.195\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.109\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.193\"},{\"kind\":\"fvar\",\"id\":\"_uniq.194\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.195\"}}}]}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.197\",\"type\":{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.198\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"discriminant\":\"_uniq.87\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.207\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.116\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.197\"},{\"kind\":\"fvar\",\"id\":\"_uniq.198\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.207\"}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.208\",\"type\":{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.209\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.210\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.174\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.197\"},{\"kind\":\"fvar\",\"id\":\"_uniq.198\"},{\"kind\":\"fvar\",\"id\":\"_uniq.208\"},{\"kind\":\"fvar\",\"id\":\"_uniq.209\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.210\"}}}]}}]}}}}}}}}}},\"uses\":[\"Char\",\"List\",\"Nat\",\"Ord\",\"Ordering\",\"PUnit\",\"UInt32\",\"instOrdNat\",\"LexLeanCollections.compareCodes\",\"List.cons\",\"List.nil\",\"Ordering.eq\",\"Ordering.gt\",\"Ordering.lt\",\"UInt32.toNat\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.containsElement\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"List\",\"LexLeanCollections.Key\",\"List.brecOn\",\"LexLeanCollections.containsElement._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}}}},\"parameters\":[{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"borrow\":false},{\"id\":\"_uniq.62\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},\"borrow\":false},{\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.71\",\"parameters\":[{\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.70\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.71\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.115\",\"parameters\":[{\"id\":\"_uniq.84\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},\"borrow\":false},{\"id\":\"_uniq.85\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.71\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.94\",\"parameters\":[{\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.93\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.94\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.99\",\"parameters\":[{\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.containsElement\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},{\"kind\":\"fvar\",\"id\":\"_uniq.85\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.98\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.99\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanCollections.Key\",\"index\":0,\"value\":\"_uniq.61\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.106\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Ordering\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.107\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Ordering.lt\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.90\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.109\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Ordering.eq\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.110\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.111\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.95\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.110\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.111\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Ordering.gt\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.113\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.100\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.112\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.113\"}}}}]}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.115\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.63\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.72\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.125\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.126\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.127\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},\"borrow\":false},{\"id\":\"_uniq.128\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.129\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.116\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.127\"},{\"kind\":\"fvar\",\"id\":\"_uniq.128\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.129\"}}}]}}}}}},\"uses\":[\"Bool\",\"List\",\"Ordering\",\"PUnit\",\"Bool.false\",\"Bool.true\",\"LexLeanCollections.Key\",\"LexLeanCollections.containsElement\",\"List.cons\",\"List.nil\",\"Ordering.eq\",\"Ordering.gt\",\"Ordering.lt\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.graphNodes\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Prod\",\"LexLeanCollections.Key\",\"LexLeanCollections.insertElement\",\"List.foldl\",\"List.nil\",\"Prod.fst\",\"Prod.snd\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]}}}},\"parameters\":[{\"id\":\"_uniq.19\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"borrow\":false},{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]}]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.36\",\"parameters\":[{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"borrow\":false},{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.31\",\"parameters\":[{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"borrow\":false},{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.insertElement\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.30\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.25\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.insertElement\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.25\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.foldl\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.35\"}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.foldl\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.38\"}}}}},\"uses\":[\"List\",\"Prod\",\"LexLeanCollections.Key\",\"LexLeanCollections.insertElement\",\"List.foldl\",\"List.nil\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.graphReachable\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Prod\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"HAdd.hAdd\",\"LexLeanCollections.Key\",\"LexLeanCollections.graphNodes\",\"LexLeanCollections.reachableFrom\",\"List.cons\",\"List.length\",\"List.nil\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}},\"parameters\":[{\"id\":\"_uniq.19\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"borrow\":false},{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]}]}]},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.24\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.graphNodes\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"List.lengthTR\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.29\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.25\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.reachableFrom\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.34\"}}}}}}}}}}}}}},\"uses\":[\"Add\",\"HAdd\",\"List\",\"Nat\",\"OfNat\",\"Prod\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"LexLeanCollections.Key\",\"LexLeanCollections.graphNodes\",\"LexLeanCollections.reachableFrom\",\"List.cons\",\"List.lengthTR\",\"List.nil\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.graphSuccessors\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Prod\",\"LexLeanCollections.Key\",\"LexLeanCollections.lookupEntry\",\"List.nil\",\"Option.getD\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}},\"parameters\":[{\"id\":\"_uniq.40\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"borrow\":false},{\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]}]}]},\"borrow\":false},{\"id\":\"_uniq.43\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.40\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.50\",\"parameters\":[{\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.49\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.50\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.57\",\"parameters\":[{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.56\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.57\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.lookupEntry\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"discriminant\":\"_uniq.66\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.58\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.68\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.69\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.51\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.69\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.70\"}}}]}}}}}}},\"uses\":[\"List\",\"Option\",\"PUnit\",\"Prod\",\"LexLeanCollections.Key\",\"LexLeanCollections.lookupEntry\",\"List.nil\",\"Option.none\",\"Option.some\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.graphTopological\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Prod\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"HAdd.hAdd\",\"LexLeanCollections.Key\",\"LexLeanCollections.graphNodes\",\"LexLeanCollections.topological\",\"List.length\",\"List.nil\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]}]}}}},\"parameters\":[{\"id\":\"_uniq.18\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"borrow\":false},{\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]}]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.graphNodes\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.22\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.25\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"List.lengthTR\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.29\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.26\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.topological\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.33\"}}}}}}}}}}}}}},\"uses\":[\"Add\",\"HAdd\",\"List\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"LexLeanCollections.Key\",\"LexLeanCollections.graphNodes\",\"LexLeanCollections.topological\",\"List.lengthTR\",\"List.nil\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.insertElement\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"LexLeanCollections.Key\",\"List.brecOn\",\"LexLeanCollections.insertElement._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}},\"parameters\":[{\"id\":\"_uniq.62\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"borrow\":false},{\"id\":\"_uniq.64\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},\"borrow\":false},{\"id\":\"_uniq.65\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.74\",\"parameters\":[{\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.72\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.73\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.74\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.123\",\"parameters\":[{\"id\":\"_uniq.87\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},\"borrow\":false},{\"id\":\"_uniq.88\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.96\",\"parameters\":[{\"id\":\"_uniq.93\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"},{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.94\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.95\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.96\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.101\",\"parameters\":[{\"id\":\"_uniq.99\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"},{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.100\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.101\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.107\",\"parameters\":[{\"id\":\"_uniq.104\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.insertElement\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"},{\"kind\":\"fvar\",\"id\":\"_uniq.105\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.106\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.107\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanCollections.Key\",\"index\":0,\"value\":\"_uniq.63\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.114\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Ordering\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"discriminant\":\"_uniq.115\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Ordering.lt\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.97\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.116\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.117\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Ordering.eq\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.118\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.102\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.118\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.119\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Ordering.gt\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.120\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.121\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.108\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.120\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.121\"}}}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.124\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.123\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"discriminant\":\"_uniq.65\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.75\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.133\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.134\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.135\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},\"borrow\":false},{\"id\":\"_uniq.136\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.137\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.124\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.135\"},{\"kind\":\"fvar\",\"id\":\"_uniq.136\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.137\"}}}]}}}}}},\"uses\":[\"List\",\"Ordering\",\"PUnit\",\"LexLeanCollections.Key\",\"LexLeanCollections.insertElement\",\"List.cons\",\"List.nil\",\"Ordering.eq\",\"Ordering.gt\",\"Ordering.lt\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.insertEntry\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Prod\",\"LexLeanCollections.Key\",\"List.brecOn\",\"LexLeanCollections.insertEntry._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":4},{\"kind\":\"bvar\",\"index\":3}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":5},{\"kind\":\"bvar\",\"index\":4}]}]}}}}}}},\"parameters\":[{\"id\":\"_uniq.80\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.81\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.82\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}]},\"borrow\":false},{\"id\":\"_uniq.83\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},\"borrow\":false},{\"id\":\"_uniq.84\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.81\"},\"borrow\":false},{\"id\":\"_uniq.85\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.95\",\"parameters\":[{\"id\":\"_uniq.91\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.92\"},{\"kind\":\"fvar\",\"id\":\"_uniq.93\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.94\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.95\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.153\",\"parameters\":[{\"id\":\"_uniq.112\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},\"borrow\":false},{\"id\":\"_uniq.113\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.81\"},\"borrow\":false},{\"id\":\"_uniq.114\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.81\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]}}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.124\",\"parameters\":[{\"id\":\"_uniq.119\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.120\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.121\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.112\"},{\"kind\":\"fvar\",\"id\":\"_uniq.113\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.121\"},{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.120\"},{\"kind\":\"fvar\",\"id\":\"_uniq.122\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.123\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.124\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.130\",\"parameters\":[{\"id\":\"_uniq.127\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.128\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.129\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.128\"},{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.129\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.131\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.130\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.137\",\"parameters\":[{\"id\":\"_uniq.133\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.112\"},{\"kind\":\"fvar\",\"id\":\"_uniq.113\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.135\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.insertEntry\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.82\"},{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.134\"},{\"kind\":\"fvar\",\"id\":\"_uniq.135\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.136\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.138\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.137\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.144\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanCollections.Key\",\"index\":0,\"value\":\"_uniq.82\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.145\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.144\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.112\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Ordering\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]},\"discriminant\":\"_uniq.145\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Ordering.lt\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.146\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.147\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.125\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.146\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.147\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Ordering.eq\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.148\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.149\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.131\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.148\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.149\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Ordering.gt\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.150\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.151\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.138\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.150\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.151\"}}}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.154\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.81\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]}}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.153\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]},\"discriminant\":\"_uniq.85\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.163\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.164\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.96\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.163\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.164\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.165\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]},\"borrow\":false},{\"id\":\"_uniq.166\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]},\"borrow\":false}],\"code\":{\"kind\":\"cases\",\"type_name\":\"Prod\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]},\"discriminant\":\"_uniq.165\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Prod.mk\",\"parameters\":[{\"id\":\"_uniq.176\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},\"borrow\":false},{\"id\":\"_uniq.177\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.81\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.178\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.154\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.176\"},{\"kind\":\"fvar\",\"id\":\"_uniq.177\"},{\"kind\":\"fvar\",\"id\":\"_uniq.166\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.178\"}}}]}}]}}}}}},\"uses\":[\"List\",\"Ordering\",\"PUnit\",\"Prod\",\"LexLeanCollections.Key\",\"LexLeanCollections.insertEntry\",\"List.cons\",\"List.nil\",\"Ordering.eq\",\"Ordering.gt\",\"Ordering.lt\",\"Prod.mk\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.instKeyBool\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"instOrdBool\",\"Ord.compare\",\"LexLeanCollections.Key.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.1\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Ord\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instOrdBool\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.2\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Ord\",\"index\":0,\"value\":\"_uniq.1\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.3\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.2\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.3\"}}}}},\"uses\":[\"Bool\",\"Ord\",\"Ordering\",\"instOrdBool\",\"LexLeanCollections.Key\",\"LexLeanCollections.Key.mk\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.instKeyInt\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"instOrdInt\",\"Ord.compare\",\"LexLeanCollections.Key.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.1\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Ord\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instOrdInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.2\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Ord\",\"index\":0,\"value\":\"_uniq.1\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.3\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.2\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.3\"}}}}},\"uses\":[\"Int\",\"Ord\",\"Ordering\",\"instOrdInt\",\"LexLeanCollections.Key\",\"LexLeanCollections.Key.mk\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.instKeyInt8\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"Int8\",\"instOrdInt\",\"Int8.toInt\",\"Ord.compare\",\"LexLeanCollections.Key.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.12\",\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Ord\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instOrdInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Ord\",\"index\":0,\"value\":\"_uniq.7\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int8.toInt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int8.toInt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.8\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.11\"}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.13\"}}}},\"uses\":[\"Int\",\"Int8\",\"Ord\",\"Ordering\",\"instOrdInt\",\"Int8.toInt\",\"LexLeanCollections.Key\",\"LexLeanCollections.Key.mk\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.instKeyNat\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOrdNat\",\"Ord.compare\",\"LexLeanCollections.Key.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.1\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Ord\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instOrdNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Ord\",\"index\":0,\"value\":\"_uniq.1\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.11\"}}}}},\"uses\":[\"Nat\",\"Ord\",\"Ordering\",\"instOrdNat\",\"LexLeanCollections.Key\",\"LexLeanCollections.Key.mk\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.instKeyProd\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Ordering\",\"Prod\",\"Unit\",\"LexLeanCollections.Key\",\"Prod.fst\",\"Prod.snd\",\"LexLeanCollections.Key.compare\",\"LexLeanCollections.Key.mk\",\"LexLeanCollections.compareCodes.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3},{\"kind\":\"bvar\",\"index\":2}]}]}}}}},\"parameters\":[{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"borrow\":false},{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.82\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"borrow\":false},{\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.56\",\"parameters\":[{\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanCollections.Key\",\"index\":0,\"value\":\"_uniq.37\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.44\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.45\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.52\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.55\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.62\",\"parameters\":[{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.61\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.62\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanCollections.Key\",\"index\":0,\"value\":\"_uniq.36\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.44\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.45\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.69\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.70\"},{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Ordering\",\"result_type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"discriminant\":\"_uniq.72\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Ordering.eq\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.57\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.74\"}}}},{\"kind\":\"default\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.79\",\"parameters\":[{\"id\":\"_uniq.77\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.63\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.72\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.78\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.79\",\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"any\"}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.80\"}}}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.82\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.83\"}}}},\"uses\":[\"Ordering\",\"PUnit\",\"Prod\",\"LexLeanCollections.Key\",\"Ordering.eq\",\"Unit.unit\",\"LexLeanCollections.Key.mk\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.instKeyString\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"String\",\"LexLeanCollections.compareCodes\",\"String.toList\",\"LexLeanCollections.Key.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.10\",\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"String.toList\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Char\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"String.toList\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.compareCodes\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.9\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.15\"}}}},\"uses\":[\"Char\",\"List\",\"Ordering\",\"String\",\"LexLeanCollections.Key\",\"LexLeanCollections.compareCodes\",\"String.toList\",\"LexLeanCollections.Key.mk\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.instKeyUInt64\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"UInt64\",\"instOrdNat\",\"Ord.compare\",\"UInt64.toNat\",\"LexLeanCollections.Key.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.12\",\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Ord\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instOrdNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Ord\",\"index\":0,\"value\":\"_uniq.7\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.8\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.11\"}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.13\"}}}},\"uses\":[\"Nat\",\"Ord\",\"Ordering\",\"UInt64\",\"instOrdNat\",\"LexLeanCollections.Key\",\"UInt64.toNat\",\"LexLeanCollections.Key.mk\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.iterate\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Nat.brecOn\",\"LexLeanCollections.iterate._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"bvar\",\"index\":1}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}},\"parameters\":[{\"id\":\"_uniq.67\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.67\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}},\"borrow\":false},{\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.72\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.67\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.78\",\"parameters\":[{\"id\":\"_uniq.77\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.67\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.67\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.77\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.67\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.78\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.92\",\"parameters\":[{\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.89\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.67\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.67\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.67\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.70\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.89\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.67\"},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterate\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.70\"},{\"kind\":\"fvar\",\"id\":\"_uniq.88\"},{\"kind\":\"fvar\",\"id\":\"_uniq.90\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.91\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.67\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.92\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Nat\",\"result_type\":{\"kind\":\"fvar\",\"id\":\"_uniq.67\"},\"discriminant\":\"_uniq.71\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Nat.zero\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.67\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.79\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.72\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.99\"}}},{\"kind\":\"constructor\",\"constructor\":\"Nat.succ\",\"parameters\":[{\"id\":\"_uniq.100\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.67\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.93\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.100\"},{\"kind\":\"fvar\",\"id\":\"_uniq.72\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.101\"}}}]}}}}}},\"uses\":[\"Nat\",\"LexLeanCollections.iterate\",\"Nat.succ\",\"Nat.zero\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.iterateUntil\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Nat\",\"Option\",\"Prod\",\"Nat.brecOn\",\"LexLeanCollections.iterateUntil._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}}}}},\"parameters\":[{\"id\":\"_uniq.65\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.68\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]}},\"borrow\":false},{\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.79\",\"parameters\":[{\"id\":\"_uniq.76\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"},{\"kind\":\"fvar\",\"id\":\"_uniq.77\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.78\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.79\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.121\",\"parameters\":[{\"id\":\"_uniq.91\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.92\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.101\",\"parameters\":[{\"id\":\"_uniq.98\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.92\"},{\"kind\":\"fvar\",\"id\":\"_uniq.99\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.100\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.101\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.106\",\"parameters\":[{\"id\":\"_uniq.104\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.68\"},{\"kind\":\"fvar\",\"id\":\"_uniq.91\"},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.105\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.106\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.68\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"discriminant\":\"_uniq.115\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.102\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.116\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.117\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.118\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.107\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.118\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.119\"}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.121\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Nat\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"discriminant\":\"_uniq.69\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Nat.zero\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.128\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.80\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.128\"}}},{\"kind\":\"constructor\",\"constructor\":\"Nat.succ\",\"parameters\":[{\"id\":\"_uniq.129\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.130\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.122\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.129\"},{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.130\"}}}]}}}}}},\"uses\":[\"Bool\",\"Nat\",\"Option\",\"PUnit\",\"Prod\",\"Bool.false\",\"Bool.true\",\"LexLeanCollections.iterateUntil\",\"Nat.succ\",\"Nat.zero\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.listFold\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"List.foldl\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":2}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}}},\"parameters\":[{\"id\":\"_uniq.53\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}}},\"borrow\":false},{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},\"borrow\":false},{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},\"value\":{\"kind\":\"const\",\"name\":\"List.foldl\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.64\"}}},\"uses\":[\"List\",\"List.foldl\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.lookupEntry\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Option\",\"Prod\",\"LexLeanCollections.Key\",\"List.brecOn\",\"LexLeanCollections.lookupEntry._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3},{\"kind\":\"bvar\",\"index\":2}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}}},\"parameters\":[{\"id\":\"_uniq.73\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.74\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"borrow\":false},{\"id\":\"_uniq.76\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},\"borrow\":false},{\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.85\",\"parameters\":[{\"id\":\"_uniq.83\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.84\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.85\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.134\",\"parameters\":[{\"id\":\"_uniq.102\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},\"borrow\":false},{\"id\":\"_uniq.103\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.74\"},\"borrow\":false},{\"id\":\"_uniq.104\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.74\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]}}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.85\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.113\",\"parameters\":[{\"id\":\"_uniq.111\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.112\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.113\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.118\",\"parameters\":[{\"id\":\"_uniq.116\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.lookupEntry\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.117\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.118\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanCollections.Key\",\"index\":0,\"value\":\"_uniq.75\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.125\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.76\"},{\"kind\":\"fvar\",\"id\":\"_uniq.102\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Ordering\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"discriminant\":\"_uniq.126\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Ordering.lt\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.127\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.128\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.109\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.127\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.128\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Ordering.eq\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.129\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.130\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.114\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.129\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.130\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Ordering.gt\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.131\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.132\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.119\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.131\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.132\"}}}}]}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.135\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.74\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]}}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.134\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"discriminant\":\"_uniq.77\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.144\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.145\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.86\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.144\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.145\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.146\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"borrow\":false},{\"id\":\"_uniq.147\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]}]},\"borrow\":false}],\"code\":{\"kind\":\"cases\",\"type_name\":\"Prod\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"discriminant\":\"_uniq.146\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Prod.mk\",\"parameters\":[{\"id\":\"_uniq.157\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},\"borrow\":false},{\"id\":\"_uniq.158\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.74\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.159\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.135\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.157\"},{\"kind\":\"fvar\",\"id\":\"_uniq.158\"},{\"kind\":\"fvar\",\"id\":\"_uniq.147\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.159\"}}}]}}]}}}}}},\"uses\":[\"List\",\"Option\",\"Ordering\",\"PUnit\",\"Prod\",\"LexLeanCollections.Key\",\"LexLeanCollections.lookupEntry\",\"List.cons\",\"List.nil\",\"Option.none\",\"Option.some\",\"Ordering.eq\",\"Ordering.gt\",\"Ordering.lt\",\"Prod.mk\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.mapContains\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Prod\",\"LexLeanCollections.Key\",\"LexLeanCollections.lookupEntry\",\"Option.isSome\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2},{\"kind\":\"bvar\",\"index\":1}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":3},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}}}}},\"parameters\":[{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"borrow\":false},{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]}]},\"borrow\":false},{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.lookupEntry\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Option.isSome\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.30\"}}}},\"uses\":[\"Bool\",\"List\",\"Option\",\"Prod\",\"LexLeanCollections.Key\",\"LexLeanCollections.lookupEntry\",\"Option.isSome\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.mapEntries\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Prod\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1},{\"kind\":\"bvar\",\"index\":0}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2},{\"kind\":\"bvar\",\"index\":1}]}]}}}},\"parameters\":[{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.18\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"return\",\"id\":\"_uniq.18\"}},\"uses\":[\"List\",\"Prod\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.mapFold\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Prod\",\"List.foldl\",\"Prod.fst\",\"Prod.snd\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":3},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":3},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":4},{\"kind\":\"bvar\",\"index\":3}]}]},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}}}},\"parameters\":[{\"id\":\"_uniq.69\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.71\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.78\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.71\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.69\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.70\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}}}},\"borrow\":false},{\"id\":\"_uniq.79\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.71\"},\"borrow\":false},{\"id\":\"_uniq.80\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.69\"},{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.93\",\"parameters\":[{\"id\":\"_uniq.85\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.71\"},\"borrow\":false},{\"id\":\"_uniq.86\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.69\"},{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.71\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.69\"},{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.69\"},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.86\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.70\"},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.86\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.71\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.78\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.85\"},{\"kind\":\"fvar\",\"id\":\"_uniq.90\"},{\"kind\":\"fvar\",\"id\":\"_uniq.91\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.92\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.71\"},\"value\":{\"kind\":\"const\",\"name\":\"List.foldl\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.69\"},{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.93\"},{\"kind\":\"fvar\",\"id\":\"_uniq.79\"},{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.94\"}}}},\"uses\":[\"List\",\"Prod\",\"List.foldl\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.mapInsert\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Prod\",\"LexLeanCollections.Key\",\"LexLeanCollections.insertEntry\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2},{\"kind\":\"bvar\",\"index\":1}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":3},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":3},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":5},{\"kind\":\"bvar\",\"index\":4}]}]}}}}}}},\"parameters\":[{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"borrow\":false},{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]}]},\"borrow\":false},{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},\"borrow\":false},{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.insertEntry\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.34\"}}},\"uses\":[\"List\",\"Prod\",\"LexLeanCollections.Key\",\"LexLeanCollections.insertEntry\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.mapKeys\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Prod\",\"List.map\",\"Prod.fst\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1},{\"kind\":\"bvar\",\"index\":0}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]}}}},\"parameters\":[{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.18\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.23\",\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.21\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.22\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.mapTR\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.24\"}}}},\"uses\":[\"List\",\"Prod\",\"List.mapTR\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.mapLookup\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Prod\",\"LexLeanCollections.Key\",\"LexLeanCollections.lookupEntry\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2},{\"kind\":\"bvar\",\"index\":1}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":3},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}}},\"parameters\":[{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"borrow\":false},{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]}]},\"borrow\":false},{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.lookupEntry\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.29\"}}},\"uses\":[\"List\",\"Option\",\"Prod\",\"LexLeanCollections.Key\",\"LexLeanCollections.lookupEntry\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.mapRemove\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Prod\",\"LexLeanCollections.Key\",\"LexLeanCollections.removeEntry\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2},{\"kind\":\"bvar\",\"index\":1}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":3},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":4},{\"kind\":\"bvar\",\"index\":3}]}]}}}}}},\"parameters\":[{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"borrow\":false},{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]}]},\"borrow\":false},{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.removeEntry\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.29\"}}},\"uses\":[\"List\",\"Prod\",\"LexLeanCollections.Key\",\"LexLeanCollections.removeEntry\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.mapSize\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Prod\",\"List.length\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1},{\"kind\":\"bvar\",\"index\":0}]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}}},\"parameters\":[{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.18\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"List.lengthTR\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.19\"}}},\"uses\":[\"List\",\"Nat\",\"Prod\",\"List.lengthTR\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.mapValues\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Prod\",\"List.map\",\"Prod.snd\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1},{\"kind\":\"bvar\",\"index\":0}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}}}},\"parameters\":[{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.18\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.23\",\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.21\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.22\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.mapTR\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.24\"}}}},\"uses\":[\"List\",\"Prod\",\"List.mapTR\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.reachableFrom\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Prod\",\"LexLeanCollections.Key\",\"Nat.brecOn\",\"LexLeanCollections.reachableFrom._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":4}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":5}]}}}}}}},\"parameters\":[{\"id\":\"_uniq.103\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.104\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"borrow\":false},{\"id\":\"_uniq.105\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]}]}]},\"borrow\":false},{\"id\":\"_uniq.106\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.107\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"borrow\":false},{\"id\":\"_uniq.108\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.119\",\"parameters\":[{\"id\":\"_uniq.117\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"borrow\":false},{\"id\":\"_uniq.118\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]}}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.118\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.120\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.119\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.238\",\"parameters\":[{\"id\":\"_uniq.136\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.137\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"borrow\":false},{\"id\":\"_uniq.138\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]}}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.198\",\"parameters\":[{\"id\":\"_uniq.144\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"borrow\":false},{\"id\":\"_uniq.145\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.103\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.103\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.195\",\"parameters\":[{\"id\":\"_uniq.148\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"borrow\":false},{\"id\":\"_uniq.149\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.103\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.103\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.165\",\"parameters\":[{\"id\":\"_uniq.163\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.164\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.164\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.166\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.165\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.170\",\"parameters\":[{\"id\":\"_uniq.168\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.169\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.containsElement\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"},{\"kind\":\"fvar\",\"id\":\"_uniq.149\"},{\"kind\":\"fvar\",\"id\":\"_uniq.148\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.169\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.171\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.170\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.176\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.containsElement\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"},{\"kind\":\"fvar\",\"id\":\"_uniq.149\"},{\"kind\":\"fvar\",\"id\":\"_uniq.138\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.188\",\"parameters\":[{\"id\":\"_uniq.181\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.182\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.183\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.181\"},{\"kind\":\"fvar\",\"id\":\"_uniq.182\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"discriminant\":\"_uniq.183\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.184\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.185\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.insertElement\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"},{\"kind\":\"fvar\",\"id\":\"_uniq.149\"},{\"kind\":\"fvar\",\"id\":\"_uniq.148\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.185\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.186\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.148\"}}]}}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.191\",\"parameters\":[{\"id\":\"_uniq.189\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.190\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.171\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.189\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.188\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.190\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.194\",\"parameters\":[{\"id\":\"_uniq.192\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.193\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.166\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.192\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.188\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.193\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"discriminant\":\"_uniq.176\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.177\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.191\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.177\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.179\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.194\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.179\"}]}}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.196\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.graphSuccessors\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"},{\"kind\":\"fvar\",\"id\":\"_uniq.105\"},{\"kind\":\"fvar\",\"id\":\"_uniq.145\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.197\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.foldl\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.195\"},{\"kind\":\"fvar\",\"id\":\"_uniq.144\"},{\"kind\":\"fvar\",\"id\":\"_uniq.196\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.197\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.199\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.200\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.foldl\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.198\"},{\"kind\":\"fvar\",\"id\":\"_uniq.199\"},{\"kind\":\"fvar\",\"id\":\"_uniq.137\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.201\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.200\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.206\",\"parameters\":[{\"id\":\"_uniq.205\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.138\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.207\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.206\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.220\",\"parameters\":[{\"id\":\"_uniq.211\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.217\",\"parameters\":[{\"id\":\"_uniq.214\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"borrow\":false},{\"id\":\"_uniq.215\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.103\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.103\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.216\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.insertElement\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"},{\"kind\":\"fvar\",\"id\":\"_uniq.215\"},{\"kind\":\"fvar\",\"id\":\"_uniq.214\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.216\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.218\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.foldl\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.217\"},{\"kind\":\"fvar\",\"id\":\"_uniq.138\"},{\"kind\":\"fvar\",\"id\":\"_uniq.201\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.219\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.reachableFrom\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"},{\"kind\":\"fvar\",\"id\":\"_uniq.105\"},{\"kind\":\"fvar\",\"id\":\"_uniq.136\"},{\"kind\":\"fvar\",\"id\":\"_uniq.201\"},{\"kind\":\"fvar\",\"id\":\"_uniq.218\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.219\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.221\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.220\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"discriminant\":\"_uniq.201\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.229\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.230\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.207\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.229\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.230\"}}}},{\"kind\":\"default\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.235\",\"parameters\":[{\"id\":\"_uniq.233\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.234\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.221\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.201\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.234\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.236\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.235\",\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"any\"}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.236\"}}}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.239\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]}}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.238\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Nat\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"discriminant\":\"_uniq.106\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Nat.zero\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.245\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.120\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.107\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.245\"}}},{\"kind\":\"constructor\",\"constructor\":\"Nat.succ\",\"parameters\":[{\"id\":\"_uniq.246\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.247\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.239\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.246\"},{\"kind\":\"fvar\",\"id\":\"_uniq.107\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.247\"}}}]}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"List\",\"Nat\",\"PUnit\",\"Prod\",\"instDecidableEqBool\",\"Bool.false\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanCollections.Key\",\"LexLeanCollections.containsElement\",\"LexLeanCollections.graphSuccessors\",\"LexLeanCollections.insertElement\",\"LexLeanCollections.reachableFrom\",\"List.foldl\",\"List.nil\",\"Nat.succ\",\"Nat.zero\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.removeElement\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"LexLeanCollections.Key\",\"List.brecOn\",\"LexLeanCollections.removeElement._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}},\"parameters\":[{\"id\":\"_uniq.62\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"borrow\":false},{\"id\":\"_uniq.64\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},\"borrow\":false},{\"id\":\"_uniq.65\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.73\",\"parameters\":[{\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.72\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.73\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.120\",\"parameters\":[{\"id\":\"_uniq.86\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},\"borrow\":false},{\"id\":\"_uniq.87\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.94\",\"parameters\":[{\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.86\"},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.93\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.94\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.98\",\"parameters\":[{\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.87\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.98\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.104\",\"parameters\":[{\"id\":\"_uniq.101\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.removeElement\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.86\"},{\"kind\":\"fvar\",\"id\":\"_uniq.102\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.103\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.104\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.111\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanCollections.Key\",\"index\":0,\"value\":\"_uniq.63\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.111\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.86\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Ordering\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"discriminant\":\"_uniq.112\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Ordering.lt\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.113\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.95\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.113\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.114\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Ordering.eq\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.99\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.115\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.116\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Ordering.gt\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.118\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.105\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.117\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.118\"}}}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.121\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.120\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"discriminant\":\"_uniq.65\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.130\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.131\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.74\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.130\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.131\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.132\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},\"borrow\":false},{\"id\":\"_uniq.133\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.121\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.132\"},{\"kind\":\"fvar\",\"id\":\"_uniq.133\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.134\"}}}]}}}}}},\"uses\":[\"List\",\"Ordering\",\"PUnit\",\"LexLeanCollections.Key\",\"LexLeanCollections.removeElement\",\"List.cons\",\"List.nil\",\"Ordering.eq\",\"Ordering.gt\",\"Ordering.lt\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.removeEntry\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Prod\",\"LexLeanCollections.Key\",\"List.brecOn\",\"LexLeanCollections.removeEntry._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3},{\"kind\":\"bvar\",\"index\":2}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":4},{\"kind\":\"bvar\",\"index\":3}]}]}}}}}},\"parameters\":[{\"id\":\"_uniq.75\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.76\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"}]},\"borrow\":false},{\"id\":\"_uniq.78\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},\"borrow\":false},{\"id\":\"_uniq.79\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.87\",\"parameters\":[{\"id\":\"_uniq.85\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.86\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.87\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.141\",\"parameters\":[{\"id\":\"_uniq.104\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},\"borrow\":false},{\"id\":\"_uniq.105\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.76\"},\"borrow\":false},{\"id\":\"_uniq.106\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.76\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]}}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.114\",\"parameters\":[{\"id\":\"_uniq.111\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.75\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"},{\"kind\":\"fvar\",\"id\":\"_uniq.105\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.113\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.112\"},{\"kind\":\"fvar\",\"id\":\"_uniq.106\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.113\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.114\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.118\",\"parameters\":[{\"id\":\"_uniq.117\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.106\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.118\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.125\",\"parameters\":[{\"id\":\"_uniq.121\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.75\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"},{\"kind\":\"fvar\",\"id\":\"_uniq.105\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.removeEntry\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.75\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.77\"},{\"kind\":\"fvar\",\"id\":\"_uniq.78\"},{\"kind\":\"fvar\",\"id\":\"_uniq.106\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.124\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.122\"},{\"kind\":\"fvar\",\"id\":\"_uniq.123\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.124\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.125\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.132\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanCollections.Key\",\"index\":0,\"value\":\"_uniq.77\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.132\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.78\"},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Ordering\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]},\"discriminant\":\"_uniq.133\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Ordering.lt\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.135\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.115\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.134\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.135\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Ordering.eq\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.137\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.119\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.136\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.137\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Ordering.gt\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.138\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.139\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.126\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.138\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.139\"}}}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.142\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.76\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]}}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.141\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]},\"discriminant\":\"_uniq.79\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.151\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.152\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.88\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.151\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.152\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.153\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"borrow\":false},{\"id\":\"_uniq.154\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]},\"borrow\":false}],\"code\":{\"kind\":\"cases\",\"type_name\":\"Prod\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]},\"discriminant\":\"_uniq.153\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Prod.mk\",\"parameters\":[{\"id\":\"_uniq.164\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},\"borrow\":false},{\"id\":\"_uniq.165\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.76\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.166\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.142\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.164\"},{\"kind\":\"fvar\",\"id\":\"_uniq.165\"},{\"kind\":\"fvar\",\"id\":\"_uniq.154\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.166\"}}}]}}]}}}}}},\"uses\":[\"List\",\"Ordering\",\"PUnit\",\"Prod\",\"LexLeanCollections.Key\",\"LexLeanCollections.removeEntry\",\"List.cons\",\"List.nil\",\"Ordering.eq\",\"Ordering.gt\",\"Ordering.lt\",\"Prod.mk\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.setContains\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"LexLeanCollections.Key\",\"LexLeanCollections.containsElement\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}}}},\"parameters\":[{\"id\":\"_uniq.19\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"borrow\":false},{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.containsElement\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.23\"}}},\"uses\":[\"Bool\",\"List\",\"LexLeanCollections.Key\",\"LexLeanCollections.containsElement\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.setDifference\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Bool.not\",\"LexLeanCollections.Key\",\"LexLeanCollections.containsElement\",\"List.filter\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}},\"parameters\":[{\"id\":\"_uniq.20\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"borrow\":false},{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.28\",\"parameters\":[{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.containsElement\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.not\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.27\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.filterTR\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.29\"}}}},\"uses\":[\"Bool\",\"List\",\"Bool.not\",\"LexLeanCollections.Key\",\"LexLeanCollections.containsElement\",\"List.filterTR\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.setElements\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"return\",\"id\":\"_uniq.12\"}},\"uses\":[\"List\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.setFold\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"List.foldl\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":2}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}}},\"parameters\":[{\"id\":\"_uniq.53\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}}},\"borrow\":false},{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},\"borrow\":false},{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},\"value\":{\"kind\":\"const\",\"name\":\"List.foldl\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.64\"}}},\"uses\":[\"List\",\"List.foldl\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.setInsert\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"LexLeanCollections.Key\",\"LexLeanCollections.insertElement\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}},\"parameters\":[{\"id\":\"_uniq.19\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"borrow\":false},{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.insertElement\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.23\"}}},\"uses\":[\"List\",\"LexLeanCollections.Key\",\"LexLeanCollections.insertElement\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.setIntersection\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"LexLeanCollections.Key\",\"LexLeanCollections.containsElement\",\"List.filter\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}},\"parameters\":[{\"id\":\"_uniq.20\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"borrow\":false},{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.27\",\"parameters\":[{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.containsElement\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.26\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.filterTR\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.28\"}}}},\"uses\":[\"Bool\",\"List\",\"LexLeanCollections.Key\",\"LexLeanCollections.containsElement\",\"List.filterTR\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.setRemove\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"LexLeanCollections.Key\",\"LexLeanCollections.removeElement\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}},\"parameters\":[{\"id\":\"_uniq.19\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"borrow\":false},{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.removeElement\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.23\"}}},\"uses\":[\"List\",\"LexLeanCollections.Key\",\"LexLeanCollections.removeElement\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.setSize\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"List.length\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"List.lengthTR\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.13\"}}},\"uses\":[\"List\",\"Nat\",\"List.lengthTR\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.setUnion\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"LexLeanCollections.Key\",\"LexLeanCollections.insertElement\",\"List.foldl\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}},\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"borrow\":false},{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"borrow\":false},{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.30\",\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"borrow\":false},{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.insertElement\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.29\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.foldl\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}}}},\"uses\":[\"List\",\"LexLeanCollections.Key\",\"LexLeanCollections.insertElement\",\"List.foldl\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.topological\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Option\",\"Prod\",\"LexLeanCollections.Key\",\"Nat.brecOn\",\"LexLeanCollections.topological._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":4}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":5}]}]}}}}}}},\"parameters\":[{\"id\":\"_uniq.92\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.93\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"borrow\":false},{\"id\":\"_uniq.94\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}]}]},\"borrow\":false},{\"id\":\"_uniq.95\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.96\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"borrow\":false},{\"id\":\"_uniq.97\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.125\",\"parameters\":[{\"id\":\"_uniq.106\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"borrow\":false},{\"id\":\"_uniq.107\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"List.isEmpty\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.106\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.118\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.116\"},{\"kind\":\"fvar\",\"id\":\"_uniq.117\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}]},\"discriminant\":\"_uniq.118\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.119\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.120\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.120\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.121\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.reverse\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.107\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.122\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.123\"}}}}]}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.125\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.207\",\"parameters\":[{\"id\":\"_uniq.141\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.142\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"borrow\":false},{\"id\":\"_uniq.143\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}]}}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.167\",\"parameters\":[{\"id\":\"_uniq.149\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.158\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"List.isEmpty\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.142\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.159\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.160\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.158\"},{\"kind\":\"fvar\",\"id\":\"_uniq.159\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}]},\"discriminant\":\"_uniq.160\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.161\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.162\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.162\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.163\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.164\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.reverse\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.143\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.165\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.164\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.165\"}}}}]}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.168\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.167\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.180\",\"parameters\":[{\"id\":\"_uniq.175\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.92\"},\"borrow\":false},{\"id\":\"_uniq.176\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.92\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.177\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.removeElement\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.93\"},{\"kind\":\"fvar\",\"id\":\"_uniq.175\"},{\"kind\":\"fvar\",\"id\":\"_uniq.142\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.178\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.175\"},{\"kind\":\"fvar\",\"id\":\"_uniq.143\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.179\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.topological\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.93\"},{\"kind\":\"fvar\",\"id\":\"_uniq.94\"},{\"kind\":\"fvar\",\"id\":\"_uniq.141\"},{\"kind\":\"fvar\",\"id\":\"_uniq.177\"},{\"kind\":\"fvar\",\"id\":\"_uniq.178\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.179\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.181\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.92\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.180\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.199\",\"parameters\":[{\"id\":\"_uniq.191\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.92\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.92\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.197\",\"parameters\":[{\"id\":\"_uniq.193\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.92\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.92\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.194\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.graphSuccessors\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.93\"},{\"kind\":\"fvar\",\"id\":\"_uniq.94\"},{\"kind\":\"fvar\",\"id\":\"_uniq.193\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.195\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.containsElement\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.93\"},{\"kind\":\"fvar\",\"id\":\"_uniq.191\"},{\"kind\":\"fvar\",\"id\":\"_uniq.194\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.196\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.not\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.195\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.196\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.198\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"List.all\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.142\"},{\"kind\":\"fvar\",\"id\":\"_uniq.197\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.198\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.200\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.filterTR\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.199\"},{\"kind\":\"fvar\",\"id\":\"_uniq.142\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}]},\"discriminant\":\"_uniq.200\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.201\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.202\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.168\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.201\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.202\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.203\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.92\"},\"borrow\":false},{\"id\":\"_uniq.204\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.205\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.181\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.203\"},{\"kind\":\"fvar\",\"id\":\"_uniq.204\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.205\"}}}]}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.208\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}]}}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.207\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Nat\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}]},\"discriminant\":\"_uniq.95\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Nat.zero\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.214\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.126\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.96\"},{\"kind\":\"fvar\",\"id\":\"_uniq.97\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.214\"}}},{\"kind\":\"constructor\",\"constructor\":\"Nat.succ\",\"parameters\":[{\"id\":\"_uniq.215\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.216\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.208\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.215\"},{\"kind\":\"fvar\",\"id\":\"_uniq.96\"},{\"kind\":\"fvar\",\"id\":\"_uniq.97\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.216\"}}}]}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"List\",\"Nat\",\"Option\",\"PUnit\",\"Prod\",\"instDecidableEqBool\",\"Bool.not\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanCollections.Key\",\"LexLeanCollections.containsElement\",\"LexLeanCollections.graphSuccessors\",\"LexLeanCollections.removeElement\",\"LexLeanCollections.topological\",\"List.all\",\"List.cons\",\"List.filterTR\",\"List.isEmpty\",\"List.nil\",\"List.reverse\",\"Nat.succ\",\"Nat.zero\",\"Option.none\",\"Option.some\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.Appendable\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.Appendable.mk\",\"parameters\":1,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"bvar\",\"index\":2}}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}}}}]}},{\"name\":\"LexLeanRuntime.Decimal\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.Decimal.mk\",\"parameters\":1,\"fields\":2,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Decimal\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]}}}}}]}},{\"name\":\"LexLeanRuntime.Fixed\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.Fixed.mk\",\"parameters\":1,\"fields\":10,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"bvar\",\"index\":2}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":4},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":5},\"codomain\":{\"kind\":\"bvar\",\"index\":6}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":5},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":6},\"codomain\":{\"kind\":\"bvar\",\"index\":7}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":6},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":7},\"codomain\":{\"kind\":\"bvar\",\"index\":8}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":7},\"codomain\":{\"kind\":\"bvar\",\"index\":8}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":8},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":10}]}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":9},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":11}]}}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":10}]}}}}}}}}}}}}}]}},{\"name\":\"LexLeanRuntime.Indexable\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":2,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.Indexable.mk\",\"parameters\":2,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]}}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2},{\"kind\":\"bvar\",\"index\":1}]}}}}}]}},{\"name\":\"LexLeanRuntime.Lengthable\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.Lengthable.mk\",\"parameters\":1,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}}}}]}},{\"name\":\"LexLeanRuntime.Quotient\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.Quotient.mk\",\"parameters\":1,\"fields\":3,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"bvar\",\"index\":2}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}}}]}},{\"name\":\"LexLeanRuntime.Sliceable\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.Sliceable.mk\",\"parameters\":1,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}}}}]}},{\"name\":\"LexLeanRuntime.ToMathInt\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.ToMathInt.mk\",\"parameters\":1,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}}}}]}},{\"name\":\"LexLeanRuntime.append\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.Appendable.append\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}},\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"borrow\":false},{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"borrow\":false},{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Appendable\",\"index\":0,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.39\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.40\"}}}},\"uses\":[\"LexLeanRuntime.Appendable\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.bitAnd\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.Fixed.bitAnd\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}},\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"borrow\":false},{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"borrow\":false},{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":4,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.35\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.36\"}}}},\"uses\":[\"LexLeanRuntime.Fixed\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.bitNot\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.Fixed.bitNot\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"bvar\",\"index\":2}}}},\"parameters\":[{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"borrow\":false},{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":7,\"value\":\"_uniq.23\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.26\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.27\"}}}},\"uses\":[\"LexLeanRuntime.Fixed\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.bitOr\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.Fixed.bitOr\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}},\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"borrow\":false},{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"borrow\":false},{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":5,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.35\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.36\"}}}},\"uses\":[\"LexLeanRuntime.Fixed\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.bitXor\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.Fixed.bitXor\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}},\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"borrow\":false},{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"borrow\":false},{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":6,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.35\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.36\"}}}},\"uses\":[\"LexLeanRuntime.Fixed\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.checkedAdd\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"instHAdd\",\"HAdd.hAdd\",\"Int.instAdd\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.checkedFromInt\",\"LexLeanRuntime.Fixed.toToMathInt\",\"LexLeanRuntime.ToMathInt.toInt\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}},\"parameters\":[{\"id\":\"_uniq.19\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"borrow\":false},{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instAdd\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.24\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":0,\"value\":\"_uniq.20\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.ToMathInt\",\"index\":0,\"value\":\"_uniq.26\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.30\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.30\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.25\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedFromInt\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.34\"}}}}}}}}}}},\"uses\":[\"Add\",\"HAdd\",\"Int\",\"Option\",\"instHAdd\",\"Int.instAdd\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.ToMathInt\",\"LexLeanRuntime.checkedFromInt\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.checkedAddInt64\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Int64\",\"Option\",\"instAddInt64\",\"instDecidableEqBool\",\"instHAdd\",\"instLTInt64\",\"ite\",\"Bool.and\",\"Bool.or\",\"Bool.true\",\"Decidable.decide\",\"HAdd.hAdd\",\"Int64.decLt\",\"Int64.instOfNat\",\"LT.lt\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddInt64\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.54\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.55\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.73\",\"parameters\":[{\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.72\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.73\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.107\",\"parameters\":[{\"id\":\"_uniq.79\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.85\",\"parameters\":[{\"id\":\"_uniq.83\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.84\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.85\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.91\",\"parameters\":[{\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Decidable.decide\",\"levels\":[],\"arguments\":[{\"kind\":\"erased\"},{\"kind\":\"fvar\",\"id\":\"_uniq.89\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.90\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.91\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.97\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.98\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},{\"kind\":\"fvar\",\"id\":\"_uniq.99\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Decidable.decide\",\"levels\":[],\"arguments\":[{\"kind\":\"erased\"},{\"kind\":\"fvar\",\"id\":\"_uniq.100\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.101\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.86\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.102\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.103\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.92\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.104\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.105\"}}}}]}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.107\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.118\",\"parameters\":[{\"id\":\"_uniq.116\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.117\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.118\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.124\",\"parameters\":[{\"id\":\"_uniq.121\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Decidable.decide\",\"levels\":[],\"arguments\":[{\"kind\":\"erased\"},{\"kind\":\"fvar\",\"id\":\"_uniq.122\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.123\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.124\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.130\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.131\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.130\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.132\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.131\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.132\"},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Decidable.decide\",\"levels\":[],\"arguments\":[{\"kind\":\"erased\"},{\"kind\":\"fvar\",\"id\":\"_uniq.133\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.159\",\"parameters\":[{\"id\":\"_uniq.139\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},\"value\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.152\",\"parameters\":[{\"id\":\"_uniq.144\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.145\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.146\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.144\"},{\"kind\":\"fvar\",\"id\":\"_uniq.145\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"discriminant\":\"_uniq.146\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.147\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.148\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.148\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.149\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.150\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.150\"}}}]}}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.155\",\"parameters\":[{\"id\":\"_uniq.153\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.154\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.108\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.153\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.152\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.154\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.158\",\"parameters\":[{\"id\":\"_uniq.156\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.157\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.74\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.156\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.152\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.157\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"discriminant\":\"_uniq.139\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.140\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.155\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.140\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.142\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.158\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.142\"}]}}}]}}}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.165\",\"parameters\":[{\"id\":\"_uniq.163\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.164\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.125\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.163\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.159\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.164\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.162\",\"parameters\":[{\"id\":\"_uniq.160\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.161\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.119\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.160\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.159\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.161\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"discriminant\":\"_uniq.134\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.135\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.162\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.135\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.137\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.165\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.137\"}]}}}]}}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Add\",\"Bool\",\"Decidable\",\"HAdd\",\"Int64\",\"Nat\",\"OfNat\",\"Option\",\"PUnit\",\"instAddInt64\",\"instDecidableEqBool\",\"instHAdd\",\"Bool.false\",\"Bool.true\",\"Decidable.decide\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Int64.decLt\",\"Int64.instOfNat\",\"Option.none\",\"Option.some\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.checkedConvert\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.ToMathInt\",\"LexLeanRuntime.checkedFromInt\",\"LexLeanRuntime.ToMathInt.toInt\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":3},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}}},\"parameters\":[{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"borrow\":false},{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"borrow\":false},{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.ToMathInt\",\"index\":0,\"value\":\"_uniq.26\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.29\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedFromInt\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}}}}},\"uses\":[\"Int\",\"Option\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.ToMathInt\",\"LexLeanRuntime.checkedFromInt\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.checkedFromInt\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"Option\",\"ite\",\"Int.decLt\",\"Int.instLTInt\",\"LT.lt\",\"LexLeanRuntime.Fixed\",\"Option.none\",\"Option.some\",\"LexLeanRuntime.Fixed.fromInt\",\"LexLeanRuntime.Fixed.maximum\",\"LexLeanRuntime.Fixed.minimum\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]}}}},\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"borrow\":false},{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":2,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"discriminant\":\"_uniq.33\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":3,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.43\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"discriminant\":\"_uniq.44\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.45\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":1,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.47\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.49\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.50\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.51\"}}}]}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.53\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.54\"}}}]}}}},\"uses\":[\"Decidable\",\"Int\",\"Option\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Int.decLt\",\"LexLeanRuntime.Fixed\",\"Option.none\",\"Option.some\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.checkedMultiply\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"instHMul\",\"HMul.hMul\",\"Int.instMul\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.checkedFromInt\",\"LexLeanRuntime.Fixed.toToMathInt\",\"LexLeanRuntime.ToMathInt.toInt\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}},\"parameters\":[{\"id\":\"_uniq.19\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"borrow\":false},{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Mul\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instMul\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HMul\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHMul\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HMul\",\"index\":0,\"value\":\"_uniq.24\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":0,\"value\":\"_uniq.20\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.ToMathInt\",\"index\":0,\"value\":\"_uniq.26\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.27\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.27\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.25\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedFromInt\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}}}}}}}}}}},\"uses\":[\"HMul\",\"Int\",\"Mul\",\"Option\",\"instHMul\",\"Int.instMul\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.ToMathInt\",\"LexLeanRuntime.checkedFromInt\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.checkedMultiplyInt64\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Int64\",\"Nat\",\"Option\",\"UInt64\",\"Unit\",\"bne\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instLTInt64\",\"instOfNatNat\",\"Decidable.decide\",\"Int64.decLt\",\"Int64.instOfNat\",\"LT.lt\",\"LexLeanRuntime.magnitudeInt64\",\"LexLeanRuntime.multiplyMagnitudeInt64\",\"LexLeanRuntime.signedMagnitudeInt64\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"UInt64.instOfNat\",\"LexLeanRuntime.checkedMultiplyInt64.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.43\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Decidable.decide\",\"levels\":[],\"arguments\":[{\"kind\":\"erased\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Decidable.decide\",\"levels\":[],\"arguments\":[{\"kind\":\"erased\"},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"bne\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.49\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.56\",\"parameters\":[{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.55\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.64\",\"parameters\":[{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.signedMagnitudeInt64\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.63\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.64\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"64\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.74\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.magnitudeInt64\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.magnitudeInt64\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.78\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.multiplyMagnitudeInt64\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"},{\"kind\":\"fvar\",\"id\":\"_uniq.77\"},{\"kind\":\"fvar\",\"id\":\"_uniq.79\"},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"discriminant\":\"_uniq.80\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.57\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.82\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.83\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.84\"}}}]}}}}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"BEq\",\"Bool\",\"Decidable\",\"Int64\",\"Nat\",\"OfNat\",\"Option\",\"PUnit\",\"UInt64\",\"bne\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instOfNatNat\",\"Decidable.decide\",\"Int64.decLt\",\"Int64.instOfNat\",\"LexLeanRuntime.magnitudeInt64\",\"LexLeanRuntime.multiplyMagnitudeInt64\",\"LexLeanRuntime.signedMagnitudeInt64\",\"Option.none\",\"Option.some\",\"UInt64.instOfNat\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.checkedNegate\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"Int.instNegInt\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.checkedFromInt\",\"Neg.neg\",\"LexLeanRuntime.Fixed.toToMathInt\",\"LexLeanRuntime.ToMathInt.toInt\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]}}}},\"parameters\":[{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Neg\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instNegInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Neg\",\"index\":0,\"value\":\"_uniq.18\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":0,\"value\":\"_uniq.16\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.ToMathInt\",\"index\":0,\"value\":\"_uniq.20\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.21\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.19\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedFromInt\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.24\"}}}}}}}}},\"uses\":[\"Int\",\"Neg\",\"Option\",\"Int.instNegInt\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.ToMathInt\",\"LexLeanRuntime.checkedFromInt\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.checkedNegateInt64\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Int64\",\"Option\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instDecidableEqInt64\",\"ite\",\"BEq.beq\",\"Bool.true\",\"Int64.instNeg\",\"Int64.instOfNat\",\"Neg.neg\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqInt64\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"BEq\",\"index\":0,\"value\":\"_uniq.21\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Neg\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.instNeg\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Neg\",\"index\":0,\"value\":\"_uniq.23\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"9223372036854775808\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.26\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.24\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.22\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"discriminant\":\"_uniq.31\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.24\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.34\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.36\"}}}]}}}}}}}}}}}}}},\"uses\":[\"BEq\",\"Bool\",\"Decidable\",\"Int64\",\"Nat\",\"Neg\",\"OfNat\",\"Option\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instDecidableEqInt64\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Int64.instNeg\",\"Int64.instOfNat\",\"Option.none\",\"Option.some\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.checkedQuotient\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Eq\",\"Int\",\"Option\",\"instOfNat\",\"ite\",\"Int.instDecidableEq\",\"Int.tdiv\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.checkedFromInt\",\"OfNat.ofNat\",\"Option.none\",\"LexLeanRuntime.Fixed.toToMathInt\",\"LexLeanRuntime.ToMathInt.toInt\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}},\"parameters\":[{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"borrow\":false},{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},\"borrow\":false},{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":0,\"value\":\"_uniq.23\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.ToMathInt\",\"index\":0,\"value\":\"_uniq.34\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.35\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.38\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instDecidableEq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"discriminant\":\"_uniq.40\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.41\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.35\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int.tdiv\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedFromInt\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.44\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.45\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.46\"}}}]}}}}}}}}},\"uses\":[\"Decidable\",\"Int\",\"Nat\",\"OfNat\",\"Option\",\"instOfNat\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Int.instDecidableEq\",\"Int.tdiv\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.ToMathInt\",\"LexLeanRuntime.checkedFromInt\",\"Option.none\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.checkedQuotientInt64\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Int64\",\"Nat\",\"Option\",\"UInt64\",\"bne\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instDecidableEqInt64\",\"instLTInt64\",\"instOfNatNat\",\"ite\",\"BEq.beq\",\"Bool.and\",\"Bool.true\",\"Decidable.decide\",\"Int64.decLt\",\"Int64.instNeg\",\"Int64.instOfNat\",\"LT.lt\",\"LexLeanRuntime.divideMagnitudeInt64\",\"LexLeanRuntime.magnitudeInt64\",\"LexLeanRuntime.signedMagnitudeInt64\",\"Neg.neg\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"UInt64.instOfNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqInt64\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"BEq\",\"index\":0,\"value\":\"_uniq.44\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.46\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.47\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.45\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"discriminant\":\"_uniq.51\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.52\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.68\",\"parameters\":[{\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.67\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.68\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.79\",\"parameters\":[{\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Neg\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.instNeg\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Neg\",\"index\":0,\"value\":\"_uniq.72\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.75\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.73\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.45\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.77\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.78\"}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.79\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Neg\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.instNeg\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Neg\",\"index\":0,\"value\":\"_uniq.85\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"9223372036854775808\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.87\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.88\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.86\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.89\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.45\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.90\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.123\",\"parameters\":[{\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.96\"},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"discriminant\":\"_uniq.97\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.98\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.102\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Decidable.decide\",\"levels\":[],\"arguments\":[{\"kind\":\"erased\"},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Decidable.decide\",\"levels\":[],\"arguments\":[{\"kind\":\"erased\"},{\"kind\":\"fvar\",\"id\":\"_uniq.106\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"bne\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.103\"},{\"kind\":\"fvar\",\"id\":\"_uniq.105\"},{\"kind\":\"fvar\",\"id\":\"_uniq.107\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.108\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.110\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"64\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.111\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.110\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.111\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.113\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.magnitudeInt64\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.magnitudeInt64\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.46\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.115\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.divideMagnitudeInt64\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.112\"},{\"kind\":\"fvar\",\"id\":\"_uniq.113\"},{\"kind\":\"fvar\",\"id\":\"_uniq.114\"},{\"kind\":\"fvar\",\"id\":\"_uniq.116\"},{\"kind\":\"fvar\",\"id\":\"_uniq.116\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.118\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.signedMagnitudeInt64\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.109\"},{\"kind\":\"fvar\",\"id\":\"_uniq.117\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.118\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.119\"}}}}}}}}}}}}}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.120\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.121\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.121\"}}}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.126\",\"parameters\":[{\"id\":\"_uniq.124\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.69\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.124\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.123\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.125\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.129\",\"parameters\":[{\"id\":\"_uniq.127\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.128\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.80\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.127\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.123\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.128\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"discriminant\":\"_uniq.91\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.126\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.129\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.94\"}]}}}]}}}}}}}}}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.130\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.131\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.131\"}}}]}}}}}}}}}}},\"uses\":[\"BEq\",\"Bool\",\"Decidable\",\"Int64\",\"Nat\",\"Neg\",\"OfNat\",\"Option\",\"PUnit\",\"UInt64\",\"bne\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instDecidableEqInt64\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Decidable.decide\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Int64.decLt\",\"Int64.instNeg\",\"Int64.instOfNat\",\"LexLeanRuntime.divideMagnitudeInt64\",\"LexLeanRuntime.magnitudeInt64\",\"LexLeanRuntime.signedMagnitudeInt64\",\"Option.none\",\"Option.some\",\"UInt64.instOfNat\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.checkedSubtract\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"instHSub\",\"HSub.hSub\",\"Int.instSub\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.checkedFromInt\",\"LexLeanRuntime.Fixed.toToMathInt\",\"LexLeanRuntime.ToMathInt.toInt\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}},\"parameters\":[{\"id\":\"_uniq.19\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"borrow\":false},{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instSub\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HSub\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHSub\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HSub\",\"index\":0,\"value\":\"_uniq.24\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":0,\"value\":\"_uniq.20\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.ToMathInt\",\"index\":0,\"value\":\"_uniq.26\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.27\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.27\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.25\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedFromInt\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}}}}}}}}}}},\"uses\":[\"HSub\",\"Int\",\"Option\",\"Sub\",\"instHSub\",\"Int.instSub\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.ToMathInt\",\"LexLeanRuntime.checkedFromInt\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.checkedSubtractInt64\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Int64\",\"Option\",\"instDecidableEqBool\",\"instHSub\",\"instLTInt64\",\"instSubInt64\",\"ite\",\"Bool.and\",\"Bool.or\",\"Bool.true\",\"Decidable.decide\",\"HSub.hSub\",\"Int64.decLt\",\"Int64.instOfNat\",\"LT.lt\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubInt64\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HSub\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHSub\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HSub\",\"index\":0,\"value\":\"_uniq.54\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.55\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.73\",\"parameters\":[{\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.72\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.73\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.107\",\"parameters\":[{\"id\":\"_uniq.79\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.85\",\"parameters\":[{\"id\":\"_uniq.83\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.84\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.85\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.91\",\"parameters\":[{\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Decidable.decide\",\"levels\":[],\"arguments\":[{\"kind\":\"erased\"},{\"kind\":\"fvar\",\"id\":\"_uniq.89\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.90\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.91\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.97\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.98\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},{\"kind\":\"fvar\",\"id\":\"_uniq.99\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Decidable.decide\",\"levels\":[],\"arguments\":[{\"kind\":\"erased\"},{\"kind\":\"fvar\",\"id\":\"_uniq.100\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.101\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.86\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.102\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.103\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.92\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.104\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.105\"}}}}]}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.107\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.118\",\"parameters\":[{\"id\":\"_uniq.116\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.117\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.118\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.124\",\"parameters\":[{\"id\":\"_uniq.121\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Decidable.decide\",\"levels\":[],\"arguments\":[{\"kind\":\"erased\"},{\"kind\":\"fvar\",\"id\":\"_uniq.122\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.123\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.124\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.130\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.131\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.130\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.132\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.131\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.132\"},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Decidable.decide\",\"levels\":[],\"arguments\":[{\"kind\":\"erased\"},{\"kind\":\"fvar\",\"id\":\"_uniq.133\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.159\",\"parameters\":[{\"id\":\"_uniq.139\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},\"value\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.152\",\"parameters\":[{\"id\":\"_uniq.144\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.145\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.146\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.144\"},{\"kind\":\"fvar\",\"id\":\"_uniq.145\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"discriminant\":\"_uniq.146\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.147\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.148\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.148\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.149\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.150\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.150\"}}}]}}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.155\",\"parameters\":[{\"id\":\"_uniq.153\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.154\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.108\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.153\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.152\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.154\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.158\",\"parameters\":[{\"id\":\"_uniq.156\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.157\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.74\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.156\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.152\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.157\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"discriminant\":\"_uniq.139\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.140\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.155\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.140\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.142\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.158\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.142\"}]}}}]}}}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.165\",\"parameters\":[{\"id\":\"_uniq.163\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.164\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.125\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.163\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.159\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.164\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.162\",\"parameters\":[{\"id\":\"_uniq.160\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.161\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.119\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.160\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.159\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.161\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"discriminant\":\"_uniq.134\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.135\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.162\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.135\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.137\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.165\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.137\"}]}}}]}}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"HSub\",\"Int64\",\"Nat\",\"OfNat\",\"Option\",\"PUnit\",\"Sub\",\"instDecidableEqBool\",\"instHSub\",\"instSubInt64\",\"Bool.false\",\"Bool.true\",\"Decidable.decide\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Int64.decLt\",\"Int64.instOfNat\",\"Option.none\",\"Option.some\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.compareBytes\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"List\",\"UInt8\",\"ByteArray.toList\",\"List.instOrd\",\"Ord.compare\",\"UInt8.instOrd\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Ord\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOrd\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Ord\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.instOrd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Ord\",\"index\":0,\"value\":\"_uniq.14\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.toList\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.toList\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.15\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.18\"}}}}}}}},\"uses\":[\"ByteArray\",\"List\",\"Ord\",\"Ordering\",\"UInt8\",\"ByteArray.toList\",\"List.instOrd\",\"UInt8.instOrd\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.divideMagnitudeInt64\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"UInt64\",\"Nat.brecOn\",\"LexLeanRuntime.divideMagnitudeInt64._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}}}}}},\"parameters\":[{\"id\":\"_uniq.94\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.95\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.98\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.117\",\"parameters\":[{\"id\":\"_uniq.113\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.114\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.115\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.116\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}}}}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.116\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.118\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}}}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.117\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.201\",\"parameters\":[{\"id\":\"_uniq.138\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.139\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.140\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.141\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.142\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}}}}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.147\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddUInt64\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.148\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.147\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.149\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.148\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.150\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.149\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.139\"},{\"kind\":\"fvar\",\"id\":\"_uniq.139\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.151\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.150\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.152\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.149\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.141\"},{\"kind\":\"fvar\",\"id\":\"_uniq.141\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.161\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"9223372036854775808\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.162\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.161\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.163\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.162\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.164\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.decLe\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.163\"},{\"kind\":\"fvar\",\"id\":\"_uniq.139\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.200\",\"parameters\":[{\"id\":\"_uniq.173\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.174\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.149\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.152\"},{\"kind\":\"fvar\",\"id\":\"_uniq.173\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.175\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.174\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.176\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.149\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.142\"},{\"kind\":\"fvar\",\"id\":\"_uniq.142\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.177\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.176\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.186\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.decLe\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.140\"},{\"kind\":\"fvar\",\"id\":\"_uniq.175\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"discriminant\":\"_uniq.186\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.187\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.188\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.divideMagnitudeInt64\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.138\"},{\"kind\":\"fvar\",\"id\":\"_uniq.151\"},{\"kind\":\"fvar\",\"id\":\"_uniq.140\"},{\"kind\":\"fvar\",\"id\":\"_uniq.175\"},{\"kind\":\"fvar\",\"id\":\"_uniq.177\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.188\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.189\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.190\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubUInt64\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.191\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HSub\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHSub\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.190\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.192\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HSub\",\"index\":0,\"value\":\"_uniq.191\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.193\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.192\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.175\"},{\"kind\":\"fvar\",\"id\":\"_uniq.140\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.194\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.195\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.194\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.196\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.195\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.197\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.149\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.177\"},{\"kind\":\"fvar\",\"id\":\"_uniq.196\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.198\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.divideMagnitudeInt64\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.138\"},{\"kind\":\"fvar\",\"id\":\"_uniq.151\"},{\"kind\":\"fvar\",\"id\":\"_uniq.140\"},{\"kind\":\"fvar\",\"id\":\"_uniq.193\"},{\"kind\":\"fvar\",\"id\":\"_uniq.197\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.198\"}}}}}}}}}}}]}}}}}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"discriminant\":\"_uniq.164\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.165\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.166\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.167\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.166\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.168\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.167\"},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.200\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.168\"}]}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.169\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.170\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.171\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.170\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.172\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.171\"},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.200\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.172\"}]}}}}}]}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.202\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}}}}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.201\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Nat\",\"result_type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"discriminant\":\"_uniq.94\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Nat.zero\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.208\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.118\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.95\"},{\"kind\":\"fvar\",\"id\":\"_uniq.96\"},{\"kind\":\"fvar\",\"id\":\"_uniq.97\"},{\"kind\":\"fvar\",\"id\":\"_uniq.98\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.208\"}}},{\"kind\":\"constructor\",\"constructor\":\"Nat.succ\",\"parameters\":[{\"id\":\"_uniq.209\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.210\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.202\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.209\"},{\"kind\":\"fvar\",\"id\":\"_uniq.95\"},{\"kind\":\"fvar\",\"id\":\"_uniq.96\"},{\"kind\":\"fvar\",\"id\":\"_uniq.97\"},{\"kind\":\"fvar\",\"id\":\"_uniq.98\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.210\"}}}]}}}}}},\"uses\":[\"Add\",\"Decidable\",\"HAdd\",\"HSub\",\"Nat\",\"OfNat\",\"Sub\",\"UInt64\",\"instAddUInt64\",\"instHAdd\",\"instHSub\",\"instSubUInt64\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.divideMagnitudeInt64\",\"Nat.succ\",\"Nat.zero\",\"UInt64.decLe\",\"UInt64.instOfNat\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.equal\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"BEq\",\"BEq.beq\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}}}},\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"borrow\":false},{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},\"borrow\":false},{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"BEq\",\"index\":0,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.25\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.26\"}}}},\"uses\":[\"BEq\",\"Bool\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.formatDecimal\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Decimal\",\"LexLeanRuntime.Decimal.format\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Decimal\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}}}},\"parameters\":[{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Decimal\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},\"codomain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Decimal\",\"index\":1,\"value\":\"_uniq.16\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.18\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.19\"}}}},\"uses\":[\"String\",\"LexLeanRuntime.Decimal\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.index\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"LexLeanRuntime.Indexable\",\"LexLeanRuntime.Indexable.index\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1},{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}}},\"parameters\":[{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"borrow\":false},{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},\"borrow\":false},{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Indexable\",\"index\":0,\"value\":\"_uniq.26\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.34\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.35\"}}}},\"uses\":[\"Nat\",\"Option\",\"LexLeanRuntime.Indexable\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instAppendableByteArray\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"ByteArray.append\",\"LexLeanRuntime.Appendable.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.1\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.fastAppend\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.2\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.1\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.2\"}}}},\"uses\":[\"ByteArray\",\"ByteArray.fastAppend\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.Appendable.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instAppendableList\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"List.append\",\"LexLeanRuntime.Appendable.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]}]}},\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"List.appendTR\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}}},\"uses\":[\"List\",\"LexLeanRuntime.Appendable\",\"List.appendTR\",\"LexLeanRuntime.Appendable.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instDecimalInt\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Eq\",\"Int\",\"Option\",\"String\",\"Unit\",\"instDecidableEqString\",\"instToStringInt\",\"ite\",\"Option.none\",\"Option.some\",\"String.toInt?\",\"ToString.toString\",\"LexLeanRuntime.Decimal.mk\",\"LexLeanRuntime.instDecimalInt.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Decimal\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.70\",\"parameters\":[{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.48\",\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"ToString\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instToStringInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"ToString\",\"index\":0,\"value\":\"_uniq.39\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.40\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqString\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"discriminant\":\"_uniq.42\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.43\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.44\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.45\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.46\"}}}]}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.48\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.55\",\"parameters\":[{\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.54\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.55\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"String.toInt?\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"discriminant\":\"_uniq.64\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.66\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.49\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.68\"}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"ToString\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instToStringInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"ToString\",\"index\":0,\"value\":\"_uniq.71\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Decimal\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Decimal.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.70\"},{\"kind\":\"fvar\",\"id\":\"_uniq.72\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.78\"}}}}}},\"uses\":[\"Decidable\",\"Int\",\"Option\",\"PUnit\",\"String\",\"ToString\",\"instDecidableEqString\",\"instToStringInt\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.Decimal\",\"Option.none\",\"Option.some\",\"String.toInt?\",\"Unit.unit\",\"LexLeanRuntime.Decimal.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instDecimalOfFixedOfToString\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Eq\",\"Int\",\"Option\",\"String\",\"ToString\",\"Unit\",\"instDecidableEqString\",\"instToStringInt\",\"ite\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.checkedFromInt\",\"Option.none\",\"String.toInt?\",\"ToString.toString\",\"LexLeanRuntime.Decimal.mk\",\"LexLeanRuntime.instDecimalInt.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"ToString\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Decimal\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]}}}},\"parameters\":[{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"borrow\":false},{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"ToString\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.85\",\"parameters\":[{\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.63\",\"parameters\":[{\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"ToString\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instToStringInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"ToString\",\"index\":0,\"value\":\"_uniq.54\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.55\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqString\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"discriminant\":\"_uniq.57\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.58\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.59\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedFromInt\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.61\"}}}]}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.63\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.70\",\"parameters\":[{\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.69\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.70\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"String.toInt?\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"discriminant\":\"_uniq.79\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.71\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.81\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.82\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.64\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.82\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.83\"}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},\"codomain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"ToString\",\"index\":0,\"value\":\"_uniq.34\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Decimal\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Decimal.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.85\"},{\"kind\":\"fvar\",\"id\":\"_uniq.86\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.87\"}}}}},\"uses\":[\"Decidable\",\"Int\",\"Option\",\"PUnit\",\"String\",\"ToString\",\"instDecidableEqString\",\"instToStringInt\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.Decimal\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.checkedFromInt\",\"Option.none\",\"Option.some\",\"String.toInt?\",\"Unit.unit\",\"LexLeanRuntime.Decimal.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instFixedInt16\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"Int16\",\"Nat\",\"Option\",\"UInt32\",\"instLTNat\",\"instOfNat\",\"instOfNatNat\",\"ite\",\"Int.instNegInt\",\"Int16.complement\",\"Int16.land\",\"Int16.lor\",\"Int16.ofInt\",\"Int16.ofNat\",\"Int16.shiftLeft\",\"Int16.shiftRight\",\"Int16.toInt\",\"Int16.xor\",\"LT.lt\",\"Nat.decLt\",\"Neg.neg\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"UInt32.toNat\",\"LexLeanRuntime.Fixed.mk\",\"LexLeanRuntime.ToMathInt.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"Int16.toInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"codomain\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"Int16.ofInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Neg\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instNegInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Neg\",\"index\":0,\"value\":\"_uniq.14\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"32768\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.17\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.15\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"32767\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.21\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"Int16.land\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"Int16.lor\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"Int16.xor\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"Int16.complement\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.51\",\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"16\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.41\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}]},\"discriminant\":\"_uniq.43\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.45\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.46\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int16.ofNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int16.shiftLeft\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.49\"}}}}}]}}}}}}},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.76\",\"parameters\":[{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"16\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.66\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}]},\"discriminant\":\"_uniq.68\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.69\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.70\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.71\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int16.ofNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.64\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int16.shiftRight\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},{\"kind\":\"fvar\",\"id\":\"_uniq.72\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.74\"}}}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.77\"}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Decidable\",\"Int\",\"Int16\",\"Nat\",\"Neg\",\"OfNat\",\"Option\",\"UInt32\",\"instOfNat\",\"instOfNatNat\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Int.instNegInt\",\"Int16.complement\",\"Int16.land\",\"Int16.lor\",\"Int16.ofInt\",\"Int16.ofNat\",\"Int16.shiftLeft\",\"Int16.shiftRight\",\"Int16.toInt\",\"Int16.xor\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.ToMathInt\",\"Nat.decLt\",\"Option.none\",\"Option.some\",\"UInt32.toNat\",\"LexLeanRuntime.Fixed.mk\",\"LexLeanRuntime.ToMathInt.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instFixedInt32\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"Int32\",\"Nat\",\"Option\",\"UInt32\",\"instLTNat\",\"instOfNat\",\"instOfNatNat\",\"ite\",\"Int.instNegInt\",\"Int32.complement\",\"Int32.land\",\"Int32.lor\",\"Int32.ofInt\",\"Int32.ofNat\",\"Int32.shiftLeft\",\"Int32.shiftRight\",\"Int32.toInt\",\"Int32.xor\",\"LT.lt\",\"Nat.decLt\",\"Neg.neg\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"UInt32.toNat\",\"LexLeanRuntime.Fixed.mk\",\"LexLeanRuntime.ToMathInt.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"Int32.toInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"codomain\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"Int32.ofInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Neg\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instNegInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Neg\",\"index\":0,\"value\":\"_uniq.14\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2147483648\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.17\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.15\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2147483647\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.21\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"Int32.land\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"Int32.lor\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"Int32.xor\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"Int32.complement\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.51\",\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"32\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.41\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},\"discriminant\":\"_uniq.43\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.45\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.46\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int32.ofNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int32.shiftLeft\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.49\"}}}}}]}}}}}}},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.76\",\"parameters\":[{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"32\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.66\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},\"discriminant\":\"_uniq.68\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.69\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.70\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.71\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int32.ofNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.64\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int32.shiftRight\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},{\"kind\":\"fvar\",\"id\":\"_uniq.72\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.74\"}}}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.77\"}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Decidable\",\"Int\",\"Int32\",\"Nat\",\"Neg\",\"OfNat\",\"Option\",\"UInt32\",\"instOfNat\",\"instOfNatNat\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Int.instNegInt\",\"Int32.complement\",\"Int32.land\",\"Int32.lor\",\"Int32.ofInt\",\"Int32.ofNat\",\"Int32.shiftLeft\",\"Int32.shiftRight\",\"Int32.toInt\",\"Int32.xor\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.ToMathInt\",\"Nat.decLt\",\"Option.none\",\"Option.some\",\"UInt32.toNat\",\"LexLeanRuntime.Fixed.mk\",\"LexLeanRuntime.ToMathInt.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instFixedInt64\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"Int64\",\"Nat\",\"Option\",\"UInt32\",\"instLTNat\",\"instOfNat\",\"instOfNatNat\",\"ite\",\"Int.instNegInt\",\"Int64.complement\",\"Int64.land\",\"Int64.lor\",\"Int64.ofInt\",\"Int64.ofNat\",\"Int64.shiftLeft\",\"Int64.shiftRight\",\"Int64.toInt\",\"Int64.xor\",\"LT.lt\",\"Nat.decLt\",\"Neg.neg\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"UInt32.toNat\",\"LexLeanRuntime.Fixed.mk\",\"LexLeanRuntime.ToMathInt.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"Int64.toInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"codomain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"Int64.ofInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Neg\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instNegInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Neg\",\"index\":0,\"value\":\"_uniq.14\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"9223372036854775808\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.17\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.15\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"9223372036854775807\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.21\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"Int64.land\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"Int64.lor\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"Int64.xor\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"Int64.complement\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.51\",\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"64\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.41\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"discriminant\":\"_uniq.43\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.45\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.46\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.ofNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.shiftLeft\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.49\"}}}}}]}}}}}}},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.76\",\"parameters\":[{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"64\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.66\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"discriminant\":\"_uniq.68\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.69\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.70\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.71\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.ofNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.64\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.shiftRight\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},{\"kind\":\"fvar\",\"id\":\"_uniq.72\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.74\"}}}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.77\"}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Decidable\",\"Int\",\"Int64\",\"Nat\",\"Neg\",\"OfNat\",\"Option\",\"UInt32\",\"instOfNat\",\"instOfNatNat\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Int.instNegInt\",\"Int64.complement\",\"Int64.land\",\"Int64.lor\",\"Int64.ofInt\",\"Int64.ofNat\",\"Int64.shiftLeft\",\"Int64.shiftRight\",\"Int64.toInt\",\"Int64.xor\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.ToMathInt\",\"Nat.decLt\",\"Option.none\",\"Option.some\",\"UInt32.toNat\",\"LexLeanRuntime.Fixed.mk\",\"LexLeanRuntime.ToMathInt.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instFixedInt8\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"Int8\",\"Nat\",\"Option\",\"UInt32\",\"instLTNat\",\"instOfNat\",\"instOfNatNat\",\"ite\",\"Int.instNegInt\",\"Int8.complement\",\"Int8.land\",\"Int8.lor\",\"Int8.ofInt\",\"Int8.ofNat\",\"Int8.shiftLeft\",\"Int8.shiftRight\",\"Int8.toInt\",\"Int8.xor\",\"LT.lt\",\"Nat.decLt\",\"Neg.neg\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"UInt32.toNat\",\"LexLeanRuntime.Fixed.mk\",\"LexLeanRuntime.ToMathInt.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"Int8.toInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"codomain\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"Int8.ofInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Neg\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instNegInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Neg\",\"index\":0,\"value\":\"_uniq.14\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"128\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.17\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.15\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"127\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.21\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"Int8.land\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"Int8.lor\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"Int8.xor\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"Int8.complement\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.51\",\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"8\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.41\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},\"discriminant\":\"_uniq.43\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.45\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.46\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int8.ofNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int8.shiftLeft\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.49\"}}}}}]}}}}}}},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.76\",\"parameters\":[{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"8\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.66\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},\"discriminant\":\"_uniq.68\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.69\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.70\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.71\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int8.ofNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.64\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int8.shiftRight\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},{\"kind\":\"fvar\",\"id\":\"_uniq.72\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.74\"}}}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.77\"}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Decidable\",\"Int\",\"Int8\",\"Nat\",\"Neg\",\"OfNat\",\"Option\",\"UInt32\",\"instOfNat\",\"instOfNatNat\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Int.instNegInt\",\"Int8.complement\",\"Int8.land\",\"Int8.lor\",\"Int8.ofInt\",\"Int8.ofNat\",\"Int8.shiftLeft\",\"Int8.shiftRight\",\"Int8.toInt\",\"Int8.xor\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.ToMathInt\",\"Nat.decLt\",\"Option.none\",\"Option.some\",\"UInt32.toNat\",\"LexLeanRuntime.Fixed.mk\",\"LexLeanRuntime.ToMathInt.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instFixedUInt16\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"Nat\",\"Option\",\"UInt16\",\"UInt32\",\"instLTNat\",\"instOfNat\",\"instOfNatNat\",\"ite\",\"Int.ofNat\",\"LT.lt\",\"Nat.decLt\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"UInt16.complement\",\"UInt16.land\",\"UInt16.lor\",\"UInt16.ofInt\",\"UInt16.ofNat\",\"UInt16.shiftLeft\",\"UInt16.shiftRight\",\"UInt16.toNat\",\"UInt16.xor\",\"UInt32.toNat\",\"LexLeanRuntime.Fixed.mk\",\"LexLeanRuntime.ToMathInt.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.16\",\"parameters\":[{\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt16.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int.ofNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.15\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"UInt16.ofInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.20\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"65535\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.23\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"UInt16.land\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"UInt16.lor\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"UInt16.xor\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"UInt16.complement\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.53\",\"parameters\":[{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"16\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.43\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},\"discriminant\":\"_uniq.45\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.46\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.47\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.48\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt16.ofNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt16.shiftLeft\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.51\"}}}}}]}}}}}}},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.78\",\"parameters\":[{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"16\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.68\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.66\"},{\"kind\":\"fvar\",\"id\":\"_uniq.69\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},\"discriminant\":\"_uniq.70\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.71\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.72\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.73\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt16.ofNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.66\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt16.shiftRight\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.75\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.76\"}}}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.78\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.79\"}}}}}}}}}}}}}}}}}},\"uses\":[\"Decidable\",\"Int\",\"Nat\",\"OfNat\",\"Option\",\"UInt16\",\"UInt32\",\"instOfNat\",\"instOfNatNat\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Int.ofNat\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.ToMathInt\",\"Nat.decLt\",\"Option.none\",\"Option.some\",\"UInt16.complement\",\"UInt16.land\",\"UInt16.lor\",\"UInt16.ofInt\",\"UInt16.ofNat\",\"UInt16.shiftLeft\",\"UInt16.shiftRight\",\"UInt16.toNat\",\"UInt16.xor\",\"UInt32.toNat\",\"LexLeanRuntime.Fixed.mk\",\"LexLeanRuntime.ToMathInt.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instFixedUInt32\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"Nat\",\"Option\",\"UInt32\",\"instLTNat\",\"instOfNat\",\"instOfNatNat\",\"ite\",\"Int.ofNat\",\"LT.lt\",\"Nat.decLt\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"UInt32.complement\",\"UInt32.land\",\"UInt32.lor\",\"UInt32.ofInt\",\"UInt32.shiftLeft\",\"UInt32.shiftRight\",\"UInt32.toNat\",\"UInt32.xor\",\"LexLeanRuntime.Fixed.mk\",\"LexLeanRuntime.ToMathInt.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.16\",\"parameters\":[{\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int.ofNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.15\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.ofInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.20\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"4294967295\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.23\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.land\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.lor\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.xor\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.complement\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.52\",\"parameters\":[{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"32\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.43\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"discriminant\":\"_uniq.45\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.46\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.47\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.48\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.shiftLeft\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.50\"}}}}]}}}}}}},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.76\",\"parameters\":[{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"32\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.66\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.67\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"fvar\",\"id\":\"_uniq.68\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"discriminant\":\"_uniq.69\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.71\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.72\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.shiftRight\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.74\"}}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.52\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.77\"}}}}}}}}}}}}}}}}}},\"uses\":[\"Decidable\",\"Int\",\"Nat\",\"OfNat\",\"Option\",\"UInt32\",\"instOfNat\",\"instOfNatNat\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Int.ofNat\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.ToMathInt\",\"Nat.decLt\",\"Option.none\",\"Option.some\",\"UInt32.complement\",\"UInt32.land\",\"UInt32.lor\",\"UInt32.ofInt\",\"UInt32.shiftLeft\",\"UInt32.shiftRight\",\"UInt32.toNat\",\"UInt32.xor\",\"LexLeanRuntime.Fixed.mk\",\"LexLeanRuntime.ToMathInt.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instFixedUInt64\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"Nat\",\"Option\",\"UInt32\",\"UInt64\",\"instLTNat\",\"instOfNat\",\"instOfNatNat\",\"ite\",\"Int.ofNat\",\"LT.lt\",\"Nat.decLt\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"UInt32.toNat\",\"UInt64.complement\",\"UInt64.land\",\"UInt64.lor\",\"UInt64.ofInt\",\"UInt64.ofNat\",\"UInt64.shiftLeft\",\"UInt64.shiftRight\",\"UInt64.toNat\",\"UInt64.xor\",\"LexLeanRuntime.Fixed.mk\",\"LexLeanRuntime.ToMathInt.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.16\",\"parameters\":[{\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int.ofNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.15\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.ofInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.20\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"18446744073709551615\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.23\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.land\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.lor\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.xor\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.complement\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.53\",\"parameters\":[{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"64\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.43\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"discriminant\":\"_uniq.45\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.46\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.47\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.48\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.ofNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.shiftLeft\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.51\"}}}}}]}}}}}}},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.78\",\"parameters\":[{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"64\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.68\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.66\"},{\"kind\":\"fvar\",\"id\":\"_uniq.69\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"discriminant\":\"_uniq.70\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.71\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.72\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.73\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.ofNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.66\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.shiftRight\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.75\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.76\"}}}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.78\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.79\"}}}}}}}}}}}}}}}}}},\"uses\":[\"Decidable\",\"Int\",\"Nat\",\"OfNat\",\"Option\",\"UInt32\",\"UInt64\",\"instOfNat\",\"instOfNatNat\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Int.ofNat\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.ToMathInt\",\"Nat.decLt\",\"Option.none\",\"Option.some\",\"UInt32.toNat\",\"UInt64.complement\",\"UInt64.land\",\"UInt64.lor\",\"UInt64.ofInt\",\"UInt64.ofNat\",\"UInt64.shiftLeft\",\"UInt64.shiftRight\",\"UInt64.toNat\",\"UInt64.xor\",\"LexLeanRuntime.Fixed.mk\",\"LexLeanRuntime.ToMathInt.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instIndexableByteArrayUInt8\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Array\",\"ByteArray\",\"Nat\",\"UInt8\",\"instLTNat\",\"Array.instGetElem?NatLtSize\",\"Array.size\",\"ByteArray.data\",\"GetElem?.getElem?\",\"LT.lt\",\"LexLeanRuntime.Indexable.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.59\",\"parameters\":[{\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"GetElem?\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Array.instGetElem?NatLtSize\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"GetElem?\",\"index\":1,\"value\":\"_uniq.9\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.data\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.58\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.60\"}}}},\"uses\":[\"Array\",\"ByteArray\",\"GetElem?\",\"Nat\",\"Option\",\"UInt8\",\"Array.instGetElem?NatLtSize\",\"ByteArray.data\",\"LexLeanRuntime.Indexable\",\"LexLeanRuntime.Indexable.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instIndexableList\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"LexLeanRuntime.listIndex\",\"LexLeanRuntime.Indexable.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},{\"kind\":\"bvar\",\"index\":0}]}},\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.listIndex\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]},{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}}},\"uses\":[\"List\",\"Nat\",\"Option\",\"LexLeanRuntime.Indexable\",\"LexLeanRuntime.listIndex\",\"LexLeanRuntime.Indexable.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"ByteArray.size\",\"LexLeanRuntime.Lengthable.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.1\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.size\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.5\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.1\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.5\"}}}},\"uses\":[\"ByteArray\",\"Nat\",\"ByteArray.size\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.Lengthable.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instLengthableList\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"List.length\",\"LexLeanRuntime.Lengthable.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]}]}},\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"List.lengthTR\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}}},\"uses\":[\"List\",\"Nat\",\"LexLeanRuntime.Lengthable\",\"List.lengthTR\",\"LexLeanRuntime.Lengthable.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instLengthableString\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"String\",\"String.length\",\"LexLeanRuntime.Lengthable.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.1\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"String.length\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.2\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.1\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.2\"}}}},\"uses\":[\"Nat\",\"String\",\"LexLeanRuntime.Lengthable\",\"String.length\",\"LexLeanRuntime.Lengthable.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instQuotientInt\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"instBEqOfDecidableEq\",\"instOfNat\",\"BEq.beq\",\"Int.instDecidableEq\",\"Int.tdiv\",\"Int.tmod\",\"OfNat.ofNat\",\"LexLeanRuntime.Quotient.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.2\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"Int.tdiv\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.3\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"Int.tmod\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.15\",\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"Int.instDecidableEq\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"BEq\",\"index\":0,\"value\":\"_uniq.9\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.12\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.10\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.14\"}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.2\"},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.16\"}}}}}},\"uses\":[\"BEq\",\"Bool\",\"Decidable\",\"Int\",\"Nat\",\"OfNat\",\"instBEqOfDecidableEq\",\"instOfNat\",\"Int.instDecidableEq\",\"Int.tdiv\",\"Int.tmod\",\"LexLeanRuntime.Quotient\",\"LexLeanRuntime.Quotient.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instQuotientNat\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instBEqOfDecidableEq\",\"instDecidableEqNat\",\"instOfNatNat\",\"BEq.beq\",\"Nat.div\",\"Nat.mod\",\"OfNat.ofNat\",\"LexLeanRuntime.Quotient.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.2\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"Nat.div\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.3\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"Nat.mod\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.15\",\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"BEq\",\"index\":0,\"value\":\"_uniq.9\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.12\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.10\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.14\"}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.2\"},{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.25\"}}}}}},\"uses\":[\"BEq\",\"Bool\",\"Decidable\",\"Nat\",\"OfNat\",\"instBEqOfDecidableEq\",\"instDecidableEqNat\",\"instOfNatNat\",\"LexLeanRuntime.Quotient\",\"Nat.div\",\"Nat.mod\",\"LexLeanRuntime.Quotient.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instSliceableByteArray\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Nat\",\"Option\",\"instAddNat\",\"instHAdd\",\"instLENat\",\"ite\",\"ByteArray.extract\",\"ByteArray.size\",\"HAdd.hAdd\",\"LE.le\",\"Nat.decLe\",\"Option.none\",\"Option.some\",\"LexLeanRuntime.Sliceable.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.33\",\"parameters\":[{\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.23\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.size\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.decLe\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.26\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.28\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.extract\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}}}}]}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.39\"}}}},\"uses\":[\"Add\",\"ByteArray\",\"Decidable\",\"HAdd\",\"Nat\",\"Option\",\"instAddNat\",\"instHAdd\",\"ByteArray.extract\",\"ByteArray.size\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.Sliceable\",\"Nat.decLe\",\"Option.none\",\"Option.some\",\"LexLeanRuntime.Sliceable.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instSliceableList\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Option\",\"instAddNat\",\"instHAdd\",\"instLENat\",\"ite\",\"HAdd.hAdd\",\"LE.le\",\"List.drop\",\"List.length\",\"List.take\",\"Nat.decLe\",\"Option.none\",\"Option.some\",\"LexLeanRuntime.Sliceable.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]}]}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.39\",\"parameters\":[{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"borrow\":false},{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]}]}}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.27\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.28\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"List.lengthTR\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.decLe\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]}]},\"discriminant\":\"_uniq.31\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.33\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.drop\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.takeTR\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.37\"}}}}}]}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.40\"}}}},\"uses\":[\"Add\",\"Decidable\",\"HAdd\",\"List\",\"Nat\",\"Option\",\"instAddNat\",\"instHAdd\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.Sliceable\",\"List.drop\",\"List.lengthTR\",\"List.takeTR\",\"Nat.decLe\",\"Option.none\",\"Option.some\",\"LexLeanRuntime.Sliceable.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instToMathIntInt\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"LexLeanRuntime.ToMathInt.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.4\",\"parameters\":[{\"id\":\"_uniq.3\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.5\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.4\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.5\"}}}},\"uses\":[\"Int\",\"LexLeanRuntime.ToMathInt\",\"LexLeanRuntime.ToMathInt.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.join\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"String\",\"String.intercalate\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"String.intercalate\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.13\"}}},\"uses\":[\"List\",\"String\",\"String.intercalate\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.length\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.Lengthable.length\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}}},\"parameters\":[{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Lengthable\",\"index\":0,\"value\":\"_uniq.16\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.18\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.19\"}}}},\"uses\":[\"Nat\",\"LexLeanRuntime.Lengthable\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.listIndex\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Option\",\"List.brecOn\",\"LexLeanRuntime.listIndex._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]}}}},\"parameters\":[{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"borrow\":false},{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.70\",\"parameters\":[{\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.69\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.70\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.81\",\"parameters\":[{\"id\":\"_uniq.78\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},\"borrow\":false},{\"id\":\"_uniq.79\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.78\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.80\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.81\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.96\",\"parameters\":[{\"id\":\"_uniq.92\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},\"borrow\":false},{\"id\":\"_uniq.93\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"borrow\":false},{\"id\":\"_uniq.94\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]}}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.listIndex\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.93\"},{\"kind\":\"fvar\",\"id\":\"_uniq.94\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.95\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]}}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.96\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"discriminant\":\"_uniq.60\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.71\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.106\"}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.107\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},\"borrow\":false},{\"id\":\"_uniq.108\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"borrow\":false}],\"code\":{\"kind\":\"cases\",\"type_name\":\"Nat\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"discriminant\":\"_uniq.61\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Nat.zero\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.82\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.107\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.114\"}}},{\"kind\":\"constructor\",\"constructor\":\"Nat.succ\",\"parameters\":[{\"id\":\"_uniq.115\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.97\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.107\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"},{\"kind\":\"fvar\",\"id\":\"_uniq.115\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.116\"}}}]}}]}}}}}}}},\"uses\":[\"List\",\"Nat\",\"Option\",\"LexLeanRuntime.listIndex\",\"List.cons\",\"List.nil\",\"Nat.succ\",\"Nat.zero\",\"Option.none\",\"Option.some\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.magnitudeInt64\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int64\",\"UInt64\",\"instHSub\",\"instLTInt64\",\"instSubUInt64\",\"ite\",\"HSub.hSub\",\"Int64.decLt\",\"Int64.instOfNat\",\"Int64.toUInt64\",\"LT.lt\",\"OfNat.ofNat\",\"UInt64.instOfNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Int64\",\"index\":0,\"value\":\"_uniq.12\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.16\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.27\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int64.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"discriminant\":\"_uniq.29\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.17\"}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubUInt64\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HSub\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHSub\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HSub\",\"index\":0,\"value\":\"_uniq.33\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.35\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.34\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.37\"}}}}}}}}]}}}}}}}},\"uses\":[\"Decidable\",\"HSub\",\"Int64\",\"Nat\",\"OfNat\",\"Sub\",\"UInt64\",\"instHSub\",\"instSubUInt64\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Int64.decLt\",\"Int64.instOfNat\",\"UInt64.instOfNat\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.multiply\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Mul\",\"instHMul\",\"HMul.hMul\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Mul\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}},\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Mul\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"borrow\":false},{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"borrow\":false},{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HMul\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instHMul\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HMul\",\"index\":0,\"value\":\"_uniq.39\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}}}},\"uses\":[\"HMul\",\"Mul\",\"instHMul\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.multiplyMagnitudeInt64\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Nat\",\"Option\",\"UInt64\",\"Nat.brecOn\",\"LexLeanRuntime.multiplyMagnitudeInt64._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]}}}}}},\"parameters\":[{\"id\":\"_uniq.114\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.115\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.116\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.117\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.118\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.138\",\"parameters\":[{\"id\":\"_uniq.133\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.134\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.135\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.136\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]}}}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.137\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.135\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.137\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.139\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]}}}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.138\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.295\",\"parameters\":[{\"id\":\"_uniq.158\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.159\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.160\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.161\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.162\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]}}}}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.174\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.175\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.162\"},{\"kind\":\"fvar\",\"id\":\"_uniq.174\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.294\",\"parameters\":[{\"id\":\"_uniq.184\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.185\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.184\",\"arguments\":[]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.293\",\"parameters\":[{\"id\":\"_uniq.202\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.203\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.202\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.212\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.203\"},{\"kind\":\"fvar\",\"id\":\"_uniq.161\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"discriminant\":\"_uniq.212\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.213\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.215\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddUInt64\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.216\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.215\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.217\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.216\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.218\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.217\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.161\"},{\"kind\":\"fvar\",\"id\":\"_uniq.161\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.219\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.218\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.228\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"9223372036854775808\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.229\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.228\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.230\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.229\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.231\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.decLe\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.230\"},{\"kind\":\"fvar\",\"id\":\"_uniq.159\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"discriminant\":\"_uniq.231\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.232\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.233\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.217\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.159\"},{\"kind\":\"fvar\",\"id\":\"_uniq.159\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.234\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.multiplyMagnitudeInt64\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.158\"},{\"kind\":\"fvar\",\"id\":\"_uniq.233\"},{\"kind\":\"fvar\",\"id\":\"_uniq.160\"},{\"kind\":\"fvar\",\"id\":\"_uniq.219\"},{\"kind\":\"fvar\",\"id\":\"_uniq.162\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.234\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.235\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.251\",\"parameters\":[{\"id\":\"_uniq.249\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.250\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.250\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.252\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.251\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.261\",\"parameters\":[{\"id\":\"_uniq.254\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.255\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubUInt64\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.256\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HSub\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHSub\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.255\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.257\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HSub\",\"index\":0,\"value\":\"_uniq.256\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.258\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.257\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.185\"},{\"kind\":\"fvar\",\"id\":\"_uniq.160\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.259\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.258\"},{\"kind\":\"fvar\",\"id\":\"_uniq.219\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.260\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Decidable.decide\",\"levels\":[],\"arguments\":[{\"kind\":\"erased\"},{\"kind\":\"fvar\",\"id\":\"_uniq.259\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.260\"}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.262\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.261\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.267\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.185\"},{\"kind\":\"fvar\",\"id\":\"_uniq.160\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.268\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Decidable.decide\",\"levels\":[],\"arguments\":[{\"kind\":\"erased\"},{\"kind\":\"fvar\",\"id\":\"_uniq.267\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.282\",\"parameters\":[{\"id\":\"_uniq.273\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.274\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.273\"},{\"kind\":\"fvar\",\"id\":\"_uniq.174\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"discriminant\":\"_uniq.274\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.275\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.276\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.217\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.159\"},{\"kind\":\"fvar\",\"id\":\"_uniq.159\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.277\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.217\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.219\"},{\"kind\":\"fvar\",\"id\":\"_uniq.160\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.278\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.multiplyMagnitudeInt64\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.158\"},{\"kind\":\"fvar\",\"id\":\"_uniq.276\"},{\"kind\":\"fvar\",\"id\":\"_uniq.160\"},{\"kind\":\"fvar\",\"id\":\"_uniq.277\"},{\"kind\":\"fvar\",\"id\":\"_uniq.162\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.278\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.279\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.280\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.280\"}}}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.285\",\"parameters\":[{\"id\":\"_uniq.283\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.284\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.262\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.283\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.282\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.284\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.288\",\"parameters\":[{\"id\":\"_uniq.286\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.287\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.252\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.286\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.282\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.287\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"discriminant\":\"_uniq.268\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.269\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.285\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.269\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.271\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.288\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.271\"}]}}}]}}}}}}}}}}}]}}}}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.290\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.291\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.291\"}}}]}}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"discriminant\":\"_uniq.175\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.194\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.195\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"4611686018427387903\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.196\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.195\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.197\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.196\"},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.293\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.197\"}]}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.198\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.199\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"4611686018427387904\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.200\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.199\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.201\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.200\"},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.293\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.201\"}]}}}}}]}}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"discriminant\":\"_uniq.175\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.176\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.177\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"9223372036854775807\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.178\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.177\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.179\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.178\"},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.294\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.179\"}]}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.180\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.181\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"9223372036854775808\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.182\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.181\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.183\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.182\"},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.294\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.183\"}]}}}}}]}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.296\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]}}}}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.295\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Nat\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"discriminant\":\"_uniq.114\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Nat.zero\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.302\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.139\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.115\"},{\"kind\":\"fvar\",\"id\":\"_uniq.116\"},{\"kind\":\"fvar\",\"id\":\"_uniq.117\"},{\"kind\":\"fvar\",\"id\":\"_uniq.118\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.302\"}}},{\"kind\":\"constructor\",\"constructor\":\"Nat.succ\",\"parameters\":[{\"id\":\"_uniq.303\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.304\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.296\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.303\"},{\"kind\":\"fvar\",\"id\":\"_uniq.115\"},{\"kind\":\"fvar\",\"id\":\"_uniq.116\"},{\"kind\":\"fvar\",\"id\":\"_uniq.117\"},{\"kind\":\"fvar\",\"id\":\"_uniq.118\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.304\"}}}]}}}}}},\"uses\":[\"Add\",\"Bool\",\"Decidable\",\"HAdd\",\"HSub\",\"Nat\",\"OfNat\",\"Option\",\"PUnit\",\"Sub\",\"UInt64\",\"instAddUInt64\",\"instDecidableEqBool\",\"instHAdd\",\"instHSub\",\"instSubUInt64\",\"Bool.false\",\"Bool.true\",\"Decidable.decide\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.multiplyMagnitudeInt64\",\"Nat.succ\",\"Nat.zero\",\"Option.none\",\"Option.some\",\"UInt64.decLe\",\"UInt64.decLt\",\"UInt64.instOfNat\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.negate\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Neg\",\"Neg.neg\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Neg\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"bvar\",\"index\":2}}}},\"parameters\":[{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Neg\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"borrow\":false},{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Neg\",\"index\":0,\"value\":\"_uniq.26\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.29\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.30\"}}}},\"uses\":[\"Neg\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.parseDecimal\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"String\",\"LexLeanRuntime.Decimal\",\"LexLeanRuntime.Decimal.parse\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Decimal\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]}}}},\"parameters\":[{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Decimal\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Decimal\",\"index\":0,\"value\":\"_uniq.16\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.18\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.19\"}}}},\"uses\":[\"Option\",\"String\",\"LexLeanRuntime.Decimal\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.quotient\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"LexLeanRuntime.Quotient\",\"LexLeanRuntime.Quotient.isZero\",\"LexLeanRuntime.Quotient.quotient\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":3},\"codomain\":{\"kind\":\"bvar\",\"index\":4}}}}}},\"parameters\":[{\"id\":\"_uniq.39\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"borrow\":false},{\"id\":\"_uniq.41\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"borrow\":false},{\"id\":\"_uniq.42\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"borrow\":false},{\"id\":\"_uniq.43\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Quotient\",\"index\":2,\"value\":\"_uniq.40\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.52\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"discriminant\":\"_uniq.55\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Quotient\",\"index\":0,\"value\":\"_uniq.40\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.59\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.60\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.43\"}}]}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.Quotient\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.remainder\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"LexLeanRuntime.Quotient\",\"LexLeanRuntime.Quotient.isZero\",\"LexLeanRuntime.Quotient.remainder\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":3},\"codomain\":{\"kind\":\"bvar\",\"index\":4}}}}}},\"parameters\":[{\"id\":\"_uniq.39\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"borrow\":false},{\"id\":\"_uniq.41\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"borrow\":false},{\"id\":\"_uniq.42\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"borrow\":false},{\"id\":\"_uniq.43\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Quotient\",\"index\":2,\"value\":\"_uniq.40\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.52\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"discriminant\":\"_uniq.55\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Quotient\",\"index\":1,\"value\":\"_uniq.40\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.59\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.60\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.43\"}}]}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.Quotient\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.shiftLeft\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"UInt32\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.Fixed.shiftLeft\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}},\"parameters\":[{\"id\":\"_uniq.19\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"borrow\":false},{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":8,\"value\":\"_uniq.20\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.23\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.24\"}}}},\"uses\":[\"Option\",\"UInt32\",\"LexLeanRuntime.Fixed\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.shiftRight\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"UInt32\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.Fixed.shiftRight\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}},\"parameters\":[{\"id\":\"_uniq.19\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"borrow\":false},{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":9,\"value\":\"_uniq.20\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.23\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.24\"}}}},\"uses\":[\"Option\",\"UInt32\",\"LexLeanRuntime.Fixed\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.signedMagnitudeInt64\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"UInt64\",\"instDecidableEqBool\",\"instHSub\",\"instSubUInt64\",\"ite\",\"Bool.true\",\"HSub.hSub\",\"OfNat.ofNat\",\"UInt64.instOfNat\",\"UInt64.toInt64\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.37\",\"parameters\":[{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.toInt64\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.36\"}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"discriminant\":\"_uniq.25\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.26\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.37\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubUInt64\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HSub\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHSub\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HSub\",\"index\":0,\"value\":\"_uniq.29\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.32\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.30\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.37\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]}}}}}}}}}]}}}}},\"uses\":[\"Bool\",\"Decidable\",\"HSub\",\"Int64\",\"Nat\",\"OfNat\",\"Sub\",\"UInt64\",\"instDecidableEqBool\",\"instHSub\",\"instSubUInt64\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"UInt64.instOfNat\",\"UInt64.toInt64\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.slice\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"LexLeanRuntime.Sliceable\",\"LexLeanRuntime.Sliceable.slice\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":4}]}}}}}},\"parameters\":[{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"borrow\":false},{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},\"borrow\":false},{\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]}}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Sliceable\",\"index\":0,\"value\":\"_uniq.24\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.28\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.29\"}}}},\"uses\":[\"Nat\",\"Option\",\"LexLeanRuntime.Sliceable\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.splitExact\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"List\",\"Nat\",\"Option\",\"String\",\"UInt32\",\"instDecidableEqBool\",\"instLTNat\",\"ite\",\"Bool.or\",\"Bool.true\",\"Decidable.decide\",\"LT.lt\",\"List.length\",\"Nat.decLt\",\"Option.none\",\"Option.some\",\"String.isEmpty\",\"String.splitOn\",\"UInt32.toNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]}}}},\"parameters\":[{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"String.splitOn\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.39\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.56\",\"parameters\":[{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.55\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.64\",\"parameters\":[{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"List.lengthTR\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Decidable.decide\",\"levels\":[],\"arguments\":[{\"kind\":\"erased\"},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.63\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.64\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"String.isEmpty\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.83\",\"parameters\":[{\"id\":\"_uniq.75\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.77\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.78\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.79\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.80\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.81\"}}}]}}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.89\",\"parameters\":[{\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.57\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.87\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.83\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.86\",\"parameters\":[{\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.84\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.83\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.85\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.70\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.86\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.89\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]}}}]}}}}}}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"List\",\"Nat\",\"Option\",\"PUnit\",\"String\",\"UInt32\",\"instDecidableEqBool\",\"Bool.false\",\"Bool.true\",\"Decidable.decide\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"List.lengthTR\",\"Nat.decLt\",\"Option.none\",\"Option.some\",\"String.isEmpty\",\"String.splitOn\",\"UInt32.toNat\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.subtract\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Sub\",\"instHSub\",\"HSub.hSub\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}},\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"borrow\":false},{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"borrow\":false},{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HSub\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instHSub\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HSub\",\"index\":0,\"value\":\"_uniq.39\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}}}},\"uses\":[\"HSub\",\"Sub\",\"instHSub\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.utf8Decode\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"String.fromUTF8?\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"String.fromUTF8?\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}},\"uses\":[\"ByteArray\",\"Option\",\"String\",\"String.fromUTF8?\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.utf8Encode\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"String\",\"String.toUTF8\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"String.toUTF8\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}},\"uses\":[\"ByteArray\",\"String\",\"String.toUTF8\"]},\"inductive\":null},{\"name\":\"Coverage.Boundary.Grove\",\"kind\":\"inductive\",\"module\":\"Coverage.Boundary\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":true,\"constructors\":[{\"name\":\"Coverage.Boundary.Grove.node\",\"parameters\":0,\"fields\":5,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]}}}}}}},{\"name\":\"Coverage.Boundary.Grove.leaf\",\"parameters\":0,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]}}},{\"name\":\"Coverage.Boundary.Grove.settled\",\"parameters\":0,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]}}}]}},{\"name\":\"Coverage.Boundary.Ledger\",\"kind\":\"inductive\",\"module\":\"Coverage.Boundary\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Coverage.Boundary.Ledger.mk\",\"parameters\":0,\"fields\":2,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Ledger\",\"levels\":[]}}}}]}},{\"name\":\"Coverage.Boundary.groveRoot\",\"kind\":\"definition\",\"module\":\"Coverage.Boundary\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"List\",\"Nat\",\"Option\",\"Prod\",\"Prod.mk\",\"Coverage.Boundary.Grove\",\"Coverage.Boundary.Ledger\",\"Coverage.Boundary.groveTags\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Ledger\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Ledger\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]}]}}}}},\"parameters\":[{\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Ledger\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"borrow\":false},{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Boundary.groveTags\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Ledger\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Ledger\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Ledger\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Ledger\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.25\"}}}}}},\"uses\":[\"Bool\",\"List\",\"Nat\",\"Option\",\"Prod\",\"Prod.mk\",\"Coverage.Boundary.Grove\",\"Coverage.Boundary.Ledger\",\"Coverage.Boundary.groveTags\"]},\"inductive\":null},{\"name\":\"Coverage.Boundary.groveTags\",\"kind\":\"definition\",\"module\":\"Coverage.Boundary\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Except\",\"Int\",\"List\",\"Nat\",\"Option\",\"Prod\",\"String\",\"instOfNatNat\",\"LexLeanCollections.mapSize\",\"LexLeanCollections.setSize\",\"OfNat.ofNat\",\"Coverage.Boundary.Grove\",\"Coverage.Boundary.groveTags.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.75\",\"parameters\":[{\"id\":\"_uniq.69\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.71\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"borrow\":false},{\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.73\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}}}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.setSize\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.69\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.74\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}}}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.75\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.82\",\"parameters\":[{\"id\":\"_uniq.80\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.mapSize\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.81\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.82\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.91\",\"parameters\":[{\"id\":\"_uniq.87\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.89\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.90\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.91\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Coverage.Boundary.Grove\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.53\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Coverage.Boundary.Grove.node\",\"parameters\":[{\"id\":\"_uniq.105\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.106\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.107\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"borrow\":false},{\"id\":\"_uniq.108\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.109\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]}]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.110\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.76\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.105\"},{\"kind\":\"fvar\",\"id\":\"_uniq.106\"},{\"kind\":\"fvar\",\"id\":\"_uniq.107\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"},{\"kind\":\"fvar\",\"id\":\"_uniq.109\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.110\"}}},{\"kind\":\"constructor\",\"constructor\":\"Coverage.Boundary.Grove.leaf\",\"parameters\":[{\"id\":\"_uniq.111\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.83\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.111\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.112\"}}},{\"kind\":\"constructor\",\"constructor\":\"Coverage.Boundary.Grove.settled\",\"parameters\":[{\"id\":\"_uniq.113\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Coverage.Boundary.Grove\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.92\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.113\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.114\"}}}]}}}}}}}},\"uses\":[\"Except\",\"Int\",\"List\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"String\",\"instOfNatNat\",\"LexLeanCollections.mapSize\",\"LexLeanCollections.setSize\",\"Coverage.Boundary.Grove\",\"Coverage.Boundary.Grove.leaf\",\"Coverage.Boundary.Grove.node\",\"Coverage.Boundary.Grove.settled\"]},\"inductive\":null},{\"name\":\"Coverage.Colls.folds\",\"kind\":\"definition\",\"module\":\"Coverage.Colls\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"List\",\"Nat\",\"instAddNat\",\"instHAdd\",\"instOfNat\",\"instOfNatNat\",\"HAdd.hAdd\",\"Int.instSub\",\"LexLeanCollections.listFold\",\"LexLeanCollections.setFold\",\"LexLeanRuntime.subtract\",\"OfNat.ofNat\",\"Prod.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.25\",\"parameters\":[{\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.23\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.24\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.27\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.36\",\"parameters\":[{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instSub\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.35\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"5\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.38\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.setFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.41\"}}}}}}}}}}}}},\"uses\":[\"Add\",\"HAdd\",\"Int\",\"List\",\"Nat\",\"OfNat\",\"Prod\",\"Sub\",\"instAddNat\",\"instHAdd\",\"instOfNat\",\"instOfNatNat\",\"Int.instSub\",\"LexLeanCollections.listFold\",\"LexLeanCollections.setFold\",\"LexLeanRuntime.subtract\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Coverage.Colls.graphs\",\"kind\":\"definition\",\"module\":\"Coverage.Colls\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Option\",\"Prod\",\"LexLeanCollections.graphReachable\",\"LexLeanCollections.graphSuccessors\",\"LexLeanCollections.graphTopological\",\"LexLeanCollections.instKeyNat\",\"Prod.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.instKeyNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.graphSuccessors\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.graphReachable\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.graphTopological\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.18\"}}}}}}}},\"uses\":[\"List\",\"Nat\",\"Option\",\"Prod\",\"LexLeanCollections.Key\",\"LexLeanCollections.graphReachable\",\"LexLeanCollections.graphSuccessors\",\"LexLeanCollections.graphTopological\",\"LexLeanCollections.instKeyNat\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Coverage.Colls.iterations\",\"kind\":\"definition\",\"module\":\"Coverage.Colls\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Nat\",\"Option\",\"Prod\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"ite\",\"Bool.true\",\"HAdd.hAdd\",\"LexLeanCollections.iterate\",\"LexLeanCollections.iterateUntil\",\"Nat.blt\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Prod.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}}},\"parameters\":[{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.27\",\"parameters\":[{\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.21\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.24\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.22\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.26\"}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterate\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.57\",\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"10\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.40\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.44\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.45\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.46\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.47\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.49\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.52\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.50\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.55\"}}}}}}}}}}]}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.59\"}}}}}}},\"uses\":[\"Add\",\"Bool\",\"Decidable\",\"HAdd\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanCollections.iterate\",\"LexLeanCollections.iterateUntil\",\"Nat.blt\",\"Option.none\",\"Option.some\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Coverage.Colls.keyTypes\",\"kind\":\"definition\",\"module\":\"Coverage.Colls\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Int\",\"Int8\",\"List\",\"Nat\",\"Option\",\"Prod\",\"String\",\"UInt64\",\"LexLeanCollections.instKeyBool\",\"LexLeanCollections.instKeyInt\",\"LexLeanCollections.instKeyInt8\",\"LexLeanCollections.instKeyNat\",\"LexLeanCollections.instKeyProd\",\"LexLeanCollections.instKeyString\",\"LexLeanCollections.instKeyUInt64\",\"LexLeanCollections.mapLookup\",\"Prod.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}]}}}}}}}}}}},\"parameters\":[{\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]},\"borrow\":false},{\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"borrow\":false},{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"borrow\":false},{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"borrow\":false},{\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"borrow\":false},{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.instKeyNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.instKeyString\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.instKeyProd\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.mapLookup\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.instKeyInt8\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.mapLookup\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.instKeyBool\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.mapLookup\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.67\"},{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.instKeyInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.mapLookup\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.69\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.instKeyUInt64\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.mapLookup\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.71\"},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.70\"},{\"kind\":\"fvar\",\"id\":\"_uniq.72\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.68\"},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.66\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.75\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.76\"}}}}}}}}}}}}}}}}}},\"uses\":[\"Bool\",\"Int\",\"Int8\",\"List\",\"Nat\",\"Option\",\"Prod\",\"String\",\"UInt64\",\"LexLeanCollections.Key\",\"LexLeanCollections.instKeyBool\",\"LexLeanCollections.instKeyInt\",\"LexLeanCollections.instKeyInt8\",\"LexLeanCollections.instKeyNat\",\"LexLeanCollections.instKeyProd\",\"LexLeanCollections.instKeyString\",\"LexLeanCollections.instKeyUInt64\",\"LexLeanCollections.mapLookup\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Coverage.Colls.literals\",\"kind\":\"definition\",\"module\":\"Coverage.Colls\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Prod\",\"String\",\"instOfNatNat\",\"List.cons\",\"List.nil\",\"OfNat.ofNat\",\"Prod.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"a\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"b\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.17\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.24\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.27\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.40\"}}}}}}}}}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"List\",\"Nat\",\"OfNat\",\"Prod\",\"String\",\"instOfNatNat\",\"List.cons\",\"List.nil\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Coverage.Colls.mapFolding\",\"kind\":\"definition\",\"module\":\"Coverage.Colls\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Prod\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"HAdd.hAdd\",\"LexLeanCollections.mapFold\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"borrow\":false},{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.44\",\"parameters\":[{\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.23\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.40\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.40\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.40\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.43\"}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.46\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.mapFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.48\"}}}}}}},\"uses\":[\"Add\",\"HAdd\",\"List\",\"Nat\",\"OfNat\",\"Prod\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"LexLeanCollections.mapFold\"]},\"inductive\":null},{\"name\":\"Coverage.Colls.mapOps\",\"kind\":\"definition\",\"module\":\"Coverage.Colls\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"List\",\"Nat\",\"Option\",\"Prod\",\"String\",\"LexLeanCollections.instKeyString\",\"LexLeanCollections.mapContains\",\"LexLeanCollections.mapEntries\",\"LexLeanCollections.mapInsert\",\"LexLeanCollections.mapKeys\",\"LexLeanCollections.mapLookup\",\"LexLeanCollections.mapRemove\",\"LexLeanCollections.mapSize\",\"LexLeanCollections.mapValues\",\"Prod.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}]}]}]}]}]}}}},\"parameters\":[{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.instKeyString\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.mapInsert\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.mapRemove\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.mapLookup\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.mapContains\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.mapKeys\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.mapValues\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.mapSize\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.mapEntries\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.34\"}}}}}}}}}}}}}}}}}},\"uses\":[\"Bool\",\"List\",\"Nat\",\"Option\",\"Prod\",\"String\",\"LexLeanCollections.Key\",\"LexLeanCollections.instKeyString\",\"LexLeanCollections.mapContains\",\"LexLeanCollections.mapEntries\",\"LexLeanCollections.mapInsert\",\"LexLeanCollections.mapKeys\",\"LexLeanCollections.mapLookup\",\"LexLeanCollections.mapRemove\",\"LexLeanCollections.mapSize\",\"LexLeanCollections.mapValues\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Coverage.Colls.setOps\",\"kind\":\"definition\",\"module\":\"Coverage.Colls\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"List\",\"Nat\",\"Prod\",\"LexLeanCollections.instKeyNat\",\"LexLeanCollections.setContains\",\"LexLeanCollections.setDifference\",\"LexLeanCollections.setElements\",\"LexLeanCollections.setInsert\",\"LexLeanCollections.setIntersection\",\"LexLeanCollections.setRemove\",\"LexLeanCollections.setSize\",\"LexLeanCollections.setUnion\",\"Prod.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}]}]}]}]}}}},\"parameters\":[{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.instKeyNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.setInsert\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.setRemove\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.setContains\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.setUnion\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.setIntersection\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.setDifference\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.setSize\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.setElements\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.34\"}}}}}}}}}}}}}}}}}},\"uses\":[\"Bool\",\"List\",\"Nat\",\"Prod\",\"LexLeanCollections.Key\",\"LexLeanCollections.instKeyNat\",\"LexLeanCollections.setContains\",\"LexLeanCollections.setDifference\",\"LexLeanCollections.setElements\",\"LexLeanCollections.setInsert\",\"LexLeanCollections.setIntersection\",\"LexLeanCollections.setRemove\",\"LexLeanCollections.setSize\",\"LexLeanCollections.setUnion\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Coverage.Colls.stringGraph\",\"kind\":\"definition\",\"module\":\"Coverage.Colls\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Prod\",\"String\",\"LexLeanCollections.graphTopological\",\"LexLeanCollections.instKeyString\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.instKeyString\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.graphTopological\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.8\"}}}},\"uses\":[\"List\",\"Option\",\"Prod\",\"String\",\"LexLeanCollections.Key\",\"LexLeanCollections.graphTopological\",\"LexLeanCollections.instKeyString\"]},\"inductive\":null},{\"name\":\"Coverage.Main.builders\",\"kind\":\"definition\",\"module\":\"Coverage.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Except\",\"Nat\",\"Option\",\"Unit\",\"instDecidableEqBool\",\"instOfNatNat\",\"ite\",\"Bool.true\",\"Except.error\",\"Except.ok\",\"Nat.blt\",\"Nat.succ\",\"Nat.zero\",\"OfNat.ofNat\",\"Option.some\",\"Prod.mk\",\"Unit.unit\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"parameters\":[{\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.succ\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.23\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.48\",\"parameters\":[{\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.47\"}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.27\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.48\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.zero\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.48\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]}}}}]}}}}}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Except\",\"Nat\",\"OfNat\",\"Option\",\"PUnit\",\"Prod\",\"instDecidableEqBool\",\"instOfNatNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Except.error\",\"Except.ok\",\"Nat.blt\",\"Nat.succ\",\"Nat.zero\",\"Option.some\",\"Prod.mk\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"Coverage.Main.double\",\"kind\":\"definition\",\"module\":\"Coverage.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instAddNat\",\"instHAdd\",\"HAdd.hAdd\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.8\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.9\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.10\"}}}}}},\"uses\":[\"Add\",\"HAdd\",\"Nat\",\"instAddNat\",\"instHAdd\"]},\"inductive\":null},{\"name\":\"Coverage.Main.higher\",\"kind\":\"definition\",\"module\":\"Coverage.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instAddNat\",\"instHAdd\",\"instMulNat\",\"instOfNatNat\",\"instSubNat\",\"HAdd.hAdd\",\"LexLeanRuntime.multiply\",\"LexLeanRuntime.subtract\",\"OfNat.ofNat\",\"Coverage.Main.double\",\"Coverage.Types.twice\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.20\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.23\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.21\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.25\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.32\",\"parameters\":[{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Mul\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instMulNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.multiply\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.21\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.twice\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.39\",\"parameters\":[{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.38\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.39\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Main.double\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.twice\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.21\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.21\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.44\"}}}}}}}}}}}}}}}}}},\"uses\":[\"Add\",\"HAdd\",\"Mul\",\"Nat\",\"OfNat\",\"Sub\",\"instAddNat\",\"instHAdd\",\"instMulNat\",\"instOfNatNat\",\"instSubNat\",\"LexLeanRuntime.multiply\",\"LexLeanRuntime.subtract\",\"Coverage.Main.double\",\"Coverage.Types.twice\"]},\"inductive\":null},{\"name\":\"Coverage.Main.intOps\",\"kind\":\"definition\",\"module\":\"Coverage.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"instOfNat\",\"Int.instMul\",\"Int.instNegInt\",\"Int.instSub\",\"LexLeanRuntime.instQuotientInt\",\"LexLeanRuntime.multiply\",\"LexLeanRuntime.negate\",\"LexLeanRuntime.quotient\",\"LexLeanRuntime.remainder\",\"LexLeanRuntime.subtract\",\"Neg.neg\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instSub\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Mul\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instMul\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Neg\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instNegInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Neg\",\"index\":0,\"value\":\"_uniq.15\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.24\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.22\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.multiply\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instQuotientInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.quotient\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.34\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.remainder\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.negate\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.38\"}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Int\",\"Mul\",\"Nat\",\"Neg\",\"OfNat\",\"Sub\",\"instOfNat\",\"Int.instMul\",\"Int.instNegInt\",\"Int.instSub\",\"LexLeanRuntime.Quotient\",\"LexLeanRuntime.instQuotientInt\",\"LexLeanRuntime.multiply\",\"LexLeanRuntime.negate\",\"LexLeanRuntime.quotient\",\"LexLeanRuntime.remainder\",\"LexLeanRuntime.subtract\"]},\"inductive\":null},{\"name\":\"Coverage.Main.mapped\",\"kind\":\"definition\",\"module\":\"Coverage.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"List\",\"Nat\",\"Coverage.Types.isEven\",\"Coverage.Types.mapList\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.isEven\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.mapList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.8\"}}}},\"uses\":[\"Bool\",\"List\",\"Nat\",\"Coverage.Types.isEven\",\"Coverage.Types.mapList\"]},\"inductive\":null},{\"name\":\"Coverage.Main.natOps\",\"kind\":\"definition\",\"module\":\"Coverage.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Nat\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instMulNat\",\"instOfNatNat\",\"instSubNat\",\"ite\",\"Bool.and\",\"Bool.not\",\"Bool.or\",\"Bool.true\",\"HAdd.hAdd\",\"LexLeanRuntime.instQuotientNat\",\"LexLeanRuntime.multiply\",\"LexLeanRuntime.quotient\",\"LexLeanRuntime.remainder\",\"LexLeanRuntime.subtract\",\"Nat.beq\",\"Nat.ble\",\"Nat.blt\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Quotient\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instQuotientNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"7\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.51\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.quotient\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"},{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.53\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.56\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.remainder\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.58\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.75\",\"parameters\":[{\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.74\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.75\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.108\",\"parameters\":[{\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.87\",\"parameters\":[{\"id\":\"_uniq.85\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.86\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.87\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.93\",\"parameters\":[{\"id\":\"_uniq.90\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.not\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.91\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.92\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.93\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.99\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.100\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.101\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.102\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.94\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.104\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.88\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.105\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.106\"}}}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.108\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.133\",\"parameters\":[{\"id\":\"_uniq.119\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.120\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.121\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.119\"},{\"kind\":\"fvar\",\"id\":\"_uniq.120\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.121\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.122\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Mul\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instMulNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.124\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.multiply\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.123\"},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.124\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.125\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.127\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.126\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.128\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.127\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.129\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.130\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.129\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.131\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.128\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.130\"},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.131\"}}}}}}}}]}}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.136\",\"parameters\":[{\"id\":\"_uniq.134\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.135\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.76\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.134\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.133\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.135\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.139\",\"parameters\":[{\"id\":\"_uniq.137\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.138\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.109\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.137\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.133\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.138\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.114\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.136\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.115\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.139\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.117\"}]}}}]}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Add\",\"Bool\",\"Decidable\",\"HAdd\",\"Mul\",\"Nat\",\"OfNat\",\"PUnit\",\"Sub\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instMulNat\",\"instOfNatNat\",\"instSubNat\",\"Bool.false\",\"Bool.not\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.Quotient\",\"LexLeanRuntime.instQuotientNat\",\"LexLeanRuntime.multiply\",\"LexLeanRuntime.quotient\",\"LexLeanRuntime.remainder\",\"LexLeanRuntime.subtract\",\"Nat.beq\",\"Nat.ble\",\"Nat.blt\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"Coverage.Main.options\",\"kind\":\"definition\",\"module\":\"Coverage.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Except\",\"Nat\",\"Option\",\"Unit\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"ite\",\"Bool.true\",\"HAdd.hAdd\",\"OfNat.ofNat\",\"Coverage.Main.options.match_1\",\"Coverage.Main.options.match_3\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.48\"},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.59\",\"parameters\":[{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.57\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.58\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.59\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.65\",\"parameters\":[{\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.64\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.131\",\"parameters\":[{\"id\":\"_uniq.78\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.106\",\"parameters\":[{\"id\":\"_uniq.86\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.86\"},{\"kind\":\"fvar\",\"id\":\"_uniq.95\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.96\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.97\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.98\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.99\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.100\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.101\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.102\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.103\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.104\"}}}}}]}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.106\",\"arguments\":[]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.124\",\"parameters\":[{\"id\":\"_uniq.122\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.49\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.78\"},{\"kind\":\"fvar\",\"id\":\"_uniq.122\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.123\"}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.130\",\"parameters\":[{\"id\":\"_uniq.128\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.129\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.82\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.128\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.124\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.129\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.127\",\"parameters\":[{\"id\":\"_uniq.125\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.107\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.125\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.124\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.126\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Except\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.46\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Except.error\",\"parameters\":[{\"id\":\"_uniq.118\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.127\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.118\"}]}},{\"kind\":\"constructor\",\"constructor\":\"Except.ok\",\"parameters\":[{\"id\":\"_uniq.120\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.130\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.120\"}]}}]}}}}}}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.134\",\"parameters\":[{\"id\":\"_uniq.132\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.60\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.132\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.131\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.133\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.137\",\"parameters\":[{\"id\":\"_uniq.135\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.66\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.135\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.131\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.136\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.45\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.134\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.137\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}}]}}}}}}}}}}}},\"uses\":[\"Add\",\"Bool\",\"Decidable\",\"Except\",\"HAdd\",\"Nat\",\"OfNat\",\"Option\",\"PUnit\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Except.error\",\"Except.ok\",\"Option.none\",\"Option.some\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"Coverage.Main.pairs\",\"kind\":\"definition\",\"module\":\"Coverage.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Nat\",\"Prod\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.6\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.6\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.9\"}}}}},\"uses\":[\"Bool\",\"Nat\",\"Prod\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Coverage.Main.parity\",\"kind\":\"definition\",\"module\":\"Coverage.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Coverage.Types.isOdd\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.isOdd\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}},\"uses\":[\"Bool\",\"Nat\",\"Coverage.Types.isOdd\"]},\"inductive\":null},{\"name\":\"Coverage.Main.records\",\"kind\":\"definition\",\"module\":\"Coverage.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"HAdd.hAdd\",\"OfNat.ofNat\",\"Prod.mk\",\"Coverage.Types.Point\",\"Coverage.Types.defaultWeights\",\"Coverage.Types.unbox\",\"Coverage.Types.Box.mk\",\"Coverage.Types.Point.mk\",\"Coverage.Types.Point.x\",\"Coverage.Types.Point.y\",\"Coverage.Types.Weights.scale\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Point\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Point.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Point\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.19\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Coverage.Types.Point\",\"index\":0,\"value\":\"_uniq.20\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Weights\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.defaultWeights\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Coverage.Types.Weights\",\"index\":1,\"value\":\"_uniq.25\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.23\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Coverage.Types.Point\",\"index\":1,\"value\":\"_uniq.20\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.32\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Box\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Box.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.unbox\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.39\"}}}}}}}}}}}}}}}}}},\"uses\":[\"Add\",\"HAdd\",\"Nat\",\"OfNat\",\"Prod\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"Prod.mk\",\"Coverage.Types.Box\",\"Coverage.Types.Point\",\"Coverage.Types.Weights\",\"Coverage.Types.defaultWeights\",\"Coverage.Types.unbox\",\"Coverage.Types.Box.mk\",\"Coverage.Types.Point.mk\"]},\"inductive\":null},{\"name\":\"Coverage.Main.shapes\",\"kind\":\"definition\",\"module\":\"Coverage.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instAddNat\",\"instHAdd\",\"HAdd.hAdd\",\"Coverage.Types.area\",\"Coverage.Types.Shape.circle\",\"Coverage.Types.Shape.empty\",\"Coverage.Types.Shape.rect\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.14\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Shape\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Shape.rect\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.area\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Shape\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Shape.circle\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.area\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Shape\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Shape.empty\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.area\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.15\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.15\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.26\"}}}}}}}}}}}}},\"uses\":[\"Add\",\"HAdd\",\"Nat\",\"instAddNat\",\"instHAdd\",\"Coverage.Types.Shape\",\"Coverage.Types.area\",\"Coverage.Types.Shape.circle\",\"Coverage.Types.Shape.empty\",\"Coverage.Types.Shape.rect\"]},\"inductive\":null},{\"name\":\"Coverage.Main.treeTotal\",\"kind\":\"definition\",\"module\":\"Coverage.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"OfNat.ofNat\",\"Coverage.Types.treeSum\",\"Coverage.Types.Tree.leaf\",\"Coverage.Types.Tree.node\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Tree\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Tree.leaf\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"5\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.9\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Tree\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Tree.node\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Tree\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Tree.node\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.treeSum\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.16\"}}}}}}}}},\"uses\":[\"Nat\",\"OfNat\",\"instOfNatNat\",\"Coverage.Types.Tree\",\"Coverage.Types.treeSum\",\"Coverage.Types.Tree.leaf\",\"Coverage.Types.Tree.node\"]},\"inductive\":null},{\"name\":\"Coverage.Prims.bits\",\"kind\":\"definition\",\"module\":\"Coverage.Prims\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Option\",\"Prod\",\"UInt16\",\"UInt32\",\"instBEqOfDecidableEq\",\"instDecidableEqUInt16\",\"LexLeanRuntime.bitAnd\",\"LexLeanRuntime.bitNot\",\"LexLeanRuntime.bitOr\",\"LexLeanRuntime.bitXor\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.instFixedUInt16\",\"LexLeanRuntime.shiftLeft\",\"LexLeanRuntime.shiftRight\",\"OfNat.ofNat\",\"Prod.mk\",\"UInt32.instOfNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]}]}}}},\"parameters\":[{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instFixedUInt16\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.bitAnd\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.bitOr\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.bitXor\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.bitNot\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.shiftLeft\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.26\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.shiftRight\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqUInt16\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.39\"}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"BEq\",\"Bool\",\"Decidable\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"UInt16\",\"UInt32\",\"instBEqOfDecidableEq\",\"instDecidableEqUInt16\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.bitAnd\",\"LexLeanRuntime.bitNot\",\"LexLeanRuntime.bitOr\",\"LexLeanRuntime.bitXor\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.instFixedUInt16\",\"LexLeanRuntime.shiftLeft\",\"LexLeanRuntime.shiftRight\",\"Prod.mk\",\"UInt32.instOfNat\"]},\"inductive\":null},{\"name\":\"Coverage.Prims.conversions\",\"kind\":\"definition\",\"module\":\"Coverage.Prims\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"Int64\",\"Int8\",\"Option\",\"UInt16\",\"LexLeanRuntime.checkedConvert\",\"LexLeanRuntime.instFixedInt64\",\"LexLeanRuntime.instFixedInt8\",\"LexLeanRuntime.instFixedUInt16\",\"LexLeanRuntime.instToMathIntInt\",\"Prod.mk\",\"LexLeanRuntime.Fixed.toToMathInt\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instToMathIntInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instFixedUInt16\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedConvert\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instFixedInt8\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":0,\"value\":\"_uniq.16\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instFixedInt64\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedConvert\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt16\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.20\"}}}}}}}}}},\"uses\":[\"Int\",\"Int64\",\"Int8\",\"Option\",\"Prod\",\"UInt16\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.ToMathInt\",\"LexLeanRuntime.checkedConvert\",\"LexLeanRuntime.instFixedInt64\",\"LexLeanRuntime.instFixedInt8\",\"LexLeanRuntime.instFixedUInt16\",\"LexLeanRuntime.instToMathIntInt\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Coverage.Prims.decimals\",\"kind\":\"definition\",\"module\":\"Coverage.Prims\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"Option\",\"String\",\"UInt32\",\"instToStringUInt32\",\"LexLeanRuntime.instDecimalInt\",\"LexLeanRuntime.instDecimalOfFixedOfToString\",\"LexLeanRuntime.instFixedUInt32\",\"LexLeanRuntime.parseDecimal\",\"Prod.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Decimal\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instDecimalInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.parseDecimal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instFixedUInt32\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"ToString\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instToStringUInt32\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Decimal\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instDecimalOfFixedOfToString\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.parseDecimal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.13\"}}}}}}}}},\"uses\":[\"Int\",\"Option\",\"Prod\",\"String\",\"ToString\",\"UInt32\",\"instToStringUInt32\",\"LexLeanRuntime.Decimal\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.instDecimalInt\",\"LexLeanRuntime.instDecimalOfFixedOfToString\",\"LexLeanRuntime.instFixedUInt32\",\"LexLeanRuntime.parseDecimal\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Coverage.Prims.fixedMiddle\",\"kind\":\"definition\",\"module\":\"Coverage.Prims\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Int16\",\"Int32\",\"Option\",\"Prod\",\"instBEqOfDecidableEq\",\"instDecidableEqInt32\",\"Int32.instNeg\",\"Int32.instOfNat\",\"LexLeanRuntime.checkedAdd\",\"LexLeanRuntime.checkedConvert\",\"LexLeanRuntime.checkedMultiply\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.instFixedInt16\",\"LexLeanRuntime.instFixedInt32\",\"Neg.neg\",\"OfNat.ofNat\",\"Prod.mk\",\"LexLeanRuntime.Fixed.toToMathInt\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instFixedInt16\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedMultiply\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instFixedInt32\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Neg\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int32.instNeg\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Neg\",\"index\":0,\"value\":\"_uniq.16\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"7\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int32.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.19\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.17\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedAdd\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":0,\"value\":\"_uniq.13\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedConvert\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqInt32\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int32.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.53\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"},{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int16\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int32\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.58\"}}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"BEq\",\"Bool\",\"Decidable\",\"Int16\",\"Int32\",\"Nat\",\"Neg\",\"OfNat\",\"Option\",\"Prod\",\"instBEqOfDecidableEq\",\"instDecidableEqInt32\",\"Int32.instNeg\",\"Int32.instOfNat\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.ToMathInt\",\"LexLeanRuntime.checkedAdd\",\"LexLeanRuntime.checkedConvert\",\"LexLeanRuntime.checkedMultiply\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.instFixedInt16\",\"LexLeanRuntime.instFixedInt32\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Coverage.Prims.fixedSmall\",\"kind\":\"definition\",\"module\":\"Coverage.Prims\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int8\",\"Option\",\"Prod\",\"LexLeanRuntime.checkedAdd\",\"LexLeanRuntime.checkedMultiply\",\"LexLeanRuntime.checkedNegate\",\"LexLeanRuntime.checkedQuotient\",\"LexLeanRuntime.checkedSubtract\",\"LexLeanRuntime.instFixedInt8\",\"Prod.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]}]}]}]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instFixedInt8\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedAdd\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedSubtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedMultiply\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedQuotient\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedNegate\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.22\"}}}}}}}}}}}},\"uses\":[\"Int8\",\"Option\",\"Prod\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.checkedAdd\",\"LexLeanRuntime.checkedMultiply\",\"LexLeanRuntime.checkedNegate\",\"LexLeanRuntime.checkedQuotient\",\"LexLeanRuntime.checkedSubtract\",\"LexLeanRuntime.instFixedInt8\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Coverage.Prims.fixedWide\",\"kind\":\"definition\",\"module\":\"Coverage.Prims\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int64\",\"Option\",\"Prod\",\"UInt64\",\"LexLeanRuntime.checkedAdd\",\"LexLeanRuntime.checkedAddInt64\",\"LexLeanRuntime.checkedMultiplyInt64\",\"LexLeanRuntime.checkedNegateInt64\",\"LexLeanRuntime.checkedQuotientInt64\",\"LexLeanRuntime.checkedSubtractInt64\",\"LexLeanRuntime.instFixedUInt64\",\"OfNat.ofNat\",\"Prod.mk\",\"UInt64.instOfNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]}]}]}]}]}]}}}},\"parameters\":[{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedAddInt64\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedSubtractInt64\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedMultiplyInt64\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedQuotientInt64\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedNegateInt64\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instFixedUInt64\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt64.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.26\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedAdd\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int64\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt64\",\"levels\":[]}]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.33\"}}}}}}}}}}}}}}}}},\"uses\":[\"Int64\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"UInt64\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.checkedAdd\",\"LexLeanRuntime.checkedAddInt64\",\"LexLeanRuntime.checkedMultiplyInt64\",\"LexLeanRuntime.checkedNegateInt64\",\"LexLeanRuntime.checkedQuotientInt64\",\"LexLeanRuntime.checkedSubtractInt64\",\"LexLeanRuntime.instFixedUInt64\",\"Prod.mk\",\"UInt64.instOfNat\"]},\"inductive\":null},{\"name\":\"Coverage.Prims.formats\",\"kind\":\"definition\",\"module\":\"Coverage.Prims\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"Int8\",\"String\",\"instToStringInt8\",\"LexLeanRuntime.formatDecimal\",\"LexLeanRuntime.instDecimalInt\",\"LexLeanRuntime.instDecimalOfFixedOfToString\",\"LexLeanRuntime.instFixedInt8\",\"Prod.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Decimal\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instDecimalInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.formatDecimal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instFixedInt8\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"ToString\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instToStringInt8\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Decimal\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instDecimalOfFixedOfToString\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.formatDecimal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.19\"}}}}}}}}},\"uses\":[\"Int\",\"Int8\",\"Prod\",\"String\",\"ToString\",\"instToStringInt8\",\"LexLeanRuntime.Decimal\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.formatDecimal\",\"LexLeanRuntime.instDecimalInt\",\"LexLeanRuntime.instDecimalOfFixedOfToString\",\"LexLeanRuntime.instFixedInt8\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Coverage.Prims.sequences\",\"kind\":\"definition\",\"module\":\"Coverage.Prims\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"List\",\"Nat\",\"Option\",\"Prod\",\"UInt8\",\"instAddNat\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instDecidableEqNat\",\"instHAdd\",\"instOfNatNat\",\"Bool.true\",\"ByteArray.instBEq\",\"ByteArray.mk\",\"HAdd.hAdd\",\"LexLeanRuntime.append\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.index\",\"LexLeanRuntime.instAppendableByteArray\",\"LexLeanRuntime.instAppendableList\",\"LexLeanRuntime.instIndexableByteArrayUInt8\",\"LexLeanRuntime.instIndexableList\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.instLengthableList\",\"LexLeanRuntime.instSliceableByteArray\",\"LexLeanRuntime.instSliceableList\",\"LexLeanRuntime.length\",\"LexLeanRuntime.slice\",\"List.cons\",\"List.nil\",\"List.toArray\",\"OfNat.ofNat\",\"Prod.mk\",\"UInt8.instOfNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]}]}]}]}}}},\"parameters\":[{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.21\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"10\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.28\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.toArray\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.36\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.40\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.37\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instIndexableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.index\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instIndexableByteArrayUInt8\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.index\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instSliceableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.49\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.slice\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instSliceableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.54\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.slice\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.52\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.instBEq\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.toArray\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.69\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.70\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.68\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.72\"},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},{\"kind\":\"fvar\",\"id\":\"_uniq.75\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"},{\"kind\":\"fvar\",\"id\":\"_uniq.77\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"},{\"kind\":\"fvar\",\"id\":\"_uniq.78\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"},{\"kind\":\"fvar\",\"id\":\"_uniq.79\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.82\"}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Add\",\"Array\",\"BEq\",\"Bool\",\"ByteArray\",\"Decidable\",\"HAdd\",\"List\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"UInt8\",\"instAddNat\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instDecidableEqNat\",\"instHAdd\",\"instOfNatNat\",\"Bool.true\",\"ByteArray.instBEq\",\"ByteArray.mk\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.Indexable\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.Sliceable\",\"LexLeanRuntime.append\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.index\",\"LexLeanRuntime.instAppendableByteArray\",\"LexLeanRuntime.instAppendableList\",\"LexLeanRuntime.instIndexableByteArrayUInt8\",\"LexLeanRuntime.instIndexableList\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.instLengthableList\",\"LexLeanRuntime.instSliceableByteArray\",\"LexLeanRuntime.instSliceableList\",\"LexLeanRuntime.length\",\"LexLeanRuntime.slice\",\"List.cons\",\"List.nil\",\"List.toArray\",\"Prod.mk\",\"UInt8.instOfNat\"]},\"inductive\":null},{\"name\":\"Coverage.Prims.text\",\"kind\":\"definition\",\"module\":\"Coverage.Prims\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"List\",\"Nat\",\"Option\",\"Ordering\",\"Prod\",\"String\",\"UInt32\",\"UInt8\",\"instBEqOfDecidableEq\",\"instDecidableEqOrdering\",\"instDecidableEqString\",\"Bool.and\",\"ByteArray.mk\",\"LexLeanRuntime.compareBytes\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.instLengthableString\",\"LexLeanRuntime.join\",\"LexLeanRuntime.length\",\"LexLeanRuntime.splitExact\",\"LexLeanRuntime.utf8Decode\",\"LexLeanRuntime.utf8Encode\",\"List.cons\",\"List.nil\",\"List.toArray\",\"OfNat.ofNat\",\"Prod.mk\",\"UInt32.instOfNat\",\"UInt8.instOfNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]}]}}},\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.utf8Encode\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.30\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.utf8Decode\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.34\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"255\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.37\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.toArray\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.compareBytes\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"4\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.46\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.splitExact\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"string\",\"value\":\"x\\\"y\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.join\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.52\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableString\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.63\",\"parameters\":[{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.62\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.63\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.82\",\"parameters\":[{\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqOrdering\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.69\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.compareBytes\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.toArray\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.72\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.75\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.toArray\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.77\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.78\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.compareBytes\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},{\"kind\":\"fvar\",\"id\":\"_uniq.79\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.70\"},{\"kind\":\"fvar\",\"id\":\"_uniq.71\"},{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.81\"}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.82\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqString\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.90\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.91\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.104\",\"parameters\":[{\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},{\"kind\":\"fvar\",\"id\":\"_uniq.97\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.98\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"},{\"kind\":\"fvar\",\"id\":\"_uniq.99\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"},{\"kind\":\"fvar\",\"id\":\"_uniq.100\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.101\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.102\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.103\"}}}}}}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.110\",\"parameters\":[{\"id\":\"_uniq.108\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.83\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.104\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.109\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.107\",\"parameters\":[{\"id\":\"_uniq.105\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.64\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.105\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.104\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.106\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]}]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}]}]}]}]}]},\"discriminant\":\"_uniq.92\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.107\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.93\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.110\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.95\"}]}}}]}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Array\",\"BEq\",\"Bool\",\"ByteArray\",\"Decidable\",\"List\",\"Nat\",\"OfNat\",\"Option\",\"Ordering\",\"PUnit\",\"Prod\",\"String\",\"UInt32\",\"UInt8\",\"instBEqOfDecidableEq\",\"instDecidableEqOrdering\",\"instDecidableEqString\",\"Bool.false\",\"Bool.true\",\"ByteArray.mk\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.compareBytes\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.instLengthableString\",\"LexLeanRuntime.join\",\"LexLeanRuntime.length\",\"LexLeanRuntime.splitExact\",\"LexLeanRuntime.utf8Decode\",\"LexLeanRuntime.utf8Encode\",\"List.cons\",\"List.nil\",\"List.toArray\",\"Prod.mk\",\"UInt32.instOfNat\",\"UInt8.instOfNat\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"Coverage.RecRoots.rewrite\",\"kind\":\"definition\",\"module\":\"Coverage.RecRoots\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Prod.mk\",\"Coverage.Recur.prune\",\"Coverage.Recur.reassociate\",\"Coverage.Syntax.Term\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.reassociate\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.prune\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.9\"}}}}},\"uses\":[\"Prod\",\"Prod.mk\",\"Coverage.Recur.prune\",\"Coverage.Recur.reassociate\",\"Coverage.Syntax.Term\"]},\"inductive\":null},{\"name\":\"Coverage.RecRoots.roseTotal\",\"kind\":\"definition\",\"module\":\"Coverage.RecRoots\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"List.cons\",\"List.nil\",\"OfNat.ofNat\",\"Coverage.Recur.roseSize\",\"Coverage.Syntax.Rose\",\"Coverage.Syntax.Rose.node\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.8\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose.node\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose.node\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.roseSize\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.17\"}}}}}}}}}},\"uses\":[\"List\",\"Nat\",\"OfNat\",\"instOfNatNat\",\"List.cons\",\"List.nil\",\"Coverage.Recur.roseSize\",\"Coverage.Syntax.Rose\",\"Coverage.Syntax.Rose.node\"]},\"inductive\":null},{\"name\":\"Coverage.RecRoots.syntaxTotal\",\"kind\":\"definition\",\"module\":\"Coverage.RecRoots\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Coverage.Recur.exprSize\",\"Coverage.Syntax.Expr\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.exprSize\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}},\"uses\":[\"Nat\",\"Coverage.Recur.exprSize\",\"Coverage.Syntax.Expr\"]},\"inductive\":null},{\"name\":\"Coverage.RecRoots.wellFounded\",\"kind\":\"definition\",\"module\":\"Coverage.RecRoots\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Prod\",\"instOfNatNat\",\"OfNat.ofNat\",\"Prod.mk\",\"Coverage.Recur.countdown\",\"Coverage.Recur.reduce\",\"Coverage.Recur.search\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.14\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.countdown\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.reduce\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.search\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.20\"}}}}}}}}}},\"uses\":[\"Nat\",\"OfNat\",\"Prod\",\"instOfNatNat\",\"Prod.mk\",\"Coverage.Recur.countdown\",\"Coverage.Recur.reduce\",\"Coverage.Recur.search\"]},\"inductive\":null},{\"name\":\"Coverage.Recur.countdown\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"PSigma.mk\",\"Coverage.Recur.countdown._unary\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.41\",\"parameters\":[{\"id\":\"_uniq.40\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.33\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.41\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.60\",\"parameters\":[{\"id\":\"_uniq.46\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.49\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.53\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.56\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.54\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.countdown\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.59\"}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.60\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.75\",\"parameters\":[{\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"discriminant\":\"_uniq.66\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.61\"}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.42\"}}]}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.77\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.78\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.75\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.79\"},{\"kind\":\"erased\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.80\"}}}}}}}}}}}},\"uses\":[\"Add\",\"Bool\",\"HAdd\",\"Nat\",\"OfNat\",\"Sub\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"instSubNat\",\"Bool.false\",\"Bool.true\",\"LexLeanRuntime.subtract\",\"Nat.blt\",\"Coverage.Recur.countdown\"]},\"inductive\":null},{\"name\":\"Coverage.Recur.countdown_decreases\",\"kind\":\"theorem\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Nat\",\"Not\",\"congrArg\",\"id\",\"instHSub\",\"instLTNat\",\"instOfNatNat\",\"instSubNat\",\"Bool.false\",\"Bool.true\",\"Decidable.byContradiction\",\"Eq.mp\",\"Eq.trans\",\"HSub.hSub\",\"LT.lt\",\"LexLeanRuntime.subtract\",\"Nat.blt\",\"Nat.blt_eq\",\"Nat.decLt\",\"OfNat.ofNat\",\"_private.Coverage.Recur.0.Coverage.Recur.countdown_decreases._proof_1_32\",\"_private.Coverage.Recur.0.Coverage.Recur.countdown_decreases._simp_1_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.exprSize\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Coverage.Syntax.Expr\",\"Coverage.Syntax.Stmt\",\"Coverage.Recur.exprSize._f\",\"Coverage.Recur.statementSize._f\",\"Coverage.Recur.statementsSize._f\",\"Coverage.Syntax.Expr.brecOn\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.54\",\"parameters\":[{\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.52\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.53\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.54\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.73\",\"parameters\":[{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.62\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.64\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.exprSize\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.exprSize\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.66\"},{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.69\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.70\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.68\"},{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.72\"}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.73\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.88\",\"parameters\":[{\"id\":\"_uniq.80\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.82\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.83\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.statementsSize\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.exprSize\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.84\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.85\"},{\"kind\":\"fvar\",\"id\":\"_uniq.86\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.87\"}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.88\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Coverage.Syntax.Expr\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.43\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Coverage.Syntax.Expr.literal\",\"parameters\":[{\"id\":\"_uniq.100\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.55\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.100\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.101\"}}},{\"kind\":\"constructor\",\"constructor\":\"Coverage.Syntax.Expr.plus\",\"parameters\":[{\"id\":\"_uniq.102\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.103\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.74\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.102\"},{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.104\"}}},{\"kind\":\"constructor\",\"constructor\":\"Coverage.Syntax.Expr.block\",\"parameters\":[{\"id\":\"_uniq.105\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.106\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.89\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.105\"},{\"kind\":\"fvar\",\"id\":\"_uniq.106\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.107\"}}}]}}}}}}}},\"uses\":[\"Add\",\"HAdd\",\"List\",\"Nat\",\"OfNat\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"Coverage.Recur.exprSize\",\"Coverage.Recur.statementsSize\",\"Coverage.Syntax.Expr\",\"Coverage.Syntax.Stmt\",\"Coverage.Syntax.Expr.block\",\"Coverage.Syntax.Expr.literal\",\"Coverage.Syntax.Expr.plus\"]},\"inductive\":null},{\"name\":\"Coverage.Recur.forestSize\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Coverage.Syntax.Rose\",\"Coverage.Recur.forestSize._f\",\"Coverage.Recur.roseSize._f\",\"Coverage.Syntax.Rose.brecOn_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.46\",\"parameters\":[{\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.44\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.45\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.46\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.61\",\"parameters\":[{\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"borrow\":false},{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.56\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.roseSize\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.forestSize\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.57\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.58\"},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.60\"}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.61\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.36\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.47\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.72\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.73\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"borrow\":false},{\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.62\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.75\"}}}]}}}}}},\"uses\":[\"Add\",\"HAdd\",\"List\",\"Nat\",\"OfNat\",\"PUnit\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"List.cons\",\"List.nil\",\"Unit.unit\",\"Coverage.Recur.forestSize\",\"Coverage.Recur.roseSize\",\"Coverage.Syntax.Rose\"]},\"inductive\":null},{\"name\":\"Coverage.Recur.prune\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Eq\",\"InvImage\",\"Nat\",\"instLTNat\",\"LT.lt\",\"Coverage.Recur.weight\",\"Coverage.Syntax.Term\",\"WellFounded.Nat.fix\",\"Coverage.Recur.prune._proof_1\",\"Coverage.Recur.prune._proof_2\",\"Coverage.Recur.reassociate.match_1\",\"Coverage.Syntax.Term.literal\",\"Coverage.Syntax.Term.plus\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.83\",\"parameters\":[{\"id\":\"_uniq.79\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.80\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term.literal\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.79\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.82\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.83\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.149\",\"parameters\":[{\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.98\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.99\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.110\",\"parameters\":[{\"id\":\"_uniq.107\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.108\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.prune\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.98\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.109\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.111\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.110\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.125\",\"parameters\":[{\"id\":\"_uniq.118\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.119\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.120\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term.plus\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.118\"},{\"kind\":\"fvar\",\"id\":\"_uniq.98\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.124\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.prune\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.123\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.124\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.125\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.147\",\"parameters\":[{\"id\":\"_uniq.131\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Coverage.Syntax.Term\",\"result_type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}},\"discriminant\":\"_uniq.131\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Coverage.Syntax.Term.literal\",\"parameters\":[{\"id\":\"_uniq.141\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.142\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.111\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.141\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.142\"}}},{\"kind\":\"constructor\",\"constructor\":\"Coverage.Syntax.Term.plus\",\"parameters\":[{\"id\":\"_uniq.143\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.144\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.145\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.126\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.143\"},{\"kind\":\"fvar\",\"id\":\"_uniq.144\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.145\"}}}]}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.148\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.147\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.97\"},{\"kind\":\"erased\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.148\"}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.150\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.149\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.171\",\"parameters\":[{\"id\":\"_uniq.155\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Coverage.Syntax.Term\",\"result_type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}},\"discriminant\":\"_uniq.155\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Coverage.Syntax.Term.literal\",\"parameters\":[{\"id\":\"_uniq.165\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.166\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.84\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.165\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.166\"}}},{\"kind\":\"constructor\",\"constructor\":\"Coverage.Syntax.Term.plus\",\"parameters\":[{\"id\":\"_uniq.167\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.168\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.169\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.150\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.167\"},{\"kind\":\"fvar\",\"id\":\"_uniq.168\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.169\"}}}]}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.172\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.171\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.71\"},{\"kind\":\"erased\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.172\"}}}}}}}},\"uses\":[\"Nat\",\"Coverage.Recur.prune\",\"Coverage.Syntax.Term\",\"Coverage.Syntax.Term.literal\",\"Coverage.Syntax.Term.plus\"]},\"inductive\":null},{\"name\":\"Coverage.Recur.prune_plus\",\"kind\":\"theorem\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":false,\"kernel_uses\":[\"Eq\",\"Nat\",\"Not\",\"congr\",\"congrArg\",\"congrFun'\",\"id\",\"instAddNat\",\"instHAdd\",\"instLTNat\",\"instOfNatNat\",\"Decidable.byContradiction\",\"Eq.mpr\",\"Eq.ndrec\",\"Eq.symm\",\"Eq.trans\",\"HAdd.hAdd\",\"LT.lt\",\"Nat.add_assoc\",\"Nat.decLt\",\"OfNat.ofNat\",\"Coverage.Recur.weight\",\"Coverage.Syntax.Term\",\"Coverage.Syntax.Term.plus\",\"_private.Coverage.Recur.0.Coverage.Recur.prune_plus._proof_1_35\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.reassociate\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Eq\",\"InvImage\",\"Nat\",\"instLTNat\",\"LT.lt\",\"Coverage.Recur.weight\",\"Coverage.Syntax.Term\",\"WellFounded.Nat.fix\",\"Coverage.Recur.reassociate._proof_1\",\"Coverage.Recur.reassociate._proof_2\",\"Coverage.Recur.reassociate.match_1\",\"Coverage.Syntax.Term.literal\",\"Coverage.Syntax.Term.plus\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.82\",\"parameters\":[{\"id\":\"_uniq.79\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.80\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term.literal\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.79\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.81\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.82\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.149\",\"parameters\":[{\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.98\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.111\",\"parameters\":[{\"id\":\"_uniq.106\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.107\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term.literal\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.106\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.reassociate\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.97\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.110\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term.plus\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.108\"},{\"kind\":\"fvar\",\"id\":\"_uniq.109\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.110\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.111\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.125\",\"parameters\":[{\"id\":\"_uniq.119\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.120\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.121\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term.plus\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.120\"},{\"kind\":\"fvar\",\"id\":\"_uniq.97\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term.plus\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.119\"},{\"kind\":\"fvar\",\"id\":\"_uniq.122\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.124\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.reassociate\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.123\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.124\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.125\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.147\",\"parameters\":[{\"id\":\"_uniq.131\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Coverage.Syntax.Term\",\"result_type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}},\"discriminant\":\"_uniq.131\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Coverage.Syntax.Term.literal\",\"parameters\":[{\"id\":\"_uniq.141\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.142\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.112\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.141\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.142\"}}},{\"kind\":\"constructor\",\"constructor\":\"Coverage.Syntax.Term.plus\",\"parameters\":[{\"id\":\"_uniq.143\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.144\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.145\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.126\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.143\"},{\"kind\":\"fvar\",\"id\":\"_uniq.144\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.145\"}}}]}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.148\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.147\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.96\"},{\"kind\":\"erased\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.148\"}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.150\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.149\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.171\",\"parameters\":[{\"id\":\"_uniq.155\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Coverage.Syntax.Term\",\"result_type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}},\"discriminant\":\"_uniq.155\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Coverage.Syntax.Term.literal\",\"parameters\":[{\"id\":\"_uniq.165\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.166\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.83\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.165\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.166\"}}},{\"kind\":\"constructor\",\"constructor\":\"Coverage.Syntax.Term.plus\",\"parameters\":[{\"id\":\"_uniq.167\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.168\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.169\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.150\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.167\"},{\"kind\":\"fvar\",\"id\":\"_uniq.168\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.169\"}}}]}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.172\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.171\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.71\"},{\"kind\":\"erased\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.172\"}}}}}}}},\"uses\":[\"Nat\",\"Coverage.Recur.reassociate\",\"Coverage.Syntax.Term\",\"Coverage.Syntax.Term.literal\",\"Coverage.Syntax.Term.plus\"]},\"inductive\":null},{\"name\":\"Coverage.Recur.reassociate_literal\",\"kind\":\"theorem\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":false,\"kernel_uses\":[\"Eq\",\"Nat\",\"Not\",\"congrArg\",\"congrFun'\",\"id\",\"instAddNat\",\"instHAdd\",\"instLTNat\",\"instOfNatNat\",\"Decidable.byContradiction\",\"Eq.mpr\",\"Eq.ndrec\",\"Eq.symm\",\"Eq.trans\",\"HAdd.hAdd\",\"LT.lt\",\"Nat.add_assoc\",\"Nat.decLt\",\"OfNat.ofNat\",\"Coverage.Recur.weight\",\"Coverage.Syntax.Term\",\"Coverage.Syntax.Term.literal\",\"Coverage.Syntax.Term.plus\",\"_private.Coverage.Recur.0.Coverage.Recur.reassociate_literal._proof_1_35\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.reassociate_plus\",\"kind\":\"theorem\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":false,\"kernel_uses\":[\"Eq\",\"Nat\",\"Not\",\"congr\",\"congrArg\",\"congrFun'\",\"id\",\"instAddNat\",\"instHAdd\",\"instLTNat\",\"instOfNatNat\",\"Decidable.byContradiction\",\"Eq.mpr\",\"Eq.ndrec\",\"Eq.symm\",\"Eq.trans\",\"HAdd.hAdd\",\"LT.lt\",\"Nat.add_assoc\",\"Nat.decLt\",\"OfNat.ofNat\",\"Coverage.Recur.weight\",\"Coverage.Syntax.Term\",\"Coverage.Syntax.Term.plus\",\"_private.Coverage.Recur.0.Coverage.Recur.reassociate_plus._proof_1_35\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.reduce\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Coverage.Recur.reduce._unary\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.57\",\"parameters\":[{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.48\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.57\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.101\",\"parameters\":[{\"id\":\"_uniq.66\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.74\",\"parameters\":[{\"id\":\"_uniq.73\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.48\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.74\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.83\",\"parameters\":[{\"id\":\"_uniq.79\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.reduce\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.81\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.82\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.83\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.98\",\"parameters\":[{\"id\":\"_uniq.89\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"discriminant\":\"_uniq.89\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.84\"}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.75\"}}]}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.48\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.98\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.99\"},{\"kind\":\"erased\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.100\"}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.101\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.116\",\"parameters\":[{\"id\":\"_uniq.107\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"discriminant\":\"_uniq.107\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.102\"}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.58\"}}]}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.118\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.117\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.118\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.120\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"},{\"kind\":\"fvar\",\"id\":\"_uniq.119\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.121\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.116\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.120\"},{\"kind\":\"erased\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.121\"}}}}}}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"Sub\",\"instOfNatNat\",\"instSubNat\",\"Bool.false\",\"Bool.true\",\"LexLeanRuntime.subtract\",\"Nat.beq\",\"Nat.blt\",\"Coverage.Recur.reduce\"]},\"inductive\":null},{\"name\":\"Coverage.Recur.reduce_decreases\",\"kind\":\"theorem\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Nat\",\"Not\",\"congrArg\",\"id\",\"instHSub\",\"instLTNat\",\"instOfNatNat\",\"instSubNat\",\"Bool.false\",\"Bool.true\",\"Decidable.byContradiction\",\"Eq.mp\",\"Eq.trans\",\"HSub.hSub\",\"LT.lt\",\"LexLeanRuntime.subtract\",\"Nat.beq\",\"Nat.beq_eq\",\"Nat.blt\",\"Nat.blt_eq\",\"Nat.decLt\",\"OfNat.ofNat\",\"_private.Coverage.Recur.0.Coverage.Recur.reduce_decreases._proof_1_32\",\"_private.Coverage.Recur.0.Coverage.Recur.reduce_decreases._simp_1_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.roseSize\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Coverage.Syntax.Rose\",\"Coverage.Recur.forestSize._f\",\"Coverage.Recur.roseSize._f\",\"Coverage.Syntax.Rose.brecOn\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.47\",\"parameters\":[{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},\"borrow\":false},{\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.40\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.43\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.forestSize\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.41\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.44\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.46\"}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.47\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Coverage.Syntax.Rose\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.29\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Coverage.Syntax.Rose.node\",\"parameters\":[{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},\"borrow\":false},{\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.48\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.58\"}}}]}}}},\"uses\":[\"Add\",\"HAdd\",\"List\",\"Nat\",\"OfNat\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"Coverage.Recur.forestSize\",\"Coverage.Syntax.Rose\",\"Coverage.Syntax.Rose.node\"]},\"inductive\":null},{\"name\":\"Coverage.Recur.search\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Coverage.Recur.search._unary\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}}},\"parameters\":[{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.111\",\"parameters\":[{\"id\":\"_uniq.67\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.75\",\"parameters\":[{\"id\":\"_uniq.74\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.55\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.75\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.89\",\"parameters\":[{\"id\":\"_uniq.80\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.82\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.84\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.85\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.83\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},{\"kind\":\"fvar\",\"id\":\"_uniq.86\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.search\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.88\"}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.89\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.104\",\"parameters\":[{\"id\":\"_uniq.95\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"discriminant\":\"_uniq.95\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.90\"}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.76\"}}]}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.105\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.106\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.107\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.110\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.104\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.109\"},{\"kind\":\"erased\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.110\"}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.111\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.117\",\"parameters\":[{\"id\":\"_uniq.116\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.56\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.118\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.117\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.132\",\"parameters\":[{\"id\":\"_uniq.123\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"discriminant\":\"_uniq.123\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.118\"}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.112\"}}]}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.132\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.133\"},{\"kind\":\"erased\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.134\"}}}}}}}}},\"uses\":[\"Add\",\"Bool\",\"HAdd\",\"Nat\",\"OfNat\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Nat.ble\",\"Nat.blt\",\"Coverage.Recur.search\"]},\"inductive\":null},{\"name\":\"Coverage.Recur.search_decreases\",\"kind\":\"theorem\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Nat\",\"Not\",\"id\",\"instAddNat\",\"instHAdd\",\"instHSub\",\"instLTNat\",\"instOfNatNat\",\"instSubNat\",\"Bool.false\",\"Bool.true\",\"Decidable.byContradiction\",\"Eq.mp\",\"HAdd.hAdd\",\"HSub.hSub\",\"LT.lt\",\"LexLeanRuntime.subtract\",\"Nat.ble\",\"Nat.blt\",\"Nat.blt_eq\",\"Nat.decLt\",\"OfNat.ofNat\",\"_private.Coverage.Recur.0.Coverage.Recur.search_decreases._proof_1_32\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.statementSize\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Coverage.Syntax.Expr\",\"Coverage.Syntax.Stmt\",\"Coverage.Recur.exprSize._f\",\"Coverage.Recur.statementSize._f\",\"Coverage.Recur.statementsSize._f\",\"Coverage.Syntax.Stmt.brecOn\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.54\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.47\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.exprSize\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.51\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.48\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"},{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.53\"}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.54\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.69\",\"parameters\":[{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.62\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.64\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.statementSize\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.statementSize\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.66\"},{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.68\"}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.69\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Coverage.Syntax.Stmt\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.35\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Coverage.Syntax.Stmt.assign\",\"parameters\":[{\"id\":\"_uniq.79\",\"type\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.80\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.55\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.79\"},{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.81\"}}},{\"kind\":\"constructor\",\"constructor\":\"Coverage.Syntax.Stmt.sequence\",\"parameters\":[{\"id\":\"_uniq.82\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.83\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.70\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.82\"},{\"kind\":\"fvar\",\"id\":\"_uniq.83\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.84\"}}}]}}}}}},\"uses\":[\"Add\",\"HAdd\",\"Nat\",\"OfNat\",\"String\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"Coverage.Recur.exprSize\",\"Coverage.Recur.statementSize\",\"Coverage.Syntax.Expr\",\"Coverage.Syntax.Stmt\",\"Coverage.Syntax.Stmt.assign\",\"Coverage.Syntax.Stmt.sequence\"]},\"inductive\":null},{\"name\":\"Coverage.Recur.statementsSize\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Coverage.Syntax.Expr\",\"Coverage.Syntax.Stmt\",\"Coverage.Recur.exprSize._f\",\"Coverage.Recur.statementSize._f\",\"Coverage.Recur.statementsSize._f\",\"Coverage.Syntax.Expr.brecOn_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.39\",\"parameters\":[{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.37\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.38\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.39\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.54\",\"parameters\":[{\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.49\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.statementSize\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.46\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Recur.statementsSize\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.50\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.53\"}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.54\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.29\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.40\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.64\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.65\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.67\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.55\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.66\"},{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.68\"}}}]}}}}}},\"uses\":[\"Add\",\"HAdd\",\"List\",\"Nat\",\"OfNat\",\"PUnit\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"List.cons\",\"List.nil\",\"Unit.unit\",\"Coverage.Recur.statementSize\",\"Coverage.Recur.statementsSize\",\"Coverage.Syntax.Stmt\"]},\"inductive\":null},{\"name\":\"Coverage.Recur.weight\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Coverage.Syntax.Term\",\"Coverage.Recur.weight._f\",\"Coverage.Syntax.Term.brecOn\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Expr\",\"kind\":\"inductive\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":true,\"constructors\":[{\"name\":\"Coverage.Syntax.Expr.literal\",\"parameters\":0,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]}}},{\"name\":\"Coverage.Syntax.Expr.plus\",\"parameters\":0,\"fields\":2,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]}}}},{\"name\":\"Coverage.Syntax.Expr.block\",\"parameters\":0,\"fields\":2,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]}}}}]}},{\"name\":\"Coverage.Syntax.Rose\",\"kind\":\"inductive\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":true,\"constructors\":[{\"name\":\"Coverage.Syntax.Rose.node\",\"parameters\":1,\"fields\":2,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Rose\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]}}}}}]}},{\"name\":\"Coverage.Syntax.Stmt\",\"kind\":\"inductive\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":true,\"constructors\":[{\"name\":\"Coverage.Syntax.Stmt.assign\",\"parameters\":0,\"fields\":2,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"String\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Expr\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]}}}},{\"name\":\"Coverage.Syntax.Stmt.sequence\",\"parameters\":0,\"fields\":2,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Stmt\",\"levels\":[]}}}}]}},{\"name\":\"Coverage.Syntax.Term\",\"kind\":\"inductive\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":true,\"constructors\":[{\"name\":\"Coverage.Syntax.Term.literal\",\"parameters\":0,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}}},{\"name\":\"Coverage.Syntax.Term.plus\",\"parameters\":0,\"fields\":2,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Syntax.Term\",\"levels\":[]}}}}]}},{\"name\":\"Coverage.Types.Box\",\"kind\":\"inductive\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Coverage.Types.Box.mk\",\"parameters\":1,\"fields\":2,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Box\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]}}}}}]}},{\"name\":\"Coverage.Types.Point\",\"kind\":\"inductive\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Coverage.Types.Point.mk\",\"parameters\":0,\"fields\":2,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Point\",\"levels\":[]}}}}]}},{\"name\":\"Coverage.Types.Shape\",\"kind\":\"inductive\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Coverage.Types.Shape.circle\",\"parameters\":0,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Shape\",\"levels\":[]}}},{\"name\":\"Coverage.Types.Shape.rect\",\"parameters\":0,\"fields\":2,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Shape\",\"levels\":[]}}}},{\"name\":\"Coverage.Types.Shape.empty\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Shape\",\"levels\":[]}}]}},{\"name\":\"Coverage.Types.Tree\",\"kind\":\"inductive\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":true,\"constructors\":[{\"name\":\"Coverage.Types.Tree.leaf\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Tree\",\"levels\":[]}},{\"name\":\"Coverage.Types.Tree.node\",\"parameters\":0,\"fields\":3,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Tree\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Tree\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Tree\",\"levels\":[]}}}}}]}},{\"name\":\"Coverage.Types.Weights\",\"kind\":\"inductive\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Coverage.Types.Weights.mk\",\"parameters\":0,\"fields\":2,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Weights\",\"levels\":[]}}}}]}},{\"name\":\"Coverage.Types.area\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Unit\",\"instMulNat\",\"instOfNatNat\",\"LexLeanRuntime.multiply\",\"OfNat.ofNat\",\"Coverage.Types.Shape\",\"Coverage.Types.area.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Shape\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Shape\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.51\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Mul\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instMulNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.multiply\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.48\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.multiply\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.50\"}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.51\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.63\",\"parameters\":[{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Mul\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instMulNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.multiply\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.62\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.63\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.72\",\"parameters\":[{\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.69\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.70\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.71\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.72\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Coverage.Types.Shape\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.37\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Coverage.Types.Shape.circle\",\"parameters\":[{\"id\":\"_uniq.82\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.52\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.82\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.83\"}}},{\"kind\":\"constructor\",\"constructor\":\"Coverage.Types.Shape.rect\",\"parameters\":[{\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.85\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.64\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.85\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.86\"}}},{\"kind\":\"constructor\",\"constructor\":\"Coverage.Types.Shape.empty\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.73\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.87\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.88\"}}}}]}}}}}}}},\"uses\":[\"Mul\",\"Nat\",\"OfNat\",\"PUnit\",\"instMulNat\",\"instOfNatNat\",\"LexLeanRuntime.multiply\",\"Unit.unit\",\"Coverage.Types.Shape\",\"Coverage.Types.Shape.circle\",\"Coverage.Types.Shape.empty\",\"Coverage.Types.Shape.rect\"]},\"inductive\":null},{\"name\":\"Coverage.Types.defaultWeights\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"OfNat.ofNat\",\"Coverage.Types.Weights.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Weights\",\"levels\":[]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.1\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.2\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.1\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.3\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.2\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.4\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.5\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.4\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Weights\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Weights.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.3\"},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}}}}}}}},\"uses\":[\"Nat\",\"OfNat\",\"instOfNatNat\",\"Coverage.Types.Weights\",\"Coverage.Types.Weights.mk\"]},\"inductive\":null},{\"name\":\"Coverage.Types.isEven\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Nat\",\"PProd\",\"Nat.below\",\"Nat.brecOn\",\"PProd.mk\",\"Coverage.Types.isEven._f\",\"Coverage.Types.isOdd._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.32\",\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.32\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.39\",\"parameters\":[{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.isOdd\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.38\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.39\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Nat\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.24\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Nat.zero\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.33\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.46\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.47\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Nat.succ\",\"parameters\":[{\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.40\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.49\"}}}]}}}}}},\"uses\":[\"Bool\",\"Nat\",\"PUnit\",\"Bool.true\",\"Nat.succ\",\"Nat.zero\",\"Unit.unit\",\"Coverage.Types.isOdd\"]},\"inductive\":null},{\"name\":\"Coverage.Types.isOdd\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Nat\",\"PProd\",\"Nat.below\",\"Nat.brecOn\",\"PProd.mk\",\"Coverage.Types.isEven._f\",\"Coverage.Types.isOdd._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.32\",\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.32\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.39\",\"parameters\":[{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.isEven\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.38\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.39\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Nat\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.24\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Nat.zero\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.33\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.46\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.47\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Nat.succ\",\"parameters\":[{\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.40\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.49\"}}}]}}}}}},\"uses\":[\"Bool\",\"Nat\",\"PUnit\",\"Bool.false\",\"Nat.succ\",\"Nat.zero\",\"Unit.unit\",\"Coverage.Types.isEven\"]},\"inductive\":null},{\"name\":\"Coverage.Types.mapList\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"List.brecOn\",\"Coverage.Types.mapList._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"bvar\",\"index\":1}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]}}}}},\"parameters\":[{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}},\"borrow\":false},{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.70\",\"parameters\":[{\"id\":\"_uniq.68\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.69\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.70\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.90\",\"parameters\":[{\"id\":\"_uniq.83\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}},\"borrow\":false},{\"id\":\"_uniq.84\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},\"borrow\":false},{\"id\":\"_uniq.85\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]}}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.83\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.84\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.mapList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.85\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"},{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.89\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]}}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.90\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"discriminant\":\"_uniq.60\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.71\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.100\"}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.101\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},\"borrow\":false},{\"id\":\"_uniq.102\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.91\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.101\"},{\"kind\":\"fvar\",\"id\":\"_uniq.102\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.103\"}}}]}}}}}},\"uses\":[\"List\",\"List.cons\",\"List.nil\",\"Coverage.Types.mapList\"]},\"inductive\":null},{\"name\":\"Coverage.Types.treeSum\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Coverage.Types.Tree\",\"Coverage.Types.Tree.brecOn\",\"Coverage.Types.treeSum._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Tree\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Tree\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.44\",\"parameters\":[{\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.42\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.43\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.44\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.63\",\"parameters\":[{\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Tree\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Tree\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Tree\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Tree\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.57\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.treeSum\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.58\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Coverage.Types.treeSum\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.58\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.62\"}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Tree\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Tree\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.63\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Coverage.Types.Tree\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.34\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Coverage.Types.Tree.leaf\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.45\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.72\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.73\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Coverage.Types.Tree.node\",\"parameters\":[{\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Tree\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.75\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Tree\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.64\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"},{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.77\"}}}]}}}}}},\"uses\":[\"Add\",\"HAdd\",\"Nat\",\"OfNat\",\"PUnit\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"Unit.unit\",\"Coverage.Types.Tree\",\"Coverage.Types.treeSum\",\"Coverage.Types.Tree.leaf\",\"Coverage.Types.Tree.node\"]},\"inductive\":null},{\"name\":\"Coverage.Types.twice\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.16\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.16\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.19\"}}}},\"uses\":[\"Nat\"]},\"inductive\":null},{\"name\":\"Coverage.Types.unbox\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Coverage.Types.Box\",\"Coverage.Types.Box.content\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Box\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"bvar\",\"index\":1}}},\"parameters\":[{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Coverage.Types.Box\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},\"value\":{\"kind\":\"projection\",\"type_name\":\"Coverage.Types.Box\",\"index\":0,\"value\":\"_uniq.16\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.17\"}}},\"uses\":[\"Coverage.Types.Box\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.Key.compare\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanCollections.Key\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.Key.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.compareCodes._f\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Char\",\"List\",\"Nat\",\"Ordering\",\"Unit\",\"instOrdNat\",\"Char.val\",\"List.below\",\"List.cons\",\"List.nil\",\"Ord.compare\",\"Ordering.eq\",\"Ordering.gt\",\"Ordering.lt\",\"UInt32.toNat\",\"LexLeanCollections.compareCodes.match_1\",\"LexLeanCollections.compareCodes.match_4\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.compareCodes._sparseCasesOn_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Nat\",\"Ordering\",\"instOfNatNat\",\"Bool.false\",\"Eq.refl\",\"Nat.hasNotBit\",\"Nat.land\",\"Nat.ne_of_beq_eq_false\",\"Nat.shiftRight\",\"OfNat.ofNat\",\"Ordering.ctorIdx\",\"Ordering.eq\",\"Ordering.gt\",\"Ordering.lt\",\"Ordering.rec\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.compareCodes.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Ordering\",\"Unit\",\"Nat.hasNotBit\",\"Ordering.ctorIdx\",\"Ordering.eq\",\"Unit.unit\",\"LexLeanCollections.compareCodes._sparseCasesOn_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.compareCodes.match_4\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Char\",\"List\",\"Unit\",\"List.casesOn\",\"List.cons\",\"List.nil\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.containsElement._f\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"List\",\"Ordering\",\"Unit\",\"Bool.false\",\"Bool.true\",\"LexLeanCollections.Key\",\"List.below\",\"List.cons\",\"List.nil\",\"LexLeanCollections.Key.compare\",\"LexLeanCollections.insertElement.match_1\",\"LexLeanCollections.insertEntry.match_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.insertElement._f\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"List\",\"Ordering\",\"Unit\",\"LexLeanCollections.Key\",\"List.below\",\"List.cons\",\"List.nil\",\"LexLeanCollections.Key.compare\",\"LexLeanCollections.insertElement.match_1\",\"LexLeanCollections.insertEntry.match_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.insertElement.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Unit\",\"List.casesOn\",\"List.cons\",\"List.nil\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.insertEntry._f\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"List\",\"Ordering\",\"Prod\",\"Unit\",\"LexLeanCollections.Key\",\"List.below\",\"List.cons\",\"List.nil\",\"Prod.mk\",\"LexLeanCollections.Key.compare\",\"LexLeanCollections.insertEntry.match_1\",\"LexLeanCollections.insertEntry.match_3\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.insertEntry.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Ordering\",\"Unit\",\"Ordering.casesOn\",\"Ordering.eq\",\"Ordering.gt\",\"Ordering.lt\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.insertEntry.match_3\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Prod\",\"Unit\",\"List.casesOn\",\"List.cons\",\"List.nil\",\"Prod.casesOn\",\"Prod.mk\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.iterate._f\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Nat.below\",\"Nat.succ\",\"OfNat.ofNat\",\"LexLeanCollections.iterate.match_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.iterate.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Nat.casesOn\",\"Nat.succ\",\"OfNat.ofNat\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.iterateUntil._f\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Nat.below\",\"Nat.succ\",\"OfNat.ofNat\",\"Prod.mk\",\"LexLeanCollections.iterate.match_1\",\"LexLeanCollections.iterateUntil.match_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.iterateUntil.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.lookupEntry._f\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"List\",\"Option\",\"Ordering\",\"Prod\",\"Unit\",\"LexLeanCollections.Key\",\"List.below\",\"List.cons\",\"List.nil\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"LexLeanCollections.Key.compare\",\"LexLeanCollections.insertEntry.match_1\",\"LexLeanCollections.insertEntry.match_3\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.reachableFrom._f\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Eq\",\"List\",\"Nat\",\"Prod\",\"Unit\",\"instDecidableEqBool\",\"instOfNatNat\",\"ite\",\"Bool.or\",\"Bool.true\",\"LexLeanCollections.Key\",\"LexLeanCollections.containsElement\",\"LexLeanCollections.graphSuccessors\",\"LexLeanCollections.insertElement\",\"List.foldl\",\"List.nil\",\"Nat.below\",\"Nat.succ\",\"OfNat.ofNat\",\"LexLeanCollections.reachableFrom.match_1\",\"LexLeanCollections.reachableFrom.match_4\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.reachableFrom._sparseCasesOn_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"List\",\"Nat\",\"instOfNatNat\",\"Bool.false\",\"Eq.refl\",\"List.cons\",\"List.ctorIdx\",\"List.nil\",\"List.rec\",\"Nat.hasNotBit\",\"Nat.land\",\"Nat.ne_of_beq_eq_false\",\"Nat.shiftRight\",\"OfNat.ofNat\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.reachableFrom.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Unit\",\"List.ctorIdx\",\"List.nil\",\"Nat.hasNotBit\",\"Unit.unit\",\"LexLeanCollections.reachableFrom._sparseCasesOn_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.reachableFrom.match_4\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"instOfNatNat\",\"Nat.casesOn\",\"Nat.succ\",\"OfNat.ofNat\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.removeElement._f\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"List\",\"Ordering\",\"Unit\",\"LexLeanCollections.Key\",\"List.below\",\"List.cons\",\"List.nil\",\"LexLeanCollections.Key.compare\",\"LexLeanCollections.insertElement.match_1\",\"LexLeanCollections.insertEntry.match_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.removeEntry._f\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"List\",\"Ordering\",\"Prod\",\"Unit\",\"LexLeanCollections.Key\",\"List.below\",\"List.cons\",\"List.nil\",\"Prod.mk\",\"LexLeanCollections.Key.compare\",\"LexLeanCollections.insertEntry.match_1\",\"LexLeanCollections.insertEntry.match_3\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.topological._f\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Eq\",\"List\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"instDecidableEqBool\",\"instOfNatNat\",\"ite\",\"Bool.not\",\"Bool.true\",\"LexLeanCollections.Key\",\"LexLeanCollections.containsElement\",\"LexLeanCollections.graphSuccessors\",\"LexLeanCollections.removeElement\",\"List.all\",\"List.cons\",\"List.filter\",\"List.isEmpty\",\"List.reverse\",\"Nat.below\",\"Nat.succ\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"LexLeanCollections.insertElement.match_1\",\"LexLeanCollections.reachableFrom.match_4\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Appendable.append\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Appendable\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Appendable.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Decimal.format\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Decimal\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Decimal.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Decimal.parse\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Decimal\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Fixed.bitAnd\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Fixed\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Fixed.bitNot\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Fixed\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Fixed.bitOr\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Fixed\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Fixed.bitXor\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Fixed\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Fixed.fromInt\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Fixed\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Fixed.maximum\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Fixed\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Fixed.minimum\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Fixed\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Fixed.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Fixed.shiftLeft\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Fixed\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Fixed.shiftRight\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Fixed\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Fixed.toToMathInt\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Fixed\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Indexable.index\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Indexable\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Indexable.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Lengthable.length\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Lengthable\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Lengthable.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Quotient.isZero\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Quotient\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Quotient.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Quotient.quotient\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Quotient\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Quotient.remainder\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Quotient\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Sliceable.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Sliceable.slice\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Sliceable\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.ToMathInt.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.ToMathInt.toInt\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.ToMathInt\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.checkedMultiplyInt64.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Option\",\"UInt64\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.divideMagnitudeInt64._f\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Nat\",\"UInt64\",\"instAddUInt64\",\"instHAdd\",\"instHSub\",\"instLEUInt64\",\"instOfNatNat\",\"instSubUInt64\",\"ite\",\"HAdd.hAdd\",\"HSub.hSub\",\"LE.le\",\"Nat.below\",\"Nat.succ\",\"OfNat.ofNat\",\"UInt64.decLe\",\"UInt64.instOfNat\",\"LexLeanRuntime.divideMagnitudeInt64.match_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.divideMagnitudeInt64.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"UInt64\",\"instOfNatNat\",\"Nat.casesOn\",\"Nat.succ\",\"OfNat.ofNat\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.instDecimalInt.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.listIndex._f\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"List\",\"Nat\",\"Option\",\"List.below\",\"List.cons\",\"List.nil\",\"Option.none\",\"Option.some\",\"LexLeanRuntime.listIndex.match_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.listIndex.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"instOfNatNat\",\"List.casesOn\",\"List.cons\",\"List.nil\",\"Nat.casesOn\",\"Nat.succ\",\"OfNat.ofNat\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.multiplyMagnitudeInt64._f\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Eq\",\"Nat\",\"Option\",\"UInt64\",\"instAddUInt64\",\"instDecidableEqBool\",\"instHAdd\",\"instHSub\",\"instLEUInt64\",\"instLTUInt64\",\"instOfNatNat\",\"instSubUInt64\",\"ite\",\"Bool.or\",\"Bool.true\",\"Decidable.decide\",\"HAdd.hAdd\",\"HSub.hSub\",\"LE.le\",\"LT.lt\",\"Nat.below\",\"Nat.succ\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"UInt64.decLe\",\"UInt64.decLt\",\"UInt64.instOfNat\",\"LexLeanRuntime.multiplyMagnitudeInt64.match_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.multiplyMagnitudeInt64.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Nat\",\"UInt64\",\"instOfNatNat\",\"Nat.casesOn\",\"Nat.succ\",\"OfNat.ofNat\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Boundary.Grove.casesOn\",\"kind\":\"definition\",\"module\":\"Coverage.Boundary\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Except\",\"Int\",\"List\",\"Nat\",\"Option\",\"PUnit\",\"Prod\",\"String\",\"PUnit.unit\",\"Coverage.Boundary.Grove\",\"Coverage.Boundary.Grove.leaf\",\"Coverage.Boundary.Grove.node\",\"Coverage.Boundary.Grove.rec\",\"Coverage.Boundary.Grove.settled\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Boundary.Grove.leaf\",\"kind\":\"constructor\",\"module\":\"Coverage.Boundary\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Boundary.Grove.node\",\"kind\":\"constructor\",\"module\":\"Coverage.Boundary\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Boundary.Grove.rec\",\"kind\":\"recursor\",\"module\":\"Coverage.Boundary\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"recursor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Boundary.Grove.settled\",\"kind\":\"constructor\",\"module\":\"Coverage.Boundary\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Boundary.groveTags.match_1\",\"kind\":\"definition\",\"module\":\"Coverage.Boundary\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Except\",\"Int\",\"List\",\"Nat\",\"Option\",\"Prod\",\"String\",\"Coverage.Boundary.Grove\",\"Coverage.Boundary.Grove.casesOn\",\"Coverage.Boundary.Grove.leaf\",\"Coverage.Boundary.Grove.node\",\"Coverage.Boundary.Grove.settled\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Main.options.match_1\",\"kind\":\"definition\",\"module\":\"Coverage.Main\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Main.options.match_3\",\"kind\":\"definition\",\"module\":\"Coverage.Main\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"Nat\",\"Except.casesOn\",\"Except.error\",\"Except.ok\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.countdown._unary\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Eq\",\"InvImage\",\"Nat\",\"PSigma\",\"instAddNat\",\"instHAdd\",\"instLTNat\",\"instOfNatNat\",\"instSubNat\",\"Bool.false\",\"Bool.true\",\"HAdd.hAdd\",\"LT.lt\",\"LexLeanRuntime.subtract\",\"Nat.blt\",\"OfNat.ofNat\",\"PSigma.casesOn\",\"PSigma.mk\",\"WellFounded.Nat.fix\",\"Coverage.Recur.countdown.match_1\",\"Coverage.Recur.countdown._unary._proof_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.countdown.match_1\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Bool.casesOn\",\"Bool.false\",\"Bool.true\",\"Eq.refl\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.exprSize._f\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"List\",\"Nat\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"HAdd.hAdd\",\"OfNat.ofNat\",\"Coverage.Syntax.Expr\",\"Coverage.Syntax.Stmt\",\"Coverage.Recur.exprSize.match_1\",\"Coverage.Syntax.Expr.below\",\"Coverage.Syntax.Expr.block\",\"Coverage.Syntax.Expr.literal\",\"Coverage.Syntax.Expr.plus\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.exprSize.match_1\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Coverage.Syntax.Expr\",\"Coverage.Syntax.Stmt\",\"Coverage.Syntax.Expr.block\",\"Coverage.Syntax.Expr.casesOn\",\"Coverage.Syntax.Expr.literal\",\"Coverage.Syntax.Expr.plus\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.forestSize._f\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"List\",\"Nat\",\"Unit\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"HAdd.hAdd\",\"List.cons\",\"List.nil\",\"OfNat.ofNat\",\"Coverage.Syntax.Rose\",\"Coverage.Recur.forestSize.match_1\",\"Coverage.Syntax.Rose.below_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.forestSize.match_1\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Unit\",\"List.casesOn\",\"List.cons\",\"List.nil\",\"Unit.unit\",\"Coverage.Syntax.Rose\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.prune._proof_1\",\"kind\":\"theorem\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":true,\"kernel_uses\":[\"Eq\",\"InvImage\",\"Nat\",\"id\",\"instLTNat\",\"Eq.ndrec\",\"Eq.symm\",\"LT.lt\",\"Coverage.Recur.reassociate_literal\",\"Coverage.Recur.weight\",\"Coverage.Syntax.Term\",\"Coverage.Syntax.Term.literal\",\"Coverage.Syntax.Term.plus\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.prune._proof_2\",\"kind\":\"theorem\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":true,\"kernel_uses\":[\"Eq\",\"InvImage\",\"Nat\",\"id\",\"instLTNat\",\"Eq.ndrec\",\"Eq.symm\",\"LT.lt\",\"Coverage.Recur.prune_plus\",\"Coverage.Recur.weight\",\"Coverage.Syntax.Term\",\"Coverage.Syntax.Term.plus\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.reassociate._proof_1\",\"kind\":\"theorem\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":true,\"kernel_uses\":[\"Eq\",\"InvImage\",\"Nat\",\"id\",\"instLTNat\",\"Eq.ndrec\",\"Eq.symm\",\"LT.lt\",\"Coverage.Recur.reassociate_literal\",\"Coverage.Recur.weight\",\"Coverage.Syntax.Term\",\"Coverage.Syntax.Term.literal\",\"Coverage.Syntax.Term.plus\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.reassociate._proof_2\",\"kind\":\"theorem\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":true,\"kernel_uses\":[\"Eq\",\"InvImage\",\"Nat\",\"id\",\"instLTNat\",\"Eq.ndrec\",\"Eq.symm\",\"LT.lt\",\"Coverage.Recur.reassociate_plus\",\"Coverage.Recur.weight\",\"Coverage.Syntax.Term\",\"Coverage.Syntax.Term.plus\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.reassociate.match_1\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Eq\",\"Nat\",\"Eq.refl\",\"Coverage.Syntax.Term\",\"Coverage.Syntax.Term.casesOn\",\"Coverage.Syntax.Term.literal\",\"Coverage.Syntax.Term.plus\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.reduce._unary\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Eq\",\"InvImage\",\"Nat\",\"instLTNat\",\"instOfNatNat\",\"instSubNat\",\"Bool.false\",\"Bool.true\",\"LT.lt\",\"LexLeanRuntime.subtract\",\"Nat.beq\",\"Nat.blt\",\"OfNat.ofNat\",\"WellFounded.Nat.fix\",\"Coverage.Recur.countdown.match_1\",\"Coverage.Recur.reduce._unary._proof_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.roseSize._f\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"List\",\"Nat\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"HAdd.hAdd\",\"OfNat.ofNat\",\"Coverage.Syntax.Rose\",\"Coverage.Recur.roseSize.match_1\",\"Coverage.Syntax.Rose.below\",\"Coverage.Syntax.Rose.node\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.roseSize.match_1\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Coverage.Syntax.Rose\",\"Coverage.Syntax.Rose.casesOn\",\"Coverage.Syntax.Rose.node\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.search._unary\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Eq\",\"InvImage\",\"Nat\",\"instAddNat\",\"instHAdd\",\"instLTNat\",\"instOfNatNat\",\"instSubNat\",\"Bool.false\",\"Bool.true\",\"HAdd.hAdd\",\"LT.lt\",\"LexLeanRuntime.subtract\",\"Nat.ble\",\"Nat.blt\",\"OfNat.ofNat\",\"WellFounded.Nat.fix\",\"Coverage.Recur.countdown.match_1\",\"Coverage.Recur.search._unary._proof_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.statementSize._f\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"List\",\"Nat\",\"String\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"HAdd.hAdd\",\"OfNat.ofNat\",\"Coverage.Syntax.Expr\",\"Coverage.Syntax.Stmt\",\"Coverage.Recur.statementSize.match_1\",\"Coverage.Syntax.Stmt.assign\",\"Coverage.Syntax.Stmt.below\",\"Coverage.Syntax.Stmt.sequence\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.statementSize.match_1\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"String\",\"Coverage.Syntax.Expr\",\"Coverage.Syntax.Stmt\",\"Coverage.Syntax.Stmt.assign\",\"Coverage.Syntax.Stmt.casesOn\",\"Coverage.Syntax.Stmt.sequence\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.statementsSize._f\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"List\",\"Nat\",\"Unit\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"HAdd.hAdd\",\"List.cons\",\"List.nil\",\"OfNat.ofNat\",\"Coverage.Syntax.Expr\",\"Coverage.Syntax.Stmt\",\"Coverage.Recur.statementsSize.match_1\",\"Coverage.Syntax.Expr.below_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.statementsSize.match_1\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Unit\",\"List.casesOn\",\"List.cons\",\"List.nil\",\"Unit.unit\",\"Coverage.Syntax.Stmt\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.weight._f\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Nat\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"HAdd.hAdd\",\"OfNat.ofNat\",\"Coverage.Syntax.Term\",\"Coverage.Recur.weight.match_1\",\"Coverage.Syntax.Term.below\",\"Coverage.Syntax.Term.literal\",\"Coverage.Syntax.Term.plus\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.weight.match_1\",\"kind\":\"definition\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Coverage.Syntax.Term\",\"Coverage.Syntax.Term.casesOn\",\"Coverage.Syntax.Term.literal\",\"Coverage.Syntax.Term.plus\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Expr.below\",\"kind\":\"definition\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"PProd\",\"PUnit\",\"String\",\"Coverage.Syntax.Expr\",\"Coverage.Syntax.Stmt\",\"Coverage.Syntax.Expr.rec\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Expr.below_1\",\"kind\":\"definition\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"PProd\",\"PUnit\",\"String\",\"Coverage.Syntax.Expr\",\"Coverage.Syntax.Stmt\",\"Coverage.Syntax.Expr.rec_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Expr.block\",\"kind\":\"constructor\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Expr.brecOn\",\"kind\":\"definition\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Coverage.Syntax.Expr\",\"Coverage.Syntax.Stmt\",\"Coverage.Syntax.Expr.below\",\"Coverage.Syntax.Expr.below_1\",\"Coverage.Syntax.Stmt.below\",\"Coverage.Syntax.Expr.brecOn.go\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Expr.brecOn_1\",\"kind\":\"definition\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Coverage.Syntax.Expr\",\"Coverage.Syntax.Stmt\",\"Coverage.Syntax.Expr.below\",\"Coverage.Syntax.Expr.below_1\",\"Coverage.Syntax.Stmt.below\",\"Coverage.Syntax.Expr.brecOn_1.go\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Expr.casesOn\",\"kind\":\"definition\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"PUnit\",\"String\",\"PUnit.unit\",\"Coverage.Syntax.Expr\",\"Coverage.Syntax.Stmt\",\"Coverage.Syntax.Expr.block\",\"Coverage.Syntax.Expr.literal\",\"Coverage.Syntax.Expr.plus\",\"Coverage.Syntax.Expr.rec\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Expr.literal\",\"kind\":\"constructor\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Expr.plus\",\"kind\":\"constructor\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Expr.rec\",\"kind\":\"recursor\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"recursor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Expr.rec_1\",\"kind\":\"recursor\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"recursor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Rose.below\",\"kind\":\"definition\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"PProd\",\"PUnit\",\"Coverage.Syntax.Rose\",\"Coverage.Syntax.Rose.rec\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Rose.below_1\",\"kind\":\"definition\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"PProd\",\"PUnit\",\"Coverage.Syntax.Rose\",\"Coverage.Syntax.Rose.rec_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Rose.brecOn\",\"kind\":\"definition\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Coverage.Syntax.Rose\",\"Coverage.Syntax.Rose.below\",\"Coverage.Syntax.Rose.below_1\",\"Coverage.Syntax.Rose.brecOn.go\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Rose.brecOn_1\",\"kind\":\"definition\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Coverage.Syntax.Rose\",\"Coverage.Syntax.Rose.below\",\"Coverage.Syntax.Rose.below_1\",\"Coverage.Syntax.Rose.brecOn_1.go\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Rose.casesOn\",\"kind\":\"definition\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"PUnit\",\"PUnit.unit\",\"Coverage.Syntax.Rose\",\"Coverage.Syntax.Rose.node\",\"Coverage.Syntax.Rose.rec\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Rose.node\",\"kind\":\"constructor\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Rose.rec\",\"kind\":\"recursor\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"recursor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Rose.rec_1\",\"kind\":\"recursor\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"recursor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Stmt.assign\",\"kind\":\"constructor\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Stmt.below\",\"kind\":\"definition\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"PProd\",\"PUnit\",\"String\",\"Coverage.Syntax.Expr\",\"Coverage.Syntax.Stmt\",\"Coverage.Syntax.Stmt.rec\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Stmt.brecOn\",\"kind\":\"definition\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Coverage.Syntax.Expr\",\"Coverage.Syntax.Stmt\",\"Coverage.Syntax.Expr.below\",\"Coverage.Syntax.Expr.below_1\",\"Coverage.Syntax.Stmt.below\",\"Coverage.Syntax.Stmt.brecOn.go\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Stmt.casesOn\",\"kind\":\"definition\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"PUnit\",\"String\",\"PUnit.unit\",\"Coverage.Syntax.Expr\",\"Coverage.Syntax.Stmt\",\"Coverage.Syntax.Stmt.assign\",\"Coverage.Syntax.Stmt.rec\",\"Coverage.Syntax.Stmt.sequence\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Stmt.rec\",\"kind\":\"recursor\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"recursor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Stmt.sequence\",\"kind\":\"constructor\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Term.below\",\"kind\":\"definition\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"PProd\",\"PUnit\",\"Coverage.Syntax.Term\",\"Coverage.Syntax.Term.rec\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Term.brecOn\",\"kind\":\"definition\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Coverage.Syntax.Term\",\"Coverage.Syntax.Term.below\",\"Coverage.Syntax.Term.brecOn.go\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Term.casesOn\",\"kind\":\"definition\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Coverage.Syntax.Term\",\"Coverage.Syntax.Term.literal\",\"Coverage.Syntax.Term.plus\",\"Coverage.Syntax.Term.rec\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Term.literal\",\"kind\":\"constructor\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Term.plus\",\"kind\":\"constructor\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Term.rec\",\"kind\":\"recursor\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"recursor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.Box.content\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Coverage.Types.Box\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.Box.mk\",\"kind\":\"constructor\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.Point.mk\",\"kind\":\"constructor\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.Point.x\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Coverage.Types.Point\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.Point.y\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Coverage.Types.Point\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.Shape.casesOn\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Coverage.Types.Shape\",\"Coverage.Types.Shape.circle\",\"Coverage.Types.Shape.empty\",\"Coverage.Types.Shape.rec\",\"Coverage.Types.Shape.rect\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.Shape.circle\",\"kind\":\"constructor\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.Shape.empty\",\"kind\":\"constructor\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.Shape.rec\",\"kind\":\"recursor\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"recursor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.Shape.rect\",\"kind\":\"constructor\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.Tree.below\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"PProd\",\"PUnit\",\"Coverage.Types.Tree\",\"Coverage.Types.Tree.rec\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.Tree.brecOn\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Coverage.Types.Tree\",\"Coverage.Types.Tree.below\",\"Coverage.Types.Tree.brecOn.go\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.Tree.casesOn\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Coverage.Types.Tree\",\"Coverage.Types.Tree.leaf\",\"Coverage.Types.Tree.node\",\"Coverage.Types.Tree.rec\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.Tree.leaf\",\"kind\":\"constructor\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.Tree.node\",\"kind\":\"constructor\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.Tree.rec\",\"kind\":\"recursor\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"recursor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.Weights.mk\",\"kind\":\"constructor\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.Weights.scale\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Coverage.Types.Weights\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.area.match_1\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Unit\",\"Unit.unit\",\"Coverage.Types.Shape\",\"Coverage.Types.Shape.casesOn\",\"Coverage.Types.Shape.circle\",\"Coverage.Types.Shape.empty\",\"Coverage.Types.Shape.rect\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.isEven._f\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Nat\",\"PProd\",\"Unit\",\"Bool.true\",\"Nat.below\",\"Nat.succ\",\"Nat.zero\",\"Coverage.Types.isEven.match_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.isEven.match_1\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Unit\",\"Nat.casesOn\",\"Nat.succ\",\"Nat.zero\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.isOdd._f\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Nat\",\"PProd\",\"Unit\",\"Bool.false\",\"Nat.below\",\"Nat.succ\",\"Nat.zero\",\"Coverage.Types.isEven.match_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.mapList._f\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"List\",\"List.below\",\"List.cons\",\"List.nil\",\"Coverage.Types.mapList.match_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.mapList.match_1\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"List.casesOn\",\"List.cons\",\"List.nil\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.treeSum._f\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Nat\",\"Unit\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"HAdd.hAdd\",\"OfNat.ofNat\",\"Coverage.Types.Tree\",\"Coverage.Types.Tree.below\",\"Coverage.Types.Tree.leaf\",\"Coverage.Types.Tree.node\",\"Coverage.Types.treeSum.match_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.treeSum.match_1\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Unit\",\"Unit.unit\",\"Coverage.Types.Tree\",\"Coverage.Types.Tree.casesOn\",\"Coverage.Types.Tree.leaf\",\"Coverage.Types.Tree.node\"],\"declaration\":null,\"inductive\":null},{\"name\":\"_private.Coverage.Recur.0.Coverage.Recur.countdown_decreases._proof_1_32\",\"kind\":\"theorem\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":true,\"kernel_uses\":[\"And\",\"Bool\",\"Eq\",\"False\",\"Int\",\"Nat\",\"Not\",\"id\",\"instDecidableEqBool\",\"instHAdd\",\"instHSub\",\"instLENat\",\"instLTNat\",\"instNatCastInt\",\"instOfNat\",\"instOfNatNat\",\"instSubNat\",\"le_of_le_of_eq\",\"of_decide_eq_true\",\"And.left\",\"And.right\",\"Bool.true\",\"Decidable.decide\",\"Eq.refl\",\"Eq.symm\",\"Eq.trans\",\"HAdd.hAdd\",\"HSub.hSub\",\"Int.add_one_le_of_lt\",\"Int.instAdd\",\"Int.instLEInt\",\"Int.instNegInt\",\"Int.instSub\",\"Int.sub_eq_zero_of_eq\",\"Int.sub_nonneg_of_le\",\"LE.le\",\"LT.lt\",\"List.cons\",\"List.nil\",\"Nat.cast\",\"Nat.le_of_not_lt\",\"Neg.neg\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Or.elim\",\"Lean.Omega.LinearCombo\",\"Lean.Omega.tidy_sat\",\"Lean.Omega.Coeffs.ofList\",\"Lean.Omega.Constraint.addEquality_sat\",\"Lean.Omega.Constraint.addInequality_sat\",\"Lean.Omega.Constraint.combine_sat'\",\"Lean.Omega.Constraint.isImpossible\",\"Lean.Omega.Constraint.mk\",\"Lean.Omega.Constraint.not_sat'_of_isImpossible\",\"Lean.Omega.Int.add_congr\",\"Lean.Omega.Int.ofNat_le_of_le\",\"Lean.Omega.Int.ofNat_lt_of_lt\",\"Lean.Omega.Int.ofNat_sub_dichotomy\",\"Lean.Omega.Int.sub_congr\",\"Lean.Omega.LinearCombo.add_eval\",\"Lean.Omega.LinearCombo.coordinate\",\"Lean.Omega.LinearCombo.coordinate_eval_0\",\"Lean.Omega.LinearCombo.coordinate_eval_1\",\"Lean.Omega.LinearCombo.eval\",\"Lean.Omega.LinearCombo.instAdd\",\"Lean.Omega.LinearCombo.instSub\",\"Lean.Omega.LinearCombo.mk\",\"Lean.Omega.LinearCombo.sub_eval\"],\"declaration\":null,\"inductive\":null},{\"name\":\"_private.Coverage.Recur.0.Coverage.Recur.countdown_decreases._simp_1_1\",\"kind\":\"theorem\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Eq\",\"Not\",\"Bool.false\",\"Bool.not_eq_true\",\"Bool.true\",\"Eq.symm\"],\"declaration\":null,\"inductive\":null},{\"name\":\"_private.Coverage.Recur.0.Coverage.Recur.prune_plus._proof_1_35\",\"kind\":\"theorem\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Eq\",\"Int\",\"Nat\",\"Not\",\"id\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instHSub\",\"instLTNat\",\"instNatCastInt\",\"instOfNat\",\"instOfNatNat\",\"le_of_le_of_eq\",\"of_decide_eq_true\",\"Bool.true\",\"Decidable.decide\",\"Eq.refl\",\"Eq.symm\",\"Eq.trans\",\"HAdd.hAdd\",\"HSub.hSub\",\"Int.instAdd\",\"Int.instLEInt\",\"Int.instNegInt\",\"Int.instSub\",\"Int.natCast_add\",\"Int.natCast_nonneg\",\"Int.sub_nonneg_of_le\",\"LT.lt\",\"List.cons\",\"List.nil\",\"Nat.cast\",\"Nat.le_of_not_lt\",\"Neg.neg\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Coverage.Recur.weight\",\"Coverage.Syntax.Term\",\"Lean.Omega.LinearCombo\",\"Lean.Omega.combo_sat'\",\"Lean.Omega.tidy_sat\",\"Lean.Omega.Coeffs.ofList\",\"Lean.Omega.Constraint.addInequality_sat\",\"Lean.Omega.Constraint.combine_sat'\",\"Lean.Omega.Constraint.isImpossible\",\"Lean.Omega.Constraint.mk\",\"Lean.Omega.Constraint.not_sat'_of_isImpossible\",\"Lean.Omega.Int.add_congr\",\"Lean.Omega.Int.ofNat_le_of_le\",\"Lean.Omega.Int.sub_congr\",\"Lean.Omega.LinearCombo.add_eval\",\"Lean.Omega.LinearCombo.coordinate\",\"Lean.Omega.LinearCombo.coordinate_eval_0\",\"Lean.Omega.LinearCombo.coordinate_eval_1\",\"Lean.Omega.LinearCombo.coordinate_eval_2\",\"Lean.Omega.LinearCombo.eval\",\"Lean.Omega.LinearCombo.instAdd\",\"Lean.Omega.LinearCombo.instSub\",\"Lean.Omega.LinearCombo.mk\",\"Lean.Omega.LinearCombo.sub_eval\"],\"declaration\":null,\"inductive\":null},{\"name\":\"_private.Coverage.Recur.0.Coverage.Recur.reassociate_literal._proof_1_35\",\"kind\":\"theorem\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Eq\",\"Int\",\"Nat\",\"Not\",\"id\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instHSub\",\"instLTNat\",\"instNatCastInt\",\"instOfNat\",\"instOfNatNat\",\"le_of_le_of_eq\",\"of_decide_eq_true\",\"Bool.true\",\"Decidable.decide\",\"Eq.refl\",\"Eq.symm\",\"Eq.trans\",\"HAdd.hAdd\",\"HSub.hSub\",\"Int.instAdd\",\"Int.instLEInt\",\"Int.instNegInt\",\"Int.instSub\",\"Int.natCast_add\",\"Int.sub_nonneg_of_le\",\"LT.lt\",\"List.cons\",\"List.nil\",\"Nat.cast\",\"Nat.le_of_not_lt\",\"Neg.neg\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Coverage.Recur.weight\",\"Coverage.Syntax.Term\",\"Lean.Omega.LinearCombo\",\"Lean.Omega.tidy_sat\",\"Lean.Omega.Coeffs.ofList\",\"Lean.Omega.Constraint.addInequality_sat\",\"Lean.Omega.Constraint.isImpossible\",\"Lean.Omega.Constraint.mk\",\"Lean.Omega.Constraint.not_sat'_of_isImpossible\",\"Lean.Omega.Int.add_congr\",\"Lean.Omega.Int.ofNat_le_of_le\",\"Lean.Omega.Int.sub_congr\",\"Lean.Omega.LinearCombo.add_eval\",\"Lean.Omega.LinearCombo.coordinate\",\"Lean.Omega.LinearCombo.coordinate_eval_0\",\"Lean.Omega.LinearCombo.eval\",\"Lean.Omega.LinearCombo.instAdd\",\"Lean.Omega.LinearCombo.instSub\",\"Lean.Omega.LinearCombo.mk\",\"Lean.Omega.LinearCombo.sub_eval\"],\"declaration\":null,\"inductive\":null},{\"name\":\"_private.Coverage.Recur.0.Coverage.Recur.reassociate_plus._proof_1_35\",\"kind\":\"theorem\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Eq\",\"Int\",\"Nat\",\"Not\",\"id\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instHSub\",\"instLTNat\",\"instNatCastInt\",\"instOfNat\",\"instOfNatNat\",\"le_of_le_of_eq\",\"of_decide_eq_true\",\"Bool.true\",\"Decidable.decide\",\"Eq.refl\",\"Eq.symm\",\"Eq.trans\",\"HAdd.hAdd\",\"HSub.hSub\",\"Int.instAdd\",\"Int.instLEInt\",\"Int.instNegInt\",\"Int.instSub\",\"Int.natCast_add\",\"Int.natCast_nonneg\",\"Int.sub_nonneg_of_le\",\"LT.lt\",\"List.cons\",\"List.nil\",\"Nat.cast\",\"Nat.le_of_not_lt\",\"Neg.neg\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Coverage.Recur.weight\",\"Coverage.Syntax.Term\",\"Lean.Omega.LinearCombo\",\"Lean.Omega.combo_sat'\",\"Lean.Omega.tidy_sat\",\"Lean.Omega.Coeffs.ofList\",\"Lean.Omega.Constraint.addInequality_sat\",\"Lean.Omega.Constraint.isImpossible\",\"Lean.Omega.Constraint.mk\",\"Lean.Omega.Constraint.not_sat'_of_isImpossible\",\"Lean.Omega.Int.add_congr\",\"Lean.Omega.Int.ofNat_le_of_le\",\"Lean.Omega.Int.sub_congr\",\"Lean.Omega.LinearCombo.add_eval\",\"Lean.Omega.LinearCombo.coordinate\",\"Lean.Omega.LinearCombo.coordinate_eval_0\",\"Lean.Omega.LinearCombo.coordinate_eval_1\",\"Lean.Omega.LinearCombo.coordinate_eval_2\",\"Lean.Omega.LinearCombo.eval\",\"Lean.Omega.LinearCombo.instAdd\",\"Lean.Omega.LinearCombo.instSub\",\"Lean.Omega.LinearCombo.mk\",\"Lean.Omega.LinearCombo.sub_eval\"],\"declaration\":null,\"inductive\":null},{\"name\":\"_private.Coverage.Recur.0.Coverage.Recur.reduce_decreases._proof_1_32\",\"kind\":\"theorem\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":true,\"kernel_uses\":[\"And\",\"Bool\",\"Eq\",\"False\",\"Int\",\"Nat\",\"Not\",\"id\",\"instDecidableEqBool\",\"instHAdd\",\"instHSub\",\"instLENat\",\"instLTNat\",\"instNatCastInt\",\"instOfNat\",\"instOfNatNat\",\"instSubNat\",\"le_of_le_of_eq\",\"of_decide_eq_true\",\"And.left\",\"And.right\",\"Bool.true\",\"Decidable.decide\",\"Eq.refl\",\"Eq.symm\",\"Eq.trans\",\"GT.gt\",\"HAdd.hAdd\",\"HSub.hSub\",\"Int.add_one_le_of_lt\",\"Int.instAdd\",\"Int.instLEInt\",\"Int.instNegInt\",\"Int.instSub\",\"Int.natCast_nonneg\",\"Int.sub_eq_zero_of_eq\",\"Int.sub_nonneg_of_le\",\"LE.le\",\"LT.lt\",\"List.cons\",\"List.nil\",\"Nat.cast\",\"Nat.le_of_not_lt\",\"Nat.lt_or_gt_of_ne\",\"Neg.neg\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Or.elim\",\"Lean.Omega.LinearCombo\",\"Lean.Omega.combo_sat'\",\"Lean.Omega.tidy_sat\",\"Lean.Omega.Coeffs.ofList\",\"Lean.Omega.Constraint.addEquality_sat\",\"Lean.Omega.Constraint.addInequality_sat\",\"Lean.Omega.Constraint.combine_sat'\",\"Lean.Omega.Constraint.isImpossible\",\"Lean.Omega.Constraint.mk\",\"Lean.Omega.Constraint.not_sat'_of_isImpossible\",\"Lean.Omega.Int.add_congr\",\"Lean.Omega.Int.ofNat_le_of_le\",\"Lean.Omega.Int.ofNat_lt_of_lt\",\"Lean.Omega.Int.ofNat_sub_dichotomy\",\"Lean.Omega.Int.sub_congr\",\"Lean.Omega.LinearCombo.add_eval\",\"Lean.Omega.LinearCombo.coordinate\",\"Lean.Omega.LinearCombo.coordinate_eval_0\",\"Lean.Omega.LinearCombo.coordinate_eval_1\",\"Lean.Omega.LinearCombo.coordinate_eval_2\",\"Lean.Omega.LinearCombo.eval\",\"Lean.Omega.LinearCombo.instAdd\",\"Lean.Omega.LinearCombo.instSub\",\"Lean.Omega.LinearCombo.mk\",\"Lean.Omega.LinearCombo.sub_eval\"],\"declaration\":null,\"inductive\":null},{\"name\":\"_private.Coverage.Recur.0.Coverage.Recur.reduce_decreases._simp_1_1\",\"kind\":\"theorem\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Eq\",\"Not\",\"Bool.false\",\"Bool.not_eq_true\",\"Bool.true\",\"Eq.symm\"],\"declaration\":null,\"inductive\":null},{\"name\":\"_private.Coverage.Recur.0.Coverage.Recur.search_decreases._proof_1_32\",\"kind\":\"theorem\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":true,\"kernel_uses\":[\"And\",\"Bool\",\"Eq\",\"False\",\"Int\",\"Nat\",\"Not\",\"id\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instHSub\",\"instLENat\",\"instLTNat\",\"instNatCastInt\",\"instOfNat\",\"instOfNatNat\",\"instSubNat\",\"le_of_le_of_eq\",\"of_decide_eq_true\",\"And.left\",\"And.right\",\"Bool.true\",\"Decidable.decide\",\"Eq.refl\",\"Eq.symm\",\"Eq.trans\",\"HAdd.hAdd\",\"HSub.hSub\",\"Int.add_one_le_of_lt\",\"Int.instAdd\",\"Int.instLEInt\",\"Int.instNegInt\",\"Int.instSub\",\"Int.natCast_add\",\"Int.sub_eq_zero_of_eq\",\"Int.sub_nonneg_of_le\",\"LE.le\",\"LT.lt\",\"List.cons\",\"List.nil\",\"Nat.cast\",\"Nat.le_of_not_lt\",\"Neg.neg\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Or.elim\",\"Lean.Omega.LinearCombo\",\"Lean.Omega.combo_sat'\",\"Lean.Omega.tidy_sat\",\"Lean.Omega.Coeffs.ofList\",\"Lean.Omega.Constraint.addEquality_sat\",\"Lean.Omega.Constraint.addInequality_sat\",\"Lean.Omega.Constraint.combine_sat'\",\"Lean.Omega.Constraint.isImpossible\",\"Lean.Omega.Constraint.mk\",\"Lean.Omega.Constraint.not_sat'_of_isImpossible\",\"Lean.Omega.Int.add_congr\",\"Lean.Omega.Int.ofNat_le_of_le\",\"Lean.Omega.Int.ofNat_lt_of_lt\",\"Lean.Omega.Int.ofNat_sub_dichotomy\",\"Lean.Omega.Int.sub_congr\",\"Lean.Omega.LinearCombo.add_eval\",\"Lean.Omega.LinearCombo.coordinate\",\"Lean.Omega.LinearCombo.coordinate_eval_0\",\"Lean.Omega.LinearCombo.coordinate_eval_1\",\"Lean.Omega.LinearCombo.coordinate_eval_3\",\"Lean.Omega.LinearCombo.coordinate_eval_4\",\"Lean.Omega.LinearCombo.eval\",\"Lean.Omega.LinearCombo.instAdd\",\"Lean.Omega.LinearCombo.instSub\",\"Lean.Omega.LinearCombo.mk\",\"Lean.Omega.LinearCombo.sub_eval\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.countdown._unary._proof_1\",\"kind\":\"theorem\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Eq\",\"InvImage\",\"Nat\",\"PSigma\",\"id\",\"instAddNat\",\"instHAdd\",\"instLTNat\",\"instOfNatNat\",\"instSubNat\",\"Bool.false\",\"HAdd.hAdd\",\"LT.lt\",\"LexLeanRuntime.subtract\",\"Nat.blt\",\"OfNat.ofNat\",\"PSigma.casesOn\",\"PSigma.mk\",\"Coverage.Recur.countdown_decreases\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.reduce._unary._proof_1\",\"kind\":\"theorem\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Eq\",\"InvImage\",\"Nat\",\"id\",\"instLTNat\",\"instOfNatNat\",\"instSubNat\",\"Bool.false\",\"LT.lt\",\"LexLeanRuntime.subtract\",\"Nat.beq\",\"Nat.blt\",\"OfNat.ofNat\",\"Coverage.Recur.reduce_decreases\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Recur.search._unary._proof_1\",\"kind\":\"theorem\",\"module\":\"Coverage.Recur\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Eq\",\"InvImage\",\"Nat\",\"id\",\"instAddNat\",\"instHAdd\",\"instLTNat\",\"instOfNatNat\",\"instSubNat\",\"Bool.false\",\"Bool.true\",\"HAdd.hAdd\",\"LT.lt\",\"LexLeanRuntime.subtract\",\"Nat.ble\",\"Nat.blt\",\"OfNat.ofNat\",\"Coverage.Recur.search_decreases\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Expr.brecOn.go\",\"kind\":\"definition\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"PProd\",\"PUnit\",\"String\",\"List.cons\",\"List.nil\",\"PProd.mk\",\"PUnit.unit\",\"Coverage.Syntax.Expr\",\"Coverage.Syntax.Stmt\",\"Coverage.Syntax.Expr.below\",\"Coverage.Syntax.Expr.below_1\",\"Coverage.Syntax.Expr.block\",\"Coverage.Syntax.Expr.literal\",\"Coverage.Syntax.Expr.plus\",\"Coverage.Syntax.Expr.rec\",\"Coverage.Syntax.Stmt.assign\",\"Coverage.Syntax.Stmt.below\",\"Coverage.Syntax.Stmt.sequence\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Expr.brecOn_1.go\",\"kind\":\"definition\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"PProd\",\"PUnit\",\"String\",\"List.cons\",\"List.nil\",\"PProd.mk\",\"PUnit.unit\",\"Coverage.Syntax.Expr\",\"Coverage.Syntax.Stmt\",\"Coverage.Syntax.Expr.below\",\"Coverage.Syntax.Expr.below_1\",\"Coverage.Syntax.Expr.block\",\"Coverage.Syntax.Expr.literal\",\"Coverage.Syntax.Expr.plus\",\"Coverage.Syntax.Expr.rec_1\",\"Coverage.Syntax.Stmt.assign\",\"Coverage.Syntax.Stmt.below\",\"Coverage.Syntax.Stmt.sequence\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Rose.brecOn.go\",\"kind\":\"definition\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"PProd\",\"PUnit\",\"List.cons\",\"List.nil\",\"PProd.mk\",\"PUnit.unit\",\"Coverage.Syntax.Rose\",\"Coverage.Syntax.Rose.below\",\"Coverage.Syntax.Rose.below_1\",\"Coverage.Syntax.Rose.node\",\"Coverage.Syntax.Rose.rec\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Rose.brecOn_1.go\",\"kind\":\"definition\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"PProd\",\"PUnit\",\"List.cons\",\"List.nil\",\"PProd.mk\",\"PUnit.unit\",\"Coverage.Syntax.Rose\",\"Coverage.Syntax.Rose.below\",\"Coverage.Syntax.Rose.below_1\",\"Coverage.Syntax.Rose.node\",\"Coverage.Syntax.Rose.rec_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Stmt.brecOn.go\",\"kind\":\"definition\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"PProd\",\"PUnit\",\"String\",\"List.cons\",\"List.nil\",\"PProd.mk\",\"PUnit.unit\",\"Coverage.Syntax.Expr\",\"Coverage.Syntax.Stmt\",\"Coverage.Syntax.Expr.below\",\"Coverage.Syntax.Expr.below_1\",\"Coverage.Syntax.Expr.block\",\"Coverage.Syntax.Expr.literal\",\"Coverage.Syntax.Expr.plus\",\"Coverage.Syntax.Stmt.assign\",\"Coverage.Syntax.Stmt.below\",\"Coverage.Syntax.Stmt.rec\",\"Coverage.Syntax.Stmt.sequence\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Syntax.Term.brecOn.go\",\"kind\":\"definition\",\"module\":\"Coverage.Syntax\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"PProd\",\"PUnit\",\"PProd.mk\",\"PUnit.unit\",\"Coverage.Syntax.Term\",\"Coverage.Syntax.Term.below\",\"Coverage.Syntax.Term.literal\",\"Coverage.Syntax.Term.plus\",\"Coverage.Syntax.Term.rec\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Coverage.Types.Tree.brecOn.go\",\"kind\":\"definition\",\"module\":\"Coverage.Types\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"PProd\",\"PUnit\",\"PProd.mk\",\"PUnit.unit\",\"Coverage.Types.Tree\",\"Coverage.Types.Tree.below\",\"Coverage.Types.Tree.leaf\",\"Coverage.Types.Tree.node\",\"Coverage.Types.Tree.rec\"],\"declaration\":null,\"inductive\":null}],\"externals\":[{\"name\":\"Add\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Array\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"BEq\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Bool\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"ByteArray\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Char\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Decidable\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Except\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"GetElem?\",\"kind\":\"inductive\",\"module\":\"Init.GetElem\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"HAdd\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"HMul\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"HSub\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Int\",\"kind\":\"inductive\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Int16\",\"kind\":\"inductive\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Int32\",\"kind\":\"inductive\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Int64\",\"kind\":\"inductive\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Int8\",\"kind\":\"inductive\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"List\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Mul\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Nat\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Neg\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"OfNat\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Option\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Ord\",\"kind\":\"inductive\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Ordering\",\"kind\":\"inductive\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"PUnit\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Prod\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"String\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Sub\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"ToString\",\"kind\":\"inductive\",\"module\":\"Init.Data.ToString.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"UInt16\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"UInt32\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"UInt64\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"UInt8\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"bne\",\"kind\":\"definition\",\"module\":\"Init.Core\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instAddInt64\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instAddNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instAddUInt64\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instBEqOfDecidableEq\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instDecidableEqBool\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instDecidableEqInt32\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instDecidableEqInt64\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instDecidableEqNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instDecidableEqOrdering\",\"kind\":\"definition\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instDecidableEqString\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instDecidableEqUInt16\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instHAdd\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instHMul\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instHSub\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instMulNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instOfNat\",\"kind\":\"definition\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instOfNatNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instOrdBool\",\"kind\":\"definition\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instOrdInt\",\"kind\":\"definition\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instOrdNat\",\"kind\":\"definition\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instSubInt64\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instSubNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instSubUInt64\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instToStringInt\",\"kind\":\"definition\",\"module\":\"Init.Data.ToString.Extra\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instToStringInt8\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instToStringUInt32\",\"kind\":\"definition\",\"module\":\"Init.Data.ToString.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Array.instGetElem?NatLtSize\",\"kind\":\"definition\",\"module\":\"Init.GetElem\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Bool.false\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Bool\"},{\"name\":\"Bool.not\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Bool.true\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Bool\"},{\"name\":\"ByteArray.data\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"ByteArray.extract\",\"kind\":\"definition\",\"module\":\"Init.Data.ByteArray.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"ByteArray.fastAppend\",\"kind\":\"definition\",\"module\":\"Init.Data.ByteArray.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"ByteArray.instBEq\",\"kind\":\"definition\",\"module\":\"Init.Data.ByteArray.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"ByteArray.mk\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":true,\"inductive_type\":\"ByteArray\"},{\"name\":\"ByteArray.size\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"ByteArray.toList\",\"kind\":\"definition\",\"module\":\"Init.Data.ByteArray.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Decidable.decide\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Decidable.isFalse\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Decidable\"},{\"name\":\"Decidable.isTrue\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Decidable\"},{\"name\":\"Except.error\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Except\"},{\"name\":\"Except.ok\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Except\"},{\"name\":\"Int.decLt\",\"kind\":\"definition\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int.instAdd\",\"kind\":\"definition\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int.instDecidableEq\",\"kind\":\"definition\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int.instMul\",\"kind\":\"definition\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int.instNegInt\",\"kind\":\"definition\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int.instSub\",\"kind\":\"definition\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int.ofNat\",\"kind\":\"constructor\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":true,\"inductive_type\":\"Int\"},{\"name\":\"Int.tdiv\",\"kind\":\"definition\",\"module\":\"Init.Data.Int.DivMod.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int.tmod\",\"kind\":\"definition\",\"module\":\"Init.Data.Int.DivMod.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int16.complement\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int16.land\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int16.lor\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int16.ofInt\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int16.ofNat\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int16.shiftLeft\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int16.shiftRight\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int16.toInt\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int16.xor\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int32.complement\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int32.instNeg\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int32.instOfNat\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int32.land\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int32.lor\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int32.ofInt\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int32.ofNat\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int32.shiftLeft\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int32.shiftRight\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int32.toInt\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int32.xor\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int64.complement\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int64.decLt\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int64.instNeg\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int64.instOfNat\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int64.land\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int64.lor\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int64.ofInt\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int64.ofNat\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int64.shiftLeft\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int64.shiftRight\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int64.toInt\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int64.xor\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int8.complement\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int8.land\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int8.lor\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int8.ofInt\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int8.ofNat\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int8.shiftLeft\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int8.shiftRight\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int8.toInt\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int8.xor\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"List.all\",\"kind\":\"definition\",\"module\":\"Init.Data.List.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"List.appendTR\",\"kind\":\"definition\",\"module\":\"Init.Data.List.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"List.cons\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"List\"},{\"name\":\"List.drop\",\"kind\":\"definition\",\"module\":\"Init.Data.List.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"List.filterTR\",\"kind\":\"definition\",\"module\":\"Init.Data.List.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"List.foldl\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"List.instOrd\",\"kind\":\"definition\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"List.isEmpty\",\"kind\":\"definition\",\"module\":\"Init.Data.List.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"List.lengthTR\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"List.mapTR\",\"kind\":\"definition\",\"module\":\"Init.Data.List.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"List.nil\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"List\"},{\"name\":\"List.reverse\",\"kind\":\"definition\",\"module\":\"Init.Data.List.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"List.takeTR\",\"kind\":\"axiom\",\"module\":\"Init.Data.List.Impl\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"List.toArray\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.beq\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.ble\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.blt\",\"kind\":\"definition\",\"module\":\"Init.Data.Nat.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.decLe\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.decLt\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.div\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.mod\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.succ\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Nat\"},{\"name\":\"Nat.zero\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Nat\"},{\"name\":\"Option.isSome\",\"kind\":\"definition\",\"module\":\"Init.Data.Option.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Option.none\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Option\"},{\"name\":\"Option.some\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Option\"},{\"name\":\"Ordering.eq\",\"kind\":\"constructor\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Ordering\"},{\"name\":\"Ordering.gt\",\"kind\":\"constructor\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Ordering\"},{\"name\":\"Ordering.lt\",\"kind\":\"constructor\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Ordering\"},{\"name\":\"Prod.mk\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Prod\"},{\"name\":\"String.fromUTF8?\",\"kind\":\"definition\",\"module\":\"Init.Data.String.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"String.intercalate\",\"kind\":\"axiom\",\"module\":\"Init.Data.String.Defs\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"String.isEmpty\",\"kind\":\"definition\",\"module\":\"Init.Data.String.Defs\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"String.length\",\"kind\":\"definition\",\"module\":\"Init.Data.String.Length\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"String.splitOn\",\"kind\":\"axiom\",\"module\":\"Init.Data.String.Legacy\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"String.toInt?\",\"kind\":\"axiom\",\"module\":\"Init.Data.String.Search\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"String.toList\",\"kind\":\"definition\",\"module\":\"Init.Data.String.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"String.toUTF8\",\"kind\":\"axiom\",\"module\":\"Init.Data.String.Defs\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt16.complement\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt16.land\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt16.lor\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt16.ofInt\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt16.ofNat\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.BasicAux\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt16.shiftLeft\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt16.shiftRight\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt16.toNat\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.BasicAux\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt16.xor\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt32.complement\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt32.instOfNat\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.BasicAux\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt32.land\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt32.lor\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt32.ofInt\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt32.shiftLeft\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt32.shiftRight\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt32.toNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt32.xor\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt64.complement\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt64.decLe\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt64.decLt\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt64.instOfNat\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.BasicAux\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt64.land\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt64.lor\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt64.ofInt\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt64.ofNat\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.BasicAux\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt64.shiftLeft\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt64.shiftRight\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt64.toInt64\",\"kind\":\"definition\",\"module\":\"Init.Data.SInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt64.toNat\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.BasicAux\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt64.xor\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt8.instOfNat\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.BasicAux\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt8.instOrd\",\"kind\":\"definition\",\"module\":\"Init.Data.Ord.UInt\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Unit.unit\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true}]}\n","stdout_sha256":"61bc88661e5d1048dfc867a9b847049b2c9eeceed3cb0f4da5fc8437c0fab574","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R0.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R0.lean new file mode 100644 index 000000000..9d6a9660a --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R0.lean @@ -0,0 +1,404 @@ +import LexLeanPreservation.Core +import LexLeanPreservation.Values +import LexLeanPreservation.Primitives +import LexLeanPreservation.Fixed +import LexLeanPreservation.Keys +import LexLeanPreservation.Templates +import LexLeanPreservation.Validate +import Coverage.Boundary +import Coverage.Colls +import Coverage.Main +import Coverage.Prims +import Coverage.RecRoots +import Coverage.Recur +import Coverage.Syntax +import Coverage.Types +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +set_option linter.unusedVariables false +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0 + +def __prog : _root_.LexLeanTarget.TargetSyntax.Program := + { adts := [{ constructors := [[(.list .nat), (.list (.adt 0)), (.list (.pair .string .int)), (.option (.adt 0)), (.list (.pair .nat (.adt 0)))], [(.list (.pair .nat .int))], [(.result (.adt 0) .nat)]] }, + { constructors := [[(.list (.pair .string .int)), .string]] }], functions := [ + { parameters := [0, 1, 2, 3], types := [(.adt 0), (.adt 1), (.option (.list .nat)), (.list (.list (.pair .nat .bool)))], result := (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool)))))), + body := (.build .pair (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool)))))) [(.call 1 [(.var 0)]), (.build .pair (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))) [(.var 1), (.build .pair (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool)))) [(.var 2), (.var 3)])])]) }, + { parameters := [0], types := [(.adt 0)], result := .nat, + body := (.«match» .nat (.var 0) [(.arm (.adt 0) [1, 2, 3, 4, 5] (.prim .length [(.var 1)])), (.arm (.adt 1) [6] (.prim .length [(.var 6)])), (.arm (.adt 2) [7] (.value .nat (.nat 0)))]) }, + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.«match» .bool (.var 0) [(.arm (.adt 0) [1, 2, 3, 4, 5] (.cond (.call 3 [(.var 1)]) (.cond (.call 4 [(.var 2)]) (.cond (.call 5 [(.var 3)]) (.cond (.call 7 [(.var 4)]) (.cond (.call 8 [(.var 5)]) (.build .true .bool []) (.build .false .bool [])) (.build .false .bool [])) (.build .false .bool [])) (.build .false .bool [])) (.build .false .bool []))), (.arm (.adt 1) [6] (.cond (.call 11 [(.var 6)]) (.build .true .bool []) (.build .false .bool []))), (.arm (.adt 2) [7] (.cond (.call 12 [(.var 7)]) (.build .true .bool []) (.build .false .bool [])))]) }, + { parameters := [0], types := [(.list .nat)], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.var 1), (.var 3)]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 3 [(.var 2)]) (.build .false .bool [])))]))]) }, + { parameters := [0], types := [(.list (.adt 0))], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 2 [(.var 1)]) (.call 4 [(.var 2)]) (.build .false .bool [])))]) }, + { parameters := [0], types := [(.list (.pair .string .int))], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 6 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 5 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, + { parameters := [0], types := [.int], result := .bool, + body := (.build .true .bool []) }, + { parameters := [0], types := [(.option (.adt 0))], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .none [] (.build .true .bool [])), (.arm .some [1] (.call 2 [(.var 1)]))]) }, + { parameters := [0], types := [(.list (.pair .nat (.adt 0)))], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 9 [(.var 1)]) (.call 8 [(.var 2)]) (.build .false .bool [])))]) }, + { parameters := [0], types := [(.pair .nat (.adt 0))], result := .bool, + body := (.cond (.call 10 [(.first (.var 0))]) (.call 2 [(.second (.var 0))]) (.build .false .bool [])) }, + { parameters := [0], types := [.nat], result := .bool, + body := (.build .true .bool []) }, + { parameters := [0], types := [(.list (.pair .nat .int))], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 6 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 11 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, + { parameters := [0], types := [(.result (.adt 0) .nat)], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .ok [1] (.call 2 [(.var 1)])), (.arm .error [2] (.call 10 [(.var 2)]))]) }, + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.«match» .bool (.var 0) [(.arm (.adt 0) [1, 2] (.cond (.call 5 [(.var 1)]) (.build .true .bool []) (.build .false .bool [])))]) }, + { parameters := [0], types := [(.option (.list .nat))], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .none [] (.build .true .bool [])), (.arm .some [1] (.call 3 [(.var 1)]))]) }, + { parameters := [0], types := [(.list (.list (.pair .nat .bool)))], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 16 [(.var 1)]) (.call 15 [(.var 2)]) (.build .false .bool [])))]) }, + { parameters := [0], types := [(.list (.pair .nat .bool))], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 17 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 16 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, + { parameters := [0], types := [.bool], result := .bool, + body := (.build .true .bool []) }, + { parameters := [0, 1, 2, 3], types := [(.adt 0), (.adt 1), (.option (.list .nat)), (.list (.list (.pair .nat .bool)))], result := (.option (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))), + body := (.cond (.call 2 [(.var 0)]) (.cond (.call 13 [(.var 1)]) (.cond (.call 14 [(.var 2)]) (.cond (.call 15 [(.var 3)]) (.build .some (.option (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [(.call 0 [(.var 0), (.var 1), (.var 2), (.var 3)])]) (.build .none (.option (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])) (.build .none (.option (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])) (.build .none (.option (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])) (.build .none (.option (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])) }] } + +mutual +def __enc_0 : (Coverage.Boundary.Grove) -> _root_.LexLeanTarget.TargetSyntax.Value + | Coverage.Boundary.Grove.node __x0 __x1 __x2 __x3 __x4 => _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) __x0), (_root_.LexLeanTarget.TargetSyntax.Value.list (__items_0 __x1)), ((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.int)) __x2), (__aux_1 __x3), (_root_.LexLeanTarget.TargetSyntax.Value.list (__items_3 __x4))] + | Coverage.Boundary.Grove.leaf __x0 => _root_.LexLeanTarget.TargetSyntax.Value.adt 1 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int)) __x0)] + | Coverage.Boundary.Grove.settled __x0 => _root_.LexLeanTarget.TargetSyntax.Value.adt 2 [(__aux_4 __x0)] + +def __items_0 : (List (Coverage.Boundary.Grove)) -> List _root_.LexLeanTarget.TargetSyntax.Value + | [] => [] + | __x0 :: __x1 => (__enc_0 __x0) :: __items_0 __x1 + +def __aux_1 : (Option (Coverage.Boundary.Grove)) -> _root_.LexLeanTarget.TargetSyntax.Value + | none => _root_.LexLeanTarget.TargetSyntax.Value.none + | some __x0 => _root_.LexLeanTarget.TargetSyntax.Value.some (__enc_0 __x0) + +def __aux_2 : (Prod Nat (Coverage.Boundary.Grove)) -> _root_.LexLeanTarget.TargetSyntax.Value + | (__x0, __x1) => _root_.LexLeanTarget.TargetSyntax.Value.pair (_root_.LexLeanTarget.TargetSyntax.Value.nat __x0) (__enc_0 __x1) + +def __items_3 : (List (Prod Nat (Coverage.Boundary.Grove))) -> List _root_.LexLeanTarget.TargetSyntax.Value + | [] => [] + | __x0 :: __x1 => (__aux_2 __x0) :: __items_3 __x1 + +def __aux_4 : (Except Nat (Coverage.Boundary.Grove)) -> _root_.LexLeanTarget.TargetSyntax.Value + | Except.error __x0 => _root_.LexLeanTarget.TargetSyntax.Value.error (_root_.LexLeanTarget.TargetSyntax.Value.nat __x0) + | Except.ok __x0 => _root_.LexLeanTarget.TargetSyntax.Value.ok (__enc_0 __x0) + +end + +def __L_0 : _root_.LexLeanPreservation.ListEnc (Coverage.Boundary.Grove) := + ⟨__enc_0, __items_0, __items_0.eq_1, __items_0.eq_2⟩ + +def __O_1 : _root_.LexLeanPreservation.OptEnc (Coverage.Boundary.Grove) := + ⟨__enc_0, __aux_1, __aux_1.eq_1, __aux_1.eq_2⟩ + +def __L_3 : _root_.LexLeanPreservation.ListEnc (Prod Nat (Coverage.Boundary.Grove)) := + ⟨__aux_2, __items_3, __items_3.eq_1, __items_3.eq_2⟩ + +def __enc_1 (__s : (Coverage.Boundary.Ledger)) : _root_.LexLeanTarget.TargetSyntax.Value := + _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.int)) (__s).entries), (_root_.LexLeanTarget.TargetSyntax.Value.string (__s).owner)] + +def __fits_1 (g : (Coverage.Boundary.Grove)) : Bool := + (Bool.true && (match g with | Coverage.Boundary.Grove.node tags children labels spare paired => ((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanCollections.setSize (tags) : Nat) 18446744073709551616)) | Coverage.Boundary.Grove.leaf weights => ((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanCollections.mapSize (weights) : Nat) 18446744073709551616)) | Coverage.Boundary.Grove.settled outcome => Bool.true)) + +theorem __rel_1 (g : (Coverage.Boundary.Grove)) : _root_.LexLeanPreservation.FunRel __prog 1 [(__enc_0 g)] (_root_.LexLeanPreservation.Rel (__fits_1 g) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Coverage.Boundary.groveTags g))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV __enc_0 (fun (__a : (Coverage.Boundary.Grove)) => (match __a with | Coverage.Boundary.Grove.node tags children labels spare paired => ((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanCollections.setSize (tags) : Nat) 18446744073709551616)) | Coverage.Boundary.Grove.leaf weights => ((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanCollections.mapSize (weights) : Nat) 18446744073709551616)) | Coverage.Boundary.Grove.settled outcome => Bool.true)) (fun (__a : (Coverage.Boundary.Grove)) => _root_.LexLeanTarget.TargetSyntax.Value.nat (match __a with | Coverage.Boundary.Grove.node tags children labels spare paired => (_root_.LexLeanCollections.setSize (tags) : Nat) | Coverage.Boundary.Grove.leaf weights => (_root_.LexLeanCollections.mapSize (weights) : Nat) | Coverage.Boundary.Grove.settled outcome => (0 : Nat))) g (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (Coverage.Boundary.Grove)) _ => match __a with | Coverage.Boundary.Grove.node tags children labels spare paired => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) tags))) | Coverage.Boundary.Grove.leaf weights => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int)) weights)))) | Coverage.Boundary.Grove.settled outcome => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value))))) + +def __fits_0 (g : (Coverage.Boundary.Grove)) (ledger : (Coverage.Boundary.Ledger)) (picks : (Option (List Nat))) (spare : (List (List (Prod Nat Bool)))) : Bool := + ((((Bool.true && Bool.true) && (__fits_1 (g))) && (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) + +attribute [local irreducible] Coverage.Boundary.groveTags in +theorem __rel_0 (g : (Coverage.Boundary.Grove)) (ledger : (Coverage.Boundary.Ledger)) (picks : (Option (List Nat))) (spare : (List (List (Prod Nat Bool)))) : _root_.LexLeanPreservation.FunRel __prog 0 [(__enc_0 g), (__enc_1 ledger), ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) picks), ((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool))) spare)] (_root_.LexLeanPreservation.Rel (__fits_0 g ledger picks spare) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair __enc_1 (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool)))))) (Coverage.Boundary.groveRoot g ledger picks spare))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_1 (g))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) + +def denote (g : (Coverage.Boundary.Grove)) (ledger : (Coverage.Boundary.Ledger)) (picks : (Option (List Nat))) (spare : (List (List (Prod Nat Bool)))) : _root_.LexLeanPreservation.Obs := + _root_.cond (__fits_0 g ledger picks spare) (_root_.LexLeanPreservation.Obs.value (((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair __enc_1 (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool)))))) (Coverage.Boundary.groveRoot g ledger picks spare)))) _root_.LexLeanPreservation.Obs.overflow + +theorem root (g : (Coverage.Boundary.Grove)) (ledger : (Coverage.Boundary.Ledger)) (picks : (Option (List Nat))) (spare : (List (List (Prod Nat Bool)))) : _root_.LexLeanPreservation.RunConv __prog 0 [(__enc_0 g), (__enc_1 ledger), ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) picks), ((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool))) spare)] (_root_.LexLeanPreservation.Rel (__fits_0 g ledger picks spare) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair __enc_1 (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool)))))) (Coverage.Boundary.groveRoot g ledger picks spare))) := + _root_.LexLeanPreservation.run_of_funRel (__rel_0 g ledger picks spare) + +def __valid_3 : (List Nat) -> Bool := + _root_.LexLeanPreservation.ascSet (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) + +def __inv_3 : (List Nat) -> Prop := + _root_.LexLeanPreservation.InvSet (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) + +theorem __viff_3 : ∀ (__v : (List Nat)), __valid_3 __v = Bool.true ↔ __inv_3 __v := + _root_.LexLeanPreservation.ascSet_inv (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) + +theorem __vrel_3 : ∀ (__v : (List Nat)), _root_.LexLeanPreservation.FunRel __prog 3 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_3 __v))) := + _root_.LexLeanPreservation.tpl_validSet (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) rfl + +def __valid_6 : Int -> Bool := + fun _ => Bool.true + +def __inv_6 : Int -> Prop := + fun _ => _root_.True + +theorem __viff_6 : ∀ (__v : Int), __valid_6 __v = Bool.true ↔ __inv_6 __v := + fun __v => _root_.LexLeanPreservation.validTrue_inv __v + +theorem __vrel_6 : ∀ (__v : Int), _root_.LexLeanPreservation.FunRel __prog 6 [(_root_.LexLeanTarget.TargetSyntax.Value.int __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_6 __v))) := + _root_.LexLeanPreservation.tpl_validTrue _root_.LexLeanTarget.TargetSyntax.Value.int rfl + +def __valid_5 : (List (Prod String Int)) -> Bool := + _root_.LexLeanPreservation.ascMap (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) __valid_6 + +def __inv_5 : (List (Prod String Int)) -> Prop := + _root_.LexLeanPreservation.InvMap (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) __inv_6 + +theorem __viff_5 : ∀ (__v : (List (Prod String Int))), __valid_5 __v = Bool.true ↔ __inv_5 __v := + _root_.LexLeanPreservation.ascMap_inv (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) __valid_6 __inv_6 __viff_6 + +theorem __vrel_5 : ∀ (__v : (List (Prod String Int))), _root_.LexLeanPreservation.FunRel __prog 5 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.int)) __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_5 __v))) := + _root_.LexLeanPreservation.tpl_validMap (_root_.LexLeanPreservation.keySpec_string _root_.LexLeanCollections.compareCodes rfl (fun _ _ => rfl) (fun _ _ => rfl) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) (fun _ _ => rfl)) __valid_6 (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.int)) (fun _ => rfl) __vrel_6 rfl + +def __valid_10 : Nat -> Bool := + fun _ => Bool.true + +def __inv_10 : Nat -> Prop := + fun _ => _root_.True + +theorem __viff_10 : ∀ (__v : Nat), __valid_10 __v = Bool.true ↔ __inv_10 __v := + fun __v => _root_.LexLeanPreservation.validTrue_inv __v + +theorem __vrel_10 : ∀ (__v : Nat), _root_.LexLeanPreservation.FunRel __prog 10 [(_root_.LexLeanTarget.TargetSyntax.Value.nat __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_10 __v))) := + _root_.LexLeanPreservation.tpl_validTrue _root_.LexLeanTarget.TargetSyntax.Value.nat rfl + +def __valid_11 : (List (Prod Nat Int)) -> Bool := + _root_.LexLeanPreservation.ascMap (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) __valid_6 + +def __inv_11 : (List (Prod Nat Int)) -> Prop := + _root_.LexLeanPreservation.InvMap (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) __inv_6 + +theorem __viff_11 : ∀ (__v : (List (Prod Nat Int))), __valid_11 __v = Bool.true ↔ __inv_11 __v := + _root_.LexLeanPreservation.ascMap_inv (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) __valid_6 __inv_6 __viff_6 + +theorem __vrel_11 : ∀ (__v : (List (Prod Nat Int))), _root_.LexLeanPreservation.FunRel __prog 11 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int)) __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_11 __v))) := + _root_.LexLeanPreservation.tpl_validMap (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) __valid_6 (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int)) (fun _ => rfl) __vrel_6 rfl + +mutual +def __valid_2 : (Coverage.Boundary.Grove) -> Bool + | Coverage.Boundary.Grove.node __x0 __x1 __x2 __x3 __x4 => (if __valid_3 __x0 then (if __valid_4 __x1 then (if __valid_5 __x2 then (if __valid_7 __x3 then (if __valid_8 __x4 then Bool.true else Bool.false) else Bool.false) else Bool.false) else Bool.false) else Bool.false) + | Coverage.Boundary.Grove.leaf __x0 => (if __valid_11 __x0 then Bool.true else Bool.false) + | Coverage.Boundary.Grove.settled __x0 => (if __valid_12 __x0 then Bool.true else Bool.false) + +def __valid_4 : (List (Coverage.Boundary.Grove)) -> Bool + | [] => Bool.true + | __x0 :: __x1 => if __valid_2 __x0 then __valid_4 __x1 else Bool.false + +def __valid_7 : (Option (Coverage.Boundary.Grove)) -> Bool + | none => Bool.true + | some __x0 => __valid_2 __x0 + +def __valid_8 : (List (Prod Nat (Coverage.Boundary.Grove))) -> Bool + | [] => Bool.true + | __x0 :: __x1 => if __valid_9 __x0 then __valid_8 __x1 else Bool.false + +def __valid_9 : (Prod Nat (Coverage.Boundary.Grove)) -> Bool + | (__x0, __x1) => if __valid_10 __x0 then __valid_2 __x1 else Bool.false + +def __valid_12 : (Except Nat (Coverage.Boundary.Grove)) -> Bool + | Except.error __x0 => __valid_10 __x0 + | Except.ok __x0 => __valid_2 __x0 + +end + +mutual +def __inv_2 : (Coverage.Boundary.Grove) -> Prop + | Coverage.Boundary.Grove.node __x0 __x1 __x2 __x3 __x4 => (__inv_3 __x0 ∧ (__inv_4 __x1 ∧ (__inv_5 __x2 ∧ (__inv_7 __x3 ∧ (__inv_8 __x4 ∧ _root_.True))))) + | Coverage.Boundary.Grove.leaf __x0 => (__inv_11 __x0 ∧ _root_.True) + | Coverage.Boundary.Grove.settled __x0 => (__inv_12 __x0 ∧ _root_.True) + +def __inv_4 : (List (Coverage.Boundary.Grove)) -> Prop + | [] => _root_.True + | __x0 :: __x1 => __inv_2 __x0 ∧ __inv_4 __x1 + +def __inv_7 : (Option (Coverage.Boundary.Grove)) -> Prop + | none => _root_.True + | some __x0 => __inv_2 __x0 + +def __inv_8 : (List (Prod Nat (Coverage.Boundary.Grove))) -> Prop + | [] => _root_.True + | __x0 :: __x1 => __inv_9 __x0 ∧ __inv_8 __x1 + +def __inv_9 : (Prod Nat (Coverage.Boundary.Grove)) -> Prop + | (__x0, __x1) => __inv_10 __x0 ∧ __inv_2 __x1 + +def __inv_12 : (Except Nat (Coverage.Boundary.Grove)) -> Prop + | Except.error __x0 => __inv_10 __x0 + | Except.ok __x0 => __inv_2 __x0 + +end + +mutual +theorem __viff_2 : ∀ (__v : (Coverage.Boundary.Grove)), __valid_2 __v = Bool.true ↔ __inv_2 __v + | Coverage.Boundary.Grove.node __x0 __x1 __x2 __x3 __x4 => by rw [__valid_2.eq_def, __inv_2.eq_def]; exact (_root_.LexLeanPreservation.condAnd_iff (__viff_3 __x0) (_root_.LexLeanPreservation.condAnd_iff (__viff_4 __x1) (_root_.LexLeanPreservation.condAnd_iff (__viff_5 __x2) (_root_.LexLeanPreservation.condAnd_iff (__viff_7 __x3) (_root_.LexLeanPreservation.condAnd_iff (__viff_8 __x4) _root_.LexLeanPreservation.trueIff))))) + | Coverage.Boundary.Grove.leaf __x0 => by rw [__valid_2.eq_def, __inv_2.eq_def]; exact (_root_.LexLeanPreservation.condAnd_iff (__viff_11 __x0) _root_.LexLeanPreservation.trueIff) + | Coverage.Boundary.Grove.settled __x0 => by rw [__valid_2.eq_def, __inv_2.eq_def]; exact (_root_.LexLeanPreservation.condAnd_iff (__viff_12 __x0) _root_.LexLeanPreservation.trueIff) + +theorem __viff_4 : ∀ (__v : (List (Coverage.Boundary.Grove))), __valid_4 __v = Bool.true ↔ __inv_4 __v + | [] => by rw [__valid_4.eq_def, __inv_4.eq_def]; exact _root_.LexLeanPreservation.trueIff + | __x0 :: __x1 => by rw [__valid_4.eq_def, __inv_4.eq_def]; exact _root_.LexLeanPreservation.condAnd_iff (__viff_2 __x0) (__viff_4 __x1) + +theorem __viff_7 : ∀ (__v : (Option (Coverage.Boundary.Grove))), __valid_7 __v = Bool.true ↔ __inv_7 __v + | none => by rw [__valid_7.eq_def, __inv_7.eq_def]; exact _root_.LexLeanPreservation.trueIff + | some __x0 => by rw [__valid_7.eq_def, __inv_7.eq_def]; exact __viff_2 __x0 + +theorem __viff_8 : ∀ (__v : (List (Prod Nat (Coverage.Boundary.Grove)))), __valid_8 __v = Bool.true ↔ __inv_8 __v + | [] => by rw [__valid_8.eq_def, __inv_8.eq_def]; exact _root_.LexLeanPreservation.trueIff + | __x0 :: __x1 => by rw [__valid_8.eq_def, __inv_8.eq_def]; exact _root_.LexLeanPreservation.condAnd_iff (__viff_9 __x0) (__viff_8 __x1) + +theorem __viff_9 : ∀ (__v : (Prod Nat (Coverage.Boundary.Grove))), __valid_9 __v = Bool.true ↔ __inv_9 __v + | (__x0, __x1) => by rw [__valid_9.eq_def, __inv_9.eq_def]; exact _root_.LexLeanPreservation.condAnd_iff (__viff_10 __x0) (__viff_2 __x1) + +theorem __viff_12 : ∀ (__v : (Except Nat (Coverage.Boundary.Grove))), __valid_12 __v = Bool.true ↔ __inv_12 __v + | Except.error __x0 => by rw [__valid_12.eq_def, __inv_12.eq_def]; exact __viff_10 __x0 + | Except.ok __x0 => by rw [__valid_12.eq_def, __inv_12.eq_def]; exact __viff_2 __x0 + +end + +mutual +theorem __vrel_2 : ∀ (__v : (Coverage.Boundary.Grove)), _root_.LexLeanPreservation.FunRel __prog 2 [(__enc_0 __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_2 __v))) + | Coverage.Boundary.Grove.node __x0 __x1 __x2 __x3 __x4 => by rw [__valid_2.eq_def]; exact _root_.LexLeanPreservation.FunRel.fits_eq (_root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_match (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun _ => Bool.true) (fun __c => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __c then (if __valid_4 __x1 then (if __valid_5 __x2 then (if __valid_7 __x3 then (if __valid_8 __x4 then Bool.true else Bool.false) else Bool.false) else Bool.false) else Bool.false) else Bool.false)) (__valid_3 __x0) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_3 __x0)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun _ => Bool.true) (fun __c => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __c then (if __valid_5 __x2 then (if __valid_7 __x3 then (if __valid_8 __x4 then Bool.true else Bool.false) else Bool.false) else Bool.false) else Bool.false)) (__valid_4 __x1) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_4 __x1)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun _ => Bool.true) (fun __c => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __c then (if __valid_7 __x3 then (if __valid_8 __x4 then Bool.true else Bool.false) else Bool.false) else Bool.false)) (__valid_5 __x2) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_5 __x2)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun _ => Bool.true) (fun __c => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __c then (if __valid_8 __x4 then Bool.true else Bool.false) else Bool.false)) (__valid_7 __x3) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_7 __x3)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun _ => Bool.true) (fun __c => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __c then Bool.true else Bool.false)) (__valid_8 __x4) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_8 __x4)) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))))) rfl + | Coverage.Boundary.Grove.leaf __x0 => by rw [__valid_2.eq_def]; exact _root_.LexLeanPreservation.FunRel.fits_eq (_root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_match (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun _ => Bool.true) (fun __c => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __c then Bool.true else Bool.false)) (__valid_11 __x0) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_11 __x0)) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))))) rfl + | Coverage.Boundary.Grove.settled __x0 => by rw [__valid_2.eq_def]; exact _root_.LexLeanPreservation.FunRel.fits_eq (_root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_match (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun _ => Bool.true) (fun __c => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __c then Bool.true else Bool.false)) (__valid_12 __x0) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_12 __x0)) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))))))) rfl + +theorem __vrel_4 : ∀ (__v : (List (Coverage.Boundary.Grove))), _root_.LexLeanPreservation.FunRel __prog 4 [((_root_.LexLeanPreservation.ListEnc.enc __L_0) __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_4 __v))) + | [] => by rw [__valid_4.eq_def]; exact _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_match (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true))) + | __x0 :: __x1 => by rw [__valid_4.eq_def]; exact _root_.LexLeanPreservation.FunRel.fits_eq (_root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_match (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun _ => Bool.true) (fun __c => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __c then __valid_4 __x1 else Bool.false)) (__valid_2 __x0) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_2 __x0)) (fun _ => _root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_4 __x1)) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))))) rfl + +theorem __vrel_7 : ∀ (__v : (Option (Coverage.Boundary.Grove))), _root_.LexLeanPreservation.FunRel __prog 7 [((_root_.LexLeanPreservation.OptEnc.enc __O_1) __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_7 __v))) + | none => by rw [__valid_7.eq_def]; exact _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_match (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true))) + | some __x0 => by rw [__valid_7.eq_def]; exact _root_.LexLeanPreservation.FunRel.fits_eq (_root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_match (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_2 __x0)))))) rfl + +theorem __vrel_8 : ∀ (__v : (List (Prod Nat (Coverage.Boundary.Grove)))), _root_.LexLeanPreservation.FunRel __prog 8 [((_root_.LexLeanPreservation.ListEnc.enc __L_3) __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_8 __v))) + | [] => by rw [__valid_8.eq_def]; exact _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_match (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true))) + | __x0 :: __x1 => by rw [__valid_8.eq_def]; exact _root_.LexLeanPreservation.FunRel.fits_eq (_root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_match (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun _ => Bool.true) (fun __c => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __c then __valid_8 __x1 else Bool.false)) (__valid_9 __x0) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_9 __x0)) (fun _ => _root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_8 __x1)) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))))) rfl + +theorem __vrel_9 : ∀ (__v : (Prod Nat (Coverage.Boundary.Grove))), _root_.LexLeanPreservation.FunRel __prog 9 [(__aux_2 __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_9 __v))) + | (__x0, __x1) => by rw [__valid_9.eq_def]; exact _root_.LexLeanPreservation.FunRel.fits_eq (_root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun _ => Bool.true) (fun __c => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __c then __valid_2 __x1 else Bool.false)) (__valid_10 __x0) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil) (__vrel_10 __x0)) (fun _ => _root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil) (__vrel_2 __x1)) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) rfl + +theorem __vrel_12 : ∀ (__v : (Except Nat (Coverage.Boundary.Grove))), _root_.LexLeanPreservation.FunRel __prog 12 [(__aux_4 __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_12 __v))) + | Except.error __x0 => by rw [__valid_12.eq_def]; exact _root_.LexLeanPreservation.FunRel.fits_eq (_root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_match (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_10 __x0)))))) rfl + | Except.ok __x0 => by rw [__valid_12.eq_def]; exact _root_.LexLeanPreservation.FunRel.fits_eq (_root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_match (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_2 __x0))))) rfl + +end + +theorem __vinv_4 : ∀ (__v : (List (Coverage.Boundary.Grove))), __inv_4 __v ↔ _root_.LexLeanPreservation.InvList __inv_2 __v := + _root_.LexLeanPreservation.invList_eqs __inv_2 __inv_4 (by rw [__inv_4.eq_def]) (fun _ _ => by rw [__inv_4.eq_def]) + +theorem __vinv_7 : ∀ (__v : (Option (Coverage.Boundary.Grove))), __inv_7 __v ↔ _root_.LexLeanPreservation.InvOption __inv_2 __v + | none => by rw [__inv_7.eq_def]; exact Iff.rfl + | some _ => by rw [__inv_7.eq_def]; exact Iff.rfl + +theorem __vinv_8 : ∀ (__v : (List (Prod Nat (Coverage.Boundary.Grove)))), __inv_8 __v ↔ _root_.LexLeanPreservation.InvList __inv_9 __v := + _root_.LexLeanPreservation.invList_eqs __inv_9 __inv_8 (by rw [__inv_8.eq_def]) (fun _ _ => by rw [__inv_8.eq_def]) + +theorem __vinv_9 : ∀ (__v : (Prod Nat (Coverage.Boundary.Grove))), __inv_9 __v ↔ _root_.LexLeanPreservation.InvPair __inv_10 __inv_2 __v + | (_, _) => by rw [__inv_9.eq_def]; exact Iff.rfl + +theorem __vinv_12 : ∀ (__v : (Except Nat (Coverage.Boundary.Grove))), __inv_12 __v ↔ _root_.LexLeanPreservation.InvExcept __inv_10 __inv_2 __v + | Except.error _ => by rw [__inv_12.eq_def]; exact Iff.rfl + | Except.ok _ => by rw [__inv_12.eq_def]; exact Iff.rfl + +def __valid_13 (__s : (Coverage.Boundary.Ledger)) : Bool := + (if __valid_5 (__s).entries then Bool.true else Bool.false) + +def __inv_13 (__s : (Coverage.Boundary.Ledger)) : Prop := + (__inv_5 (__s).entries ∧ _root_.True) + +theorem __viff_13 : ∀ (__s : (Coverage.Boundary.Ledger)), __valid_13 __s = Bool.true ↔ __inv_13 __s := + fun __s => (_root_.LexLeanPreservation.condAnd_iff (__viff_5 (__s).entries) _root_.LexLeanPreservation.trueIff) + +theorem __vrel_13 : ∀ (__s : (Coverage.Boundary.Ledger)), _root_.LexLeanPreservation.FunRel __prog 13 [(__enc_1 __s)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_13 __s))) := + fun __s => _root_.LexLeanPreservation.FunRel.fits_eq (_root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_match (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun _ => Bool.true) (fun __c => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __c then Bool.true else Bool.false)) (__valid_5 (__s).entries) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_5 (__s).entries)) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))))) rfl + +def __valid_14 : (Option (List Nat)) -> Bool := + _root_.LexLeanPreservation.validOption __valid_3 + +def __inv_14 : (Option (List Nat)) -> Prop := + _root_.LexLeanPreservation.InvOption __inv_3 + +theorem __viff_14 : ∀ (__v : (Option (List Nat))), __valid_14 __v = Bool.true ↔ __inv_14 __v := + _root_.LexLeanPreservation.validOption_inv __valid_3 __inv_3 __viff_3 + +theorem __vrel_14 : ∀ (__v : (Option (List Nat))), _root_.LexLeanPreservation.FunRel __prog 14 [((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_14 __v))) := + _root_.LexLeanPreservation.tpl_validOption __valid_3 __vrel_3 rfl + +def __valid_17 : Bool -> Bool := + fun _ => Bool.true + +def __inv_17 : Bool -> Prop := + fun _ => _root_.True + +theorem __viff_17 : ∀ (__v : Bool), __valid_17 __v = Bool.true ↔ __inv_17 __v := + fun __v => _root_.LexLeanPreservation.validTrue_inv __v + +theorem __vrel_17 : ∀ (__v : Bool), _root_.LexLeanPreservation.FunRel __prog 17 [(_root_.LexLeanTarget.TargetSyntax.Value.bool __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_17 __v))) := + _root_.LexLeanPreservation.tpl_validTrue _root_.LexLeanTarget.TargetSyntax.Value.bool rfl + +def __valid_16 : (List (Prod Nat Bool)) -> Bool := + _root_.LexLeanPreservation.ascMap (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) __valid_17 + +def __inv_16 : (List (Prod Nat Bool)) -> Prop := + _root_.LexLeanPreservation.InvMap (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) __inv_17 + +theorem __viff_16 : ∀ (__v : (List (Prod Nat Bool))), __valid_16 __v = Bool.true ↔ __inv_16 __v := + _root_.LexLeanPreservation.ascMap_inv (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) __valid_17 __inv_17 __viff_17 + +theorem __vrel_16 : ∀ (__v : (List (Prod Nat Bool))), _root_.LexLeanPreservation.FunRel __prog 16 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool)) __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_16 __v))) := + _root_.LexLeanPreservation.tpl_validMap (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) __valid_17 (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool)) (fun _ => rfl) __vrel_17 rfl + +def __valid_15 : (List (List (Prod Nat Bool))) -> Bool := + _root_.LexLeanPreservation.validList __valid_16 + +def __inv_15 : (List (List (Prod Nat Bool))) -> Prop := + _root_.LexLeanPreservation.InvList __inv_16 + +theorem __viff_15 : ∀ (__v : (List (List (Prod Nat Bool)))), __valid_15 __v = Bool.true ↔ __inv_15 __v := + _root_.LexLeanPreservation.validList_inv __valid_16 __inv_16 __viff_16 + +theorem __vrel_15 : ∀ (__v : (List (List (Prod Nat Bool)))), _root_.LexLeanPreservation.FunRel __prog 15 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool))) __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_15 __v))) := + _root_.LexLeanPreservation.tpl_validList __valid_16 (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool))) (fun _ => rfl) __vrel_16 rfl + +def entryFits (g : (Coverage.Boundary.Grove)) (ledger : (Coverage.Boundary.Ledger)) (picks : (Option (List Nat))) (spare : (List (List (Prod Nat Bool)))) : Bool := + (if __valid_2 g then (if __valid_13 ledger then (if __valid_14 picks then (if __valid_15 spare then __fits_0 g ledger picks spare else Bool.true) else Bool.true) else Bool.true) else Bool.true) + +def entryValue (g : (Coverage.Boundary.Grove)) (ledger : (Coverage.Boundary.Ledger)) (picks : (Option (List Nat))) (spare : (List (List (Prod Nat Bool)))) : _root_.LexLeanTarget.TargetSyntax.Value := + (if __valid_2 g then (if __valid_13 ledger then (if __valid_14 picks then (if __valid_15 spare then (_root_.LexLeanTarget.TargetSyntax.Value.some ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair __enc_1 (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool)))))) (Coverage.Boundary.groveRoot g ledger picks spare))) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) + +/-- The entry's observation. -/ +def denoteEntry (g : (Coverage.Boundary.Grove)) (ledger : (Coverage.Boundary.Ledger)) (picks : (Option (List Nat))) (spare : (List (List (Prod Nat Bool)))) : _root_.LexLeanPreservation.Obs := + _root_.cond (_root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.entryFits g ledger picks spare) (_root_.LexLeanPreservation.Obs.value (_root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.entryValue g ledger picks spare)) _root_.LexLeanPreservation.Obs.overflow + +/-- §17.12's invariants of the validated parameters. -/ +def accepts (g : (Coverage.Boundary.Grove)) (ledger : (Coverage.Boundary.Ledger)) (picks : (Option (List Nat))) (spare : (List (List (Prod Nat Bool)))) : Prop := + (__inv_2 g ∧ (__inv_13 ledger ∧ (__inv_14 picks ∧ (__inv_15 spare ∧ _root_.True)))) + +theorem entry (g : (Coverage.Boundary.Grove)) (ledger : (Coverage.Boundary.Ledger)) (picks : (Option (List Nat))) (spare : (List (List (Prod Nat Bool)))) : _root_.LexLeanPreservation.RunConv __prog 18 [(__enc_0 g), (__enc_1 ledger), ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) picks), ((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool))) spare)] (_root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.denoteEntry g ledger picks spare) := + _root_.LexLeanPreservation.run_of_funRel (_root_.LexLeanPreservation.FunRel.fits_eq (_root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun __c => if __c then (if __valid_13 ledger then (if __valid_14 picks then (if __valid_15 spare then __fits_0 g ledger picks spare else Bool.true) else Bool.true) else Bool.true) else Bool.true) (fun __c => if __c then (if __valid_13 ledger then (if __valid_14 picks then (if __valid_15 spare then (_root_.LexLeanTarget.TargetSyntax.Value.some ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair __enc_1 (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool)))))) (Coverage.Boundary.groveRoot g ledger picks spare))) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) (__valid_2 g) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_2 g)) (fun _ => _root_.LexLeanPreservation.Conv.fits_eq (_root_.LexLeanPreservation.conv_cond (fun __c => if __c then (if __valid_14 picks then (if __valid_15 spare then __fits_0 g ledger picks spare else Bool.true) else Bool.true) else Bool.true) (fun __c => if __c then (if __valid_14 picks then (if __valid_15 spare then (_root_.LexLeanTarget.TargetSyntax.Value.some ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair __enc_1 (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool)))))) (Coverage.Boundary.groveRoot g ledger picks spare))) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) (__valid_13 ledger) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_13 ledger)) (fun _ => _root_.LexLeanPreservation.Conv.fits_eq (_root_.LexLeanPreservation.conv_cond (fun __c => if __c then (if __valid_15 spare then __fits_0 g ledger picks spare else Bool.true) else Bool.true) (fun __c => if __c then (if __valid_15 spare then (_root_.LexLeanTarget.TargetSyntax.Value.some ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair __enc_1 (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool)))))) (Coverage.Boundary.groveRoot g ledger picks spare))) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) (__valid_14 picks) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_14 picks)) (fun _ => _root_.LexLeanPreservation.Conv.fits_eq (_root_.LexLeanPreservation.conv_cond (fun __c => if __c then __fits_0 g ledger picks spare else Bool.true) (fun __c => if __c then (_root_.LexLeanTarget.TargetSyntax.Value.some ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair __enc_1 (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool)))))) (Coverage.Boundary.groveRoot g ledger picks spare))) else _root_.LexLeanTarget.TargetSyntax.Value.none) (__valid_15 spare) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_15 spare)) (fun _ => _root_.LexLeanPreservation.Conv.fits_eq (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)))) (__rel_0 g ledger picks spare)) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some) (by simp)) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) (by simp)) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) (by simp)) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) (by simp)) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (by simp [_root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.entryFits])) + +theorem entry_accepts (g : (Coverage.Boundary.Grove)) (ledger : (Coverage.Boundary.Ledger)) (picks : (Option (List Nat))) (spare : (List (List (Prod Nat Bool)))) (__h : _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.accepts g ledger picks spare) : _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.denoteEntry g ledger picks spare = _root_.LexLeanPreservation.someObs (_root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.denote g ledger picks spare) := by + unfold _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.accepts at __h + unfold _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.denoteEntry _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.entryFits _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.entryValue _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.denote + simp only [_root_.if_true, (__viff_2 g).mpr __h.1, (__viff_13 ledger).mpr __h.2.1, (__viff_14 picks).mpr __h.2.2.1, (__viff_15 spare).mpr __h.2.2.2.1] + cases __fits_0 g ledger picks spare <;> rfl + +theorem entry_refuses (g : (Coverage.Boundary.Grove)) (ledger : (Coverage.Boundary.Ledger)) (picks : (Option (List Nat))) (spare : (List (List (Prod Nat Bool)))) (__h : ¬ _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.accepts g ledger picks spare) : _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.denoteEntry g ledger picks spare = _root_.LexLeanPreservation.Obs.value _root_.LexLeanTarget.TargetSyntax.Value.none := by + unfold _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.accepts at __h + unfold _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.denoteEntry _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.entryFits _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.entryValue + cases __c0 : __valid_2 g + · simp + · cases __c1 : __valid_13 ledger + · simp + · cases __c2 : __valid_14 picks + · simp + · cases __c3 : __valid_15 spare + · simp + · exact _root_.absurd ⟨(__viff_2 g).mp __c0, (__viff_13 ledger).mp __c1, (__viff_14 picks).mp __c2, (__viff_15 spare).mp __c3, _root_.trivial⟩ __h + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0 diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R0/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R0/Compose/RustStd.lex.tex new file mode 100644 index 000000000..f7de79482 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R0/Compose/RustStd.lex.tex @@ -0,0 +1,1883 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.Compose.RustStd.__wt_0 : @2059 := @2058 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.Compose.RustStd.__wt_0], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.Compose.RustStd.__wtItems_0 : @2081 := @2080 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.Compose.RustStd.__wtItems_0], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.Compose.RustStd.__wtAux_1 : @2103 := @2102 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.Compose.RustStd.__wtAux_1], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.Compose.RustStd.__wtItems_3 : @2125 := @2124 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.Compose.RustStd.__wtItems_3], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.Compose.RustStd.__wtAux_4 : @2147 := @2146 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.Compose.RustStd.__wtAux_4], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.Compose.RustStd.__wtAux_2 : @2169 := @2168 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.Compose.RustStd.__wtAux_2], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.Compose.RustStd.__wt_1 : @2176 := @2362 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.Compose.RustStd.__wt_1], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.Compose.RustStd.root : @3729 := @3730 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.RustStd.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.RustStd.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.RustStd.flags +@3 := Coverage.Boundary.Grove +@4 := #0 +@5 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.__enc_0 +@6 := @5 @4 +@7 := LexLeanPreservation.Rust.WT +@8 := LexLeanTarget.TargetSyntax.Ty.adt +@9 := 0 +@10 := @8 @9 +@11 := @7 @0 +@12 := @11 @1 +@13 := @12 @2 +@15 := @13 @6 @10 +@16 := fun (__v : @3) => @15 +@17 := List.{0} +@18 := @17 @3 +@19 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.__items_0 +@20 := @19 @4 +@21 := LexLeanPreservation.Rust.WTAll +@22 := @21 @0 +@23 := @22 @1 +@24 := @23 @2 +@26 := @24 @20 @10 +@27 := fun (__v : @18) => @26 +@28 := Option.{0} +@29 := @28 @3 +@30 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.__aux_1 +@31 := @30 @4 +@32 := LexLeanTarget.TargetSyntax.Ty.option +@33 := @32 @10 +@35 := @13 @31 @33 +@36 := fun (__v : @29) => @35 +@37 := Nat +@38 := Prod.{0, 0} +@39 := @38 @37 +@40 := @39 @3 +@41 := @17 @40 +@42 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.__items_3 +@43 := @42 @4 +@44 := LexLeanTarget.TargetSyntax.Ty.nat +@45 := LexLeanTarget.TargetSyntax.Ty.pair +@46 := @45 @44 +@47 := @46 @10 +@49 := @24 @43 @47 +@50 := fun (__v : @41) => @49 +@53 := Except.{0, 0} @37 @3 +@54 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.__aux_4 +@55 := @54 @4 +@56 := LexLeanTarget.TargetSyntax.Ty.result +@57 := @56 @10 +@58 := @57 @44 +@60 := @13 @55 @58 +@61 := fun (__v : @53) => @60 +@62 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.__aux_2 +@65 := @13 (@62 @4) @47 +@66 := fun (__v : @40) => @65 +@67 := #7 +@68 := #6 +@69 := #2 +@70 := #5 +@71 := #4 +@72 := #1 +@73 := #3 +@74 := LexLeanTarget.TargetSyntax.Value.nat +@75 := LexLeanPreservation.encList +@76 := @75 @37 +@77 := @76 @74 +@78 := @77 @67 +@79 := LexLeanTarget.TargetSyntax.Ty.list +@80 := @79 @44 +@81 := LexLeanTarget.TargetSyntax.Program +@82 := LexLeanPreservation.Rust.RCrate +@83 := LexLeanPreservation.Rust.Flags +@86 := @7 @73 @69 @72 +@87 := @74 @4 +@93 := {p : @81} -> {c : @82} -> {A : @83} -> (n : @37) -> @86 @87 @44 +@95 := LexLeanPreservation.Rust.wt_nat @0 +@97 := @11 @69 @72 +@102 := {c : @82} -> {A : @83} -> (n : @37) -> @97 @87 @44 +@103 := @95 @1 +@104 := @12 @72 +@108 := {A : @83} -> (n : @37) -> @104 @87 @44 +@109 := @103 @2 +@110 := @13 @87 +@111 := @110 @44 +@112 := (n : @37) -> @111 +@113 := @109 @4 +@114 := fun (__x : @37) => @113 +@115 := Sort 1 +@116 := LexLeanTarget.TargetSyntax.Value +@117 := (a._@._internal._hyg.#0 : @4) -> @116 +@118 := LexLeanTarget.TargetSyntax.Ty +@121 := @7 @68 @70 @71 +@122 := @69 @4 +@125 := (x : @69) -> @121 @122 @72 +@126 := @17 @73 +@129 := @7 @67 @68 @70 +@132 := @75 @71 @73 @4 +@133 := @129 @132 +@134 := @79 @69 +@143 := {p : @81} -> + {c : @82} -> + {A : @83} -> {α : @115} -> {e : @117} -> {t : @118} -> (h : @125) -> (xs : @126) -> @133 @134 +@145 := LexLeanPreservation.Rust.wt_encList @0 +@147 := @11 @70 @71 +@150 := (x : @69) -> @147 @122 @72 +@152 := @11 @68 @70 +@161 := {c : @82} -> + {A : @83} -> {α : @115} -> {e : @117} -> {t : @118} -> (h : @150) -> (xs : @126) -> @152 @132 @134 +@162 := @145 @1 +@163 := @12 @71 +@166 := (x : @69) -> @163 @122 @72 +@167 := @12 @70 +@175 := {A : @83} -> + {α : @115} -> {e : @117} -> {t : @118} -> (h : @166) -> (xs : @126) -> @167 @132 @134 +@176 := @162 @2 +@178 := @13 @122 @72 +@179 := (x : @69) -> @178 +@186 := {α : @115} -> {e : @117} -> {t : @118} -> (h : @179) -> (xs : @126) -> @13 @132 @134 +@187 := @176 @37 +@188 := (a._@._internal._hyg.#0 : @37) -> @116 +@189 := (x : @37) -> @178 +@190 := @17 @37 +@198 := {e : @188} -> {t : @118} -> (h : @189) -> (xs : @190) -> @13 (@76 @73 @4) @134 +@199 := @187 @74 +@201 := (x : @37) -> @110 @72 +@203 := @13 (@77 @4) +@207 := {t : @118} -> (h : @201) -> (xs : @190) -> @203 @134 +@208 := @199 @44 +@209 := (x : @37) -> @111 +@210 := @203 @80 +@212 := (h : @209) -> (xs : @190) -> @210 +@213 := @208 @114 +@214 := @213 @67 +@216 := @13 @78 @80 +@217 := LexLeanPreservation.ListEnc.enc +@218 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.__L_0 +@220 := @217 @3 @218 +@221 := @220 @68 +@222 := @79 @10 +@223 := @19 @68 +@224 := @17 @116 +@229 := @21 @71 @73 @69 @72 @4 +@232 := @7 @70 @71 @73 +@233 := LexLeanTarget.TargetSyntax.Value.list +@234 := @233 @69 +@235 := @232 @234 +@236 := @79 @72 +@243 := {p : @81} -> {c : @82} -> {A : @83} -> {vs : @224} -> {t : @118} -> (h : @229) -> @235 @236 +@245 := LexLeanPreservation.Rust.wt_list @0 +@249 := @22 @73 @69 @72 @4 +@251 := @11 @71 @73 +@258 := {c : @82} -> {A : @83} -> {vs : @224} -> {t : @118} -> (h : @249) -> @251 @234 @236 +@259 := @245 @1 +@262 := @23 @69 @72 @4 +@263 := @12 @73 +@269 := {A : @83} -> {vs : @224} -> {t : @118} -> (h : @262) -> @263 @234 @236 +@270 := @259 @2 +@277 := {vs : @224} -> {t : @118} -> (h : @24 @72 @4) -> @13 @234 @236 +@278 := @270 @223 +@279 := @19 @67 +@281 := @24 @279 @4 +@282 := #8 +@288 := {t : @118} -> (h : @281) -> @13 (@233 (@19 @282)) @236 +@289 := @278 @10 +@295 := (h : @24 @223 @10) -> @13 (@233 @279) @222 +@296 := @289 @69 +@299 := @13 (@233 @223) @222 +@300 := String +@301 := Int +@302 := @38 @300 +@303 := @302 @301 +@304 := LexLeanTarget.TargetSyntax.Value.string +@305 := LexLeanTarget.TargetSyntax.Value.int +@306 := LexLeanPreservation.encPair +@307 := @306 @300 +@308 := @307 @301 +@309 := @308 @304 +@310 := @309 @305 +@311 := @75 @303 +@312 := @311 @310 +@313 := @312 @70 +@314 := LexLeanTarget.TargetSyntax.Ty.string +@315 := LexLeanTarget.TargetSyntax.Ty.int +@316 := @45 @314 +@317 := @316 @315 +@318 := @79 @317 +@319 := @304 @4 +@325 := {p : @81} -> {c : @82} -> {A : @83} -> (s : @300) -> @86 @319 @314 +@327 := LexLeanPreservation.Rust.wt_string @0 +@332 := {c : @82} -> {A : @83} -> (s : @300) -> @97 @319 @314 +@333 := @327 @1 +@337 := {A : @83} -> (s : @300) -> @104 @319 @314 +@338 := @333 @2 +@339 := @13 @319 +@340 := @339 @314 +@341 := (s : @300) -> @340 +@343 := fun (__x : @300) => @338 @4 +@344 := @305 @4 +@350 := {p : @81} -> {c : @82} -> {A : @83} -> (n : @301) -> @86 @344 @315 +@352 := LexLeanPreservation.Rust.wt_int @0 +@357 := {c : @82} -> {A : @83} -> (n : @301) -> @97 @344 @315 +@358 := @352 @1 +@362 := {A : @83} -> (n : @301) -> @104 @344 @315 +@363 := @358 @2 +@364 := @13 @344 +@365 := @364 @315 +@366 := (n : @301) -> @365 +@368 := fun (__x : @301) => @363 @4 +@369 := (a._@._internal._hyg.#0 : @72) -> @116 +@370 := #9 +@373 := @7 @370 @282 @67 +@374 := @71 @4 +@377 := (x : @70) -> @373 @374 @69 +@378 := #10 +@384 := (x : @70) -> @7 @378 @370 @282 @374 @69 +@386 := @38 @67 @68 +@387 := #11 +@390 := @7 @387 @378 @370 +@395 := @306 @282 @67 @68 @70 @4 +@396 := @390 @395 +@398 := @45 @71 @73 +@411 := {p : @81} -> + {c : @82} -> + {A : @83} -> + {α : @115} -> + {β : @115} -> + {ea : @369} -> + {eb : @369} -> {s : @118} -> {t : @118} -> (ha : @377) -> (hb : @384) -> (x : @386) -> @396 @398 +@413 := LexLeanPreservation.Rust.wt_encPair @0 +@438 := {c : @82} -> + {A : @83} -> + {α : @115} -> + {β : @115} -> + {ea : @369} -> + {eb : @369} -> + {s : @118} -> + {t : @118} -> + (ha : (x : @70) -> @11 @282 @67 @374 @69) -> + (hb : (x : @70) -> @11 @370 @282 @374 @69) -> (x : @386) -> @11 @378 @370 @395 @398 +@439 := @413 @1 +@460 := {A : @83} -> + {α : @115} -> + {β : @115} -> + {ea : @369} -> + {eb : @369} -> + {s : @118} -> + {t : @118} -> + (ha : (x : @70) -> @12 @67 @374 @69) -> + (hb : (x : @70) -> @12 @282 @374 @69) -> (x : @386) -> @12 @370 @395 @398 +@461 := @439 @2 +@463 := @13 @374 @69 +@464 := (x : @70) -> @463 +@475 := {α : @115} -> + {β : @115} -> + {ea : @369} -> + {eb : @369} -> + {s : @118} -> {t : @118} -> (ha : @464) -> (hb : @464) -> (x : @386) -> @13 @395 @398 +@476 := @461 @300 +@477 := (a._@._internal._hyg.#0 : @300) -> @116 +@478 := (x : @300) -> @463 +@493 := {β : @115} -> + {ea : @477} -> + {eb : @369} -> + {s : @118} -> + {t : @118} -> (ha : @478) -> (hb : @464) -> (x : @302 @68) -> @13 (@307 @67 @68 @70 @4) @398 +@494 := @476 @301 +@495 := (a._@._internal._hyg.#0 : @301) -> @116 +@496 := (x : @301) -> @463 +@508 := {ea : @477} -> + {eb : @495} -> + {s : @118} -> {t : @118} -> (ha : @478) -> (hb : @496) -> (x : @303) -> @13 (@308 @68 @70 @4) @398 +@509 := @494 @304 +@511 := (x : @300) -> @339 @69 +@521 := {eb : @495} -> + {s : @118} -> {t : @118} -> (ha : @511) -> (hb : @496) -> (x : @303) -> @13 (@309 @70 @4) @398 +@522 := @509 @305 +@524 := (x : @301) -> @364 @69 +@526 := @13 (@310 @4) +@532 := {s : @118} -> {t : @118} -> (ha : @511) -> (hb : @524) -> (x : @303) -> @526 @398 +@533 := @522 @314 +@534 := (x : @300) -> @340 +@540 := {t : @118} -> (ha : @534) -> (hb : @524) -> (x : @303) -> @526 (@316 @73) +@541 := @533 @315 +@542 := (x : @301) -> @365 +@544 := (x : @303) -> @526 @317 +@546 := (ha : @534) -> (hb : @542) -> @544 +@550 := fun (__x : @303) => @541 @343 @368 @4 +@551 := @176 @303 +@552 := (a._@._internal._hyg.#0 : @303) -> @116 +@553 := (x : @303) -> @178 +@554 := @17 @303 +@562 := {e : @552} -> {t : @118} -> (h : @553) -> (xs : @554) -> @13 (@311 @73 @4) @134 +@563 := @551 @310 +@565 := (x : @303) -> @526 @72 +@567 := @13 (@312 @4) +@571 := {t : @118} -> (h : @565) -> (xs : @554) -> @567 @134 +@572 := @563 @317 +@575 := (h : @544) -> (xs : @554) -> @567 @318 +@576 := @572 @550 +@577 := @576 @70 +@579 := @13 @313 @318 +@580 := LexLeanPreservation.OptEnc.enc +@581 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.__O_1 +@583 := @580 @3 @581 +@584 := @583 @71 +@585 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.__L_3 +@587 := @217 @40 @585 +@588 := @587 @73 +@589 := @79 @47 +@590 := @42 @73 +@591 := @270 @590 +@592 := @42 @71 +@593 := @24 @592 +@594 := @593 @4 +@595 := @42 @70 +@600 := {t : @118} -> (h : @594) -> @13 (@233 @595) @236 +@601 := @591 @47 +@603 := @24 @590 @47 +@607 := (h : @603) -> @13 (@233 @592) @589 +@608 := @601 @4 +@611 := @13 (@233 @590) @589 +@612 := List.nil.{0} +@613 := List.cons.{0} +@614 := @612 @116 +@615 := @613 @116 +@617 := @615 @588 @614 +@619 := @615 @584 @617 +@621 := @615 @313 @619 +@623 := @615 @221 @621 +@625 := @615 @78 @623 +@626 := @612 @118 +@627 := @613 @118 +@628 := @627 @589 +@629 := @628 @626 +@630 := @627 @33 +@631 := @630 @629 +@632 := @627 @318 +@633 := @632 @631 +@634 := @627 @222 +@635 := @634 @633 +@636 := @627 @80 +@637 := @636 @635 +@638 := LexLeanPreservation.Rust.WTL +@646 := {p : @81} -> {c : @82} -> {A : @83} -> @638 @69 @72 @4 @614 @626 +@648 := LexLeanPreservation.Rust.wtl_nil @0 +@649 := @638 @0 +@655 := {c : @82} -> {A : @83} -> @649 @72 @4 @614 @626 +@656 := @648 @1 +@657 := @649 @1 +@661 := {A : @83} -> @657 @4 @614 @626 +@662 := @656 @2 +@663 := @657 @2 +@664 := @663 @614 +@665 := @664 @626 +@666 := @17 @118 +@667 := @121 @73 +@668 := @667 @69 +@673 := @638 @67 @68 @70 @69 @72 +@676 := @638 @282 @67 @68 +@678 := @615 @70 @73 +@679 := @676 @678 +@681 := @627 @71 @69 +@691 := {p : @81} -> + {c : @82} -> + {A : @83} -> + {v : @116} -> {t : @118} -> {vs : @224} -> {ts : @666} -> (h : @668) -> (hs : @673) -> @679 @681 +@693 := LexLeanPreservation.Rust.wtl_cons @0 +@694 := @147 @73 +@695 := @694 @69 +@699 := @649 @68 @70 @69 @72 +@711 := {c : @82} -> + {A : @83} -> + {v : @116} -> + {t : @118} -> {vs : @224} -> {ts : @666} -> (h : @695) -> (hs : @699) -> @649 @67 @68 @678 @681 +@712 := @693 @1 +@713 := @163 @73 +@714 := @713 @69 +@717 := @657 @70 @69 @72 +@727 := {A : @83} -> + {v : @116} -> + {t : @118} -> {vs : @224} -> {ts : @666} -> (h : @714) -> (hs : @717) -> @657 @68 @678 @681 +@728 := @712 @2 +@729 := @13 @73 +@730 := @729 @69 +@732 := @663 @69 @72 +@740 := {v : @116} -> + {t : @118} -> {vs : @224} -> {ts : @666} -> (h : @730) -> (hs : @732) -> @663 @678 @681 +@741 := @728 @588 +@742 := @587 @68 +@754 := {t : @118} -> + {vs : @224} -> + {ts : @666} -> (h : @13 @742 @69) -> (hs : @732) -> @663 (@615 (@587 @282) @73) @681 +@755 := @741 @589 +@756 := @587 @70 +@758 := @13 @756 @589 +@762 := @663 (@615 (@587 @67) @73) +@763 := @628 @69 +@768 := {vs : @224} -> {ts : @666} -> (h : @758) -> (hs : @732) -> @762 @763 +@769 := @755 @614 +@770 := @587 @71 +@772 := @13 @770 @589 +@773 := @664 @72 +@775 := @615 @742 @614 +@780 := {ts : @666} -> (h : @772) -> (hs : @773) -> @663 @775 @763 +@781 := @769 @626 +@783 := @13 @588 @589 +@785 := @615 @756 @614 +@786 := @663 @785 +@789 := (h : @783) -> (hs : @665) -> @786 @629 +@790 := @781 @608 +@792 := @615 @770 @614 +@794 := @663 @792 @629 +@795 := (hs : @665) -> @794 +@796 := @790 @662 +@798 := @663 @617 @629 +@799 := @728 @584 +@800 := @583 @67 +@812 := {t : @118} -> + {vs : @224} -> + {ts : @666} -> (h : @13 @800 @69) -> (hs : @732) -> @663 (@615 (@583 @370) @73) @681 +@813 := @799 @33 +@814 := @583 @68 +@816 := @13 @814 @33 +@820 := @663 (@615 (@583 @282) @73) +@821 := @630 @69 +@826 := {vs : @224} -> {ts : @666} -> (h : @816) -> (hs : @732) -> @820 @821 +@827 := @813 @617 +@828 := @583 @70 +@830 := @13 @828 @33 +@831 := @786 @72 +@833 := @615 @800 @775 +@838 := {ts : @666} -> (h : @830) -> (hs : @831) -> @663 @833 @821 +@839 := @827 @629 +@841 := @13 @584 @33 +@843 := @615 @814 @785 +@844 := @663 @843 +@847 := (h : @841) -> (hs : @794) -> @844 @631 +@848 := @839 @72 +@850 := @615 @828 @792 +@852 := @663 @850 @631 +@853 := (hs : @798) -> @852 +@854 := @848 @796 +@856 := @663 @619 @631 +@857 := @728 @313 +@858 := @312 @282 +@870 := {t : @118} -> + {vs : @224} -> + {ts : @666} -> (h : @13 @858 @69) -> (hs : @732) -> @663 (@615 (@312 @378) @73) @681 +@871 := @857 @318 +@872 := @312 @67 +@874 := @13 @872 @318 +@878 := @663 (@615 (@312 @370) @73) +@879 := @632 @69 +@884 := {vs : @224} -> {ts : @666} -> (h : @874) -> (hs : @732) -> @878 @879 +@885 := @871 @619 +@886 := @312 @68 +@888 := @13 @886 @318 +@889 := @844 @72 +@891 := @615 @858 @833 +@896 := {ts : @666} -> (h : @888) -> (hs : @889) -> @663 @891 @879 +@897 := @885 @631 +@899 := @615 @872 @843 +@900 := @663 @899 +@903 := (h : @579) -> (hs : @852) -> @900 @633 +@904 := @897 @577 +@906 := @615 @886 @850 +@908 := @663 @906 @633 +@909 := (hs : @856) -> @908 +@910 := @904 @854 +@912 := @663 @621 @633 +@913 := @728 @221 +@914 := @220 @370 +@926 := {t : @118} -> + {vs : @224} -> + {ts : @666} -> (h : @13 @914 @69) -> (hs : @732) -> @663 (@615 (@220 @387) @73) @681 +@927 := @913 @222 +@928 := @220 @282 +@930 := @13 @928 @222 +@934 := @663 (@615 (@220 @378) @73) +@935 := @634 @69 +@940 := {vs : @224} -> {ts : @666} -> (h : @930) -> (hs : @732) -> @934 @935 +@941 := @927 @621 +@942 := @220 @67 +@944 := @13 @942 @222 +@945 := @900 @72 +@947 := @615 @914 @891 +@952 := {ts : @666} -> (h : @944) -> (hs : @945) -> @663 @947 @935 +@953 := @941 @633 +@955 := @13 @221 @222 +@957 := @615 @928 @899 +@958 := @663 @957 +@961 := (h : @955) -> (hs : @908) -> @958 @635 +@962 := @953 @296 +@964 := @615 @942 @906 +@966 := @663 @964 @635 +@967 := (hs : @912) -> @966 +@968 := @962 @910 +@970 := @663 @623 @635 +@971 := @728 @78 +@972 := @77 @378 +@974 := @13 @972 @69 +@975 := #12 +@985 := {t : @118} -> + {vs : @224} -> {ts : @666} -> (h : @974) -> (hs : @732) -> @663 (@615 (@77 @975) @73) @681 +@986 := @971 @80 +@987 := @77 @370 +@989 := @13 @987 @80 +@993 := @663 (@615 (@77 @387) @73) +@994 := @636 @69 +@999 := {vs : @224} -> {ts : @666} -> (h : @989) -> (hs : @732) -> @993 @994 +@1000 := @986 @623 +@1001 := @77 @282 +@1003 := @13 @1001 @80 +@1004 := @958 @72 +@1006 := @615 @972 @947 +@1011 := {ts : @666} -> (h : @1003) -> (hs : @1004) -> @663 @1006 @994 +@1012 := @1000 @635 +@1014 := @615 @987 @957 +@1015 := @663 @1014 +@1018 := (h : @216) -> (hs : @966) -> @1015 @637 +@1019 := @1012 @214 +@1021 := @615 @1001 @964 +@1023 := @663 @1021 @637 +@1024 := (hs : @970) -> @1023 +@1025 := @1019 @968 +@1027 := @663 @625 @637 +@1028 := Eq.{1} +@1029 := @28 @666 +@1030 := @1028 @1029 +@1031 := LexLeanPreservation.Rust.adtFields +@1035 := @1030 (@1031 @68 @73 @69) +@1036 := Option.some.{0} +@1037 := @1036 @666 +@1038 := @1037 @4 +@1039 := @1035 @1038 +@1042 := @7 @282 @67 @68 +@1043 := LexLeanTarget.TargetSyntax.Value.adt +@1045 := @1043 @71 @73 +@1046 := @1042 @1045 +@1047 := @8 @70 +@1057 := {p : @81} -> + {c : @82} -> + {A : @83} -> + {i : @37} -> {k : @37} -> {fs : @224} -> {tys : @666} -> (h : @1039) -> (hf : @673) -> @1046 @1047 +@1059 := LexLeanPreservation.Rust.wt_adt @0 +@1060 := @1031 @0 +@1064 := @1030 (@1060 @73 @69) @1038 +@1066 := @11 @67 @68 +@1076 := {c : @82} -> + {A : @83} -> + {i : @37} -> + {k : @37} -> {fs : @224} -> {tys : @666} -> (h : @1064) -> (hf : @699) -> @1066 @1045 @1047 +@1077 := @1059 @1 +@1078 := @12 @68 +@1087 := {A : @83} -> + {i : @37} -> + {k : @37} -> {fs : @224} -> {tys : @666} -> (h : @1064) -> (hf : @717) -> @1078 @1045 @1047 +@1088 := @1077 @2 +@1089 := @13 @1045 +@1096 := {i : @37} -> + {k : @37} -> {fs : @224} -> {tys : @666} -> (h : @1064) -> (hf : @732) -> @1089 @1047 +@1097 := @1088 @9 +@1098 := @1060 @9 +@1107 := {k : @37} -> + {fs : @224} -> {tys : @666} -> (h : @1030 (@1098 @69) @1038) -> (hf : @732) -> @1089 @10 +@1108 := @1097 @9 +@1109 := @1098 @9 +@1110 := @1030 @1109 +@1111 := @1110 @1038 +@1112 := @1043 @9 +@1114 := @13 (@1112 @73) +@1119 := {fs : @224} -> {tys : @666} -> (h : @1111) -> (hf : @732) -> @1114 @10 +@1120 := @1108 @625 +@1127 := {tys : @666} -> (h : @1111) -> (hf : @1015 @72) -> @13 (@1112 @1006) @10 +@1128 := @1120 @637 +@1135 := (h : @1110 (@1037 @637)) -> (hf : @1023) -> @13 (@1112 @1014) @10 +@1136 := Eq.refl.{1} +@1137 := @1136 @1029 +@1139 := @1128 (@1137 @1109) +@1143 := (hf : @1027) -> @13 (@1112 @1021) @10 +@1144 := @1139 @1025 +@1147 := @13 (@1112 @625) @10 +@1148 := @42 @69 +@1150 := @24 @1148 @47 +@1151 := fun (__ih2 : @1150) => @1144 +@1155 := fun (__ih1 : @13 (@30 @69) @33) => @1151 +@1156 := @19 @73 +@1158 := @24 @1156 @10 +@1164 := fun (__x0 : @190) => + fun (__x1 : @18) => + fun (__x2 : @554) => fun (__x3 : @29) => fun (__x4 : @41) => fun (__ih0 : @1158) => @1155 +@1165 := @39 @301 +@1166 := @306 @37 +@1167 := @1166 @301 +@1168 := @1167 @74 +@1169 := @1168 @305 +@1170 := @75 @1165 +@1171 := @1170 @1169 +@1172 := @1171 @4 +@1173 := @46 @315 +@1174 := @79 @1173 +@1175 := @461 @37 +@1176 := (x : @37) -> @463 +@1191 := {β : @115} -> + {ea : @188} -> + {eb : @369} -> + {s : @118} -> + {t : @118} -> (ha : @1176) -> (hb : @464) -> (x : @39 @68) -> @13 (@1166 @67 @68 @70 @4) @398 +@1192 := @1175 @301 +@1204 := {ea : @188} -> + {eb : @495} -> + {s : @118} -> + {t : @118} -> (ha : @1176) -> (hb : @496) -> (x : @1165) -> @13 (@1167 @68 @70 @4) @398 +@1205 := @1192 @74 +@1207 := (x : @37) -> @110 @69 +@1217 := {eb : @495} -> + {s : @118} -> {t : @118} -> (ha : @1207) -> (hb : @496) -> (x : @1165) -> @13 (@1168 @70 @4) @398 +@1218 := @1205 @305 +@1220 := @13 (@1169 @4) +@1226 := {s : @118} -> {t : @118} -> (ha : @1207) -> (hb : @524) -> (x : @1165) -> @1220 @398 +@1227 := @1218 @44 +@1228 := @46 @73 +@1233 := {t : @118} -> (ha : @209) -> (hb : @524) -> (x : @1165) -> @1220 @1228 +@1234 := @1227 @315 +@1236 := (x : @1165) -> @1220 @1173 +@1238 := (ha : @209) -> (hb : @542) -> @1236 +@1242 := fun (__x : @1165) => @1234 @114 @368 @4 +@1243 := @176 @1165 +@1244 := (a._@._internal._hyg.#0 : @1165) -> @116 +@1245 := (x : @1165) -> @178 +@1246 := @17 @1165 +@1254 := {e : @1244} -> {t : @118} -> (h : @1245) -> (xs : @1246) -> @13 (@1170 @73 @4) @134 +@1255 := @1243 @1169 +@1257 := (x : @1165) -> @1220 @72 +@1258 := @13 @1172 +@1262 := {t : @118} -> (h : @1257) -> (xs : @1246) -> @1258 @134 +@1263 := @1255 @1173 +@1264 := @1258 @1174 +@1266 := (h : @1236) -> (xs : @1246) -> @1264 +@1268 := @1263 @1242 @4 +@1270 := @615 @1172 @614 +@1271 := @627 @1174 +@1272 := @1271 @626 +@1273 := @728 @1172 +@1274 := @1171 @73 +@1286 := {t : @118} -> + {vs : @224} -> + {ts : @666} -> (h : @13 @1274 @69) -> (hs : @732) -> @663 (@615 (@1171 @70) @73) @681 +@1287 := @1273 @1174 +@1288 := @1171 @69 +@1290 := @13 @1288 @1174 +@1294 := @663 (@615 (@1171 @71) @73) +@1295 := @1271 @69 +@1300 := {vs : @224} -> {ts : @666} -> (h : @1290) -> (hs : @732) -> @1294 @1295 +@1301 := @1287 @614 +@1302 := @1171 @72 +@1304 := @13 @1302 @1174 +@1306 := @615 @1274 @614 +@1311 := {ts : @666} -> (h : @1304) -> (hs : @773) -> @663 @1306 @1295 +@1312 := @1301 @626 +@1314 := @615 @1288 @614 +@1315 := @663 @1314 +@1318 := (h : @1264) -> (hs : @665) -> @1315 @1272 +@1319 := @1312 @1268 +@1321 := @615 @1302 @614 +@1323 := @663 @1321 @1272 +@1324 := (hs : @665) -> @1323 +@1325 := @1319 @662 +@1327 := @663 @1270 @1272 +@1328 := 1 +@1329 := @1097 @1328 +@1330 := @1098 @1328 +@1331 := @1030 @1330 +@1332 := @1331 @1038 +@1333 := @1043 @1328 +@1340 := {fs : @224} -> {tys : @666} -> (h : @1332) -> (hf : @732) -> @13 (@1333 @73) @10 +@1341 := @1329 @1270 +@1348 := {tys : @666} -> (h : @1332) -> (hf : @1315 @72) -> @13 (@1333 @1306) @10 +@1349 := @1341 @1272 +@1356 := (h : @1331 (@1037 @1272)) -> (hf : @1323) -> @13 (@1333 @1314) @10 +@1358 := @1349 (@1137 @1330) +@1362 := (hf : @1327) -> @13 (@1333 @1321) @10 +@1363 := @1358 @1325 +@1366 := @13 (@1333 @1270) @10 +@1367 := fun (__x0 : @1246) => @1363 +@1368 := @54 @72 +@1370 := @615 @1368 @614 +@1371 := @627 @58 +@1372 := @1371 @626 +@1373 := @728 @1368 +@1374 := @54 @71 +@1386 := {t : @118} -> + {vs : @224} -> {ts : @666} -> (h : @13 @1374 @69) -> (hs : @732) -> @663 (@615 (@54 @68) @73) @681 +@1387 := @1373 @58 +@1388 := @54 @73 +@1390 := @13 @1388 @58 +@1394 := @663 (@615 (@54 @70) @73) +@1395 := @1371 @69 +@1400 := {vs : @224} -> {ts : @666} -> (h : @1390) -> (hs : @732) -> @1394 @1395 +@1401 := @1387 @614 +@1402 := @54 @69 +@1404 := @13 @1402 @58 +@1406 := @615 @1374 @614 +@1411 := {ts : @666} -> (h : @1404) -> (hs : @773) -> @663 @1406 @1395 +@1412 := @1401 @626 +@1414 := @13 @1368 @58 +@1416 := @615 @1388 @614 +@1417 := @663 @1416 +@1420 := (h : @1414) -> (hs : @665) -> @1417 @1372 +@1421 := @1412 @4 +@1423 := @615 @1402 @614 +@1425 := @663 @1423 @1372 +@1426 := (hs : @665) -> @1425 +@1427 := @1421 @662 +@1429 := @663 @1370 @1372 +@1430 := 2 +@1431 := @1097 @1430 +@1432 := @1098 @1430 +@1433 := @1030 @1432 +@1434 := @1433 @1038 +@1435 := @1043 @1430 +@1442 := {fs : @224} -> {tys : @666} -> (h : @1434) -> (hf : @732) -> @13 (@1435 @73) @10 +@1443 := @1431 @1370 +@1450 := {tys : @666} -> (h : @1434) -> (hf : @1417 @72) -> @13 (@1435 @1406) @10 +@1451 := @1443 @1372 +@1458 := (h : @1433 (@1037 @1372)) -> (hf : @1425) -> @13 (@1435 @1416) @10 +@1460 := @1451 (@1137 @1432) +@1464 := (hf : @1429) -> @13 (@1435 @1423) @10 +@1465 := @1460 @1427 +@1468 := @13 (@1435 @1370) @10 +@1470 := fun (__x0 : @53) => fun (__ih0 : @60) => @1465 +@1479 := {p : @81} -> {c : @82} -> {A : @83} -> {t : @118} -> @21 @73 @69 @72 @614 @4 +@1481 := LexLeanPreservation.Rust.wtAll_nil @0 +@1488 := {c : @82} -> {A : @83} -> {t : @118} -> @22 @69 @72 @614 @4 +@1489 := @1481 @1 +@1494 := {A : @83} -> {t : @118} -> @23 @72 @614 @4 +@1495 := @1489 @2 +@1496 := @24 @614 +@1498 := {t : @118} -> @1496 @4 +@1499 := @1495 @10 +@1500 := @1496 @10 +@1501 := @5 @73 +@1502 := @19 @69 +@1503 := @232 @69 +@1504 := @1503 @4 +@1509 := @21 @68 @70 @71 @69 @72 +@1512 := @21 @67 @68 @70 +@1514 := @615 @71 @73 +@1524 := {p : @81} -> + {c : @82} -> + {A : @83} -> + {v : @116} -> {vs : @224} -> {t : @118} -> (h : @1504) -> (hs : @1509) -> @1512 @1514 @69 +@1526 := LexLeanPreservation.Rust.wtAll_cons @0 +@1527 := @251 @69 +@1528 := @1527 @4 +@1543 := {c : @82} -> + {A : @83} -> + {v : @116} -> + {vs : @224} -> {t : @118} -> (h : @1528) -> (hs : @22 @70 @71 @69 @72) -> @22 @68 @70 @1514 @69 +@1544 := @1526 @1 +@1545 := @263 @69 +@1546 := @1545 @4 +@1558 := {A : @83} -> + {v : @116} -> + {vs : @224} -> {t : @118} -> (h : @1546) -> (hs : @23 @71 @69 @72) -> @23 @70 @1514 @69 +@1559 := @1544 @2 +@1560 := @13 @69 +@1561 := @1560 @4 +@1563 := @24 @69 @72 +@1570 := {v : @116} -> {vs : @224} -> {t : @118} -> (h : @1561) -> (hs : @1563) -> @24 @1514 @69 +@1571 := @1559 @1501 +@1572 := @5 @70 +@1573 := @13 @1572 +@1574 := @1573 @4 +@1575 := @5 @67 +@1576 := @615 @1575 +@1583 := {vs : @224} -> {t : @118} -> (h : @1574) -> (hs : @1563) -> @24 (@1576 @73) @69 +@1584 := @1571 @1502 +@1585 := @5 @71 +@1586 := @13 @1585 +@1587 := @1586 @4 +@1588 := @19 @71 +@1590 := @24 @1588 @72 +@1591 := @5 @68 +@1592 := @615 @1591 +@1599 := {t : @118} -> (h : @1587) -> (hs : @1590) -> @24 (@1592 (@19 @70)) @69 +@1600 := @1584 @10 +@1601 := @13 @1501 +@1602 := @1601 @10 +@1603 := @615 @1572 +@1608 := (h : @1602) -> (hs : @1158) -> @24 (@1603 @1588) @10 +@1609 := @1600 @72 +@1611 := @24 @1502 @10 +@1612 := @615 @1585 +@1616 := (hs : @1611) -> @24 (@1612 @1156) @10 +@1617 := @1609 @4 +@1618 := @615 @1501 +@1621 := @24 (@1618 @1502) @10 +@1625 := fun (__ih1 : @24 (@19 @72) @10) => @1617 +@1626 := @5 @72 +@1628 := @13 @1626 @10 +@1631 := fun (__x0 : @3) => fun (__x1 : @18) => fun (__ih0 : @1628) => @1625 +@1632 := LexLeanTarget.TargetSyntax.Value.none +@1633 := @86 @1632 +@1634 := @32 @4 +@1639 := {p : @81} -> {c : @82} -> {A : @83} -> {t : @118} -> @1633 @1634 +@1641 := LexLeanPreservation.Rust.wt_noneV @0 +@1646 := {c : @82} -> {A : @83} -> {t : @118} -> @97 @1632 @1634 +@1647 := @1641 @1 +@1651 := {A : @83} -> {t : @118} -> @104 @1632 @1634 +@1652 := @1647 @2 +@1653 := @13 @1632 +@1655 := {t : @118} -> @1653 @1634 +@1656 := @1652 @10 +@1657 := @1653 @33 +@1662 := @7 @71 @73 @69 @72 @4 +@1663 := LexLeanTarget.TargetSyntax.Value.some +@1664 := @1663 @69 +@1665 := @232 @1664 +@1666 := @32 @72 +@1673 := {p : @81} -> + {c : @82} -> {A : @83} -> {v : @116} -> {t : @118} -> (h : @1662) -> @1665 @1666 +@1675 := LexLeanPreservation.Rust.wt_someV @0 +@1686 := {c : @82} -> + {A : @83} -> {v : @116} -> {t : @118} -> (h : @11 @73 @69 @72 @4) -> @251 @1664 @1666 +@1687 := @1675 @1 +@1696 := {A : @83} -> {v : @116} -> {t : @118} -> (h : @12 @69 @72 @4) -> @263 @1664 @1666 +@1697 := @1687 @2 +@1704 := {v : @116} -> {t : @118} -> (h : @13 @72 @4) -> @13 @1664 @1666 +@1705 := @1697 @1626 +@1706 := @5 @69 +@1707 := @13 @1706 +@1713 := {t : @118} -> (h : @1707 @4) -> @13 (@1663 @1501) @1666 +@1714 := @1705 @10 +@1718 := (h : @1628) -> @13 (@1663 @1706) @33 +@1719 := @1714 @4 +@1722 := @13 (@1663 @1626) @33 +@1724 := fun (__x0 : @3) => fun (__ih0 : @15) => @1719 +@1725 := @1495 @47 +@1726 := @1496 @47 +@1727 := @62 @73 +@1728 := @1559 @1727 +@1729 := @62 @70 +@1740 := {vs : @224} -> + {t : @118} -> (h : @13 @1729 @4) -> (hs : @1563) -> @24 (@615 (@62 @67) @73) @69 +@1741 := @1728 @1148 +@1742 := @62 @71 +@1753 := {t : @118} -> (h : @13 @1742 @4) -> (hs : @593 @72) -> @24 (@615 (@62 @68) @595) @69 +@1754 := @1741 @47 +@1762 := (h : @13 @1727 @47) -> (hs : @603) -> @24 (@615 @1729 @592) @47 +@1763 := @1754 @72 +@1768 := (hs : @1150) -> @24 (@615 @1742 @590) @47 +@1769 := @1763 @4 +@1773 := @24 (@615 @1727 @1148) @47 +@1777 := fun (__ih1 : @24 (@42 @72) @47) => @1769 +@1783 := fun (__x0 : @40) => fun (__x1 : @41) => fun (__ih0 : @13 (@62 @72) @47) => @1777 +@1784 := LexLeanTarget.TargetSyntax.Value.error +@1785 := @1784 @73 +@1786 := @121 @1785 +@1788 := @56 @69 @72 +@1796 := {p : @81} -> + {c : @82} -> {A : @83} -> {v : @116} -> {s : @118} -> {t : @118} -> (h : @1504) -> @1786 @1788 +@1798 := LexLeanPreservation.Rust.wt_errorV @0 +@1806 := {c : @82} -> + {A : @83} -> {v : @116} -> {s : @118} -> {t : @118} -> (h : @1528) -> @147 @1785 @1788 +@1807 := @1798 @1 +@1814 := {A : @83} -> {v : @116} -> {s : @118} -> {t : @118} -> (h : @1546) -> @163 @1785 @1788 +@1815 := @1807 @2 +@1821 := {v : @116} -> {s : @118} -> {t : @118} -> (h : @1561) -> @13 @1785 @1788 +@1822 := @1815 @87 +@1823 := @74 @69 +@1824 := @13 @1823 +@1825 := @1824 @4 +@1826 := @74 @73 +@1832 := {s : @118} -> {t : @118} -> (h : @1825) -> @13 (@1784 @1826) @1788 +@1833 := @1822 @10 +@1834 := @74 @72 +@1836 := @13 @1834 @4 +@1838 := @13 (@1784 @1823) +@1839 := @57 @72 +@1842 := {t : @118} -> (h : @1836) -> @1838 @1839 +@1843 := @1833 @44 +@1847 := (h : @111) -> @13 (@1784 @1834) @58 +@1848 := @1843 @113 +@1851 := @13 (@1784 @87) @58 +@1852 := fun (__x0 : @37) => @1848 +@1853 := @1503 @72 +@1854 := LexLeanTarget.TargetSyntax.Value.ok +@1855 := @1854 @73 +@1864 := {p : @81} -> + {c : @82} -> + {A : @83} -> {v : @116} -> {s : @118} -> {t : @118} -> (h : @1853) -> @121 @1855 @1788 +@1866 := LexLeanPreservation.Rust.wt_okV @0 +@1875 := {c : @82} -> + {A : @83} -> {v : @116} -> {s : @118} -> {t : @118} -> (h : @1527 @72) -> @147 @1855 @1788 +@1876 := @1866 @1 +@1884 := {A : @83} -> {v : @116} -> {s : @118} -> {t : @118} -> (h : @1545 @72) -> @163 @1855 @1788 +@1885 := @1876 @2 +@1892 := {v : @116} -> {s : @118} -> {t : @118} -> (h : @1560 @72) -> @13 @1855 @1788 +@1893 := @1885 @1626 +@1894 := @1601 @72 +@1900 := {s : @118} -> {t : @118} -> (h : @1894) -> @13 (@1854 @1585) @1788 +@1901 := @1893 @10 +@1902 := @1707 @10 +@1907 := {t : @118} -> (h : @1902) -> @13 (@1854 @1501) @1839 +@1908 := @1901 @44 +@1912 := (h : @1628) -> @13 (@1854 @1706) @58 +@1913 := @1908 @4 +@1916 := @13 (@1854 @1626) @58 +@1918 := fun (__x0 : @3) => fun (__ih0 : @15) => @1913 +@1919 := @109 @69 +@1920 := @1824 @44 +@1921 := @667 @72 +@1923 := @129 @73 @72 +@1924 := LexLeanTarget.TargetSyntax.Value.pair +@1926 := @1924 @70 @71 +@1927 := @1042 @1926 +@1929 := @45 @73 @69 +@1939 := {p : @81} -> + {c : @82} -> + {A : @83} -> + {a : @116} -> + {b : @116} -> {s : @118} -> {t : @118} -> (ha : @1921) -> (hb : @1923) -> @1927 @1929 +@1941 := LexLeanPreservation.Rust.wt_pairV @0 +@1954 := {c : @82} -> + {A : @83} -> + {a : @116} -> + {b : @116} -> + {s : @118} -> {t : @118} -> (ha : @694 @72) -> (hb : @152 @73 @72) -> @1066 @1926 @1929 +@1955 := @1941 @1 +@1967 := {A : @83} -> + {a : @116} -> + {b : @116} -> + {s : @118} -> {t : @118} -> (ha : @713 @72) -> (hb : @167 @73 @72) -> @1078 @1926 @1929 +@1968 := @1955 @2 +@1969 := @729 @72 +@1977 := {a : @116} -> + {b : @116} -> {s : @118} -> {t : @118} -> (ha : @1969) -> (hb : @1969) -> @13 @1926 @1929 +@1978 := @1968 @1823 +@1979 := @74 @70 +@1991 := {b : @116} -> + {s : @118} -> + {t : @118} -> (ha : @13 @1979 @72) -> (hb : @1969) -> @13 (@1924 (@74 @67) @71) @1929 +@1992 := @1978 @1626 +@1993 := @74 @71 +@2005 := {s : @118} -> + {t : @118} -> (ha : @13 @1993 @72) -> (hb : @1586 @72) -> @13 (@1924 (@74 @68) @1572) @1929 +@2006 := @1992 @44 +@2016 := {t : @118} -> (ha : @13 @1826 @44) -> (hb : @1894) -> @13 (@1924 @1979 @1585) (@46 @69) +@2017 := @2006 @10 +@2023 := (ha : @1920) -> (hb : @1902) -> @13 (@1924 @1993 @1501) @47 +@2024 := @2017 @1919 +@2029 := (hb : @1628) -> @13 (@1924 @1826 @1706) @47 +@2030 := @2024 @4 +@2034 := @13 (@1924 @1823 @1626) @47 +@2037 := fun (__x0 : @37) => fun (__x1 : @3) => fun (__ih0 : @15) => @2030 +@2058 := fun (__v : @3) => + Coverage.Boundary.Grove.rec.{0} + @16 + @27 + @36 + @50 + @61 + @66 + @1164 + @1367 + @1470 + @1499 + @1631 + @1656 + @1724 + @1725 + @1783 + @1852 + @1918 + @2037 + @4 +@2059 := (__v : @3) -> @15 +@2080 := fun (__v : @18) => + Coverage.Boundary.Grove.rec_1.{0} + @16 + @27 + @36 + @50 + @61 + @66 + @1164 + @1367 + @1470 + @1499 + @1631 + @1656 + @1724 + @1725 + @1783 + @1852 + @1918 + @2037 + @4 +@2081 := (__v : @18) -> @26 +@2102 := fun (__v : @29) => + Coverage.Boundary.Grove.rec_2.{0} + @16 + @27 + @36 + @50 + @61 + @66 + @1164 + @1367 + @1470 + @1499 + @1631 + @1656 + @1724 + @1725 + @1783 + @1852 + @1918 + @2037 + @4 +@2103 := (__v : @29) -> @35 +@2124 := fun (__v : @41) => + Coverage.Boundary.Grove.rec_3.{0} + @16 + @27 + @36 + @50 + @61 + @66 + @1164 + @1367 + @1470 + @1499 + @1631 + @1656 + @1724 + @1725 + @1783 + @1852 + @1918 + @2037 + @4 +@2125 := (__v : @41) -> @49 +@2146 := fun (__v : @53) => + Coverage.Boundary.Grove.rec_4.{0} + @16 + @27 + @36 + @50 + @61 + @66 + @1164 + @1367 + @1470 + @1499 + @1631 + @1656 + @1724 + @1725 + @1783 + @1852 + @1918 + @2037 + @4 +@2147 := (__v : @53) -> @60 +@2168 := fun (__v : @40) => + Coverage.Boundary.Grove.rec_5.{0} + @16 + @27 + @36 + @50 + @61 + @66 + @1164 + @1367 + @1470 + @1499 + @1631 + @1656 + @1724 + @1725 + @1783 + @1852 + @1918 + @2037 + @4 +@2169 := (__v : @40) -> @65 +@2170 := Coverage.Boundary.Ledger +@2171 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.__enc_1 +@2172 := @2171 @4 +@2173 := @8 @1328 +@2176 := (__s : @2170) -> @13 @2172 @2173 +@2177 := Coverage.Boundary.Ledger.entries +@2178 := @2177 @4 +@2179 := Coverage.Boundary.Ledger.owner +@2180 := @2179 @4 +@2181 := @312 @2178 +@2182 := @576 @2178 +@2184 := @13 @2181 @318 +@2185 := @304 @2180 +@2186 := @338 @2180 +@2188 := @13 @2185 @314 +@2190 := @615 @2185 @614 +@2192 := @615 @2181 @2190 +@2193 := @627 @314 +@2194 := @2193 @626 +@2195 := @632 @2194 +@2196 := @728 @2185 +@2198 := @304 (@2179 @73) +@2211 := {t : @118} -> + {vs : @224} -> + {ts : @666} -> (h : @13 @2198 @69) -> (hs : @732) -> @663 (@615 (@304 (@2179 @70)) @73) @681 +@2212 := @2196 @314 +@2214 := @304 (@2179 @69) +@2216 := @13 @2214 @314 +@2221 := @663 (@615 (@304 (@2179 @71)) @73) +@2222 := @2193 @69 +@2227 := {vs : @224} -> {ts : @666} -> (h : @2216) -> (hs : @732) -> @2221 @2222 +@2228 := @2212 @614 +@2230 := @304 (@2179 @72) +@2232 := @13 @2230 @314 +@2234 := @615 @2198 @614 +@2239 := {ts : @666} -> (h : @2232) -> (hs : @773) -> @663 @2234 @2222 +@2240 := @2228 @626 +@2242 := @615 @2214 @614 +@2243 := @663 @2242 +@2246 := (h : @2188) -> (hs : @665) -> @2243 @2194 +@2247 := @2240 @2186 +@2249 := @615 @2230 @614 +@2251 := @663 @2249 @2194 +@2252 := (hs : @665) -> @2251 +@2253 := @2247 @662 +@2255 := @663 @2190 @2194 +@2256 := @728 @2181 +@2258 := @312 (@2177 @73) +@2271 := {t : @118} -> + {vs : @224} -> + {ts : @666} -> (h : @13 @2258 @69) -> (hs : @732) -> @663 (@615 (@312 (@2177 @70)) @73) @681 +@2272 := @2256 @318 +@2274 := @312 (@2177 @69) +@2286 := {vs : @224} -> + {ts : @666} -> (h : @13 @2274 @318) -> (hs : @732) -> @663 (@615 (@312 (@2177 @71)) @73) @879 +@2287 := @2272 @2190 +@2289 := @312 (@2177 @72) +@2291 := @13 @2289 @318 +@2292 := @2243 @72 +@2294 := @615 @2258 @2234 +@2299 := {ts : @666} -> (h : @2291) -> (hs : @2292) -> @663 @2294 @879 +@2300 := @2287 @2194 +@2302 := @615 @2274 @2242 +@2303 := @663 @2302 +@2306 := (h : @2184) -> (hs : @2251) -> @2303 @2195 +@2307 := @2300 @2182 +@2309 := @615 @2289 @2249 +@2311 := @663 @2309 @2195 +@2312 := (hs : @2255) -> @2311 +@2313 := @2307 @2253 +@2315 := @663 @2192 @2195 +@2316 := @1088 @1328 +@2317 := @1060 @1328 +@2326 := {k : @37} -> + {fs : @224} -> {tys : @666} -> (h : @1030 (@2317 @69) @1038) -> (hf : @732) -> @1089 @2173 +@2327 := @2316 @9 +@2328 := @2317 @9 +@2329 := @1030 @2328 +@2330 := @2329 @1038 +@2335 := {fs : @224} -> {tys : @666} -> (h : @2330) -> (hf : @732) -> @1114 @2173 +@2336 := @2327 @2192 +@2343 := {tys : @666} -> (h : @2330) -> (hf : @2303 @72) -> @13 (@1112 @2294) @2173 +@2344 := @2336 @2195 +@2351 := (h : @2329 (@1037 @2195)) -> (hf : @2311) -> @13 (@1112 @2302) @2173 +@2353 := @2344 (@1137 @2328) +@2357 := (hf : @2315) -> @13 (@1112 @2309) @2173 +@2358 := @2353 @2313 +@2361 := @13 (@1112 @2192) @2173 +@2362 := fun (__s : @2170) => @2358 +@2364 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.Compose.RustStd.__wt_0 @71 +@2365 := @2171 @73 +@2367 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.Compose.RustStd.__wt_1 @73 +@2368 := @28 @190 +@2369 := LexLeanPreservation.encOption +@2370 := @2369 @190 +@2371 := @2370 @77 +@2372 := @2371 @69 +@2373 := @32 @80 +@2375 := fun (__x : @190) => @213 @4 +@2376 := @28 @73 +@2379 := @2369 @71 @73 @4 +@2380 := @129 @2379 +@2381 := @32 @69 +@2390 := {p : @81} -> + {c : @82} -> + {A : @83} -> {α : @115} -> {e : @117} -> {t : @118} -> (h : @125) -> (o : @2376) -> @2380 @2381 +@2392 := LexLeanPreservation.Rust.wt_encOption @0 +@2401 := {c : @82} -> + {A : @83} -> + {α : @115} -> {e : @117} -> {t : @118} -> (h : @150) -> (o : @2376) -> @152 @2379 @2381 +@2402 := @2392 @1 +@2410 := {A : @83} -> + {α : @115} -> {e : @117} -> {t : @118} -> (h : @166) -> (o : @2376) -> @167 @2379 @2381 +@2411 := @2402 @2 +@2418 := {α : @115} -> {e : @117} -> {t : @118} -> (h : @179) -> (o : @2376) -> @13 @2379 @2381 +@2419 := @2411 @190 +@2429 := {e : (a._@._internal._hyg.#0 : @190) -> @116} -> + {t : @118} -> (h : (x : @190) -> @178) -> (o : @2368) -> @13 (@2370 @73 @4) @2381 +@2430 := @2419 @77 +@2432 := (x : @190) -> @203 @72 +@2434 := @13 (@2371 @4) +@2438 := {t : @118} -> (h : @2432) -> (o : @2368) -> @2434 @2381 +@2439 := @2430 @80 +@2443 := (h : (x : @190) -> @210) -> (o : @2368) -> @2434 @2373 +@2445 := @2439 @2375 @69 +@2447 := @13 @2372 @2373 +@2448 := Bool +@2449 := @39 @2448 +@2450 := @17 @2449 +@2451 := @17 @2450 +@2452 := LexLeanTarget.TargetSyntax.Value.bool +@2453 := @1166 @2448 +@2454 := @2453 @74 +@2455 := @2454 @2452 +@2456 := @75 @2449 +@2457 := @2456 @2455 +@2458 := @75 @2450 +@2459 := @2458 @2457 +@2460 := @2459 @72 +@2461 := LexLeanTarget.TargetSyntax.Ty.bool +@2462 := @46 @2461 +@2463 := @79 @2462 +@2464 := @79 @2463 +@2465 := @2452 @4 +@2471 := {p : @81} -> {c : @82} -> {A : @83} -> (b : @2448) -> @86 @2465 @2461 +@2473 := LexLeanPreservation.Rust.wt_bool @0 +@2478 := {c : @82} -> {A : @83} -> (b : @2448) -> @97 @2465 @2461 +@2479 := @2473 @1 +@2483 := {A : @83} -> (b : @2448) -> @104 @2465 @2461 +@2484 := @2479 @2 +@2485 := @13 @2465 +@2486 := @2485 @2461 +@2487 := (b : @2448) -> @2486 +@2489 := fun (__x : @2448) => @2484 @4 +@2490 := @1175 @2448 +@2491 := (a._@._internal._hyg.#0 : @2448) -> @116 +@2492 := (x : @2448) -> @463 +@2504 := {ea : @188} -> + {eb : @2491} -> + {s : @118} -> + {t : @118} -> (ha : @1176) -> (hb : @2492) -> (x : @2449) -> @13 (@2453 @68 @70 @4) @398 +@2505 := @2490 @74 +@2515 := {eb : @2491} -> + {s : @118} -> {t : @118} -> (ha : @1207) -> (hb : @2492) -> (x : @2449) -> @13 (@2454 @70 @4) @398 +@2516 := @2505 @2452 +@2518 := (x : @2448) -> @2485 @69 +@2520 := @13 (@2455 @4) +@2526 := {s : @118} -> {t : @118} -> (ha : @1207) -> (hb : @2518) -> (x : @2449) -> @2520 @398 +@2527 := @2516 @44 +@2532 := {t : @118} -> (ha : @209) -> (hb : @2518) -> (x : @2449) -> @2520 @1228 +@2533 := @2527 @2461 +@2534 := (x : @2448) -> @2486 +@2536 := (x : @2449) -> @2520 @2462 +@2538 := (ha : @209) -> (hb : @2534) -> @2536 +@2542 := fun (__x : @2449) => @2533 @114 @2489 @4 +@2543 := @176 @2449 +@2553 := {e : (a._@._internal._hyg.#0 : @2449) -> @116} -> + {t : @118} -> (h : (x : @2449) -> @178) -> (xs : @2450) -> @13 (@2456 @73 @4) @134 +@2554 := @2543 @2455 +@2556 := (x : @2449) -> @2520 @72 +@2558 := @13 (@2457 @4) +@2562 := {t : @118} -> (h : @2556) -> (xs : @2450) -> @2558 @134 +@2563 := @2554 @2462 +@2564 := @2558 @2463 +@2566 := (h : @2536) -> (xs : @2450) -> @2564 +@2569 := fun (__x : @2450) => @2563 @2542 @4 +@2570 := @176 @2450 +@2580 := {e : (a._@._internal._hyg.#0 : @2450) -> @116} -> + {t : @118} -> (h : (x : @2450) -> @178) -> (xs : @2451) -> @13 (@2458 @73 @4) @134 +@2581 := @2570 @2457 +@2583 := (x : @2450) -> @2558 @72 +@2584 := @2459 @4 +@2585 := @13 @2584 +@2589 := {t : @118} -> (h : @2583) -> (xs : @2451) -> @2585 @134 +@2590 := @2581 @2463 +@2594 := (h : (x : @2450) -> @2564) -> (xs : @2451) -> @2585 @2464 +@2596 := @2590 @2569 @72 +@2598 := @13 @2460 @2464 +@2600 := @615 @2460 @614 +@2602 := @615 @2372 @2600 +@2604 := @615 @2365 @2602 +@2605 := @1612 @2604 +@2606 := @39 @116 +@2607 := 3 +@2610 := Prod.mk.{0, 0} @37 @116 +@2611 := @2610 @2607 +@2612 := @2611 @2460 +@2613 := @2610 @1430 +@2614 := @2613 @2372 +@2615 := @2610 @1328 +@2616 := @2615 @2365 +@2617 := @2610 @9 +@2618 := @2617 @1585 +@2619 := @612 @2606 +@2620 := @613 @2606 +@2622 := @2620 @2618 @2619 +@2624 := @2620 @2616 @2622 +@2626 := @2620 @2614 @2624 +@2628 := @2620 @2612 @2626 +@2629 := Bool.false +@2630 := LexLeanTarget.TargetSyntax.Function +@2631 := LexLeanTarget.TargetSyntax.Program.functions +@2632 := @2631 @0 +@2633 := 18 +@2634 := @612 @37 +@2635 := LexLeanTarget.TargetSyntax.Ty.unit +@2636 := LexLeanTarget.TargetSyntax.Value.unit +@2639 := LexLeanTarget.TargetSyntax.Expr.value @2635 @2636 +@2644 := LexLeanTarget.TargetSyntax.Function.mk @2634 @626 @2635 @2639 +@2649 := List.getD.{0} @2630 @2632 @2633 @2644 +@2653 := fun (__e_n : @37) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.RustStd.root @4 @2633 +@2654 := @728 @2460 +@2655 := @2459 @71 +@2657 := @13 @2655 @69 +@2658 := @2459 @68 +@2659 := @615 @2658 +@2667 := {t : @118} -> + {vs : @224} -> {ts : @666} -> (h : @2657) -> (hs : @732) -> @663 (@2659 @73) @681 +@2668 := @2654 @2464 +@2669 := @2459 @73 +@2671 := @13 @2669 @2464 +@2672 := @2459 @70 +@2673 := @615 @2672 +@2675 := @663 (@2673 @73) +@2676 := @627 @2464 +@2677 := @2676 @69 +@2682 := {vs : @224} -> {ts : @666} -> (h : @2671) -> (hs : @732) -> @2675 @2677 +@2683 := @2668 @614 +@2684 := @2459 @69 +@2686 := @13 @2684 @2464 +@2688 := @615 @2655 @614 +@2693 := {ts : @666} -> (h : @2686) -> (hs : @773) -> @663 @2688 @2677 +@2694 := @2683 @626 +@2696 := @615 @2669 @614 +@2697 := @663 @2696 +@2698 := @2676 @626 +@2701 := (h : @2598) -> (hs : @665) -> @2697 @2698 +@2702 := @2694 @2596 +@2704 := @615 @2684 @614 +@2706 := @663 @2704 @2698 +@2707 := (hs : @665) -> @2706 +@2708 := @2702 @662 +@2710 := @663 @2600 @2698 +@2711 := @728 @2372 +@2712 := @2371 @70 +@2714 := @13 @2712 @69 +@2715 := @2371 @67 +@2716 := @615 @2715 +@2724 := {t : @118} -> + {vs : @224} -> {ts : @666} -> (h : @2714) -> (hs : @732) -> @663 (@2716 @73) @681 +@2725 := @2711 @2373 +@2726 := @2371 @71 +@2728 := @13 @2726 @2373 +@2729 := @2371 @68 +@2730 := @615 @2729 +@2732 := @663 (@2730 @73) +@2733 := @627 @2373 +@2734 := @2733 @69 +@2739 := {vs : @224} -> {ts : @666} -> (h : @2728) -> (hs : @732) -> @2732 @2734 +@2740 := @2725 @2600 +@2741 := @2371 @73 +@2743 := @13 @2741 @2373 +@2744 := @2697 @72 +@2746 := @615 @2712 @2688 +@2751 := {ts : @666} -> (h : @2743) -> (hs : @2744) -> @663 @2746 @2734 +@2752 := @2740 @2698 +@2754 := @615 @2726 @2696 +@2755 := @663 @2754 +@2756 := @2733 @2698 +@2759 := (h : @2447) -> (hs : @2706) -> @2755 @2756 +@2760 := @2752 @2445 +@2762 := @615 @2741 @2704 +@2764 := @663 @2762 @2756 +@2765 := (hs : @2710) -> @2764 +@2766 := @2760 @2708 +@2768 := @663 @2602 @2756 +@2769 := @728 @2365 +@2770 := @2171 @68 +@2772 := @13 @2770 @69 +@2773 := @2171 @282 +@2774 := @615 @2773 +@2782 := {t : @118} -> + {vs : @224} -> {ts : @666} -> (h : @2772) -> (hs : @732) -> @663 (@2774 @73) @681 +@2783 := @2769 @2173 +@2784 := @2171 @70 +@2786 := @13 @2784 @2173 +@2787 := @2171 @67 +@2788 := @615 @2787 +@2790 := @663 (@2788 @73) +@2791 := @627 @2173 +@2792 := @2791 @69 +@2797 := {vs : @224} -> {ts : @666} -> (h : @2786) -> (hs : @732) -> @2790 @2792 +@2798 := @2783 @2602 +@2799 := @2171 @71 +@2801 := @13 @2799 @2173 +@2802 := @2755 @72 +@2804 := @615 @2770 @2746 +@2809 := {ts : @666} -> (h : @2801) -> (hs : @2802) -> @663 @2804 @2792 +@2810 := @2798 @2756 +@2812 := @13 @2365 @2173 +@2814 := @615 @2784 @2754 +@2815 := @663 @2814 +@2816 := @2791 @2756 +@2819 := (h : @2812) -> (hs : @2764) -> @2815 @2816 +@2820 := @2810 @2367 +@2822 := @615 @2799 @2762 +@2824 := @663 @2822 @2816 +@2825 := (hs : @2768) -> @2824 +@2826 := @2820 @2766 +@2828 := @663 @2604 @2816 +@2829 := @728 @1585 +@2831 := @13 @1575 @69 +@2832 := @5 @370 +@2833 := @615 @2832 +@2841 := {t : @118} -> + {vs : @224} -> {ts : @666} -> (h : @2831) -> (hs : @732) -> @663 (@2833 @73) @681 +@2842 := @2829 @10 +@2844 := @13 @1591 @10 +@2845 := @5 @282 +@2846 := @615 @2845 +@2848 := @663 (@2846 @73) +@2849 := @627 @10 +@2850 := @2849 @69 +@2855 := {vs : @224} -> {ts : @666} -> (h : @2844) -> (hs : @732) -> @2848 @2850 +@2856 := @2842 @2604 +@2857 := @1573 @10 +@2858 := @2815 @72 +@2859 := @1576 @2804 +@2860 := @663 @2859 +@2864 := {ts : @666} -> (h : @2857) -> (hs : @2858) -> @2860 @2850 +@2865 := @2856 @2816 +@2866 := @1586 @10 +@2867 := @1592 @2814 +@2868 := @663 @2867 +@2869 := @2849 @2816 +@2872 := (h : @2866) -> (hs : @2824) -> @2868 @2869 +@2873 := @2865 @2364 +@2874 := @1603 @2822 +@2875 := @663 @2874 +@2877 := (hs : @2828) -> @2875 @2869 +@2878 := @2873 @2826 +@2879 := @663 @2605 +@2880 := @2879 @2869 +@2881 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.denoteEntry +@2885 := @2881 @71 @73 @69 @72 +@2886 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.entryFits +@2890 := @2886 @71 @73 @69 @72 +@2895 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.entryValue @71 @73 @69 @72 +@2900 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.entry @71 @73 @69 @72 +@2901 := Ne.{1} +@2902 := LexLeanPreservation.Obs +@2903 := @2901 @2902 +@2904 := LexLeanPreservation.Rel +@2907 := @2903 (@2904 @72 @4) +@2908 := LexLeanPreservation.Obs.stuck +@2911 := (f : @2448) -> (v : @116) -> @2907 @2908 +@2913 := LexLeanPreservation.Rust.rel_ne_stuck @2890 +@2922 := (v : @116) -> @2903 (@2904 (@2886 @70 @71 @73 @69) @4) @2908 +@2923 := @2913 @2895 +@2927 := @2903 (@2904 @2890 @2895) @2908 +@2928 := @17 @2606 +@2929 := LexLeanPreservation.Rust.FunSem +@2935 := (n : @37) -> @2929 @370 @282 @67 @4 @68 +@2936 := @28 @2630 +@2937 := @1028 @2936 +@2944 := LexLeanRuntime.index (@17 @2630) @2630 (LexLeanRuntime.instIndexableList @2630) +@2948 := @2937 (@2944 (@2631 @370) @68) +@2949 := @1036 @2630 +@2950 := @2949 @70 +@2951 := @2948 @2950 +@2955 := @638 @378 @370 @282 @70 +@2956 := LexLeanTarget.TargetSyntax.Function.types +@2957 := @2956 @68 +@2958 := @2955 @2957 +@2959 := @28 @2928 +@2960 := @1028 @2959 +@2961 := LexLeanTarget.TargetSemantics.bindAll +@2962 := LexLeanTarget.TargetSyntax.Function.parameters +@2967 := @2960 (@2961 (@2962 @67) @68 @2619) +@2968 := @1036 @2928 +@2969 := @2968 @70 +@2970 := @2967 @2969 +@2971 := @28 @2448 +@2972 := @1028 @2971 +@2973 := LexLeanPreservation.Rust.fnFallible +@2976 := @2972 (@2973 @387 @370) +@2977 := @1036 @2448 +@2978 := @2977 @70 +@2979 := @2976 @2978 +@2980 := LexLeanPreservation.RunConv +@2981 := #13 +@2985 := @2980 @2981 @378 @282 @70 +@2987 := @2903 @68 @2908 +@2988 := Exists.{1} +@2989 := LexLeanPreservation.Rust.ROut +@2990 := @2988 @2989 +@2991 := And +@2992 := LexLeanPreservation.Rust.RealizesFn +@2996 := @2991 (@2992 @370 @282 @4) +@2997 := LexLeanPreservation.Rust.RCI +@2998 := #15 +@2999 := @2997 @2998 +@3000 := LexLeanPreservation.Rust.fnIdent +@3001 := @3000 @2981 +@3008 := (hne : @2987) -> @2990 (fun (ro : @2989) => @2996 (@2999 @3001 @387 @4)) +@3023 := {p : @81} -> + {c : @82} -> + {A : @83} -> + {f : @37} -> + {fn : @2630} -> + {args : @224} -> + {env : @2928} -> + {F : @2448} -> + {o : @2902} -> + (hB : @2935) -> + (hfn : @2951) -> (hwt : @2958) -> (hbind : @2970) -> (hF : @2979) -> (hA : @2985) -> @3008 +@3025 := LexLeanPreservation.Rust.compose @0 +@3026 := @2929 @0 +@3031 := (n : @37) -> @3026 @282 @67 @4 @68 +@3032 := @2944 @2632 +@3035 := @2937 (@3032 @68) @2950 +@3039 := @649 @370 @282 @70 @2957 +@3040 := @2980 @0 +@3043 := @3040 @378 @282 @70 +@3057 := {c : @82} -> + {A : @83} -> + {f : @37} -> + {fn : @2630} -> + {args : @224} -> + {env : @2928} -> + {F : @2448} -> + {o : @2902} -> + (hB : @3031) -> + (hfn : @3035) -> (hwt : @3039) -> (hbind : @2970) -> (hF : @2979) -> (hA : @3043) -> @3008 +@3058 := @3025 @1 +@3059 := @3026 @1 +@3063 := (n : @37) -> @3059 @67 @4 @68 +@3066 := @657 @282 @70 @2957 +@3067 := @2973 @1 +@3070 := @2972 (@3067 @370) @2978 +@3071 := @2997 @1 +@3081 := (hbind : @2970) -> + (hF : @3070) -> + (hA : @3043) -> (hne : @2987) -> @2990 (fun (ro : @2989) => @2996 (@3071 @3001 @387 @4)) +@3091 := {A : @83} -> + {f : @37} -> + {fn : @2630} -> + {args : @224} -> + {env : @2928} -> + {F : @2448} -> {o : @2902} -> (hB : @3063) -> (hfn : @3035) -> (hwt : @3066) -> @3081 +@3092 := @3058 @2 +@3094 := @3059 @2 @4 +@3096 := (n : @37) -> @3094 @68 +@3097 := @663 @70 +@3098 := @3097 @2957 +@3107 := {f : @37} -> + {fn : @2630} -> + {args : @224} -> + {env : @2928} -> + {F : @2448} -> {o : @2902} -> (hB : @3096) -> (hfn : @3035) -> (hwt : @3098) -> @3081 +@3108 := @3092 @2633 +@3110 := (n : @37) -> @3094 @2633 +@3111 := @3032 @2633 +@3112 := @2937 @3111 +@3113 := @3112 @2950 +@3114 := @3067 @2633 +@3115 := @2972 @3114 +@3116 := @3115 @2978 +@3117 := @3040 @2633 +@3119 := @3117 @282 @70 +@3121 := @3071 (@3000 @2633) +@3129 := (hF : @3116) -> + (hA : @3119) -> (hne : @2987) -> @2990 (fun (ro : @2989) => @2996 (@3121 @387 @4)) +@3138 := {fn : @2630} -> + {args : @224} -> + {env : @2928} -> + {F : @2448} -> + {o : @2902} -> (hB : @3110) -> (hfn : @3113) -> (hwt : @3098) -> (hbind : @2970) -> @3129 +@3139 := @3108 @2649 +@3141 := @3112 (@2949 @2649) +@3142 := @2956 @2649 +@3143 := @3097 @3142 +@3145 := @2961 (@2962 @2649) +@3157 := {args : @224} -> + {env : @2928} -> + {F : @2448} -> + {o : @2902} -> + (hB : @3110) -> (hfn : @3141) -> (hwt : @3143) -> (hbind : @2960 (@3145 @68 @2619) @2969) -> @3129 +@3158 := @3139 @2605 +@3162 := @2833 (@2774 (@2716 (@2659 @614))) +@3164 := @663 @3162 @3142 +@3176 := @615 (@5 @378) (@615 (@2171 @370) (@615 (@2371 @282) (@615 (@2459 @67) @614))) +@3180 := @2960 (@3145 @3176 @2619) @2969 +@3192 := @615 (@5 @975) (@615 (@2171 @387) (@615 (@2371 @378) (@615 (@2459 @370) @614))) +@3194 := @3117 @3192 @70 +@3196 := @615 (@5 @2998) +@3197 := #14 +@3222 := {env : @2928} -> + {F : @2448} -> + {o : @2902} -> + (hB : @3110) -> + (hfn : @3141) -> + (hwt : @3164) -> + (hbind : @3180) -> + (hF : @3116) -> + (hA : @3194) -> + (hne : @2987) -> + @2990 + (fun (ro : @2989) => + @2996 (@3121 (@3196 (@615 (@2171 @3197) (@615 (@2371 @2981) (@615 (@2459 @975) @614)))) @4)) +@3223 := @3158 @2628 +@3227 := @2846 (@2788 (@2730 (@2673 @614))) +@3229 := @663 @3227 @3142 +@3246 := @2960 + (@3145 @3162 @2619) + (@2968 + (@2620 (@2611 @2658) (@2620 (@2613 @2715) (@2620 (@2615 @2773) (@2620 (@2617 @2832) @2619))))) +@3258 := @615 (@5 @387) (@615 (@2171 @378) (@615 (@2371 @370) (@615 (@2459 @282) @614))) +@3286 := {F : @2448} -> + {o : @2902} -> + (hB : @3110) -> + (hfn : @3141) -> + (hwt : @3229) -> + (hbind : @3246) -> + (hF : @3116) -> + (hA : @3117 @3258 @70) -> + (hne : @2987) -> + @2990 + (fun (ro : @2989) => + @2996 + (@3121 + (@615 (@5 @3197) (@615 (@2171 @2981) (@615 (@2371 @975) (@615 (@2459 @387) @614)))) + @4)) +@3287 := @3223 @2629 +@3288 := @2860 @3142 +@3305 := @2960 + (@3145 @3227 @2619) + (@2968 + (@2620 (@2611 @2672) (@2620 (@2613 @2729) (@2620 (@2615 @2787) (@2620 (@2617 @2845) @2619))))) +@3307 := @3115 (@2977 @2629) +@3309 := @3117 @3176 @70 +@3310 := @2992 @2629 +@3338 := {o : @2902} -> + (hB : @3110) -> + (hfn : @3141) -> + (hwt : @3288) -> + (hbind : @3305) -> + (hF : @3307) -> + (hA : @3309) -> + (hne : @2987) -> + @2990 + (fun (ro : @2989) => + @2991 + (@3310 @282 @4) + (@3121 (@615 (@5 @2981) (@615 (@2171 @975) (@615 (@2371 @387) (@615 (@2459 @378) @614)))) @4)) +@3339 := @3287 @2885 +@3340 := @2868 @3142 +@3357 := @2960 + (@3145 @2859 @2619) + (@2968 + (@2620 (@2611 @2655) (@2620 (@2613 @2712) (@2620 (@2615 @2770) (@2620 (@2617 @1575) @2619))))) +@3358 := @3117 @3162 +@3362 := @2881 @370 @282 @67 @68 +@3363 := @3358 @3362 +@3367 := @2881 @378 @370 @282 @67 +@3388 := (hB : @3110) -> + (hfn : @3141) -> + (hwt : @3340) -> + (hbind : @3357) -> + (hF : @3307) -> + (hA : @3363) -> + (hne : @2903 @3367 @2908) -> + @2990 (fun (ro : @2989) => @2991 (@3310 (@2881 @975 @387 @378 @370) @4) (@3121 @3192 @4)) +@3389 := @3339 @2653 +@3390 := @2875 @3142 +@3407 := @2960 + (@3145 @2867 @2619) + (@2968 + (@2620 (@2611 @2669) (@2620 (@2613 @2726) (@2620 (@2615 @2784) (@2620 (@2617 @1591) @2619))))) +@3408 := @3117 @3227 +@3412 := @2881 @282 @67 @68 @70 +@3433 := (hfn : @3141) -> + (hwt : @3390) -> + (hbind : @3407) -> + (hF : @3307) -> + (hA : @3408 @3412) -> + (hne : @2903 @3362 @2908) -> + @2990 (fun (ro : @2989) => @2991 (@3310 (@2881 @387 @378 @370 @282) @4) (@3121 @3258 @4)) +@3436 := @3389 (@1136 @2936 @3111) +@3437 := @2879 @3142 +@3454 := @2960 + (@3145 @2874 @2619) + (@2968 + (@2620 (@2611 @2684) (@2620 (@2613 @2741) (@2620 (@2615 @2799) (@2620 (@2617 @1572) @2619))))) +@3455 := @3117 @2859 +@3459 := @2881 @67 @68 @70 @71 +@3475 := (hwt : @3437) -> + (hbind : @3454) -> + (hF : @3307) -> + (hA : @3455 @3459) -> + (hne : @2903 @3412 @2908) -> @2990 (fun (ro : @2989) => @2991 (@3310 @3367 @4) (@3121 @3176 @4)) +@3476 := @3436 @2878 +@3478 := @3145 @2605 @2619 +@3481 := @2960 @3478 (@2968 @2628) +@3482 := @3117 @2867 +@3486 := @2881 @68 @70 @71 @73 +@3501 := (hbind : @3481) -> + (hF : @3307) -> + (hA : @3482 @3486) -> + (hne : @2903 @3459 @2908) -> @2990 (fun (ro : @2989) => @2991 (@3310 @3362 @4) (@3121 @3162 @4)) +@3504 := @3476 (@1136 @2959 @3478) +@3505 := @3117 @2874 +@3509 := @2881 @70 @71 @73 @69 +@3523 := (hF : @3307) -> + (hA : @3505 @3509) -> + (hne : @2903 @3486 @2908) -> @2990 (fun (ro : @2989) => @2991 (@3310 @3412 @4) (@3121 @3227 @4)) +@3526 := @3504 (@1136 @2971 @3114) +@3528 := @3117 @2605 @2885 +@3530 := @2903 @3509 @2908 +@3531 := @3310 @3459 +@3533 := @2991 (@3531 @4) +@3534 := @3121 @2859 +@3535 := @3534 @4 +@3540 := (hA : @3528) -> (hne : @3530) -> @2990 (fun (ro : @2989) => @3533 @3535) +@3541 := @3526 @2900 +@3543 := @2903 @2885 @2908 +@3544 := @3310 @3486 +@3546 := @2991 (@3544 @4) +@3547 := @3121 @2867 +@3552 := (hne : @3543) -> @2990 (fun (ro : @2989) => @3546 (@3547 @4)) +@3553 := @3541 @2923 +@3556 := @2991 (@3310 @3509 @4) +@3558 := @3121 @2874 @4 +@3559 := @3556 @3558 +@3561 := @2990 (fun (ro : @2989) => @3559) +@3562 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.accepts +@3566 := @3562 @71 @73 @69 @72 +@3567 := LexLeanPreservation.someObs +@3568 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.denote +@3573 := @3567 (@3568 @71 @73 @69 @72) +@3575 := LexLeanPreservation.Obs.value @1632 +@3576 := Not +@3577 := @3576 @3566 +@3581 := @3562 @70 @71 @73 @69 +@3586 := @3567 (@3568 @70 @71 @73 @69) +@3587 := @3576 @3581 +@3595 := @3581 -> @3310 (@3567 (@3568 @68 @70 @71 @73)) @72 +@3596 := @3310 @3575 +@3597 := @3596 @72 +@3598 := @3587 -> @3597 +@3600 := @2991 @3595 @3598 +@3604 := @2990 (fun (__e_ro : @2989) => @2991 @3558 @3600) +@3605 := fun (__e_ro : @2989) => @3559 +@3606 := @3544 @72 +@3607 := @3547 @72 +@3608 := And.left +@3609 := And.right +@3612 := @3608 @3606 @3607 @4 +@3615 := @3609 @3606 @3607 @4 +@3616 := @3310 @4 +@3618 := fun (__e_o : @2902) => @3616 @69 +@3619 := Eq.subst.{1} +@3623 := @3562 @68 @70 @71 @73 +@3624 := @3576 @3623 +@3630 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.entry_accepts @67 @68 @70 @71 @4 +@3635 := @3567 (@3568 @67 @68 @70 @71) +@3640 := @3608 (@3531 @69) (@3534 @69) @72 +@3642 := fun (__e_o : @2902) => @3616 @73 +@3645 := @3619 @2902 @3642 @3459 +@3649 := fun (__e_h : @3623) => @3645 @3635 @3630 @3640 +@3655 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.entry_refuses @67 @68 @70 @71 @4 +@3659 := fun (__e_h : @3624) => @3645 @3575 @3655 @3640 +@3660 := And.intro +@3663 := @3623 -> @3310 @3635 @69 +@3665 := @3624 -> @3596 @69 +@3667 := @2991 @3663 @3665 +@3671 := @3660 @3663 @3665 @3649 @3659 +@3675 := @3660 @3607 @3667 @3615 @3671 +@3676 := Exists.intro.{1} +@3677 := @2991 @3535 +@3681 := @3562 @67 @68 @70 @71 +@3695 := fun (__e_ro : @2989) => + @3677 (@2991 (@3681 -> @3310 (@3567 (@3568 @282 @67 @68 @70)) @72) (@3576 @3681 -> @3597)) +@3699 := @3676 @2989 @3695 @72 @3675 +@3701 := @2991 @3606 @3607 +@3703 := fun (__e_ro : @2989) => fun (__e_hand : @3559) => @3699 +@3709 := Exists.elim.{1} @2989 @3605 @3604 @3553 @3703 +@3710 := LexLeanPreservation.Rust.RepresentableL +@3711 := @2171 @69 +@3712 := @2371 @72 +@3714 := @615 @2584 @614 +@3716 := @615 @3712 @3714 +@3720 := @3710 (@1618 (@615 @3711 @3716)) +@3721 := (__e_hrep : @3720) -> @3604 +@3722 := fun (__e_hrep : @3720) => @3709 +@3723 := (spare : @2451) -> @3721 +@3724 := fun (spare : @2451) => @3722 +@3725 := (picks : @2368) -> @3723 +@3726 := fun (picks : @2368) => @3724 +@3727 := (ledger : @2170) -> @3725 +@3728 := fun (ledger : @2170) => @3726 +@3729 := (g : @3) -> @3727 +@3730 := fun (g : @3) => @3728 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R0/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R0/RustStd.lean new file mode 100644 index 000000000..0b6dfd385 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R0/RustStd.lean @@ -0,0 +1,180 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [{ constructors := [[(.list .nat), (.list (.adt 0)), (.list (.pair .string .int)), (.option (.adt 0)), (.list (.pair .nat (.adt 0)))], [(.list (.pair .nat .int))], [(.result (.adt 0) .nat)]] }, + { constructors := [[(.list (.pair .string .int)), .string]] }], functions := [ + { parameters := [0, 1, 2, 3], types := [(.adt 0), (.adt 1), (.option (.list .nat)), (.list (.list (.pair .nat .bool)))], result := (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool)))))), + body := (.build .pair (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool)))))) [(.call 1 [(.var 0)]), (.build .pair (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))) [(.var 1), (.build .pair (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool)))) [(.var 2), (.var 3)])])]) }, + { parameters := [0], types := [(.adt 0)], result := .nat, + body := (.«match» .nat (.var 0) [(.arm (.adt 0) [1, 2, 3, 4, 5] (.prim .length [(.var 1)])), (.arm (.adt 1) [6] (.prim .length [(.var 6)])), (.arm (.adt 2) [7] (.value .nat (.nat 0)))]) }, + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.«match» .bool (.var 0) [(.arm (.adt 0) [1, 2, 3, 4, 5] (.cond (.call 3 [(.var 1)]) (.cond (.call 4 [(.var 2)]) (.cond (.call 5 [(.var 3)]) (.cond (.call 7 [(.var 4)]) (.cond (.call 8 [(.var 5)]) (.build .true .bool []) (.build .false .bool [])) (.build .false .bool [])) (.build .false .bool [])) (.build .false .bool [])) (.build .false .bool []))), (.arm (.adt 1) [6] (.cond (.call 11 [(.var 6)]) (.build .true .bool []) (.build .false .bool []))), (.arm (.adt 2) [7] (.cond (.call 12 [(.var 7)]) (.build .true .bool []) (.build .false .bool [])))]) }, + { parameters := [0], types := [(.list .nat)], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.var 1), (.var 3)]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 3 [(.var 2)]) (.build .false .bool [])))]))]) }, + { parameters := [0], types := [(.list (.adt 0))], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 2 [(.var 1)]) (.call 4 [(.var 2)]) (.build .false .bool [])))]) }, + { parameters := [0], types := [(.list (.pair .string .int))], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 6 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 5 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, + { parameters := [0], types := [.int], result := .bool, + body := (.build .true .bool []) }, + { parameters := [0], types := [(.option (.adt 0))], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .none [] (.build .true .bool [])), (.arm .some [1] (.call 2 [(.var 1)]))]) }, + { parameters := [0], types := [(.list (.pair .nat (.adt 0)))], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 9 [(.var 1)]) (.call 8 [(.var 2)]) (.build .false .bool [])))]) }, + { parameters := [0], types := [(.pair .nat (.adt 0))], result := .bool, + body := (.cond (.call 10 [(.first (.var 0))]) (.call 2 [(.second (.var 0))]) (.build .false .bool [])) }, + { parameters := [0], types := [.nat], result := .bool, + body := (.build .true .bool []) }, + { parameters := [0], types := [(.list (.pair .nat .int))], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 6 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 11 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, + { parameters := [0], types := [(.result (.adt 0) .nat)], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .ok [1] (.call 2 [(.var 1)])), (.arm .error [2] (.call 10 [(.var 2)]))]) }, + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.«match» .bool (.var 0) [(.arm (.adt 0) [1, 2] (.cond (.call 5 [(.var 1)]) (.build .true .bool []) (.build .false .bool [])))]) }, + { parameters := [0], types := [(.option (.list .nat))], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .none [] (.build .true .bool [])), (.arm .some [1] (.call 3 [(.var 1)]))]) }, + { parameters := [0], types := [(.list (.list (.pair .nat .bool)))], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 16 [(.var 1)]) (.call 15 [(.var 2)]) (.build .false .bool [])))]) }, + { parameters := [0], types := [(.list (.pair .nat .bool))], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 17 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 16 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, + { parameters := [0], types := [.bool], result := .bool, + body := (.build .true .bool []) }, + { parameters := [0, 1, 2, 3], types := [(.adt 0), (.adt 1), (.option (.list .nat)), (.list (.list (.pair .nat .bool)))], result := (.option (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))), + body := (.cond (.call 2 [(.var 0)]) (.cond (.call 13 [(.var 1)]) (.cond (.call 14 [(.var 2)]) (.cond (.call 15 [(.var 3)]) (.build .some (.option (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [(.call 0 [(.var 0), (.var 1), (.var 2), (.var 3)])]) (.build .none (.option (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])) (.build .none (.option (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])) (.build .none (.option (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])) (.build .none (.option (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.enum (.adt 0) [{ number := 0, fields := [(.list .nat), (.list (.adt 0)), (.list (.pair .str .int)), (.rc (.option (.adt 0))), (.list (.pair .nat (.adt 0)))] }, { number := 1, fields := [(.list (.pair .nat .int))] }, { number := 2, fields := [(.rc (.result (.adt 0) .nat))] }]), + (.enum (.adt 1) [{ number := 0, fields := [(.list (.pair .str .int)), .str] }]), + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 1) }, { pattern := (.bind (.generated .binding 2)), type := (.option (.list .nat)) }, { pattern := (.bind (.generated .binding 3)), type := (.list (.list (.pair .nat .bool))) }] (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool)))))) (.mk [] (.pair (.call (.function 1) [(.move (.generated .binding 0))] false) (.pair (.move (.generated .binding 1)) (.pair (.move (.generated .binding 2)) (.move (.generated .binding 3))))))), + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .nat (.mk [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 1)) [(.mk (.adt 0 0 [(.bind (.generated .binding 1)), .wild, .wild, .wild, .wild]) (.mk [(.mk (.bind (.generated .operand 2)) none (.move (.generated .binding 1)))] (.call (.runtime .lengthList) [(.move (.generated .operand 2))] false))), (.mk (.adt 0 1 [(.bind (.generated .binding 6))]) (.mk [(.mk (.bind (.generated .operand 3)) none (.move (.generated .binding 6)))] (.call (.runtime .lengthList) [(.move (.generated .operand 3))] false))), (.mk (.adt 0 2 [.wild]) (.mk [] (.lit (.nat 0))))]))), + (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .holder 4)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 4)) [(.mk (.adt 0 0 [(.bind (.generated .binding 1)), (.bind (.generated .binding 2)), (.bind (.generated .binding 3)), (.bind (.generated .boxed 5)), (.bind (.generated .binding 5))]) (.mk [(.mk (.bind (.generated .binding 4)) none (.unbox (.generated .boxed 5)))] (.cond (.call (.function 3) [(.move (.generated .binding 1))] false) (.mk [] (.cond (.call (.function 4) [(.move (.generated .binding 2))] false) (.mk [] (.cond (.call (.function 5) [(.move (.generated .binding 3))] false) (.mk [] (.cond (.call (.function 7) [(.move (.generated .binding 4))] false) (.mk [] (.call (.function 8) [(.move (.generated .binding 5))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))))), (.mk (.adt 0 1 [(.bind (.generated .binding 6))]) (.mk [] (.call (.function 11) [(.move (.generated .binding 6))] false))), (.mk (.adt 0 2 [(.bind (.generated .boxed 6))]) (.mk [(.mk (.bind (.generated .binding 7)) none (.unbox (.generated .boxed 6)))] (.call (.function 12) [(.move (.generated .binding 7))] false)))]))), + (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }] .bool (.mk [(.mk (.bind (.generated .holder 7)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 7)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [(.mk (.bind (.generated .holder 8)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 8)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 11)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false))))] (.cond (.matchOn (.move (.generated .holder 11)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 3) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])))]))), + (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.adt 0)) }] .bool (.mk [(.mk (.bind (.generated .holder 12)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 12)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 2) [(.move (.generated .binding 1))] false) (.mk [] (.call (.function 4) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))]))), + (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .str .int)) }] .bool (.mk [(.mk (.bind (.generated .holder 13)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 13)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 6) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 14))]) none (.move (.generated .binding 1)))] (.move (.generated .part 14))))] false) (.mk [(.mk (.bind (.generated .holder 15)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 15)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 20)) none (.block (.mk [(.mk (.bind (.generated .operand 18)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 16)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 16))))), (.mk (.bind (.generated .operand 19)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 17)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 17)))))] (.call (.runtime .compare) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false))))] (.cond (.matchOn (.move (.generated .holder 20)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 5) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]))), + (.function (.generated .function 6) [{ pattern := .wild, type := .int }] .bool (.mk [] (.lit (.bool true)))), + (.function (.generated .function 7) [{ pattern := (.bind (.generated .binding 0)), type := (.option (.adt 0)) }] .bool (.mk [(.mk (.bind (.generated .holder 21)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 21)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.call (.function 2) [(.move (.generated .binding 1))] false)))]))), + (.function (.generated .function 8) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat (.adt 0))) }] .bool (.mk [(.mk (.bind (.generated .holder 22)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 22)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 9) [(.move (.generated .binding 1))] false) (.mk [] (.call (.function 8) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))]))), + (.function (.generated .function 9) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat (.adt 0)) }] .bool (.mk [] (.cond (.call (.function 10) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 23)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 23))))] false) (.mk [] (.call (.function 2) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 24))]) none (.move (.generated .binding 0)))] (.move (.generated .part 24))))] false)) (.mk [] (.lit (.bool false)))))), + (.function (.generated .function 10) [{ pattern := .wild, type := .nat }] .bool (.mk [] (.lit (.bool true)))), + (.function (.generated .function 11) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat .int)) }] .bool (.mk [(.mk (.bind (.generated .holder 25)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 25)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 6) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 26))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 26))))] false) (.mk [(.mk (.bind (.generated .holder 27)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 27)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 32)) none (.block (.mk [(.mk (.bind (.generated .operand 30)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 28)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 28))))), (.mk (.bind (.generated .operand 31)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 29)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 29)))))] (.call (.runtime .compare) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] false))))] (.cond (.matchOn (.move (.generated .holder 32)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 11) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]))), + (.function (.generated .function 12) [{ pattern := (.bind (.generated .binding 0)), type := (.result (.adt 0) .nat) }] .bool (.mk [(.mk (.bind (.generated .holder 33)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 33)) [(.mk (.ok (.bind (.generated .binding 1))) (.mk [] (.call (.function 2) [(.move (.generated .binding 1))] false))), (.mk (.err (.bind (.generated .binding 2))) (.mk [] (.call (.function 10) [(.copy (.generated .binding 2))] false)))]))), + (.function (.generated .function 13) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .holder 34)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 34)) [(.mk (.adt 1 0 [(.bind (.generated .binding 1)), .wild]) (.mk [] (.call (.function 5) [(.move (.generated .binding 1))] false)))]))), + (.function (.generated .function 14) [{ pattern := (.bind (.generated .binding 0)), type := (.option (.list .nat)) }] .bool (.mk [(.mk (.bind (.generated .holder 35)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 35)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.call (.function 3) [(.move (.generated .binding 1))] false)))]))), + (.function (.generated .function 15) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.list (.pair .nat .bool))) }] .bool (.mk [(.mk (.bind (.generated .holder 36)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 36)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 16) [(.move (.generated .binding 1))] false) (.mk [] (.call (.function 15) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))]))), + (.function (.generated .function 16) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat .bool)) }] .bool (.mk [(.mk (.bind (.generated .holder 37)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 37)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 17) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 38))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 38))))] false) (.mk [(.mk (.bind (.generated .holder 39)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 39)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 44)) none (.block (.mk [(.mk (.bind (.generated .operand 42)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 40)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 40))))), (.mk (.bind (.generated .operand 43)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 41)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 41)))))] (.call (.runtime .compare) [(.move (.generated .operand 42)), (.move (.generated .operand 43))] false))))] (.cond (.matchOn (.move (.generated .holder 44)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 16) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]))), + (.function (.generated .function 17) [{ pattern := .wild, type := .bool }] .bool (.mk [] (.lit (.bool true)))), + (.function (.generated .function 18) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 1) }, { pattern := (.bind (.generated .binding 2)), type := (.option (.list .nat)) }, { pattern := (.bind (.generated .binding 3)), type := (.list (.list (.pair .nat .bool))) }] (.option (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) (.mk [] (.cond (.call (.function 2) [(.clone (.generated .binding 0))] false) (.mk [] (.cond (.call (.function 13) [(.clone (.generated .binding 1))] false) (.mk [] (.cond (.call (.function 14) [(.clone (.generated .binding 2))] false) (.mk [] (.cond (.call (.function 15) [(.clone (.generated .binding 3))] false) (.mk [] (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 2)), (.move (.generated .binding 3))] false)])) (.mk [] (.construct (.none (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])))) (.mk [] (.construct (.none (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])))) (.mk [] (.construct (.none (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])))) (.mk [] (.construct (.none (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])))))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [], (.pair (.call (.function 1) [(.move (.generated .binding 0))] false) (.pair (.move (.generated .binding 1)) (.pair (.move (.generated .binding 2)) (.move (.generated .binding 3))))), [(3, (.list (.list (.pair .nat .bool))), (some 3)), (2, (.option (.list .nat)), (some 2)), (1, (.adt 1), (some 1)), (0, (.adt 0), (some 0))], rfl, rfl, + (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))))⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 1)) [(.mk (.adt 0 0 [(.bind (.generated .binding 1)), .wild, .wild, .wild, .wild]) (.mk [(.mk (.bind (.generated .operand 2)) none (.move (.generated .binding 1)))] (.call (.runtime .lengthList) [(.move (.generated .operand 2))] false))), (.mk (.adt 0 1 [(.bind (.generated .binding 6))]) (.mk [(.mk (.bind (.generated .operand 3)) none (.move (.generated .binding 6)))] (.call (.runtime .lengthList) [(.move (.generated .operand 3))] false))), (.mk (.adt 0 2 [.wild]) (.mk [] (.lit (.nat 0))))]), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.adt 0)) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(5, (.list (.pair .nat (.adt 0))), none), (4, (.option (.adt 0)), none), (3, (.list (.pair .string .int)), none), (2, (.list (.adt 0)), none), (1, (.list .nat), (some 1)), (0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .operand 2)) none (.move (.generated .binding 1)))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 2))] false)) (Corr.mCons (Γ' := [(6, (.list (.pair .nat .int)), (some 6)), (0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .operand 3)) none (.move (.generated .binding 6)))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 3))] false)) (Corr.mCons (Γ' := [(7, (.result (.adt 0) .nat), none), (0, (.adt 0), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.nat 0))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.value rfl rfl))) rfl rfl rfl (Corr.prim (ts := [(.list (.pair .nat .int))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.prim (ts := [(.list .nat)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl)⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 4)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 4)) [(.mk (.adt 0 0 [(.bind (.generated .binding 1)), (.bind (.generated .binding 2)), (.bind (.generated .binding 3)), (.bind (.generated .boxed 5)), (.bind (.generated .binding 5))]) (.mk [(.mk (.bind (.generated .binding 4)) none (.unbox (.generated .boxed 5)))] (.cond (.call (.function 3) [(.move (.generated .binding 1))] false) (.mk [] (.cond (.call (.function 4) [(.move (.generated .binding 2))] false) (.mk [] (.cond (.call (.function 5) [(.move (.generated .binding 3))] false) (.mk [] (.cond (.call (.function 7) [(.move (.generated .binding 4))] false) (.mk [] (.call (.function 8) [(.move (.generated .binding 5))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))))), (.mk (.adt 0 1 [(.bind (.generated .binding 6))]) (.mk [] (.call (.function 11) [(.move (.generated .binding 6))] false))), (.mk (.adt 0 2 [(.bind (.generated .boxed 6))]) (.mk [(.mk (.bind (.generated .binding 7)) none (.unbox (.generated .boxed 6)))] (.call (.function 12) [(.move (.generated .binding 7))] false)))]), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.adt 0)) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(5, (.list (.pair .nat (.adt 0))), (some 5)), (4, (.option (.adt 0)), (some 4)), (3, (.list (.pair .string .int)), (some 3)), (2, (.list (.adt 0)), (some 2)), (1, (.list .nat), (some 1)), (0, (.adt 0), (some 0))]) (j := 0) (loads := [(.mk (.bind (.generated .binding 4)) none (.unbox (.generated .boxed 5)))]) (lets := []) (tail := (.cond (.call (.function 3) [(.move (.generated .binding 1))] false) (.mk [] (.cond (.call (.function 4) [(.move (.generated .binding 2))] false) (.mk [] (.cond (.call (.function 5) [(.move (.generated .binding 3))] false) (.mk [] (.cond (.call (.function 7) [(.move (.generated .binding 4))] false) (.mk [] (.call (.function 8) [(.move (.generated .binding 5))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (Corr.mCons (Γ' := [(6, (.list (.pair .nat .int)), (some 6)), (0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 11) [(.move (.generated .binding 6))] false)) (Corr.mCons (Γ' := [(7, (.result (.adt 0) .nat), (some 7)), (0, (.adt 0), (some 0))]) (j := 2) (loads := [(.mk (.bind (.generated .binding 7)) none (.unbox (.generated .boxed 6)))]) (lets := []) (tail := (.call (.function 12) [(.move (.generated .binding 7))] false)) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 12) [(.move (.generated .binding 7))] false)) (lk := []) (Corr.callOps (ts := [(.result (.adt 0) .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kId (Corr.bOfE (Corr.buildConst rfl)) (Corr.bOfE (Corr.buildConst rfl)) rfl))) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 11) [(.move (.generated .binding 6))] false)) (lk := []) (Corr.callOps (ts := [(.list (.pair .nat .int))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kId (Corr.bOfE (Corr.buildConst rfl)) (Corr.bOfE (Corr.buildConst rfl)) rfl))) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 3) [(.move (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [(.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 4) [(.move (.generated .binding 2))] false) (.mk [] (.cond (.call (.function 5) [(.move (.generated .binding 3))] false) (.mk [] (.cond (.call (.function 7) [(.move (.generated .binding 4))] false) (.mk [] (.call (.function 8) [(.move (.generated .binding 5))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := []) (ce := (.call (.function 4) [(.move (.generated .binding 2))] false)) (lk := []) (Corr.callOps (ts := [(.list (.adt 0))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 5) [(.move (.generated .binding 3))] false) (.mk [] (.cond (.call (.function 7) [(.move (.generated .binding 4))] false) (.mk [] (.call (.function 8) [(.move (.generated .binding 5))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := []) (ce := (.call (.function 5) [(.move (.generated .binding 3))] false)) (lk := []) (Corr.callOps (ts := [(.list (.pair .string .int))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 7) [(.move (.generated .binding 4))] false) (.mk [] (.call (.function 8) [(.move (.generated .binding 5))] false)) (.mk [] (.lit (.bool false))))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := []) (ce := (.call (.function 7) [(.move (.generated .binding 4))] false)) (lk := []) (Corr.callOps (ts := [(.option (.adt 0))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 8) [(.move (.generated .binding 5))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := []) (ce := (.call (.function 8) [(.move (.generated .binding 5))] false)) (lk := []) (Corr.callOps (ts := [(.list (.pair .nat (.adt 0)))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kId (Corr.bOfE (Corr.buildConst rfl)) (Corr.bOfE (Corr.buildConst rfl)) rfl)) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl)⟩⟩ + +theorem fun3 : FunOK program krate flags 3 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 7)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 7)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [(.mk (.bind (.generated .holder 8)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 8)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 11)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false))))] (.cond (.matchOn (.move (.generated .holder 11)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 3) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])))]), [(0, (.list .nat), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 8)) none (.clone (.generated .binding 2)))]) (tail := (.matchOn (.uncons (.generated .holder 8)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 11)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false))))] (.cond (.matchOn (.move (.generated .holder 11)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 3) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list .nat), none), (3, .nat, (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 11)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 11)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 3) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .holder 11)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false))))]) (ce := (.matchOn (.move (.generated .holder 11)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 3)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.list .nat), none), (3, .nat, (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list .nat), none), (3, .nat, (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, (.list .nat), none), (3, .nat, (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 3) [(.move (.generated .binding 2))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ + +theorem fun4 : FunOK program krate flags 4 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 12)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 12)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 2) [(.move (.generated .binding 1))] false) (.mk [] (.call (.function 4) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))]), [(0, (.list (.adt 0)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.adt 0))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list (.adt 0)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, (.list (.adt 0)), (some 2)), (1, (.adt 0), (some 1)), (0, (.list (.adt 0)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 2) [(.move (.generated .binding 1))] false) (.mk [] (.call (.function 4) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 2) [(.move (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 4) [(.move (.generated .binding 2))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.list (.adt 0))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ + +theorem fun5 : FunOK program krate flags 5 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 13)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 13)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 6) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 14))]) none (.move (.generated .binding 1)))] (.move (.generated .part 14))))] false) (.mk [(.mk (.bind (.generated .holder 15)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 15)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 20)) none (.block (.mk [(.mk (.bind (.generated .operand 18)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 16)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 16))))), (.mk (.bind (.generated .operand 19)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 17)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 17)))))] (.call (.runtime .compare) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false))))] (.cond (.matchOn (.move (.generated .holder 20)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 5) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]), [(0, (.list (.pair .string .int)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.pair .string .int))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list (.pair .string .int)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, (.list (.pair .string .int)), (some 2)), (1, (.pair .string .int), (some 1)), (0, (.list (.pair .string .int)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 6) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 14))]) none (.move (.generated .binding 1)))] (.move (.generated .part 14))))] false) (.mk [(.mk (.bind (.generated .holder 15)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 15)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 20)) none (.block (.mk [(.mk (.bind (.generated .operand 18)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 16)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 16))))), (.mk (.bind (.generated .operand 19)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 17)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 17)))))] (.call (.runtime .compare) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false))))] (.cond (.matchOn (.move (.generated .holder 20)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 5) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 6) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 14))]) none (.move (.generated .binding 1)))] (.move (.generated .part 14))))] false)) (lk := []) (Corr.callOps (ts := [.int]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 14))]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 14))) (Corr.second (ta := .string) (tb := .int) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .holder 15)) none (.clone (.generated .binding 2)))]) (ta := (.matchOn (.uncons (.generated .holder 15)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 20)) none (.block (.mk [(.mk (.bind (.generated .operand 18)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 16)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 16))))), (.mk (.bind (.generated .operand 19)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 17)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 17)))))] (.call (.runtime .compare) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false))))] (.cond (.matchOn (.move (.generated .holder 20)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 5) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (lb := []) (tb := (.lit (.bool false))) (Corr.matchArms (st := (.list (.pair .string .int))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.pair .string .int)), (some 2)), (1, (.pair .string .int), (some 1)), (0, (.list (.pair .string .int)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair .string .int)), none), (3, (.pair .string .int), (some 3)), (2, (.list (.pair .string .int)), (some 2)), (1, (.pair .string .int), (some 1)), (0, (.list (.pair .string .int)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 20)) none (.block (.mk [(.mk (.bind (.generated .operand 18)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 16)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 16))))), (.mk (.bind (.generated .operand 19)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 17)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 17)))))] (.call (.runtime .compare) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 20)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 5) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .holder 20)) none (.block (.mk [(.mk (.bind (.generated .operand 18)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 16)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 16))))), (.mk (.bind (.generated .operand 19)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 17)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 17)))))] (.call (.runtime .compare) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false))))]) (ce := (.matchOn (.move (.generated .holder 20)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 18)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 16)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 16))))), (.mk (.bind (.generated .operand 19)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 17)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 17)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false)) (Corr.prim (ts := [.string, .string]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 16)), .wild]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 16))) (Corr.first (ta := .string) (tb := .int) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 17)), .wild]) none (.move (.generated .binding 3)))]) (tail := (.move (.generated .part 17))) (Corr.first (ta := .string) (tb := .int) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.list (.pair .string .int)), none), (3, (.pair .string .int), (some 3)), (2, (.list (.pair .string .int)), (some 2)), (1, (.pair .string .int), (some 1)), (0, (.list (.pair .string .int)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair .string .int)), none), (3, (.pair .string .int), (some 3)), (2, (.list (.pair .string .int)), (some 2)), (1, (.pair .string .int), (some 1)), (0, (.list (.pair .string .int)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, (.list (.pair .string .int)), none), (3, (.pair .string .int), (some 3)), (2, (.list (.pair .string .int)), (some 2)), (1, (.pair .string .int), (some 1)), (0, (.list (.pair .string .int)), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 5) [(.move (.generated .binding 2))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.list (.pair .string .int))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ + +theorem fun6 : FunOK program krate flags 6 := + ⟨_, rfl, .inl ⟨_, _, [], (.lit (.bool true)), [(0, .int, none)], rfl, rfl, + (Corr.bOfE (Corr.buildConst rfl))⟩⟩ + +theorem fun7 : FunOK program krate flags 7 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 21)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 21)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.call (.function 2) [(.move (.generated .binding 1))] false)))]), [(0, (.option (.adt 0)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option (.adt 0))) (U := []) (view := false) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.option (.adt 0)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(1, (.adt 0), (some 1)), (0, (.option (.adt 0)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 2) [(.move (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ + +theorem fun8 : FunOK program krate flags 8 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 22)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 22)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 9) [(.move (.generated .binding 1))] false) (.mk [] (.call (.function 8) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))]), [(0, (.list (.pair .nat (.adt 0))), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.pair .nat (.adt 0)))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list (.pair .nat (.adt 0))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, (.list (.pair .nat (.adt 0))), (some 2)), (1, (.pair .nat (.adt 0)), (some 1)), (0, (.list (.pair .nat (.adt 0))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 9) [(.move (.generated .binding 1))] false) (.mk [] (.call (.function 8) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 9) [(.move (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [(.pair .nat (.adt 0))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 8) [(.move (.generated .binding 2))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.list (.pair .nat (.adt 0)))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ + +theorem fun9 : FunOK program krate flags 9 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 10) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 23)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 23))))] false) (.mk [] (.call (.function 2) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 24))]) none (.move (.generated .binding 0)))] (.move (.generated .part 24))))] false)) (.mk [] (.lit (.bool false)))), [(0, (.pair .nat (.adt 0)), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 10) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 23)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 23))))] false)) (lk := []) (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 23)), .wild]) none (.move (.generated .binding 0)))]) (tail := (.move (.generated .part 23))) (Corr.first (ta := .nat) (tb := (.adt 0)) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 2) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 24))]) none (.move (.generated .binding 0)))] (.move (.generated .part 24))))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 24))]) none (.move (.generated .binding 0)))]) (tail := (.move (.generated .part 24))) (Corr.second (ta := .nat) (tb := (.adt 0)) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ + +theorem fun10 : FunOK program krate flags 10 := + ⟨_, rfl, .inl ⟨_, _, [], (.lit (.bool true)), [(0, .nat, none)], rfl, rfl, + (Corr.bOfE (Corr.buildConst rfl))⟩⟩ + +theorem fun11 : FunOK program krate flags 11 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 25)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 25)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 6) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 26))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 26))))] false) (.mk [(.mk (.bind (.generated .holder 27)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 27)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 32)) none (.block (.mk [(.mk (.bind (.generated .operand 30)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 28)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 28))))), (.mk (.bind (.generated .operand 31)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 29)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 29)))))] (.call (.runtime .compare) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] false))))] (.cond (.matchOn (.move (.generated .holder 32)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 11) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]), [(0, (.list (.pair .nat .int)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.pair .nat .int))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list (.pair .nat .int)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, (.list (.pair .nat .int)), (some 2)), (1, (.pair .nat .int), (some 1)), (0, (.list (.pair .nat .int)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 6) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 26))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 26))))] false) (.mk [(.mk (.bind (.generated .holder 27)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 27)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 32)) none (.block (.mk [(.mk (.bind (.generated .operand 30)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 28)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 28))))), (.mk (.bind (.generated .operand 31)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 29)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 29)))))] (.call (.runtime .compare) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] false))))] (.cond (.matchOn (.move (.generated .holder 32)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 11) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 6) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 26))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 26))))] false)) (lk := []) (Corr.callOps (ts := [.int]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 26))]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 26))) (Corr.second (ta := .nat) (tb := .int) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .holder 27)) none (.clone (.generated .binding 2)))]) (ta := (.matchOn (.uncons (.generated .holder 27)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 32)) none (.block (.mk [(.mk (.bind (.generated .operand 30)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 28)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 28))))), (.mk (.bind (.generated .operand 31)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 29)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 29)))))] (.call (.runtime .compare) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] false))))] (.cond (.matchOn (.move (.generated .holder 32)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 11) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (lb := []) (tb := (.lit (.bool false))) (Corr.matchArms (st := (.list (.pair .nat .int))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.pair .nat .int)), (some 2)), (1, (.pair .nat .int), (some 1)), (0, (.list (.pair .nat .int)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair .nat .int)), none), (3, (.pair .nat .int), (some 3)), (2, (.list (.pair .nat .int)), (some 2)), (1, (.pair .nat .int), (some 1)), (0, (.list (.pair .nat .int)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 32)) none (.block (.mk [(.mk (.bind (.generated .operand 30)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 28)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 28))))), (.mk (.bind (.generated .operand 31)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 29)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 29)))))] (.call (.runtime .compare) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 32)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 11) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .holder 32)) none (.block (.mk [(.mk (.bind (.generated .operand 30)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 28)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 28))))), (.mk (.bind (.generated .operand 31)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 29)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 29)))))] (.call (.runtime .compare) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] false))))]) (ce := (.matchOn (.move (.generated .holder 32)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 30)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 28)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 28))))), (.mk (.bind (.generated .operand 31)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 29)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 29)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 28)), .wild]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 28))) (Corr.first (ta := .nat) (tb := .int) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 29)), .wild]) none (.copy (.generated .binding 3)))]) (tail := (.move (.generated .part 29))) (Corr.first (ta := .nat) (tb := .int) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.list (.pair .nat .int)), none), (3, (.pair .nat .int), (some 3)), (2, (.list (.pair .nat .int)), (some 2)), (1, (.pair .nat .int), (some 1)), (0, (.list (.pair .nat .int)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair .nat .int)), none), (3, (.pair .nat .int), (some 3)), (2, (.list (.pair .nat .int)), (some 2)), (1, (.pair .nat .int), (some 1)), (0, (.list (.pair .nat .int)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, (.list (.pair .nat .int)), none), (3, (.pair .nat .int), (some 3)), (2, (.list (.pair .nat .int)), (some 2)), (1, (.pair .nat .int), (some 1)), (0, (.list (.pair .nat .int)), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 11) [(.move (.generated .binding 2))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.list (.pair .nat .int))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ + +theorem fun12 : FunOK program krate flags 12 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 33)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 33)) [(.mk (.ok (.bind (.generated .binding 1))) (.mk [] (.call (.function 2) [(.move (.generated .binding 1))] false))), (.mk (.err (.bind (.generated .binding 2))) (.mk [] (.call (.function 10) [(.copy (.generated .binding 2))] false)))]), [(0, (.result (.adt 0) .nat), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.result (.adt 0) .nat)) (U := []) (view := false) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.adt 0), (some 1)), (0, (.result (.adt 0) .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.call (.function 2) [(.move (.generated .binding 1))] false)) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (0, (.result (.adt 0) .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 10) [(.copy (.generated .binding 2))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl rfl rfl)⟩⟩ + +theorem fun13 : FunOK program krate flags 13 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 34)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 34)) [(.mk (.adt 1 0 [(.bind (.generated .binding 1)), .wild]) (.mk [] (.call (.function 5) [(.move (.generated .binding 1))] false)))]), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.adt 1)) (U := []) (view := false) (idx := [0]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, .string, none), (1, (.list (.pair .string .int)), (some 1)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.call (.function 5) [(.move (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 5) [(.move (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [(.list (.pair .string .int))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kId (Corr.bOfE (Corr.buildConst rfl)) (Corr.bOfE (Corr.buildConst rfl)) rfl))) rfl rfl rfl)⟩⟩ + +theorem fun14 : FunOK program krate flags 14 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 35)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 35)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.call (.function 3) [(.move (.generated .binding 1))] false)))]), [(0, (.option (.list .nat)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option (.list .nat))) (U := []) (view := false) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.option (.list .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(1, (.list .nat), (some 1)), (0, (.option (.list .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 3) [(.move (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ + +theorem fun15 : FunOK program krate flags 15 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 36)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 36)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 16) [(.move (.generated .binding 1))] false) (.mk [] (.call (.function 15) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))]), [(0, (.list (.list (.pair .nat .bool))), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.list (.pair .nat .bool)))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list (.list (.pair .nat .bool))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, (.list (.list (.pair .nat .bool))), (some 2)), (1, (.list (.pair .nat .bool)), (some 1)), (0, (.list (.list (.pair .nat .bool))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 16) [(.move (.generated .binding 1))] false) (.mk [] (.call (.function 15) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 16) [(.move (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [(.list (.pair .nat .bool))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 15) [(.move (.generated .binding 2))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.list (.list (.pair .nat .bool)))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ + +theorem fun16 : FunOK program krate flags 16 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 37)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 37)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 17) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 38))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 38))))] false) (.mk [(.mk (.bind (.generated .holder 39)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 39)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 44)) none (.block (.mk [(.mk (.bind (.generated .operand 42)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 40)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 40))))), (.mk (.bind (.generated .operand 43)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 41)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 41)))))] (.call (.runtime .compare) [(.move (.generated .operand 42)), (.move (.generated .operand 43))] false))))] (.cond (.matchOn (.move (.generated .holder 44)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 16) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]), [(0, (.list (.pair .nat .bool)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.pair .nat .bool))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list (.pair .nat .bool)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, (.list (.pair .nat .bool)), (some 2)), (1, (.pair .nat .bool), (some 1)), (0, (.list (.pair .nat .bool)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 17) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 38))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 38))))] false) (.mk [(.mk (.bind (.generated .holder 39)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 39)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 44)) none (.block (.mk [(.mk (.bind (.generated .operand 42)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 40)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 40))))), (.mk (.bind (.generated .operand 43)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 41)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 41)))))] (.call (.runtime .compare) [(.move (.generated .operand 42)), (.move (.generated .operand 43))] false))))] (.cond (.matchOn (.move (.generated .holder 44)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 16) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 17) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 38))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 38))))] false)) (lk := []) (Corr.callOps (ts := [.bool]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 38))]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 38))) (Corr.second (ta := .nat) (tb := .bool) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .holder 39)) none (.clone (.generated .binding 2)))]) (ta := (.matchOn (.uncons (.generated .holder 39)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 44)) none (.block (.mk [(.mk (.bind (.generated .operand 42)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 40)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 40))))), (.mk (.bind (.generated .operand 43)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 41)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 41)))))] (.call (.runtime .compare) [(.move (.generated .operand 42)), (.move (.generated .operand 43))] false))))] (.cond (.matchOn (.move (.generated .holder 44)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 16) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (lb := []) (tb := (.lit (.bool false))) (Corr.matchArms (st := (.list (.pair .nat .bool))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.pair .nat .bool)), (some 2)), (1, (.pair .nat .bool), (some 1)), (0, (.list (.pair .nat .bool)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair .nat .bool)), none), (3, (.pair .nat .bool), (some 3)), (2, (.list (.pair .nat .bool)), (some 2)), (1, (.pair .nat .bool), (some 1)), (0, (.list (.pair .nat .bool)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 44)) none (.block (.mk [(.mk (.bind (.generated .operand 42)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 40)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 40))))), (.mk (.bind (.generated .operand 43)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 41)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 41)))))] (.call (.runtime .compare) [(.move (.generated .operand 42)), (.move (.generated .operand 43))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 44)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 16) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .holder 44)) none (.block (.mk [(.mk (.bind (.generated .operand 42)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 40)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 40))))), (.mk (.bind (.generated .operand 43)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 41)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 41)))))] (.call (.runtime .compare) [(.move (.generated .operand 42)), (.move (.generated .operand 43))] false))))]) (ce := (.matchOn (.move (.generated .holder 44)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 42)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 40)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 40))))), (.mk (.bind (.generated .operand 43)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 41)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 41)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 42)), (.move (.generated .operand 43))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 40)), .wild]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 40))) (Corr.first (ta := .nat) (tb := .bool) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 41)), .wild]) none (.copy (.generated .binding 3)))]) (tail := (.move (.generated .part 41))) (Corr.first (ta := .nat) (tb := .bool) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.list (.pair .nat .bool)), none), (3, (.pair .nat .bool), (some 3)), (2, (.list (.pair .nat .bool)), (some 2)), (1, (.pair .nat .bool), (some 1)), (0, (.list (.pair .nat .bool)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair .nat .bool)), none), (3, (.pair .nat .bool), (some 3)), (2, (.list (.pair .nat .bool)), (some 2)), (1, (.pair .nat .bool), (some 1)), (0, (.list (.pair .nat .bool)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, (.list (.pair .nat .bool)), none), (3, (.pair .nat .bool), (some 3)), (2, (.list (.pair .nat .bool)), (some 2)), (1, (.pair .nat .bool), (some 1)), (0, (.list (.pair .nat .bool)), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 16) [(.move (.generated .binding 2))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.list (.pair .nat .bool))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ + +theorem fun17 : FunOK program krate flags 17 := + ⟨_, rfl, .inl ⟨_, _, [], (.lit (.bool true)), [(0, .bool, none)], rfl, rfl, + (Corr.bOfE (Corr.buildConst rfl))⟩⟩ + +theorem fun18 : FunOK program krate flags 18 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 2) [(.clone (.generated .binding 0))] false) (.mk [] (.cond (.call (.function 13) [(.clone (.generated .binding 1))] false) (.mk [] (.cond (.call (.function 14) [(.clone (.generated .binding 2))] false) (.mk [] (.cond (.call (.function 15) [(.clone (.generated .binding 3))] false) (.mk [] (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 2)), (.move (.generated .binding 3))] false)])) (.mk [] (.construct (.none (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])))) (.mk [] (.construct (.none (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])))) (.mk [] (.construct (.none (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])))) (.mk [] (.construct (.none (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) []))), [(3, (.list (.list (.pair .nat .bool))), (some 3)), (2, (.option (.list .nat)), (some 2)), (1, (.adt 1), (some 1)), (0, (.adt 0), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 2) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 13) [(.clone (.generated .binding 1))] false) (.mk [] (.cond (.call (.function 14) [(.clone (.generated .binding 2))] false) (.mk [] (.cond (.call (.function 15) [(.clone (.generated .binding 3))] false) (.mk [] (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 2)), (.move (.generated .binding 3))] false)])) (.mk [] (.construct (.none (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])))) (.mk [] (.construct (.none (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])))) (.mk [] (.construct (.none (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])))) (lb := []) (tb := (.construct (.none (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])) (Corr.cond (lc := []) (ce := (.call (.function 13) [(.clone (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 14) [(.clone (.generated .binding 2))] false) (.mk [] (.cond (.call (.function 15) [(.clone (.generated .binding 3))] false) (.mk [] (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 2)), (.move (.generated .binding 3))] false)])) (.mk [] (.construct (.none (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])))) (.mk [] (.construct (.none (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])))) (lb := []) (tb := (.construct (.none (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])) (Corr.cond (lc := []) (ce := (.call (.function 14) [(.clone (.generated .binding 2))] false)) (lk := []) (Corr.callOps (ts := [(.option (.list .nat))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 15) [(.clone (.generated .binding 3))] false) (.mk [] (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 2)), (.move (.generated .binding 3))] false)])) (.mk [] (.construct (.none (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])))) (lb := []) (tb := (.construct (.none (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])) (Corr.cond (lc := []) (ce := (.call (.function 15) [(.clone (.generated .binding 3))] false)) (lk := []) (Corr.callOps (ts := [(.list (.list (.pair .nat .bool)))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 2)), (.move (.generated .binding 3))] false)])) (lb := []) (tb := (.construct (.none (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])) (Corr.build (ts := [(.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0), (.adt 1), (.option (.list .nat)), (.list (.list (.pair .nat .bool)))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | 3 => exact fun3 + | 4 => exact fun4 + | 5 => exact fun5 + | 6 => exact fun6 + | 7 => exact fun7 + | 8 => exact fun8 + | 9 => exact fun9 + | 10 => exact fun10 + | 11 => exact fun11 + | 12 => exact fun12 + | 13 => exact fun13 + | 14 => exact fun14 + | 15 => exact fun15 + | 16 => exact fun16 + | 17 => exact fun17 + | 18 => exact fun18 + | _ + 19 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R1.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R1.lean new file mode 100644 index 000000000..3b3784ecb --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R1.lean @@ -0,0 +1,114 @@ +import LexLeanPreservation.Core +import LexLeanPreservation.Values +import LexLeanPreservation.Primitives +import LexLeanPreservation.Fixed +import LexLeanPreservation.Keys +import LexLeanPreservation.Templates +import LexLeanPreservation.Validate +import Coverage.Boundary +import Coverage.Colls +import Coverage.Main +import Coverage.Prims +import Coverage.RecRoots +import Coverage.Recur +import Coverage.Syntax +import Coverage.Types +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +set_option linter.unusedVariables false +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1 + +def __prog : _root_.LexLeanTarget.TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1, 2], types := [(.list (.pair .string .nat)), .string, .nat], result := (.pair (.list (.pair .string .nat)) (.pair (.list (.pair .string .nat)) (.pair (.option .nat) (.pair .bool (.pair (.list .string) (.pair (.list .nat) (.pair .nat (.list (.pair .string .nat))))))))), + body := (.build .pair (.pair (.list (.pair .string .nat)) (.pair (.list (.pair .string .nat)) (.pair (.option .nat) (.pair .bool (.pair (.list .string) (.pair (.list .nat) (.pair .nat (.list (.pair .string .nat))))))))) [(.call 1 [(.var 0), (.var 1), (.var 2)]), (.build .pair (.pair (.list (.pair .string .nat)) (.pair (.option .nat) (.pair .bool (.pair (.list .string) (.pair (.list .nat) (.pair .nat (.list (.pair .string .nat)))))))) [(.call 2 [(.var 0), (.var 1)]), (.build .pair (.pair (.option .nat) (.pair .bool (.pair (.list .string) (.pair (.list .nat) (.pair .nat (.list (.pair .string .nat))))))) [(.call 3 [(.var 0), (.var 1)]), (.build .pair (.pair .bool (.pair (.list .string) (.pair (.list .nat) (.pair .nat (.list (.pair .string .nat)))))) [(.call 4 [(.var 0), (.var 1)]), (.build .pair (.pair (.list .string) (.pair (.list .nat) (.pair .nat (.list (.pair .string .nat))))) [(.call 6 [(.var 0)]), (.build .pair (.pair (.list .nat) (.pair .nat (.list (.pair .string .nat)))) [(.call 7 [(.var 0)]), (.build .pair (.pair .nat (.list (.pair .string .nat))) [(.prim .length [(.var 0)]), (.var 0)])])])])])])]) }, + { parameters := [0, 1, 2], types := [(.list (.pair .string .nat)), .string, .nat], result := (.list (.pair .string .nat)), + body := (.«match» (.list (.pair .string .nat)) (.var 0) [(.arm .nil [] (.build .cons (.list (.pair .string .nat)) [(.build .pair (.pair .string .nat) [(.var 1), (.var 2)]), (.build .nil (.list (.pair .string .nat)) [])])), (.arm .cons [3, 4] (.«match» (.list (.pair .string .nat)) (.prim .compare [(.var 1), (.first (.var 3))]) [(.arm .lt [] (.build .cons (.list (.pair .string .nat)) [(.build .pair (.pair .string .nat) [(.var 1), (.var 2)]), (.var 0)])), (.arm .eq [] (.build .cons (.list (.pair .string .nat)) [(.build .pair (.pair .string .nat) [(.var 1), (.var 2)]), (.var 4)])), (.arm .gt [] (.build .cons (.list (.pair .string .nat)) [(.var 3), (.call 1 [(.var 4), (.var 1), (.var 2)])]))]))]) }, + { parameters := [0, 1], types := [(.list (.pair .string .nat)), .string], result := (.list (.pair .string .nat)), + body := (.«match» (.list (.pair .string .nat)) (.var 0) [(.arm .nil [] (.build .nil (.list (.pair .string .nat)) [])), (.arm .cons [2, 3] (.«match» (.list (.pair .string .nat)) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.var 0)), (.arm .eq [] (.var 3)), (.arm .gt [] (.build .cons (.list (.pair .string .nat)) [(.var 2), (.call 2 [(.var 3), (.var 1)])]))]))]) }, + { parameters := [0, 1], types := [(.list (.pair .string .nat)), .string], result := (.option .nat), + body := (.«match» (.option .nat) (.var 0) [(.arm .nil [] (.build .none (.option .nat) [])), (.arm .cons [2, 3] (.«match» (.option .nat) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.build .none (.option .nat) [])), (.arm .eq [] (.build .some (.option .nat) [(.second (.var 2))])), (.arm .gt [] (.call 3 [(.var 3), (.var 1)]))]))]) }, + { parameters := [0, 1], types := [(.list (.pair .string .nat)), .string], result := .bool, + body := (.«match» .bool (.call 5 [(.var 0), (.var 1)]) [(.arm .none [] (.build .false .bool [])), (.arm .some [2] (.build .true .bool []))]) }, + { parameters := [0, 1], types := [(.list (.pair .string .nat)), .string], result := (.option .nat), + body := (.«match» (.option .nat) (.var 0) [(.arm .nil [] (.build .none (.option .nat) [])), (.arm .cons [2, 3] (.«match» (.option .nat) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.build .none (.option .nat) [])), (.arm .eq [] (.build .some (.option .nat) [(.second (.var 2))])), (.arm .gt [] (.call 5 [(.var 3), (.var 1)]))]))]) }, + { parameters := [0], types := [(.list (.pair .string .nat))], result := (.list .string), + body := (.«match» (.list .string) (.var 0) [(.arm .nil [] (.build .nil (.list .string) [])), (.arm .cons [1, 2] (.build .cons (.list .string) [(.first (.var 1)), (.call 6 [(.var 2)])]))]) }, + { parameters := [0], types := [(.list (.pair .string .nat))], result := (.list .nat), + body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.build .nil (.list .nat) [])), (.arm .cons [1, 2] (.build .cons (.list .nat) [(.second (.var 1)), (.call 7 [(.var 2)])]))]) }, + { parameters := [0], types := [(.list (.pair .string .nat))], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 9 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 8 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, + { parameters := [0], types := [.nat], result := .bool, + body := (.build .true .bool []) }, + { parameters := [0, 1, 2], types := [(.list (.pair .string .nat)), .string, .nat], result := (.option (.pair (.list (.pair .string .nat)) (.pair (.list (.pair .string .nat)) (.pair (.option .nat) (.pair .bool (.pair (.list .string) (.pair (.list .nat) (.pair .nat (.list (.pair .string .nat)))))))))), + body := (.cond (.call 8 [(.var 0)]) (.build .some (.option (.pair (.list (.pair .string .nat)) (.pair (.list (.pair .string .nat)) (.pair (.option .nat) (.pair .bool (.pair (.list .string) (.pair (.list .nat) (.pair .nat (.list (.pair .string .nat)))))))))) [(.call 0 [(.var 0), (.var 1), (.var 2)])]) (.build .none (.option (.pair (.list (.pair .string .nat)) (.pair (.list (.pair .string .nat)) (.pair (.option .nat) (.pair .bool (.pair (.list .string) (.pair (.list .nat) (.pair .nat (.list (.pair .string .nat)))))))))) [])) }] } + +def __fits_0 (m : (List (Prod String Nat))) (k : String) (v : Nat) : Bool := + ((((Bool.true && (Bool.true && (Bool.true && Bool.true))) && Bool.true) && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((((Bool.true && Bool.true) && Bool.true) && (((((Bool.true && Bool.true) && Bool.true) && (((((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanCollections.mapSize (m) : Nat) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) + +theorem __rel_0 (m : (List (Prod String Nat))) (k : String) (v : Nat) : _root_.LexLeanPreservation.FunRel __prog 0 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat)) m), (_root_.LexLeanTarget.TargetSyntax.Value.string k), (_root_.LexLeanTarget.TargetSyntax.Value.nat v)] (_root_.LexLeanPreservation.Rel (__fits_0 m k v) ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat)) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat)) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.string) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat))))))))) (Coverage.Colls.mapOps m k v))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_mapInsert (_root_.LexLeanPreservation.keySpec_string _root_.LexLeanCollections.compareCodes rfl (fun _ _ => rfl) (fun _ _ => rfl) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) (fun _ _ => rfl)) _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) _root_.LexLeanCollections.insertEntry (fun _ _ => rfl) (fun _ _ _ _ _ __h => by simp only [_root_.LexLeanCollections.insertEntry, __h]) (fun _ _ _ _ _ __h => by simp only [_root_.LexLeanCollections.insertEntry, __h]) (fun _ _ _ _ _ __h => by simp only [_root_.LexLeanCollections.insertEntry, __h]) (p := __prog) (fi := 1) (tk := .string) (tw := .nat) rfl (m) (k) (v))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.tpl_mapRemove (_root_.LexLeanPreservation.keySpec_string _root_.LexLeanCollections.compareCodes rfl (fun _ _ => rfl) (fun _ _ => rfl) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) (fun _ _ => rfl)) _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) _root_.LexLeanCollections.removeEntry (fun _ => rfl) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.removeEntry, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.removeEntry, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.removeEntry, __h]) (p := __prog) (fi := 2) (tk := .string) (tw := .nat) rfl (m) (k))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.tpl_mapLookup (_root_.LexLeanPreservation.keySpec_string _root_.LexLeanCollections.compareCodes rfl (fun _ _ => rfl) (fun _ _ => rfl) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) (fun _ _ => rfl)) _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) (_root_.LexLeanPreservation.optEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) _root_.LexLeanCollections.lookupEntry (fun _ => rfl) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (p := __prog) (fi := 3) (tk := .string) (tw := .nat) rfl (m) (k))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.tpl_mapContains (_root_.LexLeanPreservation.keySpec_string _root_.LexLeanCollections.compareCodes rfl (fun _ _ => rfl) (fun _ _ => rfl) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) (fun _ _ => rfl)) _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) _root_.LexLeanCollections.lookupEntry (fun _ => rfl) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (p := __prog) (fi := 4) (tk := .string) (tw := .nat) rfl rfl (m) (k))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.tpl_mapKeys (ek := _root_.LexLeanTarget.TargetSyntax.Value.string) (ev := _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.string) (fun _ => rfl) (p := __prog) (fi := 6) (tk := .string) (tw := .nat) rfl (m))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.tpl_mapValues (ek := _root_.LexLeanTarget.TargetSyntax.Value.string) (ev := _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) (p := __prog) (fi := 7) (tk := .string) (tw := .nat) rfl (m))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat)) m)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) + +def denote (m : (List (Prod String Nat))) (k : String) (v : Nat) : _root_.LexLeanPreservation.Obs := + _root_.cond (__fits_0 m k v) (_root_.LexLeanPreservation.Obs.value (((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat)) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat)) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.string) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat))))))))) (Coverage.Colls.mapOps m k v)))) _root_.LexLeanPreservation.Obs.overflow + +theorem root (m : (List (Prod String Nat))) (k : String) (v : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat)) m), (_root_.LexLeanTarget.TargetSyntax.Value.string k), (_root_.LexLeanTarget.TargetSyntax.Value.nat v)] (_root_.LexLeanPreservation.Rel (__fits_0 m k v) ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat)) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat)) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.string) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat))))))))) (Coverage.Colls.mapOps m k v))) := + _root_.LexLeanPreservation.run_of_funRel (__rel_0 m k v) + +def __valid_9 : Nat -> Bool := + fun _ => Bool.true + +def __inv_9 : Nat -> Prop := + fun _ => _root_.True + +theorem __viff_9 : ∀ (__v : Nat), __valid_9 __v = Bool.true ↔ __inv_9 __v := + fun __v => _root_.LexLeanPreservation.validTrue_inv __v + +theorem __vrel_9 : ∀ (__v : Nat), _root_.LexLeanPreservation.FunRel __prog 9 [(_root_.LexLeanTarget.TargetSyntax.Value.nat __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_9 __v))) := + _root_.LexLeanPreservation.tpl_validTrue _root_.LexLeanTarget.TargetSyntax.Value.nat rfl + +def __valid_8 : (List (Prod String Nat)) -> Bool := + _root_.LexLeanPreservation.ascMap (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) __valid_9 + +def __inv_8 : (List (Prod String Nat)) -> Prop := + _root_.LexLeanPreservation.InvMap (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) __inv_9 + +theorem __viff_8 : ∀ (__v : (List (Prod String Nat))), __valid_8 __v = Bool.true ↔ __inv_8 __v := + _root_.LexLeanPreservation.ascMap_inv (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) __valid_9 __inv_9 __viff_9 + +theorem __vrel_8 : ∀ (__v : (List (Prod String Nat))), _root_.LexLeanPreservation.FunRel __prog 8 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat)) __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_8 __v))) := + _root_.LexLeanPreservation.tpl_validMap (_root_.LexLeanPreservation.keySpec_string _root_.LexLeanCollections.compareCodes rfl (fun _ _ => rfl) (fun _ _ => rfl) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) (fun _ _ => rfl)) __valid_9 (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) __vrel_9 rfl + +def entryFits (m : (List (Prod String Nat))) (k : String) (v : Nat) : Bool := + (if __valid_8 m then __fits_0 m k v else Bool.true) + +def entryValue (m : (List (Prod String Nat))) (k : String) (v : Nat) : _root_.LexLeanTarget.TargetSyntax.Value := + (if __valid_8 m then (_root_.LexLeanTarget.TargetSyntax.Value.some ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat)) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat)) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.string) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat))))))))) (Coverage.Colls.mapOps m k v))) else _root_.LexLeanTarget.TargetSyntax.Value.none) + +/-- The entry's observation. -/ +def denoteEntry (m : (List (Prod String Nat))) (k : String) (v : Nat) : _root_.LexLeanPreservation.Obs := + _root_.cond (_root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.entryFits m k v) (_root_.LexLeanPreservation.Obs.value (_root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.entryValue m k v)) _root_.LexLeanPreservation.Obs.overflow + +/-- §17.12's invariants of the validated parameters. -/ +def accepts (m : (List (Prod String Nat))) (k : String) (v : Nat) : Prop := + (__inv_8 m ∧ _root_.True) + +theorem entry (m : (List (Prod String Nat))) (k : String) (v : Nat) : _root_.LexLeanPreservation.RunConv __prog 10 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat)) m), (_root_.LexLeanTarget.TargetSyntax.Value.string k), (_root_.LexLeanTarget.TargetSyntax.Value.nat v)] (_root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.denoteEntry m k v) := + _root_.LexLeanPreservation.run_of_funRel (_root_.LexLeanPreservation.FunRel.fits_eq (_root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun __c => if __c then __fits_0 m k v else Bool.true) (fun __c => if __c then (_root_.LexLeanTarget.TargetSyntax.Value.some ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat)) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat)) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.string) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat))))))))) (Coverage.Colls.mapOps m k v))) else _root_.LexLeanTarget.TargetSyntax.Value.none) (__valid_8 m) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_8 m)) (fun _ => _root_.LexLeanPreservation.Conv.fits_eq (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (__rel_0 m k v)) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some) (by simp)) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (by simp [_root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.entryFits])) + +theorem entry_accepts (m : (List (Prod String Nat))) (k : String) (v : Nat) (__h : _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.accepts m k v) : _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.denoteEntry m k v = _root_.LexLeanPreservation.someObs (_root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.denote m k v) := by + unfold _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.accepts at __h + unfold _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.denoteEntry _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.entryFits _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.entryValue _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.denote + simp only [_root_.if_true, (__viff_8 m).mpr __h.1] + cases __fits_0 m k v <;> rfl + +theorem entry_refuses (m : (List (Prod String Nat))) (k : String) (v : Nat) (__h : ¬ _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.accepts m k v) : _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.denoteEntry m k v = _root_.LexLeanPreservation.Obs.value _root_.LexLeanTarget.TargetSyntax.Value.none := by + unfold _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.accepts at __h + unfold _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.denoteEntry _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.entryFits _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.entryValue + cases __c0 : __valid_8 m + · simp + · exact _root_.absurd ⟨(__viff_8 m).mp __c0, _root_.trivial⟩ __h + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1 diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R1/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R1/Compose/RustStd.lex.tex new file mode 100644 index 000000000..9f15cd712 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R1/Compose/RustStd.lex.tex @@ -0,0 +1,728 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.Compose.RustStd.root : @1520 := @1521 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.RustStd.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.RustStd.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.RustStd.flags +@3 := String +@4 := Nat +@5 := Prod.{0, 0} +@6 := @5 @3 +@7 := @6 @4 +@8 := List.{0} +@9 := @8 @7 +@10 := #3 +@11 := LexLeanTarget.TargetSyntax.Value.string +@12 := LexLeanTarget.TargetSyntax.Value.nat +@13 := LexLeanPreservation.encPair +@14 := @13 @3 +@15 := @14 @4 +@16 := @15 @11 +@17 := @16 @12 +@18 := LexLeanPreservation.encList +@19 := @18 @7 +@20 := @19 @17 +@21 := @20 @10 +@22 := LexLeanTarget.TargetSyntax.Ty.string +@23 := LexLeanTarget.TargetSyntax.Ty.nat +@24 := LexLeanTarget.TargetSyntax.Ty.pair +@25 := @24 @22 +@26 := @25 @23 +@27 := LexLeanTarget.TargetSyntax.Ty.list +@28 := @27 @26 +@29 := #0 +@30 := LexLeanTarget.TargetSyntax.Program +@31 := LexLeanPreservation.Rust.RCrate +@32 := LexLeanPreservation.Rust.Flags +@33 := LexLeanPreservation.Rust.WT +@34 := @33 @10 +@35 := #2 +@36 := @34 @35 +@37 := #1 +@38 := @36 @37 +@39 := @11 @29 +@45 := {p : @30} -> {c : @31} -> {A : @32} -> (s : @3) -> @38 @39 @22 +@47 := LexLeanPreservation.Rust.wt_string @0 +@48 := @33 @0 +@50 := @48 @35 @37 +@55 := {c : @31} -> {A : @32} -> (s : @3) -> @50 @39 @22 +@56 := @47 @1 +@57 := @48 @1 +@58 := @57 @37 +@62 := {A : @32} -> (s : @3) -> @58 @39 @22 +@63 := @56 @2 +@64 := @57 @2 +@65 := @64 @39 +@66 := @65 @22 +@67 := (s : @3) -> @66 +@69 := fun (__x : @3) => @63 @29 +@70 := @12 @29 +@76 := {p : @30} -> {c : @31} -> {A : @32} -> (n : @4) -> @38 @70 @23 +@78 := LexLeanPreservation.Rust.wt_nat @0 +@83 := {c : @31} -> {A : @32} -> (n : @4) -> @50 @70 @23 +@84 := @78 @1 +@88 := {A : @32} -> (n : @4) -> @58 @70 @23 +@89 := @84 @2 +@90 := @64 @70 +@91 := @90 @23 +@92 := (n : @4) -> @91 +@94 := fun (__x : @4) => @89 @29 +@95 := Sort 1 +@96 := LexLeanTarget.TargetSyntax.Value +@97 := (a._@._internal._hyg.#0 : @37) -> @96 +@98 := LexLeanTarget.TargetSyntax.Ty +@99 := #5 +@100 := #9 +@101 := @33 @100 +@102 := #8 +@103 := @101 @102 +@104 := #7 +@105 := @103 @104 +@106 := #4 +@107 := @106 @29 +@110 := (x : @99) -> @105 @107 @35 +@111 := #10 +@117 := (x : @99) -> @33 @111 @100 @102 @107 @35 +@118 := @5 @104 +@119 := #6 +@120 := @118 @119 +@121 := #11 +@124 := @33 @121 @111 @100 +@129 := @13 @102 @104 @119 @99 @29 +@130 := @124 @129 +@132 := @24 @106 @10 +@145 := {p : @30} -> + {c : @31} -> + {A : @32} -> + {α : @95} -> + {β : @95} -> + {ea : @97} -> + {eb : @97} -> {s : @98} -> {t : @98} -> (ha : @110) -> (hb : @117) -> (x : @120) -> @130 @132 +@147 := LexLeanPreservation.Rust.wt_encPair @0 +@172 := {c : @31} -> + {A : @32} -> + {α : @95} -> + {β : @95} -> + {ea : @97} -> + {eb : @97} -> + {s : @98} -> + {t : @98} -> + (ha : (x : @99) -> @48 @102 @104 @107 @35) -> + (hb : (x : @99) -> @48 @100 @102 @107 @35) -> (x : @120) -> @48 @111 @100 @129 @132 +@173 := @147 @1 +@194 := {A : @32} -> + {α : @95} -> + {β : @95} -> + {ea : @97} -> + {eb : @97} -> + {s : @98} -> + {t : @98} -> + (ha : (x : @99) -> @57 @104 @107 @35) -> + (hb : (x : @99) -> @57 @102 @107 @35) -> (x : @120) -> @57 @100 @129 @132 +@195 := @173 @2 +@197 := @64 @107 @35 +@198 := (x : @99) -> @197 +@209 := {α : @95} -> + {β : @95} -> + {ea : @97} -> + {eb : @97} -> {s : @98} -> {t : @98} -> (ha : @198) -> (hb : @198) -> (x : @120) -> @64 @129 @132 +@210 := @195 @3 +@211 := (a._@._internal._hyg.#0 : @3) -> @96 +@212 := (x : @3) -> @197 +@227 := {β : @95} -> + {ea : @211} -> + {eb : @97} -> + {s : @98} -> + {t : @98} -> (ha : @212) -> (hb : @198) -> (x : @6 @119) -> @64 (@14 @104 @119 @99 @29) @132 +@228 := @210 @4 +@229 := (a._@._internal._hyg.#0 : @4) -> @96 +@230 := (x : @4) -> @197 +@242 := {ea : @211} -> + {eb : @229} -> + {s : @98} -> {t : @98} -> (ha : @212) -> (hb : @230) -> (x : @7) -> @64 (@15 @119 @99 @29) @132 +@243 := @228 @11 +@245 := (x : @3) -> @65 @35 +@255 := {eb : @229} -> + {s : @98} -> {t : @98} -> (ha : @245) -> (hb : @230) -> (x : @7) -> @64 (@16 @99 @29) @132 +@256 := @243 @12 +@258 := (x : @4) -> @90 @35 +@260 := @64 (@17 @29) +@266 := {s : @98} -> {t : @98} -> (ha : @245) -> (hb : @258) -> (x : @7) -> @260 @132 +@267 := @256 @22 +@268 := (x : @3) -> @66 +@274 := {t : @98} -> (ha : @268) -> (hb : @258) -> (x : @7) -> @260 (@25 @10) +@275 := @267 @23 +@276 := (x : @4) -> @91 +@278 := (x : @7) -> @260 @26 +@280 := (ha : @268) -> (hb : @276) -> @278 +@284 := fun (__x : @7) => @275 @69 @94 @29 +@285 := (a._@._internal._hyg.#0 : @29) -> @96 +@288 := @33 @119 @99 @106 +@289 := @35 @29 +@292 := (x : @35) -> @288 @289 @37 +@293 := @8 @10 +@296 := @33 @104 @119 @99 +@299 := @18 @106 @10 @29 +@300 := @296 @299 +@301 := @27 @35 +@310 := {p : @30} -> + {c : @31} -> + {A : @32} -> {α : @95} -> {e : @285} -> {t : @98} -> (h : @292) -> (xs : @293) -> @300 @301 +@312 := LexLeanPreservation.Rust.wt_encList @0 +@314 := @48 @99 @106 +@328 := {c : @31} -> + {A : @32} -> + {α : @95} -> + {e : @285} -> + {t : @98} -> (h : (x : @35) -> @314 @289 @37) -> (xs : @293) -> @48 @119 @99 @299 @301 +@329 := @312 @1 +@330 := @57 @106 +@342 := {A : @32} -> + {α : @95} -> + {e : @285} -> {t : @98} -> (h : (x : @35) -> @330 @289 @37) -> (xs : @293) -> @57 @99 @299 @301 +@343 := @329 @2 +@345 := @64 @289 @37 +@353 := {α : @95} -> + {e : @285} -> {t : @98} -> (h : (x : @35) -> @345) -> (xs : @293) -> @64 @299 @301 +@354 := @343 @7 +@364 := {e : (a._@._internal._hyg.#0 : @7) -> @96} -> + {t : @98} -> (h : (x : @7) -> @345) -> (xs : @9) -> @64 (@19 @10 @29) @301 +@365 := @354 @17 +@367 := (x : @7) -> @260 @37 +@369 := @64 (@20 @29) +@373 := {t : @98} -> (h : @367) -> (xs : @9) -> @369 @301 +@374 := @365 @26 +@377 := (h : @278) -> (xs : @9) -> @369 @28 +@379 := @374 @284 @10 +@381 := @64 @21 @28 +@382 := @11 @35 +@383 := @63 @35 +@385 := @64 @382 @22 +@386 := @12 @37 +@387 := @89 @37 +@389 := @64 @386 @23 +@390 := List.nil.{0} +@391 := List.cons.{0} +@392 := @390 @96 +@393 := @391 @96 +@395 := @393 @386 @392 +@397 := @393 @382 @395 +@399 := @393 @21 @397 +@401 := @5 @4 @96 +@402 := 2 +@405 := Prod.mk.{0, 0} @4 @96 +@406 := @405 @402 +@407 := @406 @386 +@409 := @405 1 +@410 := @409 @382 +@412 := @405 0 +@413 := @412 @21 +@414 := @390 @401 +@415 := @391 @401 +@417 := @415 @413 @414 +@419 := @415 @410 @417 +@421 := @415 @407 @419 +@422 := Bool.false +@423 := LexLeanTarget.TargetSyntax.Function +@424 := LexLeanTarget.TargetSyntax.Program.functions +@425 := @424 @0 +@426 := 10 +@427 := @390 @4 +@428 := @390 @98 +@429 := LexLeanTarget.TargetSyntax.Ty.unit +@430 := LexLeanTarget.TargetSyntax.Value.unit +@433 := LexLeanTarget.TargetSyntax.Expr.value @429 @430 +@438 := LexLeanTarget.TargetSyntax.Function.mk @427 @428 @429 @433 +@443 := List.getD.{0} @423 @425 @426 @438 +@447 := fun (__e_n : @4) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.RustStd.root @29 @426 +@448 := LexLeanPreservation.Rust.WTL +@456 := {p : @30} -> {c : @31} -> {A : @32} -> @448 @35 @37 @29 @392 @428 +@458 := LexLeanPreservation.Rust.wtl_nil @0 +@459 := @448 @0 +@465 := {c : @31} -> {A : @32} -> @459 @37 @29 @392 @428 +@466 := @458 @1 +@467 := @459 @1 +@471 := {A : @32} -> @467 @29 @392 @428 +@472 := @466 @2 +@473 := @467 @2 +@474 := @473 @392 +@475 := @474 @428 +@476 := @8 @96 +@477 := @8 @98 +@479 := @288 @10 @35 +@484 := @448 @104 @119 @99 @35 @37 +@487 := @448 @102 @104 @119 +@489 := @393 @99 @10 +@490 := @487 @489 +@491 := @391 @98 +@493 := @491 @106 @35 +@503 := {p : @30} -> + {c : @31} -> + {A : @32} -> + {v : @96} -> {t : @98} -> {vs : @476} -> {ts : @477} -> (h : @479) -> (hs : @484) -> @490 @493 +@505 := LexLeanPreservation.Rust.wtl_cons @0 +@523 := {c : @31} -> + {A : @32} -> + {v : @96} -> + {t : @98} -> + {vs : @476} -> + {ts : @477} -> (h : @314 @10 @35) -> (hs : @459 @119 @99 @35 @37) -> @459 @104 @119 @489 @493 +@524 := @505 @1 +@539 := {A : @32} -> + {v : @96} -> + {t : @98} -> + {vs : @476} -> {ts : @477} -> (h : @330 @10 @35) -> (hs : @467 @99 @35 @37) -> @467 @119 @489 @493 +@540 := @524 @2 +@542 := @64 @10 @35 +@544 := @473 @35 @37 +@552 := {v : @96} -> + {t : @98} -> {vs : @476} -> {ts : @477} -> (h : @542) -> (hs : @544) -> @473 @489 @493 +@553 := @540 @386 +@554 := @12 @106 +@556 := @64 @554 @35 +@557 := @12 @119 +@558 := @393 @557 +@566 := {t : @98} -> {vs : @476} -> {ts : @477} -> (h : @556) -> (hs : @544) -> @473 (@558 @10) @493 +@567 := @553 @23 +@568 := @12 @10 +@570 := @64 @568 @23 +@571 := @12 @99 +@572 := @393 @571 +@574 := @473 (@572 @10) +@575 := @491 @23 +@576 := @575 @35 +@581 := {vs : @476} -> {ts : @477} -> (h : @570) -> (hs : @544) -> @574 @576 +@582 := @567 @392 +@583 := @12 @35 +@585 := @64 @583 @23 +@586 := @474 @37 +@588 := @393 @554 @392 +@593 := {ts : @477} -> (h : @585) -> (hs : @586) -> @473 @588 @576 +@594 := @582 @428 +@596 := @393 @568 @392 +@597 := @473 @596 +@598 := @575 @428 +@601 := (h : @389) -> (hs : @475) -> @597 @598 +@602 := @594 @387 +@604 := @393 @583 @392 +@606 := @473 @604 @598 +@607 := (hs : @475) -> @606 +@608 := @602 @472 +@610 := @473 @395 @598 +@611 := @540 @382 +@612 := @11 @99 +@614 := @64 @612 @35 +@615 := @11 @104 +@616 := @393 @615 +@624 := {t : @98} -> {vs : @476} -> {ts : @477} -> (h : @614) -> (hs : @544) -> @473 (@616 @10) @493 +@625 := @611 @22 +@626 := @11 @106 +@628 := @64 @626 @22 +@629 := @11 @119 +@630 := @393 @629 +@632 := @473 (@630 @10) +@633 := @491 @22 +@634 := @633 @35 +@639 := {vs : @476} -> {ts : @477} -> (h : @628) -> (hs : @544) -> @632 @634 +@640 := @625 @395 +@641 := @11 @10 +@643 := @64 @641 @22 +@644 := @597 @37 +@646 := @393 @612 @588 +@651 := {ts : @477} -> (h : @643) -> (hs : @644) -> @473 @646 @634 +@652 := @640 @598 +@654 := @393 @626 @596 +@655 := @473 @654 +@656 := @633 @598 +@659 := (h : @385) -> (hs : @606) -> @655 @656 +@660 := @652 @383 +@662 := @393 @641 @604 +@664 := @473 @662 @656 +@665 := (hs : @610) -> @664 +@666 := @660 @608 +@668 := @473 @397 @656 +@669 := @540 @21 +@670 := @20 @119 +@672 := @64 @670 @35 +@673 := @20 @102 +@674 := @393 @673 +@682 := {t : @98} -> {vs : @476} -> {ts : @477} -> (h : @672) -> (hs : @544) -> @473 (@674 @10) @493 +@683 := @669 @28 +@684 := @20 @99 +@686 := @64 @684 @28 +@687 := @20 @104 +@688 := @393 @687 +@690 := @473 (@688 @10) +@691 := @491 @28 +@692 := @691 @35 +@697 := {vs : @476} -> {ts : @477} -> (h : @686) -> (hs : @544) -> @690 @692 +@698 := @683 @397 +@699 := @20 @106 +@701 := @64 @699 @28 +@702 := @655 @37 +@704 := @393 @670 @646 +@705 := @473 @704 +@709 := {ts : @477} -> (h : @701) -> (hs : @702) -> @705 @692 +@710 := @698 @656 +@712 := @393 @684 @654 +@713 := @473 @712 +@714 := @691 @656 +@717 := (h : @381) -> (hs : @664) -> @713 @714 +@718 := @710 @379 +@720 := @393 @699 @662 +@721 := @473 @720 +@723 := (hs : @668) -> @721 @714 +@724 := @718 @666 +@725 := @473 @399 +@726 := @725 @714 +@727 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.denoteEntry +@730 := @727 @10 @35 @37 +@731 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.entryFits +@734 := @731 @10 @35 @37 +@738 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.entryValue @10 @35 @37 +@742 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.entry @10 @35 @37 +@743 := Bool +@744 := Ne.{1} +@745 := LexLeanPreservation.Obs +@746 := @744 @745 +@747 := LexLeanPreservation.Rel +@750 := @746 (@747 @37 @29) +@751 := LexLeanPreservation.Obs.stuck +@754 := (f : @743) -> (v : @96) -> @750 @751 +@756 := LexLeanPreservation.Rust.rel_ne_stuck @734 +@764 := (v : @96) -> @746 (@747 (@731 @106 @10 @35) @29) @751 +@765 := @756 @738 +@769 := @746 (@747 @734 @738) @751 +@770 := @8 @401 +@771 := LexLeanPreservation.Rust.FunSem +@777 := (n : @4) -> @771 @100 @102 @104 @29 @119 +@778 := Eq.{1} +@779 := Option.{0} +@780 := @779 @423 +@781 := @778 @780 +@788 := LexLeanRuntime.index (@8 @423) @423 (LexLeanRuntime.instIndexableList @423) +@792 := @781 (@788 (@424 @100) @119) +@793 := Option.some.{0} +@794 := @793 @423 +@795 := @794 @99 +@796 := @792 @795 +@800 := @448 @111 @100 @102 @99 +@801 := LexLeanTarget.TargetSyntax.Function.types +@802 := @801 @119 +@803 := @800 @802 +@804 := @779 @770 +@805 := @778 @804 +@806 := LexLeanTarget.TargetSemantics.bindAll +@807 := LexLeanTarget.TargetSyntax.Function.parameters +@812 := @805 (@806 (@807 @104) @119 @414) +@813 := @793 @770 +@814 := @813 @99 +@815 := @812 @814 +@816 := @779 @743 +@817 := @778 @816 +@818 := LexLeanPreservation.Rust.fnFallible +@821 := @817 (@818 @121 @100) +@822 := @793 @743 +@823 := @822 @99 +@824 := @821 @823 +@825 := LexLeanPreservation.RunConv +@826 := #13 +@830 := @825 @826 @111 @102 @99 +@832 := @746 @119 @751 +@833 := Exists.{1} +@834 := LexLeanPreservation.Rust.ROut +@835 := @833 @834 +@836 := And +@837 := LexLeanPreservation.Rust.RealizesFn +@841 := @836 (@837 @100 @102 @29) +@842 := LexLeanPreservation.Rust.RCI +@844 := @842 #15 +@845 := LexLeanPreservation.Rust.fnIdent +@846 := @845 @826 +@853 := (hne : @832) -> @835 (fun (ro : @834) => @841 (@844 @846 @121 @29)) +@868 := {p : @30} -> + {c : @31} -> + {A : @32} -> + {f : @4} -> + {fn : @423} -> + {args : @476} -> + {env : @770} -> + {F : @743} -> + {o : @745} -> + (hB : @777) -> + (hfn : @796) -> (hwt : @803) -> (hbind : @815) -> (hF : @824) -> (hA : @830) -> @853 +@870 := LexLeanPreservation.Rust.compose @0 +@871 := @771 @0 +@876 := (n : @4) -> @871 @102 @104 @29 @119 +@877 := @788 @425 +@880 := @781 (@877 @119) @795 +@884 := @459 @100 @102 @99 @802 +@885 := @825 @0 +@888 := @885 @111 @102 @99 +@902 := {c : @31} -> + {A : @32} -> + {f : @4} -> + {fn : @423} -> + {args : @476} -> + {env : @770} -> + {F : @743} -> + {o : @745} -> + (hB : @876) -> + (hfn : @880) -> (hwt : @884) -> (hbind : @815) -> (hF : @824) -> (hA : @888) -> @853 +@903 := @870 @1 +@904 := @871 @1 +@908 := (n : @4) -> @904 @104 @29 @119 +@911 := @467 @102 @99 @802 +@912 := @818 @1 +@915 := @817 (@912 @100) @823 +@916 := @842 @1 +@926 := (hbind : @815) -> + (hF : @915) -> (hA : @888) -> (hne : @832) -> @835 (fun (ro : @834) => @841 (@916 @846 @121 @29)) +@936 := {A : @32} -> + {f : @4} -> + {fn : @423} -> + {args : @476} -> + {env : @770} -> {F : @743} -> {o : @745} -> (hB : @908) -> (hfn : @880) -> (hwt : @911) -> @926 +@937 := @903 @2 +@939 := @904 @2 @29 +@941 := (n : @4) -> @939 @119 +@942 := @473 @99 +@943 := @942 @802 +@952 := {f : @4} -> + {fn : @423} -> + {args : @476} -> + {env : @770} -> {F : @743} -> {o : @745} -> (hB : @941) -> (hfn : @880) -> (hwt : @943) -> @926 +@953 := @937 @426 +@955 := (n : @4) -> @939 @426 +@956 := @877 @426 +@957 := @781 @956 +@958 := @957 @795 +@959 := @912 @426 +@960 := @817 @959 +@961 := @960 @823 +@962 := @885 @426 +@964 := @962 @102 @99 +@966 := @916 (@845 @426) +@974 := (hF : @961) -> (hA : @964) -> (hne : @832) -> @835 (fun (ro : @834) => @841 (@966 @121 @29)) +@983 := {fn : @423} -> + {args : @476} -> + {env : @770} -> + {F : @743} -> {o : @745} -> (hB : @955) -> (hfn : @958) -> (hwt : @943) -> (hbind : @815) -> @974 +@984 := @953 @443 +@986 := @957 (@794 @443) +@987 := @801 @443 +@988 := @942 @987 +@990 := @806 (@807 @443) +@1002 := {args : @476} -> + {env : @770} -> + {F : @743} -> + {o : @745} -> + (hB : @955) -> (hfn : @986) -> (hwt : @988) -> (hbind : @805 (@990 @119 @414) @814) -> @974 +@1003 := @984 @399 +@1006 := @674 (@616 (@558 @392)) +@1008 := @473 @1006 @987 +@1017 := @393 (@20 @100) (@393 (@11 @102) (@393 (@12 @104) @392)) +@1021 := @805 (@990 @1017 @414) @814 +@1030 := @393 (@20 @121) (@393 (@11 @111) (@393 (@12 @100) @392)) +@1032 := @962 @1030 @99 +@1035 := @393 (@20 #14) +@1037 := @393 (@11 @826) +@1038 := #12 +@1058 := {env : @770} -> + {F : @743} -> + {o : @745} -> + (hB : @955) -> + (hfn : @986) -> + (hwt : @1008) -> + (hbind : @1021) -> + (hF : @961) -> + (hA : @1032) -> + (hne : @832) -> @835 (fun (ro : @834) => @841 (@966 (@1035 (@1037 (@393 (@12 @1038) @392))) @29)) +@1059 := @1003 @421 +@1062 := @688 (@630 (@572 @392)) +@1064 := @473 @1062 @987 +@1078 := @805 (@990 @1006 @414) (@813 (@415 (@406 @557) (@415 (@409 @615) (@415 (@412 @673) @414)))) +@1087 := @393 (@20 @111) (@393 (@11 @100) (@393 (@12 @102) @392)) +@1112 := {F : @743} -> + {o : @745} -> + (hB : @955) -> + (hfn : @986) -> + (hwt : @1064) -> + (hbind : @1078) -> + (hF : @961) -> + (hA : @962 @1087 @99) -> + (hne : @832) -> + @835 + (fun (ro : @834) => @841 (@966 (@393 (@20 @826) (@393 (@11 @1038) (@393 (@12 @121) @392))) @29)) +@1113 := @1059 @422 +@1114 := @705 @987 +@1128 := @805 (@990 @1062 @414) (@813 (@415 (@406 @571) (@415 (@409 @629) (@415 (@412 @687) @414)))) +@1130 := @960 (@822 @422) +@1132 := @962 @1017 @99 +@1133 := @837 @422 +@1158 := {o : @745} -> + (hB : @955) -> + (hfn : @986) -> + (hwt : @1114) -> + (hbind : @1128) -> + (hF : @1130) -> + (hA : @1132) -> + (hne : @832) -> + @835 + (fun (ro : @834) => + @836 (@1133 @102 @29) (@966 (@393 (@20 @1038) (@393 (@11 @121) (@393 (@12 @111) @392))) @29)) +@1159 := @1113 @730 +@1160 := @713 @987 +@1174 := @805 (@990 @704 @414) (@813 (@415 (@406 @554) (@415 (@409 @612) (@415 (@412 @670) @414)))) +@1175 := @962 @1006 +@1178 := @727 @102 @104 @119 +@1179 := @1175 @1178 +@1182 := @727 @100 @102 @104 +@1202 := (hB : @955) -> + (hfn : @986) -> + (hwt : @1160) -> + (hbind : @1174) -> + (hF : @1130) -> + (hA : @1179) -> + (hne : @746 @1182 @751) -> + @835 (fun (ro : @834) => @836 (@1133 (@727 @121 @111 @100) @29) (@966 @1030 @29)) +@1203 := @1159 @447 +@1204 := @721 @987 +@1218 := @805 (@990 @712 @414) (@813 (@415 (@406 @568) (@415 (@409 @626) (@415 (@412 @684) @414)))) +@1219 := @962 @1062 +@1222 := @727 @104 @119 @99 +@1242 := (hfn : @986) -> + (hwt : @1204) -> + (hbind : @1218) -> + (hF : @1130) -> + (hA : @1219 @1222) -> + (hne : @746 @1178 @751) -> + @835 (fun (ro : @834) => @836 (@1133 (@727 @111 @100 @102) @29) (@966 @1087 @29)) +@1243 := Eq.refl.{1} +@1246 := @1203 (@1243 @780 @956) +@1247 := @725 @987 +@1261 := @805 (@990 @720 @414) (@813 (@415 (@406 @583) (@415 (@409 @641) (@415 (@412 @699) @414)))) +@1262 := @962 @704 +@1265 := @727 @119 @99 @106 +@1281 := (hwt : @1247) -> + (hbind : @1261) -> + (hF : @1130) -> + (hA : @1262 @1265) -> + (hne : @746 @1222 @751) -> @835 (fun (ro : @834) => @836 (@1133 @1182 @29) (@966 @1017 @29)) +@1282 := @1246 @724 +@1284 := @990 @399 @414 +@1287 := @805 @1284 (@813 @421) +@1288 := @962 @712 +@1291 := @727 @99 @106 @10 +@1306 := (hbind : @1287) -> + (hF : @1130) -> + (hA : @1288 @1291) -> + (hne : @746 @1265 @751) -> @835 (fun (ro : @834) => @836 (@1133 @1178 @29) (@966 @1006 @29)) +@1309 := @1282 (@1243 @804 @1284) +@1310 := @962 @720 +@1313 := @727 @106 @10 @35 +@1327 := (hF : @1130) -> + (hA : @1310 @1313) -> + (hne : @746 @1291 @751) -> @835 (fun (ro : @834) => @836 (@1133 @1222 @29) (@966 @1062 @29)) +@1330 := @1309 (@1243 @816 @959) +@1332 := @962 @399 @730 +@1334 := @746 @1313 @751 +@1335 := @1133 @1265 +@1337 := @836 (@1335 @29) +@1338 := @966 @704 +@1339 := @1338 @29 +@1344 := (hA : @1332) -> (hne : @1334) -> @835 (fun (ro : @834) => @1337 @1339) +@1345 := @1330 @742 +@1347 := @746 @730 @751 +@1348 := @1133 @1291 +@1350 := @836 (@1348 @29) +@1351 := @966 @712 +@1356 := (hne : @1347) -> @835 (fun (ro : @834) => @1350 (@1351 @29)) +@1357 := @1345 @765 +@1360 := @836 (@1133 @1313 @29) +@1362 := @966 @720 @29 +@1363 := @1360 @1362 +@1365 := @835 (fun (ro : @834) => @1363) +@1366 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.accepts +@1369 := @1366 @10 @35 @37 +@1370 := LexLeanPreservation.someObs +@1371 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.denote +@1375 := @1370 (@1371 @10 @35 @37) +@1378 := LexLeanPreservation.Obs.value LexLeanTarget.TargetSyntax.Value.none +@1379 := Not +@1380 := @1379 @1369 +@1383 := @1366 @106 @10 @35 +@1387 := @1370 (@1371 @106 @10 @35) +@1388 := @1379 @1383 +@1395 := @1383 -> @1133 (@1370 (@1371 @99 @106 @10)) @37 +@1396 := @1133 @1378 +@1397 := @1396 @37 +@1398 := @1388 -> @1397 +@1400 := @836 @1395 @1398 +@1404 := @835 (fun (__e_ro : @834) => @836 @1362 @1400) +@1405 := fun (__e_ro : @834) => @1363 +@1406 := @1348 @37 +@1407 := @1351 @37 +@1408 := And.left +@1409 := And.right +@1412 := @1408 @1406 @1407 @29 +@1415 := @1409 @1406 @1407 @29 +@1416 := @1133 @29 +@1418 := fun (__e_o : @745) => @1416 @35 +@1419 := Eq.subst.{1} +@1422 := @1366 @99 @106 @10 +@1423 := @1379 @1422 +@1428 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.entry_accepts @119 @99 @106 @29 +@1432 := @1370 (@1371 @119 @99 @106) +@1437 := @1408 (@1335 @35) (@1338 @35) @37 +@1439 := fun (__e_o : @745) => @1416 @10 +@1442 := @1419 @745 @1439 @1265 +@1446 := fun (__e_h : @1422) => @1442 @1432 @1428 @1437 +@1451 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.entry_refuses @119 @99 @106 @29 +@1455 := fun (__e_h : @1423) => @1442 @1378 @1451 @1437 +@1456 := And.intro +@1459 := @1422 -> @1133 @1432 @35 +@1461 := @1423 -> @1396 @35 +@1463 := @836 @1459 @1461 +@1467 := @1456 @1459 @1461 @1446 @1455 +@1471 := @1456 @1407 @1463 @1415 @1467 +@1472 := Exists.intro.{1} +@1473 := @836 @1339 +@1476 := @1366 @119 @99 @106 +@1489 := fun (__e_ro : @834) => + @1473 (@836 (@1476 -> @1133 (@1370 (@1371 @104 @119 @99)) @37) (@1379 @1476 -> @1397)) +@1493 := @1472 @834 @1489 @37 @1471 +@1495 := @836 @1406 @1407 +@1497 := fun (__e_ro : @834) => fun (__e_hand : @1363) => @1493 +@1503 := Exists.elim.{1} @834 @1405 @1404 @1357 @1497 +@1504 := LexLeanPreservation.Rust.RepresentableL +@1505 := @20 @35 +@1506 := @11 @37 +@1508 := @393 @70 @392 +@1510 := @393 @1506 @1508 +@1513 := @1504 (@393 @1505 @1510) +@1514 := (__e_hrep : @1513) -> @1404 +@1515 := fun (__e_hrep : @1513) => @1503 +@1516 := (v : @4) -> @1514 +@1517 := fun (v : @4) => @1515 +@1518 := (k : @3) -> @1516 +@1519 := fun (k : @3) => @1517 +@1520 := (m : @9) -> @1518 +@1521 := fun (m : @9) => @1519 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R1/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R1/RustStd.lean new file mode 100644 index 000000000..e290a0f1c --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R1/RustStd.lean @@ -0,0 +1,113 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1, 2], types := [(.list (.pair .string .nat)), .string, .nat], result := (.pair (.list (.pair .string .nat)) (.pair (.list (.pair .string .nat)) (.pair (.option .nat) (.pair .bool (.pair (.list .string) (.pair (.list .nat) (.pair .nat (.list (.pair .string .nat))))))))), + body := (.build .pair (.pair (.list (.pair .string .nat)) (.pair (.list (.pair .string .nat)) (.pair (.option .nat) (.pair .bool (.pair (.list .string) (.pair (.list .nat) (.pair .nat (.list (.pair .string .nat))))))))) [(.call 1 [(.var 0), (.var 1), (.var 2)]), (.build .pair (.pair (.list (.pair .string .nat)) (.pair (.option .nat) (.pair .bool (.pair (.list .string) (.pair (.list .nat) (.pair .nat (.list (.pair .string .nat)))))))) [(.call 2 [(.var 0), (.var 1)]), (.build .pair (.pair (.option .nat) (.pair .bool (.pair (.list .string) (.pair (.list .nat) (.pair .nat (.list (.pair .string .nat))))))) [(.call 3 [(.var 0), (.var 1)]), (.build .pair (.pair .bool (.pair (.list .string) (.pair (.list .nat) (.pair .nat (.list (.pair .string .nat)))))) [(.call 4 [(.var 0), (.var 1)]), (.build .pair (.pair (.list .string) (.pair (.list .nat) (.pair .nat (.list (.pair .string .nat))))) [(.call 6 [(.var 0)]), (.build .pair (.pair (.list .nat) (.pair .nat (.list (.pair .string .nat)))) [(.call 7 [(.var 0)]), (.build .pair (.pair .nat (.list (.pair .string .nat))) [(.prim .length [(.var 0)]), (.var 0)])])])])])])]) }, + { parameters := [0, 1, 2], types := [(.list (.pair .string .nat)), .string, .nat], result := (.list (.pair .string .nat)), + body := (.«match» (.list (.pair .string .nat)) (.var 0) [(.arm .nil [] (.build .cons (.list (.pair .string .nat)) [(.build .pair (.pair .string .nat) [(.var 1), (.var 2)]), (.build .nil (.list (.pair .string .nat)) [])])), (.arm .cons [3, 4] (.«match» (.list (.pair .string .nat)) (.prim .compare [(.var 1), (.first (.var 3))]) [(.arm .lt [] (.build .cons (.list (.pair .string .nat)) [(.build .pair (.pair .string .nat) [(.var 1), (.var 2)]), (.var 0)])), (.arm .eq [] (.build .cons (.list (.pair .string .nat)) [(.build .pair (.pair .string .nat) [(.var 1), (.var 2)]), (.var 4)])), (.arm .gt [] (.build .cons (.list (.pair .string .nat)) [(.var 3), (.call 1 [(.var 4), (.var 1), (.var 2)])]))]))]) }, + { parameters := [0, 1], types := [(.list (.pair .string .nat)), .string], result := (.list (.pair .string .nat)), + body := (.«match» (.list (.pair .string .nat)) (.var 0) [(.arm .nil [] (.build .nil (.list (.pair .string .nat)) [])), (.arm .cons [2, 3] (.«match» (.list (.pair .string .nat)) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.var 0)), (.arm .eq [] (.var 3)), (.arm .gt [] (.build .cons (.list (.pair .string .nat)) [(.var 2), (.call 2 [(.var 3), (.var 1)])]))]))]) }, + { parameters := [0, 1], types := [(.list (.pair .string .nat)), .string], result := (.option .nat), + body := (.«match» (.option .nat) (.var 0) [(.arm .nil [] (.build .none (.option .nat) [])), (.arm .cons [2, 3] (.«match» (.option .nat) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.build .none (.option .nat) [])), (.arm .eq [] (.build .some (.option .nat) [(.second (.var 2))])), (.arm .gt [] (.call 3 [(.var 3), (.var 1)]))]))]) }, + { parameters := [0, 1], types := [(.list (.pair .string .nat)), .string], result := .bool, + body := (.«match» .bool (.call 5 [(.var 0), (.var 1)]) [(.arm .none [] (.build .false .bool [])), (.arm .some [2] (.build .true .bool []))]) }, + { parameters := [0, 1], types := [(.list (.pair .string .nat)), .string], result := (.option .nat), + body := (.«match» (.option .nat) (.var 0) [(.arm .nil [] (.build .none (.option .nat) [])), (.arm .cons [2, 3] (.«match» (.option .nat) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.build .none (.option .nat) [])), (.arm .eq [] (.build .some (.option .nat) [(.second (.var 2))])), (.arm .gt [] (.call 5 [(.var 3), (.var 1)]))]))]) }, + { parameters := [0], types := [(.list (.pair .string .nat))], result := (.list .string), + body := (.«match» (.list .string) (.var 0) [(.arm .nil [] (.build .nil (.list .string) [])), (.arm .cons [1, 2] (.build .cons (.list .string) [(.first (.var 1)), (.call 6 [(.var 2)])]))]) }, + { parameters := [0], types := [(.list (.pair .string .nat))], result := (.list .nat), + body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.build .nil (.list .nat) [])), (.arm .cons [1, 2] (.build .cons (.list .nat) [(.second (.var 1)), (.call 7 [(.var 2)])]))]) }, + { parameters := [0], types := [(.list (.pair .string .nat))], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 9 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 8 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, + { parameters := [0], types := [.nat], result := .bool, + body := (.build .true .bool []) }, + { parameters := [0, 1, 2], types := [(.list (.pair .string .nat)), .string, .nat], result := (.option (.pair (.list (.pair .string .nat)) (.pair (.list (.pair .string .nat)) (.pair (.option .nat) (.pair .bool (.pair (.list .string) (.pair (.list .nat) (.pair .nat (.list (.pair .string .nat)))))))))), + body := (.cond (.call 8 [(.var 0)]) (.build .some (.option (.pair (.list (.pair .string .nat)) (.pair (.list (.pair .string .nat)) (.pair (.option .nat) (.pair .bool (.pair (.list .string) (.pair (.list .nat) (.pair .nat (.list (.pair .string .nat)))))))))) [(.call 0 [(.var 0), (.var 1), (.var 2)])]) (.build .none (.option (.pair (.list (.pair .string .nat)) (.pair (.list (.pair .string .nat)) (.pair (.option .nat) (.pair .bool (.pair (.list .string) (.pair (.list .nat) (.pair .nat (.list (.pair .string .nat)))))))))) [])) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .str .nat)) }, { pattern := (.bind (.generated .binding 1)), type := .str }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.pair (.list (.pair .str .nat)) (.pair (.list (.pair .str .nat)) (.pair (.option .nat) (.pair .bool (.pair (.list .str) (.pair (.list .nat) (.pair .nat (.list (.pair .str .nat))))))))) (.mk [] (.pair (.call (.function 1) [(.clone (.generated .binding 0)), (.clone (.generated .binding 1)), (.copy (.generated .binding 2))] false) (.pair (.call (.function 2) [(.clone (.generated .binding 0)), (.clone (.generated .binding 1))] false) (.pair (.call (.function 3) [(.clone (.generated .binding 0)), (.clone (.generated .binding 1))] false) (.pair (.call (.function 4) [(.clone (.generated .binding 0)), (.move (.generated .binding 1))] false) (.pair (.call (.function 6) [(.clone (.generated .binding 0))] false) (.pair (.call (.function 7) [(.clone (.generated .binding 0))] false) (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthList) [(.move (.generated .operand 1))] false))) (.move (.generated .binding 0))))))))))), + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .str .nat)) }, { pattern := (.bind (.generated .binding 1)), type := .str }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.list (.pair .str .nat)) (.mk [(.mk (.bind (.generated .holder 2)) none (.clone (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 2)) [(.mk .none (.mk [] (.construct .cons [(.pair (.move (.generated .binding 1)) (.copy (.generated .binding 2))), (.construct (.nil (.pair .str .nat)) [])]))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [(.mk (.bind (.generated .holder 6)) none (.block (.mk [(.mk (.bind (.generated .operand 4)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 5)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.clone (.generated .binding 3)))] (.move (.generated .part 3)))))] (.call (.runtime .compare) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false))))] (.matchOn (.move (.generated .holder 6)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.pair (.move (.generated .binding 1)) (.copy (.generated .binding 2))), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.construct .cons [(.pair (.move (.generated .binding 1)) (.copy (.generated .binding 2))), (.move (.generated .binding 4))]))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.move (.generated .binding 3)), (.call (.function 1) [(.move (.generated .binding 4)), (.move (.generated .binding 1)), (.copy (.generated .binding 2))] false)])))])))]))), + (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .str .nat)) }, { pattern := (.bind (.generated .binding 1)), type := .str }] (.list (.pair .str .nat)) (.mk [(.mk (.bind (.generated .holder 7)) none (.clone (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 7)) [(.mk .none (.mk [] (.construct (.nil (.pair .str .nat)) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 11)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 10)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 8)), .wild]) none (.clone (.generated .binding 2)))] (.move (.generated .part 8)))))] (.call (.runtime .compare) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false))))] (.matchOn (.move (.generated .holder 11)) [(.mk (.ordering .less) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 3)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.move (.generated .binding 2)), (.call (.function 2) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)])))])))]))), + (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .str .nat)) }, { pattern := (.bind (.generated .binding 1)), type := .str }] (.option .nat) (.mk [(.mk (.bind (.generated .holder 12)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 12)) [(.mk .none (.mk [] (.construct (.none .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 16)) none (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 15)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 13)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 13)))))] (.call (.runtime .compare) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false))))] (.matchOn (.move (.generated .holder 16)) [(.mk (.ordering .less) (.mk [] (.construct (.none .nat) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 17))]) none (.move (.generated .binding 2)))] (.move (.generated .part 17))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 3) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)))])))]))), + (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .str .nat)) }, { pattern := (.bind (.generated .binding 1)), type := .str }] .bool (.mk [(.mk (.bind (.generated .holder 18)) none (.call (.function 5) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 18)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some .wild) (.mk [] (.lit (.bool true))))]))), + (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .str .nat)) }, { pattern := (.bind (.generated .binding 1)), type := .str }] (.option .nat) (.mk [(.mk (.bind (.generated .holder 19)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 19)) [(.mk .none (.mk [] (.construct (.none .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 23)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 20)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 20)))))] (.call (.runtime .compare) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.matchOn (.move (.generated .holder 23)) [(.mk (.ordering .less) (.mk [] (.construct (.none .nat) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 24))]) none (.move (.generated .binding 2)))] (.move (.generated .part 24))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 5) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)))])))]))), + (.function (.generated .function 6) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .str .nat)) }] (.list .str) (.mk [(.mk (.bind (.generated .holder 25)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 25)) [(.mk .none (.mk [] (.construct (.nil .str) []))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.construct .cons [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 26)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 26)))), (.call (.function 6) [(.move (.generated .binding 2))] false)])))]))), + (.function (.generated .function 7) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .str .nat)) }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 27)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 27)) [(.mk .none (.mk [] (.construct (.nil .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.construct .cons [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 28))]) none (.move (.generated .binding 1)))] (.move (.generated .part 28)))), (.call (.function 7) [(.move (.generated .binding 2))] false)])))]))), + (.function (.generated .function 8) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .str .nat)) }] .bool (.mk [(.mk (.bind (.generated .holder 29)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 29)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 9) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 30))]) none (.move (.generated .binding 1)))] (.move (.generated .part 30))))] false) (.mk [(.mk (.bind (.generated .holder 31)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 31)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 36)) none (.block (.mk [(.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 32)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 32))))), (.mk (.bind (.generated .operand 35)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 33)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 33)))))] (.call (.runtime .compare) [(.move (.generated .operand 34)), (.move (.generated .operand 35))] false))))] (.cond (.matchOn (.move (.generated .holder 36)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 8) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]))), + (.function (.generated .function 9) [{ pattern := .wild, type := .nat }] .bool (.mk [] (.lit (.bool true)))), + (.function (.generated .function 10) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .str .nat)) }, { pattern := (.bind (.generated .binding 1)), type := .str }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.option (.pair (.list (.pair .str .nat)) (.pair (.list (.pair .str .nat)) (.pair (.option .nat) (.pair .bool (.pair (.list .str) (.pair (.list .nat) (.pair .nat (.list (.pair .str .nat)))))))))) (.mk [] (.cond (.call (.function 8) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 2))] false)])) (.mk [] (.construct (.none (.pair (.list (.pair .str .nat)) (.pair (.list (.pair .str .nat)) (.pair (.option .nat) (.pair .bool (.pair (.list .str) (.pair (.list .nat) (.pair .nat (.list (.pair .str .nat)))))))))) [])))))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [], (.pair (.call (.function 1) [(.clone (.generated .binding 0)), (.clone (.generated .binding 1)), (.copy (.generated .binding 2))] false) (.pair (.call (.function 2) [(.clone (.generated .binding 0)), (.clone (.generated .binding 1))] false) (.pair (.call (.function 3) [(.clone (.generated .binding 0)), (.clone (.generated .binding 1))] false) (.pair (.call (.function 4) [(.clone (.generated .binding 0)), (.move (.generated .binding 1))] false) (.pair (.call (.function 6) [(.clone (.generated .binding 0))] false) (.pair (.call (.function 7) [(.clone (.generated .binding 0))] false) (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthList) [(.move (.generated .operand 1))] false))) (.move (.generated .binding 0))))))))), [(2, .nat, (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))], rfl, rfl, + (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .string .nat)), .string, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .string .nat)), .string]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .string .nat)), .string]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .string .nat)), .string]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .string .nat))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .string .nat))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 1))] false)) (Corr.prim (ts := [(.list (.pair .string .nat))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))))⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 2)) none (.clone (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 2)) [(.mk .none (.mk [] (.construct .cons [(.pair (.move (.generated .binding 1)) (.copy (.generated .binding 2))), (.construct (.nil (.pair .str .nat)) [])]))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [(.mk (.bind (.generated .holder 6)) none (.block (.mk [(.mk (.bind (.generated .operand 4)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 5)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.clone (.generated .binding 3)))] (.move (.generated .part 3)))))] (.call (.runtime .compare) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false))))] (.matchOn (.move (.generated .holder 6)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.pair (.move (.generated .binding 1)) (.copy (.generated .binding 2))), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.construct .cons [(.pair (.move (.generated .binding 1)) (.copy (.generated .binding 2))), (.move (.generated .binding 4))]))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.move (.generated .binding 3)), (.call (.function 1) [(.move (.generated .binding 4)), (.move (.generated .binding 1)), (.copy (.generated .binding 2))] false)])))])))]), [(2, .nat, (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.pair .string .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .cons [(.pair (.move (.generated .binding 1)) (.copy (.generated .binding 2))), (.construct (.nil (.pair .str .nat)) [])])) (Corr.mCons (Γ' := [(4, (.list (.pair .string .nat)), (some 4)), (3, (.pair .string .nat), (some 3)), (2, .nat, (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 6)) none (.block (.mk [(.mk (.bind (.generated .operand 4)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 5)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.clone (.generated .binding 3)))] (.move (.generated .part 3)))))] (.call (.runtime .compare) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false))))]) (tail := (.matchOn (.move (.generated .holder 6)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.pair (.move (.generated .binding 1)) (.copy (.generated .binding 2))), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.construct .cons [(.pair (.move (.generated .binding 1)) (.copy (.generated .binding 2))), (.move (.generated .binding 4))]))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.move (.generated .binding 3)), (.call (.function 1) [(.move (.generated .binding 4)), (.move (.generated .binding 1)), (.copy (.generated .binding 2))] false)])))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 4)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 5)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.clone (.generated .binding 3)))] (.move (.generated .part 3)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false)) (Corr.prim (ts := [.string, .string]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.clone (.generated .binding 3)))]) (tail := (.move (.generated .part 3))) (Corr.first (ta := .string) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.list (.pair .string .nat)), (some 4)), (3, (.pair .string .nat), (some 3)), (2, .nat, (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .cons [(.pair (.move (.generated .binding 1)) (.copy (.generated .binding 2))), (.move (.generated .binding 0))])) (Corr.mCons (Γ' := [(4, (.list (.pair .string .nat)), (some 4)), (3, (.pair .string .nat), (some 3)), (2, .nat, (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct .cons [(.pair (.move (.generated .binding 1)) (.copy (.generated .binding 2))), (.move (.generated .binding 4))])) (Corr.mCons (Γ' := [(4, (.list (.pair .string .nat)), (some 4)), (3, (.pair .string .nat), (some 3)), (2, .nat, (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.construct .cons [(.move (.generated .binding 3)), (.call (.function 1) [(.move (.generated .binding 4)), (.move (.generated .binding 1)), (.copy (.generated .binding 2))] false)])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.pair .string .nat), (.list (.pair .string .nat))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .string .nat)), .string, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [(.pair .string .nat), (.list (.pair .string .nat))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [(.pair .string .nat), (.list (.pair .string .nat))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := [(.pair .string .nat), (.list (.pair .string .nat))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 7)) none (.clone (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 7)) [(.mk .none (.mk [] (.construct (.nil (.pair .str .nat)) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 11)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 10)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 8)), .wild]) none (.clone (.generated .binding 2)))] (.move (.generated .part 8)))))] (.call (.runtime .compare) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false))))] (.matchOn (.move (.generated .holder 11)) [(.mk (.ordering .less) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 3)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.move (.generated .binding 2)), (.call (.function 2) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)])))])))]), [(1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.pair .string .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.nil (.pair .str .nat)) [])) (Corr.mCons (Γ' := [(3, (.list (.pair .string .nat)), (some 3)), (2, (.pair .string .nat), (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 11)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 10)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 8)), .wild]) none (.clone (.generated .binding 2)))] (.move (.generated .part 8)))))] (.call (.runtime .compare) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false))))]) (tail := (.matchOn (.move (.generated .holder 11)) [(.mk (.ordering .less) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 3)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.move (.generated .binding 2)), (.call (.function 2) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)])))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 9)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 10)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 8)), .wild]) none (.clone (.generated .binding 2)))] (.move (.generated .part 8)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false)) (Corr.prim (ts := [.string, .string]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 8)), .wild]) none (.clone (.generated .binding 2)))]) (tail := (.move (.generated .part 8))) (Corr.first (ta := .string) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list (.pair .string .nat)), (some 3)), (2, (.pair .string .nat), (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 0))) (Corr.mCons (Γ' := [(3, (.list (.pair .string .nat)), (some 3)), (2, (.pair .string .nat), (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.move (.generated .binding 3))) (Corr.mCons (Γ' := [(3, (.list (.pair .string .nat)), (some 3)), (2, (.pair .string .nat), (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.construct .cons [(.move (.generated .binding 2)), (.call (.function 2) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.pair .string .nat), (.list (.pair .string .nat))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .string .nat)), .string]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun3 : FunOK program krate flags 3 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 12)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 12)) [(.mk .none (.mk [] (.construct (.none .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 16)) none (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 15)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 13)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 13)))))] (.call (.runtime .compare) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false))))] (.matchOn (.move (.generated .holder 16)) [(.mk (.ordering .less) (.mk [] (.construct (.none .nat) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 17))]) none (.move (.generated .binding 2)))] (.move (.generated .part 17))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 3) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)))])))]), [(1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.pair .string .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none .nat) [])) (Corr.mCons (Γ' := [(3, (.list (.pair .string .nat)), (some 3)), (2, (.pair .string .nat), (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 16)) none (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 15)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 13)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 13)))))] (.call (.runtime .compare) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false))))]) (tail := (.matchOn (.move (.generated .holder 16)) [(.mk (.ordering .less) (.mk [] (.construct (.none .nat) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 17))]) none (.move (.generated .binding 2)))] (.move (.generated .part 17))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 3) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 14)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 15)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 13)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 13)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false)) (Corr.prim (ts := [.string, .string]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 13)), .wild]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 13))) (Corr.first (ta := .string) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list (.pair .string .nat)), (some 3)), (2, (.pair .string .nat), (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none .nat) [])) (Corr.mCons (Γ' := [(3, (.list (.pair .string .nat)), (some 3)), (2, (.pair .string .nat), (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 17))]) none (.move (.generated .binding 2)))] (.move (.generated .part 17))))])) (Corr.mCons (Γ' := [(3, (.list (.pair .string .nat)), (some 3)), (2, (.pair .string .nat), (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.call (.function 3) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list (.pair .string .nat)), .string]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 17))]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 17))) (Corr.second (ta := .string) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun4 : FunOK program krate flags 4 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 18)) none (.call (.function 5) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false))], (.matchOn (.move (.generated .holder 18)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some .wild) (.mk [] (.lit (.bool true))))]), [(1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .string .nat)), .string]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(2, .nat, none), (1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ + +theorem fun5 : FunOK program krate flags 5 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 19)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 19)) [(.mk .none (.mk [] (.construct (.none .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 23)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 20)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 20)))))] (.call (.runtime .compare) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.matchOn (.move (.generated .holder 23)) [(.mk (.ordering .less) (.mk [] (.construct (.none .nat) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 24))]) none (.move (.generated .binding 2)))] (.move (.generated .part 24))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 5) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)))])))]), [(1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.pair .string .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none .nat) [])) (Corr.mCons (Γ' := [(3, (.list (.pair .string .nat)), (some 3)), (2, (.pair .string .nat), (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 23)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 20)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 20)))))] (.call (.runtime .compare) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))]) (tail := (.matchOn (.move (.generated .holder 23)) [(.mk (.ordering .less) (.mk [] (.construct (.none .nat) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 24))]) none (.move (.generated .binding 2)))] (.move (.generated .part 24))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 5) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 21)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 20)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 20)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false)) (Corr.prim (ts := [.string, .string]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 20)), .wild]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 20))) (Corr.first (ta := .string) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list (.pair .string .nat)), (some 3)), (2, (.pair .string .nat), (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none .nat) [])) (Corr.mCons (Γ' := [(3, (.list (.pair .string .nat)), (some 3)), (2, (.pair .string .nat), (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 24))]) none (.move (.generated .binding 2)))] (.move (.generated .part 24))))])) (Corr.mCons (Γ' := [(3, (.list (.pair .string .nat)), (some 3)), (2, (.pair .string .nat), (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.call (.function 5) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list (.pair .string .nat)), .string]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 24))]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 24))) (Corr.second (ta := .string) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun6 : FunOK program krate flags 6 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 25)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 25)) [(.mk .none (.mk [] (.construct (.nil .str) []))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.construct .cons [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 26)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 26)))), (.call (.function 6) [(.move (.generated .binding 2))] false)])))]), [(0, (.list (.pair .string .nat)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.pair .string .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list (.pair .string .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.nil .str) [])) (Corr.mCons (Γ' := [(2, (.list (.pair .string .nat)), (some 2)), (1, (.pair .string .nat), (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct .cons [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 26)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 26)))), (.call (.function 6) [(.move (.generated .binding 2))] false)])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [.string, (.list .string)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 26)), .wild]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 26))) (Corr.first (ta := .string) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .string .nat))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun7 : FunOK program krate flags 7 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 27)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 27)) [(.mk .none (.mk [] (.construct (.nil .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.construct .cons [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 28))]) none (.move (.generated .binding 1)))] (.move (.generated .part 28)))), (.call (.function 7) [(.move (.generated .binding 2))] false)])))]), [(0, (.list (.pair .string .nat)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.pair .string .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list (.pair .string .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.nil .nat) [])) (Corr.mCons (Γ' := [(2, (.list (.pair .string .nat)), (some 2)), (1, (.pair .string .nat), (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct .cons [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 28))]) none (.move (.generated .binding 1)))] (.move (.generated .part 28)))), (.call (.function 7) [(.move (.generated .binding 2))] false)])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 28))]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 28))) (Corr.second (ta := .string) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .string .nat))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun8 : FunOK program krate flags 8 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 29)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 29)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 9) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 30))]) none (.move (.generated .binding 1)))] (.move (.generated .part 30))))] false) (.mk [(.mk (.bind (.generated .holder 31)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 31)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 36)) none (.block (.mk [(.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 32)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 32))))), (.mk (.bind (.generated .operand 35)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 33)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 33)))))] (.call (.runtime .compare) [(.move (.generated .operand 34)), (.move (.generated .operand 35))] false))))] (.cond (.matchOn (.move (.generated .holder 36)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 8) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]), [(0, (.list (.pair .string .nat)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.pair .string .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list (.pair .string .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, (.list (.pair .string .nat)), (some 2)), (1, (.pair .string .nat), (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 9) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 30))]) none (.move (.generated .binding 1)))] (.move (.generated .part 30))))] false) (.mk [(.mk (.bind (.generated .holder 31)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 31)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 36)) none (.block (.mk [(.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 32)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 32))))), (.mk (.bind (.generated .operand 35)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 33)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 33)))))] (.call (.runtime .compare) [(.move (.generated .operand 34)), (.move (.generated .operand 35))] false))))] (.cond (.matchOn (.move (.generated .holder 36)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 8) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 9) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 30))]) none (.move (.generated .binding 1)))] (.move (.generated .part 30))))] false)) (lk := []) (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 30))]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 30))) (Corr.second (ta := .string) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .holder 31)) none (.clone (.generated .binding 2)))]) (ta := (.matchOn (.uncons (.generated .holder 31)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 36)) none (.block (.mk [(.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 32)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 32))))), (.mk (.bind (.generated .operand 35)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 33)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 33)))))] (.call (.runtime .compare) [(.move (.generated .operand 34)), (.move (.generated .operand 35))] false))))] (.cond (.matchOn (.move (.generated .holder 36)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 8) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (lb := []) (tb := (.lit (.bool false))) (Corr.matchArms (st := (.list (.pair .string .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.pair .string .nat)), (some 2)), (1, (.pair .string .nat), (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair .string .nat)), none), (3, (.pair .string .nat), (some 3)), (2, (.list (.pair .string .nat)), (some 2)), (1, (.pair .string .nat), (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 36)) none (.block (.mk [(.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 32)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 32))))), (.mk (.bind (.generated .operand 35)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 33)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 33)))))] (.call (.runtime .compare) [(.move (.generated .operand 34)), (.move (.generated .operand 35))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 36)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 8) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .holder 36)) none (.block (.mk [(.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 32)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 32))))), (.mk (.bind (.generated .operand 35)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 33)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 33)))))] (.call (.runtime .compare) [(.move (.generated .operand 34)), (.move (.generated .operand 35))] false))))]) (ce := (.matchOn (.move (.generated .holder 36)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 32)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 32))))), (.mk (.bind (.generated .operand 35)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 33)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 33)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 34)), (.move (.generated .operand 35))] false)) (Corr.prim (ts := [.string, .string]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 32)), .wild]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 32))) (Corr.first (ta := .string) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 33)), .wild]) none (.move (.generated .binding 3)))]) (tail := (.move (.generated .part 33))) (Corr.first (ta := .string) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.list (.pair .string .nat)), none), (3, (.pair .string .nat), (some 3)), (2, (.list (.pair .string .nat)), (some 2)), (1, (.pair .string .nat), (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair .string .nat)), none), (3, (.pair .string .nat), (some 3)), (2, (.list (.pair .string .nat)), (some 2)), (1, (.pair .string .nat), (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, (.list (.pair .string .nat)), none), (3, (.pair .string .nat), (some 3)), (2, (.list (.pair .string .nat)), (some 2)), (1, (.pair .string .nat), (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 8) [(.move (.generated .binding 2))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.list (.pair .string .nat))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ + +theorem fun9 : FunOK program krate flags 9 := + ⟨_, rfl, .inl ⟨_, _, [], (.lit (.bool true)), [(0, .nat, none)], rfl, rfl, + (Corr.bOfE (Corr.buildConst rfl))⟩⟩ + +theorem fun10 : FunOK program krate flags 10 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 8) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 2))] false)])) (.mk [] (.construct (.none (.pair (.list (.pair .str .nat)) (.pair (.list (.pair .str .nat)) (.pair (.option .nat) (.pair .bool (.pair (.list .str) (.pair (.list .nat) (.pair .nat (.list (.pair .str .nat)))))))))) []))), [(2, .nat, (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 8) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.list (.pair .string .nat))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 2))] false)])) (lb := []) (tb := (.construct (.none (.pair (.list (.pair .str .nat)) (.pair (.list (.pair .str .nat)) (.pair (.option .nat) (.pair .bool (.pair (.list .str) (.pair (.list .nat) (.pair .nat (.list (.pair .str .nat)))))))))) [])) (Corr.build (ts := [(.pair (.list (.pair .string .nat)) (.pair (.list (.pair .string .nat)) (.pair (.option .nat) (.pair .bool (.pair (.list .string) (.pair (.list .nat) (.pair .nat (.list (.pair .string .nat)))))))))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .string .nat)), .string, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | 3 => exact fun3 + | 4 => exact fun4 + | 5 => exact fun5 + | 6 => exact fun6 + | 7 => exact fun7 + | 8 => exact fun8 + | 9 => exact fun9 + | 10 => exact fun10 + | _ + 11 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R10.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R10.lean similarity index 98% rename from examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R10.lean rename to examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R10.lean index f50b9f39f..ee038aac0 100644 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R10.lean +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R10.lean @@ -18,7 +18,7 @@ set_option maxRecDepth 100000 set_option maxHeartbeats 0 set_option synthInstance.maxHeartbeats 0 set_option linter.unusedVariables false -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10 def __prog : _root_.LexLeanTarget.TargetSyntax.Program := { adts := [], functions := [ @@ -37,4 +37,4 @@ def denote (a : Nat) (b : Nat) : _root_.LexLeanPreservation.Obs := theorem root (a : Nat) (b : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat a), (_root_.LexLeanTarget.TargetSyntax.Value.nat b)] (_root_.LexLeanPreservation.Rel (__fits_0 a b) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Coverage.Main.natOps a b))) := _root_.LexLeanPreservation.run_of_funRel (__rel_0 a b) -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10 +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10 diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R10/Compose/RustCore.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R10/Compose/RustCore.lex.tex new file mode 100644 index 000000000..e5d716729 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R10/Compose/RustCore.lex.tex @@ -0,0 +1,462 @@ +\begin{lexlean}{RustCore} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.Compose.RustCore} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.RustCore, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.Compose.RustCore.root : @914 := @915 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.Compose.RustCore.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.RustCore.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.RustCore.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.RustCore.flags +@3 := Nat +@4 := #2 +@5 := LexLeanTarget.TargetSyntax.Value.nat +@6 := @5 @4 +@7 := LexLeanTarget.TargetSyntax.Ty.nat +@8 := LexLeanTarget.TargetSyntax.Program +@9 := LexLeanPreservation.Rust.RCrate +@10 := LexLeanPreservation.Rust.Flags +@11 := LexLeanPreservation.Rust.WT +@12 := #3 +@14 := @11 @12 @4 +@15 := #1 +@16 := @14 @15 +@17 := #0 +@18 := @5 @17 +@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 +@26 := LexLeanPreservation.Rust.wt_nat @0 +@27 := @11 @0 +@34 := {c : @9} -> {A : @10} -> (n : @3) -> @27 @4 @15 @18 @7 +@35 := @26 @1 +@36 := @27 @1 +@41 := {A : @10} -> (n : @3) -> @36 @15 @18 @7 +@42 := @35 @2 +@43 := @36 @2 +@46 := (n : @3) -> @43 @18 @7 +@47 := @42 @4 +@49 := @43 @6 @7 +@50 := @5 @15 +@51 := @42 @15 +@53 := @43 @50 @7 +@54 := LexLeanTarget.TargetSyntax.Value +@55 := List.nil.{0} +@56 := List.cons.{0} +@57 := @55 @54 +@58 := @56 @54 +@59 := @58 @50 +@60 := @59 @57 +@61 := @58 @6 +@62 := @61 @60 +@65 := Prod.{0, 0} @3 @54 +@66 := 1 +@69 := Prod.mk.{0, 0} @3 @54 +@70 := @69 @66 +@71 := @70 @50 +@72 := 0 +@73 := @69 @72 +@74 := @73 @6 +@75 := @55 @65 +@76 := @56 @65 +@78 := @76 @74 @75 +@80 := @76 @71 @78 +@81 := Bool.true +@82 := LexLeanTarget.TargetSyntax.Function +@83 := LexLeanTarget.TargetSyntax.Program.functions +@84 := @83 @0 +@85 := LexLeanTarget.TargetSyntax.Ty +@86 := @55 @3 +@87 := @55 @85 +@88 := LexLeanTarget.TargetSyntax.Ty.unit +@89 := LexLeanTarget.TargetSyntax.Value.unit +@92 := LexLeanTarget.TargetSyntax.Expr.value @88 @89 +@97 := LexLeanTarget.TargetSyntax.Function.mk @86 @87 @88 @92 +@102 := List.getD.{0} @82 @84 @72 @97 +@106 := fun (__e_n : @3) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.RustCore.root @17 @72 +@107 := LexLeanPreservation.Rust.WTL +@115 := {p : @8} -> {c : @9} -> {A : @10} -> @107 @4 @15 @17 @57 @87 +@117 := LexLeanPreservation.Rust.wtl_nil @0 +@118 := @107 @0 +@124 := {c : @9} -> {A : @10} -> @118 @15 @17 @57 @87 +@125 := @117 @1 +@126 := @118 @1 +@130 := {A : @10} -> @126 @17 @57 @87 +@131 := @125 @2 +@132 := @126 @2 +@133 := @132 @57 +@134 := @133 @87 +@135 := List.{0} +@136 := @135 @54 +@137 := @135 @85 +@138 := #6 +@139 := @11 @138 +@140 := #5 +@141 := @139 @140 +@142 := #4 +@145 := @141 @142 @12 @4 +@146 := #7 +@151 := @107 @146 @138 @140 @4 @15 +@152 := #8 +@155 := @107 @152 @146 @138 +@157 := @58 @140 @12 +@158 := @155 @157 +@159 := @56 @85 +@161 := @159 @142 @4 +@171 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {v : @54} -> {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @145) -> (hs : @151) -> @158 @161 +@173 := LexLeanPreservation.Rust.wtl_cons @0 +@193 := {c : @9} -> + {A : @10} -> + {v : @54} -> + {t : @85} -> + {vs : @136} -> + {ts : @137} -> + (h : @27 @140 @142 @12 @4) -> (hs : @118 @138 @140 @4 @15) -> @118 @146 @138 @157 @161 +@194 := @173 @1 +@210 := {A : @10} -> + {v : @54} -> + {t : @85} -> + {vs : @136} -> + {ts : @137} -> (h : @36 @142 @12 @4) -> (hs : @126 @140 @4 @15) -> @126 @138 @157 @161 +@211 := @194 @2 +@213 := @43 @12 @4 +@215 := @132 @4 @15 +@223 := {v : @54} -> + {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @213) -> (hs : @215) -> @132 @157 @161 +@224 := @211 @50 +@225 := @5 @142 +@226 := @43 @225 +@227 := @226 @4 +@228 := @5 @138 +@229 := @58 @228 +@231 := @132 (@229 @12) +@237 := {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @227) -> (hs : @215) -> @231 @161 +@238 := @224 @7 +@239 := @5 @12 +@241 := @43 @239 @7 +@242 := @5 @140 +@243 := @58 @242 +@245 := @132 (@243 @12) +@246 := @159 @7 +@247 := @246 @4 +@252 := {vs : @136} -> {ts : @137} -> (h : @241) -> (hs : @215) -> @245 @247 +@253 := @238 @57 +@254 := @133 @15 +@255 := @58 @225 +@256 := @255 @57 +@261 := {ts : @137} -> (h : @49) -> (hs : @254) -> @132 @256 @247 +@262 := @253 @87 +@263 := @58 @239 +@264 := @263 @57 +@265 := @132 @264 +@266 := @246 @87 +@269 := (h : @53) -> (hs : @134) -> @265 @266 +@270 := @262 @51 +@271 := @61 @57 +@273 := @132 @271 @266 +@274 := (hs : @134) -> @273 +@275 := @270 @131 +@277 := @132 @60 @266 +@278 := @211 @6 +@280 := @43 @242 @4 +@281 := @5 @146 +@282 := @58 @281 +@290 := {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @280) -> (hs : @215) -> @132 (@282 @12) @161 +@291 := @278 @7 +@297 := {vs : @136} -> {ts : @137} -> (h : @226 @7) -> (hs : @215) -> @231 @247 +@298 := @291 @60 +@299 := @265 @15 +@300 := @243 @256 +@301 := @132 @300 +@305 := {ts : @137} -> (h : @241) -> (hs : @299) -> @301 @247 +@306 := @298 @266 +@307 := @255 @264 +@308 := @132 @307 +@309 := @246 @266 +@312 := (h : @49) -> (hs : @273) -> @308 @309 +@313 := @306 @47 +@314 := @263 @271 +@315 := @132 @314 +@317 := (hs : @277) -> @315 @309 +@318 := @313 @275 +@319 := @132 @62 +@320 := @319 @309 +@321 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.denote +@323 := @321 @4 @15 +@324 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.__fits_0 +@326 := @324 @4 @15 +@330 := @5 (Coverage.Main.natOps @4 @15) +@333 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.root @4 @15 +@334 := Bool +@335 := Ne.{1} +@336 := LexLeanPreservation.Obs +@337 := @335 @336 +@338 := LexLeanPreservation.Rel +@341 := @337 (@338 @15 @17) +@342 := LexLeanPreservation.Obs.stuck +@345 := (f : @334) -> (v : @54) -> @341 @342 +@347 := LexLeanPreservation.Rust.rel_ne_stuck @326 +@354 := (v : @54) -> @337 (@338 (@324 @12 @4) @17) @342 +@355 := @347 @330 +@359 := @337 (@338 @326 @330) @342 +@360 := @135 @65 +@361 := LexLeanPreservation.Rust.FunSem +@362 := #9 +@368 := (n : @3) -> @361 @362 @152 @146 @17 @138 +@369 := Eq.{1} +@370 := Option.{0} +@371 := @370 @82 +@372 := @369 @371 +@379 := LexLeanRuntime.index (@135 @82) @82 (LexLeanRuntime.instIndexableList @82) +@383 := @372 (@379 (@83 @362) @138) +@384 := Option.some.{0} +@385 := @384 @82 +@386 := @385 @140 +@387 := @383 @386 +@388 := #10 +@392 := @107 @388 @362 @152 @140 +@393 := LexLeanTarget.TargetSyntax.Function.types +@394 := @393 @138 +@395 := @392 @394 +@396 := @370 @360 +@397 := @369 @396 +@398 := LexLeanTarget.TargetSemantics.bindAll +@399 := LexLeanTarget.TargetSyntax.Function.parameters +@404 := @397 (@398 (@399 @146) @138 @75) +@405 := @384 @360 +@406 := @405 @140 +@407 := @404 @406 +@408 := @370 @334 +@409 := @369 @408 +@410 := LexLeanPreservation.Rust.fnFallible +@411 := #11 +@414 := @409 (@410 @411 @362) +@415 := @384 @334 +@416 := @415 @140 +@417 := @414 @416 +@418 := LexLeanPreservation.RunConv +@419 := #13 +@423 := @418 @419 @388 @152 @140 +@425 := @337 @138 @342 +@426 := Exists.{1} +@427 := LexLeanPreservation.Rust.ROut +@428 := @426 @427 +@429 := And +@430 := LexLeanPreservation.Rust.RealizesFn +@434 := @429 (@430 @362 @152 @17) +@435 := LexLeanPreservation.Rust.RCI +@437 := @435 #15 +@438 := LexLeanPreservation.Rust.fnIdent +@439 := @438 @419 +@446 := (hne : @425) -> @428 (fun (ro : @427) => @434 (@437 @439 @411 @17)) +@461 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {f : @3} -> + {fn : @82} -> + {args : @136} -> + {env : @360} -> + {F : @334} -> + {o : @336} -> + (hB : @368) -> + (hfn : @387) -> (hwt : @395) -> (hbind : @407) -> (hF : @417) -> (hA : @423) -> @446 +@463 := LexLeanPreservation.Rust.compose @0 +@464 := @361 @0 +@469 := (n : @3) -> @464 @152 @146 @17 @138 +@470 := @379 @84 +@473 := @372 (@470 @138) @386 +@477 := @118 @362 @152 @140 @394 +@478 := @418 @0 +@481 := @478 @388 @152 @140 +@495 := {c : @9} -> + {A : @10} -> + {f : @3} -> + {fn : @82} -> + {args : @136} -> + {env : @360} -> + {F : @334} -> + {o : @336} -> + (hB : @469) -> + (hfn : @473) -> (hwt : @477) -> (hbind : @407) -> (hF : @417) -> (hA : @481) -> @446 +@496 := @463 @1 +@497 := @464 @1 +@501 := (n : @3) -> @497 @146 @17 @138 +@504 := @126 @152 @140 @394 +@505 := @410 @1 +@508 := @409 (@505 @362) @416 +@509 := @435 @1 +@519 := (hbind : @407) -> + (hF : @508) -> (hA : @481) -> (hne : @425) -> @428 (fun (ro : @427) => @434 (@509 @439 @411 @17)) +@529 := {A : @10} -> + {f : @3} -> + {fn : @82} -> + {args : @136} -> + {env : @360} -> {F : @334} -> {o : @336} -> (hB : @501) -> (hfn : @473) -> (hwt : @504) -> @519 +@530 := @496 @2 +@532 := @497 @2 @17 +@534 := (n : @3) -> @532 @138 +@535 := @132 @140 +@536 := @535 @394 +@545 := {f : @3} -> + {fn : @82} -> + {args : @136} -> + {env : @360} -> {F : @334} -> {o : @336} -> (hB : @534) -> (hfn : @473) -> (hwt : @536) -> @519 +@546 := @530 @72 +@548 := (n : @3) -> @532 @72 +@549 := @470 @72 +@550 := @372 @549 +@551 := @550 @386 +@552 := @505 @72 +@553 := @409 @552 +@554 := @553 @416 +@555 := @478 @72 +@557 := @555 @152 @140 +@559 := @509 (@438 @72) +@567 := (hF : @554) -> (hA : @557) -> (hne : @425) -> @428 (fun (ro : @427) => @434 (@559 @411 @17)) +@576 := {fn : @82} -> + {args : @136} -> + {env : @360} -> + {F : @334} -> {o : @336} -> (hB : @548) -> (hfn : @551) -> (hwt : @536) -> (hbind : @407) -> @567 +@577 := @546 @102 +@579 := @550 (@385 @102) +@580 := @393 @102 +@581 := @535 @580 +@583 := @398 (@399 @102) +@595 := {args : @136} -> + {env : @360} -> + {F : @334} -> + {o : @336} -> + (hB : @548) -> (hfn : @579) -> (hwt : @581) -> (hbind : @397 (@583 @138 @75) @406) -> @567 +@596 := @577 @62 +@598 := @282 (@229 @57) +@600 := @132 @598 @580 +@602 := @58 (@5 @152) +@604 := @602 (@282 @57) +@608 := @397 (@583 @604 @75) @406 +@610 := @58 (@5 @388) +@612 := @58 (@5 @362) +@614 := @610 (@612 @57) +@616 := @555 @614 @140 +@618 := @58 (@5 @419) +@621 := @58 (@5 #12) +@638 := {env : @360} -> + {F : @334} -> + {o : @336} -> + (hB : @548) -> + (hfn : @579) -> + (hwt : @600) -> + (hbind : @608) -> + (hF : @554) -> + (hA : @616) -> (hne : @425) -> @428 (fun (ro : @427) => @434 (@559 (@618 (@621 @57)) @17)) +@639 := @596 @80 +@641 := @229 (@243 @57) +@643 := @132 @641 @580 +@654 := @397 (@583 @598 @75) (@405 (@76 (@70 @228) (@76 (@73 @281) @75))) +@656 := @612 (@602 @57) +@658 := @555 @656 @140 +@660 := @58 (@5 @411) +@676 := {F : @334} -> + {o : @336} -> + (hB : @548) -> + (hfn : @579) -> + (hwt : @643) -> + (hbind : @654) -> + (hF : @554) -> + (hA : @658) -> (hne : @425) -> @428 (fun (ro : @427) => @434 (@559 (@621 (@660 @57)) @17)) +@677 := @639 @81 +@678 := @301 @580 +@689 := @397 (@583 @641 @75) (@405 (@76 (@70 @242) (@76 (@73 @228) @75))) +@691 := @553 (@415 @81) +@693 := @555 @604 @140 +@694 := @430 @81 +@712 := {o : @336} -> + (hB : @548) -> + (hfn : @579) -> + (hwt : @678) -> + (hbind : @689) -> + (hF : @691) -> + (hA : @693) -> + (hne : @425) -> @428 (fun (ro : @427) => @429 (@694 @152 @17) (@559 (@660 (@610 @57)) @17)) +@713 := @677 @323 +@714 := @308 @580 +@725 := @397 (@583 @300 @75) (@405 (@76 (@70 @225) (@76 (@73 @242) @75))) +@726 := @555 @598 +@728 := @321 @146 @138 +@729 := @726 @728 +@731 := @321 @152 @146 +@750 := (hB : @548) -> + (hfn : @579) -> + (hwt : @714) -> + (hbind : @725) -> + (hF : @691) -> + (hA : @729) -> + (hne : @337 @731 @342) -> + @428 (fun (ro : @427) => @429 (@694 (@321 @388 @362) @17) (@559 @614 @17)) +@751 := @713 @106 +@752 := @315 @580 +@763 := @397 (@583 @307 @75) (@405 (@76 (@70 @239) (@76 (@73 @225) @75))) +@764 := @555 @641 +@766 := @321 @138 @140 +@785 := (hfn : @579) -> + (hwt : @752) -> + (hbind : @763) -> + (hF : @691) -> + (hA : @764 @766) -> + (hne : @337 @728 @342) -> + @428 (fun (ro : @427) => @429 (@694 (@321 @362 @152) @17) (@559 @656 @17)) +@786 := Eq.refl.{1} +@789 := @751 (@786 @371 @549) +@790 := @319 @580 +@801 := @397 (@583 @314 @75) (@405 (@76 (@70 @6) (@76 (@73 @239) @75))) +@802 := @555 @300 +@804 := @321 @140 @142 +@820 := (hwt : @790) -> + (hbind : @801) -> + (hF : @691) -> + (hA : @802 @804) -> + (hne : @337 @766 @342) -> @428 (fun (ro : @427) => @429 (@694 @731 @17) (@559 @604 @17)) +@821 := @789 @318 +@823 := @583 @62 @75 +@826 := @397 @823 (@405 @80) +@827 := @555 @307 +@829 := @321 @142 @12 +@844 := (hbind : @826) -> + (hF : @691) -> + (hA : @827 @829) -> + (hne : @337 @804 @342) -> @428 (fun (ro : @427) => @429 (@694 @728 @17) (@559 @598 @17)) +@847 := @821 (@786 @396 @823) +@848 := @555 @314 +@850 := @321 @12 @4 +@864 := (hF : @691) -> + (hA : @848 @850) -> + (hne : @337 @829 @342) -> @428 (fun (ro : @427) => @429 (@694 @766 @17) (@559 @641 @17)) +@867 := @847 (@786 @408 @552) +@881 := (hA : @555 @62 @323) -> + (hne : @337 @850 @342) -> @428 (fun (ro : @427) => @429 (@694 @804 @17) (@559 @300 @17)) +@882 := @867 @333 +@893 := (hne : @337 @323 @342) -> @428 (fun (ro : @427) => @429 (@694 @829 @17) (@559 @307 @17)) +@894 := @882 @355 +@900 := @429 (@694 @850 @17) (@559 @314 @17) +@902 := @428 (fun (ro : @427) => @900) +@904 := @428 (fun (__e_ro : @427) => @900) +@909 := LexLeanPreservation.Rust.RepresentableL (@59 (@58 @18 @57)) +@910 := (__e_hrep : @909) -> @904 +@911 := fun (__e_hrep : @909) => @894 +@912 := (b : @3) -> @910 +@913 := fun (b : @3) => @911 +@914 := (a : @3) -> @912 +@915 := fun (a : @3) => @913 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R10/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R10/Compose/RustStd.lex.tex new file mode 100644 index 000000000..a0fb990b0 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R10/Compose/RustStd.lex.tex @@ -0,0 +1,462 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.Compose.RustStd.root : @914 := @915 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.RustStd.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.RustStd.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.RustStd.flags +@3 := Nat +@4 := #2 +@5 := LexLeanTarget.TargetSyntax.Value.nat +@6 := @5 @4 +@7 := LexLeanTarget.TargetSyntax.Ty.nat +@8 := LexLeanTarget.TargetSyntax.Program +@9 := LexLeanPreservation.Rust.RCrate +@10 := LexLeanPreservation.Rust.Flags +@11 := LexLeanPreservation.Rust.WT +@12 := #3 +@14 := @11 @12 @4 +@15 := #1 +@16 := @14 @15 +@17 := #0 +@18 := @5 @17 +@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 +@26 := LexLeanPreservation.Rust.wt_nat @0 +@27 := @11 @0 +@34 := {c : @9} -> {A : @10} -> (n : @3) -> @27 @4 @15 @18 @7 +@35 := @26 @1 +@36 := @27 @1 +@41 := {A : @10} -> (n : @3) -> @36 @15 @18 @7 +@42 := @35 @2 +@43 := @36 @2 +@46 := (n : @3) -> @43 @18 @7 +@47 := @42 @4 +@49 := @43 @6 @7 +@50 := @5 @15 +@51 := @42 @15 +@53 := @43 @50 @7 +@54 := LexLeanTarget.TargetSyntax.Value +@55 := List.nil.{0} +@56 := List.cons.{0} +@57 := @55 @54 +@58 := @56 @54 +@59 := @58 @50 +@60 := @59 @57 +@61 := @58 @6 +@62 := @61 @60 +@65 := Prod.{0, 0} @3 @54 +@66 := 1 +@69 := Prod.mk.{0, 0} @3 @54 +@70 := @69 @66 +@71 := @70 @50 +@72 := 0 +@73 := @69 @72 +@74 := @73 @6 +@75 := @55 @65 +@76 := @56 @65 +@78 := @76 @74 @75 +@80 := @76 @71 @78 +@81 := Bool.true +@82 := LexLeanTarget.TargetSyntax.Function +@83 := LexLeanTarget.TargetSyntax.Program.functions +@84 := @83 @0 +@85 := LexLeanTarget.TargetSyntax.Ty +@86 := @55 @3 +@87 := @55 @85 +@88 := LexLeanTarget.TargetSyntax.Ty.unit +@89 := LexLeanTarget.TargetSyntax.Value.unit +@92 := LexLeanTarget.TargetSyntax.Expr.value @88 @89 +@97 := LexLeanTarget.TargetSyntax.Function.mk @86 @87 @88 @92 +@102 := List.getD.{0} @82 @84 @72 @97 +@106 := fun (__e_n : @3) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.RustStd.root @17 @72 +@107 := LexLeanPreservation.Rust.WTL +@115 := {p : @8} -> {c : @9} -> {A : @10} -> @107 @4 @15 @17 @57 @87 +@117 := LexLeanPreservation.Rust.wtl_nil @0 +@118 := @107 @0 +@124 := {c : @9} -> {A : @10} -> @118 @15 @17 @57 @87 +@125 := @117 @1 +@126 := @118 @1 +@130 := {A : @10} -> @126 @17 @57 @87 +@131 := @125 @2 +@132 := @126 @2 +@133 := @132 @57 +@134 := @133 @87 +@135 := List.{0} +@136 := @135 @54 +@137 := @135 @85 +@138 := #6 +@139 := @11 @138 +@140 := #5 +@141 := @139 @140 +@142 := #4 +@145 := @141 @142 @12 @4 +@146 := #7 +@151 := @107 @146 @138 @140 @4 @15 +@152 := #8 +@155 := @107 @152 @146 @138 +@157 := @58 @140 @12 +@158 := @155 @157 +@159 := @56 @85 +@161 := @159 @142 @4 +@171 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {v : @54} -> {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @145) -> (hs : @151) -> @158 @161 +@173 := LexLeanPreservation.Rust.wtl_cons @0 +@193 := {c : @9} -> + {A : @10} -> + {v : @54} -> + {t : @85} -> + {vs : @136} -> + {ts : @137} -> + (h : @27 @140 @142 @12 @4) -> (hs : @118 @138 @140 @4 @15) -> @118 @146 @138 @157 @161 +@194 := @173 @1 +@210 := {A : @10} -> + {v : @54} -> + {t : @85} -> + {vs : @136} -> + {ts : @137} -> (h : @36 @142 @12 @4) -> (hs : @126 @140 @4 @15) -> @126 @138 @157 @161 +@211 := @194 @2 +@213 := @43 @12 @4 +@215 := @132 @4 @15 +@223 := {v : @54} -> + {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @213) -> (hs : @215) -> @132 @157 @161 +@224 := @211 @50 +@225 := @5 @142 +@226 := @43 @225 +@227 := @226 @4 +@228 := @5 @138 +@229 := @58 @228 +@231 := @132 (@229 @12) +@237 := {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @227) -> (hs : @215) -> @231 @161 +@238 := @224 @7 +@239 := @5 @12 +@241 := @43 @239 @7 +@242 := @5 @140 +@243 := @58 @242 +@245 := @132 (@243 @12) +@246 := @159 @7 +@247 := @246 @4 +@252 := {vs : @136} -> {ts : @137} -> (h : @241) -> (hs : @215) -> @245 @247 +@253 := @238 @57 +@254 := @133 @15 +@255 := @58 @225 +@256 := @255 @57 +@261 := {ts : @137} -> (h : @49) -> (hs : @254) -> @132 @256 @247 +@262 := @253 @87 +@263 := @58 @239 +@264 := @263 @57 +@265 := @132 @264 +@266 := @246 @87 +@269 := (h : @53) -> (hs : @134) -> @265 @266 +@270 := @262 @51 +@271 := @61 @57 +@273 := @132 @271 @266 +@274 := (hs : @134) -> @273 +@275 := @270 @131 +@277 := @132 @60 @266 +@278 := @211 @6 +@280 := @43 @242 @4 +@281 := @5 @146 +@282 := @58 @281 +@290 := {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @280) -> (hs : @215) -> @132 (@282 @12) @161 +@291 := @278 @7 +@297 := {vs : @136} -> {ts : @137} -> (h : @226 @7) -> (hs : @215) -> @231 @247 +@298 := @291 @60 +@299 := @265 @15 +@300 := @243 @256 +@301 := @132 @300 +@305 := {ts : @137} -> (h : @241) -> (hs : @299) -> @301 @247 +@306 := @298 @266 +@307 := @255 @264 +@308 := @132 @307 +@309 := @246 @266 +@312 := (h : @49) -> (hs : @273) -> @308 @309 +@313 := @306 @47 +@314 := @263 @271 +@315 := @132 @314 +@317 := (hs : @277) -> @315 @309 +@318 := @313 @275 +@319 := @132 @62 +@320 := @319 @309 +@321 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.denote +@323 := @321 @4 @15 +@324 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.__fits_0 +@326 := @324 @4 @15 +@330 := @5 (Coverage.Main.natOps @4 @15) +@333 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.root @4 @15 +@334 := Bool +@335 := Ne.{1} +@336 := LexLeanPreservation.Obs +@337 := @335 @336 +@338 := LexLeanPreservation.Rel +@341 := @337 (@338 @15 @17) +@342 := LexLeanPreservation.Obs.stuck +@345 := (f : @334) -> (v : @54) -> @341 @342 +@347 := LexLeanPreservation.Rust.rel_ne_stuck @326 +@354 := (v : @54) -> @337 (@338 (@324 @12 @4) @17) @342 +@355 := @347 @330 +@359 := @337 (@338 @326 @330) @342 +@360 := @135 @65 +@361 := LexLeanPreservation.Rust.FunSem +@362 := #9 +@368 := (n : @3) -> @361 @362 @152 @146 @17 @138 +@369 := Eq.{1} +@370 := Option.{0} +@371 := @370 @82 +@372 := @369 @371 +@379 := LexLeanRuntime.index (@135 @82) @82 (LexLeanRuntime.instIndexableList @82) +@383 := @372 (@379 (@83 @362) @138) +@384 := Option.some.{0} +@385 := @384 @82 +@386 := @385 @140 +@387 := @383 @386 +@388 := #10 +@392 := @107 @388 @362 @152 @140 +@393 := LexLeanTarget.TargetSyntax.Function.types +@394 := @393 @138 +@395 := @392 @394 +@396 := @370 @360 +@397 := @369 @396 +@398 := LexLeanTarget.TargetSemantics.bindAll +@399 := LexLeanTarget.TargetSyntax.Function.parameters +@404 := @397 (@398 (@399 @146) @138 @75) +@405 := @384 @360 +@406 := @405 @140 +@407 := @404 @406 +@408 := @370 @334 +@409 := @369 @408 +@410 := LexLeanPreservation.Rust.fnFallible +@411 := #11 +@414 := @409 (@410 @411 @362) +@415 := @384 @334 +@416 := @415 @140 +@417 := @414 @416 +@418 := LexLeanPreservation.RunConv +@419 := #13 +@423 := @418 @419 @388 @152 @140 +@425 := @337 @138 @342 +@426 := Exists.{1} +@427 := LexLeanPreservation.Rust.ROut +@428 := @426 @427 +@429 := And +@430 := LexLeanPreservation.Rust.RealizesFn +@434 := @429 (@430 @362 @152 @17) +@435 := LexLeanPreservation.Rust.RCI +@437 := @435 #15 +@438 := LexLeanPreservation.Rust.fnIdent +@439 := @438 @419 +@446 := (hne : @425) -> @428 (fun (ro : @427) => @434 (@437 @439 @411 @17)) +@461 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {f : @3} -> + {fn : @82} -> + {args : @136} -> + {env : @360} -> + {F : @334} -> + {o : @336} -> + (hB : @368) -> + (hfn : @387) -> (hwt : @395) -> (hbind : @407) -> (hF : @417) -> (hA : @423) -> @446 +@463 := LexLeanPreservation.Rust.compose @0 +@464 := @361 @0 +@469 := (n : @3) -> @464 @152 @146 @17 @138 +@470 := @379 @84 +@473 := @372 (@470 @138) @386 +@477 := @118 @362 @152 @140 @394 +@478 := @418 @0 +@481 := @478 @388 @152 @140 +@495 := {c : @9} -> + {A : @10} -> + {f : @3} -> + {fn : @82} -> + {args : @136} -> + {env : @360} -> + {F : @334} -> + {o : @336} -> + (hB : @469) -> + (hfn : @473) -> (hwt : @477) -> (hbind : @407) -> (hF : @417) -> (hA : @481) -> @446 +@496 := @463 @1 +@497 := @464 @1 +@501 := (n : @3) -> @497 @146 @17 @138 +@504 := @126 @152 @140 @394 +@505 := @410 @1 +@508 := @409 (@505 @362) @416 +@509 := @435 @1 +@519 := (hbind : @407) -> + (hF : @508) -> (hA : @481) -> (hne : @425) -> @428 (fun (ro : @427) => @434 (@509 @439 @411 @17)) +@529 := {A : @10} -> + {f : @3} -> + {fn : @82} -> + {args : @136} -> + {env : @360} -> {F : @334} -> {o : @336} -> (hB : @501) -> (hfn : @473) -> (hwt : @504) -> @519 +@530 := @496 @2 +@532 := @497 @2 @17 +@534 := (n : @3) -> @532 @138 +@535 := @132 @140 +@536 := @535 @394 +@545 := {f : @3} -> + {fn : @82} -> + {args : @136} -> + {env : @360} -> {F : @334} -> {o : @336} -> (hB : @534) -> (hfn : @473) -> (hwt : @536) -> @519 +@546 := @530 @72 +@548 := (n : @3) -> @532 @72 +@549 := @470 @72 +@550 := @372 @549 +@551 := @550 @386 +@552 := @505 @72 +@553 := @409 @552 +@554 := @553 @416 +@555 := @478 @72 +@557 := @555 @152 @140 +@559 := @509 (@438 @72) +@567 := (hF : @554) -> (hA : @557) -> (hne : @425) -> @428 (fun (ro : @427) => @434 (@559 @411 @17)) +@576 := {fn : @82} -> + {args : @136} -> + {env : @360} -> + {F : @334} -> {o : @336} -> (hB : @548) -> (hfn : @551) -> (hwt : @536) -> (hbind : @407) -> @567 +@577 := @546 @102 +@579 := @550 (@385 @102) +@580 := @393 @102 +@581 := @535 @580 +@583 := @398 (@399 @102) +@595 := {args : @136} -> + {env : @360} -> + {F : @334} -> + {o : @336} -> + (hB : @548) -> (hfn : @579) -> (hwt : @581) -> (hbind : @397 (@583 @138 @75) @406) -> @567 +@596 := @577 @62 +@598 := @282 (@229 @57) +@600 := @132 @598 @580 +@602 := @58 (@5 @152) +@604 := @602 (@282 @57) +@608 := @397 (@583 @604 @75) @406 +@610 := @58 (@5 @388) +@612 := @58 (@5 @362) +@614 := @610 (@612 @57) +@616 := @555 @614 @140 +@618 := @58 (@5 @419) +@621 := @58 (@5 #12) +@638 := {env : @360} -> + {F : @334} -> + {o : @336} -> + (hB : @548) -> + (hfn : @579) -> + (hwt : @600) -> + (hbind : @608) -> + (hF : @554) -> + (hA : @616) -> (hne : @425) -> @428 (fun (ro : @427) => @434 (@559 (@618 (@621 @57)) @17)) +@639 := @596 @80 +@641 := @229 (@243 @57) +@643 := @132 @641 @580 +@654 := @397 (@583 @598 @75) (@405 (@76 (@70 @228) (@76 (@73 @281) @75))) +@656 := @612 (@602 @57) +@658 := @555 @656 @140 +@660 := @58 (@5 @411) +@676 := {F : @334} -> + {o : @336} -> + (hB : @548) -> + (hfn : @579) -> + (hwt : @643) -> + (hbind : @654) -> + (hF : @554) -> + (hA : @658) -> (hne : @425) -> @428 (fun (ro : @427) => @434 (@559 (@621 (@660 @57)) @17)) +@677 := @639 @81 +@678 := @301 @580 +@689 := @397 (@583 @641 @75) (@405 (@76 (@70 @242) (@76 (@73 @228) @75))) +@691 := @553 (@415 @81) +@693 := @555 @604 @140 +@694 := @430 @81 +@712 := {o : @336} -> + (hB : @548) -> + (hfn : @579) -> + (hwt : @678) -> + (hbind : @689) -> + (hF : @691) -> + (hA : @693) -> + (hne : @425) -> @428 (fun (ro : @427) => @429 (@694 @152 @17) (@559 (@660 (@610 @57)) @17)) +@713 := @677 @323 +@714 := @308 @580 +@725 := @397 (@583 @300 @75) (@405 (@76 (@70 @225) (@76 (@73 @242) @75))) +@726 := @555 @598 +@728 := @321 @146 @138 +@729 := @726 @728 +@731 := @321 @152 @146 +@750 := (hB : @548) -> + (hfn : @579) -> + (hwt : @714) -> + (hbind : @725) -> + (hF : @691) -> + (hA : @729) -> + (hne : @337 @731 @342) -> + @428 (fun (ro : @427) => @429 (@694 (@321 @388 @362) @17) (@559 @614 @17)) +@751 := @713 @106 +@752 := @315 @580 +@763 := @397 (@583 @307 @75) (@405 (@76 (@70 @239) (@76 (@73 @225) @75))) +@764 := @555 @641 +@766 := @321 @138 @140 +@785 := (hfn : @579) -> + (hwt : @752) -> + (hbind : @763) -> + (hF : @691) -> + (hA : @764 @766) -> + (hne : @337 @728 @342) -> + @428 (fun (ro : @427) => @429 (@694 (@321 @362 @152) @17) (@559 @656 @17)) +@786 := Eq.refl.{1} +@789 := @751 (@786 @371 @549) +@790 := @319 @580 +@801 := @397 (@583 @314 @75) (@405 (@76 (@70 @6) (@76 (@73 @239) @75))) +@802 := @555 @300 +@804 := @321 @140 @142 +@820 := (hwt : @790) -> + (hbind : @801) -> + (hF : @691) -> + (hA : @802 @804) -> + (hne : @337 @766 @342) -> @428 (fun (ro : @427) => @429 (@694 @731 @17) (@559 @604 @17)) +@821 := @789 @318 +@823 := @583 @62 @75 +@826 := @397 @823 (@405 @80) +@827 := @555 @307 +@829 := @321 @142 @12 +@844 := (hbind : @826) -> + (hF : @691) -> + (hA : @827 @829) -> + (hne : @337 @804 @342) -> @428 (fun (ro : @427) => @429 (@694 @728 @17) (@559 @598 @17)) +@847 := @821 (@786 @396 @823) +@848 := @555 @314 +@850 := @321 @12 @4 +@864 := (hF : @691) -> + (hA : @848 @850) -> + (hne : @337 @829 @342) -> @428 (fun (ro : @427) => @429 (@694 @766 @17) (@559 @641 @17)) +@867 := @847 (@786 @408 @552) +@881 := (hA : @555 @62 @323) -> + (hne : @337 @850 @342) -> @428 (fun (ro : @427) => @429 (@694 @804 @17) (@559 @300 @17)) +@882 := @867 @333 +@893 := (hne : @337 @323 @342) -> @428 (fun (ro : @427) => @429 (@694 @829 @17) (@559 @307 @17)) +@894 := @882 @355 +@900 := @429 (@694 @850 @17) (@559 @314 @17) +@902 := @428 (fun (ro : @427) => @900) +@904 := @428 (fun (__e_ro : @427) => @900) +@909 := LexLeanPreservation.Rust.RepresentableL (@59 (@58 @18 @57)) +@910 := (__e_hrep : @909) -> @904 +@911 := fun (__e_hrep : @909) => @894 +@912 := (b : @3) -> @910 +@913 := fun (b : @3) => @911 +@914 := (a : @3) -> @912 +@915 := fun (a : @3) => @913 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R10/RustCore.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R10/RustCore.lean new file mode 100644 index 000000000..d7b1a69bd --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R10/RustCore.lean @@ -0,0 +1,33 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.RustCore +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1], types := [.nat, .nat], result := .nat, + body := (.«let» 2 .nat (.prim .natQuot [(.var 0), (.var 1), (.value .nat (.nat 7))]) (.«let» 3 .nat (.prim .natRem [(.var 0), (.var 1), (.value .nat (.nat 0))]) (.cond (.cond (.prim .natEq [(.var 2), (.value .nat (.nat 0))]) (.cond (.prim .natLe [(.var 3), (.value .nat (.nat 3))]) (.build .true .bool []) (.prim .boolNot [(.prim .natLt [(.var 0), (.var 1)])])) (.build .false .bool [])) (.prim .natAdd [(.prim .natSub [(.var 0), (.var 1)]), (.var 3)]) (.prim .natMul [(.var 2), (.var 3)])))) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .core, items := [ + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 3)) none (.lit (.nat 7)))] (.call (.runtime .natQuot) [(.move (.generated .operand 1)), (.move (.generated .operand 2)), (.move (.generated .operand 3))] false)))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 0)))] (.call (.runtime .natRem) [(.move (.generated .operand 4)), (.move (.generated .operand 5)), (.move (.generated .operand 6))] false)))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 8)) none (.lit (.nat 0)))] (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false) (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 10)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natLe) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .natLt) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))] (.call (.runtime .boolNot) [(.move (.generated .operand 13))] false)))) (.mk [] (.lit (.bool false)))) (.mk [(.mk (.bind (.generated .operand 16)) none (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false)))), (.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 3)))] (.call (.runtime .natAdd) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false)) (.mk [(.mk (.bind (.generated .operand 18)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 19)) none (.copy (.generated .binding 3)))] (.call (.runtime .natMul) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false)))))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 3)) none (.lit (.nat 7)))] (.call (.runtime .natQuot) [(.move (.generated .operand 1)), (.move (.generated .operand 2)), (.move (.generated .operand 3))] false)))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 0)))] (.call (.runtime .natRem) [(.move (.generated .operand 4)), (.move (.generated .operand 5)), (.move (.generated .operand 6))] false)))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 8)) none (.lit (.nat 0)))], (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false) (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 10)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natLe) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .natLt) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))] (.call (.runtime .boolNot) [(.move (.generated .operand 13))] false)))) (.mk [] (.lit (.bool false)))) (.mk [(.mk (.bind (.generated .operand 16)) none (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false)))), (.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 3)))] (.call (.runtime .natAdd) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false)) (.mk [(.mk (.bind (.generated .operand 18)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 19)) none (.copy (.generated .binding 3)))] (.call (.runtime .natMul) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false))), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 3)) none (.lit (.nat 7)))]) (tail := (.call (.runtime .natQuot) [(.move (.generated .operand 1)), (.move (.generated .operand 2)), (.move (.generated .operand 3))] false)) (Corr.prim (ts := [.nat, .nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 0)))]) (tail := (.call (.runtime .natRem) [(.move (.generated .operand 4)), (.move (.generated .operand 5)), (.move (.generated .operand 6))] false)) (Corr.prim (ts := [.nat, .nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 8)) none (.lit (.nat 0)))]) (ce := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false) (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 10)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natLe) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .natLt) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))] (.call (.runtime .boolNot) [(.move (.generated .operand 13))] false)))) (.mk [] (.lit (.bool false))))) (lk := []) (Corr.cond (lc := [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 8)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 10)) none (.lit (.nat 3)))]) (ta := (.cond (.call (.runtime .natLe) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .natLt) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))] (.call (.runtime .boolNot) [(.move (.generated .operand 13))] false)))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 10)) none (.lit (.nat 3)))]) (ce := (.call (.runtime .natLe) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .natLt) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))]) (tb := (.call (.runtime .boolNot) [(.move (.generated .operand 13))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.prim (ts := [.bool]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natLt) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl))) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.kIf (la := [(.mk (.bind (.generated .operand 16)) none (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false)))), (.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 3)))]) (ta := (.call (.runtime .natAdd) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false)) (lb := [(.mk (.bind (.generated .operand 18)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 19)) none (.copy (.generated .binding 3)))]) (tb := (.call (.runtime .natMul) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false)) (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)))))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | _ + 1 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.RustCore diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R10/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R10/RustStd.lean new file mode 100644 index 000000000..d07b2f2b1 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R10/RustStd.lean @@ -0,0 +1,33 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1], types := [.nat, .nat], result := .nat, + body := (.«let» 2 .nat (.prim .natQuot [(.var 0), (.var 1), (.value .nat (.nat 7))]) (.«let» 3 .nat (.prim .natRem [(.var 0), (.var 1), (.value .nat (.nat 0))]) (.cond (.cond (.prim .natEq [(.var 2), (.value .nat (.nat 0))]) (.cond (.prim .natLe [(.var 3), (.value .nat (.nat 3))]) (.build .true .bool []) (.prim .boolNot [(.prim .natLt [(.var 0), (.var 1)])])) (.build .false .bool [])) (.prim .natAdd [(.prim .natSub [(.var 0), (.var 1)]), (.var 3)]) (.prim .natMul [(.var 2), (.var 3)])))) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 3)) none (.lit (.nat 7)))] (.call (.runtime .natQuot) [(.move (.generated .operand 1)), (.move (.generated .operand 2)), (.move (.generated .operand 3))] false)))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 0)))] (.call (.runtime .natRem) [(.move (.generated .operand 4)), (.move (.generated .operand 5)), (.move (.generated .operand 6))] false)))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 8)) none (.lit (.nat 0)))] (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false) (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 10)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natLe) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .natLt) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))] (.call (.runtime .boolNot) [(.move (.generated .operand 13))] false)))) (.mk [] (.lit (.bool false)))) (.mk [(.mk (.bind (.generated .operand 16)) none (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false)))), (.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 3)))] (.call (.runtime .natAdd) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false)) (.mk [(.mk (.bind (.generated .operand 18)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 19)) none (.copy (.generated .binding 3)))] (.call (.runtime .natMul) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false)))))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 3)) none (.lit (.nat 7)))] (.call (.runtime .natQuot) [(.move (.generated .operand 1)), (.move (.generated .operand 2)), (.move (.generated .operand 3))] false)))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 0)))] (.call (.runtime .natRem) [(.move (.generated .operand 4)), (.move (.generated .operand 5)), (.move (.generated .operand 6))] false)))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 8)) none (.lit (.nat 0)))], (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false) (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 10)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natLe) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .natLt) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))] (.call (.runtime .boolNot) [(.move (.generated .operand 13))] false)))) (.mk [] (.lit (.bool false)))) (.mk [(.mk (.bind (.generated .operand 16)) none (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false)))), (.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 3)))] (.call (.runtime .natAdd) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false)) (.mk [(.mk (.bind (.generated .operand 18)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 19)) none (.copy (.generated .binding 3)))] (.call (.runtime .natMul) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false))), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 3)) none (.lit (.nat 7)))]) (tail := (.call (.runtime .natQuot) [(.move (.generated .operand 1)), (.move (.generated .operand 2)), (.move (.generated .operand 3))] false)) (Corr.prim (ts := [.nat, .nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 0)))]) (tail := (.call (.runtime .natRem) [(.move (.generated .operand 4)), (.move (.generated .operand 5)), (.move (.generated .operand 6))] false)) (Corr.prim (ts := [.nat, .nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 8)) none (.lit (.nat 0)))]) (ce := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false) (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 10)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natLe) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .natLt) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))] (.call (.runtime .boolNot) [(.move (.generated .operand 13))] false)))) (.mk [] (.lit (.bool false))))) (lk := []) (Corr.cond (lc := [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 8)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 10)) none (.lit (.nat 3)))]) (ta := (.cond (.call (.runtime .natLe) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .natLt) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))] (.call (.runtime .boolNot) [(.move (.generated .operand 13))] false)))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 10)) none (.lit (.nat 3)))]) (ce := (.call (.runtime .natLe) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .natLt) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))]) (tb := (.call (.runtime .boolNot) [(.move (.generated .operand 13))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.prim (ts := [.bool]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natLt) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl))) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.kIf (la := [(.mk (.bind (.generated .operand 16)) none (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false)))), (.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 3)))]) (ta := (.call (.runtime .natAdd) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false)) (lb := [(.mk (.bind (.generated .operand 18)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 19)) none (.copy (.generated .binding 3)))]) (tb := (.call (.runtime .natMul) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false)) (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)))))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | _ + 1 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R11.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R11.lean similarity index 97% rename from examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R11.lean rename to examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R11.lean index 49d78abbc..5d6726059 100644 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R11.lean +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R11.lean @@ -18,7 +18,7 @@ set_option maxRecDepth 100000 set_option maxHeartbeats 0 set_option synthInstance.maxHeartbeats 0 set_option linter.unusedVariables false -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11 def __prog : _root_.LexLeanTarget.TargetSyntax.Program := { adts := [], functions := [ @@ -37,4 +37,4 @@ def denote (a : Int) (b : Int) : _root_.LexLeanPreservation.Obs := theorem root (a : Int) (b : Int) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.int a), (_root_.LexLeanTarget.TargetSyntax.Value.int b)] (_root_.LexLeanPreservation.Rel (__fits_0 a b) (_root_.LexLeanTarget.TargetSyntax.Value.int (Coverage.Main.intOps a b))) := _root_.LexLeanPreservation.run_of_funRel (__rel_0 a b) -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11 +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11 diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R11/Compose/RustCore.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R11/Compose/RustCore.lex.tex new file mode 100644 index 000000000..1fed27286 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R11/Compose/RustCore.lex.tex @@ -0,0 +1,463 @@ +\begin{lexlean}{RustCore} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.Compose.RustCore} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.RustCore, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.Compose.RustCore.root : @915 := @916 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.Compose.RustCore.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.RustCore.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.RustCore.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.RustCore.flags +@3 := Int +@4 := #2 +@5 := LexLeanTarget.TargetSyntax.Value.int +@6 := @5 @4 +@7 := LexLeanTarget.TargetSyntax.Ty.int +@8 := LexLeanTarget.TargetSyntax.Program +@9 := LexLeanPreservation.Rust.RCrate +@10 := LexLeanPreservation.Rust.Flags +@11 := LexLeanPreservation.Rust.WT +@12 := #3 +@14 := @11 @12 @4 +@15 := #1 +@16 := @14 @15 +@17 := #0 +@18 := @5 @17 +@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 +@26 := LexLeanPreservation.Rust.wt_int @0 +@27 := @11 @0 +@34 := {c : @9} -> {A : @10} -> (n : @3) -> @27 @4 @15 @18 @7 +@35 := @26 @1 +@36 := @27 @1 +@41 := {A : @10} -> (n : @3) -> @36 @15 @18 @7 +@42 := @35 @2 +@43 := @36 @2 +@46 := (n : @3) -> @43 @18 @7 +@47 := @42 @4 +@49 := @43 @6 @7 +@50 := @5 @15 +@51 := @42 @15 +@53 := @43 @50 @7 +@54 := LexLeanTarget.TargetSyntax.Value +@55 := List.nil.{0} +@56 := List.cons.{0} +@57 := @55 @54 +@58 := @56 @54 +@59 := @58 @50 +@60 := @59 @57 +@61 := @58 @6 +@62 := @61 @60 +@63 := Nat +@66 := Prod.{0, 0} @63 @54 +@67 := 1 +@70 := Prod.mk.{0, 0} @63 @54 +@71 := @70 @67 +@72 := @71 @50 +@73 := 0 +@74 := @70 @73 +@75 := @74 @6 +@76 := @55 @66 +@77 := @56 @66 +@79 := @77 @75 @76 +@81 := @77 @72 @79 +@82 := Bool.true +@83 := LexLeanTarget.TargetSyntax.Function +@84 := LexLeanTarget.TargetSyntax.Program.functions +@85 := @84 @0 +@86 := LexLeanTarget.TargetSyntax.Ty +@87 := @55 @63 +@88 := @55 @86 +@89 := LexLeanTarget.TargetSyntax.Ty.unit +@90 := LexLeanTarget.TargetSyntax.Value.unit +@93 := LexLeanTarget.TargetSyntax.Expr.value @89 @90 +@98 := LexLeanTarget.TargetSyntax.Function.mk @87 @88 @89 @93 +@103 := List.getD.{0} @83 @85 @73 @98 +@107 := fun (__e_n : @63) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.RustCore.root @17 @73 +@108 := LexLeanPreservation.Rust.WTL +@116 := {p : @8} -> {c : @9} -> {A : @10} -> @108 @4 @15 @17 @57 @88 +@118 := LexLeanPreservation.Rust.wtl_nil @0 +@119 := @108 @0 +@125 := {c : @9} -> {A : @10} -> @119 @15 @17 @57 @88 +@126 := @118 @1 +@127 := @119 @1 +@131 := {A : @10} -> @127 @17 @57 @88 +@132 := @126 @2 +@133 := @127 @2 +@134 := @133 @57 +@135 := @134 @88 +@136 := List.{0} +@137 := @136 @54 +@138 := @136 @86 +@139 := #6 +@140 := @11 @139 +@141 := #5 +@142 := @140 @141 +@143 := #4 +@146 := @142 @143 @12 @4 +@147 := #7 +@152 := @108 @147 @139 @141 @4 @15 +@153 := #8 +@156 := @108 @153 @147 @139 +@158 := @58 @141 @12 +@159 := @156 @158 +@160 := @56 @86 +@162 := @160 @143 @4 +@172 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {v : @54} -> {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @146) -> (hs : @152) -> @159 @162 +@174 := LexLeanPreservation.Rust.wtl_cons @0 +@194 := {c : @9} -> + {A : @10} -> + {v : @54} -> + {t : @86} -> + {vs : @137} -> + {ts : @138} -> + (h : @27 @141 @143 @12 @4) -> (hs : @119 @139 @141 @4 @15) -> @119 @147 @139 @158 @162 +@195 := @174 @1 +@211 := {A : @10} -> + {v : @54} -> + {t : @86} -> + {vs : @137} -> + {ts : @138} -> (h : @36 @143 @12 @4) -> (hs : @127 @141 @4 @15) -> @127 @139 @158 @162 +@212 := @195 @2 +@214 := @43 @12 @4 +@216 := @133 @4 @15 +@224 := {v : @54} -> + {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @214) -> (hs : @216) -> @133 @158 @162 +@225 := @212 @50 +@226 := @5 @143 +@227 := @43 @226 +@228 := @227 @4 +@229 := @5 @139 +@230 := @58 @229 +@232 := @133 (@230 @12) +@238 := {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @228) -> (hs : @216) -> @232 @162 +@239 := @225 @7 +@240 := @5 @12 +@242 := @43 @240 @7 +@243 := @5 @141 +@244 := @58 @243 +@246 := @133 (@244 @12) +@247 := @160 @7 +@248 := @247 @4 +@253 := {vs : @137} -> {ts : @138} -> (h : @242) -> (hs : @216) -> @246 @248 +@254 := @239 @57 +@255 := @134 @15 +@256 := @58 @226 +@257 := @256 @57 +@262 := {ts : @138} -> (h : @49) -> (hs : @255) -> @133 @257 @248 +@263 := @254 @88 +@264 := @58 @240 +@265 := @264 @57 +@266 := @133 @265 +@267 := @247 @88 +@270 := (h : @53) -> (hs : @135) -> @266 @267 +@271 := @263 @51 +@272 := @61 @57 +@274 := @133 @272 @267 +@275 := (hs : @135) -> @274 +@276 := @271 @132 +@278 := @133 @60 @267 +@279 := @212 @6 +@281 := @43 @243 @4 +@282 := @5 @147 +@283 := @58 @282 +@291 := {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @281) -> (hs : @216) -> @133 (@283 @12) @162 +@292 := @279 @7 +@298 := {vs : @137} -> {ts : @138} -> (h : @227 @7) -> (hs : @216) -> @232 @248 +@299 := @292 @60 +@300 := @266 @15 +@301 := @244 @257 +@302 := @133 @301 +@306 := {ts : @138} -> (h : @242) -> (hs : @300) -> @302 @248 +@307 := @299 @267 +@308 := @256 @265 +@309 := @133 @308 +@310 := @247 @267 +@313 := (h : @49) -> (hs : @274) -> @309 @310 +@314 := @307 @47 +@315 := @264 @272 +@316 := @133 @315 +@318 := (hs : @278) -> @316 @310 +@319 := @314 @276 +@320 := @133 @62 +@321 := @320 @310 +@322 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.denote +@324 := @322 @4 @15 +@325 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.__fits_0 +@327 := @325 @4 @15 +@331 := @5 (Coverage.Main.intOps @4 @15) +@334 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.root @4 @15 +@335 := Bool +@336 := Ne.{1} +@337 := LexLeanPreservation.Obs +@338 := @336 @337 +@339 := LexLeanPreservation.Rel +@342 := @338 (@339 @15 @17) +@343 := LexLeanPreservation.Obs.stuck +@346 := (f : @335) -> (v : @54) -> @342 @343 +@348 := LexLeanPreservation.Rust.rel_ne_stuck @327 +@355 := (v : @54) -> @338 (@339 (@325 @12 @4) @17) @343 +@356 := @348 @331 +@360 := @338 (@339 @327 @331) @343 +@361 := @136 @66 +@362 := LexLeanPreservation.Rust.FunSem +@363 := #9 +@369 := (n : @63) -> @362 @363 @153 @147 @17 @139 +@370 := Eq.{1} +@371 := Option.{0} +@372 := @371 @83 +@373 := @370 @372 +@380 := LexLeanRuntime.index (@136 @83) @83 (LexLeanRuntime.instIndexableList @83) +@384 := @373 (@380 (@84 @363) @139) +@385 := Option.some.{0} +@386 := @385 @83 +@387 := @386 @141 +@388 := @384 @387 +@389 := #10 +@393 := @108 @389 @363 @153 @141 +@394 := LexLeanTarget.TargetSyntax.Function.types +@395 := @394 @139 +@396 := @393 @395 +@397 := @371 @361 +@398 := @370 @397 +@399 := LexLeanTarget.TargetSemantics.bindAll +@400 := LexLeanTarget.TargetSyntax.Function.parameters +@405 := @398 (@399 (@400 @147) @139 @76) +@406 := @385 @361 +@407 := @406 @141 +@408 := @405 @407 +@409 := @371 @335 +@410 := @370 @409 +@411 := LexLeanPreservation.Rust.fnFallible +@412 := #11 +@415 := @410 (@411 @412 @363) +@416 := @385 @335 +@417 := @416 @141 +@418 := @415 @417 +@419 := LexLeanPreservation.RunConv +@420 := #13 +@424 := @419 @420 @389 @153 @141 +@426 := @338 @139 @343 +@427 := Exists.{1} +@428 := LexLeanPreservation.Rust.ROut +@429 := @427 @428 +@430 := And +@431 := LexLeanPreservation.Rust.RealizesFn +@435 := @430 (@431 @363 @153 @17) +@436 := LexLeanPreservation.Rust.RCI +@438 := @436 #15 +@439 := LexLeanPreservation.Rust.fnIdent +@440 := @439 @420 +@447 := (hne : @426) -> @429 (fun (ro : @428) => @435 (@438 @440 @412 @17)) +@462 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {f : @63} -> + {fn : @83} -> + {args : @137} -> + {env : @361} -> + {F : @335} -> + {o : @337} -> + (hB : @369) -> + (hfn : @388) -> (hwt : @396) -> (hbind : @408) -> (hF : @418) -> (hA : @424) -> @447 +@464 := LexLeanPreservation.Rust.compose @0 +@465 := @362 @0 +@470 := (n : @63) -> @465 @153 @147 @17 @139 +@471 := @380 @85 +@474 := @373 (@471 @139) @387 +@478 := @119 @363 @153 @141 @395 +@479 := @419 @0 +@482 := @479 @389 @153 @141 +@496 := {c : @9} -> + {A : @10} -> + {f : @63} -> + {fn : @83} -> + {args : @137} -> + {env : @361} -> + {F : @335} -> + {o : @337} -> + (hB : @470) -> + (hfn : @474) -> (hwt : @478) -> (hbind : @408) -> (hF : @418) -> (hA : @482) -> @447 +@497 := @464 @1 +@498 := @465 @1 +@502 := (n : @63) -> @498 @147 @17 @139 +@505 := @127 @153 @141 @395 +@506 := @411 @1 +@509 := @410 (@506 @363) @417 +@510 := @436 @1 +@520 := (hbind : @408) -> + (hF : @509) -> (hA : @482) -> (hne : @426) -> @429 (fun (ro : @428) => @435 (@510 @440 @412 @17)) +@530 := {A : @10} -> + {f : @63} -> + {fn : @83} -> + {args : @137} -> + {env : @361} -> {F : @335} -> {o : @337} -> (hB : @502) -> (hfn : @474) -> (hwt : @505) -> @520 +@531 := @497 @2 +@533 := @498 @2 @17 +@535 := (n : @63) -> @533 @139 +@536 := @133 @141 +@537 := @536 @395 +@546 := {f : @63} -> + {fn : @83} -> + {args : @137} -> + {env : @361} -> {F : @335} -> {o : @337} -> (hB : @535) -> (hfn : @474) -> (hwt : @537) -> @520 +@547 := @531 @73 +@549 := (n : @63) -> @533 @73 +@550 := @471 @73 +@551 := @373 @550 +@552 := @551 @387 +@553 := @506 @73 +@554 := @410 @553 +@555 := @554 @417 +@556 := @479 @73 +@558 := @556 @153 @141 +@560 := @510 (@439 @73) +@568 := (hF : @555) -> (hA : @558) -> (hne : @426) -> @429 (fun (ro : @428) => @435 (@560 @412 @17)) +@577 := {fn : @83} -> + {args : @137} -> + {env : @361} -> + {F : @335} -> {o : @337} -> (hB : @549) -> (hfn : @552) -> (hwt : @537) -> (hbind : @408) -> @568 +@578 := @547 @103 +@580 := @551 (@386 @103) +@581 := @394 @103 +@582 := @536 @581 +@584 := @399 (@400 @103) +@596 := {args : @137} -> + {env : @361} -> + {F : @335} -> + {o : @337} -> + (hB : @549) -> (hfn : @580) -> (hwt : @582) -> (hbind : @398 (@584 @139 @76) @407) -> @568 +@597 := @578 @62 +@599 := @283 (@230 @57) +@601 := @133 @599 @581 +@603 := @58 (@5 @153) +@605 := @603 (@283 @57) +@609 := @398 (@584 @605 @76) @407 +@611 := @58 (@5 @389) +@613 := @58 (@5 @363) +@615 := @611 (@613 @57) +@617 := @556 @615 @141 +@619 := @58 (@5 @420) +@622 := @58 (@5 #12) +@639 := {env : @361} -> + {F : @335} -> + {o : @337} -> + (hB : @549) -> + (hfn : @580) -> + (hwt : @601) -> + (hbind : @609) -> + (hF : @555) -> + (hA : @617) -> (hne : @426) -> @429 (fun (ro : @428) => @435 (@560 (@619 (@622 @57)) @17)) +@640 := @597 @81 +@642 := @230 (@244 @57) +@644 := @133 @642 @581 +@655 := @398 (@584 @599 @76) (@406 (@77 (@71 @229) (@77 (@74 @282) @76))) +@657 := @613 (@603 @57) +@659 := @556 @657 @141 +@661 := @58 (@5 @412) +@677 := {F : @335} -> + {o : @337} -> + (hB : @549) -> + (hfn : @580) -> + (hwt : @644) -> + (hbind : @655) -> + (hF : @555) -> + (hA : @659) -> (hne : @426) -> @429 (fun (ro : @428) => @435 (@560 (@622 (@661 @57)) @17)) +@678 := @640 @82 +@679 := @302 @581 +@690 := @398 (@584 @642 @76) (@406 (@77 (@71 @243) (@77 (@74 @229) @76))) +@692 := @554 (@416 @82) +@694 := @556 @605 @141 +@695 := @431 @82 +@713 := {o : @337} -> + (hB : @549) -> + (hfn : @580) -> + (hwt : @679) -> + (hbind : @690) -> + (hF : @692) -> + (hA : @694) -> + (hne : @426) -> @429 (fun (ro : @428) => @430 (@695 @153 @17) (@560 (@661 (@611 @57)) @17)) +@714 := @678 @324 +@715 := @309 @581 +@726 := @398 (@584 @301 @76) (@406 (@77 (@71 @226) (@77 (@74 @243) @76))) +@727 := @556 @599 +@729 := @322 @147 @139 +@730 := @727 @729 +@732 := @322 @153 @147 +@751 := (hB : @549) -> + (hfn : @580) -> + (hwt : @715) -> + (hbind : @726) -> + (hF : @692) -> + (hA : @730) -> + (hne : @338 @732 @343) -> + @429 (fun (ro : @428) => @430 (@695 (@322 @389 @363) @17) (@560 @615 @17)) +@752 := @714 @107 +@753 := @316 @581 +@764 := @398 (@584 @308 @76) (@406 (@77 (@71 @240) (@77 (@74 @226) @76))) +@765 := @556 @642 +@767 := @322 @139 @141 +@786 := (hfn : @580) -> + (hwt : @753) -> + (hbind : @764) -> + (hF : @692) -> + (hA : @765 @767) -> + (hne : @338 @729 @343) -> + @429 (fun (ro : @428) => @430 (@695 (@322 @363 @153) @17) (@560 @657 @17)) +@787 := Eq.refl.{1} +@790 := @752 (@787 @372 @550) +@791 := @320 @581 +@802 := @398 (@584 @315 @76) (@406 (@77 (@71 @6) (@77 (@74 @240) @76))) +@803 := @556 @301 +@805 := @322 @141 @143 +@821 := (hwt : @791) -> + (hbind : @802) -> + (hF : @692) -> + (hA : @803 @805) -> + (hne : @338 @767 @343) -> @429 (fun (ro : @428) => @430 (@695 @732 @17) (@560 @605 @17)) +@822 := @790 @319 +@824 := @584 @62 @76 +@827 := @398 @824 (@406 @81) +@828 := @556 @308 +@830 := @322 @143 @12 +@845 := (hbind : @827) -> + (hF : @692) -> + (hA : @828 @830) -> + (hne : @338 @805 @343) -> @429 (fun (ro : @428) => @430 (@695 @729 @17) (@560 @599 @17)) +@848 := @822 (@787 @397 @824) +@849 := @556 @315 +@851 := @322 @12 @4 +@865 := (hF : @692) -> + (hA : @849 @851) -> + (hne : @338 @830 @343) -> @429 (fun (ro : @428) => @430 (@695 @767 @17) (@560 @642 @17)) +@868 := @848 (@787 @409 @553) +@882 := (hA : @556 @62 @324) -> + (hne : @338 @851 @343) -> @429 (fun (ro : @428) => @430 (@695 @805 @17) (@560 @301 @17)) +@883 := @868 @334 +@894 := (hne : @338 @324 @343) -> @429 (fun (ro : @428) => @430 (@695 @830 @17) (@560 @308 @17)) +@895 := @883 @356 +@901 := @430 (@695 @851 @17) (@560 @315 @17) +@903 := @429 (fun (ro : @428) => @901) +@905 := @429 (fun (__e_ro : @428) => @901) +@910 := LexLeanPreservation.Rust.RepresentableL (@59 (@58 @18 @57)) +@911 := (__e_hrep : @910) -> @905 +@912 := fun (__e_hrep : @910) => @895 +@913 := (b : @3) -> @911 +@914 := fun (b : @3) => @912 +@915 := (a : @3) -> @913 +@916 := fun (a : @3) => @914 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R11/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R11/Compose/RustStd.lex.tex new file mode 100644 index 000000000..8081eb178 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R11/Compose/RustStd.lex.tex @@ -0,0 +1,463 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.Compose.RustStd.root : @915 := @916 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.RustStd.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.RustStd.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.RustStd.flags +@3 := Int +@4 := #2 +@5 := LexLeanTarget.TargetSyntax.Value.int +@6 := @5 @4 +@7 := LexLeanTarget.TargetSyntax.Ty.int +@8 := LexLeanTarget.TargetSyntax.Program +@9 := LexLeanPreservation.Rust.RCrate +@10 := LexLeanPreservation.Rust.Flags +@11 := LexLeanPreservation.Rust.WT +@12 := #3 +@14 := @11 @12 @4 +@15 := #1 +@16 := @14 @15 +@17 := #0 +@18 := @5 @17 +@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 +@26 := LexLeanPreservation.Rust.wt_int @0 +@27 := @11 @0 +@34 := {c : @9} -> {A : @10} -> (n : @3) -> @27 @4 @15 @18 @7 +@35 := @26 @1 +@36 := @27 @1 +@41 := {A : @10} -> (n : @3) -> @36 @15 @18 @7 +@42 := @35 @2 +@43 := @36 @2 +@46 := (n : @3) -> @43 @18 @7 +@47 := @42 @4 +@49 := @43 @6 @7 +@50 := @5 @15 +@51 := @42 @15 +@53 := @43 @50 @7 +@54 := LexLeanTarget.TargetSyntax.Value +@55 := List.nil.{0} +@56 := List.cons.{0} +@57 := @55 @54 +@58 := @56 @54 +@59 := @58 @50 +@60 := @59 @57 +@61 := @58 @6 +@62 := @61 @60 +@63 := Nat +@66 := Prod.{0, 0} @63 @54 +@67 := 1 +@70 := Prod.mk.{0, 0} @63 @54 +@71 := @70 @67 +@72 := @71 @50 +@73 := 0 +@74 := @70 @73 +@75 := @74 @6 +@76 := @55 @66 +@77 := @56 @66 +@79 := @77 @75 @76 +@81 := @77 @72 @79 +@82 := Bool.true +@83 := LexLeanTarget.TargetSyntax.Function +@84 := LexLeanTarget.TargetSyntax.Program.functions +@85 := @84 @0 +@86 := LexLeanTarget.TargetSyntax.Ty +@87 := @55 @63 +@88 := @55 @86 +@89 := LexLeanTarget.TargetSyntax.Ty.unit +@90 := LexLeanTarget.TargetSyntax.Value.unit +@93 := LexLeanTarget.TargetSyntax.Expr.value @89 @90 +@98 := LexLeanTarget.TargetSyntax.Function.mk @87 @88 @89 @93 +@103 := List.getD.{0} @83 @85 @73 @98 +@107 := fun (__e_n : @63) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.RustStd.root @17 @73 +@108 := LexLeanPreservation.Rust.WTL +@116 := {p : @8} -> {c : @9} -> {A : @10} -> @108 @4 @15 @17 @57 @88 +@118 := LexLeanPreservation.Rust.wtl_nil @0 +@119 := @108 @0 +@125 := {c : @9} -> {A : @10} -> @119 @15 @17 @57 @88 +@126 := @118 @1 +@127 := @119 @1 +@131 := {A : @10} -> @127 @17 @57 @88 +@132 := @126 @2 +@133 := @127 @2 +@134 := @133 @57 +@135 := @134 @88 +@136 := List.{0} +@137 := @136 @54 +@138 := @136 @86 +@139 := #6 +@140 := @11 @139 +@141 := #5 +@142 := @140 @141 +@143 := #4 +@146 := @142 @143 @12 @4 +@147 := #7 +@152 := @108 @147 @139 @141 @4 @15 +@153 := #8 +@156 := @108 @153 @147 @139 +@158 := @58 @141 @12 +@159 := @156 @158 +@160 := @56 @86 +@162 := @160 @143 @4 +@172 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {v : @54} -> {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @146) -> (hs : @152) -> @159 @162 +@174 := LexLeanPreservation.Rust.wtl_cons @0 +@194 := {c : @9} -> + {A : @10} -> + {v : @54} -> + {t : @86} -> + {vs : @137} -> + {ts : @138} -> + (h : @27 @141 @143 @12 @4) -> (hs : @119 @139 @141 @4 @15) -> @119 @147 @139 @158 @162 +@195 := @174 @1 +@211 := {A : @10} -> + {v : @54} -> + {t : @86} -> + {vs : @137} -> + {ts : @138} -> (h : @36 @143 @12 @4) -> (hs : @127 @141 @4 @15) -> @127 @139 @158 @162 +@212 := @195 @2 +@214 := @43 @12 @4 +@216 := @133 @4 @15 +@224 := {v : @54} -> + {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @214) -> (hs : @216) -> @133 @158 @162 +@225 := @212 @50 +@226 := @5 @143 +@227 := @43 @226 +@228 := @227 @4 +@229 := @5 @139 +@230 := @58 @229 +@232 := @133 (@230 @12) +@238 := {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @228) -> (hs : @216) -> @232 @162 +@239 := @225 @7 +@240 := @5 @12 +@242 := @43 @240 @7 +@243 := @5 @141 +@244 := @58 @243 +@246 := @133 (@244 @12) +@247 := @160 @7 +@248 := @247 @4 +@253 := {vs : @137} -> {ts : @138} -> (h : @242) -> (hs : @216) -> @246 @248 +@254 := @239 @57 +@255 := @134 @15 +@256 := @58 @226 +@257 := @256 @57 +@262 := {ts : @138} -> (h : @49) -> (hs : @255) -> @133 @257 @248 +@263 := @254 @88 +@264 := @58 @240 +@265 := @264 @57 +@266 := @133 @265 +@267 := @247 @88 +@270 := (h : @53) -> (hs : @135) -> @266 @267 +@271 := @263 @51 +@272 := @61 @57 +@274 := @133 @272 @267 +@275 := (hs : @135) -> @274 +@276 := @271 @132 +@278 := @133 @60 @267 +@279 := @212 @6 +@281 := @43 @243 @4 +@282 := @5 @147 +@283 := @58 @282 +@291 := {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @281) -> (hs : @216) -> @133 (@283 @12) @162 +@292 := @279 @7 +@298 := {vs : @137} -> {ts : @138} -> (h : @227 @7) -> (hs : @216) -> @232 @248 +@299 := @292 @60 +@300 := @266 @15 +@301 := @244 @257 +@302 := @133 @301 +@306 := {ts : @138} -> (h : @242) -> (hs : @300) -> @302 @248 +@307 := @299 @267 +@308 := @256 @265 +@309 := @133 @308 +@310 := @247 @267 +@313 := (h : @49) -> (hs : @274) -> @309 @310 +@314 := @307 @47 +@315 := @264 @272 +@316 := @133 @315 +@318 := (hs : @278) -> @316 @310 +@319 := @314 @276 +@320 := @133 @62 +@321 := @320 @310 +@322 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.denote +@324 := @322 @4 @15 +@325 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.__fits_0 +@327 := @325 @4 @15 +@331 := @5 (Coverage.Main.intOps @4 @15) +@334 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.root @4 @15 +@335 := Bool +@336 := Ne.{1} +@337 := LexLeanPreservation.Obs +@338 := @336 @337 +@339 := LexLeanPreservation.Rel +@342 := @338 (@339 @15 @17) +@343 := LexLeanPreservation.Obs.stuck +@346 := (f : @335) -> (v : @54) -> @342 @343 +@348 := LexLeanPreservation.Rust.rel_ne_stuck @327 +@355 := (v : @54) -> @338 (@339 (@325 @12 @4) @17) @343 +@356 := @348 @331 +@360 := @338 (@339 @327 @331) @343 +@361 := @136 @66 +@362 := LexLeanPreservation.Rust.FunSem +@363 := #9 +@369 := (n : @63) -> @362 @363 @153 @147 @17 @139 +@370 := Eq.{1} +@371 := Option.{0} +@372 := @371 @83 +@373 := @370 @372 +@380 := LexLeanRuntime.index (@136 @83) @83 (LexLeanRuntime.instIndexableList @83) +@384 := @373 (@380 (@84 @363) @139) +@385 := Option.some.{0} +@386 := @385 @83 +@387 := @386 @141 +@388 := @384 @387 +@389 := #10 +@393 := @108 @389 @363 @153 @141 +@394 := LexLeanTarget.TargetSyntax.Function.types +@395 := @394 @139 +@396 := @393 @395 +@397 := @371 @361 +@398 := @370 @397 +@399 := LexLeanTarget.TargetSemantics.bindAll +@400 := LexLeanTarget.TargetSyntax.Function.parameters +@405 := @398 (@399 (@400 @147) @139 @76) +@406 := @385 @361 +@407 := @406 @141 +@408 := @405 @407 +@409 := @371 @335 +@410 := @370 @409 +@411 := LexLeanPreservation.Rust.fnFallible +@412 := #11 +@415 := @410 (@411 @412 @363) +@416 := @385 @335 +@417 := @416 @141 +@418 := @415 @417 +@419 := LexLeanPreservation.RunConv +@420 := #13 +@424 := @419 @420 @389 @153 @141 +@426 := @338 @139 @343 +@427 := Exists.{1} +@428 := LexLeanPreservation.Rust.ROut +@429 := @427 @428 +@430 := And +@431 := LexLeanPreservation.Rust.RealizesFn +@435 := @430 (@431 @363 @153 @17) +@436 := LexLeanPreservation.Rust.RCI +@438 := @436 #15 +@439 := LexLeanPreservation.Rust.fnIdent +@440 := @439 @420 +@447 := (hne : @426) -> @429 (fun (ro : @428) => @435 (@438 @440 @412 @17)) +@462 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {f : @63} -> + {fn : @83} -> + {args : @137} -> + {env : @361} -> + {F : @335} -> + {o : @337} -> + (hB : @369) -> + (hfn : @388) -> (hwt : @396) -> (hbind : @408) -> (hF : @418) -> (hA : @424) -> @447 +@464 := LexLeanPreservation.Rust.compose @0 +@465 := @362 @0 +@470 := (n : @63) -> @465 @153 @147 @17 @139 +@471 := @380 @85 +@474 := @373 (@471 @139) @387 +@478 := @119 @363 @153 @141 @395 +@479 := @419 @0 +@482 := @479 @389 @153 @141 +@496 := {c : @9} -> + {A : @10} -> + {f : @63} -> + {fn : @83} -> + {args : @137} -> + {env : @361} -> + {F : @335} -> + {o : @337} -> + (hB : @470) -> + (hfn : @474) -> (hwt : @478) -> (hbind : @408) -> (hF : @418) -> (hA : @482) -> @447 +@497 := @464 @1 +@498 := @465 @1 +@502 := (n : @63) -> @498 @147 @17 @139 +@505 := @127 @153 @141 @395 +@506 := @411 @1 +@509 := @410 (@506 @363) @417 +@510 := @436 @1 +@520 := (hbind : @408) -> + (hF : @509) -> (hA : @482) -> (hne : @426) -> @429 (fun (ro : @428) => @435 (@510 @440 @412 @17)) +@530 := {A : @10} -> + {f : @63} -> + {fn : @83} -> + {args : @137} -> + {env : @361} -> {F : @335} -> {o : @337} -> (hB : @502) -> (hfn : @474) -> (hwt : @505) -> @520 +@531 := @497 @2 +@533 := @498 @2 @17 +@535 := (n : @63) -> @533 @139 +@536 := @133 @141 +@537 := @536 @395 +@546 := {f : @63} -> + {fn : @83} -> + {args : @137} -> + {env : @361} -> {F : @335} -> {o : @337} -> (hB : @535) -> (hfn : @474) -> (hwt : @537) -> @520 +@547 := @531 @73 +@549 := (n : @63) -> @533 @73 +@550 := @471 @73 +@551 := @373 @550 +@552 := @551 @387 +@553 := @506 @73 +@554 := @410 @553 +@555 := @554 @417 +@556 := @479 @73 +@558 := @556 @153 @141 +@560 := @510 (@439 @73) +@568 := (hF : @555) -> (hA : @558) -> (hne : @426) -> @429 (fun (ro : @428) => @435 (@560 @412 @17)) +@577 := {fn : @83} -> + {args : @137} -> + {env : @361} -> + {F : @335} -> {o : @337} -> (hB : @549) -> (hfn : @552) -> (hwt : @537) -> (hbind : @408) -> @568 +@578 := @547 @103 +@580 := @551 (@386 @103) +@581 := @394 @103 +@582 := @536 @581 +@584 := @399 (@400 @103) +@596 := {args : @137} -> + {env : @361} -> + {F : @335} -> + {o : @337} -> + (hB : @549) -> (hfn : @580) -> (hwt : @582) -> (hbind : @398 (@584 @139 @76) @407) -> @568 +@597 := @578 @62 +@599 := @283 (@230 @57) +@601 := @133 @599 @581 +@603 := @58 (@5 @153) +@605 := @603 (@283 @57) +@609 := @398 (@584 @605 @76) @407 +@611 := @58 (@5 @389) +@613 := @58 (@5 @363) +@615 := @611 (@613 @57) +@617 := @556 @615 @141 +@619 := @58 (@5 @420) +@622 := @58 (@5 #12) +@639 := {env : @361} -> + {F : @335} -> + {o : @337} -> + (hB : @549) -> + (hfn : @580) -> + (hwt : @601) -> + (hbind : @609) -> + (hF : @555) -> + (hA : @617) -> (hne : @426) -> @429 (fun (ro : @428) => @435 (@560 (@619 (@622 @57)) @17)) +@640 := @597 @81 +@642 := @230 (@244 @57) +@644 := @133 @642 @581 +@655 := @398 (@584 @599 @76) (@406 (@77 (@71 @229) (@77 (@74 @282) @76))) +@657 := @613 (@603 @57) +@659 := @556 @657 @141 +@661 := @58 (@5 @412) +@677 := {F : @335} -> + {o : @337} -> + (hB : @549) -> + (hfn : @580) -> + (hwt : @644) -> + (hbind : @655) -> + (hF : @555) -> + (hA : @659) -> (hne : @426) -> @429 (fun (ro : @428) => @435 (@560 (@622 (@661 @57)) @17)) +@678 := @640 @82 +@679 := @302 @581 +@690 := @398 (@584 @642 @76) (@406 (@77 (@71 @243) (@77 (@74 @229) @76))) +@692 := @554 (@416 @82) +@694 := @556 @605 @141 +@695 := @431 @82 +@713 := {o : @337} -> + (hB : @549) -> + (hfn : @580) -> + (hwt : @679) -> + (hbind : @690) -> + (hF : @692) -> + (hA : @694) -> + (hne : @426) -> @429 (fun (ro : @428) => @430 (@695 @153 @17) (@560 (@661 (@611 @57)) @17)) +@714 := @678 @324 +@715 := @309 @581 +@726 := @398 (@584 @301 @76) (@406 (@77 (@71 @226) (@77 (@74 @243) @76))) +@727 := @556 @599 +@729 := @322 @147 @139 +@730 := @727 @729 +@732 := @322 @153 @147 +@751 := (hB : @549) -> + (hfn : @580) -> + (hwt : @715) -> + (hbind : @726) -> + (hF : @692) -> + (hA : @730) -> + (hne : @338 @732 @343) -> + @429 (fun (ro : @428) => @430 (@695 (@322 @389 @363) @17) (@560 @615 @17)) +@752 := @714 @107 +@753 := @316 @581 +@764 := @398 (@584 @308 @76) (@406 (@77 (@71 @240) (@77 (@74 @226) @76))) +@765 := @556 @642 +@767 := @322 @139 @141 +@786 := (hfn : @580) -> + (hwt : @753) -> + (hbind : @764) -> + (hF : @692) -> + (hA : @765 @767) -> + (hne : @338 @729 @343) -> + @429 (fun (ro : @428) => @430 (@695 (@322 @363 @153) @17) (@560 @657 @17)) +@787 := Eq.refl.{1} +@790 := @752 (@787 @372 @550) +@791 := @320 @581 +@802 := @398 (@584 @315 @76) (@406 (@77 (@71 @6) (@77 (@74 @240) @76))) +@803 := @556 @301 +@805 := @322 @141 @143 +@821 := (hwt : @791) -> + (hbind : @802) -> + (hF : @692) -> + (hA : @803 @805) -> + (hne : @338 @767 @343) -> @429 (fun (ro : @428) => @430 (@695 @732 @17) (@560 @605 @17)) +@822 := @790 @319 +@824 := @584 @62 @76 +@827 := @398 @824 (@406 @81) +@828 := @556 @308 +@830 := @322 @143 @12 +@845 := (hbind : @827) -> + (hF : @692) -> + (hA : @828 @830) -> + (hne : @338 @805 @343) -> @429 (fun (ro : @428) => @430 (@695 @729 @17) (@560 @599 @17)) +@848 := @822 (@787 @397 @824) +@849 := @556 @315 +@851 := @322 @12 @4 +@865 := (hF : @692) -> + (hA : @849 @851) -> + (hne : @338 @830 @343) -> @429 (fun (ro : @428) => @430 (@695 @767 @17) (@560 @642 @17)) +@868 := @848 (@787 @409 @553) +@882 := (hA : @556 @62 @324) -> + (hne : @338 @851 @343) -> @429 (fun (ro : @428) => @430 (@695 @805 @17) (@560 @301 @17)) +@883 := @868 @334 +@894 := (hne : @338 @324 @343) -> @429 (fun (ro : @428) => @430 (@695 @830 @17) (@560 @308 @17)) +@895 := @883 @356 +@901 := @430 (@695 @851 @17) (@560 @315 @17) +@903 := @429 (fun (ro : @428) => @901) +@905 := @429 (fun (__e_ro : @428) => @901) +@910 := LexLeanPreservation.Rust.RepresentableL (@59 (@58 @18 @57)) +@911 := (__e_hrep : @910) -> @905 +@912 := fun (__e_hrep : @910) => @895 +@913 := (b : @3) -> @911 +@914 := fun (b : @3) => @912 +@915 := (a : @3) -> @913 +@916 := fun (a : @3) => @914 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R11/RustCore.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R11/RustCore.lean new file mode 100644 index 000000000..5f6871455 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R11/RustCore.lean @@ -0,0 +1,33 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.RustCore +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1], types := [.int, .int], result := .int, + body := (.prim .intSub [(.prim .intMul [(.var 0), (.value .int (.int (-3)))]), (.prim .intNeg [(.prim .intRem [(.prim .intQuot [(.var 0), (.var 1), (.value .int (.int 1))]), (.var 1), (.value .int (.int 0))])])]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .core, items := [ + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .int }, { pattern := (.bind (.generated .binding 1)), type := .int }] (.fallible .int) (.mk [(.mk (.bind (.generated .operand 10)) none (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.int (-3))))] (.call (.runtime .intMul) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] true)))), (.mk (.bind (.generated .operand 11)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 5)) none (.lit (.int 1)))] (.call (.runtime .intQuot) [(.move (.generated .operand 3)), (.move (.generated .operand 4)), (.move (.generated .operand 5))] true)))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 8)) none (.lit (.int 0)))] (.call (.runtime .intRem) [(.move (.generated .operand 6)), (.move (.generated .operand 7)), (.move (.generated .operand 8))] false))))] (.call (.runtime .intNeg) [(.move (.generated .operand 9))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false)))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 10)) none (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.int (-3))))] (.call (.runtime .intMul) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] true)))), (.mk (.bind (.generated .operand 11)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 5)) none (.lit (.int 1)))] (.call (.runtime .intQuot) [(.move (.generated .operand 3)), (.move (.generated .operand 4)), (.move (.generated .operand 5))] true)))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 8)) none (.lit (.int 0)))] (.call (.runtime .intRem) [(.move (.generated .operand 6)), (.move (.generated .operand 7)), (.move (.generated .operand 8))] false))))] (.call (.runtime .intNeg) [(.move (.generated .operand 9))] true))))], (.call (.runtime .intSub) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false), [(1, .int, (some 1)), (0, .int, (some 0))], rfl, rfl, + (Corr.primF (ts := [.int, .int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.int (-3))))]) (tail := (.call (.runtime .intMul) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] true)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 9)) none (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 5)) none (.lit (.int 1)))] (.call (.runtime .intQuot) [(.move (.generated .operand 3)), (.move (.generated .operand 4)), (.move (.generated .operand 5))] true)))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 8)) none (.lit (.int 0)))] (.call (.runtime .intRem) [(.move (.generated .operand 6)), (.move (.generated .operand 7)), (.move (.generated .operand 8))] false))))]) (tail := (.call (.runtime .intNeg) [(.move (.generated .operand 9))] true)) (Corr.prim (ts := [.int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 6)) none (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 5)) none (.lit (.int 1)))] (.call (.runtime .intQuot) [(.move (.generated .operand 3)), (.move (.generated .operand 4)), (.move (.generated .operand 5))] true)))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 8)) none (.lit (.int 0)))]) (tail := (.call (.runtime .intRem) [(.move (.generated .operand 6)), (.move (.generated .operand 7)), (.move (.generated .operand 8))] false)) (Corr.prim (ts := [.int, .int, .int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 5)) none (.lit (.int 1)))]) (tail := (.call (.runtime .intQuot) [(.move (.generated .operand 3)), (.move (.generated .operand 4)), (.move (.generated .operand 5))] true)) (Corr.prim (ts := [.int, .int, .int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | _ + 1 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.RustCore diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R11/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R11/RustStd.lean new file mode 100644 index 000000000..2d46e6d7d --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R11/RustStd.lean @@ -0,0 +1,33 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1], types := [.int, .int], result := .int, + body := (.prim .intSub [(.prim .intMul [(.var 0), (.value .int (.int (-3)))]), (.prim .intNeg [(.prim .intRem [(.prim .intQuot [(.var 0), (.var 1), (.value .int (.int 1))]), (.var 1), (.value .int (.int 0))])])]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .int }, { pattern := (.bind (.generated .binding 1)), type := .int }] (.fallible .int) (.mk [(.mk (.bind (.generated .operand 10)) none (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.int (-3))))] (.call (.runtime .intMul) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] true)))), (.mk (.bind (.generated .operand 11)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 5)) none (.lit (.int 1)))] (.call (.runtime .intQuot) [(.move (.generated .operand 3)), (.move (.generated .operand 4)), (.move (.generated .operand 5))] true)))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 8)) none (.lit (.int 0)))] (.call (.runtime .intRem) [(.move (.generated .operand 6)), (.move (.generated .operand 7)), (.move (.generated .operand 8))] false))))] (.call (.runtime .intNeg) [(.move (.generated .operand 9))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false)))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 10)) none (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.int (-3))))] (.call (.runtime .intMul) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] true)))), (.mk (.bind (.generated .operand 11)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 5)) none (.lit (.int 1)))] (.call (.runtime .intQuot) [(.move (.generated .operand 3)), (.move (.generated .operand 4)), (.move (.generated .operand 5))] true)))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 8)) none (.lit (.int 0)))] (.call (.runtime .intRem) [(.move (.generated .operand 6)), (.move (.generated .operand 7)), (.move (.generated .operand 8))] false))))] (.call (.runtime .intNeg) [(.move (.generated .operand 9))] true))))], (.call (.runtime .intSub) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false), [(1, .int, (some 1)), (0, .int, (some 0))], rfl, rfl, + (Corr.primF (ts := [.int, .int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.int (-3))))]) (tail := (.call (.runtime .intMul) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] true)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 9)) none (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 5)) none (.lit (.int 1)))] (.call (.runtime .intQuot) [(.move (.generated .operand 3)), (.move (.generated .operand 4)), (.move (.generated .operand 5))] true)))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 8)) none (.lit (.int 0)))] (.call (.runtime .intRem) [(.move (.generated .operand 6)), (.move (.generated .operand 7)), (.move (.generated .operand 8))] false))))]) (tail := (.call (.runtime .intNeg) [(.move (.generated .operand 9))] true)) (Corr.prim (ts := [.int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 6)) none (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 5)) none (.lit (.int 1)))] (.call (.runtime .intQuot) [(.move (.generated .operand 3)), (.move (.generated .operand 4)), (.move (.generated .operand 5))] true)))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 8)) none (.lit (.int 0)))]) (tail := (.call (.runtime .intRem) [(.move (.generated .operand 6)), (.move (.generated .operand 7)), (.move (.generated .operand 8))] false)) (Corr.prim (ts := [.int, .int, .int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 5)) none (.lit (.int 1)))]) (tail := (.call (.runtime .intQuot) [(.move (.generated .operand 3)), (.move (.generated .operand 4)), (.move (.generated .operand 5))] true)) (Corr.prim (ts := [.int, .int, .int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | _ + 1 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R12.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R12.lean similarity index 98% rename from examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R12.lean rename to examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R12.lean index 1f443097b..e300cfce6 100644 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R12.lean +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R12.lean @@ -18,7 +18,7 @@ set_option maxRecDepth 100000 set_option maxHeartbeats 0 set_option synthInstance.maxHeartbeats 0 set_option linter.unusedVariables false -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12 def __prog : _root_.LexLeanTarget.TargetSyntax.Program := { adts := [{ constructors := [[.nat], [.nat, .nat], []] }], functions := [ @@ -51,4 +51,4 @@ def denote (w : Nat) (h : Nat) : _root_.LexLeanPreservation.Obs := theorem root (w : Nat) (h : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w), (_root_.LexLeanTarget.TargetSyntax.Value.nat h)] (_root_.LexLeanPreservation.Rel (__fits_0 w h) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Coverage.Main.shapes w h))) := _root_.LexLeanPreservation.run_of_funRel (__rel_0 w h) -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12 +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12 diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R12/Compose/RustCore.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R12/Compose/RustCore.lex.tex new file mode 100644 index 000000000..00fa03ad4 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R12/Compose/RustCore.lex.tex @@ -0,0 +1,578 @@ +\begin{lexlean}{RustCore} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.Compose.RustCore} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.RustCore, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.Compose.RustCore.__wt_0 : @16 := @482 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.Compose.RustCore.__wt_0], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.Compose.RustCore.root : @1157 := @1158 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.Compose.RustCore.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.RustCore.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.RustCore.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.RustCore.flags +@3 := Coverage.Types.Shape +@4 := #0 +@6 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.__enc_0 @4 +@7 := LexLeanPreservation.Rust.WT +@8 := LexLeanTarget.TargetSyntax.Ty.adt +@9 := 0 +@10 := @8 @9 +@11 := @7 @0 +@12 := @11 @1 +@13 := @12 @2 +@15 := @13 @6 @10 +@16 := (__v : @3) -> @15 +@17 := fun (__v : @3) => @15 +@18 := LexLeanTarget.TargetSyntax.Value.nat +@19 := @18 @4 +@20 := LexLeanTarget.TargetSyntax.Ty.nat +@21 := LexLeanTarget.TargetSyntax.Program +@22 := LexLeanPreservation.Rust.RCrate +@23 := LexLeanPreservation.Rust.Flags +@24 := Nat +@25 := #3 +@26 := @7 @25 +@27 := #2 +@28 := @26 @27 +@29 := #1 +@36 := {p : @21} -> {c : @22} -> {A : @23} -> (n : @24) -> @28 @29 @19 @20 +@38 := LexLeanPreservation.Rust.wt_nat @0 +@45 := {c : @22} -> {A : @23} -> (n : @24) -> @11 @27 @29 @19 @20 +@46 := @38 @1 +@51 := {A : @23} -> (n : @24) -> @12 @29 @19 @20 +@52 := @46 @2 +@54 := @13 @19 @20 +@55 := (n : @24) -> @54 +@56 := @52 @4 +@57 := LexLeanTarget.TargetSyntax.Value +@58 := LexLeanTarget.TargetSyntax.Ty +@59 := List.nil.{0} +@60 := List.cons.{0} +@61 := @59 @57 +@62 := @60 @57 +@64 := @62 @19 @61 +@65 := @59 @58 +@66 := @60 @58 +@67 := @66 @20 +@68 := @67 @65 +@69 := LexLeanPreservation.Rust.WTL +@77 := {p : @21} -> {c : @22} -> {A : @23} -> @69 @27 @29 @4 @61 @65 +@79 := LexLeanPreservation.Rust.wtl_nil @0 +@80 := @69 @0 +@86 := {c : @22} -> {A : @23} -> @80 @29 @4 @61 @65 +@87 := @79 @1 +@88 := @80 @1 +@92 := {A : @23} -> @88 @4 @61 @65 +@93 := @87 @2 +@94 := @88 @2 +@95 := @94 @61 +@96 := @95 @65 +@97 := List.{0} +@98 := @97 @57 +@99 := @97 @58 +@100 := #6 +@101 := @7 @100 +@102 := #5 +@103 := @101 @102 +@104 := #4 +@107 := @103 @104 @25 @27 +@108 := #7 +@113 := @69 @108 @100 @102 @27 @29 +@114 := #8 +@117 := @69 @114 @108 @100 +@119 := @62 @102 @25 +@120 := @117 @119 +@122 := @66 @104 @27 +@132 := {p : @21} -> + {c : @22} -> + {A : @23} -> + {v : @57} -> {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @107) -> (hs : @113) -> @120 @122 +@134 := LexLeanPreservation.Rust.wtl_cons @0 +@138 := @11 @102 @104 @25 @27 +@142 := @80 @100 @102 @27 @29 +@154 := {c : @22} -> + {A : @23} -> + {v : @57} -> + {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @138) -> (hs : @142) -> @80 @108 @100 @119 @122 +@155 := @134 @1 +@158 := @12 @104 @25 @27 +@161 := @88 @102 @27 @29 +@171 := {A : @23} -> + {v : @57} -> + {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @158) -> (hs : @161) -> @88 @100 @119 @122 +@172 := @155 @2 +@174 := @13 @25 @27 +@176 := @94 @27 @29 +@184 := {v : @57} -> + {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @174) -> (hs : @176) -> @94 @119 @122 +@185 := @172 @19 +@186 := @18 @25 +@187 := @13 @186 +@188 := @187 @27 +@189 := @18 @102 +@190 := @62 @189 +@192 := @94 (@190 @25) +@198 := {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @188) -> (hs : @176) -> @192 @122 +@199 := @185 @20 +@200 := @18 @27 +@202 := @13 @200 @20 +@203 := @18 @104 +@204 := @62 @203 +@206 := @94 (@204 @25) +@207 := @67 @27 +@212 := {vs : @98} -> {ts : @99} -> (h : @202) -> (hs : @176) -> @206 @207 +@213 := @199 @61 +@214 := @18 @29 +@216 := @13 @214 @20 +@217 := @95 @29 +@218 := @62 @186 +@219 := @218 @61 +@220 := @94 @219 +@224 := {ts : @99} -> (h : @216) -> (hs : @217) -> @220 @207 +@225 := @213 @65 +@226 := @62 @200 +@227 := @226 @61 +@228 := @94 @227 +@229 := @228 @68 +@231 := (h : @54) -> (hs : @96) -> @229 +@232 := @225 @56 +@233 := @62 @214 +@234 := @233 @61 +@236 := @94 @234 @68 +@237 := (hs : @96) -> @236 +@238 := @232 @93 +@240 := @94 @64 @68 +@241 := Eq.{1} +@242 := Option.{0} +@243 := @242 @99 +@244 := @241 @243 +@245 := LexLeanPreservation.Rust.adtFields +@249 := @244 (@245 @100 @25 @27) +@250 := Option.some.{0} +@251 := @250 @99 +@252 := @251 @4 +@253 := @249 @252 +@256 := @7 @114 @108 @100 +@257 := LexLeanTarget.TargetSyntax.Value.adt +@259 := @257 @104 @25 +@260 := @256 @259 +@261 := @8 @102 +@271 := {p : @21} -> + {c : @22} -> + {A : @23} -> + {i : @24} -> {k : @24} -> {fs : @98} -> {tys : @99} -> (h : @253) -> (hf : @113) -> @260 @261 +@273 := LexLeanPreservation.Rust.wt_adt @0 +@274 := @245 @0 +@278 := @244 (@274 @25 @27) @252 +@290 := {c : @22} -> + {A : @23} -> + {i : @24} -> + {k : @24} -> {fs : @98} -> {tys : @99} -> (h : @278) -> (hf : @142) -> @11 @108 @100 @259 @261 +@291 := @273 @1 +@301 := {A : @23} -> + {i : @24} -> + {k : @24} -> {fs : @98} -> {tys : @99} -> (h : @278) -> (hf : @161) -> @12 @100 @259 @261 +@302 := @291 @2 +@303 := @13 @259 +@310 := {i : @24} -> + {k : @24} -> {fs : @98} -> {tys : @99} -> (h : @278) -> (hf : @176) -> @303 @261 +@311 := @302 @9 +@312 := @274 @9 +@321 := {k : @24} -> + {fs : @98} -> {tys : @99} -> (h : @244 (@312 @27) @252) -> (hf : @176) -> @303 @10 +@322 := @311 @9 +@323 := @312 @9 +@324 := @244 @323 +@325 := @324 @252 +@326 := @257 @9 +@333 := {fs : @98} -> {tys : @99} -> (h : @325) -> (hf : @176) -> @13 (@326 @25) @10 +@334 := @322 @64 +@335 := @228 @29 +@341 := {tys : @99} -> (h : @325) -> (hf : @335) -> @13 (@326 @219) @10 +@342 := @334 @68 +@349 := (h : @324 (@251 @68)) -> (hf : @236) -> @13 (@326 @227) @10 +@350 := Eq.refl.{1} +@351 := @350 @243 +@353 := @342 (@351 @323) +@357 := (hf : @240) -> @13 (@326 @234) @10 +@358 := @353 @238 +@361 := @13 (@326 @64) @10 +@362 := fun (__x0 : @24) => @358 +@363 := @52 @29 +@364 := @233 @64 +@365 := @67 @68 +@366 := @172 @214 +@367 := @13 @203 +@368 := @367 @27 +@369 := @18 @100 +@370 := @62 @369 +@372 := @94 (@370 @25) +@378 := {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @368) -> (hs : @176) -> @372 @122 +@379 := @366 @20 +@380 := @187 @20 +@385 := {vs : @98} -> {ts : @99} -> (h : @380) -> (hs : @176) -> @192 @207 +@386 := @379 @64 +@387 := @204 @219 +@388 := @94 @387 +@392 := {ts : @99} -> (h : @202) -> (hs : @335) -> @388 @207 +@393 := @386 @68 +@394 := @218 @227 +@395 := @94 @394 +@398 := (h : @216) -> (hs : @236) -> @395 @365 +@399 := @393 @363 +@400 := @226 @234 +@401 := @94 @400 +@402 := @401 @365 +@403 := (hs : @240) -> @402 +@404 := @399 @238 +@406 := @94 @364 @365 +@407 := 1 +@408 := @311 @407 +@409 := @312 @407 +@410 := @244 @409 +@411 := @410 @252 +@412 := @257 @407 +@419 := {fs : @98} -> {tys : @99} -> (h : @411) -> (hf : @176) -> @13 (@412 @25) @10 +@420 := @408 @364 +@427 := {tys : @99} -> (h : @411) -> (hf : @395 @29) -> @13 (@412 @387) @10 +@428 := @420 @365 +@435 := (h : @410 (@251 @365)) -> (hf : @402) -> @13 (@412 @394) @10 +@437 := @428 (@351 @409) +@441 := (hf : @406) -> @13 (@412 @400) @10 +@442 := @437 @404 +@445 := @13 (@412 @364) @10 +@447 := fun (__x0 : @24) => fun (__x1 : @24) => @442 +@448 := 2 +@449 := @311 @448 +@450 := @312 @448 +@451 := @244 @450 +@452 := @451 @252 +@453 := @257 @448 +@460 := {fs : @98} -> {tys : @99} -> (h : @452) -> (hf : @176) -> @13 (@453 @25) @10 +@461 := @449 @61 +@464 := @13 (@453 @61) @10 +@467 := {tys : @99} -> (h : @452) -> (hf : @217) -> @464 +@468 := @461 @65 +@472 := (h : @451 (@251 @65)) -> (hf : @96) -> @464 +@475 := @468 (@351 @450) @93 +@482 := fun (__v : @3) => Coverage.Types.Shape.casesOn.{0} @17 @4 @362 @447 @475 +@483 := @52 @27 +@486 := Prod.{0, 0} @24 @57 +@489 := Prod.mk.{0, 0} @24 @57 +@490 := @489 @407 +@491 := @490 @214 +@492 := @489 @9 +@493 := @492 @200 +@494 := @59 @486 +@495 := @60 @486 +@497 := @495 @493 @494 +@499 := @495 @491 @497 +@500 := Bool.true +@501 := LexLeanTarget.TargetSyntax.Function +@502 := LexLeanTarget.TargetSyntax.Program.functions +@503 := @502 @0 +@504 := @59 @24 +@505 := LexLeanTarget.TargetSyntax.Ty.unit +@506 := LexLeanTarget.TargetSyntax.Value.unit +@509 := LexLeanTarget.TargetSyntax.Expr.value @505 @506 +@514 := LexLeanTarget.TargetSyntax.Function.mk @504 @65 @505 @509 +@519 := List.getD.{0} @501 @503 @9 @514 +@523 := fun (__e_n : @24) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.RustCore.root @4 @9 +@524 := @379 @61 +@525 := @204 @61 +@530 := {ts : @99} -> (h : @202) -> (hs : @217) -> @94 @525 @207 +@531 := @524 @65 +@534 := (h : @216) -> (hs : @96) -> @220 @68 +@536 := @531 @363 @93 +@537 := @172 @200 +@539 := @13 @189 @27 +@540 := @18 @108 +@541 := @62 @540 +@549 := {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @539) -> (hs : @176) -> @94 (@541 @25) @122 +@550 := @537 @20 +@556 := {vs : @98} -> {ts : @99} -> (h : @367 @20) -> (hs : @176) -> @372 @207 +@557 := @550 @234 +@558 := @220 @29 +@559 := @190 @525 +@560 := @94 @559 +@564 := {ts : @99} -> (h : @380) -> (hs : @558) -> @560 @207 +@565 := @557 @68 +@568 := (h : @202) -> (hs : @229) -> @388 @365 +@570 := @565 @483 @536 +@571 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.denote +@573 := @571 @27 @29 +@574 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.__fits_0 +@576 := @574 @27 @29 +@580 := @18 (Coverage.Main.shapes @27 @29) +@583 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.root @27 @29 +@584 := Bool +@585 := Ne.{1} +@586 := LexLeanPreservation.Obs +@587 := @585 @586 +@588 := LexLeanPreservation.Rel +@591 := @587 (@588 @29 @4) +@592 := LexLeanPreservation.Obs.stuck +@595 := (f : @584) -> (v : @57) -> @591 @592 +@597 := LexLeanPreservation.Rust.rel_ne_stuck @576 +@604 := (v : @57) -> @587 (@588 (@574 @25 @27) @4) @592 +@605 := @597 @580 +@609 := @587 (@588 @576 @580) @592 +@610 := @97 @486 +@611 := LexLeanPreservation.Rust.FunSem +@612 := #9 +@618 := (n : @24) -> @611 @612 @114 @108 @4 @100 +@619 := @242 @501 +@620 := @241 @619 +@627 := LexLeanRuntime.index (@97 @501) @501 (LexLeanRuntime.instIndexableList @501) +@631 := @620 (@627 (@502 @612) @100) +@632 := @250 @501 +@633 := @632 @102 +@634 := @631 @633 +@635 := #10 +@639 := @69 @635 @612 @114 @102 +@640 := LexLeanTarget.TargetSyntax.Function.types +@641 := @640 @100 +@642 := @639 @641 +@643 := @242 @610 +@644 := @241 @643 +@645 := LexLeanTarget.TargetSemantics.bindAll +@646 := LexLeanTarget.TargetSyntax.Function.parameters +@651 := @644 (@645 (@646 @108) @100 @494) +@652 := @250 @610 +@653 := @652 @102 +@654 := @651 @653 +@655 := @242 @584 +@656 := @241 @655 +@657 := LexLeanPreservation.Rust.fnFallible +@658 := #11 +@661 := @656 (@657 @658 @612) +@662 := @250 @584 +@663 := @662 @102 +@664 := @661 @663 +@665 := LexLeanPreservation.RunConv +@666 := #13 +@670 := @665 @666 @635 @114 @102 +@672 := @587 @100 @592 +@673 := Exists.{1} +@674 := LexLeanPreservation.Rust.ROut +@675 := @673 @674 +@676 := And +@677 := LexLeanPreservation.Rust.RealizesFn +@681 := @676 (@677 @612 @114 @4) +@682 := LexLeanPreservation.Rust.RCI +@684 := @682 #15 +@685 := LexLeanPreservation.Rust.fnIdent +@686 := @685 @666 +@693 := (hne : @672) -> @675 (fun (ro : @674) => @681 (@684 @686 @658 @4)) +@708 := {p : @21} -> + {c : @22} -> + {A : @23} -> + {f : @24} -> + {fn : @501} -> + {args : @98} -> + {env : @610} -> + {F : @584} -> + {o : @586} -> + (hB : @618) -> + (hfn : @634) -> (hwt : @642) -> (hbind : @654) -> (hF : @664) -> (hA : @670) -> @693 +@710 := LexLeanPreservation.Rust.compose @0 +@711 := @611 @0 +@716 := (n : @24) -> @711 @114 @108 @4 @100 +@717 := @627 @503 +@720 := @620 (@717 @100) @633 +@724 := @80 @612 @114 @102 @641 +@725 := @665 @0 +@728 := @725 @635 @114 @102 +@742 := {c : @22} -> + {A : @23} -> + {f : @24} -> + {fn : @501} -> + {args : @98} -> + {env : @610} -> + {F : @584} -> + {o : @586} -> + (hB : @716) -> + (hfn : @720) -> (hwt : @724) -> (hbind : @654) -> (hF : @664) -> (hA : @728) -> @693 +@743 := @710 @1 +@744 := @711 @1 +@748 := (n : @24) -> @744 @108 @4 @100 +@751 := @88 @114 @102 @641 +@752 := @657 @1 +@755 := @656 (@752 @612) @663 +@756 := @682 @1 +@766 := (hbind : @654) -> + (hF : @755) -> (hA : @728) -> (hne : @672) -> @675 (fun (ro : @674) => @681 (@756 @686 @658 @4)) +@776 := {A : @23} -> + {f : @24} -> + {fn : @501} -> + {args : @98} -> + {env : @610} -> {F : @584} -> {o : @586} -> (hB : @748) -> (hfn : @720) -> (hwt : @751) -> @766 +@777 := @743 @2 +@779 := @744 @2 @4 +@781 := (n : @24) -> @779 @100 +@782 := @94 @102 +@783 := @782 @641 +@792 := {f : @24} -> + {fn : @501} -> + {args : @98} -> + {env : @610} -> {F : @584} -> {o : @586} -> (hB : @781) -> (hfn : @720) -> (hwt : @783) -> @766 +@793 := @777 @9 +@795 := (n : @24) -> @779 @9 +@796 := @717 @9 +@797 := @620 @796 +@798 := @797 @633 +@799 := @752 @9 +@800 := @656 @799 +@801 := @800 @663 +@802 := @725 @9 +@804 := @802 @114 @102 +@806 := @756 (@685 @9) +@814 := (hF : @801) -> (hA : @804) -> (hne : @672) -> @675 (fun (ro : @674) => @681 (@806 @658 @4)) +@823 := {fn : @501} -> + {args : @98} -> + {env : @610} -> + {F : @584} -> {o : @586} -> (hB : @795) -> (hfn : @798) -> (hwt : @783) -> (hbind : @654) -> @814 +@824 := @793 @519 +@826 := @797 (@632 @519) +@827 := @640 @519 +@828 := @782 @827 +@830 := @645 (@646 @519) +@842 := {args : @98} -> + {env : @610} -> + {F : @584} -> + {o : @586} -> + (hB : @795) -> (hfn : @826) -> (hwt : @828) -> (hbind : @644 (@830 @100 @494) @653) -> @814 +@843 := @824 @400 +@845 := @541 (@370 @61) +@847 := @94 @845 @827 +@849 := @62 (@18 @114) +@851 := @849 (@541 @61) +@855 := @644 (@830 @851 @494) @653 +@857 := @62 (@18 @635) +@859 := @62 (@18 @612) +@861 := @857 (@859 @61) +@863 := @802 @861 @102 +@865 := @62 (@18 @666) +@868 := @62 (@18 #12) +@885 := {env : @610} -> + {F : @584} -> + {o : @586} -> + (hB : @795) -> + (hfn : @826) -> + (hwt : @847) -> + (hbind : @855) -> + (hF : @801) -> + (hA : @863) -> (hne : @672) -> @675 (fun (ro : @674) => @681 (@806 (@865 (@868 @61)) @4)) +@886 := @843 @499 +@888 := @370 (@190 @61) +@890 := @94 @888 @827 +@901 := @644 (@830 @845 @494) (@652 (@495 (@490 @369) (@495 (@492 @540) @494))) +@903 := @859 (@849 @61) +@905 := @802 @903 @102 +@907 := @62 (@18 @658) +@923 := {F : @584} -> + {o : @586} -> + (hB : @795) -> + (hfn : @826) -> + (hwt : @890) -> + (hbind : @901) -> + (hF : @801) -> + (hA : @905) -> (hne : @672) -> @675 (fun (ro : @674) => @681 (@806 (@868 (@907 @61)) @4)) +@924 := @886 @500 +@925 := @560 @827 +@936 := @644 (@830 @888 @494) (@652 (@495 (@490 @189) (@495 (@492 @369) @494))) +@938 := @800 (@662 @500) +@940 := @802 @851 @102 +@941 := @677 @500 +@959 := {o : @586} -> + (hB : @795) -> + (hfn : @826) -> + (hwt : @925) -> + (hbind : @936) -> + (hF : @938) -> + (hA : @940) -> + (hne : @672) -> @675 (fun (ro : @674) => @676 (@941 @114 @4) (@806 (@907 (@857 @61)) @4)) +@960 := @924 @573 +@961 := @388 @827 +@972 := @644 (@830 @559 @494) (@652 (@495 (@490 @203) (@495 (@492 @189) @494))) +@973 := @802 @845 +@975 := @571 @108 @100 +@976 := @973 @975 +@978 := @571 @114 @108 +@997 := (hB : @795) -> + (hfn : @826) -> + (hwt : @961) -> + (hbind : @972) -> + (hF : @938) -> + (hA : @976) -> + (hne : @587 @978 @592) -> @675 (fun (ro : @674) => @676 (@941 (@571 @635 @612) @4) (@806 @861 @4)) +@998 := @960 @523 +@999 := @395 @827 +@1010 := @644 (@830 @387 @494) (@652 (@495 (@490 @186) (@495 (@492 @203) @494))) +@1011 := @802 @888 +@1013 := @571 @100 @102 +@1032 := (hfn : @826) -> + (hwt : @999) -> + (hbind : @1010) -> + (hF : @938) -> + (hA : @1011 @1013) -> + (hne : @587 @975 @592) -> @675 (fun (ro : @674) => @676 (@941 (@571 @612 @114) @4) (@806 @903 @4)) +@1035 := @998 (@350 @619 @796) +@1036 := @401 @827 +@1047 := @644 (@830 @394 @494) (@652 (@495 (@490 @200) (@495 (@492 @186) @494))) +@1048 := @802 @559 +@1050 := @571 @102 @104 +@1066 := (hwt : @1036) -> + (hbind : @1047) -> + (hF : @938) -> + (hA : @1048 @1050) -> + (hne : @587 @1013 @592) -> @675 (fun (ro : @674) => @676 (@941 @978 @4) (@806 @851 @4)) +@1067 := @1035 @570 +@1069 := @830 @400 @494 +@1072 := @644 @1069 (@652 @499) +@1073 := @802 @387 +@1075 := @571 @104 @25 +@1090 := (hbind : @1072) -> + (hF : @938) -> + (hA : @1073 @1075) -> + (hne : @587 @1050 @592) -> @675 (fun (ro : @674) => @676 (@941 @975 @4) (@806 @845 @4)) +@1093 := @1067 (@350 @643 @1069) +@1094 := @802 @394 +@1096 := @571 @25 @27 +@1110 := (hF : @938) -> + (hA : @1094 @1096) -> + (hne : @587 @1075 @592) -> @675 (fun (ro : @674) => @676 (@941 @1013 @4) (@806 @888 @4)) +@1113 := @1093 (@350 @655 @799) +@1127 := (hA : @802 @400 @573) -> + (hne : @587 @1096 @592) -> @675 (fun (ro : @674) => @676 (@941 @1050 @4) (@806 @559 @4)) +@1128 := @1113 @583 +@1139 := (hne : @587 @573 @592) -> @675 (fun (ro : @674) => @676 (@941 @1075 @4) (@806 @387 @4)) +@1140 := @1128 @605 +@1146 := @676 (@941 @1096 @4) (@806 @394 @4) +@1148 := @675 (fun (ro : @674) => @1146) +@1150 := @675 (fun (__e_ro : @674) => @1146) +@1152 := LexLeanPreservation.Rust.RepresentableL @364 +@1153 := (__e_hrep : @1152) -> @1150 +@1154 := fun (__e_hrep : @1152) => @1140 +@1155 := (h : @24) -> @1153 +@1156 := fun (h : @24) => @1154 +@1157 := (w : @24) -> @1155 +@1158 := fun (w : @24) => @1156 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R12/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R12/Compose/RustStd.lex.tex new file mode 100644 index 000000000..3ca88eb5a --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R12/Compose/RustStd.lex.tex @@ -0,0 +1,578 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.Compose.RustStd.__wt_0 : @16 := @482 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.Compose.RustStd.__wt_0], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.Compose.RustStd.root : @1157 := @1158 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.RustStd.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.RustStd.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.RustStd.flags +@3 := Coverage.Types.Shape +@4 := #0 +@6 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.__enc_0 @4 +@7 := LexLeanPreservation.Rust.WT +@8 := LexLeanTarget.TargetSyntax.Ty.adt +@9 := 0 +@10 := @8 @9 +@11 := @7 @0 +@12 := @11 @1 +@13 := @12 @2 +@15 := @13 @6 @10 +@16 := (__v : @3) -> @15 +@17 := fun (__v : @3) => @15 +@18 := LexLeanTarget.TargetSyntax.Value.nat +@19 := @18 @4 +@20 := LexLeanTarget.TargetSyntax.Ty.nat +@21 := LexLeanTarget.TargetSyntax.Program +@22 := LexLeanPreservation.Rust.RCrate +@23 := LexLeanPreservation.Rust.Flags +@24 := Nat +@25 := #3 +@26 := @7 @25 +@27 := #2 +@28 := @26 @27 +@29 := #1 +@36 := {p : @21} -> {c : @22} -> {A : @23} -> (n : @24) -> @28 @29 @19 @20 +@38 := LexLeanPreservation.Rust.wt_nat @0 +@45 := {c : @22} -> {A : @23} -> (n : @24) -> @11 @27 @29 @19 @20 +@46 := @38 @1 +@51 := {A : @23} -> (n : @24) -> @12 @29 @19 @20 +@52 := @46 @2 +@54 := @13 @19 @20 +@55 := (n : @24) -> @54 +@56 := @52 @4 +@57 := LexLeanTarget.TargetSyntax.Value +@58 := LexLeanTarget.TargetSyntax.Ty +@59 := List.nil.{0} +@60 := List.cons.{0} +@61 := @59 @57 +@62 := @60 @57 +@64 := @62 @19 @61 +@65 := @59 @58 +@66 := @60 @58 +@67 := @66 @20 +@68 := @67 @65 +@69 := LexLeanPreservation.Rust.WTL +@77 := {p : @21} -> {c : @22} -> {A : @23} -> @69 @27 @29 @4 @61 @65 +@79 := LexLeanPreservation.Rust.wtl_nil @0 +@80 := @69 @0 +@86 := {c : @22} -> {A : @23} -> @80 @29 @4 @61 @65 +@87 := @79 @1 +@88 := @80 @1 +@92 := {A : @23} -> @88 @4 @61 @65 +@93 := @87 @2 +@94 := @88 @2 +@95 := @94 @61 +@96 := @95 @65 +@97 := List.{0} +@98 := @97 @57 +@99 := @97 @58 +@100 := #6 +@101 := @7 @100 +@102 := #5 +@103 := @101 @102 +@104 := #4 +@107 := @103 @104 @25 @27 +@108 := #7 +@113 := @69 @108 @100 @102 @27 @29 +@114 := #8 +@117 := @69 @114 @108 @100 +@119 := @62 @102 @25 +@120 := @117 @119 +@122 := @66 @104 @27 +@132 := {p : @21} -> + {c : @22} -> + {A : @23} -> + {v : @57} -> {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @107) -> (hs : @113) -> @120 @122 +@134 := LexLeanPreservation.Rust.wtl_cons @0 +@138 := @11 @102 @104 @25 @27 +@142 := @80 @100 @102 @27 @29 +@154 := {c : @22} -> + {A : @23} -> + {v : @57} -> + {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @138) -> (hs : @142) -> @80 @108 @100 @119 @122 +@155 := @134 @1 +@158 := @12 @104 @25 @27 +@161 := @88 @102 @27 @29 +@171 := {A : @23} -> + {v : @57} -> + {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @158) -> (hs : @161) -> @88 @100 @119 @122 +@172 := @155 @2 +@174 := @13 @25 @27 +@176 := @94 @27 @29 +@184 := {v : @57} -> + {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @174) -> (hs : @176) -> @94 @119 @122 +@185 := @172 @19 +@186 := @18 @25 +@187 := @13 @186 +@188 := @187 @27 +@189 := @18 @102 +@190 := @62 @189 +@192 := @94 (@190 @25) +@198 := {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @188) -> (hs : @176) -> @192 @122 +@199 := @185 @20 +@200 := @18 @27 +@202 := @13 @200 @20 +@203 := @18 @104 +@204 := @62 @203 +@206 := @94 (@204 @25) +@207 := @67 @27 +@212 := {vs : @98} -> {ts : @99} -> (h : @202) -> (hs : @176) -> @206 @207 +@213 := @199 @61 +@214 := @18 @29 +@216 := @13 @214 @20 +@217 := @95 @29 +@218 := @62 @186 +@219 := @218 @61 +@220 := @94 @219 +@224 := {ts : @99} -> (h : @216) -> (hs : @217) -> @220 @207 +@225 := @213 @65 +@226 := @62 @200 +@227 := @226 @61 +@228 := @94 @227 +@229 := @228 @68 +@231 := (h : @54) -> (hs : @96) -> @229 +@232 := @225 @56 +@233 := @62 @214 +@234 := @233 @61 +@236 := @94 @234 @68 +@237 := (hs : @96) -> @236 +@238 := @232 @93 +@240 := @94 @64 @68 +@241 := Eq.{1} +@242 := Option.{0} +@243 := @242 @99 +@244 := @241 @243 +@245 := LexLeanPreservation.Rust.adtFields +@249 := @244 (@245 @100 @25 @27) +@250 := Option.some.{0} +@251 := @250 @99 +@252 := @251 @4 +@253 := @249 @252 +@256 := @7 @114 @108 @100 +@257 := LexLeanTarget.TargetSyntax.Value.adt +@259 := @257 @104 @25 +@260 := @256 @259 +@261 := @8 @102 +@271 := {p : @21} -> + {c : @22} -> + {A : @23} -> + {i : @24} -> {k : @24} -> {fs : @98} -> {tys : @99} -> (h : @253) -> (hf : @113) -> @260 @261 +@273 := LexLeanPreservation.Rust.wt_adt @0 +@274 := @245 @0 +@278 := @244 (@274 @25 @27) @252 +@290 := {c : @22} -> + {A : @23} -> + {i : @24} -> + {k : @24} -> {fs : @98} -> {tys : @99} -> (h : @278) -> (hf : @142) -> @11 @108 @100 @259 @261 +@291 := @273 @1 +@301 := {A : @23} -> + {i : @24} -> + {k : @24} -> {fs : @98} -> {tys : @99} -> (h : @278) -> (hf : @161) -> @12 @100 @259 @261 +@302 := @291 @2 +@303 := @13 @259 +@310 := {i : @24} -> + {k : @24} -> {fs : @98} -> {tys : @99} -> (h : @278) -> (hf : @176) -> @303 @261 +@311 := @302 @9 +@312 := @274 @9 +@321 := {k : @24} -> + {fs : @98} -> {tys : @99} -> (h : @244 (@312 @27) @252) -> (hf : @176) -> @303 @10 +@322 := @311 @9 +@323 := @312 @9 +@324 := @244 @323 +@325 := @324 @252 +@326 := @257 @9 +@333 := {fs : @98} -> {tys : @99} -> (h : @325) -> (hf : @176) -> @13 (@326 @25) @10 +@334 := @322 @64 +@335 := @228 @29 +@341 := {tys : @99} -> (h : @325) -> (hf : @335) -> @13 (@326 @219) @10 +@342 := @334 @68 +@349 := (h : @324 (@251 @68)) -> (hf : @236) -> @13 (@326 @227) @10 +@350 := Eq.refl.{1} +@351 := @350 @243 +@353 := @342 (@351 @323) +@357 := (hf : @240) -> @13 (@326 @234) @10 +@358 := @353 @238 +@361 := @13 (@326 @64) @10 +@362 := fun (__x0 : @24) => @358 +@363 := @52 @29 +@364 := @233 @64 +@365 := @67 @68 +@366 := @172 @214 +@367 := @13 @203 +@368 := @367 @27 +@369 := @18 @100 +@370 := @62 @369 +@372 := @94 (@370 @25) +@378 := {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @368) -> (hs : @176) -> @372 @122 +@379 := @366 @20 +@380 := @187 @20 +@385 := {vs : @98} -> {ts : @99} -> (h : @380) -> (hs : @176) -> @192 @207 +@386 := @379 @64 +@387 := @204 @219 +@388 := @94 @387 +@392 := {ts : @99} -> (h : @202) -> (hs : @335) -> @388 @207 +@393 := @386 @68 +@394 := @218 @227 +@395 := @94 @394 +@398 := (h : @216) -> (hs : @236) -> @395 @365 +@399 := @393 @363 +@400 := @226 @234 +@401 := @94 @400 +@402 := @401 @365 +@403 := (hs : @240) -> @402 +@404 := @399 @238 +@406 := @94 @364 @365 +@407 := 1 +@408 := @311 @407 +@409 := @312 @407 +@410 := @244 @409 +@411 := @410 @252 +@412 := @257 @407 +@419 := {fs : @98} -> {tys : @99} -> (h : @411) -> (hf : @176) -> @13 (@412 @25) @10 +@420 := @408 @364 +@427 := {tys : @99} -> (h : @411) -> (hf : @395 @29) -> @13 (@412 @387) @10 +@428 := @420 @365 +@435 := (h : @410 (@251 @365)) -> (hf : @402) -> @13 (@412 @394) @10 +@437 := @428 (@351 @409) +@441 := (hf : @406) -> @13 (@412 @400) @10 +@442 := @437 @404 +@445 := @13 (@412 @364) @10 +@447 := fun (__x0 : @24) => fun (__x1 : @24) => @442 +@448 := 2 +@449 := @311 @448 +@450 := @312 @448 +@451 := @244 @450 +@452 := @451 @252 +@453 := @257 @448 +@460 := {fs : @98} -> {tys : @99} -> (h : @452) -> (hf : @176) -> @13 (@453 @25) @10 +@461 := @449 @61 +@464 := @13 (@453 @61) @10 +@467 := {tys : @99} -> (h : @452) -> (hf : @217) -> @464 +@468 := @461 @65 +@472 := (h : @451 (@251 @65)) -> (hf : @96) -> @464 +@475 := @468 (@351 @450) @93 +@482 := fun (__v : @3) => Coverage.Types.Shape.casesOn.{0} @17 @4 @362 @447 @475 +@483 := @52 @27 +@486 := Prod.{0, 0} @24 @57 +@489 := Prod.mk.{0, 0} @24 @57 +@490 := @489 @407 +@491 := @490 @214 +@492 := @489 @9 +@493 := @492 @200 +@494 := @59 @486 +@495 := @60 @486 +@497 := @495 @493 @494 +@499 := @495 @491 @497 +@500 := Bool.true +@501 := LexLeanTarget.TargetSyntax.Function +@502 := LexLeanTarget.TargetSyntax.Program.functions +@503 := @502 @0 +@504 := @59 @24 +@505 := LexLeanTarget.TargetSyntax.Ty.unit +@506 := LexLeanTarget.TargetSyntax.Value.unit +@509 := LexLeanTarget.TargetSyntax.Expr.value @505 @506 +@514 := LexLeanTarget.TargetSyntax.Function.mk @504 @65 @505 @509 +@519 := List.getD.{0} @501 @503 @9 @514 +@523 := fun (__e_n : @24) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.RustStd.root @4 @9 +@524 := @379 @61 +@525 := @204 @61 +@530 := {ts : @99} -> (h : @202) -> (hs : @217) -> @94 @525 @207 +@531 := @524 @65 +@534 := (h : @216) -> (hs : @96) -> @220 @68 +@536 := @531 @363 @93 +@537 := @172 @200 +@539 := @13 @189 @27 +@540 := @18 @108 +@541 := @62 @540 +@549 := {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @539) -> (hs : @176) -> @94 (@541 @25) @122 +@550 := @537 @20 +@556 := {vs : @98} -> {ts : @99} -> (h : @367 @20) -> (hs : @176) -> @372 @207 +@557 := @550 @234 +@558 := @220 @29 +@559 := @190 @525 +@560 := @94 @559 +@564 := {ts : @99} -> (h : @380) -> (hs : @558) -> @560 @207 +@565 := @557 @68 +@568 := (h : @202) -> (hs : @229) -> @388 @365 +@570 := @565 @483 @536 +@571 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.denote +@573 := @571 @27 @29 +@574 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.__fits_0 +@576 := @574 @27 @29 +@580 := @18 (Coverage.Main.shapes @27 @29) +@583 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.root @27 @29 +@584 := Bool +@585 := Ne.{1} +@586 := LexLeanPreservation.Obs +@587 := @585 @586 +@588 := LexLeanPreservation.Rel +@591 := @587 (@588 @29 @4) +@592 := LexLeanPreservation.Obs.stuck +@595 := (f : @584) -> (v : @57) -> @591 @592 +@597 := LexLeanPreservation.Rust.rel_ne_stuck @576 +@604 := (v : @57) -> @587 (@588 (@574 @25 @27) @4) @592 +@605 := @597 @580 +@609 := @587 (@588 @576 @580) @592 +@610 := @97 @486 +@611 := LexLeanPreservation.Rust.FunSem +@612 := #9 +@618 := (n : @24) -> @611 @612 @114 @108 @4 @100 +@619 := @242 @501 +@620 := @241 @619 +@627 := LexLeanRuntime.index (@97 @501) @501 (LexLeanRuntime.instIndexableList @501) +@631 := @620 (@627 (@502 @612) @100) +@632 := @250 @501 +@633 := @632 @102 +@634 := @631 @633 +@635 := #10 +@639 := @69 @635 @612 @114 @102 +@640 := LexLeanTarget.TargetSyntax.Function.types +@641 := @640 @100 +@642 := @639 @641 +@643 := @242 @610 +@644 := @241 @643 +@645 := LexLeanTarget.TargetSemantics.bindAll +@646 := LexLeanTarget.TargetSyntax.Function.parameters +@651 := @644 (@645 (@646 @108) @100 @494) +@652 := @250 @610 +@653 := @652 @102 +@654 := @651 @653 +@655 := @242 @584 +@656 := @241 @655 +@657 := LexLeanPreservation.Rust.fnFallible +@658 := #11 +@661 := @656 (@657 @658 @612) +@662 := @250 @584 +@663 := @662 @102 +@664 := @661 @663 +@665 := LexLeanPreservation.RunConv +@666 := #13 +@670 := @665 @666 @635 @114 @102 +@672 := @587 @100 @592 +@673 := Exists.{1} +@674 := LexLeanPreservation.Rust.ROut +@675 := @673 @674 +@676 := And +@677 := LexLeanPreservation.Rust.RealizesFn +@681 := @676 (@677 @612 @114 @4) +@682 := LexLeanPreservation.Rust.RCI +@684 := @682 #15 +@685 := LexLeanPreservation.Rust.fnIdent +@686 := @685 @666 +@693 := (hne : @672) -> @675 (fun (ro : @674) => @681 (@684 @686 @658 @4)) +@708 := {p : @21} -> + {c : @22} -> + {A : @23} -> + {f : @24} -> + {fn : @501} -> + {args : @98} -> + {env : @610} -> + {F : @584} -> + {o : @586} -> + (hB : @618) -> + (hfn : @634) -> (hwt : @642) -> (hbind : @654) -> (hF : @664) -> (hA : @670) -> @693 +@710 := LexLeanPreservation.Rust.compose @0 +@711 := @611 @0 +@716 := (n : @24) -> @711 @114 @108 @4 @100 +@717 := @627 @503 +@720 := @620 (@717 @100) @633 +@724 := @80 @612 @114 @102 @641 +@725 := @665 @0 +@728 := @725 @635 @114 @102 +@742 := {c : @22} -> + {A : @23} -> + {f : @24} -> + {fn : @501} -> + {args : @98} -> + {env : @610} -> + {F : @584} -> + {o : @586} -> + (hB : @716) -> + (hfn : @720) -> (hwt : @724) -> (hbind : @654) -> (hF : @664) -> (hA : @728) -> @693 +@743 := @710 @1 +@744 := @711 @1 +@748 := (n : @24) -> @744 @108 @4 @100 +@751 := @88 @114 @102 @641 +@752 := @657 @1 +@755 := @656 (@752 @612) @663 +@756 := @682 @1 +@766 := (hbind : @654) -> + (hF : @755) -> (hA : @728) -> (hne : @672) -> @675 (fun (ro : @674) => @681 (@756 @686 @658 @4)) +@776 := {A : @23} -> + {f : @24} -> + {fn : @501} -> + {args : @98} -> + {env : @610} -> {F : @584} -> {o : @586} -> (hB : @748) -> (hfn : @720) -> (hwt : @751) -> @766 +@777 := @743 @2 +@779 := @744 @2 @4 +@781 := (n : @24) -> @779 @100 +@782 := @94 @102 +@783 := @782 @641 +@792 := {f : @24} -> + {fn : @501} -> + {args : @98} -> + {env : @610} -> {F : @584} -> {o : @586} -> (hB : @781) -> (hfn : @720) -> (hwt : @783) -> @766 +@793 := @777 @9 +@795 := (n : @24) -> @779 @9 +@796 := @717 @9 +@797 := @620 @796 +@798 := @797 @633 +@799 := @752 @9 +@800 := @656 @799 +@801 := @800 @663 +@802 := @725 @9 +@804 := @802 @114 @102 +@806 := @756 (@685 @9) +@814 := (hF : @801) -> (hA : @804) -> (hne : @672) -> @675 (fun (ro : @674) => @681 (@806 @658 @4)) +@823 := {fn : @501} -> + {args : @98} -> + {env : @610} -> + {F : @584} -> {o : @586} -> (hB : @795) -> (hfn : @798) -> (hwt : @783) -> (hbind : @654) -> @814 +@824 := @793 @519 +@826 := @797 (@632 @519) +@827 := @640 @519 +@828 := @782 @827 +@830 := @645 (@646 @519) +@842 := {args : @98} -> + {env : @610} -> + {F : @584} -> + {o : @586} -> + (hB : @795) -> (hfn : @826) -> (hwt : @828) -> (hbind : @644 (@830 @100 @494) @653) -> @814 +@843 := @824 @400 +@845 := @541 (@370 @61) +@847 := @94 @845 @827 +@849 := @62 (@18 @114) +@851 := @849 (@541 @61) +@855 := @644 (@830 @851 @494) @653 +@857 := @62 (@18 @635) +@859 := @62 (@18 @612) +@861 := @857 (@859 @61) +@863 := @802 @861 @102 +@865 := @62 (@18 @666) +@868 := @62 (@18 #12) +@885 := {env : @610} -> + {F : @584} -> + {o : @586} -> + (hB : @795) -> + (hfn : @826) -> + (hwt : @847) -> + (hbind : @855) -> + (hF : @801) -> + (hA : @863) -> (hne : @672) -> @675 (fun (ro : @674) => @681 (@806 (@865 (@868 @61)) @4)) +@886 := @843 @499 +@888 := @370 (@190 @61) +@890 := @94 @888 @827 +@901 := @644 (@830 @845 @494) (@652 (@495 (@490 @369) (@495 (@492 @540) @494))) +@903 := @859 (@849 @61) +@905 := @802 @903 @102 +@907 := @62 (@18 @658) +@923 := {F : @584} -> + {o : @586} -> + (hB : @795) -> + (hfn : @826) -> + (hwt : @890) -> + (hbind : @901) -> + (hF : @801) -> + (hA : @905) -> (hne : @672) -> @675 (fun (ro : @674) => @681 (@806 (@868 (@907 @61)) @4)) +@924 := @886 @500 +@925 := @560 @827 +@936 := @644 (@830 @888 @494) (@652 (@495 (@490 @189) (@495 (@492 @369) @494))) +@938 := @800 (@662 @500) +@940 := @802 @851 @102 +@941 := @677 @500 +@959 := {o : @586} -> + (hB : @795) -> + (hfn : @826) -> + (hwt : @925) -> + (hbind : @936) -> + (hF : @938) -> + (hA : @940) -> + (hne : @672) -> @675 (fun (ro : @674) => @676 (@941 @114 @4) (@806 (@907 (@857 @61)) @4)) +@960 := @924 @573 +@961 := @388 @827 +@972 := @644 (@830 @559 @494) (@652 (@495 (@490 @203) (@495 (@492 @189) @494))) +@973 := @802 @845 +@975 := @571 @108 @100 +@976 := @973 @975 +@978 := @571 @114 @108 +@997 := (hB : @795) -> + (hfn : @826) -> + (hwt : @961) -> + (hbind : @972) -> + (hF : @938) -> + (hA : @976) -> + (hne : @587 @978 @592) -> @675 (fun (ro : @674) => @676 (@941 (@571 @635 @612) @4) (@806 @861 @4)) +@998 := @960 @523 +@999 := @395 @827 +@1010 := @644 (@830 @387 @494) (@652 (@495 (@490 @186) (@495 (@492 @203) @494))) +@1011 := @802 @888 +@1013 := @571 @100 @102 +@1032 := (hfn : @826) -> + (hwt : @999) -> + (hbind : @1010) -> + (hF : @938) -> + (hA : @1011 @1013) -> + (hne : @587 @975 @592) -> @675 (fun (ro : @674) => @676 (@941 (@571 @612 @114) @4) (@806 @903 @4)) +@1035 := @998 (@350 @619 @796) +@1036 := @401 @827 +@1047 := @644 (@830 @394 @494) (@652 (@495 (@490 @200) (@495 (@492 @186) @494))) +@1048 := @802 @559 +@1050 := @571 @102 @104 +@1066 := (hwt : @1036) -> + (hbind : @1047) -> + (hF : @938) -> + (hA : @1048 @1050) -> + (hne : @587 @1013 @592) -> @675 (fun (ro : @674) => @676 (@941 @978 @4) (@806 @851 @4)) +@1067 := @1035 @570 +@1069 := @830 @400 @494 +@1072 := @644 @1069 (@652 @499) +@1073 := @802 @387 +@1075 := @571 @104 @25 +@1090 := (hbind : @1072) -> + (hF : @938) -> + (hA : @1073 @1075) -> + (hne : @587 @1050 @592) -> @675 (fun (ro : @674) => @676 (@941 @975 @4) (@806 @845 @4)) +@1093 := @1067 (@350 @643 @1069) +@1094 := @802 @394 +@1096 := @571 @25 @27 +@1110 := (hF : @938) -> + (hA : @1094 @1096) -> + (hne : @587 @1075 @592) -> @675 (fun (ro : @674) => @676 (@941 @1013 @4) (@806 @888 @4)) +@1113 := @1093 (@350 @655 @799) +@1127 := (hA : @802 @400 @573) -> + (hne : @587 @1096 @592) -> @675 (fun (ro : @674) => @676 (@941 @1050 @4) (@806 @559 @4)) +@1128 := @1113 @583 +@1139 := (hne : @587 @573 @592) -> @675 (fun (ro : @674) => @676 (@941 @1075 @4) (@806 @387 @4)) +@1140 := @1128 @605 +@1146 := @676 (@941 @1096 @4) (@806 @394 @4) +@1148 := @675 (fun (ro : @674) => @1146) +@1150 := @675 (fun (__e_ro : @674) => @1146) +@1152 := LexLeanPreservation.Rust.RepresentableL @364 +@1153 := (__e_hrep : @1152) -> @1150 +@1154 := fun (__e_hrep : @1152) => @1140 +@1155 := (h : @24) -> @1153 +@1156 := fun (h : @24) => @1154 +@1157 := (w : @24) -> @1155 +@1158 := fun (w : @24) => @1156 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R12/RustCore.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R12/RustCore.lean new file mode 100644 index 000000000..10239e821 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R12/RustCore.lean @@ -0,0 +1,42 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.RustCore +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [{ constructors := [[.nat], [.nat, .nat], []] }], functions := [ + { parameters := [0, 1], types := [.nat, .nat], result := .nat, + body := (.prim .natAdd [(.call 1 [(.build (.adt 1) (.adt 0) [(.var 0), (.var 1)])]), (.prim .natAdd [(.call 1 [(.build (.adt 0) (.adt 0) [(.var 0)])]), (.call 1 [(.build (.adt 2) (.adt 0) [])])])]) }, + { parameters := [0], types := [(.adt 0)], result := .nat, + body := (.«match» .nat (.var 0) [(.arm (.adt 0) [1] (.prim .natMul [(.prim .natMul [(.var 1), (.var 1)]), (.value .nat (.nat 3))])), (.arm (.adt 1) [2, 3] (.prim .natMul [(.var 2), (.var 3)])), (.arm (.adt 2) [] (.value .nat (.nat 0)))]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .core, items := [ + (.enum (.adt 0) [{ number := 0, fields := [.nat] }, { number := 1, fields := [.nat, .nat] }, { number := 2, fields := [] }]), + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .operand 3)) none (.call (.function 1) [(.construct (.adt 0 1) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))])] true)), (.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.call (.function 1) [(.construct (.adt 0 0) [(.copy (.generated .binding 0))])] true)), (.mk (.bind (.generated .operand 2)) none (.call (.function 1) [(.construct (.adt 0 2) [])] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] true))))] (.call (.runtime .natAdd) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))), + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 5)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 5)) [(.mk (.adt 0 0 [(.bind (.generated .binding 1))]) (.mk [(.mk (.bind (.generated .operand 8)) none (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1)))] (.call (.runtime .natMul) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] true)))), (.mk (.bind (.generated .operand 9)) none (.lit (.nat 3)))] (.call (.runtime .natMul) [(.move (.generated .operand 8)), (.move (.generated .operand 9))] false))), (.mk (.adt 0 1 [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))]) (.mk [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 3)))] (.call (.runtime .natMul) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false))), (.mk (.adt 0 2 []) (.mk [] (.succeed (.lit (.nat 0)))))])))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 3)) none (.call (.function 1) [(.construct (.adt 0 1) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))])] true)), (.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.call (.function 1) [(.construct (.adt 0 0) [(.copy (.generated .binding 0))])] true)), (.mk (.bind (.generated .operand 2)) none (.call (.function 1) [(.construct (.adt 0 2) [])] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] true))))], (.call (.runtime .natAdd) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, .nat]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.call (.function 1) [(.construct (.adt 0 0) [(.copy (.generated .binding 0))])] true)), (.mk (.bind (.generated .operand 2)) none (.call (.function 1) [(.construct (.adt 0 2) [])] true))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 5)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 5)) [(.mk (.adt 0 0 [(.bind (.generated .binding 1))]) (.mk [(.mk (.bind (.generated .operand 8)) none (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1)))] (.call (.runtime .natMul) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] true)))), (.mk (.bind (.generated .operand 9)) none (.lit (.nat 3)))] (.call (.runtime .natMul) [(.move (.generated .operand 8)), (.move (.generated .operand 9))] false))), (.mk (.adt 0 1 [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))]) (.mk [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 3)))] (.call (.runtime .natMul) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false))), (.mk (.adt 0 2 []) (.mk [] (.succeed (.lit (.nat 0)))))]), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.adt 0)) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .operand 8)) none (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1)))] (.call (.runtime .natMul) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] true)))), (.mk (.bind (.generated .operand 9)) none (.lit (.nat 3)))]) (tail := (.call (.runtime .natMul) [(.move (.generated .operand 8)), (.move (.generated .operand 9))] false)) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (2, .nat, (some 2)), (0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 3)))]) (tail := (.call (.runtime .natMul) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false)) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.succeed (.lit (.nat 0)))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl)))) rfl rfl rfl (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natMul) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl)⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | _ + 2 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.RustCore diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R12/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R12/RustStd.lean new file mode 100644 index 000000000..6a9cb0442 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R12/RustStd.lean @@ -0,0 +1,42 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [{ constructors := [[.nat], [.nat, .nat], []] }], functions := [ + { parameters := [0, 1], types := [.nat, .nat], result := .nat, + body := (.prim .natAdd [(.call 1 [(.build (.adt 1) (.adt 0) [(.var 0), (.var 1)])]), (.prim .natAdd [(.call 1 [(.build (.adt 0) (.adt 0) [(.var 0)])]), (.call 1 [(.build (.adt 2) (.adt 0) [])])])]) }, + { parameters := [0], types := [(.adt 0)], result := .nat, + body := (.«match» .nat (.var 0) [(.arm (.adt 0) [1] (.prim .natMul [(.prim .natMul [(.var 1), (.var 1)]), (.value .nat (.nat 3))])), (.arm (.adt 1) [2, 3] (.prim .natMul [(.var 2), (.var 3)])), (.arm (.adt 2) [] (.value .nat (.nat 0)))]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.enum (.adt 0) [{ number := 0, fields := [.nat] }, { number := 1, fields := [.nat, .nat] }, { number := 2, fields := [] }]), + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .operand 3)) none (.call (.function 1) [(.construct (.adt 0 1) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))])] true)), (.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.call (.function 1) [(.construct (.adt 0 0) [(.copy (.generated .binding 0))])] true)), (.mk (.bind (.generated .operand 2)) none (.call (.function 1) [(.construct (.adt 0 2) [])] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] true))))] (.call (.runtime .natAdd) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))), + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 5)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 5)) [(.mk (.adt 0 0 [(.bind (.generated .binding 1))]) (.mk [(.mk (.bind (.generated .operand 8)) none (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1)))] (.call (.runtime .natMul) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] true)))), (.mk (.bind (.generated .operand 9)) none (.lit (.nat 3)))] (.call (.runtime .natMul) [(.move (.generated .operand 8)), (.move (.generated .operand 9))] false))), (.mk (.adt 0 1 [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))]) (.mk [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 3)))] (.call (.runtime .natMul) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false))), (.mk (.adt 0 2 []) (.mk [] (.succeed (.lit (.nat 0)))))])))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 3)) none (.call (.function 1) [(.construct (.adt 0 1) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))])] true)), (.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.call (.function 1) [(.construct (.adt 0 0) [(.copy (.generated .binding 0))])] true)), (.mk (.bind (.generated .operand 2)) none (.call (.function 1) [(.construct (.adt 0 2) [])] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] true))))], (.call (.runtime .natAdd) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, .nat]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.call (.function 1) [(.construct (.adt 0 0) [(.copy (.generated .binding 0))])] true)), (.mk (.bind (.generated .operand 2)) none (.call (.function 1) [(.construct (.adt 0 2) [])] true))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 5)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 5)) [(.mk (.adt 0 0 [(.bind (.generated .binding 1))]) (.mk [(.mk (.bind (.generated .operand 8)) none (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1)))] (.call (.runtime .natMul) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] true)))), (.mk (.bind (.generated .operand 9)) none (.lit (.nat 3)))] (.call (.runtime .natMul) [(.move (.generated .operand 8)), (.move (.generated .operand 9))] false))), (.mk (.adt 0 1 [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))]) (.mk [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 3)))] (.call (.runtime .natMul) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false))), (.mk (.adt 0 2 []) (.mk [] (.succeed (.lit (.nat 0)))))]), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.adt 0)) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .operand 8)) none (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1)))] (.call (.runtime .natMul) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] true)))), (.mk (.bind (.generated .operand 9)) none (.lit (.nat 3)))]) (tail := (.call (.runtime .natMul) [(.move (.generated .operand 8)), (.move (.generated .operand 9))] false)) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (2, .nat, (some 2)), (0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 3)))]) (tail := (.call (.runtime .natMul) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false)) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.succeed (.lit (.nat 0)))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl)))) rfl rfl rfl (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natMul) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl)⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | _ + 2 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R13.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R13.lean similarity index 98% rename from examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R13.lean rename to examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R13.lean index b404a5dbf..73e41df85 100644 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R13.lean +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R13.lean @@ -18,7 +18,7 @@ set_option maxRecDepth 100000 set_option maxHeartbeats 0 set_option synthInstance.maxHeartbeats 0 set_option linter.unusedVariables false -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13 def __prog : _root_.LexLeanTarget.TargetSyntax.Program := { adts := [{ constructors := [[], [(.adt 0), .nat, (.adt 0)]] }], functions := [ @@ -52,4 +52,4 @@ def denote (n : Nat) : _root_.LexLeanPreservation.Obs := theorem root (n : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat n)] (_root_.LexLeanPreservation.Rel (__fits_0 n) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Coverage.Main.treeTotal n))) := _root_.LexLeanPreservation.run_of_funRel (__rel_0 n) -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13 +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13 diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R13/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R13/Compose/RustStd.lex.tex new file mode 100644 index 000000000..8bdaa53bb --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R13/Compose/RustStd.lex.tex @@ -0,0 +1,585 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.Compose.RustStd.__wt_0 : @520 := @519 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.Compose.RustStd.__wt_0], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.Compose.RustStd.root : @1152 := @1153 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.RustStd.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.RustStd.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.RustStd.flags +@3 := Coverage.Types.Tree +@4 := #0 +@5 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.__enc_0 +@6 := @5 @4 +@7 := LexLeanPreservation.Rust.WT +@8 := LexLeanTarget.TargetSyntax.Ty.adt +@9 := 0 +@10 := @8 @9 +@11 := @7 @0 +@12 := @11 @1 +@13 := @12 @2 +@15 := @13 @6 @10 +@16 := fun (__v : @3) => @15 +@17 := LexLeanTarget.TargetSyntax.Value +@18 := LexLeanTarget.TargetSyntax.Ty +@19 := List.nil.{0} +@20 := List.cons.{0} +@21 := @19 @17 +@22 := @19 @18 +@23 := LexLeanTarget.TargetSyntax.Program +@24 := LexLeanPreservation.Rust.RCrate +@25 := LexLeanPreservation.Rust.Flags +@26 := LexLeanPreservation.Rust.WTL +@27 := #2 +@28 := @26 @27 +@29 := #1 +@36 := {p : @23} -> {c : @24} -> {A : @25} -> @28 @29 @4 @21 @22 +@38 := LexLeanPreservation.Rust.wtl_nil @0 +@39 := @26 @0 +@45 := {c : @24} -> {A : @25} -> @39 @29 @4 @21 @22 +@46 := @38 @1 +@47 := @39 @1 +@51 := {A : @25} -> @47 @4 @21 @22 +@52 := @46 @2 +@53 := @47 @2 +@54 := @53 @21 +@55 := @54 @22 +@56 := Nat +@57 := List.{0} +@58 := @57 @17 +@59 := @57 @18 +@60 := Eq.{1} +@61 := Option.{0} +@62 := @61 @59 +@63 := @60 @62 +@64 := LexLeanPreservation.Rust.adtFields +@65 := #6 +@66 := @64 @65 +@67 := #3 +@70 := @63 (@66 @67 @27) +@71 := Option.some.{0} +@72 := @71 @59 +@73 := @72 @4 +@74 := @70 @73 +@75 := #7 +@77 := @26 @75 @65 +@78 := #5 +@81 := @77 @78 @27 @29 +@82 := #8 +@85 := @7 @82 @75 @65 +@86 := LexLeanTarget.TargetSyntax.Value.adt +@87 := #4 +@89 := @86 @87 @67 +@90 := @85 @89 +@91 := @8 @78 +@101 := {p : @23} -> + {c : @24} -> + {A : @25} -> + {i : @56} -> {k : @56} -> {fs : @58} -> {tys : @59} -> (h : @74) -> (hf : @81) -> @90 @91 +@103 := LexLeanPreservation.Rust.wt_adt @0 +@104 := @64 @0 +@108 := @63 (@104 @67 @27) @73 +@112 := @39 @65 @78 @27 @29 +@124 := {c : @24} -> + {A : @25} -> + {i : @56} -> + {k : @56} -> {fs : @58} -> {tys : @59} -> (h : @108) -> (hf : @112) -> @11 @75 @65 @89 @91 +@125 := @103 @1 +@128 := @47 @78 @27 @29 +@138 := {A : @25} -> + {i : @56} -> + {k : @56} -> {fs : @58} -> {tys : @59} -> (h : @108) -> (hf : @128) -> @12 @65 @89 @91 +@139 := @125 @2 +@141 := @53 @27 @29 +@142 := @13 @89 +@149 := {i : @56} -> {k : @56} -> {fs : @58} -> {tys : @59} -> (h : @108) -> (hf : @141) -> @142 @91 +@150 := @139 @9 +@151 := @104 @9 +@160 := {k : @56} -> + {fs : @58} -> {tys : @59} -> (h : @63 (@151 @27) @73) -> (hf : @141) -> @142 @10 +@161 := @150 @9 +@162 := @151 @9 +@163 := @63 @162 +@164 := @163 @73 +@165 := @86 @9 +@172 := {fs : @58} -> {tys : @59} -> (h : @164) -> (hf : @141) -> @13 (@165 @67) @10 +@173 := @161 @21 +@174 := @54 @29 +@177 := @13 (@165 @21) @10 +@180 := {tys : @59} -> (h : @164) -> (hf : @174) -> @177 +@181 := @173 @22 +@185 := (h : @163 (@72 @22)) -> (hf : @55) -> @177 +@186 := Eq.refl.{1} +@187 := @186 @62 +@190 := @181 (@187 @162) @52 +@191 := @5 @87 +@192 := LexLeanTarget.TargetSyntax.Value.nat +@193 := @192 @67 +@194 := LexLeanTarget.TargetSyntax.Ty.nat +@197 := @7 @67 @27 @29 +@198 := @192 @4 +@204 := {p : @23} -> {c : @24} -> {A : @25} -> (n : @56) -> @197 @198 @194 +@206 := LexLeanPreservation.Rust.wt_nat @0 +@213 := {c : @24} -> {A : @25} -> (n : @56) -> @11 @27 @29 @198 @194 +@214 := @206 @1 +@219 := {A : @25} -> (n : @56) -> @12 @29 @198 @194 +@220 := @214 @2 +@223 := (n : @56) -> @13 @198 @194 +@224 := @220 @67 +@226 := @13 @193 @194 +@227 := @5 @27 +@228 := @20 @17 +@230 := @228 @227 @21 +@231 := @228 @193 +@232 := @231 @230 +@233 := @228 @191 +@234 := @233 @232 +@235 := @20 @18 +@236 := @235 @10 +@237 := @236 @22 +@238 := @235 @194 +@239 := @238 @237 +@240 := @236 @239 +@245 := @7 @65 @78 @87 @67 @27 +@248 := @26 @82 @75 @65 +@250 := @228 @78 @67 +@251 := @248 @250 +@253 := @235 @87 @27 +@263 := {p : @23} -> + {c : @24} -> + {A : @25} -> + {v : @17} -> {t : @18} -> {vs : @58} -> {ts : @59} -> (h : @245) -> (hs : @81) -> @251 @253 +@265 := LexLeanPreservation.Rust.wtl_cons @0 +@281 := {c : @24} -> + {A : @25} -> + {v : @17} -> + {t : @18} -> + {vs : @58} -> {ts : @59} -> (h : @11 @78 @87 @67 @27) -> (hs : @112) -> @39 @75 @65 @250 @253 +@282 := @265 @1 +@295 := {A : @25} -> + {v : @17} -> + {t : @18} -> {vs : @58} -> {ts : @59} -> (h : @12 @87 @67 @27) -> (hs : @128) -> @47 @65 @250 @253 +@296 := @282 @2 +@306 := {v : @17} -> + {t : @18} -> {vs : @58} -> {ts : @59} -> (h : @13 @67 @27) -> (hs : @141) -> @53 @250 @253 +@307 := @296 @227 +@308 := @5 @78 +@309 := @13 @308 +@310 := @309 @27 +@311 := @5 @75 +@312 := @228 @311 +@320 := {t : @18} -> {vs : @58} -> {ts : @59} -> (h : @310) -> (hs : @141) -> @53 (@312 @67) @253 +@321 := @307 @10 +@323 := @13 @191 @10 +@324 := @5 @65 +@325 := @228 @324 +@327 := @53 (@325 @67) +@328 := @236 @27 +@333 := {vs : @58} -> {ts : @59} -> (h : @323) -> (hs : @141) -> @327 @328 +@334 := @321 @21 +@335 := @5 @67 +@337 := @13 @335 @10 +@338 := @228 @308 +@339 := @338 @21 +@344 := {ts : @59} -> (h : @337) -> (hs : @174) -> @53 @339 @328 +@345 := @334 @22 +@347 := @13 @227 @10 +@348 := @233 @21 +@349 := @53 @348 +@352 := (h : @347) -> (hs : @55) -> @349 @237 +@353 := @345 @4 +@355 := @228 @335 @21 +@357 := @53 @355 @237 +@358 := (hs : @55) -> @357 +@359 := @353 @52 +@361 := @53 @230 @237 +@362 := @296 @193 +@363 := @192 @65 +@365 := @13 @363 @27 +@367 := @228 (@192 @82) +@375 := {t : @18} -> {vs : @58} -> {ts : @59} -> (h : @365) -> (hs : @141) -> @53 (@367 @67) @253 +@376 := @362 @194 +@377 := @192 @78 +@379 := @13 @377 @194 +@381 := @228 (@192 @75) +@383 := @53 (@381 @67) +@384 := @238 @27 +@389 := {vs : @58} -> {ts : @59} -> (h : @379) -> (hs : @141) -> @383 @384 +@390 := @376 @230 +@391 := @192 @87 +@392 := @13 @391 +@393 := @392 @194 +@394 := @349 @29 +@395 := @228 @363 +@396 := @395 @339 +@401 := {ts : @59} -> (h : @393) -> (hs : @394) -> @53 @396 @384 +@402 := @390 @237 +@403 := @228 @377 +@404 := @403 @348 +@405 := @53 @404 +@408 := (h : @226) -> (hs : @357) -> @405 @239 +@409 := @402 @224 +@410 := @228 @391 +@411 := @410 @355 +@413 := @53 @411 @239 +@414 := (hs : @361) -> @413 +@415 := @409 @359 +@417 := @53 @232 @239 +@418 := @296 @191 +@420 := @13 @311 @27 +@421 := #9 +@431 := {t : @18} -> + {vs : @58} -> {ts : @59} -> (h : @420) -> (hs : @141) -> @53 (@228 (@5 @421) @67) @253 +@432 := @418 @10 +@443 := {vs : @58} -> + {ts : @59} -> (h : @13 @324 @10) -> (hs : @141) -> @53 (@228 (@5 @82) @67) @328 +@444 := @432 @232 +@445 := @309 @10 +@446 := @405 @29 +@447 := @312 @396 +@452 := {ts : @59} -> (h : @445) -> (hs : @446) -> @53 @447 @328 +@453 := @444 @239 +@454 := @325 @404 +@455 := @53 @454 +@458 := (h : @323) -> (hs : @413) -> @455 @240 +@459 := @453 @29 +@460 := @338 @411 +@462 := @53 @460 @240 +@463 := (hs : @417) -> @462 +@464 := @459 @415 +@466 := @53 @234 @240 +@467 := 1 +@468 := @150 @467 +@469 := @151 @467 +@470 := @63 @469 +@471 := @470 @73 +@472 := @86 @467 +@479 := {fs : @58} -> {tys : @59} -> (h : @471) -> (hf : @141) -> @13 (@472 @67) @10 +@480 := @468 @234 +@487 := {tys : @59} -> (h : @471) -> (hf : @455 @29) -> @13 (@472 @447) @10 +@488 := @480 @240 +@495 := (h : @470 (@72 @240)) -> (hf : @462) -> @13 (@472 @454) @10 +@497 := @488 (@187 @469) +@501 := (hf : @466) -> @13 (@472 @460) @10 +@502 := @497 @464 +@505 := @13 (@472 @234) @10 +@513 := fun (__x0 : @3) => + fun (__x1 : @56) => + fun (__x2 : @3) => fun (__ih0 : @347) => fun (__ih1 : @13 (@5 @29) @10) => @502 +@519 := fun (__v : @3) => Coverage.Types.Tree.rec.{0} @16 @190 @513 @4 +@520 := (__v : @3) -> @15 +@521 := @192 @29 +@522 := @220 @29 +@524 := @13 @521 @194 +@526 := @228 @521 @21 +@529 := Prod.{0, 0} @56 @17 +@533 := Prod.mk.{0, 0} @56 @17 @9 +@534 := @533 @521 +@535 := @19 @529 +@536 := @20 @529 +@538 := @536 @534 @535 +@539 := Bool.true +@540 := LexLeanTarget.TargetSyntax.Function +@541 := LexLeanTarget.TargetSyntax.Program.functions +@542 := @541 @0 +@543 := @19 @56 +@544 := LexLeanTarget.TargetSyntax.Ty.unit +@545 := LexLeanTarget.TargetSyntax.Value.unit +@548 := LexLeanTarget.TargetSyntax.Expr.value @544 @545 +@553 := LexLeanTarget.TargetSyntax.Function.mk @543 @22 @544 @548 +@558 := List.getD.{0} @540 @542 @9 @553 +@562 := fun (__e_n : @56) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.RustStd.root @4 @9 +@563 := @296 @521 +@572 := {t : @18} -> + {vs : @58} -> {ts : @59} -> (h : @392 @27) -> (hs : @141) -> @53 (@395 @67) @253 +@573 := @563 @194 +@580 := {vs : @58} -> {ts : @59} -> (h : @226) -> (hs : @141) -> @53 (@403 @67) @384 +@581 := @573 @21 +@582 := @192 @27 +@584 := @13 @582 @194 +@585 := @410 @21 +@586 := @53 @585 +@590 := {ts : @59} -> (h : @584) -> (hs : @174) -> @586 @384 +@591 := @581 @22 +@592 := @231 @21 +@593 := @53 @592 +@594 := @238 @22 +@597 := (h : @524) -> (hs : @55) -> @593 @594 +@598 := @591 @522 +@600 := @228 @582 @21 +@601 := @53 @600 +@603 := (hs : @55) -> @601 @594 +@604 := @598 @52 +@605 := @53 @526 +@606 := @605 @594 +@607 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.denote +@608 := @607 @29 +@609 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.__fits_0 +@610 := @609 @29 +@613 := @192 (Coverage.Main.treeTotal @29) +@615 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.root @29 +@616 := Bool +@617 := Ne.{1} +@618 := LexLeanPreservation.Obs +@619 := @617 @618 +@620 := LexLeanPreservation.Rel +@623 := @619 (@620 @29 @4) +@624 := LexLeanPreservation.Obs.stuck +@627 := (f : @616) -> (v : @17) -> @623 @624 +@629 := LexLeanPreservation.Rust.rel_ne_stuck @610 +@635 := (v : @17) -> @619 (@620 (@609 @27) @4) @624 +@636 := @629 @613 +@640 := @619 (@620 @610 @613) @624 +@641 := @57 @529 +@642 := LexLeanPreservation.Rust.FunSem +@648 := (n : @56) -> @642 @421 @82 @75 @4 @65 +@649 := @61 @540 +@650 := @60 @649 +@657 := LexLeanRuntime.index (@57 @540) @540 (LexLeanRuntime.instIndexableList @540) +@661 := @650 (@657 (@541 @421) @65) +@662 := @71 @540 +@663 := @662 @78 +@664 := @661 @663 +@665 := #10 +@669 := @26 @665 @421 @82 @78 +@670 := LexLeanTarget.TargetSyntax.Function.types +@671 := @670 @65 +@672 := @669 @671 +@673 := @61 @641 +@674 := @60 @673 +@675 := LexLeanTarget.TargetSemantics.bindAll +@676 := LexLeanTarget.TargetSyntax.Function.parameters +@681 := @674 (@675 (@676 @75) @65 @535) +@682 := @71 @641 +@683 := @682 @78 +@684 := @681 @683 +@685 := @61 @616 +@686 := @60 @685 +@687 := LexLeanPreservation.Rust.fnFallible +@688 := #11 +@691 := @686 (@687 @688 @421) +@692 := @71 @616 +@693 := @692 @78 +@694 := @691 @693 +@695 := LexLeanPreservation.RunConv +@696 := #13 +@700 := @695 @696 @665 @82 @78 +@702 := @619 @65 @624 +@703 := Exists.{1} +@704 := LexLeanPreservation.Rust.ROut +@705 := @703 @704 +@706 := And +@707 := LexLeanPreservation.Rust.RealizesFn +@711 := @706 (@707 @421 @82 @4) +@712 := LexLeanPreservation.Rust.RCI +@714 := @712 #15 +@715 := LexLeanPreservation.Rust.fnIdent +@716 := @715 @696 +@723 := (hne : @702) -> @705 (fun (ro : @704) => @711 (@714 @716 @688 @4)) +@738 := {p : @23} -> + {c : @24} -> + {A : @25} -> + {f : @56} -> + {fn : @540} -> + {args : @58} -> + {env : @641} -> + {F : @616} -> + {o : @618} -> + (hB : @648) -> + (hfn : @664) -> (hwt : @672) -> (hbind : @684) -> (hF : @694) -> (hA : @700) -> @723 +@740 := LexLeanPreservation.Rust.compose @0 +@741 := @642 @0 +@746 := (n : @56) -> @741 @82 @75 @4 @65 +@747 := @657 @542 +@750 := @650 (@747 @65) @663 +@754 := @39 @421 @82 @78 @671 +@755 := @695 @0 +@758 := @755 @665 @82 @78 +@772 := {c : @24} -> + {A : @25} -> + {f : @56} -> + {fn : @540} -> + {args : @58} -> + {env : @641} -> + {F : @616} -> + {o : @618} -> + (hB : @746) -> + (hfn : @750) -> (hwt : @754) -> (hbind : @684) -> (hF : @694) -> (hA : @758) -> @723 +@773 := @740 @1 +@774 := @741 @1 +@778 := (n : @56) -> @774 @75 @4 @65 +@781 := @47 @82 @78 @671 +@782 := @687 @1 +@785 := @686 (@782 @421) @693 +@786 := @712 @1 +@796 := (hbind : @684) -> + (hF : @785) -> (hA : @758) -> (hne : @702) -> @705 (fun (ro : @704) => @711 (@786 @716 @688 @4)) +@806 := {A : @25} -> + {f : @56} -> + {fn : @540} -> + {args : @58} -> + {env : @641} -> {F : @616} -> {o : @618} -> (hB : @778) -> (hfn : @750) -> (hwt : @781) -> @796 +@807 := @773 @2 +@809 := @774 @2 @4 +@811 := (n : @56) -> @809 @65 +@812 := @53 @78 +@813 := @812 @671 +@822 := {f : @56} -> + {fn : @540} -> + {args : @58} -> + {env : @641} -> {F : @616} -> {o : @618} -> (hB : @811) -> (hfn : @750) -> (hwt : @813) -> @796 +@823 := @807 @9 +@825 := (n : @56) -> @809 @9 +@826 := @747 @9 +@827 := @650 @826 +@828 := @827 @663 +@829 := @782 @9 +@830 := @686 @829 +@831 := @830 @693 +@832 := @755 @9 +@834 := @832 @82 @78 +@836 := @786 (@715 @9) +@844 := (hF : @831) -> (hA : @834) -> (hne : @702) -> @705 (fun (ro : @704) => @711 (@836 @688 @4)) +@853 := {fn : @540} -> + {args : @58} -> + {env : @641} -> + {F : @616} -> {o : @618} -> (hB : @825) -> (hfn : @828) -> (hwt : @813) -> (hbind : @684) -> @844 +@854 := @823 @558 +@856 := @827 (@662 @558) +@857 := @670 @558 +@858 := @812 @857 +@860 := @675 (@676 @558) +@872 := {args : @58} -> + {env : @641} -> + {F : @616} -> + {o : @618} -> + (hB : @825) -> (hfn : @856) -> (hwt : @858) -> (hbind : @674 (@860 @65 @535) @683) -> @844 +@873 := @854 @526 +@874 := @395 @21 +@876 := @53 @874 @857 +@877 := @381 @21 +@881 := @674 (@860 @877 @535) @683 +@884 := @228 (@192 @421) @21 +@905 := {env : @641} -> + {F : @616} -> + {o : @618} -> + (hB : @825) -> + (hfn : @856) -> + (hwt : @876) -> + (hbind : @881) -> + (hF : @831) -> + (hA : @832 @884 @78) -> + (hne : @702) -> @705 (fun (ro : @704) => @711 (@836 (@228 (@192 #12) @21) @4)) +@906 := @873 @538 +@907 := @403 @21 +@909 := @53 @907 @857 +@917 := @674 (@860 @874 @535) (@682 (@536 (@533 @363) @535)) +@918 := @367 @21 +@937 := {F : @616} -> + {o : @618} -> + (hB : @825) -> + (hfn : @856) -> + (hwt : @909) -> + (hbind : @917) -> + (hF : @831) -> + (hA : @832 @918 @78) -> + (hne : @702) -> @705 (fun (ro : @704) => @711 (@836 (@228 (@192 @688) @21) @4)) +@938 := @906 @539 +@939 := @586 @857 +@947 := @674 (@860 @907 @535) (@682 (@536 (@533 @377) @535)) +@949 := @830 (@692 @539) +@951 := @832 @877 @78 +@952 := @707 @539 +@971 := {o : @618} -> + (hB : @825) -> + (hfn : @856) -> + (hwt : @939) -> + (hbind : @947) -> + (hF : @949) -> + (hA : @951) -> + (hne : @702) -> @705 (fun (ro : @704) => @706 (@952 @82 @4) (@836 (@228 (@192 @665) @21) @4)) +@972 := @938 @608 +@973 := @593 @857 +@981 := @674 (@860 @585 @535) (@682 (@536 (@533 @391) @535)) +@982 := @832 @874 +@983 := @607 @65 +@984 := @982 @983 +@985 := @607 @75 +@1003 := (hB : @825) -> + (hfn : @856) -> + (hwt : @973) -> + (hbind : @981) -> + (hF : @949) -> + (hA : @984) -> + (hne : @619 @985 @624) -> @705 (fun (ro : @704) => @706 (@952 (@607 @421) @4) (@836 @884 @4)) +@1004 := @972 @562 +@1005 := @601 @857 +@1013 := @674 (@860 @592 @535) (@682 (@536 (@533 @193) @535)) +@1014 := @832 @907 +@1015 := @607 @78 +@1033 := (hfn : @856) -> + (hwt : @1005) -> + (hbind : @1013) -> + (hF : @949) -> + (hA : @1014 @1015) -> + (hne : @619 @983 @624) -> @705 (fun (ro : @704) => @706 (@952 (@607 @82) @4) (@836 @918 @4)) +@1036 := @1004 (@186 @649 @826) +@1037 := @605 @857 +@1045 := @674 (@860 @600 @535) (@682 (@536 (@533 @582) @535)) +@1046 := @832 @585 +@1047 := @607 @87 +@1063 := (hwt : @1037) -> + (hbind : @1045) -> + (hF : @949) -> + (hA : @1046 @1047) -> + (hne : @619 @1015 @624) -> @705 (fun (ro : @704) => @706 (@952 @985 @4) (@836 @877 @4)) +@1064 := @1036 @604 +@1066 := @860 @526 @535 +@1069 := @674 @1066 (@682 @538) +@1070 := @832 @592 +@1071 := @607 @67 +@1086 := (hbind : @1069) -> + (hF : @949) -> + (hA : @1070 @1071) -> + (hne : @619 @1047 @624) -> @705 (fun (ro : @704) => @706 (@952 @983 @4) (@836 @874 @4)) +@1089 := @1064 (@186 @673 @1066) +@1090 := @832 @600 +@1091 := @607 @27 +@1105 := (hF : @949) -> + (hA : @1090 @1091) -> + (hne : @619 @1071 @624) -> @705 (fun (ro : @704) => @706 (@952 @1015 @4) (@836 @907 @4)) +@1108 := @1089 (@186 @685 @829) +@1122 := (hA : @832 @526 @608) -> + (hne : @619 @1091 @624) -> @705 (fun (ro : @704) => @706 (@952 @1047 @4) (@836 @585 @4)) +@1123 := @1108 @615 +@1134 := (hne : @619 @608 @624) -> @705 (fun (ro : @704) => @706 (@952 @1071 @4) (@836 @592 @4)) +@1135 := @1123 @636 +@1141 := @706 (@952 @1091 @4) (@836 @600 @4) +@1143 := @705 (fun (ro : @704) => @1141) +@1145 := @705 (fun (__e_ro : @704) => @1141) +@1149 := LexLeanPreservation.Rust.RepresentableL (@228 @198 @21) +@1150 := (__e_hrep : @1149) -> @1145 +@1151 := fun (__e_hrep : @1149) => @1135 +@1152 := (n : @56) -> @1150 +@1153 := fun (n : @56) => @1151 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R13/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R13/RustStd.lean new file mode 100644 index 000000000..3d8d010aa --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R13/RustStd.lean @@ -0,0 +1,42 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [{ constructors := [[], [(.adt 0), .nat, (.adt 0)]] }], functions := [ + { parameters := [0], types := [.nat], result := .nat, + body := (.call 1 [(.build (.adt 1) (.adt 0) [(.build (.adt 0) (.adt 0) []), (.var 0), (.build (.adt 1) (.adt 0) [(.build (.adt 0) (.adt 0) []), (.value .nat (.nat 5)), (.build (.adt 0) (.adt 0) [])])])]) }, + { parameters := [0], types := [(.adt 0)], result := .nat, + body := (.«match» .nat (.var 0) [(.arm (.adt 0) [] (.value .nat (.nat 0))), (.arm (.adt 1) [1, 2, 3] (.prim .natAdd [(.prim .natAdd [(.call 1 [(.var 1)]), (.var 2)]), (.call 1 [(.var 3)])]))]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.enum (.adt 0) [{ number := 0, fields := [] }, { number := 1, fields := [(.rc (.adt 0)), .nat, (.rc (.adt 0))] }]), + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible .nat) (.mk [] (.call (.function 1) [(.construct (.adt 0 1) [(.box (.construct (.adt 0 0) [])), (.copy (.generated .binding 0)), (.box (.construct (.adt 0 1) [(.box (.construct (.adt 0 0) [])), (.lit (.nat 5)), (.box (.construct (.adt 0 0) []))]))])] false))), + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 1)) [(.mk (.adt 0 0 []) (.mk [] (.succeed (.lit (.nat 0))))), (.mk (.adt 0 1 [(.bind (.generated .boxed 6)), (.bind (.generated .binding 2)), (.bind (.generated .boxed 7))]) (.mk [(.mk (.bind (.generated .binding 1)) none (.unbox (.generated .boxed 6))), (.mk (.bind (.generated .binding 3)) none (.unbox (.generated .boxed 7))), (.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.call (.function 1) [(.move (.generated .binding 1))] true)), (.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] true)))), (.mk (.bind (.generated .operand 5)) none (.call (.function 1) [(.move (.generated .binding 3))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false)))])))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 1) [(.construct (.adt 0 1) [(.box (.construct (.adt 0 0) [])), (.copy (.generated .binding 0)), (.box (.construct (.adt 0 1) [(.box (.construct (.adt 0 0) [])), (.lit (.nat 5)), (.box (.construct (.adt 0 0) []))]))])] false), [(0, .nat, (some 0))], rfl, rfl, + (Corr.callF (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.adt 0), .nat, (.adt 0)]) (mask := [true, false, true]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.adt 0), .nat, (.adt 0)]) (mask := [true, false, true]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))))) rfl)) (Corr.lNil))))) rfl)) (Corr.lNil))) rfl rfl rfl rfl)⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 1)) [(.mk (.adt 0 0 []) (.mk [] (.succeed (.lit (.nat 0))))), (.mk (.adt 0 1 [(.bind (.generated .boxed 6)), (.bind (.generated .binding 2)), (.bind (.generated .boxed 7))]) (.mk [(.mk (.bind (.generated .binding 1)) none (.unbox (.generated .boxed 6))), (.mk (.bind (.generated .binding 3)) none (.unbox (.generated .boxed 7))), (.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.call (.function 1) [(.move (.generated .binding 1))] true)), (.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] true)))), (.mk (.bind (.generated .operand 5)) none (.call (.function 1) [(.move (.generated .binding 3))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false)))]), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.adt 0)) (U := []) (view := false) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.lit (.nat 0)))) (Corr.mCons (Γ' := [(3, (.adt 0), (some 3)), (2, .nat, (some 2)), (1, (.adt 0), (some 1)), (0, (.adt 0), (some 0))]) (j := 1) (loads := [(.mk (.bind (.generated .binding 1)) none (.unbox (.generated .boxed 6))), (.mk (.bind (.generated .binding 3)) none (.unbox (.generated .boxed 7)))]) (lets := [(.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.call (.function 1) [(.move (.generated .binding 1))] true)), (.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] true)))), (.mk (.bind (.generated .operand 5)) none (.call (.function 1) [(.move (.generated .binding 3))] true))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false)) (Corr.mNil) rfl rfl rfl (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 2)) none (.call (.function 1) [(.move (.generated .binding 1))] true)), (.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl)))) rfl rfl rfl)⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | _ + 2 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R14.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R14.lean similarity index 98% rename from examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R14.lean rename to examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R14.lean index 31d9bfecc..7b82fdcd5 100644 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R14.lean +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R14.lean @@ -18,7 +18,7 @@ set_option maxRecDepth 100000 set_option maxHeartbeats 0 set_option synthInstance.maxHeartbeats 0 set_option linter.unusedVariables false -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14 def __prog : _root_.LexLeanTarget.TargetSyntax.Program := { adts := [{ constructors := [[.nat, .nat]] }, @@ -65,4 +65,4 @@ def denote (a : Nat) (b : Nat) : _root_.LexLeanPreservation.Obs := theorem root (a : Nat) (b : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat a), (_root_.LexLeanTarget.TargetSyntax.Value.nat b)] (_root_.LexLeanPreservation.Rel (__fits_0 a b) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) (Coverage.Main.records a b))) := _root_.LexLeanPreservation.run_of_funRel (__rel_0 a b) -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14 +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14 diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R14/Compose/RustCore.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R14/Compose/RustCore.lex.tex new file mode 100644 index 000000000..5f23cc486 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R14/Compose/RustCore.lex.tex @@ -0,0 +1,776 @@ +\begin{lexlean}{RustCore} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustCore} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.RustCore, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustCore.__wt_0 : @16 := @440 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustCore.__wt_0], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustCore.__wt_1 : @449 := @632 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustCore.__wt_1], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustCore.__wt_2 : @640 := @821 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustCore.__wt_2], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustCore.root : @1560 := @1561 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustCore.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.RustCore.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.RustCore.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.RustCore.flags +@3 := Coverage.Types.Point +@4 := #0 +@6 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.__enc_0 @4 +@7 := LexLeanPreservation.Rust.WT +@8 := LexLeanTarget.TargetSyntax.Ty.adt +@9 := 0 +@10 := @8 @9 +@11 := @7 @0 +@12 := @11 @1 +@13 := @12 @2 +@16 := (__s : @3) -> @13 @6 @10 +@17 := Coverage.Types.Point.x +@18 := @17 @4 +@19 := Coverage.Types.Point.y +@20 := @19 @4 +@21 := LexLeanTarget.TargetSyntax.Value.nat +@22 := @21 @18 +@23 := LexLeanTarget.TargetSyntax.Ty.nat +@24 := LexLeanTarget.TargetSyntax.Program +@25 := LexLeanPreservation.Rust.RCrate +@26 := LexLeanPreservation.Rust.Flags +@27 := Nat +@28 := #3 +@29 := @7 @28 +@30 := #2 +@31 := @29 @30 +@32 := #1 +@33 := @31 @32 +@34 := @21 @4 +@40 := {p : @24} -> {c : @25} -> {A : @26} -> (n : @27) -> @33 @34 @23 +@42 := LexLeanPreservation.Rust.wt_nat @0 +@49 := {c : @25} -> {A : @26} -> (n : @27) -> @11 @30 @32 @34 @23 +@50 := @42 @1 +@55 := {A : @26} -> (n : @27) -> @12 @32 @34 @23 +@56 := @50 @2 +@59 := (n : @27) -> @13 @34 @23 +@60 := @56 @18 +@62 := @13 @22 @23 +@63 := @21 @20 +@64 := @56 @20 +@66 := @13 @63 @23 +@67 := LexLeanTarget.TargetSyntax.Value +@68 := LexLeanTarget.TargetSyntax.Ty +@69 := List.nil.{0} +@70 := List.cons.{0} +@71 := @69 @67 +@72 := @70 @67 +@74 := @72 @63 @71 +@76 := @72 @22 @74 +@77 := @69 @68 +@78 := @70 @68 +@79 := @78 @23 +@80 := @79 @77 +@81 := @79 @80 +@82 := LexLeanPreservation.Rust.WTL +@90 := {p : @24} -> {c : @25} -> {A : @26} -> @82 @30 @32 @4 @71 @77 +@92 := LexLeanPreservation.Rust.wtl_nil @0 +@93 := @82 @0 +@99 := {c : @25} -> {A : @26} -> @93 @32 @4 @71 @77 +@100 := @92 @1 +@101 := @93 @1 +@105 := {A : @26} -> @101 @4 @71 @77 +@106 := @100 @2 +@107 := @101 @2 +@108 := @107 @71 +@109 := @108 @77 +@110 := List.{0} +@111 := @110 @67 +@112 := @110 @68 +@113 := #6 +@114 := @7 @113 +@115 := #5 +@116 := @114 @115 +@117 := #4 +@120 := @116 @117 @28 @30 +@121 := #7 +@126 := @82 @121 @113 @115 @30 @32 +@127 := #8 +@130 := @82 @127 @121 @113 +@132 := @72 @115 @28 +@133 := @130 @132 +@135 := @78 @117 @30 +@145 := {p : @24} -> + {c : @25} -> + {A : @26} -> + {v : @67} -> {t : @68} -> {vs : @111} -> {ts : @112} -> (h : @120) -> (hs : @126) -> @133 @135 +@147 := LexLeanPreservation.Rust.wtl_cons @0 +@151 := @11 @115 @117 @28 @30 +@155 := @93 @113 @115 @30 @32 +@167 := {c : @25} -> + {A : @26} -> + {v : @67} -> + {t : @68} -> {vs : @111} -> {ts : @112} -> (h : @151) -> (hs : @155) -> @93 @121 @113 @132 @135 +@168 := @147 @1 +@171 := @12 @117 @28 @30 +@174 := @101 @115 @30 @32 +@184 := {A : @26} -> + {v : @67} -> + {t : @68} -> {vs : @111} -> {ts : @112} -> (h : @171) -> (hs : @174) -> @101 @113 @132 @135 +@185 := @168 @2 +@187 := @13 @28 @30 +@189 := @107 @30 @32 +@197 := {v : @67} -> + {t : @68} -> {vs : @111} -> {ts : @112} -> (h : @187) -> (hs : @189) -> @107 @132 @135 +@198 := @185 @63 +@200 := @21 (@19 @28) +@213 := {t : @68} -> + {vs : @111} -> + {ts : @112} -> (h : @13 @200 @30) -> (hs : @189) -> @107 (@72 (@21 (@19 @115)) @28) @135 +@214 := @198 @23 +@216 := @21 (@19 @30) +@218 := @13 @216 @23 +@223 := @107 (@72 (@21 (@19 @117)) @28) +@224 := @79 @30 +@229 := {vs : @111} -> {ts : @112} -> (h : @218) -> (hs : @189) -> @223 @224 +@230 := @214 @71 +@232 := @21 (@19 @32) +@234 := @13 @232 @23 +@235 := @108 @32 +@237 := @72 @200 @71 +@242 := {ts : @112} -> (h : @234) -> (hs : @235) -> @107 @237 @224 +@243 := @230 @77 +@245 := @72 @216 @71 +@246 := @107 @245 +@249 := (h : @66) -> (hs : @109) -> @246 @80 +@250 := @243 @64 +@252 := @72 @232 @71 +@254 := @107 @252 @80 +@255 := (hs : @109) -> @254 +@256 := @250 @106 +@258 := @107 @74 @80 +@259 := @185 @22 +@261 := @21 (@17 @28) +@274 := {t : @68} -> + {vs : @111} -> + {ts : @112} -> (h : @13 @261 @30) -> (hs : @189) -> @107 (@72 (@21 (@17 @115)) @28) @135 +@275 := @259 @23 +@277 := @21 (@17 @30) +@289 := {vs : @111} -> + {ts : @112} -> (h : @13 @277 @23) -> (hs : @189) -> @107 (@72 (@21 (@17 @117)) @28) @224 +@290 := @275 @74 +@292 := @21 (@17 @32) +@294 := @13 @292 @23 +@295 := @246 @32 +@297 := @72 @261 @237 +@302 := {ts : @112} -> (h : @294) -> (hs : @295) -> @107 @297 @224 +@303 := @290 @80 +@305 := @72 @277 @245 +@306 := @107 @305 +@309 := (h : @62) -> (hs : @254) -> @306 @81 +@310 := @303 @60 +@312 := @72 @292 @252 +@314 := @107 @312 @81 +@315 := (hs : @258) -> @314 +@316 := @310 @256 +@318 := @107 @76 @81 +@319 := Eq.{1} +@320 := Option.{0} +@321 := @320 @112 +@322 := @319 @321 +@323 := LexLeanPreservation.Rust.adtFields +@327 := @322 (@323 @113 @28 @30) +@328 := Option.some.{0} +@329 := @328 @112 +@330 := @329 @4 +@331 := @327 @330 +@334 := @7 @127 @121 @113 +@335 := LexLeanTarget.TargetSyntax.Value.adt +@337 := @335 @117 @28 +@338 := @334 @337 +@339 := @8 @115 +@349 := {p : @24} -> + {c : @25} -> + {A : @26} -> + {i : @27} -> {k : @27} -> {fs : @111} -> {tys : @112} -> (h : @331) -> (hf : @126) -> @338 @339 +@351 := LexLeanPreservation.Rust.wt_adt @0 +@352 := @323 @0 +@356 := @322 (@352 @28 @30) @330 +@368 := {c : @25} -> + {A : @26} -> + {i : @27} -> + {k : @27} -> {fs : @111} -> {tys : @112} -> (h : @356) -> (hf : @155) -> @11 @121 @113 @337 @339 +@369 := @351 @1 +@379 := {A : @26} -> + {i : @27} -> + {k : @27} -> {fs : @111} -> {tys : @112} -> (h : @356) -> (hf : @174) -> @12 @113 @337 @339 +@380 := @369 @2 +@381 := @13 @337 +@388 := {i : @27} -> + {k : @27} -> {fs : @111} -> {tys : @112} -> (h : @356) -> (hf : @189) -> @381 @339 +@389 := @380 @9 +@390 := @352 @9 +@399 := {k : @27} -> + {fs : @111} -> {tys : @112} -> (h : @322 (@390 @30) @330) -> (hf : @189) -> @381 @10 +@400 := @389 @9 +@401 := @390 @9 +@402 := @322 @401 +@403 := @402 @330 +@404 := @335 @9 +@406 := @13 (@404 @28) +@411 := {fs : @111} -> {tys : @112} -> (h : @403) -> (hf : @189) -> @406 @10 +@412 := @400 @76 +@419 := {tys : @112} -> (h : @403) -> (hf : @306 @32) -> @13 (@404 @297) @10 +@420 := @412 @81 +@421 := @329 @81 +@427 := (h : @402 @421) -> (hf : @314) -> @13 (@404 @305) @10 +@428 := Eq.refl.{1} +@429 := @428 @321 +@431 := @420 (@429 @401) +@435 := (hf : @318) -> @13 (@404 @312) @10 +@436 := @431 @316 +@439 := @13 (@404 @76) @10 +@440 := fun (__s : @3) => @436 +@442 := Coverage.Types.Box @27 +@444 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.__enc_1 @4 +@445 := 1 +@446 := @8 @445 +@449 := (__s : @442) -> @13 @444 @446 +@451 := Coverage.Types.Box.content @27 +@452 := @451 @4 +@454 := Coverage.Types.Box.count @27 +@455 := @454 @4 +@456 := @21 @452 +@457 := @56 @452 +@459 := @13 @456 @23 +@460 := @21 @455 +@461 := @56 @455 +@463 := @13 @460 @23 +@465 := @72 @460 @71 +@467 := @72 @456 @465 +@468 := @185 @460 +@470 := @21 (@454 @28) +@483 := {t : @68} -> + {vs : @111} -> + {ts : @112} -> (h : @13 @470 @30) -> (hs : @189) -> @107 (@72 (@21 (@454 @115)) @28) @135 +@484 := @468 @23 +@486 := @21 (@454 @30) +@498 := {vs : @111} -> + {ts : @112} -> (h : @13 @486 @23) -> (hs : @189) -> @107 (@72 (@21 (@454 @117)) @28) @224 +@499 := @484 @71 +@501 := @21 (@454 @32) +@503 := @13 @501 @23 +@505 := @72 @470 @71 +@510 := {ts : @112} -> (h : @503) -> (hs : @235) -> @107 @505 @224 +@511 := @499 @77 +@513 := @72 @486 @71 +@514 := @107 @513 +@517 := (h : @463) -> (hs : @109) -> @514 @80 +@518 := @511 @461 +@520 := @72 @501 @71 +@522 := @107 @520 @80 +@523 := (hs : @109) -> @522 +@524 := @518 @106 +@526 := @107 @465 @80 +@527 := @185 @456 +@529 := @21 (@451 @28) +@542 := {t : @68} -> + {vs : @111} -> + {ts : @112} -> (h : @13 @529 @30) -> (hs : @189) -> @107 (@72 (@21 (@451 @115)) @28) @135 +@543 := @527 @23 +@545 := @21 (@451 @30) +@557 := {vs : @111} -> + {ts : @112} -> (h : @13 @545 @23) -> (hs : @189) -> @107 (@72 (@21 (@451 @117)) @28) @224 +@558 := @543 @465 +@560 := @21 (@451 @32) +@562 := @13 @560 @23 +@563 := @514 @32 +@565 := @72 @529 @505 +@570 := {ts : @112} -> (h : @562) -> (hs : @563) -> @107 @565 @224 +@571 := @558 @80 +@573 := @72 @545 @513 +@574 := @107 @573 +@577 := (h : @459) -> (hs : @522) -> @574 @81 +@578 := @571 @457 +@580 := @72 @560 @520 +@582 := @107 @580 @81 +@583 := (hs : @526) -> @582 +@584 := @578 @524 +@586 := @107 @467 @81 +@587 := @380 @445 +@588 := @352 @445 +@597 := {k : @27} -> + {fs : @111} -> {tys : @112} -> (h : @322 (@588 @30) @330) -> (hf : @189) -> @381 @446 +@598 := @587 @9 +@599 := @588 @9 +@600 := @322 @599 +@601 := @600 @330 +@606 := {fs : @111} -> {tys : @112} -> (h : @601) -> (hf : @189) -> @406 @446 +@607 := @598 @467 +@614 := {tys : @112} -> (h : @601) -> (hf : @574 @32) -> @13 (@404 @565) @446 +@615 := @607 @81 +@621 := (h : @600 @421) -> (hf : @582) -> @13 (@404 @573) @446 +@623 := @615 (@429 @599) +@627 := (hf : @586) -> @13 (@404 @580) @446 +@628 := @623 @584 +@631 := @13 (@404 @467) @446 +@632 := fun (__s : @442) => @628 +@633 := Coverage.Types.Weights +@635 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.__enc_2 @4 +@636 := 2 +@637 := @8 @636 +@640 := (__s : @633) -> @13 @635 @637 +@641 := Coverage.Types.Weights.base +@642 := @641 @4 +@643 := Coverage.Types.Weights.scale +@644 := @643 @4 +@645 := @21 @642 +@646 := @56 @642 +@648 := @13 @645 @23 +@649 := @21 @644 +@650 := @56 @644 +@652 := @13 @649 @23 +@654 := @72 @649 @71 +@656 := @72 @645 @654 +@657 := @185 @649 +@659 := @21 (@643 @28) +@672 := {t : @68} -> + {vs : @111} -> + {ts : @112} -> (h : @13 @659 @30) -> (hs : @189) -> @107 (@72 (@21 (@643 @115)) @28) @135 +@673 := @657 @23 +@675 := @21 (@643 @30) +@687 := {vs : @111} -> + {ts : @112} -> (h : @13 @675 @23) -> (hs : @189) -> @107 (@72 (@21 (@643 @117)) @28) @224 +@688 := @673 @71 +@690 := @21 (@643 @32) +@692 := @13 @690 @23 +@694 := @72 @659 @71 +@699 := {ts : @112} -> (h : @692) -> (hs : @235) -> @107 @694 @224 +@700 := @688 @77 +@702 := @72 @675 @71 +@703 := @107 @702 +@706 := (h : @652) -> (hs : @109) -> @703 @80 +@707 := @700 @650 +@709 := @72 @690 @71 +@711 := @107 @709 @80 +@712 := (hs : @109) -> @711 +@713 := @707 @106 +@715 := @107 @654 @80 +@716 := @185 @645 +@718 := @21 (@641 @28) +@731 := {t : @68} -> + {vs : @111} -> + {ts : @112} -> (h : @13 @718 @30) -> (hs : @189) -> @107 (@72 (@21 (@641 @115)) @28) @135 +@732 := @716 @23 +@734 := @21 (@641 @30) +@746 := {vs : @111} -> + {ts : @112} -> (h : @13 @734 @23) -> (hs : @189) -> @107 (@72 (@21 (@641 @117)) @28) @224 +@747 := @732 @654 +@749 := @21 (@641 @32) +@751 := @13 @749 @23 +@752 := @703 @32 +@754 := @72 @718 @694 +@759 := {ts : @112} -> (h : @751) -> (hs : @752) -> @107 @754 @224 +@760 := @747 @80 +@762 := @72 @734 @702 +@763 := @107 @762 +@766 := (h : @648) -> (hs : @711) -> @763 @81 +@767 := @760 @646 +@769 := @72 @749 @709 +@771 := @107 @769 @81 +@772 := (hs : @715) -> @771 +@773 := @767 @713 +@775 := @107 @656 @81 +@776 := @380 @636 +@777 := @352 @636 +@786 := {k : @27} -> + {fs : @111} -> {tys : @112} -> (h : @322 (@777 @30) @330) -> (hf : @189) -> @381 @637 +@787 := @776 @9 +@788 := @777 @9 +@789 := @322 @788 +@790 := @789 @330 +@795 := {fs : @111} -> {tys : @112} -> (h : @790) -> (hf : @189) -> @406 @637 +@796 := @787 @656 +@803 := {tys : @112} -> (h : @790) -> (hf : @763 @32) -> @13 (@404 @754) @637 +@804 := @796 @81 +@810 := (h : @789 @421) -> (hf : @771) -> @13 (@404 @762) @637 +@812 := @804 (@429 @788) +@816 := (hf : @775) -> @13 (@404 @769) @637 +@817 := @812 @773 +@820 := @13 (@404 @656) @637 +@821 := fun (__s : @633) => @817 +@822 := @21 @30 +@823 := @56 @30 +@825 := @13 @822 @23 +@826 := @21 @32 +@827 := @56 @32 +@829 := @13 @826 @23 +@830 := @72 @826 +@831 := @830 @71 +@832 := @72 @822 +@833 := @832 @831 +@836 := Prod.{0, 0} @27 @67 +@839 := Prod.mk.{0, 0} @27 @67 +@840 := @839 @445 +@841 := @840 @826 +@842 := @839 @9 +@843 := @842 @822 +@844 := @69 @836 +@845 := @70 @836 +@847 := @845 @843 @844 +@849 := @845 @841 @847 +@850 := Bool.true +@851 := LexLeanTarget.TargetSyntax.Function +@852 := LexLeanTarget.TargetSyntax.Program.functions +@853 := @852 @0 +@854 := @69 @27 +@855 := LexLeanTarget.TargetSyntax.Ty.unit +@856 := LexLeanTarget.TargetSyntax.Value.unit +@859 := LexLeanTarget.TargetSyntax.Expr.value @855 @856 +@864 := LexLeanTarget.TargetSyntax.Function.mk @854 @77 @855 @859 +@869 := List.getD.{0} @851 @853 @9 @864 +@873 := fun (__e_n : @27) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.RustCore.root @4 @9 +@874 := @185 @826 +@875 := @21 @117 +@876 := @13 @875 +@877 := @876 @30 +@878 := @21 @113 +@879 := @72 @878 +@881 := @107 (@879 @28) +@887 := {t : @68} -> {vs : @111} -> {ts : @112} -> (h : @877) -> (hs : @189) -> @881 @135 +@888 := @874 @23 +@889 := @21 @28 +@891 := @13 @889 @23 +@892 := @21 @115 +@893 := @72 @892 +@900 := {vs : @111} -> {ts : @112} -> (h : @891) -> (hs : @189) -> @107 (@893 @28) @224 +@901 := @888 @71 +@902 := @72 @875 +@903 := @902 @71 +@908 := {ts : @112} -> (h : @825) -> (hs : @235) -> @107 @903 @224 +@909 := @901 @77 +@910 := @72 @889 +@911 := @910 @71 +@912 := @107 @911 +@915 := (h : @829) -> (hs : @109) -> @912 @80 +@916 := @909 @827 +@917 := @832 @71 +@919 := @107 @917 @80 +@920 := (hs : @109) -> @919 +@921 := @916 @106 +@923 := @107 @831 @80 +@924 := @185 @822 +@926 := @13 @892 @30 +@927 := @21 @121 +@928 := @72 @927 +@936 := {t : @68} -> {vs : @111} -> {ts : @112} -> (h : @926) -> (hs : @189) -> @107 (@928 @28) @135 +@937 := @924 @23 +@943 := {vs : @111} -> {ts : @112} -> (h : @876 @23) -> (hs : @189) -> @881 @224 +@944 := @937 @831 +@945 := @912 @32 +@946 := @893 @903 +@947 := @107 @946 +@951 := {ts : @112} -> (h : @891) -> (hs : @945) -> @947 @224 +@952 := @944 @80 +@953 := @902 @911 +@954 := @107 @953 +@957 := (h : @825) -> (hs : @919) -> @954 @81 +@958 := @952 @823 +@959 := @910 @917 +@960 := @107 @959 +@962 := (hs : @923) -> @960 @81 +@963 := @958 @921 +@964 := @107 @833 +@965 := @964 @81 +@966 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.denote +@968 := @966 @30 @32 +@969 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.__fits_0 +@971 := @969 @30 @32 +@974 := Coverage.Main.records @30 @32 +@980 := LexLeanPreservation.encPair @27 @27 @21 @21 @974 +@983 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.root @30 @32 +@984 := Bool +@985 := Ne.{1} +@986 := LexLeanPreservation.Obs +@987 := @985 @986 +@988 := LexLeanPreservation.Rel +@991 := @987 (@988 @32 @4) +@992 := LexLeanPreservation.Obs.stuck +@995 := (f : @984) -> (v : @67) -> @991 @992 +@997 := LexLeanPreservation.Rust.rel_ne_stuck @971 +@1004 := (v : @67) -> @987 (@988 (@969 @28 @30) @4) @992 +@1005 := @997 @980 +@1009 := @987 (@988 @971 @980) @992 +@1010 := @110 @836 +@1011 := LexLeanPreservation.Rust.FunSem +@1012 := #9 +@1018 := (n : @27) -> @1011 @1012 @127 @121 @4 @113 +@1019 := @320 @851 +@1020 := @319 @1019 +@1027 := LexLeanRuntime.index (@110 @851) @851 (LexLeanRuntime.instIndexableList @851) +@1031 := @1020 (@1027 (@852 @1012) @113) +@1032 := @328 @851 +@1033 := @1032 @115 +@1034 := @1031 @1033 +@1035 := #10 +@1039 := @82 @1035 @1012 @127 @115 +@1040 := LexLeanTarget.TargetSyntax.Function.types +@1041 := @1040 @113 +@1042 := @1039 @1041 +@1043 := @320 @1010 +@1044 := @319 @1043 +@1045 := LexLeanTarget.TargetSemantics.bindAll +@1046 := LexLeanTarget.TargetSyntax.Function.parameters +@1051 := @1044 (@1045 (@1046 @121) @113 @844) +@1052 := @328 @1010 +@1053 := @1052 @115 +@1054 := @1051 @1053 +@1055 := @320 @984 +@1056 := @319 @1055 +@1057 := LexLeanPreservation.Rust.fnFallible +@1058 := #11 +@1061 := @1056 (@1057 @1058 @1012) +@1062 := @328 @984 +@1063 := @1062 @115 +@1064 := @1061 @1063 +@1065 := LexLeanPreservation.RunConv +@1066 := #13 +@1070 := @1065 @1066 @1035 @127 @115 +@1072 := @987 @113 @992 +@1073 := Exists.{1} +@1074 := LexLeanPreservation.Rust.ROut +@1075 := @1073 @1074 +@1076 := And +@1077 := LexLeanPreservation.Rust.RealizesFn +@1081 := @1076 (@1077 @1012 @127 @4) +@1082 := LexLeanPreservation.Rust.RCI +@1084 := @1082 #15 +@1085 := LexLeanPreservation.Rust.fnIdent +@1086 := @1085 @1066 +@1093 := (hne : @1072) -> @1075 (fun (ro : @1074) => @1081 (@1084 @1086 @1058 @4)) +@1108 := {p : @24} -> + {c : @25} -> + {A : @26} -> + {f : @27} -> + {fn : @851} -> + {args : @111} -> + {env : @1010} -> + {F : @984} -> + {o : @986} -> + (hB : @1018) -> + (hfn : @1034) -> (hwt : @1042) -> (hbind : @1054) -> (hF : @1064) -> (hA : @1070) -> @1093 +@1110 := LexLeanPreservation.Rust.compose @0 +@1111 := @1011 @0 +@1116 := (n : @27) -> @1111 @127 @121 @4 @113 +@1117 := @1027 @853 +@1120 := @1020 (@1117 @113) @1033 +@1124 := @93 @1012 @127 @115 @1041 +@1125 := @1065 @0 +@1128 := @1125 @1035 @127 @115 +@1142 := {c : @25} -> + {A : @26} -> + {f : @27} -> + {fn : @851} -> + {args : @111} -> + {env : @1010} -> + {F : @984} -> + {o : @986} -> + (hB : @1116) -> + (hfn : @1120) -> (hwt : @1124) -> (hbind : @1054) -> (hF : @1064) -> (hA : @1128) -> @1093 +@1143 := @1110 @1 +@1144 := @1111 @1 +@1148 := (n : @27) -> @1144 @121 @4 @113 +@1151 := @101 @127 @115 @1041 +@1152 := @1057 @1 +@1155 := @1056 (@1152 @1012) @1063 +@1156 := @1082 @1 +@1166 := (hbind : @1054) -> + (hF : @1155) -> + (hA : @1128) -> (hne : @1072) -> @1075 (fun (ro : @1074) => @1081 (@1156 @1086 @1058 @4)) +@1176 := {A : @26} -> + {f : @27} -> + {fn : @851} -> + {args : @111} -> + {env : @1010} -> + {F : @984} -> {o : @986} -> (hB : @1148) -> (hfn : @1120) -> (hwt : @1151) -> @1166 +@1177 := @1143 @2 +@1179 := @1144 @2 @4 +@1181 := (n : @27) -> @1179 @113 +@1182 := @107 @115 +@1183 := @1182 @1041 +@1192 := {f : @27} -> + {fn : @851} -> + {args : @111} -> + {env : @1010} -> + {F : @984} -> {o : @986} -> (hB : @1181) -> (hfn : @1120) -> (hwt : @1183) -> @1166 +@1193 := @1177 @9 +@1195 := (n : @27) -> @1179 @9 +@1196 := @1117 @9 +@1197 := @1020 @1196 +@1198 := @1197 @1033 +@1199 := @1152 @9 +@1200 := @1056 @1199 +@1201 := @1200 @1063 +@1202 := @1125 @9 +@1204 := @1202 @127 @115 +@1206 := @1156 (@1085 @9) +@1214 := (hF : @1201) -> + (hA : @1204) -> (hne : @1072) -> @1075 (fun (ro : @1074) => @1081 (@1206 @1058 @4)) +@1223 := {fn : @851} -> + {args : @111} -> + {env : @1010} -> + {F : @984} -> + {o : @986} -> (hB : @1195) -> (hfn : @1198) -> (hwt : @1183) -> (hbind : @1054) -> @1214 +@1224 := @1193 @869 +@1226 := @1197 (@1032 @869) +@1227 := @1040 @869 +@1228 := @1182 @1227 +@1230 := @1045 (@1046 @869) +@1242 := {args : @111} -> + {env : @1010} -> + {F : @984} -> + {o : @986} -> + (hB : @1195) -> (hfn : @1226) -> (hwt : @1228) -> (hbind : @1044 (@1230 @113 @844) @1053) -> @1214 +@1243 := @1224 @833 +@1245 := @928 (@879 @71) +@1247 := @107 @1245 @1227 +@1249 := @72 (@21 @127) +@1251 := @1249 (@928 @71) +@1255 := @1044 (@1230 @1251 @844) @1053 +@1257 := @72 (@21 @1035) +@1259 := @72 (@21 @1012) +@1261 := @1257 (@1259 @71) +@1263 := @1202 @1261 @115 +@1265 := @72 (@21 @1066) +@1268 := @72 (@21 #12) +@1285 := {env : @1010} -> + {F : @984} -> + {o : @986} -> + (hB : @1195) -> + (hfn : @1226) -> + (hwt : @1247) -> + (hbind : @1255) -> + (hF : @1201) -> + (hA : @1263) -> (hne : @1072) -> @1075 (fun (ro : @1074) => @1081 (@1206 (@1265 (@1268 @71)) @4)) +@1286 := @1243 @849 +@1288 := @879 (@893 @71) +@1290 := @107 @1288 @1227 +@1301 := @1044 (@1230 @1245 @844) (@1052 (@845 (@840 @878) (@845 (@842 @927) @844))) +@1303 := @1259 (@1249 @71) +@1305 := @1202 @1303 @115 +@1307 := @72 (@21 @1058) +@1323 := {F : @984} -> + {o : @986} -> + (hB : @1195) -> + (hfn : @1226) -> + (hwt : @1290) -> + (hbind : @1301) -> + (hF : @1201) -> + (hA : @1305) -> (hne : @1072) -> @1075 (fun (ro : @1074) => @1081 (@1206 (@1268 (@1307 @71)) @4)) +@1324 := @1286 @850 +@1325 := @947 @1227 +@1336 := @1044 (@1230 @1288 @844) (@1052 (@845 (@840 @892) (@845 (@842 @878) @844))) +@1338 := @1200 (@1062 @850) +@1340 := @1202 @1251 @115 +@1341 := @1077 @850 +@1359 := {o : @986} -> + (hB : @1195) -> + (hfn : @1226) -> + (hwt : @1325) -> + (hbind : @1336) -> + (hF : @1338) -> + (hA : @1340) -> + (hne : @1072) -> @1075 (fun (ro : @1074) => @1076 (@1341 @127 @4) (@1206 (@1307 (@1257 @71)) @4)) +@1360 := @1324 @968 +@1361 := @954 @1227 +@1372 := @1044 (@1230 @946 @844) (@1052 (@845 (@840 @875) (@845 (@842 @892) @844))) +@1373 := @1202 @1245 +@1375 := @966 @121 @113 +@1376 := @1373 @1375 +@1378 := @966 @127 @121 +@1397 := (hB : @1195) -> + (hfn : @1226) -> + (hwt : @1361) -> + (hbind : @1372) -> + (hF : @1338) -> + (hA : @1376) -> + (hne : @987 @1378 @992) -> + @1075 (fun (ro : @1074) => @1076 (@1341 (@966 @1035 @1012) @4) (@1206 @1261 @4)) +@1398 := @1360 @873 +@1399 := @960 @1227 +@1410 := @1044 (@1230 @953 @844) (@1052 (@845 (@840 @889) (@845 (@842 @875) @844))) +@1411 := @1202 @1288 +@1413 := @966 @113 @115 +@1432 := (hfn : @1226) -> + (hwt : @1399) -> + (hbind : @1410) -> + (hF : @1338) -> + (hA : @1411 @1413) -> + (hne : @987 @1375 @992) -> + @1075 (fun (ro : @1074) => @1076 (@1341 (@966 @1012 @127) @4) (@1206 @1303 @4)) +@1435 := @1398 (@428 @1019 @1196) +@1436 := @964 @1227 +@1447 := @1044 (@1230 @959 @844) (@1052 (@845 (@840 @822) (@845 (@842 @889) @844))) +@1448 := @1202 @946 +@1450 := @966 @115 @117 +@1466 := (hwt : @1436) -> + (hbind : @1447) -> + (hF : @1338) -> + (hA : @1448 @1450) -> + (hne : @987 @1413 @992) -> @1075 (fun (ro : @1074) => @1076 (@1341 @1378 @4) (@1206 @1251 @4)) +@1467 := @1435 @963 +@1469 := @1230 @833 @844 +@1472 := @1044 @1469 (@1052 @849) +@1473 := @1202 @953 +@1475 := @966 @117 @28 +@1490 := (hbind : @1472) -> + (hF : @1338) -> + (hA : @1473 @1475) -> + (hne : @987 @1450 @992) -> @1075 (fun (ro : @1074) => @1076 (@1341 @1375 @4) (@1206 @1245 @4)) +@1493 := @1467 (@428 @1043 @1469) +@1494 := @1202 @959 +@1496 := @966 @28 @30 +@1510 := (hF : @1338) -> + (hA : @1494 @1496) -> + (hne : @987 @1475 @992) -> @1075 (fun (ro : @1074) => @1076 (@1341 @1413 @4) (@1206 @1288 @4)) +@1513 := @1493 (@428 @1055 @1199) +@1527 := (hA : @1202 @833 @968) -> + (hne : @987 @1496 @992) -> @1075 (fun (ro : @1074) => @1076 (@1341 @1450 @4) (@1206 @946 @4)) +@1528 := @1513 @983 +@1539 := (hne : @987 @968 @992) -> + @1075 (fun (ro : @1074) => @1076 (@1341 @1475 @4) (@1206 @953 @4)) +@1540 := @1528 @1005 +@1546 := @1076 (@1341 @1496 @4) (@1206 @959 @4) +@1548 := @1075 (fun (ro : @1074) => @1546) +@1550 := @1075 (fun (__e_ro : @1074) => @1546) +@1555 := LexLeanPreservation.Rust.RepresentableL (@830 (@72 @34 @71)) +@1556 := (__e_hrep : @1555) -> @1550 +@1557 := fun (__e_hrep : @1555) => @1540 +@1558 := (b : @27) -> @1556 +@1559 := fun (b : @27) => @1557 +@1560 := (a : @27) -> @1558 +@1561 := fun (a : @27) => @1559 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R14/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R14/Compose/RustStd.lex.tex new file mode 100644 index 000000000..38422ac78 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R14/Compose/RustStd.lex.tex @@ -0,0 +1,776 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustStd.__wt_0 : @16 := @440 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustStd.__wt_0], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustStd.__wt_1 : @449 := @632 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustStd.__wt_1], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustStd.__wt_2 : @640 := @821 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustStd.__wt_2], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustStd.root : @1560 := @1561 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.RustStd.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.RustStd.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.RustStd.flags +@3 := Coverage.Types.Point +@4 := #0 +@6 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.__enc_0 @4 +@7 := LexLeanPreservation.Rust.WT +@8 := LexLeanTarget.TargetSyntax.Ty.adt +@9 := 0 +@10 := @8 @9 +@11 := @7 @0 +@12 := @11 @1 +@13 := @12 @2 +@16 := (__s : @3) -> @13 @6 @10 +@17 := Coverage.Types.Point.x +@18 := @17 @4 +@19 := Coverage.Types.Point.y +@20 := @19 @4 +@21 := LexLeanTarget.TargetSyntax.Value.nat +@22 := @21 @18 +@23 := LexLeanTarget.TargetSyntax.Ty.nat +@24 := LexLeanTarget.TargetSyntax.Program +@25 := LexLeanPreservation.Rust.RCrate +@26 := LexLeanPreservation.Rust.Flags +@27 := Nat +@28 := #3 +@29 := @7 @28 +@30 := #2 +@31 := @29 @30 +@32 := #1 +@33 := @31 @32 +@34 := @21 @4 +@40 := {p : @24} -> {c : @25} -> {A : @26} -> (n : @27) -> @33 @34 @23 +@42 := LexLeanPreservation.Rust.wt_nat @0 +@49 := {c : @25} -> {A : @26} -> (n : @27) -> @11 @30 @32 @34 @23 +@50 := @42 @1 +@55 := {A : @26} -> (n : @27) -> @12 @32 @34 @23 +@56 := @50 @2 +@59 := (n : @27) -> @13 @34 @23 +@60 := @56 @18 +@62 := @13 @22 @23 +@63 := @21 @20 +@64 := @56 @20 +@66 := @13 @63 @23 +@67 := LexLeanTarget.TargetSyntax.Value +@68 := LexLeanTarget.TargetSyntax.Ty +@69 := List.nil.{0} +@70 := List.cons.{0} +@71 := @69 @67 +@72 := @70 @67 +@74 := @72 @63 @71 +@76 := @72 @22 @74 +@77 := @69 @68 +@78 := @70 @68 +@79 := @78 @23 +@80 := @79 @77 +@81 := @79 @80 +@82 := LexLeanPreservation.Rust.WTL +@90 := {p : @24} -> {c : @25} -> {A : @26} -> @82 @30 @32 @4 @71 @77 +@92 := LexLeanPreservation.Rust.wtl_nil @0 +@93 := @82 @0 +@99 := {c : @25} -> {A : @26} -> @93 @32 @4 @71 @77 +@100 := @92 @1 +@101 := @93 @1 +@105 := {A : @26} -> @101 @4 @71 @77 +@106 := @100 @2 +@107 := @101 @2 +@108 := @107 @71 +@109 := @108 @77 +@110 := List.{0} +@111 := @110 @67 +@112 := @110 @68 +@113 := #6 +@114 := @7 @113 +@115 := #5 +@116 := @114 @115 +@117 := #4 +@120 := @116 @117 @28 @30 +@121 := #7 +@126 := @82 @121 @113 @115 @30 @32 +@127 := #8 +@130 := @82 @127 @121 @113 +@132 := @72 @115 @28 +@133 := @130 @132 +@135 := @78 @117 @30 +@145 := {p : @24} -> + {c : @25} -> + {A : @26} -> + {v : @67} -> {t : @68} -> {vs : @111} -> {ts : @112} -> (h : @120) -> (hs : @126) -> @133 @135 +@147 := LexLeanPreservation.Rust.wtl_cons @0 +@151 := @11 @115 @117 @28 @30 +@155 := @93 @113 @115 @30 @32 +@167 := {c : @25} -> + {A : @26} -> + {v : @67} -> + {t : @68} -> {vs : @111} -> {ts : @112} -> (h : @151) -> (hs : @155) -> @93 @121 @113 @132 @135 +@168 := @147 @1 +@171 := @12 @117 @28 @30 +@174 := @101 @115 @30 @32 +@184 := {A : @26} -> + {v : @67} -> + {t : @68} -> {vs : @111} -> {ts : @112} -> (h : @171) -> (hs : @174) -> @101 @113 @132 @135 +@185 := @168 @2 +@187 := @13 @28 @30 +@189 := @107 @30 @32 +@197 := {v : @67} -> + {t : @68} -> {vs : @111} -> {ts : @112} -> (h : @187) -> (hs : @189) -> @107 @132 @135 +@198 := @185 @63 +@200 := @21 (@19 @28) +@213 := {t : @68} -> + {vs : @111} -> + {ts : @112} -> (h : @13 @200 @30) -> (hs : @189) -> @107 (@72 (@21 (@19 @115)) @28) @135 +@214 := @198 @23 +@216 := @21 (@19 @30) +@218 := @13 @216 @23 +@223 := @107 (@72 (@21 (@19 @117)) @28) +@224 := @79 @30 +@229 := {vs : @111} -> {ts : @112} -> (h : @218) -> (hs : @189) -> @223 @224 +@230 := @214 @71 +@232 := @21 (@19 @32) +@234 := @13 @232 @23 +@235 := @108 @32 +@237 := @72 @200 @71 +@242 := {ts : @112} -> (h : @234) -> (hs : @235) -> @107 @237 @224 +@243 := @230 @77 +@245 := @72 @216 @71 +@246 := @107 @245 +@249 := (h : @66) -> (hs : @109) -> @246 @80 +@250 := @243 @64 +@252 := @72 @232 @71 +@254 := @107 @252 @80 +@255 := (hs : @109) -> @254 +@256 := @250 @106 +@258 := @107 @74 @80 +@259 := @185 @22 +@261 := @21 (@17 @28) +@274 := {t : @68} -> + {vs : @111} -> + {ts : @112} -> (h : @13 @261 @30) -> (hs : @189) -> @107 (@72 (@21 (@17 @115)) @28) @135 +@275 := @259 @23 +@277 := @21 (@17 @30) +@289 := {vs : @111} -> + {ts : @112} -> (h : @13 @277 @23) -> (hs : @189) -> @107 (@72 (@21 (@17 @117)) @28) @224 +@290 := @275 @74 +@292 := @21 (@17 @32) +@294 := @13 @292 @23 +@295 := @246 @32 +@297 := @72 @261 @237 +@302 := {ts : @112} -> (h : @294) -> (hs : @295) -> @107 @297 @224 +@303 := @290 @80 +@305 := @72 @277 @245 +@306 := @107 @305 +@309 := (h : @62) -> (hs : @254) -> @306 @81 +@310 := @303 @60 +@312 := @72 @292 @252 +@314 := @107 @312 @81 +@315 := (hs : @258) -> @314 +@316 := @310 @256 +@318 := @107 @76 @81 +@319 := Eq.{1} +@320 := Option.{0} +@321 := @320 @112 +@322 := @319 @321 +@323 := LexLeanPreservation.Rust.adtFields +@327 := @322 (@323 @113 @28 @30) +@328 := Option.some.{0} +@329 := @328 @112 +@330 := @329 @4 +@331 := @327 @330 +@334 := @7 @127 @121 @113 +@335 := LexLeanTarget.TargetSyntax.Value.adt +@337 := @335 @117 @28 +@338 := @334 @337 +@339 := @8 @115 +@349 := {p : @24} -> + {c : @25} -> + {A : @26} -> + {i : @27} -> {k : @27} -> {fs : @111} -> {tys : @112} -> (h : @331) -> (hf : @126) -> @338 @339 +@351 := LexLeanPreservation.Rust.wt_adt @0 +@352 := @323 @0 +@356 := @322 (@352 @28 @30) @330 +@368 := {c : @25} -> + {A : @26} -> + {i : @27} -> + {k : @27} -> {fs : @111} -> {tys : @112} -> (h : @356) -> (hf : @155) -> @11 @121 @113 @337 @339 +@369 := @351 @1 +@379 := {A : @26} -> + {i : @27} -> + {k : @27} -> {fs : @111} -> {tys : @112} -> (h : @356) -> (hf : @174) -> @12 @113 @337 @339 +@380 := @369 @2 +@381 := @13 @337 +@388 := {i : @27} -> + {k : @27} -> {fs : @111} -> {tys : @112} -> (h : @356) -> (hf : @189) -> @381 @339 +@389 := @380 @9 +@390 := @352 @9 +@399 := {k : @27} -> + {fs : @111} -> {tys : @112} -> (h : @322 (@390 @30) @330) -> (hf : @189) -> @381 @10 +@400 := @389 @9 +@401 := @390 @9 +@402 := @322 @401 +@403 := @402 @330 +@404 := @335 @9 +@406 := @13 (@404 @28) +@411 := {fs : @111} -> {tys : @112} -> (h : @403) -> (hf : @189) -> @406 @10 +@412 := @400 @76 +@419 := {tys : @112} -> (h : @403) -> (hf : @306 @32) -> @13 (@404 @297) @10 +@420 := @412 @81 +@421 := @329 @81 +@427 := (h : @402 @421) -> (hf : @314) -> @13 (@404 @305) @10 +@428 := Eq.refl.{1} +@429 := @428 @321 +@431 := @420 (@429 @401) +@435 := (hf : @318) -> @13 (@404 @312) @10 +@436 := @431 @316 +@439 := @13 (@404 @76) @10 +@440 := fun (__s : @3) => @436 +@442 := Coverage.Types.Box @27 +@444 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.__enc_1 @4 +@445 := 1 +@446 := @8 @445 +@449 := (__s : @442) -> @13 @444 @446 +@451 := Coverage.Types.Box.content @27 +@452 := @451 @4 +@454 := Coverage.Types.Box.count @27 +@455 := @454 @4 +@456 := @21 @452 +@457 := @56 @452 +@459 := @13 @456 @23 +@460 := @21 @455 +@461 := @56 @455 +@463 := @13 @460 @23 +@465 := @72 @460 @71 +@467 := @72 @456 @465 +@468 := @185 @460 +@470 := @21 (@454 @28) +@483 := {t : @68} -> + {vs : @111} -> + {ts : @112} -> (h : @13 @470 @30) -> (hs : @189) -> @107 (@72 (@21 (@454 @115)) @28) @135 +@484 := @468 @23 +@486 := @21 (@454 @30) +@498 := {vs : @111} -> + {ts : @112} -> (h : @13 @486 @23) -> (hs : @189) -> @107 (@72 (@21 (@454 @117)) @28) @224 +@499 := @484 @71 +@501 := @21 (@454 @32) +@503 := @13 @501 @23 +@505 := @72 @470 @71 +@510 := {ts : @112} -> (h : @503) -> (hs : @235) -> @107 @505 @224 +@511 := @499 @77 +@513 := @72 @486 @71 +@514 := @107 @513 +@517 := (h : @463) -> (hs : @109) -> @514 @80 +@518 := @511 @461 +@520 := @72 @501 @71 +@522 := @107 @520 @80 +@523 := (hs : @109) -> @522 +@524 := @518 @106 +@526 := @107 @465 @80 +@527 := @185 @456 +@529 := @21 (@451 @28) +@542 := {t : @68} -> + {vs : @111} -> + {ts : @112} -> (h : @13 @529 @30) -> (hs : @189) -> @107 (@72 (@21 (@451 @115)) @28) @135 +@543 := @527 @23 +@545 := @21 (@451 @30) +@557 := {vs : @111} -> + {ts : @112} -> (h : @13 @545 @23) -> (hs : @189) -> @107 (@72 (@21 (@451 @117)) @28) @224 +@558 := @543 @465 +@560 := @21 (@451 @32) +@562 := @13 @560 @23 +@563 := @514 @32 +@565 := @72 @529 @505 +@570 := {ts : @112} -> (h : @562) -> (hs : @563) -> @107 @565 @224 +@571 := @558 @80 +@573 := @72 @545 @513 +@574 := @107 @573 +@577 := (h : @459) -> (hs : @522) -> @574 @81 +@578 := @571 @457 +@580 := @72 @560 @520 +@582 := @107 @580 @81 +@583 := (hs : @526) -> @582 +@584 := @578 @524 +@586 := @107 @467 @81 +@587 := @380 @445 +@588 := @352 @445 +@597 := {k : @27} -> + {fs : @111} -> {tys : @112} -> (h : @322 (@588 @30) @330) -> (hf : @189) -> @381 @446 +@598 := @587 @9 +@599 := @588 @9 +@600 := @322 @599 +@601 := @600 @330 +@606 := {fs : @111} -> {tys : @112} -> (h : @601) -> (hf : @189) -> @406 @446 +@607 := @598 @467 +@614 := {tys : @112} -> (h : @601) -> (hf : @574 @32) -> @13 (@404 @565) @446 +@615 := @607 @81 +@621 := (h : @600 @421) -> (hf : @582) -> @13 (@404 @573) @446 +@623 := @615 (@429 @599) +@627 := (hf : @586) -> @13 (@404 @580) @446 +@628 := @623 @584 +@631 := @13 (@404 @467) @446 +@632 := fun (__s : @442) => @628 +@633 := Coverage.Types.Weights +@635 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.__enc_2 @4 +@636 := 2 +@637 := @8 @636 +@640 := (__s : @633) -> @13 @635 @637 +@641 := Coverage.Types.Weights.base +@642 := @641 @4 +@643 := Coverage.Types.Weights.scale +@644 := @643 @4 +@645 := @21 @642 +@646 := @56 @642 +@648 := @13 @645 @23 +@649 := @21 @644 +@650 := @56 @644 +@652 := @13 @649 @23 +@654 := @72 @649 @71 +@656 := @72 @645 @654 +@657 := @185 @649 +@659 := @21 (@643 @28) +@672 := {t : @68} -> + {vs : @111} -> + {ts : @112} -> (h : @13 @659 @30) -> (hs : @189) -> @107 (@72 (@21 (@643 @115)) @28) @135 +@673 := @657 @23 +@675 := @21 (@643 @30) +@687 := {vs : @111} -> + {ts : @112} -> (h : @13 @675 @23) -> (hs : @189) -> @107 (@72 (@21 (@643 @117)) @28) @224 +@688 := @673 @71 +@690 := @21 (@643 @32) +@692 := @13 @690 @23 +@694 := @72 @659 @71 +@699 := {ts : @112} -> (h : @692) -> (hs : @235) -> @107 @694 @224 +@700 := @688 @77 +@702 := @72 @675 @71 +@703 := @107 @702 +@706 := (h : @652) -> (hs : @109) -> @703 @80 +@707 := @700 @650 +@709 := @72 @690 @71 +@711 := @107 @709 @80 +@712 := (hs : @109) -> @711 +@713 := @707 @106 +@715 := @107 @654 @80 +@716 := @185 @645 +@718 := @21 (@641 @28) +@731 := {t : @68} -> + {vs : @111} -> + {ts : @112} -> (h : @13 @718 @30) -> (hs : @189) -> @107 (@72 (@21 (@641 @115)) @28) @135 +@732 := @716 @23 +@734 := @21 (@641 @30) +@746 := {vs : @111} -> + {ts : @112} -> (h : @13 @734 @23) -> (hs : @189) -> @107 (@72 (@21 (@641 @117)) @28) @224 +@747 := @732 @654 +@749 := @21 (@641 @32) +@751 := @13 @749 @23 +@752 := @703 @32 +@754 := @72 @718 @694 +@759 := {ts : @112} -> (h : @751) -> (hs : @752) -> @107 @754 @224 +@760 := @747 @80 +@762 := @72 @734 @702 +@763 := @107 @762 +@766 := (h : @648) -> (hs : @711) -> @763 @81 +@767 := @760 @646 +@769 := @72 @749 @709 +@771 := @107 @769 @81 +@772 := (hs : @715) -> @771 +@773 := @767 @713 +@775 := @107 @656 @81 +@776 := @380 @636 +@777 := @352 @636 +@786 := {k : @27} -> + {fs : @111} -> {tys : @112} -> (h : @322 (@777 @30) @330) -> (hf : @189) -> @381 @637 +@787 := @776 @9 +@788 := @777 @9 +@789 := @322 @788 +@790 := @789 @330 +@795 := {fs : @111} -> {tys : @112} -> (h : @790) -> (hf : @189) -> @406 @637 +@796 := @787 @656 +@803 := {tys : @112} -> (h : @790) -> (hf : @763 @32) -> @13 (@404 @754) @637 +@804 := @796 @81 +@810 := (h : @789 @421) -> (hf : @771) -> @13 (@404 @762) @637 +@812 := @804 (@429 @788) +@816 := (hf : @775) -> @13 (@404 @769) @637 +@817 := @812 @773 +@820 := @13 (@404 @656) @637 +@821 := fun (__s : @633) => @817 +@822 := @21 @30 +@823 := @56 @30 +@825 := @13 @822 @23 +@826 := @21 @32 +@827 := @56 @32 +@829 := @13 @826 @23 +@830 := @72 @826 +@831 := @830 @71 +@832 := @72 @822 +@833 := @832 @831 +@836 := Prod.{0, 0} @27 @67 +@839 := Prod.mk.{0, 0} @27 @67 +@840 := @839 @445 +@841 := @840 @826 +@842 := @839 @9 +@843 := @842 @822 +@844 := @69 @836 +@845 := @70 @836 +@847 := @845 @843 @844 +@849 := @845 @841 @847 +@850 := Bool.true +@851 := LexLeanTarget.TargetSyntax.Function +@852 := LexLeanTarget.TargetSyntax.Program.functions +@853 := @852 @0 +@854 := @69 @27 +@855 := LexLeanTarget.TargetSyntax.Ty.unit +@856 := LexLeanTarget.TargetSyntax.Value.unit +@859 := LexLeanTarget.TargetSyntax.Expr.value @855 @856 +@864 := LexLeanTarget.TargetSyntax.Function.mk @854 @77 @855 @859 +@869 := List.getD.{0} @851 @853 @9 @864 +@873 := fun (__e_n : @27) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.RustStd.root @4 @9 +@874 := @185 @826 +@875 := @21 @117 +@876 := @13 @875 +@877 := @876 @30 +@878 := @21 @113 +@879 := @72 @878 +@881 := @107 (@879 @28) +@887 := {t : @68} -> {vs : @111} -> {ts : @112} -> (h : @877) -> (hs : @189) -> @881 @135 +@888 := @874 @23 +@889 := @21 @28 +@891 := @13 @889 @23 +@892 := @21 @115 +@893 := @72 @892 +@900 := {vs : @111} -> {ts : @112} -> (h : @891) -> (hs : @189) -> @107 (@893 @28) @224 +@901 := @888 @71 +@902 := @72 @875 +@903 := @902 @71 +@908 := {ts : @112} -> (h : @825) -> (hs : @235) -> @107 @903 @224 +@909 := @901 @77 +@910 := @72 @889 +@911 := @910 @71 +@912 := @107 @911 +@915 := (h : @829) -> (hs : @109) -> @912 @80 +@916 := @909 @827 +@917 := @832 @71 +@919 := @107 @917 @80 +@920 := (hs : @109) -> @919 +@921 := @916 @106 +@923 := @107 @831 @80 +@924 := @185 @822 +@926 := @13 @892 @30 +@927 := @21 @121 +@928 := @72 @927 +@936 := {t : @68} -> {vs : @111} -> {ts : @112} -> (h : @926) -> (hs : @189) -> @107 (@928 @28) @135 +@937 := @924 @23 +@943 := {vs : @111} -> {ts : @112} -> (h : @876 @23) -> (hs : @189) -> @881 @224 +@944 := @937 @831 +@945 := @912 @32 +@946 := @893 @903 +@947 := @107 @946 +@951 := {ts : @112} -> (h : @891) -> (hs : @945) -> @947 @224 +@952 := @944 @80 +@953 := @902 @911 +@954 := @107 @953 +@957 := (h : @825) -> (hs : @919) -> @954 @81 +@958 := @952 @823 +@959 := @910 @917 +@960 := @107 @959 +@962 := (hs : @923) -> @960 @81 +@963 := @958 @921 +@964 := @107 @833 +@965 := @964 @81 +@966 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.denote +@968 := @966 @30 @32 +@969 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.__fits_0 +@971 := @969 @30 @32 +@974 := Coverage.Main.records @30 @32 +@980 := LexLeanPreservation.encPair @27 @27 @21 @21 @974 +@983 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.root @30 @32 +@984 := Bool +@985 := Ne.{1} +@986 := LexLeanPreservation.Obs +@987 := @985 @986 +@988 := LexLeanPreservation.Rel +@991 := @987 (@988 @32 @4) +@992 := LexLeanPreservation.Obs.stuck +@995 := (f : @984) -> (v : @67) -> @991 @992 +@997 := LexLeanPreservation.Rust.rel_ne_stuck @971 +@1004 := (v : @67) -> @987 (@988 (@969 @28 @30) @4) @992 +@1005 := @997 @980 +@1009 := @987 (@988 @971 @980) @992 +@1010 := @110 @836 +@1011 := LexLeanPreservation.Rust.FunSem +@1012 := #9 +@1018 := (n : @27) -> @1011 @1012 @127 @121 @4 @113 +@1019 := @320 @851 +@1020 := @319 @1019 +@1027 := LexLeanRuntime.index (@110 @851) @851 (LexLeanRuntime.instIndexableList @851) +@1031 := @1020 (@1027 (@852 @1012) @113) +@1032 := @328 @851 +@1033 := @1032 @115 +@1034 := @1031 @1033 +@1035 := #10 +@1039 := @82 @1035 @1012 @127 @115 +@1040 := LexLeanTarget.TargetSyntax.Function.types +@1041 := @1040 @113 +@1042 := @1039 @1041 +@1043 := @320 @1010 +@1044 := @319 @1043 +@1045 := LexLeanTarget.TargetSemantics.bindAll +@1046 := LexLeanTarget.TargetSyntax.Function.parameters +@1051 := @1044 (@1045 (@1046 @121) @113 @844) +@1052 := @328 @1010 +@1053 := @1052 @115 +@1054 := @1051 @1053 +@1055 := @320 @984 +@1056 := @319 @1055 +@1057 := LexLeanPreservation.Rust.fnFallible +@1058 := #11 +@1061 := @1056 (@1057 @1058 @1012) +@1062 := @328 @984 +@1063 := @1062 @115 +@1064 := @1061 @1063 +@1065 := LexLeanPreservation.RunConv +@1066 := #13 +@1070 := @1065 @1066 @1035 @127 @115 +@1072 := @987 @113 @992 +@1073 := Exists.{1} +@1074 := LexLeanPreservation.Rust.ROut +@1075 := @1073 @1074 +@1076 := And +@1077 := LexLeanPreservation.Rust.RealizesFn +@1081 := @1076 (@1077 @1012 @127 @4) +@1082 := LexLeanPreservation.Rust.RCI +@1084 := @1082 #15 +@1085 := LexLeanPreservation.Rust.fnIdent +@1086 := @1085 @1066 +@1093 := (hne : @1072) -> @1075 (fun (ro : @1074) => @1081 (@1084 @1086 @1058 @4)) +@1108 := {p : @24} -> + {c : @25} -> + {A : @26} -> + {f : @27} -> + {fn : @851} -> + {args : @111} -> + {env : @1010} -> + {F : @984} -> + {o : @986} -> + (hB : @1018) -> + (hfn : @1034) -> (hwt : @1042) -> (hbind : @1054) -> (hF : @1064) -> (hA : @1070) -> @1093 +@1110 := LexLeanPreservation.Rust.compose @0 +@1111 := @1011 @0 +@1116 := (n : @27) -> @1111 @127 @121 @4 @113 +@1117 := @1027 @853 +@1120 := @1020 (@1117 @113) @1033 +@1124 := @93 @1012 @127 @115 @1041 +@1125 := @1065 @0 +@1128 := @1125 @1035 @127 @115 +@1142 := {c : @25} -> + {A : @26} -> + {f : @27} -> + {fn : @851} -> + {args : @111} -> + {env : @1010} -> + {F : @984} -> + {o : @986} -> + (hB : @1116) -> + (hfn : @1120) -> (hwt : @1124) -> (hbind : @1054) -> (hF : @1064) -> (hA : @1128) -> @1093 +@1143 := @1110 @1 +@1144 := @1111 @1 +@1148 := (n : @27) -> @1144 @121 @4 @113 +@1151 := @101 @127 @115 @1041 +@1152 := @1057 @1 +@1155 := @1056 (@1152 @1012) @1063 +@1156 := @1082 @1 +@1166 := (hbind : @1054) -> + (hF : @1155) -> + (hA : @1128) -> (hne : @1072) -> @1075 (fun (ro : @1074) => @1081 (@1156 @1086 @1058 @4)) +@1176 := {A : @26} -> + {f : @27} -> + {fn : @851} -> + {args : @111} -> + {env : @1010} -> + {F : @984} -> {o : @986} -> (hB : @1148) -> (hfn : @1120) -> (hwt : @1151) -> @1166 +@1177 := @1143 @2 +@1179 := @1144 @2 @4 +@1181 := (n : @27) -> @1179 @113 +@1182 := @107 @115 +@1183 := @1182 @1041 +@1192 := {f : @27} -> + {fn : @851} -> + {args : @111} -> + {env : @1010} -> + {F : @984} -> {o : @986} -> (hB : @1181) -> (hfn : @1120) -> (hwt : @1183) -> @1166 +@1193 := @1177 @9 +@1195 := (n : @27) -> @1179 @9 +@1196 := @1117 @9 +@1197 := @1020 @1196 +@1198 := @1197 @1033 +@1199 := @1152 @9 +@1200 := @1056 @1199 +@1201 := @1200 @1063 +@1202 := @1125 @9 +@1204 := @1202 @127 @115 +@1206 := @1156 (@1085 @9) +@1214 := (hF : @1201) -> + (hA : @1204) -> (hne : @1072) -> @1075 (fun (ro : @1074) => @1081 (@1206 @1058 @4)) +@1223 := {fn : @851} -> + {args : @111} -> + {env : @1010} -> + {F : @984} -> + {o : @986} -> (hB : @1195) -> (hfn : @1198) -> (hwt : @1183) -> (hbind : @1054) -> @1214 +@1224 := @1193 @869 +@1226 := @1197 (@1032 @869) +@1227 := @1040 @869 +@1228 := @1182 @1227 +@1230 := @1045 (@1046 @869) +@1242 := {args : @111} -> + {env : @1010} -> + {F : @984} -> + {o : @986} -> + (hB : @1195) -> (hfn : @1226) -> (hwt : @1228) -> (hbind : @1044 (@1230 @113 @844) @1053) -> @1214 +@1243 := @1224 @833 +@1245 := @928 (@879 @71) +@1247 := @107 @1245 @1227 +@1249 := @72 (@21 @127) +@1251 := @1249 (@928 @71) +@1255 := @1044 (@1230 @1251 @844) @1053 +@1257 := @72 (@21 @1035) +@1259 := @72 (@21 @1012) +@1261 := @1257 (@1259 @71) +@1263 := @1202 @1261 @115 +@1265 := @72 (@21 @1066) +@1268 := @72 (@21 #12) +@1285 := {env : @1010} -> + {F : @984} -> + {o : @986} -> + (hB : @1195) -> + (hfn : @1226) -> + (hwt : @1247) -> + (hbind : @1255) -> + (hF : @1201) -> + (hA : @1263) -> (hne : @1072) -> @1075 (fun (ro : @1074) => @1081 (@1206 (@1265 (@1268 @71)) @4)) +@1286 := @1243 @849 +@1288 := @879 (@893 @71) +@1290 := @107 @1288 @1227 +@1301 := @1044 (@1230 @1245 @844) (@1052 (@845 (@840 @878) (@845 (@842 @927) @844))) +@1303 := @1259 (@1249 @71) +@1305 := @1202 @1303 @115 +@1307 := @72 (@21 @1058) +@1323 := {F : @984} -> + {o : @986} -> + (hB : @1195) -> + (hfn : @1226) -> + (hwt : @1290) -> + (hbind : @1301) -> + (hF : @1201) -> + (hA : @1305) -> (hne : @1072) -> @1075 (fun (ro : @1074) => @1081 (@1206 (@1268 (@1307 @71)) @4)) +@1324 := @1286 @850 +@1325 := @947 @1227 +@1336 := @1044 (@1230 @1288 @844) (@1052 (@845 (@840 @892) (@845 (@842 @878) @844))) +@1338 := @1200 (@1062 @850) +@1340 := @1202 @1251 @115 +@1341 := @1077 @850 +@1359 := {o : @986} -> + (hB : @1195) -> + (hfn : @1226) -> + (hwt : @1325) -> + (hbind : @1336) -> + (hF : @1338) -> + (hA : @1340) -> + (hne : @1072) -> @1075 (fun (ro : @1074) => @1076 (@1341 @127 @4) (@1206 (@1307 (@1257 @71)) @4)) +@1360 := @1324 @968 +@1361 := @954 @1227 +@1372 := @1044 (@1230 @946 @844) (@1052 (@845 (@840 @875) (@845 (@842 @892) @844))) +@1373 := @1202 @1245 +@1375 := @966 @121 @113 +@1376 := @1373 @1375 +@1378 := @966 @127 @121 +@1397 := (hB : @1195) -> + (hfn : @1226) -> + (hwt : @1361) -> + (hbind : @1372) -> + (hF : @1338) -> + (hA : @1376) -> + (hne : @987 @1378 @992) -> + @1075 (fun (ro : @1074) => @1076 (@1341 (@966 @1035 @1012) @4) (@1206 @1261 @4)) +@1398 := @1360 @873 +@1399 := @960 @1227 +@1410 := @1044 (@1230 @953 @844) (@1052 (@845 (@840 @889) (@845 (@842 @875) @844))) +@1411 := @1202 @1288 +@1413 := @966 @113 @115 +@1432 := (hfn : @1226) -> + (hwt : @1399) -> + (hbind : @1410) -> + (hF : @1338) -> + (hA : @1411 @1413) -> + (hne : @987 @1375 @992) -> + @1075 (fun (ro : @1074) => @1076 (@1341 (@966 @1012 @127) @4) (@1206 @1303 @4)) +@1435 := @1398 (@428 @1019 @1196) +@1436 := @964 @1227 +@1447 := @1044 (@1230 @959 @844) (@1052 (@845 (@840 @822) (@845 (@842 @889) @844))) +@1448 := @1202 @946 +@1450 := @966 @115 @117 +@1466 := (hwt : @1436) -> + (hbind : @1447) -> + (hF : @1338) -> + (hA : @1448 @1450) -> + (hne : @987 @1413 @992) -> @1075 (fun (ro : @1074) => @1076 (@1341 @1378 @4) (@1206 @1251 @4)) +@1467 := @1435 @963 +@1469 := @1230 @833 @844 +@1472 := @1044 @1469 (@1052 @849) +@1473 := @1202 @953 +@1475 := @966 @117 @28 +@1490 := (hbind : @1472) -> + (hF : @1338) -> + (hA : @1473 @1475) -> + (hne : @987 @1450 @992) -> @1075 (fun (ro : @1074) => @1076 (@1341 @1375 @4) (@1206 @1245 @4)) +@1493 := @1467 (@428 @1043 @1469) +@1494 := @1202 @959 +@1496 := @966 @28 @30 +@1510 := (hF : @1338) -> + (hA : @1494 @1496) -> + (hne : @987 @1475 @992) -> @1075 (fun (ro : @1074) => @1076 (@1341 @1413 @4) (@1206 @1288 @4)) +@1513 := @1493 (@428 @1055 @1199) +@1527 := (hA : @1202 @833 @968) -> + (hne : @987 @1496 @992) -> @1075 (fun (ro : @1074) => @1076 (@1341 @1450 @4) (@1206 @946 @4)) +@1528 := @1513 @983 +@1539 := (hne : @987 @968 @992) -> + @1075 (fun (ro : @1074) => @1076 (@1341 @1475 @4) (@1206 @953 @4)) +@1540 := @1528 @1005 +@1546 := @1076 (@1341 @1496 @4) (@1206 @959 @4) +@1548 := @1075 (fun (ro : @1074) => @1546) +@1550 := @1075 (fun (__e_ro : @1074) => @1546) +@1555 := LexLeanPreservation.Rust.RepresentableL (@830 (@72 @34 @71)) +@1556 := (__e_hrep : @1555) -> @1550 +@1557 := fun (__e_hrep : @1555) => @1540 +@1558 := (b : @27) -> @1556 +@1559 := fun (b : @27) => @1557 +@1560 := (a : @27) -> @1558 +@1561 := fun (a : @27) => @1559 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R14/RustCore.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R14/RustCore.lean new file mode 100644 index 000000000..a3e97b839 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R14/RustCore.lean @@ -0,0 +1,54 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.RustCore +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [{ constructors := [[.nat, .nat]] }, + { constructors := [[.nat, .nat]] }, + { constructors := [[.nat, .nat]] }], functions := [ + { parameters := [0, 1], types := [.nat, .nat], result := (.pair .nat .nat), + body := (.«let» 2 (.adt 0) (.build (.adt 0) (.adt 0) [(.var 0), (.var 1)]) (.build .pair (.pair .nat .nat) [(.prim .natAdd [(.field (.var 2) 0), (.field (.call 1 []) 1)]), (.call 2 [(.build (.adt 0) (.adt 1) [(.field (.var 2) 1), (.value .nat (.nat 1))])])])) }, + { parameters := [], types := [], result := (.adt 2), + body := (.build (.adt 0) (.adt 2) [(.value .nat (.nat 2)), (.value .nat (.nat 3))]) }, + { parameters := [0], types := [(.adt 1)], result := .nat, + body := (.field (.var 0) 0) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .core, items := [ + (.enum (.adt 0) [{ number := 0, fields := [.nat, .nat] }]), + (.enum (.adt 1) [{ number := 0, fields := [.nat, .nat] }]), + (.enum (.adt 2) [{ number := 0, fields := [.nat, .nat] }]), + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.pair .nat .nat)) (.mk [(.mk (.bind (.generated .binding 2)) (some (.adt 0)) (.construct (.adt 0 0) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))]))] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 4)) none (.matchOn (.clone (.generated .binding 2)) [(.mk (.adt 0 0 [(.bind (.generated .part 1)), .wild]) (.mk [] (.move (.generated .part 1))))])), (.mk (.bind (.generated .operand 5)) none (.block (.mk [(.mk (.bind (.generated .holder 3)) none (.call (.function 1) [] false))] (.matchOn (.move (.generated .holder 3)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 2))]) (.mk [] (.move (.generated .part 2))))]))))] (.call (.runtime .natAdd) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] true))) (.call (.function 2) [(.construct (.adt 1 0) [(.matchOn (.move (.generated .binding 2)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 6))]) (.mk [] (.move (.generated .part 6))))]), (.lit (.nat 1))])] false))))), + (.function (.generated .function 1) [] (.adt 2) (.mk [] (.construct (.adt 2 0) [(.lit (.nat 2)), (.lit (.nat 3))]))), + (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .nat (.mk [] (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 7)), .wild]) (.mk [] (.move (.generated .part 7))))])))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some (.adt 0)) (.construct (.adt 0 0) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))]))], (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 4)) none (.matchOn (.clone (.generated .binding 2)) [(.mk (.adt 0 0 [(.bind (.generated .part 1)), .wild]) (.mk [] (.move (.generated .part 1))))])), (.mk (.bind (.generated .operand 5)) none (.block (.mk [(.mk (.bind (.generated .holder 3)) none (.call (.function 1) [] false))] (.matchOn (.move (.generated .holder 3)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 2))]) (.mk [] (.move (.generated .part 2))))]))))] (.call (.runtime .natAdd) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] true))) (.call (.function 2) [(.construct (.adt 1 0) [(.matchOn (.move (.generated .binding 2)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 6))]) (.mk [] (.move (.generated .part 6))))]), (.lit (.nat 1))])] false))), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.letBind (Corr.eOfBNil (Corr.build (ts := [.nat, .nat]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 4)) none (.matchOn (.clone (.generated .binding 2)) [(.mk (.adt 0 0 [(.bind (.generated .part 1)), .wild]) (.mk [] (.move (.generated .part 1))))])), (.mk (.bind (.generated .operand 5)) none (.block (.mk [(.mk (.bind (.generated .holder 3)) none (.call (.function 1) [] false))] (.matchOn (.move (.generated .holder 3)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 2))]) (.mk [] (.move (.generated .part 2))))]))))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat]) (rd := (.move (.generated .part 1))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 3)) none (.call (.function 1) [] false))]) (tail := (.matchOn (.move (.generated .holder 3)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 2))]) (.mk [] (.move (.generated .part 2))))])) (Corr.fieldHeld (ts := [.nat, .nat]) (rd := (.move (.generated .part 2))) (Corr.eOfBNil (Corr.callOps (ts := []) (Corr.opsNil) rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, .nat]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat]) (rd := (.move (.generated .part 6))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))))))⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 2 0) [(.lit (.nat 2)), (.lit (.nat 3))]), [], rfl, rfl, + (Corr.build (ts := [.nat, .nat]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl)⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [], (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 7)), .wild]) (.mk [] (.move (.generated .part 7))))]), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.fieldRead (ts := [.nat, .nat]) (rd := (.move (.generated .part 7))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | _ + 3 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.RustCore diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R14/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R14/RustStd.lean new file mode 100644 index 000000000..f603fe9e7 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R14/RustStd.lean @@ -0,0 +1,54 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [{ constructors := [[.nat, .nat]] }, + { constructors := [[.nat, .nat]] }, + { constructors := [[.nat, .nat]] }], functions := [ + { parameters := [0, 1], types := [.nat, .nat], result := (.pair .nat .nat), + body := (.«let» 2 (.adt 0) (.build (.adt 0) (.adt 0) [(.var 0), (.var 1)]) (.build .pair (.pair .nat .nat) [(.prim .natAdd [(.field (.var 2) 0), (.field (.call 1 []) 1)]), (.call 2 [(.build (.adt 0) (.adt 1) [(.field (.var 2) 1), (.value .nat (.nat 1))])])])) }, + { parameters := [], types := [], result := (.adt 2), + body := (.build (.adt 0) (.adt 2) [(.value .nat (.nat 2)), (.value .nat (.nat 3))]) }, + { parameters := [0], types := [(.adt 1)], result := .nat, + body := (.field (.var 0) 0) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.enum (.adt 0) [{ number := 0, fields := [.nat, .nat] }]), + (.enum (.adt 1) [{ number := 0, fields := [.nat, .nat] }]), + (.enum (.adt 2) [{ number := 0, fields := [.nat, .nat] }]), + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.pair .nat .nat)) (.mk [(.mk (.bind (.generated .binding 2)) (some (.adt 0)) (.construct (.adt 0 0) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))]))] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 4)) none (.matchOn (.clone (.generated .binding 2)) [(.mk (.adt 0 0 [(.bind (.generated .part 1)), .wild]) (.mk [] (.move (.generated .part 1))))])), (.mk (.bind (.generated .operand 5)) none (.block (.mk [(.mk (.bind (.generated .holder 3)) none (.call (.function 1) [] false))] (.matchOn (.move (.generated .holder 3)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 2))]) (.mk [] (.move (.generated .part 2))))]))))] (.call (.runtime .natAdd) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] true))) (.call (.function 2) [(.construct (.adt 1 0) [(.matchOn (.move (.generated .binding 2)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 6))]) (.mk [] (.move (.generated .part 6))))]), (.lit (.nat 1))])] false))))), + (.function (.generated .function 1) [] (.adt 2) (.mk [] (.construct (.adt 2 0) [(.lit (.nat 2)), (.lit (.nat 3))]))), + (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .nat (.mk [] (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 7)), .wild]) (.mk [] (.move (.generated .part 7))))])))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some (.adt 0)) (.construct (.adt 0 0) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))]))], (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 4)) none (.matchOn (.clone (.generated .binding 2)) [(.mk (.adt 0 0 [(.bind (.generated .part 1)), .wild]) (.mk [] (.move (.generated .part 1))))])), (.mk (.bind (.generated .operand 5)) none (.block (.mk [(.mk (.bind (.generated .holder 3)) none (.call (.function 1) [] false))] (.matchOn (.move (.generated .holder 3)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 2))]) (.mk [] (.move (.generated .part 2))))]))))] (.call (.runtime .natAdd) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] true))) (.call (.function 2) [(.construct (.adt 1 0) [(.matchOn (.move (.generated .binding 2)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 6))]) (.mk [] (.move (.generated .part 6))))]), (.lit (.nat 1))])] false))), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.letBind (Corr.eOfBNil (Corr.build (ts := [.nat, .nat]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 4)) none (.matchOn (.clone (.generated .binding 2)) [(.mk (.adt 0 0 [(.bind (.generated .part 1)), .wild]) (.mk [] (.move (.generated .part 1))))])), (.mk (.bind (.generated .operand 5)) none (.block (.mk [(.mk (.bind (.generated .holder 3)) none (.call (.function 1) [] false))] (.matchOn (.move (.generated .holder 3)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 2))]) (.mk [] (.move (.generated .part 2))))]))))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat]) (rd := (.move (.generated .part 1))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 3)) none (.call (.function 1) [] false))]) (tail := (.matchOn (.move (.generated .holder 3)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 2))]) (.mk [] (.move (.generated .part 2))))])) (Corr.fieldHeld (ts := [.nat, .nat]) (rd := (.move (.generated .part 2))) (Corr.eOfBNil (Corr.callOps (ts := []) (Corr.opsNil) rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, .nat]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat]) (rd := (.move (.generated .part 6))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))))))⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 2 0) [(.lit (.nat 2)), (.lit (.nat 3))]), [], rfl, rfl, + (Corr.build (ts := [.nat, .nat]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl)⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [], (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 7)), .wild]) (.mk [] (.move (.generated .part 7))))]), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.fieldRead (ts := [.nat, .nat]) (rd := (.move (.generated .part 7))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | _ + 3 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R15.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R15.lean similarity index 97% rename from examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R15.lean rename to examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R15.lean index 235741f88..4facf77cb 100644 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R15.lean +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R15.lean @@ -18,7 +18,7 @@ set_option maxRecDepth 100000 set_option maxHeartbeats 0 set_option synthInstance.maxHeartbeats 0 set_option linter.unusedVariables false -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15 def __prog : _root_.LexLeanTarget.TargetSyntax.Program := { adts := [], functions := [ @@ -37,4 +37,4 @@ def denote (v : (Option Nat)) (r : (Except Bool Nat)) : _root_.LexLeanPreservati theorem root (v : (Option Nat)) (r : (Except Bool Nat)) : _root_.LexLeanPreservation.RunConv __prog 0 [((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) v), ((_root_.LexLeanPreservation.encExcept _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.nat) r)] (_root_.LexLeanPreservation.Rel (__fits_0 v r) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Coverage.Main.options v r))) := _root_.LexLeanPreservation.run_of_funRel (__rel_0 v r) -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15 +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15 diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R15/Compose/RustCore.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R15/Compose/RustCore.lex.tex new file mode 100644 index 000000000..46c035430 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R15/Compose/RustCore.lex.tex @@ -0,0 +1,615 @@ +\begin{lexlean}{RustCore} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.Compose.RustCore} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.RustCore, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.Compose.RustCore.root : @1260 := @1261 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.Compose.RustCore.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.RustCore.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.RustCore.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.RustCore.flags +@3 := Nat +@4 := Option.{0} +@5 := @4 @3 +@6 := #2 +@7 := LexLeanTarget.TargetSyntax.Value.nat +@8 := LexLeanPreservation.encOption +@9 := @8 @3 +@10 := @9 @7 +@11 := @10 @6 +@12 := LexLeanTarget.TargetSyntax.Ty.nat +@13 := LexLeanTarget.TargetSyntax.Ty.option +@14 := @13 @12 +@15 := #0 +@16 := LexLeanTarget.TargetSyntax.Program +@17 := LexLeanPreservation.Rust.RCrate +@18 := LexLeanPreservation.Rust.Flags +@19 := LexLeanPreservation.Rust.WT +@20 := #3 +@22 := @19 @20 @6 +@23 := #1 +@24 := @22 @23 +@25 := @7 @15 +@31 := {p : @16} -> {c : @17} -> {A : @18} -> (n : @3) -> @24 @25 @12 +@33 := LexLeanPreservation.Rust.wt_nat @0 +@34 := @19 @0 +@36 := @34 @6 @23 +@41 := {c : @17} -> {A : @18} -> (n : @3) -> @36 @25 @12 +@42 := @33 @1 +@43 := @34 @1 +@44 := @43 @23 +@48 := {A : @18} -> (n : @3) -> @44 @25 @12 +@49 := @42 @2 +@50 := @43 @2 +@51 := @50 @25 +@52 := @51 @12 +@53 := (n : @3) -> @52 +@55 := fun (__x : @3) => @49 @15 +@56 := Sort 1 +@57 := LexLeanTarget.TargetSyntax.Value +@58 := (a._@._internal._hyg.#0 : @15) -> @57 +@59 := LexLeanTarget.TargetSyntax.Ty +@60 := #6 +@61 := @19 @60 +@62 := #5 +@63 := @61 @62 +@64 := #4 +@65 := @63 @64 +@66 := @6 @15 +@69 := (x : @6) -> @65 @66 @23 +@70 := @4 @20 +@71 := #7 +@74 := @19 @71 @60 @62 +@77 := @8 @64 @20 @15 +@78 := @74 @77 +@79 := @13 @6 +@88 := {p : @16} -> + {c : @17} -> {A : @18} -> {α : @56} -> {e : @58} -> {t : @59} -> (h : @69) -> (o : @70) -> @78 @79 +@90 := LexLeanPreservation.Rust.wt_encOption @0 +@92 := @34 @62 @64 +@106 := {c : @17} -> + {A : @18} -> + {α : @56} -> + {e : @58} -> {t : @59} -> (h : (x : @6) -> @92 @66 @23) -> (o : @70) -> @34 @60 @62 @77 @79 +@107 := @90 @1 +@108 := @43 @64 +@120 := {A : @18} -> + {α : @56} -> + {e : @58} -> {t : @59} -> (h : (x : @6) -> @108 @66 @23) -> (o : @70) -> @43 @62 @77 @79 +@121 := @107 @2 +@123 := @50 @66 @23 +@131 := {α : @56} -> {e : @58} -> {t : @59} -> (h : (x : @6) -> @123) -> (o : @70) -> @50 @77 @79 +@132 := @121 @3 +@133 := (a._@._internal._hyg.#0 : @3) -> @57 +@142 := {e : @133} -> {t : @59} -> (h : (x : @3) -> @123) -> (o : @5) -> @50 (@9 @20 @15) @79 +@143 := @132 @7 +@145 := (x : @3) -> @51 @23 +@147 := @50 (@10 @15) +@151 := {t : @59} -> (h : @145) -> (o : @5) -> @147 @79 +@152 := @143 @12 +@153 := (x : @3) -> @52 +@156 := (h : @153) -> (o : @5) -> @147 @14 +@158 := @152 @55 @6 +@160 := @50 @11 @14 +@161 := Bool +@162 := Except.{0, 0} +@163 := @162 @161 +@164 := @163 @3 +@165 := LexLeanTarget.TargetSyntax.Value.bool +@166 := LexLeanPreservation.encExcept +@167 := @166 @161 +@168 := @167 @3 +@169 := @168 @165 +@170 := @169 @7 +@171 := @170 @23 +@172 := LexLeanTarget.TargetSyntax.Ty.bool +@173 := LexLeanTarget.TargetSyntax.Ty.result +@174 := @173 @12 +@175 := @174 @172 +@176 := @165 @15 +@182 := {p : @16} -> {c : @17} -> {A : @18} -> (b : @161) -> @24 @176 @172 +@184 := LexLeanPreservation.Rust.wt_bool @0 +@189 := {c : @17} -> {A : @18} -> (b : @161) -> @36 @176 @172 +@190 := @184 @1 +@194 := {A : @18} -> (b : @161) -> @44 @176 @172 +@195 := @190 @2 +@196 := @50 @176 +@197 := @196 @172 +@198 := (b : @161) -> @197 +@200 := fun (__x : @161) => @195 @15 +@201 := (a._@._internal._hyg.#0 : @23) -> @57 +@202 := #9 +@203 := @19 @202 +@204 := #8 +@206 := @203 @204 @71 +@207 := @64 @15 +@210 := (x : @62) -> @206 @207 @23 +@211 := #10 +@217 := (x : @62) -> @19 @211 @202 @204 @207 @20 +@219 := @162 @71 @60 +@220 := #11 +@223 := @19 @220 @211 @202 +@228 := @166 @204 @71 @60 @62 @15 +@229 := @223 @228 +@231 := @173 @64 @20 +@244 := {p : @16} -> + {c : @17} -> + {A : @18} -> + {ε : @56} -> + {α : @56} -> + {ee : @201} -> + {ea : @201} -> {s : @59} -> {t : @59} -> (he : @210) -> (ha : @217) -> (x : @219) -> @229 @231 +@246 := LexLeanPreservation.Rust.wt_encExcept @0 +@271 := {c : @17} -> + {A : @18} -> + {ε : @56} -> + {α : @56} -> + {ee : @201} -> + {ea : @201} -> + {s : @59} -> + {t : @59} -> + (he : (x : @62) -> @34 @204 @71 @207 @23) -> + (ha : (x : @62) -> @34 @202 @204 @207 @20) -> (x : @219) -> @34 @211 @202 @228 @231 +@272 := @246 @1 +@293 := {A : @18} -> + {ε : @56} -> + {α : @56} -> + {ee : @201} -> + {ea : @201} -> + {s : @59} -> + {t : @59} -> + (he : (x : @62) -> @43 @71 @207 @23) -> + (ha : (x : @62) -> @43 @204 @207 @20) -> (x : @219) -> @43 @202 @228 @231 +@294 := @272 @2 +@295 := @50 @207 +@296 := @295 @23 +@297 := (x : @62) -> @296 +@298 := @295 @20 +@299 := (x : @62) -> @298 +@310 := {ε : @56} -> + {α : @56} -> + {ee : @201} -> + {ea : @201} -> {s : @59} -> {t : @59} -> (he : @297) -> (ha : @299) -> (x : @219) -> @50 @228 @231 +@311 := @294 @161 +@312 := (a._@._internal._hyg.#0 : @161) -> @57 +@313 := (x : @161) -> @296 +@328 := {α : @56} -> + {ee : @312} -> + {ea : @201} -> + {s : @59} -> + {t : @59} -> (he : @313) -> (ha : @299) -> (x : @163 @60) -> @50 (@167 @71 @60 @62 @15) @231 +@329 := @311 @3 +@330 := (x : @3) -> @298 +@342 := {ee : @312} -> + {ea : @133} -> + {s : @59} -> {t : @59} -> (he : @313) -> (ha : @330) -> (x : @164) -> @50 (@168 @60 @62 @15) @231 +@343 := @329 @165 +@345 := (x : @161) -> @196 @23 +@355 := {ea : @133} -> + {s : @59} -> {t : @59} -> (he : @345) -> (ha : @330) -> (x : @164) -> @50 (@169 @62 @15) @231 +@356 := @343 @7 +@358 := (x : @3) -> @51 @20 +@359 := @170 @15 +@360 := @50 @359 +@366 := {s : @59} -> {t : @59} -> (he : @345) -> (ha : @358) -> (x : @164) -> @360 @231 +@367 := @356 @12 +@373 := {t : @59} -> (he : @345) -> (ha : @153) -> (x : @164) -> @360 (@174 @20) +@374 := @367 @172 +@379 := (he : (x : @161) -> @197) -> (ha : @153) -> (x : @164) -> @360 @175 +@382 := @374 @200 @55 @23 +@384 := @50 @171 @175 +@385 := List.nil.{0} +@386 := List.cons.{0} +@387 := @385 @57 +@388 := @386 @57 +@390 := @388 @171 @387 +@392 := @388 @11 @390 +@395 := Prod.{0, 0} @3 @57 +@396 := 1 +@399 := Prod.mk.{0, 0} @3 @57 +@400 := @399 @396 +@401 := @400 @171 +@402 := 0 +@403 := @399 @402 +@404 := @403 @11 +@405 := @385 @395 +@406 := @386 @395 +@408 := @406 @404 @405 +@410 := @406 @401 @408 +@411 := Bool.true +@412 := LexLeanTarget.TargetSyntax.Function +@413 := LexLeanTarget.TargetSyntax.Program.functions +@414 := @413 @0 +@415 := @385 @3 +@416 := @385 @59 +@417 := LexLeanTarget.TargetSyntax.Ty.unit +@418 := LexLeanTarget.TargetSyntax.Value.unit +@421 := LexLeanTarget.TargetSyntax.Expr.value @417 @418 +@426 := LexLeanTarget.TargetSyntax.Function.mk @415 @416 @417 @421 +@431 := List.getD.{0} @412 @414 @402 @426 +@435 := fun (__e_n : @3) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.RustCore.root @15 @402 +@436 := LexLeanPreservation.Rust.WTL +@444 := {p : @16} -> {c : @17} -> {A : @18} -> @436 @6 @23 @15 @387 @416 +@446 := LexLeanPreservation.Rust.wtl_nil @0 +@447 := @436 @0 +@453 := {c : @17} -> {A : @18} -> @447 @23 @15 @387 @416 +@454 := @446 @1 +@455 := @447 @1 +@459 := {A : @18} -> @455 @15 @387 @416 +@460 := @454 @2 +@461 := @455 @2 +@462 := @461 @387 +@463 := @462 @416 +@464 := List.{0} +@465 := @464 @57 +@466 := @464 @59 +@468 := @65 @20 @6 +@473 := @436 @71 @60 @62 @6 @23 +@476 := @436 @204 @71 @60 +@478 := @388 @62 @20 +@479 := @476 @478 +@480 := @386 @59 +@482 := @480 @64 @6 +@492 := {p : @16} -> + {c : @17} -> + {A : @18} -> + {v : @57} -> {t : @59} -> {vs : @465} -> {ts : @466} -> (h : @468) -> (hs : @473) -> @479 @482 +@494 := LexLeanPreservation.Rust.wtl_cons @0 +@512 := {c : @17} -> + {A : @18} -> + {v : @57} -> + {t : @59} -> + {vs : @465} -> + {ts : @466} -> (h : @92 @20 @6) -> (hs : @447 @60 @62 @6 @23) -> @447 @71 @60 @478 @482 +@513 := @494 @1 +@528 := {A : @18} -> + {v : @57} -> + {t : @59} -> + {vs : @465} -> {ts : @466} -> (h : @108 @20 @6) -> (hs : @455 @62 @6 @23) -> @455 @60 @478 @482 +@529 := @513 @2 +@531 := @50 @20 @6 +@533 := @461 @6 @23 +@541 := {v : @57} -> + {t : @59} -> {vs : @465} -> {ts : @466} -> (h : @531) -> (hs : @533) -> @461 @478 @482 +@542 := @529 @171 +@543 := @170 @64 +@545 := @50 @543 @6 +@546 := @170 @60 +@547 := @388 @546 +@555 := {t : @59} -> {vs : @465} -> {ts : @466} -> (h : @545) -> (hs : @533) -> @461 (@547 @20) @482 +@556 := @542 @175 +@557 := @170 @20 +@559 := @50 @557 @175 +@560 := @170 @62 +@561 := @388 @560 +@563 := @461 (@561 @20) +@564 := @480 @175 +@565 := @564 @6 +@570 := {vs : @465} -> {ts : @466} -> (h : @559) -> (hs : @533) -> @563 @565 +@571 := @556 @387 +@572 := @170 @6 +@574 := @50 @572 @175 +@575 := @462 @23 +@577 := @388 @543 @387 +@582 := {ts : @466} -> (h : @574) -> (hs : @575) -> @461 @577 @565 +@583 := @571 @416 +@585 := @388 @557 @387 +@586 := @461 @585 +@587 := @564 @416 +@590 := (h : @384) -> (hs : @463) -> @586 @587 +@591 := @583 @382 +@593 := @388 @572 @387 +@595 := @461 @593 @587 +@596 := (hs : @463) -> @595 +@597 := @591 @460 +@599 := @461 @390 @587 +@600 := @529 @11 +@601 := @10 @62 +@603 := @50 @601 @6 +@604 := @10 @71 +@605 := @388 @604 +@613 := {t : @59} -> {vs : @465} -> {ts : @466} -> (h : @603) -> (hs : @533) -> @461 (@605 @20) @482 +@614 := @600 @14 +@615 := @10 @64 +@617 := @50 @615 @14 +@618 := @10 @60 +@619 := @388 @618 +@621 := @461 (@619 @20) +@622 := @480 @14 +@623 := @622 @6 +@628 := {vs : @465} -> {ts : @466} -> (h : @617) -> (hs : @533) -> @621 @623 +@629 := @614 @390 +@630 := @10 @20 +@632 := @50 @630 @14 +@633 := @586 @23 +@635 := @388 @601 @577 +@636 := @461 @635 +@640 := {ts : @466} -> (h : @632) -> (hs : @633) -> @636 @623 +@641 := @629 @587 +@643 := @388 @615 @585 +@644 := @461 @643 +@645 := @622 @587 +@648 := (h : @160) -> (hs : @595) -> @644 @645 +@649 := @641 @158 +@651 := @388 @630 @593 +@652 := @461 @651 +@654 := (hs : @599) -> @652 @645 +@655 := @649 @597 +@656 := @461 @392 +@657 := @656 @645 +@658 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.denote +@660 := @658 @6 @23 +@661 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.__fits_0 +@663 := @661 @6 @23 +@667 := @7 (Coverage.Main.options @6 @23) +@670 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.root @6 @23 +@671 := Ne.{1} +@672 := LexLeanPreservation.Obs +@673 := @671 @672 +@674 := LexLeanPreservation.Rel +@677 := @673 (@674 @23 @15) +@678 := LexLeanPreservation.Obs.stuck +@681 := (f : @161) -> (v : @57) -> @677 @678 +@683 := LexLeanPreservation.Rust.rel_ne_stuck @663 +@690 := (v : @57) -> @673 (@674 (@661 @20 @6) @15) @678 +@691 := @683 @667 +@695 := @673 (@674 @663 @667) @678 +@696 := @464 @395 +@697 := LexLeanPreservation.Rust.FunSem +@703 := (n : @3) -> @697 @202 @204 @71 @15 @60 +@704 := Eq.{1} +@705 := @4 @412 +@706 := @704 @705 +@713 := LexLeanRuntime.index (@464 @412) @412 (LexLeanRuntime.instIndexableList @412) +@717 := @706 (@713 (@413 @202) @60) +@718 := Option.some.{0} +@719 := @718 @412 +@720 := @719 @62 +@721 := @717 @720 +@725 := @436 @211 @202 @204 @62 +@726 := LexLeanTarget.TargetSyntax.Function.types +@727 := @726 @60 +@728 := @725 @727 +@729 := @4 @696 +@730 := @704 @729 +@731 := LexLeanTarget.TargetSemantics.bindAll +@732 := LexLeanTarget.TargetSyntax.Function.parameters +@737 := @730 (@731 (@732 @71) @60 @405) +@738 := @718 @696 +@739 := @738 @62 +@740 := @737 @739 +@741 := @4 @161 +@742 := @704 @741 +@743 := LexLeanPreservation.Rust.fnFallible +@746 := @742 (@743 @220 @202) +@747 := @718 @161 +@748 := @747 @62 +@749 := @746 @748 +@750 := LexLeanPreservation.RunConv +@751 := #13 +@755 := @750 @751 @211 @204 @62 +@757 := @673 @60 @678 +@758 := Exists.{1} +@759 := LexLeanPreservation.Rust.ROut +@760 := @758 @759 +@761 := And +@762 := LexLeanPreservation.Rust.RealizesFn +@766 := @761 (@762 @202 @204 @15) +@767 := LexLeanPreservation.Rust.RCI +@769 := @767 #15 +@770 := LexLeanPreservation.Rust.fnIdent +@771 := @770 @751 +@778 := (hne : @757) -> @760 (fun (ro : @759) => @766 (@769 @771 @220 @15)) +@793 := {p : @16} -> + {c : @17} -> + {A : @18} -> + {f : @3} -> + {fn : @412} -> + {args : @465} -> + {env : @696} -> + {F : @161} -> + {o : @672} -> + (hB : @703) -> + (hfn : @721) -> (hwt : @728) -> (hbind : @740) -> (hF : @749) -> (hA : @755) -> @778 +@795 := LexLeanPreservation.Rust.compose @0 +@796 := @697 @0 +@801 := (n : @3) -> @796 @204 @71 @15 @60 +@802 := @713 @414 +@805 := @706 (@802 @60) @720 +@809 := @447 @202 @204 @62 @727 +@810 := @750 @0 +@813 := @810 @211 @204 @62 +@827 := {c : @17} -> + {A : @18} -> + {f : @3} -> + {fn : @412} -> + {args : @465} -> + {env : @696} -> + {F : @161} -> + {o : @672} -> + (hB : @801) -> + (hfn : @805) -> (hwt : @809) -> (hbind : @740) -> (hF : @749) -> (hA : @813) -> @778 +@828 := @795 @1 +@829 := @796 @1 +@833 := (n : @3) -> @829 @71 @15 @60 +@836 := @455 @204 @62 @727 +@837 := @743 @1 +@840 := @742 (@837 @202) @748 +@841 := @767 @1 +@851 := (hbind : @740) -> + (hF : @840) -> (hA : @813) -> (hne : @757) -> @760 (fun (ro : @759) => @766 (@841 @771 @220 @15)) +@861 := {A : @18} -> + {f : @3} -> + {fn : @412} -> + {args : @465} -> + {env : @696} -> {F : @161} -> {o : @672} -> (hB : @833) -> (hfn : @805) -> (hwt : @836) -> @851 +@862 := @828 @2 +@864 := @829 @2 @15 +@866 := (n : @3) -> @864 @60 +@867 := @461 @62 +@868 := @867 @727 +@877 := {f : @3} -> + {fn : @412} -> + {args : @465} -> + {env : @696} -> {F : @161} -> {o : @672} -> (hB : @866) -> (hfn : @805) -> (hwt : @868) -> @851 +@878 := @862 @402 +@880 := (n : @3) -> @864 @402 +@881 := @802 @402 +@882 := @706 @881 +@883 := @882 @720 +@884 := @837 @402 +@885 := @742 @884 +@886 := @885 @748 +@887 := @810 @402 +@889 := @887 @204 @62 +@891 := @841 (@770 @402) +@899 := (hF : @886) -> (hA : @889) -> (hne : @757) -> @760 (fun (ro : @759) => @766 (@891 @220 @15)) +@908 := {fn : @412} -> + {args : @465} -> + {env : @696} -> + {F : @161} -> {o : @672} -> (hB : @880) -> (hfn : @883) -> (hwt : @868) -> (hbind : @740) -> @899 +@909 := @878 @431 +@911 := @882 (@719 @431) +@912 := @726 @431 +@913 := @867 @912 +@915 := @731 (@732 @431) +@927 := {args : @465} -> + {env : @696} -> + {F : @161} -> + {o : @672} -> + (hB : @880) -> (hfn : @911) -> (hwt : @913) -> (hbind : @730 (@915 @60 @405) @739) -> @899 +@928 := @909 @392 +@930 := @605 (@547 @387) +@932 := @461 @930 @912 +@938 := @388 (@10 @204) (@388 (@170 @71) @387) +@942 := @730 (@915 @938 @405) @739 +@948 := @388 (@10 @211) (@388 (@170 @202) @387) +@950 := @887 @948 @62 +@952 := @388 (@10 @751) +@953 := #12 +@972 := {env : @696} -> + {F : @161} -> + {o : @672} -> + (hB : @880) -> + (hfn : @911) -> + (hwt : @932) -> + (hbind : @942) -> + (hF : @886) -> + (hA : @950) -> + (hne : @757) -> @760 (fun (ro : @759) => @766 (@891 (@952 (@388 (@170 @953) @387)) @15)) +@973 := @928 @410 +@975 := @619 (@561 @387) +@977 := @461 @975 @912 +@988 := @730 (@915 @930 @405) (@738 (@406 (@400 @546) (@406 (@403 @604) @405))) +@994 := @388 (@10 @202) (@388 (@170 @204) @387) +@1016 := {F : @161} -> + {o : @672} -> + (hB : @880) -> + (hfn : @911) -> + (hwt : @977) -> + (hbind : @988) -> + (hF : @886) -> + (hA : @887 @994 @62) -> + (hne : @757) -> + @760 (fun (ro : @759) => @766 (@891 (@388 (@10 @953) (@388 (@170 @220) @387)) @15)) +@1017 := @973 @411 +@1018 := @636 @912 +@1029 := @730 (@915 @975 @405) (@738 (@406 (@400 @560) (@406 (@403 @618) @405))) +@1031 := @885 (@747 @411) +@1033 := @887 @938 @62 +@1034 := @762 @411 +@1056 := {o : @672} -> + (hB : @880) -> + (hfn : @911) -> + (hwt : @1018) -> + (hbind : @1029) -> + (hF : @1031) -> + (hA : @1033) -> + (hne : @757) -> + @760 + (fun (ro : @759) => @761 (@1034 @204 @15) (@891 (@388 (@10 @220) (@388 (@170 @211) @387)) @15)) +@1057 := @1017 @660 +@1058 := @644 @912 +@1069 := @730 (@915 @635 @405) (@738 (@406 (@400 @543) (@406 (@403 @601) @405))) +@1070 := @887 @930 +@1072 := @658 @71 @60 +@1073 := @1070 @1072 +@1075 := @658 @204 @71 +@1094 := (hB : @880) -> + (hfn : @911) -> + (hwt : @1058) -> + (hbind : @1069) -> + (hF : @1031) -> + (hA : @1073) -> + (hne : @673 @1075 @678) -> + @760 (fun (ro : @759) => @761 (@1034 (@658 @211 @202) @15) (@891 @948 @15)) +@1095 := @1057 @435 +@1096 := @652 @912 +@1107 := @730 (@915 @643 @405) (@738 (@406 (@400 @557) (@406 (@403 @615) @405))) +@1108 := @887 @975 +@1110 := @658 @60 @62 +@1129 := (hfn : @911) -> + (hwt : @1096) -> + (hbind : @1107) -> + (hF : @1031) -> + (hA : @1108 @1110) -> + (hne : @673 @1072 @678) -> + @760 (fun (ro : @759) => @761 (@1034 (@658 @202 @204) @15) (@891 @994 @15)) +@1130 := Eq.refl.{1} +@1133 := @1095 (@1130 @705 @881) +@1134 := @656 @912 +@1145 := @730 (@915 @651 @405) (@738 (@406 (@400 @572) (@406 (@403 @630) @405))) +@1146 := @887 @635 +@1148 := @658 @62 @64 +@1164 := (hwt : @1134) -> + (hbind : @1145) -> + (hF : @1031) -> + (hA : @1146 @1148) -> + (hne : @673 @1110 @678) -> @760 (fun (ro : @759) => @761 (@1034 @1075 @15) (@891 @938 @15)) +@1165 := @1133 @655 +@1167 := @915 @392 @405 +@1170 := @730 @1167 (@738 @410) +@1171 := @887 @643 +@1173 := @658 @64 @20 +@1188 := (hbind : @1170) -> + (hF : @1031) -> + (hA : @1171 @1173) -> + (hne : @673 @1148 @678) -> @760 (fun (ro : @759) => @761 (@1034 @1072 @15) (@891 @930 @15)) +@1191 := @1165 (@1130 @729 @1167) +@1192 := @887 @651 +@1194 := @658 @20 @6 +@1208 := (hF : @1031) -> + (hA : @1192 @1194) -> + (hne : @673 @1173 @678) -> @760 (fun (ro : @759) => @761 (@1034 @1110 @15) (@891 @975 @15)) +@1211 := @1191 (@1130 @741 @884) +@1225 := (hA : @887 @392 @660) -> + (hne : @673 @1194 @678) -> @760 (fun (ro : @759) => @761 (@1034 @1148 @15) (@891 @635 @15)) +@1226 := @1211 @670 +@1237 := (hne : @673 @660 @678) -> @760 (fun (ro : @759) => @761 (@1034 @1173 @15) (@891 @643 @15)) +@1238 := @1226 @691 +@1244 := @761 (@1034 @1194 @15) (@891 @651 @15) +@1246 := @760 (fun (ro : @759) => @1244) +@1248 := @760 (fun (__e_ro : @759) => @1244) +@1249 := LexLeanPreservation.Rust.RepresentableL +@1250 := @10 @23 +@1252 := @388 @359 @387 +@1255 := @1249 (@388 @1250 @1252) +@1256 := (__e_hrep : @1255) -> @1248 +@1257 := fun (__e_hrep : @1255) => @1238 +@1258 := (r : @164) -> @1256 +@1259 := fun (r : @164) => @1257 +@1260 := (v : @5) -> @1258 +@1261 := fun (v : @5) => @1259 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R15/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R15/Compose/RustStd.lex.tex new file mode 100644 index 000000000..16f588a91 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R15/Compose/RustStd.lex.tex @@ -0,0 +1,615 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.Compose.RustStd.root : @1260 := @1261 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.RustStd.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.RustStd.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.RustStd.flags +@3 := Nat +@4 := Option.{0} +@5 := @4 @3 +@6 := #2 +@7 := LexLeanTarget.TargetSyntax.Value.nat +@8 := LexLeanPreservation.encOption +@9 := @8 @3 +@10 := @9 @7 +@11 := @10 @6 +@12 := LexLeanTarget.TargetSyntax.Ty.nat +@13 := LexLeanTarget.TargetSyntax.Ty.option +@14 := @13 @12 +@15 := #0 +@16 := LexLeanTarget.TargetSyntax.Program +@17 := LexLeanPreservation.Rust.RCrate +@18 := LexLeanPreservation.Rust.Flags +@19 := LexLeanPreservation.Rust.WT +@20 := #3 +@22 := @19 @20 @6 +@23 := #1 +@24 := @22 @23 +@25 := @7 @15 +@31 := {p : @16} -> {c : @17} -> {A : @18} -> (n : @3) -> @24 @25 @12 +@33 := LexLeanPreservation.Rust.wt_nat @0 +@34 := @19 @0 +@36 := @34 @6 @23 +@41 := {c : @17} -> {A : @18} -> (n : @3) -> @36 @25 @12 +@42 := @33 @1 +@43 := @34 @1 +@44 := @43 @23 +@48 := {A : @18} -> (n : @3) -> @44 @25 @12 +@49 := @42 @2 +@50 := @43 @2 +@51 := @50 @25 +@52 := @51 @12 +@53 := (n : @3) -> @52 +@55 := fun (__x : @3) => @49 @15 +@56 := Sort 1 +@57 := LexLeanTarget.TargetSyntax.Value +@58 := (a._@._internal._hyg.#0 : @15) -> @57 +@59 := LexLeanTarget.TargetSyntax.Ty +@60 := #6 +@61 := @19 @60 +@62 := #5 +@63 := @61 @62 +@64 := #4 +@65 := @63 @64 +@66 := @6 @15 +@69 := (x : @6) -> @65 @66 @23 +@70 := @4 @20 +@71 := #7 +@74 := @19 @71 @60 @62 +@77 := @8 @64 @20 @15 +@78 := @74 @77 +@79 := @13 @6 +@88 := {p : @16} -> + {c : @17} -> {A : @18} -> {α : @56} -> {e : @58} -> {t : @59} -> (h : @69) -> (o : @70) -> @78 @79 +@90 := LexLeanPreservation.Rust.wt_encOption @0 +@92 := @34 @62 @64 +@106 := {c : @17} -> + {A : @18} -> + {α : @56} -> + {e : @58} -> {t : @59} -> (h : (x : @6) -> @92 @66 @23) -> (o : @70) -> @34 @60 @62 @77 @79 +@107 := @90 @1 +@108 := @43 @64 +@120 := {A : @18} -> + {α : @56} -> + {e : @58} -> {t : @59} -> (h : (x : @6) -> @108 @66 @23) -> (o : @70) -> @43 @62 @77 @79 +@121 := @107 @2 +@123 := @50 @66 @23 +@131 := {α : @56} -> {e : @58} -> {t : @59} -> (h : (x : @6) -> @123) -> (o : @70) -> @50 @77 @79 +@132 := @121 @3 +@133 := (a._@._internal._hyg.#0 : @3) -> @57 +@142 := {e : @133} -> {t : @59} -> (h : (x : @3) -> @123) -> (o : @5) -> @50 (@9 @20 @15) @79 +@143 := @132 @7 +@145 := (x : @3) -> @51 @23 +@147 := @50 (@10 @15) +@151 := {t : @59} -> (h : @145) -> (o : @5) -> @147 @79 +@152 := @143 @12 +@153 := (x : @3) -> @52 +@156 := (h : @153) -> (o : @5) -> @147 @14 +@158 := @152 @55 @6 +@160 := @50 @11 @14 +@161 := Bool +@162 := Except.{0, 0} +@163 := @162 @161 +@164 := @163 @3 +@165 := LexLeanTarget.TargetSyntax.Value.bool +@166 := LexLeanPreservation.encExcept +@167 := @166 @161 +@168 := @167 @3 +@169 := @168 @165 +@170 := @169 @7 +@171 := @170 @23 +@172 := LexLeanTarget.TargetSyntax.Ty.bool +@173 := LexLeanTarget.TargetSyntax.Ty.result +@174 := @173 @12 +@175 := @174 @172 +@176 := @165 @15 +@182 := {p : @16} -> {c : @17} -> {A : @18} -> (b : @161) -> @24 @176 @172 +@184 := LexLeanPreservation.Rust.wt_bool @0 +@189 := {c : @17} -> {A : @18} -> (b : @161) -> @36 @176 @172 +@190 := @184 @1 +@194 := {A : @18} -> (b : @161) -> @44 @176 @172 +@195 := @190 @2 +@196 := @50 @176 +@197 := @196 @172 +@198 := (b : @161) -> @197 +@200 := fun (__x : @161) => @195 @15 +@201 := (a._@._internal._hyg.#0 : @23) -> @57 +@202 := #9 +@203 := @19 @202 +@204 := #8 +@206 := @203 @204 @71 +@207 := @64 @15 +@210 := (x : @62) -> @206 @207 @23 +@211 := #10 +@217 := (x : @62) -> @19 @211 @202 @204 @207 @20 +@219 := @162 @71 @60 +@220 := #11 +@223 := @19 @220 @211 @202 +@228 := @166 @204 @71 @60 @62 @15 +@229 := @223 @228 +@231 := @173 @64 @20 +@244 := {p : @16} -> + {c : @17} -> + {A : @18} -> + {ε : @56} -> + {α : @56} -> + {ee : @201} -> + {ea : @201} -> {s : @59} -> {t : @59} -> (he : @210) -> (ha : @217) -> (x : @219) -> @229 @231 +@246 := LexLeanPreservation.Rust.wt_encExcept @0 +@271 := {c : @17} -> + {A : @18} -> + {ε : @56} -> + {α : @56} -> + {ee : @201} -> + {ea : @201} -> + {s : @59} -> + {t : @59} -> + (he : (x : @62) -> @34 @204 @71 @207 @23) -> + (ha : (x : @62) -> @34 @202 @204 @207 @20) -> (x : @219) -> @34 @211 @202 @228 @231 +@272 := @246 @1 +@293 := {A : @18} -> + {ε : @56} -> + {α : @56} -> + {ee : @201} -> + {ea : @201} -> + {s : @59} -> + {t : @59} -> + (he : (x : @62) -> @43 @71 @207 @23) -> + (ha : (x : @62) -> @43 @204 @207 @20) -> (x : @219) -> @43 @202 @228 @231 +@294 := @272 @2 +@295 := @50 @207 +@296 := @295 @23 +@297 := (x : @62) -> @296 +@298 := @295 @20 +@299 := (x : @62) -> @298 +@310 := {ε : @56} -> + {α : @56} -> + {ee : @201} -> + {ea : @201} -> {s : @59} -> {t : @59} -> (he : @297) -> (ha : @299) -> (x : @219) -> @50 @228 @231 +@311 := @294 @161 +@312 := (a._@._internal._hyg.#0 : @161) -> @57 +@313 := (x : @161) -> @296 +@328 := {α : @56} -> + {ee : @312} -> + {ea : @201} -> + {s : @59} -> + {t : @59} -> (he : @313) -> (ha : @299) -> (x : @163 @60) -> @50 (@167 @71 @60 @62 @15) @231 +@329 := @311 @3 +@330 := (x : @3) -> @298 +@342 := {ee : @312} -> + {ea : @133} -> + {s : @59} -> {t : @59} -> (he : @313) -> (ha : @330) -> (x : @164) -> @50 (@168 @60 @62 @15) @231 +@343 := @329 @165 +@345 := (x : @161) -> @196 @23 +@355 := {ea : @133} -> + {s : @59} -> {t : @59} -> (he : @345) -> (ha : @330) -> (x : @164) -> @50 (@169 @62 @15) @231 +@356 := @343 @7 +@358 := (x : @3) -> @51 @20 +@359 := @170 @15 +@360 := @50 @359 +@366 := {s : @59} -> {t : @59} -> (he : @345) -> (ha : @358) -> (x : @164) -> @360 @231 +@367 := @356 @12 +@373 := {t : @59} -> (he : @345) -> (ha : @153) -> (x : @164) -> @360 (@174 @20) +@374 := @367 @172 +@379 := (he : (x : @161) -> @197) -> (ha : @153) -> (x : @164) -> @360 @175 +@382 := @374 @200 @55 @23 +@384 := @50 @171 @175 +@385 := List.nil.{0} +@386 := List.cons.{0} +@387 := @385 @57 +@388 := @386 @57 +@390 := @388 @171 @387 +@392 := @388 @11 @390 +@395 := Prod.{0, 0} @3 @57 +@396 := 1 +@399 := Prod.mk.{0, 0} @3 @57 +@400 := @399 @396 +@401 := @400 @171 +@402 := 0 +@403 := @399 @402 +@404 := @403 @11 +@405 := @385 @395 +@406 := @386 @395 +@408 := @406 @404 @405 +@410 := @406 @401 @408 +@411 := Bool.true +@412 := LexLeanTarget.TargetSyntax.Function +@413 := LexLeanTarget.TargetSyntax.Program.functions +@414 := @413 @0 +@415 := @385 @3 +@416 := @385 @59 +@417 := LexLeanTarget.TargetSyntax.Ty.unit +@418 := LexLeanTarget.TargetSyntax.Value.unit +@421 := LexLeanTarget.TargetSyntax.Expr.value @417 @418 +@426 := LexLeanTarget.TargetSyntax.Function.mk @415 @416 @417 @421 +@431 := List.getD.{0} @412 @414 @402 @426 +@435 := fun (__e_n : @3) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.RustStd.root @15 @402 +@436 := LexLeanPreservation.Rust.WTL +@444 := {p : @16} -> {c : @17} -> {A : @18} -> @436 @6 @23 @15 @387 @416 +@446 := LexLeanPreservation.Rust.wtl_nil @0 +@447 := @436 @0 +@453 := {c : @17} -> {A : @18} -> @447 @23 @15 @387 @416 +@454 := @446 @1 +@455 := @447 @1 +@459 := {A : @18} -> @455 @15 @387 @416 +@460 := @454 @2 +@461 := @455 @2 +@462 := @461 @387 +@463 := @462 @416 +@464 := List.{0} +@465 := @464 @57 +@466 := @464 @59 +@468 := @65 @20 @6 +@473 := @436 @71 @60 @62 @6 @23 +@476 := @436 @204 @71 @60 +@478 := @388 @62 @20 +@479 := @476 @478 +@480 := @386 @59 +@482 := @480 @64 @6 +@492 := {p : @16} -> + {c : @17} -> + {A : @18} -> + {v : @57} -> {t : @59} -> {vs : @465} -> {ts : @466} -> (h : @468) -> (hs : @473) -> @479 @482 +@494 := LexLeanPreservation.Rust.wtl_cons @0 +@512 := {c : @17} -> + {A : @18} -> + {v : @57} -> + {t : @59} -> + {vs : @465} -> + {ts : @466} -> (h : @92 @20 @6) -> (hs : @447 @60 @62 @6 @23) -> @447 @71 @60 @478 @482 +@513 := @494 @1 +@528 := {A : @18} -> + {v : @57} -> + {t : @59} -> + {vs : @465} -> {ts : @466} -> (h : @108 @20 @6) -> (hs : @455 @62 @6 @23) -> @455 @60 @478 @482 +@529 := @513 @2 +@531 := @50 @20 @6 +@533 := @461 @6 @23 +@541 := {v : @57} -> + {t : @59} -> {vs : @465} -> {ts : @466} -> (h : @531) -> (hs : @533) -> @461 @478 @482 +@542 := @529 @171 +@543 := @170 @64 +@545 := @50 @543 @6 +@546 := @170 @60 +@547 := @388 @546 +@555 := {t : @59} -> {vs : @465} -> {ts : @466} -> (h : @545) -> (hs : @533) -> @461 (@547 @20) @482 +@556 := @542 @175 +@557 := @170 @20 +@559 := @50 @557 @175 +@560 := @170 @62 +@561 := @388 @560 +@563 := @461 (@561 @20) +@564 := @480 @175 +@565 := @564 @6 +@570 := {vs : @465} -> {ts : @466} -> (h : @559) -> (hs : @533) -> @563 @565 +@571 := @556 @387 +@572 := @170 @6 +@574 := @50 @572 @175 +@575 := @462 @23 +@577 := @388 @543 @387 +@582 := {ts : @466} -> (h : @574) -> (hs : @575) -> @461 @577 @565 +@583 := @571 @416 +@585 := @388 @557 @387 +@586 := @461 @585 +@587 := @564 @416 +@590 := (h : @384) -> (hs : @463) -> @586 @587 +@591 := @583 @382 +@593 := @388 @572 @387 +@595 := @461 @593 @587 +@596 := (hs : @463) -> @595 +@597 := @591 @460 +@599 := @461 @390 @587 +@600 := @529 @11 +@601 := @10 @62 +@603 := @50 @601 @6 +@604 := @10 @71 +@605 := @388 @604 +@613 := {t : @59} -> {vs : @465} -> {ts : @466} -> (h : @603) -> (hs : @533) -> @461 (@605 @20) @482 +@614 := @600 @14 +@615 := @10 @64 +@617 := @50 @615 @14 +@618 := @10 @60 +@619 := @388 @618 +@621 := @461 (@619 @20) +@622 := @480 @14 +@623 := @622 @6 +@628 := {vs : @465} -> {ts : @466} -> (h : @617) -> (hs : @533) -> @621 @623 +@629 := @614 @390 +@630 := @10 @20 +@632 := @50 @630 @14 +@633 := @586 @23 +@635 := @388 @601 @577 +@636 := @461 @635 +@640 := {ts : @466} -> (h : @632) -> (hs : @633) -> @636 @623 +@641 := @629 @587 +@643 := @388 @615 @585 +@644 := @461 @643 +@645 := @622 @587 +@648 := (h : @160) -> (hs : @595) -> @644 @645 +@649 := @641 @158 +@651 := @388 @630 @593 +@652 := @461 @651 +@654 := (hs : @599) -> @652 @645 +@655 := @649 @597 +@656 := @461 @392 +@657 := @656 @645 +@658 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.denote +@660 := @658 @6 @23 +@661 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.__fits_0 +@663 := @661 @6 @23 +@667 := @7 (Coverage.Main.options @6 @23) +@670 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.root @6 @23 +@671 := Ne.{1} +@672 := LexLeanPreservation.Obs +@673 := @671 @672 +@674 := LexLeanPreservation.Rel +@677 := @673 (@674 @23 @15) +@678 := LexLeanPreservation.Obs.stuck +@681 := (f : @161) -> (v : @57) -> @677 @678 +@683 := LexLeanPreservation.Rust.rel_ne_stuck @663 +@690 := (v : @57) -> @673 (@674 (@661 @20 @6) @15) @678 +@691 := @683 @667 +@695 := @673 (@674 @663 @667) @678 +@696 := @464 @395 +@697 := LexLeanPreservation.Rust.FunSem +@703 := (n : @3) -> @697 @202 @204 @71 @15 @60 +@704 := Eq.{1} +@705 := @4 @412 +@706 := @704 @705 +@713 := LexLeanRuntime.index (@464 @412) @412 (LexLeanRuntime.instIndexableList @412) +@717 := @706 (@713 (@413 @202) @60) +@718 := Option.some.{0} +@719 := @718 @412 +@720 := @719 @62 +@721 := @717 @720 +@725 := @436 @211 @202 @204 @62 +@726 := LexLeanTarget.TargetSyntax.Function.types +@727 := @726 @60 +@728 := @725 @727 +@729 := @4 @696 +@730 := @704 @729 +@731 := LexLeanTarget.TargetSemantics.bindAll +@732 := LexLeanTarget.TargetSyntax.Function.parameters +@737 := @730 (@731 (@732 @71) @60 @405) +@738 := @718 @696 +@739 := @738 @62 +@740 := @737 @739 +@741 := @4 @161 +@742 := @704 @741 +@743 := LexLeanPreservation.Rust.fnFallible +@746 := @742 (@743 @220 @202) +@747 := @718 @161 +@748 := @747 @62 +@749 := @746 @748 +@750 := LexLeanPreservation.RunConv +@751 := #13 +@755 := @750 @751 @211 @204 @62 +@757 := @673 @60 @678 +@758 := Exists.{1} +@759 := LexLeanPreservation.Rust.ROut +@760 := @758 @759 +@761 := And +@762 := LexLeanPreservation.Rust.RealizesFn +@766 := @761 (@762 @202 @204 @15) +@767 := LexLeanPreservation.Rust.RCI +@769 := @767 #15 +@770 := LexLeanPreservation.Rust.fnIdent +@771 := @770 @751 +@778 := (hne : @757) -> @760 (fun (ro : @759) => @766 (@769 @771 @220 @15)) +@793 := {p : @16} -> + {c : @17} -> + {A : @18} -> + {f : @3} -> + {fn : @412} -> + {args : @465} -> + {env : @696} -> + {F : @161} -> + {o : @672} -> + (hB : @703) -> + (hfn : @721) -> (hwt : @728) -> (hbind : @740) -> (hF : @749) -> (hA : @755) -> @778 +@795 := LexLeanPreservation.Rust.compose @0 +@796 := @697 @0 +@801 := (n : @3) -> @796 @204 @71 @15 @60 +@802 := @713 @414 +@805 := @706 (@802 @60) @720 +@809 := @447 @202 @204 @62 @727 +@810 := @750 @0 +@813 := @810 @211 @204 @62 +@827 := {c : @17} -> + {A : @18} -> + {f : @3} -> + {fn : @412} -> + {args : @465} -> + {env : @696} -> + {F : @161} -> + {o : @672} -> + (hB : @801) -> + (hfn : @805) -> (hwt : @809) -> (hbind : @740) -> (hF : @749) -> (hA : @813) -> @778 +@828 := @795 @1 +@829 := @796 @1 +@833 := (n : @3) -> @829 @71 @15 @60 +@836 := @455 @204 @62 @727 +@837 := @743 @1 +@840 := @742 (@837 @202) @748 +@841 := @767 @1 +@851 := (hbind : @740) -> + (hF : @840) -> (hA : @813) -> (hne : @757) -> @760 (fun (ro : @759) => @766 (@841 @771 @220 @15)) +@861 := {A : @18} -> + {f : @3} -> + {fn : @412} -> + {args : @465} -> + {env : @696} -> {F : @161} -> {o : @672} -> (hB : @833) -> (hfn : @805) -> (hwt : @836) -> @851 +@862 := @828 @2 +@864 := @829 @2 @15 +@866 := (n : @3) -> @864 @60 +@867 := @461 @62 +@868 := @867 @727 +@877 := {f : @3} -> + {fn : @412} -> + {args : @465} -> + {env : @696} -> {F : @161} -> {o : @672} -> (hB : @866) -> (hfn : @805) -> (hwt : @868) -> @851 +@878 := @862 @402 +@880 := (n : @3) -> @864 @402 +@881 := @802 @402 +@882 := @706 @881 +@883 := @882 @720 +@884 := @837 @402 +@885 := @742 @884 +@886 := @885 @748 +@887 := @810 @402 +@889 := @887 @204 @62 +@891 := @841 (@770 @402) +@899 := (hF : @886) -> (hA : @889) -> (hne : @757) -> @760 (fun (ro : @759) => @766 (@891 @220 @15)) +@908 := {fn : @412} -> + {args : @465} -> + {env : @696} -> + {F : @161} -> {o : @672} -> (hB : @880) -> (hfn : @883) -> (hwt : @868) -> (hbind : @740) -> @899 +@909 := @878 @431 +@911 := @882 (@719 @431) +@912 := @726 @431 +@913 := @867 @912 +@915 := @731 (@732 @431) +@927 := {args : @465} -> + {env : @696} -> + {F : @161} -> + {o : @672} -> + (hB : @880) -> (hfn : @911) -> (hwt : @913) -> (hbind : @730 (@915 @60 @405) @739) -> @899 +@928 := @909 @392 +@930 := @605 (@547 @387) +@932 := @461 @930 @912 +@938 := @388 (@10 @204) (@388 (@170 @71) @387) +@942 := @730 (@915 @938 @405) @739 +@948 := @388 (@10 @211) (@388 (@170 @202) @387) +@950 := @887 @948 @62 +@952 := @388 (@10 @751) +@953 := #12 +@972 := {env : @696} -> + {F : @161} -> + {o : @672} -> + (hB : @880) -> + (hfn : @911) -> + (hwt : @932) -> + (hbind : @942) -> + (hF : @886) -> + (hA : @950) -> + (hne : @757) -> @760 (fun (ro : @759) => @766 (@891 (@952 (@388 (@170 @953) @387)) @15)) +@973 := @928 @410 +@975 := @619 (@561 @387) +@977 := @461 @975 @912 +@988 := @730 (@915 @930 @405) (@738 (@406 (@400 @546) (@406 (@403 @604) @405))) +@994 := @388 (@10 @202) (@388 (@170 @204) @387) +@1016 := {F : @161} -> + {o : @672} -> + (hB : @880) -> + (hfn : @911) -> + (hwt : @977) -> + (hbind : @988) -> + (hF : @886) -> + (hA : @887 @994 @62) -> + (hne : @757) -> + @760 (fun (ro : @759) => @766 (@891 (@388 (@10 @953) (@388 (@170 @220) @387)) @15)) +@1017 := @973 @411 +@1018 := @636 @912 +@1029 := @730 (@915 @975 @405) (@738 (@406 (@400 @560) (@406 (@403 @618) @405))) +@1031 := @885 (@747 @411) +@1033 := @887 @938 @62 +@1034 := @762 @411 +@1056 := {o : @672} -> + (hB : @880) -> + (hfn : @911) -> + (hwt : @1018) -> + (hbind : @1029) -> + (hF : @1031) -> + (hA : @1033) -> + (hne : @757) -> + @760 + (fun (ro : @759) => @761 (@1034 @204 @15) (@891 (@388 (@10 @220) (@388 (@170 @211) @387)) @15)) +@1057 := @1017 @660 +@1058 := @644 @912 +@1069 := @730 (@915 @635 @405) (@738 (@406 (@400 @543) (@406 (@403 @601) @405))) +@1070 := @887 @930 +@1072 := @658 @71 @60 +@1073 := @1070 @1072 +@1075 := @658 @204 @71 +@1094 := (hB : @880) -> + (hfn : @911) -> + (hwt : @1058) -> + (hbind : @1069) -> + (hF : @1031) -> + (hA : @1073) -> + (hne : @673 @1075 @678) -> + @760 (fun (ro : @759) => @761 (@1034 (@658 @211 @202) @15) (@891 @948 @15)) +@1095 := @1057 @435 +@1096 := @652 @912 +@1107 := @730 (@915 @643 @405) (@738 (@406 (@400 @557) (@406 (@403 @615) @405))) +@1108 := @887 @975 +@1110 := @658 @60 @62 +@1129 := (hfn : @911) -> + (hwt : @1096) -> + (hbind : @1107) -> + (hF : @1031) -> + (hA : @1108 @1110) -> + (hne : @673 @1072 @678) -> + @760 (fun (ro : @759) => @761 (@1034 (@658 @202 @204) @15) (@891 @994 @15)) +@1130 := Eq.refl.{1} +@1133 := @1095 (@1130 @705 @881) +@1134 := @656 @912 +@1145 := @730 (@915 @651 @405) (@738 (@406 (@400 @572) (@406 (@403 @630) @405))) +@1146 := @887 @635 +@1148 := @658 @62 @64 +@1164 := (hwt : @1134) -> + (hbind : @1145) -> + (hF : @1031) -> + (hA : @1146 @1148) -> + (hne : @673 @1110 @678) -> @760 (fun (ro : @759) => @761 (@1034 @1075 @15) (@891 @938 @15)) +@1165 := @1133 @655 +@1167 := @915 @392 @405 +@1170 := @730 @1167 (@738 @410) +@1171 := @887 @643 +@1173 := @658 @64 @20 +@1188 := (hbind : @1170) -> + (hF : @1031) -> + (hA : @1171 @1173) -> + (hne : @673 @1148 @678) -> @760 (fun (ro : @759) => @761 (@1034 @1072 @15) (@891 @930 @15)) +@1191 := @1165 (@1130 @729 @1167) +@1192 := @887 @651 +@1194 := @658 @20 @6 +@1208 := (hF : @1031) -> + (hA : @1192 @1194) -> + (hne : @673 @1173 @678) -> @760 (fun (ro : @759) => @761 (@1034 @1110 @15) (@891 @975 @15)) +@1211 := @1191 (@1130 @741 @884) +@1225 := (hA : @887 @392 @660) -> + (hne : @673 @1194 @678) -> @760 (fun (ro : @759) => @761 (@1034 @1148 @15) (@891 @635 @15)) +@1226 := @1211 @670 +@1237 := (hne : @673 @660 @678) -> @760 (fun (ro : @759) => @761 (@1034 @1173 @15) (@891 @643 @15)) +@1238 := @1226 @691 +@1244 := @761 (@1034 @1194 @15) (@891 @651 @15) +@1246 := @760 (fun (ro : @759) => @1244) +@1248 := @760 (fun (__e_ro : @759) => @1244) +@1249 := LexLeanPreservation.Rust.RepresentableL +@1250 := @10 @23 +@1252 := @388 @359 @387 +@1255 := @1249 (@388 @1250 @1252) +@1256 := (__e_hrep : @1255) -> @1248 +@1257 := fun (__e_hrep : @1255) => @1238 +@1258 := (r : @164) -> @1256 +@1259 := fun (r : @164) => @1257 +@1260 := (v : @5) -> @1258 +@1261 := fun (v : @5) => @1259 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R15/RustCore.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R15/RustCore.lean new file mode 100644 index 000000000..334776d48 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R15/RustCore.lean @@ -0,0 +1,33 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.RustCore +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1], types := [(.option .nat), (.result .nat .bool)], result := .nat, + body := (.prim .natAdd [(.«match» .nat (.var 0) [(.arm .none [] (.value .nat (.nat 0))), (.arm .some [2] (.var 2))]), (.«match» .nat (.var 1) [(.arm .ok [3] (.var 3)), (.arm .error [4] (.cond (.var 4) (.value .nat (.nat 1)) (.value .nat (.nat 2))))])]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .core, items := [ + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.option .nat) }, { pattern := (.bind (.generated .binding 1)), type := (.result .nat .bool) }] (.fallible .nat) (.mk [(.mk (.bind (.generated .operand 3)) none (.block (.mk [(.mk (.bind (.generated .holder 1)) none (.copy (.generated .binding 0)))] (.matchOn (.move (.generated .holder 1)) [(.mk .none (.mk [] (.lit (.nat 0)))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.copy (.generated .binding 2))))])))), (.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .holder 2)) none (.copy (.generated .binding 1)))] (.matchOn (.move (.generated .holder 2)) [(.mk (.ok (.bind (.generated .binding 3))) (.mk [] (.copy (.generated .binding 3)))), (.mk (.err (.bind (.generated .binding 4))) (.mk [] (.cond (.copy (.generated .binding 4)) (.mk [] (.lit (.nat 1))) (.mk [] (.lit (.nat 2))))))]))))] (.call (.runtime .natAdd) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false)))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 3)) none (.block (.mk [(.mk (.bind (.generated .holder 1)) none (.copy (.generated .binding 0)))] (.matchOn (.move (.generated .holder 1)) [(.mk .none (.mk [] (.lit (.nat 0)))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.copy (.generated .binding 2))))])))), (.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .holder 2)) none (.copy (.generated .binding 1)))] (.matchOn (.move (.generated .holder 2)) [(.mk (.ok (.bind (.generated .binding 3))) (.mk [] (.copy (.generated .binding 3)))), (.mk (.err (.bind (.generated .binding 4))) (.mk [] (.cond (.copy (.generated .binding 4)) (.mk [] (.lit (.nat 1))) (.mk [] (.lit (.nat 2))))))]))))], (.call (.runtime .natAdd) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false), [(1, (.result .nat .bool), (some 1)), (0, (.option .nat), (some 0))], rfl, rfl, + (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 1)) none (.copy (.generated .binding 0)))]) (tail := (.matchOn (.move (.generated .holder 1)) [(.mk .none (.mk [] (.lit (.nat 0)))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.copy (.generated .binding 2))))])) (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.result .nat .bool), (some 1)), (0, (.option .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.nat 0))) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, (.result .nat .bool), (some 1)), (0, (.option .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.copy (.generated .binding 2))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.bOfE (Corr.value rfl rfl))) rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 2)) none (.copy (.generated .binding 1)))]) (tail := (.matchOn (.move (.generated .holder 2)) [(.mk (.ok (.bind (.generated .binding 3))) (.mk [] (.copy (.generated .binding 3)))), (.mk (.err (.bind (.generated .binding 4))) (.mk [] (.cond (.copy (.generated .binding 4)) (.mk [] (.lit (.nat 1))) (.mk [] (.lit (.nat 2))))))])) (Corr.matchArms (st := (.result .nat .bool)) (U := []) (view := false) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (1, (.result .nat .bool), (some 1)), (0, (.option .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.copy (.generated .binding 3))) (Corr.mCons (Γ' := [(4, .bool, (some 4)), (1, (.result .nat .bool), (some 1)), (0, (.option .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.copy (.generated .binding 4)) (.mk [] (.lit (.nat 1))) (.mk [] (.lit (.nat 2))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.copy (.generated .binding 4))) (lk := []) (Corr.bOfE (Corr.var rfl rfl)) (Corr.kIf (la := []) (ta := (.lit (.nat 1))) (lb := []) (tb := (.lit (.nat 2))) (Corr.bOfE (Corr.value rfl rfl)) (Corr.bOfE (Corr.value rfl rfl))))) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | _ + 1 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.RustCore diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R15/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R15/RustStd.lean new file mode 100644 index 000000000..f0d5d1ca1 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R15/RustStd.lean @@ -0,0 +1,33 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1], types := [(.option .nat), (.result .nat .bool)], result := .nat, + body := (.prim .natAdd [(.«match» .nat (.var 0) [(.arm .none [] (.value .nat (.nat 0))), (.arm .some [2] (.var 2))]), (.«match» .nat (.var 1) [(.arm .ok [3] (.var 3)), (.arm .error [4] (.cond (.var 4) (.value .nat (.nat 1)) (.value .nat (.nat 2))))])]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.option .nat) }, { pattern := (.bind (.generated .binding 1)), type := (.result .nat .bool) }] (.fallible .nat) (.mk [(.mk (.bind (.generated .operand 3)) none (.block (.mk [(.mk (.bind (.generated .holder 1)) none (.copy (.generated .binding 0)))] (.matchOn (.move (.generated .holder 1)) [(.mk .none (.mk [] (.lit (.nat 0)))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.copy (.generated .binding 2))))])))), (.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .holder 2)) none (.copy (.generated .binding 1)))] (.matchOn (.move (.generated .holder 2)) [(.mk (.ok (.bind (.generated .binding 3))) (.mk [] (.copy (.generated .binding 3)))), (.mk (.err (.bind (.generated .binding 4))) (.mk [] (.cond (.copy (.generated .binding 4)) (.mk [] (.lit (.nat 1))) (.mk [] (.lit (.nat 2))))))]))))] (.call (.runtime .natAdd) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false)))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 3)) none (.block (.mk [(.mk (.bind (.generated .holder 1)) none (.copy (.generated .binding 0)))] (.matchOn (.move (.generated .holder 1)) [(.mk .none (.mk [] (.lit (.nat 0)))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.copy (.generated .binding 2))))])))), (.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .holder 2)) none (.copy (.generated .binding 1)))] (.matchOn (.move (.generated .holder 2)) [(.mk (.ok (.bind (.generated .binding 3))) (.mk [] (.copy (.generated .binding 3)))), (.mk (.err (.bind (.generated .binding 4))) (.mk [] (.cond (.copy (.generated .binding 4)) (.mk [] (.lit (.nat 1))) (.mk [] (.lit (.nat 2))))))]))))], (.call (.runtime .natAdd) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false), [(1, (.result .nat .bool), (some 1)), (0, (.option .nat), (some 0))], rfl, rfl, + (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 1)) none (.copy (.generated .binding 0)))]) (tail := (.matchOn (.move (.generated .holder 1)) [(.mk .none (.mk [] (.lit (.nat 0)))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.copy (.generated .binding 2))))])) (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.result .nat .bool), (some 1)), (0, (.option .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.nat 0))) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, (.result .nat .bool), (some 1)), (0, (.option .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.copy (.generated .binding 2))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.bOfE (Corr.value rfl rfl))) rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 2)) none (.copy (.generated .binding 1)))]) (tail := (.matchOn (.move (.generated .holder 2)) [(.mk (.ok (.bind (.generated .binding 3))) (.mk [] (.copy (.generated .binding 3)))), (.mk (.err (.bind (.generated .binding 4))) (.mk [] (.cond (.copy (.generated .binding 4)) (.mk [] (.lit (.nat 1))) (.mk [] (.lit (.nat 2))))))])) (Corr.matchArms (st := (.result .nat .bool)) (U := []) (view := false) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (1, (.result .nat .bool), (some 1)), (0, (.option .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.copy (.generated .binding 3))) (Corr.mCons (Γ' := [(4, .bool, (some 4)), (1, (.result .nat .bool), (some 1)), (0, (.option .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.copy (.generated .binding 4)) (.mk [] (.lit (.nat 1))) (.mk [] (.lit (.nat 2))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.copy (.generated .binding 4))) (lk := []) (Corr.bOfE (Corr.var rfl rfl)) (Corr.kIf (la := []) (ta := (.lit (.nat 1))) (lb := []) (tb := (.lit (.nat 2))) (Corr.bOfE (Corr.value rfl rfl)) (Corr.bOfE (Corr.value rfl rfl))))) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | _ + 1 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R16.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R16.lean similarity index 97% rename from examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R16.lean rename to examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R16.lean index fe8049d58..968b17c7f 100644 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R16.lean +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R16.lean @@ -18,7 +18,7 @@ set_option maxRecDepth 100000 set_option maxHeartbeats 0 set_option synthInstance.maxHeartbeats 0 set_option linter.unusedVariables false -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16 def __prog : _root_.LexLeanTarget.TargetSyntax.Program := { adts := [], functions := [ @@ -37,4 +37,4 @@ def denote (n : Nat) : _root_.LexLeanPreservation.Obs := theorem root (n : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat n)] (_root_.LexLeanPreservation.Rel (__fits_0 n) ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encExcept _root_.LexLeanPreservation.encUnit _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Coverage.Main.builders n))) := _root_.LexLeanPreservation.run_of_funRel (__rel_0 n) -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16 +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16 diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R16/Compose/RustCore.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R16/Compose/RustCore.lex.tex new file mode 100644 index 000000000..ed24427ac --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R16/Compose/RustCore.lex.tex @@ -0,0 +1,424 @@ +\begin{lexlean}{RustCore} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.Compose.RustCore} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.RustCore, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.Compose.RustCore.root : @844 := @845 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.Compose.RustCore.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.RustCore.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.RustCore.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.RustCore.flags +@3 := Nat +@4 := #1 +@5 := LexLeanTarget.TargetSyntax.Value.nat +@6 := @5 @4 +@7 := LexLeanTarget.TargetSyntax.Ty.nat +@8 := LexLeanTarget.TargetSyntax.Program +@9 := LexLeanPreservation.Rust.RCrate +@10 := LexLeanPreservation.Rust.Flags +@11 := LexLeanPreservation.Rust.WT +@12 := #3 +@13 := @11 @12 +@14 := #2 +@16 := @13 @14 @4 +@17 := #0 +@18 := @5 @17 +@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 +@26 := LexLeanPreservation.Rust.wt_nat @0 +@27 := @11 @0 +@34 := {c : @9} -> {A : @10} -> (n : @3) -> @27 @14 @4 @18 @7 +@35 := @26 @1 +@36 := @27 @1 +@41 := {A : @10} -> (n : @3) -> @36 @4 @18 @7 +@42 := @35 @2 +@43 := @36 @2 +@46 := (n : @3) -> @43 @18 @7 +@47 := @42 @4 +@49 := @43 @6 @7 +@50 := LexLeanTarget.TargetSyntax.Value +@51 := List.nil.{0} +@52 := List.cons.{0} +@53 := @51 @50 +@54 := @52 @50 +@56 := @54 @6 @53 +@59 := Prod.{0, 0} @3 @50 +@60 := 0 +@64 := Prod.mk.{0, 0} @3 @50 @60 +@65 := @64 @6 +@66 := @51 @59 +@67 := @52 @59 +@69 := @67 @65 @66 +@70 := Bool.true +@71 := LexLeanTarget.TargetSyntax.Function +@72 := LexLeanTarget.TargetSyntax.Program.functions +@73 := @72 @0 +@74 := LexLeanTarget.TargetSyntax.Ty +@75 := @51 @3 +@76 := @51 @74 +@77 := LexLeanTarget.TargetSyntax.Ty.unit +@78 := LexLeanTarget.TargetSyntax.Value.unit +@81 := LexLeanTarget.TargetSyntax.Expr.value @77 @78 +@86 := LexLeanTarget.TargetSyntax.Function.mk @75 @76 @77 @81 +@91 := List.getD.{0} @71 @73 @60 @86 +@95 := fun (__e_n : @3) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.RustCore.root @17 @60 +@96 := LexLeanPreservation.Rust.WTL +@104 := {p : @8} -> {c : @9} -> {A : @10} -> @96 @14 @4 @17 @53 @76 +@106 := LexLeanPreservation.Rust.wtl_nil @0 +@107 := @96 @0 +@113 := {c : @9} -> {A : @10} -> @107 @4 @17 @53 @76 +@114 := @106 @1 +@115 := @107 @1 +@119 := {A : @10} -> @115 @17 @53 @76 +@120 := @114 @2 +@121 := @115 @2 +@122 := @121 @53 +@123 := @122 @76 +@124 := List.{0} +@125 := @124 @50 +@126 := @124 @74 +@127 := #6 +@128 := @11 @127 +@129 := #5 +@130 := @128 @129 +@131 := #4 +@134 := @130 @131 @12 @14 +@135 := #7 +@140 := @96 @135 @127 @129 @14 @4 +@141 := #8 +@144 := @96 @141 @135 @127 +@146 := @54 @129 @12 +@147 := @144 @146 +@148 := @52 @74 +@150 := @148 @131 @14 +@160 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {v : @50} -> {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @134) -> (hs : @140) -> @147 @150 +@162 := LexLeanPreservation.Rust.wtl_cons @0 +@182 := {c : @9} -> + {A : @10} -> + {v : @50} -> + {t : @74} -> + {vs : @125} -> + {ts : @126} -> + (h : @27 @129 @131 @12 @14) -> (hs : @107 @127 @129 @14 @4) -> @107 @135 @127 @146 @150 +@183 := @162 @1 +@199 := {A : @10} -> + {v : @50} -> + {t : @74} -> + {vs : @125} -> + {ts : @126} -> (h : @36 @131 @12 @14) -> (hs : @115 @129 @14 @4) -> @115 @127 @146 @150 +@200 := @183 @2 +@202 := @43 @12 @14 +@204 := @121 @14 @4 +@212 := {v : @50} -> + {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @202) -> (hs : @204) -> @121 @146 @150 +@213 := @200 @6 +@214 := @5 @131 +@216 := @43 @214 @14 +@217 := @5 @127 +@218 := @54 @217 +@226 := {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @216) -> (hs : @204) -> @121 (@218 @12) @150 +@227 := @213 @7 +@228 := @5 @12 +@230 := @43 @228 @7 +@231 := @5 @129 +@232 := @54 @231 +@234 := @121 (@232 @12) +@235 := @148 @7 +@236 := @235 @14 +@241 := {vs : @125} -> {ts : @126} -> (h : @230) -> (hs : @204) -> @234 @236 +@242 := @227 @53 +@243 := @5 @14 +@245 := @43 @243 @7 +@246 := @122 @4 +@248 := @54 @214 @53 +@249 := @121 @248 +@253 := {ts : @126} -> (h : @245) -> (hs : @246) -> @249 @236 +@254 := @242 @76 +@256 := @54 @228 @53 +@257 := @121 @256 +@258 := @235 @76 +@261 := (h : @49) -> (hs : @123) -> @257 @258 +@262 := @254 @47 +@264 := @54 @243 @53 +@265 := @121 @264 +@267 := (hs : @123) -> @265 @258 +@268 := @262 @120 +@269 := @121 @56 +@270 := @269 @258 +@271 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.denote +@272 := @271 @4 +@273 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.__fits_0 +@274 := @273 @4 +@276 := Coverage.Main.builders @4 +@277 := Option.{0} +@278 := @277 @3 +@279 := Unit +@282 := Except.{0, 0} @279 @3 +@285 := LexLeanPreservation.encOption @3 @5 +@286 := LexLeanPreservation.encUnit +@291 := LexLeanPreservation.encExcept @279 @3 @286 @5 +@297 := LexLeanPreservation.encPair @278 @282 @285 @291 @276 +@299 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.root @4 +@300 := Bool +@301 := Ne.{1} +@302 := LexLeanPreservation.Obs +@303 := @301 @302 +@304 := LexLeanPreservation.Rel +@307 := @303 (@304 @4 @17) +@308 := LexLeanPreservation.Obs.stuck +@311 := (f : @300) -> (v : @50) -> @307 @308 +@313 := LexLeanPreservation.Rust.rel_ne_stuck @274 +@319 := (v : @50) -> @303 (@304 (@273 @14) @17) @308 +@320 := @313 @297 +@324 := @303 (@304 @274 @297) @308 +@325 := @124 @59 +@326 := LexLeanPreservation.Rust.FunSem +@327 := #9 +@333 := (n : @3) -> @326 @327 @141 @135 @17 @127 +@334 := Eq.{1} +@335 := @277 @71 +@336 := @334 @335 +@343 := LexLeanRuntime.index (@124 @71) @71 (LexLeanRuntime.instIndexableList @71) +@347 := @336 (@343 (@72 @327) @127) +@348 := Option.some.{0} +@349 := @348 @71 +@350 := @349 @129 +@351 := @347 @350 +@352 := #10 +@356 := @96 @352 @327 @141 @129 +@357 := LexLeanTarget.TargetSyntax.Function.types +@358 := @357 @127 +@359 := @356 @358 +@360 := @277 @325 +@361 := @334 @360 +@362 := LexLeanTarget.TargetSemantics.bindAll +@363 := LexLeanTarget.TargetSyntax.Function.parameters +@368 := @361 (@362 (@363 @135) @127 @66) +@369 := @348 @325 +@370 := @369 @129 +@371 := @368 @370 +@372 := @277 @300 +@373 := @334 @372 +@374 := LexLeanPreservation.Rust.fnFallible +@375 := #11 +@378 := @373 (@374 @375 @327) +@379 := @348 @300 +@380 := @379 @129 +@381 := @378 @380 +@382 := LexLeanPreservation.RunConv +@383 := #13 +@387 := @382 @383 @352 @141 @129 +@389 := @303 @127 @308 +@390 := Exists.{1} +@391 := LexLeanPreservation.Rust.ROut +@392 := @390 @391 +@393 := And +@394 := LexLeanPreservation.Rust.RealizesFn +@398 := @393 (@394 @327 @141 @17) +@399 := LexLeanPreservation.Rust.RCI +@401 := @399 #15 +@402 := LexLeanPreservation.Rust.fnIdent +@403 := @402 @383 +@410 := (hne : @389) -> @392 (fun (ro : @391) => @398 (@401 @403 @375 @17)) +@425 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {f : @3} -> + {fn : @71} -> + {args : @125} -> + {env : @325} -> + {F : @300} -> + {o : @302} -> + (hB : @333) -> + (hfn : @351) -> (hwt : @359) -> (hbind : @371) -> (hF : @381) -> (hA : @387) -> @410 +@427 := LexLeanPreservation.Rust.compose @0 +@428 := @326 @0 +@433 := (n : @3) -> @428 @141 @135 @17 @127 +@434 := @343 @73 +@437 := @336 (@434 @127) @350 +@441 := @107 @327 @141 @129 @358 +@442 := @382 @0 +@445 := @442 @352 @141 @129 +@459 := {c : @9} -> + {A : @10} -> + {f : @3} -> + {fn : @71} -> + {args : @125} -> + {env : @325} -> + {F : @300} -> + {o : @302} -> + (hB : @433) -> + (hfn : @437) -> (hwt : @441) -> (hbind : @371) -> (hF : @381) -> (hA : @445) -> @410 +@460 := @427 @1 +@461 := @428 @1 +@465 := (n : @3) -> @461 @135 @17 @127 +@468 := @115 @141 @129 @358 +@469 := @374 @1 +@472 := @373 (@469 @327) @380 +@473 := @399 @1 +@483 := (hbind : @371) -> + (hF : @472) -> (hA : @445) -> (hne : @389) -> @392 (fun (ro : @391) => @398 (@473 @403 @375 @17)) +@493 := {A : @10} -> + {f : @3} -> + {fn : @71} -> + {args : @125} -> + {env : @325} -> {F : @300} -> {o : @302} -> (hB : @465) -> (hfn : @437) -> (hwt : @468) -> @483 +@494 := @460 @2 +@496 := @461 @2 @17 +@498 := (n : @3) -> @496 @127 +@499 := @121 @129 +@500 := @499 @358 +@509 := {f : @3} -> + {fn : @71} -> + {args : @125} -> + {env : @325} -> {F : @300} -> {o : @302} -> (hB : @498) -> (hfn : @437) -> (hwt : @500) -> @483 +@510 := @494 @60 +@512 := (n : @3) -> @496 @60 +@513 := @434 @60 +@514 := @336 @513 +@515 := @514 @350 +@516 := @469 @60 +@517 := @373 @516 +@518 := @517 @380 +@519 := @442 @60 +@521 := @519 @141 @129 +@523 := @473 (@402 @60) +@531 := (hF : @518) -> (hA : @521) -> (hne : @389) -> @392 (fun (ro : @391) => @398 (@523 @375 @17)) +@540 := {fn : @71} -> + {args : @125} -> + {env : @325} -> + {F : @300} -> {o : @302} -> (hB : @512) -> (hfn : @515) -> (hwt : @500) -> (hbind : @371) -> @531 +@541 := @510 @91 +@543 := @514 (@349 @91) +@544 := @357 @91 +@545 := @499 @544 +@547 := @362 (@363 @91) +@559 := {args : @125} -> + {env : @325} -> + {F : @300} -> + {o : @302} -> + (hB : @512) -> (hfn : @543) -> (hwt : @545) -> (hbind : @361 (@547 @127 @66) @370) -> @531 +@560 := @541 @56 +@561 := @218 @53 +@563 := @121 @561 @544 +@566 := @54 (@5 @135) @53 +@570 := @361 (@547 @566 @66) @370 +@573 := @54 (@5 @327) @53 +@594 := {env : @325} -> + {F : @300} -> + {o : @302} -> + (hB : @512) -> + (hfn : @543) -> + (hwt : @563) -> + (hbind : @570) -> + (hF : @518) -> + (hA : @519 @573 @129) -> + (hne : @389) -> @392 (fun (ro : @391) => @398 (@523 (@54 (@5 #12) @53) @17)) +@595 := @560 @69 +@596 := @232 @53 +@598 := @121 @596 @544 +@606 := @361 (@547 @561 @66) (@369 (@67 (@64 @217) @66)) +@609 := @54 (@5 @141) @53 +@628 := {F : @300} -> + {o : @302} -> + (hB : @512) -> + (hfn : @543) -> + (hwt : @598) -> + (hbind : @606) -> + (hF : @518) -> + (hA : @519 @609 @129) -> + (hne : @389) -> @392 (fun (ro : @391) => @398 (@523 (@54 (@5 @375) @53) @17)) +@629 := @595 @70 +@630 := @249 @544 +@638 := @361 (@547 @596 @66) (@369 (@67 (@64 @231) @66)) +@640 := @517 (@379 @70) +@642 := @519 @566 @129 +@643 := @394 @70 +@662 := {o : @302} -> + (hB : @512) -> + (hfn : @543) -> + (hwt : @630) -> + (hbind : @638) -> + (hF : @640) -> + (hA : @642) -> + (hne : @389) -> @392 (fun (ro : @391) => @393 (@643 @141 @17) (@523 (@54 (@5 @352) @53) @17)) +@663 := @629 @272 +@664 := @257 @544 +@672 := @361 (@547 @248 @66) (@369 (@67 (@64 @214) @66)) +@673 := @519 @561 +@674 := @271 @127 +@675 := @673 @674 +@676 := @271 @135 +@694 := (hB : @512) -> + (hfn : @543) -> + (hwt : @664) -> + (hbind : @672) -> + (hF : @640) -> + (hA : @675) -> + (hne : @303 @676 @308) -> @392 (fun (ro : @391) => @393 (@643 (@271 @327) @17) (@523 @573 @17)) +@695 := @663 @95 +@696 := @265 @544 +@704 := @361 (@547 @256 @66) (@369 (@67 (@64 @228) @66)) +@705 := @519 @596 +@706 := @271 @129 +@724 := (hfn : @543) -> + (hwt : @696) -> + (hbind : @704) -> + (hF : @640) -> + (hA : @705 @706) -> + (hne : @303 @674 @308) -> @392 (fun (ro : @391) => @393 (@643 (@271 @141) @17) (@523 @609 @17)) +@725 := Eq.refl.{1} +@728 := @695 (@725 @335 @513) +@729 := @269 @544 +@737 := @361 (@547 @264 @66) (@369 (@67 (@64 @243) @66)) +@738 := @519 @248 +@739 := @271 @131 +@755 := (hwt : @729) -> + (hbind : @737) -> + (hF : @640) -> + (hA : @738 @739) -> + (hne : @303 @706 @308) -> @392 (fun (ro : @391) => @393 (@643 @676 @17) (@523 @566 @17)) +@756 := @728 @268 +@758 := @547 @56 @66 +@761 := @361 @758 (@369 @69) +@762 := @519 @256 +@763 := @271 @12 +@778 := (hbind : @761) -> + (hF : @640) -> + (hA : @762 @763) -> + (hne : @303 @739 @308) -> @392 (fun (ro : @391) => @393 (@643 @674 @17) (@523 @561 @17)) +@781 := @756 (@725 @360 @758) +@782 := @519 @264 +@783 := @271 @14 +@797 := (hF : @640) -> + (hA : @782 @783) -> + (hne : @303 @763 @308) -> @392 (fun (ro : @391) => @393 (@643 @706 @17) (@523 @596 @17)) +@800 := @781 (@725 @372 @516) +@814 := (hA : @519 @56 @272) -> + (hne : @303 @783 @308) -> @392 (fun (ro : @391) => @393 (@643 @739 @17) (@523 @248 @17)) +@815 := @800 @299 +@826 := (hne : @303 @272 @308) -> @392 (fun (ro : @391) => @393 (@643 @763 @17) (@523 @256 @17)) +@827 := @815 @320 +@833 := @393 (@643 @783 @17) (@523 @264 @17) +@835 := @392 (fun (ro : @391) => @833) +@837 := @392 (fun (__e_ro : @391) => @833) +@841 := LexLeanPreservation.Rust.RepresentableL (@54 @18 @53) +@842 := (__e_hrep : @841) -> @837 +@843 := fun (__e_hrep : @841) => @827 +@844 := (n : @3) -> @842 +@845 := fun (n : @3) => @843 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R16/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R16/Compose/RustStd.lex.tex new file mode 100644 index 000000000..9f19a2b6e --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R16/Compose/RustStd.lex.tex @@ -0,0 +1,424 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.Compose.RustStd.root : @844 := @845 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.RustStd.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.RustStd.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.RustStd.flags +@3 := Nat +@4 := #1 +@5 := LexLeanTarget.TargetSyntax.Value.nat +@6 := @5 @4 +@7 := LexLeanTarget.TargetSyntax.Ty.nat +@8 := LexLeanTarget.TargetSyntax.Program +@9 := LexLeanPreservation.Rust.RCrate +@10 := LexLeanPreservation.Rust.Flags +@11 := LexLeanPreservation.Rust.WT +@12 := #3 +@13 := @11 @12 +@14 := #2 +@16 := @13 @14 @4 +@17 := #0 +@18 := @5 @17 +@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 +@26 := LexLeanPreservation.Rust.wt_nat @0 +@27 := @11 @0 +@34 := {c : @9} -> {A : @10} -> (n : @3) -> @27 @14 @4 @18 @7 +@35 := @26 @1 +@36 := @27 @1 +@41 := {A : @10} -> (n : @3) -> @36 @4 @18 @7 +@42 := @35 @2 +@43 := @36 @2 +@46 := (n : @3) -> @43 @18 @7 +@47 := @42 @4 +@49 := @43 @6 @7 +@50 := LexLeanTarget.TargetSyntax.Value +@51 := List.nil.{0} +@52 := List.cons.{0} +@53 := @51 @50 +@54 := @52 @50 +@56 := @54 @6 @53 +@59 := Prod.{0, 0} @3 @50 +@60 := 0 +@64 := Prod.mk.{0, 0} @3 @50 @60 +@65 := @64 @6 +@66 := @51 @59 +@67 := @52 @59 +@69 := @67 @65 @66 +@70 := Bool.true +@71 := LexLeanTarget.TargetSyntax.Function +@72 := LexLeanTarget.TargetSyntax.Program.functions +@73 := @72 @0 +@74 := LexLeanTarget.TargetSyntax.Ty +@75 := @51 @3 +@76 := @51 @74 +@77 := LexLeanTarget.TargetSyntax.Ty.unit +@78 := LexLeanTarget.TargetSyntax.Value.unit +@81 := LexLeanTarget.TargetSyntax.Expr.value @77 @78 +@86 := LexLeanTarget.TargetSyntax.Function.mk @75 @76 @77 @81 +@91 := List.getD.{0} @71 @73 @60 @86 +@95 := fun (__e_n : @3) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.RustStd.root @17 @60 +@96 := LexLeanPreservation.Rust.WTL +@104 := {p : @8} -> {c : @9} -> {A : @10} -> @96 @14 @4 @17 @53 @76 +@106 := LexLeanPreservation.Rust.wtl_nil @0 +@107 := @96 @0 +@113 := {c : @9} -> {A : @10} -> @107 @4 @17 @53 @76 +@114 := @106 @1 +@115 := @107 @1 +@119 := {A : @10} -> @115 @17 @53 @76 +@120 := @114 @2 +@121 := @115 @2 +@122 := @121 @53 +@123 := @122 @76 +@124 := List.{0} +@125 := @124 @50 +@126 := @124 @74 +@127 := #6 +@128 := @11 @127 +@129 := #5 +@130 := @128 @129 +@131 := #4 +@134 := @130 @131 @12 @14 +@135 := #7 +@140 := @96 @135 @127 @129 @14 @4 +@141 := #8 +@144 := @96 @141 @135 @127 +@146 := @54 @129 @12 +@147 := @144 @146 +@148 := @52 @74 +@150 := @148 @131 @14 +@160 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {v : @50} -> {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @134) -> (hs : @140) -> @147 @150 +@162 := LexLeanPreservation.Rust.wtl_cons @0 +@182 := {c : @9} -> + {A : @10} -> + {v : @50} -> + {t : @74} -> + {vs : @125} -> + {ts : @126} -> + (h : @27 @129 @131 @12 @14) -> (hs : @107 @127 @129 @14 @4) -> @107 @135 @127 @146 @150 +@183 := @162 @1 +@199 := {A : @10} -> + {v : @50} -> + {t : @74} -> + {vs : @125} -> + {ts : @126} -> (h : @36 @131 @12 @14) -> (hs : @115 @129 @14 @4) -> @115 @127 @146 @150 +@200 := @183 @2 +@202 := @43 @12 @14 +@204 := @121 @14 @4 +@212 := {v : @50} -> + {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @202) -> (hs : @204) -> @121 @146 @150 +@213 := @200 @6 +@214 := @5 @131 +@216 := @43 @214 @14 +@217 := @5 @127 +@218 := @54 @217 +@226 := {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @216) -> (hs : @204) -> @121 (@218 @12) @150 +@227 := @213 @7 +@228 := @5 @12 +@230 := @43 @228 @7 +@231 := @5 @129 +@232 := @54 @231 +@234 := @121 (@232 @12) +@235 := @148 @7 +@236 := @235 @14 +@241 := {vs : @125} -> {ts : @126} -> (h : @230) -> (hs : @204) -> @234 @236 +@242 := @227 @53 +@243 := @5 @14 +@245 := @43 @243 @7 +@246 := @122 @4 +@248 := @54 @214 @53 +@249 := @121 @248 +@253 := {ts : @126} -> (h : @245) -> (hs : @246) -> @249 @236 +@254 := @242 @76 +@256 := @54 @228 @53 +@257 := @121 @256 +@258 := @235 @76 +@261 := (h : @49) -> (hs : @123) -> @257 @258 +@262 := @254 @47 +@264 := @54 @243 @53 +@265 := @121 @264 +@267 := (hs : @123) -> @265 @258 +@268 := @262 @120 +@269 := @121 @56 +@270 := @269 @258 +@271 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.denote +@272 := @271 @4 +@273 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.__fits_0 +@274 := @273 @4 +@276 := Coverage.Main.builders @4 +@277 := Option.{0} +@278 := @277 @3 +@279 := Unit +@282 := Except.{0, 0} @279 @3 +@285 := LexLeanPreservation.encOption @3 @5 +@286 := LexLeanPreservation.encUnit +@291 := LexLeanPreservation.encExcept @279 @3 @286 @5 +@297 := LexLeanPreservation.encPair @278 @282 @285 @291 @276 +@299 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.root @4 +@300 := Bool +@301 := Ne.{1} +@302 := LexLeanPreservation.Obs +@303 := @301 @302 +@304 := LexLeanPreservation.Rel +@307 := @303 (@304 @4 @17) +@308 := LexLeanPreservation.Obs.stuck +@311 := (f : @300) -> (v : @50) -> @307 @308 +@313 := LexLeanPreservation.Rust.rel_ne_stuck @274 +@319 := (v : @50) -> @303 (@304 (@273 @14) @17) @308 +@320 := @313 @297 +@324 := @303 (@304 @274 @297) @308 +@325 := @124 @59 +@326 := LexLeanPreservation.Rust.FunSem +@327 := #9 +@333 := (n : @3) -> @326 @327 @141 @135 @17 @127 +@334 := Eq.{1} +@335 := @277 @71 +@336 := @334 @335 +@343 := LexLeanRuntime.index (@124 @71) @71 (LexLeanRuntime.instIndexableList @71) +@347 := @336 (@343 (@72 @327) @127) +@348 := Option.some.{0} +@349 := @348 @71 +@350 := @349 @129 +@351 := @347 @350 +@352 := #10 +@356 := @96 @352 @327 @141 @129 +@357 := LexLeanTarget.TargetSyntax.Function.types +@358 := @357 @127 +@359 := @356 @358 +@360 := @277 @325 +@361 := @334 @360 +@362 := LexLeanTarget.TargetSemantics.bindAll +@363 := LexLeanTarget.TargetSyntax.Function.parameters +@368 := @361 (@362 (@363 @135) @127 @66) +@369 := @348 @325 +@370 := @369 @129 +@371 := @368 @370 +@372 := @277 @300 +@373 := @334 @372 +@374 := LexLeanPreservation.Rust.fnFallible +@375 := #11 +@378 := @373 (@374 @375 @327) +@379 := @348 @300 +@380 := @379 @129 +@381 := @378 @380 +@382 := LexLeanPreservation.RunConv +@383 := #13 +@387 := @382 @383 @352 @141 @129 +@389 := @303 @127 @308 +@390 := Exists.{1} +@391 := LexLeanPreservation.Rust.ROut +@392 := @390 @391 +@393 := And +@394 := LexLeanPreservation.Rust.RealizesFn +@398 := @393 (@394 @327 @141 @17) +@399 := LexLeanPreservation.Rust.RCI +@401 := @399 #15 +@402 := LexLeanPreservation.Rust.fnIdent +@403 := @402 @383 +@410 := (hne : @389) -> @392 (fun (ro : @391) => @398 (@401 @403 @375 @17)) +@425 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {f : @3} -> + {fn : @71} -> + {args : @125} -> + {env : @325} -> + {F : @300} -> + {o : @302} -> + (hB : @333) -> + (hfn : @351) -> (hwt : @359) -> (hbind : @371) -> (hF : @381) -> (hA : @387) -> @410 +@427 := LexLeanPreservation.Rust.compose @0 +@428 := @326 @0 +@433 := (n : @3) -> @428 @141 @135 @17 @127 +@434 := @343 @73 +@437 := @336 (@434 @127) @350 +@441 := @107 @327 @141 @129 @358 +@442 := @382 @0 +@445 := @442 @352 @141 @129 +@459 := {c : @9} -> + {A : @10} -> + {f : @3} -> + {fn : @71} -> + {args : @125} -> + {env : @325} -> + {F : @300} -> + {o : @302} -> + (hB : @433) -> + (hfn : @437) -> (hwt : @441) -> (hbind : @371) -> (hF : @381) -> (hA : @445) -> @410 +@460 := @427 @1 +@461 := @428 @1 +@465 := (n : @3) -> @461 @135 @17 @127 +@468 := @115 @141 @129 @358 +@469 := @374 @1 +@472 := @373 (@469 @327) @380 +@473 := @399 @1 +@483 := (hbind : @371) -> + (hF : @472) -> (hA : @445) -> (hne : @389) -> @392 (fun (ro : @391) => @398 (@473 @403 @375 @17)) +@493 := {A : @10} -> + {f : @3} -> + {fn : @71} -> + {args : @125} -> + {env : @325} -> {F : @300} -> {o : @302} -> (hB : @465) -> (hfn : @437) -> (hwt : @468) -> @483 +@494 := @460 @2 +@496 := @461 @2 @17 +@498 := (n : @3) -> @496 @127 +@499 := @121 @129 +@500 := @499 @358 +@509 := {f : @3} -> + {fn : @71} -> + {args : @125} -> + {env : @325} -> {F : @300} -> {o : @302} -> (hB : @498) -> (hfn : @437) -> (hwt : @500) -> @483 +@510 := @494 @60 +@512 := (n : @3) -> @496 @60 +@513 := @434 @60 +@514 := @336 @513 +@515 := @514 @350 +@516 := @469 @60 +@517 := @373 @516 +@518 := @517 @380 +@519 := @442 @60 +@521 := @519 @141 @129 +@523 := @473 (@402 @60) +@531 := (hF : @518) -> (hA : @521) -> (hne : @389) -> @392 (fun (ro : @391) => @398 (@523 @375 @17)) +@540 := {fn : @71} -> + {args : @125} -> + {env : @325} -> + {F : @300} -> {o : @302} -> (hB : @512) -> (hfn : @515) -> (hwt : @500) -> (hbind : @371) -> @531 +@541 := @510 @91 +@543 := @514 (@349 @91) +@544 := @357 @91 +@545 := @499 @544 +@547 := @362 (@363 @91) +@559 := {args : @125} -> + {env : @325} -> + {F : @300} -> + {o : @302} -> + (hB : @512) -> (hfn : @543) -> (hwt : @545) -> (hbind : @361 (@547 @127 @66) @370) -> @531 +@560 := @541 @56 +@561 := @218 @53 +@563 := @121 @561 @544 +@566 := @54 (@5 @135) @53 +@570 := @361 (@547 @566 @66) @370 +@573 := @54 (@5 @327) @53 +@594 := {env : @325} -> + {F : @300} -> + {o : @302} -> + (hB : @512) -> + (hfn : @543) -> + (hwt : @563) -> + (hbind : @570) -> + (hF : @518) -> + (hA : @519 @573 @129) -> + (hne : @389) -> @392 (fun (ro : @391) => @398 (@523 (@54 (@5 #12) @53) @17)) +@595 := @560 @69 +@596 := @232 @53 +@598 := @121 @596 @544 +@606 := @361 (@547 @561 @66) (@369 (@67 (@64 @217) @66)) +@609 := @54 (@5 @141) @53 +@628 := {F : @300} -> + {o : @302} -> + (hB : @512) -> + (hfn : @543) -> + (hwt : @598) -> + (hbind : @606) -> + (hF : @518) -> + (hA : @519 @609 @129) -> + (hne : @389) -> @392 (fun (ro : @391) => @398 (@523 (@54 (@5 @375) @53) @17)) +@629 := @595 @70 +@630 := @249 @544 +@638 := @361 (@547 @596 @66) (@369 (@67 (@64 @231) @66)) +@640 := @517 (@379 @70) +@642 := @519 @566 @129 +@643 := @394 @70 +@662 := {o : @302} -> + (hB : @512) -> + (hfn : @543) -> + (hwt : @630) -> + (hbind : @638) -> + (hF : @640) -> + (hA : @642) -> + (hne : @389) -> @392 (fun (ro : @391) => @393 (@643 @141 @17) (@523 (@54 (@5 @352) @53) @17)) +@663 := @629 @272 +@664 := @257 @544 +@672 := @361 (@547 @248 @66) (@369 (@67 (@64 @214) @66)) +@673 := @519 @561 +@674 := @271 @127 +@675 := @673 @674 +@676 := @271 @135 +@694 := (hB : @512) -> + (hfn : @543) -> + (hwt : @664) -> + (hbind : @672) -> + (hF : @640) -> + (hA : @675) -> + (hne : @303 @676 @308) -> @392 (fun (ro : @391) => @393 (@643 (@271 @327) @17) (@523 @573 @17)) +@695 := @663 @95 +@696 := @265 @544 +@704 := @361 (@547 @256 @66) (@369 (@67 (@64 @228) @66)) +@705 := @519 @596 +@706 := @271 @129 +@724 := (hfn : @543) -> + (hwt : @696) -> + (hbind : @704) -> + (hF : @640) -> + (hA : @705 @706) -> + (hne : @303 @674 @308) -> @392 (fun (ro : @391) => @393 (@643 (@271 @141) @17) (@523 @609 @17)) +@725 := Eq.refl.{1} +@728 := @695 (@725 @335 @513) +@729 := @269 @544 +@737 := @361 (@547 @264 @66) (@369 (@67 (@64 @243) @66)) +@738 := @519 @248 +@739 := @271 @131 +@755 := (hwt : @729) -> + (hbind : @737) -> + (hF : @640) -> + (hA : @738 @739) -> + (hne : @303 @706 @308) -> @392 (fun (ro : @391) => @393 (@643 @676 @17) (@523 @566 @17)) +@756 := @728 @268 +@758 := @547 @56 @66 +@761 := @361 @758 (@369 @69) +@762 := @519 @256 +@763 := @271 @12 +@778 := (hbind : @761) -> + (hF : @640) -> + (hA : @762 @763) -> + (hne : @303 @739 @308) -> @392 (fun (ro : @391) => @393 (@643 @674 @17) (@523 @561 @17)) +@781 := @756 (@725 @360 @758) +@782 := @519 @264 +@783 := @271 @14 +@797 := (hF : @640) -> + (hA : @782 @783) -> + (hne : @303 @763 @308) -> @392 (fun (ro : @391) => @393 (@643 @706 @17) (@523 @596 @17)) +@800 := @781 (@725 @372 @516) +@814 := (hA : @519 @56 @272) -> + (hne : @303 @783 @308) -> @392 (fun (ro : @391) => @393 (@643 @739 @17) (@523 @248 @17)) +@815 := @800 @299 +@826 := (hne : @303 @272 @308) -> @392 (fun (ro : @391) => @393 (@643 @763 @17) (@523 @256 @17)) +@827 := @815 @320 +@833 := @393 (@643 @783 @17) (@523 @264 @17) +@835 := @392 (fun (ro : @391) => @833) +@837 := @392 (fun (__e_ro : @391) => @833) +@841 := LexLeanPreservation.Rust.RepresentableL (@54 @18 @53) +@842 := (__e_hrep : @841) -> @837 +@843 := fun (__e_hrep : @841) => @827 +@844 := (n : @3) -> @842 +@845 := fun (n : @3) => @843 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R16/RustCore.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R16/RustCore.lean new file mode 100644 index 000000000..d70cb991a --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R16/RustCore.lean @@ -0,0 +1,33 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.RustCore +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0], types := [.nat], result := (.pair (.option .nat) (.result .nat .unit)), + body := (.build .pair (.pair (.option .nat) (.result .nat .unit)) [(.build .some (.option .nat) [(.build .succ .nat [(.var 0)])]), (.cond (.prim .natLt [(.var 0), (.value .nat (.nat 3))]) (.build .ok (.result .nat .unit) [(.build .zero .nat [])]) (.build .error (.result .nat .unit) [(.build .unit .unit [])]))]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .core, items := [ + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible (.pair (.option .nat) (.result .nat .unit))) (.mk [] (.succeed (.pair (.construct .some [(.call (.runtime .natSucc) [(.copy (.generated .binding 0))] true)]) (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false) (.mk [] (.construct (.ok .nat .unit) [(.lit (.nat 0))])) (.mk [] (.construct (.err .nat .unit) [(.lit .unit)])))))))))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [], (.succeed (.pair (.construct .some [(.call (.runtime .natSucc) [(.copy (.generated .binding 0))] true)]) (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false) (.mk [] (.construct (.ok .nat .unit) [(.lit (.nat 0))])) (.mk [] (.construct (.err .nat .unit) [(.lit .unit)]))))))), [(0, .nat, (some 0))], rfl, rfl, + (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildSucc (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) (Corr.lNil))) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 3)))]) (tail := (.cond (.call (.runtime .natLt) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false) (.mk [] (.construct (.ok .nat .unit) [(.lit (.nat 0))])) (.mk [] (.construct (.err .nat .unit) [(.lit .unit)])))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 3)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct (.ok .nat .unit) [(.lit (.nat 0))])) (lb := []) (tb := (.construct (.err .nat .unit) [(.lit .unit)])) (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))) rfl) (Corr.build (ts := [.unit]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))) rfl)))) (Corr.lNil))))))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | _ + 1 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.RustCore diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R16/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R16/RustStd.lean new file mode 100644 index 000000000..47a3fd589 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R16/RustStd.lean @@ -0,0 +1,33 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0], types := [.nat], result := (.pair (.option .nat) (.result .nat .unit)), + body := (.build .pair (.pair (.option .nat) (.result .nat .unit)) [(.build .some (.option .nat) [(.build .succ .nat [(.var 0)])]), (.cond (.prim .natLt [(.var 0), (.value .nat (.nat 3))]) (.build .ok (.result .nat .unit) [(.build .zero .nat [])]) (.build .error (.result .nat .unit) [(.build .unit .unit [])]))]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible (.pair (.option .nat) (.result .nat .unit))) (.mk [] (.succeed (.pair (.construct .some [(.call (.runtime .natSucc) [(.copy (.generated .binding 0))] true)]) (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false) (.mk [] (.construct (.ok .nat .unit) [(.lit (.nat 0))])) (.mk [] (.construct (.err .nat .unit) [(.lit .unit)])))))))))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [], (.succeed (.pair (.construct .some [(.call (.runtime .natSucc) [(.copy (.generated .binding 0))] true)]) (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false) (.mk [] (.construct (.ok .nat .unit) [(.lit (.nat 0))])) (.mk [] (.construct (.err .nat .unit) [(.lit .unit)]))))))), [(0, .nat, (some 0))], rfl, rfl, + (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildSucc (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) (Corr.lNil))) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 3)))]) (tail := (.cond (.call (.runtime .natLt) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false) (.mk [] (.construct (.ok .nat .unit) [(.lit (.nat 0))])) (.mk [] (.construct (.err .nat .unit) [(.lit .unit)])))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 3)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct (.ok .nat .unit) [(.lit (.nat 0))])) (lb := []) (tb := (.construct (.err .nat .unit) [(.lit .unit)])) (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))) rfl) (Corr.build (ts := [.unit]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))) rfl)))) (Corr.lNil))))))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | _ + 1 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R17.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R17.lean similarity index 95% rename from examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R17.lean rename to examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R17.lean index 2c7dd7943..798144115 100644 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R17.lean +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R17.lean @@ -18,7 +18,7 @@ set_option maxRecDepth 100000 set_option maxHeartbeats 0 set_option synthInstance.maxHeartbeats 0 set_option linter.unusedVariables false -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17 def __prog : _root_.LexLeanTarget.TargetSyntax.Program := { adts := [], functions := [ @@ -37,4 +37,4 @@ def denote (p : (Prod Nat Bool)) : _root_.LexLeanPreservation.Obs := theorem root (p : (Prod Nat Bool)) : _root_.LexLeanPreservation.RunConv __prog 0 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool) p)] (_root_.LexLeanPreservation.Rel (__fits_0 p) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.nat) (Coverage.Main.pairs p))) := _root_.LexLeanPreservation.run_of_funRel (__rel_0 p) -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17 +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17 diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R17/Compose/RustCore.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R17/Compose/RustCore.lex.tex new file mode 100644 index 000000000..b3d6023f7 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R17/Compose/RustCore.lex.tex @@ -0,0 +1,521 @@ +\begin{lexlean}{RustCore} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.Compose.RustCore} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.RustCore, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.Compose.RustCore.root : @1045 := @1046 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.Compose.RustCore.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.RustCore.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.RustCore.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.RustCore.flags +@3 := Nat +@4 := Bool +@5 := Prod.{0, 0} +@6 := @5 @3 +@7 := @6 @4 +@8 := #1 +@9 := LexLeanTarget.TargetSyntax.Value.nat +@10 := LexLeanTarget.TargetSyntax.Value.bool +@11 := LexLeanPreservation.encPair +@12 := @11 @3 +@13 := @12 @4 +@14 := @13 @9 +@15 := @14 @10 +@16 := @15 @8 +@17 := LexLeanTarget.TargetSyntax.Ty.nat +@18 := LexLeanTarget.TargetSyntax.Ty.bool +@19 := LexLeanTarget.TargetSyntax.Ty.pair +@20 := @19 @17 +@21 := @20 @18 +@22 := #0 +@23 := LexLeanTarget.TargetSyntax.Program +@24 := LexLeanPreservation.Rust.RCrate +@25 := LexLeanPreservation.Rust.Flags +@26 := LexLeanPreservation.Rust.WT +@27 := #3 +@28 := @26 @27 +@29 := #2 +@31 := @28 @29 @8 +@32 := @9 @22 +@38 := {p : @23} -> {c : @24} -> {A : @25} -> (n : @3) -> @31 @32 @17 +@40 := LexLeanPreservation.Rust.wt_nat @0 +@41 := @26 @0 +@43 := @41 @29 @8 +@48 := {c : @24} -> {A : @25} -> (n : @3) -> @43 @32 @17 +@49 := @40 @1 +@50 := @41 @1 +@51 := @50 @8 +@55 := {A : @25} -> (n : @3) -> @51 @32 @17 +@56 := @49 @2 +@57 := @50 @2 +@58 := @57 @32 +@59 := @58 @17 +@60 := (n : @3) -> @59 +@62 := fun (__x : @3) => @56 @22 +@63 := @10 @22 +@69 := {p : @23} -> {c : @24} -> {A : @25} -> (b : @4) -> @31 @63 @18 +@71 := LexLeanPreservation.Rust.wt_bool @0 +@76 := {c : @24} -> {A : @25} -> (b : @4) -> @43 @63 @18 +@77 := @71 @1 +@81 := {A : @25} -> (b : @4) -> @51 @63 @18 +@82 := @77 @2 +@83 := @57 @63 +@84 := @83 @18 +@85 := (b : @4) -> @84 +@87 := fun (__x : @4) => @82 @22 +@88 := Sort 1 +@89 := LexLeanTarget.TargetSyntax.Value +@90 := (a._@._internal._hyg.#0 : @8) -> @89 +@91 := LexLeanTarget.TargetSyntax.Ty +@92 := #5 +@93 := #9 +@94 := @26 @93 +@95 := #8 +@96 := @94 @95 +@97 := #7 +@98 := @96 @97 +@99 := #4 +@100 := @99 @22 +@103 := (x : @92) -> @98 @100 @29 +@104 := #10 +@110 := (x : @92) -> @26 @104 @93 @95 @100 @29 +@111 := @5 @97 +@112 := #6 +@113 := @111 @112 +@114 := #11 +@117 := @26 @114 @104 @93 +@122 := @11 @95 @97 @112 @92 @22 +@123 := @117 @122 +@125 := @19 @99 @27 +@138 := {p : @23} -> + {c : @24} -> + {A : @25} -> + {α : @88} -> + {β : @88} -> + {ea : @90} -> + {eb : @90} -> {s : @91} -> {t : @91} -> (ha : @103) -> (hb : @110) -> (x : @113) -> @123 @125 +@140 := LexLeanPreservation.Rust.wt_encPair @0 +@165 := {c : @24} -> + {A : @25} -> + {α : @88} -> + {β : @88} -> + {ea : @90} -> + {eb : @90} -> + {s : @91} -> + {t : @91} -> + (ha : (x : @92) -> @41 @95 @97 @100 @29) -> + (hb : (x : @92) -> @41 @93 @95 @100 @29) -> (x : @113) -> @41 @104 @93 @122 @125 +@166 := @140 @1 +@187 := {A : @25} -> + {α : @88} -> + {β : @88} -> + {ea : @90} -> + {eb : @90} -> + {s : @91} -> + {t : @91} -> + (ha : (x : @92) -> @50 @97 @100 @29) -> + (hb : (x : @92) -> @50 @95 @100 @29) -> (x : @113) -> @50 @93 @122 @125 +@188 := @166 @2 +@190 := @57 @100 @29 +@191 := (x : @92) -> @190 +@202 := {α : @88} -> + {β : @88} -> + {ea : @90} -> + {eb : @90} -> {s : @91} -> {t : @91} -> (ha : @191) -> (hb : @191) -> (x : @113) -> @57 @122 @125 +@203 := @188 @3 +@204 := (a._@._internal._hyg.#0 : @3) -> @89 +@205 := (x : @3) -> @190 +@220 := {β : @88} -> + {ea : @204} -> + {eb : @90} -> + {s : @91} -> + {t : @91} -> (ha : @205) -> (hb : @191) -> (x : @6 @112) -> @57 (@12 @97 @112 @92 @22) @125 +@221 := @203 @4 +@222 := (a._@._internal._hyg.#0 : @4) -> @89 +@223 := (x : @4) -> @190 +@235 := {ea : @204} -> + {eb : @222} -> + {s : @91} -> {t : @91} -> (ha : @205) -> (hb : @223) -> (x : @7) -> @57 (@13 @112 @92 @22) @125 +@236 := @221 @9 +@238 := (x : @3) -> @58 @29 +@248 := {eb : @222} -> + {s : @91} -> {t : @91} -> (ha : @238) -> (hb : @223) -> (x : @7) -> @57 (@14 @92 @22) @125 +@249 := @236 @10 +@251 := (x : @4) -> @83 @29 +@252 := @15 @22 +@253 := @57 @252 +@259 := {s : @91} -> {t : @91} -> (ha : @238) -> (hb : @251) -> (x : @7) -> @253 @125 +@260 := @249 @17 +@261 := (x : @3) -> @59 +@267 := {t : @91} -> (ha : @261) -> (hb : @251) -> (x : @7) -> @253 (@20 @27) +@268 := @260 @18 +@273 := (ha : @261) -> (hb : (x : @4) -> @84) -> (x : @7) -> @253 @21 +@276 := @268 @62 @87 @8 +@278 := @57 @16 @21 +@279 := List.nil.{0} +@280 := List.cons.{0} +@281 := @279 @89 +@282 := @280 @89 +@284 := @282 @16 @281 +@285 := @6 @89 +@286 := 0 +@290 := Prod.mk.{0, 0} @3 @89 @286 +@291 := @290 @16 +@292 := @279 @285 +@293 := @280 @285 +@295 := @293 @291 @292 +@296 := Bool.false +@297 := LexLeanTarget.TargetSyntax.Function +@298 := LexLeanTarget.TargetSyntax.Program.functions +@299 := @298 @0 +@300 := @279 @3 +@301 := @279 @91 +@302 := LexLeanTarget.TargetSyntax.Ty.unit +@303 := LexLeanTarget.TargetSyntax.Value.unit +@306 := LexLeanTarget.TargetSyntax.Expr.value @302 @303 +@311 := LexLeanTarget.TargetSyntax.Function.mk @300 @301 @302 @306 +@316 := List.getD.{0} @297 @299 @286 @311 +@320 := fun (__e_n : @3) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.RustCore.root @22 @286 +@321 := LexLeanPreservation.Rust.WTL +@329 := {p : @23} -> {c : @24} -> {A : @25} -> @321 @29 @8 @22 @281 @301 +@331 := LexLeanPreservation.Rust.wtl_nil @0 +@332 := @321 @0 +@338 := {c : @24} -> {A : @25} -> @332 @8 @22 @281 @301 +@339 := @331 @1 +@340 := @332 @1 +@344 := {A : @25} -> @340 @22 @281 @301 +@345 := @339 @2 +@346 := @340 @2 +@347 := @346 @281 +@348 := @347 @301 +@349 := List.{0} +@350 := @349 @89 +@351 := @349 @91 +@356 := @26 @112 @92 @99 @27 @29 +@361 := @321 @97 @112 @92 @29 @8 +@364 := @321 @95 @97 @112 +@366 := @282 @92 @27 +@367 := @364 @366 +@368 := @280 @91 +@370 := @368 @99 @29 +@380 := {p : @23} -> + {c : @24} -> + {A : @25} -> + {v : @89} -> {t : @91} -> {vs : @350} -> {ts : @351} -> (h : @356) -> (hs : @361) -> @367 @370 +@382 := LexLeanPreservation.Rust.wtl_cons @0 +@402 := {c : @24} -> + {A : @25} -> + {v : @89} -> + {t : @91} -> + {vs : @350} -> + {ts : @351} -> (h : @41 @92 @99 @27 @29) -> (hs : @332 @112 @92 @29 @8) -> @332 @97 @112 @366 @370 +@403 := @382 @1 +@419 := {A : @25} -> + {v : @89} -> + {t : @91} -> + {vs : @350} -> + {ts : @351} -> (h : @50 @99 @27 @29) -> (hs : @340 @92 @29 @8) -> @340 @112 @366 @370 +@420 := @403 @2 +@422 := @57 @27 @29 +@424 := @346 @29 @8 +@432 := {v : @89} -> + {t : @91} -> {vs : @350} -> {ts : @351} -> (h : @422) -> (hs : @424) -> @346 @366 @370 +@433 := @420 @16 +@434 := @15 @99 +@436 := @57 @434 @29 +@437 := @15 @112 +@438 := @282 @437 +@446 := {t : @91} -> {vs : @350} -> {ts : @351} -> (h : @436) -> (hs : @424) -> @346 (@438 @27) @370 +@447 := @433 @21 +@448 := @15 @27 +@450 := @57 @448 @21 +@451 := @15 @92 +@452 := @282 @451 +@454 := @346 (@452 @27) +@455 := @368 @21 +@456 := @455 @29 +@461 := {vs : @350} -> {ts : @351} -> (h : @450) -> (hs : @424) -> @454 @456 +@462 := @447 @281 +@463 := @15 @29 +@465 := @57 @463 @21 +@466 := @347 @8 +@468 := @282 @434 @281 +@469 := @346 @468 +@473 := {ts : @351} -> (h : @465) -> (hs : @466) -> @469 @456 +@474 := @462 @301 +@476 := @282 @448 @281 +@477 := @346 @476 +@478 := @455 @301 +@481 := (h : @278) -> (hs : @348) -> @477 @478 +@482 := @474 @276 +@484 := @282 @463 @281 +@485 := @346 @484 +@487 := (hs : @348) -> @485 @478 +@488 := @482 @345 +@489 := @346 @284 +@490 := @489 @478 +@491 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.denote +@492 := @491 @8 +@493 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.__fits_0 +@494 := @493 @8 +@496 := Coverage.Main.pairs @8 +@501 := @11 @4 @3 @10 @9 @496 +@503 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.root @8 +@504 := Ne.{1} +@505 := LexLeanPreservation.Obs +@506 := @504 @505 +@507 := LexLeanPreservation.Rel +@510 := @506 (@507 @8 @22) +@511 := LexLeanPreservation.Obs.stuck +@514 := (f : @4) -> (v : @89) -> @510 @511 +@516 := LexLeanPreservation.Rust.rel_ne_stuck @494 +@522 := (v : @89) -> @506 (@507 (@493 @29) @22) @511 +@523 := @516 @501 +@527 := @506 (@507 @494 @501) @511 +@528 := @349 @285 +@529 := LexLeanPreservation.Rust.FunSem +@535 := (n : @3) -> @529 @93 @95 @97 @22 @112 +@536 := Eq.{1} +@537 := Option.{0} +@538 := @537 @297 +@539 := @536 @538 +@546 := LexLeanRuntime.index (@349 @297) @297 (LexLeanRuntime.instIndexableList @297) +@550 := @539 (@546 (@298 @93) @112) +@551 := Option.some.{0} +@552 := @551 @297 +@553 := @552 @92 +@554 := @550 @553 +@558 := @321 @104 @93 @95 @92 +@559 := LexLeanTarget.TargetSyntax.Function.types +@560 := @559 @112 +@561 := @558 @560 +@562 := @537 @528 +@563 := @536 @562 +@564 := LexLeanTarget.TargetSemantics.bindAll +@565 := LexLeanTarget.TargetSyntax.Function.parameters +@570 := @563 (@564 (@565 @97) @112 @292) +@571 := @551 @528 +@572 := @571 @92 +@573 := @570 @572 +@574 := @537 @4 +@575 := @536 @574 +@576 := LexLeanPreservation.Rust.fnFallible +@579 := @575 (@576 @114 @93) +@580 := @551 @4 +@581 := @580 @92 +@582 := @579 @581 +@583 := LexLeanPreservation.RunConv +@584 := #13 +@588 := @583 @584 @104 @95 @92 +@590 := @506 @112 @511 +@591 := Exists.{1} +@592 := LexLeanPreservation.Rust.ROut +@593 := @591 @592 +@594 := And +@595 := LexLeanPreservation.Rust.RealizesFn +@599 := @594 (@595 @93 @95 @22) +@600 := LexLeanPreservation.Rust.RCI +@602 := @600 #15 +@603 := LexLeanPreservation.Rust.fnIdent +@604 := @603 @584 +@611 := (hne : @590) -> @593 (fun (ro : @592) => @599 (@602 @604 @114 @22)) +@626 := {p : @23} -> + {c : @24} -> + {A : @25} -> + {f : @3} -> + {fn : @297} -> + {args : @350} -> + {env : @528} -> + {F : @4} -> + {o : @505} -> + (hB : @535) -> + (hfn : @554) -> (hwt : @561) -> (hbind : @573) -> (hF : @582) -> (hA : @588) -> @611 +@628 := LexLeanPreservation.Rust.compose @0 +@629 := @529 @0 +@634 := (n : @3) -> @629 @95 @97 @22 @112 +@635 := @546 @299 +@638 := @539 (@635 @112) @553 +@642 := @332 @93 @95 @92 @560 +@643 := @583 @0 +@646 := @643 @104 @95 @92 +@660 := {c : @24} -> + {A : @25} -> + {f : @3} -> + {fn : @297} -> + {args : @350} -> + {env : @528} -> + {F : @4} -> + {o : @505} -> + (hB : @634) -> + (hfn : @638) -> (hwt : @642) -> (hbind : @573) -> (hF : @582) -> (hA : @646) -> @611 +@661 := @628 @1 +@662 := @629 @1 +@666 := (n : @3) -> @662 @97 @22 @112 +@669 := @340 @95 @92 @560 +@670 := @576 @1 +@673 := @575 (@670 @93) @581 +@674 := @600 @1 +@684 := (hbind : @573) -> + (hF : @673) -> (hA : @646) -> (hne : @590) -> @593 (fun (ro : @592) => @599 (@674 @604 @114 @22)) +@694 := {A : @25} -> + {f : @3} -> + {fn : @297} -> + {args : @350} -> + {env : @528} -> {F : @4} -> {o : @505} -> (hB : @666) -> (hfn : @638) -> (hwt : @669) -> @684 +@695 := @661 @2 +@697 := @662 @2 @22 +@699 := (n : @3) -> @697 @112 +@700 := @346 @92 +@701 := @700 @560 +@710 := {f : @3} -> + {fn : @297} -> + {args : @350} -> + {env : @528} -> {F : @4} -> {o : @505} -> (hB : @699) -> (hfn : @638) -> (hwt : @701) -> @684 +@711 := @695 @286 +@713 := (n : @3) -> @697 @286 +@714 := @635 @286 +@715 := @539 @714 +@716 := @715 @553 +@717 := @670 @286 +@718 := @575 @717 +@719 := @718 @581 +@720 := @643 @286 +@722 := @720 @95 @92 +@724 := @674 (@603 @286) +@732 := (hF : @719) -> (hA : @722) -> (hne : @590) -> @593 (fun (ro : @592) => @599 (@724 @114 @22)) +@741 := {fn : @297} -> + {args : @350} -> + {env : @528} -> + {F : @4} -> {o : @505} -> (hB : @713) -> (hfn : @716) -> (hwt : @701) -> (hbind : @573) -> @732 +@742 := @711 @316 +@744 := @715 (@552 @316) +@745 := @559 @316 +@746 := @700 @745 +@748 := @564 (@565 @316) +@760 := {args : @350} -> + {env : @528} -> + {F : @4} -> + {o : @505} -> + (hB : @713) -> (hfn : @744) -> (hwt : @746) -> (hbind : @563 (@748 @112 @292) @572) -> @732 +@761 := @742 @284 +@762 := @438 @281 +@764 := @346 @762 @745 +@767 := @282 (@15 @97) @281 +@771 := @563 (@748 @767 @292) @572 +@774 := @282 (@15 @93) @281 +@795 := {env : @528} -> + {F : @4} -> + {o : @505} -> + (hB : @713) -> + (hfn : @744) -> + (hwt : @764) -> + (hbind : @771) -> + (hF : @719) -> + (hA : @720 @774 @92) -> + (hne : @590) -> @593 (fun (ro : @592) => @599 (@724 (@282 (@15 #12) @281) @22)) +@796 := @761 @295 +@797 := @452 @281 +@799 := @346 @797 @745 +@807 := @563 (@748 @762 @292) (@571 (@293 (@290 @437) @292)) +@810 := @282 (@15 @95) @281 +@829 := {F : @4} -> + {o : @505} -> + (hB : @713) -> + (hfn : @744) -> + (hwt : @799) -> + (hbind : @807) -> + (hF : @719) -> + (hA : @720 @810 @92) -> + (hne : @590) -> @593 (fun (ro : @592) => @599 (@724 (@282 (@15 @114) @281) @22)) +@830 := @796 @296 +@831 := @469 @745 +@839 := @563 (@748 @797 @292) (@571 (@293 (@290 @451) @292)) +@841 := @718 (@580 @296) +@843 := @720 @767 @92 +@844 := @595 @296 +@863 := {o : @505} -> + (hB : @713) -> + (hfn : @744) -> + (hwt : @831) -> + (hbind : @839) -> + (hF : @841) -> + (hA : @843) -> + (hne : @590) -> @593 (fun (ro : @592) => @594 (@844 @95 @22) (@724 (@282 (@15 @104) @281) @22)) +@864 := @830 @492 +@865 := @477 @745 +@873 := @563 (@748 @468 @292) (@571 (@293 (@290 @434) @292)) +@874 := @720 @762 +@875 := @491 @112 +@876 := @874 @875 +@877 := @491 @97 +@895 := (hB : @713) -> + (hfn : @744) -> + (hwt : @865) -> + (hbind : @873) -> + (hF : @841) -> + (hA : @876) -> + (hne : @506 @877 @511) -> @593 (fun (ro : @592) => @594 (@844 (@491 @93) @22) (@724 @774 @22)) +@896 := @864 @320 +@897 := @485 @745 +@905 := @563 (@748 @476 @292) (@571 (@293 (@290 @448) @292)) +@906 := @720 @797 +@907 := @491 @92 +@925 := (hfn : @744) -> + (hwt : @897) -> + (hbind : @905) -> + (hF : @841) -> + (hA : @906 @907) -> + (hne : @506 @875 @511) -> @593 (fun (ro : @592) => @594 (@844 (@491 @95) @22) (@724 @810 @22)) +@926 := Eq.refl.{1} +@929 := @896 (@926 @538 @714) +@930 := @489 @745 +@938 := @563 (@748 @484 @292) (@571 (@293 (@290 @463) @292)) +@939 := @720 @468 +@940 := @491 @99 +@956 := (hwt : @930) -> + (hbind : @938) -> + (hF : @841) -> + (hA : @939 @940) -> + (hne : @506 @907 @511) -> @593 (fun (ro : @592) => @594 (@844 @877 @22) (@724 @767 @22)) +@957 := @929 @488 +@959 := @748 @284 @292 +@962 := @563 @959 (@571 @295) +@963 := @720 @476 +@964 := @491 @27 +@979 := (hbind : @962) -> + (hF : @841) -> + (hA : @963 @964) -> + (hne : @506 @940 @511) -> @593 (fun (ro : @592) => @594 (@844 @875 @22) (@724 @762 @22)) +@982 := @957 (@926 @562 @959) +@983 := @720 @484 +@984 := @491 @29 +@998 := (hF : @841) -> + (hA : @983 @984) -> + (hne : @506 @964 @511) -> @593 (fun (ro : @592) => @594 (@844 @907 @22) (@724 @797 @22)) +@1001 := @982 (@926 @574 @717) +@1015 := (hA : @720 @284 @492) -> + (hne : @506 @984 @511) -> @593 (fun (ro : @592) => @594 (@844 @940 @22) (@724 @468 @22)) +@1016 := @1001 @503 +@1027 := (hne : @506 @492 @511) -> @593 (fun (ro : @592) => @594 (@844 @964 @22) (@724 @476 @22)) +@1028 := @1016 @523 +@1034 := @594 (@844 @984 @22) (@724 @484 @22) +@1036 := @593 (fun (ro : @592) => @1034) +@1038 := @593 (fun (__e_ro : @592) => @1034) +@1042 := LexLeanPreservation.Rust.RepresentableL (@282 @252 @281) +@1043 := (__e_hrep : @1042) -> @1038 +@1044 := fun (__e_hrep : @1042) => @1028 +@1045 := (p : @7) -> @1043 +@1046 := fun (p : @7) => @1044 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R17/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R17/Compose/RustStd.lex.tex new file mode 100644 index 000000000..589dd2f18 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R17/Compose/RustStd.lex.tex @@ -0,0 +1,521 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.Compose.RustStd.root : @1045 := @1046 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.RustStd.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.RustStd.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.RustStd.flags +@3 := Nat +@4 := Bool +@5 := Prod.{0, 0} +@6 := @5 @3 +@7 := @6 @4 +@8 := #1 +@9 := LexLeanTarget.TargetSyntax.Value.nat +@10 := LexLeanTarget.TargetSyntax.Value.bool +@11 := LexLeanPreservation.encPair +@12 := @11 @3 +@13 := @12 @4 +@14 := @13 @9 +@15 := @14 @10 +@16 := @15 @8 +@17 := LexLeanTarget.TargetSyntax.Ty.nat +@18 := LexLeanTarget.TargetSyntax.Ty.bool +@19 := LexLeanTarget.TargetSyntax.Ty.pair +@20 := @19 @17 +@21 := @20 @18 +@22 := #0 +@23 := LexLeanTarget.TargetSyntax.Program +@24 := LexLeanPreservation.Rust.RCrate +@25 := LexLeanPreservation.Rust.Flags +@26 := LexLeanPreservation.Rust.WT +@27 := #3 +@28 := @26 @27 +@29 := #2 +@31 := @28 @29 @8 +@32 := @9 @22 +@38 := {p : @23} -> {c : @24} -> {A : @25} -> (n : @3) -> @31 @32 @17 +@40 := LexLeanPreservation.Rust.wt_nat @0 +@41 := @26 @0 +@43 := @41 @29 @8 +@48 := {c : @24} -> {A : @25} -> (n : @3) -> @43 @32 @17 +@49 := @40 @1 +@50 := @41 @1 +@51 := @50 @8 +@55 := {A : @25} -> (n : @3) -> @51 @32 @17 +@56 := @49 @2 +@57 := @50 @2 +@58 := @57 @32 +@59 := @58 @17 +@60 := (n : @3) -> @59 +@62 := fun (__x : @3) => @56 @22 +@63 := @10 @22 +@69 := {p : @23} -> {c : @24} -> {A : @25} -> (b : @4) -> @31 @63 @18 +@71 := LexLeanPreservation.Rust.wt_bool @0 +@76 := {c : @24} -> {A : @25} -> (b : @4) -> @43 @63 @18 +@77 := @71 @1 +@81 := {A : @25} -> (b : @4) -> @51 @63 @18 +@82 := @77 @2 +@83 := @57 @63 +@84 := @83 @18 +@85 := (b : @4) -> @84 +@87 := fun (__x : @4) => @82 @22 +@88 := Sort 1 +@89 := LexLeanTarget.TargetSyntax.Value +@90 := (a._@._internal._hyg.#0 : @8) -> @89 +@91 := LexLeanTarget.TargetSyntax.Ty +@92 := #5 +@93 := #9 +@94 := @26 @93 +@95 := #8 +@96 := @94 @95 +@97 := #7 +@98 := @96 @97 +@99 := #4 +@100 := @99 @22 +@103 := (x : @92) -> @98 @100 @29 +@104 := #10 +@110 := (x : @92) -> @26 @104 @93 @95 @100 @29 +@111 := @5 @97 +@112 := #6 +@113 := @111 @112 +@114 := #11 +@117 := @26 @114 @104 @93 +@122 := @11 @95 @97 @112 @92 @22 +@123 := @117 @122 +@125 := @19 @99 @27 +@138 := {p : @23} -> + {c : @24} -> + {A : @25} -> + {α : @88} -> + {β : @88} -> + {ea : @90} -> + {eb : @90} -> {s : @91} -> {t : @91} -> (ha : @103) -> (hb : @110) -> (x : @113) -> @123 @125 +@140 := LexLeanPreservation.Rust.wt_encPair @0 +@165 := {c : @24} -> + {A : @25} -> + {α : @88} -> + {β : @88} -> + {ea : @90} -> + {eb : @90} -> + {s : @91} -> + {t : @91} -> + (ha : (x : @92) -> @41 @95 @97 @100 @29) -> + (hb : (x : @92) -> @41 @93 @95 @100 @29) -> (x : @113) -> @41 @104 @93 @122 @125 +@166 := @140 @1 +@187 := {A : @25} -> + {α : @88} -> + {β : @88} -> + {ea : @90} -> + {eb : @90} -> + {s : @91} -> + {t : @91} -> + (ha : (x : @92) -> @50 @97 @100 @29) -> + (hb : (x : @92) -> @50 @95 @100 @29) -> (x : @113) -> @50 @93 @122 @125 +@188 := @166 @2 +@190 := @57 @100 @29 +@191 := (x : @92) -> @190 +@202 := {α : @88} -> + {β : @88} -> + {ea : @90} -> + {eb : @90} -> {s : @91} -> {t : @91} -> (ha : @191) -> (hb : @191) -> (x : @113) -> @57 @122 @125 +@203 := @188 @3 +@204 := (a._@._internal._hyg.#0 : @3) -> @89 +@205 := (x : @3) -> @190 +@220 := {β : @88} -> + {ea : @204} -> + {eb : @90} -> + {s : @91} -> + {t : @91} -> (ha : @205) -> (hb : @191) -> (x : @6 @112) -> @57 (@12 @97 @112 @92 @22) @125 +@221 := @203 @4 +@222 := (a._@._internal._hyg.#0 : @4) -> @89 +@223 := (x : @4) -> @190 +@235 := {ea : @204} -> + {eb : @222} -> + {s : @91} -> {t : @91} -> (ha : @205) -> (hb : @223) -> (x : @7) -> @57 (@13 @112 @92 @22) @125 +@236 := @221 @9 +@238 := (x : @3) -> @58 @29 +@248 := {eb : @222} -> + {s : @91} -> {t : @91} -> (ha : @238) -> (hb : @223) -> (x : @7) -> @57 (@14 @92 @22) @125 +@249 := @236 @10 +@251 := (x : @4) -> @83 @29 +@252 := @15 @22 +@253 := @57 @252 +@259 := {s : @91} -> {t : @91} -> (ha : @238) -> (hb : @251) -> (x : @7) -> @253 @125 +@260 := @249 @17 +@261 := (x : @3) -> @59 +@267 := {t : @91} -> (ha : @261) -> (hb : @251) -> (x : @7) -> @253 (@20 @27) +@268 := @260 @18 +@273 := (ha : @261) -> (hb : (x : @4) -> @84) -> (x : @7) -> @253 @21 +@276 := @268 @62 @87 @8 +@278 := @57 @16 @21 +@279 := List.nil.{0} +@280 := List.cons.{0} +@281 := @279 @89 +@282 := @280 @89 +@284 := @282 @16 @281 +@285 := @6 @89 +@286 := 0 +@290 := Prod.mk.{0, 0} @3 @89 @286 +@291 := @290 @16 +@292 := @279 @285 +@293 := @280 @285 +@295 := @293 @291 @292 +@296 := Bool.false +@297 := LexLeanTarget.TargetSyntax.Function +@298 := LexLeanTarget.TargetSyntax.Program.functions +@299 := @298 @0 +@300 := @279 @3 +@301 := @279 @91 +@302 := LexLeanTarget.TargetSyntax.Ty.unit +@303 := LexLeanTarget.TargetSyntax.Value.unit +@306 := LexLeanTarget.TargetSyntax.Expr.value @302 @303 +@311 := LexLeanTarget.TargetSyntax.Function.mk @300 @301 @302 @306 +@316 := List.getD.{0} @297 @299 @286 @311 +@320 := fun (__e_n : @3) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.RustStd.root @22 @286 +@321 := LexLeanPreservation.Rust.WTL +@329 := {p : @23} -> {c : @24} -> {A : @25} -> @321 @29 @8 @22 @281 @301 +@331 := LexLeanPreservation.Rust.wtl_nil @0 +@332 := @321 @0 +@338 := {c : @24} -> {A : @25} -> @332 @8 @22 @281 @301 +@339 := @331 @1 +@340 := @332 @1 +@344 := {A : @25} -> @340 @22 @281 @301 +@345 := @339 @2 +@346 := @340 @2 +@347 := @346 @281 +@348 := @347 @301 +@349 := List.{0} +@350 := @349 @89 +@351 := @349 @91 +@356 := @26 @112 @92 @99 @27 @29 +@361 := @321 @97 @112 @92 @29 @8 +@364 := @321 @95 @97 @112 +@366 := @282 @92 @27 +@367 := @364 @366 +@368 := @280 @91 +@370 := @368 @99 @29 +@380 := {p : @23} -> + {c : @24} -> + {A : @25} -> + {v : @89} -> {t : @91} -> {vs : @350} -> {ts : @351} -> (h : @356) -> (hs : @361) -> @367 @370 +@382 := LexLeanPreservation.Rust.wtl_cons @0 +@402 := {c : @24} -> + {A : @25} -> + {v : @89} -> + {t : @91} -> + {vs : @350} -> + {ts : @351} -> (h : @41 @92 @99 @27 @29) -> (hs : @332 @112 @92 @29 @8) -> @332 @97 @112 @366 @370 +@403 := @382 @1 +@419 := {A : @25} -> + {v : @89} -> + {t : @91} -> + {vs : @350} -> + {ts : @351} -> (h : @50 @99 @27 @29) -> (hs : @340 @92 @29 @8) -> @340 @112 @366 @370 +@420 := @403 @2 +@422 := @57 @27 @29 +@424 := @346 @29 @8 +@432 := {v : @89} -> + {t : @91} -> {vs : @350} -> {ts : @351} -> (h : @422) -> (hs : @424) -> @346 @366 @370 +@433 := @420 @16 +@434 := @15 @99 +@436 := @57 @434 @29 +@437 := @15 @112 +@438 := @282 @437 +@446 := {t : @91} -> {vs : @350} -> {ts : @351} -> (h : @436) -> (hs : @424) -> @346 (@438 @27) @370 +@447 := @433 @21 +@448 := @15 @27 +@450 := @57 @448 @21 +@451 := @15 @92 +@452 := @282 @451 +@454 := @346 (@452 @27) +@455 := @368 @21 +@456 := @455 @29 +@461 := {vs : @350} -> {ts : @351} -> (h : @450) -> (hs : @424) -> @454 @456 +@462 := @447 @281 +@463 := @15 @29 +@465 := @57 @463 @21 +@466 := @347 @8 +@468 := @282 @434 @281 +@469 := @346 @468 +@473 := {ts : @351} -> (h : @465) -> (hs : @466) -> @469 @456 +@474 := @462 @301 +@476 := @282 @448 @281 +@477 := @346 @476 +@478 := @455 @301 +@481 := (h : @278) -> (hs : @348) -> @477 @478 +@482 := @474 @276 +@484 := @282 @463 @281 +@485 := @346 @484 +@487 := (hs : @348) -> @485 @478 +@488 := @482 @345 +@489 := @346 @284 +@490 := @489 @478 +@491 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.denote +@492 := @491 @8 +@493 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.__fits_0 +@494 := @493 @8 +@496 := Coverage.Main.pairs @8 +@501 := @11 @4 @3 @10 @9 @496 +@503 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.root @8 +@504 := Ne.{1} +@505 := LexLeanPreservation.Obs +@506 := @504 @505 +@507 := LexLeanPreservation.Rel +@510 := @506 (@507 @8 @22) +@511 := LexLeanPreservation.Obs.stuck +@514 := (f : @4) -> (v : @89) -> @510 @511 +@516 := LexLeanPreservation.Rust.rel_ne_stuck @494 +@522 := (v : @89) -> @506 (@507 (@493 @29) @22) @511 +@523 := @516 @501 +@527 := @506 (@507 @494 @501) @511 +@528 := @349 @285 +@529 := LexLeanPreservation.Rust.FunSem +@535 := (n : @3) -> @529 @93 @95 @97 @22 @112 +@536 := Eq.{1} +@537 := Option.{0} +@538 := @537 @297 +@539 := @536 @538 +@546 := LexLeanRuntime.index (@349 @297) @297 (LexLeanRuntime.instIndexableList @297) +@550 := @539 (@546 (@298 @93) @112) +@551 := Option.some.{0} +@552 := @551 @297 +@553 := @552 @92 +@554 := @550 @553 +@558 := @321 @104 @93 @95 @92 +@559 := LexLeanTarget.TargetSyntax.Function.types +@560 := @559 @112 +@561 := @558 @560 +@562 := @537 @528 +@563 := @536 @562 +@564 := LexLeanTarget.TargetSemantics.bindAll +@565 := LexLeanTarget.TargetSyntax.Function.parameters +@570 := @563 (@564 (@565 @97) @112 @292) +@571 := @551 @528 +@572 := @571 @92 +@573 := @570 @572 +@574 := @537 @4 +@575 := @536 @574 +@576 := LexLeanPreservation.Rust.fnFallible +@579 := @575 (@576 @114 @93) +@580 := @551 @4 +@581 := @580 @92 +@582 := @579 @581 +@583 := LexLeanPreservation.RunConv +@584 := #13 +@588 := @583 @584 @104 @95 @92 +@590 := @506 @112 @511 +@591 := Exists.{1} +@592 := LexLeanPreservation.Rust.ROut +@593 := @591 @592 +@594 := And +@595 := LexLeanPreservation.Rust.RealizesFn +@599 := @594 (@595 @93 @95 @22) +@600 := LexLeanPreservation.Rust.RCI +@602 := @600 #15 +@603 := LexLeanPreservation.Rust.fnIdent +@604 := @603 @584 +@611 := (hne : @590) -> @593 (fun (ro : @592) => @599 (@602 @604 @114 @22)) +@626 := {p : @23} -> + {c : @24} -> + {A : @25} -> + {f : @3} -> + {fn : @297} -> + {args : @350} -> + {env : @528} -> + {F : @4} -> + {o : @505} -> + (hB : @535) -> + (hfn : @554) -> (hwt : @561) -> (hbind : @573) -> (hF : @582) -> (hA : @588) -> @611 +@628 := LexLeanPreservation.Rust.compose @0 +@629 := @529 @0 +@634 := (n : @3) -> @629 @95 @97 @22 @112 +@635 := @546 @299 +@638 := @539 (@635 @112) @553 +@642 := @332 @93 @95 @92 @560 +@643 := @583 @0 +@646 := @643 @104 @95 @92 +@660 := {c : @24} -> + {A : @25} -> + {f : @3} -> + {fn : @297} -> + {args : @350} -> + {env : @528} -> + {F : @4} -> + {o : @505} -> + (hB : @634) -> + (hfn : @638) -> (hwt : @642) -> (hbind : @573) -> (hF : @582) -> (hA : @646) -> @611 +@661 := @628 @1 +@662 := @629 @1 +@666 := (n : @3) -> @662 @97 @22 @112 +@669 := @340 @95 @92 @560 +@670 := @576 @1 +@673 := @575 (@670 @93) @581 +@674 := @600 @1 +@684 := (hbind : @573) -> + (hF : @673) -> (hA : @646) -> (hne : @590) -> @593 (fun (ro : @592) => @599 (@674 @604 @114 @22)) +@694 := {A : @25} -> + {f : @3} -> + {fn : @297} -> + {args : @350} -> + {env : @528} -> {F : @4} -> {o : @505} -> (hB : @666) -> (hfn : @638) -> (hwt : @669) -> @684 +@695 := @661 @2 +@697 := @662 @2 @22 +@699 := (n : @3) -> @697 @112 +@700 := @346 @92 +@701 := @700 @560 +@710 := {f : @3} -> + {fn : @297} -> + {args : @350} -> + {env : @528} -> {F : @4} -> {o : @505} -> (hB : @699) -> (hfn : @638) -> (hwt : @701) -> @684 +@711 := @695 @286 +@713 := (n : @3) -> @697 @286 +@714 := @635 @286 +@715 := @539 @714 +@716 := @715 @553 +@717 := @670 @286 +@718 := @575 @717 +@719 := @718 @581 +@720 := @643 @286 +@722 := @720 @95 @92 +@724 := @674 (@603 @286) +@732 := (hF : @719) -> (hA : @722) -> (hne : @590) -> @593 (fun (ro : @592) => @599 (@724 @114 @22)) +@741 := {fn : @297} -> + {args : @350} -> + {env : @528} -> + {F : @4} -> {o : @505} -> (hB : @713) -> (hfn : @716) -> (hwt : @701) -> (hbind : @573) -> @732 +@742 := @711 @316 +@744 := @715 (@552 @316) +@745 := @559 @316 +@746 := @700 @745 +@748 := @564 (@565 @316) +@760 := {args : @350} -> + {env : @528} -> + {F : @4} -> + {o : @505} -> + (hB : @713) -> (hfn : @744) -> (hwt : @746) -> (hbind : @563 (@748 @112 @292) @572) -> @732 +@761 := @742 @284 +@762 := @438 @281 +@764 := @346 @762 @745 +@767 := @282 (@15 @97) @281 +@771 := @563 (@748 @767 @292) @572 +@774 := @282 (@15 @93) @281 +@795 := {env : @528} -> + {F : @4} -> + {o : @505} -> + (hB : @713) -> + (hfn : @744) -> + (hwt : @764) -> + (hbind : @771) -> + (hF : @719) -> + (hA : @720 @774 @92) -> + (hne : @590) -> @593 (fun (ro : @592) => @599 (@724 (@282 (@15 #12) @281) @22)) +@796 := @761 @295 +@797 := @452 @281 +@799 := @346 @797 @745 +@807 := @563 (@748 @762 @292) (@571 (@293 (@290 @437) @292)) +@810 := @282 (@15 @95) @281 +@829 := {F : @4} -> + {o : @505} -> + (hB : @713) -> + (hfn : @744) -> + (hwt : @799) -> + (hbind : @807) -> + (hF : @719) -> + (hA : @720 @810 @92) -> + (hne : @590) -> @593 (fun (ro : @592) => @599 (@724 (@282 (@15 @114) @281) @22)) +@830 := @796 @296 +@831 := @469 @745 +@839 := @563 (@748 @797 @292) (@571 (@293 (@290 @451) @292)) +@841 := @718 (@580 @296) +@843 := @720 @767 @92 +@844 := @595 @296 +@863 := {o : @505} -> + (hB : @713) -> + (hfn : @744) -> + (hwt : @831) -> + (hbind : @839) -> + (hF : @841) -> + (hA : @843) -> + (hne : @590) -> @593 (fun (ro : @592) => @594 (@844 @95 @22) (@724 (@282 (@15 @104) @281) @22)) +@864 := @830 @492 +@865 := @477 @745 +@873 := @563 (@748 @468 @292) (@571 (@293 (@290 @434) @292)) +@874 := @720 @762 +@875 := @491 @112 +@876 := @874 @875 +@877 := @491 @97 +@895 := (hB : @713) -> + (hfn : @744) -> + (hwt : @865) -> + (hbind : @873) -> + (hF : @841) -> + (hA : @876) -> + (hne : @506 @877 @511) -> @593 (fun (ro : @592) => @594 (@844 (@491 @93) @22) (@724 @774 @22)) +@896 := @864 @320 +@897 := @485 @745 +@905 := @563 (@748 @476 @292) (@571 (@293 (@290 @448) @292)) +@906 := @720 @797 +@907 := @491 @92 +@925 := (hfn : @744) -> + (hwt : @897) -> + (hbind : @905) -> + (hF : @841) -> + (hA : @906 @907) -> + (hne : @506 @875 @511) -> @593 (fun (ro : @592) => @594 (@844 (@491 @95) @22) (@724 @810 @22)) +@926 := Eq.refl.{1} +@929 := @896 (@926 @538 @714) +@930 := @489 @745 +@938 := @563 (@748 @484 @292) (@571 (@293 (@290 @463) @292)) +@939 := @720 @468 +@940 := @491 @99 +@956 := (hwt : @930) -> + (hbind : @938) -> + (hF : @841) -> + (hA : @939 @940) -> + (hne : @506 @907 @511) -> @593 (fun (ro : @592) => @594 (@844 @877 @22) (@724 @767 @22)) +@957 := @929 @488 +@959 := @748 @284 @292 +@962 := @563 @959 (@571 @295) +@963 := @720 @476 +@964 := @491 @27 +@979 := (hbind : @962) -> + (hF : @841) -> + (hA : @963 @964) -> + (hne : @506 @940 @511) -> @593 (fun (ro : @592) => @594 (@844 @875 @22) (@724 @762 @22)) +@982 := @957 (@926 @562 @959) +@983 := @720 @484 +@984 := @491 @29 +@998 := (hF : @841) -> + (hA : @983 @984) -> + (hne : @506 @964 @511) -> @593 (fun (ro : @592) => @594 (@844 @907 @22) (@724 @797 @22)) +@1001 := @982 (@926 @574 @717) +@1015 := (hA : @720 @284 @492) -> + (hne : @506 @984 @511) -> @593 (fun (ro : @592) => @594 (@844 @940 @22) (@724 @468 @22)) +@1016 := @1001 @503 +@1027 := (hne : @506 @492 @511) -> @593 (fun (ro : @592) => @594 (@844 @964 @22) (@724 @476 @22)) +@1028 := @1016 @523 +@1034 := @594 (@844 @984 @22) (@724 @484 @22) +@1036 := @593 (fun (ro : @592) => @1034) +@1038 := @593 (fun (__e_ro : @592) => @1034) +@1042 := LexLeanPreservation.Rust.RepresentableL (@282 @252 @281) +@1043 := (__e_hrep : @1042) -> @1038 +@1044 := fun (__e_hrep : @1042) => @1028 +@1045 := (p : @7) -> @1043 +@1046 := fun (p : @7) => @1044 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R17/RustCore.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R17/RustCore.lean new file mode 100644 index 000000000..404c046dd --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R17/RustCore.lean @@ -0,0 +1,33 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.RustCore +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0], types := [(.pair .nat .bool)], result := (.pair .bool .nat), + body := (.build .pair (.pair .bool .nat) [(.second (.var 0)), (.first (.var 0))]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .core, items := [ + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .bool) }] (.pair .bool .nat) (.mk [] (.pair (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 1))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 1)))) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 2)))))))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [], (.pair (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 1))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 1)))) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 2))))), [(0, (.pair .nat .bool), (some 0))], rfl, rfl, + (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 1))]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 1))) (Corr.second (ta := .nat) (tb := .bool) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 2))) (Corr.first (ta := .nat) (tb := .bool) (Corr.var rfl rfl) rfl)) (Corr.lNil)))))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | _ + 1 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.RustCore diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R17/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R17/RustStd.lean new file mode 100644 index 000000000..81999609a --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R17/RustStd.lean @@ -0,0 +1,33 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0], types := [(.pair .nat .bool)], result := (.pair .bool .nat), + body := (.build .pair (.pair .bool .nat) [(.second (.var 0)), (.first (.var 0))]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .bool) }] (.pair .bool .nat) (.mk [] (.pair (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 1))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 1)))) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 2)))))))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [], (.pair (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 1))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 1)))) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 2))))), [(0, (.pair .nat .bool), (some 0))], rfl, rfl, + (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 1))]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 1))) (Corr.second (ta := .nat) (tb := .bool) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 2))) (Corr.first (ta := .nat) (tb := .bool) (Corr.var rfl rfl) rfl)) (Corr.lNil)))))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | _ + 1 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R18.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R18.lean similarity index 98% rename from examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R18.lean rename to examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R18.lean index eb0fb0b3e..511ac9606 100644 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R18.lean +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R18.lean @@ -18,7 +18,7 @@ set_option maxRecDepth 100000 set_option maxHeartbeats 0 set_option synthInstance.maxHeartbeats 0 set_option linter.unusedVariables false -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18 def __prog : _root_.LexLeanTarget.TargetSyntax.Program := { adts := [], functions := [ @@ -70,4 +70,4 @@ def denote (base : Nat) (offset : Nat) : _root_.LexLeanPreservation.Obs := theorem root (base : Nat) (offset : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat base), (_root_.LexLeanTarget.TargetSyntax.Value.nat offset)] (_root_.LexLeanPreservation.Rel (__fits_0 base offset) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Coverage.Main.higher base offset))) := _root_.LexLeanPreservation.run_of_funRel (__rel_0 base offset) -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18 +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18 diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R18/Compose/RustCore.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R18/Compose/RustCore.lex.tex new file mode 100644 index 000000000..282990829 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R18/Compose/RustCore.lex.tex @@ -0,0 +1,462 @@ +\begin{lexlean}{RustCore} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.Compose.RustCore} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.RustCore, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.Compose.RustCore.root : @914 := @915 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.Compose.RustCore.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.RustCore.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.RustCore.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.RustCore.flags +@3 := Nat +@4 := #2 +@5 := LexLeanTarget.TargetSyntax.Value.nat +@6 := @5 @4 +@7 := LexLeanTarget.TargetSyntax.Ty.nat +@8 := LexLeanTarget.TargetSyntax.Program +@9 := LexLeanPreservation.Rust.RCrate +@10 := LexLeanPreservation.Rust.Flags +@11 := LexLeanPreservation.Rust.WT +@12 := #3 +@14 := @11 @12 @4 +@15 := #1 +@16 := @14 @15 +@17 := #0 +@18 := @5 @17 +@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 +@26 := LexLeanPreservation.Rust.wt_nat @0 +@27 := @11 @0 +@34 := {c : @9} -> {A : @10} -> (n : @3) -> @27 @4 @15 @18 @7 +@35 := @26 @1 +@36 := @27 @1 +@41 := {A : @10} -> (n : @3) -> @36 @15 @18 @7 +@42 := @35 @2 +@43 := @36 @2 +@46 := (n : @3) -> @43 @18 @7 +@47 := @42 @4 +@49 := @43 @6 @7 +@50 := @5 @15 +@51 := @42 @15 +@53 := @43 @50 @7 +@54 := LexLeanTarget.TargetSyntax.Value +@55 := List.nil.{0} +@56 := List.cons.{0} +@57 := @55 @54 +@58 := @56 @54 +@59 := @58 @50 +@60 := @59 @57 +@61 := @58 @6 +@62 := @61 @60 +@65 := Prod.{0, 0} @3 @54 +@66 := 1 +@69 := Prod.mk.{0, 0} @3 @54 +@70 := @69 @66 +@71 := @70 @50 +@72 := 0 +@73 := @69 @72 +@74 := @73 @6 +@75 := @55 @65 +@76 := @56 @65 +@78 := @76 @74 @75 +@80 := @76 @71 @78 +@81 := Bool.true +@82 := LexLeanTarget.TargetSyntax.Function +@83 := LexLeanTarget.TargetSyntax.Program.functions +@84 := @83 @0 +@85 := LexLeanTarget.TargetSyntax.Ty +@86 := @55 @3 +@87 := @55 @85 +@88 := LexLeanTarget.TargetSyntax.Ty.unit +@89 := LexLeanTarget.TargetSyntax.Value.unit +@92 := LexLeanTarget.TargetSyntax.Expr.value @88 @89 +@97 := LexLeanTarget.TargetSyntax.Function.mk @86 @87 @88 @92 +@102 := List.getD.{0} @82 @84 @72 @97 +@106 := fun (__e_n : @3) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.RustCore.root @17 @72 +@107 := LexLeanPreservation.Rust.WTL +@115 := {p : @8} -> {c : @9} -> {A : @10} -> @107 @4 @15 @17 @57 @87 +@117 := LexLeanPreservation.Rust.wtl_nil @0 +@118 := @107 @0 +@124 := {c : @9} -> {A : @10} -> @118 @15 @17 @57 @87 +@125 := @117 @1 +@126 := @118 @1 +@130 := {A : @10} -> @126 @17 @57 @87 +@131 := @125 @2 +@132 := @126 @2 +@133 := @132 @57 +@134 := @133 @87 +@135 := List.{0} +@136 := @135 @54 +@137 := @135 @85 +@138 := #6 +@139 := @11 @138 +@140 := #5 +@141 := @139 @140 +@142 := #4 +@145 := @141 @142 @12 @4 +@146 := #7 +@151 := @107 @146 @138 @140 @4 @15 +@152 := #8 +@155 := @107 @152 @146 @138 +@157 := @58 @140 @12 +@158 := @155 @157 +@159 := @56 @85 +@161 := @159 @142 @4 +@171 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {v : @54} -> {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @145) -> (hs : @151) -> @158 @161 +@173 := LexLeanPreservation.Rust.wtl_cons @0 +@193 := {c : @9} -> + {A : @10} -> + {v : @54} -> + {t : @85} -> + {vs : @136} -> + {ts : @137} -> + (h : @27 @140 @142 @12 @4) -> (hs : @118 @138 @140 @4 @15) -> @118 @146 @138 @157 @161 +@194 := @173 @1 +@210 := {A : @10} -> + {v : @54} -> + {t : @85} -> + {vs : @136} -> + {ts : @137} -> (h : @36 @142 @12 @4) -> (hs : @126 @140 @4 @15) -> @126 @138 @157 @161 +@211 := @194 @2 +@213 := @43 @12 @4 +@215 := @132 @4 @15 +@223 := {v : @54} -> + {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @213) -> (hs : @215) -> @132 @157 @161 +@224 := @211 @50 +@225 := @5 @142 +@226 := @43 @225 +@227 := @226 @4 +@228 := @5 @138 +@229 := @58 @228 +@231 := @132 (@229 @12) +@237 := {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @227) -> (hs : @215) -> @231 @161 +@238 := @224 @7 +@239 := @5 @12 +@241 := @43 @239 @7 +@242 := @5 @140 +@243 := @58 @242 +@245 := @132 (@243 @12) +@246 := @159 @7 +@247 := @246 @4 +@252 := {vs : @136} -> {ts : @137} -> (h : @241) -> (hs : @215) -> @245 @247 +@253 := @238 @57 +@254 := @133 @15 +@255 := @58 @225 +@256 := @255 @57 +@261 := {ts : @137} -> (h : @49) -> (hs : @254) -> @132 @256 @247 +@262 := @253 @87 +@263 := @58 @239 +@264 := @263 @57 +@265 := @132 @264 +@266 := @246 @87 +@269 := (h : @53) -> (hs : @134) -> @265 @266 +@270 := @262 @51 +@271 := @61 @57 +@273 := @132 @271 @266 +@274 := (hs : @134) -> @273 +@275 := @270 @131 +@277 := @132 @60 @266 +@278 := @211 @6 +@280 := @43 @242 @4 +@281 := @5 @146 +@282 := @58 @281 +@290 := {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @280) -> (hs : @215) -> @132 (@282 @12) @161 +@291 := @278 @7 +@297 := {vs : @136} -> {ts : @137} -> (h : @226 @7) -> (hs : @215) -> @231 @247 +@298 := @291 @60 +@299 := @265 @15 +@300 := @243 @256 +@301 := @132 @300 +@305 := {ts : @137} -> (h : @241) -> (hs : @299) -> @301 @247 +@306 := @298 @266 +@307 := @255 @264 +@308 := @132 @307 +@309 := @246 @266 +@312 := (h : @49) -> (hs : @273) -> @308 @309 +@313 := @306 @47 +@314 := @263 @271 +@315 := @132 @314 +@317 := (hs : @277) -> @315 @309 +@318 := @313 @275 +@319 := @132 @62 +@320 := @319 @309 +@321 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.denote +@323 := @321 @4 @15 +@324 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.__fits_0 +@326 := @324 @4 @15 +@330 := @5 (Coverage.Main.higher @4 @15) +@333 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.root @4 @15 +@334 := Bool +@335 := Ne.{1} +@336 := LexLeanPreservation.Obs +@337 := @335 @336 +@338 := LexLeanPreservation.Rel +@341 := @337 (@338 @15 @17) +@342 := LexLeanPreservation.Obs.stuck +@345 := (f : @334) -> (v : @54) -> @341 @342 +@347 := LexLeanPreservation.Rust.rel_ne_stuck @326 +@354 := (v : @54) -> @337 (@338 (@324 @12 @4) @17) @342 +@355 := @347 @330 +@359 := @337 (@338 @326 @330) @342 +@360 := @135 @65 +@361 := LexLeanPreservation.Rust.FunSem +@362 := #9 +@368 := (n : @3) -> @361 @362 @152 @146 @17 @138 +@369 := Eq.{1} +@370 := Option.{0} +@371 := @370 @82 +@372 := @369 @371 +@379 := LexLeanRuntime.index (@135 @82) @82 (LexLeanRuntime.instIndexableList @82) +@383 := @372 (@379 (@83 @362) @138) +@384 := Option.some.{0} +@385 := @384 @82 +@386 := @385 @140 +@387 := @383 @386 +@388 := #10 +@392 := @107 @388 @362 @152 @140 +@393 := LexLeanTarget.TargetSyntax.Function.types +@394 := @393 @138 +@395 := @392 @394 +@396 := @370 @360 +@397 := @369 @396 +@398 := LexLeanTarget.TargetSemantics.bindAll +@399 := LexLeanTarget.TargetSyntax.Function.parameters +@404 := @397 (@398 (@399 @146) @138 @75) +@405 := @384 @360 +@406 := @405 @140 +@407 := @404 @406 +@408 := @370 @334 +@409 := @369 @408 +@410 := LexLeanPreservation.Rust.fnFallible +@411 := #11 +@414 := @409 (@410 @411 @362) +@415 := @384 @334 +@416 := @415 @140 +@417 := @414 @416 +@418 := LexLeanPreservation.RunConv +@419 := #13 +@423 := @418 @419 @388 @152 @140 +@425 := @337 @138 @342 +@426 := Exists.{1} +@427 := LexLeanPreservation.Rust.ROut +@428 := @426 @427 +@429 := And +@430 := LexLeanPreservation.Rust.RealizesFn +@434 := @429 (@430 @362 @152 @17) +@435 := LexLeanPreservation.Rust.RCI +@437 := @435 #15 +@438 := LexLeanPreservation.Rust.fnIdent +@439 := @438 @419 +@446 := (hne : @425) -> @428 (fun (ro : @427) => @434 (@437 @439 @411 @17)) +@461 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {f : @3} -> + {fn : @82} -> + {args : @136} -> + {env : @360} -> + {F : @334} -> + {o : @336} -> + (hB : @368) -> + (hfn : @387) -> (hwt : @395) -> (hbind : @407) -> (hF : @417) -> (hA : @423) -> @446 +@463 := LexLeanPreservation.Rust.compose @0 +@464 := @361 @0 +@469 := (n : @3) -> @464 @152 @146 @17 @138 +@470 := @379 @84 +@473 := @372 (@470 @138) @386 +@477 := @118 @362 @152 @140 @394 +@478 := @418 @0 +@481 := @478 @388 @152 @140 +@495 := {c : @9} -> + {A : @10} -> + {f : @3} -> + {fn : @82} -> + {args : @136} -> + {env : @360} -> + {F : @334} -> + {o : @336} -> + (hB : @469) -> + (hfn : @473) -> (hwt : @477) -> (hbind : @407) -> (hF : @417) -> (hA : @481) -> @446 +@496 := @463 @1 +@497 := @464 @1 +@501 := (n : @3) -> @497 @146 @17 @138 +@504 := @126 @152 @140 @394 +@505 := @410 @1 +@508 := @409 (@505 @362) @416 +@509 := @435 @1 +@519 := (hbind : @407) -> + (hF : @508) -> (hA : @481) -> (hne : @425) -> @428 (fun (ro : @427) => @434 (@509 @439 @411 @17)) +@529 := {A : @10} -> + {f : @3} -> + {fn : @82} -> + {args : @136} -> + {env : @360} -> {F : @334} -> {o : @336} -> (hB : @501) -> (hfn : @473) -> (hwt : @504) -> @519 +@530 := @496 @2 +@532 := @497 @2 @17 +@534 := (n : @3) -> @532 @138 +@535 := @132 @140 +@536 := @535 @394 +@545 := {f : @3} -> + {fn : @82} -> + {args : @136} -> + {env : @360} -> {F : @334} -> {o : @336} -> (hB : @534) -> (hfn : @473) -> (hwt : @536) -> @519 +@546 := @530 @72 +@548 := (n : @3) -> @532 @72 +@549 := @470 @72 +@550 := @372 @549 +@551 := @550 @386 +@552 := @505 @72 +@553 := @409 @552 +@554 := @553 @416 +@555 := @478 @72 +@557 := @555 @152 @140 +@559 := @509 (@438 @72) +@567 := (hF : @554) -> (hA : @557) -> (hne : @425) -> @428 (fun (ro : @427) => @434 (@559 @411 @17)) +@576 := {fn : @82} -> + {args : @136} -> + {env : @360} -> + {F : @334} -> {o : @336} -> (hB : @548) -> (hfn : @551) -> (hwt : @536) -> (hbind : @407) -> @567 +@577 := @546 @102 +@579 := @550 (@385 @102) +@580 := @393 @102 +@581 := @535 @580 +@583 := @398 (@399 @102) +@595 := {args : @136} -> + {env : @360} -> + {F : @334} -> + {o : @336} -> + (hB : @548) -> (hfn : @579) -> (hwt : @581) -> (hbind : @397 (@583 @138 @75) @406) -> @567 +@596 := @577 @62 +@598 := @282 (@229 @57) +@600 := @132 @598 @580 +@602 := @58 (@5 @152) +@604 := @602 (@282 @57) +@608 := @397 (@583 @604 @75) @406 +@610 := @58 (@5 @388) +@612 := @58 (@5 @362) +@614 := @610 (@612 @57) +@616 := @555 @614 @140 +@618 := @58 (@5 @419) +@621 := @58 (@5 #12) +@638 := {env : @360} -> + {F : @334} -> + {o : @336} -> + (hB : @548) -> + (hfn : @579) -> + (hwt : @600) -> + (hbind : @608) -> + (hF : @554) -> + (hA : @616) -> (hne : @425) -> @428 (fun (ro : @427) => @434 (@559 (@618 (@621 @57)) @17)) +@639 := @596 @80 +@641 := @229 (@243 @57) +@643 := @132 @641 @580 +@654 := @397 (@583 @598 @75) (@405 (@76 (@70 @228) (@76 (@73 @281) @75))) +@656 := @612 (@602 @57) +@658 := @555 @656 @140 +@660 := @58 (@5 @411) +@676 := {F : @334} -> + {o : @336} -> + (hB : @548) -> + (hfn : @579) -> + (hwt : @643) -> + (hbind : @654) -> + (hF : @554) -> + (hA : @658) -> (hne : @425) -> @428 (fun (ro : @427) => @434 (@559 (@621 (@660 @57)) @17)) +@677 := @639 @81 +@678 := @301 @580 +@689 := @397 (@583 @641 @75) (@405 (@76 (@70 @242) (@76 (@73 @228) @75))) +@691 := @553 (@415 @81) +@693 := @555 @604 @140 +@694 := @430 @81 +@712 := {o : @336} -> + (hB : @548) -> + (hfn : @579) -> + (hwt : @678) -> + (hbind : @689) -> + (hF : @691) -> + (hA : @693) -> + (hne : @425) -> @428 (fun (ro : @427) => @429 (@694 @152 @17) (@559 (@660 (@610 @57)) @17)) +@713 := @677 @323 +@714 := @308 @580 +@725 := @397 (@583 @300 @75) (@405 (@76 (@70 @225) (@76 (@73 @242) @75))) +@726 := @555 @598 +@728 := @321 @146 @138 +@729 := @726 @728 +@731 := @321 @152 @146 +@750 := (hB : @548) -> + (hfn : @579) -> + (hwt : @714) -> + (hbind : @725) -> + (hF : @691) -> + (hA : @729) -> + (hne : @337 @731 @342) -> + @428 (fun (ro : @427) => @429 (@694 (@321 @388 @362) @17) (@559 @614 @17)) +@751 := @713 @106 +@752 := @315 @580 +@763 := @397 (@583 @307 @75) (@405 (@76 (@70 @239) (@76 (@73 @225) @75))) +@764 := @555 @641 +@766 := @321 @138 @140 +@785 := (hfn : @579) -> + (hwt : @752) -> + (hbind : @763) -> + (hF : @691) -> + (hA : @764 @766) -> + (hne : @337 @728 @342) -> + @428 (fun (ro : @427) => @429 (@694 (@321 @362 @152) @17) (@559 @656 @17)) +@786 := Eq.refl.{1} +@789 := @751 (@786 @371 @549) +@790 := @319 @580 +@801 := @397 (@583 @314 @75) (@405 (@76 (@70 @6) (@76 (@73 @239) @75))) +@802 := @555 @300 +@804 := @321 @140 @142 +@820 := (hwt : @790) -> + (hbind : @801) -> + (hF : @691) -> + (hA : @802 @804) -> + (hne : @337 @766 @342) -> @428 (fun (ro : @427) => @429 (@694 @731 @17) (@559 @604 @17)) +@821 := @789 @318 +@823 := @583 @62 @75 +@826 := @397 @823 (@405 @80) +@827 := @555 @307 +@829 := @321 @142 @12 +@844 := (hbind : @826) -> + (hF : @691) -> + (hA : @827 @829) -> + (hne : @337 @804 @342) -> @428 (fun (ro : @427) => @429 (@694 @728 @17) (@559 @598 @17)) +@847 := @821 (@786 @396 @823) +@848 := @555 @314 +@850 := @321 @12 @4 +@864 := (hF : @691) -> + (hA : @848 @850) -> + (hne : @337 @829 @342) -> @428 (fun (ro : @427) => @429 (@694 @766 @17) (@559 @641 @17)) +@867 := @847 (@786 @408 @552) +@881 := (hA : @555 @62 @323) -> + (hne : @337 @850 @342) -> @428 (fun (ro : @427) => @429 (@694 @804 @17) (@559 @300 @17)) +@882 := @867 @333 +@893 := (hne : @337 @323 @342) -> @428 (fun (ro : @427) => @429 (@694 @829 @17) (@559 @307 @17)) +@894 := @882 @355 +@900 := @429 (@694 @850 @17) (@559 @314 @17) +@902 := @428 (fun (ro : @427) => @900) +@904 := @428 (fun (__e_ro : @427) => @900) +@909 := LexLeanPreservation.Rust.RepresentableL (@59 (@58 @18 @57)) +@910 := (__e_hrep : @909) -> @904 +@911 := fun (__e_hrep : @909) => @894 +@912 := (offset : @3) -> @910 +@913 := fun (offset : @3) => @911 +@914 := (base : @3) -> @912 +@915 := fun (base : @3) => @913 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R18/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R18/Compose/RustStd.lex.tex new file mode 100644 index 000000000..563de15db --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R18/Compose/RustStd.lex.tex @@ -0,0 +1,462 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.Compose.RustStd.root : @914 := @915 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.RustStd.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.RustStd.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.RustStd.flags +@3 := Nat +@4 := #2 +@5 := LexLeanTarget.TargetSyntax.Value.nat +@6 := @5 @4 +@7 := LexLeanTarget.TargetSyntax.Ty.nat +@8 := LexLeanTarget.TargetSyntax.Program +@9 := LexLeanPreservation.Rust.RCrate +@10 := LexLeanPreservation.Rust.Flags +@11 := LexLeanPreservation.Rust.WT +@12 := #3 +@14 := @11 @12 @4 +@15 := #1 +@16 := @14 @15 +@17 := #0 +@18 := @5 @17 +@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 +@26 := LexLeanPreservation.Rust.wt_nat @0 +@27 := @11 @0 +@34 := {c : @9} -> {A : @10} -> (n : @3) -> @27 @4 @15 @18 @7 +@35 := @26 @1 +@36 := @27 @1 +@41 := {A : @10} -> (n : @3) -> @36 @15 @18 @7 +@42 := @35 @2 +@43 := @36 @2 +@46 := (n : @3) -> @43 @18 @7 +@47 := @42 @4 +@49 := @43 @6 @7 +@50 := @5 @15 +@51 := @42 @15 +@53 := @43 @50 @7 +@54 := LexLeanTarget.TargetSyntax.Value +@55 := List.nil.{0} +@56 := List.cons.{0} +@57 := @55 @54 +@58 := @56 @54 +@59 := @58 @50 +@60 := @59 @57 +@61 := @58 @6 +@62 := @61 @60 +@65 := Prod.{0, 0} @3 @54 +@66 := 1 +@69 := Prod.mk.{0, 0} @3 @54 +@70 := @69 @66 +@71 := @70 @50 +@72 := 0 +@73 := @69 @72 +@74 := @73 @6 +@75 := @55 @65 +@76 := @56 @65 +@78 := @76 @74 @75 +@80 := @76 @71 @78 +@81 := Bool.true +@82 := LexLeanTarget.TargetSyntax.Function +@83 := LexLeanTarget.TargetSyntax.Program.functions +@84 := @83 @0 +@85 := LexLeanTarget.TargetSyntax.Ty +@86 := @55 @3 +@87 := @55 @85 +@88 := LexLeanTarget.TargetSyntax.Ty.unit +@89 := LexLeanTarget.TargetSyntax.Value.unit +@92 := LexLeanTarget.TargetSyntax.Expr.value @88 @89 +@97 := LexLeanTarget.TargetSyntax.Function.mk @86 @87 @88 @92 +@102 := List.getD.{0} @82 @84 @72 @97 +@106 := fun (__e_n : @3) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.RustStd.root @17 @72 +@107 := LexLeanPreservation.Rust.WTL +@115 := {p : @8} -> {c : @9} -> {A : @10} -> @107 @4 @15 @17 @57 @87 +@117 := LexLeanPreservation.Rust.wtl_nil @0 +@118 := @107 @0 +@124 := {c : @9} -> {A : @10} -> @118 @15 @17 @57 @87 +@125 := @117 @1 +@126 := @118 @1 +@130 := {A : @10} -> @126 @17 @57 @87 +@131 := @125 @2 +@132 := @126 @2 +@133 := @132 @57 +@134 := @133 @87 +@135 := List.{0} +@136 := @135 @54 +@137 := @135 @85 +@138 := #6 +@139 := @11 @138 +@140 := #5 +@141 := @139 @140 +@142 := #4 +@145 := @141 @142 @12 @4 +@146 := #7 +@151 := @107 @146 @138 @140 @4 @15 +@152 := #8 +@155 := @107 @152 @146 @138 +@157 := @58 @140 @12 +@158 := @155 @157 +@159 := @56 @85 +@161 := @159 @142 @4 +@171 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {v : @54} -> {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @145) -> (hs : @151) -> @158 @161 +@173 := LexLeanPreservation.Rust.wtl_cons @0 +@193 := {c : @9} -> + {A : @10} -> + {v : @54} -> + {t : @85} -> + {vs : @136} -> + {ts : @137} -> + (h : @27 @140 @142 @12 @4) -> (hs : @118 @138 @140 @4 @15) -> @118 @146 @138 @157 @161 +@194 := @173 @1 +@210 := {A : @10} -> + {v : @54} -> + {t : @85} -> + {vs : @136} -> + {ts : @137} -> (h : @36 @142 @12 @4) -> (hs : @126 @140 @4 @15) -> @126 @138 @157 @161 +@211 := @194 @2 +@213 := @43 @12 @4 +@215 := @132 @4 @15 +@223 := {v : @54} -> + {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @213) -> (hs : @215) -> @132 @157 @161 +@224 := @211 @50 +@225 := @5 @142 +@226 := @43 @225 +@227 := @226 @4 +@228 := @5 @138 +@229 := @58 @228 +@231 := @132 (@229 @12) +@237 := {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @227) -> (hs : @215) -> @231 @161 +@238 := @224 @7 +@239 := @5 @12 +@241 := @43 @239 @7 +@242 := @5 @140 +@243 := @58 @242 +@245 := @132 (@243 @12) +@246 := @159 @7 +@247 := @246 @4 +@252 := {vs : @136} -> {ts : @137} -> (h : @241) -> (hs : @215) -> @245 @247 +@253 := @238 @57 +@254 := @133 @15 +@255 := @58 @225 +@256 := @255 @57 +@261 := {ts : @137} -> (h : @49) -> (hs : @254) -> @132 @256 @247 +@262 := @253 @87 +@263 := @58 @239 +@264 := @263 @57 +@265 := @132 @264 +@266 := @246 @87 +@269 := (h : @53) -> (hs : @134) -> @265 @266 +@270 := @262 @51 +@271 := @61 @57 +@273 := @132 @271 @266 +@274 := (hs : @134) -> @273 +@275 := @270 @131 +@277 := @132 @60 @266 +@278 := @211 @6 +@280 := @43 @242 @4 +@281 := @5 @146 +@282 := @58 @281 +@290 := {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @280) -> (hs : @215) -> @132 (@282 @12) @161 +@291 := @278 @7 +@297 := {vs : @136} -> {ts : @137} -> (h : @226 @7) -> (hs : @215) -> @231 @247 +@298 := @291 @60 +@299 := @265 @15 +@300 := @243 @256 +@301 := @132 @300 +@305 := {ts : @137} -> (h : @241) -> (hs : @299) -> @301 @247 +@306 := @298 @266 +@307 := @255 @264 +@308 := @132 @307 +@309 := @246 @266 +@312 := (h : @49) -> (hs : @273) -> @308 @309 +@313 := @306 @47 +@314 := @263 @271 +@315 := @132 @314 +@317 := (hs : @277) -> @315 @309 +@318 := @313 @275 +@319 := @132 @62 +@320 := @319 @309 +@321 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.denote +@323 := @321 @4 @15 +@324 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.__fits_0 +@326 := @324 @4 @15 +@330 := @5 (Coverage.Main.higher @4 @15) +@333 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.root @4 @15 +@334 := Bool +@335 := Ne.{1} +@336 := LexLeanPreservation.Obs +@337 := @335 @336 +@338 := LexLeanPreservation.Rel +@341 := @337 (@338 @15 @17) +@342 := LexLeanPreservation.Obs.stuck +@345 := (f : @334) -> (v : @54) -> @341 @342 +@347 := LexLeanPreservation.Rust.rel_ne_stuck @326 +@354 := (v : @54) -> @337 (@338 (@324 @12 @4) @17) @342 +@355 := @347 @330 +@359 := @337 (@338 @326 @330) @342 +@360 := @135 @65 +@361 := LexLeanPreservation.Rust.FunSem +@362 := #9 +@368 := (n : @3) -> @361 @362 @152 @146 @17 @138 +@369 := Eq.{1} +@370 := Option.{0} +@371 := @370 @82 +@372 := @369 @371 +@379 := LexLeanRuntime.index (@135 @82) @82 (LexLeanRuntime.instIndexableList @82) +@383 := @372 (@379 (@83 @362) @138) +@384 := Option.some.{0} +@385 := @384 @82 +@386 := @385 @140 +@387 := @383 @386 +@388 := #10 +@392 := @107 @388 @362 @152 @140 +@393 := LexLeanTarget.TargetSyntax.Function.types +@394 := @393 @138 +@395 := @392 @394 +@396 := @370 @360 +@397 := @369 @396 +@398 := LexLeanTarget.TargetSemantics.bindAll +@399 := LexLeanTarget.TargetSyntax.Function.parameters +@404 := @397 (@398 (@399 @146) @138 @75) +@405 := @384 @360 +@406 := @405 @140 +@407 := @404 @406 +@408 := @370 @334 +@409 := @369 @408 +@410 := LexLeanPreservation.Rust.fnFallible +@411 := #11 +@414 := @409 (@410 @411 @362) +@415 := @384 @334 +@416 := @415 @140 +@417 := @414 @416 +@418 := LexLeanPreservation.RunConv +@419 := #13 +@423 := @418 @419 @388 @152 @140 +@425 := @337 @138 @342 +@426 := Exists.{1} +@427 := LexLeanPreservation.Rust.ROut +@428 := @426 @427 +@429 := And +@430 := LexLeanPreservation.Rust.RealizesFn +@434 := @429 (@430 @362 @152 @17) +@435 := LexLeanPreservation.Rust.RCI +@437 := @435 #15 +@438 := LexLeanPreservation.Rust.fnIdent +@439 := @438 @419 +@446 := (hne : @425) -> @428 (fun (ro : @427) => @434 (@437 @439 @411 @17)) +@461 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {f : @3} -> + {fn : @82} -> + {args : @136} -> + {env : @360} -> + {F : @334} -> + {o : @336} -> + (hB : @368) -> + (hfn : @387) -> (hwt : @395) -> (hbind : @407) -> (hF : @417) -> (hA : @423) -> @446 +@463 := LexLeanPreservation.Rust.compose @0 +@464 := @361 @0 +@469 := (n : @3) -> @464 @152 @146 @17 @138 +@470 := @379 @84 +@473 := @372 (@470 @138) @386 +@477 := @118 @362 @152 @140 @394 +@478 := @418 @0 +@481 := @478 @388 @152 @140 +@495 := {c : @9} -> + {A : @10} -> + {f : @3} -> + {fn : @82} -> + {args : @136} -> + {env : @360} -> + {F : @334} -> + {o : @336} -> + (hB : @469) -> + (hfn : @473) -> (hwt : @477) -> (hbind : @407) -> (hF : @417) -> (hA : @481) -> @446 +@496 := @463 @1 +@497 := @464 @1 +@501 := (n : @3) -> @497 @146 @17 @138 +@504 := @126 @152 @140 @394 +@505 := @410 @1 +@508 := @409 (@505 @362) @416 +@509 := @435 @1 +@519 := (hbind : @407) -> + (hF : @508) -> (hA : @481) -> (hne : @425) -> @428 (fun (ro : @427) => @434 (@509 @439 @411 @17)) +@529 := {A : @10} -> + {f : @3} -> + {fn : @82} -> + {args : @136} -> + {env : @360} -> {F : @334} -> {o : @336} -> (hB : @501) -> (hfn : @473) -> (hwt : @504) -> @519 +@530 := @496 @2 +@532 := @497 @2 @17 +@534 := (n : @3) -> @532 @138 +@535 := @132 @140 +@536 := @535 @394 +@545 := {f : @3} -> + {fn : @82} -> + {args : @136} -> + {env : @360} -> {F : @334} -> {o : @336} -> (hB : @534) -> (hfn : @473) -> (hwt : @536) -> @519 +@546 := @530 @72 +@548 := (n : @3) -> @532 @72 +@549 := @470 @72 +@550 := @372 @549 +@551 := @550 @386 +@552 := @505 @72 +@553 := @409 @552 +@554 := @553 @416 +@555 := @478 @72 +@557 := @555 @152 @140 +@559 := @509 (@438 @72) +@567 := (hF : @554) -> (hA : @557) -> (hne : @425) -> @428 (fun (ro : @427) => @434 (@559 @411 @17)) +@576 := {fn : @82} -> + {args : @136} -> + {env : @360} -> + {F : @334} -> {o : @336} -> (hB : @548) -> (hfn : @551) -> (hwt : @536) -> (hbind : @407) -> @567 +@577 := @546 @102 +@579 := @550 (@385 @102) +@580 := @393 @102 +@581 := @535 @580 +@583 := @398 (@399 @102) +@595 := {args : @136} -> + {env : @360} -> + {F : @334} -> + {o : @336} -> + (hB : @548) -> (hfn : @579) -> (hwt : @581) -> (hbind : @397 (@583 @138 @75) @406) -> @567 +@596 := @577 @62 +@598 := @282 (@229 @57) +@600 := @132 @598 @580 +@602 := @58 (@5 @152) +@604 := @602 (@282 @57) +@608 := @397 (@583 @604 @75) @406 +@610 := @58 (@5 @388) +@612 := @58 (@5 @362) +@614 := @610 (@612 @57) +@616 := @555 @614 @140 +@618 := @58 (@5 @419) +@621 := @58 (@5 #12) +@638 := {env : @360} -> + {F : @334} -> + {o : @336} -> + (hB : @548) -> + (hfn : @579) -> + (hwt : @600) -> + (hbind : @608) -> + (hF : @554) -> + (hA : @616) -> (hne : @425) -> @428 (fun (ro : @427) => @434 (@559 (@618 (@621 @57)) @17)) +@639 := @596 @80 +@641 := @229 (@243 @57) +@643 := @132 @641 @580 +@654 := @397 (@583 @598 @75) (@405 (@76 (@70 @228) (@76 (@73 @281) @75))) +@656 := @612 (@602 @57) +@658 := @555 @656 @140 +@660 := @58 (@5 @411) +@676 := {F : @334} -> + {o : @336} -> + (hB : @548) -> + (hfn : @579) -> + (hwt : @643) -> + (hbind : @654) -> + (hF : @554) -> + (hA : @658) -> (hne : @425) -> @428 (fun (ro : @427) => @434 (@559 (@621 (@660 @57)) @17)) +@677 := @639 @81 +@678 := @301 @580 +@689 := @397 (@583 @641 @75) (@405 (@76 (@70 @242) (@76 (@73 @228) @75))) +@691 := @553 (@415 @81) +@693 := @555 @604 @140 +@694 := @430 @81 +@712 := {o : @336} -> + (hB : @548) -> + (hfn : @579) -> + (hwt : @678) -> + (hbind : @689) -> + (hF : @691) -> + (hA : @693) -> + (hne : @425) -> @428 (fun (ro : @427) => @429 (@694 @152 @17) (@559 (@660 (@610 @57)) @17)) +@713 := @677 @323 +@714 := @308 @580 +@725 := @397 (@583 @300 @75) (@405 (@76 (@70 @225) (@76 (@73 @242) @75))) +@726 := @555 @598 +@728 := @321 @146 @138 +@729 := @726 @728 +@731 := @321 @152 @146 +@750 := (hB : @548) -> + (hfn : @579) -> + (hwt : @714) -> + (hbind : @725) -> + (hF : @691) -> + (hA : @729) -> + (hne : @337 @731 @342) -> + @428 (fun (ro : @427) => @429 (@694 (@321 @388 @362) @17) (@559 @614 @17)) +@751 := @713 @106 +@752 := @315 @580 +@763 := @397 (@583 @307 @75) (@405 (@76 (@70 @239) (@76 (@73 @225) @75))) +@764 := @555 @641 +@766 := @321 @138 @140 +@785 := (hfn : @579) -> + (hwt : @752) -> + (hbind : @763) -> + (hF : @691) -> + (hA : @764 @766) -> + (hne : @337 @728 @342) -> + @428 (fun (ro : @427) => @429 (@694 (@321 @362 @152) @17) (@559 @656 @17)) +@786 := Eq.refl.{1} +@789 := @751 (@786 @371 @549) +@790 := @319 @580 +@801 := @397 (@583 @314 @75) (@405 (@76 (@70 @6) (@76 (@73 @239) @75))) +@802 := @555 @300 +@804 := @321 @140 @142 +@820 := (hwt : @790) -> + (hbind : @801) -> + (hF : @691) -> + (hA : @802 @804) -> + (hne : @337 @766 @342) -> @428 (fun (ro : @427) => @429 (@694 @731 @17) (@559 @604 @17)) +@821 := @789 @318 +@823 := @583 @62 @75 +@826 := @397 @823 (@405 @80) +@827 := @555 @307 +@829 := @321 @142 @12 +@844 := (hbind : @826) -> + (hF : @691) -> + (hA : @827 @829) -> + (hne : @337 @804 @342) -> @428 (fun (ro : @427) => @429 (@694 @728 @17) (@559 @598 @17)) +@847 := @821 (@786 @396 @823) +@848 := @555 @314 +@850 := @321 @12 @4 +@864 := (hF : @691) -> + (hA : @848 @850) -> + (hne : @337 @829 @342) -> @428 (fun (ro : @427) => @429 (@694 @766 @17) (@559 @641 @17)) +@867 := @847 (@786 @408 @552) +@881 := (hA : @555 @62 @323) -> + (hne : @337 @850 @342) -> @428 (fun (ro : @427) => @429 (@694 @804 @17) (@559 @300 @17)) +@882 := @867 @333 +@893 := (hne : @337 @323 @342) -> @428 (fun (ro : @427) => @429 (@694 @829 @17) (@559 @307 @17)) +@894 := @882 @355 +@900 := @429 (@694 @850 @17) (@559 @314 @17) +@902 := @428 (fun (ro : @427) => @900) +@904 := @428 (fun (__e_ro : @427) => @900) +@909 := LexLeanPreservation.Rust.RepresentableL (@59 (@58 @18 @57)) +@910 := (__e_hrep : @909) -> @904 +@911 := fun (__e_hrep : @909) => @894 +@912 := (offset : @3) -> @910 +@913 := fun (offset : @3) => @911 +@914 := (base : @3) -> @912 +@915 := fun (base : @3) => @913 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R18/RustCore.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R18/RustCore.lean new file mode 100644 index 000000000..fafff49bc --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R18/RustCore.lean @@ -0,0 +1,67 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.RustCore +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1], types := [.nat, .nat], result := .nat, + body := (.«let» 2 .nat (.prim .natAdd [(.var 0), (.value .nat (.nat 1))]) (.prim .natAdd [(.call 1 [(.closure 2 [(.var 2), (.var 1)]), (.var 0)]), (.prim .natAdd [(.apply (.closure 3 [(.var 2)]) [(.var 0)]), (.call 1 [(.closure 4 []), (.var 1)])])])) }, + { parameters := [0, 1], types := [(.fn [.nat] .nat), .nat], result := .nat, + body := (.apply (.var 0) [(.apply (.var 0) [(.var 1)])]) }, + { parameters := [0, 1, 2], types := [.nat, .nat, .nat], result := .nat, + body := (.prim .natAdd [(.prim .natMul [(.var 2), (.var 0)]), (.var 1)]) }, + { parameters := [0, 1], types := [.nat, .nat], result := .nat, + body := (.prim .natSub [(.var 1), (.var 0)]) }, + { parameters := [0], types := [.nat], result := .nat, + body := (.prim .natAdd [(.var 0), (.var 0)]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .core, items := [ + (.enum (.fn 0) [{ number := 2, fields := [.nat, .nat] }, { number := 3, fields := [.nat] }, { number := 4, fields := [] }]), + (.apply 0 [.nat] .nat true [{ function := 2, captures := [.copy, .copy], functionFallible := true }, { function := 3, captures := [.copy], functionFallible := false }, { function := 4, captures := [], functionFallible := true }]), + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] true)))), (.mk (.bind (.generated .operand 6)) none (.call (.function 1) [(.construct (.closure 0 2) [(.copy (.generated .binding 2)), (.copy (.generated .binding 1))]), (.copy (.generated .binding 0))] true)), (.mk (.bind (.generated .operand 7)) none (.block (.mk [(.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .callee 3)) (some (.fn 0)) (.construct (.closure 0 3) [(.copy (.generated .binding 2))]))] (.apply (.generated .callee 3) [(.copy (.generated .binding 0))] true)))), (.mk (.bind (.generated .operand 5)) none (.call (.function 1) [(.construct (.closure 0 4) []), (.copy (.generated .binding 1))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] true))))] (.call (.runtime .natAdd) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false))), + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .callee 8)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 8) [(.block (.mk [(.mk (.bind (.generated .callee 9)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 9) [(.copy (.generated .binding 1))] true)))] false))), + (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .operand 12)) none (.block (.mk [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0)))] (.call (.runtime .natMul) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] true)))), (.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false))), + (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .nat (.mk [(.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 0)))] (.call (.runtime .natSub) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false))), + (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 0)))] (.call (.runtime .natAdd) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false)))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [(([.nat], .nat), true)] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] true)))), (.mk (.bind (.generated .operand 6)) none (.call (.function 1) [(.construct (.closure 0 2) [(.copy (.generated .binding 2)), (.copy (.generated .binding 1))]), (.copy (.generated .binding 0))] true)), (.mk (.bind (.generated .operand 7)) none (.block (.mk [(.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .callee 3)) (some (.fn 0)) (.construct (.closure 0 3) [(.copy (.generated .binding 2))]))] (.apply (.generated .callee 3) [(.copy (.generated .binding 0))] true)))), (.mk (.bind (.generated .operand 5)) none (.call (.function 1) [(.construct (.closure 0 4) []), (.copy (.generated .binding 1))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] true))))], (.call (.runtime .natAdd) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.fn [.nat] .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [.nat, .nat]) (mask := [false, false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .callee 3)) (some (.fn 0)) (.construct (.closure 0 3) [(.copy (.generated .binding 2))]))] (.apply (.generated .callee 3) [(.copy (.generated .binding 0))] true)))), (.mk (.bind (.generated .operand 5)) none (.call (.function 1) [(.construct (.closure 0 4) []), (.copy (.generated .binding 1))] true))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 3)) (some (.fn 0)) (.construct (.closure 0 3) [(.copy (.generated .binding 2))]))]) (tail := (.apply (.generated .callee 3) [(.copy (.generated .binding 0))] true)) (Corr.apply (ps := [.nat]) (af := true) (Corr.eOfBNil (Corr.closure (caps := [.nat]) (mask := [false]) (af := true) (ff := false) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.fn [.nat] .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl))⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .callee 8)) (some (.fn 0)) (.clone (.generated .binding 0)))], (.apply (.generated .callee 8) [(.block (.mk [(.mk (.bind (.generated .callee 9)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 9) [(.copy (.generated .binding 1))] true)))] false), [(1, .nat, (some 1)), (0, (.fn [.nat] .nat), (some 0))], rfl, rfl, + (Corr.applyF (ps := [.nat]) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 9)) (some (.fn 0)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 9) [(.copy (.generated .binding 1))] true)) (Corr.apply (ps := [.nat]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl)⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 12)) none (.block (.mk [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0)))] (.call (.runtime .natMul) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] true)))), (.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1)))], (.call (.runtime .natAdd) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false), [(2, .nat, (some 2)), (1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0)))]) (tail := (.call (.runtime .natMul) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun3 : FunOK program krate flags 3 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 0)))], (.call (.runtime .natSub) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun4 : FunOK program krate flags 4 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 0)))], (.call (.runtime .natAdd) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false), [(0, .nat, (some 0))], rfl, rfl, + (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | 3 => exact fun3 + | 4 => exact fun4 + | _ + 5 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.RustCore diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R18/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R18/RustStd.lean new file mode 100644 index 000000000..838afc3ef --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R18/RustStd.lean @@ -0,0 +1,67 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1], types := [.nat, .nat], result := .nat, + body := (.«let» 2 .nat (.prim .natAdd [(.var 0), (.value .nat (.nat 1))]) (.prim .natAdd [(.call 1 [(.closure 2 [(.var 2), (.var 1)]), (.var 0)]), (.prim .natAdd [(.apply (.closure 3 [(.var 2)]) [(.var 0)]), (.call 1 [(.closure 4 []), (.var 1)])])])) }, + { parameters := [0, 1], types := [(.fn [.nat] .nat), .nat], result := .nat, + body := (.apply (.var 0) [(.apply (.var 0) [(.var 1)])]) }, + { parameters := [0, 1, 2], types := [.nat, .nat, .nat], result := .nat, + body := (.prim .natAdd [(.prim .natMul [(.var 2), (.var 0)]), (.var 1)]) }, + { parameters := [0, 1], types := [.nat, .nat], result := .nat, + body := (.prim .natSub [(.var 1), (.var 0)]) }, + { parameters := [0], types := [.nat], result := .nat, + body := (.prim .natAdd [(.var 0), (.var 0)]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.enum (.fn 0) [{ number := 2, fields := [.nat, .nat] }, { number := 3, fields := [.nat] }, { number := 4, fields := [] }]), + (.apply 0 [.nat] .nat true [{ function := 2, captures := [.copy, .copy], functionFallible := true }, { function := 3, captures := [.copy], functionFallible := false }, { function := 4, captures := [], functionFallible := true }]), + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] true)))), (.mk (.bind (.generated .operand 6)) none (.call (.function 1) [(.construct (.closure 0 2) [(.copy (.generated .binding 2)), (.copy (.generated .binding 1))]), (.copy (.generated .binding 0))] true)), (.mk (.bind (.generated .operand 7)) none (.block (.mk [(.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .callee 3)) (some (.fn 0)) (.construct (.closure 0 3) [(.copy (.generated .binding 2))]))] (.apply (.generated .callee 3) [(.copy (.generated .binding 0))] true)))), (.mk (.bind (.generated .operand 5)) none (.call (.function 1) [(.construct (.closure 0 4) []), (.copy (.generated .binding 1))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] true))))] (.call (.runtime .natAdd) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false))), + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .callee 8)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 8) [(.block (.mk [(.mk (.bind (.generated .callee 9)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 9) [(.copy (.generated .binding 1))] true)))] false))), + (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .operand 12)) none (.block (.mk [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0)))] (.call (.runtime .natMul) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] true)))), (.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false))), + (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .nat (.mk [(.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 0)))] (.call (.runtime .natSub) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false))), + (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 0)))] (.call (.runtime .natAdd) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false)))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [(([.nat], .nat), true)] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] true)))), (.mk (.bind (.generated .operand 6)) none (.call (.function 1) [(.construct (.closure 0 2) [(.copy (.generated .binding 2)), (.copy (.generated .binding 1))]), (.copy (.generated .binding 0))] true)), (.mk (.bind (.generated .operand 7)) none (.block (.mk [(.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .callee 3)) (some (.fn 0)) (.construct (.closure 0 3) [(.copy (.generated .binding 2))]))] (.apply (.generated .callee 3) [(.copy (.generated .binding 0))] true)))), (.mk (.bind (.generated .operand 5)) none (.call (.function 1) [(.construct (.closure 0 4) []), (.copy (.generated .binding 1))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] true))))], (.call (.runtime .natAdd) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.fn [.nat] .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [.nat, .nat]) (mask := [false, false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .callee 3)) (some (.fn 0)) (.construct (.closure 0 3) [(.copy (.generated .binding 2))]))] (.apply (.generated .callee 3) [(.copy (.generated .binding 0))] true)))), (.mk (.bind (.generated .operand 5)) none (.call (.function 1) [(.construct (.closure 0 4) []), (.copy (.generated .binding 1))] true))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 3)) (some (.fn 0)) (.construct (.closure 0 3) [(.copy (.generated .binding 2))]))]) (tail := (.apply (.generated .callee 3) [(.copy (.generated .binding 0))] true)) (Corr.apply (ps := [.nat]) (af := true) (Corr.eOfBNil (Corr.closure (caps := [.nat]) (mask := [false]) (af := true) (ff := false) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.fn [.nat] .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl))⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .callee 8)) (some (.fn 0)) (.clone (.generated .binding 0)))], (.apply (.generated .callee 8) [(.block (.mk [(.mk (.bind (.generated .callee 9)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 9) [(.copy (.generated .binding 1))] true)))] false), [(1, .nat, (some 1)), (0, (.fn [.nat] .nat), (some 0))], rfl, rfl, + (Corr.applyF (ps := [.nat]) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 9)) (some (.fn 0)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 9) [(.copy (.generated .binding 1))] true)) (Corr.apply (ps := [.nat]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl)⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 12)) none (.block (.mk [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0)))] (.call (.runtime .natMul) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] true)))), (.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1)))], (.call (.runtime .natAdd) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false), [(2, .nat, (some 2)), (1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0)))]) (tail := (.call (.runtime .natMul) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun3 : FunOK program krate flags 3 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 0)))], (.call (.runtime .natSub) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun4 : FunOK program krate flags 4 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 0)))], (.call (.runtime .natAdd) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false), [(0, .nat, (some 0))], rfl, rfl, + (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | 3 => exact fun3 + | 4 => exact fun4 + | _ + 5 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R19.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R19.lean similarity index 98% rename from examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R19.lean rename to examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R19.lean index c7a392bbc..d6a1fa9da 100644 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R19.lean +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R19.lean @@ -18,7 +18,7 @@ set_option maxRecDepth 100000 set_option maxHeartbeats 0 set_option synthInstance.maxHeartbeats 0 set_option linter.unusedVariables false -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19 def __prog : _root_.LexLeanTarget.TargetSyntax.Program := { adts := [], functions := [ @@ -78,4 +78,4 @@ def denote (values : (List Nat)) : _root_.LexLeanPreservation.Obs := theorem root (values : (List Nat)) : _root_.LexLeanPreservation.RunConv __prog 0 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) values)] (_root_.LexLeanPreservation.Rel (__fits_0 values) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bool) (Coverage.Main.mapped values))) := _root_.LexLeanPreservation.run_of_funRel (__rel_0 values) -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19 +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19 diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R19/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R19/Compose/RustStd.lex.tex new file mode 100644 index 000000000..1e8ad431b --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R19/Compose/RustStd.lex.tex @@ -0,0 +1,463 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.Compose.RustStd.root : @926 := @927 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.RustStd.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.RustStd.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.RustStd.flags +@3 := Nat +@4 := List.{0} +@5 := @4 @3 +@6 := #1 +@7 := LexLeanTarget.TargetSyntax.Value.nat +@8 := LexLeanPreservation.encList +@9 := @8 @3 +@10 := @9 @7 +@11 := @10 @6 +@12 := LexLeanTarget.TargetSyntax.Ty.nat +@13 := LexLeanTarget.TargetSyntax.Ty.list +@14 := @13 @12 +@15 := #0 +@16 := LexLeanTarget.TargetSyntax.Program +@17 := LexLeanPreservation.Rust.RCrate +@18 := LexLeanPreservation.Rust.Flags +@19 := LexLeanPreservation.Rust.WT +@20 := #3 +@21 := @19 @20 +@22 := #2 +@24 := @21 @22 @6 +@25 := @7 @15 +@31 := {p : @16} -> {c : @17} -> {A : @18} -> (n : @3) -> @24 @25 @12 +@33 := LexLeanPreservation.Rust.wt_nat @0 +@34 := @19 @0 +@41 := {c : @17} -> {A : @18} -> (n : @3) -> @34 @22 @6 @25 @12 +@42 := @33 @1 +@43 := @34 @1 +@48 := {A : @18} -> (n : @3) -> @43 @6 @25 @12 +@49 := @42 @2 +@50 := @43 @2 +@51 := @50 @25 +@52 := @51 @12 +@53 := (n : @3) -> @52 +@55 := fun (__x : @3) => @49 @15 +@56 := Sort 1 +@57 := LexLeanTarget.TargetSyntax.Value +@58 := (a._@._internal._hyg.#0 : @15) -> @57 +@59 := LexLeanTarget.TargetSyntax.Ty +@60 := #6 +@61 := @19 @60 +@62 := #5 +@63 := @61 @62 +@64 := #4 +@65 := @63 @64 +@66 := @22 @15 +@69 := (x : @22) -> @65 @66 @6 +@70 := @4 @20 +@71 := #7 +@74 := @19 @71 @60 @62 +@77 := @8 @64 @20 @15 +@78 := @74 @77 +@79 := @13 @22 +@88 := {p : @16} -> + {c : @17} -> + {A : @18} -> {α : @56} -> {e : @58} -> {t : @59} -> (h : @69) -> (xs : @70) -> @78 @79 +@90 := LexLeanPreservation.Rust.wt_encList @0 +@92 := @34 @62 @64 +@106 := {c : @17} -> + {A : @18} -> + {α : @56} -> + {e : @58} -> {t : @59} -> (h : (x : @22) -> @92 @66 @6) -> (xs : @70) -> @34 @60 @62 @77 @79 +@107 := @90 @1 +@108 := @43 @64 +@120 := {A : @18} -> + {α : @56} -> + {e : @58} -> {t : @59} -> (h : (x : @22) -> @108 @66 @6) -> (xs : @70) -> @43 @62 @77 @79 +@121 := @107 @2 +@123 := @50 @66 @6 +@131 := {α : @56} -> {e : @58} -> {t : @59} -> (h : (x : @22) -> @123) -> (xs : @70) -> @50 @77 @79 +@132 := @121 @3 +@142 := {e : (a._@._internal._hyg.#0 : @3) -> @57} -> + {t : @59} -> (h : (x : @3) -> @123) -> (xs : @5) -> @50 (@9 @20 @15) @79 +@143 := @132 @7 +@145 := (x : @3) -> @51 @6 +@146 := @10 @15 +@147 := @50 @146 +@151 := {t : @59} -> (h : @145) -> (xs : @5) -> @147 @79 +@152 := @143 @12 +@156 := (h : (x : @3) -> @52) -> (xs : @5) -> @147 @14 +@158 := @152 @55 @6 +@160 := @50 @11 @14 +@161 := List.nil.{0} +@162 := List.cons.{0} +@163 := @161 @57 +@164 := @162 @57 +@166 := @164 @11 @163 +@169 := Prod.{0, 0} @3 @57 +@170 := 0 +@174 := Prod.mk.{0, 0} @3 @57 @170 +@175 := @174 @11 +@176 := @161 @169 +@177 := @162 @169 +@179 := @177 @175 @176 +@180 := Bool.false +@181 := LexLeanTarget.TargetSyntax.Function +@182 := LexLeanTarget.TargetSyntax.Program.functions +@183 := @182 @0 +@184 := @161 @3 +@185 := @161 @59 +@186 := LexLeanTarget.TargetSyntax.Ty.unit +@187 := LexLeanTarget.TargetSyntax.Value.unit +@190 := LexLeanTarget.TargetSyntax.Expr.value @186 @187 +@195 := LexLeanTarget.TargetSyntax.Function.mk @184 @185 @186 @190 +@200 := List.getD.{0} @181 @183 @170 @195 +@204 := fun (__e_n : @3) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.RustStd.root @15 @170 +@205 := LexLeanPreservation.Rust.WTL +@213 := {p : @16} -> {c : @17} -> {A : @18} -> @205 @22 @6 @15 @163 @185 +@215 := LexLeanPreservation.Rust.wtl_nil @0 +@216 := @205 @0 +@222 := {c : @17} -> {A : @18} -> @216 @6 @15 @163 @185 +@223 := @215 @1 +@224 := @216 @1 +@228 := {A : @18} -> @224 @15 @163 @185 +@229 := @223 @2 +@230 := @224 @2 +@231 := @230 @163 +@232 := @231 @185 +@233 := @4 @57 +@234 := @4 @59 +@236 := @65 @20 @22 +@241 := @205 @71 @60 @62 @22 @6 +@242 := #8 +@245 := @205 @242 @71 @60 +@247 := @164 @62 @20 +@248 := @245 @247 +@249 := @162 @59 +@251 := @249 @64 @22 +@261 := {p : @16} -> + {c : @17} -> + {A : @18} -> + {v : @57} -> {t : @59} -> {vs : @233} -> {ts : @234} -> (h : @236) -> (hs : @241) -> @248 @251 +@263 := LexLeanPreservation.Rust.wtl_cons @0 +@281 := {c : @17} -> + {A : @18} -> + {v : @57} -> + {t : @59} -> + {vs : @233} -> + {ts : @234} -> (h : @92 @20 @22) -> (hs : @216 @60 @62 @22 @6) -> @216 @71 @60 @247 @251 +@282 := @263 @1 +@297 := {A : @18} -> + {v : @57} -> + {t : @59} -> + {vs : @233} -> {ts : @234} -> (h : @108 @20 @22) -> (hs : @224 @62 @22 @6) -> @224 @60 @247 @251 +@298 := @282 @2 +@300 := @50 @20 @22 +@302 := @230 @22 @6 +@310 := {v : @57} -> + {t : @59} -> {vs : @233} -> {ts : @234} -> (h : @300) -> (hs : @302) -> @230 @247 @251 +@311 := @298 @11 +@312 := @10 @64 +@314 := @50 @312 @22 +@315 := @10 @60 +@316 := @164 @315 +@324 := {t : @59} -> {vs : @233} -> {ts : @234} -> (h : @314) -> (hs : @302) -> @230 (@316 @20) @251 +@325 := @311 @14 +@326 := @10 @20 +@328 := @50 @326 @14 +@329 := @10 @62 +@330 := @164 @329 +@332 := @230 (@330 @20) +@333 := @249 @14 +@334 := @333 @22 +@339 := {vs : @233} -> {ts : @234} -> (h : @328) -> (hs : @302) -> @332 @334 +@340 := @325 @163 +@341 := @10 @22 +@343 := @50 @341 @14 +@344 := @231 @6 +@346 := @164 @312 @163 +@347 := @230 @346 +@351 := {ts : @234} -> (h : @343) -> (hs : @344) -> @347 @334 +@352 := @340 @185 +@354 := @164 @326 @163 +@355 := @230 @354 +@356 := @333 @185 +@359 := (h : @160) -> (hs : @232) -> @355 @356 +@360 := @352 @158 +@362 := @164 @341 @163 +@363 := @230 @362 +@365 := (hs : @232) -> @363 @356 +@366 := @360 @229 +@367 := @230 @166 +@368 := @367 @356 +@369 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.denote +@370 := @369 @6 +@371 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.__fits_0 +@372 := @371 @6 +@374 := Coverage.Main.mapped @6 +@375 := Bool +@376 := LexLeanTarget.TargetSyntax.Value.bool +@379 := @8 @375 @376 @374 +@381 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.root @6 +@382 := Ne.{1} +@383 := LexLeanPreservation.Obs +@384 := @382 @383 +@385 := LexLeanPreservation.Rel +@388 := @384 (@385 @6 @15) +@389 := LexLeanPreservation.Obs.stuck +@392 := (f : @375) -> (v : @57) -> @388 @389 +@394 := LexLeanPreservation.Rust.rel_ne_stuck @372 +@400 := (v : @57) -> @384 (@385 (@371 @22) @15) @389 +@401 := @394 @379 +@405 := @384 (@385 @372 @379) @389 +@406 := @4 @169 +@407 := LexLeanPreservation.Rust.FunSem +@408 := #9 +@414 := (n : @3) -> @407 @408 @242 @71 @15 @60 +@415 := Eq.{1} +@416 := Option.{0} +@417 := @416 @181 +@418 := @415 @417 +@425 := LexLeanRuntime.index (@4 @181) @181 (LexLeanRuntime.instIndexableList @181) +@429 := @418 (@425 (@182 @408) @60) +@430 := Option.some.{0} +@431 := @430 @181 +@432 := @431 @62 +@433 := @429 @432 +@434 := #10 +@438 := @205 @434 @408 @242 @62 +@439 := LexLeanTarget.TargetSyntax.Function.types +@440 := @439 @60 +@441 := @438 @440 +@442 := @416 @406 +@443 := @415 @442 +@444 := LexLeanTarget.TargetSemantics.bindAll +@445 := LexLeanTarget.TargetSyntax.Function.parameters +@450 := @443 (@444 (@445 @71) @60 @176) +@451 := @430 @406 +@452 := @451 @62 +@453 := @450 @452 +@454 := @416 @375 +@455 := @415 @454 +@456 := LexLeanPreservation.Rust.fnFallible +@457 := #11 +@460 := @455 (@456 @457 @408) +@461 := @430 @375 +@462 := @461 @62 +@463 := @460 @462 +@464 := LexLeanPreservation.RunConv +@465 := #13 +@469 := @464 @465 @434 @242 @62 +@471 := @384 @60 @389 +@472 := Exists.{1} +@473 := LexLeanPreservation.Rust.ROut +@474 := @472 @473 +@475 := And +@476 := LexLeanPreservation.Rust.RealizesFn +@480 := @475 (@476 @408 @242 @15) +@481 := LexLeanPreservation.Rust.RCI +@483 := @481 #15 +@484 := LexLeanPreservation.Rust.fnIdent +@485 := @484 @465 +@492 := (hne : @471) -> @474 (fun (ro : @473) => @480 (@483 @485 @457 @15)) +@507 := {p : @16} -> + {c : @17} -> + {A : @18} -> + {f : @3} -> + {fn : @181} -> + {args : @233} -> + {env : @406} -> + {F : @375} -> + {o : @383} -> + (hB : @414) -> + (hfn : @433) -> (hwt : @441) -> (hbind : @453) -> (hF : @463) -> (hA : @469) -> @492 +@509 := LexLeanPreservation.Rust.compose @0 +@510 := @407 @0 +@515 := (n : @3) -> @510 @242 @71 @15 @60 +@516 := @425 @183 +@519 := @418 (@516 @60) @432 +@523 := @216 @408 @242 @62 @440 +@524 := @464 @0 +@527 := @524 @434 @242 @62 +@541 := {c : @17} -> + {A : @18} -> + {f : @3} -> + {fn : @181} -> + {args : @233} -> + {env : @406} -> + {F : @375} -> + {o : @383} -> + (hB : @515) -> + (hfn : @519) -> (hwt : @523) -> (hbind : @453) -> (hF : @463) -> (hA : @527) -> @492 +@542 := @509 @1 +@543 := @510 @1 +@547 := (n : @3) -> @543 @71 @15 @60 +@550 := @224 @242 @62 @440 +@551 := @456 @1 +@554 := @455 (@551 @408) @462 +@555 := @481 @1 +@565 := (hbind : @453) -> + (hF : @554) -> (hA : @527) -> (hne : @471) -> @474 (fun (ro : @473) => @480 (@555 @485 @457 @15)) +@575 := {A : @18} -> + {f : @3} -> + {fn : @181} -> + {args : @233} -> + {env : @406} -> {F : @375} -> {o : @383} -> (hB : @547) -> (hfn : @519) -> (hwt : @550) -> @565 +@576 := @542 @2 +@578 := @543 @2 @15 +@580 := (n : @3) -> @578 @60 +@581 := @230 @62 +@582 := @581 @440 +@591 := {f : @3} -> + {fn : @181} -> + {args : @233} -> + {env : @406} -> {F : @375} -> {o : @383} -> (hB : @580) -> (hfn : @519) -> (hwt : @582) -> @565 +@592 := @576 @170 +@594 := (n : @3) -> @578 @170 +@595 := @516 @170 +@596 := @418 @595 +@597 := @596 @432 +@598 := @551 @170 +@599 := @455 @598 +@600 := @599 @462 +@601 := @524 @170 +@603 := @601 @242 @62 +@605 := @555 (@484 @170) +@613 := (hF : @600) -> (hA : @603) -> (hne : @471) -> @474 (fun (ro : @473) => @480 (@605 @457 @15)) +@622 := {fn : @181} -> + {args : @233} -> + {env : @406} -> + {F : @375} -> {o : @383} -> (hB : @594) -> (hfn : @597) -> (hwt : @582) -> (hbind : @453) -> @613 +@623 := @592 @200 +@625 := @596 (@431 @200) +@626 := @439 @200 +@627 := @581 @626 +@629 := @444 (@445 @200) +@641 := {args : @233} -> + {env : @406} -> + {F : @375} -> + {o : @383} -> + (hB : @594) -> (hfn : @625) -> (hwt : @627) -> (hbind : @443 (@629 @60 @176) @452) -> @613 +@642 := @623 @166 +@643 := @316 @163 +@645 := @230 @643 @626 +@648 := @164 (@10 @71) @163 +@652 := @443 (@629 @648 @176) @452 +@655 := @164 (@10 @408) @163 +@676 := {env : @406} -> + {F : @375} -> + {o : @383} -> + (hB : @594) -> + (hfn : @625) -> + (hwt : @645) -> + (hbind : @652) -> + (hF : @600) -> + (hA : @601 @655 @62) -> + (hne : @471) -> @474 (fun (ro : @473) => @480 (@605 (@164 (@10 #12) @163) @15)) +@677 := @642 @179 +@678 := @330 @163 +@680 := @230 @678 @626 +@688 := @443 (@629 @643 @176) (@451 (@177 (@174 @315) @176)) +@691 := @164 (@10 @242) @163 +@710 := {F : @375} -> + {o : @383} -> + (hB : @594) -> + (hfn : @625) -> + (hwt : @680) -> + (hbind : @688) -> + (hF : @600) -> + (hA : @601 @691 @62) -> + (hne : @471) -> @474 (fun (ro : @473) => @480 (@605 (@164 (@10 @457) @163) @15)) +@711 := @677 @180 +@712 := @347 @626 +@720 := @443 (@629 @678 @176) (@451 (@177 (@174 @329) @176)) +@722 := @599 (@461 @180) +@724 := @601 @648 @62 +@725 := @476 @180 +@744 := {o : @383} -> + (hB : @594) -> + (hfn : @625) -> + (hwt : @712) -> + (hbind : @720) -> + (hF : @722) -> + (hA : @724) -> + (hne : @471) -> @474 (fun (ro : @473) => @475 (@725 @242 @15) (@605 (@164 (@10 @434) @163) @15)) +@745 := @711 @370 +@746 := @355 @626 +@754 := @443 (@629 @346 @176) (@451 (@177 (@174 @312) @176)) +@755 := @601 @643 +@756 := @369 @60 +@757 := @755 @756 +@758 := @369 @71 +@776 := (hB : @594) -> + (hfn : @625) -> + (hwt : @746) -> + (hbind : @754) -> + (hF : @722) -> + (hA : @757) -> + (hne : @384 @758 @389) -> @474 (fun (ro : @473) => @475 (@725 (@369 @408) @15) (@605 @655 @15)) +@777 := @745 @204 +@778 := @363 @626 +@786 := @443 (@629 @354 @176) (@451 (@177 (@174 @326) @176)) +@787 := @601 @678 +@788 := @369 @62 +@806 := (hfn : @625) -> + (hwt : @778) -> + (hbind : @786) -> + (hF : @722) -> + (hA : @787 @788) -> + (hne : @384 @756 @389) -> @474 (fun (ro : @473) => @475 (@725 (@369 @242) @15) (@605 @691 @15)) +@807 := Eq.refl.{1} +@810 := @777 (@807 @417 @595) +@811 := @367 @626 +@819 := @443 (@629 @362 @176) (@451 (@177 (@174 @341) @176)) +@820 := @601 @346 +@821 := @369 @64 +@837 := (hwt : @811) -> + (hbind : @819) -> + (hF : @722) -> + (hA : @820 @821) -> + (hne : @384 @788 @389) -> @474 (fun (ro : @473) => @475 (@725 @758 @15) (@605 @648 @15)) +@838 := @810 @366 +@840 := @629 @166 @176 +@843 := @443 @840 (@451 @179) +@844 := @601 @354 +@845 := @369 @20 +@860 := (hbind : @843) -> + (hF : @722) -> + (hA : @844 @845) -> + (hne : @384 @821 @389) -> @474 (fun (ro : @473) => @475 (@725 @756 @15) (@605 @643 @15)) +@863 := @838 (@807 @442 @840) +@864 := @601 @362 +@865 := @369 @22 +@879 := (hF : @722) -> + (hA : @864 @865) -> + (hne : @384 @845 @389) -> @474 (fun (ro : @473) => @475 (@725 @788 @15) (@605 @678 @15)) +@882 := @863 (@807 @454 @598) +@896 := (hA : @601 @166 @370) -> + (hne : @384 @865 @389) -> @474 (fun (ro : @473) => @475 (@725 @821 @15) (@605 @346 @15)) +@897 := @882 @381 +@908 := (hne : @384 @370 @389) -> @474 (fun (ro : @473) => @475 (@725 @845 @15) (@605 @354 @15)) +@909 := @897 @401 +@915 := @475 (@725 @865 @15) (@605 @362 @15) +@917 := @474 (fun (ro : @473) => @915) +@919 := @474 (fun (__e_ro : @473) => @915) +@923 := LexLeanPreservation.Rust.RepresentableL (@164 @146 @163) +@924 := (__e_hrep : @923) -> @919 +@925 := fun (__e_hrep : @923) => @909 +@926 := (values : @5) -> @924 +@927 := fun (values : @5) => @925 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R19/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R19/RustStd.lean new file mode 100644 index 000000000..2f5fa243f --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R19/RustStd.lean @@ -0,0 +1,59 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0], types := [(.list .nat)], result := (.list .bool), + body := (.call 1 [(.closure 2 []), (.var 0)]) }, + { parameters := [0, 1], types := [(.fn [.nat] .bool), (.list .nat)], result := (.list .bool), + body := (.«match» (.list .bool) (.var 1) [(.arm .nil [] (.build .nil (.list .bool) [])), (.arm .cons [2, 3] (.build .cons (.list .bool) [(.apply (.var 0) [(.var 2)]), (.call 1 [(.var 0), (.var 3)])]))]) }, + { parameters := [0], types := [.nat], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .zero [] (.build .true .bool [])), (.arm .succ [1] (.call 3 [(.var 1)]))]) }, + { parameters := [0], types := [.nat], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .zero [] (.build .false .bool [])), (.arm .succ [1] (.call 2 [(.var 1)]))]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.enum (.fn 0) [{ number := 2, fields := [] }]), + (.apply 0 [.nat] .bool false [{ function := 2, captures := [], functionFallible := false }]), + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }] (.list .bool) (.mk [] (.call (.function 1) [(.construct (.closure 0 2) []), (.move (.generated .binding 0))] false))), + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := (.list .nat) }] (.list .bool) (.mk [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 1)))] (.matchOn (.uncons (.generated .holder 1)) [(.mk .none (.mk [] (.construct (.nil .bool) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.construct .cons [(.block (.mk [(.mk (.bind (.generated .callee 2)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 2) [(.copy (.generated .binding 2))] false))), (.call (.function 1) [(.move (.generated .binding 0)), (.move (.generated .binding 3))] false)])))]))), + (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .holder 3)) none (.copy (.generated .binding 0)))] (.cond (.isZero (.generated .holder 3)) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .binding 1)) none (.predecessor (.generated .holder 3)))] (.call (.function 3) [(.copy (.generated .binding 1))] false))))), + (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .holder 4)) none (.copy (.generated .binding 0)))] (.cond (.isZero (.generated .holder 4)) (.mk [] (.lit (.bool false))) (.mk [(.mk (.bind (.generated .binding 1)) none (.predecessor (.generated .holder 4)))] (.call (.function 2) [(.copy (.generated .binding 1))] false)))))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [(([.nat], .bool), false)] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 1) [(.construct (.closure 0 2) []), (.move (.generated .binding 0))] false), [(0, (.list .nat), (some 0))], rfl, rfl, + (Corr.callOps (ts := [(.fn [.nat] .bool), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := false) (ff := false) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 1)))], (.matchOn (.uncons (.generated .holder 1)) [(.mk .none (.mk [] (.construct (.nil .bool) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.construct .cons [(.block (.mk [(.mk (.bind (.generated .callee 2)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 2) [(.copy (.generated .binding 2))] false))), (.call (.function 1) [(.move (.generated .binding 0)), (.move (.generated .binding 3))] false)])))]), [(1, (.list .nat), (some 1)), (0, (.fn [.nat] .bool), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.list .nat), (some 1)), (0, (.fn [.nat] .bool), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.nil .bool) [])) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, (.list .nat), (some 1)), (0, (.fn [.nat] .bool), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct .cons [(.block (.mk [(.mk (.bind (.generated .callee 2)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 2) [(.copy (.generated .binding 2))] false))), (.call (.function 1) [(.move (.generated .binding 0)), (.move (.generated .binding 3))] false)])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [.bool, (.list .bool)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 2)) (some (.fn 0)) (.clone (.generated .binding 0)))]) (tail := (.apply (.generated .callee 2) [(.copy (.generated .binding 2))] false)) (Corr.apply (ps := [.nat]) (af := false) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.fn [.nat] .bool), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 3)) none (.copy (.generated .binding 0)))], (.cond (.isZero (.generated .holder 3)) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .binding 1)) none (.predecessor (.generated .holder 3)))] (.call (.function 3) [(.copy (.generated .binding 1))] false))), [(0, .nat, (some 0))], rfl, rfl, + (Corr.matchNat (sl := (some 1)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := []) (tb := (.call (.function 3) [(.copy (.generated .binding 1))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)))⟩⟩ + +theorem fun3 : FunOK program krate flags 3 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 4)) none (.copy (.generated .binding 0)))], (.cond (.isZero (.generated .holder 4)) (.mk [] (.lit (.bool false))) (.mk [(.mk (.bind (.generated .binding 1)) none (.predecessor (.generated .holder 4)))] (.call (.function 2) [(.copy (.generated .binding 1))] false))), [(0, .nat, (some 0))], rfl, rfl, + (Corr.matchNat (sl := (some 1)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.lit (.bool false))) (lb := []) (tb := (.call (.function 2) [(.copy (.generated .binding 1))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | 3 => exact fun3 + | _ + 4 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R2.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R2.lean new file mode 100644 index 000000000..ce01e3fb5 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R2.lean @@ -0,0 +1,110 @@ +import LexLeanPreservation.Core +import LexLeanPreservation.Values +import LexLeanPreservation.Primitives +import LexLeanPreservation.Fixed +import LexLeanPreservation.Keys +import LexLeanPreservation.Templates +import LexLeanPreservation.Validate +import Coverage.Boundary +import Coverage.Colls +import Coverage.Main +import Coverage.Prims +import Coverage.RecRoots +import Coverage.Recur +import Coverage.Syntax +import Coverage.Types +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +set_option linter.unusedVariables false +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2 + +def __prog : _root_.LexLeanTarget.TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1], types := [(.list (.pair .nat .nat)), .nat], result := .nat, + body := (.call 1 [(.closure 2 [(.var 1)]), (.value .nat (.nat 0)), (.var 0)]) }, + { parameters := [0, 1, 2], types := [(.fn [.nat, .nat, .nat] .nat), .nat, (.list (.pair .nat .nat))], result := .nat, + body := (.«match» .nat (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 1 [(.var 0), (.apply (.var 0) [(.var 1), (.first (.var 3)), (.second (.var 3))]), (.var 4)]))]) }, + { parameters := [0, 1, 2, 3], types := [.nat, .nat, .nat, .nat], result := .nat, + body := (.prim .natAdd [(.prim .natAdd [(.var 1), (.var 2)]), (.prim .natAdd [(.var 3), (.var 0)])]) }, + { parameters := [0], types := [(.list (.pair .nat .nat))], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 4 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 3 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, + { parameters := [0], types := [.nat], result := .bool, + body := (.build .true .bool []) }, + { parameters := [0, 1], types := [(.list (.pair .nat .nat)), .nat], result := (.option .nat), + body := (.cond (.call 3 [(.var 0)]) (.build .some (.option .nat) [(.call 0 [(.var 0), (.var 1)])]) (.build .none (.option .nat) [])) }] } + +def __fits_2 (bonus : Nat) (acc : Nat) (key : Nat) (value : Nat) : Bool := + ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (acc + key) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (value + bonus) 18446744073709551616)) && Bool.true)) && (Nat.blt ((acc + key) + (value + bonus)) 18446744073709551616)) + +theorem __rel_2 (bonus : Nat) (acc : Nat) (key : Nat) (value : Nat) : _root_.LexLeanPreservation.FunRel __prog 2 [(_root_.LexLeanTarget.TargetSyntax.Value.nat bonus), (_root_.LexLeanTarget.TargetSyntax.Value.nat acc), (_root_.LexLeanTarget.TargetSyntax.Value.nat key), (_root_.LexLeanTarget.TargetSyntax.Value.nat value)] (_root_.LexLeanPreservation.Rel (__fits_2 bonus acc key value) (_root_.LexLeanTarget.TargetSyntax.Value.nat (((acc + key) + (value + bonus))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd acc key)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd value bonus)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (acc + key) (value + bonus))) + +def __fits_0 (m : (List (Prod Nat Nat))) (bonus : Nat) : Bool := + (((Bool.true && Bool.true) && (Bool.true && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun __st __e => (fun (__p0 : Nat) (__p1 : Nat) (__p2 : Nat) => __fits_2 (bonus) __p0 __p1 __p2) __st __e.1 __e.2) (fun __st __e => ((fun (acc : Nat) (key : Nat) (value : Nat) => ((acc + key) + (value + bonus)))) __st __e.1 __e.2) ((0 : Nat)) (m))) + +theorem __rel_0 (m : (List (Prod Nat Nat))) (bonus : Nat) : _root_.LexLeanPreservation.FunRel __prog 0 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) m), (_root_.LexLeanTarget.TargetSyntax.Value.nat bonus)] (_root_.LexLeanPreservation.Rel (__fits_0 m bonus) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Coverage.Colls.mapFolding m bonus))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_mapFold (ek := _root_.LexLeanTarget.TargetSyntax.Value.nat) (ev := _root_.LexLeanTarget.TargetSyntax.Value.nat) (es := _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) ((fun (acc : Nat) (key : Nat) (value : Nat) => ((acc + key) + (value + bonus)))) (fun (__p0 : Nat) (__p1 : Nat) (__p2 : Nat) => __fits_2 (bonus) __p0 __p1 __p2) 2 [(_root_.LexLeanTarget.TargetSyntax.Value.nat bonus)] (fun (__p0 : Nat) (__p1 : Nat) (__p2 : Nat) => __rel_2 (bonus) __p0 __p1 __p2) (p := __prog) (fi := 1) (tk := .nat) (tw := .nat) (ts := .nat) rfl ((0 : Nat)) (m))) + +def denote (m : (List (Prod Nat Nat))) (bonus : Nat) : _root_.LexLeanPreservation.Obs := + _root_.cond (__fits_0 m bonus) (_root_.LexLeanPreservation.Obs.value ((_root_.LexLeanTarget.TargetSyntax.Value.nat (Coverage.Colls.mapFolding m bonus)))) _root_.LexLeanPreservation.Obs.overflow + +theorem root (m : (List (Prod Nat Nat))) (bonus : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) m), (_root_.LexLeanTarget.TargetSyntax.Value.nat bonus)] (_root_.LexLeanPreservation.Rel (__fits_0 m bonus) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Coverage.Colls.mapFolding m bonus))) := + _root_.LexLeanPreservation.run_of_funRel (__rel_0 m bonus) + +def __valid_4 : Nat -> Bool := + fun _ => Bool.true + +def __inv_4 : Nat -> Prop := + fun _ => _root_.True + +theorem __viff_4 : ∀ (__v : Nat), __valid_4 __v = Bool.true ↔ __inv_4 __v := + fun __v => _root_.LexLeanPreservation.validTrue_inv __v + +theorem __vrel_4 : ∀ (__v : Nat), _root_.LexLeanPreservation.FunRel __prog 4 [(_root_.LexLeanTarget.TargetSyntax.Value.nat __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_4 __v))) := + _root_.LexLeanPreservation.tpl_validTrue _root_.LexLeanTarget.TargetSyntax.Value.nat rfl + +def __valid_3 : (List (Prod Nat Nat)) -> Bool := + _root_.LexLeanPreservation.ascMap (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) __valid_4 + +def __inv_3 : (List (Prod Nat Nat)) -> Prop := + _root_.LexLeanPreservation.InvMap (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) __inv_4 + +theorem __viff_3 : ∀ (__v : (List (Prod Nat Nat))), __valid_3 __v = Bool.true ↔ __inv_3 __v := + _root_.LexLeanPreservation.ascMap_inv (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) __valid_4 __inv_4 __viff_4 + +theorem __vrel_3 : ∀ (__v : (List (Prod Nat Nat))), _root_.LexLeanPreservation.FunRel __prog 3 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_3 __v))) := + _root_.LexLeanPreservation.tpl_validMap (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) __valid_4 (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) __vrel_4 rfl + +def entryFits (m : (List (Prod Nat Nat))) (bonus : Nat) : Bool := + (if __valid_3 m then __fits_0 m bonus else Bool.true) + +def entryValue (m : (List (Prod Nat Nat))) (bonus : Nat) : _root_.LexLeanTarget.TargetSyntax.Value := + (if __valid_3 m then (_root_.LexLeanTarget.TargetSyntax.Value.some (_root_.LexLeanTarget.TargetSyntax.Value.nat (Coverage.Colls.mapFolding m bonus))) else _root_.LexLeanTarget.TargetSyntax.Value.none) + +/-- The entry's observation. -/ +def denoteEntry (m : (List (Prod Nat Nat))) (bonus : Nat) : _root_.LexLeanPreservation.Obs := + _root_.cond (_root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.entryFits m bonus) (_root_.LexLeanPreservation.Obs.value (_root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.entryValue m bonus)) _root_.LexLeanPreservation.Obs.overflow + +/-- §17.12's invariants of the validated parameters. -/ +def accepts (m : (List (Prod Nat Nat))) (bonus : Nat) : Prop := + (__inv_3 m ∧ _root_.True) + +theorem entry (m : (List (Prod Nat Nat))) (bonus : Nat) : _root_.LexLeanPreservation.RunConv __prog 5 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) m), (_root_.LexLeanTarget.TargetSyntax.Value.nat bonus)] (_root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.denoteEntry m bonus) := + _root_.LexLeanPreservation.run_of_funRel (_root_.LexLeanPreservation.FunRel.fits_eq (_root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun __c => if __c then __fits_0 m bonus else Bool.true) (fun __c => if __c then (_root_.LexLeanTarget.TargetSyntax.Value.some (_root_.LexLeanTarget.TargetSyntax.Value.nat (Coverage.Colls.mapFolding m bonus))) else _root_.LexLeanTarget.TargetSyntax.Value.none) (__valid_3 m) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_3 m)) (fun _ => _root_.LexLeanPreservation.Conv.fits_eq (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_0 m bonus)) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some) (by simp)) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (by simp [_root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.entryFits])) + +theorem entry_accepts (m : (List (Prod Nat Nat))) (bonus : Nat) (__h : _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.accepts m bonus) : _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.denoteEntry m bonus = _root_.LexLeanPreservation.someObs (_root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.denote m bonus) := by + unfold _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.accepts at __h + unfold _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.denoteEntry _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.entryFits _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.entryValue _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.denote + simp only [_root_.if_true, (__viff_3 m).mpr __h.1] + cases __fits_0 m bonus <;> rfl + +theorem entry_refuses (m : (List (Prod Nat Nat))) (bonus : Nat) (__h : ¬ _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.accepts m bonus) : _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.denoteEntry m bonus = _root_.LexLeanPreservation.Obs.value _root_.LexLeanTarget.TargetSyntax.Value.none := by + unfold _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.accepts at __h + unfold _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.denoteEntry _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.entryFits _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.entryValue + cases __c0 : __valid_3 m + · simp + · exact _root_.absurd ⟨(__viff_3 m).mp __c0, _root_.trivial⟩ __h + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2 diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R2/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R2/Compose/RustStd.lex.tex new file mode 100644 index 000000000..281b92c11 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R2/Compose/RustStd.lex.tex @@ -0,0 +1,658 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.Compose.RustStd.root : @1352 := @1353 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.RustStd.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.RustStd.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.RustStd.flags +@3 := Nat +@4 := Prod.{0, 0} +@5 := @4 @3 +@6 := @5 @3 +@7 := List.{0} +@8 := @7 @6 +@9 := #2 +@10 := LexLeanTarget.TargetSyntax.Value.nat +@11 := LexLeanPreservation.encPair +@12 := @11 @3 +@13 := @12 @3 +@14 := @13 @10 +@15 := @14 @10 +@16 := LexLeanPreservation.encList +@17 := @16 @6 +@18 := @17 @15 +@19 := @18 @9 +@20 := LexLeanTarget.TargetSyntax.Ty.nat +@21 := LexLeanTarget.TargetSyntax.Ty.pair +@22 := @21 @20 +@23 := @22 @20 +@24 := LexLeanTarget.TargetSyntax.Ty.list +@25 := @24 @23 +@26 := #0 +@27 := LexLeanTarget.TargetSyntax.Program +@28 := LexLeanPreservation.Rust.RCrate +@29 := LexLeanPreservation.Rust.Flags +@30 := LexLeanPreservation.Rust.WT +@31 := #3 +@33 := @30 @31 @9 +@34 := #1 +@35 := @33 @34 +@36 := @10 @26 +@42 := {p : @27} -> {c : @28} -> {A : @29} -> (n : @3) -> @35 @36 @20 +@44 := LexLeanPreservation.Rust.wt_nat @0 +@45 := @30 @0 +@52 := {c : @28} -> {A : @29} -> (n : @3) -> @45 @9 @34 @36 @20 +@53 := @44 @1 +@54 := @45 @1 +@59 := {A : @29} -> (n : @3) -> @54 @34 @36 @20 +@60 := @53 @2 +@61 := @54 @2 +@62 := @61 @36 +@63 := @62 @20 +@64 := (n : @3) -> @63 +@66 := fun (__x : @3) => @60 @26 +@67 := Sort 1 +@68 := LexLeanTarget.TargetSyntax.Value +@69 := (a._@._internal._hyg.#0 : @34) -> @68 +@70 := LexLeanTarget.TargetSyntax.Ty +@71 := #5 +@72 := #9 +@73 := @30 @72 +@74 := #8 +@75 := @73 @74 +@76 := #7 +@77 := @75 @76 +@78 := #4 +@79 := @78 @26 +@82 := (x : @71) -> @77 @79 @9 +@83 := #10 +@89 := (x : @71) -> @30 @83 @72 @74 @79 @9 +@90 := @4 @76 +@91 := #6 +@92 := @90 @91 +@93 := #11 +@96 := @30 @93 @83 @72 +@101 := @11 @74 @76 @91 @71 @26 +@102 := @96 @101 +@104 := @21 @78 @31 +@117 := {p : @27} -> + {c : @28} -> + {A : @29} -> + {α : @67} -> + {β : @67} -> + {ea : @69} -> + {eb : @69} -> {s : @70} -> {t : @70} -> (ha : @82) -> (hb : @89) -> (x : @92) -> @102 @104 +@119 := LexLeanPreservation.Rust.wt_encPair @0 +@144 := {c : @28} -> + {A : @29} -> + {α : @67} -> + {β : @67} -> + {ea : @69} -> + {eb : @69} -> + {s : @70} -> + {t : @70} -> + (ha : (x : @71) -> @45 @74 @76 @79 @9) -> + (hb : (x : @71) -> @45 @72 @74 @79 @9) -> (x : @92) -> @45 @83 @72 @101 @104 +@145 := @119 @1 +@166 := {A : @29} -> + {α : @67} -> + {β : @67} -> + {ea : @69} -> + {eb : @69} -> + {s : @70} -> + {t : @70} -> + (ha : (x : @71) -> @54 @76 @79 @9) -> + (hb : (x : @71) -> @54 @74 @79 @9) -> (x : @92) -> @54 @72 @101 @104 +@167 := @145 @2 +@169 := @61 @79 @9 +@170 := (x : @71) -> @169 +@181 := {α : @67} -> + {β : @67} -> + {ea : @69} -> + {eb : @69} -> {s : @70} -> {t : @70} -> (ha : @170) -> (hb : @170) -> (x : @92) -> @61 @101 @104 +@182 := @167 @3 +@183 := (a._@._internal._hyg.#0 : @3) -> @68 +@184 := (x : @3) -> @169 +@199 := {β : @67} -> + {ea : @183} -> + {eb : @69} -> + {s : @70} -> + {t : @70} -> (ha : @184) -> (hb : @170) -> (x : @5 @91) -> @61 (@12 @76 @91 @71 @26) @104 +@200 := @182 @3 +@212 := {ea : @183} -> + {eb : @183} -> + {s : @70} -> {t : @70} -> (ha : @184) -> (hb : @184) -> (x : @6) -> @61 (@13 @91 @71 @26) @104 +@213 := @200 @10 +@215 := (x : @3) -> @62 @9 +@225 := {eb : @183} -> + {s : @70} -> {t : @70} -> (ha : @215) -> (hb : @184) -> (x : @6) -> @61 (@14 @71 @26) @104 +@226 := @213 @10 +@228 := @61 (@15 @26) +@234 := {s : @70} -> {t : @70} -> (ha : @215) -> (hb : @215) -> (x : @6) -> @228 @104 +@235 := @226 @20 +@236 := (x : @3) -> @63 +@242 := {t : @70} -> (ha : @236) -> (hb : @215) -> (x : @6) -> @228 (@22 @31) +@243 := @235 @20 +@245 := (x : @6) -> @228 @23 +@247 := (ha : @236) -> (hb : @236) -> @245 +@251 := fun (__x : @6) => @243 @66 @66 @26 +@252 := (a._@._internal._hyg.#0 : @26) -> @68 +@255 := @30 @91 @71 @78 +@256 := @9 @26 +@259 := (x : @9) -> @255 @256 @34 +@260 := @7 @31 +@263 := @30 @76 @91 @71 +@266 := @16 @78 @31 @26 +@267 := @263 @266 +@268 := @24 @9 +@277 := {p : @27} -> + {c : @28} -> + {A : @29} -> {α : @67} -> {e : @252} -> {t : @70} -> (h : @259) -> (xs : @260) -> @267 @268 +@279 := LexLeanPreservation.Rust.wt_encList @0 +@281 := @45 @71 @78 +@295 := {c : @28} -> + {A : @29} -> + {α : @67} -> + {e : @252} -> {t : @70} -> (h : (x : @9) -> @281 @256 @34) -> (xs : @260) -> @45 @91 @71 @266 @268 +@296 := @279 @1 +@297 := @54 @78 +@309 := {A : @29} -> + {α : @67} -> + {e : @252} -> {t : @70} -> (h : (x : @9) -> @297 @256 @34) -> (xs : @260) -> @54 @71 @266 @268 +@310 := @296 @2 +@312 := @61 @256 @34 +@320 := {α : @67} -> + {e : @252} -> {t : @70} -> (h : (x : @9) -> @312) -> (xs : @260) -> @61 @266 @268 +@321 := @310 @6 +@331 := {e : (a._@._internal._hyg.#0 : @6) -> @68} -> + {t : @70} -> (h : (x : @6) -> @312) -> (xs : @8) -> @61 (@17 @31 @26) @268 +@332 := @321 @15 +@334 := (x : @6) -> @228 @34 +@336 := @61 (@18 @26) +@340 := {t : @70} -> (h : @334) -> (xs : @8) -> @336 @268 +@341 := @332 @23 +@344 := (h : @245) -> (xs : @8) -> @336 @25 +@346 := @341 @251 @9 +@348 := @61 @19 @25 +@349 := @10 @34 +@350 := @60 @34 +@352 := @61 @349 @20 +@353 := List.nil.{0} +@354 := List.cons.{0} +@355 := @353 @68 +@356 := @354 @68 +@358 := @356 @349 @355 +@360 := @356 @19 @358 +@361 := @5 @68 +@362 := 1 +@365 := Prod.mk.{0, 0} @3 @68 +@366 := @365 @362 +@367 := @366 @349 +@369 := @365 0 +@370 := @369 @19 +@371 := @353 @361 +@372 := @354 @361 +@374 := @372 @370 @371 +@376 := @372 @367 @374 +@377 := Bool.true +@378 := LexLeanTarget.TargetSyntax.Function +@379 := LexLeanTarget.TargetSyntax.Program.functions +@380 := @379 @0 +@381 := 5 +@382 := @353 @3 +@383 := @353 @70 +@384 := LexLeanTarget.TargetSyntax.Ty.unit +@385 := LexLeanTarget.TargetSyntax.Value.unit +@388 := LexLeanTarget.TargetSyntax.Expr.value @384 @385 +@393 := LexLeanTarget.TargetSyntax.Function.mk @382 @383 @384 @388 +@398 := List.getD.{0} @378 @380 @381 @393 +@402 := fun (__e_n : @3) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.RustStd.root @26 @381 +@403 := LexLeanPreservation.Rust.WTL +@411 := {p : @27} -> {c : @28} -> {A : @29} -> @403 @9 @34 @26 @355 @383 +@413 := LexLeanPreservation.Rust.wtl_nil @0 +@414 := @403 @0 +@420 := {c : @28} -> {A : @29} -> @414 @34 @26 @355 @383 +@421 := @413 @1 +@422 := @414 @1 +@426 := {A : @29} -> @422 @26 @355 @383 +@427 := @421 @2 +@428 := @422 @2 +@429 := @428 @355 +@430 := @429 @383 +@431 := @7 @68 +@432 := @7 @70 +@434 := @255 @31 @9 +@439 := @403 @76 @91 @71 @9 @34 +@442 := @403 @74 @76 @91 +@444 := @356 @71 @31 +@445 := @442 @444 +@446 := @354 @70 +@448 := @446 @78 @9 +@458 := {p : @27} -> + {c : @28} -> + {A : @29} -> + {v : @68} -> {t : @70} -> {vs : @431} -> {ts : @432} -> (h : @434) -> (hs : @439) -> @445 @448 +@460 := LexLeanPreservation.Rust.wtl_cons @0 +@478 := {c : @28} -> + {A : @29} -> + {v : @68} -> + {t : @70} -> + {vs : @431} -> + {ts : @432} -> (h : @281 @31 @9) -> (hs : @414 @91 @71 @9 @34) -> @414 @76 @91 @444 @448 +@479 := @460 @1 +@494 := {A : @29} -> + {v : @68} -> + {t : @70} -> + {vs : @431} -> {ts : @432} -> (h : @297 @31 @9) -> (hs : @422 @71 @9 @34) -> @422 @91 @444 @448 +@495 := @479 @2 +@497 := @61 @31 @9 +@499 := @428 @9 @34 +@507 := {v : @68} -> + {t : @70} -> {vs : @431} -> {ts : @432} -> (h : @497) -> (hs : @499) -> @428 @444 @448 +@508 := @495 @349 +@509 := @10 @78 +@511 := @61 @509 @9 +@512 := @10 @91 +@513 := @356 @512 +@521 := {t : @70} -> {vs : @431} -> {ts : @432} -> (h : @511) -> (hs : @499) -> @428 (@513 @31) @448 +@522 := @508 @20 +@523 := @10 @31 +@525 := @61 @523 @20 +@526 := @10 @71 +@527 := @356 @526 +@529 := @428 (@527 @31) +@530 := @446 @20 +@531 := @530 @9 +@536 := {vs : @431} -> {ts : @432} -> (h : @525) -> (hs : @499) -> @529 @531 +@537 := @522 @355 +@538 := @10 @9 +@540 := @61 @538 @20 +@541 := @429 @34 +@543 := @356 @509 @355 +@548 := {ts : @432} -> (h : @540) -> (hs : @541) -> @428 @543 @531 +@549 := @537 @383 +@551 := @356 @523 @355 +@552 := @428 @551 +@553 := @530 @383 +@556 := (h : @352) -> (hs : @430) -> @552 @553 +@557 := @549 @350 +@559 := @356 @538 @355 +@561 := @428 @559 @553 +@562 := (hs : @430) -> @561 +@563 := @557 @427 +@565 := @428 @358 @553 +@566 := @495 @19 +@567 := @18 @71 +@569 := @61 @567 @9 +@570 := @18 @76 +@571 := @356 @570 +@579 := {t : @70} -> {vs : @431} -> {ts : @432} -> (h : @569) -> (hs : @499) -> @428 (@571 @31) @448 +@580 := @566 @25 +@581 := @18 @78 +@583 := @61 @581 @25 +@584 := @18 @91 +@585 := @356 @584 +@587 := @428 (@585 @31) +@588 := @446 @25 +@589 := @588 @9 +@594 := {vs : @431} -> {ts : @432} -> (h : @583) -> (hs : @499) -> @587 @589 +@595 := @580 @358 +@596 := @18 @31 +@598 := @61 @596 @25 +@599 := @552 @34 +@601 := @356 @567 @543 +@602 := @428 @601 +@606 := {ts : @432} -> (h : @598) -> (hs : @599) -> @602 @589 +@607 := @595 @553 +@609 := @356 @581 @551 +@610 := @428 @609 +@611 := @588 @553 +@614 := (h : @348) -> (hs : @561) -> @610 @611 +@615 := @607 @346 +@617 := @356 @596 @559 +@618 := @428 @617 +@620 := (hs : @565) -> @618 @611 +@621 := @615 @563 +@622 := @428 @360 +@623 := @622 @611 +@624 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.denoteEntry +@626 := @624 @9 @34 +@627 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.entryFits +@629 := @627 @9 @34 +@632 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.entryValue @9 @34 +@635 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.entry @9 @34 +@636 := Bool +@637 := Ne.{1} +@638 := LexLeanPreservation.Obs +@639 := @637 @638 +@640 := LexLeanPreservation.Rel +@643 := @639 (@640 @34 @26) +@644 := LexLeanPreservation.Obs.stuck +@647 := (f : @636) -> (v : @68) -> @643 @644 +@649 := LexLeanPreservation.Rust.rel_ne_stuck @629 +@656 := (v : @68) -> @639 (@640 (@627 @31 @9) @26) @644 +@657 := @649 @632 +@661 := @639 (@640 @629 @632) @644 +@662 := @7 @361 +@663 := LexLeanPreservation.Rust.FunSem +@669 := (n : @3) -> @663 @72 @74 @76 @26 @91 +@670 := Eq.{1} +@671 := Option.{0} +@672 := @671 @378 +@673 := @670 @672 +@680 := LexLeanRuntime.index (@7 @378) @378 (LexLeanRuntime.instIndexableList @378) +@684 := @673 (@680 (@379 @72) @91) +@685 := Option.some.{0} +@686 := @685 @378 +@687 := @686 @71 +@688 := @684 @687 +@692 := @403 @83 @72 @74 @71 +@693 := LexLeanTarget.TargetSyntax.Function.types +@694 := @693 @91 +@695 := @692 @694 +@696 := @671 @662 +@697 := @670 @696 +@698 := LexLeanTarget.TargetSemantics.bindAll +@699 := LexLeanTarget.TargetSyntax.Function.parameters +@704 := @697 (@698 (@699 @76) @91 @371) +@705 := @685 @662 +@706 := @705 @71 +@707 := @704 @706 +@708 := @671 @636 +@709 := @670 @708 +@710 := LexLeanPreservation.Rust.fnFallible +@713 := @709 (@710 @93 @72) +@714 := @685 @636 +@715 := @714 @71 +@716 := @713 @715 +@717 := LexLeanPreservation.RunConv +@718 := #13 +@722 := @717 @718 @83 @74 @71 +@724 := @639 @91 @644 +@725 := Exists.{1} +@726 := LexLeanPreservation.Rust.ROut +@727 := @725 @726 +@728 := And +@729 := LexLeanPreservation.Rust.RealizesFn +@733 := @728 (@729 @72 @74 @26) +@734 := LexLeanPreservation.Rust.RCI +@736 := @734 #15 +@737 := LexLeanPreservation.Rust.fnIdent +@738 := @737 @718 +@745 := (hne : @724) -> @727 (fun (ro : @726) => @733 (@736 @738 @93 @26)) +@760 := {p : @27} -> + {c : @28} -> + {A : @29} -> + {f : @3} -> + {fn : @378} -> + {args : @431} -> + {env : @662} -> + {F : @636} -> + {o : @638} -> + (hB : @669) -> + (hfn : @688) -> (hwt : @695) -> (hbind : @707) -> (hF : @716) -> (hA : @722) -> @745 +@762 := LexLeanPreservation.Rust.compose @0 +@763 := @663 @0 +@768 := (n : @3) -> @763 @74 @76 @26 @91 +@769 := @680 @380 +@772 := @673 (@769 @91) @687 +@776 := @414 @72 @74 @71 @694 +@777 := @717 @0 +@780 := @777 @83 @74 @71 +@794 := {c : @28} -> + {A : @29} -> + {f : @3} -> + {fn : @378} -> + {args : @431} -> + {env : @662} -> + {F : @636} -> + {o : @638} -> + (hB : @768) -> + (hfn : @772) -> (hwt : @776) -> (hbind : @707) -> (hF : @716) -> (hA : @780) -> @745 +@795 := @762 @1 +@796 := @763 @1 +@800 := (n : @3) -> @796 @76 @26 @91 +@803 := @422 @74 @71 @694 +@804 := @710 @1 +@807 := @709 (@804 @72) @715 +@808 := @734 @1 +@818 := (hbind : @707) -> + (hF : @807) -> (hA : @780) -> (hne : @724) -> @727 (fun (ro : @726) => @733 (@808 @738 @93 @26)) +@828 := {A : @29} -> + {f : @3} -> + {fn : @378} -> + {args : @431} -> + {env : @662} -> {F : @636} -> {o : @638} -> (hB : @800) -> (hfn : @772) -> (hwt : @803) -> @818 +@829 := @795 @2 +@831 := @796 @2 @26 +@833 := (n : @3) -> @831 @91 +@834 := @428 @71 +@835 := @834 @694 +@844 := {f : @3} -> + {fn : @378} -> + {args : @431} -> + {env : @662} -> {F : @636} -> {o : @638} -> (hB : @833) -> (hfn : @772) -> (hwt : @835) -> @818 +@845 := @829 @381 +@847 := (n : @3) -> @831 @381 +@848 := @769 @381 +@849 := @673 @848 +@850 := @849 @687 +@851 := @804 @381 +@852 := @709 @851 +@853 := @852 @715 +@854 := @777 @381 +@856 := @854 @74 @71 +@858 := @808 (@737 @381) +@866 := (hF : @853) -> (hA : @856) -> (hne : @724) -> @727 (fun (ro : @726) => @733 (@858 @93 @26)) +@875 := {fn : @378} -> + {args : @431} -> + {env : @662} -> + {F : @636} -> {o : @638} -> (hB : @847) -> (hfn : @850) -> (hwt : @835) -> (hbind : @707) -> @866 +@876 := @845 @398 +@878 := @849 (@686 @398) +@879 := @693 @398 +@880 := @834 @879 +@882 := @698 (@699 @398) +@894 := {args : @431} -> + {env : @662} -> + {F : @636} -> + {o : @638} -> + (hB : @847) -> (hfn : @878) -> (hwt : @880) -> (hbind : @697 (@882 @91 @371) @706) -> @866 +@895 := @876 @360 +@897 := @571 (@513 @355) +@899 := @428 @897 @879 +@905 := @356 (@18 @74) (@356 (@10 @76) @355) +@909 := @697 (@882 @905 @371) @706 +@915 := @356 (@18 @83) (@356 (@10 @72) @355) +@917 := @854 @915 @71 +@919 := @356 (@18 @718) +@920 := #12 +@939 := {env : @662} -> + {F : @636} -> + {o : @638} -> + (hB : @847) -> + (hfn : @878) -> + (hwt : @899) -> + (hbind : @909) -> + (hF : @853) -> + (hA : @917) -> + (hne : @724) -> @727 (fun (ro : @726) => @733 (@858 (@919 (@356 (@10 @920) @355)) @26)) +@940 := @895 @376 +@942 := @585 (@527 @355) +@944 := @428 @942 @879 +@955 := @697 (@882 @897 @371) (@705 (@372 (@366 @512) (@372 (@369 @570) @371))) +@961 := @356 (@18 @72) (@356 (@10 @74) @355) +@983 := {F : @636} -> + {o : @638} -> + (hB : @847) -> + (hfn : @878) -> + (hwt : @944) -> + (hbind : @955) -> + (hF : @853) -> + (hA : @854 @961 @71) -> + (hne : @724) -> @727 (fun (ro : @726) => @733 (@858 (@356 (@18 @920) (@356 (@10 @93) @355)) @26)) +@984 := @940 @377 +@985 := @602 @879 +@996 := @697 (@882 @942 @371) (@705 (@372 (@366 @526) (@372 (@369 @584) @371))) +@998 := @852 (@714 @377) +@1000 := @854 @905 @71 +@1001 := @729 @377 +@1023 := {o : @638} -> + (hB : @847) -> + (hfn : @878) -> + (hwt : @985) -> + (hbind : @996) -> + (hF : @998) -> + (hA : @1000) -> + (hne : @724) -> + @727 (fun (ro : @726) => @728 (@1001 @74 @26) (@858 (@356 (@18 @93) (@356 (@10 @83) @355)) @26)) +@1024 := @984 @626 +@1025 := @610 @879 +@1036 := @697 (@882 @601 @371) (@705 (@372 (@366 @509) (@372 (@369 @567) @371))) +@1037 := @854 @897 +@1039 := @624 @76 @91 +@1040 := @1037 @1039 +@1042 := @624 @74 @76 +@1061 := (hB : @847) -> + (hfn : @878) -> + (hwt : @1025) -> + (hbind : @1036) -> + (hF : @998) -> + (hA : @1040) -> + (hne : @639 @1042 @644) -> + @727 (fun (ro : @726) => @728 (@1001 (@624 @83 @72) @26) (@858 @915 @26)) +@1062 := @1024 @402 +@1063 := @618 @879 +@1074 := @697 (@882 @609 @371) (@705 (@372 (@366 @523) (@372 (@369 @581) @371))) +@1075 := @854 @942 +@1077 := @624 @91 @71 +@1096 := (hfn : @878) -> + (hwt : @1063) -> + (hbind : @1074) -> + (hF : @998) -> + (hA : @1075 @1077) -> + (hne : @639 @1039 @644) -> + @727 (fun (ro : @726) => @728 (@1001 (@624 @72 @74) @26) (@858 @961 @26)) +@1097 := Eq.refl.{1} +@1100 := @1062 (@1097 @672 @848) +@1101 := @622 @879 +@1112 := @697 (@882 @617 @371) (@705 (@372 (@366 @538) (@372 (@369 @596) @371))) +@1113 := @854 @601 +@1115 := @624 @71 @78 +@1131 := (hwt : @1101) -> + (hbind : @1112) -> + (hF : @998) -> + (hA : @1113 @1115) -> + (hne : @639 @1077 @644) -> @727 (fun (ro : @726) => @728 (@1001 @1042 @26) (@858 @905 @26)) +@1132 := @1100 @621 +@1134 := @882 @360 @371 +@1137 := @697 @1134 (@705 @376) +@1138 := @854 @609 +@1140 := @624 @78 @31 +@1155 := (hbind : @1137) -> + (hF : @998) -> + (hA : @1138 @1140) -> + (hne : @639 @1115 @644) -> @727 (fun (ro : @726) => @728 (@1001 @1039 @26) (@858 @897 @26)) +@1158 := @1132 (@1097 @696 @1134) +@1159 := @854 @617 +@1161 := @624 @31 @9 +@1175 := (hF : @998) -> + (hA : @1159 @1161) -> + (hne : @639 @1140 @644) -> @727 (fun (ro : @726) => @728 (@1001 @1077 @26) (@858 @942 @26)) +@1178 := @1158 (@1097 @708 @851) +@1180 := @854 @360 @626 +@1182 := @639 @1161 @644 +@1183 := @1001 @1115 +@1185 := @728 (@1183 @26) +@1186 := @858 @601 +@1187 := @1186 @26 +@1192 := (hA : @1180) -> (hne : @1182) -> @727 (fun (ro : @726) => @1185 @1187) +@1193 := @1178 @635 +@1195 := @639 @626 @644 +@1196 := @1001 @1140 +@1198 := @728 (@1196 @26) +@1199 := @858 @609 +@1204 := (hne : @1195) -> @727 (fun (ro : @726) => @1198 (@1199 @26)) +@1205 := @1193 @657 +@1208 := @728 (@1001 @1161 @26) +@1210 := @858 @617 @26 +@1211 := @1208 @1210 +@1213 := @727 (fun (ro : @726) => @1211) +@1214 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.accepts +@1216 := @1214 @9 @34 +@1217 := LexLeanPreservation.someObs +@1218 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.denote +@1221 := @1217 (@1218 @9 @34) +@1224 := LexLeanPreservation.Obs.value LexLeanTarget.TargetSyntax.Value.none +@1225 := Not +@1226 := @1225 @1216 +@1228 := @1214 @31 @9 +@1231 := @1217 (@1218 @31 @9) +@1232 := @1225 @1228 +@1238 := @1228 -> @1001 (@1217 (@1218 @78 @31)) @34 +@1239 := @1001 @1224 +@1240 := @1239 @34 +@1241 := @1232 -> @1240 +@1243 := @728 @1238 @1241 +@1247 := @727 (fun (__e_ro : @726) => @728 @1210 @1243) +@1248 := fun (__e_ro : @726) => @1211 +@1249 := @1196 @34 +@1250 := @1199 @34 +@1251 := And.left +@1252 := And.right +@1255 := @1251 @1249 @1250 @26 +@1258 := @1252 @1249 @1250 @26 +@1259 := @1001 @26 +@1261 := fun (__e_o : @638) => @1259 @9 +@1262 := Eq.subst.{1} +@1264 := @1214 @78 @31 +@1265 := @1225 @1264 +@1269 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.entry_accepts @71 @78 @26 +@1272 := @1217 (@1218 @71 @78) +@1277 := @1251 (@1183 @9) (@1186 @9) @34 +@1279 := fun (__e_o : @638) => @1259 @31 +@1282 := @1262 @638 @1279 @1115 +@1286 := fun (__e_h : @1264) => @1282 @1272 @1269 @1277 +@1290 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.entry_refuses @71 @78 @26 +@1294 := fun (__e_h : @1265) => @1282 @1224 @1290 @1277 +@1295 := And.intro +@1298 := @1264 -> @1001 @1272 @9 +@1300 := @1265 -> @1239 @9 +@1302 := @728 @1298 @1300 +@1306 := @1295 @1298 @1300 @1286 @1294 +@1310 := @1295 @1250 @1302 @1258 @1306 +@1311 := Exists.intro.{1} +@1312 := @728 @1187 +@1314 := @1214 @71 @78 +@1326 := fun (__e_ro : @726) => + @1312 (@728 (@1314 -> @1001 (@1217 (@1218 @91 @71)) @34) (@1225 @1314 -> @1240)) +@1330 := @1311 @726 @1326 @34 @1310 +@1332 := @728 @1249 @1250 +@1334 := fun (__e_ro : @726) => fun (__e_hand : @1211) => @1330 +@1340 := Exists.elim.{1} @726 @1248 @1247 @1205 @1334 +@1341 := LexLeanPreservation.Rust.RepresentableL +@1342 := @18 @34 +@1344 := @356 @36 @355 +@1347 := @1341 (@356 @1342 @1344) +@1348 := (__e_hrep : @1347) -> @1247 +@1349 := fun (__e_hrep : @1347) => @1340 +@1350 := (bonus : @3) -> @1348 +@1351 := fun (bonus : @3) => @1349 +@1352 := (m : @8) -> @1350 +@1353 := fun (m : @8) => @1351 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R2/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R2/RustStd.lean new file mode 100644 index 000000000..6e64da704 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R2/RustStd.lean @@ -0,0 +1,75 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1], types := [(.list (.pair .nat .nat)), .nat], result := .nat, + body := (.call 1 [(.closure 2 [(.var 1)]), (.value .nat (.nat 0)), (.var 0)]) }, + { parameters := [0, 1, 2], types := [(.fn [.nat, .nat, .nat] .nat), .nat, (.list (.pair .nat .nat))], result := .nat, + body := (.«match» .nat (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 1 [(.var 0), (.apply (.var 0) [(.var 1), (.first (.var 3)), (.second (.var 3))]), (.var 4)]))]) }, + { parameters := [0, 1, 2, 3], types := [.nat, .nat, .nat, .nat], result := .nat, + body := (.prim .natAdd [(.prim .natAdd [(.var 1), (.var 2)]), (.prim .natAdd [(.var 3), (.var 0)])]) }, + { parameters := [0], types := [(.list (.pair .nat .nat))], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 4 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 3 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, + { parameters := [0], types := [.nat], result := .bool, + body := (.build .true .bool []) }, + { parameters := [0, 1], types := [(.list (.pair .nat .nat)), .nat], result := (.option .nat), + body := (.cond (.call 3 [(.var 0)]) (.build .some (.option .nat) [(.call 0 [(.var 0), (.var 1)])]) (.build .none (.option .nat) [])) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.enum (.fn 0) [{ number := 2, fields := [.nat] }]), + (.apply 0 [.nat, .nat, .nat] .nat true [{ function := 2, captures := [.copy], functionFallible := true }]), + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat .nat)) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .nat) (.mk [] (.call (.function 1) [(.construct (.closure 0 2) [(.copy (.generated .binding 1))]), (.lit (.nat 0)), (.move (.generated .binding 0))] false))), + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := (.list (.pair .nat .nat)) }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 1)) [(.mk .none (.mk [] (.succeed (.copy (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 1) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 2)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 2) [(.copy (.generated .binding 1)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 3)))), (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 4))]) none (.copy (.generated .binding 3)))] (.move (.generated .part 4))))] true))), (.move (.generated .binding 4))] false)))]))), + (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := .nat }, { pattern := (.bind (.generated .binding 3)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .operand 9)) none (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] true)))), (.mk (.bind (.generated .operand 10)) none (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 0)))] (.call (.runtime .natAdd) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] true))))] (.call (.runtime .natAdd) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false))), + (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat .nat)) }] .bool (.mk [(.mk (.bind (.generated .holder 11)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 11)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 4) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 12))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 12))))] false) (.mk [(.mk (.bind (.generated .holder 13)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 13)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 18)) none (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 14))))), (.mk (.bind (.generated .operand 17)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 15)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 15)))))] (.call (.runtime .compare) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false))))] (.cond (.matchOn (.move (.generated .holder 18)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 3) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]))), + (.function (.generated .function 4) [{ pattern := .wild, type := .nat }] .bool (.mk [] (.lit (.bool true)))), + (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat .nat)) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.option .nat)) (.mk [] (.cond (.call (.function 3) [(.clone (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] true)]))) (.mk [] (.succeed (.construct (.none .nat) []))))))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [(([.nat, .nat, .nat], .nat), true)] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 1) [(.construct (.closure 0 2) [(.copy (.generated .binding 1))]), (.lit (.nat 0)), (.move (.generated .binding 0))] false), [(1, .nat, (some 1)), (0, (.list (.pair .nat .nat)), (some 0))], rfl, rfl, + (Corr.callF (ts := [(.fn [.nat, .nat, .nat] .nat), .nat, (.list (.pair .nat .nat))]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [.nat]) (mask := [false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 1)) [(.mk .none (.mk [] (.succeed (.copy (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 1) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 2)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 2) [(.copy (.generated .binding 1)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 3)))), (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 4))]) none (.copy (.generated .binding 3)))] (.move (.generated .part 4))))] true))), (.move (.generated .binding 4))] false)))]), [(2, (.list (.pair .nat .nat)), (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat, .nat, .nat] .nat), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.pair .nat .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.pair .nat .nat)), (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat, .nat, .nat] .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.copy (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list (.pair .nat .nat)), (some 4)), (3, (.pair .nat .nat), (some 3)), (2, (.list (.pair .nat .nat)), (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat, .nat, .nat] .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 1) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 2)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 2) [(.copy (.generated .binding 1)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 3)))), (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 4))]) none (.copy (.generated .binding 3)))] (.move (.generated .part 4))))] true))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [.nat, .nat, .nat] .nat), .nat, (.list (.pair .nat .nat))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 2)) (some (.fn 0)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 2) [(.copy (.generated .binding 1)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 3)))), (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 4))]) none (.copy (.generated .binding 3)))] (.move (.generated .part 4))))] true)) (Corr.apply (ps := [.nat, .nat, .nat]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.copy (.generated .binding 3)))]) (tail := (.move (.generated .part 3))) (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 4))]) none (.copy (.generated .binding 3)))]) (tail := (.move (.generated .part 4))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lNil))))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 9)) none (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] true)))), (.mk (.bind (.generated .operand 10)) none (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 0)))] (.call (.runtime .natAdd) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] true))))], (.call (.runtime .natAdd) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false), [(3, .nat, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 0)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun3 : FunOK program krate flags 3 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 11)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 11)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 4) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 12))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 12))))] false) (.mk [(.mk (.bind (.generated .holder 13)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 13)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 18)) none (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 14))))), (.mk (.bind (.generated .operand 17)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 15)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 15)))))] (.call (.runtime .compare) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false))))] (.cond (.matchOn (.move (.generated .holder 18)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 3) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]), [(0, (.list (.pair .nat .nat)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.pair .nat .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list (.pair .nat .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, (.list (.pair .nat .nat)), (some 2)), (1, (.pair .nat .nat), (some 1)), (0, (.list (.pair .nat .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 4) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 12))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 12))))] false) (.mk [(.mk (.bind (.generated .holder 13)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 13)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 18)) none (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 14))))), (.mk (.bind (.generated .operand 17)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 15)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 15)))))] (.call (.runtime .compare) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false))))] (.cond (.matchOn (.move (.generated .holder 18)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 3) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 4) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 12))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 12))))] false)) (lk := []) (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 12))]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 12))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .holder 13)) none (.clone (.generated .binding 2)))]) (ta := (.matchOn (.uncons (.generated .holder 13)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 18)) none (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 14))))), (.mk (.bind (.generated .operand 17)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 15)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 15)))))] (.call (.runtime .compare) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false))))] (.cond (.matchOn (.move (.generated .holder 18)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 3) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (lb := []) (tb := (.lit (.bool false))) (Corr.matchArms (st := (.list (.pair .nat .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.pair .nat .nat)), (some 2)), (1, (.pair .nat .nat), (some 1)), (0, (.list (.pair .nat .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair .nat .nat)), none), (3, (.pair .nat .nat), (some 3)), (2, (.list (.pair .nat .nat)), (some 2)), (1, (.pair .nat .nat), (some 1)), (0, (.list (.pair .nat .nat)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 18)) none (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 14))))), (.mk (.bind (.generated .operand 17)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 15)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 15)))))] (.call (.runtime .compare) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 18)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 3) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .holder 18)) none (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 14))))), (.mk (.bind (.generated .operand 17)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 15)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 15)))))] (.call (.runtime .compare) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false))))]) (ce := (.matchOn (.move (.generated .holder 18)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 16)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 14))))), (.mk (.bind (.generated .operand 17)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 15)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 15)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 14))) (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 15)), .wild]) none (.copy (.generated .binding 3)))]) (tail := (.move (.generated .part 15))) (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.list (.pair .nat .nat)), none), (3, (.pair .nat .nat), (some 3)), (2, (.list (.pair .nat .nat)), (some 2)), (1, (.pair .nat .nat), (some 1)), (0, (.list (.pair .nat .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair .nat .nat)), none), (3, (.pair .nat .nat), (some 3)), (2, (.list (.pair .nat .nat)), (some 2)), (1, (.pair .nat .nat), (some 1)), (0, (.list (.pair .nat .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, (.list (.pair .nat .nat)), none), (3, (.pair .nat .nat), (some 3)), (2, (.list (.pair .nat .nat)), (some 2)), (1, (.pair .nat .nat), (some 1)), (0, (.list (.pair .nat .nat)), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 3) [(.move (.generated .binding 2))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.list (.pair .nat .nat))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ + +theorem fun4 : FunOK program krate flags 4 := + ⟨_, rfl, .inl ⟨_, _, [], (.lit (.bool true)), [(0, .nat, none)], rfl, rfl, + (Corr.bOfE (Corr.buildConst rfl))⟩⟩ + +theorem fun5 : FunOK program krate flags 5 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 3) [(.clone (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] true)]))) (.mk [] (.succeed (.construct (.none .nat) [])))), [(1, .nat, (some 1)), (0, (.list (.pair .nat .nat)), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 3) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.list (.pair .nat .nat))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] true)]))) (lb := []) (tb := (.succeed (.construct (.none .nat) []))) (Corr.fOfB (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .nat .nat)), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | 3 => exact fun3 + | 4 => exact fun4 + | 5 => exact fun5 + | _ + 6 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R20.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R20.lean similarity index 97% rename from examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R20.lean rename to examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R20.lean index b40d3403c..894aa23a6 100644 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R20.lean +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R20.lean @@ -18,7 +18,7 @@ set_option maxRecDepth 100000 set_option maxHeartbeats 0 set_option synthInstance.maxHeartbeats 0 set_option linter.unusedVariables false -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20 def __prog : _root_.LexLeanTarget.TargetSyntax.Program := { adts := [], functions := [ @@ -68,4 +68,4 @@ def denote (n : Nat) : _root_.LexLeanPreservation.Obs := theorem root (n : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat n)] (_root_.LexLeanPreservation.Rel (__fits_0 n) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Coverage.Main.parity n))) := _root_.LexLeanPreservation.run_of_funRel (__rel_0 n) -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20 +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20 diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R20/Compose/RustCore.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R20/Compose/RustCore.lex.tex new file mode 100644 index 000000000..efc9db741 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R20/Compose/RustCore.lex.tex @@ -0,0 +1,418 @@ +\begin{lexlean}{RustCore} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.Compose.RustCore} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.RustCore, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.Compose.RustCore.root : @826 := @827 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.Compose.RustCore.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.RustCore.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.RustCore.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.RustCore.flags +@3 := Nat +@4 := #1 +@5 := LexLeanTarget.TargetSyntax.Value.nat +@6 := @5 @4 +@7 := LexLeanTarget.TargetSyntax.Ty.nat +@8 := LexLeanTarget.TargetSyntax.Program +@9 := LexLeanPreservation.Rust.RCrate +@10 := LexLeanPreservation.Rust.Flags +@11 := LexLeanPreservation.Rust.WT +@12 := #3 +@13 := @11 @12 +@14 := #2 +@16 := @13 @14 @4 +@17 := #0 +@18 := @5 @17 +@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 +@26 := LexLeanPreservation.Rust.wt_nat @0 +@27 := @11 @0 +@34 := {c : @9} -> {A : @10} -> (n : @3) -> @27 @14 @4 @18 @7 +@35 := @26 @1 +@36 := @27 @1 +@41 := {A : @10} -> (n : @3) -> @36 @4 @18 @7 +@42 := @35 @2 +@43 := @36 @2 +@46 := (n : @3) -> @43 @18 @7 +@47 := @42 @4 +@49 := @43 @6 @7 +@50 := LexLeanTarget.TargetSyntax.Value +@51 := List.nil.{0} +@52 := List.cons.{0} +@53 := @51 @50 +@54 := @52 @50 +@56 := @54 @6 @53 +@59 := Prod.{0, 0} @3 @50 +@60 := 0 +@64 := Prod.mk.{0, 0} @3 @50 @60 +@65 := @64 @6 +@66 := @51 @59 +@67 := @52 @59 +@69 := @67 @65 @66 +@70 := Bool.false +@71 := LexLeanTarget.TargetSyntax.Function +@72 := LexLeanTarget.TargetSyntax.Program.functions +@73 := @72 @0 +@74 := LexLeanTarget.TargetSyntax.Ty +@75 := @51 @3 +@76 := @51 @74 +@77 := LexLeanTarget.TargetSyntax.Ty.unit +@78 := LexLeanTarget.TargetSyntax.Value.unit +@81 := LexLeanTarget.TargetSyntax.Expr.value @77 @78 +@86 := LexLeanTarget.TargetSyntax.Function.mk @75 @76 @77 @81 +@91 := List.getD.{0} @71 @73 @60 @86 +@95 := fun (__e_n : @3) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.RustCore.root @17 @60 +@96 := LexLeanPreservation.Rust.WTL +@104 := {p : @8} -> {c : @9} -> {A : @10} -> @96 @14 @4 @17 @53 @76 +@106 := LexLeanPreservation.Rust.wtl_nil @0 +@107 := @96 @0 +@113 := {c : @9} -> {A : @10} -> @107 @4 @17 @53 @76 +@114 := @106 @1 +@115 := @107 @1 +@119 := {A : @10} -> @115 @17 @53 @76 +@120 := @114 @2 +@121 := @115 @2 +@122 := @121 @53 +@123 := @122 @76 +@124 := List.{0} +@125 := @124 @50 +@126 := @124 @74 +@127 := #6 +@128 := @11 @127 +@129 := #5 +@130 := @128 @129 +@131 := #4 +@134 := @130 @131 @12 @14 +@135 := #7 +@140 := @96 @135 @127 @129 @14 @4 +@141 := #8 +@144 := @96 @141 @135 @127 +@146 := @54 @129 @12 +@147 := @144 @146 +@148 := @52 @74 +@150 := @148 @131 @14 +@160 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {v : @50} -> {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @134) -> (hs : @140) -> @147 @150 +@162 := LexLeanPreservation.Rust.wtl_cons @0 +@182 := {c : @9} -> + {A : @10} -> + {v : @50} -> + {t : @74} -> + {vs : @125} -> + {ts : @126} -> + (h : @27 @129 @131 @12 @14) -> (hs : @107 @127 @129 @14 @4) -> @107 @135 @127 @146 @150 +@183 := @162 @1 +@199 := {A : @10} -> + {v : @50} -> + {t : @74} -> + {vs : @125} -> + {ts : @126} -> (h : @36 @131 @12 @14) -> (hs : @115 @129 @14 @4) -> @115 @127 @146 @150 +@200 := @183 @2 +@202 := @43 @12 @14 +@204 := @121 @14 @4 +@212 := {v : @50} -> + {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @202) -> (hs : @204) -> @121 @146 @150 +@213 := @200 @6 +@214 := @5 @131 +@216 := @43 @214 @14 +@217 := @5 @127 +@218 := @54 @217 +@226 := {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @216) -> (hs : @204) -> @121 (@218 @12) @150 +@227 := @213 @7 +@228 := @5 @12 +@230 := @43 @228 @7 +@231 := @5 @129 +@232 := @54 @231 +@234 := @121 (@232 @12) +@235 := @148 @7 +@236 := @235 @14 +@241 := {vs : @125} -> {ts : @126} -> (h : @230) -> (hs : @204) -> @234 @236 +@242 := @227 @53 +@243 := @5 @14 +@245 := @43 @243 @7 +@246 := @122 @4 +@248 := @54 @214 @53 +@249 := @121 @248 +@253 := {ts : @126} -> (h : @245) -> (hs : @246) -> @249 @236 +@254 := @242 @76 +@256 := @54 @228 @53 +@257 := @121 @256 +@258 := @235 @76 +@261 := (h : @49) -> (hs : @123) -> @257 @258 +@262 := @254 @47 +@264 := @54 @243 @53 +@265 := @121 @264 +@267 := (hs : @123) -> @265 @258 +@268 := @262 @120 +@269 := @121 @56 +@270 := @269 @258 +@271 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.denote +@272 := @271 @4 +@273 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.__fits_0 +@274 := @273 @4 +@276 := Coverage.Main.parity @4 +@278 := LexLeanTarget.TargetSyntax.Value.bool @276 +@280 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.root @4 +@281 := Bool +@282 := Ne.{1} +@283 := LexLeanPreservation.Obs +@284 := @282 @283 +@285 := LexLeanPreservation.Rel +@288 := @284 (@285 @4 @17) +@289 := LexLeanPreservation.Obs.stuck +@292 := (f : @281) -> (v : @50) -> @288 @289 +@294 := LexLeanPreservation.Rust.rel_ne_stuck @274 +@300 := (v : @50) -> @284 (@285 (@273 @14) @17) @289 +@301 := @294 @278 +@305 := @284 (@285 @274 @278) @289 +@306 := @124 @59 +@307 := LexLeanPreservation.Rust.FunSem +@308 := #9 +@314 := (n : @3) -> @307 @308 @141 @135 @17 @127 +@315 := Eq.{1} +@316 := Option.{0} +@317 := @316 @71 +@318 := @315 @317 +@325 := LexLeanRuntime.index (@124 @71) @71 (LexLeanRuntime.instIndexableList @71) +@329 := @318 (@325 (@72 @308) @127) +@330 := Option.some.{0} +@331 := @330 @71 +@332 := @331 @129 +@333 := @329 @332 +@334 := #10 +@338 := @96 @334 @308 @141 @129 +@339 := LexLeanTarget.TargetSyntax.Function.types +@340 := @339 @127 +@341 := @338 @340 +@342 := @316 @306 +@343 := @315 @342 +@344 := LexLeanTarget.TargetSemantics.bindAll +@345 := LexLeanTarget.TargetSyntax.Function.parameters +@350 := @343 (@344 (@345 @135) @127 @66) +@351 := @330 @306 +@352 := @351 @129 +@353 := @350 @352 +@354 := @316 @281 +@355 := @315 @354 +@356 := LexLeanPreservation.Rust.fnFallible +@357 := #11 +@360 := @355 (@356 @357 @308) +@361 := @330 @281 +@362 := @361 @129 +@363 := @360 @362 +@364 := LexLeanPreservation.RunConv +@365 := #13 +@369 := @364 @365 @334 @141 @129 +@371 := @284 @127 @289 +@372 := Exists.{1} +@373 := LexLeanPreservation.Rust.ROut +@374 := @372 @373 +@375 := And +@376 := LexLeanPreservation.Rust.RealizesFn +@380 := @375 (@376 @308 @141 @17) +@381 := LexLeanPreservation.Rust.RCI +@383 := @381 #15 +@384 := LexLeanPreservation.Rust.fnIdent +@385 := @384 @365 +@392 := (hne : @371) -> @374 (fun (ro : @373) => @380 (@383 @385 @357 @17)) +@407 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {f : @3} -> + {fn : @71} -> + {args : @125} -> + {env : @306} -> + {F : @281} -> + {o : @283} -> + (hB : @314) -> + (hfn : @333) -> (hwt : @341) -> (hbind : @353) -> (hF : @363) -> (hA : @369) -> @392 +@409 := LexLeanPreservation.Rust.compose @0 +@410 := @307 @0 +@415 := (n : @3) -> @410 @141 @135 @17 @127 +@416 := @325 @73 +@419 := @318 (@416 @127) @332 +@423 := @107 @308 @141 @129 @340 +@424 := @364 @0 +@427 := @424 @334 @141 @129 +@441 := {c : @9} -> + {A : @10} -> + {f : @3} -> + {fn : @71} -> + {args : @125} -> + {env : @306} -> + {F : @281} -> + {o : @283} -> + (hB : @415) -> + (hfn : @419) -> (hwt : @423) -> (hbind : @353) -> (hF : @363) -> (hA : @427) -> @392 +@442 := @409 @1 +@443 := @410 @1 +@447 := (n : @3) -> @443 @135 @17 @127 +@450 := @115 @141 @129 @340 +@451 := @356 @1 +@454 := @355 (@451 @308) @362 +@455 := @381 @1 +@465 := (hbind : @353) -> + (hF : @454) -> (hA : @427) -> (hne : @371) -> @374 (fun (ro : @373) => @380 (@455 @385 @357 @17)) +@475 := {A : @10} -> + {f : @3} -> + {fn : @71} -> + {args : @125} -> + {env : @306} -> {F : @281} -> {o : @283} -> (hB : @447) -> (hfn : @419) -> (hwt : @450) -> @465 +@476 := @442 @2 +@478 := @443 @2 @17 +@480 := (n : @3) -> @478 @127 +@481 := @121 @129 +@482 := @481 @340 +@491 := {f : @3} -> + {fn : @71} -> + {args : @125} -> + {env : @306} -> {F : @281} -> {o : @283} -> (hB : @480) -> (hfn : @419) -> (hwt : @482) -> @465 +@492 := @476 @60 +@494 := (n : @3) -> @478 @60 +@495 := @416 @60 +@496 := @318 @495 +@497 := @496 @332 +@498 := @451 @60 +@499 := @355 @498 +@500 := @499 @362 +@501 := @424 @60 +@503 := @501 @141 @129 +@505 := @455 (@384 @60) +@513 := (hF : @500) -> (hA : @503) -> (hne : @371) -> @374 (fun (ro : @373) => @380 (@505 @357 @17)) +@522 := {fn : @71} -> + {args : @125} -> + {env : @306} -> + {F : @281} -> {o : @283} -> (hB : @494) -> (hfn : @497) -> (hwt : @482) -> (hbind : @353) -> @513 +@523 := @492 @91 +@525 := @496 (@331 @91) +@526 := @339 @91 +@527 := @481 @526 +@529 := @344 (@345 @91) +@541 := {args : @125} -> + {env : @306} -> + {F : @281} -> + {o : @283} -> + (hB : @494) -> (hfn : @525) -> (hwt : @527) -> (hbind : @343 (@529 @127 @66) @352) -> @513 +@542 := @523 @56 +@543 := @218 @53 +@545 := @121 @543 @526 +@548 := @54 (@5 @135) @53 +@552 := @343 (@529 @548 @66) @352 +@555 := @54 (@5 @308) @53 +@576 := {env : @306} -> + {F : @281} -> + {o : @283} -> + (hB : @494) -> + (hfn : @525) -> + (hwt : @545) -> + (hbind : @552) -> + (hF : @500) -> + (hA : @501 @555 @129) -> + (hne : @371) -> @374 (fun (ro : @373) => @380 (@505 (@54 (@5 #12) @53) @17)) +@577 := @542 @69 +@578 := @232 @53 +@580 := @121 @578 @526 +@588 := @343 (@529 @543 @66) (@351 (@67 (@64 @217) @66)) +@591 := @54 (@5 @141) @53 +@610 := {F : @281} -> + {o : @283} -> + (hB : @494) -> + (hfn : @525) -> + (hwt : @580) -> + (hbind : @588) -> + (hF : @500) -> + (hA : @501 @591 @129) -> + (hne : @371) -> @374 (fun (ro : @373) => @380 (@505 (@54 (@5 @357) @53) @17)) +@611 := @577 @70 +@612 := @249 @526 +@620 := @343 (@529 @578 @66) (@351 (@67 (@64 @231) @66)) +@622 := @499 (@361 @70) +@624 := @501 @548 @129 +@625 := @376 @70 +@644 := {o : @283} -> + (hB : @494) -> + (hfn : @525) -> + (hwt : @612) -> + (hbind : @620) -> + (hF : @622) -> + (hA : @624) -> + (hne : @371) -> @374 (fun (ro : @373) => @375 (@625 @141 @17) (@505 (@54 (@5 @334) @53) @17)) +@645 := @611 @272 +@646 := @257 @526 +@654 := @343 (@529 @248 @66) (@351 (@67 (@64 @214) @66)) +@655 := @501 @543 +@656 := @271 @127 +@657 := @655 @656 +@658 := @271 @135 +@676 := (hB : @494) -> + (hfn : @525) -> + (hwt : @646) -> + (hbind : @654) -> + (hF : @622) -> + (hA : @657) -> + (hne : @284 @658 @289) -> @374 (fun (ro : @373) => @375 (@625 (@271 @308) @17) (@505 @555 @17)) +@677 := @645 @95 +@678 := @265 @526 +@686 := @343 (@529 @256 @66) (@351 (@67 (@64 @228) @66)) +@687 := @501 @578 +@688 := @271 @129 +@706 := (hfn : @525) -> + (hwt : @678) -> + (hbind : @686) -> + (hF : @622) -> + (hA : @687 @688) -> + (hne : @284 @656 @289) -> @374 (fun (ro : @373) => @375 (@625 (@271 @141) @17) (@505 @591 @17)) +@707 := Eq.refl.{1} +@710 := @677 (@707 @317 @495) +@711 := @269 @526 +@719 := @343 (@529 @264 @66) (@351 (@67 (@64 @243) @66)) +@720 := @501 @248 +@721 := @271 @131 +@737 := (hwt : @711) -> + (hbind : @719) -> + (hF : @622) -> + (hA : @720 @721) -> + (hne : @284 @688 @289) -> @374 (fun (ro : @373) => @375 (@625 @658 @17) (@505 @548 @17)) +@738 := @710 @268 +@740 := @529 @56 @66 +@743 := @343 @740 (@351 @69) +@744 := @501 @256 +@745 := @271 @12 +@760 := (hbind : @743) -> + (hF : @622) -> + (hA : @744 @745) -> + (hne : @284 @721 @289) -> @374 (fun (ro : @373) => @375 (@625 @656 @17) (@505 @543 @17)) +@763 := @738 (@707 @342 @740) +@764 := @501 @264 +@765 := @271 @14 +@779 := (hF : @622) -> + (hA : @764 @765) -> + (hne : @284 @745 @289) -> @374 (fun (ro : @373) => @375 (@625 @688 @17) (@505 @578 @17)) +@782 := @763 (@707 @354 @498) +@796 := (hA : @501 @56 @272) -> + (hne : @284 @765 @289) -> @374 (fun (ro : @373) => @375 (@625 @721 @17) (@505 @248 @17)) +@797 := @782 @280 +@808 := (hne : @284 @272 @289) -> @374 (fun (ro : @373) => @375 (@625 @745 @17) (@505 @256 @17)) +@809 := @797 @301 +@815 := @375 (@625 @765 @17) (@505 @264 @17) +@817 := @374 (fun (ro : @373) => @815) +@819 := @374 (fun (__e_ro : @373) => @815) +@823 := LexLeanPreservation.Rust.RepresentableL (@54 @18 @53) +@824 := (__e_hrep : @823) -> @819 +@825 := fun (__e_hrep : @823) => @809 +@826 := (n : @3) -> @824 +@827 := fun (n : @3) => @825 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R20/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R20/Compose/RustStd.lex.tex new file mode 100644 index 000000000..904320d7e --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R20/Compose/RustStd.lex.tex @@ -0,0 +1,418 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.Compose.RustStd.root : @826 := @827 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.RustStd.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.RustStd.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.RustStd.flags +@3 := Nat +@4 := #1 +@5 := LexLeanTarget.TargetSyntax.Value.nat +@6 := @5 @4 +@7 := LexLeanTarget.TargetSyntax.Ty.nat +@8 := LexLeanTarget.TargetSyntax.Program +@9 := LexLeanPreservation.Rust.RCrate +@10 := LexLeanPreservation.Rust.Flags +@11 := LexLeanPreservation.Rust.WT +@12 := #3 +@13 := @11 @12 +@14 := #2 +@16 := @13 @14 @4 +@17 := #0 +@18 := @5 @17 +@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 +@26 := LexLeanPreservation.Rust.wt_nat @0 +@27 := @11 @0 +@34 := {c : @9} -> {A : @10} -> (n : @3) -> @27 @14 @4 @18 @7 +@35 := @26 @1 +@36 := @27 @1 +@41 := {A : @10} -> (n : @3) -> @36 @4 @18 @7 +@42 := @35 @2 +@43 := @36 @2 +@46 := (n : @3) -> @43 @18 @7 +@47 := @42 @4 +@49 := @43 @6 @7 +@50 := LexLeanTarget.TargetSyntax.Value +@51 := List.nil.{0} +@52 := List.cons.{0} +@53 := @51 @50 +@54 := @52 @50 +@56 := @54 @6 @53 +@59 := Prod.{0, 0} @3 @50 +@60 := 0 +@64 := Prod.mk.{0, 0} @3 @50 @60 +@65 := @64 @6 +@66 := @51 @59 +@67 := @52 @59 +@69 := @67 @65 @66 +@70 := Bool.false +@71 := LexLeanTarget.TargetSyntax.Function +@72 := LexLeanTarget.TargetSyntax.Program.functions +@73 := @72 @0 +@74 := LexLeanTarget.TargetSyntax.Ty +@75 := @51 @3 +@76 := @51 @74 +@77 := LexLeanTarget.TargetSyntax.Ty.unit +@78 := LexLeanTarget.TargetSyntax.Value.unit +@81 := LexLeanTarget.TargetSyntax.Expr.value @77 @78 +@86 := LexLeanTarget.TargetSyntax.Function.mk @75 @76 @77 @81 +@91 := List.getD.{0} @71 @73 @60 @86 +@95 := fun (__e_n : @3) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.RustStd.root @17 @60 +@96 := LexLeanPreservation.Rust.WTL +@104 := {p : @8} -> {c : @9} -> {A : @10} -> @96 @14 @4 @17 @53 @76 +@106 := LexLeanPreservation.Rust.wtl_nil @0 +@107 := @96 @0 +@113 := {c : @9} -> {A : @10} -> @107 @4 @17 @53 @76 +@114 := @106 @1 +@115 := @107 @1 +@119 := {A : @10} -> @115 @17 @53 @76 +@120 := @114 @2 +@121 := @115 @2 +@122 := @121 @53 +@123 := @122 @76 +@124 := List.{0} +@125 := @124 @50 +@126 := @124 @74 +@127 := #6 +@128 := @11 @127 +@129 := #5 +@130 := @128 @129 +@131 := #4 +@134 := @130 @131 @12 @14 +@135 := #7 +@140 := @96 @135 @127 @129 @14 @4 +@141 := #8 +@144 := @96 @141 @135 @127 +@146 := @54 @129 @12 +@147 := @144 @146 +@148 := @52 @74 +@150 := @148 @131 @14 +@160 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {v : @50} -> {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @134) -> (hs : @140) -> @147 @150 +@162 := LexLeanPreservation.Rust.wtl_cons @0 +@182 := {c : @9} -> + {A : @10} -> + {v : @50} -> + {t : @74} -> + {vs : @125} -> + {ts : @126} -> + (h : @27 @129 @131 @12 @14) -> (hs : @107 @127 @129 @14 @4) -> @107 @135 @127 @146 @150 +@183 := @162 @1 +@199 := {A : @10} -> + {v : @50} -> + {t : @74} -> + {vs : @125} -> + {ts : @126} -> (h : @36 @131 @12 @14) -> (hs : @115 @129 @14 @4) -> @115 @127 @146 @150 +@200 := @183 @2 +@202 := @43 @12 @14 +@204 := @121 @14 @4 +@212 := {v : @50} -> + {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @202) -> (hs : @204) -> @121 @146 @150 +@213 := @200 @6 +@214 := @5 @131 +@216 := @43 @214 @14 +@217 := @5 @127 +@218 := @54 @217 +@226 := {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @216) -> (hs : @204) -> @121 (@218 @12) @150 +@227 := @213 @7 +@228 := @5 @12 +@230 := @43 @228 @7 +@231 := @5 @129 +@232 := @54 @231 +@234 := @121 (@232 @12) +@235 := @148 @7 +@236 := @235 @14 +@241 := {vs : @125} -> {ts : @126} -> (h : @230) -> (hs : @204) -> @234 @236 +@242 := @227 @53 +@243 := @5 @14 +@245 := @43 @243 @7 +@246 := @122 @4 +@248 := @54 @214 @53 +@249 := @121 @248 +@253 := {ts : @126} -> (h : @245) -> (hs : @246) -> @249 @236 +@254 := @242 @76 +@256 := @54 @228 @53 +@257 := @121 @256 +@258 := @235 @76 +@261 := (h : @49) -> (hs : @123) -> @257 @258 +@262 := @254 @47 +@264 := @54 @243 @53 +@265 := @121 @264 +@267 := (hs : @123) -> @265 @258 +@268 := @262 @120 +@269 := @121 @56 +@270 := @269 @258 +@271 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.denote +@272 := @271 @4 +@273 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.__fits_0 +@274 := @273 @4 +@276 := Coverage.Main.parity @4 +@278 := LexLeanTarget.TargetSyntax.Value.bool @276 +@280 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.root @4 +@281 := Bool +@282 := Ne.{1} +@283 := LexLeanPreservation.Obs +@284 := @282 @283 +@285 := LexLeanPreservation.Rel +@288 := @284 (@285 @4 @17) +@289 := LexLeanPreservation.Obs.stuck +@292 := (f : @281) -> (v : @50) -> @288 @289 +@294 := LexLeanPreservation.Rust.rel_ne_stuck @274 +@300 := (v : @50) -> @284 (@285 (@273 @14) @17) @289 +@301 := @294 @278 +@305 := @284 (@285 @274 @278) @289 +@306 := @124 @59 +@307 := LexLeanPreservation.Rust.FunSem +@308 := #9 +@314 := (n : @3) -> @307 @308 @141 @135 @17 @127 +@315 := Eq.{1} +@316 := Option.{0} +@317 := @316 @71 +@318 := @315 @317 +@325 := LexLeanRuntime.index (@124 @71) @71 (LexLeanRuntime.instIndexableList @71) +@329 := @318 (@325 (@72 @308) @127) +@330 := Option.some.{0} +@331 := @330 @71 +@332 := @331 @129 +@333 := @329 @332 +@334 := #10 +@338 := @96 @334 @308 @141 @129 +@339 := LexLeanTarget.TargetSyntax.Function.types +@340 := @339 @127 +@341 := @338 @340 +@342 := @316 @306 +@343 := @315 @342 +@344 := LexLeanTarget.TargetSemantics.bindAll +@345 := LexLeanTarget.TargetSyntax.Function.parameters +@350 := @343 (@344 (@345 @135) @127 @66) +@351 := @330 @306 +@352 := @351 @129 +@353 := @350 @352 +@354 := @316 @281 +@355 := @315 @354 +@356 := LexLeanPreservation.Rust.fnFallible +@357 := #11 +@360 := @355 (@356 @357 @308) +@361 := @330 @281 +@362 := @361 @129 +@363 := @360 @362 +@364 := LexLeanPreservation.RunConv +@365 := #13 +@369 := @364 @365 @334 @141 @129 +@371 := @284 @127 @289 +@372 := Exists.{1} +@373 := LexLeanPreservation.Rust.ROut +@374 := @372 @373 +@375 := And +@376 := LexLeanPreservation.Rust.RealizesFn +@380 := @375 (@376 @308 @141 @17) +@381 := LexLeanPreservation.Rust.RCI +@383 := @381 #15 +@384 := LexLeanPreservation.Rust.fnIdent +@385 := @384 @365 +@392 := (hne : @371) -> @374 (fun (ro : @373) => @380 (@383 @385 @357 @17)) +@407 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {f : @3} -> + {fn : @71} -> + {args : @125} -> + {env : @306} -> + {F : @281} -> + {o : @283} -> + (hB : @314) -> + (hfn : @333) -> (hwt : @341) -> (hbind : @353) -> (hF : @363) -> (hA : @369) -> @392 +@409 := LexLeanPreservation.Rust.compose @0 +@410 := @307 @0 +@415 := (n : @3) -> @410 @141 @135 @17 @127 +@416 := @325 @73 +@419 := @318 (@416 @127) @332 +@423 := @107 @308 @141 @129 @340 +@424 := @364 @0 +@427 := @424 @334 @141 @129 +@441 := {c : @9} -> + {A : @10} -> + {f : @3} -> + {fn : @71} -> + {args : @125} -> + {env : @306} -> + {F : @281} -> + {o : @283} -> + (hB : @415) -> + (hfn : @419) -> (hwt : @423) -> (hbind : @353) -> (hF : @363) -> (hA : @427) -> @392 +@442 := @409 @1 +@443 := @410 @1 +@447 := (n : @3) -> @443 @135 @17 @127 +@450 := @115 @141 @129 @340 +@451 := @356 @1 +@454 := @355 (@451 @308) @362 +@455 := @381 @1 +@465 := (hbind : @353) -> + (hF : @454) -> (hA : @427) -> (hne : @371) -> @374 (fun (ro : @373) => @380 (@455 @385 @357 @17)) +@475 := {A : @10} -> + {f : @3} -> + {fn : @71} -> + {args : @125} -> + {env : @306} -> {F : @281} -> {o : @283} -> (hB : @447) -> (hfn : @419) -> (hwt : @450) -> @465 +@476 := @442 @2 +@478 := @443 @2 @17 +@480 := (n : @3) -> @478 @127 +@481 := @121 @129 +@482 := @481 @340 +@491 := {f : @3} -> + {fn : @71} -> + {args : @125} -> + {env : @306} -> {F : @281} -> {o : @283} -> (hB : @480) -> (hfn : @419) -> (hwt : @482) -> @465 +@492 := @476 @60 +@494 := (n : @3) -> @478 @60 +@495 := @416 @60 +@496 := @318 @495 +@497 := @496 @332 +@498 := @451 @60 +@499 := @355 @498 +@500 := @499 @362 +@501 := @424 @60 +@503 := @501 @141 @129 +@505 := @455 (@384 @60) +@513 := (hF : @500) -> (hA : @503) -> (hne : @371) -> @374 (fun (ro : @373) => @380 (@505 @357 @17)) +@522 := {fn : @71} -> + {args : @125} -> + {env : @306} -> + {F : @281} -> {o : @283} -> (hB : @494) -> (hfn : @497) -> (hwt : @482) -> (hbind : @353) -> @513 +@523 := @492 @91 +@525 := @496 (@331 @91) +@526 := @339 @91 +@527 := @481 @526 +@529 := @344 (@345 @91) +@541 := {args : @125} -> + {env : @306} -> + {F : @281} -> + {o : @283} -> + (hB : @494) -> (hfn : @525) -> (hwt : @527) -> (hbind : @343 (@529 @127 @66) @352) -> @513 +@542 := @523 @56 +@543 := @218 @53 +@545 := @121 @543 @526 +@548 := @54 (@5 @135) @53 +@552 := @343 (@529 @548 @66) @352 +@555 := @54 (@5 @308) @53 +@576 := {env : @306} -> + {F : @281} -> + {o : @283} -> + (hB : @494) -> + (hfn : @525) -> + (hwt : @545) -> + (hbind : @552) -> + (hF : @500) -> + (hA : @501 @555 @129) -> + (hne : @371) -> @374 (fun (ro : @373) => @380 (@505 (@54 (@5 #12) @53) @17)) +@577 := @542 @69 +@578 := @232 @53 +@580 := @121 @578 @526 +@588 := @343 (@529 @543 @66) (@351 (@67 (@64 @217) @66)) +@591 := @54 (@5 @141) @53 +@610 := {F : @281} -> + {o : @283} -> + (hB : @494) -> + (hfn : @525) -> + (hwt : @580) -> + (hbind : @588) -> + (hF : @500) -> + (hA : @501 @591 @129) -> + (hne : @371) -> @374 (fun (ro : @373) => @380 (@505 (@54 (@5 @357) @53) @17)) +@611 := @577 @70 +@612 := @249 @526 +@620 := @343 (@529 @578 @66) (@351 (@67 (@64 @231) @66)) +@622 := @499 (@361 @70) +@624 := @501 @548 @129 +@625 := @376 @70 +@644 := {o : @283} -> + (hB : @494) -> + (hfn : @525) -> + (hwt : @612) -> + (hbind : @620) -> + (hF : @622) -> + (hA : @624) -> + (hne : @371) -> @374 (fun (ro : @373) => @375 (@625 @141 @17) (@505 (@54 (@5 @334) @53) @17)) +@645 := @611 @272 +@646 := @257 @526 +@654 := @343 (@529 @248 @66) (@351 (@67 (@64 @214) @66)) +@655 := @501 @543 +@656 := @271 @127 +@657 := @655 @656 +@658 := @271 @135 +@676 := (hB : @494) -> + (hfn : @525) -> + (hwt : @646) -> + (hbind : @654) -> + (hF : @622) -> + (hA : @657) -> + (hne : @284 @658 @289) -> @374 (fun (ro : @373) => @375 (@625 (@271 @308) @17) (@505 @555 @17)) +@677 := @645 @95 +@678 := @265 @526 +@686 := @343 (@529 @256 @66) (@351 (@67 (@64 @228) @66)) +@687 := @501 @578 +@688 := @271 @129 +@706 := (hfn : @525) -> + (hwt : @678) -> + (hbind : @686) -> + (hF : @622) -> + (hA : @687 @688) -> + (hne : @284 @656 @289) -> @374 (fun (ro : @373) => @375 (@625 (@271 @141) @17) (@505 @591 @17)) +@707 := Eq.refl.{1} +@710 := @677 (@707 @317 @495) +@711 := @269 @526 +@719 := @343 (@529 @264 @66) (@351 (@67 (@64 @243) @66)) +@720 := @501 @248 +@721 := @271 @131 +@737 := (hwt : @711) -> + (hbind : @719) -> + (hF : @622) -> + (hA : @720 @721) -> + (hne : @284 @688 @289) -> @374 (fun (ro : @373) => @375 (@625 @658 @17) (@505 @548 @17)) +@738 := @710 @268 +@740 := @529 @56 @66 +@743 := @343 @740 (@351 @69) +@744 := @501 @256 +@745 := @271 @12 +@760 := (hbind : @743) -> + (hF : @622) -> + (hA : @744 @745) -> + (hne : @284 @721 @289) -> @374 (fun (ro : @373) => @375 (@625 @656 @17) (@505 @543 @17)) +@763 := @738 (@707 @342 @740) +@764 := @501 @264 +@765 := @271 @14 +@779 := (hF : @622) -> + (hA : @764 @765) -> + (hne : @284 @745 @289) -> @374 (fun (ro : @373) => @375 (@625 @688 @17) (@505 @578 @17)) +@782 := @763 (@707 @354 @498) +@796 := (hA : @501 @56 @272) -> + (hne : @284 @765 @289) -> @374 (fun (ro : @373) => @375 (@625 @721 @17) (@505 @248 @17)) +@797 := @782 @280 +@808 := (hne : @284 @272 @289) -> @374 (fun (ro : @373) => @375 (@625 @745 @17) (@505 @256 @17)) +@809 := @797 @301 +@815 := @375 (@625 @765 @17) (@505 @264 @17) +@817 := @374 (fun (ro : @373) => @815) +@819 := @374 (fun (__e_ro : @373) => @815) +@823 := LexLeanPreservation.Rust.RepresentableL (@54 @18 @53) +@824 := (__e_hrep : @823) -> @819 +@825 := fun (__e_hrep : @823) => @809 +@826 := (n : @3) -> @824 +@827 := fun (n : @3) => @825 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R20/RustCore.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R20/RustCore.lean new file mode 100644 index 000000000..68a4a0a91 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R20/RustCore.lean @@ -0,0 +1,49 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.RustCore +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0], types := [.nat], result := .bool, + body := (.call 1 [(.var 0)]) }, + { parameters := [0], types := [.nat], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .zero [] (.build .false .bool [])), (.arm .succ [1] (.call 2 [(.var 1)]))]) }, + { parameters := [0], types := [.nat], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .zero [] (.build .true .bool [])), (.arm .succ [1] (.call 1 [(.var 1)]))]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .core, items := [ + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] .bool (.mk [] (.call (.function 1) [(.copy (.generated .binding 0))] false))), + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .holder 1)) none (.copy (.generated .binding 0)))] (.cond (.isZero (.generated .holder 1)) (.mk [] (.lit (.bool false))) (.mk [(.mk (.bind (.generated .binding 1)) none (.predecessor (.generated .holder 1)))] (.call (.function 2) [(.copy (.generated .binding 1))] false))))), + (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .holder 2)) none (.copy (.generated .binding 0)))] (.cond (.isZero (.generated .holder 2)) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .binding 1)) none (.predecessor (.generated .holder 2)))] (.call (.function 1) [(.copy (.generated .binding 1))] false)))))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 1) [(.copy (.generated .binding 0))] false), [(0, .nat, (some 0))], rfl, rfl, + (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.copy (.generated .binding 0)))], (.cond (.isZero (.generated .holder 1)) (.mk [] (.lit (.bool false))) (.mk [(.mk (.bind (.generated .binding 1)) none (.predecessor (.generated .holder 1)))] (.call (.function 2) [(.copy (.generated .binding 1))] false))), [(0, .nat, (some 0))], rfl, rfl, + (Corr.matchNat (sl := (some 1)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.lit (.bool false))) (lb := []) (tb := (.call (.function 2) [(.copy (.generated .binding 1))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)))⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 2)) none (.copy (.generated .binding 0)))], (.cond (.isZero (.generated .holder 2)) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .binding 1)) none (.predecessor (.generated .holder 2)))] (.call (.function 1) [(.copy (.generated .binding 1))] false))), [(0, .nat, (some 0))], rfl, rfl, + (Corr.matchNat (sl := (some 1)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := []) (tb := (.call (.function 1) [(.copy (.generated .binding 1))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | _ + 3 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.RustCore diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R20/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R20/RustStd.lean new file mode 100644 index 000000000..7e964dc48 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R20/RustStd.lean @@ -0,0 +1,49 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0], types := [.nat], result := .bool, + body := (.call 1 [(.var 0)]) }, + { parameters := [0], types := [.nat], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .zero [] (.build .false .bool [])), (.arm .succ [1] (.call 2 [(.var 1)]))]) }, + { parameters := [0], types := [.nat], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .zero [] (.build .true .bool [])), (.arm .succ [1] (.call 1 [(.var 1)]))]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] .bool (.mk [] (.call (.function 1) [(.copy (.generated .binding 0))] false))), + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .holder 1)) none (.copy (.generated .binding 0)))] (.cond (.isZero (.generated .holder 1)) (.mk [] (.lit (.bool false))) (.mk [(.mk (.bind (.generated .binding 1)) none (.predecessor (.generated .holder 1)))] (.call (.function 2) [(.copy (.generated .binding 1))] false))))), + (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .holder 2)) none (.copy (.generated .binding 0)))] (.cond (.isZero (.generated .holder 2)) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .binding 1)) none (.predecessor (.generated .holder 2)))] (.call (.function 1) [(.copy (.generated .binding 1))] false)))))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 1) [(.copy (.generated .binding 0))] false), [(0, .nat, (some 0))], rfl, rfl, + (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.copy (.generated .binding 0)))], (.cond (.isZero (.generated .holder 1)) (.mk [] (.lit (.bool false))) (.mk [(.mk (.bind (.generated .binding 1)) none (.predecessor (.generated .holder 1)))] (.call (.function 2) [(.copy (.generated .binding 1))] false))), [(0, .nat, (some 0))], rfl, rfl, + (Corr.matchNat (sl := (some 1)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.lit (.bool false))) (lb := []) (tb := (.call (.function 2) [(.copy (.generated .binding 1))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)))⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 2)) none (.copy (.generated .binding 0)))], (.cond (.isZero (.generated .holder 2)) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .binding 1)) none (.predecessor (.generated .holder 2)))] (.call (.function 1) [(.copy (.generated .binding 1))] false))), [(0, .nat, (some 0))], rfl, rfl, + (Corr.matchNat (sl := (some 1)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := []) (tb := (.call (.function 1) [(.copy (.generated .binding 1))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | _ + 3 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R21.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R21.lean similarity index 98% rename from examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R21.lean rename to examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R21.lean index 6394deea1..6417f2565 100644 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R21.lean +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R21.lean @@ -18,7 +18,7 @@ set_option maxRecDepth 100000 set_option maxHeartbeats 0 set_option synthInstance.maxHeartbeats 0 set_option linter.unusedVariables false -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21 def __prog : _root_.LexLeanTarget.TargetSyntax.Program := { adts := [], functions := [ @@ -37,4 +37,4 @@ def denote (a : Int8) (b : Int8) : _root_.LexLeanPreservation.Obs := theorem root (a : Int8) (b : Int8) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.i8 a), (_root_.LexLeanTarget.TargetSyntax.Value.i8 b)] (_root_.LexLeanPreservation.Rel (__fits_0 a b) ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.i8) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.i8) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.i8) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.i8) (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.i8))))) (Coverage.Prims.fixedSmall a b))) := _root_.LexLeanPreservation.run_of_funRel (__rel_0 a b) -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21 +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21 diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R21/Compose/RustCore.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R21/Compose/RustCore.lex.tex new file mode 100644 index 000000000..5d8950db4 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R21/Compose/RustCore.lex.tex @@ -0,0 +1,475 @@ +\begin{lexlean}{RustCore} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.Compose.RustCore} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.RustCore, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.Compose.RustCore.root : @939 := @940 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.Compose.RustCore.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.RustCore.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.RustCore.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.RustCore.flags +@3 := Int8 +@4 := #2 +@5 := LexLeanTarget.TargetSyntax.Value.i8 +@6 := @5 @4 +@9 := LexLeanTarget.TargetSyntax.Ty.fixed LexLeanTarget.TargetSyntax.IntKind.i8 +@10 := LexLeanTarget.TargetSyntax.Program +@11 := LexLeanPreservation.Rust.RCrate +@12 := LexLeanPreservation.Rust.Flags +@13 := LexLeanPreservation.Rust.WT +@14 := #3 +@16 := @13 @14 @4 +@17 := #1 +@18 := @16 @17 +@19 := #0 +@20 := @5 @19 +@26 := {p : @10} -> {c : @11} -> {A : @12} -> (x : @3) -> @18 @20 @9 +@28 := LexLeanPreservation.Rust.wt_i8 @0 +@29 := @13 @0 +@36 := {c : @11} -> {A : @12} -> (x : @3) -> @29 @4 @17 @20 @9 +@37 := @28 @1 +@38 := @29 @1 +@43 := {A : @12} -> (x : @3) -> @38 @17 @20 @9 +@44 := @37 @2 +@45 := @38 @2 +@48 := (x : @3) -> @45 @20 @9 +@49 := @44 @4 +@51 := @45 @6 @9 +@52 := @5 @17 +@53 := @44 @17 +@55 := @45 @52 @9 +@56 := LexLeanTarget.TargetSyntax.Value +@57 := List.nil.{0} +@58 := List.cons.{0} +@59 := @57 @56 +@60 := @58 @56 +@61 := @60 @52 +@62 := @61 @59 +@63 := @60 @6 +@64 := @63 @62 +@65 := Nat +@66 := Prod.{0, 0} +@68 := @66 @65 @56 +@69 := 1 +@72 := Prod.mk.{0, 0} @65 @56 +@73 := @72 @69 +@74 := @73 @52 +@75 := 0 +@76 := @72 @75 +@77 := @76 @6 +@78 := @57 @68 +@79 := @58 @68 +@81 := @79 @77 @78 +@83 := @79 @74 @81 +@84 := Bool.false +@85 := LexLeanTarget.TargetSyntax.Function +@86 := LexLeanTarget.TargetSyntax.Program.functions +@87 := @86 @0 +@88 := LexLeanTarget.TargetSyntax.Ty +@89 := @57 @65 +@90 := @57 @88 +@91 := LexLeanTarget.TargetSyntax.Ty.unit +@92 := LexLeanTarget.TargetSyntax.Value.unit +@95 := LexLeanTarget.TargetSyntax.Expr.value @91 @92 +@100 := LexLeanTarget.TargetSyntax.Function.mk @89 @90 @91 @95 +@105 := List.getD.{0} @85 @87 @75 @100 +@109 := fun (__e_n : @65) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.RustCore.root @19 @75 +@110 := LexLeanPreservation.Rust.WTL +@118 := {p : @10} -> {c : @11} -> {A : @12} -> @110 @4 @17 @19 @59 @90 +@120 := LexLeanPreservation.Rust.wtl_nil @0 +@121 := @110 @0 +@127 := {c : @11} -> {A : @12} -> @121 @17 @19 @59 @90 +@128 := @120 @1 +@129 := @121 @1 +@133 := {A : @12} -> @129 @19 @59 @90 +@134 := @128 @2 +@135 := @129 @2 +@136 := @135 @59 +@137 := @136 @90 +@138 := List.{0} +@139 := @138 @56 +@140 := @138 @88 +@141 := #6 +@142 := @13 @141 +@143 := #5 +@144 := @142 @143 +@145 := #4 +@148 := @144 @145 @14 @4 +@149 := #7 +@154 := @110 @149 @141 @143 @4 @17 +@155 := #8 +@158 := @110 @155 @149 @141 +@160 := @60 @143 @14 +@161 := @158 @160 +@162 := @58 @88 +@164 := @162 @145 @4 +@174 := {p : @10} -> + {c : @11} -> + {A : @12} -> + {v : @56} -> {t : @88} -> {vs : @139} -> {ts : @140} -> (h : @148) -> (hs : @154) -> @161 @164 +@176 := LexLeanPreservation.Rust.wtl_cons @0 +@196 := {c : @11} -> + {A : @12} -> + {v : @56} -> + {t : @88} -> + {vs : @139} -> + {ts : @140} -> + (h : @29 @143 @145 @14 @4) -> (hs : @121 @141 @143 @4 @17) -> @121 @149 @141 @160 @164 +@197 := @176 @1 +@213 := {A : @12} -> + {v : @56} -> + {t : @88} -> + {vs : @139} -> + {ts : @140} -> (h : @38 @145 @14 @4) -> (hs : @129 @143 @4 @17) -> @129 @141 @160 @164 +@214 := @197 @2 +@216 := @45 @14 @4 +@218 := @135 @4 @17 +@226 := {v : @56} -> + {t : @88} -> {vs : @139} -> {ts : @140} -> (h : @216) -> (hs : @218) -> @135 @160 @164 +@227 := @214 @52 +@228 := @5 @145 +@229 := @45 @228 +@230 := @229 @4 +@231 := @5 @141 +@232 := @60 @231 +@234 := @135 (@232 @14) +@240 := {t : @88} -> {vs : @139} -> {ts : @140} -> (h : @230) -> (hs : @218) -> @234 @164 +@241 := @227 @9 +@242 := @5 @14 +@244 := @45 @242 @9 +@245 := @5 @143 +@246 := @60 @245 +@248 := @135 (@246 @14) +@249 := @162 @9 +@250 := @249 @4 +@255 := {vs : @139} -> {ts : @140} -> (h : @244) -> (hs : @218) -> @248 @250 +@256 := @241 @59 +@257 := @136 @17 +@258 := @60 @228 +@259 := @258 @59 +@264 := {ts : @140} -> (h : @51) -> (hs : @257) -> @135 @259 @250 +@265 := @256 @90 +@266 := @60 @242 +@267 := @266 @59 +@268 := @135 @267 +@269 := @249 @90 +@272 := (h : @55) -> (hs : @137) -> @268 @269 +@273 := @265 @53 +@274 := @63 @59 +@276 := @135 @274 @269 +@277 := (hs : @137) -> @276 +@278 := @273 @134 +@280 := @135 @62 @269 +@281 := @214 @6 +@283 := @45 @245 @4 +@284 := @5 @149 +@285 := @60 @284 +@293 := {t : @88} -> {vs : @139} -> {ts : @140} -> (h : @283) -> (hs : @218) -> @135 (@285 @14) @164 +@294 := @281 @9 +@300 := {vs : @139} -> {ts : @140} -> (h : @229 @9) -> (hs : @218) -> @234 @250 +@301 := @294 @62 +@302 := @268 @17 +@303 := @246 @259 +@304 := @135 @303 +@308 := {ts : @140} -> (h : @244) -> (hs : @302) -> @304 @250 +@309 := @301 @269 +@310 := @258 @267 +@311 := @135 @310 +@312 := @249 @269 +@315 := (h : @51) -> (hs : @276) -> @311 @312 +@316 := @309 @49 +@317 := @266 @274 +@318 := @135 @317 +@320 := (hs : @280) -> @318 @312 +@321 := @316 @278 +@322 := @135 @64 +@323 := @322 @312 +@324 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.denote +@326 := @324 @4 @17 +@327 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.__fits_0 +@329 := @327 @4 @17 +@332 := Coverage.Prims.fixedSmall @4 @17 +@333 := Option.{0} +@334 := @333 @3 +@335 := @66 @334 +@336 := @335 @334 +@337 := @335 @336 +@338 := @335 @337 +@341 := LexLeanPreservation.encOption @3 @5 +@343 := LexLeanPreservation.encPair @334 +@346 := @343 @334 @341 @341 +@349 := @343 @336 @341 @346 +@352 := @343 @337 @341 @349 +@356 := @343 @338 @341 @352 @332 +@359 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.root @4 @17 +@360 := Bool +@361 := Ne.{1} +@362 := LexLeanPreservation.Obs +@363 := @361 @362 +@364 := LexLeanPreservation.Rel +@367 := @363 (@364 @17 @19) +@368 := LexLeanPreservation.Obs.stuck +@371 := (f : @360) -> (v : @56) -> @367 @368 +@373 := LexLeanPreservation.Rust.rel_ne_stuck @329 +@380 := (v : @56) -> @363 (@364 (@327 @14 @4) @19) @368 +@381 := @373 @356 +@385 := @363 (@364 @329 @356) @368 +@386 := @138 @68 +@387 := LexLeanPreservation.Rust.FunSem +@388 := #9 +@394 := (n : @65) -> @387 @388 @155 @149 @19 @141 +@395 := Eq.{1} +@396 := @333 @85 +@397 := @395 @396 +@404 := LexLeanRuntime.index (@138 @85) @85 (LexLeanRuntime.instIndexableList @85) +@408 := @397 (@404 (@86 @388) @141) +@409 := Option.some.{0} +@410 := @409 @85 +@411 := @410 @143 +@412 := @408 @411 +@413 := #10 +@417 := @110 @413 @388 @155 @143 +@418 := LexLeanTarget.TargetSyntax.Function.types +@419 := @418 @141 +@420 := @417 @419 +@421 := @333 @386 +@422 := @395 @421 +@423 := LexLeanTarget.TargetSemantics.bindAll +@424 := LexLeanTarget.TargetSyntax.Function.parameters +@429 := @422 (@423 (@424 @149) @141 @78) +@430 := @409 @386 +@431 := @430 @143 +@432 := @429 @431 +@433 := @333 @360 +@434 := @395 @433 +@435 := LexLeanPreservation.Rust.fnFallible +@436 := #11 +@439 := @434 (@435 @436 @388) +@440 := @409 @360 +@441 := @440 @143 +@442 := @439 @441 +@443 := LexLeanPreservation.RunConv +@444 := #13 +@448 := @443 @444 @413 @155 @143 +@450 := @363 @141 @368 +@451 := Exists.{1} +@452 := LexLeanPreservation.Rust.ROut +@453 := @451 @452 +@454 := And +@455 := LexLeanPreservation.Rust.RealizesFn +@459 := @454 (@455 @388 @155 @19) +@460 := LexLeanPreservation.Rust.RCI +@462 := @460 #15 +@463 := LexLeanPreservation.Rust.fnIdent +@464 := @463 @444 +@471 := (hne : @450) -> @453 (fun (ro : @452) => @459 (@462 @464 @436 @19)) +@486 := {p : @10} -> + {c : @11} -> + {A : @12} -> + {f : @65} -> + {fn : @85} -> + {args : @139} -> + {env : @386} -> + {F : @360} -> + {o : @362} -> + (hB : @394) -> + (hfn : @412) -> (hwt : @420) -> (hbind : @432) -> (hF : @442) -> (hA : @448) -> @471 +@488 := LexLeanPreservation.Rust.compose @0 +@489 := @387 @0 +@494 := (n : @65) -> @489 @155 @149 @19 @141 +@495 := @404 @87 +@498 := @397 (@495 @141) @411 +@502 := @121 @388 @155 @143 @419 +@503 := @443 @0 +@506 := @503 @413 @155 @143 +@520 := {c : @11} -> + {A : @12} -> + {f : @65} -> + {fn : @85} -> + {args : @139} -> + {env : @386} -> + {F : @360} -> + {o : @362} -> + (hB : @494) -> + (hfn : @498) -> (hwt : @502) -> (hbind : @432) -> (hF : @442) -> (hA : @506) -> @471 +@521 := @488 @1 +@522 := @489 @1 +@526 := (n : @65) -> @522 @149 @19 @141 +@529 := @129 @155 @143 @419 +@530 := @435 @1 +@533 := @434 (@530 @388) @441 +@534 := @460 @1 +@544 := (hbind : @432) -> + (hF : @533) -> (hA : @506) -> (hne : @450) -> @453 (fun (ro : @452) => @459 (@534 @464 @436 @19)) +@554 := {A : @12} -> + {f : @65} -> + {fn : @85} -> + {args : @139} -> + {env : @386} -> {F : @360} -> {o : @362} -> (hB : @526) -> (hfn : @498) -> (hwt : @529) -> @544 +@555 := @521 @2 +@557 := @522 @2 @19 +@559 := (n : @65) -> @557 @141 +@560 := @135 @143 +@561 := @560 @419 +@570 := {f : @65} -> + {fn : @85} -> + {args : @139} -> + {env : @386} -> {F : @360} -> {o : @362} -> (hB : @559) -> (hfn : @498) -> (hwt : @561) -> @544 +@571 := @555 @75 +@573 := (n : @65) -> @557 @75 +@574 := @495 @75 +@575 := @397 @574 +@576 := @575 @411 +@577 := @530 @75 +@578 := @434 @577 +@579 := @578 @441 +@580 := @503 @75 +@582 := @580 @155 @143 +@584 := @534 (@463 @75) +@592 := (hF : @579) -> (hA : @582) -> (hne : @450) -> @453 (fun (ro : @452) => @459 (@584 @436 @19)) +@601 := {fn : @85} -> + {args : @139} -> + {env : @386} -> + {F : @360} -> {o : @362} -> (hB : @573) -> (hfn : @576) -> (hwt : @561) -> (hbind : @432) -> @592 +@602 := @571 @105 +@604 := @575 (@410 @105) +@605 := @418 @105 +@606 := @560 @605 +@608 := @423 (@424 @105) +@620 := {args : @139} -> + {env : @386} -> + {F : @360} -> + {o : @362} -> + (hB : @573) -> (hfn : @604) -> (hwt : @606) -> (hbind : @422 (@608 @141 @78) @431) -> @592 +@621 := @602 @64 +@623 := @285 (@232 @59) +@625 := @135 @623 @605 +@627 := @60 (@5 @155) +@629 := @627 (@285 @59) +@633 := @422 (@608 @629 @78) @431 +@635 := @60 (@5 @413) +@637 := @60 (@5 @388) +@639 := @635 (@637 @59) +@641 := @580 @639 @143 +@643 := @60 (@5 @444) +@646 := @60 (@5 #12) +@663 := {env : @386} -> + {F : @360} -> + {o : @362} -> + (hB : @573) -> + (hfn : @604) -> + (hwt : @625) -> + (hbind : @633) -> + (hF : @579) -> + (hA : @641) -> (hne : @450) -> @453 (fun (ro : @452) => @459 (@584 (@643 (@646 @59)) @19)) +@664 := @621 @83 +@666 := @232 (@246 @59) +@668 := @135 @666 @605 +@679 := @422 (@608 @623 @78) (@430 (@79 (@73 @231) (@79 (@76 @284) @78))) +@681 := @637 (@627 @59) +@683 := @580 @681 @143 +@685 := @60 (@5 @436) +@701 := {F : @360} -> + {o : @362} -> + (hB : @573) -> + (hfn : @604) -> + (hwt : @668) -> + (hbind : @679) -> + (hF : @579) -> + (hA : @683) -> (hne : @450) -> @453 (fun (ro : @452) => @459 (@584 (@646 (@685 @59)) @19)) +@702 := @664 @84 +@703 := @304 @605 +@714 := @422 (@608 @666 @78) (@430 (@79 (@73 @245) (@79 (@76 @231) @78))) +@716 := @578 (@440 @84) +@718 := @580 @629 @143 +@719 := @455 @84 +@737 := {o : @362} -> + (hB : @573) -> + (hfn : @604) -> + (hwt : @703) -> + (hbind : @714) -> + (hF : @716) -> + (hA : @718) -> + (hne : @450) -> @453 (fun (ro : @452) => @454 (@719 @155 @19) (@584 (@685 (@635 @59)) @19)) +@738 := @702 @326 +@739 := @311 @605 +@750 := @422 (@608 @303 @78) (@430 (@79 (@73 @228) (@79 (@76 @245) @78))) +@751 := @580 @623 +@753 := @324 @149 @141 +@754 := @751 @753 +@756 := @324 @155 @149 +@775 := (hB : @573) -> + (hfn : @604) -> + (hwt : @739) -> + (hbind : @750) -> + (hF : @716) -> + (hA : @754) -> + (hne : @363 @756 @368) -> + @453 (fun (ro : @452) => @454 (@719 (@324 @413 @388) @19) (@584 @639 @19)) +@776 := @738 @109 +@777 := @318 @605 +@788 := @422 (@608 @310 @78) (@430 (@79 (@73 @242) (@79 (@76 @228) @78))) +@789 := @580 @666 +@791 := @324 @141 @143 +@810 := (hfn : @604) -> + (hwt : @777) -> + (hbind : @788) -> + (hF : @716) -> + (hA : @789 @791) -> + (hne : @363 @753 @368) -> + @453 (fun (ro : @452) => @454 (@719 (@324 @388 @155) @19) (@584 @681 @19)) +@811 := Eq.refl.{1} +@814 := @776 (@811 @396 @574) +@815 := @322 @605 +@826 := @422 (@608 @317 @78) (@430 (@79 (@73 @6) (@79 (@76 @242) @78))) +@827 := @580 @303 +@829 := @324 @143 @145 +@845 := (hwt : @815) -> + (hbind : @826) -> + (hF : @716) -> + (hA : @827 @829) -> + (hne : @363 @791 @368) -> @453 (fun (ro : @452) => @454 (@719 @756 @19) (@584 @629 @19)) +@846 := @814 @321 +@848 := @608 @64 @78 +@851 := @422 @848 (@430 @83) +@852 := @580 @310 +@854 := @324 @145 @14 +@869 := (hbind : @851) -> + (hF : @716) -> + (hA : @852 @854) -> + (hne : @363 @829 @368) -> @453 (fun (ro : @452) => @454 (@719 @753 @19) (@584 @623 @19)) +@872 := @846 (@811 @421 @848) +@873 := @580 @317 +@875 := @324 @14 @4 +@889 := (hF : @716) -> + (hA : @873 @875) -> + (hne : @363 @854 @368) -> @453 (fun (ro : @452) => @454 (@719 @791 @19) (@584 @666 @19)) +@892 := @872 (@811 @433 @577) +@906 := (hA : @580 @64 @326) -> + (hne : @363 @875 @368) -> @453 (fun (ro : @452) => @454 (@719 @829 @19) (@584 @303 @19)) +@907 := @892 @359 +@918 := (hne : @363 @326 @368) -> @453 (fun (ro : @452) => @454 (@719 @854 @19) (@584 @310 @19)) +@919 := @907 @381 +@925 := @454 (@719 @875 @19) (@584 @317 @19) +@927 := @453 (fun (ro : @452) => @925) +@929 := @453 (fun (__e_ro : @452) => @925) +@934 := LexLeanPreservation.Rust.RepresentableL (@61 (@60 @20 @59)) +@935 := (__e_hrep : @934) -> @929 +@936 := fun (__e_hrep : @934) => @919 +@937 := (b : @3) -> @935 +@938 := fun (b : @3) => @936 +@939 := (a : @3) -> @937 +@940 := fun (a : @3) => @938 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R21/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R21/Compose/RustStd.lex.tex new file mode 100644 index 000000000..6642e639a --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R21/Compose/RustStd.lex.tex @@ -0,0 +1,475 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.Compose.RustStd.root : @939 := @940 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.RustStd.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.RustStd.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.RustStd.flags +@3 := Int8 +@4 := #2 +@5 := LexLeanTarget.TargetSyntax.Value.i8 +@6 := @5 @4 +@9 := LexLeanTarget.TargetSyntax.Ty.fixed LexLeanTarget.TargetSyntax.IntKind.i8 +@10 := LexLeanTarget.TargetSyntax.Program +@11 := LexLeanPreservation.Rust.RCrate +@12 := LexLeanPreservation.Rust.Flags +@13 := LexLeanPreservation.Rust.WT +@14 := #3 +@16 := @13 @14 @4 +@17 := #1 +@18 := @16 @17 +@19 := #0 +@20 := @5 @19 +@26 := {p : @10} -> {c : @11} -> {A : @12} -> (x : @3) -> @18 @20 @9 +@28 := LexLeanPreservation.Rust.wt_i8 @0 +@29 := @13 @0 +@36 := {c : @11} -> {A : @12} -> (x : @3) -> @29 @4 @17 @20 @9 +@37 := @28 @1 +@38 := @29 @1 +@43 := {A : @12} -> (x : @3) -> @38 @17 @20 @9 +@44 := @37 @2 +@45 := @38 @2 +@48 := (x : @3) -> @45 @20 @9 +@49 := @44 @4 +@51 := @45 @6 @9 +@52 := @5 @17 +@53 := @44 @17 +@55 := @45 @52 @9 +@56 := LexLeanTarget.TargetSyntax.Value +@57 := List.nil.{0} +@58 := List.cons.{0} +@59 := @57 @56 +@60 := @58 @56 +@61 := @60 @52 +@62 := @61 @59 +@63 := @60 @6 +@64 := @63 @62 +@65 := Nat +@66 := Prod.{0, 0} +@68 := @66 @65 @56 +@69 := 1 +@72 := Prod.mk.{0, 0} @65 @56 +@73 := @72 @69 +@74 := @73 @52 +@75 := 0 +@76 := @72 @75 +@77 := @76 @6 +@78 := @57 @68 +@79 := @58 @68 +@81 := @79 @77 @78 +@83 := @79 @74 @81 +@84 := Bool.false +@85 := LexLeanTarget.TargetSyntax.Function +@86 := LexLeanTarget.TargetSyntax.Program.functions +@87 := @86 @0 +@88 := LexLeanTarget.TargetSyntax.Ty +@89 := @57 @65 +@90 := @57 @88 +@91 := LexLeanTarget.TargetSyntax.Ty.unit +@92 := LexLeanTarget.TargetSyntax.Value.unit +@95 := LexLeanTarget.TargetSyntax.Expr.value @91 @92 +@100 := LexLeanTarget.TargetSyntax.Function.mk @89 @90 @91 @95 +@105 := List.getD.{0} @85 @87 @75 @100 +@109 := fun (__e_n : @65) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.RustStd.root @19 @75 +@110 := LexLeanPreservation.Rust.WTL +@118 := {p : @10} -> {c : @11} -> {A : @12} -> @110 @4 @17 @19 @59 @90 +@120 := LexLeanPreservation.Rust.wtl_nil @0 +@121 := @110 @0 +@127 := {c : @11} -> {A : @12} -> @121 @17 @19 @59 @90 +@128 := @120 @1 +@129 := @121 @1 +@133 := {A : @12} -> @129 @19 @59 @90 +@134 := @128 @2 +@135 := @129 @2 +@136 := @135 @59 +@137 := @136 @90 +@138 := List.{0} +@139 := @138 @56 +@140 := @138 @88 +@141 := #6 +@142 := @13 @141 +@143 := #5 +@144 := @142 @143 +@145 := #4 +@148 := @144 @145 @14 @4 +@149 := #7 +@154 := @110 @149 @141 @143 @4 @17 +@155 := #8 +@158 := @110 @155 @149 @141 +@160 := @60 @143 @14 +@161 := @158 @160 +@162 := @58 @88 +@164 := @162 @145 @4 +@174 := {p : @10} -> + {c : @11} -> + {A : @12} -> + {v : @56} -> {t : @88} -> {vs : @139} -> {ts : @140} -> (h : @148) -> (hs : @154) -> @161 @164 +@176 := LexLeanPreservation.Rust.wtl_cons @0 +@196 := {c : @11} -> + {A : @12} -> + {v : @56} -> + {t : @88} -> + {vs : @139} -> + {ts : @140} -> + (h : @29 @143 @145 @14 @4) -> (hs : @121 @141 @143 @4 @17) -> @121 @149 @141 @160 @164 +@197 := @176 @1 +@213 := {A : @12} -> + {v : @56} -> + {t : @88} -> + {vs : @139} -> + {ts : @140} -> (h : @38 @145 @14 @4) -> (hs : @129 @143 @4 @17) -> @129 @141 @160 @164 +@214 := @197 @2 +@216 := @45 @14 @4 +@218 := @135 @4 @17 +@226 := {v : @56} -> + {t : @88} -> {vs : @139} -> {ts : @140} -> (h : @216) -> (hs : @218) -> @135 @160 @164 +@227 := @214 @52 +@228 := @5 @145 +@229 := @45 @228 +@230 := @229 @4 +@231 := @5 @141 +@232 := @60 @231 +@234 := @135 (@232 @14) +@240 := {t : @88} -> {vs : @139} -> {ts : @140} -> (h : @230) -> (hs : @218) -> @234 @164 +@241 := @227 @9 +@242 := @5 @14 +@244 := @45 @242 @9 +@245 := @5 @143 +@246 := @60 @245 +@248 := @135 (@246 @14) +@249 := @162 @9 +@250 := @249 @4 +@255 := {vs : @139} -> {ts : @140} -> (h : @244) -> (hs : @218) -> @248 @250 +@256 := @241 @59 +@257 := @136 @17 +@258 := @60 @228 +@259 := @258 @59 +@264 := {ts : @140} -> (h : @51) -> (hs : @257) -> @135 @259 @250 +@265 := @256 @90 +@266 := @60 @242 +@267 := @266 @59 +@268 := @135 @267 +@269 := @249 @90 +@272 := (h : @55) -> (hs : @137) -> @268 @269 +@273 := @265 @53 +@274 := @63 @59 +@276 := @135 @274 @269 +@277 := (hs : @137) -> @276 +@278 := @273 @134 +@280 := @135 @62 @269 +@281 := @214 @6 +@283 := @45 @245 @4 +@284 := @5 @149 +@285 := @60 @284 +@293 := {t : @88} -> {vs : @139} -> {ts : @140} -> (h : @283) -> (hs : @218) -> @135 (@285 @14) @164 +@294 := @281 @9 +@300 := {vs : @139} -> {ts : @140} -> (h : @229 @9) -> (hs : @218) -> @234 @250 +@301 := @294 @62 +@302 := @268 @17 +@303 := @246 @259 +@304 := @135 @303 +@308 := {ts : @140} -> (h : @244) -> (hs : @302) -> @304 @250 +@309 := @301 @269 +@310 := @258 @267 +@311 := @135 @310 +@312 := @249 @269 +@315 := (h : @51) -> (hs : @276) -> @311 @312 +@316 := @309 @49 +@317 := @266 @274 +@318 := @135 @317 +@320 := (hs : @280) -> @318 @312 +@321 := @316 @278 +@322 := @135 @64 +@323 := @322 @312 +@324 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.denote +@326 := @324 @4 @17 +@327 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.__fits_0 +@329 := @327 @4 @17 +@332 := Coverage.Prims.fixedSmall @4 @17 +@333 := Option.{0} +@334 := @333 @3 +@335 := @66 @334 +@336 := @335 @334 +@337 := @335 @336 +@338 := @335 @337 +@341 := LexLeanPreservation.encOption @3 @5 +@343 := LexLeanPreservation.encPair @334 +@346 := @343 @334 @341 @341 +@349 := @343 @336 @341 @346 +@352 := @343 @337 @341 @349 +@356 := @343 @338 @341 @352 @332 +@359 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.root @4 @17 +@360 := Bool +@361 := Ne.{1} +@362 := LexLeanPreservation.Obs +@363 := @361 @362 +@364 := LexLeanPreservation.Rel +@367 := @363 (@364 @17 @19) +@368 := LexLeanPreservation.Obs.stuck +@371 := (f : @360) -> (v : @56) -> @367 @368 +@373 := LexLeanPreservation.Rust.rel_ne_stuck @329 +@380 := (v : @56) -> @363 (@364 (@327 @14 @4) @19) @368 +@381 := @373 @356 +@385 := @363 (@364 @329 @356) @368 +@386 := @138 @68 +@387 := LexLeanPreservation.Rust.FunSem +@388 := #9 +@394 := (n : @65) -> @387 @388 @155 @149 @19 @141 +@395 := Eq.{1} +@396 := @333 @85 +@397 := @395 @396 +@404 := LexLeanRuntime.index (@138 @85) @85 (LexLeanRuntime.instIndexableList @85) +@408 := @397 (@404 (@86 @388) @141) +@409 := Option.some.{0} +@410 := @409 @85 +@411 := @410 @143 +@412 := @408 @411 +@413 := #10 +@417 := @110 @413 @388 @155 @143 +@418 := LexLeanTarget.TargetSyntax.Function.types +@419 := @418 @141 +@420 := @417 @419 +@421 := @333 @386 +@422 := @395 @421 +@423 := LexLeanTarget.TargetSemantics.bindAll +@424 := LexLeanTarget.TargetSyntax.Function.parameters +@429 := @422 (@423 (@424 @149) @141 @78) +@430 := @409 @386 +@431 := @430 @143 +@432 := @429 @431 +@433 := @333 @360 +@434 := @395 @433 +@435 := LexLeanPreservation.Rust.fnFallible +@436 := #11 +@439 := @434 (@435 @436 @388) +@440 := @409 @360 +@441 := @440 @143 +@442 := @439 @441 +@443 := LexLeanPreservation.RunConv +@444 := #13 +@448 := @443 @444 @413 @155 @143 +@450 := @363 @141 @368 +@451 := Exists.{1} +@452 := LexLeanPreservation.Rust.ROut +@453 := @451 @452 +@454 := And +@455 := LexLeanPreservation.Rust.RealizesFn +@459 := @454 (@455 @388 @155 @19) +@460 := LexLeanPreservation.Rust.RCI +@462 := @460 #15 +@463 := LexLeanPreservation.Rust.fnIdent +@464 := @463 @444 +@471 := (hne : @450) -> @453 (fun (ro : @452) => @459 (@462 @464 @436 @19)) +@486 := {p : @10} -> + {c : @11} -> + {A : @12} -> + {f : @65} -> + {fn : @85} -> + {args : @139} -> + {env : @386} -> + {F : @360} -> + {o : @362} -> + (hB : @394) -> + (hfn : @412) -> (hwt : @420) -> (hbind : @432) -> (hF : @442) -> (hA : @448) -> @471 +@488 := LexLeanPreservation.Rust.compose @0 +@489 := @387 @0 +@494 := (n : @65) -> @489 @155 @149 @19 @141 +@495 := @404 @87 +@498 := @397 (@495 @141) @411 +@502 := @121 @388 @155 @143 @419 +@503 := @443 @0 +@506 := @503 @413 @155 @143 +@520 := {c : @11} -> + {A : @12} -> + {f : @65} -> + {fn : @85} -> + {args : @139} -> + {env : @386} -> + {F : @360} -> + {o : @362} -> + (hB : @494) -> + (hfn : @498) -> (hwt : @502) -> (hbind : @432) -> (hF : @442) -> (hA : @506) -> @471 +@521 := @488 @1 +@522 := @489 @1 +@526 := (n : @65) -> @522 @149 @19 @141 +@529 := @129 @155 @143 @419 +@530 := @435 @1 +@533 := @434 (@530 @388) @441 +@534 := @460 @1 +@544 := (hbind : @432) -> + (hF : @533) -> (hA : @506) -> (hne : @450) -> @453 (fun (ro : @452) => @459 (@534 @464 @436 @19)) +@554 := {A : @12} -> + {f : @65} -> + {fn : @85} -> + {args : @139} -> + {env : @386} -> {F : @360} -> {o : @362} -> (hB : @526) -> (hfn : @498) -> (hwt : @529) -> @544 +@555 := @521 @2 +@557 := @522 @2 @19 +@559 := (n : @65) -> @557 @141 +@560 := @135 @143 +@561 := @560 @419 +@570 := {f : @65} -> + {fn : @85} -> + {args : @139} -> + {env : @386} -> {F : @360} -> {o : @362} -> (hB : @559) -> (hfn : @498) -> (hwt : @561) -> @544 +@571 := @555 @75 +@573 := (n : @65) -> @557 @75 +@574 := @495 @75 +@575 := @397 @574 +@576 := @575 @411 +@577 := @530 @75 +@578 := @434 @577 +@579 := @578 @441 +@580 := @503 @75 +@582 := @580 @155 @143 +@584 := @534 (@463 @75) +@592 := (hF : @579) -> (hA : @582) -> (hne : @450) -> @453 (fun (ro : @452) => @459 (@584 @436 @19)) +@601 := {fn : @85} -> + {args : @139} -> + {env : @386} -> + {F : @360} -> {o : @362} -> (hB : @573) -> (hfn : @576) -> (hwt : @561) -> (hbind : @432) -> @592 +@602 := @571 @105 +@604 := @575 (@410 @105) +@605 := @418 @105 +@606 := @560 @605 +@608 := @423 (@424 @105) +@620 := {args : @139} -> + {env : @386} -> + {F : @360} -> + {o : @362} -> + (hB : @573) -> (hfn : @604) -> (hwt : @606) -> (hbind : @422 (@608 @141 @78) @431) -> @592 +@621 := @602 @64 +@623 := @285 (@232 @59) +@625 := @135 @623 @605 +@627 := @60 (@5 @155) +@629 := @627 (@285 @59) +@633 := @422 (@608 @629 @78) @431 +@635 := @60 (@5 @413) +@637 := @60 (@5 @388) +@639 := @635 (@637 @59) +@641 := @580 @639 @143 +@643 := @60 (@5 @444) +@646 := @60 (@5 #12) +@663 := {env : @386} -> + {F : @360} -> + {o : @362} -> + (hB : @573) -> + (hfn : @604) -> + (hwt : @625) -> + (hbind : @633) -> + (hF : @579) -> + (hA : @641) -> (hne : @450) -> @453 (fun (ro : @452) => @459 (@584 (@643 (@646 @59)) @19)) +@664 := @621 @83 +@666 := @232 (@246 @59) +@668 := @135 @666 @605 +@679 := @422 (@608 @623 @78) (@430 (@79 (@73 @231) (@79 (@76 @284) @78))) +@681 := @637 (@627 @59) +@683 := @580 @681 @143 +@685 := @60 (@5 @436) +@701 := {F : @360} -> + {o : @362} -> + (hB : @573) -> + (hfn : @604) -> + (hwt : @668) -> + (hbind : @679) -> + (hF : @579) -> + (hA : @683) -> (hne : @450) -> @453 (fun (ro : @452) => @459 (@584 (@646 (@685 @59)) @19)) +@702 := @664 @84 +@703 := @304 @605 +@714 := @422 (@608 @666 @78) (@430 (@79 (@73 @245) (@79 (@76 @231) @78))) +@716 := @578 (@440 @84) +@718 := @580 @629 @143 +@719 := @455 @84 +@737 := {o : @362} -> + (hB : @573) -> + (hfn : @604) -> + (hwt : @703) -> + (hbind : @714) -> + (hF : @716) -> + (hA : @718) -> + (hne : @450) -> @453 (fun (ro : @452) => @454 (@719 @155 @19) (@584 (@685 (@635 @59)) @19)) +@738 := @702 @326 +@739 := @311 @605 +@750 := @422 (@608 @303 @78) (@430 (@79 (@73 @228) (@79 (@76 @245) @78))) +@751 := @580 @623 +@753 := @324 @149 @141 +@754 := @751 @753 +@756 := @324 @155 @149 +@775 := (hB : @573) -> + (hfn : @604) -> + (hwt : @739) -> + (hbind : @750) -> + (hF : @716) -> + (hA : @754) -> + (hne : @363 @756 @368) -> + @453 (fun (ro : @452) => @454 (@719 (@324 @413 @388) @19) (@584 @639 @19)) +@776 := @738 @109 +@777 := @318 @605 +@788 := @422 (@608 @310 @78) (@430 (@79 (@73 @242) (@79 (@76 @228) @78))) +@789 := @580 @666 +@791 := @324 @141 @143 +@810 := (hfn : @604) -> + (hwt : @777) -> + (hbind : @788) -> + (hF : @716) -> + (hA : @789 @791) -> + (hne : @363 @753 @368) -> + @453 (fun (ro : @452) => @454 (@719 (@324 @388 @155) @19) (@584 @681 @19)) +@811 := Eq.refl.{1} +@814 := @776 (@811 @396 @574) +@815 := @322 @605 +@826 := @422 (@608 @317 @78) (@430 (@79 (@73 @6) (@79 (@76 @242) @78))) +@827 := @580 @303 +@829 := @324 @143 @145 +@845 := (hwt : @815) -> + (hbind : @826) -> + (hF : @716) -> + (hA : @827 @829) -> + (hne : @363 @791 @368) -> @453 (fun (ro : @452) => @454 (@719 @756 @19) (@584 @629 @19)) +@846 := @814 @321 +@848 := @608 @64 @78 +@851 := @422 @848 (@430 @83) +@852 := @580 @310 +@854 := @324 @145 @14 +@869 := (hbind : @851) -> + (hF : @716) -> + (hA : @852 @854) -> + (hne : @363 @829 @368) -> @453 (fun (ro : @452) => @454 (@719 @753 @19) (@584 @623 @19)) +@872 := @846 (@811 @421 @848) +@873 := @580 @317 +@875 := @324 @14 @4 +@889 := (hF : @716) -> + (hA : @873 @875) -> + (hne : @363 @854 @368) -> @453 (fun (ro : @452) => @454 (@719 @791 @19) (@584 @666 @19)) +@892 := @872 (@811 @433 @577) +@906 := (hA : @580 @64 @326) -> + (hne : @363 @875 @368) -> @453 (fun (ro : @452) => @454 (@719 @829 @19) (@584 @303 @19)) +@907 := @892 @359 +@918 := (hne : @363 @326 @368) -> @453 (fun (ro : @452) => @454 (@719 @854 @19) (@584 @310 @19)) +@919 := @907 @381 +@925 := @454 (@719 @875 @19) (@584 @317 @19) +@927 := @453 (fun (ro : @452) => @925) +@929 := @453 (fun (__e_ro : @452) => @925) +@934 := LexLeanPreservation.Rust.RepresentableL (@61 (@60 @20 @59)) +@935 := (__e_hrep : @934) -> @929 +@936 := fun (__e_hrep : @934) => @919 +@937 := (b : @3) -> @935 +@938 := fun (b : @3) => @936 +@939 := (a : @3) -> @937 +@940 := fun (a : @3) => @938 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R21/RustCore.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R21/RustCore.lean new file mode 100644 index 000000000..cd3b8990b --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R21/RustCore.lean @@ -0,0 +1,33 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.RustCore +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1], types := [(.fixed .i8), (.fixed .i8)], result := (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.option (.fixed .i8)))))), + body := (.build .pair (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.option (.fixed .i8)))))) [(.prim .checkedAdd [(.var 0), (.var 1)]), (.build .pair (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.option (.fixed .i8))))) [(.prim .checkedSub [(.var 0), (.var 1)]), (.build .pair (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.option (.fixed .i8)))) [(.prim .checkedMul [(.var 0), (.var 1)]), (.build .pair (.pair (.option (.fixed .i8)) (.option (.fixed .i8))) [(.prim .checkedQuot [(.var 0), (.var 1)]), (.prim .checkedNeg [(.var 0)])])])])]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .core, items := [ + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.fixed .i8) }, { pattern := (.bind (.generated .binding 1)), type := (.fixed .i8) }] (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.option (.fixed .i8)))))) (.mk [] (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedAdd .i8)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedSub .i8)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedMul .i8)) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedQuot .i8)) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false))) (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 0)))] (.call (.runtime (.checkedNeg .i8)) [(.move (.generated .operand 9))] false)))))))))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [], (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedAdd .i8)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedSub .i8)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedMul .i8)) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedQuot .i8)) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false))) (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 0)))] (.call (.runtime (.checkedNeg .i8)) [(.move (.generated .operand 9))] false))))))), [(1, (.fixed .i8), (some 1)), (0, (.fixed .i8), (some 0))], rfl, rfl, + (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.checkedAdd .i8)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false)) (Corr.prim (ts := [(.fixed .i8), (.fixed .i8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.checkedSub .i8)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false)) (Corr.prim (ts := [(.fixed .i8), (.fixed .i8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.checkedMul .i8)) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false)) (Corr.prim (ts := [(.fixed .i8), (.fixed .i8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.checkedQuot .i8)) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false)) (Corr.prim (ts := [(.fixed .i8), (.fixed .i8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 0)))]) (tail := (.call (.runtime (.checkedNeg .i8)) [(.move (.generated .operand 9))] false)) (Corr.prim (ts := [(.fixed .i8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | _ + 1 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.RustCore diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R21/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R21/RustStd.lean new file mode 100644 index 000000000..b22784e9d --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R21/RustStd.lean @@ -0,0 +1,33 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1], types := [(.fixed .i8), (.fixed .i8)], result := (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.option (.fixed .i8)))))), + body := (.build .pair (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.option (.fixed .i8)))))) [(.prim .checkedAdd [(.var 0), (.var 1)]), (.build .pair (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.option (.fixed .i8))))) [(.prim .checkedSub [(.var 0), (.var 1)]), (.build .pair (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.option (.fixed .i8)))) [(.prim .checkedMul [(.var 0), (.var 1)]), (.build .pair (.pair (.option (.fixed .i8)) (.option (.fixed .i8))) [(.prim .checkedQuot [(.var 0), (.var 1)]), (.prim .checkedNeg [(.var 0)])])])])]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.fixed .i8) }, { pattern := (.bind (.generated .binding 1)), type := (.fixed .i8) }] (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.option (.fixed .i8)))))) (.mk [] (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedAdd .i8)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedSub .i8)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedMul .i8)) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedQuot .i8)) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false))) (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 0)))] (.call (.runtime (.checkedNeg .i8)) [(.move (.generated .operand 9))] false)))))))))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [], (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedAdd .i8)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedSub .i8)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedMul .i8)) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedQuot .i8)) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false))) (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 0)))] (.call (.runtime (.checkedNeg .i8)) [(.move (.generated .operand 9))] false))))))), [(1, (.fixed .i8), (some 1)), (0, (.fixed .i8), (some 0))], rfl, rfl, + (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.checkedAdd .i8)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false)) (Corr.prim (ts := [(.fixed .i8), (.fixed .i8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.checkedSub .i8)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false)) (Corr.prim (ts := [(.fixed .i8), (.fixed .i8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.checkedMul .i8)) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false)) (Corr.prim (ts := [(.fixed .i8), (.fixed .i8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.checkedQuot .i8)) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false)) (Corr.prim (ts := [(.fixed .i8), (.fixed .i8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 0)))]) (tail := (.call (.runtime (.checkedNeg .i8)) [(.move (.generated .operand 9))] false)) (Corr.prim (ts := [(.fixed .i8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | _ + 1 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R22.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R22.lean similarity index 97% rename from examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R22.lean rename to examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R22.lean index 8fe02a672..c438832e9 100644 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R22.lean +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R22.lean @@ -18,7 +18,7 @@ set_option maxRecDepth 100000 set_option maxHeartbeats 0 set_option synthInstance.maxHeartbeats 0 set_option linter.unusedVariables false -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22 def __prog : _root_.LexLeanTarget.TargetSyntax.Program := { adts := [], functions := [ @@ -37,4 +37,4 @@ def denote (a : Int16) (b : Int32) : _root_.LexLeanPreservation.Obs := theorem root (a : Int16) (b : Int32) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.i16 a), (_root_.LexLeanTarget.TargetSyntax.Value.i32 b)] (_root_.LexLeanPreservation.Rel (__fits_0 a b) ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.i16) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.i32) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.i32) _root_.LexLeanTarget.TargetSyntax.Value.bool))) (Coverage.Prims.fixedMiddle a b))) := _root_.LexLeanPreservation.run_of_funRel (__rel_0 a b) -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22 +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22 diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R22/Compose/RustCore.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R22/Compose/RustCore.lex.tex new file mode 100644 index 000000000..a45361f75 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R22/Compose/RustCore.lex.tex @@ -0,0 +1,501 @@ +\begin{lexlean}{RustCore} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.Compose.RustCore} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.RustCore, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.Compose.RustCore.root : @1000 := @1001 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.Compose.RustCore.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.RustCore.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.RustCore.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.RustCore.flags +@3 := Int16 +@4 := #2 +@5 := LexLeanTarget.TargetSyntax.Value.i16 +@6 := @5 @4 +@7 := LexLeanTarget.TargetSyntax.Ty.fixed +@9 := @7 LexLeanTarget.TargetSyntax.IntKind.i16 +@10 := LexLeanTarget.TargetSyntax.Program +@11 := LexLeanPreservation.Rust.RCrate +@12 := LexLeanPreservation.Rust.Flags +@13 := LexLeanPreservation.Rust.WT +@14 := #3 +@16 := @13 @14 @4 +@17 := #1 +@18 := @16 @17 +@19 := #0 +@20 := @5 @19 +@26 := {p : @10} -> {c : @11} -> {A : @12} -> (x : @3) -> @18 @20 @9 +@28 := LexLeanPreservation.Rust.wt_i16 @0 +@29 := @13 @0 +@31 := @29 @4 @17 +@36 := {c : @11} -> {A : @12} -> (x : @3) -> @31 @20 @9 +@37 := @28 @1 +@38 := @29 @1 +@39 := @38 @17 +@43 := {A : @12} -> (x : @3) -> @39 @20 @9 +@44 := @37 @2 +@45 := @38 @2 +@48 := (x : @3) -> @45 @20 @9 +@49 := @44 @4 +@51 := @45 @6 @9 +@52 := Int32 +@53 := LexLeanTarget.TargetSyntax.Value.i32 +@54 := @53 @17 +@56 := @7 LexLeanTarget.TargetSyntax.IntKind.i32 +@57 := @53 @19 +@63 := {p : @10} -> {c : @11} -> {A : @12} -> (x : @52) -> @18 @57 @56 +@65 := LexLeanPreservation.Rust.wt_i32 @0 +@70 := {c : @11} -> {A : @12} -> (x : @52) -> @31 @57 @56 +@71 := @65 @1 +@75 := {A : @12} -> (x : @52) -> @39 @57 @56 +@76 := @71 @2 +@79 := (x : @52) -> @45 @57 @56 +@80 := @76 @17 +@82 := @45 @54 @56 +@83 := LexLeanTarget.TargetSyntax.Value +@84 := List.nil.{0} +@85 := List.cons.{0} +@86 := @84 @83 +@87 := @85 @83 +@89 := @87 @54 @86 +@91 := @87 @6 @89 +@92 := Nat +@93 := Prod.{0, 0} +@95 := @93 @92 @83 +@96 := 1 +@99 := Prod.mk.{0, 0} @92 @83 +@100 := @99 @96 +@101 := @100 @54 +@102 := 0 +@103 := @99 @102 +@104 := @103 @6 +@105 := @84 @95 +@106 := @85 @95 +@108 := @106 @104 @105 +@110 := @106 @101 @108 +@111 := Bool.false +@112 := LexLeanTarget.TargetSyntax.Function +@113 := LexLeanTarget.TargetSyntax.Program.functions +@114 := @113 @0 +@115 := LexLeanTarget.TargetSyntax.Ty +@116 := @84 @92 +@117 := @84 @115 +@118 := LexLeanTarget.TargetSyntax.Ty.unit +@119 := LexLeanTarget.TargetSyntax.Value.unit +@122 := LexLeanTarget.TargetSyntax.Expr.value @118 @119 +@127 := LexLeanTarget.TargetSyntax.Function.mk @116 @117 @118 @122 +@132 := List.getD.{0} @112 @114 @102 @127 +@136 := fun (__e_n : @92) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.RustCore.root @19 @102 +@137 := LexLeanPreservation.Rust.WTL +@145 := {p : @10} -> {c : @11} -> {A : @12} -> @137 @4 @17 @19 @86 @117 +@147 := LexLeanPreservation.Rust.wtl_nil @0 +@148 := @137 @0 +@154 := {c : @11} -> {A : @12} -> @148 @17 @19 @86 @117 +@155 := @147 @1 +@156 := @148 @1 +@160 := {A : @12} -> @156 @19 @86 @117 +@161 := @155 @2 +@162 := @156 @2 +@163 := @162 @86 +@164 := @163 @117 +@165 := List.{0} +@166 := @165 @83 +@167 := @165 @115 +@168 := #6 +@169 := @13 @168 +@170 := #5 +@171 := @169 @170 +@172 := #4 +@175 := @171 @172 @14 @4 +@176 := #7 +@181 := @137 @176 @168 @170 @4 @17 +@182 := #8 +@185 := @137 @182 @176 @168 +@187 := @87 @170 @14 +@188 := @185 @187 +@189 := @85 @115 +@191 := @189 @172 @4 +@201 := {p : @10} -> + {c : @11} -> + {A : @12} -> + {v : @83} -> {t : @115} -> {vs : @166} -> {ts : @167} -> (h : @175) -> (hs : @181) -> @188 @191 +@203 := LexLeanPreservation.Rust.wtl_cons @0 +@223 := {c : @11} -> + {A : @12} -> + {v : @83} -> + {t : @115} -> + {vs : @166} -> + {ts : @167} -> + (h : @29 @170 @172 @14 @4) -> (hs : @148 @168 @170 @4 @17) -> @148 @176 @168 @187 @191 +@224 := @203 @1 +@240 := {A : @12} -> + {v : @83} -> + {t : @115} -> + {vs : @166} -> + {ts : @167} -> (h : @38 @172 @14 @4) -> (hs : @156 @170 @4 @17) -> @156 @168 @187 @191 +@241 := @224 @2 +@243 := @45 @14 @4 +@245 := @162 @4 @17 +@253 := {v : @83} -> + {t : @115} -> {vs : @166} -> {ts : @167} -> (h : @243) -> (hs : @245) -> @162 @187 @191 +@254 := @241 @54 +@255 := @53 @172 +@257 := @45 @255 @4 +@258 := @53 @168 +@259 := @87 @258 +@267 := {t : @115} -> + {vs : @166} -> {ts : @167} -> (h : @257) -> (hs : @245) -> @162 (@259 @14) @191 +@268 := @254 @56 +@269 := @53 @14 +@271 := @45 @269 @56 +@272 := @53 @170 +@273 := @87 @272 +@275 := @162 (@273 @14) +@276 := @189 @56 +@277 := @276 @4 +@282 := {vs : @166} -> {ts : @167} -> (h : @271) -> (hs : @245) -> @275 @277 +@283 := @268 @86 +@284 := @53 @4 +@286 := @45 @284 @56 +@287 := @163 @17 +@289 := @87 @255 @86 +@294 := {ts : @167} -> (h : @286) -> (hs : @287) -> @162 @289 @277 +@295 := @283 @117 +@297 := @87 @269 @86 +@298 := @162 @297 +@299 := @276 @117 +@302 := (h : @82) -> (hs : @164) -> @298 @299 +@303 := @295 @80 +@305 := @87 @284 @86 +@307 := @162 @305 @299 +@308 := (hs : @164) -> @307 +@309 := @303 @161 +@311 := @162 @89 @299 +@312 := @241 @6 +@313 := @5 @170 +@315 := @45 @313 @4 +@316 := @5 @176 +@317 := @87 @316 +@325 := {t : @115} -> + {vs : @166} -> {ts : @167} -> (h : @315) -> (hs : @245) -> @162 (@317 @14) @191 +@326 := @312 @9 +@327 := @5 @172 +@329 := @45 @327 @9 +@330 := @5 @168 +@331 := @87 @330 +@333 := @162 (@331 @14) +@334 := @189 @9 +@335 := @334 @4 +@340 := {vs : @166} -> {ts : @167} -> (h : @329) -> (hs : @245) -> @333 @335 +@341 := @326 @89 +@342 := @5 @14 +@344 := @45 @342 @9 +@345 := @298 @17 +@347 := @87 @313 @289 +@348 := @162 @347 +@352 := {ts : @167} -> (h : @344) -> (hs : @345) -> @348 @335 +@353 := @341 @299 +@355 := @87 @327 @297 +@356 := @162 @355 +@357 := @334 @299 +@360 := (h : @51) -> (hs : @307) -> @356 @357 +@361 := @353 @49 +@363 := @87 @342 @305 +@364 := @162 @363 +@366 := (hs : @311) -> @364 @357 +@367 := @361 @309 +@368 := @162 @91 +@369 := @368 @357 +@370 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.denote +@372 := @370 @4 @17 +@373 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.__fits_0 +@375 := @373 @4 @17 +@378 := Coverage.Prims.fixedMiddle @4 @17 +@379 := Option.{0} +@380 := @379 @3 +@381 := @379 @52 +@382 := Bool +@383 := @93 @381 +@384 := @383 @382 +@385 := @383 @384 +@386 := LexLeanPreservation.encOption +@388 := @386 @3 @5 +@390 := @386 @52 @53 +@391 := LexLeanTarget.TargetSyntax.Value.bool +@392 := LexLeanPreservation.encPair +@393 := @392 @381 +@396 := @393 @382 @390 @391 +@399 := @393 @384 @390 @396 +@404 := @392 @380 @385 @388 @399 @378 +@407 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.root @4 @17 +@408 := Ne.{1} +@409 := LexLeanPreservation.Obs +@410 := @408 @409 +@411 := LexLeanPreservation.Rel +@414 := @410 (@411 @17 @19) +@415 := LexLeanPreservation.Obs.stuck +@418 := (f : @382) -> (v : @83) -> @414 @415 +@420 := LexLeanPreservation.Rust.rel_ne_stuck @375 +@427 := (v : @83) -> @410 (@411 (@373 @14 @4) @19) @415 +@428 := @420 @404 +@432 := @410 (@411 @375 @404) @415 +@433 := @165 @95 +@434 := LexLeanPreservation.Rust.FunSem +@435 := #9 +@441 := (n : @92) -> @434 @435 @182 @176 @19 @168 +@442 := Eq.{1} +@443 := @379 @112 +@444 := @442 @443 +@451 := LexLeanRuntime.index (@165 @112) @112 (LexLeanRuntime.instIndexableList @112) +@455 := @444 (@451 (@113 @435) @168) +@456 := Option.some.{0} +@457 := @456 @112 +@458 := @457 @170 +@459 := @455 @458 +@460 := #10 +@464 := @137 @460 @435 @182 @170 +@465 := LexLeanTarget.TargetSyntax.Function.types +@466 := @465 @168 +@467 := @464 @466 +@468 := @379 @433 +@469 := @442 @468 +@470 := LexLeanTarget.TargetSemantics.bindAll +@471 := LexLeanTarget.TargetSyntax.Function.parameters +@476 := @469 (@470 (@471 @176) @168 @105) +@477 := @456 @433 +@478 := @477 @170 +@479 := @476 @478 +@480 := @379 @382 +@481 := @442 @480 +@482 := LexLeanPreservation.Rust.fnFallible +@483 := #11 +@486 := @481 (@482 @483 @435) +@487 := @456 @382 +@488 := @487 @170 +@489 := @486 @488 +@490 := LexLeanPreservation.RunConv +@491 := #13 +@495 := @490 @491 @460 @182 @170 +@497 := @410 @168 @415 +@498 := Exists.{1} +@499 := LexLeanPreservation.Rust.ROut +@500 := @498 @499 +@501 := And +@502 := LexLeanPreservation.Rust.RealizesFn +@506 := @501 (@502 @435 @182 @19) +@507 := LexLeanPreservation.Rust.RCI +@509 := @507 #15 +@510 := LexLeanPreservation.Rust.fnIdent +@511 := @510 @491 +@518 := (hne : @497) -> @500 (fun (ro : @499) => @506 (@509 @511 @483 @19)) +@533 := {p : @10} -> + {c : @11} -> + {A : @12} -> + {f : @92} -> + {fn : @112} -> + {args : @166} -> + {env : @433} -> + {F : @382} -> + {o : @409} -> + (hB : @441) -> + (hfn : @459) -> (hwt : @467) -> (hbind : @479) -> (hF : @489) -> (hA : @495) -> @518 +@535 := LexLeanPreservation.Rust.compose @0 +@536 := @434 @0 +@541 := (n : @92) -> @536 @182 @176 @19 @168 +@542 := @451 @114 +@545 := @444 (@542 @168) @458 +@549 := @148 @435 @182 @170 @466 +@550 := @490 @0 +@553 := @550 @460 @182 @170 +@567 := {c : @11} -> + {A : @12} -> + {f : @92} -> + {fn : @112} -> + {args : @166} -> + {env : @433} -> + {F : @382} -> + {o : @409} -> + (hB : @541) -> + (hfn : @545) -> (hwt : @549) -> (hbind : @479) -> (hF : @489) -> (hA : @553) -> @518 +@568 := @535 @1 +@569 := @536 @1 +@573 := (n : @92) -> @569 @176 @19 @168 +@576 := @156 @182 @170 @466 +@577 := @482 @1 +@580 := @481 (@577 @435) @488 +@581 := @507 @1 +@591 := (hbind : @479) -> + (hF : @580) -> (hA : @553) -> (hne : @497) -> @500 (fun (ro : @499) => @506 (@581 @511 @483 @19)) +@601 := {A : @12} -> + {f : @92} -> + {fn : @112} -> + {args : @166} -> + {env : @433} -> {F : @382} -> {o : @409} -> (hB : @573) -> (hfn : @545) -> (hwt : @576) -> @591 +@602 := @568 @2 +@604 := @569 @2 @19 +@606 := (n : @92) -> @604 @168 +@607 := @162 @170 +@608 := @607 @466 +@617 := {f : @92} -> + {fn : @112} -> + {args : @166} -> + {env : @433} -> {F : @382} -> {o : @409} -> (hB : @606) -> (hfn : @545) -> (hwt : @608) -> @591 +@618 := @602 @102 +@620 := (n : @92) -> @604 @102 +@621 := @542 @102 +@622 := @444 @621 +@623 := @622 @458 +@624 := @577 @102 +@625 := @481 @624 +@626 := @625 @488 +@627 := @550 @102 +@629 := @627 @182 @170 +@631 := @581 (@510 @102) +@639 := (hF : @626) -> (hA : @629) -> (hne : @497) -> @500 (fun (ro : @499) => @506 (@631 @483 @19)) +@648 := {fn : @112} -> + {args : @166} -> + {env : @433} -> + {F : @382} -> {o : @409} -> (hB : @620) -> (hfn : @623) -> (hwt : @608) -> (hbind : @479) -> @639 +@649 := @618 @132 +@651 := @622 (@457 @132) +@652 := @465 @132 +@653 := @607 @652 +@655 := @470 (@471 @132) +@667 := {args : @166} -> + {env : @433} -> + {F : @382} -> + {o : @409} -> + (hB : @620) -> (hfn : @651) -> (hwt : @653) -> (hbind : @469 (@655 @168 @105) @478) -> @639 +@668 := @649 @91 +@670 := @317 (@259 @86) +@672 := @162 @670 @652 +@678 := @87 (@5 @182) (@87 (@53 @176) @86) +@682 := @469 (@655 @678 @105) @478 +@688 := @87 (@5 @460) (@87 (@53 @435) @86) +@690 := @627 @688 @170 +@692 := @87 (@5 @491) +@693 := #12 +@712 := {env : @433} -> + {F : @382} -> + {o : @409} -> + (hB : @620) -> + (hfn : @651) -> + (hwt : @672) -> + (hbind : @682) -> + (hF : @626) -> + (hA : @690) -> + (hne : @497) -> @500 (fun (ro : @499) => @506 (@631 (@692 (@87 (@53 @693) @86)) @19)) +@713 := @668 @110 +@715 := @331 (@273 @86) +@717 := @162 @715 @652 +@728 := @469 (@655 @670 @105) (@477 (@106 (@100 @258) (@106 (@103 @316) @105))) +@734 := @87 (@5 @435) (@87 (@53 @182) @86) +@756 := {F : @382} -> + {o : @409} -> + (hB : @620) -> + (hfn : @651) -> + (hwt : @717) -> + (hbind : @728) -> + (hF : @626) -> + (hA : @627 @734 @170) -> + (hne : @497) -> @500 (fun (ro : @499) => @506 (@631 (@87 (@5 @693) (@87 (@53 @483) @86)) @19)) +@757 := @713 @111 +@758 := @348 @652 +@769 := @469 (@655 @715 @105) (@477 (@106 (@100 @272) (@106 (@103 @330) @105))) +@771 := @625 (@487 @111) +@773 := @627 @678 @170 +@774 := @502 @111 +@796 := {o : @409} -> + (hB : @620) -> + (hfn : @651) -> + (hwt : @758) -> + (hbind : @769) -> + (hF : @771) -> + (hA : @773) -> + (hne : @497) -> + @500 (fun (ro : @499) => @501 (@774 @182 @19) (@631 (@87 (@5 @483) (@87 (@53 @460) @86)) @19)) +@797 := @757 @372 +@798 := @356 @652 +@809 := @469 (@655 @347 @105) (@477 (@106 (@100 @255) (@106 (@103 @313) @105))) +@810 := @627 @670 +@812 := @370 @176 @168 +@813 := @810 @812 +@815 := @370 @182 @176 +@834 := (hB : @620) -> + (hfn : @651) -> + (hwt : @798) -> + (hbind : @809) -> + (hF : @771) -> + (hA : @813) -> + (hne : @410 @815 @415) -> + @500 (fun (ro : @499) => @501 (@774 (@370 @460 @435) @19) (@631 @688 @19)) +@835 := @797 @136 +@836 := @364 @652 +@847 := @469 (@655 @355 @105) (@477 (@106 (@100 @269) (@106 (@103 @327) @105))) +@848 := @627 @715 +@850 := @370 @168 @170 +@869 := (hfn : @651) -> + (hwt : @836) -> + (hbind : @847) -> + (hF : @771) -> + (hA : @848 @850) -> + (hne : @410 @812 @415) -> + @500 (fun (ro : @499) => @501 (@774 (@370 @435 @182) @19) (@631 @734 @19)) +@870 := Eq.refl.{1} +@873 := @835 (@870 @443 @621) +@874 := @368 @652 +@885 := @469 (@655 @363 @105) (@477 (@106 (@100 @284) (@106 (@103 @342) @105))) +@886 := @627 @347 +@888 := @370 @170 @172 +@904 := (hwt : @874) -> + (hbind : @885) -> + (hF : @771) -> + (hA : @886 @888) -> + (hne : @410 @850 @415) -> @500 (fun (ro : @499) => @501 (@774 @815 @19) (@631 @678 @19)) +@905 := @873 @367 +@907 := @655 @91 @105 +@910 := @469 @907 (@477 @110) +@911 := @627 @355 +@913 := @370 @172 @14 +@928 := (hbind : @910) -> + (hF : @771) -> + (hA : @911 @913) -> + (hne : @410 @888 @415) -> @500 (fun (ro : @499) => @501 (@774 @812 @19) (@631 @670 @19)) +@931 := @905 (@870 @468 @907) +@932 := @627 @363 +@934 := @370 @14 @4 +@948 := (hF : @771) -> + (hA : @932 @934) -> + (hne : @410 @913 @415) -> @500 (fun (ro : @499) => @501 (@774 @850 @19) (@631 @715 @19)) +@951 := @931 (@870 @480 @624) +@965 := (hA : @627 @91 @372) -> + (hne : @410 @934 @415) -> @500 (fun (ro : @499) => @501 (@774 @888 @19) (@631 @347 @19)) +@966 := @951 @407 +@977 := (hne : @410 @372 @415) -> @500 (fun (ro : @499) => @501 (@774 @913 @19) (@631 @355 @19)) +@978 := @966 @428 +@984 := @501 (@774 @934 @19) (@631 @363 @19) +@986 := @500 (fun (ro : @499) => @984) +@988 := @500 (fun (__e_ro : @499) => @984) +@989 := LexLeanPreservation.Rust.RepresentableL +@990 := @5 @17 +@992 := @87 @57 @86 +@995 := @989 (@87 @990 @992) +@996 := (__e_hrep : @995) -> @988 +@997 := fun (__e_hrep : @995) => @978 +@998 := (b : @52) -> @996 +@999 := fun (b : @52) => @997 +@1000 := (a : @3) -> @998 +@1001 := fun (a : @3) => @999 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R22/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R22/Compose/RustStd.lex.tex new file mode 100644 index 000000000..b1923e053 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R22/Compose/RustStd.lex.tex @@ -0,0 +1,501 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.Compose.RustStd.root : @1000 := @1001 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.RustStd.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.RustStd.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.RustStd.flags +@3 := Int16 +@4 := #2 +@5 := LexLeanTarget.TargetSyntax.Value.i16 +@6 := @5 @4 +@7 := LexLeanTarget.TargetSyntax.Ty.fixed +@9 := @7 LexLeanTarget.TargetSyntax.IntKind.i16 +@10 := LexLeanTarget.TargetSyntax.Program +@11 := LexLeanPreservation.Rust.RCrate +@12 := LexLeanPreservation.Rust.Flags +@13 := LexLeanPreservation.Rust.WT +@14 := #3 +@16 := @13 @14 @4 +@17 := #1 +@18 := @16 @17 +@19 := #0 +@20 := @5 @19 +@26 := {p : @10} -> {c : @11} -> {A : @12} -> (x : @3) -> @18 @20 @9 +@28 := LexLeanPreservation.Rust.wt_i16 @0 +@29 := @13 @0 +@31 := @29 @4 @17 +@36 := {c : @11} -> {A : @12} -> (x : @3) -> @31 @20 @9 +@37 := @28 @1 +@38 := @29 @1 +@39 := @38 @17 +@43 := {A : @12} -> (x : @3) -> @39 @20 @9 +@44 := @37 @2 +@45 := @38 @2 +@48 := (x : @3) -> @45 @20 @9 +@49 := @44 @4 +@51 := @45 @6 @9 +@52 := Int32 +@53 := LexLeanTarget.TargetSyntax.Value.i32 +@54 := @53 @17 +@56 := @7 LexLeanTarget.TargetSyntax.IntKind.i32 +@57 := @53 @19 +@63 := {p : @10} -> {c : @11} -> {A : @12} -> (x : @52) -> @18 @57 @56 +@65 := LexLeanPreservation.Rust.wt_i32 @0 +@70 := {c : @11} -> {A : @12} -> (x : @52) -> @31 @57 @56 +@71 := @65 @1 +@75 := {A : @12} -> (x : @52) -> @39 @57 @56 +@76 := @71 @2 +@79 := (x : @52) -> @45 @57 @56 +@80 := @76 @17 +@82 := @45 @54 @56 +@83 := LexLeanTarget.TargetSyntax.Value +@84 := List.nil.{0} +@85 := List.cons.{0} +@86 := @84 @83 +@87 := @85 @83 +@89 := @87 @54 @86 +@91 := @87 @6 @89 +@92 := Nat +@93 := Prod.{0, 0} +@95 := @93 @92 @83 +@96 := 1 +@99 := Prod.mk.{0, 0} @92 @83 +@100 := @99 @96 +@101 := @100 @54 +@102 := 0 +@103 := @99 @102 +@104 := @103 @6 +@105 := @84 @95 +@106 := @85 @95 +@108 := @106 @104 @105 +@110 := @106 @101 @108 +@111 := Bool.false +@112 := LexLeanTarget.TargetSyntax.Function +@113 := LexLeanTarget.TargetSyntax.Program.functions +@114 := @113 @0 +@115 := LexLeanTarget.TargetSyntax.Ty +@116 := @84 @92 +@117 := @84 @115 +@118 := LexLeanTarget.TargetSyntax.Ty.unit +@119 := LexLeanTarget.TargetSyntax.Value.unit +@122 := LexLeanTarget.TargetSyntax.Expr.value @118 @119 +@127 := LexLeanTarget.TargetSyntax.Function.mk @116 @117 @118 @122 +@132 := List.getD.{0} @112 @114 @102 @127 +@136 := fun (__e_n : @92) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.RustStd.root @19 @102 +@137 := LexLeanPreservation.Rust.WTL +@145 := {p : @10} -> {c : @11} -> {A : @12} -> @137 @4 @17 @19 @86 @117 +@147 := LexLeanPreservation.Rust.wtl_nil @0 +@148 := @137 @0 +@154 := {c : @11} -> {A : @12} -> @148 @17 @19 @86 @117 +@155 := @147 @1 +@156 := @148 @1 +@160 := {A : @12} -> @156 @19 @86 @117 +@161 := @155 @2 +@162 := @156 @2 +@163 := @162 @86 +@164 := @163 @117 +@165 := List.{0} +@166 := @165 @83 +@167 := @165 @115 +@168 := #6 +@169 := @13 @168 +@170 := #5 +@171 := @169 @170 +@172 := #4 +@175 := @171 @172 @14 @4 +@176 := #7 +@181 := @137 @176 @168 @170 @4 @17 +@182 := #8 +@185 := @137 @182 @176 @168 +@187 := @87 @170 @14 +@188 := @185 @187 +@189 := @85 @115 +@191 := @189 @172 @4 +@201 := {p : @10} -> + {c : @11} -> + {A : @12} -> + {v : @83} -> {t : @115} -> {vs : @166} -> {ts : @167} -> (h : @175) -> (hs : @181) -> @188 @191 +@203 := LexLeanPreservation.Rust.wtl_cons @0 +@223 := {c : @11} -> + {A : @12} -> + {v : @83} -> + {t : @115} -> + {vs : @166} -> + {ts : @167} -> + (h : @29 @170 @172 @14 @4) -> (hs : @148 @168 @170 @4 @17) -> @148 @176 @168 @187 @191 +@224 := @203 @1 +@240 := {A : @12} -> + {v : @83} -> + {t : @115} -> + {vs : @166} -> + {ts : @167} -> (h : @38 @172 @14 @4) -> (hs : @156 @170 @4 @17) -> @156 @168 @187 @191 +@241 := @224 @2 +@243 := @45 @14 @4 +@245 := @162 @4 @17 +@253 := {v : @83} -> + {t : @115} -> {vs : @166} -> {ts : @167} -> (h : @243) -> (hs : @245) -> @162 @187 @191 +@254 := @241 @54 +@255 := @53 @172 +@257 := @45 @255 @4 +@258 := @53 @168 +@259 := @87 @258 +@267 := {t : @115} -> + {vs : @166} -> {ts : @167} -> (h : @257) -> (hs : @245) -> @162 (@259 @14) @191 +@268 := @254 @56 +@269 := @53 @14 +@271 := @45 @269 @56 +@272 := @53 @170 +@273 := @87 @272 +@275 := @162 (@273 @14) +@276 := @189 @56 +@277 := @276 @4 +@282 := {vs : @166} -> {ts : @167} -> (h : @271) -> (hs : @245) -> @275 @277 +@283 := @268 @86 +@284 := @53 @4 +@286 := @45 @284 @56 +@287 := @163 @17 +@289 := @87 @255 @86 +@294 := {ts : @167} -> (h : @286) -> (hs : @287) -> @162 @289 @277 +@295 := @283 @117 +@297 := @87 @269 @86 +@298 := @162 @297 +@299 := @276 @117 +@302 := (h : @82) -> (hs : @164) -> @298 @299 +@303 := @295 @80 +@305 := @87 @284 @86 +@307 := @162 @305 @299 +@308 := (hs : @164) -> @307 +@309 := @303 @161 +@311 := @162 @89 @299 +@312 := @241 @6 +@313 := @5 @170 +@315 := @45 @313 @4 +@316 := @5 @176 +@317 := @87 @316 +@325 := {t : @115} -> + {vs : @166} -> {ts : @167} -> (h : @315) -> (hs : @245) -> @162 (@317 @14) @191 +@326 := @312 @9 +@327 := @5 @172 +@329 := @45 @327 @9 +@330 := @5 @168 +@331 := @87 @330 +@333 := @162 (@331 @14) +@334 := @189 @9 +@335 := @334 @4 +@340 := {vs : @166} -> {ts : @167} -> (h : @329) -> (hs : @245) -> @333 @335 +@341 := @326 @89 +@342 := @5 @14 +@344 := @45 @342 @9 +@345 := @298 @17 +@347 := @87 @313 @289 +@348 := @162 @347 +@352 := {ts : @167} -> (h : @344) -> (hs : @345) -> @348 @335 +@353 := @341 @299 +@355 := @87 @327 @297 +@356 := @162 @355 +@357 := @334 @299 +@360 := (h : @51) -> (hs : @307) -> @356 @357 +@361 := @353 @49 +@363 := @87 @342 @305 +@364 := @162 @363 +@366 := (hs : @311) -> @364 @357 +@367 := @361 @309 +@368 := @162 @91 +@369 := @368 @357 +@370 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.denote +@372 := @370 @4 @17 +@373 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.__fits_0 +@375 := @373 @4 @17 +@378 := Coverage.Prims.fixedMiddle @4 @17 +@379 := Option.{0} +@380 := @379 @3 +@381 := @379 @52 +@382 := Bool +@383 := @93 @381 +@384 := @383 @382 +@385 := @383 @384 +@386 := LexLeanPreservation.encOption +@388 := @386 @3 @5 +@390 := @386 @52 @53 +@391 := LexLeanTarget.TargetSyntax.Value.bool +@392 := LexLeanPreservation.encPair +@393 := @392 @381 +@396 := @393 @382 @390 @391 +@399 := @393 @384 @390 @396 +@404 := @392 @380 @385 @388 @399 @378 +@407 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.root @4 @17 +@408 := Ne.{1} +@409 := LexLeanPreservation.Obs +@410 := @408 @409 +@411 := LexLeanPreservation.Rel +@414 := @410 (@411 @17 @19) +@415 := LexLeanPreservation.Obs.stuck +@418 := (f : @382) -> (v : @83) -> @414 @415 +@420 := LexLeanPreservation.Rust.rel_ne_stuck @375 +@427 := (v : @83) -> @410 (@411 (@373 @14 @4) @19) @415 +@428 := @420 @404 +@432 := @410 (@411 @375 @404) @415 +@433 := @165 @95 +@434 := LexLeanPreservation.Rust.FunSem +@435 := #9 +@441 := (n : @92) -> @434 @435 @182 @176 @19 @168 +@442 := Eq.{1} +@443 := @379 @112 +@444 := @442 @443 +@451 := LexLeanRuntime.index (@165 @112) @112 (LexLeanRuntime.instIndexableList @112) +@455 := @444 (@451 (@113 @435) @168) +@456 := Option.some.{0} +@457 := @456 @112 +@458 := @457 @170 +@459 := @455 @458 +@460 := #10 +@464 := @137 @460 @435 @182 @170 +@465 := LexLeanTarget.TargetSyntax.Function.types +@466 := @465 @168 +@467 := @464 @466 +@468 := @379 @433 +@469 := @442 @468 +@470 := LexLeanTarget.TargetSemantics.bindAll +@471 := LexLeanTarget.TargetSyntax.Function.parameters +@476 := @469 (@470 (@471 @176) @168 @105) +@477 := @456 @433 +@478 := @477 @170 +@479 := @476 @478 +@480 := @379 @382 +@481 := @442 @480 +@482 := LexLeanPreservation.Rust.fnFallible +@483 := #11 +@486 := @481 (@482 @483 @435) +@487 := @456 @382 +@488 := @487 @170 +@489 := @486 @488 +@490 := LexLeanPreservation.RunConv +@491 := #13 +@495 := @490 @491 @460 @182 @170 +@497 := @410 @168 @415 +@498 := Exists.{1} +@499 := LexLeanPreservation.Rust.ROut +@500 := @498 @499 +@501 := And +@502 := LexLeanPreservation.Rust.RealizesFn +@506 := @501 (@502 @435 @182 @19) +@507 := LexLeanPreservation.Rust.RCI +@509 := @507 #15 +@510 := LexLeanPreservation.Rust.fnIdent +@511 := @510 @491 +@518 := (hne : @497) -> @500 (fun (ro : @499) => @506 (@509 @511 @483 @19)) +@533 := {p : @10} -> + {c : @11} -> + {A : @12} -> + {f : @92} -> + {fn : @112} -> + {args : @166} -> + {env : @433} -> + {F : @382} -> + {o : @409} -> + (hB : @441) -> + (hfn : @459) -> (hwt : @467) -> (hbind : @479) -> (hF : @489) -> (hA : @495) -> @518 +@535 := LexLeanPreservation.Rust.compose @0 +@536 := @434 @0 +@541 := (n : @92) -> @536 @182 @176 @19 @168 +@542 := @451 @114 +@545 := @444 (@542 @168) @458 +@549 := @148 @435 @182 @170 @466 +@550 := @490 @0 +@553 := @550 @460 @182 @170 +@567 := {c : @11} -> + {A : @12} -> + {f : @92} -> + {fn : @112} -> + {args : @166} -> + {env : @433} -> + {F : @382} -> + {o : @409} -> + (hB : @541) -> + (hfn : @545) -> (hwt : @549) -> (hbind : @479) -> (hF : @489) -> (hA : @553) -> @518 +@568 := @535 @1 +@569 := @536 @1 +@573 := (n : @92) -> @569 @176 @19 @168 +@576 := @156 @182 @170 @466 +@577 := @482 @1 +@580 := @481 (@577 @435) @488 +@581 := @507 @1 +@591 := (hbind : @479) -> + (hF : @580) -> (hA : @553) -> (hne : @497) -> @500 (fun (ro : @499) => @506 (@581 @511 @483 @19)) +@601 := {A : @12} -> + {f : @92} -> + {fn : @112} -> + {args : @166} -> + {env : @433} -> {F : @382} -> {o : @409} -> (hB : @573) -> (hfn : @545) -> (hwt : @576) -> @591 +@602 := @568 @2 +@604 := @569 @2 @19 +@606 := (n : @92) -> @604 @168 +@607 := @162 @170 +@608 := @607 @466 +@617 := {f : @92} -> + {fn : @112} -> + {args : @166} -> + {env : @433} -> {F : @382} -> {o : @409} -> (hB : @606) -> (hfn : @545) -> (hwt : @608) -> @591 +@618 := @602 @102 +@620 := (n : @92) -> @604 @102 +@621 := @542 @102 +@622 := @444 @621 +@623 := @622 @458 +@624 := @577 @102 +@625 := @481 @624 +@626 := @625 @488 +@627 := @550 @102 +@629 := @627 @182 @170 +@631 := @581 (@510 @102) +@639 := (hF : @626) -> (hA : @629) -> (hne : @497) -> @500 (fun (ro : @499) => @506 (@631 @483 @19)) +@648 := {fn : @112} -> + {args : @166} -> + {env : @433} -> + {F : @382} -> {o : @409} -> (hB : @620) -> (hfn : @623) -> (hwt : @608) -> (hbind : @479) -> @639 +@649 := @618 @132 +@651 := @622 (@457 @132) +@652 := @465 @132 +@653 := @607 @652 +@655 := @470 (@471 @132) +@667 := {args : @166} -> + {env : @433} -> + {F : @382} -> + {o : @409} -> + (hB : @620) -> (hfn : @651) -> (hwt : @653) -> (hbind : @469 (@655 @168 @105) @478) -> @639 +@668 := @649 @91 +@670 := @317 (@259 @86) +@672 := @162 @670 @652 +@678 := @87 (@5 @182) (@87 (@53 @176) @86) +@682 := @469 (@655 @678 @105) @478 +@688 := @87 (@5 @460) (@87 (@53 @435) @86) +@690 := @627 @688 @170 +@692 := @87 (@5 @491) +@693 := #12 +@712 := {env : @433} -> + {F : @382} -> + {o : @409} -> + (hB : @620) -> + (hfn : @651) -> + (hwt : @672) -> + (hbind : @682) -> + (hF : @626) -> + (hA : @690) -> + (hne : @497) -> @500 (fun (ro : @499) => @506 (@631 (@692 (@87 (@53 @693) @86)) @19)) +@713 := @668 @110 +@715 := @331 (@273 @86) +@717 := @162 @715 @652 +@728 := @469 (@655 @670 @105) (@477 (@106 (@100 @258) (@106 (@103 @316) @105))) +@734 := @87 (@5 @435) (@87 (@53 @182) @86) +@756 := {F : @382} -> + {o : @409} -> + (hB : @620) -> + (hfn : @651) -> + (hwt : @717) -> + (hbind : @728) -> + (hF : @626) -> + (hA : @627 @734 @170) -> + (hne : @497) -> @500 (fun (ro : @499) => @506 (@631 (@87 (@5 @693) (@87 (@53 @483) @86)) @19)) +@757 := @713 @111 +@758 := @348 @652 +@769 := @469 (@655 @715 @105) (@477 (@106 (@100 @272) (@106 (@103 @330) @105))) +@771 := @625 (@487 @111) +@773 := @627 @678 @170 +@774 := @502 @111 +@796 := {o : @409} -> + (hB : @620) -> + (hfn : @651) -> + (hwt : @758) -> + (hbind : @769) -> + (hF : @771) -> + (hA : @773) -> + (hne : @497) -> + @500 (fun (ro : @499) => @501 (@774 @182 @19) (@631 (@87 (@5 @483) (@87 (@53 @460) @86)) @19)) +@797 := @757 @372 +@798 := @356 @652 +@809 := @469 (@655 @347 @105) (@477 (@106 (@100 @255) (@106 (@103 @313) @105))) +@810 := @627 @670 +@812 := @370 @176 @168 +@813 := @810 @812 +@815 := @370 @182 @176 +@834 := (hB : @620) -> + (hfn : @651) -> + (hwt : @798) -> + (hbind : @809) -> + (hF : @771) -> + (hA : @813) -> + (hne : @410 @815 @415) -> + @500 (fun (ro : @499) => @501 (@774 (@370 @460 @435) @19) (@631 @688 @19)) +@835 := @797 @136 +@836 := @364 @652 +@847 := @469 (@655 @355 @105) (@477 (@106 (@100 @269) (@106 (@103 @327) @105))) +@848 := @627 @715 +@850 := @370 @168 @170 +@869 := (hfn : @651) -> + (hwt : @836) -> + (hbind : @847) -> + (hF : @771) -> + (hA : @848 @850) -> + (hne : @410 @812 @415) -> + @500 (fun (ro : @499) => @501 (@774 (@370 @435 @182) @19) (@631 @734 @19)) +@870 := Eq.refl.{1} +@873 := @835 (@870 @443 @621) +@874 := @368 @652 +@885 := @469 (@655 @363 @105) (@477 (@106 (@100 @284) (@106 (@103 @342) @105))) +@886 := @627 @347 +@888 := @370 @170 @172 +@904 := (hwt : @874) -> + (hbind : @885) -> + (hF : @771) -> + (hA : @886 @888) -> + (hne : @410 @850 @415) -> @500 (fun (ro : @499) => @501 (@774 @815 @19) (@631 @678 @19)) +@905 := @873 @367 +@907 := @655 @91 @105 +@910 := @469 @907 (@477 @110) +@911 := @627 @355 +@913 := @370 @172 @14 +@928 := (hbind : @910) -> + (hF : @771) -> + (hA : @911 @913) -> + (hne : @410 @888 @415) -> @500 (fun (ro : @499) => @501 (@774 @812 @19) (@631 @670 @19)) +@931 := @905 (@870 @468 @907) +@932 := @627 @363 +@934 := @370 @14 @4 +@948 := (hF : @771) -> + (hA : @932 @934) -> + (hne : @410 @913 @415) -> @500 (fun (ro : @499) => @501 (@774 @850 @19) (@631 @715 @19)) +@951 := @931 (@870 @480 @624) +@965 := (hA : @627 @91 @372) -> + (hne : @410 @934 @415) -> @500 (fun (ro : @499) => @501 (@774 @888 @19) (@631 @347 @19)) +@966 := @951 @407 +@977 := (hne : @410 @372 @415) -> @500 (fun (ro : @499) => @501 (@774 @913 @19) (@631 @355 @19)) +@978 := @966 @428 +@984 := @501 (@774 @934 @19) (@631 @363 @19) +@986 := @500 (fun (ro : @499) => @984) +@988 := @500 (fun (__e_ro : @499) => @984) +@989 := LexLeanPreservation.Rust.RepresentableL +@990 := @5 @17 +@992 := @87 @57 @86 +@995 := @989 (@87 @990 @992) +@996 := (__e_hrep : @995) -> @988 +@997 := fun (__e_hrep : @995) => @978 +@998 := (b : @52) -> @996 +@999 := fun (b : @52) => @997 +@1000 := (a : @3) -> @998 +@1001 := fun (a : @3) => @999 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R22/RustCore.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R22/RustCore.lean new file mode 100644 index 000000000..fb2f8ebb1 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R22/RustCore.lean @@ -0,0 +1,33 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.RustCore +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1], types := [(.fixed .i16), (.fixed .i32)], result := (.pair (.option (.fixed .i16)) (.pair (.option (.fixed .i32)) (.pair (.option (.fixed .i32)) .bool))), + body := (.build .pair (.pair (.option (.fixed .i16)) (.pair (.option (.fixed .i32)) (.pair (.option (.fixed .i32)) .bool))) [(.prim .checkedMul [(.var 0), (.var 0)]), (.build .pair (.pair (.option (.fixed .i32)) (.pair (.option (.fixed .i32)) .bool)) [(.prim .checkedAdd [(.var 1), (.value (.fixed .i32) (.i32 (-7)))]), (.build .pair (.pair (.option (.fixed .i32)) .bool) [(.prim (.convert .i32) [(.var 0)]), (.prim .equal [(.var 1), (.value (.fixed .i32) (.i32 3))])])])]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .core, items := [ + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.fixed .i16) }, { pattern := (.bind (.generated .binding 1)), type := (.fixed .i32) }] (.pair (.option (.fixed .i16)) (.pair (.option (.fixed .i32)) (.pair (.option (.fixed .i32)) .bool))) (.mk [] (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 0)))] (.call (.runtime (.checkedMul .i16)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 4)) none (.lit (.fixed .i32 (-7))))] (.call (.runtime (.checkedAdd .i32)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0)))] (.call (.runtime (.convert .i32)) [(.widen (.move (.generated .operand 5)))] false))) (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 7)) none (.lit (.fixed .i32 3)))] (.call (.runtime .equal) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false))))))))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [], (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 0)))] (.call (.runtime (.checkedMul .i16)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 4)) none (.lit (.fixed .i32 (-7))))] (.call (.runtime (.checkedAdd .i32)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0)))] (.call (.runtime (.convert .i32)) [(.widen (.move (.generated .operand 5)))] false))) (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 7)) none (.lit (.fixed .i32 3)))] (.call (.runtime .equal) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false)))))), [(1, (.fixed .i32), (some 1)), (0, (.fixed .i16), (some 0))], rfl, rfl, + (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 0)))]) (tail := (.call (.runtime (.checkedMul .i16)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false)) (Corr.prim (ts := [(.fixed .i16), (.fixed .i16)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 4)) none (.lit (.fixed .i32 (-7))))]) (tail := (.call (.runtime (.checkedAdd .i32)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false)) (Corr.prim (ts := [(.fixed .i32), (.fixed .i32)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0)))]) (tail := (.call (.runtime (.convert .i32)) [(.widen (.move (.generated .operand 5)))] false)) (Corr.primWiden (t0 := (.fixed .i16)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 7)) none (.lit (.fixed .i32 3)))]) (tail := (.call (.runtime .equal) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false)) (Corr.prim (ts := [(.fixed .i32), (.fixed .i32)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | _ + 1 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.RustCore diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R22/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R22/RustStd.lean new file mode 100644 index 000000000..32392da23 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R22/RustStd.lean @@ -0,0 +1,33 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1], types := [(.fixed .i16), (.fixed .i32)], result := (.pair (.option (.fixed .i16)) (.pair (.option (.fixed .i32)) (.pair (.option (.fixed .i32)) .bool))), + body := (.build .pair (.pair (.option (.fixed .i16)) (.pair (.option (.fixed .i32)) (.pair (.option (.fixed .i32)) .bool))) [(.prim .checkedMul [(.var 0), (.var 0)]), (.build .pair (.pair (.option (.fixed .i32)) (.pair (.option (.fixed .i32)) .bool)) [(.prim .checkedAdd [(.var 1), (.value (.fixed .i32) (.i32 (-7)))]), (.build .pair (.pair (.option (.fixed .i32)) .bool) [(.prim (.convert .i32) [(.var 0)]), (.prim .equal [(.var 1), (.value (.fixed .i32) (.i32 3))])])])]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.fixed .i16) }, { pattern := (.bind (.generated .binding 1)), type := (.fixed .i32) }] (.pair (.option (.fixed .i16)) (.pair (.option (.fixed .i32)) (.pair (.option (.fixed .i32)) .bool))) (.mk [] (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 0)))] (.call (.runtime (.checkedMul .i16)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 4)) none (.lit (.fixed .i32 (-7))))] (.call (.runtime (.checkedAdd .i32)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0)))] (.call (.runtime (.convert .i32)) [(.widen (.move (.generated .operand 5)))] false))) (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 7)) none (.lit (.fixed .i32 3)))] (.call (.runtime .equal) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false))))))))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [], (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 0)))] (.call (.runtime (.checkedMul .i16)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 4)) none (.lit (.fixed .i32 (-7))))] (.call (.runtime (.checkedAdd .i32)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0)))] (.call (.runtime (.convert .i32)) [(.widen (.move (.generated .operand 5)))] false))) (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 7)) none (.lit (.fixed .i32 3)))] (.call (.runtime .equal) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false)))))), [(1, (.fixed .i32), (some 1)), (0, (.fixed .i16), (some 0))], rfl, rfl, + (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 0)))]) (tail := (.call (.runtime (.checkedMul .i16)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false)) (Corr.prim (ts := [(.fixed .i16), (.fixed .i16)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 4)) none (.lit (.fixed .i32 (-7))))]) (tail := (.call (.runtime (.checkedAdd .i32)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false)) (Corr.prim (ts := [(.fixed .i32), (.fixed .i32)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0)))]) (tail := (.call (.runtime (.convert .i32)) [(.widen (.move (.generated .operand 5)))] false)) (Corr.primWiden (t0 := (.fixed .i16)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 7)) none (.lit (.fixed .i32 3)))]) (tail := (.call (.runtime .equal) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false)) (Corr.prim (ts := [(.fixed .i32), (.fixed .i32)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | _ + 1 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R23.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R23.lean similarity index 98% rename from examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R23.lean rename to examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R23.lean index ea8a95fb4..8c8731752 100644 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R23.lean +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R23.lean @@ -18,7 +18,7 @@ set_option maxRecDepth 100000 set_option maxHeartbeats 0 set_option synthInstance.maxHeartbeats 0 set_option linter.unusedVariables false -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23 def __prog : _root_.LexLeanTarget.TargetSyntax.Program := { adts := [], functions := [ @@ -37,4 +37,4 @@ def denote (a : Int64) (b : Int64) (c : UInt64) : _root_.LexLeanPreservation.Obs theorem root (a : Int64) (b : Int64) (c : UInt64) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.i64 a), (_root_.LexLeanTarget.TargetSyntax.Value.i64 b), (_root_.LexLeanTarget.TargetSyntax.Value.u64 c)] (_root_.LexLeanPreservation.Rel (__fits_0 a b c) ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.i64) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.i64) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.i64) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.i64) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.i64) (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u64)))))) (Coverage.Prims.fixedWide a b c))) := _root_.LexLeanPreservation.run_of_funRel (__rel_0 a b c) -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23 +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23 diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R23/Compose/RustCore.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R23/Compose/RustCore.lex.tex new file mode 100644 index 000000000..fdfcf9871 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R23/Compose/RustCore.lex.tex @@ -0,0 +1,543 @@ +\begin{lexlean}{RustCore} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.Compose.RustCore} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.RustCore, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.Compose.RustCore.root : @1096 := @1097 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.Compose.RustCore.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.RustCore.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.RustCore.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.RustCore.flags +@3 := Int64 +@4 := #3 +@5 := LexLeanTarget.TargetSyntax.Value.i64 +@6 := @5 @4 +@7 := LexLeanTarget.TargetSyntax.Ty.fixed +@9 := @7 LexLeanTarget.TargetSyntax.IntKind.i64 +@10 := LexLeanTarget.TargetSyntax.Program +@11 := LexLeanPreservation.Rust.RCrate +@12 := LexLeanPreservation.Rust.Flags +@13 := LexLeanPreservation.Rust.WT +@14 := @13 @4 +@15 := #2 +@16 := @14 @15 +@17 := #1 +@18 := @16 @17 +@19 := #0 +@20 := @5 @19 +@26 := {p : @10} -> {c : @11} -> {A : @12} -> (x : @3) -> @18 @20 @9 +@28 := LexLeanPreservation.Rust.wt_i64 @0 +@29 := @13 @0 +@31 := @29 @15 @17 +@36 := {c : @11} -> {A : @12} -> (x : @3) -> @31 @20 @9 +@37 := @28 @1 +@38 := @29 @1 +@39 := @38 @17 +@43 := {A : @12} -> (x : @3) -> @39 @20 @9 +@44 := @37 @2 +@45 := @38 @2 +@48 := (x : @3) -> @45 @20 @9 +@49 := @44 @4 +@51 := @45 @6 @9 +@52 := @5 @15 +@53 := @44 @15 +@55 := @45 @52 @9 +@56 := UInt64 +@57 := LexLeanTarget.TargetSyntax.Value.u64 +@58 := @57 @17 +@60 := @7 LexLeanTarget.TargetSyntax.IntKind.u64 +@61 := @57 @19 +@67 := {p : @10} -> {c : @11} -> {A : @12} -> (x : @56) -> @18 @61 @60 +@69 := LexLeanPreservation.Rust.wt_u64 @0 +@74 := {c : @11} -> {A : @12} -> (x : @56) -> @31 @61 @60 +@75 := @69 @1 +@79 := {A : @12} -> (x : @56) -> @39 @61 @60 +@80 := @75 @2 +@83 := (x : @56) -> @45 @61 @60 +@84 := @80 @17 +@86 := @45 @58 @60 +@87 := LexLeanTarget.TargetSyntax.Value +@88 := List.nil.{0} +@89 := List.cons.{0} +@90 := @88 @87 +@91 := @89 @87 +@93 := @91 @58 @90 +@94 := @91 @52 +@95 := @94 @93 +@96 := @91 @6 +@97 := @96 @95 +@98 := Nat +@99 := Prod.{0, 0} +@101 := @99 @98 @87 +@102 := 2 +@105 := Prod.mk.{0, 0} @98 @87 +@106 := @105 @102 +@107 := @106 @58 +@109 := @105 1 +@110 := @109 @52 +@111 := 0 +@112 := @105 @111 +@113 := @112 @6 +@114 := @88 @101 +@115 := @89 @101 +@117 := @115 @113 @114 +@119 := @115 @110 @117 +@121 := @115 @107 @119 +@122 := Bool.false +@123 := LexLeanTarget.TargetSyntax.Function +@124 := LexLeanTarget.TargetSyntax.Program.functions +@125 := @124 @0 +@126 := LexLeanTarget.TargetSyntax.Ty +@127 := @88 @98 +@128 := @88 @126 +@129 := LexLeanTarget.TargetSyntax.Ty.unit +@130 := LexLeanTarget.TargetSyntax.Value.unit +@133 := LexLeanTarget.TargetSyntax.Expr.value @129 @130 +@138 := LexLeanTarget.TargetSyntax.Function.mk @127 @128 @129 @133 +@143 := List.getD.{0} @123 @125 @111 @138 +@147 := fun (__e_n : @98) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.RustCore.root @19 @111 +@148 := LexLeanPreservation.Rust.WTL +@156 := {p : @10} -> {c : @11} -> {A : @12} -> @148 @15 @17 @19 @90 @128 +@158 := LexLeanPreservation.Rust.wtl_nil @0 +@159 := @148 @0 +@165 := {c : @11} -> {A : @12} -> @159 @17 @19 @90 @128 +@166 := @158 @1 +@167 := @159 @1 +@171 := {A : @12} -> @167 @19 @90 @128 +@172 := @166 @2 +@173 := @167 @2 +@174 := @173 @90 +@175 := @174 @128 +@176 := List.{0} +@177 := @176 @87 +@178 := @176 @126 +@179 := #6 +@180 := @13 @179 +@181 := #5 +@182 := @180 @181 +@183 := #4 +@186 := @182 @183 @4 @15 +@187 := #7 +@192 := @148 @187 @179 @181 @15 @17 +@193 := #8 +@196 := @148 @193 @187 @179 +@198 := @91 @181 @4 +@199 := @196 @198 +@200 := @89 @126 +@202 := @200 @183 @15 +@212 := {p : @10} -> + {c : @11} -> + {A : @12} -> + {v : @87} -> {t : @126} -> {vs : @177} -> {ts : @178} -> (h : @186) -> (hs : @192) -> @199 @202 +@214 := LexLeanPreservation.Rust.wtl_cons @0 +@234 := {c : @11} -> + {A : @12} -> + {v : @87} -> + {t : @126} -> + {vs : @177} -> + {ts : @178} -> + (h : @29 @181 @183 @4 @15) -> (hs : @159 @179 @181 @15 @17) -> @159 @187 @179 @198 @202 +@235 := @214 @1 +@251 := {A : @12} -> + {v : @87} -> + {t : @126} -> + {vs : @177} -> + {ts : @178} -> (h : @38 @183 @4 @15) -> (hs : @167 @181 @15 @17) -> @167 @179 @198 @202 +@252 := @235 @2 +@254 := @45 @4 @15 +@256 := @173 @15 @17 +@264 := {v : @87} -> + {t : @126} -> {vs : @177} -> {ts : @178} -> (h : @254) -> (hs : @256) -> @173 @198 @202 +@265 := @252 @58 +@266 := @57 @183 +@268 := @45 @266 @15 +@269 := @57 @179 +@270 := @91 @269 +@278 := {t : @126} -> {vs : @177} -> {ts : @178} -> (h : @268) -> (hs : @256) -> @173 (@270 @4) @202 +@279 := @265 @60 +@280 := @57 @4 +@282 := @45 @280 @60 +@283 := @57 @181 +@284 := @91 @283 +@286 := @173 (@284 @4) +@287 := @200 @60 +@288 := @287 @15 +@293 := {vs : @177} -> {ts : @178} -> (h : @282) -> (hs : @256) -> @286 @288 +@294 := @279 @90 +@295 := @57 @15 +@297 := @45 @295 @60 +@298 := @174 @17 +@300 := @91 @266 @90 +@305 := {ts : @178} -> (h : @297) -> (hs : @298) -> @173 @300 @288 +@306 := @294 @128 +@308 := @91 @280 @90 +@309 := @173 @308 +@310 := @287 @128 +@313 := (h : @86) -> (hs : @175) -> @309 @310 +@314 := @306 @84 +@316 := @91 @295 @90 +@318 := @173 @316 @310 +@319 := (hs : @175) -> @318 +@320 := @314 @172 +@322 := @173 @93 @310 +@323 := @252 @52 +@324 := @5 @181 +@325 := @45 @324 +@326 := @325 @15 +@327 := @5 @187 +@328 := @91 @327 +@330 := @173 (@328 @4) +@336 := {t : @126} -> {vs : @177} -> {ts : @178} -> (h : @326) -> (hs : @256) -> @330 @202 +@337 := @323 @9 +@338 := @5 @183 +@340 := @45 @338 @9 +@341 := @5 @179 +@342 := @91 @341 +@344 := @173 (@342 @4) +@345 := @200 @9 +@346 := @345 @15 +@351 := {vs : @177} -> {ts : @178} -> (h : @340) -> (hs : @256) -> @344 @346 +@352 := @337 @93 +@353 := @309 @17 +@354 := @91 @324 +@355 := @354 @300 +@360 := {ts : @178} -> (h : @51) -> (hs : @353) -> @173 @355 @346 +@361 := @352 @310 +@362 := @91 @338 +@363 := @362 @308 +@364 := @173 @363 +@365 := @345 @310 +@368 := (h : @55) -> (hs : @318) -> @364 @365 +@369 := @361 @53 +@370 := @96 @316 +@372 := @173 @370 @365 +@373 := (hs : @322) -> @372 +@374 := @369 @320 +@376 := @173 @95 @365 +@377 := @252 @6 +@379 := @45 @341 @15 +@380 := @5 @193 +@381 := @91 @380 +@389 := {t : @126} -> {vs : @177} -> {ts : @178} -> (h : @379) -> (hs : @256) -> @173 (@381 @4) @202 +@390 := @377 @9 +@396 := {vs : @177} -> {ts : @178} -> (h : @325 @9) -> (hs : @256) -> @330 @346 +@397 := @390 @95 +@398 := @364 @17 +@399 := @342 @355 +@400 := @173 @399 +@404 := {ts : @178} -> (h : @340) -> (hs : @398) -> @400 @346 +@405 := @397 @365 +@406 := @354 @363 +@407 := @173 @406 +@408 := @345 @365 +@411 := (h : @51) -> (hs : @372) -> @407 @408 +@412 := @405 @49 +@413 := @362 @370 +@414 := @173 @413 +@416 := (hs : @376) -> @414 @408 +@417 := @412 @374 +@418 := @173 @97 +@419 := @418 @408 +@420 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.denote +@423 := @420 @4 @15 @17 +@424 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.__fits_0 +@427 := @424 @4 @15 @17 +@431 := Coverage.Prims.fixedWide @4 @15 @17 +@432 := Option.{0} +@433 := @432 @3 +@434 := @432 @56 +@435 := @99 @433 +@436 := @435 @434 +@437 := @435 @436 +@438 := @435 @437 +@439 := @435 @438 +@440 := LexLeanPreservation.encOption +@442 := @440 @3 @5 +@444 := @440 @56 @57 +@446 := LexLeanPreservation.encPair @433 +@449 := @446 @434 @442 @444 +@452 := @446 @436 @442 @449 +@455 := @446 @437 @442 @452 +@458 := @446 @438 @442 @455 +@462 := @446 @439 @442 @458 @431 +@466 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.root @4 @15 @17 +@467 := Bool +@468 := Ne.{1} +@469 := LexLeanPreservation.Obs +@470 := @468 @469 +@471 := LexLeanPreservation.Rel +@474 := @470 (@471 @17 @19) +@475 := LexLeanPreservation.Obs.stuck +@478 := (f : @467) -> (v : @87) -> @474 @475 +@480 := LexLeanPreservation.Rust.rel_ne_stuck @427 +@488 := (v : @87) -> @470 (@471 (@424 @183 @4 @15) @19) @475 +@489 := @480 @462 +@493 := @470 (@471 @427 @462) @475 +@494 := @176 @101 +@495 := LexLeanPreservation.Rust.FunSem +@496 := #9 +@502 := (n : @98) -> @495 @496 @193 @187 @19 @179 +@503 := Eq.{1} +@504 := @432 @123 +@505 := @503 @504 +@512 := LexLeanRuntime.index (@176 @123) @123 (LexLeanRuntime.instIndexableList @123) +@516 := @505 (@512 (@124 @496) @179) +@517 := Option.some.{0} +@518 := @517 @123 +@519 := @518 @181 +@520 := @516 @519 +@521 := #10 +@525 := @148 @521 @496 @193 @181 +@526 := LexLeanTarget.TargetSyntax.Function.types +@527 := @526 @179 +@528 := @525 @527 +@529 := @432 @494 +@530 := @503 @529 +@531 := LexLeanTarget.TargetSemantics.bindAll +@532 := LexLeanTarget.TargetSyntax.Function.parameters +@537 := @530 (@531 (@532 @187) @179 @114) +@538 := @517 @494 +@539 := @538 @181 +@540 := @537 @539 +@541 := @432 @467 +@542 := @503 @541 +@543 := LexLeanPreservation.Rust.fnFallible +@544 := #11 +@547 := @542 (@543 @544 @496) +@548 := @517 @467 +@549 := @548 @181 +@550 := @547 @549 +@551 := LexLeanPreservation.RunConv +@552 := #13 +@556 := @551 @552 @521 @193 @181 +@558 := @470 @179 @475 +@559 := Exists.{1} +@560 := LexLeanPreservation.Rust.ROut +@561 := @559 @560 +@562 := And +@563 := LexLeanPreservation.Rust.RealizesFn +@567 := @562 (@563 @496 @193 @19) +@568 := LexLeanPreservation.Rust.RCI +@570 := @568 #15 +@571 := LexLeanPreservation.Rust.fnIdent +@572 := @571 @552 +@579 := (hne : @558) -> @561 (fun (ro : @560) => @567 (@570 @572 @544 @19)) +@594 := {p : @10} -> + {c : @11} -> + {A : @12} -> + {f : @98} -> + {fn : @123} -> + {args : @177} -> + {env : @494} -> + {F : @467} -> + {o : @469} -> + (hB : @502) -> + (hfn : @520) -> (hwt : @528) -> (hbind : @540) -> (hF : @550) -> (hA : @556) -> @579 +@596 := LexLeanPreservation.Rust.compose @0 +@597 := @495 @0 +@602 := (n : @98) -> @597 @193 @187 @19 @179 +@603 := @512 @125 +@606 := @505 (@603 @179) @519 +@610 := @159 @496 @193 @181 @527 +@611 := @551 @0 +@614 := @611 @521 @193 @181 +@628 := {c : @11} -> + {A : @12} -> + {f : @98} -> + {fn : @123} -> + {args : @177} -> + {env : @494} -> + {F : @467} -> + {o : @469} -> + (hB : @602) -> + (hfn : @606) -> (hwt : @610) -> (hbind : @540) -> (hF : @550) -> (hA : @614) -> @579 +@629 := @596 @1 +@630 := @597 @1 +@634 := (n : @98) -> @630 @187 @19 @179 +@637 := @167 @193 @181 @527 +@638 := @543 @1 +@641 := @542 (@638 @496) @549 +@642 := @568 @1 +@652 := (hbind : @540) -> + (hF : @641) -> (hA : @614) -> (hne : @558) -> @561 (fun (ro : @560) => @567 (@642 @572 @544 @19)) +@662 := {A : @12} -> + {f : @98} -> + {fn : @123} -> + {args : @177} -> + {env : @494} -> {F : @467} -> {o : @469} -> (hB : @634) -> (hfn : @606) -> (hwt : @637) -> @652 +@663 := @629 @2 +@665 := @630 @2 @19 +@667 := (n : @98) -> @665 @179 +@668 := @173 @181 +@669 := @668 @527 +@678 := {f : @98} -> + {fn : @123} -> + {args : @177} -> + {env : @494} -> {F : @467} -> {o : @469} -> (hB : @667) -> (hfn : @606) -> (hwt : @669) -> @652 +@679 := @663 @111 +@681 := (n : @98) -> @665 @111 +@682 := @603 @111 +@683 := @505 @682 +@684 := @683 @519 +@685 := @638 @111 +@686 := @542 @685 +@687 := @686 @549 +@688 := @611 @111 +@690 := @688 @193 @181 +@692 := @642 (@571 @111) +@700 := (hF : @687) -> (hA : @690) -> (hne : @558) -> @561 (fun (ro : @560) => @567 (@692 @544 @19)) +@709 := {fn : @123} -> + {args : @177} -> + {env : @494} -> + {F : @467} -> {o : @469} -> (hB : @681) -> (hfn : @684) -> (hwt : @669) -> (hbind : @540) -> @700 +@710 := @679 @143 +@712 := @683 (@518 @143) +@713 := @526 @143 +@714 := @668 @713 +@716 := @531 (@532 @143) +@728 := {args : @177} -> + {env : @494} -> + {F : @467} -> + {o : @469} -> + (hB : @681) -> (hfn : @712) -> (hwt : @714) -> (hbind : @530 (@716 @179 @114) @539) -> @700 +@729 := @710 @97 +@732 := @381 (@328 (@270 @90)) +@734 := @173 @732 @713 +@736 := @91 (@5 @496) +@741 := @736 (@381 (@91 (@57 @187) @90)) +@745 := @530 (@716 @741 @114) @539 +@747 := @91 (@5 @544) +@749 := @91 (@5 @521) +@754 := @747 (@749 (@91 (@57 @496) @90)) +@756 := @688 @754 @181 +@759 := @91 (@5 #14) +@761 := @91 (@5 @552) +@762 := #12 +@782 := {env : @494} -> + {F : @467} -> + {o : @469} -> + (hB : @681) -> + (hfn : @712) -> + (hwt : @734) -> + (hbind : @745) -> + (hF : @687) -> + (hA : @756) -> + (hne : @558) -> @561 (fun (ro : @560) => @567 (@692 (@759 (@761 (@91 (@57 @762) @90))) @19)) +@783 := @729 @121 +@786 := @328 (@342 (@284 @90)) +@788 := @173 @786 @713 +@802 := @530 (@716 @732 @114) (@538 (@115 (@106 @269) (@115 (@109 @327) (@115 (@112 @380) @114)))) +@807 := @749 (@736 (@91 (@57 @193) @90)) +@809 := @688 @807 @181 +@811 := @91 (@5 @762) +@830 := {F : @467} -> + {o : @469} -> + (hB : @681) -> + (hfn : @712) -> + (hwt : @788) -> + (hbind : @802) -> + (hF : @687) -> + (hA : @809) -> + (hne : @558) -> @561 (fun (ro : @560) => @567 (@692 (@761 (@811 (@91 (@57 @544) @90))) @19)) +@831 := @783 @122 +@832 := @400 @713 +@846 := @530 (@716 @786 @114) (@538 (@115 (@106 @283) (@115 (@109 @341) (@115 (@112 @327) @114)))) +@848 := @686 (@548 @122) +@850 := @688 @741 @181 +@851 := @563 @122 +@872 := {o : @469} -> + (hB : @681) -> + (hfn : @712) -> + (hwt : @832) -> + (hbind : @846) -> + (hF : @848) -> + (hA : @850) -> + (hne : @558) -> + @561 (fun (ro : @560) => @562 (@851 @193 @19) (@692 (@811 (@747 (@91 (@57 @521) @90))) @19)) +@873 := @831 @423 +@874 := @407 @713 +@888 := @530 (@716 @399 @114) (@538 (@115 (@106 @266) (@115 (@109 @324) (@115 (@112 @341) @114)))) +@889 := @688 @732 +@892 := @420 @193 @187 @179 +@893 := @889 @892 +@896 := @420 @496 @193 @187 +@916 := (hB : @681) -> + (hfn : @712) -> + (hwt : @874) -> + (hbind : @888) -> + (hF : @848) -> + (hA : @893) -> + (hne : @470 @896 @475) -> + @561 (fun (ro : @560) => @562 (@851 (@420 @544 @521 @496) @19) (@692 @754 @19)) +@917 := @873 @147 +@918 := @414 @713 +@932 := @530 (@716 @406 @114) (@538 (@115 (@106 @280) (@115 (@109 @338) (@115 (@112 @324) @114)))) +@933 := @688 @786 +@936 := @420 @187 @179 @181 +@956 := (hfn : @712) -> + (hwt : @918) -> + (hbind : @932) -> + (hF : @848) -> + (hA : @933 @936) -> + (hne : @470 @892 @475) -> + @561 (fun (ro : @560) => @562 (@851 (@420 @521 @496 @193) @19) (@692 @807 @19)) +@957 := Eq.refl.{1} +@960 := @917 (@957 @504 @682) +@961 := @418 @713 +@975 := @530 (@716 @413 @114) (@538 (@115 (@106 @295) (@115 (@109 @6) (@115 (@112 @338) @114)))) +@976 := @688 @399 +@979 := @420 @179 @181 @183 +@995 := (hwt : @961) -> + (hbind : @975) -> + (hF : @848) -> + (hA : @976 @979) -> + (hne : @470 @936 @475) -> @561 (fun (ro : @560) => @562 (@851 @896 @19) (@692 @741 @19)) +@996 := @960 @417 +@998 := @716 @97 @114 +@1001 := @530 @998 (@538 @121) +@1002 := @688 @406 +@1005 := @420 @181 @183 @4 +@1020 := (hbind : @1001) -> + (hF : @848) -> + (hA : @1002 @1005) -> + (hne : @470 @979 @475) -> @561 (fun (ro : @560) => @562 (@851 @892 @19) (@692 @732 @19)) +@1023 := @996 (@957 @529 @998) +@1024 := @688 @413 +@1027 := @420 @183 @4 @15 +@1041 := (hF : @848) -> + (hA : @1024 @1027) -> + (hne : @470 @1005 @475) -> @561 (fun (ro : @560) => @562 (@851 @936 @19) (@692 @786 @19)) +@1044 := @1023 (@957 @541 @685) +@1058 := (hA : @688 @97 @423) -> + (hne : @470 @1027 @475) -> @561 (fun (ro : @560) => @562 (@851 @979 @19) (@692 @399 @19)) +@1059 := @1044 @466 +@1070 := (hne : @470 @423 @475) -> @561 (fun (ro : @560) => @562 (@851 @1005 @19) (@692 @406 @19)) +@1071 := @1059 @489 +@1077 := @562 (@851 @1027 @19) (@692 @413 @19) +@1079 := @561 (fun (ro : @560) => @1077) +@1081 := @561 (fun (__e_ro : @560) => @1077) +@1082 := LexLeanPreservation.Rust.RepresentableL +@1083 := @5 @17 +@1085 := @91 @61 @90 +@1089 := @1082 (@94 (@91 @1083 @1085)) +@1090 := (__e_hrep : @1089) -> @1081 +@1091 := fun (__e_hrep : @1089) => @1071 +@1092 := (c : @56) -> @1090 +@1093 := fun (c : @56) => @1091 +@1094 := (b : @3) -> @1092 +@1095 := fun (b : @3) => @1093 +@1096 := (a : @3) -> @1094 +@1097 := fun (a : @3) => @1095 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R23/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R23/Compose/RustStd.lex.tex new file mode 100644 index 000000000..117f11405 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R23/Compose/RustStd.lex.tex @@ -0,0 +1,543 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.Compose.RustStd.root : @1096 := @1097 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.RustStd.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.RustStd.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.RustStd.flags +@3 := Int64 +@4 := #3 +@5 := LexLeanTarget.TargetSyntax.Value.i64 +@6 := @5 @4 +@7 := LexLeanTarget.TargetSyntax.Ty.fixed +@9 := @7 LexLeanTarget.TargetSyntax.IntKind.i64 +@10 := LexLeanTarget.TargetSyntax.Program +@11 := LexLeanPreservation.Rust.RCrate +@12 := LexLeanPreservation.Rust.Flags +@13 := LexLeanPreservation.Rust.WT +@14 := @13 @4 +@15 := #2 +@16 := @14 @15 +@17 := #1 +@18 := @16 @17 +@19 := #0 +@20 := @5 @19 +@26 := {p : @10} -> {c : @11} -> {A : @12} -> (x : @3) -> @18 @20 @9 +@28 := LexLeanPreservation.Rust.wt_i64 @0 +@29 := @13 @0 +@31 := @29 @15 @17 +@36 := {c : @11} -> {A : @12} -> (x : @3) -> @31 @20 @9 +@37 := @28 @1 +@38 := @29 @1 +@39 := @38 @17 +@43 := {A : @12} -> (x : @3) -> @39 @20 @9 +@44 := @37 @2 +@45 := @38 @2 +@48 := (x : @3) -> @45 @20 @9 +@49 := @44 @4 +@51 := @45 @6 @9 +@52 := @5 @15 +@53 := @44 @15 +@55 := @45 @52 @9 +@56 := UInt64 +@57 := LexLeanTarget.TargetSyntax.Value.u64 +@58 := @57 @17 +@60 := @7 LexLeanTarget.TargetSyntax.IntKind.u64 +@61 := @57 @19 +@67 := {p : @10} -> {c : @11} -> {A : @12} -> (x : @56) -> @18 @61 @60 +@69 := LexLeanPreservation.Rust.wt_u64 @0 +@74 := {c : @11} -> {A : @12} -> (x : @56) -> @31 @61 @60 +@75 := @69 @1 +@79 := {A : @12} -> (x : @56) -> @39 @61 @60 +@80 := @75 @2 +@83 := (x : @56) -> @45 @61 @60 +@84 := @80 @17 +@86 := @45 @58 @60 +@87 := LexLeanTarget.TargetSyntax.Value +@88 := List.nil.{0} +@89 := List.cons.{0} +@90 := @88 @87 +@91 := @89 @87 +@93 := @91 @58 @90 +@94 := @91 @52 +@95 := @94 @93 +@96 := @91 @6 +@97 := @96 @95 +@98 := Nat +@99 := Prod.{0, 0} +@101 := @99 @98 @87 +@102 := 2 +@105 := Prod.mk.{0, 0} @98 @87 +@106 := @105 @102 +@107 := @106 @58 +@109 := @105 1 +@110 := @109 @52 +@111 := 0 +@112 := @105 @111 +@113 := @112 @6 +@114 := @88 @101 +@115 := @89 @101 +@117 := @115 @113 @114 +@119 := @115 @110 @117 +@121 := @115 @107 @119 +@122 := Bool.false +@123 := LexLeanTarget.TargetSyntax.Function +@124 := LexLeanTarget.TargetSyntax.Program.functions +@125 := @124 @0 +@126 := LexLeanTarget.TargetSyntax.Ty +@127 := @88 @98 +@128 := @88 @126 +@129 := LexLeanTarget.TargetSyntax.Ty.unit +@130 := LexLeanTarget.TargetSyntax.Value.unit +@133 := LexLeanTarget.TargetSyntax.Expr.value @129 @130 +@138 := LexLeanTarget.TargetSyntax.Function.mk @127 @128 @129 @133 +@143 := List.getD.{0} @123 @125 @111 @138 +@147 := fun (__e_n : @98) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.RustStd.root @19 @111 +@148 := LexLeanPreservation.Rust.WTL +@156 := {p : @10} -> {c : @11} -> {A : @12} -> @148 @15 @17 @19 @90 @128 +@158 := LexLeanPreservation.Rust.wtl_nil @0 +@159 := @148 @0 +@165 := {c : @11} -> {A : @12} -> @159 @17 @19 @90 @128 +@166 := @158 @1 +@167 := @159 @1 +@171 := {A : @12} -> @167 @19 @90 @128 +@172 := @166 @2 +@173 := @167 @2 +@174 := @173 @90 +@175 := @174 @128 +@176 := List.{0} +@177 := @176 @87 +@178 := @176 @126 +@179 := #6 +@180 := @13 @179 +@181 := #5 +@182 := @180 @181 +@183 := #4 +@186 := @182 @183 @4 @15 +@187 := #7 +@192 := @148 @187 @179 @181 @15 @17 +@193 := #8 +@196 := @148 @193 @187 @179 +@198 := @91 @181 @4 +@199 := @196 @198 +@200 := @89 @126 +@202 := @200 @183 @15 +@212 := {p : @10} -> + {c : @11} -> + {A : @12} -> + {v : @87} -> {t : @126} -> {vs : @177} -> {ts : @178} -> (h : @186) -> (hs : @192) -> @199 @202 +@214 := LexLeanPreservation.Rust.wtl_cons @0 +@234 := {c : @11} -> + {A : @12} -> + {v : @87} -> + {t : @126} -> + {vs : @177} -> + {ts : @178} -> + (h : @29 @181 @183 @4 @15) -> (hs : @159 @179 @181 @15 @17) -> @159 @187 @179 @198 @202 +@235 := @214 @1 +@251 := {A : @12} -> + {v : @87} -> + {t : @126} -> + {vs : @177} -> + {ts : @178} -> (h : @38 @183 @4 @15) -> (hs : @167 @181 @15 @17) -> @167 @179 @198 @202 +@252 := @235 @2 +@254 := @45 @4 @15 +@256 := @173 @15 @17 +@264 := {v : @87} -> + {t : @126} -> {vs : @177} -> {ts : @178} -> (h : @254) -> (hs : @256) -> @173 @198 @202 +@265 := @252 @58 +@266 := @57 @183 +@268 := @45 @266 @15 +@269 := @57 @179 +@270 := @91 @269 +@278 := {t : @126} -> {vs : @177} -> {ts : @178} -> (h : @268) -> (hs : @256) -> @173 (@270 @4) @202 +@279 := @265 @60 +@280 := @57 @4 +@282 := @45 @280 @60 +@283 := @57 @181 +@284 := @91 @283 +@286 := @173 (@284 @4) +@287 := @200 @60 +@288 := @287 @15 +@293 := {vs : @177} -> {ts : @178} -> (h : @282) -> (hs : @256) -> @286 @288 +@294 := @279 @90 +@295 := @57 @15 +@297 := @45 @295 @60 +@298 := @174 @17 +@300 := @91 @266 @90 +@305 := {ts : @178} -> (h : @297) -> (hs : @298) -> @173 @300 @288 +@306 := @294 @128 +@308 := @91 @280 @90 +@309 := @173 @308 +@310 := @287 @128 +@313 := (h : @86) -> (hs : @175) -> @309 @310 +@314 := @306 @84 +@316 := @91 @295 @90 +@318 := @173 @316 @310 +@319 := (hs : @175) -> @318 +@320 := @314 @172 +@322 := @173 @93 @310 +@323 := @252 @52 +@324 := @5 @181 +@325 := @45 @324 +@326 := @325 @15 +@327 := @5 @187 +@328 := @91 @327 +@330 := @173 (@328 @4) +@336 := {t : @126} -> {vs : @177} -> {ts : @178} -> (h : @326) -> (hs : @256) -> @330 @202 +@337 := @323 @9 +@338 := @5 @183 +@340 := @45 @338 @9 +@341 := @5 @179 +@342 := @91 @341 +@344 := @173 (@342 @4) +@345 := @200 @9 +@346 := @345 @15 +@351 := {vs : @177} -> {ts : @178} -> (h : @340) -> (hs : @256) -> @344 @346 +@352 := @337 @93 +@353 := @309 @17 +@354 := @91 @324 +@355 := @354 @300 +@360 := {ts : @178} -> (h : @51) -> (hs : @353) -> @173 @355 @346 +@361 := @352 @310 +@362 := @91 @338 +@363 := @362 @308 +@364 := @173 @363 +@365 := @345 @310 +@368 := (h : @55) -> (hs : @318) -> @364 @365 +@369 := @361 @53 +@370 := @96 @316 +@372 := @173 @370 @365 +@373 := (hs : @322) -> @372 +@374 := @369 @320 +@376 := @173 @95 @365 +@377 := @252 @6 +@379 := @45 @341 @15 +@380 := @5 @193 +@381 := @91 @380 +@389 := {t : @126} -> {vs : @177} -> {ts : @178} -> (h : @379) -> (hs : @256) -> @173 (@381 @4) @202 +@390 := @377 @9 +@396 := {vs : @177} -> {ts : @178} -> (h : @325 @9) -> (hs : @256) -> @330 @346 +@397 := @390 @95 +@398 := @364 @17 +@399 := @342 @355 +@400 := @173 @399 +@404 := {ts : @178} -> (h : @340) -> (hs : @398) -> @400 @346 +@405 := @397 @365 +@406 := @354 @363 +@407 := @173 @406 +@408 := @345 @365 +@411 := (h : @51) -> (hs : @372) -> @407 @408 +@412 := @405 @49 +@413 := @362 @370 +@414 := @173 @413 +@416 := (hs : @376) -> @414 @408 +@417 := @412 @374 +@418 := @173 @97 +@419 := @418 @408 +@420 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.denote +@423 := @420 @4 @15 @17 +@424 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.__fits_0 +@427 := @424 @4 @15 @17 +@431 := Coverage.Prims.fixedWide @4 @15 @17 +@432 := Option.{0} +@433 := @432 @3 +@434 := @432 @56 +@435 := @99 @433 +@436 := @435 @434 +@437 := @435 @436 +@438 := @435 @437 +@439 := @435 @438 +@440 := LexLeanPreservation.encOption +@442 := @440 @3 @5 +@444 := @440 @56 @57 +@446 := LexLeanPreservation.encPair @433 +@449 := @446 @434 @442 @444 +@452 := @446 @436 @442 @449 +@455 := @446 @437 @442 @452 +@458 := @446 @438 @442 @455 +@462 := @446 @439 @442 @458 @431 +@466 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.root @4 @15 @17 +@467 := Bool +@468 := Ne.{1} +@469 := LexLeanPreservation.Obs +@470 := @468 @469 +@471 := LexLeanPreservation.Rel +@474 := @470 (@471 @17 @19) +@475 := LexLeanPreservation.Obs.stuck +@478 := (f : @467) -> (v : @87) -> @474 @475 +@480 := LexLeanPreservation.Rust.rel_ne_stuck @427 +@488 := (v : @87) -> @470 (@471 (@424 @183 @4 @15) @19) @475 +@489 := @480 @462 +@493 := @470 (@471 @427 @462) @475 +@494 := @176 @101 +@495 := LexLeanPreservation.Rust.FunSem +@496 := #9 +@502 := (n : @98) -> @495 @496 @193 @187 @19 @179 +@503 := Eq.{1} +@504 := @432 @123 +@505 := @503 @504 +@512 := LexLeanRuntime.index (@176 @123) @123 (LexLeanRuntime.instIndexableList @123) +@516 := @505 (@512 (@124 @496) @179) +@517 := Option.some.{0} +@518 := @517 @123 +@519 := @518 @181 +@520 := @516 @519 +@521 := #10 +@525 := @148 @521 @496 @193 @181 +@526 := LexLeanTarget.TargetSyntax.Function.types +@527 := @526 @179 +@528 := @525 @527 +@529 := @432 @494 +@530 := @503 @529 +@531 := LexLeanTarget.TargetSemantics.bindAll +@532 := LexLeanTarget.TargetSyntax.Function.parameters +@537 := @530 (@531 (@532 @187) @179 @114) +@538 := @517 @494 +@539 := @538 @181 +@540 := @537 @539 +@541 := @432 @467 +@542 := @503 @541 +@543 := LexLeanPreservation.Rust.fnFallible +@544 := #11 +@547 := @542 (@543 @544 @496) +@548 := @517 @467 +@549 := @548 @181 +@550 := @547 @549 +@551 := LexLeanPreservation.RunConv +@552 := #13 +@556 := @551 @552 @521 @193 @181 +@558 := @470 @179 @475 +@559 := Exists.{1} +@560 := LexLeanPreservation.Rust.ROut +@561 := @559 @560 +@562 := And +@563 := LexLeanPreservation.Rust.RealizesFn +@567 := @562 (@563 @496 @193 @19) +@568 := LexLeanPreservation.Rust.RCI +@570 := @568 #15 +@571 := LexLeanPreservation.Rust.fnIdent +@572 := @571 @552 +@579 := (hne : @558) -> @561 (fun (ro : @560) => @567 (@570 @572 @544 @19)) +@594 := {p : @10} -> + {c : @11} -> + {A : @12} -> + {f : @98} -> + {fn : @123} -> + {args : @177} -> + {env : @494} -> + {F : @467} -> + {o : @469} -> + (hB : @502) -> + (hfn : @520) -> (hwt : @528) -> (hbind : @540) -> (hF : @550) -> (hA : @556) -> @579 +@596 := LexLeanPreservation.Rust.compose @0 +@597 := @495 @0 +@602 := (n : @98) -> @597 @193 @187 @19 @179 +@603 := @512 @125 +@606 := @505 (@603 @179) @519 +@610 := @159 @496 @193 @181 @527 +@611 := @551 @0 +@614 := @611 @521 @193 @181 +@628 := {c : @11} -> + {A : @12} -> + {f : @98} -> + {fn : @123} -> + {args : @177} -> + {env : @494} -> + {F : @467} -> + {o : @469} -> + (hB : @602) -> + (hfn : @606) -> (hwt : @610) -> (hbind : @540) -> (hF : @550) -> (hA : @614) -> @579 +@629 := @596 @1 +@630 := @597 @1 +@634 := (n : @98) -> @630 @187 @19 @179 +@637 := @167 @193 @181 @527 +@638 := @543 @1 +@641 := @542 (@638 @496) @549 +@642 := @568 @1 +@652 := (hbind : @540) -> + (hF : @641) -> (hA : @614) -> (hne : @558) -> @561 (fun (ro : @560) => @567 (@642 @572 @544 @19)) +@662 := {A : @12} -> + {f : @98} -> + {fn : @123} -> + {args : @177} -> + {env : @494} -> {F : @467} -> {o : @469} -> (hB : @634) -> (hfn : @606) -> (hwt : @637) -> @652 +@663 := @629 @2 +@665 := @630 @2 @19 +@667 := (n : @98) -> @665 @179 +@668 := @173 @181 +@669 := @668 @527 +@678 := {f : @98} -> + {fn : @123} -> + {args : @177} -> + {env : @494} -> {F : @467} -> {o : @469} -> (hB : @667) -> (hfn : @606) -> (hwt : @669) -> @652 +@679 := @663 @111 +@681 := (n : @98) -> @665 @111 +@682 := @603 @111 +@683 := @505 @682 +@684 := @683 @519 +@685 := @638 @111 +@686 := @542 @685 +@687 := @686 @549 +@688 := @611 @111 +@690 := @688 @193 @181 +@692 := @642 (@571 @111) +@700 := (hF : @687) -> (hA : @690) -> (hne : @558) -> @561 (fun (ro : @560) => @567 (@692 @544 @19)) +@709 := {fn : @123} -> + {args : @177} -> + {env : @494} -> + {F : @467} -> {o : @469} -> (hB : @681) -> (hfn : @684) -> (hwt : @669) -> (hbind : @540) -> @700 +@710 := @679 @143 +@712 := @683 (@518 @143) +@713 := @526 @143 +@714 := @668 @713 +@716 := @531 (@532 @143) +@728 := {args : @177} -> + {env : @494} -> + {F : @467} -> + {o : @469} -> + (hB : @681) -> (hfn : @712) -> (hwt : @714) -> (hbind : @530 (@716 @179 @114) @539) -> @700 +@729 := @710 @97 +@732 := @381 (@328 (@270 @90)) +@734 := @173 @732 @713 +@736 := @91 (@5 @496) +@741 := @736 (@381 (@91 (@57 @187) @90)) +@745 := @530 (@716 @741 @114) @539 +@747 := @91 (@5 @544) +@749 := @91 (@5 @521) +@754 := @747 (@749 (@91 (@57 @496) @90)) +@756 := @688 @754 @181 +@759 := @91 (@5 #14) +@761 := @91 (@5 @552) +@762 := #12 +@782 := {env : @494} -> + {F : @467} -> + {o : @469} -> + (hB : @681) -> + (hfn : @712) -> + (hwt : @734) -> + (hbind : @745) -> + (hF : @687) -> + (hA : @756) -> + (hne : @558) -> @561 (fun (ro : @560) => @567 (@692 (@759 (@761 (@91 (@57 @762) @90))) @19)) +@783 := @729 @121 +@786 := @328 (@342 (@284 @90)) +@788 := @173 @786 @713 +@802 := @530 (@716 @732 @114) (@538 (@115 (@106 @269) (@115 (@109 @327) (@115 (@112 @380) @114)))) +@807 := @749 (@736 (@91 (@57 @193) @90)) +@809 := @688 @807 @181 +@811 := @91 (@5 @762) +@830 := {F : @467} -> + {o : @469} -> + (hB : @681) -> + (hfn : @712) -> + (hwt : @788) -> + (hbind : @802) -> + (hF : @687) -> + (hA : @809) -> + (hne : @558) -> @561 (fun (ro : @560) => @567 (@692 (@761 (@811 (@91 (@57 @544) @90))) @19)) +@831 := @783 @122 +@832 := @400 @713 +@846 := @530 (@716 @786 @114) (@538 (@115 (@106 @283) (@115 (@109 @341) (@115 (@112 @327) @114)))) +@848 := @686 (@548 @122) +@850 := @688 @741 @181 +@851 := @563 @122 +@872 := {o : @469} -> + (hB : @681) -> + (hfn : @712) -> + (hwt : @832) -> + (hbind : @846) -> + (hF : @848) -> + (hA : @850) -> + (hne : @558) -> + @561 (fun (ro : @560) => @562 (@851 @193 @19) (@692 (@811 (@747 (@91 (@57 @521) @90))) @19)) +@873 := @831 @423 +@874 := @407 @713 +@888 := @530 (@716 @399 @114) (@538 (@115 (@106 @266) (@115 (@109 @324) (@115 (@112 @341) @114)))) +@889 := @688 @732 +@892 := @420 @193 @187 @179 +@893 := @889 @892 +@896 := @420 @496 @193 @187 +@916 := (hB : @681) -> + (hfn : @712) -> + (hwt : @874) -> + (hbind : @888) -> + (hF : @848) -> + (hA : @893) -> + (hne : @470 @896 @475) -> + @561 (fun (ro : @560) => @562 (@851 (@420 @544 @521 @496) @19) (@692 @754 @19)) +@917 := @873 @147 +@918 := @414 @713 +@932 := @530 (@716 @406 @114) (@538 (@115 (@106 @280) (@115 (@109 @338) (@115 (@112 @324) @114)))) +@933 := @688 @786 +@936 := @420 @187 @179 @181 +@956 := (hfn : @712) -> + (hwt : @918) -> + (hbind : @932) -> + (hF : @848) -> + (hA : @933 @936) -> + (hne : @470 @892 @475) -> + @561 (fun (ro : @560) => @562 (@851 (@420 @521 @496 @193) @19) (@692 @807 @19)) +@957 := Eq.refl.{1} +@960 := @917 (@957 @504 @682) +@961 := @418 @713 +@975 := @530 (@716 @413 @114) (@538 (@115 (@106 @295) (@115 (@109 @6) (@115 (@112 @338) @114)))) +@976 := @688 @399 +@979 := @420 @179 @181 @183 +@995 := (hwt : @961) -> + (hbind : @975) -> + (hF : @848) -> + (hA : @976 @979) -> + (hne : @470 @936 @475) -> @561 (fun (ro : @560) => @562 (@851 @896 @19) (@692 @741 @19)) +@996 := @960 @417 +@998 := @716 @97 @114 +@1001 := @530 @998 (@538 @121) +@1002 := @688 @406 +@1005 := @420 @181 @183 @4 +@1020 := (hbind : @1001) -> + (hF : @848) -> + (hA : @1002 @1005) -> + (hne : @470 @979 @475) -> @561 (fun (ro : @560) => @562 (@851 @892 @19) (@692 @732 @19)) +@1023 := @996 (@957 @529 @998) +@1024 := @688 @413 +@1027 := @420 @183 @4 @15 +@1041 := (hF : @848) -> + (hA : @1024 @1027) -> + (hne : @470 @1005 @475) -> @561 (fun (ro : @560) => @562 (@851 @936 @19) (@692 @786 @19)) +@1044 := @1023 (@957 @541 @685) +@1058 := (hA : @688 @97 @423) -> + (hne : @470 @1027 @475) -> @561 (fun (ro : @560) => @562 (@851 @979 @19) (@692 @399 @19)) +@1059 := @1044 @466 +@1070 := (hne : @470 @423 @475) -> @561 (fun (ro : @560) => @562 (@851 @1005 @19) (@692 @406 @19)) +@1071 := @1059 @489 +@1077 := @562 (@851 @1027 @19) (@692 @413 @19) +@1079 := @561 (fun (ro : @560) => @1077) +@1081 := @561 (fun (__e_ro : @560) => @1077) +@1082 := LexLeanPreservation.Rust.RepresentableL +@1083 := @5 @17 +@1085 := @91 @61 @90 +@1089 := @1082 (@94 (@91 @1083 @1085)) +@1090 := (__e_hrep : @1089) -> @1081 +@1091 := fun (__e_hrep : @1089) => @1071 +@1092 := (c : @56) -> @1090 +@1093 := fun (c : @56) => @1091 +@1094 := (b : @3) -> @1092 +@1095 := fun (b : @3) => @1093 +@1096 := (a : @3) -> @1094 +@1097 := fun (a : @3) => @1095 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R23/RustCore.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R23/RustCore.lean new file mode 100644 index 000000000..53bed3572 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R23/RustCore.lean @@ -0,0 +1,33 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.RustCore +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1, 2], types := [(.fixed .i64), (.fixed .i64), (.fixed .u64)], result := (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.option (.fixed .u64))))))), + body := (.build .pair (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.option (.fixed .u64))))))) [(.prim .checkedAdd [(.var 0), (.var 1)]), (.build .pair (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.option (.fixed .u64)))))) [(.prim .checkedSub [(.var 0), (.var 1)]), (.build .pair (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.option (.fixed .u64))))) [(.prim .checkedMul [(.var 0), (.var 1)]), (.build .pair (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.option (.fixed .u64)))) [(.prim .checkedQuot [(.var 0), (.var 1)]), (.build .pair (.pair (.option (.fixed .i64)) (.option (.fixed .u64))) [(.prim .checkedNeg [(.var 0)]), (.prim .checkedAdd [(.var 2), (.value (.fixed .u64) (.u64 1))])])])])])]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .core, items := [ + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.fixed .i64) }, { pattern := (.bind (.generated .binding 1)), type := (.fixed .i64) }, { pattern := (.bind (.generated .binding 2)), type := (.fixed .u64) }] (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.option (.fixed .u64))))))) (.mk [] (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedAdd .i64)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedSub .i64)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedMul .i64)) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedQuot .i64)) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 0)))] (.call (.runtime (.checkedNeg .i64)) [(.move (.generated .operand 9))] false))) (.block (.mk [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 11)) none (.lit (.fixed .u64 1)))] (.call (.runtime (.checkedAdd .u64)) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false))))))))))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [], (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedAdd .i64)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedSub .i64)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedMul .i64)) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedQuot .i64)) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 0)))] (.call (.runtime (.checkedNeg .i64)) [(.move (.generated .operand 9))] false))) (.block (.mk [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 11)) none (.lit (.fixed .u64 1)))] (.call (.runtime (.checkedAdd .u64)) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false)))))))), [(2, (.fixed .u64), (some 2)), (1, (.fixed .i64), (some 1)), (0, (.fixed .i64), (some 0))], rfl, rfl, + (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.checkedAdd .i64)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false)) (Corr.prim (ts := [(.fixed .i64), (.fixed .i64)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.checkedSub .i64)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false)) (Corr.prim (ts := [(.fixed .i64), (.fixed .i64)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.checkedMul .i64)) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false)) (Corr.prim (ts := [(.fixed .i64), (.fixed .i64)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.checkedQuot .i64)) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false)) (Corr.prim (ts := [(.fixed .i64), (.fixed .i64)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 0)))]) (tail := (.call (.runtime (.checkedNeg .i64)) [(.move (.generated .operand 9))] false)) (Corr.prim (ts := [(.fixed .i64)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 11)) none (.lit (.fixed .u64 1)))]) (tail := (.call (.runtime (.checkedAdd .u64)) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false)) (Corr.prim (ts := [(.fixed .u64), (.fixed .u64)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | _ + 1 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.RustCore diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R23/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R23/RustStd.lean new file mode 100644 index 000000000..44ff72155 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R23/RustStd.lean @@ -0,0 +1,33 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1, 2], types := [(.fixed .i64), (.fixed .i64), (.fixed .u64)], result := (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.option (.fixed .u64))))))), + body := (.build .pair (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.option (.fixed .u64))))))) [(.prim .checkedAdd [(.var 0), (.var 1)]), (.build .pair (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.option (.fixed .u64)))))) [(.prim .checkedSub [(.var 0), (.var 1)]), (.build .pair (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.option (.fixed .u64))))) [(.prim .checkedMul [(.var 0), (.var 1)]), (.build .pair (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.option (.fixed .u64)))) [(.prim .checkedQuot [(.var 0), (.var 1)]), (.build .pair (.pair (.option (.fixed .i64)) (.option (.fixed .u64))) [(.prim .checkedNeg [(.var 0)]), (.prim .checkedAdd [(.var 2), (.value (.fixed .u64) (.u64 1))])])])])])]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.fixed .i64) }, { pattern := (.bind (.generated .binding 1)), type := (.fixed .i64) }, { pattern := (.bind (.generated .binding 2)), type := (.fixed .u64) }] (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.option (.fixed .u64))))))) (.mk [] (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedAdd .i64)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedSub .i64)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedMul .i64)) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedQuot .i64)) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 0)))] (.call (.runtime (.checkedNeg .i64)) [(.move (.generated .operand 9))] false))) (.block (.mk [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 11)) none (.lit (.fixed .u64 1)))] (.call (.runtime (.checkedAdd .u64)) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false))))))))))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [], (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedAdd .i64)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedSub .i64)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedMul .i64)) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedQuot .i64)) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 0)))] (.call (.runtime (.checkedNeg .i64)) [(.move (.generated .operand 9))] false))) (.block (.mk [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 11)) none (.lit (.fixed .u64 1)))] (.call (.runtime (.checkedAdd .u64)) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false)))))))), [(2, (.fixed .u64), (some 2)), (1, (.fixed .i64), (some 1)), (0, (.fixed .i64), (some 0))], rfl, rfl, + (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.checkedAdd .i64)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false)) (Corr.prim (ts := [(.fixed .i64), (.fixed .i64)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.checkedSub .i64)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false)) (Corr.prim (ts := [(.fixed .i64), (.fixed .i64)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.checkedMul .i64)) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false)) (Corr.prim (ts := [(.fixed .i64), (.fixed .i64)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.checkedQuot .i64)) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false)) (Corr.prim (ts := [(.fixed .i64), (.fixed .i64)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 0)))]) (tail := (.call (.runtime (.checkedNeg .i64)) [(.move (.generated .operand 9))] false)) (Corr.prim (ts := [(.fixed .i64)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 11)) none (.lit (.fixed .u64 1)))]) (tail := (.call (.runtime (.checkedAdd .u64)) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false)) (Corr.prim (ts := [(.fixed .u64), (.fixed .u64)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | _ + 1 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R24.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R24.lean similarity index 98% rename from examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R24.lean rename to examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R24.lean index 95af6ef07..50d60c0ad 100644 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R24.lean +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R24.lean @@ -18,7 +18,7 @@ set_option maxRecDepth 100000 set_option maxHeartbeats 0 set_option synthInstance.maxHeartbeats 0 set_option linter.unusedVariables false -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24 def __prog : _root_.LexLeanTarget.TargetSyntax.Program := { adts := [], functions := [ @@ -37,4 +37,4 @@ def denote (a : UInt16) (b : UInt16) (s : UInt32) : _root_.LexLeanPreservation.O theorem root (a : UInt16) (b : UInt16) (s : UInt32) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.u16 a), (_root_.LexLeanTarget.TargetSyntax.Value.u16 b), (_root_.LexLeanTarget.TargetSyntax.Value.u32 s)] (_root_.LexLeanPreservation.Rel (__fits_0 a b s) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.u16 (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.u16 (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.u16 (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.u16 (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u16) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u16) _root_.LexLeanTarget.TargetSyntax.Value.bool)))))) (Coverage.Prims.bits a b s))) := _root_.LexLeanPreservation.run_of_funRel (__rel_0 a b s) -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24 +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24 diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R24/Compose/RustCore.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R24/Compose/RustCore.lex.tex new file mode 100644 index 000000000..cb785a896 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R24/Compose/RustCore.lex.tex @@ -0,0 +1,546 @@ +\begin{lexlean}{RustCore} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.Compose.RustCore} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.RustCore, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.Compose.RustCore.root : @1100 := @1101 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.Compose.RustCore.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.RustCore.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.RustCore.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.RustCore.flags +@3 := UInt16 +@4 := #3 +@5 := LexLeanTarget.TargetSyntax.Value.u16 +@6 := @5 @4 +@7 := LexLeanTarget.TargetSyntax.Ty.fixed +@9 := @7 LexLeanTarget.TargetSyntax.IntKind.u16 +@10 := LexLeanTarget.TargetSyntax.Program +@11 := LexLeanPreservation.Rust.RCrate +@12 := LexLeanPreservation.Rust.Flags +@13 := LexLeanPreservation.Rust.WT +@14 := @13 @4 +@15 := #2 +@16 := @14 @15 +@17 := #1 +@18 := @16 @17 +@19 := #0 +@20 := @5 @19 +@26 := {p : @10} -> {c : @11} -> {A : @12} -> (x : @3) -> @18 @20 @9 +@28 := LexLeanPreservation.Rust.wt_u16 @0 +@29 := @13 @0 +@31 := @29 @15 @17 +@36 := {c : @11} -> {A : @12} -> (x : @3) -> @31 @20 @9 +@37 := @28 @1 +@38 := @29 @1 +@39 := @38 @17 +@43 := {A : @12} -> (x : @3) -> @39 @20 @9 +@44 := @37 @2 +@45 := @38 @2 +@48 := (x : @3) -> @45 @20 @9 +@49 := @44 @4 +@51 := @45 @6 @9 +@52 := @5 @15 +@53 := @44 @15 +@55 := @45 @52 @9 +@56 := UInt32 +@57 := LexLeanTarget.TargetSyntax.Value.u32 +@58 := @57 @17 +@60 := @7 LexLeanTarget.TargetSyntax.IntKind.u32 +@61 := @57 @19 +@67 := {p : @10} -> {c : @11} -> {A : @12} -> (x : @56) -> @18 @61 @60 +@69 := LexLeanPreservation.Rust.wt_u32 @0 +@74 := {c : @11} -> {A : @12} -> (x : @56) -> @31 @61 @60 +@75 := @69 @1 +@79 := {A : @12} -> (x : @56) -> @39 @61 @60 +@80 := @75 @2 +@83 := (x : @56) -> @45 @61 @60 +@84 := @80 @17 +@86 := @45 @58 @60 +@87 := LexLeanTarget.TargetSyntax.Value +@88 := List.nil.{0} +@89 := List.cons.{0} +@90 := @88 @87 +@91 := @89 @87 +@93 := @91 @58 @90 +@94 := @91 @52 +@95 := @94 @93 +@96 := @91 @6 +@97 := @96 @95 +@98 := Nat +@99 := Prod.{0, 0} +@101 := @99 @98 @87 +@102 := 2 +@105 := Prod.mk.{0, 0} @98 @87 +@106 := @105 @102 +@107 := @106 @58 +@109 := @105 1 +@110 := @109 @52 +@111 := 0 +@112 := @105 @111 +@113 := @112 @6 +@114 := @88 @101 +@115 := @89 @101 +@117 := @115 @113 @114 +@119 := @115 @110 @117 +@121 := @115 @107 @119 +@122 := Bool.false +@123 := LexLeanTarget.TargetSyntax.Function +@124 := LexLeanTarget.TargetSyntax.Program.functions +@125 := @124 @0 +@126 := LexLeanTarget.TargetSyntax.Ty +@127 := @88 @98 +@128 := @88 @126 +@129 := LexLeanTarget.TargetSyntax.Ty.unit +@130 := LexLeanTarget.TargetSyntax.Value.unit +@133 := LexLeanTarget.TargetSyntax.Expr.value @129 @130 +@138 := LexLeanTarget.TargetSyntax.Function.mk @127 @128 @129 @133 +@143 := List.getD.{0} @123 @125 @111 @138 +@147 := fun (__e_n : @98) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.RustCore.root @19 @111 +@148 := LexLeanPreservation.Rust.WTL +@156 := {p : @10} -> {c : @11} -> {A : @12} -> @148 @15 @17 @19 @90 @128 +@158 := LexLeanPreservation.Rust.wtl_nil @0 +@159 := @148 @0 +@165 := {c : @11} -> {A : @12} -> @159 @17 @19 @90 @128 +@166 := @158 @1 +@167 := @159 @1 +@171 := {A : @12} -> @167 @19 @90 @128 +@172 := @166 @2 +@173 := @167 @2 +@174 := @173 @90 +@175 := @174 @128 +@176 := List.{0} +@177 := @176 @87 +@178 := @176 @126 +@179 := #6 +@180 := @13 @179 +@181 := #5 +@182 := @180 @181 +@183 := #4 +@186 := @182 @183 @4 @15 +@187 := #7 +@192 := @148 @187 @179 @181 @15 @17 +@193 := #8 +@196 := @148 @193 @187 @179 +@198 := @91 @181 @4 +@199 := @196 @198 +@200 := @89 @126 +@202 := @200 @183 @15 +@212 := {p : @10} -> + {c : @11} -> + {A : @12} -> + {v : @87} -> {t : @126} -> {vs : @177} -> {ts : @178} -> (h : @186) -> (hs : @192) -> @199 @202 +@214 := LexLeanPreservation.Rust.wtl_cons @0 +@234 := {c : @11} -> + {A : @12} -> + {v : @87} -> + {t : @126} -> + {vs : @177} -> + {ts : @178} -> + (h : @29 @181 @183 @4 @15) -> (hs : @159 @179 @181 @15 @17) -> @159 @187 @179 @198 @202 +@235 := @214 @1 +@251 := {A : @12} -> + {v : @87} -> + {t : @126} -> + {vs : @177} -> + {ts : @178} -> (h : @38 @183 @4 @15) -> (hs : @167 @181 @15 @17) -> @167 @179 @198 @202 +@252 := @235 @2 +@254 := @45 @4 @15 +@256 := @173 @15 @17 +@264 := {v : @87} -> + {t : @126} -> {vs : @177} -> {ts : @178} -> (h : @254) -> (hs : @256) -> @173 @198 @202 +@265 := @252 @58 +@266 := @57 @183 +@268 := @45 @266 @15 +@269 := @57 @179 +@270 := @91 @269 +@278 := {t : @126} -> {vs : @177} -> {ts : @178} -> (h : @268) -> (hs : @256) -> @173 (@270 @4) @202 +@279 := @265 @60 +@280 := @57 @4 +@282 := @45 @280 @60 +@283 := @57 @181 +@284 := @91 @283 +@286 := @173 (@284 @4) +@287 := @200 @60 +@288 := @287 @15 +@293 := {vs : @177} -> {ts : @178} -> (h : @282) -> (hs : @256) -> @286 @288 +@294 := @279 @90 +@295 := @57 @15 +@297 := @45 @295 @60 +@298 := @174 @17 +@300 := @91 @266 @90 +@305 := {ts : @178} -> (h : @297) -> (hs : @298) -> @173 @300 @288 +@306 := @294 @128 +@308 := @91 @280 @90 +@309 := @173 @308 +@310 := @287 @128 +@313 := (h : @86) -> (hs : @175) -> @309 @310 +@314 := @306 @84 +@316 := @91 @295 @90 +@318 := @173 @316 @310 +@319 := (hs : @175) -> @318 +@320 := @314 @172 +@322 := @173 @93 @310 +@323 := @252 @52 +@324 := @5 @181 +@325 := @45 @324 +@326 := @325 @15 +@327 := @5 @187 +@328 := @91 @327 +@330 := @173 (@328 @4) +@336 := {t : @126} -> {vs : @177} -> {ts : @178} -> (h : @326) -> (hs : @256) -> @330 @202 +@337 := @323 @9 +@338 := @5 @183 +@340 := @45 @338 @9 +@341 := @5 @179 +@342 := @91 @341 +@344 := @173 (@342 @4) +@345 := @200 @9 +@346 := @345 @15 +@351 := {vs : @177} -> {ts : @178} -> (h : @340) -> (hs : @256) -> @344 @346 +@352 := @337 @93 +@353 := @309 @17 +@354 := @91 @324 +@355 := @354 @300 +@360 := {ts : @178} -> (h : @51) -> (hs : @353) -> @173 @355 @346 +@361 := @352 @310 +@362 := @91 @338 +@363 := @362 @308 +@364 := @173 @363 +@365 := @345 @310 +@368 := (h : @55) -> (hs : @318) -> @364 @365 +@369 := @361 @53 +@370 := @96 @316 +@372 := @173 @370 @365 +@373 := (hs : @322) -> @372 +@374 := @369 @320 +@376 := @173 @95 @365 +@377 := @252 @6 +@379 := @45 @341 @15 +@380 := @5 @193 +@381 := @91 @380 +@389 := {t : @126} -> {vs : @177} -> {ts : @178} -> (h : @379) -> (hs : @256) -> @173 (@381 @4) @202 +@390 := @377 @9 +@396 := {vs : @177} -> {ts : @178} -> (h : @325 @9) -> (hs : @256) -> @330 @346 +@397 := @390 @95 +@398 := @364 @17 +@399 := @342 @355 +@400 := @173 @399 +@404 := {ts : @178} -> (h : @340) -> (hs : @398) -> @400 @346 +@405 := @397 @365 +@406 := @354 @363 +@407 := @173 @406 +@408 := @345 @365 +@411 := (h : @51) -> (hs : @372) -> @407 @408 +@412 := @405 @49 +@413 := @362 @370 +@414 := @173 @413 +@416 := (hs : @376) -> @414 @408 +@417 := @412 @374 +@418 := @173 @97 +@419 := @418 @408 +@420 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.denote +@423 := @420 @4 @15 @17 +@424 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.__fits_0 +@427 := @424 @4 @15 @17 +@431 := Coverage.Prims.bits @4 @15 @17 +@432 := Option.{0} +@433 := @432 @3 +@434 := Bool +@435 := @99 @433 +@436 := @435 @434 +@437 := @435 @436 +@438 := @99 @3 +@439 := @438 @437 +@440 := @438 @439 +@441 := @438 @440 +@444 := LexLeanPreservation.encOption @3 @5 +@445 := LexLeanTarget.TargetSyntax.Value.bool +@446 := LexLeanPreservation.encPair +@447 := @446 @433 +@450 := @447 @434 @444 @445 +@453 := @447 @436 @444 @450 +@454 := @446 @3 +@457 := @454 @437 @5 @453 +@460 := @454 @439 @5 @457 +@463 := @454 @440 @5 @460 +@467 := @454 @441 @5 @463 @431 +@471 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.root @4 @15 @17 +@472 := Ne.{1} +@473 := LexLeanPreservation.Obs +@474 := @472 @473 +@475 := LexLeanPreservation.Rel +@478 := @474 (@475 @17 @19) +@479 := LexLeanPreservation.Obs.stuck +@482 := (f : @434) -> (v : @87) -> @478 @479 +@484 := LexLeanPreservation.Rust.rel_ne_stuck @427 +@492 := (v : @87) -> @474 (@475 (@424 @183 @4 @15) @19) @479 +@493 := @484 @467 +@497 := @474 (@475 @427 @467) @479 +@498 := @176 @101 +@499 := LexLeanPreservation.Rust.FunSem +@500 := #9 +@506 := (n : @98) -> @499 @500 @193 @187 @19 @179 +@507 := Eq.{1} +@508 := @432 @123 +@509 := @507 @508 +@516 := LexLeanRuntime.index (@176 @123) @123 (LexLeanRuntime.instIndexableList @123) +@520 := @509 (@516 (@124 @500) @179) +@521 := Option.some.{0} +@522 := @521 @123 +@523 := @522 @181 +@524 := @520 @523 +@525 := #10 +@529 := @148 @525 @500 @193 @181 +@530 := LexLeanTarget.TargetSyntax.Function.types +@531 := @530 @179 +@532 := @529 @531 +@533 := @432 @498 +@534 := @507 @533 +@535 := LexLeanTarget.TargetSemantics.bindAll +@536 := LexLeanTarget.TargetSyntax.Function.parameters +@541 := @534 (@535 (@536 @187) @179 @114) +@542 := @521 @498 +@543 := @542 @181 +@544 := @541 @543 +@545 := @432 @434 +@546 := @507 @545 +@547 := LexLeanPreservation.Rust.fnFallible +@548 := #11 +@551 := @546 (@547 @548 @500) +@552 := @521 @434 +@553 := @552 @181 +@554 := @551 @553 +@555 := LexLeanPreservation.RunConv +@556 := #13 +@560 := @555 @556 @525 @193 @181 +@562 := @474 @179 @479 +@563 := Exists.{1} +@564 := LexLeanPreservation.Rust.ROut +@565 := @563 @564 +@566 := And +@567 := LexLeanPreservation.Rust.RealizesFn +@571 := @566 (@567 @500 @193 @19) +@572 := LexLeanPreservation.Rust.RCI +@574 := @572 #15 +@575 := LexLeanPreservation.Rust.fnIdent +@576 := @575 @556 +@583 := (hne : @562) -> @565 (fun (ro : @564) => @571 (@574 @576 @548 @19)) +@598 := {p : @10} -> + {c : @11} -> + {A : @12} -> + {f : @98} -> + {fn : @123} -> + {args : @177} -> + {env : @498} -> + {F : @434} -> + {o : @473} -> + (hB : @506) -> + (hfn : @524) -> (hwt : @532) -> (hbind : @544) -> (hF : @554) -> (hA : @560) -> @583 +@600 := LexLeanPreservation.Rust.compose @0 +@601 := @499 @0 +@606 := (n : @98) -> @601 @193 @187 @19 @179 +@607 := @516 @125 +@610 := @509 (@607 @179) @523 +@614 := @159 @500 @193 @181 @531 +@615 := @555 @0 +@618 := @615 @525 @193 @181 +@632 := {c : @11} -> + {A : @12} -> + {f : @98} -> + {fn : @123} -> + {args : @177} -> + {env : @498} -> + {F : @434} -> + {o : @473} -> + (hB : @606) -> + (hfn : @610) -> (hwt : @614) -> (hbind : @544) -> (hF : @554) -> (hA : @618) -> @583 +@633 := @600 @1 +@634 := @601 @1 +@638 := (n : @98) -> @634 @187 @19 @179 +@641 := @167 @193 @181 @531 +@642 := @547 @1 +@645 := @546 (@642 @500) @553 +@646 := @572 @1 +@656 := (hbind : @544) -> + (hF : @645) -> (hA : @618) -> (hne : @562) -> @565 (fun (ro : @564) => @571 (@646 @576 @548 @19)) +@666 := {A : @12} -> + {f : @98} -> + {fn : @123} -> + {args : @177} -> + {env : @498} -> {F : @434} -> {o : @473} -> (hB : @638) -> (hfn : @610) -> (hwt : @641) -> @656 +@667 := @633 @2 +@669 := @634 @2 @19 +@671 := (n : @98) -> @669 @179 +@672 := @173 @181 +@673 := @672 @531 +@682 := {f : @98} -> + {fn : @123} -> + {args : @177} -> + {env : @498} -> {F : @434} -> {o : @473} -> (hB : @671) -> (hfn : @610) -> (hwt : @673) -> @656 +@683 := @667 @111 +@685 := (n : @98) -> @669 @111 +@686 := @607 @111 +@687 := @509 @686 +@688 := @687 @523 +@689 := @642 @111 +@690 := @546 @689 +@691 := @690 @553 +@692 := @615 @111 +@694 := @692 @193 @181 +@696 := @646 (@575 @111) +@704 := (hF : @691) -> (hA : @694) -> (hne : @562) -> @565 (fun (ro : @564) => @571 (@696 @548 @19)) +@713 := {fn : @123} -> + {args : @177} -> + {env : @498} -> + {F : @434} -> {o : @473} -> (hB : @685) -> (hfn : @688) -> (hwt : @673) -> (hbind : @544) -> @704 +@714 := @683 @143 +@716 := @687 (@522 @143) +@717 := @530 @143 +@718 := @672 @717 +@720 := @535 (@536 @143) +@732 := {args : @177} -> + {env : @498} -> + {F : @434} -> + {o : @473} -> + (hB : @685) -> (hfn : @716) -> (hwt : @718) -> (hbind : @534 (@720 @179 @114) @543) -> @704 +@733 := @714 @97 +@736 := @381 (@328 (@270 @90)) +@738 := @173 @736 @717 +@740 := @91 (@5 @500) +@745 := @740 (@381 (@91 (@57 @187) @90)) +@749 := @534 (@720 @745 @114) @543 +@751 := @91 (@5 @548) +@753 := @91 (@5 @525) +@758 := @751 (@753 (@91 (@57 @500) @90)) +@760 := @692 @758 @181 +@763 := @91 (@5 #14) +@765 := @91 (@5 @556) +@766 := #12 +@786 := {env : @498} -> + {F : @434} -> + {o : @473} -> + (hB : @685) -> + (hfn : @716) -> + (hwt : @738) -> + (hbind : @749) -> + (hF : @691) -> + (hA : @760) -> + (hne : @562) -> @565 (fun (ro : @564) => @571 (@696 (@763 (@765 (@91 (@57 @766) @90))) @19)) +@787 := @733 @121 +@790 := @328 (@342 (@284 @90)) +@792 := @173 @790 @717 +@806 := @534 (@720 @736 @114) (@542 (@115 (@106 @269) (@115 (@109 @327) (@115 (@112 @380) @114)))) +@811 := @753 (@740 (@91 (@57 @193) @90)) +@813 := @692 @811 @181 +@815 := @91 (@5 @766) +@834 := {F : @434} -> + {o : @473} -> + (hB : @685) -> + (hfn : @716) -> + (hwt : @792) -> + (hbind : @806) -> + (hF : @691) -> + (hA : @813) -> + (hne : @562) -> @565 (fun (ro : @564) => @571 (@696 (@765 (@815 (@91 (@57 @548) @90))) @19)) +@835 := @787 @122 +@836 := @400 @717 +@850 := @534 (@720 @790 @114) (@542 (@115 (@106 @283) (@115 (@109 @341) (@115 (@112 @327) @114)))) +@852 := @690 (@552 @122) +@854 := @692 @745 @181 +@855 := @567 @122 +@876 := {o : @473} -> + (hB : @685) -> + (hfn : @716) -> + (hwt : @836) -> + (hbind : @850) -> + (hF : @852) -> + (hA : @854) -> + (hne : @562) -> + @565 (fun (ro : @564) => @566 (@855 @193 @19) (@696 (@815 (@751 (@91 (@57 @525) @90))) @19)) +@877 := @835 @423 +@878 := @407 @717 +@892 := @534 (@720 @399 @114) (@542 (@115 (@106 @266) (@115 (@109 @324) (@115 (@112 @341) @114)))) +@893 := @692 @736 +@896 := @420 @193 @187 @179 +@897 := @893 @896 +@900 := @420 @500 @193 @187 +@920 := (hB : @685) -> + (hfn : @716) -> + (hwt : @878) -> + (hbind : @892) -> + (hF : @852) -> + (hA : @897) -> + (hne : @474 @900 @479) -> + @565 (fun (ro : @564) => @566 (@855 (@420 @548 @525 @500) @19) (@696 @758 @19)) +@921 := @877 @147 +@922 := @414 @717 +@936 := @534 (@720 @406 @114) (@542 (@115 (@106 @280) (@115 (@109 @338) (@115 (@112 @324) @114)))) +@937 := @692 @790 +@940 := @420 @187 @179 @181 +@960 := (hfn : @716) -> + (hwt : @922) -> + (hbind : @936) -> + (hF : @852) -> + (hA : @937 @940) -> + (hne : @474 @896 @479) -> + @565 (fun (ro : @564) => @566 (@855 (@420 @525 @500 @193) @19) (@696 @811 @19)) +@961 := Eq.refl.{1} +@964 := @921 (@961 @508 @686) +@965 := @418 @717 +@979 := @534 (@720 @413 @114) (@542 (@115 (@106 @295) (@115 (@109 @6) (@115 (@112 @338) @114)))) +@980 := @692 @399 +@983 := @420 @179 @181 @183 +@999 := (hwt : @965) -> + (hbind : @979) -> + (hF : @852) -> + (hA : @980 @983) -> + (hne : @474 @940 @479) -> @565 (fun (ro : @564) => @566 (@855 @900 @19) (@696 @745 @19)) +@1000 := @964 @417 +@1002 := @720 @97 @114 +@1005 := @534 @1002 (@542 @121) +@1006 := @692 @406 +@1009 := @420 @181 @183 @4 +@1024 := (hbind : @1005) -> + (hF : @852) -> + (hA : @1006 @1009) -> + (hne : @474 @983 @479) -> @565 (fun (ro : @564) => @566 (@855 @896 @19) (@696 @736 @19)) +@1027 := @1000 (@961 @533 @1002) +@1028 := @692 @413 +@1031 := @420 @183 @4 @15 +@1045 := (hF : @852) -> + (hA : @1028 @1031) -> + (hne : @474 @1009 @479) -> @565 (fun (ro : @564) => @566 (@855 @940 @19) (@696 @790 @19)) +@1048 := @1027 (@961 @545 @689) +@1062 := (hA : @692 @97 @423) -> + (hne : @474 @1031 @479) -> @565 (fun (ro : @564) => @566 (@855 @983 @19) (@696 @399 @19)) +@1063 := @1048 @471 +@1074 := (hne : @474 @423 @479) -> @565 (fun (ro : @564) => @566 (@855 @1009 @19) (@696 @406 @19)) +@1075 := @1063 @493 +@1081 := @566 (@855 @1031 @19) (@696 @413 @19) +@1083 := @565 (fun (ro : @564) => @1081) +@1085 := @565 (fun (__e_ro : @564) => @1081) +@1086 := LexLeanPreservation.Rust.RepresentableL +@1087 := @5 @17 +@1089 := @91 @61 @90 +@1093 := @1086 (@94 (@91 @1087 @1089)) +@1094 := (__e_hrep : @1093) -> @1085 +@1095 := fun (__e_hrep : @1093) => @1075 +@1096 := (s : @56) -> @1094 +@1097 := fun (s : @56) => @1095 +@1098 := (b : @3) -> @1096 +@1099 := fun (b : @3) => @1097 +@1100 := (a : @3) -> @1098 +@1101 := fun (a : @3) => @1099 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R24/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R24/Compose/RustStd.lex.tex new file mode 100644 index 000000000..0b5be3aa5 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R24/Compose/RustStd.lex.tex @@ -0,0 +1,546 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.Compose.RustStd.root : @1100 := @1101 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.RustStd.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.RustStd.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.RustStd.flags +@3 := UInt16 +@4 := #3 +@5 := LexLeanTarget.TargetSyntax.Value.u16 +@6 := @5 @4 +@7 := LexLeanTarget.TargetSyntax.Ty.fixed +@9 := @7 LexLeanTarget.TargetSyntax.IntKind.u16 +@10 := LexLeanTarget.TargetSyntax.Program +@11 := LexLeanPreservation.Rust.RCrate +@12 := LexLeanPreservation.Rust.Flags +@13 := LexLeanPreservation.Rust.WT +@14 := @13 @4 +@15 := #2 +@16 := @14 @15 +@17 := #1 +@18 := @16 @17 +@19 := #0 +@20 := @5 @19 +@26 := {p : @10} -> {c : @11} -> {A : @12} -> (x : @3) -> @18 @20 @9 +@28 := LexLeanPreservation.Rust.wt_u16 @0 +@29 := @13 @0 +@31 := @29 @15 @17 +@36 := {c : @11} -> {A : @12} -> (x : @3) -> @31 @20 @9 +@37 := @28 @1 +@38 := @29 @1 +@39 := @38 @17 +@43 := {A : @12} -> (x : @3) -> @39 @20 @9 +@44 := @37 @2 +@45 := @38 @2 +@48 := (x : @3) -> @45 @20 @9 +@49 := @44 @4 +@51 := @45 @6 @9 +@52 := @5 @15 +@53 := @44 @15 +@55 := @45 @52 @9 +@56 := UInt32 +@57 := LexLeanTarget.TargetSyntax.Value.u32 +@58 := @57 @17 +@60 := @7 LexLeanTarget.TargetSyntax.IntKind.u32 +@61 := @57 @19 +@67 := {p : @10} -> {c : @11} -> {A : @12} -> (x : @56) -> @18 @61 @60 +@69 := LexLeanPreservation.Rust.wt_u32 @0 +@74 := {c : @11} -> {A : @12} -> (x : @56) -> @31 @61 @60 +@75 := @69 @1 +@79 := {A : @12} -> (x : @56) -> @39 @61 @60 +@80 := @75 @2 +@83 := (x : @56) -> @45 @61 @60 +@84 := @80 @17 +@86 := @45 @58 @60 +@87 := LexLeanTarget.TargetSyntax.Value +@88 := List.nil.{0} +@89 := List.cons.{0} +@90 := @88 @87 +@91 := @89 @87 +@93 := @91 @58 @90 +@94 := @91 @52 +@95 := @94 @93 +@96 := @91 @6 +@97 := @96 @95 +@98 := Nat +@99 := Prod.{0, 0} +@101 := @99 @98 @87 +@102 := 2 +@105 := Prod.mk.{0, 0} @98 @87 +@106 := @105 @102 +@107 := @106 @58 +@109 := @105 1 +@110 := @109 @52 +@111 := 0 +@112 := @105 @111 +@113 := @112 @6 +@114 := @88 @101 +@115 := @89 @101 +@117 := @115 @113 @114 +@119 := @115 @110 @117 +@121 := @115 @107 @119 +@122 := Bool.false +@123 := LexLeanTarget.TargetSyntax.Function +@124 := LexLeanTarget.TargetSyntax.Program.functions +@125 := @124 @0 +@126 := LexLeanTarget.TargetSyntax.Ty +@127 := @88 @98 +@128 := @88 @126 +@129 := LexLeanTarget.TargetSyntax.Ty.unit +@130 := LexLeanTarget.TargetSyntax.Value.unit +@133 := LexLeanTarget.TargetSyntax.Expr.value @129 @130 +@138 := LexLeanTarget.TargetSyntax.Function.mk @127 @128 @129 @133 +@143 := List.getD.{0} @123 @125 @111 @138 +@147 := fun (__e_n : @98) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.RustStd.root @19 @111 +@148 := LexLeanPreservation.Rust.WTL +@156 := {p : @10} -> {c : @11} -> {A : @12} -> @148 @15 @17 @19 @90 @128 +@158 := LexLeanPreservation.Rust.wtl_nil @0 +@159 := @148 @0 +@165 := {c : @11} -> {A : @12} -> @159 @17 @19 @90 @128 +@166 := @158 @1 +@167 := @159 @1 +@171 := {A : @12} -> @167 @19 @90 @128 +@172 := @166 @2 +@173 := @167 @2 +@174 := @173 @90 +@175 := @174 @128 +@176 := List.{0} +@177 := @176 @87 +@178 := @176 @126 +@179 := #6 +@180 := @13 @179 +@181 := #5 +@182 := @180 @181 +@183 := #4 +@186 := @182 @183 @4 @15 +@187 := #7 +@192 := @148 @187 @179 @181 @15 @17 +@193 := #8 +@196 := @148 @193 @187 @179 +@198 := @91 @181 @4 +@199 := @196 @198 +@200 := @89 @126 +@202 := @200 @183 @15 +@212 := {p : @10} -> + {c : @11} -> + {A : @12} -> + {v : @87} -> {t : @126} -> {vs : @177} -> {ts : @178} -> (h : @186) -> (hs : @192) -> @199 @202 +@214 := LexLeanPreservation.Rust.wtl_cons @0 +@234 := {c : @11} -> + {A : @12} -> + {v : @87} -> + {t : @126} -> + {vs : @177} -> + {ts : @178} -> + (h : @29 @181 @183 @4 @15) -> (hs : @159 @179 @181 @15 @17) -> @159 @187 @179 @198 @202 +@235 := @214 @1 +@251 := {A : @12} -> + {v : @87} -> + {t : @126} -> + {vs : @177} -> + {ts : @178} -> (h : @38 @183 @4 @15) -> (hs : @167 @181 @15 @17) -> @167 @179 @198 @202 +@252 := @235 @2 +@254 := @45 @4 @15 +@256 := @173 @15 @17 +@264 := {v : @87} -> + {t : @126} -> {vs : @177} -> {ts : @178} -> (h : @254) -> (hs : @256) -> @173 @198 @202 +@265 := @252 @58 +@266 := @57 @183 +@268 := @45 @266 @15 +@269 := @57 @179 +@270 := @91 @269 +@278 := {t : @126} -> {vs : @177} -> {ts : @178} -> (h : @268) -> (hs : @256) -> @173 (@270 @4) @202 +@279 := @265 @60 +@280 := @57 @4 +@282 := @45 @280 @60 +@283 := @57 @181 +@284 := @91 @283 +@286 := @173 (@284 @4) +@287 := @200 @60 +@288 := @287 @15 +@293 := {vs : @177} -> {ts : @178} -> (h : @282) -> (hs : @256) -> @286 @288 +@294 := @279 @90 +@295 := @57 @15 +@297 := @45 @295 @60 +@298 := @174 @17 +@300 := @91 @266 @90 +@305 := {ts : @178} -> (h : @297) -> (hs : @298) -> @173 @300 @288 +@306 := @294 @128 +@308 := @91 @280 @90 +@309 := @173 @308 +@310 := @287 @128 +@313 := (h : @86) -> (hs : @175) -> @309 @310 +@314 := @306 @84 +@316 := @91 @295 @90 +@318 := @173 @316 @310 +@319 := (hs : @175) -> @318 +@320 := @314 @172 +@322 := @173 @93 @310 +@323 := @252 @52 +@324 := @5 @181 +@325 := @45 @324 +@326 := @325 @15 +@327 := @5 @187 +@328 := @91 @327 +@330 := @173 (@328 @4) +@336 := {t : @126} -> {vs : @177} -> {ts : @178} -> (h : @326) -> (hs : @256) -> @330 @202 +@337 := @323 @9 +@338 := @5 @183 +@340 := @45 @338 @9 +@341 := @5 @179 +@342 := @91 @341 +@344 := @173 (@342 @4) +@345 := @200 @9 +@346 := @345 @15 +@351 := {vs : @177} -> {ts : @178} -> (h : @340) -> (hs : @256) -> @344 @346 +@352 := @337 @93 +@353 := @309 @17 +@354 := @91 @324 +@355 := @354 @300 +@360 := {ts : @178} -> (h : @51) -> (hs : @353) -> @173 @355 @346 +@361 := @352 @310 +@362 := @91 @338 +@363 := @362 @308 +@364 := @173 @363 +@365 := @345 @310 +@368 := (h : @55) -> (hs : @318) -> @364 @365 +@369 := @361 @53 +@370 := @96 @316 +@372 := @173 @370 @365 +@373 := (hs : @322) -> @372 +@374 := @369 @320 +@376 := @173 @95 @365 +@377 := @252 @6 +@379 := @45 @341 @15 +@380 := @5 @193 +@381 := @91 @380 +@389 := {t : @126} -> {vs : @177} -> {ts : @178} -> (h : @379) -> (hs : @256) -> @173 (@381 @4) @202 +@390 := @377 @9 +@396 := {vs : @177} -> {ts : @178} -> (h : @325 @9) -> (hs : @256) -> @330 @346 +@397 := @390 @95 +@398 := @364 @17 +@399 := @342 @355 +@400 := @173 @399 +@404 := {ts : @178} -> (h : @340) -> (hs : @398) -> @400 @346 +@405 := @397 @365 +@406 := @354 @363 +@407 := @173 @406 +@408 := @345 @365 +@411 := (h : @51) -> (hs : @372) -> @407 @408 +@412 := @405 @49 +@413 := @362 @370 +@414 := @173 @413 +@416 := (hs : @376) -> @414 @408 +@417 := @412 @374 +@418 := @173 @97 +@419 := @418 @408 +@420 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.denote +@423 := @420 @4 @15 @17 +@424 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.__fits_0 +@427 := @424 @4 @15 @17 +@431 := Coverage.Prims.bits @4 @15 @17 +@432 := Option.{0} +@433 := @432 @3 +@434 := Bool +@435 := @99 @433 +@436 := @435 @434 +@437 := @435 @436 +@438 := @99 @3 +@439 := @438 @437 +@440 := @438 @439 +@441 := @438 @440 +@444 := LexLeanPreservation.encOption @3 @5 +@445 := LexLeanTarget.TargetSyntax.Value.bool +@446 := LexLeanPreservation.encPair +@447 := @446 @433 +@450 := @447 @434 @444 @445 +@453 := @447 @436 @444 @450 +@454 := @446 @3 +@457 := @454 @437 @5 @453 +@460 := @454 @439 @5 @457 +@463 := @454 @440 @5 @460 +@467 := @454 @441 @5 @463 @431 +@471 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.root @4 @15 @17 +@472 := Ne.{1} +@473 := LexLeanPreservation.Obs +@474 := @472 @473 +@475 := LexLeanPreservation.Rel +@478 := @474 (@475 @17 @19) +@479 := LexLeanPreservation.Obs.stuck +@482 := (f : @434) -> (v : @87) -> @478 @479 +@484 := LexLeanPreservation.Rust.rel_ne_stuck @427 +@492 := (v : @87) -> @474 (@475 (@424 @183 @4 @15) @19) @479 +@493 := @484 @467 +@497 := @474 (@475 @427 @467) @479 +@498 := @176 @101 +@499 := LexLeanPreservation.Rust.FunSem +@500 := #9 +@506 := (n : @98) -> @499 @500 @193 @187 @19 @179 +@507 := Eq.{1} +@508 := @432 @123 +@509 := @507 @508 +@516 := LexLeanRuntime.index (@176 @123) @123 (LexLeanRuntime.instIndexableList @123) +@520 := @509 (@516 (@124 @500) @179) +@521 := Option.some.{0} +@522 := @521 @123 +@523 := @522 @181 +@524 := @520 @523 +@525 := #10 +@529 := @148 @525 @500 @193 @181 +@530 := LexLeanTarget.TargetSyntax.Function.types +@531 := @530 @179 +@532 := @529 @531 +@533 := @432 @498 +@534 := @507 @533 +@535 := LexLeanTarget.TargetSemantics.bindAll +@536 := LexLeanTarget.TargetSyntax.Function.parameters +@541 := @534 (@535 (@536 @187) @179 @114) +@542 := @521 @498 +@543 := @542 @181 +@544 := @541 @543 +@545 := @432 @434 +@546 := @507 @545 +@547 := LexLeanPreservation.Rust.fnFallible +@548 := #11 +@551 := @546 (@547 @548 @500) +@552 := @521 @434 +@553 := @552 @181 +@554 := @551 @553 +@555 := LexLeanPreservation.RunConv +@556 := #13 +@560 := @555 @556 @525 @193 @181 +@562 := @474 @179 @479 +@563 := Exists.{1} +@564 := LexLeanPreservation.Rust.ROut +@565 := @563 @564 +@566 := And +@567 := LexLeanPreservation.Rust.RealizesFn +@571 := @566 (@567 @500 @193 @19) +@572 := LexLeanPreservation.Rust.RCI +@574 := @572 #15 +@575 := LexLeanPreservation.Rust.fnIdent +@576 := @575 @556 +@583 := (hne : @562) -> @565 (fun (ro : @564) => @571 (@574 @576 @548 @19)) +@598 := {p : @10} -> + {c : @11} -> + {A : @12} -> + {f : @98} -> + {fn : @123} -> + {args : @177} -> + {env : @498} -> + {F : @434} -> + {o : @473} -> + (hB : @506) -> + (hfn : @524) -> (hwt : @532) -> (hbind : @544) -> (hF : @554) -> (hA : @560) -> @583 +@600 := LexLeanPreservation.Rust.compose @0 +@601 := @499 @0 +@606 := (n : @98) -> @601 @193 @187 @19 @179 +@607 := @516 @125 +@610 := @509 (@607 @179) @523 +@614 := @159 @500 @193 @181 @531 +@615 := @555 @0 +@618 := @615 @525 @193 @181 +@632 := {c : @11} -> + {A : @12} -> + {f : @98} -> + {fn : @123} -> + {args : @177} -> + {env : @498} -> + {F : @434} -> + {o : @473} -> + (hB : @606) -> + (hfn : @610) -> (hwt : @614) -> (hbind : @544) -> (hF : @554) -> (hA : @618) -> @583 +@633 := @600 @1 +@634 := @601 @1 +@638 := (n : @98) -> @634 @187 @19 @179 +@641 := @167 @193 @181 @531 +@642 := @547 @1 +@645 := @546 (@642 @500) @553 +@646 := @572 @1 +@656 := (hbind : @544) -> + (hF : @645) -> (hA : @618) -> (hne : @562) -> @565 (fun (ro : @564) => @571 (@646 @576 @548 @19)) +@666 := {A : @12} -> + {f : @98} -> + {fn : @123} -> + {args : @177} -> + {env : @498} -> {F : @434} -> {o : @473} -> (hB : @638) -> (hfn : @610) -> (hwt : @641) -> @656 +@667 := @633 @2 +@669 := @634 @2 @19 +@671 := (n : @98) -> @669 @179 +@672 := @173 @181 +@673 := @672 @531 +@682 := {f : @98} -> + {fn : @123} -> + {args : @177} -> + {env : @498} -> {F : @434} -> {o : @473} -> (hB : @671) -> (hfn : @610) -> (hwt : @673) -> @656 +@683 := @667 @111 +@685 := (n : @98) -> @669 @111 +@686 := @607 @111 +@687 := @509 @686 +@688 := @687 @523 +@689 := @642 @111 +@690 := @546 @689 +@691 := @690 @553 +@692 := @615 @111 +@694 := @692 @193 @181 +@696 := @646 (@575 @111) +@704 := (hF : @691) -> (hA : @694) -> (hne : @562) -> @565 (fun (ro : @564) => @571 (@696 @548 @19)) +@713 := {fn : @123} -> + {args : @177} -> + {env : @498} -> + {F : @434} -> {o : @473} -> (hB : @685) -> (hfn : @688) -> (hwt : @673) -> (hbind : @544) -> @704 +@714 := @683 @143 +@716 := @687 (@522 @143) +@717 := @530 @143 +@718 := @672 @717 +@720 := @535 (@536 @143) +@732 := {args : @177} -> + {env : @498} -> + {F : @434} -> + {o : @473} -> + (hB : @685) -> (hfn : @716) -> (hwt : @718) -> (hbind : @534 (@720 @179 @114) @543) -> @704 +@733 := @714 @97 +@736 := @381 (@328 (@270 @90)) +@738 := @173 @736 @717 +@740 := @91 (@5 @500) +@745 := @740 (@381 (@91 (@57 @187) @90)) +@749 := @534 (@720 @745 @114) @543 +@751 := @91 (@5 @548) +@753 := @91 (@5 @525) +@758 := @751 (@753 (@91 (@57 @500) @90)) +@760 := @692 @758 @181 +@763 := @91 (@5 #14) +@765 := @91 (@5 @556) +@766 := #12 +@786 := {env : @498} -> + {F : @434} -> + {o : @473} -> + (hB : @685) -> + (hfn : @716) -> + (hwt : @738) -> + (hbind : @749) -> + (hF : @691) -> + (hA : @760) -> + (hne : @562) -> @565 (fun (ro : @564) => @571 (@696 (@763 (@765 (@91 (@57 @766) @90))) @19)) +@787 := @733 @121 +@790 := @328 (@342 (@284 @90)) +@792 := @173 @790 @717 +@806 := @534 (@720 @736 @114) (@542 (@115 (@106 @269) (@115 (@109 @327) (@115 (@112 @380) @114)))) +@811 := @753 (@740 (@91 (@57 @193) @90)) +@813 := @692 @811 @181 +@815 := @91 (@5 @766) +@834 := {F : @434} -> + {o : @473} -> + (hB : @685) -> + (hfn : @716) -> + (hwt : @792) -> + (hbind : @806) -> + (hF : @691) -> + (hA : @813) -> + (hne : @562) -> @565 (fun (ro : @564) => @571 (@696 (@765 (@815 (@91 (@57 @548) @90))) @19)) +@835 := @787 @122 +@836 := @400 @717 +@850 := @534 (@720 @790 @114) (@542 (@115 (@106 @283) (@115 (@109 @341) (@115 (@112 @327) @114)))) +@852 := @690 (@552 @122) +@854 := @692 @745 @181 +@855 := @567 @122 +@876 := {o : @473} -> + (hB : @685) -> + (hfn : @716) -> + (hwt : @836) -> + (hbind : @850) -> + (hF : @852) -> + (hA : @854) -> + (hne : @562) -> + @565 (fun (ro : @564) => @566 (@855 @193 @19) (@696 (@815 (@751 (@91 (@57 @525) @90))) @19)) +@877 := @835 @423 +@878 := @407 @717 +@892 := @534 (@720 @399 @114) (@542 (@115 (@106 @266) (@115 (@109 @324) (@115 (@112 @341) @114)))) +@893 := @692 @736 +@896 := @420 @193 @187 @179 +@897 := @893 @896 +@900 := @420 @500 @193 @187 +@920 := (hB : @685) -> + (hfn : @716) -> + (hwt : @878) -> + (hbind : @892) -> + (hF : @852) -> + (hA : @897) -> + (hne : @474 @900 @479) -> + @565 (fun (ro : @564) => @566 (@855 (@420 @548 @525 @500) @19) (@696 @758 @19)) +@921 := @877 @147 +@922 := @414 @717 +@936 := @534 (@720 @406 @114) (@542 (@115 (@106 @280) (@115 (@109 @338) (@115 (@112 @324) @114)))) +@937 := @692 @790 +@940 := @420 @187 @179 @181 +@960 := (hfn : @716) -> + (hwt : @922) -> + (hbind : @936) -> + (hF : @852) -> + (hA : @937 @940) -> + (hne : @474 @896 @479) -> + @565 (fun (ro : @564) => @566 (@855 (@420 @525 @500 @193) @19) (@696 @811 @19)) +@961 := Eq.refl.{1} +@964 := @921 (@961 @508 @686) +@965 := @418 @717 +@979 := @534 (@720 @413 @114) (@542 (@115 (@106 @295) (@115 (@109 @6) (@115 (@112 @338) @114)))) +@980 := @692 @399 +@983 := @420 @179 @181 @183 +@999 := (hwt : @965) -> + (hbind : @979) -> + (hF : @852) -> + (hA : @980 @983) -> + (hne : @474 @940 @479) -> @565 (fun (ro : @564) => @566 (@855 @900 @19) (@696 @745 @19)) +@1000 := @964 @417 +@1002 := @720 @97 @114 +@1005 := @534 @1002 (@542 @121) +@1006 := @692 @406 +@1009 := @420 @181 @183 @4 +@1024 := (hbind : @1005) -> + (hF : @852) -> + (hA : @1006 @1009) -> + (hne : @474 @983 @479) -> @565 (fun (ro : @564) => @566 (@855 @896 @19) (@696 @736 @19)) +@1027 := @1000 (@961 @533 @1002) +@1028 := @692 @413 +@1031 := @420 @183 @4 @15 +@1045 := (hF : @852) -> + (hA : @1028 @1031) -> + (hne : @474 @1009 @479) -> @565 (fun (ro : @564) => @566 (@855 @940 @19) (@696 @790 @19)) +@1048 := @1027 (@961 @545 @689) +@1062 := (hA : @692 @97 @423) -> + (hne : @474 @1031 @479) -> @565 (fun (ro : @564) => @566 (@855 @983 @19) (@696 @399 @19)) +@1063 := @1048 @471 +@1074 := (hne : @474 @423 @479) -> @565 (fun (ro : @564) => @566 (@855 @1009 @19) (@696 @406 @19)) +@1075 := @1063 @493 +@1081 := @566 (@855 @1031 @19) (@696 @413 @19) +@1083 := @565 (fun (ro : @564) => @1081) +@1085 := @565 (fun (__e_ro : @564) => @1081) +@1086 := LexLeanPreservation.Rust.RepresentableL +@1087 := @5 @17 +@1089 := @91 @61 @90 +@1093 := @1086 (@94 (@91 @1087 @1089)) +@1094 := (__e_hrep : @1093) -> @1085 +@1095 := fun (__e_hrep : @1093) => @1075 +@1096 := (s : @56) -> @1094 +@1097 := fun (s : @56) => @1095 +@1098 := (b : @3) -> @1096 +@1099 := fun (b : @3) => @1097 +@1100 := (a : @3) -> @1098 +@1101 := fun (a : @3) => @1099 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R24/RustCore.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R24/RustCore.lean new file mode 100644 index 000000000..bf2d877e3 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R24/RustCore.lean @@ -0,0 +1,33 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.RustCore +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1, 2], types := [(.fixed .u16), (.fixed .u16), (.fixed .u32)], result := (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.option (.fixed .u16)) (.pair (.option (.fixed .u16)) .bool)))))), + body := (.build .pair (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.option (.fixed .u16)) (.pair (.option (.fixed .u16)) .bool)))))) [(.prim .bitAnd [(.var 0), (.var 1)]), (.build .pair (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.option (.fixed .u16)) (.pair (.option (.fixed .u16)) .bool))))) [(.prim .bitOr [(.var 0), (.var 1)]), (.build .pair (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.option (.fixed .u16)) (.pair (.option (.fixed .u16)) .bool)))) [(.prim .bitXor [(.var 0), (.var 1)]), (.build .pair (.pair (.fixed .u16) (.pair (.option (.fixed .u16)) (.pair (.option (.fixed .u16)) .bool))) [(.prim .bitNot [(.var 0)]), (.build .pair (.pair (.option (.fixed .u16)) (.pair (.option (.fixed .u16)) .bool)) [(.prim .shiftLeft [(.var 0), (.var 2)]), (.build .pair (.pair (.option (.fixed .u16)) .bool) [(.prim .shiftRight [(.var 0), (.value (.fixed .u32) (.u32 3))]), (.prim .equal [(.var 0), (.var 1)])])])])])])]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .core, items := [ + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.fixed .u16) }, { pattern := (.bind (.generated .binding 1)), type := (.fixed .u16) }, { pattern := (.bind (.generated .binding 2)), type := (.fixed .u32) }] (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.option (.fixed .u16)) (.pair (.option (.fixed .u16)) .bool)))))) (.mk [] (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))] (.call (.runtime (.bitAnd .u16)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1)))] (.call (.runtime (.bitOr .u16)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1)))] (.call (.runtime (.bitXor .u16)) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 0)))] (.call (.runtime (.bitNot .u16)) [(.move (.generated .operand 7))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 2)))] (.call (.runtime (.shiftLeft .u16)) [(.move (.generated .operand 8)), (.move (.generated .operand 9))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 11)) none (.lit (.fixed .u32 3)))] (.call (.runtime (.shiftRight .u16)) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false))) (.block (.mk [(.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1)))] (.call (.runtime .equal) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false)))))))))))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [], (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))] (.call (.runtime (.bitAnd .u16)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1)))] (.call (.runtime (.bitOr .u16)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1)))] (.call (.runtime (.bitXor .u16)) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 0)))] (.call (.runtime (.bitNot .u16)) [(.move (.generated .operand 7))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 2)))] (.call (.runtime (.shiftLeft .u16)) [(.move (.generated .operand 8)), (.move (.generated .operand 9))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 11)) none (.lit (.fixed .u32 3)))] (.call (.runtime (.shiftRight .u16)) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false))) (.block (.mk [(.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1)))] (.call (.runtime .equal) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false))))))))), [(2, (.fixed .u32), (some 2)), (1, (.fixed .u16), (some 1)), (0, (.fixed .u16), (some 0))], rfl, rfl, + (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.bitAnd .u16)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false)) (Corr.prim (ts := [(.fixed .u16), (.fixed .u16)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.bitOr .u16)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false)) (Corr.prim (ts := [(.fixed .u16), (.fixed .u16)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.bitXor .u16)) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false)) (Corr.prim (ts := [(.fixed .u16), (.fixed .u16)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 0)))]) (tail := (.call (.runtime (.bitNot .u16)) [(.move (.generated .operand 7))] false)) (Corr.prim (ts := [(.fixed .u16)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime (.shiftLeft .u16)) [(.move (.generated .operand 8)), (.move (.generated .operand 9))] false)) (Corr.prim (ts := [(.fixed .u16), (.fixed .u32)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 11)) none (.lit (.fixed .u32 3)))]) (tail := (.call (.runtime (.shiftRight .u16)) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false)) (Corr.prim (ts := [(.fixed .u16), (.fixed .u32)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .equal) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false)) (Corr.prim (ts := [(.fixed .u16), (.fixed .u16)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | _ + 1 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.RustCore diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R24/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R24/RustStd.lean new file mode 100644 index 000000000..13b6f9d9f --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R24/RustStd.lean @@ -0,0 +1,33 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1, 2], types := [(.fixed .u16), (.fixed .u16), (.fixed .u32)], result := (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.option (.fixed .u16)) (.pair (.option (.fixed .u16)) .bool)))))), + body := (.build .pair (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.option (.fixed .u16)) (.pair (.option (.fixed .u16)) .bool)))))) [(.prim .bitAnd [(.var 0), (.var 1)]), (.build .pair (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.option (.fixed .u16)) (.pair (.option (.fixed .u16)) .bool))))) [(.prim .bitOr [(.var 0), (.var 1)]), (.build .pair (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.option (.fixed .u16)) (.pair (.option (.fixed .u16)) .bool)))) [(.prim .bitXor [(.var 0), (.var 1)]), (.build .pair (.pair (.fixed .u16) (.pair (.option (.fixed .u16)) (.pair (.option (.fixed .u16)) .bool))) [(.prim .bitNot [(.var 0)]), (.build .pair (.pair (.option (.fixed .u16)) (.pair (.option (.fixed .u16)) .bool)) [(.prim .shiftLeft [(.var 0), (.var 2)]), (.build .pair (.pair (.option (.fixed .u16)) .bool) [(.prim .shiftRight [(.var 0), (.value (.fixed .u32) (.u32 3))]), (.prim .equal [(.var 0), (.var 1)])])])])])])]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.fixed .u16) }, { pattern := (.bind (.generated .binding 1)), type := (.fixed .u16) }, { pattern := (.bind (.generated .binding 2)), type := (.fixed .u32) }] (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.option (.fixed .u16)) (.pair (.option (.fixed .u16)) .bool)))))) (.mk [] (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))] (.call (.runtime (.bitAnd .u16)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1)))] (.call (.runtime (.bitOr .u16)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1)))] (.call (.runtime (.bitXor .u16)) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 0)))] (.call (.runtime (.bitNot .u16)) [(.move (.generated .operand 7))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 2)))] (.call (.runtime (.shiftLeft .u16)) [(.move (.generated .operand 8)), (.move (.generated .operand 9))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 11)) none (.lit (.fixed .u32 3)))] (.call (.runtime (.shiftRight .u16)) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false))) (.block (.mk [(.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1)))] (.call (.runtime .equal) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false)))))))))))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [], (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))] (.call (.runtime (.bitAnd .u16)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1)))] (.call (.runtime (.bitOr .u16)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1)))] (.call (.runtime (.bitXor .u16)) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 0)))] (.call (.runtime (.bitNot .u16)) [(.move (.generated .operand 7))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 2)))] (.call (.runtime (.shiftLeft .u16)) [(.move (.generated .operand 8)), (.move (.generated .operand 9))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 11)) none (.lit (.fixed .u32 3)))] (.call (.runtime (.shiftRight .u16)) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false))) (.block (.mk [(.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1)))] (.call (.runtime .equal) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false))))))))), [(2, (.fixed .u32), (some 2)), (1, (.fixed .u16), (some 1)), (0, (.fixed .u16), (some 0))], rfl, rfl, + (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.bitAnd .u16)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false)) (Corr.prim (ts := [(.fixed .u16), (.fixed .u16)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.bitOr .u16)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false)) (Corr.prim (ts := [(.fixed .u16), (.fixed .u16)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.bitXor .u16)) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false)) (Corr.prim (ts := [(.fixed .u16), (.fixed .u16)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 0)))]) (tail := (.call (.runtime (.bitNot .u16)) [(.move (.generated .operand 7))] false)) (Corr.prim (ts := [(.fixed .u16)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime (.shiftLeft .u16)) [(.move (.generated .operand 8)), (.move (.generated .operand 9))] false)) (Corr.prim (ts := [(.fixed .u16), (.fixed .u32)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 11)) none (.lit (.fixed .u32 3)))]) (tail := (.call (.runtime (.shiftRight .u16)) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false)) (Corr.prim (ts := [(.fixed .u16), (.fixed .u32)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .equal) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false)) (Corr.prim (ts := [(.fixed .u16), (.fixed .u16)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | _ + 1 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R25.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R25.lean similarity index 96% rename from examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R25.lean rename to examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R25.lean index 05da2f869..4fc7ecab0 100644 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R25.lean +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R25.lean @@ -18,7 +18,7 @@ set_option maxRecDepth 100000 set_option maxHeartbeats 0 set_option synthInstance.maxHeartbeats 0 set_option linter.unusedVariables false -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25 def __prog : _root_.LexLeanTarget.TargetSyntax.Program := { adts := [], functions := [ @@ -37,4 +37,4 @@ def denote (a : Int) (b : Int8) : _root_.LexLeanPreservation.Obs := theorem root (a : Int) (b : Int8) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.int a), (_root_.LexLeanTarget.TargetSyntax.Value.i8 b)] (_root_.LexLeanPreservation.Rel (__fits_0 a b) ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u16) (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.i64)) (Coverage.Prims.conversions a b))) := _root_.LexLeanPreservation.run_of_funRel (__rel_0 a b) -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25 +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25 diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R25/Compose/RustCore.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R25/Compose/RustCore.lex.tex new file mode 100644 index 000000000..a2efadcde --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R25/Compose/RustCore.lex.tex @@ -0,0 +1,495 @@ +\begin{lexlean}{RustCore} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.Compose.RustCore} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.RustCore, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.Compose.RustCore.root : @992 := @993 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.Compose.RustCore.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.RustCore.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.RustCore.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.RustCore.flags +@3 := Int +@4 := #2 +@5 := LexLeanTarget.TargetSyntax.Value.int +@6 := @5 @4 +@7 := LexLeanTarget.TargetSyntax.Ty.int +@8 := LexLeanTarget.TargetSyntax.Program +@9 := LexLeanPreservation.Rust.RCrate +@10 := LexLeanPreservation.Rust.Flags +@11 := LexLeanPreservation.Rust.WT +@12 := #3 +@14 := @11 @12 @4 +@15 := #1 +@16 := @14 @15 +@17 := #0 +@18 := @5 @17 +@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 +@26 := LexLeanPreservation.Rust.wt_int @0 +@27 := @11 @0 +@29 := @27 @4 @15 +@34 := {c : @9} -> {A : @10} -> (n : @3) -> @29 @18 @7 +@35 := @26 @1 +@36 := @27 @1 +@37 := @36 @15 +@41 := {A : @10} -> (n : @3) -> @37 @18 @7 +@42 := @35 @2 +@43 := @36 @2 +@46 := (n : @3) -> @43 @18 @7 +@47 := @42 @4 +@49 := @43 @6 @7 +@50 := Int8 +@51 := LexLeanTarget.TargetSyntax.Value.i8 +@52 := @51 @15 +@55 := LexLeanTarget.TargetSyntax.Ty.fixed LexLeanTarget.TargetSyntax.IntKind.i8 +@56 := @51 @17 +@62 := {p : @8} -> {c : @9} -> {A : @10} -> (x : @50) -> @16 @56 @55 +@64 := LexLeanPreservation.Rust.wt_i8 @0 +@69 := {c : @9} -> {A : @10} -> (x : @50) -> @29 @56 @55 +@70 := @64 @1 +@74 := {A : @10} -> (x : @50) -> @37 @56 @55 +@75 := @70 @2 +@78 := (x : @50) -> @43 @56 @55 +@79 := @75 @15 +@81 := @43 @52 @55 +@82 := LexLeanTarget.TargetSyntax.Value +@83 := List.nil.{0} +@84 := List.cons.{0} +@85 := @83 @82 +@86 := @84 @82 +@88 := @86 @52 @85 +@90 := @86 @6 @88 +@91 := Nat +@94 := Prod.{0, 0} @91 @82 +@95 := 1 +@98 := Prod.mk.{0, 0} @91 @82 +@99 := @98 @95 +@100 := @99 @52 +@101 := 0 +@102 := @98 @101 +@103 := @102 @6 +@104 := @83 @94 +@105 := @84 @94 +@107 := @105 @103 @104 +@109 := @105 @100 @107 +@110 := Bool.false +@111 := LexLeanTarget.TargetSyntax.Function +@112 := LexLeanTarget.TargetSyntax.Program.functions +@113 := @112 @0 +@114 := LexLeanTarget.TargetSyntax.Ty +@115 := @83 @91 +@116 := @83 @114 +@117 := LexLeanTarget.TargetSyntax.Ty.unit +@118 := LexLeanTarget.TargetSyntax.Value.unit +@121 := LexLeanTarget.TargetSyntax.Expr.value @117 @118 +@126 := LexLeanTarget.TargetSyntax.Function.mk @115 @116 @117 @121 +@131 := List.getD.{0} @111 @113 @101 @126 +@135 := fun (__e_n : @91) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.RustCore.root @17 @101 +@136 := LexLeanPreservation.Rust.WTL +@144 := {p : @8} -> {c : @9} -> {A : @10} -> @136 @4 @15 @17 @85 @116 +@146 := LexLeanPreservation.Rust.wtl_nil @0 +@147 := @136 @0 +@153 := {c : @9} -> {A : @10} -> @147 @15 @17 @85 @116 +@154 := @146 @1 +@155 := @147 @1 +@159 := {A : @10} -> @155 @17 @85 @116 +@160 := @154 @2 +@161 := @155 @2 +@162 := @161 @85 +@163 := @162 @116 +@164 := List.{0} +@165 := @164 @82 +@166 := @164 @114 +@167 := #6 +@168 := @11 @167 +@169 := #5 +@170 := @168 @169 +@171 := #4 +@174 := @170 @171 @12 @4 +@175 := #7 +@180 := @136 @175 @167 @169 @4 @15 +@181 := #8 +@184 := @136 @181 @175 @167 +@186 := @86 @169 @12 +@187 := @184 @186 +@188 := @84 @114 +@190 := @188 @171 @4 +@200 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {v : @82} -> {t : @114} -> {vs : @165} -> {ts : @166} -> (h : @174) -> (hs : @180) -> @187 @190 +@202 := LexLeanPreservation.Rust.wtl_cons @0 +@222 := {c : @9} -> + {A : @10} -> + {v : @82} -> + {t : @114} -> + {vs : @165} -> + {ts : @166} -> + (h : @27 @169 @171 @12 @4) -> (hs : @147 @167 @169 @4 @15) -> @147 @175 @167 @186 @190 +@223 := @202 @1 +@239 := {A : @10} -> + {v : @82} -> + {t : @114} -> + {vs : @165} -> + {ts : @166} -> (h : @36 @171 @12 @4) -> (hs : @155 @169 @4 @15) -> @155 @167 @186 @190 +@240 := @223 @2 +@242 := @43 @12 @4 +@244 := @161 @4 @15 +@252 := {v : @82} -> + {t : @114} -> {vs : @165} -> {ts : @166} -> (h : @242) -> (hs : @244) -> @161 @186 @190 +@253 := @240 @52 +@254 := @51 @171 +@256 := @43 @254 @4 +@257 := @51 @167 +@258 := @86 @257 +@266 := {t : @114} -> + {vs : @165} -> {ts : @166} -> (h : @256) -> (hs : @244) -> @161 (@258 @12) @190 +@267 := @253 @55 +@268 := @51 @12 +@270 := @43 @268 @55 +@271 := @51 @169 +@272 := @86 @271 +@274 := @161 (@272 @12) +@275 := @188 @55 +@276 := @275 @4 +@281 := {vs : @165} -> {ts : @166} -> (h : @270) -> (hs : @244) -> @274 @276 +@282 := @267 @85 +@283 := @51 @4 +@285 := @43 @283 @55 +@286 := @162 @15 +@288 := @86 @254 @85 +@293 := {ts : @166} -> (h : @285) -> (hs : @286) -> @161 @288 @276 +@294 := @282 @116 +@296 := @86 @268 @85 +@297 := @161 @296 +@298 := @275 @116 +@301 := (h : @81) -> (hs : @163) -> @297 @298 +@302 := @294 @79 +@304 := @86 @283 @85 +@306 := @161 @304 @298 +@307 := (hs : @163) -> @306 +@308 := @302 @160 +@310 := @161 @88 @298 +@311 := @240 @6 +@312 := @5 @169 +@314 := @43 @312 @4 +@315 := @5 @175 +@316 := @86 @315 +@324 := {t : @114} -> + {vs : @165} -> {ts : @166} -> (h : @314) -> (hs : @244) -> @161 (@316 @12) @190 +@325 := @311 @7 +@326 := @5 @171 +@328 := @43 @326 @7 +@329 := @5 @167 +@330 := @86 @329 +@332 := @161 (@330 @12) +@333 := @188 @7 +@334 := @333 @4 +@339 := {vs : @165} -> {ts : @166} -> (h : @328) -> (hs : @244) -> @332 @334 +@340 := @325 @88 +@341 := @5 @12 +@343 := @43 @341 @7 +@344 := @297 @15 +@346 := @86 @312 @288 +@347 := @161 @346 +@351 := {ts : @166} -> (h : @343) -> (hs : @344) -> @347 @334 +@352 := @340 @298 +@354 := @86 @326 @296 +@355 := @161 @354 +@356 := @333 @298 +@359 := (h : @49) -> (hs : @306) -> @355 @356 +@360 := @352 @47 +@362 := @86 @341 @304 +@363 := @161 @362 +@365 := (hs : @310) -> @363 @356 +@366 := @360 @308 +@367 := @161 @90 +@368 := @367 @356 +@369 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.denote +@371 := @369 @4 @15 +@372 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.__fits_0 +@374 := @372 @4 @15 +@377 := Coverage.Prims.conversions @4 @15 +@378 := UInt16 +@379 := Option.{0} +@380 := @379 @378 +@381 := Int64 +@382 := @379 @381 +@383 := LexLeanTarget.TargetSyntax.Value.u16 +@384 := LexLeanPreservation.encOption +@386 := @384 @378 @383 +@387 := LexLeanTarget.TargetSyntax.Value.i64 +@389 := @384 @381 @387 +@395 := LexLeanPreservation.encPair @380 @382 @386 @389 @377 +@398 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.root @4 @15 +@399 := Bool +@400 := Ne.{1} +@401 := LexLeanPreservation.Obs +@402 := @400 @401 +@403 := LexLeanPreservation.Rel +@406 := @402 (@403 @15 @17) +@407 := LexLeanPreservation.Obs.stuck +@410 := (f : @399) -> (v : @82) -> @406 @407 +@412 := LexLeanPreservation.Rust.rel_ne_stuck @374 +@419 := (v : @82) -> @402 (@403 (@372 @12 @4) @17) @407 +@420 := @412 @395 +@424 := @402 (@403 @374 @395) @407 +@425 := @164 @94 +@426 := LexLeanPreservation.Rust.FunSem +@427 := #9 +@433 := (n : @91) -> @426 @427 @181 @175 @17 @167 +@434 := Eq.{1} +@435 := @379 @111 +@436 := @434 @435 +@443 := LexLeanRuntime.index (@164 @111) @111 (LexLeanRuntime.instIndexableList @111) +@447 := @436 (@443 (@112 @427) @167) +@448 := Option.some.{0} +@449 := @448 @111 +@450 := @449 @169 +@451 := @447 @450 +@452 := #10 +@456 := @136 @452 @427 @181 @169 +@457 := LexLeanTarget.TargetSyntax.Function.types +@458 := @457 @167 +@459 := @456 @458 +@460 := @379 @425 +@461 := @434 @460 +@462 := LexLeanTarget.TargetSemantics.bindAll +@463 := LexLeanTarget.TargetSyntax.Function.parameters +@468 := @461 (@462 (@463 @175) @167 @104) +@469 := @448 @425 +@470 := @469 @169 +@471 := @468 @470 +@472 := @379 @399 +@473 := @434 @472 +@474 := LexLeanPreservation.Rust.fnFallible +@475 := #11 +@478 := @473 (@474 @475 @427) +@479 := @448 @399 +@480 := @479 @169 +@481 := @478 @480 +@482 := LexLeanPreservation.RunConv +@483 := #13 +@487 := @482 @483 @452 @181 @169 +@489 := @402 @167 @407 +@490 := Exists.{1} +@491 := LexLeanPreservation.Rust.ROut +@492 := @490 @491 +@493 := And +@494 := LexLeanPreservation.Rust.RealizesFn +@498 := @493 (@494 @427 @181 @17) +@499 := LexLeanPreservation.Rust.RCI +@501 := @499 #15 +@502 := LexLeanPreservation.Rust.fnIdent +@503 := @502 @483 +@510 := (hne : @489) -> @492 (fun (ro : @491) => @498 (@501 @503 @475 @17)) +@525 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {f : @91} -> + {fn : @111} -> + {args : @165} -> + {env : @425} -> + {F : @399} -> + {o : @401} -> + (hB : @433) -> + (hfn : @451) -> (hwt : @459) -> (hbind : @471) -> (hF : @481) -> (hA : @487) -> @510 +@527 := LexLeanPreservation.Rust.compose @0 +@528 := @426 @0 +@533 := (n : @91) -> @528 @181 @175 @17 @167 +@534 := @443 @113 +@537 := @436 (@534 @167) @450 +@541 := @147 @427 @181 @169 @458 +@542 := @482 @0 +@545 := @542 @452 @181 @169 +@559 := {c : @9} -> + {A : @10} -> + {f : @91} -> + {fn : @111} -> + {args : @165} -> + {env : @425} -> + {F : @399} -> + {o : @401} -> + (hB : @533) -> + (hfn : @537) -> (hwt : @541) -> (hbind : @471) -> (hF : @481) -> (hA : @545) -> @510 +@560 := @527 @1 +@561 := @528 @1 +@565 := (n : @91) -> @561 @175 @17 @167 +@568 := @155 @181 @169 @458 +@569 := @474 @1 +@572 := @473 (@569 @427) @480 +@573 := @499 @1 +@583 := (hbind : @471) -> + (hF : @572) -> (hA : @545) -> (hne : @489) -> @492 (fun (ro : @491) => @498 (@573 @503 @475 @17)) +@593 := {A : @10} -> + {f : @91} -> + {fn : @111} -> + {args : @165} -> + {env : @425} -> {F : @399} -> {o : @401} -> (hB : @565) -> (hfn : @537) -> (hwt : @568) -> @583 +@594 := @560 @2 +@596 := @561 @2 @17 +@598 := (n : @91) -> @596 @167 +@599 := @161 @169 +@600 := @599 @458 +@609 := {f : @91} -> + {fn : @111} -> + {args : @165} -> + {env : @425} -> {F : @399} -> {o : @401} -> (hB : @598) -> (hfn : @537) -> (hwt : @600) -> @583 +@610 := @594 @101 +@612 := (n : @91) -> @596 @101 +@613 := @534 @101 +@614 := @436 @613 +@615 := @614 @450 +@616 := @569 @101 +@617 := @473 @616 +@618 := @617 @480 +@619 := @542 @101 +@621 := @619 @181 @169 +@623 := @573 (@502 @101) +@631 := (hF : @618) -> (hA : @621) -> (hne : @489) -> @492 (fun (ro : @491) => @498 (@623 @475 @17)) +@640 := {fn : @111} -> + {args : @165} -> + {env : @425} -> + {F : @399} -> {o : @401} -> (hB : @612) -> (hfn : @615) -> (hwt : @600) -> (hbind : @471) -> @631 +@641 := @610 @131 +@643 := @614 (@449 @131) +@644 := @457 @131 +@645 := @599 @644 +@647 := @462 (@463 @131) +@659 := {args : @165} -> + {env : @425} -> + {F : @399} -> + {o : @401} -> + (hB : @612) -> (hfn : @643) -> (hwt : @645) -> (hbind : @461 (@647 @167 @104) @470) -> @631 +@660 := @641 @90 +@662 := @316 (@258 @85) +@664 := @161 @662 @644 +@670 := @86 (@5 @181) (@86 (@51 @175) @85) +@674 := @461 (@647 @670 @104) @470 +@680 := @86 (@5 @452) (@86 (@51 @427) @85) +@682 := @619 @680 @169 +@684 := @86 (@5 @483) +@685 := #12 +@704 := {env : @425} -> + {F : @399} -> + {o : @401} -> + (hB : @612) -> + (hfn : @643) -> + (hwt : @664) -> + (hbind : @674) -> + (hF : @618) -> + (hA : @682) -> + (hne : @489) -> @492 (fun (ro : @491) => @498 (@623 (@684 (@86 (@51 @685) @85)) @17)) +@705 := @660 @109 +@707 := @330 (@272 @85) +@709 := @161 @707 @644 +@720 := @461 (@647 @662 @104) (@469 (@105 (@99 @257) (@105 (@102 @315) @104))) +@726 := @86 (@5 @427) (@86 (@51 @181) @85) +@748 := {F : @399} -> + {o : @401} -> + (hB : @612) -> + (hfn : @643) -> + (hwt : @709) -> + (hbind : @720) -> + (hF : @618) -> + (hA : @619 @726 @169) -> + (hne : @489) -> @492 (fun (ro : @491) => @498 (@623 (@86 (@5 @685) (@86 (@51 @475) @85)) @17)) +@749 := @705 @110 +@750 := @347 @644 +@761 := @461 (@647 @707 @104) (@469 (@105 (@99 @271) (@105 (@102 @329) @104))) +@763 := @617 (@479 @110) +@765 := @619 @670 @169 +@766 := @494 @110 +@788 := {o : @401} -> + (hB : @612) -> + (hfn : @643) -> + (hwt : @750) -> + (hbind : @761) -> + (hF : @763) -> + (hA : @765) -> + (hne : @489) -> + @492 (fun (ro : @491) => @493 (@766 @181 @17) (@623 (@86 (@5 @475) (@86 (@51 @452) @85)) @17)) +@789 := @749 @371 +@790 := @355 @644 +@801 := @461 (@647 @346 @104) (@469 (@105 (@99 @254) (@105 (@102 @312) @104))) +@802 := @619 @662 +@804 := @369 @175 @167 +@805 := @802 @804 +@807 := @369 @181 @175 +@826 := (hB : @612) -> + (hfn : @643) -> + (hwt : @790) -> + (hbind : @801) -> + (hF : @763) -> + (hA : @805) -> + (hne : @402 @807 @407) -> + @492 (fun (ro : @491) => @493 (@766 (@369 @452 @427) @17) (@623 @680 @17)) +@827 := @789 @135 +@828 := @363 @644 +@839 := @461 (@647 @354 @104) (@469 (@105 (@99 @268) (@105 (@102 @326) @104))) +@840 := @619 @707 +@842 := @369 @167 @169 +@861 := (hfn : @643) -> + (hwt : @828) -> + (hbind : @839) -> + (hF : @763) -> + (hA : @840 @842) -> + (hne : @402 @804 @407) -> + @492 (fun (ro : @491) => @493 (@766 (@369 @427 @181) @17) (@623 @726 @17)) +@862 := Eq.refl.{1} +@865 := @827 (@862 @435 @613) +@866 := @367 @644 +@877 := @461 (@647 @362 @104) (@469 (@105 (@99 @283) (@105 (@102 @341) @104))) +@878 := @619 @346 +@880 := @369 @169 @171 +@896 := (hwt : @866) -> + (hbind : @877) -> + (hF : @763) -> + (hA : @878 @880) -> + (hne : @402 @842 @407) -> @492 (fun (ro : @491) => @493 (@766 @807 @17) (@623 @670 @17)) +@897 := @865 @366 +@899 := @647 @90 @104 +@902 := @461 @899 (@469 @109) +@903 := @619 @354 +@905 := @369 @171 @12 +@920 := (hbind : @902) -> + (hF : @763) -> + (hA : @903 @905) -> + (hne : @402 @880 @407) -> @492 (fun (ro : @491) => @493 (@766 @804 @17) (@623 @662 @17)) +@923 := @897 (@862 @460 @899) +@924 := @619 @362 +@926 := @369 @12 @4 +@940 := (hF : @763) -> + (hA : @924 @926) -> + (hne : @402 @905 @407) -> @492 (fun (ro : @491) => @493 (@766 @842 @17) (@623 @707 @17)) +@943 := @923 (@862 @472 @616) +@957 := (hA : @619 @90 @371) -> + (hne : @402 @926 @407) -> @492 (fun (ro : @491) => @493 (@766 @880 @17) (@623 @346 @17)) +@958 := @943 @398 +@969 := (hne : @402 @371 @407) -> @492 (fun (ro : @491) => @493 (@766 @905 @17) (@623 @354 @17)) +@970 := @958 @420 +@976 := @493 (@766 @926 @17) (@623 @362 @17) +@978 := @492 (fun (ro : @491) => @976) +@980 := @492 (fun (__e_ro : @491) => @976) +@981 := LexLeanPreservation.Rust.RepresentableL +@982 := @5 @15 +@984 := @86 @56 @85 +@987 := @981 (@86 @982 @984) +@988 := (__e_hrep : @987) -> @980 +@989 := fun (__e_hrep : @987) => @970 +@990 := (b : @50) -> @988 +@991 := fun (b : @50) => @989 +@992 := (a : @3) -> @990 +@993 := fun (a : @3) => @991 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R25/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R25/Compose/RustStd.lex.tex new file mode 100644 index 000000000..be2566fab --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R25/Compose/RustStd.lex.tex @@ -0,0 +1,495 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.Compose.RustStd.root : @992 := @993 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.RustStd.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.RustStd.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.RustStd.flags +@3 := Int +@4 := #2 +@5 := LexLeanTarget.TargetSyntax.Value.int +@6 := @5 @4 +@7 := LexLeanTarget.TargetSyntax.Ty.int +@8 := LexLeanTarget.TargetSyntax.Program +@9 := LexLeanPreservation.Rust.RCrate +@10 := LexLeanPreservation.Rust.Flags +@11 := LexLeanPreservation.Rust.WT +@12 := #3 +@14 := @11 @12 @4 +@15 := #1 +@16 := @14 @15 +@17 := #0 +@18 := @5 @17 +@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 +@26 := LexLeanPreservation.Rust.wt_int @0 +@27 := @11 @0 +@29 := @27 @4 @15 +@34 := {c : @9} -> {A : @10} -> (n : @3) -> @29 @18 @7 +@35 := @26 @1 +@36 := @27 @1 +@37 := @36 @15 +@41 := {A : @10} -> (n : @3) -> @37 @18 @7 +@42 := @35 @2 +@43 := @36 @2 +@46 := (n : @3) -> @43 @18 @7 +@47 := @42 @4 +@49 := @43 @6 @7 +@50 := Int8 +@51 := LexLeanTarget.TargetSyntax.Value.i8 +@52 := @51 @15 +@55 := LexLeanTarget.TargetSyntax.Ty.fixed LexLeanTarget.TargetSyntax.IntKind.i8 +@56 := @51 @17 +@62 := {p : @8} -> {c : @9} -> {A : @10} -> (x : @50) -> @16 @56 @55 +@64 := LexLeanPreservation.Rust.wt_i8 @0 +@69 := {c : @9} -> {A : @10} -> (x : @50) -> @29 @56 @55 +@70 := @64 @1 +@74 := {A : @10} -> (x : @50) -> @37 @56 @55 +@75 := @70 @2 +@78 := (x : @50) -> @43 @56 @55 +@79 := @75 @15 +@81 := @43 @52 @55 +@82 := LexLeanTarget.TargetSyntax.Value +@83 := List.nil.{0} +@84 := List.cons.{0} +@85 := @83 @82 +@86 := @84 @82 +@88 := @86 @52 @85 +@90 := @86 @6 @88 +@91 := Nat +@94 := Prod.{0, 0} @91 @82 +@95 := 1 +@98 := Prod.mk.{0, 0} @91 @82 +@99 := @98 @95 +@100 := @99 @52 +@101 := 0 +@102 := @98 @101 +@103 := @102 @6 +@104 := @83 @94 +@105 := @84 @94 +@107 := @105 @103 @104 +@109 := @105 @100 @107 +@110 := Bool.false +@111 := LexLeanTarget.TargetSyntax.Function +@112 := LexLeanTarget.TargetSyntax.Program.functions +@113 := @112 @0 +@114 := LexLeanTarget.TargetSyntax.Ty +@115 := @83 @91 +@116 := @83 @114 +@117 := LexLeanTarget.TargetSyntax.Ty.unit +@118 := LexLeanTarget.TargetSyntax.Value.unit +@121 := LexLeanTarget.TargetSyntax.Expr.value @117 @118 +@126 := LexLeanTarget.TargetSyntax.Function.mk @115 @116 @117 @121 +@131 := List.getD.{0} @111 @113 @101 @126 +@135 := fun (__e_n : @91) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.RustStd.root @17 @101 +@136 := LexLeanPreservation.Rust.WTL +@144 := {p : @8} -> {c : @9} -> {A : @10} -> @136 @4 @15 @17 @85 @116 +@146 := LexLeanPreservation.Rust.wtl_nil @0 +@147 := @136 @0 +@153 := {c : @9} -> {A : @10} -> @147 @15 @17 @85 @116 +@154 := @146 @1 +@155 := @147 @1 +@159 := {A : @10} -> @155 @17 @85 @116 +@160 := @154 @2 +@161 := @155 @2 +@162 := @161 @85 +@163 := @162 @116 +@164 := List.{0} +@165 := @164 @82 +@166 := @164 @114 +@167 := #6 +@168 := @11 @167 +@169 := #5 +@170 := @168 @169 +@171 := #4 +@174 := @170 @171 @12 @4 +@175 := #7 +@180 := @136 @175 @167 @169 @4 @15 +@181 := #8 +@184 := @136 @181 @175 @167 +@186 := @86 @169 @12 +@187 := @184 @186 +@188 := @84 @114 +@190 := @188 @171 @4 +@200 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {v : @82} -> {t : @114} -> {vs : @165} -> {ts : @166} -> (h : @174) -> (hs : @180) -> @187 @190 +@202 := LexLeanPreservation.Rust.wtl_cons @0 +@222 := {c : @9} -> + {A : @10} -> + {v : @82} -> + {t : @114} -> + {vs : @165} -> + {ts : @166} -> + (h : @27 @169 @171 @12 @4) -> (hs : @147 @167 @169 @4 @15) -> @147 @175 @167 @186 @190 +@223 := @202 @1 +@239 := {A : @10} -> + {v : @82} -> + {t : @114} -> + {vs : @165} -> + {ts : @166} -> (h : @36 @171 @12 @4) -> (hs : @155 @169 @4 @15) -> @155 @167 @186 @190 +@240 := @223 @2 +@242 := @43 @12 @4 +@244 := @161 @4 @15 +@252 := {v : @82} -> + {t : @114} -> {vs : @165} -> {ts : @166} -> (h : @242) -> (hs : @244) -> @161 @186 @190 +@253 := @240 @52 +@254 := @51 @171 +@256 := @43 @254 @4 +@257 := @51 @167 +@258 := @86 @257 +@266 := {t : @114} -> + {vs : @165} -> {ts : @166} -> (h : @256) -> (hs : @244) -> @161 (@258 @12) @190 +@267 := @253 @55 +@268 := @51 @12 +@270 := @43 @268 @55 +@271 := @51 @169 +@272 := @86 @271 +@274 := @161 (@272 @12) +@275 := @188 @55 +@276 := @275 @4 +@281 := {vs : @165} -> {ts : @166} -> (h : @270) -> (hs : @244) -> @274 @276 +@282 := @267 @85 +@283 := @51 @4 +@285 := @43 @283 @55 +@286 := @162 @15 +@288 := @86 @254 @85 +@293 := {ts : @166} -> (h : @285) -> (hs : @286) -> @161 @288 @276 +@294 := @282 @116 +@296 := @86 @268 @85 +@297 := @161 @296 +@298 := @275 @116 +@301 := (h : @81) -> (hs : @163) -> @297 @298 +@302 := @294 @79 +@304 := @86 @283 @85 +@306 := @161 @304 @298 +@307 := (hs : @163) -> @306 +@308 := @302 @160 +@310 := @161 @88 @298 +@311 := @240 @6 +@312 := @5 @169 +@314 := @43 @312 @4 +@315 := @5 @175 +@316 := @86 @315 +@324 := {t : @114} -> + {vs : @165} -> {ts : @166} -> (h : @314) -> (hs : @244) -> @161 (@316 @12) @190 +@325 := @311 @7 +@326 := @5 @171 +@328 := @43 @326 @7 +@329 := @5 @167 +@330 := @86 @329 +@332 := @161 (@330 @12) +@333 := @188 @7 +@334 := @333 @4 +@339 := {vs : @165} -> {ts : @166} -> (h : @328) -> (hs : @244) -> @332 @334 +@340 := @325 @88 +@341 := @5 @12 +@343 := @43 @341 @7 +@344 := @297 @15 +@346 := @86 @312 @288 +@347 := @161 @346 +@351 := {ts : @166} -> (h : @343) -> (hs : @344) -> @347 @334 +@352 := @340 @298 +@354 := @86 @326 @296 +@355 := @161 @354 +@356 := @333 @298 +@359 := (h : @49) -> (hs : @306) -> @355 @356 +@360 := @352 @47 +@362 := @86 @341 @304 +@363 := @161 @362 +@365 := (hs : @310) -> @363 @356 +@366 := @360 @308 +@367 := @161 @90 +@368 := @367 @356 +@369 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.denote +@371 := @369 @4 @15 +@372 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.__fits_0 +@374 := @372 @4 @15 +@377 := Coverage.Prims.conversions @4 @15 +@378 := UInt16 +@379 := Option.{0} +@380 := @379 @378 +@381 := Int64 +@382 := @379 @381 +@383 := LexLeanTarget.TargetSyntax.Value.u16 +@384 := LexLeanPreservation.encOption +@386 := @384 @378 @383 +@387 := LexLeanTarget.TargetSyntax.Value.i64 +@389 := @384 @381 @387 +@395 := LexLeanPreservation.encPair @380 @382 @386 @389 @377 +@398 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.root @4 @15 +@399 := Bool +@400 := Ne.{1} +@401 := LexLeanPreservation.Obs +@402 := @400 @401 +@403 := LexLeanPreservation.Rel +@406 := @402 (@403 @15 @17) +@407 := LexLeanPreservation.Obs.stuck +@410 := (f : @399) -> (v : @82) -> @406 @407 +@412 := LexLeanPreservation.Rust.rel_ne_stuck @374 +@419 := (v : @82) -> @402 (@403 (@372 @12 @4) @17) @407 +@420 := @412 @395 +@424 := @402 (@403 @374 @395) @407 +@425 := @164 @94 +@426 := LexLeanPreservation.Rust.FunSem +@427 := #9 +@433 := (n : @91) -> @426 @427 @181 @175 @17 @167 +@434 := Eq.{1} +@435 := @379 @111 +@436 := @434 @435 +@443 := LexLeanRuntime.index (@164 @111) @111 (LexLeanRuntime.instIndexableList @111) +@447 := @436 (@443 (@112 @427) @167) +@448 := Option.some.{0} +@449 := @448 @111 +@450 := @449 @169 +@451 := @447 @450 +@452 := #10 +@456 := @136 @452 @427 @181 @169 +@457 := LexLeanTarget.TargetSyntax.Function.types +@458 := @457 @167 +@459 := @456 @458 +@460 := @379 @425 +@461 := @434 @460 +@462 := LexLeanTarget.TargetSemantics.bindAll +@463 := LexLeanTarget.TargetSyntax.Function.parameters +@468 := @461 (@462 (@463 @175) @167 @104) +@469 := @448 @425 +@470 := @469 @169 +@471 := @468 @470 +@472 := @379 @399 +@473 := @434 @472 +@474 := LexLeanPreservation.Rust.fnFallible +@475 := #11 +@478 := @473 (@474 @475 @427) +@479 := @448 @399 +@480 := @479 @169 +@481 := @478 @480 +@482 := LexLeanPreservation.RunConv +@483 := #13 +@487 := @482 @483 @452 @181 @169 +@489 := @402 @167 @407 +@490 := Exists.{1} +@491 := LexLeanPreservation.Rust.ROut +@492 := @490 @491 +@493 := And +@494 := LexLeanPreservation.Rust.RealizesFn +@498 := @493 (@494 @427 @181 @17) +@499 := LexLeanPreservation.Rust.RCI +@501 := @499 #15 +@502 := LexLeanPreservation.Rust.fnIdent +@503 := @502 @483 +@510 := (hne : @489) -> @492 (fun (ro : @491) => @498 (@501 @503 @475 @17)) +@525 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {f : @91} -> + {fn : @111} -> + {args : @165} -> + {env : @425} -> + {F : @399} -> + {o : @401} -> + (hB : @433) -> + (hfn : @451) -> (hwt : @459) -> (hbind : @471) -> (hF : @481) -> (hA : @487) -> @510 +@527 := LexLeanPreservation.Rust.compose @0 +@528 := @426 @0 +@533 := (n : @91) -> @528 @181 @175 @17 @167 +@534 := @443 @113 +@537 := @436 (@534 @167) @450 +@541 := @147 @427 @181 @169 @458 +@542 := @482 @0 +@545 := @542 @452 @181 @169 +@559 := {c : @9} -> + {A : @10} -> + {f : @91} -> + {fn : @111} -> + {args : @165} -> + {env : @425} -> + {F : @399} -> + {o : @401} -> + (hB : @533) -> + (hfn : @537) -> (hwt : @541) -> (hbind : @471) -> (hF : @481) -> (hA : @545) -> @510 +@560 := @527 @1 +@561 := @528 @1 +@565 := (n : @91) -> @561 @175 @17 @167 +@568 := @155 @181 @169 @458 +@569 := @474 @1 +@572 := @473 (@569 @427) @480 +@573 := @499 @1 +@583 := (hbind : @471) -> + (hF : @572) -> (hA : @545) -> (hne : @489) -> @492 (fun (ro : @491) => @498 (@573 @503 @475 @17)) +@593 := {A : @10} -> + {f : @91} -> + {fn : @111} -> + {args : @165} -> + {env : @425} -> {F : @399} -> {o : @401} -> (hB : @565) -> (hfn : @537) -> (hwt : @568) -> @583 +@594 := @560 @2 +@596 := @561 @2 @17 +@598 := (n : @91) -> @596 @167 +@599 := @161 @169 +@600 := @599 @458 +@609 := {f : @91} -> + {fn : @111} -> + {args : @165} -> + {env : @425} -> {F : @399} -> {o : @401} -> (hB : @598) -> (hfn : @537) -> (hwt : @600) -> @583 +@610 := @594 @101 +@612 := (n : @91) -> @596 @101 +@613 := @534 @101 +@614 := @436 @613 +@615 := @614 @450 +@616 := @569 @101 +@617 := @473 @616 +@618 := @617 @480 +@619 := @542 @101 +@621 := @619 @181 @169 +@623 := @573 (@502 @101) +@631 := (hF : @618) -> (hA : @621) -> (hne : @489) -> @492 (fun (ro : @491) => @498 (@623 @475 @17)) +@640 := {fn : @111} -> + {args : @165} -> + {env : @425} -> + {F : @399} -> {o : @401} -> (hB : @612) -> (hfn : @615) -> (hwt : @600) -> (hbind : @471) -> @631 +@641 := @610 @131 +@643 := @614 (@449 @131) +@644 := @457 @131 +@645 := @599 @644 +@647 := @462 (@463 @131) +@659 := {args : @165} -> + {env : @425} -> + {F : @399} -> + {o : @401} -> + (hB : @612) -> (hfn : @643) -> (hwt : @645) -> (hbind : @461 (@647 @167 @104) @470) -> @631 +@660 := @641 @90 +@662 := @316 (@258 @85) +@664 := @161 @662 @644 +@670 := @86 (@5 @181) (@86 (@51 @175) @85) +@674 := @461 (@647 @670 @104) @470 +@680 := @86 (@5 @452) (@86 (@51 @427) @85) +@682 := @619 @680 @169 +@684 := @86 (@5 @483) +@685 := #12 +@704 := {env : @425} -> + {F : @399} -> + {o : @401} -> + (hB : @612) -> + (hfn : @643) -> + (hwt : @664) -> + (hbind : @674) -> + (hF : @618) -> + (hA : @682) -> + (hne : @489) -> @492 (fun (ro : @491) => @498 (@623 (@684 (@86 (@51 @685) @85)) @17)) +@705 := @660 @109 +@707 := @330 (@272 @85) +@709 := @161 @707 @644 +@720 := @461 (@647 @662 @104) (@469 (@105 (@99 @257) (@105 (@102 @315) @104))) +@726 := @86 (@5 @427) (@86 (@51 @181) @85) +@748 := {F : @399} -> + {o : @401} -> + (hB : @612) -> + (hfn : @643) -> + (hwt : @709) -> + (hbind : @720) -> + (hF : @618) -> + (hA : @619 @726 @169) -> + (hne : @489) -> @492 (fun (ro : @491) => @498 (@623 (@86 (@5 @685) (@86 (@51 @475) @85)) @17)) +@749 := @705 @110 +@750 := @347 @644 +@761 := @461 (@647 @707 @104) (@469 (@105 (@99 @271) (@105 (@102 @329) @104))) +@763 := @617 (@479 @110) +@765 := @619 @670 @169 +@766 := @494 @110 +@788 := {o : @401} -> + (hB : @612) -> + (hfn : @643) -> + (hwt : @750) -> + (hbind : @761) -> + (hF : @763) -> + (hA : @765) -> + (hne : @489) -> + @492 (fun (ro : @491) => @493 (@766 @181 @17) (@623 (@86 (@5 @475) (@86 (@51 @452) @85)) @17)) +@789 := @749 @371 +@790 := @355 @644 +@801 := @461 (@647 @346 @104) (@469 (@105 (@99 @254) (@105 (@102 @312) @104))) +@802 := @619 @662 +@804 := @369 @175 @167 +@805 := @802 @804 +@807 := @369 @181 @175 +@826 := (hB : @612) -> + (hfn : @643) -> + (hwt : @790) -> + (hbind : @801) -> + (hF : @763) -> + (hA : @805) -> + (hne : @402 @807 @407) -> + @492 (fun (ro : @491) => @493 (@766 (@369 @452 @427) @17) (@623 @680 @17)) +@827 := @789 @135 +@828 := @363 @644 +@839 := @461 (@647 @354 @104) (@469 (@105 (@99 @268) (@105 (@102 @326) @104))) +@840 := @619 @707 +@842 := @369 @167 @169 +@861 := (hfn : @643) -> + (hwt : @828) -> + (hbind : @839) -> + (hF : @763) -> + (hA : @840 @842) -> + (hne : @402 @804 @407) -> + @492 (fun (ro : @491) => @493 (@766 (@369 @427 @181) @17) (@623 @726 @17)) +@862 := Eq.refl.{1} +@865 := @827 (@862 @435 @613) +@866 := @367 @644 +@877 := @461 (@647 @362 @104) (@469 (@105 (@99 @283) (@105 (@102 @341) @104))) +@878 := @619 @346 +@880 := @369 @169 @171 +@896 := (hwt : @866) -> + (hbind : @877) -> + (hF : @763) -> + (hA : @878 @880) -> + (hne : @402 @842 @407) -> @492 (fun (ro : @491) => @493 (@766 @807 @17) (@623 @670 @17)) +@897 := @865 @366 +@899 := @647 @90 @104 +@902 := @461 @899 (@469 @109) +@903 := @619 @354 +@905 := @369 @171 @12 +@920 := (hbind : @902) -> + (hF : @763) -> + (hA : @903 @905) -> + (hne : @402 @880 @407) -> @492 (fun (ro : @491) => @493 (@766 @804 @17) (@623 @662 @17)) +@923 := @897 (@862 @460 @899) +@924 := @619 @362 +@926 := @369 @12 @4 +@940 := (hF : @763) -> + (hA : @924 @926) -> + (hne : @402 @905 @407) -> @492 (fun (ro : @491) => @493 (@766 @842 @17) (@623 @707 @17)) +@943 := @923 (@862 @472 @616) +@957 := (hA : @619 @90 @371) -> + (hne : @402 @926 @407) -> @492 (fun (ro : @491) => @493 (@766 @880 @17) (@623 @346 @17)) +@958 := @943 @398 +@969 := (hne : @402 @371 @407) -> @492 (fun (ro : @491) => @493 (@766 @905 @17) (@623 @354 @17)) +@970 := @958 @420 +@976 := @493 (@766 @926 @17) (@623 @362 @17) +@978 := @492 (fun (ro : @491) => @976) +@980 := @492 (fun (__e_ro : @491) => @976) +@981 := LexLeanPreservation.Rust.RepresentableL +@982 := @5 @15 +@984 := @86 @56 @85 +@987 := @981 (@86 @982 @984) +@988 := (__e_hrep : @987) -> @980 +@989 := fun (__e_hrep : @987) => @970 +@990 := (b : @50) -> @988 +@991 := fun (b : @50) => @989 +@992 := (a : @3) -> @990 +@993 := fun (a : @3) => @991 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R25/RustCore.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R25/RustCore.lean new file mode 100644 index 000000000..707d864ca --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R25/RustCore.lean @@ -0,0 +1,33 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.RustCore +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1], types := [.int, (.fixed .i8)], result := (.pair (.option (.fixed .u16)) (.option (.fixed .i64))), + body := (.build .pair (.pair (.option (.fixed .u16)) (.option (.fixed .i64))) [(.prim (.convert .u16) [(.var 0)]), (.prim (.convert .i64) [(.var 1)])]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .core, items := [ + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .int }, { pattern := (.bind (.generated .binding 1)), type := (.fixed .i8) }] (.pair (.option (.fixed .u16)) (.option (.fixed .i64))) (.mk [] (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0)))] (.call (.runtime (.convert .u16)) [(.widen (.move (.generated .operand 1)))] false))) (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))] (.call (.runtime (.convert .i64)) [(.widen (.move (.generated .operand 2)))] false))))))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [], (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0)))] (.call (.runtime (.convert .u16)) [(.widen (.move (.generated .operand 1)))] false))) (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))] (.call (.runtime (.convert .i64)) [(.widen (.move (.generated .operand 2)))] false)))), [(1, (.fixed .i8), (some 1)), (0, .int, (some 0))], rfl, rfl, + (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0)))]) (tail := (.call (.runtime (.convert .u16)) [(.widen (.move (.generated .operand 1)))] false)) (Corr.primWiden (t0 := .int) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.convert .i64)) [(.widen (.move (.generated .operand 2)))] false)) (Corr.primWiden (t0 := (.fixed .i8)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl)) (Corr.lNil)))))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | _ + 1 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.RustCore diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R25/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R25/RustStd.lean new file mode 100644 index 000000000..d64f05416 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R25/RustStd.lean @@ -0,0 +1,33 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1], types := [.int, (.fixed .i8)], result := (.pair (.option (.fixed .u16)) (.option (.fixed .i64))), + body := (.build .pair (.pair (.option (.fixed .u16)) (.option (.fixed .i64))) [(.prim (.convert .u16) [(.var 0)]), (.prim (.convert .i64) [(.var 1)])]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .int }, { pattern := (.bind (.generated .binding 1)), type := (.fixed .i8) }] (.pair (.option (.fixed .u16)) (.option (.fixed .i64))) (.mk [] (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0)))] (.call (.runtime (.convert .u16)) [(.widen (.move (.generated .operand 1)))] false))) (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))] (.call (.runtime (.convert .i64)) [(.widen (.move (.generated .operand 2)))] false))))))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [], (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0)))] (.call (.runtime (.convert .u16)) [(.widen (.move (.generated .operand 1)))] false))) (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))] (.call (.runtime (.convert .i64)) [(.widen (.move (.generated .operand 2)))] false)))), [(1, (.fixed .i8), (some 1)), (0, .int, (some 0))], rfl, rfl, + (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0)))]) (tail := (.call (.runtime (.convert .u16)) [(.widen (.move (.generated .operand 1)))] false)) (Corr.primWiden (t0 := .int) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.convert .i64)) [(.widen (.move (.generated .operand 2)))] false)) (Corr.primWiden (t0 := (.fixed .i8)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl)) (Corr.lNil)))))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | _ + 1 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R26.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R26.lean similarity index 99% rename from examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R26.lean rename to examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R26.lean index 77f1674c6..ad6e78f98 100644 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R26.lean +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R26.lean @@ -18,7 +18,7 @@ set_option maxRecDepth 100000 set_option maxHeartbeats 0 set_option synthInstance.maxHeartbeats 0 set_option linter.unusedVariables false -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26 def __prog : _root_.LexLeanTarget.TargetSyntax.Program := { adts := [], functions := [ @@ -37,4 +37,4 @@ def denote (xs : (List Nat)) (b : ByteArray) (i : Nat) : _root_.LexLeanPreservat theorem root (xs : (List Nat)) (b : ByteArray) (i : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) xs), (_root_.LexLeanTarget.TargetSyntax.Value.bytes b), (_root_.LexLeanTarget.TargetSyntax.Value.nat i)] (_root_.LexLeanPreservation.Rel (__fits_0 xs b i) ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u8) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool)))))))) (Coverage.Prims.sequences xs b i))) := _root_.LexLeanPreservation.run_of_funRel (__rel_0 xs b i) -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26 +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26 diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R26/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R26/Compose/RustStd.lex.tex new file mode 100644 index 000000000..f9f82b21b --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R26/Compose/RustStd.lex.tex @@ -0,0 +1,604 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.Compose.RustStd.root : @1256 := @1257 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.RustStd.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.RustStd.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.RustStd.flags +@3 := Nat +@4 := List.{0} +@5 := @4 @3 +@6 := #3 +@7 := LexLeanTarget.TargetSyntax.Value.nat +@8 := LexLeanPreservation.encList +@9 := @8 @3 +@10 := @9 @7 +@11 := @10 @6 +@12 := LexLeanTarget.TargetSyntax.Ty.nat +@13 := LexLeanTarget.TargetSyntax.Ty.list +@14 := @13 @12 +@15 := #0 +@16 := LexLeanTarget.TargetSyntax.Program +@17 := LexLeanPreservation.Rust.RCrate +@18 := LexLeanPreservation.Rust.Flags +@19 := LexLeanPreservation.Rust.WT +@20 := @19 @6 +@21 := #2 +@22 := @20 @21 +@23 := #1 +@24 := @22 @23 +@25 := @7 @15 +@31 := {p : @16} -> {c : @17} -> {A : @18} -> (n : @3) -> @24 @25 @12 +@33 := LexLeanPreservation.Rust.wt_nat @0 +@34 := @19 @0 +@36 := @34 @21 @23 +@41 := {c : @17} -> {A : @18} -> (n : @3) -> @36 @25 @12 +@42 := @33 @1 +@43 := @34 @1 +@44 := @43 @23 +@48 := {A : @18} -> (n : @3) -> @44 @25 @12 +@49 := @42 @2 +@50 := @43 @2 +@51 := @50 @25 +@52 := @51 @12 +@53 := (n : @3) -> @52 +@55 := fun (__x : @3) => @49 @15 +@56 := Sort 1 +@57 := LexLeanTarget.TargetSyntax.Value +@58 := (a._@._internal._hyg.#0 : @15) -> @57 +@59 := LexLeanTarget.TargetSyntax.Ty +@60 := #6 +@61 := @19 @60 +@62 := #5 +@63 := @61 @62 +@64 := #4 +@65 := @63 @64 +@66 := @21 @15 +@69 := (x : @21) -> @65 @66 @23 +@70 := @4 @6 +@71 := #7 +@74 := @19 @71 @60 @62 +@77 := @8 @64 @6 @15 +@78 := @74 @77 +@79 := @13 @21 +@88 := {p : @16} -> + {c : @17} -> + {A : @18} -> {α : @56} -> {e : @58} -> {t : @59} -> (h : @69) -> (xs : @70) -> @78 @79 +@90 := LexLeanPreservation.Rust.wt_encList @0 +@92 := @34 @62 @64 +@106 := {c : @17} -> + {A : @18} -> + {α : @56} -> + {e : @58} -> {t : @59} -> (h : (x : @21) -> @92 @66 @23) -> (xs : @70) -> @34 @60 @62 @77 @79 +@107 := @90 @1 +@108 := @43 @64 +@120 := {A : @18} -> + {α : @56} -> + {e : @58} -> {t : @59} -> (h : (x : @21) -> @108 @66 @23) -> (xs : @70) -> @43 @62 @77 @79 +@121 := @107 @2 +@123 := @50 @66 @23 +@131 := {α : @56} -> {e : @58} -> {t : @59} -> (h : (x : @21) -> @123) -> (xs : @70) -> @50 @77 @79 +@132 := @121 @3 +@142 := {e : (a._@._internal._hyg.#0 : @3) -> @57} -> + {t : @59} -> (h : (x : @3) -> @123) -> (xs : @5) -> @50 (@9 @6 @15) @79 +@143 := @132 @7 +@145 := (x : @3) -> @51 @23 +@147 := @50 (@10 @15) +@151 := {t : @59} -> (h : @145) -> (xs : @5) -> @147 @79 +@152 := @143 @12 +@156 := (h : (x : @3) -> @52) -> (xs : @5) -> @147 @14 +@158 := @152 @55 @6 +@160 := @50 @11 @14 +@161 := ByteArray +@162 := LexLeanTarget.TargetSyntax.Value.bytes +@163 := @162 @21 +@164 := LexLeanTarget.TargetSyntax.Ty.bytes +@165 := @162 @15 +@171 := {p : @16} -> {c : @17} -> {A : @18} -> (b : @161) -> @24 @165 @164 +@173 := LexLeanPreservation.Rust.wt_bytes @0 +@178 := {c : @17} -> {A : @18} -> (b : @161) -> @36 @165 @164 +@179 := @173 @1 +@183 := {A : @18} -> (b : @161) -> @44 @165 @164 +@184 := @179 @2 +@187 := (b : @161) -> @50 @165 @164 +@188 := @184 @21 +@190 := @50 @163 @164 +@191 := @7 @23 +@192 := @49 @23 +@194 := @50 @191 @12 +@195 := List.nil.{0} +@196 := List.cons.{0} +@197 := @195 @57 +@198 := @196 @57 +@200 := @198 @191 @197 +@202 := @198 @163 @200 +@204 := @198 @11 @202 +@205 := Prod.{0, 0} +@206 := @205 @3 +@207 := @206 @57 +@208 := 2 +@211 := Prod.mk.{0, 0} @3 @57 +@212 := @211 @208 +@213 := @212 @191 +@215 := @211 1 +@216 := @215 @163 +@217 := 0 +@218 := @211 @217 +@219 := @218 @11 +@220 := @195 @207 +@221 := @196 @207 +@223 := @221 @219 @220 +@225 := @221 @216 @223 +@227 := @221 @213 @225 +@228 := Bool.true +@229 := LexLeanTarget.TargetSyntax.Function +@230 := LexLeanTarget.TargetSyntax.Program.functions +@231 := @230 @0 +@232 := @195 @3 +@233 := @195 @59 +@234 := LexLeanTarget.TargetSyntax.Ty.unit +@235 := LexLeanTarget.TargetSyntax.Value.unit +@238 := LexLeanTarget.TargetSyntax.Expr.value @234 @235 +@243 := LexLeanTarget.TargetSyntax.Function.mk @232 @233 @234 @238 +@248 := List.getD.{0} @229 @231 @217 @243 +@252 := fun (__e_n : @3) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.RustStd.root @15 @217 +@253 := LexLeanPreservation.Rust.WTL +@261 := {p : @16} -> {c : @17} -> {A : @18} -> @253 @21 @23 @15 @197 @233 +@263 := LexLeanPreservation.Rust.wtl_nil @0 +@264 := @253 @0 +@270 := {c : @17} -> {A : @18} -> @264 @23 @15 @197 @233 +@271 := @263 @1 +@272 := @264 @1 +@276 := {A : @18} -> @272 @15 @197 @233 +@277 := @271 @2 +@278 := @272 @2 +@279 := @278 @197 +@280 := @279 @233 +@281 := @4 @57 +@282 := @4 @59 +@284 := @65 @6 @21 +@289 := @253 @71 @60 @62 @21 @23 +@290 := #8 +@293 := @253 @290 @71 @60 +@295 := @198 @62 @6 +@296 := @293 @295 +@297 := @196 @59 +@299 := @297 @64 @21 +@309 := {p : @16} -> + {c : @17} -> + {A : @18} -> + {v : @57} -> {t : @59} -> {vs : @281} -> {ts : @282} -> (h : @284) -> (hs : @289) -> @296 @299 +@311 := LexLeanPreservation.Rust.wtl_cons @0 +@329 := {c : @17} -> + {A : @18} -> + {v : @57} -> + {t : @59} -> + {vs : @281} -> + {ts : @282} -> (h : @92 @6 @21) -> (hs : @264 @60 @62 @21 @23) -> @264 @71 @60 @295 @299 +@330 := @311 @1 +@345 := {A : @18} -> + {v : @57} -> + {t : @59} -> + {vs : @281} -> {ts : @282} -> (h : @108 @6 @21) -> (hs : @272 @62 @21 @23) -> @272 @60 @295 @299 +@346 := @330 @2 +@348 := @50 @6 @21 +@350 := @278 @21 @23 +@358 := {v : @57} -> + {t : @59} -> {vs : @281} -> {ts : @282} -> (h : @348) -> (hs : @350) -> @278 @295 @299 +@359 := @346 @191 +@360 := @7 @64 +@362 := @50 @360 @21 +@363 := @7 @60 +@364 := @198 @363 +@372 := {t : @59} -> {vs : @281} -> {ts : @282} -> (h : @362) -> (hs : @350) -> @278 (@364 @6) @299 +@373 := @359 @12 +@374 := @7 @6 +@376 := @50 @374 @12 +@377 := @7 @62 +@378 := @198 @377 +@380 := @278 (@378 @6) +@381 := @297 @12 +@382 := @381 @21 +@387 := {vs : @281} -> {ts : @282} -> (h : @376) -> (hs : @350) -> @380 @382 +@388 := @373 @197 +@389 := @7 @21 +@391 := @50 @389 @12 +@392 := @279 @23 +@394 := @198 @360 @197 +@399 := {ts : @282} -> (h : @391) -> (hs : @392) -> @278 @394 @382 +@400 := @388 @233 +@402 := @198 @374 @197 +@403 := @278 @402 +@404 := @381 @233 +@407 := (h : @194) -> (hs : @280) -> @403 @404 +@408 := @400 @192 +@410 := @198 @389 @197 +@412 := @278 @410 @404 +@413 := (hs : @280) -> @412 +@414 := @408 @277 +@416 := @278 @200 @404 +@417 := @346 @163 +@418 := @162 @62 +@420 := @50 @418 @21 +@421 := @162 @71 +@422 := @198 @421 +@430 := {t : @59} -> {vs : @281} -> {ts : @282} -> (h : @420) -> (hs : @350) -> @278 (@422 @6) @299 +@431 := @417 @164 +@432 := @162 @64 +@434 := @50 @432 @164 +@435 := @162 @60 +@436 := @198 @435 +@438 := @278 (@436 @6) +@439 := @297 @164 +@440 := @439 @21 +@445 := {vs : @281} -> {ts : @282} -> (h : @434) -> (hs : @350) -> @438 @440 +@446 := @431 @200 +@447 := @162 @6 +@449 := @50 @447 @164 +@450 := @403 @23 +@452 := @198 @418 @394 +@457 := {ts : @282} -> (h : @449) -> (hs : @450) -> @278 @452 @440 +@458 := @446 @404 +@460 := @198 @432 @402 +@461 := @278 @460 +@462 := @439 @404 +@465 := (h : @190) -> (hs : @412) -> @461 @462 +@466 := @458 @188 +@468 := @198 @447 @410 +@470 := @278 @468 @462 +@471 := (hs : @416) -> @470 +@472 := @466 @414 +@474 := @278 @202 @462 +@475 := @346 @11 +@476 := @10 @60 +@478 := @50 @476 @21 +@479 := @10 @290 +@480 := @198 @479 +@488 := {t : @59} -> {vs : @281} -> {ts : @282} -> (h : @478) -> (hs : @350) -> @278 (@480 @6) @299 +@489 := @475 @14 +@490 := @10 @62 +@492 := @50 @490 @14 +@493 := @10 @71 +@494 := @198 @493 +@496 := @278 (@494 @6) +@497 := @297 @14 +@498 := @497 @21 +@503 := {vs : @281} -> {ts : @282} -> (h : @492) -> (hs : @350) -> @496 @498 +@504 := @489 @202 +@505 := @10 @64 +@507 := @50 @505 @14 +@508 := @461 @23 +@510 := @198 @476 @452 +@511 := @278 @510 +@515 := {ts : @282} -> (h : @507) -> (hs : @508) -> @511 @498 +@516 := @504 @462 +@518 := @198 @490 @460 +@519 := @278 @518 +@520 := @497 @462 +@523 := (h : @160) -> (hs : @470) -> @519 @520 +@524 := @516 @158 +@526 := @198 @505 @468 +@527 := @278 @526 +@529 := (hs : @474) -> @527 @520 +@530 := @524 @472 +@531 := @278 @204 +@532 := @531 @520 +@533 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.denote +@536 := @533 @6 @21 @23 +@537 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.__fits_0 +@540 := @537 @6 @21 @23 +@544 := Coverage.Prims.sequences @6 @21 @23 +@545 := Option.{0} +@546 := @545 @3 +@547 := UInt8 +@548 := @545 @547 +@549 := @545 @5 +@550 := @545 @161 +@551 := Bool +@553 := @205 @551 @551 +@555 := @205 @550 @553 +@557 := @205 @549 @555 +@559 := @205 @548 @557 +@561 := @205 @546 @559 +@562 := @206 @561 +@564 := @205 @161 @562 +@565 := LexLeanPreservation.encOption +@567 := @565 @3 @7 +@568 := LexLeanTarget.TargetSyntax.Value.u8 +@570 := @565 @547 @568 +@572 := @565 @5 @10 +@574 := @565 @161 @162 +@575 := LexLeanTarget.TargetSyntax.Value.bool +@576 := LexLeanPreservation.encPair +@580 := @576 @551 @551 @575 @575 +@584 := @576 @550 @553 @574 @580 +@588 := @576 @549 @555 @572 @584 +@592 := @576 @548 @557 @570 @588 +@596 := @576 @546 @559 @567 @592 +@600 := @576 @3 @561 @7 @596 +@604 := @576 @161 @562 @162 @600 +@609 := @576 @5 @564 @10 @604 @544 +@613 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.root @6 @21 @23 +@614 := Ne.{1} +@615 := LexLeanPreservation.Obs +@616 := @614 @615 +@617 := LexLeanPreservation.Rel +@620 := @616 (@617 @23 @15) +@621 := LexLeanPreservation.Obs.stuck +@624 := (f : @551) -> (v : @57) -> @620 @621 +@626 := LexLeanPreservation.Rust.rel_ne_stuck @540 +@634 := (v : @57) -> @616 (@617 (@537 @64 @6 @21) @15) @621 +@635 := @626 @609 +@639 := @616 (@617 @540 @609) @621 +@640 := @4 @207 +@641 := LexLeanPreservation.Rust.FunSem +@642 := #9 +@648 := (n : @3) -> @641 @642 @290 @71 @15 @60 +@649 := Eq.{1} +@650 := @545 @229 +@651 := @649 @650 +@658 := LexLeanRuntime.index (@4 @229) @229 (LexLeanRuntime.instIndexableList @229) +@662 := @651 (@658 (@230 @642) @60) +@663 := Option.some.{0} +@664 := @663 @229 +@665 := @664 @62 +@666 := @662 @665 +@667 := #10 +@671 := @253 @667 @642 @290 @62 +@672 := LexLeanTarget.TargetSyntax.Function.types +@673 := @672 @60 +@674 := @671 @673 +@675 := @545 @640 +@676 := @649 @675 +@677 := LexLeanTarget.TargetSemantics.bindAll +@678 := LexLeanTarget.TargetSyntax.Function.parameters +@683 := @676 (@677 (@678 @71) @60 @220) +@684 := @663 @640 +@685 := @684 @62 +@686 := @683 @685 +@687 := @545 @551 +@688 := @649 @687 +@689 := LexLeanPreservation.Rust.fnFallible +@690 := #11 +@693 := @688 (@689 @690 @642) +@694 := @663 @551 +@695 := @694 @62 +@696 := @693 @695 +@697 := LexLeanPreservation.RunConv +@698 := #13 +@702 := @697 @698 @667 @290 @62 +@704 := @616 @60 @621 +@705 := Exists.{1} +@706 := LexLeanPreservation.Rust.ROut +@707 := @705 @706 +@708 := And +@709 := LexLeanPreservation.Rust.RealizesFn +@713 := @708 (@709 @642 @290 @15) +@714 := LexLeanPreservation.Rust.RCI +@716 := @714 #15 +@717 := LexLeanPreservation.Rust.fnIdent +@718 := @717 @698 +@725 := (hne : @704) -> @707 (fun (ro : @706) => @713 (@716 @718 @690 @15)) +@740 := {p : @16} -> + {c : @17} -> + {A : @18} -> + {f : @3} -> + {fn : @229} -> + {args : @281} -> + {env : @640} -> + {F : @551} -> + {o : @615} -> + (hB : @648) -> + (hfn : @666) -> (hwt : @674) -> (hbind : @686) -> (hF : @696) -> (hA : @702) -> @725 +@742 := LexLeanPreservation.Rust.compose @0 +@743 := @641 @0 +@748 := (n : @3) -> @743 @290 @71 @15 @60 +@749 := @658 @231 +@752 := @651 (@749 @60) @665 +@756 := @264 @642 @290 @62 @673 +@757 := @697 @0 +@760 := @757 @667 @290 @62 +@774 := {c : @17} -> + {A : @18} -> + {f : @3} -> + {fn : @229} -> + {args : @281} -> + {env : @640} -> + {F : @551} -> + {o : @615} -> + (hB : @748) -> + (hfn : @752) -> (hwt : @756) -> (hbind : @686) -> (hF : @696) -> (hA : @760) -> @725 +@775 := @742 @1 +@776 := @743 @1 +@780 := (n : @3) -> @776 @71 @15 @60 +@783 := @272 @290 @62 @673 +@784 := @689 @1 +@787 := @688 (@784 @642) @695 +@788 := @714 @1 +@798 := (hbind : @686) -> + (hF : @787) -> (hA : @760) -> (hne : @704) -> @707 (fun (ro : @706) => @713 (@788 @718 @690 @15)) +@808 := {A : @18} -> + {f : @3} -> + {fn : @229} -> + {args : @281} -> + {env : @640} -> {F : @551} -> {o : @615} -> (hB : @780) -> (hfn : @752) -> (hwt : @783) -> @798 +@809 := @775 @2 +@811 := @776 @2 @15 +@813 := (n : @3) -> @811 @60 +@814 := @278 @62 +@815 := @814 @673 +@824 := {f : @3} -> + {fn : @229} -> + {args : @281} -> + {env : @640} -> {F : @551} -> {o : @615} -> (hB : @813) -> (hfn : @752) -> (hwt : @815) -> @798 +@825 := @809 @217 +@827 := (n : @3) -> @811 @217 +@828 := @749 @217 +@829 := @651 @828 +@830 := @829 @665 +@831 := @784 @217 +@832 := @688 @831 +@833 := @832 @695 +@834 := @757 @217 +@836 := @834 @290 @62 +@838 := @788 (@717 @217) +@846 := (hF : @833) -> (hA : @836) -> (hne : @704) -> @707 (fun (ro : @706) => @713 (@838 @690 @15)) +@855 := {fn : @229} -> + {args : @281} -> + {env : @640} -> + {F : @551} -> {o : @615} -> (hB : @827) -> (hfn : @830) -> (hwt : @815) -> (hbind : @686) -> @846 +@856 := @825 @248 +@858 := @829 (@664 @248) +@859 := @672 @248 +@860 := @814 @859 +@862 := @677 (@678 @248) +@874 := {args : @281} -> + {env : @640} -> + {F : @551} -> + {o : @615} -> + (hB : @827) -> (hfn : @858) -> (hwt : @860) -> (hbind : @676 (@862 @60 @220) @685) -> @846 +@875 := @856 @204 +@878 := @480 (@422 (@364 @197)) +@880 := @278 @878 @859 +@889 := @198 (@10 @642) (@198 (@162 @290) (@198 (@7 @71) @197)) +@893 := @676 (@862 @889 @220) @685 +@902 := @198 (@10 @690) (@198 (@162 @667) (@198 (@7 @642) @197)) +@904 := @834 @902 @62 +@907 := @198 (@10 #14) +@909 := @198 (@162 @698) +@910 := #12 +@930 := {env : @640} -> + {F : @551} -> + {o : @615} -> + (hB : @827) -> + (hfn : @858) -> + (hwt : @880) -> + (hbind : @893) -> + (hF : @833) -> + (hA : @904) -> + (hne : @704) -> @707 (fun (ro : @706) => @713 (@838 (@907 (@909 (@198 (@7 @910) @197))) @15)) +@931 := @875 @227 +@934 := @494 (@436 (@378 @197)) +@936 := @278 @934 @859 +@950 := @676 (@862 @878 @220) (@684 (@221 (@212 @363) (@221 (@215 @421) (@221 (@218 @479) @220)))) +@959 := @198 (@10 @667) (@198 (@162 @642) (@198 (@7 @290) @197)) +@984 := {F : @551} -> + {o : @615} -> + (hB : @827) -> + (hfn : @858) -> + (hwt : @936) -> + (hbind : @950) -> + (hF : @833) -> + (hA : @834 @959 @62) -> + (hne : @704) -> + @707 + (fun (ro : @706) => @713 (@838 (@198 (@10 @698) (@198 (@162 @910) (@198 (@7 @690) @197))) @15)) +@985 := @931 @228 +@986 := @511 @859 +@1000 := @676 (@862 @934 @220) (@684 (@221 (@212 @377) (@221 (@215 @435) (@221 (@218 @493) @220)))) +@1002 := @832 (@694 @228) +@1004 := @834 @889 @62 +@1005 := @709 @228 +@1030 := {o : @615} -> + (hB : @827) -> + (hfn : @858) -> + (hwt : @986) -> + (hbind : @1000) -> + (hF : @1002) -> + (hA : @1004) -> + (hne : @704) -> + @707 + (fun (ro : @706) => + @708 (@1005 @290 @15) (@838 (@198 (@10 @910) (@198 (@162 @690) (@198 (@7 @667) @197))) @15)) +@1031 := @985 @536 +@1032 := @519 @859 +@1046 := @676 (@862 @510 @220) (@684 (@221 (@212 @360) (@221 (@215 @418) (@221 (@218 @476) @220)))) +@1047 := @834 @878 +@1050 := @533 @290 @71 @60 +@1051 := @1047 @1050 +@1054 := @533 @642 @290 @71 +@1074 := (hB : @827) -> + (hfn : @858) -> + (hwt : @1032) -> + (hbind : @1046) -> + (hF : @1002) -> + (hA : @1051) -> + (hne : @616 @1054 @621) -> + @707 (fun (ro : @706) => @708 (@1005 (@533 @690 @667 @642) @15) (@838 @902 @15)) +@1075 := @1031 @252 +@1076 := @527 @859 +@1090 := @676 (@862 @518 @220) (@684 (@221 (@212 @374) (@221 (@215 @432) (@221 (@218 @490) @220)))) +@1091 := @834 @934 +@1094 := @533 @71 @60 @62 +@1114 := (hfn : @858) -> + (hwt : @1076) -> + (hbind : @1090) -> + (hF : @1002) -> + (hA : @1091 @1094) -> + (hne : @616 @1050 @621) -> + @707 (fun (ro : @706) => @708 (@1005 (@533 @667 @642 @290) @15) (@838 @959 @15)) +@1115 := Eq.refl.{1} +@1118 := @1075 (@1115 @650 @828) +@1119 := @531 @859 +@1133 := @676 (@862 @526 @220) (@684 (@221 (@212 @389) (@221 (@215 @447) (@221 (@218 @505) @220)))) +@1134 := @834 @510 +@1137 := @533 @60 @62 @64 +@1153 := (hwt : @1119) -> + (hbind : @1133) -> + (hF : @1002) -> + (hA : @1134 @1137) -> + (hne : @616 @1094 @621) -> @707 (fun (ro : @706) => @708 (@1005 @1054 @15) (@838 @889 @15)) +@1154 := @1118 @530 +@1156 := @862 @204 @220 +@1159 := @676 @1156 (@684 @227) +@1160 := @834 @518 +@1163 := @533 @62 @64 @6 +@1178 := (hbind : @1159) -> + (hF : @1002) -> + (hA : @1160 @1163) -> + (hne : @616 @1137 @621) -> @707 (fun (ro : @706) => @708 (@1005 @1050 @15) (@838 @878 @15)) +@1181 := @1154 (@1115 @675 @1156) +@1182 := @834 @526 +@1185 := @533 @64 @6 @21 +@1199 := (hF : @1002) -> + (hA : @1182 @1185) -> + (hne : @616 @1163 @621) -> @707 (fun (ro : @706) => @708 (@1005 @1094 @15) (@838 @934 @15)) +@1202 := @1181 (@1115 @687 @831) +@1216 := (hA : @834 @204 @536) -> + (hne : @616 @1185 @621) -> @707 (fun (ro : @706) => @708 (@1005 @1137 @15) (@838 @510 @15)) +@1217 := @1202 @613 +@1228 := (hne : @616 @536 @621) -> @707 (fun (ro : @706) => @708 (@1005 @1163 @15) (@838 @518 @15)) +@1229 := @1217 @635 +@1235 := @708 (@1005 @1185 @15) (@838 @526 @15) +@1237 := @707 (fun (ro : @706) => @1235) +@1239 := @707 (fun (__e_ro : @706) => @1235) +@1240 := LexLeanPreservation.Rust.RepresentableL +@1241 := @10 @21 +@1242 := @162 @23 +@1244 := @198 @25 @197 +@1246 := @198 @1242 @1244 +@1249 := @1240 (@198 @1241 @1246) +@1250 := (__e_hrep : @1249) -> @1239 +@1251 := fun (__e_hrep : @1249) => @1229 +@1252 := (i : @3) -> @1250 +@1253 := fun (i : @3) => @1251 +@1254 := (b : @161) -> @1252 +@1255 := fun (b : @161) => @1253 +@1256 := (xs : @5) -> @1254 +@1257 := fun (xs : @5) => @1255 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R26/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R26/RustStd.lean new file mode 100644 index 000000000..7950a9d9d --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R26/RustStd.lean @@ -0,0 +1,33 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1, 2], types := [(.list .nat), .bytes, .nat], result := (.pair (.list .nat) (.pair .bytes (.pair .nat (.pair (.option .nat) (.pair (.option (.fixed .u8)) (.pair (.option (.list .nat)) (.pair (.option .bytes) (.pair .bool .bool)))))))), + body := (.build .pair (.pair (.list .nat) (.pair .bytes (.pair .nat (.pair (.option .nat) (.pair (.option (.fixed .u8)) (.pair (.option (.list .nat)) (.pair (.option .bytes) (.pair .bool .bool)))))))) [(.prim .append [(.var 0), (.build .cons (.list .nat) [(.value .nat (.nat 1)), (.build .nil (.list .nat) [])])]), (.build .pair (.pair .bytes (.pair .nat (.pair (.option .nat) (.pair (.option (.fixed .u8)) (.pair (.option (.list .nat)) (.pair (.option .bytes) (.pair .bool .bool))))))) [(.prim .append [(.var 1), (.value .bytes (.bytes (ByteArray.mk #[10])))]), (.build .pair (.pair .nat (.pair (.option .nat) (.pair (.option (.fixed .u8)) (.pair (.option (.list .nat)) (.pair (.option .bytes) (.pair .bool .bool)))))) [(.prim .natAdd [(.prim .length [(.var 0)]), (.prim .length [(.var 1)])]), (.build .pair (.pair (.option .nat) (.pair (.option (.fixed .u8)) (.pair (.option (.list .nat)) (.pair (.option .bytes) (.pair .bool .bool))))) [(.prim .index [(.var 0), (.var 2)]), (.build .pair (.pair (.option (.fixed .u8)) (.pair (.option (.list .nat)) (.pair (.option .bytes) (.pair .bool .bool)))) [(.prim .index [(.var 1), (.var 2)]), (.build .pair (.pair (.option (.list .nat)) (.pair (.option .bytes) (.pair .bool .bool))) [(.prim .slice [(.var 0), (.var 2), (.value .nat (.nat 2))]), (.build .pair (.pair (.option .bytes) (.pair .bool .bool)) [(.prim .slice [(.var 1), (.value .nat (.nat 0)), (.var 2)]), (.build .pair (.pair .bool .bool) [(.prim .equal [(.var 1), (.value .bytes (.bytes (ByteArray.mk #[])))]), (.prim .equal [(.prim .equal [(.var 2), (.value .nat (.nat 3))]), (.build .true .bool [])])])])])])])])])]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := .bytes }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.fallible (.pair (.list .nat) (.pair .bytes (.pair .nat (.pair (.option .nat) (.pair (.option (.fixed .u8)) (.pair (.option (.list .nat)) (.pair (.option .bytes) (.pair .bool .bool))))))))) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.construct .cons [(.lit (.nat 1)), (.construct (.nil .nat) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 4)) none (.lit (.bytes (ByteArray.mk #[10]))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthList) [(.move (.generated .operand 5))] false)))), (.mk (.bind (.generated .operand 8)) none (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 6))] false))))] (.call (.runtime .natAdd) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] true))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.clone (.generated .binding 0))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 2)))] (.call (.runtime .indexList) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 2)))] (.call (.runtime .indexBytes) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 13)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 15)) none (.lit (.nat 2)))] (.call (.runtime .sliceList) [(.move (.generated .operand 13)), (.move (.generated .operand 14)), (.move (.generated .operand 15))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 17)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 18)) none (.copy (.generated .binding 2)))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 16)), (.move (.generated .operand 17)), (.move (.generated .operand 18))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.move (.generated .binding 1))), (.mk (.bind (.generated .operand 20)) none (.lit (.bytes (ByteArray.mk #[]))))] (.call (.runtime .equal) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false))) (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 22)) none (.lit (.nat 3)))] (.call (.runtime .equal) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false)))), (.mk (.bind (.generated .operand 24)) none (.lit (.bool true)))] (.call (.runtime .equal) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))))))))))))))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [], (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.construct .cons [(.lit (.nat 1)), (.construct (.nil .nat) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 4)) none (.lit (.bytes (ByteArray.mk #[10]))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthList) [(.move (.generated .operand 5))] false)))), (.mk (.bind (.generated .operand 8)) none (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 6))] false))))] (.call (.runtime .natAdd) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] true))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.clone (.generated .binding 0))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 2)))] (.call (.runtime .indexList) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 2)))] (.call (.runtime .indexBytes) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 13)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 15)) none (.lit (.nat 2)))] (.call (.runtime .sliceList) [(.move (.generated .operand 13)), (.move (.generated .operand 14)), (.move (.generated .operand 15))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 17)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 18)) none (.copy (.generated .binding 2)))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 16)), (.move (.generated .operand 17)), (.move (.generated .operand 18))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.move (.generated .binding 1))), (.mk (.bind (.generated .operand 20)) none (.lit (.bytes (ByteArray.mk #[]))))] (.call (.runtime .equal) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false))) (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 22)) none (.lit (.nat 3)))] (.call (.runtime .equal) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false)))), (.mk (.bind (.generated .operand 24)) none (.lit (.bool true)))] (.call (.runtime .equal) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false)))))))))))), [(2, .nat, (some 2)), (1, .bytes, (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, + (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.construct .cons [(.lit (.nat 1)), (.construct (.nil .nat) [])]))]) (tail := (.call (.runtime .appendList) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false)) (Corr.prim (ts := [(.list .nat), (.list .nat)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 3)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 4)) none (.lit (.bytes (ByteArray.mk #[10]))))]) (tail := (.call (.runtime .appendBytes) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 7)) none (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthList) [(.move (.generated .operand 5))] false)))), (.mk (.bind (.generated .operand 8)) none (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 6))] false))))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 5)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 5))] false)) (Corr.prim (ts := [(.list .nat)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 6)) none (.clone (.generated .binding 1)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 6))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 9)) none (.clone (.generated .binding 0))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .indexList) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false)) (Corr.prim (ts := [(.list .nat), .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 11)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .indexBytes) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false)) (Corr.prim (ts := [.bytes, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 13)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 15)) none (.lit (.nat 2)))]) (tail := (.call (.runtime .sliceList) [(.move (.generated .operand 13)), (.move (.generated .operand 14)), (.move (.generated .operand 15))] false)) (Corr.prim (ts := [(.list .nat), .nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 16)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 17)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 18)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .sliceBytes) [(.move (.generated .operand 16)), (.move (.generated .operand 17)), (.move (.generated .operand 18))] false)) (Corr.prim (ts := [.bytes, .nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 19)) none (.move (.generated .binding 1))), (.mk (.bind (.generated .operand 20)) none (.lit (.bytes (ByteArray.mk #[]))))]) (tail := (.call (.runtime .equal) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 23)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 22)) none (.lit (.nat 3)))] (.call (.runtime .equal) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false)))), (.mk (.bind (.generated .operand 24)) none (.lit (.bool true)))]) (tail := (.call (.runtime .equal) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false)) (Corr.prim (ts := [.bool, .bool]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 21)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 22)) none (.lit (.nat 3)))]) (tail := (.call (.runtime .equal) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.buildConst rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil))))))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | _ + 1 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R27.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R27.lean similarity index 96% rename from examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R27.lean rename to examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R27.lean index 18cdb9563..725843a12 100644 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R27.lean +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R27.lean @@ -18,7 +18,7 @@ set_option maxRecDepth 100000 set_option maxHeartbeats 0 set_option synthInstance.maxHeartbeats 0 set_option linter.unusedVariables false -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27 def __prog : _root_.LexLeanTarget.TargetSyntax.Program := { adts := [], functions := [ @@ -37,4 +37,4 @@ def denote (s : String) : _root_.LexLeanPreservation.Obs := theorem root (s : String) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.string s)] (_root_.LexLeanPreservation.Rel (__fits_0 s) ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.int) (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u32)) (Coverage.Prims.decimals s))) := _root_.LexLeanPreservation.run_of_funRel (__rel_0 s) -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27 +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27 diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R27/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R27/Compose/RustStd.lex.tex new file mode 100644 index 000000000..797f73dc7 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R27/Compose/RustStd.lex.tex @@ -0,0 +1,428 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.Compose.RustStd.root : @842 := @843 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.RustStd.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.RustStd.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.RustStd.flags +@3 := String +@4 := #1 +@5 := LexLeanTarget.TargetSyntax.Value.string +@6 := @5 @4 +@7 := LexLeanTarget.TargetSyntax.Ty.string +@8 := LexLeanTarget.TargetSyntax.Program +@9 := LexLeanPreservation.Rust.RCrate +@10 := LexLeanPreservation.Rust.Flags +@11 := LexLeanPreservation.Rust.WT +@12 := #3 +@13 := @11 @12 +@14 := #2 +@16 := @13 @14 @4 +@17 := #0 +@18 := @5 @17 +@24 := {p : @8} -> {c : @9} -> {A : @10} -> (s : @3) -> @16 @18 @7 +@26 := LexLeanPreservation.Rust.wt_string @0 +@27 := @11 @0 +@34 := {c : @9} -> {A : @10} -> (s : @3) -> @27 @14 @4 @18 @7 +@35 := @26 @1 +@36 := @27 @1 +@41 := {A : @10} -> (s : @3) -> @36 @4 @18 @7 +@42 := @35 @2 +@43 := @36 @2 +@46 := (s : @3) -> @43 @18 @7 +@47 := @42 @4 +@49 := @43 @6 @7 +@50 := LexLeanTarget.TargetSyntax.Value +@51 := List.nil.{0} +@52 := List.cons.{0} +@53 := @51 @50 +@54 := @52 @50 +@56 := @54 @6 @53 +@57 := Nat +@60 := Prod.{0, 0} @57 @50 +@61 := 0 +@65 := Prod.mk.{0, 0} @57 @50 @61 +@66 := @65 @6 +@67 := @51 @60 +@68 := @52 @60 +@70 := @68 @66 @67 +@71 := Bool.true +@72 := LexLeanTarget.TargetSyntax.Function +@73 := LexLeanTarget.TargetSyntax.Program.functions +@74 := @73 @0 +@75 := LexLeanTarget.TargetSyntax.Ty +@76 := @51 @57 +@77 := @51 @75 +@78 := LexLeanTarget.TargetSyntax.Ty.unit +@79 := LexLeanTarget.TargetSyntax.Value.unit +@82 := LexLeanTarget.TargetSyntax.Expr.value @78 @79 +@87 := LexLeanTarget.TargetSyntax.Function.mk @76 @77 @78 @82 +@92 := List.getD.{0} @72 @74 @61 @87 +@96 := fun (__e_n : @57) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.RustStd.root @17 @61 +@97 := LexLeanPreservation.Rust.WTL +@105 := {p : @8} -> {c : @9} -> {A : @10} -> @97 @14 @4 @17 @53 @77 +@107 := LexLeanPreservation.Rust.wtl_nil @0 +@108 := @97 @0 +@114 := {c : @9} -> {A : @10} -> @108 @4 @17 @53 @77 +@115 := @107 @1 +@116 := @108 @1 +@120 := {A : @10} -> @116 @17 @53 @77 +@121 := @115 @2 +@122 := @116 @2 +@123 := @122 @53 +@124 := @123 @77 +@125 := List.{0} +@126 := @125 @50 +@127 := @125 @75 +@128 := #6 +@129 := @11 @128 +@130 := #5 +@131 := @129 @130 +@132 := #4 +@135 := @131 @132 @12 @14 +@136 := #7 +@141 := @97 @136 @128 @130 @14 @4 +@142 := #8 +@145 := @97 @142 @136 @128 +@147 := @54 @130 @12 +@148 := @145 @147 +@149 := @52 @75 +@151 := @149 @132 @14 +@161 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {v : @50} -> {t : @75} -> {vs : @126} -> {ts : @127} -> (h : @135) -> (hs : @141) -> @148 @151 +@163 := LexLeanPreservation.Rust.wtl_cons @0 +@183 := {c : @9} -> + {A : @10} -> + {v : @50} -> + {t : @75} -> + {vs : @126} -> + {ts : @127} -> + (h : @27 @130 @132 @12 @14) -> (hs : @108 @128 @130 @14 @4) -> @108 @136 @128 @147 @151 +@184 := @163 @1 +@200 := {A : @10} -> + {v : @50} -> + {t : @75} -> + {vs : @126} -> + {ts : @127} -> (h : @36 @132 @12 @14) -> (hs : @116 @130 @14 @4) -> @116 @128 @147 @151 +@201 := @184 @2 +@203 := @43 @12 @14 +@205 := @122 @14 @4 +@213 := {v : @50} -> + {t : @75} -> {vs : @126} -> {ts : @127} -> (h : @203) -> (hs : @205) -> @122 @147 @151 +@214 := @201 @6 +@215 := @5 @132 +@217 := @43 @215 @14 +@218 := @5 @128 +@219 := @54 @218 +@227 := {t : @75} -> {vs : @126} -> {ts : @127} -> (h : @217) -> (hs : @205) -> @122 (@219 @12) @151 +@228 := @214 @7 +@229 := @5 @12 +@231 := @43 @229 @7 +@232 := @5 @130 +@233 := @54 @232 +@235 := @122 (@233 @12) +@236 := @149 @7 +@237 := @236 @14 +@242 := {vs : @126} -> {ts : @127} -> (h : @231) -> (hs : @205) -> @235 @237 +@243 := @228 @53 +@244 := @5 @14 +@246 := @43 @244 @7 +@247 := @123 @4 +@249 := @54 @215 @53 +@250 := @122 @249 +@254 := {ts : @127} -> (h : @246) -> (hs : @247) -> @250 @237 +@255 := @243 @77 +@257 := @54 @229 @53 +@258 := @122 @257 +@259 := @236 @77 +@262 := (h : @49) -> (hs : @124) -> @258 @259 +@263 := @255 @47 +@265 := @54 @244 @53 +@266 := @122 @265 +@268 := (hs : @124) -> @266 @259 +@269 := @263 @121 +@270 := @122 @56 +@271 := @270 @259 +@272 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.denote +@273 := @272 @4 +@274 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.__fits_0 +@275 := @274 @4 +@277 := Coverage.Prims.decimals @4 +@278 := Int +@279 := Option.{0} +@280 := @279 @278 +@281 := UInt32 +@282 := @279 @281 +@283 := LexLeanTarget.TargetSyntax.Value.int +@284 := LexLeanPreservation.encOption +@286 := @284 @278 @283 +@287 := LexLeanTarget.TargetSyntax.Value.u32 +@289 := @284 @281 @287 +@295 := LexLeanPreservation.encPair @280 @282 @286 @289 @277 +@297 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.root @4 +@298 := Bool +@299 := Ne.{1} +@300 := LexLeanPreservation.Obs +@301 := @299 @300 +@302 := LexLeanPreservation.Rel +@305 := @301 (@302 @4 @17) +@306 := LexLeanPreservation.Obs.stuck +@309 := (f : @298) -> (v : @50) -> @305 @306 +@311 := LexLeanPreservation.Rust.rel_ne_stuck @275 +@317 := (v : @50) -> @301 (@302 (@274 @14) @17) @306 +@318 := @311 @295 +@322 := @301 (@302 @275 @295) @306 +@323 := @125 @60 +@324 := LexLeanPreservation.Rust.FunSem +@325 := #9 +@331 := (n : @57) -> @324 @325 @142 @136 @17 @128 +@332 := Eq.{1} +@333 := @279 @72 +@334 := @332 @333 +@341 := LexLeanRuntime.index (@125 @72) @72 (LexLeanRuntime.instIndexableList @72) +@345 := @334 (@341 (@73 @325) @128) +@346 := Option.some.{0} +@347 := @346 @72 +@348 := @347 @130 +@349 := @345 @348 +@350 := #10 +@354 := @97 @350 @325 @142 @130 +@355 := LexLeanTarget.TargetSyntax.Function.types +@356 := @355 @128 +@357 := @354 @356 +@358 := @279 @323 +@359 := @332 @358 +@360 := LexLeanTarget.TargetSemantics.bindAll +@361 := LexLeanTarget.TargetSyntax.Function.parameters +@366 := @359 (@360 (@361 @136) @128 @67) +@367 := @346 @323 +@368 := @367 @130 +@369 := @366 @368 +@370 := @279 @298 +@371 := @332 @370 +@372 := LexLeanPreservation.Rust.fnFallible +@373 := #11 +@376 := @371 (@372 @373 @325) +@377 := @346 @298 +@378 := @377 @130 +@379 := @376 @378 +@380 := LexLeanPreservation.RunConv +@381 := #13 +@385 := @380 @381 @350 @142 @130 +@387 := @301 @128 @306 +@388 := Exists.{1} +@389 := LexLeanPreservation.Rust.ROut +@390 := @388 @389 +@391 := And +@392 := LexLeanPreservation.Rust.RealizesFn +@396 := @391 (@392 @325 @142 @17) +@397 := LexLeanPreservation.Rust.RCI +@399 := @397 #15 +@400 := LexLeanPreservation.Rust.fnIdent +@401 := @400 @381 +@408 := (hne : @387) -> @390 (fun (ro : @389) => @396 (@399 @401 @373 @17)) +@423 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {f : @57} -> + {fn : @72} -> + {args : @126} -> + {env : @323} -> + {F : @298} -> + {o : @300} -> + (hB : @331) -> + (hfn : @349) -> (hwt : @357) -> (hbind : @369) -> (hF : @379) -> (hA : @385) -> @408 +@425 := LexLeanPreservation.Rust.compose @0 +@426 := @324 @0 +@431 := (n : @57) -> @426 @142 @136 @17 @128 +@432 := @341 @74 +@435 := @334 (@432 @128) @348 +@439 := @108 @325 @142 @130 @356 +@440 := @380 @0 +@443 := @440 @350 @142 @130 +@457 := {c : @9} -> + {A : @10} -> + {f : @57} -> + {fn : @72} -> + {args : @126} -> + {env : @323} -> + {F : @298} -> + {o : @300} -> + (hB : @431) -> + (hfn : @435) -> (hwt : @439) -> (hbind : @369) -> (hF : @379) -> (hA : @443) -> @408 +@458 := @425 @1 +@459 := @426 @1 +@463 := (n : @57) -> @459 @136 @17 @128 +@466 := @116 @142 @130 @356 +@467 := @372 @1 +@470 := @371 (@467 @325) @378 +@471 := @397 @1 +@481 := (hbind : @369) -> + (hF : @470) -> (hA : @443) -> (hne : @387) -> @390 (fun (ro : @389) => @396 (@471 @401 @373 @17)) +@491 := {A : @10} -> + {f : @57} -> + {fn : @72} -> + {args : @126} -> + {env : @323} -> {F : @298} -> {o : @300} -> (hB : @463) -> (hfn : @435) -> (hwt : @466) -> @481 +@492 := @458 @2 +@494 := @459 @2 @17 +@496 := (n : @57) -> @494 @128 +@497 := @122 @130 +@498 := @497 @356 +@507 := {f : @57} -> + {fn : @72} -> + {args : @126} -> + {env : @323} -> {F : @298} -> {o : @300} -> (hB : @496) -> (hfn : @435) -> (hwt : @498) -> @481 +@508 := @492 @61 +@510 := (n : @57) -> @494 @61 +@511 := @432 @61 +@512 := @334 @511 +@513 := @512 @348 +@514 := @467 @61 +@515 := @371 @514 +@516 := @515 @378 +@517 := @440 @61 +@519 := @517 @142 @130 +@521 := @471 (@400 @61) +@529 := (hF : @516) -> (hA : @519) -> (hne : @387) -> @390 (fun (ro : @389) => @396 (@521 @373 @17)) +@538 := {fn : @72} -> + {args : @126} -> + {env : @323} -> + {F : @298} -> {o : @300} -> (hB : @510) -> (hfn : @513) -> (hwt : @498) -> (hbind : @369) -> @529 +@539 := @508 @92 +@541 := @512 (@347 @92) +@542 := @355 @92 +@543 := @497 @542 +@545 := @360 (@361 @92) +@557 := {args : @126} -> + {env : @323} -> + {F : @298} -> + {o : @300} -> + (hB : @510) -> (hfn : @541) -> (hwt : @543) -> (hbind : @359 (@545 @128 @67) @368) -> @529 +@558 := @539 @56 +@559 := @219 @53 +@561 := @122 @559 @542 +@564 := @54 (@5 @136) @53 +@568 := @359 (@545 @564 @67) @368 +@571 := @54 (@5 @325) @53 +@592 := {env : @323} -> + {F : @298} -> + {o : @300} -> + (hB : @510) -> + (hfn : @541) -> + (hwt : @561) -> + (hbind : @568) -> + (hF : @516) -> + (hA : @517 @571 @130) -> + (hne : @387) -> @390 (fun (ro : @389) => @396 (@521 (@54 (@5 #12) @53) @17)) +@593 := @558 @70 +@594 := @233 @53 +@596 := @122 @594 @542 +@604 := @359 (@545 @559 @67) (@367 (@68 (@65 @218) @67)) +@607 := @54 (@5 @142) @53 +@626 := {F : @298} -> + {o : @300} -> + (hB : @510) -> + (hfn : @541) -> + (hwt : @596) -> + (hbind : @604) -> + (hF : @516) -> + (hA : @517 @607 @130) -> + (hne : @387) -> @390 (fun (ro : @389) => @396 (@521 (@54 (@5 @373) @53) @17)) +@627 := @593 @71 +@628 := @250 @542 +@636 := @359 (@545 @594 @67) (@367 (@68 (@65 @232) @67)) +@638 := @515 (@377 @71) +@640 := @517 @564 @130 +@641 := @392 @71 +@660 := {o : @300} -> + (hB : @510) -> + (hfn : @541) -> + (hwt : @628) -> + (hbind : @636) -> + (hF : @638) -> + (hA : @640) -> + (hne : @387) -> @390 (fun (ro : @389) => @391 (@641 @142 @17) (@521 (@54 (@5 @350) @53) @17)) +@661 := @627 @273 +@662 := @258 @542 +@670 := @359 (@545 @249 @67) (@367 (@68 (@65 @215) @67)) +@671 := @517 @559 +@672 := @272 @128 +@673 := @671 @672 +@674 := @272 @136 +@692 := (hB : @510) -> + (hfn : @541) -> + (hwt : @662) -> + (hbind : @670) -> + (hF : @638) -> + (hA : @673) -> + (hne : @301 @674 @306) -> @390 (fun (ro : @389) => @391 (@641 (@272 @325) @17) (@521 @571 @17)) +@693 := @661 @96 +@694 := @266 @542 +@702 := @359 (@545 @257 @67) (@367 (@68 (@65 @229) @67)) +@703 := @517 @594 +@704 := @272 @130 +@722 := (hfn : @541) -> + (hwt : @694) -> + (hbind : @702) -> + (hF : @638) -> + (hA : @703 @704) -> + (hne : @301 @672 @306) -> @390 (fun (ro : @389) => @391 (@641 (@272 @142) @17) (@521 @607 @17)) +@723 := Eq.refl.{1} +@726 := @693 (@723 @333 @511) +@727 := @270 @542 +@735 := @359 (@545 @265 @67) (@367 (@68 (@65 @244) @67)) +@736 := @517 @249 +@737 := @272 @132 +@753 := (hwt : @727) -> + (hbind : @735) -> + (hF : @638) -> + (hA : @736 @737) -> + (hne : @301 @704 @306) -> @390 (fun (ro : @389) => @391 (@641 @674 @17) (@521 @564 @17)) +@754 := @726 @269 +@756 := @545 @56 @67 +@759 := @359 @756 (@367 @70) +@760 := @517 @257 +@761 := @272 @12 +@776 := (hbind : @759) -> + (hF : @638) -> + (hA : @760 @761) -> + (hne : @301 @737 @306) -> @390 (fun (ro : @389) => @391 (@641 @672 @17) (@521 @559 @17)) +@779 := @754 (@723 @358 @756) +@780 := @517 @265 +@781 := @272 @14 +@795 := (hF : @638) -> + (hA : @780 @781) -> + (hne : @301 @761 @306) -> @390 (fun (ro : @389) => @391 (@641 @704 @17) (@521 @594 @17)) +@798 := @779 (@723 @370 @514) +@812 := (hA : @517 @56 @273) -> + (hne : @301 @781 @306) -> @390 (fun (ro : @389) => @391 (@641 @737 @17) (@521 @249 @17)) +@813 := @798 @297 +@824 := (hne : @301 @273 @306) -> @390 (fun (ro : @389) => @391 (@641 @761 @17) (@521 @257 @17)) +@825 := @813 @318 +@831 := @391 (@641 @781 @17) (@521 @265 @17) +@833 := @390 (fun (ro : @389) => @831) +@835 := @390 (fun (__e_ro : @389) => @831) +@839 := LexLeanPreservation.Rust.RepresentableL (@54 @18 @53) +@840 := (__e_hrep : @839) -> @835 +@841 := fun (__e_hrep : @839) => @825 +@842 := (s : @3) -> @840 +@843 := fun (s : @3) => @841 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R27/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R27/RustStd.lean new file mode 100644 index 000000000..33ead28d2 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R27/RustStd.lean @@ -0,0 +1,33 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0], types := [.string], result := (.pair (.option .int) (.option (.fixed .u32))), + body := (.build .pair (.pair (.option .int) (.option (.fixed .u32))) [(.prim (.parseDecimal .int) [(.var 0)]), (.prim (.parseDecimal (.fixed .u32)) [(.var 0)])]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .str }] (.fallible (.pair (.option .int) (.option (.fixed .u32)))) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))] (.call (.runtime .parseInt) [(.move (.generated .operand 1))] true))) (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.move (.generated .binding 0)))] (.call (.runtime (.parseFixed .u32)) [(.move (.generated .operand 2))] false)))))))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [], (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))] (.call (.runtime .parseInt) [(.move (.generated .operand 1))] true))) (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.move (.generated .binding 0)))] (.call (.runtime (.parseFixed .u32)) [(.move (.generated .operand 2))] false))))), [(0, .string, (some 0))], rfl, rfl, + (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .parseInt) [(.move (.generated .operand 1))] true)) (Corr.prim (ts := [.string]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 2)) none (.move (.generated .binding 0)))]) (tail := (.call (.runtime (.parseFixed .u32)) [(.move (.generated .operand 2))] false)) (Corr.prim (ts := [.string]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | _ + 1 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R28.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R28.lean similarity index 95% rename from examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R28.lean rename to examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R28.lean index abb8651df..288a8dd1c 100644 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R28.lean +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R28.lean @@ -18,7 +18,7 @@ set_option maxRecDepth 100000 set_option maxHeartbeats 0 set_option synthInstance.maxHeartbeats 0 set_option linter.unusedVariables false -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28 def __prog : _root_.LexLeanTarget.TargetSyntax.Program := { adts := [], functions := [ @@ -37,4 +37,4 @@ def denote (a : Int) (b : Int8) : _root_.LexLeanPreservation.Obs := theorem root (a : Int) (b : Int8) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.int a), (_root_.LexLeanTarget.TargetSyntax.Value.i8 b)] (_root_.LexLeanPreservation.Rel (__fits_0 a b) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.string) (Coverage.Prims.formats a b))) := _root_.LexLeanPreservation.run_of_funRel (__rel_0 a b) -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28 +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28 diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R28/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R28/Compose/RustStd.lex.tex new file mode 100644 index 000000000..80f4dc203 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R28/Compose/RustStd.lex.tex @@ -0,0 +1,488 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.Compose.RustStd.root : @983 := @984 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.RustStd.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.RustStd.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.RustStd.flags +@3 := Int +@4 := #2 +@5 := LexLeanTarget.TargetSyntax.Value.int +@6 := @5 @4 +@7 := LexLeanTarget.TargetSyntax.Ty.int +@8 := LexLeanTarget.TargetSyntax.Program +@9 := LexLeanPreservation.Rust.RCrate +@10 := LexLeanPreservation.Rust.Flags +@11 := LexLeanPreservation.Rust.WT +@12 := #3 +@14 := @11 @12 @4 +@15 := #1 +@16 := @14 @15 +@17 := #0 +@18 := @5 @17 +@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 +@26 := LexLeanPreservation.Rust.wt_int @0 +@27 := @11 @0 +@29 := @27 @4 @15 +@34 := {c : @9} -> {A : @10} -> (n : @3) -> @29 @18 @7 +@35 := @26 @1 +@36 := @27 @1 +@37 := @36 @15 +@41 := {A : @10} -> (n : @3) -> @37 @18 @7 +@42 := @35 @2 +@43 := @36 @2 +@46 := (n : @3) -> @43 @18 @7 +@47 := @42 @4 +@49 := @43 @6 @7 +@50 := Int8 +@51 := LexLeanTarget.TargetSyntax.Value.i8 +@52 := @51 @15 +@55 := LexLeanTarget.TargetSyntax.Ty.fixed LexLeanTarget.TargetSyntax.IntKind.i8 +@56 := @51 @17 +@62 := {p : @8} -> {c : @9} -> {A : @10} -> (x : @50) -> @16 @56 @55 +@64 := LexLeanPreservation.Rust.wt_i8 @0 +@69 := {c : @9} -> {A : @10} -> (x : @50) -> @29 @56 @55 +@70 := @64 @1 +@74 := {A : @10} -> (x : @50) -> @37 @56 @55 +@75 := @70 @2 +@78 := (x : @50) -> @43 @56 @55 +@79 := @75 @15 +@81 := @43 @52 @55 +@82 := LexLeanTarget.TargetSyntax.Value +@83 := List.nil.{0} +@84 := List.cons.{0} +@85 := @83 @82 +@86 := @84 @82 +@88 := @86 @52 @85 +@90 := @86 @6 @88 +@91 := Nat +@94 := Prod.{0, 0} @91 @82 +@95 := 1 +@98 := Prod.mk.{0, 0} @91 @82 +@99 := @98 @95 +@100 := @99 @52 +@101 := 0 +@102 := @98 @101 +@103 := @102 @6 +@104 := @83 @94 +@105 := @84 @94 +@107 := @105 @103 @104 +@109 := @105 @100 @107 +@110 := Bool.false +@111 := LexLeanTarget.TargetSyntax.Function +@112 := LexLeanTarget.TargetSyntax.Program.functions +@113 := @112 @0 +@114 := LexLeanTarget.TargetSyntax.Ty +@115 := @83 @91 +@116 := @83 @114 +@117 := LexLeanTarget.TargetSyntax.Ty.unit +@118 := LexLeanTarget.TargetSyntax.Value.unit +@121 := LexLeanTarget.TargetSyntax.Expr.value @117 @118 +@126 := LexLeanTarget.TargetSyntax.Function.mk @115 @116 @117 @121 +@131 := List.getD.{0} @111 @113 @101 @126 +@135 := fun (__e_n : @91) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.RustStd.root @17 @101 +@136 := LexLeanPreservation.Rust.WTL +@144 := {p : @8} -> {c : @9} -> {A : @10} -> @136 @4 @15 @17 @85 @116 +@146 := LexLeanPreservation.Rust.wtl_nil @0 +@147 := @136 @0 +@153 := {c : @9} -> {A : @10} -> @147 @15 @17 @85 @116 +@154 := @146 @1 +@155 := @147 @1 +@159 := {A : @10} -> @155 @17 @85 @116 +@160 := @154 @2 +@161 := @155 @2 +@162 := @161 @85 +@163 := @162 @116 +@164 := List.{0} +@165 := @164 @82 +@166 := @164 @114 +@167 := #6 +@168 := @11 @167 +@169 := #5 +@170 := @168 @169 +@171 := #4 +@174 := @170 @171 @12 @4 +@175 := #7 +@180 := @136 @175 @167 @169 @4 @15 +@181 := #8 +@184 := @136 @181 @175 @167 +@186 := @86 @169 @12 +@187 := @184 @186 +@188 := @84 @114 +@190 := @188 @171 @4 +@200 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {v : @82} -> {t : @114} -> {vs : @165} -> {ts : @166} -> (h : @174) -> (hs : @180) -> @187 @190 +@202 := LexLeanPreservation.Rust.wtl_cons @0 +@222 := {c : @9} -> + {A : @10} -> + {v : @82} -> + {t : @114} -> + {vs : @165} -> + {ts : @166} -> + (h : @27 @169 @171 @12 @4) -> (hs : @147 @167 @169 @4 @15) -> @147 @175 @167 @186 @190 +@223 := @202 @1 +@239 := {A : @10} -> + {v : @82} -> + {t : @114} -> + {vs : @165} -> + {ts : @166} -> (h : @36 @171 @12 @4) -> (hs : @155 @169 @4 @15) -> @155 @167 @186 @190 +@240 := @223 @2 +@242 := @43 @12 @4 +@244 := @161 @4 @15 +@252 := {v : @82} -> + {t : @114} -> {vs : @165} -> {ts : @166} -> (h : @242) -> (hs : @244) -> @161 @186 @190 +@253 := @240 @52 +@254 := @51 @171 +@256 := @43 @254 @4 +@257 := @51 @167 +@258 := @86 @257 +@266 := {t : @114} -> + {vs : @165} -> {ts : @166} -> (h : @256) -> (hs : @244) -> @161 (@258 @12) @190 +@267 := @253 @55 +@268 := @51 @12 +@270 := @43 @268 @55 +@271 := @51 @169 +@272 := @86 @271 +@274 := @161 (@272 @12) +@275 := @188 @55 +@276 := @275 @4 +@281 := {vs : @165} -> {ts : @166} -> (h : @270) -> (hs : @244) -> @274 @276 +@282 := @267 @85 +@283 := @51 @4 +@285 := @43 @283 @55 +@286 := @162 @15 +@288 := @86 @254 @85 +@293 := {ts : @166} -> (h : @285) -> (hs : @286) -> @161 @288 @276 +@294 := @282 @116 +@296 := @86 @268 @85 +@297 := @161 @296 +@298 := @275 @116 +@301 := (h : @81) -> (hs : @163) -> @297 @298 +@302 := @294 @79 +@304 := @86 @283 @85 +@306 := @161 @304 @298 +@307 := (hs : @163) -> @306 +@308 := @302 @160 +@310 := @161 @88 @298 +@311 := @240 @6 +@312 := @5 @169 +@314 := @43 @312 @4 +@315 := @5 @175 +@316 := @86 @315 +@324 := {t : @114} -> + {vs : @165} -> {ts : @166} -> (h : @314) -> (hs : @244) -> @161 (@316 @12) @190 +@325 := @311 @7 +@326 := @5 @171 +@328 := @43 @326 @7 +@329 := @5 @167 +@330 := @86 @329 +@332 := @161 (@330 @12) +@333 := @188 @7 +@334 := @333 @4 +@339 := {vs : @165} -> {ts : @166} -> (h : @328) -> (hs : @244) -> @332 @334 +@340 := @325 @88 +@341 := @5 @12 +@343 := @43 @341 @7 +@344 := @297 @15 +@346 := @86 @312 @288 +@347 := @161 @346 +@351 := {ts : @166} -> (h : @343) -> (hs : @344) -> @347 @334 +@352 := @340 @298 +@354 := @86 @326 @296 +@355 := @161 @354 +@356 := @333 @298 +@359 := (h : @49) -> (hs : @306) -> @355 @356 +@360 := @352 @47 +@362 := @86 @341 @304 +@363 := @161 @362 +@365 := (hs : @310) -> @363 @356 +@366 := @360 @308 +@367 := @161 @90 +@368 := @367 @356 +@369 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.denote +@371 := @369 @4 @15 +@372 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.__fits_0 +@374 := @372 @4 @15 +@377 := Coverage.Prims.formats @4 @15 +@378 := String +@379 := LexLeanTarget.TargetSyntax.Value.string +@385 := LexLeanPreservation.encPair @378 @378 @379 @379 @377 +@388 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.root @4 @15 +@389 := Bool +@390 := Ne.{1} +@391 := LexLeanPreservation.Obs +@392 := @390 @391 +@393 := LexLeanPreservation.Rel +@396 := @392 (@393 @15 @17) +@397 := LexLeanPreservation.Obs.stuck +@400 := (f : @389) -> (v : @82) -> @396 @397 +@402 := LexLeanPreservation.Rust.rel_ne_stuck @374 +@409 := (v : @82) -> @392 (@393 (@372 @12 @4) @17) @397 +@410 := @402 @385 +@414 := @392 (@393 @374 @385) @397 +@415 := @164 @94 +@416 := LexLeanPreservation.Rust.FunSem +@417 := #9 +@423 := (n : @91) -> @416 @417 @181 @175 @17 @167 +@424 := Eq.{1} +@425 := Option.{0} +@426 := @425 @111 +@427 := @424 @426 +@434 := LexLeanRuntime.index (@164 @111) @111 (LexLeanRuntime.instIndexableList @111) +@438 := @427 (@434 (@112 @417) @167) +@439 := Option.some.{0} +@440 := @439 @111 +@441 := @440 @169 +@442 := @438 @441 +@443 := #10 +@447 := @136 @443 @417 @181 @169 +@448 := LexLeanTarget.TargetSyntax.Function.types +@449 := @448 @167 +@450 := @447 @449 +@451 := @425 @415 +@452 := @424 @451 +@453 := LexLeanTarget.TargetSemantics.bindAll +@454 := LexLeanTarget.TargetSyntax.Function.parameters +@459 := @452 (@453 (@454 @175) @167 @104) +@460 := @439 @415 +@461 := @460 @169 +@462 := @459 @461 +@463 := @425 @389 +@464 := @424 @463 +@465 := LexLeanPreservation.Rust.fnFallible +@466 := #11 +@469 := @464 (@465 @466 @417) +@470 := @439 @389 +@471 := @470 @169 +@472 := @469 @471 +@473 := LexLeanPreservation.RunConv +@474 := #13 +@478 := @473 @474 @443 @181 @169 +@480 := @392 @167 @397 +@481 := Exists.{1} +@482 := LexLeanPreservation.Rust.ROut +@483 := @481 @482 +@484 := And +@485 := LexLeanPreservation.Rust.RealizesFn +@489 := @484 (@485 @417 @181 @17) +@490 := LexLeanPreservation.Rust.RCI +@492 := @490 #15 +@493 := LexLeanPreservation.Rust.fnIdent +@494 := @493 @474 +@501 := (hne : @480) -> @483 (fun (ro : @482) => @489 (@492 @494 @466 @17)) +@516 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {f : @91} -> + {fn : @111} -> + {args : @165} -> + {env : @415} -> + {F : @389} -> + {o : @391} -> + (hB : @423) -> + (hfn : @442) -> (hwt : @450) -> (hbind : @462) -> (hF : @472) -> (hA : @478) -> @501 +@518 := LexLeanPreservation.Rust.compose @0 +@519 := @416 @0 +@524 := (n : @91) -> @519 @181 @175 @17 @167 +@525 := @434 @113 +@528 := @427 (@525 @167) @441 +@532 := @147 @417 @181 @169 @449 +@533 := @473 @0 +@536 := @533 @443 @181 @169 +@550 := {c : @9} -> + {A : @10} -> + {f : @91} -> + {fn : @111} -> + {args : @165} -> + {env : @415} -> + {F : @389} -> + {o : @391} -> + (hB : @524) -> + (hfn : @528) -> (hwt : @532) -> (hbind : @462) -> (hF : @472) -> (hA : @536) -> @501 +@551 := @518 @1 +@552 := @519 @1 +@556 := (n : @91) -> @552 @175 @17 @167 +@559 := @155 @181 @169 @449 +@560 := @465 @1 +@563 := @464 (@560 @417) @471 +@564 := @490 @1 +@574 := (hbind : @462) -> + (hF : @563) -> (hA : @536) -> (hne : @480) -> @483 (fun (ro : @482) => @489 (@564 @494 @466 @17)) +@584 := {A : @10} -> + {f : @91} -> + {fn : @111} -> + {args : @165} -> + {env : @415} -> {F : @389} -> {o : @391} -> (hB : @556) -> (hfn : @528) -> (hwt : @559) -> @574 +@585 := @551 @2 +@587 := @552 @2 @17 +@589 := (n : @91) -> @587 @167 +@590 := @161 @169 +@591 := @590 @449 +@600 := {f : @91} -> + {fn : @111} -> + {args : @165} -> + {env : @415} -> {F : @389} -> {o : @391} -> (hB : @589) -> (hfn : @528) -> (hwt : @591) -> @574 +@601 := @585 @101 +@603 := (n : @91) -> @587 @101 +@604 := @525 @101 +@605 := @427 @604 +@606 := @605 @441 +@607 := @560 @101 +@608 := @464 @607 +@609 := @608 @471 +@610 := @533 @101 +@612 := @610 @181 @169 +@614 := @564 (@493 @101) +@622 := (hF : @609) -> (hA : @612) -> (hne : @480) -> @483 (fun (ro : @482) => @489 (@614 @466 @17)) +@631 := {fn : @111} -> + {args : @165} -> + {env : @415} -> + {F : @389} -> {o : @391} -> (hB : @603) -> (hfn : @606) -> (hwt : @591) -> (hbind : @462) -> @622 +@632 := @601 @131 +@634 := @605 (@440 @131) +@635 := @448 @131 +@636 := @590 @635 +@638 := @453 (@454 @131) +@650 := {args : @165} -> + {env : @415} -> + {F : @389} -> + {o : @391} -> + (hB : @603) -> (hfn : @634) -> (hwt : @636) -> (hbind : @452 (@638 @167 @104) @461) -> @622 +@651 := @632 @90 +@653 := @316 (@258 @85) +@655 := @161 @653 @635 +@661 := @86 (@5 @181) (@86 (@51 @175) @85) +@665 := @452 (@638 @661 @104) @461 +@671 := @86 (@5 @443) (@86 (@51 @417) @85) +@673 := @610 @671 @169 +@675 := @86 (@5 @474) +@676 := #12 +@695 := {env : @415} -> + {F : @389} -> + {o : @391} -> + (hB : @603) -> + (hfn : @634) -> + (hwt : @655) -> + (hbind : @665) -> + (hF : @609) -> + (hA : @673) -> + (hne : @480) -> @483 (fun (ro : @482) => @489 (@614 (@675 (@86 (@51 @676) @85)) @17)) +@696 := @651 @109 +@698 := @330 (@272 @85) +@700 := @161 @698 @635 +@711 := @452 (@638 @653 @104) (@460 (@105 (@99 @257) (@105 (@102 @315) @104))) +@717 := @86 (@5 @417) (@86 (@51 @181) @85) +@739 := {F : @389} -> + {o : @391} -> + (hB : @603) -> + (hfn : @634) -> + (hwt : @700) -> + (hbind : @711) -> + (hF : @609) -> + (hA : @610 @717 @169) -> + (hne : @480) -> @483 (fun (ro : @482) => @489 (@614 (@86 (@5 @676) (@86 (@51 @466) @85)) @17)) +@740 := @696 @110 +@741 := @347 @635 +@752 := @452 (@638 @698 @104) (@460 (@105 (@99 @271) (@105 (@102 @329) @104))) +@754 := @608 (@470 @110) +@756 := @610 @661 @169 +@757 := @485 @110 +@779 := {o : @391} -> + (hB : @603) -> + (hfn : @634) -> + (hwt : @741) -> + (hbind : @752) -> + (hF : @754) -> + (hA : @756) -> + (hne : @480) -> + @483 (fun (ro : @482) => @484 (@757 @181 @17) (@614 (@86 (@5 @466) (@86 (@51 @443) @85)) @17)) +@780 := @740 @371 +@781 := @355 @635 +@792 := @452 (@638 @346 @104) (@460 (@105 (@99 @254) (@105 (@102 @312) @104))) +@793 := @610 @653 +@795 := @369 @175 @167 +@796 := @793 @795 +@798 := @369 @181 @175 +@817 := (hB : @603) -> + (hfn : @634) -> + (hwt : @781) -> + (hbind : @792) -> + (hF : @754) -> + (hA : @796) -> + (hne : @392 @798 @397) -> + @483 (fun (ro : @482) => @484 (@757 (@369 @443 @417) @17) (@614 @671 @17)) +@818 := @780 @135 +@819 := @363 @635 +@830 := @452 (@638 @354 @104) (@460 (@105 (@99 @268) (@105 (@102 @326) @104))) +@831 := @610 @698 +@833 := @369 @167 @169 +@852 := (hfn : @634) -> + (hwt : @819) -> + (hbind : @830) -> + (hF : @754) -> + (hA : @831 @833) -> + (hne : @392 @795 @397) -> + @483 (fun (ro : @482) => @484 (@757 (@369 @417 @181) @17) (@614 @717 @17)) +@853 := Eq.refl.{1} +@856 := @818 (@853 @426 @604) +@857 := @367 @635 +@868 := @452 (@638 @362 @104) (@460 (@105 (@99 @283) (@105 (@102 @341) @104))) +@869 := @610 @346 +@871 := @369 @169 @171 +@887 := (hwt : @857) -> + (hbind : @868) -> + (hF : @754) -> + (hA : @869 @871) -> + (hne : @392 @833 @397) -> @483 (fun (ro : @482) => @484 (@757 @798 @17) (@614 @661 @17)) +@888 := @856 @366 +@890 := @638 @90 @104 +@893 := @452 @890 (@460 @109) +@894 := @610 @354 +@896 := @369 @171 @12 +@911 := (hbind : @893) -> + (hF : @754) -> + (hA : @894 @896) -> + (hne : @392 @871 @397) -> @483 (fun (ro : @482) => @484 (@757 @795 @17) (@614 @653 @17)) +@914 := @888 (@853 @451 @890) +@915 := @610 @362 +@917 := @369 @12 @4 +@931 := (hF : @754) -> + (hA : @915 @917) -> + (hne : @392 @896 @397) -> @483 (fun (ro : @482) => @484 (@757 @833 @17) (@614 @698 @17)) +@934 := @914 (@853 @463 @607) +@948 := (hA : @610 @90 @371) -> + (hne : @392 @917 @397) -> @483 (fun (ro : @482) => @484 (@757 @871 @17) (@614 @346 @17)) +@949 := @934 @388 +@960 := (hne : @392 @371 @397) -> @483 (fun (ro : @482) => @484 (@757 @896 @17) (@614 @354 @17)) +@961 := @949 @410 +@967 := @484 (@757 @917 @17) (@614 @362 @17) +@969 := @483 (fun (ro : @482) => @967) +@971 := @483 (fun (__e_ro : @482) => @967) +@972 := LexLeanPreservation.Rust.RepresentableL +@973 := @5 @15 +@975 := @86 @56 @85 +@978 := @972 (@86 @973 @975) +@979 := (__e_hrep : @978) -> @971 +@980 := fun (__e_hrep : @978) => @961 +@981 := (b : @50) -> @979 +@982 := fun (b : @50) => @980 +@983 := (a : @3) -> @981 +@984 := fun (a : @3) => @982 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R28/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R28/RustStd.lean new file mode 100644 index 000000000..0ad5b17f3 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R28/RustStd.lean @@ -0,0 +1,33 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1], types := [.int, (.fixed .i8)], result := (.pair .string .string), + body := (.build .pair (.pair .string .string) [(.prim .formatDecimal [(.var 0)]), (.prim .formatDecimal [(.var 1)])]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .int }, { pattern := (.bind (.generated .binding 1)), type := (.fixed .i8) }] (.pair .str .str) (.mk [] (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0)))] (.call (.runtime .formatInt) [(.move (.generated .operand 1))] false))) (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))] (.call (.runtime (.formatFixed .i8)) [(.move (.generated .operand 2))] false))))))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [], (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0)))] (.call (.runtime .formatInt) [(.move (.generated .operand 1))] false))) (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))] (.call (.runtime (.formatFixed .i8)) [(.move (.generated .operand 2))] false)))), [(1, (.fixed .i8), (some 1)), (0, .int, (some 0))], rfl, rfl, + (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0)))]) (tail := (.call (.runtime .formatInt) [(.move (.generated .operand 1))] false)) (Corr.prim (ts := [.int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.formatFixed .i8)) [(.move (.generated .operand 2))] false)) (Corr.prim (ts := [(.fixed .i8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | _ + 1 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R29.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R29.lean similarity index 98% rename from examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R29.lean rename to examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R29.lean index 12e536513..8e0568f7d 100644 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R29.lean +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R29.lean @@ -18,7 +18,7 @@ set_option maxRecDepth 100000 set_option maxHeartbeats 0 set_option synthInstance.maxHeartbeats 0 set_option linter.unusedVariables false -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29 def __prog : _root_.LexLeanTarget.TargetSyntax.Program := { adts := [], functions := [ @@ -37,4 +37,4 @@ def denote (s : String) (d : String) : _root_.LexLeanPreservation.Obs := theorem root (s : String) (d : String) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.string s), (_root_.LexLeanTarget.TargetSyntax.Value.string d)] (_root_.LexLeanPreservation.Rel (__fits_0 s d) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bytes (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.string) (_root_.LexLeanPreservation.encPair _root_.LexLeanPreservation.encOrdering (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.string)) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool)))))) (Coverage.Prims.text s d))) := _root_.LexLeanPreservation.run_of_funRel (__rel_0 s d) -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29 +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29 diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R29/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R29/Compose/RustStd.lex.tex new file mode 100644 index 000000000..29fcd092f --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R29/Compose/RustStd.lex.tex @@ -0,0 +1,490 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.Compose.RustStd.root : @966 := @967 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.RustStd.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.RustStd.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.RustStd.flags +@3 := String +@4 := #2 +@5 := LexLeanTarget.TargetSyntax.Value.string +@6 := @5 @4 +@7 := LexLeanTarget.TargetSyntax.Ty.string +@8 := LexLeanTarget.TargetSyntax.Program +@9 := LexLeanPreservation.Rust.RCrate +@10 := LexLeanPreservation.Rust.Flags +@11 := LexLeanPreservation.Rust.WT +@12 := #3 +@14 := @11 @12 @4 +@15 := #1 +@16 := @14 @15 +@17 := #0 +@18 := @5 @17 +@24 := {p : @8} -> {c : @9} -> {A : @10} -> (s : @3) -> @16 @18 @7 +@26 := LexLeanPreservation.Rust.wt_string @0 +@27 := @11 @0 +@34 := {c : @9} -> {A : @10} -> (s : @3) -> @27 @4 @15 @18 @7 +@35 := @26 @1 +@36 := @27 @1 +@41 := {A : @10} -> (s : @3) -> @36 @15 @18 @7 +@42 := @35 @2 +@43 := @36 @2 +@46 := (s : @3) -> @43 @18 @7 +@47 := @42 @4 +@49 := @43 @6 @7 +@50 := @5 @15 +@51 := @42 @15 +@53 := @43 @50 @7 +@54 := LexLeanTarget.TargetSyntax.Value +@55 := List.nil.{0} +@56 := List.cons.{0} +@57 := @55 @54 +@58 := @56 @54 +@59 := @58 @50 +@60 := @59 @57 +@61 := @58 @6 +@62 := @61 @60 +@63 := Nat +@64 := Prod.{0, 0} +@65 := @64 @63 +@66 := @65 @54 +@67 := 1 +@70 := Prod.mk.{0, 0} @63 @54 +@71 := @70 @67 +@72 := @71 @50 +@73 := 0 +@74 := @70 @73 +@75 := @74 @6 +@76 := @55 @66 +@77 := @56 @66 +@79 := @77 @75 @76 +@81 := @77 @72 @79 +@82 := Bool.false +@83 := LexLeanTarget.TargetSyntax.Function +@84 := LexLeanTarget.TargetSyntax.Program.functions +@85 := @84 @0 +@86 := LexLeanTarget.TargetSyntax.Ty +@87 := @55 @63 +@88 := @55 @86 +@89 := LexLeanTarget.TargetSyntax.Ty.unit +@90 := LexLeanTarget.TargetSyntax.Value.unit +@93 := LexLeanTarget.TargetSyntax.Expr.value @89 @90 +@98 := LexLeanTarget.TargetSyntax.Function.mk @87 @88 @89 @93 +@103 := List.getD.{0} @83 @85 @73 @98 +@107 := fun (__e_n : @63) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.RustStd.root @17 @73 +@108 := LexLeanPreservation.Rust.WTL +@116 := {p : @8} -> {c : @9} -> {A : @10} -> @108 @4 @15 @17 @57 @88 +@118 := LexLeanPreservation.Rust.wtl_nil @0 +@119 := @108 @0 +@125 := {c : @9} -> {A : @10} -> @119 @15 @17 @57 @88 +@126 := @118 @1 +@127 := @119 @1 +@131 := {A : @10} -> @127 @17 @57 @88 +@132 := @126 @2 +@133 := @127 @2 +@134 := @133 @57 +@135 := @134 @88 +@136 := List.{0} +@137 := @136 @54 +@138 := @136 @86 +@139 := #6 +@140 := @11 @139 +@141 := #5 +@142 := @140 @141 +@143 := #4 +@146 := @142 @143 @12 @4 +@147 := #7 +@152 := @108 @147 @139 @141 @4 @15 +@153 := #8 +@156 := @108 @153 @147 @139 +@158 := @58 @141 @12 +@159 := @156 @158 +@160 := @56 @86 +@162 := @160 @143 @4 +@172 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {v : @54} -> {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @146) -> (hs : @152) -> @159 @162 +@174 := LexLeanPreservation.Rust.wtl_cons @0 +@194 := {c : @9} -> + {A : @10} -> + {v : @54} -> + {t : @86} -> + {vs : @137} -> + {ts : @138} -> + (h : @27 @141 @143 @12 @4) -> (hs : @119 @139 @141 @4 @15) -> @119 @147 @139 @158 @162 +@195 := @174 @1 +@211 := {A : @10} -> + {v : @54} -> + {t : @86} -> + {vs : @137} -> + {ts : @138} -> (h : @36 @143 @12 @4) -> (hs : @127 @141 @4 @15) -> @127 @139 @158 @162 +@212 := @195 @2 +@214 := @43 @12 @4 +@216 := @133 @4 @15 +@224 := {v : @54} -> + {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @214) -> (hs : @216) -> @133 @158 @162 +@225 := @212 @50 +@226 := @5 @143 +@227 := @43 @226 +@228 := @227 @4 +@229 := @5 @139 +@230 := @58 @229 +@232 := @133 (@230 @12) +@238 := {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @228) -> (hs : @216) -> @232 @162 +@239 := @225 @7 +@240 := @5 @12 +@242 := @43 @240 @7 +@243 := @5 @141 +@244 := @58 @243 +@246 := @133 (@244 @12) +@247 := @160 @7 +@248 := @247 @4 +@253 := {vs : @137} -> {ts : @138} -> (h : @242) -> (hs : @216) -> @246 @248 +@254 := @239 @57 +@255 := @134 @15 +@256 := @58 @226 +@257 := @256 @57 +@262 := {ts : @138} -> (h : @49) -> (hs : @255) -> @133 @257 @248 +@263 := @254 @88 +@264 := @58 @240 +@265 := @264 @57 +@266 := @133 @265 +@267 := @247 @88 +@270 := (h : @53) -> (hs : @135) -> @266 @267 +@271 := @263 @51 +@272 := @61 @57 +@274 := @133 @272 @267 +@275 := (hs : @135) -> @274 +@276 := @271 @132 +@278 := @133 @60 @267 +@279 := @212 @6 +@281 := @43 @243 @4 +@282 := @5 @147 +@283 := @58 @282 +@291 := {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @281) -> (hs : @216) -> @133 (@283 @12) @162 +@292 := @279 @7 +@298 := {vs : @137} -> {ts : @138} -> (h : @227 @7) -> (hs : @216) -> @232 @248 +@299 := @292 @60 +@300 := @266 @15 +@301 := @244 @257 +@302 := @133 @301 +@306 := {ts : @138} -> (h : @242) -> (hs : @300) -> @302 @248 +@307 := @299 @267 +@308 := @256 @265 +@309 := @133 @308 +@310 := @247 @267 +@313 := (h : @49) -> (hs : @274) -> @309 @310 +@314 := @307 @47 +@315 := @264 @272 +@316 := @133 @315 +@318 := (hs : @278) -> @316 @310 +@319 := @314 @276 +@320 := @133 @62 +@321 := @320 @310 +@322 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.denote +@324 := @322 @4 @15 +@325 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.__fits_0 +@327 := @325 @4 @15 +@330 := Coverage.Prims.text @4 @15 +@331 := ByteArray +@332 := Option.{0} +@333 := @332 @3 +@334 := Ordering +@335 := @136 @3 +@336 := @332 @335 +@337 := Bool +@338 := @65 @337 +@340 := @64 @3 @338 +@342 := @64 @336 @340 +@344 := @64 @334 @342 +@346 := @64 @333 @344 +@347 := LexLeanTarget.TargetSyntax.Value.bytes +@348 := LexLeanPreservation.encOption +@350 := @348 @3 @5 +@351 := LexLeanPreservation.encOrdering +@354 := LexLeanPreservation.encList @3 @5 +@356 := @348 @335 @354 +@357 := LexLeanTarget.TargetSyntax.Value.nat +@358 := LexLeanTarget.TargetSyntax.Value.bool +@359 := LexLeanPreservation.encPair +@363 := @359 @63 @337 @357 @358 +@367 := @359 @3 @338 @5 @363 +@371 := @359 @336 @340 @356 @367 +@375 := @359 @334 @342 @351 @371 +@379 := @359 @333 @344 @350 @375 +@384 := @359 @331 @346 @347 @379 @330 +@387 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.root @4 @15 +@388 := Ne.{1} +@389 := LexLeanPreservation.Obs +@390 := @388 @389 +@391 := LexLeanPreservation.Rel +@394 := @390 (@391 @15 @17) +@395 := LexLeanPreservation.Obs.stuck +@398 := (f : @337) -> (v : @54) -> @394 @395 +@400 := LexLeanPreservation.Rust.rel_ne_stuck @327 +@407 := (v : @54) -> @390 (@391 (@325 @12 @4) @17) @395 +@408 := @400 @384 +@412 := @390 (@391 @327 @384) @395 +@413 := @136 @66 +@414 := LexLeanPreservation.Rust.FunSem +@415 := #9 +@421 := (n : @63) -> @414 @415 @153 @147 @17 @139 +@422 := Eq.{1} +@423 := @332 @83 +@424 := @422 @423 +@431 := LexLeanRuntime.index (@136 @83) @83 (LexLeanRuntime.instIndexableList @83) +@435 := @424 (@431 (@84 @415) @139) +@436 := Option.some.{0} +@437 := @436 @83 +@438 := @437 @141 +@439 := @435 @438 +@440 := #10 +@444 := @108 @440 @415 @153 @141 +@445 := LexLeanTarget.TargetSyntax.Function.types +@446 := @445 @139 +@447 := @444 @446 +@448 := @332 @413 +@449 := @422 @448 +@450 := LexLeanTarget.TargetSemantics.bindAll +@451 := LexLeanTarget.TargetSyntax.Function.parameters +@456 := @449 (@450 (@451 @147) @139 @76) +@457 := @436 @413 +@458 := @457 @141 +@459 := @456 @458 +@460 := @332 @337 +@461 := @422 @460 +@462 := LexLeanPreservation.Rust.fnFallible +@463 := #11 +@466 := @461 (@462 @463 @415) +@467 := @436 @337 +@468 := @467 @141 +@469 := @466 @468 +@470 := LexLeanPreservation.RunConv +@471 := #13 +@475 := @470 @471 @440 @153 @141 +@477 := @390 @139 @395 +@478 := Exists.{1} +@479 := LexLeanPreservation.Rust.ROut +@480 := @478 @479 +@481 := And +@482 := LexLeanPreservation.Rust.RealizesFn +@486 := @481 (@482 @415 @153 @17) +@487 := LexLeanPreservation.Rust.RCI +@489 := @487 #15 +@490 := LexLeanPreservation.Rust.fnIdent +@491 := @490 @471 +@498 := (hne : @477) -> @480 (fun (ro : @479) => @486 (@489 @491 @463 @17)) +@513 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {f : @63} -> + {fn : @83} -> + {args : @137} -> + {env : @413} -> + {F : @337} -> + {o : @389} -> + (hB : @421) -> + (hfn : @439) -> (hwt : @447) -> (hbind : @459) -> (hF : @469) -> (hA : @475) -> @498 +@515 := LexLeanPreservation.Rust.compose @0 +@516 := @414 @0 +@521 := (n : @63) -> @516 @153 @147 @17 @139 +@522 := @431 @85 +@525 := @424 (@522 @139) @438 +@529 := @119 @415 @153 @141 @446 +@530 := @470 @0 +@533 := @530 @440 @153 @141 +@547 := {c : @9} -> + {A : @10} -> + {f : @63} -> + {fn : @83} -> + {args : @137} -> + {env : @413} -> + {F : @337} -> + {o : @389} -> + (hB : @521) -> + (hfn : @525) -> (hwt : @529) -> (hbind : @459) -> (hF : @469) -> (hA : @533) -> @498 +@548 := @515 @1 +@549 := @516 @1 +@553 := (n : @63) -> @549 @147 @17 @139 +@556 := @127 @153 @141 @446 +@557 := @462 @1 +@560 := @461 (@557 @415) @468 +@561 := @487 @1 +@571 := (hbind : @459) -> + (hF : @560) -> (hA : @533) -> (hne : @477) -> @480 (fun (ro : @479) => @486 (@561 @491 @463 @17)) +@581 := {A : @10} -> + {f : @63} -> + {fn : @83} -> + {args : @137} -> + {env : @413} -> {F : @337} -> {o : @389} -> (hB : @553) -> (hfn : @525) -> (hwt : @556) -> @571 +@582 := @548 @2 +@584 := @549 @2 @17 +@586 := (n : @63) -> @584 @139 +@587 := @133 @141 +@588 := @587 @446 +@597 := {f : @63} -> + {fn : @83} -> + {args : @137} -> + {env : @413} -> {F : @337} -> {o : @389} -> (hB : @586) -> (hfn : @525) -> (hwt : @588) -> @571 +@598 := @582 @73 +@600 := (n : @63) -> @584 @73 +@601 := @522 @73 +@602 := @424 @601 +@603 := @602 @438 +@604 := @557 @73 +@605 := @461 @604 +@606 := @605 @468 +@607 := @530 @73 +@609 := @607 @153 @141 +@611 := @561 (@490 @73) +@619 := (hF : @606) -> (hA : @609) -> (hne : @477) -> @480 (fun (ro : @479) => @486 (@611 @463 @17)) +@628 := {fn : @83} -> + {args : @137} -> + {env : @413} -> + {F : @337} -> {o : @389} -> (hB : @600) -> (hfn : @603) -> (hwt : @588) -> (hbind : @459) -> @619 +@629 := @598 @103 +@631 := @602 (@437 @103) +@632 := @445 @103 +@633 := @587 @632 +@635 := @450 (@451 @103) +@647 := {args : @137} -> + {env : @413} -> + {F : @337} -> + {o : @389} -> + (hB : @600) -> (hfn : @631) -> (hwt : @633) -> (hbind : @449 (@635 @139 @76) @458) -> @619 +@648 := @629 @62 +@650 := @283 (@230 @57) +@652 := @133 @650 @632 +@654 := @58 (@5 @153) +@656 := @654 (@283 @57) +@660 := @449 (@635 @656 @76) @458 +@662 := @58 (@5 @440) +@664 := @58 (@5 @415) +@666 := @662 (@664 @57) +@668 := @607 @666 @141 +@670 := @58 (@5 @471) +@673 := @58 (@5 #12) +@690 := {env : @413} -> + {F : @337} -> + {o : @389} -> + (hB : @600) -> + (hfn : @631) -> + (hwt : @652) -> + (hbind : @660) -> + (hF : @606) -> + (hA : @668) -> (hne : @477) -> @480 (fun (ro : @479) => @486 (@611 (@670 (@673 @57)) @17)) +@691 := @648 @81 +@693 := @230 (@244 @57) +@695 := @133 @693 @632 +@706 := @449 (@635 @650 @76) (@457 (@77 (@71 @229) (@77 (@74 @282) @76))) +@708 := @664 (@654 @57) +@710 := @607 @708 @141 +@712 := @58 (@5 @463) +@728 := {F : @337} -> + {o : @389} -> + (hB : @600) -> + (hfn : @631) -> + (hwt : @695) -> + (hbind : @706) -> + (hF : @606) -> + (hA : @710) -> (hne : @477) -> @480 (fun (ro : @479) => @486 (@611 (@673 (@712 @57)) @17)) +@729 := @691 @82 +@730 := @302 @632 +@741 := @449 (@635 @693 @76) (@457 (@77 (@71 @243) (@77 (@74 @229) @76))) +@743 := @605 (@467 @82) +@745 := @607 @656 @141 +@746 := @482 @82 +@764 := {o : @389} -> + (hB : @600) -> + (hfn : @631) -> + (hwt : @730) -> + (hbind : @741) -> + (hF : @743) -> + (hA : @745) -> + (hne : @477) -> @480 (fun (ro : @479) => @481 (@746 @153 @17) (@611 (@712 (@662 @57)) @17)) +@765 := @729 @324 +@766 := @309 @632 +@777 := @449 (@635 @301 @76) (@457 (@77 (@71 @226) (@77 (@74 @243) @76))) +@778 := @607 @650 +@780 := @322 @147 @139 +@781 := @778 @780 +@783 := @322 @153 @147 +@802 := (hB : @600) -> + (hfn : @631) -> + (hwt : @766) -> + (hbind : @777) -> + (hF : @743) -> + (hA : @781) -> + (hne : @390 @783 @395) -> + @480 (fun (ro : @479) => @481 (@746 (@322 @440 @415) @17) (@611 @666 @17)) +@803 := @765 @107 +@804 := @316 @632 +@815 := @449 (@635 @308 @76) (@457 (@77 (@71 @240) (@77 (@74 @226) @76))) +@816 := @607 @693 +@818 := @322 @139 @141 +@837 := (hfn : @631) -> + (hwt : @804) -> + (hbind : @815) -> + (hF : @743) -> + (hA : @816 @818) -> + (hne : @390 @780 @395) -> + @480 (fun (ro : @479) => @481 (@746 (@322 @415 @153) @17) (@611 @708 @17)) +@838 := Eq.refl.{1} +@841 := @803 (@838 @423 @601) +@842 := @320 @632 +@853 := @449 (@635 @315 @76) (@457 (@77 (@71 @6) (@77 (@74 @240) @76))) +@854 := @607 @301 +@856 := @322 @141 @143 +@872 := (hwt : @842) -> + (hbind : @853) -> + (hF : @743) -> + (hA : @854 @856) -> + (hne : @390 @818 @395) -> @480 (fun (ro : @479) => @481 (@746 @783 @17) (@611 @656 @17)) +@873 := @841 @319 +@875 := @635 @62 @76 +@878 := @449 @875 (@457 @81) +@879 := @607 @308 +@881 := @322 @143 @12 +@896 := (hbind : @878) -> + (hF : @743) -> + (hA : @879 @881) -> + (hne : @390 @856 @395) -> @480 (fun (ro : @479) => @481 (@746 @780 @17) (@611 @650 @17)) +@899 := @873 (@838 @448 @875) +@900 := @607 @315 +@902 := @322 @12 @4 +@916 := (hF : @743) -> + (hA : @900 @902) -> + (hne : @390 @881 @395) -> @480 (fun (ro : @479) => @481 (@746 @818 @17) (@611 @693 @17)) +@919 := @899 (@838 @460 @604) +@933 := (hA : @607 @62 @324) -> + (hne : @390 @902 @395) -> @480 (fun (ro : @479) => @481 (@746 @856 @17) (@611 @301 @17)) +@934 := @919 @387 +@945 := (hne : @390 @324 @395) -> @480 (fun (ro : @479) => @481 (@746 @881 @17) (@611 @308 @17)) +@946 := @934 @408 +@952 := @481 (@746 @902 @17) (@611 @315 @17) +@954 := @480 (fun (ro : @479) => @952) +@956 := @480 (fun (__e_ro : @479) => @952) +@961 := LexLeanPreservation.Rust.RepresentableL (@59 (@58 @18 @57)) +@962 := (__e_hrep : @961) -> @956 +@963 := fun (__e_hrep : @961) => @946 +@964 := (d : @3) -> @962 +@965 := fun (d : @3) => @963 +@966 := (s : @3) -> @964 +@967 := fun (s : @3) => @965 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R29/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R29/RustStd.lean new file mode 100644 index 000000000..eee33fcd4 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R29/RustStd.lean @@ -0,0 +1,33 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1], types := [.string, .string], result := (.pair .bytes (.pair (.option .string) (.pair .ordering (.pair (.option (.list .string)) (.pair .string (.pair .nat .bool)))))), + body := (.«let» 2 .bytes (.prim .utf8Encode [(.var 0)]) (.build .pair (.pair .bytes (.pair (.option .string) (.pair .ordering (.pair (.option (.list .string)) (.pair .string (.pair .nat .bool)))))) [(.var 2), (.build .pair (.pair (.option .string) (.pair .ordering (.pair (.option (.list .string)) (.pair .string (.pair .nat .bool))))) [(.prim .utf8Decode [(.var 2)]), (.build .pair (.pair .ordering (.pair (.option (.list .string)) (.pair .string (.pair .nat .bool)))) [(.prim .compareBytes [(.var 2), (.value .bytes (.bytes (ByteArray.mk #[0, 255])))]), (.build .pair (.pair (.option (.list .string)) (.pair .string (.pair .nat .bool))) [(.prim .splitExact [(.var 0), (.var 1), (.value (.fixed .u32) (.u32 4))]), (.build .pair (.pair .string (.pair .nat .bool)) [(.prim .join [(.build .cons (.list .string) [(.var 0), (.build .cons (.list .string) [(.value .string (.string "x\"y")), (.build .nil (.list .string) [])])]), (.var 1)]), (.build .pair (.pair .nat .bool) [(.prim .length [(.var 0)]), (.cond (.prim .equal [(.var 0), (.var 1)]) (.prim .equal [(.prim .compareBytes [(.var 2), (.var 2)]), (.prim .compareBytes [(.value .bytes (.bytes (ByteArray.mk #[]))), (.value .bytes (.bytes (ByteArray.mk #[1])))])]) (.build .false .bool []))])])])])])])) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .str }, { pattern := (.bind (.generated .binding 1)), type := .str }] (.pair .bytes (.pair (.option .str) (.pair .ordering (.pair (.option (.list .str)) (.pair .str (.pair .nat .bool)))))) (.mk [(.mk (.bind (.generated .binding 2)) (some .bytes) (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))] (.call (.runtime .utf8Encode) [(.move (.generated .operand 1))] false))))] (.pair (.clone (.generated .binding 2)) (.pair (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.clone (.generated .binding 2)))] (.call (.runtime .utf8Decode) [(.move (.generated .operand 2))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.clone (.generated .binding 2))), (.mk (.bind (.generated .operand 4)) none (.lit (.bytes (ByteArray.mk #[0, 255]))))] (.call (.runtime .compareBytes) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.clone (.generated .binding 0))), (.mk (.bind (.generated .operand 6)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 7)) none (.lit (.fixed .u32 4)))] (.call (.runtime .splitExact) [(.move (.generated .operand 5)), (.move (.generated .operand 6)), (.move (.generated .operand 7))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 8)) none (.construct .cons [(.clone (.generated .binding 0)), (.construct .cons [(.lit (.str "x\"y")), (.construct (.nil .str) [])])])), (.mk (.bind (.generated .operand 9)) none (.clone (.generated .binding 1)))] (.call (.runtime .join) [(.move (.generated .operand 8)), (.move (.generated .operand 9))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 10)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthString) [(.move (.generated .operand 10))] false))) (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.move (.generated .binding 1)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false) (.mk [(.mk (.bind (.generated .operand 17)) none (.block (.mk [(.mk (.bind (.generated .operand 13)) none (.clone (.generated .binding 2))), (.mk (.bind (.generated .operand 14)) none (.move (.generated .binding 2)))] (.call (.runtime .compareBytes) [(.move (.generated .operand 13)), (.move (.generated .operand 14))] false)))), (.mk (.bind (.generated .operand 18)) none (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.lit (.bytes (ByteArray.mk #[])))), (.mk (.bind (.generated .operand 16)) none (.lit (.bytes (ByteArray.mk #[1]))))] (.call (.runtime .compareBytes) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] false))))] (.call (.runtime .equal) [(.move (.generated .operand 17)), (.move (.generated .operand 18))] false)) (.mk [] (.lit (.bool false))))))))))))))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some .bytes) (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))] (.call (.runtime .utf8Encode) [(.move (.generated .operand 1))] false))))], (.pair (.clone (.generated .binding 2)) (.pair (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.clone (.generated .binding 2)))] (.call (.runtime .utf8Decode) [(.move (.generated .operand 2))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.clone (.generated .binding 2))), (.mk (.bind (.generated .operand 4)) none (.lit (.bytes (ByteArray.mk #[0, 255]))))] (.call (.runtime .compareBytes) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.clone (.generated .binding 0))), (.mk (.bind (.generated .operand 6)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 7)) none (.lit (.fixed .u32 4)))] (.call (.runtime .splitExact) [(.move (.generated .operand 5)), (.move (.generated .operand 6)), (.move (.generated .operand 7))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 8)) none (.construct .cons [(.clone (.generated .binding 0)), (.construct .cons [(.lit (.str "x\"y")), (.construct (.nil .str) [])])])), (.mk (.bind (.generated .operand 9)) none (.clone (.generated .binding 1)))] (.call (.runtime .join) [(.move (.generated .operand 8)), (.move (.generated .operand 9))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 10)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthString) [(.move (.generated .operand 10))] false))) (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.move (.generated .binding 1)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false) (.mk [(.mk (.bind (.generated .operand 17)) none (.block (.mk [(.mk (.bind (.generated .operand 13)) none (.clone (.generated .binding 2))), (.mk (.bind (.generated .operand 14)) none (.move (.generated .binding 2)))] (.call (.runtime .compareBytes) [(.move (.generated .operand 13)), (.move (.generated .operand 14))] false)))), (.mk (.bind (.generated .operand 18)) none (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.lit (.bytes (ByteArray.mk #[])))), (.mk (.bind (.generated .operand 16)) none (.lit (.bytes (ByteArray.mk #[1]))))] (.call (.runtime .compareBytes) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] false))))] (.call (.runtime .equal) [(.move (.generated .operand 17)), (.move (.generated .operand 18))] false)) (.mk [] (.lit (.bool false)))))))))))), [(1, .string, (some 1)), (0, .string, (some 0))], rfl, rfl, + (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .utf8Encode) [(.move (.generated .operand 1))] false)) (Corr.prim (ts := [.string]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 2)) none (.clone (.generated .binding 2)))]) (tail := (.call (.runtime .utf8Decode) [(.move (.generated .operand 2))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 3)) none (.clone (.generated .binding 2))), (.mk (.bind (.generated .operand 4)) none (.lit (.bytes (ByteArray.mk #[0, 255]))))]) (tail := (.call (.runtime .compareBytes) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 5)) none (.clone (.generated .binding 0))), (.mk (.bind (.generated .operand 6)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 7)) none (.lit (.fixed .u32 4)))]) (tail := (.call (.runtime .splitExact) [(.move (.generated .operand 5)), (.move (.generated .operand 6)), (.move (.generated .operand 7))] false)) (Corr.prim (ts := [.string, .string, (.fixed .u32)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 8)) none (.construct .cons [(.clone (.generated .binding 0)), (.construct .cons [(.lit (.str "x\"y")), (.construct (.nil .str) [])])])), (.mk (.bind (.generated .operand 9)) none (.clone (.generated .binding 1)))]) (tail := (.call (.runtime .join) [(.move (.generated .operand 8)), (.move (.generated .operand 9))] false)) (Corr.prim (ts := [(.list .string), .string]) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [.string, (.list .string)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.string, (.list .string)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 10)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .lengthString) [(.move (.generated .operand 10))] false)) (Corr.prim (ts := [.string]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 11)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.move (.generated .binding 1)))]) (tail := (.cond (.call (.runtime .equal) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false) (.mk [(.mk (.bind (.generated .operand 17)) none (.block (.mk [(.mk (.bind (.generated .operand 13)) none (.clone (.generated .binding 2))), (.mk (.bind (.generated .operand 14)) none (.move (.generated .binding 2)))] (.call (.runtime .compareBytes) [(.move (.generated .operand 13)), (.move (.generated .operand 14))] false)))), (.mk (.bind (.generated .operand 18)) none (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.lit (.bytes (ByteArray.mk #[])))), (.mk (.bind (.generated .operand 16)) none (.lit (.bytes (ByteArray.mk #[1]))))] (.call (.runtime .compareBytes) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] false))))] (.call (.runtime .equal) [(.move (.generated .operand 17)), (.move (.generated .operand 18))] false)) (.mk [] (.lit (.bool false))))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 11)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.move (.generated .binding 1)))]) (ce := (.call (.runtime .equal) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false)) (lk := []) (Corr.prim (ts := [.string, .string]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 17)) none (.block (.mk [(.mk (.bind (.generated .operand 13)) none (.clone (.generated .binding 2))), (.mk (.bind (.generated .operand 14)) none (.move (.generated .binding 2)))] (.call (.runtime .compareBytes) [(.move (.generated .operand 13)), (.move (.generated .operand 14))] false)))), (.mk (.bind (.generated .operand 18)) none (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.lit (.bytes (ByteArray.mk #[])))), (.mk (.bind (.generated .operand 16)) none (.lit (.bytes (ByteArray.mk #[1]))))] (.call (.runtime .compareBytes) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] false))))]) (ta := (.call (.runtime .equal) [(.move (.generated .operand 17)), (.move (.generated .operand 18))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.ordering, .ordering]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 13)) none (.clone (.generated .binding 2))), (.mk (.bind (.generated .operand 14)) none (.move (.generated .binding 2)))]) (tail := (.call (.runtime .compareBytes) [(.move (.generated .operand 13)), (.move (.generated .operand 14))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 15)) none (.lit (.bytes (ByteArray.mk #[])))), (.mk (.bind (.generated .operand 16)) none (.lit (.bytes (ByteArray.mk #[1]))))]) (tail := (.call (.runtime .compareBytes) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil))))))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | _ + 1 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R3.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R3.lean new file mode 100644 index 000000000..9a41658d1 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R3.lean @@ -0,0 +1,106 @@ +import LexLeanPreservation.Core +import LexLeanPreservation.Values +import LexLeanPreservation.Primitives +import LexLeanPreservation.Fixed +import LexLeanPreservation.Keys +import LexLeanPreservation.Templates +import LexLeanPreservation.Validate +import Coverage.Boundary +import Coverage.Colls +import Coverage.Main +import Coverage.Prims +import Coverage.RecRoots +import Coverage.Recur +import Coverage.Syntax +import Coverage.Types +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +set_option linter.unusedVariables false +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3 + +def __prog : _root_.LexLeanTarget.TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1, 2], types := [(.list .nat), (.list .nat), .nat], result := (.pair (.list .nat) (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat)))))))), + body := (.build .pair (.pair (.list .nat) (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat)))))))) [(.call 1 [(.var 0), (.var 2)]), (.build .pair (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat))))))) [(.call 2 [(.var 0), (.var 2)]), (.build .pair (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat)))))) [(.call 3 [(.var 0), (.var 2)]), (.build .pair (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat))))) [(.call 4 [(.var 0), (.var 1)]), (.build .pair (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat)))) [(.call 6 [(.var 0), (.var 1)]), (.build .pair (.pair (.list .nat) (.pair .nat (.list .nat))) [(.call 8 [(.var 0), (.var 1)]), (.build .pair (.pair .nat (.list .nat)) [(.prim .length [(.var 0)]), (.var 0)])])])])])])]) }, + { parameters := [0, 1], types := [(.list .nat), .nat], result := (.list .nat), + body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.build .cons (.list .nat) [(.var 1), (.build .nil (.list .nat) [])])), (.arm .cons [2, 3] (.«match» (.list .nat) (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .cons (.list .nat) [(.var 1), (.var 0)])), (.arm .eq [] (.var 0)), (.arm .gt [] (.build .cons (.list .nat) [(.var 2), (.call 1 [(.var 3), (.var 1)])]))]))]) }, + { parameters := [0, 1], types := [(.list .nat), .nat], result := (.list .nat), + body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.build .nil (.list .nat) [])), (.arm .cons [2, 3] (.«match» (.list .nat) (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.var 0)), (.arm .eq [] (.var 3)), (.arm .gt [] (.build .cons (.list .nat) [(.var 2), (.call 2 [(.var 3), (.var 1)])]))]))]) }, + { parameters := [0, 1], types := [(.list .nat), .nat], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .false .bool [])), (.arm .cons [2, 3] (.«match» .bool (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .false .bool [])), (.arm .eq [] (.build .true .bool [])), (.arm .gt [] (.call 3 [(.var 3), (.var 1)]))]))]) }, + { parameters := [0, 1], types := [(.list .nat), (.list .nat)], result := (.list .nat), + body := (.«match» (.list .nat) (.var 1) [(.arm .nil [] (.var 0)), (.arm .cons [2, 3] (.call 4 [(.call 5 [(.var 0), (.var 2)]), (.var 3)]))]) }, + { parameters := [0, 1], types := [(.list .nat), .nat], result := (.list .nat), + body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.build .cons (.list .nat) [(.var 1), (.build .nil (.list .nat) [])])), (.arm .cons [2, 3] (.«match» (.list .nat) (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .cons (.list .nat) [(.var 1), (.var 0)])), (.arm .eq [] (.var 0)), (.arm .gt [] (.build .cons (.list .nat) [(.var 2), (.call 5 [(.var 3), (.var 1)])]))]))]) }, + { parameters := [0, 1], types := [(.list .nat), (.list .nat)], result := (.list .nat), + body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.build .nil (.list .nat) [])), (.arm .cons [2, 3] (.cond (.call 7 [(.var 1), (.var 2)]) (.build .cons (.list .nat) [(.var 2), (.call 6 [(.var 3), (.var 1)])]) (.call 6 [(.var 3), (.var 1)])))]) }, + { parameters := [0, 1], types := [(.list .nat), .nat], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .false .bool [])), (.arm .cons [2, 3] (.«match» .bool (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .false .bool [])), (.arm .eq [] (.build .true .bool [])), (.arm .gt [] (.call 7 [(.var 3), (.var 1)]))]))]) }, + { parameters := [0, 1], types := [(.list .nat), (.list .nat)], result := (.list .nat), + body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.build .nil (.list .nat) [])), (.arm .cons [2, 3] (.cond (.call 9 [(.var 1), (.var 2)]) (.call 8 [(.var 3), (.var 1)]) (.build .cons (.list .nat) [(.var 2), (.call 8 [(.var 3), (.var 1)])])))]) }, + { parameters := [0, 1], types := [(.list .nat), .nat], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .false .bool [])), (.arm .cons [2, 3] (.«match» .bool (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .false .bool [])), (.arm .eq [] (.build .true .bool [])), (.arm .gt [] (.call 9 [(.var 3), (.var 1)]))]))]) }, + { parameters := [0], types := [(.list .nat)], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.var 1), (.var 3)]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 10 [(.var 2)]) (.build .false .bool [])))]))]) }, + { parameters := [0, 1, 2], types := [(.list .nat), (.list .nat), .nat], result := (.option (.pair (.list .nat) (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat))))))))), + body := (.cond (.call 10 [(.var 0)]) (.cond (.call 10 [(.var 1)]) (.build .some (.option (.pair (.list .nat) (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat))))))))) [(.call 0 [(.var 0), (.var 1), (.var 2)])]) (.build .none (.option (.pair (.list .nat) (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat))))))))) [])) (.build .none (.option (.pair (.list .nat) (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat))))))))) [])) }] } + +def __fits_0 (s : (List Nat)) (t : (List Nat)) (x : Nat) : Bool := + ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanCollections.setSize (s) : Nat) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) + +theorem __rel_0 (s : (List Nat)) (t : (List Nat)) (x : Nat) : _root_.LexLeanPreservation.FunRel __prog 0 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) s), ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) t), (_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_0 s t x) ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)))))))) (Coverage.Colls.setOps s t x))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.tpl_setInsert (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) _root_.LexLeanCollections.insertElement (fun _ => rfl) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.insertElement, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.insertElement, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.insertElement, __h]) (p := __prog) (fi := 1) (tk := .nat) rfl (s) (x))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.tpl_setRemove (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) _root_.LexLeanCollections.removeElement (fun _ => rfl) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.removeElement, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.removeElement, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.removeElement, __h]) (p := __prog) (fi := 2) (tk := .nat) rfl (s) (x))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.tpl_setContains (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) _root_.LexLeanCollections.containsElement (fun _ => rfl) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.containsElement, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.containsElement, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.containsElement, __h]) (p := __prog) (fi := 3) (tk := .nat) rfl (s) (x))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.tpl_setUnion (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) _root_.LexLeanCollections.insertElement (fun _ => rfl) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.insertElement, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.insertElement, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.insertElement, __h]) (p := __prog) (fi := 4) (tk := .nat) rfl rfl (t) (s))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.tpl_setIntersection (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) _root_.LexLeanCollections.containsElement (fun _ => rfl) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.containsElement, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.containsElement, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.containsElement, __h]) (p := __prog) (fi := 6) (tk := .nat) rfl rfl (s) (t))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.tpl_setDifference (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) _root_.LexLeanCollections.containsElement (fun _ => rfl) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.containsElement, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.containsElement, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.containsElement, __h]) (p := __prog) (fi := 8) (tk := .nat) rfl rfl (s) (t))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) s)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) + +def denote (s : (List Nat)) (t : (List Nat)) (x : Nat) : _root_.LexLeanPreservation.Obs := + _root_.cond (__fits_0 s t x) (_root_.LexLeanPreservation.Obs.value (((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)))))))) (Coverage.Colls.setOps s t x)))) _root_.LexLeanPreservation.Obs.overflow + +theorem root (s : (List Nat)) (t : (List Nat)) (x : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) s), ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) t), (_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_0 s t x) ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)))))))) (Coverage.Colls.setOps s t x))) := + _root_.LexLeanPreservation.run_of_funRel (__rel_0 s t x) + +def __valid_10 : (List Nat) -> Bool := + _root_.LexLeanPreservation.ascSet (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) + +def __inv_10 : (List Nat) -> Prop := + _root_.LexLeanPreservation.InvSet (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) + +theorem __viff_10 : ∀ (__v : (List Nat)), __valid_10 __v = Bool.true ↔ __inv_10 __v := + _root_.LexLeanPreservation.ascSet_inv (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) + +theorem __vrel_10 : ∀ (__v : (List Nat)), _root_.LexLeanPreservation.FunRel __prog 10 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_10 __v))) := + _root_.LexLeanPreservation.tpl_validSet (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) rfl + +def entryFits (s : (List Nat)) (t : (List Nat)) (x : Nat) : Bool := + (if __valid_10 s then (if __valid_10 t then __fits_0 s t x else Bool.true) else Bool.true) + +def entryValue (s : (List Nat)) (t : (List Nat)) (x : Nat) : _root_.LexLeanTarget.TargetSyntax.Value := + (if __valid_10 s then (if __valid_10 t then (_root_.LexLeanTarget.TargetSyntax.Value.some ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)))))))) (Coverage.Colls.setOps s t x))) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) + +/-- The entry's observation. -/ +def denoteEntry (s : (List Nat)) (t : (List Nat)) (x : Nat) : _root_.LexLeanPreservation.Obs := + _root_.cond (_root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.entryFits s t x) (_root_.LexLeanPreservation.Obs.value (_root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.entryValue s t x)) _root_.LexLeanPreservation.Obs.overflow + +/-- §17.12's invariants of the validated parameters. -/ +def accepts (s : (List Nat)) (t : (List Nat)) (x : Nat) : Prop := + (__inv_10 s ∧ (__inv_10 t ∧ _root_.True)) + +theorem entry (s : (List Nat)) (t : (List Nat)) (x : Nat) : _root_.LexLeanPreservation.RunConv __prog 11 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) s), ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) t), (_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.denoteEntry s t x) := + _root_.LexLeanPreservation.run_of_funRel (_root_.LexLeanPreservation.FunRel.fits_eq (_root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun __c => if __c then (if __valid_10 t then __fits_0 s t x else Bool.true) else Bool.true) (fun __c => if __c then (if __valid_10 t then (_root_.LexLeanTarget.TargetSyntax.Value.some ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)))))))) (Coverage.Colls.setOps s t x))) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) (__valid_10 s) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_10 s)) (fun _ => _root_.LexLeanPreservation.Conv.fits_eq (_root_.LexLeanPreservation.conv_cond (fun __c => if __c then __fits_0 s t x else Bool.true) (fun __c => if __c then (_root_.LexLeanTarget.TargetSyntax.Value.some ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)))))))) (Coverage.Colls.setOps s t x))) else _root_.LexLeanTarget.TargetSyntax.Value.none) (__valid_10 t) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_10 t)) (fun _ => _root_.LexLeanPreservation.Conv.fits_eq (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (__rel_0 s t x)) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some) (by simp)) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) (by simp)) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (by simp [_root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.entryFits])) + +theorem entry_accepts (s : (List Nat)) (t : (List Nat)) (x : Nat) (__h : _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.accepts s t x) : _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.denoteEntry s t x = _root_.LexLeanPreservation.someObs (_root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.denote s t x) := by + unfold _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.accepts at __h + unfold _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.denoteEntry _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.entryFits _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.entryValue _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.denote + simp only [_root_.if_true, (__viff_10 s).mpr __h.1, (__viff_10 t).mpr __h.2.1] + cases __fits_0 s t x <;> rfl + +theorem entry_refuses (s : (List Nat)) (t : (List Nat)) (x : Nat) (__h : ¬ _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.accepts s t x) : _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.denoteEntry s t x = _root_.LexLeanPreservation.Obs.value _root_.LexLeanTarget.TargetSyntax.Value.none := by + unfold _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.accepts at __h + unfold _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.denoteEntry _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.entryFits _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.entryValue + cases __c0 : __valid_10 s + · simp + · cases __c1 : __valid_10 t + · simp + · exact _root_.absurd ⟨(__viff_10 s).mp __c0, (__viff_10 t).mp __c1, _root_.trivial⟩ __h + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3 diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R3/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R3/Compose/RustStd.lex.tex new file mode 100644 index 000000000..4e3752683 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R3/Compose/RustStd.lex.tex @@ -0,0 +1,617 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.Compose.RustStd.root : @1271 := @1272 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.RustStd.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.RustStd.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.RustStd.flags +@3 := Nat +@4 := List.{0} +@5 := @4 @3 +@6 := #3 +@7 := LexLeanTarget.TargetSyntax.Value.nat +@8 := LexLeanPreservation.encList +@9 := @8 @3 +@10 := @9 @7 +@11 := @10 @6 +@12 := LexLeanTarget.TargetSyntax.Ty.nat +@13 := LexLeanTarget.TargetSyntax.Ty.list +@14 := @13 @12 +@15 := #0 +@16 := LexLeanTarget.TargetSyntax.Program +@17 := LexLeanPreservation.Rust.RCrate +@18 := LexLeanPreservation.Rust.Flags +@19 := LexLeanPreservation.Rust.WT +@20 := @19 @6 +@21 := #2 +@22 := @20 @21 +@23 := #1 +@24 := @22 @23 +@25 := @7 @15 +@31 := {p : @16} -> {c : @17} -> {A : @18} -> (n : @3) -> @24 @25 @12 +@33 := LexLeanPreservation.Rust.wt_nat @0 +@34 := @19 @0 +@41 := {c : @17} -> {A : @18} -> (n : @3) -> @34 @21 @23 @25 @12 +@42 := @33 @1 +@43 := @34 @1 +@48 := {A : @18} -> (n : @3) -> @43 @23 @25 @12 +@49 := @42 @2 +@50 := @43 @2 +@51 := @50 @25 +@52 := @51 @12 +@53 := (n : @3) -> @52 +@55 := fun (__x : @3) => @49 @15 +@56 := Sort 1 +@57 := LexLeanTarget.TargetSyntax.Value +@58 := (a._@._internal._hyg.#0 : @15) -> @57 +@59 := LexLeanTarget.TargetSyntax.Ty +@60 := #6 +@61 := @19 @60 +@62 := #5 +@63 := @61 @62 +@64 := #4 +@65 := @63 @64 +@66 := @21 @15 +@69 := (x : @21) -> @65 @66 @23 +@70 := @4 @6 +@71 := #7 +@74 := @19 @71 @60 @62 +@77 := @8 @64 @6 @15 +@78 := @74 @77 +@79 := @13 @21 +@88 := {p : @16} -> + {c : @17} -> + {A : @18} -> {α : @56} -> {e : @58} -> {t : @59} -> (h : @69) -> (xs : @70) -> @78 @79 +@90 := LexLeanPreservation.Rust.wt_encList @0 +@92 := @34 @62 @64 +@106 := {c : @17} -> + {A : @18} -> + {α : @56} -> + {e : @58} -> {t : @59} -> (h : (x : @21) -> @92 @66 @23) -> (xs : @70) -> @34 @60 @62 @77 @79 +@107 := @90 @1 +@108 := @43 @64 +@120 := {A : @18} -> + {α : @56} -> + {e : @58} -> {t : @59} -> (h : (x : @21) -> @108 @66 @23) -> (xs : @70) -> @43 @62 @77 @79 +@121 := @107 @2 +@123 := @50 @66 @23 +@131 := {α : @56} -> {e : @58} -> {t : @59} -> (h : (x : @21) -> @123) -> (xs : @70) -> @50 @77 @79 +@132 := @121 @3 +@142 := {e : (a._@._internal._hyg.#0 : @3) -> @57} -> + {t : @59} -> (h : (x : @3) -> @123) -> (xs : @5) -> @50 (@9 @6 @15) @79 +@143 := @132 @7 +@145 := (x : @3) -> @51 @23 +@147 := @50 (@10 @15) +@151 := {t : @59} -> (h : @145) -> (xs : @5) -> @147 @79 +@152 := @143 @12 +@156 := (h : (x : @3) -> @52) -> (xs : @5) -> @147 @14 +@157 := @152 @55 +@158 := @157 @6 +@160 := @50 @11 @14 +@161 := @10 @21 +@162 := @157 @21 +@164 := @50 @161 @14 +@165 := @7 @23 +@166 := @49 @23 +@168 := @50 @165 @12 +@169 := List.nil.{0} +@170 := List.cons.{0} +@171 := @169 @57 +@172 := @170 @57 +@174 := @172 @165 @171 +@175 := @172 @161 +@176 := @175 @174 +@177 := @172 @11 +@178 := @177 @176 +@181 := Prod.{0, 0} @3 @57 +@182 := 2 +@185 := Prod.mk.{0, 0} @3 @57 +@186 := @185 @182 +@187 := @186 @165 +@189 := @185 1 +@190 := @189 @161 +@192 := @185 0 +@193 := @192 @11 +@194 := @169 @181 +@195 := @170 @181 +@197 := @195 @193 @194 +@199 := @195 @190 @197 +@201 := @195 @187 @199 +@202 := Bool.false +@203 := LexLeanTarget.TargetSyntax.Function +@204 := LexLeanTarget.TargetSyntax.Program.functions +@205 := @204 @0 +@206 := 11 +@207 := @169 @3 +@208 := @169 @59 +@209 := LexLeanTarget.TargetSyntax.Ty.unit +@210 := LexLeanTarget.TargetSyntax.Value.unit +@213 := LexLeanTarget.TargetSyntax.Expr.value @209 @210 +@218 := LexLeanTarget.TargetSyntax.Function.mk @207 @208 @209 @213 +@223 := List.getD.{0} @203 @205 @206 @218 +@227 := fun (__e_n : @3) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.RustStd.root @15 @206 +@228 := LexLeanPreservation.Rust.WTL +@236 := {p : @16} -> {c : @17} -> {A : @18} -> @228 @21 @23 @15 @171 @208 +@238 := LexLeanPreservation.Rust.wtl_nil @0 +@239 := @228 @0 +@245 := {c : @17} -> {A : @18} -> @239 @23 @15 @171 @208 +@246 := @238 @1 +@247 := @239 @1 +@251 := {A : @18} -> @247 @15 @171 @208 +@252 := @246 @2 +@253 := @247 @2 +@254 := @253 @171 +@255 := @254 @208 +@256 := @4 @57 +@257 := @4 @59 +@259 := @65 @6 @21 +@264 := @228 @71 @60 @62 @21 @23 +@265 := #8 +@268 := @228 @265 @71 @60 +@270 := @172 @62 @6 +@271 := @268 @270 +@272 := @170 @59 +@274 := @272 @64 @21 +@284 := {p : @16} -> + {c : @17} -> + {A : @18} -> + {v : @57} -> {t : @59} -> {vs : @256} -> {ts : @257} -> (h : @259) -> (hs : @264) -> @271 @274 +@286 := LexLeanPreservation.Rust.wtl_cons @0 +@304 := {c : @17} -> + {A : @18} -> + {v : @57} -> + {t : @59} -> + {vs : @256} -> + {ts : @257} -> (h : @92 @6 @21) -> (hs : @239 @60 @62 @21 @23) -> @239 @71 @60 @270 @274 +@305 := @286 @1 +@320 := {A : @18} -> + {v : @57} -> + {t : @59} -> + {vs : @256} -> {ts : @257} -> (h : @108 @6 @21) -> (hs : @247 @62 @21 @23) -> @247 @60 @270 @274 +@321 := @305 @2 +@323 := @50 @6 @21 +@325 := @253 @21 @23 +@333 := {v : @57} -> + {t : @59} -> {vs : @256} -> {ts : @257} -> (h : @323) -> (hs : @325) -> @253 @270 @274 +@334 := @321 @165 +@335 := @7 @64 +@337 := @50 @335 @21 +@338 := @7 @60 +@339 := @172 @338 +@347 := {t : @59} -> {vs : @256} -> {ts : @257} -> (h : @337) -> (hs : @325) -> @253 (@339 @6) @274 +@348 := @334 @12 +@349 := @7 @6 +@351 := @50 @349 @12 +@352 := @7 @62 +@353 := @172 @352 +@355 := @253 (@353 @6) +@356 := @272 @12 +@357 := @356 @21 +@362 := {vs : @256} -> {ts : @257} -> (h : @351) -> (hs : @325) -> @355 @357 +@363 := @348 @171 +@364 := @7 @21 +@366 := @50 @364 @12 +@367 := @254 @23 +@369 := @172 @335 @171 +@374 := {ts : @257} -> (h : @366) -> (hs : @367) -> @253 @369 @357 +@375 := @363 @208 +@377 := @172 @349 @171 +@378 := @253 @377 +@379 := @356 @208 +@382 := (h : @168) -> (hs : @255) -> @378 @379 +@383 := @375 @166 +@385 := @172 @364 @171 +@387 := @253 @385 @379 +@388 := (hs : @255) -> @387 +@389 := @383 @252 +@391 := @253 @174 @379 +@392 := @321 @161 +@393 := @10 @62 +@394 := @50 @393 +@395 := @394 @21 +@396 := @10 @71 +@397 := @172 @396 +@399 := @253 (@397 @6) +@405 := {t : @59} -> {vs : @256} -> {ts : @257} -> (h : @395) -> (hs : @325) -> @399 @274 +@406 := @392 @14 +@407 := @10 @64 +@409 := @50 @407 @14 +@410 := @10 @60 +@411 := @172 @410 +@413 := @253 (@411 @6) +@414 := @272 @14 +@415 := @414 @21 +@420 := {vs : @256} -> {ts : @257} -> (h : @409) -> (hs : @325) -> @413 @415 +@421 := @406 @174 +@422 := @378 @23 +@423 := @172 @393 +@424 := @423 @369 +@429 := {ts : @257} -> (h : @160) -> (hs : @422) -> @253 @424 @415 +@430 := @421 @379 +@431 := @172 @407 +@432 := @431 @377 +@433 := @253 @432 +@434 := @414 @379 +@437 := (h : @164) -> (hs : @387) -> @433 @434 +@438 := @430 @162 +@439 := @177 @385 +@441 := @253 @439 @434 +@442 := (hs : @391) -> @441 +@443 := @438 @389 +@445 := @253 @176 @434 +@446 := @321 @11 +@448 := @50 @410 @21 +@449 := @10 @265 +@450 := @172 @449 +@458 := {t : @59} -> {vs : @256} -> {ts : @257} -> (h : @448) -> (hs : @325) -> @253 (@450 @6) @274 +@459 := @446 @14 +@465 := {vs : @256} -> {ts : @257} -> (h : @394 @14) -> (hs : @325) -> @399 @415 +@466 := @459 @176 +@467 := @433 @23 +@468 := @411 @424 +@469 := @253 @468 +@473 := {ts : @257} -> (h : @409) -> (hs : @467) -> @469 @415 +@474 := @466 @434 +@475 := @423 @432 +@476 := @253 @475 +@477 := @414 @434 +@480 := (h : @160) -> (hs : @441) -> @476 @477 +@481 := @474 @158 +@482 := @431 @439 +@483 := @253 @482 +@485 := (hs : @445) -> @483 @477 +@486 := @481 @443 +@487 := @253 @178 +@488 := @487 @477 +@489 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.denoteEntry +@492 := @489 @6 @21 @23 +@493 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.entryFits +@496 := @493 @6 @21 @23 +@500 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.entryValue @6 @21 @23 +@504 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.entry @6 @21 @23 +@505 := Bool +@506 := Ne.{1} +@507 := LexLeanPreservation.Obs +@508 := @506 @507 +@509 := LexLeanPreservation.Rel +@512 := @508 (@509 @23 @15) +@513 := LexLeanPreservation.Obs.stuck +@516 := (f : @505) -> (v : @57) -> @512 @513 +@518 := LexLeanPreservation.Rust.rel_ne_stuck @496 +@526 := (v : @57) -> @508 (@509 (@493 @64 @6 @21) @15) @513 +@527 := @518 @500 +@531 := @508 (@509 @496 @500) @513 +@532 := @4 @181 +@533 := LexLeanPreservation.Rust.FunSem +@534 := #9 +@540 := (n : @3) -> @533 @534 @265 @71 @15 @60 +@541 := Eq.{1} +@542 := Option.{0} +@543 := @542 @203 +@544 := @541 @543 +@551 := LexLeanRuntime.index (@4 @203) @203 (LexLeanRuntime.instIndexableList @203) +@555 := @544 (@551 (@204 @534) @60) +@556 := Option.some.{0} +@557 := @556 @203 +@558 := @557 @62 +@559 := @555 @558 +@560 := #10 +@564 := @228 @560 @534 @265 @62 +@565 := LexLeanTarget.TargetSyntax.Function.types +@566 := @565 @60 +@567 := @564 @566 +@568 := @542 @532 +@569 := @541 @568 +@570 := LexLeanTarget.TargetSemantics.bindAll +@571 := LexLeanTarget.TargetSyntax.Function.parameters +@576 := @569 (@570 (@571 @71) @60 @194) +@577 := @556 @532 +@578 := @577 @62 +@579 := @576 @578 +@580 := @542 @505 +@581 := @541 @580 +@582 := LexLeanPreservation.Rust.fnFallible +@583 := #11 +@586 := @581 (@582 @583 @534) +@587 := @556 @505 +@588 := @587 @62 +@589 := @586 @588 +@590 := LexLeanPreservation.RunConv +@591 := #13 +@595 := @590 @591 @560 @265 @62 +@597 := @508 @60 @513 +@598 := Exists.{1} +@599 := LexLeanPreservation.Rust.ROut +@600 := @598 @599 +@601 := And +@602 := LexLeanPreservation.Rust.RealizesFn +@606 := @601 (@602 @534 @265 @15) +@607 := LexLeanPreservation.Rust.RCI +@609 := @607 #15 +@610 := LexLeanPreservation.Rust.fnIdent +@611 := @610 @591 +@618 := (hne : @597) -> @600 (fun (ro : @599) => @606 (@609 @611 @583 @15)) +@633 := {p : @16} -> + {c : @17} -> + {A : @18} -> + {f : @3} -> + {fn : @203} -> + {args : @256} -> + {env : @532} -> + {F : @505} -> + {o : @507} -> + (hB : @540) -> + (hfn : @559) -> (hwt : @567) -> (hbind : @579) -> (hF : @589) -> (hA : @595) -> @618 +@635 := LexLeanPreservation.Rust.compose @0 +@636 := @533 @0 +@641 := (n : @3) -> @636 @265 @71 @15 @60 +@642 := @551 @205 +@645 := @544 (@642 @60) @558 +@649 := @239 @534 @265 @62 @566 +@650 := @590 @0 +@653 := @650 @560 @265 @62 +@667 := {c : @17} -> + {A : @18} -> + {f : @3} -> + {fn : @203} -> + {args : @256} -> + {env : @532} -> + {F : @505} -> + {o : @507} -> + (hB : @641) -> + (hfn : @645) -> (hwt : @649) -> (hbind : @579) -> (hF : @589) -> (hA : @653) -> @618 +@668 := @635 @1 +@669 := @636 @1 +@673 := (n : @3) -> @669 @71 @15 @60 +@676 := @247 @265 @62 @566 +@677 := @582 @1 +@680 := @581 (@677 @534) @588 +@681 := @607 @1 +@691 := (hbind : @579) -> + (hF : @680) -> (hA : @653) -> (hne : @597) -> @600 (fun (ro : @599) => @606 (@681 @611 @583 @15)) +@701 := {A : @18} -> + {f : @3} -> + {fn : @203} -> + {args : @256} -> + {env : @532} -> {F : @505} -> {o : @507} -> (hB : @673) -> (hfn : @645) -> (hwt : @676) -> @691 +@702 := @668 @2 +@704 := @669 @2 @15 +@706 := (n : @3) -> @704 @60 +@707 := @253 @62 +@708 := @707 @566 +@717 := {f : @3} -> + {fn : @203} -> + {args : @256} -> + {env : @532} -> {F : @505} -> {o : @507} -> (hB : @706) -> (hfn : @645) -> (hwt : @708) -> @691 +@718 := @702 @206 +@720 := (n : @3) -> @704 @206 +@721 := @642 @206 +@722 := @544 @721 +@723 := @722 @558 +@724 := @677 @206 +@725 := @581 @724 +@726 := @725 @588 +@727 := @650 @206 +@729 := @727 @265 @62 +@731 := @681 (@610 @206) +@739 := (hF : @726) -> (hA : @729) -> (hne : @597) -> @600 (fun (ro : @599) => @606 (@731 @583 @15)) +@748 := {fn : @203} -> + {args : @256} -> + {env : @532} -> + {F : @505} -> {o : @507} -> (hB : @720) -> (hfn : @723) -> (hwt : @708) -> (hbind : @579) -> @739 +@749 := @718 @223 +@751 := @722 (@557 @223) +@752 := @565 @223 +@753 := @707 @752 +@755 := @570 (@571 @223) +@767 := {args : @256} -> + {env : @532} -> + {F : @505} -> + {o : @507} -> + (hB : @720) -> (hfn : @751) -> (hwt : @753) -> (hbind : @569 (@755 @60 @194) @578) -> @739 +@768 := @749 @178 +@771 := @450 (@397 (@339 @171)) +@773 := @253 @771 @752 +@775 := @172 (@10 @534) +@780 := @775 (@450 (@172 (@7 @71) @171)) +@784 := @569 (@755 @780 @194) @578 +@786 := @172 (@10 @583) +@788 := @172 (@10 @560) +@793 := @786 (@788 (@172 (@7 @534) @171)) +@795 := @727 @793 @62 +@798 := @172 (@10 #14) +@800 := @172 (@10 @591) +@801 := #12 +@821 := {env : @532} -> + {F : @505} -> + {o : @507} -> + (hB : @720) -> + (hfn : @751) -> + (hwt : @773) -> + (hbind : @784) -> + (hF : @726) -> + (hA : @795) -> + (hne : @597) -> @600 (fun (ro : @599) => @606 (@731 (@798 (@800 (@172 (@7 @801) @171))) @15)) +@822 := @768 @201 +@825 := @397 (@411 (@353 @171)) +@827 := @253 @825 @752 +@841 := @569 (@755 @771 @194) (@577 (@195 (@186 @338) (@195 (@189 @396) (@195 (@192 @449) @194)))) +@846 := @788 (@775 (@172 (@7 @265) @171)) +@848 := @727 @846 @62 +@850 := @172 (@10 @801) +@869 := {F : @505} -> + {o : @507} -> + (hB : @720) -> + (hfn : @751) -> + (hwt : @827) -> + (hbind : @841) -> + (hF : @726) -> + (hA : @848) -> + (hne : @597) -> @600 (fun (ro : @599) => @606 (@731 (@800 (@850 (@172 (@7 @583) @171))) @15)) +@870 := @822 @202 +@871 := @469 @752 +@885 := @569 (@755 @825 @194) (@577 (@195 (@186 @352) (@195 (@189 @410) (@195 (@192 @396) @194)))) +@887 := @725 (@587 @202) +@889 := @727 @780 @62 +@890 := @602 @202 +@911 := {o : @507} -> + (hB : @720) -> + (hfn : @751) -> + (hwt : @871) -> + (hbind : @885) -> + (hF : @887) -> + (hA : @889) -> + (hne : @597) -> + @600 (fun (ro : @599) => @601 (@890 @265 @15) (@731 (@850 (@786 (@172 (@7 @560) @171))) @15)) +@912 := @870 @492 +@913 := @476 @752 +@927 := @569 (@755 @468 @194) (@577 (@195 (@186 @335) (@195 (@189 @393) (@195 (@192 @410) @194)))) +@928 := @727 @771 +@931 := @489 @265 @71 @60 +@932 := @928 @931 +@935 := @489 @534 @265 @71 +@955 := (hB : @720) -> + (hfn : @751) -> + (hwt : @913) -> + (hbind : @927) -> + (hF : @887) -> + (hA : @932) -> + (hne : @508 @935 @513) -> + @600 (fun (ro : @599) => @601 (@890 (@489 @583 @560 @534) @15) (@731 @793 @15)) +@956 := @912 @227 +@957 := @483 @752 +@971 := @569 (@755 @475 @194) (@577 (@195 (@186 @349) (@195 (@189 @407) (@195 (@192 @393) @194)))) +@972 := @727 @825 +@975 := @489 @71 @60 @62 +@995 := (hfn : @751) -> + (hwt : @957) -> + (hbind : @971) -> + (hF : @887) -> + (hA : @972 @975) -> + (hne : @508 @931 @513) -> + @600 (fun (ro : @599) => @601 (@890 (@489 @560 @534 @265) @15) (@731 @846 @15)) +@996 := Eq.refl.{1} +@999 := @956 (@996 @543 @721) +@1000 := @487 @752 +@1014 := @569 (@755 @482 @194) (@577 (@195 (@186 @364) (@195 (@189 @11) (@195 (@192 @407) @194)))) +@1015 := @727 @468 +@1018 := @489 @60 @62 @64 +@1034 := (hwt : @1000) -> + (hbind : @1014) -> + (hF : @887) -> + (hA : @1015 @1018) -> + (hne : @508 @975 @513) -> @600 (fun (ro : @599) => @601 (@890 @935 @15) (@731 @780 @15)) +@1035 := @999 @486 +@1037 := @755 @178 @194 +@1040 := @569 @1037 (@577 @201) +@1041 := @727 @475 +@1044 := @489 @62 @64 @6 +@1059 := (hbind : @1040) -> + (hF : @887) -> + (hA : @1041 @1044) -> + (hne : @508 @1018 @513) -> @600 (fun (ro : @599) => @601 (@890 @931 @15) (@731 @771 @15)) +@1062 := @1035 (@996 @568 @1037) +@1063 := @727 @482 +@1066 := @489 @64 @6 @21 +@1080 := (hF : @887) -> + (hA : @1063 @1066) -> + (hne : @508 @1044 @513) -> @600 (fun (ro : @599) => @601 (@890 @975 @15) (@731 @825 @15)) +@1083 := @1062 (@996 @580 @724) +@1085 := @727 @178 @492 +@1087 := @508 @1066 @513 +@1088 := @890 @1018 +@1090 := @601 (@1088 @15) +@1091 := @731 @468 +@1092 := @1091 @15 +@1097 := (hA : @1085) -> (hne : @1087) -> @600 (fun (ro : @599) => @1090 @1092) +@1098 := @1083 @504 +@1100 := @508 @492 @513 +@1101 := @890 @1044 +@1103 := @601 (@1101 @15) +@1104 := @731 @475 +@1109 := (hne : @1100) -> @600 (fun (ro : @599) => @1103 (@1104 @15)) +@1110 := @1098 @527 +@1113 := @601 (@890 @1066 @15) +@1115 := @731 @482 @15 +@1116 := @1113 @1115 +@1118 := @600 (fun (ro : @599) => @1116) +@1119 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.accepts +@1122 := @1119 @6 @21 @23 +@1123 := LexLeanPreservation.someObs +@1124 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.denote +@1128 := @1123 (@1124 @6 @21 @23) +@1131 := LexLeanPreservation.Obs.value LexLeanTarget.TargetSyntax.Value.none +@1132 := Not +@1133 := @1132 @1122 +@1136 := @1119 @64 @6 @21 +@1140 := @1123 (@1124 @64 @6 @21) +@1141 := @1132 @1136 +@1148 := @1136 -> @890 (@1123 (@1124 @62 @64 @6)) @23 +@1149 := @890 @1131 +@1150 := @1149 @23 +@1151 := @1141 -> @1150 +@1153 := @601 @1148 @1151 +@1157 := @600 (fun (__e_ro : @599) => @601 @1115 @1153) +@1158 := fun (__e_ro : @599) => @1116 +@1159 := @1101 @23 +@1160 := @1104 @23 +@1161 := And.left +@1162 := And.right +@1165 := @1161 @1159 @1160 @15 +@1168 := @1162 @1159 @1160 @15 +@1169 := @890 @15 +@1171 := fun (__e_o : @507) => @1169 @21 +@1172 := Eq.subst.{1} +@1175 := @1119 @62 @64 @6 +@1176 := @1132 @1175 +@1181 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.entry_accepts @60 @62 @64 @15 +@1185 := @1123 (@1124 @60 @62 @64) +@1190 := @1161 (@1088 @21) (@1091 @21) @23 +@1192 := fun (__e_o : @507) => @1169 @6 +@1195 := @1172 @507 @1192 @1018 +@1199 := fun (__e_h : @1175) => @1195 @1185 @1181 @1190 +@1204 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.entry_refuses @60 @62 @64 @15 +@1208 := fun (__e_h : @1176) => @1195 @1131 @1204 @1190 +@1209 := And.intro +@1212 := @1175 -> @890 @1185 @21 +@1214 := @1176 -> @1149 @21 +@1216 := @601 @1212 @1214 +@1220 := @1209 @1212 @1214 @1199 @1208 +@1224 := @1209 @1160 @1216 @1168 @1220 +@1225 := Exists.intro.{1} +@1226 := @601 @1092 +@1229 := @1119 @60 @62 @64 +@1242 := fun (__e_ro : @599) => + @1226 (@601 (@1229 -> @890 (@1123 (@1124 @71 @60 @62)) @23) (@1132 @1229 -> @1150)) +@1246 := @1225 @599 @1242 @23 @1224 +@1248 := @601 @1159 @1160 +@1250 := fun (__e_ro : @599) => fun (__e_hand : @1116) => @1246 +@1256 := Exists.elim.{1} @599 @1158 @1157 @1110 @1250 +@1257 := LexLeanPreservation.Rust.RepresentableL +@1258 := @10 @23 +@1260 := @172 @25 @171 +@1264 := @1257 (@175 (@172 @1258 @1260)) +@1265 := (__e_hrep : @1264) -> @1157 +@1266 := fun (__e_hrep : @1264) => @1256 +@1267 := (x : @3) -> @1265 +@1268 := fun (x : @3) => @1266 +@1269 := (t : @5) -> @1267 +@1270 := fun (t : @5) => @1268 +@1271 := (s : @5) -> @1269 +@1272 := fun (s : @5) => @1270 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R3/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R3/RustStd.lean new file mode 100644 index 000000000..01c234c12 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R3/RustStd.lean @@ -0,0 +1,121 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1, 2], types := [(.list .nat), (.list .nat), .nat], result := (.pair (.list .nat) (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat)))))))), + body := (.build .pair (.pair (.list .nat) (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat)))))))) [(.call 1 [(.var 0), (.var 2)]), (.build .pair (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat))))))) [(.call 2 [(.var 0), (.var 2)]), (.build .pair (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat)))))) [(.call 3 [(.var 0), (.var 2)]), (.build .pair (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat))))) [(.call 4 [(.var 0), (.var 1)]), (.build .pair (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat)))) [(.call 6 [(.var 0), (.var 1)]), (.build .pair (.pair (.list .nat) (.pair .nat (.list .nat))) [(.call 8 [(.var 0), (.var 1)]), (.build .pair (.pair .nat (.list .nat)) [(.prim .length [(.var 0)]), (.var 0)])])])])])])]) }, + { parameters := [0, 1], types := [(.list .nat), .nat], result := (.list .nat), + body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.build .cons (.list .nat) [(.var 1), (.build .nil (.list .nat) [])])), (.arm .cons [2, 3] (.«match» (.list .nat) (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .cons (.list .nat) [(.var 1), (.var 0)])), (.arm .eq [] (.var 0)), (.arm .gt [] (.build .cons (.list .nat) [(.var 2), (.call 1 [(.var 3), (.var 1)])]))]))]) }, + { parameters := [0, 1], types := [(.list .nat), .nat], result := (.list .nat), + body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.build .nil (.list .nat) [])), (.arm .cons [2, 3] (.«match» (.list .nat) (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.var 0)), (.arm .eq [] (.var 3)), (.arm .gt [] (.build .cons (.list .nat) [(.var 2), (.call 2 [(.var 3), (.var 1)])]))]))]) }, + { parameters := [0, 1], types := [(.list .nat), .nat], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .false .bool [])), (.arm .cons [2, 3] (.«match» .bool (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .false .bool [])), (.arm .eq [] (.build .true .bool [])), (.arm .gt [] (.call 3 [(.var 3), (.var 1)]))]))]) }, + { parameters := [0, 1], types := [(.list .nat), (.list .nat)], result := (.list .nat), + body := (.«match» (.list .nat) (.var 1) [(.arm .nil [] (.var 0)), (.arm .cons [2, 3] (.call 4 [(.call 5 [(.var 0), (.var 2)]), (.var 3)]))]) }, + { parameters := [0, 1], types := [(.list .nat), .nat], result := (.list .nat), + body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.build .cons (.list .nat) [(.var 1), (.build .nil (.list .nat) [])])), (.arm .cons [2, 3] (.«match» (.list .nat) (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .cons (.list .nat) [(.var 1), (.var 0)])), (.arm .eq [] (.var 0)), (.arm .gt [] (.build .cons (.list .nat) [(.var 2), (.call 5 [(.var 3), (.var 1)])]))]))]) }, + { parameters := [0, 1], types := [(.list .nat), (.list .nat)], result := (.list .nat), + body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.build .nil (.list .nat) [])), (.arm .cons [2, 3] (.cond (.call 7 [(.var 1), (.var 2)]) (.build .cons (.list .nat) [(.var 2), (.call 6 [(.var 3), (.var 1)])]) (.call 6 [(.var 3), (.var 1)])))]) }, + { parameters := [0, 1], types := [(.list .nat), .nat], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .false .bool [])), (.arm .cons [2, 3] (.«match» .bool (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .false .bool [])), (.arm .eq [] (.build .true .bool [])), (.arm .gt [] (.call 7 [(.var 3), (.var 1)]))]))]) }, + { parameters := [0, 1], types := [(.list .nat), (.list .nat)], result := (.list .nat), + body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.build .nil (.list .nat) [])), (.arm .cons [2, 3] (.cond (.call 9 [(.var 1), (.var 2)]) (.call 8 [(.var 3), (.var 1)]) (.build .cons (.list .nat) [(.var 2), (.call 8 [(.var 3), (.var 1)])])))]) }, + { parameters := [0, 1], types := [(.list .nat), .nat], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .false .bool [])), (.arm .cons [2, 3] (.«match» .bool (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .false .bool [])), (.arm .eq [] (.build .true .bool [])), (.arm .gt [] (.call 9 [(.var 3), (.var 1)]))]))]) }, + { parameters := [0], types := [(.list .nat)], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.var 1), (.var 3)]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 10 [(.var 2)]) (.build .false .bool [])))]))]) }, + { parameters := [0, 1, 2], types := [(.list .nat), (.list .nat), .nat], result := (.option (.pair (.list .nat) (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat))))))))), + body := (.cond (.call 10 [(.var 0)]) (.cond (.call 10 [(.var 1)]) (.build .some (.option (.pair (.list .nat) (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat))))))))) [(.call 0 [(.var 0), (.var 1), (.var 2)])]) (.build .none (.option (.pair (.list .nat) (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat))))))))) [])) (.build .none (.option (.pair (.list .nat) (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat))))))))) [])) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.pair (.list .nat) (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat)))))))) (.mk [] (.pair (.call (.function 1) [(.clone (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.pair (.call (.function 2) [(.clone (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.pair (.call (.function 3) [(.clone (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.pair (.call (.function 4) [(.clone (.generated .binding 0)), (.clone (.generated .binding 1))] false) (.pair (.call (.function 6) [(.clone (.generated .binding 0)), (.clone (.generated .binding 1))] false) (.pair (.call (.function 8) [(.clone (.generated .binding 0)), (.move (.generated .binding 1))] false) (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthList) [(.move (.generated .operand 1))] false))) (.move (.generated .binding 0))))))))))), + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 2)) none (.clone (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 2)) [(.mk .none (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil .nat) [])]))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 5)) none (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))))] (.matchOn (.move (.generated .holder 5)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 1) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])))]))), + (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 6)) none (.clone (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 6)) [(.mk .none (.mk [] (.construct (.nil .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 9)) none (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false))))] (.matchOn (.move (.generated .holder 9)) [(.mk (.ordering .less) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 3)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 2) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])))]))), + (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .holder 10)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 10)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))] (.matchOn (.move (.generated .holder 13)) [(.mk (.ordering .less) (.mk [] (.lit (.bool false)))), (.mk (.ordering .same) (.mk [] (.lit (.bool true)))), (.mk (.ordering .more) (.mk [] (.call (.function 3) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]))), + (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := (.list .nat) }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 14)) none (.move (.generated .binding 1)))] (.matchOn (.uncons (.generated .holder 14)) [(.mk .none (.mk [] (.move (.generated .binding 0)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.call (.function 4) [(.call (.function 5) [(.move (.generated .binding 0)), (.copy (.generated .binding 2))] false), (.move (.generated .binding 3))] false)))]))), + (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 15)) none (.clone (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 15)) [(.mk .none (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil .nat) [])]))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 18)) none (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false))))] (.matchOn (.move (.generated .holder 18)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 5) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])))]))), + (.function (.generated .function 6) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := (.list .nat) }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 19)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 19)) [(.mk .none (.mk [] (.construct (.nil .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.cond (.call (.function 7) [(.clone (.generated .binding 1)), (.copy (.generated .binding 2))] false) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 6) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)])) (.mk [] (.call (.function 6) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)))))]))), + (.function (.generated .function 7) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .holder 20)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 20)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 23)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 22)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.matchOn (.move (.generated .holder 23)) [(.mk (.ordering .less) (.mk [] (.lit (.bool false)))), (.mk (.ordering .same) (.mk [] (.lit (.bool true)))), (.mk (.ordering .more) (.mk [] (.call (.function 7) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]))), + (.function (.generated .function 8) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := (.list .nat) }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 24)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 24)) [(.mk .none (.mk [] (.construct (.nil .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.cond (.call (.function 9) [(.clone (.generated .binding 1)), (.copy (.generated .binding 2))] false) (.mk [] (.call (.function 8) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 8) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)])))))]))), + (.function (.generated .function 9) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .holder 25)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 25)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 28)) none (.block (.mk [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 27)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] false))))] (.matchOn (.move (.generated .holder 28)) [(.mk (.ordering .less) (.mk [] (.lit (.bool false)))), (.mk (.ordering .same) (.mk [] (.lit (.bool true)))), (.mk (.ordering .more) (.mk [] (.call (.function 9) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]))), + (.function (.generated .function 10) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }] .bool (.mk [(.mk (.bind (.generated .holder 29)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 29)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [(.mk (.bind (.generated .holder 30)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 30)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 33)) none (.block (.mk [(.mk (.bind (.generated .operand 31)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))))] (.cond (.matchOn (.move (.generated .holder 33)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 10) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])))]))), + (.function (.generated .function 11) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.option (.pair (.list .nat) (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat))))))))) (.mk [] (.cond (.call (.function 10) [(.clone (.generated .binding 0))] false) (.mk [] (.cond (.call (.function 10) [(.clone (.generated .binding 1))] false) (.mk [] (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 2))] false)])) (.mk [] (.construct (.none (.pair (.list .nat) (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat))))))))) [])))) (.mk [] (.construct (.none (.pair (.list .nat) (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat))))))))) [])))))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [], (.pair (.call (.function 1) [(.clone (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.pair (.call (.function 2) [(.clone (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.pair (.call (.function 3) [(.clone (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.pair (.call (.function 4) [(.clone (.generated .binding 0)), (.clone (.generated .binding 1))] false) (.pair (.call (.function 6) [(.clone (.generated .binding 0)), (.clone (.generated .binding 1))] false) (.pair (.call (.function 8) [(.clone (.generated .binding 0)), (.move (.generated .binding 1))] false) (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthList) [(.move (.generated .operand 1))] false))) (.move (.generated .binding 0))))))))), [(2, .nat, (some 2)), (1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, + (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 1))] false)) (Corr.prim (ts := [(.list .nat)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))))⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 2)) none (.clone (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 2)) [(.mk .none (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil .nat) [])]))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 5)) none (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))))] (.matchOn (.move (.generated .holder 5)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 1) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])))]), [(1, .nat, (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil .nat) [])])) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 5)) none (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))))]) (tail := (.matchOn (.move (.generated .holder 5)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 1) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))])) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.move (.generated .binding 0))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 1) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 6)) none (.clone (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 6)) [(.mk .none (.mk [] (.construct (.nil .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 9)) none (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false))))] (.matchOn (.move (.generated .holder 9)) [(.mk (.ordering .less) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 3)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 2) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])))]), [(1, .nat, (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.nil .nat) [])) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 9)) none (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false))))]) (tail := (.matchOn (.move (.generated .holder 9)) [(.mk (.ordering .less) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 3)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 2) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 0))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.move (.generated .binding 3))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 2) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun3 : FunOK program krate flags 3 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 10)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 10)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))] (.matchOn (.move (.generated .holder 13)) [(.mk (.ordering .less) (.mk [] (.lit (.bool false)))), (.mk (.ordering .same) (.mk [] (.lit (.bool true)))), (.mk (.ordering .more) (.mk [] (.call (.function 3) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]), [(1, .nat, (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))]) (tail := (.matchOn (.move (.generated .holder 13)) [(.mk (.ordering .less) (.mk [] (.lit (.bool false)))), (.mk (.ordering .same) (.mk [] (.lit (.bool true)))), (.mk (.ordering .more) (.mk [] (.call (.function 3) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.call (.function 3) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ + +theorem fun4 : FunOK program krate flags 4 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 14)) none (.move (.generated .binding 1)))], (.matchOn (.uncons (.generated .holder 14)) [(.mk .none (.mk [] (.move (.generated .binding 0)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.call (.function 4) [(.call (.function 5) [(.move (.generated .binding 0)), (.copy (.generated .binding 2))] false), (.move (.generated .binding 3))] false)))]), [(1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 0))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 4) [(.call (.function 5) [(.move (.generated .binding 0)), (.copy (.generated .binding 2))] false), (.move (.generated .binding 3))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ + +theorem fun5 : FunOK program krate flags 5 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 15)) none (.clone (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 15)) [(.mk .none (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil .nat) [])]))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 18)) none (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false))))] (.matchOn (.move (.generated .holder 18)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 5) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])))]), [(1, .nat, (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil .nat) [])])) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 18)) none (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false))))]) (tail := (.matchOn (.move (.generated .holder 18)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 5) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))])) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.move (.generated .binding 0))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 5) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun6 : FunOK program krate flags 6 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 19)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 19)) [(.mk .none (.mk [] (.construct (.nil .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.cond (.call (.function 7) [(.clone (.generated .binding 1)), (.copy (.generated .binding 2))] false) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 6) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)])) (.mk [] (.call (.function 6) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)))))]), [(1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.nil .nat) [])) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 7) [(.clone (.generated .binding 1)), (.copy (.generated .binding 2))] false) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 6) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)])) (.mk [] (.call (.function 6) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 7) [(.clone (.generated .binding 1)), (.copy (.generated .binding 2))] false)) (lk := []) (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 6) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)])) (lb := []) (tb := (.call (.function 6) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)) (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl) (Corr.callOps (ts := [(.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)))) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun7 : FunOK program krate flags 7 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 20)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 20)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 23)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 22)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.matchOn (.move (.generated .holder 23)) [(.mk (.ordering .less) (.mk [] (.lit (.bool false)))), (.mk (.ordering .same) (.mk [] (.lit (.bool true)))), (.mk (.ordering .more) (.mk [] (.call (.function 7) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]), [(1, .nat, (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 23)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 22)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))]) (tail := (.matchOn (.move (.generated .holder 23)) [(.mk (.ordering .less) (.mk [] (.lit (.bool false)))), (.mk (.ordering .same) (.mk [] (.lit (.bool true)))), (.mk (.ordering .more) (.mk [] (.call (.function 7) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 21)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 22)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.call (.function 7) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ + +theorem fun8 : FunOK program krate flags 8 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 24)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 24)) [(.mk .none (.mk [] (.construct (.nil .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.cond (.call (.function 9) [(.clone (.generated .binding 1)), (.copy (.generated .binding 2))] false) (.mk [] (.call (.function 8) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 8) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)])))))]), [(1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.nil .nat) [])) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 9) [(.clone (.generated .binding 1)), (.copy (.generated .binding 2))] false) (.mk [] (.call (.function 8) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 8) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)])))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 9) [(.clone (.generated .binding 1)), (.copy (.generated .binding 2))] false)) (lk := []) (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 8) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)) (lb := []) (tb := (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 8) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)])) (Corr.callOps (ts := [(.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)))) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun9 : FunOK program krate flags 9 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 25)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 25)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 28)) none (.block (.mk [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 27)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] false))))] (.matchOn (.move (.generated .holder 28)) [(.mk (.ordering .less) (.mk [] (.lit (.bool false)))), (.mk (.ordering .same) (.mk [] (.lit (.bool true)))), (.mk (.ordering .more) (.mk [] (.call (.function 9) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]), [(1, .nat, (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 28)) none (.block (.mk [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 27)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] false))))]) (tail := (.matchOn (.move (.generated .holder 28)) [(.mk (.ordering .less) (.mk [] (.lit (.bool false)))), (.mk (.ordering .same) (.mk [] (.lit (.bool true)))), (.mk (.ordering .more) (.mk [] (.call (.function 9) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 27)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.call (.function 9) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ + +theorem fun10 : FunOK program krate flags 10 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 29)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 29)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [(.mk (.bind (.generated .holder 30)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 30)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 33)) none (.block (.mk [(.mk (.bind (.generated .operand 31)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))))] (.cond (.matchOn (.move (.generated .holder 33)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 10) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])))]), [(0, (.list .nat), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 30)) none (.clone (.generated .binding 2)))]) (tail := (.matchOn (.uncons (.generated .holder 30)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 33)) none (.block (.mk [(.mk (.bind (.generated .operand 31)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))))] (.cond (.matchOn (.move (.generated .holder 33)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 10) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list .nat), none), (3, .nat, (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 33)) none (.block (.mk [(.mk (.bind (.generated .operand 31)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 33)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 10) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .holder 33)) none (.block (.mk [(.mk (.bind (.generated .operand 31)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))))]) (ce := (.matchOn (.move (.generated .holder 33)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 31)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 3)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.list .nat), none), (3, .nat, (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list .nat), none), (3, .nat, (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, (.list .nat), none), (3, .nat, (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 10) [(.move (.generated .binding 2))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ + +theorem fun11 : FunOK program krate flags 11 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 10) [(.clone (.generated .binding 0))] false) (.mk [] (.cond (.call (.function 10) [(.clone (.generated .binding 1))] false) (.mk [] (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 2))] false)])) (.mk [] (.construct (.none (.pair (.list .nat) (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat))))))))) [])))) (.mk [] (.construct (.none (.pair (.list .nat) (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat))))))))) []))), [(2, .nat, (some 2)), (1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 10) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 10) [(.clone (.generated .binding 1))] false) (.mk [] (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 2))] false)])) (.mk [] (.construct (.none (.pair (.list .nat) (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat))))))))) [])))) (lb := []) (tb := (.construct (.none (.pair (.list .nat) (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat))))))))) [])) (Corr.cond (lc := []) (ce := (.call (.function 10) [(.clone (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [(.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 2))] false)])) (lb := []) (tb := (.construct (.none (.pair (.list .nat) (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat))))))))) [])) (Corr.build (ts := [(.pair (.list .nat) (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat))))))))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), (.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | 3 => exact fun3 + | 4 => exact fun4 + | 5 => exact fun5 + | 6 => exact fun6 + | 7 => exact fun7 + | 8 => exact fun8 + | 9 => exact fun9 + | 10 => exact fun10 + | 11 => exact fun11 + | _ + 12 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R30.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R30.lean similarity index 98% rename from examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R30.lean rename to examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R30.lean index 7b68b3468..21755242b 100644 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R30.lean +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R30.lean @@ -18,7 +18,7 @@ set_option maxRecDepth 100000 set_option maxHeartbeats 0 set_option synthInstance.maxHeartbeats 0 set_option linter.unusedVariables false -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30 def __prog : _root_.LexLeanTarget.TargetSyntax.Program := { adts := [{ constructors := [[.nat, (.list (.adt 0))]] }], functions := [ @@ -79,4 +79,4 @@ def denote (n : Nat) : _root_.LexLeanPreservation.Obs := theorem root (n : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat n)] (_root_.LexLeanPreservation.Rel (__fits_0 n) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Coverage.RecRoots.roseTotal n))) := _root_.LexLeanPreservation.run_of_funRel (__rel_0 n) -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30 +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30 diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R30/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R30/Compose/RustStd.lex.tex new file mode 100644 index 000000000..d781c7f7a --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R30/Compose/RustStd.lex.tex @@ -0,0 +1,637 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.Compose.RustStd.__wt_0 : @689 := @688 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.Compose.RustStd.__wt_0], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.Compose.RustStd.__wtItems_0 : @699 := @698 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.Compose.RustStd.__wtItems_0], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.Compose.RustStd.root : @1328 := @1329 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.RustStd.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.RustStd.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.RustStd.flags +@3 := Nat +@5 := Coverage.Syntax.Rose @3 +@6 := #0 +@7 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.__enc_0 +@8 := @7 @6 +@9 := LexLeanPreservation.Rust.WT +@10 := LexLeanTarget.TargetSyntax.Ty.adt +@11 := 0 +@12 := @10 @11 +@13 := @9 @0 +@14 := @13 @1 +@15 := @14 @2 +@17 := @15 @8 @12 +@18 := fun (__v : @5) => @17 +@19 := List.{0} +@20 := @19 @5 +@21 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.__items_0 +@22 := @21 @6 +@23 := LexLeanPreservation.Rust.WTAll +@24 := @23 @0 +@25 := @24 @1 +@26 := @25 @2 +@28 := @26 @22 @12 +@29 := fun (__v : @20) => @28 +@30 := #2 +@31 := #1 +@32 := LexLeanTarget.TargetSyntax.Value.nat +@33 := @32 @30 +@34 := LexLeanTarget.TargetSyntax.Ty.nat +@35 := LexLeanTarget.TargetSyntax.Program +@36 := LexLeanPreservation.Rust.RCrate +@37 := LexLeanPreservation.Rust.Flags +@38 := #3 +@41 := @9 @38 @30 @31 +@42 := @32 @6 +@48 := {p : @35} -> {c : @36} -> {A : @37} -> (n : @3) -> @41 @42 @34 +@50 := LexLeanPreservation.Rust.wt_nat @0 +@57 := {c : @36} -> {A : @37} -> (n : @3) -> @13 @30 @31 @42 @34 +@58 := @50 @1 +@63 := {A : @37} -> (n : @3) -> @14 @31 @42 @34 +@64 := @58 @2 +@67 := (n : @3) -> @15 @42 @34 +@68 := @64 @30 +@70 := @15 @33 @34 +@71 := LexLeanPreservation.ListEnc.enc +@72 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.__L_0 +@74 := @71 @5 @72 +@75 := @74 @31 +@76 := LexLeanTarget.TargetSyntax.Ty.list +@77 := @76 @12 +@78 := @21 @31 +@79 := LexLeanTarget.TargetSyntax.Value +@80 := @19 @79 +@81 := LexLeanTarget.TargetSyntax.Ty +@82 := #4 +@87 := @23 @82 @38 @30 @31 @6 +@88 := #5 +@91 := @9 @88 @82 @38 +@92 := LexLeanTarget.TargetSyntax.Value.list +@93 := @92 @30 +@94 := @91 @93 +@95 := @76 @31 +@102 := {p : @35} -> {c : @36} -> {A : @37} -> {vs : @80} -> {t : @81} -> (h : @87) -> @94 @95 +@104 := LexLeanPreservation.Rust.wt_list @0 +@108 := @24 @38 @30 @31 @6 +@110 := @13 @82 @38 +@117 := {c : @36} -> {A : @37} -> {vs : @80} -> {t : @81} -> (h : @108) -> @110 @93 @95 +@118 := @104 @1 +@121 := @25 @30 @31 @6 +@122 := @14 @38 +@128 := {A : @37} -> {vs : @80} -> {t : @81} -> (h : @121) -> @122 @93 @95 +@129 := @118 @2 +@136 := {vs : @80} -> {t : @81} -> (h : @26 @31 @6) -> @15 @93 @95 +@137 := @129 @78 +@138 := @21 @30 +@139 := @26 @138 +@140 := @139 @6 +@141 := @21 @38 +@146 := {t : @81} -> (h : @140) -> @15 (@92 @141) @95 +@147 := @137 @12 +@149 := @26 @78 @12 +@153 := (h : @149) -> @15 (@92 @138) @77 +@154 := @147 @6 +@157 := @15 (@92 @78) @77 +@158 := List.nil.{0} +@159 := List.cons.{0} +@160 := @158 @79 +@161 := @159 @79 +@163 := @161 @75 @160 +@164 := @161 @33 +@165 := @164 @163 +@166 := @158 @81 +@167 := @159 @81 +@168 := @167 @77 +@169 := @168 @166 +@170 := @167 @34 +@171 := @170 @169 +@172 := LexLeanPreservation.Rust.WTL +@180 := {p : @35} -> {c : @36} -> {A : @37} -> @172 @30 @31 @6 @160 @166 +@182 := LexLeanPreservation.Rust.wtl_nil @0 +@183 := @172 @0 +@189 := {c : @36} -> {A : @37} -> @183 @31 @6 @160 @166 +@190 := @182 @1 +@191 := @183 @1 +@195 := {A : @37} -> @191 @6 @160 @166 +@196 := @190 @2 +@197 := @191 @2 +@198 := @197 @160 +@199 := @198 @166 +@200 := @19 @81 +@201 := #6 +@206 := @9 @201 @88 @82 @38 @30 +@207 := #7 +@212 := @172 @207 @201 @88 @30 @31 +@213 := #8 +@216 := @172 @213 @207 @201 +@218 := @161 @88 @38 +@219 := @216 @218 +@221 := @167 @82 @30 +@231 := {p : @35} -> + {c : @36} -> + {A : @37} -> + {v : @79} -> {t : @81} -> {vs : @80} -> {ts : @200} -> (h : @206) -> (hs : @212) -> @219 @221 +@233 := LexLeanPreservation.Rust.wtl_cons @0 +@237 := @13 @88 @82 @38 @30 +@241 := @183 @201 @88 @30 @31 +@253 := {c : @36} -> + {A : @37} -> + {v : @79} -> + {t : @81} -> {vs : @80} -> {ts : @200} -> (h : @237) -> (hs : @241) -> @183 @207 @201 @218 @221 +@254 := @233 @1 +@257 := @14 @82 @38 @30 +@260 := @191 @88 @30 @31 +@270 := {A : @37} -> + {v : @79} -> + {t : @81} -> {vs : @80} -> {ts : @200} -> (h : @257) -> (hs : @260) -> @191 @201 @218 @221 +@271 := @254 @2 +@273 := @15 @38 @30 +@275 := @197 @30 @31 +@283 := {v : @79} -> + {t : @81} -> {vs : @80} -> {ts : @200} -> (h : @273) -> (hs : @275) -> @197 @218 @221 +@284 := @271 @75 +@285 := @74 @82 +@297 := {t : @81} -> + {vs : @80} -> {ts : @200} -> (h : @15 @285 @30) -> (hs : @275) -> @197 (@161 (@74 @201) @38) @221 +@298 := @284 @77 +@299 := @74 @38 +@301 := @15 @299 @77 +@305 := @197 (@161 (@74 @88) @38) +@306 := @168 @30 +@311 := {vs : @80} -> {ts : @200} -> (h : @301) -> (hs : @275) -> @305 @306 +@312 := @298 @160 +@313 := @74 @30 +@315 := @15 @313 @77 +@316 := @198 @31 +@318 := @161 @285 @160 +@323 := {ts : @200} -> (h : @315) -> (hs : @316) -> @197 @318 @306 +@324 := @312 @166 +@326 := @15 @75 @77 +@328 := @161 @299 @160 +@329 := @197 @328 +@332 := (h : @326) -> (hs : @199) -> @329 @169 +@333 := @324 @154 +@335 := @161 @313 @160 +@337 := @197 @335 @169 +@338 := (hs : @199) -> @337 +@339 := @333 @196 +@341 := @197 @163 @169 +@342 := @271 @33 +@343 := @32 @88 +@345 := @15 @343 @30 +@347 := @161 (@32 @207) +@355 := {t : @81} -> {vs : @80} -> {ts : @200} -> (h : @345) -> (hs : @275) -> @197 (@347 @38) @221 +@356 := @342 @34 +@357 := @32 @82 +@358 := @15 @357 +@359 := @358 @34 +@360 := @32 @201 +@361 := @161 @360 +@363 := @197 (@361 @38) +@364 := @170 @30 +@369 := {vs : @80} -> {ts : @200} -> (h : @359) -> (hs : @275) -> @363 @364 +@370 := @356 @163 +@371 := @32 @38 +@373 := @15 @371 @34 +@374 := @329 @31 +@375 := @161 @343 +@376 := @375 @318 +@381 := {ts : @200} -> (h : @373) -> (hs : @374) -> @197 @376 @364 +@382 := @370 @169 +@383 := @161 @357 +@384 := @383 @328 +@385 := @197 @384 +@388 := (h : @70) -> (hs : @337) -> @385 @171 +@389 := @382 @68 +@390 := @161 @371 +@391 := @390 @335 +@393 := @197 @391 @171 +@394 := (hs : @341) -> @393 +@395 := @389 @339 +@397 := @197 @165 @171 +@398 := Eq.{1} +@399 := Option.{0} +@400 := @399 @200 +@401 := @398 @400 +@402 := LexLeanPreservation.Rust.adtFields +@406 := @401 (@402 @201 @38 @30) +@407 := Option.some.{0} +@408 := @407 @200 +@409 := @408 @6 +@410 := @406 @409 +@413 := @9 @213 @207 @201 +@414 := LexLeanTarget.TargetSyntax.Value.adt +@416 := @414 @82 @38 +@417 := @413 @416 +@418 := @10 @88 +@428 := {p : @35} -> + {c : @36} -> + {A : @37} -> + {i : @3} -> {k : @3} -> {fs : @80} -> {tys : @200} -> (h : @410) -> (hf : @212) -> @417 @418 +@430 := LexLeanPreservation.Rust.wt_adt @0 +@431 := @402 @0 +@435 := @401 (@431 @38 @30) @409 +@447 := {c : @36} -> + {A : @37} -> + {i : @3} -> + {k : @3} -> {fs : @80} -> {tys : @200} -> (h : @435) -> (hf : @241) -> @13 @207 @201 @416 @418 +@448 := @430 @1 +@458 := {A : @37} -> + {i : @3} -> + {k : @3} -> {fs : @80} -> {tys : @200} -> (h : @435) -> (hf : @260) -> @14 @201 @416 @418 +@459 := @448 @2 +@460 := @15 @416 +@467 := {i : @3} -> {k : @3} -> {fs : @80} -> {tys : @200} -> (h : @435) -> (hf : @275) -> @460 @418 +@468 := @459 @11 +@469 := @431 @11 +@478 := {k : @3} -> + {fs : @80} -> {tys : @200} -> (h : @401 (@469 @30) @409) -> (hf : @275) -> @460 @12 +@479 := @468 @11 +@480 := @469 @11 +@481 := @401 @480 +@482 := @481 @409 +@483 := @414 @11 +@490 := {fs : @80} -> {tys : @200} -> (h : @482) -> (hf : @275) -> @15 (@483 @38) @12 +@491 := @479 @165 +@498 := {tys : @200} -> (h : @482) -> (hf : @385 @31) -> @15 (@483 @376) @12 +@499 := @491 @171 +@506 := (h : @481 (@408 @171)) -> (hf : @393) -> @15 (@483 @384) @12 +@507 := Eq.refl.{1} +@510 := @499 (@507 @400 @480) +@514 := (hf : @397) -> @15 (@483 @391) @12 +@515 := @510 @395 +@518 := @15 (@483 @165) @12 +@521 := fun (__x0 : @3) => fun (__x1 : @20) => fun (__ih0 : @28) => @515 +@530 := {p : @35} -> {c : @36} -> {A : @37} -> {t : @81} -> @23 @38 @30 @31 @160 @6 +@532 := LexLeanPreservation.Rust.wtAll_nil @0 +@539 := {c : @36} -> {A : @37} -> {t : @81} -> @24 @30 @31 @160 @6 +@540 := @532 @1 +@545 := {A : @37} -> {t : @81} -> @25 @31 @160 @6 +@546 := @540 @2 +@547 := @26 @160 +@549 := {t : @81} -> @547 @6 +@550 := @546 @12 +@551 := @547 @12 +@552 := @7 @38 +@554 := @91 @30 @6 +@559 := @23 @201 @88 @82 @30 @31 +@562 := @23 @207 @201 @88 +@564 := @161 @82 @38 +@574 := {p : @35} -> + {c : @36} -> + {A : @37} -> {v : @79} -> {vs : @80} -> {t : @81} -> (h : @554) -> (hs : @559) -> @562 @564 @30 +@576 := LexLeanPreservation.Rust.wtAll_cons @0 +@593 := {c : @36} -> + {A : @37} -> + {v : @79} -> + {vs : @80} -> + {t : @81} -> (h : @110 @30 @6) -> (hs : @24 @88 @82 @30 @31) -> @24 @201 @88 @564 @30 +@594 := @576 @1 +@608 := {A : @37} -> + {v : @79} -> + {vs : @80} -> {t : @81} -> (h : @122 @30 @6) -> (hs : @25 @82 @30 @31) -> @25 @88 @564 @30 +@609 := @594 @2 +@611 := @15 @30 @6 +@613 := @26 @30 @31 +@620 := {v : @79} -> {vs : @80} -> {t : @81} -> (h : @611) -> (hs : @613) -> @26 @564 @30 +@621 := @609 @552 +@622 := @7 @88 +@633 := {vs : @80} -> {t : @81} -> (h : @15 @622 @6) -> (hs : @613) -> @26 (@161 (@7 @207) @38) @30 +@634 := @621 @138 +@635 := @7 @82 +@637 := @15 @635 @6 +@638 := @21 @82 +@649 := {t : @81} -> (h : @637) -> (hs : @26 @638 @31) -> @26 (@161 (@7 @201) (@21 @88)) @30 +@650 := @634 @12 +@660 := (h : @15 @552 @12) -> (hs : @26 @141 @12) -> @26 (@161 @622 @638) @12 +@661 := @650 @31 +@667 := (hs : @139 @12) -> @26 (@161 @635 @141) @12 +@668 := @661 @6 +@672 := @26 (@161 @552 @138) @12 +@673 := fun (__ih1 : @149) => @668 +@679 := fun (__x0 : @5) => fun (__x1 : @20) => fun (__ih0 : @15 (@7 @31) @12) => @673 +@688 := fun (__v : @5) => Coverage.Syntax.Rose.rec.{0} @3 @18 @29 @521 @550 @679 @6 +@689 := (__v : @5) -> @17 +@698 := fun (__v : @20) => Coverage.Syntax.Rose.rec_1.{0} @3 @18 @29 @521 @550 @679 @6 +@699 := (__v : @20) -> @28 +@700 := @32 @31 +@701 := @64 @31 +@703 := @15 @700 @34 +@705 := @161 @700 @160 +@708 := Prod.{0, 0} @3 @79 +@712 := Prod.mk.{0, 0} @3 @79 @11 +@713 := @712 @700 +@714 := @158 @708 +@715 := @159 @708 +@717 := @715 @713 @714 +@718 := Bool.true +@719 := LexLeanTarget.TargetSyntax.Function +@720 := LexLeanTarget.TargetSyntax.Program.functions +@721 := @720 @0 +@722 := @158 @3 +@723 := LexLeanTarget.TargetSyntax.Ty.unit +@724 := LexLeanTarget.TargetSyntax.Value.unit +@727 := LexLeanTarget.TargetSyntax.Expr.value @723 @724 +@732 := LexLeanTarget.TargetSyntax.Function.mk @722 @166 @723 @727 +@737 := List.getD.{0} @719 @721 @11 @732 +@741 := fun (__e_n : @3) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.RustStd.root @6 @11 +@742 := @271 @700 +@749 := {t : @81} -> {vs : @80} -> {ts : @200} -> (h : @358 @30) -> (hs : @275) -> @363 @221 +@750 := @742 @34 +@757 := {vs : @80} -> {ts : @200} -> (h : @373) -> (hs : @275) -> @197 (@375 @38) @364 +@758 := @750 @160 +@759 := @383 @160 +@760 := @197 @759 +@764 := {ts : @200} -> (h : @70) -> (hs : @316) -> @760 @364 +@765 := @758 @166 +@766 := @390 @160 +@767 := @197 @766 +@768 := @170 @166 +@771 := (h : @703) -> (hs : @199) -> @767 @768 +@772 := @765 @701 +@773 := @164 @160 +@774 := @197 @773 +@776 := (hs : @199) -> @774 @768 +@777 := @772 @196 +@778 := @197 @705 +@779 := @778 @768 +@780 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.denote +@781 := @780 @31 +@782 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.__fits_0 +@783 := @782 @31 +@786 := @32 (Coverage.RecRoots.roseTotal @31) +@788 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.root @31 +@789 := Bool +@790 := Ne.{1} +@791 := LexLeanPreservation.Obs +@792 := @790 @791 +@793 := LexLeanPreservation.Rel +@796 := @792 (@793 @31 @6) +@797 := LexLeanPreservation.Obs.stuck +@800 := (f : @789) -> (v : @79) -> @796 @797 +@802 := LexLeanPreservation.Rust.rel_ne_stuck @783 +@808 := (v : @79) -> @792 (@793 (@782 @30) @6) @797 +@809 := @802 @786 +@813 := @792 (@793 @783 @786) @797 +@814 := @19 @708 +@815 := LexLeanPreservation.Rust.FunSem +@816 := #9 +@822 := (n : @3) -> @815 @816 @213 @207 @6 @201 +@823 := @399 @719 +@824 := @398 @823 +@831 := LexLeanRuntime.index (@19 @719) @719 (LexLeanRuntime.instIndexableList @719) +@835 := @824 (@831 (@720 @816) @201) +@836 := @407 @719 +@837 := @836 @88 +@838 := @835 @837 +@839 := #10 +@843 := @172 @839 @816 @213 @88 +@844 := LexLeanTarget.TargetSyntax.Function.types +@845 := @844 @201 +@846 := @843 @845 +@847 := @399 @814 +@848 := @398 @847 +@849 := LexLeanTarget.TargetSemantics.bindAll +@850 := LexLeanTarget.TargetSyntax.Function.parameters +@855 := @848 (@849 (@850 @207) @201 @714) +@856 := @407 @814 +@857 := @856 @88 +@858 := @855 @857 +@859 := @399 @789 +@860 := @398 @859 +@861 := LexLeanPreservation.Rust.fnFallible +@862 := #11 +@865 := @860 (@861 @862 @816) +@866 := @407 @789 +@867 := @866 @88 +@868 := @865 @867 +@869 := LexLeanPreservation.RunConv +@870 := #13 +@874 := @869 @870 @839 @213 @88 +@876 := @792 @201 @797 +@877 := Exists.{1} +@878 := LexLeanPreservation.Rust.ROut +@879 := @877 @878 +@880 := And +@881 := LexLeanPreservation.Rust.RealizesFn +@885 := @880 (@881 @816 @213 @6) +@886 := LexLeanPreservation.Rust.RCI +@888 := @886 #15 +@889 := LexLeanPreservation.Rust.fnIdent +@890 := @889 @870 +@897 := (hne : @876) -> @879 (fun (ro : @878) => @885 (@888 @890 @862 @6)) +@912 := {p : @35} -> + {c : @36} -> + {A : @37} -> + {f : @3} -> + {fn : @719} -> + {args : @80} -> + {env : @814} -> + {F : @789} -> + {o : @791} -> + (hB : @822) -> + (hfn : @838) -> (hwt : @846) -> (hbind : @858) -> (hF : @868) -> (hA : @874) -> @897 +@914 := LexLeanPreservation.Rust.compose @0 +@915 := @815 @0 +@920 := (n : @3) -> @915 @213 @207 @6 @201 +@921 := @831 @721 +@924 := @824 (@921 @201) @837 +@928 := @183 @816 @213 @88 @845 +@929 := @869 @0 +@932 := @929 @839 @213 @88 +@946 := {c : @36} -> + {A : @37} -> + {f : @3} -> + {fn : @719} -> + {args : @80} -> + {env : @814} -> + {F : @789} -> + {o : @791} -> + (hB : @920) -> + (hfn : @924) -> (hwt : @928) -> (hbind : @858) -> (hF : @868) -> (hA : @932) -> @897 +@947 := @914 @1 +@948 := @915 @1 +@952 := (n : @3) -> @948 @207 @6 @201 +@955 := @191 @213 @88 @845 +@956 := @861 @1 +@959 := @860 (@956 @816) @867 +@960 := @886 @1 +@970 := (hbind : @858) -> + (hF : @959) -> (hA : @932) -> (hne : @876) -> @879 (fun (ro : @878) => @885 (@960 @890 @862 @6)) +@980 := {A : @37} -> + {f : @3} -> + {fn : @719} -> + {args : @80} -> + {env : @814} -> {F : @789} -> {o : @791} -> (hB : @952) -> (hfn : @924) -> (hwt : @955) -> @970 +@981 := @947 @2 +@983 := @948 @2 @6 +@985 := (n : @3) -> @983 @201 +@986 := @197 @88 +@987 := @986 @845 +@996 := {f : @3} -> + {fn : @719} -> + {args : @80} -> + {env : @814} -> {F : @789} -> {o : @791} -> (hB : @985) -> (hfn : @924) -> (hwt : @987) -> @970 +@997 := @981 @11 +@999 := (n : @3) -> @983 @11 +@1000 := @921 @11 +@1001 := @824 @1000 +@1002 := @1001 @837 +@1003 := @956 @11 +@1004 := @860 @1003 +@1005 := @1004 @867 +@1006 := @929 @11 +@1008 := @1006 @213 @88 +@1010 := @960 (@889 @11) +@1018 := (hF : @1005) -> + (hA : @1008) -> (hne : @876) -> @879 (fun (ro : @878) => @885 (@1010 @862 @6)) +@1027 := {fn : @719} -> + {args : @80} -> + {env : @814} -> + {F : @789} -> + {o : @791} -> (hB : @999) -> (hfn : @1002) -> (hwt : @987) -> (hbind : @858) -> @1018 +@1028 := @997 @737 +@1030 := @1001 (@836 @737) +@1031 := @844 @737 +@1032 := @986 @1031 +@1034 := @849 (@850 @737) +@1046 := {args : @80} -> + {env : @814} -> + {F : @789} -> + {o : @791} -> + (hB : @999) -> (hfn : @1030) -> (hwt : @1032) -> (hbind : @848 (@1034 @201 @714) @857) -> @1018 +@1047 := @1028 @705 +@1048 := @361 @160 +@1050 := @197 @1048 @1031 +@1051 := @347 @160 +@1055 := @848 (@1034 @1051 @714) @857 +@1058 := @161 (@32 @816) @160 +@1079 := {env : @814} -> + {F : @789} -> + {o : @791} -> + (hB : @999) -> + (hfn : @1030) -> + (hwt : @1050) -> + (hbind : @1055) -> + (hF : @1005) -> + (hA : @1006 @1058 @88) -> + (hne : @876) -> @879 (fun (ro : @878) => @885 (@1010 (@161 (@32 #12) @160) @6)) +@1080 := @1047 @717 +@1081 := @375 @160 +@1083 := @197 @1081 @1031 +@1091 := @848 (@1034 @1048 @714) (@856 (@715 (@712 @360) @714)) +@1094 := @161 (@32 @213) @160 +@1113 := {F : @789} -> + {o : @791} -> + (hB : @999) -> + (hfn : @1030) -> + (hwt : @1083) -> + (hbind : @1091) -> + (hF : @1005) -> + (hA : @1006 @1094 @88) -> + (hne : @876) -> @879 (fun (ro : @878) => @885 (@1010 (@161 (@32 @862) @160) @6)) +@1114 := @1080 @718 +@1115 := @760 @1031 +@1123 := @848 (@1034 @1081 @714) (@856 (@715 (@712 @343) @714)) +@1125 := @1004 (@866 @718) +@1127 := @1006 @1051 @88 +@1128 := @881 @718 +@1147 := {o : @791} -> + (hB : @999) -> + (hfn : @1030) -> + (hwt : @1115) -> + (hbind : @1123) -> + (hF : @1125) -> + (hA : @1127) -> + (hne : @876) -> @879 (fun (ro : @878) => @880 (@1128 @213 @6) (@1010 (@161 (@32 @839) @160) @6)) +@1148 := @1114 @781 +@1149 := @767 @1031 +@1157 := @848 (@1034 @759 @714) (@856 (@715 (@712 @357) @714)) +@1158 := @1006 @1048 +@1159 := @780 @201 +@1160 := @1158 @1159 +@1161 := @780 @207 +@1179 := (hB : @999) -> + (hfn : @1030) -> + (hwt : @1149) -> + (hbind : @1157) -> + (hF : @1125) -> + (hA : @1160) -> + (hne : @792 @1161 @797) -> @879 (fun (ro : @878) => @880 (@1128 (@780 @816) @6) (@1010 @1058 @6)) +@1180 := @1148 @741 +@1181 := @774 @1031 +@1189 := @848 (@1034 @766 @714) (@856 (@715 (@712 @371) @714)) +@1190 := @1006 @1081 +@1191 := @780 @88 +@1209 := (hfn : @1030) -> + (hwt : @1181) -> + (hbind : @1189) -> + (hF : @1125) -> + (hA : @1190 @1191) -> + (hne : @792 @1159 @797) -> @879 (fun (ro : @878) => @880 (@1128 (@780 @213) @6) (@1010 @1094 @6)) +@1212 := @1180 (@507 @823 @1000) +@1213 := @778 @1031 +@1221 := @848 (@1034 @773 @714) (@856 (@715 (@712 @33) @714)) +@1222 := @1006 @759 +@1223 := @780 @82 +@1239 := (hwt : @1213) -> + (hbind : @1221) -> + (hF : @1125) -> + (hA : @1222 @1223) -> + (hne : @792 @1191 @797) -> @879 (fun (ro : @878) => @880 (@1128 @1161 @6) (@1010 @1051 @6)) +@1240 := @1212 @777 +@1242 := @1034 @705 @714 +@1245 := @848 @1242 (@856 @717) +@1246 := @1006 @766 +@1247 := @780 @38 +@1262 := (hbind : @1245) -> + (hF : @1125) -> + (hA : @1246 @1247) -> + (hne : @792 @1223 @797) -> @879 (fun (ro : @878) => @880 (@1128 @1159 @6) (@1010 @1048 @6)) +@1265 := @1240 (@507 @847 @1242) +@1266 := @1006 @773 +@1267 := @780 @30 +@1281 := (hF : @1125) -> + (hA : @1266 @1267) -> + (hne : @792 @1247 @797) -> @879 (fun (ro : @878) => @880 (@1128 @1191 @6) (@1010 @1081 @6)) +@1284 := @1265 (@507 @859 @1003) +@1298 := (hA : @1006 @705 @781) -> + (hne : @792 @1267 @797) -> @879 (fun (ro : @878) => @880 (@1128 @1223 @6) (@1010 @759 @6)) +@1299 := @1284 @788 +@1310 := (hne : @792 @781 @797) -> @879 (fun (ro : @878) => @880 (@1128 @1247 @6) (@1010 @766 @6)) +@1311 := @1299 @809 +@1317 := @880 (@1128 @1267 @6) (@1010 @773 @6) +@1319 := @879 (fun (ro : @878) => @1317) +@1321 := @879 (fun (__e_ro : @878) => @1317) +@1325 := LexLeanPreservation.Rust.RepresentableL (@161 @42 @160) +@1326 := (__e_hrep : @1325) -> @1321 +@1327 := fun (__e_hrep : @1325) => @1311 +@1328 := (n : @3) -> @1326 +@1329 := fun (n : @3) => @1327 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R30/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R30/RustStd.lean new file mode 100644 index 000000000..d47e4e36a --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R30/RustStd.lean @@ -0,0 +1,50 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [{ constructors := [[.nat, (.list (.adt 0))]] }], functions := [ + { parameters := [0], types := [.nat], result := .nat, + body := (.call 1 [(.build (.adt 0) (.adt 0) [(.var 0), (.build .cons (.list (.adt 0)) [(.build (.adt 0) (.adt 0) [(.value .nat (.nat 1)), (.build .nil (.list (.adt 0)) [])]), (.build .nil (.list (.adt 0)) [])])])]) }, + { parameters := [0], types := [(.adt 0)], result := .nat, + body := (.«match» .nat (.var 0) [(.arm (.adt 0) [1, 2] (.prim .natAdd [(.value .nat (.nat 1)), (.call 2 [(.var 2)])]))]) }, + { parameters := [0], types := [(.list (.adt 0))], result := .nat, + body := (.«match» .nat (.var 0) [(.arm .nil [] (.value .nat (.nat 0))), (.arm .cons [1, 2] (.prim .natAdd [(.call 1 [(.var 1)]), (.call 2 [(.var 2)])]))]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.enum (.adt 0) [{ number := 0, fields := [.nat, (.list (.adt 0))] }]), + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible .nat) (.mk [] (.call (.function 1) [(.construct (.adt 0 0) [(.copy (.generated .binding 0)), (.construct .cons [(.construct (.adt 0 0) [(.lit (.nat 1)), (.construct (.nil (.adt 0)) [])]), (.construct (.nil (.adt 0)) [])])])] false))), + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 1)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .binding 2))]) (.mk [(.mk (.bind (.generated .operand 2)) none (.lit (.nat 1))), (.mk (.bind (.generated .operand 3)) none (.call (.function 2) [(.move (.generated .binding 2))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] false)))]))), + (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.adt 0)) }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 4)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 4)) [(.mk .none (.mk [] (.succeed (.lit (.nat 0))))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [(.mk (.bind (.generated .operand 5)) none (.call (.function 1) [(.move (.generated .binding 1))] true)), (.mk (.bind (.generated .operand 6)) none (.call (.function 2) [(.move (.generated .binding 2))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false)))])))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 1) [(.construct (.adt 0 0) [(.copy (.generated .binding 0)), (.construct .cons [(.construct (.adt 0 0) [(.lit (.nat 1)), (.construct (.nil (.adt 0)) [])]), (.construct (.nil (.adt 0)) [])])])] false), [(0, .nat, (some 0))], rfl, rfl, + (Corr.callF (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list (.adt 0))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.adt 0), (.list (.adt 0))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list (.adt 0))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil))) rfl rfl rfl rfl)⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 1)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .binding 2))]) (.mk [(.mk (.bind (.generated .operand 2)) none (.lit (.nat 1))), (.mk (.bind (.generated .operand 3)) none (.call (.function 2) [(.move (.generated .binding 2))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] false)))]), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.adt 0)) (U := []) (view := false) (idx := [0]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.adt 0)), (some 2)), (1, .nat, none), (0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .operand 2)) none (.lit (.nat 1))), (.mk (.bind (.generated .operand 3)) none (.call (.function 2) [(.move (.generated .binding 2))] true))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] false)) (Corr.mNil) rfl rfl rfl (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.adt 0))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl)⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 4)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 4)) [(.mk .none (.mk [] (.succeed (.lit (.nat 0))))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [(.mk (.bind (.generated .operand 5)) none (.call (.function 1) [(.move (.generated .binding 1))] true)), (.mk (.bind (.generated .operand 6)) none (.call (.function 2) [(.move (.generated .binding 2))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false)))]), [(0, (.list (.adt 0)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.adt 0))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list (.adt 0)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.lit (.nat 0)))) (Corr.mCons (Γ' := [(2, (.list (.adt 0)), (some 2)), (1, (.adt 0), (some 1)), (0, (.list (.adt 0)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .operand 5)) none (.call (.function 1) [(.move (.generated .binding 1))] true)), (.mk (.bind (.generated .operand 6)) none (.call (.function 2) [(.move (.generated .binding 2))] true))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false)) (Corr.mNil) rfl rfl rfl (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.adt 0))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl)))) rfl rfl rfl)⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | _ + 3 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R31.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R31.lean similarity index 99% rename from examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R31.lean rename to examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R31.lean index a6afc65d2..16c1f173d 100644 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R31.lean +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R31.lean @@ -18,7 +18,7 @@ set_option maxRecDepth 100000 set_option maxHeartbeats 0 set_option synthInstance.maxHeartbeats 0 set_option linter.unusedVariables false -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31 def __prog : _root_.LexLeanTarget.TargetSyntax.Program := { adts := [{ constructors := [[.nat], [(.adt 0), (.adt 0)], [(.list (.adt 1)), (.adt 0)]] }, @@ -102,4 +102,4 @@ def denote (e : (Coverage.Syntax.Expr)) : _root_.LexLeanPreservation.Obs := theorem root (e : (Coverage.Syntax.Expr)) : _root_.LexLeanPreservation.RunConv __prog 0 [(__enc_0 e)] (_root_.LexLeanPreservation.Rel (__fits_0 e) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Coverage.RecRoots.syntaxTotal e))) := _root_.LexLeanPreservation.run_of_funRel (__rel_0 e) -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31 +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31 diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R31/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R31/Compose/RustStd.lex.tex new file mode 100644 index 000000000..113fc51d8 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R31/Compose/RustStd.lex.tex @@ -0,0 +1,885 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.Compose.RustStd.__wt_0 : @1187 := @1186 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.Compose.RustStd.__wt_0], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.Compose.RustStd.__wt_1 : @1201 := @1200 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.Compose.RustStd.__wt_1], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.Compose.RustStd.__wtItems_0 : @1215 := @1214 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.Compose.RustStd.__wtItems_0], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.Compose.RustStd.root : @1800 := @1801 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.RustStd.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.RustStd.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.RustStd.flags +@3 := Coverage.Syntax.Expr +@4 := #0 +@5 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.__enc_0 +@6 := @5 @4 +@7 := LexLeanPreservation.Rust.WT +@8 := LexLeanTarget.TargetSyntax.Ty.adt +@9 := 0 +@10 := @8 @9 +@11 := @7 @0 +@12 := @11 @1 +@13 := @12 @2 +@15 := @13 @6 @10 +@16 := fun (__v : @3) => @15 +@17 := Coverage.Syntax.Stmt +@18 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.__enc_1 +@19 := @18 @4 +@20 := 1 +@21 := @8 @20 +@23 := @13 @19 @21 +@24 := fun (__v : @17) => @23 +@25 := List.{0} +@26 := @25 @17 +@27 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.__items_0 +@28 := @27 @4 +@29 := LexLeanPreservation.Rust.WTAll +@30 := @29 @0 +@31 := @30 @1 +@32 := @31 @2 +@34 := @32 @28 @21 +@35 := fun (__v : @26) => @34 +@36 := LexLeanTarget.TargetSyntax.Value.nat +@37 := @36 @4 +@38 := LexLeanTarget.TargetSyntax.Ty.nat +@39 := LexLeanTarget.TargetSyntax.Program +@40 := LexLeanPreservation.Rust.RCrate +@41 := LexLeanPreservation.Rust.Flags +@42 := Nat +@43 := #3 +@44 := @7 @43 +@45 := #2 +@46 := @44 @45 +@47 := #1 +@48 := @46 @47 +@54 := {p : @39} -> {c : @40} -> {A : @41} -> (n : @42) -> @48 @37 @38 +@56 := LexLeanPreservation.Rust.wt_nat @0 +@58 := @11 @45 @47 +@63 := {c : @40} -> {A : @41} -> (n : @42) -> @58 @37 @38 +@64 := @56 @1 +@65 := @12 @47 +@69 := {A : @41} -> (n : @42) -> @65 @37 @38 +@70 := @64 @2 +@72 := @13 @37 @38 +@73 := (n : @42) -> @72 +@74 := @70 @4 +@75 := LexLeanTarget.TargetSyntax.Value +@76 := LexLeanTarget.TargetSyntax.Ty +@77 := List.nil.{0} +@78 := List.cons.{0} +@79 := @77 @75 +@80 := @78 @75 +@82 := @80 @37 @79 +@83 := @77 @76 +@84 := @78 @76 +@85 := @84 @38 +@86 := @85 @83 +@87 := LexLeanPreservation.Rust.WTL +@95 := {p : @39} -> {c : @40} -> {A : @41} -> @87 @45 @47 @4 @79 @83 +@97 := LexLeanPreservation.Rust.wtl_nil @0 +@98 := @87 @0 +@104 := {c : @40} -> {A : @41} -> @98 @47 @4 @79 @83 +@105 := @97 @1 +@106 := @98 @1 +@110 := {A : @41} -> @106 @4 @79 @83 +@111 := @105 @2 +@112 := @106 @2 +@113 := @112 @79 +@114 := @113 @83 +@115 := @25 @75 +@116 := @25 @76 +@117 := #6 +@118 := @7 @117 +@119 := #5 +@120 := @118 @119 +@121 := #4 +@124 := @120 @121 @43 @45 +@125 := #7 +@130 := @87 @125 @117 @119 @45 @47 +@131 := #8 +@134 := @87 @131 @125 @117 +@136 := @80 @119 @43 +@137 := @134 @136 +@139 := @84 @121 @45 +@149 := {p : @39} -> + {c : @40} -> + {A : @41} -> + {v : @75} -> {t : @76} -> {vs : @115} -> {ts : @116} -> (h : @124) -> (hs : @130) -> @137 @139 +@151 := LexLeanPreservation.Rust.wtl_cons @0 +@155 := @11 @119 @121 @43 @45 +@159 := @98 @117 @119 @45 @47 +@171 := {c : @40} -> + {A : @41} -> + {v : @75} -> + {t : @76} -> {vs : @115} -> {ts : @116} -> (h : @155) -> (hs : @159) -> @98 @125 @117 @136 @139 +@172 := @151 @1 +@175 := @12 @121 @43 @45 +@178 := @106 @119 @45 @47 +@188 := {A : @41} -> + {v : @75} -> + {t : @76} -> {vs : @115} -> {ts : @116} -> (h : @175) -> (hs : @178) -> @106 @117 @136 @139 +@189 := @172 @2 +@191 := @13 @43 @45 +@193 := @112 @45 @47 +@201 := {v : @75} -> + {t : @76} -> {vs : @115} -> {ts : @116} -> (h : @191) -> (hs : @193) -> @112 @136 @139 +@202 := @189 @37 +@203 := @36 @43 +@215 := {t : @76} -> + {vs : @115} -> {ts : @116} -> (h : @13 @203 @45) -> (hs : @193) -> @112 (@80 (@36 @119) @43) @139 +@216 := @202 @38 +@217 := @36 @45 +@219 := @13 @217 @38 +@223 := @112 (@80 (@36 @121) @43) +@224 := @85 @45 +@229 := {vs : @115} -> {ts : @116} -> (h : @219) -> (hs : @193) -> @223 @224 +@230 := @216 @79 +@231 := @36 @47 +@233 := @13 @231 @38 +@234 := @113 @47 +@236 := @80 @203 @79 +@241 := {ts : @116} -> (h : @233) -> (hs : @234) -> @112 @236 @224 +@242 := @230 @83 +@244 := @80 @217 @79 +@245 := @112 @244 +@248 := (h : @72) -> (hs : @114) -> @245 @86 +@249 := @242 @74 +@251 := @80 @231 @79 +@253 := @112 @251 @86 +@254 := (hs : @114) -> @253 +@255 := @249 @111 +@257 := @112 @82 @86 +@258 := Eq.{1} +@259 := Option.{0} +@260 := @259 @116 +@261 := @258 @260 +@262 := LexLeanPreservation.Rust.adtFields +@266 := @261 (@262 @117 @43 @45) +@267 := Option.some.{0} +@268 := @267 @116 +@269 := @268 @4 +@270 := @266 @269 +@273 := @7 @131 @125 @117 +@274 := LexLeanTarget.TargetSyntax.Value.adt +@276 := @274 @121 @43 +@277 := @273 @276 +@278 := @8 @119 +@288 := {p : @39} -> + {c : @40} -> + {A : @41} -> + {i : @42} -> {k : @42} -> {fs : @115} -> {tys : @116} -> (h : @270) -> (hf : @130) -> @277 @278 +@290 := LexLeanPreservation.Rust.wt_adt @0 +@291 := @262 @0 +@295 := @261 (@291 @43 @45) @269 +@307 := {c : @40} -> + {A : @41} -> + {i : @42} -> + {k : @42} -> {fs : @115} -> {tys : @116} -> (h : @295) -> (hf : @159) -> @11 @125 @117 @276 @278 +@308 := @290 @1 +@318 := {A : @41} -> + {i : @42} -> + {k : @42} -> {fs : @115} -> {tys : @116} -> (h : @295) -> (hf : @178) -> @12 @117 @276 @278 +@319 := @308 @2 +@320 := @13 @276 +@327 := {i : @42} -> + {k : @42} -> {fs : @115} -> {tys : @116} -> (h : @295) -> (hf : @193) -> @320 @278 +@328 := @319 @9 +@329 := @291 @9 +@338 := {k : @42} -> + {fs : @115} -> {tys : @116} -> (h : @261 (@329 @45) @269) -> (hf : @193) -> @320 @10 +@339 := @328 @9 +@340 := @329 @9 +@341 := @261 @340 +@342 := @341 @269 +@343 := @274 @9 +@345 := @13 (@343 @43) +@350 := {fs : @115} -> {tys : @116} -> (h : @342) -> (hf : @193) -> @345 @10 +@351 := @339 @82 +@358 := {tys : @116} -> (h : @342) -> (hf : @245 @47) -> @13 (@343 @236) @10 +@359 := @351 @86 +@366 := (h : @341 (@268 @86)) -> (hf : @253) -> @13 (@343 @244) @10 +@367 := Eq.refl.{1} +@368 := @367 @260 +@370 := @359 (@368 @340) +@374 := (hf : @257) -> @13 (@343 @251) @10 +@375 := @370 @255 +@378 := @13 (@343 @82) @10 +@379 := fun (__x0 : @42) => @375 +@380 := @5 @43 +@381 := @5 @45 +@383 := @80 @381 @79 +@384 := @80 @380 +@385 := @384 @383 +@386 := @84 @10 +@387 := @386 @83 +@388 := @386 @387 +@389 := @189 @381 +@390 := @5 @119 +@391 := @13 @390 +@392 := @391 @45 +@394 := @80 (@5 @125) +@396 := @112 (@394 @43) +@402 := {t : @76} -> {vs : @115} -> {ts : @116} -> (h : @392) -> (hs : @193) -> @396 @139 +@403 := @389 @10 +@404 := @5 @121 +@405 := @13 @404 +@406 := @405 @10 +@407 := @5 @117 +@408 := @80 @407 +@410 := @112 (@408 @43) +@411 := @386 @45 +@416 := {vs : @115} -> {ts : @116} -> (h : @406) -> (hs : @193) -> @410 @411 +@417 := @403 @79 +@419 := @13 @380 @10 +@420 := @80 @390 +@421 := @420 @79 +@422 := @112 @421 +@426 := {ts : @116} -> (h : @419) -> (hs : @234) -> @422 @411 +@427 := @417 @83 +@429 := @13 @381 @10 +@430 := @80 @404 +@431 := @430 @79 +@432 := @112 @431 +@435 := (h : @429) -> (hs : @114) -> @432 @387 +@436 := @427 @4 +@437 := @384 @79 +@438 := @112 @437 +@439 := @438 @387 +@440 := (hs : @114) -> @439 +@441 := @436 @111 +@442 := @112 @383 +@443 := @442 @387 +@444 := @189 @380 +@446 := @13 @407 @45 +@448 := @80 (@5 @131) +@456 := {t : @76} -> {vs : @115} -> {ts : @116} -> (h : @446) -> (hs : @193) -> @112 (@448 @43) @139 +@457 := @444 @10 +@463 := {vs : @115} -> {ts : @116} -> (h : @391 @10) -> (hs : @193) -> @396 @411 +@464 := @457 @383 +@465 := @432 @47 +@466 := @408 @421 +@471 := {ts : @116} -> (h : @406) -> (hs : @465) -> @112 @466 @411 +@472 := @464 @387 +@473 := @420 @431 +@474 := @112 @473 +@477 := (h : @419) -> (hs : @439) -> @474 @388 +@478 := @472 @47 +@479 := @430 @437 +@481 := @112 @479 @388 +@482 := (hs : @443) -> @481 +@483 := @478 @441 +@485 := @112 @385 @388 +@486 := @328 @20 +@487 := @329 @20 +@488 := @261 @487 +@489 := @488 @269 +@490 := @274 @20 +@492 := @13 (@490 @43) +@497 := {fs : @115} -> {tys : @116} -> (h : @489) -> (hf : @193) -> @492 @10 +@498 := @486 @385 +@505 := {tys : @116} -> (h : @489) -> (hf : @474 @47) -> @13 (@490 @466) @10 +@506 := @498 @388 +@513 := (h : @488 (@268 @388)) -> (hf : @481) -> @13 (@490 @473) @10 +@515 := @506 (@368 @487) +@519 := (hf : @485) -> @13 (@490 @479) @10 +@520 := @515 @483 +@523 := @13 (@490 @385) @10 +@524 := @5 @47 +@526 := @13 @524 @10 +@530 := fun (__x0 : @3) => fun (__x1 : @3) => fun (__ih0 : @526) => fun (__ih1 : @526) => @520 +@531 := LexLeanPreservation.ListEnc.enc +@532 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.__L_0 +@534 := @531 @17 @532 +@535 := @534 @43 +@536 := LexLeanTarget.TargetSyntax.Ty.list +@537 := @536 @21 +@538 := @27 @43 +@543 := @29 @121 @43 @45 @47 @4 +@546 := @7 @119 @121 @43 +@547 := LexLeanTarget.TargetSyntax.Value.list +@548 := @547 @45 +@549 := @546 @548 +@550 := @536 @47 +@557 := {p : @39} -> {c : @40} -> {A : @41} -> {vs : @115} -> {t : @76} -> (h : @543) -> @549 @550 +@559 := LexLeanPreservation.Rust.wt_list @0 +@563 := @30 @43 @45 @47 @4 +@565 := @11 @121 @43 +@572 := {c : @40} -> {A : @41} -> {vs : @115} -> {t : @76} -> (h : @563) -> @565 @548 @550 +@573 := @559 @1 +@576 := @31 @45 @47 @4 +@577 := @12 @43 +@583 := {A : @41} -> {vs : @115} -> {t : @76} -> (h : @576) -> @577 @548 @550 +@584 := @573 @2 +@591 := {vs : @115} -> {t : @76} -> (h : @32 @47 @4) -> @13 @548 @550 +@592 := @584 @538 +@593 := @27 @121 +@594 := @32 @593 +@595 := @594 @4 +@596 := @27 @119 +@601 := {t : @76} -> (h : @595) -> @13 (@547 @596) @550 +@602 := @592 @21 +@604 := @32 @538 @21 +@608 := (h : @604) -> @13 (@547 @593) @537 +@609 := @602 @47 +@612 := @13 (@547 @538) @537 +@614 := @80 @535 @383 +@615 := @84 @537 +@616 := @615 @387 +@617 := @189 @535 +@618 := @534 @117 +@630 := {t : @76} -> + {vs : @115} -> {ts : @116} -> (h : @13 @618 @45) -> (hs : @193) -> @112 (@80 (@534 @131) @43) @139 +@631 := @617 @537 +@632 := @534 @119 +@634 := @13 @632 @537 +@638 := @112 (@80 (@534 @125) @43) +@639 := @615 @45 +@644 := {vs : @115} -> {ts : @116} -> (h : @634) -> (hs : @193) -> @638 @639 +@645 := @631 @383 +@646 := @534 @121 +@648 := @13 @646 @537 +@650 := @80 @618 @421 +@655 := {ts : @116} -> (h : @648) -> (hs : @465) -> @112 @650 @639 +@656 := @645 @387 +@658 := @13 @535 @537 +@660 := @80 @632 @431 +@661 := @112 @660 +@664 := (h : @658) -> (hs : @439) -> @661 @616 +@665 := @656 @609 +@667 := @80 @646 @437 +@669 := @112 @667 @616 +@670 := (hs : @443) -> @669 +@671 := @665 @441 +@673 := @112 @614 @616 +@674 := 2 +@675 := @328 @674 +@676 := @329 @674 +@677 := @261 @676 +@678 := @677 @269 +@679 := @274 @674 +@686 := {fs : @115} -> {tys : @116} -> (h : @678) -> (hf : @193) -> @13 (@679 @43) @10 +@687 := @675 @614 +@694 := {tys : @116} -> (h : @678) -> (hf : @661 @47) -> @13 (@679 @650) @10 +@695 := @687 @616 +@702 := (h : @677 (@268 @616)) -> (hf : @669) -> @13 (@679 @660) @10 +@704 := @695 (@368 @676) +@708 := (hf : @673) -> @13 (@679 @667) @10 +@709 := @704 @671 +@712 := @13 (@679 @614) @10 +@713 := fun (__ih1 : @526) => @709 +@716 := @32 (@27 @47) @21 +@719 := fun (__x0 : @26) => fun (__x1 : @3) => fun (__ih0 : @716) => @713 +@720 := LexLeanTarget.TargetSyntax.Value.string +@721 := @720 @45 +@722 := LexLeanTarget.TargetSyntax.Ty.string +@723 := String +@724 := @720 @4 +@730 := {p : @39} -> {c : @40} -> {A : @41} -> (s : @723) -> @48 @724 @722 +@732 := LexLeanPreservation.Rust.wt_string @0 +@737 := {c : @40} -> {A : @41} -> (s : @723) -> @58 @724 @722 +@738 := @732 @1 +@742 := {A : @41} -> (s : @723) -> @65 @724 @722 +@743 := @738 @2 +@746 := (s : @723) -> @13 @724 @722 +@747 := @743 @45 +@749 := @13 @721 @722 +@751 := @80 @524 @79 +@753 := @80 @721 @751 +@754 := @84 @722 +@755 := @754 @387 +@756 := @189 @524 +@763 := {t : @76} -> {vs : @115} -> {ts : @116} -> (h : @405 @45) -> (hs : @193) -> @410 @139 +@764 := @756 @10 +@771 := {vs : @115} -> {ts : @116} -> (h : @419) -> (hs : @193) -> @112 (@420 @43) @411 +@772 := @764 @79 +@776 := {ts : @116} -> (h : @429) -> (hs : @234) -> @432 @411 +@777 := @772 @83 +@778 := (h : @526) -> @440 +@779 := @777 @4 +@780 := (hs : @114) -> @443 +@781 := @779 @111 +@782 := @112 @751 +@783 := @782 @387 +@784 := @189 @721 +@785 := @720 @119 +@797 := {t : @76} -> + {vs : @115} -> {ts : @116} -> (h : @13 @785 @45) -> (hs : @193) -> @112 (@80 (@720 @125) @43) @139 +@798 := @784 @722 +@799 := @720 @121 +@801 := @13 @799 @722 +@805 := @112 (@80 (@720 @117) @43) +@806 := @754 @45 +@811 := {vs : @115} -> {ts : @116} -> (h : @801) -> (hs : @193) -> @805 @806 +@812 := @798 @751 +@813 := @720 @43 +@815 := @13 @813 @722 +@816 := @438 @47 +@818 := @80 @785 @431 +@823 := {ts : @116} -> (h : @815) -> (hs : @816) -> @112 @818 @806 +@824 := @812 @387 +@826 := @80 @799 @437 +@827 := @112 @826 +@830 := (h : @749) -> (hs : @443) -> @827 @755 +@831 := @824 @747 +@833 := @80 @813 @383 +@835 := @112 @833 @755 +@836 := (hs : @783) -> @835 +@837 := @831 @781 +@839 := @112 @753 @755 +@840 := @319 @20 +@841 := @291 @20 +@850 := {k : @42} -> + {fs : @115} -> {tys : @116} -> (h : @261 (@841 @45) @269) -> (hf : @193) -> @320 @21 +@851 := @840 @9 +@852 := @841 @9 +@853 := @261 @852 +@854 := @853 @269 +@859 := {fs : @115} -> {tys : @116} -> (h : @854) -> (hf : @193) -> @345 @21 +@860 := @851 @753 +@867 := {tys : @116} -> (h : @854) -> (hf : @827 @47) -> @13 (@343 @818) @21 +@868 := @860 @755 +@875 := (h : @853 (@268 @755)) -> (hf : @835) -> @13 (@343 @826) @21 +@877 := @868 (@368 @852) +@881 := (hf : @839) -> @13 (@343 @833) @21 +@882 := @877 @837 +@885 := @13 (@343 @753) @21 +@888 := fun (__x0 : @723) => fun (__x1 : @3) => fun (__ih0 : @15) => @882 +@889 := @18 @43 +@890 := @18 @45 +@892 := @80 @890 @79 +@893 := @80 @889 +@894 := @893 @892 +@895 := @84 @21 +@896 := @895 @83 +@897 := @895 @896 +@898 := @189 @890 +@899 := @18 @119 +@900 := @13 @899 +@901 := @900 @45 +@904 := @80 (@18 @125) @43 +@905 := @112 @904 +@911 := {t : @76} -> {vs : @115} -> {ts : @116} -> (h : @901) -> (hs : @193) -> @905 @139 +@912 := @898 @21 +@913 := @18 @121 +@914 := @13 @913 +@915 := @914 @21 +@916 := @18 @117 +@917 := @80 @916 +@919 := @112 (@917 @43) +@920 := @895 @45 +@925 := {vs : @115} -> {ts : @116} -> (h : @915) -> (hs : @193) -> @919 @920 +@926 := @912 @79 +@928 := @13 @889 @21 +@929 := @80 @899 +@930 := @929 @79 +@935 := {ts : @116} -> (h : @928) -> (hs : @234) -> @112 @930 @920 +@936 := @926 @83 +@938 := @13 @890 @21 +@939 := @80 @913 +@940 := @939 @79 +@941 := @112 @940 +@944 := (h : @938) -> (hs : @114) -> @941 @896 +@945 := @936 @4 +@946 := @893 @79 +@948 := @112 @946 @896 +@949 := (hs : @114) -> @948 +@950 := @945 @111 +@952 := @112 @892 @896 +@953 := @189 @889 +@965 := {t : @76} -> + {vs : @115} -> {ts : @116} -> (h : @13 @916 @45) -> (hs : @193) -> @112 (@80 (@18 @131) @43) @139 +@966 := @953 @21 +@972 := {vs : @115} -> {ts : @116} -> (h : @900 @21) -> (hs : @193) -> @905 @920 +@973 := @966 @892 +@974 := @941 @47 +@975 := @917 @930 +@980 := {ts : @116} -> (h : @915) -> (hs : @974) -> @112 @975 @920 +@981 := @973 @896 +@982 := @929 @940 +@983 := @112 @982 +@986 := (h : @928) -> (hs : @948) -> @983 @897 +@987 := @981 @47 +@988 := @939 @946 +@990 := @112 @988 @897 +@991 := (hs : @952) -> @990 +@992 := @987 @950 +@994 := @112 @894 @897 +@995 := @840 @20 +@996 := @841 @20 +@997 := @261 @996 +@998 := @997 @269 +@1003 := {fs : @115} -> {tys : @116} -> (h : @998) -> (hf : @193) -> @492 @21 +@1004 := @995 @894 +@1011 := {tys : @116} -> (h : @998) -> (hf : @983 @47) -> @13 (@490 @975) @21 +@1012 := @1004 @897 +@1019 := (h : @997 (@268 @897)) -> (hf : @990) -> @13 (@490 @982) @21 +@1021 := @1012 (@368 @996) +@1025 := (hf : @994) -> @13 (@490 @988) @21 +@1026 := @1021 @992 +@1029 := @13 (@490 @894) @21 +@1032 := @13 (@18 @47) @21 +@1036 := fun (__x0 : @17) => fun (__x1 : @17) => fun (__ih0 : @1032) => fun (__ih1 : @1032) => @1026 +@1045 := {p : @39} -> {c : @40} -> {A : @41} -> {t : @76} -> @29 @43 @45 @47 @79 @4 +@1047 := LexLeanPreservation.Rust.wtAll_nil @0 +@1054 := {c : @40} -> {A : @41} -> {t : @76} -> @30 @45 @47 @79 @4 +@1055 := @1047 @1 +@1060 := {A : @41} -> {t : @76} -> @31 @47 @79 @4 +@1061 := @1055 @2 +@1062 := @32 @79 +@1064 := {t : @76} -> @1062 @4 +@1065 := @1061 @21 +@1066 := @1062 @21 +@1067 := @27 @45 +@1069 := @546 @45 @4 +@1074 := @29 @117 @119 @121 @45 @47 +@1077 := @29 @125 @117 @119 +@1079 := @80 @121 @43 +@1089 := {p : @39} -> + {c : @40} -> + {A : @41} -> + {v : @75} -> {vs : @115} -> {t : @76} -> (h : @1069) -> (hs : @1074) -> @1077 @1079 @45 +@1091 := LexLeanPreservation.Rust.wtAll_cons @0 +@1108 := {c : @40} -> + {A : @41} -> + {v : @75} -> + {vs : @115} -> + {t : @76} -> (h : @565 @45 @4) -> (hs : @30 @119 @121 @45 @47) -> @30 @117 @119 @1079 @45 +@1109 := @1091 @1 +@1123 := {A : @41} -> + {v : @75} -> + {vs : @115} -> {t : @76} -> (h : @577 @45 @4) -> (hs : @31 @121 @45 @47) -> @31 @119 @1079 @45 +@1124 := @1109 @2 +@1126 := @13 @45 @4 +@1128 := @32 @45 @47 +@1135 := {v : @75} -> {vs : @115} -> {t : @76} -> (h : @1126) -> (hs : @1128) -> @32 @1079 @45 +@1136 := @1124 @889 +@1143 := {vs : @115} -> {t : @76} -> (h : @900 @4) -> (hs : @1128) -> @32 @904 @45 +@1144 := @1136 @1067 +@1152 := {t : @76} -> (h : @914 @4) -> (hs : @594 @47) -> @32 (@917 @596) @45 +@1153 := @1144 @21 +@1158 := (h : @928) -> (hs : @604) -> @32 (@929 @593) @21 +@1159 := @1153 @47 +@1165 := (hs : @32 @1067 @21) -> @32 (@939 @538) @21 +@1166 := @1159 @4 +@1169 := @32 (@893 @1067) @21 +@1173 := fun (__x0 : @17) => fun (__x1 : @26) => fun (__ih0 : @1032) => fun (__ih1 : @716) => @1166 +@1186 := fun (__v : @3) => + Coverage.Syntax.Expr.rec.{0} @16 @24 @35 @379 @530 @719 @888 @1036 @1065 @1173 @4 +@1187 := (__v : @3) -> @15 +@1200 := fun (__v : @17) => + Coverage.Syntax.Stmt.rec.{0} @16 @24 @35 @379 @530 @719 @888 @1036 @1065 @1173 @4 +@1201 := (__v : @17) -> @23 +@1214 := fun (__v : @26) => + Coverage.Syntax.Expr.rec_1.{0} @16 @24 @35 @379 @530 @719 @888 @1036 @1065 @1173 @4 +@1215 := (__v : @26) -> @34 +@1217 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.Compose.RustStd.__wt_0 @47 +@1220 := Prod.{0, 0} @42 @75 +@1224 := Prod.mk.{0, 0} @42 @75 @9 +@1225 := @1224 @524 +@1226 := @77 @1220 +@1227 := @78 @1220 +@1229 := @1227 @1225 @1226 +@1230 := Bool.true +@1231 := LexLeanTarget.TargetSyntax.Function +@1232 := LexLeanTarget.TargetSyntax.Program.functions +@1233 := @1232 @0 +@1234 := @77 @42 +@1235 := LexLeanTarget.TargetSyntax.Ty.unit +@1236 := LexLeanTarget.TargetSyntax.Value.unit +@1239 := LexLeanTarget.TargetSyntax.Expr.value @1235 @1236 +@1244 := LexLeanTarget.TargetSyntax.Function.mk @1234 @83 @1235 @1239 +@1249 := List.getD.{0} @1231 @1233 @9 @1244 +@1253 := fun (__e_n : @42) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.RustStd.root @4 @9 +@1255 := @777 @1217 @111 +@1256 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.denote +@1257 := @1256 @47 +@1258 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.__fits_0 +@1259 := @1258 @47 +@1262 := @36 (Coverage.RecRoots.syntaxTotal @47) +@1264 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.root @47 +@1265 := Bool +@1266 := Ne.{1} +@1267 := LexLeanPreservation.Obs +@1268 := @1266 @1267 +@1269 := LexLeanPreservation.Rel +@1272 := @1268 (@1269 @47 @4) +@1273 := LexLeanPreservation.Obs.stuck +@1276 := (f : @1265) -> (v : @75) -> @1272 @1273 +@1278 := LexLeanPreservation.Rust.rel_ne_stuck @1259 +@1284 := (v : @75) -> @1268 (@1269 (@1258 @45) @4) @1273 +@1285 := @1278 @1262 +@1289 := @1268 (@1269 @1259 @1262) @1273 +@1290 := @25 @1220 +@1291 := LexLeanPreservation.Rust.FunSem +@1292 := #9 +@1298 := (n : @42) -> @1291 @1292 @131 @125 @4 @117 +@1299 := @259 @1231 +@1300 := @258 @1299 +@1307 := LexLeanRuntime.index (@25 @1231) @1231 (LexLeanRuntime.instIndexableList @1231) +@1311 := @1300 (@1307 (@1232 @1292) @117) +@1312 := @267 @1231 +@1313 := @1312 @119 +@1314 := @1311 @1313 +@1315 := #10 +@1319 := @87 @1315 @1292 @131 @119 +@1320 := LexLeanTarget.TargetSyntax.Function.types +@1321 := @1320 @117 +@1322 := @1319 @1321 +@1323 := @259 @1290 +@1324 := @258 @1323 +@1325 := LexLeanTarget.TargetSemantics.bindAll +@1326 := LexLeanTarget.TargetSyntax.Function.parameters +@1331 := @1324 (@1325 (@1326 @125) @117 @1226) +@1332 := @267 @1290 +@1333 := @1332 @119 +@1334 := @1331 @1333 +@1335 := @259 @1265 +@1336 := @258 @1335 +@1337 := LexLeanPreservation.Rust.fnFallible +@1338 := #11 +@1341 := @1336 (@1337 @1338 @1292) +@1342 := @267 @1265 +@1343 := @1342 @119 +@1344 := @1341 @1343 +@1345 := LexLeanPreservation.RunConv +@1346 := #13 +@1350 := @1345 @1346 @1315 @131 @119 +@1352 := @1268 @117 @1273 +@1353 := Exists.{1} +@1354 := LexLeanPreservation.Rust.ROut +@1355 := @1353 @1354 +@1356 := And +@1357 := LexLeanPreservation.Rust.RealizesFn +@1361 := @1356 (@1357 @1292 @131 @4) +@1362 := LexLeanPreservation.Rust.RCI +@1364 := @1362 #15 +@1365 := LexLeanPreservation.Rust.fnIdent +@1366 := @1365 @1346 +@1373 := (hne : @1352) -> @1355 (fun (ro : @1354) => @1361 (@1364 @1366 @1338 @4)) +@1388 := {p : @39} -> + {c : @40} -> + {A : @41} -> + {f : @42} -> + {fn : @1231} -> + {args : @115} -> + {env : @1290} -> + {F : @1265} -> + {o : @1267} -> + (hB : @1298) -> + (hfn : @1314) -> (hwt : @1322) -> (hbind : @1334) -> (hF : @1344) -> (hA : @1350) -> @1373 +@1390 := LexLeanPreservation.Rust.compose @0 +@1391 := @1291 @0 +@1396 := (n : @42) -> @1391 @131 @125 @4 @117 +@1397 := @1307 @1233 +@1400 := @1300 (@1397 @117) @1313 +@1404 := @98 @1292 @131 @119 @1321 +@1405 := @1345 @0 +@1408 := @1405 @1315 @131 @119 +@1422 := {c : @40} -> + {A : @41} -> + {f : @42} -> + {fn : @1231} -> + {args : @115} -> + {env : @1290} -> + {F : @1265} -> + {o : @1267} -> + (hB : @1396) -> + (hfn : @1400) -> (hwt : @1404) -> (hbind : @1334) -> (hF : @1344) -> (hA : @1408) -> @1373 +@1423 := @1390 @1 +@1424 := @1391 @1 +@1428 := (n : @42) -> @1424 @125 @4 @117 +@1431 := @106 @131 @119 @1321 +@1432 := @1337 @1 +@1435 := @1336 (@1432 @1292) @1343 +@1436 := @1362 @1 +@1446 := (hbind : @1334) -> + (hF : @1435) -> + (hA : @1408) -> (hne : @1352) -> @1355 (fun (ro : @1354) => @1361 (@1436 @1366 @1338 @4)) +@1456 := {A : @41} -> + {f : @42} -> + {fn : @1231} -> + {args : @115} -> + {env : @1290} -> + {F : @1265} -> {o : @1267} -> (hB : @1428) -> (hfn : @1400) -> (hwt : @1431) -> @1446 +@1457 := @1423 @2 +@1459 := @1424 @2 @4 +@1461 := (n : @42) -> @1459 @117 +@1462 := @112 @119 +@1463 := @1462 @1321 +@1472 := {f : @42} -> + {fn : @1231} -> + {args : @115} -> + {env : @1290} -> + {F : @1265} -> {o : @1267} -> (hB : @1461) -> (hfn : @1400) -> (hwt : @1463) -> @1446 +@1473 := @1457 @9 +@1475 := (n : @42) -> @1459 @9 +@1476 := @1397 @9 +@1477 := @1300 @1476 +@1478 := @1477 @1313 +@1479 := @1432 @9 +@1480 := @1336 @1479 +@1481 := @1480 @1343 +@1482 := @1405 @9 +@1484 := @1482 @131 @119 +@1486 := @1436 (@1365 @9) +@1494 := (hF : @1481) -> + (hA : @1484) -> (hne : @1352) -> @1355 (fun (ro : @1354) => @1361 (@1486 @1338 @4)) +@1503 := {fn : @1231} -> + {args : @115} -> + {env : @1290} -> + {F : @1265} -> + {o : @1267} -> (hB : @1475) -> (hfn : @1478) -> (hwt : @1463) -> (hbind : @1334) -> @1494 +@1504 := @1473 @1249 +@1506 := @1477 (@1312 @1249) +@1507 := @1320 @1249 +@1508 := @1462 @1507 +@1510 := @1325 (@1326 @1249) +@1522 := {args : @115} -> + {env : @1290} -> + {F : @1265} -> + {o : @1267} -> + (hB : @1475) -> + (hfn : @1506) -> (hwt : @1508) -> (hbind : @1324 (@1510 @117 @1226) @1333) -> @1494 +@1523 := @1504 @751 +@1524 := @408 @79 +@1526 := @112 @1524 @1507 +@1527 := @394 @79 +@1531 := @1324 (@1510 @1527 @1226) @1333 +@1534 := @80 (@5 @1292) @79 +@1555 := {env : @1290} -> + {F : @1265} -> + {o : @1267} -> + (hB : @1475) -> + (hfn : @1506) -> + (hwt : @1526) -> + (hbind : @1531) -> + (hF : @1481) -> + (hA : @1482 @1534 @119) -> + (hne : @1352) -> @1355 (fun (ro : @1354) => @1361 (@1486 (@80 (@5 #12) @79) @4)) +@1556 := @1523 @1229 +@1557 := @422 @1507 +@1565 := @1324 (@1510 @1524 @1226) (@1332 (@1227 (@1224 @407) @1226)) +@1566 := @448 @79 +@1585 := {F : @1265} -> + {o : @1267} -> + (hB : @1475) -> + (hfn : @1506) -> + (hwt : @1557) -> + (hbind : @1565) -> + (hF : @1481) -> + (hA : @1482 @1566 @119) -> + (hne : @1352) -> @1355 (fun (ro : @1354) => @1361 (@1486 (@80 (@5 @1338) @79) @4)) +@1586 := @1556 @1230 +@1587 := @432 @1507 +@1595 := @1324 (@1510 @421 @1226) (@1332 (@1227 (@1224 @390) @1226)) +@1597 := @1480 (@1342 @1230) +@1599 := @1482 @1527 @119 +@1600 := @1357 @1230 +@1619 := {o : @1267} -> + (hB : @1475) -> + (hfn : @1506) -> + (hwt : @1587) -> + (hbind : @1595) -> + (hF : @1597) -> + (hA : @1599) -> + (hne : @1352) -> @1355 (fun (ro : @1354) => @1356 (@1600 @131 @4) (@1486 (@80 (@5 @1315) @79) @4)) +@1620 := @1586 @1257 +@1621 := @438 @1507 +@1629 := @1324 (@1510 @431 @1226) (@1332 (@1227 (@1224 @404) @1226)) +@1630 := @1482 @1524 +@1631 := @1256 @117 +@1632 := @1630 @1631 +@1633 := @1256 @125 +@1651 := (hB : @1475) -> + (hfn : @1506) -> + (hwt : @1621) -> + (hbind : @1629) -> + (hF : @1597) -> + (hA : @1632) -> + (hne : @1268 @1633 @1273) -> + @1355 (fun (ro : @1354) => @1356 (@1600 (@1256 @1292) @4) (@1486 @1534 @4)) +@1652 := @1620 @1253 +@1653 := @442 @1507 +@1661 := @1324 (@1510 @437 @1226) (@1332 (@1227 (@1224 @380) @1226)) +@1662 := @1482 @421 +@1663 := @1256 @119 +@1681 := (hfn : @1506) -> + (hwt : @1653) -> + (hbind : @1661) -> + (hF : @1597) -> + (hA : @1662 @1663) -> + (hne : @1268 @1631 @1273) -> + @1355 (fun (ro : @1354) => @1356 (@1600 (@1256 @131) @4) (@1486 @1566 @4)) +@1684 := @1652 (@367 @1299 @1476) +@1685 := @782 @1507 +@1693 := @1324 (@1510 @383 @1226) (@1332 (@1227 (@1224 @381) @1226)) +@1694 := @1482 @431 +@1695 := @1256 @121 +@1711 := (hwt : @1685) -> + (hbind : @1693) -> + (hF : @1597) -> + (hA : @1694 @1695) -> + (hne : @1268 @1663 @1273) -> @1355 (fun (ro : @1354) => @1356 (@1600 @1633 @4) (@1486 @1527 @4)) +@1712 := @1684 @1255 +@1714 := @1510 @751 @1226 +@1717 := @1324 @1714 (@1332 @1229) +@1718 := @1482 @437 +@1719 := @1256 @43 +@1734 := (hbind : @1717) -> + (hF : @1597) -> + (hA : @1718 @1719) -> + (hne : @1268 @1695 @1273) -> @1355 (fun (ro : @1354) => @1356 (@1600 @1631 @4) (@1486 @1524 @4)) +@1737 := @1712 (@367 @1323 @1714) +@1738 := @1482 @383 +@1739 := @1256 @45 +@1753 := (hF : @1597) -> + (hA : @1738 @1739) -> + (hne : @1268 @1719 @1273) -> @1355 (fun (ro : @1354) => @1356 (@1600 @1663 @4) (@1486 @421 @4)) +@1756 := @1737 (@367 @1335 @1479) +@1770 := (hA : @1482 @751 @1257) -> + (hne : @1268 @1739 @1273) -> @1355 (fun (ro : @1354) => @1356 (@1600 @1695 @4) (@1486 @431 @4)) +@1771 := @1756 @1264 +@1782 := (hne : @1268 @1257 @1273) -> + @1355 (fun (ro : @1354) => @1356 (@1600 @1719 @4) (@1486 @437 @4)) +@1783 := @1771 @1285 +@1789 := @1356 (@1600 @1739 @4) (@1486 @383 @4) +@1791 := @1355 (fun (ro : @1354) => @1789) +@1793 := @1355 (fun (__e_ro : @1354) => @1789) +@1797 := LexLeanPreservation.Rust.RepresentableL (@80 @6 @79) +@1798 := (__e_hrep : @1797) -> @1793 +@1799 := fun (__e_hrep : @1797) => @1783 +@1800 := (e : @3) -> @1798 +@1801 := fun (e : @3) => @1799 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R31/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R31/RustStd.lean new file mode 100644 index 000000000..80845781c --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R31/RustStd.lean @@ -0,0 +1,60 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [{ constructors := [[.nat], [(.adt 0), (.adt 0)], [(.list (.adt 1)), (.adt 0)]] }, + { constructors := [[.string, (.adt 0)], [(.adt 1), (.adt 1)]] }], functions := [ + { parameters := [0], types := [(.adt 0)], result := .nat, + body := (.call 1 [(.var 0)]) }, + { parameters := [0], types := [(.adt 0)], result := .nat, + body := (.«match» .nat (.var 0) [(.arm (.adt 0) [1] (.value .nat (.nat 1))), (.arm (.adt 1) [2, 3] (.prim .natAdd [(.prim .natAdd [(.call 1 [(.var 2)]), (.call 1 [(.var 3)])]), (.value .nat (.nat 1))])), (.arm (.adt 2) [4, 5] (.prim .natAdd [(.call 2 [(.var 4)]), (.call 1 [(.var 5)])]))]) }, + { parameters := [0], types := [(.list (.adt 1))], result := .nat, + body := (.«match» .nat (.var 0) [(.arm .nil [] (.value .nat (.nat 0))), (.arm .cons [1, 2] (.prim .natAdd [(.call 3 [(.var 1)]), (.call 2 [(.var 2)])]))]) }, + { parameters := [0], types := [(.adt 1)], result := .nat, + body := (.«match» .nat (.var 0) [(.arm (.adt 0) [1, 2] (.prim .natAdd [(.call 1 [(.var 2)]), (.value .nat (.nat 1))])), (.arm (.adt 1) [3, 4] (.prim .natAdd [(.call 3 [(.var 3)]), (.call 3 [(.var 4)])]))]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.enum (.adt 0) [{ number := 0, fields := [.nat] }, { number := 1, fields := [(.rc (.adt 0)), (.rc (.adt 0))] }, { number := 2, fields := [(.list (.adt 1)), (.rc (.adt 0))] }]), + (.enum (.adt 1) [{ number := 0, fields := [.str, (.adt 0)] }, { number := 1, fields := [(.rc (.adt 1)), (.rc (.adt 1))] }]), + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible .nat) (.mk [] (.call (.function 1) [(.move (.generated .binding 0))] false))), + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 1)) [(.mk (.adt 0 0 [.wild]) (.mk [] (.succeed (.lit (.nat 1))))), (.mk (.adt 0 1 [(.bind (.generated .boxed 8)), (.bind (.generated .boxed 9))]) (.mk [(.mk (.bind (.generated .binding 2)) none (.unbox (.generated .boxed 8))), (.mk (.bind (.generated .binding 3)) none (.unbox (.generated .boxed 9))), (.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.call (.function 1) [(.move (.generated .binding 2))] true)), (.mk (.bind (.generated .operand 3)) none (.call (.function 1) [(.move (.generated .binding 3))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] true)))), (.mk (.bind (.generated .operand 5)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false))), (.mk (.adt 0 2 [(.bind (.generated .binding 4)), (.bind (.generated .boxed 10))]) (.mk [(.mk (.bind (.generated .binding 5)) none (.unbox (.generated .boxed 10))), (.mk (.bind (.generated .operand 6)) none (.call (.function 2) [(.move (.generated .binding 4))] true)), (.mk (.bind (.generated .operand 7)) none (.call (.function 1) [(.move (.generated .binding 5))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false)))]))), + (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.adt 1)) }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 11)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 11)) [(.mk .none (.mk [] (.succeed (.lit (.nat 0))))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [(.mk (.bind (.generated .operand 12)) none (.call (.function 3) [(.move (.generated .binding 1))] true)), (.mk (.bind (.generated .operand 13)) none (.call (.function 2) [(.move (.generated .binding 2))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false)))]))), + (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 14)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 14)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .binding 2))]) (.mk [(.mk (.bind (.generated .operand 15)) none (.call (.function 1) [(.move (.generated .binding 2))] true)), (.mk (.bind (.generated .operand 16)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] false))), (.mk (.adt 1 1 [(.bind (.generated .boxed 19)), (.bind (.generated .boxed 20))]) (.mk [(.mk (.bind (.generated .binding 3)) none (.unbox (.generated .boxed 19))), (.mk (.bind (.generated .binding 4)) none (.unbox (.generated .boxed 20))), (.mk (.bind (.generated .operand 17)) none (.call (.function 3) [(.move (.generated .binding 3))] true)), (.mk (.bind (.generated .operand 18)) none (.call (.function 3) [(.move (.generated .binding 4))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 17)), (.move (.generated .operand 18))] false)))])))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 1) [(.move (.generated .binding 0))] false), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.callF (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 1)) [(.mk (.adt 0 0 [.wild]) (.mk [] (.succeed (.lit (.nat 1))))), (.mk (.adt 0 1 [(.bind (.generated .boxed 8)), (.bind (.generated .boxed 9))]) (.mk [(.mk (.bind (.generated .binding 2)) none (.unbox (.generated .boxed 8))), (.mk (.bind (.generated .binding 3)) none (.unbox (.generated .boxed 9))), (.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.call (.function 1) [(.move (.generated .binding 2))] true)), (.mk (.bind (.generated .operand 3)) none (.call (.function 1) [(.move (.generated .binding 3))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] true)))), (.mk (.bind (.generated .operand 5)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false))), (.mk (.adt 0 2 [(.bind (.generated .binding 4)), (.bind (.generated .boxed 10))]) (.mk [(.mk (.bind (.generated .binding 5)) none (.unbox (.generated .boxed 10))), (.mk (.bind (.generated .operand 6)) none (.call (.function 2) [(.move (.generated .binding 4))] true)), (.mk (.bind (.generated .operand 7)) none (.call (.function 1) [(.move (.generated .binding 5))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false)))]), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.adt 0)) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, none), (0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.lit (.nat 1)))) (Corr.mCons (Γ' := [(3, (.adt 0), (some 3)), (2, (.adt 0), (some 2)), (0, (.adt 0), (some 0))]) (j := 1) (loads := [(.mk (.bind (.generated .binding 2)) none (.unbox (.generated .boxed 8))), (.mk (.bind (.generated .binding 3)) none (.unbox (.generated .boxed 9)))]) (lets := [(.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.call (.function 1) [(.move (.generated .binding 2))] true)), (.mk (.bind (.generated .operand 3)) none (.call (.function 1) [(.move (.generated .binding 3))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] true)))), (.mk (.bind (.generated .operand 5)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false)) (Corr.mCons (Γ' := [(5, (.adt 0), (some 5)), (4, (.list (.adt 1)), (some 4)), (0, (.adt 0), (some 0))]) (j := 2) (loads := [(.mk (.bind (.generated .binding 5)) none (.unbox (.generated .boxed 10)))]) (lets := [(.mk (.bind (.generated .operand 6)) none (.call (.function 2) [(.move (.generated .binding 4))] true)), (.mk (.bind (.generated .operand 7)) none (.call (.function 1) [(.move (.generated .binding 5))] true))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false)) (Corr.mNil) rfl rfl rfl (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.adt 1))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 2)) none (.call (.function 1) [(.move (.generated .binding 2))] true)), (.mk (.bind (.generated .operand 3)) none (.call (.function 1) [(.move (.generated .binding 3))] true))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl)))) rfl rfl rfl)⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 11)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 11)) [(.mk .none (.mk [] (.succeed (.lit (.nat 0))))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [(.mk (.bind (.generated .operand 12)) none (.call (.function 3) [(.move (.generated .binding 1))] true)), (.mk (.bind (.generated .operand 13)) none (.call (.function 2) [(.move (.generated .binding 2))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false)))]), [(0, (.list (.adt 1)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.adt 1))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list (.adt 1)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.lit (.nat 0)))) (Corr.mCons (Γ' := [(2, (.list (.adt 1)), (some 2)), (1, (.adt 1), (some 1)), (0, (.list (.adt 1)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .operand 12)) none (.call (.function 3) [(.move (.generated .binding 1))] true)), (.mk (.bind (.generated .operand 13)) none (.call (.function 2) [(.move (.generated .binding 2))] true))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false)) (Corr.mNil) rfl rfl rfl (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.adt 1))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl)))) rfl rfl rfl)⟩⟩ + +theorem fun3 : FunOK program krate flags 3 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 14)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 14)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .binding 2))]) (.mk [(.mk (.bind (.generated .operand 15)) none (.call (.function 1) [(.move (.generated .binding 2))] true)), (.mk (.bind (.generated .operand 16)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] false))), (.mk (.adt 1 1 [(.bind (.generated .boxed 19)), (.bind (.generated .boxed 20))]) (.mk [(.mk (.bind (.generated .binding 3)) none (.unbox (.generated .boxed 19))), (.mk (.bind (.generated .binding 4)) none (.unbox (.generated .boxed 20))), (.mk (.bind (.generated .operand 17)) none (.call (.function 3) [(.move (.generated .binding 3))] true)), (.mk (.bind (.generated .operand 18)) none (.call (.function 3) [(.move (.generated .binding 4))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 17)), (.move (.generated .operand 18))] false)))]), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.adt 1)) (U := []) (view := false) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.adt 0), (some 2)), (1, .string, none), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .operand 15)) none (.call (.function 1) [(.move (.generated .binding 2))] true)), (.mk (.bind (.generated .operand 16)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] false)) (Corr.mCons (Γ' := [(4, (.adt 1), (some 4)), (3, (.adt 1), (some 3)), (0, (.adt 1), (some 0))]) (j := 1) (loads := [(.mk (.bind (.generated .binding 3)) none (.unbox (.generated .boxed 19))), (.mk (.bind (.generated .binding 4)) none (.unbox (.generated .boxed 20)))]) (lets := [(.mk (.bind (.generated .operand 17)) none (.call (.function 3) [(.move (.generated .binding 3))] true)), (.mk (.bind (.generated .operand 18)) none (.call (.function 3) [(.move (.generated .binding 4))] true))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 17)), (.move (.generated .operand 18))] false)) (Corr.mNil) rfl rfl rfl (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl)⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | 3 => exact fun3 + | _ + 4 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R32.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R32.lean similarity index 99% rename from examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R32.lean rename to examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R32.lean index 428f38e9a..b2941f422 100644 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R32.lean +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R32.lean @@ -18,7 +18,7 @@ set_option maxRecDepth 100000 set_option maxHeartbeats 0 set_option synthInstance.maxHeartbeats 0 set_option linter.unusedVariables false -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32 def __prog : _root_.LexLeanTarget.TargetSyntax.Program := { adts := [], functions := [ @@ -77,4 +77,4 @@ def denote (a : Nat) (b : Nat) : _root_.LexLeanPreservation.Obs := theorem root (a : Nat) (b : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat a), (_root_.LexLeanTarget.TargetSyntax.Value.nat b)] (_root_.LexLeanPreservation.Rel (__fits_0 a b) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Coverage.RecRoots.wellFounded a b))) := _root_.LexLeanPreservation.run_of_funRel (__rel_0 a b) -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32 +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32 diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R32/Compose/RustCore.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R32/Compose/RustCore.lex.tex new file mode 100644 index 000000000..b70e487e3 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R32/Compose/RustCore.lex.tex @@ -0,0 +1,467 @@ +\begin{lexlean}{RustCore} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.Compose.RustCore} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.RustCore, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.Compose.RustCore.root : @923 := @924 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.Compose.RustCore.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.RustCore.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.RustCore.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.RustCore.flags +@3 := Nat +@4 := #2 +@5 := LexLeanTarget.TargetSyntax.Value.nat +@6 := @5 @4 +@7 := LexLeanTarget.TargetSyntax.Ty.nat +@8 := LexLeanTarget.TargetSyntax.Program +@9 := LexLeanPreservation.Rust.RCrate +@10 := LexLeanPreservation.Rust.Flags +@11 := LexLeanPreservation.Rust.WT +@12 := #3 +@14 := @11 @12 @4 +@15 := #1 +@16 := @14 @15 +@17 := #0 +@18 := @5 @17 +@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 +@26 := LexLeanPreservation.Rust.wt_nat @0 +@27 := @11 @0 +@34 := {c : @9} -> {A : @10} -> (n : @3) -> @27 @4 @15 @18 @7 +@35 := @26 @1 +@36 := @27 @1 +@41 := {A : @10} -> (n : @3) -> @36 @15 @18 @7 +@42 := @35 @2 +@43 := @36 @2 +@46 := (n : @3) -> @43 @18 @7 +@47 := @42 @4 +@49 := @43 @6 @7 +@50 := @5 @15 +@51 := @42 @15 +@53 := @43 @50 @7 +@54 := LexLeanTarget.TargetSyntax.Value +@55 := List.nil.{0} +@56 := List.cons.{0} +@57 := @55 @54 +@58 := @56 @54 +@59 := @58 @50 +@60 := @59 @57 +@61 := @58 @6 +@62 := @61 @60 +@64 := Prod.{0, 0} @3 +@65 := @64 @54 +@66 := 1 +@69 := Prod.mk.{0, 0} @3 @54 +@70 := @69 @66 +@71 := @70 @50 +@72 := 0 +@73 := @69 @72 +@74 := @73 @6 +@75 := @55 @65 +@76 := @56 @65 +@78 := @76 @74 @75 +@80 := @76 @71 @78 +@81 := Bool.true +@82 := LexLeanTarget.TargetSyntax.Function +@83 := LexLeanTarget.TargetSyntax.Program.functions +@84 := @83 @0 +@85 := LexLeanTarget.TargetSyntax.Ty +@86 := @55 @3 +@87 := @55 @85 +@88 := LexLeanTarget.TargetSyntax.Ty.unit +@89 := LexLeanTarget.TargetSyntax.Value.unit +@92 := LexLeanTarget.TargetSyntax.Expr.value @88 @89 +@97 := LexLeanTarget.TargetSyntax.Function.mk @86 @87 @88 @92 +@102 := List.getD.{0} @82 @84 @72 @97 +@106 := fun (__e_n : @3) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.RustCore.root @17 @72 +@107 := LexLeanPreservation.Rust.WTL +@115 := {p : @8} -> {c : @9} -> {A : @10} -> @107 @4 @15 @17 @57 @87 +@117 := LexLeanPreservation.Rust.wtl_nil @0 +@118 := @107 @0 +@124 := {c : @9} -> {A : @10} -> @118 @15 @17 @57 @87 +@125 := @117 @1 +@126 := @118 @1 +@130 := {A : @10} -> @126 @17 @57 @87 +@131 := @125 @2 +@132 := @126 @2 +@133 := @132 @57 +@134 := @133 @87 +@135 := List.{0} +@136 := @135 @54 +@137 := @135 @85 +@138 := #6 +@139 := @11 @138 +@140 := #5 +@141 := @139 @140 +@142 := #4 +@145 := @141 @142 @12 @4 +@146 := #7 +@151 := @107 @146 @138 @140 @4 @15 +@152 := #8 +@155 := @107 @152 @146 @138 +@157 := @58 @140 @12 +@158 := @155 @157 +@159 := @56 @85 +@161 := @159 @142 @4 +@171 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {v : @54} -> {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @145) -> (hs : @151) -> @158 @161 +@173 := LexLeanPreservation.Rust.wtl_cons @0 +@193 := {c : @9} -> + {A : @10} -> + {v : @54} -> + {t : @85} -> + {vs : @136} -> + {ts : @137} -> + (h : @27 @140 @142 @12 @4) -> (hs : @118 @138 @140 @4 @15) -> @118 @146 @138 @157 @161 +@194 := @173 @1 +@210 := {A : @10} -> + {v : @54} -> + {t : @85} -> + {vs : @136} -> + {ts : @137} -> (h : @36 @142 @12 @4) -> (hs : @126 @140 @4 @15) -> @126 @138 @157 @161 +@211 := @194 @2 +@213 := @43 @12 @4 +@215 := @132 @4 @15 +@223 := {v : @54} -> + {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @213) -> (hs : @215) -> @132 @157 @161 +@224 := @211 @50 +@225 := @5 @142 +@226 := @43 @225 +@227 := @226 @4 +@228 := @5 @138 +@229 := @58 @228 +@231 := @132 (@229 @12) +@237 := {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @227) -> (hs : @215) -> @231 @161 +@238 := @224 @7 +@239 := @5 @12 +@241 := @43 @239 @7 +@242 := @5 @140 +@243 := @58 @242 +@245 := @132 (@243 @12) +@246 := @159 @7 +@247 := @246 @4 +@252 := {vs : @136} -> {ts : @137} -> (h : @241) -> (hs : @215) -> @245 @247 +@253 := @238 @57 +@254 := @133 @15 +@255 := @58 @225 +@256 := @255 @57 +@261 := {ts : @137} -> (h : @49) -> (hs : @254) -> @132 @256 @247 +@262 := @253 @87 +@263 := @58 @239 +@264 := @263 @57 +@265 := @132 @264 +@266 := @246 @87 +@269 := (h : @53) -> (hs : @134) -> @265 @266 +@270 := @262 @51 +@271 := @61 @57 +@273 := @132 @271 @266 +@274 := (hs : @134) -> @273 +@275 := @270 @131 +@277 := @132 @60 @266 +@278 := @211 @6 +@280 := @43 @242 @4 +@281 := @5 @146 +@282 := @58 @281 +@290 := {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @280) -> (hs : @215) -> @132 (@282 @12) @161 +@291 := @278 @7 +@297 := {vs : @136} -> {ts : @137} -> (h : @226 @7) -> (hs : @215) -> @231 @247 +@298 := @291 @60 +@299 := @265 @15 +@300 := @243 @256 +@301 := @132 @300 +@305 := {ts : @137} -> (h : @241) -> (hs : @299) -> @301 @247 +@306 := @298 @266 +@307 := @255 @264 +@308 := @132 @307 +@309 := @246 @266 +@312 := (h : @49) -> (hs : @273) -> @308 @309 +@313 := @306 @47 +@314 := @263 @271 +@315 := @132 @314 +@317 := (hs : @277) -> @315 @309 +@318 := @313 @275 +@319 := @132 @62 +@320 := @319 @309 +@321 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.denote +@323 := @321 @4 @15 +@324 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.__fits_0 +@326 := @324 @4 @15 +@329 := Coverage.RecRoots.wellFounded @4 @15 +@330 := @64 @3 +@332 := LexLeanPreservation.encPair @3 +@335 := @332 @3 @5 @5 +@339 := @332 @330 @5 @335 @329 +@342 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.root @4 @15 +@343 := Bool +@344 := Ne.{1} +@345 := LexLeanPreservation.Obs +@346 := @344 @345 +@347 := LexLeanPreservation.Rel +@350 := @346 (@347 @15 @17) +@351 := LexLeanPreservation.Obs.stuck +@354 := (f : @343) -> (v : @54) -> @350 @351 +@356 := LexLeanPreservation.Rust.rel_ne_stuck @326 +@363 := (v : @54) -> @346 (@347 (@324 @12 @4) @17) @351 +@364 := @356 @339 +@368 := @346 (@347 @326 @339) @351 +@369 := @135 @65 +@370 := LexLeanPreservation.Rust.FunSem +@371 := #9 +@377 := (n : @3) -> @370 @371 @152 @146 @17 @138 +@378 := Eq.{1} +@379 := Option.{0} +@380 := @379 @82 +@381 := @378 @380 +@388 := LexLeanRuntime.index (@135 @82) @82 (LexLeanRuntime.instIndexableList @82) +@392 := @381 (@388 (@83 @371) @138) +@393 := Option.some.{0} +@394 := @393 @82 +@395 := @394 @140 +@396 := @392 @395 +@397 := #10 +@401 := @107 @397 @371 @152 @140 +@402 := LexLeanTarget.TargetSyntax.Function.types +@403 := @402 @138 +@404 := @401 @403 +@405 := @379 @369 +@406 := @378 @405 +@407 := LexLeanTarget.TargetSemantics.bindAll +@408 := LexLeanTarget.TargetSyntax.Function.parameters +@413 := @406 (@407 (@408 @146) @138 @75) +@414 := @393 @369 +@415 := @414 @140 +@416 := @413 @415 +@417 := @379 @343 +@418 := @378 @417 +@419 := LexLeanPreservation.Rust.fnFallible +@420 := #11 +@423 := @418 (@419 @420 @371) +@424 := @393 @343 +@425 := @424 @140 +@426 := @423 @425 +@427 := LexLeanPreservation.RunConv +@428 := #13 +@432 := @427 @428 @397 @152 @140 +@434 := @346 @138 @351 +@435 := Exists.{1} +@436 := LexLeanPreservation.Rust.ROut +@437 := @435 @436 +@438 := And +@439 := LexLeanPreservation.Rust.RealizesFn +@443 := @438 (@439 @371 @152 @17) +@444 := LexLeanPreservation.Rust.RCI +@446 := @444 #15 +@447 := LexLeanPreservation.Rust.fnIdent +@448 := @447 @428 +@455 := (hne : @434) -> @437 (fun (ro : @436) => @443 (@446 @448 @420 @17)) +@470 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {f : @3} -> + {fn : @82} -> + {args : @136} -> + {env : @369} -> + {F : @343} -> + {o : @345} -> + (hB : @377) -> + (hfn : @396) -> (hwt : @404) -> (hbind : @416) -> (hF : @426) -> (hA : @432) -> @455 +@472 := LexLeanPreservation.Rust.compose @0 +@473 := @370 @0 +@478 := (n : @3) -> @473 @152 @146 @17 @138 +@479 := @388 @84 +@482 := @381 (@479 @138) @395 +@486 := @118 @371 @152 @140 @403 +@487 := @427 @0 +@490 := @487 @397 @152 @140 +@504 := {c : @9} -> + {A : @10} -> + {f : @3} -> + {fn : @82} -> + {args : @136} -> + {env : @369} -> + {F : @343} -> + {o : @345} -> + (hB : @478) -> + (hfn : @482) -> (hwt : @486) -> (hbind : @416) -> (hF : @426) -> (hA : @490) -> @455 +@505 := @472 @1 +@506 := @473 @1 +@510 := (n : @3) -> @506 @146 @17 @138 +@513 := @126 @152 @140 @403 +@514 := @419 @1 +@517 := @418 (@514 @371) @425 +@518 := @444 @1 +@528 := (hbind : @416) -> + (hF : @517) -> (hA : @490) -> (hne : @434) -> @437 (fun (ro : @436) => @443 (@518 @448 @420 @17)) +@538 := {A : @10} -> + {f : @3} -> + {fn : @82} -> + {args : @136} -> + {env : @369} -> {F : @343} -> {o : @345} -> (hB : @510) -> (hfn : @482) -> (hwt : @513) -> @528 +@539 := @505 @2 +@541 := @506 @2 @17 +@543 := (n : @3) -> @541 @138 +@544 := @132 @140 +@545 := @544 @403 +@554 := {f : @3} -> + {fn : @82} -> + {args : @136} -> + {env : @369} -> {F : @343} -> {o : @345} -> (hB : @543) -> (hfn : @482) -> (hwt : @545) -> @528 +@555 := @539 @72 +@557 := (n : @3) -> @541 @72 +@558 := @479 @72 +@559 := @381 @558 +@560 := @559 @395 +@561 := @514 @72 +@562 := @418 @561 +@563 := @562 @425 +@564 := @487 @72 +@566 := @564 @152 @140 +@568 := @518 (@447 @72) +@576 := (hF : @563) -> (hA : @566) -> (hne : @434) -> @437 (fun (ro : @436) => @443 (@568 @420 @17)) +@585 := {fn : @82} -> + {args : @136} -> + {env : @369} -> + {F : @343} -> {o : @345} -> (hB : @557) -> (hfn : @560) -> (hwt : @545) -> (hbind : @416) -> @576 +@586 := @555 @102 +@588 := @559 (@394 @102) +@589 := @402 @102 +@590 := @544 @589 +@592 := @407 (@408 @102) +@604 := {args : @136} -> + {env : @369} -> + {F : @343} -> + {o : @345} -> + (hB : @557) -> (hfn : @588) -> (hwt : @590) -> (hbind : @406 (@592 @138 @75) @415) -> @576 +@605 := @586 @62 +@607 := @282 (@229 @57) +@609 := @132 @607 @589 +@611 := @58 (@5 @152) +@613 := @611 (@282 @57) +@617 := @406 (@592 @613 @75) @415 +@619 := @58 (@5 @397) +@621 := @58 (@5 @371) +@623 := @619 (@621 @57) +@625 := @564 @623 @140 +@627 := @58 (@5 @428) +@630 := @58 (@5 #12) +@647 := {env : @369} -> + {F : @343} -> + {o : @345} -> + (hB : @557) -> + (hfn : @588) -> + (hwt : @609) -> + (hbind : @617) -> + (hF : @563) -> + (hA : @625) -> (hne : @434) -> @437 (fun (ro : @436) => @443 (@568 (@627 (@630 @57)) @17)) +@648 := @605 @80 +@650 := @229 (@243 @57) +@652 := @132 @650 @589 +@663 := @406 (@592 @607 @75) (@414 (@76 (@70 @228) (@76 (@73 @281) @75))) +@665 := @621 (@611 @57) +@667 := @564 @665 @140 +@669 := @58 (@5 @420) +@685 := {F : @343} -> + {o : @345} -> + (hB : @557) -> + (hfn : @588) -> + (hwt : @652) -> + (hbind : @663) -> + (hF : @563) -> + (hA : @667) -> (hne : @434) -> @437 (fun (ro : @436) => @443 (@568 (@630 (@669 @57)) @17)) +@686 := @648 @81 +@687 := @301 @589 +@698 := @406 (@592 @650 @75) (@414 (@76 (@70 @242) (@76 (@73 @228) @75))) +@700 := @562 (@424 @81) +@702 := @564 @613 @140 +@703 := @439 @81 +@721 := {o : @345} -> + (hB : @557) -> + (hfn : @588) -> + (hwt : @687) -> + (hbind : @698) -> + (hF : @700) -> + (hA : @702) -> + (hne : @434) -> @437 (fun (ro : @436) => @438 (@703 @152 @17) (@568 (@669 (@619 @57)) @17)) +@722 := @686 @323 +@723 := @308 @589 +@734 := @406 (@592 @300 @75) (@414 (@76 (@70 @225) (@76 (@73 @242) @75))) +@735 := @564 @607 +@737 := @321 @146 @138 +@738 := @735 @737 +@740 := @321 @152 @146 +@759 := (hB : @557) -> + (hfn : @588) -> + (hwt : @723) -> + (hbind : @734) -> + (hF : @700) -> + (hA : @738) -> + (hne : @346 @740 @351) -> + @437 (fun (ro : @436) => @438 (@703 (@321 @397 @371) @17) (@568 @623 @17)) +@760 := @722 @106 +@761 := @315 @589 +@772 := @406 (@592 @307 @75) (@414 (@76 (@70 @239) (@76 (@73 @225) @75))) +@773 := @564 @650 +@775 := @321 @138 @140 +@794 := (hfn : @588) -> + (hwt : @761) -> + (hbind : @772) -> + (hF : @700) -> + (hA : @773 @775) -> + (hne : @346 @737 @351) -> + @437 (fun (ro : @436) => @438 (@703 (@321 @371 @152) @17) (@568 @665 @17)) +@795 := Eq.refl.{1} +@798 := @760 (@795 @380 @558) +@799 := @319 @589 +@810 := @406 (@592 @314 @75) (@414 (@76 (@70 @6) (@76 (@73 @239) @75))) +@811 := @564 @300 +@813 := @321 @140 @142 +@829 := (hwt : @799) -> + (hbind : @810) -> + (hF : @700) -> + (hA : @811 @813) -> + (hne : @346 @775 @351) -> @437 (fun (ro : @436) => @438 (@703 @740 @17) (@568 @613 @17)) +@830 := @798 @318 +@832 := @592 @62 @75 +@835 := @406 @832 (@414 @80) +@836 := @564 @307 +@838 := @321 @142 @12 +@853 := (hbind : @835) -> + (hF : @700) -> + (hA : @836 @838) -> + (hne : @346 @813 @351) -> @437 (fun (ro : @436) => @438 (@703 @737 @17) (@568 @607 @17)) +@856 := @830 (@795 @405 @832) +@857 := @564 @314 +@859 := @321 @12 @4 +@873 := (hF : @700) -> + (hA : @857 @859) -> + (hne : @346 @838 @351) -> @437 (fun (ro : @436) => @438 (@703 @775 @17) (@568 @650 @17)) +@876 := @856 (@795 @417 @561) +@890 := (hA : @564 @62 @323) -> + (hne : @346 @859 @351) -> @437 (fun (ro : @436) => @438 (@703 @813 @17) (@568 @300 @17)) +@891 := @876 @342 +@902 := (hne : @346 @323 @351) -> @437 (fun (ro : @436) => @438 (@703 @838 @17) (@568 @307 @17)) +@903 := @891 @364 +@909 := @438 (@703 @859 @17) (@568 @314 @17) +@911 := @437 (fun (ro : @436) => @909) +@913 := @437 (fun (__e_ro : @436) => @909) +@918 := LexLeanPreservation.Rust.RepresentableL (@59 (@58 @18 @57)) +@919 := (__e_hrep : @918) -> @913 +@920 := fun (__e_hrep : @918) => @903 +@921 := (b : @3) -> @919 +@922 := fun (b : @3) => @920 +@923 := (a : @3) -> @921 +@924 := fun (a : @3) => @922 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R32/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R32/Compose/RustStd.lex.tex new file mode 100644 index 000000000..10470679d --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R32/Compose/RustStd.lex.tex @@ -0,0 +1,467 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.Compose.RustStd.root : @923 := @924 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.RustStd.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.RustStd.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.RustStd.flags +@3 := Nat +@4 := #2 +@5 := LexLeanTarget.TargetSyntax.Value.nat +@6 := @5 @4 +@7 := LexLeanTarget.TargetSyntax.Ty.nat +@8 := LexLeanTarget.TargetSyntax.Program +@9 := LexLeanPreservation.Rust.RCrate +@10 := LexLeanPreservation.Rust.Flags +@11 := LexLeanPreservation.Rust.WT +@12 := #3 +@14 := @11 @12 @4 +@15 := #1 +@16 := @14 @15 +@17 := #0 +@18 := @5 @17 +@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 +@26 := LexLeanPreservation.Rust.wt_nat @0 +@27 := @11 @0 +@34 := {c : @9} -> {A : @10} -> (n : @3) -> @27 @4 @15 @18 @7 +@35 := @26 @1 +@36 := @27 @1 +@41 := {A : @10} -> (n : @3) -> @36 @15 @18 @7 +@42 := @35 @2 +@43 := @36 @2 +@46 := (n : @3) -> @43 @18 @7 +@47 := @42 @4 +@49 := @43 @6 @7 +@50 := @5 @15 +@51 := @42 @15 +@53 := @43 @50 @7 +@54 := LexLeanTarget.TargetSyntax.Value +@55 := List.nil.{0} +@56 := List.cons.{0} +@57 := @55 @54 +@58 := @56 @54 +@59 := @58 @50 +@60 := @59 @57 +@61 := @58 @6 +@62 := @61 @60 +@64 := Prod.{0, 0} @3 +@65 := @64 @54 +@66 := 1 +@69 := Prod.mk.{0, 0} @3 @54 +@70 := @69 @66 +@71 := @70 @50 +@72 := 0 +@73 := @69 @72 +@74 := @73 @6 +@75 := @55 @65 +@76 := @56 @65 +@78 := @76 @74 @75 +@80 := @76 @71 @78 +@81 := Bool.true +@82 := LexLeanTarget.TargetSyntax.Function +@83 := LexLeanTarget.TargetSyntax.Program.functions +@84 := @83 @0 +@85 := LexLeanTarget.TargetSyntax.Ty +@86 := @55 @3 +@87 := @55 @85 +@88 := LexLeanTarget.TargetSyntax.Ty.unit +@89 := LexLeanTarget.TargetSyntax.Value.unit +@92 := LexLeanTarget.TargetSyntax.Expr.value @88 @89 +@97 := LexLeanTarget.TargetSyntax.Function.mk @86 @87 @88 @92 +@102 := List.getD.{0} @82 @84 @72 @97 +@106 := fun (__e_n : @3) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.RustStd.root @17 @72 +@107 := LexLeanPreservation.Rust.WTL +@115 := {p : @8} -> {c : @9} -> {A : @10} -> @107 @4 @15 @17 @57 @87 +@117 := LexLeanPreservation.Rust.wtl_nil @0 +@118 := @107 @0 +@124 := {c : @9} -> {A : @10} -> @118 @15 @17 @57 @87 +@125 := @117 @1 +@126 := @118 @1 +@130 := {A : @10} -> @126 @17 @57 @87 +@131 := @125 @2 +@132 := @126 @2 +@133 := @132 @57 +@134 := @133 @87 +@135 := List.{0} +@136 := @135 @54 +@137 := @135 @85 +@138 := #6 +@139 := @11 @138 +@140 := #5 +@141 := @139 @140 +@142 := #4 +@145 := @141 @142 @12 @4 +@146 := #7 +@151 := @107 @146 @138 @140 @4 @15 +@152 := #8 +@155 := @107 @152 @146 @138 +@157 := @58 @140 @12 +@158 := @155 @157 +@159 := @56 @85 +@161 := @159 @142 @4 +@171 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {v : @54} -> {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @145) -> (hs : @151) -> @158 @161 +@173 := LexLeanPreservation.Rust.wtl_cons @0 +@193 := {c : @9} -> + {A : @10} -> + {v : @54} -> + {t : @85} -> + {vs : @136} -> + {ts : @137} -> + (h : @27 @140 @142 @12 @4) -> (hs : @118 @138 @140 @4 @15) -> @118 @146 @138 @157 @161 +@194 := @173 @1 +@210 := {A : @10} -> + {v : @54} -> + {t : @85} -> + {vs : @136} -> + {ts : @137} -> (h : @36 @142 @12 @4) -> (hs : @126 @140 @4 @15) -> @126 @138 @157 @161 +@211 := @194 @2 +@213 := @43 @12 @4 +@215 := @132 @4 @15 +@223 := {v : @54} -> + {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @213) -> (hs : @215) -> @132 @157 @161 +@224 := @211 @50 +@225 := @5 @142 +@226 := @43 @225 +@227 := @226 @4 +@228 := @5 @138 +@229 := @58 @228 +@231 := @132 (@229 @12) +@237 := {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @227) -> (hs : @215) -> @231 @161 +@238 := @224 @7 +@239 := @5 @12 +@241 := @43 @239 @7 +@242 := @5 @140 +@243 := @58 @242 +@245 := @132 (@243 @12) +@246 := @159 @7 +@247 := @246 @4 +@252 := {vs : @136} -> {ts : @137} -> (h : @241) -> (hs : @215) -> @245 @247 +@253 := @238 @57 +@254 := @133 @15 +@255 := @58 @225 +@256 := @255 @57 +@261 := {ts : @137} -> (h : @49) -> (hs : @254) -> @132 @256 @247 +@262 := @253 @87 +@263 := @58 @239 +@264 := @263 @57 +@265 := @132 @264 +@266 := @246 @87 +@269 := (h : @53) -> (hs : @134) -> @265 @266 +@270 := @262 @51 +@271 := @61 @57 +@273 := @132 @271 @266 +@274 := (hs : @134) -> @273 +@275 := @270 @131 +@277 := @132 @60 @266 +@278 := @211 @6 +@280 := @43 @242 @4 +@281 := @5 @146 +@282 := @58 @281 +@290 := {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @280) -> (hs : @215) -> @132 (@282 @12) @161 +@291 := @278 @7 +@297 := {vs : @136} -> {ts : @137} -> (h : @226 @7) -> (hs : @215) -> @231 @247 +@298 := @291 @60 +@299 := @265 @15 +@300 := @243 @256 +@301 := @132 @300 +@305 := {ts : @137} -> (h : @241) -> (hs : @299) -> @301 @247 +@306 := @298 @266 +@307 := @255 @264 +@308 := @132 @307 +@309 := @246 @266 +@312 := (h : @49) -> (hs : @273) -> @308 @309 +@313 := @306 @47 +@314 := @263 @271 +@315 := @132 @314 +@317 := (hs : @277) -> @315 @309 +@318 := @313 @275 +@319 := @132 @62 +@320 := @319 @309 +@321 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.denote +@323 := @321 @4 @15 +@324 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.__fits_0 +@326 := @324 @4 @15 +@329 := Coverage.RecRoots.wellFounded @4 @15 +@330 := @64 @3 +@332 := LexLeanPreservation.encPair @3 +@335 := @332 @3 @5 @5 +@339 := @332 @330 @5 @335 @329 +@342 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.root @4 @15 +@343 := Bool +@344 := Ne.{1} +@345 := LexLeanPreservation.Obs +@346 := @344 @345 +@347 := LexLeanPreservation.Rel +@350 := @346 (@347 @15 @17) +@351 := LexLeanPreservation.Obs.stuck +@354 := (f : @343) -> (v : @54) -> @350 @351 +@356 := LexLeanPreservation.Rust.rel_ne_stuck @326 +@363 := (v : @54) -> @346 (@347 (@324 @12 @4) @17) @351 +@364 := @356 @339 +@368 := @346 (@347 @326 @339) @351 +@369 := @135 @65 +@370 := LexLeanPreservation.Rust.FunSem +@371 := #9 +@377 := (n : @3) -> @370 @371 @152 @146 @17 @138 +@378 := Eq.{1} +@379 := Option.{0} +@380 := @379 @82 +@381 := @378 @380 +@388 := LexLeanRuntime.index (@135 @82) @82 (LexLeanRuntime.instIndexableList @82) +@392 := @381 (@388 (@83 @371) @138) +@393 := Option.some.{0} +@394 := @393 @82 +@395 := @394 @140 +@396 := @392 @395 +@397 := #10 +@401 := @107 @397 @371 @152 @140 +@402 := LexLeanTarget.TargetSyntax.Function.types +@403 := @402 @138 +@404 := @401 @403 +@405 := @379 @369 +@406 := @378 @405 +@407 := LexLeanTarget.TargetSemantics.bindAll +@408 := LexLeanTarget.TargetSyntax.Function.parameters +@413 := @406 (@407 (@408 @146) @138 @75) +@414 := @393 @369 +@415 := @414 @140 +@416 := @413 @415 +@417 := @379 @343 +@418 := @378 @417 +@419 := LexLeanPreservation.Rust.fnFallible +@420 := #11 +@423 := @418 (@419 @420 @371) +@424 := @393 @343 +@425 := @424 @140 +@426 := @423 @425 +@427 := LexLeanPreservation.RunConv +@428 := #13 +@432 := @427 @428 @397 @152 @140 +@434 := @346 @138 @351 +@435 := Exists.{1} +@436 := LexLeanPreservation.Rust.ROut +@437 := @435 @436 +@438 := And +@439 := LexLeanPreservation.Rust.RealizesFn +@443 := @438 (@439 @371 @152 @17) +@444 := LexLeanPreservation.Rust.RCI +@446 := @444 #15 +@447 := LexLeanPreservation.Rust.fnIdent +@448 := @447 @428 +@455 := (hne : @434) -> @437 (fun (ro : @436) => @443 (@446 @448 @420 @17)) +@470 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {f : @3} -> + {fn : @82} -> + {args : @136} -> + {env : @369} -> + {F : @343} -> + {o : @345} -> + (hB : @377) -> + (hfn : @396) -> (hwt : @404) -> (hbind : @416) -> (hF : @426) -> (hA : @432) -> @455 +@472 := LexLeanPreservation.Rust.compose @0 +@473 := @370 @0 +@478 := (n : @3) -> @473 @152 @146 @17 @138 +@479 := @388 @84 +@482 := @381 (@479 @138) @395 +@486 := @118 @371 @152 @140 @403 +@487 := @427 @0 +@490 := @487 @397 @152 @140 +@504 := {c : @9} -> + {A : @10} -> + {f : @3} -> + {fn : @82} -> + {args : @136} -> + {env : @369} -> + {F : @343} -> + {o : @345} -> + (hB : @478) -> + (hfn : @482) -> (hwt : @486) -> (hbind : @416) -> (hF : @426) -> (hA : @490) -> @455 +@505 := @472 @1 +@506 := @473 @1 +@510 := (n : @3) -> @506 @146 @17 @138 +@513 := @126 @152 @140 @403 +@514 := @419 @1 +@517 := @418 (@514 @371) @425 +@518 := @444 @1 +@528 := (hbind : @416) -> + (hF : @517) -> (hA : @490) -> (hne : @434) -> @437 (fun (ro : @436) => @443 (@518 @448 @420 @17)) +@538 := {A : @10} -> + {f : @3} -> + {fn : @82} -> + {args : @136} -> + {env : @369} -> {F : @343} -> {o : @345} -> (hB : @510) -> (hfn : @482) -> (hwt : @513) -> @528 +@539 := @505 @2 +@541 := @506 @2 @17 +@543 := (n : @3) -> @541 @138 +@544 := @132 @140 +@545 := @544 @403 +@554 := {f : @3} -> + {fn : @82} -> + {args : @136} -> + {env : @369} -> {F : @343} -> {o : @345} -> (hB : @543) -> (hfn : @482) -> (hwt : @545) -> @528 +@555 := @539 @72 +@557 := (n : @3) -> @541 @72 +@558 := @479 @72 +@559 := @381 @558 +@560 := @559 @395 +@561 := @514 @72 +@562 := @418 @561 +@563 := @562 @425 +@564 := @487 @72 +@566 := @564 @152 @140 +@568 := @518 (@447 @72) +@576 := (hF : @563) -> (hA : @566) -> (hne : @434) -> @437 (fun (ro : @436) => @443 (@568 @420 @17)) +@585 := {fn : @82} -> + {args : @136} -> + {env : @369} -> + {F : @343} -> {o : @345} -> (hB : @557) -> (hfn : @560) -> (hwt : @545) -> (hbind : @416) -> @576 +@586 := @555 @102 +@588 := @559 (@394 @102) +@589 := @402 @102 +@590 := @544 @589 +@592 := @407 (@408 @102) +@604 := {args : @136} -> + {env : @369} -> + {F : @343} -> + {o : @345} -> + (hB : @557) -> (hfn : @588) -> (hwt : @590) -> (hbind : @406 (@592 @138 @75) @415) -> @576 +@605 := @586 @62 +@607 := @282 (@229 @57) +@609 := @132 @607 @589 +@611 := @58 (@5 @152) +@613 := @611 (@282 @57) +@617 := @406 (@592 @613 @75) @415 +@619 := @58 (@5 @397) +@621 := @58 (@5 @371) +@623 := @619 (@621 @57) +@625 := @564 @623 @140 +@627 := @58 (@5 @428) +@630 := @58 (@5 #12) +@647 := {env : @369} -> + {F : @343} -> + {o : @345} -> + (hB : @557) -> + (hfn : @588) -> + (hwt : @609) -> + (hbind : @617) -> + (hF : @563) -> + (hA : @625) -> (hne : @434) -> @437 (fun (ro : @436) => @443 (@568 (@627 (@630 @57)) @17)) +@648 := @605 @80 +@650 := @229 (@243 @57) +@652 := @132 @650 @589 +@663 := @406 (@592 @607 @75) (@414 (@76 (@70 @228) (@76 (@73 @281) @75))) +@665 := @621 (@611 @57) +@667 := @564 @665 @140 +@669 := @58 (@5 @420) +@685 := {F : @343} -> + {o : @345} -> + (hB : @557) -> + (hfn : @588) -> + (hwt : @652) -> + (hbind : @663) -> + (hF : @563) -> + (hA : @667) -> (hne : @434) -> @437 (fun (ro : @436) => @443 (@568 (@630 (@669 @57)) @17)) +@686 := @648 @81 +@687 := @301 @589 +@698 := @406 (@592 @650 @75) (@414 (@76 (@70 @242) (@76 (@73 @228) @75))) +@700 := @562 (@424 @81) +@702 := @564 @613 @140 +@703 := @439 @81 +@721 := {o : @345} -> + (hB : @557) -> + (hfn : @588) -> + (hwt : @687) -> + (hbind : @698) -> + (hF : @700) -> + (hA : @702) -> + (hne : @434) -> @437 (fun (ro : @436) => @438 (@703 @152 @17) (@568 (@669 (@619 @57)) @17)) +@722 := @686 @323 +@723 := @308 @589 +@734 := @406 (@592 @300 @75) (@414 (@76 (@70 @225) (@76 (@73 @242) @75))) +@735 := @564 @607 +@737 := @321 @146 @138 +@738 := @735 @737 +@740 := @321 @152 @146 +@759 := (hB : @557) -> + (hfn : @588) -> + (hwt : @723) -> + (hbind : @734) -> + (hF : @700) -> + (hA : @738) -> + (hne : @346 @740 @351) -> + @437 (fun (ro : @436) => @438 (@703 (@321 @397 @371) @17) (@568 @623 @17)) +@760 := @722 @106 +@761 := @315 @589 +@772 := @406 (@592 @307 @75) (@414 (@76 (@70 @239) (@76 (@73 @225) @75))) +@773 := @564 @650 +@775 := @321 @138 @140 +@794 := (hfn : @588) -> + (hwt : @761) -> + (hbind : @772) -> + (hF : @700) -> + (hA : @773 @775) -> + (hne : @346 @737 @351) -> + @437 (fun (ro : @436) => @438 (@703 (@321 @371 @152) @17) (@568 @665 @17)) +@795 := Eq.refl.{1} +@798 := @760 (@795 @380 @558) +@799 := @319 @589 +@810 := @406 (@592 @314 @75) (@414 (@76 (@70 @6) (@76 (@73 @239) @75))) +@811 := @564 @300 +@813 := @321 @140 @142 +@829 := (hwt : @799) -> + (hbind : @810) -> + (hF : @700) -> + (hA : @811 @813) -> + (hne : @346 @775 @351) -> @437 (fun (ro : @436) => @438 (@703 @740 @17) (@568 @613 @17)) +@830 := @798 @318 +@832 := @592 @62 @75 +@835 := @406 @832 (@414 @80) +@836 := @564 @307 +@838 := @321 @142 @12 +@853 := (hbind : @835) -> + (hF : @700) -> + (hA : @836 @838) -> + (hne : @346 @813 @351) -> @437 (fun (ro : @436) => @438 (@703 @737 @17) (@568 @607 @17)) +@856 := @830 (@795 @405 @832) +@857 := @564 @314 +@859 := @321 @12 @4 +@873 := (hF : @700) -> + (hA : @857 @859) -> + (hne : @346 @838 @351) -> @437 (fun (ro : @436) => @438 (@703 @775 @17) (@568 @650 @17)) +@876 := @856 (@795 @417 @561) +@890 := (hA : @564 @62 @323) -> + (hne : @346 @859 @351) -> @437 (fun (ro : @436) => @438 (@703 @813 @17) (@568 @300 @17)) +@891 := @876 @342 +@902 := (hne : @346 @323 @351) -> @437 (fun (ro : @436) => @438 (@703 @838 @17) (@568 @307 @17)) +@903 := @891 @364 +@909 := @438 (@703 @859 @17) (@568 @314 @17) +@911 := @437 (fun (ro : @436) => @909) +@913 := @437 (fun (__e_ro : @436) => @909) +@918 := LexLeanPreservation.Rust.RepresentableL (@59 (@58 @18 @57)) +@919 := (__e_hrep : @918) -> @913 +@920 := fun (__e_hrep : @918) => @903 +@921 := (b : @3) -> @919 +@922 := fun (b : @3) => @920 +@923 := (a : @3) -> @921 +@924 := fun (a : @3) => @922 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R32/RustCore.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R32/RustCore.lean new file mode 100644 index 000000000..9eaac2fa0 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R32/RustCore.lean @@ -0,0 +1,57 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.RustCore +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1], types := [.nat, .nat], result := (.pair .nat (.pair .nat .nat)), + body := (.build .pair (.pair .nat (.pair .nat .nat)) [(.call 1 [(.var 0), (.value .nat (.nat 0))]), (.build .pair (.pair .nat .nat) [(.call 2 [(.var 0), (.var 1)]), (.call 3 [(.var 0), (.value .nat (.nat 0)), (.var 1)])])]) }, + { parameters := [0, 1], types := [.nat, .nat], result := .nat, + body := (.cond (.prim .natLt [(.var 0), (.value .nat (.nat 2))]) (.var 1) (.call 1 [(.prim .natSub [(.var 0), (.value .nat (.nat 2))]), (.prim .natAdd [(.var 1), (.value .nat (.nat 1))])])) }, + { parameters := [0, 1], types := [.nat, .nat], result := .nat, + body := (.cond (.prim .natEq [(.var 1), (.value .nat (.nat 0))]) (.var 0) (.cond (.prim .natLt [(.var 0), (.var 1)]) (.var 0) (.call 2 [(.prim .natSub [(.var 0), (.var 1)]), (.var 1)]))) }, + { parameters := [0, 1, 2], types := [.nat, .nat, .nat], result := .nat, + body := (.cond (.prim .natLt [(.var 1), (.var 2)]) (.cond (.prim .natLe [(.var 0), (.prim .natAdd [(.var 1), (.var 1)])]) (.var 1) (.call 3 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 1))]), (.var 2)])) (.var 2)) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .core, items := [ + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.pair .nat (.pair .nat .nat))) (.mk [] (.succeed (.pair (.call (.function 1) [(.copy (.generated .binding 0)), (.lit (.nat 0))] true) (.pair (.call (.function 2) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false) (.call (.function 3) [(.copy (.generated .binding 0)), (.lit (.nat 0)), (.copy (.generated .binding 1))] true)))))), + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false) (.mk [] (.succeed (.copy (.generated .binding 1)))) (.mk [] (.call (.function 1) [(.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.lit (.nat 2)))] (.call (.runtime .natSub) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))), (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] true)))] false))))), + (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .nat (.mk [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 8)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false) (.mk [] (.copy (.generated .binding 0))) (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 1)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false) (.mk [] (.copy (.generated .binding 0))) (.mk [] (.call (.function 2) [(.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))), (.copy (.generated .binding 1))] false))))))), + (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 2)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 13)), (.move (.generated .operand 14))] false) (.mk [(.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 18)) none (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] true))))] (.cond (.call (.runtime .natLe) [(.move (.generated .operand 17)), (.move (.generated .operand 18))] false) (.mk [] (.succeed (.copy (.generated .binding 1)))) (.mk [] (.call (.function 3) [(.copy (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 20)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] true))), (.copy (.generated .binding 2))] false)))) (.mk [] (.succeed (.copy (.generated .binding 2)))))))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [], (.succeed (.pair (.call (.function 1) [(.copy (.generated .binding 0)), (.lit (.nat 0))] true) (.pair (.call (.function 2) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false) (.call (.function 3) [(.copy (.generated .binding 0)), (.lit (.nat 0)), (.copy (.generated .binding 1))] true)))), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lNil))))))⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 2)))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false) (.mk [] (.succeed (.copy (.generated .binding 1)))) (.mk [] (.call (.function 1) [(.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.lit (.nat 2)))] (.call (.runtime .natSub) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))), (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] true)))] false))), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 2)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.copy (.generated .binding 1)))) (lb := []) (tb := (.call (.function 1) [(.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.lit (.nat 2)))] (.call (.runtime .natSub) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))), (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] true)))] false)) (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl))) (Corr.callF (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.lit (.nat 2)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl)))⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 8)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false) (.mk [] (.copy (.generated .binding 0))) (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 1)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false) (.mk [] (.copy (.generated .binding 0))) (.mk [] (.call (.function 2) [(.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))), (.copy (.generated .binding 1))] false))))), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 8)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.copy (.generated .binding 0))) (lb := [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 1)))]) (tb := (.cond (.call (.runtime .natLt) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false) (.mk [] (.copy (.generated .binding 0))) (.mk [] (.call (.function 2) [(.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))), (.copy (.generated .binding 1))] false)))) (Corr.bOfE (Corr.var rfl rfl)) (Corr.cond (lc := [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 1)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.copy (.generated .binding 0))) (lb := []) (tb := (.call (.function 2) [(.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))), (.copy (.generated .binding 1))] false)) (Corr.bOfE (Corr.var rfl rfl)) (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)))))⟩⟩ + +theorem fun3 : FunOK program krate flags 3 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 2)))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 13)), (.move (.generated .operand 14))] false) (.mk [(.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 18)) none (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] true))))] (.cond (.call (.runtime .natLe) [(.move (.generated .operand 17)), (.move (.generated .operand 18))] false) (.mk [] (.succeed (.copy (.generated .binding 1)))) (.mk [] (.call (.function 3) [(.copy (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 20)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] true))), (.copy (.generated .binding 2))] false)))) (.mk [] (.succeed (.copy (.generated .binding 2))))), [(2, .nat, (some 2)), (1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 2)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 13)), (.move (.generated .operand 14))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 18)) none (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] true))))]) (ta := (.cond (.call (.runtime .natLe) [(.move (.generated .operand 17)), (.move (.generated .operand 18))] false) (.mk [] (.succeed (.copy (.generated .binding 1)))) (.mk [] (.call (.function 3) [(.copy (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 20)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] true))), (.copy (.generated .binding 2))] false)))) (lb := []) (tb := (.succeed (.copy (.generated .binding 2)))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 18)) none (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] true))))]) (ce := (.call (.runtime .natLe) [(.move (.generated .operand 17)), (.move (.generated .operand 18))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.copy (.generated .binding 1)))) (lb := []) (tb := (.call (.function 3) [(.copy (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 20)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] true))), (.copy (.generated .binding 2))] false)) (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl))) (Corr.callF (ts := [.nat, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 19)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 20)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl))) (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | 3 => exact fun3 + | _ + 4 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.RustCore diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R32/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R32/RustStd.lean new file mode 100644 index 000000000..91116b242 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R32/RustStd.lean @@ -0,0 +1,57 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1], types := [.nat, .nat], result := (.pair .nat (.pair .nat .nat)), + body := (.build .pair (.pair .nat (.pair .nat .nat)) [(.call 1 [(.var 0), (.value .nat (.nat 0))]), (.build .pair (.pair .nat .nat) [(.call 2 [(.var 0), (.var 1)]), (.call 3 [(.var 0), (.value .nat (.nat 0)), (.var 1)])])]) }, + { parameters := [0, 1], types := [.nat, .nat], result := .nat, + body := (.cond (.prim .natLt [(.var 0), (.value .nat (.nat 2))]) (.var 1) (.call 1 [(.prim .natSub [(.var 0), (.value .nat (.nat 2))]), (.prim .natAdd [(.var 1), (.value .nat (.nat 1))])])) }, + { parameters := [0, 1], types := [.nat, .nat], result := .nat, + body := (.cond (.prim .natEq [(.var 1), (.value .nat (.nat 0))]) (.var 0) (.cond (.prim .natLt [(.var 0), (.var 1)]) (.var 0) (.call 2 [(.prim .natSub [(.var 0), (.var 1)]), (.var 1)]))) }, + { parameters := [0, 1, 2], types := [.nat, .nat, .nat], result := .nat, + body := (.cond (.prim .natLt [(.var 1), (.var 2)]) (.cond (.prim .natLe [(.var 0), (.prim .natAdd [(.var 1), (.var 1)])]) (.var 1) (.call 3 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 1))]), (.var 2)])) (.var 2)) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.pair .nat (.pair .nat .nat))) (.mk [] (.succeed (.pair (.call (.function 1) [(.copy (.generated .binding 0)), (.lit (.nat 0))] true) (.pair (.call (.function 2) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false) (.call (.function 3) [(.copy (.generated .binding 0)), (.lit (.nat 0)), (.copy (.generated .binding 1))] true)))))), + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false) (.mk [] (.succeed (.copy (.generated .binding 1)))) (.mk [] (.call (.function 1) [(.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.lit (.nat 2)))] (.call (.runtime .natSub) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))), (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] true)))] false))))), + (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .nat (.mk [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 8)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false) (.mk [] (.copy (.generated .binding 0))) (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 1)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false) (.mk [] (.copy (.generated .binding 0))) (.mk [] (.call (.function 2) [(.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))), (.copy (.generated .binding 1))] false))))))), + (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 2)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 13)), (.move (.generated .operand 14))] false) (.mk [(.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 18)) none (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] true))))] (.cond (.call (.runtime .natLe) [(.move (.generated .operand 17)), (.move (.generated .operand 18))] false) (.mk [] (.succeed (.copy (.generated .binding 1)))) (.mk [] (.call (.function 3) [(.copy (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 20)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] true))), (.copy (.generated .binding 2))] false)))) (.mk [] (.succeed (.copy (.generated .binding 2)))))))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [], (.succeed (.pair (.call (.function 1) [(.copy (.generated .binding 0)), (.lit (.nat 0))] true) (.pair (.call (.function 2) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false) (.call (.function 3) [(.copy (.generated .binding 0)), (.lit (.nat 0)), (.copy (.generated .binding 1))] true)))), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lNil))))))⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 2)))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false) (.mk [] (.succeed (.copy (.generated .binding 1)))) (.mk [] (.call (.function 1) [(.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.lit (.nat 2)))] (.call (.runtime .natSub) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))), (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] true)))] false))), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 2)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.copy (.generated .binding 1)))) (lb := []) (tb := (.call (.function 1) [(.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.lit (.nat 2)))] (.call (.runtime .natSub) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))), (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] true)))] false)) (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl))) (Corr.callF (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.lit (.nat 2)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl)))⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 8)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false) (.mk [] (.copy (.generated .binding 0))) (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 1)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false) (.mk [] (.copy (.generated .binding 0))) (.mk [] (.call (.function 2) [(.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))), (.copy (.generated .binding 1))] false))))), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 8)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.copy (.generated .binding 0))) (lb := [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 1)))]) (tb := (.cond (.call (.runtime .natLt) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false) (.mk [] (.copy (.generated .binding 0))) (.mk [] (.call (.function 2) [(.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))), (.copy (.generated .binding 1))] false)))) (Corr.bOfE (Corr.var rfl rfl)) (Corr.cond (lc := [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 1)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.copy (.generated .binding 0))) (lb := []) (tb := (.call (.function 2) [(.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))), (.copy (.generated .binding 1))] false)) (Corr.bOfE (Corr.var rfl rfl)) (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)))))⟩⟩ + +theorem fun3 : FunOK program krate flags 3 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 2)))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 13)), (.move (.generated .operand 14))] false) (.mk [(.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 18)) none (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] true))))] (.cond (.call (.runtime .natLe) [(.move (.generated .operand 17)), (.move (.generated .operand 18))] false) (.mk [] (.succeed (.copy (.generated .binding 1)))) (.mk [] (.call (.function 3) [(.copy (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 20)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] true))), (.copy (.generated .binding 2))] false)))) (.mk [] (.succeed (.copy (.generated .binding 2))))), [(2, .nat, (some 2)), (1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 2)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 13)), (.move (.generated .operand 14))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 18)) none (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] true))))]) (ta := (.cond (.call (.runtime .natLe) [(.move (.generated .operand 17)), (.move (.generated .operand 18))] false) (.mk [] (.succeed (.copy (.generated .binding 1)))) (.mk [] (.call (.function 3) [(.copy (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 20)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] true))), (.copy (.generated .binding 2))] false)))) (lb := []) (tb := (.succeed (.copy (.generated .binding 2)))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 18)) none (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] true))))]) (ce := (.call (.runtime .natLe) [(.move (.generated .operand 17)), (.move (.generated .operand 18))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.copy (.generated .binding 1)))) (lb := []) (tb := (.call (.function 3) [(.copy (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 20)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] true))), (.copy (.generated .binding 2))] false)) (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl))) (Corr.callF (ts := [.nat, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 19)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 20)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl))) (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | 3 => exact fun3 + | _ + 4 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R33.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R33.lean similarity index 99% rename from examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R33.lean rename to examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R33.lean index 7f478474b..30404793d 100644 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R33.lean +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R33.lean @@ -18,7 +18,7 @@ set_option maxRecDepth 100000 set_option maxHeartbeats 0 set_option synthInstance.maxHeartbeats 0 set_option linter.unusedVariables false -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33 def __prog : _root_.LexLeanTarget.TargetSyntax.Program := { adts := [{ constructors := [[.nat], [(.adt 0), (.adt 0)]] }], functions := [ @@ -68,4 +68,4 @@ def denote (t : (Coverage.Syntax.Term)) : _root_.LexLeanPreservation.Obs := theorem root (t : (Coverage.Syntax.Term)) : _root_.LexLeanPreservation.RunConv __prog 0 [(__enc_0 t)] (_root_.LexLeanPreservation.Rel (__fits_0 t) ((_root_.LexLeanPreservation.encPair __enc_0 __enc_0) (Coverage.RecRoots.rewrite t))) := _root_.LexLeanPreservation.run_of_funRel (__rel_0 t) -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33 +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33 diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R33/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R33/Compose/RustStd.lex.tex new file mode 100644 index 000000000..eb5995255 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R33/Compose/RustStd.lex.tex @@ -0,0 +1,573 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.Compose.RustStd.__wt_0 : @520 := @519 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.Compose.RustStd.__wt_0], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.Compose.RustStd.root : @1138 := @1139 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.RustStd.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.RustStd.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.RustStd.flags +@3 := Coverage.Syntax.Term +@4 := #0 +@5 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.__enc_0 +@6 := @5 @4 +@7 := LexLeanPreservation.Rust.WT +@8 := LexLeanTarget.TargetSyntax.Ty.adt +@9 := 0 +@10 := @8 @9 +@11 := @7 @0 +@12 := @11 @1 +@13 := @12 @2 +@15 := @13 @6 @10 +@16 := fun (__v : @3) => @15 +@17 := LexLeanTarget.TargetSyntax.Value.nat +@18 := @17 @4 +@19 := LexLeanTarget.TargetSyntax.Ty.nat +@20 := LexLeanTarget.TargetSyntax.Program +@21 := LexLeanPreservation.Rust.RCrate +@22 := LexLeanPreservation.Rust.Flags +@23 := Nat +@24 := #3 +@25 := @7 @24 +@26 := #2 +@27 := @25 @26 +@28 := #1 +@35 := {p : @20} -> {c : @21} -> {A : @22} -> (n : @23) -> @27 @28 @18 @19 +@37 := LexLeanPreservation.Rust.wt_nat @0 +@44 := {c : @21} -> {A : @22} -> (n : @23) -> @11 @26 @28 @18 @19 +@45 := @37 @1 +@50 := {A : @22} -> (n : @23) -> @12 @28 @18 @19 +@51 := @45 @2 +@53 := @13 @18 @19 +@54 := (n : @23) -> @53 +@55 := @51 @4 +@56 := LexLeanTarget.TargetSyntax.Value +@57 := LexLeanTarget.TargetSyntax.Ty +@58 := List.nil.{0} +@59 := List.cons.{0} +@60 := @58 @56 +@61 := @59 @56 +@63 := @61 @18 @60 +@64 := @58 @57 +@65 := @59 @57 +@66 := @65 @19 +@67 := @66 @64 +@68 := LexLeanPreservation.Rust.WTL +@76 := {p : @20} -> {c : @21} -> {A : @22} -> @68 @26 @28 @4 @60 @64 +@78 := LexLeanPreservation.Rust.wtl_nil @0 +@79 := @68 @0 +@85 := {c : @21} -> {A : @22} -> @79 @28 @4 @60 @64 +@86 := @78 @1 +@87 := @79 @1 +@91 := {A : @22} -> @87 @4 @60 @64 +@92 := @86 @2 +@93 := @87 @2 +@94 := @93 @60 +@95 := @94 @64 +@96 := List.{0} +@97 := @96 @56 +@98 := @96 @57 +@99 := #6 +@100 := @7 @99 +@101 := #5 +@102 := @100 @101 +@103 := #4 +@106 := @102 @103 @24 @26 +@107 := #7 +@112 := @68 @107 @99 @101 @26 @28 +@113 := #8 +@116 := @68 @113 @107 @99 +@118 := @61 @101 @24 +@119 := @116 @118 +@121 := @65 @103 @26 +@131 := {p : @20} -> + {c : @21} -> + {A : @22} -> + {v : @56} -> {t : @57} -> {vs : @97} -> {ts : @98} -> (h : @106) -> (hs : @112) -> @119 @121 +@133 := LexLeanPreservation.Rust.wtl_cons @0 +@137 := @11 @101 @103 @24 @26 +@141 := @79 @99 @101 @26 @28 +@153 := {c : @21} -> + {A : @22} -> + {v : @56} -> + {t : @57} -> {vs : @97} -> {ts : @98} -> (h : @137) -> (hs : @141) -> @79 @107 @99 @118 @121 +@154 := @133 @1 +@157 := @12 @103 @24 @26 +@160 := @87 @101 @26 @28 +@170 := {A : @22} -> + {v : @56} -> + {t : @57} -> {vs : @97} -> {ts : @98} -> (h : @157) -> (hs : @160) -> @87 @99 @118 @121 +@171 := @154 @2 +@173 := @13 @24 @26 +@175 := @93 @26 @28 +@183 := {v : @56} -> + {t : @57} -> {vs : @97} -> {ts : @98} -> (h : @173) -> (hs : @175) -> @93 @118 @121 +@184 := @171 @18 +@185 := @17 @24 +@197 := {t : @57} -> + {vs : @97} -> {ts : @98} -> (h : @13 @185 @26) -> (hs : @175) -> @93 (@61 (@17 @101) @24) @121 +@198 := @184 @19 +@199 := @17 @26 +@201 := @13 @199 @19 +@205 := @93 (@61 (@17 @103) @24) +@206 := @66 @26 +@211 := {vs : @97} -> {ts : @98} -> (h : @201) -> (hs : @175) -> @205 @206 +@212 := @198 @60 +@213 := @17 @28 +@215 := @13 @213 @19 +@216 := @94 @28 +@218 := @61 @185 @60 +@223 := {ts : @98} -> (h : @215) -> (hs : @216) -> @93 @218 @206 +@224 := @212 @64 +@226 := @61 @199 @60 +@227 := @93 @226 +@230 := (h : @53) -> (hs : @95) -> @227 @67 +@231 := @224 @55 +@233 := @61 @213 @60 +@235 := @93 @233 @67 +@236 := (hs : @95) -> @235 +@237 := @231 @92 +@239 := @93 @63 @67 +@240 := Eq.{1} +@241 := Option.{0} +@242 := @241 @98 +@243 := @240 @242 +@244 := LexLeanPreservation.Rust.adtFields +@248 := @243 (@244 @99 @24 @26) +@249 := Option.some.{0} +@250 := @249 @98 +@251 := @250 @4 +@252 := @248 @251 +@255 := @7 @113 @107 @99 +@256 := LexLeanTarget.TargetSyntax.Value.adt +@258 := @256 @103 @24 +@259 := @255 @258 +@260 := @8 @101 +@270 := {p : @20} -> + {c : @21} -> + {A : @22} -> + {i : @23} -> {k : @23} -> {fs : @97} -> {tys : @98} -> (h : @252) -> (hf : @112) -> @259 @260 +@272 := LexLeanPreservation.Rust.wt_adt @0 +@273 := @244 @0 +@277 := @243 (@273 @24 @26) @251 +@289 := {c : @21} -> + {A : @22} -> + {i : @23} -> + {k : @23} -> {fs : @97} -> {tys : @98} -> (h : @277) -> (hf : @141) -> @11 @107 @99 @258 @260 +@290 := @272 @1 +@300 := {A : @22} -> + {i : @23} -> + {k : @23} -> {fs : @97} -> {tys : @98} -> (h : @277) -> (hf : @160) -> @12 @99 @258 @260 +@301 := @290 @2 +@302 := @13 @258 +@309 := {i : @23} -> + {k : @23} -> {fs : @97} -> {tys : @98} -> (h : @277) -> (hf : @175) -> @302 @260 +@310 := @301 @9 +@311 := @273 @9 +@320 := {k : @23} -> + {fs : @97} -> {tys : @98} -> (h : @243 (@311 @26) @251) -> (hf : @175) -> @302 @10 +@321 := @310 @9 +@322 := @311 @9 +@323 := @243 @322 +@324 := @323 @251 +@325 := @256 @9 +@332 := {fs : @97} -> {tys : @98} -> (h : @324) -> (hf : @175) -> @13 (@325 @24) @10 +@333 := @321 @63 +@340 := {tys : @98} -> (h : @324) -> (hf : @227 @28) -> @13 (@325 @218) @10 +@341 := @333 @67 +@348 := (h : @323 (@250 @67)) -> (hf : @235) -> @13 (@325 @226) @10 +@349 := Eq.refl.{1} +@350 := @349 @242 +@352 := @341 (@350 @322) +@356 := (hf : @239) -> @13 (@325 @233) @10 +@357 := @352 @237 +@360 := @13 (@325 @63) @10 +@361 := fun (__x0 : @23) => @357 +@362 := @5 @24 +@363 := @5 @26 +@365 := @61 @363 @60 +@366 := @61 @362 +@367 := @366 @365 +@368 := @65 @10 +@369 := @368 @64 +@370 := @368 @369 +@371 := @171 @363 +@372 := @5 @101 +@373 := @13 @372 +@374 := @373 @26 +@376 := @61 (@5 @107) +@378 := @93 (@376 @24) +@384 := {t : @57} -> {vs : @97} -> {ts : @98} -> (h : @374) -> (hs : @175) -> @378 @121 +@385 := @371 @10 +@386 := @5 @103 +@387 := @13 @386 +@388 := @387 @10 +@389 := @5 @99 +@390 := @61 @389 +@392 := @93 (@390 @24) +@393 := @368 @26 +@398 := {vs : @97} -> {ts : @98} -> (h : @388) -> (hs : @175) -> @392 @393 +@399 := @385 @60 +@401 := @13 @362 @10 +@402 := @61 @372 +@403 := @402 @60 +@404 := @93 @403 +@408 := {ts : @98} -> (h : @401) -> (hs : @216) -> @404 @393 +@409 := @399 @64 +@411 := @13 @363 @10 +@412 := @61 @386 +@413 := @412 @60 +@414 := @93 @413 +@417 := (h : @411) -> (hs : @95) -> @414 @369 +@418 := @409 @4 +@419 := @366 @60 +@420 := @93 @419 +@421 := @420 @369 +@422 := (hs : @95) -> @421 +@423 := @418 @92 +@424 := @93 @365 +@425 := @424 @369 +@426 := @171 @362 +@428 := @13 @389 @26 +@430 := @61 (@5 @113) +@438 := {t : @57} -> {vs : @97} -> {ts : @98} -> (h : @428) -> (hs : @175) -> @93 (@430 @24) @121 +@439 := @426 @10 +@445 := {vs : @97} -> {ts : @98} -> (h : @373 @10) -> (hs : @175) -> @378 @393 +@446 := @439 @365 +@447 := @414 @28 +@448 := @390 @403 +@453 := {ts : @98} -> (h : @388) -> (hs : @447) -> @93 @448 @393 +@454 := @446 @369 +@455 := @402 @413 +@456 := @93 @455 +@459 := (h : @401) -> (hs : @421) -> @456 @370 +@460 := @454 @28 +@461 := @412 @419 +@463 := @93 @461 @370 +@464 := (hs : @425) -> @463 +@465 := @460 @423 +@467 := @93 @367 @370 +@468 := 1 +@469 := @310 @468 +@470 := @311 @468 +@471 := @243 @470 +@472 := @471 @251 +@473 := @256 @468 +@480 := {fs : @97} -> {tys : @98} -> (h : @472) -> (hf : @175) -> @13 (@473 @24) @10 +@481 := @469 @367 +@488 := {tys : @98} -> (h : @472) -> (hf : @456 @28) -> @13 (@473 @448) @10 +@489 := @481 @370 +@496 := (h : @471 (@250 @370)) -> (hf : @463) -> @13 (@473 @455) @10 +@498 := @489 (@350 @470) +@502 := (hf : @467) -> @13 (@473 @461) @10 +@503 := @498 @465 +@506 := @13 (@473 @367) @10 +@507 := @5 @28 +@509 := @13 @507 @10 +@513 := fun (__x0 : @3) => fun (__x1 : @3) => fun (__ih0 : @509) => fun (__ih1 : @509) => @503 +@519 := fun (__v : @3) => Coverage.Syntax.Term.rec.{0} @16 @361 @513 @4 +@520 := (__v : @3) -> @15 +@522 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.Compose.RustStd.__wt_0 @28 +@524 := @61 @507 @60 +@527 := Prod.{0, 0} @23 @56 +@531 := Prod.mk.{0, 0} @23 @56 @9 +@532 := @531 @507 +@533 := @58 @527 +@534 := @59 @527 +@536 := @534 @532 @533 +@537 := Bool.false +@538 := LexLeanTarget.TargetSyntax.Function +@539 := LexLeanTarget.TargetSyntax.Program.functions +@540 := @539 @0 +@541 := @58 @23 +@542 := LexLeanTarget.TargetSyntax.Ty.unit +@543 := LexLeanTarget.TargetSyntax.Value.unit +@546 := LexLeanTarget.TargetSyntax.Expr.value @542 @543 +@551 := LexLeanTarget.TargetSyntax.Function.mk @541 @64 @542 @546 +@556 := List.getD.{0} @538 @540 @9 @551 +@560 := fun (__e_n : @23) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.RustStd.root @4 @9 +@561 := @171 @507 +@568 := {t : @57} -> {vs : @97} -> {ts : @98} -> (h : @387 @26) -> (hs : @175) -> @392 @121 +@569 := @561 @10 +@576 := {vs : @97} -> {ts : @98} -> (h : @401) -> (hs : @175) -> @93 (@402 @24) @393 +@577 := @569 @60 +@581 := {ts : @98} -> (h : @411) -> (hs : @216) -> @414 @393 +@582 := @577 @64 +@583 := (h : @509) -> @422 +@584 := @582 @522 +@585 := (hs : @95) -> @425 +@586 := @584 @92 +@587 := @93 @524 +@588 := @587 @369 +@589 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.denote +@590 := @589 @28 +@591 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.__fits_0 +@592 := @591 @28 +@594 := Coverage.RecRoots.rewrite @28 +@600 := LexLeanPreservation.encPair @3 @3 @5 @5 @594 +@602 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.root @28 +@603 := Bool +@604 := Ne.{1} +@605 := LexLeanPreservation.Obs +@606 := @604 @605 +@607 := LexLeanPreservation.Rel +@610 := @606 (@607 @28 @4) +@611 := LexLeanPreservation.Obs.stuck +@614 := (f : @603) -> (v : @56) -> @610 @611 +@616 := LexLeanPreservation.Rust.rel_ne_stuck @592 +@622 := (v : @56) -> @606 (@607 (@591 @26) @4) @611 +@623 := @616 @600 +@627 := @606 (@607 @592 @600) @611 +@628 := @96 @527 +@629 := LexLeanPreservation.Rust.FunSem +@630 := #9 +@636 := (n : @23) -> @629 @630 @113 @107 @4 @99 +@637 := @241 @538 +@638 := @240 @637 +@645 := LexLeanRuntime.index (@96 @538) @538 (LexLeanRuntime.instIndexableList @538) +@649 := @638 (@645 (@539 @630) @99) +@650 := @249 @538 +@651 := @650 @101 +@652 := @649 @651 +@653 := #10 +@657 := @68 @653 @630 @113 @101 +@658 := LexLeanTarget.TargetSyntax.Function.types +@659 := @658 @99 +@660 := @657 @659 +@661 := @241 @628 +@662 := @240 @661 +@663 := LexLeanTarget.TargetSemantics.bindAll +@664 := LexLeanTarget.TargetSyntax.Function.parameters +@669 := @662 (@663 (@664 @107) @99 @533) +@670 := @249 @628 +@671 := @670 @101 +@672 := @669 @671 +@673 := @241 @603 +@674 := @240 @673 +@675 := LexLeanPreservation.Rust.fnFallible +@676 := #11 +@679 := @674 (@675 @676 @630) +@680 := @249 @603 +@681 := @680 @101 +@682 := @679 @681 +@683 := LexLeanPreservation.RunConv +@684 := #13 +@688 := @683 @684 @653 @113 @101 +@690 := @606 @99 @611 +@691 := Exists.{1} +@692 := LexLeanPreservation.Rust.ROut +@693 := @691 @692 +@694 := And +@695 := LexLeanPreservation.Rust.RealizesFn +@699 := @694 (@695 @630 @113 @4) +@700 := LexLeanPreservation.Rust.RCI +@702 := @700 #15 +@703 := LexLeanPreservation.Rust.fnIdent +@704 := @703 @684 +@711 := (hne : @690) -> @693 (fun (ro : @692) => @699 (@702 @704 @676 @4)) +@726 := {p : @20} -> + {c : @21} -> + {A : @22} -> + {f : @23} -> + {fn : @538} -> + {args : @97} -> + {env : @628} -> + {F : @603} -> + {o : @605} -> + (hB : @636) -> + (hfn : @652) -> (hwt : @660) -> (hbind : @672) -> (hF : @682) -> (hA : @688) -> @711 +@728 := LexLeanPreservation.Rust.compose @0 +@729 := @629 @0 +@734 := (n : @23) -> @729 @113 @107 @4 @99 +@735 := @645 @540 +@738 := @638 (@735 @99) @651 +@742 := @79 @630 @113 @101 @659 +@743 := @683 @0 +@746 := @743 @653 @113 @101 +@760 := {c : @21} -> + {A : @22} -> + {f : @23} -> + {fn : @538} -> + {args : @97} -> + {env : @628} -> + {F : @603} -> + {o : @605} -> + (hB : @734) -> + (hfn : @738) -> (hwt : @742) -> (hbind : @672) -> (hF : @682) -> (hA : @746) -> @711 +@761 := @728 @1 +@762 := @729 @1 +@766 := (n : @23) -> @762 @107 @4 @99 +@769 := @87 @113 @101 @659 +@770 := @675 @1 +@773 := @674 (@770 @630) @681 +@774 := @700 @1 +@784 := (hbind : @672) -> + (hF : @773) -> (hA : @746) -> (hne : @690) -> @693 (fun (ro : @692) => @699 (@774 @704 @676 @4)) +@794 := {A : @22} -> + {f : @23} -> + {fn : @538} -> + {args : @97} -> + {env : @628} -> {F : @603} -> {o : @605} -> (hB : @766) -> (hfn : @738) -> (hwt : @769) -> @784 +@795 := @761 @2 +@797 := @762 @2 @4 +@799 := (n : @23) -> @797 @99 +@800 := @93 @101 +@801 := @800 @659 +@810 := {f : @23} -> + {fn : @538} -> + {args : @97} -> + {env : @628} -> {F : @603} -> {o : @605} -> (hB : @799) -> (hfn : @738) -> (hwt : @801) -> @784 +@811 := @795 @9 +@813 := (n : @23) -> @797 @9 +@814 := @735 @9 +@815 := @638 @814 +@816 := @815 @651 +@817 := @770 @9 +@818 := @674 @817 +@819 := @818 @681 +@820 := @743 @9 +@822 := @820 @113 @101 +@824 := @774 (@703 @9) +@832 := (hF : @819) -> (hA : @822) -> (hne : @690) -> @693 (fun (ro : @692) => @699 (@824 @676 @4)) +@841 := {fn : @538} -> + {args : @97} -> + {env : @628} -> + {F : @603} -> {o : @605} -> (hB : @813) -> (hfn : @816) -> (hwt : @801) -> (hbind : @672) -> @832 +@842 := @811 @556 +@844 := @815 (@650 @556) +@845 := @658 @556 +@846 := @800 @845 +@848 := @663 (@664 @556) +@860 := {args : @97} -> + {env : @628} -> + {F : @603} -> + {o : @605} -> + (hB : @813) -> (hfn : @844) -> (hwt : @846) -> (hbind : @662 (@848 @99 @533) @671) -> @832 +@861 := @842 @524 +@862 := @390 @60 +@864 := @93 @862 @845 +@865 := @376 @60 +@869 := @662 (@848 @865 @533) @671 +@872 := @61 (@5 @630) @60 +@893 := {env : @628} -> + {F : @603} -> + {o : @605} -> + (hB : @813) -> + (hfn : @844) -> + (hwt : @864) -> + (hbind : @869) -> + (hF : @819) -> + (hA : @820 @872 @101) -> + (hne : @690) -> @693 (fun (ro : @692) => @699 (@824 (@61 (@5 #12) @60) @4)) +@894 := @861 @536 +@895 := @404 @845 +@903 := @662 (@848 @862 @533) (@670 (@534 (@531 @389) @533)) +@904 := @430 @60 +@923 := {F : @603} -> + {o : @605} -> + (hB : @813) -> + (hfn : @844) -> + (hwt : @895) -> + (hbind : @903) -> + (hF : @819) -> + (hA : @820 @904 @101) -> + (hne : @690) -> @693 (fun (ro : @692) => @699 (@824 (@61 (@5 @676) @60) @4)) +@924 := @894 @537 +@925 := @414 @845 +@933 := @662 (@848 @403 @533) (@670 (@534 (@531 @372) @533)) +@935 := @818 (@680 @537) +@937 := @820 @865 @101 +@938 := @695 @537 +@957 := {o : @605} -> + (hB : @813) -> + (hfn : @844) -> + (hwt : @925) -> + (hbind : @933) -> + (hF : @935) -> + (hA : @937) -> + (hne : @690) -> @693 (fun (ro : @692) => @694 (@938 @113 @4) (@824 (@61 (@5 @653) @60) @4)) +@958 := @924 @590 +@959 := @420 @845 +@967 := @662 (@848 @413 @533) (@670 (@534 (@531 @386) @533)) +@968 := @820 @862 +@969 := @589 @99 +@970 := @968 @969 +@971 := @589 @107 +@989 := (hB : @813) -> + (hfn : @844) -> + (hwt : @959) -> + (hbind : @967) -> + (hF : @935) -> + (hA : @970) -> + (hne : @606 @971 @611) -> @693 (fun (ro : @692) => @694 (@938 (@589 @630) @4) (@824 @872 @4)) +@990 := @958 @560 +@991 := @424 @845 +@999 := @662 (@848 @419 @533) (@670 (@534 (@531 @362) @533)) +@1000 := @820 @403 +@1001 := @589 @101 +@1019 := (hfn : @844) -> + (hwt : @991) -> + (hbind : @999) -> + (hF : @935) -> + (hA : @1000 @1001) -> + (hne : @606 @969 @611) -> @693 (fun (ro : @692) => @694 (@938 (@589 @113) @4) (@824 @904 @4)) +@1022 := @990 (@349 @637 @814) +@1023 := @587 @845 +@1031 := @662 (@848 @365 @533) (@670 (@534 (@531 @363) @533)) +@1032 := @820 @413 +@1033 := @589 @103 +@1049 := (hwt : @1023) -> + (hbind : @1031) -> + (hF : @935) -> + (hA : @1032 @1033) -> + (hne : @606 @1001 @611) -> @693 (fun (ro : @692) => @694 (@938 @971 @4) (@824 @865 @4)) +@1050 := @1022 @586 +@1052 := @848 @524 @533 +@1055 := @662 @1052 (@670 @536) +@1056 := @820 @419 +@1057 := @589 @24 +@1072 := (hbind : @1055) -> + (hF : @935) -> + (hA : @1056 @1057) -> + (hne : @606 @1033 @611) -> @693 (fun (ro : @692) => @694 (@938 @969 @4) (@824 @862 @4)) +@1075 := @1050 (@349 @661 @1052) +@1076 := @820 @365 +@1077 := @589 @26 +@1091 := (hF : @935) -> + (hA : @1076 @1077) -> + (hne : @606 @1057 @611) -> @693 (fun (ro : @692) => @694 (@938 @1001 @4) (@824 @403 @4)) +@1094 := @1075 (@349 @673 @817) +@1108 := (hA : @820 @524 @590) -> + (hne : @606 @1077 @611) -> @693 (fun (ro : @692) => @694 (@938 @1033 @4) (@824 @413 @4)) +@1109 := @1094 @602 +@1120 := (hne : @606 @590 @611) -> @693 (fun (ro : @692) => @694 (@938 @1057 @4) (@824 @419 @4)) +@1121 := @1109 @623 +@1127 := @694 (@938 @1077 @4) (@824 @365 @4) +@1129 := @693 (fun (ro : @692) => @1127) +@1131 := @693 (fun (__e_ro : @692) => @1127) +@1135 := LexLeanPreservation.Rust.RepresentableL (@61 @6 @60) +@1136 := (__e_hrep : @1135) -> @1131 +@1137 := fun (__e_hrep : @1135) => @1121 +@1138 := (t : @3) -> @1136 +@1139 := fun (t : @3) => @1137 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R33/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R33/RustStd.lean new file mode 100644 index 000000000..e2b89c3be --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R33/RustStd.lean @@ -0,0 +1,50 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [{ constructors := [[.nat], [(.adt 0), (.adt 0)]] }], functions := [ + { parameters := [0], types := [(.adt 0)], result := (.pair (.adt 0) (.adt 0)), + body := (.build .pair (.pair (.adt 0) (.adt 0)) [(.call 1 [(.var 0)]), (.call 2 [(.var 0)])]) }, + { parameters := [0], types := [(.adt 0)], result := (.adt 0), + body := (.«match» (.adt 0) (.var 0) [(.arm (.adt 0) [1] (.build (.adt 0) (.adt 0) [(.var 1)])), (.arm (.adt 1) [2, 3] (.«match» (.adt 0) (.var 2) [(.arm (.adt 0) [4] (.build (.adt 1) (.adt 0) [(.build (.adt 0) (.adt 0) [(.var 4)]), (.call 1 [(.var 3)])])), (.arm (.adt 1) [5, 6] (.call 1 [(.build (.adt 1) (.adt 0) [(.var 5), (.build (.adt 1) (.adt 0) [(.var 6), (.var 3)])])]))]))]) }, + { parameters := [0], types := [(.adt 0)], result := (.adt 0), + body := (.«match» (.adt 0) (.var 0) [(.arm (.adt 0) [1] (.build (.adt 0) (.adt 0) [(.var 1)])), (.arm (.adt 1) [2, 3] (.«match» (.adt 0) (.var 2) [(.arm (.adt 0) [4] (.call 2 [(.var 3)])), (.arm (.adt 1) [5, 6] (.call 2 [(.build (.adt 1) (.adt 0) [(.var 5), (.var 3)])]))]))]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.enum (.adt 0) [{ number := 0, fields := [.nat] }, { number := 1, fields := [(.rc (.adt 0)), (.rc (.adt 0))] }]), + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.pair (.adt 0) (.adt 0)) (.mk [] (.pair (.call (.function 1) [(.clone (.generated .binding 0))] false) (.call (.function 2) [(.move (.generated .binding 0))] false)))), + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.adt 0) (.mk [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 1)) [(.mk (.adt 0 0 [(.bind (.generated .binding 1))]) (.mk [] (.construct (.adt 0 0) [(.copy (.generated .binding 1))]))), (.mk (.adt 0 1 [(.bind (.generated .boxed 5)), (.bind (.generated .boxed 6))]) (.mk [(.mk (.bind (.generated .binding 2)) none (.unbox (.generated .boxed 5))), (.mk (.bind (.generated .binding 3)) none (.unbox (.generated .boxed 6))), (.mk (.bind (.generated .holder 2)) none (.move (.generated .binding 2)))] (.matchOn (.move (.generated .holder 2)) [(.mk (.adt 0 0 [(.bind (.generated .binding 4))]) (.mk [] (.construct (.adt 0 1) [(.box (.construct (.adt 0 0) [(.copy (.generated .binding 4))])), (.box (.call (.function 1) [(.move (.generated .binding 3))] false))]))), (.mk (.adt 0 1 [(.bind (.generated .boxed 3)), (.bind (.generated .boxed 4))]) (.mk [(.mk (.bind (.generated .binding 5)) none (.unbox (.generated .boxed 3))), (.mk (.bind (.generated .binding 6)) none (.unbox (.generated .boxed 4)))] (.call (.function 1) [(.construct (.adt 0 1) [(.box (.move (.generated .binding 5))), (.box (.construct (.adt 0 1) [(.box (.move (.generated .binding 6))), (.box (.move (.generated .binding 3)))]))])] false)))])))]))), + (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.adt 0) (.mk [(.mk (.bind (.generated .holder 7)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 7)) [(.mk (.adt 0 0 [(.bind (.generated .binding 1))]) (.mk [] (.construct (.adt 0 0) [(.copy (.generated .binding 1))]))), (.mk (.adt 0 1 [(.bind (.generated .boxed 10)), (.bind (.generated .boxed 11))]) (.mk [(.mk (.bind (.generated .binding 2)) none (.unbox (.generated .boxed 10))), (.mk (.bind (.generated .binding 3)) none (.unbox (.generated .boxed 11))), (.mk (.bind (.generated .holder 8)) none (.move (.generated .binding 2)))] (.matchOn (.move (.generated .holder 8)) [(.mk (.adt 0 0 [.wild]) (.mk [] (.call (.function 2) [(.move (.generated .binding 3))] false))), (.mk (.adt 0 1 [(.bind (.generated .boxed 9)), .wild]) (.mk [(.mk (.bind (.generated .binding 5)) none (.unbox (.generated .boxed 9)))] (.call (.function 2) [(.construct (.adt 0 1) [(.box (.move (.generated .binding 5))), (.box (.move (.generated .binding 3)))])] false)))])))])))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [], (.pair (.call (.function 1) [(.clone (.generated .binding 0))] false) (.call (.function 2) [(.move (.generated .binding 0))] false)), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))))⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 1)) [(.mk (.adt 0 0 [(.bind (.generated .binding 1))]) (.mk [] (.construct (.adt 0 0) [(.copy (.generated .binding 1))]))), (.mk (.adt 0 1 [(.bind (.generated .boxed 5)), (.bind (.generated .boxed 6))]) (.mk [(.mk (.bind (.generated .binding 2)) none (.unbox (.generated .boxed 5))), (.mk (.bind (.generated .binding 3)) none (.unbox (.generated .boxed 6))), (.mk (.bind (.generated .holder 2)) none (.move (.generated .binding 2)))] (.matchOn (.move (.generated .holder 2)) [(.mk (.adt 0 0 [(.bind (.generated .binding 4))]) (.mk [] (.construct (.adt 0 1) [(.box (.construct (.adt 0 0) [(.copy (.generated .binding 4))])), (.box (.call (.function 1) [(.move (.generated .binding 3))] false))]))), (.mk (.adt 0 1 [(.bind (.generated .boxed 3)), (.bind (.generated .boxed 4))]) (.mk [(.mk (.bind (.generated .binding 5)) none (.unbox (.generated .boxed 3))), (.mk (.bind (.generated .binding 6)) none (.unbox (.generated .boxed 4)))] (.call (.function 1) [(.construct (.adt 0 1) [(.box (.move (.generated .binding 5))), (.box (.construct (.adt 0 1) [(.box (.move (.generated .binding 6))), (.box (.move (.generated .binding 3)))]))])] false)))])))]), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.adt 0)) (U := []) (view := false) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.adt 0 0) [(.copy (.generated .binding 1))])) (Corr.mCons (Γ' := [(3, (.adt 0), (some 3)), (2, (.adt 0), (some 2)), (0, (.adt 0), (some 0))]) (j := 1) (loads := [(.mk (.bind (.generated .binding 2)) none (.unbox (.generated .boxed 5))), (.mk (.bind (.generated .binding 3)) none (.unbox (.generated .boxed 6)))]) (lets := [(.mk (.bind (.generated .holder 2)) none (.move (.generated .binding 2)))]) (tail := (.matchOn (.move (.generated .holder 2)) [(.mk (.adt 0 0 [(.bind (.generated .binding 4))]) (.mk [] (.construct (.adt 0 1) [(.box (.construct (.adt 0 0) [(.copy (.generated .binding 4))])), (.box (.call (.function 1) [(.move (.generated .binding 3))] false))]))), (.mk (.adt 0 1 [(.bind (.generated .boxed 3)), (.bind (.generated .boxed 4))]) (.mk [(.mk (.bind (.generated .binding 5)) none (.unbox (.generated .boxed 3))), (.mk (.bind (.generated .binding 6)) none (.unbox (.generated .boxed 4)))] (.call (.function 1) [(.construct (.adt 0 1) [(.box (.move (.generated .binding 5))), (.box (.construct (.adt 0 1) [(.box (.move (.generated .binding 6))), (.box (.move (.generated .binding 3)))]))])] false)))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := (.adt 0)) (U := []) (view := false) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(4, .nat, (some 4)), (3, (.adt 0), (some 3)), (2, (.adt 0), (some 2)), (0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.adt 0 1) [(.box (.construct (.adt 0 0) [(.copy (.generated .binding 4))])), (.box (.call (.function 1) [(.move (.generated .binding 3))] false))])) (Corr.mCons (Γ' := [(6, (.adt 0), (some 6)), (5, (.adt 0), (some 5)), (3, (.adt 0), (some 3)), (2, (.adt 0), (some 2)), (0, (.adt 0), (some 0))]) (j := 1) (loads := [(.mk (.bind (.generated .binding 5)) none (.unbox (.generated .boxed 3))), (.mk (.bind (.generated .binding 6)) none (.unbox (.generated .boxed 4)))]) (lets := []) (tail := (.call (.function 1) [(.construct (.adt 0 1) [(.box (.move (.generated .binding 5))), (.box (.construct (.adt 0 1) [(.box (.move (.generated .binding 6))), (.box (.move (.generated .binding 3)))]))])] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.adt 0), (.adt 0)]) (mask := [true, true]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.adt 0), (.adt 0)]) (mask := [true, true]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := [(.adt 0), (.adt 0)]) (mask := [true, true]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 7)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 7)) [(.mk (.adt 0 0 [(.bind (.generated .binding 1))]) (.mk [] (.construct (.adt 0 0) [(.copy (.generated .binding 1))]))), (.mk (.adt 0 1 [(.bind (.generated .boxed 10)), (.bind (.generated .boxed 11))]) (.mk [(.mk (.bind (.generated .binding 2)) none (.unbox (.generated .boxed 10))), (.mk (.bind (.generated .binding 3)) none (.unbox (.generated .boxed 11))), (.mk (.bind (.generated .holder 8)) none (.move (.generated .binding 2)))] (.matchOn (.move (.generated .holder 8)) [(.mk (.adt 0 0 [.wild]) (.mk [] (.call (.function 2) [(.move (.generated .binding 3))] false))), (.mk (.adt 0 1 [(.bind (.generated .boxed 9)), .wild]) (.mk [(.mk (.bind (.generated .binding 5)) none (.unbox (.generated .boxed 9)))] (.call (.function 2) [(.construct (.adt 0 1) [(.box (.move (.generated .binding 5))), (.box (.move (.generated .binding 3)))])] false)))])))]), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.adt 0)) (U := []) (view := false) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.adt 0 0) [(.copy (.generated .binding 1))])) (Corr.mCons (Γ' := [(3, (.adt 0), (some 3)), (2, (.adt 0), (some 2)), (0, (.adt 0), (some 0))]) (j := 1) (loads := [(.mk (.bind (.generated .binding 2)) none (.unbox (.generated .boxed 10))), (.mk (.bind (.generated .binding 3)) none (.unbox (.generated .boxed 11)))]) (lets := [(.mk (.bind (.generated .holder 8)) none (.move (.generated .binding 2)))]) (tail := (.matchOn (.move (.generated .holder 8)) [(.mk (.adt 0 0 [.wild]) (.mk [] (.call (.function 2) [(.move (.generated .binding 3))] false))), (.mk (.adt 0 1 [(.bind (.generated .boxed 9)), .wild]) (.mk [(.mk (.bind (.generated .binding 5)) none (.unbox (.generated .boxed 9)))] (.call (.function 2) [(.construct (.adt 0 1) [(.box (.move (.generated .binding 5))), (.box (.move (.generated .binding 3)))])] false)))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := (.adt 0)) (U := []) (view := false) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(4, .nat, none), (3, (.adt 0), (some 3)), (2, (.adt 0), (some 2)), (0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.call (.function 2) [(.move (.generated .binding 3))] false)) (Corr.mCons (Γ' := [(6, (.adt 0), none), (5, (.adt 0), (some 5)), (3, (.adt 0), (some 3)), (2, (.adt 0), (some 2)), (0, (.adt 0), (some 0))]) (j := 1) (loads := [(.mk (.bind (.generated .binding 5)) none (.unbox (.generated .boxed 9)))]) (lets := []) (tail := (.call (.function 2) [(.construct (.adt 0 1) [(.box (.move (.generated .binding 5))), (.box (.move (.generated .binding 3)))])] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.adt 0), (.adt 0)]) (mask := [true, true]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl)⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | _ + 3 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R4.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R4.lean new file mode 100644 index 000000000..9d2089854 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R4.lean @@ -0,0 +1,106 @@ +import LexLeanPreservation.Core +import LexLeanPreservation.Values +import LexLeanPreservation.Primitives +import LexLeanPreservation.Fixed +import LexLeanPreservation.Keys +import LexLeanPreservation.Templates +import LexLeanPreservation.Validate +import Coverage.Boundary +import Coverage.Colls +import Coverage.Main +import Coverage.Prims +import Coverage.RecRoots +import Coverage.Recur +import Coverage.Syntax +import Coverage.Types +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +set_option linter.unusedVariables false +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4 + +def __prog : _root_.LexLeanTarget.TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1], types := [(.list .nat), (.list .int)], result := (.pair .nat .int), + body := (.build .pair (.pair .nat .int) [(.call 1 [(.closure 2 []), (.value .nat (.nat 0)), (.var 0)]), (.call 3 [(.closure 4 []), (.value .int (.int 5)), (.var 1)])]) }, + { parameters := [0, 1, 2], types := [(.fn [.nat, .nat] .nat), .nat, (.list .nat)], result := .nat, + body := (.«match» .nat (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 1 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, + { parameters := [0, 1], types := [.nat, .nat], result := .nat, + body := (.prim .natAdd [(.var 0), (.var 1)]) }, + { parameters := [0, 1, 2], types := [(.fn [.int, .int] .int), .int, (.list .int)], result := .int, + body := (.«match» .int (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 3 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, + { parameters := [0, 1], types := [.int, .int], result := .int, + body := (.prim .intSub [(.var 0), (.var 1)]) }, + { parameters := [0], types := [(.list .int)], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.var 1), (.var 3)]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 5 [(.var 2)]) (.build .false .bool [])))]))]) }, + { parameters := [0, 1], types := [(.list .nat), (.list .int)], result := (.option (.pair .nat .int)), + body := (.cond (.call 5 [(.var 1)]) (.build .some (.option (.pair .nat .int)) [(.call 0 [(.var 0), (.var 1)])]) (.build .none (.option (.pair .nat .int)) [])) }] } + +def __fits_2 (a : Nat) (x : Nat) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (a + x) 18446744073709551616)) + +theorem __rel_2 (a : Nat) (x : Nat) : _root_.LexLeanPreservation.FunRel __prog 2 [(_root_.LexLeanTarget.TargetSyntax.Value.nat a), (_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_2 a x) (_root_.LexLeanTarget.TargetSyntax.Value.nat ((a + x)))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd a x)) + +def __fits_4 (a : Int) (x : Int) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.subtract (a) (x) : Int))) + +theorem __rel_4 (a : Int) (x : Int) : _root_.LexLeanPreservation.FunRel __prog 4 [(_root_.LexLeanTarget.TargetSyntax.Value.int a), (_root_.LexLeanTarget.TargetSyntax.Value.int x)] (_root_.LexLeanPreservation.Rel (__fits_4 a x) (_root_.LexLeanTarget.TargetSyntax.Value.int ((_root_.LexLeanRuntime.subtract (a) (x) : Int)))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_intSub a x)) + +def __fits_0 (xs : (List Nat)) (s : (List Int)) : Bool := + ((((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : Nat) (__p1 : Nat) => __fits_2 __p0 __p1) ((fun (a : Nat) (x : Nat) => (a + x))) ((0 : Nat)) (xs))) && (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : Int) (__p1 : Int) => __fits_4 __p0 __p1) ((fun (a : Int) (x : Int) => (_root_.LexLeanRuntime.subtract (a) (x) : Int))) ((5 : Int)) (s))) && Bool.true)) && Bool.true) + +theorem __rel_0 (xs : (List Nat)) (s : (List Int)) : _root_.LexLeanPreservation.FunRel __prog 0 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) xs), ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) s)] (_root_.LexLeanPreservation.Rel (__fits_0 xs s) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int) (Coverage.Colls.folds xs s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.nat) (es := _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) ((fun (a : Nat) (x : Nat) => (a + x))) (fun (__p0 : Nat) (__p1 : Nat) => __fits_2 __p0 __p1) 2 [] (fun (__p0 : Nat) (__p1 : Nat) => __rel_2 __p0 __p1) (p := __prog) (fi := 1) (ta := .nat) (ts := .nat) rfl ((0 : Nat)) (xs))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.int) (es := _root_.LexLeanTarget.TargetSyntax.Value.int) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.int) (fun _ => rfl) ((fun (a : Int) (x : Int) => (_root_.LexLeanRuntime.subtract (a) (x) : Int))) (fun (__p0 : Int) (__p1 : Int) => __fits_4 __p0 __p1) 4 [] (fun (__p0 : Int) (__p1 : Int) => __rel_4 __p0 __p1) (p := __prog) (fi := 3) (ta := .int) (ts := .int) rfl ((5 : Int)) (s))) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) + +def denote (xs : (List Nat)) (s : (List Int)) : _root_.LexLeanPreservation.Obs := + _root_.cond (__fits_0 xs s) (_root_.LexLeanPreservation.Obs.value (((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int) (Coverage.Colls.folds xs s)))) _root_.LexLeanPreservation.Obs.overflow + +theorem root (xs : (List Nat)) (s : (List Int)) : _root_.LexLeanPreservation.RunConv __prog 0 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) xs), ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) s)] (_root_.LexLeanPreservation.Rel (__fits_0 xs s) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int) (Coverage.Colls.folds xs s))) := + _root_.LexLeanPreservation.run_of_funRel (__rel_0 xs s) + +def __valid_5 : (List Int) -> Bool := + _root_.LexLeanPreservation.ascSet (_root_.LexLeanCollections.Key.compare : Int -> Int -> Ordering) + +def __inv_5 : (List Int) -> Prop := + _root_.LexLeanPreservation.InvSet (_root_.LexLeanCollections.Key.compare : Int -> Int -> Ordering) + +theorem __viff_5 : ∀ (__v : (List Int)), __valid_5 __v = Bool.true ↔ __inv_5 __v := + _root_.LexLeanPreservation.ascSet_inv (_root_.LexLeanCollections.Key.compare : Int -> Int -> Ordering) + +theorem __vrel_5 : ∀ (__v : (List Int)), _root_.LexLeanPreservation.FunRel __prog 5 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_5 __v))) := + _root_.LexLeanPreservation.tpl_validSet (_root_.LexLeanPreservation.keySpec_int (_root_.LexLeanCollections.Key.compare : Int -> Int -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.int) (fun _ => rfl) rfl + +def entryFits (xs : (List Nat)) (s : (List Int)) : Bool := + (if __valid_5 s then __fits_0 xs s else Bool.true) + +def entryValue (xs : (List Nat)) (s : (List Int)) : _root_.LexLeanTarget.TargetSyntax.Value := + (if __valid_5 s then (_root_.LexLeanTarget.TargetSyntax.Value.some ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int) (Coverage.Colls.folds xs s))) else _root_.LexLeanTarget.TargetSyntax.Value.none) + +/-- The entry's observation. -/ +def denoteEntry (xs : (List Nat)) (s : (List Int)) : _root_.LexLeanPreservation.Obs := + _root_.cond (_root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.entryFits xs s) (_root_.LexLeanPreservation.Obs.value (_root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.entryValue xs s)) _root_.LexLeanPreservation.Obs.overflow + +/-- §17.12's invariants of the validated parameters. -/ +def accepts (xs : (List Nat)) (s : (List Int)) : Prop := + (__inv_5 s ∧ _root_.True) + +theorem entry (xs : (List Nat)) (s : (List Int)) : _root_.LexLeanPreservation.RunConv __prog 6 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) xs), ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) s)] (_root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.denoteEntry xs s) := + _root_.LexLeanPreservation.run_of_funRel (_root_.LexLeanPreservation.FunRel.fits_eq (_root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun __c => if __c then __fits_0 xs s else Bool.true) (fun __c => if __c then (_root_.LexLeanTarget.TargetSyntax.Value.some ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int) (Coverage.Colls.folds xs s))) else _root_.LexLeanTarget.TargetSyntax.Value.none) (__valid_5 s) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_5 s)) (fun _ => _root_.LexLeanPreservation.Conv.fits_eq (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_0 xs s)) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some) (by simp)) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (by simp [_root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.entryFits])) + +theorem entry_accepts (xs : (List Nat)) (s : (List Int)) (__h : _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.accepts xs s) : _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.denoteEntry xs s = _root_.LexLeanPreservation.someObs (_root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.denote xs s) := by + unfold _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.accepts at __h + unfold _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.denoteEntry _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.entryFits _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.entryValue _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.denote + simp only [_root_.if_true, (__viff_5 s).mpr __h.1] + cases __fits_0 xs s <;> rfl + +theorem entry_refuses (xs : (List Nat)) (s : (List Int)) (__h : ¬ _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.accepts xs s) : _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.denoteEntry xs s = _root_.LexLeanPreservation.Obs.value _root_.LexLeanTarget.TargetSyntax.Value.none := by + unfold _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.accepts at __h + unfold _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.denoteEntry _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.entryFits _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.entryValue + cases __c0 : __valid_5 s + · simp + · exact _root_.absurd ⟨(__viff_5 s).mp __c0, _root_.trivial⟩ __h + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4 diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R4/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R4/Compose/RustStd.lex.tex new file mode 100644 index 000000000..5fc09dade --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R4/Compose/RustStd.lex.tex @@ -0,0 +1,606 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.Compose.RustStd.root : @1228 := @1229 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.RustStd.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.RustStd.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.RustStd.flags +@3 := Nat +@4 := List.{0} +@5 := @4 @3 +@6 := #2 +@7 := LexLeanTarget.TargetSyntax.Value.nat +@8 := LexLeanPreservation.encList +@9 := @8 @3 +@10 := @9 @7 +@11 := @10 @6 +@12 := LexLeanTarget.TargetSyntax.Ty.nat +@13 := LexLeanTarget.TargetSyntax.Ty.list +@14 := @13 @12 +@15 := #0 +@16 := LexLeanTarget.TargetSyntax.Program +@17 := LexLeanPreservation.Rust.RCrate +@18 := LexLeanPreservation.Rust.Flags +@19 := LexLeanPreservation.Rust.WT +@20 := #3 +@22 := @19 @20 @6 +@23 := #1 +@24 := @22 @23 +@25 := @7 @15 +@31 := {p : @16} -> {c : @17} -> {A : @18} -> (n : @3) -> @24 @25 @12 +@33 := LexLeanPreservation.Rust.wt_nat @0 +@34 := @19 @0 +@36 := @34 @6 @23 +@41 := {c : @17} -> {A : @18} -> (n : @3) -> @36 @25 @12 +@42 := @33 @1 +@43 := @34 @1 +@44 := @43 @23 +@48 := {A : @18} -> (n : @3) -> @44 @25 @12 +@49 := @42 @2 +@50 := @43 @2 +@51 := @50 @25 +@52 := @51 @12 +@53 := (n : @3) -> @52 +@55 := fun (__x : @3) => @49 @15 +@56 := Sort 1 +@57 := LexLeanTarget.TargetSyntax.Value +@58 := (a._@._internal._hyg.#0 : @15) -> @57 +@59 := LexLeanTarget.TargetSyntax.Ty +@60 := #6 +@61 := @19 @60 +@62 := #5 +@63 := @61 @62 +@64 := #4 +@65 := @63 @64 +@66 := @6 @15 +@69 := (x : @6) -> @65 @66 @23 +@70 := @4 @20 +@71 := #7 +@74 := @19 @71 @60 @62 +@77 := @8 @64 @20 @15 +@78 := @74 @77 +@79 := @13 @6 +@88 := {p : @16} -> + {c : @17} -> + {A : @18} -> {α : @56} -> {e : @58} -> {t : @59} -> (h : @69) -> (xs : @70) -> @78 @79 +@90 := LexLeanPreservation.Rust.wt_encList @0 +@92 := @34 @62 @64 +@106 := {c : @17} -> + {A : @18} -> + {α : @56} -> + {e : @58} -> {t : @59} -> (h : (x : @6) -> @92 @66 @23) -> (xs : @70) -> @34 @60 @62 @77 @79 +@107 := @90 @1 +@108 := @43 @64 +@120 := {A : @18} -> + {α : @56} -> + {e : @58} -> {t : @59} -> (h : (x : @6) -> @108 @66 @23) -> (xs : @70) -> @43 @62 @77 @79 +@121 := @107 @2 +@123 := @50 @66 @23 +@131 := {α : @56} -> {e : @58} -> {t : @59} -> (h : (x : @6) -> @123) -> (xs : @70) -> @50 @77 @79 +@132 := @121 @3 +@142 := {e : (a._@._internal._hyg.#0 : @3) -> @57} -> + {t : @59} -> (h : (x : @3) -> @123) -> (xs : @5) -> @50 (@9 @20 @15) @79 +@143 := @132 @7 +@145 := (x : @3) -> @51 @23 +@147 := @50 (@10 @15) +@151 := {t : @59} -> (h : @145) -> (xs : @5) -> @147 @79 +@152 := @143 @12 +@156 := (h : (x : @3) -> @52) -> (xs : @5) -> @147 @14 +@158 := @152 @55 @6 +@160 := @50 @11 @14 +@161 := Int +@162 := @4 @161 +@163 := LexLeanTarget.TargetSyntax.Value.int +@164 := @8 @161 +@165 := @164 @163 +@166 := @165 @23 +@167 := LexLeanTarget.TargetSyntax.Ty.int +@168 := @13 @167 +@169 := @163 @15 +@175 := {p : @16} -> {c : @17} -> {A : @18} -> (n : @161) -> @24 @169 @167 +@177 := LexLeanPreservation.Rust.wt_int @0 +@182 := {c : @17} -> {A : @18} -> (n : @161) -> @36 @169 @167 +@183 := @177 @1 +@187 := {A : @18} -> (n : @161) -> @44 @169 @167 +@188 := @183 @2 +@189 := @50 @169 +@190 := @189 @167 +@191 := (n : @161) -> @190 +@193 := fun (__x : @161) => @188 @15 +@194 := @121 @161 +@204 := {e : (a._@._internal._hyg.#0 : @161) -> @57} -> + {t : @59} -> (h : (x : @161) -> @123) -> (xs : @162) -> @50 (@164 @20 @15) @79 +@205 := @194 @163 +@207 := (x : @161) -> @189 @23 +@208 := @165 @15 +@209 := @50 @208 +@213 := {t : @59} -> (h : @207) -> (xs : @162) -> @209 @79 +@214 := @205 @167 +@218 := (h : (x : @161) -> @190) -> (xs : @162) -> @209 @168 +@220 := @214 @193 @23 +@222 := @50 @166 @168 +@223 := List.nil.{0} +@224 := List.cons.{0} +@225 := @223 @57 +@226 := @224 @57 +@228 := @226 @166 @225 +@230 := @226 @11 @228 +@233 := Prod.{0, 0} @3 @57 +@234 := 1 +@237 := Prod.mk.{0, 0} @3 @57 +@238 := @237 @234 +@239 := @238 @166 +@241 := @237 0 +@242 := @241 @11 +@243 := @223 @233 +@244 := @224 @233 +@246 := @244 @242 @243 +@248 := @244 @239 @246 +@249 := Bool.true +@250 := LexLeanTarget.TargetSyntax.Function +@251 := LexLeanTarget.TargetSyntax.Program.functions +@252 := @251 @0 +@253 := 6 +@254 := @223 @3 +@255 := @223 @59 +@256 := LexLeanTarget.TargetSyntax.Ty.unit +@257 := LexLeanTarget.TargetSyntax.Value.unit +@260 := LexLeanTarget.TargetSyntax.Expr.value @256 @257 +@265 := LexLeanTarget.TargetSyntax.Function.mk @254 @255 @256 @260 +@270 := List.getD.{0} @250 @252 @253 @265 +@274 := fun (__e_n : @3) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.RustStd.root @15 @253 +@275 := LexLeanPreservation.Rust.WTL +@283 := {p : @16} -> {c : @17} -> {A : @18} -> @275 @6 @23 @15 @225 @255 +@285 := LexLeanPreservation.Rust.wtl_nil @0 +@286 := @275 @0 +@292 := {c : @17} -> {A : @18} -> @286 @23 @15 @225 @255 +@293 := @285 @1 +@294 := @286 @1 +@298 := {A : @18} -> @294 @15 @225 @255 +@299 := @293 @2 +@300 := @294 @2 +@301 := @300 @225 +@302 := @301 @255 +@303 := @4 @57 +@304 := @4 @59 +@306 := @65 @20 @6 +@311 := @275 @71 @60 @62 @6 @23 +@312 := #8 +@315 := @275 @312 @71 @60 +@317 := @226 @62 @20 +@318 := @315 @317 +@319 := @224 @59 +@321 := @319 @64 @6 +@331 := {p : @16} -> + {c : @17} -> + {A : @18} -> + {v : @57} -> {t : @59} -> {vs : @303} -> {ts : @304} -> (h : @306) -> (hs : @311) -> @318 @321 +@333 := LexLeanPreservation.Rust.wtl_cons @0 +@351 := {c : @17} -> + {A : @18} -> + {v : @57} -> + {t : @59} -> + {vs : @303} -> + {ts : @304} -> (h : @92 @20 @6) -> (hs : @286 @60 @62 @6 @23) -> @286 @71 @60 @317 @321 +@352 := @333 @1 +@367 := {A : @18} -> + {v : @57} -> + {t : @59} -> + {vs : @303} -> {ts : @304} -> (h : @108 @20 @6) -> (hs : @294 @62 @6 @23) -> @294 @60 @317 @321 +@368 := @352 @2 +@370 := @50 @20 @6 +@372 := @300 @6 @23 +@380 := {v : @57} -> + {t : @59} -> {vs : @303} -> {ts : @304} -> (h : @370) -> (hs : @372) -> @300 @317 @321 +@381 := @368 @166 +@382 := @165 @64 +@384 := @50 @382 @6 +@385 := @165 @60 +@386 := @226 @385 +@394 := {t : @59} -> {vs : @303} -> {ts : @304} -> (h : @384) -> (hs : @372) -> @300 (@386 @20) @321 +@395 := @381 @168 +@396 := @165 @20 +@398 := @50 @396 @168 +@399 := @165 @62 +@400 := @226 @399 +@402 := @300 (@400 @20) +@403 := @319 @168 +@404 := @403 @6 +@409 := {vs : @303} -> {ts : @304} -> (h : @398) -> (hs : @372) -> @402 @404 +@410 := @395 @225 +@411 := @165 @6 +@413 := @50 @411 @168 +@414 := @301 @23 +@416 := @226 @382 @225 +@421 := {ts : @304} -> (h : @413) -> (hs : @414) -> @300 @416 @404 +@422 := @410 @255 +@424 := @226 @396 @225 +@425 := @300 @424 +@426 := @403 @255 +@429 := (h : @222) -> (hs : @302) -> @425 @426 +@430 := @422 @220 +@432 := @226 @411 @225 +@434 := @300 @432 @426 +@435 := (hs : @302) -> @434 +@436 := @430 @299 +@438 := @300 @228 @426 +@439 := @368 @11 +@440 := @10 @62 +@442 := @50 @440 @6 +@443 := @10 @71 +@444 := @226 @443 +@452 := {t : @59} -> {vs : @303} -> {ts : @304} -> (h : @442) -> (hs : @372) -> @300 (@444 @20) @321 +@453 := @439 @14 +@454 := @10 @64 +@456 := @50 @454 @14 +@457 := @10 @60 +@458 := @226 @457 +@460 := @300 (@458 @20) +@461 := @319 @14 +@462 := @461 @6 +@467 := {vs : @303} -> {ts : @304} -> (h : @456) -> (hs : @372) -> @460 @462 +@468 := @453 @228 +@469 := @10 @20 +@471 := @50 @469 @14 +@472 := @425 @23 +@474 := @226 @440 @416 +@475 := @300 @474 +@479 := {ts : @304} -> (h : @471) -> (hs : @472) -> @475 @462 +@480 := @468 @426 +@482 := @226 @454 @424 +@483 := @300 @482 +@484 := @461 @426 +@487 := (h : @160) -> (hs : @434) -> @483 @484 +@488 := @480 @158 +@490 := @226 @469 @432 +@491 := @300 @490 +@493 := (hs : @438) -> @491 @484 +@494 := @488 @436 +@495 := @300 @230 +@496 := @495 @484 +@497 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.denoteEntry +@499 := @497 @6 @23 +@500 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.entryFits +@502 := @500 @6 @23 +@505 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.entryValue @6 @23 +@508 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.entry @6 @23 +@509 := Bool +@510 := Ne.{1} +@511 := LexLeanPreservation.Obs +@512 := @510 @511 +@513 := LexLeanPreservation.Rel +@516 := @512 (@513 @23 @15) +@517 := LexLeanPreservation.Obs.stuck +@520 := (f : @509) -> (v : @57) -> @516 @517 +@522 := LexLeanPreservation.Rust.rel_ne_stuck @502 +@529 := (v : @57) -> @512 (@513 (@500 @20 @6) @15) @517 +@530 := @522 @505 +@534 := @512 (@513 @502 @505) @517 +@535 := @4 @233 +@536 := LexLeanPreservation.Rust.FunSem +@537 := #9 +@543 := (n : @3) -> @536 @537 @312 @71 @15 @60 +@544 := Eq.{1} +@545 := Option.{0} +@546 := @545 @250 +@547 := @544 @546 +@554 := LexLeanRuntime.index (@4 @250) @250 (LexLeanRuntime.instIndexableList @250) +@558 := @547 (@554 (@251 @537) @60) +@559 := Option.some.{0} +@560 := @559 @250 +@561 := @560 @62 +@562 := @558 @561 +@563 := #10 +@567 := @275 @563 @537 @312 @62 +@568 := LexLeanTarget.TargetSyntax.Function.types +@569 := @568 @60 +@570 := @567 @569 +@571 := @545 @535 +@572 := @544 @571 +@573 := LexLeanTarget.TargetSemantics.bindAll +@574 := LexLeanTarget.TargetSyntax.Function.parameters +@579 := @572 (@573 (@574 @71) @60 @243) +@580 := @559 @535 +@581 := @580 @62 +@582 := @579 @581 +@583 := @545 @509 +@584 := @544 @583 +@585 := LexLeanPreservation.Rust.fnFallible +@586 := #11 +@589 := @584 (@585 @586 @537) +@590 := @559 @509 +@591 := @590 @62 +@592 := @589 @591 +@593 := LexLeanPreservation.RunConv +@594 := #13 +@598 := @593 @594 @563 @312 @62 +@600 := @512 @60 @517 +@601 := Exists.{1} +@602 := LexLeanPreservation.Rust.ROut +@603 := @601 @602 +@604 := And +@605 := LexLeanPreservation.Rust.RealizesFn +@609 := @604 (@605 @537 @312 @15) +@610 := LexLeanPreservation.Rust.RCI +@612 := @610 #15 +@613 := LexLeanPreservation.Rust.fnIdent +@614 := @613 @594 +@621 := (hne : @600) -> @603 (fun (ro : @602) => @609 (@612 @614 @586 @15)) +@636 := {p : @16} -> + {c : @17} -> + {A : @18} -> + {f : @3} -> + {fn : @250} -> + {args : @303} -> + {env : @535} -> + {F : @509} -> + {o : @511} -> + (hB : @543) -> + (hfn : @562) -> (hwt : @570) -> (hbind : @582) -> (hF : @592) -> (hA : @598) -> @621 +@638 := LexLeanPreservation.Rust.compose @0 +@639 := @536 @0 +@644 := (n : @3) -> @639 @312 @71 @15 @60 +@645 := @554 @252 +@648 := @547 (@645 @60) @561 +@652 := @286 @537 @312 @62 @569 +@653 := @593 @0 +@656 := @653 @563 @312 @62 +@670 := {c : @17} -> + {A : @18} -> + {f : @3} -> + {fn : @250} -> + {args : @303} -> + {env : @535} -> + {F : @509} -> + {o : @511} -> + (hB : @644) -> + (hfn : @648) -> (hwt : @652) -> (hbind : @582) -> (hF : @592) -> (hA : @656) -> @621 +@671 := @638 @1 +@672 := @639 @1 +@676 := (n : @3) -> @672 @71 @15 @60 +@679 := @294 @312 @62 @569 +@680 := @585 @1 +@683 := @584 (@680 @537) @591 +@684 := @610 @1 +@694 := (hbind : @582) -> + (hF : @683) -> (hA : @656) -> (hne : @600) -> @603 (fun (ro : @602) => @609 (@684 @614 @586 @15)) +@704 := {A : @18} -> + {f : @3} -> + {fn : @250} -> + {args : @303} -> + {env : @535} -> {F : @509} -> {o : @511} -> (hB : @676) -> (hfn : @648) -> (hwt : @679) -> @694 +@705 := @671 @2 +@707 := @672 @2 @15 +@709 := (n : @3) -> @707 @60 +@710 := @300 @62 +@711 := @710 @569 +@720 := {f : @3} -> + {fn : @250} -> + {args : @303} -> + {env : @535} -> {F : @509} -> {o : @511} -> (hB : @709) -> (hfn : @648) -> (hwt : @711) -> @694 +@721 := @705 @253 +@723 := (n : @3) -> @707 @253 +@724 := @645 @253 +@725 := @547 @724 +@726 := @725 @561 +@727 := @680 @253 +@728 := @584 @727 +@729 := @728 @591 +@730 := @653 @253 +@732 := @730 @312 @62 +@734 := @684 (@613 @253) +@742 := (hF : @729) -> (hA : @732) -> (hne : @600) -> @603 (fun (ro : @602) => @609 (@734 @586 @15)) +@751 := {fn : @250} -> + {args : @303} -> + {env : @535} -> + {F : @509} -> {o : @511} -> (hB : @723) -> (hfn : @726) -> (hwt : @711) -> (hbind : @582) -> @742 +@752 := @721 @270 +@754 := @725 (@560 @270) +@755 := @568 @270 +@756 := @710 @755 +@758 := @573 (@574 @270) +@770 := {args : @303} -> + {env : @535} -> + {F : @509} -> + {o : @511} -> + (hB : @723) -> (hfn : @754) -> (hwt : @756) -> (hbind : @572 (@758 @60 @243) @581) -> @742 +@771 := @752 @230 +@773 := @444 (@386 @225) +@775 := @300 @773 @755 +@781 := @226 (@10 @312) (@226 (@165 @71) @225) +@785 := @572 (@758 @781 @243) @581 +@791 := @226 (@10 @563) (@226 (@165 @537) @225) +@793 := @730 @791 @62 +@795 := @226 (@10 @594) +@796 := #12 +@815 := {env : @535} -> + {F : @509} -> + {o : @511} -> + (hB : @723) -> + (hfn : @754) -> + (hwt : @775) -> + (hbind : @785) -> + (hF : @729) -> + (hA : @793) -> + (hne : @600) -> @603 (fun (ro : @602) => @609 (@734 (@795 (@226 (@165 @796) @225)) @15)) +@816 := @771 @248 +@818 := @458 (@400 @225) +@820 := @300 @818 @755 +@831 := @572 (@758 @773 @243) (@580 (@244 (@238 @385) (@244 (@241 @443) @243))) +@837 := @226 (@10 @537) (@226 (@165 @312) @225) +@859 := {F : @509} -> + {o : @511} -> + (hB : @723) -> + (hfn : @754) -> + (hwt : @820) -> + (hbind : @831) -> + (hF : @729) -> + (hA : @730 @837 @62) -> + (hne : @600) -> + @603 (fun (ro : @602) => @609 (@734 (@226 (@10 @796) (@226 (@165 @586) @225)) @15)) +@860 := @816 @249 +@861 := @475 @755 +@872 := @572 (@758 @818 @243) (@580 (@244 (@238 @399) (@244 (@241 @457) @243))) +@874 := @728 (@590 @249) +@876 := @730 @781 @62 +@877 := @605 @249 +@899 := {o : @511} -> + (hB : @723) -> + (hfn : @754) -> + (hwt : @861) -> + (hbind : @872) -> + (hF : @874) -> + (hA : @876) -> + (hne : @600) -> + @603 + (fun (ro : @602) => @604 (@877 @312 @15) (@734 (@226 (@10 @586) (@226 (@165 @563) @225)) @15)) +@900 := @860 @499 +@901 := @483 @755 +@912 := @572 (@758 @474 @243) (@580 (@244 (@238 @382) (@244 (@241 @440) @243))) +@913 := @730 @773 +@915 := @497 @71 @60 +@916 := @913 @915 +@918 := @497 @312 @71 +@937 := (hB : @723) -> + (hfn : @754) -> + (hwt : @901) -> + (hbind : @912) -> + (hF : @874) -> + (hA : @916) -> + (hne : @512 @918 @517) -> + @603 (fun (ro : @602) => @604 (@877 (@497 @563 @537) @15) (@734 @791 @15)) +@938 := @900 @274 +@939 := @491 @755 +@950 := @572 (@758 @482 @243) (@580 (@244 (@238 @396) (@244 (@241 @454) @243))) +@951 := @730 @818 +@953 := @497 @60 @62 +@972 := (hfn : @754) -> + (hwt : @939) -> + (hbind : @950) -> + (hF : @874) -> + (hA : @951 @953) -> + (hne : @512 @915 @517) -> + @603 (fun (ro : @602) => @604 (@877 (@497 @537 @312) @15) (@734 @837 @15)) +@973 := Eq.refl.{1} +@976 := @938 (@973 @546 @724) +@977 := @495 @755 +@988 := @572 (@758 @490 @243) (@580 (@244 (@238 @411) (@244 (@241 @469) @243))) +@989 := @730 @474 +@991 := @497 @62 @64 +@1007 := (hwt : @977) -> + (hbind : @988) -> + (hF : @874) -> + (hA : @989 @991) -> + (hne : @512 @953 @517) -> @603 (fun (ro : @602) => @604 (@877 @918 @15) (@734 @781 @15)) +@1008 := @976 @494 +@1010 := @758 @230 @243 +@1013 := @572 @1010 (@580 @248) +@1014 := @730 @482 +@1016 := @497 @64 @20 +@1031 := (hbind : @1013) -> + (hF : @874) -> + (hA : @1014 @1016) -> + (hne : @512 @991 @517) -> @603 (fun (ro : @602) => @604 (@877 @915 @15) (@734 @773 @15)) +@1034 := @1008 (@973 @571 @1010) +@1035 := @730 @490 +@1037 := @497 @20 @6 +@1051 := (hF : @874) -> + (hA : @1035 @1037) -> + (hne : @512 @1016 @517) -> @603 (fun (ro : @602) => @604 (@877 @953 @15) (@734 @818 @15)) +@1054 := @1034 (@973 @583 @727) +@1056 := @730 @230 @499 +@1058 := @512 @1037 @517 +@1059 := @877 @991 +@1061 := @604 (@1059 @15) +@1062 := @734 @474 +@1063 := @1062 @15 +@1068 := (hA : @1056) -> (hne : @1058) -> @603 (fun (ro : @602) => @1061 @1063) +@1069 := @1054 @508 +@1071 := @512 @499 @517 +@1072 := @877 @1016 +@1074 := @604 (@1072 @15) +@1075 := @734 @482 +@1080 := (hne : @1071) -> @603 (fun (ro : @602) => @1074 (@1075 @15)) +@1081 := @1069 @530 +@1084 := @604 (@877 @1037 @15) +@1086 := @734 @490 @15 +@1087 := @1084 @1086 +@1089 := @603 (fun (ro : @602) => @1087) +@1090 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.accepts +@1092 := @1090 @6 @23 +@1093 := LexLeanPreservation.someObs +@1094 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.denote +@1097 := @1093 (@1094 @6 @23) +@1100 := LexLeanPreservation.Obs.value LexLeanTarget.TargetSyntax.Value.none +@1101 := Not +@1102 := @1101 @1092 +@1104 := @1090 @20 @6 +@1107 := @1093 (@1094 @20 @6) +@1108 := @1101 @1104 +@1114 := @1104 -> @877 (@1093 (@1094 @64 @20)) @23 +@1115 := @877 @1100 +@1116 := @1115 @23 +@1117 := @1108 -> @1116 +@1119 := @604 @1114 @1117 +@1123 := @603 (fun (__e_ro : @602) => @604 @1086 @1119) +@1124 := fun (__e_ro : @602) => @1087 +@1125 := @1072 @23 +@1126 := @1075 @23 +@1127 := And.left +@1128 := And.right +@1131 := @1127 @1125 @1126 @15 +@1134 := @1128 @1125 @1126 @15 +@1135 := @877 @15 +@1137 := fun (__e_o : @511) => @1135 @6 +@1138 := Eq.subst.{1} +@1140 := @1090 @64 @20 +@1141 := @1101 @1140 +@1145 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.entry_accepts @62 @64 @15 +@1148 := @1093 (@1094 @62 @64) +@1153 := @1127 (@1059 @6) (@1062 @6) @23 +@1155 := fun (__e_o : @511) => @1135 @20 +@1158 := @1138 @511 @1155 @991 +@1162 := fun (__e_h : @1140) => @1158 @1148 @1145 @1153 +@1166 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.entry_refuses @62 @64 @15 +@1170 := fun (__e_h : @1141) => @1158 @1100 @1166 @1153 +@1171 := And.intro +@1174 := @1140 -> @877 @1148 @6 +@1176 := @1141 -> @1115 @6 +@1178 := @604 @1174 @1176 +@1182 := @1171 @1174 @1176 @1162 @1170 +@1186 := @1171 @1126 @1178 @1134 @1182 +@1187 := Exists.intro.{1} +@1188 := @604 @1063 +@1190 := @1090 @62 @64 +@1202 := fun (__e_ro : @602) => + @1188 (@604 (@1190 -> @877 (@1093 (@1094 @60 @62)) @23) (@1101 @1190 -> @1116)) +@1206 := @1187 @602 @1202 @23 @1186 +@1208 := @604 @1125 @1126 +@1210 := fun (__e_ro : @602) => fun (__e_hand : @1087) => @1206 +@1216 := Exists.elim.{1} @602 @1124 @1123 @1081 @1210 +@1217 := LexLeanPreservation.Rust.RepresentableL +@1218 := @10 @23 +@1220 := @226 @208 @225 +@1223 := @1217 (@226 @1218 @1220) +@1224 := (__e_hrep : @1223) -> @1123 +@1225 := fun (__e_hrep : @1223) => @1216 +@1226 := (s : @162) -> @1224 +@1227 := fun (s : @162) => @1225 +@1228 := (xs : @5) -> @1226 +@1229 := fun (xs : @5) => @1227 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R4/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R4/RustStd.lean new file mode 100644 index 000000000..0af63f643 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R4/RustStd.lean @@ -0,0 +1,85 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1], types := [(.list .nat), (.list .int)], result := (.pair .nat .int), + body := (.build .pair (.pair .nat .int) [(.call 1 [(.closure 2 []), (.value .nat (.nat 0)), (.var 0)]), (.call 3 [(.closure 4 []), (.value .int (.int 5)), (.var 1)])]) }, + { parameters := [0, 1, 2], types := [(.fn [.nat, .nat] .nat), .nat, (.list .nat)], result := .nat, + body := (.«match» .nat (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 1 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, + { parameters := [0, 1], types := [.nat, .nat], result := .nat, + body := (.prim .natAdd [(.var 0), (.var 1)]) }, + { parameters := [0, 1, 2], types := [(.fn [.int, .int] .int), .int, (.list .int)], result := .int, + body := (.«match» .int (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 3 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, + { parameters := [0, 1], types := [.int, .int], result := .int, + body := (.prim .intSub [(.var 0), (.var 1)]) }, + { parameters := [0], types := [(.list .int)], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.var 1), (.var 3)]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 5 [(.var 2)]) (.build .false .bool [])))]))]) }, + { parameters := [0, 1], types := [(.list .nat), (.list .int)], result := (.option (.pair .nat .int)), + body := (.cond (.call 5 [(.var 1)]) (.build .some (.option (.pair .nat .int)) [(.call 0 [(.var 0), (.var 1)])]) (.build .none (.option (.pair .nat .int)) [])) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.enum (.fn 0) [{ number := 2, fields := [] }]), + (.apply 0 [.nat, .nat] .nat true [{ function := 2, captures := [], functionFallible := true }]), + (.enum (.fn 1) [{ number := 4, fields := [] }]), + (.apply 1 [.int, .int] .int true [{ function := 4, captures := [], functionFallible := true }]), + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := (.list .int) }] (.fallible (.pair .nat .int)) (.mk [] (.succeed (.pair (.call (.function 1) [(.construct (.closure 0 2) []), (.lit (.nat 0)), (.move (.generated .binding 0))] true) (.call (.function 3) [(.construct (.closure 1 4) []), (.lit (.int 5)), (.move (.generated .binding 1))] true))))), + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := (.list .nat) }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 1)) [(.mk .none (.mk [] (.succeed (.copy (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 1) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 2)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 2) [(.copy (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]))), + (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))), + (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 1) }, { pattern := (.bind (.generated .binding 1)), type := .int }, { pattern := (.bind (.generated .binding 2)), type := (.list .int) }] (.fallible .int) (.mk [(.mk (.bind (.generated .holder 5)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 5)) [(.mk .none (.mk [] (.succeed (.copy (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 3) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 6)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 6) [(.copy (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]))), + (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := .int }, { pattern := (.bind (.generated .binding 1)), type := .int }] (.fallible .int) (.mk [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1)))] (.call (.runtime .intSub) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false))), + (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := (.list .int) }] .bool (.mk [(.mk (.bind (.generated .holder 9)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 9)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [(.mk (.bind (.generated .holder 10)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 10)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))] (.cond (.matchOn (.move (.generated .holder 13)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 5) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])))]))), + (.function (.generated .function 6) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := (.list .int) }] (.fallible (.option (.pair .nat .int))) (.mk [] (.cond (.call (.function 5) [(.clone (.generated .binding 1))] false) (.mk [] (.succeed (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] true)]))) (.mk [] (.succeed (.construct (.none (.pair .nat .int)) []))))))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [(([.nat, .nat], .nat), true), (([.int, .int], .int), true)] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [], (.succeed (.pair (.call (.function 1) [(.construct (.closure 0 2) []), (.lit (.nat 0)), (.move (.generated .binding 0))] true) (.call (.function 3) [(.construct (.closure 1 4) []), (.lit (.int 5)), (.move (.generated .binding 1))] true))), [(1, (.list .int), (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, + (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.fn [.nat, .nat] .nat), .nat, (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.fn [.int, .int] .int), .int, (.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lNil))))))⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 1)) [(.mk .none (.mk [] (.succeed (.copy (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 1) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 2)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 2) [(.copy (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]), [(2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat, .nat] .nat), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat, .nat] .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.copy (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list .nat), (some 4)), (3, .nat, (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat, .nat] .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 1) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 2)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 2) [(.copy (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [.nat, .nat] .nat), .nat, (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 2)) (some (.fn 0)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 2) [(.copy (.generated .binding 1)), (.copy (.generated .binding 3))] true)) (Corr.apply (ps := [.nat, .nat]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1)))], (.call (.runtime .natAdd) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun3 : FunOK program krate flags 3 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 5)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 5)) [(.mk .none (.mk [] (.succeed (.copy (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 3) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 6)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 6) [(.copy (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]), [(2, (.list .int), (some 2)), (1, .int, (some 1)), (0, (.fn [.int, .int] .int), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .int)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .int), (some 2)), (1, .int, (some 1)), (0, (.fn [.int, .int] .int), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.copy (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list .int), (some 4)), (3, .int, (some 3)), (2, (.list .int), (some 2)), (1, .int, (some 1)), (0, (.fn [.int, .int] .int), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 3) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 6)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 6) [(.copy (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [.int, .int] .int), .int, (.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 6)) (some (.fn 1)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 6) [(.copy (.generated .binding 1)), (.copy (.generated .binding 3))] true)) (Corr.apply (ps := [.int, .int]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ + +theorem fun4 : FunOK program krate flags 4 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1)))], (.call (.runtime .intSub) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false), [(1, .int, (some 1)), (0, .int, (some 0))], rfl, rfl, + (Corr.primF (ts := [.int, .int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun5 : FunOK program krate flags 5 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 9)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 9)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [(.mk (.bind (.generated .holder 10)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 10)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))] (.cond (.matchOn (.move (.generated .holder 13)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 5) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])))]), [(0, (.list .int), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .int)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list .int), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, (.list .int), (some 2)), (1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 10)) none (.clone (.generated .binding 2)))]) (tail := (.matchOn (.uncons (.generated .holder 10)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))] (.cond (.matchOn (.move (.generated .holder 13)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 5) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := (.list .int)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .int), (some 2)), (1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list .int), none), (3, .int, (some 3)), (2, (.list .int), (some 2)), (1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 13)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 5) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .holder 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))]) (ce := (.matchOn (.move (.generated .holder 13)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 3)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.list .int), none), (3, .int, (some 3)), (2, (.list .int), (some 2)), (1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list .int), none), (3, .int, (some 3)), (2, (.list .int), (some 2)), (1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, (.list .int), none), (3, .int, (some 3)), (2, (.list .int), (some 2)), (1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 5) [(.move (.generated .binding 2))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ + +theorem fun6 : FunOK program krate flags 6 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 5) [(.clone (.generated .binding 1))] false) (.mk [] (.succeed (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] true)]))) (.mk [] (.succeed (.construct (.none (.pair .nat .int)) [])))), [(1, (.list .int), (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 5) [(.clone (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [(.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] true)]))) (lb := []) (tb := (.succeed (.construct (.none (.pair .nat .int)) []))) (Corr.fOfB (Corr.build (ts := [(.pair .nat .int)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), (.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | 3 => exact fun3 + | 4 => exact fun4 + | 5 => exact fun5 + | 6 => exact fun6 + | _ + 7 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R5.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R5.lean new file mode 100644 index 000000000..1130e0af6 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R5.lean @@ -0,0 +1,60 @@ +import LexLeanPreservation.Core +import LexLeanPreservation.Values +import LexLeanPreservation.Primitives +import LexLeanPreservation.Fixed +import LexLeanPreservation.Keys +import LexLeanPreservation.Templates +import LexLeanPreservation.Validate +import Coverage.Boundary +import Coverage.Colls +import Coverage.Main +import Coverage.Prims +import Coverage.RecRoots +import Coverage.Recur +import Coverage.Syntax +import Coverage.Types +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +set_option linter.unusedVariables false +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5 + +def __prog : _root_.LexLeanTarget.TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1], types := [.nat, .nat], result := (.pair .nat (.pair .nat .bool)), + body := (.build .pair (.pair .nat (.pair .nat .bool)) [(.call 1 [(.closure 2 []), (.var 0), (.var 1)]), (.call 3 [(.closure 4 []), (.var 0), (.var 1)])]) }, + { parameters := [0, 1, 2], types := [(.fn [.nat] .nat), .nat, .nat], result := .nat, + body := (.«match» .nat (.var 1) [(.arm .zero [] (.var 2)), (.arm .succ [3] (.call 1 [(.var 0), (.var 3), (.apply (.var 0) [(.var 2)])]))]) }, + { parameters := [0], types := [.nat], result := .nat, + body := (.prim .natAdd [(.var 0), (.value .nat (.nat 1))]) }, + { parameters := [0, 1, 2], types := [(.fn [.nat] (.option .nat)), .nat, .nat], result := (.pair .nat .bool), + body := (.«match» (.pair .nat .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair .nat .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair .nat .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair .nat .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 3 [(.var 0), (.var 3), (.var 4)]))]))]) }, + { parameters := [0], types := [.nat], result := (.option .nat), + body := (.cond (.prim .natLt [(.var 0), (.value .nat (.nat 10))]) (.build .some (.option .nat) [(.prim .natAdd [(.var 0), (.value .nat (.nat 2))])]) (.build .none (.option .nat) [])) }] } + +def __fits_2 (x : Nat) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (x + (1 : Nat)) 18446744073709551616)) + +theorem __rel_2 (x : Nat) : _root_.LexLeanPreservation.FunRel __prog 2 [(_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_2 x) (_root_.LexLeanTarget.TargetSyntax.Value.nat ((x + (1 : Nat))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd x (1 : Nat))) + +def __fits_4 (x : Nat) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.blt x (10 : Nat)) then ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (x + (2 : Nat)) 18446744073709551616)) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +theorem __rel_4 (x : Nat) : _root_.LexLeanPreservation.FunRel __prog 4 [(_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_4 x) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) ((if (Nat.blt x (10 : Nat)) then (Option.some ((x + (2 : Nat))) : (Option Nat)) else (Option.none : (Option Nat)))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (x + (2 : Nat)) 18446744073709551616)) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Option.some ((x + (2 : Nat))) : (Option Nat)) else (Option.none : (Option Nat)))) (Nat.blt x (10 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt x (10 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd x (2 : Nat))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_0 (n : Nat) (start : Nat) : Bool := + ((((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.iterateFits (fun (__p0 : Nat) => __fits_2 __p0) ((fun (x : Nat) => (x + (1 : Nat)))) (n) (start))) && (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : Nat) => __fits_4 __p0) ((fun (x : Nat) => (if (Nat.blt x (10 : Nat)) then (Option.some ((x + (2 : Nat))) : (Option Nat)) else (Option.none : (Option Nat))))) (n) (start))) && Bool.true)) && Bool.true) + +theorem __rel_0 (n : Nat) (start : Nat) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat n), (_root_.LexLeanTarget.TargetSyntax.Value.nat start)] (_root_.LexLeanPreservation.Rel (__fits_0 n start) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool)) (Coverage.Colls.iterations n start))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterate (es := _root_.LexLeanTarget.TargetSyntax.Value.nat) ((fun (x : Nat) => (x + (1 : Nat)))) (fun (__p0 : Nat) => __fits_2 __p0) 2 [] (fun (__p0 : Nat) => __rel_2 __p0) (_root_.LexLeanCollections.iterate ((fun (x : Nat) => (x + (1 : Nat))))) (fun _ => rfl) (fun _ _ => rfl) (p := __prog) (fi := 1) (ts := .nat) rfl (n) (start))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterateUntil (es := _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.optEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) ((fun (x : Nat) => (if (Nat.blt x (10 : Nat)) then (Option.some ((x + (2 : Nat))) : (Option Nat)) else (Option.none : (Option Nat))))) (fun (__p0 : Nat) => __fits_4 __p0) 4 [] (fun (__p0 : Nat) => __rel_4 __p0) (_root_.LexLeanCollections.iterateUntil ((fun (x : Nat) => (if (Nat.blt x (10 : Nat)) then (Option.some ((x + (2 : Nat))) : (Option Nat)) else (Option.none : (Option Nat)))))) (fun _ => rfl) (fun _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (p := __prog) (fi := 3) (ts := .nat) rfl (n) (start))) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) + +def denote (n : Nat) (start : Nat) : _root_.LexLeanPreservation.Obs := + _root_.cond (__fits_0 n start) (_root_.LexLeanPreservation.Obs.value (((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool)) (Coverage.Colls.iterations n start)))) _root_.LexLeanPreservation.Obs.overflow + +theorem root (n : Nat) (start : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat n), (_root_.LexLeanTarget.TargetSyntax.Value.nat start)] (_root_.LexLeanPreservation.Rel (__fits_0 n start) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool)) (Coverage.Colls.iterations n start))) := + _root_.LexLeanPreservation.run_of_funRel (__rel_0 n start) + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5 diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R5/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R5/Compose/RustStd.lex.tex new file mode 100644 index 000000000..7de395383 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R5/Compose/RustStd.lex.tex @@ -0,0 +1,468 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.Compose.RustStd.root : @924 := @925 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.RustStd.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.RustStd.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.RustStd.flags +@3 := Nat +@4 := #2 +@5 := LexLeanTarget.TargetSyntax.Value.nat +@6 := @5 @4 +@7 := LexLeanTarget.TargetSyntax.Ty.nat +@8 := LexLeanTarget.TargetSyntax.Program +@9 := LexLeanPreservation.Rust.RCrate +@10 := LexLeanPreservation.Rust.Flags +@11 := LexLeanPreservation.Rust.WT +@12 := #3 +@14 := @11 @12 @4 +@15 := #1 +@16 := @14 @15 +@17 := #0 +@18 := @5 @17 +@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 +@26 := LexLeanPreservation.Rust.wt_nat @0 +@27 := @11 @0 +@34 := {c : @9} -> {A : @10} -> (n : @3) -> @27 @4 @15 @18 @7 +@35 := @26 @1 +@36 := @27 @1 +@41 := {A : @10} -> (n : @3) -> @36 @15 @18 @7 +@42 := @35 @2 +@43 := @36 @2 +@46 := (n : @3) -> @43 @18 @7 +@47 := @42 @4 +@49 := @43 @6 @7 +@50 := @5 @15 +@51 := @42 @15 +@53 := @43 @50 @7 +@54 := LexLeanTarget.TargetSyntax.Value +@55 := List.nil.{0} +@56 := List.cons.{0} +@57 := @55 @54 +@58 := @56 @54 +@59 := @58 @50 +@60 := @59 @57 +@61 := @58 @6 +@62 := @61 @60 +@64 := Prod.{0, 0} @3 +@65 := @64 @54 +@66 := 1 +@69 := Prod.mk.{0, 0} @3 @54 +@70 := @69 @66 +@71 := @70 @50 +@72 := 0 +@73 := @69 @72 +@74 := @73 @6 +@75 := @55 @65 +@76 := @56 @65 +@78 := @76 @74 @75 +@80 := @76 @71 @78 +@81 := Bool.true +@82 := LexLeanTarget.TargetSyntax.Function +@83 := LexLeanTarget.TargetSyntax.Program.functions +@84 := @83 @0 +@85 := LexLeanTarget.TargetSyntax.Ty +@86 := @55 @3 +@87 := @55 @85 +@88 := LexLeanTarget.TargetSyntax.Ty.unit +@89 := LexLeanTarget.TargetSyntax.Value.unit +@92 := LexLeanTarget.TargetSyntax.Expr.value @88 @89 +@97 := LexLeanTarget.TargetSyntax.Function.mk @86 @87 @88 @92 +@102 := List.getD.{0} @82 @84 @72 @97 +@106 := fun (__e_n : @3) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.RustStd.root @17 @72 +@107 := LexLeanPreservation.Rust.WTL +@115 := {p : @8} -> {c : @9} -> {A : @10} -> @107 @4 @15 @17 @57 @87 +@117 := LexLeanPreservation.Rust.wtl_nil @0 +@118 := @107 @0 +@124 := {c : @9} -> {A : @10} -> @118 @15 @17 @57 @87 +@125 := @117 @1 +@126 := @118 @1 +@130 := {A : @10} -> @126 @17 @57 @87 +@131 := @125 @2 +@132 := @126 @2 +@133 := @132 @57 +@134 := @133 @87 +@135 := List.{0} +@136 := @135 @54 +@137 := @135 @85 +@138 := #6 +@139 := @11 @138 +@140 := #5 +@141 := @139 @140 +@142 := #4 +@145 := @141 @142 @12 @4 +@146 := #7 +@151 := @107 @146 @138 @140 @4 @15 +@152 := #8 +@155 := @107 @152 @146 @138 +@157 := @58 @140 @12 +@158 := @155 @157 +@159 := @56 @85 +@161 := @159 @142 @4 +@171 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {v : @54} -> {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @145) -> (hs : @151) -> @158 @161 +@173 := LexLeanPreservation.Rust.wtl_cons @0 +@193 := {c : @9} -> + {A : @10} -> + {v : @54} -> + {t : @85} -> + {vs : @136} -> + {ts : @137} -> + (h : @27 @140 @142 @12 @4) -> (hs : @118 @138 @140 @4 @15) -> @118 @146 @138 @157 @161 +@194 := @173 @1 +@210 := {A : @10} -> + {v : @54} -> + {t : @85} -> + {vs : @136} -> + {ts : @137} -> (h : @36 @142 @12 @4) -> (hs : @126 @140 @4 @15) -> @126 @138 @157 @161 +@211 := @194 @2 +@213 := @43 @12 @4 +@215 := @132 @4 @15 +@223 := {v : @54} -> + {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @213) -> (hs : @215) -> @132 @157 @161 +@224 := @211 @50 +@225 := @5 @142 +@226 := @43 @225 +@227 := @226 @4 +@228 := @5 @138 +@229 := @58 @228 +@231 := @132 (@229 @12) +@237 := {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @227) -> (hs : @215) -> @231 @161 +@238 := @224 @7 +@239 := @5 @12 +@241 := @43 @239 @7 +@242 := @5 @140 +@243 := @58 @242 +@245 := @132 (@243 @12) +@246 := @159 @7 +@247 := @246 @4 +@252 := {vs : @136} -> {ts : @137} -> (h : @241) -> (hs : @215) -> @245 @247 +@253 := @238 @57 +@254 := @133 @15 +@255 := @58 @225 +@256 := @255 @57 +@261 := {ts : @137} -> (h : @49) -> (hs : @254) -> @132 @256 @247 +@262 := @253 @87 +@263 := @58 @239 +@264 := @263 @57 +@265 := @132 @264 +@266 := @246 @87 +@269 := (h : @53) -> (hs : @134) -> @265 @266 +@270 := @262 @51 +@271 := @61 @57 +@273 := @132 @271 @266 +@274 := (hs : @134) -> @273 +@275 := @270 @131 +@277 := @132 @60 @266 +@278 := @211 @6 +@280 := @43 @242 @4 +@281 := @5 @146 +@282 := @58 @281 +@290 := {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @280) -> (hs : @215) -> @132 (@282 @12) @161 +@291 := @278 @7 +@297 := {vs : @136} -> {ts : @137} -> (h : @226 @7) -> (hs : @215) -> @231 @247 +@298 := @291 @60 +@299 := @265 @15 +@300 := @243 @256 +@301 := @132 @300 +@305 := {ts : @137} -> (h : @241) -> (hs : @299) -> @301 @247 +@306 := @298 @266 +@307 := @255 @264 +@308 := @132 @307 +@309 := @246 @266 +@312 := (h : @49) -> (hs : @273) -> @308 @309 +@313 := @306 @47 +@314 := @263 @271 +@315 := @132 @314 +@317 := (hs : @277) -> @315 @309 +@318 := @313 @275 +@319 := @132 @62 +@320 := @319 @309 +@321 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.denote +@323 := @321 @4 @15 +@324 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.__fits_0 +@326 := @324 @4 @15 +@329 := Coverage.Colls.iterations @4 @15 +@330 := Bool +@331 := @64 @330 +@332 := LexLeanTarget.TargetSyntax.Value.bool +@334 := LexLeanPreservation.encPair @3 +@337 := @334 @330 @5 @332 +@341 := @334 @331 @5 @337 @329 +@344 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.root @4 @15 +@345 := Ne.{1} +@346 := LexLeanPreservation.Obs +@347 := @345 @346 +@348 := LexLeanPreservation.Rel +@351 := @347 (@348 @15 @17) +@352 := LexLeanPreservation.Obs.stuck +@355 := (f : @330) -> (v : @54) -> @351 @352 +@357 := LexLeanPreservation.Rust.rel_ne_stuck @326 +@364 := (v : @54) -> @347 (@348 (@324 @12 @4) @17) @352 +@365 := @357 @341 +@369 := @347 (@348 @326 @341) @352 +@370 := @135 @65 +@371 := LexLeanPreservation.Rust.FunSem +@372 := #9 +@378 := (n : @3) -> @371 @372 @152 @146 @17 @138 +@379 := Eq.{1} +@380 := Option.{0} +@381 := @380 @82 +@382 := @379 @381 +@389 := LexLeanRuntime.index (@135 @82) @82 (LexLeanRuntime.instIndexableList @82) +@393 := @382 (@389 (@83 @372) @138) +@394 := Option.some.{0} +@395 := @394 @82 +@396 := @395 @140 +@397 := @393 @396 +@398 := #10 +@402 := @107 @398 @372 @152 @140 +@403 := LexLeanTarget.TargetSyntax.Function.types +@404 := @403 @138 +@405 := @402 @404 +@406 := @380 @370 +@407 := @379 @406 +@408 := LexLeanTarget.TargetSemantics.bindAll +@409 := LexLeanTarget.TargetSyntax.Function.parameters +@414 := @407 (@408 (@409 @146) @138 @75) +@415 := @394 @370 +@416 := @415 @140 +@417 := @414 @416 +@418 := @380 @330 +@419 := @379 @418 +@420 := LexLeanPreservation.Rust.fnFallible +@421 := #11 +@424 := @419 (@420 @421 @372) +@425 := @394 @330 +@426 := @425 @140 +@427 := @424 @426 +@428 := LexLeanPreservation.RunConv +@429 := #13 +@433 := @428 @429 @398 @152 @140 +@435 := @347 @138 @352 +@436 := Exists.{1} +@437 := LexLeanPreservation.Rust.ROut +@438 := @436 @437 +@439 := And +@440 := LexLeanPreservation.Rust.RealizesFn +@444 := @439 (@440 @372 @152 @17) +@445 := LexLeanPreservation.Rust.RCI +@447 := @445 #15 +@448 := LexLeanPreservation.Rust.fnIdent +@449 := @448 @429 +@456 := (hne : @435) -> @438 (fun (ro : @437) => @444 (@447 @449 @421 @17)) +@471 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {f : @3} -> + {fn : @82} -> + {args : @136} -> + {env : @370} -> + {F : @330} -> + {o : @346} -> + (hB : @378) -> + (hfn : @397) -> (hwt : @405) -> (hbind : @417) -> (hF : @427) -> (hA : @433) -> @456 +@473 := LexLeanPreservation.Rust.compose @0 +@474 := @371 @0 +@479 := (n : @3) -> @474 @152 @146 @17 @138 +@480 := @389 @84 +@483 := @382 (@480 @138) @396 +@487 := @118 @372 @152 @140 @404 +@488 := @428 @0 +@491 := @488 @398 @152 @140 +@505 := {c : @9} -> + {A : @10} -> + {f : @3} -> + {fn : @82} -> + {args : @136} -> + {env : @370} -> + {F : @330} -> + {o : @346} -> + (hB : @479) -> + (hfn : @483) -> (hwt : @487) -> (hbind : @417) -> (hF : @427) -> (hA : @491) -> @456 +@506 := @473 @1 +@507 := @474 @1 +@511 := (n : @3) -> @507 @146 @17 @138 +@514 := @126 @152 @140 @404 +@515 := @420 @1 +@518 := @419 (@515 @372) @426 +@519 := @445 @1 +@529 := (hbind : @417) -> + (hF : @518) -> (hA : @491) -> (hne : @435) -> @438 (fun (ro : @437) => @444 (@519 @449 @421 @17)) +@539 := {A : @10} -> + {f : @3} -> + {fn : @82} -> + {args : @136} -> + {env : @370} -> {F : @330} -> {o : @346} -> (hB : @511) -> (hfn : @483) -> (hwt : @514) -> @529 +@540 := @506 @2 +@542 := @507 @2 @17 +@544 := (n : @3) -> @542 @138 +@545 := @132 @140 +@546 := @545 @404 +@555 := {f : @3} -> + {fn : @82} -> + {args : @136} -> + {env : @370} -> {F : @330} -> {o : @346} -> (hB : @544) -> (hfn : @483) -> (hwt : @546) -> @529 +@556 := @540 @72 +@558 := (n : @3) -> @542 @72 +@559 := @480 @72 +@560 := @382 @559 +@561 := @560 @396 +@562 := @515 @72 +@563 := @419 @562 +@564 := @563 @426 +@565 := @488 @72 +@567 := @565 @152 @140 +@569 := @519 (@448 @72) +@577 := (hF : @564) -> (hA : @567) -> (hne : @435) -> @438 (fun (ro : @437) => @444 (@569 @421 @17)) +@586 := {fn : @82} -> + {args : @136} -> + {env : @370} -> + {F : @330} -> {o : @346} -> (hB : @558) -> (hfn : @561) -> (hwt : @546) -> (hbind : @417) -> @577 +@587 := @556 @102 +@589 := @560 (@395 @102) +@590 := @403 @102 +@591 := @545 @590 +@593 := @408 (@409 @102) +@605 := {args : @136} -> + {env : @370} -> + {F : @330} -> + {o : @346} -> + (hB : @558) -> (hfn : @589) -> (hwt : @591) -> (hbind : @407 (@593 @138 @75) @416) -> @577 +@606 := @587 @62 +@608 := @282 (@229 @57) +@610 := @132 @608 @590 +@612 := @58 (@5 @152) +@614 := @612 (@282 @57) +@618 := @407 (@593 @614 @75) @416 +@620 := @58 (@5 @398) +@622 := @58 (@5 @372) +@624 := @620 (@622 @57) +@626 := @565 @624 @140 +@628 := @58 (@5 @429) +@631 := @58 (@5 #12) +@648 := {env : @370} -> + {F : @330} -> + {o : @346} -> + (hB : @558) -> + (hfn : @589) -> + (hwt : @610) -> + (hbind : @618) -> + (hF : @564) -> + (hA : @626) -> (hne : @435) -> @438 (fun (ro : @437) => @444 (@569 (@628 (@631 @57)) @17)) +@649 := @606 @80 +@651 := @229 (@243 @57) +@653 := @132 @651 @590 +@664 := @407 (@593 @608 @75) (@415 (@76 (@70 @228) (@76 (@73 @281) @75))) +@666 := @622 (@612 @57) +@668 := @565 @666 @140 +@670 := @58 (@5 @421) +@686 := {F : @330} -> + {o : @346} -> + (hB : @558) -> + (hfn : @589) -> + (hwt : @653) -> + (hbind : @664) -> + (hF : @564) -> + (hA : @668) -> (hne : @435) -> @438 (fun (ro : @437) => @444 (@569 (@631 (@670 @57)) @17)) +@687 := @649 @81 +@688 := @301 @590 +@699 := @407 (@593 @651 @75) (@415 (@76 (@70 @242) (@76 (@73 @228) @75))) +@701 := @563 (@425 @81) +@703 := @565 @614 @140 +@704 := @440 @81 +@722 := {o : @346} -> + (hB : @558) -> + (hfn : @589) -> + (hwt : @688) -> + (hbind : @699) -> + (hF : @701) -> + (hA : @703) -> + (hne : @435) -> @438 (fun (ro : @437) => @439 (@704 @152 @17) (@569 (@670 (@620 @57)) @17)) +@723 := @687 @323 +@724 := @308 @590 +@735 := @407 (@593 @300 @75) (@415 (@76 (@70 @225) (@76 (@73 @242) @75))) +@736 := @565 @608 +@738 := @321 @146 @138 +@739 := @736 @738 +@741 := @321 @152 @146 +@760 := (hB : @558) -> + (hfn : @589) -> + (hwt : @724) -> + (hbind : @735) -> + (hF : @701) -> + (hA : @739) -> + (hne : @347 @741 @352) -> + @438 (fun (ro : @437) => @439 (@704 (@321 @398 @372) @17) (@569 @624 @17)) +@761 := @723 @106 +@762 := @315 @590 +@773 := @407 (@593 @307 @75) (@415 (@76 (@70 @239) (@76 (@73 @225) @75))) +@774 := @565 @651 +@776 := @321 @138 @140 +@795 := (hfn : @589) -> + (hwt : @762) -> + (hbind : @773) -> + (hF : @701) -> + (hA : @774 @776) -> + (hne : @347 @738 @352) -> + @438 (fun (ro : @437) => @439 (@704 (@321 @372 @152) @17) (@569 @666 @17)) +@796 := Eq.refl.{1} +@799 := @761 (@796 @381 @559) +@800 := @319 @590 +@811 := @407 (@593 @314 @75) (@415 (@76 (@70 @6) (@76 (@73 @239) @75))) +@812 := @565 @300 +@814 := @321 @140 @142 +@830 := (hwt : @800) -> + (hbind : @811) -> + (hF : @701) -> + (hA : @812 @814) -> + (hne : @347 @776 @352) -> @438 (fun (ro : @437) => @439 (@704 @741 @17) (@569 @614 @17)) +@831 := @799 @318 +@833 := @593 @62 @75 +@836 := @407 @833 (@415 @80) +@837 := @565 @307 +@839 := @321 @142 @12 +@854 := (hbind : @836) -> + (hF : @701) -> + (hA : @837 @839) -> + (hne : @347 @814 @352) -> @438 (fun (ro : @437) => @439 (@704 @738 @17) (@569 @608 @17)) +@857 := @831 (@796 @406 @833) +@858 := @565 @314 +@860 := @321 @12 @4 +@874 := (hF : @701) -> + (hA : @858 @860) -> + (hne : @347 @839 @352) -> @438 (fun (ro : @437) => @439 (@704 @776 @17) (@569 @651 @17)) +@877 := @857 (@796 @418 @562) +@891 := (hA : @565 @62 @323) -> + (hne : @347 @860 @352) -> @438 (fun (ro : @437) => @439 (@704 @814 @17) (@569 @300 @17)) +@892 := @877 @344 +@903 := (hne : @347 @323 @352) -> @438 (fun (ro : @437) => @439 (@704 @839 @17) (@569 @307 @17)) +@904 := @892 @365 +@910 := @439 (@704 @860 @17) (@569 @314 @17) +@912 := @438 (fun (ro : @437) => @910) +@914 := @438 (fun (__e_ro : @437) => @910) +@919 := LexLeanPreservation.Rust.RepresentableL (@59 (@58 @18 @57)) +@920 := (__e_hrep : @919) -> @914 +@921 := fun (__e_hrep : @919) => @904 +@922 := (start : @3) -> @920 +@923 := fun (start : @3) => @921 +@924 := (n : @3) -> @922 +@925 := fun (n : @3) => @923 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R5/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R5/RustStd.lean new file mode 100644 index 000000000..4fc4b04f5 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R5/RustStd.lean @@ -0,0 +1,69 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1], types := [.nat, .nat], result := (.pair .nat (.pair .nat .bool)), + body := (.build .pair (.pair .nat (.pair .nat .bool)) [(.call 1 [(.closure 2 []), (.var 0), (.var 1)]), (.call 3 [(.closure 4 []), (.var 0), (.var 1)])]) }, + { parameters := [0, 1, 2], types := [(.fn [.nat] .nat), .nat, .nat], result := .nat, + body := (.«match» .nat (.var 1) [(.arm .zero [] (.var 2)), (.arm .succ [3] (.call 1 [(.var 0), (.var 3), (.apply (.var 0) [(.var 2)])]))]) }, + { parameters := [0], types := [.nat], result := .nat, + body := (.prim .natAdd [(.var 0), (.value .nat (.nat 1))]) }, + { parameters := [0, 1, 2], types := [(.fn [.nat] (.option .nat)), .nat, .nat], result := (.pair .nat .bool), + body := (.«match» (.pair .nat .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair .nat .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair .nat .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair .nat .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 3 [(.var 0), (.var 3), (.var 4)]))]))]) }, + { parameters := [0], types := [.nat], result := (.option .nat), + body := (.cond (.prim .natLt [(.var 0), (.value .nat (.nat 10))]) (.build .some (.option .nat) [(.prim .natAdd [(.var 0), (.value .nat (.nat 2))])]) (.build .none (.option .nat) [])) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.enum (.fn 0) [{ number := 2, fields := [] }]), + (.apply 0 [.nat] .nat true [{ function := 2, captures := [], functionFallible := true }]), + (.enum (.fn 1) [{ number := 4, fields := [] }]), + (.apply 1 [.nat] (.option .nat) true [{ function := 4, captures := [], functionFallible := true }]), + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.pair .nat (.pair .nat .bool))) (.mk [] (.succeed (.pair (.call (.function 1) [(.construct (.closure 0 2) []), (.copy (.generated .binding 0)), (.copy (.generated .binding 1))] true) (.call (.function 3) [(.construct (.closure 1 4) []), (.copy (.generated .binding 0)), (.copy (.generated .binding 1))] true))))), + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 1)) none (.copy (.generated .binding 1)))] (.cond (.isZero (.generated .holder 1)) (.mk [] (.succeed (.copy (.generated .binding 2)))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 1)))] (.call (.function 1) [(.clone (.generated .binding 0)), (.copy (.generated .binding 3)), (.block (.mk [(.mk (.bind (.generated .callee 2)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 2) [(.copy (.generated .binding 2))] true)))] false))))), + (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))), + (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 1) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.fallible (.pair .nat .bool)) (.mk [(.mk (.bind (.generated .holder 5)) none (.copy (.generated .binding 1)))] (.cond (.isZero (.generated .holder 5)) (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 5))), (.mk (.bind (.generated .holder 7)) none (.block (.mk [(.mk (.bind (.generated .callee 6)) (some (.fn 1)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 6) [(.copy (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 7)) [(.mk .none (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 3) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)))]))))), + (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible (.option .nat)) (.mk [(.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 9)) none (.lit (.nat 10)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 8)), (.move (.generated .operand 9))] false) (.mk [] (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 11)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] true)))]))) (.mk [] (.succeed (.construct (.none .nat) []))))))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [(([.nat], .nat), true), (([.nat], (.option .nat)), true)] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [], (.succeed (.pair (.call (.function 1) [(.construct (.closure 0 2) []), (.copy (.generated .binding 0)), (.copy (.generated .binding 1))] true) (.call (.function 3) [(.construct (.closure 1 4) []), (.copy (.generated .binding 0)), (.copy (.generated .binding 1))] true))), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.fn [.nat] .nat), .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.fn [.nat] (.option .nat)), .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lNil))))))⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.copy (.generated .binding 1)))], (.cond (.isZero (.generated .holder 1)) (.mk [] (.succeed (.copy (.generated .binding 2)))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 1)))] (.call (.function 1) [(.clone (.generated .binding 0)), (.copy (.generated .binding 3)), (.block (.mk [(.mk (.bind (.generated .callee 2)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 2) [(.copy (.generated .binding 2))] true)))] false))), [(2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat] .nat), (some 0))], rfl, rfl, + (Corr.matchNat (sl := (some 3)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.succeed (.copy (.generated .binding 2)))) (lb := []) (tb := (.call (.function 1) [(.clone (.generated .binding 0)), (.copy (.generated .binding 3)), (.block (.mk [(.mk (.bind (.generated .callee 2)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 2) [(.copy (.generated .binding 2))] true)))] false)) (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl))) (Corr.callF (ts := [(.fn [.nat] .nat), .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 2)) (some (.fn 0)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 2) [(.copy (.generated .binding 2))] true)) (Corr.apply (ps := [.nat]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl)))⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.lit (.nat 1)))], (.call (.runtime .natAdd) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false), [(0, .nat, (some 0))], rfl, rfl, + (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun3 : FunOK program krate flags 3 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 5)) none (.copy (.generated .binding 1)))], (.cond (.isZero (.generated .holder 5)) (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 5))), (.mk (.bind (.generated .holder 7)) none (.block (.mk [(.mk (.bind (.generated .callee 6)) (some (.fn 1)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 6) [(.copy (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 7)) [(.mk .none (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 3) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)))]))), [(2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat] (.option .nat)), (some 0))], rfl, rfl, + (Corr.matchNat (sl := (some 3)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool false))))) (lb := [(.mk (.bind (.generated .holder 7)) none (.block (.mk [(.mk (.bind (.generated .callee 6)) (some (.fn 1)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 6) [(.copy (.generated .binding 2))] true))))]) (tb := (.matchOn (.move (.generated .holder 7)) [(.mk .none (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 3) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)))])) (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))))) (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 6)) (some (.fn 1)) (.clone (.generated .binding 0)))]) (tail := (.apply (.generated .callee 6) [(.copy (.generated .binding 2))] true)) (Corr.apply (ps := [.nat]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat] (.option .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true))))) (Corr.mCons (Γ' := [(4, .nat, (some 4)), (3, .nat, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat] (.option .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 3) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [.nat] (.option .nat)), .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))))))) rfl rfl rfl)))⟩⟩ + +theorem fun4 : FunOK program krate flags 4 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 9)) none (.lit (.nat 10)))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 8)), (.move (.generated .operand 9))] false) (.mk [] (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 11)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] true)))]))) (.mk [] (.succeed (.construct (.none .nat) [])))), [(0, .nat, (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 9)) none (.lit (.nat 10)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 8)), (.move (.generated .operand 9))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 11)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] true)))]))) (lb := []) (tb := (.succeed (.construct (.none .nat) []))) (Corr.fOfB (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 11)) none (.lit (.nat 2)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | 3 => exact fun3 + | 4 => exact fun4 + | _ + 5 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R6.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R6.lean new file mode 100644 index 000000000..50a1a07e9 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R6.lean @@ -0,0 +1,154 @@ +import LexLeanPreservation.Core +import LexLeanPreservation.Values +import LexLeanPreservation.Primitives +import LexLeanPreservation.Fixed +import LexLeanPreservation.Keys +import LexLeanPreservation.Templates +import LexLeanPreservation.Validate +import Coverage.Boundary +import Coverage.Colls +import Coverage.Main +import Coverage.Prims +import Coverage.RecRoots +import Coverage.Recur +import Coverage.Syntax +import Coverage.Types +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +set_option linter.unusedVariables false +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6 + +def __prog : _root_.LexLeanTarget.TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1], types := [(.list (.pair .nat (.list .nat))), .nat], result := (.pair (.list .nat) (.pair (.list .nat) (.option (.list .nat)))), + body := (.build .pair (.pair (.list .nat) (.pair (.list .nat) (.option (.list .nat)))) [(.call 1 [(.var 0), (.var 1)]), (.build .pair (.pair (.list .nat) (.option (.list .nat))) [(.call 3 [(.var 0), (.var 1)]), (.call 16 [(.var 0)])])]) }, + { parameters := [0, 1], types := [(.list (.pair .nat (.list .nat))), .nat], result := (.list .nat), + body := (.«match» (.list .nat) (.call 2 [(.var 0), (.var 1)]) [(.arm .none [] (.build .nil (.list .nat) [])), (.arm .some [2] (.var 2))]) }, + { parameters := [0, 1], types := [(.list (.pair .nat (.list .nat))), .nat], result := (.option (.list .nat)), + body := (.«match» (.option (.list .nat)) (.var 0) [(.arm .nil [] (.build .none (.option (.list .nat)) [])), (.arm .cons [2, 3] (.«match» (.option (.list .nat)) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.build .none (.option (.list .nat)) [])), (.arm .eq [] (.build .some (.option (.list .nat)) [(.second (.var 2))])), (.arm .gt [] (.call 2 [(.var 3), (.var 1)]))]))]) }, + { parameters := [0, 1], types := [(.list (.pair .nat (.list .nat))), .nat], result := (.list .nat), + body := (.call 4 [(.var 0), (.prim .natAdd [(.prim .length [(.call 13 [(.var 0), (.build .nil (.list .nat) [])])]), (.value .nat (.nat 1))]), (.build .cons (.list .nat) [(.var 1), (.build .nil (.list .nat) [])]), (.build .cons (.list .nat) [(.var 1), (.build .nil (.list .nat) [])])]) }, + { parameters := [0, 1, 2, 3], types := [(.list (.pair .nat (.list .nat))), .nat, (.list .nat), (.list .nat)], result := (.list .nat), + body := (.«match» (.list .nat) (.var 1) [(.arm .zero [] (.var 3)), (.arm .succ [4] (.«let» 5 (.list .nat) (.call 5 [(.var 0), (.var 3), (.var 2), (.build .nil (.list .nat) [])]) (.«match» (.list .nat) (.var 5) [(.arm .nil [] (.var 3)), (.arm .cons [6, 7] (.call 4 [(.var 0), (.var 4), (.var 5), (.call 11 [(.var 3), (.var 5)])]))])))]) }, + { parameters := [0, 1, 2, 3], types := [(.list (.pair .nat (.list .nat))), (.list .nat), (.list .nat), (.list .nat)], result := (.list .nat), + body := (.«match» (.list .nat) (.var 2) [(.arm .nil [] (.var 3)), (.arm .cons [4, 5] (.call 5 [(.var 0), (.var 1), (.var 5), (.call 6 [(.var 1), (.call 7 [(.var 0), (.var 4)]), (.var 3)])]))]) }, + { parameters := [0, 1, 2], types := [(.list .nat), (.list .nat), (.list .nat)], result := (.list .nat), + body := (.«match» (.list .nat) (.var 1) [(.arm .nil [] (.var 2)), (.arm .cons [3, 4] (.call 6 [(.var 0), (.var 4), (.cond (.call 9 [(.var 0), (.var 3)]) (.var 2) (.cond (.call 9 [(.var 2), (.var 3)]) (.var 2) (.call 10 [(.var 2), (.var 3)])))]))]) }, + { parameters := [0, 1], types := [(.list (.pair .nat (.list .nat))), .nat], result := (.list .nat), + body := (.«match» (.list .nat) (.call 8 [(.var 0), (.var 1)]) [(.arm .none [] (.build .nil (.list .nat) [])), (.arm .some [2] (.var 2))]) }, + { parameters := [0, 1], types := [(.list (.pair .nat (.list .nat))), .nat], result := (.option (.list .nat)), + body := (.«match» (.option (.list .nat)) (.var 0) [(.arm .nil [] (.build .none (.option (.list .nat)) [])), (.arm .cons [2, 3] (.«match» (.option (.list .nat)) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.build .none (.option (.list .nat)) [])), (.arm .eq [] (.build .some (.option (.list .nat)) [(.second (.var 2))])), (.arm .gt [] (.call 8 [(.var 3), (.var 1)]))]))]) }, + { parameters := [0, 1], types := [(.list .nat), .nat], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .false .bool [])), (.arm .cons [2, 3] (.«match» .bool (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .false .bool [])), (.arm .eq [] (.build .true .bool [])), (.arm .gt [] (.call 9 [(.var 3), (.var 1)]))]))]) }, + { parameters := [0, 1], types := [(.list .nat), .nat], result := (.list .nat), + body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.build .cons (.list .nat) [(.var 1), (.build .nil (.list .nat) [])])), (.arm .cons [2, 3] (.«match» (.list .nat) (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .cons (.list .nat) [(.var 1), (.var 0)])), (.arm .eq [] (.var 0)), (.arm .gt [] (.build .cons (.list .nat) [(.var 2), (.call 10 [(.var 3), (.var 1)])]))]))]) }, + { parameters := [0, 1], types := [(.list .nat), (.list .nat)], result := (.list .nat), + body := (.«match» (.list .nat) (.var 1) [(.arm .nil [] (.var 0)), (.arm .cons [2, 3] (.call 11 [(.call 12 [(.var 0), (.var 2)]), (.var 3)]))]) }, + { parameters := [0, 1], types := [(.list .nat), .nat], result := (.list .nat), + body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.build .cons (.list .nat) [(.var 1), (.build .nil (.list .nat) [])])), (.arm .cons [2, 3] (.«match» (.list .nat) (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .cons (.list .nat) [(.var 1), (.var 0)])), (.arm .eq [] (.var 0)), (.arm .gt [] (.build .cons (.list .nat) [(.var 2), (.call 12 [(.var 3), (.var 1)])]))]))]) }, + { parameters := [0, 1], types := [(.list (.pair .nat (.list .nat))), (.list .nat)], result := (.list .nat), + body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.var 1)), (.arm .cons [2, 3] (.call 13 [(.var 3), (.call 14 [(.second (.var 2)), (.call 15 [(.var 1), (.first (.var 2))])])]))]) }, + { parameters := [0, 1], types := [(.list .nat), (.list .nat)], result := (.list .nat), + body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.var 1)), (.arm .cons [2, 3] (.call 14 [(.var 3), (.call 15 [(.var 1), (.var 2)])]))]) }, + { parameters := [0, 1], types := [(.list .nat), .nat], result := (.list .nat), + body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.build .cons (.list .nat) [(.var 1), (.build .nil (.list .nat) [])])), (.arm .cons [2, 3] (.«match» (.list .nat) (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .cons (.list .nat) [(.var 1), (.var 0)])), (.arm .eq [] (.var 0)), (.arm .gt [] (.build .cons (.list .nat) [(.var 2), (.call 15 [(.var 3), (.var 1)])]))]))]) }, + { parameters := [0], types := [(.list (.pair .nat (.list .nat)))], result := (.option (.list .nat)), + body := (.«let» 1 (.list .nat) (.call 21 [(.var 0), (.build .nil (.list .nat) [])]) (.call 17 [(.var 0), (.prim .natAdd [(.prim .length [(.var 1)]), (.value .nat (.nat 1))]), (.var 1), (.build .nil (.list .nat) [])])) }, + { parameters := [0, 1, 2, 3], types := [(.list (.pair .nat (.list .nat))), .nat, (.list .nat), (.list .nat)], result := (.option (.list .nat)), + body := (.«match» (.option (.list .nat)) (.var 1) [(.arm .zero [] (.«match» (.option (.list .nat)) (.var 2) [(.arm .nil [] (.build .some (.option (.list .nat)) [(.call 20 [(.var 3), (.build .nil (.list .nat) [])])])), (.arm .cons [4, 5] (.build .none (.option (.list .nat)) []))])), (.arm .succ [6] (.«match» (.option (.list .nat)) (.call 18 [(.var 0), (.var 2), (.var 2)]) [(.arm .nil [] (.«match» (.option (.list .nat)) (.var 2) [(.arm .nil [] (.build .some (.option (.list .nat)) [(.call 20 [(.var 3), (.build .nil (.list .nat) [])])])), (.arm .cons [7, 8] (.build .none (.option (.list .nat)) []))])), (.arm .cons [9, 10] (.call 17 [(.var 0), (.var 6), (.call 27 [(.var 2), (.var 9)]), (.build .cons (.list .nat) [(.var 9), (.var 3)])]))]))]) }, + { parameters := [0, 1, 2], types := [(.list (.pair .nat (.list .nat))), (.list .nat), (.list .nat)], result := (.list .nat), + body := (.«match» (.list .nat) (.var 2) [(.arm .nil [] (.build .nil (.list .nat) [])), (.arm .cons [3, 4] (.cond (.call 19 [(.var 0), (.var 3), (.var 1)]) (.build .cons (.list .nat) [(.var 3), (.call 18 [(.var 0), (.var 1), (.var 4)])]) (.call 18 [(.var 0), (.var 1), (.var 4)])))]) }, + { parameters := [0, 1, 2], types := [(.list (.pair .nat (.list .nat))), .nat, (.list .nat)], result := .bool, + body := (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.call 26 [(.call 24 [(.var 0), (.var 3)]), (.var 1)]) (.build .false .bool []) (.call 19 [(.var 0), (.var 1), (.var 4)])))]) }, + { parameters := [0, 1], types := [(.list .nat), (.list .nat)], result := (.list .nat), + body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.var 1)), (.arm .cons [2, 3] (.call 20 [(.var 3), (.build .cons (.list .nat) [(.var 2), (.var 1)])]))]) }, + { parameters := [0, 1], types := [(.list (.pair .nat (.list .nat))), (.list .nat)], result := (.list .nat), + body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.var 1)), (.arm .cons [2, 3] (.call 21 [(.var 3), (.call 22 [(.second (.var 2)), (.call 23 [(.var 1), (.first (.var 2))])])]))]) }, + { parameters := [0, 1], types := [(.list .nat), (.list .nat)], result := (.list .nat), + body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.var 1)), (.arm .cons [2, 3] (.call 22 [(.var 3), (.call 23 [(.var 1), (.var 2)])]))]) }, + { parameters := [0, 1], types := [(.list .nat), .nat], result := (.list .nat), + body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.build .cons (.list .nat) [(.var 1), (.build .nil (.list .nat) [])])), (.arm .cons [2, 3] (.«match» (.list .nat) (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .cons (.list .nat) [(.var 1), (.var 0)])), (.arm .eq [] (.var 0)), (.arm .gt [] (.build .cons (.list .nat) [(.var 2), (.call 23 [(.var 3), (.var 1)])]))]))]) }, + { parameters := [0, 1], types := [(.list (.pair .nat (.list .nat))), .nat], result := (.list .nat), + body := (.«match» (.list .nat) (.call 25 [(.var 0), (.var 1)]) [(.arm .none [] (.build .nil (.list .nat) [])), (.arm .some [2] (.var 2))]) }, + { parameters := [0, 1], types := [(.list (.pair .nat (.list .nat))), .nat], result := (.option (.list .nat)), + body := (.«match» (.option (.list .nat)) (.var 0) [(.arm .nil [] (.build .none (.option (.list .nat)) [])), (.arm .cons [2, 3] (.«match» (.option (.list .nat)) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.build .none (.option (.list .nat)) [])), (.arm .eq [] (.build .some (.option (.list .nat)) [(.second (.var 2))])), (.arm .gt [] (.call 25 [(.var 3), (.var 1)]))]))]) }, + { parameters := [0, 1], types := [(.list .nat), .nat], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .false .bool [])), (.arm .cons [2, 3] (.«match» .bool (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .false .bool [])), (.arm .eq [] (.build .true .bool [])), (.arm .gt [] (.call 26 [(.var 3), (.var 1)]))]))]) }, + { parameters := [0, 1], types := [(.list .nat), .nat], result := (.list .nat), + body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.build .nil (.list .nat) [])), (.arm .cons [2, 3] (.«match» (.list .nat) (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.var 0)), (.arm .eq [] (.var 3)), (.arm .gt [] (.build .cons (.list .nat) [(.var 2), (.call 27 [(.var 3), (.var 1)])]))]))]) }, + { parameters := [0], types := [(.list (.pair .nat (.list .nat)))], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 29 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 28 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, + { parameters := [0], types := [(.list .nat)], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.var 1), (.var 3)]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 29 [(.var 2)]) (.build .false .bool [])))]))]) }, + { parameters := [0, 1], types := [(.list (.pair .nat (.list .nat))), .nat], result := (.option (.pair (.list .nat) (.pair (.list .nat) (.option (.list .nat))))), + body := (.cond (.call 28 [(.var 0)]) (.build .some (.option (.pair (.list .nat) (.pair (.list .nat) (.option (.list .nat))))) [(.call 0 [(.var 0), (.var 1)])]) (.build .none (.option (.pair (.list .nat) (.pair (.list .nat) (.option (.list .nat))))) [])) }] } + +def __fits_0 (g : (List (Prod Nat (List Nat)))) (start : Nat) : Bool := + ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((((Bool.true && (Bool.true && Bool.true)) && (_root_.LexLeanPreservation.graphFits _root_.LexLeanCollections.insertElement (g))) && (((Bool.true && Bool.true) && (_root_.LexLeanPreservation.graphFits _root_.LexLeanCollections.insertElement (g))) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) + +theorem __rel_0 (g : (List (Prod Nat (List Nat)))) (start : Nat) : _root_.LexLeanPreservation.FunRel __prog 0 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat))) g), (_root_.LexLeanTarget.TargetSyntax.Value.nat start)] (_root_.LexLeanPreservation.Rel (__fits_0 g start) ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)))) (Coverage.Colls.graphs g start))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.tpl_graphSuccessors (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat))) (fun _ => rfl) _root_.LexLeanCollections.lookupEntry (fun _ => rfl) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (p := __prog) (fi := 1) (tk := .nat) rfl rfl (g) (start))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.tpl_graphReachable (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat))) (fun _ => rfl) (⟨(fun _ => rfl), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.insertElement, __h]), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.insertElement, __h]), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.insertElement, __h]), (fun _ => rfl), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.removeElement, __h]), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.removeElement, __h]), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.removeElement, __h]), (fun _ => rfl), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.containsElement, __h]), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.containsElement, __h]), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.containsElement, __h])⟩ : _root_.LexLeanPreservation.SetOps (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) _root_.LexLeanCollections.insertElement _root_.LexLeanCollections.removeElement _root_.LexLeanCollections.containsElement) (⟨(fun _ => rfl), (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]), (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]), (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h])⟩ : _root_.LexLeanPreservation.LookOps (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (_root_.LexLeanCollections.lookupEntry : Nat -> List (Prod Nat (List Nat)) -> Option (List Nat))) (g) (_root_.LexLeanCollections.graphSuccessors (g)) (fun _ => rfl) (_root_.LexLeanCollections.reachableFrom (g)) (fun _ _ => rfl) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.reachableFrom, __h]) (fun _ _ _ _ _ __h => by simp only [_root_.LexLeanCollections.reachableFrom, __h]) (p := __prog) (fi := 3) (tk := .nat) rfl rfl rfl rfl rfl rfl rfl rfl rfl rfl rfl rfl rfl (start))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.tpl_graphTopological (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat))) (fun _ => rfl) (_root_.LexLeanPreservation.optEnc (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) (⟨(fun _ => rfl), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.insertElement, __h]), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.insertElement, __h]), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.insertElement, __h]), (fun _ => rfl), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.removeElement, __h]), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.removeElement, __h]), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.removeElement, __h]), (fun _ => rfl), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.containsElement, __h]), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.containsElement, __h]), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.containsElement, __h])⟩ : _root_.LexLeanPreservation.SetOps (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) _root_.LexLeanCollections.insertElement _root_.LexLeanCollections.removeElement _root_.LexLeanCollections.containsElement) (⟨(fun _ => rfl), (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]), (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]), (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h])⟩ : _root_.LexLeanPreservation.LookOps (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (_root_.LexLeanCollections.lookupEntry : Nat -> List (Prod Nat (List Nat)) -> Option (List Nat))) (g) (_root_.LexLeanCollections.graphSuccessors (g)) (fun _ => rfl) (⟨(fun _ => rfl), (fun _ _ _ => rfl), (fun _ _ => rfl), (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.topological, __h] <;> rfl), (fun _ _ _ _ _ __h => by simp only [_root_.LexLeanCollections.topological, __h])⟩ : _root_.LexLeanPreservation.TopoOps (_root_.LexLeanCollections.graphSuccessors (g)) _root_.LexLeanCollections.containsElement _root_.LexLeanCollections.removeElement (_root_.LexLeanCollections.topological (g))) (p := __prog) (fi := 16) (tk := .nat) rfl rfl rfl rfl rfl rfl rfl rfl rfl rfl rfl rfl)) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) + +def denote (g : (List (Prod Nat (List Nat)))) (start : Nat) : _root_.LexLeanPreservation.Obs := + _root_.cond (__fits_0 g start) (_root_.LexLeanPreservation.Obs.value (((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)))) (Coverage.Colls.graphs g start)))) _root_.LexLeanPreservation.Obs.overflow + +theorem root (g : (List (Prod Nat (List Nat)))) (start : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat))) g), (_root_.LexLeanTarget.TargetSyntax.Value.nat start)] (_root_.LexLeanPreservation.Rel (__fits_0 g start) ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)))) (Coverage.Colls.graphs g start))) := + _root_.LexLeanPreservation.run_of_funRel (__rel_0 g start) + +def __valid_29 : (List Nat) -> Bool := + _root_.LexLeanPreservation.ascSet (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) + +def __inv_29 : (List Nat) -> Prop := + _root_.LexLeanPreservation.InvSet (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) + +theorem __viff_29 : ∀ (__v : (List Nat)), __valid_29 __v = Bool.true ↔ __inv_29 __v := + _root_.LexLeanPreservation.ascSet_inv (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) + +theorem __vrel_29 : ∀ (__v : (List Nat)), _root_.LexLeanPreservation.FunRel __prog 29 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_29 __v))) := + _root_.LexLeanPreservation.tpl_validSet (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) rfl + +def __valid_28 : (List (Prod Nat (List Nat))) -> Bool := + _root_.LexLeanPreservation.ascMap (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) __valid_29 + +def __inv_28 : (List (Prod Nat (List Nat))) -> Prop := + _root_.LexLeanPreservation.InvMap (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) __inv_29 + +theorem __viff_28 : ∀ (__v : (List (Prod Nat (List Nat)))), __valid_28 __v = Bool.true ↔ __inv_28 __v := + _root_.LexLeanPreservation.ascMap_inv (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) __valid_29 __inv_29 __viff_29 + +theorem __vrel_28 : ∀ (__v : (List (Prod Nat (List Nat)))), _root_.LexLeanPreservation.FunRel __prog 28 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat))) __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_28 __v))) := + _root_.LexLeanPreservation.tpl_validMap (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) __valid_29 (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat))) (fun _ => rfl) __vrel_29 rfl + +def entryFits (g : (List (Prod Nat (List Nat)))) (start : Nat) : Bool := + (if __valid_28 g then __fits_0 g start else Bool.true) + +def entryValue (g : (List (Prod Nat (List Nat)))) (start : Nat) : _root_.LexLeanTarget.TargetSyntax.Value := + (if __valid_28 g then (_root_.LexLeanTarget.TargetSyntax.Value.some ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)))) (Coverage.Colls.graphs g start))) else _root_.LexLeanTarget.TargetSyntax.Value.none) + +/-- The entry's observation. -/ +def denoteEntry (g : (List (Prod Nat (List Nat)))) (start : Nat) : _root_.LexLeanPreservation.Obs := + _root_.cond (_root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.entryFits g start) (_root_.LexLeanPreservation.Obs.value (_root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.entryValue g start)) _root_.LexLeanPreservation.Obs.overflow + +/-- §17.12's invariants of the validated parameters. -/ +def accepts (g : (List (Prod Nat (List Nat)))) (start : Nat) : Prop := + (__inv_28 g ∧ _root_.True) + +theorem entry (g : (List (Prod Nat (List Nat)))) (start : Nat) : _root_.LexLeanPreservation.RunConv __prog 30 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat))) g), (_root_.LexLeanTarget.TargetSyntax.Value.nat start)] (_root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.denoteEntry g start) := + _root_.LexLeanPreservation.run_of_funRel (_root_.LexLeanPreservation.FunRel.fits_eq (_root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun __c => if __c then __fits_0 g start else Bool.true) (fun __c => if __c then (_root_.LexLeanTarget.TargetSyntax.Value.some ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)))) (Coverage.Colls.graphs g start))) else _root_.LexLeanTarget.TargetSyntax.Value.none) (__valid_28 g) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_28 g)) (fun _ => _root_.LexLeanPreservation.Conv.fits_eq (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_0 g start)) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some) (by simp)) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (by simp [_root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.entryFits])) + +theorem entry_accepts (g : (List (Prod Nat (List Nat)))) (start : Nat) (__h : _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.accepts g start) : _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.denoteEntry g start = _root_.LexLeanPreservation.someObs (_root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.denote g start) := by + unfold _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.accepts at __h + unfold _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.denoteEntry _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.entryFits _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.entryValue _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.denote + simp only [_root_.if_true, (__viff_28 g).mpr __h.1] + cases __fits_0 g start <;> rfl + +theorem entry_refuses (g : (List (Prod Nat (List Nat)))) (start : Nat) (__h : ¬ _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.accepts g start) : _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.denoteEntry g start = _root_.LexLeanPreservation.Obs.value _root_.LexLeanTarget.TargetSyntax.Value.none := by + unfold _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.accepts at __h + unfold _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.denoteEntry _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.entryFits _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.entryValue + cases __c0 : __valid_28 g + · simp + · exact _root_.absurd ⟨(__viff_28 g).mp __c0, _root_.trivial⟩ __h + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6 diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R6/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R6/Compose/RustStd.lex.tex new file mode 100644 index 000000000..2513a91a2 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R6/Compose/RustStd.lex.tex @@ -0,0 +1,676 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.Compose.RustStd.root : @1387 := @1388 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.RustStd.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.RustStd.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.RustStd.flags +@3 := Nat +@4 := List.{0} +@5 := @4 @3 +@6 := Prod.{0, 0} +@7 := @6 @3 +@8 := @7 @5 +@9 := @4 @8 +@10 := #2 +@11 := LexLeanTarget.TargetSyntax.Value.nat +@12 := LexLeanPreservation.encList +@13 := @12 @3 +@14 := @13 @11 +@15 := LexLeanPreservation.encPair +@16 := @15 @3 +@17 := @16 @5 +@18 := @17 @11 +@19 := @18 @14 +@20 := @12 @8 +@21 := @20 @19 +@22 := @21 @10 +@23 := LexLeanTarget.TargetSyntax.Ty.nat +@24 := LexLeanTarget.TargetSyntax.Ty.list +@25 := @24 @23 +@26 := LexLeanTarget.TargetSyntax.Ty.pair +@27 := @26 @23 +@28 := @27 @25 +@29 := @24 @28 +@30 := #0 +@31 := LexLeanTarget.TargetSyntax.Program +@32 := LexLeanPreservation.Rust.RCrate +@33 := LexLeanPreservation.Rust.Flags +@34 := LexLeanPreservation.Rust.WT +@35 := #3 +@37 := @34 @35 @10 +@38 := #1 +@39 := @37 @38 +@40 := @11 @30 +@46 := {p : @31} -> {c : @32} -> {A : @33} -> (n : @3) -> @39 @40 @23 +@48 := LexLeanPreservation.Rust.wt_nat @0 +@49 := @34 @0 +@56 := {c : @32} -> {A : @33} -> (n : @3) -> @49 @10 @38 @40 @23 +@57 := @48 @1 +@58 := @49 @1 +@63 := {A : @33} -> (n : @3) -> @58 @38 @40 @23 +@64 := @57 @2 +@65 := @58 @2 +@66 := @65 @40 +@67 := @66 @23 +@68 := (n : @3) -> @67 +@70 := fun (__x : @3) => @64 @30 +@71 := Sort 1 +@72 := LexLeanTarget.TargetSyntax.Value +@73 := (a._@._internal._hyg.#0 : @30) -> @72 +@74 := LexLeanTarget.TargetSyntax.Ty +@75 := #6 +@76 := @34 @75 +@77 := #5 +@78 := @76 @77 +@79 := #4 +@80 := @78 @79 +@81 := @10 @30 +@84 := (x : @10) -> @80 @81 @38 +@85 := @4 @35 +@86 := #7 +@89 := @34 @86 @75 @77 +@92 := @12 @79 @35 @30 +@93 := @89 @92 +@94 := @24 @10 +@103 := {p : @31} -> + {c : @32} -> + {A : @33} -> {α : @71} -> {e : @73} -> {t : @74} -> (h : @84) -> (xs : @85) -> @93 @94 +@105 := LexLeanPreservation.Rust.wt_encList @0 +@107 := @49 @77 @79 +@121 := {c : @32} -> + {A : @33} -> + {α : @71} -> + {e : @73} -> {t : @74} -> (h : (x : @10) -> @107 @81 @38) -> (xs : @85) -> @49 @75 @77 @92 @94 +@122 := @105 @1 +@123 := @58 @79 +@135 := {A : @33} -> + {α : @71} -> + {e : @73} -> {t : @74} -> (h : (x : @10) -> @123 @81 @38) -> (xs : @85) -> @58 @77 @92 @94 +@136 := @122 @2 +@138 := @65 @81 @38 +@146 := {α : @71} -> {e : @73} -> {t : @74} -> (h : (x : @10) -> @138) -> (xs : @85) -> @65 @92 @94 +@147 := @136 @3 +@148 := (a._@._internal._hyg.#0 : @3) -> @72 +@157 := {e : @148} -> {t : @74} -> (h : (x : @3) -> @138) -> (xs : @5) -> @65 (@13 @35 @30) @94 +@158 := @147 @11 +@160 := (x : @3) -> @66 @38 +@162 := @65 (@14 @30) +@166 := {t : @74} -> (h : @160) -> (xs : @5) -> @162 @94 +@167 := @158 @23 +@168 := (x : @3) -> @67 +@169 := @162 @25 +@171 := (h : @168) -> (xs : @5) -> @169 +@174 := fun (__x : @5) => @167 @70 @30 +@175 := (a._@._internal._hyg.#0 : @38) -> @72 +@176 := #9 +@177 := @34 @176 +@178 := #8 +@180 := @177 @178 @86 +@181 := @79 @30 +@184 := (x : @77) -> @180 @181 @10 +@185 := #10 +@191 := (x : @77) -> @34 @185 @176 @178 @181 @10 +@193 := @6 @86 @75 +@194 := #11 +@197 := @34 @194 @185 @176 +@202 := @15 @178 @86 @75 @77 @30 +@203 := @197 @202 +@205 := @26 @79 @35 +@218 := {p : @31} -> + {c : @32} -> + {A : @33} -> + {α : @71} -> + {β : @71} -> + {ea : @175} -> + {eb : @175} -> {s : @74} -> {t : @74} -> (ha : @184) -> (hb : @191) -> (x : @193) -> @203 @205 +@220 := LexLeanPreservation.Rust.wt_encPair @0 +@245 := {c : @32} -> + {A : @33} -> + {α : @71} -> + {β : @71} -> + {ea : @175} -> + {eb : @175} -> + {s : @74} -> + {t : @74} -> + (ha : (x : @77) -> @49 @178 @86 @181 @10) -> + (hb : (x : @77) -> @49 @176 @178 @181 @10) -> (x : @193) -> @49 @185 @176 @202 @205 +@246 := @220 @1 +@267 := {A : @33} -> + {α : @71} -> + {β : @71} -> + {ea : @175} -> + {eb : @175} -> + {s : @74} -> + {t : @74} -> + (ha : (x : @77) -> @58 @86 @181 @10) -> + (hb : (x : @77) -> @58 @178 @181 @10) -> (x : @193) -> @58 @176 @202 @205 +@268 := @246 @2 +@270 := @65 @181 @10 +@271 := (x : @77) -> @270 +@282 := {α : @71} -> + {β : @71} -> + {ea : @175} -> + {eb : @175} -> {s : @74} -> {t : @74} -> (ha : @271) -> (hb : @271) -> (x : @193) -> @65 @202 @205 +@283 := @268 @3 +@284 := (x : @3) -> @270 +@299 := {β : @71} -> + {ea : @148} -> + {eb : @175} -> + {s : @74} -> + {t : @74} -> (ha : @284) -> (hb : @271) -> (x : @7 @75) -> @65 (@16 @86 @75 @77 @30) @205 +@300 := @283 @5 +@301 := (a._@._internal._hyg.#0 : @5) -> @72 +@302 := (x : @5) -> @270 +@314 := {ea : @148} -> + {eb : @301} -> + {s : @74} -> {t : @74} -> (ha : @284) -> (hb : @302) -> (x : @8) -> @65 (@17 @75 @77 @30) @205 +@315 := @300 @11 +@317 := (x : @3) -> @66 @10 +@327 := {eb : @301} -> + {s : @74} -> {t : @74} -> (ha : @317) -> (hb : @302) -> (x : @8) -> @65 (@18 @77 @30) @205 +@328 := @315 @14 +@330 := (x : @5) -> @162 @10 +@332 := @65 (@19 @30) +@338 := {s : @74} -> {t : @74} -> (ha : @317) -> (hb : @330) -> (x : @8) -> @332 @205 +@339 := @328 @23 +@345 := {t : @74} -> (ha : @168) -> (hb : @330) -> (x : @8) -> @332 (@27 @35) +@346 := @339 @25 +@347 := (x : @5) -> @169 +@349 := (x : @8) -> @332 @28 +@351 := (ha : @168) -> (hb : @347) -> @349 +@355 := fun (__x : @8) => @346 @70 @174 @30 +@356 := @136 @8 +@366 := {e : (a._@._internal._hyg.#0 : @8) -> @72} -> + {t : @74} -> (h : (x : @8) -> @138) -> (xs : @9) -> @65 (@20 @35 @30) @94 +@367 := @356 @19 +@369 := (x : @8) -> @332 @38 +@371 := @65 (@21 @30) +@375 := {t : @74} -> (h : @369) -> (xs : @9) -> @371 @94 +@376 := @367 @28 +@379 := (h : @349) -> (xs : @9) -> @371 @29 +@381 := @376 @355 @10 +@383 := @65 @22 @29 +@384 := @11 @38 +@385 := @64 @38 +@387 := @65 @384 @23 +@388 := List.nil.{0} +@389 := List.cons.{0} +@390 := @388 @72 +@391 := @389 @72 +@393 := @391 @384 @390 +@395 := @391 @22 @393 +@396 := @7 @72 +@397 := 1 +@400 := Prod.mk.{0, 0} @3 @72 +@401 := @400 @397 +@402 := @401 @384 +@404 := @400 0 +@405 := @404 @22 +@406 := @388 @396 +@407 := @389 @396 +@409 := @407 @405 @406 +@411 := @407 @402 @409 +@412 := Bool.true +@413 := LexLeanTarget.TargetSyntax.Function +@414 := LexLeanTarget.TargetSyntax.Program.functions +@415 := @414 @0 +@416 := 30 +@417 := @388 @3 +@418 := @388 @74 +@419 := LexLeanTarget.TargetSyntax.Ty.unit +@420 := LexLeanTarget.TargetSyntax.Value.unit +@423 := LexLeanTarget.TargetSyntax.Expr.value @419 @420 +@428 := LexLeanTarget.TargetSyntax.Function.mk @417 @418 @419 @423 +@433 := List.getD.{0} @413 @415 @416 @428 +@437 := fun (__e_n : @3) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.RustStd.root @30 @416 +@438 := LexLeanPreservation.Rust.WTL +@446 := {p : @31} -> {c : @32} -> {A : @33} -> @438 @10 @38 @30 @390 @418 +@448 := LexLeanPreservation.Rust.wtl_nil @0 +@449 := @438 @0 +@455 := {c : @32} -> {A : @33} -> @449 @38 @30 @390 @418 +@456 := @448 @1 +@457 := @449 @1 +@461 := {A : @33} -> @457 @30 @390 @418 +@462 := @456 @2 +@463 := @457 @2 +@464 := @463 @390 +@465 := @464 @418 +@466 := @4 @72 +@467 := @4 @74 +@469 := @80 @35 @10 +@474 := @438 @86 @75 @77 @10 @38 +@477 := @438 @178 @86 @75 +@479 := @391 @77 @35 +@480 := @477 @479 +@481 := @389 @74 +@483 := @481 @79 @10 +@493 := {p : @31} -> + {c : @32} -> + {A : @33} -> + {v : @72} -> {t : @74} -> {vs : @466} -> {ts : @467} -> (h : @469) -> (hs : @474) -> @480 @483 +@495 := LexLeanPreservation.Rust.wtl_cons @0 +@513 := {c : @32} -> + {A : @33} -> + {v : @72} -> + {t : @74} -> + {vs : @466} -> + {ts : @467} -> (h : @107 @35 @10) -> (hs : @449 @75 @77 @10 @38) -> @449 @86 @75 @479 @483 +@514 := @495 @1 +@529 := {A : @33} -> + {v : @72} -> + {t : @74} -> + {vs : @466} -> {ts : @467} -> (h : @123 @35 @10) -> (hs : @457 @77 @10 @38) -> @457 @75 @479 @483 +@530 := @514 @2 +@532 := @65 @35 @10 +@534 := @463 @10 @38 +@542 := {v : @72} -> + {t : @74} -> {vs : @466} -> {ts : @467} -> (h : @532) -> (hs : @534) -> @463 @479 @483 +@543 := @530 @384 +@544 := @11 @79 +@546 := @65 @544 @10 +@547 := @11 @75 +@548 := @391 @547 +@556 := {t : @74} -> {vs : @466} -> {ts : @467} -> (h : @546) -> (hs : @534) -> @463 (@548 @35) @483 +@557 := @543 @23 +@558 := @11 @35 +@560 := @65 @558 @23 +@561 := @11 @77 +@562 := @391 @561 +@564 := @463 (@562 @35) +@565 := @481 @23 +@566 := @565 @10 +@571 := {vs : @466} -> {ts : @467} -> (h : @560) -> (hs : @534) -> @564 @566 +@572 := @557 @390 +@573 := @11 @10 +@575 := @65 @573 @23 +@576 := @464 @38 +@578 := @391 @544 @390 +@583 := {ts : @467} -> (h : @575) -> (hs : @576) -> @463 @578 @566 +@584 := @572 @418 +@586 := @391 @558 @390 +@587 := @463 @586 +@588 := @565 @418 +@591 := (h : @387) -> (hs : @465) -> @587 @588 +@592 := @584 @385 +@594 := @391 @573 @390 +@596 := @463 @594 @588 +@597 := (hs : @465) -> @596 +@598 := @592 @462 +@600 := @463 @393 @588 +@601 := @530 @22 +@602 := @21 @77 +@604 := @65 @602 @10 +@605 := @21 @86 +@606 := @391 @605 +@614 := {t : @74} -> {vs : @466} -> {ts : @467} -> (h : @604) -> (hs : @534) -> @463 (@606 @35) @483 +@615 := @601 @29 +@616 := @21 @79 +@618 := @65 @616 @29 +@619 := @21 @75 +@620 := @391 @619 +@622 := @463 (@620 @35) +@623 := @481 @29 +@624 := @623 @10 +@629 := {vs : @466} -> {ts : @467} -> (h : @618) -> (hs : @534) -> @622 @624 +@630 := @615 @393 +@631 := @21 @35 +@633 := @65 @631 @29 +@634 := @587 @38 +@636 := @391 @602 @578 +@637 := @463 @636 +@641 := {ts : @467} -> (h : @633) -> (hs : @634) -> @637 @624 +@642 := @630 @588 +@644 := @391 @616 @586 +@645 := @463 @644 +@646 := @623 @588 +@649 := (h : @383) -> (hs : @596) -> @645 @646 +@650 := @642 @381 +@652 := @391 @631 @594 +@653 := @463 @652 +@655 := (hs : @600) -> @653 @646 +@656 := @650 @598 +@657 := @463 @395 +@658 := @657 @646 +@659 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.denoteEntry +@661 := @659 @10 @38 +@662 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.entryFits +@664 := @662 @10 @38 +@667 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.entryValue @10 @38 +@670 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.entry @10 @38 +@671 := Bool +@672 := Ne.{1} +@673 := LexLeanPreservation.Obs +@674 := @672 @673 +@675 := LexLeanPreservation.Rel +@678 := @674 (@675 @38 @30) +@679 := LexLeanPreservation.Obs.stuck +@682 := (f : @671) -> (v : @72) -> @678 @679 +@684 := LexLeanPreservation.Rust.rel_ne_stuck @664 +@691 := (v : @72) -> @674 (@675 (@662 @35 @10) @30) @679 +@692 := @684 @667 +@696 := @674 (@675 @664 @667) @679 +@697 := @4 @396 +@698 := LexLeanPreservation.Rust.FunSem +@704 := (n : @3) -> @698 @176 @178 @86 @30 @75 +@705 := Eq.{1} +@706 := Option.{0} +@707 := @706 @413 +@708 := @705 @707 +@715 := LexLeanRuntime.index (@4 @413) @413 (LexLeanRuntime.instIndexableList @413) +@719 := @708 (@715 (@414 @176) @75) +@720 := Option.some.{0} +@721 := @720 @413 +@722 := @721 @77 +@723 := @719 @722 +@727 := @438 @185 @176 @178 @77 +@728 := LexLeanTarget.TargetSyntax.Function.types +@729 := @728 @75 +@730 := @727 @729 +@731 := @706 @697 +@732 := @705 @731 +@733 := LexLeanTarget.TargetSemantics.bindAll +@734 := LexLeanTarget.TargetSyntax.Function.parameters +@739 := @732 (@733 (@734 @86) @75 @406) +@740 := @720 @697 +@741 := @740 @77 +@742 := @739 @741 +@743 := @706 @671 +@744 := @705 @743 +@745 := LexLeanPreservation.Rust.fnFallible +@748 := @744 (@745 @194 @176) +@749 := @720 @671 +@750 := @749 @77 +@751 := @748 @750 +@752 := LexLeanPreservation.RunConv +@753 := #13 +@757 := @752 @753 @185 @178 @77 +@759 := @674 @75 @679 +@760 := Exists.{1} +@761 := LexLeanPreservation.Rust.ROut +@762 := @760 @761 +@763 := And +@764 := LexLeanPreservation.Rust.RealizesFn +@768 := @763 (@764 @176 @178 @30) +@769 := LexLeanPreservation.Rust.RCI +@771 := @769 #15 +@772 := LexLeanPreservation.Rust.fnIdent +@773 := @772 @753 +@780 := (hne : @759) -> @762 (fun (ro : @761) => @768 (@771 @773 @194 @30)) +@795 := {p : @31} -> + {c : @32} -> + {A : @33} -> + {f : @3} -> + {fn : @413} -> + {args : @466} -> + {env : @697} -> + {F : @671} -> + {o : @673} -> + (hB : @704) -> + (hfn : @723) -> (hwt : @730) -> (hbind : @742) -> (hF : @751) -> (hA : @757) -> @780 +@797 := LexLeanPreservation.Rust.compose @0 +@798 := @698 @0 +@803 := (n : @3) -> @798 @178 @86 @30 @75 +@804 := @715 @415 +@807 := @708 (@804 @75) @722 +@811 := @449 @176 @178 @77 @729 +@812 := @752 @0 +@815 := @812 @185 @178 @77 +@829 := {c : @32} -> + {A : @33} -> + {f : @3} -> + {fn : @413} -> + {args : @466} -> + {env : @697} -> + {F : @671} -> + {o : @673} -> + (hB : @803) -> + (hfn : @807) -> (hwt : @811) -> (hbind : @742) -> (hF : @751) -> (hA : @815) -> @780 +@830 := @797 @1 +@831 := @798 @1 +@835 := (n : @3) -> @831 @86 @30 @75 +@838 := @457 @178 @77 @729 +@839 := @745 @1 +@842 := @744 (@839 @176) @750 +@843 := @769 @1 +@853 := (hbind : @742) -> + (hF : @842) -> (hA : @815) -> (hne : @759) -> @762 (fun (ro : @761) => @768 (@843 @773 @194 @30)) +@863 := {A : @33} -> + {f : @3} -> + {fn : @413} -> + {args : @466} -> + {env : @697} -> {F : @671} -> {o : @673} -> (hB : @835) -> (hfn : @807) -> (hwt : @838) -> @853 +@864 := @830 @2 +@866 := @831 @2 @30 +@868 := (n : @3) -> @866 @75 +@869 := @463 @77 +@870 := @869 @729 +@879 := {f : @3} -> + {fn : @413} -> + {args : @466} -> + {env : @697} -> {F : @671} -> {o : @673} -> (hB : @868) -> (hfn : @807) -> (hwt : @870) -> @853 +@880 := @864 @416 +@882 := (n : @3) -> @866 @416 +@883 := @804 @416 +@884 := @708 @883 +@885 := @884 @722 +@886 := @839 @416 +@887 := @744 @886 +@888 := @887 @750 +@889 := @812 @416 +@891 := @889 @178 @77 +@893 := @843 (@772 @416) +@901 := (hF : @888) -> (hA : @891) -> (hne : @759) -> @762 (fun (ro : @761) => @768 (@893 @194 @30)) +@910 := {fn : @413} -> + {args : @466} -> + {env : @697} -> + {F : @671} -> {o : @673} -> (hB : @882) -> (hfn : @885) -> (hwt : @870) -> (hbind : @742) -> @901 +@911 := @880 @433 +@913 := @884 (@721 @433) +@914 := @728 @433 +@915 := @869 @914 +@917 := @733 (@734 @433) +@929 := {args : @466} -> + {env : @697} -> + {F : @671} -> + {o : @673} -> + (hB : @882) -> (hfn : @913) -> (hwt : @915) -> (hbind : @732 (@917 @75 @406) @741) -> @901 +@930 := @911 @395 +@932 := @606 (@548 @390) +@934 := @463 @932 @914 +@940 := @391 (@21 @178) (@391 (@11 @86) @390) +@944 := @732 (@917 @940 @406) @741 +@950 := @391 (@21 @185) (@391 (@11 @176) @390) +@952 := @889 @950 @77 +@954 := @391 (@21 @753) +@955 := #12 +@974 := {env : @697} -> + {F : @671} -> + {o : @673} -> + (hB : @882) -> + (hfn : @913) -> + (hwt : @934) -> + (hbind : @944) -> + (hF : @888) -> + (hA : @952) -> + (hne : @759) -> @762 (fun (ro : @761) => @768 (@893 (@954 (@391 (@11 @955) @390)) @30)) +@975 := @930 @411 +@977 := @620 (@562 @390) +@979 := @463 @977 @914 +@990 := @732 (@917 @932 @406) (@740 (@407 (@401 @547) (@407 (@404 @605) @406))) +@996 := @391 (@21 @176) (@391 (@11 @178) @390) +@1018 := {F : @671} -> + {o : @673} -> + (hB : @882) -> + (hfn : @913) -> + (hwt : @979) -> + (hbind : @990) -> + (hF : @888) -> + (hA : @889 @996 @77) -> + (hne : @759) -> @762 (fun (ro : @761) => @768 (@893 (@391 (@21 @955) (@391 (@11 @194) @390)) @30)) +@1019 := @975 @412 +@1020 := @637 @914 +@1031 := @732 (@917 @977 @406) (@740 (@407 (@401 @561) (@407 (@404 @619) @406))) +@1033 := @887 (@749 @412) +@1035 := @889 @940 @77 +@1036 := @764 @412 +@1058 := {o : @673} -> + (hB : @882) -> + (hfn : @913) -> + (hwt : @1020) -> + (hbind : @1031) -> + (hF : @1033) -> + (hA : @1035) -> + (hne : @759) -> + @762 + (fun (ro : @761) => @763 (@1036 @178 @30) (@893 (@391 (@21 @194) (@391 (@11 @185) @390)) @30)) +@1059 := @1019 @661 +@1060 := @645 @914 +@1071 := @732 (@917 @636 @406) (@740 (@407 (@401 @544) (@407 (@404 @602) @406))) +@1072 := @889 @932 +@1074 := @659 @86 @75 +@1075 := @1072 @1074 +@1077 := @659 @178 @86 +@1096 := (hB : @882) -> + (hfn : @913) -> + (hwt : @1060) -> + (hbind : @1071) -> + (hF : @1033) -> + (hA : @1075) -> + (hne : @674 @1077 @679) -> + @762 (fun (ro : @761) => @763 (@1036 (@659 @185 @176) @30) (@893 @950 @30)) +@1097 := @1059 @437 +@1098 := @653 @914 +@1109 := @732 (@917 @644 @406) (@740 (@407 (@401 @558) (@407 (@404 @616) @406))) +@1110 := @889 @977 +@1112 := @659 @75 @77 +@1131 := (hfn : @913) -> + (hwt : @1098) -> + (hbind : @1109) -> + (hF : @1033) -> + (hA : @1110 @1112) -> + (hne : @674 @1074 @679) -> + @762 (fun (ro : @761) => @763 (@1036 (@659 @176 @178) @30) (@893 @996 @30)) +@1132 := Eq.refl.{1} +@1135 := @1097 (@1132 @707 @883) +@1136 := @657 @914 +@1147 := @732 (@917 @652 @406) (@740 (@407 (@401 @573) (@407 (@404 @631) @406))) +@1148 := @889 @636 +@1150 := @659 @77 @79 +@1166 := (hwt : @1136) -> + (hbind : @1147) -> + (hF : @1033) -> + (hA : @1148 @1150) -> + (hne : @674 @1112 @679) -> @762 (fun (ro : @761) => @763 (@1036 @1077 @30) (@893 @940 @30)) +@1167 := @1135 @656 +@1169 := @917 @395 @406 +@1172 := @732 @1169 (@740 @411) +@1173 := @889 @644 +@1175 := @659 @79 @35 +@1190 := (hbind : @1172) -> + (hF : @1033) -> + (hA : @1173 @1175) -> + (hne : @674 @1150 @679) -> @762 (fun (ro : @761) => @763 (@1036 @1074 @30) (@893 @932 @30)) +@1193 := @1167 (@1132 @731 @1169) +@1194 := @889 @652 +@1196 := @659 @35 @10 +@1210 := (hF : @1033) -> + (hA : @1194 @1196) -> + (hne : @674 @1175 @679) -> @762 (fun (ro : @761) => @763 (@1036 @1112 @30) (@893 @977 @30)) +@1213 := @1193 (@1132 @743 @886) +@1215 := @889 @395 @661 +@1217 := @674 @1196 @679 +@1218 := @1036 @1150 +@1220 := @763 (@1218 @30) +@1221 := @893 @636 +@1222 := @1221 @30 +@1227 := (hA : @1215) -> (hne : @1217) -> @762 (fun (ro : @761) => @1220 @1222) +@1228 := @1213 @670 +@1230 := @674 @661 @679 +@1231 := @1036 @1175 +@1233 := @763 (@1231 @30) +@1234 := @893 @644 +@1239 := (hne : @1230) -> @762 (fun (ro : @761) => @1233 (@1234 @30)) +@1240 := @1228 @692 +@1243 := @763 (@1036 @1196 @30) +@1245 := @893 @652 @30 +@1246 := @1243 @1245 +@1248 := @762 (fun (ro : @761) => @1246) +@1249 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.accepts +@1251 := @1249 @10 @38 +@1252 := LexLeanPreservation.someObs +@1253 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.denote +@1256 := @1252 (@1253 @10 @38) +@1259 := LexLeanPreservation.Obs.value LexLeanTarget.TargetSyntax.Value.none +@1260 := Not +@1261 := @1260 @1251 +@1263 := @1249 @35 @10 +@1266 := @1252 (@1253 @35 @10) +@1267 := @1260 @1263 +@1273 := @1263 -> @1036 (@1252 (@1253 @79 @35)) @38 +@1274 := @1036 @1259 +@1275 := @1274 @38 +@1276 := @1267 -> @1275 +@1278 := @763 @1273 @1276 +@1282 := @762 (fun (__e_ro : @761) => @763 @1245 @1278) +@1283 := fun (__e_ro : @761) => @1246 +@1284 := @1231 @38 +@1285 := @1234 @38 +@1286 := And.left +@1287 := And.right +@1290 := @1286 @1284 @1285 @30 +@1293 := @1287 @1284 @1285 @30 +@1294 := @1036 @30 +@1296 := fun (__e_o : @673) => @1294 @10 +@1297 := Eq.subst.{1} +@1299 := @1249 @79 @35 +@1300 := @1260 @1299 +@1304 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.entry_accepts @77 @79 @30 +@1307 := @1252 (@1253 @77 @79) +@1312 := @1286 (@1218 @10) (@1221 @10) @38 +@1314 := fun (__e_o : @673) => @1294 @35 +@1317 := @1297 @673 @1314 @1150 +@1321 := fun (__e_h : @1299) => @1317 @1307 @1304 @1312 +@1325 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.entry_refuses @77 @79 @30 +@1329 := fun (__e_h : @1300) => @1317 @1259 @1325 @1312 +@1330 := And.intro +@1333 := @1299 -> @1036 @1307 @10 +@1335 := @1300 -> @1274 @10 +@1337 := @763 @1333 @1335 +@1341 := @1330 @1333 @1335 @1321 @1329 +@1345 := @1330 @1285 @1337 @1293 @1341 +@1346 := Exists.intro.{1} +@1347 := @763 @1222 +@1349 := @1249 @77 @79 +@1361 := fun (__e_ro : @761) => + @1347 (@763 (@1349 -> @1036 (@1252 (@1253 @75 @77)) @38) (@1260 @1349 -> @1275)) +@1365 := @1346 @761 @1361 @38 @1345 +@1367 := @763 @1284 @1285 +@1369 := fun (__e_ro : @761) => fun (__e_hand : @1246) => @1365 +@1375 := Exists.elim.{1} @761 @1283 @1282 @1240 @1369 +@1376 := LexLeanPreservation.Rust.RepresentableL +@1377 := @21 @38 +@1379 := @391 @40 @390 +@1382 := @1376 (@391 @1377 @1379) +@1383 := (__e_hrep : @1382) -> @1282 +@1384 := fun (__e_hrep : @1382) => @1375 +@1385 := (start : @3) -> @1383 +@1386 := fun (start : @3) => @1384 +@1387 := (g : @9) -> @1385 +@1388 := fun (g : @9) => @1386 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R6/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R6/RustStd.lean new file mode 100644 index 000000000..caa56a407 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R6/RustStd.lean @@ -0,0 +1,273 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1], types := [(.list (.pair .nat (.list .nat))), .nat], result := (.pair (.list .nat) (.pair (.list .nat) (.option (.list .nat)))), + body := (.build .pair (.pair (.list .nat) (.pair (.list .nat) (.option (.list .nat)))) [(.call 1 [(.var 0), (.var 1)]), (.build .pair (.pair (.list .nat) (.option (.list .nat))) [(.call 3 [(.var 0), (.var 1)]), (.call 16 [(.var 0)])])]) }, + { parameters := [0, 1], types := [(.list (.pair .nat (.list .nat))), .nat], result := (.list .nat), + body := (.«match» (.list .nat) (.call 2 [(.var 0), (.var 1)]) [(.arm .none [] (.build .nil (.list .nat) [])), (.arm .some [2] (.var 2))]) }, + { parameters := [0, 1], types := [(.list (.pair .nat (.list .nat))), .nat], result := (.option (.list .nat)), + body := (.«match» (.option (.list .nat)) (.var 0) [(.arm .nil [] (.build .none (.option (.list .nat)) [])), (.arm .cons [2, 3] (.«match» (.option (.list .nat)) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.build .none (.option (.list .nat)) [])), (.arm .eq [] (.build .some (.option (.list .nat)) [(.second (.var 2))])), (.arm .gt [] (.call 2 [(.var 3), (.var 1)]))]))]) }, + { parameters := [0, 1], types := [(.list (.pair .nat (.list .nat))), .nat], result := (.list .nat), + body := (.call 4 [(.var 0), (.prim .natAdd [(.prim .length [(.call 13 [(.var 0), (.build .nil (.list .nat) [])])]), (.value .nat (.nat 1))]), (.build .cons (.list .nat) [(.var 1), (.build .nil (.list .nat) [])]), (.build .cons (.list .nat) [(.var 1), (.build .nil (.list .nat) [])])]) }, + { parameters := [0, 1, 2, 3], types := [(.list (.pair .nat (.list .nat))), .nat, (.list .nat), (.list .nat)], result := (.list .nat), + body := (.«match» (.list .nat) (.var 1) [(.arm .zero [] (.var 3)), (.arm .succ [4] (.«let» 5 (.list .nat) (.call 5 [(.var 0), (.var 3), (.var 2), (.build .nil (.list .nat) [])]) (.«match» (.list .nat) (.var 5) [(.arm .nil [] (.var 3)), (.arm .cons [6, 7] (.call 4 [(.var 0), (.var 4), (.var 5), (.call 11 [(.var 3), (.var 5)])]))])))]) }, + { parameters := [0, 1, 2, 3], types := [(.list (.pair .nat (.list .nat))), (.list .nat), (.list .nat), (.list .nat)], result := (.list .nat), + body := (.«match» (.list .nat) (.var 2) [(.arm .nil [] (.var 3)), (.arm .cons [4, 5] (.call 5 [(.var 0), (.var 1), (.var 5), (.call 6 [(.var 1), (.call 7 [(.var 0), (.var 4)]), (.var 3)])]))]) }, + { parameters := [0, 1, 2], types := [(.list .nat), (.list .nat), (.list .nat)], result := (.list .nat), + body := (.«match» (.list .nat) (.var 1) [(.arm .nil [] (.var 2)), (.arm .cons [3, 4] (.call 6 [(.var 0), (.var 4), (.cond (.call 9 [(.var 0), (.var 3)]) (.var 2) (.cond (.call 9 [(.var 2), (.var 3)]) (.var 2) (.call 10 [(.var 2), (.var 3)])))]))]) }, + { parameters := [0, 1], types := [(.list (.pair .nat (.list .nat))), .nat], result := (.list .nat), + body := (.«match» (.list .nat) (.call 8 [(.var 0), (.var 1)]) [(.arm .none [] (.build .nil (.list .nat) [])), (.arm .some [2] (.var 2))]) }, + { parameters := [0, 1], types := [(.list (.pair .nat (.list .nat))), .nat], result := (.option (.list .nat)), + body := (.«match» (.option (.list .nat)) (.var 0) [(.arm .nil [] (.build .none (.option (.list .nat)) [])), (.arm .cons [2, 3] (.«match» (.option (.list .nat)) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.build .none (.option (.list .nat)) [])), (.arm .eq [] (.build .some (.option (.list .nat)) [(.second (.var 2))])), (.arm .gt [] (.call 8 [(.var 3), (.var 1)]))]))]) }, + { parameters := [0, 1], types := [(.list .nat), .nat], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .false .bool [])), (.arm .cons [2, 3] (.«match» .bool (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .false .bool [])), (.arm .eq [] (.build .true .bool [])), (.arm .gt [] (.call 9 [(.var 3), (.var 1)]))]))]) }, + { parameters := [0, 1], types := [(.list .nat), .nat], result := (.list .nat), + body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.build .cons (.list .nat) [(.var 1), (.build .nil (.list .nat) [])])), (.arm .cons [2, 3] (.«match» (.list .nat) (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .cons (.list .nat) [(.var 1), (.var 0)])), (.arm .eq [] (.var 0)), (.arm .gt [] (.build .cons (.list .nat) [(.var 2), (.call 10 [(.var 3), (.var 1)])]))]))]) }, + { parameters := [0, 1], types := [(.list .nat), (.list .nat)], result := (.list .nat), + body := (.«match» (.list .nat) (.var 1) [(.arm .nil [] (.var 0)), (.arm .cons [2, 3] (.call 11 [(.call 12 [(.var 0), (.var 2)]), (.var 3)]))]) }, + { parameters := [0, 1], types := [(.list .nat), .nat], result := (.list .nat), + body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.build .cons (.list .nat) [(.var 1), (.build .nil (.list .nat) [])])), (.arm .cons [2, 3] (.«match» (.list .nat) (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .cons (.list .nat) [(.var 1), (.var 0)])), (.arm .eq [] (.var 0)), (.arm .gt [] (.build .cons (.list .nat) [(.var 2), (.call 12 [(.var 3), (.var 1)])]))]))]) }, + { parameters := [0, 1], types := [(.list (.pair .nat (.list .nat))), (.list .nat)], result := (.list .nat), + body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.var 1)), (.arm .cons [2, 3] (.call 13 [(.var 3), (.call 14 [(.second (.var 2)), (.call 15 [(.var 1), (.first (.var 2))])])]))]) }, + { parameters := [0, 1], types := [(.list .nat), (.list .nat)], result := (.list .nat), + body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.var 1)), (.arm .cons [2, 3] (.call 14 [(.var 3), (.call 15 [(.var 1), (.var 2)])]))]) }, + { parameters := [0, 1], types := [(.list .nat), .nat], result := (.list .nat), + body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.build .cons (.list .nat) [(.var 1), (.build .nil (.list .nat) [])])), (.arm .cons [2, 3] (.«match» (.list .nat) (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .cons (.list .nat) [(.var 1), (.var 0)])), (.arm .eq [] (.var 0)), (.arm .gt [] (.build .cons (.list .nat) [(.var 2), (.call 15 [(.var 3), (.var 1)])]))]))]) }, + { parameters := [0], types := [(.list (.pair .nat (.list .nat)))], result := (.option (.list .nat)), + body := (.«let» 1 (.list .nat) (.call 21 [(.var 0), (.build .nil (.list .nat) [])]) (.call 17 [(.var 0), (.prim .natAdd [(.prim .length [(.var 1)]), (.value .nat (.nat 1))]), (.var 1), (.build .nil (.list .nat) [])])) }, + { parameters := [0, 1, 2, 3], types := [(.list (.pair .nat (.list .nat))), .nat, (.list .nat), (.list .nat)], result := (.option (.list .nat)), + body := (.«match» (.option (.list .nat)) (.var 1) [(.arm .zero [] (.«match» (.option (.list .nat)) (.var 2) [(.arm .nil [] (.build .some (.option (.list .nat)) [(.call 20 [(.var 3), (.build .nil (.list .nat) [])])])), (.arm .cons [4, 5] (.build .none (.option (.list .nat)) []))])), (.arm .succ [6] (.«match» (.option (.list .nat)) (.call 18 [(.var 0), (.var 2), (.var 2)]) [(.arm .nil [] (.«match» (.option (.list .nat)) (.var 2) [(.arm .nil [] (.build .some (.option (.list .nat)) [(.call 20 [(.var 3), (.build .nil (.list .nat) [])])])), (.arm .cons [7, 8] (.build .none (.option (.list .nat)) []))])), (.arm .cons [9, 10] (.call 17 [(.var 0), (.var 6), (.call 27 [(.var 2), (.var 9)]), (.build .cons (.list .nat) [(.var 9), (.var 3)])]))]))]) }, + { parameters := [0, 1, 2], types := [(.list (.pair .nat (.list .nat))), (.list .nat), (.list .nat)], result := (.list .nat), + body := (.«match» (.list .nat) (.var 2) [(.arm .nil [] (.build .nil (.list .nat) [])), (.arm .cons [3, 4] (.cond (.call 19 [(.var 0), (.var 3), (.var 1)]) (.build .cons (.list .nat) [(.var 3), (.call 18 [(.var 0), (.var 1), (.var 4)])]) (.call 18 [(.var 0), (.var 1), (.var 4)])))]) }, + { parameters := [0, 1, 2], types := [(.list (.pair .nat (.list .nat))), .nat, (.list .nat)], result := .bool, + body := (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.call 26 [(.call 24 [(.var 0), (.var 3)]), (.var 1)]) (.build .false .bool []) (.call 19 [(.var 0), (.var 1), (.var 4)])))]) }, + { parameters := [0, 1], types := [(.list .nat), (.list .nat)], result := (.list .nat), + body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.var 1)), (.arm .cons [2, 3] (.call 20 [(.var 3), (.build .cons (.list .nat) [(.var 2), (.var 1)])]))]) }, + { parameters := [0, 1], types := [(.list (.pair .nat (.list .nat))), (.list .nat)], result := (.list .nat), + body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.var 1)), (.arm .cons [2, 3] (.call 21 [(.var 3), (.call 22 [(.second (.var 2)), (.call 23 [(.var 1), (.first (.var 2))])])]))]) }, + { parameters := [0, 1], types := [(.list .nat), (.list .nat)], result := (.list .nat), + body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.var 1)), (.arm .cons [2, 3] (.call 22 [(.var 3), (.call 23 [(.var 1), (.var 2)])]))]) }, + { parameters := [0, 1], types := [(.list .nat), .nat], result := (.list .nat), + body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.build .cons (.list .nat) [(.var 1), (.build .nil (.list .nat) [])])), (.arm .cons [2, 3] (.«match» (.list .nat) (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .cons (.list .nat) [(.var 1), (.var 0)])), (.arm .eq [] (.var 0)), (.arm .gt [] (.build .cons (.list .nat) [(.var 2), (.call 23 [(.var 3), (.var 1)])]))]))]) }, + { parameters := [0, 1], types := [(.list (.pair .nat (.list .nat))), .nat], result := (.list .nat), + body := (.«match» (.list .nat) (.call 25 [(.var 0), (.var 1)]) [(.arm .none [] (.build .nil (.list .nat) [])), (.arm .some [2] (.var 2))]) }, + { parameters := [0, 1], types := [(.list (.pair .nat (.list .nat))), .nat], result := (.option (.list .nat)), + body := (.«match» (.option (.list .nat)) (.var 0) [(.arm .nil [] (.build .none (.option (.list .nat)) [])), (.arm .cons [2, 3] (.«match» (.option (.list .nat)) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.build .none (.option (.list .nat)) [])), (.arm .eq [] (.build .some (.option (.list .nat)) [(.second (.var 2))])), (.arm .gt [] (.call 25 [(.var 3), (.var 1)]))]))]) }, + { parameters := [0, 1], types := [(.list .nat), .nat], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .false .bool [])), (.arm .cons [2, 3] (.«match» .bool (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .false .bool [])), (.arm .eq [] (.build .true .bool [])), (.arm .gt [] (.call 26 [(.var 3), (.var 1)]))]))]) }, + { parameters := [0, 1], types := [(.list .nat), .nat], result := (.list .nat), + body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.build .nil (.list .nat) [])), (.arm .cons [2, 3] (.«match» (.list .nat) (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.var 0)), (.arm .eq [] (.var 3)), (.arm .gt [] (.build .cons (.list .nat) [(.var 2), (.call 27 [(.var 3), (.var 1)])]))]))]) }, + { parameters := [0], types := [(.list (.pair .nat (.list .nat)))], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 29 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 28 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, + { parameters := [0], types := [(.list .nat)], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.var 1), (.var 3)]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 29 [(.var 2)]) (.build .false .bool [])))]))]) }, + { parameters := [0, 1], types := [(.list (.pair .nat (.list .nat))), .nat], result := (.option (.pair (.list .nat) (.pair (.list .nat) (.option (.list .nat))))), + body := (.cond (.call 28 [(.var 0)]) (.build .some (.option (.pair (.list .nat) (.pair (.list .nat) (.option (.list .nat))))) [(.call 0 [(.var 0), (.var 1)])]) (.build .none (.option (.pair (.list .nat) (.pair (.list .nat) (.option (.list .nat))))) [])) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat (.list .nat))) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.pair (.list .nat) (.pair (.list .nat) (.option (.list .nat))))) (.mk [] (.succeed (.pair (.call (.function 1) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1))] false) (.pair (.call (.function 3) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1))] true) (.call (.function 16) [(.move (.generated .binding 0))] true)))))), + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat (.list .nat))) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 1)) none (.call (.function 2) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 1)) [(.mk .none (.mk [] (.construct (.nil .nat) []))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.move (.generated .binding 2))))]))), + (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat (.list .nat))) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.option (.list .nat)) (.mk [(.mk (.bind (.generated .holder 2)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 2)) [(.mk .none (.mk [] (.construct (.none (.list .nat)) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 6)) none (.block (.mk [(.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 5)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 3)))))] (.call (.runtime .compare) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false))))] (.matchOn (.move (.generated .holder 6)) [(.mk (.ordering .less) (.mk [] (.construct (.none (.list .nat)) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 7))]) none (.move (.generated .binding 2)))] (.move (.generated .part 7))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 2) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]))), + (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat (.list .nat))) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.list .nat)) (.mk [] (.succeed (.call (.function 4) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.block (.mk [(.mk (.bind (.generated .operand 8)) none (.call (.function 13) [(.move (.generated .binding 0)), (.construct (.nil .nat) [])] false))] (.call (.runtime .lengthList) [(.move (.generated .operand 8))] false)))), (.mk (.bind (.generated .operand 10)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] true))), (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil .nat) [])]), (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil .nat) [])])] false)))), + (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat (.list .nat))) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 3)), type := (.list .nat) }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 11)) none (.copy (.generated .binding 1)))] (.cond (.isZero (.generated .holder 11)) (.mk [] (.move (.generated .binding 3))) (.mk [(.mk (.bind (.generated .binding 4)) none (.predecessor (.generated .holder 11))), (.mk (.bind (.generated .binding 5)) (some (.list .nat)) (.call (.function 5) [(.clone (.generated .binding 0)), (.clone (.generated .binding 3)), (.move (.generated .binding 2)), (.construct (.nil .nat) [])] false)), (.mk (.bind (.generated .holder 12)) none (.clone (.generated .binding 5)))] (.matchOn (.uncons (.generated .holder 12)) [(.mk .none (.mk [] (.move (.generated .binding 3)))), (.mk (.some (.tuple [.wild, .wild])) (.mk [] (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 4)), (.clone (.generated .binding 5)), (.call (.function 11) [(.move (.generated .binding 3)), (.move (.generated .binding 5))] false)] false)))]))))), + (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat (.list .nat))) }, { pattern := (.bind (.generated .binding 1)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 2)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 3)), type := (.list .nat) }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 13)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 13)) [(.mk .none (.mk [] (.move (.generated .binding 3)))), (.mk (.some (.tuple [(.bind (.generated .binding 4)), (.bind (.generated .binding 5))])) (.mk [] (.call (.function 5) [(.clone (.generated .binding 0)), (.clone (.generated .binding 1)), (.move (.generated .binding 5)), (.call (.function 6) [(.move (.generated .binding 1)), (.call (.function 7) [(.move (.generated .binding 0)), (.copy (.generated .binding 4))] false), (.move (.generated .binding 3))] false)] false)))]))), + (.function (.generated .function 6) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 2)), type := (.list .nat) }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 14)) none (.move (.generated .binding 1)))] (.matchOn (.uncons (.generated .holder 14)) [(.mk .none (.mk [] (.move (.generated .binding 2)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 6) [(.clone (.generated .binding 0)), (.move (.generated .binding 4)), (.cond (.call (.function 9) [(.move (.generated .binding 0)), (.copy (.generated .binding 3))] false) (.mk [] (.move (.generated .binding 2))) (.mk [] (.cond (.call (.function 9) [(.clone (.generated .binding 2)), (.copy (.generated .binding 3))] false) (.mk [] (.move (.generated .binding 2))) (.mk [] (.call (.function 10) [(.move (.generated .binding 2)), (.copy (.generated .binding 3))] false)))))] false)))]))), + (.function (.generated .function 7) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat (.list .nat))) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 15)) none (.call (.function 8) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 15)) [(.mk .none (.mk [] (.construct (.nil .nat) []))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.move (.generated .binding 2))))]))), + (.function (.generated .function 8) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat (.list .nat))) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.option (.list .nat)) (.mk [(.mk (.bind (.generated .holder 16)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 16)) [(.mk .none (.mk [] (.construct (.none (.list .nat)) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 20)) none (.block (.mk [(.mk (.bind (.generated .operand 18)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 19)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 17)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 17)))))] (.call (.runtime .compare) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false))))] (.matchOn (.move (.generated .holder 20)) [(.mk (.ordering .less) (.mk [] (.construct (.none (.list .nat)) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 21))]) none (.move (.generated .binding 2)))] (.move (.generated .part 21))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 8) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]))), + (.function (.generated .function 9) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .holder 22)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 22)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 25)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))))] (.matchOn (.move (.generated .holder 25)) [(.mk (.ordering .less) (.mk [] (.lit (.bool false)))), (.mk (.ordering .same) (.mk [] (.lit (.bool true)))), (.mk (.ordering .more) (.mk [] (.call (.function 9) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]))), + (.function (.generated .function 10) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 26)) none (.clone (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 26)) [(.mk .none (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil .nat) [])]))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 29)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 28)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))] (.matchOn (.move (.generated .holder 29)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 10) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])))]))), + (.function (.generated .function 11) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := (.list .nat) }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 30)) none (.move (.generated .binding 1)))] (.matchOn (.uncons (.generated .holder 30)) [(.mk .none (.mk [] (.move (.generated .binding 0)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.call (.function 11) [(.call (.function 12) [(.move (.generated .binding 0)), (.copy (.generated .binding 2))] false), (.move (.generated .binding 3))] false)))]))), + (.function (.generated .function 12) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 31)) none (.clone (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 31)) [(.mk .none (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil .nat) [])]))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 34)) none (.block (.mk [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 33)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] false))))] (.matchOn (.move (.generated .holder 34)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 12) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])))]))), + (.function (.generated .function 13) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat (.list .nat))) }, { pattern := (.bind (.generated .binding 1)), type := (.list .nat) }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 35)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 35)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.call (.function 13) [(.move (.generated .binding 3)), (.call (.function 14) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 36))]) none (.move (.generated .binding 2)))] (.move (.generated .part 36)))), (.call (.function 15) [(.move (.generated .binding 1)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 37)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 37))))] false)] false)] false)))]))), + (.function (.generated .function 14) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := (.list .nat) }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 38)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 38)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.call (.function 14) [(.move (.generated .binding 3)), (.call (.function 15) [(.move (.generated .binding 1)), (.copy (.generated .binding 2))] false)] false)))]))), + (.function (.generated .function 15) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 39)) none (.clone (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 39)) [(.mk .none (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil .nat) [])]))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 42)) none (.block (.mk [(.mk (.bind (.generated .operand 40)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 41)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 40)), (.move (.generated .operand 41))] false))))] (.matchOn (.move (.generated .holder 42)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 15) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])))]))), + (.function (.generated .function 16) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat (.list .nat))) }] (.fallible (.option (.list .nat))) (.mk [(.mk (.bind (.generated .binding 1)) (some (.list .nat)) (.call (.function 21) [(.clone (.generated .binding 0)), (.construct (.nil .nat) [])] false))] (.succeed (.call (.function 17) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.bind (.generated .operand 43)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthList) [(.move (.generated .operand 43))] false)))), (.mk (.bind (.generated .operand 45)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 44)), (.move (.generated .operand 45))] true))), (.move (.generated .binding 1)), (.construct (.nil .nat) [])] false)))), + (.function (.generated .function 17) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat (.list .nat))) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 3)), type := (.list .nat) }] (.option (.list .nat)) (.mk [(.mk (.bind (.generated .holder 46)) none (.copy (.generated .binding 1)))] (.cond (.isZero (.generated .holder 46)) (.mk [(.mk (.bind (.generated .holder 47)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 47)) [(.mk .none (.mk [] (.construct .some [(.call (.function 20) [(.move (.generated .binding 3)), (.construct (.nil .nat) [])] false)]))), (.mk (.some (.tuple [.wild, .wild])) (.mk [] (.construct (.none (.list .nat)) [])))])) (.mk [(.mk (.bind (.generated .binding 6)) none (.predecessor (.generated .holder 46))), (.mk (.bind (.generated .holder 48)) none (.call (.function 18) [(.clone (.generated .binding 0)), (.clone (.generated .binding 2)), (.clone (.generated .binding 2))] false))] (.matchOn (.uncons (.generated .holder 48)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 49)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 49)) [(.mk .none (.mk [] (.construct .some [(.call (.function 20) [(.move (.generated .binding 3)), (.construct (.nil .nat) [])] false)]))), (.mk (.some (.tuple [.wild, .wild])) (.mk [] (.construct (.none (.list .nat)) [])))]))), (.mk (.some (.tuple [(.bind (.generated .binding 9)), .wild])) (.mk [] (.call (.function 17) [(.move (.generated .binding 0)), (.copy (.generated .binding 6)), (.call (.function 27) [(.move (.generated .binding 2)), (.copy (.generated .binding 9))] false), (.construct .cons [(.copy (.generated .binding 9)), (.move (.generated .binding 3))])] false)))]))))), + (.function (.generated .function 18) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat (.list .nat))) }, { pattern := (.bind (.generated .binding 1)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 2)), type := (.list .nat) }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 50)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 50)) [(.mk .none (.mk [] (.construct (.nil .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.cond (.call (.function 19) [(.clone (.generated .binding 0)), (.copy (.generated .binding 3)), (.clone (.generated .binding 1))] false) (.mk [] (.construct .cons [(.copy (.generated .binding 3)), (.call (.function 18) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false)])) (.mk [] (.call (.function 18) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false)))))]))), + (.function (.generated .function 19) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat (.list .nat))) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := (.list .nat) }] .bool (.mk [(.mk (.bind (.generated .holder 51)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 51)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.cond (.call (.function 26) [(.call (.function 24) [(.clone (.generated .binding 0)), (.copy (.generated .binding 3))] false), (.copy (.generated .binding 1))] false) (.mk [] (.lit (.bool false))) (.mk [] (.call (.function 19) [(.move (.generated .binding 0)), (.copy (.generated .binding 1)), (.move (.generated .binding 4))] false)))))]))), + (.function (.generated .function 20) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := (.list .nat) }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 52)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 52)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.call (.function 20) [(.move (.generated .binding 3)), (.construct .cons [(.copy (.generated .binding 2)), (.move (.generated .binding 1))])] false)))]))), + (.function (.generated .function 21) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat (.list .nat))) }, { pattern := (.bind (.generated .binding 1)), type := (.list .nat) }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 53)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 53)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.call (.function 21) [(.move (.generated .binding 3)), (.call (.function 22) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 54))]) none (.move (.generated .binding 2)))] (.move (.generated .part 54)))), (.call (.function 23) [(.move (.generated .binding 1)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 55)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 55))))] false)] false)] false)))]))), + (.function (.generated .function 22) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := (.list .nat) }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 56)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 56)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.call (.function 22) [(.move (.generated .binding 3)), (.call (.function 23) [(.move (.generated .binding 1)), (.copy (.generated .binding 2))] false)] false)))]))), + (.function (.generated .function 23) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 57)) none (.clone (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 57)) [(.mk .none (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil .nat) [])]))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 60)) none (.block (.mk [(.mk (.bind (.generated .operand 58)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 59)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 58)), (.move (.generated .operand 59))] false))))] (.matchOn (.move (.generated .holder 60)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 23) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])))]))), + (.function (.generated .function 24) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat (.list .nat))) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 61)) none (.call (.function 25) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 61)) [(.mk .none (.mk [] (.construct (.nil .nat) []))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.move (.generated .binding 2))))]))), + (.function (.generated .function 25) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat (.list .nat))) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.option (.list .nat)) (.mk [(.mk (.bind (.generated .holder 62)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 62)) [(.mk .none (.mk [] (.construct (.none (.list .nat)) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 66)) none (.block (.mk [(.mk (.bind (.generated .operand 64)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 65)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 63)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 63)))))] (.call (.runtime .compare) [(.move (.generated .operand 64)), (.move (.generated .operand 65))] false))))] (.matchOn (.move (.generated .holder 66)) [(.mk (.ordering .less) (.mk [] (.construct (.none (.list .nat)) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 67))]) none (.move (.generated .binding 2)))] (.move (.generated .part 67))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 25) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]))), + (.function (.generated .function 26) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .holder 68)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 68)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 71)) none (.block (.mk [(.mk (.bind (.generated .operand 69)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 70)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 69)), (.move (.generated .operand 70))] false))))] (.matchOn (.move (.generated .holder 71)) [(.mk (.ordering .less) (.mk [] (.lit (.bool false)))), (.mk (.ordering .same) (.mk [] (.lit (.bool true)))), (.mk (.ordering .more) (.mk [] (.call (.function 26) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]))), + (.function (.generated .function 27) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 72)) none (.clone (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 72)) [(.mk .none (.mk [] (.construct (.nil .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 75)) none (.block (.mk [(.mk (.bind (.generated .operand 73)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 74)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 73)), (.move (.generated .operand 74))] false))))] (.matchOn (.move (.generated .holder 75)) [(.mk (.ordering .less) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 3)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 27) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])))]))), + (.function (.generated .function 28) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat (.list .nat))) }] .bool (.mk [(.mk (.bind (.generated .holder 76)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 76)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 29) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 77))]) none (.move (.generated .binding 1)))] (.move (.generated .part 77))))] false) (.mk [(.mk (.bind (.generated .holder 78)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 78)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 83)) none (.block (.mk [(.mk (.bind (.generated .operand 81)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 79)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 79))))), (.mk (.bind (.generated .operand 82)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 80)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 80)))))] (.call (.runtime .compare) [(.move (.generated .operand 81)), (.move (.generated .operand 82))] false))))] (.cond (.matchOn (.move (.generated .holder 83)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 28) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]))), + (.function (.generated .function 29) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }] .bool (.mk [(.mk (.bind (.generated .holder 84)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 84)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [(.mk (.bind (.generated .holder 85)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 85)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 88)) none (.block (.mk [(.mk (.bind (.generated .operand 86)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 87)) none (.copy (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 86)), (.move (.generated .operand 87))] false))))] (.cond (.matchOn (.move (.generated .holder 88)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 29) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])))]))), + (.function (.generated .function 30) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat (.list .nat))) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.option (.pair (.list .nat) (.pair (.list .nat) (.option (.list .nat)))))) (.mk [] (.cond (.call (.function 28) [(.clone (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] true)]))) (.mk [] (.succeed (.construct (.none (.pair (.list .nat) (.pair (.list .nat) (.option (.list .nat))))) []))))))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [], (.succeed (.pair (.call (.function 1) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1))] false) (.pair (.call (.function 3) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1))] true) (.call (.function 16) [(.move (.generated .binding 0))] true)))), [(1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))], rfl, rfl, + (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .nat (.list .nat)))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lNil))))))⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.call (.function 2) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false))], (.matchOn (.move (.generated .holder 1)) [(.mk .none (.mk [] (.construct (.nil .nat) []))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.move (.generated .binding 2))))]), [(1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option (.list .nat))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.nil .nat) [])) (Corr.mCons (Γ' := [(2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.move (.generated .binding 2))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 2)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 2)) [(.mk .none (.mk [] (.construct (.none (.list .nat)) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 6)) none (.block (.mk [(.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 5)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 3)))))] (.call (.runtime .compare) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false))))] (.matchOn (.move (.generated .holder 6)) [(.mk (.ordering .less) (.mk [] (.construct (.none (.list .nat)) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 7))]) none (.move (.generated .binding 2)))] (.move (.generated .part 7))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 2) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]), [(1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.pair .nat (.list .nat)))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none (.list .nat)) [])) (Corr.mCons (Γ' := [(3, (.list (.pair .nat (.list .nat))), (some 3)), (2, (.pair .nat (.list .nat)), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 6)) none (.block (.mk [(.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 5)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 3)))))] (.call (.runtime .compare) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false))))]) (tail := (.matchOn (.move (.generated .holder 6)) [(.mk (.ordering .less) (.mk [] (.construct (.none (.list .nat)) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 7))]) none (.move (.generated .binding 2)))] (.move (.generated .part 7))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 2) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 5)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 3)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 3))) (Corr.first (ta := .nat) (tb := (.list .nat)) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list (.pair .nat (.list .nat))), (some 3)), (2, (.pair .nat (.list .nat)), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none (.list .nat)) [])) (Corr.mCons (Γ' := [(3, (.list (.pair .nat (.list .nat))), (some 3)), (2, (.pair .nat (.list .nat)), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 7))]) none (.move (.generated .binding 2)))] (.move (.generated .part 7))))])) (Corr.mCons (Γ' := [(3, (.list (.pair .nat (.list .nat))), (some 3)), (2, (.pair .nat (.list .nat)), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.call (.function 2) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := [(.list .nat)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 7))]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 7))) (Corr.second (ta := .nat) (tb := (.list .nat)) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun3 : FunOK program krate flags 3 := + ⟨_, rfl, .inl ⟨_, _, [], (.succeed (.call (.function 4) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.block (.mk [(.mk (.bind (.generated .operand 8)) none (.call (.function 13) [(.move (.generated .binding 0)), (.construct (.nil .nat) [])] false))] (.call (.runtime .lengthList) [(.move (.generated .operand 8))] false)))), (.mk (.bind (.generated .operand 10)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] true))), (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil .nat) [])]), (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil .nat) [])])] false)), [(1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))], rfl, rfl, + (Corr.fOfB (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), .nat, (.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 9)) none (.block (.mk [(.mk (.bind (.generated .operand 8)) none (.call (.function 13) [(.move (.generated .binding 0)), (.construct (.nil .nat) [])] false))] (.call (.runtime .lengthList) [(.move (.generated .operand 8))] false)))), (.mk (.bind (.generated .operand 10)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 8)) none (.call (.function 13) [(.move (.generated .binding 0)), (.construct (.nil .nat) [])] false))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 8))] false)) (Corr.prim (ts := [(.list .nat)]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))))) rfl rfl rfl rfl rfl))⟩⟩ + +theorem fun4 : FunOK program krate flags 4 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 11)) none (.copy (.generated .binding 1)))], (.cond (.isZero (.generated .holder 11)) (.mk [] (.move (.generated .binding 3))) (.mk [(.mk (.bind (.generated .binding 4)) none (.predecessor (.generated .holder 11))), (.mk (.bind (.generated .binding 5)) (some (.list .nat)) (.call (.function 5) [(.clone (.generated .binding 0)), (.clone (.generated .binding 3)), (.move (.generated .binding 2)), (.construct (.nil .nat) [])] false)), (.mk (.bind (.generated .holder 12)) none (.clone (.generated .binding 5)))] (.matchOn (.uncons (.generated .holder 12)) [(.mk .none (.mk [] (.move (.generated .binding 3)))), (.mk (.some (.tuple [.wild, .wild])) (.mk [] (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 4)), (.clone (.generated .binding 5)), (.call (.function 11) [(.move (.generated .binding 3)), (.move (.generated .binding 5))] false)] false)))]))), [(3, (.list .nat), (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))], rfl, rfl, + (Corr.matchNat (sl := (some 4)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.move (.generated .binding 3))) (lb := [(.mk (.bind (.generated .binding 5)) (some (.list .nat)) (.call (.function 5) [(.clone (.generated .binding 0)), (.clone (.generated .binding 3)), (.move (.generated .binding 2)), (.construct (.nil .nat) [])] false)), (.mk (.bind (.generated .holder 12)) none (.clone (.generated .binding 5)))]) (tb := (.matchOn (.uncons (.generated .holder 12)) [(.mk .none (.mk [] (.move (.generated .binding 3)))), (.mk (.some (.tuple [.wild, .wild])) (.mk [] (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 4)), (.clone (.generated .binding 5)), (.call (.function 11) [(.move (.generated .binding 3)), (.move (.generated .binding 5))] false)] false)))])) (Corr.bOfE (Corr.var rfl rfl)) (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), (.list .nat), (.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))))) rfl rfl rfl rfl rfl)) rfl (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(5, (.list .nat), (some 5)), (4, .nat, (some 4)), (3, (.list .nat), (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 3))) (Corr.mCons (Γ' := [(7, (.list .nat), none), (6, .nat, none), (5, (.list .nat), (some 5)), (4, .nat, (some 4)), (3, (.list .nat), (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 4)), (.clone (.generated .binding 5)), (.call (.function 11) [(.move (.generated .binding 3)), (.move (.generated .binding 5))] false)] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), .nat, (.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl))))⟩⟩ + +theorem fun5 : FunOK program krate flags 5 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 13)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 13)) [(.mk .none (.mk [] (.move (.generated .binding 3)))), (.mk (.some (.tuple [(.bind (.generated .binding 4)), (.bind (.generated .binding 5))])) (.mk [] (.call (.function 5) [(.clone (.generated .binding 0)), (.clone (.generated .binding 1)), (.move (.generated .binding 5)), (.call (.function 6) [(.move (.generated .binding 1)), (.call (.function 7) [(.move (.generated .binding 0)), (.copy (.generated .binding 4))] false), (.move (.generated .binding 3))] false)] false)))]), [(3, (.list .nat), (some 3)), (2, (.list .nat), (some 2)), (1, (.list .nat), (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, (.list .nat), (some 2)), (1, (.list .nat), (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 3))) (Corr.mCons (Γ' := [(5, (.list .nat), (some 5)), (4, .nat, (some 4)), (3, (.list .nat), (some 3)), (2, (.list .nat), (some 2)), (1, (.list .nat), (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 5) [(.clone (.generated .binding 0)), (.clone (.generated .binding 1)), (.move (.generated .binding 5)), (.call (.function 6) [(.move (.generated .binding 1)), (.call (.function 7) [(.move (.generated .binding 0)), (.copy (.generated .binding 4))] false), (.move (.generated .binding 3))] false)] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), (.list .nat), (.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), (.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lNil)))))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ + +theorem fun6 : FunOK program krate flags 6 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 14)) none (.move (.generated .binding 1)))], (.matchOn (.uncons (.generated .holder 14)) [(.mk .none (.mk [] (.move (.generated .binding 2)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 6) [(.clone (.generated .binding 0)), (.move (.generated .binding 4)), (.cond (.call (.function 9) [(.move (.generated .binding 0)), (.copy (.generated .binding 3))] false) (.mk [] (.move (.generated .binding 2))) (.mk [] (.cond (.call (.function 9) [(.clone (.generated .binding 2)), (.copy (.generated .binding 3))] false) (.mk [] (.move (.generated .binding 2))) (.mk [] (.call (.function 10) [(.move (.generated .binding 2)), (.copy (.generated .binding 3))] false)))))] false)))]), [(2, (.list .nat), (some 2)), (1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .nat), (some 2)), (1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 2))) (Corr.mCons (Γ' := [(4, (.list .nat), (some 4)), (3, .nat, (some 3)), (2, (.list .nat), (some 2)), (1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 6) [(.clone (.generated .binding 0)), (.move (.generated .binding 4)), (.cond (.call (.function 9) [(.move (.generated .binding 0)), (.copy (.generated .binding 3))] false) (.mk [] (.move (.generated .binding 2))) (.mk [] (.cond (.call (.function 9) [(.clone (.generated .binding 2)), (.copy (.generated .binding 3))] false) (.mk [] (.move (.generated .binding 2))) (.mk [] (.call (.function 10) [(.move (.generated .binding 2)), (.copy (.generated .binding 3))] false)))))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list .nat), (.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.cond (lc := []) (ce := (.call (.function 9) [(.move (.generated .binding 0)), (.copy (.generated .binding 3))] false)) (lk := []) (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.move (.generated .binding 2))) (lb := []) (tb := (.cond (.call (.function 9) [(.clone (.generated .binding 2)), (.copy (.generated .binding 3))] false) (.mk [] (.move (.generated .binding 2))) (.mk [] (.call (.function 10) [(.move (.generated .binding 2)), (.copy (.generated .binding 3))] false)))) (Corr.bOfE (Corr.var rfl rfl)) (Corr.cond (lc := []) (ce := (.call (.function 9) [(.clone (.generated .binding 2)), (.copy (.generated .binding 3))] false)) (lk := []) (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.move (.generated .binding 2))) (lb := []) (tb := (.call (.function 10) [(.move (.generated .binding 2)), (.copy (.generated .binding 3))] false)) (Corr.bOfE (Corr.var rfl rfl)) (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)))))) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ + +theorem fun7 : FunOK program krate flags 7 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 15)) none (.call (.function 8) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false))], (.matchOn (.move (.generated .holder 15)) [(.mk .none (.mk [] (.construct (.nil .nat) []))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.move (.generated .binding 2))))]), [(1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option (.list .nat))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.nil .nat) [])) (Corr.mCons (Γ' := [(2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.move (.generated .binding 2))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun8 : FunOK program krate flags 8 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 16)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 16)) [(.mk .none (.mk [] (.construct (.none (.list .nat)) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 20)) none (.block (.mk [(.mk (.bind (.generated .operand 18)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 19)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 17)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 17)))))] (.call (.runtime .compare) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false))))] (.matchOn (.move (.generated .holder 20)) [(.mk (.ordering .less) (.mk [] (.construct (.none (.list .nat)) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 21))]) none (.move (.generated .binding 2)))] (.move (.generated .part 21))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 8) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]), [(1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.pair .nat (.list .nat)))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none (.list .nat)) [])) (Corr.mCons (Γ' := [(3, (.list (.pair .nat (.list .nat))), (some 3)), (2, (.pair .nat (.list .nat)), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 20)) none (.block (.mk [(.mk (.bind (.generated .operand 18)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 19)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 17)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 17)))))] (.call (.runtime .compare) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false))))]) (tail := (.matchOn (.move (.generated .holder 20)) [(.mk (.ordering .less) (.mk [] (.construct (.none (.list .nat)) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 21))]) none (.move (.generated .binding 2)))] (.move (.generated .part 21))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 8) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 18)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 19)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 17)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 17)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 17)), .wild]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 17))) (Corr.first (ta := .nat) (tb := (.list .nat)) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list (.pair .nat (.list .nat))), (some 3)), (2, (.pair .nat (.list .nat)), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none (.list .nat)) [])) (Corr.mCons (Γ' := [(3, (.list (.pair .nat (.list .nat))), (some 3)), (2, (.pair .nat (.list .nat)), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 21))]) none (.move (.generated .binding 2)))] (.move (.generated .part 21))))])) (Corr.mCons (Γ' := [(3, (.list (.pair .nat (.list .nat))), (some 3)), (2, (.pair .nat (.list .nat)), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.call (.function 8) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := [(.list .nat)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 21))]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 21))) (Corr.second (ta := .nat) (tb := (.list .nat)) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun9 : FunOK program krate flags 9 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 22)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 22)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 25)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))))] (.matchOn (.move (.generated .holder 25)) [(.mk (.ordering .less) (.mk [] (.lit (.bool false)))), (.mk (.ordering .same) (.mk [] (.lit (.bool true)))), (.mk (.ordering .more) (.mk [] (.call (.function 9) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]), [(1, .nat, (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 25)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))))]) (tail := (.matchOn (.move (.generated .holder 25)) [(.mk (.ordering .less) (.mk [] (.lit (.bool false)))), (.mk (.ordering .same) (.mk [] (.lit (.bool true)))), (.mk (.ordering .more) (.mk [] (.call (.function 9) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.call (.function 9) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ + +theorem fun10 : FunOK program krate flags 10 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 26)) none (.clone (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 26)) [(.mk .none (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil .nat) [])]))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 29)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 28)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))] (.matchOn (.move (.generated .holder 29)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 10) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])))]), [(1, .nat, (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil .nat) [])])) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 29)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 28)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))]) (tail := (.matchOn (.move (.generated .holder 29)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 10) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 27)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 28)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))])) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.move (.generated .binding 0))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 10) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun11 : FunOK program krate flags 11 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 30)) none (.move (.generated .binding 1)))], (.matchOn (.uncons (.generated .holder 30)) [(.mk .none (.mk [] (.move (.generated .binding 0)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.call (.function 11) [(.call (.function 12) [(.move (.generated .binding 0)), (.copy (.generated .binding 2))] false), (.move (.generated .binding 3))] false)))]), [(1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 0))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 11) [(.call (.function 12) [(.move (.generated .binding 0)), (.copy (.generated .binding 2))] false), (.move (.generated .binding 3))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ + +theorem fun12 : FunOK program krate flags 12 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 31)) none (.clone (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 31)) [(.mk .none (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil .nat) [])]))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 34)) none (.block (.mk [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 33)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] false))))] (.matchOn (.move (.generated .holder 34)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 12) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])))]), [(1, .nat, (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil .nat) [])])) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 34)) none (.block (.mk [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 33)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] false))))]) (tail := (.matchOn (.move (.generated .holder 34)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 12) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 33)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))])) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.move (.generated .binding 0))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 12) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun13 : FunOK program krate flags 13 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 35)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 35)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.call (.function 13) [(.move (.generated .binding 3)), (.call (.function 14) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 36))]) none (.move (.generated .binding 2)))] (.move (.generated .part 36)))), (.call (.function 15) [(.move (.generated .binding 1)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 37)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 37))))] false)] false)] false)))]), [(1, (.list .nat), (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.pair .nat (.list .nat)))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.list .nat), (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 1))) (Corr.mCons (Γ' := [(3, (.list (.pair .nat (.list .nat))), (some 3)), (2, (.pair .nat (.list .nat)), (some 2)), (1, (.list .nat), (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 13) [(.move (.generated .binding 3)), (.call (.function 14) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 36))]) none (.move (.generated .binding 2)))] (.move (.generated .part 36)))), (.call (.function 15) [(.move (.generated .binding 1)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 37)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 37))))] false)] false)] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 36))]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 36))) (Corr.second (ta := .nat) (tb := (.list .nat)) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 37)), .wild]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 37))) (Corr.first (ta := .nat) (tb := (.list .nat)) (Corr.var rfl rfl) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ + +theorem fun14 : FunOK program krate flags 14 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 38)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 38)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.call (.function 14) [(.move (.generated .binding 3)), (.call (.function 15) [(.move (.generated .binding 1)), (.copy (.generated .binding 2))] false)] false)))]), [(1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 1))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 14) [(.move (.generated .binding 3)), (.call (.function 15) [(.move (.generated .binding 1)), (.copy (.generated .binding 2))] false)] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ + +theorem fun15 : FunOK program krate flags 15 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 39)) none (.clone (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 39)) [(.mk .none (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil .nat) [])]))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 42)) none (.block (.mk [(.mk (.bind (.generated .operand 40)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 41)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 40)), (.move (.generated .operand 41))] false))))] (.matchOn (.move (.generated .holder 42)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 15) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])))]), [(1, .nat, (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil .nat) [])])) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 42)) none (.block (.mk [(.mk (.bind (.generated .operand 40)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 41)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 40)), (.move (.generated .operand 41))] false))))]) (tail := (.matchOn (.move (.generated .holder 42)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 15) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 40)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 41)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 40)), (.move (.generated .operand 41))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))])) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.move (.generated .binding 0))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 15) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun16 : FunOK program krate flags 16 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some (.list .nat)) (.call (.function 21) [(.clone (.generated .binding 0)), (.construct (.nil .nat) [])] false))], (.succeed (.call (.function 17) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.bind (.generated .operand 43)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthList) [(.move (.generated .operand 43))] false)))), (.mk (.bind (.generated .operand 45)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 44)), (.move (.generated .operand 45))] true))), (.move (.generated .binding 1)), (.construct (.nil .nat) [])] false)), [(0, (.list (.pair .nat (.list .nat))), (some 0))], rfl, rfl, + (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl (Corr.fOfB (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), .nat, (.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.bind (.generated .operand 43)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthList) [(.move (.generated .operand 43))] false)))), (.mk (.bind (.generated .operand 45)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 44)), (.move (.generated .operand 45))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 43)) none (.clone (.generated .binding 1)))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 43))] false)) (Corr.prim (ts := [(.list .nat)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))))) rfl rfl rfl rfl rfl)))⟩⟩ + +theorem fun17 : FunOK program krate flags 17 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 46)) none (.copy (.generated .binding 1)))], (.cond (.isZero (.generated .holder 46)) (.mk [(.mk (.bind (.generated .holder 47)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 47)) [(.mk .none (.mk [] (.construct .some [(.call (.function 20) [(.move (.generated .binding 3)), (.construct (.nil .nat) [])] false)]))), (.mk (.some (.tuple [.wild, .wild])) (.mk [] (.construct (.none (.list .nat)) [])))])) (.mk [(.mk (.bind (.generated .binding 6)) none (.predecessor (.generated .holder 46))), (.mk (.bind (.generated .holder 48)) none (.call (.function 18) [(.clone (.generated .binding 0)), (.clone (.generated .binding 2)), (.clone (.generated .binding 2))] false))] (.matchOn (.uncons (.generated .holder 48)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 49)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 49)) [(.mk .none (.mk [] (.construct .some [(.call (.function 20) [(.move (.generated .binding 3)), (.construct (.nil .nat) [])] false)]))), (.mk (.some (.tuple [.wild, .wild])) (.mk [] (.construct (.none (.list .nat)) [])))]))), (.mk (.some (.tuple [(.bind (.generated .binding 9)), .wild])) (.mk [] (.call (.function 17) [(.move (.generated .binding 0)), (.copy (.generated .binding 6)), (.call (.function 27) [(.move (.generated .binding 2)), (.copy (.generated .binding 9))] false), (.construct .cons [(.copy (.generated .binding 9)), (.move (.generated .binding 3))])] false)))]))), [(3, (.list .nat), (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))], rfl, rfl, + (Corr.matchNat (sl := (some 6)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := [(.mk (.bind (.generated .holder 47)) none (.move (.generated .binding 2)))]) (ta := (.matchOn (.uncons (.generated .holder 47)) [(.mk .none (.mk [] (.construct .some [(.call (.function 20) [(.move (.generated .binding 3)), (.construct (.nil .nat) [])] false)]))), (.mk (.some (.tuple [.wild, .wild])) (.mk [] (.construct (.none (.list .nat)) [])))])) (lb := [(.mk (.bind (.generated .holder 48)) none (.call (.function 18) [(.clone (.generated .binding 0)), (.clone (.generated .binding 2)), (.clone (.generated .binding 2))] false))]) (tb := (.matchOn (.uncons (.generated .holder 48)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 49)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 49)) [(.mk .none (.mk [] (.construct .some [(.call (.function 20) [(.move (.generated .binding 3)), (.construct (.nil .nat) [])] false)]))), (.mk (.some (.tuple [.wild, .wild])) (.mk [] (.construct (.none (.list .nat)) [])))]))), (.mk (.some (.tuple [(.bind (.generated .binding 9)), .wild])) (.mk [] (.call (.function 17) [(.move (.generated .binding 0)), (.copy (.generated .binding 6)), (.call (.function 27) [(.move (.generated .binding 2)), (.copy (.generated .binding 9))] false), (.construct .cons [(.copy (.generated .binding 9)), (.move (.generated .binding 3))])] false)))])) (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.call (.function 20) [(.move (.generated .binding 3)), (.construct (.nil .nat) [])] false)])) (Corr.mCons (Γ' := [(5, (.list .nat), none), (4, .nat, none), (3, (.list .nat), (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct (.none (.list .nat)) [])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl (Corr.build (ts := [(.list .nat)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) rfl rfl rfl) (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), (.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(6, .nat, (some 6)), (3, (.list .nat), (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .holder 49)) none (.move (.generated .binding 2)))]) (tail := (.matchOn (.uncons (.generated .holder 49)) [(.mk .none (.mk [] (.construct .some [(.call (.function 20) [(.move (.generated .binding 3)), (.construct (.nil .nat) [])] false)]))), (.mk (.some (.tuple [.wild, .wild])) (.mk [] (.construct (.none (.list .nat)) [])))])) (Corr.mCons (Γ' := [(10, (.list .nat), none), (9, .nat, (some 9)), (6, .nat, (some 6)), (3, (.list .nat), (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 17) [(.move (.generated .binding 0)), (.copy (.generated .binding 6)), (.call (.function 27) [(.move (.generated .binding 2)), (.copy (.generated .binding 9))] false), (.construct .cons [(.copy (.generated .binding 9)), (.move (.generated .binding 3))])] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), .nat, (.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) (Corr.lNil)))))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(6, .nat, (some 6)), (3, (.list .nat), (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.call (.function 20) [(.move (.generated .binding 3)), (.construct (.nil .nat) [])] false)])) (Corr.mCons (Γ' := [(8, (.list .nat), none), (7, .nat, none), (6, .nat, (some 6)), (3, (.list .nat), (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct (.none (.list .nat)) [])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl (Corr.build (ts := [(.list .nat)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) rfl rfl rfl)) rfl rfl rfl)))⟩⟩ + +theorem fun18 : FunOK program krate flags 18 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 50)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 50)) [(.mk .none (.mk [] (.construct (.nil .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.cond (.call (.function 19) [(.clone (.generated .binding 0)), (.copy (.generated .binding 3)), (.clone (.generated .binding 1))] false) (.mk [] (.construct .cons [(.copy (.generated .binding 3)), (.call (.function 18) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false)])) (.mk [] (.call (.function 18) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false)))))]), [(2, (.list .nat), (some 2)), (1, (.list .nat), (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .nat), (some 2)), (1, (.list .nat), (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.nil .nat) [])) (Corr.mCons (Γ' := [(4, (.list .nat), (some 4)), (3, .nat, (some 3)), (2, (.list .nat), (some 2)), (1, (.list .nat), (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 19) [(.clone (.generated .binding 0)), (.copy (.generated .binding 3)), (.clone (.generated .binding 1))] false) (.mk [] (.construct .cons [(.copy (.generated .binding 3)), (.call (.function 18) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false)])) (.mk [] (.call (.function 18) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false)))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 19) [(.clone (.generated .binding 0)), (.copy (.generated .binding 3)), (.clone (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), .nat, (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .cons [(.copy (.generated .binding 3)), (.call (.function 18) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false)])) (lb := []) (tb := (.call (.function 18) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false)) (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), (.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl) (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), (.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)))) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun19 : FunOK program krate flags 19 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 51)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 51)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.cond (.call (.function 26) [(.call (.function 24) [(.clone (.generated .binding 0)), (.copy (.generated .binding 3))] false), (.copy (.generated .binding 1))] false) (.mk [] (.lit (.bool false))) (.mk [] (.call (.function 19) [(.move (.generated .binding 0)), (.copy (.generated .binding 1)), (.move (.generated .binding 4))] false)))))]), [(2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list .nat), (some 4)), (3, .nat, (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 26) [(.call (.function 24) [(.clone (.generated .binding 0)), (.copy (.generated .binding 3))] false), (.copy (.generated .binding 1))] false) (.mk [] (.lit (.bool false))) (.mk [] (.call (.function 19) [(.move (.generated .binding 0)), (.copy (.generated .binding 1)), (.move (.generated .binding 4))] false)))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 26) [(.call (.function 24) [(.clone (.generated .binding 0)), (.copy (.generated .binding 3))] false), (.copy (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool false))) (lb := []) (tb := (.call (.function 19) [(.move (.generated .binding 0)), (.copy (.generated .binding 1)), (.move (.generated .binding 4))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), .nat, (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ + +theorem fun20 : FunOK program krate flags 20 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 52)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 52)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.call (.function 20) [(.move (.generated .binding 3)), (.construct .cons [(.copy (.generated .binding 2)), (.move (.generated .binding 1))])] false)))]), [(1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 1))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 20) [(.move (.generated .binding 3)), (.construct .cons [(.copy (.generated .binding 2)), (.move (.generated .binding 1))])] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ + +theorem fun21 : FunOK program krate flags 21 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 53)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 53)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.call (.function 21) [(.move (.generated .binding 3)), (.call (.function 22) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 54))]) none (.move (.generated .binding 2)))] (.move (.generated .part 54)))), (.call (.function 23) [(.move (.generated .binding 1)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 55)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 55))))] false)] false)] false)))]), [(1, (.list .nat), (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.pair .nat (.list .nat)))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.list .nat), (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 1))) (Corr.mCons (Γ' := [(3, (.list (.pair .nat (.list .nat))), (some 3)), (2, (.pair .nat (.list .nat)), (some 2)), (1, (.list .nat), (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 21) [(.move (.generated .binding 3)), (.call (.function 22) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 54))]) none (.move (.generated .binding 2)))] (.move (.generated .part 54)))), (.call (.function 23) [(.move (.generated .binding 1)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 55)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 55))))] false)] false)] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 54))]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 54))) (Corr.second (ta := .nat) (tb := (.list .nat)) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 55)), .wild]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 55))) (Corr.first (ta := .nat) (tb := (.list .nat)) (Corr.var rfl rfl) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ + +theorem fun22 : FunOK program krate flags 22 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 56)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 56)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.call (.function 22) [(.move (.generated .binding 3)), (.call (.function 23) [(.move (.generated .binding 1)), (.copy (.generated .binding 2))] false)] false)))]), [(1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 1))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 22) [(.move (.generated .binding 3)), (.call (.function 23) [(.move (.generated .binding 1)), (.copy (.generated .binding 2))] false)] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ + +theorem fun23 : FunOK program krate flags 23 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 57)) none (.clone (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 57)) [(.mk .none (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil .nat) [])]))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 60)) none (.block (.mk [(.mk (.bind (.generated .operand 58)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 59)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 58)), (.move (.generated .operand 59))] false))))] (.matchOn (.move (.generated .holder 60)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 23) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])))]), [(1, .nat, (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil .nat) [])])) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 60)) none (.block (.mk [(.mk (.bind (.generated .operand 58)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 59)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 58)), (.move (.generated .operand 59))] false))))]) (tail := (.matchOn (.move (.generated .holder 60)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 23) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 58)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 59)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 58)), (.move (.generated .operand 59))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))])) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.move (.generated .binding 0))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 23) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun24 : FunOK program krate flags 24 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 61)) none (.call (.function 25) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false))], (.matchOn (.move (.generated .holder 61)) [(.mk .none (.mk [] (.construct (.nil .nat) []))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.move (.generated .binding 2))))]), [(1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option (.list .nat))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.nil .nat) [])) (Corr.mCons (Γ' := [(2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.move (.generated .binding 2))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun25 : FunOK program krate flags 25 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 62)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 62)) [(.mk .none (.mk [] (.construct (.none (.list .nat)) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 66)) none (.block (.mk [(.mk (.bind (.generated .operand 64)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 65)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 63)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 63)))))] (.call (.runtime .compare) [(.move (.generated .operand 64)), (.move (.generated .operand 65))] false))))] (.matchOn (.move (.generated .holder 66)) [(.mk (.ordering .less) (.mk [] (.construct (.none (.list .nat)) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 67))]) none (.move (.generated .binding 2)))] (.move (.generated .part 67))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 25) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]), [(1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.pair .nat (.list .nat)))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none (.list .nat)) [])) (Corr.mCons (Γ' := [(3, (.list (.pair .nat (.list .nat))), (some 3)), (2, (.pair .nat (.list .nat)), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 66)) none (.block (.mk [(.mk (.bind (.generated .operand 64)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 65)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 63)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 63)))))] (.call (.runtime .compare) [(.move (.generated .operand 64)), (.move (.generated .operand 65))] false))))]) (tail := (.matchOn (.move (.generated .holder 66)) [(.mk (.ordering .less) (.mk [] (.construct (.none (.list .nat)) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 67))]) none (.move (.generated .binding 2)))] (.move (.generated .part 67))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 25) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 64)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 65)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 63)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 63)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 64)), (.move (.generated .operand 65))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 63)), .wild]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 63))) (Corr.first (ta := .nat) (tb := (.list .nat)) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list (.pair .nat (.list .nat))), (some 3)), (2, (.pair .nat (.list .nat)), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none (.list .nat)) [])) (Corr.mCons (Γ' := [(3, (.list (.pair .nat (.list .nat))), (some 3)), (2, (.pair .nat (.list .nat)), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 67))]) none (.move (.generated .binding 2)))] (.move (.generated .part 67))))])) (Corr.mCons (Γ' := [(3, (.list (.pair .nat (.list .nat))), (some 3)), (2, (.pair .nat (.list .nat)), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.call (.function 25) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := [(.list .nat)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 67))]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 67))) (Corr.second (ta := .nat) (tb := (.list .nat)) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun26 : FunOK program krate flags 26 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 68)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 68)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 71)) none (.block (.mk [(.mk (.bind (.generated .operand 69)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 70)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 69)), (.move (.generated .operand 70))] false))))] (.matchOn (.move (.generated .holder 71)) [(.mk (.ordering .less) (.mk [] (.lit (.bool false)))), (.mk (.ordering .same) (.mk [] (.lit (.bool true)))), (.mk (.ordering .more) (.mk [] (.call (.function 26) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]), [(1, .nat, (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 71)) none (.block (.mk [(.mk (.bind (.generated .operand 69)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 70)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 69)), (.move (.generated .operand 70))] false))))]) (tail := (.matchOn (.move (.generated .holder 71)) [(.mk (.ordering .less) (.mk [] (.lit (.bool false)))), (.mk (.ordering .same) (.mk [] (.lit (.bool true)))), (.mk (.ordering .more) (.mk [] (.call (.function 26) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 69)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 70)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 69)), (.move (.generated .operand 70))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.call (.function 26) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ + +theorem fun27 : FunOK program krate flags 27 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 72)) none (.clone (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 72)) [(.mk .none (.mk [] (.construct (.nil .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 75)) none (.block (.mk [(.mk (.bind (.generated .operand 73)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 74)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 73)), (.move (.generated .operand 74))] false))))] (.matchOn (.move (.generated .holder 75)) [(.mk (.ordering .less) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 3)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 27) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])))]), [(1, .nat, (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.nil .nat) [])) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 75)) none (.block (.mk [(.mk (.bind (.generated .operand 73)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 74)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 73)), (.move (.generated .operand 74))] false))))]) (tail := (.matchOn (.move (.generated .holder 75)) [(.mk (.ordering .less) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 3)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 27) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 73)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 74)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 73)), (.move (.generated .operand 74))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 0))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.move (.generated .binding 3))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 27) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun28 : FunOK program krate flags 28 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 76)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 76)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 29) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 77))]) none (.move (.generated .binding 1)))] (.move (.generated .part 77))))] false) (.mk [(.mk (.bind (.generated .holder 78)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 78)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 83)) none (.block (.mk [(.mk (.bind (.generated .operand 81)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 79)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 79))))), (.mk (.bind (.generated .operand 82)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 80)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 80)))))] (.call (.runtime .compare) [(.move (.generated .operand 81)), (.move (.generated .operand 82))] false))))] (.cond (.matchOn (.move (.generated .holder 83)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 28) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]), [(0, (.list (.pair .nat (.list .nat))), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.pair .nat (.list .nat)))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, (.list (.pair .nat (.list .nat))), (some 2)), (1, (.pair .nat (.list .nat)), (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 29) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 77))]) none (.move (.generated .binding 1)))] (.move (.generated .part 77))))] false) (.mk [(.mk (.bind (.generated .holder 78)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 78)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 83)) none (.block (.mk [(.mk (.bind (.generated .operand 81)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 79)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 79))))), (.mk (.bind (.generated .operand 82)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 80)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 80)))))] (.call (.runtime .compare) [(.move (.generated .operand 81)), (.move (.generated .operand 82))] false))))] (.cond (.matchOn (.move (.generated .holder 83)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 28) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 29) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 77))]) none (.move (.generated .binding 1)))] (.move (.generated .part 77))))] false)) (lk := []) (Corr.callOps (ts := [(.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 77))]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 77))) (Corr.second (ta := .nat) (tb := (.list .nat)) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .holder 78)) none (.clone (.generated .binding 2)))]) (ta := (.matchOn (.uncons (.generated .holder 78)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 83)) none (.block (.mk [(.mk (.bind (.generated .operand 81)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 79)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 79))))), (.mk (.bind (.generated .operand 82)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 80)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 80)))))] (.call (.runtime .compare) [(.move (.generated .operand 81)), (.move (.generated .operand 82))] false))))] (.cond (.matchOn (.move (.generated .holder 83)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 28) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (lb := []) (tb := (.lit (.bool false))) (Corr.matchArms (st := (.list (.pair .nat (.list .nat)))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.pair .nat (.list .nat))), (some 2)), (1, (.pair .nat (.list .nat)), (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair .nat (.list .nat))), none), (3, (.pair .nat (.list .nat)), (some 3)), (2, (.list (.pair .nat (.list .nat))), (some 2)), (1, (.pair .nat (.list .nat)), (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 83)) none (.block (.mk [(.mk (.bind (.generated .operand 81)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 79)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 79))))), (.mk (.bind (.generated .operand 82)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 80)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 80)))))] (.call (.runtime .compare) [(.move (.generated .operand 81)), (.move (.generated .operand 82))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 83)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 28) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .holder 83)) none (.block (.mk [(.mk (.bind (.generated .operand 81)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 79)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 79))))), (.mk (.bind (.generated .operand 82)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 80)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 80)))))] (.call (.runtime .compare) [(.move (.generated .operand 81)), (.move (.generated .operand 82))] false))))]) (ce := (.matchOn (.move (.generated .holder 83)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 81)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 79)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 79))))), (.mk (.bind (.generated .operand 82)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 80)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 80)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 81)), (.move (.generated .operand 82))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 79)), .wild]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 79))) (Corr.first (ta := .nat) (tb := (.list .nat)) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 80)), .wild]) none (.move (.generated .binding 3)))]) (tail := (.move (.generated .part 80))) (Corr.first (ta := .nat) (tb := (.list .nat)) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.list (.pair .nat (.list .nat))), none), (3, (.pair .nat (.list .nat)), (some 3)), (2, (.list (.pair .nat (.list .nat))), (some 2)), (1, (.pair .nat (.list .nat)), (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair .nat (.list .nat))), none), (3, (.pair .nat (.list .nat)), (some 3)), (2, (.list (.pair .nat (.list .nat))), (some 2)), (1, (.pair .nat (.list .nat)), (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, (.list (.pair .nat (.list .nat))), none), (3, (.pair .nat (.list .nat)), (some 3)), (2, (.list (.pair .nat (.list .nat))), (some 2)), (1, (.pair .nat (.list .nat)), (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 28) [(.move (.generated .binding 2))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.list (.pair .nat (.list .nat)))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ + +theorem fun29 : FunOK program krate flags 29 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 84)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 84)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [(.mk (.bind (.generated .holder 85)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 85)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 88)) none (.block (.mk [(.mk (.bind (.generated .operand 86)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 87)) none (.copy (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 86)), (.move (.generated .operand 87))] false))))] (.cond (.matchOn (.move (.generated .holder 88)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 29) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])))]), [(0, (.list .nat), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 85)) none (.clone (.generated .binding 2)))]) (tail := (.matchOn (.uncons (.generated .holder 85)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 88)) none (.block (.mk [(.mk (.bind (.generated .operand 86)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 87)) none (.copy (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 86)), (.move (.generated .operand 87))] false))))] (.cond (.matchOn (.move (.generated .holder 88)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 29) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list .nat), none), (3, .nat, (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 88)) none (.block (.mk [(.mk (.bind (.generated .operand 86)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 87)) none (.copy (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 86)), (.move (.generated .operand 87))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 88)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 29) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .holder 88)) none (.block (.mk [(.mk (.bind (.generated .operand 86)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 87)) none (.copy (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 86)), (.move (.generated .operand 87))] false))))]) (ce := (.matchOn (.move (.generated .holder 88)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 86)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 87)) none (.copy (.generated .binding 3)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 86)), (.move (.generated .operand 87))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.list .nat), none), (3, .nat, (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list .nat), none), (3, .nat, (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, (.list .nat), none), (3, .nat, (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 29) [(.move (.generated .binding 2))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ + +theorem fun30 : FunOK program krate flags 30 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 28) [(.clone (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] true)]))) (.mk [] (.succeed (.construct (.none (.pair (.list .nat) (.pair (.list .nat) (.option (.list .nat))))) [])))), [(1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 28) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.list (.pair .nat (.list .nat)))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] true)]))) (lb := []) (tb := (.succeed (.construct (.none (.pair (.list .nat) (.pair (.list .nat) (.option (.list .nat))))) []))) (Corr.fOfB (Corr.build (ts := [(.pair (.list .nat) (.pair (.list .nat) (.option (.list .nat))))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | 3 => exact fun3 + | 4 => exact fun4 + | 5 => exact fun5 + | 6 => exact fun6 + | 7 => exact fun7 + | 8 => exact fun8 + | 9 => exact fun9 + | 10 => exact fun10 + | 11 => exact fun11 + | 12 => exact fun12 + | 13 => exact fun13 + | 14 => exact fun14 + | 15 => exact fun15 + | 16 => exact fun16 + | 17 => exact fun17 + | 18 => exact fun18 + | 19 => exact fun19 + | 20 => exact fun20 + | 21 => exact fun21 + | 22 => exact fun22 + | 23 => exact fun23 + | 24 => exact fun24 + | 25 => exact fun25 + | 26 => exact fun26 + | 27 => exact fun27 + | 28 => exact fun28 + | 29 => exact fun29 + | 30 => exact fun30 + | _ + 31 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R7.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R7.lean new file mode 100644 index 000000000..3971c9ce8 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R7.lean @@ -0,0 +1,124 @@ +import LexLeanPreservation.Core +import LexLeanPreservation.Values +import LexLeanPreservation.Primitives +import LexLeanPreservation.Fixed +import LexLeanPreservation.Keys +import LexLeanPreservation.Templates +import LexLeanPreservation.Validate +import Coverage.Boundary +import Coverage.Colls +import Coverage.Main +import Coverage.Prims +import Coverage.RecRoots +import Coverage.Recur +import Coverage.Syntax +import Coverage.Types +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +set_option linter.unusedVariables false +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7 + +def __prog : _root_.LexLeanTarget.TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0], types := [(.list (.pair .string (.list .string)))], result := (.option (.list .string)), + body := (.call 1 [(.var 0)]) }, + { parameters := [0], types := [(.list (.pair .string (.list .string)))], result := (.option (.list .string)), + body := (.«let» 1 (.list .string) (.call 6 [(.var 0), (.build .nil (.list .string) [])]) (.call 2 [(.var 0), (.prim .natAdd [(.prim .length [(.var 1)]), (.value .nat (.nat 1))]), (.var 1), (.build .nil (.list .string) [])])) }, + { parameters := [0, 1, 2, 3], types := [(.list (.pair .string (.list .string))), .nat, (.list .string), (.list .string)], result := (.option (.list .string)), + body := (.«match» (.option (.list .string)) (.var 1) [(.arm .zero [] (.«match» (.option (.list .string)) (.var 2) [(.arm .nil [] (.build .some (.option (.list .string)) [(.call 5 [(.var 3), (.build .nil (.list .string) [])])])), (.arm .cons [4, 5] (.build .none (.option (.list .string)) []))])), (.arm .succ [6] (.«match» (.option (.list .string)) (.call 3 [(.var 0), (.var 2), (.var 2)]) [(.arm .nil [] (.«match» (.option (.list .string)) (.var 2) [(.arm .nil [] (.build .some (.option (.list .string)) [(.call 5 [(.var 3), (.build .nil (.list .string) [])])])), (.arm .cons [7, 8] (.build .none (.option (.list .string)) []))])), (.arm .cons [9, 10] (.call 2 [(.var 0), (.var 6), (.call 12 [(.var 2), (.var 9)]), (.build .cons (.list .string) [(.var 9), (.var 3)])]))]))]) }, + { parameters := [0, 1, 2], types := [(.list (.pair .string (.list .string))), (.list .string), (.list .string)], result := (.list .string), + body := (.«match» (.list .string) (.var 2) [(.arm .nil [] (.build .nil (.list .string) [])), (.arm .cons [3, 4] (.cond (.call 4 [(.var 0), (.var 3), (.var 1)]) (.build .cons (.list .string) [(.var 3), (.call 3 [(.var 0), (.var 1), (.var 4)])]) (.call 3 [(.var 0), (.var 1), (.var 4)])))]) }, + { parameters := [0, 1, 2], types := [(.list (.pair .string (.list .string))), .string, (.list .string)], result := .bool, + body := (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.call 11 [(.call 9 [(.var 0), (.var 3)]), (.var 1)]) (.build .false .bool []) (.call 4 [(.var 0), (.var 1), (.var 4)])))]) }, + { parameters := [0, 1], types := [(.list .string), (.list .string)], result := (.list .string), + body := (.«match» (.list .string) (.var 0) [(.arm .nil [] (.var 1)), (.arm .cons [2, 3] (.call 5 [(.var 3), (.build .cons (.list .string) [(.var 2), (.var 1)])]))]) }, + { parameters := [0, 1], types := [(.list (.pair .string (.list .string))), (.list .string)], result := (.list .string), + body := (.«match» (.list .string) (.var 0) [(.arm .nil [] (.var 1)), (.arm .cons [2, 3] (.call 6 [(.var 3), (.call 7 [(.second (.var 2)), (.call 8 [(.var 1), (.first (.var 2))])])]))]) }, + { parameters := [0, 1], types := [(.list .string), (.list .string)], result := (.list .string), + body := (.«match» (.list .string) (.var 0) [(.arm .nil [] (.var 1)), (.arm .cons [2, 3] (.call 7 [(.var 3), (.call 8 [(.var 1), (.var 2)])]))]) }, + { parameters := [0, 1], types := [(.list .string), .string], result := (.list .string), + body := (.«match» (.list .string) (.var 0) [(.arm .nil [] (.build .cons (.list .string) [(.var 1), (.build .nil (.list .string) [])])), (.arm .cons [2, 3] (.«match» (.list .string) (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .cons (.list .string) [(.var 1), (.var 0)])), (.arm .eq [] (.var 0)), (.arm .gt [] (.build .cons (.list .string) [(.var 2), (.call 8 [(.var 3), (.var 1)])]))]))]) }, + { parameters := [0, 1], types := [(.list (.pair .string (.list .string))), .string], result := (.list .string), + body := (.«match» (.list .string) (.call 10 [(.var 0), (.var 1)]) [(.arm .none [] (.build .nil (.list .string) [])), (.arm .some [2] (.var 2))]) }, + { parameters := [0, 1], types := [(.list (.pair .string (.list .string))), .string], result := (.option (.list .string)), + body := (.«match» (.option (.list .string)) (.var 0) [(.arm .nil [] (.build .none (.option (.list .string)) [])), (.arm .cons [2, 3] (.«match» (.option (.list .string)) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.build .none (.option (.list .string)) [])), (.arm .eq [] (.build .some (.option (.list .string)) [(.second (.var 2))])), (.arm .gt [] (.call 10 [(.var 3), (.var 1)]))]))]) }, + { parameters := [0, 1], types := [(.list .string), .string], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .false .bool [])), (.arm .cons [2, 3] (.«match» .bool (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .false .bool [])), (.arm .eq [] (.build .true .bool [])), (.arm .gt [] (.call 11 [(.var 3), (.var 1)]))]))]) }, + { parameters := [0, 1], types := [(.list .string), .string], result := (.list .string), + body := (.«match» (.list .string) (.var 0) [(.arm .nil [] (.build .nil (.list .string) [])), (.arm .cons [2, 3] (.«match» (.list .string) (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.var 0)), (.arm .eq [] (.var 3)), (.arm .gt [] (.build .cons (.list .string) [(.var 2), (.call 12 [(.var 3), (.var 1)])]))]))]) }, + { parameters := [0], types := [(.list (.pair .string (.list .string)))], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 14 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 13 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, + { parameters := [0], types := [(.list .string)], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.var 1), (.var 3)]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 14 [(.var 2)]) (.build .false .bool [])))]))]) }, + { parameters := [0], types := [(.list (.pair .string (.list .string)))], result := (.option (.option (.list .string))), + body := (.cond (.call 13 [(.var 0)]) (.build .some (.option (.option (.list .string))) [(.call 0 [(.var 0)])]) (.build .none (.option (.option (.list .string))) [])) }] } + +def __fits_0 (g : (List (Prod String (List String)))) : Bool := + ((Bool.true && Bool.true) && (_root_.LexLeanPreservation.graphFits _root_.LexLeanCollections.insertElement (g))) + +theorem __rel_0 (g : (List (Prod String (List String)))) : _root_.LexLeanPreservation.FunRel __prog 0 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.string))) g)] (_root_.LexLeanPreservation.Rel (__fits_0 g) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.string)) (Coverage.Colls.stringGraph g))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.tpl_graphTopological (_root_.LexLeanPreservation.keySpec_string _root_.LexLeanCollections.compareCodes rfl (fun _ _ => rfl) (fun _ _ => rfl) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.string) (fun _ => rfl) (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.string))) (fun _ => rfl) (_root_.LexLeanPreservation.optEnc (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.string)) (fun _ => rfl) (⟨(fun _ => rfl), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.insertElement, __h]), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.insertElement, __h]), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.insertElement, __h]), (fun _ => rfl), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.removeElement, __h]), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.removeElement, __h]), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.removeElement, __h]), (fun _ => rfl), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.containsElement, __h]), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.containsElement, __h]), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.containsElement, __h])⟩ : _root_.LexLeanPreservation.SetOps (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) _root_.LexLeanCollections.insertElement _root_.LexLeanCollections.removeElement _root_.LexLeanCollections.containsElement) (⟨(fun _ => rfl), (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]), (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]), (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h])⟩ : _root_.LexLeanPreservation.LookOps (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) (_root_.LexLeanCollections.lookupEntry : String -> List (Prod String (List String)) -> Option (List String))) (g) (_root_.LexLeanCollections.graphSuccessors (g)) (fun _ => rfl) (⟨(fun _ => rfl), (fun _ _ _ => rfl), (fun _ _ => rfl), (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.topological, __h] <;> rfl), (fun _ _ _ _ _ __h => by simp only [_root_.LexLeanCollections.topological, __h])⟩ : _root_.LexLeanPreservation.TopoOps (_root_.LexLeanCollections.graphSuccessors (g)) _root_.LexLeanCollections.containsElement _root_.LexLeanCollections.removeElement (_root_.LexLeanCollections.topological (g))) (p := __prog) (fi := 1) (tk := .string) rfl rfl rfl rfl rfl rfl rfl rfl rfl rfl rfl rfl)) + +def denote (g : (List (Prod String (List String)))) : _root_.LexLeanPreservation.Obs := + _root_.cond (__fits_0 g) (_root_.LexLeanPreservation.Obs.value (((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.string)) (Coverage.Colls.stringGraph g)))) _root_.LexLeanPreservation.Obs.overflow + +theorem root (g : (List (Prod String (List String)))) : _root_.LexLeanPreservation.RunConv __prog 0 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.string))) g)] (_root_.LexLeanPreservation.Rel (__fits_0 g) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.string)) (Coverage.Colls.stringGraph g))) := + _root_.LexLeanPreservation.run_of_funRel (__rel_0 g) + +def __valid_14 : (List String) -> Bool := + _root_.LexLeanPreservation.ascSet (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) + +def __inv_14 : (List String) -> Prop := + _root_.LexLeanPreservation.InvSet (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) + +theorem __viff_14 : ∀ (__v : (List String)), __valid_14 __v = Bool.true ↔ __inv_14 __v := + _root_.LexLeanPreservation.ascSet_inv (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) + +theorem __vrel_14 : ∀ (__v : (List String)), _root_.LexLeanPreservation.FunRel __prog 14 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.string) __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_14 __v))) := + _root_.LexLeanPreservation.tpl_validSet (_root_.LexLeanPreservation.keySpec_string _root_.LexLeanCollections.compareCodes rfl (fun _ _ => rfl) (fun _ _ => rfl) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.string) (fun _ => rfl) rfl + +def __valid_13 : (List (Prod String (List String))) -> Bool := + _root_.LexLeanPreservation.ascMap (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) __valid_14 + +def __inv_13 : (List (Prod String (List String))) -> Prop := + _root_.LexLeanPreservation.InvMap (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) __inv_14 + +theorem __viff_13 : ∀ (__v : (List (Prod String (List String)))), __valid_13 __v = Bool.true ↔ __inv_13 __v := + _root_.LexLeanPreservation.ascMap_inv (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) __valid_14 __inv_14 __viff_14 + +theorem __vrel_13 : ∀ (__v : (List (Prod String (List String)))), _root_.LexLeanPreservation.FunRel __prog 13 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.string))) __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_13 __v))) := + _root_.LexLeanPreservation.tpl_validMap (_root_.LexLeanPreservation.keySpec_string _root_.LexLeanCollections.compareCodes rfl (fun _ _ => rfl) (fun _ _ => rfl) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) (fun _ _ => rfl)) __valid_14 (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.string))) (fun _ => rfl) __vrel_14 rfl + +def entryFits (g : (List (Prod String (List String)))) : Bool := + (if __valid_13 g then __fits_0 g else Bool.true) + +def entryValue (g : (List (Prod String (List String)))) : _root_.LexLeanTarget.TargetSyntax.Value := + (if __valid_13 g then (_root_.LexLeanTarget.TargetSyntax.Value.some ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.string)) (Coverage.Colls.stringGraph g))) else _root_.LexLeanTarget.TargetSyntax.Value.none) + +/-- The entry's observation. -/ +def denoteEntry (g : (List (Prod String (List String)))) : _root_.LexLeanPreservation.Obs := + _root_.cond (_root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.entryFits g) (_root_.LexLeanPreservation.Obs.value (_root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.entryValue g)) _root_.LexLeanPreservation.Obs.overflow + +/-- §17.12's invariants of the validated parameters. -/ +def accepts (g : (List (Prod String (List String)))) : Prop := + (__inv_13 g ∧ _root_.True) + +theorem entry (g : (List (Prod String (List String)))) : _root_.LexLeanPreservation.RunConv __prog 15 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.string))) g)] (_root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.denoteEntry g) := + _root_.LexLeanPreservation.run_of_funRel (_root_.LexLeanPreservation.FunRel.fits_eq (_root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun __c => if __c then __fits_0 g else Bool.true) (fun __c => if __c then (_root_.LexLeanTarget.TargetSyntax.Value.some ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.string)) (Coverage.Colls.stringGraph g))) else _root_.LexLeanTarget.TargetSyntax.Value.none) (__valid_13 g) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_13 g)) (fun _ => _root_.LexLeanPreservation.Conv.fits_eq (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_0 g)) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some) (by simp)) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (by simp [_root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.entryFits])) + +theorem entry_accepts (g : (List (Prod String (List String)))) (__h : _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.accepts g) : _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.denoteEntry g = _root_.LexLeanPreservation.someObs (_root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.denote g) := by + unfold _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.accepts at __h + unfold _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.denoteEntry _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.entryFits _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.entryValue _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.denote + simp only [_root_.if_true, (__viff_13 g).mpr __h.1] + cases __fits_0 g <;> rfl + +theorem entry_refuses (g : (List (Prod String (List String)))) (__h : ¬ _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.accepts g) : _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.denoteEntry g = _root_.LexLeanPreservation.Obs.value _root_.LexLeanTarget.TargetSyntax.Value.none := by + unfold _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.accepts at __h + unfold _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.denoteEntry _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.entryFits _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.entryValue + cases __c0 : __valid_13 g + · simp + · exact _root_.absurd ⟨(__viff_13 g).mp __c0, _root_.trivial⟩ __h + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7 diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R7/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R7/Compose/RustStd.lex.tex new file mode 100644 index 000000000..cdf5ac4e1 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R7/Compose/RustStd.lex.tex @@ -0,0 +1,626 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.Compose.RustStd.root : @1256 := @1257 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.RustStd.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.RustStd.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.RustStd.flags +@3 := String +@4 := List.{0} +@5 := @4 @3 +@6 := Prod.{0, 0} +@7 := @6 @3 +@8 := @7 @5 +@9 := @4 @8 +@10 := #1 +@11 := LexLeanTarget.TargetSyntax.Value.string +@12 := LexLeanPreservation.encList +@13 := @12 @3 +@14 := @13 @11 +@15 := LexLeanPreservation.encPair +@16 := @15 @3 +@17 := @16 @5 +@18 := @17 @11 +@19 := @18 @14 +@20 := @12 @8 +@21 := @20 @19 +@22 := @21 @10 +@23 := LexLeanTarget.TargetSyntax.Ty.string +@24 := LexLeanTarget.TargetSyntax.Ty.list +@25 := @24 @23 +@26 := LexLeanTarget.TargetSyntax.Ty.pair +@27 := @26 @23 +@28 := @27 @25 +@29 := @24 @28 +@30 := #0 +@31 := LexLeanTarget.TargetSyntax.Program +@32 := LexLeanPreservation.Rust.RCrate +@33 := LexLeanPreservation.Rust.Flags +@34 := LexLeanPreservation.Rust.WT +@35 := #3 +@36 := @34 @35 +@37 := #2 +@39 := @36 @37 @10 +@40 := @11 @30 +@46 := {p : @31} -> {c : @32} -> {A : @33} -> (s : @3) -> @39 @40 @23 +@48 := LexLeanPreservation.Rust.wt_string @0 +@49 := @34 @0 +@56 := {c : @32} -> {A : @33} -> (s : @3) -> @49 @37 @10 @40 @23 +@57 := @48 @1 +@58 := @49 @1 +@63 := {A : @33} -> (s : @3) -> @58 @10 @40 @23 +@64 := @57 @2 +@65 := @58 @2 +@66 := @65 @40 +@67 := @66 @23 +@68 := (s : @3) -> @67 +@70 := fun (__x : @3) => @64 @30 +@71 := Sort 1 +@72 := LexLeanTarget.TargetSyntax.Value +@73 := (a._@._internal._hyg.#0 : @30) -> @72 +@74 := LexLeanTarget.TargetSyntax.Ty +@75 := #6 +@76 := @34 @75 +@77 := #5 +@78 := @76 @77 +@79 := #4 +@80 := @78 @79 +@81 := @37 @30 +@84 := (x : @37) -> @80 @81 @10 +@85 := @4 @35 +@86 := #7 +@89 := @34 @86 @75 @77 +@92 := @12 @79 @35 @30 +@93 := @89 @92 +@94 := @24 @37 +@103 := {p : @31} -> + {c : @32} -> + {A : @33} -> {α : @71} -> {e : @73} -> {t : @74} -> (h : @84) -> (xs : @85) -> @93 @94 +@105 := LexLeanPreservation.Rust.wt_encList @0 +@107 := @49 @77 @79 +@121 := {c : @32} -> + {A : @33} -> + {α : @71} -> + {e : @73} -> {t : @74} -> (h : (x : @37) -> @107 @81 @10) -> (xs : @85) -> @49 @75 @77 @92 @94 +@122 := @105 @1 +@123 := @58 @79 +@135 := {A : @33} -> + {α : @71} -> + {e : @73} -> {t : @74} -> (h : (x : @37) -> @123 @81 @10) -> (xs : @85) -> @58 @77 @92 @94 +@136 := @122 @2 +@138 := @65 @81 @10 +@146 := {α : @71} -> {e : @73} -> {t : @74} -> (h : (x : @37) -> @138) -> (xs : @85) -> @65 @92 @94 +@147 := @136 @3 +@148 := (a._@._internal._hyg.#0 : @3) -> @72 +@157 := {e : @148} -> {t : @74} -> (h : (x : @3) -> @138) -> (xs : @5) -> @65 (@13 @35 @30) @94 +@158 := @147 @11 +@160 := (x : @3) -> @66 @10 +@162 := @65 (@14 @30) +@166 := {t : @74} -> (h : @160) -> (xs : @5) -> @162 @94 +@167 := @158 @23 +@168 := (x : @3) -> @67 +@169 := @162 @25 +@171 := (h : @168) -> (xs : @5) -> @169 +@174 := fun (__x : @5) => @167 @70 @30 +@175 := (a._@._internal._hyg.#0 : @10) -> @72 +@176 := #9 +@177 := @34 @176 +@178 := #8 +@180 := @177 @178 @86 +@181 := @79 @30 +@184 := (x : @77) -> @180 @181 @37 +@185 := #10 +@191 := (x : @77) -> @34 @185 @176 @178 @181 @37 +@193 := @6 @86 @75 +@194 := #11 +@197 := @34 @194 @185 @176 +@202 := @15 @178 @86 @75 @77 @30 +@203 := @197 @202 +@205 := @26 @79 @35 +@218 := {p : @31} -> + {c : @32} -> + {A : @33} -> + {α : @71} -> + {β : @71} -> + {ea : @175} -> + {eb : @175} -> {s : @74} -> {t : @74} -> (ha : @184) -> (hb : @191) -> (x : @193) -> @203 @205 +@220 := LexLeanPreservation.Rust.wt_encPair @0 +@245 := {c : @32} -> + {A : @33} -> + {α : @71} -> + {β : @71} -> + {ea : @175} -> + {eb : @175} -> + {s : @74} -> + {t : @74} -> + (ha : (x : @77) -> @49 @178 @86 @181 @37) -> + (hb : (x : @77) -> @49 @176 @178 @181 @37) -> (x : @193) -> @49 @185 @176 @202 @205 +@246 := @220 @1 +@267 := {A : @33} -> + {α : @71} -> + {β : @71} -> + {ea : @175} -> + {eb : @175} -> + {s : @74} -> + {t : @74} -> + (ha : (x : @77) -> @58 @86 @181 @37) -> + (hb : (x : @77) -> @58 @178 @181 @37) -> (x : @193) -> @58 @176 @202 @205 +@268 := @246 @2 +@270 := @65 @181 @37 +@271 := (x : @77) -> @270 +@282 := {α : @71} -> + {β : @71} -> + {ea : @175} -> + {eb : @175} -> {s : @74} -> {t : @74} -> (ha : @271) -> (hb : @271) -> (x : @193) -> @65 @202 @205 +@283 := @268 @3 +@284 := (x : @3) -> @270 +@299 := {β : @71} -> + {ea : @148} -> + {eb : @175} -> + {s : @74} -> + {t : @74} -> (ha : @284) -> (hb : @271) -> (x : @7 @75) -> @65 (@16 @86 @75 @77 @30) @205 +@300 := @283 @5 +@301 := (a._@._internal._hyg.#0 : @5) -> @72 +@302 := (x : @5) -> @270 +@314 := {ea : @148} -> + {eb : @301} -> + {s : @74} -> {t : @74} -> (ha : @284) -> (hb : @302) -> (x : @8) -> @65 (@17 @75 @77 @30) @205 +@315 := @300 @11 +@317 := (x : @3) -> @66 @37 +@327 := {eb : @301} -> + {s : @74} -> {t : @74} -> (ha : @317) -> (hb : @302) -> (x : @8) -> @65 (@18 @77 @30) @205 +@328 := @315 @14 +@330 := (x : @5) -> @162 @37 +@332 := @65 (@19 @30) +@338 := {s : @74} -> {t : @74} -> (ha : @317) -> (hb : @330) -> (x : @8) -> @332 @205 +@339 := @328 @23 +@345 := {t : @74} -> (ha : @168) -> (hb : @330) -> (x : @8) -> @332 (@27 @35) +@346 := @339 @25 +@347 := (x : @5) -> @169 +@349 := (x : @8) -> @332 @28 +@351 := (ha : @168) -> (hb : @347) -> @349 +@355 := fun (__x : @8) => @346 @70 @174 @30 +@356 := @136 @8 +@366 := {e : (a._@._internal._hyg.#0 : @8) -> @72} -> + {t : @74} -> (h : (x : @8) -> @138) -> (xs : @9) -> @65 (@20 @35 @30) @94 +@367 := @356 @19 +@369 := (x : @8) -> @332 @10 +@370 := @21 @30 +@371 := @65 @370 +@375 := {t : @74} -> (h : @369) -> (xs : @9) -> @371 @94 +@376 := @367 @28 +@379 := (h : @349) -> (xs : @9) -> @371 @29 +@381 := @376 @355 @10 +@383 := @65 @22 @29 +@384 := List.nil.{0} +@385 := List.cons.{0} +@386 := @384 @72 +@387 := @385 @72 +@389 := @387 @22 @386 +@390 := Nat +@392 := @6 @390 @72 +@393 := 0 +@397 := Prod.mk.{0, 0} @390 @72 @393 +@398 := @397 @22 +@399 := @384 @392 +@400 := @385 @392 +@402 := @400 @398 @399 +@403 := Bool.true +@404 := LexLeanTarget.TargetSyntax.Function +@405 := LexLeanTarget.TargetSyntax.Program.functions +@406 := @405 @0 +@407 := 15 +@408 := @384 @390 +@409 := @384 @74 +@410 := LexLeanTarget.TargetSyntax.Ty.unit +@411 := LexLeanTarget.TargetSyntax.Value.unit +@414 := LexLeanTarget.TargetSyntax.Expr.value @410 @411 +@419 := LexLeanTarget.TargetSyntax.Function.mk @408 @409 @410 @414 +@424 := List.getD.{0} @404 @406 @407 @419 +@428 := fun (__e_n : @390) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.RustStd.root @30 @407 +@429 := LexLeanPreservation.Rust.WTL +@437 := {p : @31} -> {c : @32} -> {A : @33} -> @429 @37 @10 @30 @386 @409 +@439 := LexLeanPreservation.Rust.wtl_nil @0 +@440 := @429 @0 +@446 := {c : @32} -> {A : @33} -> @440 @10 @30 @386 @409 +@447 := @439 @1 +@448 := @440 @1 +@452 := {A : @33} -> @448 @30 @386 @409 +@453 := @447 @2 +@454 := @448 @2 +@455 := @454 @386 +@456 := @455 @409 +@457 := @4 @72 +@458 := @4 @74 +@460 := @80 @35 @37 +@465 := @429 @86 @75 @77 @37 @10 +@468 := @429 @178 @86 @75 +@470 := @387 @77 @35 +@471 := @468 @470 +@472 := @385 @74 +@474 := @472 @79 @37 +@484 := {p : @31} -> + {c : @32} -> + {A : @33} -> + {v : @72} -> {t : @74} -> {vs : @457} -> {ts : @458} -> (h : @460) -> (hs : @465) -> @471 @474 +@486 := LexLeanPreservation.Rust.wtl_cons @0 +@504 := {c : @32} -> + {A : @33} -> + {v : @72} -> + {t : @74} -> + {vs : @457} -> + {ts : @458} -> (h : @107 @35 @37) -> (hs : @440 @75 @77 @37 @10) -> @440 @86 @75 @470 @474 +@505 := @486 @1 +@520 := {A : @33} -> + {v : @72} -> + {t : @74} -> + {vs : @457} -> {ts : @458} -> (h : @123 @35 @37) -> (hs : @448 @77 @37 @10) -> @448 @75 @470 @474 +@521 := @505 @2 +@523 := @65 @35 @37 +@525 := @454 @37 @10 +@533 := {v : @72} -> + {t : @74} -> {vs : @457} -> {ts : @458} -> (h : @523) -> (hs : @525) -> @454 @470 @474 +@534 := @521 @22 +@535 := @21 @79 +@537 := @65 @535 @37 +@538 := @21 @75 +@539 := @387 @538 +@547 := {t : @74} -> {vs : @457} -> {ts : @458} -> (h : @537) -> (hs : @525) -> @454 (@539 @35) @474 +@548 := @534 @29 +@549 := @21 @35 +@551 := @65 @549 @29 +@552 := @21 @77 +@553 := @387 @552 +@555 := @454 (@553 @35) +@556 := @472 @29 +@557 := @556 @37 +@562 := {vs : @457} -> {ts : @458} -> (h : @551) -> (hs : @525) -> @555 @557 +@563 := @548 @386 +@564 := @21 @37 +@566 := @65 @564 @29 +@567 := @455 @10 +@569 := @387 @535 @386 +@570 := @454 @569 +@574 := {ts : @458} -> (h : @566) -> (hs : @567) -> @570 @557 +@575 := @563 @409 +@577 := @387 @549 @386 +@578 := @454 @577 +@579 := @556 @409 +@582 := (h : @383) -> (hs : @456) -> @578 @579 +@583 := @575 @381 +@585 := @387 @564 @386 +@586 := @454 @585 +@588 := (hs : @456) -> @586 @579 +@589 := @583 @453 +@590 := @454 @389 +@591 := @590 @579 +@592 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.denoteEntry +@593 := @592 @10 +@594 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.entryFits +@595 := @594 @10 +@597 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.entryValue @10 +@599 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.entry @10 +@600 := Bool +@601 := Ne.{1} +@602 := LexLeanPreservation.Obs +@603 := @601 @602 +@604 := LexLeanPreservation.Rel +@607 := @603 (@604 @10 @30) +@608 := LexLeanPreservation.Obs.stuck +@611 := (f : @600) -> (v : @72) -> @607 @608 +@613 := LexLeanPreservation.Rust.rel_ne_stuck @595 +@619 := (v : @72) -> @603 (@604 (@594 @37) @30) @608 +@620 := @613 @597 +@624 := @603 (@604 @595 @597) @608 +@625 := @4 @392 +@626 := LexLeanPreservation.Rust.FunSem +@632 := (n : @390) -> @626 @176 @178 @86 @30 @75 +@633 := Eq.{1} +@634 := Option.{0} +@635 := @634 @404 +@636 := @633 @635 +@643 := LexLeanRuntime.index (@4 @404) @404 (LexLeanRuntime.instIndexableList @404) +@647 := @636 (@643 (@405 @176) @75) +@648 := Option.some.{0} +@649 := @648 @404 +@650 := @649 @77 +@651 := @647 @650 +@655 := @429 @185 @176 @178 @77 +@656 := LexLeanTarget.TargetSyntax.Function.types +@657 := @656 @75 +@658 := @655 @657 +@659 := @634 @625 +@660 := @633 @659 +@661 := LexLeanTarget.TargetSemantics.bindAll +@662 := LexLeanTarget.TargetSyntax.Function.parameters +@667 := @660 (@661 (@662 @86) @75 @399) +@668 := @648 @625 +@669 := @668 @77 +@670 := @667 @669 +@671 := @634 @600 +@672 := @633 @671 +@673 := LexLeanPreservation.Rust.fnFallible +@676 := @672 (@673 @194 @176) +@677 := @648 @600 +@678 := @677 @77 +@679 := @676 @678 +@680 := LexLeanPreservation.RunConv +@681 := #13 +@685 := @680 @681 @185 @178 @77 +@687 := @603 @75 @608 +@688 := Exists.{1} +@689 := LexLeanPreservation.Rust.ROut +@690 := @688 @689 +@691 := And +@692 := LexLeanPreservation.Rust.RealizesFn +@696 := @691 (@692 @176 @178 @30) +@697 := LexLeanPreservation.Rust.RCI +@699 := @697 #15 +@700 := LexLeanPreservation.Rust.fnIdent +@701 := @700 @681 +@708 := (hne : @687) -> @690 (fun (ro : @689) => @696 (@699 @701 @194 @30)) +@723 := {p : @31} -> + {c : @32} -> + {A : @33} -> + {f : @390} -> + {fn : @404} -> + {args : @457} -> + {env : @625} -> + {F : @600} -> + {o : @602} -> + (hB : @632) -> + (hfn : @651) -> (hwt : @658) -> (hbind : @670) -> (hF : @679) -> (hA : @685) -> @708 +@725 := LexLeanPreservation.Rust.compose @0 +@726 := @626 @0 +@731 := (n : @390) -> @726 @178 @86 @30 @75 +@732 := @643 @406 +@735 := @636 (@732 @75) @650 +@739 := @440 @176 @178 @77 @657 +@740 := @680 @0 +@743 := @740 @185 @178 @77 +@757 := {c : @32} -> + {A : @33} -> + {f : @390} -> + {fn : @404} -> + {args : @457} -> + {env : @625} -> + {F : @600} -> + {o : @602} -> + (hB : @731) -> + (hfn : @735) -> (hwt : @739) -> (hbind : @670) -> (hF : @679) -> (hA : @743) -> @708 +@758 := @725 @1 +@759 := @726 @1 +@763 := (n : @390) -> @759 @86 @30 @75 +@766 := @448 @178 @77 @657 +@767 := @673 @1 +@770 := @672 (@767 @176) @678 +@771 := @697 @1 +@781 := (hbind : @670) -> + (hF : @770) -> (hA : @743) -> (hne : @687) -> @690 (fun (ro : @689) => @696 (@771 @701 @194 @30)) +@791 := {A : @33} -> + {f : @390} -> + {fn : @404} -> + {args : @457} -> + {env : @625} -> {F : @600} -> {o : @602} -> (hB : @763) -> (hfn : @735) -> (hwt : @766) -> @781 +@792 := @758 @2 +@794 := @759 @2 @30 +@796 := (n : @390) -> @794 @75 +@797 := @454 @77 +@798 := @797 @657 +@807 := {f : @390} -> + {fn : @404} -> + {args : @457} -> + {env : @625} -> {F : @600} -> {o : @602} -> (hB : @796) -> (hfn : @735) -> (hwt : @798) -> @781 +@808 := @792 @407 +@810 := (n : @390) -> @794 @407 +@811 := @732 @407 +@812 := @636 @811 +@813 := @812 @650 +@814 := @767 @407 +@815 := @672 @814 +@816 := @815 @678 +@817 := @740 @407 +@819 := @817 @178 @77 +@821 := @771 (@700 @407) +@829 := (hF : @816) -> (hA : @819) -> (hne : @687) -> @690 (fun (ro : @689) => @696 (@821 @194 @30)) +@838 := {fn : @404} -> + {args : @457} -> + {env : @625} -> + {F : @600} -> {o : @602} -> (hB : @810) -> (hfn : @813) -> (hwt : @798) -> (hbind : @670) -> @829 +@839 := @808 @424 +@841 := @812 (@649 @424) +@842 := @656 @424 +@843 := @797 @842 +@845 := @661 (@662 @424) +@857 := {args : @457} -> + {env : @625} -> + {F : @600} -> + {o : @602} -> + (hB : @810) -> (hfn : @841) -> (hwt : @843) -> (hbind : @660 (@845 @75 @399) @669) -> @829 +@858 := @839 @389 +@859 := @539 @386 +@861 := @454 @859 @842 +@864 := @387 (@21 @86) @386 +@868 := @660 (@845 @864 @399) @669 +@871 := @387 (@21 @176) @386 +@892 := {env : @625} -> + {F : @600} -> + {o : @602} -> + (hB : @810) -> + (hfn : @841) -> + (hwt : @861) -> + (hbind : @868) -> + (hF : @816) -> + (hA : @817 @871 @77) -> + (hne : @687) -> @690 (fun (ro : @689) => @696 (@821 (@387 (@21 #12) @386) @30)) +@893 := @858 @402 +@894 := @553 @386 +@896 := @454 @894 @842 +@904 := @660 (@845 @859 @399) (@668 (@400 (@397 @538) @399)) +@907 := @387 (@21 @178) @386 +@926 := {F : @600} -> + {o : @602} -> + (hB : @810) -> + (hfn : @841) -> + (hwt : @896) -> + (hbind : @904) -> + (hF : @816) -> + (hA : @817 @907 @77) -> + (hne : @687) -> @690 (fun (ro : @689) => @696 (@821 (@387 (@21 @194) @386) @30)) +@927 := @893 @403 +@928 := @570 @842 +@936 := @660 (@845 @894 @399) (@668 (@400 (@397 @552) @399)) +@938 := @815 (@677 @403) +@940 := @817 @864 @77 +@941 := @692 @403 +@960 := {o : @602} -> + (hB : @810) -> + (hfn : @841) -> + (hwt : @928) -> + (hbind : @936) -> + (hF : @938) -> + (hA : @940) -> + (hne : @687) -> @690 (fun (ro : @689) => @691 (@941 @178 @30) (@821 (@387 (@21 @185) @386) @30)) +@961 := @927 @593 +@962 := @578 @842 +@970 := @660 (@845 @569 @399) (@668 (@400 (@397 @535) @399)) +@971 := @817 @859 +@972 := @592 @75 +@973 := @971 @972 +@974 := @592 @86 +@992 := (hB : @810) -> + (hfn : @841) -> + (hwt : @962) -> + (hbind : @970) -> + (hF : @938) -> + (hA : @973) -> + (hne : @603 @974 @608) -> @690 (fun (ro : @689) => @691 (@941 (@592 @176) @30) (@821 @871 @30)) +@993 := @961 @428 +@994 := @586 @842 +@1002 := @660 (@845 @577 @399) (@668 (@400 (@397 @549) @399)) +@1003 := @817 @894 +@1004 := @592 @77 +@1022 := (hfn : @841) -> + (hwt : @994) -> + (hbind : @1002) -> + (hF : @938) -> + (hA : @1003 @1004) -> + (hne : @603 @972 @608) -> @690 (fun (ro : @689) => @691 (@941 (@592 @178) @30) (@821 @907 @30)) +@1023 := Eq.refl.{1} +@1026 := @993 (@1023 @635 @811) +@1027 := @590 @842 +@1035 := @660 (@845 @585 @399) (@668 (@400 (@397 @564) @399)) +@1036 := @817 @569 +@1037 := @592 @79 +@1053 := (hwt : @1027) -> + (hbind : @1035) -> + (hF : @938) -> + (hA : @1036 @1037) -> + (hne : @603 @1004 @608) -> @690 (fun (ro : @689) => @691 (@941 @974 @30) (@821 @864 @30)) +@1054 := @1026 @589 +@1056 := @845 @389 @399 +@1059 := @660 @1056 (@668 @402) +@1060 := @817 @577 +@1061 := @592 @35 +@1076 := (hbind : @1059) -> + (hF : @938) -> + (hA : @1060 @1061) -> + (hne : @603 @1037 @608) -> @690 (fun (ro : @689) => @691 (@941 @972 @30) (@821 @859 @30)) +@1079 := @1054 (@1023 @659 @1056) +@1080 := @817 @585 +@1081 := @592 @37 +@1095 := (hF : @938) -> + (hA : @1080 @1081) -> + (hne : @603 @1061 @608) -> @690 (fun (ro : @689) => @691 (@941 @1004 @30) (@821 @894 @30)) +@1098 := @1079 (@1023 @671 @814) +@1100 := @817 @389 @593 +@1102 := @603 @1081 @608 +@1103 := @941 @1037 +@1105 := @691 (@1103 @30) +@1106 := @821 @569 +@1107 := @1106 @30 +@1112 := (hA : @1100) -> (hne : @1102) -> @690 (fun (ro : @689) => @1105 @1107) +@1113 := @1098 @599 +@1115 := @603 @593 @608 +@1116 := @941 @1061 +@1118 := @691 (@1116 @30) +@1119 := @821 @577 +@1124 := (hne : @1115) -> @690 (fun (ro : @689) => @1118 (@1119 @30)) +@1125 := @1113 @620 +@1128 := @691 (@941 @1081 @30) +@1130 := @821 @585 @30 +@1131 := @1128 @1130 +@1133 := @690 (fun (ro : @689) => @1131) +@1134 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.accepts +@1135 := @1134 @10 +@1136 := LexLeanPreservation.someObs +@1137 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.denote +@1139 := @1136 (@1137 @10) +@1142 := LexLeanPreservation.Obs.value LexLeanTarget.TargetSyntax.Value.none +@1143 := Not +@1144 := @1143 @1135 +@1145 := @1134 @37 +@1147 := @1136 (@1137 @37) +@1148 := @1143 @1145 +@1153 := @1145 -> @941 (@1136 (@1137 @35)) @10 +@1154 := @941 @1142 +@1155 := @1154 @10 +@1156 := @1148 -> @1155 +@1158 := @691 @1153 @1156 +@1162 := @690 (fun (__e_ro : @689) => @691 @1130 @1158) +@1163 := fun (__e_ro : @689) => @1131 +@1164 := @1116 @10 +@1165 := @1119 @10 +@1166 := And.left +@1167 := And.right +@1170 := @1166 @1164 @1165 @30 +@1173 := @1167 @1164 @1165 @30 +@1174 := @941 @30 +@1176 := fun (__e_o : @602) => @1174 @37 +@1177 := Eq.subst.{1} +@1178 := @1134 @35 +@1179 := @1143 @1178 +@1182 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.entry_accepts @79 @30 +@1184 := @1136 (@1137 @79) +@1189 := @1166 (@1103 @37) (@1106 @37) @10 +@1191 := fun (__e_o : @602) => @1174 @35 +@1194 := @1177 @602 @1191 @1037 +@1198 := fun (__e_h : @1178) => @1194 @1184 @1182 @1189 +@1201 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.entry_refuses @79 @30 +@1205 := fun (__e_h : @1179) => @1194 @1142 @1201 @1189 +@1206 := And.intro +@1209 := @1178 -> @941 @1184 @37 +@1211 := @1179 -> @1154 @37 +@1213 := @691 @1209 @1211 +@1217 := @1206 @1209 @1211 @1198 @1205 +@1221 := @1206 @1165 @1213 @1173 @1217 +@1222 := Exists.intro.{1} +@1223 := @691 @1107 +@1224 := @1134 @79 +@1235 := fun (__e_ro : @689) => + @1223 (@691 (@1224 -> @941 (@1136 (@1137 @77)) @10) (@1143 @1224 -> @1155)) +@1239 := @1222 @689 @1235 @10 @1221 +@1241 := @691 @1164 @1165 +@1243 := fun (__e_ro : @689) => fun (__e_hand : @1131) => @1239 +@1249 := Exists.elim.{1} @689 @1163 @1162 @1125 @1243 +@1253 := LexLeanPreservation.Rust.RepresentableL (@387 @370 @386) +@1254 := (__e_hrep : @1253) -> @1162 +@1255 := fun (__e_hrep : @1253) => @1249 +@1256 := (g : @9) -> @1254 +@1257 := fun (g : @9) => @1255 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R7/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R7/RustStd.lean new file mode 100644 index 000000000..013e78a1f --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R7/RustStd.lean @@ -0,0 +1,153 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0], types := [(.list (.pair .string (.list .string)))], result := (.option (.list .string)), + body := (.call 1 [(.var 0)]) }, + { parameters := [0], types := [(.list (.pair .string (.list .string)))], result := (.option (.list .string)), + body := (.«let» 1 (.list .string) (.call 6 [(.var 0), (.build .nil (.list .string) [])]) (.call 2 [(.var 0), (.prim .natAdd [(.prim .length [(.var 1)]), (.value .nat (.nat 1))]), (.var 1), (.build .nil (.list .string) [])])) }, + { parameters := [0, 1, 2, 3], types := [(.list (.pair .string (.list .string))), .nat, (.list .string), (.list .string)], result := (.option (.list .string)), + body := (.«match» (.option (.list .string)) (.var 1) [(.arm .zero [] (.«match» (.option (.list .string)) (.var 2) [(.arm .nil [] (.build .some (.option (.list .string)) [(.call 5 [(.var 3), (.build .nil (.list .string) [])])])), (.arm .cons [4, 5] (.build .none (.option (.list .string)) []))])), (.arm .succ [6] (.«match» (.option (.list .string)) (.call 3 [(.var 0), (.var 2), (.var 2)]) [(.arm .nil [] (.«match» (.option (.list .string)) (.var 2) [(.arm .nil [] (.build .some (.option (.list .string)) [(.call 5 [(.var 3), (.build .nil (.list .string) [])])])), (.arm .cons [7, 8] (.build .none (.option (.list .string)) []))])), (.arm .cons [9, 10] (.call 2 [(.var 0), (.var 6), (.call 12 [(.var 2), (.var 9)]), (.build .cons (.list .string) [(.var 9), (.var 3)])]))]))]) }, + { parameters := [0, 1, 2], types := [(.list (.pair .string (.list .string))), (.list .string), (.list .string)], result := (.list .string), + body := (.«match» (.list .string) (.var 2) [(.arm .nil [] (.build .nil (.list .string) [])), (.arm .cons [3, 4] (.cond (.call 4 [(.var 0), (.var 3), (.var 1)]) (.build .cons (.list .string) [(.var 3), (.call 3 [(.var 0), (.var 1), (.var 4)])]) (.call 3 [(.var 0), (.var 1), (.var 4)])))]) }, + { parameters := [0, 1, 2], types := [(.list (.pair .string (.list .string))), .string, (.list .string)], result := .bool, + body := (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.call 11 [(.call 9 [(.var 0), (.var 3)]), (.var 1)]) (.build .false .bool []) (.call 4 [(.var 0), (.var 1), (.var 4)])))]) }, + { parameters := [0, 1], types := [(.list .string), (.list .string)], result := (.list .string), + body := (.«match» (.list .string) (.var 0) [(.arm .nil [] (.var 1)), (.arm .cons [2, 3] (.call 5 [(.var 3), (.build .cons (.list .string) [(.var 2), (.var 1)])]))]) }, + { parameters := [0, 1], types := [(.list (.pair .string (.list .string))), (.list .string)], result := (.list .string), + body := (.«match» (.list .string) (.var 0) [(.arm .nil [] (.var 1)), (.arm .cons [2, 3] (.call 6 [(.var 3), (.call 7 [(.second (.var 2)), (.call 8 [(.var 1), (.first (.var 2))])])]))]) }, + { parameters := [0, 1], types := [(.list .string), (.list .string)], result := (.list .string), + body := (.«match» (.list .string) (.var 0) [(.arm .nil [] (.var 1)), (.arm .cons [2, 3] (.call 7 [(.var 3), (.call 8 [(.var 1), (.var 2)])]))]) }, + { parameters := [0, 1], types := [(.list .string), .string], result := (.list .string), + body := (.«match» (.list .string) (.var 0) [(.arm .nil [] (.build .cons (.list .string) [(.var 1), (.build .nil (.list .string) [])])), (.arm .cons [2, 3] (.«match» (.list .string) (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .cons (.list .string) [(.var 1), (.var 0)])), (.arm .eq [] (.var 0)), (.arm .gt [] (.build .cons (.list .string) [(.var 2), (.call 8 [(.var 3), (.var 1)])]))]))]) }, + { parameters := [0, 1], types := [(.list (.pair .string (.list .string))), .string], result := (.list .string), + body := (.«match» (.list .string) (.call 10 [(.var 0), (.var 1)]) [(.arm .none [] (.build .nil (.list .string) [])), (.arm .some [2] (.var 2))]) }, + { parameters := [0, 1], types := [(.list (.pair .string (.list .string))), .string], result := (.option (.list .string)), + body := (.«match» (.option (.list .string)) (.var 0) [(.arm .nil [] (.build .none (.option (.list .string)) [])), (.arm .cons [2, 3] (.«match» (.option (.list .string)) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.build .none (.option (.list .string)) [])), (.arm .eq [] (.build .some (.option (.list .string)) [(.second (.var 2))])), (.arm .gt [] (.call 10 [(.var 3), (.var 1)]))]))]) }, + { parameters := [0, 1], types := [(.list .string), .string], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .false .bool [])), (.arm .cons [2, 3] (.«match» .bool (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .false .bool [])), (.arm .eq [] (.build .true .bool [])), (.arm .gt [] (.call 11 [(.var 3), (.var 1)]))]))]) }, + { parameters := [0, 1], types := [(.list .string), .string], result := (.list .string), + body := (.«match» (.list .string) (.var 0) [(.arm .nil [] (.build .nil (.list .string) [])), (.arm .cons [2, 3] (.«match» (.list .string) (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.var 0)), (.arm .eq [] (.var 3)), (.arm .gt [] (.build .cons (.list .string) [(.var 2), (.call 12 [(.var 3), (.var 1)])]))]))]) }, + { parameters := [0], types := [(.list (.pair .string (.list .string)))], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 14 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 13 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, + { parameters := [0], types := [(.list .string)], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.var 1), (.var 3)]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 14 [(.var 2)]) (.build .false .bool [])))]))]) }, + { parameters := [0], types := [(.list (.pair .string (.list .string)))], result := (.option (.option (.list .string))), + body := (.cond (.call 13 [(.var 0)]) (.build .some (.option (.option (.list .string))) [(.call 0 [(.var 0)])]) (.build .none (.option (.option (.list .string))) [])) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .str (.list .str))) }] (.fallible (.option (.list .str))) (.mk [] (.call (.function 1) [(.move (.generated .binding 0))] false))), + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .str (.list .str))) }] (.fallible (.option (.list .str))) (.mk [(.mk (.bind (.generated .binding 1)) (some (.list .str)) (.call (.function 6) [(.clone (.generated .binding 0)), (.construct (.nil .str) [])] false))] (.succeed (.call (.function 2) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthList) [(.move (.generated .operand 1))] false)))), (.mk (.bind (.generated .operand 3)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] true))), (.move (.generated .binding 1)), (.construct (.nil .str) [])] false)))), + (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .str (.list .str))) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := (.list .str) }, { pattern := (.bind (.generated .binding 3)), type := (.list .str) }] (.option (.list .str)) (.mk [(.mk (.bind (.generated .holder 4)) none (.copy (.generated .binding 1)))] (.cond (.isZero (.generated .holder 4)) (.mk [(.mk (.bind (.generated .holder 5)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 5)) [(.mk .none (.mk [] (.construct .some [(.call (.function 5) [(.move (.generated .binding 3)), (.construct (.nil .str) [])] false)]))), (.mk (.some (.tuple [.wild, .wild])) (.mk [] (.construct (.none (.list .str)) [])))])) (.mk [(.mk (.bind (.generated .binding 6)) none (.predecessor (.generated .holder 4))), (.mk (.bind (.generated .holder 6)) none (.call (.function 3) [(.clone (.generated .binding 0)), (.clone (.generated .binding 2)), (.clone (.generated .binding 2))] false))] (.matchOn (.uncons (.generated .holder 6)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 7)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 7)) [(.mk .none (.mk [] (.construct .some [(.call (.function 5) [(.move (.generated .binding 3)), (.construct (.nil .str) [])] false)]))), (.mk (.some (.tuple [.wild, .wild])) (.mk [] (.construct (.none (.list .str)) [])))]))), (.mk (.some (.tuple [(.bind (.generated .binding 9)), .wild])) (.mk [] (.call (.function 2) [(.move (.generated .binding 0)), (.copy (.generated .binding 6)), (.call (.function 12) [(.move (.generated .binding 2)), (.clone (.generated .binding 9))] false), (.construct .cons [(.move (.generated .binding 9)), (.move (.generated .binding 3))])] false)))]))))), + (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .str (.list .str))) }, { pattern := (.bind (.generated .binding 1)), type := (.list .str) }, { pattern := (.bind (.generated .binding 2)), type := (.list .str) }] (.list .str) (.mk [(.mk (.bind (.generated .holder 8)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 8)) [(.mk .none (.mk [] (.construct (.nil .str) []))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.cond (.call (.function 4) [(.clone (.generated .binding 0)), (.clone (.generated .binding 3)), (.clone (.generated .binding 1))] false) (.mk [] (.construct .cons [(.move (.generated .binding 3)), (.call (.function 3) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false)])) (.mk [] (.call (.function 3) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false)))))]))), + (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .str (.list .str))) }, { pattern := (.bind (.generated .binding 1)), type := .str }, { pattern := (.bind (.generated .binding 2)), type := (.list .str) }] .bool (.mk [(.mk (.bind (.generated .holder 9)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 9)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.cond (.call (.function 11) [(.call (.function 9) [(.clone (.generated .binding 0)), (.move (.generated .binding 3))] false), (.clone (.generated .binding 1))] false) (.mk [] (.lit (.bool false))) (.mk [] (.call (.function 4) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false)))))]))), + (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := (.list .str) }, { pattern := (.bind (.generated .binding 1)), type := (.list .str) }] (.list .str) (.mk [(.mk (.bind (.generated .holder 10)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 10)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.call (.function 5) [(.move (.generated .binding 3)), (.construct .cons [(.move (.generated .binding 2)), (.move (.generated .binding 1))])] false)))]))), + (.function (.generated .function 6) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .str (.list .str))) }, { pattern := (.bind (.generated .binding 1)), type := (.list .str) }] (.list .str) (.mk [(.mk (.bind (.generated .holder 11)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 11)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.call (.function 6) [(.move (.generated .binding 3)), (.call (.function 7) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 12))]) none (.move (.generated .binding 2)))] (.move (.generated .part 12)))), (.call (.function 8) [(.move (.generated .binding 1)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 13)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 13))))] false)] false)] false)))]))), + (.function (.generated .function 7) [{ pattern := (.bind (.generated .binding 0)), type := (.list .str) }, { pattern := (.bind (.generated .binding 1)), type := (.list .str) }] (.list .str) (.mk [(.mk (.bind (.generated .holder 14)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 14)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.call (.function 7) [(.move (.generated .binding 3)), (.call (.function 8) [(.move (.generated .binding 1)), (.move (.generated .binding 2))] false)] false)))]))), + (.function (.generated .function 8) [{ pattern := (.bind (.generated .binding 0)), type := (.list .str) }, { pattern := (.bind (.generated .binding 1)), type := .str }] (.list .str) (.mk [(.mk (.bind (.generated .holder 15)) none (.clone (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 15)) [(.mk .none (.mk [] (.construct .cons [(.move (.generated .binding 1)), (.construct (.nil .str) [])]))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 18)) none (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 17)) none (.clone (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false))))] (.matchOn (.move (.generated .holder 18)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.move (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.move (.generated .binding 2)), (.call (.function 8) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)])))])))]))), + (.function (.generated .function 9) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .str (.list .str))) }, { pattern := (.bind (.generated .binding 1)), type := .str }] (.list .str) (.mk [(.mk (.bind (.generated .holder 19)) none (.call (.function 10) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 19)) [(.mk .none (.mk [] (.construct (.nil .str) []))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.move (.generated .binding 2))))]))), + (.function (.generated .function 10) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .str (.list .str))) }, { pattern := (.bind (.generated .binding 1)), type := .str }] (.option (.list .str)) (.mk [(.mk (.bind (.generated .holder 20)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 20)) [(.mk .none (.mk [] (.construct (.none (.list .str)) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 24)) none (.block (.mk [(.mk (.bind (.generated .operand 22)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 23)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 21)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 21)))))] (.call (.runtime .compare) [(.move (.generated .operand 22)), (.move (.generated .operand 23))] false))))] (.matchOn (.move (.generated .holder 24)) [(.mk (.ordering .less) (.mk [] (.construct (.none (.list .str)) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 25))]) none (.move (.generated .binding 2)))] (.move (.generated .part 25))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 10) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)))])))]))), + (.function (.generated .function 11) [{ pattern := (.bind (.generated .binding 0)), type := (.list .str) }, { pattern := (.bind (.generated .binding 1)), type := .str }] .bool (.mk [(.mk (.bind (.generated .holder 26)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 26)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 29)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 28)) none (.move (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))] (.matchOn (.move (.generated .holder 29)) [(.mk (.ordering .less) (.mk [] (.lit (.bool false)))), (.mk (.ordering .same) (.mk [] (.lit (.bool true)))), (.mk (.ordering .more) (.mk [] (.call (.function 11) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)))])))]))), + (.function (.generated .function 12) [{ pattern := (.bind (.generated .binding 0)), type := (.list .str) }, { pattern := (.bind (.generated .binding 1)), type := .str }] (.list .str) (.mk [(.mk (.bind (.generated .holder 30)) none (.clone (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 30)) [(.mk .none (.mk [] (.construct (.nil .str) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 33)) none (.block (.mk [(.mk (.bind (.generated .operand 31)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 32)) none (.clone (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))))] (.matchOn (.move (.generated .holder 33)) [(.mk (.ordering .less) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 3)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.move (.generated .binding 2)), (.call (.function 12) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)])))])))]))), + (.function (.generated .function 13) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .str (.list .str))) }] .bool (.mk [(.mk (.bind (.generated .holder 34)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 34)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 14) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 35))]) none (.move (.generated .binding 1)))] (.move (.generated .part 35))))] false) (.mk [(.mk (.bind (.generated .holder 36)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 36)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 41)) none (.block (.mk [(.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 37)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 37))))), (.mk (.bind (.generated .operand 40)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 38)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 38)))))] (.call (.runtime .compare) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] false))))] (.cond (.matchOn (.move (.generated .holder 41)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 13) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]))), + (.function (.generated .function 14) [{ pattern := (.bind (.generated .binding 0)), type := (.list .str) }] .bool (.mk [(.mk (.bind (.generated .holder 42)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 42)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [(.mk (.bind (.generated .holder 43)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 43)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 46)) none (.block (.mk [(.mk (.bind (.generated .operand 44)) none (.move (.generated .binding 1))), (.mk (.bind (.generated .operand 45)) none (.move (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 44)), (.move (.generated .operand 45))] false))))] (.cond (.matchOn (.move (.generated .holder 46)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 14) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])))]))), + (.function (.generated .function 15) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .str (.list .str))) }] (.fallible (.option (.option (.list .str)))) (.mk [] (.cond (.call (.function 13) [(.clone (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.call (.function 0) [(.move (.generated .binding 0))] true)]))) (.mk [] (.succeed (.construct (.none (.option (.list .str))) []))))))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 1) [(.move (.generated .binding 0))] false), [(0, (.list (.pair .string (.list .string))), (some 0))], rfl, rfl, + (Corr.callF (ts := [(.list (.pair .string (.list .string)))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some (.list .str)) (.call (.function 6) [(.clone (.generated .binding 0)), (.construct (.nil .str) [])] false))], (.succeed (.call (.function 2) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthList) [(.move (.generated .operand 1))] false)))), (.mk (.bind (.generated .operand 3)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] true))), (.move (.generated .binding 1)), (.construct (.nil .str) [])] false)), [(0, (.list (.pair .string (.list .string))), (some 0))], rfl, rfl, + (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .string (.list .string))), (.list .string)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl (Corr.fOfB (Corr.callOps (ts := [(.list (.pair .string (.list .string))), .nat, (.list .string), (.list .string)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 2)) none (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthList) [(.move (.generated .operand 1))] false)))), (.mk (.bind (.generated .operand 3)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 1)))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 1))] false)) (Corr.prim (ts := [(.list .string)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))))) rfl rfl rfl rfl rfl)))⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 4)) none (.copy (.generated .binding 1)))], (.cond (.isZero (.generated .holder 4)) (.mk [(.mk (.bind (.generated .holder 5)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 5)) [(.mk .none (.mk [] (.construct .some [(.call (.function 5) [(.move (.generated .binding 3)), (.construct (.nil .str) [])] false)]))), (.mk (.some (.tuple [.wild, .wild])) (.mk [] (.construct (.none (.list .str)) [])))])) (.mk [(.mk (.bind (.generated .binding 6)) none (.predecessor (.generated .holder 4))), (.mk (.bind (.generated .holder 6)) none (.call (.function 3) [(.clone (.generated .binding 0)), (.clone (.generated .binding 2)), (.clone (.generated .binding 2))] false))] (.matchOn (.uncons (.generated .holder 6)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 7)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 7)) [(.mk .none (.mk [] (.construct .some [(.call (.function 5) [(.move (.generated .binding 3)), (.construct (.nil .str) [])] false)]))), (.mk (.some (.tuple [.wild, .wild])) (.mk [] (.construct (.none (.list .str)) [])))]))), (.mk (.some (.tuple [(.bind (.generated .binding 9)), .wild])) (.mk [] (.call (.function 2) [(.move (.generated .binding 0)), (.copy (.generated .binding 6)), (.call (.function 12) [(.move (.generated .binding 2)), (.clone (.generated .binding 9))] false), (.construct .cons [(.move (.generated .binding 9)), (.move (.generated .binding 3))])] false)))]))), [(3, (.list .string), (some 3)), (2, (.list .string), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))], rfl, rfl, + (Corr.matchNat (sl := (some 6)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := [(.mk (.bind (.generated .holder 5)) none (.move (.generated .binding 2)))]) (ta := (.matchOn (.uncons (.generated .holder 5)) [(.mk .none (.mk [] (.construct .some [(.call (.function 5) [(.move (.generated .binding 3)), (.construct (.nil .str) [])] false)]))), (.mk (.some (.tuple [.wild, .wild])) (.mk [] (.construct (.none (.list .str)) [])))])) (lb := [(.mk (.bind (.generated .holder 6)) none (.call (.function 3) [(.clone (.generated .binding 0)), (.clone (.generated .binding 2)), (.clone (.generated .binding 2))] false))]) (tb := (.matchOn (.uncons (.generated .holder 6)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 7)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 7)) [(.mk .none (.mk [] (.construct .some [(.call (.function 5) [(.move (.generated .binding 3)), (.construct (.nil .str) [])] false)]))), (.mk (.some (.tuple [.wild, .wild])) (.mk [] (.construct (.none (.list .str)) [])))]))), (.mk (.some (.tuple [(.bind (.generated .binding 9)), .wild])) (.mk [] (.call (.function 2) [(.move (.generated .binding 0)), (.copy (.generated .binding 6)), (.call (.function 12) [(.move (.generated .binding 2)), (.clone (.generated .binding 9))] false), (.construct .cons [(.move (.generated .binding 9)), (.move (.generated .binding 3))])] false)))])) (Corr.matchArms (st := (.list .string)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(3, (.list .string), (some 3)), (2, (.list .string), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.call (.function 5) [(.move (.generated .binding 3)), (.construct (.nil .str) [])] false)])) (Corr.mCons (Γ' := [(5, (.list .string), none), (4, .string, none), (3, (.list .string), (some 3)), (2, (.list .string), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct (.none (.list .str)) [])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl (Corr.build (ts := [(.list .string)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .string), (.list .string)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) rfl rfl rfl) (Corr.matchArms (st := (.list .string)) (U := []) (view := true) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .string (.list .string))), (.list .string), (.list .string)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(6, .nat, (some 6)), (3, (.list .string), (some 3)), (2, (.list .string), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .holder 7)) none (.move (.generated .binding 2)))]) (tail := (.matchOn (.uncons (.generated .holder 7)) [(.mk .none (.mk [] (.construct .some [(.call (.function 5) [(.move (.generated .binding 3)), (.construct (.nil .str) [])] false)]))), (.mk (.some (.tuple [.wild, .wild])) (.mk [] (.construct (.none (.list .str)) [])))])) (Corr.mCons (Γ' := [(10, (.list .string), none), (9, .string, (some 9)), (6, .nat, (some 6)), (3, (.list .string), (some 3)), (2, (.list .string), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 2) [(.move (.generated .binding 0)), (.copy (.generated .binding 6)), (.call (.function 12) [(.move (.generated .binding 2)), (.clone (.generated .binding 9))] false), (.construct .cons [(.move (.generated .binding 9)), (.move (.generated .binding 3))])] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list (.pair .string (.list .string))), .nat, (.list .string), (.list .string)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .string), .string]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.string, (.list .string)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) (Corr.lNil)))))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.matchArms (st := (.list .string)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(6, .nat, (some 6)), (3, (.list .string), (some 3)), (2, (.list .string), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.call (.function 5) [(.move (.generated .binding 3)), (.construct (.nil .str) [])] false)])) (Corr.mCons (Γ' := [(8, (.list .string), none), (7, .string, none), (6, .nat, (some 6)), (3, (.list .string), (some 3)), (2, (.list .string), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct (.none (.list .str)) [])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl (Corr.build (ts := [(.list .string)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .string), (.list .string)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) rfl rfl rfl)) rfl rfl rfl)))⟩⟩ + +theorem fun3 : FunOK program krate flags 3 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 8)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 8)) [(.mk .none (.mk [] (.construct (.nil .str) []))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.cond (.call (.function 4) [(.clone (.generated .binding 0)), (.clone (.generated .binding 3)), (.clone (.generated .binding 1))] false) (.mk [] (.construct .cons [(.move (.generated .binding 3)), (.call (.function 3) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false)])) (.mk [] (.call (.function 3) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false)))))]), [(2, (.list .string), (some 2)), (1, (.list .string), (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .string)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .string), (some 2)), (1, (.list .string), (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.nil .str) [])) (Corr.mCons (Γ' := [(4, (.list .string), (some 4)), (3, .string, (some 3)), (2, (.list .string), (some 2)), (1, (.list .string), (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 4) [(.clone (.generated .binding 0)), (.clone (.generated .binding 3)), (.clone (.generated .binding 1))] false) (.mk [] (.construct .cons [(.move (.generated .binding 3)), (.call (.function 3) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false)])) (.mk [] (.call (.function 3) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false)))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 4) [(.clone (.generated .binding 0)), (.clone (.generated .binding 3)), (.clone (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [(.list (.pair .string (.list .string))), .string, (.list .string)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .cons [(.move (.generated .binding 3)), (.call (.function 3) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false)])) (lb := []) (tb := (.call (.function 3) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false)) (Corr.build (ts := [.string, (.list .string)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .string (.list .string))), (.list .string), (.list .string)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl) (Corr.callOps (ts := [(.list (.pair .string (.list .string))), (.list .string), (.list .string)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)))) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun4 : FunOK program krate flags 4 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 9)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 9)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.cond (.call (.function 11) [(.call (.function 9) [(.clone (.generated .binding 0)), (.move (.generated .binding 3))] false), (.clone (.generated .binding 1))] false) (.mk [] (.lit (.bool false))) (.mk [] (.call (.function 4) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false)))))]), [(2, (.list .string), (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .string)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .string), (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list .string), (some 4)), (3, .string, (some 3)), (2, (.list .string), (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 11) [(.call (.function 9) [(.clone (.generated .binding 0)), (.move (.generated .binding 3))] false), (.clone (.generated .binding 1))] false) (.mk [] (.lit (.bool false))) (.mk [] (.call (.function 4) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false)))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 11) [(.call (.function 9) [(.clone (.generated .binding 0)), (.move (.generated .binding 3))] false), (.clone (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [(.list .string), .string]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .string (.list .string))), .string]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool false))) (lb := []) (tb := (.call (.function 4) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.callOps (ts := [(.list (.pair .string (.list .string))), .string, (.list .string)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ + +theorem fun5 : FunOK program krate flags 5 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 10)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 10)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.call (.function 5) [(.move (.generated .binding 3)), (.construct .cons [(.move (.generated .binding 2)), (.move (.generated .binding 1))])] false)))]), [(1, (.list .string), (some 1)), (0, (.list .string), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .string)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.list .string), (some 1)), (0, (.list .string), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 1))) (Corr.mCons (Γ' := [(3, (.list .string), (some 3)), (2, .string, (some 2)), (1, (.list .string), (some 1)), (0, (.list .string), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 5) [(.move (.generated .binding 3)), (.construct .cons [(.move (.generated .binding 2)), (.move (.generated .binding 1))])] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list .string), (.list .string)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.string, (.list .string)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ + +theorem fun6 : FunOK program krate flags 6 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 11)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 11)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.call (.function 6) [(.move (.generated .binding 3)), (.call (.function 7) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 12))]) none (.move (.generated .binding 2)))] (.move (.generated .part 12)))), (.call (.function 8) [(.move (.generated .binding 1)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 13)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 13))))] false)] false)] false)))]), [(1, (.list .string), (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.pair .string (.list .string)))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.list .string), (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 1))) (Corr.mCons (Γ' := [(3, (.list (.pair .string (.list .string))), (some 3)), (2, (.pair .string (.list .string)), (some 2)), (1, (.list .string), (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 6) [(.move (.generated .binding 3)), (.call (.function 7) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 12))]) none (.move (.generated .binding 2)))] (.move (.generated .part 12)))), (.call (.function 8) [(.move (.generated .binding 1)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 13)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 13))))] false)] false)] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list (.pair .string (.list .string))), (.list .string)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .string), (.list .string)]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 12))]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 12))) (Corr.second (ta := .string) (tb := (.list .string)) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .string), .string]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 13)), .wild]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 13))) (Corr.first (ta := .string) (tb := (.list .string)) (Corr.var rfl rfl) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ + +theorem fun7 : FunOK program krate flags 7 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 14)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 14)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.call (.function 7) [(.move (.generated .binding 3)), (.call (.function 8) [(.move (.generated .binding 1)), (.move (.generated .binding 2))] false)] false)))]), [(1, (.list .string), (some 1)), (0, (.list .string), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .string)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.list .string), (some 1)), (0, (.list .string), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 1))) (Corr.mCons (Γ' := [(3, (.list .string), (some 3)), (2, .string, (some 2)), (1, (.list .string), (some 1)), (0, (.list .string), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 7) [(.move (.generated .binding 3)), (.call (.function 8) [(.move (.generated .binding 1)), (.move (.generated .binding 2))] false)] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list .string), (.list .string)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .string), .string]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ + +theorem fun8 : FunOK program krate flags 8 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 15)) none (.clone (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 15)) [(.mk .none (.mk [] (.construct .cons [(.move (.generated .binding 1)), (.construct (.nil .str) [])]))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 18)) none (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 17)) none (.clone (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false))))] (.matchOn (.move (.generated .holder 18)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.move (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.move (.generated .binding 2)), (.call (.function 8) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)])))])))]), [(1, .string, (some 1)), (0, (.list .string), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .string)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .string, (some 1)), (0, (.list .string), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .cons [(.move (.generated .binding 1)), (.construct (.nil .str) [])])) (Corr.mCons (Γ' := [(3, (.list .string), (some 3)), (2, .string, (some 2)), (1, .string, (some 1)), (0, (.list .string), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 18)) none (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 17)) none (.clone (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false))))]) (tail := (.matchOn (.move (.generated .holder 18)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.move (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.move (.generated .binding 2)), (.call (.function 8) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)])))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 16)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 17)) none (.clone (.generated .binding 2)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false)) (Corr.prim (ts := [.string, .string]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list .string), (some 3)), (2, .string, (some 2)), (1, .string, (some 1)), (0, (.list .string), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .cons [(.move (.generated .binding 1)), (.move (.generated .binding 0))])) (Corr.mCons (Γ' := [(3, (.list .string), (some 3)), (2, .string, (some 2)), (1, .string, (some 1)), (0, (.list .string), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.move (.generated .binding 0))) (Corr.mCons (Γ' := [(3, (.list .string), (some 3)), (2, .string, (some 2)), (1, .string, (some 1)), (0, (.list .string), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.construct .cons [(.move (.generated .binding 2)), (.call (.function 8) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [.string, (.list .string)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .string), .string]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.build (ts := [.string, (.list .string)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := [.string, (.list .string)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun9 : FunOK program krate flags 9 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 19)) none (.call (.function 10) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false))], (.matchOn (.move (.generated .holder 19)) [(.mk .none (.mk [] (.construct (.nil .str) []))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.move (.generated .binding 2))))]), [(1, .string, (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option (.list .string))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .string (.list .string))), .string]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, .string, (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.nil .str) [])) (Corr.mCons (Γ' := [(2, (.list .string), (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.move (.generated .binding 2))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun10 : FunOK program krate flags 10 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 20)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 20)) [(.mk .none (.mk [] (.construct (.none (.list .str)) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 24)) none (.block (.mk [(.mk (.bind (.generated .operand 22)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 23)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 21)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 21)))))] (.call (.runtime .compare) [(.move (.generated .operand 22)), (.move (.generated .operand 23))] false))))] (.matchOn (.move (.generated .holder 24)) [(.mk (.ordering .less) (.mk [] (.construct (.none (.list .str)) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 25))]) none (.move (.generated .binding 2)))] (.move (.generated .part 25))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 10) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)))])))]), [(1, .string, (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.pair .string (.list .string)))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .string, (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none (.list .str)) [])) (Corr.mCons (Γ' := [(3, (.list (.pair .string (.list .string))), (some 3)), (2, (.pair .string (.list .string)), (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 24)) none (.block (.mk [(.mk (.bind (.generated .operand 22)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 23)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 21)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 21)))))] (.call (.runtime .compare) [(.move (.generated .operand 22)), (.move (.generated .operand 23))] false))))]) (tail := (.matchOn (.move (.generated .holder 24)) [(.mk (.ordering .less) (.mk [] (.construct (.none (.list .str)) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 25))]) none (.move (.generated .binding 2)))] (.move (.generated .part 25))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 10) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 22)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 23)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 21)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 21)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 22)), (.move (.generated .operand 23))] false)) (Corr.prim (ts := [.string, .string]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 21)), .wild]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 21))) (Corr.first (ta := .string) (tb := (.list .string)) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list (.pair .string (.list .string))), (some 3)), (2, (.pair .string (.list .string)), (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none (.list .str)) [])) (Corr.mCons (Γ' := [(3, (.list (.pair .string (.list .string))), (some 3)), (2, (.pair .string (.list .string)), (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 25))]) none (.move (.generated .binding 2)))] (.move (.generated .part 25))))])) (Corr.mCons (Γ' := [(3, (.list (.pair .string (.list .string))), (some 3)), (2, (.pair .string (.list .string)), (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.call (.function 10) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list (.pair .string (.list .string))), .string]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := [(.list .string)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 25))]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 25))) (Corr.second (ta := .string) (tb := (.list .string)) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun11 : FunOK program krate flags 11 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 26)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 26)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 29)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 28)) none (.move (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))] (.matchOn (.move (.generated .holder 29)) [(.mk (.ordering .less) (.mk [] (.lit (.bool false)))), (.mk (.ordering .same) (.mk [] (.lit (.bool true)))), (.mk (.ordering .more) (.mk [] (.call (.function 11) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)))])))]), [(1, .string, (some 1)), (0, (.list .string), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .string)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .string, (some 1)), (0, (.list .string), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(3, (.list .string), (some 3)), (2, .string, (some 2)), (1, .string, (some 1)), (0, (.list .string), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 29)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 28)) none (.move (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))]) (tail := (.matchOn (.move (.generated .holder 29)) [(.mk (.ordering .less) (.mk [] (.lit (.bool false)))), (.mk (.ordering .same) (.mk [] (.lit (.bool true)))), (.mk (.ordering .more) (.mk [] (.call (.function 11) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 27)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 28)) none (.move (.generated .binding 2)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false)) (Corr.prim (ts := [.string, .string]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list .string), (some 3)), (2, .string, (some 2)), (1, .string, (some 1)), (0, (.list .string), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(3, (.list .string), (some 3)), (2, .string, (some 2)), (1, .string, (some 1)), (0, (.list .string), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(3, (.list .string), (some 3)), (2, .string, (some 2)), (1, .string, (some 1)), (0, (.list .string), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.call (.function 11) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list .string), .string]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ + +theorem fun12 : FunOK program krate flags 12 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 30)) none (.clone (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 30)) [(.mk .none (.mk [] (.construct (.nil .str) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 33)) none (.block (.mk [(.mk (.bind (.generated .operand 31)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 32)) none (.clone (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))))] (.matchOn (.move (.generated .holder 33)) [(.mk (.ordering .less) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 3)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.move (.generated .binding 2)), (.call (.function 12) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)])))])))]), [(1, .string, (some 1)), (0, (.list .string), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .string)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .string, (some 1)), (0, (.list .string), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.nil .str) [])) (Corr.mCons (Γ' := [(3, (.list .string), (some 3)), (2, .string, (some 2)), (1, .string, (some 1)), (0, (.list .string), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 33)) none (.block (.mk [(.mk (.bind (.generated .operand 31)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 32)) none (.clone (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))))]) (tail := (.matchOn (.move (.generated .holder 33)) [(.mk (.ordering .less) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 3)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.move (.generated .binding 2)), (.call (.function 12) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)])))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 31)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 32)) none (.clone (.generated .binding 2)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false)) (Corr.prim (ts := [.string, .string]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list .string), (some 3)), (2, .string, (some 2)), (1, .string, (some 1)), (0, (.list .string), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 0))) (Corr.mCons (Γ' := [(3, (.list .string), (some 3)), (2, .string, (some 2)), (1, .string, (some 1)), (0, (.list .string), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.move (.generated .binding 3))) (Corr.mCons (Γ' := [(3, (.list .string), (some 3)), (2, .string, (some 2)), (1, .string, (some 1)), (0, (.list .string), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.construct .cons [(.move (.generated .binding 2)), (.call (.function 12) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [.string, (.list .string)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .string), .string]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun13 : FunOK program krate flags 13 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 34)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 34)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 14) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 35))]) none (.move (.generated .binding 1)))] (.move (.generated .part 35))))] false) (.mk [(.mk (.bind (.generated .holder 36)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 36)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 41)) none (.block (.mk [(.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 37)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 37))))), (.mk (.bind (.generated .operand 40)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 38)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 38)))))] (.call (.runtime .compare) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] false))))] (.cond (.matchOn (.move (.generated .holder 41)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 13) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]), [(0, (.list (.pair .string (.list .string))), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.pair .string (.list .string)))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list (.pair .string (.list .string))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, (.list (.pair .string (.list .string))), (some 2)), (1, (.pair .string (.list .string)), (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 14) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 35))]) none (.move (.generated .binding 1)))] (.move (.generated .part 35))))] false) (.mk [(.mk (.bind (.generated .holder 36)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 36)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 41)) none (.block (.mk [(.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 37)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 37))))), (.mk (.bind (.generated .operand 40)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 38)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 38)))))] (.call (.runtime .compare) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] false))))] (.cond (.matchOn (.move (.generated .holder 41)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 13) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 14) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 35))]) none (.move (.generated .binding 1)))] (.move (.generated .part 35))))] false)) (lk := []) (Corr.callOps (ts := [(.list .string)]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 35))]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 35))) (Corr.second (ta := .string) (tb := (.list .string)) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .holder 36)) none (.clone (.generated .binding 2)))]) (ta := (.matchOn (.uncons (.generated .holder 36)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 41)) none (.block (.mk [(.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 37)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 37))))), (.mk (.bind (.generated .operand 40)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 38)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 38)))))] (.call (.runtime .compare) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] false))))] (.cond (.matchOn (.move (.generated .holder 41)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 13) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (lb := []) (tb := (.lit (.bool false))) (Corr.matchArms (st := (.list (.pair .string (.list .string)))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.pair .string (.list .string))), (some 2)), (1, (.pair .string (.list .string)), (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair .string (.list .string))), none), (3, (.pair .string (.list .string)), (some 3)), (2, (.list (.pair .string (.list .string))), (some 2)), (1, (.pair .string (.list .string)), (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 41)) none (.block (.mk [(.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 37)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 37))))), (.mk (.bind (.generated .operand 40)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 38)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 38)))))] (.call (.runtime .compare) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 41)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 13) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .holder 41)) none (.block (.mk [(.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 37)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 37))))), (.mk (.bind (.generated .operand 40)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 38)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 38)))))] (.call (.runtime .compare) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] false))))]) (ce := (.matchOn (.move (.generated .holder 41)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 37)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 37))))), (.mk (.bind (.generated .operand 40)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 38)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 38)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] false)) (Corr.prim (ts := [.string, .string]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 37)), .wild]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 37))) (Corr.first (ta := .string) (tb := (.list .string)) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 38)), .wild]) none (.move (.generated .binding 3)))]) (tail := (.move (.generated .part 38))) (Corr.first (ta := .string) (tb := (.list .string)) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.list (.pair .string (.list .string))), none), (3, (.pair .string (.list .string)), (some 3)), (2, (.list (.pair .string (.list .string))), (some 2)), (1, (.pair .string (.list .string)), (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair .string (.list .string))), none), (3, (.pair .string (.list .string)), (some 3)), (2, (.list (.pair .string (.list .string))), (some 2)), (1, (.pair .string (.list .string)), (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, (.list (.pair .string (.list .string))), none), (3, (.pair .string (.list .string)), (some 3)), (2, (.list (.pair .string (.list .string))), (some 2)), (1, (.pair .string (.list .string)), (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 13) [(.move (.generated .binding 2))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.list (.pair .string (.list .string)))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ + +theorem fun14 : FunOK program krate flags 14 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 42)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 42)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [(.mk (.bind (.generated .holder 43)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 43)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 46)) none (.block (.mk [(.mk (.bind (.generated .operand 44)) none (.move (.generated .binding 1))), (.mk (.bind (.generated .operand 45)) none (.move (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 44)), (.move (.generated .operand 45))] false))))] (.cond (.matchOn (.move (.generated .holder 46)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 14) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])))]), [(0, (.list .string), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .string)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list .string), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, (.list .string), (some 2)), (1, .string, (some 1)), (0, (.list .string), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 43)) none (.clone (.generated .binding 2)))]) (tail := (.matchOn (.uncons (.generated .holder 43)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 46)) none (.block (.mk [(.mk (.bind (.generated .operand 44)) none (.move (.generated .binding 1))), (.mk (.bind (.generated .operand 45)) none (.move (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 44)), (.move (.generated .operand 45))] false))))] (.cond (.matchOn (.move (.generated .holder 46)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 14) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := (.list .string)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .string), (some 2)), (1, .string, (some 1)), (0, (.list .string), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list .string), none), (3, .string, (some 3)), (2, (.list .string), (some 2)), (1, .string, (some 1)), (0, (.list .string), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 46)) none (.block (.mk [(.mk (.bind (.generated .operand 44)) none (.move (.generated .binding 1))), (.mk (.bind (.generated .operand 45)) none (.move (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 44)), (.move (.generated .operand 45))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 46)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 14) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .holder 46)) none (.block (.mk [(.mk (.bind (.generated .operand 44)) none (.move (.generated .binding 1))), (.mk (.bind (.generated .operand 45)) none (.move (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 44)), (.move (.generated .operand 45))] false))))]) (ce := (.matchOn (.move (.generated .holder 46)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 44)) none (.move (.generated .binding 1))), (.mk (.bind (.generated .operand 45)) none (.move (.generated .binding 3)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 44)), (.move (.generated .operand 45))] false)) (Corr.prim (ts := [.string, .string]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.list .string), none), (3, .string, (some 3)), (2, (.list .string), (some 2)), (1, .string, (some 1)), (0, (.list .string), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list .string), none), (3, .string, (some 3)), (2, (.list .string), (some 2)), (1, .string, (some 1)), (0, (.list .string), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, (.list .string), none), (3, .string, (some 3)), (2, (.list .string), (some 2)), (1, .string, (some 1)), (0, (.list .string), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 14) [(.move (.generated .binding 2))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.list .string)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ + +theorem fun15 : FunOK program krate flags 15 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 13) [(.clone (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.call (.function 0) [(.move (.generated .binding 0))] true)]))) (.mk [] (.succeed (.construct (.none (.option (.list .str))) [])))), [(0, (.list (.pair .string (.list .string))), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 13) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.list (.pair .string (.list .string)))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.call (.function 0) [(.move (.generated .binding 0))] true)]))) (lb := []) (tb := (.succeed (.construct (.none (.option (.list .str))) []))) (Corr.fOfB (Corr.build (ts := [(.option (.list .string))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .string (.list .string)))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | 3 => exact fun3 + | 4 => exact fun4 + | 5 => exact fun5 + | 6 => exact fun6 + | 7 => exact fun7 + | 8 => exact fun8 + | 9 => exact fun9 + | 10 => exact fun10 + | 11 => exact fun11 + | 12 => exact fun12 + | 13 => exact fun13 + | 14 => exact fun14 + | 15 => exact fun15 + | _ + 16 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R8.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R8.lean new file mode 100644 index 000000000..e99e8e302 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R8.lean @@ -0,0 +1,188 @@ +import LexLeanPreservation.Core +import LexLeanPreservation.Values +import LexLeanPreservation.Primitives +import LexLeanPreservation.Fixed +import LexLeanPreservation.Keys +import LexLeanPreservation.Templates +import LexLeanPreservation.Validate +import Coverage.Boundary +import Coverage.Colls +import Coverage.Main +import Coverage.Prims +import Coverage.RecRoots +import Coverage.Recur +import Coverage.Syntax +import Coverage.Types +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +set_option linter.unusedVariables false +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8 + +def __prog : _root_.LexLeanTarget.TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1, 2, 3, 4, 5, 6, 7, 8, 9], types := [(.list (.pair (.pair .nat .string) .bool)), (.pair .nat .string), (.list (.pair (.fixed .i8) .nat)), (.fixed .i8), (.list (.pair .bool .nat)), .bool, (.list (.pair .int .nat)), .int, (.list (.pair (.fixed .u64) .nat)), (.fixed .u64)], result := (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat))))), + body := (.build .pair (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat))))) [(.call 1 [(.var 0), (.var 1)]), (.build .pair (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))) [(.call 2 [(.var 2), (.var 3)]), (.build .pair (.pair (.option .nat) (.pair (.option .nat) (.option .nat))) [(.call 3 [(.var 4), (.var 5)]), (.build .pair (.pair (.option .nat) (.option .nat)) [(.call 4 [(.var 6), (.var 7)]), (.call 5 [(.var 8), (.var 9)])])])])]) }, + { parameters := [0, 1], types := [(.list (.pair (.pair .nat .string) .bool)), (.pair .nat .string)], result := (.option .bool), + body := (.«match» (.option .bool) (.var 0) [(.arm .nil [] (.build .none (.option .bool) [])), (.arm .cons [2, 3] (.«match» (.option .bool) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.build .none (.option .bool) [])), (.arm .eq [] (.build .some (.option .bool) [(.second (.var 2))])), (.arm .gt [] (.call 1 [(.var 3), (.var 1)]))]))]) }, + { parameters := [0, 1], types := [(.list (.pair (.fixed .i8) .nat)), (.fixed .i8)], result := (.option .nat), + body := (.«match» (.option .nat) (.var 0) [(.arm .nil [] (.build .none (.option .nat) [])), (.arm .cons [2, 3] (.«match» (.option .nat) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.build .none (.option .nat) [])), (.arm .eq [] (.build .some (.option .nat) [(.second (.var 2))])), (.arm .gt [] (.call 2 [(.var 3), (.var 1)]))]))]) }, + { parameters := [0, 1], types := [(.list (.pair .bool .nat)), .bool], result := (.option .nat), + body := (.«match» (.option .nat) (.var 0) [(.arm .nil [] (.build .none (.option .nat) [])), (.arm .cons [2, 3] (.«match» (.option .nat) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.build .none (.option .nat) [])), (.arm .eq [] (.build .some (.option .nat) [(.second (.var 2))])), (.arm .gt [] (.call 3 [(.var 3), (.var 1)]))]))]) }, + { parameters := [0, 1], types := [(.list (.pair .int .nat)), .int], result := (.option .nat), + body := (.«match» (.option .nat) (.var 0) [(.arm .nil [] (.build .none (.option .nat) [])), (.arm .cons [2, 3] (.«match» (.option .nat) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.build .none (.option .nat) [])), (.arm .eq [] (.build .some (.option .nat) [(.second (.var 2))])), (.arm .gt [] (.call 4 [(.var 3), (.var 1)]))]))]) }, + { parameters := [0, 1], types := [(.list (.pair (.fixed .u64) .nat)), (.fixed .u64)], result := (.option .nat), + body := (.«match» (.option .nat) (.var 0) [(.arm .nil [] (.build .none (.option .nat) [])), (.arm .cons [2, 3] (.«match» (.option .nat) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.build .none (.option .nat) [])), (.arm .eq [] (.build .some (.option .nat) [(.second (.var 2))])), (.arm .gt [] (.call 5 [(.var 3), (.var 1)]))]))]) }, + { parameters := [0], types := [(.list (.pair (.pair .nat .string) .bool))], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 7 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 6 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, + { parameters := [0], types := [.bool], result := .bool, + body := (.build .true .bool []) }, + { parameters := [0], types := [(.list (.pair (.fixed .i8) .nat))], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 9 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 8 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, + { parameters := [0], types := [.nat], result := .bool, + body := (.build .true .bool []) }, + { parameters := [0], types := [(.list (.pair .bool .nat))], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 9 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 10 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, + { parameters := [0], types := [(.list (.pair .int .nat))], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 9 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 11 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, + { parameters := [0], types := [(.list (.pair (.fixed .u64) .nat))], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 9 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 12 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, + { parameters := [0, 1, 2, 3, 4, 5, 6, 7, 8, 9], types := [(.list (.pair (.pair .nat .string) .bool)), (.pair .nat .string), (.list (.pair (.fixed .i8) .nat)), (.fixed .i8), (.list (.pair .bool .nat)), .bool, (.list (.pair .int .nat)), .int, (.list (.pair (.fixed .u64) .nat)), (.fixed .u64)], result := (.option (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))), + body := (.cond (.call 6 [(.var 0)]) (.cond (.call 8 [(.var 2)]) (.cond (.call 10 [(.var 4)]) (.cond (.call 11 [(.var 6)]) (.cond (.call 12 [(.var 8)]) (.build .some (.option (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [(.call 0 [(.var 0), (.var 1), (.var 2), (.var 3), (.var 4), (.var 5), (.var 6), (.var 7), (.var 8), (.var 9)])]) (.build .none (.option (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])) (.build .none (.option (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])) (.build .none (.option (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])) (.build .none (.option (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])) (.build .none (.option (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])) }] } + +def __fits_0 (a : (List (Prod (Prod Nat String) Bool))) (k : (Prod Nat String)) (i : (List (Prod Int8 Nat))) (j : Int8) (b : (List (Prod Bool Nat))) (c : Bool) (d : (List (Prod Int Nat))) (e : Int) (u : (List (Prod UInt64 Nat))) (w : UInt64) : Bool := + ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) + +theorem __rel_0 (a : (List (Prod (Prod Nat String) Bool))) (k : (Prod Nat String)) (i : (List (Prod Int8 Nat))) (j : Int8) (b : (List (Prod Bool Nat))) (c : Bool) (d : (List (Prod Int Nat))) (e : Int) (u : (List (Prod UInt64 Nat))) (w : UInt64) : _root_.LexLeanPreservation.FunRel __prog 0 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.string) _root_.LexLeanTarget.TargetSyntax.Value.bool)) a), ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.string) k), ((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.i8 _root_.LexLeanTarget.TargetSyntax.Value.nat)) i), (_root_.LexLeanTarget.TargetSyntax.Value.i8 j), ((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.nat)) b), (_root_.LexLeanTarget.TargetSyntax.Value.bool c), ((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int _root_.LexLeanTarget.TargetSyntax.Value.nat)) d), (_root_.LexLeanTarget.TargetSyntax.Value.int e), ((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.u64 _root_.LexLeanTarget.TargetSyntax.Value.nat)) u), (_root_.LexLeanTarget.TargetSyntax.Value.u64 w)] (_root_.LexLeanPreservation.Rel (__fits_0 a k i j b c d e u w) ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat))))) (Coverage.Colls.keyTypes a k i j b c d e u w))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.tpl_mapLookup (_root_.LexLeanPreservation.keySpec_pair (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanPreservation.keySpec_string _root_.LexLeanCollections.compareCodes rfl (fun _ _ => rfl) (fun _ _ => rfl) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanCollections.Key.compare : (Prod Nat String) -> (Prod Nat String) -> Ordering) (fun _ _ __h => by simp only [_root_.LexLeanCollections.Key.compare] at __h ⊢; simp only [__h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.Key.compare] at __h ⊢; simp only [__h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.Key.compare] at __h ⊢; simp only [__h])) _root_.LexLeanTarget.TargetSyntax.Value.bool (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.string) _root_.LexLeanTarget.TargetSyntax.Value.bool)) (fun _ => rfl) (_root_.LexLeanPreservation.optEnc _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) _root_.LexLeanCollections.lookupEntry (fun _ => rfl) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (p := __prog) (fi := 1) (tk := (.pair .nat .string)) (tw := .bool) rfl (a) (k))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.tpl_mapLookup (_root_.LexLeanPreservation.keySpec_i8 (_root_.LexLeanCollections.Key.compare : Int8 -> Int8 -> Ordering) (fun _ _ => rfl)) _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.i8 _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) (_root_.LexLeanPreservation.optEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) _root_.LexLeanCollections.lookupEntry (fun _ => rfl) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (p := __prog) (fi := 2) (tk := (.fixed .i8)) (tw := .nat) rfl (i) (j))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.tpl_mapLookup (_root_.LexLeanPreservation.keySpec_bool (_root_.LexLeanCollections.Key.compare : Bool -> Bool -> Ordering) (fun _ _ => rfl)) _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) (_root_.LexLeanPreservation.optEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) _root_.LexLeanCollections.lookupEntry (fun _ => rfl) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (p := __prog) (fi := 3) (tk := .bool) (tw := .nat) rfl (b) (c))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.tpl_mapLookup (_root_.LexLeanPreservation.keySpec_int (_root_.LexLeanCollections.Key.compare : Int -> Int -> Ordering) (fun _ _ => rfl)) _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) (_root_.LexLeanPreservation.optEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) _root_.LexLeanCollections.lookupEntry (fun _ => rfl) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (p := __prog) (fi := 4) (tk := .int) (tw := .nat) rfl (d) (e))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.tpl_mapLookup (_root_.LexLeanPreservation.keySpec_u64 (_root_.LexLeanCollections.Key.compare : UInt64 -> UInt64 -> Ordering) (fun _ _ => rfl)) _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.u64 _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) (_root_.LexLeanPreservation.optEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) _root_.LexLeanCollections.lookupEntry (fun _ => rfl) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (p := __prog) (fi := 5) (tk := (.fixed .u64)) (tw := .nat) rfl (u) (w))) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) + +def denote (a : (List (Prod (Prod Nat String) Bool))) (k : (Prod Nat String)) (i : (List (Prod Int8 Nat))) (j : Int8) (b : (List (Prod Bool Nat))) (c : Bool) (d : (List (Prod Int Nat))) (e : Int) (u : (List (Prod UInt64 Nat))) (w : UInt64) : _root_.LexLeanPreservation.Obs := + _root_.cond (__fits_0 a k i j b c d e u w) (_root_.LexLeanPreservation.Obs.value (((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat))))) (Coverage.Colls.keyTypes a k i j b c d e u w)))) _root_.LexLeanPreservation.Obs.overflow + +theorem root (a : (List (Prod (Prod Nat String) Bool))) (k : (Prod Nat String)) (i : (List (Prod Int8 Nat))) (j : Int8) (b : (List (Prod Bool Nat))) (c : Bool) (d : (List (Prod Int Nat))) (e : Int) (u : (List (Prod UInt64 Nat))) (w : UInt64) : _root_.LexLeanPreservation.RunConv __prog 0 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.string) _root_.LexLeanTarget.TargetSyntax.Value.bool)) a), ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.string) k), ((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.i8 _root_.LexLeanTarget.TargetSyntax.Value.nat)) i), (_root_.LexLeanTarget.TargetSyntax.Value.i8 j), ((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.nat)) b), (_root_.LexLeanTarget.TargetSyntax.Value.bool c), ((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int _root_.LexLeanTarget.TargetSyntax.Value.nat)) d), (_root_.LexLeanTarget.TargetSyntax.Value.int e), ((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.u64 _root_.LexLeanTarget.TargetSyntax.Value.nat)) u), (_root_.LexLeanTarget.TargetSyntax.Value.u64 w)] (_root_.LexLeanPreservation.Rel (__fits_0 a k i j b c d e u w) ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat))))) (Coverage.Colls.keyTypes a k i j b c d e u w))) := + _root_.LexLeanPreservation.run_of_funRel (__rel_0 a k i j b c d e u w) + +def __valid_7 : Bool -> Bool := + fun _ => Bool.true + +def __inv_7 : Bool -> Prop := + fun _ => _root_.True + +theorem __viff_7 : ∀ (__v : Bool), __valid_7 __v = Bool.true ↔ __inv_7 __v := + fun __v => _root_.LexLeanPreservation.validTrue_inv __v + +theorem __vrel_7 : ∀ (__v : Bool), _root_.LexLeanPreservation.FunRel __prog 7 [(_root_.LexLeanTarget.TargetSyntax.Value.bool __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_7 __v))) := + _root_.LexLeanPreservation.tpl_validTrue _root_.LexLeanTarget.TargetSyntax.Value.bool rfl + +def __valid_6 : (List (Prod (Prod Nat String) Bool)) -> Bool := + _root_.LexLeanPreservation.ascMap (_root_.LexLeanCollections.Key.compare : (Prod Nat String) -> (Prod Nat String) -> Ordering) __valid_7 + +def __inv_6 : (List (Prod (Prod Nat String) Bool)) -> Prop := + _root_.LexLeanPreservation.InvMap (_root_.LexLeanCollections.Key.compare : (Prod Nat String) -> (Prod Nat String) -> Ordering) __inv_7 + +theorem __viff_6 : ∀ (__v : (List (Prod (Prod Nat String) Bool))), __valid_6 __v = Bool.true ↔ __inv_6 __v := + _root_.LexLeanPreservation.ascMap_inv (_root_.LexLeanCollections.Key.compare : (Prod Nat String) -> (Prod Nat String) -> Ordering) __valid_7 __inv_7 __viff_7 + +theorem __vrel_6 : ∀ (__v : (List (Prod (Prod Nat String) Bool))), _root_.LexLeanPreservation.FunRel __prog 6 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.string) _root_.LexLeanTarget.TargetSyntax.Value.bool)) __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_6 __v))) := + _root_.LexLeanPreservation.tpl_validMap (_root_.LexLeanPreservation.keySpec_pair (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanPreservation.keySpec_string _root_.LexLeanCollections.compareCodes rfl (fun _ _ => rfl) (fun _ _ => rfl) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanCollections.Key.compare : (Prod Nat String) -> (Prod Nat String) -> Ordering) (fun _ _ __h => by simp only [_root_.LexLeanCollections.Key.compare] at __h ⊢; simp only [__h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.Key.compare] at __h ⊢; simp only [__h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.Key.compare] at __h ⊢; simp only [__h])) __valid_7 (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.string) _root_.LexLeanTarget.TargetSyntax.Value.bool)) (fun _ => rfl) __vrel_7 rfl + +def __valid_9 : Nat -> Bool := + fun _ => Bool.true + +def __inv_9 : Nat -> Prop := + fun _ => _root_.True + +theorem __viff_9 : ∀ (__v : Nat), __valid_9 __v = Bool.true ↔ __inv_9 __v := + fun __v => _root_.LexLeanPreservation.validTrue_inv __v + +theorem __vrel_9 : ∀ (__v : Nat), _root_.LexLeanPreservation.FunRel __prog 9 [(_root_.LexLeanTarget.TargetSyntax.Value.nat __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_9 __v))) := + _root_.LexLeanPreservation.tpl_validTrue _root_.LexLeanTarget.TargetSyntax.Value.nat rfl + +def __valid_8 : (List (Prod Int8 Nat)) -> Bool := + _root_.LexLeanPreservation.ascMap (_root_.LexLeanCollections.Key.compare : Int8 -> Int8 -> Ordering) __valid_9 + +def __inv_8 : (List (Prod Int8 Nat)) -> Prop := + _root_.LexLeanPreservation.InvMap (_root_.LexLeanCollections.Key.compare : Int8 -> Int8 -> Ordering) __inv_9 + +theorem __viff_8 : ∀ (__v : (List (Prod Int8 Nat))), __valid_8 __v = Bool.true ↔ __inv_8 __v := + _root_.LexLeanPreservation.ascMap_inv (_root_.LexLeanCollections.Key.compare : Int8 -> Int8 -> Ordering) __valid_9 __inv_9 __viff_9 + +theorem __vrel_8 : ∀ (__v : (List (Prod Int8 Nat))), _root_.LexLeanPreservation.FunRel __prog 8 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.i8 _root_.LexLeanTarget.TargetSyntax.Value.nat)) __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_8 __v))) := + _root_.LexLeanPreservation.tpl_validMap (_root_.LexLeanPreservation.keySpec_i8 (_root_.LexLeanCollections.Key.compare : Int8 -> Int8 -> Ordering) (fun _ _ => rfl)) __valid_9 (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.i8 _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) __vrel_9 rfl + +def __valid_10 : (List (Prod Bool Nat)) -> Bool := + _root_.LexLeanPreservation.ascMap (_root_.LexLeanCollections.Key.compare : Bool -> Bool -> Ordering) __valid_9 + +def __inv_10 : (List (Prod Bool Nat)) -> Prop := + _root_.LexLeanPreservation.InvMap (_root_.LexLeanCollections.Key.compare : Bool -> Bool -> Ordering) __inv_9 + +theorem __viff_10 : ∀ (__v : (List (Prod Bool Nat))), __valid_10 __v = Bool.true ↔ __inv_10 __v := + _root_.LexLeanPreservation.ascMap_inv (_root_.LexLeanCollections.Key.compare : Bool -> Bool -> Ordering) __valid_9 __inv_9 __viff_9 + +theorem __vrel_10 : ∀ (__v : (List (Prod Bool Nat))), _root_.LexLeanPreservation.FunRel __prog 10 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.nat)) __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_10 __v))) := + _root_.LexLeanPreservation.tpl_validMap (_root_.LexLeanPreservation.keySpec_bool (_root_.LexLeanCollections.Key.compare : Bool -> Bool -> Ordering) (fun _ _ => rfl)) __valid_9 (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) __vrel_9 rfl + +def __valid_11 : (List (Prod Int Nat)) -> Bool := + _root_.LexLeanPreservation.ascMap (_root_.LexLeanCollections.Key.compare : Int -> Int -> Ordering) __valid_9 + +def __inv_11 : (List (Prod Int Nat)) -> Prop := + _root_.LexLeanPreservation.InvMap (_root_.LexLeanCollections.Key.compare : Int -> Int -> Ordering) __inv_9 + +theorem __viff_11 : ∀ (__v : (List (Prod Int Nat))), __valid_11 __v = Bool.true ↔ __inv_11 __v := + _root_.LexLeanPreservation.ascMap_inv (_root_.LexLeanCollections.Key.compare : Int -> Int -> Ordering) __valid_9 __inv_9 __viff_9 + +theorem __vrel_11 : ∀ (__v : (List (Prod Int Nat))), _root_.LexLeanPreservation.FunRel __prog 11 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int _root_.LexLeanTarget.TargetSyntax.Value.nat)) __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_11 __v))) := + _root_.LexLeanPreservation.tpl_validMap (_root_.LexLeanPreservation.keySpec_int (_root_.LexLeanCollections.Key.compare : Int -> Int -> Ordering) (fun _ _ => rfl)) __valid_9 (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) __vrel_9 rfl + +def __valid_12 : (List (Prod UInt64 Nat)) -> Bool := + _root_.LexLeanPreservation.ascMap (_root_.LexLeanCollections.Key.compare : UInt64 -> UInt64 -> Ordering) __valid_9 + +def __inv_12 : (List (Prod UInt64 Nat)) -> Prop := + _root_.LexLeanPreservation.InvMap (_root_.LexLeanCollections.Key.compare : UInt64 -> UInt64 -> Ordering) __inv_9 + +theorem __viff_12 : ∀ (__v : (List (Prod UInt64 Nat))), __valid_12 __v = Bool.true ↔ __inv_12 __v := + _root_.LexLeanPreservation.ascMap_inv (_root_.LexLeanCollections.Key.compare : UInt64 -> UInt64 -> Ordering) __valid_9 __inv_9 __viff_9 + +theorem __vrel_12 : ∀ (__v : (List (Prod UInt64 Nat))), _root_.LexLeanPreservation.FunRel __prog 12 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.u64 _root_.LexLeanTarget.TargetSyntax.Value.nat)) __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_12 __v))) := + _root_.LexLeanPreservation.tpl_validMap (_root_.LexLeanPreservation.keySpec_u64 (_root_.LexLeanCollections.Key.compare : UInt64 -> UInt64 -> Ordering) (fun _ _ => rfl)) __valid_9 (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.u64 _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) __vrel_9 rfl + +def entryFits (a : (List (Prod (Prod Nat String) Bool))) (k : (Prod Nat String)) (i : (List (Prod Int8 Nat))) (j : Int8) (b : (List (Prod Bool Nat))) (c : Bool) (d : (List (Prod Int Nat))) (e : Int) (u : (List (Prod UInt64 Nat))) (w : UInt64) : Bool := + (if __valid_6 a then (if __valid_8 i then (if __valid_10 b then (if __valid_11 d then (if __valid_12 u then __fits_0 a k i j b c d e u w else Bool.true) else Bool.true) else Bool.true) else Bool.true) else Bool.true) + +def entryValue (a : (List (Prod (Prod Nat String) Bool))) (k : (Prod Nat String)) (i : (List (Prod Int8 Nat))) (j : Int8) (b : (List (Prod Bool Nat))) (c : Bool) (d : (List (Prod Int Nat))) (e : Int) (u : (List (Prod UInt64 Nat))) (w : UInt64) : _root_.LexLeanTarget.TargetSyntax.Value := + (if __valid_6 a then (if __valid_8 i then (if __valid_10 b then (if __valid_11 d then (if __valid_12 u then (_root_.LexLeanTarget.TargetSyntax.Value.some ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat))))) (Coverage.Colls.keyTypes a k i j b c d e u w))) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) + +/-- The entry's observation. -/ +def denoteEntry (a : (List (Prod (Prod Nat String) Bool))) (k : (Prod Nat String)) (i : (List (Prod Int8 Nat))) (j : Int8) (b : (List (Prod Bool Nat))) (c : Bool) (d : (List (Prod Int Nat))) (e : Int) (u : (List (Prod UInt64 Nat))) (w : UInt64) : _root_.LexLeanPreservation.Obs := + _root_.cond (_root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.entryFits a k i j b c d e u w) (_root_.LexLeanPreservation.Obs.value (_root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.entryValue a k i j b c d e u w)) _root_.LexLeanPreservation.Obs.overflow + +/-- §17.12's invariants of the validated parameters. -/ +def accepts (a : (List (Prod (Prod Nat String) Bool))) (k : (Prod Nat String)) (i : (List (Prod Int8 Nat))) (j : Int8) (b : (List (Prod Bool Nat))) (c : Bool) (d : (List (Prod Int Nat))) (e : Int) (u : (List (Prod UInt64 Nat))) (w : UInt64) : Prop := + (__inv_6 a ∧ (__inv_8 i ∧ (__inv_10 b ∧ (__inv_11 d ∧ (__inv_12 u ∧ _root_.True))))) + +theorem entry (a : (List (Prod (Prod Nat String) Bool))) (k : (Prod Nat String)) (i : (List (Prod Int8 Nat))) (j : Int8) (b : (List (Prod Bool Nat))) (c : Bool) (d : (List (Prod Int Nat))) (e : Int) (u : (List (Prod UInt64 Nat))) (w : UInt64) : _root_.LexLeanPreservation.RunConv __prog 13 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.string) _root_.LexLeanTarget.TargetSyntax.Value.bool)) a), ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.string) k), ((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.i8 _root_.LexLeanTarget.TargetSyntax.Value.nat)) i), (_root_.LexLeanTarget.TargetSyntax.Value.i8 j), ((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.nat)) b), (_root_.LexLeanTarget.TargetSyntax.Value.bool c), ((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int _root_.LexLeanTarget.TargetSyntax.Value.nat)) d), (_root_.LexLeanTarget.TargetSyntax.Value.int e), ((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.u64 _root_.LexLeanTarget.TargetSyntax.Value.nat)) u), (_root_.LexLeanTarget.TargetSyntax.Value.u64 w)] (_root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.denoteEntry a k i j b c d e u w) := + _root_.LexLeanPreservation.run_of_funRel (_root_.LexLeanPreservation.FunRel.fits_eq (_root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun __c => if __c then (if __valid_8 i then (if __valid_10 b then (if __valid_11 d then (if __valid_12 u then __fits_0 a k i j b c d e u w else Bool.true) else Bool.true) else Bool.true) else Bool.true) else Bool.true) (fun __c => if __c then (if __valid_8 i then (if __valid_10 b then (if __valid_11 d then (if __valid_12 u then (_root_.LexLeanTarget.TargetSyntax.Value.some ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat))))) (Coverage.Colls.keyTypes a k i j b c d e u w))) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) (__valid_6 a) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_6 a)) (fun _ => _root_.LexLeanPreservation.Conv.fits_eq (_root_.LexLeanPreservation.conv_cond (fun __c => if __c then (if __valid_10 b then (if __valid_11 d then (if __valid_12 u then __fits_0 a k i j b c d e u w else Bool.true) else Bool.true) else Bool.true) else Bool.true) (fun __c => if __c then (if __valid_10 b then (if __valid_11 d then (if __valid_12 u then (_root_.LexLeanTarget.TargetSyntax.Value.some ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat))))) (Coverage.Colls.keyTypes a k i j b c d e u w))) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) (__valid_8 i) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_8 i)) (fun _ => _root_.LexLeanPreservation.Conv.fits_eq (_root_.LexLeanPreservation.conv_cond (fun __c => if __c then (if __valid_11 d then (if __valid_12 u then __fits_0 a k i j b c d e u w else Bool.true) else Bool.true) else Bool.true) (fun __c => if __c then (if __valid_11 d then (if __valid_12 u then (_root_.LexLeanTarget.TargetSyntax.Value.some ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat))))) (Coverage.Colls.keyTypes a k i j b c d e u w))) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) (__valid_10 b) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_10 b)) (fun _ => _root_.LexLeanPreservation.Conv.fits_eq (_root_.LexLeanPreservation.conv_cond (fun __c => if __c then (if __valid_12 u then __fits_0 a k i j b c d e u w else Bool.true) else Bool.true) (fun __c => if __c then (if __valid_12 u then (_root_.LexLeanTarget.TargetSyntax.Value.some ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat))))) (Coverage.Colls.keyTypes a k i j b c d e u w))) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) (__valid_11 d) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_11 d)) (fun _ => _root_.LexLeanPreservation.Conv.fits_eq (_root_.LexLeanPreservation.conv_cond (fun __c => if __c then __fits_0 a k i j b c d e u w else Bool.true) (fun __c => if __c then (_root_.LexLeanTarget.TargetSyntax.Value.some ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat))))) (Coverage.Colls.keyTypes a k i j b c d e u w))) else _root_.LexLeanTarget.TargetSyntax.Value.none) (__valid_12 u) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_12 u)) (fun _ => _root_.LexLeanPreservation.Conv.fits_eq (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)))))))))) (__rel_0 a k i j b c d e u w)) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some) (by simp)) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) (by simp)) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) (by simp)) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) (by simp)) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) (by simp)) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (by simp [_root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.entryFits])) + +theorem entry_accepts (a : (List (Prod (Prod Nat String) Bool))) (k : (Prod Nat String)) (i : (List (Prod Int8 Nat))) (j : Int8) (b : (List (Prod Bool Nat))) (c : Bool) (d : (List (Prod Int Nat))) (e : Int) (u : (List (Prod UInt64 Nat))) (w : UInt64) (__h : _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.accepts a k i j b c d e u w) : _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.denoteEntry a k i j b c d e u w = _root_.LexLeanPreservation.someObs (_root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.denote a k i j b c d e u w) := by + unfold _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.accepts at __h + unfold _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.denoteEntry _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.entryFits _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.entryValue _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.denote + simp only [_root_.if_true, (__viff_6 a).mpr __h.1, (__viff_8 i).mpr __h.2.1, (__viff_10 b).mpr __h.2.2.1, (__viff_11 d).mpr __h.2.2.2.1, (__viff_12 u).mpr __h.2.2.2.2.1] + cases __fits_0 a k i j b c d e u w <;> rfl + +theorem entry_refuses (a : (List (Prod (Prod Nat String) Bool))) (k : (Prod Nat String)) (i : (List (Prod Int8 Nat))) (j : Int8) (b : (List (Prod Bool Nat))) (c : Bool) (d : (List (Prod Int Nat))) (e : Int) (u : (List (Prod UInt64 Nat))) (w : UInt64) (__h : ¬ _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.accepts a k i j b c d e u w) : _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.denoteEntry a k i j b c d e u w = _root_.LexLeanPreservation.Obs.value _root_.LexLeanTarget.TargetSyntax.Value.none := by + unfold _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.accepts at __h + unfold _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.denoteEntry _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.entryFits _root_.LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.entryValue + cases __c0 : __valid_6 a + · simp + · cases __c1 : __valid_8 i + · simp + · cases __c2 : __valid_10 b + · simp + · cases __c3 : __valid_11 d + · simp + · cases __c4 : __valid_12 u + · simp + · exact _root_.absurd ⟨(__viff_6 a).mp __c0, (__viff_8 i).mp __c1, (__viff_10 b).mp __c2, (__viff_11 d).mp __c3, (__viff_12 u).mp __c4, _root_.trivial⟩ __h + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8 diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R8/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R8/Compose/RustStd.lex.tex new file mode 100644 index 000000000..c701a3a23 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R8/Compose/RustStd.lex.tex @@ -0,0 +1,1570 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.Compose.RustStd.root : @3073 := @3074 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.RustStd.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.RustStd.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.RustStd.flags +@3 := Nat +@4 := String +@5 := Prod.{0, 0} +@6 := @5 @3 +@7 := @6 @4 +@8 := Bool +@9 := @5 @7 +@10 := @9 @8 +@11 := List.{0} +@12 := @11 @10 +@13 := #10 +@14 := LexLeanTarget.TargetSyntax.Value.nat +@15 := LexLeanTarget.TargetSyntax.Value.string +@16 := LexLeanPreservation.encPair +@17 := @16 @3 +@18 := @17 @4 +@19 := @18 @14 +@20 := @19 @15 +@21 := LexLeanTarget.TargetSyntax.Value.bool +@22 := @16 @7 +@23 := @22 @8 +@24 := @23 @20 +@25 := @24 @21 +@26 := LexLeanPreservation.encList +@27 := @26 @10 +@28 := @27 @25 +@29 := @28 @13 +@30 := LexLeanTarget.TargetSyntax.Ty.nat +@31 := LexLeanTarget.TargetSyntax.Ty.string +@32 := LexLeanTarget.TargetSyntax.Ty.pair +@33 := @32 @30 +@34 := @33 @31 +@35 := LexLeanTarget.TargetSyntax.Ty.bool +@36 := @32 @34 +@37 := @36 @35 +@38 := LexLeanTarget.TargetSyntax.Ty.list +@39 := @38 @37 +@40 := #0 +@41 := LexLeanTarget.TargetSyntax.Program +@42 := LexLeanPreservation.Rust.RCrate +@43 := LexLeanPreservation.Rust.Flags +@44 := LexLeanPreservation.Rust.WT +@45 := #3 +@46 := @44 @45 +@47 := #2 +@48 := @46 @47 +@49 := #1 +@50 := @48 @49 +@51 := @14 @40 +@57 := {p : @41} -> {c : @42} -> {A : @43} -> (n : @3) -> @50 @51 @30 +@59 := LexLeanPreservation.Rust.wt_nat @0 +@60 := @44 @0 +@62 := @60 @47 @49 +@67 := {c : @42} -> {A : @43} -> (n : @3) -> @62 @51 @30 +@68 := @59 @1 +@69 := @60 @1 +@70 := @69 @49 +@74 := {A : @43} -> (n : @3) -> @70 @51 @30 +@75 := @68 @2 +@76 := @69 @2 +@77 := @76 @51 +@78 := @77 @30 +@79 := (n : @3) -> @78 +@81 := fun (__x : @3) => @75 @40 +@82 := @15 @40 +@88 := {p : @41} -> {c : @42} -> {A : @43} -> (s : @4) -> @50 @82 @31 +@90 := LexLeanPreservation.Rust.wt_string @0 +@95 := {c : @42} -> {A : @43} -> (s : @4) -> @62 @82 @31 +@96 := @90 @1 +@100 := {A : @43} -> (s : @4) -> @70 @82 @31 +@101 := @96 @2 +@102 := @76 @82 +@103 := @102 @31 +@104 := (s : @4) -> @103 +@106 := fun (__x : @4) => @101 @40 +@107 := Sort 1 +@108 := LexLeanTarget.TargetSyntax.Value +@109 := (a._@._internal._hyg.#0 : @49) -> @108 +@110 := LexLeanTarget.TargetSyntax.Ty +@111 := #5 +@112 := #9 +@113 := @44 @112 +@114 := #8 +@115 := @113 @114 +@116 := #7 +@117 := @115 @116 +@118 := #4 +@119 := @118 @40 +@122 := (x : @111) -> @117 @119 @47 +@128 := (x : @111) -> @44 @13 @112 @114 @119 @47 +@129 := @5 @116 +@130 := #6 +@131 := @129 @130 +@132 := #11 +@135 := @44 @132 @13 @112 +@140 := @16 @114 @116 @130 @111 @40 +@141 := @135 @140 +@143 := @32 @118 @45 +@156 := {p : @41} -> + {c : @42} -> + {A : @43} -> + {α : @107} -> + {β : @107} -> + {ea : @109} -> + {eb : @109} -> {s : @110} -> {t : @110} -> (ha : @122) -> (hb : @128) -> (x : @131) -> @141 @143 +@158 := LexLeanPreservation.Rust.wt_encPair @0 +@183 := {c : @42} -> + {A : @43} -> + {α : @107} -> + {β : @107} -> + {ea : @109} -> + {eb : @109} -> + {s : @110} -> + {t : @110} -> + (ha : (x : @111) -> @60 @114 @116 @119 @47) -> + (hb : (x : @111) -> @60 @112 @114 @119 @47) -> (x : @131) -> @60 @13 @112 @140 @143 +@184 := @158 @1 +@205 := {A : @43} -> + {α : @107} -> + {β : @107} -> + {ea : @109} -> + {eb : @109} -> + {s : @110} -> + {t : @110} -> + (ha : (x : @111) -> @69 @116 @119 @47) -> + (hb : (x : @111) -> @69 @114 @119 @47) -> (x : @131) -> @69 @112 @140 @143 +@206 := @184 @2 +@208 := @76 @119 @47 +@209 := (x : @111) -> @208 +@220 := {α : @107} -> + {β : @107} -> + {ea : @109} -> + {eb : @109} -> + {s : @110} -> {t : @110} -> (ha : @209) -> (hb : @209) -> (x : @131) -> @76 @140 @143 +@221 := @206 @3 +@222 := (a._@._internal._hyg.#0 : @3) -> @108 +@223 := (x : @3) -> @208 +@238 := {β : @107} -> + {ea : @222} -> + {eb : @109} -> + {s : @110} -> + {t : @110} -> (ha : @223) -> (hb : @209) -> (x : @6 @130) -> @76 (@17 @116 @130 @111 @40) @143 +@239 := @221 @4 +@240 := (a._@._internal._hyg.#0 : @4) -> @108 +@241 := (x : @4) -> @208 +@253 := {ea : @222} -> + {eb : @240} -> + {s : @110} -> {t : @110} -> (ha : @223) -> (hb : @241) -> (x : @7) -> @76 (@18 @130 @111 @40) @143 +@254 := @239 @14 +@256 := (x : @3) -> @77 @47 +@266 := {eb : @240} -> + {s : @110} -> {t : @110} -> (ha : @256) -> (hb : @241) -> (x : @7) -> @76 (@19 @111 @40) @143 +@267 := @254 @15 +@269 := (x : @4) -> @102 @47 +@271 := @76 (@20 @40) +@277 := {s : @110} -> {t : @110} -> (ha : @256) -> (hb : @269) -> (x : @7) -> @271 @143 +@278 := @267 @30 +@279 := (x : @3) -> @78 +@285 := {t : @110} -> (ha : @279) -> (hb : @269) -> (x : @7) -> @271 (@33 @45) +@286 := @278 @31 +@287 := (x : @4) -> @103 +@289 := (x : @7) -> @271 @34 +@291 := (ha : @279) -> (hb : @287) -> @289 +@293 := @286 @81 @106 +@295 := fun (__x : @7) => @293 @40 +@296 := @21 @40 +@302 := {p : @41} -> {c : @42} -> {A : @43} -> (b : @8) -> @50 @296 @35 +@304 := LexLeanPreservation.Rust.wt_bool @0 +@309 := {c : @42} -> {A : @43} -> (b : @8) -> @62 @296 @35 +@310 := @304 @1 +@314 := {A : @43} -> (b : @8) -> @70 @296 @35 +@315 := @310 @2 +@316 := @76 @296 +@317 := @316 @35 +@318 := (b : @8) -> @317 +@320 := fun (__x : @8) => @315 @40 +@321 := @206 @7 +@322 := (a._@._internal._hyg.#0 : @7) -> @108 +@323 := (x : @7) -> @208 +@338 := {β : @107} -> + {ea : @322} -> + {eb : @109} -> + {s : @110} -> + {t : @110} -> (ha : @323) -> (hb : @209) -> (x : @9 @130) -> @76 (@22 @116 @130 @111 @40) @143 +@339 := @321 @8 +@340 := (a._@._internal._hyg.#0 : @8) -> @108 +@341 := (x : @8) -> @208 +@353 := {ea : @322} -> + {eb : @340} -> + {s : @110} -> + {t : @110} -> (ha : @323) -> (hb : @341) -> (x : @10) -> @76 (@23 @130 @111 @40) @143 +@354 := @339 @20 +@356 := (x : @7) -> @271 @47 +@366 := {eb : @340} -> + {s : @110} -> {t : @110} -> (ha : @356) -> (hb : @341) -> (x : @10) -> @76 (@24 @111 @40) @143 +@367 := @354 @21 +@369 := (x : @8) -> @316 @47 +@371 := @76 (@25 @40) +@377 := {s : @110} -> {t : @110} -> (ha : @356) -> (hb : @369) -> (x : @10) -> @371 @143 +@378 := @367 @34 +@384 := {t : @110} -> (ha : @289) -> (hb : @369) -> (x : @10) -> @371 (@36 @45) +@385 := @378 @35 +@386 := (x : @8) -> @317 +@388 := (x : @10) -> @371 @37 +@390 := (ha : @289) -> (hb : @386) -> @388 +@394 := fun (__x : @10) => @385 @295 @320 @40 +@395 := (a._@._internal._hyg.#0 : @40) -> @108 +@398 := @44 @130 @111 @118 +@399 := @47 @40 +@402 := (x : @47) -> @398 @399 @49 +@403 := @11 @45 +@406 := @44 @116 @130 @111 +@409 := @26 @118 @45 @40 +@410 := @406 @409 +@411 := @38 @47 +@420 := {p : @41} -> + {c : @42} -> + {A : @43} -> {α : @107} -> {e : @395} -> {t : @110} -> (h : @402) -> (xs : @403) -> @410 @411 +@422 := LexLeanPreservation.Rust.wt_encList @0 +@424 := @60 @111 @118 +@438 := {c : @42} -> + {A : @43} -> + {α : @107} -> + {e : @395} -> + {t : @110} -> (h : (x : @47) -> @424 @399 @49) -> (xs : @403) -> @60 @130 @111 @409 @411 +@439 := @422 @1 +@440 := @69 @118 +@452 := {A : @43} -> + {α : @107} -> + {e : @395} -> {t : @110} -> (h : (x : @47) -> @440 @399 @49) -> (xs : @403) -> @69 @111 @409 @411 +@453 := @439 @2 +@455 := @76 @399 @49 +@463 := {α : @107} -> + {e : @395} -> {t : @110} -> (h : (x : @47) -> @455) -> (xs : @403) -> @76 @409 @411 +@464 := @453 @10 +@474 := {e : (a._@._internal._hyg.#0 : @10) -> @108} -> + {t : @110} -> (h : (x : @10) -> @455) -> (xs : @12) -> @76 (@27 @45 @40) @411 +@475 := @464 @25 +@477 := (x : @10) -> @371 @49 +@479 := @76 (@28 @40) +@483 := {t : @110} -> (h : @477) -> (xs : @12) -> @479 @411 +@484 := @475 @37 +@487 := (h : @388) -> (xs : @12) -> @479 @39 +@489 := @484 @394 @13 +@491 := @76 @29 @39 +@492 := @20 @112 +@493 := @293 @112 +@495 := @76 @492 @34 +@496 := Int8 +@497 := @5 @496 +@498 := @497 @3 +@499 := @11 @498 +@500 := LexLeanTarget.TargetSyntax.Value.i8 +@501 := @16 @496 +@502 := @501 @3 +@503 := @502 @500 +@504 := @503 @14 +@505 := @26 @498 +@506 := @505 @504 +@507 := @506 @114 +@508 := LexLeanTarget.TargetSyntax.Ty.fixed +@510 := @508 LexLeanTarget.TargetSyntax.IntKind.i8 +@511 := @32 @510 +@512 := @511 @30 +@513 := @38 @512 +@514 := @500 @40 +@520 := {p : @41} -> {c : @42} -> {A : @43} -> (x : @496) -> @50 @514 @510 +@522 := LexLeanPreservation.Rust.wt_i8 @0 +@527 := {c : @42} -> {A : @43} -> (x : @496) -> @62 @514 @510 +@528 := @522 @1 +@532 := {A : @43} -> (x : @496) -> @70 @514 @510 +@533 := @528 @2 +@534 := @76 @514 +@536 := (x : @496) -> @534 @510 +@538 := fun (__x : @496) => @533 @40 +@539 := @206 @496 +@540 := (a._@._internal._hyg.#0 : @496) -> @108 +@541 := (x : @496) -> @208 +@556 := {β : @107} -> + {ea : @540} -> + {eb : @109} -> + {s : @110} -> + {t : @110} -> (ha : @541) -> (hb : @209) -> (x : @497 @130) -> @76 (@501 @116 @130 @111 @40) @143 +@557 := @539 @3 +@569 := {ea : @540} -> + {eb : @222} -> + {s : @110} -> + {t : @110} -> (ha : @541) -> (hb : @223) -> (x : @498) -> @76 (@502 @130 @111 @40) @143 +@570 := @557 @500 +@572 := (x : @496) -> @534 @47 +@582 := {eb : @222} -> + {s : @110} -> {t : @110} -> (ha : @572) -> (hb : @223) -> (x : @498) -> @76 (@503 @111 @40) @143 +@583 := @570 @14 +@585 := @76 (@504 @40) +@591 := {s : @110} -> {t : @110} -> (ha : @572) -> (hb : @256) -> (x : @498) -> @585 @143 +@592 := @583 @510 +@598 := {t : @110} -> (ha : @536) -> (hb : @256) -> (x : @498) -> @585 (@511 @45) +@599 := @592 @30 +@601 := (x : @498) -> @585 @512 +@603 := (ha : @536) -> (hb : @279) -> @601 +@607 := fun (__x : @498) => @599 @538 @81 @40 +@608 := @453 @498 +@618 := {e : (a._@._internal._hyg.#0 : @498) -> @108} -> + {t : @110} -> (h : (x : @498) -> @455) -> (xs : @499) -> @76 (@505 @45 @40) @411 +@619 := @608 @504 +@621 := (x : @498) -> @585 @49 +@623 := @76 (@506 @40) +@627 := {t : @110} -> (h : @621) -> (xs : @499) -> @623 @411 +@628 := @619 @512 +@631 := (h : @601) -> (xs : @499) -> @623 @513 +@633 := @628 @607 @114 +@635 := @76 @507 @513 +@636 := @500 @116 +@637 := @533 @116 +@639 := @76 @636 @510 +@640 := @5 @8 +@641 := @640 @3 +@642 := @11 @641 +@643 := @16 @8 +@644 := @643 @3 +@645 := @644 @21 +@646 := @645 @14 +@647 := @26 @641 +@648 := @647 @646 +@649 := @648 @130 +@650 := @32 @35 +@651 := @650 @30 +@652 := @38 @651 +@653 := @206 @8 +@668 := {β : @107} -> + {ea : @340} -> + {eb : @109} -> + {s : @110} -> + {t : @110} -> (ha : @341) -> (hb : @209) -> (x : @640 @130) -> @76 (@643 @116 @130 @111 @40) @143 +@669 := @653 @3 +@681 := {ea : @340} -> + {eb : @222} -> + {s : @110} -> + {t : @110} -> (ha : @341) -> (hb : @223) -> (x : @641) -> @76 (@644 @130 @111 @40) @143 +@682 := @669 @21 +@692 := {eb : @222} -> + {s : @110} -> {t : @110} -> (ha : @369) -> (hb : @223) -> (x : @641) -> @76 (@645 @111 @40) @143 +@693 := @682 @14 +@695 := @76 (@646 @40) +@701 := {s : @110} -> {t : @110} -> (ha : @369) -> (hb : @256) -> (x : @641) -> @695 @143 +@702 := @693 @35 +@708 := {t : @110} -> (ha : @386) -> (hb : @256) -> (x : @641) -> @695 (@650 @45) +@709 := @702 @30 +@711 := (x : @641) -> @695 @651 +@713 := (ha : @386) -> (hb : @279) -> @711 +@717 := fun (__x : @641) => @709 @320 @81 @40 +@718 := @453 @641 +@728 := {e : (a._@._internal._hyg.#0 : @641) -> @108} -> + {t : @110} -> (h : (x : @641) -> @455) -> (xs : @642) -> @76 (@647 @45 @40) @411 +@729 := @718 @646 +@731 := (x : @641) -> @695 @49 +@733 := @76 (@648 @40) +@737 := {t : @110} -> (h : @731) -> (xs : @642) -> @733 @411 +@738 := @729 @651 +@741 := (h : @711) -> (xs : @642) -> @733 @652 +@743 := @738 @717 @130 +@745 := @76 @649 @652 +@746 := @21 @111 +@747 := @315 @111 +@749 := @76 @746 @35 +@750 := Int +@751 := @5 @750 +@752 := @751 @3 +@753 := @11 @752 +@754 := LexLeanTarget.TargetSyntax.Value.int +@755 := @16 @750 +@756 := @755 @3 +@757 := @756 @754 +@758 := @757 @14 +@759 := @26 @752 +@760 := @759 @758 +@761 := @760 @118 +@762 := LexLeanTarget.TargetSyntax.Ty.int +@763 := @32 @762 +@764 := @763 @30 +@765 := @38 @764 +@766 := @754 @40 +@772 := {p : @41} -> {c : @42} -> {A : @43} -> (n : @750) -> @50 @766 @762 +@774 := LexLeanPreservation.Rust.wt_int @0 +@779 := {c : @42} -> {A : @43} -> (n : @750) -> @62 @766 @762 +@780 := @774 @1 +@784 := {A : @43} -> (n : @750) -> @70 @766 @762 +@785 := @780 @2 +@786 := @76 @766 +@787 := @786 @762 +@788 := (n : @750) -> @787 +@790 := fun (__x : @750) => @785 @40 +@791 := @206 @750 +@792 := (a._@._internal._hyg.#0 : @750) -> @108 +@793 := (x : @750) -> @208 +@808 := {β : @107} -> + {ea : @792} -> + {eb : @109} -> + {s : @110} -> + {t : @110} -> (ha : @793) -> (hb : @209) -> (x : @751 @130) -> @76 (@755 @116 @130 @111 @40) @143 +@809 := @791 @3 +@821 := {ea : @792} -> + {eb : @222} -> + {s : @110} -> + {t : @110} -> (ha : @793) -> (hb : @223) -> (x : @752) -> @76 (@756 @130 @111 @40) @143 +@822 := @809 @754 +@824 := (x : @750) -> @786 @47 +@834 := {eb : @222} -> + {s : @110} -> {t : @110} -> (ha : @824) -> (hb : @223) -> (x : @752) -> @76 (@757 @111 @40) @143 +@835 := @822 @14 +@837 := @76 (@758 @40) +@843 := {s : @110} -> {t : @110} -> (ha : @824) -> (hb : @256) -> (x : @752) -> @837 @143 +@844 := @835 @762 +@845 := (x : @750) -> @787 +@851 := {t : @110} -> (ha : @845) -> (hb : @256) -> (x : @752) -> @837 (@763 @45) +@852 := @844 @30 +@854 := (x : @752) -> @837 @764 +@856 := (ha : @845) -> (hb : @279) -> @854 +@860 := fun (__x : @752) => @852 @790 @81 @40 +@861 := @453 @752 +@871 := {e : (a._@._internal._hyg.#0 : @752) -> @108} -> + {t : @110} -> (h : (x : @752) -> @455) -> (xs : @753) -> @76 (@759 @45 @40) @411 +@872 := @861 @758 +@874 := (x : @752) -> @837 @49 +@876 := @76 (@760 @40) +@880 := {t : @110} -> (h : @874) -> (xs : @753) -> @876 @411 +@881 := @872 @764 +@884 := (h : @854) -> (xs : @753) -> @876 @765 +@886 := @881 @860 @118 +@888 := @76 @761 @765 +@889 := @754 @45 +@890 := @785 @45 +@892 := @76 @889 @762 +@893 := UInt64 +@894 := @5 @893 +@895 := @894 @3 +@896 := @11 @895 +@897 := LexLeanTarget.TargetSyntax.Value.u64 +@898 := @16 @893 +@899 := @898 @3 +@900 := @899 @897 +@901 := @900 @14 +@902 := @26 @895 +@903 := @902 @901 +@904 := @903 @47 +@906 := @508 LexLeanTarget.TargetSyntax.IntKind.u64 +@907 := @32 @906 +@908 := @907 @30 +@909 := @38 @908 +@910 := @897 @40 +@916 := {p : @41} -> {c : @42} -> {A : @43} -> (x : @893) -> @50 @910 @906 +@918 := LexLeanPreservation.Rust.wt_u64 @0 +@923 := {c : @42} -> {A : @43} -> (x : @893) -> @62 @910 @906 +@924 := @918 @1 +@928 := {A : @43} -> (x : @893) -> @70 @910 @906 +@929 := @924 @2 +@930 := @76 @910 +@932 := (x : @893) -> @930 @906 +@934 := fun (__x : @893) => @929 @40 +@935 := @206 @893 +@936 := (a._@._internal._hyg.#0 : @893) -> @108 +@937 := (x : @893) -> @208 +@952 := {β : @107} -> + {ea : @936} -> + {eb : @109} -> + {s : @110} -> + {t : @110} -> (ha : @937) -> (hb : @209) -> (x : @894 @130) -> @76 (@898 @116 @130 @111 @40) @143 +@953 := @935 @3 +@965 := {ea : @936} -> + {eb : @222} -> + {s : @110} -> + {t : @110} -> (ha : @937) -> (hb : @223) -> (x : @895) -> @76 (@899 @130 @111 @40) @143 +@966 := @953 @897 +@968 := (x : @893) -> @930 @47 +@978 := {eb : @222} -> + {s : @110} -> {t : @110} -> (ha : @968) -> (hb : @223) -> (x : @895) -> @76 (@900 @111 @40) @143 +@979 := @966 @14 +@981 := @76 (@901 @40) +@987 := {s : @110} -> {t : @110} -> (ha : @968) -> (hb : @256) -> (x : @895) -> @981 @143 +@988 := @979 @906 +@994 := {t : @110} -> (ha : @932) -> (hb : @256) -> (x : @895) -> @981 (@907 @45) +@995 := @988 @30 +@997 := (x : @895) -> @981 @908 +@999 := (ha : @932) -> (hb : @279) -> @997 +@1003 := fun (__x : @895) => @995 @934 @81 @40 +@1004 := @453 @895 +@1014 := {e : (a._@._internal._hyg.#0 : @895) -> @108} -> + {t : @110} -> (h : (x : @895) -> @455) -> (xs : @896) -> @76 (@902 @45 @40) @411 +@1015 := @1004 @901 +@1017 := (x : @895) -> @981 @49 +@1019 := @76 (@903 @40) +@1023 := {t : @110} -> (h : @1017) -> (xs : @896) -> @1019 @411 +@1024 := @1015 @908 +@1027 := (h : @997) -> (xs : @896) -> @1019 @909 +@1029 := @1024 @1003 @47 +@1031 := @76 @904 @909 +@1032 := @897 @49 +@1033 := @929 @49 +@1035 := @76 @1032 @906 +@1036 := List.nil.{0} +@1037 := List.cons.{0} +@1038 := @1036 @108 +@1039 := @1037 @108 +@1041 := @1039 @1032 @1038 +@1043 := @1039 @904 @1041 +@1045 := @1039 @889 @1043 +@1047 := @1039 @761 @1045 +@1049 := @1039 @746 @1047 +@1051 := @1039 @649 @1049 +@1053 := @1039 @636 @1051 +@1055 := @1039 @507 @1053 +@1057 := @1039 @492 @1055 +@1059 := @1039 @29 @1057 +@1060 := @6 @108 +@1061 := 9 +@1064 := Prod.mk.{0, 0} @3 @108 +@1065 := @1064 @1061 +@1066 := @1065 @1032 +@1068 := @1064 8 +@1069 := @1068 @904 +@1071 := @1064 7 +@1072 := @1071 @889 +@1074 := @1064 6 +@1075 := @1074 @761 +@1077 := @1064 5 +@1078 := @1077 @746 +@1080 := @1064 4 +@1081 := @1080 @649 +@1083 := @1064 3 +@1084 := @1083 @636 +@1086 := @1064 2 +@1087 := @1086 @507 +@1089 := @1064 1 +@1090 := @1089 @492 +@1092 := @1064 0 +@1093 := @1092 @29 +@1094 := @1036 @1060 +@1095 := @1037 @1060 +@1097 := @1095 @1093 @1094 +@1099 := @1095 @1090 @1097 +@1101 := @1095 @1087 @1099 +@1103 := @1095 @1084 @1101 +@1105 := @1095 @1081 @1103 +@1107 := @1095 @1078 @1105 +@1109 := @1095 @1075 @1107 +@1111 := @1095 @1072 @1109 +@1113 := @1095 @1069 @1111 +@1115 := @1095 @1066 @1113 +@1116 := Bool.false +@1117 := LexLeanTarget.TargetSyntax.Function +@1118 := LexLeanTarget.TargetSyntax.Program.functions +@1119 := @1118 @0 +@1120 := 13 +@1121 := @1036 @3 +@1122 := @1036 @110 +@1123 := LexLeanTarget.TargetSyntax.Ty.unit +@1124 := LexLeanTarget.TargetSyntax.Value.unit +@1127 := LexLeanTarget.TargetSyntax.Expr.value @1123 @1124 +@1132 := LexLeanTarget.TargetSyntax.Function.mk @1121 @1122 @1123 @1127 +@1137 := List.getD.{0} @1117 @1119 @1120 @1132 +@1141 := fun (__e_n : @3) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.RustStd.root @40 @1120 +@1142 := LexLeanPreservation.Rust.WTL +@1150 := {p : @41} -> {c : @42} -> {A : @43} -> @1142 @47 @49 @40 @1038 @1122 +@1152 := LexLeanPreservation.Rust.wtl_nil @0 +@1153 := @1142 @0 +@1159 := {c : @42} -> {A : @43} -> @1153 @49 @40 @1038 @1122 +@1160 := @1152 @1 +@1161 := @1153 @1 +@1165 := {A : @43} -> @1161 @40 @1038 @1122 +@1166 := @1160 @2 +@1167 := @1161 @2 +@1168 := @1167 @1038 +@1169 := @1168 @1122 +@1170 := @11 @108 +@1171 := @11 @110 +@1173 := @398 @45 @47 +@1178 := @1142 @116 @130 @111 @47 @49 +@1181 := @1142 @114 @116 @130 +@1183 := @1039 @111 @45 +@1184 := @1181 @1183 +@1185 := @1037 @110 +@1187 := @1185 @118 @47 +@1197 := {p : @41} -> + {c : @42} -> + {A : @43} -> + {v : @108} -> + {t : @110} -> {vs : @1170} -> {ts : @1171} -> (h : @1173) -> (hs : @1178) -> @1184 @1187 +@1199 := LexLeanPreservation.Rust.wtl_cons @0 +@1217 := {c : @42} -> + {A : @43} -> + {v : @108} -> + {t : @110} -> + {vs : @1170} -> + {ts : @1171} -> + (h : @424 @45 @47) -> (hs : @1153 @130 @111 @47 @49) -> @1153 @116 @130 @1183 @1187 +@1218 := @1199 @1 +@1233 := {A : @43} -> + {v : @108} -> + {t : @110} -> + {vs : @1170} -> + {ts : @1171} -> (h : @440 @45 @47) -> (hs : @1161 @111 @47 @49) -> @1161 @130 @1183 @1187 +@1234 := @1218 @2 +@1236 := @76 @45 @47 +@1238 := @1167 @47 @49 +@1246 := {v : @108} -> + {t : @110} -> {vs : @1170} -> {ts : @1171} -> (h : @1236) -> (hs : @1238) -> @1167 @1183 @1187 +@1247 := @1234 @1032 +@1248 := @897 @118 +@1250 := @76 @1248 @47 +@1251 := @897 @130 +@1252 := @1039 @1251 +@1260 := {t : @110} -> + {vs : @1170} -> {ts : @1171} -> (h : @1250) -> (hs : @1238) -> @1167 (@1252 @45) @1187 +@1261 := @1247 @906 +@1262 := @897 @45 +@1264 := @76 @1262 @906 +@1265 := @897 @111 +@1266 := @1039 @1265 +@1268 := @1167 (@1266 @45) +@1269 := @1185 @906 +@1270 := @1269 @47 +@1275 := {vs : @1170} -> {ts : @1171} -> (h : @1264) -> (hs : @1238) -> @1268 @1270 +@1276 := @1261 @1038 +@1277 := @897 @47 +@1279 := @76 @1277 @906 +@1280 := @1168 @49 +@1282 := @1039 @1248 @1038 +@1287 := {ts : @1171} -> (h : @1279) -> (hs : @1280) -> @1167 @1282 @1270 +@1288 := @1276 @1122 +@1290 := @1039 @1262 @1038 +@1291 := @1167 @1290 +@1292 := @1269 @1122 +@1295 := (h : @1035) -> (hs : @1169) -> @1291 @1292 +@1296 := @1288 @1033 +@1298 := @1039 @1277 @1038 +@1300 := @1167 @1298 @1292 +@1301 := (hs : @1169) -> @1300 +@1302 := @1296 @1166 +@1304 := @1167 @1041 @1292 +@1305 := @1234 @904 +@1306 := @903 @111 +@1308 := @76 @1306 @47 +@1309 := @903 @116 +@1310 := @1039 @1309 +@1318 := {t : @110} -> + {vs : @1170} -> {ts : @1171} -> (h : @1308) -> (hs : @1238) -> @1167 (@1310 @45) @1187 +@1319 := @1305 @909 +@1320 := @903 @118 +@1322 := @76 @1320 @909 +@1323 := @903 @130 +@1324 := @1039 @1323 +@1326 := @1167 (@1324 @45) +@1327 := @1185 @909 +@1328 := @1327 @47 +@1333 := {vs : @1170} -> {ts : @1171} -> (h : @1322) -> (hs : @1238) -> @1326 @1328 +@1334 := @1319 @1041 +@1335 := @903 @45 +@1337 := @76 @1335 @909 +@1338 := @1291 @49 +@1340 := @1039 @1306 @1282 +@1345 := {ts : @1171} -> (h : @1337) -> (hs : @1338) -> @1167 @1340 @1328 +@1346 := @1334 @1292 +@1348 := @1039 @1320 @1290 +@1349 := @1167 @1348 +@1350 := @1327 @1292 +@1353 := (h : @1031) -> (hs : @1300) -> @1349 @1350 +@1354 := @1346 @1029 +@1356 := @1039 @1335 @1298 +@1358 := @1167 @1356 @1350 +@1359 := (hs : @1304) -> @1358 +@1360 := @1354 @1302 +@1362 := @1167 @1043 @1350 +@1363 := @1234 @889 +@1364 := @754 @130 +@1366 := @76 @1364 @47 +@1367 := @754 @114 +@1368 := @1039 @1367 +@1376 := {t : @110} -> + {vs : @1170} -> {ts : @1171} -> (h : @1366) -> (hs : @1238) -> @1167 (@1368 @45) @1187 +@1377 := @1363 @762 +@1378 := @754 @111 +@1380 := @76 @1378 @762 +@1381 := @754 @116 +@1382 := @1039 @1381 +@1384 := @1167 (@1382 @45) +@1385 := @1185 @762 +@1386 := @1385 @47 +@1391 := {vs : @1170} -> {ts : @1171} -> (h : @1380) -> (hs : @1238) -> @1384 @1386 +@1392 := @1377 @1043 +@1393 := @754 @118 +@1395 := @76 @1393 @762 +@1396 := @1349 @49 +@1398 := @1039 @1364 @1340 +@1403 := {ts : @1171} -> (h : @1395) -> (hs : @1396) -> @1167 @1398 @1386 +@1404 := @1392 @1350 +@1406 := @1039 @1378 @1348 +@1407 := @1167 @1406 +@1408 := @1385 @1350 +@1411 := (h : @892) -> (hs : @1358) -> @1407 @1408 +@1412 := @1404 @890 +@1414 := @1039 @1393 @1356 +@1416 := @1167 @1414 @1408 +@1417 := (hs : @1362) -> @1416 +@1418 := @1412 @1360 +@1420 := @1167 @1045 @1408 +@1421 := @1234 @761 +@1422 := @760 @116 +@1424 := @76 @1422 @47 +@1425 := @760 @112 +@1426 := @1039 @1425 +@1434 := {t : @110} -> + {vs : @1170} -> {ts : @1171} -> (h : @1424) -> (hs : @1238) -> @1167 (@1426 @45) @1187 +@1435 := @1421 @765 +@1436 := @760 @130 +@1438 := @76 @1436 @765 +@1439 := @760 @114 +@1440 := @1039 @1439 +@1442 := @1167 (@1440 @45) +@1443 := @1185 @765 +@1444 := @1443 @47 +@1449 := {vs : @1170} -> {ts : @1171} -> (h : @1438) -> (hs : @1238) -> @1442 @1444 +@1450 := @1435 @1045 +@1451 := @760 @111 +@1453 := @76 @1451 @765 +@1454 := @1407 @49 +@1456 := @1039 @1422 @1398 +@1461 := {ts : @1171} -> (h : @1453) -> (hs : @1454) -> @1167 @1456 @1444 +@1462 := @1450 @1408 +@1464 := @1039 @1436 @1406 +@1465 := @1167 @1464 +@1466 := @1443 @1408 +@1469 := (h : @888) -> (hs : @1416) -> @1465 @1466 +@1470 := @1462 @886 +@1472 := @1039 @1451 @1414 +@1474 := @1167 @1472 @1466 +@1475 := (hs : @1420) -> @1474 +@1476 := @1470 @1418 +@1478 := @1167 @1047 @1466 +@1479 := @1234 @746 +@1480 := @21 @114 +@1482 := @76 @1480 @47 +@1483 := @21 @13 +@1484 := @1039 @1483 +@1492 := {t : @110} -> + {vs : @1170} -> {ts : @1171} -> (h : @1482) -> (hs : @1238) -> @1167 (@1484 @45) @1187 +@1493 := @1479 @35 +@1494 := @21 @116 +@1496 := @76 @1494 @35 +@1497 := @21 @112 +@1498 := @1039 @1497 +@1500 := @1167 (@1498 @45) +@1501 := @1185 @35 +@1502 := @1501 @47 +@1507 := {vs : @1170} -> {ts : @1171} -> (h : @1496) -> (hs : @1238) -> @1500 @1502 +@1508 := @1493 @1047 +@1509 := @21 @130 +@1511 := @76 @1509 @35 +@1512 := @1465 @49 +@1514 := @1039 @1480 @1456 +@1519 := {ts : @1171} -> (h : @1511) -> (hs : @1512) -> @1167 @1514 @1502 +@1520 := @1508 @1466 +@1522 := @1039 @1494 @1464 +@1523 := @1167 @1522 +@1524 := @1501 @1466 +@1527 := (h : @749) -> (hs : @1474) -> @1523 @1524 +@1528 := @1520 @747 +@1530 := @1039 @1509 @1472 +@1532 := @1167 @1530 @1524 +@1533 := (hs : @1478) -> @1532 +@1534 := @1528 @1476 +@1536 := @1167 @1049 @1524 +@1537 := @1234 @649 +@1538 := @648 @112 +@1540 := @76 @1538 @47 +@1541 := @648 @132 +@1542 := @1039 @1541 +@1550 := {t : @110} -> + {vs : @1170} -> {ts : @1171} -> (h : @1540) -> (hs : @1238) -> @1167 (@1542 @45) @1187 +@1551 := @1537 @652 +@1552 := @648 @114 +@1554 := @76 @1552 @652 +@1555 := @648 @13 +@1556 := @1039 @1555 +@1558 := @1167 (@1556 @45) +@1559 := @1185 @652 +@1560 := @1559 @47 +@1565 := {vs : @1170} -> {ts : @1171} -> (h : @1554) -> (hs : @1238) -> @1558 @1560 +@1566 := @1551 @1049 +@1567 := @648 @116 +@1569 := @76 @1567 @652 +@1570 := @1523 @49 +@1572 := @1039 @1538 @1514 +@1577 := {ts : @1171} -> (h : @1569) -> (hs : @1570) -> @1167 @1572 @1560 +@1578 := @1566 @1524 +@1580 := @1039 @1552 @1522 +@1581 := @1167 @1580 +@1582 := @1559 @1524 +@1585 := (h : @745) -> (hs : @1532) -> @1581 @1582 +@1586 := @1578 @743 +@1588 := @1039 @1567 @1530 +@1590 := @1167 @1588 @1582 +@1591 := (hs : @1536) -> @1590 +@1592 := @1586 @1534 +@1594 := @1167 @1051 @1582 +@1595 := @1234 @636 +@1596 := @500 @13 +@1598 := @76 @1596 @47 +@1599 := #12 +@1600 := @500 @1599 +@1601 := @1039 @1600 +@1609 := {t : @110} -> + {vs : @1170} -> {ts : @1171} -> (h : @1598) -> (hs : @1238) -> @1167 (@1601 @45) @1187 +@1610 := @1595 @510 +@1611 := @500 @112 +@1613 := @76 @1611 @510 +@1614 := @500 @132 +@1615 := @1039 @1614 +@1617 := @1167 (@1615 @45) +@1618 := @1185 @510 +@1619 := @1618 @47 +@1624 := {vs : @1170} -> {ts : @1171} -> (h : @1613) -> (hs : @1238) -> @1617 @1619 +@1625 := @1610 @1051 +@1626 := @500 @114 +@1628 := @76 @1626 @510 +@1629 := @1581 @49 +@1631 := @1039 @1596 @1572 +@1636 := {ts : @1171} -> (h : @1628) -> (hs : @1629) -> @1167 @1631 @1619 +@1637 := @1625 @1582 +@1639 := @1039 @1611 @1580 +@1640 := @1167 @1639 +@1641 := @1618 @1582 +@1644 := (h : @639) -> (hs : @1590) -> @1640 @1641 +@1645 := @1637 @637 +@1647 := @1039 @1626 @1588 +@1649 := @1167 @1647 @1641 +@1650 := (hs : @1594) -> @1649 +@1651 := @1645 @1592 +@1653 := @1167 @1053 @1641 +@1654 := @1234 @507 +@1655 := @506 @132 +@1657 := @76 @1655 @47 +@1658 := #13 +@1659 := @506 @1658 +@1660 := @1039 @1659 +@1668 := {t : @110} -> + {vs : @1170} -> {ts : @1171} -> (h : @1657) -> (hs : @1238) -> @1167 (@1660 @45) @1187 +@1669 := @1654 @513 +@1670 := @506 @13 +@1672 := @76 @1670 @513 +@1673 := @506 @1599 +@1674 := @1039 @1673 +@1676 := @1167 (@1674 @45) +@1677 := @1185 @513 +@1678 := @1677 @47 +@1683 := {vs : @1170} -> {ts : @1171} -> (h : @1672) -> (hs : @1238) -> @1676 @1678 +@1684 := @1669 @1053 +@1685 := @506 @112 +@1687 := @76 @1685 @513 +@1688 := @1640 @49 +@1690 := @1039 @1655 @1631 +@1695 := {ts : @1171} -> (h : @1687) -> (hs : @1688) -> @1167 @1690 @1678 +@1696 := @1684 @1641 +@1698 := @1039 @1670 @1639 +@1699 := @1167 @1698 +@1700 := @1677 @1641 +@1703 := (h : @635) -> (hs : @1649) -> @1699 @1700 +@1704 := @1696 @633 +@1706 := @1039 @1685 @1647 +@1708 := @1167 @1706 @1700 +@1709 := (hs : @1653) -> @1708 +@1710 := @1704 @1651 +@1712 := @1167 @1055 @1700 +@1713 := @1234 @492 +@1714 := @20 @1599 +@1716 := @76 @1714 @47 +@1717 := #14 +@1718 := @20 @1717 +@1719 := @1039 @1718 +@1727 := {t : @110} -> + {vs : @1170} -> {ts : @1171} -> (h : @1716) -> (hs : @1238) -> @1167 (@1719 @45) @1187 +@1728 := @1713 @34 +@1729 := @20 @132 +@1731 := @76 @1729 @34 +@1732 := @20 @1658 +@1733 := @1039 @1732 +@1735 := @1167 (@1733 @45) +@1736 := @1185 @34 +@1737 := @1736 @47 +@1742 := {vs : @1170} -> {ts : @1171} -> (h : @1731) -> (hs : @1238) -> @1735 @1737 +@1743 := @1728 @1055 +@1744 := @20 @13 +@1746 := @76 @1744 @34 +@1747 := @1699 @49 +@1749 := @1039 @1714 @1690 +@1754 := {ts : @1171} -> (h : @1746) -> (hs : @1747) -> @1167 @1749 @1737 +@1755 := @1743 @1700 +@1757 := @1039 @1729 @1698 +@1758 := @1167 @1757 +@1759 := @1736 @1700 +@1762 := (h : @495) -> (hs : @1708) -> @1758 @1759 +@1763 := @1755 @493 +@1765 := @1039 @1744 @1706 +@1767 := @1167 @1765 @1759 +@1768 := (hs : @1712) -> @1767 +@1769 := @1763 @1710 +@1771 := @1167 @1057 @1759 +@1772 := @1234 @29 +@1773 := @28 @1658 +@1775 := @76 @1773 @47 +@1776 := #15 +@1777 := @28 @1776 +@1778 := @1039 @1777 +@1786 := {t : @110} -> + {vs : @1170} -> {ts : @1171} -> (h : @1775) -> (hs : @1238) -> @1167 (@1778 @45) @1187 +@1787 := @1772 @39 +@1788 := @28 @1599 +@1790 := @76 @1788 @39 +@1791 := @28 @1717 +@1792 := @1039 @1791 +@1794 := @1167 (@1792 @45) +@1795 := @1185 @39 +@1796 := @1795 @47 +@1801 := {vs : @1170} -> {ts : @1171} -> (h : @1790) -> (hs : @1238) -> @1794 @1796 +@1802 := @1787 @1057 +@1803 := @28 @132 +@1805 := @76 @1803 @39 +@1806 := @1758 @49 +@1808 := @1039 @1773 @1749 +@1809 := @1167 @1808 +@1813 := {ts : @1171} -> (h : @1805) -> (hs : @1806) -> @1809 @1796 +@1814 := @1802 @1759 +@1816 := @1039 @1788 @1757 +@1817 := @1167 @1816 +@1818 := @1795 @1759 +@1821 := (h : @491) -> (hs : @1767) -> @1817 @1818 +@1822 := @1814 @489 +@1824 := @1039 @1803 @1765 +@1825 := @1167 @1824 +@1827 := (hs : @1771) -> @1825 @1818 +@1828 := @1822 @1769 +@1829 := @1167 @1059 +@1830 := @1829 @1818 +@1831 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.denoteEntry +@1841 := @1831 @13 @112 @114 @116 @130 @111 @118 @45 @47 @49 +@1842 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.entryFits +@1852 := @1842 @13 @112 @114 @116 @130 @111 @118 @45 @47 @49 +@1863 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.entryValue + @13 + @112 + @114 + @116 + @130 + @111 + @118 + @45 + @47 + @49 +@1874 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.entry + @13 + @112 + @114 + @116 + @130 + @111 + @118 + @45 + @47 + @49 +@1875 := Ne.{1} +@1876 := LexLeanPreservation.Obs +@1877 := @1875 @1876 +@1878 := LexLeanPreservation.Rel +@1881 := @1877 (@1878 @49 @40) +@1882 := LexLeanPreservation.Obs.stuck +@1885 := (f : @8) -> (v : @108) -> @1881 @1882 +@1887 := LexLeanPreservation.Rust.rel_ne_stuck @1852 +@1902 := (v : @108) -> + @1877 (@1878 (@1842 @132 @13 @112 @114 @116 @130 @111 @118 @45 @47) @40) @1882 +@1903 := @1887 @1863 +@1907 := @1877 (@1878 @1852 @1863) @1882 +@1908 := @11 @1060 +@1909 := LexLeanPreservation.Rust.FunSem +@1915 := (n : @3) -> @1909 @112 @114 @116 @40 @130 +@1916 := Eq.{1} +@1917 := Option.{0} +@1918 := @1917 @1117 +@1919 := @1916 @1918 +@1926 := LexLeanRuntime.index (@11 @1117) @1117 (LexLeanRuntime.instIndexableList @1117) +@1930 := @1919 (@1926 (@1118 @112) @130) +@1931 := Option.some.{0} +@1932 := @1931 @1117 +@1933 := @1932 @111 +@1934 := @1930 @1933 +@1938 := @1142 @13 @112 @114 @111 +@1939 := LexLeanTarget.TargetSyntax.Function.types +@1940 := @1939 @130 +@1941 := @1938 @1940 +@1942 := @1917 @1908 +@1943 := @1916 @1942 +@1944 := LexLeanTarget.TargetSemantics.bindAll +@1945 := LexLeanTarget.TargetSyntax.Function.parameters +@1950 := @1943 (@1944 (@1945 @116) @130 @1094) +@1951 := @1931 @1908 +@1952 := @1951 @111 +@1953 := @1950 @1952 +@1954 := @1917 @8 +@1955 := @1916 @1954 +@1956 := LexLeanPreservation.Rust.fnFallible +@1959 := @1955 (@1956 @132 @112) +@1960 := @1931 @8 +@1961 := @1960 @111 +@1962 := @1959 @1961 +@1963 := LexLeanPreservation.RunConv +@1967 := @1963 @1658 @13 @114 @111 +@1969 := @1877 @130 @1882 +@1970 := Exists.{1} +@1971 := LexLeanPreservation.Rust.ROut +@1972 := @1970 @1971 +@1973 := And +@1974 := LexLeanPreservation.Rust.RealizesFn +@1978 := @1973 (@1974 @112 @114 @40) +@1979 := LexLeanPreservation.Rust.RCI +@1980 := @1979 @1776 +@1981 := LexLeanPreservation.Rust.fnIdent +@1982 := @1981 @1658 +@1989 := (hne : @1969) -> @1972 (fun (ro : @1971) => @1978 (@1980 @1982 @132 @40)) +@2004 := {p : @41} -> + {c : @42} -> + {A : @43} -> + {f : @3} -> + {fn : @1117} -> + {args : @1170} -> + {env : @1908} -> + {F : @8} -> + {o : @1876} -> + (hB : @1915) -> + (hfn : @1934) -> (hwt : @1941) -> (hbind : @1953) -> (hF : @1962) -> (hA : @1967) -> @1989 +@2006 := LexLeanPreservation.Rust.compose @0 +@2007 := @1909 @0 +@2012 := (n : @3) -> @2007 @114 @116 @40 @130 +@2013 := @1926 @1119 +@2016 := @1919 (@2013 @130) @1933 +@2020 := @1153 @112 @114 @111 @1940 +@2021 := @1963 @0 +@2024 := @2021 @13 @114 @111 +@2038 := {c : @42} -> + {A : @43} -> + {f : @3} -> + {fn : @1117} -> + {args : @1170} -> + {env : @1908} -> + {F : @8} -> + {o : @1876} -> + (hB : @2012) -> + (hfn : @2016) -> (hwt : @2020) -> (hbind : @1953) -> (hF : @1962) -> (hA : @2024) -> @1989 +@2039 := @2006 @1 +@2040 := @2007 @1 +@2044 := (n : @3) -> @2040 @116 @40 @130 +@2047 := @1161 @114 @111 @1940 +@2048 := @1956 @1 +@2051 := @1955 (@2048 @112) @1961 +@2052 := @1979 @1 +@2062 := (hbind : @1953) -> + (hF : @2051) -> + (hA : @2024) -> (hne : @1969) -> @1972 (fun (ro : @1971) => @1978 (@2052 @1982 @132 @40)) +@2072 := {A : @43} -> + {f : @3} -> + {fn : @1117} -> + {args : @1170} -> + {env : @1908} -> + {F : @8} -> {o : @1876} -> (hB : @2044) -> (hfn : @2016) -> (hwt : @2047) -> @2062 +@2073 := @2039 @2 +@2075 := @2040 @2 @40 +@2077 := (n : @3) -> @2075 @130 +@2078 := @1167 @111 +@2079 := @2078 @1940 +@2088 := {f : @3} -> + {fn : @1117} -> + {args : @1170} -> + {env : @1908} -> + {F : @8} -> {o : @1876} -> (hB : @2077) -> (hfn : @2016) -> (hwt : @2079) -> @2062 +@2089 := @2073 @1120 +@2091 := (n : @3) -> @2075 @1120 +@2092 := @2013 @1120 +@2093 := @1919 @2092 +@2094 := @2093 @1933 +@2095 := @2048 @1120 +@2096 := @1955 @2095 +@2097 := @2096 @1961 +@2098 := @2021 @1120 +@2100 := @2098 @114 @111 +@2102 := @2052 (@1981 @1120) +@2110 := (hF : @2097) -> + (hA : @2100) -> (hne : @1969) -> @1972 (fun (ro : @1971) => @1978 (@2102 @132 @40)) +@2119 := {fn : @1117} -> + {args : @1170} -> + {env : @1908} -> + {F : @8} -> + {o : @1876} -> (hB : @2091) -> (hfn : @2094) -> (hwt : @2079) -> (hbind : @1953) -> @2110 +@2120 := @2089 @1137 +@2122 := @2093 (@1932 @1137) +@2123 := @1939 @1137 +@2124 := @2078 @2123 +@2126 := @1944 (@1945 @1137) +@2138 := {args : @1170} -> + {env : @1908} -> + {F : @8} -> + {o : @1876} -> + (hB : @2091) -> + (hfn : @2122) -> (hwt : @2124) -> (hbind : @1943 (@2126 @130 @1094) @1952) -> @2110 +@2139 := @2120 @1059 +@2149 := @1778 (@1719 (@1660 (@1601 (@1542 (@1484 (@1426 (@1368 (@1310 (@1252 @1038))))))))) +@2151 := @1167 @2149 @2123 +@2152 := #16 +@2182 := @1039 + (@28 @2152) + (@1039 + (@20 @1776) + (@1039 + (@506 @1717) + (@1039 + (@500 @1658) + (@1039 + (@648 @1599) + (@1039 + (@21 @132) + (@1039 + (@760 @13) + (@1039 (@754 @112) (@1039 (@903 @114) (@1039 (@897 @116) @1038))))))))) +@2186 := @1943 (@2126 @2182 @1094) @1952 +@2187 := #18 +@2189 := @1039 (@28 @2187) +@2190 := #17 +@2218 := @2189 + (@1039 + (@20 @2190) + (@1039 + (@506 @2152) + (@1039 + (@500 @1776) + (@1039 + (@648 @1717) + (@1039 + (@21 @1658) + (@1039 + (@760 @1599) + (@1039 (@754 @132) (@1039 (@903 @13) (@1039 (@897 @112) @1038))))))))) +@2220 := @2098 @2218 @111 +@2223 := @1039 (@28 #21) +@2224 := #20 +@2226 := @1039 (@20 @2224) +@2227 := #19 +@2268 := {env : @1908} -> + {F : @8} -> + {o : @1876} -> + (hB : @2091) -> + (hfn : @2122) -> + (hwt : @2151) -> + (hbind : @2186) -> + (hF : @2097) -> + (hA : @2220) -> + (hne : @1969) -> + @1972 + (fun (ro : @1971) => + @1978 + (@2102 + (@2223 + (@2226 + (@1039 + (@506 @2227) + (@1039 + (@500 @2187) + (@1039 + (@648 @2190) + (@1039 + (@21 @2152) + (@1039 + (@760 @1776) + (@1039 (@754 @1717) (@1039 (@903 @1658) (@1039 (@897 @1599) @1038)))))))))) + @40)) +@2269 := @2139 @1115 +@2279 := @1792 (@1733 (@1674 (@1615 (@1556 (@1498 (@1440 (@1382 (@1324 (@1266 @1038))))))))) +@2281 := @1167 @2279 @2123 +@2316 := @1943 + (@2126 @2149 @1094) + (@1951 + (@1095 + (@1065 @1251) + (@1095 + (@1068 @1309) + (@1095 + (@1071 @1367) + (@1095 + (@1074 @1425) + (@1095 + (@1077 @1483) + (@1095 + (@1080 @1541) + (@1095 + (@1083 @1600) + (@1095 (@1086 @1659) (@1095 (@1089 @1718) (@1095 (@1092 @1777) @1094))))))))))) +@2346 := @1039 + (@28 @2190) + (@1039 + (@20 @2152) + (@1039 + (@506 @1776) + (@1039 + (@500 @1717) + (@1039 + (@648 @1658) + (@1039 + (@21 @1599) + (@1039 + (@760 @132) + (@1039 (@754 @13) (@1039 (@903 @112) (@1039 (@897 @114) @1038))))))))) +@2392 := {F : @8} -> + {o : @1876} -> + (hB : @2091) -> + (hfn : @2122) -> + (hwt : @2281) -> + (hbind : @2316) -> + (hF : @2097) -> + (hA : @2098 @2346 @111) -> + (hne : @1969) -> + @1972 + (fun (ro : @1971) => + @1978 + (@2102 + (@1039 + (@28 @2224) + (@1039 + (@20 @2227) + (@1039 + (@506 @2187) + (@1039 + (@500 @2190) + (@1039 + (@648 @2152) + (@1039 + (@21 @1776) + (@1039 + (@760 @1717) + (@1039 (@754 @1658) (@1039 (@903 @1599) (@1039 (@897 @132) @1038)))))))))) + @40)) +@2393 := @2269 @1116 +@2394 := @1809 @2123 +@2429 := @1943 + (@2126 @2279 @1094) + (@1951 + (@1095 + (@1065 @1265) + (@1095 + (@1068 @1323) + (@1095 + (@1071 @1381) + (@1095 + (@1074 @1439) + (@1095 + (@1077 @1497) + (@1095 + (@1080 @1555) + (@1095 + (@1083 @1614) + (@1095 (@1086 @1673) (@1095 (@1089 @1732) (@1095 (@1092 @1791) @1094))))))))))) +@2431 := @2096 (@1960 @1116) +@2433 := @2098 @2182 @111 +@2434 := @1974 @1116 +@2480 := {o : @1876} -> + (hB : @2091) -> + (hfn : @2122) -> + (hwt : @2394) -> + (hbind : @2429) -> + (hF : @2431) -> + (hA : @2433) -> + (hne : @1969) -> + @1972 + (fun (ro : @1971) => + @1973 + (@2434 @114 @40) + (@2102 + (@1039 + (@28 @2227) + (@1039 + (@20 @2187) + (@1039 + (@506 @2190) + (@1039 + (@500 @2152) + (@1039 + (@648 @1776) + (@1039 + (@21 @1717) + (@1039 + (@760 @1658) + (@1039 (@754 @1599) (@1039 (@903 @132) (@1039 (@897 @13) @1038)))))))))) + @40)) +@2481 := @2393 @1841 +@2482 := @1817 @2123 +@2517 := @1943 + (@2126 @1808 @1094) + (@1951 + (@1095 + (@1065 @1248) + (@1095 + (@1068 @1306) + (@1095 + (@1071 @1364) + (@1095 + (@1074 @1422) + (@1095 + (@1077 @1480) + (@1095 + (@1080 @1538) + (@1095 + (@1083 @1596) + (@1095 (@1086 @1655) (@1095 (@1089 @1714) (@1095 (@1092 @1773) @1094))))))))))) +@2518 := @2098 @2149 +@2528 := @1831 @1776 @1717 @1658 @1599 @132 @13 @112 @114 @116 @130 +@2529 := @2518 @2528 +@2539 := @1831 @2152 @1776 @1717 @1658 @1599 @132 @13 @112 @114 @116 +@2566 := (hB : @2091) -> + (hfn : @2122) -> + (hwt : @2482) -> + (hbind : @2517) -> + (hF : @2431) -> + (hA : @2529) -> + (hne : @1877 @2539 @1882) -> + @1972 + (fun (ro : @1971) => + @1973 + (@2434 (@1831 @2187 @2190 @2152 @1776 @1717 @1658 @1599 @132 @13 @112) @40) + (@2102 @2218 @40)) +@2567 := @2481 @1141 +@2568 := @1825 @2123 +@2603 := @1943 + (@2126 @1816 @1094) + (@1951 + (@1095 + (@1065 @1262) + (@1095 + (@1068 @1320) + (@1095 + (@1071 @1378) + (@1095 + (@1074 @1436) + (@1095 + (@1077 @1494) + (@1095 + (@1080 @1552) + (@1095 + (@1083 @1611) + (@1095 (@1086 @1670) (@1095 (@1089 @1729) (@1095 (@1092 @1788) @1094))))))))))) +@2604 := @2098 @2279 +@2614 := @1831 @1717 @1658 @1599 @132 @13 @112 @114 @116 @130 @111 +@2641 := (hfn : @2122) -> + (hwt : @2568) -> + (hbind : @2603) -> + (hF : @2431) -> + (hA : @2604 @2614) -> + (hne : @1877 @2528 @1882) -> + @1972 + (fun (ro : @1971) => + @1973 + (@2434 (@1831 @2190 @2152 @1776 @1717 @1658 @1599 @132 @13 @112 @114) @40) + (@2102 @2346 @40)) +@2642 := Eq.refl.{1} +@2645 := @2567 (@2642 @1918 @2092) +@2646 := @1829 @2123 +@2681 := @1943 + (@2126 @1824 @1094) + (@1951 + (@1095 + (@1065 @1277) + (@1095 + (@1068 @1335) + (@1095 + (@1071 @1393) + (@1095 + (@1074 @1451) + (@1095 + (@1077 @1509) + (@1095 + (@1080 @1567) + (@1095 + (@1083 @1626) + (@1095 (@1086 @1685) (@1095 (@1089 @1744) (@1095 (@1092 @1803) @1094))))))))))) +@2682 := @2098 @1808 +@2692 := @1831 @1658 @1599 @132 @13 @112 @114 @116 @130 @111 @118 +@2708 := (hwt : @2646) -> + (hbind : @2681) -> + (hF : @2431) -> + (hA : @2682 @2692) -> + (hne : @1877 @2614 @1882) -> @1972 (fun (ro : @1971) => @1973 (@2434 @2539 @40) (@2102 @2182 @40)) +@2709 := @2645 @1828 +@2711 := @2126 @1059 @1094 +@2714 := @1943 @2711 (@1951 @1115) +@2715 := @2098 @1816 +@2725 := @1831 @1599 @132 @13 @112 @114 @116 @130 @111 @118 @45 +@2740 := (hbind : @2714) -> + (hF : @2431) -> + (hA : @2715 @2725) -> + (hne : @1877 @2692 @1882) -> @1972 (fun (ro : @1971) => @1973 (@2434 @2528 @40) (@2102 @2149 @40)) +@2743 := @2709 (@2642 @1942 @2711) +@2744 := @2098 @1824 +@2754 := @1831 @132 @13 @112 @114 @116 @130 @111 @118 @45 @47 +@2768 := (hF : @2431) -> + (hA : @2744 @2754) -> + (hne : @1877 @2725 @1882) -> @1972 (fun (ro : @1971) => @1973 (@2434 @2614 @40) (@2102 @2279 @40)) +@2771 := @2743 (@2642 @1954 @2095) +@2773 := @2098 @1059 @1841 +@2775 := @1877 @2754 @1882 +@2776 := @2434 @2692 +@2778 := @1973 (@2776 @40) +@2779 := @2102 @1808 +@2780 := @2779 @40 +@2785 := (hA : @2773) -> (hne : @2775) -> @1972 (fun (ro : @1971) => @2778 @2780) +@2786 := @2771 @1874 +@2788 := @1877 @1841 @1882 +@2789 := @2434 @2725 +@2791 := @1973 (@2789 @40) +@2792 := @2102 @1816 +@2797 := (hne : @2788) -> @1972 (fun (ro : @1971) => @2791 (@2792 @40)) +@2798 := @2786 @1903 +@2801 := @1973 (@2434 @2754 @40) +@2803 := @2102 @1824 @40 +@2804 := @2801 @2803 +@2806 := @1972 (fun (ro : @1971) => @2804) +@2807 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.accepts +@2817 := @2807 @13 @112 @114 @116 @130 @111 @118 @45 @47 @49 +@2818 := LexLeanPreservation.someObs +@2819 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.denote +@2830 := @2818 (@2819 @13 @112 @114 @116 @130 @111 @118 @45 @47 @49) +@2833 := LexLeanPreservation.Obs.value LexLeanTarget.TargetSyntax.Value.none +@2834 := Not +@2835 := @2834 @2817 +@2845 := @2807 @132 @13 @112 @114 @116 @130 @111 @118 @45 @47 +@2856 := @2818 (@2819 @132 @13 @112 @114 @116 @130 @111 @118 @45 @47) +@2857 := @2834 @2845 +@2871 := @2845 -> @2434 (@2818 (@2819 @1599 @132 @13 @112 @114 @116 @130 @111 @118 @45)) @49 +@2872 := @2434 @2833 +@2873 := @2872 @49 +@2874 := @2857 -> @2873 +@2876 := @1973 @2871 @2874 +@2880 := @1972 (fun (__e_ro : @1971) => @1973 @2803 @2876) +@2881 := fun (__e_ro : @1971) => @2804 +@2882 := @2789 @49 +@2883 := @2792 @49 +@2884 := And.left +@2885 := And.right +@2888 := @2884 @2882 @2883 @40 +@2891 := @2885 @2882 @2883 @40 +@2892 := @2434 @40 +@2894 := fun (__e_o : @1876) => @2892 @47 +@2895 := Eq.subst.{1} +@2905 := @2807 @1599 @132 @13 @112 @114 @116 @130 @111 @118 @45 +@2906 := @2834 @2905 +@2918 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.entry_accepts + @1658 + @1599 + @132 + @13 + @112 + @114 + @116 + @130 + @111 + @118 + @40 +@2929 := @2818 (@2819 @1658 @1599 @132 @13 @112 @114 @116 @130 @111 @118) +@2934 := @2884 (@2776 @47) (@2779 @47) @49 +@2936 := fun (__e_o : @1876) => @2892 @45 +@2939 := @2895 @1876 @2936 @2692 +@2943 := fun (__e_h : @2905) => @2939 @2929 @2918 @2934 +@2955 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.entry_refuses + @1658 + @1599 + @132 + @13 + @112 + @114 + @116 + @130 + @111 + @118 + @40 +@2959 := fun (__e_h : @2906) => @2939 @2833 @2955 @2934 +@2960 := And.intro +@2963 := @2905 -> @2434 @2929 @47 +@2965 := @2906 -> @2872 @47 +@2967 := @1973 @2963 @2965 +@2971 := @2960 @2963 @2965 @2943 @2959 +@2975 := @2960 @2883 @2967 @2891 @2971 +@2976 := Exists.intro.{1} +@2977 := @1973 @2780 +@2987 := @2807 @1658 @1599 @132 @13 @112 @114 @116 @130 @111 @118 +@3007 := fun (__e_ro : @1971) => + @2977 + (@1973 + (@2987 -> @2434 (@2818 (@2819 @1717 @1658 @1599 @132 @13 @112 @114 @116 @130 @111)) @49) + (@2834 @2987 -> @2873)) +@3011 := @2976 @1971 @3007 @49 @2975 +@3013 := @1973 @2882 @2883 +@3015 := fun (__e_ro : @1971) => fun (__e_hand : @2804) => @3011 +@3021 := Exists.elim.{1} @1971 @2881 @2880 @2798 @3015 +@3022 := LexLeanPreservation.Rust.RepresentableL +@3023 := @28 @112 +@3024 := @20 @114 +@3025 := @506 @116 +@3026 := @500 @130 +@3027 := @648 @111 +@3028 := @21 @118 +@3029 := @760 @45 +@3030 := @754 @47 +@3031 := @903 @49 +@3033 := @1039 @910 @1038 +@3035 := @1039 @3031 @3033 +@3037 := @1039 @3030 @3035 +@3039 := @1039 @3029 @3037 +@3041 := @1039 @3028 @3039 +@3043 := @1039 @3027 @3041 +@3045 := @1039 @3026 @3043 +@3047 := @1039 @3025 @3045 +@3049 := @1039 @3024 @3047 +@3052 := @3022 (@1039 @3023 @3049) +@3053 := (__e_hrep : @3052) -> @2880 +@3054 := fun (__e_hrep : @3052) => @3021 +@3055 := (w : @893) -> @3053 +@3056 := fun (w : @893) => @3054 +@3057 := (u : @896) -> @3055 +@3058 := fun (u : @896) => @3056 +@3059 := (e : @750) -> @3057 +@3060 := fun (e : @750) => @3058 +@3061 := (d : @753) -> @3059 +@3062 := fun (d : @753) => @3060 +@3063 := (c : @8) -> @3061 +@3064 := fun (c : @8) => @3062 +@3065 := (b : @642) -> @3063 +@3066 := fun (b : @642) => @3064 +@3067 := (j : @496) -> @3065 +@3068 := fun (j : @496) => @3066 +@3069 := (i : @499) -> @3067 +@3070 := fun (i : @499) => @3068 +@3071 := (k : @7) -> @3069 +@3072 := fun (k : @7) => @3070 +@3073 := (a : @12) -> @3071 +@3074 := fun (a : @12) => @3072 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R8/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R8/RustStd.lean new file mode 100644 index 000000000..dc13375cd --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R8/RustStd.lean @@ -0,0 +1,137 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1, 2, 3, 4, 5, 6, 7, 8, 9], types := [(.list (.pair (.pair .nat .string) .bool)), (.pair .nat .string), (.list (.pair (.fixed .i8) .nat)), (.fixed .i8), (.list (.pair .bool .nat)), .bool, (.list (.pair .int .nat)), .int, (.list (.pair (.fixed .u64) .nat)), (.fixed .u64)], result := (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat))))), + body := (.build .pair (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat))))) [(.call 1 [(.var 0), (.var 1)]), (.build .pair (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))) [(.call 2 [(.var 2), (.var 3)]), (.build .pair (.pair (.option .nat) (.pair (.option .nat) (.option .nat))) [(.call 3 [(.var 4), (.var 5)]), (.build .pair (.pair (.option .nat) (.option .nat)) [(.call 4 [(.var 6), (.var 7)]), (.call 5 [(.var 8), (.var 9)])])])])]) }, + { parameters := [0, 1], types := [(.list (.pair (.pair .nat .string) .bool)), (.pair .nat .string)], result := (.option .bool), + body := (.«match» (.option .bool) (.var 0) [(.arm .nil [] (.build .none (.option .bool) [])), (.arm .cons [2, 3] (.«match» (.option .bool) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.build .none (.option .bool) [])), (.arm .eq [] (.build .some (.option .bool) [(.second (.var 2))])), (.arm .gt [] (.call 1 [(.var 3), (.var 1)]))]))]) }, + { parameters := [0, 1], types := [(.list (.pair (.fixed .i8) .nat)), (.fixed .i8)], result := (.option .nat), + body := (.«match» (.option .nat) (.var 0) [(.arm .nil [] (.build .none (.option .nat) [])), (.arm .cons [2, 3] (.«match» (.option .nat) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.build .none (.option .nat) [])), (.arm .eq [] (.build .some (.option .nat) [(.second (.var 2))])), (.arm .gt [] (.call 2 [(.var 3), (.var 1)]))]))]) }, + { parameters := [0, 1], types := [(.list (.pair .bool .nat)), .bool], result := (.option .nat), + body := (.«match» (.option .nat) (.var 0) [(.arm .nil [] (.build .none (.option .nat) [])), (.arm .cons [2, 3] (.«match» (.option .nat) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.build .none (.option .nat) [])), (.arm .eq [] (.build .some (.option .nat) [(.second (.var 2))])), (.arm .gt [] (.call 3 [(.var 3), (.var 1)]))]))]) }, + { parameters := [0, 1], types := [(.list (.pair .int .nat)), .int], result := (.option .nat), + body := (.«match» (.option .nat) (.var 0) [(.arm .nil [] (.build .none (.option .nat) [])), (.arm .cons [2, 3] (.«match» (.option .nat) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.build .none (.option .nat) [])), (.arm .eq [] (.build .some (.option .nat) [(.second (.var 2))])), (.arm .gt [] (.call 4 [(.var 3), (.var 1)]))]))]) }, + { parameters := [0, 1], types := [(.list (.pair (.fixed .u64) .nat)), (.fixed .u64)], result := (.option .nat), + body := (.«match» (.option .nat) (.var 0) [(.arm .nil [] (.build .none (.option .nat) [])), (.arm .cons [2, 3] (.«match» (.option .nat) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.build .none (.option .nat) [])), (.arm .eq [] (.build .some (.option .nat) [(.second (.var 2))])), (.arm .gt [] (.call 5 [(.var 3), (.var 1)]))]))]) }, + { parameters := [0], types := [(.list (.pair (.pair .nat .string) .bool))], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 7 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 6 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, + { parameters := [0], types := [.bool], result := .bool, + body := (.build .true .bool []) }, + { parameters := [0], types := [(.list (.pair (.fixed .i8) .nat))], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 9 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 8 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, + { parameters := [0], types := [.nat], result := .bool, + body := (.build .true .bool []) }, + { parameters := [0], types := [(.list (.pair .bool .nat))], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 9 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 10 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, + { parameters := [0], types := [(.list (.pair .int .nat))], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 9 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 11 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, + { parameters := [0], types := [(.list (.pair (.fixed .u64) .nat))], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 9 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 12 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, + { parameters := [0, 1, 2, 3, 4, 5, 6, 7, 8, 9], types := [(.list (.pair (.pair .nat .string) .bool)), (.pair .nat .string), (.list (.pair (.fixed .i8) .nat)), (.fixed .i8), (.list (.pair .bool .nat)), .bool, (.list (.pair .int .nat)), .int, (.list (.pair (.fixed .u64) .nat)), (.fixed .u64)], result := (.option (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))), + body := (.cond (.call 6 [(.var 0)]) (.cond (.call 8 [(.var 2)]) (.cond (.call 10 [(.var 4)]) (.cond (.call 11 [(.var 6)]) (.cond (.call 12 [(.var 8)]) (.build .some (.option (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [(.call 0 [(.var 0), (.var 1), (.var 2), (.var 3), (.var 4), (.var 5), (.var 6), (.var 7), (.var 8), (.var 9)])]) (.build .none (.option (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])) (.build .none (.option (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])) (.build .none (.option (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])) (.build .none (.option (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])) (.build .none (.option (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair (.pair .nat .str) .bool)) }, { pattern := (.bind (.generated .binding 1)), type := (.pair .nat .str) }, { pattern := (.bind (.generated .binding 2)), type := (.list (.pair (.fixed .i8) .nat)) }, { pattern := (.bind (.generated .binding 3)), type := (.fixed .i8) }, { pattern := (.bind (.generated .binding 4)), type := (.list (.pair .bool .nat)) }, { pattern := (.bind (.generated .binding 5)), type := .bool }, { pattern := (.bind (.generated .binding 6)), type := (.list (.pair .int .nat)) }, { pattern := (.bind (.generated .binding 7)), type := .int }, { pattern := (.bind (.generated .binding 8)), type := (.list (.pair (.fixed .u64) .nat)) }, { pattern := (.bind (.generated .binding 9)), type := (.fixed .u64) }] (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat))))) (.mk [] (.pair (.call (.function 1) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false) (.pair (.call (.function 2) [(.move (.generated .binding 2)), (.copy (.generated .binding 3))] false) (.pair (.call (.function 3) [(.move (.generated .binding 4)), (.copy (.generated .binding 5))] false) (.pair (.call (.function 4) [(.move (.generated .binding 6)), (.copy (.generated .binding 7))] false) (.call (.function 5) [(.move (.generated .binding 8)), (.copy (.generated .binding 9))] false))))))), + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair (.pair .nat .str) .bool)) }, { pattern := (.bind (.generated .binding 1)), type := (.pair .nat .str) }] (.option .bool) (.mk [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 1)) [(.mk .none (.mk [] (.construct (.none .bool) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 5)) none (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 2)))))] (.call (.runtime .compare) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))))] (.matchOn (.move (.generated .holder 5)) [(.mk (.ordering .less) (.mk [] (.construct (.none .bool) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 6))]) none (.move (.generated .binding 2)))] (.move (.generated .part 6))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 1) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)))])))]))), + (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair (.fixed .i8) .nat)) }, { pattern := (.bind (.generated .binding 1)), type := (.fixed .i8) }] (.option .nat) (.mk [(.mk (.bind (.generated .holder 7)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 7)) [(.mk .none (.mk [] (.construct (.none .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 11)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 10)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 8)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 8)))))] (.call (.runtime .compare) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false))))] (.matchOn (.move (.generated .holder 11)) [(.mk (.ordering .less) (.mk [] (.construct (.none .nat) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 12))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 12))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 2) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]))), + (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .bool .nat)) }, { pattern := (.bind (.generated .binding 1)), type := .bool }] (.option .nat) (.mk [(.mk (.bind (.generated .holder 13)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 13)) [(.mk .none (.mk [] (.construct (.none .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 17)) none (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 16)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 14)))))] (.call (.runtime .compare) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] false))))] (.matchOn (.move (.generated .holder 17)) [(.mk (.ordering .less) (.mk [] (.construct (.none .nat) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 18))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 18))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 3) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]))), + (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .int .nat)) }, { pattern := (.bind (.generated .binding 1)), type := .int }] (.option .nat) (.mk [(.mk (.bind (.generated .holder 19)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 19)) [(.mk .none (.mk [] (.construct (.none .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 23)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 20)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 20)))))] (.call (.runtime .compare) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.matchOn (.move (.generated .holder 23)) [(.mk (.ordering .less) (.mk [] (.construct (.none .nat) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 24))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 24))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 4) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]))), + (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair (.fixed .u64) .nat)) }, { pattern := (.bind (.generated .binding 1)), type := (.fixed .u64) }] (.option .nat) (.mk [(.mk (.bind (.generated .holder 25)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 25)) [(.mk .none (.mk [] (.construct (.none .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 29)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 26)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 26)))))] (.call (.runtime .compare) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))] (.matchOn (.move (.generated .holder 29)) [(.mk (.ordering .less) (.mk [] (.construct (.none .nat) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 30))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 30))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 5) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]))), + (.function (.generated .function 6) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair (.pair .nat .str) .bool)) }] .bool (.mk [(.mk (.bind (.generated .holder 31)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 31)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 7) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 32))]) none (.move (.generated .binding 1)))] (.move (.generated .part 32))))] false) (.mk [(.mk (.bind (.generated .holder 33)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 33)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 38)) none (.block (.mk [(.mk (.bind (.generated .operand 36)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 34)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 34))))), (.mk (.bind (.generated .operand 37)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 35)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 35)))))] (.call (.runtime .compare) [(.move (.generated .operand 36)), (.move (.generated .operand 37))] false))))] (.cond (.matchOn (.move (.generated .holder 38)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 6) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]))), + (.function (.generated .function 7) [{ pattern := .wild, type := .bool }] .bool (.mk [] (.lit (.bool true)))), + (.function (.generated .function 8) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair (.fixed .i8) .nat)) }] .bool (.mk [(.mk (.bind (.generated .holder 39)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 39)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 9) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 40))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 40))))] false) (.mk [(.mk (.bind (.generated .holder 41)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 41)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 46)) none (.block (.mk [(.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 42)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 42))))), (.mk (.bind (.generated .operand 45)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 43)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 43)))))] (.call (.runtime .compare) [(.move (.generated .operand 44)), (.move (.generated .operand 45))] false))))] (.cond (.matchOn (.move (.generated .holder 46)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 8) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]))), + (.function (.generated .function 9) [{ pattern := .wild, type := .nat }] .bool (.mk [] (.lit (.bool true)))), + (.function (.generated .function 10) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .bool .nat)) }] .bool (.mk [(.mk (.bind (.generated .holder 47)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 47)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 9) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 48))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 48))))] false) (.mk [(.mk (.bind (.generated .holder 49)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 49)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 54)) none (.block (.mk [(.mk (.bind (.generated .operand 52)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 50)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 50))))), (.mk (.bind (.generated .operand 53)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 51)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 51)))))] (.call (.runtime .compare) [(.move (.generated .operand 52)), (.move (.generated .operand 53))] false))))] (.cond (.matchOn (.move (.generated .holder 54)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 10) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]))), + (.function (.generated .function 11) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .int .nat)) }] .bool (.mk [(.mk (.bind (.generated .holder 55)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 55)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 9) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 56))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 56))))] false) (.mk [(.mk (.bind (.generated .holder 57)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 57)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 62)) none (.block (.mk [(.mk (.bind (.generated .operand 60)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 58)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 58))))), (.mk (.bind (.generated .operand 61)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 59)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 59)))))] (.call (.runtime .compare) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] false))))] (.cond (.matchOn (.move (.generated .holder 62)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 11) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]))), + (.function (.generated .function 12) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair (.fixed .u64) .nat)) }] .bool (.mk [(.mk (.bind (.generated .holder 63)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 63)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 9) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 64))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 64))))] false) (.mk [(.mk (.bind (.generated .holder 65)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 65)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 70)) none (.block (.mk [(.mk (.bind (.generated .operand 68)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 66)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 66))))), (.mk (.bind (.generated .operand 69)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 67)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 67)))))] (.call (.runtime .compare) [(.move (.generated .operand 68)), (.move (.generated .operand 69))] false))))] (.cond (.matchOn (.move (.generated .holder 70)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 12) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]))), + (.function (.generated .function 13) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair (.pair .nat .str) .bool)) }, { pattern := (.bind (.generated .binding 1)), type := (.pair .nat .str) }, { pattern := (.bind (.generated .binding 2)), type := (.list (.pair (.fixed .i8) .nat)) }, { pattern := (.bind (.generated .binding 3)), type := (.fixed .i8) }, { pattern := (.bind (.generated .binding 4)), type := (.list (.pair .bool .nat)) }, { pattern := (.bind (.generated .binding 5)), type := .bool }, { pattern := (.bind (.generated .binding 6)), type := (.list (.pair .int .nat)) }, { pattern := (.bind (.generated .binding 7)), type := .int }, { pattern := (.bind (.generated .binding 8)), type := (.list (.pair (.fixed .u64) .nat)) }, { pattern := (.bind (.generated .binding 9)), type := (.fixed .u64) }] (.option (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) (.mk [] (.cond (.call (.function 6) [(.clone (.generated .binding 0))] false) (.mk [] (.cond (.call (.function 8) [(.clone (.generated .binding 2))] false) (.mk [] (.cond (.call (.function 10) [(.clone (.generated .binding 4))] false) (.mk [] (.cond (.call (.function 11) [(.clone (.generated .binding 6))] false) (.mk [] (.cond (.call (.function 12) [(.clone (.generated .binding 8))] false) (.mk [] (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 2)), (.copy (.generated .binding 3)), (.move (.generated .binding 4)), (.copy (.generated .binding 5)), (.move (.generated .binding 6)), (.copy (.generated .binding 7)), (.move (.generated .binding 8)), (.copy (.generated .binding 9))] false)])) (.mk [] (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])))) (.mk [] (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])))) (.mk [] (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])))) (.mk [] (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])))) (.mk [] (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])))))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [], (.pair (.call (.function 1) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false) (.pair (.call (.function 2) [(.move (.generated .binding 2)), (.copy (.generated .binding 3))] false) (.pair (.call (.function 3) [(.move (.generated .binding 4)), (.copy (.generated .binding 5))] false) (.pair (.call (.function 4) [(.move (.generated .binding 6)), (.copy (.generated .binding 7))] false) (.call (.function 5) [(.move (.generated .binding 8)), (.copy (.generated .binding 9))] false))))), [(9, (.fixed .u64), (some 9)), (8, (.list (.pair (.fixed .u64) .nat)), (some 8)), (7, .int, (some 7)), (6, (.list (.pair .int .nat)), (some 6)), (5, .bool, (some 5)), (4, (.list (.pair .bool .nat)), (some 4)), (3, (.fixed .i8), (some 3)), (2, (.list (.pair (.fixed .i8) .nat)), (some 2)), (1, (.pair .nat .string), (some 1)), (0, (.list (.pair (.pair .nat .string) .bool)), (some 0))], rfl, rfl, + (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair (.pair .nat .string) .bool)), (.pair .nat .string)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair (.fixed .i8) .nat)), (.fixed .i8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .bool .nat)), .bool]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .int .nat)), .int]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair (.fixed .u64) .nat)), (.fixed .u64)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))))⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 1)) [(.mk .none (.mk [] (.construct (.none .bool) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 5)) none (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 2)))))] (.call (.runtime .compare) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))))] (.matchOn (.move (.generated .holder 5)) [(.mk (.ordering .less) (.mk [] (.construct (.none .bool) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 6))]) none (.move (.generated .binding 2)))] (.move (.generated .part 6))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 1) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)))])))]), [(1, (.pair .nat .string), (some 1)), (0, (.list (.pair (.pair .nat .string) .bool)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.pair (.pair .nat .string) .bool))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.pair .nat .string), (some 1)), (0, (.list (.pair (.pair .nat .string) .bool)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none .bool) [])) (Corr.mCons (Γ' := [(3, (.list (.pair (.pair .nat .string) .bool)), (some 3)), (2, (.pair (.pair .nat .string) .bool), (some 2)), (1, (.pair .nat .string), (some 1)), (0, (.list (.pair (.pair .nat .string) .bool)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 5)) none (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 2)))))] (.call (.runtime .compare) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))))]) (tail := (.matchOn (.move (.generated .holder 5)) [(.mk (.ordering .less) (.mk [] (.construct (.none .bool) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 6))]) none (.move (.generated .binding 2)))] (.move (.generated .part 6))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 1) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 3)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 2)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false)) (Corr.prim (ts := [(.pair .nat .string), (.pair .nat .string)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 2))) (Corr.first (ta := (.pair .nat .string)) (tb := .bool) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list (.pair (.pair .nat .string) .bool)), (some 3)), (2, (.pair (.pair .nat .string) .bool), (some 2)), (1, (.pair .nat .string), (some 1)), (0, (.list (.pair (.pair .nat .string) .bool)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none .bool) [])) (Corr.mCons (Γ' := [(3, (.list (.pair (.pair .nat .string) .bool)), (some 3)), (2, (.pair (.pair .nat .string) .bool), (some 2)), (1, (.pair .nat .string), (some 1)), (0, (.list (.pair (.pair .nat .string) .bool)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 6))]) none (.move (.generated .binding 2)))] (.move (.generated .part 6))))])) (Corr.mCons (Γ' := [(3, (.list (.pair (.pair .nat .string) .bool)), (some 3)), (2, (.pair (.pair .nat .string) .bool), (some 2)), (1, (.pair .nat .string), (some 1)), (0, (.list (.pair (.pair .nat .string) .bool)), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.call (.function 1) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list (.pair (.pair .nat .string) .bool)), (.pair .nat .string)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := [.bool]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 6))]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 6))) (Corr.second (ta := (.pair .nat .string)) (tb := .bool) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 7)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 7)) [(.mk .none (.mk [] (.construct (.none .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 11)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 10)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 8)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 8)))))] (.call (.runtime .compare) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false))))] (.matchOn (.move (.generated .holder 11)) [(.mk (.ordering .less) (.mk [] (.construct (.none .nat) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 12))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 12))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 2) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]), [(1, (.fixed .i8), (some 1)), (0, (.list (.pair (.fixed .i8) .nat)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.pair (.fixed .i8) .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.fixed .i8), (some 1)), (0, (.list (.pair (.fixed .i8) .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none .nat) [])) (Corr.mCons (Γ' := [(3, (.list (.pair (.fixed .i8) .nat)), (some 3)), (2, (.pair (.fixed .i8) .nat), (some 2)), (1, (.fixed .i8), (some 1)), (0, (.list (.pair (.fixed .i8) .nat)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 11)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 10)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 8)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 8)))))] (.call (.runtime .compare) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false))))]) (tail := (.matchOn (.move (.generated .holder 11)) [(.mk (.ordering .less) (.mk [] (.construct (.none .nat) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 12))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 12))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 2) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 10)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 8)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 8)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false)) (Corr.prim (ts := [(.fixed .i8), (.fixed .i8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 8)), .wild]) none (.copy (.generated .binding 2)))]) (tail := (.move (.generated .part 8))) (Corr.first (ta := (.fixed .i8)) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list (.pair (.fixed .i8) .nat)), (some 3)), (2, (.pair (.fixed .i8) .nat), (some 2)), (1, (.fixed .i8), (some 1)), (0, (.list (.pair (.fixed .i8) .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none .nat) [])) (Corr.mCons (Γ' := [(3, (.list (.pair (.fixed .i8) .nat)), (some 3)), (2, (.pair (.fixed .i8) .nat), (some 2)), (1, (.fixed .i8), (some 1)), (0, (.list (.pair (.fixed .i8) .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 12))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 12))))])) (Corr.mCons (Γ' := [(3, (.list (.pair (.fixed .i8) .nat)), (some 3)), (2, (.pair (.fixed .i8) .nat), (some 2)), (1, (.fixed .i8), (some 1)), (0, (.list (.pair (.fixed .i8) .nat)), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.call (.function 2) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list (.pair (.fixed .i8) .nat)), (.fixed .i8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 12))]) none (.copy (.generated .binding 2)))]) (tail := (.move (.generated .part 12))) (Corr.second (ta := (.fixed .i8)) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun3 : FunOK program krate flags 3 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 13)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 13)) [(.mk .none (.mk [] (.construct (.none .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 17)) none (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 16)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 14)))))] (.call (.runtime .compare) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] false))))] (.matchOn (.move (.generated .holder 17)) [(.mk (.ordering .less) (.mk [] (.construct (.none .nat) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 18))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 18))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 3) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]), [(1, .bool, (some 1)), (0, (.list (.pair .bool .nat)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.pair .bool .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .bool, (some 1)), (0, (.list (.pair .bool .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none .nat) [])) (Corr.mCons (Γ' := [(3, (.list (.pair .bool .nat)), (some 3)), (2, (.pair .bool .nat), (some 2)), (1, .bool, (some 1)), (0, (.list (.pair .bool .nat)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 17)) none (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 16)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 14)))))] (.call (.runtime .compare) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] false))))]) (tail := (.matchOn (.move (.generated .holder 17)) [(.mk (.ordering .less) (.mk [] (.construct (.none .nat) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 18))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 18))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 3) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 16)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 14)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] false)) (Corr.prim (ts := [.bool, .bool]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.copy (.generated .binding 2)))]) (tail := (.move (.generated .part 14))) (Corr.first (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list (.pair .bool .nat)), (some 3)), (2, (.pair .bool .nat), (some 2)), (1, .bool, (some 1)), (0, (.list (.pair .bool .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none .nat) [])) (Corr.mCons (Γ' := [(3, (.list (.pair .bool .nat)), (some 3)), (2, (.pair .bool .nat), (some 2)), (1, .bool, (some 1)), (0, (.list (.pair .bool .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 18))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 18))))])) (Corr.mCons (Γ' := [(3, (.list (.pair .bool .nat)), (some 3)), (2, (.pair .bool .nat), (some 2)), (1, .bool, (some 1)), (0, (.list (.pair .bool .nat)), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.call (.function 3) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list (.pair .bool .nat)), .bool]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 18))]) none (.copy (.generated .binding 2)))]) (tail := (.move (.generated .part 18))) (Corr.second (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun4 : FunOK program krate flags 4 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 19)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 19)) [(.mk .none (.mk [] (.construct (.none .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 23)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 20)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 20)))))] (.call (.runtime .compare) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.matchOn (.move (.generated .holder 23)) [(.mk (.ordering .less) (.mk [] (.construct (.none .nat) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 24))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 24))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 4) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]), [(1, .int, (some 1)), (0, (.list (.pair .int .nat)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.pair .int .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .int, (some 1)), (0, (.list (.pair .int .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none .nat) [])) (Corr.mCons (Γ' := [(3, (.list (.pair .int .nat)), (some 3)), (2, (.pair .int .nat), (some 2)), (1, .int, (some 1)), (0, (.list (.pair .int .nat)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 23)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 20)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 20)))))] (.call (.runtime .compare) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))]) (tail := (.matchOn (.move (.generated .holder 23)) [(.mk (.ordering .less) (.mk [] (.construct (.none .nat) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 24))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 24))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 4) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 21)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 20)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 20)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 20)), .wild]) none (.copy (.generated .binding 2)))]) (tail := (.move (.generated .part 20))) (Corr.first (ta := .int) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list (.pair .int .nat)), (some 3)), (2, (.pair .int .nat), (some 2)), (1, .int, (some 1)), (0, (.list (.pair .int .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none .nat) [])) (Corr.mCons (Γ' := [(3, (.list (.pair .int .nat)), (some 3)), (2, (.pair .int .nat), (some 2)), (1, .int, (some 1)), (0, (.list (.pair .int .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 24))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 24))))])) (Corr.mCons (Γ' := [(3, (.list (.pair .int .nat)), (some 3)), (2, (.pair .int .nat), (some 2)), (1, .int, (some 1)), (0, (.list (.pair .int .nat)), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.call (.function 4) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list (.pair .int .nat)), .int]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 24))]) none (.copy (.generated .binding 2)))]) (tail := (.move (.generated .part 24))) (Corr.second (ta := .int) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun5 : FunOK program krate flags 5 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 25)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 25)) [(.mk .none (.mk [] (.construct (.none .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 29)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 26)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 26)))))] (.call (.runtime .compare) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))] (.matchOn (.move (.generated .holder 29)) [(.mk (.ordering .less) (.mk [] (.construct (.none .nat) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 30))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 30))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 5) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]), [(1, (.fixed .u64), (some 1)), (0, (.list (.pair (.fixed .u64) .nat)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.pair (.fixed .u64) .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.fixed .u64), (some 1)), (0, (.list (.pair (.fixed .u64) .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none .nat) [])) (Corr.mCons (Γ' := [(3, (.list (.pair (.fixed .u64) .nat)), (some 3)), (2, (.pair (.fixed .u64) .nat), (some 2)), (1, (.fixed .u64), (some 1)), (0, (.list (.pair (.fixed .u64) .nat)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 29)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 26)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 26)))))] (.call (.runtime .compare) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))]) (tail := (.matchOn (.move (.generated .holder 29)) [(.mk (.ordering .less) (.mk [] (.construct (.none .nat) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 30))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 30))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 5) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 27)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 26)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 26)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false)) (Corr.prim (ts := [(.fixed .u64), (.fixed .u64)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 26)), .wild]) none (.copy (.generated .binding 2)))]) (tail := (.move (.generated .part 26))) (Corr.first (ta := (.fixed .u64)) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list (.pair (.fixed .u64) .nat)), (some 3)), (2, (.pair (.fixed .u64) .nat), (some 2)), (1, (.fixed .u64), (some 1)), (0, (.list (.pair (.fixed .u64) .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none .nat) [])) (Corr.mCons (Γ' := [(3, (.list (.pair (.fixed .u64) .nat)), (some 3)), (2, (.pair (.fixed .u64) .nat), (some 2)), (1, (.fixed .u64), (some 1)), (0, (.list (.pair (.fixed .u64) .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 30))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 30))))])) (Corr.mCons (Γ' := [(3, (.list (.pair (.fixed .u64) .nat)), (some 3)), (2, (.pair (.fixed .u64) .nat), (some 2)), (1, (.fixed .u64), (some 1)), (0, (.list (.pair (.fixed .u64) .nat)), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.call (.function 5) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list (.pair (.fixed .u64) .nat)), (.fixed .u64)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 30))]) none (.copy (.generated .binding 2)))]) (tail := (.move (.generated .part 30))) (Corr.second (ta := (.fixed .u64)) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun6 : FunOK program krate flags 6 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 31)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 31)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 7) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 32))]) none (.move (.generated .binding 1)))] (.move (.generated .part 32))))] false) (.mk [(.mk (.bind (.generated .holder 33)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 33)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 38)) none (.block (.mk [(.mk (.bind (.generated .operand 36)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 34)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 34))))), (.mk (.bind (.generated .operand 37)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 35)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 35)))))] (.call (.runtime .compare) [(.move (.generated .operand 36)), (.move (.generated .operand 37))] false))))] (.cond (.matchOn (.move (.generated .holder 38)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 6) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]), [(0, (.list (.pair (.pair .nat .string) .bool)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.pair (.pair .nat .string) .bool))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list (.pair (.pair .nat .string) .bool)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, (.list (.pair (.pair .nat .string) .bool)), (some 2)), (1, (.pair (.pair .nat .string) .bool), (some 1)), (0, (.list (.pair (.pair .nat .string) .bool)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 7) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 32))]) none (.move (.generated .binding 1)))] (.move (.generated .part 32))))] false) (.mk [(.mk (.bind (.generated .holder 33)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 33)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 38)) none (.block (.mk [(.mk (.bind (.generated .operand 36)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 34)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 34))))), (.mk (.bind (.generated .operand 37)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 35)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 35)))))] (.call (.runtime .compare) [(.move (.generated .operand 36)), (.move (.generated .operand 37))] false))))] (.cond (.matchOn (.move (.generated .holder 38)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 6) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 7) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 32))]) none (.move (.generated .binding 1)))] (.move (.generated .part 32))))] false)) (lk := []) (Corr.callOps (ts := [.bool]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 32))]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 32))) (Corr.second (ta := (.pair .nat .string)) (tb := .bool) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .holder 33)) none (.clone (.generated .binding 2)))]) (ta := (.matchOn (.uncons (.generated .holder 33)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 38)) none (.block (.mk [(.mk (.bind (.generated .operand 36)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 34)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 34))))), (.mk (.bind (.generated .operand 37)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 35)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 35)))))] (.call (.runtime .compare) [(.move (.generated .operand 36)), (.move (.generated .operand 37))] false))))] (.cond (.matchOn (.move (.generated .holder 38)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 6) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (lb := []) (tb := (.lit (.bool false))) (Corr.matchArms (st := (.list (.pair (.pair .nat .string) .bool))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.pair (.pair .nat .string) .bool)), (some 2)), (1, (.pair (.pair .nat .string) .bool), (some 1)), (0, (.list (.pair (.pair .nat .string) .bool)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair (.pair .nat .string) .bool)), none), (3, (.pair (.pair .nat .string) .bool), (some 3)), (2, (.list (.pair (.pair .nat .string) .bool)), (some 2)), (1, (.pair (.pair .nat .string) .bool), (some 1)), (0, (.list (.pair (.pair .nat .string) .bool)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 38)) none (.block (.mk [(.mk (.bind (.generated .operand 36)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 34)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 34))))), (.mk (.bind (.generated .operand 37)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 35)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 35)))))] (.call (.runtime .compare) [(.move (.generated .operand 36)), (.move (.generated .operand 37))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 38)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 6) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .holder 38)) none (.block (.mk [(.mk (.bind (.generated .operand 36)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 34)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 34))))), (.mk (.bind (.generated .operand 37)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 35)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 35)))))] (.call (.runtime .compare) [(.move (.generated .operand 36)), (.move (.generated .operand 37))] false))))]) (ce := (.matchOn (.move (.generated .holder 38)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 36)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 34)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 34))))), (.mk (.bind (.generated .operand 37)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 35)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 35)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 36)), (.move (.generated .operand 37))] false)) (Corr.prim (ts := [(.pair .nat .string), (.pair .nat .string)]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 34)), .wild]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 34))) (Corr.first (ta := (.pair .nat .string)) (tb := .bool) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 35)), .wild]) none (.move (.generated .binding 3)))]) (tail := (.move (.generated .part 35))) (Corr.first (ta := (.pair .nat .string)) (tb := .bool) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.list (.pair (.pair .nat .string) .bool)), none), (3, (.pair (.pair .nat .string) .bool), (some 3)), (2, (.list (.pair (.pair .nat .string) .bool)), (some 2)), (1, (.pair (.pair .nat .string) .bool), (some 1)), (0, (.list (.pair (.pair .nat .string) .bool)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair (.pair .nat .string) .bool)), none), (3, (.pair (.pair .nat .string) .bool), (some 3)), (2, (.list (.pair (.pair .nat .string) .bool)), (some 2)), (1, (.pair (.pair .nat .string) .bool), (some 1)), (0, (.list (.pair (.pair .nat .string) .bool)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, (.list (.pair (.pair .nat .string) .bool)), none), (3, (.pair (.pair .nat .string) .bool), (some 3)), (2, (.list (.pair (.pair .nat .string) .bool)), (some 2)), (1, (.pair (.pair .nat .string) .bool), (some 1)), (0, (.list (.pair (.pair .nat .string) .bool)), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 6) [(.move (.generated .binding 2))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.list (.pair (.pair .nat .string) .bool))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ + +theorem fun7 : FunOK program krate flags 7 := + ⟨_, rfl, .inl ⟨_, _, [], (.lit (.bool true)), [(0, .bool, none)], rfl, rfl, + (Corr.bOfE (Corr.buildConst rfl))⟩⟩ + +theorem fun8 : FunOK program krate flags 8 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 39)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 39)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 9) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 40))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 40))))] false) (.mk [(.mk (.bind (.generated .holder 41)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 41)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 46)) none (.block (.mk [(.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 42)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 42))))), (.mk (.bind (.generated .operand 45)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 43)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 43)))))] (.call (.runtime .compare) [(.move (.generated .operand 44)), (.move (.generated .operand 45))] false))))] (.cond (.matchOn (.move (.generated .holder 46)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 8) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]), [(0, (.list (.pair (.fixed .i8) .nat)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.pair (.fixed .i8) .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list (.pair (.fixed .i8) .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, (.list (.pair (.fixed .i8) .nat)), (some 2)), (1, (.pair (.fixed .i8) .nat), (some 1)), (0, (.list (.pair (.fixed .i8) .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 9) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 40))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 40))))] false) (.mk [(.mk (.bind (.generated .holder 41)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 41)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 46)) none (.block (.mk [(.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 42)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 42))))), (.mk (.bind (.generated .operand 45)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 43)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 43)))))] (.call (.runtime .compare) [(.move (.generated .operand 44)), (.move (.generated .operand 45))] false))))] (.cond (.matchOn (.move (.generated .holder 46)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 8) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 9) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 40))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 40))))] false)) (lk := []) (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 40))]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 40))) (Corr.second (ta := (.fixed .i8)) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .holder 41)) none (.clone (.generated .binding 2)))]) (ta := (.matchOn (.uncons (.generated .holder 41)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 46)) none (.block (.mk [(.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 42)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 42))))), (.mk (.bind (.generated .operand 45)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 43)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 43)))))] (.call (.runtime .compare) [(.move (.generated .operand 44)), (.move (.generated .operand 45))] false))))] (.cond (.matchOn (.move (.generated .holder 46)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 8) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (lb := []) (tb := (.lit (.bool false))) (Corr.matchArms (st := (.list (.pair (.fixed .i8) .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.pair (.fixed .i8) .nat)), (some 2)), (1, (.pair (.fixed .i8) .nat), (some 1)), (0, (.list (.pair (.fixed .i8) .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair (.fixed .i8) .nat)), none), (3, (.pair (.fixed .i8) .nat), (some 3)), (2, (.list (.pair (.fixed .i8) .nat)), (some 2)), (1, (.pair (.fixed .i8) .nat), (some 1)), (0, (.list (.pair (.fixed .i8) .nat)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 46)) none (.block (.mk [(.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 42)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 42))))), (.mk (.bind (.generated .operand 45)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 43)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 43)))))] (.call (.runtime .compare) [(.move (.generated .operand 44)), (.move (.generated .operand 45))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 46)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 8) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .holder 46)) none (.block (.mk [(.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 42)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 42))))), (.mk (.bind (.generated .operand 45)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 43)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 43)))))] (.call (.runtime .compare) [(.move (.generated .operand 44)), (.move (.generated .operand 45))] false))))]) (ce := (.matchOn (.move (.generated .holder 46)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 42)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 42))))), (.mk (.bind (.generated .operand 45)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 43)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 43)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 44)), (.move (.generated .operand 45))] false)) (Corr.prim (ts := [(.fixed .i8), (.fixed .i8)]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 42)), .wild]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 42))) (Corr.first (ta := (.fixed .i8)) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 43)), .wild]) none (.copy (.generated .binding 3)))]) (tail := (.move (.generated .part 43))) (Corr.first (ta := (.fixed .i8)) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.list (.pair (.fixed .i8) .nat)), none), (3, (.pair (.fixed .i8) .nat), (some 3)), (2, (.list (.pair (.fixed .i8) .nat)), (some 2)), (1, (.pair (.fixed .i8) .nat), (some 1)), (0, (.list (.pair (.fixed .i8) .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair (.fixed .i8) .nat)), none), (3, (.pair (.fixed .i8) .nat), (some 3)), (2, (.list (.pair (.fixed .i8) .nat)), (some 2)), (1, (.pair (.fixed .i8) .nat), (some 1)), (0, (.list (.pair (.fixed .i8) .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, (.list (.pair (.fixed .i8) .nat)), none), (3, (.pair (.fixed .i8) .nat), (some 3)), (2, (.list (.pair (.fixed .i8) .nat)), (some 2)), (1, (.pair (.fixed .i8) .nat), (some 1)), (0, (.list (.pair (.fixed .i8) .nat)), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 8) [(.move (.generated .binding 2))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.list (.pair (.fixed .i8) .nat))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ + +theorem fun9 : FunOK program krate flags 9 := + ⟨_, rfl, .inl ⟨_, _, [], (.lit (.bool true)), [(0, .nat, none)], rfl, rfl, + (Corr.bOfE (Corr.buildConst rfl))⟩⟩ + +theorem fun10 : FunOK program krate flags 10 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 47)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 47)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 9) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 48))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 48))))] false) (.mk [(.mk (.bind (.generated .holder 49)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 49)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 54)) none (.block (.mk [(.mk (.bind (.generated .operand 52)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 50)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 50))))), (.mk (.bind (.generated .operand 53)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 51)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 51)))))] (.call (.runtime .compare) [(.move (.generated .operand 52)), (.move (.generated .operand 53))] false))))] (.cond (.matchOn (.move (.generated .holder 54)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 10) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]), [(0, (.list (.pair .bool .nat)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.pair .bool .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list (.pair .bool .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, (.list (.pair .bool .nat)), (some 2)), (1, (.pair .bool .nat), (some 1)), (0, (.list (.pair .bool .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 9) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 48))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 48))))] false) (.mk [(.mk (.bind (.generated .holder 49)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 49)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 54)) none (.block (.mk [(.mk (.bind (.generated .operand 52)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 50)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 50))))), (.mk (.bind (.generated .operand 53)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 51)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 51)))))] (.call (.runtime .compare) [(.move (.generated .operand 52)), (.move (.generated .operand 53))] false))))] (.cond (.matchOn (.move (.generated .holder 54)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 10) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 9) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 48))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 48))))] false)) (lk := []) (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 48))]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 48))) (Corr.second (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .holder 49)) none (.clone (.generated .binding 2)))]) (ta := (.matchOn (.uncons (.generated .holder 49)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 54)) none (.block (.mk [(.mk (.bind (.generated .operand 52)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 50)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 50))))), (.mk (.bind (.generated .operand 53)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 51)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 51)))))] (.call (.runtime .compare) [(.move (.generated .operand 52)), (.move (.generated .operand 53))] false))))] (.cond (.matchOn (.move (.generated .holder 54)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 10) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (lb := []) (tb := (.lit (.bool false))) (Corr.matchArms (st := (.list (.pair .bool .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.pair .bool .nat)), (some 2)), (1, (.pair .bool .nat), (some 1)), (0, (.list (.pair .bool .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair .bool .nat)), none), (3, (.pair .bool .nat), (some 3)), (2, (.list (.pair .bool .nat)), (some 2)), (1, (.pair .bool .nat), (some 1)), (0, (.list (.pair .bool .nat)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 54)) none (.block (.mk [(.mk (.bind (.generated .operand 52)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 50)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 50))))), (.mk (.bind (.generated .operand 53)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 51)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 51)))))] (.call (.runtime .compare) [(.move (.generated .operand 52)), (.move (.generated .operand 53))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 54)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 10) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .holder 54)) none (.block (.mk [(.mk (.bind (.generated .operand 52)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 50)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 50))))), (.mk (.bind (.generated .operand 53)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 51)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 51)))))] (.call (.runtime .compare) [(.move (.generated .operand 52)), (.move (.generated .operand 53))] false))))]) (ce := (.matchOn (.move (.generated .holder 54)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 52)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 50)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 50))))), (.mk (.bind (.generated .operand 53)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 51)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 51)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 52)), (.move (.generated .operand 53))] false)) (Corr.prim (ts := [.bool, .bool]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 50)), .wild]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 50))) (Corr.first (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 51)), .wild]) none (.copy (.generated .binding 3)))]) (tail := (.move (.generated .part 51))) (Corr.first (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.list (.pair .bool .nat)), none), (3, (.pair .bool .nat), (some 3)), (2, (.list (.pair .bool .nat)), (some 2)), (1, (.pair .bool .nat), (some 1)), (0, (.list (.pair .bool .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair .bool .nat)), none), (3, (.pair .bool .nat), (some 3)), (2, (.list (.pair .bool .nat)), (some 2)), (1, (.pair .bool .nat), (some 1)), (0, (.list (.pair .bool .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, (.list (.pair .bool .nat)), none), (3, (.pair .bool .nat), (some 3)), (2, (.list (.pair .bool .nat)), (some 2)), (1, (.pair .bool .nat), (some 1)), (0, (.list (.pair .bool .nat)), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 10) [(.move (.generated .binding 2))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.list (.pair .bool .nat))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ + +theorem fun11 : FunOK program krate flags 11 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 55)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 55)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 9) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 56))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 56))))] false) (.mk [(.mk (.bind (.generated .holder 57)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 57)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 62)) none (.block (.mk [(.mk (.bind (.generated .operand 60)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 58)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 58))))), (.mk (.bind (.generated .operand 61)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 59)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 59)))))] (.call (.runtime .compare) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] false))))] (.cond (.matchOn (.move (.generated .holder 62)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 11) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]), [(0, (.list (.pair .int .nat)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.pair .int .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list (.pair .int .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, (.list (.pair .int .nat)), (some 2)), (1, (.pair .int .nat), (some 1)), (0, (.list (.pair .int .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 9) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 56))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 56))))] false) (.mk [(.mk (.bind (.generated .holder 57)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 57)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 62)) none (.block (.mk [(.mk (.bind (.generated .operand 60)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 58)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 58))))), (.mk (.bind (.generated .operand 61)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 59)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 59)))))] (.call (.runtime .compare) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] false))))] (.cond (.matchOn (.move (.generated .holder 62)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 11) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 9) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 56))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 56))))] false)) (lk := []) (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 56))]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 56))) (Corr.second (ta := .int) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .holder 57)) none (.clone (.generated .binding 2)))]) (ta := (.matchOn (.uncons (.generated .holder 57)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 62)) none (.block (.mk [(.mk (.bind (.generated .operand 60)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 58)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 58))))), (.mk (.bind (.generated .operand 61)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 59)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 59)))))] (.call (.runtime .compare) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] false))))] (.cond (.matchOn (.move (.generated .holder 62)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 11) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (lb := []) (tb := (.lit (.bool false))) (Corr.matchArms (st := (.list (.pair .int .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.pair .int .nat)), (some 2)), (1, (.pair .int .nat), (some 1)), (0, (.list (.pair .int .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair .int .nat)), none), (3, (.pair .int .nat), (some 3)), (2, (.list (.pair .int .nat)), (some 2)), (1, (.pair .int .nat), (some 1)), (0, (.list (.pair .int .nat)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 62)) none (.block (.mk [(.mk (.bind (.generated .operand 60)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 58)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 58))))), (.mk (.bind (.generated .operand 61)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 59)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 59)))))] (.call (.runtime .compare) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 62)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 11) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .holder 62)) none (.block (.mk [(.mk (.bind (.generated .operand 60)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 58)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 58))))), (.mk (.bind (.generated .operand 61)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 59)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 59)))))] (.call (.runtime .compare) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] false))))]) (ce := (.matchOn (.move (.generated .holder 62)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 60)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 58)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 58))))), (.mk (.bind (.generated .operand 61)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 59)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 59)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] false)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 58)), .wild]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 58))) (Corr.first (ta := .int) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 59)), .wild]) none (.copy (.generated .binding 3)))]) (tail := (.move (.generated .part 59))) (Corr.first (ta := .int) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.list (.pair .int .nat)), none), (3, (.pair .int .nat), (some 3)), (2, (.list (.pair .int .nat)), (some 2)), (1, (.pair .int .nat), (some 1)), (0, (.list (.pair .int .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair .int .nat)), none), (3, (.pair .int .nat), (some 3)), (2, (.list (.pair .int .nat)), (some 2)), (1, (.pair .int .nat), (some 1)), (0, (.list (.pair .int .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, (.list (.pair .int .nat)), none), (3, (.pair .int .nat), (some 3)), (2, (.list (.pair .int .nat)), (some 2)), (1, (.pair .int .nat), (some 1)), (0, (.list (.pair .int .nat)), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 11) [(.move (.generated .binding 2))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.list (.pair .int .nat))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ + +theorem fun12 : FunOK program krate flags 12 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 63)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 63)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 9) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 64))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 64))))] false) (.mk [(.mk (.bind (.generated .holder 65)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 65)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 70)) none (.block (.mk [(.mk (.bind (.generated .operand 68)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 66)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 66))))), (.mk (.bind (.generated .operand 69)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 67)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 67)))))] (.call (.runtime .compare) [(.move (.generated .operand 68)), (.move (.generated .operand 69))] false))))] (.cond (.matchOn (.move (.generated .holder 70)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 12) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]), [(0, (.list (.pair (.fixed .u64) .nat)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.pair (.fixed .u64) .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list (.pair (.fixed .u64) .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, (.list (.pair (.fixed .u64) .nat)), (some 2)), (1, (.pair (.fixed .u64) .nat), (some 1)), (0, (.list (.pair (.fixed .u64) .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 9) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 64))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 64))))] false) (.mk [(.mk (.bind (.generated .holder 65)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 65)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 70)) none (.block (.mk [(.mk (.bind (.generated .operand 68)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 66)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 66))))), (.mk (.bind (.generated .operand 69)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 67)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 67)))))] (.call (.runtime .compare) [(.move (.generated .operand 68)), (.move (.generated .operand 69))] false))))] (.cond (.matchOn (.move (.generated .holder 70)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 12) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 9) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 64))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 64))))] false)) (lk := []) (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 64))]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 64))) (Corr.second (ta := (.fixed .u64)) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .holder 65)) none (.clone (.generated .binding 2)))]) (ta := (.matchOn (.uncons (.generated .holder 65)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 70)) none (.block (.mk [(.mk (.bind (.generated .operand 68)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 66)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 66))))), (.mk (.bind (.generated .operand 69)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 67)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 67)))))] (.call (.runtime .compare) [(.move (.generated .operand 68)), (.move (.generated .operand 69))] false))))] (.cond (.matchOn (.move (.generated .holder 70)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 12) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (lb := []) (tb := (.lit (.bool false))) (Corr.matchArms (st := (.list (.pair (.fixed .u64) .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.pair (.fixed .u64) .nat)), (some 2)), (1, (.pair (.fixed .u64) .nat), (some 1)), (0, (.list (.pair (.fixed .u64) .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair (.fixed .u64) .nat)), none), (3, (.pair (.fixed .u64) .nat), (some 3)), (2, (.list (.pair (.fixed .u64) .nat)), (some 2)), (1, (.pair (.fixed .u64) .nat), (some 1)), (0, (.list (.pair (.fixed .u64) .nat)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 70)) none (.block (.mk [(.mk (.bind (.generated .operand 68)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 66)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 66))))), (.mk (.bind (.generated .operand 69)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 67)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 67)))))] (.call (.runtime .compare) [(.move (.generated .operand 68)), (.move (.generated .operand 69))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 70)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 12) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .holder 70)) none (.block (.mk [(.mk (.bind (.generated .operand 68)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 66)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 66))))), (.mk (.bind (.generated .operand 69)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 67)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 67)))))] (.call (.runtime .compare) [(.move (.generated .operand 68)), (.move (.generated .operand 69))] false))))]) (ce := (.matchOn (.move (.generated .holder 70)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 68)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 66)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 66))))), (.mk (.bind (.generated .operand 69)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 67)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 67)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 68)), (.move (.generated .operand 69))] false)) (Corr.prim (ts := [(.fixed .u64), (.fixed .u64)]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 66)), .wild]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 66))) (Corr.first (ta := (.fixed .u64)) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 67)), .wild]) none (.copy (.generated .binding 3)))]) (tail := (.move (.generated .part 67))) (Corr.first (ta := (.fixed .u64)) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.list (.pair (.fixed .u64) .nat)), none), (3, (.pair (.fixed .u64) .nat), (some 3)), (2, (.list (.pair (.fixed .u64) .nat)), (some 2)), (1, (.pair (.fixed .u64) .nat), (some 1)), (0, (.list (.pair (.fixed .u64) .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair (.fixed .u64) .nat)), none), (3, (.pair (.fixed .u64) .nat), (some 3)), (2, (.list (.pair (.fixed .u64) .nat)), (some 2)), (1, (.pair (.fixed .u64) .nat), (some 1)), (0, (.list (.pair (.fixed .u64) .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, (.list (.pair (.fixed .u64) .nat)), none), (3, (.pair (.fixed .u64) .nat), (some 3)), (2, (.list (.pair (.fixed .u64) .nat)), (some 2)), (1, (.pair (.fixed .u64) .nat), (some 1)), (0, (.list (.pair (.fixed .u64) .nat)), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 12) [(.move (.generated .binding 2))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.list (.pair (.fixed .u64) .nat))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ + +theorem fun13 : FunOK program krate flags 13 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 6) [(.clone (.generated .binding 0))] false) (.mk [] (.cond (.call (.function 8) [(.clone (.generated .binding 2))] false) (.mk [] (.cond (.call (.function 10) [(.clone (.generated .binding 4))] false) (.mk [] (.cond (.call (.function 11) [(.clone (.generated .binding 6))] false) (.mk [] (.cond (.call (.function 12) [(.clone (.generated .binding 8))] false) (.mk [] (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 2)), (.copy (.generated .binding 3)), (.move (.generated .binding 4)), (.copy (.generated .binding 5)), (.move (.generated .binding 6)), (.copy (.generated .binding 7)), (.move (.generated .binding 8)), (.copy (.generated .binding 9))] false)])) (.mk [] (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])))) (.mk [] (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])))) (.mk [] (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])))) (.mk [] (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])))) (.mk [] (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) []))), [(9, (.fixed .u64), (some 9)), (8, (.list (.pair (.fixed .u64) .nat)), (some 8)), (7, .int, (some 7)), (6, (.list (.pair .int .nat)), (some 6)), (5, .bool, (some 5)), (4, (.list (.pair .bool .nat)), (some 4)), (3, (.fixed .i8), (some 3)), (2, (.list (.pair (.fixed .i8) .nat)), (some 2)), (1, (.pair .nat .string), (some 1)), (0, (.list (.pair (.pair .nat .string) .bool)), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 6) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.list (.pair (.pair .nat .string) .bool))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 8) [(.clone (.generated .binding 2))] false) (.mk [] (.cond (.call (.function 10) [(.clone (.generated .binding 4))] false) (.mk [] (.cond (.call (.function 11) [(.clone (.generated .binding 6))] false) (.mk [] (.cond (.call (.function 12) [(.clone (.generated .binding 8))] false) (.mk [] (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 2)), (.copy (.generated .binding 3)), (.move (.generated .binding 4)), (.copy (.generated .binding 5)), (.move (.generated .binding 6)), (.copy (.generated .binding 7)), (.move (.generated .binding 8)), (.copy (.generated .binding 9))] false)])) (.mk [] (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])))) (.mk [] (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])))) (.mk [] (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])))) (.mk [] (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])))) (lb := []) (tb := (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])) (Corr.cond (lc := []) (ce := (.call (.function 8) [(.clone (.generated .binding 2))] false)) (lk := []) (Corr.callOps (ts := [(.list (.pair (.fixed .i8) .nat))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 10) [(.clone (.generated .binding 4))] false) (.mk [] (.cond (.call (.function 11) [(.clone (.generated .binding 6))] false) (.mk [] (.cond (.call (.function 12) [(.clone (.generated .binding 8))] false) (.mk [] (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 2)), (.copy (.generated .binding 3)), (.move (.generated .binding 4)), (.copy (.generated .binding 5)), (.move (.generated .binding 6)), (.copy (.generated .binding 7)), (.move (.generated .binding 8)), (.copy (.generated .binding 9))] false)])) (.mk [] (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])))) (.mk [] (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])))) (.mk [] (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])))) (lb := []) (tb := (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])) (Corr.cond (lc := []) (ce := (.call (.function 10) [(.clone (.generated .binding 4))] false)) (lk := []) (Corr.callOps (ts := [(.list (.pair .bool .nat))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 11) [(.clone (.generated .binding 6))] false) (.mk [] (.cond (.call (.function 12) [(.clone (.generated .binding 8))] false) (.mk [] (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 2)), (.copy (.generated .binding 3)), (.move (.generated .binding 4)), (.copy (.generated .binding 5)), (.move (.generated .binding 6)), (.copy (.generated .binding 7)), (.move (.generated .binding 8)), (.copy (.generated .binding 9))] false)])) (.mk [] (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])))) (.mk [] (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])))) (lb := []) (tb := (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])) (Corr.cond (lc := []) (ce := (.call (.function 11) [(.clone (.generated .binding 6))] false)) (lk := []) (Corr.callOps (ts := [(.list (.pair .int .nat))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 12) [(.clone (.generated .binding 8))] false) (.mk [] (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 2)), (.copy (.generated .binding 3)), (.move (.generated .binding 4)), (.copy (.generated .binding 5)), (.move (.generated .binding 6)), (.copy (.generated .binding 7)), (.move (.generated .binding 8)), (.copy (.generated .binding 9))] false)])) (.mk [] (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])))) (lb := []) (tb := (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])) (Corr.cond (lc := []) (ce := (.call (.function 12) [(.clone (.generated .binding 8))] false)) (lk := []) (Corr.callOps (ts := [(.list (.pair (.fixed .u64) .nat))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 2)), (.copy (.generated .binding 3)), (.move (.generated .binding 4)), (.copy (.generated .binding 5)), (.move (.generated .binding 6)), (.copy (.generated .binding 7)), (.move (.generated .binding 8)), (.copy (.generated .binding 9))] false)])) (lb := []) (tb := (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])) (Corr.build (ts := [(.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair (.pair .nat .string) .bool)), (.pair .nat .string), (.list (.pair (.fixed .i8) .nat)), (.fixed .i8), (.list (.pair .bool .nat)), .bool, (.list (.pair .int .nat)), .int, (.list (.pair (.fixed .u64) .nat)), (.fixed .u64)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))))))))))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | 3 => exact fun3 + | 4 => exact fun4 + | 5 => exact fun5 + | 6 => exact fun6 + | 7 => exact fun7 + | 8 => exact fun8 + | 9 => exact fun9 + | 10 => exact fun10 + | 11 => exact fun11 + | 12 => exact fun12 + | 13 => exact fun13 + | _ + 14 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R9.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R9.lean similarity index 98% rename from examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R9.lean rename to examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R9.lean index 1cf5edb0c..bb70d2b9d 100644 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R9.lean +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R9.lean @@ -18,7 +18,7 @@ set_option maxRecDepth 100000 set_option maxHeartbeats 0 set_option synthInstance.maxHeartbeats 0 set_option linter.unusedVariables false -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9 def __prog : _root_.LexLeanTarget.TargetSyntax.Program := { adts := [], functions := [ @@ -37,4 +37,4 @@ def denote (x : Nat) (s : String) : _root_.LexLeanPreservation.Obs := theorem root (x : Nat) (s : String) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat x), (_root_.LexLeanTarget.TargetSyntax.Value.string s)] (_root_.LexLeanPreservation.Rel (__fits_0 x s) ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat)) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat))))) (Coverage.Colls.literals x s))) := _root_.LexLeanPreservation.run_of_funRel (__rel_0 x s) -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9 +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9 diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R9/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R9/Compose/RustStd.lex.tex new file mode 100644 index 000000000..20f5ed5a5 --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R9/Compose/RustStd.lex.tex @@ -0,0 +1,501 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9, + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.Compose.RustStd.root : @1005 := @1006 { + all: [LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.RustStd.program +@1 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.RustStd.krate +@2 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.RustStd.flags +@3 := Nat +@4 := #2 +@5 := LexLeanTarget.TargetSyntax.Value.nat +@6 := @5 @4 +@7 := LexLeanTarget.TargetSyntax.Ty.nat +@8 := LexLeanTarget.TargetSyntax.Program +@9 := LexLeanPreservation.Rust.RCrate +@10 := LexLeanPreservation.Rust.Flags +@11 := LexLeanPreservation.Rust.WT +@12 := #3 +@14 := @11 @12 @4 +@15 := #1 +@16 := @14 @15 +@17 := #0 +@18 := @5 @17 +@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 +@26 := LexLeanPreservation.Rust.wt_nat @0 +@27 := @11 @0 +@29 := @27 @4 @15 +@34 := {c : @9} -> {A : @10} -> (n : @3) -> @29 @18 @7 +@35 := @26 @1 +@36 := @27 @1 +@37 := @36 @15 +@41 := {A : @10} -> (n : @3) -> @37 @18 @7 +@42 := @35 @2 +@43 := @36 @2 +@46 := (n : @3) -> @43 @18 @7 +@47 := @42 @4 +@49 := @43 @6 @7 +@50 := String +@51 := LexLeanTarget.TargetSyntax.Value.string +@52 := @51 @15 +@53 := LexLeanTarget.TargetSyntax.Ty.string +@54 := @51 @17 +@60 := {p : @8} -> {c : @9} -> {A : @10} -> (s : @50) -> @16 @54 @53 +@62 := LexLeanPreservation.Rust.wt_string @0 +@67 := {c : @9} -> {A : @10} -> (s : @50) -> @29 @54 @53 +@68 := @62 @1 +@72 := {A : @10} -> (s : @50) -> @37 @54 @53 +@73 := @68 @2 +@76 := (s : @50) -> @43 @54 @53 +@77 := @73 @15 +@79 := @43 @52 @53 +@80 := LexLeanTarget.TargetSyntax.Value +@81 := List.nil.{0} +@82 := List.cons.{0} +@83 := @81 @80 +@84 := @82 @80 +@86 := @84 @52 @83 +@88 := @84 @6 @86 +@89 := Prod.{0, 0} +@90 := @89 @3 +@91 := @90 @80 +@92 := 1 +@95 := Prod.mk.{0, 0} @3 @80 +@96 := @95 @92 +@97 := @96 @52 +@98 := 0 +@99 := @95 @98 +@100 := @99 @6 +@101 := @81 @91 +@102 := @82 @91 +@104 := @102 @100 @101 +@106 := @102 @97 @104 +@107 := Bool.false +@108 := LexLeanTarget.TargetSyntax.Function +@109 := LexLeanTarget.TargetSyntax.Program.functions +@110 := @109 @0 +@111 := LexLeanTarget.TargetSyntax.Ty +@112 := @81 @3 +@113 := @81 @111 +@114 := LexLeanTarget.TargetSyntax.Ty.unit +@115 := LexLeanTarget.TargetSyntax.Value.unit +@118 := LexLeanTarget.TargetSyntax.Expr.value @114 @115 +@123 := LexLeanTarget.TargetSyntax.Function.mk @112 @113 @114 @118 +@128 := List.getD.{0} @108 @110 @98 @123 +@132 := fun (__e_n : @3) => + LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.RustStd.root @17 @98 +@133 := LexLeanPreservation.Rust.WTL +@141 := {p : @8} -> {c : @9} -> {A : @10} -> @133 @4 @15 @17 @83 @113 +@143 := LexLeanPreservation.Rust.wtl_nil @0 +@144 := @133 @0 +@150 := {c : @9} -> {A : @10} -> @144 @15 @17 @83 @113 +@151 := @143 @1 +@152 := @144 @1 +@156 := {A : @10} -> @152 @17 @83 @113 +@157 := @151 @2 +@158 := @152 @2 +@159 := @158 @83 +@160 := @159 @113 +@161 := List.{0} +@162 := @161 @80 +@163 := @161 @111 +@164 := #6 +@165 := @11 @164 +@166 := #5 +@167 := @165 @166 +@168 := #4 +@171 := @167 @168 @12 @4 +@172 := #7 +@177 := @133 @172 @164 @166 @4 @15 +@178 := #8 +@181 := @133 @178 @172 @164 +@183 := @84 @166 @12 +@184 := @181 @183 +@185 := @82 @111 +@187 := @185 @168 @4 +@197 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {v : @80} -> {t : @111} -> {vs : @162} -> {ts : @163} -> (h : @171) -> (hs : @177) -> @184 @187 +@199 := LexLeanPreservation.Rust.wtl_cons @0 +@219 := {c : @9} -> + {A : @10} -> + {v : @80} -> + {t : @111} -> + {vs : @162} -> + {ts : @163} -> + (h : @27 @166 @168 @12 @4) -> (hs : @144 @164 @166 @4 @15) -> @144 @172 @164 @183 @187 +@220 := @199 @1 +@236 := {A : @10} -> + {v : @80} -> + {t : @111} -> + {vs : @162} -> + {ts : @163} -> (h : @36 @168 @12 @4) -> (hs : @152 @166 @4 @15) -> @152 @164 @183 @187 +@237 := @220 @2 +@239 := @43 @12 @4 +@241 := @158 @4 @15 +@249 := {v : @80} -> + {t : @111} -> {vs : @162} -> {ts : @163} -> (h : @239) -> (hs : @241) -> @158 @183 @187 +@250 := @237 @52 +@251 := @51 @168 +@253 := @43 @251 @4 +@254 := @51 @164 +@255 := @84 @254 +@263 := {t : @111} -> + {vs : @162} -> {ts : @163} -> (h : @253) -> (hs : @241) -> @158 (@255 @12) @187 +@264 := @250 @53 +@265 := @51 @12 +@267 := @43 @265 @53 +@268 := @51 @166 +@269 := @84 @268 +@271 := @158 (@269 @12) +@272 := @185 @53 +@273 := @272 @4 +@278 := {vs : @162} -> {ts : @163} -> (h : @267) -> (hs : @241) -> @271 @273 +@279 := @264 @83 +@280 := @51 @4 +@282 := @43 @280 @53 +@283 := @159 @15 +@285 := @84 @251 @83 +@290 := {ts : @163} -> (h : @282) -> (hs : @283) -> @158 @285 @273 +@291 := @279 @113 +@293 := @84 @265 @83 +@294 := @158 @293 +@295 := @272 @113 +@298 := (h : @79) -> (hs : @160) -> @294 @295 +@299 := @291 @77 +@301 := @84 @280 @83 +@303 := @158 @301 @295 +@304 := (hs : @160) -> @303 +@305 := @299 @157 +@307 := @158 @86 @295 +@308 := @237 @6 +@309 := @5 @166 +@311 := @43 @309 @4 +@312 := @5 @172 +@313 := @84 @312 +@321 := {t : @111} -> + {vs : @162} -> {ts : @163} -> (h : @311) -> (hs : @241) -> @158 (@313 @12) @187 +@322 := @308 @7 +@323 := @5 @168 +@325 := @43 @323 @7 +@326 := @5 @164 +@327 := @84 @326 +@329 := @158 (@327 @12) +@330 := @185 @7 +@331 := @330 @4 +@336 := {vs : @162} -> {ts : @163} -> (h : @325) -> (hs : @241) -> @329 @331 +@337 := @322 @86 +@338 := @5 @12 +@340 := @43 @338 @7 +@341 := @294 @15 +@343 := @84 @309 @285 +@344 := @158 @343 +@348 := {ts : @163} -> (h : @340) -> (hs : @341) -> @344 @331 +@349 := @337 @295 +@351 := @84 @323 @293 +@352 := @158 @351 +@353 := @330 @295 +@356 := (h : @49) -> (hs : @303) -> @352 @353 +@357 := @349 @47 +@359 := @84 @338 @301 +@360 := @158 @359 +@362 := (hs : @307) -> @360 @353 +@363 := @357 @305 +@364 := @158 @88 +@365 := @364 @353 +@366 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.denote +@368 := @366 @4 @15 +@369 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.__fits_0 +@371 := @369 @4 @15 +@374 := Coverage.Colls.literals @4 @15 +@376 := @89 @50 @3 +@377 := @161 @376 +@378 := @161 @3 +@379 := @90 @378 +@380 := @161 @379 +@382 := @89 @378 @380 +@383 := LexLeanPreservation.encPair +@387 := @383 @50 @3 @51 @5 +@388 := LexLeanPreservation.encList +@390 := @388 @376 @387 +@392 := @388 @3 @5 +@396 := @383 @3 @378 @5 @392 +@398 := @388 @379 @396 +@402 := @383 @378 @380 @392 @398 +@407 := @383 @377 @382 @390 @402 @374 +@410 := LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.root @4 @15 +@411 := Bool +@412 := Ne.{1} +@413 := LexLeanPreservation.Obs +@414 := @412 @413 +@415 := LexLeanPreservation.Rel +@418 := @414 (@415 @15 @17) +@419 := LexLeanPreservation.Obs.stuck +@422 := (f : @411) -> (v : @80) -> @418 @419 +@424 := LexLeanPreservation.Rust.rel_ne_stuck @371 +@431 := (v : @80) -> @414 (@415 (@369 @12 @4) @17) @419 +@432 := @424 @407 +@436 := @414 (@415 @371 @407) @419 +@437 := @161 @91 +@438 := LexLeanPreservation.Rust.FunSem +@439 := #9 +@445 := (n : @3) -> @438 @439 @178 @172 @17 @164 +@446 := Eq.{1} +@447 := Option.{0} +@448 := @447 @108 +@449 := @446 @448 +@456 := LexLeanRuntime.index (@161 @108) @108 (LexLeanRuntime.instIndexableList @108) +@460 := @449 (@456 (@109 @439) @164) +@461 := Option.some.{0} +@462 := @461 @108 +@463 := @462 @166 +@464 := @460 @463 +@465 := #10 +@469 := @133 @465 @439 @178 @166 +@470 := LexLeanTarget.TargetSyntax.Function.types +@471 := @470 @164 +@472 := @469 @471 +@473 := @447 @437 +@474 := @446 @473 +@475 := LexLeanTarget.TargetSemantics.bindAll +@476 := LexLeanTarget.TargetSyntax.Function.parameters +@481 := @474 (@475 (@476 @172) @164 @101) +@482 := @461 @437 +@483 := @482 @166 +@484 := @481 @483 +@485 := @447 @411 +@486 := @446 @485 +@487 := LexLeanPreservation.Rust.fnFallible +@488 := #11 +@491 := @486 (@487 @488 @439) +@492 := @461 @411 +@493 := @492 @166 +@494 := @491 @493 +@495 := LexLeanPreservation.RunConv +@496 := #13 +@500 := @495 @496 @465 @178 @166 +@502 := @414 @164 @419 +@503 := Exists.{1} +@504 := LexLeanPreservation.Rust.ROut +@505 := @503 @504 +@506 := And +@507 := LexLeanPreservation.Rust.RealizesFn +@511 := @506 (@507 @439 @178 @17) +@512 := LexLeanPreservation.Rust.RCI +@514 := @512 #15 +@515 := LexLeanPreservation.Rust.fnIdent +@516 := @515 @496 +@523 := (hne : @502) -> @505 (fun (ro : @504) => @511 (@514 @516 @488 @17)) +@538 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {f : @3} -> + {fn : @108} -> + {args : @162} -> + {env : @437} -> + {F : @411} -> + {o : @413} -> + (hB : @445) -> + (hfn : @464) -> (hwt : @472) -> (hbind : @484) -> (hF : @494) -> (hA : @500) -> @523 +@540 := LexLeanPreservation.Rust.compose @0 +@541 := @438 @0 +@546 := (n : @3) -> @541 @178 @172 @17 @164 +@547 := @456 @110 +@550 := @449 (@547 @164) @463 +@554 := @144 @439 @178 @166 @471 +@555 := @495 @0 +@558 := @555 @465 @178 @166 +@572 := {c : @9} -> + {A : @10} -> + {f : @3} -> + {fn : @108} -> + {args : @162} -> + {env : @437} -> + {F : @411} -> + {o : @413} -> + (hB : @546) -> + (hfn : @550) -> (hwt : @554) -> (hbind : @484) -> (hF : @494) -> (hA : @558) -> @523 +@573 := @540 @1 +@574 := @541 @1 +@578 := (n : @3) -> @574 @172 @17 @164 +@581 := @152 @178 @166 @471 +@582 := @487 @1 +@585 := @486 (@582 @439) @493 +@586 := @512 @1 +@596 := (hbind : @484) -> + (hF : @585) -> (hA : @558) -> (hne : @502) -> @505 (fun (ro : @504) => @511 (@586 @516 @488 @17)) +@606 := {A : @10} -> + {f : @3} -> + {fn : @108} -> + {args : @162} -> + {env : @437} -> {F : @411} -> {o : @413} -> (hB : @578) -> (hfn : @550) -> (hwt : @581) -> @596 +@607 := @573 @2 +@609 := @574 @2 @17 +@611 := (n : @3) -> @609 @164 +@612 := @158 @166 +@613 := @612 @471 +@622 := {f : @3} -> + {fn : @108} -> + {args : @162} -> + {env : @437} -> {F : @411} -> {o : @413} -> (hB : @611) -> (hfn : @550) -> (hwt : @613) -> @596 +@623 := @607 @98 +@625 := (n : @3) -> @609 @98 +@626 := @547 @98 +@627 := @449 @626 +@628 := @627 @463 +@629 := @582 @98 +@630 := @486 @629 +@631 := @630 @493 +@632 := @555 @98 +@634 := @632 @178 @166 +@636 := @586 (@515 @98) +@644 := (hF : @631) -> (hA : @634) -> (hne : @502) -> @505 (fun (ro : @504) => @511 (@636 @488 @17)) +@653 := {fn : @108} -> + {args : @162} -> + {env : @437} -> + {F : @411} -> {o : @413} -> (hB : @625) -> (hfn : @628) -> (hwt : @613) -> (hbind : @484) -> @644 +@654 := @623 @128 +@656 := @627 (@462 @128) +@657 := @470 @128 +@658 := @612 @657 +@660 := @475 (@476 @128) +@672 := {args : @162} -> + {env : @437} -> + {F : @411} -> + {o : @413} -> + (hB : @625) -> (hfn : @656) -> (hwt : @658) -> (hbind : @474 (@660 @164 @101) @483) -> @644 +@673 := @654 @88 +@675 := @313 (@255 @83) +@677 := @158 @675 @657 +@683 := @84 (@5 @178) (@84 (@51 @172) @83) +@687 := @474 (@660 @683 @101) @483 +@693 := @84 (@5 @465) (@84 (@51 @439) @83) +@695 := @632 @693 @166 +@697 := @84 (@5 @496) +@698 := #12 +@717 := {env : @437} -> + {F : @411} -> + {o : @413} -> + (hB : @625) -> + (hfn : @656) -> + (hwt : @677) -> + (hbind : @687) -> + (hF : @631) -> + (hA : @695) -> + (hne : @502) -> @505 (fun (ro : @504) => @511 (@636 (@697 (@84 (@51 @698) @83)) @17)) +@718 := @673 @106 +@720 := @327 (@269 @83) +@722 := @158 @720 @657 +@733 := @474 (@660 @675 @101) (@482 (@102 (@96 @254) (@102 (@99 @312) @101))) +@739 := @84 (@5 @439) (@84 (@51 @178) @83) +@761 := {F : @411} -> + {o : @413} -> + (hB : @625) -> + (hfn : @656) -> + (hwt : @722) -> + (hbind : @733) -> + (hF : @631) -> + (hA : @632 @739 @166) -> + (hne : @502) -> @505 (fun (ro : @504) => @511 (@636 (@84 (@5 @698) (@84 (@51 @488) @83)) @17)) +@762 := @718 @107 +@763 := @344 @657 +@774 := @474 (@660 @720 @101) (@482 (@102 (@96 @268) (@102 (@99 @326) @101))) +@776 := @630 (@492 @107) +@778 := @632 @683 @166 +@779 := @507 @107 +@801 := {o : @413} -> + (hB : @625) -> + (hfn : @656) -> + (hwt : @763) -> + (hbind : @774) -> + (hF : @776) -> + (hA : @778) -> + (hne : @502) -> + @505 (fun (ro : @504) => @506 (@779 @178 @17) (@636 (@84 (@5 @488) (@84 (@51 @465) @83)) @17)) +@802 := @762 @368 +@803 := @352 @657 +@814 := @474 (@660 @343 @101) (@482 (@102 (@96 @251) (@102 (@99 @309) @101))) +@815 := @632 @675 +@817 := @366 @172 @164 +@818 := @815 @817 +@820 := @366 @178 @172 +@839 := (hB : @625) -> + (hfn : @656) -> + (hwt : @803) -> + (hbind : @814) -> + (hF : @776) -> + (hA : @818) -> + (hne : @414 @820 @419) -> + @505 (fun (ro : @504) => @506 (@779 (@366 @465 @439) @17) (@636 @693 @17)) +@840 := @802 @132 +@841 := @360 @657 +@852 := @474 (@660 @351 @101) (@482 (@102 (@96 @265) (@102 (@99 @323) @101))) +@853 := @632 @720 +@855 := @366 @164 @166 +@874 := (hfn : @656) -> + (hwt : @841) -> + (hbind : @852) -> + (hF : @776) -> + (hA : @853 @855) -> + (hne : @414 @817 @419) -> + @505 (fun (ro : @504) => @506 (@779 (@366 @439 @178) @17) (@636 @739 @17)) +@875 := Eq.refl.{1} +@878 := @840 (@875 @448 @626) +@879 := @364 @657 +@890 := @474 (@660 @359 @101) (@482 (@102 (@96 @280) (@102 (@99 @338) @101))) +@891 := @632 @343 +@893 := @366 @166 @168 +@909 := (hwt : @879) -> + (hbind : @890) -> + (hF : @776) -> + (hA : @891 @893) -> + (hne : @414 @855 @419) -> @505 (fun (ro : @504) => @506 (@779 @820 @17) (@636 @683 @17)) +@910 := @878 @363 +@912 := @660 @88 @101 +@915 := @474 @912 (@482 @106) +@916 := @632 @351 +@918 := @366 @168 @12 +@933 := (hbind : @915) -> + (hF : @776) -> + (hA : @916 @918) -> + (hne : @414 @893 @419) -> @505 (fun (ro : @504) => @506 (@779 @817 @17) (@636 @675 @17)) +@936 := @910 (@875 @473 @912) +@937 := @632 @359 +@939 := @366 @12 @4 +@953 := (hF : @776) -> + (hA : @937 @939) -> + (hne : @414 @918 @419) -> @505 (fun (ro : @504) => @506 (@779 @855 @17) (@636 @720 @17)) +@956 := @936 (@875 @485 @629) +@970 := (hA : @632 @88 @368) -> + (hne : @414 @939 @419) -> @505 (fun (ro : @504) => @506 (@779 @893 @17) (@636 @343 @17)) +@971 := @956 @410 +@982 := (hne : @414 @368 @419) -> @505 (fun (ro : @504) => @506 (@779 @918 @17) (@636 @351 @17)) +@983 := @971 @432 +@989 := @506 (@779 @939 @17) (@636 @359 @17) +@991 := @505 (fun (ro : @504) => @989) +@993 := @505 (fun (__e_ro : @504) => @989) +@994 := LexLeanPreservation.Rust.RepresentableL +@995 := @5 @15 +@997 := @84 @54 @83 +@1000 := @994 (@84 @995 @997) +@1001 := (__e_hrep : @1000) -> @993 +@1002 := fun (__e_hrep : @1000) => @983 +@1003 := (s : @50) -> @1001 +@1004 := fun (s : @50) => @1002 +@1005 := (x : @3) -> @1003 +@1006 := fun (x : @3) => @1004 +\end{coremodule} +\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R9/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R9/RustStd.lean new file mode 100644 index 000000000..faf524ebc --- /dev/null +++ b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R9/RustStd.lean @@ -0,0 +1,33 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1], types := [.nat, .string], result := (.pair (.list (.pair .string .nat)) (.pair (.list .nat) (.list (.pair .nat (.list .nat))))), + body := (.build .pair (.pair (.list (.pair .string .nat)) (.pair (.list .nat) (.list (.pair .nat (.list .nat))))) [(.build .cons (.list (.pair .string .nat)) [(.build .pair (.pair .string .nat) [(.value .string (.string "a")), (.var 0)]), (.build .cons (.list (.pair .string .nat)) [(.build .pair (.pair .string .nat) [(.value .string (.string "b")), (.value .nat (.nat 2))]), (.build .nil (.list (.pair .string .nat)) [])])]), (.build .pair (.pair (.list .nat) (.list (.pair .nat (.list .nat)))) [(.build .cons (.list .nat) [(.value .nat (.nat 1)), (.build .cons (.list .nat) [(.value .nat (.nat 3)), (.build .nil (.list .nat) [])])]), (.build .cons (.list (.pair .nat (.list .nat))) [(.build .pair (.pair .nat (.list .nat)) [(.value .nat (.nat 1)), (.build .cons (.list .nat) [(.value .nat (.nat 2)), (.build .nil (.list .nat) [])])]), (.build .cons (.list (.pair .nat (.list .nat))) [(.build .pair (.pair .nat (.list .nat)) [(.value .nat (.nat 2)), (.build .cons (.list .nat) [(.value .nat (.nat 1)), (.build .nil (.list .nat) [])])]), (.build .nil (.list (.pair .nat (.list .nat))) [])])])])]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := .wild, type := .str }] (.pair (.list (.pair .str .nat)) (.pair (.list .nat) (.list (.pair .nat (.list .nat))))) (.mk [] (.pair (.construct .cons [(.pair (.lit (.str "a")) (.copy (.generated .binding 0))), (.construct .cons [(.pair (.lit (.str "b")) (.lit (.nat 2))), (.construct (.nil (.pair .str .nat)) [])])]) (.pair (.construct .cons [(.lit (.nat 1)), (.construct .cons [(.lit (.nat 3)), (.construct (.nil .nat) [])])]) (.construct .cons [(.pair (.lit (.nat 1)) (.construct .cons [(.lit (.nat 2)), (.construct (.nil .nat) [])])), (.construct .cons [(.pair (.lit (.nat 2)) (.construct .cons [(.lit (.nat 1)), (.construct (.nil .nat) [])])), (.construct (.nil (.pair .nat (.list .nat))) [])])])))))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [], (.pair (.construct .cons [(.pair (.lit (.str "a")) (.copy (.generated .binding 0))), (.construct .cons [(.pair (.lit (.str "b")) (.lit (.nat 2))), (.construct (.nil (.pair .str .nat)) [])])]) (.pair (.construct .cons [(.lit (.nat 1)), (.construct .cons [(.lit (.nat 3)), (.construct (.nil .nat) [])])]) (.construct .cons [(.pair (.lit (.nat 1)) (.construct .cons [(.lit (.nat 2)), (.construct (.nil .nat) [])])), (.construct .cons [(.pair (.lit (.nat 2)) (.construct .cons [(.lit (.nat 1)), (.construct (.nil .nat) [])])), (.construct (.nil (.pair .nat (.list .nat))) [])])]))), [(1, .string, none), (0, .nat, (some 0))], rfl, rfl, + (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.pair .string .nat), (.list (.pair .string .nat))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.pair .string .nat), (.list (.pair .string .nat))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.pair .nat (.list .nat)), (.list (.pair .nat (.list .nat)))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.pair .nat (.list .nat)), (.list (.pair .nat (.list .nat)))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) (Corr.lNil)))))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | _ + 1 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R0.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R0.lean deleted file mode 100644 index 3e8c56279..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R0.lean +++ /dev/null @@ -1,404 +0,0 @@ -import LexLeanPreservation.Core -import LexLeanPreservation.Values -import LexLeanPreservation.Primitives -import LexLeanPreservation.Fixed -import LexLeanPreservation.Keys -import LexLeanPreservation.Templates -import LexLeanPreservation.Validate -import Coverage.Boundary -import Coverage.Colls -import Coverage.Main -import Coverage.Prims -import Coverage.RecRoots -import Coverage.Recur -import Coverage.Syntax -import Coverage.Types -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -set_option linter.unusedVariables false -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0 - -def __prog : _root_.LexLeanTarget.TargetSyntax.Program := - { adts := [{ constructors := [[(.list .nat), (.list (.adt 0)), (.list (.pair .string .int)), (.option (.adt 0)), (.list (.pair .nat (.adt 0)))], [(.list (.pair .nat .int))], [(.result (.adt 0) .nat)]] }, - { constructors := [[(.list (.pair .string .int)), .string]] }], functions := [ - { parameters := [0, 1, 2, 3], types := [(.adt 0), (.adt 1), (.option (.list .nat)), (.list (.list (.pair .nat .bool)))], result := (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool)))))), - body := (.build .pair (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool)))))) [(.call 1 [(.var 0)]), (.build .pair (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))) [(.var 1), (.build .pair (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool)))) [(.var 2), (.var 3)])])]) }, - { parameters := [0], types := [(.adt 0)], result := .nat, - body := (.«match» .nat (.var 0) [(.arm (.adt 0) [1, 2, 3, 4, 5] (.prim .length [(.var 1)])), (.arm (.adt 1) [6] (.prim .length [(.var 6)])), (.arm (.adt 2) [7] (.value .nat (.nat 0)))]) }, - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.«match» .bool (.var 0) [(.arm (.adt 0) [1, 2, 3, 4, 5] (.cond (.call 3 [(.var 1)]) (.cond (.call 4 [(.var 2)]) (.cond (.call 5 [(.var 3)]) (.cond (.call 7 [(.var 4)]) (.cond (.call 8 [(.var 5)]) (.build .true .bool []) (.build .false .bool [])) (.build .false .bool [])) (.build .false .bool [])) (.build .false .bool [])) (.build .false .bool []))), (.arm (.adt 1) [6] (.cond (.call 11 [(.var 6)]) (.build .true .bool []) (.build .false .bool []))), (.arm (.adt 2) [7] (.cond (.call 12 [(.var 7)]) (.build .true .bool []) (.build .false .bool [])))]) }, - { parameters := [0], types := [(.list .nat)], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.var 1), (.var 3)]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 3 [(.var 2)]) (.build .false .bool [])))]))]) }, - { parameters := [0], types := [(.list (.adt 0))], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 2 [(.var 1)]) (.call 4 [(.var 2)]) (.build .false .bool [])))]) }, - { parameters := [0], types := [(.list (.pair .string .int))], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 6 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 5 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, - { parameters := [0], types := [.int], result := .bool, - body := (.build .true .bool []) }, - { parameters := [0], types := [(.option (.adt 0))], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .none [] (.build .true .bool [])), (.arm .some [1] (.call 2 [(.var 1)]))]) }, - { parameters := [0], types := [(.list (.pair .nat (.adt 0)))], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 9 [(.var 1)]) (.call 8 [(.var 2)]) (.build .false .bool [])))]) }, - { parameters := [0], types := [(.pair .nat (.adt 0))], result := .bool, - body := (.cond (.call 10 [(.first (.var 0))]) (.call 2 [(.second (.var 0))]) (.build .false .bool [])) }, - { parameters := [0], types := [.nat], result := .bool, - body := (.build .true .bool []) }, - { parameters := [0], types := [(.list (.pair .nat .int))], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 6 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 11 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, - { parameters := [0], types := [(.result (.adt 0) .nat)], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .ok [1] (.call 2 [(.var 1)])), (.arm .error [2] (.call 10 [(.var 2)]))]) }, - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.«match» .bool (.var 0) [(.arm (.adt 0) [1, 2] (.cond (.call 5 [(.var 1)]) (.build .true .bool []) (.build .false .bool [])))]) }, - { parameters := [0], types := [(.option (.list .nat))], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .none [] (.build .true .bool [])), (.arm .some [1] (.call 3 [(.var 1)]))]) }, - { parameters := [0], types := [(.list (.list (.pair .nat .bool)))], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 16 [(.var 1)]) (.call 15 [(.var 2)]) (.build .false .bool [])))]) }, - { parameters := [0], types := [(.list (.pair .nat .bool))], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 17 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 16 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, - { parameters := [0], types := [.bool], result := .bool, - body := (.build .true .bool []) }, - { parameters := [0, 1, 2, 3], types := [(.adt 0), (.adt 1), (.option (.list .nat)), (.list (.list (.pair .nat .bool)))], result := (.option (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))), - body := (.cond (.call 2 [(.var 0)]) (.cond (.call 13 [(.var 1)]) (.cond (.call 14 [(.var 2)]) (.cond (.call 15 [(.var 3)]) (.build .some (.option (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [(.call 0 [(.var 0), (.var 1), (.var 2), (.var 3)])]) (.build .none (.option (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])) (.build .none (.option (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])) (.build .none (.option (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])) (.build .none (.option (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])) }] } - -mutual -def __enc_0 : (Coverage.Boundary.Grove) -> _root_.LexLeanTarget.TargetSyntax.Value - | Coverage.Boundary.Grove.node __x0 __x1 __x2 __x3 __x4 => _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) __x0), (_root_.LexLeanTarget.TargetSyntax.Value.list (__items_0 __x1)), ((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.int)) __x2), (__aux_1 __x3), (_root_.LexLeanTarget.TargetSyntax.Value.list (__items_3 __x4))] - | Coverage.Boundary.Grove.leaf __x0 => _root_.LexLeanTarget.TargetSyntax.Value.adt 1 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int)) __x0)] - | Coverage.Boundary.Grove.settled __x0 => _root_.LexLeanTarget.TargetSyntax.Value.adt 2 [(__aux_4 __x0)] - -def __items_0 : (List (Coverage.Boundary.Grove)) -> List _root_.LexLeanTarget.TargetSyntax.Value - | [] => [] - | __x0 :: __x1 => (__enc_0 __x0) :: __items_0 __x1 - -def __aux_1 : (Option (Coverage.Boundary.Grove)) -> _root_.LexLeanTarget.TargetSyntax.Value - | none => _root_.LexLeanTarget.TargetSyntax.Value.none - | some __x0 => _root_.LexLeanTarget.TargetSyntax.Value.some (__enc_0 __x0) - -def __aux_2 : (Prod Nat (Coverage.Boundary.Grove)) -> _root_.LexLeanTarget.TargetSyntax.Value - | (__x0, __x1) => _root_.LexLeanTarget.TargetSyntax.Value.pair (_root_.LexLeanTarget.TargetSyntax.Value.nat __x0) (__enc_0 __x1) - -def __items_3 : (List (Prod Nat (Coverage.Boundary.Grove))) -> List _root_.LexLeanTarget.TargetSyntax.Value - | [] => [] - | __x0 :: __x1 => (__aux_2 __x0) :: __items_3 __x1 - -def __aux_4 : (Except Nat (Coverage.Boundary.Grove)) -> _root_.LexLeanTarget.TargetSyntax.Value - | Except.error __x0 => _root_.LexLeanTarget.TargetSyntax.Value.error (_root_.LexLeanTarget.TargetSyntax.Value.nat __x0) - | Except.ok __x0 => _root_.LexLeanTarget.TargetSyntax.Value.ok (__enc_0 __x0) - -end - -def __L_0 : _root_.LexLeanPreservation.ListEnc (Coverage.Boundary.Grove) := - ⟨__enc_0, __items_0, __items_0.eq_1, __items_0.eq_2⟩ - -def __O_1 : _root_.LexLeanPreservation.OptEnc (Coverage.Boundary.Grove) := - ⟨__enc_0, __aux_1, __aux_1.eq_1, __aux_1.eq_2⟩ - -def __L_3 : _root_.LexLeanPreservation.ListEnc (Prod Nat (Coverage.Boundary.Grove)) := - ⟨__aux_2, __items_3, __items_3.eq_1, __items_3.eq_2⟩ - -def __enc_1 (__s : (Coverage.Boundary.Ledger)) : _root_.LexLeanTarget.TargetSyntax.Value := - _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.int)) (__s).entries), (_root_.LexLeanTarget.TargetSyntax.Value.string (__s).owner)] - -def __fits_1 (g : (Coverage.Boundary.Grove)) : Bool := - (Bool.true && (match g with | Coverage.Boundary.Grove.node tags children labels spare paired => ((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanCollections.setSize (tags) : Nat) 18446744073709551616)) | Coverage.Boundary.Grove.leaf weights => ((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanCollections.mapSize (weights) : Nat) 18446744073709551616)) | Coverage.Boundary.Grove.settled outcome => Bool.true)) - -theorem __rel_1 (g : (Coverage.Boundary.Grove)) : _root_.LexLeanPreservation.FunRel __prog 1 [(__enc_0 g)] (_root_.LexLeanPreservation.Rel (__fits_1 g) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Coverage.Boundary.groveTags g))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV __enc_0 (fun (__a : (Coverage.Boundary.Grove)) => (match __a with | Coverage.Boundary.Grove.node tags children labels spare paired => ((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanCollections.setSize (tags) : Nat) 18446744073709551616)) | Coverage.Boundary.Grove.leaf weights => ((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanCollections.mapSize (weights) : Nat) 18446744073709551616)) | Coverage.Boundary.Grove.settled outcome => Bool.true)) (fun (__a : (Coverage.Boundary.Grove)) => _root_.LexLeanTarget.TargetSyntax.Value.nat (match __a with | Coverage.Boundary.Grove.node tags children labels spare paired => (_root_.LexLeanCollections.setSize (tags) : Nat) | Coverage.Boundary.Grove.leaf weights => (_root_.LexLeanCollections.mapSize (weights) : Nat) | Coverage.Boundary.Grove.settled outcome => (0 : Nat))) g (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (Coverage.Boundary.Grove)) _ => match __a with | Coverage.Boundary.Grove.node tags children labels spare paired => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) tags))) | Coverage.Boundary.Grove.leaf weights => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int)) weights)))) | Coverage.Boundary.Grove.settled outcome => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value))))) - -def __fits_0 (g : (Coverage.Boundary.Grove)) (ledger : (Coverage.Boundary.Ledger)) (picks : (Option (List Nat))) (spare : (List (List (Prod Nat Bool)))) : Bool := - ((((Bool.true && Bool.true) && (__fits_1 (g))) && (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) - -attribute [local irreducible] Coverage.Boundary.groveTags in -theorem __rel_0 (g : (Coverage.Boundary.Grove)) (ledger : (Coverage.Boundary.Ledger)) (picks : (Option (List Nat))) (spare : (List (List (Prod Nat Bool)))) : _root_.LexLeanPreservation.FunRel __prog 0 [(__enc_0 g), (__enc_1 ledger), ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) picks), ((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool))) spare)] (_root_.LexLeanPreservation.Rel (__fits_0 g ledger picks spare) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair __enc_1 (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool)))))) (Coverage.Boundary.groveRoot g ledger picks spare))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_1 (g))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) - -def denote (g : (Coverage.Boundary.Grove)) (ledger : (Coverage.Boundary.Ledger)) (picks : (Option (List Nat))) (spare : (List (List (Prod Nat Bool)))) : _root_.LexLeanPreservation.Obs := - _root_.cond (__fits_0 g ledger picks spare) (_root_.LexLeanPreservation.Obs.value (((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair __enc_1 (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool)))))) (Coverage.Boundary.groveRoot g ledger picks spare)))) _root_.LexLeanPreservation.Obs.overflow - -theorem root (g : (Coverage.Boundary.Grove)) (ledger : (Coverage.Boundary.Ledger)) (picks : (Option (List Nat))) (spare : (List (List (Prod Nat Bool)))) : _root_.LexLeanPreservation.RunConv __prog 0 [(__enc_0 g), (__enc_1 ledger), ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) picks), ((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool))) spare)] (_root_.LexLeanPreservation.Rel (__fits_0 g ledger picks spare) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair __enc_1 (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool)))))) (Coverage.Boundary.groveRoot g ledger picks spare))) := - _root_.LexLeanPreservation.run_of_funRel (__rel_0 g ledger picks spare) - -def __valid_3 : (List Nat) -> Bool := - _root_.LexLeanPreservation.ascSet (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) - -def __inv_3 : (List Nat) -> Prop := - _root_.LexLeanPreservation.InvSet (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) - -theorem __viff_3 : ∀ (__v : (List Nat)), __valid_3 __v = Bool.true ↔ __inv_3 __v := - _root_.LexLeanPreservation.ascSet_inv (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) - -theorem __vrel_3 : ∀ (__v : (List Nat)), _root_.LexLeanPreservation.FunRel __prog 3 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_3 __v))) := - _root_.LexLeanPreservation.tpl_validSet (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) rfl - -def __valid_6 : Int -> Bool := - fun _ => Bool.true - -def __inv_6 : Int -> Prop := - fun _ => _root_.True - -theorem __viff_6 : ∀ (__v : Int), __valid_6 __v = Bool.true ↔ __inv_6 __v := - fun __v => _root_.LexLeanPreservation.validTrue_inv __v - -theorem __vrel_6 : ∀ (__v : Int), _root_.LexLeanPreservation.FunRel __prog 6 [(_root_.LexLeanTarget.TargetSyntax.Value.int __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_6 __v))) := - _root_.LexLeanPreservation.tpl_validTrue _root_.LexLeanTarget.TargetSyntax.Value.int rfl - -def __valid_5 : (List (Prod String Int)) -> Bool := - _root_.LexLeanPreservation.ascMap (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) __valid_6 - -def __inv_5 : (List (Prod String Int)) -> Prop := - _root_.LexLeanPreservation.InvMap (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) __inv_6 - -theorem __viff_5 : ∀ (__v : (List (Prod String Int))), __valid_5 __v = Bool.true ↔ __inv_5 __v := - _root_.LexLeanPreservation.ascMap_inv (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) __valid_6 __inv_6 __viff_6 - -theorem __vrel_5 : ∀ (__v : (List (Prod String Int))), _root_.LexLeanPreservation.FunRel __prog 5 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.int)) __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_5 __v))) := - _root_.LexLeanPreservation.tpl_validMap (_root_.LexLeanPreservation.keySpec_string _root_.LexLeanCollections.compareCodes rfl (fun _ _ => rfl) (fun _ _ => rfl) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) (fun _ _ => rfl)) __valid_6 (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.int)) (fun _ => rfl) __vrel_6 rfl - -def __valid_10 : Nat -> Bool := - fun _ => Bool.true - -def __inv_10 : Nat -> Prop := - fun _ => _root_.True - -theorem __viff_10 : ∀ (__v : Nat), __valid_10 __v = Bool.true ↔ __inv_10 __v := - fun __v => _root_.LexLeanPreservation.validTrue_inv __v - -theorem __vrel_10 : ∀ (__v : Nat), _root_.LexLeanPreservation.FunRel __prog 10 [(_root_.LexLeanTarget.TargetSyntax.Value.nat __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_10 __v))) := - _root_.LexLeanPreservation.tpl_validTrue _root_.LexLeanTarget.TargetSyntax.Value.nat rfl - -def __valid_11 : (List (Prod Nat Int)) -> Bool := - _root_.LexLeanPreservation.ascMap (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) __valid_6 - -def __inv_11 : (List (Prod Nat Int)) -> Prop := - _root_.LexLeanPreservation.InvMap (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) __inv_6 - -theorem __viff_11 : ∀ (__v : (List (Prod Nat Int))), __valid_11 __v = Bool.true ↔ __inv_11 __v := - _root_.LexLeanPreservation.ascMap_inv (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) __valid_6 __inv_6 __viff_6 - -theorem __vrel_11 : ∀ (__v : (List (Prod Nat Int))), _root_.LexLeanPreservation.FunRel __prog 11 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int)) __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_11 __v))) := - _root_.LexLeanPreservation.tpl_validMap (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) __valid_6 (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int)) (fun _ => rfl) __vrel_6 rfl - -mutual -def __valid_2 : (Coverage.Boundary.Grove) -> Bool - | Coverage.Boundary.Grove.node __x0 __x1 __x2 __x3 __x4 => (if __valid_3 __x0 then (if __valid_4 __x1 then (if __valid_5 __x2 then (if __valid_7 __x3 then (if __valid_8 __x4 then Bool.true else Bool.false) else Bool.false) else Bool.false) else Bool.false) else Bool.false) - | Coverage.Boundary.Grove.leaf __x0 => (if __valid_11 __x0 then Bool.true else Bool.false) - | Coverage.Boundary.Grove.settled __x0 => (if __valid_12 __x0 then Bool.true else Bool.false) - -def __valid_4 : (List (Coverage.Boundary.Grove)) -> Bool - | [] => Bool.true - | __x0 :: __x1 => if __valid_2 __x0 then __valid_4 __x1 else Bool.false - -def __valid_7 : (Option (Coverage.Boundary.Grove)) -> Bool - | none => Bool.true - | some __x0 => __valid_2 __x0 - -def __valid_8 : (List (Prod Nat (Coverage.Boundary.Grove))) -> Bool - | [] => Bool.true - | __x0 :: __x1 => if __valid_9 __x0 then __valid_8 __x1 else Bool.false - -def __valid_9 : (Prod Nat (Coverage.Boundary.Grove)) -> Bool - | (__x0, __x1) => if __valid_10 __x0 then __valid_2 __x1 else Bool.false - -def __valid_12 : (Except Nat (Coverage.Boundary.Grove)) -> Bool - | Except.error __x0 => __valid_10 __x0 - | Except.ok __x0 => __valid_2 __x0 - -end - -mutual -def __inv_2 : (Coverage.Boundary.Grove) -> Prop - | Coverage.Boundary.Grove.node __x0 __x1 __x2 __x3 __x4 => (__inv_3 __x0 ∧ (__inv_4 __x1 ∧ (__inv_5 __x2 ∧ (__inv_7 __x3 ∧ (__inv_8 __x4 ∧ _root_.True))))) - | Coverage.Boundary.Grove.leaf __x0 => (__inv_11 __x0 ∧ _root_.True) - | Coverage.Boundary.Grove.settled __x0 => (__inv_12 __x0 ∧ _root_.True) - -def __inv_4 : (List (Coverage.Boundary.Grove)) -> Prop - | [] => _root_.True - | __x0 :: __x1 => __inv_2 __x0 ∧ __inv_4 __x1 - -def __inv_7 : (Option (Coverage.Boundary.Grove)) -> Prop - | none => _root_.True - | some __x0 => __inv_2 __x0 - -def __inv_8 : (List (Prod Nat (Coverage.Boundary.Grove))) -> Prop - | [] => _root_.True - | __x0 :: __x1 => __inv_9 __x0 ∧ __inv_8 __x1 - -def __inv_9 : (Prod Nat (Coverage.Boundary.Grove)) -> Prop - | (__x0, __x1) => __inv_10 __x0 ∧ __inv_2 __x1 - -def __inv_12 : (Except Nat (Coverage.Boundary.Grove)) -> Prop - | Except.error __x0 => __inv_10 __x0 - | Except.ok __x0 => __inv_2 __x0 - -end - -mutual -theorem __viff_2 : ∀ (__v : (Coverage.Boundary.Grove)), __valid_2 __v = Bool.true ↔ __inv_2 __v - | Coverage.Boundary.Grove.node __x0 __x1 __x2 __x3 __x4 => by rw [__valid_2.eq_def, __inv_2.eq_def]; exact (_root_.LexLeanPreservation.condAnd_iff (__viff_3 __x0) (_root_.LexLeanPreservation.condAnd_iff (__viff_4 __x1) (_root_.LexLeanPreservation.condAnd_iff (__viff_5 __x2) (_root_.LexLeanPreservation.condAnd_iff (__viff_7 __x3) (_root_.LexLeanPreservation.condAnd_iff (__viff_8 __x4) _root_.LexLeanPreservation.trueIff))))) - | Coverage.Boundary.Grove.leaf __x0 => by rw [__valid_2.eq_def, __inv_2.eq_def]; exact (_root_.LexLeanPreservation.condAnd_iff (__viff_11 __x0) _root_.LexLeanPreservation.trueIff) - | Coverage.Boundary.Grove.settled __x0 => by rw [__valid_2.eq_def, __inv_2.eq_def]; exact (_root_.LexLeanPreservation.condAnd_iff (__viff_12 __x0) _root_.LexLeanPreservation.trueIff) - -theorem __viff_4 : ∀ (__v : (List (Coverage.Boundary.Grove))), __valid_4 __v = Bool.true ↔ __inv_4 __v - | [] => by rw [__valid_4.eq_def, __inv_4.eq_def]; exact _root_.LexLeanPreservation.trueIff - | __x0 :: __x1 => by rw [__valid_4.eq_def, __inv_4.eq_def]; exact _root_.LexLeanPreservation.condAnd_iff (__viff_2 __x0) (__viff_4 __x1) - -theorem __viff_7 : ∀ (__v : (Option (Coverage.Boundary.Grove))), __valid_7 __v = Bool.true ↔ __inv_7 __v - | none => by rw [__valid_7.eq_def, __inv_7.eq_def]; exact _root_.LexLeanPreservation.trueIff - | some __x0 => by rw [__valid_7.eq_def, __inv_7.eq_def]; exact __viff_2 __x0 - -theorem __viff_8 : ∀ (__v : (List (Prod Nat (Coverage.Boundary.Grove)))), __valid_8 __v = Bool.true ↔ __inv_8 __v - | [] => by rw [__valid_8.eq_def, __inv_8.eq_def]; exact _root_.LexLeanPreservation.trueIff - | __x0 :: __x1 => by rw [__valid_8.eq_def, __inv_8.eq_def]; exact _root_.LexLeanPreservation.condAnd_iff (__viff_9 __x0) (__viff_8 __x1) - -theorem __viff_9 : ∀ (__v : (Prod Nat (Coverage.Boundary.Grove))), __valid_9 __v = Bool.true ↔ __inv_9 __v - | (__x0, __x1) => by rw [__valid_9.eq_def, __inv_9.eq_def]; exact _root_.LexLeanPreservation.condAnd_iff (__viff_10 __x0) (__viff_2 __x1) - -theorem __viff_12 : ∀ (__v : (Except Nat (Coverage.Boundary.Grove))), __valid_12 __v = Bool.true ↔ __inv_12 __v - | Except.error __x0 => by rw [__valid_12.eq_def, __inv_12.eq_def]; exact __viff_10 __x0 - | Except.ok __x0 => by rw [__valid_12.eq_def, __inv_12.eq_def]; exact __viff_2 __x0 - -end - -mutual -theorem __vrel_2 : ∀ (__v : (Coverage.Boundary.Grove)), _root_.LexLeanPreservation.FunRel __prog 2 [(__enc_0 __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_2 __v))) - | Coverage.Boundary.Grove.node __x0 __x1 __x2 __x3 __x4 => by rw [__valid_2.eq_def]; exact _root_.LexLeanPreservation.FunRel.fits_eq (_root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_match (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun _ => Bool.true) (fun __c => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __c then (if __valid_4 __x1 then (if __valid_5 __x2 then (if __valid_7 __x3 then (if __valid_8 __x4 then Bool.true else Bool.false) else Bool.false) else Bool.false) else Bool.false) else Bool.false)) (__valid_3 __x0) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_3 __x0)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun _ => Bool.true) (fun __c => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __c then (if __valid_5 __x2 then (if __valid_7 __x3 then (if __valid_8 __x4 then Bool.true else Bool.false) else Bool.false) else Bool.false) else Bool.false)) (__valid_4 __x1) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_4 __x1)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun _ => Bool.true) (fun __c => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __c then (if __valid_7 __x3 then (if __valid_8 __x4 then Bool.true else Bool.false) else Bool.false) else Bool.false)) (__valid_5 __x2) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_5 __x2)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun _ => Bool.true) (fun __c => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __c then (if __valid_8 __x4 then Bool.true else Bool.false) else Bool.false)) (__valid_7 __x3) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_7 __x3)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun _ => Bool.true) (fun __c => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __c then Bool.true else Bool.false)) (__valid_8 __x4) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_8 __x4)) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))))) rfl - | Coverage.Boundary.Grove.leaf __x0 => by rw [__valid_2.eq_def]; exact _root_.LexLeanPreservation.FunRel.fits_eq (_root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_match (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun _ => Bool.true) (fun __c => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __c then Bool.true else Bool.false)) (__valid_11 __x0) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_11 __x0)) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))))) rfl - | Coverage.Boundary.Grove.settled __x0 => by rw [__valid_2.eq_def]; exact _root_.LexLeanPreservation.FunRel.fits_eq (_root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_match (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun _ => Bool.true) (fun __c => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __c then Bool.true else Bool.false)) (__valid_12 __x0) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_12 __x0)) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))))))) rfl - -theorem __vrel_4 : ∀ (__v : (List (Coverage.Boundary.Grove))), _root_.LexLeanPreservation.FunRel __prog 4 [((_root_.LexLeanPreservation.ListEnc.enc __L_0) __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_4 __v))) - | [] => by rw [__valid_4.eq_def]; exact _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_match (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true))) - | __x0 :: __x1 => by rw [__valid_4.eq_def]; exact _root_.LexLeanPreservation.FunRel.fits_eq (_root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_match (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun _ => Bool.true) (fun __c => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __c then __valid_4 __x1 else Bool.false)) (__valid_2 __x0) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_2 __x0)) (fun _ => _root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_4 __x1)) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))))) rfl - -theorem __vrel_7 : ∀ (__v : (Option (Coverage.Boundary.Grove))), _root_.LexLeanPreservation.FunRel __prog 7 [((_root_.LexLeanPreservation.OptEnc.enc __O_1) __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_7 __v))) - | none => by rw [__valid_7.eq_def]; exact _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_match (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true))) - | some __x0 => by rw [__valid_7.eq_def]; exact _root_.LexLeanPreservation.FunRel.fits_eq (_root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_match (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_2 __x0)))))) rfl - -theorem __vrel_8 : ∀ (__v : (List (Prod Nat (Coverage.Boundary.Grove)))), _root_.LexLeanPreservation.FunRel __prog 8 [((_root_.LexLeanPreservation.ListEnc.enc __L_3) __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_8 __v))) - | [] => by rw [__valid_8.eq_def]; exact _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_match (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true))) - | __x0 :: __x1 => by rw [__valid_8.eq_def]; exact _root_.LexLeanPreservation.FunRel.fits_eq (_root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_match (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun _ => Bool.true) (fun __c => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __c then __valid_8 __x1 else Bool.false)) (__valid_9 __x0) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_9 __x0)) (fun _ => _root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_8 __x1)) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))))) rfl - -theorem __vrel_9 : ∀ (__v : (Prod Nat (Coverage.Boundary.Grove))), _root_.LexLeanPreservation.FunRel __prog 9 [(__aux_2 __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_9 __v))) - | (__x0, __x1) => by rw [__valid_9.eq_def]; exact _root_.LexLeanPreservation.FunRel.fits_eq (_root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun _ => Bool.true) (fun __c => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __c then __valid_2 __x1 else Bool.false)) (__valid_10 __x0) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil) (__vrel_10 __x0)) (fun _ => _root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil) (__vrel_2 __x1)) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) rfl - -theorem __vrel_12 : ∀ (__v : (Except Nat (Coverage.Boundary.Grove))), _root_.LexLeanPreservation.FunRel __prog 12 [(__aux_4 __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_12 __v))) - | Except.error __x0 => by rw [__valid_12.eq_def]; exact _root_.LexLeanPreservation.FunRel.fits_eq (_root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_match (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_10 __x0)))))) rfl - | Except.ok __x0 => by rw [__valid_12.eq_def]; exact _root_.LexLeanPreservation.FunRel.fits_eq (_root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_match (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_2 __x0))))) rfl - -end - -theorem __vinv_4 : ∀ (__v : (List (Coverage.Boundary.Grove))), __inv_4 __v ↔ _root_.LexLeanPreservation.InvList __inv_2 __v := - _root_.LexLeanPreservation.invList_eqs __inv_2 __inv_4 (by rw [__inv_4.eq_def]) (fun _ _ => by rw [__inv_4.eq_def]) - -theorem __vinv_7 : ∀ (__v : (Option (Coverage.Boundary.Grove))), __inv_7 __v ↔ _root_.LexLeanPreservation.InvOption __inv_2 __v - | none => by rw [__inv_7.eq_def]; exact Iff.rfl - | some _ => by rw [__inv_7.eq_def]; exact Iff.rfl - -theorem __vinv_8 : ∀ (__v : (List (Prod Nat (Coverage.Boundary.Grove)))), __inv_8 __v ↔ _root_.LexLeanPreservation.InvList __inv_9 __v := - _root_.LexLeanPreservation.invList_eqs __inv_9 __inv_8 (by rw [__inv_8.eq_def]) (fun _ _ => by rw [__inv_8.eq_def]) - -theorem __vinv_9 : ∀ (__v : (Prod Nat (Coverage.Boundary.Grove))), __inv_9 __v ↔ _root_.LexLeanPreservation.InvPair __inv_10 __inv_2 __v - | (_, _) => by rw [__inv_9.eq_def]; exact Iff.rfl - -theorem __vinv_12 : ∀ (__v : (Except Nat (Coverage.Boundary.Grove))), __inv_12 __v ↔ _root_.LexLeanPreservation.InvExcept __inv_10 __inv_2 __v - | Except.error _ => by rw [__inv_12.eq_def]; exact Iff.rfl - | Except.ok _ => by rw [__inv_12.eq_def]; exact Iff.rfl - -def __valid_13 (__s : (Coverage.Boundary.Ledger)) : Bool := - (if __valid_5 (__s).entries then Bool.true else Bool.false) - -def __inv_13 (__s : (Coverage.Boundary.Ledger)) : Prop := - (__inv_5 (__s).entries ∧ _root_.True) - -theorem __viff_13 : ∀ (__s : (Coverage.Boundary.Ledger)), __valid_13 __s = Bool.true ↔ __inv_13 __s := - fun __s => (_root_.LexLeanPreservation.condAnd_iff (__viff_5 (__s).entries) _root_.LexLeanPreservation.trueIff) - -theorem __vrel_13 : ∀ (__s : (Coverage.Boundary.Ledger)), _root_.LexLeanPreservation.FunRel __prog 13 [(__enc_1 __s)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_13 __s))) := - fun __s => _root_.LexLeanPreservation.FunRel.fits_eq (_root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_match (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun _ => Bool.true) (fun __c => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __c then Bool.true else Bool.false)) (__valid_5 (__s).entries) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_5 (__s).entries)) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))))) rfl - -def __valid_14 : (Option (List Nat)) -> Bool := - _root_.LexLeanPreservation.validOption __valid_3 - -def __inv_14 : (Option (List Nat)) -> Prop := - _root_.LexLeanPreservation.InvOption __inv_3 - -theorem __viff_14 : ∀ (__v : (Option (List Nat))), __valid_14 __v = Bool.true ↔ __inv_14 __v := - _root_.LexLeanPreservation.validOption_inv __valid_3 __inv_3 __viff_3 - -theorem __vrel_14 : ∀ (__v : (Option (List Nat))), _root_.LexLeanPreservation.FunRel __prog 14 [((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_14 __v))) := - _root_.LexLeanPreservation.tpl_validOption __valid_3 __vrel_3 rfl - -def __valid_17 : Bool -> Bool := - fun _ => Bool.true - -def __inv_17 : Bool -> Prop := - fun _ => _root_.True - -theorem __viff_17 : ∀ (__v : Bool), __valid_17 __v = Bool.true ↔ __inv_17 __v := - fun __v => _root_.LexLeanPreservation.validTrue_inv __v - -theorem __vrel_17 : ∀ (__v : Bool), _root_.LexLeanPreservation.FunRel __prog 17 [(_root_.LexLeanTarget.TargetSyntax.Value.bool __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_17 __v))) := - _root_.LexLeanPreservation.tpl_validTrue _root_.LexLeanTarget.TargetSyntax.Value.bool rfl - -def __valid_16 : (List (Prod Nat Bool)) -> Bool := - _root_.LexLeanPreservation.ascMap (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) __valid_17 - -def __inv_16 : (List (Prod Nat Bool)) -> Prop := - _root_.LexLeanPreservation.InvMap (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) __inv_17 - -theorem __viff_16 : ∀ (__v : (List (Prod Nat Bool))), __valid_16 __v = Bool.true ↔ __inv_16 __v := - _root_.LexLeanPreservation.ascMap_inv (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) __valid_17 __inv_17 __viff_17 - -theorem __vrel_16 : ∀ (__v : (List (Prod Nat Bool))), _root_.LexLeanPreservation.FunRel __prog 16 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool)) __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_16 __v))) := - _root_.LexLeanPreservation.tpl_validMap (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) __valid_17 (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool)) (fun _ => rfl) __vrel_17 rfl - -def __valid_15 : (List (List (Prod Nat Bool))) -> Bool := - _root_.LexLeanPreservation.validList __valid_16 - -def __inv_15 : (List (List (Prod Nat Bool))) -> Prop := - _root_.LexLeanPreservation.InvList __inv_16 - -theorem __viff_15 : ∀ (__v : (List (List (Prod Nat Bool)))), __valid_15 __v = Bool.true ↔ __inv_15 __v := - _root_.LexLeanPreservation.validList_inv __valid_16 __inv_16 __viff_16 - -theorem __vrel_15 : ∀ (__v : (List (List (Prod Nat Bool)))), _root_.LexLeanPreservation.FunRel __prog 15 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool))) __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_15 __v))) := - _root_.LexLeanPreservation.tpl_validList __valid_16 (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool))) (fun _ => rfl) __vrel_16 rfl - -def entryFits (g : (Coverage.Boundary.Grove)) (ledger : (Coverage.Boundary.Ledger)) (picks : (Option (List Nat))) (spare : (List (List (Prod Nat Bool)))) : Bool := - (if __valid_2 g then (if __valid_13 ledger then (if __valid_14 picks then (if __valid_15 spare then __fits_0 g ledger picks spare else Bool.true) else Bool.true) else Bool.true) else Bool.true) - -def entryValue (g : (Coverage.Boundary.Grove)) (ledger : (Coverage.Boundary.Ledger)) (picks : (Option (List Nat))) (spare : (List (List (Prod Nat Bool)))) : _root_.LexLeanTarget.TargetSyntax.Value := - (if __valid_2 g then (if __valid_13 ledger then (if __valid_14 picks then (if __valid_15 spare then (_root_.LexLeanTarget.TargetSyntax.Value.some ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair __enc_1 (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool)))))) (Coverage.Boundary.groveRoot g ledger picks spare))) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) - -/-- The entry's observation. -/ -def denoteEntry (g : (Coverage.Boundary.Grove)) (ledger : (Coverage.Boundary.Ledger)) (picks : (Option (List Nat))) (spare : (List (List (Prod Nat Bool)))) : _root_.LexLeanPreservation.Obs := - _root_.cond (_root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.entryFits g ledger picks spare) (_root_.LexLeanPreservation.Obs.value (_root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.entryValue g ledger picks spare)) _root_.LexLeanPreservation.Obs.overflow - -/-- §17.12's invariants of the validated parameters. -/ -def accepts (g : (Coverage.Boundary.Grove)) (ledger : (Coverage.Boundary.Ledger)) (picks : (Option (List Nat))) (spare : (List (List (Prod Nat Bool)))) : Prop := - (__inv_2 g ∧ (__inv_13 ledger ∧ (__inv_14 picks ∧ (__inv_15 spare ∧ _root_.True)))) - -theorem entry (g : (Coverage.Boundary.Grove)) (ledger : (Coverage.Boundary.Ledger)) (picks : (Option (List Nat))) (spare : (List (List (Prod Nat Bool)))) : _root_.LexLeanPreservation.RunConv __prog 18 [(__enc_0 g), (__enc_1 ledger), ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) picks), ((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool))) spare)] (_root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.denoteEntry g ledger picks spare) := - _root_.LexLeanPreservation.run_of_funRel (_root_.LexLeanPreservation.FunRel.fits_eq (_root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun __c => if __c then (if __valid_13 ledger then (if __valid_14 picks then (if __valid_15 spare then __fits_0 g ledger picks spare else Bool.true) else Bool.true) else Bool.true) else Bool.true) (fun __c => if __c then (if __valid_13 ledger then (if __valid_14 picks then (if __valid_15 spare then (_root_.LexLeanTarget.TargetSyntax.Value.some ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair __enc_1 (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool)))))) (Coverage.Boundary.groveRoot g ledger picks spare))) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) (__valid_2 g) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_2 g)) (fun _ => _root_.LexLeanPreservation.Conv.fits_eq (_root_.LexLeanPreservation.conv_cond (fun __c => if __c then (if __valid_14 picks then (if __valid_15 spare then __fits_0 g ledger picks spare else Bool.true) else Bool.true) else Bool.true) (fun __c => if __c then (if __valid_14 picks then (if __valid_15 spare then (_root_.LexLeanTarget.TargetSyntax.Value.some ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair __enc_1 (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool)))))) (Coverage.Boundary.groveRoot g ledger picks spare))) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) (__valid_13 ledger) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_13 ledger)) (fun _ => _root_.LexLeanPreservation.Conv.fits_eq (_root_.LexLeanPreservation.conv_cond (fun __c => if __c then (if __valid_15 spare then __fits_0 g ledger picks spare else Bool.true) else Bool.true) (fun __c => if __c then (if __valid_15 spare then (_root_.LexLeanTarget.TargetSyntax.Value.some ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair __enc_1 (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool)))))) (Coverage.Boundary.groveRoot g ledger picks spare))) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) (__valid_14 picks) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_14 picks)) (fun _ => _root_.LexLeanPreservation.Conv.fits_eq (_root_.LexLeanPreservation.conv_cond (fun __c => if __c then __fits_0 g ledger picks spare else Bool.true) (fun __c => if __c then (_root_.LexLeanTarget.TargetSyntax.Value.some ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair __enc_1 (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool)))))) (Coverage.Boundary.groveRoot g ledger picks spare))) else _root_.LexLeanTarget.TargetSyntax.Value.none) (__valid_15 spare) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_15 spare)) (fun _ => _root_.LexLeanPreservation.Conv.fits_eq (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)))) (__rel_0 g ledger picks spare)) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some) (by simp)) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) (by simp)) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) (by simp)) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) (by simp)) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (by simp [_root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.entryFits])) - -theorem entry_accepts (g : (Coverage.Boundary.Grove)) (ledger : (Coverage.Boundary.Ledger)) (picks : (Option (List Nat))) (spare : (List (List (Prod Nat Bool)))) (__h : _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.accepts g ledger picks spare) : _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.denoteEntry g ledger picks spare = _root_.LexLeanPreservation.someObs (_root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.denote g ledger picks spare) := by - unfold _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.accepts at __h - unfold _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.denoteEntry _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.entryFits _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.entryValue _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.denote - simp only [_root_.if_true, (__viff_2 g).mpr __h.1, (__viff_13 ledger).mpr __h.2.1, (__viff_14 picks).mpr __h.2.2.1, (__viff_15 spare).mpr __h.2.2.2.1] - cases __fits_0 g ledger picks spare <;> rfl - -theorem entry_refuses (g : (Coverage.Boundary.Grove)) (ledger : (Coverage.Boundary.Ledger)) (picks : (Option (List Nat))) (spare : (List (List (Prod Nat Bool)))) (__h : ¬ _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.accepts g ledger picks spare) : _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.denoteEntry g ledger picks spare = _root_.LexLeanPreservation.Obs.value _root_.LexLeanTarget.TargetSyntax.Value.none := by - unfold _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.accepts at __h - unfold _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.denoteEntry _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.entryFits _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.entryValue - cases __c0 : __valid_2 g - · simp - · cases __c1 : __valid_13 ledger - · simp - · cases __c2 : __valid_14 picks - · simp - · cases __c3 : __valid_15 spare - · simp - · exact _root_.absurd ⟨(__viff_2 g).mp __c0, (__viff_13 ledger).mp __c1, (__viff_14 picks).mp __c2, (__viff_15 spare).mp __c3, _root_.trivial⟩ __h - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0 diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R0/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R0/Compose/RustStd.lex.tex deleted file mode 100644 index 3a5abf3af..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R0/Compose/RustStd.lex.tex +++ /dev/null @@ -1,1883 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.Compose.RustStd.__wt_0 : @2059 := @2058 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.Compose.RustStd.__wt_0], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.Compose.RustStd.__wtItems_0 : @2081 := @2080 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.Compose.RustStd.__wtItems_0], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.Compose.RustStd.__wtAux_1 : @2103 := @2102 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.Compose.RustStd.__wtAux_1], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.Compose.RustStd.__wtItems_3 : @2125 := @2124 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.Compose.RustStd.__wtItems_3], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.Compose.RustStd.__wtAux_4 : @2147 := @2146 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.Compose.RustStd.__wtAux_4], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.Compose.RustStd.__wtAux_2 : @2169 := @2168 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.Compose.RustStd.__wtAux_2], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.Compose.RustStd.__wt_1 : @2176 := @2362 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.Compose.RustStd.__wt_1], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.Compose.RustStd.root : @3729 := @3730 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.RustStd.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.RustStd.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.RustStd.flags -@3 := Coverage.Boundary.Grove -@4 := #0 -@5 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.__enc_0 -@6 := @5 @4 -@7 := LexLeanPreservation.Rust.WT -@8 := LexLeanTarget.TargetSyntax.Ty.adt -@9 := 0 -@10 := @8 @9 -@11 := @7 @0 -@12 := @11 @1 -@13 := @12 @2 -@15 := @13 @6 @10 -@16 := fun (__v : @3) => @15 -@17 := List.{0} -@18 := @17 @3 -@19 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.__items_0 -@20 := @19 @4 -@21 := LexLeanPreservation.Rust.WTAll -@22 := @21 @0 -@23 := @22 @1 -@24 := @23 @2 -@26 := @24 @20 @10 -@27 := fun (__v : @18) => @26 -@28 := Option.{0} -@29 := @28 @3 -@30 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.__aux_1 -@31 := @30 @4 -@32 := LexLeanTarget.TargetSyntax.Ty.option -@33 := @32 @10 -@35 := @13 @31 @33 -@36 := fun (__v : @29) => @35 -@37 := Nat -@38 := Prod.{0, 0} -@39 := @38 @37 -@40 := @39 @3 -@41 := @17 @40 -@42 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.__items_3 -@43 := @42 @4 -@44 := LexLeanTarget.TargetSyntax.Ty.nat -@45 := LexLeanTarget.TargetSyntax.Ty.pair -@46 := @45 @44 -@47 := @46 @10 -@49 := @24 @43 @47 -@50 := fun (__v : @41) => @49 -@53 := Except.{0, 0} @37 @3 -@54 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.__aux_4 -@55 := @54 @4 -@56 := LexLeanTarget.TargetSyntax.Ty.result -@57 := @56 @10 -@58 := @57 @44 -@60 := @13 @55 @58 -@61 := fun (__v : @53) => @60 -@62 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.__aux_2 -@65 := @13 (@62 @4) @47 -@66 := fun (__v : @40) => @65 -@67 := #7 -@68 := #6 -@69 := #2 -@70 := #5 -@71 := #4 -@72 := #1 -@73 := #3 -@74 := LexLeanTarget.TargetSyntax.Value.nat -@75 := LexLeanPreservation.encList -@76 := @75 @37 -@77 := @76 @74 -@78 := @77 @67 -@79 := LexLeanTarget.TargetSyntax.Ty.list -@80 := @79 @44 -@81 := LexLeanTarget.TargetSyntax.Program -@82 := LexLeanPreservation.Rust.RCrate -@83 := LexLeanPreservation.Rust.Flags -@86 := @7 @73 @69 @72 -@87 := @74 @4 -@93 := {p : @81} -> {c : @82} -> {A : @83} -> (n : @37) -> @86 @87 @44 -@95 := LexLeanPreservation.Rust.wt_nat @0 -@97 := @11 @69 @72 -@102 := {c : @82} -> {A : @83} -> (n : @37) -> @97 @87 @44 -@103 := @95 @1 -@104 := @12 @72 -@108 := {A : @83} -> (n : @37) -> @104 @87 @44 -@109 := @103 @2 -@110 := @13 @87 -@111 := @110 @44 -@112 := (n : @37) -> @111 -@113 := @109 @4 -@114 := fun (__x : @37) => @113 -@115 := Sort 1 -@116 := LexLeanTarget.TargetSyntax.Value -@117 := (a._@._internal._hyg.#0 : @4) -> @116 -@118 := LexLeanTarget.TargetSyntax.Ty -@121 := @7 @68 @70 @71 -@122 := @69 @4 -@125 := (x : @69) -> @121 @122 @72 -@126 := @17 @73 -@129 := @7 @67 @68 @70 -@132 := @75 @71 @73 @4 -@133 := @129 @132 -@134 := @79 @69 -@143 := {p : @81} -> - {c : @82} -> - {A : @83} -> {α : @115} -> {e : @117} -> {t : @118} -> (h : @125) -> (xs : @126) -> @133 @134 -@145 := LexLeanPreservation.Rust.wt_encList @0 -@147 := @11 @70 @71 -@150 := (x : @69) -> @147 @122 @72 -@152 := @11 @68 @70 -@161 := {c : @82} -> - {A : @83} -> {α : @115} -> {e : @117} -> {t : @118} -> (h : @150) -> (xs : @126) -> @152 @132 @134 -@162 := @145 @1 -@163 := @12 @71 -@166 := (x : @69) -> @163 @122 @72 -@167 := @12 @70 -@175 := {A : @83} -> - {α : @115} -> {e : @117} -> {t : @118} -> (h : @166) -> (xs : @126) -> @167 @132 @134 -@176 := @162 @2 -@178 := @13 @122 @72 -@179 := (x : @69) -> @178 -@186 := {α : @115} -> {e : @117} -> {t : @118} -> (h : @179) -> (xs : @126) -> @13 @132 @134 -@187 := @176 @37 -@188 := (a._@._internal._hyg.#0 : @37) -> @116 -@189 := (x : @37) -> @178 -@190 := @17 @37 -@198 := {e : @188} -> {t : @118} -> (h : @189) -> (xs : @190) -> @13 (@76 @73 @4) @134 -@199 := @187 @74 -@201 := (x : @37) -> @110 @72 -@203 := @13 (@77 @4) -@207 := {t : @118} -> (h : @201) -> (xs : @190) -> @203 @134 -@208 := @199 @44 -@209 := (x : @37) -> @111 -@210 := @203 @80 -@212 := (h : @209) -> (xs : @190) -> @210 -@213 := @208 @114 -@214 := @213 @67 -@216 := @13 @78 @80 -@217 := LexLeanPreservation.ListEnc.enc -@218 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.__L_0 -@220 := @217 @3 @218 -@221 := @220 @68 -@222 := @79 @10 -@223 := @19 @68 -@224 := @17 @116 -@229 := @21 @71 @73 @69 @72 @4 -@232 := @7 @70 @71 @73 -@233 := LexLeanTarget.TargetSyntax.Value.list -@234 := @233 @69 -@235 := @232 @234 -@236 := @79 @72 -@243 := {p : @81} -> {c : @82} -> {A : @83} -> {vs : @224} -> {t : @118} -> (h : @229) -> @235 @236 -@245 := LexLeanPreservation.Rust.wt_list @0 -@249 := @22 @73 @69 @72 @4 -@251 := @11 @71 @73 -@258 := {c : @82} -> {A : @83} -> {vs : @224} -> {t : @118} -> (h : @249) -> @251 @234 @236 -@259 := @245 @1 -@262 := @23 @69 @72 @4 -@263 := @12 @73 -@269 := {A : @83} -> {vs : @224} -> {t : @118} -> (h : @262) -> @263 @234 @236 -@270 := @259 @2 -@277 := {vs : @224} -> {t : @118} -> (h : @24 @72 @4) -> @13 @234 @236 -@278 := @270 @223 -@279 := @19 @67 -@281 := @24 @279 @4 -@282 := #8 -@288 := {t : @118} -> (h : @281) -> @13 (@233 (@19 @282)) @236 -@289 := @278 @10 -@295 := (h : @24 @223 @10) -> @13 (@233 @279) @222 -@296 := @289 @69 -@299 := @13 (@233 @223) @222 -@300 := String -@301 := Int -@302 := @38 @300 -@303 := @302 @301 -@304 := LexLeanTarget.TargetSyntax.Value.string -@305 := LexLeanTarget.TargetSyntax.Value.int -@306 := LexLeanPreservation.encPair -@307 := @306 @300 -@308 := @307 @301 -@309 := @308 @304 -@310 := @309 @305 -@311 := @75 @303 -@312 := @311 @310 -@313 := @312 @70 -@314 := LexLeanTarget.TargetSyntax.Ty.string -@315 := LexLeanTarget.TargetSyntax.Ty.int -@316 := @45 @314 -@317 := @316 @315 -@318 := @79 @317 -@319 := @304 @4 -@325 := {p : @81} -> {c : @82} -> {A : @83} -> (s : @300) -> @86 @319 @314 -@327 := LexLeanPreservation.Rust.wt_string @0 -@332 := {c : @82} -> {A : @83} -> (s : @300) -> @97 @319 @314 -@333 := @327 @1 -@337 := {A : @83} -> (s : @300) -> @104 @319 @314 -@338 := @333 @2 -@339 := @13 @319 -@340 := @339 @314 -@341 := (s : @300) -> @340 -@343 := fun (__x : @300) => @338 @4 -@344 := @305 @4 -@350 := {p : @81} -> {c : @82} -> {A : @83} -> (n : @301) -> @86 @344 @315 -@352 := LexLeanPreservation.Rust.wt_int @0 -@357 := {c : @82} -> {A : @83} -> (n : @301) -> @97 @344 @315 -@358 := @352 @1 -@362 := {A : @83} -> (n : @301) -> @104 @344 @315 -@363 := @358 @2 -@364 := @13 @344 -@365 := @364 @315 -@366 := (n : @301) -> @365 -@368 := fun (__x : @301) => @363 @4 -@369 := (a._@._internal._hyg.#0 : @72) -> @116 -@370 := #9 -@373 := @7 @370 @282 @67 -@374 := @71 @4 -@377 := (x : @70) -> @373 @374 @69 -@378 := #10 -@384 := (x : @70) -> @7 @378 @370 @282 @374 @69 -@386 := @38 @67 @68 -@387 := #11 -@390 := @7 @387 @378 @370 -@395 := @306 @282 @67 @68 @70 @4 -@396 := @390 @395 -@398 := @45 @71 @73 -@411 := {p : @81} -> - {c : @82} -> - {A : @83} -> - {α : @115} -> - {β : @115} -> - {ea : @369} -> - {eb : @369} -> {s : @118} -> {t : @118} -> (ha : @377) -> (hb : @384) -> (x : @386) -> @396 @398 -@413 := LexLeanPreservation.Rust.wt_encPair @0 -@438 := {c : @82} -> - {A : @83} -> - {α : @115} -> - {β : @115} -> - {ea : @369} -> - {eb : @369} -> - {s : @118} -> - {t : @118} -> - (ha : (x : @70) -> @11 @282 @67 @374 @69) -> - (hb : (x : @70) -> @11 @370 @282 @374 @69) -> (x : @386) -> @11 @378 @370 @395 @398 -@439 := @413 @1 -@460 := {A : @83} -> - {α : @115} -> - {β : @115} -> - {ea : @369} -> - {eb : @369} -> - {s : @118} -> - {t : @118} -> - (ha : (x : @70) -> @12 @67 @374 @69) -> - (hb : (x : @70) -> @12 @282 @374 @69) -> (x : @386) -> @12 @370 @395 @398 -@461 := @439 @2 -@463 := @13 @374 @69 -@464 := (x : @70) -> @463 -@475 := {α : @115} -> - {β : @115} -> - {ea : @369} -> - {eb : @369} -> - {s : @118} -> {t : @118} -> (ha : @464) -> (hb : @464) -> (x : @386) -> @13 @395 @398 -@476 := @461 @300 -@477 := (a._@._internal._hyg.#0 : @300) -> @116 -@478 := (x : @300) -> @463 -@493 := {β : @115} -> - {ea : @477} -> - {eb : @369} -> - {s : @118} -> - {t : @118} -> (ha : @478) -> (hb : @464) -> (x : @302 @68) -> @13 (@307 @67 @68 @70 @4) @398 -@494 := @476 @301 -@495 := (a._@._internal._hyg.#0 : @301) -> @116 -@496 := (x : @301) -> @463 -@508 := {ea : @477} -> - {eb : @495} -> - {s : @118} -> {t : @118} -> (ha : @478) -> (hb : @496) -> (x : @303) -> @13 (@308 @68 @70 @4) @398 -@509 := @494 @304 -@511 := (x : @300) -> @339 @69 -@521 := {eb : @495} -> - {s : @118} -> {t : @118} -> (ha : @511) -> (hb : @496) -> (x : @303) -> @13 (@309 @70 @4) @398 -@522 := @509 @305 -@524 := (x : @301) -> @364 @69 -@526 := @13 (@310 @4) -@532 := {s : @118} -> {t : @118} -> (ha : @511) -> (hb : @524) -> (x : @303) -> @526 @398 -@533 := @522 @314 -@534 := (x : @300) -> @340 -@540 := {t : @118} -> (ha : @534) -> (hb : @524) -> (x : @303) -> @526 (@316 @73) -@541 := @533 @315 -@542 := (x : @301) -> @365 -@544 := (x : @303) -> @526 @317 -@546 := (ha : @534) -> (hb : @542) -> @544 -@550 := fun (__x : @303) => @541 @343 @368 @4 -@551 := @176 @303 -@552 := (a._@._internal._hyg.#0 : @303) -> @116 -@553 := (x : @303) -> @178 -@554 := @17 @303 -@562 := {e : @552} -> {t : @118} -> (h : @553) -> (xs : @554) -> @13 (@311 @73 @4) @134 -@563 := @551 @310 -@565 := (x : @303) -> @526 @72 -@567 := @13 (@312 @4) -@571 := {t : @118} -> (h : @565) -> (xs : @554) -> @567 @134 -@572 := @563 @317 -@575 := (h : @544) -> (xs : @554) -> @567 @318 -@576 := @572 @550 -@577 := @576 @70 -@579 := @13 @313 @318 -@580 := LexLeanPreservation.OptEnc.enc -@581 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.__O_1 -@583 := @580 @3 @581 -@584 := @583 @71 -@585 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.__L_3 -@587 := @217 @40 @585 -@588 := @587 @73 -@589 := @79 @47 -@590 := @42 @73 -@591 := @270 @590 -@592 := @42 @71 -@593 := @24 @592 -@594 := @593 @4 -@595 := @42 @70 -@600 := {t : @118} -> (h : @594) -> @13 (@233 @595) @236 -@601 := @591 @47 -@603 := @24 @590 @47 -@607 := (h : @603) -> @13 (@233 @592) @589 -@608 := @601 @4 -@611 := @13 (@233 @590) @589 -@612 := List.nil.{0} -@613 := List.cons.{0} -@614 := @612 @116 -@615 := @613 @116 -@617 := @615 @588 @614 -@619 := @615 @584 @617 -@621 := @615 @313 @619 -@623 := @615 @221 @621 -@625 := @615 @78 @623 -@626 := @612 @118 -@627 := @613 @118 -@628 := @627 @589 -@629 := @628 @626 -@630 := @627 @33 -@631 := @630 @629 -@632 := @627 @318 -@633 := @632 @631 -@634 := @627 @222 -@635 := @634 @633 -@636 := @627 @80 -@637 := @636 @635 -@638 := LexLeanPreservation.Rust.WTL -@646 := {p : @81} -> {c : @82} -> {A : @83} -> @638 @69 @72 @4 @614 @626 -@648 := LexLeanPreservation.Rust.wtl_nil @0 -@649 := @638 @0 -@655 := {c : @82} -> {A : @83} -> @649 @72 @4 @614 @626 -@656 := @648 @1 -@657 := @649 @1 -@661 := {A : @83} -> @657 @4 @614 @626 -@662 := @656 @2 -@663 := @657 @2 -@664 := @663 @614 -@665 := @664 @626 -@666 := @17 @118 -@667 := @121 @73 -@668 := @667 @69 -@673 := @638 @67 @68 @70 @69 @72 -@676 := @638 @282 @67 @68 -@678 := @615 @70 @73 -@679 := @676 @678 -@681 := @627 @71 @69 -@691 := {p : @81} -> - {c : @82} -> - {A : @83} -> - {v : @116} -> {t : @118} -> {vs : @224} -> {ts : @666} -> (h : @668) -> (hs : @673) -> @679 @681 -@693 := LexLeanPreservation.Rust.wtl_cons @0 -@694 := @147 @73 -@695 := @694 @69 -@699 := @649 @68 @70 @69 @72 -@711 := {c : @82} -> - {A : @83} -> - {v : @116} -> - {t : @118} -> {vs : @224} -> {ts : @666} -> (h : @695) -> (hs : @699) -> @649 @67 @68 @678 @681 -@712 := @693 @1 -@713 := @163 @73 -@714 := @713 @69 -@717 := @657 @70 @69 @72 -@727 := {A : @83} -> - {v : @116} -> - {t : @118} -> {vs : @224} -> {ts : @666} -> (h : @714) -> (hs : @717) -> @657 @68 @678 @681 -@728 := @712 @2 -@729 := @13 @73 -@730 := @729 @69 -@732 := @663 @69 @72 -@740 := {v : @116} -> - {t : @118} -> {vs : @224} -> {ts : @666} -> (h : @730) -> (hs : @732) -> @663 @678 @681 -@741 := @728 @588 -@742 := @587 @68 -@754 := {t : @118} -> - {vs : @224} -> - {ts : @666} -> (h : @13 @742 @69) -> (hs : @732) -> @663 (@615 (@587 @282) @73) @681 -@755 := @741 @589 -@756 := @587 @70 -@758 := @13 @756 @589 -@762 := @663 (@615 (@587 @67) @73) -@763 := @628 @69 -@768 := {vs : @224} -> {ts : @666} -> (h : @758) -> (hs : @732) -> @762 @763 -@769 := @755 @614 -@770 := @587 @71 -@772 := @13 @770 @589 -@773 := @664 @72 -@775 := @615 @742 @614 -@780 := {ts : @666} -> (h : @772) -> (hs : @773) -> @663 @775 @763 -@781 := @769 @626 -@783 := @13 @588 @589 -@785 := @615 @756 @614 -@786 := @663 @785 -@789 := (h : @783) -> (hs : @665) -> @786 @629 -@790 := @781 @608 -@792 := @615 @770 @614 -@794 := @663 @792 @629 -@795 := (hs : @665) -> @794 -@796 := @790 @662 -@798 := @663 @617 @629 -@799 := @728 @584 -@800 := @583 @67 -@812 := {t : @118} -> - {vs : @224} -> - {ts : @666} -> (h : @13 @800 @69) -> (hs : @732) -> @663 (@615 (@583 @370) @73) @681 -@813 := @799 @33 -@814 := @583 @68 -@816 := @13 @814 @33 -@820 := @663 (@615 (@583 @282) @73) -@821 := @630 @69 -@826 := {vs : @224} -> {ts : @666} -> (h : @816) -> (hs : @732) -> @820 @821 -@827 := @813 @617 -@828 := @583 @70 -@830 := @13 @828 @33 -@831 := @786 @72 -@833 := @615 @800 @775 -@838 := {ts : @666} -> (h : @830) -> (hs : @831) -> @663 @833 @821 -@839 := @827 @629 -@841 := @13 @584 @33 -@843 := @615 @814 @785 -@844 := @663 @843 -@847 := (h : @841) -> (hs : @794) -> @844 @631 -@848 := @839 @72 -@850 := @615 @828 @792 -@852 := @663 @850 @631 -@853 := (hs : @798) -> @852 -@854 := @848 @796 -@856 := @663 @619 @631 -@857 := @728 @313 -@858 := @312 @282 -@870 := {t : @118} -> - {vs : @224} -> - {ts : @666} -> (h : @13 @858 @69) -> (hs : @732) -> @663 (@615 (@312 @378) @73) @681 -@871 := @857 @318 -@872 := @312 @67 -@874 := @13 @872 @318 -@878 := @663 (@615 (@312 @370) @73) -@879 := @632 @69 -@884 := {vs : @224} -> {ts : @666} -> (h : @874) -> (hs : @732) -> @878 @879 -@885 := @871 @619 -@886 := @312 @68 -@888 := @13 @886 @318 -@889 := @844 @72 -@891 := @615 @858 @833 -@896 := {ts : @666} -> (h : @888) -> (hs : @889) -> @663 @891 @879 -@897 := @885 @631 -@899 := @615 @872 @843 -@900 := @663 @899 -@903 := (h : @579) -> (hs : @852) -> @900 @633 -@904 := @897 @577 -@906 := @615 @886 @850 -@908 := @663 @906 @633 -@909 := (hs : @856) -> @908 -@910 := @904 @854 -@912 := @663 @621 @633 -@913 := @728 @221 -@914 := @220 @370 -@926 := {t : @118} -> - {vs : @224} -> - {ts : @666} -> (h : @13 @914 @69) -> (hs : @732) -> @663 (@615 (@220 @387) @73) @681 -@927 := @913 @222 -@928 := @220 @282 -@930 := @13 @928 @222 -@934 := @663 (@615 (@220 @378) @73) -@935 := @634 @69 -@940 := {vs : @224} -> {ts : @666} -> (h : @930) -> (hs : @732) -> @934 @935 -@941 := @927 @621 -@942 := @220 @67 -@944 := @13 @942 @222 -@945 := @900 @72 -@947 := @615 @914 @891 -@952 := {ts : @666} -> (h : @944) -> (hs : @945) -> @663 @947 @935 -@953 := @941 @633 -@955 := @13 @221 @222 -@957 := @615 @928 @899 -@958 := @663 @957 -@961 := (h : @955) -> (hs : @908) -> @958 @635 -@962 := @953 @296 -@964 := @615 @942 @906 -@966 := @663 @964 @635 -@967 := (hs : @912) -> @966 -@968 := @962 @910 -@970 := @663 @623 @635 -@971 := @728 @78 -@972 := @77 @378 -@974 := @13 @972 @69 -@975 := #12 -@985 := {t : @118} -> - {vs : @224} -> {ts : @666} -> (h : @974) -> (hs : @732) -> @663 (@615 (@77 @975) @73) @681 -@986 := @971 @80 -@987 := @77 @370 -@989 := @13 @987 @80 -@993 := @663 (@615 (@77 @387) @73) -@994 := @636 @69 -@999 := {vs : @224} -> {ts : @666} -> (h : @989) -> (hs : @732) -> @993 @994 -@1000 := @986 @623 -@1001 := @77 @282 -@1003 := @13 @1001 @80 -@1004 := @958 @72 -@1006 := @615 @972 @947 -@1011 := {ts : @666} -> (h : @1003) -> (hs : @1004) -> @663 @1006 @994 -@1012 := @1000 @635 -@1014 := @615 @987 @957 -@1015 := @663 @1014 -@1018 := (h : @216) -> (hs : @966) -> @1015 @637 -@1019 := @1012 @214 -@1021 := @615 @1001 @964 -@1023 := @663 @1021 @637 -@1024 := (hs : @970) -> @1023 -@1025 := @1019 @968 -@1027 := @663 @625 @637 -@1028 := Eq.{1} -@1029 := @28 @666 -@1030 := @1028 @1029 -@1031 := LexLeanPreservation.Rust.adtFields -@1035 := @1030 (@1031 @68 @73 @69) -@1036 := Option.some.{0} -@1037 := @1036 @666 -@1038 := @1037 @4 -@1039 := @1035 @1038 -@1042 := @7 @282 @67 @68 -@1043 := LexLeanTarget.TargetSyntax.Value.adt -@1045 := @1043 @71 @73 -@1046 := @1042 @1045 -@1047 := @8 @70 -@1057 := {p : @81} -> - {c : @82} -> - {A : @83} -> - {i : @37} -> {k : @37} -> {fs : @224} -> {tys : @666} -> (h : @1039) -> (hf : @673) -> @1046 @1047 -@1059 := LexLeanPreservation.Rust.wt_adt @0 -@1060 := @1031 @0 -@1064 := @1030 (@1060 @73 @69) @1038 -@1066 := @11 @67 @68 -@1076 := {c : @82} -> - {A : @83} -> - {i : @37} -> - {k : @37} -> {fs : @224} -> {tys : @666} -> (h : @1064) -> (hf : @699) -> @1066 @1045 @1047 -@1077 := @1059 @1 -@1078 := @12 @68 -@1087 := {A : @83} -> - {i : @37} -> - {k : @37} -> {fs : @224} -> {tys : @666} -> (h : @1064) -> (hf : @717) -> @1078 @1045 @1047 -@1088 := @1077 @2 -@1089 := @13 @1045 -@1096 := {i : @37} -> - {k : @37} -> {fs : @224} -> {tys : @666} -> (h : @1064) -> (hf : @732) -> @1089 @1047 -@1097 := @1088 @9 -@1098 := @1060 @9 -@1107 := {k : @37} -> - {fs : @224} -> {tys : @666} -> (h : @1030 (@1098 @69) @1038) -> (hf : @732) -> @1089 @10 -@1108 := @1097 @9 -@1109 := @1098 @9 -@1110 := @1030 @1109 -@1111 := @1110 @1038 -@1112 := @1043 @9 -@1114 := @13 (@1112 @73) -@1119 := {fs : @224} -> {tys : @666} -> (h : @1111) -> (hf : @732) -> @1114 @10 -@1120 := @1108 @625 -@1127 := {tys : @666} -> (h : @1111) -> (hf : @1015 @72) -> @13 (@1112 @1006) @10 -@1128 := @1120 @637 -@1135 := (h : @1110 (@1037 @637)) -> (hf : @1023) -> @13 (@1112 @1014) @10 -@1136 := Eq.refl.{1} -@1137 := @1136 @1029 -@1139 := @1128 (@1137 @1109) -@1143 := (hf : @1027) -> @13 (@1112 @1021) @10 -@1144 := @1139 @1025 -@1147 := @13 (@1112 @625) @10 -@1148 := @42 @69 -@1150 := @24 @1148 @47 -@1151 := fun (__ih2 : @1150) => @1144 -@1155 := fun (__ih1 : @13 (@30 @69) @33) => @1151 -@1156 := @19 @73 -@1158 := @24 @1156 @10 -@1164 := fun (__x0 : @190) => - fun (__x1 : @18) => - fun (__x2 : @554) => fun (__x3 : @29) => fun (__x4 : @41) => fun (__ih0 : @1158) => @1155 -@1165 := @39 @301 -@1166 := @306 @37 -@1167 := @1166 @301 -@1168 := @1167 @74 -@1169 := @1168 @305 -@1170 := @75 @1165 -@1171 := @1170 @1169 -@1172 := @1171 @4 -@1173 := @46 @315 -@1174 := @79 @1173 -@1175 := @461 @37 -@1176 := (x : @37) -> @463 -@1191 := {β : @115} -> - {ea : @188} -> - {eb : @369} -> - {s : @118} -> - {t : @118} -> (ha : @1176) -> (hb : @464) -> (x : @39 @68) -> @13 (@1166 @67 @68 @70 @4) @398 -@1192 := @1175 @301 -@1204 := {ea : @188} -> - {eb : @495} -> - {s : @118} -> - {t : @118} -> (ha : @1176) -> (hb : @496) -> (x : @1165) -> @13 (@1167 @68 @70 @4) @398 -@1205 := @1192 @74 -@1207 := (x : @37) -> @110 @69 -@1217 := {eb : @495} -> - {s : @118} -> {t : @118} -> (ha : @1207) -> (hb : @496) -> (x : @1165) -> @13 (@1168 @70 @4) @398 -@1218 := @1205 @305 -@1220 := @13 (@1169 @4) -@1226 := {s : @118} -> {t : @118} -> (ha : @1207) -> (hb : @524) -> (x : @1165) -> @1220 @398 -@1227 := @1218 @44 -@1228 := @46 @73 -@1233 := {t : @118} -> (ha : @209) -> (hb : @524) -> (x : @1165) -> @1220 @1228 -@1234 := @1227 @315 -@1236 := (x : @1165) -> @1220 @1173 -@1238 := (ha : @209) -> (hb : @542) -> @1236 -@1242 := fun (__x : @1165) => @1234 @114 @368 @4 -@1243 := @176 @1165 -@1244 := (a._@._internal._hyg.#0 : @1165) -> @116 -@1245 := (x : @1165) -> @178 -@1246 := @17 @1165 -@1254 := {e : @1244} -> {t : @118} -> (h : @1245) -> (xs : @1246) -> @13 (@1170 @73 @4) @134 -@1255 := @1243 @1169 -@1257 := (x : @1165) -> @1220 @72 -@1258 := @13 @1172 -@1262 := {t : @118} -> (h : @1257) -> (xs : @1246) -> @1258 @134 -@1263 := @1255 @1173 -@1264 := @1258 @1174 -@1266 := (h : @1236) -> (xs : @1246) -> @1264 -@1268 := @1263 @1242 @4 -@1270 := @615 @1172 @614 -@1271 := @627 @1174 -@1272 := @1271 @626 -@1273 := @728 @1172 -@1274 := @1171 @73 -@1286 := {t : @118} -> - {vs : @224} -> - {ts : @666} -> (h : @13 @1274 @69) -> (hs : @732) -> @663 (@615 (@1171 @70) @73) @681 -@1287 := @1273 @1174 -@1288 := @1171 @69 -@1290 := @13 @1288 @1174 -@1294 := @663 (@615 (@1171 @71) @73) -@1295 := @1271 @69 -@1300 := {vs : @224} -> {ts : @666} -> (h : @1290) -> (hs : @732) -> @1294 @1295 -@1301 := @1287 @614 -@1302 := @1171 @72 -@1304 := @13 @1302 @1174 -@1306 := @615 @1274 @614 -@1311 := {ts : @666} -> (h : @1304) -> (hs : @773) -> @663 @1306 @1295 -@1312 := @1301 @626 -@1314 := @615 @1288 @614 -@1315 := @663 @1314 -@1318 := (h : @1264) -> (hs : @665) -> @1315 @1272 -@1319 := @1312 @1268 -@1321 := @615 @1302 @614 -@1323 := @663 @1321 @1272 -@1324 := (hs : @665) -> @1323 -@1325 := @1319 @662 -@1327 := @663 @1270 @1272 -@1328 := 1 -@1329 := @1097 @1328 -@1330 := @1098 @1328 -@1331 := @1030 @1330 -@1332 := @1331 @1038 -@1333 := @1043 @1328 -@1340 := {fs : @224} -> {tys : @666} -> (h : @1332) -> (hf : @732) -> @13 (@1333 @73) @10 -@1341 := @1329 @1270 -@1348 := {tys : @666} -> (h : @1332) -> (hf : @1315 @72) -> @13 (@1333 @1306) @10 -@1349 := @1341 @1272 -@1356 := (h : @1331 (@1037 @1272)) -> (hf : @1323) -> @13 (@1333 @1314) @10 -@1358 := @1349 (@1137 @1330) -@1362 := (hf : @1327) -> @13 (@1333 @1321) @10 -@1363 := @1358 @1325 -@1366 := @13 (@1333 @1270) @10 -@1367 := fun (__x0 : @1246) => @1363 -@1368 := @54 @72 -@1370 := @615 @1368 @614 -@1371 := @627 @58 -@1372 := @1371 @626 -@1373 := @728 @1368 -@1374 := @54 @71 -@1386 := {t : @118} -> - {vs : @224} -> {ts : @666} -> (h : @13 @1374 @69) -> (hs : @732) -> @663 (@615 (@54 @68) @73) @681 -@1387 := @1373 @58 -@1388 := @54 @73 -@1390 := @13 @1388 @58 -@1394 := @663 (@615 (@54 @70) @73) -@1395 := @1371 @69 -@1400 := {vs : @224} -> {ts : @666} -> (h : @1390) -> (hs : @732) -> @1394 @1395 -@1401 := @1387 @614 -@1402 := @54 @69 -@1404 := @13 @1402 @58 -@1406 := @615 @1374 @614 -@1411 := {ts : @666} -> (h : @1404) -> (hs : @773) -> @663 @1406 @1395 -@1412 := @1401 @626 -@1414 := @13 @1368 @58 -@1416 := @615 @1388 @614 -@1417 := @663 @1416 -@1420 := (h : @1414) -> (hs : @665) -> @1417 @1372 -@1421 := @1412 @4 -@1423 := @615 @1402 @614 -@1425 := @663 @1423 @1372 -@1426 := (hs : @665) -> @1425 -@1427 := @1421 @662 -@1429 := @663 @1370 @1372 -@1430 := 2 -@1431 := @1097 @1430 -@1432 := @1098 @1430 -@1433 := @1030 @1432 -@1434 := @1433 @1038 -@1435 := @1043 @1430 -@1442 := {fs : @224} -> {tys : @666} -> (h : @1434) -> (hf : @732) -> @13 (@1435 @73) @10 -@1443 := @1431 @1370 -@1450 := {tys : @666} -> (h : @1434) -> (hf : @1417 @72) -> @13 (@1435 @1406) @10 -@1451 := @1443 @1372 -@1458 := (h : @1433 (@1037 @1372)) -> (hf : @1425) -> @13 (@1435 @1416) @10 -@1460 := @1451 (@1137 @1432) -@1464 := (hf : @1429) -> @13 (@1435 @1423) @10 -@1465 := @1460 @1427 -@1468 := @13 (@1435 @1370) @10 -@1470 := fun (__x0 : @53) => fun (__ih0 : @60) => @1465 -@1479 := {p : @81} -> {c : @82} -> {A : @83} -> {t : @118} -> @21 @73 @69 @72 @614 @4 -@1481 := LexLeanPreservation.Rust.wtAll_nil @0 -@1488 := {c : @82} -> {A : @83} -> {t : @118} -> @22 @69 @72 @614 @4 -@1489 := @1481 @1 -@1494 := {A : @83} -> {t : @118} -> @23 @72 @614 @4 -@1495 := @1489 @2 -@1496 := @24 @614 -@1498 := {t : @118} -> @1496 @4 -@1499 := @1495 @10 -@1500 := @1496 @10 -@1501 := @5 @73 -@1502 := @19 @69 -@1503 := @232 @69 -@1504 := @1503 @4 -@1509 := @21 @68 @70 @71 @69 @72 -@1512 := @21 @67 @68 @70 -@1514 := @615 @71 @73 -@1524 := {p : @81} -> - {c : @82} -> - {A : @83} -> - {v : @116} -> {vs : @224} -> {t : @118} -> (h : @1504) -> (hs : @1509) -> @1512 @1514 @69 -@1526 := LexLeanPreservation.Rust.wtAll_cons @0 -@1527 := @251 @69 -@1528 := @1527 @4 -@1543 := {c : @82} -> - {A : @83} -> - {v : @116} -> - {vs : @224} -> {t : @118} -> (h : @1528) -> (hs : @22 @70 @71 @69 @72) -> @22 @68 @70 @1514 @69 -@1544 := @1526 @1 -@1545 := @263 @69 -@1546 := @1545 @4 -@1558 := {A : @83} -> - {v : @116} -> - {vs : @224} -> {t : @118} -> (h : @1546) -> (hs : @23 @71 @69 @72) -> @23 @70 @1514 @69 -@1559 := @1544 @2 -@1560 := @13 @69 -@1561 := @1560 @4 -@1563 := @24 @69 @72 -@1570 := {v : @116} -> {vs : @224} -> {t : @118} -> (h : @1561) -> (hs : @1563) -> @24 @1514 @69 -@1571 := @1559 @1501 -@1572 := @5 @70 -@1573 := @13 @1572 -@1574 := @1573 @4 -@1575 := @5 @67 -@1576 := @615 @1575 -@1583 := {vs : @224} -> {t : @118} -> (h : @1574) -> (hs : @1563) -> @24 (@1576 @73) @69 -@1584 := @1571 @1502 -@1585 := @5 @71 -@1586 := @13 @1585 -@1587 := @1586 @4 -@1588 := @19 @71 -@1590 := @24 @1588 @72 -@1591 := @5 @68 -@1592 := @615 @1591 -@1599 := {t : @118} -> (h : @1587) -> (hs : @1590) -> @24 (@1592 (@19 @70)) @69 -@1600 := @1584 @10 -@1601 := @13 @1501 -@1602 := @1601 @10 -@1603 := @615 @1572 -@1608 := (h : @1602) -> (hs : @1158) -> @24 (@1603 @1588) @10 -@1609 := @1600 @72 -@1611 := @24 @1502 @10 -@1612 := @615 @1585 -@1616 := (hs : @1611) -> @24 (@1612 @1156) @10 -@1617 := @1609 @4 -@1618 := @615 @1501 -@1621 := @24 (@1618 @1502) @10 -@1625 := fun (__ih1 : @24 (@19 @72) @10) => @1617 -@1626 := @5 @72 -@1628 := @13 @1626 @10 -@1631 := fun (__x0 : @3) => fun (__x1 : @18) => fun (__ih0 : @1628) => @1625 -@1632 := LexLeanTarget.TargetSyntax.Value.none -@1633 := @86 @1632 -@1634 := @32 @4 -@1639 := {p : @81} -> {c : @82} -> {A : @83} -> {t : @118} -> @1633 @1634 -@1641 := LexLeanPreservation.Rust.wt_noneV @0 -@1646 := {c : @82} -> {A : @83} -> {t : @118} -> @97 @1632 @1634 -@1647 := @1641 @1 -@1651 := {A : @83} -> {t : @118} -> @104 @1632 @1634 -@1652 := @1647 @2 -@1653 := @13 @1632 -@1655 := {t : @118} -> @1653 @1634 -@1656 := @1652 @10 -@1657 := @1653 @33 -@1662 := @7 @71 @73 @69 @72 @4 -@1663 := LexLeanTarget.TargetSyntax.Value.some -@1664 := @1663 @69 -@1665 := @232 @1664 -@1666 := @32 @72 -@1673 := {p : @81} -> - {c : @82} -> {A : @83} -> {v : @116} -> {t : @118} -> (h : @1662) -> @1665 @1666 -@1675 := LexLeanPreservation.Rust.wt_someV @0 -@1686 := {c : @82} -> - {A : @83} -> {v : @116} -> {t : @118} -> (h : @11 @73 @69 @72 @4) -> @251 @1664 @1666 -@1687 := @1675 @1 -@1696 := {A : @83} -> {v : @116} -> {t : @118} -> (h : @12 @69 @72 @4) -> @263 @1664 @1666 -@1697 := @1687 @2 -@1704 := {v : @116} -> {t : @118} -> (h : @13 @72 @4) -> @13 @1664 @1666 -@1705 := @1697 @1626 -@1706 := @5 @69 -@1707 := @13 @1706 -@1713 := {t : @118} -> (h : @1707 @4) -> @13 (@1663 @1501) @1666 -@1714 := @1705 @10 -@1718 := (h : @1628) -> @13 (@1663 @1706) @33 -@1719 := @1714 @4 -@1722 := @13 (@1663 @1626) @33 -@1724 := fun (__x0 : @3) => fun (__ih0 : @15) => @1719 -@1725 := @1495 @47 -@1726 := @1496 @47 -@1727 := @62 @73 -@1728 := @1559 @1727 -@1729 := @62 @70 -@1740 := {vs : @224} -> - {t : @118} -> (h : @13 @1729 @4) -> (hs : @1563) -> @24 (@615 (@62 @67) @73) @69 -@1741 := @1728 @1148 -@1742 := @62 @71 -@1753 := {t : @118} -> (h : @13 @1742 @4) -> (hs : @593 @72) -> @24 (@615 (@62 @68) @595) @69 -@1754 := @1741 @47 -@1762 := (h : @13 @1727 @47) -> (hs : @603) -> @24 (@615 @1729 @592) @47 -@1763 := @1754 @72 -@1768 := (hs : @1150) -> @24 (@615 @1742 @590) @47 -@1769 := @1763 @4 -@1773 := @24 (@615 @1727 @1148) @47 -@1777 := fun (__ih1 : @24 (@42 @72) @47) => @1769 -@1783 := fun (__x0 : @40) => fun (__x1 : @41) => fun (__ih0 : @13 (@62 @72) @47) => @1777 -@1784 := LexLeanTarget.TargetSyntax.Value.error -@1785 := @1784 @73 -@1786 := @121 @1785 -@1788 := @56 @69 @72 -@1796 := {p : @81} -> - {c : @82} -> {A : @83} -> {v : @116} -> {s : @118} -> {t : @118} -> (h : @1504) -> @1786 @1788 -@1798 := LexLeanPreservation.Rust.wt_errorV @0 -@1806 := {c : @82} -> - {A : @83} -> {v : @116} -> {s : @118} -> {t : @118} -> (h : @1528) -> @147 @1785 @1788 -@1807 := @1798 @1 -@1814 := {A : @83} -> {v : @116} -> {s : @118} -> {t : @118} -> (h : @1546) -> @163 @1785 @1788 -@1815 := @1807 @2 -@1821 := {v : @116} -> {s : @118} -> {t : @118} -> (h : @1561) -> @13 @1785 @1788 -@1822 := @1815 @87 -@1823 := @74 @69 -@1824 := @13 @1823 -@1825 := @1824 @4 -@1826 := @74 @73 -@1832 := {s : @118} -> {t : @118} -> (h : @1825) -> @13 (@1784 @1826) @1788 -@1833 := @1822 @10 -@1834 := @74 @72 -@1836 := @13 @1834 @4 -@1838 := @13 (@1784 @1823) -@1839 := @57 @72 -@1842 := {t : @118} -> (h : @1836) -> @1838 @1839 -@1843 := @1833 @44 -@1847 := (h : @111) -> @13 (@1784 @1834) @58 -@1848 := @1843 @113 -@1851 := @13 (@1784 @87) @58 -@1852 := fun (__x0 : @37) => @1848 -@1853 := @1503 @72 -@1854 := LexLeanTarget.TargetSyntax.Value.ok -@1855 := @1854 @73 -@1864 := {p : @81} -> - {c : @82} -> - {A : @83} -> {v : @116} -> {s : @118} -> {t : @118} -> (h : @1853) -> @121 @1855 @1788 -@1866 := LexLeanPreservation.Rust.wt_okV @0 -@1875 := {c : @82} -> - {A : @83} -> {v : @116} -> {s : @118} -> {t : @118} -> (h : @1527 @72) -> @147 @1855 @1788 -@1876 := @1866 @1 -@1884 := {A : @83} -> {v : @116} -> {s : @118} -> {t : @118} -> (h : @1545 @72) -> @163 @1855 @1788 -@1885 := @1876 @2 -@1892 := {v : @116} -> {s : @118} -> {t : @118} -> (h : @1560 @72) -> @13 @1855 @1788 -@1893 := @1885 @1626 -@1894 := @1601 @72 -@1900 := {s : @118} -> {t : @118} -> (h : @1894) -> @13 (@1854 @1585) @1788 -@1901 := @1893 @10 -@1902 := @1707 @10 -@1907 := {t : @118} -> (h : @1902) -> @13 (@1854 @1501) @1839 -@1908 := @1901 @44 -@1912 := (h : @1628) -> @13 (@1854 @1706) @58 -@1913 := @1908 @4 -@1916 := @13 (@1854 @1626) @58 -@1918 := fun (__x0 : @3) => fun (__ih0 : @15) => @1913 -@1919 := @109 @69 -@1920 := @1824 @44 -@1921 := @667 @72 -@1923 := @129 @73 @72 -@1924 := LexLeanTarget.TargetSyntax.Value.pair -@1926 := @1924 @70 @71 -@1927 := @1042 @1926 -@1929 := @45 @73 @69 -@1939 := {p : @81} -> - {c : @82} -> - {A : @83} -> - {a : @116} -> - {b : @116} -> {s : @118} -> {t : @118} -> (ha : @1921) -> (hb : @1923) -> @1927 @1929 -@1941 := LexLeanPreservation.Rust.wt_pairV @0 -@1954 := {c : @82} -> - {A : @83} -> - {a : @116} -> - {b : @116} -> - {s : @118} -> {t : @118} -> (ha : @694 @72) -> (hb : @152 @73 @72) -> @1066 @1926 @1929 -@1955 := @1941 @1 -@1967 := {A : @83} -> - {a : @116} -> - {b : @116} -> - {s : @118} -> {t : @118} -> (ha : @713 @72) -> (hb : @167 @73 @72) -> @1078 @1926 @1929 -@1968 := @1955 @2 -@1969 := @729 @72 -@1977 := {a : @116} -> - {b : @116} -> {s : @118} -> {t : @118} -> (ha : @1969) -> (hb : @1969) -> @13 @1926 @1929 -@1978 := @1968 @1823 -@1979 := @74 @70 -@1991 := {b : @116} -> - {s : @118} -> - {t : @118} -> (ha : @13 @1979 @72) -> (hb : @1969) -> @13 (@1924 (@74 @67) @71) @1929 -@1992 := @1978 @1626 -@1993 := @74 @71 -@2005 := {s : @118} -> - {t : @118} -> (ha : @13 @1993 @72) -> (hb : @1586 @72) -> @13 (@1924 (@74 @68) @1572) @1929 -@2006 := @1992 @44 -@2016 := {t : @118} -> (ha : @13 @1826 @44) -> (hb : @1894) -> @13 (@1924 @1979 @1585) (@46 @69) -@2017 := @2006 @10 -@2023 := (ha : @1920) -> (hb : @1902) -> @13 (@1924 @1993 @1501) @47 -@2024 := @2017 @1919 -@2029 := (hb : @1628) -> @13 (@1924 @1826 @1706) @47 -@2030 := @2024 @4 -@2034 := @13 (@1924 @1823 @1626) @47 -@2037 := fun (__x0 : @37) => fun (__x1 : @3) => fun (__ih0 : @15) => @2030 -@2058 := fun (__v : @3) => - Coverage.Boundary.Grove.rec.{0} - @16 - @27 - @36 - @50 - @61 - @66 - @1164 - @1367 - @1470 - @1499 - @1631 - @1656 - @1724 - @1725 - @1783 - @1852 - @1918 - @2037 - @4 -@2059 := (__v : @3) -> @15 -@2080 := fun (__v : @18) => - Coverage.Boundary.Grove.rec_1.{0} - @16 - @27 - @36 - @50 - @61 - @66 - @1164 - @1367 - @1470 - @1499 - @1631 - @1656 - @1724 - @1725 - @1783 - @1852 - @1918 - @2037 - @4 -@2081 := (__v : @18) -> @26 -@2102 := fun (__v : @29) => - Coverage.Boundary.Grove.rec_2.{0} - @16 - @27 - @36 - @50 - @61 - @66 - @1164 - @1367 - @1470 - @1499 - @1631 - @1656 - @1724 - @1725 - @1783 - @1852 - @1918 - @2037 - @4 -@2103 := (__v : @29) -> @35 -@2124 := fun (__v : @41) => - Coverage.Boundary.Grove.rec_3.{0} - @16 - @27 - @36 - @50 - @61 - @66 - @1164 - @1367 - @1470 - @1499 - @1631 - @1656 - @1724 - @1725 - @1783 - @1852 - @1918 - @2037 - @4 -@2125 := (__v : @41) -> @49 -@2146 := fun (__v : @53) => - Coverage.Boundary.Grove.rec_4.{0} - @16 - @27 - @36 - @50 - @61 - @66 - @1164 - @1367 - @1470 - @1499 - @1631 - @1656 - @1724 - @1725 - @1783 - @1852 - @1918 - @2037 - @4 -@2147 := (__v : @53) -> @60 -@2168 := fun (__v : @40) => - Coverage.Boundary.Grove.rec_5.{0} - @16 - @27 - @36 - @50 - @61 - @66 - @1164 - @1367 - @1470 - @1499 - @1631 - @1656 - @1724 - @1725 - @1783 - @1852 - @1918 - @2037 - @4 -@2169 := (__v : @40) -> @65 -@2170 := Coverage.Boundary.Ledger -@2171 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.__enc_1 -@2172 := @2171 @4 -@2173 := @8 @1328 -@2176 := (__s : @2170) -> @13 @2172 @2173 -@2177 := Coverage.Boundary.Ledger.entries -@2178 := @2177 @4 -@2179 := Coverage.Boundary.Ledger.owner -@2180 := @2179 @4 -@2181 := @312 @2178 -@2182 := @576 @2178 -@2184 := @13 @2181 @318 -@2185 := @304 @2180 -@2186 := @338 @2180 -@2188 := @13 @2185 @314 -@2190 := @615 @2185 @614 -@2192 := @615 @2181 @2190 -@2193 := @627 @314 -@2194 := @2193 @626 -@2195 := @632 @2194 -@2196 := @728 @2185 -@2198 := @304 (@2179 @73) -@2211 := {t : @118} -> - {vs : @224} -> - {ts : @666} -> (h : @13 @2198 @69) -> (hs : @732) -> @663 (@615 (@304 (@2179 @70)) @73) @681 -@2212 := @2196 @314 -@2214 := @304 (@2179 @69) -@2216 := @13 @2214 @314 -@2221 := @663 (@615 (@304 (@2179 @71)) @73) -@2222 := @2193 @69 -@2227 := {vs : @224} -> {ts : @666} -> (h : @2216) -> (hs : @732) -> @2221 @2222 -@2228 := @2212 @614 -@2230 := @304 (@2179 @72) -@2232 := @13 @2230 @314 -@2234 := @615 @2198 @614 -@2239 := {ts : @666} -> (h : @2232) -> (hs : @773) -> @663 @2234 @2222 -@2240 := @2228 @626 -@2242 := @615 @2214 @614 -@2243 := @663 @2242 -@2246 := (h : @2188) -> (hs : @665) -> @2243 @2194 -@2247 := @2240 @2186 -@2249 := @615 @2230 @614 -@2251 := @663 @2249 @2194 -@2252 := (hs : @665) -> @2251 -@2253 := @2247 @662 -@2255 := @663 @2190 @2194 -@2256 := @728 @2181 -@2258 := @312 (@2177 @73) -@2271 := {t : @118} -> - {vs : @224} -> - {ts : @666} -> (h : @13 @2258 @69) -> (hs : @732) -> @663 (@615 (@312 (@2177 @70)) @73) @681 -@2272 := @2256 @318 -@2274 := @312 (@2177 @69) -@2286 := {vs : @224} -> - {ts : @666} -> (h : @13 @2274 @318) -> (hs : @732) -> @663 (@615 (@312 (@2177 @71)) @73) @879 -@2287 := @2272 @2190 -@2289 := @312 (@2177 @72) -@2291 := @13 @2289 @318 -@2292 := @2243 @72 -@2294 := @615 @2258 @2234 -@2299 := {ts : @666} -> (h : @2291) -> (hs : @2292) -> @663 @2294 @879 -@2300 := @2287 @2194 -@2302 := @615 @2274 @2242 -@2303 := @663 @2302 -@2306 := (h : @2184) -> (hs : @2251) -> @2303 @2195 -@2307 := @2300 @2182 -@2309 := @615 @2289 @2249 -@2311 := @663 @2309 @2195 -@2312 := (hs : @2255) -> @2311 -@2313 := @2307 @2253 -@2315 := @663 @2192 @2195 -@2316 := @1088 @1328 -@2317 := @1060 @1328 -@2326 := {k : @37} -> - {fs : @224} -> {tys : @666} -> (h : @1030 (@2317 @69) @1038) -> (hf : @732) -> @1089 @2173 -@2327 := @2316 @9 -@2328 := @2317 @9 -@2329 := @1030 @2328 -@2330 := @2329 @1038 -@2335 := {fs : @224} -> {tys : @666} -> (h : @2330) -> (hf : @732) -> @1114 @2173 -@2336 := @2327 @2192 -@2343 := {tys : @666} -> (h : @2330) -> (hf : @2303 @72) -> @13 (@1112 @2294) @2173 -@2344 := @2336 @2195 -@2351 := (h : @2329 (@1037 @2195)) -> (hf : @2311) -> @13 (@1112 @2302) @2173 -@2353 := @2344 (@1137 @2328) -@2357 := (hf : @2315) -> @13 (@1112 @2309) @2173 -@2358 := @2353 @2313 -@2361 := @13 (@1112 @2192) @2173 -@2362 := fun (__s : @2170) => @2358 -@2364 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.Compose.RustStd.__wt_0 @71 -@2365 := @2171 @73 -@2367 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.Compose.RustStd.__wt_1 @73 -@2368 := @28 @190 -@2369 := LexLeanPreservation.encOption -@2370 := @2369 @190 -@2371 := @2370 @77 -@2372 := @2371 @69 -@2373 := @32 @80 -@2375 := fun (__x : @190) => @213 @4 -@2376 := @28 @73 -@2379 := @2369 @71 @73 @4 -@2380 := @129 @2379 -@2381 := @32 @69 -@2390 := {p : @81} -> - {c : @82} -> - {A : @83} -> {α : @115} -> {e : @117} -> {t : @118} -> (h : @125) -> (o : @2376) -> @2380 @2381 -@2392 := LexLeanPreservation.Rust.wt_encOption @0 -@2401 := {c : @82} -> - {A : @83} -> - {α : @115} -> {e : @117} -> {t : @118} -> (h : @150) -> (o : @2376) -> @152 @2379 @2381 -@2402 := @2392 @1 -@2410 := {A : @83} -> - {α : @115} -> {e : @117} -> {t : @118} -> (h : @166) -> (o : @2376) -> @167 @2379 @2381 -@2411 := @2402 @2 -@2418 := {α : @115} -> {e : @117} -> {t : @118} -> (h : @179) -> (o : @2376) -> @13 @2379 @2381 -@2419 := @2411 @190 -@2429 := {e : (a._@._internal._hyg.#0 : @190) -> @116} -> - {t : @118} -> (h : (x : @190) -> @178) -> (o : @2368) -> @13 (@2370 @73 @4) @2381 -@2430 := @2419 @77 -@2432 := (x : @190) -> @203 @72 -@2434 := @13 (@2371 @4) -@2438 := {t : @118} -> (h : @2432) -> (o : @2368) -> @2434 @2381 -@2439 := @2430 @80 -@2443 := (h : (x : @190) -> @210) -> (o : @2368) -> @2434 @2373 -@2445 := @2439 @2375 @69 -@2447 := @13 @2372 @2373 -@2448 := Bool -@2449 := @39 @2448 -@2450 := @17 @2449 -@2451 := @17 @2450 -@2452 := LexLeanTarget.TargetSyntax.Value.bool -@2453 := @1166 @2448 -@2454 := @2453 @74 -@2455 := @2454 @2452 -@2456 := @75 @2449 -@2457 := @2456 @2455 -@2458 := @75 @2450 -@2459 := @2458 @2457 -@2460 := @2459 @72 -@2461 := LexLeanTarget.TargetSyntax.Ty.bool -@2462 := @46 @2461 -@2463 := @79 @2462 -@2464 := @79 @2463 -@2465 := @2452 @4 -@2471 := {p : @81} -> {c : @82} -> {A : @83} -> (b : @2448) -> @86 @2465 @2461 -@2473 := LexLeanPreservation.Rust.wt_bool @0 -@2478 := {c : @82} -> {A : @83} -> (b : @2448) -> @97 @2465 @2461 -@2479 := @2473 @1 -@2483 := {A : @83} -> (b : @2448) -> @104 @2465 @2461 -@2484 := @2479 @2 -@2485 := @13 @2465 -@2486 := @2485 @2461 -@2487 := (b : @2448) -> @2486 -@2489 := fun (__x : @2448) => @2484 @4 -@2490 := @1175 @2448 -@2491 := (a._@._internal._hyg.#0 : @2448) -> @116 -@2492 := (x : @2448) -> @463 -@2504 := {ea : @188} -> - {eb : @2491} -> - {s : @118} -> - {t : @118} -> (ha : @1176) -> (hb : @2492) -> (x : @2449) -> @13 (@2453 @68 @70 @4) @398 -@2505 := @2490 @74 -@2515 := {eb : @2491} -> - {s : @118} -> {t : @118} -> (ha : @1207) -> (hb : @2492) -> (x : @2449) -> @13 (@2454 @70 @4) @398 -@2516 := @2505 @2452 -@2518 := (x : @2448) -> @2485 @69 -@2520 := @13 (@2455 @4) -@2526 := {s : @118} -> {t : @118} -> (ha : @1207) -> (hb : @2518) -> (x : @2449) -> @2520 @398 -@2527 := @2516 @44 -@2532 := {t : @118} -> (ha : @209) -> (hb : @2518) -> (x : @2449) -> @2520 @1228 -@2533 := @2527 @2461 -@2534 := (x : @2448) -> @2486 -@2536 := (x : @2449) -> @2520 @2462 -@2538 := (ha : @209) -> (hb : @2534) -> @2536 -@2542 := fun (__x : @2449) => @2533 @114 @2489 @4 -@2543 := @176 @2449 -@2553 := {e : (a._@._internal._hyg.#0 : @2449) -> @116} -> - {t : @118} -> (h : (x : @2449) -> @178) -> (xs : @2450) -> @13 (@2456 @73 @4) @134 -@2554 := @2543 @2455 -@2556 := (x : @2449) -> @2520 @72 -@2558 := @13 (@2457 @4) -@2562 := {t : @118} -> (h : @2556) -> (xs : @2450) -> @2558 @134 -@2563 := @2554 @2462 -@2564 := @2558 @2463 -@2566 := (h : @2536) -> (xs : @2450) -> @2564 -@2569 := fun (__x : @2450) => @2563 @2542 @4 -@2570 := @176 @2450 -@2580 := {e : (a._@._internal._hyg.#0 : @2450) -> @116} -> - {t : @118} -> (h : (x : @2450) -> @178) -> (xs : @2451) -> @13 (@2458 @73 @4) @134 -@2581 := @2570 @2457 -@2583 := (x : @2450) -> @2558 @72 -@2584 := @2459 @4 -@2585 := @13 @2584 -@2589 := {t : @118} -> (h : @2583) -> (xs : @2451) -> @2585 @134 -@2590 := @2581 @2463 -@2594 := (h : (x : @2450) -> @2564) -> (xs : @2451) -> @2585 @2464 -@2596 := @2590 @2569 @72 -@2598 := @13 @2460 @2464 -@2600 := @615 @2460 @614 -@2602 := @615 @2372 @2600 -@2604 := @615 @2365 @2602 -@2605 := @1612 @2604 -@2606 := @39 @116 -@2607 := 3 -@2610 := Prod.mk.{0, 0} @37 @116 -@2611 := @2610 @2607 -@2612 := @2611 @2460 -@2613 := @2610 @1430 -@2614 := @2613 @2372 -@2615 := @2610 @1328 -@2616 := @2615 @2365 -@2617 := @2610 @9 -@2618 := @2617 @1585 -@2619 := @612 @2606 -@2620 := @613 @2606 -@2622 := @2620 @2618 @2619 -@2624 := @2620 @2616 @2622 -@2626 := @2620 @2614 @2624 -@2628 := @2620 @2612 @2626 -@2629 := Bool.false -@2630 := LexLeanTarget.TargetSyntax.Function -@2631 := LexLeanTarget.TargetSyntax.Program.functions -@2632 := @2631 @0 -@2633 := 18 -@2634 := @612 @37 -@2635 := LexLeanTarget.TargetSyntax.Ty.unit -@2636 := LexLeanTarget.TargetSyntax.Value.unit -@2639 := LexLeanTarget.TargetSyntax.Expr.value @2635 @2636 -@2644 := LexLeanTarget.TargetSyntax.Function.mk @2634 @626 @2635 @2639 -@2649 := List.getD.{0} @2630 @2632 @2633 @2644 -@2653 := fun (__e_n : @37) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.RustStd.root @4 @2633 -@2654 := @728 @2460 -@2655 := @2459 @71 -@2657 := @13 @2655 @69 -@2658 := @2459 @68 -@2659 := @615 @2658 -@2667 := {t : @118} -> - {vs : @224} -> {ts : @666} -> (h : @2657) -> (hs : @732) -> @663 (@2659 @73) @681 -@2668 := @2654 @2464 -@2669 := @2459 @73 -@2671 := @13 @2669 @2464 -@2672 := @2459 @70 -@2673 := @615 @2672 -@2675 := @663 (@2673 @73) -@2676 := @627 @2464 -@2677 := @2676 @69 -@2682 := {vs : @224} -> {ts : @666} -> (h : @2671) -> (hs : @732) -> @2675 @2677 -@2683 := @2668 @614 -@2684 := @2459 @69 -@2686 := @13 @2684 @2464 -@2688 := @615 @2655 @614 -@2693 := {ts : @666} -> (h : @2686) -> (hs : @773) -> @663 @2688 @2677 -@2694 := @2683 @626 -@2696 := @615 @2669 @614 -@2697 := @663 @2696 -@2698 := @2676 @626 -@2701 := (h : @2598) -> (hs : @665) -> @2697 @2698 -@2702 := @2694 @2596 -@2704 := @615 @2684 @614 -@2706 := @663 @2704 @2698 -@2707 := (hs : @665) -> @2706 -@2708 := @2702 @662 -@2710 := @663 @2600 @2698 -@2711 := @728 @2372 -@2712 := @2371 @70 -@2714 := @13 @2712 @69 -@2715 := @2371 @67 -@2716 := @615 @2715 -@2724 := {t : @118} -> - {vs : @224} -> {ts : @666} -> (h : @2714) -> (hs : @732) -> @663 (@2716 @73) @681 -@2725 := @2711 @2373 -@2726 := @2371 @71 -@2728 := @13 @2726 @2373 -@2729 := @2371 @68 -@2730 := @615 @2729 -@2732 := @663 (@2730 @73) -@2733 := @627 @2373 -@2734 := @2733 @69 -@2739 := {vs : @224} -> {ts : @666} -> (h : @2728) -> (hs : @732) -> @2732 @2734 -@2740 := @2725 @2600 -@2741 := @2371 @73 -@2743 := @13 @2741 @2373 -@2744 := @2697 @72 -@2746 := @615 @2712 @2688 -@2751 := {ts : @666} -> (h : @2743) -> (hs : @2744) -> @663 @2746 @2734 -@2752 := @2740 @2698 -@2754 := @615 @2726 @2696 -@2755 := @663 @2754 -@2756 := @2733 @2698 -@2759 := (h : @2447) -> (hs : @2706) -> @2755 @2756 -@2760 := @2752 @2445 -@2762 := @615 @2741 @2704 -@2764 := @663 @2762 @2756 -@2765 := (hs : @2710) -> @2764 -@2766 := @2760 @2708 -@2768 := @663 @2602 @2756 -@2769 := @728 @2365 -@2770 := @2171 @68 -@2772 := @13 @2770 @69 -@2773 := @2171 @282 -@2774 := @615 @2773 -@2782 := {t : @118} -> - {vs : @224} -> {ts : @666} -> (h : @2772) -> (hs : @732) -> @663 (@2774 @73) @681 -@2783 := @2769 @2173 -@2784 := @2171 @70 -@2786 := @13 @2784 @2173 -@2787 := @2171 @67 -@2788 := @615 @2787 -@2790 := @663 (@2788 @73) -@2791 := @627 @2173 -@2792 := @2791 @69 -@2797 := {vs : @224} -> {ts : @666} -> (h : @2786) -> (hs : @732) -> @2790 @2792 -@2798 := @2783 @2602 -@2799 := @2171 @71 -@2801 := @13 @2799 @2173 -@2802 := @2755 @72 -@2804 := @615 @2770 @2746 -@2809 := {ts : @666} -> (h : @2801) -> (hs : @2802) -> @663 @2804 @2792 -@2810 := @2798 @2756 -@2812 := @13 @2365 @2173 -@2814 := @615 @2784 @2754 -@2815 := @663 @2814 -@2816 := @2791 @2756 -@2819 := (h : @2812) -> (hs : @2764) -> @2815 @2816 -@2820 := @2810 @2367 -@2822 := @615 @2799 @2762 -@2824 := @663 @2822 @2816 -@2825 := (hs : @2768) -> @2824 -@2826 := @2820 @2766 -@2828 := @663 @2604 @2816 -@2829 := @728 @1585 -@2831 := @13 @1575 @69 -@2832 := @5 @370 -@2833 := @615 @2832 -@2841 := {t : @118} -> - {vs : @224} -> {ts : @666} -> (h : @2831) -> (hs : @732) -> @663 (@2833 @73) @681 -@2842 := @2829 @10 -@2844 := @13 @1591 @10 -@2845 := @5 @282 -@2846 := @615 @2845 -@2848 := @663 (@2846 @73) -@2849 := @627 @10 -@2850 := @2849 @69 -@2855 := {vs : @224} -> {ts : @666} -> (h : @2844) -> (hs : @732) -> @2848 @2850 -@2856 := @2842 @2604 -@2857 := @1573 @10 -@2858 := @2815 @72 -@2859 := @1576 @2804 -@2860 := @663 @2859 -@2864 := {ts : @666} -> (h : @2857) -> (hs : @2858) -> @2860 @2850 -@2865 := @2856 @2816 -@2866 := @1586 @10 -@2867 := @1592 @2814 -@2868 := @663 @2867 -@2869 := @2849 @2816 -@2872 := (h : @2866) -> (hs : @2824) -> @2868 @2869 -@2873 := @2865 @2364 -@2874 := @1603 @2822 -@2875 := @663 @2874 -@2877 := (hs : @2828) -> @2875 @2869 -@2878 := @2873 @2826 -@2879 := @663 @2605 -@2880 := @2879 @2869 -@2881 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.denoteEntry -@2885 := @2881 @71 @73 @69 @72 -@2886 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.entryFits -@2890 := @2886 @71 @73 @69 @72 -@2895 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.entryValue @71 @73 @69 @72 -@2900 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.entry @71 @73 @69 @72 -@2901 := Ne.{1} -@2902 := LexLeanPreservation.Obs -@2903 := @2901 @2902 -@2904 := LexLeanPreservation.Rel -@2907 := @2903 (@2904 @72 @4) -@2908 := LexLeanPreservation.Obs.stuck -@2911 := (f : @2448) -> (v : @116) -> @2907 @2908 -@2913 := LexLeanPreservation.Rust.rel_ne_stuck @2890 -@2922 := (v : @116) -> @2903 (@2904 (@2886 @70 @71 @73 @69) @4) @2908 -@2923 := @2913 @2895 -@2927 := @2903 (@2904 @2890 @2895) @2908 -@2928 := @17 @2606 -@2929 := LexLeanPreservation.Rust.FunSem -@2935 := (n : @37) -> @2929 @370 @282 @67 @4 @68 -@2936 := @28 @2630 -@2937 := @1028 @2936 -@2944 := LexLeanRuntime.index (@17 @2630) @2630 (LexLeanRuntime.instIndexableList @2630) -@2948 := @2937 (@2944 (@2631 @370) @68) -@2949 := @1036 @2630 -@2950 := @2949 @70 -@2951 := @2948 @2950 -@2955 := @638 @378 @370 @282 @70 -@2956 := LexLeanTarget.TargetSyntax.Function.types -@2957 := @2956 @68 -@2958 := @2955 @2957 -@2959 := @28 @2928 -@2960 := @1028 @2959 -@2961 := LexLeanTarget.TargetSemantics.bindAll -@2962 := LexLeanTarget.TargetSyntax.Function.parameters -@2967 := @2960 (@2961 (@2962 @67) @68 @2619) -@2968 := @1036 @2928 -@2969 := @2968 @70 -@2970 := @2967 @2969 -@2971 := @28 @2448 -@2972 := @1028 @2971 -@2973 := LexLeanPreservation.Rust.fnFallible -@2976 := @2972 (@2973 @387 @370) -@2977 := @1036 @2448 -@2978 := @2977 @70 -@2979 := @2976 @2978 -@2980 := LexLeanPreservation.RunConv -@2981 := #13 -@2985 := @2980 @2981 @378 @282 @70 -@2987 := @2903 @68 @2908 -@2988 := Exists.{1} -@2989 := LexLeanPreservation.Rust.ROut -@2990 := @2988 @2989 -@2991 := And -@2992 := LexLeanPreservation.Rust.RealizesFn -@2996 := @2991 (@2992 @370 @282 @4) -@2997 := LexLeanPreservation.Rust.RCI -@2998 := #15 -@2999 := @2997 @2998 -@3000 := LexLeanPreservation.Rust.fnIdent -@3001 := @3000 @2981 -@3008 := (hne : @2987) -> @2990 (fun (ro : @2989) => @2996 (@2999 @3001 @387 @4)) -@3023 := {p : @81} -> - {c : @82} -> - {A : @83} -> - {f : @37} -> - {fn : @2630} -> - {args : @224} -> - {env : @2928} -> - {F : @2448} -> - {o : @2902} -> - (hB : @2935) -> - (hfn : @2951) -> (hwt : @2958) -> (hbind : @2970) -> (hF : @2979) -> (hA : @2985) -> @3008 -@3025 := LexLeanPreservation.Rust.compose @0 -@3026 := @2929 @0 -@3031 := (n : @37) -> @3026 @282 @67 @4 @68 -@3032 := @2944 @2632 -@3035 := @2937 (@3032 @68) @2950 -@3039 := @649 @370 @282 @70 @2957 -@3040 := @2980 @0 -@3043 := @3040 @378 @282 @70 -@3057 := {c : @82} -> - {A : @83} -> - {f : @37} -> - {fn : @2630} -> - {args : @224} -> - {env : @2928} -> - {F : @2448} -> - {o : @2902} -> - (hB : @3031) -> - (hfn : @3035) -> (hwt : @3039) -> (hbind : @2970) -> (hF : @2979) -> (hA : @3043) -> @3008 -@3058 := @3025 @1 -@3059 := @3026 @1 -@3063 := (n : @37) -> @3059 @67 @4 @68 -@3066 := @657 @282 @70 @2957 -@3067 := @2973 @1 -@3070 := @2972 (@3067 @370) @2978 -@3071 := @2997 @1 -@3081 := (hbind : @2970) -> - (hF : @3070) -> - (hA : @3043) -> (hne : @2987) -> @2990 (fun (ro : @2989) => @2996 (@3071 @3001 @387 @4)) -@3091 := {A : @83} -> - {f : @37} -> - {fn : @2630} -> - {args : @224} -> - {env : @2928} -> - {F : @2448} -> {o : @2902} -> (hB : @3063) -> (hfn : @3035) -> (hwt : @3066) -> @3081 -@3092 := @3058 @2 -@3094 := @3059 @2 @4 -@3096 := (n : @37) -> @3094 @68 -@3097 := @663 @70 -@3098 := @3097 @2957 -@3107 := {f : @37} -> - {fn : @2630} -> - {args : @224} -> - {env : @2928} -> - {F : @2448} -> {o : @2902} -> (hB : @3096) -> (hfn : @3035) -> (hwt : @3098) -> @3081 -@3108 := @3092 @2633 -@3110 := (n : @37) -> @3094 @2633 -@3111 := @3032 @2633 -@3112 := @2937 @3111 -@3113 := @3112 @2950 -@3114 := @3067 @2633 -@3115 := @2972 @3114 -@3116 := @3115 @2978 -@3117 := @3040 @2633 -@3119 := @3117 @282 @70 -@3121 := @3071 (@3000 @2633) -@3129 := (hF : @3116) -> - (hA : @3119) -> (hne : @2987) -> @2990 (fun (ro : @2989) => @2996 (@3121 @387 @4)) -@3138 := {fn : @2630} -> - {args : @224} -> - {env : @2928} -> - {F : @2448} -> - {o : @2902} -> (hB : @3110) -> (hfn : @3113) -> (hwt : @3098) -> (hbind : @2970) -> @3129 -@3139 := @3108 @2649 -@3141 := @3112 (@2949 @2649) -@3142 := @2956 @2649 -@3143 := @3097 @3142 -@3145 := @2961 (@2962 @2649) -@3157 := {args : @224} -> - {env : @2928} -> - {F : @2448} -> - {o : @2902} -> - (hB : @3110) -> (hfn : @3141) -> (hwt : @3143) -> (hbind : @2960 (@3145 @68 @2619) @2969) -> @3129 -@3158 := @3139 @2605 -@3162 := @2833 (@2774 (@2716 (@2659 @614))) -@3164 := @663 @3162 @3142 -@3176 := @615 (@5 @378) (@615 (@2171 @370) (@615 (@2371 @282) (@615 (@2459 @67) @614))) -@3180 := @2960 (@3145 @3176 @2619) @2969 -@3192 := @615 (@5 @975) (@615 (@2171 @387) (@615 (@2371 @378) (@615 (@2459 @370) @614))) -@3194 := @3117 @3192 @70 -@3196 := @615 (@5 @2998) -@3197 := #14 -@3222 := {env : @2928} -> - {F : @2448} -> - {o : @2902} -> - (hB : @3110) -> - (hfn : @3141) -> - (hwt : @3164) -> - (hbind : @3180) -> - (hF : @3116) -> - (hA : @3194) -> - (hne : @2987) -> - @2990 - (fun (ro : @2989) => - @2996 (@3121 (@3196 (@615 (@2171 @3197) (@615 (@2371 @2981) (@615 (@2459 @975) @614)))) @4)) -@3223 := @3158 @2628 -@3227 := @2846 (@2788 (@2730 (@2673 @614))) -@3229 := @663 @3227 @3142 -@3246 := @2960 - (@3145 @3162 @2619) - (@2968 - (@2620 (@2611 @2658) (@2620 (@2613 @2715) (@2620 (@2615 @2773) (@2620 (@2617 @2832) @2619))))) -@3258 := @615 (@5 @387) (@615 (@2171 @378) (@615 (@2371 @370) (@615 (@2459 @282) @614))) -@3286 := {F : @2448} -> - {o : @2902} -> - (hB : @3110) -> - (hfn : @3141) -> - (hwt : @3229) -> - (hbind : @3246) -> - (hF : @3116) -> - (hA : @3117 @3258 @70) -> - (hne : @2987) -> - @2990 - (fun (ro : @2989) => - @2996 - (@3121 - (@615 (@5 @3197) (@615 (@2171 @2981) (@615 (@2371 @975) (@615 (@2459 @387) @614)))) - @4)) -@3287 := @3223 @2629 -@3288 := @2860 @3142 -@3305 := @2960 - (@3145 @3227 @2619) - (@2968 - (@2620 (@2611 @2672) (@2620 (@2613 @2729) (@2620 (@2615 @2787) (@2620 (@2617 @2845) @2619))))) -@3307 := @3115 (@2977 @2629) -@3309 := @3117 @3176 @70 -@3310 := @2992 @2629 -@3338 := {o : @2902} -> - (hB : @3110) -> - (hfn : @3141) -> - (hwt : @3288) -> - (hbind : @3305) -> - (hF : @3307) -> - (hA : @3309) -> - (hne : @2987) -> - @2990 - (fun (ro : @2989) => - @2991 - (@3310 @282 @4) - (@3121 (@615 (@5 @2981) (@615 (@2171 @975) (@615 (@2371 @387) (@615 (@2459 @378) @614)))) @4)) -@3339 := @3287 @2885 -@3340 := @2868 @3142 -@3357 := @2960 - (@3145 @2859 @2619) - (@2968 - (@2620 (@2611 @2655) (@2620 (@2613 @2712) (@2620 (@2615 @2770) (@2620 (@2617 @1575) @2619))))) -@3358 := @3117 @3162 -@3362 := @2881 @370 @282 @67 @68 -@3363 := @3358 @3362 -@3367 := @2881 @378 @370 @282 @67 -@3388 := (hB : @3110) -> - (hfn : @3141) -> - (hwt : @3340) -> - (hbind : @3357) -> - (hF : @3307) -> - (hA : @3363) -> - (hne : @2903 @3367 @2908) -> - @2990 (fun (ro : @2989) => @2991 (@3310 (@2881 @975 @387 @378 @370) @4) (@3121 @3192 @4)) -@3389 := @3339 @2653 -@3390 := @2875 @3142 -@3407 := @2960 - (@3145 @2867 @2619) - (@2968 - (@2620 (@2611 @2669) (@2620 (@2613 @2726) (@2620 (@2615 @2784) (@2620 (@2617 @1591) @2619))))) -@3408 := @3117 @3227 -@3412 := @2881 @282 @67 @68 @70 -@3433 := (hfn : @3141) -> - (hwt : @3390) -> - (hbind : @3407) -> - (hF : @3307) -> - (hA : @3408 @3412) -> - (hne : @2903 @3362 @2908) -> - @2990 (fun (ro : @2989) => @2991 (@3310 (@2881 @387 @378 @370 @282) @4) (@3121 @3258 @4)) -@3436 := @3389 (@1136 @2936 @3111) -@3437 := @2879 @3142 -@3454 := @2960 - (@3145 @2874 @2619) - (@2968 - (@2620 (@2611 @2684) (@2620 (@2613 @2741) (@2620 (@2615 @2799) (@2620 (@2617 @1572) @2619))))) -@3455 := @3117 @2859 -@3459 := @2881 @67 @68 @70 @71 -@3475 := (hwt : @3437) -> - (hbind : @3454) -> - (hF : @3307) -> - (hA : @3455 @3459) -> - (hne : @2903 @3412 @2908) -> @2990 (fun (ro : @2989) => @2991 (@3310 @3367 @4) (@3121 @3176 @4)) -@3476 := @3436 @2878 -@3478 := @3145 @2605 @2619 -@3481 := @2960 @3478 (@2968 @2628) -@3482 := @3117 @2867 -@3486 := @2881 @68 @70 @71 @73 -@3501 := (hbind : @3481) -> - (hF : @3307) -> - (hA : @3482 @3486) -> - (hne : @2903 @3459 @2908) -> @2990 (fun (ro : @2989) => @2991 (@3310 @3362 @4) (@3121 @3162 @4)) -@3504 := @3476 (@1136 @2959 @3478) -@3505 := @3117 @2874 -@3509 := @2881 @70 @71 @73 @69 -@3523 := (hF : @3307) -> - (hA : @3505 @3509) -> - (hne : @2903 @3486 @2908) -> @2990 (fun (ro : @2989) => @2991 (@3310 @3412 @4) (@3121 @3227 @4)) -@3526 := @3504 (@1136 @2971 @3114) -@3528 := @3117 @2605 @2885 -@3530 := @2903 @3509 @2908 -@3531 := @3310 @3459 -@3533 := @2991 (@3531 @4) -@3534 := @3121 @2859 -@3535 := @3534 @4 -@3540 := (hA : @3528) -> (hne : @3530) -> @2990 (fun (ro : @2989) => @3533 @3535) -@3541 := @3526 @2900 -@3543 := @2903 @2885 @2908 -@3544 := @3310 @3486 -@3546 := @2991 (@3544 @4) -@3547 := @3121 @2867 -@3552 := (hne : @3543) -> @2990 (fun (ro : @2989) => @3546 (@3547 @4)) -@3553 := @3541 @2923 -@3556 := @2991 (@3310 @3509 @4) -@3558 := @3121 @2874 @4 -@3559 := @3556 @3558 -@3561 := @2990 (fun (ro : @2989) => @3559) -@3562 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.accepts -@3566 := @3562 @71 @73 @69 @72 -@3567 := LexLeanPreservation.someObs -@3568 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.denote -@3573 := @3567 (@3568 @71 @73 @69 @72) -@3575 := LexLeanPreservation.Obs.value @1632 -@3576 := Not -@3577 := @3576 @3566 -@3581 := @3562 @70 @71 @73 @69 -@3586 := @3567 (@3568 @70 @71 @73 @69) -@3587 := @3576 @3581 -@3595 := @3581 -> @3310 (@3567 (@3568 @68 @70 @71 @73)) @72 -@3596 := @3310 @3575 -@3597 := @3596 @72 -@3598 := @3587 -> @3597 -@3600 := @2991 @3595 @3598 -@3604 := @2990 (fun (__e_ro : @2989) => @2991 @3558 @3600) -@3605 := fun (__e_ro : @2989) => @3559 -@3606 := @3544 @72 -@3607 := @3547 @72 -@3608 := And.left -@3609 := And.right -@3612 := @3608 @3606 @3607 @4 -@3615 := @3609 @3606 @3607 @4 -@3616 := @3310 @4 -@3618 := fun (__e_o : @2902) => @3616 @69 -@3619 := Eq.subst.{1} -@3623 := @3562 @68 @70 @71 @73 -@3624 := @3576 @3623 -@3630 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.entry_accepts @67 @68 @70 @71 @4 -@3635 := @3567 (@3568 @67 @68 @70 @71) -@3640 := @3608 (@3531 @69) (@3534 @69) @72 -@3642 := fun (__e_o : @2902) => @3616 @73 -@3645 := @3619 @2902 @3642 @3459 -@3649 := fun (__e_h : @3623) => @3645 @3635 @3630 @3640 -@3655 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.entry_refuses @67 @68 @70 @71 @4 -@3659 := fun (__e_h : @3624) => @3645 @3575 @3655 @3640 -@3660 := And.intro -@3663 := @3623 -> @3310 @3635 @69 -@3665 := @3624 -> @3596 @69 -@3667 := @2991 @3663 @3665 -@3671 := @3660 @3663 @3665 @3649 @3659 -@3675 := @3660 @3607 @3667 @3615 @3671 -@3676 := Exists.intro.{1} -@3677 := @2991 @3535 -@3681 := @3562 @67 @68 @70 @71 -@3695 := fun (__e_ro : @2989) => - @3677 (@2991 (@3681 -> @3310 (@3567 (@3568 @282 @67 @68 @70)) @72) (@3576 @3681 -> @3597)) -@3699 := @3676 @2989 @3695 @72 @3675 -@3701 := @2991 @3606 @3607 -@3703 := fun (__e_ro : @2989) => fun (__e_hand : @3559) => @3699 -@3709 := Exists.elim.{1} @2989 @3605 @3604 @3553 @3703 -@3710 := LexLeanPreservation.Rust.RepresentableL -@3711 := @2171 @69 -@3712 := @2371 @72 -@3714 := @615 @2584 @614 -@3716 := @615 @3712 @3714 -@3720 := @3710 (@1618 (@615 @3711 @3716)) -@3721 := (__e_hrep : @3720) -> @3604 -@3722 := fun (__e_hrep : @3720) => @3709 -@3723 := (spare : @2451) -> @3721 -@3724 := fun (spare : @2451) => @3722 -@3725 := (picks : @2368) -> @3723 -@3726 := fun (picks : @2368) => @3724 -@3727 := (ledger : @2170) -> @3725 -@3728 := fun (ledger : @2170) => @3726 -@3729 := (g : @3) -> @3727 -@3730 := fun (g : @3) => @3728 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R0/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R0/RustStd.lean deleted file mode 100644 index 02f13dd85..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R0/RustStd.lean +++ /dev/null @@ -1,180 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [{ constructors := [[(.list .nat), (.list (.adt 0)), (.list (.pair .string .int)), (.option (.adt 0)), (.list (.pair .nat (.adt 0)))], [(.list (.pair .nat .int))], [(.result (.adt 0) .nat)]] }, - { constructors := [[(.list (.pair .string .int)), .string]] }], functions := [ - { parameters := [0, 1, 2, 3], types := [(.adt 0), (.adt 1), (.option (.list .nat)), (.list (.list (.pair .nat .bool)))], result := (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool)))))), - body := (.build .pair (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool)))))) [(.call 1 [(.var 0)]), (.build .pair (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))) [(.var 1), (.build .pair (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool)))) [(.var 2), (.var 3)])])]) }, - { parameters := [0], types := [(.adt 0)], result := .nat, - body := (.«match» .nat (.var 0) [(.arm (.adt 0) [1, 2, 3, 4, 5] (.prim .length [(.var 1)])), (.arm (.adt 1) [6] (.prim .length [(.var 6)])), (.arm (.adt 2) [7] (.value .nat (.nat 0)))]) }, - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.«match» .bool (.var 0) [(.arm (.adt 0) [1, 2, 3, 4, 5] (.cond (.call 3 [(.var 1)]) (.cond (.call 4 [(.var 2)]) (.cond (.call 5 [(.var 3)]) (.cond (.call 7 [(.var 4)]) (.cond (.call 8 [(.var 5)]) (.build .true .bool []) (.build .false .bool [])) (.build .false .bool [])) (.build .false .bool [])) (.build .false .bool [])) (.build .false .bool []))), (.arm (.adt 1) [6] (.cond (.call 11 [(.var 6)]) (.build .true .bool []) (.build .false .bool []))), (.arm (.adt 2) [7] (.cond (.call 12 [(.var 7)]) (.build .true .bool []) (.build .false .bool [])))]) }, - { parameters := [0], types := [(.list .nat)], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.var 1), (.var 3)]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 3 [(.var 2)]) (.build .false .bool [])))]))]) }, - { parameters := [0], types := [(.list (.adt 0))], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 2 [(.var 1)]) (.call 4 [(.var 2)]) (.build .false .bool [])))]) }, - { parameters := [0], types := [(.list (.pair .string .int))], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 6 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 5 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, - { parameters := [0], types := [.int], result := .bool, - body := (.build .true .bool []) }, - { parameters := [0], types := [(.option (.adt 0))], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .none [] (.build .true .bool [])), (.arm .some [1] (.call 2 [(.var 1)]))]) }, - { parameters := [0], types := [(.list (.pair .nat (.adt 0)))], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 9 [(.var 1)]) (.call 8 [(.var 2)]) (.build .false .bool [])))]) }, - { parameters := [0], types := [(.pair .nat (.adt 0))], result := .bool, - body := (.cond (.call 10 [(.first (.var 0))]) (.call 2 [(.second (.var 0))]) (.build .false .bool [])) }, - { parameters := [0], types := [.nat], result := .bool, - body := (.build .true .bool []) }, - { parameters := [0], types := [(.list (.pair .nat .int))], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 6 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 11 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, - { parameters := [0], types := [(.result (.adt 0) .nat)], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .ok [1] (.call 2 [(.var 1)])), (.arm .error [2] (.call 10 [(.var 2)]))]) }, - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.«match» .bool (.var 0) [(.arm (.adt 0) [1, 2] (.cond (.call 5 [(.var 1)]) (.build .true .bool []) (.build .false .bool [])))]) }, - { parameters := [0], types := [(.option (.list .nat))], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .none [] (.build .true .bool [])), (.arm .some [1] (.call 3 [(.var 1)]))]) }, - { parameters := [0], types := [(.list (.list (.pair .nat .bool)))], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 16 [(.var 1)]) (.call 15 [(.var 2)]) (.build .false .bool [])))]) }, - { parameters := [0], types := [(.list (.pair .nat .bool))], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 17 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 16 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, - { parameters := [0], types := [.bool], result := .bool, - body := (.build .true .bool []) }, - { parameters := [0, 1, 2, 3], types := [(.adt 0), (.adt 1), (.option (.list .nat)), (.list (.list (.pair .nat .bool)))], result := (.option (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))), - body := (.cond (.call 2 [(.var 0)]) (.cond (.call 13 [(.var 1)]) (.cond (.call 14 [(.var 2)]) (.cond (.call 15 [(.var 3)]) (.build .some (.option (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [(.call 0 [(.var 0), (.var 1), (.var 2), (.var 3)])]) (.build .none (.option (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])) (.build .none (.option (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])) (.build .none (.option (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])) (.build .none (.option (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.enum (.adt 0) [{ number := 0, fields := [(.list .nat), (.list (.adt 0)), (.list (.pair .str .int)), (.rc (.option (.adt 0))), (.list (.pair .nat (.adt 0)))] }, { number := 1, fields := [(.list (.pair .nat .int))] }, { number := 2, fields := [(.rc (.result (.adt 0) .nat))] }]), - (.enum (.adt 1) [{ number := 0, fields := [(.list (.pair .str .int)), .str] }]), - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 1) }, { pattern := (.bind (.generated .binding 2)), type := (.option (.list .nat)) }, { pattern := (.bind (.generated .binding 3)), type := (.list (.list (.pair .nat .bool))) }] (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool)))))) (.mk [] (.pair (.call (.function 1) [(.move (.generated .binding 0))] false) (.pair (.move (.generated .binding 1)) (.pair (.move (.generated .binding 2)) (.move (.generated .binding 3))))))), - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .nat (.mk [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 1)) [(.mk (.adt 0 0 [(.bind (.generated .binding 1)), .wild, .wild, .wild, .wild]) (.mk [(.mk (.bind (.generated .operand 2)) none (.move (.generated .binding 1)))] (.call (.runtime .lengthList) [(.move (.generated .operand 2))] false))), (.mk (.adt 0 1 [(.bind (.generated .binding 6))]) (.mk [(.mk (.bind (.generated .operand 3)) none (.move (.generated .binding 6)))] (.call (.runtime .lengthList) [(.move (.generated .operand 3))] false))), (.mk (.adt 0 2 [.wild]) (.mk [] (.lit (.nat 0))))]))), - (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .holder 4)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 4)) [(.mk (.adt 0 0 [(.bind (.generated .binding 1)), (.bind (.generated .binding 2)), (.bind (.generated .binding 3)), (.bind (.generated .boxed 5)), (.bind (.generated .binding 5))]) (.mk [(.mk (.bind (.generated .binding 4)) none (.unbox (.generated .boxed 5)))] (.cond (.call (.function 3) [(.move (.generated .binding 1))] false) (.mk [] (.cond (.call (.function 4) [(.move (.generated .binding 2))] false) (.mk [] (.cond (.call (.function 5) [(.move (.generated .binding 3))] false) (.mk [] (.cond (.call (.function 7) [(.move (.generated .binding 4))] false) (.mk [] (.call (.function 8) [(.move (.generated .binding 5))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))))), (.mk (.adt 0 1 [(.bind (.generated .binding 6))]) (.mk [] (.call (.function 11) [(.move (.generated .binding 6))] false))), (.mk (.adt 0 2 [(.bind (.generated .boxed 6))]) (.mk [(.mk (.bind (.generated .binding 7)) none (.unbox (.generated .boxed 6)))] (.call (.function 12) [(.move (.generated .binding 7))] false)))]))), - (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }] .bool (.mk [(.mk (.bind (.generated .holder 7)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 7)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [(.mk (.bind (.generated .holder 8)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 8)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 11)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false))))] (.cond (.matchOn (.move (.generated .holder 11)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 3) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])))]))), - (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.adt 0)) }] .bool (.mk [(.mk (.bind (.generated .holder 12)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 12)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 2) [(.move (.generated .binding 1))] false) (.mk [] (.call (.function 4) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))]))), - (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .str .int)) }] .bool (.mk [(.mk (.bind (.generated .holder 13)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 13)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 6) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 14))]) none (.move (.generated .binding 1)))] (.move (.generated .part 14))))] false) (.mk [(.mk (.bind (.generated .holder 15)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 15)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 20)) none (.block (.mk [(.mk (.bind (.generated .operand 18)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 16)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 16))))), (.mk (.bind (.generated .operand 19)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 17)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 17)))))] (.call (.runtime .compare) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false))))] (.cond (.matchOn (.move (.generated .holder 20)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 5) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]))), - (.function (.generated .function 6) [{ pattern := .wild, type := .int }] .bool (.mk [] (.lit (.bool true)))), - (.function (.generated .function 7) [{ pattern := (.bind (.generated .binding 0)), type := (.option (.adt 0)) }] .bool (.mk [(.mk (.bind (.generated .holder 21)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 21)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.call (.function 2) [(.move (.generated .binding 1))] false)))]))), - (.function (.generated .function 8) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat (.adt 0))) }] .bool (.mk [(.mk (.bind (.generated .holder 22)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 22)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 9) [(.move (.generated .binding 1))] false) (.mk [] (.call (.function 8) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))]))), - (.function (.generated .function 9) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat (.adt 0)) }] .bool (.mk [] (.cond (.call (.function 10) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 23)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 23))))] false) (.mk [] (.call (.function 2) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 24))]) none (.move (.generated .binding 0)))] (.move (.generated .part 24))))] false)) (.mk [] (.lit (.bool false)))))), - (.function (.generated .function 10) [{ pattern := .wild, type := .nat }] .bool (.mk [] (.lit (.bool true)))), - (.function (.generated .function 11) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat .int)) }] .bool (.mk [(.mk (.bind (.generated .holder 25)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 25)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 6) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 26))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 26))))] false) (.mk [(.mk (.bind (.generated .holder 27)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 27)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 32)) none (.block (.mk [(.mk (.bind (.generated .operand 30)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 28)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 28))))), (.mk (.bind (.generated .operand 31)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 29)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 29)))))] (.call (.runtime .compare) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] false))))] (.cond (.matchOn (.move (.generated .holder 32)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 11) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]))), - (.function (.generated .function 12) [{ pattern := (.bind (.generated .binding 0)), type := (.result (.adt 0) .nat) }] .bool (.mk [(.mk (.bind (.generated .holder 33)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 33)) [(.mk (.ok (.bind (.generated .binding 1))) (.mk [] (.call (.function 2) [(.move (.generated .binding 1))] false))), (.mk (.err (.bind (.generated .binding 2))) (.mk [] (.call (.function 10) [(.copy (.generated .binding 2))] false)))]))), - (.function (.generated .function 13) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .holder 34)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 34)) [(.mk (.adt 1 0 [(.bind (.generated .binding 1)), .wild]) (.mk [] (.call (.function 5) [(.move (.generated .binding 1))] false)))]))), - (.function (.generated .function 14) [{ pattern := (.bind (.generated .binding 0)), type := (.option (.list .nat)) }] .bool (.mk [(.mk (.bind (.generated .holder 35)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 35)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.call (.function 3) [(.move (.generated .binding 1))] false)))]))), - (.function (.generated .function 15) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.list (.pair .nat .bool))) }] .bool (.mk [(.mk (.bind (.generated .holder 36)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 36)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 16) [(.move (.generated .binding 1))] false) (.mk [] (.call (.function 15) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))]))), - (.function (.generated .function 16) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat .bool)) }] .bool (.mk [(.mk (.bind (.generated .holder 37)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 37)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 17) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 38))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 38))))] false) (.mk [(.mk (.bind (.generated .holder 39)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 39)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 44)) none (.block (.mk [(.mk (.bind (.generated .operand 42)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 40)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 40))))), (.mk (.bind (.generated .operand 43)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 41)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 41)))))] (.call (.runtime .compare) [(.move (.generated .operand 42)), (.move (.generated .operand 43))] false))))] (.cond (.matchOn (.move (.generated .holder 44)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 16) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]))), - (.function (.generated .function 17) [{ pattern := .wild, type := .bool }] .bool (.mk [] (.lit (.bool true)))), - (.function (.generated .function 18) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 1) }, { pattern := (.bind (.generated .binding 2)), type := (.option (.list .nat)) }, { pattern := (.bind (.generated .binding 3)), type := (.list (.list (.pair .nat .bool))) }] (.option (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) (.mk [] (.cond (.call (.function 2) [(.clone (.generated .binding 0))] false) (.mk [] (.cond (.call (.function 13) [(.clone (.generated .binding 1))] false) (.mk [] (.cond (.call (.function 14) [(.clone (.generated .binding 2))] false) (.mk [] (.cond (.call (.function 15) [(.clone (.generated .binding 3))] false) (.mk [] (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 2)), (.move (.generated .binding 3))] false)])) (.mk [] (.construct (.none (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])))) (.mk [] (.construct (.none (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])))) (.mk [] (.construct (.none (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])))) (.mk [] (.construct (.none (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])))))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [], (.pair (.call (.function 1) [(.move (.generated .binding 0))] false) (.pair (.move (.generated .binding 1)) (.pair (.move (.generated .binding 2)) (.move (.generated .binding 3))))), [(3, (.list (.list (.pair .nat .bool))), (some 3)), (2, (.option (.list .nat)), (some 2)), (1, (.adt 1), (some 1)), (0, (.adt 0), (some 0))], rfl, rfl, - (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))))⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 1)) [(.mk (.adt 0 0 [(.bind (.generated .binding 1)), .wild, .wild, .wild, .wild]) (.mk [(.mk (.bind (.generated .operand 2)) none (.move (.generated .binding 1)))] (.call (.runtime .lengthList) [(.move (.generated .operand 2))] false))), (.mk (.adt 0 1 [(.bind (.generated .binding 6))]) (.mk [(.mk (.bind (.generated .operand 3)) none (.move (.generated .binding 6)))] (.call (.runtime .lengthList) [(.move (.generated .operand 3))] false))), (.mk (.adt 0 2 [.wild]) (.mk [] (.lit (.nat 0))))]), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.adt 0)) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(5, (.list (.pair .nat (.adt 0))), none), (4, (.option (.adt 0)), none), (3, (.list (.pair .string .int)), none), (2, (.list (.adt 0)), none), (1, (.list .nat), (some 1)), (0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .operand 2)) none (.move (.generated .binding 1)))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 2))] false)) (Corr.mCons (Γ' := [(6, (.list (.pair .nat .int)), (some 6)), (0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .operand 3)) none (.move (.generated .binding 6)))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 3))] false)) (Corr.mCons (Γ' := [(7, (.result (.adt 0) .nat), none), (0, (.adt 0), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.nat 0))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.value rfl rfl))) rfl rfl rfl (Corr.prim (ts := [(.list (.pair .nat .int))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.prim (ts := [(.list .nat)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl)⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 4)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 4)) [(.mk (.adt 0 0 [(.bind (.generated .binding 1)), (.bind (.generated .binding 2)), (.bind (.generated .binding 3)), (.bind (.generated .boxed 5)), (.bind (.generated .binding 5))]) (.mk [(.mk (.bind (.generated .binding 4)) none (.unbox (.generated .boxed 5)))] (.cond (.call (.function 3) [(.move (.generated .binding 1))] false) (.mk [] (.cond (.call (.function 4) [(.move (.generated .binding 2))] false) (.mk [] (.cond (.call (.function 5) [(.move (.generated .binding 3))] false) (.mk [] (.cond (.call (.function 7) [(.move (.generated .binding 4))] false) (.mk [] (.call (.function 8) [(.move (.generated .binding 5))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))))), (.mk (.adt 0 1 [(.bind (.generated .binding 6))]) (.mk [] (.call (.function 11) [(.move (.generated .binding 6))] false))), (.mk (.adt 0 2 [(.bind (.generated .boxed 6))]) (.mk [(.mk (.bind (.generated .binding 7)) none (.unbox (.generated .boxed 6)))] (.call (.function 12) [(.move (.generated .binding 7))] false)))]), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.adt 0)) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(5, (.list (.pair .nat (.adt 0))), (some 5)), (4, (.option (.adt 0)), (some 4)), (3, (.list (.pair .string .int)), (some 3)), (2, (.list (.adt 0)), (some 2)), (1, (.list .nat), (some 1)), (0, (.adt 0), (some 0))]) (j := 0) (loads := [(.mk (.bind (.generated .binding 4)) none (.unbox (.generated .boxed 5)))]) (lets := []) (tail := (.cond (.call (.function 3) [(.move (.generated .binding 1))] false) (.mk [] (.cond (.call (.function 4) [(.move (.generated .binding 2))] false) (.mk [] (.cond (.call (.function 5) [(.move (.generated .binding 3))] false) (.mk [] (.cond (.call (.function 7) [(.move (.generated .binding 4))] false) (.mk [] (.call (.function 8) [(.move (.generated .binding 5))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (Corr.mCons (Γ' := [(6, (.list (.pair .nat .int)), (some 6)), (0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 11) [(.move (.generated .binding 6))] false)) (Corr.mCons (Γ' := [(7, (.result (.adt 0) .nat), (some 7)), (0, (.adt 0), (some 0))]) (j := 2) (loads := [(.mk (.bind (.generated .binding 7)) none (.unbox (.generated .boxed 6)))]) (lets := []) (tail := (.call (.function 12) [(.move (.generated .binding 7))] false)) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 12) [(.move (.generated .binding 7))] false)) (lk := []) (Corr.callOps (ts := [(.result (.adt 0) .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kId (Corr.bOfE (Corr.buildConst rfl)) (Corr.bOfE (Corr.buildConst rfl)) rfl))) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 11) [(.move (.generated .binding 6))] false)) (lk := []) (Corr.callOps (ts := [(.list (.pair .nat .int))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kId (Corr.bOfE (Corr.buildConst rfl)) (Corr.bOfE (Corr.buildConst rfl)) rfl))) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 3) [(.move (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [(.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 4) [(.move (.generated .binding 2))] false) (.mk [] (.cond (.call (.function 5) [(.move (.generated .binding 3))] false) (.mk [] (.cond (.call (.function 7) [(.move (.generated .binding 4))] false) (.mk [] (.call (.function 8) [(.move (.generated .binding 5))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := []) (ce := (.call (.function 4) [(.move (.generated .binding 2))] false)) (lk := []) (Corr.callOps (ts := [(.list (.adt 0))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 5) [(.move (.generated .binding 3))] false) (.mk [] (.cond (.call (.function 7) [(.move (.generated .binding 4))] false) (.mk [] (.call (.function 8) [(.move (.generated .binding 5))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := []) (ce := (.call (.function 5) [(.move (.generated .binding 3))] false)) (lk := []) (Corr.callOps (ts := [(.list (.pair .string .int))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 7) [(.move (.generated .binding 4))] false) (.mk [] (.call (.function 8) [(.move (.generated .binding 5))] false)) (.mk [] (.lit (.bool false))))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := []) (ce := (.call (.function 7) [(.move (.generated .binding 4))] false)) (lk := []) (Corr.callOps (ts := [(.option (.adt 0))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 8) [(.move (.generated .binding 5))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := []) (ce := (.call (.function 8) [(.move (.generated .binding 5))] false)) (lk := []) (Corr.callOps (ts := [(.list (.pair .nat (.adt 0)))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kId (Corr.bOfE (Corr.buildConst rfl)) (Corr.bOfE (Corr.buildConst rfl)) rfl)) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl)⟩⟩ - -theorem fun3 : FunOK program krate flags 3 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 7)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 7)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [(.mk (.bind (.generated .holder 8)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 8)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 11)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false))))] (.cond (.matchOn (.move (.generated .holder 11)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 3) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])))]), [(0, (.list .nat), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 8)) none (.clone (.generated .binding 2)))]) (tail := (.matchOn (.uncons (.generated .holder 8)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 11)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false))))] (.cond (.matchOn (.move (.generated .holder 11)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 3) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list .nat), none), (3, .nat, (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 11)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 11)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 3) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .holder 11)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false))))]) (ce := (.matchOn (.move (.generated .holder 11)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 3)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.list .nat), none), (3, .nat, (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list .nat), none), (3, .nat, (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, (.list .nat), none), (3, .nat, (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 3) [(.move (.generated .binding 2))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ - -theorem fun4 : FunOK program krate flags 4 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 12)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 12)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 2) [(.move (.generated .binding 1))] false) (.mk [] (.call (.function 4) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))]), [(0, (.list (.adt 0)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.adt 0))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list (.adt 0)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, (.list (.adt 0)), (some 2)), (1, (.adt 0), (some 1)), (0, (.list (.adt 0)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 2) [(.move (.generated .binding 1))] false) (.mk [] (.call (.function 4) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 2) [(.move (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 4) [(.move (.generated .binding 2))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.list (.adt 0))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ - -theorem fun5 : FunOK program krate flags 5 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 13)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 13)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 6) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 14))]) none (.move (.generated .binding 1)))] (.move (.generated .part 14))))] false) (.mk [(.mk (.bind (.generated .holder 15)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 15)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 20)) none (.block (.mk [(.mk (.bind (.generated .operand 18)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 16)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 16))))), (.mk (.bind (.generated .operand 19)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 17)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 17)))))] (.call (.runtime .compare) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false))))] (.cond (.matchOn (.move (.generated .holder 20)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 5) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]), [(0, (.list (.pair .string .int)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.pair .string .int))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list (.pair .string .int)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, (.list (.pair .string .int)), (some 2)), (1, (.pair .string .int), (some 1)), (0, (.list (.pair .string .int)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 6) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 14))]) none (.move (.generated .binding 1)))] (.move (.generated .part 14))))] false) (.mk [(.mk (.bind (.generated .holder 15)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 15)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 20)) none (.block (.mk [(.mk (.bind (.generated .operand 18)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 16)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 16))))), (.mk (.bind (.generated .operand 19)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 17)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 17)))))] (.call (.runtime .compare) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false))))] (.cond (.matchOn (.move (.generated .holder 20)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 5) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 6) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 14))]) none (.move (.generated .binding 1)))] (.move (.generated .part 14))))] false)) (lk := []) (Corr.callOps (ts := [.int]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 14))]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 14))) (Corr.second (ta := .string) (tb := .int) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .holder 15)) none (.clone (.generated .binding 2)))]) (ta := (.matchOn (.uncons (.generated .holder 15)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 20)) none (.block (.mk [(.mk (.bind (.generated .operand 18)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 16)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 16))))), (.mk (.bind (.generated .operand 19)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 17)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 17)))))] (.call (.runtime .compare) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false))))] (.cond (.matchOn (.move (.generated .holder 20)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 5) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (lb := []) (tb := (.lit (.bool false))) (Corr.matchArms (st := (.list (.pair .string .int))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.pair .string .int)), (some 2)), (1, (.pair .string .int), (some 1)), (0, (.list (.pair .string .int)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair .string .int)), none), (3, (.pair .string .int), (some 3)), (2, (.list (.pair .string .int)), (some 2)), (1, (.pair .string .int), (some 1)), (0, (.list (.pair .string .int)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 20)) none (.block (.mk [(.mk (.bind (.generated .operand 18)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 16)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 16))))), (.mk (.bind (.generated .operand 19)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 17)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 17)))))] (.call (.runtime .compare) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 20)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 5) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .holder 20)) none (.block (.mk [(.mk (.bind (.generated .operand 18)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 16)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 16))))), (.mk (.bind (.generated .operand 19)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 17)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 17)))))] (.call (.runtime .compare) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false))))]) (ce := (.matchOn (.move (.generated .holder 20)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 18)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 16)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 16))))), (.mk (.bind (.generated .operand 19)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 17)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 17)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false)) (Corr.prim (ts := [.string, .string]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 16)), .wild]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 16))) (Corr.first (ta := .string) (tb := .int) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 17)), .wild]) none (.move (.generated .binding 3)))]) (tail := (.move (.generated .part 17))) (Corr.first (ta := .string) (tb := .int) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.list (.pair .string .int)), none), (3, (.pair .string .int), (some 3)), (2, (.list (.pair .string .int)), (some 2)), (1, (.pair .string .int), (some 1)), (0, (.list (.pair .string .int)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair .string .int)), none), (3, (.pair .string .int), (some 3)), (2, (.list (.pair .string .int)), (some 2)), (1, (.pair .string .int), (some 1)), (0, (.list (.pair .string .int)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, (.list (.pair .string .int)), none), (3, (.pair .string .int), (some 3)), (2, (.list (.pair .string .int)), (some 2)), (1, (.pair .string .int), (some 1)), (0, (.list (.pair .string .int)), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 5) [(.move (.generated .binding 2))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.list (.pair .string .int))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ - -theorem fun6 : FunOK program krate flags 6 := - ⟨_, rfl, .inl ⟨_, _, [], (.lit (.bool true)), [(0, .int, none)], rfl, rfl, - (Corr.bOfE (Corr.buildConst rfl))⟩⟩ - -theorem fun7 : FunOK program krate flags 7 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 21)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 21)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.call (.function 2) [(.move (.generated .binding 1))] false)))]), [(0, (.option (.adt 0)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option (.adt 0))) (U := []) (view := false) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.option (.adt 0)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(1, (.adt 0), (some 1)), (0, (.option (.adt 0)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 2) [(.move (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ - -theorem fun8 : FunOK program krate flags 8 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 22)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 22)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 9) [(.move (.generated .binding 1))] false) (.mk [] (.call (.function 8) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))]), [(0, (.list (.pair .nat (.adt 0))), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.pair .nat (.adt 0)))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list (.pair .nat (.adt 0))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, (.list (.pair .nat (.adt 0))), (some 2)), (1, (.pair .nat (.adt 0)), (some 1)), (0, (.list (.pair .nat (.adt 0))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 9) [(.move (.generated .binding 1))] false) (.mk [] (.call (.function 8) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 9) [(.move (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [(.pair .nat (.adt 0))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 8) [(.move (.generated .binding 2))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.list (.pair .nat (.adt 0)))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ - -theorem fun9 : FunOK program krate flags 9 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 10) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 23)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 23))))] false) (.mk [] (.call (.function 2) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 24))]) none (.move (.generated .binding 0)))] (.move (.generated .part 24))))] false)) (.mk [] (.lit (.bool false)))), [(0, (.pair .nat (.adt 0)), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 10) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 23)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 23))))] false)) (lk := []) (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 23)), .wild]) none (.move (.generated .binding 0)))]) (tail := (.move (.generated .part 23))) (Corr.first (ta := .nat) (tb := (.adt 0)) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 2) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 24))]) none (.move (.generated .binding 0)))] (.move (.generated .part 24))))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 24))]) none (.move (.generated .binding 0)))]) (tail := (.move (.generated .part 24))) (Corr.second (ta := .nat) (tb := (.adt 0)) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ - -theorem fun10 : FunOK program krate flags 10 := - ⟨_, rfl, .inl ⟨_, _, [], (.lit (.bool true)), [(0, .nat, none)], rfl, rfl, - (Corr.bOfE (Corr.buildConst rfl))⟩⟩ - -theorem fun11 : FunOK program krate flags 11 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 25)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 25)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 6) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 26))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 26))))] false) (.mk [(.mk (.bind (.generated .holder 27)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 27)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 32)) none (.block (.mk [(.mk (.bind (.generated .operand 30)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 28)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 28))))), (.mk (.bind (.generated .operand 31)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 29)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 29)))))] (.call (.runtime .compare) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] false))))] (.cond (.matchOn (.move (.generated .holder 32)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 11) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]), [(0, (.list (.pair .nat .int)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.pair .nat .int))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list (.pair .nat .int)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, (.list (.pair .nat .int)), (some 2)), (1, (.pair .nat .int), (some 1)), (0, (.list (.pair .nat .int)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 6) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 26))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 26))))] false) (.mk [(.mk (.bind (.generated .holder 27)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 27)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 32)) none (.block (.mk [(.mk (.bind (.generated .operand 30)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 28)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 28))))), (.mk (.bind (.generated .operand 31)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 29)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 29)))))] (.call (.runtime .compare) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] false))))] (.cond (.matchOn (.move (.generated .holder 32)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 11) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 6) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 26))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 26))))] false)) (lk := []) (Corr.callOps (ts := [.int]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 26))]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 26))) (Corr.second (ta := .nat) (tb := .int) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .holder 27)) none (.clone (.generated .binding 2)))]) (ta := (.matchOn (.uncons (.generated .holder 27)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 32)) none (.block (.mk [(.mk (.bind (.generated .operand 30)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 28)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 28))))), (.mk (.bind (.generated .operand 31)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 29)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 29)))))] (.call (.runtime .compare) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] false))))] (.cond (.matchOn (.move (.generated .holder 32)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 11) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (lb := []) (tb := (.lit (.bool false))) (Corr.matchArms (st := (.list (.pair .nat .int))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.pair .nat .int)), (some 2)), (1, (.pair .nat .int), (some 1)), (0, (.list (.pair .nat .int)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair .nat .int)), none), (3, (.pair .nat .int), (some 3)), (2, (.list (.pair .nat .int)), (some 2)), (1, (.pair .nat .int), (some 1)), (0, (.list (.pair .nat .int)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 32)) none (.block (.mk [(.mk (.bind (.generated .operand 30)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 28)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 28))))), (.mk (.bind (.generated .operand 31)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 29)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 29)))))] (.call (.runtime .compare) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 32)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 11) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .holder 32)) none (.block (.mk [(.mk (.bind (.generated .operand 30)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 28)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 28))))), (.mk (.bind (.generated .operand 31)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 29)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 29)))))] (.call (.runtime .compare) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] false))))]) (ce := (.matchOn (.move (.generated .holder 32)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 30)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 28)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 28))))), (.mk (.bind (.generated .operand 31)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 29)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 29)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 28)), .wild]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 28))) (Corr.first (ta := .nat) (tb := .int) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 29)), .wild]) none (.copy (.generated .binding 3)))]) (tail := (.move (.generated .part 29))) (Corr.first (ta := .nat) (tb := .int) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.list (.pair .nat .int)), none), (3, (.pair .nat .int), (some 3)), (2, (.list (.pair .nat .int)), (some 2)), (1, (.pair .nat .int), (some 1)), (0, (.list (.pair .nat .int)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair .nat .int)), none), (3, (.pair .nat .int), (some 3)), (2, (.list (.pair .nat .int)), (some 2)), (1, (.pair .nat .int), (some 1)), (0, (.list (.pair .nat .int)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, (.list (.pair .nat .int)), none), (3, (.pair .nat .int), (some 3)), (2, (.list (.pair .nat .int)), (some 2)), (1, (.pair .nat .int), (some 1)), (0, (.list (.pair .nat .int)), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 11) [(.move (.generated .binding 2))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.list (.pair .nat .int))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ - -theorem fun12 : FunOK program krate flags 12 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 33)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 33)) [(.mk (.ok (.bind (.generated .binding 1))) (.mk [] (.call (.function 2) [(.move (.generated .binding 1))] false))), (.mk (.err (.bind (.generated .binding 2))) (.mk [] (.call (.function 10) [(.copy (.generated .binding 2))] false)))]), [(0, (.result (.adt 0) .nat), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.result (.adt 0) .nat)) (U := []) (view := false) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.adt 0), (some 1)), (0, (.result (.adt 0) .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.call (.function 2) [(.move (.generated .binding 1))] false)) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (0, (.result (.adt 0) .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 10) [(.copy (.generated .binding 2))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl rfl rfl)⟩⟩ - -theorem fun13 : FunOK program krate flags 13 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 34)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 34)) [(.mk (.adt 1 0 [(.bind (.generated .binding 1)), .wild]) (.mk [] (.call (.function 5) [(.move (.generated .binding 1))] false)))]), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.adt 1)) (U := []) (view := false) (idx := [0]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, .string, none), (1, (.list (.pair .string .int)), (some 1)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.call (.function 5) [(.move (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 5) [(.move (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [(.list (.pair .string .int))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kId (Corr.bOfE (Corr.buildConst rfl)) (Corr.bOfE (Corr.buildConst rfl)) rfl))) rfl rfl rfl)⟩⟩ - -theorem fun14 : FunOK program krate flags 14 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 35)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 35)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.call (.function 3) [(.move (.generated .binding 1))] false)))]), [(0, (.option (.list .nat)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option (.list .nat))) (U := []) (view := false) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.option (.list .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(1, (.list .nat), (some 1)), (0, (.option (.list .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 3) [(.move (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ - -theorem fun15 : FunOK program krate flags 15 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 36)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 36)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 16) [(.move (.generated .binding 1))] false) (.mk [] (.call (.function 15) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))]), [(0, (.list (.list (.pair .nat .bool))), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.list (.pair .nat .bool)))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list (.list (.pair .nat .bool))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, (.list (.list (.pair .nat .bool))), (some 2)), (1, (.list (.pair .nat .bool)), (some 1)), (0, (.list (.list (.pair .nat .bool))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 16) [(.move (.generated .binding 1))] false) (.mk [] (.call (.function 15) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 16) [(.move (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [(.list (.pair .nat .bool))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 15) [(.move (.generated .binding 2))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.list (.list (.pair .nat .bool)))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ - -theorem fun16 : FunOK program krate flags 16 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 37)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 37)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 17) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 38))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 38))))] false) (.mk [(.mk (.bind (.generated .holder 39)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 39)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 44)) none (.block (.mk [(.mk (.bind (.generated .operand 42)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 40)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 40))))), (.mk (.bind (.generated .operand 43)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 41)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 41)))))] (.call (.runtime .compare) [(.move (.generated .operand 42)), (.move (.generated .operand 43))] false))))] (.cond (.matchOn (.move (.generated .holder 44)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 16) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]), [(0, (.list (.pair .nat .bool)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.pair .nat .bool))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list (.pair .nat .bool)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, (.list (.pair .nat .bool)), (some 2)), (1, (.pair .nat .bool), (some 1)), (0, (.list (.pair .nat .bool)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 17) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 38))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 38))))] false) (.mk [(.mk (.bind (.generated .holder 39)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 39)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 44)) none (.block (.mk [(.mk (.bind (.generated .operand 42)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 40)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 40))))), (.mk (.bind (.generated .operand 43)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 41)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 41)))))] (.call (.runtime .compare) [(.move (.generated .operand 42)), (.move (.generated .operand 43))] false))))] (.cond (.matchOn (.move (.generated .holder 44)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 16) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 17) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 38))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 38))))] false)) (lk := []) (Corr.callOps (ts := [.bool]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 38))]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 38))) (Corr.second (ta := .nat) (tb := .bool) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .holder 39)) none (.clone (.generated .binding 2)))]) (ta := (.matchOn (.uncons (.generated .holder 39)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 44)) none (.block (.mk [(.mk (.bind (.generated .operand 42)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 40)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 40))))), (.mk (.bind (.generated .operand 43)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 41)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 41)))))] (.call (.runtime .compare) [(.move (.generated .operand 42)), (.move (.generated .operand 43))] false))))] (.cond (.matchOn (.move (.generated .holder 44)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 16) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (lb := []) (tb := (.lit (.bool false))) (Corr.matchArms (st := (.list (.pair .nat .bool))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.pair .nat .bool)), (some 2)), (1, (.pair .nat .bool), (some 1)), (0, (.list (.pair .nat .bool)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair .nat .bool)), none), (3, (.pair .nat .bool), (some 3)), (2, (.list (.pair .nat .bool)), (some 2)), (1, (.pair .nat .bool), (some 1)), (0, (.list (.pair .nat .bool)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 44)) none (.block (.mk [(.mk (.bind (.generated .operand 42)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 40)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 40))))), (.mk (.bind (.generated .operand 43)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 41)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 41)))))] (.call (.runtime .compare) [(.move (.generated .operand 42)), (.move (.generated .operand 43))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 44)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 16) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .holder 44)) none (.block (.mk [(.mk (.bind (.generated .operand 42)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 40)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 40))))), (.mk (.bind (.generated .operand 43)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 41)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 41)))))] (.call (.runtime .compare) [(.move (.generated .operand 42)), (.move (.generated .operand 43))] false))))]) (ce := (.matchOn (.move (.generated .holder 44)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 42)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 40)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 40))))), (.mk (.bind (.generated .operand 43)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 41)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 41)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 42)), (.move (.generated .operand 43))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 40)), .wild]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 40))) (Corr.first (ta := .nat) (tb := .bool) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 41)), .wild]) none (.copy (.generated .binding 3)))]) (tail := (.move (.generated .part 41))) (Corr.first (ta := .nat) (tb := .bool) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.list (.pair .nat .bool)), none), (3, (.pair .nat .bool), (some 3)), (2, (.list (.pair .nat .bool)), (some 2)), (1, (.pair .nat .bool), (some 1)), (0, (.list (.pair .nat .bool)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair .nat .bool)), none), (3, (.pair .nat .bool), (some 3)), (2, (.list (.pair .nat .bool)), (some 2)), (1, (.pair .nat .bool), (some 1)), (0, (.list (.pair .nat .bool)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, (.list (.pair .nat .bool)), none), (3, (.pair .nat .bool), (some 3)), (2, (.list (.pair .nat .bool)), (some 2)), (1, (.pair .nat .bool), (some 1)), (0, (.list (.pair .nat .bool)), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 16) [(.move (.generated .binding 2))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.list (.pair .nat .bool))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ - -theorem fun17 : FunOK program krate flags 17 := - ⟨_, rfl, .inl ⟨_, _, [], (.lit (.bool true)), [(0, .bool, none)], rfl, rfl, - (Corr.bOfE (Corr.buildConst rfl))⟩⟩ - -theorem fun18 : FunOK program krate flags 18 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 2) [(.clone (.generated .binding 0))] false) (.mk [] (.cond (.call (.function 13) [(.clone (.generated .binding 1))] false) (.mk [] (.cond (.call (.function 14) [(.clone (.generated .binding 2))] false) (.mk [] (.cond (.call (.function 15) [(.clone (.generated .binding 3))] false) (.mk [] (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 2)), (.move (.generated .binding 3))] false)])) (.mk [] (.construct (.none (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])))) (.mk [] (.construct (.none (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])))) (.mk [] (.construct (.none (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])))) (.mk [] (.construct (.none (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) []))), [(3, (.list (.list (.pair .nat .bool))), (some 3)), (2, (.option (.list .nat)), (some 2)), (1, (.adt 1), (some 1)), (0, (.adt 0), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 2) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 13) [(.clone (.generated .binding 1))] false) (.mk [] (.cond (.call (.function 14) [(.clone (.generated .binding 2))] false) (.mk [] (.cond (.call (.function 15) [(.clone (.generated .binding 3))] false) (.mk [] (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 2)), (.move (.generated .binding 3))] false)])) (.mk [] (.construct (.none (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])))) (.mk [] (.construct (.none (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])))) (.mk [] (.construct (.none (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])))) (lb := []) (tb := (.construct (.none (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])) (Corr.cond (lc := []) (ce := (.call (.function 13) [(.clone (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 14) [(.clone (.generated .binding 2))] false) (.mk [] (.cond (.call (.function 15) [(.clone (.generated .binding 3))] false) (.mk [] (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 2)), (.move (.generated .binding 3))] false)])) (.mk [] (.construct (.none (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])))) (.mk [] (.construct (.none (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])))) (lb := []) (tb := (.construct (.none (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])) (Corr.cond (lc := []) (ce := (.call (.function 14) [(.clone (.generated .binding 2))] false)) (lk := []) (Corr.callOps (ts := [(.option (.list .nat))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 15) [(.clone (.generated .binding 3))] false) (.mk [] (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 2)), (.move (.generated .binding 3))] false)])) (.mk [] (.construct (.none (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])))) (lb := []) (tb := (.construct (.none (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])) (Corr.cond (lc := []) (ce := (.call (.function 15) [(.clone (.generated .binding 3))] false)) (lk := []) (Corr.callOps (ts := [(.list (.list (.pair .nat .bool)))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 2)), (.move (.generated .binding 3))] false)])) (lb := []) (tb := (.construct (.none (.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))) [])) (Corr.build (ts := [(.pair .nat (.pair (.adt 1) (.pair (.option (.list .nat)) (.list (.list (.pair .nat .bool))))))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0), (.adt 1), (.option (.list .nat)), (.list (.list (.pair .nat .bool)))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | 3 => exact fun3 - | 4 => exact fun4 - | 5 => exact fun5 - | 6 => exact fun6 - | 7 => exact fun7 - | 8 => exact fun8 - | 9 => exact fun9 - | 10 => exact fun10 - | 11 => exact fun11 - | 12 => exact fun12 - | 13 => exact fun13 - | 14 => exact fun14 - | 15 => exact fun15 - | 16 => exact fun16 - | 17 => exact fun17 - | 18 => exact fun18 - | _ + 19 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R1.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R1.lean deleted file mode 100644 index ad4d4f071..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R1.lean +++ /dev/null @@ -1,114 +0,0 @@ -import LexLeanPreservation.Core -import LexLeanPreservation.Values -import LexLeanPreservation.Primitives -import LexLeanPreservation.Fixed -import LexLeanPreservation.Keys -import LexLeanPreservation.Templates -import LexLeanPreservation.Validate -import Coverage.Boundary -import Coverage.Colls -import Coverage.Main -import Coverage.Prims -import Coverage.RecRoots -import Coverage.Recur -import Coverage.Syntax -import Coverage.Types -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -set_option linter.unusedVariables false -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1 - -def __prog : _root_.LexLeanTarget.TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1, 2], types := [(.list (.pair .string .nat)), .string, .nat], result := (.pair (.list (.pair .string .nat)) (.pair (.list (.pair .string .nat)) (.pair (.option .nat) (.pair .bool (.pair (.list .string) (.pair (.list .nat) (.pair .nat (.list (.pair .string .nat))))))))), - body := (.build .pair (.pair (.list (.pair .string .nat)) (.pair (.list (.pair .string .nat)) (.pair (.option .nat) (.pair .bool (.pair (.list .string) (.pair (.list .nat) (.pair .nat (.list (.pair .string .nat))))))))) [(.call 1 [(.var 0), (.var 1), (.var 2)]), (.build .pair (.pair (.list (.pair .string .nat)) (.pair (.option .nat) (.pair .bool (.pair (.list .string) (.pair (.list .nat) (.pair .nat (.list (.pair .string .nat)))))))) [(.call 2 [(.var 0), (.var 1)]), (.build .pair (.pair (.option .nat) (.pair .bool (.pair (.list .string) (.pair (.list .nat) (.pair .nat (.list (.pair .string .nat))))))) [(.call 3 [(.var 0), (.var 1)]), (.build .pair (.pair .bool (.pair (.list .string) (.pair (.list .nat) (.pair .nat (.list (.pair .string .nat)))))) [(.call 4 [(.var 0), (.var 1)]), (.build .pair (.pair (.list .string) (.pair (.list .nat) (.pair .nat (.list (.pair .string .nat))))) [(.call 6 [(.var 0)]), (.build .pair (.pair (.list .nat) (.pair .nat (.list (.pair .string .nat)))) [(.call 7 [(.var 0)]), (.build .pair (.pair .nat (.list (.pair .string .nat))) [(.prim .length [(.var 0)]), (.var 0)])])])])])])]) }, - { parameters := [0, 1, 2], types := [(.list (.pair .string .nat)), .string, .nat], result := (.list (.pair .string .nat)), - body := (.«match» (.list (.pair .string .nat)) (.var 0) [(.arm .nil [] (.build .cons (.list (.pair .string .nat)) [(.build .pair (.pair .string .nat) [(.var 1), (.var 2)]), (.build .nil (.list (.pair .string .nat)) [])])), (.arm .cons [3, 4] (.«match» (.list (.pair .string .nat)) (.prim .compare [(.var 1), (.first (.var 3))]) [(.arm .lt [] (.build .cons (.list (.pair .string .nat)) [(.build .pair (.pair .string .nat) [(.var 1), (.var 2)]), (.var 0)])), (.arm .eq [] (.build .cons (.list (.pair .string .nat)) [(.build .pair (.pair .string .nat) [(.var 1), (.var 2)]), (.var 4)])), (.arm .gt [] (.build .cons (.list (.pair .string .nat)) [(.var 3), (.call 1 [(.var 4), (.var 1), (.var 2)])]))]))]) }, - { parameters := [0, 1], types := [(.list (.pair .string .nat)), .string], result := (.list (.pair .string .nat)), - body := (.«match» (.list (.pair .string .nat)) (.var 0) [(.arm .nil [] (.build .nil (.list (.pair .string .nat)) [])), (.arm .cons [2, 3] (.«match» (.list (.pair .string .nat)) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.var 0)), (.arm .eq [] (.var 3)), (.arm .gt [] (.build .cons (.list (.pair .string .nat)) [(.var 2), (.call 2 [(.var 3), (.var 1)])]))]))]) }, - { parameters := [0, 1], types := [(.list (.pair .string .nat)), .string], result := (.option .nat), - body := (.«match» (.option .nat) (.var 0) [(.arm .nil [] (.build .none (.option .nat) [])), (.arm .cons [2, 3] (.«match» (.option .nat) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.build .none (.option .nat) [])), (.arm .eq [] (.build .some (.option .nat) [(.second (.var 2))])), (.arm .gt [] (.call 3 [(.var 3), (.var 1)]))]))]) }, - { parameters := [0, 1], types := [(.list (.pair .string .nat)), .string], result := .bool, - body := (.«match» .bool (.call 5 [(.var 0), (.var 1)]) [(.arm .none [] (.build .false .bool [])), (.arm .some [2] (.build .true .bool []))]) }, - { parameters := [0, 1], types := [(.list (.pair .string .nat)), .string], result := (.option .nat), - body := (.«match» (.option .nat) (.var 0) [(.arm .nil [] (.build .none (.option .nat) [])), (.arm .cons [2, 3] (.«match» (.option .nat) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.build .none (.option .nat) [])), (.arm .eq [] (.build .some (.option .nat) [(.second (.var 2))])), (.arm .gt [] (.call 5 [(.var 3), (.var 1)]))]))]) }, - { parameters := [0], types := [(.list (.pair .string .nat))], result := (.list .string), - body := (.«match» (.list .string) (.var 0) [(.arm .nil [] (.build .nil (.list .string) [])), (.arm .cons [1, 2] (.build .cons (.list .string) [(.first (.var 1)), (.call 6 [(.var 2)])]))]) }, - { parameters := [0], types := [(.list (.pair .string .nat))], result := (.list .nat), - body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.build .nil (.list .nat) [])), (.arm .cons [1, 2] (.build .cons (.list .nat) [(.second (.var 1)), (.call 7 [(.var 2)])]))]) }, - { parameters := [0], types := [(.list (.pair .string .nat))], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 9 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 8 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, - { parameters := [0], types := [.nat], result := .bool, - body := (.build .true .bool []) }, - { parameters := [0, 1, 2], types := [(.list (.pair .string .nat)), .string, .nat], result := (.option (.pair (.list (.pair .string .nat)) (.pair (.list (.pair .string .nat)) (.pair (.option .nat) (.pair .bool (.pair (.list .string) (.pair (.list .nat) (.pair .nat (.list (.pair .string .nat)))))))))), - body := (.cond (.call 8 [(.var 0)]) (.build .some (.option (.pair (.list (.pair .string .nat)) (.pair (.list (.pair .string .nat)) (.pair (.option .nat) (.pair .bool (.pair (.list .string) (.pair (.list .nat) (.pair .nat (.list (.pair .string .nat)))))))))) [(.call 0 [(.var 0), (.var 1), (.var 2)])]) (.build .none (.option (.pair (.list (.pair .string .nat)) (.pair (.list (.pair .string .nat)) (.pair (.option .nat) (.pair .bool (.pair (.list .string) (.pair (.list .nat) (.pair .nat (.list (.pair .string .nat)))))))))) [])) }] } - -def __fits_0 (m : (List (Prod String Nat))) (k : String) (v : Nat) : Bool := - ((((Bool.true && (Bool.true && (Bool.true && Bool.true))) && Bool.true) && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((((Bool.true && Bool.true) && Bool.true) && (((((Bool.true && Bool.true) && Bool.true) && (((((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanCollections.mapSize (m) : Nat) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) - -theorem __rel_0 (m : (List (Prod String Nat))) (k : String) (v : Nat) : _root_.LexLeanPreservation.FunRel __prog 0 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat)) m), (_root_.LexLeanTarget.TargetSyntax.Value.string k), (_root_.LexLeanTarget.TargetSyntax.Value.nat v)] (_root_.LexLeanPreservation.Rel (__fits_0 m k v) ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat)) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat)) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.string) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat))))))))) (Coverage.Colls.mapOps m k v))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_mapInsert (_root_.LexLeanPreservation.keySpec_string _root_.LexLeanCollections.compareCodes rfl (fun _ _ => rfl) (fun _ _ => rfl) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) (fun _ _ => rfl)) _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) _root_.LexLeanCollections.insertEntry (fun _ _ => rfl) (fun _ _ _ _ _ __h => by simp only [_root_.LexLeanCollections.insertEntry, __h]) (fun _ _ _ _ _ __h => by simp only [_root_.LexLeanCollections.insertEntry, __h]) (fun _ _ _ _ _ __h => by simp only [_root_.LexLeanCollections.insertEntry, __h]) (p := __prog) (fi := 1) (tk := .string) (tw := .nat) rfl (m) (k) (v))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.tpl_mapRemove (_root_.LexLeanPreservation.keySpec_string _root_.LexLeanCollections.compareCodes rfl (fun _ _ => rfl) (fun _ _ => rfl) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) (fun _ _ => rfl)) _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) _root_.LexLeanCollections.removeEntry (fun _ => rfl) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.removeEntry, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.removeEntry, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.removeEntry, __h]) (p := __prog) (fi := 2) (tk := .string) (tw := .nat) rfl (m) (k))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.tpl_mapLookup (_root_.LexLeanPreservation.keySpec_string _root_.LexLeanCollections.compareCodes rfl (fun _ _ => rfl) (fun _ _ => rfl) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) (fun _ _ => rfl)) _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) (_root_.LexLeanPreservation.optEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) _root_.LexLeanCollections.lookupEntry (fun _ => rfl) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (p := __prog) (fi := 3) (tk := .string) (tw := .nat) rfl (m) (k))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.tpl_mapContains (_root_.LexLeanPreservation.keySpec_string _root_.LexLeanCollections.compareCodes rfl (fun _ _ => rfl) (fun _ _ => rfl) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) (fun _ _ => rfl)) _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) _root_.LexLeanCollections.lookupEntry (fun _ => rfl) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (p := __prog) (fi := 4) (tk := .string) (tw := .nat) rfl rfl (m) (k))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.tpl_mapKeys (ek := _root_.LexLeanTarget.TargetSyntax.Value.string) (ev := _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.string) (fun _ => rfl) (p := __prog) (fi := 6) (tk := .string) (tw := .nat) rfl (m))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.tpl_mapValues (ek := _root_.LexLeanTarget.TargetSyntax.Value.string) (ev := _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) (p := __prog) (fi := 7) (tk := .string) (tw := .nat) rfl (m))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat)) m)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) - -def denote (m : (List (Prod String Nat))) (k : String) (v : Nat) : _root_.LexLeanPreservation.Obs := - _root_.cond (__fits_0 m k v) (_root_.LexLeanPreservation.Obs.value (((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat)) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat)) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.string) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat))))))))) (Coverage.Colls.mapOps m k v)))) _root_.LexLeanPreservation.Obs.overflow - -theorem root (m : (List (Prod String Nat))) (k : String) (v : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat)) m), (_root_.LexLeanTarget.TargetSyntax.Value.string k), (_root_.LexLeanTarget.TargetSyntax.Value.nat v)] (_root_.LexLeanPreservation.Rel (__fits_0 m k v) ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat)) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat)) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.string) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat))))))))) (Coverage.Colls.mapOps m k v))) := - _root_.LexLeanPreservation.run_of_funRel (__rel_0 m k v) - -def __valid_9 : Nat -> Bool := - fun _ => Bool.true - -def __inv_9 : Nat -> Prop := - fun _ => _root_.True - -theorem __viff_9 : ∀ (__v : Nat), __valid_9 __v = Bool.true ↔ __inv_9 __v := - fun __v => _root_.LexLeanPreservation.validTrue_inv __v - -theorem __vrel_9 : ∀ (__v : Nat), _root_.LexLeanPreservation.FunRel __prog 9 [(_root_.LexLeanTarget.TargetSyntax.Value.nat __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_9 __v))) := - _root_.LexLeanPreservation.tpl_validTrue _root_.LexLeanTarget.TargetSyntax.Value.nat rfl - -def __valid_8 : (List (Prod String Nat)) -> Bool := - _root_.LexLeanPreservation.ascMap (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) __valid_9 - -def __inv_8 : (List (Prod String Nat)) -> Prop := - _root_.LexLeanPreservation.InvMap (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) __inv_9 - -theorem __viff_8 : ∀ (__v : (List (Prod String Nat))), __valid_8 __v = Bool.true ↔ __inv_8 __v := - _root_.LexLeanPreservation.ascMap_inv (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) __valid_9 __inv_9 __viff_9 - -theorem __vrel_8 : ∀ (__v : (List (Prod String Nat))), _root_.LexLeanPreservation.FunRel __prog 8 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat)) __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_8 __v))) := - _root_.LexLeanPreservation.tpl_validMap (_root_.LexLeanPreservation.keySpec_string _root_.LexLeanCollections.compareCodes rfl (fun _ _ => rfl) (fun _ _ => rfl) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) (fun _ _ => rfl)) __valid_9 (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) __vrel_9 rfl - -def entryFits (m : (List (Prod String Nat))) (k : String) (v : Nat) : Bool := - (if __valid_8 m then __fits_0 m k v else Bool.true) - -def entryValue (m : (List (Prod String Nat))) (k : String) (v : Nat) : _root_.LexLeanTarget.TargetSyntax.Value := - (if __valid_8 m then (_root_.LexLeanTarget.TargetSyntax.Value.some ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat)) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat)) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.string) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat))))))))) (Coverage.Colls.mapOps m k v))) else _root_.LexLeanTarget.TargetSyntax.Value.none) - -/-- The entry's observation. -/ -def denoteEntry (m : (List (Prod String Nat))) (k : String) (v : Nat) : _root_.LexLeanPreservation.Obs := - _root_.cond (_root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.entryFits m k v) (_root_.LexLeanPreservation.Obs.value (_root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.entryValue m k v)) _root_.LexLeanPreservation.Obs.overflow - -/-- §17.12's invariants of the validated parameters. -/ -def accepts (m : (List (Prod String Nat))) (k : String) (v : Nat) : Prop := - (__inv_8 m ∧ _root_.True) - -theorem entry (m : (List (Prod String Nat))) (k : String) (v : Nat) : _root_.LexLeanPreservation.RunConv __prog 10 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat)) m), (_root_.LexLeanTarget.TargetSyntax.Value.string k), (_root_.LexLeanTarget.TargetSyntax.Value.nat v)] (_root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.denoteEntry m k v) := - _root_.LexLeanPreservation.run_of_funRel (_root_.LexLeanPreservation.FunRel.fits_eq (_root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun __c => if __c then __fits_0 m k v else Bool.true) (fun __c => if __c then (_root_.LexLeanTarget.TargetSyntax.Value.some ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat)) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat)) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.string) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string _root_.LexLeanTarget.TargetSyntax.Value.nat))))))))) (Coverage.Colls.mapOps m k v))) else _root_.LexLeanTarget.TargetSyntax.Value.none) (__valid_8 m) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_8 m)) (fun _ => _root_.LexLeanPreservation.Conv.fits_eq (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (__rel_0 m k v)) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some) (by simp)) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (by simp [_root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.entryFits])) - -theorem entry_accepts (m : (List (Prod String Nat))) (k : String) (v : Nat) (__h : _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.accepts m k v) : _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.denoteEntry m k v = _root_.LexLeanPreservation.someObs (_root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.denote m k v) := by - unfold _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.accepts at __h - unfold _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.denoteEntry _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.entryFits _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.entryValue _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.denote - simp only [_root_.if_true, (__viff_8 m).mpr __h.1] - cases __fits_0 m k v <;> rfl - -theorem entry_refuses (m : (List (Prod String Nat))) (k : String) (v : Nat) (__h : ¬ _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.accepts m k v) : _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.denoteEntry m k v = _root_.LexLeanPreservation.Obs.value _root_.LexLeanTarget.TargetSyntax.Value.none := by - unfold _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.accepts at __h - unfold _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.denoteEntry _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.entryFits _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.entryValue - cases __c0 : __valid_8 m - · simp - · exact _root_.absurd ⟨(__viff_8 m).mp __c0, _root_.trivial⟩ __h - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1 diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R1/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R1/Compose/RustStd.lex.tex deleted file mode 100644 index c33de98c6..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R1/Compose/RustStd.lex.tex +++ /dev/null @@ -1,728 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.Compose.RustStd.root : @1520 := @1521 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.RustStd.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.RustStd.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.RustStd.flags -@3 := String -@4 := Nat -@5 := Prod.{0, 0} -@6 := @5 @3 -@7 := @6 @4 -@8 := List.{0} -@9 := @8 @7 -@10 := #3 -@11 := LexLeanTarget.TargetSyntax.Value.string -@12 := LexLeanTarget.TargetSyntax.Value.nat -@13 := LexLeanPreservation.encPair -@14 := @13 @3 -@15 := @14 @4 -@16 := @15 @11 -@17 := @16 @12 -@18 := LexLeanPreservation.encList -@19 := @18 @7 -@20 := @19 @17 -@21 := @20 @10 -@22 := LexLeanTarget.TargetSyntax.Ty.string -@23 := LexLeanTarget.TargetSyntax.Ty.nat -@24 := LexLeanTarget.TargetSyntax.Ty.pair -@25 := @24 @22 -@26 := @25 @23 -@27 := LexLeanTarget.TargetSyntax.Ty.list -@28 := @27 @26 -@29 := #0 -@30 := LexLeanTarget.TargetSyntax.Program -@31 := LexLeanPreservation.Rust.RCrate -@32 := LexLeanPreservation.Rust.Flags -@33 := LexLeanPreservation.Rust.WT -@34 := @33 @10 -@35 := #2 -@36 := @34 @35 -@37 := #1 -@38 := @36 @37 -@39 := @11 @29 -@45 := {p : @30} -> {c : @31} -> {A : @32} -> (s : @3) -> @38 @39 @22 -@47 := LexLeanPreservation.Rust.wt_string @0 -@48 := @33 @0 -@50 := @48 @35 @37 -@55 := {c : @31} -> {A : @32} -> (s : @3) -> @50 @39 @22 -@56 := @47 @1 -@57 := @48 @1 -@58 := @57 @37 -@62 := {A : @32} -> (s : @3) -> @58 @39 @22 -@63 := @56 @2 -@64 := @57 @2 -@65 := @64 @39 -@66 := @65 @22 -@67 := (s : @3) -> @66 -@69 := fun (__x : @3) => @63 @29 -@70 := @12 @29 -@76 := {p : @30} -> {c : @31} -> {A : @32} -> (n : @4) -> @38 @70 @23 -@78 := LexLeanPreservation.Rust.wt_nat @0 -@83 := {c : @31} -> {A : @32} -> (n : @4) -> @50 @70 @23 -@84 := @78 @1 -@88 := {A : @32} -> (n : @4) -> @58 @70 @23 -@89 := @84 @2 -@90 := @64 @70 -@91 := @90 @23 -@92 := (n : @4) -> @91 -@94 := fun (__x : @4) => @89 @29 -@95 := Sort 1 -@96 := LexLeanTarget.TargetSyntax.Value -@97 := (a._@._internal._hyg.#0 : @37) -> @96 -@98 := LexLeanTarget.TargetSyntax.Ty -@99 := #5 -@100 := #9 -@101 := @33 @100 -@102 := #8 -@103 := @101 @102 -@104 := #7 -@105 := @103 @104 -@106 := #4 -@107 := @106 @29 -@110 := (x : @99) -> @105 @107 @35 -@111 := #10 -@117 := (x : @99) -> @33 @111 @100 @102 @107 @35 -@118 := @5 @104 -@119 := #6 -@120 := @118 @119 -@121 := #11 -@124 := @33 @121 @111 @100 -@129 := @13 @102 @104 @119 @99 @29 -@130 := @124 @129 -@132 := @24 @106 @10 -@145 := {p : @30} -> - {c : @31} -> - {A : @32} -> - {α : @95} -> - {β : @95} -> - {ea : @97} -> - {eb : @97} -> {s : @98} -> {t : @98} -> (ha : @110) -> (hb : @117) -> (x : @120) -> @130 @132 -@147 := LexLeanPreservation.Rust.wt_encPair @0 -@172 := {c : @31} -> - {A : @32} -> - {α : @95} -> - {β : @95} -> - {ea : @97} -> - {eb : @97} -> - {s : @98} -> - {t : @98} -> - (ha : (x : @99) -> @48 @102 @104 @107 @35) -> - (hb : (x : @99) -> @48 @100 @102 @107 @35) -> (x : @120) -> @48 @111 @100 @129 @132 -@173 := @147 @1 -@194 := {A : @32} -> - {α : @95} -> - {β : @95} -> - {ea : @97} -> - {eb : @97} -> - {s : @98} -> - {t : @98} -> - (ha : (x : @99) -> @57 @104 @107 @35) -> - (hb : (x : @99) -> @57 @102 @107 @35) -> (x : @120) -> @57 @100 @129 @132 -@195 := @173 @2 -@197 := @64 @107 @35 -@198 := (x : @99) -> @197 -@209 := {α : @95} -> - {β : @95} -> - {ea : @97} -> - {eb : @97} -> {s : @98} -> {t : @98} -> (ha : @198) -> (hb : @198) -> (x : @120) -> @64 @129 @132 -@210 := @195 @3 -@211 := (a._@._internal._hyg.#0 : @3) -> @96 -@212 := (x : @3) -> @197 -@227 := {β : @95} -> - {ea : @211} -> - {eb : @97} -> - {s : @98} -> - {t : @98} -> (ha : @212) -> (hb : @198) -> (x : @6 @119) -> @64 (@14 @104 @119 @99 @29) @132 -@228 := @210 @4 -@229 := (a._@._internal._hyg.#0 : @4) -> @96 -@230 := (x : @4) -> @197 -@242 := {ea : @211} -> - {eb : @229} -> - {s : @98} -> {t : @98} -> (ha : @212) -> (hb : @230) -> (x : @7) -> @64 (@15 @119 @99 @29) @132 -@243 := @228 @11 -@245 := (x : @3) -> @65 @35 -@255 := {eb : @229} -> - {s : @98} -> {t : @98} -> (ha : @245) -> (hb : @230) -> (x : @7) -> @64 (@16 @99 @29) @132 -@256 := @243 @12 -@258 := (x : @4) -> @90 @35 -@260 := @64 (@17 @29) -@266 := {s : @98} -> {t : @98} -> (ha : @245) -> (hb : @258) -> (x : @7) -> @260 @132 -@267 := @256 @22 -@268 := (x : @3) -> @66 -@274 := {t : @98} -> (ha : @268) -> (hb : @258) -> (x : @7) -> @260 (@25 @10) -@275 := @267 @23 -@276 := (x : @4) -> @91 -@278 := (x : @7) -> @260 @26 -@280 := (ha : @268) -> (hb : @276) -> @278 -@284 := fun (__x : @7) => @275 @69 @94 @29 -@285 := (a._@._internal._hyg.#0 : @29) -> @96 -@288 := @33 @119 @99 @106 -@289 := @35 @29 -@292 := (x : @35) -> @288 @289 @37 -@293 := @8 @10 -@296 := @33 @104 @119 @99 -@299 := @18 @106 @10 @29 -@300 := @296 @299 -@301 := @27 @35 -@310 := {p : @30} -> - {c : @31} -> - {A : @32} -> {α : @95} -> {e : @285} -> {t : @98} -> (h : @292) -> (xs : @293) -> @300 @301 -@312 := LexLeanPreservation.Rust.wt_encList @0 -@314 := @48 @99 @106 -@328 := {c : @31} -> - {A : @32} -> - {α : @95} -> - {e : @285} -> - {t : @98} -> (h : (x : @35) -> @314 @289 @37) -> (xs : @293) -> @48 @119 @99 @299 @301 -@329 := @312 @1 -@330 := @57 @106 -@342 := {A : @32} -> - {α : @95} -> - {e : @285} -> {t : @98} -> (h : (x : @35) -> @330 @289 @37) -> (xs : @293) -> @57 @99 @299 @301 -@343 := @329 @2 -@345 := @64 @289 @37 -@353 := {α : @95} -> - {e : @285} -> {t : @98} -> (h : (x : @35) -> @345) -> (xs : @293) -> @64 @299 @301 -@354 := @343 @7 -@364 := {e : (a._@._internal._hyg.#0 : @7) -> @96} -> - {t : @98} -> (h : (x : @7) -> @345) -> (xs : @9) -> @64 (@19 @10 @29) @301 -@365 := @354 @17 -@367 := (x : @7) -> @260 @37 -@369 := @64 (@20 @29) -@373 := {t : @98} -> (h : @367) -> (xs : @9) -> @369 @301 -@374 := @365 @26 -@377 := (h : @278) -> (xs : @9) -> @369 @28 -@379 := @374 @284 @10 -@381 := @64 @21 @28 -@382 := @11 @35 -@383 := @63 @35 -@385 := @64 @382 @22 -@386 := @12 @37 -@387 := @89 @37 -@389 := @64 @386 @23 -@390 := List.nil.{0} -@391 := List.cons.{0} -@392 := @390 @96 -@393 := @391 @96 -@395 := @393 @386 @392 -@397 := @393 @382 @395 -@399 := @393 @21 @397 -@401 := @5 @4 @96 -@402 := 2 -@405 := Prod.mk.{0, 0} @4 @96 -@406 := @405 @402 -@407 := @406 @386 -@409 := @405 1 -@410 := @409 @382 -@412 := @405 0 -@413 := @412 @21 -@414 := @390 @401 -@415 := @391 @401 -@417 := @415 @413 @414 -@419 := @415 @410 @417 -@421 := @415 @407 @419 -@422 := Bool.false -@423 := LexLeanTarget.TargetSyntax.Function -@424 := LexLeanTarget.TargetSyntax.Program.functions -@425 := @424 @0 -@426 := 10 -@427 := @390 @4 -@428 := @390 @98 -@429 := LexLeanTarget.TargetSyntax.Ty.unit -@430 := LexLeanTarget.TargetSyntax.Value.unit -@433 := LexLeanTarget.TargetSyntax.Expr.value @429 @430 -@438 := LexLeanTarget.TargetSyntax.Function.mk @427 @428 @429 @433 -@443 := List.getD.{0} @423 @425 @426 @438 -@447 := fun (__e_n : @4) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.RustStd.root @29 @426 -@448 := LexLeanPreservation.Rust.WTL -@456 := {p : @30} -> {c : @31} -> {A : @32} -> @448 @35 @37 @29 @392 @428 -@458 := LexLeanPreservation.Rust.wtl_nil @0 -@459 := @448 @0 -@465 := {c : @31} -> {A : @32} -> @459 @37 @29 @392 @428 -@466 := @458 @1 -@467 := @459 @1 -@471 := {A : @32} -> @467 @29 @392 @428 -@472 := @466 @2 -@473 := @467 @2 -@474 := @473 @392 -@475 := @474 @428 -@476 := @8 @96 -@477 := @8 @98 -@479 := @288 @10 @35 -@484 := @448 @104 @119 @99 @35 @37 -@487 := @448 @102 @104 @119 -@489 := @393 @99 @10 -@490 := @487 @489 -@491 := @391 @98 -@493 := @491 @106 @35 -@503 := {p : @30} -> - {c : @31} -> - {A : @32} -> - {v : @96} -> {t : @98} -> {vs : @476} -> {ts : @477} -> (h : @479) -> (hs : @484) -> @490 @493 -@505 := LexLeanPreservation.Rust.wtl_cons @0 -@523 := {c : @31} -> - {A : @32} -> - {v : @96} -> - {t : @98} -> - {vs : @476} -> - {ts : @477} -> (h : @314 @10 @35) -> (hs : @459 @119 @99 @35 @37) -> @459 @104 @119 @489 @493 -@524 := @505 @1 -@539 := {A : @32} -> - {v : @96} -> - {t : @98} -> - {vs : @476} -> {ts : @477} -> (h : @330 @10 @35) -> (hs : @467 @99 @35 @37) -> @467 @119 @489 @493 -@540 := @524 @2 -@542 := @64 @10 @35 -@544 := @473 @35 @37 -@552 := {v : @96} -> - {t : @98} -> {vs : @476} -> {ts : @477} -> (h : @542) -> (hs : @544) -> @473 @489 @493 -@553 := @540 @386 -@554 := @12 @106 -@556 := @64 @554 @35 -@557 := @12 @119 -@558 := @393 @557 -@566 := {t : @98} -> {vs : @476} -> {ts : @477} -> (h : @556) -> (hs : @544) -> @473 (@558 @10) @493 -@567 := @553 @23 -@568 := @12 @10 -@570 := @64 @568 @23 -@571 := @12 @99 -@572 := @393 @571 -@574 := @473 (@572 @10) -@575 := @491 @23 -@576 := @575 @35 -@581 := {vs : @476} -> {ts : @477} -> (h : @570) -> (hs : @544) -> @574 @576 -@582 := @567 @392 -@583 := @12 @35 -@585 := @64 @583 @23 -@586 := @474 @37 -@588 := @393 @554 @392 -@593 := {ts : @477} -> (h : @585) -> (hs : @586) -> @473 @588 @576 -@594 := @582 @428 -@596 := @393 @568 @392 -@597 := @473 @596 -@598 := @575 @428 -@601 := (h : @389) -> (hs : @475) -> @597 @598 -@602 := @594 @387 -@604 := @393 @583 @392 -@606 := @473 @604 @598 -@607 := (hs : @475) -> @606 -@608 := @602 @472 -@610 := @473 @395 @598 -@611 := @540 @382 -@612 := @11 @99 -@614 := @64 @612 @35 -@615 := @11 @104 -@616 := @393 @615 -@624 := {t : @98} -> {vs : @476} -> {ts : @477} -> (h : @614) -> (hs : @544) -> @473 (@616 @10) @493 -@625 := @611 @22 -@626 := @11 @106 -@628 := @64 @626 @22 -@629 := @11 @119 -@630 := @393 @629 -@632 := @473 (@630 @10) -@633 := @491 @22 -@634 := @633 @35 -@639 := {vs : @476} -> {ts : @477} -> (h : @628) -> (hs : @544) -> @632 @634 -@640 := @625 @395 -@641 := @11 @10 -@643 := @64 @641 @22 -@644 := @597 @37 -@646 := @393 @612 @588 -@651 := {ts : @477} -> (h : @643) -> (hs : @644) -> @473 @646 @634 -@652 := @640 @598 -@654 := @393 @626 @596 -@655 := @473 @654 -@656 := @633 @598 -@659 := (h : @385) -> (hs : @606) -> @655 @656 -@660 := @652 @383 -@662 := @393 @641 @604 -@664 := @473 @662 @656 -@665 := (hs : @610) -> @664 -@666 := @660 @608 -@668 := @473 @397 @656 -@669 := @540 @21 -@670 := @20 @119 -@672 := @64 @670 @35 -@673 := @20 @102 -@674 := @393 @673 -@682 := {t : @98} -> {vs : @476} -> {ts : @477} -> (h : @672) -> (hs : @544) -> @473 (@674 @10) @493 -@683 := @669 @28 -@684 := @20 @99 -@686 := @64 @684 @28 -@687 := @20 @104 -@688 := @393 @687 -@690 := @473 (@688 @10) -@691 := @491 @28 -@692 := @691 @35 -@697 := {vs : @476} -> {ts : @477} -> (h : @686) -> (hs : @544) -> @690 @692 -@698 := @683 @397 -@699 := @20 @106 -@701 := @64 @699 @28 -@702 := @655 @37 -@704 := @393 @670 @646 -@705 := @473 @704 -@709 := {ts : @477} -> (h : @701) -> (hs : @702) -> @705 @692 -@710 := @698 @656 -@712 := @393 @684 @654 -@713 := @473 @712 -@714 := @691 @656 -@717 := (h : @381) -> (hs : @664) -> @713 @714 -@718 := @710 @379 -@720 := @393 @699 @662 -@721 := @473 @720 -@723 := (hs : @668) -> @721 @714 -@724 := @718 @666 -@725 := @473 @399 -@726 := @725 @714 -@727 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.denoteEntry -@730 := @727 @10 @35 @37 -@731 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.entryFits -@734 := @731 @10 @35 @37 -@738 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.entryValue @10 @35 @37 -@742 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.entry @10 @35 @37 -@743 := Bool -@744 := Ne.{1} -@745 := LexLeanPreservation.Obs -@746 := @744 @745 -@747 := LexLeanPreservation.Rel -@750 := @746 (@747 @37 @29) -@751 := LexLeanPreservation.Obs.stuck -@754 := (f : @743) -> (v : @96) -> @750 @751 -@756 := LexLeanPreservation.Rust.rel_ne_stuck @734 -@764 := (v : @96) -> @746 (@747 (@731 @106 @10 @35) @29) @751 -@765 := @756 @738 -@769 := @746 (@747 @734 @738) @751 -@770 := @8 @401 -@771 := LexLeanPreservation.Rust.FunSem -@777 := (n : @4) -> @771 @100 @102 @104 @29 @119 -@778 := Eq.{1} -@779 := Option.{0} -@780 := @779 @423 -@781 := @778 @780 -@788 := LexLeanRuntime.index (@8 @423) @423 (LexLeanRuntime.instIndexableList @423) -@792 := @781 (@788 (@424 @100) @119) -@793 := Option.some.{0} -@794 := @793 @423 -@795 := @794 @99 -@796 := @792 @795 -@800 := @448 @111 @100 @102 @99 -@801 := LexLeanTarget.TargetSyntax.Function.types -@802 := @801 @119 -@803 := @800 @802 -@804 := @779 @770 -@805 := @778 @804 -@806 := LexLeanTarget.TargetSemantics.bindAll -@807 := LexLeanTarget.TargetSyntax.Function.parameters -@812 := @805 (@806 (@807 @104) @119 @414) -@813 := @793 @770 -@814 := @813 @99 -@815 := @812 @814 -@816 := @779 @743 -@817 := @778 @816 -@818 := LexLeanPreservation.Rust.fnFallible -@821 := @817 (@818 @121 @100) -@822 := @793 @743 -@823 := @822 @99 -@824 := @821 @823 -@825 := LexLeanPreservation.RunConv -@826 := #13 -@830 := @825 @826 @111 @102 @99 -@832 := @746 @119 @751 -@833 := Exists.{1} -@834 := LexLeanPreservation.Rust.ROut -@835 := @833 @834 -@836 := And -@837 := LexLeanPreservation.Rust.RealizesFn -@841 := @836 (@837 @100 @102 @29) -@842 := LexLeanPreservation.Rust.RCI -@844 := @842 #15 -@845 := LexLeanPreservation.Rust.fnIdent -@846 := @845 @826 -@853 := (hne : @832) -> @835 (fun (ro : @834) => @841 (@844 @846 @121 @29)) -@868 := {p : @30} -> - {c : @31} -> - {A : @32} -> - {f : @4} -> - {fn : @423} -> - {args : @476} -> - {env : @770} -> - {F : @743} -> - {o : @745} -> - (hB : @777) -> - (hfn : @796) -> (hwt : @803) -> (hbind : @815) -> (hF : @824) -> (hA : @830) -> @853 -@870 := LexLeanPreservation.Rust.compose @0 -@871 := @771 @0 -@876 := (n : @4) -> @871 @102 @104 @29 @119 -@877 := @788 @425 -@880 := @781 (@877 @119) @795 -@884 := @459 @100 @102 @99 @802 -@885 := @825 @0 -@888 := @885 @111 @102 @99 -@902 := {c : @31} -> - {A : @32} -> - {f : @4} -> - {fn : @423} -> - {args : @476} -> - {env : @770} -> - {F : @743} -> - {o : @745} -> - (hB : @876) -> - (hfn : @880) -> (hwt : @884) -> (hbind : @815) -> (hF : @824) -> (hA : @888) -> @853 -@903 := @870 @1 -@904 := @871 @1 -@908 := (n : @4) -> @904 @104 @29 @119 -@911 := @467 @102 @99 @802 -@912 := @818 @1 -@915 := @817 (@912 @100) @823 -@916 := @842 @1 -@926 := (hbind : @815) -> - (hF : @915) -> (hA : @888) -> (hne : @832) -> @835 (fun (ro : @834) => @841 (@916 @846 @121 @29)) -@936 := {A : @32} -> - {f : @4} -> - {fn : @423} -> - {args : @476} -> - {env : @770} -> {F : @743} -> {o : @745} -> (hB : @908) -> (hfn : @880) -> (hwt : @911) -> @926 -@937 := @903 @2 -@939 := @904 @2 @29 -@941 := (n : @4) -> @939 @119 -@942 := @473 @99 -@943 := @942 @802 -@952 := {f : @4} -> - {fn : @423} -> - {args : @476} -> - {env : @770} -> {F : @743} -> {o : @745} -> (hB : @941) -> (hfn : @880) -> (hwt : @943) -> @926 -@953 := @937 @426 -@955 := (n : @4) -> @939 @426 -@956 := @877 @426 -@957 := @781 @956 -@958 := @957 @795 -@959 := @912 @426 -@960 := @817 @959 -@961 := @960 @823 -@962 := @885 @426 -@964 := @962 @102 @99 -@966 := @916 (@845 @426) -@974 := (hF : @961) -> (hA : @964) -> (hne : @832) -> @835 (fun (ro : @834) => @841 (@966 @121 @29)) -@983 := {fn : @423} -> - {args : @476} -> - {env : @770} -> - {F : @743} -> {o : @745} -> (hB : @955) -> (hfn : @958) -> (hwt : @943) -> (hbind : @815) -> @974 -@984 := @953 @443 -@986 := @957 (@794 @443) -@987 := @801 @443 -@988 := @942 @987 -@990 := @806 (@807 @443) -@1002 := {args : @476} -> - {env : @770} -> - {F : @743} -> - {o : @745} -> - (hB : @955) -> (hfn : @986) -> (hwt : @988) -> (hbind : @805 (@990 @119 @414) @814) -> @974 -@1003 := @984 @399 -@1006 := @674 (@616 (@558 @392)) -@1008 := @473 @1006 @987 -@1017 := @393 (@20 @100) (@393 (@11 @102) (@393 (@12 @104) @392)) -@1021 := @805 (@990 @1017 @414) @814 -@1030 := @393 (@20 @121) (@393 (@11 @111) (@393 (@12 @100) @392)) -@1032 := @962 @1030 @99 -@1035 := @393 (@20 #14) -@1037 := @393 (@11 @826) -@1038 := #12 -@1058 := {env : @770} -> - {F : @743} -> - {o : @745} -> - (hB : @955) -> - (hfn : @986) -> - (hwt : @1008) -> - (hbind : @1021) -> - (hF : @961) -> - (hA : @1032) -> - (hne : @832) -> @835 (fun (ro : @834) => @841 (@966 (@1035 (@1037 (@393 (@12 @1038) @392))) @29)) -@1059 := @1003 @421 -@1062 := @688 (@630 (@572 @392)) -@1064 := @473 @1062 @987 -@1078 := @805 (@990 @1006 @414) (@813 (@415 (@406 @557) (@415 (@409 @615) (@415 (@412 @673) @414)))) -@1087 := @393 (@20 @111) (@393 (@11 @100) (@393 (@12 @102) @392)) -@1112 := {F : @743} -> - {o : @745} -> - (hB : @955) -> - (hfn : @986) -> - (hwt : @1064) -> - (hbind : @1078) -> - (hF : @961) -> - (hA : @962 @1087 @99) -> - (hne : @832) -> - @835 - (fun (ro : @834) => @841 (@966 (@393 (@20 @826) (@393 (@11 @1038) (@393 (@12 @121) @392))) @29)) -@1113 := @1059 @422 -@1114 := @705 @987 -@1128 := @805 (@990 @1062 @414) (@813 (@415 (@406 @571) (@415 (@409 @629) (@415 (@412 @687) @414)))) -@1130 := @960 (@822 @422) -@1132 := @962 @1017 @99 -@1133 := @837 @422 -@1158 := {o : @745} -> - (hB : @955) -> - (hfn : @986) -> - (hwt : @1114) -> - (hbind : @1128) -> - (hF : @1130) -> - (hA : @1132) -> - (hne : @832) -> - @835 - (fun (ro : @834) => - @836 (@1133 @102 @29) (@966 (@393 (@20 @1038) (@393 (@11 @121) (@393 (@12 @111) @392))) @29)) -@1159 := @1113 @730 -@1160 := @713 @987 -@1174 := @805 (@990 @704 @414) (@813 (@415 (@406 @554) (@415 (@409 @612) (@415 (@412 @670) @414)))) -@1175 := @962 @1006 -@1178 := @727 @102 @104 @119 -@1179 := @1175 @1178 -@1182 := @727 @100 @102 @104 -@1202 := (hB : @955) -> - (hfn : @986) -> - (hwt : @1160) -> - (hbind : @1174) -> - (hF : @1130) -> - (hA : @1179) -> - (hne : @746 @1182 @751) -> - @835 (fun (ro : @834) => @836 (@1133 (@727 @121 @111 @100) @29) (@966 @1030 @29)) -@1203 := @1159 @447 -@1204 := @721 @987 -@1218 := @805 (@990 @712 @414) (@813 (@415 (@406 @568) (@415 (@409 @626) (@415 (@412 @684) @414)))) -@1219 := @962 @1062 -@1222 := @727 @104 @119 @99 -@1242 := (hfn : @986) -> - (hwt : @1204) -> - (hbind : @1218) -> - (hF : @1130) -> - (hA : @1219 @1222) -> - (hne : @746 @1178 @751) -> - @835 (fun (ro : @834) => @836 (@1133 (@727 @111 @100 @102) @29) (@966 @1087 @29)) -@1243 := Eq.refl.{1} -@1246 := @1203 (@1243 @780 @956) -@1247 := @725 @987 -@1261 := @805 (@990 @720 @414) (@813 (@415 (@406 @583) (@415 (@409 @641) (@415 (@412 @699) @414)))) -@1262 := @962 @704 -@1265 := @727 @119 @99 @106 -@1281 := (hwt : @1247) -> - (hbind : @1261) -> - (hF : @1130) -> - (hA : @1262 @1265) -> - (hne : @746 @1222 @751) -> @835 (fun (ro : @834) => @836 (@1133 @1182 @29) (@966 @1017 @29)) -@1282 := @1246 @724 -@1284 := @990 @399 @414 -@1287 := @805 @1284 (@813 @421) -@1288 := @962 @712 -@1291 := @727 @99 @106 @10 -@1306 := (hbind : @1287) -> - (hF : @1130) -> - (hA : @1288 @1291) -> - (hne : @746 @1265 @751) -> @835 (fun (ro : @834) => @836 (@1133 @1178 @29) (@966 @1006 @29)) -@1309 := @1282 (@1243 @804 @1284) -@1310 := @962 @720 -@1313 := @727 @106 @10 @35 -@1327 := (hF : @1130) -> - (hA : @1310 @1313) -> - (hne : @746 @1291 @751) -> @835 (fun (ro : @834) => @836 (@1133 @1222 @29) (@966 @1062 @29)) -@1330 := @1309 (@1243 @816 @959) -@1332 := @962 @399 @730 -@1334 := @746 @1313 @751 -@1335 := @1133 @1265 -@1337 := @836 (@1335 @29) -@1338 := @966 @704 -@1339 := @1338 @29 -@1344 := (hA : @1332) -> (hne : @1334) -> @835 (fun (ro : @834) => @1337 @1339) -@1345 := @1330 @742 -@1347 := @746 @730 @751 -@1348 := @1133 @1291 -@1350 := @836 (@1348 @29) -@1351 := @966 @712 -@1356 := (hne : @1347) -> @835 (fun (ro : @834) => @1350 (@1351 @29)) -@1357 := @1345 @765 -@1360 := @836 (@1133 @1313 @29) -@1362 := @966 @720 @29 -@1363 := @1360 @1362 -@1365 := @835 (fun (ro : @834) => @1363) -@1366 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.accepts -@1369 := @1366 @10 @35 @37 -@1370 := LexLeanPreservation.someObs -@1371 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.denote -@1375 := @1370 (@1371 @10 @35 @37) -@1378 := LexLeanPreservation.Obs.value LexLeanTarget.TargetSyntax.Value.none -@1379 := Not -@1380 := @1379 @1369 -@1383 := @1366 @106 @10 @35 -@1387 := @1370 (@1371 @106 @10 @35) -@1388 := @1379 @1383 -@1395 := @1383 -> @1133 (@1370 (@1371 @99 @106 @10)) @37 -@1396 := @1133 @1378 -@1397 := @1396 @37 -@1398 := @1388 -> @1397 -@1400 := @836 @1395 @1398 -@1404 := @835 (fun (__e_ro : @834) => @836 @1362 @1400) -@1405 := fun (__e_ro : @834) => @1363 -@1406 := @1348 @37 -@1407 := @1351 @37 -@1408 := And.left -@1409 := And.right -@1412 := @1408 @1406 @1407 @29 -@1415 := @1409 @1406 @1407 @29 -@1416 := @1133 @29 -@1418 := fun (__e_o : @745) => @1416 @35 -@1419 := Eq.subst.{1} -@1422 := @1366 @99 @106 @10 -@1423 := @1379 @1422 -@1428 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.entry_accepts @119 @99 @106 @29 -@1432 := @1370 (@1371 @119 @99 @106) -@1437 := @1408 (@1335 @35) (@1338 @35) @37 -@1439 := fun (__e_o : @745) => @1416 @10 -@1442 := @1419 @745 @1439 @1265 -@1446 := fun (__e_h : @1422) => @1442 @1432 @1428 @1437 -@1451 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.entry_refuses @119 @99 @106 @29 -@1455 := fun (__e_h : @1423) => @1442 @1378 @1451 @1437 -@1456 := And.intro -@1459 := @1422 -> @1133 @1432 @35 -@1461 := @1423 -> @1396 @35 -@1463 := @836 @1459 @1461 -@1467 := @1456 @1459 @1461 @1446 @1455 -@1471 := @1456 @1407 @1463 @1415 @1467 -@1472 := Exists.intro.{1} -@1473 := @836 @1339 -@1476 := @1366 @119 @99 @106 -@1489 := fun (__e_ro : @834) => - @1473 (@836 (@1476 -> @1133 (@1370 (@1371 @104 @119 @99)) @37) (@1379 @1476 -> @1397)) -@1493 := @1472 @834 @1489 @37 @1471 -@1495 := @836 @1406 @1407 -@1497 := fun (__e_ro : @834) => fun (__e_hand : @1363) => @1493 -@1503 := Exists.elim.{1} @834 @1405 @1404 @1357 @1497 -@1504 := LexLeanPreservation.Rust.RepresentableL -@1505 := @20 @35 -@1506 := @11 @37 -@1508 := @393 @70 @392 -@1510 := @393 @1506 @1508 -@1513 := @1504 (@393 @1505 @1510) -@1514 := (__e_hrep : @1513) -> @1404 -@1515 := fun (__e_hrep : @1513) => @1503 -@1516 := (v : @4) -> @1514 -@1517 := fun (v : @4) => @1515 -@1518 := (k : @3) -> @1516 -@1519 := fun (k : @3) => @1517 -@1520 := (m : @9) -> @1518 -@1521 := fun (m : @9) => @1519 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R1/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R1/RustStd.lean deleted file mode 100644 index 692ab55d2..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R1/RustStd.lean +++ /dev/null @@ -1,113 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1, 2], types := [(.list (.pair .string .nat)), .string, .nat], result := (.pair (.list (.pair .string .nat)) (.pair (.list (.pair .string .nat)) (.pair (.option .nat) (.pair .bool (.pair (.list .string) (.pair (.list .nat) (.pair .nat (.list (.pair .string .nat))))))))), - body := (.build .pair (.pair (.list (.pair .string .nat)) (.pair (.list (.pair .string .nat)) (.pair (.option .nat) (.pair .bool (.pair (.list .string) (.pair (.list .nat) (.pair .nat (.list (.pair .string .nat))))))))) [(.call 1 [(.var 0), (.var 1), (.var 2)]), (.build .pair (.pair (.list (.pair .string .nat)) (.pair (.option .nat) (.pair .bool (.pair (.list .string) (.pair (.list .nat) (.pair .nat (.list (.pair .string .nat)))))))) [(.call 2 [(.var 0), (.var 1)]), (.build .pair (.pair (.option .nat) (.pair .bool (.pair (.list .string) (.pair (.list .nat) (.pair .nat (.list (.pair .string .nat))))))) [(.call 3 [(.var 0), (.var 1)]), (.build .pair (.pair .bool (.pair (.list .string) (.pair (.list .nat) (.pair .nat (.list (.pair .string .nat)))))) [(.call 4 [(.var 0), (.var 1)]), (.build .pair (.pair (.list .string) (.pair (.list .nat) (.pair .nat (.list (.pair .string .nat))))) [(.call 6 [(.var 0)]), (.build .pair (.pair (.list .nat) (.pair .nat (.list (.pair .string .nat)))) [(.call 7 [(.var 0)]), (.build .pair (.pair .nat (.list (.pair .string .nat))) [(.prim .length [(.var 0)]), (.var 0)])])])])])])]) }, - { parameters := [0, 1, 2], types := [(.list (.pair .string .nat)), .string, .nat], result := (.list (.pair .string .nat)), - body := (.«match» (.list (.pair .string .nat)) (.var 0) [(.arm .nil [] (.build .cons (.list (.pair .string .nat)) [(.build .pair (.pair .string .nat) [(.var 1), (.var 2)]), (.build .nil (.list (.pair .string .nat)) [])])), (.arm .cons [3, 4] (.«match» (.list (.pair .string .nat)) (.prim .compare [(.var 1), (.first (.var 3))]) [(.arm .lt [] (.build .cons (.list (.pair .string .nat)) [(.build .pair (.pair .string .nat) [(.var 1), (.var 2)]), (.var 0)])), (.arm .eq [] (.build .cons (.list (.pair .string .nat)) [(.build .pair (.pair .string .nat) [(.var 1), (.var 2)]), (.var 4)])), (.arm .gt [] (.build .cons (.list (.pair .string .nat)) [(.var 3), (.call 1 [(.var 4), (.var 1), (.var 2)])]))]))]) }, - { parameters := [0, 1], types := [(.list (.pair .string .nat)), .string], result := (.list (.pair .string .nat)), - body := (.«match» (.list (.pair .string .nat)) (.var 0) [(.arm .nil [] (.build .nil (.list (.pair .string .nat)) [])), (.arm .cons [2, 3] (.«match» (.list (.pair .string .nat)) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.var 0)), (.arm .eq [] (.var 3)), (.arm .gt [] (.build .cons (.list (.pair .string .nat)) [(.var 2), (.call 2 [(.var 3), (.var 1)])]))]))]) }, - { parameters := [0, 1], types := [(.list (.pair .string .nat)), .string], result := (.option .nat), - body := (.«match» (.option .nat) (.var 0) [(.arm .nil [] (.build .none (.option .nat) [])), (.arm .cons [2, 3] (.«match» (.option .nat) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.build .none (.option .nat) [])), (.arm .eq [] (.build .some (.option .nat) [(.second (.var 2))])), (.arm .gt [] (.call 3 [(.var 3), (.var 1)]))]))]) }, - { parameters := [0, 1], types := [(.list (.pair .string .nat)), .string], result := .bool, - body := (.«match» .bool (.call 5 [(.var 0), (.var 1)]) [(.arm .none [] (.build .false .bool [])), (.arm .some [2] (.build .true .bool []))]) }, - { parameters := [0, 1], types := [(.list (.pair .string .nat)), .string], result := (.option .nat), - body := (.«match» (.option .nat) (.var 0) [(.arm .nil [] (.build .none (.option .nat) [])), (.arm .cons [2, 3] (.«match» (.option .nat) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.build .none (.option .nat) [])), (.arm .eq [] (.build .some (.option .nat) [(.second (.var 2))])), (.arm .gt [] (.call 5 [(.var 3), (.var 1)]))]))]) }, - { parameters := [0], types := [(.list (.pair .string .nat))], result := (.list .string), - body := (.«match» (.list .string) (.var 0) [(.arm .nil [] (.build .nil (.list .string) [])), (.arm .cons [1, 2] (.build .cons (.list .string) [(.first (.var 1)), (.call 6 [(.var 2)])]))]) }, - { parameters := [0], types := [(.list (.pair .string .nat))], result := (.list .nat), - body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.build .nil (.list .nat) [])), (.arm .cons [1, 2] (.build .cons (.list .nat) [(.second (.var 1)), (.call 7 [(.var 2)])]))]) }, - { parameters := [0], types := [(.list (.pair .string .nat))], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 9 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 8 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, - { parameters := [0], types := [.nat], result := .bool, - body := (.build .true .bool []) }, - { parameters := [0, 1, 2], types := [(.list (.pair .string .nat)), .string, .nat], result := (.option (.pair (.list (.pair .string .nat)) (.pair (.list (.pair .string .nat)) (.pair (.option .nat) (.pair .bool (.pair (.list .string) (.pair (.list .nat) (.pair .nat (.list (.pair .string .nat)))))))))), - body := (.cond (.call 8 [(.var 0)]) (.build .some (.option (.pair (.list (.pair .string .nat)) (.pair (.list (.pair .string .nat)) (.pair (.option .nat) (.pair .bool (.pair (.list .string) (.pair (.list .nat) (.pair .nat (.list (.pair .string .nat)))))))))) [(.call 0 [(.var 0), (.var 1), (.var 2)])]) (.build .none (.option (.pair (.list (.pair .string .nat)) (.pair (.list (.pair .string .nat)) (.pair (.option .nat) (.pair .bool (.pair (.list .string) (.pair (.list .nat) (.pair .nat (.list (.pair .string .nat)))))))))) [])) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .str .nat)) }, { pattern := (.bind (.generated .binding 1)), type := .str }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.pair (.list (.pair .str .nat)) (.pair (.list (.pair .str .nat)) (.pair (.option .nat) (.pair .bool (.pair (.list .str) (.pair (.list .nat) (.pair .nat (.list (.pair .str .nat))))))))) (.mk [] (.pair (.call (.function 1) [(.clone (.generated .binding 0)), (.clone (.generated .binding 1)), (.copy (.generated .binding 2))] false) (.pair (.call (.function 2) [(.clone (.generated .binding 0)), (.clone (.generated .binding 1))] false) (.pair (.call (.function 3) [(.clone (.generated .binding 0)), (.clone (.generated .binding 1))] false) (.pair (.call (.function 4) [(.clone (.generated .binding 0)), (.move (.generated .binding 1))] false) (.pair (.call (.function 6) [(.clone (.generated .binding 0))] false) (.pair (.call (.function 7) [(.clone (.generated .binding 0))] false) (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthList) [(.move (.generated .operand 1))] false))) (.move (.generated .binding 0))))))))))), - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .str .nat)) }, { pattern := (.bind (.generated .binding 1)), type := .str }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.list (.pair .str .nat)) (.mk [(.mk (.bind (.generated .holder 2)) none (.clone (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 2)) [(.mk .none (.mk [] (.construct .cons [(.pair (.move (.generated .binding 1)) (.copy (.generated .binding 2))), (.construct (.nil (.pair .str .nat)) [])]))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [(.mk (.bind (.generated .holder 6)) none (.block (.mk [(.mk (.bind (.generated .operand 4)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 5)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.clone (.generated .binding 3)))] (.move (.generated .part 3)))))] (.call (.runtime .compare) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false))))] (.matchOn (.move (.generated .holder 6)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.pair (.move (.generated .binding 1)) (.copy (.generated .binding 2))), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.construct .cons [(.pair (.move (.generated .binding 1)) (.copy (.generated .binding 2))), (.move (.generated .binding 4))]))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.move (.generated .binding 3)), (.call (.function 1) [(.move (.generated .binding 4)), (.move (.generated .binding 1)), (.copy (.generated .binding 2))] false)])))])))]))), - (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .str .nat)) }, { pattern := (.bind (.generated .binding 1)), type := .str }] (.list (.pair .str .nat)) (.mk [(.mk (.bind (.generated .holder 7)) none (.clone (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 7)) [(.mk .none (.mk [] (.construct (.nil (.pair .str .nat)) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 11)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 10)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 8)), .wild]) none (.clone (.generated .binding 2)))] (.move (.generated .part 8)))))] (.call (.runtime .compare) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false))))] (.matchOn (.move (.generated .holder 11)) [(.mk (.ordering .less) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 3)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.move (.generated .binding 2)), (.call (.function 2) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)])))])))]))), - (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .str .nat)) }, { pattern := (.bind (.generated .binding 1)), type := .str }] (.option .nat) (.mk [(.mk (.bind (.generated .holder 12)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 12)) [(.mk .none (.mk [] (.construct (.none .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 16)) none (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 15)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 13)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 13)))))] (.call (.runtime .compare) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false))))] (.matchOn (.move (.generated .holder 16)) [(.mk (.ordering .less) (.mk [] (.construct (.none .nat) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 17))]) none (.move (.generated .binding 2)))] (.move (.generated .part 17))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 3) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)))])))]))), - (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .str .nat)) }, { pattern := (.bind (.generated .binding 1)), type := .str }] .bool (.mk [(.mk (.bind (.generated .holder 18)) none (.call (.function 5) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 18)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some .wild) (.mk [] (.lit (.bool true))))]))), - (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .str .nat)) }, { pattern := (.bind (.generated .binding 1)), type := .str }] (.option .nat) (.mk [(.mk (.bind (.generated .holder 19)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 19)) [(.mk .none (.mk [] (.construct (.none .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 23)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 20)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 20)))))] (.call (.runtime .compare) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.matchOn (.move (.generated .holder 23)) [(.mk (.ordering .less) (.mk [] (.construct (.none .nat) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 24))]) none (.move (.generated .binding 2)))] (.move (.generated .part 24))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 5) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)))])))]))), - (.function (.generated .function 6) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .str .nat)) }] (.list .str) (.mk [(.mk (.bind (.generated .holder 25)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 25)) [(.mk .none (.mk [] (.construct (.nil .str) []))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.construct .cons [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 26)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 26)))), (.call (.function 6) [(.move (.generated .binding 2))] false)])))]))), - (.function (.generated .function 7) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .str .nat)) }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 27)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 27)) [(.mk .none (.mk [] (.construct (.nil .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.construct .cons [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 28))]) none (.move (.generated .binding 1)))] (.move (.generated .part 28)))), (.call (.function 7) [(.move (.generated .binding 2))] false)])))]))), - (.function (.generated .function 8) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .str .nat)) }] .bool (.mk [(.mk (.bind (.generated .holder 29)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 29)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 9) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 30))]) none (.move (.generated .binding 1)))] (.move (.generated .part 30))))] false) (.mk [(.mk (.bind (.generated .holder 31)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 31)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 36)) none (.block (.mk [(.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 32)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 32))))), (.mk (.bind (.generated .operand 35)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 33)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 33)))))] (.call (.runtime .compare) [(.move (.generated .operand 34)), (.move (.generated .operand 35))] false))))] (.cond (.matchOn (.move (.generated .holder 36)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 8) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]))), - (.function (.generated .function 9) [{ pattern := .wild, type := .nat }] .bool (.mk [] (.lit (.bool true)))), - (.function (.generated .function 10) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .str .nat)) }, { pattern := (.bind (.generated .binding 1)), type := .str }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.option (.pair (.list (.pair .str .nat)) (.pair (.list (.pair .str .nat)) (.pair (.option .nat) (.pair .bool (.pair (.list .str) (.pair (.list .nat) (.pair .nat (.list (.pair .str .nat)))))))))) (.mk [] (.cond (.call (.function 8) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 2))] false)])) (.mk [] (.construct (.none (.pair (.list (.pair .str .nat)) (.pair (.list (.pair .str .nat)) (.pair (.option .nat) (.pair .bool (.pair (.list .str) (.pair (.list .nat) (.pair .nat (.list (.pair .str .nat)))))))))) [])))))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [], (.pair (.call (.function 1) [(.clone (.generated .binding 0)), (.clone (.generated .binding 1)), (.copy (.generated .binding 2))] false) (.pair (.call (.function 2) [(.clone (.generated .binding 0)), (.clone (.generated .binding 1))] false) (.pair (.call (.function 3) [(.clone (.generated .binding 0)), (.clone (.generated .binding 1))] false) (.pair (.call (.function 4) [(.clone (.generated .binding 0)), (.move (.generated .binding 1))] false) (.pair (.call (.function 6) [(.clone (.generated .binding 0))] false) (.pair (.call (.function 7) [(.clone (.generated .binding 0))] false) (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthList) [(.move (.generated .operand 1))] false))) (.move (.generated .binding 0))))))))), [(2, .nat, (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))], rfl, rfl, - (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .string .nat)), .string, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .string .nat)), .string]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .string .nat)), .string]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .string .nat)), .string]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .string .nat))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .string .nat))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 1))] false)) (Corr.prim (ts := [(.list (.pair .string .nat))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))))⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 2)) none (.clone (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 2)) [(.mk .none (.mk [] (.construct .cons [(.pair (.move (.generated .binding 1)) (.copy (.generated .binding 2))), (.construct (.nil (.pair .str .nat)) [])]))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [(.mk (.bind (.generated .holder 6)) none (.block (.mk [(.mk (.bind (.generated .operand 4)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 5)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.clone (.generated .binding 3)))] (.move (.generated .part 3)))))] (.call (.runtime .compare) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false))))] (.matchOn (.move (.generated .holder 6)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.pair (.move (.generated .binding 1)) (.copy (.generated .binding 2))), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.construct .cons [(.pair (.move (.generated .binding 1)) (.copy (.generated .binding 2))), (.move (.generated .binding 4))]))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.move (.generated .binding 3)), (.call (.function 1) [(.move (.generated .binding 4)), (.move (.generated .binding 1)), (.copy (.generated .binding 2))] false)])))])))]), [(2, .nat, (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.pair .string .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .cons [(.pair (.move (.generated .binding 1)) (.copy (.generated .binding 2))), (.construct (.nil (.pair .str .nat)) [])])) (Corr.mCons (Γ' := [(4, (.list (.pair .string .nat)), (some 4)), (3, (.pair .string .nat), (some 3)), (2, .nat, (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 6)) none (.block (.mk [(.mk (.bind (.generated .operand 4)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 5)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.clone (.generated .binding 3)))] (.move (.generated .part 3)))))] (.call (.runtime .compare) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false))))]) (tail := (.matchOn (.move (.generated .holder 6)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.pair (.move (.generated .binding 1)) (.copy (.generated .binding 2))), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.construct .cons [(.pair (.move (.generated .binding 1)) (.copy (.generated .binding 2))), (.move (.generated .binding 4))]))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.move (.generated .binding 3)), (.call (.function 1) [(.move (.generated .binding 4)), (.move (.generated .binding 1)), (.copy (.generated .binding 2))] false)])))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 4)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 5)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.clone (.generated .binding 3)))] (.move (.generated .part 3)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false)) (Corr.prim (ts := [.string, .string]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.clone (.generated .binding 3)))]) (tail := (.move (.generated .part 3))) (Corr.first (ta := .string) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.list (.pair .string .nat)), (some 4)), (3, (.pair .string .nat), (some 3)), (2, .nat, (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .cons [(.pair (.move (.generated .binding 1)) (.copy (.generated .binding 2))), (.move (.generated .binding 0))])) (Corr.mCons (Γ' := [(4, (.list (.pair .string .nat)), (some 4)), (3, (.pair .string .nat), (some 3)), (2, .nat, (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct .cons [(.pair (.move (.generated .binding 1)) (.copy (.generated .binding 2))), (.move (.generated .binding 4))])) (Corr.mCons (Γ' := [(4, (.list (.pair .string .nat)), (some 4)), (3, (.pair .string .nat), (some 3)), (2, .nat, (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.construct .cons [(.move (.generated .binding 3)), (.call (.function 1) [(.move (.generated .binding 4)), (.move (.generated .binding 1)), (.copy (.generated .binding 2))] false)])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.pair .string .nat), (.list (.pair .string .nat))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .string .nat)), .string, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [(.pair .string .nat), (.list (.pair .string .nat))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := [(.pair .string .nat), (.list (.pair .string .nat))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := [(.pair .string .nat), (.list (.pair .string .nat))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 7)) none (.clone (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 7)) [(.mk .none (.mk [] (.construct (.nil (.pair .str .nat)) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 11)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 10)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 8)), .wild]) none (.clone (.generated .binding 2)))] (.move (.generated .part 8)))))] (.call (.runtime .compare) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false))))] (.matchOn (.move (.generated .holder 11)) [(.mk (.ordering .less) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 3)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.move (.generated .binding 2)), (.call (.function 2) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)])))])))]), [(1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.pair .string .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.nil (.pair .str .nat)) [])) (Corr.mCons (Γ' := [(3, (.list (.pair .string .nat)), (some 3)), (2, (.pair .string .nat), (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 11)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 10)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 8)), .wild]) none (.clone (.generated .binding 2)))] (.move (.generated .part 8)))))] (.call (.runtime .compare) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false))))]) (tail := (.matchOn (.move (.generated .holder 11)) [(.mk (.ordering .less) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 3)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.move (.generated .binding 2)), (.call (.function 2) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)])))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 9)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 10)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 8)), .wild]) none (.clone (.generated .binding 2)))] (.move (.generated .part 8)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false)) (Corr.prim (ts := [.string, .string]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 8)), .wild]) none (.clone (.generated .binding 2)))]) (tail := (.move (.generated .part 8))) (Corr.first (ta := .string) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list (.pair .string .nat)), (some 3)), (2, (.pair .string .nat), (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 0))) (Corr.mCons (Γ' := [(3, (.list (.pair .string .nat)), (some 3)), (2, (.pair .string .nat), (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.move (.generated .binding 3))) (Corr.mCons (Γ' := [(3, (.list (.pair .string .nat)), (some 3)), (2, (.pair .string .nat), (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.construct .cons [(.move (.generated .binding 2)), (.call (.function 2) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.pair .string .nat), (.list (.pair .string .nat))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .string .nat)), .string]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun3 : FunOK program krate flags 3 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 12)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 12)) [(.mk .none (.mk [] (.construct (.none .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 16)) none (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 15)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 13)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 13)))))] (.call (.runtime .compare) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false))))] (.matchOn (.move (.generated .holder 16)) [(.mk (.ordering .less) (.mk [] (.construct (.none .nat) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 17))]) none (.move (.generated .binding 2)))] (.move (.generated .part 17))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 3) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)))])))]), [(1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.pair .string .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none .nat) [])) (Corr.mCons (Γ' := [(3, (.list (.pair .string .nat)), (some 3)), (2, (.pair .string .nat), (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 16)) none (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 15)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 13)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 13)))))] (.call (.runtime .compare) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false))))]) (tail := (.matchOn (.move (.generated .holder 16)) [(.mk (.ordering .less) (.mk [] (.construct (.none .nat) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 17))]) none (.move (.generated .binding 2)))] (.move (.generated .part 17))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 3) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 14)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 15)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 13)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 13)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false)) (Corr.prim (ts := [.string, .string]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 13)), .wild]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 13))) (Corr.first (ta := .string) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list (.pair .string .nat)), (some 3)), (2, (.pair .string .nat), (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none .nat) [])) (Corr.mCons (Γ' := [(3, (.list (.pair .string .nat)), (some 3)), (2, (.pair .string .nat), (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 17))]) none (.move (.generated .binding 2)))] (.move (.generated .part 17))))])) (Corr.mCons (Γ' := [(3, (.list (.pair .string .nat)), (some 3)), (2, (.pair .string .nat), (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.call (.function 3) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list (.pair .string .nat)), .string]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 17))]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 17))) (Corr.second (ta := .string) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun4 : FunOK program krate flags 4 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 18)) none (.call (.function 5) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false))], (.matchOn (.move (.generated .holder 18)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some .wild) (.mk [] (.lit (.bool true))))]), [(1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .string .nat)), .string]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(2, .nat, none), (1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ - -theorem fun5 : FunOK program krate flags 5 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 19)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 19)) [(.mk .none (.mk [] (.construct (.none .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 23)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 20)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 20)))))] (.call (.runtime .compare) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.matchOn (.move (.generated .holder 23)) [(.mk (.ordering .less) (.mk [] (.construct (.none .nat) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 24))]) none (.move (.generated .binding 2)))] (.move (.generated .part 24))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 5) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)))])))]), [(1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.pair .string .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none .nat) [])) (Corr.mCons (Γ' := [(3, (.list (.pair .string .nat)), (some 3)), (2, (.pair .string .nat), (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 23)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 20)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 20)))))] (.call (.runtime .compare) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))]) (tail := (.matchOn (.move (.generated .holder 23)) [(.mk (.ordering .less) (.mk [] (.construct (.none .nat) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 24))]) none (.move (.generated .binding 2)))] (.move (.generated .part 24))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 5) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 21)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 20)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 20)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false)) (Corr.prim (ts := [.string, .string]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 20)), .wild]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 20))) (Corr.first (ta := .string) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list (.pair .string .nat)), (some 3)), (2, (.pair .string .nat), (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none .nat) [])) (Corr.mCons (Γ' := [(3, (.list (.pair .string .nat)), (some 3)), (2, (.pair .string .nat), (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 24))]) none (.move (.generated .binding 2)))] (.move (.generated .part 24))))])) (Corr.mCons (Γ' := [(3, (.list (.pair .string .nat)), (some 3)), (2, (.pair .string .nat), (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.call (.function 5) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list (.pair .string .nat)), .string]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 24))]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 24))) (Corr.second (ta := .string) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun6 : FunOK program krate flags 6 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 25)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 25)) [(.mk .none (.mk [] (.construct (.nil .str) []))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.construct .cons [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 26)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 26)))), (.call (.function 6) [(.move (.generated .binding 2))] false)])))]), [(0, (.list (.pair .string .nat)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.pair .string .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list (.pair .string .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.nil .str) [])) (Corr.mCons (Γ' := [(2, (.list (.pair .string .nat)), (some 2)), (1, (.pair .string .nat), (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct .cons [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 26)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 26)))), (.call (.function 6) [(.move (.generated .binding 2))] false)])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [.string, (.list .string)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 26)), .wild]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 26))) (Corr.first (ta := .string) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .string .nat))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun7 : FunOK program krate flags 7 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 27)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 27)) [(.mk .none (.mk [] (.construct (.nil .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.construct .cons [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 28))]) none (.move (.generated .binding 1)))] (.move (.generated .part 28)))), (.call (.function 7) [(.move (.generated .binding 2))] false)])))]), [(0, (.list (.pair .string .nat)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.pair .string .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list (.pair .string .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.nil .nat) [])) (Corr.mCons (Γ' := [(2, (.list (.pair .string .nat)), (some 2)), (1, (.pair .string .nat), (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct .cons [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 28))]) none (.move (.generated .binding 1)))] (.move (.generated .part 28)))), (.call (.function 7) [(.move (.generated .binding 2))] false)])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 28))]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 28))) (Corr.second (ta := .string) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .string .nat))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun8 : FunOK program krate flags 8 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 29)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 29)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 9) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 30))]) none (.move (.generated .binding 1)))] (.move (.generated .part 30))))] false) (.mk [(.mk (.bind (.generated .holder 31)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 31)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 36)) none (.block (.mk [(.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 32)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 32))))), (.mk (.bind (.generated .operand 35)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 33)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 33)))))] (.call (.runtime .compare) [(.move (.generated .operand 34)), (.move (.generated .operand 35))] false))))] (.cond (.matchOn (.move (.generated .holder 36)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 8) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]), [(0, (.list (.pair .string .nat)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.pair .string .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list (.pair .string .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, (.list (.pair .string .nat)), (some 2)), (1, (.pair .string .nat), (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 9) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 30))]) none (.move (.generated .binding 1)))] (.move (.generated .part 30))))] false) (.mk [(.mk (.bind (.generated .holder 31)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 31)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 36)) none (.block (.mk [(.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 32)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 32))))), (.mk (.bind (.generated .operand 35)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 33)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 33)))))] (.call (.runtime .compare) [(.move (.generated .operand 34)), (.move (.generated .operand 35))] false))))] (.cond (.matchOn (.move (.generated .holder 36)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 8) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 9) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 30))]) none (.move (.generated .binding 1)))] (.move (.generated .part 30))))] false)) (lk := []) (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 30))]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 30))) (Corr.second (ta := .string) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .holder 31)) none (.clone (.generated .binding 2)))]) (ta := (.matchOn (.uncons (.generated .holder 31)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 36)) none (.block (.mk [(.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 32)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 32))))), (.mk (.bind (.generated .operand 35)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 33)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 33)))))] (.call (.runtime .compare) [(.move (.generated .operand 34)), (.move (.generated .operand 35))] false))))] (.cond (.matchOn (.move (.generated .holder 36)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 8) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (lb := []) (tb := (.lit (.bool false))) (Corr.matchArms (st := (.list (.pair .string .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.pair .string .nat)), (some 2)), (1, (.pair .string .nat), (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair .string .nat)), none), (3, (.pair .string .nat), (some 3)), (2, (.list (.pair .string .nat)), (some 2)), (1, (.pair .string .nat), (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 36)) none (.block (.mk [(.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 32)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 32))))), (.mk (.bind (.generated .operand 35)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 33)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 33)))))] (.call (.runtime .compare) [(.move (.generated .operand 34)), (.move (.generated .operand 35))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 36)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 8) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .holder 36)) none (.block (.mk [(.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 32)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 32))))), (.mk (.bind (.generated .operand 35)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 33)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 33)))))] (.call (.runtime .compare) [(.move (.generated .operand 34)), (.move (.generated .operand 35))] false))))]) (ce := (.matchOn (.move (.generated .holder 36)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 32)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 32))))), (.mk (.bind (.generated .operand 35)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 33)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 33)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 34)), (.move (.generated .operand 35))] false)) (Corr.prim (ts := [.string, .string]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 32)), .wild]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 32))) (Corr.first (ta := .string) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 33)), .wild]) none (.move (.generated .binding 3)))]) (tail := (.move (.generated .part 33))) (Corr.first (ta := .string) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.list (.pair .string .nat)), none), (3, (.pair .string .nat), (some 3)), (2, (.list (.pair .string .nat)), (some 2)), (1, (.pair .string .nat), (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair .string .nat)), none), (3, (.pair .string .nat), (some 3)), (2, (.list (.pair .string .nat)), (some 2)), (1, (.pair .string .nat), (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, (.list (.pair .string .nat)), none), (3, (.pair .string .nat), (some 3)), (2, (.list (.pair .string .nat)), (some 2)), (1, (.pair .string .nat), (some 1)), (0, (.list (.pair .string .nat)), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 8) [(.move (.generated .binding 2))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.list (.pair .string .nat))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ - -theorem fun9 : FunOK program krate flags 9 := - ⟨_, rfl, .inl ⟨_, _, [], (.lit (.bool true)), [(0, .nat, none)], rfl, rfl, - (Corr.bOfE (Corr.buildConst rfl))⟩⟩ - -theorem fun10 : FunOK program krate flags 10 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 8) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 2))] false)])) (.mk [] (.construct (.none (.pair (.list (.pair .str .nat)) (.pair (.list (.pair .str .nat)) (.pair (.option .nat) (.pair .bool (.pair (.list .str) (.pair (.list .nat) (.pair .nat (.list (.pair .str .nat)))))))))) []))), [(2, .nat, (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string .nat)), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 8) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.list (.pair .string .nat))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 2))] false)])) (lb := []) (tb := (.construct (.none (.pair (.list (.pair .str .nat)) (.pair (.list (.pair .str .nat)) (.pair (.option .nat) (.pair .bool (.pair (.list .str) (.pair (.list .nat) (.pair .nat (.list (.pair .str .nat)))))))))) [])) (Corr.build (ts := [(.pair (.list (.pair .string .nat)) (.pair (.list (.pair .string .nat)) (.pair (.option .nat) (.pair .bool (.pair (.list .string) (.pair (.list .nat) (.pair .nat (.list (.pair .string .nat)))))))))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .string .nat)), .string, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | 3 => exact fun3 - | 4 => exact fun4 - | 5 => exact fun5 - | 6 => exact fun6 - | 7 => exact fun7 - | 8 => exact fun8 - | 9 => exact fun9 - | 10 => exact fun10 - | _ + 11 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R10/Compose/RustCore.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R10/Compose/RustCore.lex.tex deleted file mode 100644 index 6330ed302..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R10/Compose/RustCore.lex.tex +++ /dev/null @@ -1,462 +0,0 @@ -\begin{lexlean}{RustCore} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.Compose.RustCore} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.RustCore, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.Compose.RustCore.root : @914 := @915 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.Compose.RustCore.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.RustCore.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.RustCore.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.RustCore.flags -@3 := Nat -@4 := #2 -@5 := LexLeanTarget.TargetSyntax.Value.nat -@6 := @5 @4 -@7 := LexLeanTarget.TargetSyntax.Ty.nat -@8 := LexLeanTarget.TargetSyntax.Program -@9 := LexLeanPreservation.Rust.RCrate -@10 := LexLeanPreservation.Rust.Flags -@11 := LexLeanPreservation.Rust.WT -@12 := #3 -@14 := @11 @12 @4 -@15 := #1 -@16 := @14 @15 -@17 := #0 -@18 := @5 @17 -@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 -@26 := LexLeanPreservation.Rust.wt_nat @0 -@27 := @11 @0 -@34 := {c : @9} -> {A : @10} -> (n : @3) -> @27 @4 @15 @18 @7 -@35 := @26 @1 -@36 := @27 @1 -@41 := {A : @10} -> (n : @3) -> @36 @15 @18 @7 -@42 := @35 @2 -@43 := @36 @2 -@46 := (n : @3) -> @43 @18 @7 -@47 := @42 @4 -@49 := @43 @6 @7 -@50 := @5 @15 -@51 := @42 @15 -@53 := @43 @50 @7 -@54 := LexLeanTarget.TargetSyntax.Value -@55 := List.nil.{0} -@56 := List.cons.{0} -@57 := @55 @54 -@58 := @56 @54 -@59 := @58 @50 -@60 := @59 @57 -@61 := @58 @6 -@62 := @61 @60 -@65 := Prod.{0, 0} @3 @54 -@66 := 1 -@69 := Prod.mk.{0, 0} @3 @54 -@70 := @69 @66 -@71 := @70 @50 -@72 := 0 -@73 := @69 @72 -@74 := @73 @6 -@75 := @55 @65 -@76 := @56 @65 -@78 := @76 @74 @75 -@80 := @76 @71 @78 -@81 := Bool.true -@82 := LexLeanTarget.TargetSyntax.Function -@83 := LexLeanTarget.TargetSyntax.Program.functions -@84 := @83 @0 -@85 := LexLeanTarget.TargetSyntax.Ty -@86 := @55 @3 -@87 := @55 @85 -@88 := LexLeanTarget.TargetSyntax.Ty.unit -@89 := LexLeanTarget.TargetSyntax.Value.unit -@92 := LexLeanTarget.TargetSyntax.Expr.value @88 @89 -@97 := LexLeanTarget.TargetSyntax.Function.mk @86 @87 @88 @92 -@102 := List.getD.{0} @82 @84 @72 @97 -@106 := fun (__e_n : @3) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.RustCore.root @17 @72 -@107 := LexLeanPreservation.Rust.WTL -@115 := {p : @8} -> {c : @9} -> {A : @10} -> @107 @4 @15 @17 @57 @87 -@117 := LexLeanPreservation.Rust.wtl_nil @0 -@118 := @107 @0 -@124 := {c : @9} -> {A : @10} -> @118 @15 @17 @57 @87 -@125 := @117 @1 -@126 := @118 @1 -@130 := {A : @10} -> @126 @17 @57 @87 -@131 := @125 @2 -@132 := @126 @2 -@133 := @132 @57 -@134 := @133 @87 -@135 := List.{0} -@136 := @135 @54 -@137 := @135 @85 -@138 := #6 -@139 := @11 @138 -@140 := #5 -@141 := @139 @140 -@142 := #4 -@145 := @141 @142 @12 @4 -@146 := #7 -@151 := @107 @146 @138 @140 @4 @15 -@152 := #8 -@155 := @107 @152 @146 @138 -@157 := @58 @140 @12 -@158 := @155 @157 -@159 := @56 @85 -@161 := @159 @142 @4 -@171 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {v : @54} -> {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @145) -> (hs : @151) -> @158 @161 -@173 := LexLeanPreservation.Rust.wtl_cons @0 -@193 := {c : @9} -> - {A : @10} -> - {v : @54} -> - {t : @85} -> - {vs : @136} -> - {ts : @137} -> - (h : @27 @140 @142 @12 @4) -> (hs : @118 @138 @140 @4 @15) -> @118 @146 @138 @157 @161 -@194 := @173 @1 -@210 := {A : @10} -> - {v : @54} -> - {t : @85} -> - {vs : @136} -> - {ts : @137} -> (h : @36 @142 @12 @4) -> (hs : @126 @140 @4 @15) -> @126 @138 @157 @161 -@211 := @194 @2 -@213 := @43 @12 @4 -@215 := @132 @4 @15 -@223 := {v : @54} -> - {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @213) -> (hs : @215) -> @132 @157 @161 -@224 := @211 @50 -@225 := @5 @142 -@226 := @43 @225 -@227 := @226 @4 -@228 := @5 @138 -@229 := @58 @228 -@231 := @132 (@229 @12) -@237 := {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @227) -> (hs : @215) -> @231 @161 -@238 := @224 @7 -@239 := @5 @12 -@241 := @43 @239 @7 -@242 := @5 @140 -@243 := @58 @242 -@245 := @132 (@243 @12) -@246 := @159 @7 -@247 := @246 @4 -@252 := {vs : @136} -> {ts : @137} -> (h : @241) -> (hs : @215) -> @245 @247 -@253 := @238 @57 -@254 := @133 @15 -@255 := @58 @225 -@256 := @255 @57 -@261 := {ts : @137} -> (h : @49) -> (hs : @254) -> @132 @256 @247 -@262 := @253 @87 -@263 := @58 @239 -@264 := @263 @57 -@265 := @132 @264 -@266 := @246 @87 -@269 := (h : @53) -> (hs : @134) -> @265 @266 -@270 := @262 @51 -@271 := @61 @57 -@273 := @132 @271 @266 -@274 := (hs : @134) -> @273 -@275 := @270 @131 -@277 := @132 @60 @266 -@278 := @211 @6 -@280 := @43 @242 @4 -@281 := @5 @146 -@282 := @58 @281 -@290 := {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @280) -> (hs : @215) -> @132 (@282 @12) @161 -@291 := @278 @7 -@297 := {vs : @136} -> {ts : @137} -> (h : @226 @7) -> (hs : @215) -> @231 @247 -@298 := @291 @60 -@299 := @265 @15 -@300 := @243 @256 -@301 := @132 @300 -@305 := {ts : @137} -> (h : @241) -> (hs : @299) -> @301 @247 -@306 := @298 @266 -@307 := @255 @264 -@308 := @132 @307 -@309 := @246 @266 -@312 := (h : @49) -> (hs : @273) -> @308 @309 -@313 := @306 @47 -@314 := @263 @271 -@315 := @132 @314 -@317 := (hs : @277) -> @315 @309 -@318 := @313 @275 -@319 := @132 @62 -@320 := @319 @309 -@321 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.denote -@323 := @321 @4 @15 -@324 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.__fits_0 -@326 := @324 @4 @15 -@330 := @5 (Coverage.Main.natOps @4 @15) -@333 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.root @4 @15 -@334 := Bool -@335 := Ne.{1} -@336 := LexLeanPreservation.Obs -@337 := @335 @336 -@338 := LexLeanPreservation.Rel -@341 := @337 (@338 @15 @17) -@342 := LexLeanPreservation.Obs.stuck -@345 := (f : @334) -> (v : @54) -> @341 @342 -@347 := LexLeanPreservation.Rust.rel_ne_stuck @326 -@354 := (v : @54) -> @337 (@338 (@324 @12 @4) @17) @342 -@355 := @347 @330 -@359 := @337 (@338 @326 @330) @342 -@360 := @135 @65 -@361 := LexLeanPreservation.Rust.FunSem -@362 := #9 -@368 := (n : @3) -> @361 @362 @152 @146 @17 @138 -@369 := Eq.{1} -@370 := Option.{0} -@371 := @370 @82 -@372 := @369 @371 -@379 := LexLeanRuntime.index (@135 @82) @82 (LexLeanRuntime.instIndexableList @82) -@383 := @372 (@379 (@83 @362) @138) -@384 := Option.some.{0} -@385 := @384 @82 -@386 := @385 @140 -@387 := @383 @386 -@388 := #10 -@392 := @107 @388 @362 @152 @140 -@393 := LexLeanTarget.TargetSyntax.Function.types -@394 := @393 @138 -@395 := @392 @394 -@396 := @370 @360 -@397 := @369 @396 -@398 := LexLeanTarget.TargetSemantics.bindAll -@399 := LexLeanTarget.TargetSyntax.Function.parameters -@404 := @397 (@398 (@399 @146) @138 @75) -@405 := @384 @360 -@406 := @405 @140 -@407 := @404 @406 -@408 := @370 @334 -@409 := @369 @408 -@410 := LexLeanPreservation.Rust.fnFallible -@411 := #11 -@414 := @409 (@410 @411 @362) -@415 := @384 @334 -@416 := @415 @140 -@417 := @414 @416 -@418 := LexLeanPreservation.RunConv -@419 := #13 -@423 := @418 @419 @388 @152 @140 -@425 := @337 @138 @342 -@426 := Exists.{1} -@427 := LexLeanPreservation.Rust.ROut -@428 := @426 @427 -@429 := And -@430 := LexLeanPreservation.Rust.RealizesFn -@434 := @429 (@430 @362 @152 @17) -@435 := LexLeanPreservation.Rust.RCI -@437 := @435 #15 -@438 := LexLeanPreservation.Rust.fnIdent -@439 := @438 @419 -@446 := (hne : @425) -> @428 (fun (ro : @427) => @434 (@437 @439 @411 @17)) -@461 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {f : @3} -> - {fn : @82} -> - {args : @136} -> - {env : @360} -> - {F : @334} -> - {o : @336} -> - (hB : @368) -> - (hfn : @387) -> (hwt : @395) -> (hbind : @407) -> (hF : @417) -> (hA : @423) -> @446 -@463 := LexLeanPreservation.Rust.compose @0 -@464 := @361 @0 -@469 := (n : @3) -> @464 @152 @146 @17 @138 -@470 := @379 @84 -@473 := @372 (@470 @138) @386 -@477 := @118 @362 @152 @140 @394 -@478 := @418 @0 -@481 := @478 @388 @152 @140 -@495 := {c : @9} -> - {A : @10} -> - {f : @3} -> - {fn : @82} -> - {args : @136} -> - {env : @360} -> - {F : @334} -> - {o : @336} -> - (hB : @469) -> - (hfn : @473) -> (hwt : @477) -> (hbind : @407) -> (hF : @417) -> (hA : @481) -> @446 -@496 := @463 @1 -@497 := @464 @1 -@501 := (n : @3) -> @497 @146 @17 @138 -@504 := @126 @152 @140 @394 -@505 := @410 @1 -@508 := @409 (@505 @362) @416 -@509 := @435 @1 -@519 := (hbind : @407) -> - (hF : @508) -> (hA : @481) -> (hne : @425) -> @428 (fun (ro : @427) => @434 (@509 @439 @411 @17)) -@529 := {A : @10} -> - {f : @3} -> - {fn : @82} -> - {args : @136} -> - {env : @360} -> {F : @334} -> {o : @336} -> (hB : @501) -> (hfn : @473) -> (hwt : @504) -> @519 -@530 := @496 @2 -@532 := @497 @2 @17 -@534 := (n : @3) -> @532 @138 -@535 := @132 @140 -@536 := @535 @394 -@545 := {f : @3} -> - {fn : @82} -> - {args : @136} -> - {env : @360} -> {F : @334} -> {o : @336} -> (hB : @534) -> (hfn : @473) -> (hwt : @536) -> @519 -@546 := @530 @72 -@548 := (n : @3) -> @532 @72 -@549 := @470 @72 -@550 := @372 @549 -@551 := @550 @386 -@552 := @505 @72 -@553 := @409 @552 -@554 := @553 @416 -@555 := @478 @72 -@557 := @555 @152 @140 -@559 := @509 (@438 @72) -@567 := (hF : @554) -> (hA : @557) -> (hne : @425) -> @428 (fun (ro : @427) => @434 (@559 @411 @17)) -@576 := {fn : @82} -> - {args : @136} -> - {env : @360} -> - {F : @334} -> {o : @336} -> (hB : @548) -> (hfn : @551) -> (hwt : @536) -> (hbind : @407) -> @567 -@577 := @546 @102 -@579 := @550 (@385 @102) -@580 := @393 @102 -@581 := @535 @580 -@583 := @398 (@399 @102) -@595 := {args : @136} -> - {env : @360} -> - {F : @334} -> - {o : @336} -> - (hB : @548) -> (hfn : @579) -> (hwt : @581) -> (hbind : @397 (@583 @138 @75) @406) -> @567 -@596 := @577 @62 -@598 := @282 (@229 @57) -@600 := @132 @598 @580 -@602 := @58 (@5 @152) -@604 := @602 (@282 @57) -@608 := @397 (@583 @604 @75) @406 -@610 := @58 (@5 @388) -@612 := @58 (@5 @362) -@614 := @610 (@612 @57) -@616 := @555 @614 @140 -@618 := @58 (@5 @419) -@621 := @58 (@5 #12) -@638 := {env : @360} -> - {F : @334} -> - {o : @336} -> - (hB : @548) -> - (hfn : @579) -> - (hwt : @600) -> - (hbind : @608) -> - (hF : @554) -> - (hA : @616) -> (hne : @425) -> @428 (fun (ro : @427) => @434 (@559 (@618 (@621 @57)) @17)) -@639 := @596 @80 -@641 := @229 (@243 @57) -@643 := @132 @641 @580 -@654 := @397 (@583 @598 @75) (@405 (@76 (@70 @228) (@76 (@73 @281) @75))) -@656 := @612 (@602 @57) -@658 := @555 @656 @140 -@660 := @58 (@5 @411) -@676 := {F : @334} -> - {o : @336} -> - (hB : @548) -> - (hfn : @579) -> - (hwt : @643) -> - (hbind : @654) -> - (hF : @554) -> - (hA : @658) -> (hne : @425) -> @428 (fun (ro : @427) => @434 (@559 (@621 (@660 @57)) @17)) -@677 := @639 @81 -@678 := @301 @580 -@689 := @397 (@583 @641 @75) (@405 (@76 (@70 @242) (@76 (@73 @228) @75))) -@691 := @553 (@415 @81) -@693 := @555 @604 @140 -@694 := @430 @81 -@712 := {o : @336} -> - (hB : @548) -> - (hfn : @579) -> - (hwt : @678) -> - (hbind : @689) -> - (hF : @691) -> - (hA : @693) -> - (hne : @425) -> @428 (fun (ro : @427) => @429 (@694 @152 @17) (@559 (@660 (@610 @57)) @17)) -@713 := @677 @323 -@714 := @308 @580 -@725 := @397 (@583 @300 @75) (@405 (@76 (@70 @225) (@76 (@73 @242) @75))) -@726 := @555 @598 -@728 := @321 @146 @138 -@729 := @726 @728 -@731 := @321 @152 @146 -@750 := (hB : @548) -> - (hfn : @579) -> - (hwt : @714) -> - (hbind : @725) -> - (hF : @691) -> - (hA : @729) -> - (hne : @337 @731 @342) -> - @428 (fun (ro : @427) => @429 (@694 (@321 @388 @362) @17) (@559 @614 @17)) -@751 := @713 @106 -@752 := @315 @580 -@763 := @397 (@583 @307 @75) (@405 (@76 (@70 @239) (@76 (@73 @225) @75))) -@764 := @555 @641 -@766 := @321 @138 @140 -@785 := (hfn : @579) -> - (hwt : @752) -> - (hbind : @763) -> - (hF : @691) -> - (hA : @764 @766) -> - (hne : @337 @728 @342) -> - @428 (fun (ro : @427) => @429 (@694 (@321 @362 @152) @17) (@559 @656 @17)) -@786 := Eq.refl.{1} -@789 := @751 (@786 @371 @549) -@790 := @319 @580 -@801 := @397 (@583 @314 @75) (@405 (@76 (@70 @6) (@76 (@73 @239) @75))) -@802 := @555 @300 -@804 := @321 @140 @142 -@820 := (hwt : @790) -> - (hbind : @801) -> - (hF : @691) -> - (hA : @802 @804) -> - (hne : @337 @766 @342) -> @428 (fun (ro : @427) => @429 (@694 @731 @17) (@559 @604 @17)) -@821 := @789 @318 -@823 := @583 @62 @75 -@826 := @397 @823 (@405 @80) -@827 := @555 @307 -@829 := @321 @142 @12 -@844 := (hbind : @826) -> - (hF : @691) -> - (hA : @827 @829) -> - (hne : @337 @804 @342) -> @428 (fun (ro : @427) => @429 (@694 @728 @17) (@559 @598 @17)) -@847 := @821 (@786 @396 @823) -@848 := @555 @314 -@850 := @321 @12 @4 -@864 := (hF : @691) -> - (hA : @848 @850) -> - (hne : @337 @829 @342) -> @428 (fun (ro : @427) => @429 (@694 @766 @17) (@559 @641 @17)) -@867 := @847 (@786 @408 @552) -@881 := (hA : @555 @62 @323) -> - (hne : @337 @850 @342) -> @428 (fun (ro : @427) => @429 (@694 @804 @17) (@559 @300 @17)) -@882 := @867 @333 -@893 := (hne : @337 @323 @342) -> @428 (fun (ro : @427) => @429 (@694 @829 @17) (@559 @307 @17)) -@894 := @882 @355 -@900 := @429 (@694 @850 @17) (@559 @314 @17) -@902 := @428 (fun (ro : @427) => @900) -@904 := @428 (fun (__e_ro : @427) => @900) -@909 := LexLeanPreservation.Rust.RepresentableL (@59 (@58 @18 @57)) -@910 := (__e_hrep : @909) -> @904 -@911 := fun (__e_hrep : @909) => @894 -@912 := (b : @3) -> @910 -@913 := fun (b : @3) => @911 -@914 := (a : @3) -> @912 -@915 := fun (a : @3) => @913 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R10/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R10/Compose/RustStd.lex.tex deleted file mode 100644 index b4f587e3a..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R10/Compose/RustStd.lex.tex +++ /dev/null @@ -1,462 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.Compose.RustStd.root : @914 := @915 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.RustStd.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.RustStd.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.RustStd.flags -@3 := Nat -@4 := #2 -@5 := LexLeanTarget.TargetSyntax.Value.nat -@6 := @5 @4 -@7 := LexLeanTarget.TargetSyntax.Ty.nat -@8 := LexLeanTarget.TargetSyntax.Program -@9 := LexLeanPreservation.Rust.RCrate -@10 := LexLeanPreservation.Rust.Flags -@11 := LexLeanPreservation.Rust.WT -@12 := #3 -@14 := @11 @12 @4 -@15 := #1 -@16 := @14 @15 -@17 := #0 -@18 := @5 @17 -@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 -@26 := LexLeanPreservation.Rust.wt_nat @0 -@27 := @11 @0 -@34 := {c : @9} -> {A : @10} -> (n : @3) -> @27 @4 @15 @18 @7 -@35 := @26 @1 -@36 := @27 @1 -@41 := {A : @10} -> (n : @3) -> @36 @15 @18 @7 -@42 := @35 @2 -@43 := @36 @2 -@46 := (n : @3) -> @43 @18 @7 -@47 := @42 @4 -@49 := @43 @6 @7 -@50 := @5 @15 -@51 := @42 @15 -@53 := @43 @50 @7 -@54 := LexLeanTarget.TargetSyntax.Value -@55 := List.nil.{0} -@56 := List.cons.{0} -@57 := @55 @54 -@58 := @56 @54 -@59 := @58 @50 -@60 := @59 @57 -@61 := @58 @6 -@62 := @61 @60 -@65 := Prod.{0, 0} @3 @54 -@66 := 1 -@69 := Prod.mk.{0, 0} @3 @54 -@70 := @69 @66 -@71 := @70 @50 -@72 := 0 -@73 := @69 @72 -@74 := @73 @6 -@75 := @55 @65 -@76 := @56 @65 -@78 := @76 @74 @75 -@80 := @76 @71 @78 -@81 := Bool.true -@82 := LexLeanTarget.TargetSyntax.Function -@83 := LexLeanTarget.TargetSyntax.Program.functions -@84 := @83 @0 -@85 := LexLeanTarget.TargetSyntax.Ty -@86 := @55 @3 -@87 := @55 @85 -@88 := LexLeanTarget.TargetSyntax.Ty.unit -@89 := LexLeanTarget.TargetSyntax.Value.unit -@92 := LexLeanTarget.TargetSyntax.Expr.value @88 @89 -@97 := LexLeanTarget.TargetSyntax.Function.mk @86 @87 @88 @92 -@102 := List.getD.{0} @82 @84 @72 @97 -@106 := fun (__e_n : @3) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.RustStd.root @17 @72 -@107 := LexLeanPreservation.Rust.WTL -@115 := {p : @8} -> {c : @9} -> {A : @10} -> @107 @4 @15 @17 @57 @87 -@117 := LexLeanPreservation.Rust.wtl_nil @0 -@118 := @107 @0 -@124 := {c : @9} -> {A : @10} -> @118 @15 @17 @57 @87 -@125 := @117 @1 -@126 := @118 @1 -@130 := {A : @10} -> @126 @17 @57 @87 -@131 := @125 @2 -@132 := @126 @2 -@133 := @132 @57 -@134 := @133 @87 -@135 := List.{0} -@136 := @135 @54 -@137 := @135 @85 -@138 := #6 -@139 := @11 @138 -@140 := #5 -@141 := @139 @140 -@142 := #4 -@145 := @141 @142 @12 @4 -@146 := #7 -@151 := @107 @146 @138 @140 @4 @15 -@152 := #8 -@155 := @107 @152 @146 @138 -@157 := @58 @140 @12 -@158 := @155 @157 -@159 := @56 @85 -@161 := @159 @142 @4 -@171 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {v : @54} -> {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @145) -> (hs : @151) -> @158 @161 -@173 := LexLeanPreservation.Rust.wtl_cons @0 -@193 := {c : @9} -> - {A : @10} -> - {v : @54} -> - {t : @85} -> - {vs : @136} -> - {ts : @137} -> - (h : @27 @140 @142 @12 @4) -> (hs : @118 @138 @140 @4 @15) -> @118 @146 @138 @157 @161 -@194 := @173 @1 -@210 := {A : @10} -> - {v : @54} -> - {t : @85} -> - {vs : @136} -> - {ts : @137} -> (h : @36 @142 @12 @4) -> (hs : @126 @140 @4 @15) -> @126 @138 @157 @161 -@211 := @194 @2 -@213 := @43 @12 @4 -@215 := @132 @4 @15 -@223 := {v : @54} -> - {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @213) -> (hs : @215) -> @132 @157 @161 -@224 := @211 @50 -@225 := @5 @142 -@226 := @43 @225 -@227 := @226 @4 -@228 := @5 @138 -@229 := @58 @228 -@231 := @132 (@229 @12) -@237 := {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @227) -> (hs : @215) -> @231 @161 -@238 := @224 @7 -@239 := @5 @12 -@241 := @43 @239 @7 -@242 := @5 @140 -@243 := @58 @242 -@245 := @132 (@243 @12) -@246 := @159 @7 -@247 := @246 @4 -@252 := {vs : @136} -> {ts : @137} -> (h : @241) -> (hs : @215) -> @245 @247 -@253 := @238 @57 -@254 := @133 @15 -@255 := @58 @225 -@256 := @255 @57 -@261 := {ts : @137} -> (h : @49) -> (hs : @254) -> @132 @256 @247 -@262 := @253 @87 -@263 := @58 @239 -@264 := @263 @57 -@265 := @132 @264 -@266 := @246 @87 -@269 := (h : @53) -> (hs : @134) -> @265 @266 -@270 := @262 @51 -@271 := @61 @57 -@273 := @132 @271 @266 -@274 := (hs : @134) -> @273 -@275 := @270 @131 -@277 := @132 @60 @266 -@278 := @211 @6 -@280 := @43 @242 @4 -@281 := @5 @146 -@282 := @58 @281 -@290 := {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @280) -> (hs : @215) -> @132 (@282 @12) @161 -@291 := @278 @7 -@297 := {vs : @136} -> {ts : @137} -> (h : @226 @7) -> (hs : @215) -> @231 @247 -@298 := @291 @60 -@299 := @265 @15 -@300 := @243 @256 -@301 := @132 @300 -@305 := {ts : @137} -> (h : @241) -> (hs : @299) -> @301 @247 -@306 := @298 @266 -@307 := @255 @264 -@308 := @132 @307 -@309 := @246 @266 -@312 := (h : @49) -> (hs : @273) -> @308 @309 -@313 := @306 @47 -@314 := @263 @271 -@315 := @132 @314 -@317 := (hs : @277) -> @315 @309 -@318 := @313 @275 -@319 := @132 @62 -@320 := @319 @309 -@321 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.denote -@323 := @321 @4 @15 -@324 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.__fits_0 -@326 := @324 @4 @15 -@330 := @5 (Coverage.Main.natOps @4 @15) -@333 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.root @4 @15 -@334 := Bool -@335 := Ne.{1} -@336 := LexLeanPreservation.Obs -@337 := @335 @336 -@338 := LexLeanPreservation.Rel -@341 := @337 (@338 @15 @17) -@342 := LexLeanPreservation.Obs.stuck -@345 := (f : @334) -> (v : @54) -> @341 @342 -@347 := LexLeanPreservation.Rust.rel_ne_stuck @326 -@354 := (v : @54) -> @337 (@338 (@324 @12 @4) @17) @342 -@355 := @347 @330 -@359 := @337 (@338 @326 @330) @342 -@360 := @135 @65 -@361 := LexLeanPreservation.Rust.FunSem -@362 := #9 -@368 := (n : @3) -> @361 @362 @152 @146 @17 @138 -@369 := Eq.{1} -@370 := Option.{0} -@371 := @370 @82 -@372 := @369 @371 -@379 := LexLeanRuntime.index (@135 @82) @82 (LexLeanRuntime.instIndexableList @82) -@383 := @372 (@379 (@83 @362) @138) -@384 := Option.some.{0} -@385 := @384 @82 -@386 := @385 @140 -@387 := @383 @386 -@388 := #10 -@392 := @107 @388 @362 @152 @140 -@393 := LexLeanTarget.TargetSyntax.Function.types -@394 := @393 @138 -@395 := @392 @394 -@396 := @370 @360 -@397 := @369 @396 -@398 := LexLeanTarget.TargetSemantics.bindAll -@399 := LexLeanTarget.TargetSyntax.Function.parameters -@404 := @397 (@398 (@399 @146) @138 @75) -@405 := @384 @360 -@406 := @405 @140 -@407 := @404 @406 -@408 := @370 @334 -@409 := @369 @408 -@410 := LexLeanPreservation.Rust.fnFallible -@411 := #11 -@414 := @409 (@410 @411 @362) -@415 := @384 @334 -@416 := @415 @140 -@417 := @414 @416 -@418 := LexLeanPreservation.RunConv -@419 := #13 -@423 := @418 @419 @388 @152 @140 -@425 := @337 @138 @342 -@426 := Exists.{1} -@427 := LexLeanPreservation.Rust.ROut -@428 := @426 @427 -@429 := And -@430 := LexLeanPreservation.Rust.RealizesFn -@434 := @429 (@430 @362 @152 @17) -@435 := LexLeanPreservation.Rust.RCI -@437 := @435 #15 -@438 := LexLeanPreservation.Rust.fnIdent -@439 := @438 @419 -@446 := (hne : @425) -> @428 (fun (ro : @427) => @434 (@437 @439 @411 @17)) -@461 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {f : @3} -> - {fn : @82} -> - {args : @136} -> - {env : @360} -> - {F : @334} -> - {o : @336} -> - (hB : @368) -> - (hfn : @387) -> (hwt : @395) -> (hbind : @407) -> (hF : @417) -> (hA : @423) -> @446 -@463 := LexLeanPreservation.Rust.compose @0 -@464 := @361 @0 -@469 := (n : @3) -> @464 @152 @146 @17 @138 -@470 := @379 @84 -@473 := @372 (@470 @138) @386 -@477 := @118 @362 @152 @140 @394 -@478 := @418 @0 -@481 := @478 @388 @152 @140 -@495 := {c : @9} -> - {A : @10} -> - {f : @3} -> - {fn : @82} -> - {args : @136} -> - {env : @360} -> - {F : @334} -> - {o : @336} -> - (hB : @469) -> - (hfn : @473) -> (hwt : @477) -> (hbind : @407) -> (hF : @417) -> (hA : @481) -> @446 -@496 := @463 @1 -@497 := @464 @1 -@501 := (n : @3) -> @497 @146 @17 @138 -@504 := @126 @152 @140 @394 -@505 := @410 @1 -@508 := @409 (@505 @362) @416 -@509 := @435 @1 -@519 := (hbind : @407) -> - (hF : @508) -> (hA : @481) -> (hne : @425) -> @428 (fun (ro : @427) => @434 (@509 @439 @411 @17)) -@529 := {A : @10} -> - {f : @3} -> - {fn : @82} -> - {args : @136} -> - {env : @360} -> {F : @334} -> {o : @336} -> (hB : @501) -> (hfn : @473) -> (hwt : @504) -> @519 -@530 := @496 @2 -@532 := @497 @2 @17 -@534 := (n : @3) -> @532 @138 -@535 := @132 @140 -@536 := @535 @394 -@545 := {f : @3} -> - {fn : @82} -> - {args : @136} -> - {env : @360} -> {F : @334} -> {o : @336} -> (hB : @534) -> (hfn : @473) -> (hwt : @536) -> @519 -@546 := @530 @72 -@548 := (n : @3) -> @532 @72 -@549 := @470 @72 -@550 := @372 @549 -@551 := @550 @386 -@552 := @505 @72 -@553 := @409 @552 -@554 := @553 @416 -@555 := @478 @72 -@557 := @555 @152 @140 -@559 := @509 (@438 @72) -@567 := (hF : @554) -> (hA : @557) -> (hne : @425) -> @428 (fun (ro : @427) => @434 (@559 @411 @17)) -@576 := {fn : @82} -> - {args : @136} -> - {env : @360} -> - {F : @334} -> {o : @336} -> (hB : @548) -> (hfn : @551) -> (hwt : @536) -> (hbind : @407) -> @567 -@577 := @546 @102 -@579 := @550 (@385 @102) -@580 := @393 @102 -@581 := @535 @580 -@583 := @398 (@399 @102) -@595 := {args : @136} -> - {env : @360} -> - {F : @334} -> - {o : @336} -> - (hB : @548) -> (hfn : @579) -> (hwt : @581) -> (hbind : @397 (@583 @138 @75) @406) -> @567 -@596 := @577 @62 -@598 := @282 (@229 @57) -@600 := @132 @598 @580 -@602 := @58 (@5 @152) -@604 := @602 (@282 @57) -@608 := @397 (@583 @604 @75) @406 -@610 := @58 (@5 @388) -@612 := @58 (@5 @362) -@614 := @610 (@612 @57) -@616 := @555 @614 @140 -@618 := @58 (@5 @419) -@621 := @58 (@5 #12) -@638 := {env : @360} -> - {F : @334} -> - {o : @336} -> - (hB : @548) -> - (hfn : @579) -> - (hwt : @600) -> - (hbind : @608) -> - (hF : @554) -> - (hA : @616) -> (hne : @425) -> @428 (fun (ro : @427) => @434 (@559 (@618 (@621 @57)) @17)) -@639 := @596 @80 -@641 := @229 (@243 @57) -@643 := @132 @641 @580 -@654 := @397 (@583 @598 @75) (@405 (@76 (@70 @228) (@76 (@73 @281) @75))) -@656 := @612 (@602 @57) -@658 := @555 @656 @140 -@660 := @58 (@5 @411) -@676 := {F : @334} -> - {o : @336} -> - (hB : @548) -> - (hfn : @579) -> - (hwt : @643) -> - (hbind : @654) -> - (hF : @554) -> - (hA : @658) -> (hne : @425) -> @428 (fun (ro : @427) => @434 (@559 (@621 (@660 @57)) @17)) -@677 := @639 @81 -@678 := @301 @580 -@689 := @397 (@583 @641 @75) (@405 (@76 (@70 @242) (@76 (@73 @228) @75))) -@691 := @553 (@415 @81) -@693 := @555 @604 @140 -@694 := @430 @81 -@712 := {o : @336} -> - (hB : @548) -> - (hfn : @579) -> - (hwt : @678) -> - (hbind : @689) -> - (hF : @691) -> - (hA : @693) -> - (hne : @425) -> @428 (fun (ro : @427) => @429 (@694 @152 @17) (@559 (@660 (@610 @57)) @17)) -@713 := @677 @323 -@714 := @308 @580 -@725 := @397 (@583 @300 @75) (@405 (@76 (@70 @225) (@76 (@73 @242) @75))) -@726 := @555 @598 -@728 := @321 @146 @138 -@729 := @726 @728 -@731 := @321 @152 @146 -@750 := (hB : @548) -> - (hfn : @579) -> - (hwt : @714) -> - (hbind : @725) -> - (hF : @691) -> - (hA : @729) -> - (hne : @337 @731 @342) -> - @428 (fun (ro : @427) => @429 (@694 (@321 @388 @362) @17) (@559 @614 @17)) -@751 := @713 @106 -@752 := @315 @580 -@763 := @397 (@583 @307 @75) (@405 (@76 (@70 @239) (@76 (@73 @225) @75))) -@764 := @555 @641 -@766 := @321 @138 @140 -@785 := (hfn : @579) -> - (hwt : @752) -> - (hbind : @763) -> - (hF : @691) -> - (hA : @764 @766) -> - (hne : @337 @728 @342) -> - @428 (fun (ro : @427) => @429 (@694 (@321 @362 @152) @17) (@559 @656 @17)) -@786 := Eq.refl.{1} -@789 := @751 (@786 @371 @549) -@790 := @319 @580 -@801 := @397 (@583 @314 @75) (@405 (@76 (@70 @6) (@76 (@73 @239) @75))) -@802 := @555 @300 -@804 := @321 @140 @142 -@820 := (hwt : @790) -> - (hbind : @801) -> - (hF : @691) -> - (hA : @802 @804) -> - (hne : @337 @766 @342) -> @428 (fun (ro : @427) => @429 (@694 @731 @17) (@559 @604 @17)) -@821 := @789 @318 -@823 := @583 @62 @75 -@826 := @397 @823 (@405 @80) -@827 := @555 @307 -@829 := @321 @142 @12 -@844 := (hbind : @826) -> - (hF : @691) -> - (hA : @827 @829) -> - (hne : @337 @804 @342) -> @428 (fun (ro : @427) => @429 (@694 @728 @17) (@559 @598 @17)) -@847 := @821 (@786 @396 @823) -@848 := @555 @314 -@850 := @321 @12 @4 -@864 := (hF : @691) -> - (hA : @848 @850) -> - (hne : @337 @829 @342) -> @428 (fun (ro : @427) => @429 (@694 @766 @17) (@559 @641 @17)) -@867 := @847 (@786 @408 @552) -@881 := (hA : @555 @62 @323) -> - (hne : @337 @850 @342) -> @428 (fun (ro : @427) => @429 (@694 @804 @17) (@559 @300 @17)) -@882 := @867 @333 -@893 := (hne : @337 @323 @342) -> @428 (fun (ro : @427) => @429 (@694 @829 @17) (@559 @307 @17)) -@894 := @882 @355 -@900 := @429 (@694 @850 @17) (@559 @314 @17) -@902 := @428 (fun (ro : @427) => @900) -@904 := @428 (fun (__e_ro : @427) => @900) -@909 := LexLeanPreservation.Rust.RepresentableL (@59 (@58 @18 @57)) -@910 := (__e_hrep : @909) -> @904 -@911 := fun (__e_hrep : @909) => @894 -@912 := (b : @3) -> @910 -@913 := fun (b : @3) => @911 -@914 := (a : @3) -> @912 -@915 := fun (a : @3) => @913 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R10/RustCore.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R10/RustCore.lean deleted file mode 100644 index 81d43cfdc..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R10/RustCore.lean +++ /dev/null @@ -1,33 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.RustCore -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1], types := [.nat, .nat], result := .nat, - body := (.«let» 2 .nat (.prim .natQuot [(.var 0), (.var 1), (.value .nat (.nat 7))]) (.«let» 3 .nat (.prim .natRem [(.var 0), (.var 1), (.value .nat (.nat 0))]) (.cond (.cond (.prim .natEq [(.var 2), (.value .nat (.nat 0))]) (.cond (.prim .natLe [(.var 3), (.value .nat (.nat 3))]) (.build .true .bool []) (.prim .boolNot [(.prim .natLt [(.var 0), (.var 1)])])) (.build .false .bool [])) (.prim .natAdd [(.prim .natSub [(.var 0), (.var 1)]), (.var 3)]) (.prim .natMul [(.var 2), (.var 3)])))) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .core, items := [ - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 3)) none (.lit (.nat 7)))] (.call (.runtime .natQuot) [(.move (.generated .operand 1)), (.move (.generated .operand 2)), (.move (.generated .operand 3))] false)))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 0)))] (.call (.runtime .natRem) [(.move (.generated .operand 4)), (.move (.generated .operand 5)), (.move (.generated .operand 6))] false)))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 8)) none (.lit (.nat 0)))] (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false) (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 10)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natLe) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .natLt) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))] (.call (.runtime .boolNot) [(.move (.generated .operand 13))] false)))) (.mk [] (.lit (.bool false)))) (.mk [(.mk (.bind (.generated .operand 16)) none (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false)))), (.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 3)))] (.call (.runtime .natAdd) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false)) (.mk [(.mk (.bind (.generated .operand 18)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 19)) none (.copy (.generated .binding 3)))] (.call (.runtime .natMul) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false)))))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 3)) none (.lit (.nat 7)))] (.call (.runtime .natQuot) [(.move (.generated .operand 1)), (.move (.generated .operand 2)), (.move (.generated .operand 3))] false)))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 0)))] (.call (.runtime .natRem) [(.move (.generated .operand 4)), (.move (.generated .operand 5)), (.move (.generated .operand 6))] false)))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 8)) none (.lit (.nat 0)))], (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false) (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 10)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natLe) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .natLt) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))] (.call (.runtime .boolNot) [(.move (.generated .operand 13))] false)))) (.mk [] (.lit (.bool false)))) (.mk [(.mk (.bind (.generated .operand 16)) none (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false)))), (.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 3)))] (.call (.runtime .natAdd) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false)) (.mk [(.mk (.bind (.generated .operand 18)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 19)) none (.copy (.generated .binding 3)))] (.call (.runtime .natMul) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false))), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 3)) none (.lit (.nat 7)))]) (tail := (.call (.runtime .natQuot) [(.move (.generated .operand 1)), (.move (.generated .operand 2)), (.move (.generated .operand 3))] false)) (Corr.prim (ts := [.nat, .nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 0)))]) (tail := (.call (.runtime .natRem) [(.move (.generated .operand 4)), (.move (.generated .operand 5)), (.move (.generated .operand 6))] false)) (Corr.prim (ts := [.nat, .nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 8)) none (.lit (.nat 0)))]) (ce := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false) (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 10)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natLe) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .natLt) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))] (.call (.runtime .boolNot) [(.move (.generated .operand 13))] false)))) (.mk [] (.lit (.bool false))))) (lk := []) (Corr.cond (lc := [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 8)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 10)) none (.lit (.nat 3)))]) (ta := (.cond (.call (.runtime .natLe) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .natLt) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))] (.call (.runtime .boolNot) [(.move (.generated .operand 13))] false)))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 10)) none (.lit (.nat 3)))]) (ce := (.call (.runtime .natLe) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .natLt) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))]) (tb := (.call (.runtime .boolNot) [(.move (.generated .operand 13))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.prim (ts := [.bool]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natLt) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl))) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.kIf (la := [(.mk (.bind (.generated .operand 16)) none (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false)))), (.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 3)))]) (ta := (.call (.runtime .natAdd) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false)) (lb := [(.mk (.bind (.generated .operand 18)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 19)) none (.copy (.generated .binding 3)))]) (tb := (.call (.runtime .natMul) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false)) (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)))))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | _ + 1 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.RustCore diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R10/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R10/RustStd.lean deleted file mode 100644 index 8411ec452..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R10/RustStd.lean +++ /dev/null @@ -1,33 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1], types := [.nat, .nat], result := .nat, - body := (.«let» 2 .nat (.prim .natQuot [(.var 0), (.var 1), (.value .nat (.nat 7))]) (.«let» 3 .nat (.prim .natRem [(.var 0), (.var 1), (.value .nat (.nat 0))]) (.cond (.cond (.prim .natEq [(.var 2), (.value .nat (.nat 0))]) (.cond (.prim .natLe [(.var 3), (.value .nat (.nat 3))]) (.build .true .bool []) (.prim .boolNot [(.prim .natLt [(.var 0), (.var 1)])])) (.build .false .bool [])) (.prim .natAdd [(.prim .natSub [(.var 0), (.var 1)]), (.var 3)]) (.prim .natMul [(.var 2), (.var 3)])))) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 3)) none (.lit (.nat 7)))] (.call (.runtime .natQuot) [(.move (.generated .operand 1)), (.move (.generated .operand 2)), (.move (.generated .operand 3))] false)))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 0)))] (.call (.runtime .natRem) [(.move (.generated .operand 4)), (.move (.generated .operand 5)), (.move (.generated .operand 6))] false)))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 8)) none (.lit (.nat 0)))] (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false) (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 10)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natLe) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .natLt) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))] (.call (.runtime .boolNot) [(.move (.generated .operand 13))] false)))) (.mk [] (.lit (.bool false)))) (.mk [(.mk (.bind (.generated .operand 16)) none (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false)))), (.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 3)))] (.call (.runtime .natAdd) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false)) (.mk [(.mk (.bind (.generated .operand 18)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 19)) none (.copy (.generated .binding 3)))] (.call (.runtime .natMul) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false)))))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 3)) none (.lit (.nat 7)))] (.call (.runtime .natQuot) [(.move (.generated .operand 1)), (.move (.generated .operand 2)), (.move (.generated .operand 3))] false)))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 0)))] (.call (.runtime .natRem) [(.move (.generated .operand 4)), (.move (.generated .operand 5)), (.move (.generated .operand 6))] false)))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 8)) none (.lit (.nat 0)))], (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false) (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 10)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natLe) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .natLt) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))] (.call (.runtime .boolNot) [(.move (.generated .operand 13))] false)))) (.mk [] (.lit (.bool false)))) (.mk [(.mk (.bind (.generated .operand 16)) none (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false)))), (.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 3)))] (.call (.runtime .natAdd) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false)) (.mk [(.mk (.bind (.generated .operand 18)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 19)) none (.copy (.generated .binding 3)))] (.call (.runtime .natMul) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false))), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 3)) none (.lit (.nat 7)))]) (tail := (.call (.runtime .natQuot) [(.move (.generated .operand 1)), (.move (.generated .operand 2)), (.move (.generated .operand 3))] false)) (Corr.prim (ts := [.nat, .nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 0)))]) (tail := (.call (.runtime .natRem) [(.move (.generated .operand 4)), (.move (.generated .operand 5)), (.move (.generated .operand 6))] false)) (Corr.prim (ts := [.nat, .nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 8)) none (.lit (.nat 0)))]) (ce := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false) (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 10)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natLe) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .natLt) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))] (.call (.runtime .boolNot) [(.move (.generated .operand 13))] false)))) (.mk [] (.lit (.bool false))))) (lk := []) (Corr.cond (lc := [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 8)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 10)) none (.lit (.nat 3)))]) (ta := (.cond (.call (.runtime .natLe) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .natLt) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))] (.call (.runtime .boolNot) [(.move (.generated .operand 13))] false)))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 10)) none (.lit (.nat 3)))]) (ce := (.call (.runtime .natLe) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .natLt) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))]) (tb := (.call (.runtime .boolNot) [(.move (.generated .operand 13))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.prim (ts := [.bool]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natLt) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl))) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.kIf (la := [(.mk (.bind (.generated .operand 16)) none (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false)))), (.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 3)))]) (ta := (.call (.runtime .natAdd) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false)) (lb := [(.mk (.bind (.generated .operand 18)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 19)) none (.copy (.generated .binding 3)))]) (tb := (.call (.runtime .natMul) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false)) (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)))))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | _ + 1 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R11/Compose/RustCore.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R11/Compose/RustCore.lex.tex deleted file mode 100644 index 315c85662..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R11/Compose/RustCore.lex.tex +++ /dev/null @@ -1,463 +0,0 @@ -\begin{lexlean}{RustCore} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.Compose.RustCore} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.RustCore, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.Compose.RustCore.root : @915 := @916 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.Compose.RustCore.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.RustCore.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.RustCore.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.RustCore.flags -@3 := Int -@4 := #2 -@5 := LexLeanTarget.TargetSyntax.Value.int -@6 := @5 @4 -@7 := LexLeanTarget.TargetSyntax.Ty.int -@8 := LexLeanTarget.TargetSyntax.Program -@9 := LexLeanPreservation.Rust.RCrate -@10 := LexLeanPreservation.Rust.Flags -@11 := LexLeanPreservation.Rust.WT -@12 := #3 -@14 := @11 @12 @4 -@15 := #1 -@16 := @14 @15 -@17 := #0 -@18 := @5 @17 -@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 -@26 := LexLeanPreservation.Rust.wt_int @0 -@27 := @11 @0 -@34 := {c : @9} -> {A : @10} -> (n : @3) -> @27 @4 @15 @18 @7 -@35 := @26 @1 -@36 := @27 @1 -@41 := {A : @10} -> (n : @3) -> @36 @15 @18 @7 -@42 := @35 @2 -@43 := @36 @2 -@46 := (n : @3) -> @43 @18 @7 -@47 := @42 @4 -@49 := @43 @6 @7 -@50 := @5 @15 -@51 := @42 @15 -@53 := @43 @50 @7 -@54 := LexLeanTarget.TargetSyntax.Value -@55 := List.nil.{0} -@56 := List.cons.{0} -@57 := @55 @54 -@58 := @56 @54 -@59 := @58 @50 -@60 := @59 @57 -@61 := @58 @6 -@62 := @61 @60 -@63 := Nat -@66 := Prod.{0, 0} @63 @54 -@67 := 1 -@70 := Prod.mk.{0, 0} @63 @54 -@71 := @70 @67 -@72 := @71 @50 -@73 := 0 -@74 := @70 @73 -@75 := @74 @6 -@76 := @55 @66 -@77 := @56 @66 -@79 := @77 @75 @76 -@81 := @77 @72 @79 -@82 := Bool.true -@83 := LexLeanTarget.TargetSyntax.Function -@84 := LexLeanTarget.TargetSyntax.Program.functions -@85 := @84 @0 -@86 := LexLeanTarget.TargetSyntax.Ty -@87 := @55 @63 -@88 := @55 @86 -@89 := LexLeanTarget.TargetSyntax.Ty.unit -@90 := LexLeanTarget.TargetSyntax.Value.unit -@93 := LexLeanTarget.TargetSyntax.Expr.value @89 @90 -@98 := LexLeanTarget.TargetSyntax.Function.mk @87 @88 @89 @93 -@103 := List.getD.{0} @83 @85 @73 @98 -@107 := fun (__e_n : @63) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.RustCore.root @17 @73 -@108 := LexLeanPreservation.Rust.WTL -@116 := {p : @8} -> {c : @9} -> {A : @10} -> @108 @4 @15 @17 @57 @88 -@118 := LexLeanPreservation.Rust.wtl_nil @0 -@119 := @108 @0 -@125 := {c : @9} -> {A : @10} -> @119 @15 @17 @57 @88 -@126 := @118 @1 -@127 := @119 @1 -@131 := {A : @10} -> @127 @17 @57 @88 -@132 := @126 @2 -@133 := @127 @2 -@134 := @133 @57 -@135 := @134 @88 -@136 := List.{0} -@137 := @136 @54 -@138 := @136 @86 -@139 := #6 -@140 := @11 @139 -@141 := #5 -@142 := @140 @141 -@143 := #4 -@146 := @142 @143 @12 @4 -@147 := #7 -@152 := @108 @147 @139 @141 @4 @15 -@153 := #8 -@156 := @108 @153 @147 @139 -@158 := @58 @141 @12 -@159 := @156 @158 -@160 := @56 @86 -@162 := @160 @143 @4 -@172 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {v : @54} -> {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @146) -> (hs : @152) -> @159 @162 -@174 := LexLeanPreservation.Rust.wtl_cons @0 -@194 := {c : @9} -> - {A : @10} -> - {v : @54} -> - {t : @86} -> - {vs : @137} -> - {ts : @138} -> - (h : @27 @141 @143 @12 @4) -> (hs : @119 @139 @141 @4 @15) -> @119 @147 @139 @158 @162 -@195 := @174 @1 -@211 := {A : @10} -> - {v : @54} -> - {t : @86} -> - {vs : @137} -> - {ts : @138} -> (h : @36 @143 @12 @4) -> (hs : @127 @141 @4 @15) -> @127 @139 @158 @162 -@212 := @195 @2 -@214 := @43 @12 @4 -@216 := @133 @4 @15 -@224 := {v : @54} -> - {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @214) -> (hs : @216) -> @133 @158 @162 -@225 := @212 @50 -@226 := @5 @143 -@227 := @43 @226 -@228 := @227 @4 -@229 := @5 @139 -@230 := @58 @229 -@232 := @133 (@230 @12) -@238 := {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @228) -> (hs : @216) -> @232 @162 -@239 := @225 @7 -@240 := @5 @12 -@242 := @43 @240 @7 -@243 := @5 @141 -@244 := @58 @243 -@246 := @133 (@244 @12) -@247 := @160 @7 -@248 := @247 @4 -@253 := {vs : @137} -> {ts : @138} -> (h : @242) -> (hs : @216) -> @246 @248 -@254 := @239 @57 -@255 := @134 @15 -@256 := @58 @226 -@257 := @256 @57 -@262 := {ts : @138} -> (h : @49) -> (hs : @255) -> @133 @257 @248 -@263 := @254 @88 -@264 := @58 @240 -@265 := @264 @57 -@266 := @133 @265 -@267 := @247 @88 -@270 := (h : @53) -> (hs : @135) -> @266 @267 -@271 := @263 @51 -@272 := @61 @57 -@274 := @133 @272 @267 -@275 := (hs : @135) -> @274 -@276 := @271 @132 -@278 := @133 @60 @267 -@279 := @212 @6 -@281 := @43 @243 @4 -@282 := @5 @147 -@283 := @58 @282 -@291 := {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @281) -> (hs : @216) -> @133 (@283 @12) @162 -@292 := @279 @7 -@298 := {vs : @137} -> {ts : @138} -> (h : @227 @7) -> (hs : @216) -> @232 @248 -@299 := @292 @60 -@300 := @266 @15 -@301 := @244 @257 -@302 := @133 @301 -@306 := {ts : @138} -> (h : @242) -> (hs : @300) -> @302 @248 -@307 := @299 @267 -@308 := @256 @265 -@309 := @133 @308 -@310 := @247 @267 -@313 := (h : @49) -> (hs : @274) -> @309 @310 -@314 := @307 @47 -@315 := @264 @272 -@316 := @133 @315 -@318 := (hs : @278) -> @316 @310 -@319 := @314 @276 -@320 := @133 @62 -@321 := @320 @310 -@322 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.denote -@324 := @322 @4 @15 -@325 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.__fits_0 -@327 := @325 @4 @15 -@331 := @5 (Coverage.Main.intOps @4 @15) -@334 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.root @4 @15 -@335 := Bool -@336 := Ne.{1} -@337 := LexLeanPreservation.Obs -@338 := @336 @337 -@339 := LexLeanPreservation.Rel -@342 := @338 (@339 @15 @17) -@343 := LexLeanPreservation.Obs.stuck -@346 := (f : @335) -> (v : @54) -> @342 @343 -@348 := LexLeanPreservation.Rust.rel_ne_stuck @327 -@355 := (v : @54) -> @338 (@339 (@325 @12 @4) @17) @343 -@356 := @348 @331 -@360 := @338 (@339 @327 @331) @343 -@361 := @136 @66 -@362 := LexLeanPreservation.Rust.FunSem -@363 := #9 -@369 := (n : @63) -> @362 @363 @153 @147 @17 @139 -@370 := Eq.{1} -@371 := Option.{0} -@372 := @371 @83 -@373 := @370 @372 -@380 := LexLeanRuntime.index (@136 @83) @83 (LexLeanRuntime.instIndexableList @83) -@384 := @373 (@380 (@84 @363) @139) -@385 := Option.some.{0} -@386 := @385 @83 -@387 := @386 @141 -@388 := @384 @387 -@389 := #10 -@393 := @108 @389 @363 @153 @141 -@394 := LexLeanTarget.TargetSyntax.Function.types -@395 := @394 @139 -@396 := @393 @395 -@397 := @371 @361 -@398 := @370 @397 -@399 := LexLeanTarget.TargetSemantics.bindAll -@400 := LexLeanTarget.TargetSyntax.Function.parameters -@405 := @398 (@399 (@400 @147) @139 @76) -@406 := @385 @361 -@407 := @406 @141 -@408 := @405 @407 -@409 := @371 @335 -@410 := @370 @409 -@411 := LexLeanPreservation.Rust.fnFallible -@412 := #11 -@415 := @410 (@411 @412 @363) -@416 := @385 @335 -@417 := @416 @141 -@418 := @415 @417 -@419 := LexLeanPreservation.RunConv -@420 := #13 -@424 := @419 @420 @389 @153 @141 -@426 := @338 @139 @343 -@427 := Exists.{1} -@428 := LexLeanPreservation.Rust.ROut -@429 := @427 @428 -@430 := And -@431 := LexLeanPreservation.Rust.RealizesFn -@435 := @430 (@431 @363 @153 @17) -@436 := LexLeanPreservation.Rust.RCI -@438 := @436 #15 -@439 := LexLeanPreservation.Rust.fnIdent -@440 := @439 @420 -@447 := (hne : @426) -> @429 (fun (ro : @428) => @435 (@438 @440 @412 @17)) -@462 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {f : @63} -> - {fn : @83} -> - {args : @137} -> - {env : @361} -> - {F : @335} -> - {o : @337} -> - (hB : @369) -> - (hfn : @388) -> (hwt : @396) -> (hbind : @408) -> (hF : @418) -> (hA : @424) -> @447 -@464 := LexLeanPreservation.Rust.compose @0 -@465 := @362 @0 -@470 := (n : @63) -> @465 @153 @147 @17 @139 -@471 := @380 @85 -@474 := @373 (@471 @139) @387 -@478 := @119 @363 @153 @141 @395 -@479 := @419 @0 -@482 := @479 @389 @153 @141 -@496 := {c : @9} -> - {A : @10} -> - {f : @63} -> - {fn : @83} -> - {args : @137} -> - {env : @361} -> - {F : @335} -> - {o : @337} -> - (hB : @470) -> - (hfn : @474) -> (hwt : @478) -> (hbind : @408) -> (hF : @418) -> (hA : @482) -> @447 -@497 := @464 @1 -@498 := @465 @1 -@502 := (n : @63) -> @498 @147 @17 @139 -@505 := @127 @153 @141 @395 -@506 := @411 @1 -@509 := @410 (@506 @363) @417 -@510 := @436 @1 -@520 := (hbind : @408) -> - (hF : @509) -> (hA : @482) -> (hne : @426) -> @429 (fun (ro : @428) => @435 (@510 @440 @412 @17)) -@530 := {A : @10} -> - {f : @63} -> - {fn : @83} -> - {args : @137} -> - {env : @361} -> {F : @335} -> {o : @337} -> (hB : @502) -> (hfn : @474) -> (hwt : @505) -> @520 -@531 := @497 @2 -@533 := @498 @2 @17 -@535 := (n : @63) -> @533 @139 -@536 := @133 @141 -@537 := @536 @395 -@546 := {f : @63} -> - {fn : @83} -> - {args : @137} -> - {env : @361} -> {F : @335} -> {o : @337} -> (hB : @535) -> (hfn : @474) -> (hwt : @537) -> @520 -@547 := @531 @73 -@549 := (n : @63) -> @533 @73 -@550 := @471 @73 -@551 := @373 @550 -@552 := @551 @387 -@553 := @506 @73 -@554 := @410 @553 -@555 := @554 @417 -@556 := @479 @73 -@558 := @556 @153 @141 -@560 := @510 (@439 @73) -@568 := (hF : @555) -> (hA : @558) -> (hne : @426) -> @429 (fun (ro : @428) => @435 (@560 @412 @17)) -@577 := {fn : @83} -> - {args : @137} -> - {env : @361} -> - {F : @335} -> {o : @337} -> (hB : @549) -> (hfn : @552) -> (hwt : @537) -> (hbind : @408) -> @568 -@578 := @547 @103 -@580 := @551 (@386 @103) -@581 := @394 @103 -@582 := @536 @581 -@584 := @399 (@400 @103) -@596 := {args : @137} -> - {env : @361} -> - {F : @335} -> - {o : @337} -> - (hB : @549) -> (hfn : @580) -> (hwt : @582) -> (hbind : @398 (@584 @139 @76) @407) -> @568 -@597 := @578 @62 -@599 := @283 (@230 @57) -@601 := @133 @599 @581 -@603 := @58 (@5 @153) -@605 := @603 (@283 @57) -@609 := @398 (@584 @605 @76) @407 -@611 := @58 (@5 @389) -@613 := @58 (@5 @363) -@615 := @611 (@613 @57) -@617 := @556 @615 @141 -@619 := @58 (@5 @420) -@622 := @58 (@5 #12) -@639 := {env : @361} -> - {F : @335} -> - {o : @337} -> - (hB : @549) -> - (hfn : @580) -> - (hwt : @601) -> - (hbind : @609) -> - (hF : @555) -> - (hA : @617) -> (hne : @426) -> @429 (fun (ro : @428) => @435 (@560 (@619 (@622 @57)) @17)) -@640 := @597 @81 -@642 := @230 (@244 @57) -@644 := @133 @642 @581 -@655 := @398 (@584 @599 @76) (@406 (@77 (@71 @229) (@77 (@74 @282) @76))) -@657 := @613 (@603 @57) -@659 := @556 @657 @141 -@661 := @58 (@5 @412) -@677 := {F : @335} -> - {o : @337} -> - (hB : @549) -> - (hfn : @580) -> - (hwt : @644) -> - (hbind : @655) -> - (hF : @555) -> - (hA : @659) -> (hne : @426) -> @429 (fun (ro : @428) => @435 (@560 (@622 (@661 @57)) @17)) -@678 := @640 @82 -@679 := @302 @581 -@690 := @398 (@584 @642 @76) (@406 (@77 (@71 @243) (@77 (@74 @229) @76))) -@692 := @554 (@416 @82) -@694 := @556 @605 @141 -@695 := @431 @82 -@713 := {o : @337} -> - (hB : @549) -> - (hfn : @580) -> - (hwt : @679) -> - (hbind : @690) -> - (hF : @692) -> - (hA : @694) -> - (hne : @426) -> @429 (fun (ro : @428) => @430 (@695 @153 @17) (@560 (@661 (@611 @57)) @17)) -@714 := @678 @324 -@715 := @309 @581 -@726 := @398 (@584 @301 @76) (@406 (@77 (@71 @226) (@77 (@74 @243) @76))) -@727 := @556 @599 -@729 := @322 @147 @139 -@730 := @727 @729 -@732 := @322 @153 @147 -@751 := (hB : @549) -> - (hfn : @580) -> - (hwt : @715) -> - (hbind : @726) -> - (hF : @692) -> - (hA : @730) -> - (hne : @338 @732 @343) -> - @429 (fun (ro : @428) => @430 (@695 (@322 @389 @363) @17) (@560 @615 @17)) -@752 := @714 @107 -@753 := @316 @581 -@764 := @398 (@584 @308 @76) (@406 (@77 (@71 @240) (@77 (@74 @226) @76))) -@765 := @556 @642 -@767 := @322 @139 @141 -@786 := (hfn : @580) -> - (hwt : @753) -> - (hbind : @764) -> - (hF : @692) -> - (hA : @765 @767) -> - (hne : @338 @729 @343) -> - @429 (fun (ro : @428) => @430 (@695 (@322 @363 @153) @17) (@560 @657 @17)) -@787 := Eq.refl.{1} -@790 := @752 (@787 @372 @550) -@791 := @320 @581 -@802 := @398 (@584 @315 @76) (@406 (@77 (@71 @6) (@77 (@74 @240) @76))) -@803 := @556 @301 -@805 := @322 @141 @143 -@821 := (hwt : @791) -> - (hbind : @802) -> - (hF : @692) -> - (hA : @803 @805) -> - (hne : @338 @767 @343) -> @429 (fun (ro : @428) => @430 (@695 @732 @17) (@560 @605 @17)) -@822 := @790 @319 -@824 := @584 @62 @76 -@827 := @398 @824 (@406 @81) -@828 := @556 @308 -@830 := @322 @143 @12 -@845 := (hbind : @827) -> - (hF : @692) -> - (hA : @828 @830) -> - (hne : @338 @805 @343) -> @429 (fun (ro : @428) => @430 (@695 @729 @17) (@560 @599 @17)) -@848 := @822 (@787 @397 @824) -@849 := @556 @315 -@851 := @322 @12 @4 -@865 := (hF : @692) -> - (hA : @849 @851) -> - (hne : @338 @830 @343) -> @429 (fun (ro : @428) => @430 (@695 @767 @17) (@560 @642 @17)) -@868 := @848 (@787 @409 @553) -@882 := (hA : @556 @62 @324) -> - (hne : @338 @851 @343) -> @429 (fun (ro : @428) => @430 (@695 @805 @17) (@560 @301 @17)) -@883 := @868 @334 -@894 := (hne : @338 @324 @343) -> @429 (fun (ro : @428) => @430 (@695 @830 @17) (@560 @308 @17)) -@895 := @883 @356 -@901 := @430 (@695 @851 @17) (@560 @315 @17) -@903 := @429 (fun (ro : @428) => @901) -@905 := @429 (fun (__e_ro : @428) => @901) -@910 := LexLeanPreservation.Rust.RepresentableL (@59 (@58 @18 @57)) -@911 := (__e_hrep : @910) -> @905 -@912 := fun (__e_hrep : @910) => @895 -@913 := (b : @3) -> @911 -@914 := fun (b : @3) => @912 -@915 := (a : @3) -> @913 -@916 := fun (a : @3) => @914 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R11/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R11/Compose/RustStd.lex.tex deleted file mode 100644 index a51e79dcf..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R11/Compose/RustStd.lex.tex +++ /dev/null @@ -1,463 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.Compose.RustStd.root : @915 := @916 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.RustStd.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.RustStd.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.RustStd.flags -@3 := Int -@4 := #2 -@5 := LexLeanTarget.TargetSyntax.Value.int -@6 := @5 @4 -@7 := LexLeanTarget.TargetSyntax.Ty.int -@8 := LexLeanTarget.TargetSyntax.Program -@9 := LexLeanPreservation.Rust.RCrate -@10 := LexLeanPreservation.Rust.Flags -@11 := LexLeanPreservation.Rust.WT -@12 := #3 -@14 := @11 @12 @4 -@15 := #1 -@16 := @14 @15 -@17 := #0 -@18 := @5 @17 -@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 -@26 := LexLeanPreservation.Rust.wt_int @0 -@27 := @11 @0 -@34 := {c : @9} -> {A : @10} -> (n : @3) -> @27 @4 @15 @18 @7 -@35 := @26 @1 -@36 := @27 @1 -@41 := {A : @10} -> (n : @3) -> @36 @15 @18 @7 -@42 := @35 @2 -@43 := @36 @2 -@46 := (n : @3) -> @43 @18 @7 -@47 := @42 @4 -@49 := @43 @6 @7 -@50 := @5 @15 -@51 := @42 @15 -@53 := @43 @50 @7 -@54 := LexLeanTarget.TargetSyntax.Value -@55 := List.nil.{0} -@56 := List.cons.{0} -@57 := @55 @54 -@58 := @56 @54 -@59 := @58 @50 -@60 := @59 @57 -@61 := @58 @6 -@62 := @61 @60 -@63 := Nat -@66 := Prod.{0, 0} @63 @54 -@67 := 1 -@70 := Prod.mk.{0, 0} @63 @54 -@71 := @70 @67 -@72 := @71 @50 -@73 := 0 -@74 := @70 @73 -@75 := @74 @6 -@76 := @55 @66 -@77 := @56 @66 -@79 := @77 @75 @76 -@81 := @77 @72 @79 -@82 := Bool.true -@83 := LexLeanTarget.TargetSyntax.Function -@84 := LexLeanTarget.TargetSyntax.Program.functions -@85 := @84 @0 -@86 := LexLeanTarget.TargetSyntax.Ty -@87 := @55 @63 -@88 := @55 @86 -@89 := LexLeanTarget.TargetSyntax.Ty.unit -@90 := LexLeanTarget.TargetSyntax.Value.unit -@93 := LexLeanTarget.TargetSyntax.Expr.value @89 @90 -@98 := LexLeanTarget.TargetSyntax.Function.mk @87 @88 @89 @93 -@103 := List.getD.{0} @83 @85 @73 @98 -@107 := fun (__e_n : @63) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.RustStd.root @17 @73 -@108 := LexLeanPreservation.Rust.WTL -@116 := {p : @8} -> {c : @9} -> {A : @10} -> @108 @4 @15 @17 @57 @88 -@118 := LexLeanPreservation.Rust.wtl_nil @0 -@119 := @108 @0 -@125 := {c : @9} -> {A : @10} -> @119 @15 @17 @57 @88 -@126 := @118 @1 -@127 := @119 @1 -@131 := {A : @10} -> @127 @17 @57 @88 -@132 := @126 @2 -@133 := @127 @2 -@134 := @133 @57 -@135 := @134 @88 -@136 := List.{0} -@137 := @136 @54 -@138 := @136 @86 -@139 := #6 -@140 := @11 @139 -@141 := #5 -@142 := @140 @141 -@143 := #4 -@146 := @142 @143 @12 @4 -@147 := #7 -@152 := @108 @147 @139 @141 @4 @15 -@153 := #8 -@156 := @108 @153 @147 @139 -@158 := @58 @141 @12 -@159 := @156 @158 -@160 := @56 @86 -@162 := @160 @143 @4 -@172 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {v : @54} -> {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @146) -> (hs : @152) -> @159 @162 -@174 := LexLeanPreservation.Rust.wtl_cons @0 -@194 := {c : @9} -> - {A : @10} -> - {v : @54} -> - {t : @86} -> - {vs : @137} -> - {ts : @138} -> - (h : @27 @141 @143 @12 @4) -> (hs : @119 @139 @141 @4 @15) -> @119 @147 @139 @158 @162 -@195 := @174 @1 -@211 := {A : @10} -> - {v : @54} -> - {t : @86} -> - {vs : @137} -> - {ts : @138} -> (h : @36 @143 @12 @4) -> (hs : @127 @141 @4 @15) -> @127 @139 @158 @162 -@212 := @195 @2 -@214 := @43 @12 @4 -@216 := @133 @4 @15 -@224 := {v : @54} -> - {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @214) -> (hs : @216) -> @133 @158 @162 -@225 := @212 @50 -@226 := @5 @143 -@227 := @43 @226 -@228 := @227 @4 -@229 := @5 @139 -@230 := @58 @229 -@232 := @133 (@230 @12) -@238 := {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @228) -> (hs : @216) -> @232 @162 -@239 := @225 @7 -@240 := @5 @12 -@242 := @43 @240 @7 -@243 := @5 @141 -@244 := @58 @243 -@246 := @133 (@244 @12) -@247 := @160 @7 -@248 := @247 @4 -@253 := {vs : @137} -> {ts : @138} -> (h : @242) -> (hs : @216) -> @246 @248 -@254 := @239 @57 -@255 := @134 @15 -@256 := @58 @226 -@257 := @256 @57 -@262 := {ts : @138} -> (h : @49) -> (hs : @255) -> @133 @257 @248 -@263 := @254 @88 -@264 := @58 @240 -@265 := @264 @57 -@266 := @133 @265 -@267 := @247 @88 -@270 := (h : @53) -> (hs : @135) -> @266 @267 -@271 := @263 @51 -@272 := @61 @57 -@274 := @133 @272 @267 -@275 := (hs : @135) -> @274 -@276 := @271 @132 -@278 := @133 @60 @267 -@279 := @212 @6 -@281 := @43 @243 @4 -@282 := @5 @147 -@283 := @58 @282 -@291 := {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @281) -> (hs : @216) -> @133 (@283 @12) @162 -@292 := @279 @7 -@298 := {vs : @137} -> {ts : @138} -> (h : @227 @7) -> (hs : @216) -> @232 @248 -@299 := @292 @60 -@300 := @266 @15 -@301 := @244 @257 -@302 := @133 @301 -@306 := {ts : @138} -> (h : @242) -> (hs : @300) -> @302 @248 -@307 := @299 @267 -@308 := @256 @265 -@309 := @133 @308 -@310 := @247 @267 -@313 := (h : @49) -> (hs : @274) -> @309 @310 -@314 := @307 @47 -@315 := @264 @272 -@316 := @133 @315 -@318 := (hs : @278) -> @316 @310 -@319 := @314 @276 -@320 := @133 @62 -@321 := @320 @310 -@322 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.denote -@324 := @322 @4 @15 -@325 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.__fits_0 -@327 := @325 @4 @15 -@331 := @5 (Coverage.Main.intOps @4 @15) -@334 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.root @4 @15 -@335 := Bool -@336 := Ne.{1} -@337 := LexLeanPreservation.Obs -@338 := @336 @337 -@339 := LexLeanPreservation.Rel -@342 := @338 (@339 @15 @17) -@343 := LexLeanPreservation.Obs.stuck -@346 := (f : @335) -> (v : @54) -> @342 @343 -@348 := LexLeanPreservation.Rust.rel_ne_stuck @327 -@355 := (v : @54) -> @338 (@339 (@325 @12 @4) @17) @343 -@356 := @348 @331 -@360 := @338 (@339 @327 @331) @343 -@361 := @136 @66 -@362 := LexLeanPreservation.Rust.FunSem -@363 := #9 -@369 := (n : @63) -> @362 @363 @153 @147 @17 @139 -@370 := Eq.{1} -@371 := Option.{0} -@372 := @371 @83 -@373 := @370 @372 -@380 := LexLeanRuntime.index (@136 @83) @83 (LexLeanRuntime.instIndexableList @83) -@384 := @373 (@380 (@84 @363) @139) -@385 := Option.some.{0} -@386 := @385 @83 -@387 := @386 @141 -@388 := @384 @387 -@389 := #10 -@393 := @108 @389 @363 @153 @141 -@394 := LexLeanTarget.TargetSyntax.Function.types -@395 := @394 @139 -@396 := @393 @395 -@397 := @371 @361 -@398 := @370 @397 -@399 := LexLeanTarget.TargetSemantics.bindAll -@400 := LexLeanTarget.TargetSyntax.Function.parameters -@405 := @398 (@399 (@400 @147) @139 @76) -@406 := @385 @361 -@407 := @406 @141 -@408 := @405 @407 -@409 := @371 @335 -@410 := @370 @409 -@411 := LexLeanPreservation.Rust.fnFallible -@412 := #11 -@415 := @410 (@411 @412 @363) -@416 := @385 @335 -@417 := @416 @141 -@418 := @415 @417 -@419 := LexLeanPreservation.RunConv -@420 := #13 -@424 := @419 @420 @389 @153 @141 -@426 := @338 @139 @343 -@427 := Exists.{1} -@428 := LexLeanPreservation.Rust.ROut -@429 := @427 @428 -@430 := And -@431 := LexLeanPreservation.Rust.RealizesFn -@435 := @430 (@431 @363 @153 @17) -@436 := LexLeanPreservation.Rust.RCI -@438 := @436 #15 -@439 := LexLeanPreservation.Rust.fnIdent -@440 := @439 @420 -@447 := (hne : @426) -> @429 (fun (ro : @428) => @435 (@438 @440 @412 @17)) -@462 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {f : @63} -> - {fn : @83} -> - {args : @137} -> - {env : @361} -> - {F : @335} -> - {o : @337} -> - (hB : @369) -> - (hfn : @388) -> (hwt : @396) -> (hbind : @408) -> (hF : @418) -> (hA : @424) -> @447 -@464 := LexLeanPreservation.Rust.compose @0 -@465 := @362 @0 -@470 := (n : @63) -> @465 @153 @147 @17 @139 -@471 := @380 @85 -@474 := @373 (@471 @139) @387 -@478 := @119 @363 @153 @141 @395 -@479 := @419 @0 -@482 := @479 @389 @153 @141 -@496 := {c : @9} -> - {A : @10} -> - {f : @63} -> - {fn : @83} -> - {args : @137} -> - {env : @361} -> - {F : @335} -> - {o : @337} -> - (hB : @470) -> - (hfn : @474) -> (hwt : @478) -> (hbind : @408) -> (hF : @418) -> (hA : @482) -> @447 -@497 := @464 @1 -@498 := @465 @1 -@502 := (n : @63) -> @498 @147 @17 @139 -@505 := @127 @153 @141 @395 -@506 := @411 @1 -@509 := @410 (@506 @363) @417 -@510 := @436 @1 -@520 := (hbind : @408) -> - (hF : @509) -> (hA : @482) -> (hne : @426) -> @429 (fun (ro : @428) => @435 (@510 @440 @412 @17)) -@530 := {A : @10} -> - {f : @63} -> - {fn : @83} -> - {args : @137} -> - {env : @361} -> {F : @335} -> {o : @337} -> (hB : @502) -> (hfn : @474) -> (hwt : @505) -> @520 -@531 := @497 @2 -@533 := @498 @2 @17 -@535 := (n : @63) -> @533 @139 -@536 := @133 @141 -@537 := @536 @395 -@546 := {f : @63} -> - {fn : @83} -> - {args : @137} -> - {env : @361} -> {F : @335} -> {o : @337} -> (hB : @535) -> (hfn : @474) -> (hwt : @537) -> @520 -@547 := @531 @73 -@549 := (n : @63) -> @533 @73 -@550 := @471 @73 -@551 := @373 @550 -@552 := @551 @387 -@553 := @506 @73 -@554 := @410 @553 -@555 := @554 @417 -@556 := @479 @73 -@558 := @556 @153 @141 -@560 := @510 (@439 @73) -@568 := (hF : @555) -> (hA : @558) -> (hne : @426) -> @429 (fun (ro : @428) => @435 (@560 @412 @17)) -@577 := {fn : @83} -> - {args : @137} -> - {env : @361} -> - {F : @335} -> {o : @337} -> (hB : @549) -> (hfn : @552) -> (hwt : @537) -> (hbind : @408) -> @568 -@578 := @547 @103 -@580 := @551 (@386 @103) -@581 := @394 @103 -@582 := @536 @581 -@584 := @399 (@400 @103) -@596 := {args : @137} -> - {env : @361} -> - {F : @335} -> - {o : @337} -> - (hB : @549) -> (hfn : @580) -> (hwt : @582) -> (hbind : @398 (@584 @139 @76) @407) -> @568 -@597 := @578 @62 -@599 := @283 (@230 @57) -@601 := @133 @599 @581 -@603 := @58 (@5 @153) -@605 := @603 (@283 @57) -@609 := @398 (@584 @605 @76) @407 -@611 := @58 (@5 @389) -@613 := @58 (@5 @363) -@615 := @611 (@613 @57) -@617 := @556 @615 @141 -@619 := @58 (@5 @420) -@622 := @58 (@5 #12) -@639 := {env : @361} -> - {F : @335} -> - {o : @337} -> - (hB : @549) -> - (hfn : @580) -> - (hwt : @601) -> - (hbind : @609) -> - (hF : @555) -> - (hA : @617) -> (hne : @426) -> @429 (fun (ro : @428) => @435 (@560 (@619 (@622 @57)) @17)) -@640 := @597 @81 -@642 := @230 (@244 @57) -@644 := @133 @642 @581 -@655 := @398 (@584 @599 @76) (@406 (@77 (@71 @229) (@77 (@74 @282) @76))) -@657 := @613 (@603 @57) -@659 := @556 @657 @141 -@661 := @58 (@5 @412) -@677 := {F : @335} -> - {o : @337} -> - (hB : @549) -> - (hfn : @580) -> - (hwt : @644) -> - (hbind : @655) -> - (hF : @555) -> - (hA : @659) -> (hne : @426) -> @429 (fun (ro : @428) => @435 (@560 (@622 (@661 @57)) @17)) -@678 := @640 @82 -@679 := @302 @581 -@690 := @398 (@584 @642 @76) (@406 (@77 (@71 @243) (@77 (@74 @229) @76))) -@692 := @554 (@416 @82) -@694 := @556 @605 @141 -@695 := @431 @82 -@713 := {o : @337} -> - (hB : @549) -> - (hfn : @580) -> - (hwt : @679) -> - (hbind : @690) -> - (hF : @692) -> - (hA : @694) -> - (hne : @426) -> @429 (fun (ro : @428) => @430 (@695 @153 @17) (@560 (@661 (@611 @57)) @17)) -@714 := @678 @324 -@715 := @309 @581 -@726 := @398 (@584 @301 @76) (@406 (@77 (@71 @226) (@77 (@74 @243) @76))) -@727 := @556 @599 -@729 := @322 @147 @139 -@730 := @727 @729 -@732 := @322 @153 @147 -@751 := (hB : @549) -> - (hfn : @580) -> - (hwt : @715) -> - (hbind : @726) -> - (hF : @692) -> - (hA : @730) -> - (hne : @338 @732 @343) -> - @429 (fun (ro : @428) => @430 (@695 (@322 @389 @363) @17) (@560 @615 @17)) -@752 := @714 @107 -@753 := @316 @581 -@764 := @398 (@584 @308 @76) (@406 (@77 (@71 @240) (@77 (@74 @226) @76))) -@765 := @556 @642 -@767 := @322 @139 @141 -@786 := (hfn : @580) -> - (hwt : @753) -> - (hbind : @764) -> - (hF : @692) -> - (hA : @765 @767) -> - (hne : @338 @729 @343) -> - @429 (fun (ro : @428) => @430 (@695 (@322 @363 @153) @17) (@560 @657 @17)) -@787 := Eq.refl.{1} -@790 := @752 (@787 @372 @550) -@791 := @320 @581 -@802 := @398 (@584 @315 @76) (@406 (@77 (@71 @6) (@77 (@74 @240) @76))) -@803 := @556 @301 -@805 := @322 @141 @143 -@821 := (hwt : @791) -> - (hbind : @802) -> - (hF : @692) -> - (hA : @803 @805) -> - (hne : @338 @767 @343) -> @429 (fun (ro : @428) => @430 (@695 @732 @17) (@560 @605 @17)) -@822 := @790 @319 -@824 := @584 @62 @76 -@827 := @398 @824 (@406 @81) -@828 := @556 @308 -@830 := @322 @143 @12 -@845 := (hbind : @827) -> - (hF : @692) -> - (hA : @828 @830) -> - (hne : @338 @805 @343) -> @429 (fun (ro : @428) => @430 (@695 @729 @17) (@560 @599 @17)) -@848 := @822 (@787 @397 @824) -@849 := @556 @315 -@851 := @322 @12 @4 -@865 := (hF : @692) -> - (hA : @849 @851) -> - (hne : @338 @830 @343) -> @429 (fun (ro : @428) => @430 (@695 @767 @17) (@560 @642 @17)) -@868 := @848 (@787 @409 @553) -@882 := (hA : @556 @62 @324) -> - (hne : @338 @851 @343) -> @429 (fun (ro : @428) => @430 (@695 @805 @17) (@560 @301 @17)) -@883 := @868 @334 -@894 := (hne : @338 @324 @343) -> @429 (fun (ro : @428) => @430 (@695 @830 @17) (@560 @308 @17)) -@895 := @883 @356 -@901 := @430 (@695 @851 @17) (@560 @315 @17) -@903 := @429 (fun (ro : @428) => @901) -@905 := @429 (fun (__e_ro : @428) => @901) -@910 := LexLeanPreservation.Rust.RepresentableL (@59 (@58 @18 @57)) -@911 := (__e_hrep : @910) -> @905 -@912 := fun (__e_hrep : @910) => @895 -@913 := (b : @3) -> @911 -@914 := fun (b : @3) => @912 -@915 := (a : @3) -> @913 -@916 := fun (a : @3) => @914 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R11/RustCore.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R11/RustCore.lean deleted file mode 100644 index 5764458c1..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R11/RustCore.lean +++ /dev/null @@ -1,33 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.RustCore -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1], types := [.int, .int], result := .int, - body := (.prim .intSub [(.prim .intMul [(.var 0), (.value .int (.int (-3)))]), (.prim .intNeg [(.prim .intRem [(.prim .intQuot [(.var 0), (.var 1), (.value .int (.int 1))]), (.var 1), (.value .int (.int 0))])])]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .core, items := [ - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .int }, { pattern := (.bind (.generated .binding 1)), type := .int }] (.fallible .int) (.mk [(.mk (.bind (.generated .operand 10)) none (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.int (-3))))] (.call (.runtime .intMul) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] true)))), (.mk (.bind (.generated .operand 11)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 5)) none (.lit (.int 1)))] (.call (.runtime .intQuot) [(.move (.generated .operand 3)), (.move (.generated .operand 4)), (.move (.generated .operand 5))] true)))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 8)) none (.lit (.int 0)))] (.call (.runtime .intRem) [(.move (.generated .operand 6)), (.move (.generated .operand 7)), (.move (.generated .operand 8))] false))))] (.call (.runtime .intNeg) [(.move (.generated .operand 9))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false)))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 10)) none (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.int (-3))))] (.call (.runtime .intMul) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] true)))), (.mk (.bind (.generated .operand 11)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 5)) none (.lit (.int 1)))] (.call (.runtime .intQuot) [(.move (.generated .operand 3)), (.move (.generated .operand 4)), (.move (.generated .operand 5))] true)))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 8)) none (.lit (.int 0)))] (.call (.runtime .intRem) [(.move (.generated .operand 6)), (.move (.generated .operand 7)), (.move (.generated .operand 8))] false))))] (.call (.runtime .intNeg) [(.move (.generated .operand 9))] true))))], (.call (.runtime .intSub) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false), [(1, .int, (some 1)), (0, .int, (some 0))], rfl, rfl, - (Corr.primF (ts := [.int, .int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.int (-3))))]) (tail := (.call (.runtime .intMul) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] true)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 9)) none (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 5)) none (.lit (.int 1)))] (.call (.runtime .intQuot) [(.move (.generated .operand 3)), (.move (.generated .operand 4)), (.move (.generated .operand 5))] true)))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 8)) none (.lit (.int 0)))] (.call (.runtime .intRem) [(.move (.generated .operand 6)), (.move (.generated .operand 7)), (.move (.generated .operand 8))] false))))]) (tail := (.call (.runtime .intNeg) [(.move (.generated .operand 9))] true)) (Corr.prim (ts := [.int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 6)) none (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 5)) none (.lit (.int 1)))] (.call (.runtime .intQuot) [(.move (.generated .operand 3)), (.move (.generated .operand 4)), (.move (.generated .operand 5))] true)))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 8)) none (.lit (.int 0)))]) (tail := (.call (.runtime .intRem) [(.move (.generated .operand 6)), (.move (.generated .operand 7)), (.move (.generated .operand 8))] false)) (Corr.prim (ts := [.int, .int, .int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 5)) none (.lit (.int 1)))]) (tail := (.call (.runtime .intQuot) [(.move (.generated .operand 3)), (.move (.generated .operand 4)), (.move (.generated .operand 5))] true)) (Corr.prim (ts := [.int, .int, .int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | _ + 1 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.RustCore diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R11/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R11/RustStd.lean deleted file mode 100644 index df2f71a23..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R11/RustStd.lean +++ /dev/null @@ -1,33 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1], types := [.int, .int], result := .int, - body := (.prim .intSub [(.prim .intMul [(.var 0), (.value .int (.int (-3)))]), (.prim .intNeg [(.prim .intRem [(.prim .intQuot [(.var 0), (.var 1), (.value .int (.int 1))]), (.var 1), (.value .int (.int 0))])])]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .int }, { pattern := (.bind (.generated .binding 1)), type := .int }] (.fallible .int) (.mk [(.mk (.bind (.generated .operand 10)) none (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.int (-3))))] (.call (.runtime .intMul) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] true)))), (.mk (.bind (.generated .operand 11)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 5)) none (.lit (.int 1)))] (.call (.runtime .intQuot) [(.move (.generated .operand 3)), (.move (.generated .operand 4)), (.move (.generated .operand 5))] true)))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 8)) none (.lit (.int 0)))] (.call (.runtime .intRem) [(.move (.generated .operand 6)), (.move (.generated .operand 7)), (.move (.generated .operand 8))] false))))] (.call (.runtime .intNeg) [(.move (.generated .operand 9))] true))))] (.call (.runtime .intSub) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false)))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 10)) none (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.int (-3))))] (.call (.runtime .intMul) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] true)))), (.mk (.bind (.generated .operand 11)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 5)) none (.lit (.int 1)))] (.call (.runtime .intQuot) [(.move (.generated .operand 3)), (.move (.generated .operand 4)), (.move (.generated .operand 5))] true)))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 8)) none (.lit (.int 0)))] (.call (.runtime .intRem) [(.move (.generated .operand 6)), (.move (.generated .operand 7)), (.move (.generated .operand 8))] false))))] (.call (.runtime .intNeg) [(.move (.generated .operand 9))] true))))], (.call (.runtime .intSub) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false), [(1, .int, (some 1)), (0, .int, (some 0))], rfl, rfl, - (Corr.primF (ts := [.int, .int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.int (-3))))]) (tail := (.call (.runtime .intMul) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] true)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 9)) none (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 5)) none (.lit (.int 1)))] (.call (.runtime .intQuot) [(.move (.generated .operand 3)), (.move (.generated .operand 4)), (.move (.generated .operand 5))] true)))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 8)) none (.lit (.int 0)))] (.call (.runtime .intRem) [(.move (.generated .operand 6)), (.move (.generated .operand 7)), (.move (.generated .operand 8))] false))))]) (tail := (.call (.runtime .intNeg) [(.move (.generated .operand 9))] true)) (Corr.prim (ts := [.int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 6)) none (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 5)) none (.lit (.int 1)))] (.call (.runtime .intQuot) [(.move (.generated .operand 3)), (.move (.generated .operand 4)), (.move (.generated .operand 5))] true)))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 8)) none (.lit (.int 0)))]) (tail := (.call (.runtime .intRem) [(.move (.generated .operand 6)), (.move (.generated .operand 7)), (.move (.generated .operand 8))] false)) (Corr.prim (ts := [.int, .int, .int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 5)) none (.lit (.int 1)))]) (tail := (.call (.runtime .intQuot) [(.move (.generated .operand 3)), (.move (.generated .operand 4)), (.move (.generated .operand 5))] true)) (Corr.prim (ts := [.int, .int, .int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | _ + 1 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R12/Compose/RustCore.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R12/Compose/RustCore.lex.tex deleted file mode 100644 index 9cbfa7aad..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R12/Compose/RustCore.lex.tex +++ /dev/null @@ -1,578 +0,0 @@ -\begin{lexlean}{RustCore} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.Compose.RustCore} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.RustCore, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.Compose.RustCore.__wt_0 : @16 := @482 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.Compose.RustCore.__wt_0], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.Compose.RustCore.root : @1157 := @1158 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.Compose.RustCore.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.RustCore.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.RustCore.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.RustCore.flags -@3 := Coverage.Types.Shape -@4 := #0 -@6 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.__enc_0 @4 -@7 := LexLeanPreservation.Rust.WT -@8 := LexLeanTarget.TargetSyntax.Ty.adt -@9 := 0 -@10 := @8 @9 -@11 := @7 @0 -@12 := @11 @1 -@13 := @12 @2 -@15 := @13 @6 @10 -@16 := (__v : @3) -> @15 -@17 := fun (__v : @3) => @15 -@18 := LexLeanTarget.TargetSyntax.Value.nat -@19 := @18 @4 -@20 := LexLeanTarget.TargetSyntax.Ty.nat -@21 := LexLeanTarget.TargetSyntax.Program -@22 := LexLeanPreservation.Rust.RCrate -@23 := LexLeanPreservation.Rust.Flags -@24 := Nat -@25 := #3 -@26 := @7 @25 -@27 := #2 -@28 := @26 @27 -@29 := #1 -@36 := {p : @21} -> {c : @22} -> {A : @23} -> (n : @24) -> @28 @29 @19 @20 -@38 := LexLeanPreservation.Rust.wt_nat @0 -@45 := {c : @22} -> {A : @23} -> (n : @24) -> @11 @27 @29 @19 @20 -@46 := @38 @1 -@51 := {A : @23} -> (n : @24) -> @12 @29 @19 @20 -@52 := @46 @2 -@54 := @13 @19 @20 -@55 := (n : @24) -> @54 -@56 := @52 @4 -@57 := LexLeanTarget.TargetSyntax.Value -@58 := LexLeanTarget.TargetSyntax.Ty -@59 := List.nil.{0} -@60 := List.cons.{0} -@61 := @59 @57 -@62 := @60 @57 -@64 := @62 @19 @61 -@65 := @59 @58 -@66 := @60 @58 -@67 := @66 @20 -@68 := @67 @65 -@69 := LexLeanPreservation.Rust.WTL -@77 := {p : @21} -> {c : @22} -> {A : @23} -> @69 @27 @29 @4 @61 @65 -@79 := LexLeanPreservation.Rust.wtl_nil @0 -@80 := @69 @0 -@86 := {c : @22} -> {A : @23} -> @80 @29 @4 @61 @65 -@87 := @79 @1 -@88 := @80 @1 -@92 := {A : @23} -> @88 @4 @61 @65 -@93 := @87 @2 -@94 := @88 @2 -@95 := @94 @61 -@96 := @95 @65 -@97 := List.{0} -@98 := @97 @57 -@99 := @97 @58 -@100 := #6 -@101 := @7 @100 -@102 := #5 -@103 := @101 @102 -@104 := #4 -@107 := @103 @104 @25 @27 -@108 := #7 -@113 := @69 @108 @100 @102 @27 @29 -@114 := #8 -@117 := @69 @114 @108 @100 -@119 := @62 @102 @25 -@120 := @117 @119 -@122 := @66 @104 @27 -@132 := {p : @21} -> - {c : @22} -> - {A : @23} -> - {v : @57} -> {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @107) -> (hs : @113) -> @120 @122 -@134 := LexLeanPreservation.Rust.wtl_cons @0 -@138 := @11 @102 @104 @25 @27 -@142 := @80 @100 @102 @27 @29 -@154 := {c : @22} -> - {A : @23} -> - {v : @57} -> - {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @138) -> (hs : @142) -> @80 @108 @100 @119 @122 -@155 := @134 @1 -@158 := @12 @104 @25 @27 -@161 := @88 @102 @27 @29 -@171 := {A : @23} -> - {v : @57} -> - {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @158) -> (hs : @161) -> @88 @100 @119 @122 -@172 := @155 @2 -@174 := @13 @25 @27 -@176 := @94 @27 @29 -@184 := {v : @57} -> - {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @174) -> (hs : @176) -> @94 @119 @122 -@185 := @172 @19 -@186 := @18 @25 -@187 := @13 @186 -@188 := @187 @27 -@189 := @18 @102 -@190 := @62 @189 -@192 := @94 (@190 @25) -@198 := {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @188) -> (hs : @176) -> @192 @122 -@199 := @185 @20 -@200 := @18 @27 -@202 := @13 @200 @20 -@203 := @18 @104 -@204 := @62 @203 -@206 := @94 (@204 @25) -@207 := @67 @27 -@212 := {vs : @98} -> {ts : @99} -> (h : @202) -> (hs : @176) -> @206 @207 -@213 := @199 @61 -@214 := @18 @29 -@216 := @13 @214 @20 -@217 := @95 @29 -@218 := @62 @186 -@219 := @218 @61 -@220 := @94 @219 -@224 := {ts : @99} -> (h : @216) -> (hs : @217) -> @220 @207 -@225 := @213 @65 -@226 := @62 @200 -@227 := @226 @61 -@228 := @94 @227 -@229 := @228 @68 -@231 := (h : @54) -> (hs : @96) -> @229 -@232 := @225 @56 -@233 := @62 @214 -@234 := @233 @61 -@236 := @94 @234 @68 -@237 := (hs : @96) -> @236 -@238 := @232 @93 -@240 := @94 @64 @68 -@241 := Eq.{1} -@242 := Option.{0} -@243 := @242 @99 -@244 := @241 @243 -@245 := LexLeanPreservation.Rust.adtFields -@249 := @244 (@245 @100 @25 @27) -@250 := Option.some.{0} -@251 := @250 @99 -@252 := @251 @4 -@253 := @249 @252 -@256 := @7 @114 @108 @100 -@257 := LexLeanTarget.TargetSyntax.Value.adt -@259 := @257 @104 @25 -@260 := @256 @259 -@261 := @8 @102 -@271 := {p : @21} -> - {c : @22} -> - {A : @23} -> - {i : @24} -> {k : @24} -> {fs : @98} -> {tys : @99} -> (h : @253) -> (hf : @113) -> @260 @261 -@273 := LexLeanPreservation.Rust.wt_adt @0 -@274 := @245 @0 -@278 := @244 (@274 @25 @27) @252 -@290 := {c : @22} -> - {A : @23} -> - {i : @24} -> - {k : @24} -> {fs : @98} -> {tys : @99} -> (h : @278) -> (hf : @142) -> @11 @108 @100 @259 @261 -@291 := @273 @1 -@301 := {A : @23} -> - {i : @24} -> - {k : @24} -> {fs : @98} -> {tys : @99} -> (h : @278) -> (hf : @161) -> @12 @100 @259 @261 -@302 := @291 @2 -@303 := @13 @259 -@310 := {i : @24} -> - {k : @24} -> {fs : @98} -> {tys : @99} -> (h : @278) -> (hf : @176) -> @303 @261 -@311 := @302 @9 -@312 := @274 @9 -@321 := {k : @24} -> - {fs : @98} -> {tys : @99} -> (h : @244 (@312 @27) @252) -> (hf : @176) -> @303 @10 -@322 := @311 @9 -@323 := @312 @9 -@324 := @244 @323 -@325 := @324 @252 -@326 := @257 @9 -@333 := {fs : @98} -> {tys : @99} -> (h : @325) -> (hf : @176) -> @13 (@326 @25) @10 -@334 := @322 @64 -@335 := @228 @29 -@341 := {tys : @99} -> (h : @325) -> (hf : @335) -> @13 (@326 @219) @10 -@342 := @334 @68 -@349 := (h : @324 (@251 @68)) -> (hf : @236) -> @13 (@326 @227) @10 -@350 := Eq.refl.{1} -@351 := @350 @243 -@353 := @342 (@351 @323) -@357 := (hf : @240) -> @13 (@326 @234) @10 -@358 := @353 @238 -@361 := @13 (@326 @64) @10 -@362 := fun (__x0 : @24) => @358 -@363 := @52 @29 -@364 := @233 @64 -@365 := @67 @68 -@366 := @172 @214 -@367 := @13 @203 -@368 := @367 @27 -@369 := @18 @100 -@370 := @62 @369 -@372 := @94 (@370 @25) -@378 := {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @368) -> (hs : @176) -> @372 @122 -@379 := @366 @20 -@380 := @187 @20 -@385 := {vs : @98} -> {ts : @99} -> (h : @380) -> (hs : @176) -> @192 @207 -@386 := @379 @64 -@387 := @204 @219 -@388 := @94 @387 -@392 := {ts : @99} -> (h : @202) -> (hs : @335) -> @388 @207 -@393 := @386 @68 -@394 := @218 @227 -@395 := @94 @394 -@398 := (h : @216) -> (hs : @236) -> @395 @365 -@399 := @393 @363 -@400 := @226 @234 -@401 := @94 @400 -@402 := @401 @365 -@403 := (hs : @240) -> @402 -@404 := @399 @238 -@406 := @94 @364 @365 -@407 := 1 -@408 := @311 @407 -@409 := @312 @407 -@410 := @244 @409 -@411 := @410 @252 -@412 := @257 @407 -@419 := {fs : @98} -> {tys : @99} -> (h : @411) -> (hf : @176) -> @13 (@412 @25) @10 -@420 := @408 @364 -@427 := {tys : @99} -> (h : @411) -> (hf : @395 @29) -> @13 (@412 @387) @10 -@428 := @420 @365 -@435 := (h : @410 (@251 @365)) -> (hf : @402) -> @13 (@412 @394) @10 -@437 := @428 (@351 @409) -@441 := (hf : @406) -> @13 (@412 @400) @10 -@442 := @437 @404 -@445 := @13 (@412 @364) @10 -@447 := fun (__x0 : @24) => fun (__x1 : @24) => @442 -@448 := 2 -@449 := @311 @448 -@450 := @312 @448 -@451 := @244 @450 -@452 := @451 @252 -@453 := @257 @448 -@460 := {fs : @98} -> {tys : @99} -> (h : @452) -> (hf : @176) -> @13 (@453 @25) @10 -@461 := @449 @61 -@464 := @13 (@453 @61) @10 -@467 := {tys : @99} -> (h : @452) -> (hf : @217) -> @464 -@468 := @461 @65 -@472 := (h : @451 (@251 @65)) -> (hf : @96) -> @464 -@475 := @468 (@351 @450) @93 -@482 := fun (__v : @3) => Coverage.Types.Shape.casesOn.{0} @17 @4 @362 @447 @475 -@483 := @52 @27 -@486 := Prod.{0, 0} @24 @57 -@489 := Prod.mk.{0, 0} @24 @57 -@490 := @489 @407 -@491 := @490 @214 -@492 := @489 @9 -@493 := @492 @200 -@494 := @59 @486 -@495 := @60 @486 -@497 := @495 @493 @494 -@499 := @495 @491 @497 -@500 := Bool.true -@501 := LexLeanTarget.TargetSyntax.Function -@502 := LexLeanTarget.TargetSyntax.Program.functions -@503 := @502 @0 -@504 := @59 @24 -@505 := LexLeanTarget.TargetSyntax.Ty.unit -@506 := LexLeanTarget.TargetSyntax.Value.unit -@509 := LexLeanTarget.TargetSyntax.Expr.value @505 @506 -@514 := LexLeanTarget.TargetSyntax.Function.mk @504 @65 @505 @509 -@519 := List.getD.{0} @501 @503 @9 @514 -@523 := fun (__e_n : @24) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.RustCore.root @4 @9 -@524 := @379 @61 -@525 := @204 @61 -@530 := {ts : @99} -> (h : @202) -> (hs : @217) -> @94 @525 @207 -@531 := @524 @65 -@534 := (h : @216) -> (hs : @96) -> @220 @68 -@536 := @531 @363 @93 -@537 := @172 @200 -@539 := @13 @189 @27 -@540 := @18 @108 -@541 := @62 @540 -@549 := {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @539) -> (hs : @176) -> @94 (@541 @25) @122 -@550 := @537 @20 -@556 := {vs : @98} -> {ts : @99} -> (h : @367 @20) -> (hs : @176) -> @372 @207 -@557 := @550 @234 -@558 := @220 @29 -@559 := @190 @525 -@560 := @94 @559 -@564 := {ts : @99} -> (h : @380) -> (hs : @558) -> @560 @207 -@565 := @557 @68 -@568 := (h : @202) -> (hs : @229) -> @388 @365 -@570 := @565 @483 @536 -@571 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.denote -@573 := @571 @27 @29 -@574 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.__fits_0 -@576 := @574 @27 @29 -@580 := @18 (Coverage.Main.shapes @27 @29) -@583 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.root @27 @29 -@584 := Bool -@585 := Ne.{1} -@586 := LexLeanPreservation.Obs -@587 := @585 @586 -@588 := LexLeanPreservation.Rel -@591 := @587 (@588 @29 @4) -@592 := LexLeanPreservation.Obs.stuck -@595 := (f : @584) -> (v : @57) -> @591 @592 -@597 := LexLeanPreservation.Rust.rel_ne_stuck @576 -@604 := (v : @57) -> @587 (@588 (@574 @25 @27) @4) @592 -@605 := @597 @580 -@609 := @587 (@588 @576 @580) @592 -@610 := @97 @486 -@611 := LexLeanPreservation.Rust.FunSem -@612 := #9 -@618 := (n : @24) -> @611 @612 @114 @108 @4 @100 -@619 := @242 @501 -@620 := @241 @619 -@627 := LexLeanRuntime.index (@97 @501) @501 (LexLeanRuntime.instIndexableList @501) -@631 := @620 (@627 (@502 @612) @100) -@632 := @250 @501 -@633 := @632 @102 -@634 := @631 @633 -@635 := #10 -@639 := @69 @635 @612 @114 @102 -@640 := LexLeanTarget.TargetSyntax.Function.types -@641 := @640 @100 -@642 := @639 @641 -@643 := @242 @610 -@644 := @241 @643 -@645 := LexLeanTarget.TargetSemantics.bindAll -@646 := LexLeanTarget.TargetSyntax.Function.parameters -@651 := @644 (@645 (@646 @108) @100 @494) -@652 := @250 @610 -@653 := @652 @102 -@654 := @651 @653 -@655 := @242 @584 -@656 := @241 @655 -@657 := LexLeanPreservation.Rust.fnFallible -@658 := #11 -@661 := @656 (@657 @658 @612) -@662 := @250 @584 -@663 := @662 @102 -@664 := @661 @663 -@665 := LexLeanPreservation.RunConv -@666 := #13 -@670 := @665 @666 @635 @114 @102 -@672 := @587 @100 @592 -@673 := Exists.{1} -@674 := LexLeanPreservation.Rust.ROut -@675 := @673 @674 -@676 := And -@677 := LexLeanPreservation.Rust.RealizesFn -@681 := @676 (@677 @612 @114 @4) -@682 := LexLeanPreservation.Rust.RCI -@684 := @682 #15 -@685 := LexLeanPreservation.Rust.fnIdent -@686 := @685 @666 -@693 := (hne : @672) -> @675 (fun (ro : @674) => @681 (@684 @686 @658 @4)) -@708 := {p : @21} -> - {c : @22} -> - {A : @23} -> - {f : @24} -> - {fn : @501} -> - {args : @98} -> - {env : @610} -> - {F : @584} -> - {o : @586} -> - (hB : @618) -> - (hfn : @634) -> (hwt : @642) -> (hbind : @654) -> (hF : @664) -> (hA : @670) -> @693 -@710 := LexLeanPreservation.Rust.compose @0 -@711 := @611 @0 -@716 := (n : @24) -> @711 @114 @108 @4 @100 -@717 := @627 @503 -@720 := @620 (@717 @100) @633 -@724 := @80 @612 @114 @102 @641 -@725 := @665 @0 -@728 := @725 @635 @114 @102 -@742 := {c : @22} -> - {A : @23} -> - {f : @24} -> - {fn : @501} -> - {args : @98} -> - {env : @610} -> - {F : @584} -> - {o : @586} -> - (hB : @716) -> - (hfn : @720) -> (hwt : @724) -> (hbind : @654) -> (hF : @664) -> (hA : @728) -> @693 -@743 := @710 @1 -@744 := @711 @1 -@748 := (n : @24) -> @744 @108 @4 @100 -@751 := @88 @114 @102 @641 -@752 := @657 @1 -@755 := @656 (@752 @612) @663 -@756 := @682 @1 -@766 := (hbind : @654) -> - (hF : @755) -> (hA : @728) -> (hne : @672) -> @675 (fun (ro : @674) => @681 (@756 @686 @658 @4)) -@776 := {A : @23} -> - {f : @24} -> - {fn : @501} -> - {args : @98} -> - {env : @610} -> {F : @584} -> {o : @586} -> (hB : @748) -> (hfn : @720) -> (hwt : @751) -> @766 -@777 := @743 @2 -@779 := @744 @2 @4 -@781 := (n : @24) -> @779 @100 -@782 := @94 @102 -@783 := @782 @641 -@792 := {f : @24} -> - {fn : @501} -> - {args : @98} -> - {env : @610} -> {F : @584} -> {o : @586} -> (hB : @781) -> (hfn : @720) -> (hwt : @783) -> @766 -@793 := @777 @9 -@795 := (n : @24) -> @779 @9 -@796 := @717 @9 -@797 := @620 @796 -@798 := @797 @633 -@799 := @752 @9 -@800 := @656 @799 -@801 := @800 @663 -@802 := @725 @9 -@804 := @802 @114 @102 -@806 := @756 (@685 @9) -@814 := (hF : @801) -> (hA : @804) -> (hne : @672) -> @675 (fun (ro : @674) => @681 (@806 @658 @4)) -@823 := {fn : @501} -> - {args : @98} -> - {env : @610} -> - {F : @584} -> {o : @586} -> (hB : @795) -> (hfn : @798) -> (hwt : @783) -> (hbind : @654) -> @814 -@824 := @793 @519 -@826 := @797 (@632 @519) -@827 := @640 @519 -@828 := @782 @827 -@830 := @645 (@646 @519) -@842 := {args : @98} -> - {env : @610} -> - {F : @584} -> - {o : @586} -> - (hB : @795) -> (hfn : @826) -> (hwt : @828) -> (hbind : @644 (@830 @100 @494) @653) -> @814 -@843 := @824 @400 -@845 := @541 (@370 @61) -@847 := @94 @845 @827 -@849 := @62 (@18 @114) -@851 := @849 (@541 @61) -@855 := @644 (@830 @851 @494) @653 -@857 := @62 (@18 @635) -@859 := @62 (@18 @612) -@861 := @857 (@859 @61) -@863 := @802 @861 @102 -@865 := @62 (@18 @666) -@868 := @62 (@18 #12) -@885 := {env : @610} -> - {F : @584} -> - {o : @586} -> - (hB : @795) -> - (hfn : @826) -> - (hwt : @847) -> - (hbind : @855) -> - (hF : @801) -> - (hA : @863) -> (hne : @672) -> @675 (fun (ro : @674) => @681 (@806 (@865 (@868 @61)) @4)) -@886 := @843 @499 -@888 := @370 (@190 @61) -@890 := @94 @888 @827 -@901 := @644 (@830 @845 @494) (@652 (@495 (@490 @369) (@495 (@492 @540) @494))) -@903 := @859 (@849 @61) -@905 := @802 @903 @102 -@907 := @62 (@18 @658) -@923 := {F : @584} -> - {o : @586} -> - (hB : @795) -> - (hfn : @826) -> - (hwt : @890) -> - (hbind : @901) -> - (hF : @801) -> - (hA : @905) -> (hne : @672) -> @675 (fun (ro : @674) => @681 (@806 (@868 (@907 @61)) @4)) -@924 := @886 @500 -@925 := @560 @827 -@936 := @644 (@830 @888 @494) (@652 (@495 (@490 @189) (@495 (@492 @369) @494))) -@938 := @800 (@662 @500) -@940 := @802 @851 @102 -@941 := @677 @500 -@959 := {o : @586} -> - (hB : @795) -> - (hfn : @826) -> - (hwt : @925) -> - (hbind : @936) -> - (hF : @938) -> - (hA : @940) -> - (hne : @672) -> @675 (fun (ro : @674) => @676 (@941 @114 @4) (@806 (@907 (@857 @61)) @4)) -@960 := @924 @573 -@961 := @388 @827 -@972 := @644 (@830 @559 @494) (@652 (@495 (@490 @203) (@495 (@492 @189) @494))) -@973 := @802 @845 -@975 := @571 @108 @100 -@976 := @973 @975 -@978 := @571 @114 @108 -@997 := (hB : @795) -> - (hfn : @826) -> - (hwt : @961) -> - (hbind : @972) -> - (hF : @938) -> - (hA : @976) -> - (hne : @587 @978 @592) -> @675 (fun (ro : @674) => @676 (@941 (@571 @635 @612) @4) (@806 @861 @4)) -@998 := @960 @523 -@999 := @395 @827 -@1010 := @644 (@830 @387 @494) (@652 (@495 (@490 @186) (@495 (@492 @203) @494))) -@1011 := @802 @888 -@1013 := @571 @100 @102 -@1032 := (hfn : @826) -> - (hwt : @999) -> - (hbind : @1010) -> - (hF : @938) -> - (hA : @1011 @1013) -> - (hne : @587 @975 @592) -> @675 (fun (ro : @674) => @676 (@941 (@571 @612 @114) @4) (@806 @903 @4)) -@1035 := @998 (@350 @619 @796) -@1036 := @401 @827 -@1047 := @644 (@830 @394 @494) (@652 (@495 (@490 @200) (@495 (@492 @186) @494))) -@1048 := @802 @559 -@1050 := @571 @102 @104 -@1066 := (hwt : @1036) -> - (hbind : @1047) -> - (hF : @938) -> - (hA : @1048 @1050) -> - (hne : @587 @1013 @592) -> @675 (fun (ro : @674) => @676 (@941 @978 @4) (@806 @851 @4)) -@1067 := @1035 @570 -@1069 := @830 @400 @494 -@1072 := @644 @1069 (@652 @499) -@1073 := @802 @387 -@1075 := @571 @104 @25 -@1090 := (hbind : @1072) -> - (hF : @938) -> - (hA : @1073 @1075) -> - (hne : @587 @1050 @592) -> @675 (fun (ro : @674) => @676 (@941 @975 @4) (@806 @845 @4)) -@1093 := @1067 (@350 @643 @1069) -@1094 := @802 @394 -@1096 := @571 @25 @27 -@1110 := (hF : @938) -> - (hA : @1094 @1096) -> - (hne : @587 @1075 @592) -> @675 (fun (ro : @674) => @676 (@941 @1013 @4) (@806 @888 @4)) -@1113 := @1093 (@350 @655 @799) -@1127 := (hA : @802 @400 @573) -> - (hne : @587 @1096 @592) -> @675 (fun (ro : @674) => @676 (@941 @1050 @4) (@806 @559 @4)) -@1128 := @1113 @583 -@1139 := (hne : @587 @573 @592) -> @675 (fun (ro : @674) => @676 (@941 @1075 @4) (@806 @387 @4)) -@1140 := @1128 @605 -@1146 := @676 (@941 @1096 @4) (@806 @394 @4) -@1148 := @675 (fun (ro : @674) => @1146) -@1150 := @675 (fun (__e_ro : @674) => @1146) -@1152 := LexLeanPreservation.Rust.RepresentableL @364 -@1153 := (__e_hrep : @1152) -> @1150 -@1154 := fun (__e_hrep : @1152) => @1140 -@1155 := (h : @24) -> @1153 -@1156 := fun (h : @24) => @1154 -@1157 := (w : @24) -> @1155 -@1158 := fun (w : @24) => @1156 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R12/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R12/Compose/RustStd.lex.tex deleted file mode 100644 index 18a1d8968..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R12/Compose/RustStd.lex.tex +++ /dev/null @@ -1,578 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.Compose.RustStd.__wt_0 : @16 := @482 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.Compose.RustStd.__wt_0], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.Compose.RustStd.root : @1157 := @1158 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.RustStd.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.RustStd.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.RustStd.flags -@3 := Coverage.Types.Shape -@4 := #0 -@6 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.__enc_0 @4 -@7 := LexLeanPreservation.Rust.WT -@8 := LexLeanTarget.TargetSyntax.Ty.adt -@9 := 0 -@10 := @8 @9 -@11 := @7 @0 -@12 := @11 @1 -@13 := @12 @2 -@15 := @13 @6 @10 -@16 := (__v : @3) -> @15 -@17 := fun (__v : @3) => @15 -@18 := LexLeanTarget.TargetSyntax.Value.nat -@19 := @18 @4 -@20 := LexLeanTarget.TargetSyntax.Ty.nat -@21 := LexLeanTarget.TargetSyntax.Program -@22 := LexLeanPreservation.Rust.RCrate -@23 := LexLeanPreservation.Rust.Flags -@24 := Nat -@25 := #3 -@26 := @7 @25 -@27 := #2 -@28 := @26 @27 -@29 := #1 -@36 := {p : @21} -> {c : @22} -> {A : @23} -> (n : @24) -> @28 @29 @19 @20 -@38 := LexLeanPreservation.Rust.wt_nat @0 -@45 := {c : @22} -> {A : @23} -> (n : @24) -> @11 @27 @29 @19 @20 -@46 := @38 @1 -@51 := {A : @23} -> (n : @24) -> @12 @29 @19 @20 -@52 := @46 @2 -@54 := @13 @19 @20 -@55 := (n : @24) -> @54 -@56 := @52 @4 -@57 := LexLeanTarget.TargetSyntax.Value -@58 := LexLeanTarget.TargetSyntax.Ty -@59 := List.nil.{0} -@60 := List.cons.{0} -@61 := @59 @57 -@62 := @60 @57 -@64 := @62 @19 @61 -@65 := @59 @58 -@66 := @60 @58 -@67 := @66 @20 -@68 := @67 @65 -@69 := LexLeanPreservation.Rust.WTL -@77 := {p : @21} -> {c : @22} -> {A : @23} -> @69 @27 @29 @4 @61 @65 -@79 := LexLeanPreservation.Rust.wtl_nil @0 -@80 := @69 @0 -@86 := {c : @22} -> {A : @23} -> @80 @29 @4 @61 @65 -@87 := @79 @1 -@88 := @80 @1 -@92 := {A : @23} -> @88 @4 @61 @65 -@93 := @87 @2 -@94 := @88 @2 -@95 := @94 @61 -@96 := @95 @65 -@97 := List.{0} -@98 := @97 @57 -@99 := @97 @58 -@100 := #6 -@101 := @7 @100 -@102 := #5 -@103 := @101 @102 -@104 := #4 -@107 := @103 @104 @25 @27 -@108 := #7 -@113 := @69 @108 @100 @102 @27 @29 -@114 := #8 -@117 := @69 @114 @108 @100 -@119 := @62 @102 @25 -@120 := @117 @119 -@122 := @66 @104 @27 -@132 := {p : @21} -> - {c : @22} -> - {A : @23} -> - {v : @57} -> {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @107) -> (hs : @113) -> @120 @122 -@134 := LexLeanPreservation.Rust.wtl_cons @0 -@138 := @11 @102 @104 @25 @27 -@142 := @80 @100 @102 @27 @29 -@154 := {c : @22} -> - {A : @23} -> - {v : @57} -> - {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @138) -> (hs : @142) -> @80 @108 @100 @119 @122 -@155 := @134 @1 -@158 := @12 @104 @25 @27 -@161 := @88 @102 @27 @29 -@171 := {A : @23} -> - {v : @57} -> - {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @158) -> (hs : @161) -> @88 @100 @119 @122 -@172 := @155 @2 -@174 := @13 @25 @27 -@176 := @94 @27 @29 -@184 := {v : @57} -> - {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @174) -> (hs : @176) -> @94 @119 @122 -@185 := @172 @19 -@186 := @18 @25 -@187 := @13 @186 -@188 := @187 @27 -@189 := @18 @102 -@190 := @62 @189 -@192 := @94 (@190 @25) -@198 := {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @188) -> (hs : @176) -> @192 @122 -@199 := @185 @20 -@200 := @18 @27 -@202 := @13 @200 @20 -@203 := @18 @104 -@204 := @62 @203 -@206 := @94 (@204 @25) -@207 := @67 @27 -@212 := {vs : @98} -> {ts : @99} -> (h : @202) -> (hs : @176) -> @206 @207 -@213 := @199 @61 -@214 := @18 @29 -@216 := @13 @214 @20 -@217 := @95 @29 -@218 := @62 @186 -@219 := @218 @61 -@220 := @94 @219 -@224 := {ts : @99} -> (h : @216) -> (hs : @217) -> @220 @207 -@225 := @213 @65 -@226 := @62 @200 -@227 := @226 @61 -@228 := @94 @227 -@229 := @228 @68 -@231 := (h : @54) -> (hs : @96) -> @229 -@232 := @225 @56 -@233 := @62 @214 -@234 := @233 @61 -@236 := @94 @234 @68 -@237 := (hs : @96) -> @236 -@238 := @232 @93 -@240 := @94 @64 @68 -@241 := Eq.{1} -@242 := Option.{0} -@243 := @242 @99 -@244 := @241 @243 -@245 := LexLeanPreservation.Rust.adtFields -@249 := @244 (@245 @100 @25 @27) -@250 := Option.some.{0} -@251 := @250 @99 -@252 := @251 @4 -@253 := @249 @252 -@256 := @7 @114 @108 @100 -@257 := LexLeanTarget.TargetSyntax.Value.adt -@259 := @257 @104 @25 -@260 := @256 @259 -@261 := @8 @102 -@271 := {p : @21} -> - {c : @22} -> - {A : @23} -> - {i : @24} -> {k : @24} -> {fs : @98} -> {tys : @99} -> (h : @253) -> (hf : @113) -> @260 @261 -@273 := LexLeanPreservation.Rust.wt_adt @0 -@274 := @245 @0 -@278 := @244 (@274 @25 @27) @252 -@290 := {c : @22} -> - {A : @23} -> - {i : @24} -> - {k : @24} -> {fs : @98} -> {tys : @99} -> (h : @278) -> (hf : @142) -> @11 @108 @100 @259 @261 -@291 := @273 @1 -@301 := {A : @23} -> - {i : @24} -> - {k : @24} -> {fs : @98} -> {tys : @99} -> (h : @278) -> (hf : @161) -> @12 @100 @259 @261 -@302 := @291 @2 -@303 := @13 @259 -@310 := {i : @24} -> - {k : @24} -> {fs : @98} -> {tys : @99} -> (h : @278) -> (hf : @176) -> @303 @261 -@311 := @302 @9 -@312 := @274 @9 -@321 := {k : @24} -> - {fs : @98} -> {tys : @99} -> (h : @244 (@312 @27) @252) -> (hf : @176) -> @303 @10 -@322 := @311 @9 -@323 := @312 @9 -@324 := @244 @323 -@325 := @324 @252 -@326 := @257 @9 -@333 := {fs : @98} -> {tys : @99} -> (h : @325) -> (hf : @176) -> @13 (@326 @25) @10 -@334 := @322 @64 -@335 := @228 @29 -@341 := {tys : @99} -> (h : @325) -> (hf : @335) -> @13 (@326 @219) @10 -@342 := @334 @68 -@349 := (h : @324 (@251 @68)) -> (hf : @236) -> @13 (@326 @227) @10 -@350 := Eq.refl.{1} -@351 := @350 @243 -@353 := @342 (@351 @323) -@357 := (hf : @240) -> @13 (@326 @234) @10 -@358 := @353 @238 -@361 := @13 (@326 @64) @10 -@362 := fun (__x0 : @24) => @358 -@363 := @52 @29 -@364 := @233 @64 -@365 := @67 @68 -@366 := @172 @214 -@367 := @13 @203 -@368 := @367 @27 -@369 := @18 @100 -@370 := @62 @369 -@372 := @94 (@370 @25) -@378 := {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @368) -> (hs : @176) -> @372 @122 -@379 := @366 @20 -@380 := @187 @20 -@385 := {vs : @98} -> {ts : @99} -> (h : @380) -> (hs : @176) -> @192 @207 -@386 := @379 @64 -@387 := @204 @219 -@388 := @94 @387 -@392 := {ts : @99} -> (h : @202) -> (hs : @335) -> @388 @207 -@393 := @386 @68 -@394 := @218 @227 -@395 := @94 @394 -@398 := (h : @216) -> (hs : @236) -> @395 @365 -@399 := @393 @363 -@400 := @226 @234 -@401 := @94 @400 -@402 := @401 @365 -@403 := (hs : @240) -> @402 -@404 := @399 @238 -@406 := @94 @364 @365 -@407 := 1 -@408 := @311 @407 -@409 := @312 @407 -@410 := @244 @409 -@411 := @410 @252 -@412 := @257 @407 -@419 := {fs : @98} -> {tys : @99} -> (h : @411) -> (hf : @176) -> @13 (@412 @25) @10 -@420 := @408 @364 -@427 := {tys : @99} -> (h : @411) -> (hf : @395 @29) -> @13 (@412 @387) @10 -@428 := @420 @365 -@435 := (h : @410 (@251 @365)) -> (hf : @402) -> @13 (@412 @394) @10 -@437 := @428 (@351 @409) -@441 := (hf : @406) -> @13 (@412 @400) @10 -@442 := @437 @404 -@445 := @13 (@412 @364) @10 -@447 := fun (__x0 : @24) => fun (__x1 : @24) => @442 -@448 := 2 -@449 := @311 @448 -@450 := @312 @448 -@451 := @244 @450 -@452 := @451 @252 -@453 := @257 @448 -@460 := {fs : @98} -> {tys : @99} -> (h : @452) -> (hf : @176) -> @13 (@453 @25) @10 -@461 := @449 @61 -@464 := @13 (@453 @61) @10 -@467 := {tys : @99} -> (h : @452) -> (hf : @217) -> @464 -@468 := @461 @65 -@472 := (h : @451 (@251 @65)) -> (hf : @96) -> @464 -@475 := @468 (@351 @450) @93 -@482 := fun (__v : @3) => Coverage.Types.Shape.casesOn.{0} @17 @4 @362 @447 @475 -@483 := @52 @27 -@486 := Prod.{0, 0} @24 @57 -@489 := Prod.mk.{0, 0} @24 @57 -@490 := @489 @407 -@491 := @490 @214 -@492 := @489 @9 -@493 := @492 @200 -@494 := @59 @486 -@495 := @60 @486 -@497 := @495 @493 @494 -@499 := @495 @491 @497 -@500 := Bool.true -@501 := LexLeanTarget.TargetSyntax.Function -@502 := LexLeanTarget.TargetSyntax.Program.functions -@503 := @502 @0 -@504 := @59 @24 -@505 := LexLeanTarget.TargetSyntax.Ty.unit -@506 := LexLeanTarget.TargetSyntax.Value.unit -@509 := LexLeanTarget.TargetSyntax.Expr.value @505 @506 -@514 := LexLeanTarget.TargetSyntax.Function.mk @504 @65 @505 @509 -@519 := List.getD.{0} @501 @503 @9 @514 -@523 := fun (__e_n : @24) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.RustStd.root @4 @9 -@524 := @379 @61 -@525 := @204 @61 -@530 := {ts : @99} -> (h : @202) -> (hs : @217) -> @94 @525 @207 -@531 := @524 @65 -@534 := (h : @216) -> (hs : @96) -> @220 @68 -@536 := @531 @363 @93 -@537 := @172 @200 -@539 := @13 @189 @27 -@540 := @18 @108 -@541 := @62 @540 -@549 := {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @539) -> (hs : @176) -> @94 (@541 @25) @122 -@550 := @537 @20 -@556 := {vs : @98} -> {ts : @99} -> (h : @367 @20) -> (hs : @176) -> @372 @207 -@557 := @550 @234 -@558 := @220 @29 -@559 := @190 @525 -@560 := @94 @559 -@564 := {ts : @99} -> (h : @380) -> (hs : @558) -> @560 @207 -@565 := @557 @68 -@568 := (h : @202) -> (hs : @229) -> @388 @365 -@570 := @565 @483 @536 -@571 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.denote -@573 := @571 @27 @29 -@574 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.__fits_0 -@576 := @574 @27 @29 -@580 := @18 (Coverage.Main.shapes @27 @29) -@583 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.root @27 @29 -@584 := Bool -@585 := Ne.{1} -@586 := LexLeanPreservation.Obs -@587 := @585 @586 -@588 := LexLeanPreservation.Rel -@591 := @587 (@588 @29 @4) -@592 := LexLeanPreservation.Obs.stuck -@595 := (f : @584) -> (v : @57) -> @591 @592 -@597 := LexLeanPreservation.Rust.rel_ne_stuck @576 -@604 := (v : @57) -> @587 (@588 (@574 @25 @27) @4) @592 -@605 := @597 @580 -@609 := @587 (@588 @576 @580) @592 -@610 := @97 @486 -@611 := LexLeanPreservation.Rust.FunSem -@612 := #9 -@618 := (n : @24) -> @611 @612 @114 @108 @4 @100 -@619 := @242 @501 -@620 := @241 @619 -@627 := LexLeanRuntime.index (@97 @501) @501 (LexLeanRuntime.instIndexableList @501) -@631 := @620 (@627 (@502 @612) @100) -@632 := @250 @501 -@633 := @632 @102 -@634 := @631 @633 -@635 := #10 -@639 := @69 @635 @612 @114 @102 -@640 := LexLeanTarget.TargetSyntax.Function.types -@641 := @640 @100 -@642 := @639 @641 -@643 := @242 @610 -@644 := @241 @643 -@645 := LexLeanTarget.TargetSemantics.bindAll -@646 := LexLeanTarget.TargetSyntax.Function.parameters -@651 := @644 (@645 (@646 @108) @100 @494) -@652 := @250 @610 -@653 := @652 @102 -@654 := @651 @653 -@655 := @242 @584 -@656 := @241 @655 -@657 := LexLeanPreservation.Rust.fnFallible -@658 := #11 -@661 := @656 (@657 @658 @612) -@662 := @250 @584 -@663 := @662 @102 -@664 := @661 @663 -@665 := LexLeanPreservation.RunConv -@666 := #13 -@670 := @665 @666 @635 @114 @102 -@672 := @587 @100 @592 -@673 := Exists.{1} -@674 := LexLeanPreservation.Rust.ROut -@675 := @673 @674 -@676 := And -@677 := LexLeanPreservation.Rust.RealizesFn -@681 := @676 (@677 @612 @114 @4) -@682 := LexLeanPreservation.Rust.RCI -@684 := @682 #15 -@685 := LexLeanPreservation.Rust.fnIdent -@686 := @685 @666 -@693 := (hne : @672) -> @675 (fun (ro : @674) => @681 (@684 @686 @658 @4)) -@708 := {p : @21} -> - {c : @22} -> - {A : @23} -> - {f : @24} -> - {fn : @501} -> - {args : @98} -> - {env : @610} -> - {F : @584} -> - {o : @586} -> - (hB : @618) -> - (hfn : @634) -> (hwt : @642) -> (hbind : @654) -> (hF : @664) -> (hA : @670) -> @693 -@710 := LexLeanPreservation.Rust.compose @0 -@711 := @611 @0 -@716 := (n : @24) -> @711 @114 @108 @4 @100 -@717 := @627 @503 -@720 := @620 (@717 @100) @633 -@724 := @80 @612 @114 @102 @641 -@725 := @665 @0 -@728 := @725 @635 @114 @102 -@742 := {c : @22} -> - {A : @23} -> - {f : @24} -> - {fn : @501} -> - {args : @98} -> - {env : @610} -> - {F : @584} -> - {o : @586} -> - (hB : @716) -> - (hfn : @720) -> (hwt : @724) -> (hbind : @654) -> (hF : @664) -> (hA : @728) -> @693 -@743 := @710 @1 -@744 := @711 @1 -@748 := (n : @24) -> @744 @108 @4 @100 -@751 := @88 @114 @102 @641 -@752 := @657 @1 -@755 := @656 (@752 @612) @663 -@756 := @682 @1 -@766 := (hbind : @654) -> - (hF : @755) -> (hA : @728) -> (hne : @672) -> @675 (fun (ro : @674) => @681 (@756 @686 @658 @4)) -@776 := {A : @23} -> - {f : @24} -> - {fn : @501} -> - {args : @98} -> - {env : @610} -> {F : @584} -> {o : @586} -> (hB : @748) -> (hfn : @720) -> (hwt : @751) -> @766 -@777 := @743 @2 -@779 := @744 @2 @4 -@781 := (n : @24) -> @779 @100 -@782 := @94 @102 -@783 := @782 @641 -@792 := {f : @24} -> - {fn : @501} -> - {args : @98} -> - {env : @610} -> {F : @584} -> {o : @586} -> (hB : @781) -> (hfn : @720) -> (hwt : @783) -> @766 -@793 := @777 @9 -@795 := (n : @24) -> @779 @9 -@796 := @717 @9 -@797 := @620 @796 -@798 := @797 @633 -@799 := @752 @9 -@800 := @656 @799 -@801 := @800 @663 -@802 := @725 @9 -@804 := @802 @114 @102 -@806 := @756 (@685 @9) -@814 := (hF : @801) -> (hA : @804) -> (hne : @672) -> @675 (fun (ro : @674) => @681 (@806 @658 @4)) -@823 := {fn : @501} -> - {args : @98} -> - {env : @610} -> - {F : @584} -> {o : @586} -> (hB : @795) -> (hfn : @798) -> (hwt : @783) -> (hbind : @654) -> @814 -@824 := @793 @519 -@826 := @797 (@632 @519) -@827 := @640 @519 -@828 := @782 @827 -@830 := @645 (@646 @519) -@842 := {args : @98} -> - {env : @610} -> - {F : @584} -> - {o : @586} -> - (hB : @795) -> (hfn : @826) -> (hwt : @828) -> (hbind : @644 (@830 @100 @494) @653) -> @814 -@843 := @824 @400 -@845 := @541 (@370 @61) -@847 := @94 @845 @827 -@849 := @62 (@18 @114) -@851 := @849 (@541 @61) -@855 := @644 (@830 @851 @494) @653 -@857 := @62 (@18 @635) -@859 := @62 (@18 @612) -@861 := @857 (@859 @61) -@863 := @802 @861 @102 -@865 := @62 (@18 @666) -@868 := @62 (@18 #12) -@885 := {env : @610} -> - {F : @584} -> - {o : @586} -> - (hB : @795) -> - (hfn : @826) -> - (hwt : @847) -> - (hbind : @855) -> - (hF : @801) -> - (hA : @863) -> (hne : @672) -> @675 (fun (ro : @674) => @681 (@806 (@865 (@868 @61)) @4)) -@886 := @843 @499 -@888 := @370 (@190 @61) -@890 := @94 @888 @827 -@901 := @644 (@830 @845 @494) (@652 (@495 (@490 @369) (@495 (@492 @540) @494))) -@903 := @859 (@849 @61) -@905 := @802 @903 @102 -@907 := @62 (@18 @658) -@923 := {F : @584} -> - {o : @586} -> - (hB : @795) -> - (hfn : @826) -> - (hwt : @890) -> - (hbind : @901) -> - (hF : @801) -> - (hA : @905) -> (hne : @672) -> @675 (fun (ro : @674) => @681 (@806 (@868 (@907 @61)) @4)) -@924 := @886 @500 -@925 := @560 @827 -@936 := @644 (@830 @888 @494) (@652 (@495 (@490 @189) (@495 (@492 @369) @494))) -@938 := @800 (@662 @500) -@940 := @802 @851 @102 -@941 := @677 @500 -@959 := {o : @586} -> - (hB : @795) -> - (hfn : @826) -> - (hwt : @925) -> - (hbind : @936) -> - (hF : @938) -> - (hA : @940) -> - (hne : @672) -> @675 (fun (ro : @674) => @676 (@941 @114 @4) (@806 (@907 (@857 @61)) @4)) -@960 := @924 @573 -@961 := @388 @827 -@972 := @644 (@830 @559 @494) (@652 (@495 (@490 @203) (@495 (@492 @189) @494))) -@973 := @802 @845 -@975 := @571 @108 @100 -@976 := @973 @975 -@978 := @571 @114 @108 -@997 := (hB : @795) -> - (hfn : @826) -> - (hwt : @961) -> - (hbind : @972) -> - (hF : @938) -> - (hA : @976) -> - (hne : @587 @978 @592) -> @675 (fun (ro : @674) => @676 (@941 (@571 @635 @612) @4) (@806 @861 @4)) -@998 := @960 @523 -@999 := @395 @827 -@1010 := @644 (@830 @387 @494) (@652 (@495 (@490 @186) (@495 (@492 @203) @494))) -@1011 := @802 @888 -@1013 := @571 @100 @102 -@1032 := (hfn : @826) -> - (hwt : @999) -> - (hbind : @1010) -> - (hF : @938) -> - (hA : @1011 @1013) -> - (hne : @587 @975 @592) -> @675 (fun (ro : @674) => @676 (@941 (@571 @612 @114) @4) (@806 @903 @4)) -@1035 := @998 (@350 @619 @796) -@1036 := @401 @827 -@1047 := @644 (@830 @394 @494) (@652 (@495 (@490 @200) (@495 (@492 @186) @494))) -@1048 := @802 @559 -@1050 := @571 @102 @104 -@1066 := (hwt : @1036) -> - (hbind : @1047) -> - (hF : @938) -> - (hA : @1048 @1050) -> - (hne : @587 @1013 @592) -> @675 (fun (ro : @674) => @676 (@941 @978 @4) (@806 @851 @4)) -@1067 := @1035 @570 -@1069 := @830 @400 @494 -@1072 := @644 @1069 (@652 @499) -@1073 := @802 @387 -@1075 := @571 @104 @25 -@1090 := (hbind : @1072) -> - (hF : @938) -> - (hA : @1073 @1075) -> - (hne : @587 @1050 @592) -> @675 (fun (ro : @674) => @676 (@941 @975 @4) (@806 @845 @4)) -@1093 := @1067 (@350 @643 @1069) -@1094 := @802 @394 -@1096 := @571 @25 @27 -@1110 := (hF : @938) -> - (hA : @1094 @1096) -> - (hne : @587 @1075 @592) -> @675 (fun (ro : @674) => @676 (@941 @1013 @4) (@806 @888 @4)) -@1113 := @1093 (@350 @655 @799) -@1127 := (hA : @802 @400 @573) -> - (hne : @587 @1096 @592) -> @675 (fun (ro : @674) => @676 (@941 @1050 @4) (@806 @559 @4)) -@1128 := @1113 @583 -@1139 := (hne : @587 @573 @592) -> @675 (fun (ro : @674) => @676 (@941 @1075 @4) (@806 @387 @4)) -@1140 := @1128 @605 -@1146 := @676 (@941 @1096 @4) (@806 @394 @4) -@1148 := @675 (fun (ro : @674) => @1146) -@1150 := @675 (fun (__e_ro : @674) => @1146) -@1152 := LexLeanPreservation.Rust.RepresentableL @364 -@1153 := (__e_hrep : @1152) -> @1150 -@1154 := fun (__e_hrep : @1152) => @1140 -@1155 := (h : @24) -> @1153 -@1156 := fun (h : @24) => @1154 -@1157 := (w : @24) -> @1155 -@1158 := fun (w : @24) => @1156 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R12/RustCore.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R12/RustCore.lean deleted file mode 100644 index e63042723..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R12/RustCore.lean +++ /dev/null @@ -1,42 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.RustCore -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [{ constructors := [[.nat], [.nat, .nat], []] }], functions := [ - { parameters := [0, 1], types := [.nat, .nat], result := .nat, - body := (.prim .natAdd [(.call 1 [(.build (.adt 1) (.adt 0) [(.var 0), (.var 1)])]), (.prim .natAdd [(.call 1 [(.build (.adt 0) (.adt 0) [(.var 0)])]), (.call 1 [(.build (.adt 2) (.adt 0) [])])])]) }, - { parameters := [0], types := [(.adt 0)], result := .nat, - body := (.«match» .nat (.var 0) [(.arm (.adt 0) [1] (.prim .natMul [(.prim .natMul [(.var 1), (.var 1)]), (.value .nat (.nat 3))])), (.arm (.adt 1) [2, 3] (.prim .natMul [(.var 2), (.var 3)])), (.arm (.adt 2) [] (.value .nat (.nat 0)))]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .core, items := [ - (.enum (.adt 0) [{ number := 0, fields := [.nat] }, { number := 1, fields := [.nat, .nat] }, { number := 2, fields := [] }]), - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .operand 3)) none (.call (.function 1) [(.construct (.adt 0 1) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))])] true)), (.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.call (.function 1) [(.construct (.adt 0 0) [(.copy (.generated .binding 0))])] true)), (.mk (.bind (.generated .operand 2)) none (.call (.function 1) [(.construct (.adt 0 2) [])] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] true))))] (.call (.runtime .natAdd) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))), - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 5)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 5)) [(.mk (.adt 0 0 [(.bind (.generated .binding 1))]) (.mk [(.mk (.bind (.generated .operand 8)) none (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1)))] (.call (.runtime .natMul) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] true)))), (.mk (.bind (.generated .operand 9)) none (.lit (.nat 3)))] (.call (.runtime .natMul) [(.move (.generated .operand 8)), (.move (.generated .operand 9))] false))), (.mk (.adt 0 1 [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))]) (.mk [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 3)))] (.call (.runtime .natMul) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false))), (.mk (.adt 0 2 []) (.mk [] (.succeed (.lit (.nat 0)))))])))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 3)) none (.call (.function 1) [(.construct (.adt 0 1) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))])] true)), (.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.call (.function 1) [(.construct (.adt 0 0) [(.copy (.generated .binding 0))])] true)), (.mk (.bind (.generated .operand 2)) none (.call (.function 1) [(.construct (.adt 0 2) [])] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] true))))], (.call (.runtime .natAdd) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, .nat]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.call (.function 1) [(.construct (.adt 0 0) [(.copy (.generated .binding 0))])] true)), (.mk (.bind (.generated .operand 2)) none (.call (.function 1) [(.construct (.adt 0 2) [])] true))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 5)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 5)) [(.mk (.adt 0 0 [(.bind (.generated .binding 1))]) (.mk [(.mk (.bind (.generated .operand 8)) none (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1)))] (.call (.runtime .natMul) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] true)))), (.mk (.bind (.generated .operand 9)) none (.lit (.nat 3)))] (.call (.runtime .natMul) [(.move (.generated .operand 8)), (.move (.generated .operand 9))] false))), (.mk (.adt 0 1 [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))]) (.mk [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 3)))] (.call (.runtime .natMul) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false))), (.mk (.adt 0 2 []) (.mk [] (.succeed (.lit (.nat 0)))))]), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.adt 0)) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .operand 8)) none (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1)))] (.call (.runtime .natMul) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] true)))), (.mk (.bind (.generated .operand 9)) none (.lit (.nat 3)))]) (tail := (.call (.runtime .natMul) [(.move (.generated .operand 8)), (.move (.generated .operand 9))] false)) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (2, .nat, (some 2)), (0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 3)))]) (tail := (.call (.runtime .natMul) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false)) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.succeed (.lit (.nat 0)))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl)))) rfl rfl rfl (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natMul) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl)⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | _ + 2 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.RustCore diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R12/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R12/RustStd.lean deleted file mode 100644 index e4b2c7e27..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R12/RustStd.lean +++ /dev/null @@ -1,42 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [{ constructors := [[.nat], [.nat, .nat], []] }], functions := [ - { parameters := [0, 1], types := [.nat, .nat], result := .nat, - body := (.prim .natAdd [(.call 1 [(.build (.adt 1) (.adt 0) [(.var 0), (.var 1)])]), (.prim .natAdd [(.call 1 [(.build (.adt 0) (.adt 0) [(.var 0)])]), (.call 1 [(.build (.adt 2) (.adt 0) [])])])]) }, - { parameters := [0], types := [(.adt 0)], result := .nat, - body := (.«match» .nat (.var 0) [(.arm (.adt 0) [1] (.prim .natMul [(.prim .natMul [(.var 1), (.var 1)]), (.value .nat (.nat 3))])), (.arm (.adt 1) [2, 3] (.prim .natMul [(.var 2), (.var 3)])), (.arm (.adt 2) [] (.value .nat (.nat 0)))]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.enum (.adt 0) [{ number := 0, fields := [.nat] }, { number := 1, fields := [.nat, .nat] }, { number := 2, fields := [] }]), - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .operand 3)) none (.call (.function 1) [(.construct (.adt 0 1) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))])] true)), (.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.call (.function 1) [(.construct (.adt 0 0) [(.copy (.generated .binding 0))])] true)), (.mk (.bind (.generated .operand 2)) none (.call (.function 1) [(.construct (.adt 0 2) [])] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] true))))] (.call (.runtime .natAdd) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))), - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 5)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 5)) [(.mk (.adt 0 0 [(.bind (.generated .binding 1))]) (.mk [(.mk (.bind (.generated .operand 8)) none (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1)))] (.call (.runtime .natMul) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] true)))), (.mk (.bind (.generated .operand 9)) none (.lit (.nat 3)))] (.call (.runtime .natMul) [(.move (.generated .operand 8)), (.move (.generated .operand 9))] false))), (.mk (.adt 0 1 [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))]) (.mk [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 3)))] (.call (.runtime .natMul) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false))), (.mk (.adt 0 2 []) (.mk [] (.succeed (.lit (.nat 0)))))])))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 3)) none (.call (.function 1) [(.construct (.adt 0 1) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))])] true)), (.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.call (.function 1) [(.construct (.adt 0 0) [(.copy (.generated .binding 0))])] true)), (.mk (.bind (.generated .operand 2)) none (.call (.function 1) [(.construct (.adt 0 2) [])] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] true))))], (.call (.runtime .natAdd) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, .nat]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.call (.function 1) [(.construct (.adt 0 0) [(.copy (.generated .binding 0))])] true)), (.mk (.bind (.generated .operand 2)) none (.call (.function 1) [(.construct (.adt 0 2) [])] true))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 5)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 5)) [(.mk (.adt 0 0 [(.bind (.generated .binding 1))]) (.mk [(.mk (.bind (.generated .operand 8)) none (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1)))] (.call (.runtime .natMul) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] true)))), (.mk (.bind (.generated .operand 9)) none (.lit (.nat 3)))] (.call (.runtime .natMul) [(.move (.generated .operand 8)), (.move (.generated .operand 9))] false))), (.mk (.adt 0 1 [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))]) (.mk [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 3)))] (.call (.runtime .natMul) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false))), (.mk (.adt 0 2 []) (.mk [] (.succeed (.lit (.nat 0)))))]), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.adt 0)) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .operand 8)) none (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1)))] (.call (.runtime .natMul) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] true)))), (.mk (.bind (.generated .operand 9)) none (.lit (.nat 3)))]) (tail := (.call (.runtime .natMul) [(.move (.generated .operand 8)), (.move (.generated .operand 9))] false)) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (2, .nat, (some 2)), (0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 3)))]) (tail := (.call (.runtime .natMul) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false)) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.succeed (.lit (.nat 0)))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl)))) rfl rfl rfl (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natMul) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl)⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | _ + 2 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R13/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R13/Compose/RustStd.lex.tex deleted file mode 100644 index 0841097c9..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R13/Compose/RustStd.lex.tex +++ /dev/null @@ -1,585 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.Compose.RustStd.__wt_0 : @520 := @519 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.Compose.RustStd.__wt_0], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.Compose.RustStd.root : @1152 := @1153 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.RustStd.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.RustStd.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.RustStd.flags -@3 := Coverage.Types.Tree -@4 := #0 -@5 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.__enc_0 -@6 := @5 @4 -@7 := LexLeanPreservation.Rust.WT -@8 := LexLeanTarget.TargetSyntax.Ty.adt -@9 := 0 -@10 := @8 @9 -@11 := @7 @0 -@12 := @11 @1 -@13 := @12 @2 -@15 := @13 @6 @10 -@16 := fun (__v : @3) => @15 -@17 := LexLeanTarget.TargetSyntax.Value -@18 := LexLeanTarget.TargetSyntax.Ty -@19 := List.nil.{0} -@20 := List.cons.{0} -@21 := @19 @17 -@22 := @19 @18 -@23 := LexLeanTarget.TargetSyntax.Program -@24 := LexLeanPreservation.Rust.RCrate -@25 := LexLeanPreservation.Rust.Flags -@26 := LexLeanPreservation.Rust.WTL -@27 := #2 -@28 := @26 @27 -@29 := #1 -@36 := {p : @23} -> {c : @24} -> {A : @25} -> @28 @29 @4 @21 @22 -@38 := LexLeanPreservation.Rust.wtl_nil @0 -@39 := @26 @0 -@45 := {c : @24} -> {A : @25} -> @39 @29 @4 @21 @22 -@46 := @38 @1 -@47 := @39 @1 -@51 := {A : @25} -> @47 @4 @21 @22 -@52 := @46 @2 -@53 := @47 @2 -@54 := @53 @21 -@55 := @54 @22 -@56 := Nat -@57 := List.{0} -@58 := @57 @17 -@59 := @57 @18 -@60 := Eq.{1} -@61 := Option.{0} -@62 := @61 @59 -@63 := @60 @62 -@64 := LexLeanPreservation.Rust.adtFields -@65 := #6 -@66 := @64 @65 -@67 := #3 -@70 := @63 (@66 @67 @27) -@71 := Option.some.{0} -@72 := @71 @59 -@73 := @72 @4 -@74 := @70 @73 -@75 := #7 -@77 := @26 @75 @65 -@78 := #5 -@81 := @77 @78 @27 @29 -@82 := #8 -@85 := @7 @82 @75 @65 -@86 := LexLeanTarget.TargetSyntax.Value.adt -@87 := #4 -@89 := @86 @87 @67 -@90 := @85 @89 -@91 := @8 @78 -@101 := {p : @23} -> - {c : @24} -> - {A : @25} -> - {i : @56} -> {k : @56} -> {fs : @58} -> {tys : @59} -> (h : @74) -> (hf : @81) -> @90 @91 -@103 := LexLeanPreservation.Rust.wt_adt @0 -@104 := @64 @0 -@108 := @63 (@104 @67 @27) @73 -@112 := @39 @65 @78 @27 @29 -@124 := {c : @24} -> - {A : @25} -> - {i : @56} -> - {k : @56} -> {fs : @58} -> {tys : @59} -> (h : @108) -> (hf : @112) -> @11 @75 @65 @89 @91 -@125 := @103 @1 -@128 := @47 @78 @27 @29 -@138 := {A : @25} -> - {i : @56} -> - {k : @56} -> {fs : @58} -> {tys : @59} -> (h : @108) -> (hf : @128) -> @12 @65 @89 @91 -@139 := @125 @2 -@141 := @53 @27 @29 -@142 := @13 @89 -@149 := {i : @56} -> {k : @56} -> {fs : @58} -> {tys : @59} -> (h : @108) -> (hf : @141) -> @142 @91 -@150 := @139 @9 -@151 := @104 @9 -@160 := {k : @56} -> - {fs : @58} -> {tys : @59} -> (h : @63 (@151 @27) @73) -> (hf : @141) -> @142 @10 -@161 := @150 @9 -@162 := @151 @9 -@163 := @63 @162 -@164 := @163 @73 -@165 := @86 @9 -@172 := {fs : @58} -> {tys : @59} -> (h : @164) -> (hf : @141) -> @13 (@165 @67) @10 -@173 := @161 @21 -@174 := @54 @29 -@177 := @13 (@165 @21) @10 -@180 := {tys : @59} -> (h : @164) -> (hf : @174) -> @177 -@181 := @173 @22 -@185 := (h : @163 (@72 @22)) -> (hf : @55) -> @177 -@186 := Eq.refl.{1} -@187 := @186 @62 -@190 := @181 (@187 @162) @52 -@191 := @5 @87 -@192 := LexLeanTarget.TargetSyntax.Value.nat -@193 := @192 @67 -@194 := LexLeanTarget.TargetSyntax.Ty.nat -@197 := @7 @67 @27 @29 -@198 := @192 @4 -@204 := {p : @23} -> {c : @24} -> {A : @25} -> (n : @56) -> @197 @198 @194 -@206 := LexLeanPreservation.Rust.wt_nat @0 -@213 := {c : @24} -> {A : @25} -> (n : @56) -> @11 @27 @29 @198 @194 -@214 := @206 @1 -@219 := {A : @25} -> (n : @56) -> @12 @29 @198 @194 -@220 := @214 @2 -@223 := (n : @56) -> @13 @198 @194 -@224 := @220 @67 -@226 := @13 @193 @194 -@227 := @5 @27 -@228 := @20 @17 -@230 := @228 @227 @21 -@231 := @228 @193 -@232 := @231 @230 -@233 := @228 @191 -@234 := @233 @232 -@235 := @20 @18 -@236 := @235 @10 -@237 := @236 @22 -@238 := @235 @194 -@239 := @238 @237 -@240 := @236 @239 -@245 := @7 @65 @78 @87 @67 @27 -@248 := @26 @82 @75 @65 -@250 := @228 @78 @67 -@251 := @248 @250 -@253 := @235 @87 @27 -@263 := {p : @23} -> - {c : @24} -> - {A : @25} -> - {v : @17} -> {t : @18} -> {vs : @58} -> {ts : @59} -> (h : @245) -> (hs : @81) -> @251 @253 -@265 := LexLeanPreservation.Rust.wtl_cons @0 -@281 := {c : @24} -> - {A : @25} -> - {v : @17} -> - {t : @18} -> - {vs : @58} -> {ts : @59} -> (h : @11 @78 @87 @67 @27) -> (hs : @112) -> @39 @75 @65 @250 @253 -@282 := @265 @1 -@295 := {A : @25} -> - {v : @17} -> - {t : @18} -> {vs : @58} -> {ts : @59} -> (h : @12 @87 @67 @27) -> (hs : @128) -> @47 @65 @250 @253 -@296 := @282 @2 -@306 := {v : @17} -> - {t : @18} -> {vs : @58} -> {ts : @59} -> (h : @13 @67 @27) -> (hs : @141) -> @53 @250 @253 -@307 := @296 @227 -@308 := @5 @78 -@309 := @13 @308 -@310 := @309 @27 -@311 := @5 @75 -@312 := @228 @311 -@320 := {t : @18} -> {vs : @58} -> {ts : @59} -> (h : @310) -> (hs : @141) -> @53 (@312 @67) @253 -@321 := @307 @10 -@323 := @13 @191 @10 -@324 := @5 @65 -@325 := @228 @324 -@327 := @53 (@325 @67) -@328 := @236 @27 -@333 := {vs : @58} -> {ts : @59} -> (h : @323) -> (hs : @141) -> @327 @328 -@334 := @321 @21 -@335 := @5 @67 -@337 := @13 @335 @10 -@338 := @228 @308 -@339 := @338 @21 -@344 := {ts : @59} -> (h : @337) -> (hs : @174) -> @53 @339 @328 -@345 := @334 @22 -@347 := @13 @227 @10 -@348 := @233 @21 -@349 := @53 @348 -@352 := (h : @347) -> (hs : @55) -> @349 @237 -@353 := @345 @4 -@355 := @228 @335 @21 -@357 := @53 @355 @237 -@358 := (hs : @55) -> @357 -@359 := @353 @52 -@361 := @53 @230 @237 -@362 := @296 @193 -@363 := @192 @65 -@365 := @13 @363 @27 -@367 := @228 (@192 @82) -@375 := {t : @18} -> {vs : @58} -> {ts : @59} -> (h : @365) -> (hs : @141) -> @53 (@367 @67) @253 -@376 := @362 @194 -@377 := @192 @78 -@379 := @13 @377 @194 -@381 := @228 (@192 @75) -@383 := @53 (@381 @67) -@384 := @238 @27 -@389 := {vs : @58} -> {ts : @59} -> (h : @379) -> (hs : @141) -> @383 @384 -@390 := @376 @230 -@391 := @192 @87 -@392 := @13 @391 -@393 := @392 @194 -@394 := @349 @29 -@395 := @228 @363 -@396 := @395 @339 -@401 := {ts : @59} -> (h : @393) -> (hs : @394) -> @53 @396 @384 -@402 := @390 @237 -@403 := @228 @377 -@404 := @403 @348 -@405 := @53 @404 -@408 := (h : @226) -> (hs : @357) -> @405 @239 -@409 := @402 @224 -@410 := @228 @391 -@411 := @410 @355 -@413 := @53 @411 @239 -@414 := (hs : @361) -> @413 -@415 := @409 @359 -@417 := @53 @232 @239 -@418 := @296 @191 -@420 := @13 @311 @27 -@421 := #9 -@431 := {t : @18} -> - {vs : @58} -> {ts : @59} -> (h : @420) -> (hs : @141) -> @53 (@228 (@5 @421) @67) @253 -@432 := @418 @10 -@443 := {vs : @58} -> - {ts : @59} -> (h : @13 @324 @10) -> (hs : @141) -> @53 (@228 (@5 @82) @67) @328 -@444 := @432 @232 -@445 := @309 @10 -@446 := @405 @29 -@447 := @312 @396 -@452 := {ts : @59} -> (h : @445) -> (hs : @446) -> @53 @447 @328 -@453 := @444 @239 -@454 := @325 @404 -@455 := @53 @454 -@458 := (h : @323) -> (hs : @413) -> @455 @240 -@459 := @453 @29 -@460 := @338 @411 -@462 := @53 @460 @240 -@463 := (hs : @417) -> @462 -@464 := @459 @415 -@466 := @53 @234 @240 -@467 := 1 -@468 := @150 @467 -@469 := @151 @467 -@470 := @63 @469 -@471 := @470 @73 -@472 := @86 @467 -@479 := {fs : @58} -> {tys : @59} -> (h : @471) -> (hf : @141) -> @13 (@472 @67) @10 -@480 := @468 @234 -@487 := {tys : @59} -> (h : @471) -> (hf : @455 @29) -> @13 (@472 @447) @10 -@488 := @480 @240 -@495 := (h : @470 (@72 @240)) -> (hf : @462) -> @13 (@472 @454) @10 -@497 := @488 (@187 @469) -@501 := (hf : @466) -> @13 (@472 @460) @10 -@502 := @497 @464 -@505 := @13 (@472 @234) @10 -@513 := fun (__x0 : @3) => - fun (__x1 : @56) => - fun (__x2 : @3) => fun (__ih0 : @347) => fun (__ih1 : @13 (@5 @29) @10) => @502 -@519 := fun (__v : @3) => Coverage.Types.Tree.rec.{0} @16 @190 @513 @4 -@520 := (__v : @3) -> @15 -@521 := @192 @29 -@522 := @220 @29 -@524 := @13 @521 @194 -@526 := @228 @521 @21 -@529 := Prod.{0, 0} @56 @17 -@533 := Prod.mk.{0, 0} @56 @17 @9 -@534 := @533 @521 -@535 := @19 @529 -@536 := @20 @529 -@538 := @536 @534 @535 -@539 := Bool.true -@540 := LexLeanTarget.TargetSyntax.Function -@541 := LexLeanTarget.TargetSyntax.Program.functions -@542 := @541 @0 -@543 := @19 @56 -@544 := LexLeanTarget.TargetSyntax.Ty.unit -@545 := LexLeanTarget.TargetSyntax.Value.unit -@548 := LexLeanTarget.TargetSyntax.Expr.value @544 @545 -@553 := LexLeanTarget.TargetSyntax.Function.mk @543 @22 @544 @548 -@558 := List.getD.{0} @540 @542 @9 @553 -@562 := fun (__e_n : @56) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.RustStd.root @4 @9 -@563 := @296 @521 -@572 := {t : @18} -> - {vs : @58} -> {ts : @59} -> (h : @392 @27) -> (hs : @141) -> @53 (@395 @67) @253 -@573 := @563 @194 -@580 := {vs : @58} -> {ts : @59} -> (h : @226) -> (hs : @141) -> @53 (@403 @67) @384 -@581 := @573 @21 -@582 := @192 @27 -@584 := @13 @582 @194 -@585 := @410 @21 -@586 := @53 @585 -@590 := {ts : @59} -> (h : @584) -> (hs : @174) -> @586 @384 -@591 := @581 @22 -@592 := @231 @21 -@593 := @53 @592 -@594 := @238 @22 -@597 := (h : @524) -> (hs : @55) -> @593 @594 -@598 := @591 @522 -@600 := @228 @582 @21 -@601 := @53 @600 -@603 := (hs : @55) -> @601 @594 -@604 := @598 @52 -@605 := @53 @526 -@606 := @605 @594 -@607 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.denote -@608 := @607 @29 -@609 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.__fits_0 -@610 := @609 @29 -@613 := @192 (Coverage.Main.treeTotal @29) -@615 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.root @29 -@616 := Bool -@617 := Ne.{1} -@618 := LexLeanPreservation.Obs -@619 := @617 @618 -@620 := LexLeanPreservation.Rel -@623 := @619 (@620 @29 @4) -@624 := LexLeanPreservation.Obs.stuck -@627 := (f : @616) -> (v : @17) -> @623 @624 -@629 := LexLeanPreservation.Rust.rel_ne_stuck @610 -@635 := (v : @17) -> @619 (@620 (@609 @27) @4) @624 -@636 := @629 @613 -@640 := @619 (@620 @610 @613) @624 -@641 := @57 @529 -@642 := LexLeanPreservation.Rust.FunSem -@648 := (n : @56) -> @642 @421 @82 @75 @4 @65 -@649 := @61 @540 -@650 := @60 @649 -@657 := LexLeanRuntime.index (@57 @540) @540 (LexLeanRuntime.instIndexableList @540) -@661 := @650 (@657 (@541 @421) @65) -@662 := @71 @540 -@663 := @662 @78 -@664 := @661 @663 -@665 := #10 -@669 := @26 @665 @421 @82 @78 -@670 := LexLeanTarget.TargetSyntax.Function.types -@671 := @670 @65 -@672 := @669 @671 -@673 := @61 @641 -@674 := @60 @673 -@675 := LexLeanTarget.TargetSemantics.bindAll -@676 := LexLeanTarget.TargetSyntax.Function.parameters -@681 := @674 (@675 (@676 @75) @65 @535) -@682 := @71 @641 -@683 := @682 @78 -@684 := @681 @683 -@685 := @61 @616 -@686 := @60 @685 -@687 := LexLeanPreservation.Rust.fnFallible -@688 := #11 -@691 := @686 (@687 @688 @421) -@692 := @71 @616 -@693 := @692 @78 -@694 := @691 @693 -@695 := LexLeanPreservation.RunConv -@696 := #13 -@700 := @695 @696 @665 @82 @78 -@702 := @619 @65 @624 -@703 := Exists.{1} -@704 := LexLeanPreservation.Rust.ROut -@705 := @703 @704 -@706 := And -@707 := LexLeanPreservation.Rust.RealizesFn -@711 := @706 (@707 @421 @82 @4) -@712 := LexLeanPreservation.Rust.RCI -@714 := @712 #15 -@715 := LexLeanPreservation.Rust.fnIdent -@716 := @715 @696 -@723 := (hne : @702) -> @705 (fun (ro : @704) => @711 (@714 @716 @688 @4)) -@738 := {p : @23} -> - {c : @24} -> - {A : @25} -> - {f : @56} -> - {fn : @540} -> - {args : @58} -> - {env : @641} -> - {F : @616} -> - {o : @618} -> - (hB : @648) -> - (hfn : @664) -> (hwt : @672) -> (hbind : @684) -> (hF : @694) -> (hA : @700) -> @723 -@740 := LexLeanPreservation.Rust.compose @0 -@741 := @642 @0 -@746 := (n : @56) -> @741 @82 @75 @4 @65 -@747 := @657 @542 -@750 := @650 (@747 @65) @663 -@754 := @39 @421 @82 @78 @671 -@755 := @695 @0 -@758 := @755 @665 @82 @78 -@772 := {c : @24} -> - {A : @25} -> - {f : @56} -> - {fn : @540} -> - {args : @58} -> - {env : @641} -> - {F : @616} -> - {o : @618} -> - (hB : @746) -> - (hfn : @750) -> (hwt : @754) -> (hbind : @684) -> (hF : @694) -> (hA : @758) -> @723 -@773 := @740 @1 -@774 := @741 @1 -@778 := (n : @56) -> @774 @75 @4 @65 -@781 := @47 @82 @78 @671 -@782 := @687 @1 -@785 := @686 (@782 @421) @693 -@786 := @712 @1 -@796 := (hbind : @684) -> - (hF : @785) -> (hA : @758) -> (hne : @702) -> @705 (fun (ro : @704) => @711 (@786 @716 @688 @4)) -@806 := {A : @25} -> - {f : @56} -> - {fn : @540} -> - {args : @58} -> - {env : @641} -> {F : @616} -> {o : @618} -> (hB : @778) -> (hfn : @750) -> (hwt : @781) -> @796 -@807 := @773 @2 -@809 := @774 @2 @4 -@811 := (n : @56) -> @809 @65 -@812 := @53 @78 -@813 := @812 @671 -@822 := {f : @56} -> - {fn : @540} -> - {args : @58} -> - {env : @641} -> {F : @616} -> {o : @618} -> (hB : @811) -> (hfn : @750) -> (hwt : @813) -> @796 -@823 := @807 @9 -@825 := (n : @56) -> @809 @9 -@826 := @747 @9 -@827 := @650 @826 -@828 := @827 @663 -@829 := @782 @9 -@830 := @686 @829 -@831 := @830 @693 -@832 := @755 @9 -@834 := @832 @82 @78 -@836 := @786 (@715 @9) -@844 := (hF : @831) -> (hA : @834) -> (hne : @702) -> @705 (fun (ro : @704) => @711 (@836 @688 @4)) -@853 := {fn : @540} -> - {args : @58} -> - {env : @641} -> - {F : @616} -> {o : @618} -> (hB : @825) -> (hfn : @828) -> (hwt : @813) -> (hbind : @684) -> @844 -@854 := @823 @558 -@856 := @827 (@662 @558) -@857 := @670 @558 -@858 := @812 @857 -@860 := @675 (@676 @558) -@872 := {args : @58} -> - {env : @641} -> - {F : @616} -> - {o : @618} -> - (hB : @825) -> (hfn : @856) -> (hwt : @858) -> (hbind : @674 (@860 @65 @535) @683) -> @844 -@873 := @854 @526 -@874 := @395 @21 -@876 := @53 @874 @857 -@877 := @381 @21 -@881 := @674 (@860 @877 @535) @683 -@884 := @228 (@192 @421) @21 -@905 := {env : @641} -> - {F : @616} -> - {o : @618} -> - (hB : @825) -> - (hfn : @856) -> - (hwt : @876) -> - (hbind : @881) -> - (hF : @831) -> - (hA : @832 @884 @78) -> - (hne : @702) -> @705 (fun (ro : @704) => @711 (@836 (@228 (@192 #12) @21) @4)) -@906 := @873 @538 -@907 := @403 @21 -@909 := @53 @907 @857 -@917 := @674 (@860 @874 @535) (@682 (@536 (@533 @363) @535)) -@918 := @367 @21 -@937 := {F : @616} -> - {o : @618} -> - (hB : @825) -> - (hfn : @856) -> - (hwt : @909) -> - (hbind : @917) -> - (hF : @831) -> - (hA : @832 @918 @78) -> - (hne : @702) -> @705 (fun (ro : @704) => @711 (@836 (@228 (@192 @688) @21) @4)) -@938 := @906 @539 -@939 := @586 @857 -@947 := @674 (@860 @907 @535) (@682 (@536 (@533 @377) @535)) -@949 := @830 (@692 @539) -@951 := @832 @877 @78 -@952 := @707 @539 -@971 := {o : @618} -> - (hB : @825) -> - (hfn : @856) -> - (hwt : @939) -> - (hbind : @947) -> - (hF : @949) -> - (hA : @951) -> - (hne : @702) -> @705 (fun (ro : @704) => @706 (@952 @82 @4) (@836 (@228 (@192 @665) @21) @4)) -@972 := @938 @608 -@973 := @593 @857 -@981 := @674 (@860 @585 @535) (@682 (@536 (@533 @391) @535)) -@982 := @832 @874 -@983 := @607 @65 -@984 := @982 @983 -@985 := @607 @75 -@1003 := (hB : @825) -> - (hfn : @856) -> - (hwt : @973) -> - (hbind : @981) -> - (hF : @949) -> - (hA : @984) -> - (hne : @619 @985 @624) -> @705 (fun (ro : @704) => @706 (@952 (@607 @421) @4) (@836 @884 @4)) -@1004 := @972 @562 -@1005 := @601 @857 -@1013 := @674 (@860 @592 @535) (@682 (@536 (@533 @193) @535)) -@1014 := @832 @907 -@1015 := @607 @78 -@1033 := (hfn : @856) -> - (hwt : @1005) -> - (hbind : @1013) -> - (hF : @949) -> - (hA : @1014 @1015) -> - (hne : @619 @983 @624) -> @705 (fun (ro : @704) => @706 (@952 (@607 @82) @4) (@836 @918 @4)) -@1036 := @1004 (@186 @649 @826) -@1037 := @605 @857 -@1045 := @674 (@860 @600 @535) (@682 (@536 (@533 @582) @535)) -@1046 := @832 @585 -@1047 := @607 @87 -@1063 := (hwt : @1037) -> - (hbind : @1045) -> - (hF : @949) -> - (hA : @1046 @1047) -> - (hne : @619 @1015 @624) -> @705 (fun (ro : @704) => @706 (@952 @985 @4) (@836 @877 @4)) -@1064 := @1036 @604 -@1066 := @860 @526 @535 -@1069 := @674 @1066 (@682 @538) -@1070 := @832 @592 -@1071 := @607 @67 -@1086 := (hbind : @1069) -> - (hF : @949) -> - (hA : @1070 @1071) -> - (hne : @619 @1047 @624) -> @705 (fun (ro : @704) => @706 (@952 @983 @4) (@836 @874 @4)) -@1089 := @1064 (@186 @673 @1066) -@1090 := @832 @600 -@1091 := @607 @27 -@1105 := (hF : @949) -> - (hA : @1090 @1091) -> - (hne : @619 @1071 @624) -> @705 (fun (ro : @704) => @706 (@952 @1015 @4) (@836 @907 @4)) -@1108 := @1089 (@186 @685 @829) -@1122 := (hA : @832 @526 @608) -> - (hne : @619 @1091 @624) -> @705 (fun (ro : @704) => @706 (@952 @1047 @4) (@836 @585 @4)) -@1123 := @1108 @615 -@1134 := (hne : @619 @608 @624) -> @705 (fun (ro : @704) => @706 (@952 @1071 @4) (@836 @592 @4)) -@1135 := @1123 @636 -@1141 := @706 (@952 @1091 @4) (@836 @600 @4) -@1143 := @705 (fun (ro : @704) => @1141) -@1145 := @705 (fun (__e_ro : @704) => @1141) -@1149 := LexLeanPreservation.Rust.RepresentableL (@228 @198 @21) -@1150 := (__e_hrep : @1149) -> @1145 -@1151 := fun (__e_hrep : @1149) => @1135 -@1152 := (n : @56) -> @1150 -@1153 := fun (n : @56) => @1151 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R13/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R13/RustStd.lean deleted file mode 100644 index 16f9a1b2d..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R13/RustStd.lean +++ /dev/null @@ -1,42 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [{ constructors := [[], [(.adt 0), .nat, (.adt 0)]] }], functions := [ - { parameters := [0], types := [.nat], result := .nat, - body := (.call 1 [(.build (.adt 1) (.adt 0) [(.build (.adt 0) (.adt 0) []), (.var 0), (.build (.adt 1) (.adt 0) [(.build (.adt 0) (.adt 0) []), (.value .nat (.nat 5)), (.build (.adt 0) (.adt 0) [])])])]) }, - { parameters := [0], types := [(.adt 0)], result := .nat, - body := (.«match» .nat (.var 0) [(.arm (.adt 0) [] (.value .nat (.nat 0))), (.arm (.adt 1) [1, 2, 3] (.prim .natAdd [(.prim .natAdd [(.call 1 [(.var 1)]), (.var 2)]), (.call 1 [(.var 3)])]))]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.enum (.adt 0) [{ number := 0, fields := [] }, { number := 1, fields := [(.rc (.adt 0)), .nat, (.rc (.adt 0))] }]), - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible .nat) (.mk [] (.call (.function 1) [(.construct (.adt 0 1) [(.box (.construct (.adt 0 0) [])), (.copy (.generated .binding 0)), (.box (.construct (.adt 0 1) [(.box (.construct (.adt 0 0) [])), (.lit (.nat 5)), (.box (.construct (.adt 0 0) []))]))])] false))), - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 1)) [(.mk (.adt 0 0 []) (.mk [] (.succeed (.lit (.nat 0))))), (.mk (.adt 0 1 [(.bind (.generated .boxed 6)), (.bind (.generated .binding 2)), (.bind (.generated .boxed 7))]) (.mk [(.mk (.bind (.generated .binding 1)) none (.unbox (.generated .boxed 6))), (.mk (.bind (.generated .binding 3)) none (.unbox (.generated .boxed 7))), (.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.call (.function 1) [(.move (.generated .binding 1))] true)), (.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] true)))), (.mk (.bind (.generated .operand 5)) none (.call (.function 1) [(.move (.generated .binding 3))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false)))])))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 1) [(.construct (.adt 0 1) [(.box (.construct (.adt 0 0) [])), (.copy (.generated .binding 0)), (.box (.construct (.adt 0 1) [(.box (.construct (.adt 0 0) [])), (.lit (.nat 5)), (.box (.construct (.adt 0 0) []))]))])] false), [(0, .nat, (some 0))], rfl, rfl, - (Corr.callF (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.adt 0), .nat, (.adt 0)]) (mask := [true, false, true]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.adt 0), .nat, (.adt 0)]) (mask := [true, false, true]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))))) rfl)) (Corr.lNil))))) rfl)) (Corr.lNil))) rfl rfl rfl rfl)⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 1)) [(.mk (.adt 0 0 []) (.mk [] (.succeed (.lit (.nat 0))))), (.mk (.adt 0 1 [(.bind (.generated .boxed 6)), (.bind (.generated .binding 2)), (.bind (.generated .boxed 7))]) (.mk [(.mk (.bind (.generated .binding 1)) none (.unbox (.generated .boxed 6))), (.mk (.bind (.generated .binding 3)) none (.unbox (.generated .boxed 7))), (.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.call (.function 1) [(.move (.generated .binding 1))] true)), (.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] true)))), (.mk (.bind (.generated .operand 5)) none (.call (.function 1) [(.move (.generated .binding 3))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false)))]), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.adt 0)) (U := []) (view := false) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.lit (.nat 0)))) (Corr.mCons (Γ' := [(3, (.adt 0), (some 3)), (2, .nat, (some 2)), (1, (.adt 0), (some 1)), (0, (.adt 0), (some 0))]) (j := 1) (loads := [(.mk (.bind (.generated .binding 1)) none (.unbox (.generated .boxed 6))), (.mk (.bind (.generated .binding 3)) none (.unbox (.generated .boxed 7)))]) (lets := [(.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.call (.function 1) [(.move (.generated .binding 1))] true)), (.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] true)))), (.mk (.bind (.generated .operand 5)) none (.call (.function 1) [(.move (.generated .binding 3))] true))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false)) (Corr.mNil) rfl rfl rfl (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 2)) none (.call (.function 1) [(.move (.generated .binding 1))] true)), (.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl)))) rfl rfl rfl)⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | _ + 2 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R14/Compose/RustCore.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R14/Compose/RustCore.lex.tex deleted file mode 100644 index 2fbf028ee..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R14/Compose/RustCore.lex.tex +++ /dev/null @@ -1,776 +0,0 @@ -\begin{lexlean}{RustCore} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustCore} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.RustCore, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustCore.__wt_0 : @16 := @440 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustCore.__wt_0], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustCore.__wt_1 : @449 := @632 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustCore.__wt_1], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustCore.__wt_2 : @640 := @821 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustCore.__wt_2], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustCore.root : @1560 := @1561 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustCore.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.RustCore.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.RustCore.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.RustCore.flags -@3 := Coverage.Types.Point -@4 := #0 -@6 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.__enc_0 @4 -@7 := LexLeanPreservation.Rust.WT -@8 := LexLeanTarget.TargetSyntax.Ty.adt -@9 := 0 -@10 := @8 @9 -@11 := @7 @0 -@12 := @11 @1 -@13 := @12 @2 -@16 := (__s : @3) -> @13 @6 @10 -@17 := Coverage.Types.Point.x -@18 := @17 @4 -@19 := Coverage.Types.Point.y -@20 := @19 @4 -@21 := LexLeanTarget.TargetSyntax.Value.nat -@22 := @21 @18 -@23 := LexLeanTarget.TargetSyntax.Ty.nat -@24 := LexLeanTarget.TargetSyntax.Program -@25 := LexLeanPreservation.Rust.RCrate -@26 := LexLeanPreservation.Rust.Flags -@27 := Nat -@28 := #3 -@29 := @7 @28 -@30 := #2 -@31 := @29 @30 -@32 := #1 -@33 := @31 @32 -@34 := @21 @4 -@40 := {p : @24} -> {c : @25} -> {A : @26} -> (n : @27) -> @33 @34 @23 -@42 := LexLeanPreservation.Rust.wt_nat @0 -@49 := {c : @25} -> {A : @26} -> (n : @27) -> @11 @30 @32 @34 @23 -@50 := @42 @1 -@55 := {A : @26} -> (n : @27) -> @12 @32 @34 @23 -@56 := @50 @2 -@59 := (n : @27) -> @13 @34 @23 -@60 := @56 @18 -@62 := @13 @22 @23 -@63 := @21 @20 -@64 := @56 @20 -@66 := @13 @63 @23 -@67 := LexLeanTarget.TargetSyntax.Value -@68 := LexLeanTarget.TargetSyntax.Ty -@69 := List.nil.{0} -@70 := List.cons.{0} -@71 := @69 @67 -@72 := @70 @67 -@74 := @72 @63 @71 -@76 := @72 @22 @74 -@77 := @69 @68 -@78 := @70 @68 -@79 := @78 @23 -@80 := @79 @77 -@81 := @79 @80 -@82 := LexLeanPreservation.Rust.WTL -@90 := {p : @24} -> {c : @25} -> {A : @26} -> @82 @30 @32 @4 @71 @77 -@92 := LexLeanPreservation.Rust.wtl_nil @0 -@93 := @82 @0 -@99 := {c : @25} -> {A : @26} -> @93 @32 @4 @71 @77 -@100 := @92 @1 -@101 := @93 @1 -@105 := {A : @26} -> @101 @4 @71 @77 -@106 := @100 @2 -@107 := @101 @2 -@108 := @107 @71 -@109 := @108 @77 -@110 := List.{0} -@111 := @110 @67 -@112 := @110 @68 -@113 := #6 -@114 := @7 @113 -@115 := #5 -@116 := @114 @115 -@117 := #4 -@120 := @116 @117 @28 @30 -@121 := #7 -@126 := @82 @121 @113 @115 @30 @32 -@127 := #8 -@130 := @82 @127 @121 @113 -@132 := @72 @115 @28 -@133 := @130 @132 -@135 := @78 @117 @30 -@145 := {p : @24} -> - {c : @25} -> - {A : @26} -> - {v : @67} -> {t : @68} -> {vs : @111} -> {ts : @112} -> (h : @120) -> (hs : @126) -> @133 @135 -@147 := LexLeanPreservation.Rust.wtl_cons @0 -@151 := @11 @115 @117 @28 @30 -@155 := @93 @113 @115 @30 @32 -@167 := {c : @25} -> - {A : @26} -> - {v : @67} -> - {t : @68} -> {vs : @111} -> {ts : @112} -> (h : @151) -> (hs : @155) -> @93 @121 @113 @132 @135 -@168 := @147 @1 -@171 := @12 @117 @28 @30 -@174 := @101 @115 @30 @32 -@184 := {A : @26} -> - {v : @67} -> - {t : @68} -> {vs : @111} -> {ts : @112} -> (h : @171) -> (hs : @174) -> @101 @113 @132 @135 -@185 := @168 @2 -@187 := @13 @28 @30 -@189 := @107 @30 @32 -@197 := {v : @67} -> - {t : @68} -> {vs : @111} -> {ts : @112} -> (h : @187) -> (hs : @189) -> @107 @132 @135 -@198 := @185 @63 -@200 := @21 (@19 @28) -@213 := {t : @68} -> - {vs : @111} -> - {ts : @112} -> (h : @13 @200 @30) -> (hs : @189) -> @107 (@72 (@21 (@19 @115)) @28) @135 -@214 := @198 @23 -@216 := @21 (@19 @30) -@218 := @13 @216 @23 -@223 := @107 (@72 (@21 (@19 @117)) @28) -@224 := @79 @30 -@229 := {vs : @111} -> {ts : @112} -> (h : @218) -> (hs : @189) -> @223 @224 -@230 := @214 @71 -@232 := @21 (@19 @32) -@234 := @13 @232 @23 -@235 := @108 @32 -@237 := @72 @200 @71 -@242 := {ts : @112} -> (h : @234) -> (hs : @235) -> @107 @237 @224 -@243 := @230 @77 -@245 := @72 @216 @71 -@246 := @107 @245 -@249 := (h : @66) -> (hs : @109) -> @246 @80 -@250 := @243 @64 -@252 := @72 @232 @71 -@254 := @107 @252 @80 -@255 := (hs : @109) -> @254 -@256 := @250 @106 -@258 := @107 @74 @80 -@259 := @185 @22 -@261 := @21 (@17 @28) -@274 := {t : @68} -> - {vs : @111} -> - {ts : @112} -> (h : @13 @261 @30) -> (hs : @189) -> @107 (@72 (@21 (@17 @115)) @28) @135 -@275 := @259 @23 -@277 := @21 (@17 @30) -@289 := {vs : @111} -> - {ts : @112} -> (h : @13 @277 @23) -> (hs : @189) -> @107 (@72 (@21 (@17 @117)) @28) @224 -@290 := @275 @74 -@292 := @21 (@17 @32) -@294 := @13 @292 @23 -@295 := @246 @32 -@297 := @72 @261 @237 -@302 := {ts : @112} -> (h : @294) -> (hs : @295) -> @107 @297 @224 -@303 := @290 @80 -@305 := @72 @277 @245 -@306 := @107 @305 -@309 := (h : @62) -> (hs : @254) -> @306 @81 -@310 := @303 @60 -@312 := @72 @292 @252 -@314 := @107 @312 @81 -@315 := (hs : @258) -> @314 -@316 := @310 @256 -@318 := @107 @76 @81 -@319 := Eq.{1} -@320 := Option.{0} -@321 := @320 @112 -@322 := @319 @321 -@323 := LexLeanPreservation.Rust.adtFields -@327 := @322 (@323 @113 @28 @30) -@328 := Option.some.{0} -@329 := @328 @112 -@330 := @329 @4 -@331 := @327 @330 -@334 := @7 @127 @121 @113 -@335 := LexLeanTarget.TargetSyntax.Value.adt -@337 := @335 @117 @28 -@338 := @334 @337 -@339 := @8 @115 -@349 := {p : @24} -> - {c : @25} -> - {A : @26} -> - {i : @27} -> {k : @27} -> {fs : @111} -> {tys : @112} -> (h : @331) -> (hf : @126) -> @338 @339 -@351 := LexLeanPreservation.Rust.wt_adt @0 -@352 := @323 @0 -@356 := @322 (@352 @28 @30) @330 -@368 := {c : @25} -> - {A : @26} -> - {i : @27} -> - {k : @27} -> {fs : @111} -> {tys : @112} -> (h : @356) -> (hf : @155) -> @11 @121 @113 @337 @339 -@369 := @351 @1 -@379 := {A : @26} -> - {i : @27} -> - {k : @27} -> {fs : @111} -> {tys : @112} -> (h : @356) -> (hf : @174) -> @12 @113 @337 @339 -@380 := @369 @2 -@381 := @13 @337 -@388 := {i : @27} -> - {k : @27} -> {fs : @111} -> {tys : @112} -> (h : @356) -> (hf : @189) -> @381 @339 -@389 := @380 @9 -@390 := @352 @9 -@399 := {k : @27} -> - {fs : @111} -> {tys : @112} -> (h : @322 (@390 @30) @330) -> (hf : @189) -> @381 @10 -@400 := @389 @9 -@401 := @390 @9 -@402 := @322 @401 -@403 := @402 @330 -@404 := @335 @9 -@406 := @13 (@404 @28) -@411 := {fs : @111} -> {tys : @112} -> (h : @403) -> (hf : @189) -> @406 @10 -@412 := @400 @76 -@419 := {tys : @112} -> (h : @403) -> (hf : @306 @32) -> @13 (@404 @297) @10 -@420 := @412 @81 -@421 := @329 @81 -@427 := (h : @402 @421) -> (hf : @314) -> @13 (@404 @305) @10 -@428 := Eq.refl.{1} -@429 := @428 @321 -@431 := @420 (@429 @401) -@435 := (hf : @318) -> @13 (@404 @312) @10 -@436 := @431 @316 -@439 := @13 (@404 @76) @10 -@440 := fun (__s : @3) => @436 -@442 := Coverage.Types.Box @27 -@444 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.__enc_1 @4 -@445 := 1 -@446 := @8 @445 -@449 := (__s : @442) -> @13 @444 @446 -@451 := Coverage.Types.Box.content @27 -@452 := @451 @4 -@454 := Coverage.Types.Box.count @27 -@455 := @454 @4 -@456 := @21 @452 -@457 := @56 @452 -@459 := @13 @456 @23 -@460 := @21 @455 -@461 := @56 @455 -@463 := @13 @460 @23 -@465 := @72 @460 @71 -@467 := @72 @456 @465 -@468 := @185 @460 -@470 := @21 (@454 @28) -@483 := {t : @68} -> - {vs : @111} -> - {ts : @112} -> (h : @13 @470 @30) -> (hs : @189) -> @107 (@72 (@21 (@454 @115)) @28) @135 -@484 := @468 @23 -@486 := @21 (@454 @30) -@498 := {vs : @111} -> - {ts : @112} -> (h : @13 @486 @23) -> (hs : @189) -> @107 (@72 (@21 (@454 @117)) @28) @224 -@499 := @484 @71 -@501 := @21 (@454 @32) -@503 := @13 @501 @23 -@505 := @72 @470 @71 -@510 := {ts : @112} -> (h : @503) -> (hs : @235) -> @107 @505 @224 -@511 := @499 @77 -@513 := @72 @486 @71 -@514 := @107 @513 -@517 := (h : @463) -> (hs : @109) -> @514 @80 -@518 := @511 @461 -@520 := @72 @501 @71 -@522 := @107 @520 @80 -@523 := (hs : @109) -> @522 -@524 := @518 @106 -@526 := @107 @465 @80 -@527 := @185 @456 -@529 := @21 (@451 @28) -@542 := {t : @68} -> - {vs : @111} -> - {ts : @112} -> (h : @13 @529 @30) -> (hs : @189) -> @107 (@72 (@21 (@451 @115)) @28) @135 -@543 := @527 @23 -@545 := @21 (@451 @30) -@557 := {vs : @111} -> - {ts : @112} -> (h : @13 @545 @23) -> (hs : @189) -> @107 (@72 (@21 (@451 @117)) @28) @224 -@558 := @543 @465 -@560 := @21 (@451 @32) -@562 := @13 @560 @23 -@563 := @514 @32 -@565 := @72 @529 @505 -@570 := {ts : @112} -> (h : @562) -> (hs : @563) -> @107 @565 @224 -@571 := @558 @80 -@573 := @72 @545 @513 -@574 := @107 @573 -@577 := (h : @459) -> (hs : @522) -> @574 @81 -@578 := @571 @457 -@580 := @72 @560 @520 -@582 := @107 @580 @81 -@583 := (hs : @526) -> @582 -@584 := @578 @524 -@586 := @107 @467 @81 -@587 := @380 @445 -@588 := @352 @445 -@597 := {k : @27} -> - {fs : @111} -> {tys : @112} -> (h : @322 (@588 @30) @330) -> (hf : @189) -> @381 @446 -@598 := @587 @9 -@599 := @588 @9 -@600 := @322 @599 -@601 := @600 @330 -@606 := {fs : @111} -> {tys : @112} -> (h : @601) -> (hf : @189) -> @406 @446 -@607 := @598 @467 -@614 := {tys : @112} -> (h : @601) -> (hf : @574 @32) -> @13 (@404 @565) @446 -@615 := @607 @81 -@621 := (h : @600 @421) -> (hf : @582) -> @13 (@404 @573) @446 -@623 := @615 (@429 @599) -@627 := (hf : @586) -> @13 (@404 @580) @446 -@628 := @623 @584 -@631 := @13 (@404 @467) @446 -@632 := fun (__s : @442) => @628 -@633 := Coverage.Types.Weights -@635 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.__enc_2 @4 -@636 := 2 -@637 := @8 @636 -@640 := (__s : @633) -> @13 @635 @637 -@641 := Coverage.Types.Weights.base -@642 := @641 @4 -@643 := Coverage.Types.Weights.scale -@644 := @643 @4 -@645 := @21 @642 -@646 := @56 @642 -@648 := @13 @645 @23 -@649 := @21 @644 -@650 := @56 @644 -@652 := @13 @649 @23 -@654 := @72 @649 @71 -@656 := @72 @645 @654 -@657 := @185 @649 -@659 := @21 (@643 @28) -@672 := {t : @68} -> - {vs : @111} -> - {ts : @112} -> (h : @13 @659 @30) -> (hs : @189) -> @107 (@72 (@21 (@643 @115)) @28) @135 -@673 := @657 @23 -@675 := @21 (@643 @30) -@687 := {vs : @111} -> - {ts : @112} -> (h : @13 @675 @23) -> (hs : @189) -> @107 (@72 (@21 (@643 @117)) @28) @224 -@688 := @673 @71 -@690 := @21 (@643 @32) -@692 := @13 @690 @23 -@694 := @72 @659 @71 -@699 := {ts : @112} -> (h : @692) -> (hs : @235) -> @107 @694 @224 -@700 := @688 @77 -@702 := @72 @675 @71 -@703 := @107 @702 -@706 := (h : @652) -> (hs : @109) -> @703 @80 -@707 := @700 @650 -@709 := @72 @690 @71 -@711 := @107 @709 @80 -@712 := (hs : @109) -> @711 -@713 := @707 @106 -@715 := @107 @654 @80 -@716 := @185 @645 -@718 := @21 (@641 @28) -@731 := {t : @68} -> - {vs : @111} -> - {ts : @112} -> (h : @13 @718 @30) -> (hs : @189) -> @107 (@72 (@21 (@641 @115)) @28) @135 -@732 := @716 @23 -@734 := @21 (@641 @30) -@746 := {vs : @111} -> - {ts : @112} -> (h : @13 @734 @23) -> (hs : @189) -> @107 (@72 (@21 (@641 @117)) @28) @224 -@747 := @732 @654 -@749 := @21 (@641 @32) -@751 := @13 @749 @23 -@752 := @703 @32 -@754 := @72 @718 @694 -@759 := {ts : @112} -> (h : @751) -> (hs : @752) -> @107 @754 @224 -@760 := @747 @80 -@762 := @72 @734 @702 -@763 := @107 @762 -@766 := (h : @648) -> (hs : @711) -> @763 @81 -@767 := @760 @646 -@769 := @72 @749 @709 -@771 := @107 @769 @81 -@772 := (hs : @715) -> @771 -@773 := @767 @713 -@775 := @107 @656 @81 -@776 := @380 @636 -@777 := @352 @636 -@786 := {k : @27} -> - {fs : @111} -> {tys : @112} -> (h : @322 (@777 @30) @330) -> (hf : @189) -> @381 @637 -@787 := @776 @9 -@788 := @777 @9 -@789 := @322 @788 -@790 := @789 @330 -@795 := {fs : @111} -> {tys : @112} -> (h : @790) -> (hf : @189) -> @406 @637 -@796 := @787 @656 -@803 := {tys : @112} -> (h : @790) -> (hf : @763 @32) -> @13 (@404 @754) @637 -@804 := @796 @81 -@810 := (h : @789 @421) -> (hf : @771) -> @13 (@404 @762) @637 -@812 := @804 (@429 @788) -@816 := (hf : @775) -> @13 (@404 @769) @637 -@817 := @812 @773 -@820 := @13 (@404 @656) @637 -@821 := fun (__s : @633) => @817 -@822 := @21 @30 -@823 := @56 @30 -@825 := @13 @822 @23 -@826 := @21 @32 -@827 := @56 @32 -@829 := @13 @826 @23 -@830 := @72 @826 -@831 := @830 @71 -@832 := @72 @822 -@833 := @832 @831 -@836 := Prod.{0, 0} @27 @67 -@839 := Prod.mk.{0, 0} @27 @67 -@840 := @839 @445 -@841 := @840 @826 -@842 := @839 @9 -@843 := @842 @822 -@844 := @69 @836 -@845 := @70 @836 -@847 := @845 @843 @844 -@849 := @845 @841 @847 -@850 := Bool.true -@851 := LexLeanTarget.TargetSyntax.Function -@852 := LexLeanTarget.TargetSyntax.Program.functions -@853 := @852 @0 -@854 := @69 @27 -@855 := LexLeanTarget.TargetSyntax.Ty.unit -@856 := LexLeanTarget.TargetSyntax.Value.unit -@859 := LexLeanTarget.TargetSyntax.Expr.value @855 @856 -@864 := LexLeanTarget.TargetSyntax.Function.mk @854 @77 @855 @859 -@869 := List.getD.{0} @851 @853 @9 @864 -@873 := fun (__e_n : @27) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.RustCore.root @4 @9 -@874 := @185 @826 -@875 := @21 @117 -@876 := @13 @875 -@877 := @876 @30 -@878 := @21 @113 -@879 := @72 @878 -@881 := @107 (@879 @28) -@887 := {t : @68} -> {vs : @111} -> {ts : @112} -> (h : @877) -> (hs : @189) -> @881 @135 -@888 := @874 @23 -@889 := @21 @28 -@891 := @13 @889 @23 -@892 := @21 @115 -@893 := @72 @892 -@900 := {vs : @111} -> {ts : @112} -> (h : @891) -> (hs : @189) -> @107 (@893 @28) @224 -@901 := @888 @71 -@902 := @72 @875 -@903 := @902 @71 -@908 := {ts : @112} -> (h : @825) -> (hs : @235) -> @107 @903 @224 -@909 := @901 @77 -@910 := @72 @889 -@911 := @910 @71 -@912 := @107 @911 -@915 := (h : @829) -> (hs : @109) -> @912 @80 -@916 := @909 @827 -@917 := @832 @71 -@919 := @107 @917 @80 -@920 := (hs : @109) -> @919 -@921 := @916 @106 -@923 := @107 @831 @80 -@924 := @185 @822 -@926 := @13 @892 @30 -@927 := @21 @121 -@928 := @72 @927 -@936 := {t : @68} -> {vs : @111} -> {ts : @112} -> (h : @926) -> (hs : @189) -> @107 (@928 @28) @135 -@937 := @924 @23 -@943 := {vs : @111} -> {ts : @112} -> (h : @876 @23) -> (hs : @189) -> @881 @224 -@944 := @937 @831 -@945 := @912 @32 -@946 := @893 @903 -@947 := @107 @946 -@951 := {ts : @112} -> (h : @891) -> (hs : @945) -> @947 @224 -@952 := @944 @80 -@953 := @902 @911 -@954 := @107 @953 -@957 := (h : @825) -> (hs : @919) -> @954 @81 -@958 := @952 @823 -@959 := @910 @917 -@960 := @107 @959 -@962 := (hs : @923) -> @960 @81 -@963 := @958 @921 -@964 := @107 @833 -@965 := @964 @81 -@966 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.denote -@968 := @966 @30 @32 -@969 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.__fits_0 -@971 := @969 @30 @32 -@974 := Coverage.Main.records @30 @32 -@980 := LexLeanPreservation.encPair @27 @27 @21 @21 @974 -@983 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.root @30 @32 -@984 := Bool -@985 := Ne.{1} -@986 := LexLeanPreservation.Obs -@987 := @985 @986 -@988 := LexLeanPreservation.Rel -@991 := @987 (@988 @32 @4) -@992 := LexLeanPreservation.Obs.stuck -@995 := (f : @984) -> (v : @67) -> @991 @992 -@997 := LexLeanPreservation.Rust.rel_ne_stuck @971 -@1004 := (v : @67) -> @987 (@988 (@969 @28 @30) @4) @992 -@1005 := @997 @980 -@1009 := @987 (@988 @971 @980) @992 -@1010 := @110 @836 -@1011 := LexLeanPreservation.Rust.FunSem -@1012 := #9 -@1018 := (n : @27) -> @1011 @1012 @127 @121 @4 @113 -@1019 := @320 @851 -@1020 := @319 @1019 -@1027 := LexLeanRuntime.index (@110 @851) @851 (LexLeanRuntime.instIndexableList @851) -@1031 := @1020 (@1027 (@852 @1012) @113) -@1032 := @328 @851 -@1033 := @1032 @115 -@1034 := @1031 @1033 -@1035 := #10 -@1039 := @82 @1035 @1012 @127 @115 -@1040 := LexLeanTarget.TargetSyntax.Function.types -@1041 := @1040 @113 -@1042 := @1039 @1041 -@1043 := @320 @1010 -@1044 := @319 @1043 -@1045 := LexLeanTarget.TargetSemantics.bindAll -@1046 := LexLeanTarget.TargetSyntax.Function.parameters -@1051 := @1044 (@1045 (@1046 @121) @113 @844) -@1052 := @328 @1010 -@1053 := @1052 @115 -@1054 := @1051 @1053 -@1055 := @320 @984 -@1056 := @319 @1055 -@1057 := LexLeanPreservation.Rust.fnFallible -@1058 := #11 -@1061 := @1056 (@1057 @1058 @1012) -@1062 := @328 @984 -@1063 := @1062 @115 -@1064 := @1061 @1063 -@1065 := LexLeanPreservation.RunConv -@1066 := #13 -@1070 := @1065 @1066 @1035 @127 @115 -@1072 := @987 @113 @992 -@1073 := Exists.{1} -@1074 := LexLeanPreservation.Rust.ROut -@1075 := @1073 @1074 -@1076 := And -@1077 := LexLeanPreservation.Rust.RealizesFn -@1081 := @1076 (@1077 @1012 @127 @4) -@1082 := LexLeanPreservation.Rust.RCI -@1084 := @1082 #15 -@1085 := LexLeanPreservation.Rust.fnIdent -@1086 := @1085 @1066 -@1093 := (hne : @1072) -> @1075 (fun (ro : @1074) => @1081 (@1084 @1086 @1058 @4)) -@1108 := {p : @24} -> - {c : @25} -> - {A : @26} -> - {f : @27} -> - {fn : @851} -> - {args : @111} -> - {env : @1010} -> - {F : @984} -> - {o : @986} -> - (hB : @1018) -> - (hfn : @1034) -> (hwt : @1042) -> (hbind : @1054) -> (hF : @1064) -> (hA : @1070) -> @1093 -@1110 := LexLeanPreservation.Rust.compose @0 -@1111 := @1011 @0 -@1116 := (n : @27) -> @1111 @127 @121 @4 @113 -@1117 := @1027 @853 -@1120 := @1020 (@1117 @113) @1033 -@1124 := @93 @1012 @127 @115 @1041 -@1125 := @1065 @0 -@1128 := @1125 @1035 @127 @115 -@1142 := {c : @25} -> - {A : @26} -> - {f : @27} -> - {fn : @851} -> - {args : @111} -> - {env : @1010} -> - {F : @984} -> - {o : @986} -> - (hB : @1116) -> - (hfn : @1120) -> (hwt : @1124) -> (hbind : @1054) -> (hF : @1064) -> (hA : @1128) -> @1093 -@1143 := @1110 @1 -@1144 := @1111 @1 -@1148 := (n : @27) -> @1144 @121 @4 @113 -@1151 := @101 @127 @115 @1041 -@1152 := @1057 @1 -@1155 := @1056 (@1152 @1012) @1063 -@1156 := @1082 @1 -@1166 := (hbind : @1054) -> - (hF : @1155) -> - (hA : @1128) -> (hne : @1072) -> @1075 (fun (ro : @1074) => @1081 (@1156 @1086 @1058 @4)) -@1176 := {A : @26} -> - {f : @27} -> - {fn : @851} -> - {args : @111} -> - {env : @1010} -> - {F : @984} -> {o : @986} -> (hB : @1148) -> (hfn : @1120) -> (hwt : @1151) -> @1166 -@1177 := @1143 @2 -@1179 := @1144 @2 @4 -@1181 := (n : @27) -> @1179 @113 -@1182 := @107 @115 -@1183 := @1182 @1041 -@1192 := {f : @27} -> - {fn : @851} -> - {args : @111} -> - {env : @1010} -> - {F : @984} -> {o : @986} -> (hB : @1181) -> (hfn : @1120) -> (hwt : @1183) -> @1166 -@1193 := @1177 @9 -@1195 := (n : @27) -> @1179 @9 -@1196 := @1117 @9 -@1197 := @1020 @1196 -@1198 := @1197 @1033 -@1199 := @1152 @9 -@1200 := @1056 @1199 -@1201 := @1200 @1063 -@1202 := @1125 @9 -@1204 := @1202 @127 @115 -@1206 := @1156 (@1085 @9) -@1214 := (hF : @1201) -> - (hA : @1204) -> (hne : @1072) -> @1075 (fun (ro : @1074) => @1081 (@1206 @1058 @4)) -@1223 := {fn : @851} -> - {args : @111} -> - {env : @1010} -> - {F : @984} -> - {o : @986} -> (hB : @1195) -> (hfn : @1198) -> (hwt : @1183) -> (hbind : @1054) -> @1214 -@1224 := @1193 @869 -@1226 := @1197 (@1032 @869) -@1227 := @1040 @869 -@1228 := @1182 @1227 -@1230 := @1045 (@1046 @869) -@1242 := {args : @111} -> - {env : @1010} -> - {F : @984} -> - {o : @986} -> - (hB : @1195) -> (hfn : @1226) -> (hwt : @1228) -> (hbind : @1044 (@1230 @113 @844) @1053) -> @1214 -@1243 := @1224 @833 -@1245 := @928 (@879 @71) -@1247 := @107 @1245 @1227 -@1249 := @72 (@21 @127) -@1251 := @1249 (@928 @71) -@1255 := @1044 (@1230 @1251 @844) @1053 -@1257 := @72 (@21 @1035) -@1259 := @72 (@21 @1012) -@1261 := @1257 (@1259 @71) -@1263 := @1202 @1261 @115 -@1265 := @72 (@21 @1066) -@1268 := @72 (@21 #12) -@1285 := {env : @1010} -> - {F : @984} -> - {o : @986} -> - (hB : @1195) -> - (hfn : @1226) -> - (hwt : @1247) -> - (hbind : @1255) -> - (hF : @1201) -> - (hA : @1263) -> (hne : @1072) -> @1075 (fun (ro : @1074) => @1081 (@1206 (@1265 (@1268 @71)) @4)) -@1286 := @1243 @849 -@1288 := @879 (@893 @71) -@1290 := @107 @1288 @1227 -@1301 := @1044 (@1230 @1245 @844) (@1052 (@845 (@840 @878) (@845 (@842 @927) @844))) -@1303 := @1259 (@1249 @71) -@1305 := @1202 @1303 @115 -@1307 := @72 (@21 @1058) -@1323 := {F : @984} -> - {o : @986} -> - (hB : @1195) -> - (hfn : @1226) -> - (hwt : @1290) -> - (hbind : @1301) -> - (hF : @1201) -> - (hA : @1305) -> (hne : @1072) -> @1075 (fun (ro : @1074) => @1081 (@1206 (@1268 (@1307 @71)) @4)) -@1324 := @1286 @850 -@1325 := @947 @1227 -@1336 := @1044 (@1230 @1288 @844) (@1052 (@845 (@840 @892) (@845 (@842 @878) @844))) -@1338 := @1200 (@1062 @850) -@1340 := @1202 @1251 @115 -@1341 := @1077 @850 -@1359 := {o : @986} -> - (hB : @1195) -> - (hfn : @1226) -> - (hwt : @1325) -> - (hbind : @1336) -> - (hF : @1338) -> - (hA : @1340) -> - (hne : @1072) -> @1075 (fun (ro : @1074) => @1076 (@1341 @127 @4) (@1206 (@1307 (@1257 @71)) @4)) -@1360 := @1324 @968 -@1361 := @954 @1227 -@1372 := @1044 (@1230 @946 @844) (@1052 (@845 (@840 @875) (@845 (@842 @892) @844))) -@1373 := @1202 @1245 -@1375 := @966 @121 @113 -@1376 := @1373 @1375 -@1378 := @966 @127 @121 -@1397 := (hB : @1195) -> - (hfn : @1226) -> - (hwt : @1361) -> - (hbind : @1372) -> - (hF : @1338) -> - (hA : @1376) -> - (hne : @987 @1378 @992) -> - @1075 (fun (ro : @1074) => @1076 (@1341 (@966 @1035 @1012) @4) (@1206 @1261 @4)) -@1398 := @1360 @873 -@1399 := @960 @1227 -@1410 := @1044 (@1230 @953 @844) (@1052 (@845 (@840 @889) (@845 (@842 @875) @844))) -@1411 := @1202 @1288 -@1413 := @966 @113 @115 -@1432 := (hfn : @1226) -> - (hwt : @1399) -> - (hbind : @1410) -> - (hF : @1338) -> - (hA : @1411 @1413) -> - (hne : @987 @1375 @992) -> - @1075 (fun (ro : @1074) => @1076 (@1341 (@966 @1012 @127) @4) (@1206 @1303 @4)) -@1435 := @1398 (@428 @1019 @1196) -@1436 := @964 @1227 -@1447 := @1044 (@1230 @959 @844) (@1052 (@845 (@840 @822) (@845 (@842 @889) @844))) -@1448 := @1202 @946 -@1450 := @966 @115 @117 -@1466 := (hwt : @1436) -> - (hbind : @1447) -> - (hF : @1338) -> - (hA : @1448 @1450) -> - (hne : @987 @1413 @992) -> @1075 (fun (ro : @1074) => @1076 (@1341 @1378 @4) (@1206 @1251 @4)) -@1467 := @1435 @963 -@1469 := @1230 @833 @844 -@1472 := @1044 @1469 (@1052 @849) -@1473 := @1202 @953 -@1475 := @966 @117 @28 -@1490 := (hbind : @1472) -> - (hF : @1338) -> - (hA : @1473 @1475) -> - (hne : @987 @1450 @992) -> @1075 (fun (ro : @1074) => @1076 (@1341 @1375 @4) (@1206 @1245 @4)) -@1493 := @1467 (@428 @1043 @1469) -@1494 := @1202 @959 -@1496 := @966 @28 @30 -@1510 := (hF : @1338) -> - (hA : @1494 @1496) -> - (hne : @987 @1475 @992) -> @1075 (fun (ro : @1074) => @1076 (@1341 @1413 @4) (@1206 @1288 @4)) -@1513 := @1493 (@428 @1055 @1199) -@1527 := (hA : @1202 @833 @968) -> - (hne : @987 @1496 @992) -> @1075 (fun (ro : @1074) => @1076 (@1341 @1450 @4) (@1206 @946 @4)) -@1528 := @1513 @983 -@1539 := (hne : @987 @968 @992) -> - @1075 (fun (ro : @1074) => @1076 (@1341 @1475 @4) (@1206 @953 @4)) -@1540 := @1528 @1005 -@1546 := @1076 (@1341 @1496 @4) (@1206 @959 @4) -@1548 := @1075 (fun (ro : @1074) => @1546) -@1550 := @1075 (fun (__e_ro : @1074) => @1546) -@1555 := LexLeanPreservation.Rust.RepresentableL (@830 (@72 @34 @71)) -@1556 := (__e_hrep : @1555) -> @1550 -@1557 := fun (__e_hrep : @1555) => @1540 -@1558 := (b : @27) -> @1556 -@1559 := fun (b : @27) => @1557 -@1560 := (a : @27) -> @1558 -@1561 := fun (a : @27) => @1559 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R14/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R14/Compose/RustStd.lex.tex deleted file mode 100644 index 2fcbc374c..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R14/Compose/RustStd.lex.tex +++ /dev/null @@ -1,776 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustStd.__wt_0 : @16 := @440 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustStd.__wt_0], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustStd.__wt_1 : @449 := @632 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustStd.__wt_1], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustStd.__wt_2 : @640 := @821 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustStd.__wt_2], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustStd.root : @1560 := @1561 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.RustStd.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.RustStd.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.RustStd.flags -@3 := Coverage.Types.Point -@4 := #0 -@6 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.__enc_0 @4 -@7 := LexLeanPreservation.Rust.WT -@8 := LexLeanTarget.TargetSyntax.Ty.adt -@9 := 0 -@10 := @8 @9 -@11 := @7 @0 -@12 := @11 @1 -@13 := @12 @2 -@16 := (__s : @3) -> @13 @6 @10 -@17 := Coverage.Types.Point.x -@18 := @17 @4 -@19 := Coverage.Types.Point.y -@20 := @19 @4 -@21 := LexLeanTarget.TargetSyntax.Value.nat -@22 := @21 @18 -@23 := LexLeanTarget.TargetSyntax.Ty.nat -@24 := LexLeanTarget.TargetSyntax.Program -@25 := LexLeanPreservation.Rust.RCrate -@26 := LexLeanPreservation.Rust.Flags -@27 := Nat -@28 := #3 -@29 := @7 @28 -@30 := #2 -@31 := @29 @30 -@32 := #1 -@33 := @31 @32 -@34 := @21 @4 -@40 := {p : @24} -> {c : @25} -> {A : @26} -> (n : @27) -> @33 @34 @23 -@42 := LexLeanPreservation.Rust.wt_nat @0 -@49 := {c : @25} -> {A : @26} -> (n : @27) -> @11 @30 @32 @34 @23 -@50 := @42 @1 -@55 := {A : @26} -> (n : @27) -> @12 @32 @34 @23 -@56 := @50 @2 -@59 := (n : @27) -> @13 @34 @23 -@60 := @56 @18 -@62 := @13 @22 @23 -@63 := @21 @20 -@64 := @56 @20 -@66 := @13 @63 @23 -@67 := LexLeanTarget.TargetSyntax.Value -@68 := LexLeanTarget.TargetSyntax.Ty -@69 := List.nil.{0} -@70 := List.cons.{0} -@71 := @69 @67 -@72 := @70 @67 -@74 := @72 @63 @71 -@76 := @72 @22 @74 -@77 := @69 @68 -@78 := @70 @68 -@79 := @78 @23 -@80 := @79 @77 -@81 := @79 @80 -@82 := LexLeanPreservation.Rust.WTL -@90 := {p : @24} -> {c : @25} -> {A : @26} -> @82 @30 @32 @4 @71 @77 -@92 := LexLeanPreservation.Rust.wtl_nil @0 -@93 := @82 @0 -@99 := {c : @25} -> {A : @26} -> @93 @32 @4 @71 @77 -@100 := @92 @1 -@101 := @93 @1 -@105 := {A : @26} -> @101 @4 @71 @77 -@106 := @100 @2 -@107 := @101 @2 -@108 := @107 @71 -@109 := @108 @77 -@110 := List.{0} -@111 := @110 @67 -@112 := @110 @68 -@113 := #6 -@114 := @7 @113 -@115 := #5 -@116 := @114 @115 -@117 := #4 -@120 := @116 @117 @28 @30 -@121 := #7 -@126 := @82 @121 @113 @115 @30 @32 -@127 := #8 -@130 := @82 @127 @121 @113 -@132 := @72 @115 @28 -@133 := @130 @132 -@135 := @78 @117 @30 -@145 := {p : @24} -> - {c : @25} -> - {A : @26} -> - {v : @67} -> {t : @68} -> {vs : @111} -> {ts : @112} -> (h : @120) -> (hs : @126) -> @133 @135 -@147 := LexLeanPreservation.Rust.wtl_cons @0 -@151 := @11 @115 @117 @28 @30 -@155 := @93 @113 @115 @30 @32 -@167 := {c : @25} -> - {A : @26} -> - {v : @67} -> - {t : @68} -> {vs : @111} -> {ts : @112} -> (h : @151) -> (hs : @155) -> @93 @121 @113 @132 @135 -@168 := @147 @1 -@171 := @12 @117 @28 @30 -@174 := @101 @115 @30 @32 -@184 := {A : @26} -> - {v : @67} -> - {t : @68} -> {vs : @111} -> {ts : @112} -> (h : @171) -> (hs : @174) -> @101 @113 @132 @135 -@185 := @168 @2 -@187 := @13 @28 @30 -@189 := @107 @30 @32 -@197 := {v : @67} -> - {t : @68} -> {vs : @111} -> {ts : @112} -> (h : @187) -> (hs : @189) -> @107 @132 @135 -@198 := @185 @63 -@200 := @21 (@19 @28) -@213 := {t : @68} -> - {vs : @111} -> - {ts : @112} -> (h : @13 @200 @30) -> (hs : @189) -> @107 (@72 (@21 (@19 @115)) @28) @135 -@214 := @198 @23 -@216 := @21 (@19 @30) -@218 := @13 @216 @23 -@223 := @107 (@72 (@21 (@19 @117)) @28) -@224 := @79 @30 -@229 := {vs : @111} -> {ts : @112} -> (h : @218) -> (hs : @189) -> @223 @224 -@230 := @214 @71 -@232 := @21 (@19 @32) -@234 := @13 @232 @23 -@235 := @108 @32 -@237 := @72 @200 @71 -@242 := {ts : @112} -> (h : @234) -> (hs : @235) -> @107 @237 @224 -@243 := @230 @77 -@245 := @72 @216 @71 -@246 := @107 @245 -@249 := (h : @66) -> (hs : @109) -> @246 @80 -@250 := @243 @64 -@252 := @72 @232 @71 -@254 := @107 @252 @80 -@255 := (hs : @109) -> @254 -@256 := @250 @106 -@258 := @107 @74 @80 -@259 := @185 @22 -@261 := @21 (@17 @28) -@274 := {t : @68} -> - {vs : @111} -> - {ts : @112} -> (h : @13 @261 @30) -> (hs : @189) -> @107 (@72 (@21 (@17 @115)) @28) @135 -@275 := @259 @23 -@277 := @21 (@17 @30) -@289 := {vs : @111} -> - {ts : @112} -> (h : @13 @277 @23) -> (hs : @189) -> @107 (@72 (@21 (@17 @117)) @28) @224 -@290 := @275 @74 -@292 := @21 (@17 @32) -@294 := @13 @292 @23 -@295 := @246 @32 -@297 := @72 @261 @237 -@302 := {ts : @112} -> (h : @294) -> (hs : @295) -> @107 @297 @224 -@303 := @290 @80 -@305 := @72 @277 @245 -@306 := @107 @305 -@309 := (h : @62) -> (hs : @254) -> @306 @81 -@310 := @303 @60 -@312 := @72 @292 @252 -@314 := @107 @312 @81 -@315 := (hs : @258) -> @314 -@316 := @310 @256 -@318 := @107 @76 @81 -@319 := Eq.{1} -@320 := Option.{0} -@321 := @320 @112 -@322 := @319 @321 -@323 := LexLeanPreservation.Rust.adtFields -@327 := @322 (@323 @113 @28 @30) -@328 := Option.some.{0} -@329 := @328 @112 -@330 := @329 @4 -@331 := @327 @330 -@334 := @7 @127 @121 @113 -@335 := LexLeanTarget.TargetSyntax.Value.adt -@337 := @335 @117 @28 -@338 := @334 @337 -@339 := @8 @115 -@349 := {p : @24} -> - {c : @25} -> - {A : @26} -> - {i : @27} -> {k : @27} -> {fs : @111} -> {tys : @112} -> (h : @331) -> (hf : @126) -> @338 @339 -@351 := LexLeanPreservation.Rust.wt_adt @0 -@352 := @323 @0 -@356 := @322 (@352 @28 @30) @330 -@368 := {c : @25} -> - {A : @26} -> - {i : @27} -> - {k : @27} -> {fs : @111} -> {tys : @112} -> (h : @356) -> (hf : @155) -> @11 @121 @113 @337 @339 -@369 := @351 @1 -@379 := {A : @26} -> - {i : @27} -> - {k : @27} -> {fs : @111} -> {tys : @112} -> (h : @356) -> (hf : @174) -> @12 @113 @337 @339 -@380 := @369 @2 -@381 := @13 @337 -@388 := {i : @27} -> - {k : @27} -> {fs : @111} -> {tys : @112} -> (h : @356) -> (hf : @189) -> @381 @339 -@389 := @380 @9 -@390 := @352 @9 -@399 := {k : @27} -> - {fs : @111} -> {tys : @112} -> (h : @322 (@390 @30) @330) -> (hf : @189) -> @381 @10 -@400 := @389 @9 -@401 := @390 @9 -@402 := @322 @401 -@403 := @402 @330 -@404 := @335 @9 -@406 := @13 (@404 @28) -@411 := {fs : @111} -> {tys : @112} -> (h : @403) -> (hf : @189) -> @406 @10 -@412 := @400 @76 -@419 := {tys : @112} -> (h : @403) -> (hf : @306 @32) -> @13 (@404 @297) @10 -@420 := @412 @81 -@421 := @329 @81 -@427 := (h : @402 @421) -> (hf : @314) -> @13 (@404 @305) @10 -@428 := Eq.refl.{1} -@429 := @428 @321 -@431 := @420 (@429 @401) -@435 := (hf : @318) -> @13 (@404 @312) @10 -@436 := @431 @316 -@439 := @13 (@404 @76) @10 -@440 := fun (__s : @3) => @436 -@442 := Coverage.Types.Box @27 -@444 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.__enc_1 @4 -@445 := 1 -@446 := @8 @445 -@449 := (__s : @442) -> @13 @444 @446 -@451 := Coverage.Types.Box.content @27 -@452 := @451 @4 -@454 := Coverage.Types.Box.count @27 -@455 := @454 @4 -@456 := @21 @452 -@457 := @56 @452 -@459 := @13 @456 @23 -@460 := @21 @455 -@461 := @56 @455 -@463 := @13 @460 @23 -@465 := @72 @460 @71 -@467 := @72 @456 @465 -@468 := @185 @460 -@470 := @21 (@454 @28) -@483 := {t : @68} -> - {vs : @111} -> - {ts : @112} -> (h : @13 @470 @30) -> (hs : @189) -> @107 (@72 (@21 (@454 @115)) @28) @135 -@484 := @468 @23 -@486 := @21 (@454 @30) -@498 := {vs : @111} -> - {ts : @112} -> (h : @13 @486 @23) -> (hs : @189) -> @107 (@72 (@21 (@454 @117)) @28) @224 -@499 := @484 @71 -@501 := @21 (@454 @32) -@503 := @13 @501 @23 -@505 := @72 @470 @71 -@510 := {ts : @112} -> (h : @503) -> (hs : @235) -> @107 @505 @224 -@511 := @499 @77 -@513 := @72 @486 @71 -@514 := @107 @513 -@517 := (h : @463) -> (hs : @109) -> @514 @80 -@518 := @511 @461 -@520 := @72 @501 @71 -@522 := @107 @520 @80 -@523 := (hs : @109) -> @522 -@524 := @518 @106 -@526 := @107 @465 @80 -@527 := @185 @456 -@529 := @21 (@451 @28) -@542 := {t : @68} -> - {vs : @111} -> - {ts : @112} -> (h : @13 @529 @30) -> (hs : @189) -> @107 (@72 (@21 (@451 @115)) @28) @135 -@543 := @527 @23 -@545 := @21 (@451 @30) -@557 := {vs : @111} -> - {ts : @112} -> (h : @13 @545 @23) -> (hs : @189) -> @107 (@72 (@21 (@451 @117)) @28) @224 -@558 := @543 @465 -@560 := @21 (@451 @32) -@562 := @13 @560 @23 -@563 := @514 @32 -@565 := @72 @529 @505 -@570 := {ts : @112} -> (h : @562) -> (hs : @563) -> @107 @565 @224 -@571 := @558 @80 -@573 := @72 @545 @513 -@574 := @107 @573 -@577 := (h : @459) -> (hs : @522) -> @574 @81 -@578 := @571 @457 -@580 := @72 @560 @520 -@582 := @107 @580 @81 -@583 := (hs : @526) -> @582 -@584 := @578 @524 -@586 := @107 @467 @81 -@587 := @380 @445 -@588 := @352 @445 -@597 := {k : @27} -> - {fs : @111} -> {tys : @112} -> (h : @322 (@588 @30) @330) -> (hf : @189) -> @381 @446 -@598 := @587 @9 -@599 := @588 @9 -@600 := @322 @599 -@601 := @600 @330 -@606 := {fs : @111} -> {tys : @112} -> (h : @601) -> (hf : @189) -> @406 @446 -@607 := @598 @467 -@614 := {tys : @112} -> (h : @601) -> (hf : @574 @32) -> @13 (@404 @565) @446 -@615 := @607 @81 -@621 := (h : @600 @421) -> (hf : @582) -> @13 (@404 @573) @446 -@623 := @615 (@429 @599) -@627 := (hf : @586) -> @13 (@404 @580) @446 -@628 := @623 @584 -@631 := @13 (@404 @467) @446 -@632 := fun (__s : @442) => @628 -@633 := Coverage.Types.Weights -@635 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.__enc_2 @4 -@636 := 2 -@637 := @8 @636 -@640 := (__s : @633) -> @13 @635 @637 -@641 := Coverage.Types.Weights.base -@642 := @641 @4 -@643 := Coverage.Types.Weights.scale -@644 := @643 @4 -@645 := @21 @642 -@646 := @56 @642 -@648 := @13 @645 @23 -@649 := @21 @644 -@650 := @56 @644 -@652 := @13 @649 @23 -@654 := @72 @649 @71 -@656 := @72 @645 @654 -@657 := @185 @649 -@659 := @21 (@643 @28) -@672 := {t : @68} -> - {vs : @111} -> - {ts : @112} -> (h : @13 @659 @30) -> (hs : @189) -> @107 (@72 (@21 (@643 @115)) @28) @135 -@673 := @657 @23 -@675 := @21 (@643 @30) -@687 := {vs : @111} -> - {ts : @112} -> (h : @13 @675 @23) -> (hs : @189) -> @107 (@72 (@21 (@643 @117)) @28) @224 -@688 := @673 @71 -@690 := @21 (@643 @32) -@692 := @13 @690 @23 -@694 := @72 @659 @71 -@699 := {ts : @112} -> (h : @692) -> (hs : @235) -> @107 @694 @224 -@700 := @688 @77 -@702 := @72 @675 @71 -@703 := @107 @702 -@706 := (h : @652) -> (hs : @109) -> @703 @80 -@707 := @700 @650 -@709 := @72 @690 @71 -@711 := @107 @709 @80 -@712 := (hs : @109) -> @711 -@713 := @707 @106 -@715 := @107 @654 @80 -@716 := @185 @645 -@718 := @21 (@641 @28) -@731 := {t : @68} -> - {vs : @111} -> - {ts : @112} -> (h : @13 @718 @30) -> (hs : @189) -> @107 (@72 (@21 (@641 @115)) @28) @135 -@732 := @716 @23 -@734 := @21 (@641 @30) -@746 := {vs : @111} -> - {ts : @112} -> (h : @13 @734 @23) -> (hs : @189) -> @107 (@72 (@21 (@641 @117)) @28) @224 -@747 := @732 @654 -@749 := @21 (@641 @32) -@751 := @13 @749 @23 -@752 := @703 @32 -@754 := @72 @718 @694 -@759 := {ts : @112} -> (h : @751) -> (hs : @752) -> @107 @754 @224 -@760 := @747 @80 -@762 := @72 @734 @702 -@763 := @107 @762 -@766 := (h : @648) -> (hs : @711) -> @763 @81 -@767 := @760 @646 -@769 := @72 @749 @709 -@771 := @107 @769 @81 -@772 := (hs : @715) -> @771 -@773 := @767 @713 -@775 := @107 @656 @81 -@776 := @380 @636 -@777 := @352 @636 -@786 := {k : @27} -> - {fs : @111} -> {tys : @112} -> (h : @322 (@777 @30) @330) -> (hf : @189) -> @381 @637 -@787 := @776 @9 -@788 := @777 @9 -@789 := @322 @788 -@790 := @789 @330 -@795 := {fs : @111} -> {tys : @112} -> (h : @790) -> (hf : @189) -> @406 @637 -@796 := @787 @656 -@803 := {tys : @112} -> (h : @790) -> (hf : @763 @32) -> @13 (@404 @754) @637 -@804 := @796 @81 -@810 := (h : @789 @421) -> (hf : @771) -> @13 (@404 @762) @637 -@812 := @804 (@429 @788) -@816 := (hf : @775) -> @13 (@404 @769) @637 -@817 := @812 @773 -@820 := @13 (@404 @656) @637 -@821 := fun (__s : @633) => @817 -@822 := @21 @30 -@823 := @56 @30 -@825 := @13 @822 @23 -@826 := @21 @32 -@827 := @56 @32 -@829 := @13 @826 @23 -@830 := @72 @826 -@831 := @830 @71 -@832 := @72 @822 -@833 := @832 @831 -@836 := Prod.{0, 0} @27 @67 -@839 := Prod.mk.{0, 0} @27 @67 -@840 := @839 @445 -@841 := @840 @826 -@842 := @839 @9 -@843 := @842 @822 -@844 := @69 @836 -@845 := @70 @836 -@847 := @845 @843 @844 -@849 := @845 @841 @847 -@850 := Bool.true -@851 := LexLeanTarget.TargetSyntax.Function -@852 := LexLeanTarget.TargetSyntax.Program.functions -@853 := @852 @0 -@854 := @69 @27 -@855 := LexLeanTarget.TargetSyntax.Ty.unit -@856 := LexLeanTarget.TargetSyntax.Value.unit -@859 := LexLeanTarget.TargetSyntax.Expr.value @855 @856 -@864 := LexLeanTarget.TargetSyntax.Function.mk @854 @77 @855 @859 -@869 := List.getD.{0} @851 @853 @9 @864 -@873 := fun (__e_n : @27) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.RustStd.root @4 @9 -@874 := @185 @826 -@875 := @21 @117 -@876 := @13 @875 -@877 := @876 @30 -@878 := @21 @113 -@879 := @72 @878 -@881 := @107 (@879 @28) -@887 := {t : @68} -> {vs : @111} -> {ts : @112} -> (h : @877) -> (hs : @189) -> @881 @135 -@888 := @874 @23 -@889 := @21 @28 -@891 := @13 @889 @23 -@892 := @21 @115 -@893 := @72 @892 -@900 := {vs : @111} -> {ts : @112} -> (h : @891) -> (hs : @189) -> @107 (@893 @28) @224 -@901 := @888 @71 -@902 := @72 @875 -@903 := @902 @71 -@908 := {ts : @112} -> (h : @825) -> (hs : @235) -> @107 @903 @224 -@909 := @901 @77 -@910 := @72 @889 -@911 := @910 @71 -@912 := @107 @911 -@915 := (h : @829) -> (hs : @109) -> @912 @80 -@916 := @909 @827 -@917 := @832 @71 -@919 := @107 @917 @80 -@920 := (hs : @109) -> @919 -@921 := @916 @106 -@923 := @107 @831 @80 -@924 := @185 @822 -@926 := @13 @892 @30 -@927 := @21 @121 -@928 := @72 @927 -@936 := {t : @68} -> {vs : @111} -> {ts : @112} -> (h : @926) -> (hs : @189) -> @107 (@928 @28) @135 -@937 := @924 @23 -@943 := {vs : @111} -> {ts : @112} -> (h : @876 @23) -> (hs : @189) -> @881 @224 -@944 := @937 @831 -@945 := @912 @32 -@946 := @893 @903 -@947 := @107 @946 -@951 := {ts : @112} -> (h : @891) -> (hs : @945) -> @947 @224 -@952 := @944 @80 -@953 := @902 @911 -@954 := @107 @953 -@957 := (h : @825) -> (hs : @919) -> @954 @81 -@958 := @952 @823 -@959 := @910 @917 -@960 := @107 @959 -@962 := (hs : @923) -> @960 @81 -@963 := @958 @921 -@964 := @107 @833 -@965 := @964 @81 -@966 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.denote -@968 := @966 @30 @32 -@969 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.__fits_0 -@971 := @969 @30 @32 -@974 := Coverage.Main.records @30 @32 -@980 := LexLeanPreservation.encPair @27 @27 @21 @21 @974 -@983 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.root @30 @32 -@984 := Bool -@985 := Ne.{1} -@986 := LexLeanPreservation.Obs -@987 := @985 @986 -@988 := LexLeanPreservation.Rel -@991 := @987 (@988 @32 @4) -@992 := LexLeanPreservation.Obs.stuck -@995 := (f : @984) -> (v : @67) -> @991 @992 -@997 := LexLeanPreservation.Rust.rel_ne_stuck @971 -@1004 := (v : @67) -> @987 (@988 (@969 @28 @30) @4) @992 -@1005 := @997 @980 -@1009 := @987 (@988 @971 @980) @992 -@1010 := @110 @836 -@1011 := LexLeanPreservation.Rust.FunSem -@1012 := #9 -@1018 := (n : @27) -> @1011 @1012 @127 @121 @4 @113 -@1019 := @320 @851 -@1020 := @319 @1019 -@1027 := LexLeanRuntime.index (@110 @851) @851 (LexLeanRuntime.instIndexableList @851) -@1031 := @1020 (@1027 (@852 @1012) @113) -@1032 := @328 @851 -@1033 := @1032 @115 -@1034 := @1031 @1033 -@1035 := #10 -@1039 := @82 @1035 @1012 @127 @115 -@1040 := LexLeanTarget.TargetSyntax.Function.types -@1041 := @1040 @113 -@1042 := @1039 @1041 -@1043 := @320 @1010 -@1044 := @319 @1043 -@1045 := LexLeanTarget.TargetSemantics.bindAll -@1046 := LexLeanTarget.TargetSyntax.Function.parameters -@1051 := @1044 (@1045 (@1046 @121) @113 @844) -@1052 := @328 @1010 -@1053 := @1052 @115 -@1054 := @1051 @1053 -@1055 := @320 @984 -@1056 := @319 @1055 -@1057 := LexLeanPreservation.Rust.fnFallible -@1058 := #11 -@1061 := @1056 (@1057 @1058 @1012) -@1062 := @328 @984 -@1063 := @1062 @115 -@1064 := @1061 @1063 -@1065 := LexLeanPreservation.RunConv -@1066 := #13 -@1070 := @1065 @1066 @1035 @127 @115 -@1072 := @987 @113 @992 -@1073 := Exists.{1} -@1074 := LexLeanPreservation.Rust.ROut -@1075 := @1073 @1074 -@1076 := And -@1077 := LexLeanPreservation.Rust.RealizesFn -@1081 := @1076 (@1077 @1012 @127 @4) -@1082 := LexLeanPreservation.Rust.RCI -@1084 := @1082 #15 -@1085 := LexLeanPreservation.Rust.fnIdent -@1086 := @1085 @1066 -@1093 := (hne : @1072) -> @1075 (fun (ro : @1074) => @1081 (@1084 @1086 @1058 @4)) -@1108 := {p : @24} -> - {c : @25} -> - {A : @26} -> - {f : @27} -> - {fn : @851} -> - {args : @111} -> - {env : @1010} -> - {F : @984} -> - {o : @986} -> - (hB : @1018) -> - (hfn : @1034) -> (hwt : @1042) -> (hbind : @1054) -> (hF : @1064) -> (hA : @1070) -> @1093 -@1110 := LexLeanPreservation.Rust.compose @0 -@1111 := @1011 @0 -@1116 := (n : @27) -> @1111 @127 @121 @4 @113 -@1117 := @1027 @853 -@1120 := @1020 (@1117 @113) @1033 -@1124 := @93 @1012 @127 @115 @1041 -@1125 := @1065 @0 -@1128 := @1125 @1035 @127 @115 -@1142 := {c : @25} -> - {A : @26} -> - {f : @27} -> - {fn : @851} -> - {args : @111} -> - {env : @1010} -> - {F : @984} -> - {o : @986} -> - (hB : @1116) -> - (hfn : @1120) -> (hwt : @1124) -> (hbind : @1054) -> (hF : @1064) -> (hA : @1128) -> @1093 -@1143 := @1110 @1 -@1144 := @1111 @1 -@1148 := (n : @27) -> @1144 @121 @4 @113 -@1151 := @101 @127 @115 @1041 -@1152 := @1057 @1 -@1155 := @1056 (@1152 @1012) @1063 -@1156 := @1082 @1 -@1166 := (hbind : @1054) -> - (hF : @1155) -> - (hA : @1128) -> (hne : @1072) -> @1075 (fun (ro : @1074) => @1081 (@1156 @1086 @1058 @4)) -@1176 := {A : @26} -> - {f : @27} -> - {fn : @851} -> - {args : @111} -> - {env : @1010} -> - {F : @984} -> {o : @986} -> (hB : @1148) -> (hfn : @1120) -> (hwt : @1151) -> @1166 -@1177 := @1143 @2 -@1179 := @1144 @2 @4 -@1181 := (n : @27) -> @1179 @113 -@1182 := @107 @115 -@1183 := @1182 @1041 -@1192 := {f : @27} -> - {fn : @851} -> - {args : @111} -> - {env : @1010} -> - {F : @984} -> {o : @986} -> (hB : @1181) -> (hfn : @1120) -> (hwt : @1183) -> @1166 -@1193 := @1177 @9 -@1195 := (n : @27) -> @1179 @9 -@1196 := @1117 @9 -@1197 := @1020 @1196 -@1198 := @1197 @1033 -@1199 := @1152 @9 -@1200 := @1056 @1199 -@1201 := @1200 @1063 -@1202 := @1125 @9 -@1204 := @1202 @127 @115 -@1206 := @1156 (@1085 @9) -@1214 := (hF : @1201) -> - (hA : @1204) -> (hne : @1072) -> @1075 (fun (ro : @1074) => @1081 (@1206 @1058 @4)) -@1223 := {fn : @851} -> - {args : @111} -> - {env : @1010} -> - {F : @984} -> - {o : @986} -> (hB : @1195) -> (hfn : @1198) -> (hwt : @1183) -> (hbind : @1054) -> @1214 -@1224 := @1193 @869 -@1226 := @1197 (@1032 @869) -@1227 := @1040 @869 -@1228 := @1182 @1227 -@1230 := @1045 (@1046 @869) -@1242 := {args : @111} -> - {env : @1010} -> - {F : @984} -> - {o : @986} -> - (hB : @1195) -> (hfn : @1226) -> (hwt : @1228) -> (hbind : @1044 (@1230 @113 @844) @1053) -> @1214 -@1243 := @1224 @833 -@1245 := @928 (@879 @71) -@1247 := @107 @1245 @1227 -@1249 := @72 (@21 @127) -@1251 := @1249 (@928 @71) -@1255 := @1044 (@1230 @1251 @844) @1053 -@1257 := @72 (@21 @1035) -@1259 := @72 (@21 @1012) -@1261 := @1257 (@1259 @71) -@1263 := @1202 @1261 @115 -@1265 := @72 (@21 @1066) -@1268 := @72 (@21 #12) -@1285 := {env : @1010} -> - {F : @984} -> - {o : @986} -> - (hB : @1195) -> - (hfn : @1226) -> - (hwt : @1247) -> - (hbind : @1255) -> - (hF : @1201) -> - (hA : @1263) -> (hne : @1072) -> @1075 (fun (ro : @1074) => @1081 (@1206 (@1265 (@1268 @71)) @4)) -@1286 := @1243 @849 -@1288 := @879 (@893 @71) -@1290 := @107 @1288 @1227 -@1301 := @1044 (@1230 @1245 @844) (@1052 (@845 (@840 @878) (@845 (@842 @927) @844))) -@1303 := @1259 (@1249 @71) -@1305 := @1202 @1303 @115 -@1307 := @72 (@21 @1058) -@1323 := {F : @984} -> - {o : @986} -> - (hB : @1195) -> - (hfn : @1226) -> - (hwt : @1290) -> - (hbind : @1301) -> - (hF : @1201) -> - (hA : @1305) -> (hne : @1072) -> @1075 (fun (ro : @1074) => @1081 (@1206 (@1268 (@1307 @71)) @4)) -@1324 := @1286 @850 -@1325 := @947 @1227 -@1336 := @1044 (@1230 @1288 @844) (@1052 (@845 (@840 @892) (@845 (@842 @878) @844))) -@1338 := @1200 (@1062 @850) -@1340 := @1202 @1251 @115 -@1341 := @1077 @850 -@1359 := {o : @986} -> - (hB : @1195) -> - (hfn : @1226) -> - (hwt : @1325) -> - (hbind : @1336) -> - (hF : @1338) -> - (hA : @1340) -> - (hne : @1072) -> @1075 (fun (ro : @1074) => @1076 (@1341 @127 @4) (@1206 (@1307 (@1257 @71)) @4)) -@1360 := @1324 @968 -@1361 := @954 @1227 -@1372 := @1044 (@1230 @946 @844) (@1052 (@845 (@840 @875) (@845 (@842 @892) @844))) -@1373 := @1202 @1245 -@1375 := @966 @121 @113 -@1376 := @1373 @1375 -@1378 := @966 @127 @121 -@1397 := (hB : @1195) -> - (hfn : @1226) -> - (hwt : @1361) -> - (hbind : @1372) -> - (hF : @1338) -> - (hA : @1376) -> - (hne : @987 @1378 @992) -> - @1075 (fun (ro : @1074) => @1076 (@1341 (@966 @1035 @1012) @4) (@1206 @1261 @4)) -@1398 := @1360 @873 -@1399 := @960 @1227 -@1410 := @1044 (@1230 @953 @844) (@1052 (@845 (@840 @889) (@845 (@842 @875) @844))) -@1411 := @1202 @1288 -@1413 := @966 @113 @115 -@1432 := (hfn : @1226) -> - (hwt : @1399) -> - (hbind : @1410) -> - (hF : @1338) -> - (hA : @1411 @1413) -> - (hne : @987 @1375 @992) -> - @1075 (fun (ro : @1074) => @1076 (@1341 (@966 @1012 @127) @4) (@1206 @1303 @4)) -@1435 := @1398 (@428 @1019 @1196) -@1436 := @964 @1227 -@1447 := @1044 (@1230 @959 @844) (@1052 (@845 (@840 @822) (@845 (@842 @889) @844))) -@1448 := @1202 @946 -@1450 := @966 @115 @117 -@1466 := (hwt : @1436) -> - (hbind : @1447) -> - (hF : @1338) -> - (hA : @1448 @1450) -> - (hne : @987 @1413 @992) -> @1075 (fun (ro : @1074) => @1076 (@1341 @1378 @4) (@1206 @1251 @4)) -@1467 := @1435 @963 -@1469 := @1230 @833 @844 -@1472 := @1044 @1469 (@1052 @849) -@1473 := @1202 @953 -@1475 := @966 @117 @28 -@1490 := (hbind : @1472) -> - (hF : @1338) -> - (hA : @1473 @1475) -> - (hne : @987 @1450 @992) -> @1075 (fun (ro : @1074) => @1076 (@1341 @1375 @4) (@1206 @1245 @4)) -@1493 := @1467 (@428 @1043 @1469) -@1494 := @1202 @959 -@1496 := @966 @28 @30 -@1510 := (hF : @1338) -> - (hA : @1494 @1496) -> - (hne : @987 @1475 @992) -> @1075 (fun (ro : @1074) => @1076 (@1341 @1413 @4) (@1206 @1288 @4)) -@1513 := @1493 (@428 @1055 @1199) -@1527 := (hA : @1202 @833 @968) -> - (hne : @987 @1496 @992) -> @1075 (fun (ro : @1074) => @1076 (@1341 @1450 @4) (@1206 @946 @4)) -@1528 := @1513 @983 -@1539 := (hne : @987 @968 @992) -> - @1075 (fun (ro : @1074) => @1076 (@1341 @1475 @4) (@1206 @953 @4)) -@1540 := @1528 @1005 -@1546 := @1076 (@1341 @1496 @4) (@1206 @959 @4) -@1548 := @1075 (fun (ro : @1074) => @1546) -@1550 := @1075 (fun (__e_ro : @1074) => @1546) -@1555 := LexLeanPreservation.Rust.RepresentableL (@830 (@72 @34 @71)) -@1556 := (__e_hrep : @1555) -> @1550 -@1557 := fun (__e_hrep : @1555) => @1540 -@1558 := (b : @27) -> @1556 -@1559 := fun (b : @27) => @1557 -@1560 := (a : @27) -> @1558 -@1561 := fun (a : @27) => @1559 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R14/RustCore.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R14/RustCore.lean deleted file mode 100644 index 8cf80391f..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R14/RustCore.lean +++ /dev/null @@ -1,54 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.RustCore -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [{ constructors := [[.nat, .nat]] }, - { constructors := [[.nat, .nat]] }, - { constructors := [[.nat, .nat]] }], functions := [ - { parameters := [0, 1], types := [.nat, .nat], result := (.pair .nat .nat), - body := (.«let» 2 (.adt 0) (.build (.adt 0) (.adt 0) [(.var 0), (.var 1)]) (.build .pair (.pair .nat .nat) [(.prim .natAdd [(.field (.var 2) 0), (.field (.call 1 []) 1)]), (.call 2 [(.build (.adt 0) (.adt 1) [(.field (.var 2) 1), (.value .nat (.nat 1))])])])) }, - { parameters := [], types := [], result := (.adt 2), - body := (.build (.adt 0) (.adt 2) [(.value .nat (.nat 2)), (.value .nat (.nat 3))]) }, - { parameters := [0], types := [(.adt 1)], result := .nat, - body := (.field (.var 0) 0) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .core, items := [ - (.enum (.adt 0) [{ number := 0, fields := [.nat, .nat] }]), - (.enum (.adt 1) [{ number := 0, fields := [.nat, .nat] }]), - (.enum (.adt 2) [{ number := 0, fields := [.nat, .nat] }]), - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.pair .nat .nat)) (.mk [(.mk (.bind (.generated .binding 2)) (some (.adt 0)) (.construct (.adt 0 0) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))]))] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 4)) none (.matchOn (.clone (.generated .binding 2)) [(.mk (.adt 0 0 [(.bind (.generated .part 1)), .wild]) (.mk [] (.move (.generated .part 1))))])), (.mk (.bind (.generated .operand 5)) none (.block (.mk [(.mk (.bind (.generated .holder 3)) none (.call (.function 1) [] false))] (.matchOn (.move (.generated .holder 3)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 2))]) (.mk [] (.move (.generated .part 2))))]))))] (.call (.runtime .natAdd) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] true))) (.call (.function 2) [(.construct (.adt 1 0) [(.matchOn (.move (.generated .binding 2)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 6))]) (.mk [] (.move (.generated .part 6))))]), (.lit (.nat 1))])] false))))), - (.function (.generated .function 1) [] (.adt 2) (.mk [] (.construct (.adt 2 0) [(.lit (.nat 2)), (.lit (.nat 3))]))), - (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .nat (.mk [] (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 7)), .wild]) (.mk [] (.move (.generated .part 7))))])))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some (.adt 0)) (.construct (.adt 0 0) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))]))], (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 4)) none (.matchOn (.clone (.generated .binding 2)) [(.mk (.adt 0 0 [(.bind (.generated .part 1)), .wild]) (.mk [] (.move (.generated .part 1))))])), (.mk (.bind (.generated .operand 5)) none (.block (.mk [(.mk (.bind (.generated .holder 3)) none (.call (.function 1) [] false))] (.matchOn (.move (.generated .holder 3)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 2))]) (.mk [] (.move (.generated .part 2))))]))))] (.call (.runtime .natAdd) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] true))) (.call (.function 2) [(.construct (.adt 1 0) [(.matchOn (.move (.generated .binding 2)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 6))]) (.mk [] (.move (.generated .part 6))))]), (.lit (.nat 1))])] false))), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.letBind (Corr.eOfBNil (Corr.build (ts := [.nat, .nat]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 4)) none (.matchOn (.clone (.generated .binding 2)) [(.mk (.adt 0 0 [(.bind (.generated .part 1)), .wild]) (.mk [] (.move (.generated .part 1))))])), (.mk (.bind (.generated .operand 5)) none (.block (.mk [(.mk (.bind (.generated .holder 3)) none (.call (.function 1) [] false))] (.matchOn (.move (.generated .holder 3)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 2))]) (.mk [] (.move (.generated .part 2))))]))))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat]) (rd := (.move (.generated .part 1))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 3)) none (.call (.function 1) [] false))]) (tail := (.matchOn (.move (.generated .holder 3)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 2))]) (.mk [] (.move (.generated .part 2))))])) (Corr.fieldHeld (ts := [.nat, .nat]) (rd := (.move (.generated .part 2))) (Corr.eOfBNil (Corr.callOps (ts := []) (Corr.opsNil) rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, .nat]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat]) (rd := (.move (.generated .part 6))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))))))⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 2 0) [(.lit (.nat 2)), (.lit (.nat 3))]), [], rfl, rfl, - (Corr.build (ts := [.nat, .nat]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl)⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [], (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 7)), .wild]) (.mk [] (.move (.generated .part 7))))]), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.fieldRead (ts := [.nat, .nat]) (rd := (.move (.generated .part 7))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | _ + 3 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.RustCore diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R14/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R14/RustStd.lean deleted file mode 100644 index 969183c8d..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R14/RustStd.lean +++ /dev/null @@ -1,54 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [{ constructors := [[.nat, .nat]] }, - { constructors := [[.nat, .nat]] }, - { constructors := [[.nat, .nat]] }], functions := [ - { parameters := [0, 1], types := [.nat, .nat], result := (.pair .nat .nat), - body := (.«let» 2 (.adt 0) (.build (.adt 0) (.adt 0) [(.var 0), (.var 1)]) (.build .pair (.pair .nat .nat) [(.prim .natAdd [(.field (.var 2) 0), (.field (.call 1 []) 1)]), (.call 2 [(.build (.adt 0) (.adt 1) [(.field (.var 2) 1), (.value .nat (.nat 1))])])])) }, - { parameters := [], types := [], result := (.adt 2), - body := (.build (.adt 0) (.adt 2) [(.value .nat (.nat 2)), (.value .nat (.nat 3))]) }, - { parameters := [0], types := [(.adt 1)], result := .nat, - body := (.field (.var 0) 0) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.enum (.adt 0) [{ number := 0, fields := [.nat, .nat] }]), - (.enum (.adt 1) [{ number := 0, fields := [.nat, .nat] }]), - (.enum (.adt 2) [{ number := 0, fields := [.nat, .nat] }]), - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.pair .nat .nat)) (.mk [(.mk (.bind (.generated .binding 2)) (some (.adt 0)) (.construct (.adt 0 0) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))]))] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 4)) none (.matchOn (.clone (.generated .binding 2)) [(.mk (.adt 0 0 [(.bind (.generated .part 1)), .wild]) (.mk [] (.move (.generated .part 1))))])), (.mk (.bind (.generated .operand 5)) none (.block (.mk [(.mk (.bind (.generated .holder 3)) none (.call (.function 1) [] false))] (.matchOn (.move (.generated .holder 3)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 2))]) (.mk [] (.move (.generated .part 2))))]))))] (.call (.runtime .natAdd) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] true))) (.call (.function 2) [(.construct (.adt 1 0) [(.matchOn (.move (.generated .binding 2)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 6))]) (.mk [] (.move (.generated .part 6))))]), (.lit (.nat 1))])] false))))), - (.function (.generated .function 1) [] (.adt 2) (.mk [] (.construct (.adt 2 0) [(.lit (.nat 2)), (.lit (.nat 3))]))), - (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .nat (.mk [] (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 7)), .wild]) (.mk [] (.move (.generated .part 7))))])))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some (.adt 0)) (.construct (.adt 0 0) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))]))], (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 4)) none (.matchOn (.clone (.generated .binding 2)) [(.mk (.adt 0 0 [(.bind (.generated .part 1)), .wild]) (.mk [] (.move (.generated .part 1))))])), (.mk (.bind (.generated .operand 5)) none (.block (.mk [(.mk (.bind (.generated .holder 3)) none (.call (.function 1) [] false))] (.matchOn (.move (.generated .holder 3)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 2))]) (.mk [] (.move (.generated .part 2))))]))))] (.call (.runtime .natAdd) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] true))) (.call (.function 2) [(.construct (.adt 1 0) [(.matchOn (.move (.generated .binding 2)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 6))]) (.mk [] (.move (.generated .part 6))))]), (.lit (.nat 1))])] false))), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.letBind (Corr.eOfBNil (Corr.build (ts := [.nat, .nat]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 4)) none (.matchOn (.clone (.generated .binding 2)) [(.mk (.adt 0 0 [(.bind (.generated .part 1)), .wild]) (.mk [] (.move (.generated .part 1))))])), (.mk (.bind (.generated .operand 5)) none (.block (.mk [(.mk (.bind (.generated .holder 3)) none (.call (.function 1) [] false))] (.matchOn (.move (.generated .holder 3)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 2))]) (.mk [] (.move (.generated .part 2))))]))))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat]) (rd := (.move (.generated .part 1))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 3)) none (.call (.function 1) [] false))]) (tail := (.matchOn (.move (.generated .holder 3)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 2))]) (.mk [] (.move (.generated .part 2))))])) (Corr.fieldHeld (ts := [.nat, .nat]) (rd := (.move (.generated .part 2))) (Corr.eOfBNil (Corr.callOps (ts := []) (Corr.opsNil) rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, .nat]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat]) (rd := (.move (.generated .part 6))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))))))⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 2 0) [(.lit (.nat 2)), (.lit (.nat 3))]), [], rfl, rfl, - (Corr.build (ts := [.nat, .nat]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl)⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [], (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 7)), .wild]) (.mk [] (.move (.generated .part 7))))]), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.fieldRead (ts := [.nat, .nat]) (rd := (.move (.generated .part 7))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | _ + 3 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R15/Compose/RustCore.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R15/Compose/RustCore.lex.tex deleted file mode 100644 index a86d02c03..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R15/Compose/RustCore.lex.tex +++ /dev/null @@ -1,615 +0,0 @@ -\begin{lexlean}{RustCore} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.Compose.RustCore} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.RustCore, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.Compose.RustCore.root : @1260 := @1261 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.Compose.RustCore.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.RustCore.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.RustCore.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.RustCore.flags -@3 := Nat -@4 := Option.{0} -@5 := @4 @3 -@6 := #2 -@7 := LexLeanTarget.TargetSyntax.Value.nat -@8 := LexLeanPreservation.encOption -@9 := @8 @3 -@10 := @9 @7 -@11 := @10 @6 -@12 := LexLeanTarget.TargetSyntax.Ty.nat -@13 := LexLeanTarget.TargetSyntax.Ty.option -@14 := @13 @12 -@15 := #0 -@16 := LexLeanTarget.TargetSyntax.Program -@17 := LexLeanPreservation.Rust.RCrate -@18 := LexLeanPreservation.Rust.Flags -@19 := LexLeanPreservation.Rust.WT -@20 := #3 -@22 := @19 @20 @6 -@23 := #1 -@24 := @22 @23 -@25 := @7 @15 -@31 := {p : @16} -> {c : @17} -> {A : @18} -> (n : @3) -> @24 @25 @12 -@33 := LexLeanPreservation.Rust.wt_nat @0 -@34 := @19 @0 -@36 := @34 @6 @23 -@41 := {c : @17} -> {A : @18} -> (n : @3) -> @36 @25 @12 -@42 := @33 @1 -@43 := @34 @1 -@44 := @43 @23 -@48 := {A : @18} -> (n : @3) -> @44 @25 @12 -@49 := @42 @2 -@50 := @43 @2 -@51 := @50 @25 -@52 := @51 @12 -@53 := (n : @3) -> @52 -@55 := fun (__x : @3) => @49 @15 -@56 := Sort 1 -@57 := LexLeanTarget.TargetSyntax.Value -@58 := (a._@._internal._hyg.#0 : @15) -> @57 -@59 := LexLeanTarget.TargetSyntax.Ty -@60 := #6 -@61 := @19 @60 -@62 := #5 -@63 := @61 @62 -@64 := #4 -@65 := @63 @64 -@66 := @6 @15 -@69 := (x : @6) -> @65 @66 @23 -@70 := @4 @20 -@71 := #7 -@74 := @19 @71 @60 @62 -@77 := @8 @64 @20 @15 -@78 := @74 @77 -@79 := @13 @6 -@88 := {p : @16} -> - {c : @17} -> {A : @18} -> {α : @56} -> {e : @58} -> {t : @59} -> (h : @69) -> (o : @70) -> @78 @79 -@90 := LexLeanPreservation.Rust.wt_encOption @0 -@92 := @34 @62 @64 -@106 := {c : @17} -> - {A : @18} -> - {α : @56} -> - {e : @58} -> {t : @59} -> (h : (x : @6) -> @92 @66 @23) -> (o : @70) -> @34 @60 @62 @77 @79 -@107 := @90 @1 -@108 := @43 @64 -@120 := {A : @18} -> - {α : @56} -> - {e : @58} -> {t : @59} -> (h : (x : @6) -> @108 @66 @23) -> (o : @70) -> @43 @62 @77 @79 -@121 := @107 @2 -@123 := @50 @66 @23 -@131 := {α : @56} -> {e : @58} -> {t : @59} -> (h : (x : @6) -> @123) -> (o : @70) -> @50 @77 @79 -@132 := @121 @3 -@133 := (a._@._internal._hyg.#0 : @3) -> @57 -@142 := {e : @133} -> {t : @59} -> (h : (x : @3) -> @123) -> (o : @5) -> @50 (@9 @20 @15) @79 -@143 := @132 @7 -@145 := (x : @3) -> @51 @23 -@147 := @50 (@10 @15) -@151 := {t : @59} -> (h : @145) -> (o : @5) -> @147 @79 -@152 := @143 @12 -@153 := (x : @3) -> @52 -@156 := (h : @153) -> (o : @5) -> @147 @14 -@158 := @152 @55 @6 -@160 := @50 @11 @14 -@161 := Bool -@162 := Except.{0, 0} -@163 := @162 @161 -@164 := @163 @3 -@165 := LexLeanTarget.TargetSyntax.Value.bool -@166 := LexLeanPreservation.encExcept -@167 := @166 @161 -@168 := @167 @3 -@169 := @168 @165 -@170 := @169 @7 -@171 := @170 @23 -@172 := LexLeanTarget.TargetSyntax.Ty.bool -@173 := LexLeanTarget.TargetSyntax.Ty.result -@174 := @173 @12 -@175 := @174 @172 -@176 := @165 @15 -@182 := {p : @16} -> {c : @17} -> {A : @18} -> (b : @161) -> @24 @176 @172 -@184 := LexLeanPreservation.Rust.wt_bool @0 -@189 := {c : @17} -> {A : @18} -> (b : @161) -> @36 @176 @172 -@190 := @184 @1 -@194 := {A : @18} -> (b : @161) -> @44 @176 @172 -@195 := @190 @2 -@196 := @50 @176 -@197 := @196 @172 -@198 := (b : @161) -> @197 -@200 := fun (__x : @161) => @195 @15 -@201 := (a._@._internal._hyg.#0 : @23) -> @57 -@202 := #9 -@203 := @19 @202 -@204 := #8 -@206 := @203 @204 @71 -@207 := @64 @15 -@210 := (x : @62) -> @206 @207 @23 -@211 := #10 -@217 := (x : @62) -> @19 @211 @202 @204 @207 @20 -@219 := @162 @71 @60 -@220 := #11 -@223 := @19 @220 @211 @202 -@228 := @166 @204 @71 @60 @62 @15 -@229 := @223 @228 -@231 := @173 @64 @20 -@244 := {p : @16} -> - {c : @17} -> - {A : @18} -> - {ε : @56} -> - {α : @56} -> - {ee : @201} -> - {ea : @201} -> {s : @59} -> {t : @59} -> (he : @210) -> (ha : @217) -> (x : @219) -> @229 @231 -@246 := LexLeanPreservation.Rust.wt_encExcept @0 -@271 := {c : @17} -> - {A : @18} -> - {ε : @56} -> - {α : @56} -> - {ee : @201} -> - {ea : @201} -> - {s : @59} -> - {t : @59} -> - (he : (x : @62) -> @34 @204 @71 @207 @23) -> - (ha : (x : @62) -> @34 @202 @204 @207 @20) -> (x : @219) -> @34 @211 @202 @228 @231 -@272 := @246 @1 -@293 := {A : @18} -> - {ε : @56} -> - {α : @56} -> - {ee : @201} -> - {ea : @201} -> - {s : @59} -> - {t : @59} -> - (he : (x : @62) -> @43 @71 @207 @23) -> - (ha : (x : @62) -> @43 @204 @207 @20) -> (x : @219) -> @43 @202 @228 @231 -@294 := @272 @2 -@295 := @50 @207 -@296 := @295 @23 -@297 := (x : @62) -> @296 -@298 := @295 @20 -@299 := (x : @62) -> @298 -@310 := {ε : @56} -> - {α : @56} -> - {ee : @201} -> - {ea : @201} -> {s : @59} -> {t : @59} -> (he : @297) -> (ha : @299) -> (x : @219) -> @50 @228 @231 -@311 := @294 @161 -@312 := (a._@._internal._hyg.#0 : @161) -> @57 -@313 := (x : @161) -> @296 -@328 := {α : @56} -> - {ee : @312} -> - {ea : @201} -> - {s : @59} -> - {t : @59} -> (he : @313) -> (ha : @299) -> (x : @163 @60) -> @50 (@167 @71 @60 @62 @15) @231 -@329 := @311 @3 -@330 := (x : @3) -> @298 -@342 := {ee : @312} -> - {ea : @133} -> - {s : @59} -> {t : @59} -> (he : @313) -> (ha : @330) -> (x : @164) -> @50 (@168 @60 @62 @15) @231 -@343 := @329 @165 -@345 := (x : @161) -> @196 @23 -@355 := {ea : @133} -> - {s : @59} -> {t : @59} -> (he : @345) -> (ha : @330) -> (x : @164) -> @50 (@169 @62 @15) @231 -@356 := @343 @7 -@358 := (x : @3) -> @51 @20 -@359 := @170 @15 -@360 := @50 @359 -@366 := {s : @59} -> {t : @59} -> (he : @345) -> (ha : @358) -> (x : @164) -> @360 @231 -@367 := @356 @12 -@373 := {t : @59} -> (he : @345) -> (ha : @153) -> (x : @164) -> @360 (@174 @20) -@374 := @367 @172 -@379 := (he : (x : @161) -> @197) -> (ha : @153) -> (x : @164) -> @360 @175 -@382 := @374 @200 @55 @23 -@384 := @50 @171 @175 -@385 := List.nil.{0} -@386 := List.cons.{0} -@387 := @385 @57 -@388 := @386 @57 -@390 := @388 @171 @387 -@392 := @388 @11 @390 -@395 := Prod.{0, 0} @3 @57 -@396 := 1 -@399 := Prod.mk.{0, 0} @3 @57 -@400 := @399 @396 -@401 := @400 @171 -@402 := 0 -@403 := @399 @402 -@404 := @403 @11 -@405 := @385 @395 -@406 := @386 @395 -@408 := @406 @404 @405 -@410 := @406 @401 @408 -@411 := Bool.true -@412 := LexLeanTarget.TargetSyntax.Function -@413 := LexLeanTarget.TargetSyntax.Program.functions -@414 := @413 @0 -@415 := @385 @3 -@416 := @385 @59 -@417 := LexLeanTarget.TargetSyntax.Ty.unit -@418 := LexLeanTarget.TargetSyntax.Value.unit -@421 := LexLeanTarget.TargetSyntax.Expr.value @417 @418 -@426 := LexLeanTarget.TargetSyntax.Function.mk @415 @416 @417 @421 -@431 := List.getD.{0} @412 @414 @402 @426 -@435 := fun (__e_n : @3) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.RustCore.root @15 @402 -@436 := LexLeanPreservation.Rust.WTL -@444 := {p : @16} -> {c : @17} -> {A : @18} -> @436 @6 @23 @15 @387 @416 -@446 := LexLeanPreservation.Rust.wtl_nil @0 -@447 := @436 @0 -@453 := {c : @17} -> {A : @18} -> @447 @23 @15 @387 @416 -@454 := @446 @1 -@455 := @447 @1 -@459 := {A : @18} -> @455 @15 @387 @416 -@460 := @454 @2 -@461 := @455 @2 -@462 := @461 @387 -@463 := @462 @416 -@464 := List.{0} -@465 := @464 @57 -@466 := @464 @59 -@468 := @65 @20 @6 -@473 := @436 @71 @60 @62 @6 @23 -@476 := @436 @204 @71 @60 -@478 := @388 @62 @20 -@479 := @476 @478 -@480 := @386 @59 -@482 := @480 @64 @6 -@492 := {p : @16} -> - {c : @17} -> - {A : @18} -> - {v : @57} -> {t : @59} -> {vs : @465} -> {ts : @466} -> (h : @468) -> (hs : @473) -> @479 @482 -@494 := LexLeanPreservation.Rust.wtl_cons @0 -@512 := {c : @17} -> - {A : @18} -> - {v : @57} -> - {t : @59} -> - {vs : @465} -> - {ts : @466} -> (h : @92 @20 @6) -> (hs : @447 @60 @62 @6 @23) -> @447 @71 @60 @478 @482 -@513 := @494 @1 -@528 := {A : @18} -> - {v : @57} -> - {t : @59} -> - {vs : @465} -> {ts : @466} -> (h : @108 @20 @6) -> (hs : @455 @62 @6 @23) -> @455 @60 @478 @482 -@529 := @513 @2 -@531 := @50 @20 @6 -@533 := @461 @6 @23 -@541 := {v : @57} -> - {t : @59} -> {vs : @465} -> {ts : @466} -> (h : @531) -> (hs : @533) -> @461 @478 @482 -@542 := @529 @171 -@543 := @170 @64 -@545 := @50 @543 @6 -@546 := @170 @60 -@547 := @388 @546 -@555 := {t : @59} -> {vs : @465} -> {ts : @466} -> (h : @545) -> (hs : @533) -> @461 (@547 @20) @482 -@556 := @542 @175 -@557 := @170 @20 -@559 := @50 @557 @175 -@560 := @170 @62 -@561 := @388 @560 -@563 := @461 (@561 @20) -@564 := @480 @175 -@565 := @564 @6 -@570 := {vs : @465} -> {ts : @466} -> (h : @559) -> (hs : @533) -> @563 @565 -@571 := @556 @387 -@572 := @170 @6 -@574 := @50 @572 @175 -@575 := @462 @23 -@577 := @388 @543 @387 -@582 := {ts : @466} -> (h : @574) -> (hs : @575) -> @461 @577 @565 -@583 := @571 @416 -@585 := @388 @557 @387 -@586 := @461 @585 -@587 := @564 @416 -@590 := (h : @384) -> (hs : @463) -> @586 @587 -@591 := @583 @382 -@593 := @388 @572 @387 -@595 := @461 @593 @587 -@596 := (hs : @463) -> @595 -@597 := @591 @460 -@599 := @461 @390 @587 -@600 := @529 @11 -@601 := @10 @62 -@603 := @50 @601 @6 -@604 := @10 @71 -@605 := @388 @604 -@613 := {t : @59} -> {vs : @465} -> {ts : @466} -> (h : @603) -> (hs : @533) -> @461 (@605 @20) @482 -@614 := @600 @14 -@615 := @10 @64 -@617 := @50 @615 @14 -@618 := @10 @60 -@619 := @388 @618 -@621 := @461 (@619 @20) -@622 := @480 @14 -@623 := @622 @6 -@628 := {vs : @465} -> {ts : @466} -> (h : @617) -> (hs : @533) -> @621 @623 -@629 := @614 @390 -@630 := @10 @20 -@632 := @50 @630 @14 -@633 := @586 @23 -@635 := @388 @601 @577 -@636 := @461 @635 -@640 := {ts : @466} -> (h : @632) -> (hs : @633) -> @636 @623 -@641 := @629 @587 -@643 := @388 @615 @585 -@644 := @461 @643 -@645 := @622 @587 -@648 := (h : @160) -> (hs : @595) -> @644 @645 -@649 := @641 @158 -@651 := @388 @630 @593 -@652 := @461 @651 -@654 := (hs : @599) -> @652 @645 -@655 := @649 @597 -@656 := @461 @392 -@657 := @656 @645 -@658 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.denote -@660 := @658 @6 @23 -@661 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.__fits_0 -@663 := @661 @6 @23 -@667 := @7 (Coverage.Main.options @6 @23) -@670 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.root @6 @23 -@671 := Ne.{1} -@672 := LexLeanPreservation.Obs -@673 := @671 @672 -@674 := LexLeanPreservation.Rel -@677 := @673 (@674 @23 @15) -@678 := LexLeanPreservation.Obs.stuck -@681 := (f : @161) -> (v : @57) -> @677 @678 -@683 := LexLeanPreservation.Rust.rel_ne_stuck @663 -@690 := (v : @57) -> @673 (@674 (@661 @20 @6) @15) @678 -@691 := @683 @667 -@695 := @673 (@674 @663 @667) @678 -@696 := @464 @395 -@697 := LexLeanPreservation.Rust.FunSem -@703 := (n : @3) -> @697 @202 @204 @71 @15 @60 -@704 := Eq.{1} -@705 := @4 @412 -@706 := @704 @705 -@713 := LexLeanRuntime.index (@464 @412) @412 (LexLeanRuntime.instIndexableList @412) -@717 := @706 (@713 (@413 @202) @60) -@718 := Option.some.{0} -@719 := @718 @412 -@720 := @719 @62 -@721 := @717 @720 -@725 := @436 @211 @202 @204 @62 -@726 := LexLeanTarget.TargetSyntax.Function.types -@727 := @726 @60 -@728 := @725 @727 -@729 := @4 @696 -@730 := @704 @729 -@731 := LexLeanTarget.TargetSemantics.bindAll -@732 := LexLeanTarget.TargetSyntax.Function.parameters -@737 := @730 (@731 (@732 @71) @60 @405) -@738 := @718 @696 -@739 := @738 @62 -@740 := @737 @739 -@741 := @4 @161 -@742 := @704 @741 -@743 := LexLeanPreservation.Rust.fnFallible -@746 := @742 (@743 @220 @202) -@747 := @718 @161 -@748 := @747 @62 -@749 := @746 @748 -@750 := LexLeanPreservation.RunConv -@751 := #13 -@755 := @750 @751 @211 @204 @62 -@757 := @673 @60 @678 -@758 := Exists.{1} -@759 := LexLeanPreservation.Rust.ROut -@760 := @758 @759 -@761 := And -@762 := LexLeanPreservation.Rust.RealizesFn -@766 := @761 (@762 @202 @204 @15) -@767 := LexLeanPreservation.Rust.RCI -@769 := @767 #15 -@770 := LexLeanPreservation.Rust.fnIdent -@771 := @770 @751 -@778 := (hne : @757) -> @760 (fun (ro : @759) => @766 (@769 @771 @220 @15)) -@793 := {p : @16} -> - {c : @17} -> - {A : @18} -> - {f : @3} -> - {fn : @412} -> - {args : @465} -> - {env : @696} -> - {F : @161} -> - {o : @672} -> - (hB : @703) -> - (hfn : @721) -> (hwt : @728) -> (hbind : @740) -> (hF : @749) -> (hA : @755) -> @778 -@795 := LexLeanPreservation.Rust.compose @0 -@796 := @697 @0 -@801 := (n : @3) -> @796 @204 @71 @15 @60 -@802 := @713 @414 -@805 := @706 (@802 @60) @720 -@809 := @447 @202 @204 @62 @727 -@810 := @750 @0 -@813 := @810 @211 @204 @62 -@827 := {c : @17} -> - {A : @18} -> - {f : @3} -> - {fn : @412} -> - {args : @465} -> - {env : @696} -> - {F : @161} -> - {o : @672} -> - (hB : @801) -> - (hfn : @805) -> (hwt : @809) -> (hbind : @740) -> (hF : @749) -> (hA : @813) -> @778 -@828 := @795 @1 -@829 := @796 @1 -@833 := (n : @3) -> @829 @71 @15 @60 -@836 := @455 @204 @62 @727 -@837 := @743 @1 -@840 := @742 (@837 @202) @748 -@841 := @767 @1 -@851 := (hbind : @740) -> - (hF : @840) -> (hA : @813) -> (hne : @757) -> @760 (fun (ro : @759) => @766 (@841 @771 @220 @15)) -@861 := {A : @18} -> - {f : @3} -> - {fn : @412} -> - {args : @465} -> - {env : @696} -> {F : @161} -> {o : @672} -> (hB : @833) -> (hfn : @805) -> (hwt : @836) -> @851 -@862 := @828 @2 -@864 := @829 @2 @15 -@866 := (n : @3) -> @864 @60 -@867 := @461 @62 -@868 := @867 @727 -@877 := {f : @3} -> - {fn : @412} -> - {args : @465} -> - {env : @696} -> {F : @161} -> {o : @672} -> (hB : @866) -> (hfn : @805) -> (hwt : @868) -> @851 -@878 := @862 @402 -@880 := (n : @3) -> @864 @402 -@881 := @802 @402 -@882 := @706 @881 -@883 := @882 @720 -@884 := @837 @402 -@885 := @742 @884 -@886 := @885 @748 -@887 := @810 @402 -@889 := @887 @204 @62 -@891 := @841 (@770 @402) -@899 := (hF : @886) -> (hA : @889) -> (hne : @757) -> @760 (fun (ro : @759) => @766 (@891 @220 @15)) -@908 := {fn : @412} -> - {args : @465} -> - {env : @696} -> - {F : @161} -> {o : @672} -> (hB : @880) -> (hfn : @883) -> (hwt : @868) -> (hbind : @740) -> @899 -@909 := @878 @431 -@911 := @882 (@719 @431) -@912 := @726 @431 -@913 := @867 @912 -@915 := @731 (@732 @431) -@927 := {args : @465} -> - {env : @696} -> - {F : @161} -> - {o : @672} -> - (hB : @880) -> (hfn : @911) -> (hwt : @913) -> (hbind : @730 (@915 @60 @405) @739) -> @899 -@928 := @909 @392 -@930 := @605 (@547 @387) -@932 := @461 @930 @912 -@938 := @388 (@10 @204) (@388 (@170 @71) @387) -@942 := @730 (@915 @938 @405) @739 -@948 := @388 (@10 @211) (@388 (@170 @202) @387) -@950 := @887 @948 @62 -@952 := @388 (@10 @751) -@953 := #12 -@972 := {env : @696} -> - {F : @161} -> - {o : @672} -> - (hB : @880) -> - (hfn : @911) -> - (hwt : @932) -> - (hbind : @942) -> - (hF : @886) -> - (hA : @950) -> - (hne : @757) -> @760 (fun (ro : @759) => @766 (@891 (@952 (@388 (@170 @953) @387)) @15)) -@973 := @928 @410 -@975 := @619 (@561 @387) -@977 := @461 @975 @912 -@988 := @730 (@915 @930 @405) (@738 (@406 (@400 @546) (@406 (@403 @604) @405))) -@994 := @388 (@10 @202) (@388 (@170 @204) @387) -@1016 := {F : @161} -> - {o : @672} -> - (hB : @880) -> - (hfn : @911) -> - (hwt : @977) -> - (hbind : @988) -> - (hF : @886) -> - (hA : @887 @994 @62) -> - (hne : @757) -> - @760 (fun (ro : @759) => @766 (@891 (@388 (@10 @953) (@388 (@170 @220) @387)) @15)) -@1017 := @973 @411 -@1018 := @636 @912 -@1029 := @730 (@915 @975 @405) (@738 (@406 (@400 @560) (@406 (@403 @618) @405))) -@1031 := @885 (@747 @411) -@1033 := @887 @938 @62 -@1034 := @762 @411 -@1056 := {o : @672} -> - (hB : @880) -> - (hfn : @911) -> - (hwt : @1018) -> - (hbind : @1029) -> - (hF : @1031) -> - (hA : @1033) -> - (hne : @757) -> - @760 - (fun (ro : @759) => @761 (@1034 @204 @15) (@891 (@388 (@10 @220) (@388 (@170 @211) @387)) @15)) -@1057 := @1017 @660 -@1058 := @644 @912 -@1069 := @730 (@915 @635 @405) (@738 (@406 (@400 @543) (@406 (@403 @601) @405))) -@1070 := @887 @930 -@1072 := @658 @71 @60 -@1073 := @1070 @1072 -@1075 := @658 @204 @71 -@1094 := (hB : @880) -> - (hfn : @911) -> - (hwt : @1058) -> - (hbind : @1069) -> - (hF : @1031) -> - (hA : @1073) -> - (hne : @673 @1075 @678) -> - @760 (fun (ro : @759) => @761 (@1034 (@658 @211 @202) @15) (@891 @948 @15)) -@1095 := @1057 @435 -@1096 := @652 @912 -@1107 := @730 (@915 @643 @405) (@738 (@406 (@400 @557) (@406 (@403 @615) @405))) -@1108 := @887 @975 -@1110 := @658 @60 @62 -@1129 := (hfn : @911) -> - (hwt : @1096) -> - (hbind : @1107) -> - (hF : @1031) -> - (hA : @1108 @1110) -> - (hne : @673 @1072 @678) -> - @760 (fun (ro : @759) => @761 (@1034 (@658 @202 @204) @15) (@891 @994 @15)) -@1130 := Eq.refl.{1} -@1133 := @1095 (@1130 @705 @881) -@1134 := @656 @912 -@1145 := @730 (@915 @651 @405) (@738 (@406 (@400 @572) (@406 (@403 @630) @405))) -@1146 := @887 @635 -@1148 := @658 @62 @64 -@1164 := (hwt : @1134) -> - (hbind : @1145) -> - (hF : @1031) -> - (hA : @1146 @1148) -> - (hne : @673 @1110 @678) -> @760 (fun (ro : @759) => @761 (@1034 @1075 @15) (@891 @938 @15)) -@1165 := @1133 @655 -@1167 := @915 @392 @405 -@1170 := @730 @1167 (@738 @410) -@1171 := @887 @643 -@1173 := @658 @64 @20 -@1188 := (hbind : @1170) -> - (hF : @1031) -> - (hA : @1171 @1173) -> - (hne : @673 @1148 @678) -> @760 (fun (ro : @759) => @761 (@1034 @1072 @15) (@891 @930 @15)) -@1191 := @1165 (@1130 @729 @1167) -@1192 := @887 @651 -@1194 := @658 @20 @6 -@1208 := (hF : @1031) -> - (hA : @1192 @1194) -> - (hne : @673 @1173 @678) -> @760 (fun (ro : @759) => @761 (@1034 @1110 @15) (@891 @975 @15)) -@1211 := @1191 (@1130 @741 @884) -@1225 := (hA : @887 @392 @660) -> - (hne : @673 @1194 @678) -> @760 (fun (ro : @759) => @761 (@1034 @1148 @15) (@891 @635 @15)) -@1226 := @1211 @670 -@1237 := (hne : @673 @660 @678) -> @760 (fun (ro : @759) => @761 (@1034 @1173 @15) (@891 @643 @15)) -@1238 := @1226 @691 -@1244 := @761 (@1034 @1194 @15) (@891 @651 @15) -@1246 := @760 (fun (ro : @759) => @1244) -@1248 := @760 (fun (__e_ro : @759) => @1244) -@1249 := LexLeanPreservation.Rust.RepresentableL -@1250 := @10 @23 -@1252 := @388 @359 @387 -@1255 := @1249 (@388 @1250 @1252) -@1256 := (__e_hrep : @1255) -> @1248 -@1257 := fun (__e_hrep : @1255) => @1238 -@1258 := (r : @164) -> @1256 -@1259 := fun (r : @164) => @1257 -@1260 := (v : @5) -> @1258 -@1261 := fun (v : @5) => @1259 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R15/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R15/Compose/RustStd.lex.tex deleted file mode 100644 index 13d3fa35f..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R15/Compose/RustStd.lex.tex +++ /dev/null @@ -1,615 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.Compose.RustStd.root : @1260 := @1261 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.RustStd.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.RustStd.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.RustStd.flags -@3 := Nat -@4 := Option.{0} -@5 := @4 @3 -@6 := #2 -@7 := LexLeanTarget.TargetSyntax.Value.nat -@8 := LexLeanPreservation.encOption -@9 := @8 @3 -@10 := @9 @7 -@11 := @10 @6 -@12 := LexLeanTarget.TargetSyntax.Ty.nat -@13 := LexLeanTarget.TargetSyntax.Ty.option -@14 := @13 @12 -@15 := #0 -@16 := LexLeanTarget.TargetSyntax.Program -@17 := LexLeanPreservation.Rust.RCrate -@18 := LexLeanPreservation.Rust.Flags -@19 := LexLeanPreservation.Rust.WT -@20 := #3 -@22 := @19 @20 @6 -@23 := #1 -@24 := @22 @23 -@25 := @7 @15 -@31 := {p : @16} -> {c : @17} -> {A : @18} -> (n : @3) -> @24 @25 @12 -@33 := LexLeanPreservation.Rust.wt_nat @0 -@34 := @19 @0 -@36 := @34 @6 @23 -@41 := {c : @17} -> {A : @18} -> (n : @3) -> @36 @25 @12 -@42 := @33 @1 -@43 := @34 @1 -@44 := @43 @23 -@48 := {A : @18} -> (n : @3) -> @44 @25 @12 -@49 := @42 @2 -@50 := @43 @2 -@51 := @50 @25 -@52 := @51 @12 -@53 := (n : @3) -> @52 -@55 := fun (__x : @3) => @49 @15 -@56 := Sort 1 -@57 := LexLeanTarget.TargetSyntax.Value -@58 := (a._@._internal._hyg.#0 : @15) -> @57 -@59 := LexLeanTarget.TargetSyntax.Ty -@60 := #6 -@61 := @19 @60 -@62 := #5 -@63 := @61 @62 -@64 := #4 -@65 := @63 @64 -@66 := @6 @15 -@69 := (x : @6) -> @65 @66 @23 -@70 := @4 @20 -@71 := #7 -@74 := @19 @71 @60 @62 -@77 := @8 @64 @20 @15 -@78 := @74 @77 -@79 := @13 @6 -@88 := {p : @16} -> - {c : @17} -> {A : @18} -> {α : @56} -> {e : @58} -> {t : @59} -> (h : @69) -> (o : @70) -> @78 @79 -@90 := LexLeanPreservation.Rust.wt_encOption @0 -@92 := @34 @62 @64 -@106 := {c : @17} -> - {A : @18} -> - {α : @56} -> - {e : @58} -> {t : @59} -> (h : (x : @6) -> @92 @66 @23) -> (o : @70) -> @34 @60 @62 @77 @79 -@107 := @90 @1 -@108 := @43 @64 -@120 := {A : @18} -> - {α : @56} -> - {e : @58} -> {t : @59} -> (h : (x : @6) -> @108 @66 @23) -> (o : @70) -> @43 @62 @77 @79 -@121 := @107 @2 -@123 := @50 @66 @23 -@131 := {α : @56} -> {e : @58} -> {t : @59} -> (h : (x : @6) -> @123) -> (o : @70) -> @50 @77 @79 -@132 := @121 @3 -@133 := (a._@._internal._hyg.#0 : @3) -> @57 -@142 := {e : @133} -> {t : @59} -> (h : (x : @3) -> @123) -> (o : @5) -> @50 (@9 @20 @15) @79 -@143 := @132 @7 -@145 := (x : @3) -> @51 @23 -@147 := @50 (@10 @15) -@151 := {t : @59} -> (h : @145) -> (o : @5) -> @147 @79 -@152 := @143 @12 -@153 := (x : @3) -> @52 -@156 := (h : @153) -> (o : @5) -> @147 @14 -@158 := @152 @55 @6 -@160 := @50 @11 @14 -@161 := Bool -@162 := Except.{0, 0} -@163 := @162 @161 -@164 := @163 @3 -@165 := LexLeanTarget.TargetSyntax.Value.bool -@166 := LexLeanPreservation.encExcept -@167 := @166 @161 -@168 := @167 @3 -@169 := @168 @165 -@170 := @169 @7 -@171 := @170 @23 -@172 := LexLeanTarget.TargetSyntax.Ty.bool -@173 := LexLeanTarget.TargetSyntax.Ty.result -@174 := @173 @12 -@175 := @174 @172 -@176 := @165 @15 -@182 := {p : @16} -> {c : @17} -> {A : @18} -> (b : @161) -> @24 @176 @172 -@184 := LexLeanPreservation.Rust.wt_bool @0 -@189 := {c : @17} -> {A : @18} -> (b : @161) -> @36 @176 @172 -@190 := @184 @1 -@194 := {A : @18} -> (b : @161) -> @44 @176 @172 -@195 := @190 @2 -@196 := @50 @176 -@197 := @196 @172 -@198 := (b : @161) -> @197 -@200 := fun (__x : @161) => @195 @15 -@201 := (a._@._internal._hyg.#0 : @23) -> @57 -@202 := #9 -@203 := @19 @202 -@204 := #8 -@206 := @203 @204 @71 -@207 := @64 @15 -@210 := (x : @62) -> @206 @207 @23 -@211 := #10 -@217 := (x : @62) -> @19 @211 @202 @204 @207 @20 -@219 := @162 @71 @60 -@220 := #11 -@223 := @19 @220 @211 @202 -@228 := @166 @204 @71 @60 @62 @15 -@229 := @223 @228 -@231 := @173 @64 @20 -@244 := {p : @16} -> - {c : @17} -> - {A : @18} -> - {ε : @56} -> - {α : @56} -> - {ee : @201} -> - {ea : @201} -> {s : @59} -> {t : @59} -> (he : @210) -> (ha : @217) -> (x : @219) -> @229 @231 -@246 := LexLeanPreservation.Rust.wt_encExcept @0 -@271 := {c : @17} -> - {A : @18} -> - {ε : @56} -> - {α : @56} -> - {ee : @201} -> - {ea : @201} -> - {s : @59} -> - {t : @59} -> - (he : (x : @62) -> @34 @204 @71 @207 @23) -> - (ha : (x : @62) -> @34 @202 @204 @207 @20) -> (x : @219) -> @34 @211 @202 @228 @231 -@272 := @246 @1 -@293 := {A : @18} -> - {ε : @56} -> - {α : @56} -> - {ee : @201} -> - {ea : @201} -> - {s : @59} -> - {t : @59} -> - (he : (x : @62) -> @43 @71 @207 @23) -> - (ha : (x : @62) -> @43 @204 @207 @20) -> (x : @219) -> @43 @202 @228 @231 -@294 := @272 @2 -@295 := @50 @207 -@296 := @295 @23 -@297 := (x : @62) -> @296 -@298 := @295 @20 -@299 := (x : @62) -> @298 -@310 := {ε : @56} -> - {α : @56} -> - {ee : @201} -> - {ea : @201} -> {s : @59} -> {t : @59} -> (he : @297) -> (ha : @299) -> (x : @219) -> @50 @228 @231 -@311 := @294 @161 -@312 := (a._@._internal._hyg.#0 : @161) -> @57 -@313 := (x : @161) -> @296 -@328 := {α : @56} -> - {ee : @312} -> - {ea : @201} -> - {s : @59} -> - {t : @59} -> (he : @313) -> (ha : @299) -> (x : @163 @60) -> @50 (@167 @71 @60 @62 @15) @231 -@329 := @311 @3 -@330 := (x : @3) -> @298 -@342 := {ee : @312} -> - {ea : @133} -> - {s : @59} -> {t : @59} -> (he : @313) -> (ha : @330) -> (x : @164) -> @50 (@168 @60 @62 @15) @231 -@343 := @329 @165 -@345 := (x : @161) -> @196 @23 -@355 := {ea : @133} -> - {s : @59} -> {t : @59} -> (he : @345) -> (ha : @330) -> (x : @164) -> @50 (@169 @62 @15) @231 -@356 := @343 @7 -@358 := (x : @3) -> @51 @20 -@359 := @170 @15 -@360 := @50 @359 -@366 := {s : @59} -> {t : @59} -> (he : @345) -> (ha : @358) -> (x : @164) -> @360 @231 -@367 := @356 @12 -@373 := {t : @59} -> (he : @345) -> (ha : @153) -> (x : @164) -> @360 (@174 @20) -@374 := @367 @172 -@379 := (he : (x : @161) -> @197) -> (ha : @153) -> (x : @164) -> @360 @175 -@382 := @374 @200 @55 @23 -@384 := @50 @171 @175 -@385 := List.nil.{0} -@386 := List.cons.{0} -@387 := @385 @57 -@388 := @386 @57 -@390 := @388 @171 @387 -@392 := @388 @11 @390 -@395 := Prod.{0, 0} @3 @57 -@396 := 1 -@399 := Prod.mk.{0, 0} @3 @57 -@400 := @399 @396 -@401 := @400 @171 -@402 := 0 -@403 := @399 @402 -@404 := @403 @11 -@405 := @385 @395 -@406 := @386 @395 -@408 := @406 @404 @405 -@410 := @406 @401 @408 -@411 := Bool.true -@412 := LexLeanTarget.TargetSyntax.Function -@413 := LexLeanTarget.TargetSyntax.Program.functions -@414 := @413 @0 -@415 := @385 @3 -@416 := @385 @59 -@417 := LexLeanTarget.TargetSyntax.Ty.unit -@418 := LexLeanTarget.TargetSyntax.Value.unit -@421 := LexLeanTarget.TargetSyntax.Expr.value @417 @418 -@426 := LexLeanTarget.TargetSyntax.Function.mk @415 @416 @417 @421 -@431 := List.getD.{0} @412 @414 @402 @426 -@435 := fun (__e_n : @3) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.RustStd.root @15 @402 -@436 := LexLeanPreservation.Rust.WTL -@444 := {p : @16} -> {c : @17} -> {A : @18} -> @436 @6 @23 @15 @387 @416 -@446 := LexLeanPreservation.Rust.wtl_nil @0 -@447 := @436 @0 -@453 := {c : @17} -> {A : @18} -> @447 @23 @15 @387 @416 -@454 := @446 @1 -@455 := @447 @1 -@459 := {A : @18} -> @455 @15 @387 @416 -@460 := @454 @2 -@461 := @455 @2 -@462 := @461 @387 -@463 := @462 @416 -@464 := List.{0} -@465 := @464 @57 -@466 := @464 @59 -@468 := @65 @20 @6 -@473 := @436 @71 @60 @62 @6 @23 -@476 := @436 @204 @71 @60 -@478 := @388 @62 @20 -@479 := @476 @478 -@480 := @386 @59 -@482 := @480 @64 @6 -@492 := {p : @16} -> - {c : @17} -> - {A : @18} -> - {v : @57} -> {t : @59} -> {vs : @465} -> {ts : @466} -> (h : @468) -> (hs : @473) -> @479 @482 -@494 := LexLeanPreservation.Rust.wtl_cons @0 -@512 := {c : @17} -> - {A : @18} -> - {v : @57} -> - {t : @59} -> - {vs : @465} -> - {ts : @466} -> (h : @92 @20 @6) -> (hs : @447 @60 @62 @6 @23) -> @447 @71 @60 @478 @482 -@513 := @494 @1 -@528 := {A : @18} -> - {v : @57} -> - {t : @59} -> - {vs : @465} -> {ts : @466} -> (h : @108 @20 @6) -> (hs : @455 @62 @6 @23) -> @455 @60 @478 @482 -@529 := @513 @2 -@531 := @50 @20 @6 -@533 := @461 @6 @23 -@541 := {v : @57} -> - {t : @59} -> {vs : @465} -> {ts : @466} -> (h : @531) -> (hs : @533) -> @461 @478 @482 -@542 := @529 @171 -@543 := @170 @64 -@545 := @50 @543 @6 -@546 := @170 @60 -@547 := @388 @546 -@555 := {t : @59} -> {vs : @465} -> {ts : @466} -> (h : @545) -> (hs : @533) -> @461 (@547 @20) @482 -@556 := @542 @175 -@557 := @170 @20 -@559 := @50 @557 @175 -@560 := @170 @62 -@561 := @388 @560 -@563 := @461 (@561 @20) -@564 := @480 @175 -@565 := @564 @6 -@570 := {vs : @465} -> {ts : @466} -> (h : @559) -> (hs : @533) -> @563 @565 -@571 := @556 @387 -@572 := @170 @6 -@574 := @50 @572 @175 -@575 := @462 @23 -@577 := @388 @543 @387 -@582 := {ts : @466} -> (h : @574) -> (hs : @575) -> @461 @577 @565 -@583 := @571 @416 -@585 := @388 @557 @387 -@586 := @461 @585 -@587 := @564 @416 -@590 := (h : @384) -> (hs : @463) -> @586 @587 -@591 := @583 @382 -@593 := @388 @572 @387 -@595 := @461 @593 @587 -@596 := (hs : @463) -> @595 -@597 := @591 @460 -@599 := @461 @390 @587 -@600 := @529 @11 -@601 := @10 @62 -@603 := @50 @601 @6 -@604 := @10 @71 -@605 := @388 @604 -@613 := {t : @59} -> {vs : @465} -> {ts : @466} -> (h : @603) -> (hs : @533) -> @461 (@605 @20) @482 -@614 := @600 @14 -@615 := @10 @64 -@617 := @50 @615 @14 -@618 := @10 @60 -@619 := @388 @618 -@621 := @461 (@619 @20) -@622 := @480 @14 -@623 := @622 @6 -@628 := {vs : @465} -> {ts : @466} -> (h : @617) -> (hs : @533) -> @621 @623 -@629 := @614 @390 -@630 := @10 @20 -@632 := @50 @630 @14 -@633 := @586 @23 -@635 := @388 @601 @577 -@636 := @461 @635 -@640 := {ts : @466} -> (h : @632) -> (hs : @633) -> @636 @623 -@641 := @629 @587 -@643 := @388 @615 @585 -@644 := @461 @643 -@645 := @622 @587 -@648 := (h : @160) -> (hs : @595) -> @644 @645 -@649 := @641 @158 -@651 := @388 @630 @593 -@652 := @461 @651 -@654 := (hs : @599) -> @652 @645 -@655 := @649 @597 -@656 := @461 @392 -@657 := @656 @645 -@658 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.denote -@660 := @658 @6 @23 -@661 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.__fits_0 -@663 := @661 @6 @23 -@667 := @7 (Coverage.Main.options @6 @23) -@670 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.root @6 @23 -@671 := Ne.{1} -@672 := LexLeanPreservation.Obs -@673 := @671 @672 -@674 := LexLeanPreservation.Rel -@677 := @673 (@674 @23 @15) -@678 := LexLeanPreservation.Obs.stuck -@681 := (f : @161) -> (v : @57) -> @677 @678 -@683 := LexLeanPreservation.Rust.rel_ne_stuck @663 -@690 := (v : @57) -> @673 (@674 (@661 @20 @6) @15) @678 -@691 := @683 @667 -@695 := @673 (@674 @663 @667) @678 -@696 := @464 @395 -@697 := LexLeanPreservation.Rust.FunSem -@703 := (n : @3) -> @697 @202 @204 @71 @15 @60 -@704 := Eq.{1} -@705 := @4 @412 -@706 := @704 @705 -@713 := LexLeanRuntime.index (@464 @412) @412 (LexLeanRuntime.instIndexableList @412) -@717 := @706 (@713 (@413 @202) @60) -@718 := Option.some.{0} -@719 := @718 @412 -@720 := @719 @62 -@721 := @717 @720 -@725 := @436 @211 @202 @204 @62 -@726 := LexLeanTarget.TargetSyntax.Function.types -@727 := @726 @60 -@728 := @725 @727 -@729 := @4 @696 -@730 := @704 @729 -@731 := LexLeanTarget.TargetSemantics.bindAll -@732 := LexLeanTarget.TargetSyntax.Function.parameters -@737 := @730 (@731 (@732 @71) @60 @405) -@738 := @718 @696 -@739 := @738 @62 -@740 := @737 @739 -@741 := @4 @161 -@742 := @704 @741 -@743 := LexLeanPreservation.Rust.fnFallible -@746 := @742 (@743 @220 @202) -@747 := @718 @161 -@748 := @747 @62 -@749 := @746 @748 -@750 := LexLeanPreservation.RunConv -@751 := #13 -@755 := @750 @751 @211 @204 @62 -@757 := @673 @60 @678 -@758 := Exists.{1} -@759 := LexLeanPreservation.Rust.ROut -@760 := @758 @759 -@761 := And -@762 := LexLeanPreservation.Rust.RealizesFn -@766 := @761 (@762 @202 @204 @15) -@767 := LexLeanPreservation.Rust.RCI -@769 := @767 #15 -@770 := LexLeanPreservation.Rust.fnIdent -@771 := @770 @751 -@778 := (hne : @757) -> @760 (fun (ro : @759) => @766 (@769 @771 @220 @15)) -@793 := {p : @16} -> - {c : @17} -> - {A : @18} -> - {f : @3} -> - {fn : @412} -> - {args : @465} -> - {env : @696} -> - {F : @161} -> - {o : @672} -> - (hB : @703) -> - (hfn : @721) -> (hwt : @728) -> (hbind : @740) -> (hF : @749) -> (hA : @755) -> @778 -@795 := LexLeanPreservation.Rust.compose @0 -@796 := @697 @0 -@801 := (n : @3) -> @796 @204 @71 @15 @60 -@802 := @713 @414 -@805 := @706 (@802 @60) @720 -@809 := @447 @202 @204 @62 @727 -@810 := @750 @0 -@813 := @810 @211 @204 @62 -@827 := {c : @17} -> - {A : @18} -> - {f : @3} -> - {fn : @412} -> - {args : @465} -> - {env : @696} -> - {F : @161} -> - {o : @672} -> - (hB : @801) -> - (hfn : @805) -> (hwt : @809) -> (hbind : @740) -> (hF : @749) -> (hA : @813) -> @778 -@828 := @795 @1 -@829 := @796 @1 -@833 := (n : @3) -> @829 @71 @15 @60 -@836 := @455 @204 @62 @727 -@837 := @743 @1 -@840 := @742 (@837 @202) @748 -@841 := @767 @1 -@851 := (hbind : @740) -> - (hF : @840) -> (hA : @813) -> (hne : @757) -> @760 (fun (ro : @759) => @766 (@841 @771 @220 @15)) -@861 := {A : @18} -> - {f : @3} -> - {fn : @412} -> - {args : @465} -> - {env : @696} -> {F : @161} -> {o : @672} -> (hB : @833) -> (hfn : @805) -> (hwt : @836) -> @851 -@862 := @828 @2 -@864 := @829 @2 @15 -@866 := (n : @3) -> @864 @60 -@867 := @461 @62 -@868 := @867 @727 -@877 := {f : @3} -> - {fn : @412} -> - {args : @465} -> - {env : @696} -> {F : @161} -> {o : @672} -> (hB : @866) -> (hfn : @805) -> (hwt : @868) -> @851 -@878 := @862 @402 -@880 := (n : @3) -> @864 @402 -@881 := @802 @402 -@882 := @706 @881 -@883 := @882 @720 -@884 := @837 @402 -@885 := @742 @884 -@886 := @885 @748 -@887 := @810 @402 -@889 := @887 @204 @62 -@891 := @841 (@770 @402) -@899 := (hF : @886) -> (hA : @889) -> (hne : @757) -> @760 (fun (ro : @759) => @766 (@891 @220 @15)) -@908 := {fn : @412} -> - {args : @465} -> - {env : @696} -> - {F : @161} -> {o : @672} -> (hB : @880) -> (hfn : @883) -> (hwt : @868) -> (hbind : @740) -> @899 -@909 := @878 @431 -@911 := @882 (@719 @431) -@912 := @726 @431 -@913 := @867 @912 -@915 := @731 (@732 @431) -@927 := {args : @465} -> - {env : @696} -> - {F : @161} -> - {o : @672} -> - (hB : @880) -> (hfn : @911) -> (hwt : @913) -> (hbind : @730 (@915 @60 @405) @739) -> @899 -@928 := @909 @392 -@930 := @605 (@547 @387) -@932 := @461 @930 @912 -@938 := @388 (@10 @204) (@388 (@170 @71) @387) -@942 := @730 (@915 @938 @405) @739 -@948 := @388 (@10 @211) (@388 (@170 @202) @387) -@950 := @887 @948 @62 -@952 := @388 (@10 @751) -@953 := #12 -@972 := {env : @696} -> - {F : @161} -> - {o : @672} -> - (hB : @880) -> - (hfn : @911) -> - (hwt : @932) -> - (hbind : @942) -> - (hF : @886) -> - (hA : @950) -> - (hne : @757) -> @760 (fun (ro : @759) => @766 (@891 (@952 (@388 (@170 @953) @387)) @15)) -@973 := @928 @410 -@975 := @619 (@561 @387) -@977 := @461 @975 @912 -@988 := @730 (@915 @930 @405) (@738 (@406 (@400 @546) (@406 (@403 @604) @405))) -@994 := @388 (@10 @202) (@388 (@170 @204) @387) -@1016 := {F : @161} -> - {o : @672} -> - (hB : @880) -> - (hfn : @911) -> - (hwt : @977) -> - (hbind : @988) -> - (hF : @886) -> - (hA : @887 @994 @62) -> - (hne : @757) -> - @760 (fun (ro : @759) => @766 (@891 (@388 (@10 @953) (@388 (@170 @220) @387)) @15)) -@1017 := @973 @411 -@1018 := @636 @912 -@1029 := @730 (@915 @975 @405) (@738 (@406 (@400 @560) (@406 (@403 @618) @405))) -@1031 := @885 (@747 @411) -@1033 := @887 @938 @62 -@1034 := @762 @411 -@1056 := {o : @672} -> - (hB : @880) -> - (hfn : @911) -> - (hwt : @1018) -> - (hbind : @1029) -> - (hF : @1031) -> - (hA : @1033) -> - (hne : @757) -> - @760 - (fun (ro : @759) => @761 (@1034 @204 @15) (@891 (@388 (@10 @220) (@388 (@170 @211) @387)) @15)) -@1057 := @1017 @660 -@1058 := @644 @912 -@1069 := @730 (@915 @635 @405) (@738 (@406 (@400 @543) (@406 (@403 @601) @405))) -@1070 := @887 @930 -@1072 := @658 @71 @60 -@1073 := @1070 @1072 -@1075 := @658 @204 @71 -@1094 := (hB : @880) -> - (hfn : @911) -> - (hwt : @1058) -> - (hbind : @1069) -> - (hF : @1031) -> - (hA : @1073) -> - (hne : @673 @1075 @678) -> - @760 (fun (ro : @759) => @761 (@1034 (@658 @211 @202) @15) (@891 @948 @15)) -@1095 := @1057 @435 -@1096 := @652 @912 -@1107 := @730 (@915 @643 @405) (@738 (@406 (@400 @557) (@406 (@403 @615) @405))) -@1108 := @887 @975 -@1110 := @658 @60 @62 -@1129 := (hfn : @911) -> - (hwt : @1096) -> - (hbind : @1107) -> - (hF : @1031) -> - (hA : @1108 @1110) -> - (hne : @673 @1072 @678) -> - @760 (fun (ro : @759) => @761 (@1034 (@658 @202 @204) @15) (@891 @994 @15)) -@1130 := Eq.refl.{1} -@1133 := @1095 (@1130 @705 @881) -@1134 := @656 @912 -@1145 := @730 (@915 @651 @405) (@738 (@406 (@400 @572) (@406 (@403 @630) @405))) -@1146 := @887 @635 -@1148 := @658 @62 @64 -@1164 := (hwt : @1134) -> - (hbind : @1145) -> - (hF : @1031) -> - (hA : @1146 @1148) -> - (hne : @673 @1110 @678) -> @760 (fun (ro : @759) => @761 (@1034 @1075 @15) (@891 @938 @15)) -@1165 := @1133 @655 -@1167 := @915 @392 @405 -@1170 := @730 @1167 (@738 @410) -@1171 := @887 @643 -@1173 := @658 @64 @20 -@1188 := (hbind : @1170) -> - (hF : @1031) -> - (hA : @1171 @1173) -> - (hne : @673 @1148 @678) -> @760 (fun (ro : @759) => @761 (@1034 @1072 @15) (@891 @930 @15)) -@1191 := @1165 (@1130 @729 @1167) -@1192 := @887 @651 -@1194 := @658 @20 @6 -@1208 := (hF : @1031) -> - (hA : @1192 @1194) -> - (hne : @673 @1173 @678) -> @760 (fun (ro : @759) => @761 (@1034 @1110 @15) (@891 @975 @15)) -@1211 := @1191 (@1130 @741 @884) -@1225 := (hA : @887 @392 @660) -> - (hne : @673 @1194 @678) -> @760 (fun (ro : @759) => @761 (@1034 @1148 @15) (@891 @635 @15)) -@1226 := @1211 @670 -@1237 := (hne : @673 @660 @678) -> @760 (fun (ro : @759) => @761 (@1034 @1173 @15) (@891 @643 @15)) -@1238 := @1226 @691 -@1244 := @761 (@1034 @1194 @15) (@891 @651 @15) -@1246 := @760 (fun (ro : @759) => @1244) -@1248 := @760 (fun (__e_ro : @759) => @1244) -@1249 := LexLeanPreservation.Rust.RepresentableL -@1250 := @10 @23 -@1252 := @388 @359 @387 -@1255 := @1249 (@388 @1250 @1252) -@1256 := (__e_hrep : @1255) -> @1248 -@1257 := fun (__e_hrep : @1255) => @1238 -@1258 := (r : @164) -> @1256 -@1259 := fun (r : @164) => @1257 -@1260 := (v : @5) -> @1258 -@1261 := fun (v : @5) => @1259 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R15/RustCore.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R15/RustCore.lean deleted file mode 100644 index 2dc70b986..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R15/RustCore.lean +++ /dev/null @@ -1,33 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.RustCore -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1], types := [(.option .nat), (.result .nat .bool)], result := .nat, - body := (.prim .natAdd [(.«match» .nat (.var 0) [(.arm .none [] (.value .nat (.nat 0))), (.arm .some [2] (.var 2))]), (.«match» .nat (.var 1) [(.arm .ok [3] (.var 3)), (.arm .error [4] (.cond (.var 4) (.value .nat (.nat 1)) (.value .nat (.nat 2))))])]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .core, items := [ - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.option .nat) }, { pattern := (.bind (.generated .binding 1)), type := (.result .nat .bool) }] (.fallible .nat) (.mk [(.mk (.bind (.generated .operand 3)) none (.block (.mk [(.mk (.bind (.generated .holder 1)) none (.copy (.generated .binding 0)))] (.matchOn (.move (.generated .holder 1)) [(.mk .none (.mk [] (.lit (.nat 0)))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.copy (.generated .binding 2))))])))), (.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .holder 2)) none (.copy (.generated .binding 1)))] (.matchOn (.move (.generated .holder 2)) [(.mk (.ok (.bind (.generated .binding 3))) (.mk [] (.copy (.generated .binding 3)))), (.mk (.err (.bind (.generated .binding 4))) (.mk [] (.cond (.copy (.generated .binding 4)) (.mk [] (.lit (.nat 1))) (.mk [] (.lit (.nat 2))))))]))))] (.call (.runtime .natAdd) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false)))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 3)) none (.block (.mk [(.mk (.bind (.generated .holder 1)) none (.copy (.generated .binding 0)))] (.matchOn (.move (.generated .holder 1)) [(.mk .none (.mk [] (.lit (.nat 0)))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.copy (.generated .binding 2))))])))), (.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .holder 2)) none (.copy (.generated .binding 1)))] (.matchOn (.move (.generated .holder 2)) [(.mk (.ok (.bind (.generated .binding 3))) (.mk [] (.copy (.generated .binding 3)))), (.mk (.err (.bind (.generated .binding 4))) (.mk [] (.cond (.copy (.generated .binding 4)) (.mk [] (.lit (.nat 1))) (.mk [] (.lit (.nat 2))))))]))))], (.call (.runtime .natAdd) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false), [(1, (.result .nat .bool), (some 1)), (0, (.option .nat), (some 0))], rfl, rfl, - (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 1)) none (.copy (.generated .binding 0)))]) (tail := (.matchOn (.move (.generated .holder 1)) [(.mk .none (.mk [] (.lit (.nat 0)))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.copy (.generated .binding 2))))])) (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.result .nat .bool), (some 1)), (0, (.option .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.nat 0))) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, (.result .nat .bool), (some 1)), (0, (.option .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.copy (.generated .binding 2))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.bOfE (Corr.value rfl rfl))) rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 2)) none (.copy (.generated .binding 1)))]) (tail := (.matchOn (.move (.generated .holder 2)) [(.mk (.ok (.bind (.generated .binding 3))) (.mk [] (.copy (.generated .binding 3)))), (.mk (.err (.bind (.generated .binding 4))) (.mk [] (.cond (.copy (.generated .binding 4)) (.mk [] (.lit (.nat 1))) (.mk [] (.lit (.nat 2))))))])) (Corr.matchArms (st := (.result .nat .bool)) (U := []) (view := false) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (1, (.result .nat .bool), (some 1)), (0, (.option .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.copy (.generated .binding 3))) (Corr.mCons (Γ' := [(4, .bool, (some 4)), (1, (.result .nat .bool), (some 1)), (0, (.option .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.copy (.generated .binding 4)) (.mk [] (.lit (.nat 1))) (.mk [] (.lit (.nat 2))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.copy (.generated .binding 4))) (lk := []) (Corr.bOfE (Corr.var rfl rfl)) (Corr.kIf (la := []) (ta := (.lit (.nat 1))) (lb := []) (tb := (.lit (.nat 2))) (Corr.bOfE (Corr.value rfl rfl)) (Corr.bOfE (Corr.value rfl rfl))))) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | _ + 1 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.RustCore diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R15/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R15/RustStd.lean deleted file mode 100644 index a2900a27f..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R15/RustStd.lean +++ /dev/null @@ -1,33 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1], types := [(.option .nat), (.result .nat .bool)], result := .nat, - body := (.prim .natAdd [(.«match» .nat (.var 0) [(.arm .none [] (.value .nat (.nat 0))), (.arm .some [2] (.var 2))]), (.«match» .nat (.var 1) [(.arm .ok [3] (.var 3)), (.arm .error [4] (.cond (.var 4) (.value .nat (.nat 1)) (.value .nat (.nat 2))))])]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.option .nat) }, { pattern := (.bind (.generated .binding 1)), type := (.result .nat .bool) }] (.fallible .nat) (.mk [(.mk (.bind (.generated .operand 3)) none (.block (.mk [(.mk (.bind (.generated .holder 1)) none (.copy (.generated .binding 0)))] (.matchOn (.move (.generated .holder 1)) [(.mk .none (.mk [] (.lit (.nat 0)))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.copy (.generated .binding 2))))])))), (.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .holder 2)) none (.copy (.generated .binding 1)))] (.matchOn (.move (.generated .holder 2)) [(.mk (.ok (.bind (.generated .binding 3))) (.mk [] (.copy (.generated .binding 3)))), (.mk (.err (.bind (.generated .binding 4))) (.mk [] (.cond (.copy (.generated .binding 4)) (.mk [] (.lit (.nat 1))) (.mk [] (.lit (.nat 2))))))]))))] (.call (.runtime .natAdd) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false)))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 3)) none (.block (.mk [(.mk (.bind (.generated .holder 1)) none (.copy (.generated .binding 0)))] (.matchOn (.move (.generated .holder 1)) [(.mk .none (.mk [] (.lit (.nat 0)))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.copy (.generated .binding 2))))])))), (.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .holder 2)) none (.copy (.generated .binding 1)))] (.matchOn (.move (.generated .holder 2)) [(.mk (.ok (.bind (.generated .binding 3))) (.mk [] (.copy (.generated .binding 3)))), (.mk (.err (.bind (.generated .binding 4))) (.mk [] (.cond (.copy (.generated .binding 4)) (.mk [] (.lit (.nat 1))) (.mk [] (.lit (.nat 2))))))]))))], (.call (.runtime .natAdd) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false), [(1, (.result .nat .bool), (some 1)), (0, (.option .nat), (some 0))], rfl, rfl, - (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 1)) none (.copy (.generated .binding 0)))]) (tail := (.matchOn (.move (.generated .holder 1)) [(.mk .none (.mk [] (.lit (.nat 0)))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.copy (.generated .binding 2))))])) (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.result .nat .bool), (some 1)), (0, (.option .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.nat 0))) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, (.result .nat .bool), (some 1)), (0, (.option .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.copy (.generated .binding 2))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.bOfE (Corr.value rfl rfl))) rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 2)) none (.copy (.generated .binding 1)))]) (tail := (.matchOn (.move (.generated .holder 2)) [(.mk (.ok (.bind (.generated .binding 3))) (.mk [] (.copy (.generated .binding 3)))), (.mk (.err (.bind (.generated .binding 4))) (.mk [] (.cond (.copy (.generated .binding 4)) (.mk [] (.lit (.nat 1))) (.mk [] (.lit (.nat 2))))))])) (Corr.matchArms (st := (.result .nat .bool)) (U := []) (view := false) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (1, (.result .nat .bool), (some 1)), (0, (.option .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.copy (.generated .binding 3))) (Corr.mCons (Γ' := [(4, .bool, (some 4)), (1, (.result .nat .bool), (some 1)), (0, (.option .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.copy (.generated .binding 4)) (.mk [] (.lit (.nat 1))) (.mk [] (.lit (.nat 2))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.copy (.generated .binding 4))) (lk := []) (Corr.bOfE (Corr.var rfl rfl)) (Corr.kIf (la := []) (ta := (.lit (.nat 1))) (lb := []) (tb := (.lit (.nat 2))) (Corr.bOfE (Corr.value rfl rfl)) (Corr.bOfE (Corr.value rfl rfl))))) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | _ + 1 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R16/Compose/RustCore.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R16/Compose/RustCore.lex.tex deleted file mode 100644 index 67b0f955d..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R16/Compose/RustCore.lex.tex +++ /dev/null @@ -1,424 +0,0 @@ -\begin{lexlean}{RustCore} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.Compose.RustCore} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.RustCore, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.Compose.RustCore.root : @844 := @845 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.Compose.RustCore.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.RustCore.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.RustCore.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.RustCore.flags -@3 := Nat -@4 := #1 -@5 := LexLeanTarget.TargetSyntax.Value.nat -@6 := @5 @4 -@7 := LexLeanTarget.TargetSyntax.Ty.nat -@8 := LexLeanTarget.TargetSyntax.Program -@9 := LexLeanPreservation.Rust.RCrate -@10 := LexLeanPreservation.Rust.Flags -@11 := LexLeanPreservation.Rust.WT -@12 := #3 -@13 := @11 @12 -@14 := #2 -@16 := @13 @14 @4 -@17 := #0 -@18 := @5 @17 -@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 -@26 := LexLeanPreservation.Rust.wt_nat @0 -@27 := @11 @0 -@34 := {c : @9} -> {A : @10} -> (n : @3) -> @27 @14 @4 @18 @7 -@35 := @26 @1 -@36 := @27 @1 -@41 := {A : @10} -> (n : @3) -> @36 @4 @18 @7 -@42 := @35 @2 -@43 := @36 @2 -@46 := (n : @3) -> @43 @18 @7 -@47 := @42 @4 -@49 := @43 @6 @7 -@50 := LexLeanTarget.TargetSyntax.Value -@51 := List.nil.{0} -@52 := List.cons.{0} -@53 := @51 @50 -@54 := @52 @50 -@56 := @54 @6 @53 -@59 := Prod.{0, 0} @3 @50 -@60 := 0 -@64 := Prod.mk.{0, 0} @3 @50 @60 -@65 := @64 @6 -@66 := @51 @59 -@67 := @52 @59 -@69 := @67 @65 @66 -@70 := Bool.true -@71 := LexLeanTarget.TargetSyntax.Function -@72 := LexLeanTarget.TargetSyntax.Program.functions -@73 := @72 @0 -@74 := LexLeanTarget.TargetSyntax.Ty -@75 := @51 @3 -@76 := @51 @74 -@77 := LexLeanTarget.TargetSyntax.Ty.unit -@78 := LexLeanTarget.TargetSyntax.Value.unit -@81 := LexLeanTarget.TargetSyntax.Expr.value @77 @78 -@86 := LexLeanTarget.TargetSyntax.Function.mk @75 @76 @77 @81 -@91 := List.getD.{0} @71 @73 @60 @86 -@95 := fun (__e_n : @3) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.RustCore.root @17 @60 -@96 := LexLeanPreservation.Rust.WTL -@104 := {p : @8} -> {c : @9} -> {A : @10} -> @96 @14 @4 @17 @53 @76 -@106 := LexLeanPreservation.Rust.wtl_nil @0 -@107 := @96 @0 -@113 := {c : @9} -> {A : @10} -> @107 @4 @17 @53 @76 -@114 := @106 @1 -@115 := @107 @1 -@119 := {A : @10} -> @115 @17 @53 @76 -@120 := @114 @2 -@121 := @115 @2 -@122 := @121 @53 -@123 := @122 @76 -@124 := List.{0} -@125 := @124 @50 -@126 := @124 @74 -@127 := #6 -@128 := @11 @127 -@129 := #5 -@130 := @128 @129 -@131 := #4 -@134 := @130 @131 @12 @14 -@135 := #7 -@140 := @96 @135 @127 @129 @14 @4 -@141 := #8 -@144 := @96 @141 @135 @127 -@146 := @54 @129 @12 -@147 := @144 @146 -@148 := @52 @74 -@150 := @148 @131 @14 -@160 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {v : @50} -> {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @134) -> (hs : @140) -> @147 @150 -@162 := LexLeanPreservation.Rust.wtl_cons @0 -@182 := {c : @9} -> - {A : @10} -> - {v : @50} -> - {t : @74} -> - {vs : @125} -> - {ts : @126} -> - (h : @27 @129 @131 @12 @14) -> (hs : @107 @127 @129 @14 @4) -> @107 @135 @127 @146 @150 -@183 := @162 @1 -@199 := {A : @10} -> - {v : @50} -> - {t : @74} -> - {vs : @125} -> - {ts : @126} -> (h : @36 @131 @12 @14) -> (hs : @115 @129 @14 @4) -> @115 @127 @146 @150 -@200 := @183 @2 -@202 := @43 @12 @14 -@204 := @121 @14 @4 -@212 := {v : @50} -> - {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @202) -> (hs : @204) -> @121 @146 @150 -@213 := @200 @6 -@214 := @5 @131 -@216 := @43 @214 @14 -@217 := @5 @127 -@218 := @54 @217 -@226 := {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @216) -> (hs : @204) -> @121 (@218 @12) @150 -@227 := @213 @7 -@228 := @5 @12 -@230 := @43 @228 @7 -@231 := @5 @129 -@232 := @54 @231 -@234 := @121 (@232 @12) -@235 := @148 @7 -@236 := @235 @14 -@241 := {vs : @125} -> {ts : @126} -> (h : @230) -> (hs : @204) -> @234 @236 -@242 := @227 @53 -@243 := @5 @14 -@245 := @43 @243 @7 -@246 := @122 @4 -@248 := @54 @214 @53 -@249 := @121 @248 -@253 := {ts : @126} -> (h : @245) -> (hs : @246) -> @249 @236 -@254 := @242 @76 -@256 := @54 @228 @53 -@257 := @121 @256 -@258 := @235 @76 -@261 := (h : @49) -> (hs : @123) -> @257 @258 -@262 := @254 @47 -@264 := @54 @243 @53 -@265 := @121 @264 -@267 := (hs : @123) -> @265 @258 -@268 := @262 @120 -@269 := @121 @56 -@270 := @269 @258 -@271 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.denote -@272 := @271 @4 -@273 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.__fits_0 -@274 := @273 @4 -@276 := Coverage.Main.builders @4 -@277 := Option.{0} -@278 := @277 @3 -@279 := Unit -@282 := Except.{0, 0} @279 @3 -@285 := LexLeanPreservation.encOption @3 @5 -@286 := LexLeanPreservation.encUnit -@291 := LexLeanPreservation.encExcept @279 @3 @286 @5 -@297 := LexLeanPreservation.encPair @278 @282 @285 @291 @276 -@299 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.root @4 -@300 := Bool -@301 := Ne.{1} -@302 := LexLeanPreservation.Obs -@303 := @301 @302 -@304 := LexLeanPreservation.Rel -@307 := @303 (@304 @4 @17) -@308 := LexLeanPreservation.Obs.stuck -@311 := (f : @300) -> (v : @50) -> @307 @308 -@313 := LexLeanPreservation.Rust.rel_ne_stuck @274 -@319 := (v : @50) -> @303 (@304 (@273 @14) @17) @308 -@320 := @313 @297 -@324 := @303 (@304 @274 @297) @308 -@325 := @124 @59 -@326 := LexLeanPreservation.Rust.FunSem -@327 := #9 -@333 := (n : @3) -> @326 @327 @141 @135 @17 @127 -@334 := Eq.{1} -@335 := @277 @71 -@336 := @334 @335 -@343 := LexLeanRuntime.index (@124 @71) @71 (LexLeanRuntime.instIndexableList @71) -@347 := @336 (@343 (@72 @327) @127) -@348 := Option.some.{0} -@349 := @348 @71 -@350 := @349 @129 -@351 := @347 @350 -@352 := #10 -@356 := @96 @352 @327 @141 @129 -@357 := LexLeanTarget.TargetSyntax.Function.types -@358 := @357 @127 -@359 := @356 @358 -@360 := @277 @325 -@361 := @334 @360 -@362 := LexLeanTarget.TargetSemantics.bindAll -@363 := LexLeanTarget.TargetSyntax.Function.parameters -@368 := @361 (@362 (@363 @135) @127 @66) -@369 := @348 @325 -@370 := @369 @129 -@371 := @368 @370 -@372 := @277 @300 -@373 := @334 @372 -@374 := LexLeanPreservation.Rust.fnFallible -@375 := #11 -@378 := @373 (@374 @375 @327) -@379 := @348 @300 -@380 := @379 @129 -@381 := @378 @380 -@382 := LexLeanPreservation.RunConv -@383 := #13 -@387 := @382 @383 @352 @141 @129 -@389 := @303 @127 @308 -@390 := Exists.{1} -@391 := LexLeanPreservation.Rust.ROut -@392 := @390 @391 -@393 := And -@394 := LexLeanPreservation.Rust.RealizesFn -@398 := @393 (@394 @327 @141 @17) -@399 := LexLeanPreservation.Rust.RCI -@401 := @399 #15 -@402 := LexLeanPreservation.Rust.fnIdent -@403 := @402 @383 -@410 := (hne : @389) -> @392 (fun (ro : @391) => @398 (@401 @403 @375 @17)) -@425 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {f : @3} -> - {fn : @71} -> - {args : @125} -> - {env : @325} -> - {F : @300} -> - {o : @302} -> - (hB : @333) -> - (hfn : @351) -> (hwt : @359) -> (hbind : @371) -> (hF : @381) -> (hA : @387) -> @410 -@427 := LexLeanPreservation.Rust.compose @0 -@428 := @326 @0 -@433 := (n : @3) -> @428 @141 @135 @17 @127 -@434 := @343 @73 -@437 := @336 (@434 @127) @350 -@441 := @107 @327 @141 @129 @358 -@442 := @382 @0 -@445 := @442 @352 @141 @129 -@459 := {c : @9} -> - {A : @10} -> - {f : @3} -> - {fn : @71} -> - {args : @125} -> - {env : @325} -> - {F : @300} -> - {o : @302} -> - (hB : @433) -> - (hfn : @437) -> (hwt : @441) -> (hbind : @371) -> (hF : @381) -> (hA : @445) -> @410 -@460 := @427 @1 -@461 := @428 @1 -@465 := (n : @3) -> @461 @135 @17 @127 -@468 := @115 @141 @129 @358 -@469 := @374 @1 -@472 := @373 (@469 @327) @380 -@473 := @399 @1 -@483 := (hbind : @371) -> - (hF : @472) -> (hA : @445) -> (hne : @389) -> @392 (fun (ro : @391) => @398 (@473 @403 @375 @17)) -@493 := {A : @10} -> - {f : @3} -> - {fn : @71} -> - {args : @125} -> - {env : @325} -> {F : @300} -> {o : @302} -> (hB : @465) -> (hfn : @437) -> (hwt : @468) -> @483 -@494 := @460 @2 -@496 := @461 @2 @17 -@498 := (n : @3) -> @496 @127 -@499 := @121 @129 -@500 := @499 @358 -@509 := {f : @3} -> - {fn : @71} -> - {args : @125} -> - {env : @325} -> {F : @300} -> {o : @302} -> (hB : @498) -> (hfn : @437) -> (hwt : @500) -> @483 -@510 := @494 @60 -@512 := (n : @3) -> @496 @60 -@513 := @434 @60 -@514 := @336 @513 -@515 := @514 @350 -@516 := @469 @60 -@517 := @373 @516 -@518 := @517 @380 -@519 := @442 @60 -@521 := @519 @141 @129 -@523 := @473 (@402 @60) -@531 := (hF : @518) -> (hA : @521) -> (hne : @389) -> @392 (fun (ro : @391) => @398 (@523 @375 @17)) -@540 := {fn : @71} -> - {args : @125} -> - {env : @325} -> - {F : @300} -> {o : @302} -> (hB : @512) -> (hfn : @515) -> (hwt : @500) -> (hbind : @371) -> @531 -@541 := @510 @91 -@543 := @514 (@349 @91) -@544 := @357 @91 -@545 := @499 @544 -@547 := @362 (@363 @91) -@559 := {args : @125} -> - {env : @325} -> - {F : @300} -> - {o : @302} -> - (hB : @512) -> (hfn : @543) -> (hwt : @545) -> (hbind : @361 (@547 @127 @66) @370) -> @531 -@560 := @541 @56 -@561 := @218 @53 -@563 := @121 @561 @544 -@566 := @54 (@5 @135) @53 -@570 := @361 (@547 @566 @66) @370 -@573 := @54 (@5 @327) @53 -@594 := {env : @325} -> - {F : @300} -> - {o : @302} -> - (hB : @512) -> - (hfn : @543) -> - (hwt : @563) -> - (hbind : @570) -> - (hF : @518) -> - (hA : @519 @573 @129) -> - (hne : @389) -> @392 (fun (ro : @391) => @398 (@523 (@54 (@5 #12) @53) @17)) -@595 := @560 @69 -@596 := @232 @53 -@598 := @121 @596 @544 -@606 := @361 (@547 @561 @66) (@369 (@67 (@64 @217) @66)) -@609 := @54 (@5 @141) @53 -@628 := {F : @300} -> - {o : @302} -> - (hB : @512) -> - (hfn : @543) -> - (hwt : @598) -> - (hbind : @606) -> - (hF : @518) -> - (hA : @519 @609 @129) -> - (hne : @389) -> @392 (fun (ro : @391) => @398 (@523 (@54 (@5 @375) @53) @17)) -@629 := @595 @70 -@630 := @249 @544 -@638 := @361 (@547 @596 @66) (@369 (@67 (@64 @231) @66)) -@640 := @517 (@379 @70) -@642 := @519 @566 @129 -@643 := @394 @70 -@662 := {o : @302} -> - (hB : @512) -> - (hfn : @543) -> - (hwt : @630) -> - (hbind : @638) -> - (hF : @640) -> - (hA : @642) -> - (hne : @389) -> @392 (fun (ro : @391) => @393 (@643 @141 @17) (@523 (@54 (@5 @352) @53) @17)) -@663 := @629 @272 -@664 := @257 @544 -@672 := @361 (@547 @248 @66) (@369 (@67 (@64 @214) @66)) -@673 := @519 @561 -@674 := @271 @127 -@675 := @673 @674 -@676 := @271 @135 -@694 := (hB : @512) -> - (hfn : @543) -> - (hwt : @664) -> - (hbind : @672) -> - (hF : @640) -> - (hA : @675) -> - (hne : @303 @676 @308) -> @392 (fun (ro : @391) => @393 (@643 (@271 @327) @17) (@523 @573 @17)) -@695 := @663 @95 -@696 := @265 @544 -@704 := @361 (@547 @256 @66) (@369 (@67 (@64 @228) @66)) -@705 := @519 @596 -@706 := @271 @129 -@724 := (hfn : @543) -> - (hwt : @696) -> - (hbind : @704) -> - (hF : @640) -> - (hA : @705 @706) -> - (hne : @303 @674 @308) -> @392 (fun (ro : @391) => @393 (@643 (@271 @141) @17) (@523 @609 @17)) -@725 := Eq.refl.{1} -@728 := @695 (@725 @335 @513) -@729 := @269 @544 -@737 := @361 (@547 @264 @66) (@369 (@67 (@64 @243) @66)) -@738 := @519 @248 -@739 := @271 @131 -@755 := (hwt : @729) -> - (hbind : @737) -> - (hF : @640) -> - (hA : @738 @739) -> - (hne : @303 @706 @308) -> @392 (fun (ro : @391) => @393 (@643 @676 @17) (@523 @566 @17)) -@756 := @728 @268 -@758 := @547 @56 @66 -@761 := @361 @758 (@369 @69) -@762 := @519 @256 -@763 := @271 @12 -@778 := (hbind : @761) -> - (hF : @640) -> - (hA : @762 @763) -> - (hne : @303 @739 @308) -> @392 (fun (ro : @391) => @393 (@643 @674 @17) (@523 @561 @17)) -@781 := @756 (@725 @360 @758) -@782 := @519 @264 -@783 := @271 @14 -@797 := (hF : @640) -> - (hA : @782 @783) -> - (hne : @303 @763 @308) -> @392 (fun (ro : @391) => @393 (@643 @706 @17) (@523 @596 @17)) -@800 := @781 (@725 @372 @516) -@814 := (hA : @519 @56 @272) -> - (hne : @303 @783 @308) -> @392 (fun (ro : @391) => @393 (@643 @739 @17) (@523 @248 @17)) -@815 := @800 @299 -@826 := (hne : @303 @272 @308) -> @392 (fun (ro : @391) => @393 (@643 @763 @17) (@523 @256 @17)) -@827 := @815 @320 -@833 := @393 (@643 @783 @17) (@523 @264 @17) -@835 := @392 (fun (ro : @391) => @833) -@837 := @392 (fun (__e_ro : @391) => @833) -@841 := LexLeanPreservation.Rust.RepresentableL (@54 @18 @53) -@842 := (__e_hrep : @841) -> @837 -@843 := fun (__e_hrep : @841) => @827 -@844 := (n : @3) -> @842 -@845 := fun (n : @3) => @843 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R16/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R16/Compose/RustStd.lex.tex deleted file mode 100644 index 6949fcfff..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R16/Compose/RustStd.lex.tex +++ /dev/null @@ -1,424 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.Compose.RustStd.root : @844 := @845 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.RustStd.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.RustStd.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.RustStd.flags -@3 := Nat -@4 := #1 -@5 := LexLeanTarget.TargetSyntax.Value.nat -@6 := @5 @4 -@7 := LexLeanTarget.TargetSyntax.Ty.nat -@8 := LexLeanTarget.TargetSyntax.Program -@9 := LexLeanPreservation.Rust.RCrate -@10 := LexLeanPreservation.Rust.Flags -@11 := LexLeanPreservation.Rust.WT -@12 := #3 -@13 := @11 @12 -@14 := #2 -@16 := @13 @14 @4 -@17 := #0 -@18 := @5 @17 -@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 -@26 := LexLeanPreservation.Rust.wt_nat @0 -@27 := @11 @0 -@34 := {c : @9} -> {A : @10} -> (n : @3) -> @27 @14 @4 @18 @7 -@35 := @26 @1 -@36 := @27 @1 -@41 := {A : @10} -> (n : @3) -> @36 @4 @18 @7 -@42 := @35 @2 -@43 := @36 @2 -@46 := (n : @3) -> @43 @18 @7 -@47 := @42 @4 -@49 := @43 @6 @7 -@50 := LexLeanTarget.TargetSyntax.Value -@51 := List.nil.{0} -@52 := List.cons.{0} -@53 := @51 @50 -@54 := @52 @50 -@56 := @54 @6 @53 -@59 := Prod.{0, 0} @3 @50 -@60 := 0 -@64 := Prod.mk.{0, 0} @3 @50 @60 -@65 := @64 @6 -@66 := @51 @59 -@67 := @52 @59 -@69 := @67 @65 @66 -@70 := Bool.true -@71 := LexLeanTarget.TargetSyntax.Function -@72 := LexLeanTarget.TargetSyntax.Program.functions -@73 := @72 @0 -@74 := LexLeanTarget.TargetSyntax.Ty -@75 := @51 @3 -@76 := @51 @74 -@77 := LexLeanTarget.TargetSyntax.Ty.unit -@78 := LexLeanTarget.TargetSyntax.Value.unit -@81 := LexLeanTarget.TargetSyntax.Expr.value @77 @78 -@86 := LexLeanTarget.TargetSyntax.Function.mk @75 @76 @77 @81 -@91 := List.getD.{0} @71 @73 @60 @86 -@95 := fun (__e_n : @3) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.RustStd.root @17 @60 -@96 := LexLeanPreservation.Rust.WTL -@104 := {p : @8} -> {c : @9} -> {A : @10} -> @96 @14 @4 @17 @53 @76 -@106 := LexLeanPreservation.Rust.wtl_nil @0 -@107 := @96 @0 -@113 := {c : @9} -> {A : @10} -> @107 @4 @17 @53 @76 -@114 := @106 @1 -@115 := @107 @1 -@119 := {A : @10} -> @115 @17 @53 @76 -@120 := @114 @2 -@121 := @115 @2 -@122 := @121 @53 -@123 := @122 @76 -@124 := List.{0} -@125 := @124 @50 -@126 := @124 @74 -@127 := #6 -@128 := @11 @127 -@129 := #5 -@130 := @128 @129 -@131 := #4 -@134 := @130 @131 @12 @14 -@135 := #7 -@140 := @96 @135 @127 @129 @14 @4 -@141 := #8 -@144 := @96 @141 @135 @127 -@146 := @54 @129 @12 -@147 := @144 @146 -@148 := @52 @74 -@150 := @148 @131 @14 -@160 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {v : @50} -> {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @134) -> (hs : @140) -> @147 @150 -@162 := LexLeanPreservation.Rust.wtl_cons @0 -@182 := {c : @9} -> - {A : @10} -> - {v : @50} -> - {t : @74} -> - {vs : @125} -> - {ts : @126} -> - (h : @27 @129 @131 @12 @14) -> (hs : @107 @127 @129 @14 @4) -> @107 @135 @127 @146 @150 -@183 := @162 @1 -@199 := {A : @10} -> - {v : @50} -> - {t : @74} -> - {vs : @125} -> - {ts : @126} -> (h : @36 @131 @12 @14) -> (hs : @115 @129 @14 @4) -> @115 @127 @146 @150 -@200 := @183 @2 -@202 := @43 @12 @14 -@204 := @121 @14 @4 -@212 := {v : @50} -> - {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @202) -> (hs : @204) -> @121 @146 @150 -@213 := @200 @6 -@214 := @5 @131 -@216 := @43 @214 @14 -@217 := @5 @127 -@218 := @54 @217 -@226 := {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @216) -> (hs : @204) -> @121 (@218 @12) @150 -@227 := @213 @7 -@228 := @5 @12 -@230 := @43 @228 @7 -@231 := @5 @129 -@232 := @54 @231 -@234 := @121 (@232 @12) -@235 := @148 @7 -@236 := @235 @14 -@241 := {vs : @125} -> {ts : @126} -> (h : @230) -> (hs : @204) -> @234 @236 -@242 := @227 @53 -@243 := @5 @14 -@245 := @43 @243 @7 -@246 := @122 @4 -@248 := @54 @214 @53 -@249 := @121 @248 -@253 := {ts : @126} -> (h : @245) -> (hs : @246) -> @249 @236 -@254 := @242 @76 -@256 := @54 @228 @53 -@257 := @121 @256 -@258 := @235 @76 -@261 := (h : @49) -> (hs : @123) -> @257 @258 -@262 := @254 @47 -@264 := @54 @243 @53 -@265 := @121 @264 -@267 := (hs : @123) -> @265 @258 -@268 := @262 @120 -@269 := @121 @56 -@270 := @269 @258 -@271 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.denote -@272 := @271 @4 -@273 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.__fits_0 -@274 := @273 @4 -@276 := Coverage.Main.builders @4 -@277 := Option.{0} -@278 := @277 @3 -@279 := Unit -@282 := Except.{0, 0} @279 @3 -@285 := LexLeanPreservation.encOption @3 @5 -@286 := LexLeanPreservation.encUnit -@291 := LexLeanPreservation.encExcept @279 @3 @286 @5 -@297 := LexLeanPreservation.encPair @278 @282 @285 @291 @276 -@299 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.root @4 -@300 := Bool -@301 := Ne.{1} -@302 := LexLeanPreservation.Obs -@303 := @301 @302 -@304 := LexLeanPreservation.Rel -@307 := @303 (@304 @4 @17) -@308 := LexLeanPreservation.Obs.stuck -@311 := (f : @300) -> (v : @50) -> @307 @308 -@313 := LexLeanPreservation.Rust.rel_ne_stuck @274 -@319 := (v : @50) -> @303 (@304 (@273 @14) @17) @308 -@320 := @313 @297 -@324 := @303 (@304 @274 @297) @308 -@325 := @124 @59 -@326 := LexLeanPreservation.Rust.FunSem -@327 := #9 -@333 := (n : @3) -> @326 @327 @141 @135 @17 @127 -@334 := Eq.{1} -@335 := @277 @71 -@336 := @334 @335 -@343 := LexLeanRuntime.index (@124 @71) @71 (LexLeanRuntime.instIndexableList @71) -@347 := @336 (@343 (@72 @327) @127) -@348 := Option.some.{0} -@349 := @348 @71 -@350 := @349 @129 -@351 := @347 @350 -@352 := #10 -@356 := @96 @352 @327 @141 @129 -@357 := LexLeanTarget.TargetSyntax.Function.types -@358 := @357 @127 -@359 := @356 @358 -@360 := @277 @325 -@361 := @334 @360 -@362 := LexLeanTarget.TargetSemantics.bindAll -@363 := LexLeanTarget.TargetSyntax.Function.parameters -@368 := @361 (@362 (@363 @135) @127 @66) -@369 := @348 @325 -@370 := @369 @129 -@371 := @368 @370 -@372 := @277 @300 -@373 := @334 @372 -@374 := LexLeanPreservation.Rust.fnFallible -@375 := #11 -@378 := @373 (@374 @375 @327) -@379 := @348 @300 -@380 := @379 @129 -@381 := @378 @380 -@382 := LexLeanPreservation.RunConv -@383 := #13 -@387 := @382 @383 @352 @141 @129 -@389 := @303 @127 @308 -@390 := Exists.{1} -@391 := LexLeanPreservation.Rust.ROut -@392 := @390 @391 -@393 := And -@394 := LexLeanPreservation.Rust.RealizesFn -@398 := @393 (@394 @327 @141 @17) -@399 := LexLeanPreservation.Rust.RCI -@401 := @399 #15 -@402 := LexLeanPreservation.Rust.fnIdent -@403 := @402 @383 -@410 := (hne : @389) -> @392 (fun (ro : @391) => @398 (@401 @403 @375 @17)) -@425 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {f : @3} -> - {fn : @71} -> - {args : @125} -> - {env : @325} -> - {F : @300} -> - {o : @302} -> - (hB : @333) -> - (hfn : @351) -> (hwt : @359) -> (hbind : @371) -> (hF : @381) -> (hA : @387) -> @410 -@427 := LexLeanPreservation.Rust.compose @0 -@428 := @326 @0 -@433 := (n : @3) -> @428 @141 @135 @17 @127 -@434 := @343 @73 -@437 := @336 (@434 @127) @350 -@441 := @107 @327 @141 @129 @358 -@442 := @382 @0 -@445 := @442 @352 @141 @129 -@459 := {c : @9} -> - {A : @10} -> - {f : @3} -> - {fn : @71} -> - {args : @125} -> - {env : @325} -> - {F : @300} -> - {o : @302} -> - (hB : @433) -> - (hfn : @437) -> (hwt : @441) -> (hbind : @371) -> (hF : @381) -> (hA : @445) -> @410 -@460 := @427 @1 -@461 := @428 @1 -@465 := (n : @3) -> @461 @135 @17 @127 -@468 := @115 @141 @129 @358 -@469 := @374 @1 -@472 := @373 (@469 @327) @380 -@473 := @399 @1 -@483 := (hbind : @371) -> - (hF : @472) -> (hA : @445) -> (hne : @389) -> @392 (fun (ro : @391) => @398 (@473 @403 @375 @17)) -@493 := {A : @10} -> - {f : @3} -> - {fn : @71} -> - {args : @125} -> - {env : @325} -> {F : @300} -> {o : @302} -> (hB : @465) -> (hfn : @437) -> (hwt : @468) -> @483 -@494 := @460 @2 -@496 := @461 @2 @17 -@498 := (n : @3) -> @496 @127 -@499 := @121 @129 -@500 := @499 @358 -@509 := {f : @3} -> - {fn : @71} -> - {args : @125} -> - {env : @325} -> {F : @300} -> {o : @302} -> (hB : @498) -> (hfn : @437) -> (hwt : @500) -> @483 -@510 := @494 @60 -@512 := (n : @3) -> @496 @60 -@513 := @434 @60 -@514 := @336 @513 -@515 := @514 @350 -@516 := @469 @60 -@517 := @373 @516 -@518 := @517 @380 -@519 := @442 @60 -@521 := @519 @141 @129 -@523 := @473 (@402 @60) -@531 := (hF : @518) -> (hA : @521) -> (hne : @389) -> @392 (fun (ro : @391) => @398 (@523 @375 @17)) -@540 := {fn : @71} -> - {args : @125} -> - {env : @325} -> - {F : @300} -> {o : @302} -> (hB : @512) -> (hfn : @515) -> (hwt : @500) -> (hbind : @371) -> @531 -@541 := @510 @91 -@543 := @514 (@349 @91) -@544 := @357 @91 -@545 := @499 @544 -@547 := @362 (@363 @91) -@559 := {args : @125} -> - {env : @325} -> - {F : @300} -> - {o : @302} -> - (hB : @512) -> (hfn : @543) -> (hwt : @545) -> (hbind : @361 (@547 @127 @66) @370) -> @531 -@560 := @541 @56 -@561 := @218 @53 -@563 := @121 @561 @544 -@566 := @54 (@5 @135) @53 -@570 := @361 (@547 @566 @66) @370 -@573 := @54 (@5 @327) @53 -@594 := {env : @325} -> - {F : @300} -> - {o : @302} -> - (hB : @512) -> - (hfn : @543) -> - (hwt : @563) -> - (hbind : @570) -> - (hF : @518) -> - (hA : @519 @573 @129) -> - (hne : @389) -> @392 (fun (ro : @391) => @398 (@523 (@54 (@5 #12) @53) @17)) -@595 := @560 @69 -@596 := @232 @53 -@598 := @121 @596 @544 -@606 := @361 (@547 @561 @66) (@369 (@67 (@64 @217) @66)) -@609 := @54 (@5 @141) @53 -@628 := {F : @300} -> - {o : @302} -> - (hB : @512) -> - (hfn : @543) -> - (hwt : @598) -> - (hbind : @606) -> - (hF : @518) -> - (hA : @519 @609 @129) -> - (hne : @389) -> @392 (fun (ro : @391) => @398 (@523 (@54 (@5 @375) @53) @17)) -@629 := @595 @70 -@630 := @249 @544 -@638 := @361 (@547 @596 @66) (@369 (@67 (@64 @231) @66)) -@640 := @517 (@379 @70) -@642 := @519 @566 @129 -@643 := @394 @70 -@662 := {o : @302} -> - (hB : @512) -> - (hfn : @543) -> - (hwt : @630) -> - (hbind : @638) -> - (hF : @640) -> - (hA : @642) -> - (hne : @389) -> @392 (fun (ro : @391) => @393 (@643 @141 @17) (@523 (@54 (@5 @352) @53) @17)) -@663 := @629 @272 -@664 := @257 @544 -@672 := @361 (@547 @248 @66) (@369 (@67 (@64 @214) @66)) -@673 := @519 @561 -@674 := @271 @127 -@675 := @673 @674 -@676 := @271 @135 -@694 := (hB : @512) -> - (hfn : @543) -> - (hwt : @664) -> - (hbind : @672) -> - (hF : @640) -> - (hA : @675) -> - (hne : @303 @676 @308) -> @392 (fun (ro : @391) => @393 (@643 (@271 @327) @17) (@523 @573 @17)) -@695 := @663 @95 -@696 := @265 @544 -@704 := @361 (@547 @256 @66) (@369 (@67 (@64 @228) @66)) -@705 := @519 @596 -@706 := @271 @129 -@724 := (hfn : @543) -> - (hwt : @696) -> - (hbind : @704) -> - (hF : @640) -> - (hA : @705 @706) -> - (hne : @303 @674 @308) -> @392 (fun (ro : @391) => @393 (@643 (@271 @141) @17) (@523 @609 @17)) -@725 := Eq.refl.{1} -@728 := @695 (@725 @335 @513) -@729 := @269 @544 -@737 := @361 (@547 @264 @66) (@369 (@67 (@64 @243) @66)) -@738 := @519 @248 -@739 := @271 @131 -@755 := (hwt : @729) -> - (hbind : @737) -> - (hF : @640) -> - (hA : @738 @739) -> - (hne : @303 @706 @308) -> @392 (fun (ro : @391) => @393 (@643 @676 @17) (@523 @566 @17)) -@756 := @728 @268 -@758 := @547 @56 @66 -@761 := @361 @758 (@369 @69) -@762 := @519 @256 -@763 := @271 @12 -@778 := (hbind : @761) -> - (hF : @640) -> - (hA : @762 @763) -> - (hne : @303 @739 @308) -> @392 (fun (ro : @391) => @393 (@643 @674 @17) (@523 @561 @17)) -@781 := @756 (@725 @360 @758) -@782 := @519 @264 -@783 := @271 @14 -@797 := (hF : @640) -> - (hA : @782 @783) -> - (hne : @303 @763 @308) -> @392 (fun (ro : @391) => @393 (@643 @706 @17) (@523 @596 @17)) -@800 := @781 (@725 @372 @516) -@814 := (hA : @519 @56 @272) -> - (hne : @303 @783 @308) -> @392 (fun (ro : @391) => @393 (@643 @739 @17) (@523 @248 @17)) -@815 := @800 @299 -@826 := (hne : @303 @272 @308) -> @392 (fun (ro : @391) => @393 (@643 @763 @17) (@523 @256 @17)) -@827 := @815 @320 -@833 := @393 (@643 @783 @17) (@523 @264 @17) -@835 := @392 (fun (ro : @391) => @833) -@837 := @392 (fun (__e_ro : @391) => @833) -@841 := LexLeanPreservation.Rust.RepresentableL (@54 @18 @53) -@842 := (__e_hrep : @841) -> @837 -@843 := fun (__e_hrep : @841) => @827 -@844 := (n : @3) -> @842 -@845 := fun (n : @3) => @843 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R16/RustCore.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R16/RustCore.lean deleted file mode 100644 index 4a930ffff..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R16/RustCore.lean +++ /dev/null @@ -1,33 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.RustCore -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0], types := [.nat], result := (.pair (.option .nat) (.result .nat .unit)), - body := (.build .pair (.pair (.option .nat) (.result .nat .unit)) [(.build .some (.option .nat) [(.build .succ .nat [(.var 0)])]), (.cond (.prim .natLt [(.var 0), (.value .nat (.nat 3))]) (.build .ok (.result .nat .unit) [(.build .zero .nat [])]) (.build .error (.result .nat .unit) [(.build .unit .unit [])]))]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .core, items := [ - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible (.pair (.option .nat) (.result .nat .unit))) (.mk [] (.succeed (.pair (.construct .some [(.call (.runtime .natSucc) [(.copy (.generated .binding 0))] true)]) (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false) (.mk [] (.construct (.ok .nat .unit) [(.lit (.nat 0))])) (.mk [] (.construct (.err .nat .unit) [(.lit .unit)])))))))))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [], (.succeed (.pair (.construct .some [(.call (.runtime .natSucc) [(.copy (.generated .binding 0))] true)]) (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false) (.mk [] (.construct (.ok .nat .unit) [(.lit (.nat 0))])) (.mk [] (.construct (.err .nat .unit) [(.lit .unit)]))))))), [(0, .nat, (some 0))], rfl, rfl, - (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildSucc (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) (Corr.lNil))) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 3)))]) (tail := (.cond (.call (.runtime .natLt) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false) (.mk [] (.construct (.ok .nat .unit) [(.lit (.nat 0))])) (.mk [] (.construct (.err .nat .unit) [(.lit .unit)])))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 3)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct (.ok .nat .unit) [(.lit (.nat 0))])) (lb := []) (tb := (.construct (.err .nat .unit) [(.lit .unit)])) (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))) rfl) (Corr.build (ts := [.unit]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))) rfl)))) (Corr.lNil))))))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | _ + 1 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.RustCore diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R16/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R16/RustStd.lean deleted file mode 100644 index 6a1df6c56..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R16/RustStd.lean +++ /dev/null @@ -1,33 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0], types := [.nat], result := (.pair (.option .nat) (.result .nat .unit)), - body := (.build .pair (.pair (.option .nat) (.result .nat .unit)) [(.build .some (.option .nat) [(.build .succ .nat [(.var 0)])]), (.cond (.prim .natLt [(.var 0), (.value .nat (.nat 3))]) (.build .ok (.result .nat .unit) [(.build .zero .nat [])]) (.build .error (.result .nat .unit) [(.build .unit .unit [])]))]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible (.pair (.option .nat) (.result .nat .unit))) (.mk [] (.succeed (.pair (.construct .some [(.call (.runtime .natSucc) [(.copy (.generated .binding 0))] true)]) (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false) (.mk [] (.construct (.ok .nat .unit) [(.lit (.nat 0))])) (.mk [] (.construct (.err .nat .unit) [(.lit .unit)])))))))))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [], (.succeed (.pair (.construct .some [(.call (.runtime .natSucc) [(.copy (.generated .binding 0))] true)]) (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false) (.mk [] (.construct (.ok .nat .unit) [(.lit (.nat 0))])) (.mk [] (.construct (.err .nat .unit) [(.lit .unit)]))))))), [(0, .nat, (some 0))], rfl, rfl, - (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildSucc (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) (Corr.lNil))) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 3)))]) (tail := (.cond (.call (.runtime .natLt) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false) (.mk [] (.construct (.ok .nat .unit) [(.lit (.nat 0))])) (.mk [] (.construct (.err .nat .unit) [(.lit .unit)])))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 3)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct (.ok .nat .unit) [(.lit (.nat 0))])) (lb := []) (tb := (.construct (.err .nat .unit) [(.lit .unit)])) (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))) rfl) (Corr.build (ts := [.unit]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))) rfl)))) (Corr.lNil))))))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | _ + 1 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R17/Compose/RustCore.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R17/Compose/RustCore.lex.tex deleted file mode 100644 index e0b262c93..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R17/Compose/RustCore.lex.tex +++ /dev/null @@ -1,521 +0,0 @@ -\begin{lexlean}{RustCore} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.Compose.RustCore} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.RustCore, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.Compose.RustCore.root : @1045 := @1046 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.Compose.RustCore.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.RustCore.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.RustCore.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.RustCore.flags -@3 := Nat -@4 := Bool -@5 := Prod.{0, 0} -@6 := @5 @3 -@7 := @6 @4 -@8 := #1 -@9 := LexLeanTarget.TargetSyntax.Value.nat -@10 := LexLeanTarget.TargetSyntax.Value.bool -@11 := LexLeanPreservation.encPair -@12 := @11 @3 -@13 := @12 @4 -@14 := @13 @9 -@15 := @14 @10 -@16 := @15 @8 -@17 := LexLeanTarget.TargetSyntax.Ty.nat -@18 := LexLeanTarget.TargetSyntax.Ty.bool -@19 := LexLeanTarget.TargetSyntax.Ty.pair -@20 := @19 @17 -@21 := @20 @18 -@22 := #0 -@23 := LexLeanTarget.TargetSyntax.Program -@24 := LexLeanPreservation.Rust.RCrate -@25 := LexLeanPreservation.Rust.Flags -@26 := LexLeanPreservation.Rust.WT -@27 := #3 -@28 := @26 @27 -@29 := #2 -@31 := @28 @29 @8 -@32 := @9 @22 -@38 := {p : @23} -> {c : @24} -> {A : @25} -> (n : @3) -> @31 @32 @17 -@40 := LexLeanPreservation.Rust.wt_nat @0 -@41 := @26 @0 -@43 := @41 @29 @8 -@48 := {c : @24} -> {A : @25} -> (n : @3) -> @43 @32 @17 -@49 := @40 @1 -@50 := @41 @1 -@51 := @50 @8 -@55 := {A : @25} -> (n : @3) -> @51 @32 @17 -@56 := @49 @2 -@57 := @50 @2 -@58 := @57 @32 -@59 := @58 @17 -@60 := (n : @3) -> @59 -@62 := fun (__x : @3) => @56 @22 -@63 := @10 @22 -@69 := {p : @23} -> {c : @24} -> {A : @25} -> (b : @4) -> @31 @63 @18 -@71 := LexLeanPreservation.Rust.wt_bool @0 -@76 := {c : @24} -> {A : @25} -> (b : @4) -> @43 @63 @18 -@77 := @71 @1 -@81 := {A : @25} -> (b : @4) -> @51 @63 @18 -@82 := @77 @2 -@83 := @57 @63 -@84 := @83 @18 -@85 := (b : @4) -> @84 -@87 := fun (__x : @4) => @82 @22 -@88 := Sort 1 -@89 := LexLeanTarget.TargetSyntax.Value -@90 := (a._@._internal._hyg.#0 : @8) -> @89 -@91 := LexLeanTarget.TargetSyntax.Ty -@92 := #5 -@93 := #9 -@94 := @26 @93 -@95 := #8 -@96 := @94 @95 -@97 := #7 -@98 := @96 @97 -@99 := #4 -@100 := @99 @22 -@103 := (x : @92) -> @98 @100 @29 -@104 := #10 -@110 := (x : @92) -> @26 @104 @93 @95 @100 @29 -@111 := @5 @97 -@112 := #6 -@113 := @111 @112 -@114 := #11 -@117 := @26 @114 @104 @93 -@122 := @11 @95 @97 @112 @92 @22 -@123 := @117 @122 -@125 := @19 @99 @27 -@138 := {p : @23} -> - {c : @24} -> - {A : @25} -> - {α : @88} -> - {β : @88} -> - {ea : @90} -> - {eb : @90} -> {s : @91} -> {t : @91} -> (ha : @103) -> (hb : @110) -> (x : @113) -> @123 @125 -@140 := LexLeanPreservation.Rust.wt_encPair @0 -@165 := {c : @24} -> - {A : @25} -> - {α : @88} -> - {β : @88} -> - {ea : @90} -> - {eb : @90} -> - {s : @91} -> - {t : @91} -> - (ha : (x : @92) -> @41 @95 @97 @100 @29) -> - (hb : (x : @92) -> @41 @93 @95 @100 @29) -> (x : @113) -> @41 @104 @93 @122 @125 -@166 := @140 @1 -@187 := {A : @25} -> - {α : @88} -> - {β : @88} -> - {ea : @90} -> - {eb : @90} -> - {s : @91} -> - {t : @91} -> - (ha : (x : @92) -> @50 @97 @100 @29) -> - (hb : (x : @92) -> @50 @95 @100 @29) -> (x : @113) -> @50 @93 @122 @125 -@188 := @166 @2 -@190 := @57 @100 @29 -@191 := (x : @92) -> @190 -@202 := {α : @88} -> - {β : @88} -> - {ea : @90} -> - {eb : @90} -> {s : @91} -> {t : @91} -> (ha : @191) -> (hb : @191) -> (x : @113) -> @57 @122 @125 -@203 := @188 @3 -@204 := (a._@._internal._hyg.#0 : @3) -> @89 -@205 := (x : @3) -> @190 -@220 := {β : @88} -> - {ea : @204} -> - {eb : @90} -> - {s : @91} -> - {t : @91} -> (ha : @205) -> (hb : @191) -> (x : @6 @112) -> @57 (@12 @97 @112 @92 @22) @125 -@221 := @203 @4 -@222 := (a._@._internal._hyg.#0 : @4) -> @89 -@223 := (x : @4) -> @190 -@235 := {ea : @204} -> - {eb : @222} -> - {s : @91} -> {t : @91} -> (ha : @205) -> (hb : @223) -> (x : @7) -> @57 (@13 @112 @92 @22) @125 -@236 := @221 @9 -@238 := (x : @3) -> @58 @29 -@248 := {eb : @222} -> - {s : @91} -> {t : @91} -> (ha : @238) -> (hb : @223) -> (x : @7) -> @57 (@14 @92 @22) @125 -@249 := @236 @10 -@251 := (x : @4) -> @83 @29 -@252 := @15 @22 -@253 := @57 @252 -@259 := {s : @91} -> {t : @91} -> (ha : @238) -> (hb : @251) -> (x : @7) -> @253 @125 -@260 := @249 @17 -@261 := (x : @3) -> @59 -@267 := {t : @91} -> (ha : @261) -> (hb : @251) -> (x : @7) -> @253 (@20 @27) -@268 := @260 @18 -@273 := (ha : @261) -> (hb : (x : @4) -> @84) -> (x : @7) -> @253 @21 -@276 := @268 @62 @87 @8 -@278 := @57 @16 @21 -@279 := List.nil.{0} -@280 := List.cons.{0} -@281 := @279 @89 -@282 := @280 @89 -@284 := @282 @16 @281 -@285 := @6 @89 -@286 := 0 -@290 := Prod.mk.{0, 0} @3 @89 @286 -@291 := @290 @16 -@292 := @279 @285 -@293 := @280 @285 -@295 := @293 @291 @292 -@296 := Bool.false -@297 := LexLeanTarget.TargetSyntax.Function -@298 := LexLeanTarget.TargetSyntax.Program.functions -@299 := @298 @0 -@300 := @279 @3 -@301 := @279 @91 -@302 := LexLeanTarget.TargetSyntax.Ty.unit -@303 := LexLeanTarget.TargetSyntax.Value.unit -@306 := LexLeanTarget.TargetSyntax.Expr.value @302 @303 -@311 := LexLeanTarget.TargetSyntax.Function.mk @300 @301 @302 @306 -@316 := List.getD.{0} @297 @299 @286 @311 -@320 := fun (__e_n : @3) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.RustCore.root @22 @286 -@321 := LexLeanPreservation.Rust.WTL -@329 := {p : @23} -> {c : @24} -> {A : @25} -> @321 @29 @8 @22 @281 @301 -@331 := LexLeanPreservation.Rust.wtl_nil @0 -@332 := @321 @0 -@338 := {c : @24} -> {A : @25} -> @332 @8 @22 @281 @301 -@339 := @331 @1 -@340 := @332 @1 -@344 := {A : @25} -> @340 @22 @281 @301 -@345 := @339 @2 -@346 := @340 @2 -@347 := @346 @281 -@348 := @347 @301 -@349 := List.{0} -@350 := @349 @89 -@351 := @349 @91 -@356 := @26 @112 @92 @99 @27 @29 -@361 := @321 @97 @112 @92 @29 @8 -@364 := @321 @95 @97 @112 -@366 := @282 @92 @27 -@367 := @364 @366 -@368 := @280 @91 -@370 := @368 @99 @29 -@380 := {p : @23} -> - {c : @24} -> - {A : @25} -> - {v : @89} -> {t : @91} -> {vs : @350} -> {ts : @351} -> (h : @356) -> (hs : @361) -> @367 @370 -@382 := LexLeanPreservation.Rust.wtl_cons @0 -@402 := {c : @24} -> - {A : @25} -> - {v : @89} -> - {t : @91} -> - {vs : @350} -> - {ts : @351} -> (h : @41 @92 @99 @27 @29) -> (hs : @332 @112 @92 @29 @8) -> @332 @97 @112 @366 @370 -@403 := @382 @1 -@419 := {A : @25} -> - {v : @89} -> - {t : @91} -> - {vs : @350} -> - {ts : @351} -> (h : @50 @99 @27 @29) -> (hs : @340 @92 @29 @8) -> @340 @112 @366 @370 -@420 := @403 @2 -@422 := @57 @27 @29 -@424 := @346 @29 @8 -@432 := {v : @89} -> - {t : @91} -> {vs : @350} -> {ts : @351} -> (h : @422) -> (hs : @424) -> @346 @366 @370 -@433 := @420 @16 -@434 := @15 @99 -@436 := @57 @434 @29 -@437 := @15 @112 -@438 := @282 @437 -@446 := {t : @91} -> {vs : @350} -> {ts : @351} -> (h : @436) -> (hs : @424) -> @346 (@438 @27) @370 -@447 := @433 @21 -@448 := @15 @27 -@450 := @57 @448 @21 -@451 := @15 @92 -@452 := @282 @451 -@454 := @346 (@452 @27) -@455 := @368 @21 -@456 := @455 @29 -@461 := {vs : @350} -> {ts : @351} -> (h : @450) -> (hs : @424) -> @454 @456 -@462 := @447 @281 -@463 := @15 @29 -@465 := @57 @463 @21 -@466 := @347 @8 -@468 := @282 @434 @281 -@469 := @346 @468 -@473 := {ts : @351} -> (h : @465) -> (hs : @466) -> @469 @456 -@474 := @462 @301 -@476 := @282 @448 @281 -@477 := @346 @476 -@478 := @455 @301 -@481 := (h : @278) -> (hs : @348) -> @477 @478 -@482 := @474 @276 -@484 := @282 @463 @281 -@485 := @346 @484 -@487 := (hs : @348) -> @485 @478 -@488 := @482 @345 -@489 := @346 @284 -@490 := @489 @478 -@491 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.denote -@492 := @491 @8 -@493 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.__fits_0 -@494 := @493 @8 -@496 := Coverage.Main.pairs @8 -@501 := @11 @4 @3 @10 @9 @496 -@503 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.root @8 -@504 := Ne.{1} -@505 := LexLeanPreservation.Obs -@506 := @504 @505 -@507 := LexLeanPreservation.Rel -@510 := @506 (@507 @8 @22) -@511 := LexLeanPreservation.Obs.stuck -@514 := (f : @4) -> (v : @89) -> @510 @511 -@516 := LexLeanPreservation.Rust.rel_ne_stuck @494 -@522 := (v : @89) -> @506 (@507 (@493 @29) @22) @511 -@523 := @516 @501 -@527 := @506 (@507 @494 @501) @511 -@528 := @349 @285 -@529 := LexLeanPreservation.Rust.FunSem -@535 := (n : @3) -> @529 @93 @95 @97 @22 @112 -@536 := Eq.{1} -@537 := Option.{0} -@538 := @537 @297 -@539 := @536 @538 -@546 := LexLeanRuntime.index (@349 @297) @297 (LexLeanRuntime.instIndexableList @297) -@550 := @539 (@546 (@298 @93) @112) -@551 := Option.some.{0} -@552 := @551 @297 -@553 := @552 @92 -@554 := @550 @553 -@558 := @321 @104 @93 @95 @92 -@559 := LexLeanTarget.TargetSyntax.Function.types -@560 := @559 @112 -@561 := @558 @560 -@562 := @537 @528 -@563 := @536 @562 -@564 := LexLeanTarget.TargetSemantics.bindAll -@565 := LexLeanTarget.TargetSyntax.Function.parameters -@570 := @563 (@564 (@565 @97) @112 @292) -@571 := @551 @528 -@572 := @571 @92 -@573 := @570 @572 -@574 := @537 @4 -@575 := @536 @574 -@576 := LexLeanPreservation.Rust.fnFallible -@579 := @575 (@576 @114 @93) -@580 := @551 @4 -@581 := @580 @92 -@582 := @579 @581 -@583 := LexLeanPreservation.RunConv -@584 := #13 -@588 := @583 @584 @104 @95 @92 -@590 := @506 @112 @511 -@591 := Exists.{1} -@592 := LexLeanPreservation.Rust.ROut -@593 := @591 @592 -@594 := And -@595 := LexLeanPreservation.Rust.RealizesFn -@599 := @594 (@595 @93 @95 @22) -@600 := LexLeanPreservation.Rust.RCI -@602 := @600 #15 -@603 := LexLeanPreservation.Rust.fnIdent -@604 := @603 @584 -@611 := (hne : @590) -> @593 (fun (ro : @592) => @599 (@602 @604 @114 @22)) -@626 := {p : @23} -> - {c : @24} -> - {A : @25} -> - {f : @3} -> - {fn : @297} -> - {args : @350} -> - {env : @528} -> - {F : @4} -> - {o : @505} -> - (hB : @535) -> - (hfn : @554) -> (hwt : @561) -> (hbind : @573) -> (hF : @582) -> (hA : @588) -> @611 -@628 := LexLeanPreservation.Rust.compose @0 -@629 := @529 @0 -@634 := (n : @3) -> @629 @95 @97 @22 @112 -@635 := @546 @299 -@638 := @539 (@635 @112) @553 -@642 := @332 @93 @95 @92 @560 -@643 := @583 @0 -@646 := @643 @104 @95 @92 -@660 := {c : @24} -> - {A : @25} -> - {f : @3} -> - {fn : @297} -> - {args : @350} -> - {env : @528} -> - {F : @4} -> - {o : @505} -> - (hB : @634) -> - (hfn : @638) -> (hwt : @642) -> (hbind : @573) -> (hF : @582) -> (hA : @646) -> @611 -@661 := @628 @1 -@662 := @629 @1 -@666 := (n : @3) -> @662 @97 @22 @112 -@669 := @340 @95 @92 @560 -@670 := @576 @1 -@673 := @575 (@670 @93) @581 -@674 := @600 @1 -@684 := (hbind : @573) -> - (hF : @673) -> (hA : @646) -> (hne : @590) -> @593 (fun (ro : @592) => @599 (@674 @604 @114 @22)) -@694 := {A : @25} -> - {f : @3} -> - {fn : @297} -> - {args : @350} -> - {env : @528} -> {F : @4} -> {o : @505} -> (hB : @666) -> (hfn : @638) -> (hwt : @669) -> @684 -@695 := @661 @2 -@697 := @662 @2 @22 -@699 := (n : @3) -> @697 @112 -@700 := @346 @92 -@701 := @700 @560 -@710 := {f : @3} -> - {fn : @297} -> - {args : @350} -> - {env : @528} -> {F : @4} -> {o : @505} -> (hB : @699) -> (hfn : @638) -> (hwt : @701) -> @684 -@711 := @695 @286 -@713 := (n : @3) -> @697 @286 -@714 := @635 @286 -@715 := @539 @714 -@716 := @715 @553 -@717 := @670 @286 -@718 := @575 @717 -@719 := @718 @581 -@720 := @643 @286 -@722 := @720 @95 @92 -@724 := @674 (@603 @286) -@732 := (hF : @719) -> (hA : @722) -> (hne : @590) -> @593 (fun (ro : @592) => @599 (@724 @114 @22)) -@741 := {fn : @297} -> - {args : @350} -> - {env : @528} -> - {F : @4} -> {o : @505} -> (hB : @713) -> (hfn : @716) -> (hwt : @701) -> (hbind : @573) -> @732 -@742 := @711 @316 -@744 := @715 (@552 @316) -@745 := @559 @316 -@746 := @700 @745 -@748 := @564 (@565 @316) -@760 := {args : @350} -> - {env : @528} -> - {F : @4} -> - {o : @505} -> - (hB : @713) -> (hfn : @744) -> (hwt : @746) -> (hbind : @563 (@748 @112 @292) @572) -> @732 -@761 := @742 @284 -@762 := @438 @281 -@764 := @346 @762 @745 -@767 := @282 (@15 @97) @281 -@771 := @563 (@748 @767 @292) @572 -@774 := @282 (@15 @93) @281 -@795 := {env : @528} -> - {F : @4} -> - {o : @505} -> - (hB : @713) -> - (hfn : @744) -> - (hwt : @764) -> - (hbind : @771) -> - (hF : @719) -> - (hA : @720 @774 @92) -> - (hne : @590) -> @593 (fun (ro : @592) => @599 (@724 (@282 (@15 #12) @281) @22)) -@796 := @761 @295 -@797 := @452 @281 -@799 := @346 @797 @745 -@807 := @563 (@748 @762 @292) (@571 (@293 (@290 @437) @292)) -@810 := @282 (@15 @95) @281 -@829 := {F : @4} -> - {o : @505} -> - (hB : @713) -> - (hfn : @744) -> - (hwt : @799) -> - (hbind : @807) -> - (hF : @719) -> - (hA : @720 @810 @92) -> - (hne : @590) -> @593 (fun (ro : @592) => @599 (@724 (@282 (@15 @114) @281) @22)) -@830 := @796 @296 -@831 := @469 @745 -@839 := @563 (@748 @797 @292) (@571 (@293 (@290 @451) @292)) -@841 := @718 (@580 @296) -@843 := @720 @767 @92 -@844 := @595 @296 -@863 := {o : @505} -> - (hB : @713) -> - (hfn : @744) -> - (hwt : @831) -> - (hbind : @839) -> - (hF : @841) -> - (hA : @843) -> - (hne : @590) -> @593 (fun (ro : @592) => @594 (@844 @95 @22) (@724 (@282 (@15 @104) @281) @22)) -@864 := @830 @492 -@865 := @477 @745 -@873 := @563 (@748 @468 @292) (@571 (@293 (@290 @434) @292)) -@874 := @720 @762 -@875 := @491 @112 -@876 := @874 @875 -@877 := @491 @97 -@895 := (hB : @713) -> - (hfn : @744) -> - (hwt : @865) -> - (hbind : @873) -> - (hF : @841) -> - (hA : @876) -> - (hne : @506 @877 @511) -> @593 (fun (ro : @592) => @594 (@844 (@491 @93) @22) (@724 @774 @22)) -@896 := @864 @320 -@897 := @485 @745 -@905 := @563 (@748 @476 @292) (@571 (@293 (@290 @448) @292)) -@906 := @720 @797 -@907 := @491 @92 -@925 := (hfn : @744) -> - (hwt : @897) -> - (hbind : @905) -> - (hF : @841) -> - (hA : @906 @907) -> - (hne : @506 @875 @511) -> @593 (fun (ro : @592) => @594 (@844 (@491 @95) @22) (@724 @810 @22)) -@926 := Eq.refl.{1} -@929 := @896 (@926 @538 @714) -@930 := @489 @745 -@938 := @563 (@748 @484 @292) (@571 (@293 (@290 @463) @292)) -@939 := @720 @468 -@940 := @491 @99 -@956 := (hwt : @930) -> - (hbind : @938) -> - (hF : @841) -> - (hA : @939 @940) -> - (hne : @506 @907 @511) -> @593 (fun (ro : @592) => @594 (@844 @877 @22) (@724 @767 @22)) -@957 := @929 @488 -@959 := @748 @284 @292 -@962 := @563 @959 (@571 @295) -@963 := @720 @476 -@964 := @491 @27 -@979 := (hbind : @962) -> - (hF : @841) -> - (hA : @963 @964) -> - (hne : @506 @940 @511) -> @593 (fun (ro : @592) => @594 (@844 @875 @22) (@724 @762 @22)) -@982 := @957 (@926 @562 @959) -@983 := @720 @484 -@984 := @491 @29 -@998 := (hF : @841) -> - (hA : @983 @984) -> - (hne : @506 @964 @511) -> @593 (fun (ro : @592) => @594 (@844 @907 @22) (@724 @797 @22)) -@1001 := @982 (@926 @574 @717) -@1015 := (hA : @720 @284 @492) -> - (hne : @506 @984 @511) -> @593 (fun (ro : @592) => @594 (@844 @940 @22) (@724 @468 @22)) -@1016 := @1001 @503 -@1027 := (hne : @506 @492 @511) -> @593 (fun (ro : @592) => @594 (@844 @964 @22) (@724 @476 @22)) -@1028 := @1016 @523 -@1034 := @594 (@844 @984 @22) (@724 @484 @22) -@1036 := @593 (fun (ro : @592) => @1034) -@1038 := @593 (fun (__e_ro : @592) => @1034) -@1042 := LexLeanPreservation.Rust.RepresentableL (@282 @252 @281) -@1043 := (__e_hrep : @1042) -> @1038 -@1044 := fun (__e_hrep : @1042) => @1028 -@1045 := (p : @7) -> @1043 -@1046 := fun (p : @7) => @1044 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R17/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R17/Compose/RustStd.lex.tex deleted file mode 100644 index e2f4e40ec..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R17/Compose/RustStd.lex.tex +++ /dev/null @@ -1,521 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.Compose.RustStd.root : @1045 := @1046 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.RustStd.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.RustStd.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.RustStd.flags -@3 := Nat -@4 := Bool -@5 := Prod.{0, 0} -@6 := @5 @3 -@7 := @6 @4 -@8 := #1 -@9 := LexLeanTarget.TargetSyntax.Value.nat -@10 := LexLeanTarget.TargetSyntax.Value.bool -@11 := LexLeanPreservation.encPair -@12 := @11 @3 -@13 := @12 @4 -@14 := @13 @9 -@15 := @14 @10 -@16 := @15 @8 -@17 := LexLeanTarget.TargetSyntax.Ty.nat -@18 := LexLeanTarget.TargetSyntax.Ty.bool -@19 := LexLeanTarget.TargetSyntax.Ty.pair -@20 := @19 @17 -@21 := @20 @18 -@22 := #0 -@23 := LexLeanTarget.TargetSyntax.Program -@24 := LexLeanPreservation.Rust.RCrate -@25 := LexLeanPreservation.Rust.Flags -@26 := LexLeanPreservation.Rust.WT -@27 := #3 -@28 := @26 @27 -@29 := #2 -@31 := @28 @29 @8 -@32 := @9 @22 -@38 := {p : @23} -> {c : @24} -> {A : @25} -> (n : @3) -> @31 @32 @17 -@40 := LexLeanPreservation.Rust.wt_nat @0 -@41 := @26 @0 -@43 := @41 @29 @8 -@48 := {c : @24} -> {A : @25} -> (n : @3) -> @43 @32 @17 -@49 := @40 @1 -@50 := @41 @1 -@51 := @50 @8 -@55 := {A : @25} -> (n : @3) -> @51 @32 @17 -@56 := @49 @2 -@57 := @50 @2 -@58 := @57 @32 -@59 := @58 @17 -@60 := (n : @3) -> @59 -@62 := fun (__x : @3) => @56 @22 -@63 := @10 @22 -@69 := {p : @23} -> {c : @24} -> {A : @25} -> (b : @4) -> @31 @63 @18 -@71 := LexLeanPreservation.Rust.wt_bool @0 -@76 := {c : @24} -> {A : @25} -> (b : @4) -> @43 @63 @18 -@77 := @71 @1 -@81 := {A : @25} -> (b : @4) -> @51 @63 @18 -@82 := @77 @2 -@83 := @57 @63 -@84 := @83 @18 -@85 := (b : @4) -> @84 -@87 := fun (__x : @4) => @82 @22 -@88 := Sort 1 -@89 := LexLeanTarget.TargetSyntax.Value -@90 := (a._@._internal._hyg.#0 : @8) -> @89 -@91 := LexLeanTarget.TargetSyntax.Ty -@92 := #5 -@93 := #9 -@94 := @26 @93 -@95 := #8 -@96 := @94 @95 -@97 := #7 -@98 := @96 @97 -@99 := #4 -@100 := @99 @22 -@103 := (x : @92) -> @98 @100 @29 -@104 := #10 -@110 := (x : @92) -> @26 @104 @93 @95 @100 @29 -@111 := @5 @97 -@112 := #6 -@113 := @111 @112 -@114 := #11 -@117 := @26 @114 @104 @93 -@122 := @11 @95 @97 @112 @92 @22 -@123 := @117 @122 -@125 := @19 @99 @27 -@138 := {p : @23} -> - {c : @24} -> - {A : @25} -> - {α : @88} -> - {β : @88} -> - {ea : @90} -> - {eb : @90} -> {s : @91} -> {t : @91} -> (ha : @103) -> (hb : @110) -> (x : @113) -> @123 @125 -@140 := LexLeanPreservation.Rust.wt_encPair @0 -@165 := {c : @24} -> - {A : @25} -> - {α : @88} -> - {β : @88} -> - {ea : @90} -> - {eb : @90} -> - {s : @91} -> - {t : @91} -> - (ha : (x : @92) -> @41 @95 @97 @100 @29) -> - (hb : (x : @92) -> @41 @93 @95 @100 @29) -> (x : @113) -> @41 @104 @93 @122 @125 -@166 := @140 @1 -@187 := {A : @25} -> - {α : @88} -> - {β : @88} -> - {ea : @90} -> - {eb : @90} -> - {s : @91} -> - {t : @91} -> - (ha : (x : @92) -> @50 @97 @100 @29) -> - (hb : (x : @92) -> @50 @95 @100 @29) -> (x : @113) -> @50 @93 @122 @125 -@188 := @166 @2 -@190 := @57 @100 @29 -@191 := (x : @92) -> @190 -@202 := {α : @88} -> - {β : @88} -> - {ea : @90} -> - {eb : @90} -> {s : @91} -> {t : @91} -> (ha : @191) -> (hb : @191) -> (x : @113) -> @57 @122 @125 -@203 := @188 @3 -@204 := (a._@._internal._hyg.#0 : @3) -> @89 -@205 := (x : @3) -> @190 -@220 := {β : @88} -> - {ea : @204} -> - {eb : @90} -> - {s : @91} -> - {t : @91} -> (ha : @205) -> (hb : @191) -> (x : @6 @112) -> @57 (@12 @97 @112 @92 @22) @125 -@221 := @203 @4 -@222 := (a._@._internal._hyg.#0 : @4) -> @89 -@223 := (x : @4) -> @190 -@235 := {ea : @204} -> - {eb : @222} -> - {s : @91} -> {t : @91} -> (ha : @205) -> (hb : @223) -> (x : @7) -> @57 (@13 @112 @92 @22) @125 -@236 := @221 @9 -@238 := (x : @3) -> @58 @29 -@248 := {eb : @222} -> - {s : @91} -> {t : @91} -> (ha : @238) -> (hb : @223) -> (x : @7) -> @57 (@14 @92 @22) @125 -@249 := @236 @10 -@251 := (x : @4) -> @83 @29 -@252 := @15 @22 -@253 := @57 @252 -@259 := {s : @91} -> {t : @91} -> (ha : @238) -> (hb : @251) -> (x : @7) -> @253 @125 -@260 := @249 @17 -@261 := (x : @3) -> @59 -@267 := {t : @91} -> (ha : @261) -> (hb : @251) -> (x : @7) -> @253 (@20 @27) -@268 := @260 @18 -@273 := (ha : @261) -> (hb : (x : @4) -> @84) -> (x : @7) -> @253 @21 -@276 := @268 @62 @87 @8 -@278 := @57 @16 @21 -@279 := List.nil.{0} -@280 := List.cons.{0} -@281 := @279 @89 -@282 := @280 @89 -@284 := @282 @16 @281 -@285 := @6 @89 -@286 := 0 -@290 := Prod.mk.{0, 0} @3 @89 @286 -@291 := @290 @16 -@292 := @279 @285 -@293 := @280 @285 -@295 := @293 @291 @292 -@296 := Bool.false -@297 := LexLeanTarget.TargetSyntax.Function -@298 := LexLeanTarget.TargetSyntax.Program.functions -@299 := @298 @0 -@300 := @279 @3 -@301 := @279 @91 -@302 := LexLeanTarget.TargetSyntax.Ty.unit -@303 := LexLeanTarget.TargetSyntax.Value.unit -@306 := LexLeanTarget.TargetSyntax.Expr.value @302 @303 -@311 := LexLeanTarget.TargetSyntax.Function.mk @300 @301 @302 @306 -@316 := List.getD.{0} @297 @299 @286 @311 -@320 := fun (__e_n : @3) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.RustStd.root @22 @286 -@321 := LexLeanPreservation.Rust.WTL -@329 := {p : @23} -> {c : @24} -> {A : @25} -> @321 @29 @8 @22 @281 @301 -@331 := LexLeanPreservation.Rust.wtl_nil @0 -@332 := @321 @0 -@338 := {c : @24} -> {A : @25} -> @332 @8 @22 @281 @301 -@339 := @331 @1 -@340 := @332 @1 -@344 := {A : @25} -> @340 @22 @281 @301 -@345 := @339 @2 -@346 := @340 @2 -@347 := @346 @281 -@348 := @347 @301 -@349 := List.{0} -@350 := @349 @89 -@351 := @349 @91 -@356 := @26 @112 @92 @99 @27 @29 -@361 := @321 @97 @112 @92 @29 @8 -@364 := @321 @95 @97 @112 -@366 := @282 @92 @27 -@367 := @364 @366 -@368 := @280 @91 -@370 := @368 @99 @29 -@380 := {p : @23} -> - {c : @24} -> - {A : @25} -> - {v : @89} -> {t : @91} -> {vs : @350} -> {ts : @351} -> (h : @356) -> (hs : @361) -> @367 @370 -@382 := LexLeanPreservation.Rust.wtl_cons @0 -@402 := {c : @24} -> - {A : @25} -> - {v : @89} -> - {t : @91} -> - {vs : @350} -> - {ts : @351} -> (h : @41 @92 @99 @27 @29) -> (hs : @332 @112 @92 @29 @8) -> @332 @97 @112 @366 @370 -@403 := @382 @1 -@419 := {A : @25} -> - {v : @89} -> - {t : @91} -> - {vs : @350} -> - {ts : @351} -> (h : @50 @99 @27 @29) -> (hs : @340 @92 @29 @8) -> @340 @112 @366 @370 -@420 := @403 @2 -@422 := @57 @27 @29 -@424 := @346 @29 @8 -@432 := {v : @89} -> - {t : @91} -> {vs : @350} -> {ts : @351} -> (h : @422) -> (hs : @424) -> @346 @366 @370 -@433 := @420 @16 -@434 := @15 @99 -@436 := @57 @434 @29 -@437 := @15 @112 -@438 := @282 @437 -@446 := {t : @91} -> {vs : @350} -> {ts : @351} -> (h : @436) -> (hs : @424) -> @346 (@438 @27) @370 -@447 := @433 @21 -@448 := @15 @27 -@450 := @57 @448 @21 -@451 := @15 @92 -@452 := @282 @451 -@454 := @346 (@452 @27) -@455 := @368 @21 -@456 := @455 @29 -@461 := {vs : @350} -> {ts : @351} -> (h : @450) -> (hs : @424) -> @454 @456 -@462 := @447 @281 -@463 := @15 @29 -@465 := @57 @463 @21 -@466 := @347 @8 -@468 := @282 @434 @281 -@469 := @346 @468 -@473 := {ts : @351} -> (h : @465) -> (hs : @466) -> @469 @456 -@474 := @462 @301 -@476 := @282 @448 @281 -@477 := @346 @476 -@478 := @455 @301 -@481 := (h : @278) -> (hs : @348) -> @477 @478 -@482 := @474 @276 -@484 := @282 @463 @281 -@485 := @346 @484 -@487 := (hs : @348) -> @485 @478 -@488 := @482 @345 -@489 := @346 @284 -@490 := @489 @478 -@491 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.denote -@492 := @491 @8 -@493 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.__fits_0 -@494 := @493 @8 -@496 := Coverage.Main.pairs @8 -@501 := @11 @4 @3 @10 @9 @496 -@503 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.root @8 -@504 := Ne.{1} -@505 := LexLeanPreservation.Obs -@506 := @504 @505 -@507 := LexLeanPreservation.Rel -@510 := @506 (@507 @8 @22) -@511 := LexLeanPreservation.Obs.stuck -@514 := (f : @4) -> (v : @89) -> @510 @511 -@516 := LexLeanPreservation.Rust.rel_ne_stuck @494 -@522 := (v : @89) -> @506 (@507 (@493 @29) @22) @511 -@523 := @516 @501 -@527 := @506 (@507 @494 @501) @511 -@528 := @349 @285 -@529 := LexLeanPreservation.Rust.FunSem -@535 := (n : @3) -> @529 @93 @95 @97 @22 @112 -@536 := Eq.{1} -@537 := Option.{0} -@538 := @537 @297 -@539 := @536 @538 -@546 := LexLeanRuntime.index (@349 @297) @297 (LexLeanRuntime.instIndexableList @297) -@550 := @539 (@546 (@298 @93) @112) -@551 := Option.some.{0} -@552 := @551 @297 -@553 := @552 @92 -@554 := @550 @553 -@558 := @321 @104 @93 @95 @92 -@559 := LexLeanTarget.TargetSyntax.Function.types -@560 := @559 @112 -@561 := @558 @560 -@562 := @537 @528 -@563 := @536 @562 -@564 := LexLeanTarget.TargetSemantics.bindAll -@565 := LexLeanTarget.TargetSyntax.Function.parameters -@570 := @563 (@564 (@565 @97) @112 @292) -@571 := @551 @528 -@572 := @571 @92 -@573 := @570 @572 -@574 := @537 @4 -@575 := @536 @574 -@576 := LexLeanPreservation.Rust.fnFallible -@579 := @575 (@576 @114 @93) -@580 := @551 @4 -@581 := @580 @92 -@582 := @579 @581 -@583 := LexLeanPreservation.RunConv -@584 := #13 -@588 := @583 @584 @104 @95 @92 -@590 := @506 @112 @511 -@591 := Exists.{1} -@592 := LexLeanPreservation.Rust.ROut -@593 := @591 @592 -@594 := And -@595 := LexLeanPreservation.Rust.RealizesFn -@599 := @594 (@595 @93 @95 @22) -@600 := LexLeanPreservation.Rust.RCI -@602 := @600 #15 -@603 := LexLeanPreservation.Rust.fnIdent -@604 := @603 @584 -@611 := (hne : @590) -> @593 (fun (ro : @592) => @599 (@602 @604 @114 @22)) -@626 := {p : @23} -> - {c : @24} -> - {A : @25} -> - {f : @3} -> - {fn : @297} -> - {args : @350} -> - {env : @528} -> - {F : @4} -> - {o : @505} -> - (hB : @535) -> - (hfn : @554) -> (hwt : @561) -> (hbind : @573) -> (hF : @582) -> (hA : @588) -> @611 -@628 := LexLeanPreservation.Rust.compose @0 -@629 := @529 @0 -@634 := (n : @3) -> @629 @95 @97 @22 @112 -@635 := @546 @299 -@638 := @539 (@635 @112) @553 -@642 := @332 @93 @95 @92 @560 -@643 := @583 @0 -@646 := @643 @104 @95 @92 -@660 := {c : @24} -> - {A : @25} -> - {f : @3} -> - {fn : @297} -> - {args : @350} -> - {env : @528} -> - {F : @4} -> - {o : @505} -> - (hB : @634) -> - (hfn : @638) -> (hwt : @642) -> (hbind : @573) -> (hF : @582) -> (hA : @646) -> @611 -@661 := @628 @1 -@662 := @629 @1 -@666 := (n : @3) -> @662 @97 @22 @112 -@669 := @340 @95 @92 @560 -@670 := @576 @1 -@673 := @575 (@670 @93) @581 -@674 := @600 @1 -@684 := (hbind : @573) -> - (hF : @673) -> (hA : @646) -> (hne : @590) -> @593 (fun (ro : @592) => @599 (@674 @604 @114 @22)) -@694 := {A : @25} -> - {f : @3} -> - {fn : @297} -> - {args : @350} -> - {env : @528} -> {F : @4} -> {o : @505} -> (hB : @666) -> (hfn : @638) -> (hwt : @669) -> @684 -@695 := @661 @2 -@697 := @662 @2 @22 -@699 := (n : @3) -> @697 @112 -@700 := @346 @92 -@701 := @700 @560 -@710 := {f : @3} -> - {fn : @297} -> - {args : @350} -> - {env : @528} -> {F : @4} -> {o : @505} -> (hB : @699) -> (hfn : @638) -> (hwt : @701) -> @684 -@711 := @695 @286 -@713 := (n : @3) -> @697 @286 -@714 := @635 @286 -@715 := @539 @714 -@716 := @715 @553 -@717 := @670 @286 -@718 := @575 @717 -@719 := @718 @581 -@720 := @643 @286 -@722 := @720 @95 @92 -@724 := @674 (@603 @286) -@732 := (hF : @719) -> (hA : @722) -> (hne : @590) -> @593 (fun (ro : @592) => @599 (@724 @114 @22)) -@741 := {fn : @297} -> - {args : @350} -> - {env : @528} -> - {F : @4} -> {o : @505} -> (hB : @713) -> (hfn : @716) -> (hwt : @701) -> (hbind : @573) -> @732 -@742 := @711 @316 -@744 := @715 (@552 @316) -@745 := @559 @316 -@746 := @700 @745 -@748 := @564 (@565 @316) -@760 := {args : @350} -> - {env : @528} -> - {F : @4} -> - {o : @505} -> - (hB : @713) -> (hfn : @744) -> (hwt : @746) -> (hbind : @563 (@748 @112 @292) @572) -> @732 -@761 := @742 @284 -@762 := @438 @281 -@764 := @346 @762 @745 -@767 := @282 (@15 @97) @281 -@771 := @563 (@748 @767 @292) @572 -@774 := @282 (@15 @93) @281 -@795 := {env : @528} -> - {F : @4} -> - {o : @505} -> - (hB : @713) -> - (hfn : @744) -> - (hwt : @764) -> - (hbind : @771) -> - (hF : @719) -> - (hA : @720 @774 @92) -> - (hne : @590) -> @593 (fun (ro : @592) => @599 (@724 (@282 (@15 #12) @281) @22)) -@796 := @761 @295 -@797 := @452 @281 -@799 := @346 @797 @745 -@807 := @563 (@748 @762 @292) (@571 (@293 (@290 @437) @292)) -@810 := @282 (@15 @95) @281 -@829 := {F : @4} -> - {o : @505} -> - (hB : @713) -> - (hfn : @744) -> - (hwt : @799) -> - (hbind : @807) -> - (hF : @719) -> - (hA : @720 @810 @92) -> - (hne : @590) -> @593 (fun (ro : @592) => @599 (@724 (@282 (@15 @114) @281) @22)) -@830 := @796 @296 -@831 := @469 @745 -@839 := @563 (@748 @797 @292) (@571 (@293 (@290 @451) @292)) -@841 := @718 (@580 @296) -@843 := @720 @767 @92 -@844 := @595 @296 -@863 := {o : @505} -> - (hB : @713) -> - (hfn : @744) -> - (hwt : @831) -> - (hbind : @839) -> - (hF : @841) -> - (hA : @843) -> - (hne : @590) -> @593 (fun (ro : @592) => @594 (@844 @95 @22) (@724 (@282 (@15 @104) @281) @22)) -@864 := @830 @492 -@865 := @477 @745 -@873 := @563 (@748 @468 @292) (@571 (@293 (@290 @434) @292)) -@874 := @720 @762 -@875 := @491 @112 -@876 := @874 @875 -@877 := @491 @97 -@895 := (hB : @713) -> - (hfn : @744) -> - (hwt : @865) -> - (hbind : @873) -> - (hF : @841) -> - (hA : @876) -> - (hne : @506 @877 @511) -> @593 (fun (ro : @592) => @594 (@844 (@491 @93) @22) (@724 @774 @22)) -@896 := @864 @320 -@897 := @485 @745 -@905 := @563 (@748 @476 @292) (@571 (@293 (@290 @448) @292)) -@906 := @720 @797 -@907 := @491 @92 -@925 := (hfn : @744) -> - (hwt : @897) -> - (hbind : @905) -> - (hF : @841) -> - (hA : @906 @907) -> - (hne : @506 @875 @511) -> @593 (fun (ro : @592) => @594 (@844 (@491 @95) @22) (@724 @810 @22)) -@926 := Eq.refl.{1} -@929 := @896 (@926 @538 @714) -@930 := @489 @745 -@938 := @563 (@748 @484 @292) (@571 (@293 (@290 @463) @292)) -@939 := @720 @468 -@940 := @491 @99 -@956 := (hwt : @930) -> - (hbind : @938) -> - (hF : @841) -> - (hA : @939 @940) -> - (hne : @506 @907 @511) -> @593 (fun (ro : @592) => @594 (@844 @877 @22) (@724 @767 @22)) -@957 := @929 @488 -@959 := @748 @284 @292 -@962 := @563 @959 (@571 @295) -@963 := @720 @476 -@964 := @491 @27 -@979 := (hbind : @962) -> - (hF : @841) -> - (hA : @963 @964) -> - (hne : @506 @940 @511) -> @593 (fun (ro : @592) => @594 (@844 @875 @22) (@724 @762 @22)) -@982 := @957 (@926 @562 @959) -@983 := @720 @484 -@984 := @491 @29 -@998 := (hF : @841) -> - (hA : @983 @984) -> - (hne : @506 @964 @511) -> @593 (fun (ro : @592) => @594 (@844 @907 @22) (@724 @797 @22)) -@1001 := @982 (@926 @574 @717) -@1015 := (hA : @720 @284 @492) -> - (hne : @506 @984 @511) -> @593 (fun (ro : @592) => @594 (@844 @940 @22) (@724 @468 @22)) -@1016 := @1001 @503 -@1027 := (hne : @506 @492 @511) -> @593 (fun (ro : @592) => @594 (@844 @964 @22) (@724 @476 @22)) -@1028 := @1016 @523 -@1034 := @594 (@844 @984 @22) (@724 @484 @22) -@1036 := @593 (fun (ro : @592) => @1034) -@1038 := @593 (fun (__e_ro : @592) => @1034) -@1042 := LexLeanPreservation.Rust.RepresentableL (@282 @252 @281) -@1043 := (__e_hrep : @1042) -> @1038 -@1044 := fun (__e_hrep : @1042) => @1028 -@1045 := (p : @7) -> @1043 -@1046 := fun (p : @7) => @1044 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R17/RustCore.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R17/RustCore.lean deleted file mode 100644 index 02612c762..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R17/RustCore.lean +++ /dev/null @@ -1,33 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.RustCore -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0], types := [(.pair .nat .bool)], result := (.pair .bool .nat), - body := (.build .pair (.pair .bool .nat) [(.second (.var 0)), (.first (.var 0))]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .core, items := [ - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .bool) }] (.pair .bool .nat) (.mk [] (.pair (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 1))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 1)))) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 2)))))))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [], (.pair (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 1))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 1)))) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 2))))), [(0, (.pair .nat .bool), (some 0))], rfl, rfl, - (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 1))]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 1))) (Corr.second (ta := .nat) (tb := .bool) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 2))) (Corr.first (ta := .nat) (tb := .bool) (Corr.var rfl rfl) rfl)) (Corr.lNil)))))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | _ + 1 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.RustCore diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R17/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R17/RustStd.lean deleted file mode 100644 index 0ba46b394..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R17/RustStd.lean +++ /dev/null @@ -1,33 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0], types := [(.pair .nat .bool)], result := (.pair .bool .nat), - body := (.build .pair (.pair .bool .nat) [(.second (.var 0)), (.first (.var 0))]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .bool) }] (.pair .bool .nat) (.mk [] (.pair (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 1))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 1)))) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 2)))))))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [], (.pair (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 1))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 1)))) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 2))))), [(0, (.pair .nat .bool), (some 0))], rfl, rfl, - (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 1))]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 1))) (Corr.second (ta := .nat) (tb := .bool) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 2))) (Corr.first (ta := .nat) (tb := .bool) (Corr.var rfl rfl) rfl)) (Corr.lNil)))))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | _ + 1 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R18/Compose/RustCore.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R18/Compose/RustCore.lex.tex deleted file mode 100644 index 904847861..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R18/Compose/RustCore.lex.tex +++ /dev/null @@ -1,462 +0,0 @@ -\begin{lexlean}{RustCore} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.Compose.RustCore} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.RustCore, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.Compose.RustCore.root : @914 := @915 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.Compose.RustCore.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.RustCore.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.RustCore.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.RustCore.flags -@3 := Nat -@4 := #2 -@5 := LexLeanTarget.TargetSyntax.Value.nat -@6 := @5 @4 -@7 := LexLeanTarget.TargetSyntax.Ty.nat -@8 := LexLeanTarget.TargetSyntax.Program -@9 := LexLeanPreservation.Rust.RCrate -@10 := LexLeanPreservation.Rust.Flags -@11 := LexLeanPreservation.Rust.WT -@12 := #3 -@14 := @11 @12 @4 -@15 := #1 -@16 := @14 @15 -@17 := #0 -@18 := @5 @17 -@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 -@26 := LexLeanPreservation.Rust.wt_nat @0 -@27 := @11 @0 -@34 := {c : @9} -> {A : @10} -> (n : @3) -> @27 @4 @15 @18 @7 -@35 := @26 @1 -@36 := @27 @1 -@41 := {A : @10} -> (n : @3) -> @36 @15 @18 @7 -@42 := @35 @2 -@43 := @36 @2 -@46 := (n : @3) -> @43 @18 @7 -@47 := @42 @4 -@49 := @43 @6 @7 -@50 := @5 @15 -@51 := @42 @15 -@53 := @43 @50 @7 -@54 := LexLeanTarget.TargetSyntax.Value -@55 := List.nil.{0} -@56 := List.cons.{0} -@57 := @55 @54 -@58 := @56 @54 -@59 := @58 @50 -@60 := @59 @57 -@61 := @58 @6 -@62 := @61 @60 -@65 := Prod.{0, 0} @3 @54 -@66 := 1 -@69 := Prod.mk.{0, 0} @3 @54 -@70 := @69 @66 -@71 := @70 @50 -@72 := 0 -@73 := @69 @72 -@74 := @73 @6 -@75 := @55 @65 -@76 := @56 @65 -@78 := @76 @74 @75 -@80 := @76 @71 @78 -@81 := Bool.true -@82 := LexLeanTarget.TargetSyntax.Function -@83 := LexLeanTarget.TargetSyntax.Program.functions -@84 := @83 @0 -@85 := LexLeanTarget.TargetSyntax.Ty -@86 := @55 @3 -@87 := @55 @85 -@88 := LexLeanTarget.TargetSyntax.Ty.unit -@89 := LexLeanTarget.TargetSyntax.Value.unit -@92 := LexLeanTarget.TargetSyntax.Expr.value @88 @89 -@97 := LexLeanTarget.TargetSyntax.Function.mk @86 @87 @88 @92 -@102 := List.getD.{0} @82 @84 @72 @97 -@106 := fun (__e_n : @3) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.RustCore.root @17 @72 -@107 := LexLeanPreservation.Rust.WTL -@115 := {p : @8} -> {c : @9} -> {A : @10} -> @107 @4 @15 @17 @57 @87 -@117 := LexLeanPreservation.Rust.wtl_nil @0 -@118 := @107 @0 -@124 := {c : @9} -> {A : @10} -> @118 @15 @17 @57 @87 -@125 := @117 @1 -@126 := @118 @1 -@130 := {A : @10} -> @126 @17 @57 @87 -@131 := @125 @2 -@132 := @126 @2 -@133 := @132 @57 -@134 := @133 @87 -@135 := List.{0} -@136 := @135 @54 -@137 := @135 @85 -@138 := #6 -@139 := @11 @138 -@140 := #5 -@141 := @139 @140 -@142 := #4 -@145 := @141 @142 @12 @4 -@146 := #7 -@151 := @107 @146 @138 @140 @4 @15 -@152 := #8 -@155 := @107 @152 @146 @138 -@157 := @58 @140 @12 -@158 := @155 @157 -@159 := @56 @85 -@161 := @159 @142 @4 -@171 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {v : @54} -> {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @145) -> (hs : @151) -> @158 @161 -@173 := LexLeanPreservation.Rust.wtl_cons @0 -@193 := {c : @9} -> - {A : @10} -> - {v : @54} -> - {t : @85} -> - {vs : @136} -> - {ts : @137} -> - (h : @27 @140 @142 @12 @4) -> (hs : @118 @138 @140 @4 @15) -> @118 @146 @138 @157 @161 -@194 := @173 @1 -@210 := {A : @10} -> - {v : @54} -> - {t : @85} -> - {vs : @136} -> - {ts : @137} -> (h : @36 @142 @12 @4) -> (hs : @126 @140 @4 @15) -> @126 @138 @157 @161 -@211 := @194 @2 -@213 := @43 @12 @4 -@215 := @132 @4 @15 -@223 := {v : @54} -> - {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @213) -> (hs : @215) -> @132 @157 @161 -@224 := @211 @50 -@225 := @5 @142 -@226 := @43 @225 -@227 := @226 @4 -@228 := @5 @138 -@229 := @58 @228 -@231 := @132 (@229 @12) -@237 := {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @227) -> (hs : @215) -> @231 @161 -@238 := @224 @7 -@239 := @5 @12 -@241 := @43 @239 @7 -@242 := @5 @140 -@243 := @58 @242 -@245 := @132 (@243 @12) -@246 := @159 @7 -@247 := @246 @4 -@252 := {vs : @136} -> {ts : @137} -> (h : @241) -> (hs : @215) -> @245 @247 -@253 := @238 @57 -@254 := @133 @15 -@255 := @58 @225 -@256 := @255 @57 -@261 := {ts : @137} -> (h : @49) -> (hs : @254) -> @132 @256 @247 -@262 := @253 @87 -@263 := @58 @239 -@264 := @263 @57 -@265 := @132 @264 -@266 := @246 @87 -@269 := (h : @53) -> (hs : @134) -> @265 @266 -@270 := @262 @51 -@271 := @61 @57 -@273 := @132 @271 @266 -@274 := (hs : @134) -> @273 -@275 := @270 @131 -@277 := @132 @60 @266 -@278 := @211 @6 -@280 := @43 @242 @4 -@281 := @5 @146 -@282 := @58 @281 -@290 := {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @280) -> (hs : @215) -> @132 (@282 @12) @161 -@291 := @278 @7 -@297 := {vs : @136} -> {ts : @137} -> (h : @226 @7) -> (hs : @215) -> @231 @247 -@298 := @291 @60 -@299 := @265 @15 -@300 := @243 @256 -@301 := @132 @300 -@305 := {ts : @137} -> (h : @241) -> (hs : @299) -> @301 @247 -@306 := @298 @266 -@307 := @255 @264 -@308 := @132 @307 -@309 := @246 @266 -@312 := (h : @49) -> (hs : @273) -> @308 @309 -@313 := @306 @47 -@314 := @263 @271 -@315 := @132 @314 -@317 := (hs : @277) -> @315 @309 -@318 := @313 @275 -@319 := @132 @62 -@320 := @319 @309 -@321 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.denote -@323 := @321 @4 @15 -@324 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.__fits_0 -@326 := @324 @4 @15 -@330 := @5 (Coverage.Main.higher @4 @15) -@333 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.root @4 @15 -@334 := Bool -@335 := Ne.{1} -@336 := LexLeanPreservation.Obs -@337 := @335 @336 -@338 := LexLeanPreservation.Rel -@341 := @337 (@338 @15 @17) -@342 := LexLeanPreservation.Obs.stuck -@345 := (f : @334) -> (v : @54) -> @341 @342 -@347 := LexLeanPreservation.Rust.rel_ne_stuck @326 -@354 := (v : @54) -> @337 (@338 (@324 @12 @4) @17) @342 -@355 := @347 @330 -@359 := @337 (@338 @326 @330) @342 -@360 := @135 @65 -@361 := LexLeanPreservation.Rust.FunSem -@362 := #9 -@368 := (n : @3) -> @361 @362 @152 @146 @17 @138 -@369 := Eq.{1} -@370 := Option.{0} -@371 := @370 @82 -@372 := @369 @371 -@379 := LexLeanRuntime.index (@135 @82) @82 (LexLeanRuntime.instIndexableList @82) -@383 := @372 (@379 (@83 @362) @138) -@384 := Option.some.{0} -@385 := @384 @82 -@386 := @385 @140 -@387 := @383 @386 -@388 := #10 -@392 := @107 @388 @362 @152 @140 -@393 := LexLeanTarget.TargetSyntax.Function.types -@394 := @393 @138 -@395 := @392 @394 -@396 := @370 @360 -@397 := @369 @396 -@398 := LexLeanTarget.TargetSemantics.bindAll -@399 := LexLeanTarget.TargetSyntax.Function.parameters -@404 := @397 (@398 (@399 @146) @138 @75) -@405 := @384 @360 -@406 := @405 @140 -@407 := @404 @406 -@408 := @370 @334 -@409 := @369 @408 -@410 := LexLeanPreservation.Rust.fnFallible -@411 := #11 -@414 := @409 (@410 @411 @362) -@415 := @384 @334 -@416 := @415 @140 -@417 := @414 @416 -@418 := LexLeanPreservation.RunConv -@419 := #13 -@423 := @418 @419 @388 @152 @140 -@425 := @337 @138 @342 -@426 := Exists.{1} -@427 := LexLeanPreservation.Rust.ROut -@428 := @426 @427 -@429 := And -@430 := LexLeanPreservation.Rust.RealizesFn -@434 := @429 (@430 @362 @152 @17) -@435 := LexLeanPreservation.Rust.RCI -@437 := @435 #15 -@438 := LexLeanPreservation.Rust.fnIdent -@439 := @438 @419 -@446 := (hne : @425) -> @428 (fun (ro : @427) => @434 (@437 @439 @411 @17)) -@461 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {f : @3} -> - {fn : @82} -> - {args : @136} -> - {env : @360} -> - {F : @334} -> - {o : @336} -> - (hB : @368) -> - (hfn : @387) -> (hwt : @395) -> (hbind : @407) -> (hF : @417) -> (hA : @423) -> @446 -@463 := LexLeanPreservation.Rust.compose @0 -@464 := @361 @0 -@469 := (n : @3) -> @464 @152 @146 @17 @138 -@470 := @379 @84 -@473 := @372 (@470 @138) @386 -@477 := @118 @362 @152 @140 @394 -@478 := @418 @0 -@481 := @478 @388 @152 @140 -@495 := {c : @9} -> - {A : @10} -> - {f : @3} -> - {fn : @82} -> - {args : @136} -> - {env : @360} -> - {F : @334} -> - {o : @336} -> - (hB : @469) -> - (hfn : @473) -> (hwt : @477) -> (hbind : @407) -> (hF : @417) -> (hA : @481) -> @446 -@496 := @463 @1 -@497 := @464 @1 -@501 := (n : @3) -> @497 @146 @17 @138 -@504 := @126 @152 @140 @394 -@505 := @410 @1 -@508 := @409 (@505 @362) @416 -@509 := @435 @1 -@519 := (hbind : @407) -> - (hF : @508) -> (hA : @481) -> (hne : @425) -> @428 (fun (ro : @427) => @434 (@509 @439 @411 @17)) -@529 := {A : @10} -> - {f : @3} -> - {fn : @82} -> - {args : @136} -> - {env : @360} -> {F : @334} -> {o : @336} -> (hB : @501) -> (hfn : @473) -> (hwt : @504) -> @519 -@530 := @496 @2 -@532 := @497 @2 @17 -@534 := (n : @3) -> @532 @138 -@535 := @132 @140 -@536 := @535 @394 -@545 := {f : @3} -> - {fn : @82} -> - {args : @136} -> - {env : @360} -> {F : @334} -> {o : @336} -> (hB : @534) -> (hfn : @473) -> (hwt : @536) -> @519 -@546 := @530 @72 -@548 := (n : @3) -> @532 @72 -@549 := @470 @72 -@550 := @372 @549 -@551 := @550 @386 -@552 := @505 @72 -@553 := @409 @552 -@554 := @553 @416 -@555 := @478 @72 -@557 := @555 @152 @140 -@559 := @509 (@438 @72) -@567 := (hF : @554) -> (hA : @557) -> (hne : @425) -> @428 (fun (ro : @427) => @434 (@559 @411 @17)) -@576 := {fn : @82} -> - {args : @136} -> - {env : @360} -> - {F : @334} -> {o : @336} -> (hB : @548) -> (hfn : @551) -> (hwt : @536) -> (hbind : @407) -> @567 -@577 := @546 @102 -@579 := @550 (@385 @102) -@580 := @393 @102 -@581 := @535 @580 -@583 := @398 (@399 @102) -@595 := {args : @136} -> - {env : @360} -> - {F : @334} -> - {o : @336} -> - (hB : @548) -> (hfn : @579) -> (hwt : @581) -> (hbind : @397 (@583 @138 @75) @406) -> @567 -@596 := @577 @62 -@598 := @282 (@229 @57) -@600 := @132 @598 @580 -@602 := @58 (@5 @152) -@604 := @602 (@282 @57) -@608 := @397 (@583 @604 @75) @406 -@610 := @58 (@5 @388) -@612 := @58 (@5 @362) -@614 := @610 (@612 @57) -@616 := @555 @614 @140 -@618 := @58 (@5 @419) -@621 := @58 (@5 #12) -@638 := {env : @360} -> - {F : @334} -> - {o : @336} -> - (hB : @548) -> - (hfn : @579) -> - (hwt : @600) -> - (hbind : @608) -> - (hF : @554) -> - (hA : @616) -> (hne : @425) -> @428 (fun (ro : @427) => @434 (@559 (@618 (@621 @57)) @17)) -@639 := @596 @80 -@641 := @229 (@243 @57) -@643 := @132 @641 @580 -@654 := @397 (@583 @598 @75) (@405 (@76 (@70 @228) (@76 (@73 @281) @75))) -@656 := @612 (@602 @57) -@658 := @555 @656 @140 -@660 := @58 (@5 @411) -@676 := {F : @334} -> - {o : @336} -> - (hB : @548) -> - (hfn : @579) -> - (hwt : @643) -> - (hbind : @654) -> - (hF : @554) -> - (hA : @658) -> (hne : @425) -> @428 (fun (ro : @427) => @434 (@559 (@621 (@660 @57)) @17)) -@677 := @639 @81 -@678 := @301 @580 -@689 := @397 (@583 @641 @75) (@405 (@76 (@70 @242) (@76 (@73 @228) @75))) -@691 := @553 (@415 @81) -@693 := @555 @604 @140 -@694 := @430 @81 -@712 := {o : @336} -> - (hB : @548) -> - (hfn : @579) -> - (hwt : @678) -> - (hbind : @689) -> - (hF : @691) -> - (hA : @693) -> - (hne : @425) -> @428 (fun (ro : @427) => @429 (@694 @152 @17) (@559 (@660 (@610 @57)) @17)) -@713 := @677 @323 -@714 := @308 @580 -@725 := @397 (@583 @300 @75) (@405 (@76 (@70 @225) (@76 (@73 @242) @75))) -@726 := @555 @598 -@728 := @321 @146 @138 -@729 := @726 @728 -@731 := @321 @152 @146 -@750 := (hB : @548) -> - (hfn : @579) -> - (hwt : @714) -> - (hbind : @725) -> - (hF : @691) -> - (hA : @729) -> - (hne : @337 @731 @342) -> - @428 (fun (ro : @427) => @429 (@694 (@321 @388 @362) @17) (@559 @614 @17)) -@751 := @713 @106 -@752 := @315 @580 -@763 := @397 (@583 @307 @75) (@405 (@76 (@70 @239) (@76 (@73 @225) @75))) -@764 := @555 @641 -@766 := @321 @138 @140 -@785 := (hfn : @579) -> - (hwt : @752) -> - (hbind : @763) -> - (hF : @691) -> - (hA : @764 @766) -> - (hne : @337 @728 @342) -> - @428 (fun (ro : @427) => @429 (@694 (@321 @362 @152) @17) (@559 @656 @17)) -@786 := Eq.refl.{1} -@789 := @751 (@786 @371 @549) -@790 := @319 @580 -@801 := @397 (@583 @314 @75) (@405 (@76 (@70 @6) (@76 (@73 @239) @75))) -@802 := @555 @300 -@804 := @321 @140 @142 -@820 := (hwt : @790) -> - (hbind : @801) -> - (hF : @691) -> - (hA : @802 @804) -> - (hne : @337 @766 @342) -> @428 (fun (ro : @427) => @429 (@694 @731 @17) (@559 @604 @17)) -@821 := @789 @318 -@823 := @583 @62 @75 -@826 := @397 @823 (@405 @80) -@827 := @555 @307 -@829 := @321 @142 @12 -@844 := (hbind : @826) -> - (hF : @691) -> - (hA : @827 @829) -> - (hne : @337 @804 @342) -> @428 (fun (ro : @427) => @429 (@694 @728 @17) (@559 @598 @17)) -@847 := @821 (@786 @396 @823) -@848 := @555 @314 -@850 := @321 @12 @4 -@864 := (hF : @691) -> - (hA : @848 @850) -> - (hne : @337 @829 @342) -> @428 (fun (ro : @427) => @429 (@694 @766 @17) (@559 @641 @17)) -@867 := @847 (@786 @408 @552) -@881 := (hA : @555 @62 @323) -> - (hne : @337 @850 @342) -> @428 (fun (ro : @427) => @429 (@694 @804 @17) (@559 @300 @17)) -@882 := @867 @333 -@893 := (hne : @337 @323 @342) -> @428 (fun (ro : @427) => @429 (@694 @829 @17) (@559 @307 @17)) -@894 := @882 @355 -@900 := @429 (@694 @850 @17) (@559 @314 @17) -@902 := @428 (fun (ro : @427) => @900) -@904 := @428 (fun (__e_ro : @427) => @900) -@909 := LexLeanPreservation.Rust.RepresentableL (@59 (@58 @18 @57)) -@910 := (__e_hrep : @909) -> @904 -@911 := fun (__e_hrep : @909) => @894 -@912 := (offset : @3) -> @910 -@913 := fun (offset : @3) => @911 -@914 := (base : @3) -> @912 -@915 := fun (base : @3) => @913 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R18/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R18/Compose/RustStd.lex.tex deleted file mode 100644 index 9f2580920..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R18/Compose/RustStd.lex.tex +++ /dev/null @@ -1,462 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.Compose.RustStd.root : @914 := @915 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.RustStd.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.RustStd.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.RustStd.flags -@3 := Nat -@4 := #2 -@5 := LexLeanTarget.TargetSyntax.Value.nat -@6 := @5 @4 -@7 := LexLeanTarget.TargetSyntax.Ty.nat -@8 := LexLeanTarget.TargetSyntax.Program -@9 := LexLeanPreservation.Rust.RCrate -@10 := LexLeanPreservation.Rust.Flags -@11 := LexLeanPreservation.Rust.WT -@12 := #3 -@14 := @11 @12 @4 -@15 := #1 -@16 := @14 @15 -@17 := #0 -@18 := @5 @17 -@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 -@26 := LexLeanPreservation.Rust.wt_nat @0 -@27 := @11 @0 -@34 := {c : @9} -> {A : @10} -> (n : @3) -> @27 @4 @15 @18 @7 -@35 := @26 @1 -@36 := @27 @1 -@41 := {A : @10} -> (n : @3) -> @36 @15 @18 @7 -@42 := @35 @2 -@43 := @36 @2 -@46 := (n : @3) -> @43 @18 @7 -@47 := @42 @4 -@49 := @43 @6 @7 -@50 := @5 @15 -@51 := @42 @15 -@53 := @43 @50 @7 -@54 := LexLeanTarget.TargetSyntax.Value -@55 := List.nil.{0} -@56 := List.cons.{0} -@57 := @55 @54 -@58 := @56 @54 -@59 := @58 @50 -@60 := @59 @57 -@61 := @58 @6 -@62 := @61 @60 -@65 := Prod.{0, 0} @3 @54 -@66 := 1 -@69 := Prod.mk.{0, 0} @3 @54 -@70 := @69 @66 -@71 := @70 @50 -@72 := 0 -@73 := @69 @72 -@74 := @73 @6 -@75 := @55 @65 -@76 := @56 @65 -@78 := @76 @74 @75 -@80 := @76 @71 @78 -@81 := Bool.true -@82 := LexLeanTarget.TargetSyntax.Function -@83 := LexLeanTarget.TargetSyntax.Program.functions -@84 := @83 @0 -@85 := LexLeanTarget.TargetSyntax.Ty -@86 := @55 @3 -@87 := @55 @85 -@88 := LexLeanTarget.TargetSyntax.Ty.unit -@89 := LexLeanTarget.TargetSyntax.Value.unit -@92 := LexLeanTarget.TargetSyntax.Expr.value @88 @89 -@97 := LexLeanTarget.TargetSyntax.Function.mk @86 @87 @88 @92 -@102 := List.getD.{0} @82 @84 @72 @97 -@106 := fun (__e_n : @3) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.RustStd.root @17 @72 -@107 := LexLeanPreservation.Rust.WTL -@115 := {p : @8} -> {c : @9} -> {A : @10} -> @107 @4 @15 @17 @57 @87 -@117 := LexLeanPreservation.Rust.wtl_nil @0 -@118 := @107 @0 -@124 := {c : @9} -> {A : @10} -> @118 @15 @17 @57 @87 -@125 := @117 @1 -@126 := @118 @1 -@130 := {A : @10} -> @126 @17 @57 @87 -@131 := @125 @2 -@132 := @126 @2 -@133 := @132 @57 -@134 := @133 @87 -@135 := List.{0} -@136 := @135 @54 -@137 := @135 @85 -@138 := #6 -@139 := @11 @138 -@140 := #5 -@141 := @139 @140 -@142 := #4 -@145 := @141 @142 @12 @4 -@146 := #7 -@151 := @107 @146 @138 @140 @4 @15 -@152 := #8 -@155 := @107 @152 @146 @138 -@157 := @58 @140 @12 -@158 := @155 @157 -@159 := @56 @85 -@161 := @159 @142 @4 -@171 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {v : @54} -> {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @145) -> (hs : @151) -> @158 @161 -@173 := LexLeanPreservation.Rust.wtl_cons @0 -@193 := {c : @9} -> - {A : @10} -> - {v : @54} -> - {t : @85} -> - {vs : @136} -> - {ts : @137} -> - (h : @27 @140 @142 @12 @4) -> (hs : @118 @138 @140 @4 @15) -> @118 @146 @138 @157 @161 -@194 := @173 @1 -@210 := {A : @10} -> - {v : @54} -> - {t : @85} -> - {vs : @136} -> - {ts : @137} -> (h : @36 @142 @12 @4) -> (hs : @126 @140 @4 @15) -> @126 @138 @157 @161 -@211 := @194 @2 -@213 := @43 @12 @4 -@215 := @132 @4 @15 -@223 := {v : @54} -> - {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @213) -> (hs : @215) -> @132 @157 @161 -@224 := @211 @50 -@225 := @5 @142 -@226 := @43 @225 -@227 := @226 @4 -@228 := @5 @138 -@229 := @58 @228 -@231 := @132 (@229 @12) -@237 := {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @227) -> (hs : @215) -> @231 @161 -@238 := @224 @7 -@239 := @5 @12 -@241 := @43 @239 @7 -@242 := @5 @140 -@243 := @58 @242 -@245 := @132 (@243 @12) -@246 := @159 @7 -@247 := @246 @4 -@252 := {vs : @136} -> {ts : @137} -> (h : @241) -> (hs : @215) -> @245 @247 -@253 := @238 @57 -@254 := @133 @15 -@255 := @58 @225 -@256 := @255 @57 -@261 := {ts : @137} -> (h : @49) -> (hs : @254) -> @132 @256 @247 -@262 := @253 @87 -@263 := @58 @239 -@264 := @263 @57 -@265 := @132 @264 -@266 := @246 @87 -@269 := (h : @53) -> (hs : @134) -> @265 @266 -@270 := @262 @51 -@271 := @61 @57 -@273 := @132 @271 @266 -@274 := (hs : @134) -> @273 -@275 := @270 @131 -@277 := @132 @60 @266 -@278 := @211 @6 -@280 := @43 @242 @4 -@281 := @5 @146 -@282 := @58 @281 -@290 := {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @280) -> (hs : @215) -> @132 (@282 @12) @161 -@291 := @278 @7 -@297 := {vs : @136} -> {ts : @137} -> (h : @226 @7) -> (hs : @215) -> @231 @247 -@298 := @291 @60 -@299 := @265 @15 -@300 := @243 @256 -@301 := @132 @300 -@305 := {ts : @137} -> (h : @241) -> (hs : @299) -> @301 @247 -@306 := @298 @266 -@307 := @255 @264 -@308 := @132 @307 -@309 := @246 @266 -@312 := (h : @49) -> (hs : @273) -> @308 @309 -@313 := @306 @47 -@314 := @263 @271 -@315 := @132 @314 -@317 := (hs : @277) -> @315 @309 -@318 := @313 @275 -@319 := @132 @62 -@320 := @319 @309 -@321 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.denote -@323 := @321 @4 @15 -@324 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.__fits_0 -@326 := @324 @4 @15 -@330 := @5 (Coverage.Main.higher @4 @15) -@333 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.root @4 @15 -@334 := Bool -@335 := Ne.{1} -@336 := LexLeanPreservation.Obs -@337 := @335 @336 -@338 := LexLeanPreservation.Rel -@341 := @337 (@338 @15 @17) -@342 := LexLeanPreservation.Obs.stuck -@345 := (f : @334) -> (v : @54) -> @341 @342 -@347 := LexLeanPreservation.Rust.rel_ne_stuck @326 -@354 := (v : @54) -> @337 (@338 (@324 @12 @4) @17) @342 -@355 := @347 @330 -@359 := @337 (@338 @326 @330) @342 -@360 := @135 @65 -@361 := LexLeanPreservation.Rust.FunSem -@362 := #9 -@368 := (n : @3) -> @361 @362 @152 @146 @17 @138 -@369 := Eq.{1} -@370 := Option.{0} -@371 := @370 @82 -@372 := @369 @371 -@379 := LexLeanRuntime.index (@135 @82) @82 (LexLeanRuntime.instIndexableList @82) -@383 := @372 (@379 (@83 @362) @138) -@384 := Option.some.{0} -@385 := @384 @82 -@386 := @385 @140 -@387 := @383 @386 -@388 := #10 -@392 := @107 @388 @362 @152 @140 -@393 := LexLeanTarget.TargetSyntax.Function.types -@394 := @393 @138 -@395 := @392 @394 -@396 := @370 @360 -@397 := @369 @396 -@398 := LexLeanTarget.TargetSemantics.bindAll -@399 := LexLeanTarget.TargetSyntax.Function.parameters -@404 := @397 (@398 (@399 @146) @138 @75) -@405 := @384 @360 -@406 := @405 @140 -@407 := @404 @406 -@408 := @370 @334 -@409 := @369 @408 -@410 := LexLeanPreservation.Rust.fnFallible -@411 := #11 -@414 := @409 (@410 @411 @362) -@415 := @384 @334 -@416 := @415 @140 -@417 := @414 @416 -@418 := LexLeanPreservation.RunConv -@419 := #13 -@423 := @418 @419 @388 @152 @140 -@425 := @337 @138 @342 -@426 := Exists.{1} -@427 := LexLeanPreservation.Rust.ROut -@428 := @426 @427 -@429 := And -@430 := LexLeanPreservation.Rust.RealizesFn -@434 := @429 (@430 @362 @152 @17) -@435 := LexLeanPreservation.Rust.RCI -@437 := @435 #15 -@438 := LexLeanPreservation.Rust.fnIdent -@439 := @438 @419 -@446 := (hne : @425) -> @428 (fun (ro : @427) => @434 (@437 @439 @411 @17)) -@461 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {f : @3} -> - {fn : @82} -> - {args : @136} -> - {env : @360} -> - {F : @334} -> - {o : @336} -> - (hB : @368) -> - (hfn : @387) -> (hwt : @395) -> (hbind : @407) -> (hF : @417) -> (hA : @423) -> @446 -@463 := LexLeanPreservation.Rust.compose @0 -@464 := @361 @0 -@469 := (n : @3) -> @464 @152 @146 @17 @138 -@470 := @379 @84 -@473 := @372 (@470 @138) @386 -@477 := @118 @362 @152 @140 @394 -@478 := @418 @0 -@481 := @478 @388 @152 @140 -@495 := {c : @9} -> - {A : @10} -> - {f : @3} -> - {fn : @82} -> - {args : @136} -> - {env : @360} -> - {F : @334} -> - {o : @336} -> - (hB : @469) -> - (hfn : @473) -> (hwt : @477) -> (hbind : @407) -> (hF : @417) -> (hA : @481) -> @446 -@496 := @463 @1 -@497 := @464 @1 -@501 := (n : @3) -> @497 @146 @17 @138 -@504 := @126 @152 @140 @394 -@505 := @410 @1 -@508 := @409 (@505 @362) @416 -@509 := @435 @1 -@519 := (hbind : @407) -> - (hF : @508) -> (hA : @481) -> (hne : @425) -> @428 (fun (ro : @427) => @434 (@509 @439 @411 @17)) -@529 := {A : @10} -> - {f : @3} -> - {fn : @82} -> - {args : @136} -> - {env : @360} -> {F : @334} -> {o : @336} -> (hB : @501) -> (hfn : @473) -> (hwt : @504) -> @519 -@530 := @496 @2 -@532 := @497 @2 @17 -@534 := (n : @3) -> @532 @138 -@535 := @132 @140 -@536 := @535 @394 -@545 := {f : @3} -> - {fn : @82} -> - {args : @136} -> - {env : @360} -> {F : @334} -> {o : @336} -> (hB : @534) -> (hfn : @473) -> (hwt : @536) -> @519 -@546 := @530 @72 -@548 := (n : @3) -> @532 @72 -@549 := @470 @72 -@550 := @372 @549 -@551 := @550 @386 -@552 := @505 @72 -@553 := @409 @552 -@554 := @553 @416 -@555 := @478 @72 -@557 := @555 @152 @140 -@559 := @509 (@438 @72) -@567 := (hF : @554) -> (hA : @557) -> (hne : @425) -> @428 (fun (ro : @427) => @434 (@559 @411 @17)) -@576 := {fn : @82} -> - {args : @136} -> - {env : @360} -> - {F : @334} -> {o : @336} -> (hB : @548) -> (hfn : @551) -> (hwt : @536) -> (hbind : @407) -> @567 -@577 := @546 @102 -@579 := @550 (@385 @102) -@580 := @393 @102 -@581 := @535 @580 -@583 := @398 (@399 @102) -@595 := {args : @136} -> - {env : @360} -> - {F : @334} -> - {o : @336} -> - (hB : @548) -> (hfn : @579) -> (hwt : @581) -> (hbind : @397 (@583 @138 @75) @406) -> @567 -@596 := @577 @62 -@598 := @282 (@229 @57) -@600 := @132 @598 @580 -@602 := @58 (@5 @152) -@604 := @602 (@282 @57) -@608 := @397 (@583 @604 @75) @406 -@610 := @58 (@5 @388) -@612 := @58 (@5 @362) -@614 := @610 (@612 @57) -@616 := @555 @614 @140 -@618 := @58 (@5 @419) -@621 := @58 (@5 #12) -@638 := {env : @360} -> - {F : @334} -> - {o : @336} -> - (hB : @548) -> - (hfn : @579) -> - (hwt : @600) -> - (hbind : @608) -> - (hF : @554) -> - (hA : @616) -> (hne : @425) -> @428 (fun (ro : @427) => @434 (@559 (@618 (@621 @57)) @17)) -@639 := @596 @80 -@641 := @229 (@243 @57) -@643 := @132 @641 @580 -@654 := @397 (@583 @598 @75) (@405 (@76 (@70 @228) (@76 (@73 @281) @75))) -@656 := @612 (@602 @57) -@658 := @555 @656 @140 -@660 := @58 (@5 @411) -@676 := {F : @334} -> - {o : @336} -> - (hB : @548) -> - (hfn : @579) -> - (hwt : @643) -> - (hbind : @654) -> - (hF : @554) -> - (hA : @658) -> (hne : @425) -> @428 (fun (ro : @427) => @434 (@559 (@621 (@660 @57)) @17)) -@677 := @639 @81 -@678 := @301 @580 -@689 := @397 (@583 @641 @75) (@405 (@76 (@70 @242) (@76 (@73 @228) @75))) -@691 := @553 (@415 @81) -@693 := @555 @604 @140 -@694 := @430 @81 -@712 := {o : @336} -> - (hB : @548) -> - (hfn : @579) -> - (hwt : @678) -> - (hbind : @689) -> - (hF : @691) -> - (hA : @693) -> - (hne : @425) -> @428 (fun (ro : @427) => @429 (@694 @152 @17) (@559 (@660 (@610 @57)) @17)) -@713 := @677 @323 -@714 := @308 @580 -@725 := @397 (@583 @300 @75) (@405 (@76 (@70 @225) (@76 (@73 @242) @75))) -@726 := @555 @598 -@728 := @321 @146 @138 -@729 := @726 @728 -@731 := @321 @152 @146 -@750 := (hB : @548) -> - (hfn : @579) -> - (hwt : @714) -> - (hbind : @725) -> - (hF : @691) -> - (hA : @729) -> - (hne : @337 @731 @342) -> - @428 (fun (ro : @427) => @429 (@694 (@321 @388 @362) @17) (@559 @614 @17)) -@751 := @713 @106 -@752 := @315 @580 -@763 := @397 (@583 @307 @75) (@405 (@76 (@70 @239) (@76 (@73 @225) @75))) -@764 := @555 @641 -@766 := @321 @138 @140 -@785 := (hfn : @579) -> - (hwt : @752) -> - (hbind : @763) -> - (hF : @691) -> - (hA : @764 @766) -> - (hne : @337 @728 @342) -> - @428 (fun (ro : @427) => @429 (@694 (@321 @362 @152) @17) (@559 @656 @17)) -@786 := Eq.refl.{1} -@789 := @751 (@786 @371 @549) -@790 := @319 @580 -@801 := @397 (@583 @314 @75) (@405 (@76 (@70 @6) (@76 (@73 @239) @75))) -@802 := @555 @300 -@804 := @321 @140 @142 -@820 := (hwt : @790) -> - (hbind : @801) -> - (hF : @691) -> - (hA : @802 @804) -> - (hne : @337 @766 @342) -> @428 (fun (ro : @427) => @429 (@694 @731 @17) (@559 @604 @17)) -@821 := @789 @318 -@823 := @583 @62 @75 -@826 := @397 @823 (@405 @80) -@827 := @555 @307 -@829 := @321 @142 @12 -@844 := (hbind : @826) -> - (hF : @691) -> - (hA : @827 @829) -> - (hne : @337 @804 @342) -> @428 (fun (ro : @427) => @429 (@694 @728 @17) (@559 @598 @17)) -@847 := @821 (@786 @396 @823) -@848 := @555 @314 -@850 := @321 @12 @4 -@864 := (hF : @691) -> - (hA : @848 @850) -> - (hne : @337 @829 @342) -> @428 (fun (ro : @427) => @429 (@694 @766 @17) (@559 @641 @17)) -@867 := @847 (@786 @408 @552) -@881 := (hA : @555 @62 @323) -> - (hne : @337 @850 @342) -> @428 (fun (ro : @427) => @429 (@694 @804 @17) (@559 @300 @17)) -@882 := @867 @333 -@893 := (hne : @337 @323 @342) -> @428 (fun (ro : @427) => @429 (@694 @829 @17) (@559 @307 @17)) -@894 := @882 @355 -@900 := @429 (@694 @850 @17) (@559 @314 @17) -@902 := @428 (fun (ro : @427) => @900) -@904 := @428 (fun (__e_ro : @427) => @900) -@909 := LexLeanPreservation.Rust.RepresentableL (@59 (@58 @18 @57)) -@910 := (__e_hrep : @909) -> @904 -@911 := fun (__e_hrep : @909) => @894 -@912 := (offset : @3) -> @910 -@913 := fun (offset : @3) => @911 -@914 := (base : @3) -> @912 -@915 := fun (base : @3) => @913 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R18/RustCore.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R18/RustCore.lean deleted file mode 100644 index faa15cb6b..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R18/RustCore.lean +++ /dev/null @@ -1,67 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.RustCore -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1], types := [.nat, .nat], result := .nat, - body := (.«let» 2 .nat (.prim .natAdd [(.var 0), (.value .nat (.nat 1))]) (.prim .natAdd [(.call 1 [(.closure 2 [(.var 2), (.var 1)]), (.var 0)]), (.prim .natAdd [(.apply (.closure 3 [(.var 2)]) [(.var 0)]), (.call 1 [(.closure 4 []), (.var 1)])])])) }, - { parameters := [0, 1], types := [(.fn [.nat] .nat), .nat], result := .nat, - body := (.apply (.var 0) [(.apply (.var 0) [(.var 1)])]) }, - { parameters := [0, 1, 2], types := [.nat, .nat, .nat], result := .nat, - body := (.prim .natAdd [(.prim .natMul [(.var 2), (.var 0)]), (.var 1)]) }, - { parameters := [0, 1], types := [.nat, .nat], result := .nat, - body := (.prim .natSub [(.var 1), (.var 0)]) }, - { parameters := [0], types := [.nat], result := .nat, - body := (.prim .natAdd [(.var 0), (.var 0)]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .core, items := [ - (.enum (.fn 0) [{ number := 2, fields := [.nat, .nat] }, { number := 3, fields := [.nat] }, { number := 4, fields := [] }]), - (.apply 0 [.nat] .nat true [{ function := 2, captures := [.copy, .copy], functionFallible := true }, { function := 3, captures := [.copy], functionFallible := false }, { function := 4, captures := [], functionFallible := true }]), - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] true)))), (.mk (.bind (.generated .operand 6)) none (.call (.function 1) [(.construct (.closure 0 2) [(.copy (.generated .binding 2)), (.copy (.generated .binding 1))]), (.copy (.generated .binding 0))] true)), (.mk (.bind (.generated .operand 7)) none (.block (.mk [(.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .callee 3)) (some (.fn 0)) (.construct (.closure 0 3) [(.copy (.generated .binding 2))]))] (.apply (.generated .callee 3) [(.copy (.generated .binding 0))] true)))), (.mk (.bind (.generated .operand 5)) none (.call (.function 1) [(.construct (.closure 0 4) []), (.copy (.generated .binding 1))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] true))))] (.call (.runtime .natAdd) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false))), - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .callee 8)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 8) [(.block (.mk [(.mk (.bind (.generated .callee 9)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 9) [(.copy (.generated .binding 1))] true)))] false))), - (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .operand 12)) none (.block (.mk [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0)))] (.call (.runtime .natMul) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] true)))), (.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false))), - (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .nat (.mk [(.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 0)))] (.call (.runtime .natSub) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false))), - (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 0)))] (.call (.runtime .natAdd) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false)))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [(([.nat], .nat), true)] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] true)))), (.mk (.bind (.generated .operand 6)) none (.call (.function 1) [(.construct (.closure 0 2) [(.copy (.generated .binding 2)), (.copy (.generated .binding 1))]), (.copy (.generated .binding 0))] true)), (.mk (.bind (.generated .operand 7)) none (.block (.mk [(.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .callee 3)) (some (.fn 0)) (.construct (.closure 0 3) [(.copy (.generated .binding 2))]))] (.apply (.generated .callee 3) [(.copy (.generated .binding 0))] true)))), (.mk (.bind (.generated .operand 5)) none (.call (.function 1) [(.construct (.closure 0 4) []), (.copy (.generated .binding 1))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] true))))], (.call (.runtime .natAdd) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.fn [.nat] .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [.nat, .nat]) (mask := [false, false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .callee 3)) (some (.fn 0)) (.construct (.closure 0 3) [(.copy (.generated .binding 2))]))] (.apply (.generated .callee 3) [(.copy (.generated .binding 0))] true)))), (.mk (.bind (.generated .operand 5)) none (.call (.function 1) [(.construct (.closure 0 4) []), (.copy (.generated .binding 1))] true))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 3)) (some (.fn 0)) (.construct (.closure 0 3) [(.copy (.generated .binding 2))]))]) (tail := (.apply (.generated .callee 3) [(.copy (.generated .binding 0))] true)) (Corr.apply (ps := [.nat]) (af := true) (Corr.eOfBNil (Corr.closure (caps := [.nat]) (mask := [false]) (af := true) (ff := false) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.fn [.nat] .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl))⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .callee 8)) (some (.fn 0)) (.clone (.generated .binding 0)))], (.apply (.generated .callee 8) [(.block (.mk [(.mk (.bind (.generated .callee 9)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 9) [(.copy (.generated .binding 1))] true)))] false), [(1, .nat, (some 1)), (0, (.fn [.nat] .nat), (some 0))], rfl, rfl, - (Corr.applyF (ps := [.nat]) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 9)) (some (.fn 0)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 9) [(.copy (.generated .binding 1))] true)) (Corr.apply (ps := [.nat]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl)⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 12)) none (.block (.mk [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0)))] (.call (.runtime .natMul) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] true)))), (.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1)))], (.call (.runtime .natAdd) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false), [(2, .nat, (some 2)), (1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0)))]) (tail := (.call (.runtime .natMul) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun3 : FunOK program krate flags 3 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 0)))], (.call (.runtime .natSub) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun4 : FunOK program krate flags 4 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 0)))], (.call (.runtime .natAdd) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false), [(0, .nat, (some 0))], rfl, rfl, - (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | 3 => exact fun3 - | 4 => exact fun4 - | _ + 5 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.RustCore diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R18/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R18/RustStd.lean deleted file mode 100644 index cddecbc09..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R18/RustStd.lean +++ /dev/null @@ -1,67 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1], types := [.nat, .nat], result := .nat, - body := (.«let» 2 .nat (.prim .natAdd [(.var 0), (.value .nat (.nat 1))]) (.prim .natAdd [(.call 1 [(.closure 2 [(.var 2), (.var 1)]), (.var 0)]), (.prim .natAdd [(.apply (.closure 3 [(.var 2)]) [(.var 0)]), (.call 1 [(.closure 4 []), (.var 1)])])])) }, - { parameters := [0, 1], types := [(.fn [.nat] .nat), .nat], result := .nat, - body := (.apply (.var 0) [(.apply (.var 0) [(.var 1)])]) }, - { parameters := [0, 1, 2], types := [.nat, .nat, .nat], result := .nat, - body := (.prim .natAdd [(.prim .natMul [(.var 2), (.var 0)]), (.var 1)]) }, - { parameters := [0, 1], types := [.nat, .nat], result := .nat, - body := (.prim .natSub [(.var 1), (.var 0)]) }, - { parameters := [0], types := [.nat], result := .nat, - body := (.prim .natAdd [(.var 0), (.var 0)]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.enum (.fn 0) [{ number := 2, fields := [.nat, .nat] }, { number := 3, fields := [.nat] }, { number := 4, fields := [] }]), - (.apply 0 [.nat] .nat true [{ function := 2, captures := [.copy, .copy], functionFallible := true }, { function := 3, captures := [.copy], functionFallible := false }, { function := 4, captures := [], functionFallible := true }]), - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] true)))), (.mk (.bind (.generated .operand 6)) none (.call (.function 1) [(.construct (.closure 0 2) [(.copy (.generated .binding 2)), (.copy (.generated .binding 1))]), (.copy (.generated .binding 0))] true)), (.mk (.bind (.generated .operand 7)) none (.block (.mk [(.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .callee 3)) (some (.fn 0)) (.construct (.closure 0 3) [(.copy (.generated .binding 2))]))] (.apply (.generated .callee 3) [(.copy (.generated .binding 0))] true)))), (.mk (.bind (.generated .operand 5)) none (.call (.function 1) [(.construct (.closure 0 4) []), (.copy (.generated .binding 1))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] true))))] (.call (.runtime .natAdd) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false))), - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .callee 8)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 8) [(.block (.mk [(.mk (.bind (.generated .callee 9)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 9) [(.copy (.generated .binding 1))] true)))] false))), - (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .operand 12)) none (.block (.mk [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0)))] (.call (.runtime .natMul) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] true)))), (.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false))), - (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .nat (.mk [(.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 0)))] (.call (.runtime .natSub) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false))), - (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 0)))] (.call (.runtime .natAdd) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false)))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [(([.nat], .nat), true)] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] true)))), (.mk (.bind (.generated .operand 6)) none (.call (.function 1) [(.construct (.closure 0 2) [(.copy (.generated .binding 2)), (.copy (.generated .binding 1))]), (.copy (.generated .binding 0))] true)), (.mk (.bind (.generated .operand 7)) none (.block (.mk [(.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .callee 3)) (some (.fn 0)) (.construct (.closure 0 3) [(.copy (.generated .binding 2))]))] (.apply (.generated .callee 3) [(.copy (.generated .binding 0))] true)))), (.mk (.bind (.generated .operand 5)) none (.call (.function 1) [(.construct (.closure 0 4) []), (.copy (.generated .binding 1))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] true))))], (.call (.runtime .natAdd) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.fn [.nat] .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [.nat, .nat]) (mask := [false, false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .callee 3)) (some (.fn 0)) (.construct (.closure 0 3) [(.copy (.generated .binding 2))]))] (.apply (.generated .callee 3) [(.copy (.generated .binding 0))] true)))), (.mk (.bind (.generated .operand 5)) none (.call (.function 1) [(.construct (.closure 0 4) []), (.copy (.generated .binding 1))] true))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 3)) (some (.fn 0)) (.construct (.closure 0 3) [(.copy (.generated .binding 2))]))]) (tail := (.apply (.generated .callee 3) [(.copy (.generated .binding 0))] true)) (Corr.apply (ps := [.nat]) (af := true) (Corr.eOfBNil (Corr.closure (caps := [.nat]) (mask := [false]) (af := true) (ff := false) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.fn [.nat] .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl))⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .callee 8)) (some (.fn 0)) (.clone (.generated .binding 0)))], (.apply (.generated .callee 8) [(.block (.mk [(.mk (.bind (.generated .callee 9)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 9) [(.copy (.generated .binding 1))] true)))] false), [(1, .nat, (some 1)), (0, (.fn [.nat] .nat), (some 0))], rfl, rfl, - (Corr.applyF (ps := [.nat]) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 9)) (some (.fn 0)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 9) [(.copy (.generated .binding 1))] true)) (Corr.apply (ps := [.nat]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl)⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 12)) none (.block (.mk [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0)))] (.call (.runtime .natMul) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] true)))), (.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1)))], (.call (.runtime .natAdd) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false), [(2, .nat, (some 2)), (1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0)))]) (tail := (.call (.runtime .natMul) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun3 : FunOK program krate flags 3 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 0)))], (.call (.runtime .natSub) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun4 : FunOK program krate flags 4 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 0)))], (.call (.runtime .natAdd) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false), [(0, .nat, (some 0))], rfl, rfl, - (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | 3 => exact fun3 - | 4 => exact fun4 - | _ + 5 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R19/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R19/Compose/RustStd.lex.tex deleted file mode 100644 index 30f54881c..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R19/Compose/RustStd.lex.tex +++ /dev/null @@ -1,463 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.Compose.RustStd.root : @926 := @927 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.RustStd.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.RustStd.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.RustStd.flags -@3 := Nat -@4 := List.{0} -@5 := @4 @3 -@6 := #1 -@7 := LexLeanTarget.TargetSyntax.Value.nat -@8 := LexLeanPreservation.encList -@9 := @8 @3 -@10 := @9 @7 -@11 := @10 @6 -@12 := LexLeanTarget.TargetSyntax.Ty.nat -@13 := LexLeanTarget.TargetSyntax.Ty.list -@14 := @13 @12 -@15 := #0 -@16 := LexLeanTarget.TargetSyntax.Program -@17 := LexLeanPreservation.Rust.RCrate -@18 := LexLeanPreservation.Rust.Flags -@19 := LexLeanPreservation.Rust.WT -@20 := #3 -@21 := @19 @20 -@22 := #2 -@24 := @21 @22 @6 -@25 := @7 @15 -@31 := {p : @16} -> {c : @17} -> {A : @18} -> (n : @3) -> @24 @25 @12 -@33 := LexLeanPreservation.Rust.wt_nat @0 -@34 := @19 @0 -@41 := {c : @17} -> {A : @18} -> (n : @3) -> @34 @22 @6 @25 @12 -@42 := @33 @1 -@43 := @34 @1 -@48 := {A : @18} -> (n : @3) -> @43 @6 @25 @12 -@49 := @42 @2 -@50 := @43 @2 -@51 := @50 @25 -@52 := @51 @12 -@53 := (n : @3) -> @52 -@55 := fun (__x : @3) => @49 @15 -@56 := Sort 1 -@57 := LexLeanTarget.TargetSyntax.Value -@58 := (a._@._internal._hyg.#0 : @15) -> @57 -@59 := LexLeanTarget.TargetSyntax.Ty -@60 := #6 -@61 := @19 @60 -@62 := #5 -@63 := @61 @62 -@64 := #4 -@65 := @63 @64 -@66 := @22 @15 -@69 := (x : @22) -> @65 @66 @6 -@70 := @4 @20 -@71 := #7 -@74 := @19 @71 @60 @62 -@77 := @8 @64 @20 @15 -@78 := @74 @77 -@79 := @13 @22 -@88 := {p : @16} -> - {c : @17} -> - {A : @18} -> {α : @56} -> {e : @58} -> {t : @59} -> (h : @69) -> (xs : @70) -> @78 @79 -@90 := LexLeanPreservation.Rust.wt_encList @0 -@92 := @34 @62 @64 -@106 := {c : @17} -> - {A : @18} -> - {α : @56} -> - {e : @58} -> {t : @59} -> (h : (x : @22) -> @92 @66 @6) -> (xs : @70) -> @34 @60 @62 @77 @79 -@107 := @90 @1 -@108 := @43 @64 -@120 := {A : @18} -> - {α : @56} -> - {e : @58} -> {t : @59} -> (h : (x : @22) -> @108 @66 @6) -> (xs : @70) -> @43 @62 @77 @79 -@121 := @107 @2 -@123 := @50 @66 @6 -@131 := {α : @56} -> {e : @58} -> {t : @59} -> (h : (x : @22) -> @123) -> (xs : @70) -> @50 @77 @79 -@132 := @121 @3 -@142 := {e : (a._@._internal._hyg.#0 : @3) -> @57} -> - {t : @59} -> (h : (x : @3) -> @123) -> (xs : @5) -> @50 (@9 @20 @15) @79 -@143 := @132 @7 -@145 := (x : @3) -> @51 @6 -@146 := @10 @15 -@147 := @50 @146 -@151 := {t : @59} -> (h : @145) -> (xs : @5) -> @147 @79 -@152 := @143 @12 -@156 := (h : (x : @3) -> @52) -> (xs : @5) -> @147 @14 -@158 := @152 @55 @6 -@160 := @50 @11 @14 -@161 := List.nil.{0} -@162 := List.cons.{0} -@163 := @161 @57 -@164 := @162 @57 -@166 := @164 @11 @163 -@169 := Prod.{0, 0} @3 @57 -@170 := 0 -@174 := Prod.mk.{0, 0} @3 @57 @170 -@175 := @174 @11 -@176 := @161 @169 -@177 := @162 @169 -@179 := @177 @175 @176 -@180 := Bool.false -@181 := LexLeanTarget.TargetSyntax.Function -@182 := LexLeanTarget.TargetSyntax.Program.functions -@183 := @182 @0 -@184 := @161 @3 -@185 := @161 @59 -@186 := LexLeanTarget.TargetSyntax.Ty.unit -@187 := LexLeanTarget.TargetSyntax.Value.unit -@190 := LexLeanTarget.TargetSyntax.Expr.value @186 @187 -@195 := LexLeanTarget.TargetSyntax.Function.mk @184 @185 @186 @190 -@200 := List.getD.{0} @181 @183 @170 @195 -@204 := fun (__e_n : @3) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.RustStd.root @15 @170 -@205 := LexLeanPreservation.Rust.WTL -@213 := {p : @16} -> {c : @17} -> {A : @18} -> @205 @22 @6 @15 @163 @185 -@215 := LexLeanPreservation.Rust.wtl_nil @0 -@216 := @205 @0 -@222 := {c : @17} -> {A : @18} -> @216 @6 @15 @163 @185 -@223 := @215 @1 -@224 := @216 @1 -@228 := {A : @18} -> @224 @15 @163 @185 -@229 := @223 @2 -@230 := @224 @2 -@231 := @230 @163 -@232 := @231 @185 -@233 := @4 @57 -@234 := @4 @59 -@236 := @65 @20 @22 -@241 := @205 @71 @60 @62 @22 @6 -@242 := #8 -@245 := @205 @242 @71 @60 -@247 := @164 @62 @20 -@248 := @245 @247 -@249 := @162 @59 -@251 := @249 @64 @22 -@261 := {p : @16} -> - {c : @17} -> - {A : @18} -> - {v : @57} -> {t : @59} -> {vs : @233} -> {ts : @234} -> (h : @236) -> (hs : @241) -> @248 @251 -@263 := LexLeanPreservation.Rust.wtl_cons @0 -@281 := {c : @17} -> - {A : @18} -> - {v : @57} -> - {t : @59} -> - {vs : @233} -> - {ts : @234} -> (h : @92 @20 @22) -> (hs : @216 @60 @62 @22 @6) -> @216 @71 @60 @247 @251 -@282 := @263 @1 -@297 := {A : @18} -> - {v : @57} -> - {t : @59} -> - {vs : @233} -> {ts : @234} -> (h : @108 @20 @22) -> (hs : @224 @62 @22 @6) -> @224 @60 @247 @251 -@298 := @282 @2 -@300 := @50 @20 @22 -@302 := @230 @22 @6 -@310 := {v : @57} -> - {t : @59} -> {vs : @233} -> {ts : @234} -> (h : @300) -> (hs : @302) -> @230 @247 @251 -@311 := @298 @11 -@312 := @10 @64 -@314 := @50 @312 @22 -@315 := @10 @60 -@316 := @164 @315 -@324 := {t : @59} -> {vs : @233} -> {ts : @234} -> (h : @314) -> (hs : @302) -> @230 (@316 @20) @251 -@325 := @311 @14 -@326 := @10 @20 -@328 := @50 @326 @14 -@329 := @10 @62 -@330 := @164 @329 -@332 := @230 (@330 @20) -@333 := @249 @14 -@334 := @333 @22 -@339 := {vs : @233} -> {ts : @234} -> (h : @328) -> (hs : @302) -> @332 @334 -@340 := @325 @163 -@341 := @10 @22 -@343 := @50 @341 @14 -@344 := @231 @6 -@346 := @164 @312 @163 -@347 := @230 @346 -@351 := {ts : @234} -> (h : @343) -> (hs : @344) -> @347 @334 -@352 := @340 @185 -@354 := @164 @326 @163 -@355 := @230 @354 -@356 := @333 @185 -@359 := (h : @160) -> (hs : @232) -> @355 @356 -@360 := @352 @158 -@362 := @164 @341 @163 -@363 := @230 @362 -@365 := (hs : @232) -> @363 @356 -@366 := @360 @229 -@367 := @230 @166 -@368 := @367 @356 -@369 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.denote -@370 := @369 @6 -@371 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.__fits_0 -@372 := @371 @6 -@374 := Coverage.Main.mapped @6 -@375 := Bool -@376 := LexLeanTarget.TargetSyntax.Value.bool -@379 := @8 @375 @376 @374 -@381 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.root @6 -@382 := Ne.{1} -@383 := LexLeanPreservation.Obs -@384 := @382 @383 -@385 := LexLeanPreservation.Rel -@388 := @384 (@385 @6 @15) -@389 := LexLeanPreservation.Obs.stuck -@392 := (f : @375) -> (v : @57) -> @388 @389 -@394 := LexLeanPreservation.Rust.rel_ne_stuck @372 -@400 := (v : @57) -> @384 (@385 (@371 @22) @15) @389 -@401 := @394 @379 -@405 := @384 (@385 @372 @379) @389 -@406 := @4 @169 -@407 := LexLeanPreservation.Rust.FunSem -@408 := #9 -@414 := (n : @3) -> @407 @408 @242 @71 @15 @60 -@415 := Eq.{1} -@416 := Option.{0} -@417 := @416 @181 -@418 := @415 @417 -@425 := LexLeanRuntime.index (@4 @181) @181 (LexLeanRuntime.instIndexableList @181) -@429 := @418 (@425 (@182 @408) @60) -@430 := Option.some.{0} -@431 := @430 @181 -@432 := @431 @62 -@433 := @429 @432 -@434 := #10 -@438 := @205 @434 @408 @242 @62 -@439 := LexLeanTarget.TargetSyntax.Function.types -@440 := @439 @60 -@441 := @438 @440 -@442 := @416 @406 -@443 := @415 @442 -@444 := LexLeanTarget.TargetSemantics.bindAll -@445 := LexLeanTarget.TargetSyntax.Function.parameters -@450 := @443 (@444 (@445 @71) @60 @176) -@451 := @430 @406 -@452 := @451 @62 -@453 := @450 @452 -@454 := @416 @375 -@455 := @415 @454 -@456 := LexLeanPreservation.Rust.fnFallible -@457 := #11 -@460 := @455 (@456 @457 @408) -@461 := @430 @375 -@462 := @461 @62 -@463 := @460 @462 -@464 := LexLeanPreservation.RunConv -@465 := #13 -@469 := @464 @465 @434 @242 @62 -@471 := @384 @60 @389 -@472 := Exists.{1} -@473 := LexLeanPreservation.Rust.ROut -@474 := @472 @473 -@475 := And -@476 := LexLeanPreservation.Rust.RealizesFn -@480 := @475 (@476 @408 @242 @15) -@481 := LexLeanPreservation.Rust.RCI -@483 := @481 #15 -@484 := LexLeanPreservation.Rust.fnIdent -@485 := @484 @465 -@492 := (hne : @471) -> @474 (fun (ro : @473) => @480 (@483 @485 @457 @15)) -@507 := {p : @16} -> - {c : @17} -> - {A : @18} -> - {f : @3} -> - {fn : @181} -> - {args : @233} -> - {env : @406} -> - {F : @375} -> - {o : @383} -> - (hB : @414) -> - (hfn : @433) -> (hwt : @441) -> (hbind : @453) -> (hF : @463) -> (hA : @469) -> @492 -@509 := LexLeanPreservation.Rust.compose @0 -@510 := @407 @0 -@515 := (n : @3) -> @510 @242 @71 @15 @60 -@516 := @425 @183 -@519 := @418 (@516 @60) @432 -@523 := @216 @408 @242 @62 @440 -@524 := @464 @0 -@527 := @524 @434 @242 @62 -@541 := {c : @17} -> - {A : @18} -> - {f : @3} -> - {fn : @181} -> - {args : @233} -> - {env : @406} -> - {F : @375} -> - {o : @383} -> - (hB : @515) -> - (hfn : @519) -> (hwt : @523) -> (hbind : @453) -> (hF : @463) -> (hA : @527) -> @492 -@542 := @509 @1 -@543 := @510 @1 -@547 := (n : @3) -> @543 @71 @15 @60 -@550 := @224 @242 @62 @440 -@551 := @456 @1 -@554 := @455 (@551 @408) @462 -@555 := @481 @1 -@565 := (hbind : @453) -> - (hF : @554) -> (hA : @527) -> (hne : @471) -> @474 (fun (ro : @473) => @480 (@555 @485 @457 @15)) -@575 := {A : @18} -> - {f : @3} -> - {fn : @181} -> - {args : @233} -> - {env : @406} -> {F : @375} -> {o : @383} -> (hB : @547) -> (hfn : @519) -> (hwt : @550) -> @565 -@576 := @542 @2 -@578 := @543 @2 @15 -@580 := (n : @3) -> @578 @60 -@581 := @230 @62 -@582 := @581 @440 -@591 := {f : @3} -> - {fn : @181} -> - {args : @233} -> - {env : @406} -> {F : @375} -> {o : @383} -> (hB : @580) -> (hfn : @519) -> (hwt : @582) -> @565 -@592 := @576 @170 -@594 := (n : @3) -> @578 @170 -@595 := @516 @170 -@596 := @418 @595 -@597 := @596 @432 -@598 := @551 @170 -@599 := @455 @598 -@600 := @599 @462 -@601 := @524 @170 -@603 := @601 @242 @62 -@605 := @555 (@484 @170) -@613 := (hF : @600) -> (hA : @603) -> (hne : @471) -> @474 (fun (ro : @473) => @480 (@605 @457 @15)) -@622 := {fn : @181} -> - {args : @233} -> - {env : @406} -> - {F : @375} -> {o : @383} -> (hB : @594) -> (hfn : @597) -> (hwt : @582) -> (hbind : @453) -> @613 -@623 := @592 @200 -@625 := @596 (@431 @200) -@626 := @439 @200 -@627 := @581 @626 -@629 := @444 (@445 @200) -@641 := {args : @233} -> - {env : @406} -> - {F : @375} -> - {o : @383} -> - (hB : @594) -> (hfn : @625) -> (hwt : @627) -> (hbind : @443 (@629 @60 @176) @452) -> @613 -@642 := @623 @166 -@643 := @316 @163 -@645 := @230 @643 @626 -@648 := @164 (@10 @71) @163 -@652 := @443 (@629 @648 @176) @452 -@655 := @164 (@10 @408) @163 -@676 := {env : @406} -> - {F : @375} -> - {o : @383} -> - (hB : @594) -> - (hfn : @625) -> - (hwt : @645) -> - (hbind : @652) -> - (hF : @600) -> - (hA : @601 @655 @62) -> - (hne : @471) -> @474 (fun (ro : @473) => @480 (@605 (@164 (@10 #12) @163) @15)) -@677 := @642 @179 -@678 := @330 @163 -@680 := @230 @678 @626 -@688 := @443 (@629 @643 @176) (@451 (@177 (@174 @315) @176)) -@691 := @164 (@10 @242) @163 -@710 := {F : @375} -> - {o : @383} -> - (hB : @594) -> - (hfn : @625) -> - (hwt : @680) -> - (hbind : @688) -> - (hF : @600) -> - (hA : @601 @691 @62) -> - (hne : @471) -> @474 (fun (ro : @473) => @480 (@605 (@164 (@10 @457) @163) @15)) -@711 := @677 @180 -@712 := @347 @626 -@720 := @443 (@629 @678 @176) (@451 (@177 (@174 @329) @176)) -@722 := @599 (@461 @180) -@724 := @601 @648 @62 -@725 := @476 @180 -@744 := {o : @383} -> - (hB : @594) -> - (hfn : @625) -> - (hwt : @712) -> - (hbind : @720) -> - (hF : @722) -> - (hA : @724) -> - (hne : @471) -> @474 (fun (ro : @473) => @475 (@725 @242 @15) (@605 (@164 (@10 @434) @163) @15)) -@745 := @711 @370 -@746 := @355 @626 -@754 := @443 (@629 @346 @176) (@451 (@177 (@174 @312) @176)) -@755 := @601 @643 -@756 := @369 @60 -@757 := @755 @756 -@758 := @369 @71 -@776 := (hB : @594) -> - (hfn : @625) -> - (hwt : @746) -> - (hbind : @754) -> - (hF : @722) -> - (hA : @757) -> - (hne : @384 @758 @389) -> @474 (fun (ro : @473) => @475 (@725 (@369 @408) @15) (@605 @655 @15)) -@777 := @745 @204 -@778 := @363 @626 -@786 := @443 (@629 @354 @176) (@451 (@177 (@174 @326) @176)) -@787 := @601 @678 -@788 := @369 @62 -@806 := (hfn : @625) -> - (hwt : @778) -> - (hbind : @786) -> - (hF : @722) -> - (hA : @787 @788) -> - (hne : @384 @756 @389) -> @474 (fun (ro : @473) => @475 (@725 (@369 @242) @15) (@605 @691 @15)) -@807 := Eq.refl.{1} -@810 := @777 (@807 @417 @595) -@811 := @367 @626 -@819 := @443 (@629 @362 @176) (@451 (@177 (@174 @341) @176)) -@820 := @601 @346 -@821 := @369 @64 -@837 := (hwt : @811) -> - (hbind : @819) -> - (hF : @722) -> - (hA : @820 @821) -> - (hne : @384 @788 @389) -> @474 (fun (ro : @473) => @475 (@725 @758 @15) (@605 @648 @15)) -@838 := @810 @366 -@840 := @629 @166 @176 -@843 := @443 @840 (@451 @179) -@844 := @601 @354 -@845 := @369 @20 -@860 := (hbind : @843) -> - (hF : @722) -> - (hA : @844 @845) -> - (hne : @384 @821 @389) -> @474 (fun (ro : @473) => @475 (@725 @756 @15) (@605 @643 @15)) -@863 := @838 (@807 @442 @840) -@864 := @601 @362 -@865 := @369 @22 -@879 := (hF : @722) -> - (hA : @864 @865) -> - (hne : @384 @845 @389) -> @474 (fun (ro : @473) => @475 (@725 @788 @15) (@605 @678 @15)) -@882 := @863 (@807 @454 @598) -@896 := (hA : @601 @166 @370) -> - (hne : @384 @865 @389) -> @474 (fun (ro : @473) => @475 (@725 @821 @15) (@605 @346 @15)) -@897 := @882 @381 -@908 := (hne : @384 @370 @389) -> @474 (fun (ro : @473) => @475 (@725 @845 @15) (@605 @354 @15)) -@909 := @897 @401 -@915 := @475 (@725 @865 @15) (@605 @362 @15) -@917 := @474 (fun (ro : @473) => @915) -@919 := @474 (fun (__e_ro : @473) => @915) -@923 := LexLeanPreservation.Rust.RepresentableL (@164 @146 @163) -@924 := (__e_hrep : @923) -> @919 -@925 := fun (__e_hrep : @923) => @909 -@926 := (values : @5) -> @924 -@927 := fun (values : @5) => @925 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R19/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R19/RustStd.lean deleted file mode 100644 index 098c420b2..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R19/RustStd.lean +++ /dev/null @@ -1,59 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0], types := [(.list .nat)], result := (.list .bool), - body := (.call 1 [(.closure 2 []), (.var 0)]) }, - { parameters := [0, 1], types := [(.fn [.nat] .bool), (.list .nat)], result := (.list .bool), - body := (.«match» (.list .bool) (.var 1) [(.arm .nil [] (.build .nil (.list .bool) [])), (.arm .cons [2, 3] (.build .cons (.list .bool) [(.apply (.var 0) [(.var 2)]), (.call 1 [(.var 0), (.var 3)])]))]) }, - { parameters := [0], types := [.nat], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .zero [] (.build .true .bool [])), (.arm .succ [1] (.call 3 [(.var 1)]))]) }, - { parameters := [0], types := [.nat], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .zero [] (.build .false .bool [])), (.arm .succ [1] (.call 2 [(.var 1)]))]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.enum (.fn 0) [{ number := 2, fields := [] }]), - (.apply 0 [.nat] .bool false [{ function := 2, captures := [], functionFallible := false }]), - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }] (.list .bool) (.mk [] (.call (.function 1) [(.construct (.closure 0 2) []), (.move (.generated .binding 0))] false))), - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := (.list .nat) }] (.list .bool) (.mk [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 1)))] (.matchOn (.uncons (.generated .holder 1)) [(.mk .none (.mk [] (.construct (.nil .bool) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.construct .cons [(.block (.mk [(.mk (.bind (.generated .callee 2)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 2) [(.copy (.generated .binding 2))] false))), (.call (.function 1) [(.move (.generated .binding 0)), (.move (.generated .binding 3))] false)])))]))), - (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .holder 3)) none (.copy (.generated .binding 0)))] (.cond (.isZero (.generated .holder 3)) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .binding 1)) none (.predecessor (.generated .holder 3)))] (.call (.function 3) [(.copy (.generated .binding 1))] false))))), - (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .holder 4)) none (.copy (.generated .binding 0)))] (.cond (.isZero (.generated .holder 4)) (.mk [] (.lit (.bool false))) (.mk [(.mk (.bind (.generated .binding 1)) none (.predecessor (.generated .holder 4)))] (.call (.function 2) [(.copy (.generated .binding 1))] false)))))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [(([.nat], .bool), false)] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 1) [(.construct (.closure 0 2) []), (.move (.generated .binding 0))] false), [(0, (.list .nat), (some 0))], rfl, rfl, - (Corr.callOps (ts := [(.fn [.nat] .bool), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := false) (ff := false) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 1)))], (.matchOn (.uncons (.generated .holder 1)) [(.mk .none (.mk [] (.construct (.nil .bool) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.construct .cons [(.block (.mk [(.mk (.bind (.generated .callee 2)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 2) [(.copy (.generated .binding 2))] false))), (.call (.function 1) [(.move (.generated .binding 0)), (.move (.generated .binding 3))] false)])))]), [(1, (.list .nat), (some 1)), (0, (.fn [.nat] .bool), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.list .nat), (some 1)), (0, (.fn [.nat] .bool), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.nil .bool) [])) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, (.list .nat), (some 1)), (0, (.fn [.nat] .bool), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct .cons [(.block (.mk [(.mk (.bind (.generated .callee 2)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 2) [(.copy (.generated .binding 2))] false))), (.call (.function 1) [(.move (.generated .binding 0)), (.move (.generated .binding 3))] false)])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [.bool, (.list .bool)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 2)) (some (.fn 0)) (.clone (.generated .binding 0)))]) (tail := (.apply (.generated .callee 2) [(.copy (.generated .binding 2))] false)) (Corr.apply (ps := [.nat]) (af := false) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.fn [.nat] .bool), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 3)) none (.copy (.generated .binding 0)))], (.cond (.isZero (.generated .holder 3)) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .binding 1)) none (.predecessor (.generated .holder 3)))] (.call (.function 3) [(.copy (.generated .binding 1))] false))), [(0, .nat, (some 0))], rfl, rfl, - (Corr.matchNat (sl := (some 1)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := []) (tb := (.call (.function 3) [(.copy (.generated .binding 1))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)))⟩⟩ - -theorem fun3 : FunOK program krate flags 3 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 4)) none (.copy (.generated .binding 0)))], (.cond (.isZero (.generated .holder 4)) (.mk [] (.lit (.bool false))) (.mk [(.mk (.bind (.generated .binding 1)) none (.predecessor (.generated .holder 4)))] (.call (.function 2) [(.copy (.generated .binding 1))] false))), [(0, .nat, (some 0))], rfl, rfl, - (Corr.matchNat (sl := (some 1)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.lit (.bool false))) (lb := []) (tb := (.call (.function 2) [(.copy (.generated .binding 1))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | 3 => exact fun3 - | _ + 4 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R2.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R2.lean deleted file mode 100644 index d1f256be5..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R2.lean +++ /dev/null @@ -1,110 +0,0 @@ -import LexLeanPreservation.Core -import LexLeanPreservation.Values -import LexLeanPreservation.Primitives -import LexLeanPreservation.Fixed -import LexLeanPreservation.Keys -import LexLeanPreservation.Templates -import LexLeanPreservation.Validate -import Coverage.Boundary -import Coverage.Colls -import Coverage.Main -import Coverage.Prims -import Coverage.RecRoots -import Coverage.Recur -import Coverage.Syntax -import Coverage.Types -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -set_option linter.unusedVariables false -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2 - -def __prog : _root_.LexLeanTarget.TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1], types := [(.list (.pair .nat .nat)), .nat], result := .nat, - body := (.call 1 [(.closure 2 [(.var 1)]), (.value .nat (.nat 0)), (.var 0)]) }, - { parameters := [0, 1, 2], types := [(.fn [.nat, .nat, .nat] .nat), .nat, (.list (.pair .nat .nat))], result := .nat, - body := (.«match» .nat (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 1 [(.var 0), (.apply (.var 0) [(.var 1), (.first (.var 3)), (.second (.var 3))]), (.var 4)]))]) }, - { parameters := [0, 1, 2, 3], types := [.nat, .nat, .nat, .nat], result := .nat, - body := (.prim .natAdd [(.prim .natAdd [(.var 1), (.var 2)]), (.prim .natAdd [(.var 3), (.var 0)])]) }, - { parameters := [0], types := [(.list (.pair .nat .nat))], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 4 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 3 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, - { parameters := [0], types := [.nat], result := .bool, - body := (.build .true .bool []) }, - { parameters := [0, 1], types := [(.list (.pair .nat .nat)), .nat], result := (.option .nat), - body := (.cond (.call 3 [(.var 0)]) (.build .some (.option .nat) [(.call 0 [(.var 0), (.var 1)])]) (.build .none (.option .nat) [])) }] } - -def __fits_2 (bonus : Nat) (acc : Nat) (key : Nat) (value : Nat) : Bool := - ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (acc + key) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (value + bonus) 18446744073709551616)) && Bool.true)) && (Nat.blt ((acc + key) + (value + bonus)) 18446744073709551616)) - -theorem __rel_2 (bonus : Nat) (acc : Nat) (key : Nat) (value : Nat) : _root_.LexLeanPreservation.FunRel __prog 2 [(_root_.LexLeanTarget.TargetSyntax.Value.nat bonus), (_root_.LexLeanTarget.TargetSyntax.Value.nat acc), (_root_.LexLeanTarget.TargetSyntax.Value.nat key), (_root_.LexLeanTarget.TargetSyntax.Value.nat value)] (_root_.LexLeanPreservation.Rel (__fits_2 bonus acc key value) (_root_.LexLeanTarget.TargetSyntax.Value.nat (((acc + key) + (value + bonus))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd acc key)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd value bonus)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (acc + key) (value + bonus))) - -def __fits_0 (m : (List (Prod Nat Nat))) (bonus : Nat) : Bool := - (((Bool.true && Bool.true) && (Bool.true && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun __st __e => (fun (__p0 : Nat) (__p1 : Nat) (__p2 : Nat) => __fits_2 (bonus) __p0 __p1 __p2) __st __e.1 __e.2) (fun __st __e => ((fun (acc : Nat) (key : Nat) (value : Nat) => ((acc + key) + (value + bonus)))) __st __e.1 __e.2) ((0 : Nat)) (m))) - -theorem __rel_0 (m : (List (Prod Nat Nat))) (bonus : Nat) : _root_.LexLeanPreservation.FunRel __prog 0 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) m), (_root_.LexLeanTarget.TargetSyntax.Value.nat bonus)] (_root_.LexLeanPreservation.Rel (__fits_0 m bonus) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Coverage.Colls.mapFolding m bonus))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_mapFold (ek := _root_.LexLeanTarget.TargetSyntax.Value.nat) (ev := _root_.LexLeanTarget.TargetSyntax.Value.nat) (es := _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) ((fun (acc : Nat) (key : Nat) (value : Nat) => ((acc + key) + (value + bonus)))) (fun (__p0 : Nat) (__p1 : Nat) (__p2 : Nat) => __fits_2 (bonus) __p0 __p1 __p2) 2 [(_root_.LexLeanTarget.TargetSyntax.Value.nat bonus)] (fun (__p0 : Nat) (__p1 : Nat) (__p2 : Nat) => __rel_2 (bonus) __p0 __p1 __p2) (p := __prog) (fi := 1) (tk := .nat) (tw := .nat) (ts := .nat) rfl ((0 : Nat)) (m))) - -def denote (m : (List (Prod Nat Nat))) (bonus : Nat) : _root_.LexLeanPreservation.Obs := - _root_.cond (__fits_0 m bonus) (_root_.LexLeanPreservation.Obs.value ((_root_.LexLeanTarget.TargetSyntax.Value.nat (Coverage.Colls.mapFolding m bonus)))) _root_.LexLeanPreservation.Obs.overflow - -theorem root (m : (List (Prod Nat Nat))) (bonus : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) m), (_root_.LexLeanTarget.TargetSyntax.Value.nat bonus)] (_root_.LexLeanPreservation.Rel (__fits_0 m bonus) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Coverage.Colls.mapFolding m bonus))) := - _root_.LexLeanPreservation.run_of_funRel (__rel_0 m bonus) - -def __valid_4 : Nat -> Bool := - fun _ => Bool.true - -def __inv_4 : Nat -> Prop := - fun _ => _root_.True - -theorem __viff_4 : ∀ (__v : Nat), __valid_4 __v = Bool.true ↔ __inv_4 __v := - fun __v => _root_.LexLeanPreservation.validTrue_inv __v - -theorem __vrel_4 : ∀ (__v : Nat), _root_.LexLeanPreservation.FunRel __prog 4 [(_root_.LexLeanTarget.TargetSyntax.Value.nat __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_4 __v))) := - _root_.LexLeanPreservation.tpl_validTrue _root_.LexLeanTarget.TargetSyntax.Value.nat rfl - -def __valid_3 : (List (Prod Nat Nat)) -> Bool := - _root_.LexLeanPreservation.ascMap (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) __valid_4 - -def __inv_3 : (List (Prod Nat Nat)) -> Prop := - _root_.LexLeanPreservation.InvMap (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) __inv_4 - -theorem __viff_3 : ∀ (__v : (List (Prod Nat Nat))), __valid_3 __v = Bool.true ↔ __inv_3 __v := - _root_.LexLeanPreservation.ascMap_inv (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) __valid_4 __inv_4 __viff_4 - -theorem __vrel_3 : ∀ (__v : (List (Prod Nat Nat))), _root_.LexLeanPreservation.FunRel __prog 3 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_3 __v))) := - _root_.LexLeanPreservation.tpl_validMap (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) __valid_4 (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) __vrel_4 rfl - -def entryFits (m : (List (Prod Nat Nat))) (bonus : Nat) : Bool := - (if __valid_3 m then __fits_0 m bonus else Bool.true) - -def entryValue (m : (List (Prod Nat Nat))) (bonus : Nat) : _root_.LexLeanTarget.TargetSyntax.Value := - (if __valid_3 m then (_root_.LexLeanTarget.TargetSyntax.Value.some (_root_.LexLeanTarget.TargetSyntax.Value.nat (Coverage.Colls.mapFolding m bonus))) else _root_.LexLeanTarget.TargetSyntax.Value.none) - -/-- The entry's observation. -/ -def denoteEntry (m : (List (Prod Nat Nat))) (bonus : Nat) : _root_.LexLeanPreservation.Obs := - _root_.cond (_root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.entryFits m bonus) (_root_.LexLeanPreservation.Obs.value (_root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.entryValue m bonus)) _root_.LexLeanPreservation.Obs.overflow - -/-- §17.12's invariants of the validated parameters. -/ -def accepts (m : (List (Prod Nat Nat))) (bonus : Nat) : Prop := - (__inv_3 m ∧ _root_.True) - -theorem entry (m : (List (Prod Nat Nat))) (bonus : Nat) : _root_.LexLeanPreservation.RunConv __prog 5 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) m), (_root_.LexLeanTarget.TargetSyntax.Value.nat bonus)] (_root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.denoteEntry m bonus) := - _root_.LexLeanPreservation.run_of_funRel (_root_.LexLeanPreservation.FunRel.fits_eq (_root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun __c => if __c then __fits_0 m bonus else Bool.true) (fun __c => if __c then (_root_.LexLeanTarget.TargetSyntax.Value.some (_root_.LexLeanTarget.TargetSyntax.Value.nat (Coverage.Colls.mapFolding m bonus))) else _root_.LexLeanTarget.TargetSyntax.Value.none) (__valid_3 m) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_3 m)) (fun _ => _root_.LexLeanPreservation.Conv.fits_eq (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_0 m bonus)) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some) (by simp)) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (by simp [_root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.entryFits])) - -theorem entry_accepts (m : (List (Prod Nat Nat))) (bonus : Nat) (__h : _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.accepts m bonus) : _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.denoteEntry m bonus = _root_.LexLeanPreservation.someObs (_root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.denote m bonus) := by - unfold _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.accepts at __h - unfold _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.denoteEntry _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.entryFits _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.entryValue _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.denote - simp only [_root_.if_true, (__viff_3 m).mpr __h.1] - cases __fits_0 m bonus <;> rfl - -theorem entry_refuses (m : (List (Prod Nat Nat))) (bonus : Nat) (__h : ¬ _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.accepts m bonus) : _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.denoteEntry m bonus = _root_.LexLeanPreservation.Obs.value _root_.LexLeanTarget.TargetSyntax.Value.none := by - unfold _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.accepts at __h - unfold _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.denoteEntry _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.entryFits _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.entryValue - cases __c0 : __valid_3 m - · simp - · exact _root_.absurd ⟨(__viff_3 m).mp __c0, _root_.trivial⟩ __h - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2 diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R2/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R2/Compose/RustStd.lex.tex deleted file mode 100644 index 42e6f3b8d..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R2/Compose/RustStd.lex.tex +++ /dev/null @@ -1,658 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.Compose.RustStd.root : @1352 := @1353 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.RustStd.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.RustStd.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.RustStd.flags -@3 := Nat -@4 := Prod.{0, 0} -@5 := @4 @3 -@6 := @5 @3 -@7 := List.{0} -@8 := @7 @6 -@9 := #2 -@10 := LexLeanTarget.TargetSyntax.Value.nat -@11 := LexLeanPreservation.encPair -@12 := @11 @3 -@13 := @12 @3 -@14 := @13 @10 -@15 := @14 @10 -@16 := LexLeanPreservation.encList -@17 := @16 @6 -@18 := @17 @15 -@19 := @18 @9 -@20 := LexLeanTarget.TargetSyntax.Ty.nat -@21 := LexLeanTarget.TargetSyntax.Ty.pair -@22 := @21 @20 -@23 := @22 @20 -@24 := LexLeanTarget.TargetSyntax.Ty.list -@25 := @24 @23 -@26 := #0 -@27 := LexLeanTarget.TargetSyntax.Program -@28 := LexLeanPreservation.Rust.RCrate -@29 := LexLeanPreservation.Rust.Flags -@30 := LexLeanPreservation.Rust.WT -@31 := #3 -@33 := @30 @31 @9 -@34 := #1 -@35 := @33 @34 -@36 := @10 @26 -@42 := {p : @27} -> {c : @28} -> {A : @29} -> (n : @3) -> @35 @36 @20 -@44 := LexLeanPreservation.Rust.wt_nat @0 -@45 := @30 @0 -@52 := {c : @28} -> {A : @29} -> (n : @3) -> @45 @9 @34 @36 @20 -@53 := @44 @1 -@54 := @45 @1 -@59 := {A : @29} -> (n : @3) -> @54 @34 @36 @20 -@60 := @53 @2 -@61 := @54 @2 -@62 := @61 @36 -@63 := @62 @20 -@64 := (n : @3) -> @63 -@66 := fun (__x : @3) => @60 @26 -@67 := Sort 1 -@68 := LexLeanTarget.TargetSyntax.Value -@69 := (a._@._internal._hyg.#0 : @34) -> @68 -@70 := LexLeanTarget.TargetSyntax.Ty -@71 := #5 -@72 := #9 -@73 := @30 @72 -@74 := #8 -@75 := @73 @74 -@76 := #7 -@77 := @75 @76 -@78 := #4 -@79 := @78 @26 -@82 := (x : @71) -> @77 @79 @9 -@83 := #10 -@89 := (x : @71) -> @30 @83 @72 @74 @79 @9 -@90 := @4 @76 -@91 := #6 -@92 := @90 @91 -@93 := #11 -@96 := @30 @93 @83 @72 -@101 := @11 @74 @76 @91 @71 @26 -@102 := @96 @101 -@104 := @21 @78 @31 -@117 := {p : @27} -> - {c : @28} -> - {A : @29} -> - {α : @67} -> - {β : @67} -> - {ea : @69} -> - {eb : @69} -> {s : @70} -> {t : @70} -> (ha : @82) -> (hb : @89) -> (x : @92) -> @102 @104 -@119 := LexLeanPreservation.Rust.wt_encPair @0 -@144 := {c : @28} -> - {A : @29} -> - {α : @67} -> - {β : @67} -> - {ea : @69} -> - {eb : @69} -> - {s : @70} -> - {t : @70} -> - (ha : (x : @71) -> @45 @74 @76 @79 @9) -> - (hb : (x : @71) -> @45 @72 @74 @79 @9) -> (x : @92) -> @45 @83 @72 @101 @104 -@145 := @119 @1 -@166 := {A : @29} -> - {α : @67} -> - {β : @67} -> - {ea : @69} -> - {eb : @69} -> - {s : @70} -> - {t : @70} -> - (ha : (x : @71) -> @54 @76 @79 @9) -> - (hb : (x : @71) -> @54 @74 @79 @9) -> (x : @92) -> @54 @72 @101 @104 -@167 := @145 @2 -@169 := @61 @79 @9 -@170 := (x : @71) -> @169 -@181 := {α : @67} -> - {β : @67} -> - {ea : @69} -> - {eb : @69} -> {s : @70} -> {t : @70} -> (ha : @170) -> (hb : @170) -> (x : @92) -> @61 @101 @104 -@182 := @167 @3 -@183 := (a._@._internal._hyg.#0 : @3) -> @68 -@184 := (x : @3) -> @169 -@199 := {β : @67} -> - {ea : @183} -> - {eb : @69} -> - {s : @70} -> - {t : @70} -> (ha : @184) -> (hb : @170) -> (x : @5 @91) -> @61 (@12 @76 @91 @71 @26) @104 -@200 := @182 @3 -@212 := {ea : @183} -> - {eb : @183} -> - {s : @70} -> {t : @70} -> (ha : @184) -> (hb : @184) -> (x : @6) -> @61 (@13 @91 @71 @26) @104 -@213 := @200 @10 -@215 := (x : @3) -> @62 @9 -@225 := {eb : @183} -> - {s : @70} -> {t : @70} -> (ha : @215) -> (hb : @184) -> (x : @6) -> @61 (@14 @71 @26) @104 -@226 := @213 @10 -@228 := @61 (@15 @26) -@234 := {s : @70} -> {t : @70} -> (ha : @215) -> (hb : @215) -> (x : @6) -> @228 @104 -@235 := @226 @20 -@236 := (x : @3) -> @63 -@242 := {t : @70} -> (ha : @236) -> (hb : @215) -> (x : @6) -> @228 (@22 @31) -@243 := @235 @20 -@245 := (x : @6) -> @228 @23 -@247 := (ha : @236) -> (hb : @236) -> @245 -@251 := fun (__x : @6) => @243 @66 @66 @26 -@252 := (a._@._internal._hyg.#0 : @26) -> @68 -@255 := @30 @91 @71 @78 -@256 := @9 @26 -@259 := (x : @9) -> @255 @256 @34 -@260 := @7 @31 -@263 := @30 @76 @91 @71 -@266 := @16 @78 @31 @26 -@267 := @263 @266 -@268 := @24 @9 -@277 := {p : @27} -> - {c : @28} -> - {A : @29} -> {α : @67} -> {e : @252} -> {t : @70} -> (h : @259) -> (xs : @260) -> @267 @268 -@279 := LexLeanPreservation.Rust.wt_encList @0 -@281 := @45 @71 @78 -@295 := {c : @28} -> - {A : @29} -> - {α : @67} -> - {e : @252} -> {t : @70} -> (h : (x : @9) -> @281 @256 @34) -> (xs : @260) -> @45 @91 @71 @266 @268 -@296 := @279 @1 -@297 := @54 @78 -@309 := {A : @29} -> - {α : @67} -> - {e : @252} -> {t : @70} -> (h : (x : @9) -> @297 @256 @34) -> (xs : @260) -> @54 @71 @266 @268 -@310 := @296 @2 -@312 := @61 @256 @34 -@320 := {α : @67} -> - {e : @252} -> {t : @70} -> (h : (x : @9) -> @312) -> (xs : @260) -> @61 @266 @268 -@321 := @310 @6 -@331 := {e : (a._@._internal._hyg.#0 : @6) -> @68} -> - {t : @70} -> (h : (x : @6) -> @312) -> (xs : @8) -> @61 (@17 @31 @26) @268 -@332 := @321 @15 -@334 := (x : @6) -> @228 @34 -@336 := @61 (@18 @26) -@340 := {t : @70} -> (h : @334) -> (xs : @8) -> @336 @268 -@341 := @332 @23 -@344 := (h : @245) -> (xs : @8) -> @336 @25 -@346 := @341 @251 @9 -@348 := @61 @19 @25 -@349 := @10 @34 -@350 := @60 @34 -@352 := @61 @349 @20 -@353 := List.nil.{0} -@354 := List.cons.{0} -@355 := @353 @68 -@356 := @354 @68 -@358 := @356 @349 @355 -@360 := @356 @19 @358 -@361 := @5 @68 -@362 := 1 -@365 := Prod.mk.{0, 0} @3 @68 -@366 := @365 @362 -@367 := @366 @349 -@369 := @365 0 -@370 := @369 @19 -@371 := @353 @361 -@372 := @354 @361 -@374 := @372 @370 @371 -@376 := @372 @367 @374 -@377 := Bool.true -@378 := LexLeanTarget.TargetSyntax.Function -@379 := LexLeanTarget.TargetSyntax.Program.functions -@380 := @379 @0 -@381 := 5 -@382 := @353 @3 -@383 := @353 @70 -@384 := LexLeanTarget.TargetSyntax.Ty.unit -@385 := LexLeanTarget.TargetSyntax.Value.unit -@388 := LexLeanTarget.TargetSyntax.Expr.value @384 @385 -@393 := LexLeanTarget.TargetSyntax.Function.mk @382 @383 @384 @388 -@398 := List.getD.{0} @378 @380 @381 @393 -@402 := fun (__e_n : @3) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.RustStd.root @26 @381 -@403 := LexLeanPreservation.Rust.WTL -@411 := {p : @27} -> {c : @28} -> {A : @29} -> @403 @9 @34 @26 @355 @383 -@413 := LexLeanPreservation.Rust.wtl_nil @0 -@414 := @403 @0 -@420 := {c : @28} -> {A : @29} -> @414 @34 @26 @355 @383 -@421 := @413 @1 -@422 := @414 @1 -@426 := {A : @29} -> @422 @26 @355 @383 -@427 := @421 @2 -@428 := @422 @2 -@429 := @428 @355 -@430 := @429 @383 -@431 := @7 @68 -@432 := @7 @70 -@434 := @255 @31 @9 -@439 := @403 @76 @91 @71 @9 @34 -@442 := @403 @74 @76 @91 -@444 := @356 @71 @31 -@445 := @442 @444 -@446 := @354 @70 -@448 := @446 @78 @9 -@458 := {p : @27} -> - {c : @28} -> - {A : @29} -> - {v : @68} -> {t : @70} -> {vs : @431} -> {ts : @432} -> (h : @434) -> (hs : @439) -> @445 @448 -@460 := LexLeanPreservation.Rust.wtl_cons @0 -@478 := {c : @28} -> - {A : @29} -> - {v : @68} -> - {t : @70} -> - {vs : @431} -> - {ts : @432} -> (h : @281 @31 @9) -> (hs : @414 @91 @71 @9 @34) -> @414 @76 @91 @444 @448 -@479 := @460 @1 -@494 := {A : @29} -> - {v : @68} -> - {t : @70} -> - {vs : @431} -> {ts : @432} -> (h : @297 @31 @9) -> (hs : @422 @71 @9 @34) -> @422 @91 @444 @448 -@495 := @479 @2 -@497 := @61 @31 @9 -@499 := @428 @9 @34 -@507 := {v : @68} -> - {t : @70} -> {vs : @431} -> {ts : @432} -> (h : @497) -> (hs : @499) -> @428 @444 @448 -@508 := @495 @349 -@509 := @10 @78 -@511 := @61 @509 @9 -@512 := @10 @91 -@513 := @356 @512 -@521 := {t : @70} -> {vs : @431} -> {ts : @432} -> (h : @511) -> (hs : @499) -> @428 (@513 @31) @448 -@522 := @508 @20 -@523 := @10 @31 -@525 := @61 @523 @20 -@526 := @10 @71 -@527 := @356 @526 -@529 := @428 (@527 @31) -@530 := @446 @20 -@531 := @530 @9 -@536 := {vs : @431} -> {ts : @432} -> (h : @525) -> (hs : @499) -> @529 @531 -@537 := @522 @355 -@538 := @10 @9 -@540 := @61 @538 @20 -@541 := @429 @34 -@543 := @356 @509 @355 -@548 := {ts : @432} -> (h : @540) -> (hs : @541) -> @428 @543 @531 -@549 := @537 @383 -@551 := @356 @523 @355 -@552 := @428 @551 -@553 := @530 @383 -@556 := (h : @352) -> (hs : @430) -> @552 @553 -@557 := @549 @350 -@559 := @356 @538 @355 -@561 := @428 @559 @553 -@562 := (hs : @430) -> @561 -@563 := @557 @427 -@565 := @428 @358 @553 -@566 := @495 @19 -@567 := @18 @71 -@569 := @61 @567 @9 -@570 := @18 @76 -@571 := @356 @570 -@579 := {t : @70} -> {vs : @431} -> {ts : @432} -> (h : @569) -> (hs : @499) -> @428 (@571 @31) @448 -@580 := @566 @25 -@581 := @18 @78 -@583 := @61 @581 @25 -@584 := @18 @91 -@585 := @356 @584 -@587 := @428 (@585 @31) -@588 := @446 @25 -@589 := @588 @9 -@594 := {vs : @431} -> {ts : @432} -> (h : @583) -> (hs : @499) -> @587 @589 -@595 := @580 @358 -@596 := @18 @31 -@598 := @61 @596 @25 -@599 := @552 @34 -@601 := @356 @567 @543 -@602 := @428 @601 -@606 := {ts : @432} -> (h : @598) -> (hs : @599) -> @602 @589 -@607 := @595 @553 -@609 := @356 @581 @551 -@610 := @428 @609 -@611 := @588 @553 -@614 := (h : @348) -> (hs : @561) -> @610 @611 -@615 := @607 @346 -@617 := @356 @596 @559 -@618 := @428 @617 -@620 := (hs : @565) -> @618 @611 -@621 := @615 @563 -@622 := @428 @360 -@623 := @622 @611 -@624 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.denoteEntry -@626 := @624 @9 @34 -@627 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.entryFits -@629 := @627 @9 @34 -@632 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.entryValue @9 @34 -@635 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.entry @9 @34 -@636 := Bool -@637 := Ne.{1} -@638 := LexLeanPreservation.Obs -@639 := @637 @638 -@640 := LexLeanPreservation.Rel -@643 := @639 (@640 @34 @26) -@644 := LexLeanPreservation.Obs.stuck -@647 := (f : @636) -> (v : @68) -> @643 @644 -@649 := LexLeanPreservation.Rust.rel_ne_stuck @629 -@656 := (v : @68) -> @639 (@640 (@627 @31 @9) @26) @644 -@657 := @649 @632 -@661 := @639 (@640 @629 @632) @644 -@662 := @7 @361 -@663 := LexLeanPreservation.Rust.FunSem -@669 := (n : @3) -> @663 @72 @74 @76 @26 @91 -@670 := Eq.{1} -@671 := Option.{0} -@672 := @671 @378 -@673 := @670 @672 -@680 := LexLeanRuntime.index (@7 @378) @378 (LexLeanRuntime.instIndexableList @378) -@684 := @673 (@680 (@379 @72) @91) -@685 := Option.some.{0} -@686 := @685 @378 -@687 := @686 @71 -@688 := @684 @687 -@692 := @403 @83 @72 @74 @71 -@693 := LexLeanTarget.TargetSyntax.Function.types -@694 := @693 @91 -@695 := @692 @694 -@696 := @671 @662 -@697 := @670 @696 -@698 := LexLeanTarget.TargetSemantics.bindAll -@699 := LexLeanTarget.TargetSyntax.Function.parameters -@704 := @697 (@698 (@699 @76) @91 @371) -@705 := @685 @662 -@706 := @705 @71 -@707 := @704 @706 -@708 := @671 @636 -@709 := @670 @708 -@710 := LexLeanPreservation.Rust.fnFallible -@713 := @709 (@710 @93 @72) -@714 := @685 @636 -@715 := @714 @71 -@716 := @713 @715 -@717 := LexLeanPreservation.RunConv -@718 := #13 -@722 := @717 @718 @83 @74 @71 -@724 := @639 @91 @644 -@725 := Exists.{1} -@726 := LexLeanPreservation.Rust.ROut -@727 := @725 @726 -@728 := And -@729 := LexLeanPreservation.Rust.RealizesFn -@733 := @728 (@729 @72 @74 @26) -@734 := LexLeanPreservation.Rust.RCI -@736 := @734 #15 -@737 := LexLeanPreservation.Rust.fnIdent -@738 := @737 @718 -@745 := (hne : @724) -> @727 (fun (ro : @726) => @733 (@736 @738 @93 @26)) -@760 := {p : @27} -> - {c : @28} -> - {A : @29} -> - {f : @3} -> - {fn : @378} -> - {args : @431} -> - {env : @662} -> - {F : @636} -> - {o : @638} -> - (hB : @669) -> - (hfn : @688) -> (hwt : @695) -> (hbind : @707) -> (hF : @716) -> (hA : @722) -> @745 -@762 := LexLeanPreservation.Rust.compose @0 -@763 := @663 @0 -@768 := (n : @3) -> @763 @74 @76 @26 @91 -@769 := @680 @380 -@772 := @673 (@769 @91) @687 -@776 := @414 @72 @74 @71 @694 -@777 := @717 @0 -@780 := @777 @83 @74 @71 -@794 := {c : @28} -> - {A : @29} -> - {f : @3} -> - {fn : @378} -> - {args : @431} -> - {env : @662} -> - {F : @636} -> - {o : @638} -> - (hB : @768) -> - (hfn : @772) -> (hwt : @776) -> (hbind : @707) -> (hF : @716) -> (hA : @780) -> @745 -@795 := @762 @1 -@796 := @763 @1 -@800 := (n : @3) -> @796 @76 @26 @91 -@803 := @422 @74 @71 @694 -@804 := @710 @1 -@807 := @709 (@804 @72) @715 -@808 := @734 @1 -@818 := (hbind : @707) -> - (hF : @807) -> (hA : @780) -> (hne : @724) -> @727 (fun (ro : @726) => @733 (@808 @738 @93 @26)) -@828 := {A : @29} -> - {f : @3} -> - {fn : @378} -> - {args : @431} -> - {env : @662} -> {F : @636} -> {o : @638} -> (hB : @800) -> (hfn : @772) -> (hwt : @803) -> @818 -@829 := @795 @2 -@831 := @796 @2 @26 -@833 := (n : @3) -> @831 @91 -@834 := @428 @71 -@835 := @834 @694 -@844 := {f : @3} -> - {fn : @378} -> - {args : @431} -> - {env : @662} -> {F : @636} -> {o : @638} -> (hB : @833) -> (hfn : @772) -> (hwt : @835) -> @818 -@845 := @829 @381 -@847 := (n : @3) -> @831 @381 -@848 := @769 @381 -@849 := @673 @848 -@850 := @849 @687 -@851 := @804 @381 -@852 := @709 @851 -@853 := @852 @715 -@854 := @777 @381 -@856 := @854 @74 @71 -@858 := @808 (@737 @381) -@866 := (hF : @853) -> (hA : @856) -> (hne : @724) -> @727 (fun (ro : @726) => @733 (@858 @93 @26)) -@875 := {fn : @378} -> - {args : @431} -> - {env : @662} -> - {F : @636} -> {o : @638} -> (hB : @847) -> (hfn : @850) -> (hwt : @835) -> (hbind : @707) -> @866 -@876 := @845 @398 -@878 := @849 (@686 @398) -@879 := @693 @398 -@880 := @834 @879 -@882 := @698 (@699 @398) -@894 := {args : @431} -> - {env : @662} -> - {F : @636} -> - {o : @638} -> - (hB : @847) -> (hfn : @878) -> (hwt : @880) -> (hbind : @697 (@882 @91 @371) @706) -> @866 -@895 := @876 @360 -@897 := @571 (@513 @355) -@899 := @428 @897 @879 -@905 := @356 (@18 @74) (@356 (@10 @76) @355) -@909 := @697 (@882 @905 @371) @706 -@915 := @356 (@18 @83) (@356 (@10 @72) @355) -@917 := @854 @915 @71 -@919 := @356 (@18 @718) -@920 := #12 -@939 := {env : @662} -> - {F : @636} -> - {o : @638} -> - (hB : @847) -> - (hfn : @878) -> - (hwt : @899) -> - (hbind : @909) -> - (hF : @853) -> - (hA : @917) -> - (hne : @724) -> @727 (fun (ro : @726) => @733 (@858 (@919 (@356 (@10 @920) @355)) @26)) -@940 := @895 @376 -@942 := @585 (@527 @355) -@944 := @428 @942 @879 -@955 := @697 (@882 @897 @371) (@705 (@372 (@366 @512) (@372 (@369 @570) @371))) -@961 := @356 (@18 @72) (@356 (@10 @74) @355) -@983 := {F : @636} -> - {o : @638} -> - (hB : @847) -> - (hfn : @878) -> - (hwt : @944) -> - (hbind : @955) -> - (hF : @853) -> - (hA : @854 @961 @71) -> - (hne : @724) -> @727 (fun (ro : @726) => @733 (@858 (@356 (@18 @920) (@356 (@10 @93) @355)) @26)) -@984 := @940 @377 -@985 := @602 @879 -@996 := @697 (@882 @942 @371) (@705 (@372 (@366 @526) (@372 (@369 @584) @371))) -@998 := @852 (@714 @377) -@1000 := @854 @905 @71 -@1001 := @729 @377 -@1023 := {o : @638} -> - (hB : @847) -> - (hfn : @878) -> - (hwt : @985) -> - (hbind : @996) -> - (hF : @998) -> - (hA : @1000) -> - (hne : @724) -> - @727 (fun (ro : @726) => @728 (@1001 @74 @26) (@858 (@356 (@18 @93) (@356 (@10 @83) @355)) @26)) -@1024 := @984 @626 -@1025 := @610 @879 -@1036 := @697 (@882 @601 @371) (@705 (@372 (@366 @509) (@372 (@369 @567) @371))) -@1037 := @854 @897 -@1039 := @624 @76 @91 -@1040 := @1037 @1039 -@1042 := @624 @74 @76 -@1061 := (hB : @847) -> - (hfn : @878) -> - (hwt : @1025) -> - (hbind : @1036) -> - (hF : @998) -> - (hA : @1040) -> - (hne : @639 @1042 @644) -> - @727 (fun (ro : @726) => @728 (@1001 (@624 @83 @72) @26) (@858 @915 @26)) -@1062 := @1024 @402 -@1063 := @618 @879 -@1074 := @697 (@882 @609 @371) (@705 (@372 (@366 @523) (@372 (@369 @581) @371))) -@1075 := @854 @942 -@1077 := @624 @91 @71 -@1096 := (hfn : @878) -> - (hwt : @1063) -> - (hbind : @1074) -> - (hF : @998) -> - (hA : @1075 @1077) -> - (hne : @639 @1039 @644) -> - @727 (fun (ro : @726) => @728 (@1001 (@624 @72 @74) @26) (@858 @961 @26)) -@1097 := Eq.refl.{1} -@1100 := @1062 (@1097 @672 @848) -@1101 := @622 @879 -@1112 := @697 (@882 @617 @371) (@705 (@372 (@366 @538) (@372 (@369 @596) @371))) -@1113 := @854 @601 -@1115 := @624 @71 @78 -@1131 := (hwt : @1101) -> - (hbind : @1112) -> - (hF : @998) -> - (hA : @1113 @1115) -> - (hne : @639 @1077 @644) -> @727 (fun (ro : @726) => @728 (@1001 @1042 @26) (@858 @905 @26)) -@1132 := @1100 @621 -@1134 := @882 @360 @371 -@1137 := @697 @1134 (@705 @376) -@1138 := @854 @609 -@1140 := @624 @78 @31 -@1155 := (hbind : @1137) -> - (hF : @998) -> - (hA : @1138 @1140) -> - (hne : @639 @1115 @644) -> @727 (fun (ro : @726) => @728 (@1001 @1039 @26) (@858 @897 @26)) -@1158 := @1132 (@1097 @696 @1134) -@1159 := @854 @617 -@1161 := @624 @31 @9 -@1175 := (hF : @998) -> - (hA : @1159 @1161) -> - (hne : @639 @1140 @644) -> @727 (fun (ro : @726) => @728 (@1001 @1077 @26) (@858 @942 @26)) -@1178 := @1158 (@1097 @708 @851) -@1180 := @854 @360 @626 -@1182 := @639 @1161 @644 -@1183 := @1001 @1115 -@1185 := @728 (@1183 @26) -@1186 := @858 @601 -@1187 := @1186 @26 -@1192 := (hA : @1180) -> (hne : @1182) -> @727 (fun (ro : @726) => @1185 @1187) -@1193 := @1178 @635 -@1195 := @639 @626 @644 -@1196 := @1001 @1140 -@1198 := @728 (@1196 @26) -@1199 := @858 @609 -@1204 := (hne : @1195) -> @727 (fun (ro : @726) => @1198 (@1199 @26)) -@1205 := @1193 @657 -@1208 := @728 (@1001 @1161 @26) -@1210 := @858 @617 @26 -@1211 := @1208 @1210 -@1213 := @727 (fun (ro : @726) => @1211) -@1214 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.accepts -@1216 := @1214 @9 @34 -@1217 := LexLeanPreservation.someObs -@1218 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.denote -@1221 := @1217 (@1218 @9 @34) -@1224 := LexLeanPreservation.Obs.value LexLeanTarget.TargetSyntax.Value.none -@1225 := Not -@1226 := @1225 @1216 -@1228 := @1214 @31 @9 -@1231 := @1217 (@1218 @31 @9) -@1232 := @1225 @1228 -@1238 := @1228 -> @1001 (@1217 (@1218 @78 @31)) @34 -@1239 := @1001 @1224 -@1240 := @1239 @34 -@1241 := @1232 -> @1240 -@1243 := @728 @1238 @1241 -@1247 := @727 (fun (__e_ro : @726) => @728 @1210 @1243) -@1248 := fun (__e_ro : @726) => @1211 -@1249 := @1196 @34 -@1250 := @1199 @34 -@1251 := And.left -@1252 := And.right -@1255 := @1251 @1249 @1250 @26 -@1258 := @1252 @1249 @1250 @26 -@1259 := @1001 @26 -@1261 := fun (__e_o : @638) => @1259 @9 -@1262 := Eq.subst.{1} -@1264 := @1214 @78 @31 -@1265 := @1225 @1264 -@1269 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.entry_accepts @71 @78 @26 -@1272 := @1217 (@1218 @71 @78) -@1277 := @1251 (@1183 @9) (@1186 @9) @34 -@1279 := fun (__e_o : @638) => @1259 @31 -@1282 := @1262 @638 @1279 @1115 -@1286 := fun (__e_h : @1264) => @1282 @1272 @1269 @1277 -@1290 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.entry_refuses @71 @78 @26 -@1294 := fun (__e_h : @1265) => @1282 @1224 @1290 @1277 -@1295 := And.intro -@1298 := @1264 -> @1001 @1272 @9 -@1300 := @1265 -> @1239 @9 -@1302 := @728 @1298 @1300 -@1306 := @1295 @1298 @1300 @1286 @1294 -@1310 := @1295 @1250 @1302 @1258 @1306 -@1311 := Exists.intro.{1} -@1312 := @728 @1187 -@1314 := @1214 @71 @78 -@1326 := fun (__e_ro : @726) => - @1312 (@728 (@1314 -> @1001 (@1217 (@1218 @91 @71)) @34) (@1225 @1314 -> @1240)) -@1330 := @1311 @726 @1326 @34 @1310 -@1332 := @728 @1249 @1250 -@1334 := fun (__e_ro : @726) => fun (__e_hand : @1211) => @1330 -@1340 := Exists.elim.{1} @726 @1248 @1247 @1205 @1334 -@1341 := LexLeanPreservation.Rust.RepresentableL -@1342 := @18 @34 -@1344 := @356 @36 @355 -@1347 := @1341 (@356 @1342 @1344) -@1348 := (__e_hrep : @1347) -> @1247 -@1349 := fun (__e_hrep : @1347) => @1340 -@1350 := (bonus : @3) -> @1348 -@1351 := fun (bonus : @3) => @1349 -@1352 := (m : @8) -> @1350 -@1353 := fun (m : @8) => @1351 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R2/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R2/RustStd.lean deleted file mode 100644 index 9de8fee65..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R2/RustStd.lean +++ /dev/null @@ -1,75 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1], types := [(.list (.pair .nat .nat)), .nat], result := .nat, - body := (.call 1 [(.closure 2 [(.var 1)]), (.value .nat (.nat 0)), (.var 0)]) }, - { parameters := [0, 1, 2], types := [(.fn [.nat, .nat, .nat] .nat), .nat, (.list (.pair .nat .nat))], result := .nat, - body := (.«match» .nat (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 1 [(.var 0), (.apply (.var 0) [(.var 1), (.first (.var 3)), (.second (.var 3))]), (.var 4)]))]) }, - { parameters := [0, 1, 2, 3], types := [.nat, .nat, .nat, .nat], result := .nat, - body := (.prim .natAdd [(.prim .natAdd [(.var 1), (.var 2)]), (.prim .natAdd [(.var 3), (.var 0)])]) }, - { parameters := [0], types := [(.list (.pair .nat .nat))], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 4 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 3 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, - { parameters := [0], types := [.nat], result := .bool, - body := (.build .true .bool []) }, - { parameters := [0, 1], types := [(.list (.pair .nat .nat)), .nat], result := (.option .nat), - body := (.cond (.call 3 [(.var 0)]) (.build .some (.option .nat) [(.call 0 [(.var 0), (.var 1)])]) (.build .none (.option .nat) [])) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.enum (.fn 0) [{ number := 2, fields := [.nat] }]), - (.apply 0 [.nat, .nat, .nat] .nat true [{ function := 2, captures := [.copy], functionFallible := true }]), - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat .nat)) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .nat) (.mk [] (.call (.function 1) [(.construct (.closure 0 2) [(.copy (.generated .binding 1))]), (.lit (.nat 0)), (.move (.generated .binding 0))] false))), - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := (.list (.pair .nat .nat)) }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 1)) [(.mk .none (.mk [] (.succeed (.copy (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 1) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 2)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 2) [(.copy (.generated .binding 1)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 3)))), (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 4))]) none (.copy (.generated .binding 3)))] (.move (.generated .part 4))))] true))), (.move (.generated .binding 4))] false)))]))), - (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := .nat }, { pattern := (.bind (.generated .binding 3)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .operand 9)) none (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] true)))), (.mk (.bind (.generated .operand 10)) none (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 0)))] (.call (.runtime .natAdd) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] true))))] (.call (.runtime .natAdd) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false))), - (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat .nat)) }] .bool (.mk [(.mk (.bind (.generated .holder 11)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 11)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 4) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 12))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 12))))] false) (.mk [(.mk (.bind (.generated .holder 13)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 13)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 18)) none (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 14))))), (.mk (.bind (.generated .operand 17)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 15)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 15)))))] (.call (.runtime .compare) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false))))] (.cond (.matchOn (.move (.generated .holder 18)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 3) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]))), - (.function (.generated .function 4) [{ pattern := .wild, type := .nat }] .bool (.mk [] (.lit (.bool true)))), - (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat .nat)) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.option .nat)) (.mk [] (.cond (.call (.function 3) [(.clone (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] true)]))) (.mk [] (.succeed (.construct (.none .nat) []))))))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [(([.nat, .nat, .nat], .nat), true)] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 1) [(.construct (.closure 0 2) [(.copy (.generated .binding 1))]), (.lit (.nat 0)), (.move (.generated .binding 0))] false), [(1, .nat, (some 1)), (0, (.list (.pair .nat .nat)), (some 0))], rfl, rfl, - (Corr.callF (ts := [(.fn [.nat, .nat, .nat] .nat), .nat, (.list (.pair .nat .nat))]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [.nat]) (mask := [false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 1)) [(.mk .none (.mk [] (.succeed (.copy (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 1) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 2)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 2) [(.copy (.generated .binding 1)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 3)))), (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 4))]) none (.copy (.generated .binding 3)))] (.move (.generated .part 4))))] true))), (.move (.generated .binding 4))] false)))]), [(2, (.list (.pair .nat .nat)), (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat, .nat, .nat] .nat), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.pair .nat .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.pair .nat .nat)), (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat, .nat, .nat] .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.copy (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list (.pair .nat .nat)), (some 4)), (3, (.pair .nat .nat), (some 3)), (2, (.list (.pair .nat .nat)), (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat, .nat, .nat] .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 1) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 2)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 2) [(.copy (.generated .binding 1)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 3)))), (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 4))]) none (.copy (.generated .binding 3)))] (.move (.generated .part 4))))] true))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [.nat, .nat, .nat] .nat), .nat, (.list (.pair .nat .nat))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 2)) (some (.fn 0)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 2) [(.copy (.generated .binding 1)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 3)))), (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 4))]) none (.copy (.generated .binding 3)))] (.move (.generated .part 4))))] true)) (Corr.apply (ps := [.nat, .nat, .nat]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.copy (.generated .binding 3)))]) (tail := (.move (.generated .part 3))) (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 4))]) none (.copy (.generated .binding 3)))]) (tail := (.move (.generated .part 4))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lNil))))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 9)) none (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] true)))), (.mk (.bind (.generated .operand 10)) none (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 0)))] (.call (.runtime .natAdd) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] true))))], (.call (.runtime .natAdd) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false), [(3, .nat, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 0)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun3 : FunOK program krate flags 3 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 11)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 11)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 4) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 12))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 12))))] false) (.mk [(.mk (.bind (.generated .holder 13)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 13)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 18)) none (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 14))))), (.mk (.bind (.generated .operand 17)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 15)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 15)))))] (.call (.runtime .compare) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false))))] (.cond (.matchOn (.move (.generated .holder 18)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 3) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]), [(0, (.list (.pair .nat .nat)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.pair .nat .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list (.pair .nat .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, (.list (.pair .nat .nat)), (some 2)), (1, (.pair .nat .nat), (some 1)), (0, (.list (.pair .nat .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 4) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 12))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 12))))] false) (.mk [(.mk (.bind (.generated .holder 13)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 13)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 18)) none (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 14))))), (.mk (.bind (.generated .operand 17)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 15)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 15)))))] (.call (.runtime .compare) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false))))] (.cond (.matchOn (.move (.generated .holder 18)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 3) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 4) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 12))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 12))))] false)) (lk := []) (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 12))]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 12))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .holder 13)) none (.clone (.generated .binding 2)))]) (ta := (.matchOn (.uncons (.generated .holder 13)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 18)) none (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 14))))), (.mk (.bind (.generated .operand 17)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 15)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 15)))))] (.call (.runtime .compare) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false))))] (.cond (.matchOn (.move (.generated .holder 18)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 3) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (lb := []) (tb := (.lit (.bool false))) (Corr.matchArms (st := (.list (.pair .nat .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.pair .nat .nat)), (some 2)), (1, (.pair .nat .nat), (some 1)), (0, (.list (.pair .nat .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair .nat .nat)), none), (3, (.pair .nat .nat), (some 3)), (2, (.list (.pair .nat .nat)), (some 2)), (1, (.pair .nat .nat), (some 1)), (0, (.list (.pair .nat .nat)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 18)) none (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 14))))), (.mk (.bind (.generated .operand 17)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 15)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 15)))))] (.call (.runtime .compare) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 18)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 3) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .holder 18)) none (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 14))))), (.mk (.bind (.generated .operand 17)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 15)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 15)))))] (.call (.runtime .compare) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false))))]) (ce := (.matchOn (.move (.generated .holder 18)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 16)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 14))))), (.mk (.bind (.generated .operand 17)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 15)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 15)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 14))) (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 15)), .wild]) none (.copy (.generated .binding 3)))]) (tail := (.move (.generated .part 15))) (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.list (.pair .nat .nat)), none), (3, (.pair .nat .nat), (some 3)), (2, (.list (.pair .nat .nat)), (some 2)), (1, (.pair .nat .nat), (some 1)), (0, (.list (.pair .nat .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair .nat .nat)), none), (3, (.pair .nat .nat), (some 3)), (2, (.list (.pair .nat .nat)), (some 2)), (1, (.pair .nat .nat), (some 1)), (0, (.list (.pair .nat .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, (.list (.pair .nat .nat)), none), (3, (.pair .nat .nat), (some 3)), (2, (.list (.pair .nat .nat)), (some 2)), (1, (.pair .nat .nat), (some 1)), (0, (.list (.pair .nat .nat)), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 3) [(.move (.generated .binding 2))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.list (.pair .nat .nat))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ - -theorem fun4 : FunOK program krate flags 4 := - ⟨_, rfl, .inl ⟨_, _, [], (.lit (.bool true)), [(0, .nat, none)], rfl, rfl, - (Corr.bOfE (Corr.buildConst rfl))⟩⟩ - -theorem fun5 : FunOK program krate flags 5 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 3) [(.clone (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] true)]))) (.mk [] (.succeed (.construct (.none .nat) [])))), [(1, .nat, (some 1)), (0, (.list (.pair .nat .nat)), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 3) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.list (.pair .nat .nat))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] true)]))) (lb := []) (tb := (.succeed (.construct (.none .nat) []))) (Corr.fOfB (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .nat .nat)), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | 3 => exact fun3 - | 4 => exact fun4 - | 5 => exact fun5 - | _ + 6 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R20/Compose/RustCore.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R20/Compose/RustCore.lex.tex deleted file mode 100644 index 4a4fb8539..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R20/Compose/RustCore.lex.tex +++ /dev/null @@ -1,418 +0,0 @@ -\begin{lexlean}{RustCore} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.Compose.RustCore} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.RustCore, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.Compose.RustCore.root : @826 := @827 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.Compose.RustCore.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.RustCore.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.RustCore.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.RustCore.flags -@3 := Nat -@4 := #1 -@5 := LexLeanTarget.TargetSyntax.Value.nat -@6 := @5 @4 -@7 := LexLeanTarget.TargetSyntax.Ty.nat -@8 := LexLeanTarget.TargetSyntax.Program -@9 := LexLeanPreservation.Rust.RCrate -@10 := LexLeanPreservation.Rust.Flags -@11 := LexLeanPreservation.Rust.WT -@12 := #3 -@13 := @11 @12 -@14 := #2 -@16 := @13 @14 @4 -@17 := #0 -@18 := @5 @17 -@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 -@26 := LexLeanPreservation.Rust.wt_nat @0 -@27 := @11 @0 -@34 := {c : @9} -> {A : @10} -> (n : @3) -> @27 @14 @4 @18 @7 -@35 := @26 @1 -@36 := @27 @1 -@41 := {A : @10} -> (n : @3) -> @36 @4 @18 @7 -@42 := @35 @2 -@43 := @36 @2 -@46 := (n : @3) -> @43 @18 @7 -@47 := @42 @4 -@49 := @43 @6 @7 -@50 := LexLeanTarget.TargetSyntax.Value -@51 := List.nil.{0} -@52 := List.cons.{0} -@53 := @51 @50 -@54 := @52 @50 -@56 := @54 @6 @53 -@59 := Prod.{0, 0} @3 @50 -@60 := 0 -@64 := Prod.mk.{0, 0} @3 @50 @60 -@65 := @64 @6 -@66 := @51 @59 -@67 := @52 @59 -@69 := @67 @65 @66 -@70 := Bool.false -@71 := LexLeanTarget.TargetSyntax.Function -@72 := LexLeanTarget.TargetSyntax.Program.functions -@73 := @72 @0 -@74 := LexLeanTarget.TargetSyntax.Ty -@75 := @51 @3 -@76 := @51 @74 -@77 := LexLeanTarget.TargetSyntax.Ty.unit -@78 := LexLeanTarget.TargetSyntax.Value.unit -@81 := LexLeanTarget.TargetSyntax.Expr.value @77 @78 -@86 := LexLeanTarget.TargetSyntax.Function.mk @75 @76 @77 @81 -@91 := List.getD.{0} @71 @73 @60 @86 -@95 := fun (__e_n : @3) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.RustCore.root @17 @60 -@96 := LexLeanPreservation.Rust.WTL -@104 := {p : @8} -> {c : @9} -> {A : @10} -> @96 @14 @4 @17 @53 @76 -@106 := LexLeanPreservation.Rust.wtl_nil @0 -@107 := @96 @0 -@113 := {c : @9} -> {A : @10} -> @107 @4 @17 @53 @76 -@114 := @106 @1 -@115 := @107 @1 -@119 := {A : @10} -> @115 @17 @53 @76 -@120 := @114 @2 -@121 := @115 @2 -@122 := @121 @53 -@123 := @122 @76 -@124 := List.{0} -@125 := @124 @50 -@126 := @124 @74 -@127 := #6 -@128 := @11 @127 -@129 := #5 -@130 := @128 @129 -@131 := #4 -@134 := @130 @131 @12 @14 -@135 := #7 -@140 := @96 @135 @127 @129 @14 @4 -@141 := #8 -@144 := @96 @141 @135 @127 -@146 := @54 @129 @12 -@147 := @144 @146 -@148 := @52 @74 -@150 := @148 @131 @14 -@160 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {v : @50} -> {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @134) -> (hs : @140) -> @147 @150 -@162 := LexLeanPreservation.Rust.wtl_cons @0 -@182 := {c : @9} -> - {A : @10} -> - {v : @50} -> - {t : @74} -> - {vs : @125} -> - {ts : @126} -> - (h : @27 @129 @131 @12 @14) -> (hs : @107 @127 @129 @14 @4) -> @107 @135 @127 @146 @150 -@183 := @162 @1 -@199 := {A : @10} -> - {v : @50} -> - {t : @74} -> - {vs : @125} -> - {ts : @126} -> (h : @36 @131 @12 @14) -> (hs : @115 @129 @14 @4) -> @115 @127 @146 @150 -@200 := @183 @2 -@202 := @43 @12 @14 -@204 := @121 @14 @4 -@212 := {v : @50} -> - {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @202) -> (hs : @204) -> @121 @146 @150 -@213 := @200 @6 -@214 := @5 @131 -@216 := @43 @214 @14 -@217 := @5 @127 -@218 := @54 @217 -@226 := {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @216) -> (hs : @204) -> @121 (@218 @12) @150 -@227 := @213 @7 -@228 := @5 @12 -@230 := @43 @228 @7 -@231 := @5 @129 -@232 := @54 @231 -@234 := @121 (@232 @12) -@235 := @148 @7 -@236 := @235 @14 -@241 := {vs : @125} -> {ts : @126} -> (h : @230) -> (hs : @204) -> @234 @236 -@242 := @227 @53 -@243 := @5 @14 -@245 := @43 @243 @7 -@246 := @122 @4 -@248 := @54 @214 @53 -@249 := @121 @248 -@253 := {ts : @126} -> (h : @245) -> (hs : @246) -> @249 @236 -@254 := @242 @76 -@256 := @54 @228 @53 -@257 := @121 @256 -@258 := @235 @76 -@261 := (h : @49) -> (hs : @123) -> @257 @258 -@262 := @254 @47 -@264 := @54 @243 @53 -@265 := @121 @264 -@267 := (hs : @123) -> @265 @258 -@268 := @262 @120 -@269 := @121 @56 -@270 := @269 @258 -@271 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.denote -@272 := @271 @4 -@273 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.__fits_0 -@274 := @273 @4 -@276 := Coverage.Main.parity @4 -@278 := LexLeanTarget.TargetSyntax.Value.bool @276 -@280 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.root @4 -@281 := Bool -@282 := Ne.{1} -@283 := LexLeanPreservation.Obs -@284 := @282 @283 -@285 := LexLeanPreservation.Rel -@288 := @284 (@285 @4 @17) -@289 := LexLeanPreservation.Obs.stuck -@292 := (f : @281) -> (v : @50) -> @288 @289 -@294 := LexLeanPreservation.Rust.rel_ne_stuck @274 -@300 := (v : @50) -> @284 (@285 (@273 @14) @17) @289 -@301 := @294 @278 -@305 := @284 (@285 @274 @278) @289 -@306 := @124 @59 -@307 := LexLeanPreservation.Rust.FunSem -@308 := #9 -@314 := (n : @3) -> @307 @308 @141 @135 @17 @127 -@315 := Eq.{1} -@316 := Option.{0} -@317 := @316 @71 -@318 := @315 @317 -@325 := LexLeanRuntime.index (@124 @71) @71 (LexLeanRuntime.instIndexableList @71) -@329 := @318 (@325 (@72 @308) @127) -@330 := Option.some.{0} -@331 := @330 @71 -@332 := @331 @129 -@333 := @329 @332 -@334 := #10 -@338 := @96 @334 @308 @141 @129 -@339 := LexLeanTarget.TargetSyntax.Function.types -@340 := @339 @127 -@341 := @338 @340 -@342 := @316 @306 -@343 := @315 @342 -@344 := LexLeanTarget.TargetSemantics.bindAll -@345 := LexLeanTarget.TargetSyntax.Function.parameters -@350 := @343 (@344 (@345 @135) @127 @66) -@351 := @330 @306 -@352 := @351 @129 -@353 := @350 @352 -@354 := @316 @281 -@355 := @315 @354 -@356 := LexLeanPreservation.Rust.fnFallible -@357 := #11 -@360 := @355 (@356 @357 @308) -@361 := @330 @281 -@362 := @361 @129 -@363 := @360 @362 -@364 := LexLeanPreservation.RunConv -@365 := #13 -@369 := @364 @365 @334 @141 @129 -@371 := @284 @127 @289 -@372 := Exists.{1} -@373 := LexLeanPreservation.Rust.ROut -@374 := @372 @373 -@375 := And -@376 := LexLeanPreservation.Rust.RealizesFn -@380 := @375 (@376 @308 @141 @17) -@381 := LexLeanPreservation.Rust.RCI -@383 := @381 #15 -@384 := LexLeanPreservation.Rust.fnIdent -@385 := @384 @365 -@392 := (hne : @371) -> @374 (fun (ro : @373) => @380 (@383 @385 @357 @17)) -@407 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {f : @3} -> - {fn : @71} -> - {args : @125} -> - {env : @306} -> - {F : @281} -> - {o : @283} -> - (hB : @314) -> - (hfn : @333) -> (hwt : @341) -> (hbind : @353) -> (hF : @363) -> (hA : @369) -> @392 -@409 := LexLeanPreservation.Rust.compose @0 -@410 := @307 @0 -@415 := (n : @3) -> @410 @141 @135 @17 @127 -@416 := @325 @73 -@419 := @318 (@416 @127) @332 -@423 := @107 @308 @141 @129 @340 -@424 := @364 @0 -@427 := @424 @334 @141 @129 -@441 := {c : @9} -> - {A : @10} -> - {f : @3} -> - {fn : @71} -> - {args : @125} -> - {env : @306} -> - {F : @281} -> - {o : @283} -> - (hB : @415) -> - (hfn : @419) -> (hwt : @423) -> (hbind : @353) -> (hF : @363) -> (hA : @427) -> @392 -@442 := @409 @1 -@443 := @410 @1 -@447 := (n : @3) -> @443 @135 @17 @127 -@450 := @115 @141 @129 @340 -@451 := @356 @1 -@454 := @355 (@451 @308) @362 -@455 := @381 @1 -@465 := (hbind : @353) -> - (hF : @454) -> (hA : @427) -> (hne : @371) -> @374 (fun (ro : @373) => @380 (@455 @385 @357 @17)) -@475 := {A : @10} -> - {f : @3} -> - {fn : @71} -> - {args : @125} -> - {env : @306} -> {F : @281} -> {o : @283} -> (hB : @447) -> (hfn : @419) -> (hwt : @450) -> @465 -@476 := @442 @2 -@478 := @443 @2 @17 -@480 := (n : @3) -> @478 @127 -@481 := @121 @129 -@482 := @481 @340 -@491 := {f : @3} -> - {fn : @71} -> - {args : @125} -> - {env : @306} -> {F : @281} -> {o : @283} -> (hB : @480) -> (hfn : @419) -> (hwt : @482) -> @465 -@492 := @476 @60 -@494 := (n : @3) -> @478 @60 -@495 := @416 @60 -@496 := @318 @495 -@497 := @496 @332 -@498 := @451 @60 -@499 := @355 @498 -@500 := @499 @362 -@501 := @424 @60 -@503 := @501 @141 @129 -@505 := @455 (@384 @60) -@513 := (hF : @500) -> (hA : @503) -> (hne : @371) -> @374 (fun (ro : @373) => @380 (@505 @357 @17)) -@522 := {fn : @71} -> - {args : @125} -> - {env : @306} -> - {F : @281} -> {o : @283} -> (hB : @494) -> (hfn : @497) -> (hwt : @482) -> (hbind : @353) -> @513 -@523 := @492 @91 -@525 := @496 (@331 @91) -@526 := @339 @91 -@527 := @481 @526 -@529 := @344 (@345 @91) -@541 := {args : @125} -> - {env : @306} -> - {F : @281} -> - {o : @283} -> - (hB : @494) -> (hfn : @525) -> (hwt : @527) -> (hbind : @343 (@529 @127 @66) @352) -> @513 -@542 := @523 @56 -@543 := @218 @53 -@545 := @121 @543 @526 -@548 := @54 (@5 @135) @53 -@552 := @343 (@529 @548 @66) @352 -@555 := @54 (@5 @308) @53 -@576 := {env : @306} -> - {F : @281} -> - {o : @283} -> - (hB : @494) -> - (hfn : @525) -> - (hwt : @545) -> - (hbind : @552) -> - (hF : @500) -> - (hA : @501 @555 @129) -> - (hne : @371) -> @374 (fun (ro : @373) => @380 (@505 (@54 (@5 #12) @53) @17)) -@577 := @542 @69 -@578 := @232 @53 -@580 := @121 @578 @526 -@588 := @343 (@529 @543 @66) (@351 (@67 (@64 @217) @66)) -@591 := @54 (@5 @141) @53 -@610 := {F : @281} -> - {o : @283} -> - (hB : @494) -> - (hfn : @525) -> - (hwt : @580) -> - (hbind : @588) -> - (hF : @500) -> - (hA : @501 @591 @129) -> - (hne : @371) -> @374 (fun (ro : @373) => @380 (@505 (@54 (@5 @357) @53) @17)) -@611 := @577 @70 -@612 := @249 @526 -@620 := @343 (@529 @578 @66) (@351 (@67 (@64 @231) @66)) -@622 := @499 (@361 @70) -@624 := @501 @548 @129 -@625 := @376 @70 -@644 := {o : @283} -> - (hB : @494) -> - (hfn : @525) -> - (hwt : @612) -> - (hbind : @620) -> - (hF : @622) -> - (hA : @624) -> - (hne : @371) -> @374 (fun (ro : @373) => @375 (@625 @141 @17) (@505 (@54 (@5 @334) @53) @17)) -@645 := @611 @272 -@646 := @257 @526 -@654 := @343 (@529 @248 @66) (@351 (@67 (@64 @214) @66)) -@655 := @501 @543 -@656 := @271 @127 -@657 := @655 @656 -@658 := @271 @135 -@676 := (hB : @494) -> - (hfn : @525) -> - (hwt : @646) -> - (hbind : @654) -> - (hF : @622) -> - (hA : @657) -> - (hne : @284 @658 @289) -> @374 (fun (ro : @373) => @375 (@625 (@271 @308) @17) (@505 @555 @17)) -@677 := @645 @95 -@678 := @265 @526 -@686 := @343 (@529 @256 @66) (@351 (@67 (@64 @228) @66)) -@687 := @501 @578 -@688 := @271 @129 -@706 := (hfn : @525) -> - (hwt : @678) -> - (hbind : @686) -> - (hF : @622) -> - (hA : @687 @688) -> - (hne : @284 @656 @289) -> @374 (fun (ro : @373) => @375 (@625 (@271 @141) @17) (@505 @591 @17)) -@707 := Eq.refl.{1} -@710 := @677 (@707 @317 @495) -@711 := @269 @526 -@719 := @343 (@529 @264 @66) (@351 (@67 (@64 @243) @66)) -@720 := @501 @248 -@721 := @271 @131 -@737 := (hwt : @711) -> - (hbind : @719) -> - (hF : @622) -> - (hA : @720 @721) -> - (hne : @284 @688 @289) -> @374 (fun (ro : @373) => @375 (@625 @658 @17) (@505 @548 @17)) -@738 := @710 @268 -@740 := @529 @56 @66 -@743 := @343 @740 (@351 @69) -@744 := @501 @256 -@745 := @271 @12 -@760 := (hbind : @743) -> - (hF : @622) -> - (hA : @744 @745) -> - (hne : @284 @721 @289) -> @374 (fun (ro : @373) => @375 (@625 @656 @17) (@505 @543 @17)) -@763 := @738 (@707 @342 @740) -@764 := @501 @264 -@765 := @271 @14 -@779 := (hF : @622) -> - (hA : @764 @765) -> - (hne : @284 @745 @289) -> @374 (fun (ro : @373) => @375 (@625 @688 @17) (@505 @578 @17)) -@782 := @763 (@707 @354 @498) -@796 := (hA : @501 @56 @272) -> - (hne : @284 @765 @289) -> @374 (fun (ro : @373) => @375 (@625 @721 @17) (@505 @248 @17)) -@797 := @782 @280 -@808 := (hne : @284 @272 @289) -> @374 (fun (ro : @373) => @375 (@625 @745 @17) (@505 @256 @17)) -@809 := @797 @301 -@815 := @375 (@625 @765 @17) (@505 @264 @17) -@817 := @374 (fun (ro : @373) => @815) -@819 := @374 (fun (__e_ro : @373) => @815) -@823 := LexLeanPreservation.Rust.RepresentableL (@54 @18 @53) -@824 := (__e_hrep : @823) -> @819 -@825 := fun (__e_hrep : @823) => @809 -@826 := (n : @3) -> @824 -@827 := fun (n : @3) => @825 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R20/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R20/Compose/RustStd.lex.tex deleted file mode 100644 index 383d6f1f0..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R20/Compose/RustStd.lex.tex +++ /dev/null @@ -1,418 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.Compose.RustStd.root : @826 := @827 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.RustStd.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.RustStd.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.RustStd.flags -@3 := Nat -@4 := #1 -@5 := LexLeanTarget.TargetSyntax.Value.nat -@6 := @5 @4 -@7 := LexLeanTarget.TargetSyntax.Ty.nat -@8 := LexLeanTarget.TargetSyntax.Program -@9 := LexLeanPreservation.Rust.RCrate -@10 := LexLeanPreservation.Rust.Flags -@11 := LexLeanPreservation.Rust.WT -@12 := #3 -@13 := @11 @12 -@14 := #2 -@16 := @13 @14 @4 -@17 := #0 -@18 := @5 @17 -@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 -@26 := LexLeanPreservation.Rust.wt_nat @0 -@27 := @11 @0 -@34 := {c : @9} -> {A : @10} -> (n : @3) -> @27 @14 @4 @18 @7 -@35 := @26 @1 -@36 := @27 @1 -@41 := {A : @10} -> (n : @3) -> @36 @4 @18 @7 -@42 := @35 @2 -@43 := @36 @2 -@46 := (n : @3) -> @43 @18 @7 -@47 := @42 @4 -@49 := @43 @6 @7 -@50 := LexLeanTarget.TargetSyntax.Value -@51 := List.nil.{0} -@52 := List.cons.{0} -@53 := @51 @50 -@54 := @52 @50 -@56 := @54 @6 @53 -@59 := Prod.{0, 0} @3 @50 -@60 := 0 -@64 := Prod.mk.{0, 0} @3 @50 @60 -@65 := @64 @6 -@66 := @51 @59 -@67 := @52 @59 -@69 := @67 @65 @66 -@70 := Bool.false -@71 := LexLeanTarget.TargetSyntax.Function -@72 := LexLeanTarget.TargetSyntax.Program.functions -@73 := @72 @0 -@74 := LexLeanTarget.TargetSyntax.Ty -@75 := @51 @3 -@76 := @51 @74 -@77 := LexLeanTarget.TargetSyntax.Ty.unit -@78 := LexLeanTarget.TargetSyntax.Value.unit -@81 := LexLeanTarget.TargetSyntax.Expr.value @77 @78 -@86 := LexLeanTarget.TargetSyntax.Function.mk @75 @76 @77 @81 -@91 := List.getD.{0} @71 @73 @60 @86 -@95 := fun (__e_n : @3) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.RustStd.root @17 @60 -@96 := LexLeanPreservation.Rust.WTL -@104 := {p : @8} -> {c : @9} -> {A : @10} -> @96 @14 @4 @17 @53 @76 -@106 := LexLeanPreservation.Rust.wtl_nil @0 -@107 := @96 @0 -@113 := {c : @9} -> {A : @10} -> @107 @4 @17 @53 @76 -@114 := @106 @1 -@115 := @107 @1 -@119 := {A : @10} -> @115 @17 @53 @76 -@120 := @114 @2 -@121 := @115 @2 -@122 := @121 @53 -@123 := @122 @76 -@124 := List.{0} -@125 := @124 @50 -@126 := @124 @74 -@127 := #6 -@128 := @11 @127 -@129 := #5 -@130 := @128 @129 -@131 := #4 -@134 := @130 @131 @12 @14 -@135 := #7 -@140 := @96 @135 @127 @129 @14 @4 -@141 := #8 -@144 := @96 @141 @135 @127 -@146 := @54 @129 @12 -@147 := @144 @146 -@148 := @52 @74 -@150 := @148 @131 @14 -@160 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {v : @50} -> {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @134) -> (hs : @140) -> @147 @150 -@162 := LexLeanPreservation.Rust.wtl_cons @0 -@182 := {c : @9} -> - {A : @10} -> - {v : @50} -> - {t : @74} -> - {vs : @125} -> - {ts : @126} -> - (h : @27 @129 @131 @12 @14) -> (hs : @107 @127 @129 @14 @4) -> @107 @135 @127 @146 @150 -@183 := @162 @1 -@199 := {A : @10} -> - {v : @50} -> - {t : @74} -> - {vs : @125} -> - {ts : @126} -> (h : @36 @131 @12 @14) -> (hs : @115 @129 @14 @4) -> @115 @127 @146 @150 -@200 := @183 @2 -@202 := @43 @12 @14 -@204 := @121 @14 @4 -@212 := {v : @50} -> - {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @202) -> (hs : @204) -> @121 @146 @150 -@213 := @200 @6 -@214 := @5 @131 -@216 := @43 @214 @14 -@217 := @5 @127 -@218 := @54 @217 -@226 := {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @216) -> (hs : @204) -> @121 (@218 @12) @150 -@227 := @213 @7 -@228 := @5 @12 -@230 := @43 @228 @7 -@231 := @5 @129 -@232 := @54 @231 -@234 := @121 (@232 @12) -@235 := @148 @7 -@236 := @235 @14 -@241 := {vs : @125} -> {ts : @126} -> (h : @230) -> (hs : @204) -> @234 @236 -@242 := @227 @53 -@243 := @5 @14 -@245 := @43 @243 @7 -@246 := @122 @4 -@248 := @54 @214 @53 -@249 := @121 @248 -@253 := {ts : @126} -> (h : @245) -> (hs : @246) -> @249 @236 -@254 := @242 @76 -@256 := @54 @228 @53 -@257 := @121 @256 -@258 := @235 @76 -@261 := (h : @49) -> (hs : @123) -> @257 @258 -@262 := @254 @47 -@264 := @54 @243 @53 -@265 := @121 @264 -@267 := (hs : @123) -> @265 @258 -@268 := @262 @120 -@269 := @121 @56 -@270 := @269 @258 -@271 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.denote -@272 := @271 @4 -@273 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.__fits_0 -@274 := @273 @4 -@276 := Coverage.Main.parity @4 -@278 := LexLeanTarget.TargetSyntax.Value.bool @276 -@280 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.root @4 -@281 := Bool -@282 := Ne.{1} -@283 := LexLeanPreservation.Obs -@284 := @282 @283 -@285 := LexLeanPreservation.Rel -@288 := @284 (@285 @4 @17) -@289 := LexLeanPreservation.Obs.stuck -@292 := (f : @281) -> (v : @50) -> @288 @289 -@294 := LexLeanPreservation.Rust.rel_ne_stuck @274 -@300 := (v : @50) -> @284 (@285 (@273 @14) @17) @289 -@301 := @294 @278 -@305 := @284 (@285 @274 @278) @289 -@306 := @124 @59 -@307 := LexLeanPreservation.Rust.FunSem -@308 := #9 -@314 := (n : @3) -> @307 @308 @141 @135 @17 @127 -@315 := Eq.{1} -@316 := Option.{0} -@317 := @316 @71 -@318 := @315 @317 -@325 := LexLeanRuntime.index (@124 @71) @71 (LexLeanRuntime.instIndexableList @71) -@329 := @318 (@325 (@72 @308) @127) -@330 := Option.some.{0} -@331 := @330 @71 -@332 := @331 @129 -@333 := @329 @332 -@334 := #10 -@338 := @96 @334 @308 @141 @129 -@339 := LexLeanTarget.TargetSyntax.Function.types -@340 := @339 @127 -@341 := @338 @340 -@342 := @316 @306 -@343 := @315 @342 -@344 := LexLeanTarget.TargetSemantics.bindAll -@345 := LexLeanTarget.TargetSyntax.Function.parameters -@350 := @343 (@344 (@345 @135) @127 @66) -@351 := @330 @306 -@352 := @351 @129 -@353 := @350 @352 -@354 := @316 @281 -@355 := @315 @354 -@356 := LexLeanPreservation.Rust.fnFallible -@357 := #11 -@360 := @355 (@356 @357 @308) -@361 := @330 @281 -@362 := @361 @129 -@363 := @360 @362 -@364 := LexLeanPreservation.RunConv -@365 := #13 -@369 := @364 @365 @334 @141 @129 -@371 := @284 @127 @289 -@372 := Exists.{1} -@373 := LexLeanPreservation.Rust.ROut -@374 := @372 @373 -@375 := And -@376 := LexLeanPreservation.Rust.RealizesFn -@380 := @375 (@376 @308 @141 @17) -@381 := LexLeanPreservation.Rust.RCI -@383 := @381 #15 -@384 := LexLeanPreservation.Rust.fnIdent -@385 := @384 @365 -@392 := (hne : @371) -> @374 (fun (ro : @373) => @380 (@383 @385 @357 @17)) -@407 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {f : @3} -> - {fn : @71} -> - {args : @125} -> - {env : @306} -> - {F : @281} -> - {o : @283} -> - (hB : @314) -> - (hfn : @333) -> (hwt : @341) -> (hbind : @353) -> (hF : @363) -> (hA : @369) -> @392 -@409 := LexLeanPreservation.Rust.compose @0 -@410 := @307 @0 -@415 := (n : @3) -> @410 @141 @135 @17 @127 -@416 := @325 @73 -@419 := @318 (@416 @127) @332 -@423 := @107 @308 @141 @129 @340 -@424 := @364 @0 -@427 := @424 @334 @141 @129 -@441 := {c : @9} -> - {A : @10} -> - {f : @3} -> - {fn : @71} -> - {args : @125} -> - {env : @306} -> - {F : @281} -> - {o : @283} -> - (hB : @415) -> - (hfn : @419) -> (hwt : @423) -> (hbind : @353) -> (hF : @363) -> (hA : @427) -> @392 -@442 := @409 @1 -@443 := @410 @1 -@447 := (n : @3) -> @443 @135 @17 @127 -@450 := @115 @141 @129 @340 -@451 := @356 @1 -@454 := @355 (@451 @308) @362 -@455 := @381 @1 -@465 := (hbind : @353) -> - (hF : @454) -> (hA : @427) -> (hne : @371) -> @374 (fun (ro : @373) => @380 (@455 @385 @357 @17)) -@475 := {A : @10} -> - {f : @3} -> - {fn : @71} -> - {args : @125} -> - {env : @306} -> {F : @281} -> {o : @283} -> (hB : @447) -> (hfn : @419) -> (hwt : @450) -> @465 -@476 := @442 @2 -@478 := @443 @2 @17 -@480 := (n : @3) -> @478 @127 -@481 := @121 @129 -@482 := @481 @340 -@491 := {f : @3} -> - {fn : @71} -> - {args : @125} -> - {env : @306} -> {F : @281} -> {o : @283} -> (hB : @480) -> (hfn : @419) -> (hwt : @482) -> @465 -@492 := @476 @60 -@494 := (n : @3) -> @478 @60 -@495 := @416 @60 -@496 := @318 @495 -@497 := @496 @332 -@498 := @451 @60 -@499 := @355 @498 -@500 := @499 @362 -@501 := @424 @60 -@503 := @501 @141 @129 -@505 := @455 (@384 @60) -@513 := (hF : @500) -> (hA : @503) -> (hne : @371) -> @374 (fun (ro : @373) => @380 (@505 @357 @17)) -@522 := {fn : @71} -> - {args : @125} -> - {env : @306} -> - {F : @281} -> {o : @283} -> (hB : @494) -> (hfn : @497) -> (hwt : @482) -> (hbind : @353) -> @513 -@523 := @492 @91 -@525 := @496 (@331 @91) -@526 := @339 @91 -@527 := @481 @526 -@529 := @344 (@345 @91) -@541 := {args : @125} -> - {env : @306} -> - {F : @281} -> - {o : @283} -> - (hB : @494) -> (hfn : @525) -> (hwt : @527) -> (hbind : @343 (@529 @127 @66) @352) -> @513 -@542 := @523 @56 -@543 := @218 @53 -@545 := @121 @543 @526 -@548 := @54 (@5 @135) @53 -@552 := @343 (@529 @548 @66) @352 -@555 := @54 (@5 @308) @53 -@576 := {env : @306} -> - {F : @281} -> - {o : @283} -> - (hB : @494) -> - (hfn : @525) -> - (hwt : @545) -> - (hbind : @552) -> - (hF : @500) -> - (hA : @501 @555 @129) -> - (hne : @371) -> @374 (fun (ro : @373) => @380 (@505 (@54 (@5 #12) @53) @17)) -@577 := @542 @69 -@578 := @232 @53 -@580 := @121 @578 @526 -@588 := @343 (@529 @543 @66) (@351 (@67 (@64 @217) @66)) -@591 := @54 (@5 @141) @53 -@610 := {F : @281} -> - {o : @283} -> - (hB : @494) -> - (hfn : @525) -> - (hwt : @580) -> - (hbind : @588) -> - (hF : @500) -> - (hA : @501 @591 @129) -> - (hne : @371) -> @374 (fun (ro : @373) => @380 (@505 (@54 (@5 @357) @53) @17)) -@611 := @577 @70 -@612 := @249 @526 -@620 := @343 (@529 @578 @66) (@351 (@67 (@64 @231) @66)) -@622 := @499 (@361 @70) -@624 := @501 @548 @129 -@625 := @376 @70 -@644 := {o : @283} -> - (hB : @494) -> - (hfn : @525) -> - (hwt : @612) -> - (hbind : @620) -> - (hF : @622) -> - (hA : @624) -> - (hne : @371) -> @374 (fun (ro : @373) => @375 (@625 @141 @17) (@505 (@54 (@5 @334) @53) @17)) -@645 := @611 @272 -@646 := @257 @526 -@654 := @343 (@529 @248 @66) (@351 (@67 (@64 @214) @66)) -@655 := @501 @543 -@656 := @271 @127 -@657 := @655 @656 -@658 := @271 @135 -@676 := (hB : @494) -> - (hfn : @525) -> - (hwt : @646) -> - (hbind : @654) -> - (hF : @622) -> - (hA : @657) -> - (hne : @284 @658 @289) -> @374 (fun (ro : @373) => @375 (@625 (@271 @308) @17) (@505 @555 @17)) -@677 := @645 @95 -@678 := @265 @526 -@686 := @343 (@529 @256 @66) (@351 (@67 (@64 @228) @66)) -@687 := @501 @578 -@688 := @271 @129 -@706 := (hfn : @525) -> - (hwt : @678) -> - (hbind : @686) -> - (hF : @622) -> - (hA : @687 @688) -> - (hne : @284 @656 @289) -> @374 (fun (ro : @373) => @375 (@625 (@271 @141) @17) (@505 @591 @17)) -@707 := Eq.refl.{1} -@710 := @677 (@707 @317 @495) -@711 := @269 @526 -@719 := @343 (@529 @264 @66) (@351 (@67 (@64 @243) @66)) -@720 := @501 @248 -@721 := @271 @131 -@737 := (hwt : @711) -> - (hbind : @719) -> - (hF : @622) -> - (hA : @720 @721) -> - (hne : @284 @688 @289) -> @374 (fun (ro : @373) => @375 (@625 @658 @17) (@505 @548 @17)) -@738 := @710 @268 -@740 := @529 @56 @66 -@743 := @343 @740 (@351 @69) -@744 := @501 @256 -@745 := @271 @12 -@760 := (hbind : @743) -> - (hF : @622) -> - (hA : @744 @745) -> - (hne : @284 @721 @289) -> @374 (fun (ro : @373) => @375 (@625 @656 @17) (@505 @543 @17)) -@763 := @738 (@707 @342 @740) -@764 := @501 @264 -@765 := @271 @14 -@779 := (hF : @622) -> - (hA : @764 @765) -> - (hne : @284 @745 @289) -> @374 (fun (ro : @373) => @375 (@625 @688 @17) (@505 @578 @17)) -@782 := @763 (@707 @354 @498) -@796 := (hA : @501 @56 @272) -> - (hne : @284 @765 @289) -> @374 (fun (ro : @373) => @375 (@625 @721 @17) (@505 @248 @17)) -@797 := @782 @280 -@808 := (hne : @284 @272 @289) -> @374 (fun (ro : @373) => @375 (@625 @745 @17) (@505 @256 @17)) -@809 := @797 @301 -@815 := @375 (@625 @765 @17) (@505 @264 @17) -@817 := @374 (fun (ro : @373) => @815) -@819 := @374 (fun (__e_ro : @373) => @815) -@823 := LexLeanPreservation.Rust.RepresentableL (@54 @18 @53) -@824 := (__e_hrep : @823) -> @819 -@825 := fun (__e_hrep : @823) => @809 -@826 := (n : @3) -> @824 -@827 := fun (n : @3) => @825 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R20/RustCore.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R20/RustCore.lean deleted file mode 100644 index 7991e1599..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R20/RustCore.lean +++ /dev/null @@ -1,49 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.RustCore -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0], types := [.nat], result := .bool, - body := (.call 1 [(.var 0)]) }, - { parameters := [0], types := [.nat], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .zero [] (.build .false .bool [])), (.arm .succ [1] (.call 2 [(.var 1)]))]) }, - { parameters := [0], types := [.nat], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .zero [] (.build .true .bool [])), (.arm .succ [1] (.call 1 [(.var 1)]))]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .core, items := [ - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] .bool (.mk [] (.call (.function 1) [(.copy (.generated .binding 0))] false))), - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .holder 1)) none (.copy (.generated .binding 0)))] (.cond (.isZero (.generated .holder 1)) (.mk [] (.lit (.bool false))) (.mk [(.mk (.bind (.generated .binding 1)) none (.predecessor (.generated .holder 1)))] (.call (.function 2) [(.copy (.generated .binding 1))] false))))), - (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .holder 2)) none (.copy (.generated .binding 0)))] (.cond (.isZero (.generated .holder 2)) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .binding 1)) none (.predecessor (.generated .holder 2)))] (.call (.function 1) [(.copy (.generated .binding 1))] false)))))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 1) [(.copy (.generated .binding 0))] false), [(0, .nat, (some 0))], rfl, rfl, - (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.copy (.generated .binding 0)))], (.cond (.isZero (.generated .holder 1)) (.mk [] (.lit (.bool false))) (.mk [(.mk (.bind (.generated .binding 1)) none (.predecessor (.generated .holder 1)))] (.call (.function 2) [(.copy (.generated .binding 1))] false))), [(0, .nat, (some 0))], rfl, rfl, - (Corr.matchNat (sl := (some 1)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.lit (.bool false))) (lb := []) (tb := (.call (.function 2) [(.copy (.generated .binding 1))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)))⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 2)) none (.copy (.generated .binding 0)))], (.cond (.isZero (.generated .holder 2)) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .binding 1)) none (.predecessor (.generated .holder 2)))] (.call (.function 1) [(.copy (.generated .binding 1))] false))), [(0, .nat, (some 0))], rfl, rfl, - (Corr.matchNat (sl := (some 1)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := []) (tb := (.call (.function 1) [(.copy (.generated .binding 1))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | _ + 3 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.RustCore diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R20/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R20/RustStd.lean deleted file mode 100644 index 799c91a37..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R20/RustStd.lean +++ /dev/null @@ -1,49 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0], types := [.nat], result := .bool, - body := (.call 1 [(.var 0)]) }, - { parameters := [0], types := [.nat], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .zero [] (.build .false .bool [])), (.arm .succ [1] (.call 2 [(.var 1)]))]) }, - { parameters := [0], types := [.nat], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .zero [] (.build .true .bool [])), (.arm .succ [1] (.call 1 [(.var 1)]))]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] .bool (.mk [] (.call (.function 1) [(.copy (.generated .binding 0))] false))), - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .holder 1)) none (.copy (.generated .binding 0)))] (.cond (.isZero (.generated .holder 1)) (.mk [] (.lit (.bool false))) (.mk [(.mk (.bind (.generated .binding 1)) none (.predecessor (.generated .holder 1)))] (.call (.function 2) [(.copy (.generated .binding 1))] false))))), - (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .holder 2)) none (.copy (.generated .binding 0)))] (.cond (.isZero (.generated .holder 2)) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .binding 1)) none (.predecessor (.generated .holder 2)))] (.call (.function 1) [(.copy (.generated .binding 1))] false)))))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 1) [(.copy (.generated .binding 0))] false), [(0, .nat, (some 0))], rfl, rfl, - (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.copy (.generated .binding 0)))], (.cond (.isZero (.generated .holder 1)) (.mk [] (.lit (.bool false))) (.mk [(.mk (.bind (.generated .binding 1)) none (.predecessor (.generated .holder 1)))] (.call (.function 2) [(.copy (.generated .binding 1))] false))), [(0, .nat, (some 0))], rfl, rfl, - (Corr.matchNat (sl := (some 1)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.lit (.bool false))) (lb := []) (tb := (.call (.function 2) [(.copy (.generated .binding 1))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)))⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 2)) none (.copy (.generated .binding 0)))], (.cond (.isZero (.generated .holder 2)) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .binding 1)) none (.predecessor (.generated .holder 2)))] (.call (.function 1) [(.copy (.generated .binding 1))] false))), [(0, .nat, (some 0))], rfl, rfl, - (Corr.matchNat (sl := (some 1)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := []) (tb := (.call (.function 1) [(.copy (.generated .binding 1))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | _ + 3 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R21/Compose/RustCore.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R21/Compose/RustCore.lex.tex deleted file mode 100644 index 65332170c..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R21/Compose/RustCore.lex.tex +++ /dev/null @@ -1,475 +0,0 @@ -\begin{lexlean}{RustCore} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.Compose.RustCore} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.RustCore, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.Compose.RustCore.root : @939 := @940 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.Compose.RustCore.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.RustCore.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.RustCore.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.RustCore.flags -@3 := Int8 -@4 := #2 -@5 := LexLeanTarget.TargetSyntax.Value.i8 -@6 := @5 @4 -@9 := LexLeanTarget.TargetSyntax.Ty.fixed LexLeanTarget.TargetSyntax.IntKind.i8 -@10 := LexLeanTarget.TargetSyntax.Program -@11 := LexLeanPreservation.Rust.RCrate -@12 := LexLeanPreservation.Rust.Flags -@13 := LexLeanPreservation.Rust.WT -@14 := #3 -@16 := @13 @14 @4 -@17 := #1 -@18 := @16 @17 -@19 := #0 -@20 := @5 @19 -@26 := {p : @10} -> {c : @11} -> {A : @12} -> (x : @3) -> @18 @20 @9 -@28 := LexLeanPreservation.Rust.wt_i8 @0 -@29 := @13 @0 -@36 := {c : @11} -> {A : @12} -> (x : @3) -> @29 @4 @17 @20 @9 -@37 := @28 @1 -@38 := @29 @1 -@43 := {A : @12} -> (x : @3) -> @38 @17 @20 @9 -@44 := @37 @2 -@45 := @38 @2 -@48 := (x : @3) -> @45 @20 @9 -@49 := @44 @4 -@51 := @45 @6 @9 -@52 := @5 @17 -@53 := @44 @17 -@55 := @45 @52 @9 -@56 := LexLeanTarget.TargetSyntax.Value -@57 := List.nil.{0} -@58 := List.cons.{0} -@59 := @57 @56 -@60 := @58 @56 -@61 := @60 @52 -@62 := @61 @59 -@63 := @60 @6 -@64 := @63 @62 -@65 := Nat -@66 := Prod.{0, 0} -@68 := @66 @65 @56 -@69 := 1 -@72 := Prod.mk.{0, 0} @65 @56 -@73 := @72 @69 -@74 := @73 @52 -@75 := 0 -@76 := @72 @75 -@77 := @76 @6 -@78 := @57 @68 -@79 := @58 @68 -@81 := @79 @77 @78 -@83 := @79 @74 @81 -@84 := Bool.false -@85 := LexLeanTarget.TargetSyntax.Function -@86 := LexLeanTarget.TargetSyntax.Program.functions -@87 := @86 @0 -@88 := LexLeanTarget.TargetSyntax.Ty -@89 := @57 @65 -@90 := @57 @88 -@91 := LexLeanTarget.TargetSyntax.Ty.unit -@92 := LexLeanTarget.TargetSyntax.Value.unit -@95 := LexLeanTarget.TargetSyntax.Expr.value @91 @92 -@100 := LexLeanTarget.TargetSyntax.Function.mk @89 @90 @91 @95 -@105 := List.getD.{0} @85 @87 @75 @100 -@109 := fun (__e_n : @65) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.RustCore.root @19 @75 -@110 := LexLeanPreservation.Rust.WTL -@118 := {p : @10} -> {c : @11} -> {A : @12} -> @110 @4 @17 @19 @59 @90 -@120 := LexLeanPreservation.Rust.wtl_nil @0 -@121 := @110 @0 -@127 := {c : @11} -> {A : @12} -> @121 @17 @19 @59 @90 -@128 := @120 @1 -@129 := @121 @1 -@133 := {A : @12} -> @129 @19 @59 @90 -@134 := @128 @2 -@135 := @129 @2 -@136 := @135 @59 -@137 := @136 @90 -@138 := List.{0} -@139 := @138 @56 -@140 := @138 @88 -@141 := #6 -@142 := @13 @141 -@143 := #5 -@144 := @142 @143 -@145 := #4 -@148 := @144 @145 @14 @4 -@149 := #7 -@154 := @110 @149 @141 @143 @4 @17 -@155 := #8 -@158 := @110 @155 @149 @141 -@160 := @60 @143 @14 -@161 := @158 @160 -@162 := @58 @88 -@164 := @162 @145 @4 -@174 := {p : @10} -> - {c : @11} -> - {A : @12} -> - {v : @56} -> {t : @88} -> {vs : @139} -> {ts : @140} -> (h : @148) -> (hs : @154) -> @161 @164 -@176 := LexLeanPreservation.Rust.wtl_cons @0 -@196 := {c : @11} -> - {A : @12} -> - {v : @56} -> - {t : @88} -> - {vs : @139} -> - {ts : @140} -> - (h : @29 @143 @145 @14 @4) -> (hs : @121 @141 @143 @4 @17) -> @121 @149 @141 @160 @164 -@197 := @176 @1 -@213 := {A : @12} -> - {v : @56} -> - {t : @88} -> - {vs : @139} -> - {ts : @140} -> (h : @38 @145 @14 @4) -> (hs : @129 @143 @4 @17) -> @129 @141 @160 @164 -@214 := @197 @2 -@216 := @45 @14 @4 -@218 := @135 @4 @17 -@226 := {v : @56} -> - {t : @88} -> {vs : @139} -> {ts : @140} -> (h : @216) -> (hs : @218) -> @135 @160 @164 -@227 := @214 @52 -@228 := @5 @145 -@229 := @45 @228 -@230 := @229 @4 -@231 := @5 @141 -@232 := @60 @231 -@234 := @135 (@232 @14) -@240 := {t : @88} -> {vs : @139} -> {ts : @140} -> (h : @230) -> (hs : @218) -> @234 @164 -@241 := @227 @9 -@242 := @5 @14 -@244 := @45 @242 @9 -@245 := @5 @143 -@246 := @60 @245 -@248 := @135 (@246 @14) -@249 := @162 @9 -@250 := @249 @4 -@255 := {vs : @139} -> {ts : @140} -> (h : @244) -> (hs : @218) -> @248 @250 -@256 := @241 @59 -@257 := @136 @17 -@258 := @60 @228 -@259 := @258 @59 -@264 := {ts : @140} -> (h : @51) -> (hs : @257) -> @135 @259 @250 -@265 := @256 @90 -@266 := @60 @242 -@267 := @266 @59 -@268 := @135 @267 -@269 := @249 @90 -@272 := (h : @55) -> (hs : @137) -> @268 @269 -@273 := @265 @53 -@274 := @63 @59 -@276 := @135 @274 @269 -@277 := (hs : @137) -> @276 -@278 := @273 @134 -@280 := @135 @62 @269 -@281 := @214 @6 -@283 := @45 @245 @4 -@284 := @5 @149 -@285 := @60 @284 -@293 := {t : @88} -> {vs : @139} -> {ts : @140} -> (h : @283) -> (hs : @218) -> @135 (@285 @14) @164 -@294 := @281 @9 -@300 := {vs : @139} -> {ts : @140} -> (h : @229 @9) -> (hs : @218) -> @234 @250 -@301 := @294 @62 -@302 := @268 @17 -@303 := @246 @259 -@304 := @135 @303 -@308 := {ts : @140} -> (h : @244) -> (hs : @302) -> @304 @250 -@309 := @301 @269 -@310 := @258 @267 -@311 := @135 @310 -@312 := @249 @269 -@315 := (h : @51) -> (hs : @276) -> @311 @312 -@316 := @309 @49 -@317 := @266 @274 -@318 := @135 @317 -@320 := (hs : @280) -> @318 @312 -@321 := @316 @278 -@322 := @135 @64 -@323 := @322 @312 -@324 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.denote -@326 := @324 @4 @17 -@327 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.__fits_0 -@329 := @327 @4 @17 -@332 := Coverage.Prims.fixedSmall @4 @17 -@333 := Option.{0} -@334 := @333 @3 -@335 := @66 @334 -@336 := @335 @334 -@337 := @335 @336 -@338 := @335 @337 -@341 := LexLeanPreservation.encOption @3 @5 -@343 := LexLeanPreservation.encPair @334 -@346 := @343 @334 @341 @341 -@349 := @343 @336 @341 @346 -@352 := @343 @337 @341 @349 -@356 := @343 @338 @341 @352 @332 -@359 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.root @4 @17 -@360 := Bool -@361 := Ne.{1} -@362 := LexLeanPreservation.Obs -@363 := @361 @362 -@364 := LexLeanPreservation.Rel -@367 := @363 (@364 @17 @19) -@368 := LexLeanPreservation.Obs.stuck -@371 := (f : @360) -> (v : @56) -> @367 @368 -@373 := LexLeanPreservation.Rust.rel_ne_stuck @329 -@380 := (v : @56) -> @363 (@364 (@327 @14 @4) @19) @368 -@381 := @373 @356 -@385 := @363 (@364 @329 @356) @368 -@386 := @138 @68 -@387 := LexLeanPreservation.Rust.FunSem -@388 := #9 -@394 := (n : @65) -> @387 @388 @155 @149 @19 @141 -@395 := Eq.{1} -@396 := @333 @85 -@397 := @395 @396 -@404 := LexLeanRuntime.index (@138 @85) @85 (LexLeanRuntime.instIndexableList @85) -@408 := @397 (@404 (@86 @388) @141) -@409 := Option.some.{0} -@410 := @409 @85 -@411 := @410 @143 -@412 := @408 @411 -@413 := #10 -@417 := @110 @413 @388 @155 @143 -@418 := LexLeanTarget.TargetSyntax.Function.types -@419 := @418 @141 -@420 := @417 @419 -@421 := @333 @386 -@422 := @395 @421 -@423 := LexLeanTarget.TargetSemantics.bindAll -@424 := LexLeanTarget.TargetSyntax.Function.parameters -@429 := @422 (@423 (@424 @149) @141 @78) -@430 := @409 @386 -@431 := @430 @143 -@432 := @429 @431 -@433 := @333 @360 -@434 := @395 @433 -@435 := LexLeanPreservation.Rust.fnFallible -@436 := #11 -@439 := @434 (@435 @436 @388) -@440 := @409 @360 -@441 := @440 @143 -@442 := @439 @441 -@443 := LexLeanPreservation.RunConv -@444 := #13 -@448 := @443 @444 @413 @155 @143 -@450 := @363 @141 @368 -@451 := Exists.{1} -@452 := LexLeanPreservation.Rust.ROut -@453 := @451 @452 -@454 := And -@455 := LexLeanPreservation.Rust.RealizesFn -@459 := @454 (@455 @388 @155 @19) -@460 := LexLeanPreservation.Rust.RCI -@462 := @460 #15 -@463 := LexLeanPreservation.Rust.fnIdent -@464 := @463 @444 -@471 := (hne : @450) -> @453 (fun (ro : @452) => @459 (@462 @464 @436 @19)) -@486 := {p : @10} -> - {c : @11} -> - {A : @12} -> - {f : @65} -> - {fn : @85} -> - {args : @139} -> - {env : @386} -> - {F : @360} -> - {o : @362} -> - (hB : @394) -> - (hfn : @412) -> (hwt : @420) -> (hbind : @432) -> (hF : @442) -> (hA : @448) -> @471 -@488 := LexLeanPreservation.Rust.compose @0 -@489 := @387 @0 -@494 := (n : @65) -> @489 @155 @149 @19 @141 -@495 := @404 @87 -@498 := @397 (@495 @141) @411 -@502 := @121 @388 @155 @143 @419 -@503 := @443 @0 -@506 := @503 @413 @155 @143 -@520 := {c : @11} -> - {A : @12} -> - {f : @65} -> - {fn : @85} -> - {args : @139} -> - {env : @386} -> - {F : @360} -> - {o : @362} -> - (hB : @494) -> - (hfn : @498) -> (hwt : @502) -> (hbind : @432) -> (hF : @442) -> (hA : @506) -> @471 -@521 := @488 @1 -@522 := @489 @1 -@526 := (n : @65) -> @522 @149 @19 @141 -@529 := @129 @155 @143 @419 -@530 := @435 @1 -@533 := @434 (@530 @388) @441 -@534 := @460 @1 -@544 := (hbind : @432) -> - (hF : @533) -> (hA : @506) -> (hne : @450) -> @453 (fun (ro : @452) => @459 (@534 @464 @436 @19)) -@554 := {A : @12} -> - {f : @65} -> - {fn : @85} -> - {args : @139} -> - {env : @386} -> {F : @360} -> {o : @362} -> (hB : @526) -> (hfn : @498) -> (hwt : @529) -> @544 -@555 := @521 @2 -@557 := @522 @2 @19 -@559 := (n : @65) -> @557 @141 -@560 := @135 @143 -@561 := @560 @419 -@570 := {f : @65} -> - {fn : @85} -> - {args : @139} -> - {env : @386} -> {F : @360} -> {o : @362} -> (hB : @559) -> (hfn : @498) -> (hwt : @561) -> @544 -@571 := @555 @75 -@573 := (n : @65) -> @557 @75 -@574 := @495 @75 -@575 := @397 @574 -@576 := @575 @411 -@577 := @530 @75 -@578 := @434 @577 -@579 := @578 @441 -@580 := @503 @75 -@582 := @580 @155 @143 -@584 := @534 (@463 @75) -@592 := (hF : @579) -> (hA : @582) -> (hne : @450) -> @453 (fun (ro : @452) => @459 (@584 @436 @19)) -@601 := {fn : @85} -> - {args : @139} -> - {env : @386} -> - {F : @360} -> {o : @362} -> (hB : @573) -> (hfn : @576) -> (hwt : @561) -> (hbind : @432) -> @592 -@602 := @571 @105 -@604 := @575 (@410 @105) -@605 := @418 @105 -@606 := @560 @605 -@608 := @423 (@424 @105) -@620 := {args : @139} -> - {env : @386} -> - {F : @360} -> - {o : @362} -> - (hB : @573) -> (hfn : @604) -> (hwt : @606) -> (hbind : @422 (@608 @141 @78) @431) -> @592 -@621 := @602 @64 -@623 := @285 (@232 @59) -@625 := @135 @623 @605 -@627 := @60 (@5 @155) -@629 := @627 (@285 @59) -@633 := @422 (@608 @629 @78) @431 -@635 := @60 (@5 @413) -@637 := @60 (@5 @388) -@639 := @635 (@637 @59) -@641 := @580 @639 @143 -@643 := @60 (@5 @444) -@646 := @60 (@5 #12) -@663 := {env : @386} -> - {F : @360} -> - {o : @362} -> - (hB : @573) -> - (hfn : @604) -> - (hwt : @625) -> - (hbind : @633) -> - (hF : @579) -> - (hA : @641) -> (hne : @450) -> @453 (fun (ro : @452) => @459 (@584 (@643 (@646 @59)) @19)) -@664 := @621 @83 -@666 := @232 (@246 @59) -@668 := @135 @666 @605 -@679 := @422 (@608 @623 @78) (@430 (@79 (@73 @231) (@79 (@76 @284) @78))) -@681 := @637 (@627 @59) -@683 := @580 @681 @143 -@685 := @60 (@5 @436) -@701 := {F : @360} -> - {o : @362} -> - (hB : @573) -> - (hfn : @604) -> - (hwt : @668) -> - (hbind : @679) -> - (hF : @579) -> - (hA : @683) -> (hne : @450) -> @453 (fun (ro : @452) => @459 (@584 (@646 (@685 @59)) @19)) -@702 := @664 @84 -@703 := @304 @605 -@714 := @422 (@608 @666 @78) (@430 (@79 (@73 @245) (@79 (@76 @231) @78))) -@716 := @578 (@440 @84) -@718 := @580 @629 @143 -@719 := @455 @84 -@737 := {o : @362} -> - (hB : @573) -> - (hfn : @604) -> - (hwt : @703) -> - (hbind : @714) -> - (hF : @716) -> - (hA : @718) -> - (hne : @450) -> @453 (fun (ro : @452) => @454 (@719 @155 @19) (@584 (@685 (@635 @59)) @19)) -@738 := @702 @326 -@739 := @311 @605 -@750 := @422 (@608 @303 @78) (@430 (@79 (@73 @228) (@79 (@76 @245) @78))) -@751 := @580 @623 -@753 := @324 @149 @141 -@754 := @751 @753 -@756 := @324 @155 @149 -@775 := (hB : @573) -> - (hfn : @604) -> - (hwt : @739) -> - (hbind : @750) -> - (hF : @716) -> - (hA : @754) -> - (hne : @363 @756 @368) -> - @453 (fun (ro : @452) => @454 (@719 (@324 @413 @388) @19) (@584 @639 @19)) -@776 := @738 @109 -@777 := @318 @605 -@788 := @422 (@608 @310 @78) (@430 (@79 (@73 @242) (@79 (@76 @228) @78))) -@789 := @580 @666 -@791 := @324 @141 @143 -@810 := (hfn : @604) -> - (hwt : @777) -> - (hbind : @788) -> - (hF : @716) -> - (hA : @789 @791) -> - (hne : @363 @753 @368) -> - @453 (fun (ro : @452) => @454 (@719 (@324 @388 @155) @19) (@584 @681 @19)) -@811 := Eq.refl.{1} -@814 := @776 (@811 @396 @574) -@815 := @322 @605 -@826 := @422 (@608 @317 @78) (@430 (@79 (@73 @6) (@79 (@76 @242) @78))) -@827 := @580 @303 -@829 := @324 @143 @145 -@845 := (hwt : @815) -> - (hbind : @826) -> - (hF : @716) -> - (hA : @827 @829) -> - (hne : @363 @791 @368) -> @453 (fun (ro : @452) => @454 (@719 @756 @19) (@584 @629 @19)) -@846 := @814 @321 -@848 := @608 @64 @78 -@851 := @422 @848 (@430 @83) -@852 := @580 @310 -@854 := @324 @145 @14 -@869 := (hbind : @851) -> - (hF : @716) -> - (hA : @852 @854) -> - (hne : @363 @829 @368) -> @453 (fun (ro : @452) => @454 (@719 @753 @19) (@584 @623 @19)) -@872 := @846 (@811 @421 @848) -@873 := @580 @317 -@875 := @324 @14 @4 -@889 := (hF : @716) -> - (hA : @873 @875) -> - (hne : @363 @854 @368) -> @453 (fun (ro : @452) => @454 (@719 @791 @19) (@584 @666 @19)) -@892 := @872 (@811 @433 @577) -@906 := (hA : @580 @64 @326) -> - (hne : @363 @875 @368) -> @453 (fun (ro : @452) => @454 (@719 @829 @19) (@584 @303 @19)) -@907 := @892 @359 -@918 := (hne : @363 @326 @368) -> @453 (fun (ro : @452) => @454 (@719 @854 @19) (@584 @310 @19)) -@919 := @907 @381 -@925 := @454 (@719 @875 @19) (@584 @317 @19) -@927 := @453 (fun (ro : @452) => @925) -@929 := @453 (fun (__e_ro : @452) => @925) -@934 := LexLeanPreservation.Rust.RepresentableL (@61 (@60 @20 @59)) -@935 := (__e_hrep : @934) -> @929 -@936 := fun (__e_hrep : @934) => @919 -@937 := (b : @3) -> @935 -@938 := fun (b : @3) => @936 -@939 := (a : @3) -> @937 -@940 := fun (a : @3) => @938 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R21/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R21/Compose/RustStd.lex.tex deleted file mode 100644 index 9f91173d2..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R21/Compose/RustStd.lex.tex +++ /dev/null @@ -1,475 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.Compose.RustStd.root : @939 := @940 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.RustStd.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.RustStd.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.RustStd.flags -@3 := Int8 -@4 := #2 -@5 := LexLeanTarget.TargetSyntax.Value.i8 -@6 := @5 @4 -@9 := LexLeanTarget.TargetSyntax.Ty.fixed LexLeanTarget.TargetSyntax.IntKind.i8 -@10 := LexLeanTarget.TargetSyntax.Program -@11 := LexLeanPreservation.Rust.RCrate -@12 := LexLeanPreservation.Rust.Flags -@13 := LexLeanPreservation.Rust.WT -@14 := #3 -@16 := @13 @14 @4 -@17 := #1 -@18 := @16 @17 -@19 := #0 -@20 := @5 @19 -@26 := {p : @10} -> {c : @11} -> {A : @12} -> (x : @3) -> @18 @20 @9 -@28 := LexLeanPreservation.Rust.wt_i8 @0 -@29 := @13 @0 -@36 := {c : @11} -> {A : @12} -> (x : @3) -> @29 @4 @17 @20 @9 -@37 := @28 @1 -@38 := @29 @1 -@43 := {A : @12} -> (x : @3) -> @38 @17 @20 @9 -@44 := @37 @2 -@45 := @38 @2 -@48 := (x : @3) -> @45 @20 @9 -@49 := @44 @4 -@51 := @45 @6 @9 -@52 := @5 @17 -@53 := @44 @17 -@55 := @45 @52 @9 -@56 := LexLeanTarget.TargetSyntax.Value -@57 := List.nil.{0} -@58 := List.cons.{0} -@59 := @57 @56 -@60 := @58 @56 -@61 := @60 @52 -@62 := @61 @59 -@63 := @60 @6 -@64 := @63 @62 -@65 := Nat -@66 := Prod.{0, 0} -@68 := @66 @65 @56 -@69 := 1 -@72 := Prod.mk.{0, 0} @65 @56 -@73 := @72 @69 -@74 := @73 @52 -@75 := 0 -@76 := @72 @75 -@77 := @76 @6 -@78 := @57 @68 -@79 := @58 @68 -@81 := @79 @77 @78 -@83 := @79 @74 @81 -@84 := Bool.false -@85 := LexLeanTarget.TargetSyntax.Function -@86 := LexLeanTarget.TargetSyntax.Program.functions -@87 := @86 @0 -@88 := LexLeanTarget.TargetSyntax.Ty -@89 := @57 @65 -@90 := @57 @88 -@91 := LexLeanTarget.TargetSyntax.Ty.unit -@92 := LexLeanTarget.TargetSyntax.Value.unit -@95 := LexLeanTarget.TargetSyntax.Expr.value @91 @92 -@100 := LexLeanTarget.TargetSyntax.Function.mk @89 @90 @91 @95 -@105 := List.getD.{0} @85 @87 @75 @100 -@109 := fun (__e_n : @65) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.RustStd.root @19 @75 -@110 := LexLeanPreservation.Rust.WTL -@118 := {p : @10} -> {c : @11} -> {A : @12} -> @110 @4 @17 @19 @59 @90 -@120 := LexLeanPreservation.Rust.wtl_nil @0 -@121 := @110 @0 -@127 := {c : @11} -> {A : @12} -> @121 @17 @19 @59 @90 -@128 := @120 @1 -@129 := @121 @1 -@133 := {A : @12} -> @129 @19 @59 @90 -@134 := @128 @2 -@135 := @129 @2 -@136 := @135 @59 -@137 := @136 @90 -@138 := List.{0} -@139 := @138 @56 -@140 := @138 @88 -@141 := #6 -@142 := @13 @141 -@143 := #5 -@144 := @142 @143 -@145 := #4 -@148 := @144 @145 @14 @4 -@149 := #7 -@154 := @110 @149 @141 @143 @4 @17 -@155 := #8 -@158 := @110 @155 @149 @141 -@160 := @60 @143 @14 -@161 := @158 @160 -@162 := @58 @88 -@164 := @162 @145 @4 -@174 := {p : @10} -> - {c : @11} -> - {A : @12} -> - {v : @56} -> {t : @88} -> {vs : @139} -> {ts : @140} -> (h : @148) -> (hs : @154) -> @161 @164 -@176 := LexLeanPreservation.Rust.wtl_cons @0 -@196 := {c : @11} -> - {A : @12} -> - {v : @56} -> - {t : @88} -> - {vs : @139} -> - {ts : @140} -> - (h : @29 @143 @145 @14 @4) -> (hs : @121 @141 @143 @4 @17) -> @121 @149 @141 @160 @164 -@197 := @176 @1 -@213 := {A : @12} -> - {v : @56} -> - {t : @88} -> - {vs : @139} -> - {ts : @140} -> (h : @38 @145 @14 @4) -> (hs : @129 @143 @4 @17) -> @129 @141 @160 @164 -@214 := @197 @2 -@216 := @45 @14 @4 -@218 := @135 @4 @17 -@226 := {v : @56} -> - {t : @88} -> {vs : @139} -> {ts : @140} -> (h : @216) -> (hs : @218) -> @135 @160 @164 -@227 := @214 @52 -@228 := @5 @145 -@229 := @45 @228 -@230 := @229 @4 -@231 := @5 @141 -@232 := @60 @231 -@234 := @135 (@232 @14) -@240 := {t : @88} -> {vs : @139} -> {ts : @140} -> (h : @230) -> (hs : @218) -> @234 @164 -@241 := @227 @9 -@242 := @5 @14 -@244 := @45 @242 @9 -@245 := @5 @143 -@246 := @60 @245 -@248 := @135 (@246 @14) -@249 := @162 @9 -@250 := @249 @4 -@255 := {vs : @139} -> {ts : @140} -> (h : @244) -> (hs : @218) -> @248 @250 -@256 := @241 @59 -@257 := @136 @17 -@258 := @60 @228 -@259 := @258 @59 -@264 := {ts : @140} -> (h : @51) -> (hs : @257) -> @135 @259 @250 -@265 := @256 @90 -@266 := @60 @242 -@267 := @266 @59 -@268 := @135 @267 -@269 := @249 @90 -@272 := (h : @55) -> (hs : @137) -> @268 @269 -@273 := @265 @53 -@274 := @63 @59 -@276 := @135 @274 @269 -@277 := (hs : @137) -> @276 -@278 := @273 @134 -@280 := @135 @62 @269 -@281 := @214 @6 -@283 := @45 @245 @4 -@284 := @5 @149 -@285 := @60 @284 -@293 := {t : @88} -> {vs : @139} -> {ts : @140} -> (h : @283) -> (hs : @218) -> @135 (@285 @14) @164 -@294 := @281 @9 -@300 := {vs : @139} -> {ts : @140} -> (h : @229 @9) -> (hs : @218) -> @234 @250 -@301 := @294 @62 -@302 := @268 @17 -@303 := @246 @259 -@304 := @135 @303 -@308 := {ts : @140} -> (h : @244) -> (hs : @302) -> @304 @250 -@309 := @301 @269 -@310 := @258 @267 -@311 := @135 @310 -@312 := @249 @269 -@315 := (h : @51) -> (hs : @276) -> @311 @312 -@316 := @309 @49 -@317 := @266 @274 -@318 := @135 @317 -@320 := (hs : @280) -> @318 @312 -@321 := @316 @278 -@322 := @135 @64 -@323 := @322 @312 -@324 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.denote -@326 := @324 @4 @17 -@327 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.__fits_0 -@329 := @327 @4 @17 -@332 := Coverage.Prims.fixedSmall @4 @17 -@333 := Option.{0} -@334 := @333 @3 -@335 := @66 @334 -@336 := @335 @334 -@337 := @335 @336 -@338 := @335 @337 -@341 := LexLeanPreservation.encOption @3 @5 -@343 := LexLeanPreservation.encPair @334 -@346 := @343 @334 @341 @341 -@349 := @343 @336 @341 @346 -@352 := @343 @337 @341 @349 -@356 := @343 @338 @341 @352 @332 -@359 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.root @4 @17 -@360 := Bool -@361 := Ne.{1} -@362 := LexLeanPreservation.Obs -@363 := @361 @362 -@364 := LexLeanPreservation.Rel -@367 := @363 (@364 @17 @19) -@368 := LexLeanPreservation.Obs.stuck -@371 := (f : @360) -> (v : @56) -> @367 @368 -@373 := LexLeanPreservation.Rust.rel_ne_stuck @329 -@380 := (v : @56) -> @363 (@364 (@327 @14 @4) @19) @368 -@381 := @373 @356 -@385 := @363 (@364 @329 @356) @368 -@386 := @138 @68 -@387 := LexLeanPreservation.Rust.FunSem -@388 := #9 -@394 := (n : @65) -> @387 @388 @155 @149 @19 @141 -@395 := Eq.{1} -@396 := @333 @85 -@397 := @395 @396 -@404 := LexLeanRuntime.index (@138 @85) @85 (LexLeanRuntime.instIndexableList @85) -@408 := @397 (@404 (@86 @388) @141) -@409 := Option.some.{0} -@410 := @409 @85 -@411 := @410 @143 -@412 := @408 @411 -@413 := #10 -@417 := @110 @413 @388 @155 @143 -@418 := LexLeanTarget.TargetSyntax.Function.types -@419 := @418 @141 -@420 := @417 @419 -@421 := @333 @386 -@422 := @395 @421 -@423 := LexLeanTarget.TargetSemantics.bindAll -@424 := LexLeanTarget.TargetSyntax.Function.parameters -@429 := @422 (@423 (@424 @149) @141 @78) -@430 := @409 @386 -@431 := @430 @143 -@432 := @429 @431 -@433 := @333 @360 -@434 := @395 @433 -@435 := LexLeanPreservation.Rust.fnFallible -@436 := #11 -@439 := @434 (@435 @436 @388) -@440 := @409 @360 -@441 := @440 @143 -@442 := @439 @441 -@443 := LexLeanPreservation.RunConv -@444 := #13 -@448 := @443 @444 @413 @155 @143 -@450 := @363 @141 @368 -@451 := Exists.{1} -@452 := LexLeanPreservation.Rust.ROut -@453 := @451 @452 -@454 := And -@455 := LexLeanPreservation.Rust.RealizesFn -@459 := @454 (@455 @388 @155 @19) -@460 := LexLeanPreservation.Rust.RCI -@462 := @460 #15 -@463 := LexLeanPreservation.Rust.fnIdent -@464 := @463 @444 -@471 := (hne : @450) -> @453 (fun (ro : @452) => @459 (@462 @464 @436 @19)) -@486 := {p : @10} -> - {c : @11} -> - {A : @12} -> - {f : @65} -> - {fn : @85} -> - {args : @139} -> - {env : @386} -> - {F : @360} -> - {o : @362} -> - (hB : @394) -> - (hfn : @412) -> (hwt : @420) -> (hbind : @432) -> (hF : @442) -> (hA : @448) -> @471 -@488 := LexLeanPreservation.Rust.compose @0 -@489 := @387 @0 -@494 := (n : @65) -> @489 @155 @149 @19 @141 -@495 := @404 @87 -@498 := @397 (@495 @141) @411 -@502 := @121 @388 @155 @143 @419 -@503 := @443 @0 -@506 := @503 @413 @155 @143 -@520 := {c : @11} -> - {A : @12} -> - {f : @65} -> - {fn : @85} -> - {args : @139} -> - {env : @386} -> - {F : @360} -> - {o : @362} -> - (hB : @494) -> - (hfn : @498) -> (hwt : @502) -> (hbind : @432) -> (hF : @442) -> (hA : @506) -> @471 -@521 := @488 @1 -@522 := @489 @1 -@526 := (n : @65) -> @522 @149 @19 @141 -@529 := @129 @155 @143 @419 -@530 := @435 @1 -@533 := @434 (@530 @388) @441 -@534 := @460 @1 -@544 := (hbind : @432) -> - (hF : @533) -> (hA : @506) -> (hne : @450) -> @453 (fun (ro : @452) => @459 (@534 @464 @436 @19)) -@554 := {A : @12} -> - {f : @65} -> - {fn : @85} -> - {args : @139} -> - {env : @386} -> {F : @360} -> {o : @362} -> (hB : @526) -> (hfn : @498) -> (hwt : @529) -> @544 -@555 := @521 @2 -@557 := @522 @2 @19 -@559 := (n : @65) -> @557 @141 -@560 := @135 @143 -@561 := @560 @419 -@570 := {f : @65} -> - {fn : @85} -> - {args : @139} -> - {env : @386} -> {F : @360} -> {o : @362} -> (hB : @559) -> (hfn : @498) -> (hwt : @561) -> @544 -@571 := @555 @75 -@573 := (n : @65) -> @557 @75 -@574 := @495 @75 -@575 := @397 @574 -@576 := @575 @411 -@577 := @530 @75 -@578 := @434 @577 -@579 := @578 @441 -@580 := @503 @75 -@582 := @580 @155 @143 -@584 := @534 (@463 @75) -@592 := (hF : @579) -> (hA : @582) -> (hne : @450) -> @453 (fun (ro : @452) => @459 (@584 @436 @19)) -@601 := {fn : @85} -> - {args : @139} -> - {env : @386} -> - {F : @360} -> {o : @362} -> (hB : @573) -> (hfn : @576) -> (hwt : @561) -> (hbind : @432) -> @592 -@602 := @571 @105 -@604 := @575 (@410 @105) -@605 := @418 @105 -@606 := @560 @605 -@608 := @423 (@424 @105) -@620 := {args : @139} -> - {env : @386} -> - {F : @360} -> - {o : @362} -> - (hB : @573) -> (hfn : @604) -> (hwt : @606) -> (hbind : @422 (@608 @141 @78) @431) -> @592 -@621 := @602 @64 -@623 := @285 (@232 @59) -@625 := @135 @623 @605 -@627 := @60 (@5 @155) -@629 := @627 (@285 @59) -@633 := @422 (@608 @629 @78) @431 -@635 := @60 (@5 @413) -@637 := @60 (@5 @388) -@639 := @635 (@637 @59) -@641 := @580 @639 @143 -@643 := @60 (@5 @444) -@646 := @60 (@5 #12) -@663 := {env : @386} -> - {F : @360} -> - {o : @362} -> - (hB : @573) -> - (hfn : @604) -> - (hwt : @625) -> - (hbind : @633) -> - (hF : @579) -> - (hA : @641) -> (hne : @450) -> @453 (fun (ro : @452) => @459 (@584 (@643 (@646 @59)) @19)) -@664 := @621 @83 -@666 := @232 (@246 @59) -@668 := @135 @666 @605 -@679 := @422 (@608 @623 @78) (@430 (@79 (@73 @231) (@79 (@76 @284) @78))) -@681 := @637 (@627 @59) -@683 := @580 @681 @143 -@685 := @60 (@5 @436) -@701 := {F : @360} -> - {o : @362} -> - (hB : @573) -> - (hfn : @604) -> - (hwt : @668) -> - (hbind : @679) -> - (hF : @579) -> - (hA : @683) -> (hne : @450) -> @453 (fun (ro : @452) => @459 (@584 (@646 (@685 @59)) @19)) -@702 := @664 @84 -@703 := @304 @605 -@714 := @422 (@608 @666 @78) (@430 (@79 (@73 @245) (@79 (@76 @231) @78))) -@716 := @578 (@440 @84) -@718 := @580 @629 @143 -@719 := @455 @84 -@737 := {o : @362} -> - (hB : @573) -> - (hfn : @604) -> - (hwt : @703) -> - (hbind : @714) -> - (hF : @716) -> - (hA : @718) -> - (hne : @450) -> @453 (fun (ro : @452) => @454 (@719 @155 @19) (@584 (@685 (@635 @59)) @19)) -@738 := @702 @326 -@739 := @311 @605 -@750 := @422 (@608 @303 @78) (@430 (@79 (@73 @228) (@79 (@76 @245) @78))) -@751 := @580 @623 -@753 := @324 @149 @141 -@754 := @751 @753 -@756 := @324 @155 @149 -@775 := (hB : @573) -> - (hfn : @604) -> - (hwt : @739) -> - (hbind : @750) -> - (hF : @716) -> - (hA : @754) -> - (hne : @363 @756 @368) -> - @453 (fun (ro : @452) => @454 (@719 (@324 @413 @388) @19) (@584 @639 @19)) -@776 := @738 @109 -@777 := @318 @605 -@788 := @422 (@608 @310 @78) (@430 (@79 (@73 @242) (@79 (@76 @228) @78))) -@789 := @580 @666 -@791 := @324 @141 @143 -@810 := (hfn : @604) -> - (hwt : @777) -> - (hbind : @788) -> - (hF : @716) -> - (hA : @789 @791) -> - (hne : @363 @753 @368) -> - @453 (fun (ro : @452) => @454 (@719 (@324 @388 @155) @19) (@584 @681 @19)) -@811 := Eq.refl.{1} -@814 := @776 (@811 @396 @574) -@815 := @322 @605 -@826 := @422 (@608 @317 @78) (@430 (@79 (@73 @6) (@79 (@76 @242) @78))) -@827 := @580 @303 -@829 := @324 @143 @145 -@845 := (hwt : @815) -> - (hbind : @826) -> - (hF : @716) -> - (hA : @827 @829) -> - (hne : @363 @791 @368) -> @453 (fun (ro : @452) => @454 (@719 @756 @19) (@584 @629 @19)) -@846 := @814 @321 -@848 := @608 @64 @78 -@851 := @422 @848 (@430 @83) -@852 := @580 @310 -@854 := @324 @145 @14 -@869 := (hbind : @851) -> - (hF : @716) -> - (hA : @852 @854) -> - (hne : @363 @829 @368) -> @453 (fun (ro : @452) => @454 (@719 @753 @19) (@584 @623 @19)) -@872 := @846 (@811 @421 @848) -@873 := @580 @317 -@875 := @324 @14 @4 -@889 := (hF : @716) -> - (hA : @873 @875) -> - (hne : @363 @854 @368) -> @453 (fun (ro : @452) => @454 (@719 @791 @19) (@584 @666 @19)) -@892 := @872 (@811 @433 @577) -@906 := (hA : @580 @64 @326) -> - (hne : @363 @875 @368) -> @453 (fun (ro : @452) => @454 (@719 @829 @19) (@584 @303 @19)) -@907 := @892 @359 -@918 := (hne : @363 @326 @368) -> @453 (fun (ro : @452) => @454 (@719 @854 @19) (@584 @310 @19)) -@919 := @907 @381 -@925 := @454 (@719 @875 @19) (@584 @317 @19) -@927 := @453 (fun (ro : @452) => @925) -@929 := @453 (fun (__e_ro : @452) => @925) -@934 := LexLeanPreservation.Rust.RepresentableL (@61 (@60 @20 @59)) -@935 := (__e_hrep : @934) -> @929 -@936 := fun (__e_hrep : @934) => @919 -@937 := (b : @3) -> @935 -@938 := fun (b : @3) => @936 -@939 := (a : @3) -> @937 -@940 := fun (a : @3) => @938 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R21/RustCore.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R21/RustCore.lean deleted file mode 100644 index 8903a4973..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R21/RustCore.lean +++ /dev/null @@ -1,33 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.RustCore -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1], types := [(.fixed .i8), (.fixed .i8)], result := (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.option (.fixed .i8)))))), - body := (.build .pair (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.option (.fixed .i8)))))) [(.prim .checkedAdd [(.var 0), (.var 1)]), (.build .pair (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.option (.fixed .i8))))) [(.prim .checkedSub [(.var 0), (.var 1)]), (.build .pair (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.option (.fixed .i8)))) [(.prim .checkedMul [(.var 0), (.var 1)]), (.build .pair (.pair (.option (.fixed .i8)) (.option (.fixed .i8))) [(.prim .checkedQuot [(.var 0), (.var 1)]), (.prim .checkedNeg [(.var 0)])])])])]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .core, items := [ - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.fixed .i8) }, { pattern := (.bind (.generated .binding 1)), type := (.fixed .i8) }] (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.option (.fixed .i8)))))) (.mk [] (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedAdd .i8)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedSub .i8)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedMul .i8)) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedQuot .i8)) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false))) (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 0)))] (.call (.runtime (.checkedNeg .i8)) [(.move (.generated .operand 9))] false)))))))))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [], (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedAdd .i8)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedSub .i8)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedMul .i8)) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedQuot .i8)) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false))) (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 0)))] (.call (.runtime (.checkedNeg .i8)) [(.move (.generated .operand 9))] false))))))), [(1, (.fixed .i8), (some 1)), (0, (.fixed .i8), (some 0))], rfl, rfl, - (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.checkedAdd .i8)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false)) (Corr.prim (ts := [(.fixed .i8), (.fixed .i8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.checkedSub .i8)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false)) (Corr.prim (ts := [(.fixed .i8), (.fixed .i8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.checkedMul .i8)) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false)) (Corr.prim (ts := [(.fixed .i8), (.fixed .i8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.checkedQuot .i8)) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false)) (Corr.prim (ts := [(.fixed .i8), (.fixed .i8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 0)))]) (tail := (.call (.runtime (.checkedNeg .i8)) [(.move (.generated .operand 9))] false)) (Corr.prim (ts := [(.fixed .i8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | _ + 1 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.RustCore diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R21/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R21/RustStd.lean deleted file mode 100644 index 36609186f..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R21/RustStd.lean +++ /dev/null @@ -1,33 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1], types := [(.fixed .i8), (.fixed .i8)], result := (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.option (.fixed .i8)))))), - body := (.build .pair (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.option (.fixed .i8)))))) [(.prim .checkedAdd [(.var 0), (.var 1)]), (.build .pair (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.option (.fixed .i8))))) [(.prim .checkedSub [(.var 0), (.var 1)]), (.build .pair (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.option (.fixed .i8)))) [(.prim .checkedMul [(.var 0), (.var 1)]), (.build .pair (.pair (.option (.fixed .i8)) (.option (.fixed .i8))) [(.prim .checkedQuot [(.var 0), (.var 1)]), (.prim .checkedNeg [(.var 0)])])])])]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.fixed .i8) }, { pattern := (.bind (.generated .binding 1)), type := (.fixed .i8) }] (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.pair (.option (.fixed .i8)) (.option (.fixed .i8)))))) (.mk [] (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedAdd .i8)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedSub .i8)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedMul .i8)) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedQuot .i8)) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false))) (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 0)))] (.call (.runtime (.checkedNeg .i8)) [(.move (.generated .operand 9))] false)))))))))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [], (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedAdd .i8)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedSub .i8)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedMul .i8)) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedQuot .i8)) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false))) (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 0)))] (.call (.runtime (.checkedNeg .i8)) [(.move (.generated .operand 9))] false))))))), [(1, (.fixed .i8), (some 1)), (0, (.fixed .i8), (some 0))], rfl, rfl, - (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.checkedAdd .i8)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false)) (Corr.prim (ts := [(.fixed .i8), (.fixed .i8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.checkedSub .i8)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false)) (Corr.prim (ts := [(.fixed .i8), (.fixed .i8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.checkedMul .i8)) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false)) (Corr.prim (ts := [(.fixed .i8), (.fixed .i8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.checkedQuot .i8)) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false)) (Corr.prim (ts := [(.fixed .i8), (.fixed .i8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 0)))]) (tail := (.call (.runtime (.checkedNeg .i8)) [(.move (.generated .operand 9))] false)) (Corr.prim (ts := [(.fixed .i8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | _ + 1 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R22/Compose/RustCore.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R22/Compose/RustCore.lex.tex deleted file mode 100644 index 30ad892e6..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R22/Compose/RustCore.lex.tex +++ /dev/null @@ -1,501 +0,0 @@ -\begin{lexlean}{RustCore} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.Compose.RustCore} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.RustCore, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.Compose.RustCore.root : @1000 := @1001 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.Compose.RustCore.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.RustCore.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.RustCore.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.RustCore.flags -@3 := Int16 -@4 := #2 -@5 := LexLeanTarget.TargetSyntax.Value.i16 -@6 := @5 @4 -@7 := LexLeanTarget.TargetSyntax.Ty.fixed -@9 := @7 LexLeanTarget.TargetSyntax.IntKind.i16 -@10 := LexLeanTarget.TargetSyntax.Program -@11 := LexLeanPreservation.Rust.RCrate -@12 := LexLeanPreservation.Rust.Flags -@13 := LexLeanPreservation.Rust.WT -@14 := #3 -@16 := @13 @14 @4 -@17 := #1 -@18 := @16 @17 -@19 := #0 -@20 := @5 @19 -@26 := {p : @10} -> {c : @11} -> {A : @12} -> (x : @3) -> @18 @20 @9 -@28 := LexLeanPreservation.Rust.wt_i16 @0 -@29 := @13 @0 -@31 := @29 @4 @17 -@36 := {c : @11} -> {A : @12} -> (x : @3) -> @31 @20 @9 -@37 := @28 @1 -@38 := @29 @1 -@39 := @38 @17 -@43 := {A : @12} -> (x : @3) -> @39 @20 @9 -@44 := @37 @2 -@45 := @38 @2 -@48 := (x : @3) -> @45 @20 @9 -@49 := @44 @4 -@51 := @45 @6 @9 -@52 := Int32 -@53 := LexLeanTarget.TargetSyntax.Value.i32 -@54 := @53 @17 -@56 := @7 LexLeanTarget.TargetSyntax.IntKind.i32 -@57 := @53 @19 -@63 := {p : @10} -> {c : @11} -> {A : @12} -> (x : @52) -> @18 @57 @56 -@65 := LexLeanPreservation.Rust.wt_i32 @0 -@70 := {c : @11} -> {A : @12} -> (x : @52) -> @31 @57 @56 -@71 := @65 @1 -@75 := {A : @12} -> (x : @52) -> @39 @57 @56 -@76 := @71 @2 -@79 := (x : @52) -> @45 @57 @56 -@80 := @76 @17 -@82 := @45 @54 @56 -@83 := LexLeanTarget.TargetSyntax.Value -@84 := List.nil.{0} -@85 := List.cons.{0} -@86 := @84 @83 -@87 := @85 @83 -@89 := @87 @54 @86 -@91 := @87 @6 @89 -@92 := Nat -@93 := Prod.{0, 0} -@95 := @93 @92 @83 -@96 := 1 -@99 := Prod.mk.{0, 0} @92 @83 -@100 := @99 @96 -@101 := @100 @54 -@102 := 0 -@103 := @99 @102 -@104 := @103 @6 -@105 := @84 @95 -@106 := @85 @95 -@108 := @106 @104 @105 -@110 := @106 @101 @108 -@111 := Bool.false -@112 := LexLeanTarget.TargetSyntax.Function -@113 := LexLeanTarget.TargetSyntax.Program.functions -@114 := @113 @0 -@115 := LexLeanTarget.TargetSyntax.Ty -@116 := @84 @92 -@117 := @84 @115 -@118 := LexLeanTarget.TargetSyntax.Ty.unit -@119 := LexLeanTarget.TargetSyntax.Value.unit -@122 := LexLeanTarget.TargetSyntax.Expr.value @118 @119 -@127 := LexLeanTarget.TargetSyntax.Function.mk @116 @117 @118 @122 -@132 := List.getD.{0} @112 @114 @102 @127 -@136 := fun (__e_n : @92) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.RustCore.root @19 @102 -@137 := LexLeanPreservation.Rust.WTL -@145 := {p : @10} -> {c : @11} -> {A : @12} -> @137 @4 @17 @19 @86 @117 -@147 := LexLeanPreservation.Rust.wtl_nil @0 -@148 := @137 @0 -@154 := {c : @11} -> {A : @12} -> @148 @17 @19 @86 @117 -@155 := @147 @1 -@156 := @148 @1 -@160 := {A : @12} -> @156 @19 @86 @117 -@161 := @155 @2 -@162 := @156 @2 -@163 := @162 @86 -@164 := @163 @117 -@165 := List.{0} -@166 := @165 @83 -@167 := @165 @115 -@168 := #6 -@169 := @13 @168 -@170 := #5 -@171 := @169 @170 -@172 := #4 -@175 := @171 @172 @14 @4 -@176 := #7 -@181 := @137 @176 @168 @170 @4 @17 -@182 := #8 -@185 := @137 @182 @176 @168 -@187 := @87 @170 @14 -@188 := @185 @187 -@189 := @85 @115 -@191 := @189 @172 @4 -@201 := {p : @10} -> - {c : @11} -> - {A : @12} -> - {v : @83} -> {t : @115} -> {vs : @166} -> {ts : @167} -> (h : @175) -> (hs : @181) -> @188 @191 -@203 := LexLeanPreservation.Rust.wtl_cons @0 -@223 := {c : @11} -> - {A : @12} -> - {v : @83} -> - {t : @115} -> - {vs : @166} -> - {ts : @167} -> - (h : @29 @170 @172 @14 @4) -> (hs : @148 @168 @170 @4 @17) -> @148 @176 @168 @187 @191 -@224 := @203 @1 -@240 := {A : @12} -> - {v : @83} -> - {t : @115} -> - {vs : @166} -> - {ts : @167} -> (h : @38 @172 @14 @4) -> (hs : @156 @170 @4 @17) -> @156 @168 @187 @191 -@241 := @224 @2 -@243 := @45 @14 @4 -@245 := @162 @4 @17 -@253 := {v : @83} -> - {t : @115} -> {vs : @166} -> {ts : @167} -> (h : @243) -> (hs : @245) -> @162 @187 @191 -@254 := @241 @54 -@255 := @53 @172 -@257 := @45 @255 @4 -@258 := @53 @168 -@259 := @87 @258 -@267 := {t : @115} -> - {vs : @166} -> {ts : @167} -> (h : @257) -> (hs : @245) -> @162 (@259 @14) @191 -@268 := @254 @56 -@269 := @53 @14 -@271 := @45 @269 @56 -@272 := @53 @170 -@273 := @87 @272 -@275 := @162 (@273 @14) -@276 := @189 @56 -@277 := @276 @4 -@282 := {vs : @166} -> {ts : @167} -> (h : @271) -> (hs : @245) -> @275 @277 -@283 := @268 @86 -@284 := @53 @4 -@286 := @45 @284 @56 -@287 := @163 @17 -@289 := @87 @255 @86 -@294 := {ts : @167} -> (h : @286) -> (hs : @287) -> @162 @289 @277 -@295 := @283 @117 -@297 := @87 @269 @86 -@298 := @162 @297 -@299 := @276 @117 -@302 := (h : @82) -> (hs : @164) -> @298 @299 -@303 := @295 @80 -@305 := @87 @284 @86 -@307 := @162 @305 @299 -@308 := (hs : @164) -> @307 -@309 := @303 @161 -@311 := @162 @89 @299 -@312 := @241 @6 -@313 := @5 @170 -@315 := @45 @313 @4 -@316 := @5 @176 -@317 := @87 @316 -@325 := {t : @115} -> - {vs : @166} -> {ts : @167} -> (h : @315) -> (hs : @245) -> @162 (@317 @14) @191 -@326 := @312 @9 -@327 := @5 @172 -@329 := @45 @327 @9 -@330 := @5 @168 -@331 := @87 @330 -@333 := @162 (@331 @14) -@334 := @189 @9 -@335 := @334 @4 -@340 := {vs : @166} -> {ts : @167} -> (h : @329) -> (hs : @245) -> @333 @335 -@341 := @326 @89 -@342 := @5 @14 -@344 := @45 @342 @9 -@345 := @298 @17 -@347 := @87 @313 @289 -@348 := @162 @347 -@352 := {ts : @167} -> (h : @344) -> (hs : @345) -> @348 @335 -@353 := @341 @299 -@355 := @87 @327 @297 -@356 := @162 @355 -@357 := @334 @299 -@360 := (h : @51) -> (hs : @307) -> @356 @357 -@361 := @353 @49 -@363 := @87 @342 @305 -@364 := @162 @363 -@366 := (hs : @311) -> @364 @357 -@367 := @361 @309 -@368 := @162 @91 -@369 := @368 @357 -@370 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.denote -@372 := @370 @4 @17 -@373 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.__fits_0 -@375 := @373 @4 @17 -@378 := Coverage.Prims.fixedMiddle @4 @17 -@379 := Option.{0} -@380 := @379 @3 -@381 := @379 @52 -@382 := Bool -@383 := @93 @381 -@384 := @383 @382 -@385 := @383 @384 -@386 := LexLeanPreservation.encOption -@388 := @386 @3 @5 -@390 := @386 @52 @53 -@391 := LexLeanTarget.TargetSyntax.Value.bool -@392 := LexLeanPreservation.encPair -@393 := @392 @381 -@396 := @393 @382 @390 @391 -@399 := @393 @384 @390 @396 -@404 := @392 @380 @385 @388 @399 @378 -@407 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.root @4 @17 -@408 := Ne.{1} -@409 := LexLeanPreservation.Obs -@410 := @408 @409 -@411 := LexLeanPreservation.Rel -@414 := @410 (@411 @17 @19) -@415 := LexLeanPreservation.Obs.stuck -@418 := (f : @382) -> (v : @83) -> @414 @415 -@420 := LexLeanPreservation.Rust.rel_ne_stuck @375 -@427 := (v : @83) -> @410 (@411 (@373 @14 @4) @19) @415 -@428 := @420 @404 -@432 := @410 (@411 @375 @404) @415 -@433 := @165 @95 -@434 := LexLeanPreservation.Rust.FunSem -@435 := #9 -@441 := (n : @92) -> @434 @435 @182 @176 @19 @168 -@442 := Eq.{1} -@443 := @379 @112 -@444 := @442 @443 -@451 := LexLeanRuntime.index (@165 @112) @112 (LexLeanRuntime.instIndexableList @112) -@455 := @444 (@451 (@113 @435) @168) -@456 := Option.some.{0} -@457 := @456 @112 -@458 := @457 @170 -@459 := @455 @458 -@460 := #10 -@464 := @137 @460 @435 @182 @170 -@465 := LexLeanTarget.TargetSyntax.Function.types -@466 := @465 @168 -@467 := @464 @466 -@468 := @379 @433 -@469 := @442 @468 -@470 := LexLeanTarget.TargetSemantics.bindAll -@471 := LexLeanTarget.TargetSyntax.Function.parameters -@476 := @469 (@470 (@471 @176) @168 @105) -@477 := @456 @433 -@478 := @477 @170 -@479 := @476 @478 -@480 := @379 @382 -@481 := @442 @480 -@482 := LexLeanPreservation.Rust.fnFallible -@483 := #11 -@486 := @481 (@482 @483 @435) -@487 := @456 @382 -@488 := @487 @170 -@489 := @486 @488 -@490 := LexLeanPreservation.RunConv -@491 := #13 -@495 := @490 @491 @460 @182 @170 -@497 := @410 @168 @415 -@498 := Exists.{1} -@499 := LexLeanPreservation.Rust.ROut -@500 := @498 @499 -@501 := And -@502 := LexLeanPreservation.Rust.RealizesFn -@506 := @501 (@502 @435 @182 @19) -@507 := LexLeanPreservation.Rust.RCI -@509 := @507 #15 -@510 := LexLeanPreservation.Rust.fnIdent -@511 := @510 @491 -@518 := (hne : @497) -> @500 (fun (ro : @499) => @506 (@509 @511 @483 @19)) -@533 := {p : @10} -> - {c : @11} -> - {A : @12} -> - {f : @92} -> - {fn : @112} -> - {args : @166} -> - {env : @433} -> - {F : @382} -> - {o : @409} -> - (hB : @441) -> - (hfn : @459) -> (hwt : @467) -> (hbind : @479) -> (hF : @489) -> (hA : @495) -> @518 -@535 := LexLeanPreservation.Rust.compose @0 -@536 := @434 @0 -@541 := (n : @92) -> @536 @182 @176 @19 @168 -@542 := @451 @114 -@545 := @444 (@542 @168) @458 -@549 := @148 @435 @182 @170 @466 -@550 := @490 @0 -@553 := @550 @460 @182 @170 -@567 := {c : @11} -> - {A : @12} -> - {f : @92} -> - {fn : @112} -> - {args : @166} -> - {env : @433} -> - {F : @382} -> - {o : @409} -> - (hB : @541) -> - (hfn : @545) -> (hwt : @549) -> (hbind : @479) -> (hF : @489) -> (hA : @553) -> @518 -@568 := @535 @1 -@569 := @536 @1 -@573 := (n : @92) -> @569 @176 @19 @168 -@576 := @156 @182 @170 @466 -@577 := @482 @1 -@580 := @481 (@577 @435) @488 -@581 := @507 @1 -@591 := (hbind : @479) -> - (hF : @580) -> (hA : @553) -> (hne : @497) -> @500 (fun (ro : @499) => @506 (@581 @511 @483 @19)) -@601 := {A : @12} -> - {f : @92} -> - {fn : @112} -> - {args : @166} -> - {env : @433} -> {F : @382} -> {o : @409} -> (hB : @573) -> (hfn : @545) -> (hwt : @576) -> @591 -@602 := @568 @2 -@604 := @569 @2 @19 -@606 := (n : @92) -> @604 @168 -@607 := @162 @170 -@608 := @607 @466 -@617 := {f : @92} -> - {fn : @112} -> - {args : @166} -> - {env : @433} -> {F : @382} -> {o : @409} -> (hB : @606) -> (hfn : @545) -> (hwt : @608) -> @591 -@618 := @602 @102 -@620 := (n : @92) -> @604 @102 -@621 := @542 @102 -@622 := @444 @621 -@623 := @622 @458 -@624 := @577 @102 -@625 := @481 @624 -@626 := @625 @488 -@627 := @550 @102 -@629 := @627 @182 @170 -@631 := @581 (@510 @102) -@639 := (hF : @626) -> (hA : @629) -> (hne : @497) -> @500 (fun (ro : @499) => @506 (@631 @483 @19)) -@648 := {fn : @112} -> - {args : @166} -> - {env : @433} -> - {F : @382} -> {o : @409} -> (hB : @620) -> (hfn : @623) -> (hwt : @608) -> (hbind : @479) -> @639 -@649 := @618 @132 -@651 := @622 (@457 @132) -@652 := @465 @132 -@653 := @607 @652 -@655 := @470 (@471 @132) -@667 := {args : @166} -> - {env : @433} -> - {F : @382} -> - {o : @409} -> - (hB : @620) -> (hfn : @651) -> (hwt : @653) -> (hbind : @469 (@655 @168 @105) @478) -> @639 -@668 := @649 @91 -@670 := @317 (@259 @86) -@672 := @162 @670 @652 -@678 := @87 (@5 @182) (@87 (@53 @176) @86) -@682 := @469 (@655 @678 @105) @478 -@688 := @87 (@5 @460) (@87 (@53 @435) @86) -@690 := @627 @688 @170 -@692 := @87 (@5 @491) -@693 := #12 -@712 := {env : @433} -> - {F : @382} -> - {o : @409} -> - (hB : @620) -> - (hfn : @651) -> - (hwt : @672) -> - (hbind : @682) -> - (hF : @626) -> - (hA : @690) -> - (hne : @497) -> @500 (fun (ro : @499) => @506 (@631 (@692 (@87 (@53 @693) @86)) @19)) -@713 := @668 @110 -@715 := @331 (@273 @86) -@717 := @162 @715 @652 -@728 := @469 (@655 @670 @105) (@477 (@106 (@100 @258) (@106 (@103 @316) @105))) -@734 := @87 (@5 @435) (@87 (@53 @182) @86) -@756 := {F : @382} -> - {o : @409} -> - (hB : @620) -> - (hfn : @651) -> - (hwt : @717) -> - (hbind : @728) -> - (hF : @626) -> - (hA : @627 @734 @170) -> - (hne : @497) -> @500 (fun (ro : @499) => @506 (@631 (@87 (@5 @693) (@87 (@53 @483) @86)) @19)) -@757 := @713 @111 -@758 := @348 @652 -@769 := @469 (@655 @715 @105) (@477 (@106 (@100 @272) (@106 (@103 @330) @105))) -@771 := @625 (@487 @111) -@773 := @627 @678 @170 -@774 := @502 @111 -@796 := {o : @409} -> - (hB : @620) -> - (hfn : @651) -> - (hwt : @758) -> - (hbind : @769) -> - (hF : @771) -> - (hA : @773) -> - (hne : @497) -> - @500 (fun (ro : @499) => @501 (@774 @182 @19) (@631 (@87 (@5 @483) (@87 (@53 @460) @86)) @19)) -@797 := @757 @372 -@798 := @356 @652 -@809 := @469 (@655 @347 @105) (@477 (@106 (@100 @255) (@106 (@103 @313) @105))) -@810 := @627 @670 -@812 := @370 @176 @168 -@813 := @810 @812 -@815 := @370 @182 @176 -@834 := (hB : @620) -> - (hfn : @651) -> - (hwt : @798) -> - (hbind : @809) -> - (hF : @771) -> - (hA : @813) -> - (hne : @410 @815 @415) -> - @500 (fun (ro : @499) => @501 (@774 (@370 @460 @435) @19) (@631 @688 @19)) -@835 := @797 @136 -@836 := @364 @652 -@847 := @469 (@655 @355 @105) (@477 (@106 (@100 @269) (@106 (@103 @327) @105))) -@848 := @627 @715 -@850 := @370 @168 @170 -@869 := (hfn : @651) -> - (hwt : @836) -> - (hbind : @847) -> - (hF : @771) -> - (hA : @848 @850) -> - (hne : @410 @812 @415) -> - @500 (fun (ro : @499) => @501 (@774 (@370 @435 @182) @19) (@631 @734 @19)) -@870 := Eq.refl.{1} -@873 := @835 (@870 @443 @621) -@874 := @368 @652 -@885 := @469 (@655 @363 @105) (@477 (@106 (@100 @284) (@106 (@103 @342) @105))) -@886 := @627 @347 -@888 := @370 @170 @172 -@904 := (hwt : @874) -> - (hbind : @885) -> - (hF : @771) -> - (hA : @886 @888) -> - (hne : @410 @850 @415) -> @500 (fun (ro : @499) => @501 (@774 @815 @19) (@631 @678 @19)) -@905 := @873 @367 -@907 := @655 @91 @105 -@910 := @469 @907 (@477 @110) -@911 := @627 @355 -@913 := @370 @172 @14 -@928 := (hbind : @910) -> - (hF : @771) -> - (hA : @911 @913) -> - (hne : @410 @888 @415) -> @500 (fun (ro : @499) => @501 (@774 @812 @19) (@631 @670 @19)) -@931 := @905 (@870 @468 @907) -@932 := @627 @363 -@934 := @370 @14 @4 -@948 := (hF : @771) -> - (hA : @932 @934) -> - (hne : @410 @913 @415) -> @500 (fun (ro : @499) => @501 (@774 @850 @19) (@631 @715 @19)) -@951 := @931 (@870 @480 @624) -@965 := (hA : @627 @91 @372) -> - (hne : @410 @934 @415) -> @500 (fun (ro : @499) => @501 (@774 @888 @19) (@631 @347 @19)) -@966 := @951 @407 -@977 := (hne : @410 @372 @415) -> @500 (fun (ro : @499) => @501 (@774 @913 @19) (@631 @355 @19)) -@978 := @966 @428 -@984 := @501 (@774 @934 @19) (@631 @363 @19) -@986 := @500 (fun (ro : @499) => @984) -@988 := @500 (fun (__e_ro : @499) => @984) -@989 := LexLeanPreservation.Rust.RepresentableL -@990 := @5 @17 -@992 := @87 @57 @86 -@995 := @989 (@87 @990 @992) -@996 := (__e_hrep : @995) -> @988 -@997 := fun (__e_hrep : @995) => @978 -@998 := (b : @52) -> @996 -@999 := fun (b : @52) => @997 -@1000 := (a : @3) -> @998 -@1001 := fun (a : @3) => @999 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R22/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R22/Compose/RustStd.lex.tex deleted file mode 100644 index 27f070392..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R22/Compose/RustStd.lex.tex +++ /dev/null @@ -1,501 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.Compose.RustStd.root : @1000 := @1001 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.RustStd.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.RustStd.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.RustStd.flags -@3 := Int16 -@4 := #2 -@5 := LexLeanTarget.TargetSyntax.Value.i16 -@6 := @5 @4 -@7 := LexLeanTarget.TargetSyntax.Ty.fixed -@9 := @7 LexLeanTarget.TargetSyntax.IntKind.i16 -@10 := LexLeanTarget.TargetSyntax.Program -@11 := LexLeanPreservation.Rust.RCrate -@12 := LexLeanPreservation.Rust.Flags -@13 := LexLeanPreservation.Rust.WT -@14 := #3 -@16 := @13 @14 @4 -@17 := #1 -@18 := @16 @17 -@19 := #0 -@20 := @5 @19 -@26 := {p : @10} -> {c : @11} -> {A : @12} -> (x : @3) -> @18 @20 @9 -@28 := LexLeanPreservation.Rust.wt_i16 @0 -@29 := @13 @0 -@31 := @29 @4 @17 -@36 := {c : @11} -> {A : @12} -> (x : @3) -> @31 @20 @9 -@37 := @28 @1 -@38 := @29 @1 -@39 := @38 @17 -@43 := {A : @12} -> (x : @3) -> @39 @20 @9 -@44 := @37 @2 -@45 := @38 @2 -@48 := (x : @3) -> @45 @20 @9 -@49 := @44 @4 -@51 := @45 @6 @9 -@52 := Int32 -@53 := LexLeanTarget.TargetSyntax.Value.i32 -@54 := @53 @17 -@56 := @7 LexLeanTarget.TargetSyntax.IntKind.i32 -@57 := @53 @19 -@63 := {p : @10} -> {c : @11} -> {A : @12} -> (x : @52) -> @18 @57 @56 -@65 := LexLeanPreservation.Rust.wt_i32 @0 -@70 := {c : @11} -> {A : @12} -> (x : @52) -> @31 @57 @56 -@71 := @65 @1 -@75 := {A : @12} -> (x : @52) -> @39 @57 @56 -@76 := @71 @2 -@79 := (x : @52) -> @45 @57 @56 -@80 := @76 @17 -@82 := @45 @54 @56 -@83 := LexLeanTarget.TargetSyntax.Value -@84 := List.nil.{0} -@85 := List.cons.{0} -@86 := @84 @83 -@87 := @85 @83 -@89 := @87 @54 @86 -@91 := @87 @6 @89 -@92 := Nat -@93 := Prod.{0, 0} -@95 := @93 @92 @83 -@96 := 1 -@99 := Prod.mk.{0, 0} @92 @83 -@100 := @99 @96 -@101 := @100 @54 -@102 := 0 -@103 := @99 @102 -@104 := @103 @6 -@105 := @84 @95 -@106 := @85 @95 -@108 := @106 @104 @105 -@110 := @106 @101 @108 -@111 := Bool.false -@112 := LexLeanTarget.TargetSyntax.Function -@113 := LexLeanTarget.TargetSyntax.Program.functions -@114 := @113 @0 -@115 := LexLeanTarget.TargetSyntax.Ty -@116 := @84 @92 -@117 := @84 @115 -@118 := LexLeanTarget.TargetSyntax.Ty.unit -@119 := LexLeanTarget.TargetSyntax.Value.unit -@122 := LexLeanTarget.TargetSyntax.Expr.value @118 @119 -@127 := LexLeanTarget.TargetSyntax.Function.mk @116 @117 @118 @122 -@132 := List.getD.{0} @112 @114 @102 @127 -@136 := fun (__e_n : @92) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.RustStd.root @19 @102 -@137 := LexLeanPreservation.Rust.WTL -@145 := {p : @10} -> {c : @11} -> {A : @12} -> @137 @4 @17 @19 @86 @117 -@147 := LexLeanPreservation.Rust.wtl_nil @0 -@148 := @137 @0 -@154 := {c : @11} -> {A : @12} -> @148 @17 @19 @86 @117 -@155 := @147 @1 -@156 := @148 @1 -@160 := {A : @12} -> @156 @19 @86 @117 -@161 := @155 @2 -@162 := @156 @2 -@163 := @162 @86 -@164 := @163 @117 -@165 := List.{0} -@166 := @165 @83 -@167 := @165 @115 -@168 := #6 -@169 := @13 @168 -@170 := #5 -@171 := @169 @170 -@172 := #4 -@175 := @171 @172 @14 @4 -@176 := #7 -@181 := @137 @176 @168 @170 @4 @17 -@182 := #8 -@185 := @137 @182 @176 @168 -@187 := @87 @170 @14 -@188 := @185 @187 -@189 := @85 @115 -@191 := @189 @172 @4 -@201 := {p : @10} -> - {c : @11} -> - {A : @12} -> - {v : @83} -> {t : @115} -> {vs : @166} -> {ts : @167} -> (h : @175) -> (hs : @181) -> @188 @191 -@203 := LexLeanPreservation.Rust.wtl_cons @0 -@223 := {c : @11} -> - {A : @12} -> - {v : @83} -> - {t : @115} -> - {vs : @166} -> - {ts : @167} -> - (h : @29 @170 @172 @14 @4) -> (hs : @148 @168 @170 @4 @17) -> @148 @176 @168 @187 @191 -@224 := @203 @1 -@240 := {A : @12} -> - {v : @83} -> - {t : @115} -> - {vs : @166} -> - {ts : @167} -> (h : @38 @172 @14 @4) -> (hs : @156 @170 @4 @17) -> @156 @168 @187 @191 -@241 := @224 @2 -@243 := @45 @14 @4 -@245 := @162 @4 @17 -@253 := {v : @83} -> - {t : @115} -> {vs : @166} -> {ts : @167} -> (h : @243) -> (hs : @245) -> @162 @187 @191 -@254 := @241 @54 -@255 := @53 @172 -@257 := @45 @255 @4 -@258 := @53 @168 -@259 := @87 @258 -@267 := {t : @115} -> - {vs : @166} -> {ts : @167} -> (h : @257) -> (hs : @245) -> @162 (@259 @14) @191 -@268 := @254 @56 -@269 := @53 @14 -@271 := @45 @269 @56 -@272 := @53 @170 -@273 := @87 @272 -@275 := @162 (@273 @14) -@276 := @189 @56 -@277 := @276 @4 -@282 := {vs : @166} -> {ts : @167} -> (h : @271) -> (hs : @245) -> @275 @277 -@283 := @268 @86 -@284 := @53 @4 -@286 := @45 @284 @56 -@287 := @163 @17 -@289 := @87 @255 @86 -@294 := {ts : @167} -> (h : @286) -> (hs : @287) -> @162 @289 @277 -@295 := @283 @117 -@297 := @87 @269 @86 -@298 := @162 @297 -@299 := @276 @117 -@302 := (h : @82) -> (hs : @164) -> @298 @299 -@303 := @295 @80 -@305 := @87 @284 @86 -@307 := @162 @305 @299 -@308 := (hs : @164) -> @307 -@309 := @303 @161 -@311 := @162 @89 @299 -@312 := @241 @6 -@313 := @5 @170 -@315 := @45 @313 @4 -@316 := @5 @176 -@317 := @87 @316 -@325 := {t : @115} -> - {vs : @166} -> {ts : @167} -> (h : @315) -> (hs : @245) -> @162 (@317 @14) @191 -@326 := @312 @9 -@327 := @5 @172 -@329 := @45 @327 @9 -@330 := @5 @168 -@331 := @87 @330 -@333 := @162 (@331 @14) -@334 := @189 @9 -@335 := @334 @4 -@340 := {vs : @166} -> {ts : @167} -> (h : @329) -> (hs : @245) -> @333 @335 -@341 := @326 @89 -@342 := @5 @14 -@344 := @45 @342 @9 -@345 := @298 @17 -@347 := @87 @313 @289 -@348 := @162 @347 -@352 := {ts : @167} -> (h : @344) -> (hs : @345) -> @348 @335 -@353 := @341 @299 -@355 := @87 @327 @297 -@356 := @162 @355 -@357 := @334 @299 -@360 := (h : @51) -> (hs : @307) -> @356 @357 -@361 := @353 @49 -@363 := @87 @342 @305 -@364 := @162 @363 -@366 := (hs : @311) -> @364 @357 -@367 := @361 @309 -@368 := @162 @91 -@369 := @368 @357 -@370 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.denote -@372 := @370 @4 @17 -@373 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.__fits_0 -@375 := @373 @4 @17 -@378 := Coverage.Prims.fixedMiddle @4 @17 -@379 := Option.{0} -@380 := @379 @3 -@381 := @379 @52 -@382 := Bool -@383 := @93 @381 -@384 := @383 @382 -@385 := @383 @384 -@386 := LexLeanPreservation.encOption -@388 := @386 @3 @5 -@390 := @386 @52 @53 -@391 := LexLeanTarget.TargetSyntax.Value.bool -@392 := LexLeanPreservation.encPair -@393 := @392 @381 -@396 := @393 @382 @390 @391 -@399 := @393 @384 @390 @396 -@404 := @392 @380 @385 @388 @399 @378 -@407 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.root @4 @17 -@408 := Ne.{1} -@409 := LexLeanPreservation.Obs -@410 := @408 @409 -@411 := LexLeanPreservation.Rel -@414 := @410 (@411 @17 @19) -@415 := LexLeanPreservation.Obs.stuck -@418 := (f : @382) -> (v : @83) -> @414 @415 -@420 := LexLeanPreservation.Rust.rel_ne_stuck @375 -@427 := (v : @83) -> @410 (@411 (@373 @14 @4) @19) @415 -@428 := @420 @404 -@432 := @410 (@411 @375 @404) @415 -@433 := @165 @95 -@434 := LexLeanPreservation.Rust.FunSem -@435 := #9 -@441 := (n : @92) -> @434 @435 @182 @176 @19 @168 -@442 := Eq.{1} -@443 := @379 @112 -@444 := @442 @443 -@451 := LexLeanRuntime.index (@165 @112) @112 (LexLeanRuntime.instIndexableList @112) -@455 := @444 (@451 (@113 @435) @168) -@456 := Option.some.{0} -@457 := @456 @112 -@458 := @457 @170 -@459 := @455 @458 -@460 := #10 -@464 := @137 @460 @435 @182 @170 -@465 := LexLeanTarget.TargetSyntax.Function.types -@466 := @465 @168 -@467 := @464 @466 -@468 := @379 @433 -@469 := @442 @468 -@470 := LexLeanTarget.TargetSemantics.bindAll -@471 := LexLeanTarget.TargetSyntax.Function.parameters -@476 := @469 (@470 (@471 @176) @168 @105) -@477 := @456 @433 -@478 := @477 @170 -@479 := @476 @478 -@480 := @379 @382 -@481 := @442 @480 -@482 := LexLeanPreservation.Rust.fnFallible -@483 := #11 -@486 := @481 (@482 @483 @435) -@487 := @456 @382 -@488 := @487 @170 -@489 := @486 @488 -@490 := LexLeanPreservation.RunConv -@491 := #13 -@495 := @490 @491 @460 @182 @170 -@497 := @410 @168 @415 -@498 := Exists.{1} -@499 := LexLeanPreservation.Rust.ROut -@500 := @498 @499 -@501 := And -@502 := LexLeanPreservation.Rust.RealizesFn -@506 := @501 (@502 @435 @182 @19) -@507 := LexLeanPreservation.Rust.RCI -@509 := @507 #15 -@510 := LexLeanPreservation.Rust.fnIdent -@511 := @510 @491 -@518 := (hne : @497) -> @500 (fun (ro : @499) => @506 (@509 @511 @483 @19)) -@533 := {p : @10} -> - {c : @11} -> - {A : @12} -> - {f : @92} -> - {fn : @112} -> - {args : @166} -> - {env : @433} -> - {F : @382} -> - {o : @409} -> - (hB : @441) -> - (hfn : @459) -> (hwt : @467) -> (hbind : @479) -> (hF : @489) -> (hA : @495) -> @518 -@535 := LexLeanPreservation.Rust.compose @0 -@536 := @434 @0 -@541 := (n : @92) -> @536 @182 @176 @19 @168 -@542 := @451 @114 -@545 := @444 (@542 @168) @458 -@549 := @148 @435 @182 @170 @466 -@550 := @490 @0 -@553 := @550 @460 @182 @170 -@567 := {c : @11} -> - {A : @12} -> - {f : @92} -> - {fn : @112} -> - {args : @166} -> - {env : @433} -> - {F : @382} -> - {o : @409} -> - (hB : @541) -> - (hfn : @545) -> (hwt : @549) -> (hbind : @479) -> (hF : @489) -> (hA : @553) -> @518 -@568 := @535 @1 -@569 := @536 @1 -@573 := (n : @92) -> @569 @176 @19 @168 -@576 := @156 @182 @170 @466 -@577 := @482 @1 -@580 := @481 (@577 @435) @488 -@581 := @507 @1 -@591 := (hbind : @479) -> - (hF : @580) -> (hA : @553) -> (hne : @497) -> @500 (fun (ro : @499) => @506 (@581 @511 @483 @19)) -@601 := {A : @12} -> - {f : @92} -> - {fn : @112} -> - {args : @166} -> - {env : @433} -> {F : @382} -> {o : @409} -> (hB : @573) -> (hfn : @545) -> (hwt : @576) -> @591 -@602 := @568 @2 -@604 := @569 @2 @19 -@606 := (n : @92) -> @604 @168 -@607 := @162 @170 -@608 := @607 @466 -@617 := {f : @92} -> - {fn : @112} -> - {args : @166} -> - {env : @433} -> {F : @382} -> {o : @409} -> (hB : @606) -> (hfn : @545) -> (hwt : @608) -> @591 -@618 := @602 @102 -@620 := (n : @92) -> @604 @102 -@621 := @542 @102 -@622 := @444 @621 -@623 := @622 @458 -@624 := @577 @102 -@625 := @481 @624 -@626 := @625 @488 -@627 := @550 @102 -@629 := @627 @182 @170 -@631 := @581 (@510 @102) -@639 := (hF : @626) -> (hA : @629) -> (hne : @497) -> @500 (fun (ro : @499) => @506 (@631 @483 @19)) -@648 := {fn : @112} -> - {args : @166} -> - {env : @433} -> - {F : @382} -> {o : @409} -> (hB : @620) -> (hfn : @623) -> (hwt : @608) -> (hbind : @479) -> @639 -@649 := @618 @132 -@651 := @622 (@457 @132) -@652 := @465 @132 -@653 := @607 @652 -@655 := @470 (@471 @132) -@667 := {args : @166} -> - {env : @433} -> - {F : @382} -> - {o : @409} -> - (hB : @620) -> (hfn : @651) -> (hwt : @653) -> (hbind : @469 (@655 @168 @105) @478) -> @639 -@668 := @649 @91 -@670 := @317 (@259 @86) -@672 := @162 @670 @652 -@678 := @87 (@5 @182) (@87 (@53 @176) @86) -@682 := @469 (@655 @678 @105) @478 -@688 := @87 (@5 @460) (@87 (@53 @435) @86) -@690 := @627 @688 @170 -@692 := @87 (@5 @491) -@693 := #12 -@712 := {env : @433} -> - {F : @382} -> - {o : @409} -> - (hB : @620) -> - (hfn : @651) -> - (hwt : @672) -> - (hbind : @682) -> - (hF : @626) -> - (hA : @690) -> - (hne : @497) -> @500 (fun (ro : @499) => @506 (@631 (@692 (@87 (@53 @693) @86)) @19)) -@713 := @668 @110 -@715 := @331 (@273 @86) -@717 := @162 @715 @652 -@728 := @469 (@655 @670 @105) (@477 (@106 (@100 @258) (@106 (@103 @316) @105))) -@734 := @87 (@5 @435) (@87 (@53 @182) @86) -@756 := {F : @382} -> - {o : @409} -> - (hB : @620) -> - (hfn : @651) -> - (hwt : @717) -> - (hbind : @728) -> - (hF : @626) -> - (hA : @627 @734 @170) -> - (hne : @497) -> @500 (fun (ro : @499) => @506 (@631 (@87 (@5 @693) (@87 (@53 @483) @86)) @19)) -@757 := @713 @111 -@758 := @348 @652 -@769 := @469 (@655 @715 @105) (@477 (@106 (@100 @272) (@106 (@103 @330) @105))) -@771 := @625 (@487 @111) -@773 := @627 @678 @170 -@774 := @502 @111 -@796 := {o : @409} -> - (hB : @620) -> - (hfn : @651) -> - (hwt : @758) -> - (hbind : @769) -> - (hF : @771) -> - (hA : @773) -> - (hne : @497) -> - @500 (fun (ro : @499) => @501 (@774 @182 @19) (@631 (@87 (@5 @483) (@87 (@53 @460) @86)) @19)) -@797 := @757 @372 -@798 := @356 @652 -@809 := @469 (@655 @347 @105) (@477 (@106 (@100 @255) (@106 (@103 @313) @105))) -@810 := @627 @670 -@812 := @370 @176 @168 -@813 := @810 @812 -@815 := @370 @182 @176 -@834 := (hB : @620) -> - (hfn : @651) -> - (hwt : @798) -> - (hbind : @809) -> - (hF : @771) -> - (hA : @813) -> - (hne : @410 @815 @415) -> - @500 (fun (ro : @499) => @501 (@774 (@370 @460 @435) @19) (@631 @688 @19)) -@835 := @797 @136 -@836 := @364 @652 -@847 := @469 (@655 @355 @105) (@477 (@106 (@100 @269) (@106 (@103 @327) @105))) -@848 := @627 @715 -@850 := @370 @168 @170 -@869 := (hfn : @651) -> - (hwt : @836) -> - (hbind : @847) -> - (hF : @771) -> - (hA : @848 @850) -> - (hne : @410 @812 @415) -> - @500 (fun (ro : @499) => @501 (@774 (@370 @435 @182) @19) (@631 @734 @19)) -@870 := Eq.refl.{1} -@873 := @835 (@870 @443 @621) -@874 := @368 @652 -@885 := @469 (@655 @363 @105) (@477 (@106 (@100 @284) (@106 (@103 @342) @105))) -@886 := @627 @347 -@888 := @370 @170 @172 -@904 := (hwt : @874) -> - (hbind : @885) -> - (hF : @771) -> - (hA : @886 @888) -> - (hne : @410 @850 @415) -> @500 (fun (ro : @499) => @501 (@774 @815 @19) (@631 @678 @19)) -@905 := @873 @367 -@907 := @655 @91 @105 -@910 := @469 @907 (@477 @110) -@911 := @627 @355 -@913 := @370 @172 @14 -@928 := (hbind : @910) -> - (hF : @771) -> - (hA : @911 @913) -> - (hne : @410 @888 @415) -> @500 (fun (ro : @499) => @501 (@774 @812 @19) (@631 @670 @19)) -@931 := @905 (@870 @468 @907) -@932 := @627 @363 -@934 := @370 @14 @4 -@948 := (hF : @771) -> - (hA : @932 @934) -> - (hne : @410 @913 @415) -> @500 (fun (ro : @499) => @501 (@774 @850 @19) (@631 @715 @19)) -@951 := @931 (@870 @480 @624) -@965 := (hA : @627 @91 @372) -> - (hne : @410 @934 @415) -> @500 (fun (ro : @499) => @501 (@774 @888 @19) (@631 @347 @19)) -@966 := @951 @407 -@977 := (hne : @410 @372 @415) -> @500 (fun (ro : @499) => @501 (@774 @913 @19) (@631 @355 @19)) -@978 := @966 @428 -@984 := @501 (@774 @934 @19) (@631 @363 @19) -@986 := @500 (fun (ro : @499) => @984) -@988 := @500 (fun (__e_ro : @499) => @984) -@989 := LexLeanPreservation.Rust.RepresentableL -@990 := @5 @17 -@992 := @87 @57 @86 -@995 := @989 (@87 @990 @992) -@996 := (__e_hrep : @995) -> @988 -@997 := fun (__e_hrep : @995) => @978 -@998 := (b : @52) -> @996 -@999 := fun (b : @52) => @997 -@1000 := (a : @3) -> @998 -@1001 := fun (a : @3) => @999 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R22/RustCore.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R22/RustCore.lean deleted file mode 100644 index a50182eb9..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R22/RustCore.lean +++ /dev/null @@ -1,33 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.RustCore -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1], types := [(.fixed .i16), (.fixed .i32)], result := (.pair (.option (.fixed .i16)) (.pair (.option (.fixed .i32)) (.pair (.option (.fixed .i32)) .bool))), - body := (.build .pair (.pair (.option (.fixed .i16)) (.pair (.option (.fixed .i32)) (.pair (.option (.fixed .i32)) .bool))) [(.prim .checkedMul [(.var 0), (.var 0)]), (.build .pair (.pair (.option (.fixed .i32)) (.pair (.option (.fixed .i32)) .bool)) [(.prim .checkedAdd [(.var 1), (.value (.fixed .i32) (.i32 (-7)))]), (.build .pair (.pair (.option (.fixed .i32)) .bool) [(.prim (.convert .i32) [(.var 0)]), (.prim .equal [(.var 1), (.value (.fixed .i32) (.i32 3))])])])]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .core, items := [ - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.fixed .i16) }, { pattern := (.bind (.generated .binding 1)), type := (.fixed .i32) }] (.pair (.option (.fixed .i16)) (.pair (.option (.fixed .i32)) (.pair (.option (.fixed .i32)) .bool))) (.mk [] (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 0)))] (.call (.runtime (.checkedMul .i16)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 4)) none (.lit (.fixed .i32 (-7))))] (.call (.runtime (.checkedAdd .i32)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0)))] (.call (.runtime (.convert .i32)) [(.widen (.move (.generated .operand 5)))] false))) (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 7)) none (.lit (.fixed .i32 3)))] (.call (.runtime .equal) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false))))))))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [], (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 0)))] (.call (.runtime (.checkedMul .i16)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 4)) none (.lit (.fixed .i32 (-7))))] (.call (.runtime (.checkedAdd .i32)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0)))] (.call (.runtime (.convert .i32)) [(.widen (.move (.generated .operand 5)))] false))) (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 7)) none (.lit (.fixed .i32 3)))] (.call (.runtime .equal) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false)))))), [(1, (.fixed .i32), (some 1)), (0, (.fixed .i16), (some 0))], rfl, rfl, - (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 0)))]) (tail := (.call (.runtime (.checkedMul .i16)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false)) (Corr.prim (ts := [(.fixed .i16), (.fixed .i16)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 4)) none (.lit (.fixed .i32 (-7))))]) (tail := (.call (.runtime (.checkedAdd .i32)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false)) (Corr.prim (ts := [(.fixed .i32), (.fixed .i32)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0)))]) (tail := (.call (.runtime (.convert .i32)) [(.widen (.move (.generated .operand 5)))] false)) (Corr.primWiden (t0 := (.fixed .i16)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 7)) none (.lit (.fixed .i32 3)))]) (tail := (.call (.runtime .equal) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false)) (Corr.prim (ts := [(.fixed .i32), (.fixed .i32)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | _ + 1 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.RustCore diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R22/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R22/RustStd.lean deleted file mode 100644 index 3c32afc98..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R22/RustStd.lean +++ /dev/null @@ -1,33 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1], types := [(.fixed .i16), (.fixed .i32)], result := (.pair (.option (.fixed .i16)) (.pair (.option (.fixed .i32)) (.pair (.option (.fixed .i32)) .bool))), - body := (.build .pair (.pair (.option (.fixed .i16)) (.pair (.option (.fixed .i32)) (.pair (.option (.fixed .i32)) .bool))) [(.prim .checkedMul [(.var 0), (.var 0)]), (.build .pair (.pair (.option (.fixed .i32)) (.pair (.option (.fixed .i32)) .bool)) [(.prim .checkedAdd [(.var 1), (.value (.fixed .i32) (.i32 (-7)))]), (.build .pair (.pair (.option (.fixed .i32)) .bool) [(.prim (.convert .i32) [(.var 0)]), (.prim .equal [(.var 1), (.value (.fixed .i32) (.i32 3))])])])]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.fixed .i16) }, { pattern := (.bind (.generated .binding 1)), type := (.fixed .i32) }] (.pair (.option (.fixed .i16)) (.pair (.option (.fixed .i32)) (.pair (.option (.fixed .i32)) .bool))) (.mk [] (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 0)))] (.call (.runtime (.checkedMul .i16)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 4)) none (.lit (.fixed .i32 (-7))))] (.call (.runtime (.checkedAdd .i32)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0)))] (.call (.runtime (.convert .i32)) [(.widen (.move (.generated .operand 5)))] false))) (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 7)) none (.lit (.fixed .i32 3)))] (.call (.runtime .equal) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false))))))))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [], (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 0)))] (.call (.runtime (.checkedMul .i16)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 4)) none (.lit (.fixed .i32 (-7))))] (.call (.runtime (.checkedAdd .i32)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0)))] (.call (.runtime (.convert .i32)) [(.widen (.move (.generated .operand 5)))] false))) (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 7)) none (.lit (.fixed .i32 3)))] (.call (.runtime .equal) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false)))))), [(1, (.fixed .i32), (some 1)), (0, (.fixed .i16), (some 0))], rfl, rfl, - (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 0)))]) (tail := (.call (.runtime (.checkedMul .i16)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false)) (Corr.prim (ts := [(.fixed .i16), (.fixed .i16)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 4)) none (.lit (.fixed .i32 (-7))))]) (tail := (.call (.runtime (.checkedAdd .i32)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false)) (Corr.prim (ts := [(.fixed .i32), (.fixed .i32)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0)))]) (tail := (.call (.runtime (.convert .i32)) [(.widen (.move (.generated .operand 5)))] false)) (Corr.primWiden (t0 := (.fixed .i16)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 7)) none (.lit (.fixed .i32 3)))]) (tail := (.call (.runtime .equal) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false)) (Corr.prim (ts := [(.fixed .i32), (.fixed .i32)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | _ + 1 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R23/Compose/RustCore.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R23/Compose/RustCore.lex.tex deleted file mode 100644 index 01829914d..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R23/Compose/RustCore.lex.tex +++ /dev/null @@ -1,543 +0,0 @@ -\begin{lexlean}{RustCore} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.Compose.RustCore} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.RustCore, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.Compose.RustCore.root : @1096 := @1097 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.Compose.RustCore.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.RustCore.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.RustCore.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.RustCore.flags -@3 := Int64 -@4 := #3 -@5 := LexLeanTarget.TargetSyntax.Value.i64 -@6 := @5 @4 -@7 := LexLeanTarget.TargetSyntax.Ty.fixed -@9 := @7 LexLeanTarget.TargetSyntax.IntKind.i64 -@10 := LexLeanTarget.TargetSyntax.Program -@11 := LexLeanPreservation.Rust.RCrate -@12 := LexLeanPreservation.Rust.Flags -@13 := LexLeanPreservation.Rust.WT -@14 := @13 @4 -@15 := #2 -@16 := @14 @15 -@17 := #1 -@18 := @16 @17 -@19 := #0 -@20 := @5 @19 -@26 := {p : @10} -> {c : @11} -> {A : @12} -> (x : @3) -> @18 @20 @9 -@28 := LexLeanPreservation.Rust.wt_i64 @0 -@29 := @13 @0 -@31 := @29 @15 @17 -@36 := {c : @11} -> {A : @12} -> (x : @3) -> @31 @20 @9 -@37 := @28 @1 -@38 := @29 @1 -@39 := @38 @17 -@43 := {A : @12} -> (x : @3) -> @39 @20 @9 -@44 := @37 @2 -@45 := @38 @2 -@48 := (x : @3) -> @45 @20 @9 -@49 := @44 @4 -@51 := @45 @6 @9 -@52 := @5 @15 -@53 := @44 @15 -@55 := @45 @52 @9 -@56 := UInt64 -@57 := LexLeanTarget.TargetSyntax.Value.u64 -@58 := @57 @17 -@60 := @7 LexLeanTarget.TargetSyntax.IntKind.u64 -@61 := @57 @19 -@67 := {p : @10} -> {c : @11} -> {A : @12} -> (x : @56) -> @18 @61 @60 -@69 := LexLeanPreservation.Rust.wt_u64 @0 -@74 := {c : @11} -> {A : @12} -> (x : @56) -> @31 @61 @60 -@75 := @69 @1 -@79 := {A : @12} -> (x : @56) -> @39 @61 @60 -@80 := @75 @2 -@83 := (x : @56) -> @45 @61 @60 -@84 := @80 @17 -@86 := @45 @58 @60 -@87 := LexLeanTarget.TargetSyntax.Value -@88 := List.nil.{0} -@89 := List.cons.{0} -@90 := @88 @87 -@91 := @89 @87 -@93 := @91 @58 @90 -@94 := @91 @52 -@95 := @94 @93 -@96 := @91 @6 -@97 := @96 @95 -@98 := Nat -@99 := Prod.{0, 0} -@101 := @99 @98 @87 -@102 := 2 -@105 := Prod.mk.{0, 0} @98 @87 -@106 := @105 @102 -@107 := @106 @58 -@109 := @105 1 -@110 := @109 @52 -@111 := 0 -@112 := @105 @111 -@113 := @112 @6 -@114 := @88 @101 -@115 := @89 @101 -@117 := @115 @113 @114 -@119 := @115 @110 @117 -@121 := @115 @107 @119 -@122 := Bool.false -@123 := LexLeanTarget.TargetSyntax.Function -@124 := LexLeanTarget.TargetSyntax.Program.functions -@125 := @124 @0 -@126 := LexLeanTarget.TargetSyntax.Ty -@127 := @88 @98 -@128 := @88 @126 -@129 := LexLeanTarget.TargetSyntax.Ty.unit -@130 := LexLeanTarget.TargetSyntax.Value.unit -@133 := LexLeanTarget.TargetSyntax.Expr.value @129 @130 -@138 := LexLeanTarget.TargetSyntax.Function.mk @127 @128 @129 @133 -@143 := List.getD.{0} @123 @125 @111 @138 -@147 := fun (__e_n : @98) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.RustCore.root @19 @111 -@148 := LexLeanPreservation.Rust.WTL -@156 := {p : @10} -> {c : @11} -> {A : @12} -> @148 @15 @17 @19 @90 @128 -@158 := LexLeanPreservation.Rust.wtl_nil @0 -@159 := @148 @0 -@165 := {c : @11} -> {A : @12} -> @159 @17 @19 @90 @128 -@166 := @158 @1 -@167 := @159 @1 -@171 := {A : @12} -> @167 @19 @90 @128 -@172 := @166 @2 -@173 := @167 @2 -@174 := @173 @90 -@175 := @174 @128 -@176 := List.{0} -@177 := @176 @87 -@178 := @176 @126 -@179 := #6 -@180 := @13 @179 -@181 := #5 -@182 := @180 @181 -@183 := #4 -@186 := @182 @183 @4 @15 -@187 := #7 -@192 := @148 @187 @179 @181 @15 @17 -@193 := #8 -@196 := @148 @193 @187 @179 -@198 := @91 @181 @4 -@199 := @196 @198 -@200 := @89 @126 -@202 := @200 @183 @15 -@212 := {p : @10} -> - {c : @11} -> - {A : @12} -> - {v : @87} -> {t : @126} -> {vs : @177} -> {ts : @178} -> (h : @186) -> (hs : @192) -> @199 @202 -@214 := LexLeanPreservation.Rust.wtl_cons @0 -@234 := {c : @11} -> - {A : @12} -> - {v : @87} -> - {t : @126} -> - {vs : @177} -> - {ts : @178} -> - (h : @29 @181 @183 @4 @15) -> (hs : @159 @179 @181 @15 @17) -> @159 @187 @179 @198 @202 -@235 := @214 @1 -@251 := {A : @12} -> - {v : @87} -> - {t : @126} -> - {vs : @177} -> - {ts : @178} -> (h : @38 @183 @4 @15) -> (hs : @167 @181 @15 @17) -> @167 @179 @198 @202 -@252 := @235 @2 -@254 := @45 @4 @15 -@256 := @173 @15 @17 -@264 := {v : @87} -> - {t : @126} -> {vs : @177} -> {ts : @178} -> (h : @254) -> (hs : @256) -> @173 @198 @202 -@265 := @252 @58 -@266 := @57 @183 -@268 := @45 @266 @15 -@269 := @57 @179 -@270 := @91 @269 -@278 := {t : @126} -> {vs : @177} -> {ts : @178} -> (h : @268) -> (hs : @256) -> @173 (@270 @4) @202 -@279 := @265 @60 -@280 := @57 @4 -@282 := @45 @280 @60 -@283 := @57 @181 -@284 := @91 @283 -@286 := @173 (@284 @4) -@287 := @200 @60 -@288 := @287 @15 -@293 := {vs : @177} -> {ts : @178} -> (h : @282) -> (hs : @256) -> @286 @288 -@294 := @279 @90 -@295 := @57 @15 -@297 := @45 @295 @60 -@298 := @174 @17 -@300 := @91 @266 @90 -@305 := {ts : @178} -> (h : @297) -> (hs : @298) -> @173 @300 @288 -@306 := @294 @128 -@308 := @91 @280 @90 -@309 := @173 @308 -@310 := @287 @128 -@313 := (h : @86) -> (hs : @175) -> @309 @310 -@314 := @306 @84 -@316 := @91 @295 @90 -@318 := @173 @316 @310 -@319 := (hs : @175) -> @318 -@320 := @314 @172 -@322 := @173 @93 @310 -@323 := @252 @52 -@324 := @5 @181 -@325 := @45 @324 -@326 := @325 @15 -@327 := @5 @187 -@328 := @91 @327 -@330 := @173 (@328 @4) -@336 := {t : @126} -> {vs : @177} -> {ts : @178} -> (h : @326) -> (hs : @256) -> @330 @202 -@337 := @323 @9 -@338 := @5 @183 -@340 := @45 @338 @9 -@341 := @5 @179 -@342 := @91 @341 -@344 := @173 (@342 @4) -@345 := @200 @9 -@346 := @345 @15 -@351 := {vs : @177} -> {ts : @178} -> (h : @340) -> (hs : @256) -> @344 @346 -@352 := @337 @93 -@353 := @309 @17 -@354 := @91 @324 -@355 := @354 @300 -@360 := {ts : @178} -> (h : @51) -> (hs : @353) -> @173 @355 @346 -@361 := @352 @310 -@362 := @91 @338 -@363 := @362 @308 -@364 := @173 @363 -@365 := @345 @310 -@368 := (h : @55) -> (hs : @318) -> @364 @365 -@369 := @361 @53 -@370 := @96 @316 -@372 := @173 @370 @365 -@373 := (hs : @322) -> @372 -@374 := @369 @320 -@376 := @173 @95 @365 -@377 := @252 @6 -@379 := @45 @341 @15 -@380 := @5 @193 -@381 := @91 @380 -@389 := {t : @126} -> {vs : @177} -> {ts : @178} -> (h : @379) -> (hs : @256) -> @173 (@381 @4) @202 -@390 := @377 @9 -@396 := {vs : @177} -> {ts : @178} -> (h : @325 @9) -> (hs : @256) -> @330 @346 -@397 := @390 @95 -@398 := @364 @17 -@399 := @342 @355 -@400 := @173 @399 -@404 := {ts : @178} -> (h : @340) -> (hs : @398) -> @400 @346 -@405 := @397 @365 -@406 := @354 @363 -@407 := @173 @406 -@408 := @345 @365 -@411 := (h : @51) -> (hs : @372) -> @407 @408 -@412 := @405 @49 -@413 := @362 @370 -@414 := @173 @413 -@416 := (hs : @376) -> @414 @408 -@417 := @412 @374 -@418 := @173 @97 -@419 := @418 @408 -@420 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.denote -@423 := @420 @4 @15 @17 -@424 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.__fits_0 -@427 := @424 @4 @15 @17 -@431 := Coverage.Prims.fixedWide @4 @15 @17 -@432 := Option.{0} -@433 := @432 @3 -@434 := @432 @56 -@435 := @99 @433 -@436 := @435 @434 -@437 := @435 @436 -@438 := @435 @437 -@439 := @435 @438 -@440 := LexLeanPreservation.encOption -@442 := @440 @3 @5 -@444 := @440 @56 @57 -@446 := LexLeanPreservation.encPair @433 -@449 := @446 @434 @442 @444 -@452 := @446 @436 @442 @449 -@455 := @446 @437 @442 @452 -@458 := @446 @438 @442 @455 -@462 := @446 @439 @442 @458 @431 -@466 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.root @4 @15 @17 -@467 := Bool -@468 := Ne.{1} -@469 := LexLeanPreservation.Obs -@470 := @468 @469 -@471 := LexLeanPreservation.Rel -@474 := @470 (@471 @17 @19) -@475 := LexLeanPreservation.Obs.stuck -@478 := (f : @467) -> (v : @87) -> @474 @475 -@480 := LexLeanPreservation.Rust.rel_ne_stuck @427 -@488 := (v : @87) -> @470 (@471 (@424 @183 @4 @15) @19) @475 -@489 := @480 @462 -@493 := @470 (@471 @427 @462) @475 -@494 := @176 @101 -@495 := LexLeanPreservation.Rust.FunSem -@496 := #9 -@502 := (n : @98) -> @495 @496 @193 @187 @19 @179 -@503 := Eq.{1} -@504 := @432 @123 -@505 := @503 @504 -@512 := LexLeanRuntime.index (@176 @123) @123 (LexLeanRuntime.instIndexableList @123) -@516 := @505 (@512 (@124 @496) @179) -@517 := Option.some.{0} -@518 := @517 @123 -@519 := @518 @181 -@520 := @516 @519 -@521 := #10 -@525 := @148 @521 @496 @193 @181 -@526 := LexLeanTarget.TargetSyntax.Function.types -@527 := @526 @179 -@528 := @525 @527 -@529 := @432 @494 -@530 := @503 @529 -@531 := LexLeanTarget.TargetSemantics.bindAll -@532 := LexLeanTarget.TargetSyntax.Function.parameters -@537 := @530 (@531 (@532 @187) @179 @114) -@538 := @517 @494 -@539 := @538 @181 -@540 := @537 @539 -@541 := @432 @467 -@542 := @503 @541 -@543 := LexLeanPreservation.Rust.fnFallible -@544 := #11 -@547 := @542 (@543 @544 @496) -@548 := @517 @467 -@549 := @548 @181 -@550 := @547 @549 -@551 := LexLeanPreservation.RunConv -@552 := #13 -@556 := @551 @552 @521 @193 @181 -@558 := @470 @179 @475 -@559 := Exists.{1} -@560 := LexLeanPreservation.Rust.ROut -@561 := @559 @560 -@562 := And -@563 := LexLeanPreservation.Rust.RealizesFn -@567 := @562 (@563 @496 @193 @19) -@568 := LexLeanPreservation.Rust.RCI -@570 := @568 #15 -@571 := LexLeanPreservation.Rust.fnIdent -@572 := @571 @552 -@579 := (hne : @558) -> @561 (fun (ro : @560) => @567 (@570 @572 @544 @19)) -@594 := {p : @10} -> - {c : @11} -> - {A : @12} -> - {f : @98} -> - {fn : @123} -> - {args : @177} -> - {env : @494} -> - {F : @467} -> - {o : @469} -> - (hB : @502) -> - (hfn : @520) -> (hwt : @528) -> (hbind : @540) -> (hF : @550) -> (hA : @556) -> @579 -@596 := LexLeanPreservation.Rust.compose @0 -@597 := @495 @0 -@602 := (n : @98) -> @597 @193 @187 @19 @179 -@603 := @512 @125 -@606 := @505 (@603 @179) @519 -@610 := @159 @496 @193 @181 @527 -@611 := @551 @0 -@614 := @611 @521 @193 @181 -@628 := {c : @11} -> - {A : @12} -> - {f : @98} -> - {fn : @123} -> - {args : @177} -> - {env : @494} -> - {F : @467} -> - {o : @469} -> - (hB : @602) -> - (hfn : @606) -> (hwt : @610) -> (hbind : @540) -> (hF : @550) -> (hA : @614) -> @579 -@629 := @596 @1 -@630 := @597 @1 -@634 := (n : @98) -> @630 @187 @19 @179 -@637 := @167 @193 @181 @527 -@638 := @543 @1 -@641 := @542 (@638 @496) @549 -@642 := @568 @1 -@652 := (hbind : @540) -> - (hF : @641) -> (hA : @614) -> (hne : @558) -> @561 (fun (ro : @560) => @567 (@642 @572 @544 @19)) -@662 := {A : @12} -> - {f : @98} -> - {fn : @123} -> - {args : @177} -> - {env : @494} -> {F : @467} -> {o : @469} -> (hB : @634) -> (hfn : @606) -> (hwt : @637) -> @652 -@663 := @629 @2 -@665 := @630 @2 @19 -@667 := (n : @98) -> @665 @179 -@668 := @173 @181 -@669 := @668 @527 -@678 := {f : @98} -> - {fn : @123} -> - {args : @177} -> - {env : @494} -> {F : @467} -> {o : @469} -> (hB : @667) -> (hfn : @606) -> (hwt : @669) -> @652 -@679 := @663 @111 -@681 := (n : @98) -> @665 @111 -@682 := @603 @111 -@683 := @505 @682 -@684 := @683 @519 -@685 := @638 @111 -@686 := @542 @685 -@687 := @686 @549 -@688 := @611 @111 -@690 := @688 @193 @181 -@692 := @642 (@571 @111) -@700 := (hF : @687) -> (hA : @690) -> (hne : @558) -> @561 (fun (ro : @560) => @567 (@692 @544 @19)) -@709 := {fn : @123} -> - {args : @177} -> - {env : @494} -> - {F : @467} -> {o : @469} -> (hB : @681) -> (hfn : @684) -> (hwt : @669) -> (hbind : @540) -> @700 -@710 := @679 @143 -@712 := @683 (@518 @143) -@713 := @526 @143 -@714 := @668 @713 -@716 := @531 (@532 @143) -@728 := {args : @177} -> - {env : @494} -> - {F : @467} -> - {o : @469} -> - (hB : @681) -> (hfn : @712) -> (hwt : @714) -> (hbind : @530 (@716 @179 @114) @539) -> @700 -@729 := @710 @97 -@732 := @381 (@328 (@270 @90)) -@734 := @173 @732 @713 -@736 := @91 (@5 @496) -@741 := @736 (@381 (@91 (@57 @187) @90)) -@745 := @530 (@716 @741 @114) @539 -@747 := @91 (@5 @544) -@749 := @91 (@5 @521) -@754 := @747 (@749 (@91 (@57 @496) @90)) -@756 := @688 @754 @181 -@759 := @91 (@5 #14) -@761 := @91 (@5 @552) -@762 := #12 -@782 := {env : @494} -> - {F : @467} -> - {o : @469} -> - (hB : @681) -> - (hfn : @712) -> - (hwt : @734) -> - (hbind : @745) -> - (hF : @687) -> - (hA : @756) -> - (hne : @558) -> @561 (fun (ro : @560) => @567 (@692 (@759 (@761 (@91 (@57 @762) @90))) @19)) -@783 := @729 @121 -@786 := @328 (@342 (@284 @90)) -@788 := @173 @786 @713 -@802 := @530 (@716 @732 @114) (@538 (@115 (@106 @269) (@115 (@109 @327) (@115 (@112 @380) @114)))) -@807 := @749 (@736 (@91 (@57 @193) @90)) -@809 := @688 @807 @181 -@811 := @91 (@5 @762) -@830 := {F : @467} -> - {o : @469} -> - (hB : @681) -> - (hfn : @712) -> - (hwt : @788) -> - (hbind : @802) -> - (hF : @687) -> - (hA : @809) -> - (hne : @558) -> @561 (fun (ro : @560) => @567 (@692 (@761 (@811 (@91 (@57 @544) @90))) @19)) -@831 := @783 @122 -@832 := @400 @713 -@846 := @530 (@716 @786 @114) (@538 (@115 (@106 @283) (@115 (@109 @341) (@115 (@112 @327) @114)))) -@848 := @686 (@548 @122) -@850 := @688 @741 @181 -@851 := @563 @122 -@872 := {o : @469} -> - (hB : @681) -> - (hfn : @712) -> - (hwt : @832) -> - (hbind : @846) -> - (hF : @848) -> - (hA : @850) -> - (hne : @558) -> - @561 (fun (ro : @560) => @562 (@851 @193 @19) (@692 (@811 (@747 (@91 (@57 @521) @90))) @19)) -@873 := @831 @423 -@874 := @407 @713 -@888 := @530 (@716 @399 @114) (@538 (@115 (@106 @266) (@115 (@109 @324) (@115 (@112 @341) @114)))) -@889 := @688 @732 -@892 := @420 @193 @187 @179 -@893 := @889 @892 -@896 := @420 @496 @193 @187 -@916 := (hB : @681) -> - (hfn : @712) -> - (hwt : @874) -> - (hbind : @888) -> - (hF : @848) -> - (hA : @893) -> - (hne : @470 @896 @475) -> - @561 (fun (ro : @560) => @562 (@851 (@420 @544 @521 @496) @19) (@692 @754 @19)) -@917 := @873 @147 -@918 := @414 @713 -@932 := @530 (@716 @406 @114) (@538 (@115 (@106 @280) (@115 (@109 @338) (@115 (@112 @324) @114)))) -@933 := @688 @786 -@936 := @420 @187 @179 @181 -@956 := (hfn : @712) -> - (hwt : @918) -> - (hbind : @932) -> - (hF : @848) -> - (hA : @933 @936) -> - (hne : @470 @892 @475) -> - @561 (fun (ro : @560) => @562 (@851 (@420 @521 @496 @193) @19) (@692 @807 @19)) -@957 := Eq.refl.{1} -@960 := @917 (@957 @504 @682) -@961 := @418 @713 -@975 := @530 (@716 @413 @114) (@538 (@115 (@106 @295) (@115 (@109 @6) (@115 (@112 @338) @114)))) -@976 := @688 @399 -@979 := @420 @179 @181 @183 -@995 := (hwt : @961) -> - (hbind : @975) -> - (hF : @848) -> - (hA : @976 @979) -> - (hne : @470 @936 @475) -> @561 (fun (ro : @560) => @562 (@851 @896 @19) (@692 @741 @19)) -@996 := @960 @417 -@998 := @716 @97 @114 -@1001 := @530 @998 (@538 @121) -@1002 := @688 @406 -@1005 := @420 @181 @183 @4 -@1020 := (hbind : @1001) -> - (hF : @848) -> - (hA : @1002 @1005) -> - (hne : @470 @979 @475) -> @561 (fun (ro : @560) => @562 (@851 @892 @19) (@692 @732 @19)) -@1023 := @996 (@957 @529 @998) -@1024 := @688 @413 -@1027 := @420 @183 @4 @15 -@1041 := (hF : @848) -> - (hA : @1024 @1027) -> - (hne : @470 @1005 @475) -> @561 (fun (ro : @560) => @562 (@851 @936 @19) (@692 @786 @19)) -@1044 := @1023 (@957 @541 @685) -@1058 := (hA : @688 @97 @423) -> - (hne : @470 @1027 @475) -> @561 (fun (ro : @560) => @562 (@851 @979 @19) (@692 @399 @19)) -@1059 := @1044 @466 -@1070 := (hne : @470 @423 @475) -> @561 (fun (ro : @560) => @562 (@851 @1005 @19) (@692 @406 @19)) -@1071 := @1059 @489 -@1077 := @562 (@851 @1027 @19) (@692 @413 @19) -@1079 := @561 (fun (ro : @560) => @1077) -@1081 := @561 (fun (__e_ro : @560) => @1077) -@1082 := LexLeanPreservation.Rust.RepresentableL -@1083 := @5 @17 -@1085 := @91 @61 @90 -@1089 := @1082 (@94 (@91 @1083 @1085)) -@1090 := (__e_hrep : @1089) -> @1081 -@1091 := fun (__e_hrep : @1089) => @1071 -@1092 := (c : @56) -> @1090 -@1093 := fun (c : @56) => @1091 -@1094 := (b : @3) -> @1092 -@1095 := fun (b : @3) => @1093 -@1096 := (a : @3) -> @1094 -@1097 := fun (a : @3) => @1095 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R23/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R23/Compose/RustStd.lex.tex deleted file mode 100644 index f3f183f6e..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R23/Compose/RustStd.lex.tex +++ /dev/null @@ -1,543 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.Compose.RustStd.root : @1096 := @1097 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.RustStd.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.RustStd.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.RustStd.flags -@3 := Int64 -@4 := #3 -@5 := LexLeanTarget.TargetSyntax.Value.i64 -@6 := @5 @4 -@7 := LexLeanTarget.TargetSyntax.Ty.fixed -@9 := @7 LexLeanTarget.TargetSyntax.IntKind.i64 -@10 := LexLeanTarget.TargetSyntax.Program -@11 := LexLeanPreservation.Rust.RCrate -@12 := LexLeanPreservation.Rust.Flags -@13 := LexLeanPreservation.Rust.WT -@14 := @13 @4 -@15 := #2 -@16 := @14 @15 -@17 := #1 -@18 := @16 @17 -@19 := #0 -@20 := @5 @19 -@26 := {p : @10} -> {c : @11} -> {A : @12} -> (x : @3) -> @18 @20 @9 -@28 := LexLeanPreservation.Rust.wt_i64 @0 -@29 := @13 @0 -@31 := @29 @15 @17 -@36 := {c : @11} -> {A : @12} -> (x : @3) -> @31 @20 @9 -@37 := @28 @1 -@38 := @29 @1 -@39 := @38 @17 -@43 := {A : @12} -> (x : @3) -> @39 @20 @9 -@44 := @37 @2 -@45 := @38 @2 -@48 := (x : @3) -> @45 @20 @9 -@49 := @44 @4 -@51 := @45 @6 @9 -@52 := @5 @15 -@53 := @44 @15 -@55 := @45 @52 @9 -@56 := UInt64 -@57 := LexLeanTarget.TargetSyntax.Value.u64 -@58 := @57 @17 -@60 := @7 LexLeanTarget.TargetSyntax.IntKind.u64 -@61 := @57 @19 -@67 := {p : @10} -> {c : @11} -> {A : @12} -> (x : @56) -> @18 @61 @60 -@69 := LexLeanPreservation.Rust.wt_u64 @0 -@74 := {c : @11} -> {A : @12} -> (x : @56) -> @31 @61 @60 -@75 := @69 @1 -@79 := {A : @12} -> (x : @56) -> @39 @61 @60 -@80 := @75 @2 -@83 := (x : @56) -> @45 @61 @60 -@84 := @80 @17 -@86 := @45 @58 @60 -@87 := LexLeanTarget.TargetSyntax.Value -@88 := List.nil.{0} -@89 := List.cons.{0} -@90 := @88 @87 -@91 := @89 @87 -@93 := @91 @58 @90 -@94 := @91 @52 -@95 := @94 @93 -@96 := @91 @6 -@97 := @96 @95 -@98 := Nat -@99 := Prod.{0, 0} -@101 := @99 @98 @87 -@102 := 2 -@105 := Prod.mk.{0, 0} @98 @87 -@106 := @105 @102 -@107 := @106 @58 -@109 := @105 1 -@110 := @109 @52 -@111 := 0 -@112 := @105 @111 -@113 := @112 @6 -@114 := @88 @101 -@115 := @89 @101 -@117 := @115 @113 @114 -@119 := @115 @110 @117 -@121 := @115 @107 @119 -@122 := Bool.false -@123 := LexLeanTarget.TargetSyntax.Function -@124 := LexLeanTarget.TargetSyntax.Program.functions -@125 := @124 @0 -@126 := LexLeanTarget.TargetSyntax.Ty -@127 := @88 @98 -@128 := @88 @126 -@129 := LexLeanTarget.TargetSyntax.Ty.unit -@130 := LexLeanTarget.TargetSyntax.Value.unit -@133 := LexLeanTarget.TargetSyntax.Expr.value @129 @130 -@138 := LexLeanTarget.TargetSyntax.Function.mk @127 @128 @129 @133 -@143 := List.getD.{0} @123 @125 @111 @138 -@147 := fun (__e_n : @98) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.RustStd.root @19 @111 -@148 := LexLeanPreservation.Rust.WTL -@156 := {p : @10} -> {c : @11} -> {A : @12} -> @148 @15 @17 @19 @90 @128 -@158 := LexLeanPreservation.Rust.wtl_nil @0 -@159 := @148 @0 -@165 := {c : @11} -> {A : @12} -> @159 @17 @19 @90 @128 -@166 := @158 @1 -@167 := @159 @1 -@171 := {A : @12} -> @167 @19 @90 @128 -@172 := @166 @2 -@173 := @167 @2 -@174 := @173 @90 -@175 := @174 @128 -@176 := List.{0} -@177 := @176 @87 -@178 := @176 @126 -@179 := #6 -@180 := @13 @179 -@181 := #5 -@182 := @180 @181 -@183 := #4 -@186 := @182 @183 @4 @15 -@187 := #7 -@192 := @148 @187 @179 @181 @15 @17 -@193 := #8 -@196 := @148 @193 @187 @179 -@198 := @91 @181 @4 -@199 := @196 @198 -@200 := @89 @126 -@202 := @200 @183 @15 -@212 := {p : @10} -> - {c : @11} -> - {A : @12} -> - {v : @87} -> {t : @126} -> {vs : @177} -> {ts : @178} -> (h : @186) -> (hs : @192) -> @199 @202 -@214 := LexLeanPreservation.Rust.wtl_cons @0 -@234 := {c : @11} -> - {A : @12} -> - {v : @87} -> - {t : @126} -> - {vs : @177} -> - {ts : @178} -> - (h : @29 @181 @183 @4 @15) -> (hs : @159 @179 @181 @15 @17) -> @159 @187 @179 @198 @202 -@235 := @214 @1 -@251 := {A : @12} -> - {v : @87} -> - {t : @126} -> - {vs : @177} -> - {ts : @178} -> (h : @38 @183 @4 @15) -> (hs : @167 @181 @15 @17) -> @167 @179 @198 @202 -@252 := @235 @2 -@254 := @45 @4 @15 -@256 := @173 @15 @17 -@264 := {v : @87} -> - {t : @126} -> {vs : @177} -> {ts : @178} -> (h : @254) -> (hs : @256) -> @173 @198 @202 -@265 := @252 @58 -@266 := @57 @183 -@268 := @45 @266 @15 -@269 := @57 @179 -@270 := @91 @269 -@278 := {t : @126} -> {vs : @177} -> {ts : @178} -> (h : @268) -> (hs : @256) -> @173 (@270 @4) @202 -@279 := @265 @60 -@280 := @57 @4 -@282 := @45 @280 @60 -@283 := @57 @181 -@284 := @91 @283 -@286 := @173 (@284 @4) -@287 := @200 @60 -@288 := @287 @15 -@293 := {vs : @177} -> {ts : @178} -> (h : @282) -> (hs : @256) -> @286 @288 -@294 := @279 @90 -@295 := @57 @15 -@297 := @45 @295 @60 -@298 := @174 @17 -@300 := @91 @266 @90 -@305 := {ts : @178} -> (h : @297) -> (hs : @298) -> @173 @300 @288 -@306 := @294 @128 -@308 := @91 @280 @90 -@309 := @173 @308 -@310 := @287 @128 -@313 := (h : @86) -> (hs : @175) -> @309 @310 -@314 := @306 @84 -@316 := @91 @295 @90 -@318 := @173 @316 @310 -@319 := (hs : @175) -> @318 -@320 := @314 @172 -@322 := @173 @93 @310 -@323 := @252 @52 -@324 := @5 @181 -@325 := @45 @324 -@326 := @325 @15 -@327 := @5 @187 -@328 := @91 @327 -@330 := @173 (@328 @4) -@336 := {t : @126} -> {vs : @177} -> {ts : @178} -> (h : @326) -> (hs : @256) -> @330 @202 -@337 := @323 @9 -@338 := @5 @183 -@340 := @45 @338 @9 -@341 := @5 @179 -@342 := @91 @341 -@344 := @173 (@342 @4) -@345 := @200 @9 -@346 := @345 @15 -@351 := {vs : @177} -> {ts : @178} -> (h : @340) -> (hs : @256) -> @344 @346 -@352 := @337 @93 -@353 := @309 @17 -@354 := @91 @324 -@355 := @354 @300 -@360 := {ts : @178} -> (h : @51) -> (hs : @353) -> @173 @355 @346 -@361 := @352 @310 -@362 := @91 @338 -@363 := @362 @308 -@364 := @173 @363 -@365 := @345 @310 -@368 := (h : @55) -> (hs : @318) -> @364 @365 -@369 := @361 @53 -@370 := @96 @316 -@372 := @173 @370 @365 -@373 := (hs : @322) -> @372 -@374 := @369 @320 -@376 := @173 @95 @365 -@377 := @252 @6 -@379 := @45 @341 @15 -@380 := @5 @193 -@381 := @91 @380 -@389 := {t : @126} -> {vs : @177} -> {ts : @178} -> (h : @379) -> (hs : @256) -> @173 (@381 @4) @202 -@390 := @377 @9 -@396 := {vs : @177} -> {ts : @178} -> (h : @325 @9) -> (hs : @256) -> @330 @346 -@397 := @390 @95 -@398 := @364 @17 -@399 := @342 @355 -@400 := @173 @399 -@404 := {ts : @178} -> (h : @340) -> (hs : @398) -> @400 @346 -@405 := @397 @365 -@406 := @354 @363 -@407 := @173 @406 -@408 := @345 @365 -@411 := (h : @51) -> (hs : @372) -> @407 @408 -@412 := @405 @49 -@413 := @362 @370 -@414 := @173 @413 -@416 := (hs : @376) -> @414 @408 -@417 := @412 @374 -@418 := @173 @97 -@419 := @418 @408 -@420 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.denote -@423 := @420 @4 @15 @17 -@424 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.__fits_0 -@427 := @424 @4 @15 @17 -@431 := Coverage.Prims.fixedWide @4 @15 @17 -@432 := Option.{0} -@433 := @432 @3 -@434 := @432 @56 -@435 := @99 @433 -@436 := @435 @434 -@437 := @435 @436 -@438 := @435 @437 -@439 := @435 @438 -@440 := LexLeanPreservation.encOption -@442 := @440 @3 @5 -@444 := @440 @56 @57 -@446 := LexLeanPreservation.encPair @433 -@449 := @446 @434 @442 @444 -@452 := @446 @436 @442 @449 -@455 := @446 @437 @442 @452 -@458 := @446 @438 @442 @455 -@462 := @446 @439 @442 @458 @431 -@466 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.root @4 @15 @17 -@467 := Bool -@468 := Ne.{1} -@469 := LexLeanPreservation.Obs -@470 := @468 @469 -@471 := LexLeanPreservation.Rel -@474 := @470 (@471 @17 @19) -@475 := LexLeanPreservation.Obs.stuck -@478 := (f : @467) -> (v : @87) -> @474 @475 -@480 := LexLeanPreservation.Rust.rel_ne_stuck @427 -@488 := (v : @87) -> @470 (@471 (@424 @183 @4 @15) @19) @475 -@489 := @480 @462 -@493 := @470 (@471 @427 @462) @475 -@494 := @176 @101 -@495 := LexLeanPreservation.Rust.FunSem -@496 := #9 -@502 := (n : @98) -> @495 @496 @193 @187 @19 @179 -@503 := Eq.{1} -@504 := @432 @123 -@505 := @503 @504 -@512 := LexLeanRuntime.index (@176 @123) @123 (LexLeanRuntime.instIndexableList @123) -@516 := @505 (@512 (@124 @496) @179) -@517 := Option.some.{0} -@518 := @517 @123 -@519 := @518 @181 -@520 := @516 @519 -@521 := #10 -@525 := @148 @521 @496 @193 @181 -@526 := LexLeanTarget.TargetSyntax.Function.types -@527 := @526 @179 -@528 := @525 @527 -@529 := @432 @494 -@530 := @503 @529 -@531 := LexLeanTarget.TargetSemantics.bindAll -@532 := LexLeanTarget.TargetSyntax.Function.parameters -@537 := @530 (@531 (@532 @187) @179 @114) -@538 := @517 @494 -@539 := @538 @181 -@540 := @537 @539 -@541 := @432 @467 -@542 := @503 @541 -@543 := LexLeanPreservation.Rust.fnFallible -@544 := #11 -@547 := @542 (@543 @544 @496) -@548 := @517 @467 -@549 := @548 @181 -@550 := @547 @549 -@551 := LexLeanPreservation.RunConv -@552 := #13 -@556 := @551 @552 @521 @193 @181 -@558 := @470 @179 @475 -@559 := Exists.{1} -@560 := LexLeanPreservation.Rust.ROut -@561 := @559 @560 -@562 := And -@563 := LexLeanPreservation.Rust.RealizesFn -@567 := @562 (@563 @496 @193 @19) -@568 := LexLeanPreservation.Rust.RCI -@570 := @568 #15 -@571 := LexLeanPreservation.Rust.fnIdent -@572 := @571 @552 -@579 := (hne : @558) -> @561 (fun (ro : @560) => @567 (@570 @572 @544 @19)) -@594 := {p : @10} -> - {c : @11} -> - {A : @12} -> - {f : @98} -> - {fn : @123} -> - {args : @177} -> - {env : @494} -> - {F : @467} -> - {o : @469} -> - (hB : @502) -> - (hfn : @520) -> (hwt : @528) -> (hbind : @540) -> (hF : @550) -> (hA : @556) -> @579 -@596 := LexLeanPreservation.Rust.compose @0 -@597 := @495 @0 -@602 := (n : @98) -> @597 @193 @187 @19 @179 -@603 := @512 @125 -@606 := @505 (@603 @179) @519 -@610 := @159 @496 @193 @181 @527 -@611 := @551 @0 -@614 := @611 @521 @193 @181 -@628 := {c : @11} -> - {A : @12} -> - {f : @98} -> - {fn : @123} -> - {args : @177} -> - {env : @494} -> - {F : @467} -> - {o : @469} -> - (hB : @602) -> - (hfn : @606) -> (hwt : @610) -> (hbind : @540) -> (hF : @550) -> (hA : @614) -> @579 -@629 := @596 @1 -@630 := @597 @1 -@634 := (n : @98) -> @630 @187 @19 @179 -@637 := @167 @193 @181 @527 -@638 := @543 @1 -@641 := @542 (@638 @496) @549 -@642 := @568 @1 -@652 := (hbind : @540) -> - (hF : @641) -> (hA : @614) -> (hne : @558) -> @561 (fun (ro : @560) => @567 (@642 @572 @544 @19)) -@662 := {A : @12} -> - {f : @98} -> - {fn : @123} -> - {args : @177} -> - {env : @494} -> {F : @467} -> {o : @469} -> (hB : @634) -> (hfn : @606) -> (hwt : @637) -> @652 -@663 := @629 @2 -@665 := @630 @2 @19 -@667 := (n : @98) -> @665 @179 -@668 := @173 @181 -@669 := @668 @527 -@678 := {f : @98} -> - {fn : @123} -> - {args : @177} -> - {env : @494} -> {F : @467} -> {o : @469} -> (hB : @667) -> (hfn : @606) -> (hwt : @669) -> @652 -@679 := @663 @111 -@681 := (n : @98) -> @665 @111 -@682 := @603 @111 -@683 := @505 @682 -@684 := @683 @519 -@685 := @638 @111 -@686 := @542 @685 -@687 := @686 @549 -@688 := @611 @111 -@690 := @688 @193 @181 -@692 := @642 (@571 @111) -@700 := (hF : @687) -> (hA : @690) -> (hne : @558) -> @561 (fun (ro : @560) => @567 (@692 @544 @19)) -@709 := {fn : @123} -> - {args : @177} -> - {env : @494} -> - {F : @467} -> {o : @469} -> (hB : @681) -> (hfn : @684) -> (hwt : @669) -> (hbind : @540) -> @700 -@710 := @679 @143 -@712 := @683 (@518 @143) -@713 := @526 @143 -@714 := @668 @713 -@716 := @531 (@532 @143) -@728 := {args : @177} -> - {env : @494} -> - {F : @467} -> - {o : @469} -> - (hB : @681) -> (hfn : @712) -> (hwt : @714) -> (hbind : @530 (@716 @179 @114) @539) -> @700 -@729 := @710 @97 -@732 := @381 (@328 (@270 @90)) -@734 := @173 @732 @713 -@736 := @91 (@5 @496) -@741 := @736 (@381 (@91 (@57 @187) @90)) -@745 := @530 (@716 @741 @114) @539 -@747 := @91 (@5 @544) -@749 := @91 (@5 @521) -@754 := @747 (@749 (@91 (@57 @496) @90)) -@756 := @688 @754 @181 -@759 := @91 (@5 #14) -@761 := @91 (@5 @552) -@762 := #12 -@782 := {env : @494} -> - {F : @467} -> - {o : @469} -> - (hB : @681) -> - (hfn : @712) -> - (hwt : @734) -> - (hbind : @745) -> - (hF : @687) -> - (hA : @756) -> - (hne : @558) -> @561 (fun (ro : @560) => @567 (@692 (@759 (@761 (@91 (@57 @762) @90))) @19)) -@783 := @729 @121 -@786 := @328 (@342 (@284 @90)) -@788 := @173 @786 @713 -@802 := @530 (@716 @732 @114) (@538 (@115 (@106 @269) (@115 (@109 @327) (@115 (@112 @380) @114)))) -@807 := @749 (@736 (@91 (@57 @193) @90)) -@809 := @688 @807 @181 -@811 := @91 (@5 @762) -@830 := {F : @467} -> - {o : @469} -> - (hB : @681) -> - (hfn : @712) -> - (hwt : @788) -> - (hbind : @802) -> - (hF : @687) -> - (hA : @809) -> - (hne : @558) -> @561 (fun (ro : @560) => @567 (@692 (@761 (@811 (@91 (@57 @544) @90))) @19)) -@831 := @783 @122 -@832 := @400 @713 -@846 := @530 (@716 @786 @114) (@538 (@115 (@106 @283) (@115 (@109 @341) (@115 (@112 @327) @114)))) -@848 := @686 (@548 @122) -@850 := @688 @741 @181 -@851 := @563 @122 -@872 := {o : @469} -> - (hB : @681) -> - (hfn : @712) -> - (hwt : @832) -> - (hbind : @846) -> - (hF : @848) -> - (hA : @850) -> - (hne : @558) -> - @561 (fun (ro : @560) => @562 (@851 @193 @19) (@692 (@811 (@747 (@91 (@57 @521) @90))) @19)) -@873 := @831 @423 -@874 := @407 @713 -@888 := @530 (@716 @399 @114) (@538 (@115 (@106 @266) (@115 (@109 @324) (@115 (@112 @341) @114)))) -@889 := @688 @732 -@892 := @420 @193 @187 @179 -@893 := @889 @892 -@896 := @420 @496 @193 @187 -@916 := (hB : @681) -> - (hfn : @712) -> - (hwt : @874) -> - (hbind : @888) -> - (hF : @848) -> - (hA : @893) -> - (hne : @470 @896 @475) -> - @561 (fun (ro : @560) => @562 (@851 (@420 @544 @521 @496) @19) (@692 @754 @19)) -@917 := @873 @147 -@918 := @414 @713 -@932 := @530 (@716 @406 @114) (@538 (@115 (@106 @280) (@115 (@109 @338) (@115 (@112 @324) @114)))) -@933 := @688 @786 -@936 := @420 @187 @179 @181 -@956 := (hfn : @712) -> - (hwt : @918) -> - (hbind : @932) -> - (hF : @848) -> - (hA : @933 @936) -> - (hne : @470 @892 @475) -> - @561 (fun (ro : @560) => @562 (@851 (@420 @521 @496 @193) @19) (@692 @807 @19)) -@957 := Eq.refl.{1} -@960 := @917 (@957 @504 @682) -@961 := @418 @713 -@975 := @530 (@716 @413 @114) (@538 (@115 (@106 @295) (@115 (@109 @6) (@115 (@112 @338) @114)))) -@976 := @688 @399 -@979 := @420 @179 @181 @183 -@995 := (hwt : @961) -> - (hbind : @975) -> - (hF : @848) -> - (hA : @976 @979) -> - (hne : @470 @936 @475) -> @561 (fun (ro : @560) => @562 (@851 @896 @19) (@692 @741 @19)) -@996 := @960 @417 -@998 := @716 @97 @114 -@1001 := @530 @998 (@538 @121) -@1002 := @688 @406 -@1005 := @420 @181 @183 @4 -@1020 := (hbind : @1001) -> - (hF : @848) -> - (hA : @1002 @1005) -> - (hne : @470 @979 @475) -> @561 (fun (ro : @560) => @562 (@851 @892 @19) (@692 @732 @19)) -@1023 := @996 (@957 @529 @998) -@1024 := @688 @413 -@1027 := @420 @183 @4 @15 -@1041 := (hF : @848) -> - (hA : @1024 @1027) -> - (hne : @470 @1005 @475) -> @561 (fun (ro : @560) => @562 (@851 @936 @19) (@692 @786 @19)) -@1044 := @1023 (@957 @541 @685) -@1058 := (hA : @688 @97 @423) -> - (hne : @470 @1027 @475) -> @561 (fun (ro : @560) => @562 (@851 @979 @19) (@692 @399 @19)) -@1059 := @1044 @466 -@1070 := (hne : @470 @423 @475) -> @561 (fun (ro : @560) => @562 (@851 @1005 @19) (@692 @406 @19)) -@1071 := @1059 @489 -@1077 := @562 (@851 @1027 @19) (@692 @413 @19) -@1079 := @561 (fun (ro : @560) => @1077) -@1081 := @561 (fun (__e_ro : @560) => @1077) -@1082 := LexLeanPreservation.Rust.RepresentableL -@1083 := @5 @17 -@1085 := @91 @61 @90 -@1089 := @1082 (@94 (@91 @1083 @1085)) -@1090 := (__e_hrep : @1089) -> @1081 -@1091 := fun (__e_hrep : @1089) => @1071 -@1092 := (c : @56) -> @1090 -@1093 := fun (c : @56) => @1091 -@1094 := (b : @3) -> @1092 -@1095 := fun (b : @3) => @1093 -@1096 := (a : @3) -> @1094 -@1097 := fun (a : @3) => @1095 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R23/RustCore.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R23/RustCore.lean deleted file mode 100644 index d202b11b6..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R23/RustCore.lean +++ /dev/null @@ -1,33 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.RustCore -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1, 2], types := [(.fixed .i64), (.fixed .i64), (.fixed .u64)], result := (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.option (.fixed .u64))))))), - body := (.build .pair (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.option (.fixed .u64))))))) [(.prim .checkedAdd [(.var 0), (.var 1)]), (.build .pair (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.option (.fixed .u64)))))) [(.prim .checkedSub [(.var 0), (.var 1)]), (.build .pair (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.option (.fixed .u64))))) [(.prim .checkedMul [(.var 0), (.var 1)]), (.build .pair (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.option (.fixed .u64)))) [(.prim .checkedQuot [(.var 0), (.var 1)]), (.build .pair (.pair (.option (.fixed .i64)) (.option (.fixed .u64))) [(.prim .checkedNeg [(.var 0)]), (.prim .checkedAdd [(.var 2), (.value (.fixed .u64) (.u64 1))])])])])])]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .core, items := [ - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.fixed .i64) }, { pattern := (.bind (.generated .binding 1)), type := (.fixed .i64) }, { pattern := (.bind (.generated .binding 2)), type := (.fixed .u64) }] (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.option (.fixed .u64))))))) (.mk [] (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedAdd .i64)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedSub .i64)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedMul .i64)) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedQuot .i64)) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 0)))] (.call (.runtime (.checkedNeg .i64)) [(.move (.generated .operand 9))] false))) (.block (.mk [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 11)) none (.lit (.fixed .u64 1)))] (.call (.runtime (.checkedAdd .u64)) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false))))))))))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [], (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedAdd .i64)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedSub .i64)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedMul .i64)) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedQuot .i64)) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 0)))] (.call (.runtime (.checkedNeg .i64)) [(.move (.generated .operand 9))] false))) (.block (.mk [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 11)) none (.lit (.fixed .u64 1)))] (.call (.runtime (.checkedAdd .u64)) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false)))))))), [(2, (.fixed .u64), (some 2)), (1, (.fixed .i64), (some 1)), (0, (.fixed .i64), (some 0))], rfl, rfl, - (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.checkedAdd .i64)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false)) (Corr.prim (ts := [(.fixed .i64), (.fixed .i64)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.checkedSub .i64)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false)) (Corr.prim (ts := [(.fixed .i64), (.fixed .i64)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.checkedMul .i64)) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false)) (Corr.prim (ts := [(.fixed .i64), (.fixed .i64)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.checkedQuot .i64)) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false)) (Corr.prim (ts := [(.fixed .i64), (.fixed .i64)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 0)))]) (tail := (.call (.runtime (.checkedNeg .i64)) [(.move (.generated .operand 9))] false)) (Corr.prim (ts := [(.fixed .i64)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 11)) none (.lit (.fixed .u64 1)))]) (tail := (.call (.runtime (.checkedAdd .u64)) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false)) (Corr.prim (ts := [(.fixed .u64), (.fixed .u64)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | _ + 1 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.RustCore diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R23/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R23/RustStd.lean deleted file mode 100644 index 91a310f6d..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R23/RustStd.lean +++ /dev/null @@ -1,33 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1, 2], types := [(.fixed .i64), (.fixed .i64), (.fixed .u64)], result := (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.option (.fixed .u64))))))), - body := (.build .pair (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.option (.fixed .u64))))))) [(.prim .checkedAdd [(.var 0), (.var 1)]), (.build .pair (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.option (.fixed .u64)))))) [(.prim .checkedSub [(.var 0), (.var 1)]), (.build .pair (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.option (.fixed .u64))))) [(.prim .checkedMul [(.var 0), (.var 1)]), (.build .pair (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.option (.fixed .u64)))) [(.prim .checkedQuot [(.var 0), (.var 1)]), (.build .pair (.pair (.option (.fixed .i64)) (.option (.fixed .u64))) [(.prim .checkedNeg [(.var 0)]), (.prim .checkedAdd [(.var 2), (.value (.fixed .u64) (.u64 1))])])])])])]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.fixed .i64) }, { pattern := (.bind (.generated .binding 1)), type := (.fixed .i64) }, { pattern := (.bind (.generated .binding 2)), type := (.fixed .u64) }] (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.pair (.option (.fixed .i64)) (.option (.fixed .u64))))))) (.mk [] (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedAdd .i64)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedSub .i64)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedMul .i64)) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedQuot .i64)) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 0)))] (.call (.runtime (.checkedNeg .i64)) [(.move (.generated .operand 9))] false))) (.block (.mk [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 11)) none (.lit (.fixed .u64 1)))] (.call (.runtime (.checkedAdd .u64)) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false))))))))))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [], (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedAdd .i64)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedSub .i64)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedMul .i64)) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedQuot .i64)) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 0)))] (.call (.runtime (.checkedNeg .i64)) [(.move (.generated .operand 9))] false))) (.block (.mk [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 11)) none (.lit (.fixed .u64 1)))] (.call (.runtime (.checkedAdd .u64)) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false)))))))), [(2, (.fixed .u64), (some 2)), (1, (.fixed .i64), (some 1)), (0, (.fixed .i64), (some 0))], rfl, rfl, - (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.checkedAdd .i64)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false)) (Corr.prim (ts := [(.fixed .i64), (.fixed .i64)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.checkedSub .i64)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false)) (Corr.prim (ts := [(.fixed .i64), (.fixed .i64)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.checkedMul .i64)) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false)) (Corr.prim (ts := [(.fixed .i64), (.fixed .i64)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.checkedQuot .i64)) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false)) (Corr.prim (ts := [(.fixed .i64), (.fixed .i64)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 0)))]) (tail := (.call (.runtime (.checkedNeg .i64)) [(.move (.generated .operand 9))] false)) (Corr.prim (ts := [(.fixed .i64)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 11)) none (.lit (.fixed .u64 1)))]) (tail := (.call (.runtime (.checkedAdd .u64)) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false)) (Corr.prim (ts := [(.fixed .u64), (.fixed .u64)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | _ + 1 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R24/Compose/RustCore.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R24/Compose/RustCore.lex.tex deleted file mode 100644 index fa89a1a3a..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R24/Compose/RustCore.lex.tex +++ /dev/null @@ -1,546 +0,0 @@ -\begin{lexlean}{RustCore} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.Compose.RustCore} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.RustCore, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.Compose.RustCore.root : @1100 := @1101 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.Compose.RustCore.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.RustCore.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.RustCore.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.RustCore.flags -@3 := UInt16 -@4 := #3 -@5 := LexLeanTarget.TargetSyntax.Value.u16 -@6 := @5 @4 -@7 := LexLeanTarget.TargetSyntax.Ty.fixed -@9 := @7 LexLeanTarget.TargetSyntax.IntKind.u16 -@10 := LexLeanTarget.TargetSyntax.Program -@11 := LexLeanPreservation.Rust.RCrate -@12 := LexLeanPreservation.Rust.Flags -@13 := LexLeanPreservation.Rust.WT -@14 := @13 @4 -@15 := #2 -@16 := @14 @15 -@17 := #1 -@18 := @16 @17 -@19 := #0 -@20 := @5 @19 -@26 := {p : @10} -> {c : @11} -> {A : @12} -> (x : @3) -> @18 @20 @9 -@28 := LexLeanPreservation.Rust.wt_u16 @0 -@29 := @13 @0 -@31 := @29 @15 @17 -@36 := {c : @11} -> {A : @12} -> (x : @3) -> @31 @20 @9 -@37 := @28 @1 -@38 := @29 @1 -@39 := @38 @17 -@43 := {A : @12} -> (x : @3) -> @39 @20 @9 -@44 := @37 @2 -@45 := @38 @2 -@48 := (x : @3) -> @45 @20 @9 -@49 := @44 @4 -@51 := @45 @6 @9 -@52 := @5 @15 -@53 := @44 @15 -@55 := @45 @52 @9 -@56 := UInt32 -@57 := LexLeanTarget.TargetSyntax.Value.u32 -@58 := @57 @17 -@60 := @7 LexLeanTarget.TargetSyntax.IntKind.u32 -@61 := @57 @19 -@67 := {p : @10} -> {c : @11} -> {A : @12} -> (x : @56) -> @18 @61 @60 -@69 := LexLeanPreservation.Rust.wt_u32 @0 -@74 := {c : @11} -> {A : @12} -> (x : @56) -> @31 @61 @60 -@75 := @69 @1 -@79 := {A : @12} -> (x : @56) -> @39 @61 @60 -@80 := @75 @2 -@83 := (x : @56) -> @45 @61 @60 -@84 := @80 @17 -@86 := @45 @58 @60 -@87 := LexLeanTarget.TargetSyntax.Value -@88 := List.nil.{0} -@89 := List.cons.{0} -@90 := @88 @87 -@91 := @89 @87 -@93 := @91 @58 @90 -@94 := @91 @52 -@95 := @94 @93 -@96 := @91 @6 -@97 := @96 @95 -@98 := Nat -@99 := Prod.{0, 0} -@101 := @99 @98 @87 -@102 := 2 -@105 := Prod.mk.{0, 0} @98 @87 -@106 := @105 @102 -@107 := @106 @58 -@109 := @105 1 -@110 := @109 @52 -@111 := 0 -@112 := @105 @111 -@113 := @112 @6 -@114 := @88 @101 -@115 := @89 @101 -@117 := @115 @113 @114 -@119 := @115 @110 @117 -@121 := @115 @107 @119 -@122 := Bool.false -@123 := LexLeanTarget.TargetSyntax.Function -@124 := LexLeanTarget.TargetSyntax.Program.functions -@125 := @124 @0 -@126 := LexLeanTarget.TargetSyntax.Ty -@127 := @88 @98 -@128 := @88 @126 -@129 := LexLeanTarget.TargetSyntax.Ty.unit -@130 := LexLeanTarget.TargetSyntax.Value.unit -@133 := LexLeanTarget.TargetSyntax.Expr.value @129 @130 -@138 := LexLeanTarget.TargetSyntax.Function.mk @127 @128 @129 @133 -@143 := List.getD.{0} @123 @125 @111 @138 -@147 := fun (__e_n : @98) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.RustCore.root @19 @111 -@148 := LexLeanPreservation.Rust.WTL -@156 := {p : @10} -> {c : @11} -> {A : @12} -> @148 @15 @17 @19 @90 @128 -@158 := LexLeanPreservation.Rust.wtl_nil @0 -@159 := @148 @0 -@165 := {c : @11} -> {A : @12} -> @159 @17 @19 @90 @128 -@166 := @158 @1 -@167 := @159 @1 -@171 := {A : @12} -> @167 @19 @90 @128 -@172 := @166 @2 -@173 := @167 @2 -@174 := @173 @90 -@175 := @174 @128 -@176 := List.{0} -@177 := @176 @87 -@178 := @176 @126 -@179 := #6 -@180 := @13 @179 -@181 := #5 -@182 := @180 @181 -@183 := #4 -@186 := @182 @183 @4 @15 -@187 := #7 -@192 := @148 @187 @179 @181 @15 @17 -@193 := #8 -@196 := @148 @193 @187 @179 -@198 := @91 @181 @4 -@199 := @196 @198 -@200 := @89 @126 -@202 := @200 @183 @15 -@212 := {p : @10} -> - {c : @11} -> - {A : @12} -> - {v : @87} -> {t : @126} -> {vs : @177} -> {ts : @178} -> (h : @186) -> (hs : @192) -> @199 @202 -@214 := LexLeanPreservation.Rust.wtl_cons @0 -@234 := {c : @11} -> - {A : @12} -> - {v : @87} -> - {t : @126} -> - {vs : @177} -> - {ts : @178} -> - (h : @29 @181 @183 @4 @15) -> (hs : @159 @179 @181 @15 @17) -> @159 @187 @179 @198 @202 -@235 := @214 @1 -@251 := {A : @12} -> - {v : @87} -> - {t : @126} -> - {vs : @177} -> - {ts : @178} -> (h : @38 @183 @4 @15) -> (hs : @167 @181 @15 @17) -> @167 @179 @198 @202 -@252 := @235 @2 -@254 := @45 @4 @15 -@256 := @173 @15 @17 -@264 := {v : @87} -> - {t : @126} -> {vs : @177} -> {ts : @178} -> (h : @254) -> (hs : @256) -> @173 @198 @202 -@265 := @252 @58 -@266 := @57 @183 -@268 := @45 @266 @15 -@269 := @57 @179 -@270 := @91 @269 -@278 := {t : @126} -> {vs : @177} -> {ts : @178} -> (h : @268) -> (hs : @256) -> @173 (@270 @4) @202 -@279 := @265 @60 -@280 := @57 @4 -@282 := @45 @280 @60 -@283 := @57 @181 -@284 := @91 @283 -@286 := @173 (@284 @4) -@287 := @200 @60 -@288 := @287 @15 -@293 := {vs : @177} -> {ts : @178} -> (h : @282) -> (hs : @256) -> @286 @288 -@294 := @279 @90 -@295 := @57 @15 -@297 := @45 @295 @60 -@298 := @174 @17 -@300 := @91 @266 @90 -@305 := {ts : @178} -> (h : @297) -> (hs : @298) -> @173 @300 @288 -@306 := @294 @128 -@308 := @91 @280 @90 -@309 := @173 @308 -@310 := @287 @128 -@313 := (h : @86) -> (hs : @175) -> @309 @310 -@314 := @306 @84 -@316 := @91 @295 @90 -@318 := @173 @316 @310 -@319 := (hs : @175) -> @318 -@320 := @314 @172 -@322 := @173 @93 @310 -@323 := @252 @52 -@324 := @5 @181 -@325 := @45 @324 -@326 := @325 @15 -@327 := @5 @187 -@328 := @91 @327 -@330 := @173 (@328 @4) -@336 := {t : @126} -> {vs : @177} -> {ts : @178} -> (h : @326) -> (hs : @256) -> @330 @202 -@337 := @323 @9 -@338 := @5 @183 -@340 := @45 @338 @9 -@341 := @5 @179 -@342 := @91 @341 -@344 := @173 (@342 @4) -@345 := @200 @9 -@346 := @345 @15 -@351 := {vs : @177} -> {ts : @178} -> (h : @340) -> (hs : @256) -> @344 @346 -@352 := @337 @93 -@353 := @309 @17 -@354 := @91 @324 -@355 := @354 @300 -@360 := {ts : @178} -> (h : @51) -> (hs : @353) -> @173 @355 @346 -@361 := @352 @310 -@362 := @91 @338 -@363 := @362 @308 -@364 := @173 @363 -@365 := @345 @310 -@368 := (h : @55) -> (hs : @318) -> @364 @365 -@369 := @361 @53 -@370 := @96 @316 -@372 := @173 @370 @365 -@373 := (hs : @322) -> @372 -@374 := @369 @320 -@376 := @173 @95 @365 -@377 := @252 @6 -@379 := @45 @341 @15 -@380 := @5 @193 -@381 := @91 @380 -@389 := {t : @126} -> {vs : @177} -> {ts : @178} -> (h : @379) -> (hs : @256) -> @173 (@381 @4) @202 -@390 := @377 @9 -@396 := {vs : @177} -> {ts : @178} -> (h : @325 @9) -> (hs : @256) -> @330 @346 -@397 := @390 @95 -@398 := @364 @17 -@399 := @342 @355 -@400 := @173 @399 -@404 := {ts : @178} -> (h : @340) -> (hs : @398) -> @400 @346 -@405 := @397 @365 -@406 := @354 @363 -@407 := @173 @406 -@408 := @345 @365 -@411 := (h : @51) -> (hs : @372) -> @407 @408 -@412 := @405 @49 -@413 := @362 @370 -@414 := @173 @413 -@416 := (hs : @376) -> @414 @408 -@417 := @412 @374 -@418 := @173 @97 -@419 := @418 @408 -@420 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.denote -@423 := @420 @4 @15 @17 -@424 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.__fits_0 -@427 := @424 @4 @15 @17 -@431 := Coverage.Prims.bits @4 @15 @17 -@432 := Option.{0} -@433 := @432 @3 -@434 := Bool -@435 := @99 @433 -@436 := @435 @434 -@437 := @435 @436 -@438 := @99 @3 -@439 := @438 @437 -@440 := @438 @439 -@441 := @438 @440 -@444 := LexLeanPreservation.encOption @3 @5 -@445 := LexLeanTarget.TargetSyntax.Value.bool -@446 := LexLeanPreservation.encPair -@447 := @446 @433 -@450 := @447 @434 @444 @445 -@453 := @447 @436 @444 @450 -@454 := @446 @3 -@457 := @454 @437 @5 @453 -@460 := @454 @439 @5 @457 -@463 := @454 @440 @5 @460 -@467 := @454 @441 @5 @463 @431 -@471 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.root @4 @15 @17 -@472 := Ne.{1} -@473 := LexLeanPreservation.Obs -@474 := @472 @473 -@475 := LexLeanPreservation.Rel -@478 := @474 (@475 @17 @19) -@479 := LexLeanPreservation.Obs.stuck -@482 := (f : @434) -> (v : @87) -> @478 @479 -@484 := LexLeanPreservation.Rust.rel_ne_stuck @427 -@492 := (v : @87) -> @474 (@475 (@424 @183 @4 @15) @19) @479 -@493 := @484 @467 -@497 := @474 (@475 @427 @467) @479 -@498 := @176 @101 -@499 := LexLeanPreservation.Rust.FunSem -@500 := #9 -@506 := (n : @98) -> @499 @500 @193 @187 @19 @179 -@507 := Eq.{1} -@508 := @432 @123 -@509 := @507 @508 -@516 := LexLeanRuntime.index (@176 @123) @123 (LexLeanRuntime.instIndexableList @123) -@520 := @509 (@516 (@124 @500) @179) -@521 := Option.some.{0} -@522 := @521 @123 -@523 := @522 @181 -@524 := @520 @523 -@525 := #10 -@529 := @148 @525 @500 @193 @181 -@530 := LexLeanTarget.TargetSyntax.Function.types -@531 := @530 @179 -@532 := @529 @531 -@533 := @432 @498 -@534 := @507 @533 -@535 := LexLeanTarget.TargetSemantics.bindAll -@536 := LexLeanTarget.TargetSyntax.Function.parameters -@541 := @534 (@535 (@536 @187) @179 @114) -@542 := @521 @498 -@543 := @542 @181 -@544 := @541 @543 -@545 := @432 @434 -@546 := @507 @545 -@547 := LexLeanPreservation.Rust.fnFallible -@548 := #11 -@551 := @546 (@547 @548 @500) -@552 := @521 @434 -@553 := @552 @181 -@554 := @551 @553 -@555 := LexLeanPreservation.RunConv -@556 := #13 -@560 := @555 @556 @525 @193 @181 -@562 := @474 @179 @479 -@563 := Exists.{1} -@564 := LexLeanPreservation.Rust.ROut -@565 := @563 @564 -@566 := And -@567 := LexLeanPreservation.Rust.RealizesFn -@571 := @566 (@567 @500 @193 @19) -@572 := LexLeanPreservation.Rust.RCI -@574 := @572 #15 -@575 := LexLeanPreservation.Rust.fnIdent -@576 := @575 @556 -@583 := (hne : @562) -> @565 (fun (ro : @564) => @571 (@574 @576 @548 @19)) -@598 := {p : @10} -> - {c : @11} -> - {A : @12} -> - {f : @98} -> - {fn : @123} -> - {args : @177} -> - {env : @498} -> - {F : @434} -> - {o : @473} -> - (hB : @506) -> - (hfn : @524) -> (hwt : @532) -> (hbind : @544) -> (hF : @554) -> (hA : @560) -> @583 -@600 := LexLeanPreservation.Rust.compose @0 -@601 := @499 @0 -@606 := (n : @98) -> @601 @193 @187 @19 @179 -@607 := @516 @125 -@610 := @509 (@607 @179) @523 -@614 := @159 @500 @193 @181 @531 -@615 := @555 @0 -@618 := @615 @525 @193 @181 -@632 := {c : @11} -> - {A : @12} -> - {f : @98} -> - {fn : @123} -> - {args : @177} -> - {env : @498} -> - {F : @434} -> - {o : @473} -> - (hB : @606) -> - (hfn : @610) -> (hwt : @614) -> (hbind : @544) -> (hF : @554) -> (hA : @618) -> @583 -@633 := @600 @1 -@634 := @601 @1 -@638 := (n : @98) -> @634 @187 @19 @179 -@641 := @167 @193 @181 @531 -@642 := @547 @1 -@645 := @546 (@642 @500) @553 -@646 := @572 @1 -@656 := (hbind : @544) -> - (hF : @645) -> (hA : @618) -> (hne : @562) -> @565 (fun (ro : @564) => @571 (@646 @576 @548 @19)) -@666 := {A : @12} -> - {f : @98} -> - {fn : @123} -> - {args : @177} -> - {env : @498} -> {F : @434} -> {o : @473} -> (hB : @638) -> (hfn : @610) -> (hwt : @641) -> @656 -@667 := @633 @2 -@669 := @634 @2 @19 -@671 := (n : @98) -> @669 @179 -@672 := @173 @181 -@673 := @672 @531 -@682 := {f : @98} -> - {fn : @123} -> - {args : @177} -> - {env : @498} -> {F : @434} -> {o : @473} -> (hB : @671) -> (hfn : @610) -> (hwt : @673) -> @656 -@683 := @667 @111 -@685 := (n : @98) -> @669 @111 -@686 := @607 @111 -@687 := @509 @686 -@688 := @687 @523 -@689 := @642 @111 -@690 := @546 @689 -@691 := @690 @553 -@692 := @615 @111 -@694 := @692 @193 @181 -@696 := @646 (@575 @111) -@704 := (hF : @691) -> (hA : @694) -> (hne : @562) -> @565 (fun (ro : @564) => @571 (@696 @548 @19)) -@713 := {fn : @123} -> - {args : @177} -> - {env : @498} -> - {F : @434} -> {o : @473} -> (hB : @685) -> (hfn : @688) -> (hwt : @673) -> (hbind : @544) -> @704 -@714 := @683 @143 -@716 := @687 (@522 @143) -@717 := @530 @143 -@718 := @672 @717 -@720 := @535 (@536 @143) -@732 := {args : @177} -> - {env : @498} -> - {F : @434} -> - {o : @473} -> - (hB : @685) -> (hfn : @716) -> (hwt : @718) -> (hbind : @534 (@720 @179 @114) @543) -> @704 -@733 := @714 @97 -@736 := @381 (@328 (@270 @90)) -@738 := @173 @736 @717 -@740 := @91 (@5 @500) -@745 := @740 (@381 (@91 (@57 @187) @90)) -@749 := @534 (@720 @745 @114) @543 -@751 := @91 (@5 @548) -@753 := @91 (@5 @525) -@758 := @751 (@753 (@91 (@57 @500) @90)) -@760 := @692 @758 @181 -@763 := @91 (@5 #14) -@765 := @91 (@5 @556) -@766 := #12 -@786 := {env : @498} -> - {F : @434} -> - {o : @473} -> - (hB : @685) -> - (hfn : @716) -> - (hwt : @738) -> - (hbind : @749) -> - (hF : @691) -> - (hA : @760) -> - (hne : @562) -> @565 (fun (ro : @564) => @571 (@696 (@763 (@765 (@91 (@57 @766) @90))) @19)) -@787 := @733 @121 -@790 := @328 (@342 (@284 @90)) -@792 := @173 @790 @717 -@806 := @534 (@720 @736 @114) (@542 (@115 (@106 @269) (@115 (@109 @327) (@115 (@112 @380) @114)))) -@811 := @753 (@740 (@91 (@57 @193) @90)) -@813 := @692 @811 @181 -@815 := @91 (@5 @766) -@834 := {F : @434} -> - {o : @473} -> - (hB : @685) -> - (hfn : @716) -> - (hwt : @792) -> - (hbind : @806) -> - (hF : @691) -> - (hA : @813) -> - (hne : @562) -> @565 (fun (ro : @564) => @571 (@696 (@765 (@815 (@91 (@57 @548) @90))) @19)) -@835 := @787 @122 -@836 := @400 @717 -@850 := @534 (@720 @790 @114) (@542 (@115 (@106 @283) (@115 (@109 @341) (@115 (@112 @327) @114)))) -@852 := @690 (@552 @122) -@854 := @692 @745 @181 -@855 := @567 @122 -@876 := {o : @473} -> - (hB : @685) -> - (hfn : @716) -> - (hwt : @836) -> - (hbind : @850) -> - (hF : @852) -> - (hA : @854) -> - (hne : @562) -> - @565 (fun (ro : @564) => @566 (@855 @193 @19) (@696 (@815 (@751 (@91 (@57 @525) @90))) @19)) -@877 := @835 @423 -@878 := @407 @717 -@892 := @534 (@720 @399 @114) (@542 (@115 (@106 @266) (@115 (@109 @324) (@115 (@112 @341) @114)))) -@893 := @692 @736 -@896 := @420 @193 @187 @179 -@897 := @893 @896 -@900 := @420 @500 @193 @187 -@920 := (hB : @685) -> - (hfn : @716) -> - (hwt : @878) -> - (hbind : @892) -> - (hF : @852) -> - (hA : @897) -> - (hne : @474 @900 @479) -> - @565 (fun (ro : @564) => @566 (@855 (@420 @548 @525 @500) @19) (@696 @758 @19)) -@921 := @877 @147 -@922 := @414 @717 -@936 := @534 (@720 @406 @114) (@542 (@115 (@106 @280) (@115 (@109 @338) (@115 (@112 @324) @114)))) -@937 := @692 @790 -@940 := @420 @187 @179 @181 -@960 := (hfn : @716) -> - (hwt : @922) -> - (hbind : @936) -> - (hF : @852) -> - (hA : @937 @940) -> - (hne : @474 @896 @479) -> - @565 (fun (ro : @564) => @566 (@855 (@420 @525 @500 @193) @19) (@696 @811 @19)) -@961 := Eq.refl.{1} -@964 := @921 (@961 @508 @686) -@965 := @418 @717 -@979 := @534 (@720 @413 @114) (@542 (@115 (@106 @295) (@115 (@109 @6) (@115 (@112 @338) @114)))) -@980 := @692 @399 -@983 := @420 @179 @181 @183 -@999 := (hwt : @965) -> - (hbind : @979) -> - (hF : @852) -> - (hA : @980 @983) -> - (hne : @474 @940 @479) -> @565 (fun (ro : @564) => @566 (@855 @900 @19) (@696 @745 @19)) -@1000 := @964 @417 -@1002 := @720 @97 @114 -@1005 := @534 @1002 (@542 @121) -@1006 := @692 @406 -@1009 := @420 @181 @183 @4 -@1024 := (hbind : @1005) -> - (hF : @852) -> - (hA : @1006 @1009) -> - (hne : @474 @983 @479) -> @565 (fun (ro : @564) => @566 (@855 @896 @19) (@696 @736 @19)) -@1027 := @1000 (@961 @533 @1002) -@1028 := @692 @413 -@1031 := @420 @183 @4 @15 -@1045 := (hF : @852) -> - (hA : @1028 @1031) -> - (hne : @474 @1009 @479) -> @565 (fun (ro : @564) => @566 (@855 @940 @19) (@696 @790 @19)) -@1048 := @1027 (@961 @545 @689) -@1062 := (hA : @692 @97 @423) -> - (hne : @474 @1031 @479) -> @565 (fun (ro : @564) => @566 (@855 @983 @19) (@696 @399 @19)) -@1063 := @1048 @471 -@1074 := (hne : @474 @423 @479) -> @565 (fun (ro : @564) => @566 (@855 @1009 @19) (@696 @406 @19)) -@1075 := @1063 @493 -@1081 := @566 (@855 @1031 @19) (@696 @413 @19) -@1083 := @565 (fun (ro : @564) => @1081) -@1085 := @565 (fun (__e_ro : @564) => @1081) -@1086 := LexLeanPreservation.Rust.RepresentableL -@1087 := @5 @17 -@1089 := @91 @61 @90 -@1093 := @1086 (@94 (@91 @1087 @1089)) -@1094 := (__e_hrep : @1093) -> @1085 -@1095 := fun (__e_hrep : @1093) => @1075 -@1096 := (s : @56) -> @1094 -@1097 := fun (s : @56) => @1095 -@1098 := (b : @3) -> @1096 -@1099 := fun (b : @3) => @1097 -@1100 := (a : @3) -> @1098 -@1101 := fun (a : @3) => @1099 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R24/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R24/Compose/RustStd.lex.tex deleted file mode 100644 index 1b7912607..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R24/Compose/RustStd.lex.tex +++ /dev/null @@ -1,546 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.Compose.RustStd.root : @1100 := @1101 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.RustStd.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.RustStd.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.RustStd.flags -@3 := UInt16 -@4 := #3 -@5 := LexLeanTarget.TargetSyntax.Value.u16 -@6 := @5 @4 -@7 := LexLeanTarget.TargetSyntax.Ty.fixed -@9 := @7 LexLeanTarget.TargetSyntax.IntKind.u16 -@10 := LexLeanTarget.TargetSyntax.Program -@11 := LexLeanPreservation.Rust.RCrate -@12 := LexLeanPreservation.Rust.Flags -@13 := LexLeanPreservation.Rust.WT -@14 := @13 @4 -@15 := #2 -@16 := @14 @15 -@17 := #1 -@18 := @16 @17 -@19 := #0 -@20 := @5 @19 -@26 := {p : @10} -> {c : @11} -> {A : @12} -> (x : @3) -> @18 @20 @9 -@28 := LexLeanPreservation.Rust.wt_u16 @0 -@29 := @13 @0 -@31 := @29 @15 @17 -@36 := {c : @11} -> {A : @12} -> (x : @3) -> @31 @20 @9 -@37 := @28 @1 -@38 := @29 @1 -@39 := @38 @17 -@43 := {A : @12} -> (x : @3) -> @39 @20 @9 -@44 := @37 @2 -@45 := @38 @2 -@48 := (x : @3) -> @45 @20 @9 -@49 := @44 @4 -@51 := @45 @6 @9 -@52 := @5 @15 -@53 := @44 @15 -@55 := @45 @52 @9 -@56 := UInt32 -@57 := LexLeanTarget.TargetSyntax.Value.u32 -@58 := @57 @17 -@60 := @7 LexLeanTarget.TargetSyntax.IntKind.u32 -@61 := @57 @19 -@67 := {p : @10} -> {c : @11} -> {A : @12} -> (x : @56) -> @18 @61 @60 -@69 := LexLeanPreservation.Rust.wt_u32 @0 -@74 := {c : @11} -> {A : @12} -> (x : @56) -> @31 @61 @60 -@75 := @69 @1 -@79 := {A : @12} -> (x : @56) -> @39 @61 @60 -@80 := @75 @2 -@83 := (x : @56) -> @45 @61 @60 -@84 := @80 @17 -@86 := @45 @58 @60 -@87 := LexLeanTarget.TargetSyntax.Value -@88 := List.nil.{0} -@89 := List.cons.{0} -@90 := @88 @87 -@91 := @89 @87 -@93 := @91 @58 @90 -@94 := @91 @52 -@95 := @94 @93 -@96 := @91 @6 -@97 := @96 @95 -@98 := Nat -@99 := Prod.{0, 0} -@101 := @99 @98 @87 -@102 := 2 -@105 := Prod.mk.{0, 0} @98 @87 -@106 := @105 @102 -@107 := @106 @58 -@109 := @105 1 -@110 := @109 @52 -@111 := 0 -@112 := @105 @111 -@113 := @112 @6 -@114 := @88 @101 -@115 := @89 @101 -@117 := @115 @113 @114 -@119 := @115 @110 @117 -@121 := @115 @107 @119 -@122 := Bool.false -@123 := LexLeanTarget.TargetSyntax.Function -@124 := LexLeanTarget.TargetSyntax.Program.functions -@125 := @124 @0 -@126 := LexLeanTarget.TargetSyntax.Ty -@127 := @88 @98 -@128 := @88 @126 -@129 := LexLeanTarget.TargetSyntax.Ty.unit -@130 := LexLeanTarget.TargetSyntax.Value.unit -@133 := LexLeanTarget.TargetSyntax.Expr.value @129 @130 -@138 := LexLeanTarget.TargetSyntax.Function.mk @127 @128 @129 @133 -@143 := List.getD.{0} @123 @125 @111 @138 -@147 := fun (__e_n : @98) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.RustStd.root @19 @111 -@148 := LexLeanPreservation.Rust.WTL -@156 := {p : @10} -> {c : @11} -> {A : @12} -> @148 @15 @17 @19 @90 @128 -@158 := LexLeanPreservation.Rust.wtl_nil @0 -@159 := @148 @0 -@165 := {c : @11} -> {A : @12} -> @159 @17 @19 @90 @128 -@166 := @158 @1 -@167 := @159 @1 -@171 := {A : @12} -> @167 @19 @90 @128 -@172 := @166 @2 -@173 := @167 @2 -@174 := @173 @90 -@175 := @174 @128 -@176 := List.{0} -@177 := @176 @87 -@178 := @176 @126 -@179 := #6 -@180 := @13 @179 -@181 := #5 -@182 := @180 @181 -@183 := #4 -@186 := @182 @183 @4 @15 -@187 := #7 -@192 := @148 @187 @179 @181 @15 @17 -@193 := #8 -@196 := @148 @193 @187 @179 -@198 := @91 @181 @4 -@199 := @196 @198 -@200 := @89 @126 -@202 := @200 @183 @15 -@212 := {p : @10} -> - {c : @11} -> - {A : @12} -> - {v : @87} -> {t : @126} -> {vs : @177} -> {ts : @178} -> (h : @186) -> (hs : @192) -> @199 @202 -@214 := LexLeanPreservation.Rust.wtl_cons @0 -@234 := {c : @11} -> - {A : @12} -> - {v : @87} -> - {t : @126} -> - {vs : @177} -> - {ts : @178} -> - (h : @29 @181 @183 @4 @15) -> (hs : @159 @179 @181 @15 @17) -> @159 @187 @179 @198 @202 -@235 := @214 @1 -@251 := {A : @12} -> - {v : @87} -> - {t : @126} -> - {vs : @177} -> - {ts : @178} -> (h : @38 @183 @4 @15) -> (hs : @167 @181 @15 @17) -> @167 @179 @198 @202 -@252 := @235 @2 -@254 := @45 @4 @15 -@256 := @173 @15 @17 -@264 := {v : @87} -> - {t : @126} -> {vs : @177} -> {ts : @178} -> (h : @254) -> (hs : @256) -> @173 @198 @202 -@265 := @252 @58 -@266 := @57 @183 -@268 := @45 @266 @15 -@269 := @57 @179 -@270 := @91 @269 -@278 := {t : @126} -> {vs : @177} -> {ts : @178} -> (h : @268) -> (hs : @256) -> @173 (@270 @4) @202 -@279 := @265 @60 -@280 := @57 @4 -@282 := @45 @280 @60 -@283 := @57 @181 -@284 := @91 @283 -@286 := @173 (@284 @4) -@287 := @200 @60 -@288 := @287 @15 -@293 := {vs : @177} -> {ts : @178} -> (h : @282) -> (hs : @256) -> @286 @288 -@294 := @279 @90 -@295 := @57 @15 -@297 := @45 @295 @60 -@298 := @174 @17 -@300 := @91 @266 @90 -@305 := {ts : @178} -> (h : @297) -> (hs : @298) -> @173 @300 @288 -@306 := @294 @128 -@308 := @91 @280 @90 -@309 := @173 @308 -@310 := @287 @128 -@313 := (h : @86) -> (hs : @175) -> @309 @310 -@314 := @306 @84 -@316 := @91 @295 @90 -@318 := @173 @316 @310 -@319 := (hs : @175) -> @318 -@320 := @314 @172 -@322 := @173 @93 @310 -@323 := @252 @52 -@324 := @5 @181 -@325 := @45 @324 -@326 := @325 @15 -@327 := @5 @187 -@328 := @91 @327 -@330 := @173 (@328 @4) -@336 := {t : @126} -> {vs : @177} -> {ts : @178} -> (h : @326) -> (hs : @256) -> @330 @202 -@337 := @323 @9 -@338 := @5 @183 -@340 := @45 @338 @9 -@341 := @5 @179 -@342 := @91 @341 -@344 := @173 (@342 @4) -@345 := @200 @9 -@346 := @345 @15 -@351 := {vs : @177} -> {ts : @178} -> (h : @340) -> (hs : @256) -> @344 @346 -@352 := @337 @93 -@353 := @309 @17 -@354 := @91 @324 -@355 := @354 @300 -@360 := {ts : @178} -> (h : @51) -> (hs : @353) -> @173 @355 @346 -@361 := @352 @310 -@362 := @91 @338 -@363 := @362 @308 -@364 := @173 @363 -@365 := @345 @310 -@368 := (h : @55) -> (hs : @318) -> @364 @365 -@369 := @361 @53 -@370 := @96 @316 -@372 := @173 @370 @365 -@373 := (hs : @322) -> @372 -@374 := @369 @320 -@376 := @173 @95 @365 -@377 := @252 @6 -@379 := @45 @341 @15 -@380 := @5 @193 -@381 := @91 @380 -@389 := {t : @126} -> {vs : @177} -> {ts : @178} -> (h : @379) -> (hs : @256) -> @173 (@381 @4) @202 -@390 := @377 @9 -@396 := {vs : @177} -> {ts : @178} -> (h : @325 @9) -> (hs : @256) -> @330 @346 -@397 := @390 @95 -@398 := @364 @17 -@399 := @342 @355 -@400 := @173 @399 -@404 := {ts : @178} -> (h : @340) -> (hs : @398) -> @400 @346 -@405 := @397 @365 -@406 := @354 @363 -@407 := @173 @406 -@408 := @345 @365 -@411 := (h : @51) -> (hs : @372) -> @407 @408 -@412 := @405 @49 -@413 := @362 @370 -@414 := @173 @413 -@416 := (hs : @376) -> @414 @408 -@417 := @412 @374 -@418 := @173 @97 -@419 := @418 @408 -@420 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.denote -@423 := @420 @4 @15 @17 -@424 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.__fits_0 -@427 := @424 @4 @15 @17 -@431 := Coverage.Prims.bits @4 @15 @17 -@432 := Option.{0} -@433 := @432 @3 -@434 := Bool -@435 := @99 @433 -@436 := @435 @434 -@437 := @435 @436 -@438 := @99 @3 -@439 := @438 @437 -@440 := @438 @439 -@441 := @438 @440 -@444 := LexLeanPreservation.encOption @3 @5 -@445 := LexLeanTarget.TargetSyntax.Value.bool -@446 := LexLeanPreservation.encPair -@447 := @446 @433 -@450 := @447 @434 @444 @445 -@453 := @447 @436 @444 @450 -@454 := @446 @3 -@457 := @454 @437 @5 @453 -@460 := @454 @439 @5 @457 -@463 := @454 @440 @5 @460 -@467 := @454 @441 @5 @463 @431 -@471 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.root @4 @15 @17 -@472 := Ne.{1} -@473 := LexLeanPreservation.Obs -@474 := @472 @473 -@475 := LexLeanPreservation.Rel -@478 := @474 (@475 @17 @19) -@479 := LexLeanPreservation.Obs.stuck -@482 := (f : @434) -> (v : @87) -> @478 @479 -@484 := LexLeanPreservation.Rust.rel_ne_stuck @427 -@492 := (v : @87) -> @474 (@475 (@424 @183 @4 @15) @19) @479 -@493 := @484 @467 -@497 := @474 (@475 @427 @467) @479 -@498 := @176 @101 -@499 := LexLeanPreservation.Rust.FunSem -@500 := #9 -@506 := (n : @98) -> @499 @500 @193 @187 @19 @179 -@507 := Eq.{1} -@508 := @432 @123 -@509 := @507 @508 -@516 := LexLeanRuntime.index (@176 @123) @123 (LexLeanRuntime.instIndexableList @123) -@520 := @509 (@516 (@124 @500) @179) -@521 := Option.some.{0} -@522 := @521 @123 -@523 := @522 @181 -@524 := @520 @523 -@525 := #10 -@529 := @148 @525 @500 @193 @181 -@530 := LexLeanTarget.TargetSyntax.Function.types -@531 := @530 @179 -@532 := @529 @531 -@533 := @432 @498 -@534 := @507 @533 -@535 := LexLeanTarget.TargetSemantics.bindAll -@536 := LexLeanTarget.TargetSyntax.Function.parameters -@541 := @534 (@535 (@536 @187) @179 @114) -@542 := @521 @498 -@543 := @542 @181 -@544 := @541 @543 -@545 := @432 @434 -@546 := @507 @545 -@547 := LexLeanPreservation.Rust.fnFallible -@548 := #11 -@551 := @546 (@547 @548 @500) -@552 := @521 @434 -@553 := @552 @181 -@554 := @551 @553 -@555 := LexLeanPreservation.RunConv -@556 := #13 -@560 := @555 @556 @525 @193 @181 -@562 := @474 @179 @479 -@563 := Exists.{1} -@564 := LexLeanPreservation.Rust.ROut -@565 := @563 @564 -@566 := And -@567 := LexLeanPreservation.Rust.RealizesFn -@571 := @566 (@567 @500 @193 @19) -@572 := LexLeanPreservation.Rust.RCI -@574 := @572 #15 -@575 := LexLeanPreservation.Rust.fnIdent -@576 := @575 @556 -@583 := (hne : @562) -> @565 (fun (ro : @564) => @571 (@574 @576 @548 @19)) -@598 := {p : @10} -> - {c : @11} -> - {A : @12} -> - {f : @98} -> - {fn : @123} -> - {args : @177} -> - {env : @498} -> - {F : @434} -> - {o : @473} -> - (hB : @506) -> - (hfn : @524) -> (hwt : @532) -> (hbind : @544) -> (hF : @554) -> (hA : @560) -> @583 -@600 := LexLeanPreservation.Rust.compose @0 -@601 := @499 @0 -@606 := (n : @98) -> @601 @193 @187 @19 @179 -@607 := @516 @125 -@610 := @509 (@607 @179) @523 -@614 := @159 @500 @193 @181 @531 -@615 := @555 @0 -@618 := @615 @525 @193 @181 -@632 := {c : @11} -> - {A : @12} -> - {f : @98} -> - {fn : @123} -> - {args : @177} -> - {env : @498} -> - {F : @434} -> - {o : @473} -> - (hB : @606) -> - (hfn : @610) -> (hwt : @614) -> (hbind : @544) -> (hF : @554) -> (hA : @618) -> @583 -@633 := @600 @1 -@634 := @601 @1 -@638 := (n : @98) -> @634 @187 @19 @179 -@641 := @167 @193 @181 @531 -@642 := @547 @1 -@645 := @546 (@642 @500) @553 -@646 := @572 @1 -@656 := (hbind : @544) -> - (hF : @645) -> (hA : @618) -> (hne : @562) -> @565 (fun (ro : @564) => @571 (@646 @576 @548 @19)) -@666 := {A : @12} -> - {f : @98} -> - {fn : @123} -> - {args : @177} -> - {env : @498} -> {F : @434} -> {o : @473} -> (hB : @638) -> (hfn : @610) -> (hwt : @641) -> @656 -@667 := @633 @2 -@669 := @634 @2 @19 -@671 := (n : @98) -> @669 @179 -@672 := @173 @181 -@673 := @672 @531 -@682 := {f : @98} -> - {fn : @123} -> - {args : @177} -> - {env : @498} -> {F : @434} -> {o : @473} -> (hB : @671) -> (hfn : @610) -> (hwt : @673) -> @656 -@683 := @667 @111 -@685 := (n : @98) -> @669 @111 -@686 := @607 @111 -@687 := @509 @686 -@688 := @687 @523 -@689 := @642 @111 -@690 := @546 @689 -@691 := @690 @553 -@692 := @615 @111 -@694 := @692 @193 @181 -@696 := @646 (@575 @111) -@704 := (hF : @691) -> (hA : @694) -> (hne : @562) -> @565 (fun (ro : @564) => @571 (@696 @548 @19)) -@713 := {fn : @123} -> - {args : @177} -> - {env : @498} -> - {F : @434} -> {o : @473} -> (hB : @685) -> (hfn : @688) -> (hwt : @673) -> (hbind : @544) -> @704 -@714 := @683 @143 -@716 := @687 (@522 @143) -@717 := @530 @143 -@718 := @672 @717 -@720 := @535 (@536 @143) -@732 := {args : @177} -> - {env : @498} -> - {F : @434} -> - {o : @473} -> - (hB : @685) -> (hfn : @716) -> (hwt : @718) -> (hbind : @534 (@720 @179 @114) @543) -> @704 -@733 := @714 @97 -@736 := @381 (@328 (@270 @90)) -@738 := @173 @736 @717 -@740 := @91 (@5 @500) -@745 := @740 (@381 (@91 (@57 @187) @90)) -@749 := @534 (@720 @745 @114) @543 -@751 := @91 (@5 @548) -@753 := @91 (@5 @525) -@758 := @751 (@753 (@91 (@57 @500) @90)) -@760 := @692 @758 @181 -@763 := @91 (@5 #14) -@765 := @91 (@5 @556) -@766 := #12 -@786 := {env : @498} -> - {F : @434} -> - {o : @473} -> - (hB : @685) -> - (hfn : @716) -> - (hwt : @738) -> - (hbind : @749) -> - (hF : @691) -> - (hA : @760) -> - (hne : @562) -> @565 (fun (ro : @564) => @571 (@696 (@763 (@765 (@91 (@57 @766) @90))) @19)) -@787 := @733 @121 -@790 := @328 (@342 (@284 @90)) -@792 := @173 @790 @717 -@806 := @534 (@720 @736 @114) (@542 (@115 (@106 @269) (@115 (@109 @327) (@115 (@112 @380) @114)))) -@811 := @753 (@740 (@91 (@57 @193) @90)) -@813 := @692 @811 @181 -@815 := @91 (@5 @766) -@834 := {F : @434} -> - {o : @473} -> - (hB : @685) -> - (hfn : @716) -> - (hwt : @792) -> - (hbind : @806) -> - (hF : @691) -> - (hA : @813) -> - (hne : @562) -> @565 (fun (ro : @564) => @571 (@696 (@765 (@815 (@91 (@57 @548) @90))) @19)) -@835 := @787 @122 -@836 := @400 @717 -@850 := @534 (@720 @790 @114) (@542 (@115 (@106 @283) (@115 (@109 @341) (@115 (@112 @327) @114)))) -@852 := @690 (@552 @122) -@854 := @692 @745 @181 -@855 := @567 @122 -@876 := {o : @473} -> - (hB : @685) -> - (hfn : @716) -> - (hwt : @836) -> - (hbind : @850) -> - (hF : @852) -> - (hA : @854) -> - (hne : @562) -> - @565 (fun (ro : @564) => @566 (@855 @193 @19) (@696 (@815 (@751 (@91 (@57 @525) @90))) @19)) -@877 := @835 @423 -@878 := @407 @717 -@892 := @534 (@720 @399 @114) (@542 (@115 (@106 @266) (@115 (@109 @324) (@115 (@112 @341) @114)))) -@893 := @692 @736 -@896 := @420 @193 @187 @179 -@897 := @893 @896 -@900 := @420 @500 @193 @187 -@920 := (hB : @685) -> - (hfn : @716) -> - (hwt : @878) -> - (hbind : @892) -> - (hF : @852) -> - (hA : @897) -> - (hne : @474 @900 @479) -> - @565 (fun (ro : @564) => @566 (@855 (@420 @548 @525 @500) @19) (@696 @758 @19)) -@921 := @877 @147 -@922 := @414 @717 -@936 := @534 (@720 @406 @114) (@542 (@115 (@106 @280) (@115 (@109 @338) (@115 (@112 @324) @114)))) -@937 := @692 @790 -@940 := @420 @187 @179 @181 -@960 := (hfn : @716) -> - (hwt : @922) -> - (hbind : @936) -> - (hF : @852) -> - (hA : @937 @940) -> - (hne : @474 @896 @479) -> - @565 (fun (ro : @564) => @566 (@855 (@420 @525 @500 @193) @19) (@696 @811 @19)) -@961 := Eq.refl.{1} -@964 := @921 (@961 @508 @686) -@965 := @418 @717 -@979 := @534 (@720 @413 @114) (@542 (@115 (@106 @295) (@115 (@109 @6) (@115 (@112 @338) @114)))) -@980 := @692 @399 -@983 := @420 @179 @181 @183 -@999 := (hwt : @965) -> - (hbind : @979) -> - (hF : @852) -> - (hA : @980 @983) -> - (hne : @474 @940 @479) -> @565 (fun (ro : @564) => @566 (@855 @900 @19) (@696 @745 @19)) -@1000 := @964 @417 -@1002 := @720 @97 @114 -@1005 := @534 @1002 (@542 @121) -@1006 := @692 @406 -@1009 := @420 @181 @183 @4 -@1024 := (hbind : @1005) -> - (hF : @852) -> - (hA : @1006 @1009) -> - (hne : @474 @983 @479) -> @565 (fun (ro : @564) => @566 (@855 @896 @19) (@696 @736 @19)) -@1027 := @1000 (@961 @533 @1002) -@1028 := @692 @413 -@1031 := @420 @183 @4 @15 -@1045 := (hF : @852) -> - (hA : @1028 @1031) -> - (hne : @474 @1009 @479) -> @565 (fun (ro : @564) => @566 (@855 @940 @19) (@696 @790 @19)) -@1048 := @1027 (@961 @545 @689) -@1062 := (hA : @692 @97 @423) -> - (hne : @474 @1031 @479) -> @565 (fun (ro : @564) => @566 (@855 @983 @19) (@696 @399 @19)) -@1063 := @1048 @471 -@1074 := (hne : @474 @423 @479) -> @565 (fun (ro : @564) => @566 (@855 @1009 @19) (@696 @406 @19)) -@1075 := @1063 @493 -@1081 := @566 (@855 @1031 @19) (@696 @413 @19) -@1083 := @565 (fun (ro : @564) => @1081) -@1085 := @565 (fun (__e_ro : @564) => @1081) -@1086 := LexLeanPreservation.Rust.RepresentableL -@1087 := @5 @17 -@1089 := @91 @61 @90 -@1093 := @1086 (@94 (@91 @1087 @1089)) -@1094 := (__e_hrep : @1093) -> @1085 -@1095 := fun (__e_hrep : @1093) => @1075 -@1096 := (s : @56) -> @1094 -@1097 := fun (s : @56) => @1095 -@1098 := (b : @3) -> @1096 -@1099 := fun (b : @3) => @1097 -@1100 := (a : @3) -> @1098 -@1101 := fun (a : @3) => @1099 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R24/RustCore.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R24/RustCore.lean deleted file mode 100644 index 13c621a46..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R24/RustCore.lean +++ /dev/null @@ -1,33 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.RustCore -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1, 2], types := [(.fixed .u16), (.fixed .u16), (.fixed .u32)], result := (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.option (.fixed .u16)) (.pair (.option (.fixed .u16)) .bool)))))), - body := (.build .pair (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.option (.fixed .u16)) (.pair (.option (.fixed .u16)) .bool)))))) [(.prim .bitAnd [(.var 0), (.var 1)]), (.build .pair (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.option (.fixed .u16)) (.pair (.option (.fixed .u16)) .bool))))) [(.prim .bitOr [(.var 0), (.var 1)]), (.build .pair (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.option (.fixed .u16)) (.pair (.option (.fixed .u16)) .bool)))) [(.prim .bitXor [(.var 0), (.var 1)]), (.build .pair (.pair (.fixed .u16) (.pair (.option (.fixed .u16)) (.pair (.option (.fixed .u16)) .bool))) [(.prim .bitNot [(.var 0)]), (.build .pair (.pair (.option (.fixed .u16)) (.pair (.option (.fixed .u16)) .bool)) [(.prim .shiftLeft [(.var 0), (.var 2)]), (.build .pair (.pair (.option (.fixed .u16)) .bool) [(.prim .shiftRight [(.var 0), (.value (.fixed .u32) (.u32 3))]), (.prim .equal [(.var 0), (.var 1)])])])])])])]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .core, items := [ - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.fixed .u16) }, { pattern := (.bind (.generated .binding 1)), type := (.fixed .u16) }, { pattern := (.bind (.generated .binding 2)), type := (.fixed .u32) }] (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.option (.fixed .u16)) (.pair (.option (.fixed .u16)) .bool)))))) (.mk [] (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))] (.call (.runtime (.bitAnd .u16)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1)))] (.call (.runtime (.bitOr .u16)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1)))] (.call (.runtime (.bitXor .u16)) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 0)))] (.call (.runtime (.bitNot .u16)) [(.move (.generated .operand 7))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 2)))] (.call (.runtime (.shiftLeft .u16)) [(.move (.generated .operand 8)), (.move (.generated .operand 9))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 11)) none (.lit (.fixed .u32 3)))] (.call (.runtime (.shiftRight .u16)) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false))) (.block (.mk [(.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1)))] (.call (.runtime .equal) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false)))))))))))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [], (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))] (.call (.runtime (.bitAnd .u16)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1)))] (.call (.runtime (.bitOr .u16)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1)))] (.call (.runtime (.bitXor .u16)) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 0)))] (.call (.runtime (.bitNot .u16)) [(.move (.generated .operand 7))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 2)))] (.call (.runtime (.shiftLeft .u16)) [(.move (.generated .operand 8)), (.move (.generated .operand 9))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 11)) none (.lit (.fixed .u32 3)))] (.call (.runtime (.shiftRight .u16)) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false))) (.block (.mk [(.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1)))] (.call (.runtime .equal) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false))))))))), [(2, (.fixed .u32), (some 2)), (1, (.fixed .u16), (some 1)), (0, (.fixed .u16), (some 0))], rfl, rfl, - (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.bitAnd .u16)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false)) (Corr.prim (ts := [(.fixed .u16), (.fixed .u16)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.bitOr .u16)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false)) (Corr.prim (ts := [(.fixed .u16), (.fixed .u16)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.bitXor .u16)) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false)) (Corr.prim (ts := [(.fixed .u16), (.fixed .u16)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 0)))]) (tail := (.call (.runtime (.bitNot .u16)) [(.move (.generated .operand 7))] false)) (Corr.prim (ts := [(.fixed .u16)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime (.shiftLeft .u16)) [(.move (.generated .operand 8)), (.move (.generated .operand 9))] false)) (Corr.prim (ts := [(.fixed .u16), (.fixed .u32)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 11)) none (.lit (.fixed .u32 3)))]) (tail := (.call (.runtime (.shiftRight .u16)) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false)) (Corr.prim (ts := [(.fixed .u16), (.fixed .u32)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .equal) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false)) (Corr.prim (ts := [(.fixed .u16), (.fixed .u16)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | _ + 1 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.RustCore diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R24/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R24/RustStd.lean deleted file mode 100644 index b9d86a570..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R24/RustStd.lean +++ /dev/null @@ -1,33 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1, 2], types := [(.fixed .u16), (.fixed .u16), (.fixed .u32)], result := (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.option (.fixed .u16)) (.pair (.option (.fixed .u16)) .bool)))))), - body := (.build .pair (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.option (.fixed .u16)) (.pair (.option (.fixed .u16)) .bool)))))) [(.prim .bitAnd [(.var 0), (.var 1)]), (.build .pair (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.option (.fixed .u16)) (.pair (.option (.fixed .u16)) .bool))))) [(.prim .bitOr [(.var 0), (.var 1)]), (.build .pair (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.option (.fixed .u16)) (.pair (.option (.fixed .u16)) .bool)))) [(.prim .bitXor [(.var 0), (.var 1)]), (.build .pair (.pair (.fixed .u16) (.pair (.option (.fixed .u16)) (.pair (.option (.fixed .u16)) .bool))) [(.prim .bitNot [(.var 0)]), (.build .pair (.pair (.option (.fixed .u16)) (.pair (.option (.fixed .u16)) .bool)) [(.prim .shiftLeft [(.var 0), (.var 2)]), (.build .pair (.pair (.option (.fixed .u16)) .bool) [(.prim .shiftRight [(.var 0), (.value (.fixed .u32) (.u32 3))]), (.prim .equal [(.var 0), (.var 1)])])])])])])]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.fixed .u16) }, { pattern := (.bind (.generated .binding 1)), type := (.fixed .u16) }, { pattern := (.bind (.generated .binding 2)), type := (.fixed .u32) }] (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.fixed .u16) (.pair (.option (.fixed .u16)) (.pair (.option (.fixed .u16)) .bool)))))) (.mk [] (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))] (.call (.runtime (.bitAnd .u16)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1)))] (.call (.runtime (.bitOr .u16)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1)))] (.call (.runtime (.bitXor .u16)) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 0)))] (.call (.runtime (.bitNot .u16)) [(.move (.generated .operand 7))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 2)))] (.call (.runtime (.shiftLeft .u16)) [(.move (.generated .operand 8)), (.move (.generated .operand 9))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 11)) none (.lit (.fixed .u32 3)))] (.call (.runtime (.shiftRight .u16)) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false))) (.block (.mk [(.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1)))] (.call (.runtime .equal) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false)))))))))))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [], (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))] (.call (.runtime (.bitAnd .u16)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1)))] (.call (.runtime (.bitOr .u16)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1)))] (.call (.runtime (.bitXor .u16)) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 0)))] (.call (.runtime (.bitNot .u16)) [(.move (.generated .operand 7))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 2)))] (.call (.runtime (.shiftLeft .u16)) [(.move (.generated .operand 8)), (.move (.generated .operand 9))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 11)) none (.lit (.fixed .u32 3)))] (.call (.runtime (.shiftRight .u16)) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false))) (.block (.mk [(.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1)))] (.call (.runtime .equal) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false))))))))), [(2, (.fixed .u32), (some 2)), (1, (.fixed .u16), (some 1)), (0, (.fixed .u16), (some 0))], rfl, rfl, - (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.bitAnd .u16)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false)) (Corr.prim (ts := [(.fixed .u16), (.fixed .u16)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.bitOr .u16)) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false)) (Corr.prim (ts := [(.fixed .u16), (.fixed .u16)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.bitXor .u16)) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false)) (Corr.prim (ts := [(.fixed .u16), (.fixed .u16)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 0)))]) (tail := (.call (.runtime (.bitNot .u16)) [(.move (.generated .operand 7))] false)) (Corr.prim (ts := [(.fixed .u16)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime (.shiftLeft .u16)) [(.move (.generated .operand 8)), (.move (.generated .operand 9))] false)) (Corr.prim (ts := [(.fixed .u16), (.fixed .u32)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 11)) none (.lit (.fixed .u32 3)))]) (tail := (.call (.runtime (.shiftRight .u16)) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] false)) (Corr.prim (ts := [(.fixed .u16), (.fixed .u32)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .equal) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false)) (Corr.prim (ts := [(.fixed .u16), (.fixed .u16)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | _ + 1 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R25/Compose/RustCore.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R25/Compose/RustCore.lex.tex deleted file mode 100644 index 4f31cdb2b..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R25/Compose/RustCore.lex.tex +++ /dev/null @@ -1,495 +0,0 @@ -\begin{lexlean}{RustCore} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.Compose.RustCore} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.RustCore, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.Compose.RustCore.root : @992 := @993 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.Compose.RustCore.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.RustCore.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.RustCore.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.RustCore.flags -@3 := Int -@4 := #2 -@5 := LexLeanTarget.TargetSyntax.Value.int -@6 := @5 @4 -@7 := LexLeanTarget.TargetSyntax.Ty.int -@8 := LexLeanTarget.TargetSyntax.Program -@9 := LexLeanPreservation.Rust.RCrate -@10 := LexLeanPreservation.Rust.Flags -@11 := LexLeanPreservation.Rust.WT -@12 := #3 -@14 := @11 @12 @4 -@15 := #1 -@16 := @14 @15 -@17 := #0 -@18 := @5 @17 -@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 -@26 := LexLeanPreservation.Rust.wt_int @0 -@27 := @11 @0 -@29 := @27 @4 @15 -@34 := {c : @9} -> {A : @10} -> (n : @3) -> @29 @18 @7 -@35 := @26 @1 -@36 := @27 @1 -@37 := @36 @15 -@41 := {A : @10} -> (n : @3) -> @37 @18 @7 -@42 := @35 @2 -@43 := @36 @2 -@46 := (n : @3) -> @43 @18 @7 -@47 := @42 @4 -@49 := @43 @6 @7 -@50 := Int8 -@51 := LexLeanTarget.TargetSyntax.Value.i8 -@52 := @51 @15 -@55 := LexLeanTarget.TargetSyntax.Ty.fixed LexLeanTarget.TargetSyntax.IntKind.i8 -@56 := @51 @17 -@62 := {p : @8} -> {c : @9} -> {A : @10} -> (x : @50) -> @16 @56 @55 -@64 := LexLeanPreservation.Rust.wt_i8 @0 -@69 := {c : @9} -> {A : @10} -> (x : @50) -> @29 @56 @55 -@70 := @64 @1 -@74 := {A : @10} -> (x : @50) -> @37 @56 @55 -@75 := @70 @2 -@78 := (x : @50) -> @43 @56 @55 -@79 := @75 @15 -@81 := @43 @52 @55 -@82 := LexLeanTarget.TargetSyntax.Value -@83 := List.nil.{0} -@84 := List.cons.{0} -@85 := @83 @82 -@86 := @84 @82 -@88 := @86 @52 @85 -@90 := @86 @6 @88 -@91 := Nat -@94 := Prod.{0, 0} @91 @82 -@95 := 1 -@98 := Prod.mk.{0, 0} @91 @82 -@99 := @98 @95 -@100 := @99 @52 -@101 := 0 -@102 := @98 @101 -@103 := @102 @6 -@104 := @83 @94 -@105 := @84 @94 -@107 := @105 @103 @104 -@109 := @105 @100 @107 -@110 := Bool.false -@111 := LexLeanTarget.TargetSyntax.Function -@112 := LexLeanTarget.TargetSyntax.Program.functions -@113 := @112 @0 -@114 := LexLeanTarget.TargetSyntax.Ty -@115 := @83 @91 -@116 := @83 @114 -@117 := LexLeanTarget.TargetSyntax.Ty.unit -@118 := LexLeanTarget.TargetSyntax.Value.unit -@121 := LexLeanTarget.TargetSyntax.Expr.value @117 @118 -@126 := LexLeanTarget.TargetSyntax.Function.mk @115 @116 @117 @121 -@131 := List.getD.{0} @111 @113 @101 @126 -@135 := fun (__e_n : @91) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.RustCore.root @17 @101 -@136 := LexLeanPreservation.Rust.WTL -@144 := {p : @8} -> {c : @9} -> {A : @10} -> @136 @4 @15 @17 @85 @116 -@146 := LexLeanPreservation.Rust.wtl_nil @0 -@147 := @136 @0 -@153 := {c : @9} -> {A : @10} -> @147 @15 @17 @85 @116 -@154 := @146 @1 -@155 := @147 @1 -@159 := {A : @10} -> @155 @17 @85 @116 -@160 := @154 @2 -@161 := @155 @2 -@162 := @161 @85 -@163 := @162 @116 -@164 := List.{0} -@165 := @164 @82 -@166 := @164 @114 -@167 := #6 -@168 := @11 @167 -@169 := #5 -@170 := @168 @169 -@171 := #4 -@174 := @170 @171 @12 @4 -@175 := #7 -@180 := @136 @175 @167 @169 @4 @15 -@181 := #8 -@184 := @136 @181 @175 @167 -@186 := @86 @169 @12 -@187 := @184 @186 -@188 := @84 @114 -@190 := @188 @171 @4 -@200 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {v : @82} -> {t : @114} -> {vs : @165} -> {ts : @166} -> (h : @174) -> (hs : @180) -> @187 @190 -@202 := LexLeanPreservation.Rust.wtl_cons @0 -@222 := {c : @9} -> - {A : @10} -> - {v : @82} -> - {t : @114} -> - {vs : @165} -> - {ts : @166} -> - (h : @27 @169 @171 @12 @4) -> (hs : @147 @167 @169 @4 @15) -> @147 @175 @167 @186 @190 -@223 := @202 @1 -@239 := {A : @10} -> - {v : @82} -> - {t : @114} -> - {vs : @165} -> - {ts : @166} -> (h : @36 @171 @12 @4) -> (hs : @155 @169 @4 @15) -> @155 @167 @186 @190 -@240 := @223 @2 -@242 := @43 @12 @4 -@244 := @161 @4 @15 -@252 := {v : @82} -> - {t : @114} -> {vs : @165} -> {ts : @166} -> (h : @242) -> (hs : @244) -> @161 @186 @190 -@253 := @240 @52 -@254 := @51 @171 -@256 := @43 @254 @4 -@257 := @51 @167 -@258 := @86 @257 -@266 := {t : @114} -> - {vs : @165} -> {ts : @166} -> (h : @256) -> (hs : @244) -> @161 (@258 @12) @190 -@267 := @253 @55 -@268 := @51 @12 -@270 := @43 @268 @55 -@271 := @51 @169 -@272 := @86 @271 -@274 := @161 (@272 @12) -@275 := @188 @55 -@276 := @275 @4 -@281 := {vs : @165} -> {ts : @166} -> (h : @270) -> (hs : @244) -> @274 @276 -@282 := @267 @85 -@283 := @51 @4 -@285 := @43 @283 @55 -@286 := @162 @15 -@288 := @86 @254 @85 -@293 := {ts : @166} -> (h : @285) -> (hs : @286) -> @161 @288 @276 -@294 := @282 @116 -@296 := @86 @268 @85 -@297 := @161 @296 -@298 := @275 @116 -@301 := (h : @81) -> (hs : @163) -> @297 @298 -@302 := @294 @79 -@304 := @86 @283 @85 -@306 := @161 @304 @298 -@307 := (hs : @163) -> @306 -@308 := @302 @160 -@310 := @161 @88 @298 -@311 := @240 @6 -@312 := @5 @169 -@314 := @43 @312 @4 -@315 := @5 @175 -@316 := @86 @315 -@324 := {t : @114} -> - {vs : @165} -> {ts : @166} -> (h : @314) -> (hs : @244) -> @161 (@316 @12) @190 -@325 := @311 @7 -@326 := @5 @171 -@328 := @43 @326 @7 -@329 := @5 @167 -@330 := @86 @329 -@332 := @161 (@330 @12) -@333 := @188 @7 -@334 := @333 @4 -@339 := {vs : @165} -> {ts : @166} -> (h : @328) -> (hs : @244) -> @332 @334 -@340 := @325 @88 -@341 := @5 @12 -@343 := @43 @341 @7 -@344 := @297 @15 -@346 := @86 @312 @288 -@347 := @161 @346 -@351 := {ts : @166} -> (h : @343) -> (hs : @344) -> @347 @334 -@352 := @340 @298 -@354 := @86 @326 @296 -@355 := @161 @354 -@356 := @333 @298 -@359 := (h : @49) -> (hs : @306) -> @355 @356 -@360 := @352 @47 -@362 := @86 @341 @304 -@363 := @161 @362 -@365 := (hs : @310) -> @363 @356 -@366 := @360 @308 -@367 := @161 @90 -@368 := @367 @356 -@369 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.denote -@371 := @369 @4 @15 -@372 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.__fits_0 -@374 := @372 @4 @15 -@377 := Coverage.Prims.conversions @4 @15 -@378 := UInt16 -@379 := Option.{0} -@380 := @379 @378 -@381 := Int64 -@382 := @379 @381 -@383 := LexLeanTarget.TargetSyntax.Value.u16 -@384 := LexLeanPreservation.encOption -@386 := @384 @378 @383 -@387 := LexLeanTarget.TargetSyntax.Value.i64 -@389 := @384 @381 @387 -@395 := LexLeanPreservation.encPair @380 @382 @386 @389 @377 -@398 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.root @4 @15 -@399 := Bool -@400 := Ne.{1} -@401 := LexLeanPreservation.Obs -@402 := @400 @401 -@403 := LexLeanPreservation.Rel -@406 := @402 (@403 @15 @17) -@407 := LexLeanPreservation.Obs.stuck -@410 := (f : @399) -> (v : @82) -> @406 @407 -@412 := LexLeanPreservation.Rust.rel_ne_stuck @374 -@419 := (v : @82) -> @402 (@403 (@372 @12 @4) @17) @407 -@420 := @412 @395 -@424 := @402 (@403 @374 @395) @407 -@425 := @164 @94 -@426 := LexLeanPreservation.Rust.FunSem -@427 := #9 -@433 := (n : @91) -> @426 @427 @181 @175 @17 @167 -@434 := Eq.{1} -@435 := @379 @111 -@436 := @434 @435 -@443 := LexLeanRuntime.index (@164 @111) @111 (LexLeanRuntime.instIndexableList @111) -@447 := @436 (@443 (@112 @427) @167) -@448 := Option.some.{0} -@449 := @448 @111 -@450 := @449 @169 -@451 := @447 @450 -@452 := #10 -@456 := @136 @452 @427 @181 @169 -@457 := LexLeanTarget.TargetSyntax.Function.types -@458 := @457 @167 -@459 := @456 @458 -@460 := @379 @425 -@461 := @434 @460 -@462 := LexLeanTarget.TargetSemantics.bindAll -@463 := LexLeanTarget.TargetSyntax.Function.parameters -@468 := @461 (@462 (@463 @175) @167 @104) -@469 := @448 @425 -@470 := @469 @169 -@471 := @468 @470 -@472 := @379 @399 -@473 := @434 @472 -@474 := LexLeanPreservation.Rust.fnFallible -@475 := #11 -@478 := @473 (@474 @475 @427) -@479 := @448 @399 -@480 := @479 @169 -@481 := @478 @480 -@482 := LexLeanPreservation.RunConv -@483 := #13 -@487 := @482 @483 @452 @181 @169 -@489 := @402 @167 @407 -@490 := Exists.{1} -@491 := LexLeanPreservation.Rust.ROut -@492 := @490 @491 -@493 := And -@494 := LexLeanPreservation.Rust.RealizesFn -@498 := @493 (@494 @427 @181 @17) -@499 := LexLeanPreservation.Rust.RCI -@501 := @499 #15 -@502 := LexLeanPreservation.Rust.fnIdent -@503 := @502 @483 -@510 := (hne : @489) -> @492 (fun (ro : @491) => @498 (@501 @503 @475 @17)) -@525 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {f : @91} -> - {fn : @111} -> - {args : @165} -> - {env : @425} -> - {F : @399} -> - {o : @401} -> - (hB : @433) -> - (hfn : @451) -> (hwt : @459) -> (hbind : @471) -> (hF : @481) -> (hA : @487) -> @510 -@527 := LexLeanPreservation.Rust.compose @0 -@528 := @426 @0 -@533 := (n : @91) -> @528 @181 @175 @17 @167 -@534 := @443 @113 -@537 := @436 (@534 @167) @450 -@541 := @147 @427 @181 @169 @458 -@542 := @482 @0 -@545 := @542 @452 @181 @169 -@559 := {c : @9} -> - {A : @10} -> - {f : @91} -> - {fn : @111} -> - {args : @165} -> - {env : @425} -> - {F : @399} -> - {o : @401} -> - (hB : @533) -> - (hfn : @537) -> (hwt : @541) -> (hbind : @471) -> (hF : @481) -> (hA : @545) -> @510 -@560 := @527 @1 -@561 := @528 @1 -@565 := (n : @91) -> @561 @175 @17 @167 -@568 := @155 @181 @169 @458 -@569 := @474 @1 -@572 := @473 (@569 @427) @480 -@573 := @499 @1 -@583 := (hbind : @471) -> - (hF : @572) -> (hA : @545) -> (hne : @489) -> @492 (fun (ro : @491) => @498 (@573 @503 @475 @17)) -@593 := {A : @10} -> - {f : @91} -> - {fn : @111} -> - {args : @165} -> - {env : @425} -> {F : @399} -> {o : @401} -> (hB : @565) -> (hfn : @537) -> (hwt : @568) -> @583 -@594 := @560 @2 -@596 := @561 @2 @17 -@598 := (n : @91) -> @596 @167 -@599 := @161 @169 -@600 := @599 @458 -@609 := {f : @91} -> - {fn : @111} -> - {args : @165} -> - {env : @425} -> {F : @399} -> {o : @401} -> (hB : @598) -> (hfn : @537) -> (hwt : @600) -> @583 -@610 := @594 @101 -@612 := (n : @91) -> @596 @101 -@613 := @534 @101 -@614 := @436 @613 -@615 := @614 @450 -@616 := @569 @101 -@617 := @473 @616 -@618 := @617 @480 -@619 := @542 @101 -@621 := @619 @181 @169 -@623 := @573 (@502 @101) -@631 := (hF : @618) -> (hA : @621) -> (hne : @489) -> @492 (fun (ro : @491) => @498 (@623 @475 @17)) -@640 := {fn : @111} -> - {args : @165} -> - {env : @425} -> - {F : @399} -> {o : @401} -> (hB : @612) -> (hfn : @615) -> (hwt : @600) -> (hbind : @471) -> @631 -@641 := @610 @131 -@643 := @614 (@449 @131) -@644 := @457 @131 -@645 := @599 @644 -@647 := @462 (@463 @131) -@659 := {args : @165} -> - {env : @425} -> - {F : @399} -> - {o : @401} -> - (hB : @612) -> (hfn : @643) -> (hwt : @645) -> (hbind : @461 (@647 @167 @104) @470) -> @631 -@660 := @641 @90 -@662 := @316 (@258 @85) -@664 := @161 @662 @644 -@670 := @86 (@5 @181) (@86 (@51 @175) @85) -@674 := @461 (@647 @670 @104) @470 -@680 := @86 (@5 @452) (@86 (@51 @427) @85) -@682 := @619 @680 @169 -@684 := @86 (@5 @483) -@685 := #12 -@704 := {env : @425} -> - {F : @399} -> - {o : @401} -> - (hB : @612) -> - (hfn : @643) -> - (hwt : @664) -> - (hbind : @674) -> - (hF : @618) -> - (hA : @682) -> - (hne : @489) -> @492 (fun (ro : @491) => @498 (@623 (@684 (@86 (@51 @685) @85)) @17)) -@705 := @660 @109 -@707 := @330 (@272 @85) -@709 := @161 @707 @644 -@720 := @461 (@647 @662 @104) (@469 (@105 (@99 @257) (@105 (@102 @315) @104))) -@726 := @86 (@5 @427) (@86 (@51 @181) @85) -@748 := {F : @399} -> - {o : @401} -> - (hB : @612) -> - (hfn : @643) -> - (hwt : @709) -> - (hbind : @720) -> - (hF : @618) -> - (hA : @619 @726 @169) -> - (hne : @489) -> @492 (fun (ro : @491) => @498 (@623 (@86 (@5 @685) (@86 (@51 @475) @85)) @17)) -@749 := @705 @110 -@750 := @347 @644 -@761 := @461 (@647 @707 @104) (@469 (@105 (@99 @271) (@105 (@102 @329) @104))) -@763 := @617 (@479 @110) -@765 := @619 @670 @169 -@766 := @494 @110 -@788 := {o : @401} -> - (hB : @612) -> - (hfn : @643) -> - (hwt : @750) -> - (hbind : @761) -> - (hF : @763) -> - (hA : @765) -> - (hne : @489) -> - @492 (fun (ro : @491) => @493 (@766 @181 @17) (@623 (@86 (@5 @475) (@86 (@51 @452) @85)) @17)) -@789 := @749 @371 -@790 := @355 @644 -@801 := @461 (@647 @346 @104) (@469 (@105 (@99 @254) (@105 (@102 @312) @104))) -@802 := @619 @662 -@804 := @369 @175 @167 -@805 := @802 @804 -@807 := @369 @181 @175 -@826 := (hB : @612) -> - (hfn : @643) -> - (hwt : @790) -> - (hbind : @801) -> - (hF : @763) -> - (hA : @805) -> - (hne : @402 @807 @407) -> - @492 (fun (ro : @491) => @493 (@766 (@369 @452 @427) @17) (@623 @680 @17)) -@827 := @789 @135 -@828 := @363 @644 -@839 := @461 (@647 @354 @104) (@469 (@105 (@99 @268) (@105 (@102 @326) @104))) -@840 := @619 @707 -@842 := @369 @167 @169 -@861 := (hfn : @643) -> - (hwt : @828) -> - (hbind : @839) -> - (hF : @763) -> - (hA : @840 @842) -> - (hne : @402 @804 @407) -> - @492 (fun (ro : @491) => @493 (@766 (@369 @427 @181) @17) (@623 @726 @17)) -@862 := Eq.refl.{1} -@865 := @827 (@862 @435 @613) -@866 := @367 @644 -@877 := @461 (@647 @362 @104) (@469 (@105 (@99 @283) (@105 (@102 @341) @104))) -@878 := @619 @346 -@880 := @369 @169 @171 -@896 := (hwt : @866) -> - (hbind : @877) -> - (hF : @763) -> - (hA : @878 @880) -> - (hne : @402 @842 @407) -> @492 (fun (ro : @491) => @493 (@766 @807 @17) (@623 @670 @17)) -@897 := @865 @366 -@899 := @647 @90 @104 -@902 := @461 @899 (@469 @109) -@903 := @619 @354 -@905 := @369 @171 @12 -@920 := (hbind : @902) -> - (hF : @763) -> - (hA : @903 @905) -> - (hne : @402 @880 @407) -> @492 (fun (ro : @491) => @493 (@766 @804 @17) (@623 @662 @17)) -@923 := @897 (@862 @460 @899) -@924 := @619 @362 -@926 := @369 @12 @4 -@940 := (hF : @763) -> - (hA : @924 @926) -> - (hne : @402 @905 @407) -> @492 (fun (ro : @491) => @493 (@766 @842 @17) (@623 @707 @17)) -@943 := @923 (@862 @472 @616) -@957 := (hA : @619 @90 @371) -> - (hne : @402 @926 @407) -> @492 (fun (ro : @491) => @493 (@766 @880 @17) (@623 @346 @17)) -@958 := @943 @398 -@969 := (hne : @402 @371 @407) -> @492 (fun (ro : @491) => @493 (@766 @905 @17) (@623 @354 @17)) -@970 := @958 @420 -@976 := @493 (@766 @926 @17) (@623 @362 @17) -@978 := @492 (fun (ro : @491) => @976) -@980 := @492 (fun (__e_ro : @491) => @976) -@981 := LexLeanPreservation.Rust.RepresentableL -@982 := @5 @15 -@984 := @86 @56 @85 -@987 := @981 (@86 @982 @984) -@988 := (__e_hrep : @987) -> @980 -@989 := fun (__e_hrep : @987) => @970 -@990 := (b : @50) -> @988 -@991 := fun (b : @50) => @989 -@992 := (a : @3) -> @990 -@993 := fun (a : @3) => @991 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R25/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R25/Compose/RustStd.lex.tex deleted file mode 100644 index 97b21c89b..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R25/Compose/RustStd.lex.tex +++ /dev/null @@ -1,495 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.Compose.RustStd.root : @992 := @993 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.RustStd.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.RustStd.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.RustStd.flags -@3 := Int -@4 := #2 -@5 := LexLeanTarget.TargetSyntax.Value.int -@6 := @5 @4 -@7 := LexLeanTarget.TargetSyntax.Ty.int -@8 := LexLeanTarget.TargetSyntax.Program -@9 := LexLeanPreservation.Rust.RCrate -@10 := LexLeanPreservation.Rust.Flags -@11 := LexLeanPreservation.Rust.WT -@12 := #3 -@14 := @11 @12 @4 -@15 := #1 -@16 := @14 @15 -@17 := #0 -@18 := @5 @17 -@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 -@26 := LexLeanPreservation.Rust.wt_int @0 -@27 := @11 @0 -@29 := @27 @4 @15 -@34 := {c : @9} -> {A : @10} -> (n : @3) -> @29 @18 @7 -@35 := @26 @1 -@36 := @27 @1 -@37 := @36 @15 -@41 := {A : @10} -> (n : @3) -> @37 @18 @7 -@42 := @35 @2 -@43 := @36 @2 -@46 := (n : @3) -> @43 @18 @7 -@47 := @42 @4 -@49 := @43 @6 @7 -@50 := Int8 -@51 := LexLeanTarget.TargetSyntax.Value.i8 -@52 := @51 @15 -@55 := LexLeanTarget.TargetSyntax.Ty.fixed LexLeanTarget.TargetSyntax.IntKind.i8 -@56 := @51 @17 -@62 := {p : @8} -> {c : @9} -> {A : @10} -> (x : @50) -> @16 @56 @55 -@64 := LexLeanPreservation.Rust.wt_i8 @0 -@69 := {c : @9} -> {A : @10} -> (x : @50) -> @29 @56 @55 -@70 := @64 @1 -@74 := {A : @10} -> (x : @50) -> @37 @56 @55 -@75 := @70 @2 -@78 := (x : @50) -> @43 @56 @55 -@79 := @75 @15 -@81 := @43 @52 @55 -@82 := LexLeanTarget.TargetSyntax.Value -@83 := List.nil.{0} -@84 := List.cons.{0} -@85 := @83 @82 -@86 := @84 @82 -@88 := @86 @52 @85 -@90 := @86 @6 @88 -@91 := Nat -@94 := Prod.{0, 0} @91 @82 -@95 := 1 -@98 := Prod.mk.{0, 0} @91 @82 -@99 := @98 @95 -@100 := @99 @52 -@101 := 0 -@102 := @98 @101 -@103 := @102 @6 -@104 := @83 @94 -@105 := @84 @94 -@107 := @105 @103 @104 -@109 := @105 @100 @107 -@110 := Bool.false -@111 := LexLeanTarget.TargetSyntax.Function -@112 := LexLeanTarget.TargetSyntax.Program.functions -@113 := @112 @0 -@114 := LexLeanTarget.TargetSyntax.Ty -@115 := @83 @91 -@116 := @83 @114 -@117 := LexLeanTarget.TargetSyntax.Ty.unit -@118 := LexLeanTarget.TargetSyntax.Value.unit -@121 := LexLeanTarget.TargetSyntax.Expr.value @117 @118 -@126 := LexLeanTarget.TargetSyntax.Function.mk @115 @116 @117 @121 -@131 := List.getD.{0} @111 @113 @101 @126 -@135 := fun (__e_n : @91) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.RustStd.root @17 @101 -@136 := LexLeanPreservation.Rust.WTL -@144 := {p : @8} -> {c : @9} -> {A : @10} -> @136 @4 @15 @17 @85 @116 -@146 := LexLeanPreservation.Rust.wtl_nil @0 -@147 := @136 @0 -@153 := {c : @9} -> {A : @10} -> @147 @15 @17 @85 @116 -@154 := @146 @1 -@155 := @147 @1 -@159 := {A : @10} -> @155 @17 @85 @116 -@160 := @154 @2 -@161 := @155 @2 -@162 := @161 @85 -@163 := @162 @116 -@164 := List.{0} -@165 := @164 @82 -@166 := @164 @114 -@167 := #6 -@168 := @11 @167 -@169 := #5 -@170 := @168 @169 -@171 := #4 -@174 := @170 @171 @12 @4 -@175 := #7 -@180 := @136 @175 @167 @169 @4 @15 -@181 := #8 -@184 := @136 @181 @175 @167 -@186 := @86 @169 @12 -@187 := @184 @186 -@188 := @84 @114 -@190 := @188 @171 @4 -@200 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {v : @82} -> {t : @114} -> {vs : @165} -> {ts : @166} -> (h : @174) -> (hs : @180) -> @187 @190 -@202 := LexLeanPreservation.Rust.wtl_cons @0 -@222 := {c : @9} -> - {A : @10} -> - {v : @82} -> - {t : @114} -> - {vs : @165} -> - {ts : @166} -> - (h : @27 @169 @171 @12 @4) -> (hs : @147 @167 @169 @4 @15) -> @147 @175 @167 @186 @190 -@223 := @202 @1 -@239 := {A : @10} -> - {v : @82} -> - {t : @114} -> - {vs : @165} -> - {ts : @166} -> (h : @36 @171 @12 @4) -> (hs : @155 @169 @4 @15) -> @155 @167 @186 @190 -@240 := @223 @2 -@242 := @43 @12 @4 -@244 := @161 @4 @15 -@252 := {v : @82} -> - {t : @114} -> {vs : @165} -> {ts : @166} -> (h : @242) -> (hs : @244) -> @161 @186 @190 -@253 := @240 @52 -@254 := @51 @171 -@256 := @43 @254 @4 -@257 := @51 @167 -@258 := @86 @257 -@266 := {t : @114} -> - {vs : @165} -> {ts : @166} -> (h : @256) -> (hs : @244) -> @161 (@258 @12) @190 -@267 := @253 @55 -@268 := @51 @12 -@270 := @43 @268 @55 -@271 := @51 @169 -@272 := @86 @271 -@274 := @161 (@272 @12) -@275 := @188 @55 -@276 := @275 @4 -@281 := {vs : @165} -> {ts : @166} -> (h : @270) -> (hs : @244) -> @274 @276 -@282 := @267 @85 -@283 := @51 @4 -@285 := @43 @283 @55 -@286 := @162 @15 -@288 := @86 @254 @85 -@293 := {ts : @166} -> (h : @285) -> (hs : @286) -> @161 @288 @276 -@294 := @282 @116 -@296 := @86 @268 @85 -@297 := @161 @296 -@298 := @275 @116 -@301 := (h : @81) -> (hs : @163) -> @297 @298 -@302 := @294 @79 -@304 := @86 @283 @85 -@306 := @161 @304 @298 -@307 := (hs : @163) -> @306 -@308 := @302 @160 -@310 := @161 @88 @298 -@311 := @240 @6 -@312 := @5 @169 -@314 := @43 @312 @4 -@315 := @5 @175 -@316 := @86 @315 -@324 := {t : @114} -> - {vs : @165} -> {ts : @166} -> (h : @314) -> (hs : @244) -> @161 (@316 @12) @190 -@325 := @311 @7 -@326 := @5 @171 -@328 := @43 @326 @7 -@329 := @5 @167 -@330 := @86 @329 -@332 := @161 (@330 @12) -@333 := @188 @7 -@334 := @333 @4 -@339 := {vs : @165} -> {ts : @166} -> (h : @328) -> (hs : @244) -> @332 @334 -@340 := @325 @88 -@341 := @5 @12 -@343 := @43 @341 @7 -@344 := @297 @15 -@346 := @86 @312 @288 -@347 := @161 @346 -@351 := {ts : @166} -> (h : @343) -> (hs : @344) -> @347 @334 -@352 := @340 @298 -@354 := @86 @326 @296 -@355 := @161 @354 -@356 := @333 @298 -@359 := (h : @49) -> (hs : @306) -> @355 @356 -@360 := @352 @47 -@362 := @86 @341 @304 -@363 := @161 @362 -@365 := (hs : @310) -> @363 @356 -@366 := @360 @308 -@367 := @161 @90 -@368 := @367 @356 -@369 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.denote -@371 := @369 @4 @15 -@372 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.__fits_0 -@374 := @372 @4 @15 -@377 := Coverage.Prims.conversions @4 @15 -@378 := UInt16 -@379 := Option.{0} -@380 := @379 @378 -@381 := Int64 -@382 := @379 @381 -@383 := LexLeanTarget.TargetSyntax.Value.u16 -@384 := LexLeanPreservation.encOption -@386 := @384 @378 @383 -@387 := LexLeanTarget.TargetSyntax.Value.i64 -@389 := @384 @381 @387 -@395 := LexLeanPreservation.encPair @380 @382 @386 @389 @377 -@398 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.root @4 @15 -@399 := Bool -@400 := Ne.{1} -@401 := LexLeanPreservation.Obs -@402 := @400 @401 -@403 := LexLeanPreservation.Rel -@406 := @402 (@403 @15 @17) -@407 := LexLeanPreservation.Obs.stuck -@410 := (f : @399) -> (v : @82) -> @406 @407 -@412 := LexLeanPreservation.Rust.rel_ne_stuck @374 -@419 := (v : @82) -> @402 (@403 (@372 @12 @4) @17) @407 -@420 := @412 @395 -@424 := @402 (@403 @374 @395) @407 -@425 := @164 @94 -@426 := LexLeanPreservation.Rust.FunSem -@427 := #9 -@433 := (n : @91) -> @426 @427 @181 @175 @17 @167 -@434 := Eq.{1} -@435 := @379 @111 -@436 := @434 @435 -@443 := LexLeanRuntime.index (@164 @111) @111 (LexLeanRuntime.instIndexableList @111) -@447 := @436 (@443 (@112 @427) @167) -@448 := Option.some.{0} -@449 := @448 @111 -@450 := @449 @169 -@451 := @447 @450 -@452 := #10 -@456 := @136 @452 @427 @181 @169 -@457 := LexLeanTarget.TargetSyntax.Function.types -@458 := @457 @167 -@459 := @456 @458 -@460 := @379 @425 -@461 := @434 @460 -@462 := LexLeanTarget.TargetSemantics.bindAll -@463 := LexLeanTarget.TargetSyntax.Function.parameters -@468 := @461 (@462 (@463 @175) @167 @104) -@469 := @448 @425 -@470 := @469 @169 -@471 := @468 @470 -@472 := @379 @399 -@473 := @434 @472 -@474 := LexLeanPreservation.Rust.fnFallible -@475 := #11 -@478 := @473 (@474 @475 @427) -@479 := @448 @399 -@480 := @479 @169 -@481 := @478 @480 -@482 := LexLeanPreservation.RunConv -@483 := #13 -@487 := @482 @483 @452 @181 @169 -@489 := @402 @167 @407 -@490 := Exists.{1} -@491 := LexLeanPreservation.Rust.ROut -@492 := @490 @491 -@493 := And -@494 := LexLeanPreservation.Rust.RealizesFn -@498 := @493 (@494 @427 @181 @17) -@499 := LexLeanPreservation.Rust.RCI -@501 := @499 #15 -@502 := LexLeanPreservation.Rust.fnIdent -@503 := @502 @483 -@510 := (hne : @489) -> @492 (fun (ro : @491) => @498 (@501 @503 @475 @17)) -@525 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {f : @91} -> - {fn : @111} -> - {args : @165} -> - {env : @425} -> - {F : @399} -> - {o : @401} -> - (hB : @433) -> - (hfn : @451) -> (hwt : @459) -> (hbind : @471) -> (hF : @481) -> (hA : @487) -> @510 -@527 := LexLeanPreservation.Rust.compose @0 -@528 := @426 @0 -@533 := (n : @91) -> @528 @181 @175 @17 @167 -@534 := @443 @113 -@537 := @436 (@534 @167) @450 -@541 := @147 @427 @181 @169 @458 -@542 := @482 @0 -@545 := @542 @452 @181 @169 -@559 := {c : @9} -> - {A : @10} -> - {f : @91} -> - {fn : @111} -> - {args : @165} -> - {env : @425} -> - {F : @399} -> - {o : @401} -> - (hB : @533) -> - (hfn : @537) -> (hwt : @541) -> (hbind : @471) -> (hF : @481) -> (hA : @545) -> @510 -@560 := @527 @1 -@561 := @528 @1 -@565 := (n : @91) -> @561 @175 @17 @167 -@568 := @155 @181 @169 @458 -@569 := @474 @1 -@572 := @473 (@569 @427) @480 -@573 := @499 @1 -@583 := (hbind : @471) -> - (hF : @572) -> (hA : @545) -> (hne : @489) -> @492 (fun (ro : @491) => @498 (@573 @503 @475 @17)) -@593 := {A : @10} -> - {f : @91} -> - {fn : @111} -> - {args : @165} -> - {env : @425} -> {F : @399} -> {o : @401} -> (hB : @565) -> (hfn : @537) -> (hwt : @568) -> @583 -@594 := @560 @2 -@596 := @561 @2 @17 -@598 := (n : @91) -> @596 @167 -@599 := @161 @169 -@600 := @599 @458 -@609 := {f : @91} -> - {fn : @111} -> - {args : @165} -> - {env : @425} -> {F : @399} -> {o : @401} -> (hB : @598) -> (hfn : @537) -> (hwt : @600) -> @583 -@610 := @594 @101 -@612 := (n : @91) -> @596 @101 -@613 := @534 @101 -@614 := @436 @613 -@615 := @614 @450 -@616 := @569 @101 -@617 := @473 @616 -@618 := @617 @480 -@619 := @542 @101 -@621 := @619 @181 @169 -@623 := @573 (@502 @101) -@631 := (hF : @618) -> (hA : @621) -> (hne : @489) -> @492 (fun (ro : @491) => @498 (@623 @475 @17)) -@640 := {fn : @111} -> - {args : @165} -> - {env : @425} -> - {F : @399} -> {o : @401} -> (hB : @612) -> (hfn : @615) -> (hwt : @600) -> (hbind : @471) -> @631 -@641 := @610 @131 -@643 := @614 (@449 @131) -@644 := @457 @131 -@645 := @599 @644 -@647 := @462 (@463 @131) -@659 := {args : @165} -> - {env : @425} -> - {F : @399} -> - {o : @401} -> - (hB : @612) -> (hfn : @643) -> (hwt : @645) -> (hbind : @461 (@647 @167 @104) @470) -> @631 -@660 := @641 @90 -@662 := @316 (@258 @85) -@664 := @161 @662 @644 -@670 := @86 (@5 @181) (@86 (@51 @175) @85) -@674 := @461 (@647 @670 @104) @470 -@680 := @86 (@5 @452) (@86 (@51 @427) @85) -@682 := @619 @680 @169 -@684 := @86 (@5 @483) -@685 := #12 -@704 := {env : @425} -> - {F : @399} -> - {o : @401} -> - (hB : @612) -> - (hfn : @643) -> - (hwt : @664) -> - (hbind : @674) -> - (hF : @618) -> - (hA : @682) -> - (hne : @489) -> @492 (fun (ro : @491) => @498 (@623 (@684 (@86 (@51 @685) @85)) @17)) -@705 := @660 @109 -@707 := @330 (@272 @85) -@709 := @161 @707 @644 -@720 := @461 (@647 @662 @104) (@469 (@105 (@99 @257) (@105 (@102 @315) @104))) -@726 := @86 (@5 @427) (@86 (@51 @181) @85) -@748 := {F : @399} -> - {o : @401} -> - (hB : @612) -> - (hfn : @643) -> - (hwt : @709) -> - (hbind : @720) -> - (hF : @618) -> - (hA : @619 @726 @169) -> - (hne : @489) -> @492 (fun (ro : @491) => @498 (@623 (@86 (@5 @685) (@86 (@51 @475) @85)) @17)) -@749 := @705 @110 -@750 := @347 @644 -@761 := @461 (@647 @707 @104) (@469 (@105 (@99 @271) (@105 (@102 @329) @104))) -@763 := @617 (@479 @110) -@765 := @619 @670 @169 -@766 := @494 @110 -@788 := {o : @401} -> - (hB : @612) -> - (hfn : @643) -> - (hwt : @750) -> - (hbind : @761) -> - (hF : @763) -> - (hA : @765) -> - (hne : @489) -> - @492 (fun (ro : @491) => @493 (@766 @181 @17) (@623 (@86 (@5 @475) (@86 (@51 @452) @85)) @17)) -@789 := @749 @371 -@790 := @355 @644 -@801 := @461 (@647 @346 @104) (@469 (@105 (@99 @254) (@105 (@102 @312) @104))) -@802 := @619 @662 -@804 := @369 @175 @167 -@805 := @802 @804 -@807 := @369 @181 @175 -@826 := (hB : @612) -> - (hfn : @643) -> - (hwt : @790) -> - (hbind : @801) -> - (hF : @763) -> - (hA : @805) -> - (hne : @402 @807 @407) -> - @492 (fun (ro : @491) => @493 (@766 (@369 @452 @427) @17) (@623 @680 @17)) -@827 := @789 @135 -@828 := @363 @644 -@839 := @461 (@647 @354 @104) (@469 (@105 (@99 @268) (@105 (@102 @326) @104))) -@840 := @619 @707 -@842 := @369 @167 @169 -@861 := (hfn : @643) -> - (hwt : @828) -> - (hbind : @839) -> - (hF : @763) -> - (hA : @840 @842) -> - (hne : @402 @804 @407) -> - @492 (fun (ro : @491) => @493 (@766 (@369 @427 @181) @17) (@623 @726 @17)) -@862 := Eq.refl.{1} -@865 := @827 (@862 @435 @613) -@866 := @367 @644 -@877 := @461 (@647 @362 @104) (@469 (@105 (@99 @283) (@105 (@102 @341) @104))) -@878 := @619 @346 -@880 := @369 @169 @171 -@896 := (hwt : @866) -> - (hbind : @877) -> - (hF : @763) -> - (hA : @878 @880) -> - (hne : @402 @842 @407) -> @492 (fun (ro : @491) => @493 (@766 @807 @17) (@623 @670 @17)) -@897 := @865 @366 -@899 := @647 @90 @104 -@902 := @461 @899 (@469 @109) -@903 := @619 @354 -@905 := @369 @171 @12 -@920 := (hbind : @902) -> - (hF : @763) -> - (hA : @903 @905) -> - (hne : @402 @880 @407) -> @492 (fun (ro : @491) => @493 (@766 @804 @17) (@623 @662 @17)) -@923 := @897 (@862 @460 @899) -@924 := @619 @362 -@926 := @369 @12 @4 -@940 := (hF : @763) -> - (hA : @924 @926) -> - (hne : @402 @905 @407) -> @492 (fun (ro : @491) => @493 (@766 @842 @17) (@623 @707 @17)) -@943 := @923 (@862 @472 @616) -@957 := (hA : @619 @90 @371) -> - (hne : @402 @926 @407) -> @492 (fun (ro : @491) => @493 (@766 @880 @17) (@623 @346 @17)) -@958 := @943 @398 -@969 := (hne : @402 @371 @407) -> @492 (fun (ro : @491) => @493 (@766 @905 @17) (@623 @354 @17)) -@970 := @958 @420 -@976 := @493 (@766 @926 @17) (@623 @362 @17) -@978 := @492 (fun (ro : @491) => @976) -@980 := @492 (fun (__e_ro : @491) => @976) -@981 := LexLeanPreservation.Rust.RepresentableL -@982 := @5 @15 -@984 := @86 @56 @85 -@987 := @981 (@86 @982 @984) -@988 := (__e_hrep : @987) -> @980 -@989 := fun (__e_hrep : @987) => @970 -@990 := (b : @50) -> @988 -@991 := fun (b : @50) => @989 -@992 := (a : @3) -> @990 -@993 := fun (a : @3) => @991 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R25/RustCore.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R25/RustCore.lean deleted file mode 100644 index e4661d900..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R25/RustCore.lean +++ /dev/null @@ -1,33 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.RustCore -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1], types := [.int, (.fixed .i8)], result := (.pair (.option (.fixed .u16)) (.option (.fixed .i64))), - body := (.build .pair (.pair (.option (.fixed .u16)) (.option (.fixed .i64))) [(.prim (.convert .u16) [(.var 0)]), (.prim (.convert .i64) [(.var 1)])]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .core, items := [ - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .int }, { pattern := (.bind (.generated .binding 1)), type := (.fixed .i8) }] (.pair (.option (.fixed .u16)) (.option (.fixed .i64))) (.mk [] (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0)))] (.call (.runtime (.convert .u16)) [(.widen (.move (.generated .operand 1)))] false))) (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))] (.call (.runtime (.convert .i64)) [(.widen (.move (.generated .operand 2)))] false))))))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [], (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0)))] (.call (.runtime (.convert .u16)) [(.widen (.move (.generated .operand 1)))] false))) (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))] (.call (.runtime (.convert .i64)) [(.widen (.move (.generated .operand 2)))] false)))), [(1, (.fixed .i8), (some 1)), (0, .int, (some 0))], rfl, rfl, - (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0)))]) (tail := (.call (.runtime (.convert .u16)) [(.widen (.move (.generated .operand 1)))] false)) (Corr.primWiden (t0 := .int) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.convert .i64)) [(.widen (.move (.generated .operand 2)))] false)) (Corr.primWiden (t0 := (.fixed .i8)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl)) (Corr.lNil)))))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | _ + 1 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.RustCore diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R25/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R25/RustStd.lean deleted file mode 100644 index e61055a18..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R25/RustStd.lean +++ /dev/null @@ -1,33 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1], types := [.int, (.fixed .i8)], result := (.pair (.option (.fixed .u16)) (.option (.fixed .i64))), - body := (.build .pair (.pair (.option (.fixed .u16)) (.option (.fixed .i64))) [(.prim (.convert .u16) [(.var 0)]), (.prim (.convert .i64) [(.var 1)])]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .int }, { pattern := (.bind (.generated .binding 1)), type := (.fixed .i8) }] (.pair (.option (.fixed .u16)) (.option (.fixed .i64))) (.mk [] (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0)))] (.call (.runtime (.convert .u16)) [(.widen (.move (.generated .operand 1)))] false))) (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))] (.call (.runtime (.convert .i64)) [(.widen (.move (.generated .operand 2)))] false))))))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [], (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0)))] (.call (.runtime (.convert .u16)) [(.widen (.move (.generated .operand 1)))] false))) (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))] (.call (.runtime (.convert .i64)) [(.widen (.move (.generated .operand 2)))] false)))), [(1, (.fixed .i8), (some 1)), (0, .int, (some 0))], rfl, rfl, - (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0)))]) (tail := (.call (.runtime (.convert .u16)) [(.widen (.move (.generated .operand 1)))] false)) (Corr.primWiden (t0 := .int) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.convert .i64)) [(.widen (.move (.generated .operand 2)))] false)) (Corr.primWiden (t0 := (.fixed .i8)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl)) (Corr.lNil)))))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | _ + 1 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R26/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R26/Compose/RustStd.lex.tex deleted file mode 100644 index f3e7d03f7..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R26/Compose/RustStd.lex.tex +++ /dev/null @@ -1,604 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.Compose.RustStd.root : @1256 := @1257 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.RustStd.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.RustStd.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.RustStd.flags -@3 := Nat -@4 := List.{0} -@5 := @4 @3 -@6 := #3 -@7 := LexLeanTarget.TargetSyntax.Value.nat -@8 := LexLeanPreservation.encList -@9 := @8 @3 -@10 := @9 @7 -@11 := @10 @6 -@12 := LexLeanTarget.TargetSyntax.Ty.nat -@13 := LexLeanTarget.TargetSyntax.Ty.list -@14 := @13 @12 -@15 := #0 -@16 := LexLeanTarget.TargetSyntax.Program -@17 := LexLeanPreservation.Rust.RCrate -@18 := LexLeanPreservation.Rust.Flags -@19 := LexLeanPreservation.Rust.WT -@20 := @19 @6 -@21 := #2 -@22 := @20 @21 -@23 := #1 -@24 := @22 @23 -@25 := @7 @15 -@31 := {p : @16} -> {c : @17} -> {A : @18} -> (n : @3) -> @24 @25 @12 -@33 := LexLeanPreservation.Rust.wt_nat @0 -@34 := @19 @0 -@36 := @34 @21 @23 -@41 := {c : @17} -> {A : @18} -> (n : @3) -> @36 @25 @12 -@42 := @33 @1 -@43 := @34 @1 -@44 := @43 @23 -@48 := {A : @18} -> (n : @3) -> @44 @25 @12 -@49 := @42 @2 -@50 := @43 @2 -@51 := @50 @25 -@52 := @51 @12 -@53 := (n : @3) -> @52 -@55 := fun (__x : @3) => @49 @15 -@56 := Sort 1 -@57 := LexLeanTarget.TargetSyntax.Value -@58 := (a._@._internal._hyg.#0 : @15) -> @57 -@59 := LexLeanTarget.TargetSyntax.Ty -@60 := #6 -@61 := @19 @60 -@62 := #5 -@63 := @61 @62 -@64 := #4 -@65 := @63 @64 -@66 := @21 @15 -@69 := (x : @21) -> @65 @66 @23 -@70 := @4 @6 -@71 := #7 -@74 := @19 @71 @60 @62 -@77 := @8 @64 @6 @15 -@78 := @74 @77 -@79 := @13 @21 -@88 := {p : @16} -> - {c : @17} -> - {A : @18} -> {α : @56} -> {e : @58} -> {t : @59} -> (h : @69) -> (xs : @70) -> @78 @79 -@90 := LexLeanPreservation.Rust.wt_encList @0 -@92 := @34 @62 @64 -@106 := {c : @17} -> - {A : @18} -> - {α : @56} -> - {e : @58} -> {t : @59} -> (h : (x : @21) -> @92 @66 @23) -> (xs : @70) -> @34 @60 @62 @77 @79 -@107 := @90 @1 -@108 := @43 @64 -@120 := {A : @18} -> - {α : @56} -> - {e : @58} -> {t : @59} -> (h : (x : @21) -> @108 @66 @23) -> (xs : @70) -> @43 @62 @77 @79 -@121 := @107 @2 -@123 := @50 @66 @23 -@131 := {α : @56} -> {e : @58} -> {t : @59} -> (h : (x : @21) -> @123) -> (xs : @70) -> @50 @77 @79 -@132 := @121 @3 -@142 := {e : (a._@._internal._hyg.#0 : @3) -> @57} -> - {t : @59} -> (h : (x : @3) -> @123) -> (xs : @5) -> @50 (@9 @6 @15) @79 -@143 := @132 @7 -@145 := (x : @3) -> @51 @23 -@147 := @50 (@10 @15) -@151 := {t : @59} -> (h : @145) -> (xs : @5) -> @147 @79 -@152 := @143 @12 -@156 := (h : (x : @3) -> @52) -> (xs : @5) -> @147 @14 -@158 := @152 @55 @6 -@160 := @50 @11 @14 -@161 := ByteArray -@162 := LexLeanTarget.TargetSyntax.Value.bytes -@163 := @162 @21 -@164 := LexLeanTarget.TargetSyntax.Ty.bytes -@165 := @162 @15 -@171 := {p : @16} -> {c : @17} -> {A : @18} -> (b : @161) -> @24 @165 @164 -@173 := LexLeanPreservation.Rust.wt_bytes @0 -@178 := {c : @17} -> {A : @18} -> (b : @161) -> @36 @165 @164 -@179 := @173 @1 -@183 := {A : @18} -> (b : @161) -> @44 @165 @164 -@184 := @179 @2 -@187 := (b : @161) -> @50 @165 @164 -@188 := @184 @21 -@190 := @50 @163 @164 -@191 := @7 @23 -@192 := @49 @23 -@194 := @50 @191 @12 -@195 := List.nil.{0} -@196 := List.cons.{0} -@197 := @195 @57 -@198 := @196 @57 -@200 := @198 @191 @197 -@202 := @198 @163 @200 -@204 := @198 @11 @202 -@205 := Prod.{0, 0} -@206 := @205 @3 -@207 := @206 @57 -@208 := 2 -@211 := Prod.mk.{0, 0} @3 @57 -@212 := @211 @208 -@213 := @212 @191 -@215 := @211 1 -@216 := @215 @163 -@217 := 0 -@218 := @211 @217 -@219 := @218 @11 -@220 := @195 @207 -@221 := @196 @207 -@223 := @221 @219 @220 -@225 := @221 @216 @223 -@227 := @221 @213 @225 -@228 := Bool.true -@229 := LexLeanTarget.TargetSyntax.Function -@230 := LexLeanTarget.TargetSyntax.Program.functions -@231 := @230 @0 -@232 := @195 @3 -@233 := @195 @59 -@234 := LexLeanTarget.TargetSyntax.Ty.unit -@235 := LexLeanTarget.TargetSyntax.Value.unit -@238 := LexLeanTarget.TargetSyntax.Expr.value @234 @235 -@243 := LexLeanTarget.TargetSyntax.Function.mk @232 @233 @234 @238 -@248 := List.getD.{0} @229 @231 @217 @243 -@252 := fun (__e_n : @3) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.RustStd.root @15 @217 -@253 := LexLeanPreservation.Rust.WTL -@261 := {p : @16} -> {c : @17} -> {A : @18} -> @253 @21 @23 @15 @197 @233 -@263 := LexLeanPreservation.Rust.wtl_nil @0 -@264 := @253 @0 -@270 := {c : @17} -> {A : @18} -> @264 @23 @15 @197 @233 -@271 := @263 @1 -@272 := @264 @1 -@276 := {A : @18} -> @272 @15 @197 @233 -@277 := @271 @2 -@278 := @272 @2 -@279 := @278 @197 -@280 := @279 @233 -@281 := @4 @57 -@282 := @4 @59 -@284 := @65 @6 @21 -@289 := @253 @71 @60 @62 @21 @23 -@290 := #8 -@293 := @253 @290 @71 @60 -@295 := @198 @62 @6 -@296 := @293 @295 -@297 := @196 @59 -@299 := @297 @64 @21 -@309 := {p : @16} -> - {c : @17} -> - {A : @18} -> - {v : @57} -> {t : @59} -> {vs : @281} -> {ts : @282} -> (h : @284) -> (hs : @289) -> @296 @299 -@311 := LexLeanPreservation.Rust.wtl_cons @0 -@329 := {c : @17} -> - {A : @18} -> - {v : @57} -> - {t : @59} -> - {vs : @281} -> - {ts : @282} -> (h : @92 @6 @21) -> (hs : @264 @60 @62 @21 @23) -> @264 @71 @60 @295 @299 -@330 := @311 @1 -@345 := {A : @18} -> - {v : @57} -> - {t : @59} -> - {vs : @281} -> {ts : @282} -> (h : @108 @6 @21) -> (hs : @272 @62 @21 @23) -> @272 @60 @295 @299 -@346 := @330 @2 -@348 := @50 @6 @21 -@350 := @278 @21 @23 -@358 := {v : @57} -> - {t : @59} -> {vs : @281} -> {ts : @282} -> (h : @348) -> (hs : @350) -> @278 @295 @299 -@359 := @346 @191 -@360 := @7 @64 -@362 := @50 @360 @21 -@363 := @7 @60 -@364 := @198 @363 -@372 := {t : @59} -> {vs : @281} -> {ts : @282} -> (h : @362) -> (hs : @350) -> @278 (@364 @6) @299 -@373 := @359 @12 -@374 := @7 @6 -@376 := @50 @374 @12 -@377 := @7 @62 -@378 := @198 @377 -@380 := @278 (@378 @6) -@381 := @297 @12 -@382 := @381 @21 -@387 := {vs : @281} -> {ts : @282} -> (h : @376) -> (hs : @350) -> @380 @382 -@388 := @373 @197 -@389 := @7 @21 -@391 := @50 @389 @12 -@392 := @279 @23 -@394 := @198 @360 @197 -@399 := {ts : @282} -> (h : @391) -> (hs : @392) -> @278 @394 @382 -@400 := @388 @233 -@402 := @198 @374 @197 -@403 := @278 @402 -@404 := @381 @233 -@407 := (h : @194) -> (hs : @280) -> @403 @404 -@408 := @400 @192 -@410 := @198 @389 @197 -@412 := @278 @410 @404 -@413 := (hs : @280) -> @412 -@414 := @408 @277 -@416 := @278 @200 @404 -@417 := @346 @163 -@418 := @162 @62 -@420 := @50 @418 @21 -@421 := @162 @71 -@422 := @198 @421 -@430 := {t : @59} -> {vs : @281} -> {ts : @282} -> (h : @420) -> (hs : @350) -> @278 (@422 @6) @299 -@431 := @417 @164 -@432 := @162 @64 -@434 := @50 @432 @164 -@435 := @162 @60 -@436 := @198 @435 -@438 := @278 (@436 @6) -@439 := @297 @164 -@440 := @439 @21 -@445 := {vs : @281} -> {ts : @282} -> (h : @434) -> (hs : @350) -> @438 @440 -@446 := @431 @200 -@447 := @162 @6 -@449 := @50 @447 @164 -@450 := @403 @23 -@452 := @198 @418 @394 -@457 := {ts : @282} -> (h : @449) -> (hs : @450) -> @278 @452 @440 -@458 := @446 @404 -@460 := @198 @432 @402 -@461 := @278 @460 -@462 := @439 @404 -@465 := (h : @190) -> (hs : @412) -> @461 @462 -@466 := @458 @188 -@468 := @198 @447 @410 -@470 := @278 @468 @462 -@471 := (hs : @416) -> @470 -@472 := @466 @414 -@474 := @278 @202 @462 -@475 := @346 @11 -@476 := @10 @60 -@478 := @50 @476 @21 -@479 := @10 @290 -@480 := @198 @479 -@488 := {t : @59} -> {vs : @281} -> {ts : @282} -> (h : @478) -> (hs : @350) -> @278 (@480 @6) @299 -@489 := @475 @14 -@490 := @10 @62 -@492 := @50 @490 @14 -@493 := @10 @71 -@494 := @198 @493 -@496 := @278 (@494 @6) -@497 := @297 @14 -@498 := @497 @21 -@503 := {vs : @281} -> {ts : @282} -> (h : @492) -> (hs : @350) -> @496 @498 -@504 := @489 @202 -@505 := @10 @64 -@507 := @50 @505 @14 -@508 := @461 @23 -@510 := @198 @476 @452 -@511 := @278 @510 -@515 := {ts : @282} -> (h : @507) -> (hs : @508) -> @511 @498 -@516 := @504 @462 -@518 := @198 @490 @460 -@519 := @278 @518 -@520 := @497 @462 -@523 := (h : @160) -> (hs : @470) -> @519 @520 -@524 := @516 @158 -@526 := @198 @505 @468 -@527 := @278 @526 -@529 := (hs : @474) -> @527 @520 -@530 := @524 @472 -@531 := @278 @204 -@532 := @531 @520 -@533 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.denote -@536 := @533 @6 @21 @23 -@537 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.__fits_0 -@540 := @537 @6 @21 @23 -@544 := Coverage.Prims.sequences @6 @21 @23 -@545 := Option.{0} -@546 := @545 @3 -@547 := UInt8 -@548 := @545 @547 -@549 := @545 @5 -@550 := @545 @161 -@551 := Bool -@553 := @205 @551 @551 -@555 := @205 @550 @553 -@557 := @205 @549 @555 -@559 := @205 @548 @557 -@561 := @205 @546 @559 -@562 := @206 @561 -@564 := @205 @161 @562 -@565 := LexLeanPreservation.encOption -@567 := @565 @3 @7 -@568 := LexLeanTarget.TargetSyntax.Value.u8 -@570 := @565 @547 @568 -@572 := @565 @5 @10 -@574 := @565 @161 @162 -@575 := LexLeanTarget.TargetSyntax.Value.bool -@576 := LexLeanPreservation.encPair -@580 := @576 @551 @551 @575 @575 -@584 := @576 @550 @553 @574 @580 -@588 := @576 @549 @555 @572 @584 -@592 := @576 @548 @557 @570 @588 -@596 := @576 @546 @559 @567 @592 -@600 := @576 @3 @561 @7 @596 -@604 := @576 @161 @562 @162 @600 -@609 := @576 @5 @564 @10 @604 @544 -@613 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.root @6 @21 @23 -@614 := Ne.{1} -@615 := LexLeanPreservation.Obs -@616 := @614 @615 -@617 := LexLeanPreservation.Rel -@620 := @616 (@617 @23 @15) -@621 := LexLeanPreservation.Obs.stuck -@624 := (f : @551) -> (v : @57) -> @620 @621 -@626 := LexLeanPreservation.Rust.rel_ne_stuck @540 -@634 := (v : @57) -> @616 (@617 (@537 @64 @6 @21) @15) @621 -@635 := @626 @609 -@639 := @616 (@617 @540 @609) @621 -@640 := @4 @207 -@641 := LexLeanPreservation.Rust.FunSem -@642 := #9 -@648 := (n : @3) -> @641 @642 @290 @71 @15 @60 -@649 := Eq.{1} -@650 := @545 @229 -@651 := @649 @650 -@658 := LexLeanRuntime.index (@4 @229) @229 (LexLeanRuntime.instIndexableList @229) -@662 := @651 (@658 (@230 @642) @60) -@663 := Option.some.{0} -@664 := @663 @229 -@665 := @664 @62 -@666 := @662 @665 -@667 := #10 -@671 := @253 @667 @642 @290 @62 -@672 := LexLeanTarget.TargetSyntax.Function.types -@673 := @672 @60 -@674 := @671 @673 -@675 := @545 @640 -@676 := @649 @675 -@677 := LexLeanTarget.TargetSemantics.bindAll -@678 := LexLeanTarget.TargetSyntax.Function.parameters -@683 := @676 (@677 (@678 @71) @60 @220) -@684 := @663 @640 -@685 := @684 @62 -@686 := @683 @685 -@687 := @545 @551 -@688 := @649 @687 -@689 := LexLeanPreservation.Rust.fnFallible -@690 := #11 -@693 := @688 (@689 @690 @642) -@694 := @663 @551 -@695 := @694 @62 -@696 := @693 @695 -@697 := LexLeanPreservation.RunConv -@698 := #13 -@702 := @697 @698 @667 @290 @62 -@704 := @616 @60 @621 -@705 := Exists.{1} -@706 := LexLeanPreservation.Rust.ROut -@707 := @705 @706 -@708 := And -@709 := LexLeanPreservation.Rust.RealizesFn -@713 := @708 (@709 @642 @290 @15) -@714 := LexLeanPreservation.Rust.RCI -@716 := @714 #15 -@717 := LexLeanPreservation.Rust.fnIdent -@718 := @717 @698 -@725 := (hne : @704) -> @707 (fun (ro : @706) => @713 (@716 @718 @690 @15)) -@740 := {p : @16} -> - {c : @17} -> - {A : @18} -> - {f : @3} -> - {fn : @229} -> - {args : @281} -> - {env : @640} -> - {F : @551} -> - {o : @615} -> - (hB : @648) -> - (hfn : @666) -> (hwt : @674) -> (hbind : @686) -> (hF : @696) -> (hA : @702) -> @725 -@742 := LexLeanPreservation.Rust.compose @0 -@743 := @641 @0 -@748 := (n : @3) -> @743 @290 @71 @15 @60 -@749 := @658 @231 -@752 := @651 (@749 @60) @665 -@756 := @264 @642 @290 @62 @673 -@757 := @697 @0 -@760 := @757 @667 @290 @62 -@774 := {c : @17} -> - {A : @18} -> - {f : @3} -> - {fn : @229} -> - {args : @281} -> - {env : @640} -> - {F : @551} -> - {o : @615} -> - (hB : @748) -> - (hfn : @752) -> (hwt : @756) -> (hbind : @686) -> (hF : @696) -> (hA : @760) -> @725 -@775 := @742 @1 -@776 := @743 @1 -@780 := (n : @3) -> @776 @71 @15 @60 -@783 := @272 @290 @62 @673 -@784 := @689 @1 -@787 := @688 (@784 @642) @695 -@788 := @714 @1 -@798 := (hbind : @686) -> - (hF : @787) -> (hA : @760) -> (hne : @704) -> @707 (fun (ro : @706) => @713 (@788 @718 @690 @15)) -@808 := {A : @18} -> - {f : @3} -> - {fn : @229} -> - {args : @281} -> - {env : @640} -> {F : @551} -> {o : @615} -> (hB : @780) -> (hfn : @752) -> (hwt : @783) -> @798 -@809 := @775 @2 -@811 := @776 @2 @15 -@813 := (n : @3) -> @811 @60 -@814 := @278 @62 -@815 := @814 @673 -@824 := {f : @3} -> - {fn : @229} -> - {args : @281} -> - {env : @640} -> {F : @551} -> {o : @615} -> (hB : @813) -> (hfn : @752) -> (hwt : @815) -> @798 -@825 := @809 @217 -@827 := (n : @3) -> @811 @217 -@828 := @749 @217 -@829 := @651 @828 -@830 := @829 @665 -@831 := @784 @217 -@832 := @688 @831 -@833 := @832 @695 -@834 := @757 @217 -@836 := @834 @290 @62 -@838 := @788 (@717 @217) -@846 := (hF : @833) -> (hA : @836) -> (hne : @704) -> @707 (fun (ro : @706) => @713 (@838 @690 @15)) -@855 := {fn : @229} -> - {args : @281} -> - {env : @640} -> - {F : @551} -> {o : @615} -> (hB : @827) -> (hfn : @830) -> (hwt : @815) -> (hbind : @686) -> @846 -@856 := @825 @248 -@858 := @829 (@664 @248) -@859 := @672 @248 -@860 := @814 @859 -@862 := @677 (@678 @248) -@874 := {args : @281} -> - {env : @640} -> - {F : @551} -> - {o : @615} -> - (hB : @827) -> (hfn : @858) -> (hwt : @860) -> (hbind : @676 (@862 @60 @220) @685) -> @846 -@875 := @856 @204 -@878 := @480 (@422 (@364 @197)) -@880 := @278 @878 @859 -@889 := @198 (@10 @642) (@198 (@162 @290) (@198 (@7 @71) @197)) -@893 := @676 (@862 @889 @220) @685 -@902 := @198 (@10 @690) (@198 (@162 @667) (@198 (@7 @642) @197)) -@904 := @834 @902 @62 -@907 := @198 (@10 #14) -@909 := @198 (@162 @698) -@910 := #12 -@930 := {env : @640} -> - {F : @551} -> - {o : @615} -> - (hB : @827) -> - (hfn : @858) -> - (hwt : @880) -> - (hbind : @893) -> - (hF : @833) -> - (hA : @904) -> - (hne : @704) -> @707 (fun (ro : @706) => @713 (@838 (@907 (@909 (@198 (@7 @910) @197))) @15)) -@931 := @875 @227 -@934 := @494 (@436 (@378 @197)) -@936 := @278 @934 @859 -@950 := @676 (@862 @878 @220) (@684 (@221 (@212 @363) (@221 (@215 @421) (@221 (@218 @479) @220)))) -@959 := @198 (@10 @667) (@198 (@162 @642) (@198 (@7 @290) @197)) -@984 := {F : @551} -> - {o : @615} -> - (hB : @827) -> - (hfn : @858) -> - (hwt : @936) -> - (hbind : @950) -> - (hF : @833) -> - (hA : @834 @959 @62) -> - (hne : @704) -> - @707 - (fun (ro : @706) => @713 (@838 (@198 (@10 @698) (@198 (@162 @910) (@198 (@7 @690) @197))) @15)) -@985 := @931 @228 -@986 := @511 @859 -@1000 := @676 (@862 @934 @220) (@684 (@221 (@212 @377) (@221 (@215 @435) (@221 (@218 @493) @220)))) -@1002 := @832 (@694 @228) -@1004 := @834 @889 @62 -@1005 := @709 @228 -@1030 := {o : @615} -> - (hB : @827) -> - (hfn : @858) -> - (hwt : @986) -> - (hbind : @1000) -> - (hF : @1002) -> - (hA : @1004) -> - (hne : @704) -> - @707 - (fun (ro : @706) => - @708 (@1005 @290 @15) (@838 (@198 (@10 @910) (@198 (@162 @690) (@198 (@7 @667) @197))) @15)) -@1031 := @985 @536 -@1032 := @519 @859 -@1046 := @676 (@862 @510 @220) (@684 (@221 (@212 @360) (@221 (@215 @418) (@221 (@218 @476) @220)))) -@1047 := @834 @878 -@1050 := @533 @290 @71 @60 -@1051 := @1047 @1050 -@1054 := @533 @642 @290 @71 -@1074 := (hB : @827) -> - (hfn : @858) -> - (hwt : @1032) -> - (hbind : @1046) -> - (hF : @1002) -> - (hA : @1051) -> - (hne : @616 @1054 @621) -> - @707 (fun (ro : @706) => @708 (@1005 (@533 @690 @667 @642) @15) (@838 @902 @15)) -@1075 := @1031 @252 -@1076 := @527 @859 -@1090 := @676 (@862 @518 @220) (@684 (@221 (@212 @374) (@221 (@215 @432) (@221 (@218 @490) @220)))) -@1091 := @834 @934 -@1094 := @533 @71 @60 @62 -@1114 := (hfn : @858) -> - (hwt : @1076) -> - (hbind : @1090) -> - (hF : @1002) -> - (hA : @1091 @1094) -> - (hne : @616 @1050 @621) -> - @707 (fun (ro : @706) => @708 (@1005 (@533 @667 @642 @290) @15) (@838 @959 @15)) -@1115 := Eq.refl.{1} -@1118 := @1075 (@1115 @650 @828) -@1119 := @531 @859 -@1133 := @676 (@862 @526 @220) (@684 (@221 (@212 @389) (@221 (@215 @447) (@221 (@218 @505) @220)))) -@1134 := @834 @510 -@1137 := @533 @60 @62 @64 -@1153 := (hwt : @1119) -> - (hbind : @1133) -> - (hF : @1002) -> - (hA : @1134 @1137) -> - (hne : @616 @1094 @621) -> @707 (fun (ro : @706) => @708 (@1005 @1054 @15) (@838 @889 @15)) -@1154 := @1118 @530 -@1156 := @862 @204 @220 -@1159 := @676 @1156 (@684 @227) -@1160 := @834 @518 -@1163 := @533 @62 @64 @6 -@1178 := (hbind : @1159) -> - (hF : @1002) -> - (hA : @1160 @1163) -> - (hne : @616 @1137 @621) -> @707 (fun (ro : @706) => @708 (@1005 @1050 @15) (@838 @878 @15)) -@1181 := @1154 (@1115 @675 @1156) -@1182 := @834 @526 -@1185 := @533 @64 @6 @21 -@1199 := (hF : @1002) -> - (hA : @1182 @1185) -> - (hne : @616 @1163 @621) -> @707 (fun (ro : @706) => @708 (@1005 @1094 @15) (@838 @934 @15)) -@1202 := @1181 (@1115 @687 @831) -@1216 := (hA : @834 @204 @536) -> - (hne : @616 @1185 @621) -> @707 (fun (ro : @706) => @708 (@1005 @1137 @15) (@838 @510 @15)) -@1217 := @1202 @613 -@1228 := (hne : @616 @536 @621) -> @707 (fun (ro : @706) => @708 (@1005 @1163 @15) (@838 @518 @15)) -@1229 := @1217 @635 -@1235 := @708 (@1005 @1185 @15) (@838 @526 @15) -@1237 := @707 (fun (ro : @706) => @1235) -@1239 := @707 (fun (__e_ro : @706) => @1235) -@1240 := LexLeanPreservation.Rust.RepresentableL -@1241 := @10 @21 -@1242 := @162 @23 -@1244 := @198 @25 @197 -@1246 := @198 @1242 @1244 -@1249 := @1240 (@198 @1241 @1246) -@1250 := (__e_hrep : @1249) -> @1239 -@1251 := fun (__e_hrep : @1249) => @1229 -@1252 := (i : @3) -> @1250 -@1253 := fun (i : @3) => @1251 -@1254 := (b : @161) -> @1252 -@1255 := fun (b : @161) => @1253 -@1256 := (xs : @5) -> @1254 -@1257 := fun (xs : @5) => @1255 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R26/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R26/RustStd.lean deleted file mode 100644 index bc8e07265..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R26/RustStd.lean +++ /dev/null @@ -1,33 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1, 2], types := [(.list .nat), .bytes, .nat], result := (.pair (.list .nat) (.pair .bytes (.pair .nat (.pair (.option .nat) (.pair (.option (.fixed .u8)) (.pair (.option (.list .nat)) (.pair (.option .bytes) (.pair .bool .bool)))))))), - body := (.build .pair (.pair (.list .nat) (.pair .bytes (.pair .nat (.pair (.option .nat) (.pair (.option (.fixed .u8)) (.pair (.option (.list .nat)) (.pair (.option .bytes) (.pair .bool .bool)))))))) [(.prim .append [(.var 0), (.build .cons (.list .nat) [(.value .nat (.nat 1)), (.build .nil (.list .nat) [])])]), (.build .pair (.pair .bytes (.pair .nat (.pair (.option .nat) (.pair (.option (.fixed .u8)) (.pair (.option (.list .nat)) (.pair (.option .bytes) (.pair .bool .bool))))))) [(.prim .append [(.var 1), (.value .bytes (.bytes (ByteArray.mk #[10])))]), (.build .pair (.pair .nat (.pair (.option .nat) (.pair (.option (.fixed .u8)) (.pair (.option (.list .nat)) (.pair (.option .bytes) (.pair .bool .bool)))))) [(.prim .natAdd [(.prim .length [(.var 0)]), (.prim .length [(.var 1)])]), (.build .pair (.pair (.option .nat) (.pair (.option (.fixed .u8)) (.pair (.option (.list .nat)) (.pair (.option .bytes) (.pair .bool .bool))))) [(.prim .index [(.var 0), (.var 2)]), (.build .pair (.pair (.option (.fixed .u8)) (.pair (.option (.list .nat)) (.pair (.option .bytes) (.pair .bool .bool)))) [(.prim .index [(.var 1), (.var 2)]), (.build .pair (.pair (.option (.list .nat)) (.pair (.option .bytes) (.pair .bool .bool))) [(.prim .slice [(.var 0), (.var 2), (.value .nat (.nat 2))]), (.build .pair (.pair (.option .bytes) (.pair .bool .bool)) [(.prim .slice [(.var 1), (.value .nat (.nat 0)), (.var 2)]), (.build .pair (.pair .bool .bool) [(.prim .equal [(.var 1), (.value .bytes (.bytes (ByteArray.mk #[])))]), (.prim .equal [(.prim .equal [(.var 2), (.value .nat (.nat 3))]), (.build .true .bool [])])])])])])])])])]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := .bytes }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.fallible (.pair (.list .nat) (.pair .bytes (.pair .nat (.pair (.option .nat) (.pair (.option (.fixed .u8)) (.pair (.option (.list .nat)) (.pair (.option .bytes) (.pair .bool .bool))))))))) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.construct .cons [(.lit (.nat 1)), (.construct (.nil .nat) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 4)) none (.lit (.bytes (ByteArray.mk #[10]))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthList) [(.move (.generated .operand 5))] false)))), (.mk (.bind (.generated .operand 8)) none (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 6))] false))))] (.call (.runtime .natAdd) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] true))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.clone (.generated .binding 0))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 2)))] (.call (.runtime .indexList) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 2)))] (.call (.runtime .indexBytes) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 13)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 15)) none (.lit (.nat 2)))] (.call (.runtime .sliceList) [(.move (.generated .operand 13)), (.move (.generated .operand 14)), (.move (.generated .operand 15))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 17)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 18)) none (.copy (.generated .binding 2)))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 16)), (.move (.generated .operand 17)), (.move (.generated .operand 18))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.move (.generated .binding 1))), (.mk (.bind (.generated .operand 20)) none (.lit (.bytes (ByteArray.mk #[]))))] (.call (.runtime .equal) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false))) (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 22)) none (.lit (.nat 3)))] (.call (.runtime .equal) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false)))), (.mk (.bind (.generated .operand 24)) none (.lit (.bool true)))] (.call (.runtime .equal) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))))))))))))))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [], (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.construct .cons [(.lit (.nat 1)), (.construct (.nil .nat) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 4)) none (.lit (.bytes (ByteArray.mk #[10]))))] (.call (.runtime .appendBytes) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthList) [(.move (.generated .operand 5))] false)))), (.mk (.bind (.generated .operand 8)) none (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 6))] false))))] (.call (.runtime .natAdd) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] true))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.clone (.generated .binding 0))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 2)))] (.call (.runtime .indexList) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 2)))] (.call (.runtime .indexBytes) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 13)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 15)) none (.lit (.nat 2)))] (.call (.runtime .sliceList) [(.move (.generated .operand 13)), (.move (.generated .operand 14)), (.move (.generated .operand 15))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 17)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 18)) none (.copy (.generated .binding 2)))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 16)), (.move (.generated .operand 17)), (.move (.generated .operand 18))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.move (.generated .binding 1))), (.mk (.bind (.generated .operand 20)) none (.lit (.bytes (ByteArray.mk #[]))))] (.call (.runtime .equal) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false))) (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 22)) none (.lit (.nat 3)))] (.call (.runtime .equal) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false)))), (.mk (.bind (.generated .operand 24)) none (.lit (.bool true)))] (.call (.runtime .equal) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false)))))))))))), [(2, .nat, (some 2)), (1, .bytes, (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, - (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.construct .cons [(.lit (.nat 1)), (.construct (.nil .nat) [])]))]) (tail := (.call (.runtime .appendList) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false)) (Corr.prim (ts := [(.list .nat), (.list .nat)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 3)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 4)) none (.lit (.bytes (ByteArray.mk #[10]))))]) (tail := (.call (.runtime .appendBytes) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 7)) none (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthList) [(.move (.generated .operand 5))] false)))), (.mk (.bind (.generated .operand 8)) none (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 6))] false))))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 5)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 5))] false)) (Corr.prim (ts := [(.list .nat)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 6)) none (.clone (.generated .binding 1)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 6))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 9)) none (.clone (.generated .binding 0))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .indexList) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false)) (Corr.prim (ts := [(.list .nat), .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 11)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .indexBytes) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false)) (Corr.prim (ts := [.bytes, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 13)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 15)) none (.lit (.nat 2)))]) (tail := (.call (.runtime .sliceList) [(.move (.generated .operand 13)), (.move (.generated .operand 14)), (.move (.generated .operand 15))] false)) (Corr.prim (ts := [(.list .nat), .nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 16)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 17)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 18)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .sliceBytes) [(.move (.generated .operand 16)), (.move (.generated .operand 17)), (.move (.generated .operand 18))] false)) (Corr.prim (ts := [.bytes, .nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 19)) none (.move (.generated .binding 1))), (.mk (.bind (.generated .operand 20)) none (.lit (.bytes (ByteArray.mk #[]))))]) (tail := (.call (.runtime .equal) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 23)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 22)) none (.lit (.nat 3)))] (.call (.runtime .equal) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false)))), (.mk (.bind (.generated .operand 24)) none (.lit (.bool true)))]) (tail := (.call (.runtime .equal) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false)) (Corr.prim (ts := [.bool, .bool]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 21)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 22)) none (.lit (.nat 3)))]) (tail := (.call (.runtime .equal) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.buildConst rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil))))))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | _ + 1 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R27/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R27/Compose/RustStd.lex.tex deleted file mode 100644 index 9560cadd0..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R27/Compose/RustStd.lex.tex +++ /dev/null @@ -1,428 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.Compose.RustStd.root : @842 := @843 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.RustStd.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.RustStd.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.RustStd.flags -@3 := String -@4 := #1 -@5 := LexLeanTarget.TargetSyntax.Value.string -@6 := @5 @4 -@7 := LexLeanTarget.TargetSyntax.Ty.string -@8 := LexLeanTarget.TargetSyntax.Program -@9 := LexLeanPreservation.Rust.RCrate -@10 := LexLeanPreservation.Rust.Flags -@11 := LexLeanPreservation.Rust.WT -@12 := #3 -@13 := @11 @12 -@14 := #2 -@16 := @13 @14 @4 -@17 := #0 -@18 := @5 @17 -@24 := {p : @8} -> {c : @9} -> {A : @10} -> (s : @3) -> @16 @18 @7 -@26 := LexLeanPreservation.Rust.wt_string @0 -@27 := @11 @0 -@34 := {c : @9} -> {A : @10} -> (s : @3) -> @27 @14 @4 @18 @7 -@35 := @26 @1 -@36 := @27 @1 -@41 := {A : @10} -> (s : @3) -> @36 @4 @18 @7 -@42 := @35 @2 -@43 := @36 @2 -@46 := (s : @3) -> @43 @18 @7 -@47 := @42 @4 -@49 := @43 @6 @7 -@50 := LexLeanTarget.TargetSyntax.Value -@51 := List.nil.{0} -@52 := List.cons.{0} -@53 := @51 @50 -@54 := @52 @50 -@56 := @54 @6 @53 -@57 := Nat -@60 := Prod.{0, 0} @57 @50 -@61 := 0 -@65 := Prod.mk.{0, 0} @57 @50 @61 -@66 := @65 @6 -@67 := @51 @60 -@68 := @52 @60 -@70 := @68 @66 @67 -@71 := Bool.true -@72 := LexLeanTarget.TargetSyntax.Function -@73 := LexLeanTarget.TargetSyntax.Program.functions -@74 := @73 @0 -@75 := LexLeanTarget.TargetSyntax.Ty -@76 := @51 @57 -@77 := @51 @75 -@78 := LexLeanTarget.TargetSyntax.Ty.unit -@79 := LexLeanTarget.TargetSyntax.Value.unit -@82 := LexLeanTarget.TargetSyntax.Expr.value @78 @79 -@87 := LexLeanTarget.TargetSyntax.Function.mk @76 @77 @78 @82 -@92 := List.getD.{0} @72 @74 @61 @87 -@96 := fun (__e_n : @57) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.RustStd.root @17 @61 -@97 := LexLeanPreservation.Rust.WTL -@105 := {p : @8} -> {c : @9} -> {A : @10} -> @97 @14 @4 @17 @53 @77 -@107 := LexLeanPreservation.Rust.wtl_nil @0 -@108 := @97 @0 -@114 := {c : @9} -> {A : @10} -> @108 @4 @17 @53 @77 -@115 := @107 @1 -@116 := @108 @1 -@120 := {A : @10} -> @116 @17 @53 @77 -@121 := @115 @2 -@122 := @116 @2 -@123 := @122 @53 -@124 := @123 @77 -@125 := List.{0} -@126 := @125 @50 -@127 := @125 @75 -@128 := #6 -@129 := @11 @128 -@130 := #5 -@131 := @129 @130 -@132 := #4 -@135 := @131 @132 @12 @14 -@136 := #7 -@141 := @97 @136 @128 @130 @14 @4 -@142 := #8 -@145 := @97 @142 @136 @128 -@147 := @54 @130 @12 -@148 := @145 @147 -@149 := @52 @75 -@151 := @149 @132 @14 -@161 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {v : @50} -> {t : @75} -> {vs : @126} -> {ts : @127} -> (h : @135) -> (hs : @141) -> @148 @151 -@163 := LexLeanPreservation.Rust.wtl_cons @0 -@183 := {c : @9} -> - {A : @10} -> - {v : @50} -> - {t : @75} -> - {vs : @126} -> - {ts : @127} -> - (h : @27 @130 @132 @12 @14) -> (hs : @108 @128 @130 @14 @4) -> @108 @136 @128 @147 @151 -@184 := @163 @1 -@200 := {A : @10} -> - {v : @50} -> - {t : @75} -> - {vs : @126} -> - {ts : @127} -> (h : @36 @132 @12 @14) -> (hs : @116 @130 @14 @4) -> @116 @128 @147 @151 -@201 := @184 @2 -@203 := @43 @12 @14 -@205 := @122 @14 @4 -@213 := {v : @50} -> - {t : @75} -> {vs : @126} -> {ts : @127} -> (h : @203) -> (hs : @205) -> @122 @147 @151 -@214 := @201 @6 -@215 := @5 @132 -@217 := @43 @215 @14 -@218 := @5 @128 -@219 := @54 @218 -@227 := {t : @75} -> {vs : @126} -> {ts : @127} -> (h : @217) -> (hs : @205) -> @122 (@219 @12) @151 -@228 := @214 @7 -@229 := @5 @12 -@231 := @43 @229 @7 -@232 := @5 @130 -@233 := @54 @232 -@235 := @122 (@233 @12) -@236 := @149 @7 -@237 := @236 @14 -@242 := {vs : @126} -> {ts : @127} -> (h : @231) -> (hs : @205) -> @235 @237 -@243 := @228 @53 -@244 := @5 @14 -@246 := @43 @244 @7 -@247 := @123 @4 -@249 := @54 @215 @53 -@250 := @122 @249 -@254 := {ts : @127} -> (h : @246) -> (hs : @247) -> @250 @237 -@255 := @243 @77 -@257 := @54 @229 @53 -@258 := @122 @257 -@259 := @236 @77 -@262 := (h : @49) -> (hs : @124) -> @258 @259 -@263 := @255 @47 -@265 := @54 @244 @53 -@266 := @122 @265 -@268 := (hs : @124) -> @266 @259 -@269 := @263 @121 -@270 := @122 @56 -@271 := @270 @259 -@272 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.denote -@273 := @272 @4 -@274 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.__fits_0 -@275 := @274 @4 -@277 := Coverage.Prims.decimals @4 -@278 := Int -@279 := Option.{0} -@280 := @279 @278 -@281 := UInt32 -@282 := @279 @281 -@283 := LexLeanTarget.TargetSyntax.Value.int -@284 := LexLeanPreservation.encOption -@286 := @284 @278 @283 -@287 := LexLeanTarget.TargetSyntax.Value.u32 -@289 := @284 @281 @287 -@295 := LexLeanPreservation.encPair @280 @282 @286 @289 @277 -@297 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.root @4 -@298 := Bool -@299 := Ne.{1} -@300 := LexLeanPreservation.Obs -@301 := @299 @300 -@302 := LexLeanPreservation.Rel -@305 := @301 (@302 @4 @17) -@306 := LexLeanPreservation.Obs.stuck -@309 := (f : @298) -> (v : @50) -> @305 @306 -@311 := LexLeanPreservation.Rust.rel_ne_stuck @275 -@317 := (v : @50) -> @301 (@302 (@274 @14) @17) @306 -@318 := @311 @295 -@322 := @301 (@302 @275 @295) @306 -@323 := @125 @60 -@324 := LexLeanPreservation.Rust.FunSem -@325 := #9 -@331 := (n : @57) -> @324 @325 @142 @136 @17 @128 -@332 := Eq.{1} -@333 := @279 @72 -@334 := @332 @333 -@341 := LexLeanRuntime.index (@125 @72) @72 (LexLeanRuntime.instIndexableList @72) -@345 := @334 (@341 (@73 @325) @128) -@346 := Option.some.{0} -@347 := @346 @72 -@348 := @347 @130 -@349 := @345 @348 -@350 := #10 -@354 := @97 @350 @325 @142 @130 -@355 := LexLeanTarget.TargetSyntax.Function.types -@356 := @355 @128 -@357 := @354 @356 -@358 := @279 @323 -@359 := @332 @358 -@360 := LexLeanTarget.TargetSemantics.bindAll -@361 := LexLeanTarget.TargetSyntax.Function.parameters -@366 := @359 (@360 (@361 @136) @128 @67) -@367 := @346 @323 -@368 := @367 @130 -@369 := @366 @368 -@370 := @279 @298 -@371 := @332 @370 -@372 := LexLeanPreservation.Rust.fnFallible -@373 := #11 -@376 := @371 (@372 @373 @325) -@377 := @346 @298 -@378 := @377 @130 -@379 := @376 @378 -@380 := LexLeanPreservation.RunConv -@381 := #13 -@385 := @380 @381 @350 @142 @130 -@387 := @301 @128 @306 -@388 := Exists.{1} -@389 := LexLeanPreservation.Rust.ROut -@390 := @388 @389 -@391 := And -@392 := LexLeanPreservation.Rust.RealizesFn -@396 := @391 (@392 @325 @142 @17) -@397 := LexLeanPreservation.Rust.RCI -@399 := @397 #15 -@400 := LexLeanPreservation.Rust.fnIdent -@401 := @400 @381 -@408 := (hne : @387) -> @390 (fun (ro : @389) => @396 (@399 @401 @373 @17)) -@423 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {f : @57} -> - {fn : @72} -> - {args : @126} -> - {env : @323} -> - {F : @298} -> - {o : @300} -> - (hB : @331) -> - (hfn : @349) -> (hwt : @357) -> (hbind : @369) -> (hF : @379) -> (hA : @385) -> @408 -@425 := LexLeanPreservation.Rust.compose @0 -@426 := @324 @0 -@431 := (n : @57) -> @426 @142 @136 @17 @128 -@432 := @341 @74 -@435 := @334 (@432 @128) @348 -@439 := @108 @325 @142 @130 @356 -@440 := @380 @0 -@443 := @440 @350 @142 @130 -@457 := {c : @9} -> - {A : @10} -> - {f : @57} -> - {fn : @72} -> - {args : @126} -> - {env : @323} -> - {F : @298} -> - {o : @300} -> - (hB : @431) -> - (hfn : @435) -> (hwt : @439) -> (hbind : @369) -> (hF : @379) -> (hA : @443) -> @408 -@458 := @425 @1 -@459 := @426 @1 -@463 := (n : @57) -> @459 @136 @17 @128 -@466 := @116 @142 @130 @356 -@467 := @372 @1 -@470 := @371 (@467 @325) @378 -@471 := @397 @1 -@481 := (hbind : @369) -> - (hF : @470) -> (hA : @443) -> (hne : @387) -> @390 (fun (ro : @389) => @396 (@471 @401 @373 @17)) -@491 := {A : @10} -> - {f : @57} -> - {fn : @72} -> - {args : @126} -> - {env : @323} -> {F : @298} -> {o : @300} -> (hB : @463) -> (hfn : @435) -> (hwt : @466) -> @481 -@492 := @458 @2 -@494 := @459 @2 @17 -@496 := (n : @57) -> @494 @128 -@497 := @122 @130 -@498 := @497 @356 -@507 := {f : @57} -> - {fn : @72} -> - {args : @126} -> - {env : @323} -> {F : @298} -> {o : @300} -> (hB : @496) -> (hfn : @435) -> (hwt : @498) -> @481 -@508 := @492 @61 -@510 := (n : @57) -> @494 @61 -@511 := @432 @61 -@512 := @334 @511 -@513 := @512 @348 -@514 := @467 @61 -@515 := @371 @514 -@516 := @515 @378 -@517 := @440 @61 -@519 := @517 @142 @130 -@521 := @471 (@400 @61) -@529 := (hF : @516) -> (hA : @519) -> (hne : @387) -> @390 (fun (ro : @389) => @396 (@521 @373 @17)) -@538 := {fn : @72} -> - {args : @126} -> - {env : @323} -> - {F : @298} -> {o : @300} -> (hB : @510) -> (hfn : @513) -> (hwt : @498) -> (hbind : @369) -> @529 -@539 := @508 @92 -@541 := @512 (@347 @92) -@542 := @355 @92 -@543 := @497 @542 -@545 := @360 (@361 @92) -@557 := {args : @126} -> - {env : @323} -> - {F : @298} -> - {o : @300} -> - (hB : @510) -> (hfn : @541) -> (hwt : @543) -> (hbind : @359 (@545 @128 @67) @368) -> @529 -@558 := @539 @56 -@559 := @219 @53 -@561 := @122 @559 @542 -@564 := @54 (@5 @136) @53 -@568 := @359 (@545 @564 @67) @368 -@571 := @54 (@5 @325) @53 -@592 := {env : @323} -> - {F : @298} -> - {o : @300} -> - (hB : @510) -> - (hfn : @541) -> - (hwt : @561) -> - (hbind : @568) -> - (hF : @516) -> - (hA : @517 @571 @130) -> - (hne : @387) -> @390 (fun (ro : @389) => @396 (@521 (@54 (@5 #12) @53) @17)) -@593 := @558 @70 -@594 := @233 @53 -@596 := @122 @594 @542 -@604 := @359 (@545 @559 @67) (@367 (@68 (@65 @218) @67)) -@607 := @54 (@5 @142) @53 -@626 := {F : @298} -> - {o : @300} -> - (hB : @510) -> - (hfn : @541) -> - (hwt : @596) -> - (hbind : @604) -> - (hF : @516) -> - (hA : @517 @607 @130) -> - (hne : @387) -> @390 (fun (ro : @389) => @396 (@521 (@54 (@5 @373) @53) @17)) -@627 := @593 @71 -@628 := @250 @542 -@636 := @359 (@545 @594 @67) (@367 (@68 (@65 @232) @67)) -@638 := @515 (@377 @71) -@640 := @517 @564 @130 -@641 := @392 @71 -@660 := {o : @300} -> - (hB : @510) -> - (hfn : @541) -> - (hwt : @628) -> - (hbind : @636) -> - (hF : @638) -> - (hA : @640) -> - (hne : @387) -> @390 (fun (ro : @389) => @391 (@641 @142 @17) (@521 (@54 (@5 @350) @53) @17)) -@661 := @627 @273 -@662 := @258 @542 -@670 := @359 (@545 @249 @67) (@367 (@68 (@65 @215) @67)) -@671 := @517 @559 -@672 := @272 @128 -@673 := @671 @672 -@674 := @272 @136 -@692 := (hB : @510) -> - (hfn : @541) -> - (hwt : @662) -> - (hbind : @670) -> - (hF : @638) -> - (hA : @673) -> - (hne : @301 @674 @306) -> @390 (fun (ro : @389) => @391 (@641 (@272 @325) @17) (@521 @571 @17)) -@693 := @661 @96 -@694 := @266 @542 -@702 := @359 (@545 @257 @67) (@367 (@68 (@65 @229) @67)) -@703 := @517 @594 -@704 := @272 @130 -@722 := (hfn : @541) -> - (hwt : @694) -> - (hbind : @702) -> - (hF : @638) -> - (hA : @703 @704) -> - (hne : @301 @672 @306) -> @390 (fun (ro : @389) => @391 (@641 (@272 @142) @17) (@521 @607 @17)) -@723 := Eq.refl.{1} -@726 := @693 (@723 @333 @511) -@727 := @270 @542 -@735 := @359 (@545 @265 @67) (@367 (@68 (@65 @244) @67)) -@736 := @517 @249 -@737 := @272 @132 -@753 := (hwt : @727) -> - (hbind : @735) -> - (hF : @638) -> - (hA : @736 @737) -> - (hne : @301 @704 @306) -> @390 (fun (ro : @389) => @391 (@641 @674 @17) (@521 @564 @17)) -@754 := @726 @269 -@756 := @545 @56 @67 -@759 := @359 @756 (@367 @70) -@760 := @517 @257 -@761 := @272 @12 -@776 := (hbind : @759) -> - (hF : @638) -> - (hA : @760 @761) -> - (hne : @301 @737 @306) -> @390 (fun (ro : @389) => @391 (@641 @672 @17) (@521 @559 @17)) -@779 := @754 (@723 @358 @756) -@780 := @517 @265 -@781 := @272 @14 -@795 := (hF : @638) -> - (hA : @780 @781) -> - (hne : @301 @761 @306) -> @390 (fun (ro : @389) => @391 (@641 @704 @17) (@521 @594 @17)) -@798 := @779 (@723 @370 @514) -@812 := (hA : @517 @56 @273) -> - (hne : @301 @781 @306) -> @390 (fun (ro : @389) => @391 (@641 @737 @17) (@521 @249 @17)) -@813 := @798 @297 -@824 := (hne : @301 @273 @306) -> @390 (fun (ro : @389) => @391 (@641 @761 @17) (@521 @257 @17)) -@825 := @813 @318 -@831 := @391 (@641 @781 @17) (@521 @265 @17) -@833 := @390 (fun (ro : @389) => @831) -@835 := @390 (fun (__e_ro : @389) => @831) -@839 := LexLeanPreservation.Rust.RepresentableL (@54 @18 @53) -@840 := (__e_hrep : @839) -> @835 -@841 := fun (__e_hrep : @839) => @825 -@842 := (s : @3) -> @840 -@843 := fun (s : @3) => @841 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R27/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R27/RustStd.lean deleted file mode 100644 index e61101eab..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R27/RustStd.lean +++ /dev/null @@ -1,33 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0], types := [.string], result := (.pair (.option .int) (.option (.fixed .u32))), - body := (.build .pair (.pair (.option .int) (.option (.fixed .u32))) [(.prim (.parseDecimal .int) [(.var 0)]), (.prim (.parseDecimal (.fixed .u32)) [(.var 0)])]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .str }] (.fallible (.pair (.option .int) (.option (.fixed .u32)))) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))] (.call (.runtime .parseInt) [(.move (.generated .operand 1))] true))) (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.move (.generated .binding 0)))] (.call (.runtime (.parseFixed .u32)) [(.move (.generated .operand 2))] false)))))))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [], (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))] (.call (.runtime .parseInt) [(.move (.generated .operand 1))] true))) (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.move (.generated .binding 0)))] (.call (.runtime (.parseFixed .u32)) [(.move (.generated .operand 2))] false))))), [(0, .string, (some 0))], rfl, rfl, - (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .parseInt) [(.move (.generated .operand 1))] true)) (Corr.prim (ts := [.string]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 2)) none (.move (.generated .binding 0)))]) (tail := (.call (.runtime (.parseFixed .u32)) [(.move (.generated .operand 2))] false)) (Corr.prim (ts := [.string]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | _ + 1 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R28/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R28/Compose/RustStd.lex.tex deleted file mode 100644 index 47bda3ae9..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R28/Compose/RustStd.lex.tex +++ /dev/null @@ -1,488 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.Compose.RustStd.root : @983 := @984 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.RustStd.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.RustStd.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.RustStd.flags -@3 := Int -@4 := #2 -@5 := LexLeanTarget.TargetSyntax.Value.int -@6 := @5 @4 -@7 := LexLeanTarget.TargetSyntax.Ty.int -@8 := LexLeanTarget.TargetSyntax.Program -@9 := LexLeanPreservation.Rust.RCrate -@10 := LexLeanPreservation.Rust.Flags -@11 := LexLeanPreservation.Rust.WT -@12 := #3 -@14 := @11 @12 @4 -@15 := #1 -@16 := @14 @15 -@17 := #0 -@18 := @5 @17 -@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 -@26 := LexLeanPreservation.Rust.wt_int @0 -@27 := @11 @0 -@29 := @27 @4 @15 -@34 := {c : @9} -> {A : @10} -> (n : @3) -> @29 @18 @7 -@35 := @26 @1 -@36 := @27 @1 -@37 := @36 @15 -@41 := {A : @10} -> (n : @3) -> @37 @18 @7 -@42 := @35 @2 -@43 := @36 @2 -@46 := (n : @3) -> @43 @18 @7 -@47 := @42 @4 -@49 := @43 @6 @7 -@50 := Int8 -@51 := LexLeanTarget.TargetSyntax.Value.i8 -@52 := @51 @15 -@55 := LexLeanTarget.TargetSyntax.Ty.fixed LexLeanTarget.TargetSyntax.IntKind.i8 -@56 := @51 @17 -@62 := {p : @8} -> {c : @9} -> {A : @10} -> (x : @50) -> @16 @56 @55 -@64 := LexLeanPreservation.Rust.wt_i8 @0 -@69 := {c : @9} -> {A : @10} -> (x : @50) -> @29 @56 @55 -@70 := @64 @1 -@74 := {A : @10} -> (x : @50) -> @37 @56 @55 -@75 := @70 @2 -@78 := (x : @50) -> @43 @56 @55 -@79 := @75 @15 -@81 := @43 @52 @55 -@82 := LexLeanTarget.TargetSyntax.Value -@83 := List.nil.{0} -@84 := List.cons.{0} -@85 := @83 @82 -@86 := @84 @82 -@88 := @86 @52 @85 -@90 := @86 @6 @88 -@91 := Nat -@94 := Prod.{0, 0} @91 @82 -@95 := 1 -@98 := Prod.mk.{0, 0} @91 @82 -@99 := @98 @95 -@100 := @99 @52 -@101 := 0 -@102 := @98 @101 -@103 := @102 @6 -@104 := @83 @94 -@105 := @84 @94 -@107 := @105 @103 @104 -@109 := @105 @100 @107 -@110 := Bool.false -@111 := LexLeanTarget.TargetSyntax.Function -@112 := LexLeanTarget.TargetSyntax.Program.functions -@113 := @112 @0 -@114 := LexLeanTarget.TargetSyntax.Ty -@115 := @83 @91 -@116 := @83 @114 -@117 := LexLeanTarget.TargetSyntax.Ty.unit -@118 := LexLeanTarget.TargetSyntax.Value.unit -@121 := LexLeanTarget.TargetSyntax.Expr.value @117 @118 -@126 := LexLeanTarget.TargetSyntax.Function.mk @115 @116 @117 @121 -@131 := List.getD.{0} @111 @113 @101 @126 -@135 := fun (__e_n : @91) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.RustStd.root @17 @101 -@136 := LexLeanPreservation.Rust.WTL -@144 := {p : @8} -> {c : @9} -> {A : @10} -> @136 @4 @15 @17 @85 @116 -@146 := LexLeanPreservation.Rust.wtl_nil @0 -@147 := @136 @0 -@153 := {c : @9} -> {A : @10} -> @147 @15 @17 @85 @116 -@154 := @146 @1 -@155 := @147 @1 -@159 := {A : @10} -> @155 @17 @85 @116 -@160 := @154 @2 -@161 := @155 @2 -@162 := @161 @85 -@163 := @162 @116 -@164 := List.{0} -@165 := @164 @82 -@166 := @164 @114 -@167 := #6 -@168 := @11 @167 -@169 := #5 -@170 := @168 @169 -@171 := #4 -@174 := @170 @171 @12 @4 -@175 := #7 -@180 := @136 @175 @167 @169 @4 @15 -@181 := #8 -@184 := @136 @181 @175 @167 -@186 := @86 @169 @12 -@187 := @184 @186 -@188 := @84 @114 -@190 := @188 @171 @4 -@200 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {v : @82} -> {t : @114} -> {vs : @165} -> {ts : @166} -> (h : @174) -> (hs : @180) -> @187 @190 -@202 := LexLeanPreservation.Rust.wtl_cons @0 -@222 := {c : @9} -> - {A : @10} -> - {v : @82} -> - {t : @114} -> - {vs : @165} -> - {ts : @166} -> - (h : @27 @169 @171 @12 @4) -> (hs : @147 @167 @169 @4 @15) -> @147 @175 @167 @186 @190 -@223 := @202 @1 -@239 := {A : @10} -> - {v : @82} -> - {t : @114} -> - {vs : @165} -> - {ts : @166} -> (h : @36 @171 @12 @4) -> (hs : @155 @169 @4 @15) -> @155 @167 @186 @190 -@240 := @223 @2 -@242 := @43 @12 @4 -@244 := @161 @4 @15 -@252 := {v : @82} -> - {t : @114} -> {vs : @165} -> {ts : @166} -> (h : @242) -> (hs : @244) -> @161 @186 @190 -@253 := @240 @52 -@254 := @51 @171 -@256 := @43 @254 @4 -@257 := @51 @167 -@258 := @86 @257 -@266 := {t : @114} -> - {vs : @165} -> {ts : @166} -> (h : @256) -> (hs : @244) -> @161 (@258 @12) @190 -@267 := @253 @55 -@268 := @51 @12 -@270 := @43 @268 @55 -@271 := @51 @169 -@272 := @86 @271 -@274 := @161 (@272 @12) -@275 := @188 @55 -@276 := @275 @4 -@281 := {vs : @165} -> {ts : @166} -> (h : @270) -> (hs : @244) -> @274 @276 -@282 := @267 @85 -@283 := @51 @4 -@285 := @43 @283 @55 -@286 := @162 @15 -@288 := @86 @254 @85 -@293 := {ts : @166} -> (h : @285) -> (hs : @286) -> @161 @288 @276 -@294 := @282 @116 -@296 := @86 @268 @85 -@297 := @161 @296 -@298 := @275 @116 -@301 := (h : @81) -> (hs : @163) -> @297 @298 -@302 := @294 @79 -@304 := @86 @283 @85 -@306 := @161 @304 @298 -@307 := (hs : @163) -> @306 -@308 := @302 @160 -@310 := @161 @88 @298 -@311 := @240 @6 -@312 := @5 @169 -@314 := @43 @312 @4 -@315 := @5 @175 -@316 := @86 @315 -@324 := {t : @114} -> - {vs : @165} -> {ts : @166} -> (h : @314) -> (hs : @244) -> @161 (@316 @12) @190 -@325 := @311 @7 -@326 := @5 @171 -@328 := @43 @326 @7 -@329 := @5 @167 -@330 := @86 @329 -@332 := @161 (@330 @12) -@333 := @188 @7 -@334 := @333 @4 -@339 := {vs : @165} -> {ts : @166} -> (h : @328) -> (hs : @244) -> @332 @334 -@340 := @325 @88 -@341 := @5 @12 -@343 := @43 @341 @7 -@344 := @297 @15 -@346 := @86 @312 @288 -@347 := @161 @346 -@351 := {ts : @166} -> (h : @343) -> (hs : @344) -> @347 @334 -@352 := @340 @298 -@354 := @86 @326 @296 -@355 := @161 @354 -@356 := @333 @298 -@359 := (h : @49) -> (hs : @306) -> @355 @356 -@360 := @352 @47 -@362 := @86 @341 @304 -@363 := @161 @362 -@365 := (hs : @310) -> @363 @356 -@366 := @360 @308 -@367 := @161 @90 -@368 := @367 @356 -@369 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.denote -@371 := @369 @4 @15 -@372 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.__fits_0 -@374 := @372 @4 @15 -@377 := Coverage.Prims.formats @4 @15 -@378 := String -@379 := LexLeanTarget.TargetSyntax.Value.string -@385 := LexLeanPreservation.encPair @378 @378 @379 @379 @377 -@388 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.root @4 @15 -@389 := Bool -@390 := Ne.{1} -@391 := LexLeanPreservation.Obs -@392 := @390 @391 -@393 := LexLeanPreservation.Rel -@396 := @392 (@393 @15 @17) -@397 := LexLeanPreservation.Obs.stuck -@400 := (f : @389) -> (v : @82) -> @396 @397 -@402 := LexLeanPreservation.Rust.rel_ne_stuck @374 -@409 := (v : @82) -> @392 (@393 (@372 @12 @4) @17) @397 -@410 := @402 @385 -@414 := @392 (@393 @374 @385) @397 -@415 := @164 @94 -@416 := LexLeanPreservation.Rust.FunSem -@417 := #9 -@423 := (n : @91) -> @416 @417 @181 @175 @17 @167 -@424 := Eq.{1} -@425 := Option.{0} -@426 := @425 @111 -@427 := @424 @426 -@434 := LexLeanRuntime.index (@164 @111) @111 (LexLeanRuntime.instIndexableList @111) -@438 := @427 (@434 (@112 @417) @167) -@439 := Option.some.{0} -@440 := @439 @111 -@441 := @440 @169 -@442 := @438 @441 -@443 := #10 -@447 := @136 @443 @417 @181 @169 -@448 := LexLeanTarget.TargetSyntax.Function.types -@449 := @448 @167 -@450 := @447 @449 -@451 := @425 @415 -@452 := @424 @451 -@453 := LexLeanTarget.TargetSemantics.bindAll -@454 := LexLeanTarget.TargetSyntax.Function.parameters -@459 := @452 (@453 (@454 @175) @167 @104) -@460 := @439 @415 -@461 := @460 @169 -@462 := @459 @461 -@463 := @425 @389 -@464 := @424 @463 -@465 := LexLeanPreservation.Rust.fnFallible -@466 := #11 -@469 := @464 (@465 @466 @417) -@470 := @439 @389 -@471 := @470 @169 -@472 := @469 @471 -@473 := LexLeanPreservation.RunConv -@474 := #13 -@478 := @473 @474 @443 @181 @169 -@480 := @392 @167 @397 -@481 := Exists.{1} -@482 := LexLeanPreservation.Rust.ROut -@483 := @481 @482 -@484 := And -@485 := LexLeanPreservation.Rust.RealizesFn -@489 := @484 (@485 @417 @181 @17) -@490 := LexLeanPreservation.Rust.RCI -@492 := @490 #15 -@493 := LexLeanPreservation.Rust.fnIdent -@494 := @493 @474 -@501 := (hne : @480) -> @483 (fun (ro : @482) => @489 (@492 @494 @466 @17)) -@516 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {f : @91} -> - {fn : @111} -> - {args : @165} -> - {env : @415} -> - {F : @389} -> - {o : @391} -> - (hB : @423) -> - (hfn : @442) -> (hwt : @450) -> (hbind : @462) -> (hF : @472) -> (hA : @478) -> @501 -@518 := LexLeanPreservation.Rust.compose @0 -@519 := @416 @0 -@524 := (n : @91) -> @519 @181 @175 @17 @167 -@525 := @434 @113 -@528 := @427 (@525 @167) @441 -@532 := @147 @417 @181 @169 @449 -@533 := @473 @0 -@536 := @533 @443 @181 @169 -@550 := {c : @9} -> - {A : @10} -> - {f : @91} -> - {fn : @111} -> - {args : @165} -> - {env : @415} -> - {F : @389} -> - {o : @391} -> - (hB : @524) -> - (hfn : @528) -> (hwt : @532) -> (hbind : @462) -> (hF : @472) -> (hA : @536) -> @501 -@551 := @518 @1 -@552 := @519 @1 -@556 := (n : @91) -> @552 @175 @17 @167 -@559 := @155 @181 @169 @449 -@560 := @465 @1 -@563 := @464 (@560 @417) @471 -@564 := @490 @1 -@574 := (hbind : @462) -> - (hF : @563) -> (hA : @536) -> (hne : @480) -> @483 (fun (ro : @482) => @489 (@564 @494 @466 @17)) -@584 := {A : @10} -> - {f : @91} -> - {fn : @111} -> - {args : @165} -> - {env : @415} -> {F : @389} -> {o : @391} -> (hB : @556) -> (hfn : @528) -> (hwt : @559) -> @574 -@585 := @551 @2 -@587 := @552 @2 @17 -@589 := (n : @91) -> @587 @167 -@590 := @161 @169 -@591 := @590 @449 -@600 := {f : @91} -> - {fn : @111} -> - {args : @165} -> - {env : @415} -> {F : @389} -> {o : @391} -> (hB : @589) -> (hfn : @528) -> (hwt : @591) -> @574 -@601 := @585 @101 -@603 := (n : @91) -> @587 @101 -@604 := @525 @101 -@605 := @427 @604 -@606 := @605 @441 -@607 := @560 @101 -@608 := @464 @607 -@609 := @608 @471 -@610 := @533 @101 -@612 := @610 @181 @169 -@614 := @564 (@493 @101) -@622 := (hF : @609) -> (hA : @612) -> (hne : @480) -> @483 (fun (ro : @482) => @489 (@614 @466 @17)) -@631 := {fn : @111} -> - {args : @165} -> - {env : @415} -> - {F : @389} -> {o : @391} -> (hB : @603) -> (hfn : @606) -> (hwt : @591) -> (hbind : @462) -> @622 -@632 := @601 @131 -@634 := @605 (@440 @131) -@635 := @448 @131 -@636 := @590 @635 -@638 := @453 (@454 @131) -@650 := {args : @165} -> - {env : @415} -> - {F : @389} -> - {o : @391} -> - (hB : @603) -> (hfn : @634) -> (hwt : @636) -> (hbind : @452 (@638 @167 @104) @461) -> @622 -@651 := @632 @90 -@653 := @316 (@258 @85) -@655 := @161 @653 @635 -@661 := @86 (@5 @181) (@86 (@51 @175) @85) -@665 := @452 (@638 @661 @104) @461 -@671 := @86 (@5 @443) (@86 (@51 @417) @85) -@673 := @610 @671 @169 -@675 := @86 (@5 @474) -@676 := #12 -@695 := {env : @415} -> - {F : @389} -> - {o : @391} -> - (hB : @603) -> - (hfn : @634) -> - (hwt : @655) -> - (hbind : @665) -> - (hF : @609) -> - (hA : @673) -> - (hne : @480) -> @483 (fun (ro : @482) => @489 (@614 (@675 (@86 (@51 @676) @85)) @17)) -@696 := @651 @109 -@698 := @330 (@272 @85) -@700 := @161 @698 @635 -@711 := @452 (@638 @653 @104) (@460 (@105 (@99 @257) (@105 (@102 @315) @104))) -@717 := @86 (@5 @417) (@86 (@51 @181) @85) -@739 := {F : @389} -> - {o : @391} -> - (hB : @603) -> - (hfn : @634) -> - (hwt : @700) -> - (hbind : @711) -> - (hF : @609) -> - (hA : @610 @717 @169) -> - (hne : @480) -> @483 (fun (ro : @482) => @489 (@614 (@86 (@5 @676) (@86 (@51 @466) @85)) @17)) -@740 := @696 @110 -@741 := @347 @635 -@752 := @452 (@638 @698 @104) (@460 (@105 (@99 @271) (@105 (@102 @329) @104))) -@754 := @608 (@470 @110) -@756 := @610 @661 @169 -@757 := @485 @110 -@779 := {o : @391} -> - (hB : @603) -> - (hfn : @634) -> - (hwt : @741) -> - (hbind : @752) -> - (hF : @754) -> - (hA : @756) -> - (hne : @480) -> - @483 (fun (ro : @482) => @484 (@757 @181 @17) (@614 (@86 (@5 @466) (@86 (@51 @443) @85)) @17)) -@780 := @740 @371 -@781 := @355 @635 -@792 := @452 (@638 @346 @104) (@460 (@105 (@99 @254) (@105 (@102 @312) @104))) -@793 := @610 @653 -@795 := @369 @175 @167 -@796 := @793 @795 -@798 := @369 @181 @175 -@817 := (hB : @603) -> - (hfn : @634) -> - (hwt : @781) -> - (hbind : @792) -> - (hF : @754) -> - (hA : @796) -> - (hne : @392 @798 @397) -> - @483 (fun (ro : @482) => @484 (@757 (@369 @443 @417) @17) (@614 @671 @17)) -@818 := @780 @135 -@819 := @363 @635 -@830 := @452 (@638 @354 @104) (@460 (@105 (@99 @268) (@105 (@102 @326) @104))) -@831 := @610 @698 -@833 := @369 @167 @169 -@852 := (hfn : @634) -> - (hwt : @819) -> - (hbind : @830) -> - (hF : @754) -> - (hA : @831 @833) -> - (hne : @392 @795 @397) -> - @483 (fun (ro : @482) => @484 (@757 (@369 @417 @181) @17) (@614 @717 @17)) -@853 := Eq.refl.{1} -@856 := @818 (@853 @426 @604) -@857 := @367 @635 -@868 := @452 (@638 @362 @104) (@460 (@105 (@99 @283) (@105 (@102 @341) @104))) -@869 := @610 @346 -@871 := @369 @169 @171 -@887 := (hwt : @857) -> - (hbind : @868) -> - (hF : @754) -> - (hA : @869 @871) -> - (hne : @392 @833 @397) -> @483 (fun (ro : @482) => @484 (@757 @798 @17) (@614 @661 @17)) -@888 := @856 @366 -@890 := @638 @90 @104 -@893 := @452 @890 (@460 @109) -@894 := @610 @354 -@896 := @369 @171 @12 -@911 := (hbind : @893) -> - (hF : @754) -> - (hA : @894 @896) -> - (hne : @392 @871 @397) -> @483 (fun (ro : @482) => @484 (@757 @795 @17) (@614 @653 @17)) -@914 := @888 (@853 @451 @890) -@915 := @610 @362 -@917 := @369 @12 @4 -@931 := (hF : @754) -> - (hA : @915 @917) -> - (hne : @392 @896 @397) -> @483 (fun (ro : @482) => @484 (@757 @833 @17) (@614 @698 @17)) -@934 := @914 (@853 @463 @607) -@948 := (hA : @610 @90 @371) -> - (hne : @392 @917 @397) -> @483 (fun (ro : @482) => @484 (@757 @871 @17) (@614 @346 @17)) -@949 := @934 @388 -@960 := (hne : @392 @371 @397) -> @483 (fun (ro : @482) => @484 (@757 @896 @17) (@614 @354 @17)) -@961 := @949 @410 -@967 := @484 (@757 @917 @17) (@614 @362 @17) -@969 := @483 (fun (ro : @482) => @967) -@971 := @483 (fun (__e_ro : @482) => @967) -@972 := LexLeanPreservation.Rust.RepresentableL -@973 := @5 @15 -@975 := @86 @56 @85 -@978 := @972 (@86 @973 @975) -@979 := (__e_hrep : @978) -> @971 -@980 := fun (__e_hrep : @978) => @961 -@981 := (b : @50) -> @979 -@982 := fun (b : @50) => @980 -@983 := (a : @3) -> @981 -@984 := fun (a : @3) => @982 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R28/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R28/RustStd.lean deleted file mode 100644 index 79cb03aa2..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R28/RustStd.lean +++ /dev/null @@ -1,33 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1], types := [.int, (.fixed .i8)], result := (.pair .string .string), - body := (.build .pair (.pair .string .string) [(.prim .formatDecimal [(.var 0)]), (.prim .formatDecimal [(.var 1)])]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .int }, { pattern := (.bind (.generated .binding 1)), type := (.fixed .i8) }] (.pair .str .str) (.mk [] (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0)))] (.call (.runtime .formatInt) [(.move (.generated .operand 1))] false))) (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))] (.call (.runtime (.formatFixed .i8)) [(.move (.generated .operand 2))] false))))))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [], (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0)))] (.call (.runtime .formatInt) [(.move (.generated .operand 1))] false))) (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))] (.call (.runtime (.formatFixed .i8)) [(.move (.generated .operand 2))] false)))), [(1, (.fixed .i8), (some 1)), (0, .int, (some 0))], rfl, rfl, - (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0)))]) (tail := (.call (.runtime .formatInt) [(.move (.generated .operand 1))] false)) (Corr.prim (ts := [.int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime (.formatFixed .i8)) [(.move (.generated .operand 2))] false)) (Corr.prim (ts := [(.fixed .i8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | _ + 1 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R29/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R29/Compose/RustStd.lex.tex deleted file mode 100644 index 8b0f6d13e..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R29/Compose/RustStd.lex.tex +++ /dev/null @@ -1,490 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.Compose.RustStd.root : @966 := @967 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.RustStd.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.RustStd.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.RustStd.flags -@3 := String -@4 := #2 -@5 := LexLeanTarget.TargetSyntax.Value.string -@6 := @5 @4 -@7 := LexLeanTarget.TargetSyntax.Ty.string -@8 := LexLeanTarget.TargetSyntax.Program -@9 := LexLeanPreservation.Rust.RCrate -@10 := LexLeanPreservation.Rust.Flags -@11 := LexLeanPreservation.Rust.WT -@12 := #3 -@14 := @11 @12 @4 -@15 := #1 -@16 := @14 @15 -@17 := #0 -@18 := @5 @17 -@24 := {p : @8} -> {c : @9} -> {A : @10} -> (s : @3) -> @16 @18 @7 -@26 := LexLeanPreservation.Rust.wt_string @0 -@27 := @11 @0 -@34 := {c : @9} -> {A : @10} -> (s : @3) -> @27 @4 @15 @18 @7 -@35 := @26 @1 -@36 := @27 @1 -@41 := {A : @10} -> (s : @3) -> @36 @15 @18 @7 -@42 := @35 @2 -@43 := @36 @2 -@46 := (s : @3) -> @43 @18 @7 -@47 := @42 @4 -@49 := @43 @6 @7 -@50 := @5 @15 -@51 := @42 @15 -@53 := @43 @50 @7 -@54 := LexLeanTarget.TargetSyntax.Value -@55 := List.nil.{0} -@56 := List.cons.{0} -@57 := @55 @54 -@58 := @56 @54 -@59 := @58 @50 -@60 := @59 @57 -@61 := @58 @6 -@62 := @61 @60 -@63 := Nat -@64 := Prod.{0, 0} -@65 := @64 @63 -@66 := @65 @54 -@67 := 1 -@70 := Prod.mk.{0, 0} @63 @54 -@71 := @70 @67 -@72 := @71 @50 -@73 := 0 -@74 := @70 @73 -@75 := @74 @6 -@76 := @55 @66 -@77 := @56 @66 -@79 := @77 @75 @76 -@81 := @77 @72 @79 -@82 := Bool.false -@83 := LexLeanTarget.TargetSyntax.Function -@84 := LexLeanTarget.TargetSyntax.Program.functions -@85 := @84 @0 -@86 := LexLeanTarget.TargetSyntax.Ty -@87 := @55 @63 -@88 := @55 @86 -@89 := LexLeanTarget.TargetSyntax.Ty.unit -@90 := LexLeanTarget.TargetSyntax.Value.unit -@93 := LexLeanTarget.TargetSyntax.Expr.value @89 @90 -@98 := LexLeanTarget.TargetSyntax.Function.mk @87 @88 @89 @93 -@103 := List.getD.{0} @83 @85 @73 @98 -@107 := fun (__e_n : @63) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.RustStd.root @17 @73 -@108 := LexLeanPreservation.Rust.WTL -@116 := {p : @8} -> {c : @9} -> {A : @10} -> @108 @4 @15 @17 @57 @88 -@118 := LexLeanPreservation.Rust.wtl_nil @0 -@119 := @108 @0 -@125 := {c : @9} -> {A : @10} -> @119 @15 @17 @57 @88 -@126 := @118 @1 -@127 := @119 @1 -@131 := {A : @10} -> @127 @17 @57 @88 -@132 := @126 @2 -@133 := @127 @2 -@134 := @133 @57 -@135 := @134 @88 -@136 := List.{0} -@137 := @136 @54 -@138 := @136 @86 -@139 := #6 -@140 := @11 @139 -@141 := #5 -@142 := @140 @141 -@143 := #4 -@146 := @142 @143 @12 @4 -@147 := #7 -@152 := @108 @147 @139 @141 @4 @15 -@153 := #8 -@156 := @108 @153 @147 @139 -@158 := @58 @141 @12 -@159 := @156 @158 -@160 := @56 @86 -@162 := @160 @143 @4 -@172 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {v : @54} -> {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @146) -> (hs : @152) -> @159 @162 -@174 := LexLeanPreservation.Rust.wtl_cons @0 -@194 := {c : @9} -> - {A : @10} -> - {v : @54} -> - {t : @86} -> - {vs : @137} -> - {ts : @138} -> - (h : @27 @141 @143 @12 @4) -> (hs : @119 @139 @141 @4 @15) -> @119 @147 @139 @158 @162 -@195 := @174 @1 -@211 := {A : @10} -> - {v : @54} -> - {t : @86} -> - {vs : @137} -> - {ts : @138} -> (h : @36 @143 @12 @4) -> (hs : @127 @141 @4 @15) -> @127 @139 @158 @162 -@212 := @195 @2 -@214 := @43 @12 @4 -@216 := @133 @4 @15 -@224 := {v : @54} -> - {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @214) -> (hs : @216) -> @133 @158 @162 -@225 := @212 @50 -@226 := @5 @143 -@227 := @43 @226 -@228 := @227 @4 -@229 := @5 @139 -@230 := @58 @229 -@232 := @133 (@230 @12) -@238 := {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @228) -> (hs : @216) -> @232 @162 -@239 := @225 @7 -@240 := @5 @12 -@242 := @43 @240 @7 -@243 := @5 @141 -@244 := @58 @243 -@246 := @133 (@244 @12) -@247 := @160 @7 -@248 := @247 @4 -@253 := {vs : @137} -> {ts : @138} -> (h : @242) -> (hs : @216) -> @246 @248 -@254 := @239 @57 -@255 := @134 @15 -@256 := @58 @226 -@257 := @256 @57 -@262 := {ts : @138} -> (h : @49) -> (hs : @255) -> @133 @257 @248 -@263 := @254 @88 -@264 := @58 @240 -@265 := @264 @57 -@266 := @133 @265 -@267 := @247 @88 -@270 := (h : @53) -> (hs : @135) -> @266 @267 -@271 := @263 @51 -@272 := @61 @57 -@274 := @133 @272 @267 -@275 := (hs : @135) -> @274 -@276 := @271 @132 -@278 := @133 @60 @267 -@279 := @212 @6 -@281 := @43 @243 @4 -@282 := @5 @147 -@283 := @58 @282 -@291 := {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @281) -> (hs : @216) -> @133 (@283 @12) @162 -@292 := @279 @7 -@298 := {vs : @137} -> {ts : @138} -> (h : @227 @7) -> (hs : @216) -> @232 @248 -@299 := @292 @60 -@300 := @266 @15 -@301 := @244 @257 -@302 := @133 @301 -@306 := {ts : @138} -> (h : @242) -> (hs : @300) -> @302 @248 -@307 := @299 @267 -@308 := @256 @265 -@309 := @133 @308 -@310 := @247 @267 -@313 := (h : @49) -> (hs : @274) -> @309 @310 -@314 := @307 @47 -@315 := @264 @272 -@316 := @133 @315 -@318 := (hs : @278) -> @316 @310 -@319 := @314 @276 -@320 := @133 @62 -@321 := @320 @310 -@322 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.denote -@324 := @322 @4 @15 -@325 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.__fits_0 -@327 := @325 @4 @15 -@330 := Coverage.Prims.text @4 @15 -@331 := ByteArray -@332 := Option.{0} -@333 := @332 @3 -@334 := Ordering -@335 := @136 @3 -@336 := @332 @335 -@337 := Bool -@338 := @65 @337 -@340 := @64 @3 @338 -@342 := @64 @336 @340 -@344 := @64 @334 @342 -@346 := @64 @333 @344 -@347 := LexLeanTarget.TargetSyntax.Value.bytes -@348 := LexLeanPreservation.encOption -@350 := @348 @3 @5 -@351 := LexLeanPreservation.encOrdering -@354 := LexLeanPreservation.encList @3 @5 -@356 := @348 @335 @354 -@357 := LexLeanTarget.TargetSyntax.Value.nat -@358 := LexLeanTarget.TargetSyntax.Value.bool -@359 := LexLeanPreservation.encPair -@363 := @359 @63 @337 @357 @358 -@367 := @359 @3 @338 @5 @363 -@371 := @359 @336 @340 @356 @367 -@375 := @359 @334 @342 @351 @371 -@379 := @359 @333 @344 @350 @375 -@384 := @359 @331 @346 @347 @379 @330 -@387 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.root @4 @15 -@388 := Ne.{1} -@389 := LexLeanPreservation.Obs -@390 := @388 @389 -@391 := LexLeanPreservation.Rel -@394 := @390 (@391 @15 @17) -@395 := LexLeanPreservation.Obs.stuck -@398 := (f : @337) -> (v : @54) -> @394 @395 -@400 := LexLeanPreservation.Rust.rel_ne_stuck @327 -@407 := (v : @54) -> @390 (@391 (@325 @12 @4) @17) @395 -@408 := @400 @384 -@412 := @390 (@391 @327 @384) @395 -@413 := @136 @66 -@414 := LexLeanPreservation.Rust.FunSem -@415 := #9 -@421 := (n : @63) -> @414 @415 @153 @147 @17 @139 -@422 := Eq.{1} -@423 := @332 @83 -@424 := @422 @423 -@431 := LexLeanRuntime.index (@136 @83) @83 (LexLeanRuntime.instIndexableList @83) -@435 := @424 (@431 (@84 @415) @139) -@436 := Option.some.{0} -@437 := @436 @83 -@438 := @437 @141 -@439 := @435 @438 -@440 := #10 -@444 := @108 @440 @415 @153 @141 -@445 := LexLeanTarget.TargetSyntax.Function.types -@446 := @445 @139 -@447 := @444 @446 -@448 := @332 @413 -@449 := @422 @448 -@450 := LexLeanTarget.TargetSemantics.bindAll -@451 := LexLeanTarget.TargetSyntax.Function.parameters -@456 := @449 (@450 (@451 @147) @139 @76) -@457 := @436 @413 -@458 := @457 @141 -@459 := @456 @458 -@460 := @332 @337 -@461 := @422 @460 -@462 := LexLeanPreservation.Rust.fnFallible -@463 := #11 -@466 := @461 (@462 @463 @415) -@467 := @436 @337 -@468 := @467 @141 -@469 := @466 @468 -@470 := LexLeanPreservation.RunConv -@471 := #13 -@475 := @470 @471 @440 @153 @141 -@477 := @390 @139 @395 -@478 := Exists.{1} -@479 := LexLeanPreservation.Rust.ROut -@480 := @478 @479 -@481 := And -@482 := LexLeanPreservation.Rust.RealizesFn -@486 := @481 (@482 @415 @153 @17) -@487 := LexLeanPreservation.Rust.RCI -@489 := @487 #15 -@490 := LexLeanPreservation.Rust.fnIdent -@491 := @490 @471 -@498 := (hne : @477) -> @480 (fun (ro : @479) => @486 (@489 @491 @463 @17)) -@513 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {f : @63} -> - {fn : @83} -> - {args : @137} -> - {env : @413} -> - {F : @337} -> - {o : @389} -> - (hB : @421) -> - (hfn : @439) -> (hwt : @447) -> (hbind : @459) -> (hF : @469) -> (hA : @475) -> @498 -@515 := LexLeanPreservation.Rust.compose @0 -@516 := @414 @0 -@521 := (n : @63) -> @516 @153 @147 @17 @139 -@522 := @431 @85 -@525 := @424 (@522 @139) @438 -@529 := @119 @415 @153 @141 @446 -@530 := @470 @0 -@533 := @530 @440 @153 @141 -@547 := {c : @9} -> - {A : @10} -> - {f : @63} -> - {fn : @83} -> - {args : @137} -> - {env : @413} -> - {F : @337} -> - {o : @389} -> - (hB : @521) -> - (hfn : @525) -> (hwt : @529) -> (hbind : @459) -> (hF : @469) -> (hA : @533) -> @498 -@548 := @515 @1 -@549 := @516 @1 -@553 := (n : @63) -> @549 @147 @17 @139 -@556 := @127 @153 @141 @446 -@557 := @462 @1 -@560 := @461 (@557 @415) @468 -@561 := @487 @1 -@571 := (hbind : @459) -> - (hF : @560) -> (hA : @533) -> (hne : @477) -> @480 (fun (ro : @479) => @486 (@561 @491 @463 @17)) -@581 := {A : @10} -> - {f : @63} -> - {fn : @83} -> - {args : @137} -> - {env : @413} -> {F : @337} -> {o : @389} -> (hB : @553) -> (hfn : @525) -> (hwt : @556) -> @571 -@582 := @548 @2 -@584 := @549 @2 @17 -@586 := (n : @63) -> @584 @139 -@587 := @133 @141 -@588 := @587 @446 -@597 := {f : @63} -> - {fn : @83} -> - {args : @137} -> - {env : @413} -> {F : @337} -> {o : @389} -> (hB : @586) -> (hfn : @525) -> (hwt : @588) -> @571 -@598 := @582 @73 -@600 := (n : @63) -> @584 @73 -@601 := @522 @73 -@602 := @424 @601 -@603 := @602 @438 -@604 := @557 @73 -@605 := @461 @604 -@606 := @605 @468 -@607 := @530 @73 -@609 := @607 @153 @141 -@611 := @561 (@490 @73) -@619 := (hF : @606) -> (hA : @609) -> (hne : @477) -> @480 (fun (ro : @479) => @486 (@611 @463 @17)) -@628 := {fn : @83} -> - {args : @137} -> - {env : @413} -> - {F : @337} -> {o : @389} -> (hB : @600) -> (hfn : @603) -> (hwt : @588) -> (hbind : @459) -> @619 -@629 := @598 @103 -@631 := @602 (@437 @103) -@632 := @445 @103 -@633 := @587 @632 -@635 := @450 (@451 @103) -@647 := {args : @137} -> - {env : @413} -> - {F : @337} -> - {o : @389} -> - (hB : @600) -> (hfn : @631) -> (hwt : @633) -> (hbind : @449 (@635 @139 @76) @458) -> @619 -@648 := @629 @62 -@650 := @283 (@230 @57) -@652 := @133 @650 @632 -@654 := @58 (@5 @153) -@656 := @654 (@283 @57) -@660 := @449 (@635 @656 @76) @458 -@662 := @58 (@5 @440) -@664 := @58 (@5 @415) -@666 := @662 (@664 @57) -@668 := @607 @666 @141 -@670 := @58 (@5 @471) -@673 := @58 (@5 #12) -@690 := {env : @413} -> - {F : @337} -> - {o : @389} -> - (hB : @600) -> - (hfn : @631) -> - (hwt : @652) -> - (hbind : @660) -> - (hF : @606) -> - (hA : @668) -> (hne : @477) -> @480 (fun (ro : @479) => @486 (@611 (@670 (@673 @57)) @17)) -@691 := @648 @81 -@693 := @230 (@244 @57) -@695 := @133 @693 @632 -@706 := @449 (@635 @650 @76) (@457 (@77 (@71 @229) (@77 (@74 @282) @76))) -@708 := @664 (@654 @57) -@710 := @607 @708 @141 -@712 := @58 (@5 @463) -@728 := {F : @337} -> - {o : @389} -> - (hB : @600) -> - (hfn : @631) -> - (hwt : @695) -> - (hbind : @706) -> - (hF : @606) -> - (hA : @710) -> (hne : @477) -> @480 (fun (ro : @479) => @486 (@611 (@673 (@712 @57)) @17)) -@729 := @691 @82 -@730 := @302 @632 -@741 := @449 (@635 @693 @76) (@457 (@77 (@71 @243) (@77 (@74 @229) @76))) -@743 := @605 (@467 @82) -@745 := @607 @656 @141 -@746 := @482 @82 -@764 := {o : @389} -> - (hB : @600) -> - (hfn : @631) -> - (hwt : @730) -> - (hbind : @741) -> - (hF : @743) -> - (hA : @745) -> - (hne : @477) -> @480 (fun (ro : @479) => @481 (@746 @153 @17) (@611 (@712 (@662 @57)) @17)) -@765 := @729 @324 -@766 := @309 @632 -@777 := @449 (@635 @301 @76) (@457 (@77 (@71 @226) (@77 (@74 @243) @76))) -@778 := @607 @650 -@780 := @322 @147 @139 -@781 := @778 @780 -@783 := @322 @153 @147 -@802 := (hB : @600) -> - (hfn : @631) -> - (hwt : @766) -> - (hbind : @777) -> - (hF : @743) -> - (hA : @781) -> - (hne : @390 @783 @395) -> - @480 (fun (ro : @479) => @481 (@746 (@322 @440 @415) @17) (@611 @666 @17)) -@803 := @765 @107 -@804 := @316 @632 -@815 := @449 (@635 @308 @76) (@457 (@77 (@71 @240) (@77 (@74 @226) @76))) -@816 := @607 @693 -@818 := @322 @139 @141 -@837 := (hfn : @631) -> - (hwt : @804) -> - (hbind : @815) -> - (hF : @743) -> - (hA : @816 @818) -> - (hne : @390 @780 @395) -> - @480 (fun (ro : @479) => @481 (@746 (@322 @415 @153) @17) (@611 @708 @17)) -@838 := Eq.refl.{1} -@841 := @803 (@838 @423 @601) -@842 := @320 @632 -@853 := @449 (@635 @315 @76) (@457 (@77 (@71 @6) (@77 (@74 @240) @76))) -@854 := @607 @301 -@856 := @322 @141 @143 -@872 := (hwt : @842) -> - (hbind : @853) -> - (hF : @743) -> - (hA : @854 @856) -> - (hne : @390 @818 @395) -> @480 (fun (ro : @479) => @481 (@746 @783 @17) (@611 @656 @17)) -@873 := @841 @319 -@875 := @635 @62 @76 -@878 := @449 @875 (@457 @81) -@879 := @607 @308 -@881 := @322 @143 @12 -@896 := (hbind : @878) -> - (hF : @743) -> - (hA : @879 @881) -> - (hne : @390 @856 @395) -> @480 (fun (ro : @479) => @481 (@746 @780 @17) (@611 @650 @17)) -@899 := @873 (@838 @448 @875) -@900 := @607 @315 -@902 := @322 @12 @4 -@916 := (hF : @743) -> - (hA : @900 @902) -> - (hne : @390 @881 @395) -> @480 (fun (ro : @479) => @481 (@746 @818 @17) (@611 @693 @17)) -@919 := @899 (@838 @460 @604) -@933 := (hA : @607 @62 @324) -> - (hne : @390 @902 @395) -> @480 (fun (ro : @479) => @481 (@746 @856 @17) (@611 @301 @17)) -@934 := @919 @387 -@945 := (hne : @390 @324 @395) -> @480 (fun (ro : @479) => @481 (@746 @881 @17) (@611 @308 @17)) -@946 := @934 @408 -@952 := @481 (@746 @902 @17) (@611 @315 @17) -@954 := @480 (fun (ro : @479) => @952) -@956 := @480 (fun (__e_ro : @479) => @952) -@961 := LexLeanPreservation.Rust.RepresentableL (@59 (@58 @18 @57)) -@962 := (__e_hrep : @961) -> @956 -@963 := fun (__e_hrep : @961) => @946 -@964 := (d : @3) -> @962 -@965 := fun (d : @3) => @963 -@966 := (s : @3) -> @964 -@967 := fun (s : @3) => @965 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R29/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R29/RustStd.lean deleted file mode 100644 index c10025621..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R29/RustStd.lean +++ /dev/null @@ -1,33 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1], types := [.string, .string], result := (.pair .bytes (.pair (.option .string) (.pair .ordering (.pair (.option (.list .string)) (.pair .string (.pair .nat .bool)))))), - body := (.«let» 2 .bytes (.prim .utf8Encode [(.var 0)]) (.build .pair (.pair .bytes (.pair (.option .string) (.pair .ordering (.pair (.option (.list .string)) (.pair .string (.pair .nat .bool)))))) [(.var 2), (.build .pair (.pair (.option .string) (.pair .ordering (.pair (.option (.list .string)) (.pair .string (.pair .nat .bool))))) [(.prim .utf8Decode [(.var 2)]), (.build .pair (.pair .ordering (.pair (.option (.list .string)) (.pair .string (.pair .nat .bool)))) [(.prim .compareBytes [(.var 2), (.value .bytes (.bytes (ByteArray.mk #[0, 255])))]), (.build .pair (.pair (.option (.list .string)) (.pair .string (.pair .nat .bool))) [(.prim .splitExact [(.var 0), (.var 1), (.value (.fixed .u32) (.u32 4))]), (.build .pair (.pair .string (.pair .nat .bool)) [(.prim .join [(.build .cons (.list .string) [(.var 0), (.build .cons (.list .string) [(.value .string (.string "x\"y")), (.build .nil (.list .string) [])])]), (.var 1)]), (.build .pair (.pair .nat .bool) [(.prim .length [(.var 0)]), (.cond (.prim .equal [(.var 0), (.var 1)]) (.prim .equal [(.prim .compareBytes [(.var 2), (.var 2)]), (.prim .compareBytes [(.value .bytes (.bytes (ByteArray.mk #[]))), (.value .bytes (.bytes (ByteArray.mk #[1])))])]) (.build .false .bool []))])])])])])])) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .str }, { pattern := (.bind (.generated .binding 1)), type := .str }] (.pair .bytes (.pair (.option .str) (.pair .ordering (.pair (.option (.list .str)) (.pair .str (.pair .nat .bool)))))) (.mk [(.mk (.bind (.generated .binding 2)) (some .bytes) (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))] (.call (.runtime .utf8Encode) [(.move (.generated .operand 1))] false))))] (.pair (.clone (.generated .binding 2)) (.pair (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.clone (.generated .binding 2)))] (.call (.runtime .utf8Decode) [(.move (.generated .operand 2))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.clone (.generated .binding 2))), (.mk (.bind (.generated .operand 4)) none (.lit (.bytes (ByteArray.mk #[0, 255]))))] (.call (.runtime .compareBytes) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.clone (.generated .binding 0))), (.mk (.bind (.generated .operand 6)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 7)) none (.lit (.fixed .u32 4)))] (.call (.runtime .splitExact) [(.move (.generated .operand 5)), (.move (.generated .operand 6)), (.move (.generated .operand 7))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 8)) none (.construct .cons [(.clone (.generated .binding 0)), (.construct .cons [(.lit (.str "x\"y")), (.construct (.nil .str) [])])])), (.mk (.bind (.generated .operand 9)) none (.clone (.generated .binding 1)))] (.call (.runtime .join) [(.move (.generated .operand 8)), (.move (.generated .operand 9))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 10)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthString) [(.move (.generated .operand 10))] false))) (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.move (.generated .binding 1)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false) (.mk [(.mk (.bind (.generated .operand 17)) none (.block (.mk [(.mk (.bind (.generated .operand 13)) none (.clone (.generated .binding 2))), (.mk (.bind (.generated .operand 14)) none (.move (.generated .binding 2)))] (.call (.runtime .compareBytes) [(.move (.generated .operand 13)), (.move (.generated .operand 14))] false)))), (.mk (.bind (.generated .operand 18)) none (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.lit (.bytes (ByteArray.mk #[])))), (.mk (.bind (.generated .operand 16)) none (.lit (.bytes (ByteArray.mk #[1]))))] (.call (.runtime .compareBytes) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] false))))] (.call (.runtime .equal) [(.move (.generated .operand 17)), (.move (.generated .operand 18))] false)) (.mk [] (.lit (.bool false))))))))))))))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some .bytes) (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))] (.call (.runtime .utf8Encode) [(.move (.generated .operand 1))] false))))], (.pair (.clone (.generated .binding 2)) (.pair (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.clone (.generated .binding 2)))] (.call (.runtime .utf8Decode) [(.move (.generated .operand 2))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.clone (.generated .binding 2))), (.mk (.bind (.generated .operand 4)) none (.lit (.bytes (ByteArray.mk #[0, 255]))))] (.call (.runtime .compareBytes) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.clone (.generated .binding 0))), (.mk (.bind (.generated .operand 6)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 7)) none (.lit (.fixed .u32 4)))] (.call (.runtime .splitExact) [(.move (.generated .operand 5)), (.move (.generated .operand 6)), (.move (.generated .operand 7))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 8)) none (.construct .cons [(.clone (.generated .binding 0)), (.construct .cons [(.lit (.str "x\"y")), (.construct (.nil .str) [])])])), (.mk (.bind (.generated .operand 9)) none (.clone (.generated .binding 1)))] (.call (.runtime .join) [(.move (.generated .operand 8)), (.move (.generated .operand 9))] false))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 10)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthString) [(.move (.generated .operand 10))] false))) (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.move (.generated .binding 1)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false) (.mk [(.mk (.bind (.generated .operand 17)) none (.block (.mk [(.mk (.bind (.generated .operand 13)) none (.clone (.generated .binding 2))), (.mk (.bind (.generated .operand 14)) none (.move (.generated .binding 2)))] (.call (.runtime .compareBytes) [(.move (.generated .operand 13)), (.move (.generated .operand 14))] false)))), (.mk (.bind (.generated .operand 18)) none (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.lit (.bytes (ByteArray.mk #[])))), (.mk (.bind (.generated .operand 16)) none (.lit (.bytes (ByteArray.mk #[1]))))] (.call (.runtime .compareBytes) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] false))))] (.call (.runtime .equal) [(.move (.generated .operand 17)), (.move (.generated .operand 18))] false)) (.mk [] (.lit (.bool false)))))))))))), [(1, .string, (some 1)), (0, .string, (some 0))], rfl, rfl, - (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .utf8Encode) [(.move (.generated .operand 1))] false)) (Corr.prim (ts := [.string]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 2)) none (.clone (.generated .binding 2)))]) (tail := (.call (.runtime .utf8Decode) [(.move (.generated .operand 2))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 3)) none (.clone (.generated .binding 2))), (.mk (.bind (.generated .operand 4)) none (.lit (.bytes (ByteArray.mk #[0, 255]))))]) (tail := (.call (.runtime .compareBytes) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 5)) none (.clone (.generated .binding 0))), (.mk (.bind (.generated .operand 6)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 7)) none (.lit (.fixed .u32 4)))]) (tail := (.call (.runtime .splitExact) [(.move (.generated .operand 5)), (.move (.generated .operand 6)), (.move (.generated .operand 7))] false)) (Corr.prim (ts := [.string, .string, (.fixed .u32)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 8)) none (.construct .cons [(.clone (.generated .binding 0)), (.construct .cons [(.lit (.str "x\"y")), (.construct (.nil .str) [])])])), (.mk (.bind (.generated .operand 9)) none (.clone (.generated .binding 1)))]) (tail := (.call (.runtime .join) [(.move (.generated .operand 8)), (.move (.generated .operand 9))] false)) (Corr.prim (ts := [(.list .string), .string]) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [.string, (.list .string)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.string, (.list .string)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 10)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .lengthString) [(.move (.generated .operand 10))] false)) (Corr.prim (ts := [.string]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 11)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.move (.generated .binding 1)))]) (tail := (.cond (.call (.runtime .equal) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false) (.mk [(.mk (.bind (.generated .operand 17)) none (.block (.mk [(.mk (.bind (.generated .operand 13)) none (.clone (.generated .binding 2))), (.mk (.bind (.generated .operand 14)) none (.move (.generated .binding 2)))] (.call (.runtime .compareBytes) [(.move (.generated .operand 13)), (.move (.generated .operand 14))] false)))), (.mk (.bind (.generated .operand 18)) none (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.lit (.bytes (ByteArray.mk #[])))), (.mk (.bind (.generated .operand 16)) none (.lit (.bytes (ByteArray.mk #[1]))))] (.call (.runtime .compareBytes) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] false))))] (.call (.runtime .equal) [(.move (.generated .operand 17)), (.move (.generated .operand 18))] false)) (.mk [] (.lit (.bool false))))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 11)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.move (.generated .binding 1)))]) (ce := (.call (.runtime .equal) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false)) (lk := []) (Corr.prim (ts := [.string, .string]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 17)) none (.block (.mk [(.mk (.bind (.generated .operand 13)) none (.clone (.generated .binding 2))), (.mk (.bind (.generated .operand 14)) none (.move (.generated .binding 2)))] (.call (.runtime .compareBytes) [(.move (.generated .operand 13)), (.move (.generated .operand 14))] false)))), (.mk (.bind (.generated .operand 18)) none (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.lit (.bytes (ByteArray.mk #[])))), (.mk (.bind (.generated .operand 16)) none (.lit (.bytes (ByteArray.mk #[1]))))] (.call (.runtime .compareBytes) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] false))))]) (ta := (.call (.runtime .equal) [(.move (.generated .operand 17)), (.move (.generated .operand 18))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.ordering, .ordering]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 13)) none (.clone (.generated .binding 2))), (.mk (.bind (.generated .operand 14)) none (.move (.generated .binding 2)))]) (tail := (.call (.runtime .compareBytes) [(.move (.generated .operand 13)), (.move (.generated .operand 14))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 15)) none (.lit (.bytes (ByteArray.mk #[])))), (.mk (.bind (.generated .operand 16)) none (.lit (.bytes (ByteArray.mk #[1]))))]) (tail := (.call (.runtime .compareBytes) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil))))))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | _ + 1 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R3.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R3.lean deleted file mode 100644 index 101b6c4e9..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R3.lean +++ /dev/null @@ -1,106 +0,0 @@ -import LexLeanPreservation.Core -import LexLeanPreservation.Values -import LexLeanPreservation.Primitives -import LexLeanPreservation.Fixed -import LexLeanPreservation.Keys -import LexLeanPreservation.Templates -import LexLeanPreservation.Validate -import Coverage.Boundary -import Coverage.Colls -import Coverage.Main -import Coverage.Prims -import Coverage.RecRoots -import Coverage.Recur -import Coverage.Syntax -import Coverage.Types -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -set_option linter.unusedVariables false -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3 - -def __prog : _root_.LexLeanTarget.TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1, 2], types := [(.list .nat), (.list .nat), .nat], result := (.pair (.list .nat) (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat)))))))), - body := (.build .pair (.pair (.list .nat) (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat)))))))) [(.call 1 [(.var 0), (.var 2)]), (.build .pair (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat))))))) [(.call 2 [(.var 0), (.var 2)]), (.build .pair (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat)))))) [(.call 3 [(.var 0), (.var 2)]), (.build .pair (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat))))) [(.call 4 [(.var 0), (.var 1)]), (.build .pair (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat)))) [(.call 6 [(.var 0), (.var 1)]), (.build .pair (.pair (.list .nat) (.pair .nat (.list .nat))) [(.call 8 [(.var 0), (.var 1)]), (.build .pair (.pair .nat (.list .nat)) [(.prim .length [(.var 0)]), (.var 0)])])])])])])]) }, - { parameters := [0, 1], types := [(.list .nat), .nat], result := (.list .nat), - body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.build .cons (.list .nat) [(.var 1), (.build .nil (.list .nat) [])])), (.arm .cons [2, 3] (.«match» (.list .nat) (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .cons (.list .nat) [(.var 1), (.var 0)])), (.arm .eq [] (.var 0)), (.arm .gt [] (.build .cons (.list .nat) [(.var 2), (.call 1 [(.var 3), (.var 1)])]))]))]) }, - { parameters := [0, 1], types := [(.list .nat), .nat], result := (.list .nat), - body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.build .nil (.list .nat) [])), (.arm .cons [2, 3] (.«match» (.list .nat) (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.var 0)), (.arm .eq [] (.var 3)), (.arm .gt [] (.build .cons (.list .nat) [(.var 2), (.call 2 [(.var 3), (.var 1)])]))]))]) }, - { parameters := [0, 1], types := [(.list .nat), .nat], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .false .bool [])), (.arm .cons [2, 3] (.«match» .bool (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .false .bool [])), (.arm .eq [] (.build .true .bool [])), (.arm .gt [] (.call 3 [(.var 3), (.var 1)]))]))]) }, - { parameters := [0, 1], types := [(.list .nat), (.list .nat)], result := (.list .nat), - body := (.«match» (.list .nat) (.var 1) [(.arm .nil [] (.var 0)), (.arm .cons [2, 3] (.call 4 [(.call 5 [(.var 0), (.var 2)]), (.var 3)]))]) }, - { parameters := [0, 1], types := [(.list .nat), .nat], result := (.list .nat), - body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.build .cons (.list .nat) [(.var 1), (.build .nil (.list .nat) [])])), (.arm .cons [2, 3] (.«match» (.list .nat) (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .cons (.list .nat) [(.var 1), (.var 0)])), (.arm .eq [] (.var 0)), (.arm .gt [] (.build .cons (.list .nat) [(.var 2), (.call 5 [(.var 3), (.var 1)])]))]))]) }, - { parameters := [0, 1], types := [(.list .nat), (.list .nat)], result := (.list .nat), - body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.build .nil (.list .nat) [])), (.arm .cons [2, 3] (.cond (.call 7 [(.var 1), (.var 2)]) (.build .cons (.list .nat) [(.var 2), (.call 6 [(.var 3), (.var 1)])]) (.call 6 [(.var 3), (.var 1)])))]) }, - { parameters := [0, 1], types := [(.list .nat), .nat], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .false .bool [])), (.arm .cons [2, 3] (.«match» .bool (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .false .bool [])), (.arm .eq [] (.build .true .bool [])), (.arm .gt [] (.call 7 [(.var 3), (.var 1)]))]))]) }, - { parameters := [0, 1], types := [(.list .nat), (.list .nat)], result := (.list .nat), - body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.build .nil (.list .nat) [])), (.arm .cons [2, 3] (.cond (.call 9 [(.var 1), (.var 2)]) (.call 8 [(.var 3), (.var 1)]) (.build .cons (.list .nat) [(.var 2), (.call 8 [(.var 3), (.var 1)])])))]) }, - { parameters := [0, 1], types := [(.list .nat), .nat], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .false .bool [])), (.arm .cons [2, 3] (.«match» .bool (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .false .bool [])), (.arm .eq [] (.build .true .bool [])), (.arm .gt [] (.call 9 [(.var 3), (.var 1)]))]))]) }, - { parameters := [0], types := [(.list .nat)], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.var 1), (.var 3)]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 10 [(.var 2)]) (.build .false .bool [])))]))]) }, - { parameters := [0, 1, 2], types := [(.list .nat), (.list .nat), .nat], result := (.option (.pair (.list .nat) (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat))))))))), - body := (.cond (.call 10 [(.var 0)]) (.cond (.call 10 [(.var 1)]) (.build .some (.option (.pair (.list .nat) (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat))))))))) [(.call 0 [(.var 0), (.var 1), (.var 2)])]) (.build .none (.option (.pair (.list .nat) (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat))))))))) [])) (.build .none (.option (.pair (.list .nat) (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat))))))))) [])) }] } - -def __fits_0 (s : (List Nat)) (t : (List Nat)) (x : Nat) : Bool := - ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanCollections.setSize (s) : Nat) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) - -theorem __rel_0 (s : (List Nat)) (t : (List Nat)) (x : Nat) : _root_.LexLeanPreservation.FunRel __prog 0 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) s), ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) t), (_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_0 s t x) ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)))))))) (Coverage.Colls.setOps s t x))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.tpl_setInsert (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) _root_.LexLeanCollections.insertElement (fun _ => rfl) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.insertElement, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.insertElement, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.insertElement, __h]) (p := __prog) (fi := 1) (tk := .nat) rfl (s) (x))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.tpl_setRemove (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) _root_.LexLeanCollections.removeElement (fun _ => rfl) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.removeElement, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.removeElement, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.removeElement, __h]) (p := __prog) (fi := 2) (tk := .nat) rfl (s) (x))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.tpl_setContains (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) _root_.LexLeanCollections.containsElement (fun _ => rfl) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.containsElement, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.containsElement, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.containsElement, __h]) (p := __prog) (fi := 3) (tk := .nat) rfl (s) (x))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.tpl_setUnion (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) _root_.LexLeanCollections.insertElement (fun _ => rfl) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.insertElement, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.insertElement, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.insertElement, __h]) (p := __prog) (fi := 4) (tk := .nat) rfl rfl (t) (s))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.tpl_setIntersection (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) _root_.LexLeanCollections.containsElement (fun _ => rfl) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.containsElement, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.containsElement, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.containsElement, __h]) (p := __prog) (fi := 6) (tk := .nat) rfl rfl (s) (t))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.tpl_setDifference (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) _root_.LexLeanCollections.containsElement (fun _ => rfl) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.containsElement, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.containsElement, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.containsElement, __h]) (p := __prog) (fi := 8) (tk := .nat) rfl rfl (s) (t))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) s)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) - -def denote (s : (List Nat)) (t : (List Nat)) (x : Nat) : _root_.LexLeanPreservation.Obs := - _root_.cond (__fits_0 s t x) (_root_.LexLeanPreservation.Obs.value (((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)))))))) (Coverage.Colls.setOps s t x)))) _root_.LexLeanPreservation.Obs.overflow - -theorem root (s : (List Nat)) (t : (List Nat)) (x : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) s), ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) t), (_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_0 s t x) ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)))))))) (Coverage.Colls.setOps s t x))) := - _root_.LexLeanPreservation.run_of_funRel (__rel_0 s t x) - -def __valid_10 : (List Nat) -> Bool := - _root_.LexLeanPreservation.ascSet (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) - -def __inv_10 : (List Nat) -> Prop := - _root_.LexLeanPreservation.InvSet (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) - -theorem __viff_10 : ∀ (__v : (List Nat)), __valid_10 __v = Bool.true ↔ __inv_10 __v := - _root_.LexLeanPreservation.ascSet_inv (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) - -theorem __vrel_10 : ∀ (__v : (List Nat)), _root_.LexLeanPreservation.FunRel __prog 10 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_10 __v))) := - _root_.LexLeanPreservation.tpl_validSet (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) rfl - -def entryFits (s : (List Nat)) (t : (List Nat)) (x : Nat) : Bool := - (if __valid_10 s then (if __valid_10 t then __fits_0 s t x else Bool.true) else Bool.true) - -def entryValue (s : (List Nat)) (t : (List Nat)) (x : Nat) : _root_.LexLeanTarget.TargetSyntax.Value := - (if __valid_10 s then (if __valid_10 t then (_root_.LexLeanTarget.TargetSyntax.Value.some ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)))))))) (Coverage.Colls.setOps s t x))) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) - -/-- The entry's observation. -/ -def denoteEntry (s : (List Nat)) (t : (List Nat)) (x : Nat) : _root_.LexLeanPreservation.Obs := - _root_.cond (_root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.entryFits s t x) (_root_.LexLeanPreservation.Obs.value (_root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.entryValue s t x)) _root_.LexLeanPreservation.Obs.overflow - -/-- §17.12's invariants of the validated parameters. -/ -def accepts (s : (List Nat)) (t : (List Nat)) (x : Nat) : Prop := - (__inv_10 s ∧ (__inv_10 t ∧ _root_.True)) - -theorem entry (s : (List Nat)) (t : (List Nat)) (x : Nat) : _root_.LexLeanPreservation.RunConv __prog 11 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) s), ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) t), (_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.denoteEntry s t x) := - _root_.LexLeanPreservation.run_of_funRel (_root_.LexLeanPreservation.FunRel.fits_eq (_root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun __c => if __c then (if __valid_10 t then __fits_0 s t x else Bool.true) else Bool.true) (fun __c => if __c then (if __valid_10 t then (_root_.LexLeanTarget.TargetSyntax.Value.some ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)))))))) (Coverage.Colls.setOps s t x))) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) (__valid_10 s) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_10 s)) (fun _ => _root_.LexLeanPreservation.Conv.fits_eq (_root_.LexLeanPreservation.conv_cond (fun __c => if __c then __fits_0 s t x else Bool.true) (fun __c => if __c then (_root_.LexLeanTarget.TargetSyntax.Value.some ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)))))))) (Coverage.Colls.setOps s t x))) else _root_.LexLeanTarget.TargetSyntax.Value.none) (__valid_10 t) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_10 t)) (fun _ => _root_.LexLeanPreservation.Conv.fits_eq (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (__rel_0 s t x)) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some) (by simp)) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) (by simp)) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (by simp [_root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.entryFits])) - -theorem entry_accepts (s : (List Nat)) (t : (List Nat)) (x : Nat) (__h : _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.accepts s t x) : _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.denoteEntry s t x = _root_.LexLeanPreservation.someObs (_root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.denote s t x) := by - unfold _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.accepts at __h - unfold _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.denoteEntry _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.entryFits _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.entryValue _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.denote - simp only [_root_.if_true, (__viff_10 s).mpr __h.1, (__viff_10 t).mpr __h.2.1] - cases __fits_0 s t x <;> rfl - -theorem entry_refuses (s : (List Nat)) (t : (List Nat)) (x : Nat) (__h : ¬ _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.accepts s t x) : _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.denoteEntry s t x = _root_.LexLeanPreservation.Obs.value _root_.LexLeanTarget.TargetSyntax.Value.none := by - unfold _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.accepts at __h - unfold _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.denoteEntry _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.entryFits _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.entryValue - cases __c0 : __valid_10 s - · simp - · cases __c1 : __valid_10 t - · simp - · exact _root_.absurd ⟨(__viff_10 s).mp __c0, (__viff_10 t).mp __c1, _root_.trivial⟩ __h - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3 diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R3/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R3/Compose/RustStd.lex.tex deleted file mode 100644 index 2c6e34676..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R3/Compose/RustStd.lex.tex +++ /dev/null @@ -1,617 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.Compose.RustStd.root : @1271 := @1272 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.RustStd.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.RustStd.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.RustStd.flags -@3 := Nat -@4 := List.{0} -@5 := @4 @3 -@6 := #3 -@7 := LexLeanTarget.TargetSyntax.Value.nat -@8 := LexLeanPreservation.encList -@9 := @8 @3 -@10 := @9 @7 -@11 := @10 @6 -@12 := LexLeanTarget.TargetSyntax.Ty.nat -@13 := LexLeanTarget.TargetSyntax.Ty.list -@14 := @13 @12 -@15 := #0 -@16 := LexLeanTarget.TargetSyntax.Program -@17 := LexLeanPreservation.Rust.RCrate -@18 := LexLeanPreservation.Rust.Flags -@19 := LexLeanPreservation.Rust.WT -@20 := @19 @6 -@21 := #2 -@22 := @20 @21 -@23 := #1 -@24 := @22 @23 -@25 := @7 @15 -@31 := {p : @16} -> {c : @17} -> {A : @18} -> (n : @3) -> @24 @25 @12 -@33 := LexLeanPreservation.Rust.wt_nat @0 -@34 := @19 @0 -@41 := {c : @17} -> {A : @18} -> (n : @3) -> @34 @21 @23 @25 @12 -@42 := @33 @1 -@43 := @34 @1 -@48 := {A : @18} -> (n : @3) -> @43 @23 @25 @12 -@49 := @42 @2 -@50 := @43 @2 -@51 := @50 @25 -@52 := @51 @12 -@53 := (n : @3) -> @52 -@55 := fun (__x : @3) => @49 @15 -@56 := Sort 1 -@57 := LexLeanTarget.TargetSyntax.Value -@58 := (a._@._internal._hyg.#0 : @15) -> @57 -@59 := LexLeanTarget.TargetSyntax.Ty -@60 := #6 -@61 := @19 @60 -@62 := #5 -@63 := @61 @62 -@64 := #4 -@65 := @63 @64 -@66 := @21 @15 -@69 := (x : @21) -> @65 @66 @23 -@70 := @4 @6 -@71 := #7 -@74 := @19 @71 @60 @62 -@77 := @8 @64 @6 @15 -@78 := @74 @77 -@79 := @13 @21 -@88 := {p : @16} -> - {c : @17} -> - {A : @18} -> {α : @56} -> {e : @58} -> {t : @59} -> (h : @69) -> (xs : @70) -> @78 @79 -@90 := LexLeanPreservation.Rust.wt_encList @0 -@92 := @34 @62 @64 -@106 := {c : @17} -> - {A : @18} -> - {α : @56} -> - {e : @58} -> {t : @59} -> (h : (x : @21) -> @92 @66 @23) -> (xs : @70) -> @34 @60 @62 @77 @79 -@107 := @90 @1 -@108 := @43 @64 -@120 := {A : @18} -> - {α : @56} -> - {e : @58} -> {t : @59} -> (h : (x : @21) -> @108 @66 @23) -> (xs : @70) -> @43 @62 @77 @79 -@121 := @107 @2 -@123 := @50 @66 @23 -@131 := {α : @56} -> {e : @58} -> {t : @59} -> (h : (x : @21) -> @123) -> (xs : @70) -> @50 @77 @79 -@132 := @121 @3 -@142 := {e : (a._@._internal._hyg.#0 : @3) -> @57} -> - {t : @59} -> (h : (x : @3) -> @123) -> (xs : @5) -> @50 (@9 @6 @15) @79 -@143 := @132 @7 -@145 := (x : @3) -> @51 @23 -@147 := @50 (@10 @15) -@151 := {t : @59} -> (h : @145) -> (xs : @5) -> @147 @79 -@152 := @143 @12 -@156 := (h : (x : @3) -> @52) -> (xs : @5) -> @147 @14 -@157 := @152 @55 -@158 := @157 @6 -@160 := @50 @11 @14 -@161 := @10 @21 -@162 := @157 @21 -@164 := @50 @161 @14 -@165 := @7 @23 -@166 := @49 @23 -@168 := @50 @165 @12 -@169 := List.nil.{0} -@170 := List.cons.{0} -@171 := @169 @57 -@172 := @170 @57 -@174 := @172 @165 @171 -@175 := @172 @161 -@176 := @175 @174 -@177 := @172 @11 -@178 := @177 @176 -@181 := Prod.{0, 0} @3 @57 -@182 := 2 -@185 := Prod.mk.{0, 0} @3 @57 -@186 := @185 @182 -@187 := @186 @165 -@189 := @185 1 -@190 := @189 @161 -@192 := @185 0 -@193 := @192 @11 -@194 := @169 @181 -@195 := @170 @181 -@197 := @195 @193 @194 -@199 := @195 @190 @197 -@201 := @195 @187 @199 -@202 := Bool.false -@203 := LexLeanTarget.TargetSyntax.Function -@204 := LexLeanTarget.TargetSyntax.Program.functions -@205 := @204 @0 -@206 := 11 -@207 := @169 @3 -@208 := @169 @59 -@209 := LexLeanTarget.TargetSyntax.Ty.unit -@210 := LexLeanTarget.TargetSyntax.Value.unit -@213 := LexLeanTarget.TargetSyntax.Expr.value @209 @210 -@218 := LexLeanTarget.TargetSyntax.Function.mk @207 @208 @209 @213 -@223 := List.getD.{0} @203 @205 @206 @218 -@227 := fun (__e_n : @3) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.RustStd.root @15 @206 -@228 := LexLeanPreservation.Rust.WTL -@236 := {p : @16} -> {c : @17} -> {A : @18} -> @228 @21 @23 @15 @171 @208 -@238 := LexLeanPreservation.Rust.wtl_nil @0 -@239 := @228 @0 -@245 := {c : @17} -> {A : @18} -> @239 @23 @15 @171 @208 -@246 := @238 @1 -@247 := @239 @1 -@251 := {A : @18} -> @247 @15 @171 @208 -@252 := @246 @2 -@253 := @247 @2 -@254 := @253 @171 -@255 := @254 @208 -@256 := @4 @57 -@257 := @4 @59 -@259 := @65 @6 @21 -@264 := @228 @71 @60 @62 @21 @23 -@265 := #8 -@268 := @228 @265 @71 @60 -@270 := @172 @62 @6 -@271 := @268 @270 -@272 := @170 @59 -@274 := @272 @64 @21 -@284 := {p : @16} -> - {c : @17} -> - {A : @18} -> - {v : @57} -> {t : @59} -> {vs : @256} -> {ts : @257} -> (h : @259) -> (hs : @264) -> @271 @274 -@286 := LexLeanPreservation.Rust.wtl_cons @0 -@304 := {c : @17} -> - {A : @18} -> - {v : @57} -> - {t : @59} -> - {vs : @256} -> - {ts : @257} -> (h : @92 @6 @21) -> (hs : @239 @60 @62 @21 @23) -> @239 @71 @60 @270 @274 -@305 := @286 @1 -@320 := {A : @18} -> - {v : @57} -> - {t : @59} -> - {vs : @256} -> {ts : @257} -> (h : @108 @6 @21) -> (hs : @247 @62 @21 @23) -> @247 @60 @270 @274 -@321 := @305 @2 -@323 := @50 @6 @21 -@325 := @253 @21 @23 -@333 := {v : @57} -> - {t : @59} -> {vs : @256} -> {ts : @257} -> (h : @323) -> (hs : @325) -> @253 @270 @274 -@334 := @321 @165 -@335 := @7 @64 -@337 := @50 @335 @21 -@338 := @7 @60 -@339 := @172 @338 -@347 := {t : @59} -> {vs : @256} -> {ts : @257} -> (h : @337) -> (hs : @325) -> @253 (@339 @6) @274 -@348 := @334 @12 -@349 := @7 @6 -@351 := @50 @349 @12 -@352 := @7 @62 -@353 := @172 @352 -@355 := @253 (@353 @6) -@356 := @272 @12 -@357 := @356 @21 -@362 := {vs : @256} -> {ts : @257} -> (h : @351) -> (hs : @325) -> @355 @357 -@363 := @348 @171 -@364 := @7 @21 -@366 := @50 @364 @12 -@367 := @254 @23 -@369 := @172 @335 @171 -@374 := {ts : @257} -> (h : @366) -> (hs : @367) -> @253 @369 @357 -@375 := @363 @208 -@377 := @172 @349 @171 -@378 := @253 @377 -@379 := @356 @208 -@382 := (h : @168) -> (hs : @255) -> @378 @379 -@383 := @375 @166 -@385 := @172 @364 @171 -@387 := @253 @385 @379 -@388 := (hs : @255) -> @387 -@389 := @383 @252 -@391 := @253 @174 @379 -@392 := @321 @161 -@393 := @10 @62 -@394 := @50 @393 -@395 := @394 @21 -@396 := @10 @71 -@397 := @172 @396 -@399 := @253 (@397 @6) -@405 := {t : @59} -> {vs : @256} -> {ts : @257} -> (h : @395) -> (hs : @325) -> @399 @274 -@406 := @392 @14 -@407 := @10 @64 -@409 := @50 @407 @14 -@410 := @10 @60 -@411 := @172 @410 -@413 := @253 (@411 @6) -@414 := @272 @14 -@415 := @414 @21 -@420 := {vs : @256} -> {ts : @257} -> (h : @409) -> (hs : @325) -> @413 @415 -@421 := @406 @174 -@422 := @378 @23 -@423 := @172 @393 -@424 := @423 @369 -@429 := {ts : @257} -> (h : @160) -> (hs : @422) -> @253 @424 @415 -@430 := @421 @379 -@431 := @172 @407 -@432 := @431 @377 -@433 := @253 @432 -@434 := @414 @379 -@437 := (h : @164) -> (hs : @387) -> @433 @434 -@438 := @430 @162 -@439 := @177 @385 -@441 := @253 @439 @434 -@442 := (hs : @391) -> @441 -@443 := @438 @389 -@445 := @253 @176 @434 -@446 := @321 @11 -@448 := @50 @410 @21 -@449 := @10 @265 -@450 := @172 @449 -@458 := {t : @59} -> {vs : @256} -> {ts : @257} -> (h : @448) -> (hs : @325) -> @253 (@450 @6) @274 -@459 := @446 @14 -@465 := {vs : @256} -> {ts : @257} -> (h : @394 @14) -> (hs : @325) -> @399 @415 -@466 := @459 @176 -@467 := @433 @23 -@468 := @411 @424 -@469 := @253 @468 -@473 := {ts : @257} -> (h : @409) -> (hs : @467) -> @469 @415 -@474 := @466 @434 -@475 := @423 @432 -@476 := @253 @475 -@477 := @414 @434 -@480 := (h : @160) -> (hs : @441) -> @476 @477 -@481 := @474 @158 -@482 := @431 @439 -@483 := @253 @482 -@485 := (hs : @445) -> @483 @477 -@486 := @481 @443 -@487 := @253 @178 -@488 := @487 @477 -@489 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.denoteEntry -@492 := @489 @6 @21 @23 -@493 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.entryFits -@496 := @493 @6 @21 @23 -@500 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.entryValue @6 @21 @23 -@504 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.entry @6 @21 @23 -@505 := Bool -@506 := Ne.{1} -@507 := LexLeanPreservation.Obs -@508 := @506 @507 -@509 := LexLeanPreservation.Rel -@512 := @508 (@509 @23 @15) -@513 := LexLeanPreservation.Obs.stuck -@516 := (f : @505) -> (v : @57) -> @512 @513 -@518 := LexLeanPreservation.Rust.rel_ne_stuck @496 -@526 := (v : @57) -> @508 (@509 (@493 @64 @6 @21) @15) @513 -@527 := @518 @500 -@531 := @508 (@509 @496 @500) @513 -@532 := @4 @181 -@533 := LexLeanPreservation.Rust.FunSem -@534 := #9 -@540 := (n : @3) -> @533 @534 @265 @71 @15 @60 -@541 := Eq.{1} -@542 := Option.{0} -@543 := @542 @203 -@544 := @541 @543 -@551 := LexLeanRuntime.index (@4 @203) @203 (LexLeanRuntime.instIndexableList @203) -@555 := @544 (@551 (@204 @534) @60) -@556 := Option.some.{0} -@557 := @556 @203 -@558 := @557 @62 -@559 := @555 @558 -@560 := #10 -@564 := @228 @560 @534 @265 @62 -@565 := LexLeanTarget.TargetSyntax.Function.types -@566 := @565 @60 -@567 := @564 @566 -@568 := @542 @532 -@569 := @541 @568 -@570 := LexLeanTarget.TargetSemantics.bindAll -@571 := LexLeanTarget.TargetSyntax.Function.parameters -@576 := @569 (@570 (@571 @71) @60 @194) -@577 := @556 @532 -@578 := @577 @62 -@579 := @576 @578 -@580 := @542 @505 -@581 := @541 @580 -@582 := LexLeanPreservation.Rust.fnFallible -@583 := #11 -@586 := @581 (@582 @583 @534) -@587 := @556 @505 -@588 := @587 @62 -@589 := @586 @588 -@590 := LexLeanPreservation.RunConv -@591 := #13 -@595 := @590 @591 @560 @265 @62 -@597 := @508 @60 @513 -@598 := Exists.{1} -@599 := LexLeanPreservation.Rust.ROut -@600 := @598 @599 -@601 := And -@602 := LexLeanPreservation.Rust.RealizesFn -@606 := @601 (@602 @534 @265 @15) -@607 := LexLeanPreservation.Rust.RCI -@609 := @607 #15 -@610 := LexLeanPreservation.Rust.fnIdent -@611 := @610 @591 -@618 := (hne : @597) -> @600 (fun (ro : @599) => @606 (@609 @611 @583 @15)) -@633 := {p : @16} -> - {c : @17} -> - {A : @18} -> - {f : @3} -> - {fn : @203} -> - {args : @256} -> - {env : @532} -> - {F : @505} -> - {o : @507} -> - (hB : @540) -> - (hfn : @559) -> (hwt : @567) -> (hbind : @579) -> (hF : @589) -> (hA : @595) -> @618 -@635 := LexLeanPreservation.Rust.compose @0 -@636 := @533 @0 -@641 := (n : @3) -> @636 @265 @71 @15 @60 -@642 := @551 @205 -@645 := @544 (@642 @60) @558 -@649 := @239 @534 @265 @62 @566 -@650 := @590 @0 -@653 := @650 @560 @265 @62 -@667 := {c : @17} -> - {A : @18} -> - {f : @3} -> - {fn : @203} -> - {args : @256} -> - {env : @532} -> - {F : @505} -> - {o : @507} -> - (hB : @641) -> - (hfn : @645) -> (hwt : @649) -> (hbind : @579) -> (hF : @589) -> (hA : @653) -> @618 -@668 := @635 @1 -@669 := @636 @1 -@673 := (n : @3) -> @669 @71 @15 @60 -@676 := @247 @265 @62 @566 -@677 := @582 @1 -@680 := @581 (@677 @534) @588 -@681 := @607 @1 -@691 := (hbind : @579) -> - (hF : @680) -> (hA : @653) -> (hne : @597) -> @600 (fun (ro : @599) => @606 (@681 @611 @583 @15)) -@701 := {A : @18} -> - {f : @3} -> - {fn : @203} -> - {args : @256} -> - {env : @532} -> {F : @505} -> {o : @507} -> (hB : @673) -> (hfn : @645) -> (hwt : @676) -> @691 -@702 := @668 @2 -@704 := @669 @2 @15 -@706 := (n : @3) -> @704 @60 -@707 := @253 @62 -@708 := @707 @566 -@717 := {f : @3} -> - {fn : @203} -> - {args : @256} -> - {env : @532} -> {F : @505} -> {o : @507} -> (hB : @706) -> (hfn : @645) -> (hwt : @708) -> @691 -@718 := @702 @206 -@720 := (n : @3) -> @704 @206 -@721 := @642 @206 -@722 := @544 @721 -@723 := @722 @558 -@724 := @677 @206 -@725 := @581 @724 -@726 := @725 @588 -@727 := @650 @206 -@729 := @727 @265 @62 -@731 := @681 (@610 @206) -@739 := (hF : @726) -> (hA : @729) -> (hne : @597) -> @600 (fun (ro : @599) => @606 (@731 @583 @15)) -@748 := {fn : @203} -> - {args : @256} -> - {env : @532} -> - {F : @505} -> {o : @507} -> (hB : @720) -> (hfn : @723) -> (hwt : @708) -> (hbind : @579) -> @739 -@749 := @718 @223 -@751 := @722 (@557 @223) -@752 := @565 @223 -@753 := @707 @752 -@755 := @570 (@571 @223) -@767 := {args : @256} -> - {env : @532} -> - {F : @505} -> - {o : @507} -> - (hB : @720) -> (hfn : @751) -> (hwt : @753) -> (hbind : @569 (@755 @60 @194) @578) -> @739 -@768 := @749 @178 -@771 := @450 (@397 (@339 @171)) -@773 := @253 @771 @752 -@775 := @172 (@10 @534) -@780 := @775 (@450 (@172 (@7 @71) @171)) -@784 := @569 (@755 @780 @194) @578 -@786 := @172 (@10 @583) -@788 := @172 (@10 @560) -@793 := @786 (@788 (@172 (@7 @534) @171)) -@795 := @727 @793 @62 -@798 := @172 (@10 #14) -@800 := @172 (@10 @591) -@801 := #12 -@821 := {env : @532} -> - {F : @505} -> - {o : @507} -> - (hB : @720) -> - (hfn : @751) -> - (hwt : @773) -> - (hbind : @784) -> - (hF : @726) -> - (hA : @795) -> - (hne : @597) -> @600 (fun (ro : @599) => @606 (@731 (@798 (@800 (@172 (@7 @801) @171))) @15)) -@822 := @768 @201 -@825 := @397 (@411 (@353 @171)) -@827 := @253 @825 @752 -@841 := @569 (@755 @771 @194) (@577 (@195 (@186 @338) (@195 (@189 @396) (@195 (@192 @449) @194)))) -@846 := @788 (@775 (@172 (@7 @265) @171)) -@848 := @727 @846 @62 -@850 := @172 (@10 @801) -@869 := {F : @505} -> - {o : @507} -> - (hB : @720) -> - (hfn : @751) -> - (hwt : @827) -> - (hbind : @841) -> - (hF : @726) -> - (hA : @848) -> - (hne : @597) -> @600 (fun (ro : @599) => @606 (@731 (@800 (@850 (@172 (@7 @583) @171))) @15)) -@870 := @822 @202 -@871 := @469 @752 -@885 := @569 (@755 @825 @194) (@577 (@195 (@186 @352) (@195 (@189 @410) (@195 (@192 @396) @194)))) -@887 := @725 (@587 @202) -@889 := @727 @780 @62 -@890 := @602 @202 -@911 := {o : @507} -> - (hB : @720) -> - (hfn : @751) -> - (hwt : @871) -> - (hbind : @885) -> - (hF : @887) -> - (hA : @889) -> - (hne : @597) -> - @600 (fun (ro : @599) => @601 (@890 @265 @15) (@731 (@850 (@786 (@172 (@7 @560) @171))) @15)) -@912 := @870 @492 -@913 := @476 @752 -@927 := @569 (@755 @468 @194) (@577 (@195 (@186 @335) (@195 (@189 @393) (@195 (@192 @410) @194)))) -@928 := @727 @771 -@931 := @489 @265 @71 @60 -@932 := @928 @931 -@935 := @489 @534 @265 @71 -@955 := (hB : @720) -> - (hfn : @751) -> - (hwt : @913) -> - (hbind : @927) -> - (hF : @887) -> - (hA : @932) -> - (hne : @508 @935 @513) -> - @600 (fun (ro : @599) => @601 (@890 (@489 @583 @560 @534) @15) (@731 @793 @15)) -@956 := @912 @227 -@957 := @483 @752 -@971 := @569 (@755 @475 @194) (@577 (@195 (@186 @349) (@195 (@189 @407) (@195 (@192 @393) @194)))) -@972 := @727 @825 -@975 := @489 @71 @60 @62 -@995 := (hfn : @751) -> - (hwt : @957) -> - (hbind : @971) -> - (hF : @887) -> - (hA : @972 @975) -> - (hne : @508 @931 @513) -> - @600 (fun (ro : @599) => @601 (@890 (@489 @560 @534 @265) @15) (@731 @846 @15)) -@996 := Eq.refl.{1} -@999 := @956 (@996 @543 @721) -@1000 := @487 @752 -@1014 := @569 (@755 @482 @194) (@577 (@195 (@186 @364) (@195 (@189 @11) (@195 (@192 @407) @194)))) -@1015 := @727 @468 -@1018 := @489 @60 @62 @64 -@1034 := (hwt : @1000) -> - (hbind : @1014) -> - (hF : @887) -> - (hA : @1015 @1018) -> - (hne : @508 @975 @513) -> @600 (fun (ro : @599) => @601 (@890 @935 @15) (@731 @780 @15)) -@1035 := @999 @486 -@1037 := @755 @178 @194 -@1040 := @569 @1037 (@577 @201) -@1041 := @727 @475 -@1044 := @489 @62 @64 @6 -@1059 := (hbind : @1040) -> - (hF : @887) -> - (hA : @1041 @1044) -> - (hne : @508 @1018 @513) -> @600 (fun (ro : @599) => @601 (@890 @931 @15) (@731 @771 @15)) -@1062 := @1035 (@996 @568 @1037) -@1063 := @727 @482 -@1066 := @489 @64 @6 @21 -@1080 := (hF : @887) -> - (hA : @1063 @1066) -> - (hne : @508 @1044 @513) -> @600 (fun (ro : @599) => @601 (@890 @975 @15) (@731 @825 @15)) -@1083 := @1062 (@996 @580 @724) -@1085 := @727 @178 @492 -@1087 := @508 @1066 @513 -@1088 := @890 @1018 -@1090 := @601 (@1088 @15) -@1091 := @731 @468 -@1092 := @1091 @15 -@1097 := (hA : @1085) -> (hne : @1087) -> @600 (fun (ro : @599) => @1090 @1092) -@1098 := @1083 @504 -@1100 := @508 @492 @513 -@1101 := @890 @1044 -@1103 := @601 (@1101 @15) -@1104 := @731 @475 -@1109 := (hne : @1100) -> @600 (fun (ro : @599) => @1103 (@1104 @15)) -@1110 := @1098 @527 -@1113 := @601 (@890 @1066 @15) -@1115 := @731 @482 @15 -@1116 := @1113 @1115 -@1118 := @600 (fun (ro : @599) => @1116) -@1119 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.accepts -@1122 := @1119 @6 @21 @23 -@1123 := LexLeanPreservation.someObs -@1124 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.denote -@1128 := @1123 (@1124 @6 @21 @23) -@1131 := LexLeanPreservation.Obs.value LexLeanTarget.TargetSyntax.Value.none -@1132 := Not -@1133 := @1132 @1122 -@1136 := @1119 @64 @6 @21 -@1140 := @1123 (@1124 @64 @6 @21) -@1141 := @1132 @1136 -@1148 := @1136 -> @890 (@1123 (@1124 @62 @64 @6)) @23 -@1149 := @890 @1131 -@1150 := @1149 @23 -@1151 := @1141 -> @1150 -@1153 := @601 @1148 @1151 -@1157 := @600 (fun (__e_ro : @599) => @601 @1115 @1153) -@1158 := fun (__e_ro : @599) => @1116 -@1159 := @1101 @23 -@1160 := @1104 @23 -@1161 := And.left -@1162 := And.right -@1165 := @1161 @1159 @1160 @15 -@1168 := @1162 @1159 @1160 @15 -@1169 := @890 @15 -@1171 := fun (__e_o : @507) => @1169 @21 -@1172 := Eq.subst.{1} -@1175 := @1119 @62 @64 @6 -@1176 := @1132 @1175 -@1181 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.entry_accepts @60 @62 @64 @15 -@1185 := @1123 (@1124 @60 @62 @64) -@1190 := @1161 (@1088 @21) (@1091 @21) @23 -@1192 := fun (__e_o : @507) => @1169 @6 -@1195 := @1172 @507 @1192 @1018 -@1199 := fun (__e_h : @1175) => @1195 @1185 @1181 @1190 -@1204 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.entry_refuses @60 @62 @64 @15 -@1208 := fun (__e_h : @1176) => @1195 @1131 @1204 @1190 -@1209 := And.intro -@1212 := @1175 -> @890 @1185 @21 -@1214 := @1176 -> @1149 @21 -@1216 := @601 @1212 @1214 -@1220 := @1209 @1212 @1214 @1199 @1208 -@1224 := @1209 @1160 @1216 @1168 @1220 -@1225 := Exists.intro.{1} -@1226 := @601 @1092 -@1229 := @1119 @60 @62 @64 -@1242 := fun (__e_ro : @599) => - @1226 (@601 (@1229 -> @890 (@1123 (@1124 @71 @60 @62)) @23) (@1132 @1229 -> @1150)) -@1246 := @1225 @599 @1242 @23 @1224 -@1248 := @601 @1159 @1160 -@1250 := fun (__e_ro : @599) => fun (__e_hand : @1116) => @1246 -@1256 := Exists.elim.{1} @599 @1158 @1157 @1110 @1250 -@1257 := LexLeanPreservation.Rust.RepresentableL -@1258 := @10 @23 -@1260 := @172 @25 @171 -@1264 := @1257 (@175 (@172 @1258 @1260)) -@1265 := (__e_hrep : @1264) -> @1157 -@1266 := fun (__e_hrep : @1264) => @1256 -@1267 := (x : @3) -> @1265 -@1268 := fun (x : @3) => @1266 -@1269 := (t : @5) -> @1267 -@1270 := fun (t : @5) => @1268 -@1271 := (s : @5) -> @1269 -@1272 := fun (s : @5) => @1270 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R3/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R3/RustStd.lean deleted file mode 100644 index ff2748970..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R3/RustStd.lean +++ /dev/null @@ -1,121 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1, 2], types := [(.list .nat), (.list .nat), .nat], result := (.pair (.list .nat) (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat)))))))), - body := (.build .pair (.pair (.list .nat) (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat)))))))) [(.call 1 [(.var 0), (.var 2)]), (.build .pair (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat))))))) [(.call 2 [(.var 0), (.var 2)]), (.build .pair (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat)))))) [(.call 3 [(.var 0), (.var 2)]), (.build .pair (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat))))) [(.call 4 [(.var 0), (.var 1)]), (.build .pair (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat)))) [(.call 6 [(.var 0), (.var 1)]), (.build .pair (.pair (.list .nat) (.pair .nat (.list .nat))) [(.call 8 [(.var 0), (.var 1)]), (.build .pair (.pair .nat (.list .nat)) [(.prim .length [(.var 0)]), (.var 0)])])])])])])]) }, - { parameters := [0, 1], types := [(.list .nat), .nat], result := (.list .nat), - body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.build .cons (.list .nat) [(.var 1), (.build .nil (.list .nat) [])])), (.arm .cons [2, 3] (.«match» (.list .nat) (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .cons (.list .nat) [(.var 1), (.var 0)])), (.arm .eq [] (.var 0)), (.arm .gt [] (.build .cons (.list .nat) [(.var 2), (.call 1 [(.var 3), (.var 1)])]))]))]) }, - { parameters := [0, 1], types := [(.list .nat), .nat], result := (.list .nat), - body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.build .nil (.list .nat) [])), (.arm .cons [2, 3] (.«match» (.list .nat) (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.var 0)), (.arm .eq [] (.var 3)), (.arm .gt [] (.build .cons (.list .nat) [(.var 2), (.call 2 [(.var 3), (.var 1)])]))]))]) }, - { parameters := [0, 1], types := [(.list .nat), .nat], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .false .bool [])), (.arm .cons [2, 3] (.«match» .bool (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .false .bool [])), (.arm .eq [] (.build .true .bool [])), (.arm .gt [] (.call 3 [(.var 3), (.var 1)]))]))]) }, - { parameters := [0, 1], types := [(.list .nat), (.list .nat)], result := (.list .nat), - body := (.«match» (.list .nat) (.var 1) [(.arm .nil [] (.var 0)), (.arm .cons [2, 3] (.call 4 [(.call 5 [(.var 0), (.var 2)]), (.var 3)]))]) }, - { parameters := [0, 1], types := [(.list .nat), .nat], result := (.list .nat), - body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.build .cons (.list .nat) [(.var 1), (.build .nil (.list .nat) [])])), (.arm .cons [2, 3] (.«match» (.list .nat) (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .cons (.list .nat) [(.var 1), (.var 0)])), (.arm .eq [] (.var 0)), (.arm .gt [] (.build .cons (.list .nat) [(.var 2), (.call 5 [(.var 3), (.var 1)])]))]))]) }, - { parameters := [0, 1], types := [(.list .nat), (.list .nat)], result := (.list .nat), - body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.build .nil (.list .nat) [])), (.arm .cons [2, 3] (.cond (.call 7 [(.var 1), (.var 2)]) (.build .cons (.list .nat) [(.var 2), (.call 6 [(.var 3), (.var 1)])]) (.call 6 [(.var 3), (.var 1)])))]) }, - { parameters := [0, 1], types := [(.list .nat), .nat], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .false .bool [])), (.arm .cons [2, 3] (.«match» .bool (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .false .bool [])), (.arm .eq [] (.build .true .bool [])), (.arm .gt [] (.call 7 [(.var 3), (.var 1)]))]))]) }, - { parameters := [0, 1], types := [(.list .nat), (.list .nat)], result := (.list .nat), - body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.build .nil (.list .nat) [])), (.arm .cons [2, 3] (.cond (.call 9 [(.var 1), (.var 2)]) (.call 8 [(.var 3), (.var 1)]) (.build .cons (.list .nat) [(.var 2), (.call 8 [(.var 3), (.var 1)])])))]) }, - { parameters := [0, 1], types := [(.list .nat), .nat], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .false .bool [])), (.arm .cons [2, 3] (.«match» .bool (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .false .bool [])), (.arm .eq [] (.build .true .bool [])), (.arm .gt [] (.call 9 [(.var 3), (.var 1)]))]))]) }, - { parameters := [0], types := [(.list .nat)], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.var 1), (.var 3)]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 10 [(.var 2)]) (.build .false .bool [])))]))]) }, - { parameters := [0, 1, 2], types := [(.list .nat), (.list .nat), .nat], result := (.option (.pair (.list .nat) (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat))))))))), - body := (.cond (.call 10 [(.var 0)]) (.cond (.call 10 [(.var 1)]) (.build .some (.option (.pair (.list .nat) (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat))))))))) [(.call 0 [(.var 0), (.var 1), (.var 2)])]) (.build .none (.option (.pair (.list .nat) (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat))))))))) [])) (.build .none (.option (.pair (.list .nat) (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat))))))))) [])) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.pair (.list .nat) (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat)))))))) (.mk [] (.pair (.call (.function 1) [(.clone (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.pair (.call (.function 2) [(.clone (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.pair (.call (.function 3) [(.clone (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.pair (.call (.function 4) [(.clone (.generated .binding 0)), (.clone (.generated .binding 1))] false) (.pair (.call (.function 6) [(.clone (.generated .binding 0)), (.clone (.generated .binding 1))] false) (.pair (.call (.function 8) [(.clone (.generated .binding 0)), (.move (.generated .binding 1))] false) (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthList) [(.move (.generated .operand 1))] false))) (.move (.generated .binding 0))))))))))), - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 2)) none (.clone (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 2)) [(.mk .none (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil .nat) [])]))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 5)) none (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))))] (.matchOn (.move (.generated .holder 5)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 1) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])))]))), - (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 6)) none (.clone (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 6)) [(.mk .none (.mk [] (.construct (.nil .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 9)) none (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false))))] (.matchOn (.move (.generated .holder 9)) [(.mk (.ordering .less) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 3)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 2) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])))]))), - (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .holder 10)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 10)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))] (.matchOn (.move (.generated .holder 13)) [(.mk (.ordering .less) (.mk [] (.lit (.bool false)))), (.mk (.ordering .same) (.mk [] (.lit (.bool true)))), (.mk (.ordering .more) (.mk [] (.call (.function 3) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]))), - (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := (.list .nat) }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 14)) none (.move (.generated .binding 1)))] (.matchOn (.uncons (.generated .holder 14)) [(.mk .none (.mk [] (.move (.generated .binding 0)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.call (.function 4) [(.call (.function 5) [(.move (.generated .binding 0)), (.copy (.generated .binding 2))] false), (.move (.generated .binding 3))] false)))]))), - (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 15)) none (.clone (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 15)) [(.mk .none (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil .nat) [])]))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 18)) none (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false))))] (.matchOn (.move (.generated .holder 18)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 5) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])))]))), - (.function (.generated .function 6) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := (.list .nat) }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 19)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 19)) [(.mk .none (.mk [] (.construct (.nil .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.cond (.call (.function 7) [(.clone (.generated .binding 1)), (.copy (.generated .binding 2))] false) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 6) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)])) (.mk [] (.call (.function 6) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)))))]))), - (.function (.generated .function 7) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .holder 20)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 20)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 23)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 22)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.matchOn (.move (.generated .holder 23)) [(.mk (.ordering .less) (.mk [] (.lit (.bool false)))), (.mk (.ordering .same) (.mk [] (.lit (.bool true)))), (.mk (.ordering .more) (.mk [] (.call (.function 7) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]))), - (.function (.generated .function 8) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := (.list .nat) }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 24)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 24)) [(.mk .none (.mk [] (.construct (.nil .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.cond (.call (.function 9) [(.clone (.generated .binding 1)), (.copy (.generated .binding 2))] false) (.mk [] (.call (.function 8) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 8) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)])))))]))), - (.function (.generated .function 9) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .holder 25)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 25)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 28)) none (.block (.mk [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 27)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] false))))] (.matchOn (.move (.generated .holder 28)) [(.mk (.ordering .less) (.mk [] (.lit (.bool false)))), (.mk (.ordering .same) (.mk [] (.lit (.bool true)))), (.mk (.ordering .more) (.mk [] (.call (.function 9) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]))), - (.function (.generated .function 10) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }] .bool (.mk [(.mk (.bind (.generated .holder 29)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 29)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [(.mk (.bind (.generated .holder 30)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 30)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 33)) none (.block (.mk [(.mk (.bind (.generated .operand 31)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))))] (.cond (.matchOn (.move (.generated .holder 33)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 10) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])))]))), - (.function (.generated .function 11) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.option (.pair (.list .nat) (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat))))))))) (.mk [] (.cond (.call (.function 10) [(.clone (.generated .binding 0))] false) (.mk [] (.cond (.call (.function 10) [(.clone (.generated .binding 1))] false) (.mk [] (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 2))] false)])) (.mk [] (.construct (.none (.pair (.list .nat) (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat))))))))) [])))) (.mk [] (.construct (.none (.pair (.list .nat) (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat))))))))) [])))))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [], (.pair (.call (.function 1) [(.clone (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.pair (.call (.function 2) [(.clone (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.pair (.call (.function 3) [(.clone (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.pair (.call (.function 4) [(.clone (.generated .binding 0)), (.clone (.generated .binding 1))] false) (.pair (.call (.function 6) [(.clone (.generated .binding 0)), (.clone (.generated .binding 1))] false) (.pair (.call (.function 8) [(.clone (.generated .binding 0)), (.move (.generated .binding 1))] false) (.pair (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthList) [(.move (.generated .operand 1))] false))) (.move (.generated .binding 0))))))))), [(2, .nat, (some 2)), (1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, - (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 1))] false)) (Corr.prim (ts := [(.list .nat)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))))⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 2)) none (.clone (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 2)) [(.mk .none (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil .nat) [])]))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 5)) none (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))))] (.matchOn (.move (.generated .holder 5)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 1) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])))]), [(1, .nat, (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil .nat) [])])) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 5)) none (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))))]) (tail := (.matchOn (.move (.generated .holder 5)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 1) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))])) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.move (.generated .binding 0))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 1) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 6)) none (.clone (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 6)) [(.mk .none (.mk [] (.construct (.nil .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 9)) none (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false))))] (.matchOn (.move (.generated .holder 9)) [(.mk (.ordering .less) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 3)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 2) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])))]), [(1, .nat, (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.nil .nat) [])) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 9)) none (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false))))]) (tail := (.matchOn (.move (.generated .holder 9)) [(.mk (.ordering .less) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 3)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 2) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 0))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.move (.generated .binding 3))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 2) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun3 : FunOK program krate flags 3 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 10)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 10)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))] (.matchOn (.move (.generated .holder 13)) [(.mk (.ordering .less) (.mk [] (.lit (.bool false)))), (.mk (.ordering .same) (.mk [] (.lit (.bool true)))), (.mk (.ordering .more) (.mk [] (.call (.function 3) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]), [(1, .nat, (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))]) (tail := (.matchOn (.move (.generated .holder 13)) [(.mk (.ordering .less) (.mk [] (.lit (.bool false)))), (.mk (.ordering .same) (.mk [] (.lit (.bool true)))), (.mk (.ordering .more) (.mk [] (.call (.function 3) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.call (.function 3) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ - -theorem fun4 : FunOK program krate flags 4 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 14)) none (.move (.generated .binding 1)))], (.matchOn (.uncons (.generated .holder 14)) [(.mk .none (.mk [] (.move (.generated .binding 0)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.call (.function 4) [(.call (.function 5) [(.move (.generated .binding 0)), (.copy (.generated .binding 2))] false), (.move (.generated .binding 3))] false)))]), [(1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 0))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 4) [(.call (.function 5) [(.move (.generated .binding 0)), (.copy (.generated .binding 2))] false), (.move (.generated .binding 3))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ - -theorem fun5 : FunOK program krate flags 5 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 15)) none (.clone (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 15)) [(.mk .none (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil .nat) [])]))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 18)) none (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false))))] (.matchOn (.move (.generated .holder 18)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 5) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])))]), [(1, .nat, (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil .nat) [])])) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 18)) none (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false))))]) (tail := (.matchOn (.move (.generated .holder 18)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 5) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))])) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.move (.generated .binding 0))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 5) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun6 : FunOK program krate flags 6 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 19)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 19)) [(.mk .none (.mk [] (.construct (.nil .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.cond (.call (.function 7) [(.clone (.generated .binding 1)), (.copy (.generated .binding 2))] false) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 6) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)])) (.mk [] (.call (.function 6) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)))))]), [(1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.nil .nat) [])) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 7) [(.clone (.generated .binding 1)), (.copy (.generated .binding 2))] false) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 6) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)])) (.mk [] (.call (.function 6) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 7) [(.clone (.generated .binding 1)), (.copy (.generated .binding 2))] false)) (lk := []) (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 6) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)])) (lb := []) (tb := (.call (.function 6) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)) (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl) (Corr.callOps (ts := [(.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)))) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun7 : FunOK program krate flags 7 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 20)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 20)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 23)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 22)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.matchOn (.move (.generated .holder 23)) [(.mk (.ordering .less) (.mk [] (.lit (.bool false)))), (.mk (.ordering .same) (.mk [] (.lit (.bool true)))), (.mk (.ordering .more) (.mk [] (.call (.function 7) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]), [(1, .nat, (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 23)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 22)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))]) (tail := (.matchOn (.move (.generated .holder 23)) [(.mk (.ordering .less) (.mk [] (.lit (.bool false)))), (.mk (.ordering .same) (.mk [] (.lit (.bool true)))), (.mk (.ordering .more) (.mk [] (.call (.function 7) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 21)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 22)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.call (.function 7) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ - -theorem fun8 : FunOK program krate flags 8 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 24)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 24)) [(.mk .none (.mk [] (.construct (.nil .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.cond (.call (.function 9) [(.clone (.generated .binding 1)), (.copy (.generated .binding 2))] false) (.mk [] (.call (.function 8) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 8) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)])))))]), [(1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.nil .nat) [])) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 9) [(.clone (.generated .binding 1)), (.copy (.generated .binding 2))] false) (.mk [] (.call (.function 8) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 8) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)])))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 9) [(.clone (.generated .binding 1)), (.copy (.generated .binding 2))] false)) (lk := []) (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 8) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)) (lb := []) (tb := (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 8) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)])) (Corr.callOps (ts := [(.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)))) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun9 : FunOK program krate flags 9 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 25)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 25)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 28)) none (.block (.mk [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 27)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] false))))] (.matchOn (.move (.generated .holder 28)) [(.mk (.ordering .less) (.mk [] (.lit (.bool false)))), (.mk (.ordering .same) (.mk [] (.lit (.bool true)))), (.mk (.ordering .more) (.mk [] (.call (.function 9) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]), [(1, .nat, (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 28)) none (.block (.mk [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 27)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] false))))]) (tail := (.matchOn (.move (.generated .holder 28)) [(.mk (.ordering .less) (.mk [] (.lit (.bool false)))), (.mk (.ordering .same) (.mk [] (.lit (.bool true)))), (.mk (.ordering .more) (.mk [] (.call (.function 9) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 27)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.call (.function 9) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ - -theorem fun10 : FunOK program krate flags 10 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 29)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 29)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [(.mk (.bind (.generated .holder 30)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 30)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 33)) none (.block (.mk [(.mk (.bind (.generated .operand 31)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))))] (.cond (.matchOn (.move (.generated .holder 33)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 10) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])))]), [(0, (.list .nat), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 30)) none (.clone (.generated .binding 2)))]) (tail := (.matchOn (.uncons (.generated .holder 30)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 33)) none (.block (.mk [(.mk (.bind (.generated .operand 31)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))))] (.cond (.matchOn (.move (.generated .holder 33)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 10) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list .nat), none), (3, .nat, (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 33)) none (.block (.mk [(.mk (.bind (.generated .operand 31)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 33)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 10) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .holder 33)) none (.block (.mk [(.mk (.bind (.generated .operand 31)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))))]) (ce := (.matchOn (.move (.generated .holder 33)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 31)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 3)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.list .nat), none), (3, .nat, (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list .nat), none), (3, .nat, (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, (.list .nat), none), (3, .nat, (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 10) [(.move (.generated .binding 2))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ - -theorem fun11 : FunOK program krate flags 11 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 10) [(.clone (.generated .binding 0))] false) (.mk [] (.cond (.call (.function 10) [(.clone (.generated .binding 1))] false) (.mk [] (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 2))] false)])) (.mk [] (.construct (.none (.pair (.list .nat) (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat))))))))) [])))) (.mk [] (.construct (.none (.pair (.list .nat) (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat))))))))) []))), [(2, .nat, (some 2)), (1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 10) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 10) [(.clone (.generated .binding 1))] false) (.mk [] (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 2))] false)])) (.mk [] (.construct (.none (.pair (.list .nat) (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat))))))))) [])))) (lb := []) (tb := (.construct (.none (.pair (.list .nat) (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat))))))))) [])) (Corr.cond (lc := []) (ce := (.call (.function 10) [(.clone (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [(.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 2))] false)])) (lb := []) (tb := (.construct (.none (.pair (.list .nat) (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat))))))))) [])) (Corr.build (ts := [(.pair (.list .nat) (.pair (.list .nat) (.pair .bool (.pair (.list .nat) (.pair (.list .nat) (.pair (.list .nat) (.pair .nat (.list .nat))))))))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), (.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | 3 => exact fun3 - | 4 => exact fun4 - | 5 => exact fun5 - | 6 => exact fun6 - | 7 => exact fun7 - | 8 => exact fun8 - | 9 => exact fun9 - | 10 => exact fun10 - | 11 => exact fun11 - | _ + 12 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R30/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R30/Compose/RustStd.lex.tex deleted file mode 100644 index 397c9bce7..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R30/Compose/RustStd.lex.tex +++ /dev/null @@ -1,637 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.Compose.RustStd.__wt_0 : @689 := @688 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.Compose.RustStd.__wt_0], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.Compose.RustStd.__wtItems_0 : @699 := @698 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.Compose.RustStd.__wtItems_0], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.Compose.RustStd.root : @1328 := @1329 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.RustStd.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.RustStd.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.RustStd.flags -@3 := Nat -@5 := Coverage.Syntax.Rose @3 -@6 := #0 -@7 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.__enc_0 -@8 := @7 @6 -@9 := LexLeanPreservation.Rust.WT -@10 := LexLeanTarget.TargetSyntax.Ty.adt -@11 := 0 -@12 := @10 @11 -@13 := @9 @0 -@14 := @13 @1 -@15 := @14 @2 -@17 := @15 @8 @12 -@18 := fun (__v : @5) => @17 -@19 := List.{0} -@20 := @19 @5 -@21 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.__items_0 -@22 := @21 @6 -@23 := LexLeanPreservation.Rust.WTAll -@24 := @23 @0 -@25 := @24 @1 -@26 := @25 @2 -@28 := @26 @22 @12 -@29 := fun (__v : @20) => @28 -@30 := #2 -@31 := #1 -@32 := LexLeanTarget.TargetSyntax.Value.nat -@33 := @32 @30 -@34 := LexLeanTarget.TargetSyntax.Ty.nat -@35 := LexLeanTarget.TargetSyntax.Program -@36 := LexLeanPreservation.Rust.RCrate -@37 := LexLeanPreservation.Rust.Flags -@38 := #3 -@41 := @9 @38 @30 @31 -@42 := @32 @6 -@48 := {p : @35} -> {c : @36} -> {A : @37} -> (n : @3) -> @41 @42 @34 -@50 := LexLeanPreservation.Rust.wt_nat @0 -@57 := {c : @36} -> {A : @37} -> (n : @3) -> @13 @30 @31 @42 @34 -@58 := @50 @1 -@63 := {A : @37} -> (n : @3) -> @14 @31 @42 @34 -@64 := @58 @2 -@67 := (n : @3) -> @15 @42 @34 -@68 := @64 @30 -@70 := @15 @33 @34 -@71 := LexLeanPreservation.ListEnc.enc -@72 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.__L_0 -@74 := @71 @5 @72 -@75 := @74 @31 -@76 := LexLeanTarget.TargetSyntax.Ty.list -@77 := @76 @12 -@78 := @21 @31 -@79 := LexLeanTarget.TargetSyntax.Value -@80 := @19 @79 -@81 := LexLeanTarget.TargetSyntax.Ty -@82 := #4 -@87 := @23 @82 @38 @30 @31 @6 -@88 := #5 -@91 := @9 @88 @82 @38 -@92 := LexLeanTarget.TargetSyntax.Value.list -@93 := @92 @30 -@94 := @91 @93 -@95 := @76 @31 -@102 := {p : @35} -> {c : @36} -> {A : @37} -> {vs : @80} -> {t : @81} -> (h : @87) -> @94 @95 -@104 := LexLeanPreservation.Rust.wt_list @0 -@108 := @24 @38 @30 @31 @6 -@110 := @13 @82 @38 -@117 := {c : @36} -> {A : @37} -> {vs : @80} -> {t : @81} -> (h : @108) -> @110 @93 @95 -@118 := @104 @1 -@121 := @25 @30 @31 @6 -@122 := @14 @38 -@128 := {A : @37} -> {vs : @80} -> {t : @81} -> (h : @121) -> @122 @93 @95 -@129 := @118 @2 -@136 := {vs : @80} -> {t : @81} -> (h : @26 @31 @6) -> @15 @93 @95 -@137 := @129 @78 -@138 := @21 @30 -@139 := @26 @138 -@140 := @139 @6 -@141 := @21 @38 -@146 := {t : @81} -> (h : @140) -> @15 (@92 @141) @95 -@147 := @137 @12 -@149 := @26 @78 @12 -@153 := (h : @149) -> @15 (@92 @138) @77 -@154 := @147 @6 -@157 := @15 (@92 @78) @77 -@158 := List.nil.{0} -@159 := List.cons.{0} -@160 := @158 @79 -@161 := @159 @79 -@163 := @161 @75 @160 -@164 := @161 @33 -@165 := @164 @163 -@166 := @158 @81 -@167 := @159 @81 -@168 := @167 @77 -@169 := @168 @166 -@170 := @167 @34 -@171 := @170 @169 -@172 := LexLeanPreservation.Rust.WTL -@180 := {p : @35} -> {c : @36} -> {A : @37} -> @172 @30 @31 @6 @160 @166 -@182 := LexLeanPreservation.Rust.wtl_nil @0 -@183 := @172 @0 -@189 := {c : @36} -> {A : @37} -> @183 @31 @6 @160 @166 -@190 := @182 @1 -@191 := @183 @1 -@195 := {A : @37} -> @191 @6 @160 @166 -@196 := @190 @2 -@197 := @191 @2 -@198 := @197 @160 -@199 := @198 @166 -@200 := @19 @81 -@201 := #6 -@206 := @9 @201 @88 @82 @38 @30 -@207 := #7 -@212 := @172 @207 @201 @88 @30 @31 -@213 := #8 -@216 := @172 @213 @207 @201 -@218 := @161 @88 @38 -@219 := @216 @218 -@221 := @167 @82 @30 -@231 := {p : @35} -> - {c : @36} -> - {A : @37} -> - {v : @79} -> {t : @81} -> {vs : @80} -> {ts : @200} -> (h : @206) -> (hs : @212) -> @219 @221 -@233 := LexLeanPreservation.Rust.wtl_cons @0 -@237 := @13 @88 @82 @38 @30 -@241 := @183 @201 @88 @30 @31 -@253 := {c : @36} -> - {A : @37} -> - {v : @79} -> - {t : @81} -> {vs : @80} -> {ts : @200} -> (h : @237) -> (hs : @241) -> @183 @207 @201 @218 @221 -@254 := @233 @1 -@257 := @14 @82 @38 @30 -@260 := @191 @88 @30 @31 -@270 := {A : @37} -> - {v : @79} -> - {t : @81} -> {vs : @80} -> {ts : @200} -> (h : @257) -> (hs : @260) -> @191 @201 @218 @221 -@271 := @254 @2 -@273 := @15 @38 @30 -@275 := @197 @30 @31 -@283 := {v : @79} -> - {t : @81} -> {vs : @80} -> {ts : @200} -> (h : @273) -> (hs : @275) -> @197 @218 @221 -@284 := @271 @75 -@285 := @74 @82 -@297 := {t : @81} -> - {vs : @80} -> {ts : @200} -> (h : @15 @285 @30) -> (hs : @275) -> @197 (@161 (@74 @201) @38) @221 -@298 := @284 @77 -@299 := @74 @38 -@301 := @15 @299 @77 -@305 := @197 (@161 (@74 @88) @38) -@306 := @168 @30 -@311 := {vs : @80} -> {ts : @200} -> (h : @301) -> (hs : @275) -> @305 @306 -@312 := @298 @160 -@313 := @74 @30 -@315 := @15 @313 @77 -@316 := @198 @31 -@318 := @161 @285 @160 -@323 := {ts : @200} -> (h : @315) -> (hs : @316) -> @197 @318 @306 -@324 := @312 @166 -@326 := @15 @75 @77 -@328 := @161 @299 @160 -@329 := @197 @328 -@332 := (h : @326) -> (hs : @199) -> @329 @169 -@333 := @324 @154 -@335 := @161 @313 @160 -@337 := @197 @335 @169 -@338 := (hs : @199) -> @337 -@339 := @333 @196 -@341 := @197 @163 @169 -@342 := @271 @33 -@343 := @32 @88 -@345 := @15 @343 @30 -@347 := @161 (@32 @207) -@355 := {t : @81} -> {vs : @80} -> {ts : @200} -> (h : @345) -> (hs : @275) -> @197 (@347 @38) @221 -@356 := @342 @34 -@357 := @32 @82 -@358 := @15 @357 -@359 := @358 @34 -@360 := @32 @201 -@361 := @161 @360 -@363 := @197 (@361 @38) -@364 := @170 @30 -@369 := {vs : @80} -> {ts : @200} -> (h : @359) -> (hs : @275) -> @363 @364 -@370 := @356 @163 -@371 := @32 @38 -@373 := @15 @371 @34 -@374 := @329 @31 -@375 := @161 @343 -@376 := @375 @318 -@381 := {ts : @200} -> (h : @373) -> (hs : @374) -> @197 @376 @364 -@382 := @370 @169 -@383 := @161 @357 -@384 := @383 @328 -@385 := @197 @384 -@388 := (h : @70) -> (hs : @337) -> @385 @171 -@389 := @382 @68 -@390 := @161 @371 -@391 := @390 @335 -@393 := @197 @391 @171 -@394 := (hs : @341) -> @393 -@395 := @389 @339 -@397 := @197 @165 @171 -@398 := Eq.{1} -@399 := Option.{0} -@400 := @399 @200 -@401 := @398 @400 -@402 := LexLeanPreservation.Rust.adtFields -@406 := @401 (@402 @201 @38 @30) -@407 := Option.some.{0} -@408 := @407 @200 -@409 := @408 @6 -@410 := @406 @409 -@413 := @9 @213 @207 @201 -@414 := LexLeanTarget.TargetSyntax.Value.adt -@416 := @414 @82 @38 -@417 := @413 @416 -@418 := @10 @88 -@428 := {p : @35} -> - {c : @36} -> - {A : @37} -> - {i : @3} -> {k : @3} -> {fs : @80} -> {tys : @200} -> (h : @410) -> (hf : @212) -> @417 @418 -@430 := LexLeanPreservation.Rust.wt_adt @0 -@431 := @402 @0 -@435 := @401 (@431 @38 @30) @409 -@447 := {c : @36} -> - {A : @37} -> - {i : @3} -> - {k : @3} -> {fs : @80} -> {tys : @200} -> (h : @435) -> (hf : @241) -> @13 @207 @201 @416 @418 -@448 := @430 @1 -@458 := {A : @37} -> - {i : @3} -> - {k : @3} -> {fs : @80} -> {tys : @200} -> (h : @435) -> (hf : @260) -> @14 @201 @416 @418 -@459 := @448 @2 -@460 := @15 @416 -@467 := {i : @3} -> {k : @3} -> {fs : @80} -> {tys : @200} -> (h : @435) -> (hf : @275) -> @460 @418 -@468 := @459 @11 -@469 := @431 @11 -@478 := {k : @3} -> - {fs : @80} -> {tys : @200} -> (h : @401 (@469 @30) @409) -> (hf : @275) -> @460 @12 -@479 := @468 @11 -@480 := @469 @11 -@481 := @401 @480 -@482 := @481 @409 -@483 := @414 @11 -@490 := {fs : @80} -> {tys : @200} -> (h : @482) -> (hf : @275) -> @15 (@483 @38) @12 -@491 := @479 @165 -@498 := {tys : @200} -> (h : @482) -> (hf : @385 @31) -> @15 (@483 @376) @12 -@499 := @491 @171 -@506 := (h : @481 (@408 @171)) -> (hf : @393) -> @15 (@483 @384) @12 -@507 := Eq.refl.{1} -@510 := @499 (@507 @400 @480) -@514 := (hf : @397) -> @15 (@483 @391) @12 -@515 := @510 @395 -@518 := @15 (@483 @165) @12 -@521 := fun (__x0 : @3) => fun (__x1 : @20) => fun (__ih0 : @28) => @515 -@530 := {p : @35} -> {c : @36} -> {A : @37} -> {t : @81} -> @23 @38 @30 @31 @160 @6 -@532 := LexLeanPreservation.Rust.wtAll_nil @0 -@539 := {c : @36} -> {A : @37} -> {t : @81} -> @24 @30 @31 @160 @6 -@540 := @532 @1 -@545 := {A : @37} -> {t : @81} -> @25 @31 @160 @6 -@546 := @540 @2 -@547 := @26 @160 -@549 := {t : @81} -> @547 @6 -@550 := @546 @12 -@551 := @547 @12 -@552 := @7 @38 -@554 := @91 @30 @6 -@559 := @23 @201 @88 @82 @30 @31 -@562 := @23 @207 @201 @88 -@564 := @161 @82 @38 -@574 := {p : @35} -> - {c : @36} -> - {A : @37} -> {v : @79} -> {vs : @80} -> {t : @81} -> (h : @554) -> (hs : @559) -> @562 @564 @30 -@576 := LexLeanPreservation.Rust.wtAll_cons @0 -@593 := {c : @36} -> - {A : @37} -> - {v : @79} -> - {vs : @80} -> - {t : @81} -> (h : @110 @30 @6) -> (hs : @24 @88 @82 @30 @31) -> @24 @201 @88 @564 @30 -@594 := @576 @1 -@608 := {A : @37} -> - {v : @79} -> - {vs : @80} -> {t : @81} -> (h : @122 @30 @6) -> (hs : @25 @82 @30 @31) -> @25 @88 @564 @30 -@609 := @594 @2 -@611 := @15 @30 @6 -@613 := @26 @30 @31 -@620 := {v : @79} -> {vs : @80} -> {t : @81} -> (h : @611) -> (hs : @613) -> @26 @564 @30 -@621 := @609 @552 -@622 := @7 @88 -@633 := {vs : @80} -> {t : @81} -> (h : @15 @622 @6) -> (hs : @613) -> @26 (@161 (@7 @207) @38) @30 -@634 := @621 @138 -@635 := @7 @82 -@637 := @15 @635 @6 -@638 := @21 @82 -@649 := {t : @81} -> (h : @637) -> (hs : @26 @638 @31) -> @26 (@161 (@7 @201) (@21 @88)) @30 -@650 := @634 @12 -@660 := (h : @15 @552 @12) -> (hs : @26 @141 @12) -> @26 (@161 @622 @638) @12 -@661 := @650 @31 -@667 := (hs : @139 @12) -> @26 (@161 @635 @141) @12 -@668 := @661 @6 -@672 := @26 (@161 @552 @138) @12 -@673 := fun (__ih1 : @149) => @668 -@679 := fun (__x0 : @5) => fun (__x1 : @20) => fun (__ih0 : @15 (@7 @31) @12) => @673 -@688 := fun (__v : @5) => Coverage.Syntax.Rose.rec.{0} @3 @18 @29 @521 @550 @679 @6 -@689 := (__v : @5) -> @17 -@698 := fun (__v : @20) => Coverage.Syntax.Rose.rec_1.{0} @3 @18 @29 @521 @550 @679 @6 -@699 := (__v : @20) -> @28 -@700 := @32 @31 -@701 := @64 @31 -@703 := @15 @700 @34 -@705 := @161 @700 @160 -@708 := Prod.{0, 0} @3 @79 -@712 := Prod.mk.{0, 0} @3 @79 @11 -@713 := @712 @700 -@714 := @158 @708 -@715 := @159 @708 -@717 := @715 @713 @714 -@718 := Bool.true -@719 := LexLeanTarget.TargetSyntax.Function -@720 := LexLeanTarget.TargetSyntax.Program.functions -@721 := @720 @0 -@722 := @158 @3 -@723 := LexLeanTarget.TargetSyntax.Ty.unit -@724 := LexLeanTarget.TargetSyntax.Value.unit -@727 := LexLeanTarget.TargetSyntax.Expr.value @723 @724 -@732 := LexLeanTarget.TargetSyntax.Function.mk @722 @166 @723 @727 -@737 := List.getD.{0} @719 @721 @11 @732 -@741 := fun (__e_n : @3) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.RustStd.root @6 @11 -@742 := @271 @700 -@749 := {t : @81} -> {vs : @80} -> {ts : @200} -> (h : @358 @30) -> (hs : @275) -> @363 @221 -@750 := @742 @34 -@757 := {vs : @80} -> {ts : @200} -> (h : @373) -> (hs : @275) -> @197 (@375 @38) @364 -@758 := @750 @160 -@759 := @383 @160 -@760 := @197 @759 -@764 := {ts : @200} -> (h : @70) -> (hs : @316) -> @760 @364 -@765 := @758 @166 -@766 := @390 @160 -@767 := @197 @766 -@768 := @170 @166 -@771 := (h : @703) -> (hs : @199) -> @767 @768 -@772 := @765 @701 -@773 := @164 @160 -@774 := @197 @773 -@776 := (hs : @199) -> @774 @768 -@777 := @772 @196 -@778 := @197 @705 -@779 := @778 @768 -@780 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.denote -@781 := @780 @31 -@782 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.__fits_0 -@783 := @782 @31 -@786 := @32 (Coverage.RecRoots.roseTotal @31) -@788 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.root @31 -@789 := Bool -@790 := Ne.{1} -@791 := LexLeanPreservation.Obs -@792 := @790 @791 -@793 := LexLeanPreservation.Rel -@796 := @792 (@793 @31 @6) -@797 := LexLeanPreservation.Obs.stuck -@800 := (f : @789) -> (v : @79) -> @796 @797 -@802 := LexLeanPreservation.Rust.rel_ne_stuck @783 -@808 := (v : @79) -> @792 (@793 (@782 @30) @6) @797 -@809 := @802 @786 -@813 := @792 (@793 @783 @786) @797 -@814 := @19 @708 -@815 := LexLeanPreservation.Rust.FunSem -@816 := #9 -@822 := (n : @3) -> @815 @816 @213 @207 @6 @201 -@823 := @399 @719 -@824 := @398 @823 -@831 := LexLeanRuntime.index (@19 @719) @719 (LexLeanRuntime.instIndexableList @719) -@835 := @824 (@831 (@720 @816) @201) -@836 := @407 @719 -@837 := @836 @88 -@838 := @835 @837 -@839 := #10 -@843 := @172 @839 @816 @213 @88 -@844 := LexLeanTarget.TargetSyntax.Function.types -@845 := @844 @201 -@846 := @843 @845 -@847 := @399 @814 -@848 := @398 @847 -@849 := LexLeanTarget.TargetSemantics.bindAll -@850 := LexLeanTarget.TargetSyntax.Function.parameters -@855 := @848 (@849 (@850 @207) @201 @714) -@856 := @407 @814 -@857 := @856 @88 -@858 := @855 @857 -@859 := @399 @789 -@860 := @398 @859 -@861 := LexLeanPreservation.Rust.fnFallible -@862 := #11 -@865 := @860 (@861 @862 @816) -@866 := @407 @789 -@867 := @866 @88 -@868 := @865 @867 -@869 := LexLeanPreservation.RunConv -@870 := #13 -@874 := @869 @870 @839 @213 @88 -@876 := @792 @201 @797 -@877 := Exists.{1} -@878 := LexLeanPreservation.Rust.ROut -@879 := @877 @878 -@880 := And -@881 := LexLeanPreservation.Rust.RealizesFn -@885 := @880 (@881 @816 @213 @6) -@886 := LexLeanPreservation.Rust.RCI -@888 := @886 #15 -@889 := LexLeanPreservation.Rust.fnIdent -@890 := @889 @870 -@897 := (hne : @876) -> @879 (fun (ro : @878) => @885 (@888 @890 @862 @6)) -@912 := {p : @35} -> - {c : @36} -> - {A : @37} -> - {f : @3} -> - {fn : @719} -> - {args : @80} -> - {env : @814} -> - {F : @789} -> - {o : @791} -> - (hB : @822) -> - (hfn : @838) -> (hwt : @846) -> (hbind : @858) -> (hF : @868) -> (hA : @874) -> @897 -@914 := LexLeanPreservation.Rust.compose @0 -@915 := @815 @0 -@920 := (n : @3) -> @915 @213 @207 @6 @201 -@921 := @831 @721 -@924 := @824 (@921 @201) @837 -@928 := @183 @816 @213 @88 @845 -@929 := @869 @0 -@932 := @929 @839 @213 @88 -@946 := {c : @36} -> - {A : @37} -> - {f : @3} -> - {fn : @719} -> - {args : @80} -> - {env : @814} -> - {F : @789} -> - {o : @791} -> - (hB : @920) -> - (hfn : @924) -> (hwt : @928) -> (hbind : @858) -> (hF : @868) -> (hA : @932) -> @897 -@947 := @914 @1 -@948 := @915 @1 -@952 := (n : @3) -> @948 @207 @6 @201 -@955 := @191 @213 @88 @845 -@956 := @861 @1 -@959 := @860 (@956 @816) @867 -@960 := @886 @1 -@970 := (hbind : @858) -> - (hF : @959) -> (hA : @932) -> (hne : @876) -> @879 (fun (ro : @878) => @885 (@960 @890 @862 @6)) -@980 := {A : @37} -> - {f : @3} -> - {fn : @719} -> - {args : @80} -> - {env : @814} -> {F : @789} -> {o : @791} -> (hB : @952) -> (hfn : @924) -> (hwt : @955) -> @970 -@981 := @947 @2 -@983 := @948 @2 @6 -@985 := (n : @3) -> @983 @201 -@986 := @197 @88 -@987 := @986 @845 -@996 := {f : @3} -> - {fn : @719} -> - {args : @80} -> - {env : @814} -> {F : @789} -> {o : @791} -> (hB : @985) -> (hfn : @924) -> (hwt : @987) -> @970 -@997 := @981 @11 -@999 := (n : @3) -> @983 @11 -@1000 := @921 @11 -@1001 := @824 @1000 -@1002 := @1001 @837 -@1003 := @956 @11 -@1004 := @860 @1003 -@1005 := @1004 @867 -@1006 := @929 @11 -@1008 := @1006 @213 @88 -@1010 := @960 (@889 @11) -@1018 := (hF : @1005) -> - (hA : @1008) -> (hne : @876) -> @879 (fun (ro : @878) => @885 (@1010 @862 @6)) -@1027 := {fn : @719} -> - {args : @80} -> - {env : @814} -> - {F : @789} -> - {o : @791} -> (hB : @999) -> (hfn : @1002) -> (hwt : @987) -> (hbind : @858) -> @1018 -@1028 := @997 @737 -@1030 := @1001 (@836 @737) -@1031 := @844 @737 -@1032 := @986 @1031 -@1034 := @849 (@850 @737) -@1046 := {args : @80} -> - {env : @814} -> - {F : @789} -> - {o : @791} -> - (hB : @999) -> (hfn : @1030) -> (hwt : @1032) -> (hbind : @848 (@1034 @201 @714) @857) -> @1018 -@1047 := @1028 @705 -@1048 := @361 @160 -@1050 := @197 @1048 @1031 -@1051 := @347 @160 -@1055 := @848 (@1034 @1051 @714) @857 -@1058 := @161 (@32 @816) @160 -@1079 := {env : @814} -> - {F : @789} -> - {o : @791} -> - (hB : @999) -> - (hfn : @1030) -> - (hwt : @1050) -> - (hbind : @1055) -> - (hF : @1005) -> - (hA : @1006 @1058 @88) -> - (hne : @876) -> @879 (fun (ro : @878) => @885 (@1010 (@161 (@32 #12) @160) @6)) -@1080 := @1047 @717 -@1081 := @375 @160 -@1083 := @197 @1081 @1031 -@1091 := @848 (@1034 @1048 @714) (@856 (@715 (@712 @360) @714)) -@1094 := @161 (@32 @213) @160 -@1113 := {F : @789} -> - {o : @791} -> - (hB : @999) -> - (hfn : @1030) -> - (hwt : @1083) -> - (hbind : @1091) -> - (hF : @1005) -> - (hA : @1006 @1094 @88) -> - (hne : @876) -> @879 (fun (ro : @878) => @885 (@1010 (@161 (@32 @862) @160) @6)) -@1114 := @1080 @718 -@1115 := @760 @1031 -@1123 := @848 (@1034 @1081 @714) (@856 (@715 (@712 @343) @714)) -@1125 := @1004 (@866 @718) -@1127 := @1006 @1051 @88 -@1128 := @881 @718 -@1147 := {o : @791} -> - (hB : @999) -> - (hfn : @1030) -> - (hwt : @1115) -> - (hbind : @1123) -> - (hF : @1125) -> - (hA : @1127) -> - (hne : @876) -> @879 (fun (ro : @878) => @880 (@1128 @213 @6) (@1010 (@161 (@32 @839) @160) @6)) -@1148 := @1114 @781 -@1149 := @767 @1031 -@1157 := @848 (@1034 @759 @714) (@856 (@715 (@712 @357) @714)) -@1158 := @1006 @1048 -@1159 := @780 @201 -@1160 := @1158 @1159 -@1161 := @780 @207 -@1179 := (hB : @999) -> - (hfn : @1030) -> - (hwt : @1149) -> - (hbind : @1157) -> - (hF : @1125) -> - (hA : @1160) -> - (hne : @792 @1161 @797) -> @879 (fun (ro : @878) => @880 (@1128 (@780 @816) @6) (@1010 @1058 @6)) -@1180 := @1148 @741 -@1181 := @774 @1031 -@1189 := @848 (@1034 @766 @714) (@856 (@715 (@712 @371) @714)) -@1190 := @1006 @1081 -@1191 := @780 @88 -@1209 := (hfn : @1030) -> - (hwt : @1181) -> - (hbind : @1189) -> - (hF : @1125) -> - (hA : @1190 @1191) -> - (hne : @792 @1159 @797) -> @879 (fun (ro : @878) => @880 (@1128 (@780 @213) @6) (@1010 @1094 @6)) -@1212 := @1180 (@507 @823 @1000) -@1213 := @778 @1031 -@1221 := @848 (@1034 @773 @714) (@856 (@715 (@712 @33) @714)) -@1222 := @1006 @759 -@1223 := @780 @82 -@1239 := (hwt : @1213) -> - (hbind : @1221) -> - (hF : @1125) -> - (hA : @1222 @1223) -> - (hne : @792 @1191 @797) -> @879 (fun (ro : @878) => @880 (@1128 @1161 @6) (@1010 @1051 @6)) -@1240 := @1212 @777 -@1242 := @1034 @705 @714 -@1245 := @848 @1242 (@856 @717) -@1246 := @1006 @766 -@1247 := @780 @38 -@1262 := (hbind : @1245) -> - (hF : @1125) -> - (hA : @1246 @1247) -> - (hne : @792 @1223 @797) -> @879 (fun (ro : @878) => @880 (@1128 @1159 @6) (@1010 @1048 @6)) -@1265 := @1240 (@507 @847 @1242) -@1266 := @1006 @773 -@1267 := @780 @30 -@1281 := (hF : @1125) -> - (hA : @1266 @1267) -> - (hne : @792 @1247 @797) -> @879 (fun (ro : @878) => @880 (@1128 @1191 @6) (@1010 @1081 @6)) -@1284 := @1265 (@507 @859 @1003) -@1298 := (hA : @1006 @705 @781) -> - (hne : @792 @1267 @797) -> @879 (fun (ro : @878) => @880 (@1128 @1223 @6) (@1010 @759 @6)) -@1299 := @1284 @788 -@1310 := (hne : @792 @781 @797) -> @879 (fun (ro : @878) => @880 (@1128 @1247 @6) (@1010 @766 @6)) -@1311 := @1299 @809 -@1317 := @880 (@1128 @1267 @6) (@1010 @773 @6) -@1319 := @879 (fun (ro : @878) => @1317) -@1321 := @879 (fun (__e_ro : @878) => @1317) -@1325 := LexLeanPreservation.Rust.RepresentableL (@161 @42 @160) -@1326 := (__e_hrep : @1325) -> @1321 -@1327 := fun (__e_hrep : @1325) => @1311 -@1328 := (n : @3) -> @1326 -@1329 := fun (n : @3) => @1327 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R30/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R30/RustStd.lean deleted file mode 100644 index 59b6fdf61..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R30/RustStd.lean +++ /dev/null @@ -1,50 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [{ constructors := [[.nat, (.list (.adt 0))]] }], functions := [ - { parameters := [0], types := [.nat], result := .nat, - body := (.call 1 [(.build (.adt 0) (.adt 0) [(.var 0), (.build .cons (.list (.adt 0)) [(.build (.adt 0) (.adt 0) [(.value .nat (.nat 1)), (.build .nil (.list (.adt 0)) [])]), (.build .nil (.list (.adt 0)) [])])])]) }, - { parameters := [0], types := [(.adt 0)], result := .nat, - body := (.«match» .nat (.var 0) [(.arm (.adt 0) [1, 2] (.prim .natAdd [(.value .nat (.nat 1)), (.call 2 [(.var 2)])]))]) }, - { parameters := [0], types := [(.list (.adt 0))], result := .nat, - body := (.«match» .nat (.var 0) [(.arm .nil [] (.value .nat (.nat 0))), (.arm .cons [1, 2] (.prim .natAdd [(.call 1 [(.var 1)]), (.call 2 [(.var 2)])]))]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.enum (.adt 0) [{ number := 0, fields := [.nat, (.list (.adt 0))] }]), - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible .nat) (.mk [] (.call (.function 1) [(.construct (.adt 0 0) [(.copy (.generated .binding 0)), (.construct .cons [(.construct (.adt 0 0) [(.lit (.nat 1)), (.construct (.nil (.adt 0)) [])]), (.construct (.nil (.adt 0)) [])])])] false))), - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 1)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .binding 2))]) (.mk [(.mk (.bind (.generated .operand 2)) none (.lit (.nat 1))), (.mk (.bind (.generated .operand 3)) none (.call (.function 2) [(.move (.generated .binding 2))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] false)))]))), - (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.adt 0)) }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 4)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 4)) [(.mk .none (.mk [] (.succeed (.lit (.nat 0))))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [(.mk (.bind (.generated .operand 5)) none (.call (.function 1) [(.move (.generated .binding 1))] true)), (.mk (.bind (.generated .operand 6)) none (.call (.function 2) [(.move (.generated .binding 2))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false)))])))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 1) [(.construct (.adt 0 0) [(.copy (.generated .binding 0)), (.construct .cons [(.construct (.adt 0 0) [(.lit (.nat 1)), (.construct (.nil (.adt 0)) [])]), (.construct (.nil (.adt 0)) [])])])] false), [(0, .nat, (some 0))], rfl, rfl, - (Corr.callF (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list (.adt 0))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.adt 0), (.list (.adt 0))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list (.adt 0))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil))) rfl rfl rfl rfl)⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 1)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .binding 2))]) (.mk [(.mk (.bind (.generated .operand 2)) none (.lit (.nat 1))), (.mk (.bind (.generated .operand 3)) none (.call (.function 2) [(.move (.generated .binding 2))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] false)))]), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.adt 0)) (U := []) (view := false) (idx := [0]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.adt 0)), (some 2)), (1, .nat, none), (0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .operand 2)) none (.lit (.nat 1))), (.mk (.bind (.generated .operand 3)) none (.call (.function 2) [(.move (.generated .binding 2))] true))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] false)) (Corr.mNil) rfl rfl rfl (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.adt 0))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl)⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 4)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 4)) [(.mk .none (.mk [] (.succeed (.lit (.nat 0))))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [(.mk (.bind (.generated .operand 5)) none (.call (.function 1) [(.move (.generated .binding 1))] true)), (.mk (.bind (.generated .operand 6)) none (.call (.function 2) [(.move (.generated .binding 2))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false)))]), [(0, (.list (.adt 0)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.adt 0))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list (.adt 0)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.lit (.nat 0)))) (Corr.mCons (Γ' := [(2, (.list (.adt 0)), (some 2)), (1, (.adt 0), (some 1)), (0, (.list (.adt 0)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .operand 5)) none (.call (.function 1) [(.move (.generated .binding 1))] true)), (.mk (.bind (.generated .operand 6)) none (.call (.function 2) [(.move (.generated .binding 2))] true))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false)) (Corr.mNil) rfl rfl rfl (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.adt 0))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl)))) rfl rfl rfl)⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | _ + 3 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R31/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R31/Compose/RustStd.lex.tex deleted file mode 100644 index ae503b837..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R31/Compose/RustStd.lex.tex +++ /dev/null @@ -1,885 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.Compose.RustStd.__wt_0 : @1187 := @1186 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.Compose.RustStd.__wt_0], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.Compose.RustStd.__wt_1 : @1201 := @1200 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.Compose.RustStd.__wt_1], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.Compose.RustStd.__wtItems_0 : @1215 := @1214 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.Compose.RustStd.__wtItems_0], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.Compose.RustStd.root : @1800 := @1801 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.RustStd.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.RustStd.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.RustStd.flags -@3 := Coverage.Syntax.Expr -@4 := #0 -@5 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.__enc_0 -@6 := @5 @4 -@7 := LexLeanPreservation.Rust.WT -@8 := LexLeanTarget.TargetSyntax.Ty.adt -@9 := 0 -@10 := @8 @9 -@11 := @7 @0 -@12 := @11 @1 -@13 := @12 @2 -@15 := @13 @6 @10 -@16 := fun (__v : @3) => @15 -@17 := Coverage.Syntax.Stmt -@18 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.__enc_1 -@19 := @18 @4 -@20 := 1 -@21 := @8 @20 -@23 := @13 @19 @21 -@24 := fun (__v : @17) => @23 -@25 := List.{0} -@26 := @25 @17 -@27 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.__items_0 -@28 := @27 @4 -@29 := LexLeanPreservation.Rust.WTAll -@30 := @29 @0 -@31 := @30 @1 -@32 := @31 @2 -@34 := @32 @28 @21 -@35 := fun (__v : @26) => @34 -@36 := LexLeanTarget.TargetSyntax.Value.nat -@37 := @36 @4 -@38 := LexLeanTarget.TargetSyntax.Ty.nat -@39 := LexLeanTarget.TargetSyntax.Program -@40 := LexLeanPreservation.Rust.RCrate -@41 := LexLeanPreservation.Rust.Flags -@42 := Nat -@43 := #3 -@44 := @7 @43 -@45 := #2 -@46 := @44 @45 -@47 := #1 -@48 := @46 @47 -@54 := {p : @39} -> {c : @40} -> {A : @41} -> (n : @42) -> @48 @37 @38 -@56 := LexLeanPreservation.Rust.wt_nat @0 -@58 := @11 @45 @47 -@63 := {c : @40} -> {A : @41} -> (n : @42) -> @58 @37 @38 -@64 := @56 @1 -@65 := @12 @47 -@69 := {A : @41} -> (n : @42) -> @65 @37 @38 -@70 := @64 @2 -@72 := @13 @37 @38 -@73 := (n : @42) -> @72 -@74 := @70 @4 -@75 := LexLeanTarget.TargetSyntax.Value -@76 := LexLeanTarget.TargetSyntax.Ty -@77 := List.nil.{0} -@78 := List.cons.{0} -@79 := @77 @75 -@80 := @78 @75 -@82 := @80 @37 @79 -@83 := @77 @76 -@84 := @78 @76 -@85 := @84 @38 -@86 := @85 @83 -@87 := LexLeanPreservation.Rust.WTL -@95 := {p : @39} -> {c : @40} -> {A : @41} -> @87 @45 @47 @4 @79 @83 -@97 := LexLeanPreservation.Rust.wtl_nil @0 -@98 := @87 @0 -@104 := {c : @40} -> {A : @41} -> @98 @47 @4 @79 @83 -@105 := @97 @1 -@106 := @98 @1 -@110 := {A : @41} -> @106 @4 @79 @83 -@111 := @105 @2 -@112 := @106 @2 -@113 := @112 @79 -@114 := @113 @83 -@115 := @25 @75 -@116 := @25 @76 -@117 := #6 -@118 := @7 @117 -@119 := #5 -@120 := @118 @119 -@121 := #4 -@124 := @120 @121 @43 @45 -@125 := #7 -@130 := @87 @125 @117 @119 @45 @47 -@131 := #8 -@134 := @87 @131 @125 @117 -@136 := @80 @119 @43 -@137 := @134 @136 -@139 := @84 @121 @45 -@149 := {p : @39} -> - {c : @40} -> - {A : @41} -> - {v : @75} -> {t : @76} -> {vs : @115} -> {ts : @116} -> (h : @124) -> (hs : @130) -> @137 @139 -@151 := LexLeanPreservation.Rust.wtl_cons @0 -@155 := @11 @119 @121 @43 @45 -@159 := @98 @117 @119 @45 @47 -@171 := {c : @40} -> - {A : @41} -> - {v : @75} -> - {t : @76} -> {vs : @115} -> {ts : @116} -> (h : @155) -> (hs : @159) -> @98 @125 @117 @136 @139 -@172 := @151 @1 -@175 := @12 @121 @43 @45 -@178 := @106 @119 @45 @47 -@188 := {A : @41} -> - {v : @75} -> - {t : @76} -> {vs : @115} -> {ts : @116} -> (h : @175) -> (hs : @178) -> @106 @117 @136 @139 -@189 := @172 @2 -@191 := @13 @43 @45 -@193 := @112 @45 @47 -@201 := {v : @75} -> - {t : @76} -> {vs : @115} -> {ts : @116} -> (h : @191) -> (hs : @193) -> @112 @136 @139 -@202 := @189 @37 -@203 := @36 @43 -@215 := {t : @76} -> - {vs : @115} -> {ts : @116} -> (h : @13 @203 @45) -> (hs : @193) -> @112 (@80 (@36 @119) @43) @139 -@216 := @202 @38 -@217 := @36 @45 -@219 := @13 @217 @38 -@223 := @112 (@80 (@36 @121) @43) -@224 := @85 @45 -@229 := {vs : @115} -> {ts : @116} -> (h : @219) -> (hs : @193) -> @223 @224 -@230 := @216 @79 -@231 := @36 @47 -@233 := @13 @231 @38 -@234 := @113 @47 -@236 := @80 @203 @79 -@241 := {ts : @116} -> (h : @233) -> (hs : @234) -> @112 @236 @224 -@242 := @230 @83 -@244 := @80 @217 @79 -@245 := @112 @244 -@248 := (h : @72) -> (hs : @114) -> @245 @86 -@249 := @242 @74 -@251 := @80 @231 @79 -@253 := @112 @251 @86 -@254 := (hs : @114) -> @253 -@255 := @249 @111 -@257 := @112 @82 @86 -@258 := Eq.{1} -@259 := Option.{0} -@260 := @259 @116 -@261 := @258 @260 -@262 := LexLeanPreservation.Rust.adtFields -@266 := @261 (@262 @117 @43 @45) -@267 := Option.some.{0} -@268 := @267 @116 -@269 := @268 @4 -@270 := @266 @269 -@273 := @7 @131 @125 @117 -@274 := LexLeanTarget.TargetSyntax.Value.adt -@276 := @274 @121 @43 -@277 := @273 @276 -@278 := @8 @119 -@288 := {p : @39} -> - {c : @40} -> - {A : @41} -> - {i : @42} -> {k : @42} -> {fs : @115} -> {tys : @116} -> (h : @270) -> (hf : @130) -> @277 @278 -@290 := LexLeanPreservation.Rust.wt_adt @0 -@291 := @262 @0 -@295 := @261 (@291 @43 @45) @269 -@307 := {c : @40} -> - {A : @41} -> - {i : @42} -> - {k : @42} -> {fs : @115} -> {tys : @116} -> (h : @295) -> (hf : @159) -> @11 @125 @117 @276 @278 -@308 := @290 @1 -@318 := {A : @41} -> - {i : @42} -> - {k : @42} -> {fs : @115} -> {tys : @116} -> (h : @295) -> (hf : @178) -> @12 @117 @276 @278 -@319 := @308 @2 -@320 := @13 @276 -@327 := {i : @42} -> - {k : @42} -> {fs : @115} -> {tys : @116} -> (h : @295) -> (hf : @193) -> @320 @278 -@328 := @319 @9 -@329 := @291 @9 -@338 := {k : @42} -> - {fs : @115} -> {tys : @116} -> (h : @261 (@329 @45) @269) -> (hf : @193) -> @320 @10 -@339 := @328 @9 -@340 := @329 @9 -@341 := @261 @340 -@342 := @341 @269 -@343 := @274 @9 -@345 := @13 (@343 @43) -@350 := {fs : @115} -> {tys : @116} -> (h : @342) -> (hf : @193) -> @345 @10 -@351 := @339 @82 -@358 := {tys : @116} -> (h : @342) -> (hf : @245 @47) -> @13 (@343 @236) @10 -@359 := @351 @86 -@366 := (h : @341 (@268 @86)) -> (hf : @253) -> @13 (@343 @244) @10 -@367 := Eq.refl.{1} -@368 := @367 @260 -@370 := @359 (@368 @340) -@374 := (hf : @257) -> @13 (@343 @251) @10 -@375 := @370 @255 -@378 := @13 (@343 @82) @10 -@379 := fun (__x0 : @42) => @375 -@380 := @5 @43 -@381 := @5 @45 -@383 := @80 @381 @79 -@384 := @80 @380 -@385 := @384 @383 -@386 := @84 @10 -@387 := @386 @83 -@388 := @386 @387 -@389 := @189 @381 -@390 := @5 @119 -@391 := @13 @390 -@392 := @391 @45 -@394 := @80 (@5 @125) -@396 := @112 (@394 @43) -@402 := {t : @76} -> {vs : @115} -> {ts : @116} -> (h : @392) -> (hs : @193) -> @396 @139 -@403 := @389 @10 -@404 := @5 @121 -@405 := @13 @404 -@406 := @405 @10 -@407 := @5 @117 -@408 := @80 @407 -@410 := @112 (@408 @43) -@411 := @386 @45 -@416 := {vs : @115} -> {ts : @116} -> (h : @406) -> (hs : @193) -> @410 @411 -@417 := @403 @79 -@419 := @13 @380 @10 -@420 := @80 @390 -@421 := @420 @79 -@422 := @112 @421 -@426 := {ts : @116} -> (h : @419) -> (hs : @234) -> @422 @411 -@427 := @417 @83 -@429 := @13 @381 @10 -@430 := @80 @404 -@431 := @430 @79 -@432 := @112 @431 -@435 := (h : @429) -> (hs : @114) -> @432 @387 -@436 := @427 @4 -@437 := @384 @79 -@438 := @112 @437 -@439 := @438 @387 -@440 := (hs : @114) -> @439 -@441 := @436 @111 -@442 := @112 @383 -@443 := @442 @387 -@444 := @189 @380 -@446 := @13 @407 @45 -@448 := @80 (@5 @131) -@456 := {t : @76} -> {vs : @115} -> {ts : @116} -> (h : @446) -> (hs : @193) -> @112 (@448 @43) @139 -@457 := @444 @10 -@463 := {vs : @115} -> {ts : @116} -> (h : @391 @10) -> (hs : @193) -> @396 @411 -@464 := @457 @383 -@465 := @432 @47 -@466 := @408 @421 -@471 := {ts : @116} -> (h : @406) -> (hs : @465) -> @112 @466 @411 -@472 := @464 @387 -@473 := @420 @431 -@474 := @112 @473 -@477 := (h : @419) -> (hs : @439) -> @474 @388 -@478 := @472 @47 -@479 := @430 @437 -@481 := @112 @479 @388 -@482 := (hs : @443) -> @481 -@483 := @478 @441 -@485 := @112 @385 @388 -@486 := @328 @20 -@487 := @329 @20 -@488 := @261 @487 -@489 := @488 @269 -@490 := @274 @20 -@492 := @13 (@490 @43) -@497 := {fs : @115} -> {tys : @116} -> (h : @489) -> (hf : @193) -> @492 @10 -@498 := @486 @385 -@505 := {tys : @116} -> (h : @489) -> (hf : @474 @47) -> @13 (@490 @466) @10 -@506 := @498 @388 -@513 := (h : @488 (@268 @388)) -> (hf : @481) -> @13 (@490 @473) @10 -@515 := @506 (@368 @487) -@519 := (hf : @485) -> @13 (@490 @479) @10 -@520 := @515 @483 -@523 := @13 (@490 @385) @10 -@524 := @5 @47 -@526 := @13 @524 @10 -@530 := fun (__x0 : @3) => fun (__x1 : @3) => fun (__ih0 : @526) => fun (__ih1 : @526) => @520 -@531 := LexLeanPreservation.ListEnc.enc -@532 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.__L_0 -@534 := @531 @17 @532 -@535 := @534 @43 -@536 := LexLeanTarget.TargetSyntax.Ty.list -@537 := @536 @21 -@538 := @27 @43 -@543 := @29 @121 @43 @45 @47 @4 -@546 := @7 @119 @121 @43 -@547 := LexLeanTarget.TargetSyntax.Value.list -@548 := @547 @45 -@549 := @546 @548 -@550 := @536 @47 -@557 := {p : @39} -> {c : @40} -> {A : @41} -> {vs : @115} -> {t : @76} -> (h : @543) -> @549 @550 -@559 := LexLeanPreservation.Rust.wt_list @0 -@563 := @30 @43 @45 @47 @4 -@565 := @11 @121 @43 -@572 := {c : @40} -> {A : @41} -> {vs : @115} -> {t : @76} -> (h : @563) -> @565 @548 @550 -@573 := @559 @1 -@576 := @31 @45 @47 @4 -@577 := @12 @43 -@583 := {A : @41} -> {vs : @115} -> {t : @76} -> (h : @576) -> @577 @548 @550 -@584 := @573 @2 -@591 := {vs : @115} -> {t : @76} -> (h : @32 @47 @4) -> @13 @548 @550 -@592 := @584 @538 -@593 := @27 @121 -@594 := @32 @593 -@595 := @594 @4 -@596 := @27 @119 -@601 := {t : @76} -> (h : @595) -> @13 (@547 @596) @550 -@602 := @592 @21 -@604 := @32 @538 @21 -@608 := (h : @604) -> @13 (@547 @593) @537 -@609 := @602 @47 -@612 := @13 (@547 @538) @537 -@614 := @80 @535 @383 -@615 := @84 @537 -@616 := @615 @387 -@617 := @189 @535 -@618 := @534 @117 -@630 := {t : @76} -> - {vs : @115} -> {ts : @116} -> (h : @13 @618 @45) -> (hs : @193) -> @112 (@80 (@534 @131) @43) @139 -@631 := @617 @537 -@632 := @534 @119 -@634 := @13 @632 @537 -@638 := @112 (@80 (@534 @125) @43) -@639 := @615 @45 -@644 := {vs : @115} -> {ts : @116} -> (h : @634) -> (hs : @193) -> @638 @639 -@645 := @631 @383 -@646 := @534 @121 -@648 := @13 @646 @537 -@650 := @80 @618 @421 -@655 := {ts : @116} -> (h : @648) -> (hs : @465) -> @112 @650 @639 -@656 := @645 @387 -@658 := @13 @535 @537 -@660 := @80 @632 @431 -@661 := @112 @660 -@664 := (h : @658) -> (hs : @439) -> @661 @616 -@665 := @656 @609 -@667 := @80 @646 @437 -@669 := @112 @667 @616 -@670 := (hs : @443) -> @669 -@671 := @665 @441 -@673 := @112 @614 @616 -@674 := 2 -@675 := @328 @674 -@676 := @329 @674 -@677 := @261 @676 -@678 := @677 @269 -@679 := @274 @674 -@686 := {fs : @115} -> {tys : @116} -> (h : @678) -> (hf : @193) -> @13 (@679 @43) @10 -@687 := @675 @614 -@694 := {tys : @116} -> (h : @678) -> (hf : @661 @47) -> @13 (@679 @650) @10 -@695 := @687 @616 -@702 := (h : @677 (@268 @616)) -> (hf : @669) -> @13 (@679 @660) @10 -@704 := @695 (@368 @676) -@708 := (hf : @673) -> @13 (@679 @667) @10 -@709 := @704 @671 -@712 := @13 (@679 @614) @10 -@713 := fun (__ih1 : @526) => @709 -@716 := @32 (@27 @47) @21 -@719 := fun (__x0 : @26) => fun (__x1 : @3) => fun (__ih0 : @716) => @713 -@720 := LexLeanTarget.TargetSyntax.Value.string -@721 := @720 @45 -@722 := LexLeanTarget.TargetSyntax.Ty.string -@723 := String -@724 := @720 @4 -@730 := {p : @39} -> {c : @40} -> {A : @41} -> (s : @723) -> @48 @724 @722 -@732 := LexLeanPreservation.Rust.wt_string @0 -@737 := {c : @40} -> {A : @41} -> (s : @723) -> @58 @724 @722 -@738 := @732 @1 -@742 := {A : @41} -> (s : @723) -> @65 @724 @722 -@743 := @738 @2 -@746 := (s : @723) -> @13 @724 @722 -@747 := @743 @45 -@749 := @13 @721 @722 -@751 := @80 @524 @79 -@753 := @80 @721 @751 -@754 := @84 @722 -@755 := @754 @387 -@756 := @189 @524 -@763 := {t : @76} -> {vs : @115} -> {ts : @116} -> (h : @405 @45) -> (hs : @193) -> @410 @139 -@764 := @756 @10 -@771 := {vs : @115} -> {ts : @116} -> (h : @419) -> (hs : @193) -> @112 (@420 @43) @411 -@772 := @764 @79 -@776 := {ts : @116} -> (h : @429) -> (hs : @234) -> @432 @411 -@777 := @772 @83 -@778 := (h : @526) -> @440 -@779 := @777 @4 -@780 := (hs : @114) -> @443 -@781 := @779 @111 -@782 := @112 @751 -@783 := @782 @387 -@784 := @189 @721 -@785 := @720 @119 -@797 := {t : @76} -> - {vs : @115} -> {ts : @116} -> (h : @13 @785 @45) -> (hs : @193) -> @112 (@80 (@720 @125) @43) @139 -@798 := @784 @722 -@799 := @720 @121 -@801 := @13 @799 @722 -@805 := @112 (@80 (@720 @117) @43) -@806 := @754 @45 -@811 := {vs : @115} -> {ts : @116} -> (h : @801) -> (hs : @193) -> @805 @806 -@812 := @798 @751 -@813 := @720 @43 -@815 := @13 @813 @722 -@816 := @438 @47 -@818 := @80 @785 @431 -@823 := {ts : @116} -> (h : @815) -> (hs : @816) -> @112 @818 @806 -@824 := @812 @387 -@826 := @80 @799 @437 -@827 := @112 @826 -@830 := (h : @749) -> (hs : @443) -> @827 @755 -@831 := @824 @747 -@833 := @80 @813 @383 -@835 := @112 @833 @755 -@836 := (hs : @783) -> @835 -@837 := @831 @781 -@839 := @112 @753 @755 -@840 := @319 @20 -@841 := @291 @20 -@850 := {k : @42} -> - {fs : @115} -> {tys : @116} -> (h : @261 (@841 @45) @269) -> (hf : @193) -> @320 @21 -@851 := @840 @9 -@852 := @841 @9 -@853 := @261 @852 -@854 := @853 @269 -@859 := {fs : @115} -> {tys : @116} -> (h : @854) -> (hf : @193) -> @345 @21 -@860 := @851 @753 -@867 := {tys : @116} -> (h : @854) -> (hf : @827 @47) -> @13 (@343 @818) @21 -@868 := @860 @755 -@875 := (h : @853 (@268 @755)) -> (hf : @835) -> @13 (@343 @826) @21 -@877 := @868 (@368 @852) -@881 := (hf : @839) -> @13 (@343 @833) @21 -@882 := @877 @837 -@885 := @13 (@343 @753) @21 -@888 := fun (__x0 : @723) => fun (__x1 : @3) => fun (__ih0 : @15) => @882 -@889 := @18 @43 -@890 := @18 @45 -@892 := @80 @890 @79 -@893 := @80 @889 -@894 := @893 @892 -@895 := @84 @21 -@896 := @895 @83 -@897 := @895 @896 -@898 := @189 @890 -@899 := @18 @119 -@900 := @13 @899 -@901 := @900 @45 -@904 := @80 (@18 @125) @43 -@905 := @112 @904 -@911 := {t : @76} -> {vs : @115} -> {ts : @116} -> (h : @901) -> (hs : @193) -> @905 @139 -@912 := @898 @21 -@913 := @18 @121 -@914 := @13 @913 -@915 := @914 @21 -@916 := @18 @117 -@917 := @80 @916 -@919 := @112 (@917 @43) -@920 := @895 @45 -@925 := {vs : @115} -> {ts : @116} -> (h : @915) -> (hs : @193) -> @919 @920 -@926 := @912 @79 -@928 := @13 @889 @21 -@929 := @80 @899 -@930 := @929 @79 -@935 := {ts : @116} -> (h : @928) -> (hs : @234) -> @112 @930 @920 -@936 := @926 @83 -@938 := @13 @890 @21 -@939 := @80 @913 -@940 := @939 @79 -@941 := @112 @940 -@944 := (h : @938) -> (hs : @114) -> @941 @896 -@945 := @936 @4 -@946 := @893 @79 -@948 := @112 @946 @896 -@949 := (hs : @114) -> @948 -@950 := @945 @111 -@952 := @112 @892 @896 -@953 := @189 @889 -@965 := {t : @76} -> - {vs : @115} -> {ts : @116} -> (h : @13 @916 @45) -> (hs : @193) -> @112 (@80 (@18 @131) @43) @139 -@966 := @953 @21 -@972 := {vs : @115} -> {ts : @116} -> (h : @900 @21) -> (hs : @193) -> @905 @920 -@973 := @966 @892 -@974 := @941 @47 -@975 := @917 @930 -@980 := {ts : @116} -> (h : @915) -> (hs : @974) -> @112 @975 @920 -@981 := @973 @896 -@982 := @929 @940 -@983 := @112 @982 -@986 := (h : @928) -> (hs : @948) -> @983 @897 -@987 := @981 @47 -@988 := @939 @946 -@990 := @112 @988 @897 -@991 := (hs : @952) -> @990 -@992 := @987 @950 -@994 := @112 @894 @897 -@995 := @840 @20 -@996 := @841 @20 -@997 := @261 @996 -@998 := @997 @269 -@1003 := {fs : @115} -> {tys : @116} -> (h : @998) -> (hf : @193) -> @492 @21 -@1004 := @995 @894 -@1011 := {tys : @116} -> (h : @998) -> (hf : @983 @47) -> @13 (@490 @975) @21 -@1012 := @1004 @897 -@1019 := (h : @997 (@268 @897)) -> (hf : @990) -> @13 (@490 @982) @21 -@1021 := @1012 (@368 @996) -@1025 := (hf : @994) -> @13 (@490 @988) @21 -@1026 := @1021 @992 -@1029 := @13 (@490 @894) @21 -@1032 := @13 (@18 @47) @21 -@1036 := fun (__x0 : @17) => fun (__x1 : @17) => fun (__ih0 : @1032) => fun (__ih1 : @1032) => @1026 -@1045 := {p : @39} -> {c : @40} -> {A : @41} -> {t : @76} -> @29 @43 @45 @47 @79 @4 -@1047 := LexLeanPreservation.Rust.wtAll_nil @0 -@1054 := {c : @40} -> {A : @41} -> {t : @76} -> @30 @45 @47 @79 @4 -@1055 := @1047 @1 -@1060 := {A : @41} -> {t : @76} -> @31 @47 @79 @4 -@1061 := @1055 @2 -@1062 := @32 @79 -@1064 := {t : @76} -> @1062 @4 -@1065 := @1061 @21 -@1066 := @1062 @21 -@1067 := @27 @45 -@1069 := @546 @45 @4 -@1074 := @29 @117 @119 @121 @45 @47 -@1077 := @29 @125 @117 @119 -@1079 := @80 @121 @43 -@1089 := {p : @39} -> - {c : @40} -> - {A : @41} -> - {v : @75} -> {vs : @115} -> {t : @76} -> (h : @1069) -> (hs : @1074) -> @1077 @1079 @45 -@1091 := LexLeanPreservation.Rust.wtAll_cons @0 -@1108 := {c : @40} -> - {A : @41} -> - {v : @75} -> - {vs : @115} -> - {t : @76} -> (h : @565 @45 @4) -> (hs : @30 @119 @121 @45 @47) -> @30 @117 @119 @1079 @45 -@1109 := @1091 @1 -@1123 := {A : @41} -> - {v : @75} -> - {vs : @115} -> {t : @76} -> (h : @577 @45 @4) -> (hs : @31 @121 @45 @47) -> @31 @119 @1079 @45 -@1124 := @1109 @2 -@1126 := @13 @45 @4 -@1128 := @32 @45 @47 -@1135 := {v : @75} -> {vs : @115} -> {t : @76} -> (h : @1126) -> (hs : @1128) -> @32 @1079 @45 -@1136 := @1124 @889 -@1143 := {vs : @115} -> {t : @76} -> (h : @900 @4) -> (hs : @1128) -> @32 @904 @45 -@1144 := @1136 @1067 -@1152 := {t : @76} -> (h : @914 @4) -> (hs : @594 @47) -> @32 (@917 @596) @45 -@1153 := @1144 @21 -@1158 := (h : @928) -> (hs : @604) -> @32 (@929 @593) @21 -@1159 := @1153 @47 -@1165 := (hs : @32 @1067 @21) -> @32 (@939 @538) @21 -@1166 := @1159 @4 -@1169 := @32 (@893 @1067) @21 -@1173 := fun (__x0 : @17) => fun (__x1 : @26) => fun (__ih0 : @1032) => fun (__ih1 : @716) => @1166 -@1186 := fun (__v : @3) => - Coverage.Syntax.Expr.rec.{0} @16 @24 @35 @379 @530 @719 @888 @1036 @1065 @1173 @4 -@1187 := (__v : @3) -> @15 -@1200 := fun (__v : @17) => - Coverage.Syntax.Stmt.rec.{0} @16 @24 @35 @379 @530 @719 @888 @1036 @1065 @1173 @4 -@1201 := (__v : @17) -> @23 -@1214 := fun (__v : @26) => - Coverage.Syntax.Expr.rec_1.{0} @16 @24 @35 @379 @530 @719 @888 @1036 @1065 @1173 @4 -@1215 := (__v : @26) -> @34 -@1217 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.Compose.RustStd.__wt_0 @47 -@1220 := Prod.{0, 0} @42 @75 -@1224 := Prod.mk.{0, 0} @42 @75 @9 -@1225 := @1224 @524 -@1226 := @77 @1220 -@1227 := @78 @1220 -@1229 := @1227 @1225 @1226 -@1230 := Bool.true -@1231 := LexLeanTarget.TargetSyntax.Function -@1232 := LexLeanTarget.TargetSyntax.Program.functions -@1233 := @1232 @0 -@1234 := @77 @42 -@1235 := LexLeanTarget.TargetSyntax.Ty.unit -@1236 := LexLeanTarget.TargetSyntax.Value.unit -@1239 := LexLeanTarget.TargetSyntax.Expr.value @1235 @1236 -@1244 := LexLeanTarget.TargetSyntax.Function.mk @1234 @83 @1235 @1239 -@1249 := List.getD.{0} @1231 @1233 @9 @1244 -@1253 := fun (__e_n : @42) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.RustStd.root @4 @9 -@1255 := @777 @1217 @111 -@1256 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.denote -@1257 := @1256 @47 -@1258 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.__fits_0 -@1259 := @1258 @47 -@1262 := @36 (Coverage.RecRoots.syntaxTotal @47) -@1264 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.root @47 -@1265 := Bool -@1266 := Ne.{1} -@1267 := LexLeanPreservation.Obs -@1268 := @1266 @1267 -@1269 := LexLeanPreservation.Rel -@1272 := @1268 (@1269 @47 @4) -@1273 := LexLeanPreservation.Obs.stuck -@1276 := (f : @1265) -> (v : @75) -> @1272 @1273 -@1278 := LexLeanPreservation.Rust.rel_ne_stuck @1259 -@1284 := (v : @75) -> @1268 (@1269 (@1258 @45) @4) @1273 -@1285 := @1278 @1262 -@1289 := @1268 (@1269 @1259 @1262) @1273 -@1290 := @25 @1220 -@1291 := LexLeanPreservation.Rust.FunSem -@1292 := #9 -@1298 := (n : @42) -> @1291 @1292 @131 @125 @4 @117 -@1299 := @259 @1231 -@1300 := @258 @1299 -@1307 := LexLeanRuntime.index (@25 @1231) @1231 (LexLeanRuntime.instIndexableList @1231) -@1311 := @1300 (@1307 (@1232 @1292) @117) -@1312 := @267 @1231 -@1313 := @1312 @119 -@1314 := @1311 @1313 -@1315 := #10 -@1319 := @87 @1315 @1292 @131 @119 -@1320 := LexLeanTarget.TargetSyntax.Function.types -@1321 := @1320 @117 -@1322 := @1319 @1321 -@1323 := @259 @1290 -@1324 := @258 @1323 -@1325 := LexLeanTarget.TargetSemantics.bindAll -@1326 := LexLeanTarget.TargetSyntax.Function.parameters -@1331 := @1324 (@1325 (@1326 @125) @117 @1226) -@1332 := @267 @1290 -@1333 := @1332 @119 -@1334 := @1331 @1333 -@1335 := @259 @1265 -@1336 := @258 @1335 -@1337 := LexLeanPreservation.Rust.fnFallible -@1338 := #11 -@1341 := @1336 (@1337 @1338 @1292) -@1342 := @267 @1265 -@1343 := @1342 @119 -@1344 := @1341 @1343 -@1345 := LexLeanPreservation.RunConv -@1346 := #13 -@1350 := @1345 @1346 @1315 @131 @119 -@1352 := @1268 @117 @1273 -@1353 := Exists.{1} -@1354 := LexLeanPreservation.Rust.ROut -@1355 := @1353 @1354 -@1356 := And -@1357 := LexLeanPreservation.Rust.RealizesFn -@1361 := @1356 (@1357 @1292 @131 @4) -@1362 := LexLeanPreservation.Rust.RCI -@1364 := @1362 #15 -@1365 := LexLeanPreservation.Rust.fnIdent -@1366 := @1365 @1346 -@1373 := (hne : @1352) -> @1355 (fun (ro : @1354) => @1361 (@1364 @1366 @1338 @4)) -@1388 := {p : @39} -> - {c : @40} -> - {A : @41} -> - {f : @42} -> - {fn : @1231} -> - {args : @115} -> - {env : @1290} -> - {F : @1265} -> - {o : @1267} -> - (hB : @1298) -> - (hfn : @1314) -> (hwt : @1322) -> (hbind : @1334) -> (hF : @1344) -> (hA : @1350) -> @1373 -@1390 := LexLeanPreservation.Rust.compose @0 -@1391 := @1291 @0 -@1396 := (n : @42) -> @1391 @131 @125 @4 @117 -@1397 := @1307 @1233 -@1400 := @1300 (@1397 @117) @1313 -@1404 := @98 @1292 @131 @119 @1321 -@1405 := @1345 @0 -@1408 := @1405 @1315 @131 @119 -@1422 := {c : @40} -> - {A : @41} -> - {f : @42} -> - {fn : @1231} -> - {args : @115} -> - {env : @1290} -> - {F : @1265} -> - {o : @1267} -> - (hB : @1396) -> - (hfn : @1400) -> (hwt : @1404) -> (hbind : @1334) -> (hF : @1344) -> (hA : @1408) -> @1373 -@1423 := @1390 @1 -@1424 := @1391 @1 -@1428 := (n : @42) -> @1424 @125 @4 @117 -@1431 := @106 @131 @119 @1321 -@1432 := @1337 @1 -@1435 := @1336 (@1432 @1292) @1343 -@1436 := @1362 @1 -@1446 := (hbind : @1334) -> - (hF : @1435) -> - (hA : @1408) -> (hne : @1352) -> @1355 (fun (ro : @1354) => @1361 (@1436 @1366 @1338 @4)) -@1456 := {A : @41} -> - {f : @42} -> - {fn : @1231} -> - {args : @115} -> - {env : @1290} -> - {F : @1265} -> {o : @1267} -> (hB : @1428) -> (hfn : @1400) -> (hwt : @1431) -> @1446 -@1457 := @1423 @2 -@1459 := @1424 @2 @4 -@1461 := (n : @42) -> @1459 @117 -@1462 := @112 @119 -@1463 := @1462 @1321 -@1472 := {f : @42} -> - {fn : @1231} -> - {args : @115} -> - {env : @1290} -> - {F : @1265} -> {o : @1267} -> (hB : @1461) -> (hfn : @1400) -> (hwt : @1463) -> @1446 -@1473 := @1457 @9 -@1475 := (n : @42) -> @1459 @9 -@1476 := @1397 @9 -@1477 := @1300 @1476 -@1478 := @1477 @1313 -@1479 := @1432 @9 -@1480 := @1336 @1479 -@1481 := @1480 @1343 -@1482 := @1405 @9 -@1484 := @1482 @131 @119 -@1486 := @1436 (@1365 @9) -@1494 := (hF : @1481) -> - (hA : @1484) -> (hne : @1352) -> @1355 (fun (ro : @1354) => @1361 (@1486 @1338 @4)) -@1503 := {fn : @1231} -> - {args : @115} -> - {env : @1290} -> - {F : @1265} -> - {o : @1267} -> (hB : @1475) -> (hfn : @1478) -> (hwt : @1463) -> (hbind : @1334) -> @1494 -@1504 := @1473 @1249 -@1506 := @1477 (@1312 @1249) -@1507 := @1320 @1249 -@1508 := @1462 @1507 -@1510 := @1325 (@1326 @1249) -@1522 := {args : @115} -> - {env : @1290} -> - {F : @1265} -> - {o : @1267} -> - (hB : @1475) -> - (hfn : @1506) -> (hwt : @1508) -> (hbind : @1324 (@1510 @117 @1226) @1333) -> @1494 -@1523 := @1504 @751 -@1524 := @408 @79 -@1526 := @112 @1524 @1507 -@1527 := @394 @79 -@1531 := @1324 (@1510 @1527 @1226) @1333 -@1534 := @80 (@5 @1292) @79 -@1555 := {env : @1290} -> - {F : @1265} -> - {o : @1267} -> - (hB : @1475) -> - (hfn : @1506) -> - (hwt : @1526) -> - (hbind : @1531) -> - (hF : @1481) -> - (hA : @1482 @1534 @119) -> - (hne : @1352) -> @1355 (fun (ro : @1354) => @1361 (@1486 (@80 (@5 #12) @79) @4)) -@1556 := @1523 @1229 -@1557 := @422 @1507 -@1565 := @1324 (@1510 @1524 @1226) (@1332 (@1227 (@1224 @407) @1226)) -@1566 := @448 @79 -@1585 := {F : @1265} -> - {o : @1267} -> - (hB : @1475) -> - (hfn : @1506) -> - (hwt : @1557) -> - (hbind : @1565) -> - (hF : @1481) -> - (hA : @1482 @1566 @119) -> - (hne : @1352) -> @1355 (fun (ro : @1354) => @1361 (@1486 (@80 (@5 @1338) @79) @4)) -@1586 := @1556 @1230 -@1587 := @432 @1507 -@1595 := @1324 (@1510 @421 @1226) (@1332 (@1227 (@1224 @390) @1226)) -@1597 := @1480 (@1342 @1230) -@1599 := @1482 @1527 @119 -@1600 := @1357 @1230 -@1619 := {o : @1267} -> - (hB : @1475) -> - (hfn : @1506) -> - (hwt : @1587) -> - (hbind : @1595) -> - (hF : @1597) -> - (hA : @1599) -> - (hne : @1352) -> @1355 (fun (ro : @1354) => @1356 (@1600 @131 @4) (@1486 (@80 (@5 @1315) @79) @4)) -@1620 := @1586 @1257 -@1621 := @438 @1507 -@1629 := @1324 (@1510 @431 @1226) (@1332 (@1227 (@1224 @404) @1226)) -@1630 := @1482 @1524 -@1631 := @1256 @117 -@1632 := @1630 @1631 -@1633 := @1256 @125 -@1651 := (hB : @1475) -> - (hfn : @1506) -> - (hwt : @1621) -> - (hbind : @1629) -> - (hF : @1597) -> - (hA : @1632) -> - (hne : @1268 @1633 @1273) -> - @1355 (fun (ro : @1354) => @1356 (@1600 (@1256 @1292) @4) (@1486 @1534 @4)) -@1652 := @1620 @1253 -@1653 := @442 @1507 -@1661 := @1324 (@1510 @437 @1226) (@1332 (@1227 (@1224 @380) @1226)) -@1662 := @1482 @421 -@1663 := @1256 @119 -@1681 := (hfn : @1506) -> - (hwt : @1653) -> - (hbind : @1661) -> - (hF : @1597) -> - (hA : @1662 @1663) -> - (hne : @1268 @1631 @1273) -> - @1355 (fun (ro : @1354) => @1356 (@1600 (@1256 @131) @4) (@1486 @1566 @4)) -@1684 := @1652 (@367 @1299 @1476) -@1685 := @782 @1507 -@1693 := @1324 (@1510 @383 @1226) (@1332 (@1227 (@1224 @381) @1226)) -@1694 := @1482 @431 -@1695 := @1256 @121 -@1711 := (hwt : @1685) -> - (hbind : @1693) -> - (hF : @1597) -> - (hA : @1694 @1695) -> - (hne : @1268 @1663 @1273) -> @1355 (fun (ro : @1354) => @1356 (@1600 @1633 @4) (@1486 @1527 @4)) -@1712 := @1684 @1255 -@1714 := @1510 @751 @1226 -@1717 := @1324 @1714 (@1332 @1229) -@1718 := @1482 @437 -@1719 := @1256 @43 -@1734 := (hbind : @1717) -> - (hF : @1597) -> - (hA : @1718 @1719) -> - (hne : @1268 @1695 @1273) -> @1355 (fun (ro : @1354) => @1356 (@1600 @1631 @4) (@1486 @1524 @4)) -@1737 := @1712 (@367 @1323 @1714) -@1738 := @1482 @383 -@1739 := @1256 @45 -@1753 := (hF : @1597) -> - (hA : @1738 @1739) -> - (hne : @1268 @1719 @1273) -> @1355 (fun (ro : @1354) => @1356 (@1600 @1663 @4) (@1486 @421 @4)) -@1756 := @1737 (@367 @1335 @1479) -@1770 := (hA : @1482 @751 @1257) -> - (hne : @1268 @1739 @1273) -> @1355 (fun (ro : @1354) => @1356 (@1600 @1695 @4) (@1486 @431 @4)) -@1771 := @1756 @1264 -@1782 := (hne : @1268 @1257 @1273) -> - @1355 (fun (ro : @1354) => @1356 (@1600 @1719 @4) (@1486 @437 @4)) -@1783 := @1771 @1285 -@1789 := @1356 (@1600 @1739 @4) (@1486 @383 @4) -@1791 := @1355 (fun (ro : @1354) => @1789) -@1793 := @1355 (fun (__e_ro : @1354) => @1789) -@1797 := LexLeanPreservation.Rust.RepresentableL (@80 @6 @79) -@1798 := (__e_hrep : @1797) -> @1793 -@1799 := fun (__e_hrep : @1797) => @1783 -@1800 := (e : @3) -> @1798 -@1801 := fun (e : @3) => @1799 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R31/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R31/RustStd.lean deleted file mode 100644 index f77c4e7db..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R31/RustStd.lean +++ /dev/null @@ -1,60 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [{ constructors := [[.nat], [(.adt 0), (.adt 0)], [(.list (.adt 1)), (.adt 0)]] }, - { constructors := [[.string, (.adt 0)], [(.adt 1), (.adt 1)]] }], functions := [ - { parameters := [0], types := [(.adt 0)], result := .nat, - body := (.call 1 [(.var 0)]) }, - { parameters := [0], types := [(.adt 0)], result := .nat, - body := (.«match» .nat (.var 0) [(.arm (.adt 0) [1] (.value .nat (.nat 1))), (.arm (.adt 1) [2, 3] (.prim .natAdd [(.prim .natAdd [(.call 1 [(.var 2)]), (.call 1 [(.var 3)])]), (.value .nat (.nat 1))])), (.arm (.adt 2) [4, 5] (.prim .natAdd [(.call 2 [(.var 4)]), (.call 1 [(.var 5)])]))]) }, - { parameters := [0], types := [(.list (.adt 1))], result := .nat, - body := (.«match» .nat (.var 0) [(.arm .nil [] (.value .nat (.nat 0))), (.arm .cons [1, 2] (.prim .natAdd [(.call 3 [(.var 1)]), (.call 2 [(.var 2)])]))]) }, - { parameters := [0], types := [(.adt 1)], result := .nat, - body := (.«match» .nat (.var 0) [(.arm (.adt 0) [1, 2] (.prim .natAdd [(.call 1 [(.var 2)]), (.value .nat (.nat 1))])), (.arm (.adt 1) [3, 4] (.prim .natAdd [(.call 3 [(.var 3)]), (.call 3 [(.var 4)])]))]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.enum (.adt 0) [{ number := 0, fields := [.nat] }, { number := 1, fields := [(.rc (.adt 0)), (.rc (.adt 0))] }, { number := 2, fields := [(.list (.adt 1)), (.rc (.adt 0))] }]), - (.enum (.adt 1) [{ number := 0, fields := [.str, (.adt 0)] }, { number := 1, fields := [(.rc (.adt 1)), (.rc (.adt 1))] }]), - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible .nat) (.mk [] (.call (.function 1) [(.move (.generated .binding 0))] false))), - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 1)) [(.mk (.adt 0 0 [.wild]) (.mk [] (.succeed (.lit (.nat 1))))), (.mk (.adt 0 1 [(.bind (.generated .boxed 8)), (.bind (.generated .boxed 9))]) (.mk [(.mk (.bind (.generated .binding 2)) none (.unbox (.generated .boxed 8))), (.mk (.bind (.generated .binding 3)) none (.unbox (.generated .boxed 9))), (.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.call (.function 1) [(.move (.generated .binding 2))] true)), (.mk (.bind (.generated .operand 3)) none (.call (.function 1) [(.move (.generated .binding 3))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] true)))), (.mk (.bind (.generated .operand 5)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false))), (.mk (.adt 0 2 [(.bind (.generated .binding 4)), (.bind (.generated .boxed 10))]) (.mk [(.mk (.bind (.generated .binding 5)) none (.unbox (.generated .boxed 10))), (.mk (.bind (.generated .operand 6)) none (.call (.function 2) [(.move (.generated .binding 4))] true)), (.mk (.bind (.generated .operand 7)) none (.call (.function 1) [(.move (.generated .binding 5))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false)))]))), - (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.adt 1)) }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 11)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 11)) [(.mk .none (.mk [] (.succeed (.lit (.nat 0))))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [(.mk (.bind (.generated .operand 12)) none (.call (.function 3) [(.move (.generated .binding 1))] true)), (.mk (.bind (.generated .operand 13)) none (.call (.function 2) [(.move (.generated .binding 2))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false)))]))), - (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 14)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 14)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .binding 2))]) (.mk [(.mk (.bind (.generated .operand 15)) none (.call (.function 1) [(.move (.generated .binding 2))] true)), (.mk (.bind (.generated .operand 16)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] false))), (.mk (.adt 1 1 [(.bind (.generated .boxed 19)), (.bind (.generated .boxed 20))]) (.mk [(.mk (.bind (.generated .binding 3)) none (.unbox (.generated .boxed 19))), (.mk (.bind (.generated .binding 4)) none (.unbox (.generated .boxed 20))), (.mk (.bind (.generated .operand 17)) none (.call (.function 3) [(.move (.generated .binding 3))] true)), (.mk (.bind (.generated .operand 18)) none (.call (.function 3) [(.move (.generated .binding 4))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 17)), (.move (.generated .operand 18))] false)))])))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 1) [(.move (.generated .binding 0))] false), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.callF (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 1)) [(.mk (.adt 0 0 [.wild]) (.mk [] (.succeed (.lit (.nat 1))))), (.mk (.adt 0 1 [(.bind (.generated .boxed 8)), (.bind (.generated .boxed 9))]) (.mk [(.mk (.bind (.generated .binding 2)) none (.unbox (.generated .boxed 8))), (.mk (.bind (.generated .binding 3)) none (.unbox (.generated .boxed 9))), (.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.call (.function 1) [(.move (.generated .binding 2))] true)), (.mk (.bind (.generated .operand 3)) none (.call (.function 1) [(.move (.generated .binding 3))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] true)))), (.mk (.bind (.generated .operand 5)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false))), (.mk (.adt 0 2 [(.bind (.generated .binding 4)), (.bind (.generated .boxed 10))]) (.mk [(.mk (.bind (.generated .binding 5)) none (.unbox (.generated .boxed 10))), (.mk (.bind (.generated .operand 6)) none (.call (.function 2) [(.move (.generated .binding 4))] true)), (.mk (.bind (.generated .operand 7)) none (.call (.function 1) [(.move (.generated .binding 5))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false)))]), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.adt 0)) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, none), (0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.lit (.nat 1)))) (Corr.mCons (Γ' := [(3, (.adt 0), (some 3)), (2, (.adt 0), (some 2)), (0, (.adt 0), (some 0))]) (j := 1) (loads := [(.mk (.bind (.generated .binding 2)) none (.unbox (.generated .boxed 8))), (.mk (.bind (.generated .binding 3)) none (.unbox (.generated .boxed 9)))]) (lets := [(.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.call (.function 1) [(.move (.generated .binding 2))] true)), (.mk (.bind (.generated .operand 3)) none (.call (.function 1) [(.move (.generated .binding 3))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] true)))), (.mk (.bind (.generated .operand 5)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false)) (Corr.mCons (Γ' := [(5, (.adt 0), (some 5)), (4, (.list (.adt 1)), (some 4)), (0, (.adt 0), (some 0))]) (j := 2) (loads := [(.mk (.bind (.generated .binding 5)) none (.unbox (.generated .boxed 10)))]) (lets := [(.mk (.bind (.generated .operand 6)) none (.call (.function 2) [(.move (.generated .binding 4))] true)), (.mk (.bind (.generated .operand 7)) none (.call (.function 1) [(.move (.generated .binding 5))] true))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false)) (Corr.mNil) rfl rfl rfl (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.adt 1))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 2)) none (.call (.function 1) [(.move (.generated .binding 2))] true)), (.mk (.bind (.generated .operand 3)) none (.call (.function 1) [(.move (.generated .binding 3))] true))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl)))) rfl rfl rfl)⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 11)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 11)) [(.mk .none (.mk [] (.succeed (.lit (.nat 0))))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [(.mk (.bind (.generated .operand 12)) none (.call (.function 3) [(.move (.generated .binding 1))] true)), (.mk (.bind (.generated .operand 13)) none (.call (.function 2) [(.move (.generated .binding 2))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false)))]), [(0, (.list (.adt 1)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.adt 1))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list (.adt 1)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.lit (.nat 0)))) (Corr.mCons (Γ' := [(2, (.list (.adt 1)), (some 2)), (1, (.adt 1), (some 1)), (0, (.list (.adt 1)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .operand 12)) none (.call (.function 3) [(.move (.generated .binding 1))] true)), (.mk (.bind (.generated .operand 13)) none (.call (.function 2) [(.move (.generated .binding 2))] true))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 12)), (.move (.generated .operand 13))] false)) (Corr.mNil) rfl rfl rfl (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.adt 1))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl)))) rfl rfl rfl)⟩⟩ - -theorem fun3 : FunOK program krate flags 3 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 14)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 14)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .binding 2))]) (.mk [(.mk (.bind (.generated .operand 15)) none (.call (.function 1) [(.move (.generated .binding 2))] true)), (.mk (.bind (.generated .operand 16)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] false))), (.mk (.adt 1 1 [(.bind (.generated .boxed 19)), (.bind (.generated .boxed 20))]) (.mk [(.mk (.bind (.generated .binding 3)) none (.unbox (.generated .boxed 19))), (.mk (.bind (.generated .binding 4)) none (.unbox (.generated .boxed 20))), (.mk (.bind (.generated .operand 17)) none (.call (.function 3) [(.move (.generated .binding 3))] true)), (.mk (.bind (.generated .operand 18)) none (.call (.function 3) [(.move (.generated .binding 4))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 17)), (.move (.generated .operand 18))] false)))]), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.adt 1)) (U := []) (view := false) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.adt 0), (some 2)), (1, .string, none), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .operand 15)) none (.call (.function 1) [(.move (.generated .binding 2))] true)), (.mk (.bind (.generated .operand 16)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] false)) (Corr.mCons (Γ' := [(4, (.adt 1), (some 4)), (3, (.adt 1), (some 3)), (0, (.adt 1), (some 0))]) (j := 1) (loads := [(.mk (.bind (.generated .binding 3)) none (.unbox (.generated .boxed 19))), (.mk (.bind (.generated .binding 4)) none (.unbox (.generated .boxed 20)))]) (lets := [(.mk (.bind (.generated .operand 17)) none (.call (.function 3) [(.move (.generated .binding 3))] true)), (.mk (.bind (.generated .operand 18)) none (.call (.function 3) [(.move (.generated .binding 4))] true))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 17)), (.move (.generated .operand 18))] false)) (Corr.mNil) rfl rfl rfl (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl)⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | 3 => exact fun3 - | _ + 4 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R32/Compose/RustCore.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R32/Compose/RustCore.lex.tex deleted file mode 100644 index 2fc9dfdb7..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R32/Compose/RustCore.lex.tex +++ /dev/null @@ -1,467 +0,0 @@ -\begin{lexlean}{RustCore} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.Compose.RustCore} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.RustCore, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.Compose.RustCore.root : @923 := @924 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.Compose.RustCore.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.RustCore.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.RustCore.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.RustCore.flags -@3 := Nat -@4 := #2 -@5 := LexLeanTarget.TargetSyntax.Value.nat -@6 := @5 @4 -@7 := LexLeanTarget.TargetSyntax.Ty.nat -@8 := LexLeanTarget.TargetSyntax.Program -@9 := LexLeanPreservation.Rust.RCrate -@10 := LexLeanPreservation.Rust.Flags -@11 := LexLeanPreservation.Rust.WT -@12 := #3 -@14 := @11 @12 @4 -@15 := #1 -@16 := @14 @15 -@17 := #0 -@18 := @5 @17 -@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 -@26 := LexLeanPreservation.Rust.wt_nat @0 -@27 := @11 @0 -@34 := {c : @9} -> {A : @10} -> (n : @3) -> @27 @4 @15 @18 @7 -@35 := @26 @1 -@36 := @27 @1 -@41 := {A : @10} -> (n : @3) -> @36 @15 @18 @7 -@42 := @35 @2 -@43 := @36 @2 -@46 := (n : @3) -> @43 @18 @7 -@47 := @42 @4 -@49 := @43 @6 @7 -@50 := @5 @15 -@51 := @42 @15 -@53 := @43 @50 @7 -@54 := LexLeanTarget.TargetSyntax.Value -@55 := List.nil.{0} -@56 := List.cons.{0} -@57 := @55 @54 -@58 := @56 @54 -@59 := @58 @50 -@60 := @59 @57 -@61 := @58 @6 -@62 := @61 @60 -@64 := Prod.{0, 0} @3 -@65 := @64 @54 -@66 := 1 -@69 := Prod.mk.{0, 0} @3 @54 -@70 := @69 @66 -@71 := @70 @50 -@72 := 0 -@73 := @69 @72 -@74 := @73 @6 -@75 := @55 @65 -@76 := @56 @65 -@78 := @76 @74 @75 -@80 := @76 @71 @78 -@81 := Bool.true -@82 := LexLeanTarget.TargetSyntax.Function -@83 := LexLeanTarget.TargetSyntax.Program.functions -@84 := @83 @0 -@85 := LexLeanTarget.TargetSyntax.Ty -@86 := @55 @3 -@87 := @55 @85 -@88 := LexLeanTarget.TargetSyntax.Ty.unit -@89 := LexLeanTarget.TargetSyntax.Value.unit -@92 := LexLeanTarget.TargetSyntax.Expr.value @88 @89 -@97 := LexLeanTarget.TargetSyntax.Function.mk @86 @87 @88 @92 -@102 := List.getD.{0} @82 @84 @72 @97 -@106 := fun (__e_n : @3) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.RustCore.root @17 @72 -@107 := LexLeanPreservation.Rust.WTL -@115 := {p : @8} -> {c : @9} -> {A : @10} -> @107 @4 @15 @17 @57 @87 -@117 := LexLeanPreservation.Rust.wtl_nil @0 -@118 := @107 @0 -@124 := {c : @9} -> {A : @10} -> @118 @15 @17 @57 @87 -@125 := @117 @1 -@126 := @118 @1 -@130 := {A : @10} -> @126 @17 @57 @87 -@131 := @125 @2 -@132 := @126 @2 -@133 := @132 @57 -@134 := @133 @87 -@135 := List.{0} -@136 := @135 @54 -@137 := @135 @85 -@138 := #6 -@139 := @11 @138 -@140 := #5 -@141 := @139 @140 -@142 := #4 -@145 := @141 @142 @12 @4 -@146 := #7 -@151 := @107 @146 @138 @140 @4 @15 -@152 := #8 -@155 := @107 @152 @146 @138 -@157 := @58 @140 @12 -@158 := @155 @157 -@159 := @56 @85 -@161 := @159 @142 @4 -@171 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {v : @54} -> {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @145) -> (hs : @151) -> @158 @161 -@173 := LexLeanPreservation.Rust.wtl_cons @0 -@193 := {c : @9} -> - {A : @10} -> - {v : @54} -> - {t : @85} -> - {vs : @136} -> - {ts : @137} -> - (h : @27 @140 @142 @12 @4) -> (hs : @118 @138 @140 @4 @15) -> @118 @146 @138 @157 @161 -@194 := @173 @1 -@210 := {A : @10} -> - {v : @54} -> - {t : @85} -> - {vs : @136} -> - {ts : @137} -> (h : @36 @142 @12 @4) -> (hs : @126 @140 @4 @15) -> @126 @138 @157 @161 -@211 := @194 @2 -@213 := @43 @12 @4 -@215 := @132 @4 @15 -@223 := {v : @54} -> - {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @213) -> (hs : @215) -> @132 @157 @161 -@224 := @211 @50 -@225 := @5 @142 -@226 := @43 @225 -@227 := @226 @4 -@228 := @5 @138 -@229 := @58 @228 -@231 := @132 (@229 @12) -@237 := {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @227) -> (hs : @215) -> @231 @161 -@238 := @224 @7 -@239 := @5 @12 -@241 := @43 @239 @7 -@242 := @5 @140 -@243 := @58 @242 -@245 := @132 (@243 @12) -@246 := @159 @7 -@247 := @246 @4 -@252 := {vs : @136} -> {ts : @137} -> (h : @241) -> (hs : @215) -> @245 @247 -@253 := @238 @57 -@254 := @133 @15 -@255 := @58 @225 -@256 := @255 @57 -@261 := {ts : @137} -> (h : @49) -> (hs : @254) -> @132 @256 @247 -@262 := @253 @87 -@263 := @58 @239 -@264 := @263 @57 -@265 := @132 @264 -@266 := @246 @87 -@269 := (h : @53) -> (hs : @134) -> @265 @266 -@270 := @262 @51 -@271 := @61 @57 -@273 := @132 @271 @266 -@274 := (hs : @134) -> @273 -@275 := @270 @131 -@277 := @132 @60 @266 -@278 := @211 @6 -@280 := @43 @242 @4 -@281 := @5 @146 -@282 := @58 @281 -@290 := {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @280) -> (hs : @215) -> @132 (@282 @12) @161 -@291 := @278 @7 -@297 := {vs : @136} -> {ts : @137} -> (h : @226 @7) -> (hs : @215) -> @231 @247 -@298 := @291 @60 -@299 := @265 @15 -@300 := @243 @256 -@301 := @132 @300 -@305 := {ts : @137} -> (h : @241) -> (hs : @299) -> @301 @247 -@306 := @298 @266 -@307 := @255 @264 -@308 := @132 @307 -@309 := @246 @266 -@312 := (h : @49) -> (hs : @273) -> @308 @309 -@313 := @306 @47 -@314 := @263 @271 -@315 := @132 @314 -@317 := (hs : @277) -> @315 @309 -@318 := @313 @275 -@319 := @132 @62 -@320 := @319 @309 -@321 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.denote -@323 := @321 @4 @15 -@324 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.__fits_0 -@326 := @324 @4 @15 -@329 := Coverage.RecRoots.wellFounded @4 @15 -@330 := @64 @3 -@332 := LexLeanPreservation.encPair @3 -@335 := @332 @3 @5 @5 -@339 := @332 @330 @5 @335 @329 -@342 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.root @4 @15 -@343 := Bool -@344 := Ne.{1} -@345 := LexLeanPreservation.Obs -@346 := @344 @345 -@347 := LexLeanPreservation.Rel -@350 := @346 (@347 @15 @17) -@351 := LexLeanPreservation.Obs.stuck -@354 := (f : @343) -> (v : @54) -> @350 @351 -@356 := LexLeanPreservation.Rust.rel_ne_stuck @326 -@363 := (v : @54) -> @346 (@347 (@324 @12 @4) @17) @351 -@364 := @356 @339 -@368 := @346 (@347 @326 @339) @351 -@369 := @135 @65 -@370 := LexLeanPreservation.Rust.FunSem -@371 := #9 -@377 := (n : @3) -> @370 @371 @152 @146 @17 @138 -@378 := Eq.{1} -@379 := Option.{0} -@380 := @379 @82 -@381 := @378 @380 -@388 := LexLeanRuntime.index (@135 @82) @82 (LexLeanRuntime.instIndexableList @82) -@392 := @381 (@388 (@83 @371) @138) -@393 := Option.some.{0} -@394 := @393 @82 -@395 := @394 @140 -@396 := @392 @395 -@397 := #10 -@401 := @107 @397 @371 @152 @140 -@402 := LexLeanTarget.TargetSyntax.Function.types -@403 := @402 @138 -@404 := @401 @403 -@405 := @379 @369 -@406 := @378 @405 -@407 := LexLeanTarget.TargetSemantics.bindAll -@408 := LexLeanTarget.TargetSyntax.Function.parameters -@413 := @406 (@407 (@408 @146) @138 @75) -@414 := @393 @369 -@415 := @414 @140 -@416 := @413 @415 -@417 := @379 @343 -@418 := @378 @417 -@419 := LexLeanPreservation.Rust.fnFallible -@420 := #11 -@423 := @418 (@419 @420 @371) -@424 := @393 @343 -@425 := @424 @140 -@426 := @423 @425 -@427 := LexLeanPreservation.RunConv -@428 := #13 -@432 := @427 @428 @397 @152 @140 -@434 := @346 @138 @351 -@435 := Exists.{1} -@436 := LexLeanPreservation.Rust.ROut -@437 := @435 @436 -@438 := And -@439 := LexLeanPreservation.Rust.RealizesFn -@443 := @438 (@439 @371 @152 @17) -@444 := LexLeanPreservation.Rust.RCI -@446 := @444 #15 -@447 := LexLeanPreservation.Rust.fnIdent -@448 := @447 @428 -@455 := (hne : @434) -> @437 (fun (ro : @436) => @443 (@446 @448 @420 @17)) -@470 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {f : @3} -> - {fn : @82} -> - {args : @136} -> - {env : @369} -> - {F : @343} -> - {o : @345} -> - (hB : @377) -> - (hfn : @396) -> (hwt : @404) -> (hbind : @416) -> (hF : @426) -> (hA : @432) -> @455 -@472 := LexLeanPreservation.Rust.compose @0 -@473 := @370 @0 -@478 := (n : @3) -> @473 @152 @146 @17 @138 -@479 := @388 @84 -@482 := @381 (@479 @138) @395 -@486 := @118 @371 @152 @140 @403 -@487 := @427 @0 -@490 := @487 @397 @152 @140 -@504 := {c : @9} -> - {A : @10} -> - {f : @3} -> - {fn : @82} -> - {args : @136} -> - {env : @369} -> - {F : @343} -> - {o : @345} -> - (hB : @478) -> - (hfn : @482) -> (hwt : @486) -> (hbind : @416) -> (hF : @426) -> (hA : @490) -> @455 -@505 := @472 @1 -@506 := @473 @1 -@510 := (n : @3) -> @506 @146 @17 @138 -@513 := @126 @152 @140 @403 -@514 := @419 @1 -@517 := @418 (@514 @371) @425 -@518 := @444 @1 -@528 := (hbind : @416) -> - (hF : @517) -> (hA : @490) -> (hne : @434) -> @437 (fun (ro : @436) => @443 (@518 @448 @420 @17)) -@538 := {A : @10} -> - {f : @3} -> - {fn : @82} -> - {args : @136} -> - {env : @369} -> {F : @343} -> {o : @345} -> (hB : @510) -> (hfn : @482) -> (hwt : @513) -> @528 -@539 := @505 @2 -@541 := @506 @2 @17 -@543 := (n : @3) -> @541 @138 -@544 := @132 @140 -@545 := @544 @403 -@554 := {f : @3} -> - {fn : @82} -> - {args : @136} -> - {env : @369} -> {F : @343} -> {o : @345} -> (hB : @543) -> (hfn : @482) -> (hwt : @545) -> @528 -@555 := @539 @72 -@557 := (n : @3) -> @541 @72 -@558 := @479 @72 -@559 := @381 @558 -@560 := @559 @395 -@561 := @514 @72 -@562 := @418 @561 -@563 := @562 @425 -@564 := @487 @72 -@566 := @564 @152 @140 -@568 := @518 (@447 @72) -@576 := (hF : @563) -> (hA : @566) -> (hne : @434) -> @437 (fun (ro : @436) => @443 (@568 @420 @17)) -@585 := {fn : @82} -> - {args : @136} -> - {env : @369} -> - {F : @343} -> {o : @345} -> (hB : @557) -> (hfn : @560) -> (hwt : @545) -> (hbind : @416) -> @576 -@586 := @555 @102 -@588 := @559 (@394 @102) -@589 := @402 @102 -@590 := @544 @589 -@592 := @407 (@408 @102) -@604 := {args : @136} -> - {env : @369} -> - {F : @343} -> - {o : @345} -> - (hB : @557) -> (hfn : @588) -> (hwt : @590) -> (hbind : @406 (@592 @138 @75) @415) -> @576 -@605 := @586 @62 -@607 := @282 (@229 @57) -@609 := @132 @607 @589 -@611 := @58 (@5 @152) -@613 := @611 (@282 @57) -@617 := @406 (@592 @613 @75) @415 -@619 := @58 (@5 @397) -@621 := @58 (@5 @371) -@623 := @619 (@621 @57) -@625 := @564 @623 @140 -@627 := @58 (@5 @428) -@630 := @58 (@5 #12) -@647 := {env : @369} -> - {F : @343} -> - {o : @345} -> - (hB : @557) -> - (hfn : @588) -> - (hwt : @609) -> - (hbind : @617) -> - (hF : @563) -> - (hA : @625) -> (hne : @434) -> @437 (fun (ro : @436) => @443 (@568 (@627 (@630 @57)) @17)) -@648 := @605 @80 -@650 := @229 (@243 @57) -@652 := @132 @650 @589 -@663 := @406 (@592 @607 @75) (@414 (@76 (@70 @228) (@76 (@73 @281) @75))) -@665 := @621 (@611 @57) -@667 := @564 @665 @140 -@669 := @58 (@5 @420) -@685 := {F : @343} -> - {o : @345} -> - (hB : @557) -> - (hfn : @588) -> - (hwt : @652) -> - (hbind : @663) -> - (hF : @563) -> - (hA : @667) -> (hne : @434) -> @437 (fun (ro : @436) => @443 (@568 (@630 (@669 @57)) @17)) -@686 := @648 @81 -@687 := @301 @589 -@698 := @406 (@592 @650 @75) (@414 (@76 (@70 @242) (@76 (@73 @228) @75))) -@700 := @562 (@424 @81) -@702 := @564 @613 @140 -@703 := @439 @81 -@721 := {o : @345} -> - (hB : @557) -> - (hfn : @588) -> - (hwt : @687) -> - (hbind : @698) -> - (hF : @700) -> - (hA : @702) -> - (hne : @434) -> @437 (fun (ro : @436) => @438 (@703 @152 @17) (@568 (@669 (@619 @57)) @17)) -@722 := @686 @323 -@723 := @308 @589 -@734 := @406 (@592 @300 @75) (@414 (@76 (@70 @225) (@76 (@73 @242) @75))) -@735 := @564 @607 -@737 := @321 @146 @138 -@738 := @735 @737 -@740 := @321 @152 @146 -@759 := (hB : @557) -> - (hfn : @588) -> - (hwt : @723) -> - (hbind : @734) -> - (hF : @700) -> - (hA : @738) -> - (hne : @346 @740 @351) -> - @437 (fun (ro : @436) => @438 (@703 (@321 @397 @371) @17) (@568 @623 @17)) -@760 := @722 @106 -@761 := @315 @589 -@772 := @406 (@592 @307 @75) (@414 (@76 (@70 @239) (@76 (@73 @225) @75))) -@773 := @564 @650 -@775 := @321 @138 @140 -@794 := (hfn : @588) -> - (hwt : @761) -> - (hbind : @772) -> - (hF : @700) -> - (hA : @773 @775) -> - (hne : @346 @737 @351) -> - @437 (fun (ro : @436) => @438 (@703 (@321 @371 @152) @17) (@568 @665 @17)) -@795 := Eq.refl.{1} -@798 := @760 (@795 @380 @558) -@799 := @319 @589 -@810 := @406 (@592 @314 @75) (@414 (@76 (@70 @6) (@76 (@73 @239) @75))) -@811 := @564 @300 -@813 := @321 @140 @142 -@829 := (hwt : @799) -> - (hbind : @810) -> - (hF : @700) -> - (hA : @811 @813) -> - (hne : @346 @775 @351) -> @437 (fun (ro : @436) => @438 (@703 @740 @17) (@568 @613 @17)) -@830 := @798 @318 -@832 := @592 @62 @75 -@835 := @406 @832 (@414 @80) -@836 := @564 @307 -@838 := @321 @142 @12 -@853 := (hbind : @835) -> - (hF : @700) -> - (hA : @836 @838) -> - (hne : @346 @813 @351) -> @437 (fun (ro : @436) => @438 (@703 @737 @17) (@568 @607 @17)) -@856 := @830 (@795 @405 @832) -@857 := @564 @314 -@859 := @321 @12 @4 -@873 := (hF : @700) -> - (hA : @857 @859) -> - (hne : @346 @838 @351) -> @437 (fun (ro : @436) => @438 (@703 @775 @17) (@568 @650 @17)) -@876 := @856 (@795 @417 @561) -@890 := (hA : @564 @62 @323) -> - (hne : @346 @859 @351) -> @437 (fun (ro : @436) => @438 (@703 @813 @17) (@568 @300 @17)) -@891 := @876 @342 -@902 := (hne : @346 @323 @351) -> @437 (fun (ro : @436) => @438 (@703 @838 @17) (@568 @307 @17)) -@903 := @891 @364 -@909 := @438 (@703 @859 @17) (@568 @314 @17) -@911 := @437 (fun (ro : @436) => @909) -@913 := @437 (fun (__e_ro : @436) => @909) -@918 := LexLeanPreservation.Rust.RepresentableL (@59 (@58 @18 @57)) -@919 := (__e_hrep : @918) -> @913 -@920 := fun (__e_hrep : @918) => @903 -@921 := (b : @3) -> @919 -@922 := fun (b : @3) => @920 -@923 := (a : @3) -> @921 -@924 := fun (a : @3) => @922 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R32/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R32/Compose/RustStd.lex.tex deleted file mode 100644 index 3b69fc866..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R32/Compose/RustStd.lex.tex +++ /dev/null @@ -1,467 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.Compose.RustStd.root : @923 := @924 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.RustStd.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.RustStd.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.RustStd.flags -@3 := Nat -@4 := #2 -@5 := LexLeanTarget.TargetSyntax.Value.nat -@6 := @5 @4 -@7 := LexLeanTarget.TargetSyntax.Ty.nat -@8 := LexLeanTarget.TargetSyntax.Program -@9 := LexLeanPreservation.Rust.RCrate -@10 := LexLeanPreservation.Rust.Flags -@11 := LexLeanPreservation.Rust.WT -@12 := #3 -@14 := @11 @12 @4 -@15 := #1 -@16 := @14 @15 -@17 := #0 -@18 := @5 @17 -@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 -@26 := LexLeanPreservation.Rust.wt_nat @0 -@27 := @11 @0 -@34 := {c : @9} -> {A : @10} -> (n : @3) -> @27 @4 @15 @18 @7 -@35 := @26 @1 -@36 := @27 @1 -@41 := {A : @10} -> (n : @3) -> @36 @15 @18 @7 -@42 := @35 @2 -@43 := @36 @2 -@46 := (n : @3) -> @43 @18 @7 -@47 := @42 @4 -@49 := @43 @6 @7 -@50 := @5 @15 -@51 := @42 @15 -@53 := @43 @50 @7 -@54 := LexLeanTarget.TargetSyntax.Value -@55 := List.nil.{0} -@56 := List.cons.{0} -@57 := @55 @54 -@58 := @56 @54 -@59 := @58 @50 -@60 := @59 @57 -@61 := @58 @6 -@62 := @61 @60 -@64 := Prod.{0, 0} @3 -@65 := @64 @54 -@66 := 1 -@69 := Prod.mk.{0, 0} @3 @54 -@70 := @69 @66 -@71 := @70 @50 -@72 := 0 -@73 := @69 @72 -@74 := @73 @6 -@75 := @55 @65 -@76 := @56 @65 -@78 := @76 @74 @75 -@80 := @76 @71 @78 -@81 := Bool.true -@82 := LexLeanTarget.TargetSyntax.Function -@83 := LexLeanTarget.TargetSyntax.Program.functions -@84 := @83 @0 -@85 := LexLeanTarget.TargetSyntax.Ty -@86 := @55 @3 -@87 := @55 @85 -@88 := LexLeanTarget.TargetSyntax.Ty.unit -@89 := LexLeanTarget.TargetSyntax.Value.unit -@92 := LexLeanTarget.TargetSyntax.Expr.value @88 @89 -@97 := LexLeanTarget.TargetSyntax.Function.mk @86 @87 @88 @92 -@102 := List.getD.{0} @82 @84 @72 @97 -@106 := fun (__e_n : @3) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.RustStd.root @17 @72 -@107 := LexLeanPreservation.Rust.WTL -@115 := {p : @8} -> {c : @9} -> {A : @10} -> @107 @4 @15 @17 @57 @87 -@117 := LexLeanPreservation.Rust.wtl_nil @0 -@118 := @107 @0 -@124 := {c : @9} -> {A : @10} -> @118 @15 @17 @57 @87 -@125 := @117 @1 -@126 := @118 @1 -@130 := {A : @10} -> @126 @17 @57 @87 -@131 := @125 @2 -@132 := @126 @2 -@133 := @132 @57 -@134 := @133 @87 -@135 := List.{0} -@136 := @135 @54 -@137 := @135 @85 -@138 := #6 -@139 := @11 @138 -@140 := #5 -@141 := @139 @140 -@142 := #4 -@145 := @141 @142 @12 @4 -@146 := #7 -@151 := @107 @146 @138 @140 @4 @15 -@152 := #8 -@155 := @107 @152 @146 @138 -@157 := @58 @140 @12 -@158 := @155 @157 -@159 := @56 @85 -@161 := @159 @142 @4 -@171 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {v : @54} -> {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @145) -> (hs : @151) -> @158 @161 -@173 := LexLeanPreservation.Rust.wtl_cons @0 -@193 := {c : @9} -> - {A : @10} -> - {v : @54} -> - {t : @85} -> - {vs : @136} -> - {ts : @137} -> - (h : @27 @140 @142 @12 @4) -> (hs : @118 @138 @140 @4 @15) -> @118 @146 @138 @157 @161 -@194 := @173 @1 -@210 := {A : @10} -> - {v : @54} -> - {t : @85} -> - {vs : @136} -> - {ts : @137} -> (h : @36 @142 @12 @4) -> (hs : @126 @140 @4 @15) -> @126 @138 @157 @161 -@211 := @194 @2 -@213 := @43 @12 @4 -@215 := @132 @4 @15 -@223 := {v : @54} -> - {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @213) -> (hs : @215) -> @132 @157 @161 -@224 := @211 @50 -@225 := @5 @142 -@226 := @43 @225 -@227 := @226 @4 -@228 := @5 @138 -@229 := @58 @228 -@231 := @132 (@229 @12) -@237 := {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @227) -> (hs : @215) -> @231 @161 -@238 := @224 @7 -@239 := @5 @12 -@241 := @43 @239 @7 -@242 := @5 @140 -@243 := @58 @242 -@245 := @132 (@243 @12) -@246 := @159 @7 -@247 := @246 @4 -@252 := {vs : @136} -> {ts : @137} -> (h : @241) -> (hs : @215) -> @245 @247 -@253 := @238 @57 -@254 := @133 @15 -@255 := @58 @225 -@256 := @255 @57 -@261 := {ts : @137} -> (h : @49) -> (hs : @254) -> @132 @256 @247 -@262 := @253 @87 -@263 := @58 @239 -@264 := @263 @57 -@265 := @132 @264 -@266 := @246 @87 -@269 := (h : @53) -> (hs : @134) -> @265 @266 -@270 := @262 @51 -@271 := @61 @57 -@273 := @132 @271 @266 -@274 := (hs : @134) -> @273 -@275 := @270 @131 -@277 := @132 @60 @266 -@278 := @211 @6 -@280 := @43 @242 @4 -@281 := @5 @146 -@282 := @58 @281 -@290 := {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @280) -> (hs : @215) -> @132 (@282 @12) @161 -@291 := @278 @7 -@297 := {vs : @136} -> {ts : @137} -> (h : @226 @7) -> (hs : @215) -> @231 @247 -@298 := @291 @60 -@299 := @265 @15 -@300 := @243 @256 -@301 := @132 @300 -@305 := {ts : @137} -> (h : @241) -> (hs : @299) -> @301 @247 -@306 := @298 @266 -@307 := @255 @264 -@308 := @132 @307 -@309 := @246 @266 -@312 := (h : @49) -> (hs : @273) -> @308 @309 -@313 := @306 @47 -@314 := @263 @271 -@315 := @132 @314 -@317 := (hs : @277) -> @315 @309 -@318 := @313 @275 -@319 := @132 @62 -@320 := @319 @309 -@321 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.denote -@323 := @321 @4 @15 -@324 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.__fits_0 -@326 := @324 @4 @15 -@329 := Coverage.RecRoots.wellFounded @4 @15 -@330 := @64 @3 -@332 := LexLeanPreservation.encPair @3 -@335 := @332 @3 @5 @5 -@339 := @332 @330 @5 @335 @329 -@342 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.root @4 @15 -@343 := Bool -@344 := Ne.{1} -@345 := LexLeanPreservation.Obs -@346 := @344 @345 -@347 := LexLeanPreservation.Rel -@350 := @346 (@347 @15 @17) -@351 := LexLeanPreservation.Obs.stuck -@354 := (f : @343) -> (v : @54) -> @350 @351 -@356 := LexLeanPreservation.Rust.rel_ne_stuck @326 -@363 := (v : @54) -> @346 (@347 (@324 @12 @4) @17) @351 -@364 := @356 @339 -@368 := @346 (@347 @326 @339) @351 -@369 := @135 @65 -@370 := LexLeanPreservation.Rust.FunSem -@371 := #9 -@377 := (n : @3) -> @370 @371 @152 @146 @17 @138 -@378 := Eq.{1} -@379 := Option.{0} -@380 := @379 @82 -@381 := @378 @380 -@388 := LexLeanRuntime.index (@135 @82) @82 (LexLeanRuntime.instIndexableList @82) -@392 := @381 (@388 (@83 @371) @138) -@393 := Option.some.{0} -@394 := @393 @82 -@395 := @394 @140 -@396 := @392 @395 -@397 := #10 -@401 := @107 @397 @371 @152 @140 -@402 := LexLeanTarget.TargetSyntax.Function.types -@403 := @402 @138 -@404 := @401 @403 -@405 := @379 @369 -@406 := @378 @405 -@407 := LexLeanTarget.TargetSemantics.bindAll -@408 := LexLeanTarget.TargetSyntax.Function.parameters -@413 := @406 (@407 (@408 @146) @138 @75) -@414 := @393 @369 -@415 := @414 @140 -@416 := @413 @415 -@417 := @379 @343 -@418 := @378 @417 -@419 := LexLeanPreservation.Rust.fnFallible -@420 := #11 -@423 := @418 (@419 @420 @371) -@424 := @393 @343 -@425 := @424 @140 -@426 := @423 @425 -@427 := LexLeanPreservation.RunConv -@428 := #13 -@432 := @427 @428 @397 @152 @140 -@434 := @346 @138 @351 -@435 := Exists.{1} -@436 := LexLeanPreservation.Rust.ROut -@437 := @435 @436 -@438 := And -@439 := LexLeanPreservation.Rust.RealizesFn -@443 := @438 (@439 @371 @152 @17) -@444 := LexLeanPreservation.Rust.RCI -@446 := @444 #15 -@447 := LexLeanPreservation.Rust.fnIdent -@448 := @447 @428 -@455 := (hne : @434) -> @437 (fun (ro : @436) => @443 (@446 @448 @420 @17)) -@470 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {f : @3} -> - {fn : @82} -> - {args : @136} -> - {env : @369} -> - {F : @343} -> - {o : @345} -> - (hB : @377) -> - (hfn : @396) -> (hwt : @404) -> (hbind : @416) -> (hF : @426) -> (hA : @432) -> @455 -@472 := LexLeanPreservation.Rust.compose @0 -@473 := @370 @0 -@478 := (n : @3) -> @473 @152 @146 @17 @138 -@479 := @388 @84 -@482 := @381 (@479 @138) @395 -@486 := @118 @371 @152 @140 @403 -@487 := @427 @0 -@490 := @487 @397 @152 @140 -@504 := {c : @9} -> - {A : @10} -> - {f : @3} -> - {fn : @82} -> - {args : @136} -> - {env : @369} -> - {F : @343} -> - {o : @345} -> - (hB : @478) -> - (hfn : @482) -> (hwt : @486) -> (hbind : @416) -> (hF : @426) -> (hA : @490) -> @455 -@505 := @472 @1 -@506 := @473 @1 -@510 := (n : @3) -> @506 @146 @17 @138 -@513 := @126 @152 @140 @403 -@514 := @419 @1 -@517 := @418 (@514 @371) @425 -@518 := @444 @1 -@528 := (hbind : @416) -> - (hF : @517) -> (hA : @490) -> (hne : @434) -> @437 (fun (ro : @436) => @443 (@518 @448 @420 @17)) -@538 := {A : @10} -> - {f : @3} -> - {fn : @82} -> - {args : @136} -> - {env : @369} -> {F : @343} -> {o : @345} -> (hB : @510) -> (hfn : @482) -> (hwt : @513) -> @528 -@539 := @505 @2 -@541 := @506 @2 @17 -@543 := (n : @3) -> @541 @138 -@544 := @132 @140 -@545 := @544 @403 -@554 := {f : @3} -> - {fn : @82} -> - {args : @136} -> - {env : @369} -> {F : @343} -> {o : @345} -> (hB : @543) -> (hfn : @482) -> (hwt : @545) -> @528 -@555 := @539 @72 -@557 := (n : @3) -> @541 @72 -@558 := @479 @72 -@559 := @381 @558 -@560 := @559 @395 -@561 := @514 @72 -@562 := @418 @561 -@563 := @562 @425 -@564 := @487 @72 -@566 := @564 @152 @140 -@568 := @518 (@447 @72) -@576 := (hF : @563) -> (hA : @566) -> (hne : @434) -> @437 (fun (ro : @436) => @443 (@568 @420 @17)) -@585 := {fn : @82} -> - {args : @136} -> - {env : @369} -> - {F : @343} -> {o : @345} -> (hB : @557) -> (hfn : @560) -> (hwt : @545) -> (hbind : @416) -> @576 -@586 := @555 @102 -@588 := @559 (@394 @102) -@589 := @402 @102 -@590 := @544 @589 -@592 := @407 (@408 @102) -@604 := {args : @136} -> - {env : @369} -> - {F : @343} -> - {o : @345} -> - (hB : @557) -> (hfn : @588) -> (hwt : @590) -> (hbind : @406 (@592 @138 @75) @415) -> @576 -@605 := @586 @62 -@607 := @282 (@229 @57) -@609 := @132 @607 @589 -@611 := @58 (@5 @152) -@613 := @611 (@282 @57) -@617 := @406 (@592 @613 @75) @415 -@619 := @58 (@5 @397) -@621 := @58 (@5 @371) -@623 := @619 (@621 @57) -@625 := @564 @623 @140 -@627 := @58 (@5 @428) -@630 := @58 (@5 #12) -@647 := {env : @369} -> - {F : @343} -> - {o : @345} -> - (hB : @557) -> - (hfn : @588) -> - (hwt : @609) -> - (hbind : @617) -> - (hF : @563) -> - (hA : @625) -> (hne : @434) -> @437 (fun (ro : @436) => @443 (@568 (@627 (@630 @57)) @17)) -@648 := @605 @80 -@650 := @229 (@243 @57) -@652 := @132 @650 @589 -@663 := @406 (@592 @607 @75) (@414 (@76 (@70 @228) (@76 (@73 @281) @75))) -@665 := @621 (@611 @57) -@667 := @564 @665 @140 -@669 := @58 (@5 @420) -@685 := {F : @343} -> - {o : @345} -> - (hB : @557) -> - (hfn : @588) -> - (hwt : @652) -> - (hbind : @663) -> - (hF : @563) -> - (hA : @667) -> (hne : @434) -> @437 (fun (ro : @436) => @443 (@568 (@630 (@669 @57)) @17)) -@686 := @648 @81 -@687 := @301 @589 -@698 := @406 (@592 @650 @75) (@414 (@76 (@70 @242) (@76 (@73 @228) @75))) -@700 := @562 (@424 @81) -@702 := @564 @613 @140 -@703 := @439 @81 -@721 := {o : @345} -> - (hB : @557) -> - (hfn : @588) -> - (hwt : @687) -> - (hbind : @698) -> - (hF : @700) -> - (hA : @702) -> - (hne : @434) -> @437 (fun (ro : @436) => @438 (@703 @152 @17) (@568 (@669 (@619 @57)) @17)) -@722 := @686 @323 -@723 := @308 @589 -@734 := @406 (@592 @300 @75) (@414 (@76 (@70 @225) (@76 (@73 @242) @75))) -@735 := @564 @607 -@737 := @321 @146 @138 -@738 := @735 @737 -@740 := @321 @152 @146 -@759 := (hB : @557) -> - (hfn : @588) -> - (hwt : @723) -> - (hbind : @734) -> - (hF : @700) -> - (hA : @738) -> - (hne : @346 @740 @351) -> - @437 (fun (ro : @436) => @438 (@703 (@321 @397 @371) @17) (@568 @623 @17)) -@760 := @722 @106 -@761 := @315 @589 -@772 := @406 (@592 @307 @75) (@414 (@76 (@70 @239) (@76 (@73 @225) @75))) -@773 := @564 @650 -@775 := @321 @138 @140 -@794 := (hfn : @588) -> - (hwt : @761) -> - (hbind : @772) -> - (hF : @700) -> - (hA : @773 @775) -> - (hne : @346 @737 @351) -> - @437 (fun (ro : @436) => @438 (@703 (@321 @371 @152) @17) (@568 @665 @17)) -@795 := Eq.refl.{1} -@798 := @760 (@795 @380 @558) -@799 := @319 @589 -@810 := @406 (@592 @314 @75) (@414 (@76 (@70 @6) (@76 (@73 @239) @75))) -@811 := @564 @300 -@813 := @321 @140 @142 -@829 := (hwt : @799) -> - (hbind : @810) -> - (hF : @700) -> - (hA : @811 @813) -> - (hne : @346 @775 @351) -> @437 (fun (ro : @436) => @438 (@703 @740 @17) (@568 @613 @17)) -@830 := @798 @318 -@832 := @592 @62 @75 -@835 := @406 @832 (@414 @80) -@836 := @564 @307 -@838 := @321 @142 @12 -@853 := (hbind : @835) -> - (hF : @700) -> - (hA : @836 @838) -> - (hne : @346 @813 @351) -> @437 (fun (ro : @436) => @438 (@703 @737 @17) (@568 @607 @17)) -@856 := @830 (@795 @405 @832) -@857 := @564 @314 -@859 := @321 @12 @4 -@873 := (hF : @700) -> - (hA : @857 @859) -> - (hne : @346 @838 @351) -> @437 (fun (ro : @436) => @438 (@703 @775 @17) (@568 @650 @17)) -@876 := @856 (@795 @417 @561) -@890 := (hA : @564 @62 @323) -> - (hne : @346 @859 @351) -> @437 (fun (ro : @436) => @438 (@703 @813 @17) (@568 @300 @17)) -@891 := @876 @342 -@902 := (hne : @346 @323 @351) -> @437 (fun (ro : @436) => @438 (@703 @838 @17) (@568 @307 @17)) -@903 := @891 @364 -@909 := @438 (@703 @859 @17) (@568 @314 @17) -@911 := @437 (fun (ro : @436) => @909) -@913 := @437 (fun (__e_ro : @436) => @909) -@918 := LexLeanPreservation.Rust.RepresentableL (@59 (@58 @18 @57)) -@919 := (__e_hrep : @918) -> @913 -@920 := fun (__e_hrep : @918) => @903 -@921 := (b : @3) -> @919 -@922 := fun (b : @3) => @920 -@923 := (a : @3) -> @921 -@924 := fun (a : @3) => @922 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R32/RustCore.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R32/RustCore.lean deleted file mode 100644 index bc01c810f..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R32/RustCore.lean +++ /dev/null @@ -1,57 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.RustCore -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1], types := [.nat, .nat], result := (.pair .nat (.pair .nat .nat)), - body := (.build .pair (.pair .nat (.pair .nat .nat)) [(.call 1 [(.var 0), (.value .nat (.nat 0))]), (.build .pair (.pair .nat .nat) [(.call 2 [(.var 0), (.var 1)]), (.call 3 [(.var 0), (.value .nat (.nat 0)), (.var 1)])])]) }, - { parameters := [0, 1], types := [.nat, .nat], result := .nat, - body := (.cond (.prim .natLt [(.var 0), (.value .nat (.nat 2))]) (.var 1) (.call 1 [(.prim .natSub [(.var 0), (.value .nat (.nat 2))]), (.prim .natAdd [(.var 1), (.value .nat (.nat 1))])])) }, - { parameters := [0, 1], types := [.nat, .nat], result := .nat, - body := (.cond (.prim .natEq [(.var 1), (.value .nat (.nat 0))]) (.var 0) (.cond (.prim .natLt [(.var 0), (.var 1)]) (.var 0) (.call 2 [(.prim .natSub [(.var 0), (.var 1)]), (.var 1)]))) }, - { parameters := [0, 1, 2], types := [.nat, .nat, .nat], result := .nat, - body := (.cond (.prim .natLt [(.var 1), (.var 2)]) (.cond (.prim .natLe [(.var 0), (.prim .natAdd [(.var 1), (.var 1)])]) (.var 1) (.call 3 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 1))]), (.var 2)])) (.var 2)) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .core, items := [ - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.pair .nat (.pair .nat .nat))) (.mk [] (.succeed (.pair (.call (.function 1) [(.copy (.generated .binding 0)), (.lit (.nat 0))] true) (.pair (.call (.function 2) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false) (.call (.function 3) [(.copy (.generated .binding 0)), (.lit (.nat 0)), (.copy (.generated .binding 1))] true)))))), - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false) (.mk [] (.succeed (.copy (.generated .binding 1)))) (.mk [] (.call (.function 1) [(.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.lit (.nat 2)))] (.call (.runtime .natSub) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))), (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] true)))] false))))), - (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .nat (.mk [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 8)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false) (.mk [] (.copy (.generated .binding 0))) (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 1)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false) (.mk [] (.copy (.generated .binding 0))) (.mk [] (.call (.function 2) [(.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))), (.copy (.generated .binding 1))] false))))))), - (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 2)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 13)), (.move (.generated .operand 14))] false) (.mk [(.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 18)) none (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] true))))] (.cond (.call (.runtime .natLe) [(.move (.generated .operand 17)), (.move (.generated .operand 18))] false) (.mk [] (.succeed (.copy (.generated .binding 1)))) (.mk [] (.call (.function 3) [(.copy (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 20)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] true))), (.copy (.generated .binding 2))] false)))) (.mk [] (.succeed (.copy (.generated .binding 2)))))))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [], (.succeed (.pair (.call (.function 1) [(.copy (.generated .binding 0)), (.lit (.nat 0))] true) (.pair (.call (.function 2) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false) (.call (.function 3) [(.copy (.generated .binding 0)), (.lit (.nat 0)), (.copy (.generated .binding 1))] true)))), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lNil))))))⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 2)))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false) (.mk [] (.succeed (.copy (.generated .binding 1)))) (.mk [] (.call (.function 1) [(.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.lit (.nat 2)))] (.call (.runtime .natSub) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))), (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] true)))] false))), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 2)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.copy (.generated .binding 1)))) (lb := []) (tb := (.call (.function 1) [(.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.lit (.nat 2)))] (.call (.runtime .natSub) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))), (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] true)))] false)) (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl))) (Corr.callF (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.lit (.nat 2)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl)))⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 8)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false) (.mk [] (.copy (.generated .binding 0))) (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 1)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false) (.mk [] (.copy (.generated .binding 0))) (.mk [] (.call (.function 2) [(.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))), (.copy (.generated .binding 1))] false))))), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 8)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.copy (.generated .binding 0))) (lb := [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 1)))]) (tb := (.cond (.call (.runtime .natLt) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false) (.mk [] (.copy (.generated .binding 0))) (.mk [] (.call (.function 2) [(.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))), (.copy (.generated .binding 1))] false)))) (Corr.bOfE (Corr.var rfl rfl)) (Corr.cond (lc := [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 1)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.copy (.generated .binding 0))) (lb := []) (tb := (.call (.function 2) [(.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))), (.copy (.generated .binding 1))] false)) (Corr.bOfE (Corr.var rfl rfl)) (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)))))⟩⟩ - -theorem fun3 : FunOK program krate flags 3 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 2)))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 13)), (.move (.generated .operand 14))] false) (.mk [(.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 18)) none (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] true))))] (.cond (.call (.runtime .natLe) [(.move (.generated .operand 17)), (.move (.generated .operand 18))] false) (.mk [] (.succeed (.copy (.generated .binding 1)))) (.mk [] (.call (.function 3) [(.copy (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 20)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] true))), (.copy (.generated .binding 2))] false)))) (.mk [] (.succeed (.copy (.generated .binding 2))))), [(2, .nat, (some 2)), (1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 2)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 13)), (.move (.generated .operand 14))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 18)) none (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] true))))]) (ta := (.cond (.call (.runtime .natLe) [(.move (.generated .operand 17)), (.move (.generated .operand 18))] false) (.mk [] (.succeed (.copy (.generated .binding 1)))) (.mk [] (.call (.function 3) [(.copy (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 20)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] true))), (.copy (.generated .binding 2))] false)))) (lb := []) (tb := (.succeed (.copy (.generated .binding 2)))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 18)) none (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] true))))]) (ce := (.call (.runtime .natLe) [(.move (.generated .operand 17)), (.move (.generated .operand 18))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.copy (.generated .binding 1)))) (lb := []) (tb := (.call (.function 3) [(.copy (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 20)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] true))), (.copy (.generated .binding 2))] false)) (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl))) (Corr.callF (ts := [.nat, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 19)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 20)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl))) (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | 3 => exact fun3 - | _ + 4 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.RustCore diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R32/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R32/RustStd.lean deleted file mode 100644 index 4742a0cbd..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R32/RustStd.lean +++ /dev/null @@ -1,57 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1], types := [.nat, .nat], result := (.pair .nat (.pair .nat .nat)), - body := (.build .pair (.pair .nat (.pair .nat .nat)) [(.call 1 [(.var 0), (.value .nat (.nat 0))]), (.build .pair (.pair .nat .nat) [(.call 2 [(.var 0), (.var 1)]), (.call 3 [(.var 0), (.value .nat (.nat 0)), (.var 1)])])]) }, - { parameters := [0, 1], types := [.nat, .nat], result := .nat, - body := (.cond (.prim .natLt [(.var 0), (.value .nat (.nat 2))]) (.var 1) (.call 1 [(.prim .natSub [(.var 0), (.value .nat (.nat 2))]), (.prim .natAdd [(.var 1), (.value .nat (.nat 1))])])) }, - { parameters := [0, 1], types := [.nat, .nat], result := .nat, - body := (.cond (.prim .natEq [(.var 1), (.value .nat (.nat 0))]) (.var 0) (.cond (.prim .natLt [(.var 0), (.var 1)]) (.var 0) (.call 2 [(.prim .natSub [(.var 0), (.var 1)]), (.var 1)]))) }, - { parameters := [0, 1, 2], types := [.nat, .nat, .nat], result := .nat, - body := (.cond (.prim .natLt [(.var 1), (.var 2)]) (.cond (.prim .natLe [(.var 0), (.prim .natAdd [(.var 1), (.var 1)])]) (.var 1) (.call 3 [(.var 0), (.prim .natAdd [(.var 1), (.value .nat (.nat 1))]), (.var 2)])) (.var 2)) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.pair .nat (.pair .nat .nat))) (.mk [] (.succeed (.pair (.call (.function 1) [(.copy (.generated .binding 0)), (.lit (.nat 0))] true) (.pair (.call (.function 2) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false) (.call (.function 3) [(.copy (.generated .binding 0)), (.lit (.nat 0)), (.copy (.generated .binding 1))] true)))))), - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false) (.mk [] (.succeed (.copy (.generated .binding 1)))) (.mk [] (.call (.function 1) [(.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.lit (.nat 2)))] (.call (.runtime .natSub) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))), (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] true)))] false))))), - (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .nat (.mk [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 8)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false) (.mk [] (.copy (.generated .binding 0))) (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 1)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false) (.mk [] (.copy (.generated .binding 0))) (.mk [] (.call (.function 2) [(.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))), (.copy (.generated .binding 1))] false))))))), - (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 2)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 13)), (.move (.generated .operand 14))] false) (.mk [(.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 18)) none (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] true))))] (.cond (.call (.runtime .natLe) [(.move (.generated .operand 17)), (.move (.generated .operand 18))] false) (.mk [] (.succeed (.copy (.generated .binding 1)))) (.mk [] (.call (.function 3) [(.copy (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 20)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] true))), (.copy (.generated .binding 2))] false)))) (.mk [] (.succeed (.copy (.generated .binding 2)))))))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [], (.succeed (.pair (.call (.function 1) [(.copy (.generated .binding 0)), (.lit (.nat 0))] true) (.pair (.call (.function 2) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false) (.call (.function 3) [(.copy (.generated .binding 0)), (.lit (.nat 0)), (.copy (.generated .binding 1))] true)))), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lNil))))))⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 2)))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false) (.mk [] (.succeed (.copy (.generated .binding 1)))) (.mk [] (.call (.function 1) [(.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.lit (.nat 2)))] (.call (.runtime .natSub) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))), (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] true)))] false))), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 2)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.copy (.generated .binding 1)))) (lb := []) (tb := (.call (.function 1) [(.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.lit (.nat 2)))] (.call (.runtime .natSub) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))), (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] true)))] false)) (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl))) (Corr.callF (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.lit (.nat 2)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl)))⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 8)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false) (.mk [] (.copy (.generated .binding 0))) (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 1)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false) (.mk [] (.copy (.generated .binding 0))) (.mk [] (.call (.function 2) [(.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))), (.copy (.generated .binding 1))] false))))), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 8)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.copy (.generated .binding 0))) (lb := [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 1)))]) (tb := (.cond (.call (.runtime .natLt) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false) (.mk [] (.copy (.generated .binding 0))) (.mk [] (.call (.function 2) [(.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))), (.copy (.generated .binding 1))] false)))) (Corr.bOfE (Corr.var rfl rfl)) (Corr.cond (lc := [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 1)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.copy (.generated .binding 0))) (lb := []) (tb := (.call (.function 2) [(.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))), (.copy (.generated .binding 1))] false)) (Corr.bOfE (Corr.var rfl rfl)) (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)))))⟩⟩ - -theorem fun3 : FunOK program krate flags 3 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 2)))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 13)), (.move (.generated .operand 14))] false) (.mk [(.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 18)) none (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] true))))] (.cond (.call (.runtime .natLe) [(.move (.generated .operand 17)), (.move (.generated .operand 18))] false) (.mk [] (.succeed (.copy (.generated .binding 1)))) (.mk [] (.call (.function 3) [(.copy (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 20)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] true))), (.copy (.generated .binding 2))] false)))) (.mk [] (.succeed (.copy (.generated .binding 2))))), [(2, .nat, (some 2)), (1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 2)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 13)), (.move (.generated .operand 14))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 18)) none (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] true))))]) (ta := (.cond (.call (.runtime .natLe) [(.move (.generated .operand 17)), (.move (.generated .operand 18))] false) (.mk [] (.succeed (.copy (.generated .binding 1)))) (.mk [] (.call (.function 3) [(.copy (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 20)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] true))), (.copy (.generated .binding 2))] false)))) (lb := []) (tb := (.succeed (.copy (.generated .binding 2)))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 18)) none (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] true))))]) (ce := (.call (.runtime .natLe) [(.move (.generated .operand 17)), (.move (.generated .operand 18))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.copy (.generated .binding 1)))) (lb := []) (tb := (.call (.function 3) [(.copy (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 19)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 20)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] true))), (.copy (.generated .binding 2))] false)) (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl))) (Corr.callF (ts := [.nat, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 19)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 20)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 19)), (.move (.generated .operand 20))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl))) (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | 3 => exact fun3 - | _ + 4 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R33/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R33/Compose/RustStd.lex.tex deleted file mode 100644 index ec4eac7ca..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R33/Compose/RustStd.lex.tex +++ /dev/null @@ -1,573 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.Compose.RustStd.__wt_0 : @520 := @519 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.Compose.RustStd.__wt_0], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.Compose.RustStd.root : @1138 := @1139 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.RustStd.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.RustStd.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.RustStd.flags -@3 := Coverage.Syntax.Term -@4 := #0 -@5 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.__enc_0 -@6 := @5 @4 -@7 := LexLeanPreservation.Rust.WT -@8 := LexLeanTarget.TargetSyntax.Ty.adt -@9 := 0 -@10 := @8 @9 -@11 := @7 @0 -@12 := @11 @1 -@13 := @12 @2 -@15 := @13 @6 @10 -@16 := fun (__v : @3) => @15 -@17 := LexLeanTarget.TargetSyntax.Value.nat -@18 := @17 @4 -@19 := LexLeanTarget.TargetSyntax.Ty.nat -@20 := LexLeanTarget.TargetSyntax.Program -@21 := LexLeanPreservation.Rust.RCrate -@22 := LexLeanPreservation.Rust.Flags -@23 := Nat -@24 := #3 -@25 := @7 @24 -@26 := #2 -@27 := @25 @26 -@28 := #1 -@35 := {p : @20} -> {c : @21} -> {A : @22} -> (n : @23) -> @27 @28 @18 @19 -@37 := LexLeanPreservation.Rust.wt_nat @0 -@44 := {c : @21} -> {A : @22} -> (n : @23) -> @11 @26 @28 @18 @19 -@45 := @37 @1 -@50 := {A : @22} -> (n : @23) -> @12 @28 @18 @19 -@51 := @45 @2 -@53 := @13 @18 @19 -@54 := (n : @23) -> @53 -@55 := @51 @4 -@56 := LexLeanTarget.TargetSyntax.Value -@57 := LexLeanTarget.TargetSyntax.Ty -@58 := List.nil.{0} -@59 := List.cons.{0} -@60 := @58 @56 -@61 := @59 @56 -@63 := @61 @18 @60 -@64 := @58 @57 -@65 := @59 @57 -@66 := @65 @19 -@67 := @66 @64 -@68 := LexLeanPreservation.Rust.WTL -@76 := {p : @20} -> {c : @21} -> {A : @22} -> @68 @26 @28 @4 @60 @64 -@78 := LexLeanPreservation.Rust.wtl_nil @0 -@79 := @68 @0 -@85 := {c : @21} -> {A : @22} -> @79 @28 @4 @60 @64 -@86 := @78 @1 -@87 := @79 @1 -@91 := {A : @22} -> @87 @4 @60 @64 -@92 := @86 @2 -@93 := @87 @2 -@94 := @93 @60 -@95 := @94 @64 -@96 := List.{0} -@97 := @96 @56 -@98 := @96 @57 -@99 := #6 -@100 := @7 @99 -@101 := #5 -@102 := @100 @101 -@103 := #4 -@106 := @102 @103 @24 @26 -@107 := #7 -@112 := @68 @107 @99 @101 @26 @28 -@113 := #8 -@116 := @68 @113 @107 @99 -@118 := @61 @101 @24 -@119 := @116 @118 -@121 := @65 @103 @26 -@131 := {p : @20} -> - {c : @21} -> - {A : @22} -> - {v : @56} -> {t : @57} -> {vs : @97} -> {ts : @98} -> (h : @106) -> (hs : @112) -> @119 @121 -@133 := LexLeanPreservation.Rust.wtl_cons @0 -@137 := @11 @101 @103 @24 @26 -@141 := @79 @99 @101 @26 @28 -@153 := {c : @21} -> - {A : @22} -> - {v : @56} -> - {t : @57} -> {vs : @97} -> {ts : @98} -> (h : @137) -> (hs : @141) -> @79 @107 @99 @118 @121 -@154 := @133 @1 -@157 := @12 @103 @24 @26 -@160 := @87 @101 @26 @28 -@170 := {A : @22} -> - {v : @56} -> - {t : @57} -> {vs : @97} -> {ts : @98} -> (h : @157) -> (hs : @160) -> @87 @99 @118 @121 -@171 := @154 @2 -@173 := @13 @24 @26 -@175 := @93 @26 @28 -@183 := {v : @56} -> - {t : @57} -> {vs : @97} -> {ts : @98} -> (h : @173) -> (hs : @175) -> @93 @118 @121 -@184 := @171 @18 -@185 := @17 @24 -@197 := {t : @57} -> - {vs : @97} -> {ts : @98} -> (h : @13 @185 @26) -> (hs : @175) -> @93 (@61 (@17 @101) @24) @121 -@198 := @184 @19 -@199 := @17 @26 -@201 := @13 @199 @19 -@205 := @93 (@61 (@17 @103) @24) -@206 := @66 @26 -@211 := {vs : @97} -> {ts : @98} -> (h : @201) -> (hs : @175) -> @205 @206 -@212 := @198 @60 -@213 := @17 @28 -@215 := @13 @213 @19 -@216 := @94 @28 -@218 := @61 @185 @60 -@223 := {ts : @98} -> (h : @215) -> (hs : @216) -> @93 @218 @206 -@224 := @212 @64 -@226 := @61 @199 @60 -@227 := @93 @226 -@230 := (h : @53) -> (hs : @95) -> @227 @67 -@231 := @224 @55 -@233 := @61 @213 @60 -@235 := @93 @233 @67 -@236 := (hs : @95) -> @235 -@237 := @231 @92 -@239 := @93 @63 @67 -@240 := Eq.{1} -@241 := Option.{0} -@242 := @241 @98 -@243 := @240 @242 -@244 := LexLeanPreservation.Rust.adtFields -@248 := @243 (@244 @99 @24 @26) -@249 := Option.some.{0} -@250 := @249 @98 -@251 := @250 @4 -@252 := @248 @251 -@255 := @7 @113 @107 @99 -@256 := LexLeanTarget.TargetSyntax.Value.adt -@258 := @256 @103 @24 -@259 := @255 @258 -@260 := @8 @101 -@270 := {p : @20} -> - {c : @21} -> - {A : @22} -> - {i : @23} -> {k : @23} -> {fs : @97} -> {tys : @98} -> (h : @252) -> (hf : @112) -> @259 @260 -@272 := LexLeanPreservation.Rust.wt_adt @0 -@273 := @244 @0 -@277 := @243 (@273 @24 @26) @251 -@289 := {c : @21} -> - {A : @22} -> - {i : @23} -> - {k : @23} -> {fs : @97} -> {tys : @98} -> (h : @277) -> (hf : @141) -> @11 @107 @99 @258 @260 -@290 := @272 @1 -@300 := {A : @22} -> - {i : @23} -> - {k : @23} -> {fs : @97} -> {tys : @98} -> (h : @277) -> (hf : @160) -> @12 @99 @258 @260 -@301 := @290 @2 -@302 := @13 @258 -@309 := {i : @23} -> - {k : @23} -> {fs : @97} -> {tys : @98} -> (h : @277) -> (hf : @175) -> @302 @260 -@310 := @301 @9 -@311 := @273 @9 -@320 := {k : @23} -> - {fs : @97} -> {tys : @98} -> (h : @243 (@311 @26) @251) -> (hf : @175) -> @302 @10 -@321 := @310 @9 -@322 := @311 @9 -@323 := @243 @322 -@324 := @323 @251 -@325 := @256 @9 -@332 := {fs : @97} -> {tys : @98} -> (h : @324) -> (hf : @175) -> @13 (@325 @24) @10 -@333 := @321 @63 -@340 := {tys : @98} -> (h : @324) -> (hf : @227 @28) -> @13 (@325 @218) @10 -@341 := @333 @67 -@348 := (h : @323 (@250 @67)) -> (hf : @235) -> @13 (@325 @226) @10 -@349 := Eq.refl.{1} -@350 := @349 @242 -@352 := @341 (@350 @322) -@356 := (hf : @239) -> @13 (@325 @233) @10 -@357 := @352 @237 -@360 := @13 (@325 @63) @10 -@361 := fun (__x0 : @23) => @357 -@362 := @5 @24 -@363 := @5 @26 -@365 := @61 @363 @60 -@366 := @61 @362 -@367 := @366 @365 -@368 := @65 @10 -@369 := @368 @64 -@370 := @368 @369 -@371 := @171 @363 -@372 := @5 @101 -@373 := @13 @372 -@374 := @373 @26 -@376 := @61 (@5 @107) -@378 := @93 (@376 @24) -@384 := {t : @57} -> {vs : @97} -> {ts : @98} -> (h : @374) -> (hs : @175) -> @378 @121 -@385 := @371 @10 -@386 := @5 @103 -@387 := @13 @386 -@388 := @387 @10 -@389 := @5 @99 -@390 := @61 @389 -@392 := @93 (@390 @24) -@393 := @368 @26 -@398 := {vs : @97} -> {ts : @98} -> (h : @388) -> (hs : @175) -> @392 @393 -@399 := @385 @60 -@401 := @13 @362 @10 -@402 := @61 @372 -@403 := @402 @60 -@404 := @93 @403 -@408 := {ts : @98} -> (h : @401) -> (hs : @216) -> @404 @393 -@409 := @399 @64 -@411 := @13 @363 @10 -@412 := @61 @386 -@413 := @412 @60 -@414 := @93 @413 -@417 := (h : @411) -> (hs : @95) -> @414 @369 -@418 := @409 @4 -@419 := @366 @60 -@420 := @93 @419 -@421 := @420 @369 -@422 := (hs : @95) -> @421 -@423 := @418 @92 -@424 := @93 @365 -@425 := @424 @369 -@426 := @171 @362 -@428 := @13 @389 @26 -@430 := @61 (@5 @113) -@438 := {t : @57} -> {vs : @97} -> {ts : @98} -> (h : @428) -> (hs : @175) -> @93 (@430 @24) @121 -@439 := @426 @10 -@445 := {vs : @97} -> {ts : @98} -> (h : @373 @10) -> (hs : @175) -> @378 @393 -@446 := @439 @365 -@447 := @414 @28 -@448 := @390 @403 -@453 := {ts : @98} -> (h : @388) -> (hs : @447) -> @93 @448 @393 -@454 := @446 @369 -@455 := @402 @413 -@456 := @93 @455 -@459 := (h : @401) -> (hs : @421) -> @456 @370 -@460 := @454 @28 -@461 := @412 @419 -@463 := @93 @461 @370 -@464 := (hs : @425) -> @463 -@465 := @460 @423 -@467 := @93 @367 @370 -@468 := 1 -@469 := @310 @468 -@470 := @311 @468 -@471 := @243 @470 -@472 := @471 @251 -@473 := @256 @468 -@480 := {fs : @97} -> {tys : @98} -> (h : @472) -> (hf : @175) -> @13 (@473 @24) @10 -@481 := @469 @367 -@488 := {tys : @98} -> (h : @472) -> (hf : @456 @28) -> @13 (@473 @448) @10 -@489 := @481 @370 -@496 := (h : @471 (@250 @370)) -> (hf : @463) -> @13 (@473 @455) @10 -@498 := @489 (@350 @470) -@502 := (hf : @467) -> @13 (@473 @461) @10 -@503 := @498 @465 -@506 := @13 (@473 @367) @10 -@507 := @5 @28 -@509 := @13 @507 @10 -@513 := fun (__x0 : @3) => fun (__x1 : @3) => fun (__ih0 : @509) => fun (__ih1 : @509) => @503 -@519 := fun (__v : @3) => Coverage.Syntax.Term.rec.{0} @16 @361 @513 @4 -@520 := (__v : @3) -> @15 -@522 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.Compose.RustStd.__wt_0 @28 -@524 := @61 @507 @60 -@527 := Prod.{0, 0} @23 @56 -@531 := Prod.mk.{0, 0} @23 @56 @9 -@532 := @531 @507 -@533 := @58 @527 -@534 := @59 @527 -@536 := @534 @532 @533 -@537 := Bool.false -@538 := LexLeanTarget.TargetSyntax.Function -@539 := LexLeanTarget.TargetSyntax.Program.functions -@540 := @539 @0 -@541 := @58 @23 -@542 := LexLeanTarget.TargetSyntax.Ty.unit -@543 := LexLeanTarget.TargetSyntax.Value.unit -@546 := LexLeanTarget.TargetSyntax.Expr.value @542 @543 -@551 := LexLeanTarget.TargetSyntax.Function.mk @541 @64 @542 @546 -@556 := List.getD.{0} @538 @540 @9 @551 -@560 := fun (__e_n : @23) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.RustStd.root @4 @9 -@561 := @171 @507 -@568 := {t : @57} -> {vs : @97} -> {ts : @98} -> (h : @387 @26) -> (hs : @175) -> @392 @121 -@569 := @561 @10 -@576 := {vs : @97} -> {ts : @98} -> (h : @401) -> (hs : @175) -> @93 (@402 @24) @393 -@577 := @569 @60 -@581 := {ts : @98} -> (h : @411) -> (hs : @216) -> @414 @393 -@582 := @577 @64 -@583 := (h : @509) -> @422 -@584 := @582 @522 -@585 := (hs : @95) -> @425 -@586 := @584 @92 -@587 := @93 @524 -@588 := @587 @369 -@589 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.denote -@590 := @589 @28 -@591 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.__fits_0 -@592 := @591 @28 -@594 := Coverage.RecRoots.rewrite @28 -@600 := LexLeanPreservation.encPair @3 @3 @5 @5 @594 -@602 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.root @28 -@603 := Bool -@604 := Ne.{1} -@605 := LexLeanPreservation.Obs -@606 := @604 @605 -@607 := LexLeanPreservation.Rel -@610 := @606 (@607 @28 @4) -@611 := LexLeanPreservation.Obs.stuck -@614 := (f : @603) -> (v : @56) -> @610 @611 -@616 := LexLeanPreservation.Rust.rel_ne_stuck @592 -@622 := (v : @56) -> @606 (@607 (@591 @26) @4) @611 -@623 := @616 @600 -@627 := @606 (@607 @592 @600) @611 -@628 := @96 @527 -@629 := LexLeanPreservation.Rust.FunSem -@630 := #9 -@636 := (n : @23) -> @629 @630 @113 @107 @4 @99 -@637 := @241 @538 -@638 := @240 @637 -@645 := LexLeanRuntime.index (@96 @538) @538 (LexLeanRuntime.instIndexableList @538) -@649 := @638 (@645 (@539 @630) @99) -@650 := @249 @538 -@651 := @650 @101 -@652 := @649 @651 -@653 := #10 -@657 := @68 @653 @630 @113 @101 -@658 := LexLeanTarget.TargetSyntax.Function.types -@659 := @658 @99 -@660 := @657 @659 -@661 := @241 @628 -@662 := @240 @661 -@663 := LexLeanTarget.TargetSemantics.bindAll -@664 := LexLeanTarget.TargetSyntax.Function.parameters -@669 := @662 (@663 (@664 @107) @99 @533) -@670 := @249 @628 -@671 := @670 @101 -@672 := @669 @671 -@673 := @241 @603 -@674 := @240 @673 -@675 := LexLeanPreservation.Rust.fnFallible -@676 := #11 -@679 := @674 (@675 @676 @630) -@680 := @249 @603 -@681 := @680 @101 -@682 := @679 @681 -@683 := LexLeanPreservation.RunConv -@684 := #13 -@688 := @683 @684 @653 @113 @101 -@690 := @606 @99 @611 -@691 := Exists.{1} -@692 := LexLeanPreservation.Rust.ROut -@693 := @691 @692 -@694 := And -@695 := LexLeanPreservation.Rust.RealizesFn -@699 := @694 (@695 @630 @113 @4) -@700 := LexLeanPreservation.Rust.RCI -@702 := @700 #15 -@703 := LexLeanPreservation.Rust.fnIdent -@704 := @703 @684 -@711 := (hne : @690) -> @693 (fun (ro : @692) => @699 (@702 @704 @676 @4)) -@726 := {p : @20} -> - {c : @21} -> - {A : @22} -> - {f : @23} -> - {fn : @538} -> - {args : @97} -> - {env : @628} -> - {F : @603} -> - {o : @605} -> - (hB : @636) -> - (hfn : @652) -> (hwt : @660) -> (hbind : @672) -> (hF : @682) -> (hA : @688) -> @711 -@728 := LexLeanPreservation.Rust.compose @0 -@729 := @629 @0 -@734 := (n : @23) -> @729 @113 @107 @4 @99 -@735 := @645 @540 -@738 := @638 (@735 @99) @651 -@742 := @79 @630 @113 @101 @659 -@743 := @683 @0 -@746 := @743 @653 @113 @101 -@760 := {c : @21} -> - {A : @22} -> - {f : @23} -> - {fn : @538} -> - {args : @97} -> - {env : @628} -> - {F : @603} -> - {o : @605} -> - (hB : @734) -> - (hfn : @738) -> (hwt : @742) -> (hbind : @672) -> (hF : @682) -> (hA : @746) -> @711 -@761 := @728 @1 -@762 := @729 @1 -@766 := (n : @23) -> @762 @107 @4 @99 -@769 := @87 @113 @101 @659 -@770 := @675 @1 -@773 := @674 (@770 @630) @681 -@774 := @700 @1 -@784 := (hbind : @672) -> - (hF : @773) -> (hA : @746) -> (hne : @690) -> @693 (fun (ro : @692) => @699 (@774 @704 @676 @4)) -@794 := {A : @22} -> - {f : @23} -> - {fn : @538} -> - {args : @97} -> - {env : @628} -> {F : @603} -> {o : @605} -> (hB : @766) -> (hfn : @738) -> (hwt : @769) -> @784 -@795 := @761 @2 -@797 := @762 @2 @4 -@799 := (n : @23) -> @797 @99 -@800 := @93 @101 -@801 := @800 @659 -@810 := {f : @23} -> - {fn : @538} -> - {args : @97} -> - {env : @628} -> {F : @603} -> {o : @605} -> (hB : @799) -> (hfn : @738) -> (hwt : @801) -> @784 -@811 := @795 @9 -@813 := (n : @23) -> @797 @9 -@814 := @735 @9 -@815 := @638 @814 -@816 := @815 @651 -@817 := @770 @9 -@818 := @674 @817 -@819 := @818 @681 -@820 := @743 @9 -@822 := @820 @113 @101 -@824 := @774 (@703 @9) -@832 := (hF : @819) -> (hA : @822) -> (hne : @690) -> @693 (fun (ro : @692) => @699 (@824 @676 @4)) -@841 := {fn : @538} -> - {args : @97} -> - {env : @628} -> - {F : @603} -> {o : @605} -> (hB : @813) -> (hfn : @816) -> (hwt : @801) -> (hbind : @672) -> @832 -@842 := @811 @556 -@844 := @815 (@650 @556) -@845 := @658 @556 -@846 := @800 @845 -@848 := @663 (@664 @556) -@860 := {args : @97} -> - {env : @628} -> - {F : @603} -> - {o : @605} -> - (hB : @813) -> (hfn : @844) -> (hwt : @846) -> (hbind : @662 (@848 @99 @533) @671) -> @832 -@861 := @842 @524 -@862 := @390 @60 -@864 := @93 @862 @845 -@865 := @376 @60 -@869 := @662 (@848 @865 @533) @671 -@872 := @61 (@5 @630) @60 -@893 := {env : @628} -> - {F : @603} -> - {o : @605} -> - (hB : @813) -> - (hfn : @844) -> - (hwt : @864) -> - (hbind : @869) -> - (hF : @819) -> - (hA : @820 @872 @101) -> - (hne : @690) -> @693 (fun (ro : @692) => @699 (@824 (@61 (@5 #12) @60) @4)) -@894 := @861 @536 -@895 := @404 @845 -@903 := @662 (@848 @862 @533) (@670 (@534 (@531 @389) @533)) -@904 := @430 @60 -@923 := {F : @603} -> - {o : @605} -> - (hB : @813) -> - (hfn : @844) -> - (hwt : @895) -> - (hbind : @903) -> - (hF : @819) -> - (hA : @820 @904 @101) -> - (hne : @690) -> @693 (fun (ro : @692) => @699 (@824 (@61 (@5 @676) @60) @4)) -@924 := @894 @537 -@925 := @414 @845 -@933 := @662 (@848 @403 @533) (@670 (@534 (@531 @372) @533)) -@935 := @818 (@680 @537) -@937 := @820 @865 @101 -@938 := @695 @537 -@957 := {o : @605} -> - (hB : @813) -> - (hfn : @844) -> - (hwt : @925) -> - (hbind : @933) -> - (hF : @935) -> - (hA : @937) -> - (hne : @690) -> @693 (fun (ro : @692) => @694 (@938 @113 @4) (@824 (@61 (@5 @653) @60) @4)) -@958 := @924 @590 -@959 := @420 @845 -@967 := @662 (@848 @413 @533) (@670 (@534 (@531 @386) @533)) -@968 := @820 @862 -@969 := @589 @99 -@970 := @968 @969 -@971 := @589 @107 -@989 := (hB : @813) -> - (hfn : @844) -> - (hwt : @959) -> - (hbind : @967) -> - (hF : @935) -> - (hA : @970) -> - (hne : @606 @971 @611) -> @693 (fun (ro : @692) => @694 (@938 (@589 @630) @4) (@824 @872 @4)) -@990 := @958 @560 -@991 := @424 @845 -@999 := @662 (@848 @419 @533) (@670 (@534 (@531 @362) @533)) -@1000 := @820 @403 -@1001 := @589 @101 -@1019 := (hfn : @844) -> - (hwt : @991) -> - (hbind : @999) -> - (hF : @935) -> - (hA : @1000 @1001) -> - (hne : @606 @969 @611) -> @693 (fun (ro : @692) => @694 (@938 (@589 @113) @4) (@824 @904 @4)) -@1022 := @990 (@349 @637 @814) -@1023 := @587 @845 -@1031 := @662 (@848 @365 @533) (@670 (@534 (@531 @363) @533)) -@1032 := @820 @413 -@1033 := @589 @103 -@1049 := (hwt : @1023) -> - (hbind : @1031) -> - (hF : @935) -> - (hA : @1032 @1033) -> - (hne : @606 @1001 @611) -> @693 (fun (ro : @692) => @694 (@938 @971 @4) (@824 @865 @4)) -@1050 := @1022 @586 -@1052 := @848 @524 @533 -@1055 := @662 @1052 (@670 @536) -@1056 := @820 @419 -@1057 := @589 @24 -@1072 := (hbind : @1055) -> - (hF : @935) -> - (hA : @1056 @1057) -> - (hne : @606 @1033 @611) -> @693 (fun (ro : @692) => @694 (@938 @969 @4) (@824 @862 @4)) -@1075 := @1050 (@349 @661 @1052) -@1076 := @820 @365 -@1077 := @589 @26 -@1091 := (hF : @935) -> - (hA : @1076 @1077) -> - (hne : @606 @1057 @611) -> @693 (fun (ro : @692) => @694 (@938 @1001 @4) (@824 @403 @4)) -@1094 := @1075 (@349 @673 @817) -@1108 := (hA : @820 @524 @590) -> - (hne : @606 @1077 @611) -> @693 (fun (ro : @692) => @694 (@938 @1033 @4) (@824 @413 @4)) -@1109 := @1094 @602 -@1120 := (hne : @606 @590 @611) -> @693 (fun (ro : @692) => @694 (@938 @1057 @4) (@824 @419 @4)) -@1121 := @1109 @623 -@1127 := @694 (@938 @1077 @4) (@824 @365 @4) -@1129 := @693 (fun (ro : @692) => @1127) -@1131 := @693 (fun (__e_ro : @692) => @1127) -@1135 := LexLeanPreservation.Rust.RepresentableL (@61 @6 @60) -@1136 := (__e_hrep : @1135) -> @1131 -@1137 := fun (__e_hrep : @1135) => @1121 -@1138 := (t : @3) -> @1136 -@1139 := fun (t : @3) => @1137 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R33/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R33/RustStd.lean deleted file mode 100644 index 75df474e9..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R33/RustStd.lean +++ /dev/null @@ -1,50 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [{ constructors := [[.nat], [(.adt 0), (.adt 0)]] }], functions := [ - { parameters := [0], types := [(.adt 0)], result := (.pair (.adt 0) (.adt 0)), - body := (.build .pair (.pair (.adt 0) (.adt 0)) [(.call 1 [(.var 0)]), (.call 2 [(.var 0)])]) }, - { parameters := [0], types := [(.adt 0)], result := (.adt 0), - body := (.«match» (.adt 0) (.var 0) [(.arm (.adt 0) [1] (.build (.adt 0) (.adt 0) [(.var 1)])), (.arm (.adt 1) [2, 3] (.«match» (.adt 0) (.var 2) [(.arm (.adt 0) [4] (.build (.adt 1) (.adt 0) [(.build (.adt 0) (.adt 0) [(.var 4)]), (.call 1 [(.var 3)])])), (.arm (.adt 1) [5, 6] (.call 1 [(.build (.adt 1) (.adt 0) [(.var 5), (.build (.adt 1) (.adt 0) [(.var 6), (.var 3)])])]))]))]) }, - { parameters := [0], types := [(.adt 0)], result := (.adt 0), - body := (.«match» (.adt 0) (.var 0) [(.arm (.adt 0) [1] (.build (.adt 0) (.adt 0) [(.var 1)])), (.arm (.adt 1) [2, 3] (.«match» (.adt 0) (.var 2) [(.arm (.adt 0) [4] (.call 2 [(.var 3)])), (.arm (.adt 1) [5, 6] (.call 2 [(.build (.adt 1) (.adt 0) [(.var 5), (.var 3)])]))]))]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.enum (.adt 0) [{ number := 0, fields := [.nat] }, { number := 1, fields := [(.rc (.adt 0)), (.rc (.adt 0))] }]), - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.pair (.adt 0) (.adt 0)) (.mk [] (.pair (.call (.function 1) [(.clone (.generated .binding 0))] false) (.call (.function 2) [(.move (.generated .binding 0))] false)))), - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.adt 0) (.mk [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 1)) [(.mk (.adt 0 0 [(.bind (.generated .binding 1))]) (.mk [] (.construct (.adt 0 0) [(.copy (.generated .binding 1))]))), (.mk (.adt 0 1 [(.bind (.generated .boxed 5)), (.bind (.generated .boxed 6))]) (.mk [(.mk (.bind (.generated .binding 2)) none (.unbox (.generated .boxed 5))), (.mk (.bind (.generated .binding 3)) none (.unbox (.generated .boxed 6))), (.mk (.bind (.generated .holder 2)) none (.move (.generated .binding 2)))] (.matchOn (.move (.generated .holder 2)) [(.mk (.adt 0 0 [(.bind (.generated .binding 4))]) (.mk [] (.construct (.adt 0 1) [(.box (.construct (.adt 0 0) [(.copy (.generated .binding 4))])), (.box (.call (.function 1) [(.move (.generated .binding 3))] false))]))), (.mk (.adt 0 1 [(.bind (.generated .boxed 3)), (.bind (.generated .boxed 4))]) (.mk [(.mk (.bind (.generated .binding 5)) none (.unbox (.generated .boxed 3))), (.mk (.bind (.generated .binding 6)) none (.unbox (.generated .boxed 4)))] (.call (.function 1) [(.construct (.adt 0 1) [(.box (.move (.generated .binding 5))), (.box (.construct (.adt 0 1) [(.box (.move (.generated .binding 6))), (.box (.move (.generated .binding 3)))]))])] false)))])))]))), - (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.adt 0) (.mk [(.mk (.bind (.generated .holder 7)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 7)) [(.mk (.adt 0 0 [(.bind (.generated .binding 1))]) (.mk [] (.construct (.adt 0 0) [(.copy (.generated .binding 1))]))), (.mk (.adt 0 1 [(.bind (.generated .boxed 10)), (.bind (.generated .boxed 11))]) (.mk [(.mk (.bind (.generated .binding 2)) none (.unbox (.generated .boxed 10))), (.mk (.bind (.generated .binding 3)) none (.unbox (.generated .boxed 11))), (.mk (.bind (.generated .holder 8)) none (.move (.generated .binding 2)))] (.matchOn (.move (.generated .holder 8)) [(.mk (.adt 0 0 [.wild]) (.mk [] (.call (.function 2) [(.move (.generated .binding 3))] false))), (.mk (.adt 0 1 [(.bind (.generated .boxed 9)), .wild]) (.mk [(.mk (.bind (.generated .binding 5)) none (.unbox (.generated .boxed 9)))] (.call (.function 2) [(.construct (.adt 0 1) [(.box (.move (.generated .binding 5))), (.box (.move (.generated .binding 3)))])] false)))])))])))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [], (.pair (.call (.function 1) [(.clone (.generated .binding 0))] false) (.call (.function 2) [(.move (.generated .binding 0))] false)), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))))⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 1)) [(.mk (.adt 0 0 [(.bind (.generated .binding 1))]) (.mk [] (.construct (.adt 0 0) [(.copy (.generated .binding 1))]))), (.mk (.adt 0 1 [(.bind (.generated .boxed 5)), (.bind (.generated .boxed 6))]) (.mk [(.mk (.bind (.generated .binding 2)) none (.unbox (.generated .boxed 5))), (.mk (.bind (.generated .binding 3)) none (.unbox (.generated .boxed 6))), (.mk (.bind (.generated .holder 2)) none (.move (.generated .binding 2)))] (.matchOn (.move (.generated .holder 2)) [(.mk (.adt 0 0 [(.bind (.generated .binding 4))]) (.mk [] (.construct (.adt 0 1) [(.box (.construct (.adt 0 0) [(.copy (.generated .binding 4))])), (.box (.call (.function 1) [(.move (.generated .binding 3))] false))]))), (.mk (.adt 0 1 [(.bind (.generated .boxed 3)), (.bind (.generated .boxed 4))]) (.mk [(.mk (.bind (.generated .binding 5)) none (.unbox (.generated .boxed 3))), (.mk (.bind (.generated .binding 6)) none (.unbox (.generated .boxed 4)))] (.call (.function 1) [(.construct (.adt 0 1) [(.box (.move (.generated .binding 5))), (.box (.construct (.adt 0 1) [(.box (.move (.generated .binding 6))), (.box (.move (.generated .binding 3)))]))])] false)))])))]), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.adt 0)) (U := []) (view := false) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.adt 0 0) [(.copy (.generated .binding 1))])) (Corr.mCons (Γ' := [(3, (.adt 0), (some 3)), (2, (.adt 0), (some 2)), (0, (.adt 0), (some 0))]) (j := 1) (loads := [(.mk (.bind (.generated .binding 2)) none (.unbox (.generated .boxed 5))), (.mk (.bind (.generated .binding 3)) none (.unbox (.generated .boxed 6)))]) (lets := [(.mk (.bind (.generated .holder 2)) none (.move (.generated .binding 2)))]) (tail := (.matchOn (.move (.generated .holder 2)) [(.mk (.adt 0 0 [(.bind (.generated .binding 4))]) (.mk [] (.construct (.adt 0 1) [(.box (.construct (.adt 0 0) [(.copy (.generated .binding 4))])), (.box (.call (.function 1) [(.move (.generated .binding 3))] false))]))), (.mk (.adt 0 1 [(.bind (.generated .boxed 3)), (.bind (.generated .boxed 4))]) (.mk [(.mk (.bind (.generated .binding 5)) none (.unbox (.generated .boxed 3))), (.mk (.bind (.generated .binding 6)) none (.unbox (.generated .boxed 4)))] (.call (.function 1) [(.construct (.adt 0 1) [(.box (.move (.generated .binding 5))), (.box (.construct (.adt 0 1) [(.box (.move (.generated .binding 6))), (.box (.move (.generated .binding 3)))]))])] false)))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := (.adt 0)) (U := []) (view := false) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(4, .nat, (some 4)), (3, (.adt 0), (some 3)), (2, (.adt 0), (some 2)), (0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.adt 0 1) [(.box (.construct (.adt 0 0) [(.copy (.generated .binding 4))])), (.box (.call (.function 1) [(.move (.generated .binding 3))] false))])) (Corr.mCons (Γ' := [(6, (.adt 0), (some 6)), (5, (.adt 0), (some 5)), (3, (.adt 0), (some 3)), (2, (.adt 0), (some 2)), (0, (.adt 0), (some 0))]) (j := 1) (loads := [(.mk (.bind (.generated .binding 5)) none (.unbox (.generated .boxed 3))), (.mk (.bind (.generated .binding 6)) none (.unbox (.generated .boxed 4)))]) (lets := []) (tail := (.call (.function 1) [(.construct (.adt 0 1) [(.box (.move (.generated .binding 5))), (.box (.construct (.adt 0 1) [(.box (.move (.generated .binding 6))), (.box (.move (.generated .binding 3)))]))])] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.adt 0), (.adt 0)]) (mask := [true, true]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.adt 0), (.adt 0)]) (mask := [true, true]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := [(.adt 0), (.adt 0)]) (mask := [true, true]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 7)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 7)) [(.mk (.adt 0 0 [(.bind (.generated .binding 1))]) (.mk [] (.construct (.adt 0 0) [(.copy (.generated .binding 1))]))), (.mk (.adt 0 1 [(.bind (.generated .boxed 10)), (.bind (.generated .boxed 11))]) (.mk [(.mk (.bind (.generated .binding 2)) none (.unbox (.generated .boxed 10))), (.mk (.bind (.generated .binding 3)) none (.unbox (.generated .boxed 11))), (.mk (.bind (.generated .holder 8)) none (.move (.generated .binding 2)))] (.matchOn (.move (.generated .holder 8)) [(.mk (.adt 0 0 [.wild]) (.mk [] (.call (.function 2) [(.move (.generated .binding 3))] false))), (.mk (.adt 0 1 [(.bind (.generated .boxed 9)), .wild]) (.mk [(.mk (.bind (.generated .binding 5)) none (.unbox (.generated .boxed 9)))] (.call (.function 2) [(.construct (.adt 0 1) [(.box (.move (.generated .binding 5))), (.box (.move (.generated .binding 3)))])] false)))])))]), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.adt 0)) (U := []) (view := false) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.adt 0 0) [(.copy (.generated .binding 1))])) (Corr.mCons (Γ' := [(3, (.adt 0), (some 3)), (2, (.adt 0), (some 2)), (0, (.adt 0), (some 0))]) (j := 1) (loads := [(.mk (.bind (.generated .binding 2)) none (.unbox (.generated .boxed 10))), (.mk (.bind (.generated .binding 3)) none (.unbox (.generated .boxed 11)))]) (lets := [(.mk (.bind (.generated .holder 8)) none (.move (.generated .binding 2)))]) (tail := (.matchOn (.move (.generated .holder 8)) [(.mk (.adt 0 0 [.wild]) (.mk [] (.call (.function 2) [(.move (.generated .binding 3))] false))), (.mk (.adt 0 1 [(.bind (.generated .boxed 9)), .wild]) (.mk [(.mk (.bind (.generated .binding 5)) none (.unbox (.generated .boxed 9)))] (.call (.function 2) [(.construct (.adt 0 1) [(.box (.move (.generated .binding 5))), (.box (.move (.generated .binding 3)))])] false)))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := (.adt 0)) (U := []) (view := false) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(4, .nat, none), (3, (.adt 0), (some 3)), (2, (.adt 0), (some 2)), (0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.call (.function 2) [(.move (.generated .binding 3))] false)) (Corr.mCons (Γ' := [(6, (.adt 0), none), (5, (.adt 0), (some 5)), (3, (.adt 0), (some 3)), (2, (.adt 0), (some 2)), (0, (.adt 0), (some 0))]) (j := 1) (loads := [(.mk (.bind (.generated .binding 5)) none (.unbox (.generated .boxed 9)))]) (lets := []) (tail := (.call (.function 2) [(.construct (.adt 0 1) [(.box (.move (.generated .binding 5))), (.box (.move (.generated .binding 3)))])] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.adt 0), (.adt 0)]) (mask := [true, true]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl)⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | _ + 3 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R4.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R4.lean deleted file mode 100644 index 9e05957f0..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R4.lean +++ /dev/null @@ -1,106 +0,0 @@ -import LexLeanPreservation.Core -import LexLeanPreservation.Values -import LexLeanPreservation.Primitives -import LexLeanPreservation.Fixed -import LexLeanPreservation.Keys -import LexLeanPreservation.Templates -import LexLeanPreservation.Validate -import Coverage.Boundary -import Coverage.Colls -import Coverage.Main -import Coverage.Prims -import Coverage.RecRoots -import Coverage.Recur -import Coverage.Syntax -import Coverage.Types -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -set_option linter.unusedVariables false -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4 - -def __prog : _root_.LexLeanTarget.TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1], types := [(.list .nat), (.list .int)], result := (.pair .nat .int), - body := (.build .pair (.pair .nat .int) [(.call 1 [(.closure 2 []), (.value .nat (.nat 0)), (.var 0)]), (.call 3 [(.closure 4 []), (.value .int (.int 5)), (.var 1)])]) }, - { parameters := [0, 1, 2], types := [(.fn [.nat, .nat] .nat), .nat, (.list .nat)], result := .nat, - body := (.«match» .nat (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 1 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, - { parameters := [0, 1], types := [.nat, .nat], result := .nat, - body := (.prim .natAdd [(.var 0), (.var 1)]) }, - { parameters := [0, 1, 2], types := [(.fn [.int, .int] .int), .int, (.list .int)], result := .int, - body := (.«match» .int (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 3 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, - { parameters := [0, 1], types := [.int, .int], result := .int, - body := (.prim .intSub [(.var 0), (.var 1)]) }, - { parameters := [0], types := [(.list .int)], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.var 1), (.var 3)]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 5 [(.var 2)]) (.build .false .bool [])))]))]) }, - { parameters := [0, 1], types := [(.list .nat), (.list .int)], result := (.option (.pair .nat .int)), - body := (.cond (.call 5 [(.var 1)]) (.build .some (.option (.pair .nat .int)) [(.call 0 [(.var 0), (.var 1)])]) (.build .none (.option (.pair .nat .int)) [])) }] } - -def __fits_2 (a : Nat) (x : Nat) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (a + x) 18446744073709551616)) - -theorem __rel_2 (a : Nat) (x : Nat) : _root_.LexLeanPreservation.FunRel __prog 2 [(_root_.LexLeanTarget.TargetSyntax.Value.nat a), (_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_2 a x) (_root_.LexLeanTarget.TargetSyntax.Value.nat ((a + x)))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd a x)) - -def __fits_4 (a : Int) (x : Int) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && (_root_.LexLeanPreservation.intFits (_root_.LexLeanRuntime.subtract (a) (x) : Int))) - -theorem __rel_4 (a : Int) (x : Int) : _root_.LexLeanPreservation.FunRel __prog 4 [(_root_.LexLeanTarget.TargetSyntax.Value.int a), (_root_.LexLeanTarget.TargetSyntax.Value.int x)] (_root_.LexLeanPreservation.Rel (__fits_4 a x) (_root_.LexLeanTarget.TargetSyntax.Value.int ((_root_.LexLeanRuntime.subtract (a) (x) : Int)))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_intSub a x)) - -def __fits_0 (xs : (List Nat)) (s : (List Int)) : Bool := - ((((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : Nat) (__p1 : Nat) => __fits_2 __p0 __p1) ((fun (a : Nat) (x : Nat) => (a + x))) ((0 : Nat)) (xs))) && (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : Int) (__p1 : Int) => __fits_4 __p0 __p1) ((fun (a : Int) (x : Int) => (_root_.LexLeanRuntime.subtract (a) (x) : Int))) ((5 : Int)) (s))) && Bool.true)) && Bool.true) - -theorem __rel_0 (xs : (List Nat)) (s : (List Int)) : _root_.LexLeanPreservation.FunRel __prog 0 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) xs), ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) s)] (_root_.LexLeanPreservation.Rel (__fits_0 xs s) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int) (Coverage.Colls.folds xs s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.nat) (es := _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) ((fun (a : Nat) (x : Nat) => (a + x))) (fun (__p0 : Nat) (__p1 : Nat) => __fits_2 __p0 __p1) 2 [] (fun (__p0 : Nat) (__p1 : Nat) => __rel_2 __p0 __p1) (p := __prog) (fi := 1) (ta := .nat) (ts := .nat) rfl ((0 : Nat)) (xs))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.int) (es := _root_.LexLeanTarget.TargetSyntax.Value.int) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.int) (fun _ => rfl) ((fun (a : Int) (x : Int) => (_root_.LexLeanRuntime.subtract (a) (x) : Int))) (fun (__p0 : Int) (__p1 : Int) => __fits_4 __p0 __p1) 4 [] (fun (__p0 : Int) (__p1 : Int) => __rel_4 __p0 __p1) (p := __prog) (fi := 3) (ta := .int) (ts := .int) rfl ((5 : Int)) (s))) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) - -def denote (xs : (List Nat)) (s : (List Int)) : _root_.LexLeanPreservation.Obs := - _root_.cond (__fits_0 xs s) (_root_.LexLeanPreservation.Obs.value (((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int) (Coverage.Colls.folds xs s)))) _root_.LexLeanPreservation.Obs.overflow - -theorem root (xs : (List Nat)) (s : (List Int)) : _root_.LexLeanPreservation.RunConv __prog 0 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) xs), ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) s)] (_root_.LexLeanPreservation.Rel (__fits_0 xs s) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int) (Coverage.Colls.folds xs s))) := - _root_.LexLeanPreservation.run_of_funRel (__rel_0 xs s) - -def __valid_5 : (List Int) -> Bool := - _root_.LexLeanPreservation.ascSet (_root_.LexLeanCollections.Key.compare : Int -> Int -> Ordering) - -def __inv_5 : (List Int) -> Prop := - _root_.LexLeanPreservation.InvSet (_root_.LexLeanCollections.Key.compare : Int -> Int -> Ordering) - -theorem __viff_5 : ∀ (__v : (List Int)), __valid_5 __v = Bool.true ↔ __inv_5 __v := - _root_.LexLeanPreservation.ascSet_inv (_root_.LexLeanCollections.Key.compare : Int -> Int -> Ordering) - -theorem __vrel_5 : ∀ (__v : (List Int)), _root_.LexLeanPreservation.FunRel __prog 5 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_5 __v))) := - _root_.LexLeanPreservation.tpl_validSet (_root_.LexLeanPreservation.keySpec_int (_root_.LexLeanCollections.Key.compare : Int -> Int -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.int) (fun _ => rfl) rfl - -def entryFits (xs : (List Nat)) (s : (List Int)) : Bool := - (if __valid_5 s then __fits_0 xs s else Bool.true) - -def entryValue (xs : (List Nat)) (s : (List Int)) : _root_.LexLeanTarget.TargetSyntax.Value := - (if __valid_5 s then (_root_.LexLeanTarget.TargetSyntax.Value.some ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int) (Coverage.Colls.folds xs s))) else _root_.LexLeanTarget.TargetSyntax.Value.none) - -/-- The entry's observation. -/ -def denoteEntry (xs : (List Nat)) (s : (List Int)) : _root_.LexLeanPreservation.Obs := - _root_.cond (_root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.entryFits xs s) (_root_.LexLeanPreservation.Obs.value (_root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.entryValue xs s)) _root_.LexLeanPreservation.Obs.overflow - -/-- §17.12's invariants of the validated parameters. -/ -def accepts (xs : (List Nat)) (s : (List Int)) : Prop := - (__inv_5 s ∧ _root_.True) - -theorem entry (xs : (List Nat)) (s : (List Int)) : _root_.LexLeanPreservation.RunConv __prog 6 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) xs), ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.int) s)] (_root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.denoteEntry xs s) := - _root_.LexLeanPreservation.run_of_funRel (_root_.LexLeanPreservation.FunRel.fits_eq (_root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun __c => if __c then __fits_0 xs s else Bool.true) (fun __c => if __c then (_root_.LexLeanTarget.TargetSyntax.Value.some ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.int) (Coverage.Colls.folds xs s))) else _root_.LexLeanTarget.TargetSyntax.Value.none) (__valid_5 s) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_5 s)) (fun _ => _root_.LexLeanPreservation.Conv.fits_eq (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_0 xs s)) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some) (by simp)) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (by simp [_root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.entryFits])) - -theorem entry_accepts (xs : (List Nat)) (s : (List Int)) (__h : _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.accepts xs s) : _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.denoteEntry xs s = _root_.LexLeanPreservation.someObs (_root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.denote xs s) := by - unfold _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.accepts at __h - unfold _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.denoteEntry _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.entryFits _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.entryValue _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.denote - simp only [_root_.if_true, (__viff_5 s).mpr __h.1] - cases __fits_0 xs s <;> rfl - -theorem entry_refuses (xs : (List Nat)) (s : (List Int)) (__h : ¬ _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.accepts xs s) : _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.denoteEntry xs s = _root_.LexLeanPreservation.Obs.value _root_.LexLeanTarget.TargetSyntax.Value.none := by - unfold _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.accepts at __h - unfold _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.denoteEntry _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.entryFits _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.entryValue - cases __c0 : __valid_5 s - · simp - · exact _root_.absurd ⟨(__viff_5 s).mp __c0, _root_.trivial⟩ __h - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4 diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R4/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R4/Compose/RustStd.lex.tex deleted file mode 100644 index 682629efa..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R4/Compose/RustStd.lex.tex +++ /dev/null @@ -1,606 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.Compose.RustStd.root : @1228 := @1229 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.RustStd.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.RustStd.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.RustStd.flags -@3 := Nat -@4 := List.{0} -@5 := @4 @3 -@6 := #2 -@7 := LexLeanTarget.TargetSyntax.Value.nat -@8 := LexLeanPreservation.encList -@9 := @8 @3 -@10 := @9 @7 -@11 := @10 @6 -@12 := LexLeanTarget.TargetSyntax.Ty.nat -@13 := LexLeanTarget.TargetSyntax.Ty.list -@14 := @13 @12 -@15 := #0 -@16 := LexLeanTarget.TargetSyntax.Program -@17 := LexLeanPreservation.Rust.RCrate -@18 := LexLeanPreservation.Rust.Flags -@19 := LexLeanPreservation.Rust.WT -@20 := #3 -@22 := @19 @20 @6 -@23 := #1 -@24 := @22 @23 -@25 := @7 @15 -@31 := {p : @16} -> {c : @17} -> {A : @18} -> (n : @3) -> @24 @25 @12 -@33 := LexLeanPreservation.Rust.wt_nat @0 -@34 := @19 @0 -@36 := @34 @6 @23 -@41 := {c : @17} -> {A : @18} -> (n : @3) -> @36 @25 @12 -@42 := @33 @1 -@43 := @34 @1 -@44 := @43 @23 -@48 := {A : @18} -> (n : @3) -> @44 @25 @12 -@49 := @42 @2 -@50 := @43 @2 -@51 := @50 @25 -@52 := @51 @12 -@53 := (n : @3) -> @52 -@55 := fun (__x : @3) => @49 @15 -@56 := Sort 1 -@57 := LexLeanTarget.TargetSyntax.Value -@58 := (a._@._internal._hyg.#0 : @15) -> @57 -@59 := LexLeanTarget.TargetSyntax.Ty -@60 := #6 -@61 := @19 @60 -@62 := #5 -@63 := @61 @62 -@64 := #4 -@65 := @63 @64 -@66 := @6 @15 -@69 := (x : @6) -> @65 @66 @23 -@70 := @4 @20 -@71 := #7 -@74 := @19 @71 @60 @62 -@77 := @8 @64 @20 @15 -@78 := @74 @77 -@79 := @13 @6 -@88 := {p : @16} -> - {c : @17} -> - {A : @18} -> {α : @56} -> {e : @58} -> {t : @59} -> (h : @69) -> (xs : @70) -> @78 @79 -@90 := LexLeanPreservation.Rust.wt_encList @0 -@92 := @34 @62 @64 -@106 := {c : @17} -> - {A : @18} -> - {α : @56} -> - {e : @58} -> {t : @59} -> (h : (x : @6) -> @92 @66 @23) -> (xs : @70) -> @34 @60 @62 @77 @79 -@107 := @90 @1 -@108 := @43 @64 -@120 := {A : @18} -> - {α : @56} -> - {e : @58} -> {t : @59} -> (h : (x : @6) -> @108 @66 @23) -> (xs : @70) -> @43 @62 @77 @79 -@121 := @107 @2 -@123 := @50 @66 @23 -@131 := {α : @56} -> {e : @58} -> {t : @59} -> (h : (x : @6) -> @123) -> (xs : @70) -> @50 @77 @79 -@132 := @121 @3 -@142 := {e : (a._@._internal._hyg.#0 : @3) -> @57} -> - {t : @59} -> (h : (x : @3) -> @123) -> (xs : @5) -> @50 (@9 @20 @15) @79 -@143 := @132 @7 -@145 := (x : @3) -> @51 @23 -@147 := @50 (@10 @15) -@151 := {t : @59} -> (h : @145) -> (xs : @5) -> @147 @79 -@152 := @143 @12 -@156 := (h : (x : @3) -> @52) -> (xs : @5) -> @147 @14 -@158 := @152 @55 @6 -@160 := @50 @11 @14 -@161 := Int -@162 := @4 @161 -@163 := LexLeanTarget.TargetSyntax.Value.int -@164 := @8 @161 -@165 := @164 @163 -@166 := @165 @23 -@167 := LexLeanTarget.TargetSyntax.Ty.int -@168 := @13 @167 -@169 := @163 @15 -@175 := {p : @16} -> {c : @17} -> {A : @18} -> (n : @161) -> @24 @169 @167 -@177 := LexLeanPreservation.Rust.wt_int @0 -@182 := {c : @17} -> {A : @18} -> (n : @161) -> @36 @169 @167 -@183 := @177 @1 -@187 := {A : @18} -> (n : @161) -> @44 @169 @167 -@188 := @183 @2 -@189 := @50 @169 -@190 := @189 @167 -@191 := (n : @161) -> @190 -@193 := fun (__x : @161) => @188 @15 -@194 := @121 @161 -@204 := {e : (a._@._internal._hyg.#0 : @161) -> @57} -> - {t : @59} -> (h : (x : @161) -> @123) -> (xs : @162) -> @50 (@164 @20 @15) @79 -@205 := @194 @163 -@207 := (x : @161) -> @189 @23 -@208 := @165 @15 -@209 := @50 @208 -@213 := {t : @59} -> (h : @207) -> (xs : @162) -> @209 @79 -@214 := @205 @167 -@218 := (h : (x : @161) -> @190) -> (xs : @162) -> @209 @168 -@220 := @214 @193 @23 -@222 := @50 @166 @168 -@223 := List.nil.{0} -@224 := List.cons.{0} -@225 := @223 @57 -@226 := @224 @57 -@228 := @226 @166 @225 -@230 := @226 @11 @228 -@233 := Prod.{0, 0} @3 @57 -@234 := 1 -@237 := Prod.mk.{0, 0} @3 @57 -@238 := @237 @234 -@239 := @238 @166 -@241 := @237 0 -@242 := @241 @11 -@243 := @223 @233 -@244 := @224 @233 -@246 := @244 @242 @243 -@248 := @244 @239 @246 -@249 := Bool.true -@250 := LexLeanTarget.TargetSyntax.Function -@251 := LexLeanTarget.TargetSyntax.Program.functions -@252 := @251 @0 -@253 := 6 -@254 := @223 @3 -@255 := @223 @59 -@256 := LexLeanTarget.TargetSyntax.Ty.unit -@257 := LexLeanTarget.TargetSyntax.Value.unit -@260 := LexLeanTarget.TargetSyntax.Expr.value @256 @257 -@265 := LexLeanTarget.TargetSyntax.Function.mk @254 @255 @256 @260 -@270 := List.getD.{0} @250 @252 @253 @265 -@274 := fun (__e_n : @3) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.RustStd.root @15 @253 -@275 := LexLeanPreservation.Rust.WTL -@283 := {p : @16} -> {c : @17} -> {A : @18} -> @275 @6 @23 @15 @225 @255 -@285 := LexLeanPreservation.Rust.wtl_nil @0 -@286 := @275 @0 -@292 := {c : @17} -> {A : @18} -> @286 @23 @15 @225 @255 -@293 := @285 @1 -@294 := @286 @1 -@298 := {A : @18} -> @294 @15 @225 @255 -@299 := @293 @2 -@300 := @294 @2 -@301 := @300 @225 -@302 := @301 @255 -@303 := @4 @57 -@304 := @4 @59 -@306 := @65 @20 @6 -@311 := @275 @71 @60 @62 @6 @23 -@312 := #8 -@315 := @275 @312 @71 @60 -@317 := @226 @62 @20 -@318 := @315 @317 -@319 := @224 @59 -@321 := @319 @64 @6 -@331 := {p : @16} -> - {c : @17} -> - {A : @18} -> - {v : @57} -> {t : @59} -> {vs : @303} -> {ts : @304} -> (h : @306) -> (hs : @311) -> @318 @321 -@333 := LexLeanPreservation.Rust.wtl_cons @0 -@351 := {c : @17} -> - {A : @18} -> - {v : @57} -> - {t : @59} -> - {vs : @303} -> - {ts : @304} -> (h : @92 @20 @6) -> (hs : @286 @60 @62 @6 @23) -> @286 @71 @60 @317 @321 -@352 := @333 @1 -@367 := {A : @18} -> - {v : @57} -> - {t : @59} -> - {vs : @303} -> {ts : @304} -> (h : @108 @20 @6) -> (hs : @294 @62 @6 @23) -> @294 @60 @317 @321 -@368 := @352 @2 -@370 := @50 @20 @6 -@372 := @300 @6 @23 -@380 := {v : @57} -> - {t : @59} -> {vs : @303} -> {ts : @304} -> (h : @370) -> (hs : @372) -> @300 @317 @321 -@381 := @368 @166 -@382 := @165 @64 -@384 := @50 @382 @6 -@385 := @165 @60 -@386 := @226 @385 -@394 := {t : @59} -> {vs : @303} -> {ts : @304} -> (h : @384) -> (hs : @372) -> @300 (@386 @20) @321 -@395 := @381 @168 -@396 := @165 @20 -@398 := @50 @396 @168 -@399 := @165 @62 -@400 := @226 @399 -@402 := @300 (@400 @20) -@403 := @319 @168 -@404 := @403 @6 -@409 := {vs : @303} -> {ts : @304} -> (h : @398) -> (hs : @372) -> @402 @404 -@410 := @395 @225 -@411 := @165 @6 -@413 := @50 @411 @168 -@414 := @301 @23 -@416 := @226 @382 @225 -@421 := {ts : @304} -> (h : @413) -> (hs : @414) -> @300 @416 @404 -@422 := @410 @255 -@424 := @226 @396 @225 -@425 := @300 @424 -@426 := @403 @255 -@429 := (h : @222) -> (hs : @302) -> @425 @426 -@430 := @422 @220 -@432 := @226 @411 @225 -@434 := @300 @432 @426 -@435 := (hs : @302) -> @434 -@436 := @430 @299 -@438 := @300 @228 @426 -@439 := @368 @11 -@440 := @10 @62 -@442 := @50 @440 @6 -@443 := @10 @71 -@444 := @226 @443 -@452 := {t : @59} -> {vs : @303} -> {ts : @304} -> (h : @442) -> (hs : @372) -> @300 (@444 @20) @321 -@453 := @439 @14 -@454 := @10 @64 -@456 := @50 @454 @14 -@457 := @10 @60 -@458 := @226 @457 -@460 := @300 (@458 @20) -@461 := @319 @14 -@462 := @461 @6 -@467 := {vs : @303} -> {ts : @304} -> (h : @456) -> (hs : @372) -> @460 @462 -@468 := @453 @228 -@469 := @10 @20 -@471 := @50 @469 @14 -@472 := @425 @23 -@474 := @226 @440 @416 -@475 := @300 @474 -@479 := {ts : @304} -> (h : @471) -> (hs : @472) -> @475 @462 -@480 := @468 @426 -@482 := @226 @454 @424 -@483 := @300 @482 -@484 := @461 @426 -@487 := (h : @160) -> (hs : @434) -> @483 @484 -@488 := @480 @158 -@490 := @226 @469 @432 -@491 := @300 @490 -@493 := (hs : @438) -> @491 @484 -@494 := @488 @436 -@495 := @300 @230 -@496 := @495 @484 -@497 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.denoteEntry -@499 := @497 @6 @23 -@500 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.entryFits -@502 := @500 @6 @23 -@505 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.entryValue @6 @23 -@508 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.entry @6 @23 -@509 := Bool -@510 := Ne.{1} -@511 := LexLeanPreservation.Obs -@512 := @510 @511 -@513 := LexLeanPreservation.Rel -@516 := @512 (@513 @23 @15) -@517 := LexLeanPreservation.Obs.stuck -@520 := (f : @509) -> (v : @57) -> @516 @517 -@522 := LexLeanPreservation.Rust.rel_ne_stuck @502 -@529 := (v : @57) -> @512 (@513 (@500 @20 @6) @15) @517 -@530 := @522 @505 -@534 := @512 (@513 @502 @505) @517 -@535 := @4 @233 -@536 := LexLeanPreservation.Rust.FunSem -@537 := #9 -@543 := (n : @3) -> @536 @537 @312 @71 @15 @60 -@544 := Eq.{1} -@545 := Option.{0} -@546 := @545 @250 -@547 := @544 @546 -@554 := LexLeanRuntime.index (@4 @250) @250 (LexLeanRuntime.instIndexableList @250) -@558 := @547 (@554 (@251 @537) @60) -@559 := Option.some.{0} -@560 := @559 @250 -@561 := @560 @62 -@562 := @558 @561 -@563 := #10 -@567 := @275 @563 @537 @312 @62 -@568 := LexLeanTarget.TargetSyntax.Function.types -@569 := @568 @60 -@570 := @567 @569 -@571 := @545 @535 -@572 := @544 @571 -@573 := LexLeanTarget.TargetSemantics.bindAll -@574 := LexLeanTarget.TargetSyntax.Function.parameters -@579 := @572 (@573 (@574 @71) @60 @243) -@580 := @559 @535 -@581 := @580 @62 -@582 := @579 @581 -@583 := @545 @509 -@584 := @544 @583 -@585 := LexLeanPreservation.Rust.fnFallible -@586 := #11 -@589 := @584 (@585 @586 @537) -@590 := @559 @509 -@591 := @590 @62 -@592 := @589 @591 -@593 := LexLeanPreservation.RunConv -@594 := #13 -@598 := @593 @594 @563 @312 @62 -@600 := @512 @60 @517 -@601 := Exists.{1} -@602 := LexLeanPreservation.Rust.ROut -@603 := @601 @602 -@604 := And -@605 := LexLeanPreservation.Rust.RealizesFn -@609 := @604 (@605 @537 @312 @15) -@610 := LexLeanPreservation.Rust.RCI -@612 := @610 #15 -@613 := LexLeanPreservation.Rust.fnIdent -@614 := @613 @594 -@621 := (hne : @600) -> @603 (fun (ro : @602) => @609 (@612 @614 @586 @15)) -@636 := {p : @16} -> - {c : @17} -> - {A : @18} -> - {f : @3} -> - {fn : @250} -> - {args : @303} -> - {env : @535} -> - {F : @509} -> - {o : @511} -> - (hB : @543) -> - (hfn : @562) -> (hwt : @570) -> (hbind : @582) -> (hF : @592) -> (hA : @598) -> @621 -@638 := LexLeanPreservation.Rust.compose @0 -@639 := @536 @0 -@644 := (n : @3) -> @639 @312 @71 @15 @60 -@645 := @554 @252 -@648 := @547 (@645 @60) @561 -@652 := @286 @537 @312 @62 @569 -@653 := @593 @0 -@656 := @653 @563 @312 @62 -@670 := {c : @17} -> - {A : @18} -> - {f : @3} -> - {fn : @250} -> - {args : @303} -> - {env : @535} -> - {F : @509} -> - {o : @511} -> - (hB : @644) -> - (hfn : @648) -> (hwt : @652) -> (hbind : @582) -> (hF : @592) -> (hA : @656) -> @621 -@671 := @638 @1 -@672 := @639 @1 -@676 := (n : @3) -> @672 @71 @15 @60 -@679 := @294 @312 @62 @569 -@680 := @585 @1 -@683 := @584 (@680 @537) @591 -@684 := @610 @1 -@694 := (hbind : @582) -> - (hF : @683) -> (hA : @656) -> (hne : @600) -> @603 (fun (ro : @602) => @609 (@684 @614 @586 @15)) -@704 := {A : @18} -> - {f : @3} -> - {fn : @250} -> - {args : @303} -> - {env : @535} -> {F : @509} -> {o : @511} -> (hB : @676) -> (hfn : @648) -> (hwt : @679) -> @694 -@705 := @671 @2 -@707 := @672 @2 @15 -@709 := (n : @3) -> @707 @60 -@710 := @300 @62 -@711 := @710 @569 -@720 := {f : @3} -> - {fn : @250} -> - {args : @303} -> - {env : @535} -> {F : @509} -> {o : @511} -> (hB : @709) -> (hfn : @648) -> (hwt : @711) -> @694 -@721 := @705 @253 -@723 := (n : @3) -> @707 @253 -@724 := @645 @253 -@725 := @547 @724 -@726 := @725 @561 -@727 := @680 @253 -@728 := @584 @727 -@729 := @728 @591 -@730 := @653 @253 -@732 := @730 @312 @62 -@734 := @684 (@613 @253) -@742 := (hF : @729) -> (hA : @732) -> (hne : @600) -> @603 (fun (ro : @602) => @609 (@734 @586 @15)) -@751 := {fn : @250} -> - {args : @303} -> - {env : @535} -> - {F : @509} -> {o : @511} -> (hB : @723) -> (hfn : @726) -> (hwt : @711) -> (hbind : @582) -> @742 -@752 := @721 @270 -@754 := @725 (@560 @270) -@755 := @568 @270 -@756 := @710 @755 -@758 := @573 (@574 @270) -@770 := {args : @303} -> - {env : @535} -> - {F : @509} -> - {o : @511} -> - (hB : @723) -> (hfn : @754) -> (hwt : @756) -> (hbind : @572 (@758 @60 @243) @581) -> @742 -@771 := @752 @230 -@773 := @444 (@386 @225) -@775 := @300 @773 @755 -@781 := @226 (@10 @312) (@226 (@165 @71) @225) -@785 := @572 (@758 @781 @243) @581 -@791 := @226 (@10 @563) (@226 (@165 @537) @225) -@793 := @730 @791 @62 -@795 := @226 (@10 @594) -@796 := #12 -@815 := {env : @535} -> - {F : @509} -> - {o : @511} -> - (hB : @723) -> - (hfn : @754) -> - (hwt : @775) -> - (hbind : @785) -> - (hF : @729) -> - (hA : @793) -> - (hne : @600) -> @603 (fun (ro : @602) => @609 (@734 (@795 (@226 (@165 @796) @225)) @15)) -@816 := @771 @248 -@818 := @458 (@400 @225) -@820 := @300 @818 @755 -@831 := @572 (@758 @773 @243) (@580 (@244 (@238 @385) (@244 (@241 @443) @243))) -@837 := @226 (@10 @537) (@226 (@165 @312) @225) -@859 := {F : @509} -> - {o : @511} -> - (hB : @723) -> - (hfn : @754) -> - (hwt : @820) -> - (hbind : @831) -> - (hF : @729) -> - (hA : @730 @837 @62) -> - (hne : @600) -> - @603 (fun (ro : @602) => @609 (@734 (@226 (@10 @796) (@226 (@165 @586) @225)) @15)) -@860 := @816 @249 -@861 := @475 @755 -@872 := @572 (@758 @818 @243) (@580 (@244 (@238 @399) (@244 (@241 @457) @243))) -@874 := @728 (@590 @249) -@876 := @730 @781 @62 -@877 := @605 @249 -@899 := {o : @511} -> - (hB : @723) -> - (hfn : @754) -> - (hwt : @861) -> - (hbind : @872) -> - (hF : @874) -> - (hA : @876) -> - (hne : @600) -> - @603 - (fun (ro : @602) => @604 (@877 @312 @15) (@734 (@226 (@10 @586) (@226 (@165 @563) @225)) @15)) -@900 := @860 @499 -@901 := @483 @755 -@912 := @572 (@758 @474 @243) (@580 (@244 (@238 @382) (@244 (@241 @440) @243))) -@913 := @730 @773 -@915 := @497 @71 @60 -@916 := @913 @915 -@918 := @497 @312 @71 -@937 := (hB : @723) -> - (hfn : @754) -> - (hwt : @901) -> - (hbind : @912) -> - (hF : @874) -> - (hA : @916) -> - (hne : @512 @918 @517) -> - @603 (fun (ro : @602) => @604 (@877 (@497 @563 @537) @15) (@734 @791 @15)) -@938 := @900 @274 -@939 := @491 @755 -@950 := @572 (@758 @482 @243) (@580 (@244 (@238 @396) (@244 (@241 @454) @243))) -@951 := @730 @818 -@953 := @497 @60 @62 -@972 := (hfn : @754) -> - (hwt : @939) -> - (hbind : @950) -> - (hF : @874) -> - (hA : @951 @953) -> - (hne : @512 @915 @517) -> - @603 (fun (ro : @602) => @604 (@877 (@497 @537 @312) @15) (@734 @837 @15)) -@973 := Eq.refl.{1} -@976 := @938 (@973 @546 @724) -@977 := @495 @755 -@988 := @572 (@758 @490 @243) (@580 (@244 (@238 @411) (@244 (@241 @469) @243))) -@989 := @730 @474 -@991 := @497 @62 @64 -@1007 := (hwt : @977) -> - (hbind : @988) -> - (hF : @874) -> - (hA : @989 @991) -> - (hne : @512 @953 @517) -> @603 (fun (ro : @602) => @604 (@877 @918 @15) (@734 @781 @15)) -@1008 := @976 @494 -@1010 := @758 @230 @243 -@1013 := @572 @1010 (@580 @248) -@1014 := @730 @482 -@1016 := @497 @64 @20 -@1031 := (hbind : @1013) -> - (hF : @874) -> - (hA : @1014 @1016) -> - (hne : @512 @991 @517) -> @603 (fun (ro : @602) => @604 (@877 @915 @15) (@734 @773 @15)) -@1034 := @1008 (@973 @571 @1010) -@1035 := @730 @490 -@1037 := @497 @20 @6 -@1051 := (hF : @874) -> - (hA : @1035 @1037) -> - (hne : @512 @1016 @517) -> @603 (fun (ro : @602) => @604 (@877 @953 @15) (@734 @818 @15)) -@1054 := @1034 (@973 @583 @727) -@1056 := @730 @230 @499 -@1058 := @512 @1037 @517 -@1059 := @877 @991 -@1061 := @604 (@1059 @15) -@1062 := @734 @474 -@1063 := @1062 @15 -@1068 := (hA : @1056) -> (hne : @1058) -> @603 (fun (ro : @602) => @1061 @1063) -@1069 := @1054 @508 -@1071 := @512 @499 @517 -@1072 := @877 @1016 -@1074 := @604 (@1072 @15) -@1075 := @734 @482 -@1080 := (hne : @1071) -> @603 (fun (ro : @602) => @1074 (@1075 @15)) -@1081 := @1069 @530 -@1084 := @604 (@877 @1037 @15) -@1086 := @734 @490 @15 -@1087 := @1084 @1086 -@1089 := @603 (fun (ro : @602) => @1087) -@1090 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.accepts -@1092 := @1090 @6 @23 -@1093 := LexLeanPreservation.someObs -@1094 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.denote -@1097 := @1093 (@1094 @6 @23) -@1100 := LexLeanPreservation.Obs.value LexLeanTarget.TargetSyntax.Value.none -@1101 := Not -@1102 := @1101 @1092 -@1104 := @1090 @20 @6 -@1107 := @1093 (@1094 @20 @6) -@1108 := @1101 @1104 -@1114 := @1104 -> @877 (@1093 (@1094 @64 @20)) @23 -@1115 := @877 @1100 -@1116 := @1115 @23 -@1117 := @1108 -> @1116 -@1119 := @604 @1114 @1117 -@1123 := @603 (fun (__e_ro : @602) => @604 @1086 @1119) -@1124 := fun (__e_ro : @602) => @1087 -@1125 := @1072 @23 -@1126 := @1075 @23 -@1127 := And.left -@1128 := And.right -@1131 := @1127 @1125 @1126 @15 -@1134 := @1128 @1125 @1126 @15 -@1135 := @877 @15 -@1137 := fun (__e_o : @511) => @1135 @6 -@1138 := Eq.subst.{1} -@1140 := @1090 @64 @20 -@1141 := @1101 @1140 -@1145 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.entry_accepts @62 @64 @15 -@1148 := @1093 (@1094 @62 @64) -@1153 := @1127 (@1059 @6) (@1062 @6) @23 -@1155 := fun (__e_o : @511) => @1135 @20 -@1158 := @1138 @511 @1155 @991 -@1162 := fun (__e_h : @1140) => @1158 @1148 @1145 @1153 -@1166 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.entry_refuses @62 @64 @15 -@1170 := fun (__e_h : @1141) => @1158 @1100 @1166 @1153 -@1171 := And.intro -@1174 := @1140 -> @877 @1148 @6 -@1176 := @1141 -> @1115 @6 -@1178 := @604 @1174 @1176 -@1182 := @1171 @1174 @1176 @1162 @1170 -@1186 := @1171 @1126 @1178 @1134 @1182 -@1187 := Exists.intro.{1} -@1188 := @604 @1063 -@1190 := @1090 @62 @64 -@1202 := fun (__e_ro : @602) => - @1188 (@604 (@1190 -> @877 (@1093 (@1094 @60 @62)) @23) (@1101 @1190 -> @1116)) -@1206 := @1187 @602 @1202 @23 @1186 -@1208 := @604 @1125 @1126 -@1210 := fun (__e_ro : @602) => fun (__e_hand : @1087) => @1206 -@1216 := Exists.elim.{1} @602 @1124 @1123 @1081 @1210 -@1217 := LexLeanPreservation.Rust.RepresentableL -@1218 := @10 @23 -@1220 := @226 @208 @225 -@1223 := @1217 (@226 @1218 @1220) -@1224 := (__e_hrep : @1223) -> @1123 -@1225 := fun (__e_hrep : @1223) => @1216 -@1226 := (s : @162) -> @1224 -@1227 := fun (s : @162) => @1225 -@1228 := (xs : @5) -> @1226 -@1229 := fun (xs : @5) => @1227 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R4/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R4/RustStd.lean deleted file mode 100644 index c74b5cdaf..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R4/RustStd.lean +++ /dev/null @@ -1,85 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1], types := [(.list .nat), (.list .int)], result := (.pair .nat .int), - body := (.build .pair (.pair .nat .int) [(.call 1 [(.closure 2 []), (.value .nat (.nat 0)), (.var 0)]), (.call 3 [(.closure 4 []), (.value .int (.int 5)), (.var 1)])]) }, - { parameters := [0, 1, 2], types := [(.fn [.nat, .nat] .nat), .nat, (.list .nat)], result := .nat, - body := (.«match» .nat (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 1 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, - { parameters := [0, 1], types := [.nat, .nat], result := .nat, - body := (.prim .natAdd [(.var 0), (.var 1)]) }, - { parameters := [0, 1, 2], types := [(.fn [.int, .int] .int), .int, (.list .int)], result := .int, - body := (.«match» .int (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 3 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, - { parameters := [0, 1], types := [.int, .int], result := .int, - body := (.prim .intSub [(.var 0), (.var 1)]) }, - { parameters := [0], types := [(.list .int)], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.var 1), (.var 3)]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 5 [(.var 2)]) (.build .false .bool [])))]))]) }, - { parameters := [0, 1], types := [(.list .nat), (.list .int)], result := (.option (.pair .nat .int)), - body := (.cond (.call 5 [(.var 1)]) (.build .some (.option (.pair .nat .int)) [(.call 0 [(.var 0), (.var 1)])]) (.build .none (.option (.pair .nat .int)) [])) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.enum (.fn 0) [{ number := 2, fields := [] }]), - (.apply 0 [.nat, .nat] .nat true [{ function := 2, captures := [], functionFallible := true }]), - (.enum (.fn 1) [{ number := 4, fields := [] }]), - (.apply 1 [.int, .int] .int true [{ function := 4, captures := [], functionFallible := true }]), - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := (.list .int) }] (.fallible (.pair .nat .int)) (.mk [] (.succeed (.pair (.call (.function 1) [(.construct (.closure 0 2) []), (.lit (.nat 0)), (.move (.generated .binding 0))] true) (.call (.function 3) [(.construct (.closure 1 4) []), (.lit (.int 5)), (.move (.generated .binding 1))] true))))), - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := (.list .nat) }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 1)) [(.mk .none (.mk [] (.succeed (.copy (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 1) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 2)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 2) [(.copy (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]))), - (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))), - (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 1) }, { pattern := (.bind (.generated .binding 1)), type := .int }, { pattern := (.bind (.generated .binding 2)), type := (.list .int) }] (.fallible .int) (.mk [(.mk (.bind (.generated .holder 5)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 5)) [(.mk .none (.mk [] (.succeed (.copy (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 3) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 6)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 6) [(.copy (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]))), - (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := .int }, { pattern := (.bind (.generated .binding 1)), type := .int }] (.fallible .int) (.mk [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1)))] (.call (.runtime .intSub) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false))), - (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := (.list .int) }] .bool (.mk [(.mk (.bind (.generated .holder 9)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 9)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [(.mk (.bind (.generated .holder 10)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 10)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))] (.cond (.matchOn (.move (.generated .holder 13)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 5) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])))]))), - (.function (.generated .function 6) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := (.list .int) }] (.fallible (.option (.pair .nat .int))) (.mk [] (.cond (.call (.function 5) [(.clone (.generated .binding 1))] false) (.mk [] (.succeed (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] true)]))) (.mk [] (.succeed (.construct (.none (.pair .nat .int)) []))))))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [(([.nat, .nat], .nat), true), (([.int, .int], .int), true)] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [], (.succeed (.pair (.call (.function 1) [(.construct (.closure 0 2) []), (.lit (.nat 0)), (.move (.generated .binding 0))] true) (.call (.function 3) [(.construct (.closure 1 4) []), (.lit (.int 5)), (.move (.generated .binding 1))] true))), [(1, (.list .int), (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, - (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.fn [.nat, .nat] .nat), .nat, (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.fn [.int, .int] .int), .int, (.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lNil))))))⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 1)) [(.mk .none (.mk [] (.succeed (.copy (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 1) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 2)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 2) [(.copy (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]), [(2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat, .nat] .nat), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat, .nat] .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.copy (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list .nat), (some 4)), (3, .nat, (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat, .nat] .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 1) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 2)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 2) [(.copy (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [.nat, .nat] .nat), .nat, (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 2)) (some (.fn 0)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 2) [(.copy (.generated .binding 1)), (.copy (.generated .binding 3))] true)) (Corr.apply (ps := [.nat, .nat]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1)))], (.call (.runtime .natAdd) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun3 : FunOK program krate flags 3 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 5)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 5)) [(.mk .none (.mk [] (.succeed (.copy (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 3) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 6)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 6) [(.copy (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]), [(2, (.list .int), (some 2)), (1, .int, (some 1)), (0, (.fn [.int, .int] .int), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .int)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .int), (some 2)), (1, .int, (some 1)), (0, (.fn [.int, .int] .int), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.copy (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list .int), (some 4)), (3, .int, (some 3)), (2, (.list .int), (some 2)), (1, .int, (some 1)), (0, (.fn [.int, .int] .int), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 3) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 6)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 6) [(.copy (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [.int, .int] .int), .int, (.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 6)) (some (.fn 1)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 6) [(.copy (.generated .binding 1)), (.copy (.generated .binding 3))] true)) (Corr.apply (ps := [.int, .int]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ - -theorem fun4 : FunOK program krate flags 4 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1)))], (.call (.runtime .intSub) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false), [(1, .int, (some 1)), (0, .int, (some 0))], rfl, rfl, - (Corr.primF (ts := [.int, .int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun5 : FunOK program krate flags 5 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 9)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 9)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [(.mk (.bind (.generated .holder 10)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 10)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))] (.cond (.matchOn (.move (.generated .holder 13)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 5) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])))]), [(0, (.list .int), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .int)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list .int), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, (.list .int), (some 2)), (1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 10)) none (.clone (.generated .binding 2)))]) (tail := (.matchOn (.uncons (.generated .holder 10)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))] (.cond (.matchOn (.move (.generated .holder 13)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 5) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := (.list .int)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .int), (some 2)), (1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list .int), none), (3, .int, (some 3)), (2, (.list .int), (some 2)), (1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 13)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 5) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .holder 13)) none (.block (.mk [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false))))]) (ce := (.matchOn (.move (.generated .holder 13)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 11)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 3)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.list .int), none), (3, .int, (some 3)), (2, (.list .int), (some 2)), (1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list .int), none), (3, .int, (some 3)), (2, (.list .int), (some 2)), (1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, (.list .int), none), (3, .int, (some 3)), (2, (.list .int), (some 2)), (1, .int, (some 1)), (0, (.list .int), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 5) [(.move (.generated .binding 2))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ - -theorem fun6 : FunOK program krate flags 6 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 5) [(.clone (.generated .binding 1))] false) (.mk [] (.succeed (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] true)]))) (.mk [] (.succeed (.construct (.none (.pair .nat .int)) [])))), [(1, (.list .int), (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 5) [(.clone (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [(.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] true)]))) (lb := []) (tb := (.succeed (.construct (.none (.pair .nat .int)) []))) (Corr.fOfB (Corr.build (ts := [(.pair .nat .int)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), (.list .int)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | 3 => exact fun3 - | 4 => exact fun4 - | 5 => exact fun5 - | 6 => exact fun6 - | _ + 7 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R5.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R5.lean deleted file mode 100644 index 64eb521c0..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R5.lean +++ /dev/null @@ -1,60 +0,0 @@ -import LexLeanPreservation.Core -import LexLeanPreservation.Values -import LexLeanPreservation.Primitives -import LexLeanPreservation.Fixed -import LexLeanPreservation.Keys -import LexLeanPreservation.Templates -import LexLeanPreservation.Validate -import Coverage.Boundary -import Coverage.Colls -import Coverage.Main -import Coverage.Prims -import Coverage.RecRoots -import Coverage.Recur -import Coverage.Syntax -import Coverage.Types -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -set_option linter.unusedVariables false -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5 - -def __prog : _root_.LexLeanTarget.TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1], types := [.nat, .nat], result := (.pair .nat (.pair .nat .bool)), - body := (.build .pair (.pair .nat (.pair .nat .bool)) [(.call 1 [(.closure 2 []), (.var 0), (.var 1)]), (.call 3 [(.closure 4 []), (.var 0), (.var 1)])]) }, - { parameters := [0, 1, 2], types := [(.fn [.nat] .nat), .nat, .nat], result := .nat, - body := (.«match» .nat (.var 1) [(.arm .zero [] (.var 2)), (.arm .succ [3] (.call 1 [(.var 0), (.var 3), (.apply (.var 0) [(.var 2)])]))]) }, - { parameters := [0], types := [.nat], result := .nat, - body := (.prim .natAdd [(.var 0), (.value .nat (.nat 1))]) }, - { parameters := [0, 1, 2], types := [(.fn [.nat] (.option .nat)), .nat, .nat], result := (.pair .nat .bool), - body := (.«match» (.pair .nat .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair .nat .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair .nat .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair .nat .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 3 [(.var 0), (.var 3), (.var 4)]))]))]) }, - { parameters := [0], types := [.nat], result := (.option .nat), - body := (.cond (.prim .natLt [(.var 0), (.value .nat (.nat 10))]) (.build .some (.option .nat) [(.prim .natAdd [(.var 0), (.value .nat (.nat 2))])]) (.build .none (.option .nat) [])) }] } - -def __fits_2 (x : Nat) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (x + (1 : Nat)) 18446744073709551616)) - -theorem __rel_2 (x : Nat) : _root_.LexLeanPreservation.FunRel __prog 2 [(_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_2 x) (_root_.LexLeanTarget.TargetSyntax.Value.nat ((x + (1 : Nat))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd x (1 : Nat))) - -def __fits_4 (x : Nat) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.blt x (10 : Nat)) then ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (x + (2 : Nat)) 18446744073709551616)) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -theorem __rel_4 (x : Nat) : _root_.LexLeanPreservation.FunRel __prog 4 [(_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_4 x) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) ((if (Nat.blt x (10 : Nat)) then (Option.some ((x + (2 : Nat))) : (Option Nat)) else (Option.none : (Option Nat)))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (x + (2 : Nat)) 18446744073709551616)) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Option.some ((x + (2 : Nat))) : (Option Nat)) else (Option.none : (Option Nat)))) (Nat.blt x (10 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt x (10 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd x (2 : Nat))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_0 (n : Nat) (start : Nat) : Bool := - ((((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.iterateFits (fun (__p0 : Nat) => __fits_2 __p0) ((fun (x : Nat) => (x + (1 : Nat)))) (n) (start))) && (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : Nat) => __fits_4 __p0) ((fun (x : Nat) => (if (Nat.blt x (10 : Nat)) then (Option.some ((x + (2 : Nat))) : (Option Nat)) else (Option.none : (Option Nat))))) (n) (start))) && Bool.true)) && Bool.true) - -theorem __rel_0 (n : Nat) (start : Nat) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat n), (_root_.LexLeanTarget.TargetSyntax.Value.nat start)] (_root_.LexLeanPreservation.Rel (__fits_0 n start) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool)) (Coverage.Colls.iterations n start))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterate (es := _root_.LexLeanTarget.TargetSyntax.Value.nat) ((fun (x : Nat) => (x + (1 : Nat)))) (fun (__p0 : Nat) => __fits_2 __p0) 2 [] (fun (__p0 : Nat) => __rel_2 __p0) (_root_.LexLeanCollections.iterate ((fun (x : Nat) => (x + (1 : Nat))))) (fun _ => rfl) (fun _ _ => rfl) (p := __prog) (fi := 1) (ts := .nat) rfl (n) (start))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterateUntil (es := _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.optEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) ((fun (x : Nat) => (if (Nat.blt x (10 : Nat)) then (Option.some ((x + (2 : Nat))) : (Option Nat)) else (Option.none : (Option Nat))))) (fun (__p0 : Nat) => __fits_4 __p0) 4 [] (fun (__p0 : Nat) => __rel_4 __p0) (_root_.LexLeanCollections.iterateUntil ((fun (x : Nat) => (if (Nat.blt x (10 : Nat)) then (Option.some ((x + (2 : Nat))) : (Option Nat)) else (Option.none : (Option Nat)))))) (fun _ => rfl) (fun _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (p := __prog) (fi := 3) (ts := .nat) rfl (n) (start))) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) - -def denote (n : Nat) (start : Nat) : _root_.LexLeanPreservation.Obs := - _root_.cond (__fits_0 n start) (_root_.LexLeanPreservation.Obs.value (((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool)) (Coverage.Colls.iterations n start)))) _root_.LexLeanPreservation.Obs.overflow - -theorem root (n : Nat) (start : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat n), (_root_.LexLeanTarget.TargetSyntax.Value.nat start)] (_root_.LexLeanPreservation.Rel (__fits_0 n start) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool)) (Coverage.Colls.iterations n start))) := - _root_.LexLeanPreservation.run_of_funRel (__rel_0 n start) - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5 diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R5/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R5/Compose/RustStd.lex.tex deleted file mode 100644 index ec1bae8ba..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R5/Compose/RustStd.lex.tex +++ /dev/null @@ -1,468 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.Compose.RustStd.root : @924 := @925 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.RustStd.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.RustStd.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.RustStd.flags -@3 := Nat -@4 := #2 -@5 := LexLeanTarget.TargetSyntax.Value.nat -@6 := @5 @4 -@7 := LexLeanTarget.TargetSyntax.Ty.nat -@8 := LexLeanTarget.TargetSyntax.Program -@9 := LexLeanPreservation.Rust.RCrate -@10 := LexLeanPreservation.Rust.Flags -@11 := LexLeanPreservation.Rust.WT -@12 := #3 -@14 := @11 @12 @4 -@15 := #1 -@16 := @14 @15 -@17 := #0 -@18 := @5 @17 -@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 -@26 := LexLeanPreservation.Rust.wt_nat @0 -@27 := @11 @0 -@34 := {c : @9} -> {A : @10} -> (n : @3) -> @27 @4 @15 @18 @7 -@35 := @26 @1 -@36 := @27 @1 -@41 := {A : @10} -> (n : @3) -> @36 @15 @18 @7 -@42 := @35 @2 -@43 := @36 @2 -@46 := (n : @3) -> @43 @18 @7 -@47 := @42 @4 -@49 := @43 @6 @7 -@50 := @5 @15 -@51 := @42 @15 -@53 := @43 @50 @7 -@54 := LexLeanTarget.TargetSyntax.Value -@55 := List.nil.{0} -@56 := List.cons.{0} -@57 := @55 @54 -@58 := @56 @54 -@59 := @58 @50 -@60 := @59 @57 -@61 := @58 @6 -@62 := @61 @60 -@64 := Prod.{0, 0} @3 -@65 := @64 @54 -@66 := 1 -@69 := Prod.mk.{0, 0} @3 @54 -@70 := @69 @66 -@71 := @70 @50 -@72 := 0 -@73 := @69 @72 -@74 := @73 @6 -@75 := @55 @65 -@76 := @56 @65 -@78 := @76 @74 @75 -@80 := @76 @71 @78 -@81 := Bool.true -@82 := LexLeanTarget.TargetSyntax.Function -@83 := LexLeanTarget.TargetSyntax.Program.functions -@84 := @83 @0 -@85 := LexLeanTarget.TargetSyntax.Ty -@86 := @55 @3 -@87 := @55 @85 -@88 := LexLeanTarget.TargetSyntax.Ty.unit -@89 := LexLeanTarget.TargetSyntax.Value.unit -@92 := LexLeanTarget.TargetSyntax.Expr.value @88 @89 -@97 := LexLeanTarget.TargetSyntax.Function.mk @86 @87 @88 @92 -@102 := List.getD.{0} @82 @84 @72 @97 -@106 := fun (__e_n : @3) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.RustStd.root @17 @72 -@107 := LexLeanPreservation.Rust.WTL -@115 := {p : @8} -> {c : @9} -> {A : @10} -> @107 @4 @15 @17 @57 @87 -@117 := LexLeanPreservation.Rust.wtl_nil @0 -@118 := @107 @0 -@124 := {c : @9} -> {A : @10} -> @118 @15 @17 @57 @87 -@125 := @117 @1 -@126 := @118 @1 -@130 := {A : @10} -> @126 @17 @57 @87 -@131 := @125 @2 -@132 := @126 @2 -@133 := @132 @57 -@134 := @133 @87 -@135 := List.{0} -@136 := @135 @54 -@137 := @135 @85 -@138 := #6 -@139 := @11 @138 -@140 := #5 -@141 := @139 @140 -@142 := #4 -@145 := @141 @142 @12 @4 -@146 := #7 -@151 := @107 @146 @138 @140 @4 @15 -@152 := #8 -@155 := @107 @152 @146 @138 -@157 := @58 @140 @12 -@158 := @155 @157 -@159 := @56 @85 -@161 := @159 @142 @4 -@171 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {v : @54} -> {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @145) -> (hs : @151) -> @158 @161 -@173 := LexLeanPreservation.Rust.wtl_cons @0 -@193 := {c : @9} -> - {A : @10} -> - {v : @54} -> - {t : @85} -> - {vs : @136} -> - {ts : @137} -> - (h : @27 @140 @142 @12 @4) -> (hs : @118 @138 @140 @4 @15) -> @118 @146 @138 @157 @161 -@194 := @173 @1 -@210 := {A : @10} -> - {v : @54} -> - {t : @85} -> - {vs : @136} -> - {ts : @137} -> (h : @36 @142 @12 @4) -> (hs : @126 @140 @4 @15) -> @126 @138 @157 @161 -@211 := @194 @2 -@213 := @43 @12 @4 -@215 := @132 @4 @15 -@223 := {v : @54} -> - {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @213) -> (hs : @215) -> @132 @157 @161 -@224 := @211 @50 -@225 := @5 @142 -@226 := @43 @225 -@227 := @226 @4 -@228 := @5 @138 -@229 := @58 @228 -@231 := @132 (@229 @12) -@237 := {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @227) -> (hs : @215) -> @231 @161 -@238 := @224 @7 -@239 := @5 @12 -@241 := @43 @239 @7 -@242 := @5 @140 -@243 := @58 @242 -@245 := @132 (@243 @12) -@246 := @159 @7 -@247 := @246 @4 -@252 := {vs : @136} -> {ts : @137} -> (h : @241) -> (hs : @215) -> @245 @247 -@253 := @238 @57 -@254 := @133 @15 -@255 := @58 @225 -@256 := @255 @57 -@261 := {ts : @137} -> (h : @49) -> (hs : @254) -> @132 @256 @247 -@262 := @253 @87 -@263 := @58 @239 -@264 := @263 @57 -@265 := @132 @264 -@266 := @246 @87 -@269 := (h : @53) -> (hs : @134) -> @265 @266 -@270 := @262 @51 -@271 := @61 @57 -@273 := @132 @271 @266 -@274 := (hs : @134) -> @273 -@275 := @270 @131 -@277 := @132 @60 @266 -@278 := @211 @6 -@280 := @43 @242 @4 -@281 := @5 @146 -@282 := @58 @281 -@290 := {t : @85} -> {vs : @136} -> {ts : @137} -> (h : @280) -> (hs : @215) -> @132 (@282 @12) @161 -@291 := @278 @7 -@297 := {vs : @136} -> {ts : @137} -> (h : @226 @7) -> (hs : @215) -> @231 @247 -@298 := @291 @60 -@299 := @265 @15 -@300 := @243 @256 -@301 := @132 @300 -@305 := {ts : @137} -> (h : @241) -> (hs : @299) -> @301 @247 -@306 := @298 @266 -@307 := @255 @264 -@308 := @132 @307 -@309 := @246 @266 -@312 := (h : @49) -> (hs : @273) -> @308 @309 -@313 := @306 @47 -@314 := @263 @271 -@315 := @132 @314 -@317 := (hs : @277) -> @315 @309 -@318 := @313 @275 -@319 := @132 @62 -@320 := @319 @309 -@321 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.denote -@323 := @321 @4 @15 -@324 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.__fits_0 -@326 := @324 @4 @15 -@329 := Coverage.Colls.iterations @4 @15 -@330 := Bool -@331 := @64 @330 -@332 := LexLeanTarget.TargetSyntax.Value.bool -@334 := LexLeanPreservation.encPair @3 -@337 := @334 @330 @5 @332 -@341 := @334 @331 @5 @337 @329 -@344 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.root @4 @15 -@345 := Ne.{1} -@346 := LexLeanPreservation.Obs -@347 := @345 @346 -@348 := LexLeanPreservation.Rel -@351 := @347 (@348 @15 @17) -@352 := LexLeanPreservation.Obs.stuck -@355 := (f : @330) -> (v : @54) -> @351 @352 -@357 := LexLeanPreservation.Rust.rel_ne_stuck @326 -@364 := (v : @54) -> @347 (@348 (@324 @12 @4) @17) @352 -@365 := @357 @341 -@369 := @347 (@348 @326 @341) @352 -@370 := @135 @65 -@371 := LexLeanPreservation.Rust.FunSem -@372 := #9 -@378 := (n : @3) -> @371 @372 @152 @146 @17 @138 -@379 := Eq.{1} -@380 := Option.{0} -@381 := @380 @82 -@382 := @379 @381 -@389 := LexLeanRuntime.index (@135 @82) @82 (LexLeanRuntime.instIndexableList @82) -@393 := @382 (@389 (@83 @372) @138) -@394 := Option.some.{0} -@395 := @394 @82 -@396 := @395 @140 -@397 := @393 @396 -@398 := #10 -@402 := @107 @398 @372 @152 @140 -@403 := LexLeanTarget.TargetSyntax.Function.types -@404 := @403 @138 -@405 := @402 @404 -@406 := @380 @370 -@407 := @379 @406 -@408 := LexLeanTarget.TargetSemantics.bindAll -@409 := LexLeanTarget.TargetSyntax.Function.parameters -@414 := @407 (@408 (@409 @146) @138 @75) -@415 := @394 @370 -@416 := @415 @140 -@417 := @414 @416 -@418 := @380 @330 -@419 := @379 @418 -@420 := LexLeanPreservation.Rust.fnFallible -@421 := #11 -@424 := @419 (@420 @421 @372) -@425 := @394 @330 -@426 := @425 @140 -@427 := @424 @426 -@428 := LexLeanPreservation.RunConv -@429 := #13 -@433 := @428 @429 @398 @152 @140 -@435 := @347 @138 @352 -@436 := Exists.{1} -@437 := LexLeanPreservation.Rust.ROut -@438 := @436 @437 -@439 := And -@440 := LexLeanPreservation.Rust.RealizesFn -@444 := @439 (@440 @372 @152 @17) -@445 := LexLeanPreservation.Rust.RCI -@447 := @445 #15 -@448 := LexLeanPreservation.Rust.fnIdent -@449 := @448 @429 -@456 := (hne : @435) -> @438 (fun (ro : @437) => @444 (@447 @449 @421 @17)) -@471 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {f : @3} -> - {fn : @82} -> - {args : @136} -> - {env : @370} -> - {F : @330} -> - {o : @346} -> - (hB : @378) -> - (hfn : @397) -> (hwt : @405) -> (hbind : @417) -> (hF : @427) -> (hA : @433) -> @456 -@473 := LexLeanPreservation.Rust.compose @0 -@474 := @371 @0 -@479 := (n : @3) -> @474 @152 @146 @17 @138 -@480 := @389 @84 -@483 := @382 (@480 @138) @396 -@487 := @118 @372 @152 @140 @404 -@488 := @428 @0 -@491 := @488 @398 @152 @140 -@505 := {c : @9} -> - {A : @10} -> - {f : @3} -> - {fn : @82} -> - {args : @136} -> - {env : @370} -> - {F : @330} -> - {o : @346} -> - (hB : @479) -> - (hfn : @483) -> (hwt : @487) -> (hbind : @417) -> (hF : @427) -> (hA : @491) -> @456 -@506 := @473 @1 -@507 := @474 @1 -@511 := (n : @3) -> @507 @146 @17 @138 -@514 := @126 @152 @140 @404 -@515 := @420 @1 -@518 := @419 (@515 @372) @426 -@519 := @445 @1 -@529 := (hbind : @417) -> - (hF : @518) -> (hA : @491) -> (hne : @435) -> @438 (fun (ro : @437) => @444 (@519 @449 @421 @17)) -@539 := {A : @10} -> - {f : @3} -> - {fn : @82} -> - {args : @136} -> - {env : @370} -> {F : @330} -> {o : @346} -> (hB : @511) -> (hfn : @483) -> (hwt : @514) -> @529 -@540 := @506 @2 -@542 := @507 @2 @17 -@544 := (n : @3) -> @542 @138 -@545 := @132 @140 -@546 := @545 @404 -@555 := {f : @3} -> - {fn : @82} -> - {args : @136} -> - {env : @370} -> {F : @330} -> {o : @346} -> (hB : @544) -> (hfn : @483) -> (hwt : @546) -> @529 -@556 := @540 @72 -@558 := (n : @3) -> @542 @72 -@559 := @480 @72 -@560 := @382 @559 -@561 := @560 @396 -@562 := @515 @72 -@563 := @419 @562 -@564 := @563 @426 -@565 := @488 @72 -@567 := @565 @152 @140 -@569 := @519 (@448 @72) -@577 := (hF : @564) -> (hA : @567) -> (hne : @435) -> @438 (fun (ro : @437) => @444 (@569 @421 @17)) -@586 := {fn : @82} -> - {args : @136} -> - {env : @370} -> - {F : @330} -> {o : @346} -> (hB : @558) -> (hfn : @561) -> (hwt : @546) -> (hbind : @417) -> @577 -@587 := @556 @102 -@589 := @560 (@395 @102) -@590 := @403 @102 -@591 := @545 @590 -@593 := @408 (@409 @102) -@605 := {args : @136} -> - {env : @370} -> - {F : @330} -> - {o : @346} -> - (hB : @558) -> (hfn : @589) -> (hwt : @591) -> (hbind : @407 (@593 @138 @75) @416) -> @577 -@606 := @587 @62 -@608 := @282 (@229 @57) -@610 := @132 @608 @590 -@612 := @58 (@5 @152) -@614 := @612 (@282 @57) -@618 := @407 (@593 @614 @75) @416 -@620 := @58 (@5 @398) -@622 := @58 (@5 @372) -@624 := @620 (@622 @57) -@626 := @565 @624 @140 -@628 := @58 (@5 @429) -@631 := @58 (@5 #12) -@648 := {env : @370} -> - {F : @330} -> - {o : @346} -> - (hB : @558) -> - (hfn : @589) -> - (hwt : @610) -> - (hbind : @618) -> - (hF : @564) -> - (hA : @626) -> (hne : @435) -> @438 (fun (ro : @437) => @444 (@569 (@628 (@631 @57)) @17)) -@649 := @606 @80 -@651 := @229 (@243 @57) -@653 := @132 @651 @590 -@664 := @407 (@593 @608 @75) (@415 (@76 (@70 @228) (@76 (@73 @281) @75))) -@666 := @622 (@612 @57) -@668 := @565 @666 @140 -@670 := @58 (@5 @421) -@686 := {F : @330} -> - {o : @346} -> - (hB : @558) -> - (hfn : @589) -> - (hwt : @653) -> - (hbind : @664) -> - (hF : @564) -> - (hA : @668) -> (hne : @435) -> @438 (fun (ro : @437) => @444 (@569 (@631 (@670 @57)) @17)) -@687 := @649 @81 -@688 := @301 @590 -@699 := @407 (@593 @651 @75) (@415 (@76 (@70 @242) (@76 (@73 @228) @75))) -@701 := @563 (@425 @81) -@703 := @565 @614 @140 -@704 := @440 @81 -@722 := {o : @346} -> - (hB : @558) -> - (hfn : @589) -> - (hwt : @688) -> - (hbind : @699) -> - (hF : @701) -> - (hA : @703) -> - (hne : @435) -> @438 (fun (ro : @437) => @439 (@704 @152 @17) (@569 (@670 (@620 @57)) @17)) -@723 := @687 @323 -@724 := @308 @590 -@735 := @407 (@593 @300 @75) (@415 (@76 (@70 @225) (@76 (@73 @242) @75))) -@736 := @565 @608 -@738 := @321 @146 @138 -@739 := @736 @738 -@741 := @321 @152 @146 -@760 := (hB : @558) -> - (hfn : @589) -> - (hwt : @724) -> - (hbind : @735) -> - (hF : @701) -> - (hA : @739) -> - (hne : @347 @741 @352) -> - @438 (fun (ro : @437) => @439 (@704 (@321 @398 @372) @17) (@569 @624 @17)) -@761 := @723 @106 -@762 := @315 @590 -@773 := @407 (@593 @307 @75) (@415 (@76 (@70 @239) (@76 (@73 @225) @75))) -@774 := @565 @651 -@776 := @321 @138 @140 -@795 := (hfn : @589) -> - (hwt : @762) -> - (hbind : @773) -> - (hF : @701) -> - (hA : @774 @776) -> - (hne : @347 @738 @352) -> - @438 (fun (ro : @437) => @439 (@704 (@321 @372 @152) @17) (@569 @666 @17)) -@796 := Eq.refl.{1} -@799 := @761 (@796 @381 @559) -@800 := @319 @590 -@811 := @407 (@593 @314 @75) (@415 (@76 (@70 @6) (@76 (@73 @239) @75))) -@812 := @565 @300 -@814 := @321 @140 @142 -@830 := (hwt : @800) -> - (hbind : @811) -> - (hF : @701) -> - (hA : @812 @814) -> - (hne : @347 @776 @352) -> @438 (fun (ro : @437) => @439 (@704 @741 @17) (@569 @614 @17)) -@831 := @799 @318 -@833 := @593 @62 @75 -@836 := @407 @833 (@415 @80) -@837 := @565 @307 -@839 := @321 @142 @12 -@854 := (hbind : @836) -> - (hF : @701) -> - (hA : @837 @839) -> - (hne : @347 @814 @352) -> @438 (fun (ro : @437) => @439 (@704 @738 @17) (@569 @608 @17)) -@857 := @831 (@796 @406 @833) -@858 := @565 @314 -@860 := @321 @12 @4 -@874 := (hF : @701) -> - (hA : @858 @860) -> - (hne : @347 @839 @352) -> @438 (fun (ro : @437) => @439 (@704 @776 @17) (@569 @651 @17)) -@877 := @857 (@796 @418 @562) -@891 := (hA : @565 @62 @323) -> - (hne : @347 @860 @352) -> @438 (fun (ro : @437) => @439 (@704 @814 @17) (@569 @300 @17)) -@892 := @877 @344 -@903 := (hne : @347 @323 @352) -> @438 (fun (ro : @437) => @439 (@704 @839 @17) (@569 @307 @17)) -@904 := @892 @365 -@910 := @439 (@704 @860 @17) (@569 @314 @17) -@912 := @438 (fun (ro : @437) => @910) -@914 := @438 (fun (__e_ro : @437) => @910) -@919 := LexLeanPreservation.Rust.RepresentableL (@59 (@58 @18 @57)) -@920 := (__e_hrep : @919) -> @914 -@921 := fun (__e_hrep : @919) => @904 -@922 := (start : @3) -> @920 -@923 := fun (start : @3) => @921 -@924 := (n : @3) -> @922 -@925 := fun (n : @3) => @923 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R5/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R5/RustStd.lean deleted file mode 100644 index 83633ae55..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R5/RustStd.lean +++ /dev/null @@ -1,69 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1], types := [.nat, .nat], result := (.pair .nat (.pair .nat .bool)), - body := (.build .pair (.pair .nat (.pair .nat .bool)) [(.call 1 [(.closure 2 []), (.var 0), (.var 1)]), (.call 3 [(.closure 4 []), (.var 0), (.var 1)])]) }, - { parameters := [0, 1, 2], types := [(.fn [.nat] .nat), .nat, .nat], result := .nat, - body := (.«match» .nat (.var 1) [(.arm .zero [] (.var 2)), (.arm .succ [3] (.call 1 [(.var 0), (.var 3), (.apply (.var 0) [(.var 2)])]))]) }, - { parameters := [0], types := [.nat], result := .nat, - body := (.prim .natAdd [(.var 0), (.value .nat (.nat 1))]) }, - { parameters := [0, 1, 2], types := [(.fn [.nat] (.option .nat)), .nat, .nat], result := (.pair .nat .bool), - body := (.«match» (.pair .nat .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair .nat .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair .nat .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair .nat .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 3 [(.var 0), (.var 3), (.var 4)]))]))]) }, - { parameters := [0], types := [.nat], result := (.option .nat), - body := (.cond (.prim .natLt [(.var 0), (.value .nat (.nat 10))]) (.build .some (.option .nat) [(.prim .natAdd [(.var 0), (.value .nat (.nat 2))])]) (.build .none (.option .nat) [])) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.enum (.fn 0) [{ number := 2, fields := [] }]), - (.apply 0 [.nat] .nat true [{ function := 2, captures := [], functionFallible := true }]), - (.enum (.fn 1) [{ number := 4, fields := [] }]), - (.apply 1 [.nat] (.option .nat) true [{ function := 4, captures := [], functionFallible := true }]), - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.pair .nat (.pair .nat .bool))) (.mk [] (.succeed (.pair (.call (.function 1) [(.construct (.closure 0 2) []), (.copy (.generated .binding 0)), (.copy (.generated .binding 1))] true) (.call (.function 3) [(.construct (.closure 1 4) []), (.copy (.generated .binding 0)), (.copy (.generated .binding 1))] true))))), - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 1)) none (.copy (.generated .binding 1)))] (.cond (.isZero (.generated .holder 1)) (.mk [] (.succeed (.copy (.generated .binding 2)))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 1)))] (.call (.function 1) [(.clone (.generated .binding 0)), (.copy (.generated .binding 3)), (.block (.mk [(.mk (.bind (.generated .callee 2)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 2) [(.copy (.generated .binding 2))] true)))] false))))), - (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))), - (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 1) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.fallible (.pair .nat .bool)) (.mk [(.mk (.bind (.generated .holder 5)) none (.copy (.generated .binding 1)))] (.cond (.isZero (.generated .holder 5)) (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 5))), (.mk (.bind (.generated .holder 7)) none (.block (.mk [(.mk (.bind (.generated .callee 6)) (some (.fn 1)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 6) [(.copy (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 7)) [(.mk .none (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 3) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)))]))))), - (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible (.option .nat)) (.mk [(.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 9)) none (.lit (.nat 10)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 8)), (.move (.generated .operand 9))] false) (.mk [] (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 11)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] true)))]))) (.mk [] (.succeed (.construct (.none .nat) []))))))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [(([.nat], .nat), true), (([.nat], (.option .nat)), true)] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [], (.succeed (.pair (.call (.function 1) [(.construct (.closure 0 2) []), (.copy (.generated .binding 0)), (.copy (.generated .binding 1))] true) (.call (.function 3) [(.construct (.closure 1 4) []), (.copy (.generated .binding 0)), (.copy (.generated .binding 1))] true))), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.fn [.nat] .nat), .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.fn [.nat] (.option .nat)), .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lNil))))))⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.copy (.generated .binding 1)))], (.cond (.isZero (.generated .holder 1)) (.mk [] (.succeed (.copy (.generated .binding 2)))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 1)))] (.call (.function 1) [(.clone (.generated .binding 0)), (.copy (.generated .binding 3)), (.block (.mk [(.mk (.bind (.generated .callee 2)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 2) [(.copy (.generated .binding 2))] true)))] false))), [(2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat] .nat), (some 0))], rfl, rfl, - (Corr.matchNat (sl := (some 3)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.succeed (.copy (.generated .binding 2)))) (lb := []) (tb := (.call (.function 1) [(.clone (.generated .binding 0)), (.copy (.generated .binding 3)), (.block (.mk [(.mk (.bind (.generated .callee 2)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 2) [(.copy (.generated .binding 2))] true)))] false)) (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl))) (Corr.callF (ts := [(.fn [.nat] .nat), .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 2)) (some (.fn 0)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 2) [(.copy (.generated .binding 2))] true)) (Corr.apply (ps := [.nat]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl)))⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.lit (.nat 1)))], (.call (.runtime .natAdd) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false), [(0, .nat, (some 0))], rfl, rfl, - (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun3 : FunOK program krate flags 3 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 5)) none (.copy (.generated .binding 1)))], (.cond (.isZero (.generated .holder 5)) (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 5))), (.mk (.bind (.generated .holder 7)) none (.block (.mk [(.mk (.bind (.generated .callee 6)) (some (.fn 1)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 6) [(.copy (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 7)) [(.mk .none (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 3) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)))]))), [(2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat] (.option .nat)), (some 0))], rfl, rfl, - (Corr.matchNat (sl := (some 3)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool false))))) (lb := [(.mk (.bind (.generated .holder 7)) none (.block (.mk [(.mk (.bind (.generated .callee 6)) (some (.fn 1)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 6) [(.copy (.generated .binding 2))] true))))]) (tb := (.matchOn (.move (.generated .holder 7)) [(.mk .none (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 3) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)))])) (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))))) (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 6)) (some (.fn 1)) (.clone (.generated .binding 0)))]) (tail := (.apply (.generated .callee 6) [(.copy (.generated .binding 2))] true)) (Corr.apply (ps := [.nat]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat] (.option .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true))))) (Corr.mCons (Γ' := [(4, .nat, (some 4)), (3, .nat, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat] (.option .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 3) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [.nat] (.option .nat)), .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))))))) rfl rfl rfl)))⟩⟩ - -theorem fun4 : FunOK program krate flags 4 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 9)) none (.lit (.nat 10)))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 8)), (.move (.generated .operand 9))] false) (.mk [] (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 11)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] true)))]))) (.mk [] (.succeed (.construct (.none .nat) [])))), [(0, .nat, (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 9)) none (.lit (.nat 10)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 8)), (.move (.generated .operand 9))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 11)) none (.lit (.nat 2)))] (.call (.runtime .natAdd) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] true)))]))) (lb := []) (tb := (.succeed (.construct (.none .nat) []))) (Corr.fOfB (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 11)) none (.lit (.nat 2)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 10)), (.move (.generated .operand 11))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | 3 => exact fun3 - | 4 => exact fun4 - | _ + 5 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R6.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R6.lean deleted file mode 100644 index ffccc2956..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R6.lean +++ /dev/null @@ -1,154 +0,0 @@ -import LexLeanPreservation.Core -import LexLeanPreservation.Values -import LexLeanPreservation.Primitives -import LexLeanPreservation.Fixed -import LexLeanPreservation.Keys -import LexLeanPreservation.Templates -import LexLeanPreservation.Validate -import Coverage.Boundary -import Coverage.Colls -import Coverage.Main -import Coverage.Prims -import Coverage.RecRoots -import Coverage.Recur -import Coverage.Syntax -import Coverage.Types -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -set_option linter.unusedVariables false -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6 - -def __prog : _root_.LexLeanTarget.TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1], types := [(.list (.pair .nat (.list .nat))), .nat], result := (.pair (.list .nat) (.pair (.list .nat) (.option (.list .nat)))), - body := (.build .pair (.pair (.list .nat) (.pair (.list .nat) (.option (.list .nat)))) [(.call 1 [(.var 0), (.var 1)]), (.build .pair (.pair (.list .nat) (.option (.list .nat))) [(.call 3 [(.var 0), (.var 1)]), (.call 16 [(.var 0)])])]) }, - { parameters := [0, 1], types := [(.list (.pair .nat (.list .nat))), .nat], result := (.list .nat), - body := (.«match» (.list .nat) (.call 2 [(.var 0), (.var 1)]) [(.arm .none [] (.build .nil (.list .nat) [])), (.arm .some [2] (.var 2))]) }, - { parameters := [0, 1], types := [(.list (.pair .nat (.list .nat))), .nat], result := (.option (.list .nat)), - body := (.«match» (.option (.list .nat)) (.var 0) [(.arm .nil [] (.build .none (.option (.list .nat)) [])), (.arm .cons [2, 3] (.«match» (.option (.list .nat)) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.build .none (.option (.list .nat)) [])), (.arm .eq [] (.build .some (.option (.list .nat)) [(.second (.var 2))])), (.arm .gt [] (.call 2 [(.var 3), (.var 1)]))]))]) }, - { parameters := [0, 1], types := [(.list (.pair .nat (.list .nat))), .nat], result := (.list .nat), - body := (.call 4 [(.var 0), (.prim .natAdd [(.prim .length [(.call 13 [(.var 0), (.build .nil (.list .nat) [])])]), (.value .nat (.nat 1))]), (.build .cons (.list .nat) [(.var 1), (.build .nil (.list .nat) [])]), (.build .cons (.list .nat) [(.var 1), (.build .nil (.list .nat) [])])]) }, - { parameters := [0, 1, 2, 3], types := [(.list (.pair .nat (.list .nat))), .nat, (.list .nat), (.list .nat)], result := (.list .nat), - body := (.«match» (.list .nat) (.var 1) [(.arm .zero [] (.var 3)), (.arm .succ [4] (.«let» 5 (.list .nat) (.call 5 [(.var 0), (.var 3), (.var 2), (.build .nil (.list .nat) [])]) (.«match» (.list .nat) (.var 5) [(.arm .nil [] (.var 3)), (.arm .cons [6, 7] (.call 4 [(.var 0), (.var 4), (.var 5), (.call 11 [(.var 3), (.var 5)])]))])))]) }, - { parameters := [0, 1, 2, 3], types := [(.list (.pair .nat (.list .nat))), (.list .nat), (.list .nat), (.list .nat)], result := (.list .nat), - body := (.«match» (.list .nat) (.var 2) [(.arm .nil [] (.var 3)), (.arm .cons [4, 5] (.call 5 [(.var 0), (.var 1), (.var 5), (.call 6 [(.var 1), (.call 7 [(.var 0), (.var 4)]), (.var 3)])]))]) }, - { parameters := [0, 1, 2], types := [(.list .nat), (.list .nat), (.list .nat)], result := (.list .nat), - body := (.«match» (.list .nat) (.var 1) [(.arm .nil [] (.var 2)), (.arm .cons [3, 4] (.call 6 [(.var 0), (.var 4), (.cond (.call 9 [(.var 0), (.var 3)]) (.var 2) (.cond (.call 9 [(.var 2), (.var 3)]) (.var 2) (.call 10 [(.var 2), (.var 3)])))]))]) }, - { parameters := [0, 1], types := [(.list (.pair .nat (.list .nat))), .nat], result := (.list .nat), - body := (.«match» (.list .nat) (.call 8 [(.var 0), (.var 1)]) [(.arm .none [] (.build .nil (.list .nat) [])), (.arm .some [2] (.var 2))]) }, - { parameters := [0, 1], types := [(.list (.pair .nat (.list .nat))), .nat], result := (.option (.list .nat)), - body := (.«match» (.option (.list .nat)) (.var 0) [(.arm .nil [] (.build .none (.option (.list .nat)) [])), (.arm .cons [2, 3] (.«match» (.option (.list .nat)) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.build .none (.option (.list .nat)) [])), (.arm .eq [] (.build .some (.option (.list .nat)) [(.second (.var 2))])), (.arm .gt [] (.call 8 [(.var 3), (.var 1)]))]))]) }, - { parameters := [0, 1], types := [(.list .nat), .nat], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .false .bool [])), (.arm .cons [2, 3] (.«match» .bool (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .false .bool [])), (.arm .eq [] (.build .true .bool [])), (.arm .gt [] (.call 9 [(.var 3), (.var 1)]))]))]) }, - { parameters := [0, 1], types := [(.list .nat), .nat], result := (.list .nat), - body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.build .cons (.list .nat) [(.var 1), (.build .nil (.list .nat) [])])), (.arm .cons [2, 3] (.«match» (.list .nat) (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .cons (.list .nat) [(.var 1), (.var 0)])), (.arm .eq [] (.var 0)), (.arm .gt [] (.build .cons (.list .nat) [(.var 2), (.call 10 [(.var 3), (.var 1)])]))]))]) }, - { parameters := [0, 1], types := [(.list .nat), (.list .nat)], result := (.list .nat), - body := (.«match» (.list .nat) (.var 1) [(.arm .nil [] (.var 0)), (.arm .cons [2, 3] (.call 11 [(.call 12 [(.var 0), (.var 2)]), (.var 3)]))]) }, - { parameters := [0, 1], types := [(.list .nat), .nat], result := (.list .nat), - body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.build .cons (.list .nat) [(.var 1), (.build .nil (.list .nat) [])])), (.arm .cons [2, 3] (.«match» (.list .nat) (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .cons (.list .nat) [(.var 1), (.var 0)])), (.arm .eq [] (.var 0)), (.arm .gt [] (.build .cons (.list .nat) [(.var 2), (.call 12 [(.var 3), (.var 1)])]))]))]) }, - { parameters := [0, 1], types := [(.list (.pair .nat (.list .nat))), (.list .nat)], result := (.list .nat), - body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.var 1)), (.arm .cons [2, 3] (.call 13 [(.var 3), (.call 14 [(.second (.var 2)), (.call 15 [(.var 1), (.first (.var 2))])])]))]) }, - { parameters := [0, 1], types := [(.list .nat), (.list .nat)], result := (.list .nat), - body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.var 1)), (.arm .cons [2, 3] (.call 14 [(.var 3), (.call 15 [(.var 1), (.var 2)])]))]) }, - { parameters := [0, 1], types := [(.list .nat), .nat], result := (.list .nat), - body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.build .cons (.list .nat) [(.var 1), (.build .nil (.list .nat) [])])), (.arm .cons [2, 3] (.«match» (.list .nat) (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .cons (.list .nat) [(.var 1), (.var 0)])), (.arm .eq [] (.var 0)), (.arm .gt [] (.build .cons (.list .nat) [(.var 2), (.call 15 [(.var 3), (.var 1)])]))]))]) }, - { parameters := [0], types := [(.list (.pair .nat (.list .nat)))], result := (.option (.list .nat)), - body := (.«let» 1 (.list .nat) (.call 21 [(.var 0), (.build .nil (.list .nat) [])]) (.call 17 [(.var 0), (.prim .natAdd [(.prim .length [(.var 1)]), (.value .nat (.nat 1))]), (.var 1), (.build .nil (.list .nat) [])])) }, - { parameters := [0, 1, 2, 3], types := [(.list (.pair .nat (.list .nat))), .nat, (.list .nat), (.list .nat)], result := (.option (.list .nat)), - body := (.«match» (.option (.list .nat)) (.var 1) [(.arm .zero [] (.«match» (.option (.list .nat)) (.var 2) [(.arm .nil [] (.build .some (.option (.list .nat)) [(.call 20 [(.var 3), (.build .nil (.list .nat) [])])])), (.arm .cons [4, 5] (.build .none (.option (.list .nat)) []))])), (.arm .succ [6] (.«match» (.option (.list .nat)) (.call 18 [(.var 0), (.var 2), (.var 2)]) [(.arm .nil [] (.«match» (.option (.list .nat)) (.var 2) [(.arm .nil [] (.build .some (.option (.list .nat)) [(.call 20 [(.var 3), (.build .nil (.list .nat) [])])])), (.arm .cons [7, 8] (.build .none (.option (.list .nat)) []))])), (.arm .cons [9, 10] (.call 17 [(.var 0), (.var 6), (.call 27 [(.var 2), (.var 9)]), (.build .cons (.list .nat) [(.var 9), (.var 3)])]))]))]) }, - { parameters := [0, 1, 2], types := [(.list (.pair .nat (.list .nat))), (.list .nat), (.list .nat)], result := (.list .nat), - body := (.«match» (.list .nat) (.var 2) [(.arm .nil [] (.build .nil (.list .nat) [])), (.arm .cons [3, 4] (.cond (.call 19 [(.var 0), (.var 3), (.var 1)]) (.build .cons (.list .nat) [(.var 3), (.call 18 [(.var 0), (.var 1), (.var 4)])]) (.call 18 [(.var 0), (.var 1), (.var 4)])))]) }, - { parameters := [0, 1, 2], types := [(.list (.pair .nat (.list .nat))), .nat, (.list .nat)], result := .bool, - body := (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.call 26 [(.call 24 [(.var 0), (.var 3)]), (.var 1)]) (.build .false .bool []) (.call 19 [(.var 0), (.var 1), (.var 4)])))]) }, - { parameters := [0, 1], types := [(.list .nat), (.list .nat)], result := (.list .nat), - body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.var 1)), (.arm .cons [2, 3] (.call 20 [(.var 3), (.build .cons (.list .nat) [(.var 2), (.var 1)])]))]) }, - { parameters := [0, 1], types := [(.list (.pair .nat (.list .nat))), (.list .nat)], result := (.list .nat), - body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.var 1)), (.arm .cons [2, 3] (.call 21 [(.var 3), (.call 22 [(.second (.var 2)), (.call 23 [(.var 1), (.first (.var 2))])])]))]) }, - { parameters := [0, 1], types := [(.list .nat), (.list .nat)], result := (.list .nat), - body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.var 1)), (.arm .cons [2, 3] (.call 22 [(.var 3), (.call 23 [(.var 1), (.var 2)])]))]) }, - { parameters := [0, 1], types := [(.list .nat), .nat], result := (.list .nat), - body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.build .cons (.list .nat) [(.var 1), (.build .nil (.list .nat) [])])), (.arm .cons [2, 3] (.«match» (.list .nat) (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .cons (.list .nat) [(.var 1), (.var 0)])), (.arm .eq [] (.var 0)), (.arm .gt [] (.build .cons (.list .nat) [(.var 2), (.call 23 [(.var 3), (.var 1)])]))]))]) }, - { parameters := [0, 1], types := [(.list (.pair .nat (.list .nat))), .nat], result := (.list .nat), - body := (.«match» (.list .nat) (.call 25 [(.var 0), (.var 1)]) [(.arm .none [] (.build .nil (.list .nat) [])), (.arm .some [2] (.var 2))]) }, - { parameters := [0, 1], types := [(.list (.pair .nat (.list .nat))), .nat], result := (.option (.list .nat)), - body := (.«match» (.option (.list .nat)) (.var 0) [(.arm .nil [] (.build .none (.option (.list .nat)) [])), (.arm .cons [2, 3] (.«match» (.option (.list .nat)) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.build .none (.option (.list .nat)) [])), (.arm .eq [] (.build .some (.option (.list .nat)) [(.second (.var 2))])), (.arm .gt [] (.call 25 [(.var 3), (.var 1)]))]))]) }, - { parameters := [0, 1], types := [(.list .nat), .nat], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .false .bool [])), (.arm .cons [2, 3] (.«match» .bool (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .false .bool [])), (.arm .eq [] (.build .true .bool [])), (.arm .gt [] (.call 26 [(.var 3), (.var 1)]))]))]) }, - { parameters := [0, 1], types := [(.list .nat), .nat], result := (.list .nat), - body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.build .nil (.list .nat) [])), (.arm .cons [2, 3] (.«match» (.list .nat) (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.var 0)), (.arm .eq [] (.var 3)), (.arm .gt [] (.build .cons (.list .nat) [(.var 2), (.call 27 [(.var 3), (.var 1)])]))]))]) }, - { parameters := [0], types := [(.list (.pair .nat (.list .nat)))], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 29 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 28 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, - { parameters := [0], types := [(.list .nat)], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.var 1), (.var 3)]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 29 [(.var 2)]) (.build .false .bool [])))]))]) }, - { parameters := [0, 1], types := [(.list (.pair .nat (.list .nat))), .nat], result := (.option (.pair (.list .nat) (.pair (.list .nat) (.option (.list .nat))))), - body := (.cond (.call 28 [(.var 0)]) (.build .some (.option (.pair (.list .nat) (.pair (.list .nat) (.option (.list .nat))))) [(.call 0 [(.var 0), (.var 1)])]) (.build .none (.option (.pair (.list .nat) (.pair (.list .nat) (.option (.list .nat))))) [])) }] } - -def __fits_0 (g : (List (Prod Nat (List Nat)))) (start : Nat) : Bool := - ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((((Bool.true && (Bool.true && Bool.true)) && (_root_.LexLeanPreservation.graphFits _root_.LexLeanCollections.insertElement (g))) && (((Bool.true && Bool.true) && (_root_.LexLeanPreservation.graphFits _root_.LexLeanCollections.insertElement (g))) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) - -theorem __rel_0 (g : (List (Prod Nat (List Nat)))) (start : Nat) : _root_.LexLeanPreservation.FunRel __prog 0 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat))) g), (_root_.LexLeanTarget.TargetSyntax.Value.nat start)] (_root_.LexLeanPreservation.Rel (__fits_0 g start) ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)))) (Coverage.Colls.graphs g start))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.tpl_graphSuccessors (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat))) (fun _ => rfl) _root_.LexLeanCollections.lookupEntry (fun _ => rfl) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (p := __prog) (fi := 1) (tk := .nat) rfl rfl (g) (start))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.tpl_graphReachable (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat))) (fun _ => rfl) (⟨(fun _ => rfl), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.insertElement, __h]), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.insertElement, __h]), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.insertElement, __h]), (fun _ => rfl), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.removeElement, __h]), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.removeElement, __h]), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.removeElement, __h]), (fun _ => rfl), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.containsElement, __h]), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.containsElement, __h]), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.containsElement, __h])⟩ : _root_.LexLeanPreservation.SetOps (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) _root_.LexLeanCollections.insertElement _root_.LexLeanCollections.removeElement _root_.LexLeanCollections.containsElement) (⟨(fun _ => rfl), (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]), (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]), (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h])⟩ : _root_.LexLeanPreservation.LookOps (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (_root_.LexLeanCollections.lookupEntry : Nat -> List (Prod Nat (List Nat)) -> Option (List Nat))) (g) (_root_.LexLeanCollections.graphSuccessors (g)) (fun _ => rfl) (_root_.LexLeanCollections.reachableFrom (g)) (fun _ _ => rfl) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.reachableFrom, __h]) (fun _ _ _ _ _ __h => by simp only [_root_.LexLeanCollections.reachableFrom, __h]) (p := __prog) (fi := 3) (tk := .nat) rfl rfl rfl rfl rfl rfl rfl rfl rfl rfl rfl rfl rfl (start))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.tpl_graphTopological (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat))) (fun _ => rfl) (_root_.LexLeanPreservation.optEnc (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) (⟨(fun _ => rfl), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.insertElement, __h]), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.insertElement, __h]), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.insertElement, __h]), (fun _ => rfl), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.removeElement, __h]), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.removeElement, __h]), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.removeElement, __h]), (fun _ => rfl), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.containsElement, __h]), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.containsElement, __h]), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.containsElement, __h])⟩ : _root_.LexLeanPreservation.SetOps (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) _root_.LexLeanCollections.insertElement _root_.LexLeanCollections.removeElement _root_.LexLeanCollections.containsElement) (⟨(fun _ => rfl), (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]), (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]), (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h])⟩ : _root_.LexLeanPreservation.LookOps (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (_root_.LexLeanCollections.lookupEntry : Nat -> List (Prod Nat (List Nat)) -> Option (List Nat))) (g) (_root_.LexLeanCollections.graphSuccessors (g)) (fun _ => rfl) (⟨(fun _ => rfl), (fun _ _ _ => rfl), (fun _ _ => rfl), (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.topological, __h] <;> rfl), (fun _ _ _ _ _ __h => by simp only [_root_.LexLeanCollections.topological, __h])⟩ : _root_.LexLeanPreservation.TopoOps (_root_.LexLeanCollections.graphSuccessors (g)) _root_.LexLeanCollections.containsElement _root_.LexLeanCollections.removeElement (_root_.LexLeanCollections.topological (g))) (p := __prog) (fi := 16) (tk := .nat) rfl rfl rfl rfl rfl rfl rfl rfl rfl rfl rfl rfl)) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) - -def denote (g : (List (Prod Nat (List Nat)))) (start : Nat) : _root_.LexLeanPreservation.Obs := - _root_.cond (__fits_0 g start) (_root_.LexLeanPreservation.Obs.value (((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)))) (Coverage.Colls.graphs g start)))) _root_.LexLeanPreservation.Obs.overflow - -theorem root (g : (List (Prod Nat (List Nat)))) (start : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat))) g), (_root_.LexLeanTarget.TargetSyntax.Value.nat start)] (_root_.LexLeanPreservation.Rel (__fits_0 g start) ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)))) (Coverage.Colls.graphs g start))) := - _root_.LexLeanPreservation.run_of_funRel (__rel_0 g start) - -def __valid_29 : (List Nat) -> Bool := - _root_.LexLeanPreservation.ascSet (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) - -def __inv_29 : (List Nat) -> Prop := - _root_.LexLeanPreservation.InvSet (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) - -theorem __viff_29 : ∀ (__v : (List Nat)), __valid_29 __v = Bool.true ↔ __inv_29 __v := - _root_.LexLeanPreservation.ascSet_inv (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) - -theorem __vrel_29 : ∀ (__v : (List Nat)), _root_.LexLeanPreservation.FunRel __prog 29 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_29 __v))) := - _root_.LexLeanPreservation.tpl_validSet (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) rfl - -def __valid_28 : (List (Prod Nat (List Nat))) -> Bool := - _root_.LexLeanPreservation.ascMap (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) __valid_29 - -def __inv_28 : (List (Prod Nat (List Nat))) -> Prop := - _root_.LexLeanPreservation.InvMap (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) __inv_29 - -theorem __viff_28 : ∀ (__v : (List (Prod Nat (List Nat)))), __valid_28 __v = Bool.true ↔ __inv_28 __v := - _root_.LexLeanPreservation.ascMap_inv (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) __valid_29 __inv_29 __viff_29 - -theorem __vrel_28 : ∀ (__v : (List (Prod Nat (List Nat)))), _root_.LexLeanPreservation.FunRel __prog 28 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat))) __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_28 __v))) := - _root_.LexLeanPreservation.tpl_validMap (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) __valid_29 (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat))) (fun _ => rfl) __vrel_29 rfl - -def entryFits (g : (List (Prod Nat (List Nat)))) (start : Nat) : Bool := - (if __valid_28 g then __fits_0 g start else Bool.true) - -def entryValue (g : (List (Prod Nat (List Nat)))) (start : Nat) : _root_.LexLeanTarget.TargetSyntax.Value := - (if __valid_28 g then (_root_.LexLeanTarget.TargetSyntax.Value.some ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)))) (Coverage.Colls.graphs g start))) else _root_.LexLeanTarget.TargetSyntax.Value.none) - -/-- The entry's observation. -/ -def denoteEntry (g : (List (Prod Nat (List Nat)))) (start : Nat) : _root_.LexLeanPreservation.Obs := - _root_.cond (_root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.entryFits g start) (_root_.LexLeanPreservation.Obs.value (_root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.entryValue g start)) _root_.LexLeanPreservation.Obs.overflow - -/-- §17.12's invariants of the validated parameters. -/ -def accepts (g : (List (Prod Nat (List Nat)))) (start : Nat) : Prop := - (__inv_28 g ∧ _root_.True) - -theorem entry (g : (List (Prod Nat (List Nat)))) (start : Nat) : _root_.LexLeanPreservation.RunConv __prog 30 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat))) g), (_root_.LexLeanTarget.TargetSyntax.Value.nat start)] (_root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.denoteEntry g start) := - _root_.LexLeanPreservation.run_of_funRel (_root_.LexLeanPreservation.FunRel.fits_eq (_root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun __c => if __c then __fits_0 g start else Bool.true) (fun __c => if __c then (_root_.LexLeanTarget.TargetSyntax.Value.some ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)))) (Coverage.Colls.graphs g start))) else _root_.LexLeanTarget.TargetSyntax.Value.none) (__valid_28 g) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_28 g)) (fun _ => _root_.LexLeanPreservation.Conv.fits_eq (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_0 g start)) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some) (by simp)) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (by simp [_root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.entryFits])) - -theorem entry_accepts (g : (List (Prod Nat (List Nat)))) (start : Nat) (__h : _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.accepts g start) : _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.denoteEntry g start = _root_.LexLeanPreservation.someObs (_root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.denote g start) := by - unfold _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.accepts at __h - unfold _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.denoteEntry _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.entryFits _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.entryValue _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.denote - simp only [_root_.if_true, (__viff_28 g).mpr __h.1] - cases __fits_0 g start <;> rfl - -theorem entry_refuses (g : (List (Prod Nat (List Nat)))) (start : Nat) (__h : ¬ _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.accepts g start) : _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.denoteEntry g start = _root_.LexLeanPreservation.Obs.value _root_.LexLeanTarget.TargetSyntax.Value.none := by - unfold _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.accepts at __h - unfold _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.denoteEntry _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.entryFits _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.entryValue - cases __c0 : __valid_28 g - · simp - · exact _root_.absurd ⟨(__viff_28 g).mp __c0, _root_.trivial⟩ __h - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6 diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R6/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R6/Compose/RustStd.lex.tex deleted file mode 100644 index d00c6b267..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R6/Compose/RustStd.lex.tex +++ /dev/null @@ -1,676 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.Compose.RustStd.root : @1387 := @1388 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.RustStd.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.RustStd.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.RustStd.flags -@3 := Nat -@4 := List.{0} -@5 := @4 @3 -@6 := Prod.{0, 0} -@7 := @6 @3 -@8 := @7 @5 -@9 := @4 @8 -@10 := #2 -@11 := LexLeanTarget.TargetSyntax.Value.nat -@12 := LexLeanPreservation.encList -@13 := @12 @3 -@14 := @13 @11 -@15 := LexLeanPreservation.encPair -@16 := @15 @3 -@17 := @16 @5 -@18 := @17 @11 -@19 := @18 @14 -@20 := @12 @8 -@21 := @20 @19 -@22 := @21 @10 -@23 := LexLeanTarget.TargetSyntax.Ty.nat -@24 := LexLeanTarget.TargetSyntax.Ty.list -@25 := @24 @23 -@26 := LexLeanTarget.TargetSyntax.Ty.pair -@27 := @26 @23 -@28 := @27 @25 -@29 := @24 @28 -@30 := #0 -@31 := LexLeanTarget.TargetSyntax.Program -@32 := LexLeanPreservation.Rust.RCrate -@33 := LexLeanPreservation.Rust.Flags -@34 := LexLeanPreservation.Rust.WT -@35 := #3 -@37 := @34 @35 @10 -@38 := #1 -@39 := @37 @38 -@40 := @11 @30 -@46 := {p : @31} -> {c : @32} -> {A : @33} -> (n : @3) -> @39 @40 @23 -@48 := LexLeanPreservation.Rust.wt_nat @0 -@49 := @34 @0 -@56 := {c : @32} -> {A : @33} -> (n : @3) -> @49 @10 @38 @40 @23 -@57 := @48 @1 -@58 := @49 @1 -@63 := {A : @33} -> (n : @3) -> @58 @38 @40 @23 -@64 := @57 @2 -@65 := @58 @2 -@66 := @65 @40 -@67 := @66 @23 -@68 := (n : @3) -> @67 -@70 := fun (__x : @3) => @64 @30 -@71 := Sort 1 -@72 := LexLeanTarget.TargetSyntax.Value -@73 := (a._@._internal._hyg.#0 : @30) -> @72 -@74 := LexLeanTarget.TargetSyntax.Ty -@75 := #6 -@76 := @34 @75 -@77 := #5 -@78 := @76 @77 -@79 := #4 -@80 := @78 @79 -@81 := @10 @30 -@84 := (x : @10) -> @80 @81 @38 -@85 := @4 @35 -@86 := #7 -@89 := @34 @86 @75 @77 -@92 := @12 @79 @35 @30 -@93 := @89 @92 -@94 := @24 @10 -@103 := {p : @31} -> - {c : @32} -> - {A : @33} -> {α : @71} -> {e : @73} -> {t : @74} -> (h : @84) -> (xs : @85) -> @93 @94 -@105 := LexLeanPreservation.Rust.wt_encList @0 -@107 := @49 @77 @79 -@121 := {c : @32} -> - {A : @33} -> - {α : @71} -> - {e : @73} -> {t : @74} -> (h : (x : @10) -> @107 @81 @38) -> (xs : @85) -> @49 @75 @77 @92 @94 -@122 := @105 @1 -@123 := @58 @79 -@135 := {A : @33} -> - {α : @71} -> - {e : @73} -> {t : @74} -> (h : (x : @10) -> @123 @81 @38) -> (xs : @85) -> @58 @77 @92 @94 -@136 := @122 @2 -@138 := @65 @81 @38 -@146 := {α : @71} -> {e : @73} -> {t : @74} -> (h : (x : @10) -> @138) -> (xs : @85) -> @65 @92 @94 -@147 := @136 @3 -@148 := (a._@._internal._hyg.#0 : @3) -> @72 -@157 := {e : @148} -> {t : @74} -> (h : (x : @3) -> @138) -> (xs : @5) -> @65 (@13 @35 @30) @94 -@158 := @147 @11 -@160 := (x : @3) -> @66 @38 -@162 := @65 (@14 @30) -@166 := {t : @74} -> (h : @160) -> (xs : @5) -> @162 @94 -@167 := @158 @23 -@168 := (x : @3) -> @67 -@169 := @162 @25 -@171 := (h : @168) -> (xs : @5) -> @169 -@174 := fun (__x : @5) => @167 @70 @30 -@175 := (a._@._internal._hyg.#0 : @38) -> @72 -@176 := #9 -@177 := @34 @176 -@178 := #8 -@180 := @177 @178 @86 -@181 := @79 @30 -@184 := (x : @77) -> @180 @181 @10 -@185 := #10 -@191 := (x : @77) -> @34 @185 @176 @178 @181 @10 -@193 := @6 @86 @75 -@194 := #11 -@197 := @34 @194 @185 @176 -@202 := @15 @178 @86 @75 @77 @30 -@203 := @197 @202 -@205 := @26 @79 @35 -@218 := {p : @31} -> - {c : @32} -> - {A : @33} -> - {α : @71} -> - {β : @71} -> - {ea : @175} -> - {eb : @175} -> {s : @74} -> {t : @74} -> (ha : @184) -> (hb : @191) -> (x : @193) -> @203 @205 -@220 := LexLeanPreservation.Rust.wt_encPair @0 -@245 := {c : @32} -> - {A : @33} -> - {α : @71} -> - {β : @71} -> - {ea : @175} -> - {eb : @175} -> - {s : @74} -> - {t : @74} -> - (ha : (x : @77) -> @49 @178 @86 @181 @10) -> - (hb : (x : @77) -> @49 @176 @178 @181 @10) -> (x : @193) -> @49 @185 @176 @202 @205 -@246 := @220 @1 -@267 := {A : @33} -> - {α : @71} -> - {β : @71} -> - {ea : @175} -> - {eb : @175} -> - {s : @74} -> - {t : @74} -> - (ha : (x : @77) -> @58 @86 @181 @10) -> - (hb : (x : @77) -> @58 @178 @181 @10) -> (x : @193) -> @58 @176 @202 @205 -@268 := @246 @2 -@270 := @65 @181 @10 -@271 := (x : @77) -> @270 -@282 := {α : @71} -> - {β : @71} -> - {ea : @175} -> - {eb : @175} -> {s : @74} -> {t : @74} -> (ha : @271) -> (hb : @271) -> (x : @193) -> @65 @202 @205 -@283 := @268 @3 -@284 := (x : @3) -> @270 -@299 := {β : @71} -> - {ea : @148} -> - {eb : @175} -> - {s : @74} -> - {t : @74} -> (ha : @284) -> (hb : @271) -> (x : @7 @75) -> @65 (@16 @86 @75 @77 @30) @205 -@300 := @283 @5 -@301 := (a._@._internal._hyg.#0 : @5) -> @72 -@302 := (x : @5) -> @270 -@314 := {ea : @148} -> - {eb : @301} -> - {s : @74} -> {t : @74} -> (ha : @284) -> (hb : @302) -> (x : @8) -> @65 (@17 @75 @77 @30) @205 -@315 := @300 @11 -@317 := (x : @3) -> @66 @10 -@327 := {eb : @301} -> - {s : @74} -> {t : @74} -> (ha : @317) -> (hb : @302) -> (x : @8) -> @65 (@18 @77 @30) @205 -@328 := @315 @14 -@330 := (x : @5) -> @162 @10 -@332 := @65 (@19 @30) -@338 := {s : @74} -> {t : @74} -> (ha : @317) -> (hb : @330) -> (x : @8) -> @332 @205 -@339 := @328 @23 -@345 := {t : @74} -> (ha : @168) -> (hb : @330) -> (x : @8) -> @332 (@27 @35) -@346 := @339 @25 -@347 := (x : @5) -> @169 -@349 := (x : @8) -> @332 @28 -@351 := (ha : @168) -> (hb : @347) -> @349 -@355 := fun (__x : @8) => @346 @70 @174 @30 -@356 := @136 @8 -@366 := {e : (a._@._internal._hyg.#0 : @8) -> @72} -> - {t : @74} -> (h : (x : @8) -> @138) -> (xs : @9) -> @65 (@20 @35 @30) @94 -@367 := @356 @19 -@369 := (x : @8) -> @332 @38 -@371 := @65 (@21 @30) -@375 := {t : @74} -> (h : @369) -> (xs : @9) -> @371 @94 -@376 := @367 @28 -@379 := (h : @349) -> (xs : @9) -> @371 @29 -@381 := @376 @355 @10 -@383 := @65 @22 @29 -@384 := @11 @38 -@385 := @64 @38 -@387 := @65 @384 @23 -@388 := List.nil.{0} -@389 := List.cons.{0} -@390 := @388 @72 -@391 := @389 @72 -@393 := @391 @384 @390 -@395 := @391 @22 @393 -@396 := @7 @72 -@397 := 1 -@400 := Prod.mk.{0, 0} @3 @72 -@401 := @400 @397 -@402 := @401 @384 -@404 := @400 0 -@405 := @404 @22 -@406 := @388 @396 -@407 := @389 @396 -@409 := @407 @405 @406 -@411 := @407 @402 @409 -@412 := Bool.true -@413 := LexLeanTarget.TargetSyntax.Function -@414 := LexLeanTarget.TargetSyntax.Program.functions -@415 := @414 @0 -@416 := 30 -@417 := @388 @3 -@418 := @388 @74 -@419 := LexLeanTarget.TargetSyntax.Ty.unit -@420 := LexLeanTarget.TargetSyntax.Value.unit -@423 := LexLeanTarget.TargetSyntax.Expr.value @419 @420 -@428 := LexLeanTarget.TargetSyntax.Function.mk @417 @418 @419 @423 -@433 := List.getD.{0} @413 @415 @416 @428 -@437 := fun (__e_n : @3) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.RustStd.root @30 @416 -@438 := LexLeanPreservation.Rust.WTL -@446 := {p : @31} -> {c : @32} -> {A : @33} -> @438 @10 @38 @30 @390 @418 -@448 := LexLeanPreservation.Rust.wtl_nil @0 -@449 := @438 @0 -@455 := {c : @32} -> {A : @33} -> @449 @38 @30 @390 @418 -@456 := @448 @1 -@457 := @449 @1 -@461 := {A : @33} -> @457 @30 @390 @418 -@462 := @456 @2 -@463 := @457 @2 -@464 := @463 @390 -@465 := @464 @418 -@466 := @4 @72 -@467 := @4 @74 -@469 := @80 @35 @10 -@474 := @438 @86 @75 @77 @10 @38 -@477 := @438 @178 @86 @75 -@479 := @391 @77 @35 -@480 := @477 @479 -@481 := @389 @74 -@483 := @481 @79 @10 -@493 := {p : @31} -> - {c : @32} -> - {A : @33} -> - {v : @72} -> {t : @74} -> {vs : @466} -> {ts : @467} -> (h : @469) -> (hs : @474) -> @480 @483 -@495 := LexLeanPreservation.Rust.wtl_cons @0 -@513 := {c : @32} -> - {A : @33} -> - {v : @72} -> - {t : @74} -> - {vs : @466} -> - {ts : @467} -> (h : @107 @35 @10) -> (hs : @449 @75 @77 @10 @38) -> @449 @86 @75 @479 @483 -@514 := @495 @1 -@529 := {A : @33} -> - {v : @72} -> - {t : @74} -> - {vs : @466} -> {ts : @467} -> (h : @123 @35 @10) -> (hs : @457 @77 @10 @38) -> @457 @75 @479 @483 -@530 := @514 @2 -@532 := @65 @35 @10 -@534 := @463 @10 @38 -@542 := {v : @72} -> - {t : @74} -> {vs : @466} -> {ts : @467} -> (h : @532) -> (hs : @534) -> @463 @479 @483 -@543 := @530 @384 -@544 := @11 @79 -@546 := @65 @544 @10 -@547 := @11 @75 -@548 := @391 @547 -@556 := {t : @74} -> {vs : @466} -> {ts : @467} -> (h : @546) -> (hs : @534) -> @463 (@548 @35) @483 -@557 := @543 @23 -@558 := @11 @35 -@560 := @65 @558 @23 -@561 := @11 @77 -@562 := @391 @561 -@564 := @463 (@562 @35) -@565 := @481 @23 -@566 := @565 @10 -@571 := {vs : @466} -> {ts : @467} -> (h : @560) -> (hs : @534) -> @564 @566 -@572 := @557 @390 -@573 := @11 @10 -@575 := @65 @573 @23 -@576 := @464 @38 -@578 := @391 @544 @390 -@583 := {ts : @467} -> (h : @575) -> (hs : @576) -> @463 @578 @566 -@584 := @572 @418 -@586 := @391 @558 @390 -@587 := @463 @586 -@588 := @565 @418 -@591 := (h : @387) -> (hs : @465) -> @587 @588 -@592 := @584 @385 -@594 := @391 @573 @390 -@596 := @463 @594 @588 -@597 := (hs : @465) -> @596 -@598 := @592 @462 -@600 := @463 @393 @588 -@601 := @530 @22 -@602 := @21 @77 -@604 := @65 @602 @10 -@605 := @21 @86 -@606 := @391 @605 -@614 := {t : @74} -> {vs : @466} -> {ts : @467} -> (h : @604) -> (hs : @534) -> @463 (@606 @35) @483 -@615 := @601 @29 -@616 := @21 @79 -@618 := @65 @616 @29 -@619 := @21 @75 -@620 := @391 @619 -@622 := @463 (@620 @35) -@623 := @481 @29 -@624 := @623 @10 -@629 := {vs : @466} -> {ts : @467} -> (h : @618) -> (hs : @534) -> @622 @624 -@630 := @615 @393 -@631 := @21 @35 -@633 := @65 @631 @29 -@634 := @587 @38 -@636 := @391 @602 @578 -@637 := @463 @636 -@641 := {ts : @467} -> (h : @633) -> (hs : @634) -> @637 @624 -@642 := @630 @588 -@644 := @391 @616 @586 -@645 := @463 @644 -@646 := @623 @588 -@649 := (h : @383) -> (hs : @596) -> @645 @646 -@650 := @642 @381 -@652 := @391 @631 @594 -@653 := @463 @652 -@655 := (hs : @600) -> @653 @646 -@656 := @650 @598 -@657 := @463 @395 -@658 := @657 @646 -@659 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.denoteEntry -@661 := @659 @10 @38 -@662 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.entryFits -@664 := @662 @10 @38 -@667 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.entryValue @10 @38 -@670 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.entry @10 @38 -@671 := Bool -@672 := Ne.{1} -@673 := LexLeanPreservation.Obs -@674 := @672 @673 -@675 := LexLeanPreservation.Rel -@678 := @674 (@675 @38 @30) -@679 := LexLeanPreservation.Obs.stuck -@682 := (f : @671) -> (v : @72) -> @678 @679 -@684 := LexLeanPreservation.Rust.rel_ne_stuck @664 -@691 := (v : @72) -> @674 (@675 (@662 @35 @10) @30) @679 -@692 := @684 @667 -@696 := @674 (@675 @664 @667) @679 -@697 := @4 @396 -@698 := LexLeanPreservation.Rust.FunSem -@704 := (n : @3) -> @698 @176 @178 @86 @30 @75 -@705 := Eq.{1} -@706 := Option.{0} -@707 := @706 @413 -@708 := @705 @707 -@715 := LexLeanRuntime.index (@4 @413) @413 (LexLeanRuntime.instIndexableList @413) -@719 := @708 (@715 (@414 @176) @75) -@720 := Option.some.{0} -@721 := @720 @413 -@722 := @721 @77 -@723 := @719 @722 -@727 := @438 @185 @176 @178 @77 -@728 := LexLeanTarget.TargetSyntax.Function.types -@729 := @728 @75 -@730 := @727 @729 -@731 := @706 @697 -@732 := @705 @731 -@733 := LexLeanTarget.TargetSemantics.bindAll -@734 := LexLeanTarget.TargetSyntax.Function.parameters -@739 := @732 (@733 (@734 @86) @75 @406) -@740 := @720 @697 -@741 := @740 @77 -@742 := @739 @741 -@743 := @706 @671 -@744 := @705 @743 -@745 := LexLeanPreservation.Rust.fnFallible -@748 := @744 (@745 @194 @176) -@749 := @720 @671 -@750 := @749 @77 -@751 := @748 @750 -@752 := LexLeanPreservation.RunConv -@753 := #13 -@757 := @752 @753 @185 @178 @77 -@759 := @674 @75 @679 -@760 := Exists.{1} -@761 := LexLeanPreservation.Rust.ROut -@762 := @760 @761 -@763 := And -@764 := LexLeanPreservation.Rust.RealizesFn -@768 := @763 (@764 @176 @178 @30) -@769 := LexLeanPreservation.Rust.RCI -@771 := @769 #15 -@772 := LexLeanPreservation.Rust.fnIdent -@773 := @772 @753 -@780 := (hne : @759) -> @762 (fun (ro : @761) => @768 (@771 @773 @194 @30)) -@795 := {p : @31} -> - {c : @32} -> - {A : @33} -> - {f : @3} -> - {fn : @413} -> - {args : @466} -> - {env : @697} -> - {F : @671} -> - {o : @673} -> - (hB : @704) -> - (hfn : @723) -> (hwt : @730) -> (hbind : @742) -> (hF : @751) -> (hA : @757) -> @780 -@797 := LexLeanPreservation.Rust.compose @0 -@798 := @698 @0 -@803 := (n : @3) -> @798 @178 @86 @30 @75 -@804 := @715 @415 -@807 := @708 (@804 @75) @722 -@811 := @449 @176 @178 @77 @729 -@812 := @752 @0 -@815 := @812 @185 @178 @77 -@829 := {c : @32} -> - {A : @33} -> - {f : @3} -> - {fn : @413} -> - {args : @466} -> - {env : @697} -> - {F : @671} -> - {o : @673} -> - (hB : @803) -> - (hfn : @807) -> (hwt : @811) -> (hbind : @742) -> (hF : @751) -> (hA : @815) -> @780 -@830 := @797 @1 -@831 := @798 @1 -@835 := (n : @3) -> @831 @86 @30 @75 -@838 := @457 @178 @77 @729 -@839 := @745 @1 -@842 := @744 (@839 @176) @750 -@843 := @769 @1 -@853 := (hbind : @742) -> - (hF : @842) -> (hA : @815) -> (hne : @759) -> @762 (fun (ro : @761) => @768 (@843 @773 @194 @30)) -@863 := {A : @33} -> - {f : @3} -> - {fn : @413} -> - {args : @466} -> - {env : @697} -> {F : @671} -> {o : @673} -> (hB : @835) -> (hfn : @807) -> (hwt : @838) -> @853 -@864 := @830 @2 -@866 := @831 @2 @30 -@868 := (n : @3) -> @866 @75 -@869 := @463 @77 -@870 := @869 @729 -@879 := {f : @3} -> - {fn : @413} -> - {args : @466} -> - {env : @697} -> {F : @671} -> {o : @673} -> (hB : @868) -> (hfn : @807) -> (hwt : @870) -> @853 -@880 := @864 @416 -@882 := (n : @3) -> @866 @416 -@883 := @804 @416 -@884 := @708 @883 -@885 := @884 @722 -@886 := @839 @416 -@887 := @744 @886 -@888 := @887 @750 -@889 := @812 @416 -@891 := @889 @178 @77 -@893 := @843 (@772 @416) -@901 := (hF : @888) -> (hA : @891) -> (hne : @759) -> @762 (fun (ro : @761) => @768 (@893 @194 @30)) -@910 := {fn : @413} -> - {args : @466} -> - {env : @697} -> - {F : @671} -> {o : @673} -> (hB : @882) -> (hfn : @885) -> (hwt : @870) -> (hbind : @742) -> @901 -@911 := @880 @433 -@913 := @884 (@721 @433) -@914 := @728 @433 -@915 := @869 @914 -@917 := @733 (@734 @433) -@929 := {args : @466} -> - {env : @697} -> - {F : @671} -> - {o : @673} -> - (hB : @882) -> (hfn : @913) -> (hwt : @915) -> (hbind : @732 (@917 @75 @406) @741) -> @901 -@930 := @911 @395 -@932 := @606 (@548 @390) -@934 := @463 @932 @914 -@940 := @391 (@21 @178) (@391 (@11 @86) @390) -@944 := @732 (@917 @940 @406) @741 -@950 := @391 (@21 @185) (@391 (@11 @176) @390) -@952 := @889 @950 @77 -@954 := @391 (@21 @753) -@955 := #12 -@974 := {env : @697} -> - {F : @671} -> - {o : @673} -> - (hB : @882) -> - (hfn : @913) -> - (hwt : @934) -> - (hbind : @944) -> - (hF : @888) -> - (hA : @952) -> - (hne : @759) -> @762 (fun (ro : @761) => @768 (@893 (@954 (@391 (@11 @955) @390)) @30)) -@975 := @930 @411 -@977 := @620 (@562 @390) -@979 := @463 @977 @914 -@990 := @732 (@917 @932 @406) (@740 (@407 (@401 @547) (@407 (@404 @605) @406))) -@996 := @391 (@21 @176) (@391 (@11 @178) @390) -@1018 := {F : @671} -> - {o : @673} -> - (hB : @882) -> - (hfn : @913) -> - (hwt : @979) -> - (hbind : @990) -> - (hF : @888) -> - (hA : @889 @996 @77) -> - (hne : @759) -> @762 (fun (ro : @761) => @768 (@893 (@391 (@21 @955) (@391 (@11 @194) @390)) @30)) -@1019 := @975 @412 -@1020 := @637 @914 -@1031 := @732 (@917 @977 @406) (@740 (@407 (@401 @561) (@407 (@404 @619) @406))) -@1033 := @887 (@749 @412) -@1035 := @889 @940 @77 -@1036 := @764 @412 -@1058 := {o : @673} -> - (hB : @882) -> - (hfn : @913) -> - (hwt : @1020) -> - (hbind : @1031) -> - (hF : @1033) -> - (hA : @1035) -> - (hne : @759) -> - @762 - (fun (ro : @761) => @763 (@1036 @178 @30) (@893 (@391 (@21 @194) (@391 (@11 @185) @390)) @30)) -@1059 := @1019 @661 -@1060 := @645 @914 -@1071 := @732 (@917 @636 @406) (@740 (@407 (@401 @544) (@407 (@404 @602) @406))) -@1072 := @889 @932 -@1074 := @659 @86 @75 -@1075 := @1072 @1074 -@1077 := @659 @178 @86 -@1096 := (hB : @882) -> - (hfn : @913) -> - (hwt : @1060) -> - (hbind : @1071) -> - (hF : @1033) -> - (hA : @1075) -> - (hne : @674 @1077 @679) -> - @762 (fun (ro : @761) => @763 (@1036 (@659 @185 @176) @30) (@893 @950 @30)) -@1097 := @1059 @437 -@1098 := @653 @914 -@1109 := @732 (@917 @644 @406) (@740 (@407 (@401 @558) (@407 (@404 @616) @406))) -@1110 := @889 @977 -@1112 := @659 @75 @77 -@1131 := (hfn : @913) -> - (hwt : @1098) -> - (hbind : @1109) -> - (hF : @1033) -> - (hA : @1110 @1112) -> - (hne : @674 @1074 @679) -> - @762 (fun (ro : @761) => @763 (@1036 (@659 @176 @178) @30) (@893 @996 @30)) -@1132 := Eq.refl.{1} -@1135 := @1097 (@1132 @707 @883) -@1136 := @657 @914 -@1147 := @732 (@917 @652 @406) (@740 (@407 (@401 @573) (@407 (@404 @631) @406))) -@1148 := @889 @636 -@1150 := @659 @77 @79 -@1166 := (hwt : @1136) -> - (hbind : @1147) -> - (hF : @1033) -> - (hA : @1148 @1150) -> - (hne : @674 @1112 @679) -> @762 (fun (ro : @761) => @763 (@1036 @1077 @30) (@893 @940 @30)) -@1167 := @1135 @656 -@1169 := @917 @395 @406 -@1172 := @732 @1169 (@740 @411) -@1173 := @889 @644 -@1175 := @659 @79 @35 -@1190 := (hbind : @1172) -> - (hF : @1033) -> - (hA : @1173 @1175) -> - (hne : @674 @1150 @679) -> @762 (fun (ro : @761) => @763 (@1036 @1074 @30) (@893 @932 @30)) -@1193 := @1167 (@1132 @731 @1169) -@1194 := @889 @652 -@1196 := @659 @35 @10 -@1210 := (hF : @1033) -> - (hA : @1194 @1196) -> - (hne : @674 @1175 @679) -> @762 (fun (ro : @761) => @763 (@1036 @1112 @30) (@893 @977 @30)) -@1213 := @1193 (@1132 @743 @886) -@1215 := @889 @395 @661 -@1217 := @674 @1196 @679 -@1218 := @1036 @1150 -@1220 := @763 (@1218 @30) -@1221 := @893 @636 -@1222 := @1221 @30 -@1227 := (hA : @1215) -> (hne : @1217) -> @762 (fun (ro : @761) => @1220 @1222) -@1228 := @1213 @670 -@1230 := @674 @661 @679 -@1231 := @1036 @1175 -@1233 := @763 (@1231 @30) -@1234 := @893 @644 -@1239 := (hne : @1230) -> @762 (fun (ro : @761) => @1233 (@1234 @30)) -@1240 := @1228 @692 -@1243 := @763 (@1036 @1196 @30) -@1245 := @893 @652 @30 -@1246 := @1243 @1245 -@1248 := @762 (fun (ro : @761) => @1246) -@1249 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.accepts -@1251 := @1249 @10 @38 -@1252 := LexLeanPreservation.someObs -@1253 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.denote -@1256 := @1252 (@1253 @10 @38) -@1259 := LexLeanPreservation.Obs.value LexLeanTarget.TargetSyntax.Value.none -@1260 := Not -@1261 := @1260 @1251 -@1263 := @1249 @35 @10 -@1266 := @1252 (@1253 @35 @10) -@1267 := @1260 @1263 -@1273 := @1263 -> @1036 (@1252 (@1253 @79 @35)) @38 -@1274 := @1036 @1259 -@1275 := @1274 @38 -@1276 := @1267 -> @1275 -@1278 := @763 @1273 @1276 -@1282 := @762 (fun (__e_ro : @761) => @763 @1245 @1278) -@1283 := fun (__e_ro : @761) => @1246 -@1284 := @1231 @38 -@1285 := @1234 @38 -@1286 := And.left -@1287 := And.right -@1290 := @1286 @1284 @1285 @30 -@1293 := @1287 @1284 @1285 @30 -@1294 := @1036 @30 -@1296 := fun (__e_o : @673) => @1294 @10 -@1297 := Eq.subst.{1} -@1299 := @1249 @79 @35 -@1300 := @1260 @1299 -@1304 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.entry_accepts @77 @79 @30 -@1307 := @1252 (@1253 @77 @79) -@1312 := @1286 (@1218 @10) (@1221 @10) @38 -@1314 := fun (__e_o : @673) => @1294 @35 -@1317 := @1297 @673 @1314 @1150 -@1321 := fun (__e_h : @1299) => @1317 @1307 @1304 @1312 -@1325 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.entry_refuses @77 @79 @30 -@1329 := fun (__e_h : @1300) => @1317 @1259 @1325 @1312 -@1330 := And.intro -@1333 := @1299 -> @1036 @1307 @10 -@1335 := @1300 -> @1274 @10 -@1337 := @763 @1333 @1335 -@1341 := @1330 @1333 @1335 @1321 @1329 -@1345 := @1330 @1285 @1337 @1293 @1341 -@1346 := Exists.intro.{1} -@1347 := @763 @1222 -@1349 := @1249 @77 @79 -@1361 := fun (__e_ro : @761) => - @1347 (@763 (@1349 -> @1036 (@1252 (@1253 @75 @77)) @38) (@1260 @1349 -> @1275)) -@1365 := @1346 @761 @1361 @38 @1345 -@1367 := @763 @1284 @1285 -@1369 := fun (__e_ro : @761) => fun (__e_hand : @1246) => @1365 -@1375 := Exists.elim.{1} @761 @1283 @1282 @1240 @1369 -@1376 := LexLeanPreservation.Rust.RepresentableL -@1377 := @21 @38 -@1379 := @391 @40 @390 -@1382 := @1376 (@391 @1377 @1379) -@1383 := (__e_hrep : @1382) -> @1282 -@1384 := fun (__e_hrep : @1382) => @1375 -@1385 := (start : @3) -> @1383 -@1386 := fun (start : @3) => @1384 -@1387 := (g : @9) -> @1385 -@1388 := fun (g : @9) => @1386 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R6/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R6/RustStd.lean deleted file mode 100644 index 83d9060e1..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R6/RustStd.lean +++ /dev/null @@ -1,273 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1], types := [(.list (.pair .nat (.list .nat))), .nat], result := (.pair (.list .nat) (.pair (.list .nat) (.option (.list .nat)))), - body := (.build .pair (.pair (.list .nat) (.pair (.list .nat) (.option (.list .nat)))) [(.call 1 [(.var 0), (.var 1)]), (.build .pair (.pair (.list .nat) (.option (.list .nat))) [(.call 3 [(.var 0), (.var 1)]), (.call 16 [(.var 0)])])]) }, - { parameters := [0, 1], types := [(.list (.pair .nat (.list .nat))), .nat], result := (.list .nat), - body := (.«match» (.list .nat) (.call 2 [(.var 0), (.var 1)]) [(.arm .none [] (.build .nil (.list .nat) [])), (.arm .some [2] (.var 2))]) }, - { parameters := [0, 1], types := [(.list (.pair .nat (.list .nat))), .nat], result := (.option (.list .nat)), - body := (.«match» (.option (.list .nat)) (.var 0) [(.arm .nil [] (.build .none (.option (.list .nat)) [])), (.arm .cons [2, 3] (.«match» (.option (.list .nat)) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.build .none (.option (.list .nat)) [])), (.arm .eq [] (.build .some (.option (.list .nat)) [(.second (.var 2))])), (.arm .gt [] (.call 2 [(.var 3), (.var 1)]))]))]) }, - { parameters := [0, 1], types := [(.list (.pair .nat (.list .nat))), .nat], result := (.list .nat), - body := (.call 4 [(.var 0), (.prim .natAdd [(.prim .length [(.call 13 [(.var 0), (.build .nil (.list .nat) [])])]), (.value .nat (.nat 1))]), (.build .cons (.list .nat) [(.var 1), (.build .nil (.list .nat) [])]), (.build .cons (.list .nat) [(.var 1), (.build .nil (.list .nat) [])])]) }, - { parameters := [0, 1, 2, 3], types := [(.list (.pair .nat (.list .nat))), .nat, (.list .nat), (.list .nat)], result := (.list .nat), - body := (.«match» (.list .nat) (.var 1) [(.arm .zero [] (.var 3)), (.arm .succ [4] (.«let» 5 (.list .nat) (.call 5 [(.var 0), (.var 3), (.var 2), (.build .nil (.list .nat) [])]) (.«match» (.list .nat) (.var 5) [(.arm .nil [] (.var 3)), (.arm .cons [6, 7] (.call 4 [(.var 0), (.var 4), (.var 5), (.call 11 [(.var 3), (.var 5)])]))])))]) }, - { parameters := [0, 1, 2, 3], types := [(.list (.pair .nat (.list .nat))), (.list .nat), (.list .nat), (.list .nat)], result := (.list .nat), - body := (.«match» (.list .nat) (.var 2) [(.arm .nil [] (.var 3)), (.arm .cons [4, 5] (.call 5 [(.var 0), (.var 1), (.var 5), (.call 6 [(.var 1), (.call 7 [(.var 0), (.var 4)]), (.var 3)])]))]) }, - { parameters := [0, 1, 2], types := [(.list .nat), (.list .nat), (.list .nat)], result := (.list .nat), - body := (.«match» (.list .nat) (.var 1) [(.arm .nil [] (.var 2)), (.arm .cons [3, 4] (.call 6 [(.var 0), (.var 4), (.cond (.call 9 [(.var 0), (.var 3)]) (.var 2) (.cond (.call 9 [(.var 2), (.var 3)]) (.var 2) (.call 10 [(.var 2), (.var 3)])))]))]) }, - { parameters := [0, 1], types := [(.list (.pair .nat (.list .nat))), .nat], result := (.list .nat), - body := (.«match» (.list .nat) (.call 8 [(.var 0), (.var 1)]) [(.arm .none [] (.build .nil (.list .nat) [])), (.arm .some [2] (.var 2))]) }, - { parameters := [0, 1], types := [(.list (.pair .nat (.list .nat))), .nat], result := (.option (.list .nat)), - body := (.«match» (.option (.list .nat)) (.var 0) [(.arm .nil [] (.build .none (.option (.list .nat)) [])), (.arm .cons [2, 3] (.«match» (.option (.list .nat)) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.build .none (.option (.list .nat)) [])), (.arm .eq [] (.build .some (.option (.list .nat)) [(.second (.var 2))])), (.arm .gt [] (.call 8 [(.var 3), (.var 1)]))]))]) }, - { parameters := [0, 1], types := [(.list .nat), .nat], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .false .bool [])), (.arm .cons [2, 3] (.«match» .bool (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .false .bool [])), (.arm .eq [] (.build .true .bool [])), (.arm .gt [] (.call 9 [(.var 3), (.var 1)]))]))]) }, - { parameters := [0, 1], types := [(.list .nat), .nat], result := (.list .nat), - body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.build .cons (.list .nat) [(.var 1), (.build .nil (.list .nat) [])])), (.arm .cons [2, 3] (.«match» (.list .nat) (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .cons (.list .nat) [(.var 1), (.var 0)])), (.arm .eq [] (.var 0)), (.arm .gt [] (.build .cons (.list .nat) [(.var 2), (.call 10 [(.var 3), (.var 1)])]))]))]) }, - { parameters := [0, 1], types := [(.list .nat), (.list .nat)], result := (.list .nat), - body := (.«match» (.list .nat) (.var 1) [(.arm .nil [] (.var 0)), (.arm .cons [2, 3] (.call 11 [(.call 12 [(.var 0), (.var 2)]), (.var 3)]))]) }, - { parameters := [0, 1], types := [(.list .nat), .nat], result := (.list .nat), - body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.build .cons (.list .nat) [(.var 1), (.build .nil (.list .nat) [])])), (.arm .cons [2, 3] (.«match» (.list .nat) (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .cons (.list .nat) [(.var 1), (.var 0)])), (.arm .eq [] (.var 0)), (.arm .gt [] (.build .cons (.list .nat) [(.var 2), (.call 12 [(.var 3), (.var 1)])]))]))]) }, - { parameters := [0, 1], types := [(.list (.pair .nat (.list .nat))), (.list .nat)], result := (.list .nat), - body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.var 1)), (.arm .cons [2, 3] (.call 13 [(.var 3), (.call 14 [(.second (.var 2)), (.call 15 [(.var 1), (.first (.var 2))])])]))]) }, - { parameters := [0, 1], types := [(.list .nat), (.list .nat)], result := (.list .nat), - body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.var 1)), (.arm .cons [2, 3] (.call 14 [(.var 3), (.call 15 [(.var 1), (.var 2)])]))]) }, - { parameters := [0, 1], types := [(.list .nat), .nat], result := (.list .nat), - body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.build .cons (.list .nat) [(.var 1), (.build .nil (.list .nat) [])])), (.arm .cons [2, 3] (.«match» (.list .nat) (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .cons (.list .nat) [(.var 1), (.var 0)])), (.arm .eq [] (.var 0)), (.arm .gt [] (.build .cons (.list .nat) [(.var 2), (.call 15 [(.var 3), (.var 1)])]))]))]) }, - { parameters := [0], types := [(.list (.pair .nat (.list .nat)))], result := (.option (.list .nat)), - body := (.«let» 1 (.list .nat) (.call 21 [(.var 0), (.build .nil (.list .nat) [])]) (.call 17 [(.var 0), (.prim .natAdd [(.prim .length [(.var 1)]), (.value .nat (.nat 1))]), (.var 1), (.build .nil (.list .nat) [])])) }, - { parameters := [0, 1, 2, 3], types := [(.list (.pair .nat (.list .nat))), .nat, (.list .nat), (.list .nat)], result := (.option (.list .nat)), - body := (.«match» (.option (.list .nat)) (.var 1) [(.arm .zero [] (.«match» (.option (.list .nat)) (.var 2) [(.arm .nil [] (.build .some (.option (.list .nat)) [(.call 20 [(.var 3), (.build .nil (.list .nat) [])])])), (.arm .cons [4, 5] (.build .none (.option (.list .nat)) []))])), (.arm .succ [6] (.«match» (.option (.list .nat)) (.call 18 [(.var 0), (.var 2), (.var 2)]) [(.arm .nil [] (.«match» (.option (.list .nat)) (.var 2) [(.arm .nil [] (.build .some (.option (.list .nat)) [(.call 20 [(.var 3), (.build .nil (.list .nat) [])])])), (.arm .cons [7, 8] (.build .none (.option (.list .nat)) []))])), (.arm .cons [9, 10] (.call 17 [(.var 0), (.var 6), (.call 27 [(.var 2), (.var 9)]), (.build .cons (.list .nat) [(.var 9), (.var 3)])]))]))]) }, - { parameters := [0, 1, 2], types := [(.list (.pair .nat (.list .nat))), (.list .nat), (.list .nat)], result := (.list .nat), - body := (.«match» (.list .nat) (.var 2) [(.arm .nil [] (.build .nil (.list .nat) [])), (.arm .cons [3, 4] (.cond (.call 19 [(.var 0), (.var 3), (.var 1)]) (.build .cons (.list .nat) [(.var 3), (.call 18 [(.var 0), (.var 1), (.var 4)])]) (.call 18 [(.var 0), (.var 1), (.var 4)])))]) }, - { parameters := [0, 1, 2], types := [(.list (.pair .nat (.list .nat))), .nat, (.list .nat)], result := .bool, - body := (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.call 26 [(.call 24 [(.var 0), (.var 3)]), (.var 1)]) (.build .false .bool []) (.call 19 [(.var 0), (.var 1), (.var 4)])))]) }, - { parameters := [0, 1], types := [(.list .nat), (.list .nat)], result := (.list .nat), - body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.var 1)), (.arm .cons [2, 3] (.call 20 [(.var 3), (.build .cons (.list .nat) [(.var 2), (.var 1)])]))]) }, - { parameters := [0, 1], types := [(.list (.pair .nat (.list .nat))), (.list .nat)], result := (.list .nat), - body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.var 1)), (.arm .cons [2, 3] (.call 21 [(.var 3), (.call 22 [(.second (.var 2)), (.call 23 [(.var 1), (.first (.var 2))])])]))]) }, - { parameters := [0, 1], types := [(.list .nat), (.list .nat)], result := (.list .nat), - body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.var 1)), (.arm .cons [2, 3] (.call 22 [(.var 3), (.call 23 [(.var 1), (.var 2)])]))]) }, - { parameters := [0, 1], types := [(.list .nat), .nat], result := (.list .nat), - body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.build .cons (.list .nat) [(.var 1), (.build .nil (.list .nat) [])])), (.arm .cons [2, 3] (.«match» (.list .nat) (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .cons (.list .nat) [(.var 1), (.var 0)])), (.arm .eq [] (.var 0)), (.arm .gt [] (.build .cons (.list .nat) [(.var 2), (.call 23 [(.var 3), (.var 1)])]))]))]) }, - { parameters := [0, 1], types := [(.list (.pair .nat (.list .nat))), .nat], result := (.list .nat), - body := (.«match» (.list .nat) (.call 25 [(.var 0), (.var 1)]) [(.arm .none [] (.build .nil (.list .nat) [])), (.arm .some [2] (.var 2))]) }, - { parameters := [0, 1], types := [(.list (.pair .nat (.list .nat))), .nat], result := (.option (.list .nat)), - body := (.«match» (.option (.list .nat)) (.var 0) [(.arm .nil [] (.build .none (.option (.list .nat)) [])), (.arm .cons [2, 3] (.«match» (.option (.list .nat)) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.build .none (.option (.list .nat)) [])), (.arm .eq [] (.build .some (.option (.list .nat)) [(.second (.var 2))])), (.arm .gt [] (.call 25 [(.var 3), (.var 1)]))]))]) }, - { parameters := [0, 1], types := [(.list .nat), .nat], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .false .bool [])), (.arm .cons [2, 3] (.«match» .bool (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .false .bool [])), (.arm .eq [] (.build .true .bool [])), (.arm .gt [] (.call 26 [(.var 3), (.var 1)]))]))]) }, - { parameters := [0, 1], types := [(.list .nat), .nat], result := (.list .nat), - body := (.«match» (.list .nat) (.var 0) [(.arm .nil [] (.build .nil (.list .nat) [])), (.arm .cons [2, 3] (.«match» (.list .nat) (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.var 0)), (.arm .eq [] (.var 3)), (.arm .gt [] (.build .cons (.list .nat) [(.var 2), (.call 27 [(.var 3), (.var 1)])]))]))]) }, - { parameters := [0], types := [(.list (.pair .nat (.list .nat)))], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 29 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 28 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, - { parameters := [0], types := [(.list .nat)], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.var 1), (.var 3)]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 29 [(.var 2)]) (.build .false .bool [])))]))]) }, - { parameters := [0, 1], types := [(.list (.pair .nat (.list .nat))), .nat], result := (.option (.pair (.list .nat) (.pair (.list .nat) (.option (.list .nat))))), - body := (.cond (.call 28 [(.var 0)]) (.build .some (.option (.pair (.list .nat) (.pair (.list .nat) (.option (.list .nat))))) [(.call 0 [(.var 0), (.var 1)])]) (.build .none (.option (.pair (.list .nat) (.pair (.list .nat) (.option (.list .nat))))) [])) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat (.list .nat))) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.pair (.list .nat) (.pair (.list .nat) (.option (.list .nat))))) (.mk [] (.succeed (.pair (.call (.function 1) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1))] false) (.pair (.call (.function 3) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1))] true) (.call (.function 16) [(.move (.generated .binding 0))] true)))))), - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat (.list .nat))) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 1)) none (.call (.function 2) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 1)) [(.mk .none (.mk [] (.construct (.nil .nat) []))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.move (.generated .binding 2))))]))), - (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat (.list .nat))) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.option (.list .nat)) (.mk [(.mk (.bind (.generated .holder 2)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 2)) [(.mk .none (.mk [] (.construct (.none (.list .nat)) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 6)) none (.block (.mk [(.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 5)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 3)))))] (.call (.runtime .compare) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false))))] (.matchOn (.move (.generated .holder 6)) [(.mk (.ordering .less) (.mk [] (.construct (.none (.list .nat)) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 7))]) none (.move (.generated .binding 2)))] (.move (.generated .part 7))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 2) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]))), - (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat (.list .nat))) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.list .nat)) (.mk [] (.succeed (.call (.function 4) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.block (.mk [(.mk (.bind (.generated .operand 8)) none (.call (.function 13) [(.move (.generated .binding 0)), (.construct (.nil .nat) [])] false))] (.call (.runtime .lengthList) [(.move (.generated .operand 8))] false)))), (.mk (.bind (.generated .operand 10)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] true))), (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil .nat) [])]), (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil .nat) [])])] false)))), - (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat (.list .nat))) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 3)), type := (.list .nat) }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 11)) none (.copy (.generated .binding 1)))] (.cond (.isZero (.generated .holder 11)) (.mk [] (.move (.generated .binding 3))) (.mk [(.mk (.bind (.generated .binding 4)) none (.predecessor (.generated .holder 11))), (.mk (.bind (.generated .binding 5)) (some (.list .nat)) (.call (.function 5) [(.clone (.generated .binding 0)), (.clone (.generated .binding 3)), (.move (.generated .binding 2)), (.construct (.nil .nat) [])] false)), (.mk (.bind (.generated .holder 12)) none (.clone (.generated .binding 5)))] (.matchOn (.uncons (.generated .holder 12)) [(.mk .none (.mk [] (.move (.generated .binding 3)))), (.mk (.some (.tuple [.wild, .wild])) (.mk [] (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 4)), (.clone (.generated .binding 5)), (.call (.function 11) [(.move (.generated .binding 3)), (.move (.generated .binding 5))] false)] false)))]))))), - (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat (.list .nat))) }, { pattern := (.bind (.generated .binding 1)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 2)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 3)), type := (.list .nat) }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 13)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 13)) [(.mk .none (.mk [] (.move (.generated .binding 3)))), (.mk (.some (.tuple [(.bind (.generated .binding 4)), (.bind (.generated .binding 5))])) (.mk [] (.call (.function 5) [(.clone (.generated .binding 0)), (.clone (.generated .binding 1)), (.move (.generated .binding 5)), (.call (.function 6) [(.move (.generated .binding 1)), (.call (.function 7) [(.move (.generated .binding 0)), (.copy (.generated .binding 4))] false), (.move (.generated .binding 3))] false)] false)))]))), - (.function (.generated .function 6) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 2)), type := (.list .nat) }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 14)) none (.move (.generated .binding 1)))] (.matchOn (.uncons (.generated .holder 14)) [(.mk .none (.mk [] (.move (.generated .binding 2)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 6) [(.clone (.generated .binding 0)), (.move (.generated .binding 4)), (.cond (.call (.function 9) [(.move (.generated .binding 0)), (.copy (.generated .binding 3))] false) (.mk [] (.move (.generated .binding 2))) (.mk [] (.cond (.call (.function 9) [(.clone (.generated .binding 2)), (.copy (.generated .binding 3))] false) (.mk [] (.move (.generated .binding 2))) (.mk [] (.call (.function 10) [(.move (.generated .binding 2)), (.copy (.generated .binding 3))] false)))))] false)))]))), - (.function (.generated .function 7) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat (.list .nat))) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 15)) none (.call (.function 8) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 15)) [(.mk .none (.mk [] (.construct (.nil .nat) []))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.move (.generated .binding 2))))]))), - (.function (.generated .function 8) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat (.list .nat))) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.option (.list .nat)) (.mk [(.mk (.bind (.generated .holder 16)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 16)) [(.mk .none (.mk [] (.construct (.none (.list .nat)) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 20)) none (.block (.mk [(.mk (.bind (.generated .operand 18)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 19)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 17)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 17)))))] (.call (.runtime .compare) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false))))] (.matchOn (.move (.generated .holder 20)) [(.mk (.ordering .less) (.mk [] (.construct (.none (.list .nat)) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 21))]) none (.move (.generated .binding 2)))] (.move (.generated .part 21))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 8) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]))), - (.function (.generated .function 9) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .holder 22)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 22)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 25)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))))] (.matchOn (.move (.generated .holder 25)) [(.mk (.ordering .less) (.mk [] (.lit (.bool false)))), (.mk (.ordering .same) (.mk [] (.lit (.bool true)))), (.mk (.ordering .more) (.mk [] (.call (.function 9) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]))), - (.function (.generated .function 10) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 26)) none (.clone (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 26)) [(.mk .none (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil .nat) [])]))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 29)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 28)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))] (.matchOn (.move (.generated .holder 29)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 10) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])))]))), - (.function (.generated .function 11) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := (.list .nat) }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 30)) none (.move (.generated .binding 1)))] (.matchOn (.uncons (.generated .holder 30)) [(.mk .none (.mk [] (.move (.generated .binding 0)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.call (.function 11) [(.call (.function 12) [(.move (.generated .binding 0)), (.copy (.generated .binding 2))] false), (.move (.generated .binding 3))] false)))]))), - (.function (.generated .function 12) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 31)) none (.clone (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 31)) [(.mk .none (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil .nat) [])]))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 34)) none (.block (.mk [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 33)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] false))))] (.matchOn (.move (.generated .holder 34)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 12) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])))]))), - (.function (.generated .function 13) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat (.list .nat))) }, { pattern := (.bind (.generated .binding 1)), type := (.list .nat) }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 35)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 35)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.call (.function 13) [(.move (.generated .binding 3)), (.call (.function 14) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 36))]) none (.move (.generated .binding 2)))] (.move (.generated .part 36)))), (.call (.function 15) [(.move (.generated .binding 1)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 37)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 37))))] false)] false)] false)))]))), - (.function (.generated .function 14) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := (.list .nat) }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 38)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 38)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.call (.function 14) [(.move (.generated .binding 3)), (.call (.function 15) [(.move (.generated .binding 1)), (.copy (.generated .binding 2))] false)] false)))]))), - (.function (.generated .function 15) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 39)) none (.clone (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 39)) [(.mk .none (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil .nat) [])]))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 42)) none (.block (.mk [(.mk (.bind (.generated .operand 40)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 41)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 40)), (.move (.generated .operand 41))] false))))] (.matchOn (.move (.generated .holder 42)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 15) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])))]))), - (.function (.generated .function 16) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat (.list .nat))) }] (.fallible (.option (.list .nat))) (.mk [(.mk (.bind (.generated .binding 1)) (some (.list .nat)) (.call (.function 21) [(.clone (.generated .binding 0)), (.construct (.nil .nat) [])] false))] (.succeed (.call (.function 17) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.bind (.generated .operand 43)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthList) [(.move (.generated .operand 43))] false)))), (.mk (.bind (.generated .operand 45)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 44)), (.move (.generated .operand 45))] true))), (.move (.generated .binding 1)), (.construct (.nil .nat) [])] false)))), - (.function (.generated .function 17) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat (.list .nat))) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 3)), type := (.list .nat) }] (.option (.list .nat)) (.mk [(.mk (.bind (.generated .holder 46)) none (.copy (.generated .binding 1)))] (.cond (.isZero (.generated .holder 46)) (.mk [(.mk (.bind (.generated .holder 47)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 47)) [(.mk .none (.mk [] (.construct .some [(.call (.function 20) [(.move (.generated .binding 3)), (.construct (.nil .nat) [])] false)]))), (.mk (.some (.tuple [.wild, .wild])) (.mk [] (.construct (.none (.list .nat)) [])))])) (.mk [(.mk (.bind (.generated .binding 6)) none (.predecessor (.generated .holder 46))), (.mk (.bind (.generated .holder 48)) none (.call (.function 18) [(.clone (.generated .binding 0)), (.clone (.generated .binding 2)), (.clone (.generated .binding 2))] false))] (.matchOn (.uncons (.generated .holder 48)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 49)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 49)) [(.mk .none (.mk [] (.construct .some [(.call (.function 20) [(.move (.generated .binding 3)), (.construct (.nil .nat) [])] false)]))), (.mk (.some (.tuple [.wild, .wild])) (.mk [] (.construct (.none (.list .nat)) [])))]))), (.mk (.some (.tuple [(.bind (.generated .binding 9)), .wild])) (.mk [] (.call (.function 17) [(.move (.generated .binding 0)), (.copy (.generated .binding 6)), (.call (.function 27) [(.move (.generated .binding 2)), (.copy (.generated .binding 9))] false), (.construct .cons [(.copy (.generated .binding 9)), (.move (.generated .binding 3))])] false)))]))))), - (.function (.generated .function 18) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat (.list .nat))) }, { pattern := (.bind (.generated .binding 1)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 2)), type := (.list .nat) }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 50)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 50)) [(.mk .none (.mk [] (.construct (.nil .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.cond (.call (.function 19) [(.clone (.generated .binding 0)), (.copy (.generated .binding 3)), (.clone (.generated .binding 1))] false) (.mk [] (.construct .cons [(.copy (.generated .binding 3)), (.call (.function 18) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false)])) (.mk [] (.call (.function 18) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false)))))]))), - (.function (.generated .function 19) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat (.list .nat))) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := (.list .nat) }] .bool (.mk [(.mk (.bind (.generated .holder 51)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 51)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.cond (.call (.function 26) [(.call (.function 24) [(.clone (.generated .binding 0)), (.copy (.generated .binding 3))] false), (.copy (.generated .binding 1))] false) (.mk [] (.lit (.bool false))) (.mk [] (.call (.function 19) [(.move (.generated .binding 0)), (.copy (.generated .binding 1)), (.move (.generated .binding 4))] false)))))]))), - (.function (.generated .function 20) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := (.list .nat) }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 52)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 52)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.call (.function 20) [(.move (.generated .binding 3)), (.construct .cons [(.copy (.generated .binding 2)), (.move (.generated .binding 1))])] false)))]))), - (.function (.generated .function 21) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat (.list .nat))) }, { pattern := (.bind (.generated .binding 1)), type := (.list .nat) }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 53)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 53)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.call (.function 21) [(.move (.generated .binding 3)), (.call (.function 22) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 54))]) none (.move (.generated .binding 2)))] (.move (.generated .part 54)))), (.call (.function 23) [(.move (.generated .binding 1)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 55)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 55))))] false)] false)] false)))]))), - (.function (.generated .function 22) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := (.list .nat) }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 56)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 56)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.call (.function 22) [(.move (.generated .binding 3)), (.call (.function 23) [(.move (.generated .binding 1)), (.copy (.generated .binding 2))] false)] false)))]))), - (.function (.generated .function 23) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 57)) none (.clone (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 57)) [(.mk .none (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil .nat) [])]))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 60)) none (.block (.mk [(.mk (.bind (.generated .operand 58)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 59)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 58)), (.move (.generated .operand 59))] false))))] (.matchOn (.move (.generated .holder 60)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 23) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])))]))), - (.function (.generated .function 24) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat (.list .nat))) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 61)) none (.call (.function 25) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 61)) [(.mk .none (.mk [] (.construct (.nil .nat) []))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.move (.generated .binding 2))))]))), - (.function (.generated .function 25) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat (.list .nat))) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.option (.list .nat)) (.mk [(.mk (.bind (.generated .holder 62)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 62)) [(.mk .none (.mk [] (.construct (.none (.list .nat)) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 66)) none (.block (.mk [(.mk (.bind (.generated .operand 64)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 65)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 63)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 63)))))] (.call (.runtime .compare) [(.move (.generated .operand 64)), (.move (.generated .operand 65))] false))))] (.matchOn (.move (.generated .holder 66)) [(.mk (.ordering .less) (.mk [] (.construct (.none (.list .nat)) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 67))]) none (.move (.generated .binding 2)))] (.move (.generated .part 67))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 25) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]))), - (.function (.generated .function 26) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .holder 68)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 68)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 71)) none (.block (.mk [(.mk (.bind (.generated .operand 69)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 70)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 69)), (.move (.generated .operand 70))] false))))] (.matchOn (.move (.generated .holder 71)) [(.mk (.ordering .less) (.mk [] (.lit (.bool false)))), (.mk (.ordering .same) (.mk [] (.lit (.bool true)))), (.mk (.ordering .more) (.mk [] (.call (.function 26) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]))), - (.function (.generated .function 27) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 72)) none (.clone (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 72)) [(.mk .none (.mk [] (.construct (.nil .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 75)) none (.block (.mk [(.mk (.bind (.generated .operand 73)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 74)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 73)), (.move (.generated .operand 74))] false))))] (.matchOn (.move (.generated .holder 75)) [(.mk (.ordering .less) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 3)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 27) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])))]))), - (.function (.generated .function 28) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat (.list .nat))) }] .bool (.mk [(.mk (.bind (.generated .holder 76)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 76)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 29) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 77))]) none (.move (.generated .binding 1)))] (.move (.generated .part 77))))] false) (.mk [(.mk (.bind (.generated .holder 78)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 78)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 83)) none (.block (.mk [(.mk (.bind (.generated .operand 81)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 79)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 79))))), (.mk (.bind (.generated .operand 82)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 80)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 80)))))] (.call (.runtime .compare) [(.move (.generated .operand 81)), (.move (.generated .operand 82))] false))))] (.cond (.matchOn (.move (.generated .holder 83)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 28) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]))), - (.function (.generated .function 29) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }] .bool (.mk [(.mk (.bind (.generated .holder 84)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 84)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [(.mk (.bind (.generated .holder 85)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 85)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 88)) none (.block (.mk [(.mk (.bind (.generated .operand 86)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 87)) none (.copy (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 86)), (.move (.generated .operand 87))] false))))] (.cond (.matchOn (.move (.generated .holder 88)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 29) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])))]))), - (.function (.generated .function 30) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat (.list .nat))) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.option (.pair (.list .nat) (.pair (.list .nat) (.option (.list .nat)))))) (.mk [] (.cond (.call (.function 28) [(.clone (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] true)]))) (.mk [] (.succeed (.construct (.none (.pair (.list .nat) (.pair (.list .nat) (.option (.list .nat))))) []))))))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [], (.succeed (.pair (.call (.function 1) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1))] false) (.pair (.call (.function 3) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1))] true) (.call (.function 16) [(.move (.generated .binding 0))] true)))), [(1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))], rfl, rfl, - (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .nat (.list .nat)))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lNil))))))⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.call (.function 2) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false))], (.matchOn (.move (.generated .holder 1)) [(.mk .none (.mk [] (.construct (.nil .nat) []))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.move (.generated .binding 2))))]), [(1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option (.list .nat))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.nil .nat) [])) (Corr.mCons (Γ' := [(2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.move (.generated .binding 2))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 2)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 2)) [(.mk .none (.mk [] (.construct (.none (.list .nat)) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 6)) none (.block (.mk [(.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 5)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 3)))))] (.call (.runtime .compare) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false))))] (.matchOn (.move (.generated .holder 6)) [(.mk (.ordering .less) (.mk [] (.construct (.none (.list .nat)) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 7))]) none (.move (.generated .binding 2)))] (.move (.generated .part 7))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 2) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]), [(1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.pair .nat (.list .nat)))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none (.list .nat)) [])) (Corr.mCons (Γ' := [(3, (.list (.pair .nat (.list .nat))), (some 3)), (2, (.pair .nat (.list .nat)), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 6)) none (.block (.mk [(.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 5)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 3)))))] (.call (.runtime .compare) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false))))]) (tail := (.matchOn (.move (.generated .holder 6)) [(.mk (.ordering .less) (.mk [] (.construct (.none (.list .nat)) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 7))]) none (.move (.generated .binding 2)))] (.move (.generated .part 7))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 2) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 5)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 3)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 3))) (Corr.first (ta := .nat) (tb := (.list .nat)) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list (.pair .nat (.list .nat))), (some 3)), (2, (.pair .nat (.list .nat)), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none (.list .nat)) [])) (Corr.mCons (Γ' := [(3, (.list (.pair .nat (.list .nat))), (some 3)), (2, (.pair .nat (.list .nat)), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 7))]) none (.move (.generated .binding 2)))] (.move (.generated .part 7))))])) (Corr.mCons (Γ' := [(3, (.list (.pair .nat (.list .nat))), (some 3)), (2, (.pair .nat (.list .nat)), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.call (.function 2) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := [(.list .nat)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 7))]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 7))) (Corr.second (ta := .nat) (tb := (.list .nat)) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun3 : FunOK program krate flags 3 := - ⟨_, rfl, .inl ⟨_, _, [], (.succeed (.call (.function 4) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.block (.mk [(.mk (.bind (.generated .operand 8)) none (.call (.function 13) [(.move (.generated .binding 0)), (.construct (.nil .nat) [])] false))] (.call (.runtime .lengthList) [(.move (.generated .operand 8))] false)))), (.mk (.bind (.generated .operand 10)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] true))), (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil .nat) [])]), (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil .nat) [])])] false)), [(1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))], rfl, rfl, - (Corr.fOfB (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), .nat, (.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 9)) none (.block (.mk [(.mk (.bind (.generated .operand 8)) none (.call (.function 13) [(.move (.generated .binding 0)), (.construct (.nil .nat) [])] false))] (.call (.runtime .lengthList) [(.move (.generated .operand 8))] false)))), (.mk (.bind (.generated .operand 10)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 8)) none (.call (.function 13) [(.move (.generated .binding 0)), (.construct (.nil .nat) [])] false))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 8))] false)) (Corr.prim (ts := [(.list .nat)]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))))) rfl rfl rfl rfl rfl))⟩⟩ - -theorem fun4 : FunOK program krate flags 4 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 11)) none (.copy (.generated .binding 1)))], (.cond (.isZero (.generated .holder 11)) (.mk [] (.move (.generated .binding 3))) (.mk [(.mk (.bind (.generated .binding 4)) none (.predecessor (.generated .holder 11))), (.mk (.bind (.generated .binding 5)) (some (.list .nat)) (.call (.function 5) [(.clone (.generated .binding 0)), (.clone (.generated .binding 3)), (.move (.generated .binding 2)), (.construct (.nil .nat) [])] false)), (.mk (.bind (.generated .holder 12)) none (.clone (.generated .binding 5)))] (.matchOn (.uncons (.generated .holder 12)) [(.mk .none (.mk [] (.move (.generated .binding 3)))), (.mk (.some (.tuple [.wild, .wild])) (.mk [] (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 4)), (.clone (.generated .binding 5)), (.call (.function 11) [(.move (.generated .binding 3)), (.move (.generated .binding 5))] false)] false)))]))), [(3, (.list .nat), (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))], rfl, rfl, - (Corr.matchNat (sl := (some 4)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.move (.generated .binding 3))) (lb := [(.mk (.bind (.generated .binding 5)) (some (.list .nat)) (.call (.function 5) [(.clone (.generated .binding 0)), (.clone (.generated .binding 3)), (.move (.generated .binding 2)), (.construct (.nil .nat) [])] false)), (.mk (.bind (.generated .holder 12)) none (.clone (.generated .binding 5)))]) (tb := (.matchOn (.uncons (.generated .holder 12)) [(.mk .none (.mk [] (.move (.generated .binding 3)))), (.mk (.some (.tuple [.wild, .wild])) (.mk [] (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 4)), (.clone (.generated .binding 5)), (.call (.function 11) [(.move (.generated .binding 3)), (.move (.generated .binding 5))] false)] false)))])) (Corr.bOfE (Corr.var rfl rfl)) (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), (.list .nat), (.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))))) rfl rfl rfl rfl rfl)) rfl (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(5, (.list .nat), (some 5)), (4, .nat, (some 4)), (3, (.list .nat), (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 3))) (Corr.mCons (Γ' := [(7, (.list .nat), none), (6, .nat, none), (5, (.list .nat), (some 5)), (4, .nat, (some 4)), (3, (.list .nat), (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 4)), (.clone (.generated .binding 5)), (.call (.function 11) [(.move (.generated .binding 3)), (.move (.generated .binding 5))] false)] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), .nat, (.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl))))⟩⟩ - -theorem fun5 : FunOK program krate flags 5 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 13)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 13)) [(.mk .none (.mk [] (.move (.generated .binding 3)))), (.mk (.some (.tuple [(.bind (.generated .binding 4)), (.bind (.generated .binding 5))])) (.mk [] (.call (.function 5) [(.clone (.generated .binding 0)), (.clone (.generated .binding 1)), (.move (.generated .binding 5)), (.call (.function 6) [(.move (.generated .binding 1)), (.call (.function 7) [(.move (.generated .binding 0)), (.copy (.generated .binding 4))] false), (.move (.generated .binding 3))] false)] false)))]), [(3, (.list .nat), (some 3)), (2, (.list .nat), (some 2)), (1, (.list .nat), (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, (.list .nat), (some 2)), (1, (.list .nat), (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 3))) (Corr.mCons (Γ' := [(5, (.list .nat), (some 5)), (4, .nat, (some 4)), (3, (.list .nat), (some 3)), (2, (.list .nat), (some 2)), (1, (.list .nat), (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 5) [(.clone (.generated .binding 0)), (.clone (.generated .binding 1)), (.move (.generated .binding 5)), (.call (.function 6) [(.move (.generated .binding 1)), (.call (.function 7) [(.move (.generated .binding 0)), (.copy (.generated .binding 4))] false), (.move (.generated .binding 3))] false)] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), (.list .nat), (.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), (.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lNil)))))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ - -theorem fun6 : FunOK program krate flags 6 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 14)) none (.move (.generated .binding 1)))], (.matchOn (.uncons (.generated .holder 14)) [(.mk .none (.mk [] (.move (.generated .binding 2)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 6) [(.clone (.generated .binding 0)), (.move (.generated .binding 4)), (.cond (.call (.function 9) [(.move (.generated .binding 0)), (.copy (.generated .binding 3))] false) (.mk [] (.move (.generated .binding 2))) (.mk [] (.cond (.call (.function 9) [(.clone (.generated .binding 2)), (.copy (.generated .binding 3))] false) (.mk [] (.move (.generated .binding 2))) (.mk [] (.call (.function 10) [(.move (.generated .binding 2)), (.copy (.generated .binding 3))] false)))))] false)))]), [(2, (.list .nat), (some 2)), (1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .nat), (some 2)), (1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 2))) (Corr.mCons (Γ' := [(4, (.list .nat), (some 4)), (3, .nat, (some 3)), (2, (.list .nat), (some 2)), (1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 6) [(.clone (.generated .binding 0)), (.move (.generated .binding 4)), (.cond (.call (.function 9) [(.move (.generated .binding 0)), (.copy (.generated .binding 3))] false) (.mk [] (.move (.generated .binding 2))) (.mk [] (.cond (.call (.function 9) [(.clone (.generated .binding 2)), (.copy (.generated .binding 3))] false) (.mk [] (.move (.generated .binding 2))) (.mk [] (.call (.function 10) [(.move (.generated .binding 2)), (.copy (.generated .binding 3))] false)))))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list .nat), (.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.cond (lc := []) (ce := (.call (.function 9) [(.move (.generated .binding 0)), (.copy (.generated .binding 3))] false)) (lk := []) (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.move (.generated .binding 2))) (lb := []) (tb := (.cond (.call (.function 9) [(.clone (.generated .binding 2)), (.copy (.generated .binding 3))] false) (.mk [] (.move (.generated .binding 2))) (.mk [] (.call (.function 10) [(.move (.generated .binding 2)), (.copy (.generated .binding 3))] false)))) (Corr.bOfE (Corr.var rfl rfl)) (Corr.cond (lc := []) (ce := (.call (.function 9) [(.clone (.generated .binding 2)), (.copy (.generated .binding 3))] false)) (lk := []) (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.move (.generated .binding 2))) (lb := []) (tb := (.call (.function 10) [(.move (.generated .binding 2)), (.copy (.generated .binding 3))] false)) (Corr.bOfE (Corr.var rfl rfl)) (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)))))) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ - -theorem fun7 : FunOK program krate flags 7 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 15)) none (.call (.function 8) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false))], (.matchOn (.move (.generated .holder 15)) [(.mk .none (.mk [] (.construct (.nil .nat) []))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.move (.generated .binding 2))))]), [(1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option (.list .nat))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.nil .nat) [])) (Corr.mCons (Γ' := [(2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.move (.generated .binding 2))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun8 : FunOK program krate flags 8 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 16)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 16)) [(.mk .none (.mk [] (.construct (.none (.list .nat)) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 20)) none (.block (.mk [(.mk (.bind (.generated .operand 18)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 19)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 17)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 17)))))] (.call (.runtime .compare) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false))))] (.matchOn (.move (.generated .holder 20)) [(.mk (.ordering .less) (.mk [] (.construct (.none (.list .nat)) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 21))]) none (.move (.generated .binding 2)))] (.move (.generated .part 21))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 8) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]), [(1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.pair .nat (.list .nat)))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none (.list .nat)) [])) (Corr.mCons (Γ' := [(3, (.list (.pair .nat (.list .nat))), (some 3)), (2, (.pair .nat (.list .nat)), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 20)) none (.block (.mk [(.mk (.bind (.generated .operand 18)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 19)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 17)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 17)))))] (.call (.runtime .compare) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false))))]) (tail := (.matchOn (.move (.generated .holder 20)) [(.mk (.ordering .less) (.mk [] (.construct (.none (.list .nat)) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 21))]) none (.move (.generated .binding 2)))] (.move (.generated .part 21))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 8) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 18)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 19)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 17)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 17)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 17)), .wild]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 17))) (Corr.first (ta := .nat) (tb := (.list .nat)) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list (.pair .nat (.list .nat))), (some 3)), (2, (.pair .nat (.list .nat)), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none (.list .nat)) [])) (Corr.mCons (Γ' := [(3, (.list (.pair .nat (.list .nat))), (some 3)), (2, (.pair .nat (.list .nat)), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 21))]) none (.move (.generated .binding 2)))] (.move (.generated .part 21))))])) (Corr.mCons (Γ' := [(3, (.list (.pair .nat (.list .nat))), (some 3)), (2, (.pair .nat (.list .nat)), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.call (.function 8) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := [(.list .nat)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 21))]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 21))) (Corr.second (ta := .nat) (tb := (.list .nat)) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun9 : FunOK program krate flags 9 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 22)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 22)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 25)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))))] (.matchOn (.move (.generated .holder 25)) [(.mk (.ordering .less) (.mk [] (.lit (.bool false)))), (.mk (.ordering .same) (.mk [] (.lit (.bool true)))), (.mk (.ordering .more) (.mk [] (.call (.function 9) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]), [(1, .nat, (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 25)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))))]) (tail := (.matchOn (.move (.generated .holder 25)) [(.mk (.ordering .less) (.mk [] (.lit (.bool false)))), (.mk (.ordering .same) (.mk [] (.lit (.bool true)))), (.mk (.ordering .more) (.mk [] (.call (.function 9) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.call (.function 9) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ - -theorem fun10 : FunOK program krate flags 10 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 26)) none (.clone (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 26)) [(.mk .none (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil .nat) [])]))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 29)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 28)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))] (.matchOn (.move (.generated .holder 29)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 10) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])))]), [(1, .nat, (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil .nat) [])])) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 29)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 28)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))]) (tail := (.matchOn (.move (.generated .holder 29)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 10) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 27)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 28)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))])) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.move (.generated .binding 0))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 10) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun11 : FunOK program krate flags 11 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 30)) none (.move (.generated .binding 1)))], (.matchOn (.uncons (.generated .holder 30)) [(.mk .none (.mk [] (.move (.generated .binding 0)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.call (.function 11) [(.call (.function 12) [(.move (.generated .binding 0)), (.copy (.generated .binding 2))] false), (.move (.generated .binding 3))] false)))]), [(1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 0))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 11) [(.call (.function 12) [(.move (.generated .binding 0)), (.copy (.generated .binding 2))] false), (.move (.generated .binding 3))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ - -theorem fun12 : FunOK program krate flags 12 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 31)) none (.clone (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 31)) [(.mk .none (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil .nat) [])]))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 34)) none (.block (.mk [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 33)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] false))))] (.matchOn (.move (.generated .holder 34)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 12) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])))]), [(1, .nat, (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil .nat) [])])) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 34)) none (.block (.mk [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 33)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] false))))]) (tail := (.matchOn (.move (.generated .holder 34)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 12) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 33)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))])) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.move (.generated .binding 0))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 12) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun13 : FunOK program krate flags 13 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 35)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 35)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.call (.function 13) [(.move (.generated .binding 3)), (.call (.function 14) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 36))]) none (.move (.generated .binding 2)))] (.move (.generated .part 36)))), (.call (.function 15) [(.move (.generated .binding 1)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 37)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 37))))] false)] false)] false)))]), [(1, (.list .nat), (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.pair .nat (.list .nat)))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.list .nat), (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 1))) (Corr.mCons (Γ' := [(3, (.list (.pair .nat (.list .nat))), (some 3)), (2, (.pair .nat (.list .nat)), (some 2)), (1, (.list .nat), (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 13) [(.move (.generated .binding 3)), (.call (.function 14) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 36))]) none (.move (.generated .binding 2)))] (.move (.generated .part 36)))), (.call (.function 15) [(.move (.generated .binding 1)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 37)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 37))))] false)] false)] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 36))]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 36))) (Corr.second (ta := .nat) (tb := (.list .nat)) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 37)), .wild]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 37))) (Corr.first (ta := .nat) (tb := (.list .nat)) (Corr.var rfl rfl) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ - -theorem fun14 : FunOK program krate flags 14 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 38)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 38)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.call (.function 14) [(.move (.generated .binding 3)), (.call (.function 15) [(.move (.generated .binding 1)), (.copy (.generated .binding 2))] false)] false)))]), [(1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 1))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 14) [(.move (.generated .binding 3)), (.call (.function 15) [(.move (.generated .binding 1)), (.copy (.generated .binding 2))] false)] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ - -theorem fun15 : FunOK program krate flags 15 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 39)) none (.clone (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 39)) [(.mk .none (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil .nat) [])]))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 42)) none (.block (.mk [(.mk (.bind (.generated .operand 40)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 41)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 40)), (.move (.generated .operand 41))] false))))] (.matchOn (.move (.generated .holder 42)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 15) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])))]), [(1, .nat, (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil .nat) [])])) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 42)) none (.block (.mk [(.mk (.bind (.generated .operand 40)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 41)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 40)), (.move (.generated .operand 41))] false))))]) (tail := (.matchOn (.move (.generated .holder 42)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 15) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 40)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 41)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 40)), (.move (.generated .operand 41))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))])) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.move (.generated .binding 0))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 15) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun16 : FunOK program krate flags 16 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some (.list .nat)) (.call (.function 21) [(.clone (.generated .binding 0)), (.construct (.nil .nat) [])] false))], (.succeed (.call (.function 17) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.bind (.generated .operand 43)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthList) [(.move (.generated .operand 43))] false)))), (.mk (.bind (.generated .operand 45)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 44)), (.move (.generated .operand 45))] true))), (.move (.generated .binding 1)), (.construct (.nil .nat) [])] false)), [(0, (.list (.pair .nat (.list .nat))), (some 0))], rfl, rfl, - (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl (Corr.fOfB (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), .nat, (.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.bind (.generated .operand 43)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthList) [(.move (.generated .operand 43))] false)))), (.mk (.bind (.generated .operand 45)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 44)), (.move (.generated .operand 45))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 43)) none (.clone (.generated .binding 1)))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 43))] false)) (Corr.prim (ts := [(.list .nat)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))))) rfl rfl rfl rfl rfl)))⟩⟩ - -theorem fun17 : FunOK program krate flags 17 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 46)) none (.copy (.generated .binding 1)))], (.cond (.isZero (.generated .holder 46)) (.mk [(.mk (.bind (.generated .holder 47)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 47)) [(.mk .none (.mk [] (.construct .some [(.call (.function 20) [(.move (.generated .binding 3)), (.construct (.nil .nat) [])] false)]))), (.mk (.some (.tuple [.wild, .wild])) (.mk [] (.construct (.none (.list .nat)) [])))])) (.mk [(.mk (.bind (.generated .binding 6)) none (.predecessor (.generated .holder 46))), (.mk (.bind (.generated .holder 48)) none (.call (.function 18) [(.clone (.generated .binding 0)), (.clone (.generated .binding 2)), (.clone (.generated .binding 2))] false))] (.matchOn (.uncons (.generated .holder 48)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 49)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 49)) [(.mk .none (.mk [] (.construct .some [(.call (.function 20) [(.move (.generated .binding 3)), (.construct (.nil .nat) [])] false)]))), (.mk (.some (.tuple [.wild, .wild])) (.mk [] (.construct (.none (.list .nat)) [])))]))), (.mk (.some (.tuple [(.bind (.generated .binding 9)), .wild])) (.mk [] (.call (.function 17) [(.move (.generated .binding 0)), (.copy (.generated .binding 6)), (.call (.function 27) [(.move (.generated .binding 2)), (.copy (.generated .binding 9))] false), (.construct .cons [(.copy (.generated .binding 9)), (.move (.generated .binding 3))])] false)))]))), [(3, (.list .nat), (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))], rfl, rfl, - (Corr.matchNat (sl := (some 6)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := [(.mk (.bind (.generated .holder 47)) none (.move (.generated .binding 2)))]) (ta := (.matchOn (.uncons (.generated .holder 47)) [(.mk .none (.mk [] (.construct .some [(.call (.function 20) [(.move (.generated .binding 3)), (.construct (.nil .nat) [])] false)]))), (.mk (.some (.tuple [.wild, .wild])) (.mk [] (.construct (.none (.list .nat)) [])))])) (lb := [(.mk (.bind (.generated .holder 48)) none (.call (.function 18) [(.clone (.generated .binding 0)), (.clone (.generated .binding 2)), (.clone (.generated .binding 2))] false))]) (tb := (.matchOn (.uncons (.generated .holder 48)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 49)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 49)) [(.mk .none (.mk [] (.construct .some [(.call (.function 20) [(.move (.generated .binding 3)), (.construct (.nil .nat) [])] false)]))), (.mk (.some (.tuple [.wild, .wild])) (.mk [] (.construct (.none (.list .nat)) [])))]))), (.mk (.some (.tuple [(.bind (.generated .binding 9)), .wild])) (.mk [] (.call (.function 17) [(.move (.generated .binding 0)), (.copy (.generated .binding 6)), (.call (.function 27) [(.move (.generated .binding 2)), (.copy (.generated .binding 9))] false), (.construct .cons [(.copy (.generated .binding 9)), (.move (.generated .binding 3))])] false)))])) (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.call (.function 20) [(.move (.generated .binding 3)), (.construct (.nil .nat) [])] false)])) (Corr.mCons (Γ' := [(5, (.list .nat), none), (4, .nat, none), (3, (.list .nat), (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct (.none (.list .nat)) [])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl (Corr.build (ts := [(.list .nat)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) rfl rfl rfl) (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), (.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(6, .nat, (some 6)), (3, (.list .nat), (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .holder 49)) none (.move (.generated .binding 2)))]) (tail := (.matchOn (.uncons (.generated .holder 49)) [(.mk .none (.mk [] (.construct .some [(.call (.function 20) [(.move (.generated .binding 3)), (.construct (.nil .nat) [])] false)]))), (.mk (.some (.tuple [.wild, .wild])) (.mk [] (.construct (.none (.list .nat)) [])))])) (Corr.mCons (Γ' := [(10, (.list .nat), none), (9, .nat, (some 9)), (6, .nat, (some 6)), (3, (.list .nat), (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 17) [(.move (.generated .binding 0)), (.copy (.generated .binding 6)), (.call (.function 27) [(.move (.generated .binding 2)), (.copy (.generated .binding 9))] false), (.construct .cons [(.copy (.generated .binding 9)), (.move (.generated .binding 3))])] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), .nat, (.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) (Corr.lNil)))))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(6, .nat, (some 6)), (3, (.list .nat), (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.call (.function 20) [(.move (.generated .binding 3)), (.construct (.nil .nat) [])] false)])) (Corr.mCons (Γ' := [(8, (.list .nat), none), (7, .nat, none), (6, .nat, (some 6)), (3, (.list .nat), (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct (.none (.list .nat)) [])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl (Corr.build (ts := [(.list .nat)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) rfl rfl rfl)) rfl rfl rfl)))⟩⟩ - -theorem fun18 : FunOK program krate flags 18 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 50)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 50)) [(.mk .none (.mk [] (.construct (.nil .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.cond (.call (.function 19) [(.clone (.generated .binding 0)), (.copy (.generated .binding 3)), (.clone (.generated .binding 1))] false) (.mk [] (.construct .cons [(.copy (.generated .binding 3)), (.call (.function 18) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false)])) (.mk [] (.call (.function 18) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false)))))]), [(2, (.list .nat), (some 2)), (1, (.list .nat), (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .nat), (some 2)), (1, (.list .nat), (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.nil .nat) [])) (Corr.mCons (Γ' := [(4, (.list .nat), (some 4)), (3, .nat, (some 3)), (2, (.list .nat), (some 2)), (1, (.list .nat), (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 19) [(.clone (.generated .binding 0)), (.copy (.generated .binding 3)), (.clone (.generated .binding 1))] false) (.mk [] (.construct .cons [(.copy (.generated .binding 3)), (.call (.function 18) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false)])) (.mk [] (.call (.function 18) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false)))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 19) [(.clone (.generated .binding 0)), (.copy (.generated .binding 3)), (.clone (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), .nat, (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .cons [(.copy (.generated .binding 3)), (.call (.function 18) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false)])) (lb := []) (tb := (.call (.function 18) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false)) (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), (.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl) (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), (.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)))) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun19 : FunOK program krate flags 19 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 51)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 51)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.cond (.call (.function 26) [(.call (.function 24) [(.clone (.generated .binding 0)), (.copy (.generated .binding 3))] false), (.copy (.generated .binding 1))] false) (.mk [] (.lit (.bool false))) (.mk [] (.call (.function 19) [(.move (.generated .binding 0)), (.copy (.generated .binding 1)), (.move (.generated .binding 4))] false)))))]), [(2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list .nat), (some 4)), (3, .nat, (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 26) [(.call (.function 24) [(.clone (.generated .binding 0)), (.copy (.generated .binding 3))] false), (.copy (.generated .binding 1))] false) (.mk [] (.lit (.bool false))) (.mk [] (.call (.function 19) [(.move (.generated .binding 0)), (.copy (.generated .binding 1)), (.move (.generated .binding 4))] false)))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 26) [(.call (.function 24) [(.clone (.generated .binding 0)), (.copy (.generated .binding 3))] false), (.copy (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool false))) (lb := []) (tb := (.call (.function 19) [(.move (.generated .binding 0)), (.copy (.generated .binding 1)), (.move (.generated .binding 4))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), .nat, (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ - -theorem fun20 : FunOK program krate flags 20 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 52)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 52)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.call (.function 20) [(.move (.generated .binding 3)), (.construct .cons [(.copy (.generated .binding 2)), (.move (.generated .binding 1))])] false)))]), [(1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 1))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 20) [(.move (.generated .binding 3)), (.construct .cons [(.copy (.generated .binding 2)), (.move (.generated .binding 1))])] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ - -theorem fun21 : FunOK program krate flags 21 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 53)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 53)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.call (.function 21) [(.move (.generated .binding 3)), (.call (.function 22) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 54))]) none (.move (.generated .binding 2)))] (.move (.generated .part 54)))), (.call (.function 23) [(.move (.generated .binding 1)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 55)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 55))))] false)] false)] false)))]), [(1, (.list .nat), (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.pair .nat (.list .nat)))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.list .nat), (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 1))) (Corr.mCons (Γ' := [(3, (.list (.pair .nat (.list .nat))), (some 3)), (2, (.pair .nat (.list .nat)), (some 2)), (1, (.list .nat), (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 21) [(.move (.generated .binding 3)), (.call (.function 22) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 54))]) none (.move (.generated .binding 2)))] (.move (.generated .part 54)))), (.call (.function 23) [(.move (.generated .binding 1)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 55)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 55))))] false)] false)] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 54))]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 54))) (Corr.second (ta := .nat) (tb := (.list .nat)) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 55)), .wild]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 55))) (Corr.first (ta := .nat) (tb := (.list .nat)) (Corr.var rfl rfl) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ - -theorem fun22 : FunOK program krate flags 22 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 56)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 56)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.call (.function 22) [(.move (.generated .binding 3)), (.call (.function 23) [(.move (.generated .binding 1)), (.copy (.generated .binding 2))] false)] false)))]), [(1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 1))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, (.list .nat), (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 22) [(.move (.generated .binding 3)), (.call (.function 23) [(.move (.generated .binding 1)), (.copy (.generated .binding 2))] false)] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list .nat), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ - -theorem fun23 : FunOK program krate flags 23 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 57)) none (.clone (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 57)) [(.mk .none (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil .nat) [])]))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 60)) none (.block (.mk [(.mk (.bind (.generated .operand 58)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 59)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 58)), (.move (.generated .operand 59))] false))))] (.matchOn (.move (.generated .holder 60)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 23) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])))]), [(1, .nat, (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil .nat) [])])) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 60)) none (.block (.mk [(.mk (.bind (.generated .operand 58)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 59)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 58)), (.move (.generated .operand 59))] false))))]) (tail := (.matchOn (.move (.generated .holder 60)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 23) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 58)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 59)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 58)), (.move (.generated .operand 59))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))])) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.move (.generated .binding 0))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 23) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun24 : FunOK program krate flags 24 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 61)) none (.call (.function 25) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false))], (.matchOn (.move (.generated .holder 61)) [(.mk .none (.mk [] (.construct (.nil .nat) []))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.move (.generated .binding 2))))]), [(1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option (.list .nat))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.nil .nat) [])) (Corr.mCons (Γ' := [(2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.move (.generated .binding 2))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun25 : FunOK program krate flags 25 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 62)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 62)) [(.mk .none (.mk [] (.construct (.none (.list .nat)) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 66)) none (.block (.mk [(.mk (.bind (.generated .operand 64)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 65)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 63)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 63)))))] (.call (.runtime .compare) [(.move (.generated .operand 64)), (.move (.generated .operand 65))] false))))] (.matchOn (.move (.generated .holder 66)) [(.mk (.ordering .less) (.mk [] (.construct (.none (.list .nat)) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 67))]) none (.move (.generated .binding 2)))] (.move (.generated .part 67))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 25) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]), [(1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.pair .nat (.list .nat)))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none (.list .nat)) [])) (Corr.mCons (Γ' := [(3, (.list (.pair .nat (.list .nat))), (some 3)), (2, (.pair .nat (.list .nat)), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 66)) none (.block (.mk [(.mk (.bind (.generated .operand 64)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 65)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 63)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 63)))))] (.call (.runtime .compare) [(.move (.generated .operand 64)), (.move (.generated .operand 65))] false))))]) (tail := (.matchOn (.move (.generated .holder 66)) [(.mk (.ordering .less) (.mk [] (.construct (.none (.list .nat)) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 67))]) none (.move (.generated .binding 2)))] (.move (.generated .part 67))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 25) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 64)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 65)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 63)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 63)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 64)), (.move (.generated .operand 65))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 63)), .wild]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 63))) (Corr.first (ta := .nat) (tb := (.list .nat)) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list (.pair .nat (.list .nat))), (some 3)), (2, (.pair .nat (.list .nat)), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none (.list .nat)) [])) (Corr.mCons (Γ' := [(3, (.list (.pair .nat (.list .nat))), (some 3)), (2, (.pair .nat (.list .nat)), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 67))]) none (.move (.generated .binding 2)))] (.move (.generated .part 67))))])) (Corr.mCons (Γ' := [(3, (.list (.pair .nat (.list .nat))), (some 3)), (2, (.pair .nat (.list .nat)), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.call (.function 25) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := [(.list .nat)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 67))]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 67))) (Corr.second (ta := .nat) (tb := (.list .nat)) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun26 : FunOK program krate flags 26 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 68)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 68)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 71)) none (.block (.mk [(.mk (.bind (.generated .operand 69)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 70)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 69)), (.move (.generated .operand 70))] false))))] (.matchOn (.move (.generated .holder 71)) [(.mk (.ordering .less) (.mk [] (.lit (.bool false)))), (.mk (.ordering .same) (.mk [] (.lit (.bool true)))), (.mk (.ordering .more) (.mk [] (.call (.function 26) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]), [(1, .nat, (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 71)) none (.block (.mk [(.mk (.bind (.generated .operand 69)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 70)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 69)), (.move (.generated .operand 70))] false))))]) (tail := (.matchOn (.move (.generated .holder 71)) [(.mk (.ordering .less) (.mk [] (.lit (.bool false)))), (.mk (.ordering .same) (.mk [] (.lit (.bool true)))), (.mk (.ordering .more) (.mk [] (.call (.function 26) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 69)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 70)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 69)), (.move (.generated .operand 70))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.call (.function 26) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ - -theorem fun27 : FunOK program krate flags 27 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 72)) none (.clone (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 72)) [(.mk .none (.mk [] (.construct (.nil .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 75)) none (.block (.mk [(.mk (.bind (.generated .operand 73)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 74)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 73)), (.move (.generated .operand 74))] false))))] (.matchOn (.move (.generated .holder 75)) [(.mk (.ordering .less) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 3)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 27) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])))]), [(1, .nat, (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.nil .nat) [])) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 75)) none (.block (.mk [(.mk (.bind (.generated .operand 73)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 74)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 73)), (.move (.generated .operand 74))] false))))]) (tail := (.matchOn (.move (.generated .holder 75)) [(.mk (.ordering .less) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 3)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 27) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 73)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 74)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 73)), (.move (.generated .operand 74))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 0))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.move (.generated .binding 3))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 27) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun28 : FunOK program krate flags 28 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 76)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 76)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 29) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 77))]) none (.move (.generated .binding 1)))] (.move (.generated .part 77))))] false) (.mk [(.mk (.bind (.generated .holder 78)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 78)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 83)) none (.block (.mk [(.mk (.bind (.generated .operand 81)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 79)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 79))))), (.mk (.bind (.generated .operand 82)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 80)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 80)))))] (.call (.runtime .compare) [(.move (.generated .operand 81)), (.move (.generated .operand 82))] false))))] (.cond (.matchOn (.move (.generated .holder 83)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 28) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]), [(0, (.list (.pair .nat (.list .nat))), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.pair .nat (.list .nat)))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, (.list (.pair .nat (.list .nat))), (some 2)), (1, (.pair .nat (.list .nat)), (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 29) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 77))]) none (.move (.generated .binding 1)))] (.move (.generated .part 77))))] false) (.mk [(.mk (.bind (.generated .holder 78)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 78)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 83)) none (.block (.mk [(.mk (.bind (.generated .operand 81)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 79)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 79))))), (.mk (.bind (.generated .operand 82)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 80)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 80)))))] (.call (.runtime .compare) [(.move (.generated .operand 81)), (.move (.generated .operand 82))] false))))] (.cond (.matchOn (.move (.generated .holder 83)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 28) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 29) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 77))]) none (.move (.generated .binding 1)))] (.move (.generated .part 77))))] false)) (lk := []) (Corr.callOps (ts := [(.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 77))]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 77))) (Corr.second (ta := .nat) (tb := (.list .nat)) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .holder 78)) none (.clone (.generated .binding 2)))]) (ta := (.matchOn (.uncons (.generated .holder 78)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 83)) none (.block (.mk [(.mk (.bind (.generated .operand 81)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 79)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 79))))), (.mk (.bind (.generated .operand 82)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 80)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 80)))))] (.call (.runtime .compare) [(.move (.generated .operand 81)), (.move (.generated .operand 82))] false))))] (.cond (.matchOn (.move (.generated .holder 83)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 28) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (lb := []) (tb := (.lit (.bool false))) (Corr.matchArms (st := (.list (.pair .nat (.list .nat)))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.pair .nat (.list .nat))), (some 2)), (1, (.pair .nat (.list .nat)), (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair .nat (.list .nat))), none), (3, (.pair .nat (.list .nat)), (some 3)), (2, (.list (.pair .nat (.list .nat))), (some 2)), (1, (.pair .nat (.list .nat)), (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 83)) none (.block (.mk [(.mk (.bind (.generated .operand 81)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 79)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 79))))), (.mk (.bind (.generated .operand 82)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 80)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 80)))))] (.call (.runtime .compare) [(.move (.generated .operand 81)), (.move (.generated .operand 82))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 83)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 28) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .holder 83)) none (.block (.mk [(.mk (.bind (.generated .operand 81)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 79)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 79))))), (.mk (.bind (.generated .operand 82)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 80)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 80)))))] (.call (.runtime .compare) [(.move (.generated .operand 81)), (.move (.generated .operand 82))] false))))]) (ce := (.matchOn (.move (.generated .holder 83)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 81)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 79)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 79))))), (.mk (.bind (.generated .operand 82)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 80)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 80)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 81)), (.move (.generated .operand 82))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 79)), .wild]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 79))) (Corr.first (ta := .nat) (tb := (.list .nat)) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 80)), .wild]) none (.move (.generated .binding 3)))]) (tail := (.move (.generated .part 80))) (Corr.first (ta := .nat) (tb := (.list .nat)) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.list (.pair .nat (.list .nat))), none), (3, (.pair .nat (.list .nat)), (some 3)), (2, (.list (.pair .nat (.list .nat))), (some 2)), (1, (.pair .nat (.list .nat)), (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair .nat (.list .nat))), none), (3, (.pair .nat (.list .nat)), (some 3)), (2, (.list (.pair .nat (.list .nat))), (some 2)), (1, (.pair .nat (.list .nat)), (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, (.list (.pair .nat (.list .nat))), none), (3, (.pair .nat (.list .nat)), (some 3)), (2, (.list (.pair .nat (.list .nat))), (some 2)), (1, (.pair .nat (.list .nat)), (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 28) [(.move (.generated .binding 2))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.list (.pair .nat (.list .nat)))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ - -theorem fun29 : FunOK program krate flags 29 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 84)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 84)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [(.mk (.bind (.generated .holder 85)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 85)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 88)) none (.block (.mk [(.mk (.bind (.generated .operand 86)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 87)) none (.copy (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 86)), (.move (.generated .operand 87))] false))))] (.cond (.matchOn (.move (.generated .holder 88)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 29) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])))]), [(0, (.list .nat), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 85)) none (.clone (.generated .binding 2)))]) (tail := (.matchOn (.uncons (.generated .holder 85)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 88)) none (.block (.mk [(.mk (.bind (.generated .operand 86)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 87)) none (.copy (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 86)), (.move (.generated .operand 87))] false))))] (.cond (.matchOn (.move (.generated .holder 88)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 29) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list .nat), none), (3, .nat, (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 88)) none (.block (.mk [(.mk (.bind (.generated .operand 86)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 87)) none (.copy (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 86)), (.move (.generated .operand 87))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 88)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 29) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .holder 88)) none (.block (.mk [(.mk (.bind (.generated .operand 86)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 87)) none (.copy (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 86)), (.move (.generated .operand 87))] false))))]) (ce := (.matchOn (.move (.generated .holder 88)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 86)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 87)) none (.copy (.generated .binding 3)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 86)), (.move (.generated .operand 87))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.list .nat), none), (3, .nat, (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list .nat), none), (3, .nat, (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, (.list .nat), none), (3, .nat, (some 3)), (2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 29) [(.move (.generated .binding 2))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ - -theorem fun30 : FunOK program krate flags 30 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 28) [(.clone (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] true)]))) (.mk [] (.succeed (.construct (.none (.pair (.list .nat) (.pair (.list .nat) (.option (.list .nat))))) [])))), [(1, .nat, (some 1)), (0, (.list (.pair .nat (.list .nat))), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 28) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.list (.pair .nat (.list .nat)))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] true)]))) (lb := []) (tb := (.succeed (.construct (.none (.pair (.list .nat) (.pair (.list .nat) (.option (.list .nat))))) []))) (Corr.fOfB (Corr.build (ts := [(.pair (.list .nat) (.pair (.list .nat) (.option (.list .nat))))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .nat (.list .nat))), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | 3 => exact fun3 - | 4 => exact fun4 - | 5 => exact fun5 - | 6 => exact fun6 - | 7 => exact fun7 - | 8 => exact fun8 - | 9 => exact fun9 - | 10 => exact fun10 - | 11 => exact fun11 - | 12 => exact fun12 - | 13 => exact fun13 - | 14 => exact fun14 - | 15 => exact fun15 - | 16 => exact fun16 - | 17 => exact fun17 - | 18 => exact fun18 - | 19 => exact fun19 - | 20 => exact fun20 - | 21 => exact fun21 - | 22 => exact fun22 - | 23 => exact fun23 - | 24 => exact fun24 - | 25 => exact fun25 - | 26 => exact fun26 - | 27 => exact fun27 - | 28 => exact fun28 - | 29 => exact fun29 - | 30 => exact fun30 - | _ + 31 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R7.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R7.lean deleted file mode 100644 index b0dee171b..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R7.lean +++ /dev/null @@ -1,124 +0,0 @@ -import LexLeanPreservation.Core -import LexLeanPreservation.Values -import LexLeanPreservation.Primitives -import LexLeanPreservation.Fixed -import LexLeanPreservation.Keys -import LexLeanPreservation.Templates -import LexLeanPreservation.Validate -import Coverage.Boundary -import Coverage.Colls -import Coverage.Main -import Coverage.Prims -import Coverage.RecRoots -import Coverage.Recur -import Coverage.Syntax -import Coverage.Types -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -set_option linter.unusedVariables false -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7 - -def __prog : _root_.LexLeanTarget.TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0], types := [(.list (.pair .string (.list .string)))], result := (.option (.list .string)), - body := (.call 1 [(.var 0)]) }, - { parameters := [0], types := [(.list (.pair .string (.list .string)))], result := (.option (.list .string)), - body := (.«let» 1 (.list .string) (.call 6 [(.var 0), (.build .nil (.list .string) [])]) (.call 2 [(.var 0), (.prim .natAdd [(.prim .length [(.var 1)]), (.value .nat (.nat 1))]), (.var 1), (.build .nil (.list .string) [])])) }, - { parameters := [0, 1, 2, 3], types := [(.list (.pair .string (.list .string))), .nat, (.list .string), (.list .string)], result := (.option (.list .string)), - body := (.«match» (.option (.list .string)) (.var 1) [(.arm .zero [] (.«match» (.option (.list .string)) (.var 2) [(.arm .nil [] (.build .some (.option (.list .string)) [(.call 5 [(.var 3), (.build .nil (.list .string) [])])])), (.arm .cons [4, 5] (.build .none (.option (.list .string)) []))])), (.arm .succ [6] (.«match» (.option (.list .string)) (.call 3 [(.var 0), (.var 2), (.var 2)]) [(.arm .nil [] (.«match» (.option (.list .string)) (.var 2) [(.arm .nil [] (.build .some (.option (.list .string)) [(.call 5 [(.var 3), (.build .nil (.list .string) [])])])), (.arm .cons [7, 8] (.build .none (.option (.list .string)) []))])), (.arm .cons [9, 10] (.call 2 [(.var 0), (.var 6), (.call 12 [(.var 2), (.var 9)]), (.build .cons (.list .string) [(.var 9), (.var 3)])]))]))]) }, - { parameters := [0, 1, 2], types := [(.list (.pair .string (.list .string))), (.list .string), (.list .string)], result := (.list .string), - body := (.«match» (.list .string) (.var 2) [(.arm .nil [] (.build .nil (.list .string) [])), (.arm .cons [3, 4] (.cond (.call 4 [(.var 0), (.var 3), (.var 1)]) (.build .cons (.list .string) [(.var 3), (.call 3 [(.var 0), (.var 1), (.var 4)])]) (.call 3 [(.var 0), (.var 1), (.var 4)])))]) }, - { parameters := [0, 1, 2], types := [(.list (.pair .string (.list .string))), .string, (.list .string)], result := .bool, - body := (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.call 11 [(.call 9 [(.var 0), (.var 3)]), (.var 1)]) (.build .false .bool []) (.call 4 [(.var 0), (.var 1), (.var 4)])))]) }, - { parameters := [0, 1], types := [(.list .string), (.list .string)], result := (.list .string), - body := (.«match» (.list .string) (.var 0) [(.arm .nil [] (.var 1)), (.arm .cons [2, 3] (.call 5 [(.var 3), (.build .cons (.list .string) [(.var 2), (.var 1)])]))]) }, - { parameters := [0, 1], types := [(.list (.pair .string (.list .string))), (.list .string)], result := (.list .string), - body := (.«match» (.list .string) (.var 0) [(.arm .nil [] (.var 1)), (.arm .cons [2, 3] (.call 6 [(.var 3), (.call 7 [(.second (.var 2)), (.call 8 [(.var 1), (.first (.var 2))])])]))]) }, - { parameters := [0, 1], types := [(.list .string), (.list .string)], result := (.list .string), - body := (.«match» (.list .string) (.var 0) [(.arm .nil [] (.var 1)), (.arm .cons [2, 3] (.call 7 [(.var 3), (.call 8 [(.var 1), (.var 2)])]))]) }, - { parameters := [0, 1], types := [(.list .string), .string], result := (.list .string), - body := (.«match» (.list .string) (.var 0) [(.arm .nil [] (.build .cons (.list .string) [(.var 1), (.build .nil (.list .string) [])])), (.arm .cons [2, 3] (.«match» (.list .string) (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .cons (.list .string) [(.var 1), (.var 0)])), (.arm .eq [] (.var 0)), (.arm .gt [] (.build .cons (.list .string) [(.var 2), (.call 8 [(.var 3), (.var 1)])]))]))]) }, - { parameters := [0, 1], types := [(.list (.pair .string (.list .string))), .string], result := (.list .string), - body := (.«match» (.list .string) (.call 10 [(.var 0), (.var 1)]) [(.arm .none [] (.build .nil (.list .string) [])), (.arm .some [2] (.var 2))]) }, - { parameters := [0, 1], types := [(.list (.pair .string (.list .string))), .string], result := (.option (.list .string)), - body := (.«match» (.option (.list .string)) (.var 0) [(.arm .nil [] (.build .none (.option (.list .string)) [])), (.arm .cons [2, 3] (.«match» (.option (.list .string)) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.build .none (.option (.list .string)) [])), (.arm .eq [] (.build .some (.option (.list .string)) [(.second (.var 2))])), (.arm .gt [] (.call 10 [(.var 3), (.var 1)]))]))]) }, - { parameters := [0, 1], types := [(.list .string), .string], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .false .bool [])), (.arm .cons [2, 3] (.«match» .bool (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .false .bool [])), (.arm .eq [] (.build .true .bool [])), (.arm .gt [] (.call 11 [(.var 3), (.var 1)]))]))]) }, - { parameters := [0, 1], types := [(.list .string), .string], result := (.list .string), - body := (.«match» (.list .string) (.var 0) [(.arm .nil [] (.build .nil (.list .string) [])), (.arm .cons [2, 3] (.«match» (.list .string) (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.var 0)), (.arm .eq [] (.var 3)), (.arm .gt [] (.build .cons (.list .string) [(.var 2), (.call 12 [(.var 3), (.var 1)])]))]))]) }, - { parameters := [0], types := [(.list (.pair .string (.list .string)))], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 14 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 13 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, - { parameters := [0], types := [(.list .string)], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.var 1), (.var 3)]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 14 [(.var 2)]) (.build .false .bool [])))]))]) }, - { parameters := [0], types := [(.list (.pair .string (.list .string)))], result := (.option (.option (.list .string))), - body := (.cond (.call 13 [(.var 0)]) (.build .some (.option (.option (.list .string))) [(.call 0 [(.var 0)])]) (.build .none (.option (.option (.list .string))) [])) }] } - -def __fits_0 (g : (List (Prod String (List String)))) : Bool := - ((Bool.true && Bool.true) && (_root_.LexLeanPreservation.graphFits _root_.LexLeanCollections.insertElement (g))) - -theorem __rel_0 (g : (List (Prod String (List String)))) : _root_.LexLeanPreservation.FunRel __prog 0 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.string))) g)] (_root_.LexLeanPreservation.Rel (__fits_0 g) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.string)) (Coverage.Colls.stringGraph g))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.tpl_graphTopological (_root_.LexLeanPreservation.keySpec_string _root_.LexLeanCollections.compareCodes rfl (fun _ _ => rfl) (fun _ _ => rfl) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.string) (fun _ => rfl) (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.string))) (fun _ => rfl) (_root_.LexLeanPreservation.optEnc (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.string)) (fun _ => rfl) (⟨(fun _ => rfl), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.insertElement, __h]), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.insertElement, __h]), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.insertElement, __h]), (fun _ => rfl), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.removeElement, __h]), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.removeElement, __h]), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.removeElement, __h]), (fun _ => rfl), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.containsElement, __h]), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.containsElement, __h]), (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.containsElement, __h])⟩ : _root_.LexLeanPreservation.SetOps (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) _root_.LexLeanCollections.insertElement _root_.LexLeanCollections.removeElement _root_.LexLeanCollections.containsElement) (⟨(fun _ => rfl), (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]), (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]), (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h])⟩ : _root_.LexLeanPreservation.LookOps (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) (_root_.LexLeanCollections.lookupEntry : String -> List (Prod String (List String)) -> Option (List String))) (g) (_root_.LexLeanCollections.graphSuccessors (g)) (fun _ => rfl) (⟨(fun _ => rfl), (fun _ _ _ => rfl), (fun _ _ => rfl), (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.topological, __h] <;> rfl), (fun _ _ _ _ _ __h => by simp only [_root_.LexLeanCollections.topological, __h])⟩ : _root_.LexLeanPreservation.TopoOps (_root_.LexLeanCollections.graphSuccessors (g)) _root_.LexLeanCollections.containsElement _root_.LexLeanCollections.removeElement (_root_.LexLeanCollections.topological (g))) (p := __prog) (fi := 1) (tk := .string) rfl rfl rfl rfl rfl rfl rfl rfl rfl rfl rfl rfl)) - -def denote (g : (List (Prod String (List String)))) : _root_.LexLeanPreservation.Obs := - _root_.cond (__fits_0 g) (_root_.LexLeanPreservation.Obs.value (((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.string)) (Coverage.Colls.stringGraph g)))) _root_.LexLeanPreservation.Obs.overflow - -theorem root (g : (List (Prod String (List String)))) : _root_.LexLeanPreservation.RunConv __prog 0 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.string))) g)] (_root_.LexLeanPreservation.Rel (__fits_0 g) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.string)) (Coverage.Colls.stringGraph g))) := - _root_.LexLeanPreservation.run_of_funRel (__rel_0 g) - -def __valid_14 : (List String) -> Bool := - _root_.LexLeanPreservation.ascSet (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) - -def __inv_14 : (List String) -> Prop := - _root_.LexLeanPreservation.InvSet (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) - -theorem __viff_14 : ∀ (__v : (List String)), __valid_14 __v = Bool.true ↔ __inv_14 __v := - _root_.LexLeanPreservation.ascSet_inv (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) - -theorem __vrel_14 : ∀ (__v : (List String)), _root_.LexLeanPreservation.FunRel __prog 14 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.string) __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_14 __v))) := - _root_.LexLeanPreservation.tpl_validSet (_root_.LexLeanPreservation.keySpec_string _root_.LexLeanCollections.compareCodes rfl (fun _ _ => rfl) (fun _ _ => rfl) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.string) (fun _ => rfl) rfl - -def __valid_13 : (List (Prod String (List String))) -> Bool := - _root_.LexLeanPreservation.ascMap (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) __valid_14 - -def __inv_13 : (List (Prod String (List String))) -> Prop := - _root_.LexLeanPreservation.InvMap (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) __inv_14 - -theorem __viff_13 : ∀ (__v : (List (Prod String (List String)))), __valid_13 __v = Bool.true ↔ __inv_13 __v := - _root_.LexLeanPreservation.ascMap_inv (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) __valid_14 __inv_14 __viff_14 - -theorem __vrel_13 : ∀ (__v : (List (Prod String (List String)))), _root_.LexLeanPreservation.FunRel __prog 13 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.string))) __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_13 __v))) := - _root_.LexLeanPreservation.tpl_validMap (_root_.LexLeanPreservation.keySpec_string _root_.LexLeanCollections.compareCodes rfl (fun _ _ => rfl) (fun _ _ => rfl) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) (fun _ _ => rfl)) __valid_14 (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.string))) (fun _ => rfl) __vrel_14 rfl - -def entryFits (g : (List (Prod String (List String)))) : Bool := - (if __valid_13 g then __fits_0 g else Bool.true) - -def entryValue (g : (List (Prod String (List String)))) : _root_.LexLeanTarget.TargetSyntax.Value := - (if __valid_13 g then (_root_.LexLeanTarget.TargetSyntax.Value.some ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.string)) (Coverage.Colls.stringGraph g))) else _root_.LexLeanTarget.TargetSyntax.Value.none) - -/-- The entry's observation. -/ -def denoteEntry (g : (List (Prod String (List String)))) : _root_.LexLeanPreservation.Obs := - _root_.cond (_root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.entryFits g) (_root_.LexLeanPreservation.Obs.value (_root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.entryValue g)) _root_.LexLeanPreservation.Obs.overflow - -/-- §17.12's invariants of the validated parameters. -/ -def accepts (g : (List (Prod String (List String)))) : Prop := - (__inv_13 g ∧ _root_.True) - -theorem entry (g : (List (Prod String (List String)))) : _root_.LexLeanPreservation.RunConv __prog 15 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.string (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.string))) g)] (_root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.denoteEntry g) := - _root_.LexLeanPreservation.run_of_funRel (_root_.LexLeanPreservation.FunRel.fits_eq (_root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun __c => if __c then __fits_0 g else Bool.true) (fun __c => if __c then (_root_.LexLeanTarget.TargetSyntax.Value.some ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.string)) (Coverage.Colls.stringGraph g))) else _root_.LexLeanTarget.TargetSyntax.Value.none) (__valid_13 g) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_13 g)) (fun _ => _root_.LexLeanPreservation.Conv.fits_eq (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_0 g)) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some) (by simp)) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (by simp [_root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.entryFits])) - -theorem entry_accepts (g : (List (Prod String (List String)))) (__h : _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.accepts g) : _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.denoteEntry g = _root_.LexLeanPreservation.someObs (_root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.denote g) := by - unfold _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.accepts at __h - unfold _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.denoteEntry _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.entryFits _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.entryValue _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.denote - simp only [_root_.if_true, (__viff_13 g).mpr __h.1] - cases __fits_0 g <;> rfl - -theorem entry_refuses (g : (List (Prod String (List String)))) (__h : ¬ _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.accepts g) : _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.denoteEntry g = _root_.LexLeanPreservation.Obs.value _root_.LexLeanTarget.TargetSyntax.Value.none := by - unfold _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.accepts at __h - unfold _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.denoteEntry _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.entryFits _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.entryValue - cases __c0 : __valid_13 g - · simp - · exact _root_.absurd ⟨(__viff_13 g).mp __c0, _root_.trivial⟩ __h - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7 diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R7/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R7/Compose/RustStd.lex.tex deleted file mode 100644 index ed9ef404a..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R7/Compose/RustStd.lex.tex +++ /dev/null @@ -1,626 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.Compose.RustStd.root : @1256 := @1257 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.RustStd.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.RustStd.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.RustStd.flags -@3 := String -@4 := List.{0} -@5 := @4 @3 -@6 := Prod.{0, 0} -@7 := @6 @3 -@8 := @7 @5 -@9 := @4 @8 -@10 := #1 -@11 := LexLeanTarget.TargetSyntax.Value.string -@12 := LexLeanPreservation.encList -@13 := @12 @3 -@14 := @13 @11 -@15 := LexLeanPreservation.encPair -@16 := @15 @3 -@17 := @16 @5 -@18 := @17 @11 -@19 := @18 @14 -@20 := @12 @8 -@21 := @20 @19 -@22 := @21 @10 -@23 := LexLeanTarget.TargetSyntax.Ty.string -@24 := LexLeanTarget.TargetSyntax.Ty.list -@25 := @24 @23 -@26 := LexLeanTarget.TargetSyntax.Ty.pair -@27 := @26 @23 -@28 := @27 @25 -@29 := @24 @28 -@30 := #0 -@31 := LexLeanTarget.TargetSyntax.Program -@32 := LexLeanPreservation.Rust.RCrate -@33 := LexLeanPreservation.Rust.Flags -@34 := LexLeanPreservation.Rust.WT -@35 := #3 -@36 := @34 @35 -@37 := #2 -@39 := @36 @37 @10 -@40 := @11 @30 -@46 := {p : @31} -> {c : @32} -> {A : @33} -> (s : @3) -> @39 @40 @23 -@48 := LexLeanPreservation.Rust.wt_string @0 -@49 := @34 @0 -@56 := {c : @32} -> {A : @33} -> (s : @3) -> @49 @37 @10 @40 @23 -@57 := @48 @1 -@58 := @49 @1 -@63 := {A : @33} -> (s : @3) -> @58 @10 @40 @23 -@64 := @57 @2 -@65 := @58 @2 -@66 := @65 @40 -@67 := @66 @23 -@68 := (s : @3) -> @67 -@70 := fun (__x : @3) => @64 @30 -@71 := Sort 1 -@72 := LexLeanTarget.TargetSyntax.Value -@73 := (a._@._internal._hyg.#0 : @30) -> @72 -@74 := LexLeanTarget.TargetSyntax.Ty -@75 := #6 -@76 := @34 @75 -@77 := #5 -@78 := @76 @77 -@79 := #4 -@80 := @78 @79 -@81 := @37 @30 -@84 := (x : @37) -> @80 @81 @10 -@85 := @4 @35 -@86 := #7 -@89 := @34 @86 @75 @77 -@92 := @12 @79 @35 @30 -@93 := @89 @92 -@94 := @24 @37 -@103 := {p : @31} -> - {c : @32} -> - {A : @33} -> {α : @71} -> {e : @73} -> {t : @74} -> (h : @84) -> (xs : @85) -> @93 @94 -@105 := LexLeanPreservation.Rust.wt_encList @0 -@107 := @49 @77 @79 -@121 := {c : @32} -> - {A : @33} -> - {α : @71} -> - {e : @73} -> {t : @74} -> (h : (x : @37) -> @107 @81 @10) -> (xs : @85) -> @49 @75 @77 @92 @94 -@122 := @105 @1 -@123 := @58 @79 -@135 := {A : @33} -> - {α : @71} -> - {e : @73} -> {t : @74} -> (h : (x : @37) -> @123 @81 @10) -> (xs : @85) -> @58 @77 @92 @94 -@136 := @122 @2 -@138 := @65 @81 @10 -@146 := {α : @71} -> {e : @73} -> {t : @74} -> (h : (x : @37) -> @138) -> (xs : @85) -> @65 @92 @94 -@147 := @136 @3 -@148 := (a._@._internal._hyg.#0 : @3) -> @72 -@157 := {e : @148} -> {t : @74} -> (h : (x : @3) -> @138) -> (xs : @5) -> @65 (@13 @35 @30) @94 -@158 := @147 @11 -@160 := (x : @3) -> @66 @10 -@162 := @65 (@14 @30) -@166 := {t : @74} -> (h : @160) -> (xs : @5) -> @162 @94 -@167 := @158 @23 -@168 := (x : @3) -> @67 -@169 := @162 @25 -@171 := (h : @168) -> (xs : @5) -> @169 -@174 := fun (__x : @5) => @167 @70 @30 -@175 := (a._@._internal._hyg.#0 : @10) -> @72 -@176 := #9 -@177 := @34 @176 -@178 := #8 -@180 := @177 @178 @86 -@181 := @79 @30 -@184 := (x : @77) -> @180 @181 @37 -@185 := #10 -@191 := (x : @77) -> @34 @185 @176 @178 @181 @37 -@193 := @6 @86 @75 -@194 := #11 -@197 := @34 @194 @185 @176 -@202 := @15 @178 @86 @75 @77 @30 -@203 := @197 @202 -@205 := @26 @79 @35 -@218 := {p : @31} -> - {c : @32} -> - {A : @33} -> - {α : @71} -> - {β : @71} -> - {ea : @175} -> - {eb : @175} -> {s : @74} -> {t : @74} -> (ha : @184) -> (hb : @191) -> (x : @193) -> @203 @205 -@220 := LexLeanPreservation.Rust.wt_encPair @0 -@245 := {c : @32} -> - {A : @33} -> - {α : @71} -> - {β : @71} -> - {ea : @175} -> - {eb : @175} -> - {s : @74} -> - {t : @74} -> - (ha : (x : @77) -> @49 @178 @86 @181 @37) -> - (hb : (x : @77) -> @49 @176 @178 @181 @37) -> (x : @193) -> @49 @185 @176 @202 @205 -@246 := @220 @1 -@267 := {A : @33} -> - {α : @71} -> - {β : @71} -> - {ea : @175} -> - {eb : @175} -> - {s : @74} -> - {t : @74} -> - (ha : (x : @77) -> @58 @86 @181 @37) -> - (hb : (x : @77) -> @58 @178 @181 @37) -> (x : @193) -> @58 @176 @202 @205 -@268 := @246 @2 -@270 := @65 @181 @37 -@271 := (x : @77) -> @270 -@282 := {α : @71} -> - {β : @71} -> - {ea : @175} -> - {eb : @175} -> {s : @74} -> {t : @74} -> (ha : @271) -> (hb : @271) -> (x : @193) -> @65 @202 @205 -@283 := @268 @3 -@284 := (x : @3) -> @270 -@299 := {β : @71} -> - {ea : @148} -> - {eb : @175} -> - {s : @74} -> - {t : @74} -> (ha : @284) -> (hb : @271) -> (x : @7 @75) -> @65 (@16 @86 @75 @77 @30) @205 -@300 := @283 @5 -@301 := (a._@._internal._hyg.#0 : @5) -> @72 -@302 := (x : @5) -> @270 -@314 := {ea : @148} -> - {eb : @301} -> - {s : @74} -> {t : @74} -> (ha : @284) -> (hb : @302) -> (x : @8) -> @65 (@17 @75 @77 @30) @205 -@315 := @300 @11 -@317 := (x : @3) -> @66 @37 -@327 := {eb : @301} -> - {s : @74} -> {t : @74} -> (ha : @317) -> (hb : @302) -> (x : @8) -> @65 (@18 @77 @30) @205 -@328 := @315 @14 -@330 := (x : @5) -> @162 @37 -@332 := @65 (@19 @30) -@338 := {s : @74} -> {t : @74} -> (ha : @317) -> (hb : @330) -> (x : @8) -> @332 @205 -@339 := @328 @23 -@345 := {t : @74} -> (ha : @168) -> (hb : @330) -> (x : @8) -> @332 (@27 @35) -@346 := @339 @25 -@347 := (x : @5) -> @169 -@349 := (x : @8) -> @332 @28 -@351 := (ha : @168) -> (hb : @347) -> @349 -@355 := fun (__x : @8) => @346 @70 @174 @30 -@356 := @136 @8 -@366 := {e : (a._@._internal._hyg.#0 : @8) -> @72} -> - {t : @74} -> (h : (x : @8) -> @138) -> (xs : @9) -> @65 (@20 @35 @30) @94 -@367 := @356 @19 -@369 := (x : @8) -> @332 @10 -@370 := @21 @30 -@371 := @65 @370 -@375 := {t : @74} -> (h : @369) -> (xs : @9) -> @371 @94 -@376 := @367 @28 -@379 := (h : @349) -> (xs : @9) -> @371 @29 -@381 := @376 @355 @10 -@383 := @65 @22 @29 -@384 := List.nil.{0} -@385 := List.cons.{0} -@386 := @384 @72 -@387 := @385 @72 -@389 := @387 @22 @386 -@390 := Nat -@392 := @6 @390 @72 -@393 := 0 -@397 := Prod.mk.{0, 0} @390 @72 @393 -@398 := @397 @22 -@399 := @384 @392 -@400 := @385 @392 -@402 := @400 @398 @399 -@403 := Bool.true -@404 := LexLeanTarget.TargetSyntax.Function -@405 := LexLeanTarget.TargetSyntax.Program.functions -@406 := @405 @0 -@407 := 15 -@408 := @384 @390 -@409 := @384 @74 -@410 := LexLeanTarget.TargetSyntax.Ty.unit -@411 := LexLeanTarget.TargetSyntax.Value.unit -@414 := LexLeanTarget.TargetSyntax.Expr.value @410 @411 -@419 := LexLeanTarget.TargetSyntax.Function.mk @408 @409 @410 @414 -@424 := List.getD.{0} @404 @406 @407 @419 -@428 := fun (__e_n : @390) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.RustStd.root @30 @407 -@429 := LexLeanPreservation.Rust.WTL -@437 := {p : @31} -> {c : @32} -> {A : @33} -> @429 @37 @10 @30 @386 @409 -@439 := LexLeanPreservation.Rust.wtl_nil @0 -@440 := @429 @0 -@446 := {c : @32} -> {A : @33} -> @440 @10 @30 @386 @409 -@447 := @439 @1 -@448 := @440 @1 -@452 := {A : @33} -> @448 @30 @386 @409 -@453 := @447 @2 -@454 := @448 @2 -@455 := @454 @386 -@456 := @455 @409 -@457 := @4 @72 -@458 := @4 @74 -@460 := @80 @35 @37 -@465 := @429 @86 @75 @77 @37 @10 -@468 := @429 @178 @86 @75 -@470 := @387 @77 @35 -@471 := @468 @470 -@472 := @385 @74 -@474 := @472 @79 @37 -@484 := {p : @31} -> - {c : @32} -> - {A : @33} -> - {v : @72} -> {t : @74} -> {vs : @457} -> {ts : @458} -> (h : @460) -> (hs : @465) -> @471 @474 -@486 := LexLeanPreservation.Rust.wtl_cons @0 -@504 := {c : @32} -> - {A : @33} -> - {v : @72} -> - {t : @74} -> - {vs : @457} -> - {ts : @458} -> (h : @107 @35 @37) -> (hs : @440 @75 @77 @37 @10) -> @440 @86 @75 @470 @474 -@505 := @486 @1 -@520 := {A : @33} -> - {v : @72} -> - {t : @74} -> - {vs : @457} -> {ts : @458} -> (h : @123 @35 @37) -> (hs : @448 @77 @37 @10) -> @448 @75 @470 @474 -@521 := @505 @2 -@523 := @65 @35 @37 -@525 := @454 @37 @10 -@533 := {v : @72} -> - {t : @74} -> {vs : @457} -> {ts : @458} -> (h : @523) -> (hs : @525) -> @454 @470 @474 -@534 := @521 @22 -@535 := @21 @79 -@537 := @65 @535 @37 -@538 := @21 @75 -@539 := @387 @538 -@547 := {t : @74} -> {vs : @457} -> {ts : @458} -> (h : @537) -> (hs : @525) -> @454 (@539 @35) @474 -@548 := @534 @29 -@549 := @21 @35 -@551 := @65 @549 @29 -@552 := @21 @77 -@553 := @387 @552 -@555 := @454 (@553 @35) -@556 := @472 @29 -@557 := @556 @37 -@562 := {vs : @457} -> {ts : @458} -> (h : @551) -> (hs : @525) -> @555 @557 -@563 := @548 @386 -@564 := @21 @37 -@566 := @65 @564 @29 -@567 := @455 @10 -@569 := @387 @535 @386 -@570 := @454 @569 -@574 := {ts : @458} -> (h : @566) -> (hs : @567) -> @570 @557 -@575 := @563 @409 -@577 := @387 @549 @386 -@578 := @454 @577 -@579 := @556 @409 -@582 := (h : @383) -> (hs : @456) -> @578 @579 -@583 := @575 @381 -@585 := @387 @564 @386 -@586 := @454 @585 -@588 := (hs : @456) -> @586 @579 -@589 := @583 @453 -@590 := @454 @389 -@591 := @590 @579 -@592 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.denoteEntry -@593 := @592 @10 -@594 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.entryFits -@595 := @594 @10 -@597 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.entryValue @10 -@599 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.entry @10 -@600 := Bool -@601 := Ne.{1} -@602 := LexLeanPreservation.Obs -@603 := @601 @602 -@604 := LexLeanPreservation.Rel -@607 := @603 (@604 @10 @30) -@608 := LexLeanPreservation.Obs.stuck -@611 := (f : @600) -> (v : @72) -> @607 @608 -@613 := LexLeanPreservation.Rust.rel_ne_stuck @595 -@619 := (v : @72) -> @603 (@604 (@594 @37) @30) @608 -@620 := @613 @597 -@624 := @603 (@604 @595 @597) @608 -@625 := @4 @392 -@626 := LexLeanPreservation.Rust.FunSem -@632 := (n : @390) -> @626 @176 @178 @86 @30 @75 -@633 := Eq.{1} -@634 := Option.{0} -@635 := @634 @404 -@636 := @633 @635 -@643 := LexLeanRuntime.index (@4 @404) @404 (LexLeanRuntime.instIndexableList @404) -@647 := @636 (@643 (@405 @176) @75) -@648 := Option.some.{0} -@649 := @648 @404 -@650 := @649 @77 -@651 := @647 @650 -@655 := @429 @185 @176 @178 @77 -@656 := LexLeanTarget.TargetSyntax.Function.types -@657 := @656 @75 -@658 := @655 @657 -@659 := @634 @625 -@660 := @633 @659 -@661 := LexLeanTarget.TargetSemantics.bindAll -@662 := LexLeanTarget.TargetSyntax.Function.parameters -@667 := @660 (@661 (@662 @86) @75 @399) -@668 := @648 @625 -@669 := @668 @77 -@670 := @667 @669 -@671 := @634 @600 -@672 := @633 @671 -@673 := LexLeanPreservation.Rust.fnFallible -@676 := @672 (@673 @194 @176) -@677 := @648 @600 -@678 := @677 @77 -@679 := @676 @678 -@680 := LexLeanPreservation.RunConv -@681 := #13 -@685 := @680 @681 @185 @178 @77 -@687 := @603 @75 @608 -@688 := Exists.{1} -@689 := LexLeanPreservation.Rust.ROut -@690 := @688 @689 -@691 := And -@692 := LexLeanPreservation.Rust.RealizesFn -@696 := @691 (@692 @176 @178 @30) -@697 := LexLeanPreservation.Rust.RCI -@699 := @697 #15 -@700 := LexLeanPreservation.Rust.fnIdent -@701 := @700 @681 -@708 := (hne : @687) -> @690 (fun (ro : @689) => @696 (@699 @701 @194 @30)) -@723 := {p : @31} -> - {c : @32} -> - {A : @33} -> - {f : @390} -> - {fn : @404} -> - {args : @457} -> - {env : @625} -> - {F : @600} -> - {o : @602} -> - (hB : @632) -> - (hfn : @651) -> (hwt : @658) -> (hbind : @670) -> (hF : @679) -> (hA : @685) -> @708 -@725 := LexLeanPreservation.Rust.compose @0 -@726 := @626 @0 -@731 := (n : @390) -> @726 @178 @86 @30 @75 -@732 := @643 @406 -@735 := @636 (@732 @75) @650 -@739 := @440 @176 @178 @77 @657 -@740 := @680 @0 -@743 := @740 @185 @178 @77 -@757 := {c : @32} -> - {A : @33} -> - {f : @390} -> - {fn : @404} -> - {args : @457} -> - {env : @625} -> - {F : @600} -> - {o : @602} -> - (hB : @731) -> - (hfn : @735) -> (hwt : @739) -> (hbind : @670) -> (hF : @679) -> (hA : @743) -> @708 -@758 := @725 @1 -@759 := @726 @1 -@763 := (n : @390) -> @759 @86 @30 @75 -@766 := @448 @178 @77 @657 -@767 := @673 @1 -@770 := @672 (@767 @176) @678 -@771 := @697 @1 -@781 := (hbind : @670) -> - (hF : @770) -> (hA : @743) -> (hne : @687) -> @690 (fun (ro : @689) => @696 (@771 @701 @194 @30)) -@791 := {A : @33} -> - {f : @390} -> - {fn : @404} -> - {args : @457} -> - {env : @625} -> {F : @600} -> {o : @602} -> (hB : @763) -> (hfn : @735) -> (hwt : @766) -> @781 -@792 := @758 @2 -@794 := @759 @2 @30 -@796 := (n : @390) -> @794 @75 -@797 := @454 @77 -@798 := @797 @657 -@807 := {f : @390} -> - {fn : @404} -> - {args : @457} -> - {env : @625} -> {F : @600} -> {o : @602} -> (hB : @796) -> (hfn : @735) -> (hwt : @798) -> @781 -@808 := @792 @407 -@810 := (n : @390) -> @794 @407 -@811 := @732 @407 -@812 := @636 @811 -@813 := @812 @650 -@814 := @767 @407 -@815 := @672 @814 -@816 := @815 @678 -@817 := @740 @407 -@819 := @817 @178 @77 -@821 := @771 (@700 @407) -@829 := (hF : @816) -> (hA : @819) -> (hne : @687) -> @690 (fun (ro : @689) => @696 (@821 @194 @30)) -@838 := {fn : @404} -> - {args : @457} -> - {env : @625} -> - {F : @600} -> {o : @602} -> (hB : @810) -> (hfn : @813) -> (hwt : @798) -> (hbind : @670) -> @829 -@839 := @808 @424 -@841 := @812 (@649 @424) -@842 := @656 @424 -@843 := @797 @842 -@845 := @661 (@662 @424) -@857 := {args : @457} -> - {env : @625} -> - {F : @600} -> - {o : @602} -> - (hB : @810) -> (hfn : @841) -> (hwt : @843) -> (hbind : @660 (@845 @75 @399) @669) -> @829 -@858 := @839 @389 -@859 := @539 @386 -@861 := @454 @859 @842 -@864 := @387 (@21 @86) @386 -@868 := @660 (@845 @864 @399) @669 -@871 := @387 (@21 @176) @386 -@892 := {env : @625} -> - {F : @600} -> - {o : @602} -> - (hB : @810) -> - (hfn : @841) -> - (hwt : @861) -> - (hbind : @868) -> - (hF : @816) -> - (hA : @817 @871 @77) -> - (hne : @687) -> @690 (fun (ro : @689) => @696 (@821 (@387 (@21 #12) @386) @30)) -@893 := @858 @402 -@894 := @553 @386 -@896 := @454 @894 @842 -@904 := @660 (@845 @859 @399) (@668 (@400 (@397 @538) @399)) -@907 := @387 (@21 @178) @386 -@926 := {F : @600} -> - {o : @602} -> - (hB : @810) -> - (hfn : @841) -> - (hwt : @896) -> - (hbind : @904) -> - (hF : @816) -> - (hA : @817 @907 @77) -> - (hne : @687) -> @690 (fun (ro : @689) => @696 (@821 (@387 (@21 @194) @386) @30)) -@927 := @893 @403 -@928 := @570 @842 -@936 := @660 (@845 @894 @399) (@668 (@400 (@397 @552) @399)) -@938 := @815 (@677 @403) -@940 := @817 @864 @77 -@941 := @692 @403 -@960 := {o : @602} -> - (hB : @810) -> - (hfn : @841) -> - (hwt : @928) -> - (hbind : @936) -> - (hF : @938) -> - (hA : @940) -> - (hne : @687) -> @690 (fun (ro : @689) => @691 (@941 @178 @30) (@821 (@387 (@21 @185) @386) @30)) -@961 := @927 @593 -@962 := @578 @842 -@970 := @660 (@845 @569 @399) (@668 (@400 (@397 @535) @399)) -@971 := @817 @859 -@972 := @592 @75 -@973 := @971 @972 -@974 := @592 @86 -@992 := (hB : @810) -> - (hfn : @841) -> - (hwt : @962) -> - (hbind : @970) -> - (hF : @938) -> - (hA : @973) -> - (hne : @603 @974 @608) -> @690 (fun (ro : @689) => @691 (@941 (@592 @176) @30) (@821 @871 @30)) -@993 := @961 @428 -@994 := @586 @842 -@1002 := @660 (@845 @577 @399) (@668 (@400 (@397 @549) @399)) -@1003 := @817 @894 -@1004 := @592 @77 -@1022 := (hfn : @841) -> - (hwt : @994) -> - (hbind : @1002) -> - (hF : @938) -> - (hA : @1003 @1004) -> - (hne : @603 @972 @608) -> @690 (fun (ro : @689) => @691 (@941 (@592 @178) @30) (@821 @907 @30)) -@1023 := Eq.refl.{1} -@1026 := @993 (@1023 @635 @811) -@1027 := @590 @842 -@1035 := @660 (@845 @585 @399) (@668 (@400 (@397 @564) @399)) -@1036 := @817 @569 -@1037 := @592 @79 -@1053 := (hwt : @1027) -> - (hbind : @1035) -> - (hF : @938) -> - (hA : @1036 @1037) -> - (hne : @603 @1004 @608) -> @690 (fun (ro : @689) => @691 (@941 @974 @30) (@821 @864 @30)) -@1054 := @1026 @589 -@1056 := @845 @389 @399 -@1059 := @660 @1056 (@668 @402) -@1060 := @817 @577 -@1061 := @592 @35 -@1076 := (hbind : @1059) -> - (hF : @938) -> - (hA : @1060 @1061) -> - (hne : @603 @1037 @608) -> @690 (fun (ro : @689) => @691 (@941 @972 @30) (@821 @859 @30)) -@1079 := @1054 (@1023 @659 @1056) -@1080 := @817 @585 -@1081 := @592 @37 -@1095 := (hF : @938) -> - (hA : @1080 @1081) -> - (hne : @603 @1061 @608) -> @690 (fun (ro : @689) => @691 (@941 @1004 @30) (@821 @894 @30)) -@1098 := @1079 (@1023 @671 @814) -@1100 := @817 @389 @593 -@1102 := @603 @1081 @608 -@1103 := @941 @1037 -@1105 := @691 (@1103 @30) -@1106 := @821 @569 -@1107 := @1106 @30 -@1112 := (hA : @1100) -> (hne : @1102) -> @690 (fun (ro : @689) => @1105 @1107) -@1113 := @1098 @599 -@1115 := @603 @593 @608 -@1116 := @941 @1061 -@1118 := @691 (@1116 @30) -@1119 := @821 @577 -@1124 := (hne : @1115) -> @690 (fun (ro : @689) => @1118 (@1119 @30)) -@1125 := @1113 @620 -@1128 := @691 (@941 @1081 @30) -@1130 := @821 @585 @30 -@1131 := @1128 @1130 -@1133 := @690 (fun (ro : @689) => @1131) -@1134 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.accepts -@1135 := @1134 @10 -@1136 := LexLeanPreservation.someObs -@1137 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.denote -@1139 := @1136 (@1137 @10) -@1142 := LexLeanPreservation.Obs.value LexLeanTarget.TargetSyntax.Value.none -@1143 := Not -@1144 := @1143 @1135 -@1145 := @1134 @37 -@1147 := @1136 (@1137 @37) -@1148 := @1143 @1145 -@1153 := @1145 -> @941 (@1136 (@1137 @35)) @10 -@1154 := @941 @1142 -@1155 := @1154 @10 -@1156 := @1148 -> @1155 -@1158 := @691 @1153 @1156 -@1162 := @690 (fun (__e_ro : @689) => @691 @1130 @1158) -@1163 := fun (__e_ro : @689) => @1131 -@1164 := @1116 @10 -@1165 := @1119 @10 -@1166 := And.left -@1167 := And.right -@1170 := @1166 @1164 @1165 @30 -@1173 := @1167 @1164 @1165 @30 -@1174 := @941 @30 -@1176 := fun (__e_o : @602) => @1174 @37 -@1177 := Eq.subst.{1} -@1178 := @1134 @35 -@1179 := @1143 @1178 -@1182 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.entry_accepts @79 @30 -@1184 := @1136 (@1137 @79) -@1189 := @1166 (@1103 @37) (@1106 @37) @10 -@1191 := fun (__e_o : @602) => @1174 @35 -@1194 := @1177 @602 @1191 @1037 -@1198 := fun (__e_h : @1178) => @1194 @1184 @1182 @1189 -@1201 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.entry_refuses @79 @30 -@1205 := fun (__e_h : @1179) => @1194 @1142 @1201 @1189 -@1206 := And.intro -@1209 := @1178 -> @941 @1184 @37 -@1211 := @1179 -> @1154 @37 -@1213 := @691 @1209 @1211 -@1217 := @1206 @1209 @1211 @1198 @1205 -@1221 := @1206 @1165 @1213 @1173 @1217 -@1222 := Exists.intro.{1} -@1223 := @691 @1107 -@1224 := @1134 @79 -@1235 := fun (__e_ro : @689) => - @1223 (@691 (@1224 -> @941 (@1136 (@1137 @77)) @10) (@1143 @1224 -> @1155)) -@1239 := @1222 @689 @1235 @10 @1221 -@1241 := @691 @1164 @1165 -@1243 := fun (__e_ro : @689) => fun (__e_hand : @1131) => @1239 -@1249 := Exists.elim.{1} @689 @1163 @1162 @1125 @1243 -@1253 := LexLeanPreservation.Rust.RepresentableL (@387 @370 @386) -@1254 := (__e_hrep : @1253) -> @1162 -@1255 := fun (__e_hrep : @1253) => @1249 -@1256 := (g : @9) -> @1254 -@1257 := fun (g : @9) => @1255 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R7/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R7/RustStd.lean deleted file mode 100644 index 31c29f26c..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R7/RustStd.lean +++ /dev/null @@ -1,153 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0], types := [(.list (.pair .string (.list .string)))], result := (.option (.list .string)), - body := (.call 1 [(.var 0)]) }, - { parameters := [0], types := [(.list (.pair .string (.list .string)))], result := (.option (.list .string)), - body := (.«let» 1 (.list .string) (.call 6 [(.var 0), (.build .nil (.list .string) [])]) (.call 2 [(.var 0), (.prim .natAdd [(.prim .length [(.var 1)]), (.value .nat (.nat 1))]), (.var 1), (.build .nil (.list .string) [])])) }, - { parameters := [0, 1, 2, 3], types := [(.list (.pair .string (.list .string))), .nat, (.list .string), (.list .string)], result := (.option (.list .string)), - body := (.«match» (.option (.list .string)) (.var 1) [(.arm .zero [] (.«match» (.option (.list .string)) (.var 2) [(.arm .nil [] (.build .some (.option (.list .string)) [(.call 5 [(.var 3), (.build .nil (.list .string) [])])])), (.arm .cons [4, 5] (.build .none (.option (.list .string)) []))])), (.arm .succ [6] (.«match» (.option (.list .string)) (.call 3 [(.var 0), (.var 2), (.var 2)]) [(.arm .nil [] (.«match» (.option (.list .string)) (.var 2) [(.arm .nil [] (.build .some (.option (.list .string)) [(.call 5 [(.var 3), (.build .nil (.list .string) [])])])), (.arm .cons [7, 8] (.build .none (.option (.list .string)) []))])), (.arm .cons [9, 10] (.call 2 [(.var 0), (.var 6), (.call 12 [(.var 2), (.var 9)]), (.build .cons (.list .string) [(.var 9), (.var 3)])]))]))]) }, - { parameters := [0, 1, 2], types := [(.list (.pair .string (.list .string))), (.list .string), (.list .string)], result := (.list .string), - body := (.«match» (.list .string) (.var 2) [(.arm .nil [] (.build .nil (.list .string) [])), (.arm .cons [3, 4] (.cond (.call 4 [(.var 0), (.var 3), (.var 1)]) (.build .cons (.list .string) [(.var 3), (.call 3 [(.var 0), (.var 1), (.var 4)])]) (.call 3 [(.var 0), (.var 1), (.var 4)])))]) }, - { parameters := [0, 1, 2], types := [(.list (.pair .string (.list .string))), .string, (.list .string)], result := .bool, - body := (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.call 11 [(.call 9 [(.var 0), (.var 3)]), (.var 1)]) (.build .false .bool []) (.call 4 [(.var 0), (.var 1), (.var 4)])))]) }, - { parameters := [0, 1], types := [(.list .string), (.list .string)], result := (.list .string), - body := (.«match» (.list .string) (.var 0) [(.arm .nil [] (.var 1)), (.arm .cons [2, 3] (.call 5 [(.var 3), (.build .cons (.list .string) [(.var 2), (.var 1)])]))]) }, - { parameters := [0, 1], types := [(.list (.pair .string (.list .string))), (.list .string)], result := (.list .string), - body := (.«match» (.list .string) (.var 0) [(.arm .nil [] (.var 1)), (.arm .cons [2, 3] (.call 6 [(.var 3), (.call 7 [(.second (.var 2)), (.call 8 [(.var 1), (.first (.var 2))])])]))]) }, - { parameters := [0, 1], types := [(.list .string), (.list .string)], result := (.list .string), - body := (.«match» (.list .string) (.var 0) [(.arm .nil [] (.var 1)), (.arm .cons [2, 3] (.call 7 [(.var 3), (.call 8 [(.var 1), (.var 2)])]))]) }, - { parameters := [0, 1], types := [(.list .string), .string], result := (.list .string), - body := (.«match» (.list .string) (.var 0) [(.arm .nil [] (.build .cons (.list .string) [(.var 1), (.build .nil (.list .string) [])])), (.arm .cons [2, 3] (.«match» (.list .string) (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .cons (.list .string) [(.var 1), (.var 0)])), (.arm .eq [] (.var 0)), (.arm .gt [] (.build .cons (.list .string) [(.var 2), (.call 8 [(.var 3), (.var 1)])]))]))]) }, - { parameters := [0, 1], types := [(.list (.pair .string (.list .string))), .string], result := (.list .string), - body := (.«match» (.list .string) (.call 10 [(.var 0), (.var 1)]) [(.arm .none [] (.build .nil (.list .string) [])), (.arm .some [2] (.var 2))]) }, - { parameters := [0, 1], types := [(.list (.pair .string (.list .string))), .string], result := (.option (.list .string)), - body := (.«match» (.option (.list .string)) (.var 0) [(.arm .nil [] (.build .none (.option (.list .string)) [])), (.arm .cons [2, 3] (.«match» (.option (.list .string)) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.build .none (.option (.list .string)) [])), (.arm .eq [] (.build .some (.option (.list .string)) [(.second (.var 2))])), (.arm .gt [] (.call 10 [(.var 3), (.var 1)]))]))]) }, - { parameters := [0, 1], types := [(.list .string), .string], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .false .bool [])), (.arm .cons [2, 3] (.«match» .bool (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .false .bool [])), (.arm .eq [] (.build .true .bool [])), (.arm .gt [] (.call 11 [(.var 3), (.var 1)]))]))]) }, - { parameters := [0, 1], types := [(.list .string), .string], result := (.list .string), - body := (.«match» (.list .string) (.var 0) [(.arm .nil [] (.build .nil (.list .string) [])), (.arm .cons [2, 3] (.«match» (.list .string) (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.var 0)), (.arm .eq [] (.var 3)), (.arm .gt [] (.build .cons (.list .string) [(.var 2), (.call 12 [(.var 3), (.var 1)])]))]))]) }, - { parameters := [0], types := [(.list (.pair .string (.list .string)))], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 14 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 13 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, - { parameters := [0], types := [(.list .string)], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.var 1), (.var 3)]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 14 [(.var 2)]) (.build .false .bool [])))]))]) }, - { parameters := [0], types := [(.list (.pair .string (.list .string)))], result := (.option (.option (.list .string))), - body := (.cond (.call 13 [(.var 0)]) (.build .some (.option (.option (.list .string))) [(.call 0 [(.var 0)])]) (.build .none (.option (.option (.list .string))) [])) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .str (.list .str))) }] (.fallible (.option (.list .str))) (.mk [] (.call (.function 1) [(.move (.generated .binding 0))] false))), - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .str (.list .str))) }] (.fallible (.option (.list .str))) (.mk [(.mk (.bind (.generated .binding 1)) (some (.list .str)) (.call (.function 6) [(.clone (.generated .binding 0)), (.construct (.nil .str) [])] false))] (.succeed (.call (.function 2) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthList) [(.move (.generated .operand 1))] false)))), (.mk (.bind (.generated .operand 3)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] true))), (.move (.generated .binding 1)), (.construct (.nil .str) [])] false)))), - (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .str (.list .str))) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := (.list .str) }, { pattern := (.bind (.generated .binding 3)), type := (.list .str) }] (.option (.list .str)) (.mk [(.mk (.bind (.generated .holder 4)) none (.copy (.generated .binding 1)))] (.cond (.isZero (.generated .holder 4)) (.mk [(.mk (.bind (.generated .holder 5)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 5)) [(.mk .none (.mk [] (.construct .some [(.call (.function 5) [(.move (.generated .binding 3)), (.construct (.nil .str) [])] false)]))), (.mk (.some (.tuple [.wild, .wild])) (.mk [] (.construct (.none (.list .str)) [])))])) (.mk [(.mk (.bind (.generated .binding 6)) none (.predecessor (.generated .holder 4))), (.mk (.bind (.generated .holder 6)) none (.call (.function 3) [(.clone (.generated .binding 0)), (.clone (.generated .binding 2)), (.clone (.generated .binding 2))] false))] (.matchOn (.uncons (.generated .holder 6)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 7)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 7)) [(.mk .none (.mk [] (.construct .some [(.call (.function 5) [(.move (.generated .binding 3)), (.construct (.nil .str) [])] false)]))), (.mk (.some (.tuple [.wild, .wild])) (.mk [] (.construct (.none (.list .str)) [])))]))), (.mk (.some (.tuple [(.bind (.generated .binding 9)), .wild])) (.mk [] (.call (.function 2) [(.move (.generated .binding 0)), (.copy (.generated .binding 6)), (.call (.function 12) [(.move (.generated .binding 2)), (.clone (.generated .binding 9))] false), (.construct .cons [(.move (.generated .binding 9)), (.move (.generated .binding 3))])] false)))]))))), - (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .str (.list .str))) }, { pattern := (.bind (.generated .binding 1)), type := (.list .str) }, { pattern := (.bind (.generated .binding 2)), type := (.list .str) }] (.list .str) (.mk [(.mk (.bind (.generated .holder 8)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 8)) [(.mk .none (.mk [] (.construct (.nil .str) []))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.cond (.call (.function 4) [(.clone (.generated .binding 0)), (.clone (.generated .binding 3)), (.clone (.generated .binding 1))] false) (.mk [] (.construct .cons [(.move (.generated .binding 3)), (.call (.function 3) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false)])) (.mk [] (.call (.function 3) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false)))))]))), - (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .str (.list .str))) }, { pattern := (.bind (.generated .binding 1)), type := .str }, { pattern := (.bind (.generated .binding 2)), type := (.list .str) }] .bool (.mk [(.mk (.bind (.generated .holder 9)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 9)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.cond (.call (.function 11) [(.call (.function 9) [(.clone (.generated .binding 0)), (.move (.generated .binding 3))] false), (.clone (.generated .binding 1))] false) (.mk [] (.lit (.bool false))) (.mk [] (.call (.function 4) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false)))))]))), - (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := (.list .str) }, { pattern := (.bind (.generated .binding 1)), type := (.list .str) }] (.list .str) (.mk [(.mk (.bind (.generated .holder 10)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 10)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.call (.function 5) [(.move (.generated .binding 3)), (.construct .cons [(.move (.generated .binding 2)), (.move (.generated .binding 1))])] false)))]))), - (.function (.generated .function 6) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .str (.list .str))) }, { pattern := (.bind (.generated .binding 1)), type := (.list .str) }] (.list .str) (.mk [(.mk (.bind (.generated .holder 11)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 11)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.call (.function 6) [(.move (.generated .binding 3)), (.call (.function 7) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 12))]) none (.move (.generated .binding 2)))] (.move (.generated .part 12)))), (.call (.function 8) [(.move (.generated .binding 1)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 13)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 13))))] false)] false)] false)))]))), - (.function (.generated .function 7) [{ pattern := (.bind (.generated .binding 0)), type := (.list .str) }, { pattern := (.bind (.generated .binding 1)), type := (.list .str) }] (.list .str) (.mk [(.mk (.bind (.generated .holder 14)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 14)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.call (.function 7) [(.move (.generated .binding 3)), (.call (.function 8) [(.move (.generated .binding 1)), (.move (.generated .binding 2))] false)] false)))]))), - (.function (.generated .function 8) [{ pattern := (.bind (.generated .binding 0)), type := (.list .str) }, { pattern := (.bind (.generated .binding 1)), type := .str }] (.list .str) (.mk [(.mk (.bind (.generated .holder 15)) none (.clone (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 15)) [(.mk .none (.mk [] (.construct .cons [(.move (.generated .binding 1)), (.construct (.nil .str) [])]))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 18)) none (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 17)) none (.clone (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false))))] (.matchOn (.move (.generated .holder 18)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.move (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.move (.generated .binding 2)), (.call (.function 8) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)])))])))]))), - (.function (.generated .function 9) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .str (.list .str))) }, { pattern := (.bind (.generated .binding 1)), type := .str }] (.list .str) (.mk [(.mk (.bind (.generated .holder 19)) none (.call (.function 10) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 19)) [(.mk .none (.mk [] (.construct (.nil .str) []))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.move (.generated .binding 2))))]))), - (.function (.generated .function 10) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .str (.list .str))) }, { pattern := (.bind (.generated .binding 1)), type := .str }] (.option (.list .str)) (.mk [(.mk (.bind (.generated .holder 20)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 20)) [(.mk .none (.mk [] (.construct (.none (.list .str)) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 24)) none (.block (.mk [(.mk (.bind (.generated .operand 22)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 23)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 21)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 21)))))] (.call (.runtime .compare) [(.move (.generated .operand 22)), (.move (.generated .operand 23))] false))))] (.matchOn (.move (.generated .holder 24)) [(.mk (.ordering .less) (.mk [] (.construct (.none (.list .str)) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 25))]) none (.move (.generated .binding 2)))] (.move (.generated .part 25))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 10) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)))])))]))), - (.function (.generated .function 11) [{ pattern := (.bind (.generated .binding 0)), type := (.list .str) }, { pattern := (.bind (.generated .binding 1)), type := .str }] .bool (.mk [(.mk (.bind (.generated .holder 26)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 26)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 29)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 28)) none (.move (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))] (.matchOn (.move (.generated .holder 29)) [(.mk (.ordering .less) (.mk [] (.lit (.bool false)))), (.mk (.ordering .same) (.mk [] (.lit (.bool true)))), (.mk (.ordering .more) (.mk [] (.call (.function 11) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)))])))]))), - (.function (.generated .function 12) [{ pattern := (.bind (.generated .binding 0)), type := (.list .str) }, { pattern := (.bind (.generated .binding 1)), type := .str }] (.list .str) (.mk [(.mk (.bind (.generated .holder 30)) none (.clone (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 30)) [(.mk .none (.mk [] (.construct (.nil .str) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 33)) none (.block (.mk [(.mk (.bind (.generated .operand 31)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 32)) none (.clone (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))))] (.matchOn (.move (.generated .holder 33)) [(.mk (.ordering .less) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 3)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.move (.generated .binding 2)), (.call (.function 12) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)])))])))]))), - (.function (.generated .function 13) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .str (.list .str))) }] .bool (.mk [(.mk (.bind (.generated .holder 34)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 34)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 14) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 35))]) none (.move (.generated .binding 1)))] (.move (.generated .part 35))))] false) (.mk [(.mk (.bind (.generated .holder 36)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 36)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 41)) none (.block (.mk [(.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 37)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 37))))), (.mk (.bind (.generated .operand 40)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 38)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 38)))))] (.call (.runtime .compare) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] false))))] (.cond (.matchOn (.move (.generated .holder 41)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 13) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]))), - (.function (.generated .function 14) [{ pattern := (.bind (.generated .binding 0)), type := (.list .str) }] .bool (.mk [(.mk (.bind (.generated .holder 42)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 42)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [(.mk (.bind (.generated .holder 43)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 43)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 46)) none (.block (.mk [(.mk (.bind (.generated .operand 44)) none (.move (.generated .binding 1))), (.mk (.bind (.generated .operand 45)) none (.move (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 44)), (.move (.generated .operand 45))] false))))] (.cond (.matchOn (.move (.generated .holder 46)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 14) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])))]))), - (.function (.generated .function 15) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .str (.list .str))) }] (.fallible (.option (.option (.list .str)))) (.mk [] (.cond (.call (.function 13) [(.clone (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.call (.function 0) [(.move (.generated .binding 0))] true)]))) (.mk [] (.succeed (.construct (.none (.option (.list .str))) []))))))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 1) [(.move (.generated .binding 0))] false), [(0, (.list (.pair .string (.list .string))), (some 0))], rfl, rfl, - (Corr.callF (ts := [(.list (.pair .string (.list .string)))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some (.list .str)) (.call (.function 6) [(.clone (.generated .binding 0)), (.construct (.nil .str) [])] false))], (.succeed (.call (.function 2) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthList) [(.move (.generated .operand 1))] false)))), (.mk (.bind (.generated .operand 3)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] true))), (.move (.generated .binding 1)), (.construct (.nil .str) [])] false)), [(0, (.list (.pair .string (.list .string))), (some 0))], rfl, rfl, - (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .string (.list .string))), (.list .string)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl (Corr.fOfB (Corr.callOps (ts := [(.list (.pair .string (.list .string))), .nat, (.list .string), (.list .string)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 2)) none (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthList) [(.move (.generated .operand 1))] false)))), (.mk (.bind (.generated .operand 3)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 1)))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 1))] false)) (Corr.prim (ts := [(.list .string)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))))) rfl rfl rfl rfl rfl)))⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 4)) none (.copy (.generated .binding 1)))], (.cond (.isZero (.generated .holder 4)) (.mk [(.mk (.bind (.generated .holder 5)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 5)) [(.mk .none (.mk [] (.construct .some [(.call (.function 5) [(.move (.generated .binding 3)), (.construct (.nil .str) [])] false)]))), (.mk (.some (.tuple [.wild, .wild])) (.mk [] (.construct (.none (.list .str)) [])))])) (.mk [(.mk (.bind (.generated .binding 6)) none (.predecessor (.generated .holder 4))), (.mk (.bind (.generated .holder 6)) none (.call (.function 3) [(.clone (.generated .binding 0)), (.clone (.generated .binding 2)), (.clone (.generated .binding 2))] false))] (.matchOn (.uncons (.generated .holder 6)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 7)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 7)) [(.mk .none (.mk [] (.construct .some [(.call (.function 5) [(.move (.generated .binding 3)), (.construct (.nil .str) [])] false)]))), (.mk (.some (.tuple [.wild, .wild])) (.mk [] (.construct (.none (.list .str)) [])))]))), (.mk (.some (.tuple [(.bind (.generated .binding 9)), .wild])) (.mk [] (.call (.function 2) [(.move (.generated .binding 0)), (.copy (.generated .binding 6)), (.call (.function 12) [(.move (.generated .binding 2)), (.clone (.generated .binding 9))] false), (.construct .cons [(.move (.generated .binding 9)), (.move (.generated .binding 3))])] false)))]))), [(3, (.list .string), (some 3)), (2, (.list .string), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))], rfl, rfl, - (Corr.matchNat (sl := (some 6)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := [(.mk (.bind (.generated .holder 5)) none (.move (.generated .binding 2)))]) (ta := (.matchOn (.uncons (.generated .holder 5)) [(.mk .none (.mk [] (.construct .some [(.call (.function 5) [(.move (.generated .binding 3)), (.construct (.nil .str) [])] false)]))), (.mk (.some (.tuple [.wild, .wild])) (.mk [] (.construct (.none (.list .str)) [])))])) (lb := [(.mk (.bind (.generated .holder 6)) none (.call (.function 3) [(.clone (.generated .binding 0)), (.clone (.generated .binding 2)), (.clone (.generated .binding 2))] false))]) (tb := (.matchOn (.uncons (.generated .holder 6)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 7)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 7)) [(.mk .none (.mk [] (.construct .some [(.call (.function 5) [(.move (.generated .binding 3)), (.construct (.nil .str) [])] false)]))), (.mk (.some (.tuple [.wild, .wild])) (.mk [] (.construct (.none (.list .str)) [])))]))), (.mk (.some (.tuple [(.bind (.generated .binding 9)), .wild])) (.mk [] (.call (.function 2) [(.move (.generated .binding 0)), (.copy (.generated .binding 6)), (.call (.function 12) [(.move (.generated .binding 2)), (.clone (.generated .binding 9))] false), (.construct .cons [(.move (.generated .binding 9)), (.move (.generated .binding 3))])] false)))])) (Corr.matchArms (st := (.list .string)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(3, (.list .string), (some 3)), (2, (.list .string), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.call (.function 5) [(.move (.generated .binding 3)), (.construct (.nil .str) [])] false)])) (Corr.mCons (Γ' := [(5, (.list .string), none), (4, .string, none), (3, (.list .string), (some 3)), (2, (.list .string), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct (.none (.list .str)) [])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl (Corr.build (ts := [(.list .string)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .string), (.list .string)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) rfl rfl rfl) (Corr.matchArms (st := (.list .string)) (U := []) (view := true) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .string (.list .string))), (.list .string), (.list .string)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(6, .nat, (some 6)), (3, (.list .string), (some 3)), (2, (.list .string), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .holder 7)) none (.move (.generated .binding 2)))]) (tail := (.matchOn (.uncons (.generated .holder 7)) [(.mk .none (.mk [] (.construct .some [(.call (.function 5) [(.move (.generated .binding 3)), (.construct (.nil .str) [])] false)]))), (.mk (.some (.tuple [.wild, .wild])) (.mk [] (.construct (.none (.list .str)) [])))])) (Corr.mCons (Γ' := [(10, (.list .string), none), (9, .string, (some 9)), (6, .nat, (some 6)), (3, (.list .string), (some 3)), (2, (.list .string), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 2) [(.move (.generated .binding 0)), (.copy (.generated .binding 6)), (.call (.function 12) [(.move (.generated .binding 2)), (.clone (.generated .binding 9))] false), (.construct .cons [(.move (.generated .binding 9)), (.move (.generated .binding 3))])] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list (.pair .string (.list .string))), .nat, (.list .string), (.list .string)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .string), .string]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.string, (.list .string)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) (Corr.lNil)))))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.matchArms (st := (.list .string)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(6, .nat, (some 6)), (3, (.list .string), (some 3)), (2, (.list .string), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.call (.function 5) [(.move (.generated .binding 3)), (.construct (.nil .str) [])] false)])) (Corr.mCons (Γ' := [(8, (.list .string), none), (7, .string, none), (6, .nat, (some 6)), (3, (.list .string), (some 3)), (2, (.list .string), (some 2)), (1, .nat, (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct (.none (.list .str)) [])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl (Corr.build (ts := [(.list .string)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .string), (.list .string)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) rfl rfl rfl)) rfl rfl rfl)))⟩⟩ - -theorem fun3 : FunOK program krate flags 3 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 8)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 8)) [(.mk .none (.mk [] (.construct (.nil .str) []))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.cond (.call (.function 4) [(.clone (.generated .binding 0)), (.clone (.generated .binding 3)), (.clone (.generated .binding 1))] false) (.mk [] (.construct .cons [(.move (.generated .binding 3)), (.call (.function 3) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false)])) (.mk [] (.call (.function 3) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false)))))]), [(2, (.list .string), (some 2)), (1, (.list .string), (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .string)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .string), (some 2)), (1, (.list .string), (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.nil .str) [])) (Corr.mCons (Γ' := [(4, (.list .string), (some 4)), (3, .string, (some 3)), (2, (.list .string), (some 2)), (1, (.list .string), (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 4) [(.clone (.generated .binding 0)), (.clone (.generated .binding 3)), (.clone (.generated .binding 1))] false) (.mk [] (.construct .cons [(.move (.generated .binding 3)), (.call (.function 3) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false)])) (.mk [] (.call (.function 3) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false)))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 4) [(.clone (.generated .binding 0)), (.clone (.generated .binding 3)), (.clone (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [(.list (.pair .string (.list .string))), .string, (.list .string)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .cons [(.move (.generated .binding 3)), (.call (.function 3) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false)])) (lb := []) (tb := (.call (.function 3) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false)) (Corr.build (ts := [.string, (.list .string)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .string (.list .string))), (.list .string), (.list .string)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl) (Corr.callOps (ts := [(.list (.pair .string (.list .string))), (.list .string), (.list .string)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)))) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun4 : FunOK program krate flags 4 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 9)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 9)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.cond (.call (.function 11) [(.call (.function 9) [(.clone (.generated .binding 0)), (.move (.generated .binding 3))] false), (.clone (.generated .binding 1))] false) (.mk [] (.lit (.bool false))) (.mk [] (.call (.function 4) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false)))))]), [(2, (.list .string), (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .string)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .string), (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list .string), (some 4)), (3, .string, (some 3)), (2, (.list .string), (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 11) [(.call (.function 9) [(.clone (.generated .binding 0)), (.move (.generated .binding 3))] false), (.clone (.generated .binding 1))] false) (.mk [] (.lit (.bool false))) (.mk [] (.call (.function 4) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false)))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 11) [(.call (.function 9) [(.clone (.generated .binding 0)), (.move (.generated .binding 3))] false), (.clone (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [(.list .string), .string]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .string (.list .string))), .string]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool false))) (lb := []) (tb := (.call (.function 4) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 4))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.callOps (ts := [(.list (.pair .string (.list .string))), .string, (.list .string)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ - -theorem fun5 : FunOK program krate flags 5 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 10)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 10)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.call (.function 5) [(.move (.generated .binding 3)), (.construct .cons [(.move (.generated .binding 2)), (.move (.generated .binding 1))])] false)))]), [(1, (.list .string), (some 1)), (0, (.list .string), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .string)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.list .string), (some 1)), (0, (.list .string), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 1))) (Corr.mCons (Γ' := [(3, (.list .string), (some 3)), (2, .string, (some 2)), (1, (.list .string), (some 1)), (0, (.list .string), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 5) [(.move (.generated .binding 3)), (.construct .cons [(.move (.generated .binding 2)), (.move (.generated .binding 1))])] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list .string), (.list .string)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.string, (.list .string)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ - -theorem fun6 : FunOK program krate flags 6 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 11)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 11)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.call (.function 6) [(.move (.generated .binding 3)), (.call (.function 7) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 12))]) none (.move (.generated .binding 2)))] (.move (.generated .part 12)))), (.call (.function 8) [(.move (.generated .binding 1)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 13)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 13))))] false)] false)] false)))]), [(1, (.list .string), (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.pair .string (.list .string)))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.list .string), (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 1))) (Corr.mCons (Γ' := [(3, (.list (.pair .string (.list .string))), (some 3)), (2, (.pair .string (.list .string)), (some 2)), (1, (.list .string), (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 6) [(.move (.generated .binding 3)), (.call (.function 7) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 12))]) none (.move (.generated .binding 2)))] (.move (.generated .part 12)))), (.call (.function 8) [(.move (.generated .binding 1)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 13)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 13))))] false)] false)] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list (.pair .string (.list .string))), (.list .string)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .string), (.list .string)]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 12))]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 12))) (Corr.second (ta := .string) (tb := (.list .string)) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .string), .string]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 13)), .wild]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 13))) (Corr.first (ta := .string) (tb := (.list .string)) (Corr.var rfl rfl) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ - -theorem fun7 : FunOK program krate flags 7 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 14)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 14)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [] (.call (.function 7) [(.move (.generated .binding 3)), (.call (.function 8) [(.move (.generated .binding 1)), (.move (.generated .binding 2))] false)] false)))]), [(1, (.list .string), (some 1)), (0, (.list .string), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .string)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.list .string), (some 1)), (0, (.list .string), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 1))) (Corr.mCons (Γ' := [(3, (.list .string), (some 3)), (2, .string, (some 2)), (1, (.list .string), (some 1)), (0, (.list .string), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 7) [(.move (.generated .binding 3)), (.call (.function 8) [(.move (.generated .binding 1)), (.move (.generated .binding 2))] false)] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list .string), (.list .string)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .string), .string]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ - -theorem fun8 : FunOK program krate flags 8 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 15)) none (.clone (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 15)) [(.mk .none (.mk [] (.construct .cons [(.move (.generated .binding 1)), (.construct (.nil .str) [])]))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 18)) none (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 17)) none (.clone (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false))))] (.matchOn (.move (.generated .holder 18)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.move (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.move (.generated .binding 2)), (.call (.function 8) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)])))])))]), [(1, .string, (some 1)), (0, (.list .string), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .string)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .string, (some 1)), (0, (.list .string), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .cons [(.move (.generated .binding 1)), (.construct (.nil .str) [])])) (Corr.mCons (Γ' := [(3, (.list .string), (some 3)), (2, .string, (some 2)), (1, .string, (some 1)), (0, (.list .string), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 18)) none (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 17)) none (.clone (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false))))]) (tail := (.matchOn (.move (.generated .holder 18)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.move (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.move (.generated .binding 2)), (.call (.function 8) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)])))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 16)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 17)) none (.clone (.generated .binding 2)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false)) (Corr.prim (ts := [.string, .string]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list .string), (some 3)), (2, .string, (some 2)), (1, .string, (some 1)), (0, (.list .string), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .cons [(.move (.generated .binding 1)), (.move (.generated .binding 0))])) (Corr.mCons (Γ' := [(3, (.list .string), (some 3)), (2, .string, (some 2)), (1, .string, (some 1)), (0, (.list .string), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.move (.generated .binding 0))) (Corr.mCons (Γ' := [(3, (.list .string), (some 3)), (2, .string, (some 2)), (1, .string, (some 1)), (0, (.list .string), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.construct .cons [(.move (.generated .binding 2)), (.call (.function 8) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [.string, (.list .string)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .string), .string]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.build (ts := [.string, (.list .string)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := [.string, (.list .string)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun9 : FunOK program krate flags 9 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 19)) none (.call (.function 10) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false))], (.matchOn (.move (.generated .holder 19)) [(.mk .none (.mk [] (.construct (.nil .str) []))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.move (.generated .binding 2))))]), [(1, .string, (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option (.list .string))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .string (.list .string))), .string]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, .string, (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.nil .str) [])) (Corr.mCons (Γ' := [(2, (.list .string), (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.move (.generated .binding 2))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun10 : FunOK program krate flags 10 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 20)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 20)) [(.mk .none (.mk [] (.construct (.none (.list .str)) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 24)) none (.block (.mk [(.mk (.bind (.generated .operand 22)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 23)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 21)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 21)))))] (.call (.runtime .compare) [(.move (.generated .operand 22)), (.move (.generated .operand 23))] false))))] (.matchOn (.move (.generated .holder 24)) [(.mk (.ordering .less) (.mk [] (.construct (.none (.list .str)) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 25))]) none (.move (.generated .binding 2)))] (.move (.generated .part 25))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 10) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)))])))]), [(1, .string, (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.pair .string (.list .string)))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .string, (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none (.list .str)) [])) (Corr.mCons (Γ' := [(3, (.list (.pair .string (.list .string))), (some 3)), (2, (.pair .string (.list .string)), (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 24)) none (.block (.mk [(.mk (.bind (.generated .operand 22)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 23)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 21)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 21)))))] (.call (.runtime .compare) [(.move (.generated .operand 22)), (.move (.generated .operand 23))] false))))]) (tail := (.matchOn (.move (.generated .holder 24)) [(.mk (.ordering .less) (.mk [] (.construct (.none (.list .str)) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 25))]) none (.move (.generated .binding 2)))] (.move (.generated .part 25))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 10) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 22)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 23)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 21)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 21)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 22)), (.move (.generated .operand 23))] false)) (Corr.prim (ts := [.string, .string]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 21)), .wild]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 21))) (Corr.first (ta := .string) (tb := (.list .string)) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list (.pair .string (.list .string))), (some 3)), (2, (.pair .string (.list .string)), (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none (.list .str)) [])) (Corr.mCons (Γ' := [(3, (.list (.pair .string (.list .string))), (some 3)), (2, (.pair .string (.list .string)), (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 25))]) none (.move (.generated .binding 2)))] (.move (.generated .part 25))))])) (Corr.mCons (Γ' := [(3, (.list (.pair .string (.list .string))), (some 3)), (2, (.pair .string (.list .string)), (some 2)), (1, .string, (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.call (.function 10) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list (.pair .string (.list .string))), .string]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := [(.list .string)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 25))]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 25))) (Corr.second (ta := .string) (tb := (.list .string)) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun11 : FunOK program krate flags 11 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 26)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 26)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 29)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 28)) none (.move (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))] (.matchOn (.move (.generated .holder 29)) [(.mk (.ordering .less) (.mk [] (.lit (.bool false)))), (.mk (.ordering .same) (.mk [] (.lit (.bool true)))), (.mk (.ordering .more) (.mk [] (.call (.function 11) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)))])))]), [(1, .string, (some 1)), (0, (.list .string), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .string)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .string, (some 1)), (0, (.list .string), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(3, (.list .string), (some 3)), (2, .string, (some 2)), (1, .string, (some 1)), (0, (.list .string), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 29)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 28)) none (.move (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))]) (tail := (.matchOn (.move (.generated .holder 29)) [(.mk (.ordering .less) (.mk [] (.lit (.bool false)))), (.mk (.ordering .same) (.mk [] (.lit (.bool true)))), (.mk (.ordering .more) (.mk [] (.call (.function 11) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 27)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 28)) none (.move (.generated .binding 2)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false)) (Corr.prim (ts := [.string, .string]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list .string), (some 3)), (2, .string, (some 2)), (1, .string, (some 1)), (0, (.list .string), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(3, (.list .string), (some 3)), (2, .string, (some 2)), (1, .string, (some 1)), (0, (.list .string), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(3, (.list .string), (some 3)), (2, .string, (some 2)), (1, .string, (some 1)), (0, (.list .string), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.call (.function 11) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list .string), .string]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ - -theorem fun12 : FunOK program krate flags 12 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 30)) none (.clone (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 30)) [(.mk .none (.mk [] (.construct (.nil .str) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 33)) none (.block (.mk [(.mk (.bind (.generated .operand 31)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 32)) none (.clone (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))))] (.matchOn (.move (.generated .holder 33)) [(.mk (.ordering .less) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 3)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.move (.generated .binding 2)), (.call (.function 12) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)])))])))]), [(1, .string, (some 1)), (0, (.list .string), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .string)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .string, (some 1)), (0, (.list .string), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.nil .str) [])) (Corr.mCons (Γ' := [(3, (.list .string), (some 3)), (2, .string, (some 2)), (1, .string, (some 1)), (0, (.list .string), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 33)) none (.block (.mk [(.mk (.bind (.generated .operand 31)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 32)) none (.clone (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))))]) (tail := (.matchOn (.move (.generated .holder 33)) [(.mk (.ordering .less) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 3)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.move (.generated .binding 2)), (.call (.function 12) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)])))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 31)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 32)) none (.clone (.generated .binding 2)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false)) (Corr.prim (ts := [.string, .string]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list .string), (some 3)), (2, .string, (some 2)), (1, .string, (some 1)), (0, (.list .string), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 0))) (Corr.mCons (Γ' := [(3, (.list .string), (some 3)), (2, .string, (some 2)), (1, .string, (some 1)), (0, (.list .string), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.move (.generated .binding 3))) (Corr.mCons (Γ' := [(3, (.list .string), (some 3)), (2, .string, (some 2)), (1, .string, (some 1)), (0, (.list .string), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.construct .cons [(.move (.generated .binding 2)), (.call (.function 12) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [.string, (.list .string)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .string), .string]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun13 : FunOK program krate flags 13 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 34)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 34)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 14) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 35))]) none (.move (.generated .binding 1)))] (.move (.generated .part 35))))] false) (.mk [(.mk (.bind (.generated .holder 36)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 36)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 41)) none (.block (.mk [(.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 37)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 37))))), (.mk (.bind (.generated .operand 40)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 38)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 38)))))] (.call (.runtime .compare) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] false))))] (.cond (.matchOn (.move (.generated .holder 41)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 13) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]), [(0, (.list (.pair .string (.list .string))), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.pair .string (.list .string)))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list (.pair .string (.list .string))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, (.list (.pair .string (.list .string))), (some 2)), (1, (.pair .string (.list .string)), (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 14) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 35))]) none (.move (.generated .binding 1)))] (.move (.generated .part 35))))] false) (.mk [(.mk (.bind (.generated .holder 36)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 36)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 41)) none (.block (.mk [(.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 37)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 37))))), (.mk (.bind (.generated .operand 40)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 38)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 38)))))] (.call (.runtime .compare) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] false))))] (.cond (.matchOn (.move (.generated .holder 41)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 13) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 14) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 35))]) none (.move (.generated .binding 1)))] (.move (.generated .part 35))))] false)) (lk := []) (Corr.callOps (ts := [(.list .string)]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 35))]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 35))) (Corr.second (ta := .string) (tb := (.list .string)) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .holder 36)) none (.clone (.generated .binding 2)))]) (ta := (.matchOn (.uncons (.generated .holder 36)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 41)) none (.block (.mk [(.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 37)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 37))))), (.mk (.bind (.generated .operand 40)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 38)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 38)))))] (.call (.runtime .compare) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] false))))] (.cond (.matchOn (.move (.generated .holder 41)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 13) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (lb := []) (tb := (.lit (.bool false))) (Corr.matchArms (st := (.list (.pair .string (.list .string)))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.pair .string (.list .string))), (some 2)), (1, (.pair .string (.list .string)), (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair .string (.list .string))), none), (3, (.pair .string (.list .string)), (some 3)), (2, (.list (.pair .string (.list .string))), (some 2)), (1, (.pair .string (.list .string)), (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 41)) none (.block (.mk [(.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 37)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 37))))), (.mk (.bind (.generated .operand 40)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 38)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 38)))))] (.call (.runtime .compare) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 41)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 13) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .holder 41)) none (.block (.mk [(.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 37)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 37))))), (.mk (.bind (.generated .operand 40)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 38)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 38)))))] (.call (.runtime .compare) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] false))))]) (ce := (.matchOn (.move (.generated .holder 41)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 37)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 37))))), (.mk (.bind (.generated .operand 40)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 38)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 38)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] false)) (Corr.prim (ts := [.string, .string]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 37)), .wild]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 37))) (Corr.first (ta := .string) (tb := (.list .string)) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 38)), .wild]) none (.move (.generated .binding 3)))]) (tail := (.move (.generated .part 38))) (Corr.first (ta := .string) (tb := (.list .string)) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.list (.pair .string (.list .string))), none), (3, (.pair .string (.list .string)), (some 3)), (2, (.list (.pair .string (.list .string))), (some 2)), (1, (.pair .string (.list .string)), (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair .string (.list .string))), none), (3, (.pair .string (.list .string)), (some 3)), (2, (.list (.pair .string (.list .string))), (some 2)), (1, (.pair .string (.list .string)), (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, (.list (.pair .string (.list .string))), none), (3, (.pair .string (.list .string)), (some 3)), (2, (.list (.pair .string (.list .string))), (some 2)), (1, (.pair .string (.list .string)), (some 1)), (0, (.list (.pair .string (.list .string))), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 13) [(.move (.generated .binding 2))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.list (.pair .string (.list .string)))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ - -theorem fun14 : FunOK program krate flags 14 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 42)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 42)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [(.mk (.bind (.generated .holder 43)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 43)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 46)) none (.block (.mk [(.mk (.bind (.generated .operand 44)) none (.move (.generated .binding 1))), (.mk (.bind (.generated .operand 45)) none (.move (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 44)), (.move (.generated .operand 45))] false))))] (.cond (.matchOn (.move (.generated .holder 46)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 14) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])))]), [(0, (.list .string), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .string)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list .string), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, (.list .string), (some 2)), (1, .string, (some 1)), (0, (.list .string), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 43)) none (.clone (.generated .binding 2)))]) (tail := (.matchOn (.uncons (.generated .holder 43)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 46)) none (.block (.mk [(.mk (.bind (.generated .operand 44)) none (.move (.generated .binding 1))), (.mk (.bind (.generated .operand 45)) none (.move (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 44)), (.move (.generated .operand 45))] false))))] (.cond (.matchOn (.move (.generated .holder 46)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 14) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := (.list .string)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .string), (some 2)), (1, .string, (some 1)), (0, (.list .string), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list .string), none), (3, .string, (some 3)), (2, (.list .string), (some 2)), (1, .string, (some 1)), (0, (.list .string), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 46)) none (.block (.mk [(.mk (.bind (.generated .operand 44)) none (.move (.generated .binding 1))), (.mk (.bind (.generated .operand 45)) none (.move (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 44)), (.move (.generated .operand 45))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 46)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 14) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .holder 46)) none (.block (.mk [(.mk (.bind (.generated .operand 44)) none (.move (.generated .binding 1))), (.mk (.bind (.generated .operand 45)) none (.move (.generated .binding 3)))] (.call (.runtime .compare) [(.move (.generated .operand 44)), (.move (.generated .operand 45))] false))))]) (ce := (.matchOn (.move (.generated .holder 46)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 44)) none (.move (.generated .binding 1))), (.mk (.bind (.generated .operand 45)) none (.move (.generated .binding 3)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 44)), (.move (.generated .operand 45))] false)) (Corr.prim (ts := [.string, .string]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.list .string), none), (3, .string, (some 3)), (2, (.list .string), (some 2)), (1, .string, (some 1)), (0, (.list .string), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list .string), none), (3, .string, (some 3)), (2, (.list .string), (some 2)), (1, .string, (some 1)), (0, (.list .string), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, (.list .string), none), (3, .string, (some 3)), (2, (.list .string), (some 2)), (1, .string, (some 1)), (0, (.list .string), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 14) [(.move (.generated .binding 2))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.list .string)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ - -theorem fun15 : FunOK program krate flags 15 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 13) [(.clone (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.call (.function 0) [(.move (.generated .binding 0))] true)]))) (.mk [] (.succeed (.construct (.none (.option (.list .str))) [])))), [(0, (.list (.pair .string (.list .string))), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 13) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.list (.pair .string (.list .string)))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.call (.function 0) [(.move (.generated .binding 0))] true)]))) (lb := []) (tb := (.succeed (.construct (.none (.option (.list .str))) []))) (Corr.fOfB (Corr.build (ts := [(.option (.list .string))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .string (.list .string)))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | 3 => exact fun3 - | 4 => exact fun4 - | 5 => exact fun5 - | 6 => exact fun6 - | 7 => exact fun7 - | 8 => exact fun8 - | 9 => exact fun9 - | 10 => exact fun10 - | 11 => exact fun11 - | 12 => exact fun12 - | 13 => exact fun13 - | 14 => exact fun14 - | 15 => exact fun15 - | _ + 16 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R8.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R8.lean deleted file mode 100644 index 584e9979f..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R8.lean +++ /dev/null @@ -1,188 +0,0 @@ -import LexLeanPreservation.Core -import LexLeanPreservation.Values -import LexLeanPreservation.Primitives -import LexLeanPreservation.Fixed -import LexLeanPreservation.Keys -import LexLeanPreservation.Templates -import LexLeanPreservation.Validate -import Coverage.Boundary -import Coverage.Colls -import Coverage.Main -import Coverage.Prims -import Coverage.RecRoots -import Coverage.Recur -import Coverage.Syntax -import Coverage.Types -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -set_option linter.unusedVariables false -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8 - -def __prog : _root_.LexLeanTarget.TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1, 2, 3, 4, 5, 6, 7, 8, 9], types := [(.list (.pair (.pair .nat .string) .bool)), (.pair .nat .string), (.list (.pair (.fixed .i8) .nat)), (.fixed .i8), (.list (.pair .bool .nat)), .bool, (.list (.pair .int .nat)), .int, (.list (.pair (.fixed .u64) .nat)), (.fixed .u64)], result := (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat))))), - body := (.build .pair (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat))))) [(.call 1 [(.var 0), (.var 1)]), (.build .pair (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))) [(.call 2 [(.var 2), (.var 3)]), (.build .pair (.pair (.option .nat) (.pair (.option .nat) (.option .nat))) [(.call 3 [(.var 4), (.var 5)]), (.build .pair (.pair (.option .nat) (.option .nat)) [(.call 4 [(.var 6), (.var 7)]), (.call 5 [(.var 8), (.var 9)])])])])]) }, - { parameters := [0, 1], types := [(.list (.pair (.pair .nat .string) .bool)), (.pair .nat .string)], result := (.option .bool), - body := (.«match» (.option .bool) (.var 0) [(.arm .nil [] (.build .none (.option .bool) [])), (.arm .cons [2, 3] (.«match» (.option .bool) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.build .none (.option .bool) [])), (.arm .eq [] (.build .some (.option .bool) [(.second (.var 2))])), (.arm .gt [] (.call 1 [(.var 3), (.var 1)]))]))]) }, - { parameters := [0, 1], types := [(.list (.pair (.fixed .i8) .nat)), (.fixed .i8)], result := (.option .nat), - body := (.«match» (.option .nat) (.var 0) [(.arm .nil [] (.build .none (.option .nat) [])), (.arm .cons [2, 3] (.«match» (.option .nat) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.build .none (.option .nat) [])), (.arm .eq [] (.build .some (.option .nat) [(.second (.var 2))])), (.arm .gt [] (.call 2 [(.var 3), (.var 1)]))]))]) }, - { parameters := [0, 1], types := [(.list (.pair .bool .nat)), .bool], result := (.option .nat), - body := (.«match» (.option .nat) (.var 0) [(.arm .nil [] (.build .none (.option .nat) [])), (.arm .cons [2, 3] (.«match» (.option .nat) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.build .none (.option .nat) [])), (.arm .eq [] (.build .some (.option .nat) [(.second (.var 2))])), (.arm .gt [] (.call 3 [(.var 3), (.var 1)]))]))]) }, - { parameters := [0, 1], types := [(.list (.pair .int .nat)), .int], result := (.option .nat), - body := (.«match» (.option .nat) (.var 0) [(.arm .nil [] (.build .none (.option .nat) [])), (.arm .cons [2, 3] (.«match» (.option .nat) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.build .none (.option .nat) [])), (.arm .eq [] (.build .some (.option .nat) [(.second (.var 2))])), (.arm .gt [] (.call 4 [(.var 3), (.var 1)]))]))]) }, - { parameters := [0, 1], types := [(.list (.pair (.fixed .u64) .nat)), (.fixed .u64)], result := (.option .nat), - body := (.«match» (.option .nat) (.var 0) [(.arm .nil [] (.build .none (.option .nat) [])), (.arm .cons [2, 3] (.«match» (.option .nat) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.build .none (.option .nat) [])), (.arm .eq [] (.build .some (.option .nat) [(.second (.var 2))])), (.arm .gt [] (.call 5 [(.var 3), (.var 1)]))]))]) }, - { parameters := [0], types := [(.list (.pair (.pair .nat .string) .bool))], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 7 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 6 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, - { parameters := [0], types := [.bool], result := .bool, - body := (.build .true .bool []) }, - { parameters := [0], types := [(.list (.pair (.fixed .i8) .nat))], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 9 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 8 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, - { parameters := [0], types := [.nat], result := .bool, - body := (.build .true .bool []) }, - { parameters := [0], types := [(.list (.pair .bool .nat))], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 9 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 10 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, - { parameters := [0], types := [(.list (.pair .int .nat))], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 9 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 11 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, - { parameters := [0], types := [(.list (.pair (.fixed .u64) .nat))], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 9 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 12 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, - { parameters := [0, 1, 2, 3, 4, 5, 6, 7, 8, 9], types := [(.list (.pair (.pair .nat .string) .bool)), (.pair .nat .string), (.list (.pair (.fixed .i8) .nat)), (.fixed .i8), (.list (.pair .bool .nat)), .bool, (.list (.pair .int .nat)), .int, (.list (.pair (.fixed .u64) .nat)), (.fixed .u64)], result := (.option (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))), - body := (.cond (.call 6 [(.var 0)]) (.cond (.call 8 [(.var 2)]) (.cond (.call 10 [(.var 4)]) (.cond (.call 11 [(.var 6)]) (.cond (.call 12 [(.var 8)]) (.build .some (.option (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [(.call 0 [(.var 0), (.var 1), (.var 2), (.var 3), (.var 4), (.var 5), (.var 6), (.var 7), (.var 8), (.var 9)])]) (.build .none (.option (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])) (.build .none (.option (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])) (.build .none (.option (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])) (.build .none (.option (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])) (.build .none (.option (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])) }] } - -def __fits_0 (a : (List (Prod (Prod Nat String) Bool))) (k : (Prod Nat String)) (i : (List (Prod Int8 Nat))) (j : Int8) (b : (List (Prod Bool Nat))) (c : Bool) (d : (List (Prod Int Nat))) (e : Int) (u : (List (Prod UInt64 Nat))) (w : UInt64) : Bool := - ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) - -theorem __rel_0 (a : (List (Prod (Prod Nat String) Bool))) (k : (Prod Nat String)) (i : (List (Prod Int8 Nat))) (j : Int8) (b : (List (Prod Bool Nat))) (c : Bool) (d : (List (Prod Int Nat))) (e : Int) (u : (List (Prod UInt64 Nat))) (w : UInt64) : _root_.LexLeanPreservation.FunRel __prog 0 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.string) _root_.LexLeanTarget.TargetSyntax.Value.bool)) a), ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.string) k), ((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.i8 _root_.LexLeanTarget.TargetSyntax.Value.nat)) i), (_root_.LexLeanTarget.TargetSyntax.Value.i8 j), ((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.nat)) b), (_root_.LexLeanTarget.TargetSyntax.Value.bool c), ((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int _root_.LexLeanTarget.TargetSyntax.Value.nat)) d), (_root_.LexLeanTarget.TargetSyntax.Value.int e), ((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.u64 _root_.LexLeanTarget.TargetSyntax.Value.nat)) u), (_root_.LexLeanTarget.TargetSyntax.Value.u64 w)] (_root_.LexLeanPreservation.Rel (__fits_0 a k i j b c d e u w) ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat))))) (Coverage.Colls.keyTypes a k i j b c d e u w))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.tpl_mapLookup (_root_.LexLeanPreservation.keySpec_pair (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanPreservation.keySpec_string _root_.LexLeanCollections.compareCodes rfl (fun _ _ => rfl) (fun _ _ => rfl) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanCollections.Key.compare : (Prod Nat String) -> (Prod Nat String) -> Ordering) (fun _ _ __h => by simp only [_root_.LexLeanCollections.Key.compare] at __h ⊢; simp only [__h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.Key.compare] at __h ⊢; simp only [__h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.Key.compare] at __h ⊢; simp only [__h])) _root_.LexLeanTarget.TargetSyntax.Value.bool (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.string) _root_.LexLeanTarget.TargetSyntax.Value.bool)) (fun _ => rfl) (_root_.LexLeanPreservation.optEnc _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) _root_.LexLeanCollections.lookupEntry (fun _ => rfl) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (p := __prog) (fi := 1) (tk := (.pair .nat .string)) (tw := .bool) rfl (a) (k))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.tpl_mapLookup (_root_.LexLeanPreservation.keySpec_i8 (_root_.LexLeanCollections.Key.compare : Int8 -> Int8 -> Ordering) (fun _ _ => rfl)) _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.i8 _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) (_root_.LexLeanPreservation.optEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) _root_.LexLeanCollections.lookupEntry (fun _ => rfl) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (p := __prog) (fi := 2) (tk := (.fixed .i8)) (tw := .nat) rfl (i) (j))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.tpl_mapLookup (_root_.LexLeanPreservation.keySpec_bool (_root_.LexLeanCollections.Key.compare : Bool -> Bool -> Ordering) (fun _ _ => rfl)) _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) (_root_.LexLeanPreservation.optEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) _root_.LexLeanCollections.lookupEntry (fun _ => rfl) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (p := __prog) (fi := 3) (tk := .bool) (tw := .nat) rfl (b) (c))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.tpl_mapLookup (_root_.LexLeanPreservation.keySpec_int (_root_.LexLeanCollections.Key.compare : Int -> Int -> Ordering) (fun _ _ => rfl)) _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) (_root_.LexLeanPreservation.optEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) _root_.LexLeanCollections.lookupEntry (fun _ => rfl) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (p := __prog) (fi := 4) (tk := .int) (tw := .nat) rfl (d) (e))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.tpl_mapLookup (_root_.LexLeanPreservation.keySpec_u64 (_root_.LexLeanCollections.Key.compare : UInt64 -> UInt64 -> Ordering) (fun _ _ => rfl)) _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.u64 _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) (_root_.LexLeanPreservation.optEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) _root_.LexLeanCollections.lookupEntry (fun _ => rfl) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.lookupEntry, __h]) (p := __prog) (fi := 5) (tk := (.fixed .u64)) (tw := .nat) rfl (u) (w))) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) - -def denote (a : (List (Prod (Prod Nat String) Bool))) (k : (Prod Nat String)) (i : (List (Prod Int8 Nat))) (j : Int8) (b : (List (Prod Bool Nat))) (c : Bool) (d : (List (Prod Int Nat))) (e : Int) (u : (List (Prod UInt64 Nat))) (w : UInt64) : _root_.LexLeanPreservation.Obs := - _root_.cond (__fits_0 a k i j b c d e u w) (_root_.LexLeanPreservation.Obs.value (((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat))))) (Coverage.Colls.keyTypes a k i j b c d e u w)))) _root_.LexLeanPreservation.Obs.overflow - -theorem root (a : (List (Prod (Prod Nat String) Bool))) (k : (Prod Nat String)) (i : (List (Prod Int8 Nat))) (j : Int8) (b : (List (Prod Bool Nat))) (c : Bool) (d : (List (Prod Int Nat))) (e : Int) (u : (List (Prod UInt64 Nat))) (w : UInt64) : _root_.LexLeanPreservation.RunConv __prog 0 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.string) _root_.LexLeanTarget.TargetSyntax.Value.bool)) a), ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.string) k), ((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.i8 _root_.LexLeanTarget.TargetSyntax.Value.nat)) i), (_root_.LexLeanTarget.TargetSyntax.Value.i8 j), ((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.nat)) b), (_root_.LexLeanTarget.TargetSyntax.Value.bool c), ((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int _root_.LexLeanTarget.TargetSyntax.Value.nat)) d), (_root_.LexLeanTarget.TargetSyntax.Value.int e), ((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.u64 _root_.LexLeanTarget.TargetSyntax.Value.nat)) u), (_root_.LexLeanTarget.TargetSyntax.Value.u64 w)] (_root_.LexLeanPreservation.Rel (__fits_0 a k i j b c d e u w) ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat))))) (Coverage.Colls.keyTypes a k i j b c d e u w))) := - _root_.LexLeanPreservation.run_of_funRel (__rel_0 a k i j b c d e u w) - -def __valid_7 : Bool -> Bool := - fun _ => Bool.true - -def __inv_7 : Bool -> Prop := - fun _ => _root_.True - -theorem __viff_7 : ∀ (__v : Bool), __valid_7 __v = Bool.true ↔ __inv_7 __v := - fun __v => _root_.LexLeanPreservation.validTrue_inv __v - -theorem __vrel_7 : ∀ (__v : Bool), _root_.LexLeanPreservation.FunRel __prog 7 [(_root_.LexLeanTarget.TargetSyntax.Value.bool __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_7 __v))) := - _root_.LexLeanPreservation.tpl_validTrue _root_.LexLeanTarget.TargetSyntax.Value.bool rfl - -def __valid_6 : (List (Prod (Prod Nat String) Bool)) -> Bool := - _root_.LexLeanPreservation.ascMap (_root_.LexLeanCollections.Key.compare : (Prod Nat String) -> (Prod Nat String) -> Ordering) __valid_7 - -def __inv_6 : (List (Prod (Prod Nat String) Bool)) -> Prop := - _root_.LexLeanPreservation.InvMap (_root_.LexLeanCollections.Key.compare : (Prod Nat String) -> (Prod Nat String) -> Ordering) __inv_7 - -theorem __viff_6 : ∀ (__v : (List (Prod (Prod Nat String) Bool))), __valid_6 __v = Bool.true ↔ __inv_6 __v := - _root_.LexLeanPreservation.ascMap_inv (_root_.LexLeanCollections.Key.compare : (Prod Nat String) -> (Prod Nat String) -> Ordering) __valid_7 __inv_7 __viff_7 - -theorem __vrel_6 : ∀ (__v : (List (Prod (Prod Nat String) Bool))), _root_.LexLeanPreservation.FunRel __prog 6 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.string) _root_.LexLeanTarget.TargetSyntax.Value.bool)) __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_6 __v))) := - _root_.LexLeanPreservation.tpl_validMap (_root_.LexLeanPreservation.keySpec_pair (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanPreservation.keySpec_string _root_.LexLeanCollections.compareCodes rfl (fun _ _ => rfl) (fun _ _ => rfl) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (fun _ _ _ _ __h => by simp only [_root_.LexLeanCollections.compareCodes, __h]) (_root_.LexLeanCollections.Key.compare : String -> String -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanCollections.Key.compare : (Prod Nat String) -> (Prod Nat String) -> Ordering) (fun _ _ __h => by simp only [_root_.LexLeanCollections.Key.compare] at __h ⊢; simp only [__h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.Key.compare] at __h ⊢; simp only [__h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.Key.compare] at __h ⊢; simp only [__h])) __valid_7 (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.string) _root_.LexLeanTarget.TargetSyntax.Value.bool)) (fun _ => rfl) __vrel_7 rfl - -def __valid_9 : Nat -> Bool := - fun _ => Bool.true - -def __inv_9 : Nat -> Prop := - fun _ => _root_.True - -theorem __viff_9 : ∀ (__v : Nat), __valid_9 __v = Bool.true ↔ __inv_9 __v := - fun __v => _root_.LexLeanPreservation.validTrue_inv __v - -theorem __vrel_9 : ∀ (__v : Nat), _root_.LexLeanPreservation.FunRel __prog 9 [(_root_.LexLeanTarget.TargetSyntax.Value.nat __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_9 __v))) := - _root_.LexLeanPreservation.tpl_validTrue _root_.LexLeanTarget.TargetSyntax.Value.nat rfl - -def __valid_8 : (List (Prod Int8 Nat)) -> Bool := - _root_.LexLeanPreservation.ascMap (_root_.LexLeanCollections.Key.compare : Int8 -> Int8 -> Ordering) __valid_9 - -def __inv_8 : (List (Prod Int8 Nat)) -> Prop := - _root_.LexLeanPreservation.InvMap (_root_.LexLeanCollections.Key.compare : Int8 -> Int8 -> Ordering) __inv_9 - -theorem __viff_8 : ∀ (__v : (List (Prod Int8 Nat))), __valid_8 __v = Bool.true ↔ __inv_8 __v := - _root_.LexLeanPreservation.ascMap_inv (_root_.LexLeanCollections.Key.compare : Int8 -> Int8 -> Ordering) __valid_9 __inv_9 __viff_9 - -theorem __vrel_8 : ∀ (__v : (List (Prod Int8 Nat))), _root_.LexLeanPreservation.FunRel __prog 8 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.i8 _root_.LexLeanTarget.TargetSyntax.Value.nat)) __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_8 __v))) := - _root_.LexLeanPreservation.tpl_validMap (_root_.LexLeanPreservation.keySpec_i8 (_root_.LexLeanCollections.Key.compare : Int8 -> Int8 -> Ordering) (fun _ _ => rfl)) __valid_9 (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.i8 _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) __vrel_9 rfl - -def __valid_10 : (List (Prod Bool Nat)) -> Bool := - _root_.LexLeanPreservation.ascMap (_root_.LexLeanCollections.Key.compare : Bool -> Bool -> Ordering) __valid_9 - -def __inv_10 : (List (Prod Bool Nat)) -> Prop := - _root_.LexLeanPreservation.InvMap (_root_.LexLeanCollections.Key.compare : Bool -> Bool -> Ordering) __inv_9 - -theorem __viff_10 : ∀ (__v : (List (Prod Bool Nat))), __valid_10 __v = Bool.true ↔ __inv_10 __v := - _root_.LexLeanPreservation.ascMap_inv (_root_.LexLeanCollections.Key.compare : Bool -> Bool -> Ordering) __valid_9 __inv_9 __viff_9 - -theorem __vrel_10 : ∀ (__v : (List (Prod Bool Nat))), _root_.LexLeanPreservation.FunRel __prog 10 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.nat)) __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_10 __v))) := - _root_.LexLeanPreservation.tpl_validMap (_root_.LexLeanPreservation.keySpec_bool (_root_.LexLeanCollections.Key.compare : Bool -> Bool -> Ordering) (fun _ _ => rfl)) __valid_9 (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) __vrel_9 rfl - -def __valid_11 : (List (Prod Int Nat)) -> Bool := - _root_.LexLeanPreservation.ascMap (_root_.LexLeanCollections.Key.compare : Int -> Int -> Ordering) __valid_9 - -def __inv_11 : (List (Prod Int Nat)) -> Prop := - _root_.LexLeanPreservation.InvMap (_root_.LexLeanCollections.Key.compare : Int -> Int -> Ordering) __inv_9 - -theorem __viff_11 : ∀ (__v : (List (Prod Int Nat))), __valid_11 __v = Bool.true ↔ __inv_11 __v := - _root_.LexLeanPreservation.ascMap_inv (_root_.LexLeanCollections.Key.compare : Int -> Int -> Ordering) __valid_9 __inv_9 __viff_9 - -theorem __vrel_11 : ∀ (__v : (List (Prod Int Nat))), _root_.LexLeanPreservation.FunRel __prog 11 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int _root_.LexLeanTarget.TargetSyntax.Value.nat)) __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_11 __v))) := - _root_.LexLeanPreservation.tpl_validMap (_root_.LexLeanPreservation.keySpec_int (_root_.LexLeanCollections.Key.compare : Int -> Int -> Ordering) (fun _ _ => rfl)) __valid_9 (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) __vrel_9 rfl - -def __valid_12 : (List (Prod UInt64 Nat)) -> Bool := - _root_.LexLeanPreservation.ascMap (_root_.LexLeanCollections.Key.compare : UInt64 -> UInt64 -> Ordering) __valid_9 - -def __inv_12 : (List (Prod UInt64 Nat)) -> Prop := - _root_.LexLeanPreservation.InvMap (_root_.LexLeanCollections.Key.compare : UInt64 -> UInt64 -> Ordering) __inv_9 - -theorem __viff_12 : ∀ (__v : (List (Prod UInt64 Nat))), __valid_12 __v = Bool.true ↔ __inv_12 __v := - _root_.LexLeanPreservation.ascMap_inv (_root_.LexLeanCollections.Key.compare : UInt64 -> UInt64 -> Ordering) __valid_9 __inv_9 __viff_9 - -theorem __vrel_12 : ∀ (__v : (List (Prod UInt64 Nat))), _root_.LexLeanPreservation.FunRel __prog 12 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.u64 _root_.LexLeanTarget.TargetSyntax.Value.nat)) __v)] (_root_.LexLeanPreservation.Rel Bool.true (_root_.LexLeanTarget.TargetSyntax.Value.bool (__valid_12 __v))) := - _root_.LexLeanPreservation.tpl_validMap (_root_.LexLeanPreservation.keySpec_u64 (_root_.LexLeanCollections.Key.compare : UInt64 -> UInt64 -> Ordering) (fun _ _ => rfl)) __valid_9 (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.u64 _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) __vrel_9 rfl - -def entryFits (a : (List (Prod (Prod Nat String) Bool))) (k : (Prod Nat String)) (i : (List (Prod Int8 Nat))) (j : Int8) (b : (List (Prod Bool Nat))) (c : Bool) (d : (List (Prod Int Nat))) (e : Int) (u : (List (Prod UInt64 Nat))) (w : UInt64) : Bool := - (if __valid_6 a then (if __valid_8 i then (if __valid_10 b then (if __valid_11 d then (if __valid_12 u then __fits_0 a k i j b c d e u w else Bool.true) else Bool.true) else Bool.true) else Bool.true) else Bool.true) - -def entryValue (a : (List (Prod (Prod Nat String) Bool))) (k : (Prod Nat String)) (i : (List (Prod Int8 Nat))) (j : Int8) (b : (List (Prod Bool Nat))) (c : Bool) (d : (List (Prod Int Nat))) (e : Int) (u : (List (Prod UInt64 Nat))) (w : UInt64) : _root_.LexLeanTarget.TargetSyntax.Value := - (if __valid_6 a then (if __valid_8 i then (if __valid_10 b then (if __valid_11 d then (if __valid_12 u then (_root_.LexLeanTarget.TargetSyntax.Value.some ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat))))) (Coverage.Colls.keyTypes a k i j b c d e u w))) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) - -/-- The entry's observation. -/ -def denoteEntry (a : (List (Prod (Prod Nat String) Bool))) (k : (Prod Nat String)) (i : (List (Prod Int8 Nat))) (j : Int8) (b : (List (Prod Bool Nat))) (c : Bool) (d : (List (Prod Int Nat))) (e : Int) (u : (List (Prod UInt64 Nat))) (w : UInt64) : _root_.LexLeanPreservation.Obs := - _root_.cond (_root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.entryFits a k i j b c d e u w) (_root_.LexLeanPreservation.Obs.value (_root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.entryValue a k i j b c d e u w)) _root_.LexLeanPreservation.Obs.overflow - -/-- §17.12's invariants of the validated parameters. -/ -def accepts (a : (List (Prod (Prod Nat String) Bool))) (k : (Prod Nat String)) (i : (List (Prod Int8 Nat))) (j : Int8) (b : (List (Prod Bool Nat))) (c : Bool) (d : (List (Prod Int Nat))) (e : Int) (u : (List (Prod UInt64 Nat))) (w : UInt64) : Prop := - (__inv_6 a ∧ (__inv_8 i ∧ (__inv_10 b ∧ (__inv_11 d ∧ (__inv_12 u ∧ _root_.True))))) - -theorem entry (a : (List (Prod (Prod Nat String) Bool))) (k : (Prod Nat String)) (i : (List (Prod Int8 Nat))) (j : Int8) (b : (List (Prod Bool Nat))) (c : Bool) (d : (List (Prod Int Nat))) (e : Int) (u : (List (Prod UInt64 Nat))) (w : UInt64) : _root_.LexLeanPreservation.RunConv __prog 13 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.string) _root_.LexLeanTarget.TargetSyntax.Value.bool)) a), ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.string) k), ((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.i8 _root_.LexLeanTarget.TargetSyntax.Value.nat)) i), (_root_.LexLeanTarget.TargetSyntax.Value.i8 j), ((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.nat)) b), (_root_.LexLeanTarget.TargetSyntax.Value.bool c), ((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.int _root_.LexLeanTarget.TargetSyntax.Value.nat)) d), (_root_.LexLeanTarget.TargetSyntax.Value.int e), ((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.u64 _root_.LexLeanTarget.TargetSyntax.Value.nat)) u), (_root_.LexLeanTarget.TargetSyntax.Value.u64 w)] (_root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.denoteEntry a k i j b c d e u w) := - _root_.LexLeanPreservation.run_of_funRel (_root_.LexLeanPreservation.FunRel.fits_eq (_root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun __c => if __c then (if __valid_8 i then (if __valid_10 b then (if __valid_11 d then (if __valid_12 u then __fits_0 a k i j b c d e u w else Bool.true) else Bool.true) else Bool.true) else Bool.true) else Bool.true) (fun __c => if __c then (if __valid_8 i then (if __valid_10 b then (if __valid_11 d then (if __valid_12 u then (_root_.LexLeanTarget.TargetSyntax.Value.some ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat))))) (Coverage.Colls.keyTypes a k i j b c d e u w))) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) (__valid_6 a) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_6 a)) (fun _ => _root_.LexLeanPreservation.Conv.fits_eq (_root_.LexLeanPreservation.conv_cond (fun __c => if __c then (if __valid_10 b then (if __valid_11 d then (if __valid_12 u then __fits_0 a k i j b c d e u w else Bool.true) else Bool.true) else Bool.true) else Bool.true) (fun __c => if __c then (if __valid_10 b then (if __valid_11 d then (if __valid_12 u then (_root_.LexLeanTarget.TargetSyntax.Value.some ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat))))) (Coverage.Colls.keyTypes a k i j b c d e u w))) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) (__valid_8 i) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_8 i)) (fun _ => _root_.LexLeanPreservation.Conv.fits_eq (_root_.LexLeanPreservation.conv_cond (fun __c => if __c then (if __valid_11 d then (if __valid_12 u then __fits_0 a k i j b c d e u w else Bool.true) else Bool.true) else Bool.true) (fun __c => if __c then (if __valid_11 d then (if __valid_12 u then (_root_.LexLeanTarget.TargetSyntax.Value.some ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat))))) (Coverage.Colls.keyTypes a k i j b c d e u w))) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) (__valid_10 b) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_10 b)) (fun _ => _root_.LexLeanPreservation.Conv.fits_eq (_root_.LexLeanPreservation.conv_cond (fun __c => if __c then (if __valid_12 u then __fits_0 a k i j b c d e u w else Bool.true) else Bool.true) (fun __c => if __c then (if __valid_12 u then (_root_.LexLeanTarget.TargetSyntax.Value.some ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat))))) (Coverage.Colls.keyTypes a k i j b c d e u w))) else _root_.LexLeanTarget.TargetSyntax.Value.none) else _root_.LexLeanTarget.TargetSyntax.Value.none) (__valid_11 d) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_11 d)) (fun _ => _root_.LexLeanPreservation.Conv.fits_eq (_root_.LexLeanPreservation.conv_cond (fun __c => if __c then __fits_0 a k i j b c d e u w else Bool.true) (fun __c => if __c then (_root_.LexLeanTarget.TargetSyntax.Value.some ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat))))) (Coverage.Colls.keyTypes a k i j b c d e u w))) else _root_.LexLeanTarget.TargetSyntax.Value.none) (__valid_12 u) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__vrel_12 u)) (fun _ => _root_.LexLeanPreservation.Conv.fits_eq (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)))))))))) (__rel_0 a k i j b c d e u w)) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some) (by simp)) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) (by simp)) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) (by simp)) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) (by simp)) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) (by simp)) (fun _ => _root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (by simp [_root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.entryFits])) - -theorem entry_accepts (a : (List (Prod (Prod Nat String) Bool))) (k : (Prod Nat String)) (i : (List (Prod Int8 Nat))) (j : Int8) (b : (List (Prod Bool Nat))) (c : Bool) (d : (List (Prod Int Nat))) (e : Int) (u : (List (Prod UInt64 Nat))) (w : UInt64) (__h : _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.accepts a k i j b c d e u w) : _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.denoteEntry a k i j b c d e u w = _root_.LexLeanPreservation.someObs (_root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.denote a k i j b c d e u w) := by - unfold _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.accepts at __h - unfold _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.denoteEntry _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.entryFits _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.entryValue _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.denote - simp only [_root_.if_true, (__viff_6 a).mpr __h.1, (__viff_8 i).mpr __h.2.1, (__viff_10 b).mpr __h.2.2.1, (__viff_11 d).mpr __h.2.2.2.1, (__viff_12 u).mpr __h.2.2.2.2.1] - cases __fits_0 a k i j b c d e u w <;> rfl - -theorem entry_refuses (a : (List (Prod (Prod Nat String) Bool))) (k : (Prod Nat String)) (i : (List (Prod Int8 Nat))) (j : Int8) (b : (List (Prod Bool Nat))) (c : Bool) (d : (List (Prod Int Nat))) (e : Int) (u : (List (Prod UInt64 Nat))) (w : UInt64) (__h : ¬ _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.accepts a k i j b c d e u w) : _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.denoteEntry a k i j b c d e u w = _root_.LexLeanPreservation.Obs.value _root_.LexLeanTarget.TargetSyntax.Value.none := by - unfold _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.accepts at __h - unfold _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.denoteEntry _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.entryFits _root_.LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.entryValue - cases __c0 : __valid_6 a - · simp - · cases __c1 : __valid_8 i - · simp - · cases __c2 : __valid_10 b - · simp - · cases __c3 : __valid_11 d - · simp - · cases __c4 : __valid_12 u - · simp - · exact _root_.absurd ⟨(__viff_6 a).mp __c0, (__viff_8 i).mp __c1, (__viff_10 b).mp __c2, (__viff_11 d).mp __c3, (__viff_12 u).mp __c4, _root_.trivial⟩ __h - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8 diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R8/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R8/Compose/RustStd.lex.tex deleted file mode 100644 index c7697e706..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R8/Compose/RustStd.lex.tex +++ /dev/null @@ -1,1570 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.Compose.RustStd.root : @3073 := @3074 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.RustStd.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.RustStd.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.RustStd.flags -@3 := Nat -@4 := String -@5 := Prod.{0, 0} -@6 := @5 @3 -@7 := @6 @4 -@8 := Bool -@9 := @5 @7 -@10 := @9 @8 -@11 := List.{0} -@12 := @11 @10 -@13 := #10 -@14 := LexLeanTarget.TargetSyntax.Value.nat -@15 := LexLeanTarget.TargetSyntax.Value.string -@16 := LexLeanPreservation.encPair -@17 := @16 @3 -@18 := @17 @4 -@19 := @18 @14 -@20 := @19 @15 -@21 := LexLeanTarget.TargetSyntax.Value.bool -@22 := @16 @7 -@23 := @22 @8 -@24 := @23 @20 -@25 := @24 @21 -@26 := LexLeanPreservation.encList -@27 := @26 @10 -@28 := @27 @25 -@29 := @28 @13 -@30 := LexLeanTarget.TargetSyntax.Ty.nat -@31 := LexLeanTarget.TargetSyntax.Ty.string -@32 := LexLeanTarget.TargetSyntax.Ty.pair -@33 := @32 @30 -@34 := @33 @31 -@35 := LexLeanTarget.TargetSyntax.Ty.bool -@36 := @32 @34 -@37 := @36 @35 -@38 := LexLeanTarget.TargetSyntax.Ty.list -@39 := @38 @37 -@40 := #0 -@41 := LexLeanTarget.TargetSyntax.Program -@42 := LexLeanPreservation.Rust.RCrate -@43 := LexLeanPreservation.Rust.Flags -@44 := LexLeanPreservation.Rust.WT -@45 := #3 -@46 := @44 @45 -@47 := #2 -@48 := @46 @47 -@49 := #1 -@50 := @48 @49 -@51 := @14 @40 -@57 := {p : @41} -> {c : @42} -> {A : @43} -> (n : @3) -> @50 @51 @30 -@59 := LexLeanPreservation.Rust.wt_nat @0 -@60 := @44 @0 -@62 := @60 @47 @49 -@67 := {c : @42} -> {A : @43} -> (n : @3) -> @62 @51 @30 -@68 := @59 @1 -@69 := @60 @1 -@70 := @69 @49 -@74 := {A : @43} -> (n : @3) -> @70 @51 @30 -@75 := @68 @2 -@76 := @69 @2 -@77 := @76 @51 -@78 := @77 @30 -@79 := (n : @3) -> @78 -@81 := fun (__x : @3) => @75 @40 -@82 := @15 @40 -@88 := {p : @41} -> {c : @42} -> {A : @43} -> (s : @4) -> @50 @82 @31 -@90 := LexLeanPreservation.Rust.wt_string @0 -@95 := {c : @42} -> {A : @43} -> (s : @4) -> @62 @82 @31 -@96 := @90 @1 -@100 := {A : @43} -> (s : @4) -> @70 @82 @31 -@101 := @96 @2 -@102 := @76 @82 -@103 := @102 @31 -@104 := (s : @4) -> @103 -@106 := fun (__x : @4) => @101 @40 -@107 := Sort 1 -@108 := LexLeanTarget.TargetSyntax.Value -@109 := (a._@._internal._hyg.#0 : @49) -> @108 -@110 := LexLeanTarget.TargetSyntax.Ty -@111 := #5 -@112 := #9 -@113 := @44 @112 -@114 := #8 -@115 := @113 @114 -@116 := #7 -@117 := @115 @116 -@118 := #4 -@119 := @118 @40 -@122 := (x : @111) -> @117 @119 @47 -@128 := (x : @111) -> @44 @13 @112 @114 @119 @47 -@129 := @5 @116 -@130 := #6 -@131 := @129 @130 -@132 := #11 -@135 := @44 @132 @13 @112 -@140 := @16 @114 @116 @130 @111 @40 -@141 := @135 @140 -@143 := @32 @118 @45 -@156 := {p : @41} -> - {c : @42} -> - {A : @43} -> - {α : @107} -> - {β : @107} -> - {ea : @109} -> - {eb : @109} -> {s : @110} -> {t : @110} -> (ha : @122) -> (hb : @128) -> (x : @131) -> @141 @143 -@158 := LexLeanPreservation.Rust.wt_encPair @0 -@183 := {c : @42} -> - {A : @43} -> - {α : @107} -> - {β : @107} -> - {ea : @109} -> - {eb : @109} -> - {s : @110} -> - {t : @110} -> - (ha : (x : @111) -> @60 @114 @116 @119 @47) -> - (hb : (x : @111) -> @60 @112 @114 @119 @47) -> (x : @131) -> @60 @13 @112 @140 @143 -@184 := @158 @1 -@205 := {A : @43} -> - {α : @107} -> - {β : @107} -> - {ea : @109} -> - {eb : @109} -> - {s : @110} -> - {t : @110} -> - (ha : (x : @111) -> @69 @116 @119 @47) -> - (hb : (x : @111) -> @69 @114 @119 @47) -> (x : @131) -> @69 @112 @140 @143 -@206 := @184 @2 -@208 := @76 @119 @47 -@209 := (x : @111) -> @208 -@220 := {α : @107} -> - {β : @107} -> - {ea : @109} -> - {eb : @109} -> - {s : @110} -> {t : @110} -> (ha : @209) -> (hb : @209) -> (x : @131) -> @76 @140 @143 -@221 := @206 @3 -@222 := (a._@._internal._hyg.#0 : @3) -> @108 -@223 := (x : @3) -> @208 -@238 := {β : @107} -> - {ea : @222} -> - {eb : @109} -> - {s : @110} -> - {t : @110} -> (ha : @223) -> (hb : @209) -> (x : @6 @130) -> @76 (@17 @116 @130 @111 @40) @143 -@239 := @221 @4 -@240 := (a._@._internal._hyg.#0 : @4) -> @108 -@241 := (x : @4) -> @208 -@253 := {ea : @222} -> - {eb : @240} -> - {s : @110} -> {t : @110} -> (ha : @223) -> (hb : @241) -> (x : @7) -> @76 (@18 @130 @111 @40) @143 -@254 := @239 @14 -@256 := (x : @3) -> @77 @47 -@266 := {eb : @240} -> - {s : @110} -> {t : @110} -> (ha : @256) -> (hb : @241) -> (x : @7) -> @76 (@19 @111 @40) @143 -@267 := @254 @15 -@269 := (x : @4) -> @102 @47 -@271 := @76 (@20 @40) -@277 := {s : @110} -> {t : @110} -> (ha : @256) -> (hb : @269) -> (x : @7) -> @271 @143 -@278 := @267 @30 -@279 := (x : @3) -> @78 -@285 := {t : @110} -> (ha : @279) -> (hb : @269) -> (x : @7) -> @271 (@33 @45) -@286 := @278 @31 -@287 := (x : @4) -> @103 -@289 := (x : @7) -> @271 @34 -@291 := (ha : @279) -> (hb : @287) -> @289 -@293 := @286 @81 @106 -@295 := fun (__x : @7) => @293 @40 -@296 := @21 @40 -@302 := {p : @41} -> {c : @42} -> {A : @43} -> (b : @8) -> @50 @296 @35 -@304 := LexLeanPreservation.Rust.wt_bool @0 -@309 := {c : @42} -> {A : @43} -> (b : @8) -> @62 @296 @35 -@310 := @304 @1 -@314 := {A : @43} -> (b : @8) -> @70 @296 @35 -@315 := @310 @2 -@316 := @76 @296 -@317 := @316 @35 -@318 := (b : @8) -> @317 -@320 := fun (__x : @8) => @315 @40 -@321 := @206 @7 -@322 := (a._@._internal._hyg.#0 : @7) -> @108 -@323 := (x : @7) -> @208 -@338 := {β : @107} -> - {ea : @322} -> - {eb : @109} -> - {s : @110} -> - {t : @110} -> (ha : @323) -> (hb : @209) -> (x : @9 @130) -> @76 (@22 @116 @130 @111 @40) @143 -@339 := @321 @8 -@340 := (a._@._internal._hyg.#0 : @8) -> @108 -@341 := (x : @8) -> @208 -@353 := {ea : @322} -> - {eb : @340} -> - {s : @110} -> - {t : @110} -> (ha : @323) -> (hb : @341) -> (x : @10) -> @76 (@23 @130 @111 @40) @143 -@354 := @339 @20 -@356 := (x : @7) -> @271 @47 -@366 := {eb : @340} -> - {s : @110} -> {t : @110} -> (ha : @356) -> (hb : @341) -> (x : @10) -> @76 (@24 @111 @40) @143 -@367 := @354 @21 -@369 := (x : @8) -> @316 @47 -@371 := @76 (@25 @40) -@377 := {s : @110} -> {t : @110} -> (ha : @356) -> (hb : @369) -> (x : @10) -> @371 @143 -@378 := @367 @34 -@384 := {t : @110} -> (ha : @289) -> (hb : @369) -> (x : @10) -> @371 (@36 @45) -@385 := @378 @35 -@386 := (x : @8) -> @317 -@388 := (x : @10) -> @371 @37 -@390 := (ha : @289) -> (hb : @386) -> @388 -@394 := fun (__x : @10) => @385 @295 @320 @40 -@395 := (a._@._internal._hyg.#0 : @40) -> @108 -@398 := @44 @130 @111 @118 -@399 := @47 @40 -@402 := (x : @47) -> @398 @399 @49 -@403 := @11 @45 -@406 := @44 @116 @130 @111 -@409 := @26 @118 @45 @40 -@410 := @406 @409 -@411 := @38 @47 -@420 := {p : @41} -> - {c : @42} -> - {A : @43} -> {α : @107} -> {e : @395} -> {t : @110} -> (h : @402) -> (xs : @403) -> @410 @411 -@422 := LexLeanPreservation.Rust.wt_encList @0 -@424 := @60 @111 @118 -@438 := {c : @42} -> - {A : @43} -> - {α : @107} -> - {e : @395} -> - {t : @110} -> (h : (x : @47) -> @424 @399 @49) -> (xs : @403) -> @60 @130 @111 @409 @411 -@439 := @422 @1 -@440 := @69 @118 -@452 := {A : @43} -> - {α : @107} -> - {e : @395} -> {t : @110} -> (h : (x : @47) -> @440 @399 @49) -> (xs : @403) -> @69 @111 @409 @411 -@453 := @439 @2 -@455 := @76 @399 @49 -@463 := {α : @107} -> - {e : @395} -> {t : @110} -> (h : (x : @47) -> @455) -> (xs : @403) -> @76 @409 @411 -@464 := @453 @10 -@474 := {e : (a._@._internal._hyg.#0 : @10) -> @108} -> - {t : @110} -> (h : (x : @10) -> @455) -> (xs : @12) -> @76 (@27 @45 @40) @411 -@475 := @464 @25 -@477 := (x : @10) -> @371 @49 -@479 := @76 (@28 @40) -@483 := {t : @110} -> (h : @477) -> (xs : @12) -> @479 @411 -@484 := @475 @37 -@487 := (h : @388) -> (xs : @12) -> @479 @39 -@489 := @484 @394 @13 -@491 := @76 @29 @39 -@492 := @20 @112 -@493 := @293 @112 -@495 := @76 @492 @34 -@496 := Int8 -@497 := @5 @496 -@498 := @497 @3 -@499 := @11 @498 -@500 := LexLeanTarget.TargetSyntax.Value.i8 -@501 := @16 @496 -@502 := @501 @3 -@503 := @502 @500 -@504 := @503 @14 -@505 := @26 @498 -@506 := @505 @504 -@507 := @506 @114 -@508 := LexLeanTarget.TargetSyntax.Ty.fixed -@510 := @508 LexLeanTarget.TargetSyntax.IntKind.i8 -@511 := @32 @510 -@512 := @511 @30 -@513 := @38 @512 -@514 := @500 @40 -@520 := {p : @41} -> {c : @42} -> {A : @43} -> (x : @496) -> @50 @514 @510 -@522 := LexLeanPreservation.Rust.wt_i8 @0 -@527 := {c : @42} -> {A : @43} -> (x : @496) -> @62 @514 @510 -@528 := @522 @1 -@532 := {A : @43} -> (x : @496) -> @70 @514 @510 -@533 := @528 @2 -@534 := @76 @514 -@536 := (x : @496) -> @534 @510 -@538 := fun (__x : @496) => @533 @40 -@539 := @206 @496 -@540 := (a._@._internal._hyg.#0 : @496) -> @108 -@541 := (x : @496) -> @208 -@556 := {β : @107} -> - {ea : @540} -> - {eb : @109} -> - {s : @110} -> - {t : @110} -> (ha : @541) -> (hb : @209) -> (x : @497 @130) -> @76 (@501 @116 @130 @111 @40) @143 -@557 := @539 @3 -@569 := {ea : @540} -> - {eb : @222} -> - {s : @110} -> - {t : @110} -> (ha : @541) -> (hb : @223) -> (x : @498) -> @76 (@502 @130 @111 @40) @143 -@570 := @557 @500 -@572 := (x : @496) -> @534 @47 -@582 := {eb : @222} -> - {s : @110} -> {t : @110} -> (ha : @572) -> (hb : @223) -> (x : @498) -> @76 (@503 @111 @40) @143 -@583 := @570 @14 -@585 := @76 (@504 @40) -@591 := {s : @110} -> {t : @110} -> (ha : @572) -> (hb : @256) -> (x : @498) -> @585 @143 -@592 := @583 @510 -@598 := {t : @110} -> (ha : @536) -> (hb : @256) -> (x : @498) -> @585 (@511 @45) -@599 := @592 @30 -@601 := (x : @498) -> @585 @512 -@603 := (ha : @536) -> (hb : @279) -> @601 -@607 := fun (__x : @498) => @599 @538 @81 @40 -@608 := @453 @498 -@618 := {e : (a._@._internal._hyg.#0 : @498) -> @108} -> - {t : @110} -> (h : (x : @498) -> @455) -> (xs : @499) -> @76 (@505 @45 @40) @411 -@619 := @608 @504 -@621 := (x : @498) -> @585 @49 -@623 := @76 (@506 @40) -@627 := {t : @110} -> (h : @621) -> (xs : @499) -> @623 @411 -@628 := @619 @512 -@631 := (h : @601) -> (xs : @499) -> @623 @513 -@633 := @628 @607 @114 -@635 := @76 @507 @513 -@636 := @500 @116 -@637 := @533 @116 -@639 := @76 @636 @510 -@640 := @5 @8 -@641 := @640 @3 -@642 := @11 @641 -@643 := @16 @8 -@644 := @643 @3 -@645 := @644 @21 -@646 := @645 @14 -@647 := @26 @641 -@648 := @647 @646 -@649 := @648 @130 -@650 := @32 @35 -@651 := @650 @30 -@652 := @38 @651 -@653 := @206 @8 -@668 := {β : @107} -> - {ea : @340} -> - {eb : @109} -> - {s : @110} -> - {t : @110} -> (ha : @341) -> (hb : @209) -> (x : @640 @130) -> @76 (@643 @116 @130 @111 @40) @143 -@669 := @653 @3 -@681 := {ea : @340} -> - {eb : @222} -> - {s : @110} -> - {t : @110} -> (ha : @341) -> (hb : @223) -> (x : @641) -> @76 (@644 @130 @111 @40) @143 -@682 := @669 @21 -@692 := {eb : @222} -> - {s : @110} -> {t : @110} -> (ha : @369) -> (hb : @223) -> (x : @641) -> @76 (@645 @111 @40) @143 -@693 := @682 @14 -@695 := @76 (@646 @40) -@701 := {s : @110} -> {t : @110} -> (ha : @369) -> (hb : @256) -> (x : @641) -> @695 @143 -@702 := @693 @35 -@708 := {t : @110} -> (ha : @386) -> (hb : @256) -> (x : @641) -> @695 (@650 @45) -@709 := @702 @30 -@711 := (x : @641) -> @695 @651 -@713 := (ha : @386) -> (hb : @279) -> @711 -@717 := fun (__x : @641) => @709 @320 @81 @40 -@718 := @453 @641 -@728 := {e : (a._@._internal._hyg.#0 : @641) -> @108} -> - {t : @110} -> (h : (x : @641) -> @455) -> (xs : @642) -> @76 (@647 @45 @40) @411 -@729 := @718 @646 -@731 := (x : @641) -> @695 @49 -@733 := @76 (@648 @40) -@737 := {t : @110} -> (h : @731) -> (xs : @642) -> @733 @411 -@738 := @729 @651 -@741 := (h : @711) -> (xs : @642) -> @733 @652 -@743 := @738 @717 @130 -@745 := @76 @649 @652 -@746 := @21 @111 -@747 := @315 @111 -@749 := @76 @746 @35 -@750 := Int -@751 := @5 @750 -@752 := @751 @3 -@753 := @11 @752 -@754 := LexLeanTarget.TargetSyntax.Value.int -@755 := @16 @750 -@756 := @755 @3 -@757 := @756 @754 -@758 := @757 @14 -@759 := @26 @752 -@760 := @759 @758 -@761 := @760 @118 -@762 := LexLeanTarget.TargetSyntax.Ty.int -@763 := @32 @762 -@764 := @763 @30 -@765 := @38 @764 -@766 := @754 @40 -@772 := {p : @41} -> {c : @42} -> {A : @43} -> (n : @750) -> @50 @766 @762 -@774 := LexLeanPreservation.Rust.wt_int @0 -@779 := {c : @42} -> {A : @43} -> (n : @750) -> @62 @766 @762 -@780 := @774 @1 -@784 := {A : @43} -> (n : @750) -> @70 @766 @762 -@785 := @780 @2 -@786 := @76 @766 -@787 := @786 @762 -@788 := (n : @750) -> @787 -@790 := fun (__x : @750) => @785 @40 -@791 := @206 @750 -@792 := (a._@._internal._hyg.#0 : @750) -> @108 -@793 := (x : @750) -> @208 -@808 := {β : @107} -> - {ea : @792} -> - {eb : @109} -> - {s : @110} -> - {t : @110} -> (ha : @793) -> (hb : @209) -> (x : @751 @130) -> @76 (@755 @116 @130 @111 @40) @143 -@809 := @791 @3 -@821 := {ea : @792} -> - {eb : @222} -> - {s : @110} -> - {t : @110} -> (ha : @793) -> (hb : @223) -> (x : @752) -> @76 (@756 @130 @111 @40) @143 -@822 := @809 @754 -@824 := (x : @750) -> @786 @47 -@834 := {eb : @222} -> - {s : @110} -> {t : @110} -> (ha : @824) -> (hb : @223) -> (x : @752) -> @76 (@757 @111 @40) @143 -@835 := @822 @14 -@837 := @76 (@758 @40) -@843 := {s : @110} -> {t : @110} -> (ha : @824) -> (hb : @256) -> (x : @752) -> @837 @143 -@844 := @835 @762 -@845 := (x : @750) -> @787 -@851 := {t : @110} -> (ha : @845) -> (hb : @256) -> (x : @752) -> @837 (@763 @45) -@852 := @844 @30 -@854 := (x : @752) -> @837 @764 -@856 := (ha : @845) -> (hb : @279) -> @854 -@860 := fun (__x : @752) => @852 @790 @81 @40 -@861 := @453 @752 -@871 := {e : (a._@._internal._hyg.#0 : @752) -> @108} -> - {t : @110} -> (h : (x : @752) -> @455) -> (xs : @753) -> @76 (@759 @45 @40) @411 -@872 := @861 @758 -@874 := (x : @752) -> @837 @49 -@876 := @76 (@760 @40) -@880 := {t : @110} -> (h : @874) -> (xs : @753) -> @876 @411 -@881 := @872 @764 -@884 := (h : @854) -> (xs : @753) -> @876 @765 -@886 := @881 @860 @118 -@888 := @76 @761 @765 -@889 := @754 @45 -@890 := @785 @45 -@892 := @76 @889 @762 -@893 := UInt64 -@894 := @5 @893 -@895 := @894 @3 -@896 := @11 @895 -@897 := LexLeanTarget.TargetSyntax.Value.u64 -@898 := @16 @893 -@899 := @898 @3 -@900 := @899 @897 -@901 := @900 @14 -@902 := @26 @895 -@903 := @902 @901 -@904 := @903 @47 -@906 := @508 LexLeanTarget.TargetSyntax.IntKind.u64 -@907 := @32 @906 -@908 := @907 @30 -@909 := @38 @908 -@910 := @897 @40 -@916 := {p : @41} -> {c : @42} -> {A : @43} -> (x : @893) -> @50 @910 @906 -@918 := LexLeanPreservation.Rust.wt_u64 @0 -@923 := {c : @42} -> {A : @43} -> (x : @893) -> @62 @910 @906 -@924 := @918 @1 -@928 := {A : @43} -> (x : @893) -> @70 @910 @906 -@929 := @924 @2 -@930 := @76 @910 -@932 := (x : @893) -> @930 @906 -@934 := fun (__x : @893) => @929 @40 -@935 := @206 @893 -@936 := (a._@._internal._hyg.#0 : @893) -> @108 -@937 := (x : @893) -> @208 -@952 := {β : @107} -> - {ea : @936} -> - {eb : @109} -> - {s : @110} -> - {t : @110} -> (ha : @937) -> (hb : @209) -> (x : @894 @130) -> @76 (@898 @116 @130 @111 @40) @143 -@953 := @935 @3 -@965 := {ea : @936} -> - {eb : @222} -> - {s : @110} -> - {t : @110} -> (ha : @937) -> (hb : @223) -> (x : @895) -> @76 (@899 @130 @111 @40) @143 -@966 := @953 @897 -@968 := (x : @893) -> @930 @47 -@978 := {eb : @222} -> - {s : @110} -> {t : @110} -> (ha : @968) -> (hb : @223) -> (x : @895) -> @76 (@900 @111 @40) @143 -@979 := @966 @14 -@981 := @76 (@901 @40) -@987 := {s : @110} -> {t : @110} -> (ha : @968) -> (hb : @256) -> (x : @895) -> @981 @143 -@988 := @979 @906 -@994 := {t : @110} -> (ha : @932) -> (hb : @256) -> (x : @895) -> @981 (@907 @45) -@995 := @988 @30 -@997 := (x : @895) -> @981 @908 -@999 := (ha : @932) -> (hb : @279) -> @997 -@1003 := fun (__x : @895) => @995 @934 @81 @40 -@1004 := @453 @895 -@1014 := {e : (a._@._internal._hyg.#0 : @895) -> @108} -> - {t : @110} -> (h : (x : @895) -> @455) -> (xs : @896) -> @76 (@902 @45 @40) @411 -@1015 := @1004 @901 -@1017 := (x : @895) -> @981 @49 -@1019 := @76 (@903 @40) -@1023 := {t : @110} -> (h : @1017) -> (xs : @896) -> @1019 @411 -@1024 := @1015 @908 -@1027 := (h : @997) -> (xs : @896) -> @1019 @909 -@1029 := @1024 @1003 @47 -@1031 := @76 @904 @909 -@1032 := @897 @49 -@1033 := @929 @49 -@1035 := @76 @1032 @906 -@1036 := List.nil.{0} -@1037 := List.cons.{0} -@1038 := @1036 @108 -@1039 := @1037 @108 -@1041 := @1039 @1032 @1038 -@1043 := @1039 @904 @1041 -@1045 := @1039 @889 @1043 -@1047 := @1039 @761 @1045 -@1049 := @1039 @746 @1047 -@1051 := @1039 @649 @1049 -@1053 := @1039 @636 @1051 -@1055 := @1039 @507 @1053 -@1057 := @1039 @492 @1055 -@1059 := @1039 @29 @1057 -@1060 := @6 @108 -@1061 := 9 -@1064 := Prod.mk.{0, 0} @3 @108 -@1065 := @1064 @1061 -@1066 := @1065 @1032 -@1068 := @1064 8 -@1069 := @1068 @904 -@1071 := @1064 7 -@1072 := @1071 @889 -@1074 := @1064 6 -@1075 := @1074 @761 -@1077 := @1064 5 -@1078 := @1077 @746 -@1080 := @1064 4 -@1081 := @1080 @649 -@1083 := @1064 3 -@1084 := @1083 @636 -@1086 := @1064 2 -@1087 := @1086 @507 -@1089 := @1064 1 -@1090 := @1089 @492 -@1092 := @1064 0 -@1093 := @1092 @29 -@1094 := @1036 @1060 -@1095 := @1037 @1060 -@1097 := @1095 @1093 @1094 -@1099 := @1095 @1090 @1097 -@1101 := @1095 @1087 @1099 -@1103 := @1095 @1084 @1101 -@1105 := @1095 @1081 @1103 -@1107 := @1095 @1078 @1105 -@1109 := @1095 @1075 @1107 -@1111 := @1095 @1072 @1109 -@1113 := @1095 @1069 @1111 -@1115 := @1095 @1066 @1113 -@1116 := Bool.false -@1117 := LexLeanTarget.TargetSyntax.Function -@1118 := LexLeanTarget.TargetSyntax.Program.functions -@1119 := @1118 @0 -@1120 := 13 -@1121 := @1036 @3 -@1122 := @1036 @110 -@1123 := LexLeanTarget.TargetSyntax.Ty.unit -@1124 := LexLeanTarget.TargetSyntax.Value.unit -@1127 := LexLeanTarget.TargetSyntax.Expr.value @1123 @1124 -@1132 := LexLeanTarget.TargetSyntax.Function.mk @1121 @1122 @1123 @1127 -@1137 := List.getD.{0} @1117 @1119 @1120 @1132 -@1141 := fun (__e_n : @3) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.RustStd.root @40 @1120 -@1142 := LexLeanPreservation.Rust.WTL -@1150 := {p : @41} -> {c : @42} -> {A : @43} -> @1142 @47 @49 @40 @1038 @1122 -@1152 := LexLeanPreservation.Rust.wtl_nil @0 -@1153 := @1142 @0 -@1159 := {c : @42} -> {A : @43} -> @1153 @49 @40 @1038 @1122 -@1160 := @1152 @1 -@1161 := @1153 @1 -@1165 := {A : @43} -> @1161 @40 @1038 @1122 -@1166 := @1160 @2 -@1167 := @1161 @2 -@1168 := @1167 @1038 -@1169 := @1168 @1122 -@1170 := @11 @108 -@1171 := @11 @110 -@1173 := @398 @45 @47 -@1178 := @1142 @116 @130 @111 @47 @49 -@1181 := @1142 @114 @116 @130 -@1183 := @1039 @111 @45 -@1184 := @1181 @1183 -@1185 := @1037 @110 -@1187 := @1185 @118 @47 -@1197 := {p : @41} -> - {c : @42} -> - {A : @43} -> - {v : @108} -> - {t : @110} -> {vs : @1170} -> {ts : @1171} -> (h : @1173) -> (hs : @1178) -> @1184 @1187 -@1199 := LexLeanPreservation.Rust.wtl_cons @0 -@1217 := {c : @42} -> - {A : @43} -> - {v : @108} -> - {t : @110} -> - {vs : @1170} -> - {ts : @1171} -> - (h : @424 @45 @47) -> (hs : @1153 @130 @111 @47 @49) -> @1153 @116 @130 @1183 @1187 -@1218 := @1199 @1 -@1233 := {A : @43} -> - {v : @108} -> - {t : @110} -> - {vs : @1170} -> - {ts : @1171} -> (h : @440 @45 @47) -> (hs : @1161 @111 @47 @49) -> @1161 @130 @1183 @1187 -@1234 := @1218 @2 -@1236 := @76 @45 @47 -@1238 := @1167 @47 @49 -@1246 := {v : @108} -> - {t : @110} -> {vs : @1170} -> {ts : @1171} -> (h : @1236) -> (hs : @1238) -> @1167 @1183 @1187 -@1247 := @1234 @1032 -@1248 := @897 @118 -@1250 := @76 @1248 @47 -@1251 := @897 @130 -@1252 := @1039 @1251 -@1260 := {t : @110} -> - {vs : @1170} -> {ts : @1171} -> (h : @1250) -> (hs : @1238) -> @1167 (@1252 @45) @1187 -@1261 := @1247 @906 -@1262 := @897 @45 -@1264 := @76 @1262 @906 -@1265 := @897 @111 -@1266 := @1039 @1265 -@1268 := @1167 (@1266 @45) -@1269 := @1185 @906 -@1270 := @1269 @47 -@1275 := {vs : @1170} -> {ts : @1171} -> (h : @1264) -> (hs : @1238) -> @1268 @1270 -@1276 := @1261 @1038 -@1277 := @897 @47 -@1279 := @76 @1277 @906 -@1280 := @1168 @49 -@1282 := @1039 @1248 @1038 -@1287 := {ts : @1171} -> (h : @1279) -> (hs : @1280) -> @1167 @1282 @1270 -@1288 := @1276 @1122 -@1290 := @1039 @1262 @1038 -@1291 := @1167 @1290 -@1292 := @1269 @1122 -@1295 := (h : @1035) -> (hs : @1169) -> @1291 @1292 -@1296 := @1288 @1033 -@1298 := @1039 @1277 @1038 -@1300 := @1167 @1298 @1292 -@1301 := (hs : @1169) -> @1300 -@1302 := @1296 @1166 -@1304 := @1167 @1041 @1292 -@1305 := @1234 @904 -@1306 := @903 @111 -@1308 := @76 @1306 @47 -@1309 := @903 @116 -@1310 := @1039 @1309 -@1318 := {t : @110} -> - {vs : @1170} -> {ts : @1171} -> (h : @1308) -> (hs : @1238) -> @1167 (@1310 @45) @1187 -@1319 := @1305 @909 -@1320 := @903 @118 -@1322 := @76 @1320 @909 -@1323 := @903 @130 -@1324 := @1039 @1323 -@1326 := @1167 (@1324 @45) -@1327 := @1185 @909 -@1328 := @1327 @47 -@1333 := {vs : @1170} -> {ts : @1171} -> (h : @1322) -> (hs : @1238) -> @1326 @1328 -@1334 := @1319 @1041 -@1335 := @903 @45 -@1337 := @76 @1335 @909 -@1338 := @1291 @49 -@1340 := @1039 @1306 @1282 -@1345 := {ts : @1171} -> (h : @1337) -> (hs : @1338) -> @1167 @1340 @1328 -@1346 := @1334 @1292 -@1348 := @1039 @1320 @1290 -@1349 := @1167 @1348 -@1350 := @1327 @1292 -@1353 := (h : @1031) -> (hs : @1300) -> @1349 @1350 -@1354 := @1346 @1029 -@1356 := @1039 @1335 @1298 -@1358 := @1167 @1356 @1350 -@1359 := (hs : @1304) -> @1358 -@1360 := @1354 @1302 -@1362 := @1167 @1043 @1350 -@1363 := @1234 @889 -@1364 := @754 @130 -@1366 := @76 @1364 @47 -@1367 := @754 @114 -@1368 := @1039 @1367 -@1376 := {t : @110} -> - {vs : @1170} -> {ts : @1171} -> (h : @1366) -> (hs : @1238) -> @1167 (@1368 @45) @1187 -@1377 := @1363 @762 -@1378 := @754 @111 -@1380 := @76 @1378 @762 -@1381 := @754 @116 -@1382 := @1039 @1381 -@1384 := @1167 (@1382 @45) -@1385 := @1185 @762 -@1386 := @1385 @47 -@1391 := {vs : @1170} -> {ts : @1171} -> (h : @1380) -> (hs : @1238) -> @1384 @1386 -@1392 := @1377 @1043 -@1393 := @754 @118 -@1395 := @76 @1393 @762 -@1396 := @1349 @49 -@1398 := @1039 @1364 @1340 -@1403 := {ts : @1171} -> (h : @1395) -> (hs : @1396) -> @1167 @1398 @1386 -@1404 := @1392 @1350 -@1406 := @1039 @1378 @1348 -@1407 := @1167 @1406 -@1408 := @1385 @1350 -@1411 := (h : @892) -> (hs : @1358) -> @1407 @1408 -@1412 := @1404 @890 -@1414 := @1039 @1393 @1356 -@1416 := @1167 @1414 @1408 -@1417 := (hs : @1362) -> @1416 -@1418 := @1412 @1360 -@1420 := @1167 @1045 @1408 -@1421 := @1234 @761 -@1422 := @760 @116 -@1424 := @76 @1422 @47 -@1425 := @760 @112 -@1426 := @1039 @1425 -@1434 := {t : @110} -> - {vs : @1170} -> {ts : @1171} -> (h : @1424) -> (hs : @1238) -> @1167 (@1426 @45) @1187 -@1435 := @1421 @765 -@1436 := @760 @130 -@1438 := @76 @1436 @765 -@1439 := @760 @114 -@1440 := @1039 @1439 -@1442 := @1167 (@1440 @45) -@1443 := @1185 @765 -@1444 := @1443 @47 -@1449 := {vs : @1170} -> {ts : @1171} -> (h : @1438) -> (hs : @1238) -> @1442 @1444 -@1450 := @1435 @1045 -@1451 := @760 @111 -@1453 := @76 @1451 @765 -@1454 := @1407 @49 -@1456 := @1039 @1422 @1398 -@1461 := {ts : @1171} -> (h : @1453) -> (hs : @1454) -> @1167 @1456 @1444 -@1462 := @1450 @1408 -@1464 := @1039 @1436 @1406 -@1465 := @1167 @1464 -@1466 := @1443 @1408 -@1469 := (h : @888) -> (hs : @1416) -> @1465 @1466 -@1470 := @1462 @886 -@1472 := @1039 @1451 @1414 -@1474 := @1167 @1472 @1466 -@1475 := (hs : @1420) -> @1474 -@1476 := @1470 @1418 -@1478 := @1167 @1047 @1466 -@1479 := @1234 @746 -@1480 := @21 @114 -@1482 := @76 @1480 @47 -@1483 := @21 @13 -@1484 := @1039 @1483 -@1492 := {t : @110} -> - {vs : @1170} -> {ts : @1171} -> (h : @1482) -> (hs : @1238) -> @1167 (@1484 @45) @1187 -@1493 := @1479 @35 -@1494 := @21 @116 -@1496 := @76 @1494 @35 -@1497 := @21 @112 -@1498 := @1039 @1497 -@1500 := @1167 (@1498 @45) -@1501 := @1185 @35 -@1502 := @1501 @47 -@1507 := {vs : @1170} -> {ts : @1171} -> (h : @1496) -> (hs : @1238) -> @1500 @1502 -@1508 := @1493 @1047 -@1509 := @21 @130 -@1511 := @76 @1509 @35 -@1512 := @1465 @49 -@1514 := @1039 @1480 @1456 -@1519 := {ts : @1171} -> (h : @1511) -> (hs : @1512) -> @1167 @1514 @1502 -@1520 := @1508 @1466 -@1522 := @1039 @1494 @1464 -@1523 := @1167 @1522 -@1524 := @1501 @1466 -@1527 := (h : @749) -> (hs : @1474) -> @1523 @1524 -@1528 := @1520 @747 -@1530 := @1039 @1509 @1472 -@1532 := @1167 @1530 @1524 -@1533 := (hs : @1478) -> @1532 -@1534 := @1528 @1476 -@1536 := @1167 @1049 @1524 -@1537 := @1234 @649 -@1538 := @648 @112 -@1540 := @76 @1538 @47 -@1541 := @648 @132 -@1542 := @1039 @1541 -@1550 := {t : @110} -> - {vs : @1170} -> {ts : @1171} -> (h : @1540) -> (hs : @1238) -> @1167 (@1542 @45) @1187 -@1551 := @1537 @652 -@1552 := @648 @114 -@1554 := @76 @1552 @652 -@1555 := @648 @13 -@1556 := @1039 @1555 -@1558 := @1167 (@1556 @45) -@1559 := @1185 @652 -@1560 := @1559 @47 -@1565 := {vs : @1170} -> {ts : @1171} -> (h : @1554) -> (hs : @1238) -> @1558 @1560 -@1566 := @1551 @1049 -@1567 := @648 @116 -@1569 := @76 @1567 @652 -@1570 := @1523 @49 -@1572 := @1039 @1538 @1514 -@1577 := {ts : @1171} -> (h : @1569) -> (hs : @1570) -> @1167 @1572 @1560 -@1578 := @1566 @1524 -@1580 := @1039 @1552 @1522 -@1581 := @1167 @1580 -@1582 := @1559 @1524 -@1585 := (h : @745) -> (hs : @1532) -> @1581 @1582 -@1586 := @1578 @743 -@1588 := @1039 @1567 @1530 -@1590 := @1167 @1588 @1582 -@1591 := (hs : @1536) -> @1590 -@1592 := @1586 @1534 -@1594 := @1167 @1051 @1582 -@1595 := @1234 @636 -@1596 := @500 @13 -@1598 := @76 @1596 @47 -@1599 := #12 -@1600 := @500 @1599 -@1601 := @1039 @1600 -@1609 := {t : @110} -> - {vs : @1170} -> {ts : @1171} -> (h : @1598) -> (hs : @1238) -> @1167 (@1601 @45) @1187 -@1610 := @1595 @510 -@1611 := @500 @112 -@1613 := @76 @1611 @510 -@1614 := @500 @132 -@1615 := @1039 @1614 -@1617 := @1167 (@1615 @45) -@1618 := @1185 @510 -@1619 := @1618 @47 -@1624 := {vs : @1170} -> {ts : @1171} -> (h : @1613) -> (hs : @1238) -> @1617 @1619 -@1625 := @1610 @1051 -@1626 := @500 @114 -@1628 := @76 @1626 @510 -@1629 := @1581 @49 -@1631 := @1039 @1596 @1572 -@1636 := {ts : @1171} -> (h : @1628) -> (hs : @1629) -> @1167 @1631 @1619 -@1637 := @1625 @1582 -@1639 := @1039 @1611 @1580 -@1640 := @1167 @1639 -@1641 := @1618 @1582 -@1644 := (h : @639) -> (hs : @1590) -> @1640 @1641 -@1645 := @1637 @637 -@1647 := @1039 @1626 @1588 -@1649 := @1167 @1647 @1641 -@1650 := (hs : @1594) -> @1649 -@1651 := @1645 @1592 -@1653 := @1167 @1053 @1641 -@1654 := @1234 @507 -@1655 := @506 @132 -@1657 := @76 @1655 @47 -@1658 := #13 -@1659 := @506 @1658 -@1660 := @1039 @1659 -@1668 := {t : @110} -> - {vs : @1170} -> {ts : @1171} -> (h : @1657) -> (hs : @1238) -> @1167 (@1660 @45) @1187 -@1669 := @1654 @513 -@1670 := @506 @13 -@1672 := @76 @1670 @513 -@1673 := @506 @1599 -@1674 := @1039 @1673 -@1676 := @1167 (@1674 @45) -@1677 := @1185 @513 -@1678 := @1677 @47 -@1683 := {vs : @1170} -> {ts : @1171} -> (h : @1672) -> (hs : @1238) -> @1676 @1678 -@1684 := @1669 @1053 -@1685 := @506 @112 -@1687 := @76 @1685 @513 -@1688 := @1640 @49 -@1690 := @1039 @1655 @1631 -@1695 := {ts : @1171} -> (h : @1687) -> (hs : @1688) -> @1167 @1690 @1678 -@1696 := @1684 @1641 -@1698 := @1039 @1670 @1639 -@1699 := @1167 @1698 -@1700 := @1677 @1641 -@1703 := (h : @635) -> (hs : @1649) -> @1699 @1700 -@1704 := @1696 @633 -@1706 := @1039 @1685 @1647 -@1708 := @1167 @1706 @1700 -@1709 := (hs : @1653) -> @1708 -@1710 := @1704 @1651 -@1712 := @1167 @1055 @1700 -@1713 := @1234 @492 -@1714 := @20 @1599 -@1716 := @76 @1714 @47 -@1717 := #14 -@1718 := @20 @1717 -@1719 := @1039 @1718 -@1727 := {t : @110} -> - {vs : @1170} -> {ts : @1171} -> (h : @1716) -> (hs : @1238) -> @1167 (@1719 @45) @1187 -@1728 := @1713 @34 -@1729 := @20 @132 -@1731 := @76 @1729 @34 -@1732 := @20 @1658 -@1733 := @1039 @1732 -@1735 := @1167 (@1733 @45) -@1736 := @1185 @34 -@1737 := @1736 @47 -@1742 := {vs : @1170} -> {ts : @1171} -> (h : @1731) -> (hs : @1238) -> @1735 @1737 -@1743 := @1728 @1055 -@1744 := @20 @13 -@1746 := @76 @1744 @34 -@1747 := @1699 @49 -@1749 := @1039 @1714 @1690 -@1754 := {ts : @1171} -> (h : @1746) -> (hs : @1747) -> @1167 @1749 @1737 -@1755 := @1743 @1700 -@1757 := @1039 @1729 @1698 -@1758 := @1167 @1757 -@1759 := @1736 @1700 -@1762 := (h : @495) -> (hs : @1708) -> @1758 @1759 -@1763 := @1755 @493 -@1765 := @1039 @1744 @1706 -@1767 := @1167 @1765 @1759 -@1768 := (hs : @1712) -> @1767 -@1769 := @1763 @1710 -@1771 := @1167 @1057 @1759 -@1772 := @1234 @29 -@1773 := @28 @1658 -@1775 := @76 @1773 @47 -@1776 := #15 -@1777 := @28 @1776 -@1778 := @1039 @1777 -@1786 := {t : @110} -> - {vs : @1170} -> {ts : @1171} -> (h : @1775) -> (hs : @1238) -> @1167 (@1778 @45) @1187 -@1787 := @1772 @39 -@1788 := @28 @1599 -@1790 := @76 @1788 @39 -@1791 := @28 @1717 -@1792 := @1039 @1791 -@1794 := @1167 (@1792 @45) -@1795 := @1185 @39 -@1796 := @1795 @47 -@1801 := {vs : @1170} -> {ts : @1171} -> (h : @1790) -> (hs : @1238) -> @1794 @1796 -@1802 := @1787 @1057 -@1803 := @28 @132 -@1805 := @76 @1803 @39 -@1806 := @1758 @49 -@1808 := @1039 @1773 @1749 -@1809 := @1167 @1808 -@1813 := {ts : @1171} -> (h : @1805) -> (hs : @1806) -> @1809 @1796 -@1814 := @1802 @1759 -@1816 := @1039 @1788 @1757 -@1817 := @1167 @1816 -@1818 := @1795 @1759 -@1821 := (h : @491) -> (hs : @1767) -> @1817 @1818 -@1822 := @1814 @489 -@1824 := @1039 @1803 @1765 -@1825 := @1167 @1824 -@1827 := (hs : @1771) -> @1825 @1818 -@1828 := @1822 @1769 -@1829 := @1167 @1059 -@1830 := @1829 @1818 -@1831 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.denoteEntry -@1841 := @1831 @13 @112 @114 @116 @130 @111 @118 @45 @47 @49 -@1842 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.entryFits -@1852 := @1842 @13 @112 @114 @116 @130 @111 @118 @45 @47 @49 -@1863 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.entryValue - @13 - @112 - @114 - @116 - @130 - @111 - @118 - @45 - @47 - @49 -@1874 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.entry - @13 - @112 - @114 - @116 - @130 - @111 - @118 - @45 - @47 - @49 -@1875 := Ne.{1} -@1876 := LexLeanPreservation.Obs -@1877 := @1875 @1876 -@1878 := LexLeanPreservation.Rel -@1881 := @1877 (@1878 @49 @40) -@1882 := LexLeanPreservation.Obs.stuck -@1885 := (f : @8) -> (v : @108) -> @1881 @1882 -@1887 := LexLeanPreservation.Rust.rel_ne_stuck @1852 -@1902 := (v : @108) -> - @1877 (@1878 (@1842 @132 @13 @112 @114 @116 @130 @111 @118 @45 @47) @40) @1882 -@1903 := @1887 @1863 -@1907 := @1877 (@1878 @1852 @1863) @1882 -@1908 := @11 @1060 -@1909 := LexLeanPreservation.Rust.FunSem -@1915 := (n : @3) -> @1909 @112 @114 @116 @40 @130 -@1916 := Eq.{1} -@1917 := Option.{0} -@1918 := @1917 @1117 -@1919 := @1916 @1918 -@1926 := LexLeanRuntime.index (@11 @1117) @1117 (LexLeanRuntime.instIndexableList @1117) -@1930 := @1919 (@1926 (@1118 @112) @130) -@1931 := Option.some.{0} -@1932 := @1931 @1117 -@1933 := @1932 @111 -@1934 := @1930 @1933 -@1938 := @1142 @13 @112 @114 @111 -@1939 := LexLeanTarget.TargetSyntax.Function.types -@1940 := @1939 @130 -@1941 := @1938 @1940 -@1942 := @1917 @1908 -@1943 := @1916 @1942 -@1944 := LexLeanTarget.TargetSemantics.bindAll -@1945 := LexLeanTarget.TargetSyntax.Function.parameters -@1950 := @1943 (@1944 (@1945 @116) @130 @1094) -@1951 := @1931 @1908 -@1952 := @1951 @111 -@1953 := @1950 @1952 -@1954 := @1917 @8 -@1955 := @1916 @1954 -@1956 := LexLeanPreservation.Rust.fnFallible -@1959 := @1955 (@1956 @132 @112) -@1960 := @1931 @8 -@1961 := @1960 @111 -@1962 := @1959 @1961 -@1963 := LexLeanPreservation.RunConv -@1967 := @1963 @1658 @13 @114 @111 -@1969 := @1877 @130 @1882 -@1970 := Exists.{1} -@1971 := LexLeanPreservation.Rust.ROut -@1972 := @1970 @1971 -@1973 := And -@1974 := LexLeanPreservation.Rust.RealizesFn -@1978 := @1973 (@1974 @112 @114 @40) -@1979 := LexLeanPreservation.Rust.RCI -@1980 := @1979 @1776 -@1981 := LexLeanPreservation.Rust.fnIdent -@1982 := @1981 @1658 -@1989 := (hne : @1969) -> @1972 (fun (ro : @1971) => @1978 (@1980 @1982 @132 @40)) -@2004 := {p : @41} -> - {c : @42} -> - {A : @43} -> - {f : @3} -> - {fn : @1117} -> - {args : @1170} -> - {env : @1908} -> - {F : @8} -> - {o : @1876} -> - (hB : @1915) -> - (hfn : @1934) -> (hwt : @1941) -> (hbind : @1953) -> (hF : @1962) -> (hA : @1967) -> @1989 -@2006 := LexLeanPreservation.Rust.compose @0 -@2007 := @1909 @0 -@2012 := (n : @3) -> @2007 @114 @116 @40 @130 -@2013 := @1926 @1119 -@2016 := @1919 (@2013 @130) @1933 -@2020 := @1153 @112 @114 @111 @1940 -@2021 := @1963 @0 -@2024 := @2021 @13 @114 @111 -@2038 := {c : @42} -> - {A : @43} -> - {f : @3} -> - {fn : @1117} -> - {args : @1170} -> - {env : @1908} -> - {F : @8} -> - {o : @1876} -> - (hB : @2012) -> - (hfn : @2016) -> (hwt : @2020) -> (hbind : @1953) -> (hF : @1962) -> (hA : @2024) -> @1989 -@2039 := @2006 @1 -@2040 := @2007 @1 -@2044 := (n : @3) -> @2040 @116 @40 @130 -@2047 := @1161 @114 @111 @1940 -@2048 := @1956 @1 -@2051 := @1955 (@2048 @112) @1961 -@2052 := @1979 @1 -@2062 := (hbind : @1953) -> - (hF : @2051) -> - (hA : @2024) -> (hne : @1969) -> @1972 (fun (ro : @1971) => @1978 (@2052 @1982 @132 @40)) -@2072 := {A : @43} -> - {f : @3} -> - {fn : @1117} -> - {args : @1170} -> - {env : @1908} -> - {F : @8} -> {o : @1876} -> (hB : @2044) -> (hfn : @2016) -> (hwt : @2047) -> @2062 -@2073 := @2039 @2 -@2075 := @2040 @2 @40 -@2077 := (n : @3) -> @2075 @130 -@2078 := @1167 @111 -@2079 := @2078 @1940 -@2088 := {f : @3} -> - {fn : @1117} -> - {args : @1170} -> - {env : @1908} -> - {F : @8} -> {o : @1876} -> (hB : @2077) -> (hfn : @2016) -> (hwt : @2079) -> @2062 -@2089 := @2073 @1120 -@2091 := (n : @3) -> @2075 @1120 -@2092 := @2013 @1120 -@2093 := @1919 @2092 -@2094 := @2093 @1933 -@2095 := @2048 @1120 -@2096 := @1955 @2095 -@2097 := @2096 @1961 -@2098 := @2021 @1120 -@2100 := @2098 @114 @111 -@2102 := @2052 (@1981 @1120) -@2110 := (hF : @2097) -> - (hA : @2100) -> (hne : @1969) -> @1972 (fun (ro : @1971) => @1978 (@2102 @132 @40)) -@2119 := {fn : @1117} -> - {args : @1170} -> - {env : @1908} -> - {F : @8} -> - {o : @1876} -> (hB : @2091) -> (hfn : @2094) -> (hwt : @2079) -> (hbind : @1953) -> @2110 -@2120 := @2089 @1137 -@2122 := @2093 (@1932 @1137) -@2123 := @1939 @1137 -@2124 := @2078 @2123 -@2126 := @1944 (@1945 @1137) -@2138 := {args : @1170} -> - {env : @1908} -> - {F : @8} -> - {o : @1876} -> - (hB : @2091) -> - (hfn : @2122) -> (hwt : @2124) -> (hbind : @1943 (@2126 @130 @1094) @1952) -> @2110 -@2139 := @2120 @1059 -@2149 := @1778 (@1719 (@1660 (@1601 (@1542 (@1484 (@1426 (@1368 (@1310 (@1252 @1038))))))))) -@2151 := @1167 @2149 @2123 -@2152 := #16 -@2182 := @1039 - (@28 @2152) - (@1039 - (@20 @1776) - (@1039 - (@506 @1717) - (@1039 - (@500 @1658) - (@1039 - (@648 @1599) - (@1039 - (@21 @132) - (@1039 - (@760 @13) - (@1039 (@754 @112) (@1039 (@903 @114) (@1039 (@897 @116) @1038))))))))) -@2186 := @1943 (@2126 @2182 @1094) @1952 -@2187 := #18 -@2189 := @1039 (@28 @2187) -@2190 := #17 -@2218 := @2189 - (@1039 - (@20 @2190) - (@1039 - (@506 @2152) - (@1039 - (@500 @1776) - (@1039 - (@648 @1717) - (@1039 - (@21 @1658) - (@1039 - (@760 @1599) - (@1039 (@754 @132) (@1039 (@903 @13) (@1039 (@897 @112) @1038))))))))) -@2220 := @2098 @2218 @111 -@2223 := @1039 (@28 #21) -@2224 := #20 -@2226 := @1039 (@20 @2224) -@2227 := #19 -@2268 := {env : @1908} -> - {F : @8} -> - {o : @1876} -> - (hB : @2091) -> - (hfn : @2122) -> - (hwt : @2151) -> - (hbind : @2186) -> - (hF : @2097) -> - (hA : @2220) -> - (hne : @1969) -> - @1972 - (fun (ro : @1971) => - @1978 - (@2102 - (@2223 - (@2226 - (@1039 - (@506 @2227) - (@1039 - (@500 @2187) - (@1039 - (@648 @2190) - (@1039 - (@21 @2152) - (@1039 - (@760 @1776) - (@1039 (@754 @1717) (@1039 (@903 @1658) (@1039 (@897 @1599) @1038)))))))))) - @40)) -@2269 := @2139 @1115 -@2279 := @1792 (@1733 (@1674 (@1615 (@1556 (@1498 (@1440 (@1382 (@1324 (@1266 @1038))))))))) -@2281 := @1167 @2279 @2123 -@2316 := @1943 - (@2126 @2149 @1094) - (@1951 - (@1095 - (@1065 @1251) - (@1095 - (@1068 @1309) - (@1095 - (@1071 @1367) - (@1095 - (@1074 @1425) - (@1095 - (@1077 @1483) - (@1095 - (@1080 @1541) - (@1095 - (@1083 @1600) - (@1095 (@1086 @1659) (@1095 (@1089 @1718) (@1095 (@1092 @1777) @1094))))))))))) -@2346 := @1039 - (@28 @2190) - (@1039 - (@20 @2152) - (@1039 - (@506 @1776) - (@1039 - (@500 @1717) - (@1039 - (@648 @1658) - (@1039 - (@21 @1599) - (@1039 - (@760 @132) - (@1039 (@754 @13) (@1039 (@903 @112) (@1039 (@897 @114) @1038))))))))) -@2392 := {F : @8} -> - {o : @1876} -> - (hB : @2091) -> - (hfn : @2122) -> - (hwt : @2281) -> - (hbind : @2316) -> - (hF : @2097) -> - (hA : @2098 @2346 @111) -> - (hne : @1969) -> - @1972 - (fun (ro : @1971) => - @1978 - (@2102 - (@1039 - (@28 @2224) - (@1039 - (@20 @2227) - (@1039 - (@506 @2187) - (@1039 - (@500 @2190) - (@1039 - (@648 @2152) - (@1039 - (@21 @1776) - (@1039 - (@760 @1717) - (@1039 (@754 @1658) (@1039 (@903 @1599) (@1039 (@897 @132) @1038)))))))))) - @40)) -@2393 := @2269 @1116 -@2394 := @1809 @2123 -@2429 := @1943 - (@2126 @2279 @1094) - (@1951 - (@1095 - (@1065 @1265) - (@1095 - (@1068 @1323) - (@1095 - (@1071 @1381) - (@1095 - (@1074 @1439) - (@1095 - (@1077 @1497) - (@1095 - (@1080 @1555) - (@1095 - (@1083 @1614) - (@1095 (@1086 @1673) (@1095 (@1089 @1732) (@1095 (@1092 @1791) @1094))))))))))) -@2431 := @2096 (@1960 @1116) -@2433 := @2098 @2182 @111 -@2434 := @1974 @1116 -@2480 := {o : @1876} -> - (hB : @2091) -> - (hfn : @2122) -> - (hwt : @2394) -> - (hbind : @2429) -> - (hF : @2431) -> - (hA : @2433) -> - (hne : @1969) -> - @1972 - (fun (ro : @1971) => - @1973 - (@2434 @114 @40) - (@2102 - (@1039 - (@28 @2227) - (@1039 - (@20 @2187) - (@1039 - (@506 @2190) - (@1039 - (@500 @2152) - (@1039 - (@648 @1776) - (@1039 - (@21 @1717) - (@1039 - (@760 @1658) - (@1039 (@754 @1599) (@1039 (@903 @132) (@1039 (@897 @13) @1038)))))))))) - @40)) -@2481 := @2393 @1841 -@2482 := @1817 @2123 -@2517 := @1943 - (@2126 @1808 @1094) - (@1951 - (@1095 - (@1065 @1248) - (@1095 - (@1068 @1306) - (@1095 - (@1071 @1364) - (@1095 - (@1074 @1422) - (@1095 - (@1077 @1480) - (@1095 - (@1080 @1538) - (@1095 - (@1083 @1596) - (@1095 (@1086 @1655) (@1095 (@1089 @1714) (@1095 (@1092 @1773) @1094))))))))))) -@2518 := @2098 @2149 -@2528 := @1831 @1776 @1717 @1658 @1599 @132 @13 @112 @114 @116 @130 -@2529 := @2518 @2528 -@2539 := @1831 @2152 @1776 @1717 @1658 @1599 @132 @13 @112 @114 @116 -@2566 := (hB : @2091) -> - (hfn : @2122) -> - (hwt : @2482) -> - (hbind : @2517) -> - (hF : @2431) -> - (hA : @2529) -> - (hne : @1877 @2539 @1882) -> - @1972 - (fun (ro : @1971) => - @1973 - (@2434 (@1831 @2187 @2190 @2152 @1776 @1717 @1658 @1599 @132 @13 @112) @40) - (@2102 @2218 @40)) -@2567 := @2481 @1141 -@2568 := @1825 @2123 -@2603 := @1943 - (@2126 @1816 @1094) - (@1951 - (@1095 - (@1065 @1262) - (@1095 - (@1068 @1320) - (@1095 - (@1071 @1378) - (@1095 - (@1074 @1436) - (@1095 - (@1077 @1494) - (@1095 - (@1080 @1552) - (@1095 - (@1083 @1611) - (@1095 (@1086 @1670) (@1095 (@1089 @1729) (@1095 (@1092 @1788) @1094))))))))))) -@2604 := @2098 @2279 -@2614 := @1831 @1717 @1658 @1599 @132 @13 @112 @114 @116 @130 @111 -@2641 := (hfn : @2122) -> - (hwt : @2568) -> - (hbind : @2603) -> - (hF : @2431) -> - (hA : @2604 @2614) -> - (hne : @1877 @2528 @1882) -> - @1972 - (fun (ro : @1971) => - @1973 - (@2434 (@1831 @2190 @2152 @1776 @1717 @1658 @1599 @132 @13 @112 @114) @40) - (@2102 @2346 @40)) -@2642 := Eq.refl.{1} -@2645 := @2567 (@2642 @1918 @2092) -@2646 := @1829 @2123 -@2681 := @1943 - (@2126 @1824 @1094) - (@1951 - (@1095 - (@1065 @1277) - (@1095 - (@1068 @1335) - (@1095 - (@1071 @1393) - (@1095 - (@1074 @1451) - (@1095 - (@1077 @1509) - (@1095 - (@1080 @1567) - (@1095 - (@1083 @1626) - (@1095 (@1086 @1685) (@1095 (@1089 @1744) (@1095 (@1092 @1803) @1094))))))))))) -@2682 := @2098 @1808 -@2692 := @1831 @1658 @1599 @132 @13 @112 @114 @116 @130 @111 @118 -@2708 := (hwt : @2646) -> - (hbind : @2681) -> - (hF : @2431) -> - (hA : @2682 @2692) -> - (hne : @1877 @2614 @1882) -> @1972 (fun (ro : @1971) => @1973 (@2434 @2539 @40) (@2102 @2182 @40)) -@2709 := @2645 @1828 -@2711 := @2126 @1059 @1094 -@2714 := @1943 @2711 (@1951 @1115) -@2715 := @2098 @1816 -@2725 := @1831 @1599 @132 @13 @112 @114 @116 @130 @111 @118 @45 -@2740 := (hbind : @2714) -> - (hF : @2431) -> - (hA : @2715 @2725) -> - (hne : @1877 @2692 @1882) -> @1972 (fun (ro : @1971) => @1973 (@2434 @2528 @40) (@2102 @2149 @40)) -@2743 := @2709 (@2642 @1942 @2711) -@2744 := @2098 @1824 -@2754 := @1831 @132 @13 @112 @114 @116 @130 @111 @118 @45 @47 -@2768 := (hF : @2431) -> - (hA : @2744 @2754) -> - (hne : @1877 @2725 @1882) -> @1972 (fun (ro : @1971) => @1973 (@2434 @2614 @40) (@2102 @2279 @40)) -@2771 := @2743 (@2642 @1954 @2095) -@2773 := @2098 @1059 @1841 -@2775 := @1877 @2754 @1882 -@2776 := @2434 @2692 -@2778 := @1973 (@2776 @40) -@2779 := @2102 @1808 -@2780 := @2779 @40 -@2785 := (hA : @2773) -> (hne : @2775) -> @1972 (fun (ro : @1971) => @2778 @2780) -@2786 := @2771 @1874 -@2788 := @1877 @1841 @1882 -@2789 := @2434 @2725 -@2791 := @1973 (@2789 @40) -@2792 := @2102 @1816 -@2797 := (hne : @2788) -> @1972 (fun (ro : @1971) => @2791 (@2792 @40)) -@2798 := @2786 @1903 -@2801 := @1973 (@2434 @2754 @40) -@2803 := @2102 @1824 @40 -@2804 := @2801 @2803 -@2806 := @1972 (fun (ro : @1971) => @2804) -@2807 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.accepts -@2817 := @2807 @13 @112 @114 @116 @130 @111 @118 @45 @47 @49 -@2818 := LexLeanPreservation.someObs -@2819 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.denote -@2830 := @2818 (@2819 @13 @112 @114 @116 @130 @111 @118 @45 @47 @49) -@2833 := LexLeanPreservation.Obs.value LexLeanTarget.TargetSyntax.Value.none -@2834 := Not -@2835 := @2834 @2817 -@2845 := @2807 @132 @13 @112 @114 @116 @130 @111 @118 @45 @47 -@2856 := @2818 (@2819 @132 @13 @112 @114 @116 @130 @111 @118 @45 @47) -@2857 := @2834 @2845 -@2871 := @2845 -> @2434 (@2818 (@2819 @1599 @132 @13 @112 @114 @116 @130 @111 @118 @45)) @49 -@2872 := @2434 @2833 -@2873 := @2872 @49 -@2874 := @2857 -> @2873 -@2876 := @1973 @2871 @2874 -@2880 := @1972 (fun (__e_ro : @1971) => @1973 @2803 @2876) -@2881 := fun (__e_ro : @1971) => @2804 -@2882 := @2789 @49 -@2883 := @2792 @49 -@2884 := And.left -@2885 := And.right -@2888 := @2884 @2882 @2883 @40 -@2891 := @2885 @2882 @2883 @40 -@2892 := @2434 @40 -@2894 := fun (__e_o : @1876) => @2892 @47 -@2895 := Eq.subst.{1} -@2905 := @2807 @1599 @132 @13 @112 @114 @116 @130 @111 @118 @45 -@2906 := @2834 @2905 -@2918 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.entry_accepts - @1658 - @1599 - @132 - @13 - @112 - @114 - @116 - @130 - @111 - @118 - @40 -@2929 := @2818 (@2819 @1658 @1599 @132 @13 @112 @114 @116 @130 @111 @118) -@2934 := @2884 (@2776 @47) (@2779 @47) @49 -@2936 := fun (__e_o : @1876) => @2892 @45 -@2939 := @2895 @1876 @2936 @2692 -@2943 := fun (__e_h : @2905) => @2939 @2929 @2918 @2934 -@2955 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.entry_refuses - @1658 - @1599 - @132 - @13 - @112 - @114 - @116 - @130 - @111 - @118 - @40 -@2959 := fun (__e_h : @2906) => @2939 @2833 @2955 @2934 -@2960 := And.intro -@2963 := @2905 -> @2434 @2929 @47 -@2965 := @2906 -> @2872 @47 -@2967 := @1973 @2963 @2965 -@2971 := @2960 @2963 @2965 @2943 @2959 -@2975 := @2960 @2883 @2967 @2891 @2971 -@2976 := Exists.intro.{1} -@2977 := @1973 @2780 -@2987 := @2807 @1658 @1599 @132 @13 @112 @114 @116 @130 @111 @118 -@3007 := fun (__e_ro : @1971) => - @2977 - (@1973 - (@2987 -> @2434 (@2818 (@2819 @1717 @1658 @1599 @132 @13 @112 @114 @116 @130 @111)) @49) - (@2834 @2987 -> @2873)) -@3011 := @2976 @1971 @3007 @49 @2975 -@3013 := @1973 @2882 @2883 -@3015 := fun (__e_ro : @1971) => fun (__e_hand : @2804) => @3011 -@3021 := Exists.elim.{1} @1971 @2881 @2880 @2798 @3015 -@3022 := LexLeanPreservation.Rust.RepresentableL -@3023 := @28 @112 -@3024 := @20 @114 -@3025 := @506 @116 -@3026 := @500 @130 -@3027 := @648 @111 -@3028 := @21 @118 -@3029 := @760 @45 -@3030 := @754 @47 -@3031 := @903 @49 -@3033 := @1039 @910 @1038 -@3035 := @1039 @3031 @3033 -@3037 := @1039 @3030 @3035 -@3039 := @1039 @3029 @3037 -@3041 := @1039 @3028 @3039 -@3043 := @1039 @3027 @3041 -@3045 := @1039 @3026 @3043 -@3047 := @1039 @3025 @3045 -@3049 := @1039 @3024 @3047 -@3052 := @3022 (@1039 @3023 @3049) -@3053 := (__e_hrep : @3052) -> @2880 -@3054 := fun (__e_hrep : @3052) => @3021 -@3055 := (w : @893) -> @3053 -@3056 := fun (w : @893) => @3054 -@3057 := (u : @896) -> @3055 -@3058 := fun (u : @896) => @3056 -@3059 := (e : @750) -> @3057 -@3060 := fun (e : @750) => @3058 -@3061 := (d : @753) -> @3059 -@3062 := fun (d : @753) => @3060 -@3063 := (c : @8) -> @3061 -@3064 := fun (c : @8) => @3062 -@3065 := (b : @642) -> @3063 -@3066 := fun (b : @642) => @3064 -@3067 := (j : @496) -> @3065 -@3068 := fun (j : @496) => @3066 -@3069 := (i : @499) -> @3067 -@3070 := fun (i : @499) => @3068 -@3071 := (k : @7) -> @3069 -@3072 := fun (k : @7) => @3070 -@3073 := (a : @12) -> @3071 -@3074 := fun (a : @12) => @3072 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R8/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R8/RustStd.lean deleted file mode 100644 index eeea6d86f..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R8/RustStd.lean +++ /dev/null @@ -1,137 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1, 2, 3, 4, 5, 6, 7, 8, 9], types := [(.list (.pair (.pair .nat .string) .bool)), (.pair .nat .string), (.list (.pair (.fixed .i8) .nat)), (.fixed .i8), (.list (.pair .bool .nat)), .bool, (.list (.pair .int .nat)), .int, (.list (.pair (.fixed .u64) .nat)), (.fixed .u64)], result := (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat))))), - body := (.build .pair (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat))))) [(.call 1 [(.var 0), (.var 1)]), (.build .pair (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))) [(.call 2 [(.var 2), (.var 3)]), (.build .pair (.pair (.option .nat) (.pair (.option .nat) (.option .nat))) [(.call 3 [(.var 4), (.var 5)]), (.build .pair (.pair (.option .nat) (.option .nat)) [(.call 4 [(.var 6), (.var 7)]), (.call 5 [(.var 8), (.var 9)])])])])]) }, - { parameters := [0, 1], types := [(.list (.pair (.pair .nat .string) .bool)), (.pair .nat .string)], result := (.option .bool), - body := (.«match» (.option .bool) (.var 0) [(.arm .nil [] (.build .none (.option .bool) [])), (.arm .cons [2, 3] (.«match» (.option .bool) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.build .none (.option .bool) [])), (.arm .eq [] (.build .some (.option .bool) [(.second (.var 2))])), (.arm .gt [] (.call 1 [(.var 3), (.var 1)]))]))]) }, - { parameters := [0, 1], types := [(.list (.pair (.fixed .i8) .nat)), (.fixed .i8)], result := (.option .nat), - body := (.«match» (.option .nat) (.var 0) [(.arm .nil [] (.build .none (.option .nat) [])), (.arm .cons [2, 3] (.«match» (.option .nat) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.build .none (.option .nat) [])), (.arm .eq [] (.build .some (.option .nat) [(.second (.var 2))])), (.arm .gt [] (.call 2 [(.var 3), (.var 1)]))]))]) }, - { parameters := [0, 1], types := [(.list (.pair .bool .nat)), .bool], result := (.option .nat), - body := (.«match» (.option .nat) (.var 0) [(.arm .nil [] (.build .none (.option .nat) [])), (.arm .cons [2, 3] (.«match» (.option .nat) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.build .none (.option .nat) [])), (.arm .eq [] (.build .some (.option .nat) [(.second (.var 2))])), (.arm .gt [] (.call 3 [(.var 3), (.var 1)]))]))]) }, - { parameters := [0, 1], types := [(.list (.pair .int .nat)), .int], result := (.option .nat), - body := (.«match» (.option .nat) (.var 0) [(.arm .nil [] (.build .none (.option .nat) [])), (.arm .cons [2, 3] (.«match» (.option .nat) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.build .none (.option .nat) [])), (.arm .eq [] (.build .some (.option .nat) [(.second (.var 2))])), (.arm .gt [] (.call 4 [(.var 3), (.var 1)]))]))]) }, - { parameters := [0, 1], types := [(.list (.pair (.fixed .u64) .nat)), (.fixed .u64)], result := (.option .nat), - body := (.«match» (.option .nat) (.var 0) [(.arm .nil [] (.build .none (.option .nat) [])), (.arm .cons [2, 3] (.«match» (.option .nat) (.prim .compare [(.var 1), (.first (.var 2))]) [(.arm .lt [] (.build .none (.option .nat) [])), (.arm .eq [] (.build .some (.option .nat) [(.second (.var 2))])), (.arm .gt [] (.call 5 [(.var 3), (.var 1)]))]))]) }, - { parameters := [0], types := [(.list (.pair (.pair .nat .string) .bool))], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 7 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 6 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, - { parameters := [0], types := [.bool], result := .bool, - body := (.build .true .bool []) }, - { parameters := [0], types := [(.list (.pair (.fixed .i8) .nat))], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 9 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 8 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, - { parameters := [0], types := [.nat], result := .bool, - body := (.build .true .bool []) }, - { parameters := [0], types := [(.list (.pair .bool .nat))], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 9 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 10 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, - { parameters := [0], types := [(.list (.pair .int .nat))], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 9 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 11 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, - { parameters := [0], types := [(.list (.pair (.fixed .u64) .nat))], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [1, 2] (.cond (.call 9 [(.second (.var 1))]) (.«match» .bool (.var 2) [(.arm .nil [] (.build .true .bool [])), (.arm .cons [3, 4] (.cond (.«match» .bool (.prim .compare [(.first (.var 1)), (.first (.var 3))]) [(.arm .lt [] (.build .true .bool [])), (.arm .eq [] (.build .false .bool [])), (.arm .gt [] (.build .false .bool []))]) (.call 12 [(.var 2)]) (.build .false .bool [])))]) (.build .false .bool [])))]) }, - { parameters := [0, 1, 2, 3, 4, 5, 6, 7, 8, 9], types := [(.list (.pair (.pair .nat .string) .bool)), (.pair .nat .string), (.list (.pair (.fixed .i8) .nat)), (.fixed .i8), (.list (.pair .bool .nat)), .bool, (.list (.pair .int .nat)), .int, (.list (.pair (.fixed .u64) .nat)), (.fixed .u64)], result := (.option (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))), - body := (.cond (.call 6 [(.var 0)]) (.cond (.call 8 [(.var 2)]) (.cond (.call 10 [(.var 4)]) (.cond (.call 11 [(.var 6)]) (.cond (.call 12 [(.var 8)]) (.build .some (.option (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [(.call 0 [(.var 0), (.var 1), (.var 2), (.var 3), (.var 4), (.var 5), (.var 6), (.var 7), (.var 8), (.var 9)])]) (.build .none (.option (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])) (.build .none (.option (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])) (.build .none (.option (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])) (.build .none (.option (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])) (.build .none (.option (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair (.pair .nat .str) .bool)) }, { pattern := (.bind (.generated .binding 1)), type := (.pair .nat .str) }, { pattern := (.bind (.generated .binding 2)), type := (.list (.pair (.fixed .i8) .nat)) }, { pattern := (.bind (.generated .binding 3)), type := (.fixed .i8) }, { pattern := (.bind (.generated .binding 4)), type := (.list (.pair .bool .nat)) }, { pattern := (.bind (.generated .binding 5)), type := .bool }, { pattern := (.bind (.generated .binding 6)), type := (.list (.pair .int .nat)) }, { pattern := (.bind (.generated .binding 7)), type := .int }, { pattern := (.bind (.generated .binding 8)), type := (.list (.pair (.fixed .u64) .nat)) }, { pattern := (.bind (.generated .binding 9)), type := (.fixed .u64) }] (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat))))) (.mk [] (.pair (.call (.function 1) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false) (.pair (.call (.function 2) [(.move (.generated .binding 2)), (.copy (.generated .binding 3))] false) (.pair (.call (.function 3) [(.move (.generated .binding 4)), (.copy (.generated .binding 5))] false) (.pair (.call (.function 4) [(.move (.generated .binding 6)), (.copy (.generated .binding 7))] false) (.call (.function 5) [(.move (.generated .binding 8)), (.copy (.generated .binding 9))] false))))))), - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair (.pair .nat .str) .bool)) }, { pattern := (.bind (.generated .binding 1)), type := (.pair .nat .str) }] (.option .bool) (.mk [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 1)) [(.mk .none (.mk [] (.construct (.none .bool) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 5)) none (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 2)))))] (.call (.runtime .compare) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))))] (.matchOn (.move (.generated .holder 5)) [(.mk (.ordering .less) (.mk [] (.construct (.none .bool) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 6))]) none (.move (.generated .binding 2)))] (.move (.generated .part 6))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 1) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)))])))]))), - (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair (.fixed .i8) .nat)) }, { pattern := (.bind (.generated .binding 1)), type := (.fixed .i8) }] (.option .nat) (.mk [(.mk (.bind (.generated .holder 7)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 7)) [(.mk .none (.mk [] (.construct (.none .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 11)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 10)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 8)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 8)))))] (.call (.runtime .compare) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false))))] (.matchOn (.move (.generated .holder 11)) [(.mk (.ordering .less) (.mk [] (.construct (.none .nat) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 12))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 12))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 2) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]))), - (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .bool .nat)) }, { pattern := (.bind (.generated .binding 1)), type := .bool }] (.option .nat) (.mk [(.mk (.bind (.generated .holder 13)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 13)) [(.mk .none (.mk [] (.construct (.none .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 17)) none (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 16)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 14)))))] (.call (.runtime .compare) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] false))))] (.matchOn (.move (.generated .holder 17)) [(.mk (.ordering .less) (.mk [] (.construct (.none .nat) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 18))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 18))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 3) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]))), - (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .int .nat)) }, { pattern := (.bind (.generated .binding 1)), type := .int }] (.option .nat) (.mk [(.mk (.bind (.generated .holder 19)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 19)) [(.mk .none (.mk [] (.construct (.none .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 23)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 20)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 20)))))] (.call (.runtime .compare) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.matchOn (.move (.generated .holder 23)) [(.mk (.ordering .less) (.mk [] (.construct (.none .nat) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 24))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 24))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 4) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]))), - (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair (.fixed .u64) .nat)) }, { pattern := (.bind (.generated .binding 1)), type := (.fixed .u64) }] (.option .nat) (.mk [(.mk (.bind (.generated .holder 25)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 25)) [(.mk .none (.mk [] (.construct (.none .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 29)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 26)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 26)))))] (.call (.runtime .compare) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))] (.matchOn (.move (.generated .holder 29)) [(.mk (.ordering .less) (.mk [] (.construct (.none .nat) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 30))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 30))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 5) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]))), - (.function (.generated .function 6) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair (.pair .nat .str) .bool)) }] .bool (.mk [(.mk (.bind (.generated .holder 31)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 31)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 7) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 32))]) none (.move (.generated .binding 1)))] (.move (.generated .part 32))))] false) (.mk [(.mk (.bind (.generated .holder 33)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 33)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 38)) none (.block (.mk [(.mk (.bind (.generated .operand 36)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 34)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 34))))), (.mk (.bind (.generated .operand 37)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 35)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 35)))))] (.call (.runtime .compare) [(.move (.generated .operand 36)), (.move (.generated .operand 37))] false))))] (.cond (.matchOn (.move (.generated .holder 38)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 6) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]))), - (.function (.generated .function 7) [{ pattern := .wild, type := .bool }] .bool (.mk [] (.lit (.bool true)))), - (.function (.generated .function 8) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair (.fixed .i8) .nat)) }] .bool (.mk [(.mk (.bind (.generated .holder 39)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 39)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 9) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 40))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 40))))] false) (.mk [(.mk (.bind (.generated .holder 41)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 41)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 46)) none (.block (.mk [(.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 42)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 42))))), (.mk (.bind (.generated .operand 45)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 43)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 43)))))] (.call (.runtime .compare) [(.move (.generated .operand 44)), (.move (.generated .operand 45))] false))))] (.cond (.matchOn (.move (.generated .holder 46)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 8) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]))), - (.function (.generated .function 9) [{ pattern := .wild, type := .nat }] .bool (.mk [] (.lit (.bool true)))), - (.function (.generated .function 10) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .bool .nat)) }] .bool (.mk [(.mk (.bind (.generated .holder 47)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 47)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 9) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 48))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 48))))] false) (.mk [(.mk (.bind (.generated .holder 49)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 49)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 54)) none (.block (.mk [(.mk (.bind (.generated .operand 52)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 50)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 50))))), (.mk (.bind (.generated .operand 53)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 51)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 51)))))] (.call (.runtime .compare) [(.move (.generated .operand 52)), (.move (.generated .operand 53))] false))))] (.cond (.matchOn (.move (.generated .holder 54)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 10) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]))), - (.function (.generated .function 11) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .int .nat)) }] .bool (.mk [(.mk (.bind (.generated .holder 55)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 55)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 9) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 56))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 56))))] false) (.mk [(.mk (.bind (.generated .holder 57)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 57)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 62)) none (.block (.mk [(.mk (.bind (.generated .operand 60)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 58)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 58))))), (.mk (.bind (.generated .operand 61)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 59)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 59)))))] (.call (.runtime .compare) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] false))))] (.cond (.matchOn (.move (.generated .holder 62)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 11) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]))), - (.function (.generated .function 12) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair (.fixed .u64) .nat)) }] .bool (.mk [(.mk (.bind (.generated .holder 63)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 63)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 9) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 64))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 64))))] false) (.mk [(.mk (.bind (.generated .holder 65)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 65)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 70)) none (.block (.mk [(.mk (.bind (.generated .operand 68)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 66)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 66))))), (.mk (.bind (.generated .operand 69)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 67)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 67)))))] (.call (.runtime .compare) [(.move (.generated .operand 68)), (.move (.generated .operand 69))] false))))] (.cond (.matchOn (.move (.generated .holder 70)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 12) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]))), - (.function (.generated .function 13) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair (.pair .nat .str) .bool)) }, { pattern := (.bind (.generated .binding 1)), type := (.pair .nat .str) }, { pattern := (.bind (.generated .binding 2)), type := (.list (.pair (.fixed .i8) .nat)) }, { pattern := (.bind (.generated .binding 3)), type := (.fixed .i8) }, { pattern := (.bind (.generated .binding 4)), type := (.list (.pair .bool .nat)) }, { pattern := (.bind (.generated .binding 5)), type := .bool }, { pattern := (.bind (.generated .binding 6)), type := (.list (.pair .int .nat)) }, { pattern := (.bind (.generated .binding 7)), type := .int }, { pattern := (.bind (.generated .binding 8)), type := (.list (.pair (.fixed .u64) .nat)) }, { pattern := (.bind (.generated .binding 9)), type := (.fixed .u64) }] (.option (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) (.mk [] (.cond (.call (.function 6) [(.clone (.generated .binding 0))] false) (.mk [] (.cond (.call (.function 8) [(.clone (.generated .binding 2))] false) (.mk [] (.cond (.call (.function 10) [(.clone (.generated .binding 4))] false) (.mk [] (.cond (.call (.function 11) [(.clone (.generated .binding 6))] false) (.mk [] (.cond (.call (.function 12) [(.clone (.generated .binding 8))] false) (.mk [] (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 2)), (.copy (.generated .binding 3)), (.move (.generated .binding 4)), (.copy (.generated .binding 5)), (.move (.generated .binding 6)), (.copy (.generated .binding 7)), (.move (.generated .binding 8)), (.copy (.generated .binding 9))] false)])) (.mk [] (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])))) (.mk [] (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])))) (.mk [] (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])))) (.mk [] (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])))) (.mk [] (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])))))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [], (.pair (.call (.function 1) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false) (.pair (.call (.function 2) [(.move (.generated .binding 2)), (.copy (.generated .binding 3))] false) (.pair (.call (.function 3) [(.move (.generated .binding 4)), (.copy (.generated .binding 5))] false) (.pair (.call (.function 4) [(.move (.generated .binding 6)), (.copy (.generated .binding 7))] false) (.call (.function 5) [(.move (.generated .binding 8)), (.copy (.generated .binding 9))] false))))), [(9, (.fixed .u64), (some 9)), (8, (.list (.pair (.fixed .u64) .nat)), (some 8)), (7, .int, (some 7)), (6, (.list (.pair .int .nat)), (some 6)), (5, .bool, (some 5)), (4, (.list (.pair .bool .nat)), (some 4)), (3, (.fixed .i8), (some 3)), (2, (.list (.pair (.fixed .i8) .nat)), (some 2)), (1, (.pair .nat .string), (some 1)), (0, (.list (.pair (.pair .nat .string) .bool)), (some 0))], rfl, rfl, - (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair (.pair .nat .string) .bool)), (.pair .nat .string)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair (.fixed .i8) .nat)), (.fixed .i8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .bool .nat)), .bool]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .int .nat)), .int]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair (.fixed .u64) .nat)), (.fixed .u64)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil)))))⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 1)) [(.mk .none (.mk [] (.construct (.none .bool) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 5)) none (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 2)))))] (.call (.runtime .compare) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))))] (.matchOn (.move (.generated .holder 5)) [(.mk (.ordering .less) (.mk [] (.construct (.none .bool) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 6))]) none (.move (.generated .binding 2)))] (.move (.generated .part 6))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 1) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)))])))]), [(1, (.pair .nat .string), (some 1)), (0, (.list (.pair (.pair .nat .string) .bool)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.pair (.pair .nat .string) .bool))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.pair .nat .string), (some 1)), (0, (.list (.pair (.pair .nat .string) .bool)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none .bool) [])) (Corr.mCons (Γ' := [(3, (.list (.pair (.pair .nat .string) .bool)), (some 3)), (2, (.pair (.pair .nat .string) .bool), (some 2)), (1, (.pair .nat .string), (some 1)), (0, (.list (.pair (.pair .nat .string) .bool)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 5)) none (.block (.mk [(.mk (.bind (.generated .operand 3)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 2)))))] (.call (.runtime .compare) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))))]) (tail := (.matchOn (.move (.generated .holder 5)) [(.mk (.ordering .less) (.mk [] (.construct (.none .bool) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 6))]) none (.move (.generated .binding 2)))] (.move (.generated .part 6))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 1) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 3)) none (.clone (.generated .binding 1))), (.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 2)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false)) (Corr.prim (ts := [(.pair .nat .string), (.pair .nat .string)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 2))) (Corr.first (ta := (.pair .nat .string)) (tb := .bool) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list (.pair (.pair .nat .string) .bool)), (some 3)), (2, (.pair (.pair .nat .string) .bool), (some 2)), (1, (.pair .nat .string), (some 1)), (0, (.list (.pair (.pair .nat .string) .bool)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none .bool) [])) (Corr.mCons (Γ' := [(3, (.list (.pair (.pair .nat .string) .bool)), (some 3)), (2, (.pair (.pair .nat .string) .bool), (some 2)), (1, (.pair .nat .string), (some 1)), (0, (.list (.pair (.pair .nat .string) .bool)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 6))]) none (.move (.generated .binding 2)))] (.move (.generated .part 6))))])) (Corr.mCons (Γ' := [(3, (.list (.pair (.pair .nat .string) .bool)), (some 3)), (2, (.pair (.pair .nat .string) .bool), (some 2)), (1, (.pair .nat .string), (some 1)), (0, (.list (.pair (.pair .nat .string) .bool)), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.call (.function 1) [(.move (.generated .binding 3)), (.move (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list (.pair (.pair .nat .string) .bool)), (.pair .nat .string)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := [.bool]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 6))]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 6))) (Corr.second (ta := (.pair .nat .string)) (tb := .bool) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 7)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 7)) [(.mk .none (.mk [] (.construct (.none .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 11)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 10)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 8)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 8)))))] (.call (.runtime .compare) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false))))] (.matchOn (.move (.generated .holder 11)) [(.mk (.ordering .less) (.mk [] (.construct (.none .nat) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 12))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 12))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 2) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]), [(1, (.fixed .i8), (some 1)), (0, (.list (.pair (.fixed .i8) .nat)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.pair (.fixed .i8) .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.fixed .i8), (some 1)), (0, (.list (.pair (.fixed .i8) .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none .nat) [])) (Corr.mCons (Γ' := [(3, (.list (.pair (.fixed .i8) .nat)), (some 3)), (2, (.pair (.fixed .i8) .nat), (some 2)), (1, (.fixed .i8), (some 1)), (0, (.list (.pair (.fixed .i8) .nat)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 11)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 10)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 8)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 8)))))] (.call (.runtime .compare) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false))))]) (tail := (.matchOn (.move (.generated .holder 11)) [(.mk (.ordering .less) (.mk [] (.construct (.none .nat) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 12))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 12))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 2) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 10)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 8)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 8)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false)) (Corr.prim (ts := [(.fixed .i8), (.fixed .i8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 8)), .wild]) none (.copy (.generated .binding 2)))]) (tail := (.move (.generated .part 8))) (Corr.first (ta := (.fixed .i8)) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list (.pair (.fixed .i8) .nat)), (some 3)), (2, (.pair (.fixed .i8) .nat), (some 2)), (1, (.fixed .i8), (some 1)), (0, (.list (.pair (.fixed .i8) .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none .nat) [])) (Corr.mCons (Γ' := [(3, (.list (.pair (.fixed .i8) .nat)), (some 3)), (2, (.pair (.fixed .i8) .nat), (some 2)), (1, (.fixed .i8), (some 1)), (0, (.list (.pair (.fixed .i8) .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 12))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 12))))])) (Corr.mCons (Γ' := [(3, (.list (.pair (.fixed .i8) .nat)), (some 3)), (2, (.pair (.fixed .i8) .nat), (some 2)), (1, (.fixed .i8), (some 1)), (0, (.list (.pair (.fixed .i8) .nat)), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.call (.function 2) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list (.pair (.fixed .i8) .nat)), (.fixed .i8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 12))]) none (.copy (.generated .binding 2)))]) (tail := (.move (.generated .part 12))) (Corr.second (ta := (.fixed .i8)) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun3 : FunOK program krate flags 3 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 13)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 13)) [(.mk .none (.mk [] (.construct (.none .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 17)) none (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 16)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 14)))))] (.call (.runtime .compare) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] false))))] (.matchOn (.move (.generated .holder 17)) [(.mk (.ordering .less) (.mk [] (.construct (.none .nat) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 18))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 18))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 3) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]), [(1, .bool, (some 1)), (0, (.list (.pair .bool .nat)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.pair .bool .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .bool, (some 1)), (0, (.list (.pair .bool .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none .nat) [])) (Corr.mCons (Γ' := [(3, (.list (.pair .bool .nat)), (some 3)), (2, (.pair .bool .nat), (some 2)), (1, .bool, (some 1)), (0, (.list (.pair .bool .nat)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 17)) none (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 16)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 14)))))] (.call (.runtime .compare) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] false))))]) (tail := (.matchOn (.move (.generated .holder 17)) [(.mk (.ordering .less) (.mk [] (.construct (.none .nat) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 18))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 18))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 3) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 16)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 14)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 15)), (.move (.generated .operand 16))] false)) (Corr.prim (ts := [.bool, .bool]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.copy (.generated .binding 2)))]) (tail := (.move (.generated .part 14))) (Corr.first (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list (.pair .bool .nat)), (some 3)), (2, (.pair .bool .nat), (some 2)), (1, .bool, (some 1)), (0, (.list (.pair .bool .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none .nat) [])) (Corr.mCons (Γ' := [(3, (.list (.pair .bool .nat)), (some 3)), (2, (.pair .bool .nat), (some 2)), (1, .bool, (some 1)), (0, (.list (.pair .bool .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 18))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 18))))])) (Corr.mCons (Γ' := [(3, (.list (.pair .bool .nat)), (some 3)), (2, (.pair .bool .nat), (some 2)), (1, .bool, (some 1)), (0, (.list (.pair .bool .nat)), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.call (.function 3) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list (.pair .bool .nat)), .bool]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 18))]) none (.copy (.generated .binding 2)))]) (tail := (.move (.generated .part 18))) (Corr.second (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun4 : FunOK program krate flags 4 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 19)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 19)) [(.mk .none (.mk [] (.construct (.none .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 23)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 20)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 20)))))] (.call (.runtime .compare) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))] (.matchOn (.move (.generated .holder 23)) [(.mk (.ordering .less) (.mk [] (.construct (.none .nat) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 24))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 24))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 4) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]), [(1, .int, (some 1)), (0, (.list (.pair .int .nat)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.pair .int .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .int, (some 1)), (0, (.list (.pair .int .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none .nat) [])) (Corr.mCons (Γ' := [(3, (.list (.pair .int .nat)), (some 3)), (2, (.pair .int .nat), (some 2)), (1, .int, (some 1)), (0, (.list (.pair .int .nat)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 23)) none (.block (.mk [(.mk (.bind (.generated .operand 21)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 20)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 20)))))] (.call (.runtime .compare) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false))))]) (tail := (.matchOn (.move (.generated .holder 23)) [(.mk (.ordering .less) (.mk [] (.construct (.none .nat) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 24))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 24))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 4) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 21)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 22)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 20)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 20)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 20)), .wild]) none (.copy (.generated .binding 2)))]) (tail := (.move (.generated .part 20))) (Corr.first (ta := .int) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list (.pair .int .nat)), (some 3)), (2, (.pair .int .nat), (some 2)), (1, .int, (some 1)), (0, (.list (.pair .int .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none .nat) [])) (Corr.mCons (Γ' := [(3, (.list (.pair .int .nat)), (some 3)), (2, (.pair .int .nat), (some 2)), (1, .int, (some 1)), (0, (.list (.pair .int .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 24))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 24))))])) (Corr.mCons (Γ' := [(3, (.list (.pair .int .nat)), (some 3)), (2, (.pair .int .nat), (some 2)), (1, .int, (some 1)), (0, (.list (.pair .int .nat)), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.call (.function 4) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list (.pair .int .nat)), .int]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 24))]) none (.copy (.generated .binding 2)))]) (tail := (.move (.generated .part 24))) (Corr.second (ta := .int) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun5 : FunOK program krate flags 5 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 25)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 25)) [(.mk .none (.mk [] (.construct (.none .nat) []))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 29)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 26)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 26)))))] (.call (.runtime .compare) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))] (.matchOn (.move (.generated .holder 29)) [(.mk (.ordering .less) (.mk [] (.construct (.none .nat) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 30))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 30))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 5) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]), [(1, (.fixed .u64), (some 1)), (0, (.list (.pair (.fixed .u64) .nat)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.pair (.fixed .u64) .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.fixed .u64), (some 1)), (0, (.list (.pair (.fixed .u64) .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none .nat) [])) (Corr.mCons (Γ' := [(3, (.list (.pair (.fixed .u64) .nat)), (some 3)), (2, (.pair (.fixed .u64) .nat), (some 2)), (1, (.fixed .u64), (some 1)), (0, (.list (.pair (.fixed .u64) .nat)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 29)) none (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 26)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 26)))))] (.call (.runtime .compare) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false))))]) (tail := (.matchOn (.move (.generated .holder 29)) [(.mk (.ordering .less) (.mk [] (.construct (.none .nat) []))), (.mk (.ordering .same) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 30))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 30))))]))), (.mk (.ordering .more) (.mk [] (.call (.function 5) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 27)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 26)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 26)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false)) (Corr.prim (ts := [(.fixed .u64), (.fixed .u64)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 26)), .wild]) none (.copy (.generated .binding 2)))]) (tail := (.move (.generated .part 26))) (Corr.first (ta := (.fixed .u64)) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list (.pair (.fixed .u64) .nat)), (some 3)), (2, (.pair (.fixed .u64) .nat), (some 2)), (1, (.fixed .u64), (some 1)), (0, (.list (.pair (.fixed .u64) .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none .nat) [])) (Corr.mCons (Γ' := [(3, (.list (.pair (.fixed .u64) .nat)), (some 3)), (2, (.pair (.fixed .u64) .nat), (some 2)), (1, (.fixed .u64), (some 1)), (0, (.list (.pair (.fixed .u64) .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 30))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 30))))])) (Corr.mCons (Γ' := [(3, (.list (.pair (.fixed .u64) .nat)), (some 3)), (2, (.pair (.fixed .u64) .nat), (some 2)), (1, (.fixed .u64), (some 1)), (0, (.list (.pair (.fixed .u64) .nat)), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.call (.function 5) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list (.pair (.fixed .u64) .nat)), (.fixed .u64)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 30))]) none (.copy (.generated .binding 2)))]) (tail := (.move (.generated .part 30))) (Corr.second (ta := (.fixed .u64)) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun6 : FunOK program krate flags 6 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 31)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 31)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 7) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 32))]) none (.move (.generated .binding 1)))] (.move (.generated .part 32))))] false) (.mk [(.mk (.bind (.generated .holder 33)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 33)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 38)) none (.block (.mk [(.mk (.bind (.generated .operand 36)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 34)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 34))))), (.mk (.bind (.generated .operand 37)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 35)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 35)))))] (.call (.runtime .compare) [(.move (.generated .operand 36)), (.move (.generated .operand 37))] false))))] (.cond (.matchOn (.move (.generated .holder 38)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 6) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]), [(0, (.list (.pair (.pair .nat .string) .bool)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.pair (.pair .nat .string) .bool))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list (.pair (.pair .nat .string) .bool)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, (.list (.pair (.pair .nat .string) .bool)), (some 2)), (1, (.pair (.pair .nat .string) .bool), (some 1)), (0, (.list (.pair (.pair .nat .string) .bool)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 7) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 32))]) none (.move (.generated .binding 1)))] (.move (.generated .part 32))))] false) (.mk [(.mk (.bind (.generated .holder 33)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 33)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 38)) none (.block (.mk [(.mk (.bind (.generated .operand 36)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 34)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 34))))), (.mk (.bind (.generated .operand 37)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 35)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 35)))))] (.call (.runtime .compare) [(.move (.generated .operand 36)), (.move (.generated .operand 37))] false))))] (.cond (.matchOn (.move (.generated .holder 38)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 6) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 7) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 32))]) none (.move (.generated .binding 1)))] (.move (.generated .part 32))))] false)) (lk := []) (Corr.callOps (ts := [.bool]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 32))]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 32))) (Corr.second (ta := (.pair .nat .string)) (tb := .bool) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .holder 33)) none (.clone (.generated .binding 2)))]) (ta := (.matchOn (.uncons (.generated .holder 33)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 38)) none (.block (.mk [(.mk (.bind (.generated .operand 36)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 34)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 34))))), (.mk (.bind (.generated .operand 37)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 35)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 35)))))] (.call (.runtime .compare) [(.move (.generated .operand 36)), (.move (.generated .operand 37))] false))))] (.cond (.matchOn (.move (.generated .holder 38)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 6) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (lb := []) (tb := (.lit (.bool false))) (Corr.matchArms (st := (.list (.pair (.pair .nat .string) .bool))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.pair (.pair .nat .string) .bool)), (some 2)), (1, (.pair (.pair .nat .string) .bool), (some 1)), (0, (.list (.pair (.pair .nat .string) .bool)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair (.pair .nat .string) .bool)), none), (3, (.pair (.pair .nat .string) .bool), (some 3)), (2, (.list (.pair (.pair .nat .string) .bool)), (some 2)), (1, (.pair (.pair .nat .string) .bool), (some 1)), (0, (.list (.pair (.pair .nat .string) .bool)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 38)) none (.block (.mk [(.mk (.bind (.generated .operand 36)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 34)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 34))))), (.mk (.bind (.generated .operand 37)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 35)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 35)))))] (.call (.runtime .compare) [(.move (.generated .operand 36)), (.move (.generated .operand 37))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 38)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 6) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .holder 38)) none (.block (.mk [(.mk (.bind (.generated .operand 36)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 34)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 34))))), (.mk (.bind (.generated .operand 37)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 35)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 35)))))] (.call (.runtime .compare) [(.move (.generated .operand 36)), (.move (.generated .operand 37))] false))))]) (ce := (.matchOn (.move (.generated .holder 38)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 36)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 34)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 34))))), (.mk (.bind (.generated .operand 37)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 35)), .wild]) none (.move (.generated .binding 3)))] (.move (.generated .part 35)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 36)), (.move (.generated .operand 37))] false)) (Corr.prim (ts := [(.pair .nat .string), (.pair .nat .string)]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 34)), .wild]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 34))) (Corr.first (ta := (.pair .nat .string)) (tb := .bool) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 35)), .wild]) none (.move (.generated .binding 3)))]) (tail := (.move (.generated .part 35))) (Corr.first (ta := (.pair .nat .string)) (tb := .bool) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.list (.pair (.pair .nat .string) .bool)), none), (3, (.pair (.pair .nat .string) .bool), (some 3)), (2, (.list (.pair (.pair .nat .string) .bool)), (some 2)), (1, (.pair (.pair .nat .string) .bool), (some 1)), (0, (.list (.pair (.pair .nat .string) .bool)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair (.pair .nat .string) .bool)), none), (3, (.pair (.pair .nat .string) .bool), (some 3)), (2, (.list (.pair (.pair .nat .string) .bool)), (some 2)), (1, (.pair (.pair .nat .string) .bool), (some 1)), (0, (.list (.pair (.pair .nat .string) .bool)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, (.list (.pair (.pair .nat .string) .bool)), none), (3, (.pair (.pair .nat .string) .bool), (some 3)), (2, (.list (.pair (.pair .nat .string) .bool)), (some 2)), (1, (.pair (.pair .nat .string) .bool), (some 1)), (0, (.list (.pair (.pair .nat .string) .bool)), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 6) [(.move (.generated .binding 2))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.list (.pair (.pair .nat .string) .bool))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ - -theorem fun7 : FunOK program krate flags 7 := - ⟨_, rfl, .inl ⟨_, _, [], (.lit (.bool true)), [(0, .bool, none)], rfl, rfl, - (Corr.bOfE (Corr.buildConst rfl))⟩⟩ - -theorem fun8 : FunOK program krate flags 8 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 39)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 39)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 9) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 40))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 40))))] false) (.mk [(.mk (.bind (.generated .holder 41)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 41)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 46)) none (.block (.mk [(.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 42)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 42))))), (.mk (.bind (.generated .operand 45)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 43)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 43)))))] (.call (.runtime .compare) [(.move (.generated .operand 44)), (.move (.generated .operand 45))] false))))] (.cond (.matchOn (.move (.generated .holder 46)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 8) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]), [(0, (.list (.pair (.fixed .i8) .nat)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.pair (.fixed .i8) .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list (.pair (.fixed .i8) .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, (.list (.pair (.fixed .i8) .nat)), (some 2)), (1, (.pair (.fixed .i8) .nat), (some 1)), (0, (.list (.pair (.fixed .i8) .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 9) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 40))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 40))))] false) (.mk [(.mk (.bind (.generated .holder 41)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 41)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 46)) none (.block (.mk [(.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 42)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 42))))), (.mk (.bind (.generated .operand 45)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 43)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 43)))))] (.call (.runtime .compare) [(.move (.generated .operand 44)), (.move (.generated .operand 45))] false))))] (.cond (.matchOn (.move (.generated .holder 46)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 8) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 9) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 40))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 40))))] false)) (lk := []) (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 40))]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 40))) (Corr.second (ta := (.fixed .i8)) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .holder 41)) none (.clone (.generated .binding 2)))]) (ta := (.matchOn (.uncons (.generated .holder 41)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 46)) none (.block (.mk [(.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 42)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 42))))), (.mk (.bind (.generated .operand 45)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 43)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 43)))))] (.call (.runtime .compare) [(.move (.generated .operand 44)), (.move (.generated .operand 45))] false))))] (.cond (.matchOn (.move (.generated .holder 46)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 8) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (lb := []) (tb := (.lit (.bool false))) (Corr.matchArms (st := (.list (.pair (.fixed .i8) .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.pair (.fixed .i8) .nat)), (some 2)), (1, (.pair (.fixed .i8) .nat), (some 1)), (0, (.list (.pair (.fixed .i8) .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair (.fixed .i8) .nat)), none), (3, (.pair (.fixed .i8) .nat), (some 3)), (2, (.list (.pair (.fixed .i8) .nat)), (some 2)), (1, (.pair (.fixed .i8) .nat), (some 1)), (0, (.list (.pair (.fixed .i8) .nat)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 46)) none (.block (.mk [(.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 42)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 42))))), (.mk (.bind (.generated .operand 45)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 43)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 43)))))] (.call (.runtime .compare) [(.move (.generated .operand 44)), (.move (.generated .operand 45))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 46)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 8) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .holder 46)) none (.block (.mk [(.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 42)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 42))))), (.mk (.bind (.generated .operand 45)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 43)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 43)))))] (.call (.runtime .compare) [(.move (.generated .operand 44)), (.move (.generated .operand 45))] false))))]) (ce := (.matchOn (.move (.generated .holder 46)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 42)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 42))))), (.mk (.bind (.generated .operand 45)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 43)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 43)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 44)), (.move (.generated .operand 45))] false)) (Corr.prim (ts := [(.fixed .i8), (.fixed .i8)]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 42)), .wild]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 42))) (Corr.first (ta := (.fixed .i8)) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 43)), .wild]) none (.copy (.generated .binding 3)))]) (tail := (.move (.generated .part 43))) (Corr.first (ta := (.fixed .i8)) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.list (.pair (.fixed .i8) .nat)), none), (3, (.pair (.fixed .i8) .nat), (some 3)), (2, (.list (.pair (.fixed .i8) .nat)), (some 2)), (1, (.pair (.fixed .i8) .nat), (some 1)), (0, (.list (.pair (.fixed .i8) .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair (.fixed .i8) .nat)), none), (3, (.pair (.fixed .i8) .nat), (some 3)), (2, (.list (.pair (.fixed .i8) .nat)), (some 2)), (1, (.pair (.fixed .i8) .nat), (some 1)), (0, (.list (.pair (.fixed .i8) .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, (.list (.pair (.fixed .i8) .nat)), none), (3, (.pair (.fixed .i8) .nat), (some 3)), (2, (.list (.pair (.fixed .i8) .nat)), (some 2)), (1, (.pair (.fixed .i8) .nat), (some 1)), (0, (.list (.pair (.fixed .i8) .nat)), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 8) [(.move (.generated .binding 2))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.list (.pair (.fixed .i8) .nat))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ - -theorem fun9 : FunOK program krate flags 9 := - ⟨_, rfl, .inl ⟨_, _, [], (.lit (.bool true)), [(0, .nat, none)], rfl, rfl, - (Corr.bOfE (Corr.buildConst rfl))⟩⟩ - -theorem fun10 : FunOK program krate flags 10 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 47)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 47)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 9) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 48))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 48))))] false) (.mk [(.mk (.bind (.generated .holder 49)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 49)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 54)) none (.block (.mk [(.mk (.bind (.generated .operand 52)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 50)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 50))))), (.mk (.bind (.generated .operand 53)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 51)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 51)))))] (.call (.runtime .compare) [(.move (.generated .operand 52)), (.move (.generated .operand 53))] false))))] (.cond (.matchOn (.move (.generated .holder 54)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 10) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]), [(0, (.list (.pair .bool .nat)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.pair .bool .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list (.pair .bool .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, (.list (.pair .bool .nat)), (some 2)), (1, (.pair .bool .nat), (some 1)), (0, (.list (.pair .bool .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 9) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 48))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 48))))] false) (.mk [(.mk (.bind (.generated .holder 49)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 49)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 54)) none (.block (.mk [(.mk (.bind (.generated .operand 52)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 50)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 50))))), (.mk (.bind (.generated .operand 53)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 51)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 51)))))] (.call (.runtime .compare) [(.move (.generated .operand 52)), (.move (.generated .operand 53))] false))))] (.cond (.matchOn (.move (.generated .holder 54)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 10) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 9) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 48))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 48))))] false)) (lk := []) (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 48))]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 48))) (Corr.second (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .holder 49)) none (.clone (.generated .binding 2)))]) (ta := (.matchOn (.uncons (.generated .holder 49)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 54)) none (.block (.mk [(.mk (.bind (.generated .operand 52)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 50)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 50))))), (.mk (.bind (.generated .operand 53)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 51)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 51)))))] (.call (.runtime .compare) [(.move (.generated .operand 52)), (.move (.generated .operand 53))] false))))] (.cond (.matchOn (.move (.generated .holder 54)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 10) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (lb := []) (tb := (.lit (.bool false))) (Corr.matchArms (st := (.list (.pair .bool .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.pair .bool .nat)), (some 2)), (1, (.pair .bool .nat), (some 1)), (0, (.list (.pair .bool .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair .bool .nat)), none), (3, (.pair .bool .nat), (some 3)), (2, (.list (.pair .bool .nat)), (some 2)), (1, (.pair .bool .nat), (some 1)), (0, (.list (.pair .bool .nat)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 54)) none (.block (.mk [(.mk (.bind (.generated .operand 52)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 50)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 50))))), (.mk (.bind (.generated .operand 53)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 51)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 51)))))] (.call (.runtime .compare) [(.move (.generated .operand 52)), (.move (.generated .operand 53))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 54)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 10) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .holder 54)) none (.block (.mk [(.mk (.bind (.generated .operand 52)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 50)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 50))))), (.mk (.bind (.generated .operand 53)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 51)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 51)))))] (.call (.runtime .compare) [(.move (.generated .operand 52)), (.move (.generated .operand 53))] false))))]) (ce := (.matchOn (.move (.generated .holder 54)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 52)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 50)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 50))))), (.mk (.bind (.generated .operand 53)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 51)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 51)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 52)), (.move (.generated .operand 53))] false)) (Corr.prim (ts := [.bool, .bool]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 50)), .wild]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 50))) (Corr.first (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 51)), .wild]) none (.copy (.generated .binding 3)))]) (tail := (.move (.generated .part 51))) (Corr.first (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.list (.pair .bool .nat)), none), (3, (.pair .bool .nat), (some 3)), (2, (.list (.pair .bool .nat)), (some 2)), (1, (.pair .bool .nat), (some 1)), (0, (.list (.pair .bool .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair .bool .nat)), none), (3, (.pair .bool .nat), (some 3)), (2, (.list (.pair .bool .nat)), (some 2)), (1, (.pair .bool .nat), (some 1)), (0, (.list (.pair .bool .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, (.list (.pair .bool .nat)), none), (3, (.pair .bool .nat), (some 3)), (2, (.list (.pair .bool .nat)), (some 2)), (1, (.pair .bool .nat), (some 1)), (0, (.list (.pair .bool .nat)), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 10) [(.move (.generated .binding 2))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.list (.pair .bool .nat))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ - -theorem fun11 : FunOK program krate flags 11 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 55)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 55)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 9) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 56))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 56))))] false) (.mk [(.mk (.bind (.generated .holder 57)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 57)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 62)) none (.block (.mk [(.mk (.bind (.generated .operand 60)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 58)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 58))))), (.mk (.bind (.generated .operand 61)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 59)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 59)))))] (.call (.runtime .compare) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] false))))] (.cond (.matchOn (.move (.generated .holder 62)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 11) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]), [(0, (.list (.pair .int .nat)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.pair .int .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list (.pair .int .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, (.list (.pair .int .nat)), (some 2)), (1, (.pair .int .nat), (some 1)), (0, (.list (.pair .int .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 9) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 56))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 56))))] false) (.mk [(.mk (.bind (.generated .holder 57)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 57)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 62)) none (.block (.mk [(.mk (.bind (.generated .operand 60)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 58)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 58))))), (.mk (.bind (.generated .operand 61)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 59)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 59)))))] (.call (.runtime .compare) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] false))))] (.cond (.matchOn (.move (.generated .holder 62)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 11) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 9) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 56))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 56))))] false)) (lk := []) (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 56))]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 56))) (Corr.second (ta := .int) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .holder 57)) none (.clone (.generated .binding 2)))]) (ta := (.matchOn (.uncons (.generated .holder 57)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 62)) none (.block (.mk [(.mk (.bind (.generated .operand 60)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 58)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 58))))), (.mk (.bind (.generated .operand 61)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 59)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 59)))))] (.call (.runtime .compare) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] false))))] (.cond (.matchOn (.move (.generated .holder 62)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 11) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (lb := []) (tb := (.lit (.bool false))) (Corr.matchArms (st := (.list (.pair .int .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.pair .int .nat)), (some 2)), (1, (.pair .int .nat), (some 1)), (0, (.list (.pair .int .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair .int .nat)), none), (3, (.pair .int .nat), (some 3)), (2, (.list (.pair .int .nat)), (some 2)), (1, (.pair .int .nat), (some 1)), (0, (.list (.pair .int .nat)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 62)) none (.block (.mk [(.mk (.bind (.generated .operand 60)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 58)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 58))))), (.mk (.bind (.generated .operand 61)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 59)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 59)))))] (.call (.runtime .compare) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 62)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 11) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .holder 62)) none (.block (.mk [(.mk (.bind (.generated .operand 60)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 58)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 58))))), (.mk (.bind (.generated .operand 61)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 59)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 59)))))] (.call (.runtime .compare) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] false))))]) (ce := (.matchOn (.move (.generated .holder 62)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 60)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 58)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 58))))), (.mk (.bind (.generated .operand 61)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 59)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 59)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] false)) (Corr.prim (ts := [.int, .int]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 58)), .wild]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 58))) (Corr.first (ta := .int) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 59)), .wild]) none (.copy (.generated .binding 3)))]) (tail := (.move (.generated .part 59))) (Corr.first (ta := .int) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.list (.pair .int .nat)), none), (3, (.pair .int .nat), (some 3)), (2, (.list (.pair .int .nat)), (some 2)), (1, (.pair .int .nat), (some 1)), (0, (.list (.pair .int .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair .int .nat)), none), (3, (.pair .int .nat), (some 3)), (2, (.list (.pair .int .nat)), (some 2)), (1, (.pair .int .nat), (some 1)), (0, (.list (.pair .int .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, (.list (.pair .int .nat)), none), (3, (.pair .int .nat), (some 3)), (2, (.list (.pair .int .nat)), (some 2)), (1, (.pair .int .nat), (some 1)), (0, (.list (.pair .int .nat)), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 11) [(.move (.generated .binding 2))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.list (.pair .int .nat))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ - -theorem fun12 : FunOK program krate flags 12 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 63)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 63)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [] (.cond (.call (.function 9) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 64))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 64))))] false) (.mk [(.mk (.bind (.generated .holder 65)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 65)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 70)) none (.block (.mk [(.mk (.bind (.generated .operand 68)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 66)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 66))))), (.mk (.bind (.generated .operand 69)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 67)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 67)))))] (.call (.runtime .compare) [(.move (.generated .operand 68)), (.move (.generated .operand 69))] false))))] (.cond (.matchOn (.move (.generated .holder 70)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 12) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))))]), [(0, (.list (.pair (.fixed .u64) .nat)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.pair (.fixed .u64) .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list (.pair (.fixed .u64) .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(2, (.list (.pair (.fixed .u64) .nat)), (some 2)), (1, (.pair (.fixed .u64) .nat), (some 1)), (0, (.list (.pair (.fixed .u64) .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 9) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 64))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 64))))] false) (.mk [(.mk (.bind (.generated .holder 65)) none (.clone (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 65)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 70)) none (.block (.mk [(.mk (.bind (.generated .operand 68)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 66)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 66))))), (.mk (.bind (.generated .operand 69)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 67)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 67)))))] (.call (.runtime .compare) [(.move (.generated .operand 68)), (.move (.generated .operand 69))] false))))] (.cond (.matchOn (.move (.generated .holder 70)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 12) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 9) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 64))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 64))))] false)) (lk := []) (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 64))]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 64))) (Corr.second (ta := (.fixed .u64)) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .holder 65)) none (.clone (.generated .binding 2)))]) (ta := (.matchOn (.uncons (.generated .holder 65)) [(.mk .none (.mk [] (.lit (.bool true)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), .wild])) (.mk [(.mk (.bind (.generated .holder 70)) none (.block (.mk [(.mk (.bind (.generated .operand 68)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 66)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 66))))), (.mk (.bind (.generated .operand 69)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 67)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 67)))))] (.call (.runtime .compare) [(.move (.generated .operand 68)), (.move (.generated .operand 69))] false))))] (.cond (.matchOn (.move (.generated .holder 70)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 12) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))))])) (lb := []) (tb := (.lit (.bool false))) (Corr.matchArms (st := (.list (.pair (.fixed .u64) .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.pair (.fixed .u64) .nat)), (some 2)), (1, (.pair (.fixed .u64) .nat), (some 1)), (0, (.list (.pair (.fixed .u64) .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair (.fixed .u64) .nat)), none), (3, (.pair (.fixed .u64) .nat), (some 3)), (2, (.list (.pair (.fixed .u64) .nat)), (some 2)), (1, (.pair (.fixed .u64) .nat), (some 1)), (0, (.list (.pair (.fixed .u64) .nat)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 70)) none (.block (.mk [(.mk (.bind (.generated .operand 68)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 66)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 66))))), (.mk (.bind (.generated .operand 69)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 67)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 67)))))] (.call (.runtime .compare) [(.move (.generated .operand 68)), (.move (.generated .operand 69))] false))))]) (tail := (.cond (.matchOn (.move (.generated .holder 70)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))]) (.mk [] (.call (.function 12) [(.move (.generated .binding 2))] false)) (.mk [] (.lit (.bool false))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .holder 70)) none (.block (.mk [(.mk (.bind (.generated .operand 68)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 66)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 66))))), (.mk (.bind (.generated .operand 69)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 67)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 67)))))] (.call (.runtime .compare) [(.move (.generated .operand 68)), (.move (.generated .operand 69))] false))))]) (ce := (.matchOn (.move (.generated .holder 70)) [(.mk (.ordering .less) (.mk [] (.lit (.bool true)))), (.mk (.ordering .same) (.mk [] (.lit (.bool false)))), (.mk (.ordering .more) (.mk [] (.lit (.bool false))))])) (lk := []) (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 68)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 66)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 66))))), (.mk (.bind (.generated .operand 69)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 67)), .wild]) none (.copy (.generated .binding 3)))] (.move (.generated .part 67)))))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 68)), (.move (.generated .operand 69))] false)) (Corr.prim (ts := [(.fixed .u64), (.fixed .u64)]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 66)), .wild]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 66))) (Corr.first (ta := (.fixed .u64)) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 67)), .wild]) none (.copy (.generated .binding 3)))]) (tail := (.move (.generated .part 67))) (Corr.first (ta := (.fixed .u64)) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.list (.pair (.fixed .u64) .nat)), none), (3, (.pair (.fixed .u64) .nat), (some 3)), (2, (.list (.pair (.fixed .u64) .nat)), (some 2)), (1, (.pair (.fixed .u64) .nat), (some 1)), (0, (.list (.pair (.fixed .u64) .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(4, (.list (.pair (.fixed .u64) .nat)), none), (3, (.pair (.fixed .u64) .nat), (some 3)), (2, (.list (.pair (.fixed .u64) .nat)), (some 2)), (1, (.pair (.fixed .u64) .nat), (some 1)), (0, (.list (.pair (.fixed .u64) .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, (.list (.pair (.fixed .u64) .nat)), none), (3, (.pair (.fixed .u64) .nat), (some 3)), (2, (.list (.pair (.fixed .u64) .nat)), (some 2)), (1, (.pair (.fixed .u64) .nat), (some 1)), (0, (.list (.pair (.fixed .u64) .nat)), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 12) [(.move (.generated .binding 2))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.list (.pair (.fixed .u64) .nat))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ - -theorem fun13 : FunOK program krate flags 13 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 6) [(.clone (.generated .binding 0))] false) (.mk [] (.cond (.call (.function 8) [(.clone (.generated .binding 2))] false) (.mk [] (.cond (.call (.function 10) [(.clone (.generated .binding 4))] false) (.mk [] (.cond (.call (.function 11) [(.clone (.generated .binding 6))] false) (.mk [] (.cond (.call (.function 12) [(.clone (.generated .binding 8))] false) (.mk [] (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 2)), (.copy (.generated .binding 3)), (.move (.generated .binding 4)), (.copy (.generated .binding 5)), (.move (.generated .binding 6)), (.copy (.generated .binding 7)), (.move (.generated .binding 8)), (.copy (.generated .binding 9))] false)])) (.mk [] (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])))) (.mk [] (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])))) (.mk [] (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])))) (.mk [] (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])))) (.mk [] (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) []))), [(9, (.fixed .u64), (some 9)), (8, (.list (.pair (.fixed .u64) .nat)), (some 8)), (7, .int, (some 7)), (6, (.list (.pair .int .nat)), (some 6)), (5, .bool, (some 5)), (4, (.list (.pair .bool .nat)), (some 4)), (3, (.fixed .i8), (some 3)), (2, (.list (.pair (.fixed .i8) .nat)), (some 2)), (1, (.pair .nat .string), (some 1)), (0, (.list (.pair (.pair .nat .string) .bool)), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 6) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.list (.pair (.pair .nat .string) .bool))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 8) [(.clone (.generated .binding 2))] false) (.mk [] (.cond (.call (.function 10) [(.clone (.generated .binding 4))] false) (.mk [] (.cond (.call (.function 11) [(.clone (.generated .binding 6))] false) (.mk [] (.cond (.call (.function 12) [(.clone (.generated .binding 8))] false) (.mk [] (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 2)), (.copy (.generated .binding 3)), (.move (.generated .binding 4)), (.copy (.generated .binding 5)), (.move (.generated .binding 6)), (.copy (.generated .binding 7)), (.move (.generated .binding 8)), (.copy (.generated .binding 9))] false)])) (.mk [] (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])))) (.mk [] (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])))) (.mk [] (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])))) (.mk [] (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])))) (lb := []) (tb := (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])) (Corr.cond (lc := []) (ce := (.call (.function 8) [(.clone (.generated .binding 2))] false)) (lk := []) (Corr.callOps (ts := [(.list (.pair (.fixed .i8) .nat))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 10) [(.clone (.generated .binding 4))] false) (.mk [] (.cond (.call (.function 11) [(.clone (.generated .binding 6))] false) (.mk [] (.cond (.call (.function 12) [(.clone (.generated .binding 8))] false) (.mk [] (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 2)), (.copy (.generated .binding 3)), (.move (.generated .binding 4)), (.copy (.generated .binding 5)), (.move (.generated .binding 6)), (.copy (.generated .binding 7)), (.move (.generated .binding 8)), (.copy (.generated .binding 9))] false)])) (.mk [] (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])))) (.mk [] (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])))) (.mk [] (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])))) (lb := []) (tb := (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])) (Corr.cond (lc := []) (ce := (.call (.function 10) [(.clone (.generated .binding 4))] false)) (lk := []) (Corr.callOps (ts := [(.list (.pair .bool .nat))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 11) [(.clone (.generated .binding 6))] false) (.mk [] (.cond (.call (.function 12) [(.clone (.generated .binding 8))] false) (.mk [] (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 2)), (.copy (.generated .binding 3)), (.move (.generated .binding 4)), (.copy (.generated .binding 5)), (.move (.generated .binding 6)), (.copy (.generated .binding 7)), (.move (.generated .binding 8)), (.copy (.generated .binding 9))] false)])) (.mk [] (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])))) (.mk [] (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])))) (lb := []) (tb := (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])) (Corr.cond (lc := []) (ce := (.call (.function 11) [(.clone (.generated .binding 6))] false)) (lk := []) (Corr.callOps (ts := [(.list (.pair .int .nat))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 12) [(.clone (.generated .binding 8))] false) (.mk [] (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 2)), (.copy (.generated .binding 3)), (.move (.generated .binding 4)), (.copy (.generated .binding 5)), (.move (.generated .binding 6)), (.copy (.generated .binding 7)), (.move (.generated .binding 8)), (.copy (.generated .binding 9))] false)])) (.mk [] (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])))) (lb := []) (tb := (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])) (Corr.cond (lc := []) (ce := (.call (.function 12) [(.clone (.generated .binding 8))] false)) (lk := []) (Corr.callOps (ts := [(.list (.pair (.fixed .u64) .nat))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 0) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.move (.generated .binding 2)), (.copy (.generated .binding 3)), (.move (.generated .binding 4)), (.copy (.generated .binding 5)), (.move (.generated .binding 6)), (.copy (.generated .binding 7)), (.move (.generated .binding 8)), (.copy (.generated .binding 9))] false)])) (lb := []) (tb := (.construct (.none (.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))) [])) (Corr.build (ts := [(.pair (.option .bool) (.pair (.option .nat) (.pair (.option .nat) (.pair (.option .nat) (.option .nat)))))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair (.pair .nat .string) .bool)), (.pair .nat .string), (.list (.pair (.fixed .i8) .nat)), (.fixed .i8), (.list (.pair .bool .nat)), .bool, (.list (.pair .int .nat)), .int, (.list (.pair (.fixed .u64) .nat)), (.fixed .u64)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))))))))))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | 3 => exact fun3 - | 4 => exact fun4 - | 5 => exact fun5 - | 6 => exact fun6 - | 7 => exact fun7 - | 8 => exact fun8 - | 9 => exact fun9 - | 10 => exact fun10 - | 11 => exact fun11 - | 12 => exact fun12 - | 13 => exact fun13 - | _ + 14 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R9/Compose/RustStd.lex.tex b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R9/Compose/RustStd.lex.tex deleted file mode 100644 index b1451c0d5..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R9/Compose/RustStd.lex.tex +++ /dev/null @@ -1,501 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9, - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.Compose.RustStd.root : @1005 := @1006 { - all: [LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.RustStd.program -@1 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.RustStd.krate -@2 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.RustStd.flags -@3 := Nat -@4 := #2 -@5 := LexLeanTarget.TargetSyntax.Value.nat -@6 := @5 @4 -@7 := LexLeanTarget.TargetSyntax.Ty.nat -@8 := LexLeanTarget.TargetSyntax.Program -@9 := LexLeanPreservation.Rust.RCrate -@10 := LexLeanPreservation.Rust.Flags -@11 := LexLeanPreservation.Rust.WT -@12 := #3 -@14 := @11 @12 @4 -@15 := #1 -@16 := @14 @15 -@17 := #0 -@18 := @5 @17 -@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 -@26 := LexLeanPreservation.Rust.wt_nat @0 -@27 := @11 @0 -@29 := @27 @4 @15 -@34 := {c : @9} -> {A : @10} -> (n : @3) -> @29 @18 @7 -@35 := @26 @1 -@36 := @27 @1 -@37 := @36 @15 -@41 := {A : @10} -> (n : @3) -> @37 @18 @7 -@42 := @35 @2 -@43 := @36 @2 -@46 := (n : @3) -> @43 @18 @7 -@47 := @42 @4 -@49 := @43 @6 @7 -@50 := String -@51 := LexLeanTarget.TargetSyntax.Value.string -@52 := @51 @15 -@53 := LexLeanTarget.TargetSyntax.Ty.string -@54 := @51 @17 -@60 := {p : @8} -> {c : @9} -> {A : @10} -> (s : @50) -> @16 @54 @53 -@62 := LexLeanPreservation.Rust.wt_string @0 -@67 := {c : @9} -> {A : @10} -> (s : @50) -> @29 @54 @53 -@68 := @62 @1 -@72 := {A : @10} -> (s : @50) -> @37 @54 @53 -@73 := @68 @2 -@76 := (s : @50) -> @43 @54 @53 -@77 := @73 @15 -@79 := @43 @52 @53 -@80 := LexLeanTarget.TargetSyntax.Value -@81 := List.nil.{0} -@82 := List.cons.{0} -@83 := @81 @80 -@84 := @82 @80 -@86 := @84 @52 @83 -@88 := @84 @6 @86 -@89 := Prod.{0, 0} -@90 := @89 @3 -@91 := @90 @80 -@92 := 1 -@95 := Prod.mk.{0, 0} @3 @80 -@96 := @95 @92 -@97 := @96 @52 -@98 := 0 -@99 := @95 @98 -@100 := @99 @6 -@101 := @81 @91 -@102 := @82 @91 -@104 := @102 @100 @101 -@106 := @102 @97 @104 -@107 := Bool.false -@108 := LexLeanTarget.TargetSyntax.Function -@109 := LexLeanTarget.TargetSyntax.Program.functions -@110 := @109 @0 -@111 := LexLeanTarget.TargetSyntax.Ty -@112 := @81 @3 -@113 := @81 @111 -@114 := LexLeanTarget.TargetSyntax.Ty.unit -@115 := LexLeanTarget.TargetSyntax.Value.unit -@118 := LexLeanTarget.TargetSyntax.Expr.value @114 @115 -@123 := LexLeanTarget.TargetSyntax.Function.mk @112 @113 @114 @118 -@128 := List.getD.{0} @108 @110 @98 @123 -@132 := fun (__e_n : @3) => - LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.RustStd.root @17 @98 -@133 := LexLeanPreservation.Rust.WTL -@141 := {p : @8} -> {c : @9} -> {A : @10} -> @133 @4 @15 @17 @83 @113 -@143 := LexLeanPreservation.Rust.wtl_nil @0 -@144 := @133 @0 -@150 := {c : @9} -> {A : @10} -> @144 @15 @17 @83 @113 -@151 := @143 @1 -@152 := @144 @1 -@156 := {A : @10} -> @152 @17 @83 @113 -@157 := @151 @2 -@158 := @152 @2 -@159 := @158 @83 -@160 := @159 @113 -@161 := List.{0} -@162 := @161 @80 -@163 := @161 @111 -@164 := #6 -@165 := @11 @164 -@166 := #5 -@167 := @165 @166 -@168 := #4 -@171 := @167 @168 @12 @4 -@172 := #7 -@177 := @133 @172 @164 @166 @4 @15 -@178 := #8 -@181 := @133 @178 @172 @164 -@183 := @84 @166 @12 -@184 := @181 @183 -@185 := @82 @111 -@187 := @185 @168 @4 -@197 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {v : @80} -> {t : @111} -> {vs : @162} -> {ts : @163} -> (h : @171) -> (hs : @177) -> @184 @187 -@199 := LexLeanPreservation.Rust.wtl_cons @0 -@219 := {c : @9} -> - {A : @10} -> - {v : @80} -> - {t : @111} -> - {vs : @162} -> - {ts : @163} -> - (h : @27 @166 @168 @12 @4) -> (hs : @144 @164 @166 @4 @15) -> @144 @172 @164 @183 @187 -@220 := @199 @1 -@236 := {A : @10} -> - {v : @80} -> - {t : @111} -> - {vs : @162} -> - {ts : @163} -> (h : @36 @168 @12 @4) -> (hs : @152 @166 @4 @15) -> @152 @164 @183 @187 -@237 := @220 @2 -@239 := @43 @12 @4 -@241 := @158 @4 @15 -@249 := {v : @80} -> - {t : @111} -> {vs : @162} -> {ts : @163} -> (h : @239) -> (hs : @241) -> @158 @183 @187 -@250 := @237 @52 -@251 := @51 @168 -@253 := @43 @251 @4 -@254 := @51 @164 -@255 := @84 @254 -@263 := {t : @111} -> - {vs : @162} -> {ts : @163} -> (h : @253) -> (hs : @241) -> @158 (@255 @12) @187 -@264 := @250 @53 -@265 := @51 @12 -@267 := @43 @265 @53 -@268 := @51 @166 -@269 := @84 @268 -@271 := @158 (@269 @12) -@272 := @185 @53 -@273 := @272 @4 -@278 := {vs : @162} -> {ts : @163} -> (h : @267) -> (hs : @241) -> @271 @273 -@279 := @264 @83 -@280 := @51 @4 -@282 := @43 @280 @53 -@283 := @159 @15 -@285 := @84 @251 @83 -@290 := {ts : @163} -> (h : @282) -> (hs : @283) -> @158 @285 @273 -@291 := @279 @113 -@293 := @84 @265 @83 -@294 := @158 @293 -@295 := @272 @113 -@298 := (h : @79) -> (hs : @160) -> @294 @295 -@299 := @291 @77 -@301 := @84 @280 @83 -@303 := @158 @301 @295 -@304 := (hs : @160) -> @303 -@305 := @299 @157 -@307 := @158 @86 @295 -@308 := @237 @6 -@309 := @5 @166 -@311 := @43 @309 @4 -@312 := @5 @172 -@313 := @84 @312 -@321 := {t : @111} -> - {vs : @162} -> {ts : @163} -> (h : @311) -> (hs : @241) -> @158 (@313 @12) @187 -@322 := @308 @7 -@323 := @5 @168 -@325 := @43 @323 @7 -@326 := @5 @164 -@327 := @84 @326 -@329 := @158 (@327 @12) -@330 := @185 @7 -@331 := @330 @4 -@336 := {vs : @162} -> {ts : @163} -> (h : @325) -> (hs : @241) -> @329 @331 -@337 := @322 @86 -@338 := @5 @12 -@340 := @43 @338 @7 -@341 := @294 @15 -@343 := @84 @309 @285 -@344 := @158 @343 -@348 := {ts : @163} -> (h : @340) -> (hs : @341) -> @344 @331 -@349 := @337 @295 -@351 := @84 @323 @293 -@352 := @158 @351 -@353 := @330 @295 -@356 := (h : @49) -> (hs : @303) -> @352 @353 -@357 := @349 @47 -@359 := @84 @338 @301 -@360 := @158 @359 -@362 := (hs : @307) -> @360 @353 -@363 := @357 @305 -@364 := @158 @88 -@365 := @364 @353 -@366 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.denote -@368 := @366 @4 @15 -@369 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.__fits_0 -@371 := @369 @4 @15 -@374 := Coverage.Colls.literals @4 @15 -@376 := @89 @50 @3 -@377 := @161 @376 -@378 := @161 @3 -@379 := @90 @378 -@380 := @161 @379 -@382 := @89 @378 @380 -@383 := LexLeanPreservation.encPair -@387 := @383 @50 @3 @51 @5 -@388 := LexLeanPreservation.encList -@390 := @388 @376 @387 -@392 := @388 @3 @5 -@396 := @383 @3 @378 @5 @392 -@398 := @388 @379 @396 -@402 := @383 @378 @380 @392 @398 -@407 := @383 @377 @382 @390 @402 @374 -@410 := LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.root @4 @15 -@411 := Bool -@412 := Ne.{1} -@413 := LexLeanPreservation.Obs -@414 := @412 @413 -@415 := LexLeanPreservation.Rel -@418 := @414 (@415 @15 @17) -@419 := LexLeanPreservation.Obs.stuck -@422 := (f : @411) -> (v : @80) -> @418 @419 -@424 := LexLeanPreservation.Rust.rel_ne_stuck @371 -@431 := (v : @80) -> @414 (@415 (@369 @12 @4) @17) @419 -@432 := @424 @407 -@436 := @414 (@415 @371 @407) @419 -@437 := @161 @91 -@438 := LexLeanPreservation.Rust.FunSem -@439 := #9 -@445 := (n : @3) -> @438 @439 @178 @172 @17 @164 -@446 := Eq.{1} -@447 := Option.{0} -@448 := @447 @108 -@449 := @446 @448 -@456 := LexLeanRuntime.index (@161 @108) @108 (LexLeanRuntime.instIndexableList @108) -@460 := @449 (@456 (@109 @439) @164) -@461 := Option.some.{0} -@462 := @461 @108 -@463 := @462 @166 -@464 := @460 @463 -@465 := #10 -@469 := @133 @465 @439 @178 @166 -@470 := LexLeanTarget.TargetSyntax.Function.types -@471 := @470 @164 -@472 := @469 @471 -@473 := @447 @437 -@474 := @446 @473 -@475 := LexLeanTarget.TargetSemantics.bindAll -@476 := LexLeanTarget.TargetSyntax.Function.parameters -@481 := @474 (@475 (@476 @172) @164 @101) -@482 := @461 @437 -@483 := @482 @166 -@484 := @481 @483 -@485 := @447 @411 -@486 := @446 @485 -@487 := LexLeanPreservation.Rust.fnFallible -@488 := #11 -@491 := @486 (@487 @488 @439) -@492 := @461 @411 -@493 := @492 @166 -@494 := @491 @493 -@495 := LexLeanPreservation.RunConv -@496 := #13 -@500 := @495 @496 @465 @178 @166 -@502 := @414 @164 @419 -@503 := Exists.{1} -@504 := LexLeanPreservation.Rust.ROut -@505 := @503 @504 -@506 := And -@507 := LexLeanPreservation.Rust.RealizesFn -@511 := @506 (@507 @439 @178 @17) -@512 := LexLeanPreservation.Rust.RCI -@514 := @512 #15 -@515 := LexLeanPreservation.Rust.fnIdent -@516 := @515 @496 -@523 := (hne : @502) -> @505 (fun (ro : @504) => @511 (@514 @516 @488 @17)) -@538 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {f : @3} -> - {fn : @108} -> - {args : @162} -> - {env : @437} -> - {F : @411} -> - {o : @413} -> - (hB : @445) -> - (hfn : @464) -> (hwt : @472) -> (hbind : @484) -> (hF : @494) -> (hA : @500) -> @523 -@540 := LexLeanPreservation.Rust.compose @0 -@541 := @438 @0 -@546 := (n : @3) -> @541 @178 @172 @17 @164 -@547 := @456 @110 -@550 := @449 (@547 @164) @463 -@554 := @144 @439 @178 @166 @471 -@555 := @495 @0 -@558 := @555 @465 @178 @166 -@572 := {c : @9} -> - {A : @10} -> - {f : @3} -> - {fn : @108} -> - {args : @162} -> - {env : @437} -> - {F : @411} -> - {o : @413} -> - (hB : @546) -> - (hfn : @550) -> (hwt : @554) -> (hbind : @484) -> (hF : @494) -> (hA : @558) -> @523 -@573 := @540 @1 -@574 := @541 @1 -@578 := (n : @3) -> @574 @172 @17 @164 -@581 := @152 @178 @166 @471 -@582 := @487 @1 -@585 := @486 (@582 @439) @493 -@586 := @512 @1 -@596 := (hbind : @484) -> - (hF : @585) -> (hA : @558) -> (hne : @502) -> @505 (fun (ro : @504) => @511 (@586 @516 @488 @17)) -@606 := {A : @10} -> - {f : @3} -> - {fn : @108} -> - {args : @162} -> - {env : @437} -> {F : @411} -> {o : @413} -> (hB : @578) -> (hfn : @550) -> (hwt : @581) -> @596 -@607 := @573 @2 -@609 := @574 @2 @17 -@611 := (n : @3) -> @609 @164 -@612 := @158 @166 -@613 := @612 @471 -@622 := {f : @3} -> - {fn : @108} -> - {args : @162} -> - {env : @437} -> {F : @411} -> {o : @413} -> (hB : @611) -> (hfn : @550) -> (hwt : @613) -> @596 -@623 := @607 @98 -@625 := (n : @3) -> @609 @98 -@626 := @547 @98 -@627 := @449 @626 -@628 := @627 @463 -@629 := @582 @98 -@630 := @486 @629 -@631 := @630 @493 -@632 := @555 @98 -@634 := @632 @178 @166 -@636 := @586 (@515 @98) -@644 := (hF : @631) -> (hA : @634) -> (hne : @502) -> @505 (fun (ro : @504) => @511 (@636 @488 @17)) -@653 := {fn : @108} -> - {args : @162} -> - {env : @437} -> - {F : @411} -> {o : @413} -> (hB : @625) -> (hfn : @628) -> (hwt : @613) -> (hbind : @484) -> @644 -@654 := @623 @128 -@656 := @627 (@462 @128) -@657 := @470 @128 -@658 := @612 @657 -@660 := @475 (@476 @128) -@672 := {args : @162} -> - {env : @437} -> - {F : @411} -> - {o : @413} -> - (hB : @625) -> (hfn : @656) -> (hwt : @658) -> (hbind : @474 (@660 @164 @101) @483) -> @644 -@673 := @654 @88 -@675 := @313 (@255 @83) -@677 := @158 @675 @657 -@683 := @84 (@5 @178) (@84 (@51 @172) @83) -@687 := @474 (@660 @683 @101) @483 -@693 := @84 (@5 @465) (@84 (@51 @439) @83) -@695 := @632 @693 @166 -@697 := @84 (@5 @496) -@698 := #12 -@717 := {env : @437} -> - {F : @411} -> - {o : @413} -> - (hB : @625) -> - (hfn : @656) -> - (hwt : @677) -> - (hbind : @687) -> - (hF : @631) -> - (hA : @695) -> - (hne : @502) -> @505 (fun (ro : @504) => @511 (@636 (@697 (@84 (@51 @698) @83)) @17)) -@718 := @673 @106 -@720 := @327 (@269 @83) -@722 := @158 @720 @657 -@733 := @474 (@660 @675 @101) (@482 (@102 (@96 @254) (@102 (@99 @312) @101))) -@739 := @84 (@5 @439) (@84 (@51 @178) @83) -@761 := {F : @411} -> - {o : @413} -> - (hB : @625) -> - (hfn : @656) -> - (hwt : @722) -> - (hbind : @733) -> - (hF : @631) -> - (hA : @632 @739 @166) -> - (hne : @502) -> @505 (fun (ro : @504) => @511 (@636 (@84 (@5 @698) (@84 (@51 @488) @83)) @17)) -@762 := @718 @107 -@763 := @344 @657 -@774 := @474 (@660 @720 @101) (@482 (@102 (@96 @268) (@102 (@99 @326) @101))) -@776 := @630 (@492 @107) -@778 := @632 @683 @166 -@779 := @507 @107 -@801 := {o : @413} -> - (hB : @625) -> - (hfn : @656) -> - (hwt : @763) -> - (hbind : @774) -> - (hF : @776) -> - (hA : @778) -> - (hne : @502) -> - @505 (fun (ro : @504) => @506 (@779 @178 @17) (@636 (@84 (@5 @488) (@84 (@51 @465) @83)) @17)) -@802 := @762 @368 -@803 := @352 @657 -@814 := @474 (@660 @343 @101) (@482 (@102 (@96 @251) (@102 (@99 @309) @101))) -@815 := @632 @675 -@817 := @366 @172 @164 -@818 := @815 @817 -@820 := @366 @178 @172 -@839 := (hB : @625) -> - (hfn : @656) -> - (hwt : @803) -> - (hbind : @814) -> - (hF : @776) -> - (hA : @818) -> - (hne : @414 @820 @419) -> - @505 (fun (ro : @504) => @506 (@779 (@366 @465 @439) @17) (@636 @693 @17)) -@840 := @802 @132 -@841 := @360 @657 -@852 := @474 (@660 @351 @101) (@482 (@102 (@96 @265) (@102 (@99 @323) @101))) -@853 := @632 @720 -@855 := @366 @164 @166 -@874 := (hfn : @656) -> - (hwt : @841) -> - (hbind : @852) -> - (hF : @776) -> - (hA : @853 @855) -> - (hne : @414 @817 @419) -> - @505 (fun (ro : @504) => @506 (@779 (@366 @439 @178) @17) (@636 @739 @17)) -@875 := Eq.refl.{1} -@878 := @840 (@875 @448 @626) -@879 := @364 @657 -@890 := @474 (@660 @359 @101) (@482 (@102 (@96 @280) (@102 (@99 @338) @101))) -@891 := @632 @343 -@893 := @366 @166 @168 -@909 := (hwt : @879) -> - (hbind : @890) -> - (hF : @776) -> - (hA : @891 @893) -> - (hne : @414 @855 @419) -> @505 (fun (ro : @504) => @506 (@779 @820 @17) (@636 @683 @17)) -@910 := @878 @363 -@912 := @660 @88 @101 -@915 := @474 @912 (@482 @106) -@916 := @632 @351 -@918 := @366 @168 @12 -@933 := (hbind : @915) -> - (hF : @776) -> - (hA : @916 @918) -> - (hne : @414 @893 @419) -> @505 (fun (ro : @504) => @506 (@779 @817 @17) (@636 @675 @17)) -@936 := @910 (@875 @473 @912) -@937 := @632 @359 -@939 := @366 @12 @4 -@953 := (hF : @776) -> - (hA : @937 @939) -> - (hne : @414 @918 @419) -> @505 (fun (ro : @504) => @506 (@779 @855 @17) (@636 @720 @17)) -@956 := @936 (@875 @485 @629) -@970 := (hA : @632 @88 @368) -> - (hne : @414 @939 @419) -> @505 (fun (ro : @504) => @506 (@779 @893 @17) (@636 @343 @17)) -@971 := @956 @410 -@982 := (hne : @414 @368 @419) -> @505 (fun (ro : @504) => @506 (@779 @918 @17) (@636 @351 @17)) -@983 := @971 @432 -@989 := @506 (@779 @939 @17) (@636 @359 @17) -@991 := @505 (fun (ro : @504) => @989) -@993 := @505 (fun (__e_ro : @504) => @989) -@994 := LexLeanPreservation.Rust.RepresentableL -@995 := @5 @15 -@997 := @84 @54 @83 -@1000 := @994 (@84 @995 @997) -@1001 := (__e_hrep : @1000) -> @993 -@1002 := fun (__e_hrep : @1000) => @983 -@1003 := (s : @50) -> @1001 -@1004 := fun (s : @50) => @1002 -@1005 := (x : @3) -> @1003 -@1006 := fun (x : @3) => @1004 -\end{coremodule} -\end{lexlean} diff --git a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R9/RustStd.lean b/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R9/RustStd.lean deleted file mode 100644 index b813a7277..000000000 --- a/examples/production-coverage/expected/verify/preserve/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R9/RustStd.lean +++ /dev/null @@ -1,33 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1], types := [.nat, .string], result := (.pair (.list (.pair .string .nat)) (.pair (.list .nat) (.list (.pair .nat (.list .nat))))), - body := (.build .pair (.pair (.list (.pair .string .nat)) (.pair (.list .nat) (.list (.pair .nat (.list .nat))))) [(.build .cons (.list (.pair .string .nat)) [(.build .pair (.pair .string .nat) [(.value .string (.string "a")), (.var 0)]), (.build .cons (.list (.pair .string .nat)) [(.build .pair (.pair .string .nat) [(.value .string (.string "b")), (.value .nat (.nat 2))]), (.build .nil (.list (.pair .string .nat)) [])])]), (.build .pair (.pair (.list .nat) (.list (.pair .nat (.list .nat)))) [(.build .cons (.list .nat) [(.value .nat (.nat 1)), (.build .cons (.list .nat) [(.value .nat (.nat 3)), (.build .nil (.list .nat) [])])]), (.build .cons (.list (.pair .nat (.list .nat))) [(.build .pair (.pair .nat (.list .nat)) [(.value .nat (.nat 1)), (.build .cons (.list .nat) [(.value .nat (.nat 2)), (.build .nil (.list .nat) [])])]), (.build .cons (.list (.pair .nat (.list .nat))) [(.build .pair (.pair .nat (.list .nat)) [(.value .nat (.nat 2)), (.build .cons (.list .nat) [(.value .nat (.nat 1)), (.build .nil (.list .nat) [])])]), (.build .nil (.list (.pair .nat (.list .nat))) [])])])])]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := .wild, type := .str }] (.pair (.list (.pair .str .nat)) (.pair (.list .nat) (.list (.pair .nat (.list .nat))))) (.mk [] (.pair (.construct .cons [(.pair (.lit (.str "a")) (.copy (.generated .binding 0))), (.construct .cons [(.pair (.lit (.str "b")) (.lit (.nat 2))), (.construct (.nil (.pair .str .nat)) [])])]) (.pair (.construct .cons [(.lit (.nat 1)), (.construct .cons [(.lit (.nat 3)), (.construct (.nil .nat) [])])]) (.construct .cons [(.pair (.lit (.nat 1)) (.construct .cons [(.lit (.nat 2)), (.construct (.nil .nat) [])])), (.construct .cons [(.pair (.lit (.nat 2)) (.construct .cons [(.lit (.nat 1)), (.construct (.nil .nat) [])])), (.construct (.nil (.pair .nat (.list .nat))) [])])])))))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [], (.pair (.construct .cons [(.pair (.lit (.str "a")) (.copy (.generated .binding 0))), (.construct .cons [(.pair (.lit (.str "b")) (.lit (.nat 2))), (.construct (.nil (.pair .str .nat)) [])])]) (.pair (.construct .cons [(.lit (.nat 1)), (.construct .cons [(.lit (.nat 3)), (.construct (.nil .nat) [])])]) (.construct .cons [(.pair (.lit (.nat 1)) (.construct .cons [(.lit (.nat 2)), (.construct (.nil .nat) [])])), (.construct .cons [(.pair (.lit (.nat 2)) (.construct .cons [(.lit (.nat 1)), (.construct (.nil .nat) [])])), (.construct (.nil (.pair .nat (.list .nat))) [])])]))), [(1, .string, none), (0, .nat, (some 0))], rfl, rfl, - (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.pair .string .nat), (.list (.pair .string .nat))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.pair .string .nat), (.list (.pair .string .nat))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.pair .nat (.list .nat)), (.list (.pair .nat (.list .nat)))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.pair .nat (.list .nat)), (.list (.pair .nat (.list .nat)))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) (Corr.lNil)))))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | _ + 1 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.RustStd diff --git a/examples/production-coverage/expected/verify/preserve/audit.txt b/examples/production-coverage/expected/verify/preserve/audit.txt index 910d7f1c4..dd6bfae21 100644 --- a/examples/production-coverage/expected/verify/preserve/audit.txt +++ b/examples/production-coverage/expected/verify/preserve/audit.txt @@ -7737,356 +7737,356 @@ 'LexLeanPreservation.encOption.eq_2' does not depend on any axioms 'LexLeanPreservation.encPair.eq_1' does not depend on any axioms 'LexLeanPreservation.encUnit.eq_1' does not depend on any axioms -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.RustCore.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.RustCore.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.RustCore.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.RustCore.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.RustCore.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.RustCore.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.RustCore.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.RustCore.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.RustCore.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.RustCore.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.RustCore.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.RustCore.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.RustCore.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.RustCore.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.RustCore.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.RustCore.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.RustCore.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.RustCore.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.RustCore.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.RustCore.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.RustCore.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.RustCore.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.RustCore.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.RustCore.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.RustCore.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.RustCore.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.RustCore.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.RustCore.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.RustCore.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.RustCore.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.Compose.RustCore.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.Compose.RustCore.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.Compose.RustCore.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.Compose.RustCore.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.Compose.RustCore.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.Compose.RustCore.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustCore.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustCore.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.Compose.RustCore.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.Compose.RustCore.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.Compose.RustCore.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.Compose.RustCore.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.Compose.RustCore.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.Compose.RustCore.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.Compose.RustCore.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.Compose.RustCore.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.Compose.RustCore.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.Compose.RustCore.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.Compose.RustCore.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.Compose.RustCore.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.Compose.RustCore.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.Compose.RustCore.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.Compose.RustCore.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.Compose.RustCore.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.Compose.RustCore.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.Compose.RustCore.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.Compose.RustCore.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.Compose.RustCore.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.Compose.RustCore.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.Compose.RustCore.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.Compose.RustStd.__wt_0' depends on axioms: [propext] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.Compose.RustStd.__wtItems_0' depends on axioms: [propext] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.Compose.RustStd.__wtAux_1' depends on axioms: [propext] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.Compose.RustStd.__wtItems_3' depends on axioms: [propext] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.Compose.RustStd.__wtAux_4' depends on axioms: [propext] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.Compose.RustStd.__wtAux_2' depends on axioms: [propext] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.Compose.RustStd.__wt_1' depends on axioms: [propext] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.Compose.RustCore.__wt_0' depends on axioms: [propext] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.Compose.RustStd.__wt_0' depends on axioms: [propext] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.Compose.RustStd.__wt_0' depends on axioms: [propext] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustCore.__wt_0' depends on axioms: [propext] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustCore.__wt_1' depends on axioms: [propext] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustCore.__wt_2' depends on axioms: [propext] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustStd.__wt_0' depends on axioms: [propext] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustStd.__wt_1' depends on axioms: [propext] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustStd.__wt_2' depends on axioms: [propext] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.Compose.RustStd.__wt_0' depends on axioms: [propext] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.Compose.RustStd.__wtItems_0' depends on axioms: [propext] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.Compose.RustStd.__wt_0' depends on axioms: [propext] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.Compose.RustStd.__wt_1' depends on axioms: [propext] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.Compose.RustStd.__wtItems_0' depends on axioms: [propext] -'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.Compose.RustStd.__wt_0' depends on axioms: [propext] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.Compose.RustStd.__wt_0' depends on axioms: [propext] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.Compose.RustStd.__wtItems_0' depends on axioms: [propext] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.Compose.RustStd.__wtAux_1' depends on axioms: [propext] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.Compose.RustStd.__wtItems_3' depends on axioms: [propext] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.Compose.RustStd.__wtAux_4' depends on axioms: [propext] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.Compose.RustStd.__wtAux_2' depends on axioms: [propext] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.Compose.RustStd.__wt_1' depends on axioms: [propext] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.Compose.RustCore.__wt_0' depends on axioms: [propext] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.Compose.RustStd.__wt_0' depends on axioms: [propext] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.Compose.RustStd.__wt_0' depends on axioms: [propext] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustCore.__wt_0' depends on axioms: [propext] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustCore.__wt_1' depends on axioms: [propext] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustCore.__wt_2' depends on axioms: [propext] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustStd.__wt_0' depends on axioms: [propext] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustStd.__wt_1' depends on axioms: [propext] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustStd.__wt_2' depends on axioms: [propext] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.Compose.RustStd.__wt_0' depends on axioms: [propext] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.Compose.RustStd.__wtItems_0' depends on axioms: [propext] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.Compose.RustStd.__wt_0' depends on axioms: [propext] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.Compose.RustStd.__wt_1' depends on axioms: [propext] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.Compose.RustStd.__wtItems_0' depends on axioms: [propext] +'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.Compose.RustStd.__wt_0' depends on axioms: [propext] -- statement vocabulary inductive LexLeanPreservation.Obs : Type number of parameters: 0 diff --git a/examples/production-coverage/expected/verify/preserve/preservation.json b/examples/production-coverage/expected/verify/preserve/preservation.json index 4b511c6ee..7fc9215e7 100644 --- a/examples/production-coverage/expected/verify/preserve/preservation.json +++ b/examples/production-coverage/expected/verify/preserve/preservation.json @@ -1 +1 @@ -{"library":{"axioms":["Classical.choice","Quot.sound","propext"],"registry_sha256":"02de6e4be5a6ae43997bacd3713ea587693b8ac66da4aef567463a535a076ff3"},"roots":[{"byte_length":57998,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0","program":{"byte_length":19449,"sha256":"1aadfc9ba4fd60d7060d145ef97656e0bca23924ec77e487808d5faae1ada33d"},"renderings":[{"byte_length":85650,"composed":{"byte_length":57221,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.Compose.RustStd","sha256":"ef16c1d158065592484689c0c3b3e3e6bcdfe7be098467540ff53f8985e17c62","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.Compose.RustStd.root"},"crate":{"byte_length":22556,"sha256":"77ab666847a104f8f578a1f8e741421430e9fed92895817a111f50a95178b620"},"entry":{"function":18,"symbol":"f18"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.RustStd","sha256":"3ce949931dbd00f34b2e5848650a8589633aee9f7f2dd3711dd9d1b29cd25b7b","target":"rust-std","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.RustStd.root"}],"root":"Coverage.Boundary.groveRoot","sha256":"a5c01190f937b1843e326198d03410932ae2cce953def60d4f8e7ff675b68bdb","targets":["rust-std"],"theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.root"},{"byte_length":29473,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1","program":{"byte_length":16945,"sha256":"befbd0f6a81345584eccc0e352073fcc65d585f2ff9b002aad0cfac26a5a426f"},"renderings":[{"byte_length":59928,"composed":{"byte_length":21729,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.Compose.RustStd","sha256":"e0003787dd6f204d596c98733874ae98cc5275a1c733b26fe1db010b10f84ee3","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.Compose.RustStd.root"},"crate":{"byte_length":19105,"sha256":"5d5216f8cd8580e08122755e5fd0aa617b9ba4b46fd2dcb000f6d7503c307f92"},"entry":{"function":10,"symbol":"f10"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.RustStd","sha256":"c2488f89ff0a32f2d8b5c5899b3fdedaceb1de2dd8832b2d6750baf77f126756","target":"rust-std","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.RustStd.root"}],"root":"Coverage.Colls.mapOps","sha256":"76bb5f6b6ec0515f68e727233214bf5226081ba35443b66e13b626f62df39986","targets":["rust-std"],"theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.root"},{"byte_length":13128,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2","program":{"byte_length":4015,"sha256":"db2b0f171e75cff8b9931bc693e039342501c8d43f2d2a653bd29728fe777dc1"},"renderings":[{"byte_length":25017,"composed":{"byte_length":19445,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.Compose.RustStd","sha256":"4aef7e57452011725303ac0739e3d6756c91fef2006ebb974499efc9bc2fc7e0","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.Compose.RustStd.root"},"crate":{"byte_length":15540,"sha256":"014aa5f97db48ae59c8841bf98cd515f65a1be0c24b3fd1095cc48ebb6c83fc1"},"entry":{"function":5,"symbol":"f5"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.RustStd","sha256":"bc8fcf5d50cd3005c0ecc874e7a577068eead7e045cc139745b4b2c1d34cdf10","target":"rust-std","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.RustStd.root"}],"root":"Coverage.Colls.mapFolding","sha256":"3dfdd77fb5359ed5aa828ac6df46ebc9f834432d4c969de70d7f7859c971518f","targets":["rust-std"],"theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.root"},{"byte_length":26754,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3","program":{"byte_length":16755,"sha256":"ff65cb9f421e37305a20ed392f155a0aabde61713d63520082effd9e2006231d"},"renderings":[{"byte_length":61996,"composed":{"byte_length":18245,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.Compose.RustStd","sha256":"73f915579f2c9b30bef23ae2bd42b0cc25de6627caf7437ff34669fd762ff5f8","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.Compose.RustStd.root"},"crate":{"byte_length":19344,"sha256":"b735c8c86aaac3de962c4a35440898953b1162fd156ada72eb075744426d87e1"},"entry":{"function":11,"symbol":"f11"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.RustStd","sha256":"b343f3c449369609f336d90edeeb160133270ce46739335c11713fb8c19782cf","target":"rust-std","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.RustStd.root"}],"root":"Coverage.Colls.setOps","sha256":"5adb39f144229148e6c8d2a6da87b054708c11ec4825d1d79c5f40d0392b5992","targets":["rust-std"],"theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.root"},{"byte_length":13311,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4","program":{"byte_length":4435,"sha256":"48b1d22aff3beb88a3f286056475ac74e9a357ff9dc339c89b802249153cebbd"},"renderings":[{"byte_length":21903,"composed":{"byte_length":17987,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.Compose.RustStd","sha256":"a89ac9e2317555897bffa5cdfcc2615b08a07c0990e13e4c11988dc9bb7fffc0","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.Compose.RustStd.root"},"crate":{"byte_length":15272,"sha256":"cf60ae7366ecb8b9565507fd1247024683dfd01ad6d22c2db0aeb6f250c1b307"},"entry":{"function":6,"symbol":"f6"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.RustStd","sha256":"7c6d81d5f76ee438d6b3f280f5be80429d2f4e708b1ec881f89fd909099a2234","target":"rust-std","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.RustStd.root"}],"root":"Coverage.Colls.folds","sha256":"62b63a070cb9461cb969d7e0eae493f24d9ffb360657650d1891b8c4c5810253","targets":["rust-std"],"theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.root"},{"byte_length":9201,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5","program":{"byte_length":3448,"sha256":"17fa1f466a5d992c3b54152d0a758cd23d38d1b2fda1ef5693cc06700cabe223"},"renderings":[{"byte_length":14771,"composed":{"byte_length":13364,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.Compose.RustStd","sha256":"36deae0c0d8563e6b76cab58241b60f618158848ed09720240ab20b7d924c4d0","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.Compose.RustStd.root"},"crate":{"byte_length":14251,"sha256":"b07e6313d5996c7f489f6ff31b6047d7bdd30fac8dc0ab06dd2de5c165773171"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.RustStd","sha256":"111adb1894fcfe6c1653d38324a3244649f1369af5f7b708b3804c0aebca03ee","target":"rust-std","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.RustStd.root"}],"root":"Coverage.Colls.iterations","sha256":"ce1200e6ec899ba84b4e2b461464e4483e731d6738e8002a69904803a4721eda","targets":["rust-std"],"theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.root"},{"byte_length":30366,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6","program":{"byte_length":32854,"sha256":"54b3c6a08367cfc9abac0716d282f9bfd50bcfffd1c1c0a5693bf6e6407145e2"},"renderings":[{"byte_length":153083,"composed":{"byte_length":20096,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.Compose.RustStd","sha256":"493e4bae60c9d8ab6ff23016d1fd67892f58a557f14c1969c7be82ea5d5a4b19","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.Compose.RustStd.root"},"crate":{"byte_length":28628,"sha256":"d53a1fc1f9cf1f4e7366e8dcf3dea4f3e858227e7739718651f7bd74ea86be6f"},"entry":{"function":30,"symbol":"f30"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.RustStd","sha256":"61d434095df56a1df6f7937d7faa558cb634d2c5a083d2ab9a8c31859cb20c5e","target":"rust-std","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.RustStd.root"}],"root":"Coverage.Colls.graphs","sha256":"1b6c7469e60260882f119d13ae71c900c307f91594bbd9f2bdc4e6da36ef0f92","targets":["rust-std"],"theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.root"},{"byte_length":19714,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7","program":{"byte_length":17014,"sha256":"bbf596ebb9eca8da32bc60cf81d5aed9f971a815f74ed865dc65f5b5acd7c475"},"renderings":[{"byte_length":82886,"composed":{"byte_length":18641,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.Compose.RustStd","sha256":"806eb552ae1f507eaf5cca4748292faa2fe970f474b352f968d7e949653e844c","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.Compose.RustStd.root"},"crate":{"byte_length":21438,"sha256":"b7f9d495a96503043078bb00af86cac5d22f3a92bef084ff7b8d41e5a157014e"},"entry":{"function":15,"symbol":"f15"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.RustStd","sha256":"a39a1ad2a60c3bf9ec4fc1423399b6b4ca2f01ae4eb41391915266fbb8f4d08a","target":"rust-std","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.RustStd.root"}],"root":"Coverage.Colls.stringGraph","sha256":"11f26ef2c7421709911b32eefe9662ad1b44acb6c68799b0e3b5c785993668b4","targets":["rust-std"],"theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.root"},{"byte_length":46481,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8","program":{"byte_length":22112,"sha256":"fc3e6614b68e0f0cf2e4fcd7831a0a8ac5a84ade2a42c08eabcd0d2ddc8abe3f"},"renderings":[{"byte_length":117400,"composed":{"byte_length":45654,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.Compose.RustStd","sha256":"e91efc9e6f956c1dfa37483d0deb701076a8d792b85b244df36d2545fec0e338","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.Compose.RustStd.root"},"crate":{"byte_length":26043,"sha256":"bf8749dca9d3b9f015f7261c88b60dea927138244a7b63985e6966ad4147d00f"},"entry":{"function":13,"symbol":"f13"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.RustStd","sha256":"094fc8463139a21d29f91d7bb97bfa645260908e597658cf6ce695d2ae4f774b","target":"rust-std","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.RustStd.root"}],"root":"Coverage.Colls.keyTypes","sha256":"279da597c3b8c76a0d351ea80a7298a35d06cbc1d5fd5b455d972e0dd11e09d3","targets":["rust-std"],"theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.root"},{"byte_length":9008,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9","program":{"byte_length":3996,"sha256":"c7a7def9b6c20967b79d34ac878ad3bd945e7e8a5f7ba59728f515c9495f8d2c"},"renderings":[{"byte_length":5833,"composed":{"byte_length":14316,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.Compose.RustStd","sha256":"2c21b504b0d9bcaae9369c5274d602f8a78cf14ddb46e85ceaf31ef659393b98","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.Compose.RustStd.root"},"crate":{"byte_length":13175,"sha256":"a33503946fd052ef363ed726a5ef3cab80d9029bf159effcb5ca3ee3f234125d"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.RustStd","sha256":"67b219ac633d585f0614b6440e7f35351269c31ac3e4cabfbd488a0fb9da4533","target":"rust-std","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.RustStd.root"}],"root":"Coverage.Colls.literals","sha256":"619d84422924c6f935694546c09a12ab8259a900a4de858ca0a1440cdac95039","targets":["rust-std"],"theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.root"},{"byte_length":7971,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10","program":{"byte_length":1746,"sha256":"7327b0d3e0e2b92c9e324f0b8f38bf8b9a4866af1fab582ce3cb3471b3faac1f"},"renderings":[{"byte_length":13257,"composed":{"byte_length":13207,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.Compose.RustCore","sha256":"66bd36a17cf6d3b9e298380bb3b12b8e5611768ae90f08844550c5538f08d5ce","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.Compose.RustCore.root"},"crate":{"byte_length":4767,"sha256":"af030ef915059e74c7c2a7439cdd2f3e87f0ff1e956993fbdc5ad7c010e3c87a"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.RustCore","sha256":"22d254f38d45611cbaddae87763dfe9c69d27f60ab094ad4d00e95f385aaa144","target":"rust-core","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.RustCore.root"},{"byte_length":13254,"composed":{"byte_length":13198,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.Compose.RustStd","sha256":"222788ec908aff31c1a1e0887d31caf632617664527c288457e02e26bc12af44","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.Compose.RustStd.root"},"crate":{"byte_length":13685,"sha256":"ee0fea13fd0bcd6a8f38ac930442b23f7dcf051f188f1661a7305f3d1e9b69a5"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.RustStd","sha256":"8f24b7fd2961257976ddca5c9e7150888e6d8fa10d39fb5e9824b5f5f8984aba","target":"rust-std","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.RustStd.root"}],"root":"Coverage.Main.natOps","sha256":"c519ba57ccc3d8c9f878e881f81803e4b6b81b71805e086f3607f6d06641ae2a","targets":["rust-core","rust-std"],"theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.root"},{"byte_length":4871,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11","program":{"byte_length":772,"sha256":"6f167a8d46f8923a927e311666264729d573c3b8593155abef2114631b1b0283"},"renderings":[{"byte_length":6973,"composed":{"byte_length":13231,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.Compose.RustCore","sha256":"31f1a24e8a3b1803b1582ca187f154f168d4de50f4d158cfefcdcfd14cbd91e1","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.Compose.RustCore.root"},"crate":{"byte_length":4340,"sha256":"1fd22968eef8b396fb2c0032d03104ae83717176fc2919b9876d5a2d7a73e0e9"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.RustCore","sha256":"fbe709a7ab05c1361a2e3f37d3efd1eb679314baa9cb3c6c03e6ad676bc4dfe4","target":"rust-core","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.RustCore.root"},{"byte_length":6970,"composed":{"byte_length":13222,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.Compose.RustStd","sha256":"b17d81507821a42557a0d4d68989dd9d8030cd89d34aaa14d677982c676b2aaf","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.Compose.RustStd.root"},"crate":{"byte_length":13258,"sha256":"35a8c124f4644cb2f70ee53bb1a4766ebb427587204f1c193338913fdb89fd1c"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.RustStd","sha256":"78a1ce3f5d88035dccac66aa31d8f46cfb971101d37c79a643dcfd4f92edb695","target":"rust-std","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.RustStd.root"}],"root":"Coverage.Main.intOps","sha256":"615133adeb1e11ca155e36777a4a9277946b06a8a90f053a8411f2dcfedd6951","targets":["rust-core","rust-std"],"theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.root"},{"byte_length":9164,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12","program":{"byte_length":1624,"sha256":"05293367c4a6e86e29d41974b883426e97957fbbc411382de01e1da3e41879c8"},"renderings":[{"byte_length":8984,"composed":{"byte_length":17187,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.Compose.RustCore","sha256":"6b383060c5d4fd76e93db5e6011af28c0014b5a0132a258b7ae0565a6a423409","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.Compose.RustCore.root"},"crate":{"byte_length":4616,"sha256":"9a588c5405d0805e8b71a3c168ecca7d5a7941a10b3707e884a8200765963074"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.RustCore","sha256":"e2cc2e022a86b8de1f09606e1421f412b7571f1336d7805ade3f549d23d9a081","target":"rust-core","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.RustCore.root"},{"byte_length":8981,"composed":{"byte_length":17176,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.Compose.RustStd","sha256":"f0e787b61cb72016c33d3b875de6a67bdff1521f71616c619d5f3b76cda472c4","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.Compose.RustStd.root"},"crate":{"byte_length":13534,"sha256":"57df19a47ce392a82bdfe801f4e334b35198361a066b7dd6063f679c07bebbe5"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.RustStd","sha256":"a73c64c35e491e53cfb1e0e449d17461eb885b9eb90acc27080fc9bbb9d8dfc0","target":"rust-std","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.RustStd.root"}],"root":"Coverage.Main.shapes","sha256":"e7a480dbf8cbfaee18e22798f6b8e3823ab43c0451400647bc512f83d68c3f8a","targets":["rust-core","rust-std"],"theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.root"},{"byte_length":6637,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13","program":{"byte_length":1517,"sha256":"43b6eedb7829b3598a29348c532e07d70295631eb2650df5de98d38c3daccb35"},"renderings":[{"byte_length":7237,"composed":{"byte_length":17051,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.Compose.RustStd","sha256":"1123b7e1ae9bae4fe0c5e30f4036e9f7d159317eec39d753bdab7d81c67d8607","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.Compose.RustStd.root"},"crate":{"byte_length":13479,"sha256":"92cec27dd560e7ca0a9f5daa440567b51beb597b69ef56f0678a55f0729d1198"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.RustStd","sha256":"dd6b13e89e0d480bff835bdd6e2bddcfda5dd88039a86c07ab0af57fed11f35d","target":"rust-std","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.RustStd.root"}],"root":"Coverage.Main.treeTotal","sha256":"4d00f902be1b30c196fed06b12f4a19334c25b4e3d7d5baa848bcff073cc13ab","targets":["rust-std"],"theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.root"},{"byte_length":6646,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14","program":{"byte_length":1628,"sha256":"f6c459c7f8163810d05bc43460cd394578f415d182096e2ad51dae6252d4f656"},"renderings":[{"byte_length":7066,"composed":{"byte_length":23308,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustCore","sha256":"8d65ec9db0fa28d69171e4ebc696293cece1c844dfb02a7af8ba496da51c3786","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustCore.root"},"crate":{"byte_length":4685,"sha256":"73a3e27a1326d458fa653a2a3b7057649a690cfc50441d306fc0456004f12045"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.RustCore","sha256":"28ab2486db6b44122a5717e84da4c2a3f9daed111d641799960b7a1ecf568dbf","target":"rust-core","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.RustCore.root"},{"byte_length":7063,"composed":{"byte_length":23293,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustStd","sha256":"40dbf6c6d9b0dd7a0b2e011fc6dded4a428eab6d00abc502228eb2396d141e68","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustStd.root"},"crate":{"byte_length":13603,"sha256":"4b8bab9cd36b1b9026cb5992a83d73f087c3a70988458b0e1f559b5e0d15d812"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.RustStd","sha256":"2fee1aca838e402e24b7c163ab43eaf8bae04a4d062a1ed1f707a757ef196cd0","target":"rust-std","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.RustStd.root"}],"root":"Coverage.Main.records","sha256":"631b90ae1be1c5757e0abc68d5d0305e330bd80376b1082e32cef334015d6b17","targets":["rust-core","rust-std"],"theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.root"},{"byte_length":5198,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15","program":{"byte_length":989,"sha256":"1817e8488f6542ec7a9c65ee73a26b9b2ce35ef18dad904d897c9dded6e3cbf9"},"renderings":[{"byte_length":5464,"composed":{"byte_length":18151,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.Compose.RustCore","sha256":"9b9352a8daf6b0705085571fc728df5f6d234974a3d0f3329c17b611c5952e66","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.Compose.RustCore.root"},"crate":{"byte_length":4417,"sha256":"31aa7ca5ef4e02642fd2c913c93293b098b0b55555ebd261df0377b68180139e"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.RustCore","sha256":"acb447482f1c029929605c1c3ce751b077526d4b8820cdcc50d485e827d77614","target":"rust-core","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.RustCore.root"},{"byte_length":5461,"composed":{"byte_length":18142,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.Compose.RustStd","sha256":"d475efa2ec1b8e30b73a613e39906aa15127adea3d84f0b0d09857e331850d6d","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.Compose.RustStd.root"},"crate":{"byte_length":13335,"sha256":"44fa70d0448251f98e8fdef3403a5990d6a42239304a80f10cb6830960f7268d"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.RustStd","sha256":"a99e9e10bd1757bf97a0a1cd8a2ab5fae96470878304608ca5d9cfb863da77d7","target":"rust-std","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.RustStd.root"}],"root":"Coverage.Main.options","sha256":"931c9d5ce6c89d9c9b1e0c6d16c1cfa91f2ec97e9ecb1f92617596af5a5474db","targets":["rust-core","rust-std"],"theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.root"},{"byte_length":4914,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16","program":{"byte_length":1264,"sha256":"234deee526474348f12566f97e315f4a79becf0607138d82ae06f555a4d3f2db"},"renderings":[{"byte_length":3982,"composed":{"byte_length":12290,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.Compose.RustCore","sha256":"8fff9aa49776d5d7d9315e8d8c1b8bc0805312d6252fcb95321f71f2577e3122","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.Compose.RustCore.root"},"crate":{"byte_length":4121,"sha256":"84aab30692ec8281062085a409bfc422cd779958bb5c57ef9e59799a768d2501"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.RustCore","sha256":"92141d337e4407fa7b8373b512741f9173cbcdccc61ac3bf04f9022a43268328","target":"rust-core","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.RustCore.root"},{"byte_length":3979,"composed":{"byte_length":12281,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.Compose.RustStd","sha256":"80759f54751ac60159db8967c1b5d110a059f7ab7b2b84a7edd5b8ef4a1591b0","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.Compose.RustStd.root"},"crate":{"byte_length":13039,"sha256":"6d8bc511c7f98f686d36dbda86f3c9a344a7dcdf69021b28be933128dcaaae78"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.RustStd","sha256":"0e85f3910b78549a8322c0dc914d9ca27964440d5a9f1b13a58db00939888258","target":"rust-std","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.RustStd.root"}],"root":"Coverage.Main.builders","sha256":"94ca7673d217f7f0fad7d44ab9cf19d290a62977475a399f3d5bd8bf7631c7ac","targets":["rust-core","rust-std"],"theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.root"},{"byte_length":2718,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17","program":{"byte_length":451,"sha256":"7d925a72d07005baaa5a9371f60e52199072e49139630af3348972394ef0539f"},"renderings":[{"byte_length":2405,"composed":{"byte_length":15180,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.Compose.RustCore","sha256":"6b92197db9caf4605a3885877eb8eb51f3f22a187456d4ea3a2c806aea8e1f48","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.Compose.RustCore.root"},"crate":{"byte_length":4003,"sha256":"9ee584eed11f7b4efb99475c2a6b35939dc35dd3f263806aec3ae84479b96685"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.RustCore","sha256":"911371599e9364b6cf0703cbd21595824c56e50597d2dcd183062c342bbf748c","target":"rust-core","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.RustCore.root"},{"byte_length":2402,"composed":{"byte_length":15171,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.Compose.RustStd","sha256":"a4e20fa8d3e8bcaa1bffad4953b5f73a4676d296b268d5875f6cf15c4de1a42f","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.Compose.RustStd.root"},"crate":{"byte_length":12921,"sha256":"5e115227d6075aa279430638e5ddb6995ac255db0bd608e107a843bd468dde51"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.RustStd","sha256":"cbae64cfb54b4db27d4234d2a619f91d560f607bf41a3ce77ee2d0ce18377bba","target":"rust-std","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.RustStd.root"}],"root":"Coverage.Main.pairs","sha256":"9d5ba534d20d2da4d7559cea3557e67fcb8b1e11399eb31e3bcd78d778a2dfad","targets":["rust-core","rust-std"],"theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.root"},{"byte_length":10732,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18","program":{"byte_length":1873,"sha256":"b9a631ceb72fc1536c7c26c88ce17cb71084492929763dc601a2e579e3b15596"},"renderings":[{"byte_length":12456,"composed":{"byte_length":13223,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.Compose.RustCore","sha256":"5f808efe39a388158c6b6379cff00941bdc0b59d0a3e50bf0240a99129fee7d2","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.Compose.RustCore.root"},"crate":{"byte_length":5047,"sha256":"2c1e15094b24d3e5c9a0a06315afc8bf4c60341ba27fd1bf252230213141f5fe"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.RustCore","sha256":"3eda29f74c85430085cb3629f22b8c224c8d0dc9949ad8b9b1e29f25e91fd9e9","target":"rust-core","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.RustCore.root"},{"byte_length":12453,"composed":{"byte_length":13214,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.Compose.RustStd","sha256":"abf5079bebd80645bc88fa5da020559451e6ac08c0914f258bb0915d8a20265e","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.Compose.RustStd.root"},"crate":{"byte_length":13965,"sha256":"d46d5bf325126545575bdf8963f16739be5cfb777b38c5233acf8ea8c474a576"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.RustStd","sha256":"1e85986bbeb7e84131ca99ae417932eac923524e315ce03a311549c8faf5eede","target":"rust-std","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.RustStd.root"}],"root":"Coverage.Main.higher","sha256":"27a03cd1601905831431712cf50c9bc4718bb2ff2719a895c734873f4a285793","targets":["rust-core","rust-std"],"theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.root"},{"byte_length":8621,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19","program":{"byte_length":1884,"sha256":"83625b33701e16e8f1014fd8a942ea0ac67a87cefb2ef0f93321f9dbc4bbe943"},"renderings":[{"byte_length":7953,"composed":{"byte_length":13594,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.Compose.RustStd","sha256":"39fbd9b5b14ec9d578ccd5d46c1c7c47086893b933c40b18e94189c496a6c0b1","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.Compose.RustStd.root"},"crate":{"byte_length":13607,"sha256":"ffd9d2b0d04acb6874cfa5f2983560a9c24a75e8bbd9f3b2580f84d5a76d7b70"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.RustStd","sha256":"eca6069661ff148c38b61c9ae2a3dff0b9fa5344c53fb3fb94fabe7167abb704","target":"rust-std","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.RustStd.root"}],"root":"Coverage.Main.mapped","sha256":"f4c302a664367255c2e493da37157e3072d55da82070700f037de4f1f65fc0c4","targets":["rust-std"],"theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.root"},{"byte_length":4983,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20","program":{"byte_length":999,"sha256":"d80d8fa87a73970b99d0429236be199dba9bdbb4207a8c64505ec3f999bc2775"},"renderings":[{"byte_length":4204,"composed":{"byte_length":12086,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.Compose.RustCore","sha256":"c02c5805722fcf54fa70a66f1b521d3284a6f488c102f45e39a8375176af759f","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.Compose.RustCore.root"},"crate":{"byte_length":4179,"sha256":"fcb23d2bf0050b3ce8c890495631aa62147613e0a92836750e7c5fd2bb3b60dd"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.RustCore","sha256":"0eaf37c6da80d7acf13bb092c62c4950462b167f8458465ae006677168346651","target":"rust-core","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.RustCore.root"},{"byte_length":4201,"composed":{"byte_length":12077,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.Compose.RustStd","sha256":"9d529e1e95f2338ffddf46b3e8d1cfdd120e40251b80557b8ff61708bea4ce77","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.Compose.RustStd.root"},"crate":{"byte_length":13097,"sha256":"a9de1e3631675db5a707a20a389993cdccd26644956d0ad09e14a25f26b8123f"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.RustStd","sha256":"cbeb8e2a6e317e6b9bad25497319ea0e840d86291db1d8ec83aca50fab895c66","target":"rust-std","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.RustStd.root"}],"root":"Coverage.Main.parity","sha256":"5bfdef734ee34c48b53c18b7a5700ddcec819fd11b2fd7de2485fd197327ec66","targets":["rust-core","rust-std"],"theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.root"},{"byte_length":6865,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21","program":{"byte_length":2446,"sha256":"ef7c0ba20d049db4524a6ec6561a20d86bd33230f60e21dc733706135be42f2d"},"renderings":[{"byte_length":7321,"composed":{"byte_length":13587,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.Compose.RustCore","sha256":"690d5c56a9ef73cb7f9522146f90c4eff6b29ed55e01ccd6ef39c0067c554f91","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.Compose.RustCore.root"},"crate":{"byte_length":4385,"sha256":"f4884b32be79ba4577ae148c340ffd389f3ab673bab9b3e0a6151d92a64dac98"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.RustCore","sha256":"ea1fa551363c3106f6f2810dc9444ae1d84d8c5f85ae16a6e960db0e63e0f87f","target":"rust-core","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.RustCore.root"},{"byte_length":7318,"composed":{"byte_length":13578,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.Compose.RustStd","sha256":"901e23b79ecb0d2a67b8bb48b0141627bd9f09b37d4b558d9b382d49ee7d8edb","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.Compose.RustStd.root"},"crate":{"byte_length":13303,"sha256":"a09d0b574d6829f8ce94552a82e7770388c891bf3591aef3bdb2aa1c80734465"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.RustStd","sha256":"817fa14e2c7b6b4e2defe29707880065fcd2d609ee9d5451a31c4807990a1504","target":"rust-std","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.RustStd.root"}],"root":"Coverage.Prims.fixedSmall","sha256":"489005a7f5d2aa43e1686f68567b84d5d0f561a6f4f77fb2652c00ae65cb6064","targets":["rust-core","rust-std"],"theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.root"},{"byte_length":5605,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22","program":{"byte_length":1770,"sha256":"c5c4a8ee12a3a426500bb6c4e82af761e1af447511bd597e1bc5dce63970ddaf"},"renderings":[{"byte_length":5884,"composed":{"byte_length":14419,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.Compose.RustCore","sha256":"bd1e2247893f5d0081ee1c3336db80135d2bc58e0ebe6631479bcd85421a957c","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.Compose.RustCore.root"},"crate":{"byte_length":4285,"sha256":"9ad73a749e8c19c7038a85d6fd571a10e3024158934cfc17d738099d4257e7c7"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.RustCore","sha256":"85637da1bf034d40f89fb0835f2c2bda15c1285f2e12d162e5856910edd653bf","target":"rust-core","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.RustCore.root"},{"byte_length":5881,"composed":{"byte_length":14410,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.Compose.RustStd","sha256":"344390f701cc8439e7636979b7cdc5f2919745b2345234208bd915aea3fa4428","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.Compose.RustStd.root"},"crate":{"byte_length":13203,"sha256":"2e31d2ad0160635ba75b00c7c15bc08e71de244c902defb8fddb06175c8752e4"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.RustStd","sha256":"1fd7ba777f60362a68478c3c5dad30c60c859421ccf2b4085345d073f0f8db62","target":"rust-std","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.RustStd.root"}],"root":"Coverage.Prims.fixedMiddle","sha256":"2cb6ef46e9a6ef78279acab6df365a8661b8d8abe3b3d843f0744c553bc3cadb","targets":["rust-core","rust-std"],"theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.root"},{"byte_length":8520,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23","program":{"byte_length":3324,"sha256":"046e9276a504b885d2582f97b9c4fb34281d09496a6f649c6c147f6361e56c8d"},"renderings":[{"byte_length":8909,"composed":{"byte_length":15652,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.Compose.RustCore","sha256":"8b2c56e465c82173fea6f260a8baec930b065cf41f1f069f34de0786c88dce97","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.Compose.RustCore.root"},"crate":{"byte_length":4519,"sha256":"e68ee92c192814f24ef49f678d7b0f10e590262eaac0e5a5edafd2716711b54f"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.RustCore","sha256":"3beec9596eb3670f61bb38bb108b69a45d3e73cdaad1e3b759c76833c93e10d1","target":"rust-core","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.RustCore.root"},{"byte_length":8906,"composed":{"byte_length":15643,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.Compose.RustStd","sha256":"671e2e4c9130d2d058fa61da60fce5a47a793251ed06fb896c7e18b985b8706c","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.Compose.RustStd.root"},"crate":{"byte_length":13437,"sha256":"2f8e04183e437e3b85961d1277fa70eec93662dd97eb0e6e4f0d1d1adfc95798"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.RustStd","sha256":"464479fbcd54d3641f6c6f826c76622ad9cda2ce5f6e3f00d169492f745c1e3d","target":"rust-std","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.RustStd.root"}],"root":"Coverage.Prims.fixedWide","sha256":"2f14f1cffafdca14966293940d5f0c29905c8d5c3e90afdbe6d55183cd43fedb","targets":["rust-core","rust-std"],"theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.root"},{"byte_length":8690,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24","program":{"byte_length":3494,"sha256":"9ed3cf1ba1de6ddfd0c865acea0ee413b21ac44fb1d556e8eac704b552c3d018"},"renderings":[{"byte_length":9917,"composed":{"byte_length":15730,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.Compose.RustCore","sha256":"2f6881608b342e2f39fec0acf1e1cb00bfc624f2f478c7a63d9ea0f504b97d6a","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.Compose.RustCore.root"},"crate":{"byte_length":4562,"sha256":"f594bce05710d6a44ba4db5022a8759b6ac698bed7b389b7e60d820c93373a21"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.RustCore","sha256":"9f95b7b4baed019426b978c9829bdf39ff44dbb5c771ac86a8d66b84c4afe214","target":"rust-core","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.RustCore.root"},{"byte_length":9914,"composed":{"byte_length":15721,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.Compose.RustStd","sha256":"98a39db94a080bb30924def42dc4a90f155406292f82ae9b0dcfc28dfb473d1a","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.Compose.RustStd.root"},"crate":{"byte_length":13480,"sha256":"34ed06527b7da3dc36936034ff6c7a0145675fd668c22ed6feafa9a3b418e3bf"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.RustStd","sha256":"ebe803a47fbf587e422801792b5b4d184b4766e89ab4fe6c3972593ba5de0de4","target":"rust-std","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.RustStd.root"}],"root":"Coverage.Prims.bits","sha256":"e68bc97750bfe257e3475c8e6f999a07335cdd050e7f31ef8931d99d3c0bc03c","targets":["rust-core","rust-std"],"theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.root"},{"byte_length":3336,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25","program":{"byte_length":701,"sha256":"6227207e0bebaa6609e8bfedfaffb83e7fcb5e8c11d9ed9caaa35fb65b35766f"},"renderings":[{"byte_length":2932,"composed":{"byte_length":14299,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.Compose.RustCore","sha256":"d77eedcf5ebcbd484f4ed46e812674e8d34986dd73900d937d545bb56b705577","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.Compose.RustCore.root"},"crate":{"byte_length":4072,"sha256":"177164e24d17c1a066fd7038902d01c1f8dfd73c69ed8377af3b1c2db5cc1412"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.RustCore","sha256":"632eaaa1f03152b4731fb15f403a45f0f9c555c44fa42db76f94e7e1842e0722","target":"rust-core","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.RustCore.root"},{"byte_length":2929,"composed":{"byte_length":14290,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.Compose.RustStd","sha256":"1b40a8c1073af40c7dc3c834b94431a0803ba505a3de925b9f23ad952ce108e2","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.Compose.RustStd.root"},"crate":{"byte_length":12990,"sha256":"2f5c6ff9563847b0e68f1b9b206d825a78c81a047a954fd54ab509b3bd79de61"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.RustStd","sha256":"b725f59e6f933ecf3127f2fdc39187027f5fd1be31e1a25d5a19f8c59280d0e4","target":"rust-std","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.RustStd.root"}],"root":"Coverage.Prims.conversions","sha256":"caf613f32eaf49b7bb61936e9dfcb74b0c98f493d600f65b79fcd8ac144f2f48","targets":["rust-core","rust-std"],"theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.root"},{"byte_length":14059,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26","program":{"byte_length":5637,"sha256":"c01fc096fdf4c89e91adb6928197ce32bcb7e42426af0487546f4edc98fd3702"},"renderings":[{"byte_length":16373,"composed":{"byte_length":17651,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.Compose.RustStd","sha256":"dc048108e269b26b68a36a5418aaeba9c638332978dfccaa3e183191aa453b44","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.Compose.RustStd.root"},"crate":{"byte_length":14078,"sha256":"64aebfe2ed7b706cea90fb4e7ee5b7630cb43e480aa43f74e6fe9af4c4142601"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.RustStd","sha256":"a7d21c4c9ddc58cddf295959affd327ba8d499b0097e815fd59a81b121ca1ebf","target":"rust-std","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.RustStd.root"}],"root":"Coverage.Prims.sequences","sha256":"a7de015a99db364615a3dbfd2db2365096ec991ff21fc161016b8cac8cbdacbc","targets":["rust-std"],"theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.root"},{"byte_length":3214,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27","program":{"byte_length":686,"sha256":"6fc888e3f1e9cf5a37f9f68cc01d1a1ff94cc30a552b384155cb811a9d13a526"},"renderings":[{"byte_length":2818,"composed":{"byte_length":12362,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.Compose.RustStd","sha256":"6ddce872431144c987261a2e81d215204e18f4f348332842f729ad538f6f9177","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.Compose.RustStd.root"},"crate":{"byte_length":12956,"sha256":"11b389208a11b50ffd36526d42d3b92b00669a700b8875d53bef97f92efd7c8a"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.RustStd","sha256":"eeda4c12c5a055dd1ae66d4f3ddc8973335f5418391fed82f4f56fb43767d02a","target":"rust-std","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.RustStd.root"}],"root":"Coverage.Prims.decimals","sha256":"819661e921ca9b4cd0b4f917cd2ca14c43c42f6f8ccc96d38c467df9eda738be","targets":["rust-std"],"theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.root"},{"byte_length":3046,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28","program":{"byte_length":529,"sha256":"a2d6d8d674af0354e10f236b2b6dcab2579a6ff9db94b3a696fb2c0679df7372"},"renderings":[{"byte_length":2791,"composed":{"byte_length":14110,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.Compose.RustStd","sha256":"122d40ee3a327723f1f6da5a8c753bd4debe76c520e33552c0a6713d54a7921e","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.Compose.RustStd.root"},"crate":{"byte_length":12933,"sha256":"d0b018bf12ebfd193d45370c9a299fe8448a30481f706e8bcf5a756c78b6359e"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.RustStd","sha256":"41aaae07b5067b3c6910e6f2a04834f9bf32bc360cacfb37960af763af50bc0f","target":"rust-std","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.RustStd.root"}],"root":"Coverage.Prims.formats","sha256":"dd5170592b12eff12b255de0c118850d9f0d7b9d687df1c67dee014c12924ee4","targets":["rust-std"],"theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.root"},{"byte_length":11694,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29","program":{"byte_length":4118,"sha256":"54080023d9f656975c8d23e285159c2f80184d9c38941ebdeb9b115207eaea0f"},"renderings":[{"byte_length":14927,"composed":{"byte_length":13973,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.Compose.RustStd","sha256":"05360bfc5b3ae7b25923244739f51ea080806534059579d172bd3cb44435d4e5","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.Compose.RustStd.root"},"crate":{"byte_length":13981,"sha256":"e4aba3ad1a43ca155a88aec769bcc47479e9e5091944214f2a469ca7b68e7d9c"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.RustStd","sha256":"259074ca57592881f5070ec73d50e04692774ca3e203dfe98f0847f005f9236c","target":"rust-std","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.RustStd.root"}],"root":"Coverage.Prims.text","sha256":"2ef11b293fd7305ad80e65d5faa75bc6ba27fc34bc35dad60f3755dc9b052db6","targets":["rust-std"],"theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.root"},{"byte_length":8119,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30","program":{"byte_length":1887,"sha256":"023b87970dcc71c4e8be45aa676e75b9db5753e3da5f8ac416891d595dca8b41"},"renderings":[{"byte_length":7705,"composed":{"byte_length":19612,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.Compose.RustStd","sha256":"38c7d78044682be475ab17cf996128e8fe52e92fd1c4fc87c0d31965428d959d","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.Compose.RustStd.root"},"crate":{"byte_length":13423,"sha256":"7b6d66e610ef88eda88943c88c3322a2c1bf519e41049d16afe53d039cd7033a"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.RustStd","sha256":"571c245f79ad4c331d179f4ab9e4bd2b47cc66627faa97c8216dadcab163c3cc","target":"rust-std","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.RustStd.root"}],"root":"Coverage.RecRoots.roseTotal","sha256":"0c5e31ccebf374e411090ff87e8543b6dfb89dd1525ee15db22c4c67041aa744","targets":["rust-std"],"theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.root"},{"byte_length":12655,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31","program":{"byte_length":2687,"sha256":"0b283960a85e885aef98cffde5a37a5840fe6905cb960332eb57755a9f588e7b"},"renderings":[{"byte_length":15589,"composed":{"byte_length":27393,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.Compose.RustStd","sha256":"2c99e7e674608434aa4ab2fd0fb793308c0eb18393f780547170e94cc63fae65","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.Compose.RustStd.root"},"crate":{"byte_length":14339,"sha256":"3c3d755be5666a0def8f507f530fa6c1b75ce74ae299363b69cdd7f19b598674"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.RustStd","sha256":"b7aa67521434515c0cebc73be3a0b6d6076b6381612c74bc79cdd3d664a074fb","target":"rust-std","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.RustStd.root"}],"root":"Coverage.RecRoots.syntaxTotal","sha256":"1be055773dbd067ac0c2d9930b95123497eb5dafab0ca00c5b24c81ac7b98f0d","targets":["rust-std"],"theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.root"},{"byte_length":17232,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32","program":{"byte_length":3120,"sha256":"a30548452b5811cfc83abdc547d7e93bbdfaf6ae193442225eed19b212b84e5d"},"renderings":[{"byte_length":19234,"composed":{"byte_length":13329,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.Compose.RustCore","sha256":"bb476fffac736a9fe112b821f125d33d461a9febdcf5441d7dda5ae290e46e37","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.Compose.RustCore.root"},"crate":{"byte_length":5179,"sha256":"595b9659cce79629fb199be239edeba9f908e19c5863ec7fc71ddbea1ca6b16d"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.RustCore","sha256":"ee9c70d3844a2bbf05e09fcfdd3243702119b4fcdc1d932f55154e7023065b78","target":"rust-core","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.RustCore.root"},{"byte_length":19231,"composed":{"byte_length":13320,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.Compose.RustStd","sha256":"c1af99858958feaca3997004349e80100c155c70ec68c1a1ef833eea3cfdc8e3","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.Compose.RustStd.root"},"crate":{"byte_length":14097,"sha256":"5bde24114f0f63beca1277bf6cd06ea203bd89352590534d5844f6639bbeb943"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.RustStd","sha256":"637d7b5c691ef9b9dbb117e0785acbdd9c51f920cb17cd2c375c487af0329f28","target":"rust-std","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.RustStd.root"}],"root":"Coverage.RecRoots.wellFounded","sha256":"8b07d57b2e649b0a0c6aef7af5d3d94b11f792b17338f802af144d04bcdb1099","targets":["rust-core","rust-std"],"theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.root"},{"byte_length":15632,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33","program":{"byte_length":2757,"sha256":"696084d3a568dde72c41261e20eb3e6dfc3055d9f56ddb2a9980a5b1eb061f89"},"renderings":[{"byte_length":13569,"composed":{"byte_length":16990,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.Compose.RustStd","sha256":"772797d03c1f8e4926b497485fd293f68dbaee574c84353e72d1fe5bf15391d3","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.Compose.RustStd.root"},"crate":{"byte_length":14222,"sha256":"85ddef0fbc268b258386fd1d552610372cf646edbeda718288d5bc4554a58de0"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.RustStd","sha256":"763a3836669d79aa6de40bc32e5c2afb941ede8fc19cc513b3febf3253a1026f","target":"rust-std","theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.RustStd.root"}],"root":"Coverage.RecRoots.rewrite","sha256":"a58db4a7fed487f3f59fa358a632d2246e219d2f24c751dbfcf22756dc95fd2b","targets":["rust-std"],"theorem":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.root"}],"spec":"lexlean/preservation/1"} +{"library":{"axioms":["Classical.choice","Quot.sound","propext"],"registry_sha256":"02de6e4be5a6ae43997bacd3713ea587693b8ac66da4aef567463a535a076ff3"},"roots":[{"byte_length":57998,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0","program":{"byte_length":19449,"sha256":"1aadfc9ba4fd60d7060d145ef97656e0bca23924ec77e487808d5faae1ada33d"},"renderings":[{"byte_length":85650,"composed":{"byte_length":57221,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.Compose.RustStd","sha256":"16d39775a7cf3b3dd3f9ae5d12375e23b1c9dfa29ee663cb2577a2b7caa866ec","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.Compose.RustStd.root"},"crate":{"byte_length":22556,"sha256":"77ab666847a104f8f578a1f8e741421430e9fed92895817a111f50a95178b620"},"entry":{"function":18,"symbol":"f18"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.RustStd","sha256":"beb89f762c69fec72bf9a78610513e1e66fd5b5e51ddc3188b3299febc1c0b3d","target":"rust-std","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.RustStd.root"}],"root":"Coverage.Boundary.groveRoot","sha256":"b4588ab21a3f809c11b483a84d58f7fc414eee24329843d30bd27b62be393774","targets":["rust-std"],"theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.root"},{"byte_length":29473,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1","program":{"byte_length":16945,"sha256":"befbd0f6a81345584eccc0e352073fcc65d585f2ff9b002aad0cfac26a5a426f"},"renderings":[{"byte_length":59928,"composed":{"byte_length":21729,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.Compose.RustStd","sha256":"053437af7d054dae3b840ee9bb117ca30482b31ff282c5597a36b4f632bfc222","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.Compose.RustStd.root"},"crate":{"byte_length":19105,"sha256":"5d5216f8cd8580e08122755e5fd0aa617b9ba4b46fd2dcb000f6d7503c307f92"},"entry":{"function":10,"symbol":"f10"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.RustStd","sha256":"5bc42a07191c2a1ede7544dd1c30975c8ea3bfb07fbce0b4eaaffc5bd85de72f","target":"rust-std","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.RustStd.root"}],"root":"Coverage.Colls.mapOps","sha256":"47c1c2c1bf7d795357dea0ee35c7928b038be267e6058ff17a107944aa11343f","targets":["rust-std"],"theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.root"},{"byte_length":13128,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2","program":{"byte_length":4015,"sha256":"db2b0f171e75cff8b9931bc693e039342501c8d43f2d2a653bd29728fe777dc1"},"renderings":[{"byte_length":25017,"composed":{"byte_length":19445,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.Compose.RustStd","sha256":"2280f6759cd5ac8c0b600c3ca25527117285ac8a441ac3a1a53da0469f7e33a9","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.Compose.RustStd.root"},"crate":{"byte_length":15540,"sha256":"014aa5f97db48ae59c8841bf98cd515f65a1be0c24b3fd1095cc48ebb6c83fc1"},"entry":{"function":5,"symbol":"f5"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.RustStd","sha256":"88d316c92d1a6ccd57b34589101f2a998a40e66f81f0eaa04e32d66b6d561b17","target":"rust-std","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.RustStd.root"}],"root":"Coverage.Colls.mapFolding","sha256":"d815973724d8121311cd68afb3102c3271ac82e79d33df48e32f1b2e5d702c77","targets":["rust-std"],"theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.root"},{"byte_length":26754,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3","program":{"byte_length":16755,"sha256":"ff65cb9f421e37305a20ed392f155a0aabde61713d63520082effd9e2006231d"},"renderings":[{"byte_length":61996,"composed":{"byte_length":18245,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.Compose.RustStd","sha256":"1c5466dc8a352924bad0d7e0699faf513c780fb3b8d8b5f0e636820f24805cd3","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.Compose.RustStd.root"},"crate":{"byte_length":19344,"sha256":"b735c8c86aaac3de962c4a35440898953b1162fd156ada72eb075744426d87e1"},"entry":{"function":11,"symbol":"f11"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.RustStd","sha256":"7a84de1f29906d5c464e662accdc73056b8793d53adbe48327b6075fd892c0f3","target":"rust-std","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.RustStd.root"}],"root":"Coverage.Colls.setOps","sha256":"0d076d254db8396ec78b2be79ed08bf1f57116401a33f5255d895054cc793213","targets":["rust-std"],"theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.root"},{"byte_length":13311,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4","program":{"byte_length":4435,"sha256":"48b1d22aff3beb88a3f286056475ac74e9a357ff9dc339c89b802249153cebbd"},"renderings":[{"byte_length":21903,"composed":{"byte_length":17987,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.Compose.RustStd","sha256":"3ef20522a67a3518d4c33dfc02c000af04959dde7e234751bf5bfb7b19bab0bf","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.Compose.RustStd.root"},"crate":{"byte_length":15272,"sha256":"cf60ae7366ecb8b9565507fd1247024683dfd01ad6d22c2db0aeb6f250c1b307"},"entry":{"function":6,"symbol":"f6"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.RustStd","sha256":"ff0c63d4985e6f266ba8a5edb3a5e2aa0d47a05c7eae6b01fbff192ea048d622","target":"rust-std","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.RustStd.root"}],"root":"Coverage.Colls.folds","sha256":"c839da53a3d1f606fa20561089ce6b3f2216c8df4abdd7af827e1e7cc66749df","targets":["rust-std"],"theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.root"},{"byte_length":9201,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5","program":{"byte_length":3448,"sha256":"17fa1f466a5d992c3b54152d0a758cd23d38d1b2fda1ef5693cc06700cabe223"},"renderings":[{"byte_length":14771,"composed":{"byte_length":13364,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.Compose.RustStd","sha256":"efd13e9afaa3e0ff22ede2716640375e990c165d97b21e591b183f7736474f8b","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.Compose.RustStd.root"},"crate":{"byte_length":14251,"sha256":"b07e6313d5996c7f489f6ff31b6047d7bdd30fac8dc0ab06dd2de5c165773171"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.RustStd","sha256":"6f3d755367df1556aaa577970722c3c25a6e9123a4f3d2ec66333e6e906f7bc9","target":"rust-std","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.RustStd.root"}],"root":"Coverage.Colls.iterations","sha256":"9de0747b5c693a9bfac29a23dc04c7abe95430fe0712e81b66f6f39cc86c9940","targets":["rust-std"],"theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.root"},{"byte_length":30366,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6","program":{"byte_length":32854,"sha256":"54b3c6a08367cfc9abac0716d282f9bfd50bcfffd1c1c0a5693bf6e6407145e2"},"renderings":[{"byte_length":153083,"composed":{"byte_length":20096,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.Compose.RustStd","sha256":"6fa3d90612e26fddf0f86d0f2f23946f725c312ef3763a88cbbbf721dab22269","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.Compose.RustStd.root"},"crate":{"byte_length":28628,"sha256":"d53a1fc1f9cf1f4e7366e8dcf3dea4f3e858227e7739718651f7bd74ea86be6f"},"entry":{"function":30,"symbol":"f30"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.RustStd","sha256":"5d36bd019eaf999c902eb20e6e7d98721d20583243f2c27f44d4851c148069b6","target":"rust-std","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.RustStd.root"}],"root":"Coverage.Colls.graphs","sha256":"463eb1ee477a68ff137ae77d5571ce2fed336f83dd503cec7a4fa0c586d9e837","targets":["rust-std"],"theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.root"},{"byte_length":19714,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7","program":{"byte_length":17014,"sha256":"bbf596ebb9eca8da32bc60cf81d5aed9f971a815f74ed865dc65f5b5acd7c475"},"renderings":[{"byte_length":82886,"composed":{"byte_length":18641,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.Compose.RustStd","sha256":"a0f197f616b7c29c49bfbf2b6ad06daa30fc176c5f436ec7cdf4bcd963a31503","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.Compose.RustStd.root"},"crate":{"byte_length":21438,"sha256":"b7f9d495a96503043078bb00af86cac5d22f3a92bef084ff7b8d41e5a157014e"},"entry":{"function":15,"symbol":"f15"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.RustStd","sha256":"25ae3aed96aec689469f271ae42b2cb987995b289270b71d63b1c06d0489a773","target":"rust-std","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.RustStd.root"}],"root":"Coverage.Colls.stringGraph","sha256":"7cc6bcb14e7f5cda69e5c391a040aa054c5b34baee7bcb7ecb550f733170bab4","targets":["rust-std"],"theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.root"},{"byte_length":46481,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8","program":{"byte_length":22112,"sha256":"fc3e6614b68e0f0cf2e4fcd7831a0a8ac5a84ade2a42c08eabcd0d2ddc8abe3f"},"renderings":[{"byte_length":117400,"composed":{"byte_length":45654,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.Compose.RustStd","sha256":"28f74f0c0bf29c07fa97b652c3daa5116710ac4996e8aacde1b5aa8d67df9218","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.Compose.RustStd.root"},"crate":{"byte_length":26043,"sha256":"bf8749dca9d3b9f015f7261c88b60dea927138244a7b63985e6966ad4147d00f"},"entry":{"function":13,"symbol":"f13"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.RustStd","sha256":"41a01d4ec494086ca421f4b716492c0e8a7c3e6e6387f614f64be811c71dc509","target":"rust-std","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.RustStd.root"}],"root":"Coverage.Colls.keyTypes","sha256":"d3ed2df2946e2f5475fe31cf10998a1bb30566b697b1e22e788a41abc7611f5a","targets":["rust-std"],"theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.root"},{"byte_length":9008,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9","program":{"byte_length":3996,"sha256":"c7a7def9b6c20967b79d34ac878ad3bd945e7e8a5f7ba59728f515c9495f8d2c"},"renderings":[{"byte_length":5833,"composed":{"byte_length":14316,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.Compose.RustStd","sha256":"c18d95505fa7834d9cdf57351175579e01778f8925f461e6b2a01826412f1779","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.Compose.RustStd.root"},"crate":{"byte_length":13175,"sha256":"a33503946fd052ef363ed726a5ef3cab80d9029bf159effcb5ca3ee3f234125d"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.RustStd","sha256":"b030fdbe107fa547180a8455a071bcf8c1ecea03859c08b58cf754baa4e5ecc7","target":"rust-std","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.RustStd.root"}],"root":"Coverage.Colls.literals","sha256":"91a016c2be5eb1e8d918102926352a842f0a0240b47c370734c886737b920eee","targets":["rust-std"],"theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.root"},{"byte_length":7971,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10","program":{"byte_length":1746,"sha256":"7327b0d3e0e2b92c9e324f0b8f38bf8b9a4866af1fab582ce3cb3471b3faac1f"},"renderings":[{"byte_length":13257,"composed":{"byte_length":13207,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.Compose.RustCore","sha256":"1447fcbc3b3614e7fcba56331a7871f774283ef10bdc21cee57bfeb8688d3e8e","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.Compose.RustCore.root"},"crate":{"byte_length":4767,"sha256":"af030ef915059e74c7c2a7439cdd2f3e87f0ff1e956993fbdc5ad7c010e3c87a"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.RustCore","sha256":"98e417385c227b9bec9a25856d84634e806def73d886c44f5a95e48998f95fd1","target":"rust-core","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.RustCore.root"},{"byte_length":13254,"composed":{"byte_length":13198,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.Compose.RustStd","sha256":"c59c1671770a10f77ef44206a75da582f8dfe8db5a8f2e06aa1d592fc9d77ef5","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.Compose.RustStd.root"},"crate":{"byte_length":13685,"sha256":"ee0fea13fd0bcd6a8f38ac930442b23f7dcf051f188f1661a7305f3d1e9b69a5"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.RustStd","sha256":"1d88056344a16637696154c46154dd659fb8e8d62059055fd285ef7926a9a832","target":"rust-std","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.RustStd.root"}],"root":"Coverage.Main.natOps","sha256":"561476c55d68a76a4588baa246b58b8358411a703a735c0b7ff82d88ae622881","targets":["rust-core","rust-std"],"theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.root"},{"byte_length":4871,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11","program":{"byte_length":772,"sha256":"6f167a8d46f8923a927e311666264729d573c3b8593155abef2114631b1b0283"},"renderings":[{"byte_length":6973,"composed":{"byte_length":13231,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.Compose.RustCore","sha256":"0eb59bb2be114c2d3ac92a04f248bbf474a0136cde874439deaf58004af5f3ec","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.Compose.RustCore.root"},"crate":{"byte_length":4340,"sha256":"1fd22968eef8b396fb2c0032d03104ae83717176fc2919b9876d5a2d7a73e0e9"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.RustCore","sha256":"360ce2a9538d24ecf3e3e4f9828ed44083081046de26f98db1f91dacef760b40","target":"rust-core","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.RustCore.root"},{"byte_length":6970,"composed":{"byte_length":13222,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.Compose.RustStd","sha256":"da17fdf0e1bf5a6e17e41f666d7c2a9b49f20086fa728a3300d64574c64a72bd","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.Compose.RustStd.root"},"crate":{"byte_length":13258,"sha256":"35a8c124f4644cb2f70ee53bb1a4766ebb427587204f1c193338913fdb89fd1c"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.RustStd","sha256":"2d7dff97b103bcd287b44089e70792d4f4ff753c636b0851a6bf111aff45286e","target":"rust-std","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.RustStd.root"}],"root":"Coverage.Main.intOps","sha256":"a35853a74247372eeec48dde9fdeb6dbe3a4a7f9bb1db3ba6d61637bcae8486f","targets":["rust-core","rust-std"],"theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.root"},{"byte_length":9164,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12","program":{"byte_length":1624,"sha256":"05293367c4a6e86e29d41974b883426e97957fbbc411382de01e1da3e41879c8"},"renderings":[{"byte_length":8984,"composed":{"byte_length":17187,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.Compose.RustCore","sha256":"9fb9389dd3aa98b258c9a4e630f5ddc668f78060c81993cf47bf72b7d7de4111","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.Compose.RustCore.root"},"crate":{"byte_length":4616,"sha256":"9a588c5405d0805e8b71a3c168ecca7d5a7941a10b3707e884a8200765963074"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.RustCore","sha256":"834879378edfd13d752a592798eea4342faf93d7c859d9f27328163e59a11bae","target":"rust-core","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.RustCore.root"},{"byte_length":8981,"composed":{"byte_length":17176,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.Compose.RustStd","sha256":"99d8d605367a791bc10a8d041dc42daa97840db190e750683994c83e951f779f","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.Compose.RustStd.root"},"crate":{"byte_length":13534,"sha256":"57df19a47ce392a82bdfe801f4e334b35198361a066b7dd6063f679c07bebbe5"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.RustStd","sha256":"fff6b1fe082d4a1f7d3c999ce4ee51a8af34626850ab927d4370139cadc79bf4","target":"rust-std","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.RustStd.root"}],"root":"Coverage.Main.shapes","sha256":"c16c7abd185a4f6a9a37bbce1da1da0d3646bc84d5a3d18ea287c9a34b74744f","targets":["rust-core","rust-std"],"theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.root"},{"byte_length":6637,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13","program":{"byte_length":1517,"sha256":"43b6eedb7829b3598a29348c532e07d70295631eb2650df5de98d38c3daccb35"},"renderings":[{"byte_length":7237,"composed":{"byte_length":17051,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.Compose.RustStd","sha256":"f7177d6f6eba397fc48f397d908552a731fa727ef948ebbc960a35113319d2c9","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.Compose.RustStd.root"},"crate":{"byte_length":13479,"sha256":"92cec27dd560e7ca0a9f5daa440567b51beb597b69ef56f0678a55f0729d1198"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.RustStd","sha256":"609fc21489363185fd4fd8e175f0327b77fbb27865ce74c3bd07f39aa5602453","target":"rust-std","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.RustStd.root"}],"root":"Coverage.Main.treeTotal","sha256":"3e225e6a6a52a4a20db38ce515cb7d10c937a321ecef6f9aa3e1b57c78cac0bd","targets":["rust-std"],"theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.root"},{"byte_length":6646,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14","program":{"byte_length":1628,"sha256":"f6c459c7f8163810d05bc43460cd394578f415d182096e2ad51dae6252d4f656"},"renderings":[{"byte_length":7066,"composed":{"byte_length":23308,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustCore","sha256":"5fac5f59454b9b486823c42390f9c608ed99ef5714f20bb53584acb2a1cdd3a4","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustCore.root"},"crate":{"byte_length":4685,"sha256":"73a3e27a1326d458fa653a2a3b7057649a690cfc50441d306fc0456004f12045"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.RustCore","sha256":"c1588bae32a6e390920a9ee5b185893bc62a11e2a2f4949bff3f1be6e6e9a65e","target":"rust-core","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.RustCore.root"},{"byte_length":7063,"composed":{"byte_length":23293,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustStd","sha256":"f9474e7c81976124950d370699d0260d8fdac93d77c3205f655e19de984c2a57","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustStd.root"},"crate":{"byte_length":13603,"sha256":"4b8bab9cd36b1b9026cb5992a83d73f087c3a70988458b0e1f559b5e0d15d812"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.RustStd","sha256":"c296691a4983b75523c872aa82c6a670275c27ecad1eff455fcc848c05c89e0d","target":"rust-std","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.RustStd.root"}],"root":"Coverage.Main.records","sha256":"2d4cf5dd93438624cb30fbad33497a9585ff46d77b7a1c2870a92947f7d3c73c","targets":["rust-core","rust-std"],"theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.root"},{"byte_length":5198,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15","program":{"byte_length":989,"sha256":"1817e8488f6542ec7a9c65ee73a26b9b2ce35ef18dad904d897c9dded6e3cbf9"},"renderings":[{"byte_length":5464,"composed":{"byte_length":18151,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.Compose.RustCore","sha256":"8b4d447eba1c2e3862db72056ce2b35d45d6bd61c78b8e089d894d68f05994e0","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.Compose.RustCore.root"},"crate":{"byte_length":4417,"sha256":"31aa7ca5ef4e02642fd2c913c93293b098b0b55555ebd261df0377b68180139e"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.RustCore","sha256":"37116ec6408b337832dbaaeb9f7191e6e11e4168100645cef15d9af221f3bbf6","target":"rust-core","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.RustCore.root"},{"byte_length":5461,"composed":{"byte_length":18142,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.Compose.RustStd","sha256":"fe877e06d3b62e17cd52b5f82255aa559726c53fa351f30f03c5de200e9d1ec5","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.Compose.RustStd.root"},"crate":{"byte_length":13335,"sha256":"44fa70d0448251f98e8fdef3403a5990d6a42239304a80f10cb6830960f7268d"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.RustStd","sha256":"49a39eeaa87b7297eb63e6e3603c7e6bf748076f3974bfa8f5322fa576915b1c","target":"rust-std","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.RustStd.root"}],"root":"Coverage.Main.options","sha256":"bbeefac15684adae85c2d6b07379ac0c418dc77bd0468eb718342dc7c6f62ea7","targets":["rust-core","rust-std"],"theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.root"},{"byte_length":4914,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16","program":{"byte_length":1264,"sha256":"234deee526474348f12566f97e315f4a79becf0607138d82ae06f555a4d3f2db"},"renderings":[{"byte_length":3982,"composed":{"byte_length":12290,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.Compose.RustCore","sha256":"4e36dcd1fc493fa6adf89ea31003a7cdf614478e9683498fad3a9d1957f1b4d7","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.Compose.RustCore.root"},"crate":{"byte_length":4121,"sha256":"84aab30692ec8281062085a409bfc422cd779958bb5c57ef9e59799a768d2501"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.RustCore","sha256":"c894f2d39488ea9d88cb353ea70413e361928126f480bb5f8f57fcc676fba1eb","target":"rust-core","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.RustCore.root"},{"byte_length":3979,"composed":{"byte_length":12281,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.Compose.RustStd","sha256":"cc4fb13f08b026957def308628b2655c81599fc823e3a09b182dc6d8e5cc19ae","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.Compose.RustStd.root"},"crate":{"byte_length":13039,"sha256":"6d8bc511c7f98f686d36dbda86f3c9a344a7dcdf69021b28be933128dcaaae78"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.RustStd","sha256":"5554f610b750a6f7d2bce0d65daaa64bb43cf5d2bec4f1652905ca06bfe278ef","target":"rust-std","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.RustStd.root"}],"root":"Coverage.Main.builders","sha256":"b0c40a5072fa493a364764c767b52c4831b0cbece6bceeedbb60695b5f87b674","targets":["rust-core","rust-std"],"theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.root"},{"byte_length":2718,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17","program":{"byte_length":451,"sha256":"7d925a72d07005baaa5a9371f60e52199072e49139630af3348972394ef0539f"},"renderings":[{"byte_length":2405,"composed":{"byte_length":15180,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.Compose.RustCore","sha256":"7d22e9586c1743d738b40859b147aa0dea8e32c4f6ad7fe1baa28fab826c2ddf","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.Compose.RustCore.root"},"crate":{"byte_length":4003,"sha256":"9ee584eed11f7b4efb99475c2a6b35939dc35dd3f263806aec3ae84479b96685"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.RustCore","sha256":"4a3cf6c3bcdd82c135e769bbf5e7d85773d402a355baf45a47d61343a49c626a","target":"rust-core","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.RustCore.root"},{"byte_length":2402,"composed":{"byte_length":15171,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.Compose.RustStd","sha256":"9cbe3df8e69a9831502d5c98564615cd85e1b9d09c69b3484b79371b1d2985f6","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.Compose.RustStd.root"},"crate":{"byte_length":12921,"sha256":"5e115227d6075aa279430638e5ddb6995ac255db0bd608e107a843bd468dde51"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.RustStd","sha256":"905e13e37af8086888fa6f6edff838cc3f1aa2ec33c1dd7b46c50bf9dd20ba6e","target":"rust-std","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.RustStd.root"}],"root":"Coverage.Main.pairs","sha256":"264be0fb3e6bcc9e0dd4c5e12c26fe39ab13f1a495858bdb2b2625bee4166456","targets":["rust-core","rust-std"],"theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.root"},{"byte_length":10732,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18","program":{"byte_length":1873,"sha256":"b9a631ceb72fc1536c7c26c88ce17cb71084492929763dc601a2e579e3b15596"},"renderings":[{"byte_length":12456,"composed":{"byte_length":13223,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.Compose.RustCore","sha256":"dc1a13693ec8d4ed28d14ac1f2aec7b02f88afe61a5030696c7e069be0ed98b7","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.Compose.RustCore.root"},"crate":{"byte_length":5047,"sha256":"2c1e15094b24d3e5c9a0a06315afc8bf4c60341ba27fd1bf252230213141f5fe"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.RustCore","sha256":"8c0f0e4cef65831745a93246b0014d713ecd7116903c7ada6cd85f9b8e9f37ed","target":"rust-core","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.RustCore.root"},{"byte_length":12453,"composed":{"byte_length":13214,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.Compose.RustStd","sha256":"990a4cedfbe6b22092b12544ab3481e0a6944f57d56ed6bfe1715085add8f2b3","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.Compose.RustStd.root"},"crate":{"byte_length":13965,"sha256":"d46d5bf325126545575bdf8963f16739be5cfb777b38c5233acf8ea8c474a576"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.RustStd","sha256":"a144da54278fa38a665f895abb90e6e4868593e0bf91f2f607bcee7772826a78","target":"rust-std","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.RustStd.root"}],"root":"Coverage.Main.higher","sha256":"3ae253975e92896e980899f18979eb52dec9e0f40c6a3ed78a5189309ee825b5","targets":["rust-core","rust-std"],"theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.root"},{"byte_length":8621,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19","program":{"byte_length":1884,"sha256":"83625b33701e16e8f1014fd8a942ea0ac67a87cefb2ef0f93321f9dbc4bbe943"},"renderings":[{"byte_length":7953,"composed":{"byte_length":13594,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.Compose.RustStd","sha256":"cfd914aee605cf0074a554f1cde25456287afdc1f33550c7fde348142e3a3da8","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.Compose.RustStd.root"},"crate":{"byte_length":13607,"sha256":"ffd9d2b0d04acb6874cfa5f2983560a9c24a75e8bbd9f3b2580f84d5a76d7b70"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.RustStd","sha256":"05de0dc9402cdc13c8d513d91d4d4cfa0236e790b6c126a25c1cdcb850faf3a4","target":"rust-std","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.RustStd.root"}],"root":"Coverage.Main.mapped","sha256":"c11d523ee86ee6fb307a5005d640e56acb702ba809d812b62b1a1a575d36f01e","targets":["rust-std"],"theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.root"},{"byte_length":4983,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20","program":{"byte_length":999,"sha256":"d80d8fa87a73970b99d0429236be199dba9bdbb4207a8c64505ec3f999bc2775"},"renderings":[{"byte_length":4204,"composed":{"byte_length":12086,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.Compose.RustCore","sha256":"2269075615ad3dc3be4027776f2d11b6d5499d386edbf83956b0d5db310131da","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.Compose.RustCore.root"},"crate":{"byte_length":4179,"sha256":"fcb23d2bf0050b3ce8c890495631aa62147613e0a92836750e7c5fd2bb3b60dd"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.RustCore","sha256":"053177d6dfeb2ccb9bb14200baa6ec774e5061172b3bb1e991c2471017d6b25a","target":"rust-core","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.RustCore.root"},{"byte_length":4201,"composed":{"byte_length":12077,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.Compose.RustStd","sha256":"ebe1e0c7a60ef3018b1bddd5e791a1a9da7471f45cb97b3c03f27e1797db596f","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.Compose.RustStd.root"},"crate":{"byte_length":13097,"sha256":"a9de1e3631675db5a707a20a389993cdccd26644956d0ad09e14a25f26b8123f"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.RustStd","sha256":"f449debf270c78499303a84abef495d094f5d0348d18ab2985ed4a4227879b12","target":"rust-std","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.RustStd.root"}],"root":"Coverage.Main.parity","sha256":"00c953490ad0b23892b72968892d7eb3265260b90312ccfe82f6a1a7cfbcaf35","targets":["rust-core","rust-std"],"theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.root"},{"byte_length":6865,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21","program":{"byte_length":2446,"sha256":"ef7c0ba20d049db4524a6ec6561a20d86bd33230f60e21dc733706135be42f2d"},"renderings":[{"byte_length":7321,"composed":{"byte_length":13587,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.Compose.RustCore","sha256":"f72e63472f70a9917e8baa7be15c503626a25a68095bbd16303b63938441cb3c","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.Compose.RustCore.root"},"crate":{"byte_length":4385,"sha256":"f4884b32be79ba4577ae148c340ffd389f3ab673bab9b3e0a6151d92a64dac98"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.RustCore","sha256":"ca7b61e1fa20fb1d88128a261e4c368f8f6f64d2bcc58a6f38a4576fb2af83c6","target":"rust-core","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.RustCore.root"},{"byte_length":7318,"composed":{"byte_length":13578,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.Compose.RustStd","sha256":"c5209d7190738c19e5ef94e44b8516ca6da0119e3cb3c175e49f2d0cef391141","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.Compose.RustStd.root"},"crate":{"byte_length":13303,"sha256":"a09d0b574d6829f8ce94552a82e7770388c891bf3591aef3bdb2aa1c80734465"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.RustStd","sha256":"b69d0155af69dc16509b0fd824d84e91bac2ce901146cfab900b59fac987e38e","target":"rust-std","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.RustStd.root"}],"root":"Coverage.Prims.fixedSmall","sha256":"b6ebf05a529909b356a31db1586360b48ad34fd7059ab68977639a52fb4edbaa","targets":["rust-core","rust-std"],"theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.root"},{"byte_length":5605,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22","program":{"byte_length":1770,"sha256":"c5c4a8ee12a3a426500bb6c4e82af761e1af447511bd597e1bc5dce63970ddaf"},"renderings":[{"byte_length":5884,"composed":{"byte_length":14419,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.Compose.RustCore","sha256":"916f5e75830a5049efefcc920ae440f087f2ce3ce807cfc8d471b8b8005f2bfc","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.Compose.RustCore.root"},"crate":{"byte_length":4285,"sha256":"9ad73a749e8c19c7038a85d6fd571a10e3024158934cfc17d738099d4257e7c7"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.RustCore","sha256":"01aaf3b9fb3be0817a9bf9e7c03599fc0acf2e1ba0c5762a4acb8d4b4085adb1","target":"rust-core","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.RustCore.root"},{"byte_length":5881,"composed":{"byte_length":14410,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.Compose.RustStd","sha256":"0b43dc81a7e0cec3f9bc0c3bae377297bfa5cc5853b928f447ebda666b7a50b7","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.Compose.RustStd.root"},"crate":{"byte_length":13203,"sha256":"2e31d2ad0160635ba75b00c7c15bc08e71de244c902defb8fddb06175c8752e4"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.RustStd","sha256":"d18d06766b3c0bba8d0e6648a97279caf82f2a8bd90942a6bdc14eacc0b44e54","target":"rust-std","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.RustStd.root"}],"root":"Coverage.Prims.fixedMiddle","sha256":"c8f6832526c8de09cf54c5d9861698923f3c4bdc485062126d4f7c70f4cc93fe","targets":["rust-core","rust-std"],"theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.root"},{"byte_length":8520,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23","program":{"byte_length":3324,"sha256":"046e9276a504b885d2582f97b9c4fb34281d09496a6f649c6c147f6361e56c8d"},"renderings":[{"byte_length":8909,"composed":{"byte_length":15652,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.Compose.RustCore","sha256":"777663db99fe95472f1d25fc732997a12df54e18fba9a847c5268b44b11309fd","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.Compose.RustCore.root"},"crate":{"byte_length":4519,"sha256":"e68ee92c192814f24ef49f678d7b0f10e590262eaac0e5a5edafd2716711b54f"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.RustCore","sha256":"3f2270924061f724e5341da29a78ea107f595fc322fff922de4e034b5398032c","target":"rust-core","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.RustCore.root"},{"byte_length":8906,"composed":{"byte_length":15643,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.Compose.RustStd","sha256":"c91e60dd9b3b288171690de5f09c10d62e3bf2b5d07eae73ee9ed55464c9e10e","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.Compose.RustStd.root"},"crate":{"byte_length":13437,"sha256":"2f8e04183e437e3b85961d1277fa70eec93662dd97eb0e6e4f0d1d1adfc95798"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.RustStd","sha256":"21073f0acf9f769c1b473dba79f90a2297a931e4c05e44916f03c6a9c32de91f","target":"rust-std","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.RustStd.root"}],"root":"Coverage.Prims.fixedWide","sha256":"56d3eaee112114bbaf2dc2ad1f8b74a8f57b8ad94890182652b9e65deaedee73","targets":["rust-core","rust-std"],"theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.root"},{"byte_length":8690,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24","program":{"byte_length":3494,"sha256":"9ed3cf1ba1de6ddfd0c865acea0ee413b21ac44fb1d556e8eac704b552c3d018"},"renderings":[{"byte_length":9917,"composed":{"byte_length":15730,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.Compose.RustCore","sha256":"f71d03cd039c508f96fbebf3fbf4c69bd2eafdd43686da81a39418df24617ca7","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.Compose.RustCore.root"},"crate":{"byte_length":4562,"sha256":"f594bce05710d6a44ba4db5022a8759b6ac698bed7b389b7e60d820c93373a21"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.RustCore","sha256":"16e071c5ff73ea61a70b80b14269d904b7e2b9797c0dc679f213ec190abc5841","target":"rust-core","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.RustCore.root"},{"byte_length":9914,"composed":{"byte_length":15721,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.Compose.RustStd","sha256":"f6387dbfdb811f9c759b5f87e1ee458ed7bd5f768eaa42cd2c19964a83afb47b","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.Compose.RustStd.root"},"crate":{"byte_length":13480,"sha256":"34ed06527b7da3dc36936034ff6c7a0145675fd668c22ed6feafa9a3b418e3bf"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.RustStd","sha256":"eb098e508a35789c2da6fb4ea32e73b857d311816a1a99cd97cdae61e4bcb87c","target":"rust-std","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.RustStd.root"}],"root":"Coverage.Prims.bits","sha256":"4bf4de9e39e75702456c713b853727c6905aebc3b5a7b32d982241e31ebe3eb5","targets":["rust-core","rust-std"],"theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.root"},{"byte_length":3336,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25","program":{"byte_length":701,"sha256":"6227207e0bebaa6609e8bfedfaffb83e7fcb5e8c11d9ed9caaa35fb65b35766f"},"renderings":[{"byte_length":2932,"composed":{"byte_length":14299,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.Compose.RustCore","sha256":"d20da1def253686a4dd6cfca7e928905c2fab53375c5dce0b68eda074a71e4d9","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.Compose.RustCore.root"},"crate":{"byte_length":4072,"sha256":"177164e24d17c1a066fd7038902d01c1f8dfd73c69ed8377af3b1c2db5cc1412"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.RustCore","sha256":"a7c303d0cd089edba8fee58ca6e13d7027367027ed1aecef0f969315632749bc","target":"rust-core","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.RustCore.root"},{"byte_length":2929,"composed":{"byte_length":14290,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.Compose.RustStd","sha256":"bad0225ad42fbac6591d03580ad6e679b70e10438ea20e4d8f11c4126c826fb0","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.Compose.RustStd.root"},"crate":{"byte_length":12990,"sha256":"2f5c6ff9563847b0e68f1b9b206d825a78c81a047a954fd54ab509b3bd79de61"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.RustStd","sha256":"00b72f07ae13069e4e382b011bacc0ada63d170b0c88542a23c58c5763e0d7c9","target":"rust-std","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.RustStd.root"}],"root":"Coverage.Prims.conversions","sha256":"a88cb58fcf28b55f04a2df0bb306512f60dcd99805c5f5768b2fe80c7b75cd3b","targets":["rust-core","rust-std"],"theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.root"},{"byte_length":14059,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26","program":{"byte_length":5637,"sha256":"c01fc096fdf4c89e91adb6928197ce32bcb7e42426af0487546f4edc98fd3702"},"renderings":[{"byte_length":16373,"composed":{"byte_length":17651,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.Compose.RustStd","sha256":"2725219c8daaa666815dff73fbc73ae0ae341219cddd1873d40e8a67bd16b02c","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.Compose.RustStd.root"},"crate":{"byte_length":14078,"sha256":"64aebfe2ed7b706cea90fb4e7ee5b7630cb43e480aa43f74e6fe9af4c4142601"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.RustStd","sha256":"fa952416e631f18ab17c93317fffa22a6e47af83d382d977114a5d4869307ca0","target":"rust-std","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.RustStd.root"}],"root":"Coverage.Prims.sequences","sha256":"b930db2552f5ddc54f1b5b590af9a150727b6e1ee87a8d594459123c9f6ee246","targets":["rust-std"],"theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.root"},{"byte_length":3214,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27","program":{"byte_length":686,"sha256":"6fc888e3f1e9cf5a37f9f68cc01d1a1ff94cc30a552b384155cb811a9d13a526"},"renderings":[{"byte_length":2818,"composed":{"byte_length":12362,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.Compose.RustStd","sha256":"f14b07899954c6ba37a1446bb8f2c752ecb25685ef35049e4b7380a03510ebf0","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.Compose.RustStd.root"},"crate":{"byte_length":12956,"sha256":"11b389208a11b50ffd36526d42d3b92b00669a700b8875d53bef97f92efd7c8a"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.RustStd","sha256":"8ee66483b84ba34a7fe3897aa9f5dfc0cae38fcad8932e99b647e175a0eac78f","target":"rust-std","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.RustStd.root"}],"root":"Coverage.Prims.decimals","sha256":"6ed895951d7a994f8e10de3004f723ebf382a470a8d259823f1dde001f81c612","targets":["rust-std"],"theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.root"},{"byte_length":3046,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28","program":{"byte_length":529,"sha256":"a2d6d8d674af0354e10f236b2b6dcab2579a6ff9db94b3a696fb2c0679df7372"},"renderings":[{"byte_length":2791,"composed":{"byte_length":14110,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.Compose.RustStd","sha256":"b10964f6d6ba100400a5c22d1e579c38c49bd11339dbae2c3c6c08f24532ff28","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.Compose.RustStd.root"},"crate":{"byte_length":12933,"sha256":"d0b018bf12ebfd193d45370c9a299fe8448a30481f706e8bcf5a756c78b6359e"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.RustStd","sha256":"438424192056bb706df35f2040b738d60574465c740b32bfdab0d977cfe5bdff","target":"rust-std","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.RustStd.root"}],"root":"Coverage.Prims.formats","sha256":"5ab48a0c4cd15cf51d68cab63f119919eff5165d202d0fbe7dfa066edf61711b","targets":["rust-std"],"theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.root"},{"byte_length":11694,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29","program":{"byte_length":4118,"sha256":"54080023d9f656975c8d23e285159c2f80184d9c38941ebdeb9b115207eaea0f"},"renderings":[{"byte_length":14927,"composed":{"byte_length":13973,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.Compose.RustStd","sha256":"30230753eebd26c468b476a94a3e1cc3929860ab2ce3ace29872251aaded4095","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.Compose.RustStd.root"},"crate":{"byte_length":13981,"sha256":"e4aba3ad1a43ca155a88aec769bcc47479e9e5091944214f2a469ca7b68e7d9c"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.RustStd","sha256":"14a96961596e8be388348529eba7732325feb9798ec4c4f28d0bcda9e38b98be","target":"rust-std","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.RustStd.root"}],"root":"Coverage.Prims.text","sha256":"c6fd64105795a2d787dc4b00ba6a4f87795c8dfbc49ad997aa665c8b234d89c1","targets":["rust-std"],"theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.root"},{"byte_length":8119,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30","program":{"byte_length":1887,"sha256":"023b87970dcc71c4e8be45aa676e75b9db5753e3da5f8ac416891d595dca8b41"},"renderings":[{"byte_length":7705,"composed":{"byte_length":19612,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.Compose.RustStd","sha256":"122c3be8ad9cab47ac393312bff323e8232bcef0ac3ea1a4ca00f5e1b103e1da","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.Compose.RustStd.root"},"crate":{"byte_length":13423,"sha256":"7b6d66e610ef88eda88943c88c3322a2c1bf519e41049d16afe53d039cd7033a"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.RustStd","sha256":"368bb152a9658bd55d49d00b90faeff3425b5e2832e4434cb20dc68f42935fa5","target":"rust-std","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.RustStd.root"}],"root":"Coverage.RecRoots.roseTotal","sha256":"7b7fe303e6bd5d42d76dc376ab69e150c55d13aba8111827f8a501d8a93f7b8a","targets":["rust-std"],"theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.root"},{"byte_length":12655,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31","program":{"byte_length":2687,"sha256":"0b283960a85e885aef98cffde5a37a5840fe6905cb960332eb57755a9f588e7b"},"renderings":[{"byte_length":15589,"composed":{"byte_length":27393,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.Compose.RustStd","sha256":"b928563774c1b4d597f3c9cc63b9599d184a0ad157beddf1c8e7237af94a9ec2","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.Compose.RustStd.root"},"crate":{"byte_length":14339,"sha256":"3c3d755be5666a0def8f507f530fa6c1b75ce74ae299363b69cdd7f19b598674"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.RustStd","sha256":"80042fcc0b62c48667d3999e7e674703649bf6bbf4dd6d5340eb23eb9065a397","target":"rust-std","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.RustStd.root"}],"root":"Coverage.RecRoots.syntaxTotal","sha256":"1f9168fcb6dbbb2a615ca9aecc976e6b23ecda16bd7c7e7bd684804d5a8bdf17","targets":["rust-std"],"theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.root"},{"byte_length":17232,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32","program":{"byte_length":3120,"sha256":"a30548452b5811cfc83abdc547d7e93bbdfaf6ae193442225eed19b212b84e5d"},"renderings":[{"byte_length":19234,"composed":{"byte_length":13329,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.Compose.RustCore","sha256":"eccfd6321739278330ff50de08d79c0e395b5f29b539cc4adb10de61157ae26d","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.Compose.RustCore.root"},"crate":{"byte_length":5179,"sha256":"595b9659cce79629fb199be239edeba9f908e19c5863ec7fc71ddbea1ca6b16d"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.RustCore","sha256":"43ea4aca87af6a47860857a3fddbaaac30b7591a47cea4197b586887e366ede8","target":"rust-core","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.RustCore.root"},{"byte_length":19231,"composed":{"byte_length":13320,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.Compose.RustStd","sha256":"2e5185e611c65d40cad9af9f34f070076aac06749cd5c0241fb0dd34f659e799","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.Compose.RustStd.root"},"crate":{"byte_length":14097,"sha256":"5bde24114f0f63beca1277bf6cd06ea203bd89352590534d5844f6639bbeb943"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.RustStd","sha256":"8936ba4a02cc0f2c5bf0047297e66c3a7e3e93e21cfea1c4456fa40b54c1c964","target":"rust-std","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.RustStd.root"}],"root":"Coverage.RecRoots.wellFounded","sha256":"c4848159695058b0ab88dcec5b215dcd53d82db2e7c437bc3b37bfb0f24d2d09","targets":["rust-core","rust-std"],"theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.root"},{"byte_length":15632,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33","program":{"byte_length":2757,"sha256":"696084d3a568dde72c41261e20eb3e6dfc3055d9f56ddb2a9980a5b1eb061f89"},"renderings":[{"byte_length":13569,"composed":{"byte_length":16990,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.Compose.RustStd","sha256":"cf72917d55a8dacf864e3dcc8935f126b1b7fc072f69d0fcef3a727289788d7a","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.Compose.RustStd.root"},"crate":{"byte_length":14222,"sha256":"85ddef0fbc268b258386fd1d552610372cf646edbeda718288d5bc4554a58de0"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.RustStd","sha256":"373c06d76854d5f39a4e6004d8b4abbaf1701bc8840c2a3cddee5edf24411802","target":"rust-std","theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.RustStd.root"}],"root":"Coverage.RecRoots.rewrite","sha256":"e0dabc10f6aa17a0ceef18ddad820eac9b5251dcfcf7daca8baf46ed3ab75578","targets":["rust-std"],"theorem":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.root"}],"spec":"lexlean/preservation/1"} diff --git a/examples/production-coverage/expected/verify/probe/LexLeanProbe.Pf3572b43e36d5c62b7601d32507ebc3a.lean b/examples/production-coverage/expected/verify/probe/LexLeanProbe.Pe05bf7cb47aac48ea11c4a7ac75c7962.lean similarity index 100% rename from examples/production-coverage/expected/verify/probe/LexLeanProbe.Pf3572b43e36d5c62b7601d32507ebc3a.lean rename to examples/production-coverage/expected/verify/probe/LexLeanProbe.Pe05bf7cb47aac48ea11c4a7ac75c7962.lean diff --git a/examples/production-coverage/expected/verify/probe/process.json b/examples/production-coverage/expected/verify/probe/process.json index e8b8ae1ff..f98d74752 100644 --- a/examples/production-coverage/expected/verify/probe/process.json +++ b/examples/production-coverage/expected/verify/probe/process.json @@ -1 +1 @@ -{"argv":["env","lean","$STAGING/probe/LexLeanProbe.Pf3572b43e36d5c62b7601d32507ebc3a.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanProbe.Pf3572b43e36d5c62b7601d32507ebc3a","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} +{"argv":["env","lean","$STAGING/probe/LexLeanProbe.Pe05bf7cb47aac48ea11c4a7ac75c7962.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanProbe.Pe05bf7cb47aac48ea11c4a7ac75c7962","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.Compose.RustStd.json new file mode 100644 index 000000000..009d170a1 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.RustStd.json new file mode 100644 index 000000000..d1a225e09 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.json new file mode 100644 index 000000000..32fd9d9b8 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.Compose.RustStd.json new file mode 100644 index 000000000..9d901a182 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.RustStd.json new file mode 100644 index 000000000..12020050c --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.json new file mode 100644 index 000000000..445df3681 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.Compose.RustCore.json new file mode 100644 index 000000000..d4bd25289 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.Compose.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.Compose.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.Compose.RustStd.json new file mode 100644 index 000000000..8d6b695bf --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.RustCore.json new file mode 100644 index 000000000..baf801caa --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.RustStd.json new file mode 100644 index 000000000..185394b17 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.json new file mode 100644 index 000000000..b78e91bb5 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.Compose.RustCore.json new file mode 100644 index 000000000..a07b1fe8c --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.Compose.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.Compose.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.Compose.RustStd.json new file mode 100644 index 000000000..281fdf197 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.RustCore.json new file mode 100644 index 000000000..606b8aeae --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.RustStd.json new file mode 100644 index 000000000..a4fcf332c --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.json new file mode 100644 index 000000000..94b0a1f31 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.Compose.RustCore.json new file mode 100644 index 000000000..400f3c64f --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.Compose.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.Compose.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.Compose.RustStd.json new file mode 100644 index 000000000..4e7de8cba --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.RustCore.json new file mode 100644 index 000000000..eb2ad9f06 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.RustStd.json new file mode 100644 index 000000000..869e2678e --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.json new file mode 100644 index 000000000..b46447b1b --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.Compose.RustStd.json new file mode 100644 index 000000000..8dcd7c291 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.RustStd.json new file mode 100644 index 000000000..48ab0f573 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.json new file mode 100644 index 000000000..a913fe2e4 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustCore.json new file mode 100644 index 000000000..ef69db157 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustStd.json new file mode 100644 index 000000000..d24fdbb2a --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.RustCore.json new file mode 100644 index 000000000..808186254 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.RustStd.json new file mode 100644 index 000000000..158c951de --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.json new file mode 100644 index 000000000..508e6f94b --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.Compose.RustCore.json new file mode 100644 index 000000000..29cb3fd22 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.Compose.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.Compose.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.Compose.RustStd.json new file mode 100644 index 000000000..2218fb6bf --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.RustCore.json new file mode 100644 index 000000000..46c69e483 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.RustStd.json new file mode 100644 index 000000000..9fa54fd16 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.json new file mode 100644 index 000000000..87c334291 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.Compose.RustCore.json new file mode 100644 index 000000000..0b9362a8e --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.Compose.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.Compose.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.Compose.RustStd.json new file mode 100644 index 000000000..1119bb67b --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.RustCore.json new file mode 100644 index 000000000..8ea810fcc --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.RustStd.json new file mode 100644 index 000000000..97405b776 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.json new file mode 100644 index 000000000..157fc4c8f --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.Compose.RustCore.json new file mode 100644 index 000000000..c8c47f029 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.Compose.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.Compose.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.Compose.RustStd.json new file mode 100644 index 000000000..af839359a --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.RustCore.json new file mode 100644 index 000000000..07d2cfed3 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.RustStd.json new file mode 100644 index 000000000..a32f65818 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.json new file mode 100644 index 000000000..8d7ce5086 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.Compose.RustCore.json new file mode 100644 index 000000000..038f40175 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.Compose.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.Compose.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.Compose.RustStd.json new file mode 100644 index 000000000..e5f40ddb9 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.RustCore.json new file mode 100644 index 000000000..eddfabe6f --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.RustStd.json new file mode 100644 index 000000000..6c335bfac --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.json new file mode 100644 index 000000000..30e5bd9fd --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.Compose.RustStd.json new file mode 100644 index 000000000..d69741f50 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.RustStd.json new file mode 100644 index 000000000..c73548b84 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.json new file mode 100644 index 000000000..616d70d42 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.Compose.RustStd.json new file mode 100644 index 000000000..1ff8ad534 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.RustStd.json new file mode 100644 index 000000000..15fa3f630 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.json new file mode 100644 index 000000000..c10965cc6 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.Compose.RustCore.json new file mode 100644 index 000000000..8e71eae3f --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.Compose.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.Compose.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.Compose.RustStd.json new file mode 100644 index 000000000..40cc782e2 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.RustCore.json new file mode 100644 index 000000000..7862532e2 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.RustStd.json new file mode 100644 index 000000000..4e0bc6888 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.json new file mode 100644 index 000000000..2122279dd --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.Compose.RustCore.json new file mode 100644 index 000000000..5f9cefed7 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.Compose.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.Compose.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.Compose.RustStd.json new file mode 100644 index 000000000..02b4ca8e0 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.RustCore.json new file mode 100644 index 000000000..b7dd4af2d --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.RustStd.json new file mode 100644 index 000000000..3f7f96f5a --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.json new file mode 100644 index 000000000..35b48e127 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.Compose.RustCore.json new file mode 100644 index 000000000..b3b88b072 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.Compose.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.Compose.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.Compose.RustStd.json new file mode 100644 index 000000000..279ddc03e --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.RustCore.json new file mode 100644 index 000000000..773809bdf --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.RustStd.json new file mode 100644 index 000000000..9998317ef --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.json new file mode 100644 index 000000000..42dbaf427 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.Compose.RustCore.json new file mode 100644 index 000000000..3b0ce3a61 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.Compose.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.Compose.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.Compose.RustStd.json new file mode 100644 index 000000000..2776f6608 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.RustCore.json new file mode 100644 index 000000000..492ded7f8 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.RustStd.json new file mode 100644 index 000000000..33f914e31 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.json new file mode 100644 index 000000000..43ab8fa54 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.Compose.RustCore.json new file mode 100644 index 000000000..af28fa730 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.Compose.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.Compose.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.Compose.RustStd.json new file mode 100644 index 000000000..35d07ea26 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.RustCore.json new file mode 100644 index 000000000..a30d4afc5 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.RustStd.json new file mode 100644 index 000000000..000a581e5 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.json new file mode 100644 index 000000000..ebd369a85 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.Compose.RustCore.json new file mode 100644 index 000000000..cb0536a1f --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.Compose.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.Compose.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.Compose.RustStd.json new file mode 100644 index 000000000..e02eaffd6 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.RustCore.json new file mode 100644 index 000000000..87c1031a0 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.RustStd.json new file mode 100644 index 000000000..8053981e2 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.json new file mode 100644 index 000000000..bc3e39a1f --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.Compose.RustStd.json new file mode 100644 index 000000000..bbd6653bf --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.RustStd.json new file mode 100644 index 000000000..5de529825 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.json new file mode 100644 index 000000000..70b7d473b --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.Compose.RustStd.json new file mode 100644 index 000000000..25d8c8acf --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.RustStd.json new file mode 100644 index 000000000..f8904b066 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.json new file mode 100644 index 000000000..50a3af7a6 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.Compose.RustStd.json new file mode 100644 index 000000000..87f82c53d --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.RustStd.json new file mode 100644 index 000000000..e83d33e22 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.json new file mode 100644 index 000000000..16debce01 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.Compose.RustStd.json new file mode 100644 index 000000000..a6f4e4bd3 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.RustStd.json new file mode 100644 index 000000000..cb4523e33 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.json new file mode 100644 index 000000000..651cf4ac8 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.Compose.RustStd.json new file mode 100644 index 000000000..b6a5df50c --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.RustStd.json new file mode 100644 index 000000000..7b3bb590e --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.json new file mode 100644 index 000000000..59386f184 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.Compose.RustStd.json new file mode 100644 index 000000000..38508489f --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.RustStd.json new file mode 100644 index 000000000..b3ef29eeb --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.json new file mode 100644 index 000000000..290ddf5bf --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.Compose.RustStd.json new file mode 100644 index 000000000..c08153e2e --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.RustStd.json new file mode 100644 index 000000000..54fb81b1e --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.json new file mode 100644 index 000000000..77cd1ac67 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.Compose.RustCore.json new file mode 100644 index 000000000..9f5caa2d9 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.Compose.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.Compose.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.Compose.RustStd.json new file mode 100644 index 000000000..8f5722ce2 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.RustCore.json new file mode 100644 index 000000000..6c155aee7 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.RustStd.json new file mode 100644 index 000000000..e3ab8a168 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.json new file mode 100644 index 000000000..6332c68d4 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.Compose.RustStd.json new file mode 100644 index 000000000..8d30ea3c7 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.RustStd.json new file mode 100644 index 000000000..49dc1add0 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.json new file mode 100644 index 000000000..6aa82ed7f --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.Compose.RustStd.json new file mode 100644 index 000000000..6a0717d2d --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.RustStd.json new file mode 100644 index 000000000..85913fc71 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.json new file mode 100644 index 000000000..fb04809b7 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.Compose.RustStd.json new file mode 100644 index 000000000..012727e60 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.RustStd.json new file mode 100644 index 000000000..1d99f1c2f --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.json new file mode 100644 index 000000000..d630db0f5 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.Compose.RustStd.json new file mode 100644 index 000000000..49331d349 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.RustStd.json new file mode 100644 index 000000000..4a9a75fbd --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.json new file mode 100644 index 000000000..c8d27f8a6 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.Compose.RustStd.json new file mode 100644 index 000000000..ab0f71757 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.RustStd.json new file mode 100644 index 000000000..d65d95344 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.json new file mode 100644 index 000000000..9a5ebe3ba --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.Compose.RustStd.json new file mode 100644 index 000000000..43866284d --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.RustStd.json new file mode 100644 index 000000000..9fa453536 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.json new file mode 100644 index 000000000..7e0484dac --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.Compose.RustStd.json new file mode 100644 index 000000000..1e74612c5 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.RustStd.json new file mode 100644 index 000000000..330d652e8 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.json new file mode 100644 index 000000000..ff6f52418 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.Compose.RustStd.json deleted file mode 100644 index c7f343136..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.RustStd.json deleted file mode 100644 index 11fdbc24b..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.json deleted file mode 100644 index da3fe905c..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.Compose.RustStd.json deleted file mode 100644 index a6da3f441..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.RustStd.json deleted file mode 100644 index b7269a513..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.json deleted file mode 100644 index 233a4453b..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.Compose.RustCore.json deleted file mode 100644 index 0220eeb99..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.Compose.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.Compose.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.Compose.RustStd.json deleted file mode 100644 index 259d5c54c..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.RustCore.json deleted file mode 100644 index d0b8ce55c..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.RustStd.json deleted file mode 100644 index 05b0efb75..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.json deleted file mode 100644 index 513dc2337..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.Compose.RustCore.json deleted file mode 100644 index 4cc26a2ff..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.Compose.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.Compose.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.Compose.RustStd.json deleted file mode 100644 index cf9384aee..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.RustCore.json deleted file mode 100644 index 1f62a24fd..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.RustStd.json deleted file mode 100644 index 42c4b547c..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.json deleted file mode 100644 index c53d03bf8..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.Compose.RustCore.json deleted file mode 100644 index bfc5cafbd..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.Compose.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.Compose.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.Compose.RustStd.json deleted file mode 100644 index 8ee6e3a6e..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.RustCore.json deleted file mode 100644 index 860a6b8cc..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.RustStd.json deleted file mode 100644 index ae46d6843..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.json deleted file mode 100644 index 52ec9ea1a..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.Compose.RustStd.json deleted file mode 100644 index 26cdc92a7..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.RustStd.json deleted file mode 100644 index 83f5070e9..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.json deleted file mode 100644 index 6bbcdf725..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustCore.json deleted file mode 100644 index fc2666ad3..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustStd.json deleted file mode 100644 index e9c30d3c9..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.RustCore.json deleted file mode 100644 index 4a5f28fe6..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.RustStd.json deleted file mode 100644 index bb1e697c6..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.json deleted file mode 100644 index a9638c230..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.Compose.RustCore.json deleted file mode 100644 index f239bc786..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.Compose.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.Compose.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.Compose.RustStd.json deleted file mode 100644 index 5690d2c20..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.RustCore.json deleted file mode 100644 index d685501b7..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.RustStd.json deleted file mode 100644 index 2de6caab6..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.json deleted file mode 100644 index 10e793644..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.Compose.RustCore.json deleted file mode 100644 index decfbc08f..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.Compose.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.Compose.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.Compose.RustStd.json deleted file mode 100644 index 9ff0e55a4..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.RustCore.json deleted file mode 100644 index a783c5b4b..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.RustStd.json deleted file mode 100644 index 3918d64b1..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.json deleted file mode 100644 index 4d163c85f..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.Compose.RustCore.json deleted file mode 100644 index 31636d8a3..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.Compose.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.Compose.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.Compose.RustStd.json deleted file mode 100644 index 83d6f06b2..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.RustCore.json deleted file mode 100644 index bb320324c..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.RustStd.json deleted file mode 100644 index 94600cbc5..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.json deleted file mode 100644 index 3122baa38..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.Compose.RustCore.json deleted file mode 100644 index 27d376441..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.Compose.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.Compose.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.Compose.RustStd.json deleted file mode 100644 index 9fd1eb7a6..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.RustCore.json deleted file mode 100644 index f0ba41d8a..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.RustStd.json deleted file mode 100644 index 8611b109e..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.json deleted file mode 100644 index 391bc129e..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.Compose.RustStd.json deleted file mode 100644 index bd44467ef..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.RustStd.json deleted file mode 100644 index 59306ac7c..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.json deleted file mode 100644 index 17099e9ac..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.Compose.RustStd.json deleted file mode 100644 index ba29ea628..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.RustStd.json deleted file mode 100644 index 5cf51ed05..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.json deleted file mode 100644 index eac702e21..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.Compose.RustCore.json deleted file mode 100644 index 1706b0788..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.Compose.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.Compose.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.Compose.RustStd.json deleted file mode 100644 index f86f7c795..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.RustCore.json deleted file mode 100644 index 0f25c04b6..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.RustStd.json deleted file mode 100644 index 104c271fa..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.json deleted file mode 100644 index 955eabc00..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.Compose.RustCore.json deleted file mode 100644 index 4f59b47be..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.Compose.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.Compose.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.Compose.RustStd.json deleted file mode 100644 index 47b4398b8..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.RustCore.json deleted file mode 100644 index 888b3f6b7..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.RustStd.json deleted file mode 100644 index cc4ec399b..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.json deleted file mode 100644 index ebb211d27..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.Compose.RustCore.json deleted file mode 100644 index 8afcacc58..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.Compose.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.Compose.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.Compose.RustStd.json deleted file mode 100644 index dd6eb2b03..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.RustCore.json deleted file mode 100644 index ebcca9268..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.RustStd.json deleted file mode 100644 index 6f53766e7..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.json deleted file mode 100644 index cbb1cc688..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.Compose.RustCore.json deleted file mode 100644 index d97bd845f..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.Compose.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.Compose.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.Compose.RustStd.json deleted file mode 100644 index 455d2e4b8..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.RustCore.json deleted file mode 100644 index 7370e329a..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.RustStd.json deleted file mode 100644 index 2f3534c64..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.json deleted file mode 100644 index b9ca3f31c..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.Compose.RustCore.json deleted file mode 100644 index 56bc97845..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.Compose.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.Compose.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.Compose.RustStd.json deleted file mode 100644 index 093d6ecdb..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.RustCore.json deleted file mode 100644 index 694c6bb61..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.RustStd.json deleted file mode 100644 index dcb78f364..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.json deleted file mode 100644 index 4266faee1..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.Compose.RustCore.json deleted file mode 100644 index a8c66e249..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.Compose.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.Compose.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.Compose.RustStd.json deleted file mode 100644 index 8c7cb5e8b..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.RustCore.json deleted file mode 100644 index 44720c7a8..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.RustStd.json deleted file mode 100644 index 581403408..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.json deleted file mode 100644 index 1ae362edc..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.Compose.RustStd.json deleted file mode 100644 index a33ba94da..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.RustStd.json deleted file mode 100644 index 30419f147..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.json deleted file mode 100644 index 6a082c1e1..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.Compose.RustStd.json deleted file mode 100644 index 043d90067..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.RustStd.json deleted file mode 100644 index 42c525c87..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.json deleted file mode 100644 index 48070a23b..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.Compose.RustStd.json deleted file mode 100644 index d2205f94e..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.RustStd.json deleted file mode 100644 index 5f60b4d6c..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.json deleted file mode 100644 index 7473776c5..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.Compose.RustStd.json deleted file mode 100644 index 530e82caf..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.RustStd.json deleted file mode 100644 index c37f381ef..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.json deleted file mode 100644 index 7ee1f60e4..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.Compose.RustStd.json deleted file mode 100644 index 4892207b8..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.RustStd.json deleted file mode 100644 index 09bd1ebfe..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.json deleted file mode 100644 index 6d7f63458..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.Compose.RustStd.json deleted file mode 100644 index b1a400dcf..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.RustStd.json deleted file mode 100644 index 9703b536c..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.json deleted file mode 100644 index ce12791fb..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.Compose.RustStd.json deleted file mode 100644 index 37053c082..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.RustStd.json deleted file mode 100644 index a473d237b..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.json deleted file mode 100644 index 2768ef279..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.Compose.RustCore.json deleted file mode 100644 index b87f3205d..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.Compose.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.Compose.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.Compose.RustStd.json deleted file mode 100644 index 510969168..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.RustCore.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.RustCore.json deleted file mode 100644 index a8d28cf66..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.RustStd.json deleted file mode 100644 index 0309888f8..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.json deleted file mode 100644 index 1f63470bf..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.Compose.RustStd.json deleted file mode 100644 index 70a4e576d..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.RustStd.json deleted file mode 100644 index 8fe5a3301..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.json deleted file mode 100644 index 37ae07eef..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.Compose.RustStd.json deleted file mode 100644 index 5ce890622..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.RustStd.json deleted file mode 100644 index b209bbd11..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.json deleted file mode 100644 index f8fa3b574..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.Compose.RustStd.json deleted file mode 100644 index f322ed25d..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.RustStd.json deleted file mode 100644 index b7aac1de6..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.json deleted file mode 100644 index c37c7a5ca..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.Compose.RustStd.json deleted file mode 100644 index c9c494355..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.RustStd.json deleted file mode 100644 index 0ed4da959..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.json deleted file mode 100644 index 82d0af823..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.Compose.RustStd.json deleted file mode 100644 index 75d20d55b..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.RustStd.json deleted file mode 100644 index 16ab35349..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.json deleted file mode 100644 index 0dc443663..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.Compose.RustStd.json deleted file mode 100644 index 27ed51d94..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.RustStd.json deleted file mode 100644 index c6342bc97..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.json deleted file mode 100644 index 45a9bfd03..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.Compose.RustStd.json deleted file mode 100644 index c4be440d6..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.RustStd.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.RustStd.json deleted file mode 100644 index d75a7ce85..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.json b/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.json deleted file mode 100644 index 9f6d12bec..000000000 --- a/examples/production-coverage/expected/verify/process/leanchecker/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Audit.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Audit.json index 4b3a9b500..6ca5b3145 100644 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Audit.json +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Audit.json @@ -1 +1 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","$STAGING/preserve-src/LexLeanPreserve/Audit.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Audit","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanPreservation.Obs' does not depend on any axioms\n'LexLeanPreservation.obs.match_1' does not depend on any axioms\n'LexLeanPreservation.obs' does not depend on any axioms\n'LexLeanPreservation.Conv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ConvA' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ObsL' does not depend on any axioms\n'LexLeanPreservation.obsL.match_1' does not depend on any axioms\n'LexLeanPreservation.obsL' does not depend on any axioms\n'LexLeanPreservation.ConvL' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.FunRel' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Obs._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.Obs._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.Obs.casesOn' does not depend on any axioms\n'LexLeanPreservation.Obs.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.Obs.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Obs.ctorElim' does not depend on any axioms\n'LexLeanPreservation.Obs.overflow.elim' does not depend on any axioms\n'LexLeanPreservation.Obs.stuck.elim' does not depend on any axioms\n'LexLeanPreservation.Obs.value.elim' does not depend on any axioms\n'LexLeanPreservation.Obs.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.Obs.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Obs.overflow.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Obs.recOn' does not depend on any axioms\n'LexLeanPreservation.Obs.stuck.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Obs.value.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Obs.value.inj' does not depend on any axioms\n'LexLeanPreservation.Obs.value.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Obs.value.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ObsL._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.ObsL._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.ObsL.casesOn' does not depend on any axioms\n'LexLeanPreservation.ObsL.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.ObsL.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.ObsL.ctorElim' does not depend on any axioms\n'LexLeanPreservation.ObsL.overflow.elim' does not depend on any axioms\n'LexLeanPreservation.ObsL.stuck.elim' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.elim' does not depend on any axioms\n'LexLeanPreservation.ObsL.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.ObsL.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ObsL.overflow.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ObsL.recOn' does not depend on any axioms\n'LexLeanPreservation.ObsL.stuck.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.inj' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.injEq' depends on axioms: [propext]\n'LexLeanPreservation.ObsL.values.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rel' does not depend on any axioms\n'LexLeanPreservation.Rel.eq_1' does not depend on any axioms\n'LexLeanPreservation.RelL' does not depend on any axioms\n'LexLeanPreservation.RelL.eq_1' does not depend on any axioms\n'LexLeanPreservation.RunConv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.addSteps_ne' does not depend on any axioms\n'LexLeanPreservation.chargeResult_ne' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.stable.match_1_16' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_18' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_20' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_22' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_24' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_26' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.eval.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.stable' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.evalArms_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs_ne' does not depend on any axioms\n'LexLeanPreservation.convA_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.eval_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs_addSteps' does not depend on any axioms\n'LexLeanPreservation.convA_hit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.convA_miss' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.evalList_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obsL_ne' does not depend on any axioms\n'LexLeanPreservation.convL_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.convL_cons._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.convL_cons._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.convL_cons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.convL_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_apply._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_apply._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_apply._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_apply' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_build' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_call._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_call._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_call' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_closure' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_cond._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_cond._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_field' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_first' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_let._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_let._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_let' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_match._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_match._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_match' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_matchV' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs_chargeResult' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_prim' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_second' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_var' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.funRel_intro' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs.eq_1' does not depend on any axioms\n'LexLeanPreservation.obs.eq_2' does not depend on any axioms\n'LexLeanPreservation.obs.eq_3' does not depend on any axioms\n'LexLeanPreservation.obs.eq_4' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_1' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_2' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_3' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_4' does not depend on any axioms\n'LexLeanPreservation.run_of_funRel' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.run.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ListEnc' does not depend on any axioms\n'LexLeanPreservation.ListEnc._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.ListEnc._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.ListEnc.casesOn' does not depend on any axioms\n'LexLeanPreservation.ListEnc.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.ListEnc.elem' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items' does not depend on any axioms\n'LexLeanPreservation.ListEnc.enc' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_cons' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_eq.match_1_1' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_nil' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_eq._f' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_eq' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.ListEnc.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.ListEnc.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk.inj' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk.injEq' depends on axioms: [propext]\n'LexLeanPreservation.ListEnc.mk.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ListEnc.recOn' does not depend on any axioms\n'LexLeanPreservation.OptEnc' does not depend on any axioms\n'LexLeanPreservation.OptEnc._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.OptEnc._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.OptEnc.casesOn' does not depend on any axioms\n'LexLeanPreservation.OptEnc.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.OptEnc.elem' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc_none' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc_some' does not depend on any axioms\n'LexLeanPreservation.encOption.match_1' does not depend on any axioms\n'LexLeanPreservation.encOption' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc_map' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.OptEnc.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.OptEnc.noConfusion' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk.noConfusion' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk.inj' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk.injEq' depends on axioms: [propext]\n'LexLeanPreservation.OptEnc.mk.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.OptEnc.recOn' does not depend on any axioms\n'LexLeanPreservation.construct_adt' does not depend on any axioms\n'LexLeanPreservation.construct_cons' does not depend on any axioms\n'LexLeanPreservation.construct_error' does not depend on any axioms\n'LexLeanPreservation.construct_false' does not depend on any axioms\n'LexLeanPreservation.construct_nil' does not depend on any axioms\n'LexLeanPreservation.construct_none' does not depend on any axioms\n'LexLeanPreservation.construct_ok' does not depend on any axioms\n'LexLeanPreservation.construct_pair' does not depend on any axioms\n'LexLeanPreservation.construct_some' does not depend on any axioms\n'LexLeanPreservation.construct_succ' does not depend on any axioms\n'LexLeanPreservation.construct_true' does not depend on any axioms\n'LexLeanPreservation.construct_unit' does not depend on any axioms\n'LexLeanPreservation.construct_zero' does not depend on any axioms\n'LexLeanPreservation.encExcept.match_1' does not depend on any axioms\n'LexLeanPreservation.encExcept' does not depend on any axioms\n'LexLeanPreservation.encList' does not depend on any axioms\n'LexLeanPreservation.encOrdering.match_1' does not depend on any axioms\n'LexLeanPreservation.encOrdering' does not depend on any axioms\n'LexLeanPreservation.encPair' does not depend on any axioms\n'LexLeanPreservation.encUnit' does not depend on any axioms\n'LexLeanPreservation.listEnc._proof_1' does not depend on any axioms\n'LexLeanPreservation.listEnc._proof_2' does not depend on any axioms\n'LexLeanPreservation.listEnc' does not depend on any axioms\n'LexLeanPreservation.optEnc._proof_1' does not depend on any axioms\n'LexLeanPreservation.optEnc._proof_2' does not depend on any axioms\n'LexLeanPreservation.optEnc' does not depend on any axioms\n'LexLeanPreservation.bytes_empty' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.bytes_one' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.bytes_zero' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.encOrdering.eq_1' does not depend on any axioms\n'LexLeanPreservation.encOrdering.eq_2' does not depend on any axioms\n'LexLeanPreservation.encOrdering.eq_3' does not depend on any axioms\n'LexLeanPreservation.fromOrdering_encOrdering' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.fromStrings_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.fromStrings_map._f' does not depend on any axioms\n'LexLeanPreservation.fromStrings_map' does not depend on any axioms\n'LexLeanPreservation.intFits' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.listIndex_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.listIndex_map._f' does not depend on any axioms\n'LexLeanPreservation.listIndex_map' does not depend on any axioms\n'LexLeanPreservation.listIndex_unique.match_1_1' does not depend on any axioms\n'LexLeanPreservation.listIndex_unique._f' does not depend on any axioms\n'LexLeanPreservation.listIndex_unique' does not depend on any axioms\n'LexLeanPreservation.obs_intResult' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.obs_natResult' does not depend on any axioms\n'LexLeanPreservation.prim_append_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_append_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_boolNot' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_compareBytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_bool' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_nat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_ordering' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_string' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_index_bytes.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_index_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_index_list.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_index_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intMul' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intNeg' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intQuot' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intRem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intSub' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_join.match_1_1' does not depend on any axioms\n'LexLeanPreservation.toStrings_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.toStrings_map.match_1_3' does not depend on any axioms\n'LexLeanPreservation.toStrings_map._f' does not depend on any axioms\n'LexLeanPreservation.toStrings_map' does not depend on any axioms\n'LexLeanPreservation.prim_join' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_length_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_length_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_length_string' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natAdd' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natEq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natLe' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natLt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natMul' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natQuot' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natRem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natSub' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_slice_bytes.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_slice_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_slice_list.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_slice_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_splitExact.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_splitExact' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_utf8Decode.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_utf8Decode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_utf8Encode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.compareBytes.eq_1' depends on axioms: [propext]\n'LexLeanRuntime.equal.eq_1' does not depend on any axioms\n'LexLeanRuntime.length.eq_1' does not depend on any axioms\n'LexLeanRuntime.slice.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromOrdering.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.checkedMultiplyWith.match_1' does not depend on any axioms\n'LexLeanPreservation.checkedMultiplyWith' does not depend on any axioms\n'LexLeanPreservation.checkedQuotientWith' does not depend on any axioms\n'LexLeanPreservation.decimalFits.match_1' does not depend on any axioms\n'LexLeanPreservation.decimalFits' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.divideStep' does not depend on any axioms\n'LexLeanPreservation.divide_unique.match_1_1' does not depend on any axioms\n'LexLeanPreservation.divide_unique._f' does not depend on any axioms\n'LexLeanPreservation.divide_unique' does not depend on any axioms\n'LexLeanPreservation.multiplyStep' does not depend on any axioms\n'LexLeanPreservation.multiply_unique.match_1_1' does not depend on any axioms\n'LexLeanPreservation.multiply_unique._f' does not depend on any axioms\n'LexLeanPreservation.multiply_unique' does not depend on any axioms\n'LexLeanPreservation.prim_bitAnd_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i64.match_1_2' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_int' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_int.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_int' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ordOf.match_1' does not depend on any axioms\n'LexLeanPreservation.ordOf' does not depend on any axioms\n'LexLeanPreservation.KeySpec' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.mk._flat_ctor' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.recOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.spec' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.compareCodes_eq.match_1_1' does not depend on any axioms\n'LexLeanPreservation.compareCodes_eq._f' depends on axioms: [propext]\n'LexLeanPreservation.compareCodes_eq' depends on axioms: [propext]\n'LexLeanPreservation.compareCodes_swap.match_1_1' does not depend on any axioms\n'LexLeanPreservation.compareCodes_swap._f' depends on axioms: [propext]\n'LexLeanPreservation.compareCodes_swap' depends on axioms: [propext]\n'LexLeanPreservation.lessThanE' does not depend on any axioms\n'LexLeanPreservation.prim_compare_key.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_compare_key' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_lessThan' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.orderOf_insert' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.orderBool.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.keySpec_bool' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI16.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI32.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI64.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI8.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderInt.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_int' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderNat.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_nat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.keySpec_pair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderString.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.keySpec_string' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU16.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU32.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU64.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU8.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanCollections.compareCodes._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_2' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_3' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_4' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_def' depends on axioms: [propext]\n'LexLeanCollections.insertEntry.eq_1' does not depend on any axioms\n'LexLeanCollections.insertEntry.eq_2' does not depend on any axioms\n'LexLeanCollections.insertEntry.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.compareValue.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_18' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_20' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_22' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_23' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_24' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_25' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_26' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_27' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_28' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_29' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_30' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_31' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_33' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_34' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_35' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_36' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_37' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_38' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_39' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_40' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_41' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_42' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_43' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_44' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_45' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_46' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_47' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_48' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_49' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_50' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_51' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_52' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_53' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_54' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_55' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_56' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_57' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_58' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_59' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_60' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_61' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_62' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_63' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_65' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_66' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_67' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_68' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_69' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_70' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_71' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_72' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_73' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_74' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_75' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_76' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_77' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_78' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_79' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_80' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_81' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_82' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_83' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_84' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_85' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_86' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_87' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_88' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_89' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_90' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_91' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_92' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_93' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_94' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_95' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_96' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_97' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_98' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_99' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Conv.bool_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Conv.fits_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.FunRel.fits_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ListEnc.enc.eq_1' does not depend on any axioms\n'LexLeanPreservation.ListEnc.enc_cons' does not depend on any axioms\n'LexLeanPreservation.ListEnc.enc_nil' does not depend on any axioms\n'LexLeanPreservation.LookOps' does not depend on any axioms\n'LexLeanPreservation.LookOps.casesOn' does not depend on any axioms\n'LexLeanPreservation.LookOps.l0' does not depend on any axioms\n'LexLeanPreservation.LookOps.leq' does not depend on any axioms\n'LexLeanPreservation.LookOps.lgt' does not depend on any axioms\n'LexLeanPreservation.LookOps.llt' does not depend on any axioms\n'LexLeanPreservation.LookOps.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.LookOps.recOn' does not depend on any axioms\n'LexLeanPreservation.SetOps' does not depend on any axioms\n'LexLeanPreservation.SetOps.c0' does not depend on any axioms\n'LexLeanPreservation.SetOps.casesOn' does not depend on any axioms\n'LexLeanPreservation.SetOps.ceq' does not depend on any axioms\n'LexLeanPreservation.SetOps.cgt' does not depend on any axioms\n'LexLeanPreservation.SetOps.clt' does not depend on any axioms\n'LexLeanPreservation.SetOps.i0' does not depend on any axioms\n'LexLeanPreservation.SetOps.ieq' does not depend on any axioms\n'LexLeanPreservation.SetOps.igt' does not depend on any axioms\n'LexLeanPreservation.SetOps.ilt' does not depend on any axioms\n'LexLeanPreservation.SetOps.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.SetOps.r0' does not depend on any axioms\n'LexLeanPreservation.SetOps.recOn' does not depend on any axioms\n'LexLeanPreservation.SetOps.req' does not depend on any axioms\n'LexLeanPreservation.SetOps.rgt' does not depend on any axioms\n'LexLeanPreservation.SetOps.rlt' does not depend on any axioms\n'LexLeanPreservation.TopoOps' does not depend on any axioms\n'LexLeanPreservation.TopoOps.casesOn' does not depend on any axioms\n'LexLeanPreservation.TopoOps.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.TopoOps.recOn' does not depend on any axioms\n'LexLeanPreservation.TopoOps.s_next' does not depend on any axioms\n'LexLeanPreservation.TopoOps.s_nil' does not depend on any axioms\n'LexLeanPreservation.TopoOps.s_stuck' does not depend on any axioms\n'LexLeanPreservation.TopoOps.z_cons' does not depend on any axioms\n'LexLeanPreservation.TopoOps.z_nil' does not depend on any axioms\n'LexLeanPreservation.Tpl.boolE' does not depend on any axioms\n'LexLeanPreservation.Tpl.byOrder' does not depend on any axioms\n'LexLeanPreservation.Tpl.cns' does not depend on any axioms\n'LexLeanPreservation.Tpl.fn' does not depend on any axioms\n'LexLeanPreservation.Tpl.lst' does not depend on any axioms\n'LexLeanPreservation.Tpl.v' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphInnerFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.pr' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphNodesFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.natOne' does not depend on any axioms\n'LexLeanPreservation.Tpl.nl' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphReachableFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphSuccessorsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphTopologicalFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.iterateFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.iterateUntilFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.listFoldFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapContainsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapFoldFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapInsertFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapLookupFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapProjectFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapRemoveFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reachFrontierFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reachIntoFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reachRoundsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reverseFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setContainsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setFilterFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setInsertFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setRemoveFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setUnionFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoFinished' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoReadyFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoRoundsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoUnreachedFn' does not depend on any axioms\n'LexLeanPreservation.blt_succ_fits._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.blt_succ_fits' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_cond_false' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_cond_true' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.enc_elem' does not depend on any axioms\n'LexLeanPreservation.enc_entry' does not depend on any axioms\n'LexLeanPreservation.foldFits.match_1' does not depend on any axioms\n'LexLeanPreservation.foldFits._f' does not depend on any axioms\n'LexLeanPreservation.foldFits' does not depend on any axioms\n'LexLeanPreservation.foldFits._sunfold' does not depend on any axioms\n'LexLeanPreservation.foldFits._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.foldFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.foldFits.eq_2' does not depend on any axioms\n'LexLeanPreservation.foldFits.eq_def' does not depend on any axioms\n'LexLeanPreservation.graphFits' does not depend on any axioms\n'LexLeanPreservation.graphFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.iterateFits.match_1' does not depend on any axioms\n'LexLeanPreservation.iterateFits._f' does not depend on any axioms\n'LexLeanPreservation.iterateFits' does not depend on any axioms\n'LexLeanPreservation.iterateFits._sunfold' does not depend on any axioms\n'LexLeanPreservation.iterateFits._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.iterateFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.iterateFits.eq_2' does not depend on any axioms\n'LexLeanPreservation.iterateFits.eq_def' does not depend on any axioms\n'LexLeanPreservation.length_eq' does not depend on any axioms\n'LexLeanPreservation.prim_compare_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.reachNext' does not depend on any axioms\n'LexLeanPreservation.tpl_graphInner.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setInsert.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setInsert._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setInsert' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphInner._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphInner' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphNodes.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_graphNodes._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphNodes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapLookup.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapLookup._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapLookup' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphSuccessors' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachFrontier.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_reachInto.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setContains.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setContains._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setContains' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachInto._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachInto' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachFrontier._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachFrontier' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachRounds.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setUnion.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setUnion._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setUnion' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachRounds._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachRounds' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphReachable' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reverse.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_reverse._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reverse' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setRemove.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setRemove._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setRemove' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoReady.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_topoUnreached.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_topoUnreached._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoUnreached' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoReady._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoReady' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoRounds.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_topoRounds._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoRounds' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphTopological' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterate.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_iterate._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterate' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterateUntil.match_1_1' does not depend on any axioms\n'LexLeanPreservation.untilFits.match_1' does not depend on any axioms\n'LexLeanPreservation.untilFits._f' does not depend on any axioms\n'LexLeanPreservation.untilFits' does not depend on any axioms\n'LexLeanPreservation.tpl_iterateUntil._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterateUntil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_listFold.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_listFold._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_listFold' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapContains' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapFold.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapFold._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapFold' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapInsert.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapInsert._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapInsert' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapKeys.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapKeys._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapKeys' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapRemove.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapRemove._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapRemove' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapValues.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapValues._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapValues' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setDifference.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setDifference._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setDifference' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setIntersection.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setIntersection._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setIntersection' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.untilFits._sunfold' does not depend on any axioms\n'LexLeanPreservation.untilFits._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.untilFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.untilFits.eq_2' does not depend on any axioms\n'LexLeanPreservation.untilFits.eq_def' does not depend on any axioms\n'LexLeanPreservation.validExcept.match_1' does not depend on any axioms\n'LexLeanPreservation.InvExcept' does not depend on any axioms\n'LexLeanPreservation.InvList' does not depend on any axioms\n'LexLeanPreservation.InvList.eq_1' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.match_1' does not depend on any axioms\n'LexLeanPreservation.StrictAsc._f' does not depend on any axioms\n'LexLeanPreservation.StrictAsc' does not depend on any axioms\n'LexLeanPreservation.InvMap' does not depend on any axioms\n'LexLeanPreservation.validOption.match_1' does not depend on any axioms\n'LexLeanPreservation.InvOption' does not depend on any axioms\n'LexLeanPreservation.InvOption.eq_1' does not depend on any axioms\n'LexLeanPreservation.InvOption.eq_2' does not depend on any axioms\n'LexLeanPreservation.InvPair' does not depend on any axioms\n'LexLeanPreservation.InvSet' does not depend on any axioms\n'LexLeanPreservation.StrictAsc._sunfold' does not depend on any axioms\n'LexLeanPreservation.StrictAsc._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_1' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_2' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_3' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_def' does not depend on any axioms\n'LexLeanPreservation.Tpl.validListFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validMapFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validOptionFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validPairFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validResultFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validSetFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validTrueFn' does not depend on any axioms\n'LexLeanPreservation.ascMap.match_1' does not depend on any axioms\n'LexLeanPreservation.lessB.match_1' does not depend on any axioms\n'LexLeanPreservation.lessB' does not depend on any axioms\n'LexLeanPreservation.ascMap._f' does not depend on any axioms\n'LexLeanPreservation.ascMap' does not depend on any axioms\n'LexLeanPreservation.ascMap._sunfold' does not depend on any axioms\n'LexLeanPreservation.ascMap._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_1' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_2' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_3' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_def' does not depend on any axioms\n'LexLeanPreservation.ascMap_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.lessB_iff' depends on axioms: [propext]\n'LexLeanPreservation.ascMap_iff._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.ascMap_iff' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.ascMap_inv' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.ascSet._f' does not depend on any axioms\n'LexLeanPreservation.ascSet' does not depend on any axioms\n'LexLeanPreservation.ascSet._sunfold' does not depend on any axioms\n'LexLeanPreservation.ascSet._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_1' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_2' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_3' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_def' does not depend on any axioms\n'LexLeanPreservation.ascSet_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.ascSet_iff._f' depends on axioms: [propext]\n'LexLeanPreservation.ascSet_iff' depends on axioms: [propext]\n'LexLeanPreservation.ascSet_inv' depends on axioms: [propext]\n'LexLeanPreservation.condAnd_iff' depends on axioms: [propext]\n'LexLeanPreservation.invList_eqs.match_1_1' does not depend on any axioms\n'LexLeanPreservation.invList_eqs._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.invList_eqs' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.lessB.eq_1' does not depend on any axioms\n'LexLeanPreservation.lessB_eq' depends on axioms: [propext]\n'LexLeanPreservation.lessB_gt' depends on axioms: [propext]\n'LexLeanPreservation.lessB_lt' depends on axioms: [propext]\n'LexLeanPreservation.someObs.match_1' does not depend on any axioms\n'LexLeanPreservation.someObs' does not depend on any axioms\n'LexLeanPreservation.tpl_validList.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validList.match_1' does not depend on any axioms\n'LexLeanPreservation.validList._f' does not depend on any axioms\n'LexLeanPreservation.validList' does not depend on any axioms\n'LexLeanPreservation.tpl_validList' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validMap.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_validMap._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validMap' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validOption.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validOption' does not depend on any axioms\n'LexLeanPreservation.tpl_validOption' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validPair.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validPair' does not depend on any axioms\n'LexLeanPreservation.tpl_validPair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validResult.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validExcept' does not depend on any axioms\n'LexLeanPreservation.tpl_validResult' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validSet.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_validSet._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validSet' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validTrue' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.trueIff' does not depend on any axioms\n'LexLeanPreservation.validExcept_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validExcept_inv' does not depend on any axioms\n'LexLeanPreservation.validList._sunfold' does not depend on any axioms\n'LexLeanPreservation.validList._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.validList.eq_1' does not depend on any axioms\n'LexLeanPreservation.validList.eq_2' does not depend on any axioms\n'LexLeanPreservation.validList.eq_def' does not depend on any axioms\n'LexLeanPreservation.validList_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validList_iff._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.validList_iff' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.validList_inv' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.validOption.eq_1' does not depend on any axioms\n'LexLeanPreservation.validOption.eq_2' does not depend on any axioms\n'LexLeanPreservation.validOption_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validOption_inv' depends on axioms: [propext]\n'LexLeanPreservation.validPair_inv' depends on axioms: [propext]\n'LexLeanPreservation.validTrue_inv' does not depend on any axioms\n'LexLeanPreservation.Rust.Ctx' does not depend on any axioms\n'LexLeanPreservation.Rust.Flags' does not depend on any axioms\n'LexLeanPreservation.Rust.RCrate' does not depend on any axioms\n'LexLeanPreservation.Rust.RIdent' does not depend on any axioms\n'LexLeanPreservation.Rust.WT._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.adtFields' depends on axioms: [propext]\n'LexLeanTarget.TargetSyntax.IntKind.ofNat' does not depend on any axioms\n'LexLeanTarget.TargetSyntax.IntKind.ofNat_ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Rust.instDecidableEqIntKind_lexLeanPreservation._proof_1' does not depend on any axioms\n'LexLeanPreservation.Rust.instDecidableEqIntKind_lexLeanPreservation._proof_2' does not depend on any axioms\n'LexLeanPreservation.Rust.instDecidableEqIntKind_lexLeanPreservation' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flagOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fnIdent' does not depend on any axioms\n'LexLeanPreservation.Rust.fnFallible' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.inert._f' does not depend on any axioms\n'LexLeanPreservation.Rust.inert' does not depend on any axioms\n'LexLeanPreservation.Rust.WT._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.WTAll._f' does not depend on any axioms\n'LexLeanPreservation.Rust.WTL.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctxLookup.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup._f' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup' does not depend on any axioms\n'LexLeanPreservation.Rust.local_' does not depend on any axioms\n'LexLeanPreservation.Rust.EnvRel' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ROut' does not depend on any axioms\n'LexLeanPreservation.Rust.Halt' does not depend on any axioms\n'LexLeanPreservation.Rust.REnv' does not depend on any axioms\n'LexLeanPreservation.Rust.RExpr' does not depend on any axioms\n'LexLeanPreservation.Rust.RC' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RLet' does not depend on any axioms\n'LexLeanPreservation.Rust.LetsOK' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.append' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.below' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.below.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.brecOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.recOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.append_left' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.append_right' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.below' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.below.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.brecOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.recOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RBlock' does not depend on any axioms\n'LexLeanPreservation.Rust.dispatched_ne' does not depend on any axioms\n'LexLeanPreservation.Rust.finished_ne' does not depend on any axioms\n'LexLeanPreservation.Rust.returned_ne' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_24' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_26' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_28' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_30' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_32' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_34' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_36' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.eval.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_22' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.invoke.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.stable' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.reval_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCB' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.block' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCA' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.revalBlock_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCB.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCI' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.invoke_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCI.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCL' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.revalList_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCL.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.WTAll' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.block_of_lets' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.block_of_raise' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.ctxLookup._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup_slot._simp_1_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotFree' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup_slot' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_cons_other' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sameIdent_self' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_cons_self' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sameIdent_local' depends on axioms: [propext]\n'LexLeanPreservation.Rust.envRel_bind' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.envRel_extra' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.envRel_ghost' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sameIdent_kind' depends on axioms: [propext]\n'LexLeanPreservation.Rust.envRel_temp' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.listIndex_eq.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.listIndex_eq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.listIndex_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.index_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.inert._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.inert._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_nil.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_raise_head.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcl_raise_head.match_1_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcl_raise_head' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_raise_tail' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.revalArms_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.slotFree.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sunfold' depends on axioms: [propext]\n'LexLeanTarget.RustSemantics.eval.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_18' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_20' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.invoke.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.invoke.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.kindNumber.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.lookup.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.lookup.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.lookup.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.lookup.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.lookup.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.lookup.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd' does not depend on any axioms\n'LexLeanPreservation.Rust.isTemp._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isTemp.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isTemp' depends on axioms: [propext]\n'LexLeanPreservation.Rust.letsBind.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds._f' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds._f' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind._f' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind' does not depend on any axioms\n'LexLeanPreservation.Rust.tempFresh' does not depend on any axioms\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.foldN.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.flatB._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep.match_7' does not depend on any axioms\n'LexLeanPreservation.Rust.foldStep' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldB' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats._f' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats' does not depend on any axioms\n'LexLeanPreservation.Rust.okBlock' does not depend on any axioms\n'LexLeanPreservation.Rust.partRead._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Kind.casesOn' does not depend on any axioms\n'LexLeanPreservation.Rust.elseCtx.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.elseCtx' does not depend on any axioms\n'LexLeanPreservation.Rust.elseLets.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.elseLets' does not depend on any axioms\n'LexLeanPreservation.Rust.heldOK.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.heldOK' does not depend on any axioms\n'LexLeanPreservation.Rust.negateR._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.negateR._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.negateR.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.negateR' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_5' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_7' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_9' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identBoxed' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal' does not depend on any axioms\n'LexLeanPreservation.Rust.isWild._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.unboxOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotOK.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocal' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armShape.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.armShape' does not depend on any axioms\n'LexLeanPreservation.Rust.otherArms.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.otherArms' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.noClosure.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.noClosure._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh' depends on axioms: [propext]\n'LexLeanPreservation.Rust.covered' depends on axioms: [propext]\n'LexLeanPreservation.Rust.scrut' does not depend on any axioms\n'LexLeanPreservation.Rust.validU.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.validU' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotOK' does not depend on any axioms\n'LexLeanPreservation.Rust.ctorOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identsDistinct.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct._f' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct' does not depend on any axioms\n'LexLeanPreservation.Rust.litOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArg._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.match_6' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArg.match_8' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArg' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArgs._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildTail.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildsArm.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildsArm' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.itemOK.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemOK' does not depend on any axioms\n'LexLeanPreservation.Rust.itemTyped.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemTyped.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf' does not depend on any axioms\n'LexLeanPreservation.Rust.itemTyped' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_9' does not depend on any axioms\n'LexLeanPreservation.Rust.isFixed._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped' depends on axioms: [propext]\n'LexLeanPreservation.Rust.primTyped' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.litValues._f' does not depend on any axioms\n'LexLeanPreservation.Rust.litValue' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.typedLitAll._f' does not depend on any axioms\n'LexLeanPreservation.Rust.typedLits.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Corr' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.below' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.below.casesOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.brecOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.casesOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.recOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.FunOK' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.CrateOK' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Fresh' does not depend on any axioms\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn' depends on axioms: [propext]\n'LexLeanPreservation.Rust.FunSem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Kind._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.casesOn' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ctorElim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.b.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.e.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.k.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.l.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.m.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.ops.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.recOn' does not depend on any axioms\n'LexLeanPreservation.Rust.KPre.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.KPre' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Kind.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.ctorElim' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Kind.nat.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.plain.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.plain.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.recOn' does not depend on any axioms\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesM.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.RealizesM' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Sem.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.viewVal._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Sem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.foldN._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identsDistinct._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_10' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_11' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_12' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_13' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_14' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_6' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_7' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_8' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.litValues' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue._sunfold' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.litValue._unsafe_rec' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues._sunfold' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.paramCtx._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patsBinds' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.patLocals._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patsBinds._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArgs._sunfold' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs._unsafe_rec' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.typedLitAll' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.typedLits._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_of_inert.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_of_inert.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_of_inert._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_of_inert' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_of_inert._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_of_inert' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Halt.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.LetsRaise.halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.block_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.boxed' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesM.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesM.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_bytes_inv' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_list_inv' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_string_inv' depends on axioms: [propext]\n'LexLeanPreservation.Rust.takes_of_typed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.allWidth_of.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_eq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_eq._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.tysBeq_eq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq_eq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.wt_fixed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.allWidth_of._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.allWidth_of' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.width_of_typed.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.width_of_typed.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.width_of_typed.match_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.width_of_typed' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.accepts_of_typed' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_apply' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtl_append.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_append._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_append' depends on axioms: [propext]\n'LexLeanPreservation.Rust.apply_result' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.bindPattern_shape.match_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.bindPattern_shape._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.bindPatterns_shape._simp_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindPatterns_shape.match_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.bindPatterns_shape._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.bindPattern_shape' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.bindPatterns_shape' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms_spec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_4' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_6' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_7' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.boolArms_eval' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.boxWith.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_100' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_102' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_96' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_98' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_function' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.call_result' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.const_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.convert_args.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.convert_args' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_append_fresh' depends on axioms: [propext]\n'LexLeanPreservation.Rust.envRel_fresh' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_not._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_cond.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.itemResult.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.eval_match' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fixedTyped.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_18' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_19' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_20' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_21' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_22' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_23' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_24' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_25' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_26' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_27' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_28' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_29' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_30' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_31' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_32' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_33' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_34' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_35' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_36' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_37' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_38' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_39' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_40' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_41' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_42' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_43' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_44' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_45' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_46' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_47' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_48' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_49' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_50' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_51' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_52' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_53' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_54' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_55' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_56' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_57' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_58' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_59' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_60' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_61' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN_sound.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.split_last.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.split_last._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.split_last' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep_spec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcb_nil_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_nomatch.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcb_cons_nomatch' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_stop' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_prefix' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_flat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_read_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_cons_same' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcb_fold_last' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldStep_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldN_sound._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldN_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldB_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldN.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_append' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_bind._simp_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_bind' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotFree_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_weaken' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_elseCtx' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_temp._simp_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_temp' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fromStrings_wt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fromStrings_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fromStrings_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.hasWidth_i16' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_i32' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_i64' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_i8' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u16' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u32' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u64' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u8' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.heldOK.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.heldOK.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.isFixed._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.isSeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.isTemp._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.itemOK.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemOperands_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.itemResult' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.kpre_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_pred._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_pred.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_pred' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.kpre_else' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.kpre_then' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_of_lets' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_b_rcb' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.k_branch' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_cond_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_isZero_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_lit_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate_halt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_negate_halt.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_nonZero_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_23' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_25' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_27' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_29' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_31' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_33' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_35' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_37' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_39' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_41' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_43' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_45' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_47' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_49' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_51' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_not_inv.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_not_inv.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_not_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.k_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_read.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_read' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.kpre_held' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.letsBind.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.letsOK_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.letsOK_shape' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.litValue._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_4' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_def' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_5' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.eq_def' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.lit_branch' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.lookup_through._simp_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.lookup_through' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms_spec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms_eval' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.obsL_evalList_zero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.obs_eval_zero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.oneOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf_halt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.param_env.match_1_1' depends on axioms: [propext]\n'LexLeanTarget.TargetSemantics.bindAll.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.param_env._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.param_env' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.patBinds.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_10' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_6' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_7' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_8' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.primTyped.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_apply_halt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_apply_halt.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_apply_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_call_halt.match_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_runtime' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_construct' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct_halt.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct_halt.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_isZero.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_isZero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_lit.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_lit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue._simp_10' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue._simp_9' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue.match_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_pair.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_pair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_litValues.match_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rcl_litValues._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_nonZero.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_nonZero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_pair_halt_left' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_pair_halt_right' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_widen.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_widen' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_widen_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_11' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_7' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_litValues' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_nil_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_single_halt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_single_halt.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_single_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_widen_one' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.readOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizesL_halt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizesL_haltL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizes_halt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizesM_overflow' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizes_oneOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.runItem_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.runItem_succ' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_applyGen.match_1_13' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen.match_1_15' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen.match_1_28' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_apply' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_applyF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_bOfE' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_build.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_build.match_1_99' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_build' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildConst' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildPair.match_1_101' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_97' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_99' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildSucc.match_1_129' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSucc.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSucc' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildSuccF.match_1_101' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSuccF.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSuccF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_callF.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callF.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_callOps.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callOps.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callOps' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_closure.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.wtl_length.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_length._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_length' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_closure' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_cond.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_cond.match_1_11' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_condId.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_condId' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_eOfB' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_eOfBFold' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_eOfBNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_fOfB' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_unit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_fUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kHeld' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kLit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kId' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kIf' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kNeg' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kSame' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_lCons.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons.match_1_17' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons.match_1_19' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_lNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_letBind.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letBind.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letBind' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_letWild.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letWild.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letWild' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBool._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchHolder.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchHolder.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchHolder' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBool' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBoolId._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBoolId.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchBoolId' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchNat._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchNat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchUnit._proof_1_386' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchUnit.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchUnit.match_1_387' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsCons._simp_1_13' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsCons.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons.match_1_14' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons.match_1_16' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsOfL' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_29' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_31' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_ops_box.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_ops_box.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_ops_box.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_ops_box' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_part._sparseCasesOn_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_part.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_part.match_1_14' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_part.match_1_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_part' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_part._sparseCasesOn_1_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_prim.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_prim.match_1_38' does not depend on any axioms\n'LexLeanPreservation.Rust.wtAll_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wtAll_iff._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.wtAll_iff' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_append' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_bitwise' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_checked' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_convert' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_decode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_encode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_fixedTyped.match_1_67' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_format' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_index' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_join' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_parse' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_shift' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.slice_eq' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_slice' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_split' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_unary' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtl_one.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_one' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_three.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_three' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_two.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_two' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_fixedTyped' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_prim' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_prim' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_primF.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF.match_1_7' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_primWiden.match_1_108' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_110' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_112' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_114' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_116' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.typedLitAll_wt.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit_wt.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits_wt.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_var' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_varUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_zero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.shapeOf.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_10' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_11' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_12' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_13' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_14' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_6' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_7' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_8' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.tempFresh.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_12.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_13.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_14.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.allWidth.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.allWidth.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.allWidth.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_100' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_101' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_102' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_103' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_104' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_105' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_106' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_107' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_108' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_109' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_110' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_111' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_112' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_113' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_114' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_115' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_116' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_117' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_118' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_119' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_120' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_121' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_122' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_123' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_124' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_125' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_126' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_127' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_128' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_129' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_130' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_131' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_132' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_133' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_134' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_135' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_136' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_137' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_138' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_139' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_140' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_141' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_142' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_143' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_144' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_145' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_146' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_147' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_148' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_149' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_150' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_151' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_152' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_153' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_154' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_155' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_156' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_157' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_158' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_159' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_160' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_161' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_162' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_163' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_164' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_165' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_166' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_167' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_168' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_169' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_170' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_171' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_172' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_173' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_174' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_175' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_176' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_177' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_178' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_179' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_180' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_181' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_182' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_183' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_184' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_185' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_186' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_51' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_52' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_53' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_54' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_55' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_56' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_57' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_58' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_59' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_60' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_61' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_62' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_63' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_64' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_65' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_66' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_67' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_68' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_69' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_70' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_71' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_72' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_73' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_74' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_75' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_76' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_77' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_78' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_79' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_80' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_81' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_82' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_83' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_84' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_85' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_86' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_87' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_88' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_89' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_90' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_91' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_92' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_93' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_94' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_95' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_96' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_97' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_98' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_99' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_100' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_101' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_102' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_103' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_104' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_105' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_106' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_107' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_108' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_109' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_110' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_111' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_112' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_113' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_114' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_115' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_116' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_117' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_118' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_119' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_120' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_121' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_122' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_123' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_124' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_125' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_126' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_127' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_128' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_129' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_130' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_131' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_132' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_133' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_134' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_135' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_136' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_137' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_138' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_139' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_140' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_141' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_142' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_143' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_144' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_145' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_146' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_147' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_148' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_149' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_150' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_151' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_152' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_153' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_154' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_155' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_156' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_157' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_158' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_159' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_160' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_161' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_162' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_163' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_164' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_165' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_166' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_167' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_168' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_169' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_170' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_171' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_172' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_173' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_174' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_175' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_176' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_177' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_178' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_179' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_180' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_181' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_182' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_183' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_184' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_51' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_52' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_53' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_54' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_55' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_56' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_57' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_58' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_59' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_60' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_61' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_62' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_63' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_64' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_65' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_66' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_67' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_68' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_69' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_70' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_71' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_72' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_73' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_74' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_75' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_76' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_77' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_78' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_79' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_80' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_81' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_82' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_83' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_84' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_85' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_86' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_87' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_88' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_89' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_90' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_91' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_92' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_93' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_94' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_95' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_96' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_97' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_98' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_99' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemAccepts.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemAccepts.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.literal.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_10' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_11' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_12' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_13' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_14' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_15' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_3' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_4' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_5' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_6' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_7' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_8' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_9' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.propagated.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.returned.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_10' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_11' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_12' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_13' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_14' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_15' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_16' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_17' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_18' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_19' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_20' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_21' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_22' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_23' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_24' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_25' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_26' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_27' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_28' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_29' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_30' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_31' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_32' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_33' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_34' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_35' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_36' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_37' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_38' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_39' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_40' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_41' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_42' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_43' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_44' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_45' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_46' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_47' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_48' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_49' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_5' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_50' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_51' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_52' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_53' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_54' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_55' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_56' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_57' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_58' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_59' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_6' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_60' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_61' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_62' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_63' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_64' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_65' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_66' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_67' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_68' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_69' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_7' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_70' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_71' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_72' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_73' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_74' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_75' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_76' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_77' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_78' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_79' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_8' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_80' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_81' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_82' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_83' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_9' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_10' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_100' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_101' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_102' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_103' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_104' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_105' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_106' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_107' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_108' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_109' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_11' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_110' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_111' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_112' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_113' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_114' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_115' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_116' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_117' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_118' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_119' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_12' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_120' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_121' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_122' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_123' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_124' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_125' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_126' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_127' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_128' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_129' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_13' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_130' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_131' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_132' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_133' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_134' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_135' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_136' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_137' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_138' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_139' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_14' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_140' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_141' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_142' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_143' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_144' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_145' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_146' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_147' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_148' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_149' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_15' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_150' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_151' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_152' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_153' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_154' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_155' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_156' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_157' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_158' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_159' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_16' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_160' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_161' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_162' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_163' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_164' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_165' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_166' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_167' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_168' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_169' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_17' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_170' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_171' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_172' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_173' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_174' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_175' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_176' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_177' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_178' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_179' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_18' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_180' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_181' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_182' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_183' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_184' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_185' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_186' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_187' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_188' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_189' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_19' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_190' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_191' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_192' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_193' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_194' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_195' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_196' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_197' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_198' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_199' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_20' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_200' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_201' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_202' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_203' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_204' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_205' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_206' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_207' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_208' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_209' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_21' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_210' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_211' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_212' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_213' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_214' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_215' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_216' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_217' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_218' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_219' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_22' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_220' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_221' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_222' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_223' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_224' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_225' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_226' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_227' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_228' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_229' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_23' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_230' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_231' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_232' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_233' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_234' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_235' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_236' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_237' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_238' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_239' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_24' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_240' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_241' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_242' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_243' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_244' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_245' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_246' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_247' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_248' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_249' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_25' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_250' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_251' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_252' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_253' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_254' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_255' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_256' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_257' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_258' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_259' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_26' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_260' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_261' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_262' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_263' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_264' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_265' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_266' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_267' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_268' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_269' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_27' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_270' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_271' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_272' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_273' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_274' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_275' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_276' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_277' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_278' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_279' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_28' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_280' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_281' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_282' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_283' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_284' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_285' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_286' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_287' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_288' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_289' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_29' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_290' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_291' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_292' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_293' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_294' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_295' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_296' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_297' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_298' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_299' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_30' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_300' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_301' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_302' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_303' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_304' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_305' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_306' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_307' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_308' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_309' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_31' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_310' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_311' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_312' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_313' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_314' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_315' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_316' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_317' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_318' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_319' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_32' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_320' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_321' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_322' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_323' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_324' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_325' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_326' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_327' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_328' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_329' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_33' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_330' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_331' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_332' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_333' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_334' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_335' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_336' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_337' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_338' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_339' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_34' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_340' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_341' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_342' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_343' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_344' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_345' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_346' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_347' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_348' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_349' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_35' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_350' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_351' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_352' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_353' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_354' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_355' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_356' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_357' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_358' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_359' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_36' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_360' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_361' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_362' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_363' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_364' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_365' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_366' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_367' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_368' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_369' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_37' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_370' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_38' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_39' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_40' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_41' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_42' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_43' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_44' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_45' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_46' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_47' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_48' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_49' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_5' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_50' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_51' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_52' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_53' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_54' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_55' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_56' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_57' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_58' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_59' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_6' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_60' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_61' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_62' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_63' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_64' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_65' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_66' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_67' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_68' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_69' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_7' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_70' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_71' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_72' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_73' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_74' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_75' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_76' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_77' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_78' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_79' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_8' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_80' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_81' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_82' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_83' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_84' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_85' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_86' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_87' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_88' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_89' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_9' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_90' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_91' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_92' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_93' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_94' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_95' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_96' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_97' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_98' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_99' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromStrings.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromStrings.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromStrings.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.primitive.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1000' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1001' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1002' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1003' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1004' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1005' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1006' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1007' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1008' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1009' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1010' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1011' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1012' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1013' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1014' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1015' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1016' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1017' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1018' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1019' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1020' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1021' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1022' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1023' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1024' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1025' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1026' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1027' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1028' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1029' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1030' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1031' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1032' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1033' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1034' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1035' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1036' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1037' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1038' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1039' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1040' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1041' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1042' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1043' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1044' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1045' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1046' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1047' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1048' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1049' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1050' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1051' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1052' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1053' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1054' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1055' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1056' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1057' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1058' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1059' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1060' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1061' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1062' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1063' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1064' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1065' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1066' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1067' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1068' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1069' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1070' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1071' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1072' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1073' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1074' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1075' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1076' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1077' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1078' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1079' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1080' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1081' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1082' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1083' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1084' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1085' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1086' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1087' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1088' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1089' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1090' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1091' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1092' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1093' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1094' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1095' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1096' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1097' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1098' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1099' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1426' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1427' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1428' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1429' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1430' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1431' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1432' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1433' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1434' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1435' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1436' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1437' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1438' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1439' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1440' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1441' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1442' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1443' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1444' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1445' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1446' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1447' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1448' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1449' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1450' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1451' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1452' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1453' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1454' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1455' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1456' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1457' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1458' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1459' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1460' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1461' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1462' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1463' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1464' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1465' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1466' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1467' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1468' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1469' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1470' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1471' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1472' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1473' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1474' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1475' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1476' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1477' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1478' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1479' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1480' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1481' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1482' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1483' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1484' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1485' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1486' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1487' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1488' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1489' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1490' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1491' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1492' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1493' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1494' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1495' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1496' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1497' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1498' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1499' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1500' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1501' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1502' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1503' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1504' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1505' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1506' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1507' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1508' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1509' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1510' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1511' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1512' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1513' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1514' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1515' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1516' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1517' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1518' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1519' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1520' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1521' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1522' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1523' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1524' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1525' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1526' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1527' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1528' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1529' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1530' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1531' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1532' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1533' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1534' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1535' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1536' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1537' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1538' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1539' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1540' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1541' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1542' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1543' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1544' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1545' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1546' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1547' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1548' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1549' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1550' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1551' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1552' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1553' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1554' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1555' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1556' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1557' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1558' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1559' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1560' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1561' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1562' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1563' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1564' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1565' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1566' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1567' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1568' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1569' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1570' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1571' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1572' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1573' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1574' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1575' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1576' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1577' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1578' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1579' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1580' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1581' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1582' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1583' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1584' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1585' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1586' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1587' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1588' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1589' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1590' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1591' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1592' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1593' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1594' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1595' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1596' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1597' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1598' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1599' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1600' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1601' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1602' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1603' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1604' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1605' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1606' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1607' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1608' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1609' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1610' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1611' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1612' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1613' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1614' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1615' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1616' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1617' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1618' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1619' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1620' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1621' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1622' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1623' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1624' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1625' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1626' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1627' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1628' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1629' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1630' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1631' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1632' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1633' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1634' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1635' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1636' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1637' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1638' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1639' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1640' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1641' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1642' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1643' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1644' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1645' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1646' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1647' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1648' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1649' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1650' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1651' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1652' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1653' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1654' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1655' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1656' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1657' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1658' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1659' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1660' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1661' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1662' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1663' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1664' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1665' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1666' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1667' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1668' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1669' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1670' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1671' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1672' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1673' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1674' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1675' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1676' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1677' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1678' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1679' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1680' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1681' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1682' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1683' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1684' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1685' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1686' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1687' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1688' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1689' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1690' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1691' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1692' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1693' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1694' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1695' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1696' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1697' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1698' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1699' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1700' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1701' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1702' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1703' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1704' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1705' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1706' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1707' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1708' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1709' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1710' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1711' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1712' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1713' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1714' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1715' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1716' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1717' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1718' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1719' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1720' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1721' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1722' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1723' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1724' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1725' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1726' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1727' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1728' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1729' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1730' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1731' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1732' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1733' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1734' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1735' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1736' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1737' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1738' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1739' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1740' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1741' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1742' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1743' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1744' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1745' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1746' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1747' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1748' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1749' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1750' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1751' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1752' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1753' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1754' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1755' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1756' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1757' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1758' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1759' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1760' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1761' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1762' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1763' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1764' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1765' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1766' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1767' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1768' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1769' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1770' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1771' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1772' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1773' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1774' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1775' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1776' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1777' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1778' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1779' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1780' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1781' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1782' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1783' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1784' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1785' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1786' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1787' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1788' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1789' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1790' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1791' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1792' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1793' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1794' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1795' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1796' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1797' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1798' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1799' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_18' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1800' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1801' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1802' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1803' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1804' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1805' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1806' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1807' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1808' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1809' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1810' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1811' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1812' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1813' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1814' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1815' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1816' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1817' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1818' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1819' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1820' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1821' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1822' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1823' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1824' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1825' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1826' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1827' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1828' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1829' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1830' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1831' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1832' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1833' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1834' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1835' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1836' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1837' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1838' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1839' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1840' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1841' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1842' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1843' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1844' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1845' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1846' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1847' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1848' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1849' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1850' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1851' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1852' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1853' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1854' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1855' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1856' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1857' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1858' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1859' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1860' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1861' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1862' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1863' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1864' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1865' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1866' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1867' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1868' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1869' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1870' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1871' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1872' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1873' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1874' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1875' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1876' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1877' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1878' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1879' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1880' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1881' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1882' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1883' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1884' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1885' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1886' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1887' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1888' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1889' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1890' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1891' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1892' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1893' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1894' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1895' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1896' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1897' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1898' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1899' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1900' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1901' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1902' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1903' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1904' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1905' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1906' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1907' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1908' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1909' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1910' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1911' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1912' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1913' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1914' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1915' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1916' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1917' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1918' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1919' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1920' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1921' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1922' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1923' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1924' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1925' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1926' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1927' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1928' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1929' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1930' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1931' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1932' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1933' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1934' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1935' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1936' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1937' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1938' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1939' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1940' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1941' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1942' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1943' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1944' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1945' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1946' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1947' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1948' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1949' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1950' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1951' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1952' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1953' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1954' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1955' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1956' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1957' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1958' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1959' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1960' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1961' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1962' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1963' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1964' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1965' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1966' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1967' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1968' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1969' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1970' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1971' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1972' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1973' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1974' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1975' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1976' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1977' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1978' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1979' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1980' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1981' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1982' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1983' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1984' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1985' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1986' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1987' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1988' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1989' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1990' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1991' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1992' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1993' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1994' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1995' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1996' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1997' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1998' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1999' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_20' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2000' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2001' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2002' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2003' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2004' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2005' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2006' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2007' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2008' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2009' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2010' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2011' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2012' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2013' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2014' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2015' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2016' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2017' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2018' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2019' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2020' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2021' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2022' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2023' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2024' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2025' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2026' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2027' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2028' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2029' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2030' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2031' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2032' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2033' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2034' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2035' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2036' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2037' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2038' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2039' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2040' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2041' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2042' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2043' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2044' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2045' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2046' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2047' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2048' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2049' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2050' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2051' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2052' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2053' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2054' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2055' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2056' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2057' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2058' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2059' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2060' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2061' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2062' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2063' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2064' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2065' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2066' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2067' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2068' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2069' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2070' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2071' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2072' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2073' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2074' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2075' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2076' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2077' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2078' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2079' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2080' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2081' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2082' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2083' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2084' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2085' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2086' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2087' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2088' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2089' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2090' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2091' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2092' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2093' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2094' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2095' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2096' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2097' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2098' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2099' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_22' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_23' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_24' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2426' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2427' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2428' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2429' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2430' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2431' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2432' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2433' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2434' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2435' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2436' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2437' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2438' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2439' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2440' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2441' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2442' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2443' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2444' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2445' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2446' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2447' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2448' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2449' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2450' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2451' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2452' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2453' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2454' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2455' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2456' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2457' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2458' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2459' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2460' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2461' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2462' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2463' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2464' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2465' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2466' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2467' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2468' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2469' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2470' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2471' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2472' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2473' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2474' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2475' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2476' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2477' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2478' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2479' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2480' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2481' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2482' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2483' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2484' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2485' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2486' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2487' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2488' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2489' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2490' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2491' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2492' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2493' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2494' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2495' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2496' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2497' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2498' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2499' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_25' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2500' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2501' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2502' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2503' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2504' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2505' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2506' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2507' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2508' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2509' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2510' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2511' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2512' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2513' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2514' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2515' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2516' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2517' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2518' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2519' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2520' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2521' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2522' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2523' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2524' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2525' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2526' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2527' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2528' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2529' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2530' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2531' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2532' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2533' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2534' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2535' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2536' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2537' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2538' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2539' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2540' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2541' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2542' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2543' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2544' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2545' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2546' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2547' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2548' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2549' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2550' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2551' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2552' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2553' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2554' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2555' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2556' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2557' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2558' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2559' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2560' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2561' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2562' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2563' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2564' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2565' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2566' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2567' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2568' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2569' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2570' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2571' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2572' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2573' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2574' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2575' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2576' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2577' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2578' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2579' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2580' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2581' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2582' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2583' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2584' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2585' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2586' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2587' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2588' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2589' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2590' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2591' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2592' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2593' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2594' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2595' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2596' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2597' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2598' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2599' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_26' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2600' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2601' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2602' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2603' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2604' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2605' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2606' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2607' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2608' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2609' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2610' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2611' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2612' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2613' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2614' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2615' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2616' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2617' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2618' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2619' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2620' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2621' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2622' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2623' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2624' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2625' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2626' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2627' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2628' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2629' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2630' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2631' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2632' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2633' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2634' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2635' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2636' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2637' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2638' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2639' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2640' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2641' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2642' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2643' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2644' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2645' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2646' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2647' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2648' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2649' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2650' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2651' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2652' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2653' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2654' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2655' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2656' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2657' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2658' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2659' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2660' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2661' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2662' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2663' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2664' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2665' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2666' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2667' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2668' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2669' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2670' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2671' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2672' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2673' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2674' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2675' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2676' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2677' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2678' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2679' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2680' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2681' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2682' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2683' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2684' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2685' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2686' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2687' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2688' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2689' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2690' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2691' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2692' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2693' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2694' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2695' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2696' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2697' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2698' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2699' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_27' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2700' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2701' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2702' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2703' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2704' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2705' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2706' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2707' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2708' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2709' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2710' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2711' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2712' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2713' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2714' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2715' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2716' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2717' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2718' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2719' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2720' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2721' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2722' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2723' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2724' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2725' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2726' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2727' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2728' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2729' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2730' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2731' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2732' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2733' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2734' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2735' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2736' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2737' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2738' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2739' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2740' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2741' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2742' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2743' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2744' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2745' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2746' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2747' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2748' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2749' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2750' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2751' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2752' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2753' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2754' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2755' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2756' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2757' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2758' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2759' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2760' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2761' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2762' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2763' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2764' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2765' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2766' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2767' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2768' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2769' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2770' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2771' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2772' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2773' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2774' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2775' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2776' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2777' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2778' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2779' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2780' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2781' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2782' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2783' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2784' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2785' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2786' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2787' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2788' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2789' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2790' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2791' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2792' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2793' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2794' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2795' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2796' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2797' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2798' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2799' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_28' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2800' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2801' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2802' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2803' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2804' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2805' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2806' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2807' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2808' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2809' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2810' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2811' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2812' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2813' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2814' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2815' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2816' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2817' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2818' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2819' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2820' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2821' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2822' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2823' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2824' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2825' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2826' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2827' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2828' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2829' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2830' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2831' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2832' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2833' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2834' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2835' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2836' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2837' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2838' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2839' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2840' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2841' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2842' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2843' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2844' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2845' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2846' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2847' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2848' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2849' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2850' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2851' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2852' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2853' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2854' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2855' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2856' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2857' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2858' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2859' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2860' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2861' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2862' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2863' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2864' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2865' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2866' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2867' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2868' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2869' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2870' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2871' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2872' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2873' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2874' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2875' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2876' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2877' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2878' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2879' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2880' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2881' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2882' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2883' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2884' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2885' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2886' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2887' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2888' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2889' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2890' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2891' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2892' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2893' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2894' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2895' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2896' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2897' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2898' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2899' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_29' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2900' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2901' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2902' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2903' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2904' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2905' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2906' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2907' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2908' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2909' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2910' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2911' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2912' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2913' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2914' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2915' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2916' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2917' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2918' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2919' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2920' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2921' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2922' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2923' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2924' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2925' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2926' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2927' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2928' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2929' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2930' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2931' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2932' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2933' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2934' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2935' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2936' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2937' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2938' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2939' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2940' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2941' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2942' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2943' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2944' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2945' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2946' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2947' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2948' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2949' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2950' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2951' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2952' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2953' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2954' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2955' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2956' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2957' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2958' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2959' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2960' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2961' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2962' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2963' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2964' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2965' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2966' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2967' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2968' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2969' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2970' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2971' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2972' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2973' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2974' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2975' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2976' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2977' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2978' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2979' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2980' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2981' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2982' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2983' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2984' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2985' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2986' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2987' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2988' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2989' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2990' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2991' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2992' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2993' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2994' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2995' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2996' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2997' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2998' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2999' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_30' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3000' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3001' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3002' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3003' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3004' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3005' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3006' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3007' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3008' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3009' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3010' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3011' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3012' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3013' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3014' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3015' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3016' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3017' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3018' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3019' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3020' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3021' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3022' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3023' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3024' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3025' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3026' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3027' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3028' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3029' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3030' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3031' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3032' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3033' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3034' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3035' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3036' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3037' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3038' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3039' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3040' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3041' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3042' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3043' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3044' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3045' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3046' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3047' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3048' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3049' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3050' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3051' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3052' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3053' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3054' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3055' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3056' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3057' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3058' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3059' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3060' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3061' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3062' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3063' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3064' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3065' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3066' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3067' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3068' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3069' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3070' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3071' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3072' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3073' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3074' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3075' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3076' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3077' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3078' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3079' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3080' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3081' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3082' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3083' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3084' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3085' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3086' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3087' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3088' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3089' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3090' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3091' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3092' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3093' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3094' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3095' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3096' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3097' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3098' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3099' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_31' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_33' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_34' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_35' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_36' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_37' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_38' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_39' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_40' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_41' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_42' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_426' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_427' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_428' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_429' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_43' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_430' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_431' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_432' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_433' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_434' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_435' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_436' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_437' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_438' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_439' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_44' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_440' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_441' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_442' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_443' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_444' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_445' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_446' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_447' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_448' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_449' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_45' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_450' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_451' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_452' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_453' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_454' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_455' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_456' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_457' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_458' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_459' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_46' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_460' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_461' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_462' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_463' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_464' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_465' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_466' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_467' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_468' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_469' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_47' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_470' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_471' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_472' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_473' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_474' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_475' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_476' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_477' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_478' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_479' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_48' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_480' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_481' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_482' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_483' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_484' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_485' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_486' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_487' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_488' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_489' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_49' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_490' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_491' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_492' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_493' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_494' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_495' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_496' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_497' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_498' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_499' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_50' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_500' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_501' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_502' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_503' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_504' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_505' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_506' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_507' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_508' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_509' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_51' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_510' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_511' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_512' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_513' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_514' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_515' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_516' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_517' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_518' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_519' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_52' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_520' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_521' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_522' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_523' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_524' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_525' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_526' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_527' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_528' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_529' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_53' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_530' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_531' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_532' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_533' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_534' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_535' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_536' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_537' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_538' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_539' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_54' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_540' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_541' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_542' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_543' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_544' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_545' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_546' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_547' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_548' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_549' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_55' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_550' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_551' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_552' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_553' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_554' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_555' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_556' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_557' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_558' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_559' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_56' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_560' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_561' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_562' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_563' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_564' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_565' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_566' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_567' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_568' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_569' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_57' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_570' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_571' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_572' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_573' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_574' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_575' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_576' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_577' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_578' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_579' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_58' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_580' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_581' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_582' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_583' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_584' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_585' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_586' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_587' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_588' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_589' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_59' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_590' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_591' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_592' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_593' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_594' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_595' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_596' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_597' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_598' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_599' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_60' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_600' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_601' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_602' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_603' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_604' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_605' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_606' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_607' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_608' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_609' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_61' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_610' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_611' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_612' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_613' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_614' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_615' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_616' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_617' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_618' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_619' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_62' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_620' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_621' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_622' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_623' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_624' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_625' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_626' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_627' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_628' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_629' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_63' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_630' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_631' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_632' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_633' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_634' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_635' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_636' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_637' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_638' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_639' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_640' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_641' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_642' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_643' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_644' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_645' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_646' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_647' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_648' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_649' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_65' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_650' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_651' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_652' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_653' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_654' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_655' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_656' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_657' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_658' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_659' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_66' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_660' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_661' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_662' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_663' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_664' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_665' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_666' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_667' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_668' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_669' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_67' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_670' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_671' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_672' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_673' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_674' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_675' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_676' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_677' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_678' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_679' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_68' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_680' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_681' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_682' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_683' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_684' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_685' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_686' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_687' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_688' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_689' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_69' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_690' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_691' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_692' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_693' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_694' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_695' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_696' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_697' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_698' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_699' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_70' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_700' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_701' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_702' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_703' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_704' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_705' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_706' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_707' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_708' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_709' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_71' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_710' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_711' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_712' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_713' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_714' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_715' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_716' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_717' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_718' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_719' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_72' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_720' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_721' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_722' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_723' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_724' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_725' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_726' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_727' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_728' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_729' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_73' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_730' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_731' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_732' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_733' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_734' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_735' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_736' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_737' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_738' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_739' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_74' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_740' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_741' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_742' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_743' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_744' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_745' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_746' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_747' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_748' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_749' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_75' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_750' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_751' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_752' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_753' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_754' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_755' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_756' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_757' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_758' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_759' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_76' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_760' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_761' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_762' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_763' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_764' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_765' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_766' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_767' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_768' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_769' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_77' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_770' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_771' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_772' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_773' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_774' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_775' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_776' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_777' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_778' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_779' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_78' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_780' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_781' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_782' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_783' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_784' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_785' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_786' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_787' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_788' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_789' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_79' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_790' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_791' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_792' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_793' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_794' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_795' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_796' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_797' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_798' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_799' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_80' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_800' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_801' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_802' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_803' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_804' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_805' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_806' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_807' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_808' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_809' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_81' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_810' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_811' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_812' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_813' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_814' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_815' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_816' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_817' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_818' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_819' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_82' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_820' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_821' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_822' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_823' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_824' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_825' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_826' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_827' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_828' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_829' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_83' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_830' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_831' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_832' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_833' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_834' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_835' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_836' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_837' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_838' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_839' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_84' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_840' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_841' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_842' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_843' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_844' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_845' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_846' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_847' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_848' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_849' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_85' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_850' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_851' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_852' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_853' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_854' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_855' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_856' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_857' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_858' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_859' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_86' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_860' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_861' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_862' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_863' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_864' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_865' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_866' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_867' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_868' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_869' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_87' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_870' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_871' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_872' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_873' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_874' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_875' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_876' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_877' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_878' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_879' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_88' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_880' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_881' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_882' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_883' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_884' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_885' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_886' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_887' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_888' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_889' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_89' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_890' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_891' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_892' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_893' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_894' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_895' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_896' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_897' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_898' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_899' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_90' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_900' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_901' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_902' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_903' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_904' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_905' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_906' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_907' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_908' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_909' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_91' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_910' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_911' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_912' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_913' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_914' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_915' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_916' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_917' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_918' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_919' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_92' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_920' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_921' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_922' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_923' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_924' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_925' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_926' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_927' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_928' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_929' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_93' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_930' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_931' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_932' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_933' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_934' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_935' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_936' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_937' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_938' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_939' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_94' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_940' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_941' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_942' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_943' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_944' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_945' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_946' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_947' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_948' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_949' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_95' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_950' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_951' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_952' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_953' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_954' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_955' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_956' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_957' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_958' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_959' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_96' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_960' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_961' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_962' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_963' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_964' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_965' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_966' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_967' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_968' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_969' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_97' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_970' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_971' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_972' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_973' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_974' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_975' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_976' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_977' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_978' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_979' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_98' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_980' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_981' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_982' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_983' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_984' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_985' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_986' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_987' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_988' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_989' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_99' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_990' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_991' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_992' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_993' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_994' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_995' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_996' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_997' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_998' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_999' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.adtFields.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_12.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_13.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_12.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat_outer' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.boxedOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.boxedOne.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.boxedOne' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bp_entries._simp_1_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.simplePat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bp_entries.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.entriesOf._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bp_entries._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.bp_entries' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.directPat_cons._simp_1_4' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.identBoxed_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identLocal_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf_spec' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_cons' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_len.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_len._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_len' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_loads._simp_1_27' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_loads._simp_1_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_loads.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none._simp_1_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none._simp_1_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rlookup_append' depends on axioms: [propext]\n'LexLeanPreservation.Rust.same_boxed_boxed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_boxed_none' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_local_none._simp_1_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_local_none._simp_1_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_local_none.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.same_local_local' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_local_none._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_local_none' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_boxed_local' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rlookup_local_boxed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rlookup_local_single' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_loads._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.directPat_loads' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_boxed_some._simp_1_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_some._simp_1_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_some.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_some._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.entries_boxed_some' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.envRel_locals' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fields_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindPatterns_single' depends on axioms: [propext]\n'LexLeanPreservation.Rust.outer_bind' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.paramCtx_length.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_length._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_length' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.bindOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOne.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.covered.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.covered_mem._simp_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.wt_uninh._simp_10' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.covered_mem' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.ctorOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.destruct_canon' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq_refl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.destruct_excl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.directPat.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_lookup.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_none_of._simp_1_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_none_of.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sameIdent_iff' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_none_of._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_none_of' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.identsDistinct.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.entries_lookup._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_lookup' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.eval_field.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.eval_field._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_field.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_field' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats_none._simp_1_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats_none.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats_none._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats_none' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats_some._simp_1_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats_some.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats_some._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats_some' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_partRead' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.tyBeq_unit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.field_out' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.findArm_some.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.findArm_some._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.findArm_some' depends on axioms: [propext]\n'LexLeanPreservation.Rust.findDispatch_some.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.findDispatch_some._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.findDispatch_some' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_ext' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identBoxed.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identBoxed.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.isWild._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.okBlock.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.otherArms.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.otherArms_mem._simp_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.otherArms_mem' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.outer_miss' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.outer_view' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_ext.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_ext._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_ext' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_fresh.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_fresh._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_fresh' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocal.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_matchOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_matchOn_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_uncons.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_uncons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_scrut' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rca_hit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rca_miss' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_det' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_rebuild.match_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_eq_of_same' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg_rc' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_rebuild._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_rebuild' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.readOf_rc' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.realizesM_value' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArg_simple' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_def' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs_simple.match_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs_simple._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs_simple' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_14.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuild_rca._simp_1_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuild_rca.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_value._simp_1_21' depends on axioms: [propext]\n'LexLeanPreservation.Rust.single_rebuild' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_rca._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_rca' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuildsArm.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_nil' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_fieldGen._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_fieldGen.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_fieldGen.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.wtl_get.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_get._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_get' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_fieldGen' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_fieldHeld' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_fieldRead' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_mCons._simp_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_mCons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_mNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchArms._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.tyBeq_refl.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq_refl._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.tysBeq_refl.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tysBeq_refl._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_refl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.tysBeq_refl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.uninh_of_inert.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.uninh_of_inert._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh_of_inert' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_uninh.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_uninh._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtl_uninh.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_uninh._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_uninh' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.taken_arm' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchArms' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchPair._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchPair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchRebuilt._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchRebuilt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchRebuilt.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchRebuilt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.simplePat.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.validU.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_uninh' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.findArm.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findArm.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findArm.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_5' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_6' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_7' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_8' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.fl_of' does not depend on any axioms\n'LexLeanPreservation.Rust.fnFallible.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of._simp_1_14' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.funSem_of.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_12' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.isTemp.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isTemp.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.item_ne' depends on axioms: [propext]\n'LexLeanPreservation.Rust.kind_ne' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sound._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sound._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.simulate' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Representable._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Representable.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Representable._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.RepresentableL._f' does not depend on any axioms\n'LexLeanPreservation.Rust.Representable' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Representable._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.Representable._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.compose' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rel_ne_stuck' depends on axioms: [propext]\n'LexLeanPreservation.Rust.repL_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.repL_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.runItem_abort_infallible' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtAll_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wtAll_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_map._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_map' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_adt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_bool' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_bytes' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encExcept.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_encExcept' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_list' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encList' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encOption.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_encOption' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encOrdering' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encPair' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encUnit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_errorV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i32' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i64' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_int' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_listEnc' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_nat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_noneV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_okV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_optEnc.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_someV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_optEnc' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_ordering' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_pairV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_string' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u32' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u64' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_unitValue' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_nil' depends on axioms: [propext]\n'LexLeanPreservation.encExcept.eq_1' does not depend on any axioms\n'LexLeanPreservation.encExcept.eq_2' does not depend on any axioms\n'LexLeanPreservation.encOption.eq_1' does not depend on any axioms\n'LexLeanPreservation.encOption.eq_2' does not depend on any axioms\n'LexLeanPreservation.encPair.eq_1' does not depend on any axioms\n'LexLeanPreservation.encUnit.eq_1' does not depend on any axioms\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.Compose.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.Compose.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.Compose.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.Compose.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.Compose.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.Compose.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.Compose.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.Compose.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.Compose.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.Compose.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.Compose.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.Compose.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.Compose.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.Compose.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.Compose.RustStd.__wt_0' depends on axioms: [propext]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.Compose.RustStd.__wtItems_0' depends on axioms: [propext]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.Compose.RustStd.__wtAux_1' depends on axioms: [propext]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.Compose.RustStd.__wtItems_3' depends on axioms: [propext]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.Compose.RustStd.__wtAux_4' depends on axioms: [propext]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.Compose.RustStd.__wtAux_2' depends on axioms: [propext]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.Compose.RustStd.__wt_1' depends on axioms: [propext]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.Compose.RustCore.__wt_0' depends on axioms: [propext]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.Compose.RustStd.__wt_0' depends on axioms: [propext]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.Compose.RustStd.__wt_0' depends on axioms: [propext]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustCore.__wt_0' depends on axioms: [propext]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustCore.__wt_1' depends on axioms: [propext]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustCore.__wt_2' depends on axioms: [propext]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustStd.__wt_0' depends on axioms: [propext]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustStd.__wt_1' depends on axioms: [propext]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustStd.__wt_2' depends on axioms: [propext]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.Compose.RustStd.__wt_0' depends on axioms: [propext]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.Compose.RustStd.__wtItems_0' depends on axioms: [propext]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.Compose.RustStd.__wt_0' depends on axioms: [propext]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.Compose.RustStd.__wt_1' depends on axioms: [propext]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.Compose.RustStd.__wtItems_0' depends on axioms: [propext]\n'LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.Compose.RustStd.__wt_0' depends on axioms: [propext]\n-- statement vocabulary\ninductive LexLeanPreservation.Obs : Type\nnumber of parameters: 0\nconstructors:\nLexLeanPreservation.Obs.value : LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs\nLexLeanPreservation.Obs.overflow : LexLeanPreservation.Obs\nLexLeanPreservation.Obs.stuck : LexLeanPreservation.Obs\ndef LexLeanPreservation.Rel : Bool → LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs :=\nfun fits v => bif fits then LexLeanPreservation.Obs.value v else LexLeanPreservation.Obs.overflow\ndef LexLeanPreservation.Conv : LexLeanTarget.TargetSyntax.Program →\n List (Nat × LexLeanTarget.TargetSyntax.Value) → LexLeanTarget.TargetSyntax.Expr → LexLeanPreservation.Obs → Prop :=\nfun p env e o => ∃ n, LexLeanPreservation.obs (LexLeanTarget.TargetSemantics.eval n p env e) = some o\ndef LexLeanPreservation.FunRel : LexLeanTarget.TargetSyntax.Program →\n Nat → List LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs → Prop :=\nfun p f args o =>\n ∃ fn,\n LexLeanRuntime.index p.functions f = some fn ∧\n ∃ env,\n LexLeanTarget.TargetSemantics.bindAll fn.parameters args [] = some env ∧\n LexLeanPreservation.Conv p env fn.body o\ndef LexLeanPreservation.RunConv : LexLeanTarget.TargetSyntax.Program →\n Nat → List LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs → Prop :=\nfun p entry args o => ∃ n, LexLeanPreservation.obs (LexLeanTarget.TargetSemantics.run n p entry args) = some o\ndef LexLeanPreservation.Rust.WT : LexLeanTarget.TargetSyntax.Program →\n LexLeanPreservation.Rust.RCrate →\n LexLeanPreservation.Rust.Flags → LexLeanTarget.TargetSyntax.Value → LexLeanTarget.TargetSyntax.Ty → Prop :=\nfun p c A x x_1 =>\n x.brecOn (LexLeanPreservation.Rust.WT._f p c A)\n (fun t f => ⟨LexLeanPreservation.Rust.WTL._f p c A t f, LexLeanPreservation.Rust.WTAll._f p c A t f⟩) x_1\ndef LexLeanPreservation.Rust.WTL : LexLeanTarget.TargetSyntax.Program →\n LexLeanPreservation.Rust.RCrate →\n LexLeanPreservation.Rust.Flags →\n List LexLeanTarget.TargetSyntax.Value → List LexLeanTarget.TargetSyntax.Ty → Prop :=\nfun p c A x x_1 =>\n (LexLeanTarget.TargetSyntax.Value.brecOn_1 x (LexLeanPreservation.Rust.WT._f p c A) fun t f =>\n ⟨LexLeanPreservation.Rust.WTL._f p c A t f, LexLeanPreservation.Rust.WTAll._f p c A t f⟩).1\n x_1\ndef LexLeanPreservation.Rust.fnIdent : Nat → LexLeanPreservation.Rust.RIdent :=\nfun f => LexLeanTarget.RustSyntax.Ident.generated LexLeanTarget.RustSyntax.IdentKind.function f\ndef LexLeanPreservation.Rust.fnFallible : LexLeanPreservation.Rust.RCrate → Nat → Option Bool :=\nfun c f =>\n Option.map (fun fn => LexLeanTarget.RustSemantics.fallibleType fn.snd.fst)\n (LexLeanTarget.RustSemantics.findFunction c.items (LexLeanPreservation.Rust.fnIdent f))\ndef LexLeanPreservation.Rust.RCI : LexLeanPreservation.Rust.RCrate →\n LexLeanPreservation.Rust.RIdent → List LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Rust.ROut → Prop :=\nfun c f args o =>\n o ≠ LexLeanTarget.RustSemantics.ROutcome.exhausted ∧ ∃ n, LexLeanTarget.RustSemantics.invoke n c f args = o\ndef LexLeanPreservation.Rust.Realizes : Bool → LexLeanPreservation.Obs → LexLeanPreservation.Rust.ROut → Prop :=\nfun fl x x_1 =>\n match x, x_1 with\n | LexLeanPreservation.Obs.value v, LexLeanTarget.RustSemantics.ROutcome.value w => w = v\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.raise => fl = true\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.abort => True\n | x, x_2 => False\ndef LexLeanPreservation.Rust.RealizesFn : Bool → LexLeanPreservation.Obs → LexLeanPreservation.Rust.ROut → Prop :=\nfun fallible x x_1 =>\n match x, x_1 with\n | LexLeanPreservation.Obs.value v, LexLeanTarget.RustSemantics.ROutcome.value w => w = bif fallible then v.ok else v\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.value w =>\n fallible = true ∧ w = LexLeanTarget.TargetSyntax.Value.unit.error\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.abort => True\n | x, x_2 => False\ndef LexLeanPreservation.Rust.FunSem : LexLeanTarget.TargetSyntax.Program →\n LexLeanPreservation.Rust.RCrate → LexLeanPreservation.Rust.Flags → Nat → Nat → Prop :=\nfun p c A n f =>\n ∀ (fn : LexLeanTarget.TargetSyntax.Function) (args : List LexLeanTarget.TargetSyntax.Value)\n (env : List (Nat × LexLeanTarget.TargetSyntax.Value)) (F : Bool),\n LexLeanRuntime.index p.functions f = some fn →\n LexLeanPreservation.Rust.WTL p c A args fn.types →\n LexLeanTarget.TargetSemantics.bindAll fn.parameters args [] = some env →\n LexLeanPreservation.Rust.fnFallible c f = some F →\n ∀ (o : LexLeanPreservation.Obs),\n LexLeanPreservation.obs (LexLeanTarget.TargetSemantics.eval n p env fn.body) = some o →\n o ≠ LexLeanPreservation.Obs.stuck →\n (∀ (v : LexLeanTarget.TargetSyntax.Value),\n o = LexLeanPreservation.Obs.value v → LexLeanPreservation.Rust.WT p c A v fn.result) ∧\n ∃ ro,\n LexLeanPreservation.Rust.RealizesFn F o ro ∧\n LexLeanPreservation.Rust.RCI c (LexLeanPreservation.Rust.fnIdent f) args ro\ndef LexLeanPreservation.someObs : LexLeanPreservation.Obs → LexLeanPreservation.Obs :=\nfun x =>\n match x with\n | LexLeanPreservation.Obs.value v => LexLeanPreservation.Obs.value v.some\n | LexLeanPreservation.Obs.overflow => LexLeanPreservation.Obs.overflow\n | LexLeanPreservation.Obs.stuck => LexLeanPreservation.Obs.stuck\ndef LexLeanPreservation.Rust.Representable : LexLeanTarget.TargetSyntax.Value → Prop :=\nfun x => x.brecOn LexLeanPreservation.Rust.Representable._f LexLeanPreservation.Rust.RepresentableL._f\ndef LexLeanPreservation.Rust.RepresentableL : List LexLeanTarget.TargetSyntax.Value → Prop :=\nfun x =>\n LexLeanTarget.TargetSyntax.Value.brecOn_1 x LexLeanPreservation.Rust.Representable._f\n LexLeanPreservation.Rust.RepresentableL._f\nLexLeanPreservation.Rust.runItem_abort_infallible : ∀ (profile : LexLeanTarget.RustSyntax.Profile)\n (item : LexLeanTarget.RustSyntax.Item) (values : List LexLeanTarget.TargetSyntax.Value),\n LexLeanTarget.RustSemantics.runItem profile item values = LexLeanTarget.RustSemantics.ROutcome.abort →\n LexLeanTarget.RustSemantics.itemFallible item = false\n","stdout_sha256":"5bed72af47cfd559bc7aadd86b109f30a960c76c94ee0b36dbc483670a89c061","tool":"lean"} +{"argv":["env","lean","-R","$STAGING/preserve-src","$STAGING/preserve-src/LexLeanPreserve/Audit.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Audit","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanPreservation.Obs' does not depend on any axioms\n'LexLeanPreservation.obs.match_1' does not depend on any axioms\n'LexLeanPreservation.obs' does not depend on any axioms\n'LexLeanPreservation.Conv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ConvA' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ObsL' does not depend on any axioms\n'LexLeanPreservation.obsL.match_1' does not depend on any axioms\n'LexLeanPreservation.obsL' does not depend on any axioms\n'LexLeanPreservation.ConvL' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.FunRel' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Obs._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.Obs._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.Obs.casesOn' does not depend on any axioms\n'LexLeanPreservation.Obs.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.Obs.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Obs.ctorElim' does not depend on any axioms\n'LexLeanPreservation.Obs.overflow.elim' does not depend on any axioms\n'LexLeanPreservation.Obs.stuck.elim' does not depend on any axioms\n'LexLeanPreservation.Obs.value.elim' does not depend on any axioms\n'LexLeanPreservation.Obs.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.Obs.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Obs.overflow.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Obs.recOn' does not depend on any axioms\n'LexLeanPreservation.Obs.stuck.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Obs.value.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Obs.value.inj' does not depend on any axioms\n'LexLeanPreservation.Obs.value.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Obs.value.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ObsL._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.ObsL._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.ObsL.casesOn' does not depend on any axioms\n'LexLeanPreservation.ObsL.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.ObsL.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.ObsL.ctorElim' does not depend on any axioms\n'LexLeanPreservation.ObsL.overflow.elim' does not depend on any axioms\n'LexLeanPreservation.ObsL.stuck.elim' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.elim' does not depend on any axioms\n'LexLeanPreservation.ObsL.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.ObsL.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ObsL.overflow.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ObsL.recOn' does not depend on any axioms\n'LexLeanPreservation.ObsL.stuck.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.inj' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.injEq' depends on axioms: [propext]\n'LexLeanPreservation.ObsL.values.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rel' does not depend on any axioms\n'LexLeanPreservation.Rel.eq_1' does not depend on any axioms\n'LexLeanPreservation.RelL' does not depend on any axioms\n'LexLeanPreservation.RelL.eq_1' does not depend on any axioms\n'LexLeanPreservation.RunConv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.addSteps_ne' does not depend on any axioms\n'LexLeanPreservation.chargeResult_ne' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.stable.match_1_16' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_18' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_20' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_22' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_24' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_26' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.eval.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.stable' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.evalArms_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs_ne' does not depend on any axioms\n'LexLeanPreservation.convA_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.eval_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs_addSteps' does not depend on any axioms\n'LexLeanPreservation.convA_hit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.convA_miss' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.evalList_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obsL_ne' does not depend on any axioms\n'LexLeanPreservation.convL_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.convL_cons._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.convL_cons._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.convL_cons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.convL_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_apply._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_apply._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_apply._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_apply' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_build' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_call._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_call._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_call' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_closure' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_cond._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_cond._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_field' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_first' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_let._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_let._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_let' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_match._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_match._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_match' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_matchV' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs_chargeResult' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_prim' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_second' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_var' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.funRel_intro' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs.eq_1' does not depend on any axioms\n'LexLeanPreservation.obs.eq_2' does not depend on any axioms\n'LexLeanPreservation.obs.eq_3' does not depend on any axioms\n'LexLeanPreservation.obs.eq_4' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_1' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_2' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_3' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_4' does not depend on any axioms\n'LexLeanPreservation.run_of_funRel' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.run.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ListEnc' does not depend on any axioms\n'LexLeanPreservation.ListEnc._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.ListEnc._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.ListEnc.casesOn' does not depend on any axioms\n'LexLeanPreservation.ListEnc.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.ListEnc.elem' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items' does not depend on any axioms\n'LexLeanPreservation.ListEnc.enc' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_cons' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_eq.match_1_1' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_nil' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_eq._f' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_eq' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.ListEnc.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.ListEnc.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk.inj' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk.injEq' depends on axioms: [propext]\n'LexLeanPreservation.ListEnc.mk.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ListEnc.recOn' does not depend on any axioms\n'LexLeanPreservation.OptEnc' does not depend on any axioms\n'LexLeanPreservation.OptEnc._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.OptEnc._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.OptEnc.casesOn' does not depend on any axioms\n'LexLeanPreservation.OptEnc.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.OptEnc.elem' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc_none' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc_some' does not depend on any axioms\n'LexLeanPreservation.encOption.match_1' does not depend on any axioms\n'LexLeanPreservation.encOption' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc_map' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.OptEnc.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.OptEnc.noConfusion' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk.noConfusion' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk.inj' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk.injEq' depends on axioms: [propext]\n'LexLeanPreservation.OptEnc.mk.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.OptEnc.recOn' does not depend on any axioms\n'LexLeanPreservation.construct_adt' does not depend on any axioms\n'LexLeanPreservation.construct_cons' does not depend on any axioms\n'LexLeanPreservation.construct_error' does not depend on any axioms\n'LexLeanPreservation.construct_false' does not depend on any axioms\n'LexLeanPreservation.construct_nil' does not depend on any axioms\n'LexLeanPreservation.construct_none' does not depend on any axioms\n'LexLeanPreservation.construct_ok' does not depend on any axioms\n'LexLeanPreservation.construct_pair' does not depend on any axioms\n'LexLeanPreservation.construct_some' does not depend on any axioms\n'LexLeanPreservation.construct_succ' does not depend on any axioms\n'LexLeanPreservation.construct_true' does not depend on any axioms\n'LexLeanPreservation.construct_unit' does not depend on any axioms\n'LexLeanPreservation.construct_zero' does not depend on any axioms\n'LexLeanPreservation.encExcept.match_1' does not depend on any axioms\n'LexLeanPreservation.encExcept' does not depend on any axioms\n'LexLeanPreservation.encList' does not depend on any axioms\n'LexLeanPreservation.encOrdering.match_1' does not depend on any axioms\n'LexLeanPreservation.encOrdering' does not depend on any axioms\n'LexLeanPreservation.encPair' does not depend on any axioms\n'LexLeanPreservation.encUnit' does not depend on any axioms\n'LexLeanPreservation.listEnc._proof_1' does not depend on any axioms\n'LexLeanPreservation.listEnc._proof_2' does not depend on any axioms\n'LexLeanPreservation.listEnc' does not depend on any axioms\n'LexLeanPreservation.optEnc._proof_1' does not depend on any axioms\n'LexLeanPreservation.optEnc._proof_2' does not depend on any axioms\n'LexLeanPreservation.optEnc' does not depend on any axioms\n'LexLeanPreservation.bytes_empty' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.bytes_one' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.bytes_zero' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.encOrdering.eq_1' does not depend on any axioms\n'LexLeanPreservation.encOrdering.eq_2' does not depend on any axioms\n'LexLeanPreservation.encOrdering.eq_3' does not depend on any axioms\n'LexLeanPreservation.fromOrdering_encOrdering' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.fromStrings_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.fromStrings_map._f' does not depend on any axioms\n'LexLeanPreservation.fromStrings_map' does not depend on any axioms\n'LexLeanPreservation.intFits' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.listIndex_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.listIndex_map._f' does not depend on any axioms\n'LexLeanPreservation.listIndex_map' does not depend on any axioms\n'LexLeanPreservation.listIndex_unique.match_1_1' does not depend on any axioms\n'LexLeanPreservation.listIndex_unique._f' does not depend on any axioms\n'LexLeanPreservation.listIndex_unique' does not depend on any axioms\n'LexLeanPreservation.obs_intResult' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.obs_natResult' does not depend on any axioms\n'LexLeanPreservation.prim_append_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_append_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_boolNot' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_compareBytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_bool' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_nat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_ordering' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_string' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_index_bytes.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_index_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_index_list.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_index_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intMul' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intNeg' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intQuot' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intRem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intSub' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_join.match_1_1' does not depend on any axioms\n'LexLeanPreservation.toStrings_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.toStrings_map.match_1_3' does not depend on any axioms\n'LexLeanPreservation.toStrings_map._f' does not depend on any axioms\n'LexLeanPreservation.toStrings_map' does not depend on any axioms\n'LexLeanPreservation.prim_join' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_length_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_length_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_length_string' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natAdd' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natEq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natLe' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natLt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natMul' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natQuot' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natRem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natSub' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_slice_bytes.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_slice_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_slice_list.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_slice_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_splitExact.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_splitExact' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_utf8Decode.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_utf8Decode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_utf8Encode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.compareBytes.eq_1' depends on axioms: [propext]\n'LexLeanRuntime.equal.eq_1' does not depend on any axioms\n'LexLeanRuntime.length.eq_1' does not depend on any axioms\n'LexLeanRuntime.slice.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromOrdering.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.checkedMultiplyWith.match_1' does not depend on any axioms\n'LexLeanPreservation.checkedMultiplyWith' does not depend on any axioms\n'LexLeanPreservation.checkedQuotientWith' does not depend on any axioms\n'LexLeanPreservation.decimalFits.match_1' does not depend on any axioms\n'LexLeanPreservation.decimalFits' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.divideStep' does not depend on any axioms\n'LexLeanPreservation.divide_unique.match_1_1' does not depend on any axioms\n'LexLeanPreservation.divide_unique._f' does not depend on any axioms\n'LexLeanPreservation.divide_unique' does not depend on any axioms\n'LexLeanPreservation.multiplyStep' does not depend on any axioms\n'LexLeanPreservation.multiply_unique.match_1_1' does not depend on any axioms\n'LexLeanPreservation.multiply_unique._f' does not depend on any axioms\n'LexLeanPreservation.multiply_unique' does not depend on any axioms\n'LexLeanPreservation.prim_bitAnd_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i64.match_1_2' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_int' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_int.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_int' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ordOf.match_1' does not depend on any axioms\n'LexLeanPreservation.ordOf' does not depend on any axioms\n'LexLeanPreservation.KeySpec' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.mk._flat_ctor' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.recOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.spec' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.compareCodes_eq.match_1_1' does not depend on any axioms\n'LexLeanPreservation.compareCodes_eq._f' depends on axioms: [propext]\n'LexLeanPreservation.compareCodes_eq' depends on axioms: [propext]\n'LexLeanPreservation.compareCodes_swap.match_1_1' does not depend on any axioms\n'LexLeanPreservation.compareCodes_swap._f' depends on axioms: [propext]\n'LexLeanPreservation.compareCodes_swap' depends on axioms: [propext]\n'LexLeanPreservation.lessThanE' does not depend on any axioms\n'LexLeanPreservation.prim_compare_key.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_compare_key' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_lessThan' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.orderOf_insert' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.orderBool.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.keySpec_bool' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI16.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI32.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI64.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI8.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderInt.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_int' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderNat.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_nat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.keySpec_pair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderString.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.keySpec_string' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU16.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU32.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU64.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU8.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanCollections.compareCodes._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_2' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_3' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_4' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_def' depends on axioms: [propext]\n'LexLeanCollections.insertEntry.eq_1' does not depend on any axioms\n'LexLeanCollections.insertEntry.eq_2' does not depend on any axioms\n'LexLeanCollections.insertEntry.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.compareValue.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_18' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_20' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_22' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_23' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_24' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_25' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_26' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_27' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_28' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_29' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_30' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_31' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_33' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_34' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_35' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_36' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_37' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_38' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_39' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_40' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_41' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_42' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_43' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_44' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_45' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_46' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_47' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_48' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_49' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_50' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_51' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_52' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_53' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_54' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_55' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_56' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_57' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_58' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_59' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_60' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_61' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_62' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_63' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_65' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_66' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_67' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_68' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_69' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_70' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_71' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_72' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_73' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_74' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_75' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_76' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_77' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_78' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_79' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_80' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_81' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_82' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_83' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_84' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_85' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_86' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_87' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_88' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_89' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_90' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_91' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_92' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_93' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_94' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_95' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_96' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_97' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_98' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_99' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Conv.bool_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Conv.fits_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.FunRel.fits_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ListEnc.enc.eq_1' does not depend on any axioms\n'LexLeanPreservation.ListEnc.enc_cons' does not depend on any axioms\n'LexLeanPreservation.ListEnc.enc_nil' does not depend on any axioms\n'LexLeanPreservation.LookOps' does not depend on any axioms\n'LexLeanPreservation.LookOps.casesOn' does not depend on any axioms\n'LexLeanPreservation.LookOps.l0' does not depend on any axioms\n'LexLeanPreservation.LookOps.leq' does not depend on any axioms\n'LexLeanPreservation.LookOps.lgt' does not depend on any axioms\n'LexLeanPreservation.LookOps.llt' does not depend on any axioms\n'LexLeanPreservation.LookOps.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.LookOps.recOn' does not depend on any axioms\n'LexLeanPreservation.SetOps' does not depend on any axioms\n'LexLeanPreservation.SetOps.c0' does not depend on any axioms\n'LexLeanPreservation.SetOps.casesOn' does not depend on any axioms\n'LexLeanPreservation.SetOps.ceq' does not depend on any axioms\n'LexLeanPreservation.SetOps.cgt' does not depend on any axioms\n'LexLeanPreservation.SetOps.clt' does not depend on any axioms\n'LexLeanPreservation.SetOps.i0' does not depend on any axioms\n'LexLeanPreservation.SetOps.ieq' does not depend on any axioms\n'LexLeanPreservation.SetOps.igt' does not depend on any axioms\n'LexLeanPreservation.SetOps.ilt' does not depend on any axioms\n'LexLeanPreservation.SetOps.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.SetOps.r0' does not depend on any axioms\n'LexLeanPreservation.SetOps.recOn' does not depend on any axioms\n'LexLeanPreservation.SetOps.req' does not depend on any axioms\n'LexLeanPreservation.SetOps.rgt' does not depend on any axioms\n'LexLeanPreservation.SetOps.rlt' does not depend on any axioms\n'LexLeanPreservation.TopoOps' does not depend on any axioms\n'LexLeanPreservation.TopoOps.casesOn' does not depend on any axioms\n'LexLeanPreservation.TopoOps.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.TopoOps.recOn' does not depend on any axioms\n'LexLeanPreservation.TopoOps.s_next' does not depend on any axioms\n'LexLeanPreservation.TopoOps.s_nil' does not depend on any axioms\n'LexLeanPreservation.TopoOps.s_stuck' does not depend on any axioms\n'LexLeanPreservation.TopoOps.z_cons' does not depend on any axioms\n'LexLeanPreservation.TopoOps.z_nil' does not depend on any axioms\n'LexLeanPreservation.Tpl.boolE' does not depend on any axioms\n'LexLeanPreservation.Tpl.byOrder' does not depend on any axioms\n'LexLeanPreservation.Tpl.cns' does not depend on any axioms\n'LexLeanPreservation.Tpl.fn' does not depend on any axioms\n'LexLeanPreservation.Tpl.lst' does not depend on any axioms\n'LexLeanPreservation.Tpl.v' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphInnerFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.pr' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphNodesFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.natOne' does not depend on any axioms\n'LexLeanPreservation.Tpl.nl' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphReachableFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphSuccessorsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphTopologicalFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.iterateFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.iterateUntilFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.listFoldFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapContainsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapFoldFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapInsertFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapLookupFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapProjectFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapRemoveFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reachFrontierFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reachIntoFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reachRoundsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reverseFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setContainsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setFilterFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setInsertFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setRemoveFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setUnionFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoFinished' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoReadyFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoRoundsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoUnreachedFn' does not depend on any axioms\n'LexLeanPreservation.blt_succ_fits._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.blt_succ_fits' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_cond_false' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_cond_true' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.enc_elem' does not depend on any axioms\n'LexLeanPreservation.enc_entry' does not depend on any axioms\n'LexLeanPreservation.foldFits.match_1' does not depend on any axioms\n'LexLeanPreservation.foldFits._f' does not depend on any axioms\n'LexLeanPreservation.foldFits' does not depend on any axioms\n'LexLeanPreservation.foldFits._sunfold' does not depend on any axioms\n'LexLeanPreservation.foldFits._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.foldFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.foldFits.eq_2' does not depend on any axioms\n'LexLeanPreservation.foldFits.eq_def' does not depend on any axioms\n'LexLeanPreservation.graphFits' does not depend on any axioms\n'LexLeanPreservation.graphFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.iterateFits.match_1' does not depend on any axioms\n'LexLeanPreservation.iterateFits._f' does not depend on any axioms\n'LexLeanPreservation.iterateFits' does not depend on any axioms\n'LexLeanPreservation.iterateFits._sunfold' does not depend on any axioms\n'LexLeanPreservation.iterateFits._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.iterateFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.iterateFits.eq_2' does not depend on any axioms\n'LexLeanPreservation.iterateFits.eq_def' does not depend on any axioms\n'LexLeanPreservation.length_eq' does not depend on any axioms\n'LexLeanPreservation.prim_compare_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.reachNext' does not depend on any axioms\n'LexLeanPreservation.tpl_graphInner.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setInsert.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setInsert._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setInsert' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphInner._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphInner' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphNodes.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_graphNodes._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphNodes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapLookup.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapLookup._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapLookup' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphSuccessors' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachFrontier.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_reachInto.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setContains.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setContains._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setContains' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachInto._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachInto' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachFrontier._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachFrontier' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachRounds.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setUnion.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setUnion._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setUnion' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachRounds._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachRounds' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphReachable' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reverse.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_reverse._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reverse' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setRemove.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setRemove._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setRemove' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoReady.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_topoUnreached.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_topoUnreached._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoUnreached' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoReady._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoReady' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoRounds.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_topoRounds._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoRounds' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphTopological' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterate.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_iterate._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterate' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterateUntil.match_1_1' does not depend on any axioms\n'LexLeanPreservation.untilFits.match_1' does not depend on any axioms\n'LexLeanPreservation.untilFits._f' does not depend on any axioms\n'LexLeanPreservation.untilFits' does not depend on any axioms\n'LexLeanPreservation.tpl_iterateUntil._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterateUntil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_listFold.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_listFold._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_listFold' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapContains' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapFold.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapFold._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapFold' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapInsert.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapInsert._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapInsert' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapKeys.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapKeys._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapKeys' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapRemove.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapRemove._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapRemove' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapValues.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapValues._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapValues' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setDifference.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setDifference._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setDifference' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setIntersection.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setIntersection._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setIntersection' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.untilFits._sunfold' does not depend on any axioms\n'LexLeanPreservation.untilFits._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.untilFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.untilFits.eq_2' does not depend on any axioms\n'LexLeanPreservation.untilFits.eq_def' does not depend on any axioms\n'LexLeanPreservation.validExcept.match_1' does not depend on any axioms\n'LexLeanPreservation.InvExcept' does not depend on any axioms\n'LexLeanPreservation.InvList' does not depend on any axioms\n'LexLeanPreservation.InvList.eq_1' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.match_1' does not depend on any axioms\n'LexLeanPreservation.StrictAsc._f' does not depend on any axioms\n'LexLeanPreservation.StrictAsc' does not depend on any axioms\n'LexLeanPreservation.InvMap' does not depend on any axioms\n'LexLeanPreservation.validOption.match_1' does not depend on any axioms\n'LexLeanPreservation.InvOption' does not depend on any axioms\n'LexLeanPreservation.InvOption.eq_1' does not depend on any axioms\n'LexLeanPreservation.InvOption.eq_2' does not depend on any axioms\n'LexLeanPreservation.InvPair' does not depend on any axioms\n'LexLeanPreservation.InvSet' does not depend on any axioms\n'LexLeanPreservation.StrictAsc._sunfold' does not depend on any axioms\n'LexLeanPreservation.StrictAsc._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_1' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_2' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_3' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_def' does not depend on any axioms\n'LexLeanPreservation.Tpl.validListFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validMapFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validOptionFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validPairFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validResultFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validSetFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validTrueFn' does not depend on any axioms\n'LexLeanPreservation.ascMap.match_1' does not depend on any axioms\n'LexLeanPreservation.lessB.match_1' does not depend on any axioms\n'LexLeanPreservation.lessB' does not depend on any axioms\n'LexLeanPreservation.ascMap._f' does not depend on any axioms\n'LexLeanPreservation.ascMap' does not depend on any axioms\n'LexLeanPreservation.ascMap._sunfold' does not depend on any axioms\n'LexLeanPreservation.ascMap._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_1' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_2' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_3' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_def' does not depend on any axioms\n'LexLeanPreservation.ascMap_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.lessB_iff' depends on axioms: [propext]\n'LexLeanPreservation.ascMap_iff._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.ascMap_iff' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.ascMap_inv' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.ascSet._f' does not depend on any axioms\n'LexLeanPreservation.ascSet' does not depend on any axioms\n'LexLeanPreservation.ascSet._sunfold' does not depend on any axioms\n'LexLeanPreservation.ascSet._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_1' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_2' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_3' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_def' does not depend on any axioms\n'LexLeanPreservation.ascSet_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.ascSet_iff._f' depends on axioms: [propext]\n'LexLeanPreservation.ascSet_iff' depends on axioms: [propext]\n'LexLeanPreservation.ascSet_inv' depends on axioms: [propext]\n'LexLeanPreservation.condAnd_iff' depends on axioms: [propext]\n'LexLeanPreservation.invList_eqs.match_1_1' does not depend on any axioms\n'LexLeanPreservation.invList_eqs._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.invList_eqs' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.lessB.eq_1' does not depend on any axioms\n'LexLeanPreservation.lessB_eq' depends on axioms: [propext]\n'LexLeanPreservation.lessB_gt' depends on axioms: [propext]\n'LexLeanPreservation.lessB_lt' depends on axioms: [propext]\n'LexLeanPreservation.someObs.match_1' does not depend on any axioms\n'LexLeanPreservation.someObs' does not depend on any axioms\n'LexLeanPreservation.tpl_validList.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validList.match_1' does not depend on any axioms\n'LexLeanPreservation.validList._f' does not depend on any axioms\n'LexLeanPreservation.validList' does not depend on any axioms\n'LexLeanPreservation.tpl_validList' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validMap.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_validMap._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validMap' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validOption.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validOption' does not depend on any axioms\n'LexLeanPreservation.tpl_validOption' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validPair.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validPair' does not depend on any axioms\n'LexLeanPreservation.tpl_validPair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validResult.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validExcept' does not depend on any axioms\n'LexLeanPreservation.tpl_validResult' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validSet.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_validSet._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validSet' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validTrue' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.trueIff' does not depend on any axioms\n'LexLeanPreservation.validExcept_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validExcept_inv' does not depend on any axioms\n'LexLeanPreservation.validList._sunfold' does not depend on any axioms\n'LexLeanPreservation.validList._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.validList.eq_1' does not depend on any axioms\n'LexLeanPreservation.validList.eq_2' does not depend on any axioms\n'LexLeanPreservation.validList.eq_def' does not depend on any axioms\n'LexLeanPreservation.validList_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validList_iff._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.validList_iff' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.validList_inv' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.validOption.eq_1' does not depend on any axioms\n'LexLeanPreservation.validOption.eq_2' does not depend on any axioms\n'LexLeanPreservation.validOption_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validOption_inv' depends on axioms: [propext]\n'LexLeanPreservation.validPair_inv' depends on axioms: [propext]\n'LexLeanPreservation.validTrue_inv' does not depend on any axioms\n'LexLeanPreservation.Rust.Ctx' does not depend on any axioms\n'LexLeanPreservation.Rust.Flags' does not depend on any axioms\n'LexLeanPreservation.Rust.RCrate' does not depend on any axioms\n'LexLeanPreservation.Rust.RIdent' does not depend on any axioms\n'LexLeanPreservation.Rust.WT._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.adtFields' depends on axioms: [propext]\n'LexLeanTarget.TargetSyntax.IntKind.ofNat' does not depend on any axioms\n'LexLeanTarget.TargetSyntax.IntKind.ofNat_ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Rust.instDecidableEqIntKind_lexLeanPreservation._proof_1' does not depend on any axioms\n'LexLeanPreservation.Rust.instDecidableEqIntKind_lexLeanPreservation._proof_2' does not depend on any axioms\n'LexLeanPreservation.Rust.instDecidableEqIntKind_lexLeanPreservation' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flagOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fnIdent' does not depend on any axioms\n'LexLeanPreservation.Rust.fnFallible' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.inert._f' does not depend on any axioms\n'LexLeanPreservation.Rust.inert' does not depend on any axioms\n'LexLeanPreservation.Rust.WT._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.WTAll._f' does not depend on any axioms\n'LexLeanPreservation.Rust.WTL.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctxLookup.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup._f' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup' does not depend on any axioms\n'LexLeanPreservation.Rust.local_' does not depend on any axioms\n'LexLeanPreservation.Rust.EnvRel' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ROut' does not depend on any axioms\n'LexLeanPreservation.Rust.Halt' does not depend on any axioms\n'LexLeanPreservation.Rust.REnv' does not depend on any axioms\n'LexLeanPreservation.Rust.RExpr' does not depend on any axioms\n'LexLeanPreservation.Rust.RC' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RLet' does not depend on any axioms\n'LexLeanPreservation.Rust.LetsOK' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.append' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.below' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.below.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.brecOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.recOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.append_left' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.append_right' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.below' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.below.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.brecOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.recOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RBlock' does not depend on any axioms\n'LexLeanPreservation.Rust.dispatched_ne' does not depend on any axioms\n'LexLeanPreservation.Rust.finished_ne' does not depend on any axioms\n'LexLeanPreservation.Rust.returned_ne' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_24' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_26' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_28' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_30' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_32' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_34' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_36' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.eval.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_22' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.invoke.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.stable' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.reval_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCB' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.block' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCA' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.revalBlock_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCB.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCI' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.invoke_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCI.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCL' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.revalList_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCL.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.WTAll' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.block_of_lets' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.block_of_raise' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.ctxLookup._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup_slot._simp_1_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotFree' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup_slot' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_cons_other' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sameIdent_self' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_cons_self' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sameIdent_local' depends on axioms: [propext]\n'LexLeanPreservation.Rust.envRel_bind' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.envRel_extra' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.envRel_ghost' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sameIdent_kind' depends on axioms: [propext]\n'LexLeanPreservation.Rust.envRel_temp' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.listIndex_eq.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.listIndex_eq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.listIndex_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.index_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.inert._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.inert._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_nil.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_raise_head.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcl_raise_head.match_1_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcl_raise_head' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_raise_tail' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.revalArms_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.slotFree.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sunfold' depends on axioms: [propext]\n'LexLeanTarget.RustSemantics.eval.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_18' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_20' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.invoke.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.invoke.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.kindNumber.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.lookup.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.lookup.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.lookup.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.lookup.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.lookup.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.lookup.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd' does not depend on any axioms\n'LexLeanPreservation.Rust.isTemp._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isTemp.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isTemp' depends on axioms: [propext]\n'LexLeanPreservation.Rust.letsBind.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds._f' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds._f' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind._f' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind' does not depend on any axioms\n'LexLeanPreservation.Rust.tempFresh' does not depend on any axioms\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.foldN.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.flatB._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep.match_7' does not depend on any axioms\n'LexLeanPreservation.Rust.foldStep' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldB' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats._f' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats' does not depend on any axioms\n'LexLeanPreservation.Rust.okBlock' does not depend on any axioms\n'LexLeanPreservation.Rust.partRead._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Kind.casesOn' does not depend on any axioms\n'LexLeanPreservation.Rust.elseCtx.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.elseCtx' does not depend on any axioms\n'LexLeanPreservation.Rust.elseLets.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.elseLets' does not depend on any axioms\n'LexLeanPreservation.Rust.heldOK.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.heldOK' does not depend on any axioms\n'LexLeanPreservation.Rust.negateR._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.negateR._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.negateR.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.negateR' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_5' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_7' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_9' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identBoxed' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal' does not depend on any axioms\n'LexLeanPreservation.Rust.isWild._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.unboxOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotOK.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocal' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armShape.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.armShape' does not depend on any axioms\n'LexLeanPreservation.Rust.otherArms.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.otherArms' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.noClosure.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.noClosure._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh' depends on axioms: [propext]\n'LexLeanPreservation.Rust.covered' depends on axioms: [propext]\n'LexLeanPreservation.Rust.scrut' does not depend on any axioms\n'LexLeanPreservation.Rust.validU.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.validU' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotOK' does not depend on any axioms\n'LexLeanPreservation.Rust.ctorOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identsDistinct.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct._f' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct' does not depend on any axioms\n'LexLeanPreservation.Rust.litOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArg._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.match_6' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArg.match_8' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArg' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArgs._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildTail.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildsArm.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildsArm' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.itemOK.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemOK' does not depend on any axioms\n'LexLeanPreservation.Rust.itemTyped.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemTyped.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf' does not depend on any axioms\n'LexLeanPreservation.Rust.itemTyped' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_9' does not depend on any axioms\n'LexLeanPreservation.Rust.isFixed._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped' depends on axioms: [propext]\n'LexLeanPreservation.Rust.primTyped' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.litValues._f' does not depend on any axioms\n'LexLeanPreservation.Rust.litValue' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.typedLitAll._f' does not depend on any axioms\n'LexLeanPreservation.Rust.typedLits.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Corr' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.below' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.below.casesOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.brecOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.casesOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.recOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.FunOK' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.CrateOK' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Fresh' does not depend on any axioms\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn' depends on axioms: [propext]\n'LexLeanPreservation.Rust.FunSem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Kind._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.casesOn' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ctorElim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.b.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.e.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.k.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.l.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.m.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.ops.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.recOn' does not depend on any axioms\n'LexLeanPreservation.Rust.KPre.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.KPre' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Kind.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.ctorElim' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Kind.nat.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.plain.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.plain.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.recOn' does not depend on any axioms\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesM.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.RealizesM' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Sem.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.viewVal._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Sem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.foldN._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identsDistinct._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_10' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_11' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_12' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_13' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_14' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_6' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_7' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_8' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.litValues' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue._sunfold' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.litValue._unsafe_rec' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues._sunfold' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.paramCtx._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patsBinds' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.patLocals._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patsBinds._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArgs._sunfold' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs._unsafe_rec' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.typedLitAll' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.typedLits._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_of_inert.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_of_inert.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_of_inert._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_of_inert' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_of_inert._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_of_inert' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Halt.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.LetsRaise.halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.block_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.boxed' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesM.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesM.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_bytes_inv' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_list_inv' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_string_inv' depends on axioms: [propext]\n'LexLeanPreservation.Rust.takes_of_typed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.allWidth_of.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_eq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_eq._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.tysBeq_eq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq_eq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.wt_fixed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.allWidth_of._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.allWidth_of' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.width_of_typed.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.width_of_typed.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.width_of_typed.match_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.width_of_typed' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.accepts_of_typed' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_apply' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtl_append.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_append._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_append' depends on axioms: [propext]\n'LexLeanPreservation.Rust.apply_result' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.bindPattern_shape.match_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.bindPattern_shape._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.bindPatterns_shape._simp_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindPatterns_shape.match_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.bindPatterns_shape._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.bindPattern_shape' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.bindPatterns_shape' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms_spec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_4' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_6' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_7' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.boolArms_eval' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.boxWith.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_100' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_102' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_96' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_98' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_function' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.call_result' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.const_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.convert_args.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.convert_args' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_append_fresh' depends on axioms: [propext]\n'LexLeanPreservation.Rust.envRel_fresh' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_not._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_cond.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.itemResult.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.eval_match' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fixedTyped.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_18' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_19' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_20' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_21' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_22' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_23' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_24' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_25' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_26' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_27' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_28' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_29' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_30' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_31' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_32' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_33' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_34' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_35' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_36' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_37' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_38' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_39' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_40' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_41' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_42' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_43' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_44' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_45' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_46' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_47' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_48' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_49' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_50' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_51' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_52' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_53' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_54' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_55' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_56' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_57' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_58' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_59' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_60' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_61' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN_sound.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.split_last.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.split_last._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.split_last' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep_spec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcb_nil_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_nomatch.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcb_cons_nomatch' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_stop' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_prefix' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_flat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_read_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_cons_same' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcb_fold_last' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldStep_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldN_sound._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldN_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldB_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldN.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_append' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_bind._simp_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_bind' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotFree_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_weaken' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_elseCtx' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_temp._simp_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_temp' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fromStrings_wt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fromStrings_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fromStrings_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.hasWidth_i16' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_i32' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_i64' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_i8' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u16' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u32' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u64' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u8' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.heldOK.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.heldOK.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.isFixed._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.isSeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.isTemp._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.itemOK.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemOperands_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.itemResult' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.kpre_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_pred._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_pred.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_pred' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.kpre_else' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.kpre_then' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_of_lets' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_b_rcb' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.k_branch' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_cond_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_isZero_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_lit_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate_halt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_negate_halt.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_nonZero_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_23' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_25' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_27' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_29' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_31' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_33' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_35' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_37' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_39' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_41' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_43' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_45' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_47' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_49' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_51' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_not_inv.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_not_inv.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_not_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.k_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_read.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_read' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.kpre_held' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.letsBind.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.letsOK_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.letsOK_shape' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.litValue._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_4' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_def' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_5' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.eq_def' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.lit_branch' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.lookup_through._simp_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.lookup_through' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms_spec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms_eval' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.obsL_evalList_zero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.obs_eval_zero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.oneOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf_halt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.param_env.match_1_1' depends on axioms: [propext]\n'LexLeanTarget.TargetSemantics.bindAll.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.param_env._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.param_env' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.patBinds.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_10' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_6' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_7' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_8' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.primTyped.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_apply_halt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_apply_halt.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_apply_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_call_halt.match_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_runtime' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_construct' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct_halt.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct_halt.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_isZero.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_isZero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_lit.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_lit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue._simp_10' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue._simp_9' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue.match_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_pair.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_pair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_litValues.match_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rcl_litValues._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_nonZero.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_nonZero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_pair_halt_left' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_pair_halt_right' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_widen.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_widen' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_widen_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_11' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_7' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_litValues' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_nil_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_single_halt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_single_halt.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_single_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_widen_one' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.readOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizesL_halt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizesL_haltL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizes_halt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizesM_overflow' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizes_oneOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.runItem_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.runItem_succ' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_applyGen.match_1_13' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen.match_1_15' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen.match_1_28' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_apply' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_applyF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_bOfE' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_build.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_build.match_1_99' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_build' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildConst' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildPair.match_1_101' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_97' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_99' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildSucc.match_1_129' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSucc.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSucc' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildSuccF.match_1_101' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSuccF.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSuccF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_callF.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callF.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_callOps.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callOps.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callOps' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_closure.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.wtl_length.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_length._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_length' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_closure' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_cond.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_cond.match_1_11' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_condId.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_condId' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_eOfB' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_eOfBFold' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_eOfBNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_fOfB' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_unit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_fUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kHeld' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kLit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kId' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kIf' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kNeg' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kSame' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_lCons.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons.match_1_17' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons.match_1_19' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_lNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_letBind.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letBind.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letBind' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_letWild.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letWild.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letWild' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBool._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchHolder.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchHolder.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchHolder' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBool' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBoolId._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBoolId.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchBoolId' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchNat._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchNat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchUnit._proof_1_386' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchUnit.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchUnit.match_1_387' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsCons._simp_1_13' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsCons.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons.match_1_14' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons.match_1_16' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsOfL' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_29' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_31' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_ops_box.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_ops_box.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_ops_box.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_ops_box' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_part._sparseCasesOn_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_part.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_part.match_1_14' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_part.match_1_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_part' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_part._sparseCasesOn_1_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_prim.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_prim.match_1_38' does not depend on any axioms\n'LexLeanPreservation.Rust.wtAll_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wtAll_iff._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.wtAll_iff' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_append' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_bitwise' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_checked' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_convert' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_decode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_encode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_fixedTyped.match_1_67' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_format' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_index' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_join' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_parse' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_shift' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.slice_eq' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_slice' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_split' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_unary' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtl_one.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_one' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_three.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_three' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_two.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_two' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_fixedTyped' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_prim' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_prim' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_primF.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF.match_1_7' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_primWiden.match_1_108' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_110' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_112' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_114' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_116' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.typedLitAll_wt.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit_wt.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits_wt.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_var' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_varUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_zero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.shapeOf.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_10' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_11' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_12' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_13' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_14' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_6' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_7' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_8' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.tempFresh.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_12.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_13.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_14.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.allWidth.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.allWidth.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.allWidth.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_100' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_101' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_102' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_103' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_104' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_105' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_106' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_107' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_108' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_109' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_110' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_111' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_112' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_113' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_114' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_115' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_116' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_117' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_118' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_119' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_120' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_121' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_122' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_123' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_124' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_125' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_126' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_127' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_128' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_129' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_130' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_131' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_132' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_133' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_134' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_135' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_136' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_137' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_138' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_139' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_140' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_141' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_142' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_143' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_144' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_145' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_146' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_147' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_148' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_149' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_150' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_151' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_152' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_153' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_154' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_155' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_156' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_157' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_158' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_159' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_160' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_161' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_162' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_163' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_164' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_165' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_166' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_167' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_168' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_169' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_170' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_171' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_172' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_173' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_174' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_175' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_176' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_177' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_178' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_179' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_180' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_181' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_182' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_183' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_184' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_185' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_186' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_51' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_52' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_53' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_54' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_55' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_56' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_57' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_58' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_59' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_60' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_61' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_62' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_63' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_64' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_65' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_66' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_67' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_68' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_69' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_70' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_71' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_72' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_73' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_74' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_75' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_76' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_77' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_78' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_79' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_80' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_81' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_82' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_83' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_84' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_85' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_86' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_87' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_88' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_89' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_90' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_91' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_92' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_93' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_94' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_95' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_96' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_97' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_98' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_99' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_100' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_101' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_102' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_103' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_104' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_105' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_106' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_107' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_108' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_109' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_110' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_111' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_112' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_113' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_114' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_115' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_116' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_117' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_118' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_119' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_120' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_121' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_122' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_123' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_124' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_125' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_126' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_127' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_128' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_129' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_130' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_131' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_132' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_133' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_134' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_135' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_136' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_137' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_138' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_139' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_140' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_141' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_142' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_143' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_144' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_145' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_146' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_147' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_148' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_149' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_150' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_151' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_152' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_153' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_154' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_155' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_156' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_157' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_158' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_159' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_160' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_161' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_162' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_163' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_164' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_165' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_166' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_167' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_168' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_169' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_170' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_171' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_172' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_173' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_174' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_175' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_176' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_177' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_178' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_179' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_180' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_181' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_182' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_183' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_184' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_51' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_52' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_53' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_54' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_55' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_56' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_57' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_58' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_59' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_60' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_61' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_62' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_63' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_64' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_65' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_66' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_67' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_68' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_69' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_70' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_71' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_72' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_73' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_74' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_75' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_76' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_77' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_78' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_79' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_80' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_81' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_82' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_83' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_84' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_85' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_86' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_87' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_88' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_89' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_90' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_91' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_92' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_93' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_94' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_95' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_96' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_97' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_98' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_99' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemAccepts.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemAccepts.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.literal.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_10' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_11' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_12' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_13' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_14' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_15' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_3' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_4' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_5' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_6' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_7' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_8' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_9' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.propagated.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.returned.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_10' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_11' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_12' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_13' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_14' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_15' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_16' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_17' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_18' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_19' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_20' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_21' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_22' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_23' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_24' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_25' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_26' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_27' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_28' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_29' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_30' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_31' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_32' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_33' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_34' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_35' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_36' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_37' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_38' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_39' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_40' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_41' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_42' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_43' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_44' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_45' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_46' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_47' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_48' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_49' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_5' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_50' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_51' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_52' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_53' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_54' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_55' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_56' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_57' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_58' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_59' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_6' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_60' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_61' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_62' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_63' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_64' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_65' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_66' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_67' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_68' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_69' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_7' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_70' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_71' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_72' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_73' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_74' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_75' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_76' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_77' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_78' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_79' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_8' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_80' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_81' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_82' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_83' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_9' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_10' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_100' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_101' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_102' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_103' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_104' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_105' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_106' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_107' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_108' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_109' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_11' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_110' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_111' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_112' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_113' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_114' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_115' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_116' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_117' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_118' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_119' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_12' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_120' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_121' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_122' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_123' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_124' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_125' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_126' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_127' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_128' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_129' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_13' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_130' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_131' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_132' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_133' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_134' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_135' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_136' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_137' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_138' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_139' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_14' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_140' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_141' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_142' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_143' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_144' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_145' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_146' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_147' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_148' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_149' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_15' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_150' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_151' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_152' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_153' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_154' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_155' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_156' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_157' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_158' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_159' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_16' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_160' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_161' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_162' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_163' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_164' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_165' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_166' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_167' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_168' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_169' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_17' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_170' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_171' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_172' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_173' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_174' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_175' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_176' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_177' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_178' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_179' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_18' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_180' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_181' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_182' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_183' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_184' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_185' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_186' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_187' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_188' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_189' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_19' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_190' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_191' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_192' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_193' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_194' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_195' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_196' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_197' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_198' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_199' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_20' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_200' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_201' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_202' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_203' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_204' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_205' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_206' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_207' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_208' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_209' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_21' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_210' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_211' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_212' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_213' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_214' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_215' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_216' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_217' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_218' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_219' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_22' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_220' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_221' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_222' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_223' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_224' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_225' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_226' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_227' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_228' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_229' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_23' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_230' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_231' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_232' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_233' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_234' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_235' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_236' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_237' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_238' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_239' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_24' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_240' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_241' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_242' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_243' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_244' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_245' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_246' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_247' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_248' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_249' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_25' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_250' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_251' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_252' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_253' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_254' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_255' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_256' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_257' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_258' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_259' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_26' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_260' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_261' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_262' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_263' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_264' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_265' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_266' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_267' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_268' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_269' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_27' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_270' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_271' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_272' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_273' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_274' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_275' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_276' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_277' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_278' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_279' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_28' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_280' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_281' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_282' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_283' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_284' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_285' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_286' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_287' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_288' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_289' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_29' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_290' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_291' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_292' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_293' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_294' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_295' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_296' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_297' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_298' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_299' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_30' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_300' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_301' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_302' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_303' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_304' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_305' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_306' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_307' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_308' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_309' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_31' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_310' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_311' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_312' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_313' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_314' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_315' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_316' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_317' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_318' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_319' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_32' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_320' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_321' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_322' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_323' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_324' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_325' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_326' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_327' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_328' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_329' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_33' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_330' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_331' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_332' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_333' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_334' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_335' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_336' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_337' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_338' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_339' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_34' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_340' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_341' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_342' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_343' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_344' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_345' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_346' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_347' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_348' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_349' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_35' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_350' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_351' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_352' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_353' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_354' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_355' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_356' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_357' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_358' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_359' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_36' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_360' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_361' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_362' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_363' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_364' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_365' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_366' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_367' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_368' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_369' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_37' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_370' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_38' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_39' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_40' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_41' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_42' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_43' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_44' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_45' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_46' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_47' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_48' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_49' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_5' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_50' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_51' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_52' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_53' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_54' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_55' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_56' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_57' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_58' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_59' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_6' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_60' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_61' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_62' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_63' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_64' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_65' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_66' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_67' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_68' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_69' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_7' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_70' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_71' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_72' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_73' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_74' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_75' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_76' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_77' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_78' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_79' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_8' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_80' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_81' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_82' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_83' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_84' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_85' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_86' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_87' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_88' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_89' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_9' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_90' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_91' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_92' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_93' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_94' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_95' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_96' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_97' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_98' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_99' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromStrings.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromStrings.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromStrings.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.primitive.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1000' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1001' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1002' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1003' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1004' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1005' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1006' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1007' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1008' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1009' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1010' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1011' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1012' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1013' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1014' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1015' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1016' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1017' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1018' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1019' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1020' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1021' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1022' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1023' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1024' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1025' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1026' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1027' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1028' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1029' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1030' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1031' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1032' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1033' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1034' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1035' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1036' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1037' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1038' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1039' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1040' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1041' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1042' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1043' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1044' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1045' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1046' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1047' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1048' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1049' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1050' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1051' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1052' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1053' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1054' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1055' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1056' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1057' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1058' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1059' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1060' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1061' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1062' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1063' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1064' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1065' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1066' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1067' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1068' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1069' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1070' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1071' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1072' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1073' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1074' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1075' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1076' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1077' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1078' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1079' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1080' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1081' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1082' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1083' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1084' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1085' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1086' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1087' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1088' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1089' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1090' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1091' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1092' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1093' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1094' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1095' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1096' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1097' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1098' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1099' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1426' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1427' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1428' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1429' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1430' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1431' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1432' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1433' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1434' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1435' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1436' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1437' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1438' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1439' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1440' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1441' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1442' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1443' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1444' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1445' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1446' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1447' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1448' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1449' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1450' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1451' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1452' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1453' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1454' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1455' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1456' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1457' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1458' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1459' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1460' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1461' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1462' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1463' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1464' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1465' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1466' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1467' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1468' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1469' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1470' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1471' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1472' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1473' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1474' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1475' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1476' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1477' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1478' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1479' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1480' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1481' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1482' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1483' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1484' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1485' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1486' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1487' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1488' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1489' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1490' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1491' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1492' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1493' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1494' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1495' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1496' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1497' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1498' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1499' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1500' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1501' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1502' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1503' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1504' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1505' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1506' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1507' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1508' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1509' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1510' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1511' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1512' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1513' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1514' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1515' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1516' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1517' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1518' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1519' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1520' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1521' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1522' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1523' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1524' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1525' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1526' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1527' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1528' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1529' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1530' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1531' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1532' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1533' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1534' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1535' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1536' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1537' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1538' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1539' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1540' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1541' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1542' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1543' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1544' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1545' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1546' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1547' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1548' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1549' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1550' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1551' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1552' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1553' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1554' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1555' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1556' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1557' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1558' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1559' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1560' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1561' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1562' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1563' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1564' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1565' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1566' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1567' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1568' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1569' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1570' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1571' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1572' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1573' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1574' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1575' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1576' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1577' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1578' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1579' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1580' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1581' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1582' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1583' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1584' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1585' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1586' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1587' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1588' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1589' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1590' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1591' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1592' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1593' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1594' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1595' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1596' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1597' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1598' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1599' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1600' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1601' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1602' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1603' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1604' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1605' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1606' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1607' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1608' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1609' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1610' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1611' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1612' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1613' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1614' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1615' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1616' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1617' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1618' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1619' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1620' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1621' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1622' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1623' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1624' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1625' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1626' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1627' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1628' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1629' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1630' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1631' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1632' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1633' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1634' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1635' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1636' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1637' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1638' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1639' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1640' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1641' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1642' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1643' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1644' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1645' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1646' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1647' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1648' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1649' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1650' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1651' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1652' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1653' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1654' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1655' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1656' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1657' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1658' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1659' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1660' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1661' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1662' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1663' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1664' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1665' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1666' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1667' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1668' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1669' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1670' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1671' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1672' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1673' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1674' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1675' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1676' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1677' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1678' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1679' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1680' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1681' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1682' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1683' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1684' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1685' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1686' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1687' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1688' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1689' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1690' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1691' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1692' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1693' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1694' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1695' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1696' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1697' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1698' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1699' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1700' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1701' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1702' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1703' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1704' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1705' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1706' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1707' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1708' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1709' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1710' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1711' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1712' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1713' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1714' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1715' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1716' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1717' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1718' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1719' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1720' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1721' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1722' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1723' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1724' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1725' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1726' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1727' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1728' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1729' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1730' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1731' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1732' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1733' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1734' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1735' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1736' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1737' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1738' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1739' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1740' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1741' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1742' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1743' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1744' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1745' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1746' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1747' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1748' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1749' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1750' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1751' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1752' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1753' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1754' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1755' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1756' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1757' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1758' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1759' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1760' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1761' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1762' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1763' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1764' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1765' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1766' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1767' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1768' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1769' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1770' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1771' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1772' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1773' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1774' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1775' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1776' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1777' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1778' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1779' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1780' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1781' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1782' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1783' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1784' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1785' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1786' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1787' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1788' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1789' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1790' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1791' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1792' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1793' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1794' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1795' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1796' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1797' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1798' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1799' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_18' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1800' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1801' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1802' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1803' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1804' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1805' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1806' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1807' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1808' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1809' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1810' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1811' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1812' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1813' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1814' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1815' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1816' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1817' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1818' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1819' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1820' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1821' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1822' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1823' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1824' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1825' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1826' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1827' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1828' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1829' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1830' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1831' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1832' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1833' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1834' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1835' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1836' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1837' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1838' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1839' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1840' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1841' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1842' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1843' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1844' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1845' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1846' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1847' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1848' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1849' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1850' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1851' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1852' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1853' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1854' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1855' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1856' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1857' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1858' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1859' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1860' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1861' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1862' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1863' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1864' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1865' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1866' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1867' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1868' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1869' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1870' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1871' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1872' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1873' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1874' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1875' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1876' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1877' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1878' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1879' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1880' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1881' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1882' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1883' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1884' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1885' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1886' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1887' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1888' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1889' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1890' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1891' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1892' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1893' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1894' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1895' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1896' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1897' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1898' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1899' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1900' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1901' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1902' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1903' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1904' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1905' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1906' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1907' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1908' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1909' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1910' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1911' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1912' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1913' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1914' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1915' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1916' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1917' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1918' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1919' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1920' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1921' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1922' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1923' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1924' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1925' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1926' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1927' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1928' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1929' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1930' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1931' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1932' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1933' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1934' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1935' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1936' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1937' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1938' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1939' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1940' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1941' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1942' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1943' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1944' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1945' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1946' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1947' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1948' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1949' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1950' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1951' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1952' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1953' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1954' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1955' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1956' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1957' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1958' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1959' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1960' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1961' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1962' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1963' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1964' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1965' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1966' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1967' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1968' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1969' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1970' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1971' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1972' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1973' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1974' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1975' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1976' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1977' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1978' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1979' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1980' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1981' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1982' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1983' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1984' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1985' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1986' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1987' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1988' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1989' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1990' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1991' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1992' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1993' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1994' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1995' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1996' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1997' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1998' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1999' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_20' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2000' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2001' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2002' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2003' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2004' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2005' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2006' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2007' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2008' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2009' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2010' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2011' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2012' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2013' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2014' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2015' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2016' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2017' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2018' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2019' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2020' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2021' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2022' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2023' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2024' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2025' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2026' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2027' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2028' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2029' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2030' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2031' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2032' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2033' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2034' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2035' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2036' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2037' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2038' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2039' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2040' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2041' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2042' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2043' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2044' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2045' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2046' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2047' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2048' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2049' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2050' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2051' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2052' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2053' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2054' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2055' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2056' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2057' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2058' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2059' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2060' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2061' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2062' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2063' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2064' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2065' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2066' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2067' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2068' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2069' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2070' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2071' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2072' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2073' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2074' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2075' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2076' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2077' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2078' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2079' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2080' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2081' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2082' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2083' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2084' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2085' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2086' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2087' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2088' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2089' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2090' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2091' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2092' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2093' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2094' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2095' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2096' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2097' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2098' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2099' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_22' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_23' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_24' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2426' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2427' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2428' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2429' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2430' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2431' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2432' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2433' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2434' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2435' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2436' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2437' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2438' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2439' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2440' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2441' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2442' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2443' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2444' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2445' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2446' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2447' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2448' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2449' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2450' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2451' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2452' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2453' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2454' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2455' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2456' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2457' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2458' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2459' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2460' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2461' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2462' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2463' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2464' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2465' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2466' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2467' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2468' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2469' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2470' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2471' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2472' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2473' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2474' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2475' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2476' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2477' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2478' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2479' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2480' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2481' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2482' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2483' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2484' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2485' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2486' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2487' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2488' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2489' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2490' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2491' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2492' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2493' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2494' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2495' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2496' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2497' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2498' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2499' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_25' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2500' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2501' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2502' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2503' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2504' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2505' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2506' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2507' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2508' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2509' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2510' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2511' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2512' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2513' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2514' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2515' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2516' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2517' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2518' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2519' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2520' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2521' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2522' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2523' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2524' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2525' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2526' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2527' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2528' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2529' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2530' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2531' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2532' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2533' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2534' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2535' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2536' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2537' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2538' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2539' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2540' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2541' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2542' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2543' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2544' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2545' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2546' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2547' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2548' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2549' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2550' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2551' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2552' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2553' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2554' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2555' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2556' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2557' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2558' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2559' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2560' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2561' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2562' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2563' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2564' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2565' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2566' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2567' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2568' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2569' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2570' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2571' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2572' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2573' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2574' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2575' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2576' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2577' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2578' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2579' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2580' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2581' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2582' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2583' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2584' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2585' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2586' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2587' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2588' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2589' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2590' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2591' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2592' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2593' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2594' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2595' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2596' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2597' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2598' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2599' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_26' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2600' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2601' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2602' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2603' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2604' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2605' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2606' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2607' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2608' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2609' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2610' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2611' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2612' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2613' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2614' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2615' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2616' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2617' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2618' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2619' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2620' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2621' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2622' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2623' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2624' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2625' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2626' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2627' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2628' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2629' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2630' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2631' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2632' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2633' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2634' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2635' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2636' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2637' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2638' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2639' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2640' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2641' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2642' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2643' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2644' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2645' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2646' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2647' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2648' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2649' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2650' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2651' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2652' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2653' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2654' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2655' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2656' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2657' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2658' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2659' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2660' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2661' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2662' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2663' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2664' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2665' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2666' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2667' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2668' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2669' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2670' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2671' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2672' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2673' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2674' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2675' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2676' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2677' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2678' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2679' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2680' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2681' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2682' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2683' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2684' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2685' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2686' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2687' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2688' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2689' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2690' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2691' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2692' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2693' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2694' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2695' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2696' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2697' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2698' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2699' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_27' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2700' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2701' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2702' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2703' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2704' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2705' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2706' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2707' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2708' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2709' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2710' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2711' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2712' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2713' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2714' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2715' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2716' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2717' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2718' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2719' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2720' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2721' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2722' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2723' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2724' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2725' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2726' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2727' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2728' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2729' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2730' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2731' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2732' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2733' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2734' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2735' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2736' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2737' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2738' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2739' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2740' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2741' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2742' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2743' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2744' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2745' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2746' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2747' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2748' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2749' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2750' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2751' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2752' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2753' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2754' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2755' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2756' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2757' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2758' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2759' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2760' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2761' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2762' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2763' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2764' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2765' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2766' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2767' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2768' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2769' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2770' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2771' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2772' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2773' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2774' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2775' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2776' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2777' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2778' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2779' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2780' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2781' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2782' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2783' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2784' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2785' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2786' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2787' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2788' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2789' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2790' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2791' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2792' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2793' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2794' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2795' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2796' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2797' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2798' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2799' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_28' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2800' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2801' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2802' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2803' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2804' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2805' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2806' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2807' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2808' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2809' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2810' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2811' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2812' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2813' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2814' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2815' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2816' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2817' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2818' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2819' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2820' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2821' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2822' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2823' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2824' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2825' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2826' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2827' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2828' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2829' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2830' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2831' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2832' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2833' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2834' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2835' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2836' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2837' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2838' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2839' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2840' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2841' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2842' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2843' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2844' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2845' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2846' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2847' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2848' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2849' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2850' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2851' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2852' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2853' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2854' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2855' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2856' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2857' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2858' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2859' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2860' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2861' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2862' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2863' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2864' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2865' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2866' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2867' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2868' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2869' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2870' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2871' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2872' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2873' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2874' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2875' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2876' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2877' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2878' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2879' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2880' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2881' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2882' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2883' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2884' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2885' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2886' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2887' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2888' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2889' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2890' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2891' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2892' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2893' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2894' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2895' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2896' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2897' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2898' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2899' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_29' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2900' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2901' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2902' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2903' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2904' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2905' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2906' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2907' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2908' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2909' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2910' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2911' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2912' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2913' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2914' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2915' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2916' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2917' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2918' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2919' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2920' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2921' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2922' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2923' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2924' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2925' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2926' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2927' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2928' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2929' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2930' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2931' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2932' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2933' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2934' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2935' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2936' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2937' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2938' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2939' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2940' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2941' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2942' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2943' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2944' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2945' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2946' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2947' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2948' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2949' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2950' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2951' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2952' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2953' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2954' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2955' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2956' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2957' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2958' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2959' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2960' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2961' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2962' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2963' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2964' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2965' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2966' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2967' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2968' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2969' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2970' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2971' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2972' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2973' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2974' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2975' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2976' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2977' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2978' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2979' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2980' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2981' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2982' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2983' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2984' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2985' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2986' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2987' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2988' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2989' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2990' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2991' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2992' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2993' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2994' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2995' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2996' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2997' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2998' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2999' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_30' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3000' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3001' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3002' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3003' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3004' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3005' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3006' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3007' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3008' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3009' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3010' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3011' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3012' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3013' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3014' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3015' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3016' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3017' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3018' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3019' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3020' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3021' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3022' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3023' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3024' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3025' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3026' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3027' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3028' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3029' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3030' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3031' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3032' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3033' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3034' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3035' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3036' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3037' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3038' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3039' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3040' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3041' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3042' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3043' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3044' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3045' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3046' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3047' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3048' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3049' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3050' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3051' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3052' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3053' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3054' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3055' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3056' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3057' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3058' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3059' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3060' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3061' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3062' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3063' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3064' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3065' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3066' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3067' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3068' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3069' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3070' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3071' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3072' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3073' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3074' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3075' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3076' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3077' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3078' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3079' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3080' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3081' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3082' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3083' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3084' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3085' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3086' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3087' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3088' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3089' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3090' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3091' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3092' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3093' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3094' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3095' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3096' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3097' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3098' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3099' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_31' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_33' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_34' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_35' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_36' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_37' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_38' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_39' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_40' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_41' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_42' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_426' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_427' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_428' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_429' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_43' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_430' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_431' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_432' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_433' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_434' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_435' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_436' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_437' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_438' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_439' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_44' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_440' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_441' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_442' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_443' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_444' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_445' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_446' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_447' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_448' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_449' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_45' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_450' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_451' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_452' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_453' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_454' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_455' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_456' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_457' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_458' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_459' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_46' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_460' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_461' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_462' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_463' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_464' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_465' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_466' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_467' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_468' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_469' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_47' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_470' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_471' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_472' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_473' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_474' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_475' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_476' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_477' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_478' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_479' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_48' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_480' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_481' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_482' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_483' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_484' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_485' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_486' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_487' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_488' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_489' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_49' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_490' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_491' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_492' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_493' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_494' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_495' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_496' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_497' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_498' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_499' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_50' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_500' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_501' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_502' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_503' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_504' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_505' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_506' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_507' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_508' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_509' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_51' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_510' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_511' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_512' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_513' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_514' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_515' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_516' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_517' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_518' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_519' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_52' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_520' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_521' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_522' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_523' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_524' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_525' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_526' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_527' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_528' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_529' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_53' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_530' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_531' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_532' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_533' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_534' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_535' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_536' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_537' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_538' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_539' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_54' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_540' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_541' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_542' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_543' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_544' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_545' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_546' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_547' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_548' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_549' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_55' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_550' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_551' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_552' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_553' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_554' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_555' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_556' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_557' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_558' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_559' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_56' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_560' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_561' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_562' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_563' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_564' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_565' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_566' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_567' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_568' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_569' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_57' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_570' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_571' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_572' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_573' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_574' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_575' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_576' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_577' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_578' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_579' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_58' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_580' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_581' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_582' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_583' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_584' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_585' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_586' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_587' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_588' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_589' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_59' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_590' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_591' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_592' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_593' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_594' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_595' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_596' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_597' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_598' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_599' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_60' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_600' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_601' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_602' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_603' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_604' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_605' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_606' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_607' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_608' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_609' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_61' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_610' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_611' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_612' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_613' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_614' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_615' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_616' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_617' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_618' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_619' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_62' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_620' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_621' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_622' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_623' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_624' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_625' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_626' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_627' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_628' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_629' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_63' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_630' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_631' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_632' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_633' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_634' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_635' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_636' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_637' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_638' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_639' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_640' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_641' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_642' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_643' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_644' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_645' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_646' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_647' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_648' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_649' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_65' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_650' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_651' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_652' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_653' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_654' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_655' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_656' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_657' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_658' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_659' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_66' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_660' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_661' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_662' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_663' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_664' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_665' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_666' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_667' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_668' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_669' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_67' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_670' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_671' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_672' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_673' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_674' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_675' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_676' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_677' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_678' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_679' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_68' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_680' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_681' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_682' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_683' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_684' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_685' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_686' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_687' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_688' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_689' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_69' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_690' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_691' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_692' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_693' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_694' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_695' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_696' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_697' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_698' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_699' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_70' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_700' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_701' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_702' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_703' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_704' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_705' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_706' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_707' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_708' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_709' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_71' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_710' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_711' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_712' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_713' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_714' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_715' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_716' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_717' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_718' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_719' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_72' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_720' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_721' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_722' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_723' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_724' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_725' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_726' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_727' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_728' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_729' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_73' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_730' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_731' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_732' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_733' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_734' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_735' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_736' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_737' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_738' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_739' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_74' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_740' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_741' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_742' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_743' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_744' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_745' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_746' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_747' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_748' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_749' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_75' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_750' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_751' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_752' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_753' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_754' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_755' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_756' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_757' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_758' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_759' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_76' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_760' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_761' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_762' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_763' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_764' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_765' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_766' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_767' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_768' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_769' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_77' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_770' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_771' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_772' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_773' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_774' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_775' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_776' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_777' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_778' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_779' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_78' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_780' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_781' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_782' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_783' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_784' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_785' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_786' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_787' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_788' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_789' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_79' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_790' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_791' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_792' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_793' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_794' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_795' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_796' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_797' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_798' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_799' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_80' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_800' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_801' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_802' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_803' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_804' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_805' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_806' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_807' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_808' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_809' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_81' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_810' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_811' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_812' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_813' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_814' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_815' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_816' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_817' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_818' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_819' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_82' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_820' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_821' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_822' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_823' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_824' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_825' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_826' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_827' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_828' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_829' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_83' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_830' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_831' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_832' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_833' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_834' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_835' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_836' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_837' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_838' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_839' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_84' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_840' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_841' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_842' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_843' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_844' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_845' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_846' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_847' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_848' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_849' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_85' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_850' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_851' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_852' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_853' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_854' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_855' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_856' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_857' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_858' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_859' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_86' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_860' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_861' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_862' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_863' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_864' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_865' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_866' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_867' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_868' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_869' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_87' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_870' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_871' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_872' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_873' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_874' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_875' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_876' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_877' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_878' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_879' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_88' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_880' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_881' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_882' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_883' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_884' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_885' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_886' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_887' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_888' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_889' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_89' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_890' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_891' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_892' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_893' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_894' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_895' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_896' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_897' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_898' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_899' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_90' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_900' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_901' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_902' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_903' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_904' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_905' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_906' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_907' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_908' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_909' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_91' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_910' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_911' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_912' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_913' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_914' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_915' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_916' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_917' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_918' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_919' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_92' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_920' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_921' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_922' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_923' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_924' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_925' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_926' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_927' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_928' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_929' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_93' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_930' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_931' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_932' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_933' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_934' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_935' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_936' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_937' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_938' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_939' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_94' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_940' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_941' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_942' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_943' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_944' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_945' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_946' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_947' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_948' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_949' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_95' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_950' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_951' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_952' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_953' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_954' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_955' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_956' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_957' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_958' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_959' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_96' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_960' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_961' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_962' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_963' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_964' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_965' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_966' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_967' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_968' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_969' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_97' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_970' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_971' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_972' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_973' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_974' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_975' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_976' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_977' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_978' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_979' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_98' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_980' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_981' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_982' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_983' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_984' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_985' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_986' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_987' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_988' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_989' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_99' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_990' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_991' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_992' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_993' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_994' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_995' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_996' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_997' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_998' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_999' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.adtFields.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_12.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_13.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_12.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat_outer' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.boxedOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.boxedOne.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.boxedOne' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bp_entries._simp_1_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.simplePat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bp_entries.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.entriesOf._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bp_entries._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.bp_entries' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.directPat_cons._simp_1_4' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.identBoxed_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identLocal_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf_spec' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_cons' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_len.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_len._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_len' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_loads._simp_1_27' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_loads._simp_1_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_loads.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none._simp_1_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none._simp_1_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rlookup_append' depends on axioms: [propext]\n'LexLeanPreservation.Rust.same_boxed_boxed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_boxed_none' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_local_none._simp_1_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_local_none._simp_1_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_local_none.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.same_local_local' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_local_none._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_local_none' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_boxed_local' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rlookup_local_boxed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rlookup_local_single' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_loads._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.directPat_loads' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_boxed_some._simp_1_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_some._simp_1_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_some.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_some._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.entries_boxed_some' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.envRel_locals' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fields_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindPatterns_single' depends on axioms: [propext]\n'LexLeanPreservation.Rust.outer_bind' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.paramCtx_length.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_length._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_length' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.bindOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOne.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.covered.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.covered_mem._simp_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.wt_uninh._simp_10' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.covered_mem' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.ctorOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.destruct_canon' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq_refl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.destruct_excl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.directPat.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_lookup.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_none_of._simp_1_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_none_of.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sameIdent_iff' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_none_of._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_none_of' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.identsDistinct.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.entries_lookup._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_lookup' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.eval_field.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.eval_field._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_field.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_field' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats_none._simp_1_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats_none.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats_none._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats_none' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats_some._simp_1_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats_some.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats_some._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats_some' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_partRead' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.tyBeq_unit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.field_out' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.findArm_some.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.findArm_some._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.findArm_some' depends on axioms: [propext]\n'LexLeanPreservation.Rust.findDispatch_some.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.findDispatch_some._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.findDispatch_some' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_ext' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identBoxed.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identBoxed.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.isWild._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.okBlock.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.otherArms.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.otherArms_mem._simp_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.otherArms_mem' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.outer_miss' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.outer_view' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_ext.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_ext._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_ext' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_fresh.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_fresh._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_fresh' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocal.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_matchOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_matchOn_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_uncons.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_uncons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_scrut' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rca_hit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rca_miss' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_det' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_rebuild.match_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_eq_of_same' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg_rc' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_rebuild._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_rebuild' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.readOf_rc' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.realizesM_value' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArg_simple' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_def' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs_simple.match_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs_simple._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs_simple' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_14.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuild_rca._simp_1_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuild_rca.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_value._simp_1_21' depends on axioms: [propext]\n'LexLeanPreservation.Rust.single_rebuild' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_rca._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_rca' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuildsArm.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_nil' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_fieldGen._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_fieldGen.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_fieldGen.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.wtl_get.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_get._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_get' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_fieldGen' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_fieldHeld' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_fieldRead' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_mCons._simp_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_mCons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_mNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchArms._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.tyBeq_refl.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq_refl._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.tysBeq_refl.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tysBeq_refl._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_refl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.tysBeq_refl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.uninh_of_inert.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.uninh_of_inert._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh_of_inert' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_uninh.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_uninh._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtl_uninh.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_uninh._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_uninh' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.taken_arm' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchArms' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchPair._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchPair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchRebuilt._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchRebuilt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchRebuilt.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchRebuilt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.simplePat.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.validU.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_uninh' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.findArm.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findArm.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findArm.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_5' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_6' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_7' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_8' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.fl_of' does not depend on any axioms\n'LexLeanPreservation.Rust.fnFallible.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of._simp_1_14' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.funSem_of.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_12' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.isTemp.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isTemp.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.item_ne' depends on axioms: [propext]\n'LexLeanPreservation.Rust.kind_ne' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sound._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sound._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.simulate' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Representable._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Representable.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Representable._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.RepresentableL._f' does not depend on any axioms\n'LexLeanPreservation.Rust.Representable' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Representable._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.Representable._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.compose' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rel_ne_stuck' depends on axioms: [propext]\n'LexLeanPreservation.Rust.repL_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.repL_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.runItem_abort_infallible' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtAll_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wtAll_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_map._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_map' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_adt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_bool' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_bytes' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encExcept.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_encExcept' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_list' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encList' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encOption.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_encOption' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encOrdering' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encPair' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encUnit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_errorV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i32' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i64' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_int' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_listEnc' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_nat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_noneV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_okV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_optEnc.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_someV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_optEnc' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_ordering' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_pairV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_string' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u32' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u64' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_unitValue' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_nil' depends on axioms: [propext]\n'LexLeanPreservation.encExcept.eq_1' does not depend on any axioms\n'LexLeanPreservation.encExcept.eq_2' does not depend on any axioms\n'LexLeanPreservation.encOption.eq_1' does not depend on any axioms\n'LexLeanPreservation.encOption.eq_2' does not depend on any axioms\n'LexLeanPreservation.encPair.eq_1' does not depend on any axioms\n'LexLeanPreservation.encUnit.eq_1' does not depend on any axioms\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.Compose.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.Compose.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.Compose.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.Compose.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.Compose.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.Compose.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.Compose.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.Compose.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.Compose.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.Compose.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.Compose.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.Compose.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.Compose.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.Compose.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.Compose.RustStd.__wt_0' depends on axioms: [propext]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.Compose.RustStd.__wtItems_0' depends on axioms: [propext]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.Compose.RustStd.__wtAux_1' depends on axioms: [propext]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.Compose.RustStd.__wtItems_3' depends on axioms: [propext]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.Compose.RustStd.__wtAux_4' depends on axioms: [propext]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.Compose.RustStd.__wtAux_2' depends on axioms: [propext]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.Compose.RustStd.__wt_1' depends on axioms: [propext]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.Compose.RustCore.__wt_0' depends on axioms: [propext]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.Compose.RustStd.__wt_0' depends on axioms: [propext]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.Compose.RustStd.__wt_0' depends on axioms: [propext]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustCore.__wt_0' depends on axioms: [propext]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustCore.__wt_1' depends on axioms: [propext]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustCore.__wt_2' depends on axioms: [propext]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustStd.__wt_0' depends on axioms: [propext]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustStd.__wt_1' depends on axioms: [propext]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustStd.__wt_2' depends on axioms: [propext]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.Compose.RustStd.__wt_0' depends on axioms: [propext]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.Compose.RustStd.__wtItems_0' depends on axioms: [propext]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.Compose.RustStd.__wt_0' depends on axioms: [propext]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.Compose.RustStd.__wt_1' depends on axioms: [propext]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.Compose.RustStd.__wtItems_0' depends on axioms: [propext]\n'LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.Compose.RustStd.__wt_0' depends on axioms: [propext]\n-- statement vocabulary\ninductive LexLeanPreservation.Obs : Type\nnumber of parameters: 0\nconstructors:\nLexLeanPreservation.Obs.value : LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs\nLexLeanPreservation.Obs.overflow : LexLeanPreservation.Obs\nLexLeanPreservation.Obs.stuck : LexLeanPreservation.Obs\ndef LexLeanPreservation.Rel : Bool → LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs :=\nfun fits v => bif fits then LexLeanPreservation.Obs.value v else LexLeanPreservation.Obs.overflow\ndef LexLeanPreservation.Conv : LexLeanTarget.TargetSyntax.Program →\n List (Nat × LexLeanTarget.TargetSyntax.Value) → LexLeanTarget.TargetSyntax.Expr → LexLeanPreservation.Obs → Prop :=\nfun p env e o => ∃ n, LexLeanPreservation.obs (LexLeanTarget.TargetSemantics.eval n p env e) = some o\ndef LexLeanPreservation.FunRel : LexLeanTarget.TargetSyntax.Program →\n Nat → List LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs → Prop :=\nfun p f args o =>\n ∃ fn,\n LexLeanRuntime.index p.functions f = some fn ∧\n ∃ env,\n LexLeanTarget.TargetSemantics.bindAll fn.parameters args [] = some env ∧\n LexLeanPreservation.Conv p env fn.body o\ndef LexLeanPreservation.RunConv : LexLeanTarget.TargetSyntax.Program →\n Nat → List LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs → Prop :=\nfun p entry args o => ∃ n, LexLeanPreservation.obs (LexLeanTarget.TargetSemantics.run n p entry args) = some o\ndef LexLeanPreservation.Rust.WT : LexLeanTarget.TargetSyntax.Program →\n LexLeanPreservation.Rust.RCrate →\n LexLeanPreservation.Rust.Flags → LexLeanTarget.TargetSyntax.Value → LexLeanTarget.TargetSyntax.Ty → Prop :=\nfun p c A x x_1 =>\n x.brecOn (LexLeanPreservation.Rust.WT._f p c A)\n (fun t f => ⟨LexLeanPreservation.Rust.WTL._f p c A t f, LexLeanPreservation.Rust.WTAll._f p c A t f⟩) x_1\ndef LexLeanPreservation.Rust.WTL : LexLeanTarget.TargetSyntax.Program →\n LexLeanPreservation.Rust.RCrate →\n LexLeanPreservation.Rust.Flags →\n List LexLeanTarget.TargetSyntax.Value → List LexLeanTarget.TargetSyntax.Ty → Prop :=\nfun p c A x x_1 =>\n (LexLeanTarget.TargetSyntax.Value.brecOn_1 x (LexLeanPreservation.Rust.WT._f p c A) fun t f =>\n ⟨LexLeanPreservation.Rust.WTL._f p c A t f, LexLeanPreservation.Rust.WTAll._f p c A t f⟩).1\n x_1\ndef LexLeanPreservation.Rust.fnIdent : Nat → LexLeanPreservation.Rust.RIdent :=\nfun f => LexLeanTarget.RustSyntax.Ident.generated LexLeanTarget.RustSyntax.IdentKind.function f\ndef LexLeanPreservation.Rust.fnFallible : LexLeanPreservation.Rust.RCrate → Nat → Option Bool :=\nfun c f =>\n Option.map (fun fn => LexLeanTarget.RustSemantics.fallibleType fn.snd.fst)\n (LexLeanTarget.RustSemantics.findFunction c.items (LexLeanPreservation.Rust.fnIdent f))\ndef LexLeanPreservation.Rust.RCI : LexLeanPreservation.Rust.RCrate →\n LexLeanPreservation.Rust.RIdent → List LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Rust.ROut → Prop :=\nfun c f args o =>\n o ≠ LexLeanTarget.RustSemantics.ROutcome.exhausted ∧ ∃ n, LexLeanTarget.RustSemantics.invoke n c f args = o\ndef LexLeanPreservation.Rust.Realizes : Bool → LexLeanPreservation.Obs → LexLeanPreservation.Rust.ROut → Prop :=\nfun fl x x_1 =>\n match x, x_1 with\n | LexLeanPreservation.Obs.value v, LexLeanTarget.RustSemantics.ROutcome.value w => w = v\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.raise => fl = true\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.abort => True\n | x, x_2 => False\ndef LexLeanPreservation.Rust.RealizesFn : Bool → LexLeanPreservation.Obs → LexLeanPreservation.Rust.ROut → Prop :=\nfun fallible x x_1 =>\n match x, x_1 with\n | LexLeanPreservation.Obs.value v, LexLeanTarget.RustSemantics.ROutcome.value w => w = bif fallible then v.ok else v\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.value w =>\n fallible = true ∧ w = LexLeanTarget.TargetSyntax.Value.unit.error\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.abort => True\n | x, x_2 => False\ndef LexLeanPreservation.Rust.FunSem : LexLeanTarget.TargetSyntax.Program →\n LexLeanPreservation.Rust.RCrate → LexLeanPreservation.Rust.Flags → Nat → Nat → Prop :=\nfun p c A n f =>\n ∀ (fn : LexLeanTarget.TargetSyntax.Function) (args : List LexLeanTarget.TargetSyntax.Value)\n (env : List (Nat × LexLeanTarget.TargetSyntax.Value)) (F : Bool),\n LexLeanRuntime.index p.functions f = some fn →\n LexLeanPreservation.Rust.WTL p c A args fn.types →\n LexLeanTarget.TargetSemantics.bindAll fn.parameters args [] = some env →\n LexLeanPreservation.Rust.fnFallible c f = some F →\n ∀ (o : LexLeanPreservation.Obs),\n LexLeanPreservation.obs (LexLeanTarget.TargetSemantics.eval n p env fn.body) = some o →\n o ≠ LexLeanPreservation.Obs.stuck →\n (∀ (v : LexLeanTarget.TargetSyntax.Value),\n o = LexLeanPreservation.Obs.value v → LexLeanPreservation.Rust.WT p c A v fn.result) ∧\n ∃ ro,\n LexLeanPreservation.Rust.RealizesFn F o ro ∧\n LexLeanPreservation.Rust.RCI c (LexLeanPreservation.Rust.fnIdent f) args ro\ndef LexLeanPreservation.someObs : LexLeanPreservation.Obs → LexLeanPreservation.Obs :=\nfun x =>\n match x with\n | LexLeanPreservation.Obs.value v => LexLeanPreservation.Obs.value v.some\n | LexLeanPreservation.Obs.overflow => LexLeanPreservation.Obs.overflow\n | LexLeanPreservation.Obs.stuck => LexLeanPreservation.Obs.stuck\ndef LexLeanPreservation.Rust.Representable : LexLeanTarget.TargetSyntax.Value → Prop :=\nfun x => x.brecOn LexLeanPreservation.Rust.Representable._f LexLeanPreservation.Rust.RepresentableL._f\ndef LexLeanPreservation.Rust.RepresentableL : List LexLeanTarget.TargetSyntax.Value → Prop :=\nfun x =>\n LexLeanTarget.TargetSyntax.Value.brecOn_1 x LexLeanPreservation.Rust.Representable._f\n LexLeanPreservation.Rust.RepresentableL._f\nLexLeanPreservation.Rust.runItem_abort_infallible : ∀ (profile : LexLeanTarget.RustSyntax.Profile)\n (item : LexLeanTarget.RustSyntax.Item) (values : List LexLeanTarget.TargetSyntax.Value),\n LexLeanTarget.RustSemantics.runItem profile item values = LexLeanTarget.RustSemantics.ROutcome.abort →\n LexLeanTarget.RustSemantics.itemFallible item = false\n","stdout_sha256":"ffcdc7bd33da397e2017d44fc252f6c770b380ed88c3fba4705ef7727071637a","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.Compose.RustStd.json new file mode 100644 index 000000000..ed29b8235 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R0/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R0/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.RustStd.json new file mode 100644 index 000000000..0643ca62c --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R0/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R0/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.json new file mode 100644 index 000000000..1520a05bf --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R0.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R0.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R0","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.Compose.RustStd.json new file mode 100644 index 000000000..390d5a508 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R1/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R1/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.RustStd.json new file mode 100644 index 000000000..f9b47f2e5 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R1/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R1/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.json new file mode 100644 index 000000000..56b9be340 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R1.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R1.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R1","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.Compose.RustCore.json new file mode 100644 index 000000000..f79028813 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.Compose.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R10/Compose/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R10/Compose/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.Compose.RustStd.json new file mode 100644 index 000000000..34cd1bbd5 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R10/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R10/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.RustCore.json new file mode 100644 index 000000000..cbcb47373 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R10/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R10/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.RustStd.json new file mode 100644 index 000000000..26dc9f9c7 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R10/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R10/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.json new file mode 100644 index 000000000..7b7c627da --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R10.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R10.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R10","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.Compose.RustCore.json new file mode 100644 index 000000000..8190ee33c --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.Compose.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R11/Compose/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R11/Compose/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.Compose.RustStd.json new file mode 100644 index 000000000..4e2208253 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R11/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R11/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.RustCore.json new file mode 100644 index 000000000..8725ac9b9 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R11/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R11/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.RustStd.json new file mode 100644 index 000000000..0704f44ba --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R11/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R11/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.json new file mode 100644 index 000000000..cc5f98e6b --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R11.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R11.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R11","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.Compose.RustCore.json new file mode 100644 index 000000000..f7e3be346 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.Compose.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R12/Compose/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R12/Compose/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.Compose.RustStd.json new file mode 100644 index 000000000..e87617127 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R12/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R12/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.RustCore.json new file mode 100644 index 000000000..b049b6dcf --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R12/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R12/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.RustStd.json new file mode 100644 index 000000000..32f08dcf5 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R12/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R12/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.json new file mode 100644 index 000000000..d6d56b0ff --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R12.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R12.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R12","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.Compose.RustStd.json new file mode 100644 index 000000000..0262783ae --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R13/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R13/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.RustStd.json new file mode 100644 index 000000000..1748660b8 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R13/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R13/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.json new file mode 100644 index 000000000..d9896e920 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R13.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R13.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R13","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustCore.json new file mode 100644 index 000000000..619d8d35c --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R14/Compose/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R14/Compose/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustStd.json new file mode 100644 index 000000000..d42a9da17 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R14/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R14/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.RustCore.json new file mode 100644 index 000000000..57ffb8c39 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R14/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R14/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.RustStd.json new file mode 100644 index 000000000..6ad2d1256 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R14/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R14/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.json new file mode 100644 index 000000000..e5935e9ed --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R14.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R14.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R14","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.Compose.RustCore.json new file mode 100644 index 000000000..e91fedd79 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.Compose.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R15/Compose/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R15/Compose/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.Compose.RustStd.json new file mode 100644 index 000000000..a0c08394b --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R15/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R15/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.RustCore.json new file mode 100644 index 000000000..9a7336de2 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R15/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R15/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.RustStd.json new file mode 100644 index 000000000..c5939bf22 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R15/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R15/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.json new file mode 100644 index 000000000..1df3d41ed --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R15.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R15.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R15","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.Compose.RustCore.json new file mode 100644 index 000000000..aabd98261 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.Compose.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R16/Compose/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R16/Compose/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.Compose.RustStd.json new file mode 100644 index 000000000..e6a7565c4 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R16/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R16/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.RustCore.json new file mode 100644 index 000000000..edd0c15bb --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R16/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R16/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.RustStd.json new file mode 100644 index 000000000..c0a71956f --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R16/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R16/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.json new file mode 100644 index 000000000..25bd3f49d --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R16.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R16.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R16","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.Compose.RustCore.json new file mode 100644 index 000000000..c1f4e3120 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.Compose.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R17/Compose/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R17/Compose/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.Compose.RustStd.json new file mode 100644 index 000000000..0e641da4f --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R17/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R17/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.RustCore.json new file mode 100644 index 000000000..c6a691333 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R17/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R17/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.RustStd.json new file mode 100644 index 000000000..8062a1ca9 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R17/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R17/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.json new file mode 100644 index 000000000..37bec9890 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R17.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R17.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R17","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.Compose.RustCore.json new file mode 100644 index 000000000..2ea3e4a1b --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.Compose.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R18/Compose/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R18/Compose/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.Compose.RustStd.json new file mode 100644 index 000000000..b5a4fb56d --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R18/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R18/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.RustCore.json new file mode 100644 index 000000000..33e59b79b --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R18/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R18/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.RustStd.json new file mode 100644 index 000000000..806608afa --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R18/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R18/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.json new file mode 100644 index 000000000..7cbf948e4 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R18.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R18.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R18","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.Compose.RustStd.json new file mode 100644 index 000000000..19e7ab9c5 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R19/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R19/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.RustStd.json new file mode 100644 index 000000000..3f7bb9976 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R19/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R19/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.json new file mode 100644 index 000000000..02a60d87f --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R19.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R19.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R19","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.Compose.RustStd.json new file mode 100644 index 000000000..90ce35f05 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R2/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R2/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.RustStd.json new file mode 100644 index 000000000..54d421582 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R2/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R2/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.json new file mode 100644 index 000000000..cc2b4c96c --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R2.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R2.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R2","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.Compose.RustCore.json new file mode 100644 index 000000000..02f9c2f47 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.Compose.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R20/Compose/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R20/Compose/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.Compose.RustStd.json new file mode 100644 index 000000000..42760faae --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R20/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R20/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.RustCore.json new file mode 100644 index 000000000..e50412e3c --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R20/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R20/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.RustStd.json new file mode 100644 index 000000000..5b3263106 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R20/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R20/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.json new file mode 100644 index 000000000..7f8047ffd --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R20.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R20.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R20","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.Compose.RustCore.json new file mode 100644 index 000000000..8abc50e37 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.Compose.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R21/Compose/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R21/Compose/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.Compose.RustStd.json new file mode 100644 index 000000000..eda3531e1 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R21/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R21/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.RustCore.json new file mode 100644 index 000000000..75ef290d8 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R21/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R21/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.RustStd.json new file mode 100644 index 000000000..4885eac28 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R21/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R21/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.json new file mode 100644 index 000000000..0ee47368f --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R21.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R21.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R21","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.Compose.RustCore.json new file mode 100644 index 000000000..8a28261dd --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.Compose.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R22/Compose/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R22/Compose/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.Compose.RustStd.json new file mode 100644 index 000000000..3a45ae6b6 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R22/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R22/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.RustCore.json new file mode 100644 index 000000000..9f6f25397 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R22/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R22/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.RustStd.json new file mode 100644 index 000000000..0408a1e67 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R22/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R22/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.json new file mode 100644 index 000000000..37b45fd3d --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R22.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R22.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R22","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.Compose.RustCore.json new file mode 100644 index 000000000..e0a616c15 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.Compose.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R23/Compose/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R23/Compose/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.Compose.RustStd.json new file mode 100644 index 000000000..27f20d093 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R23/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R23/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.RustCore.json new file mode 100644 index 000000000..3d75af122 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R23/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R23/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.RustStd.json new file mode 100644 index 000000000..16b81527d --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R23/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R23/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.json new file mode 100644 index 000000000..09a4ebd4d --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R23.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R23.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R23","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.Compose.RustCore.json new file mode 100644 index 000000000..f25b039c6 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.Compose.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R24/Compose/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R24/Compose/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.Compose.RustStd.json new file mode 100644 index 000000000..617508fa4 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R24/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R24/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.RustCore.json new file mode 100644 index 000000000..f7eccf6bb --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R24/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R24/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.RustStd.json new file mode 100644 index 000000000..683c8b00d --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R24/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R24/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.json new file mode 100644 index 000000000..0477479bb --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R24.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R24.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R24","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.Compose.RustCore.json new file mode 100644 index 000000000..1b96bba52 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.Compose.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R25/Compose/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R25/Compose/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.Compose.RustStd.json new file mode 100644 index 000000000..1bebde049 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R25/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R25/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.RustCore.json new file mode 100644 index 000000000..3d08a9eb7 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R25/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R25/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.RustStd.json new file mode 100644 index 000000000..15cbe99fa --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R25/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R25/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.json new file mode 100644 index 000000000..604067f29 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R25.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R25.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R25","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.Compose.RustStd.json new file mode 100644 index 000000000..d74b4c610 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R26/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R26/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.RustStd.json new file mode 100644 index 000000000..aea619dc7 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R26/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R26/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.json new file mode 100644 index 000000000..d5fdbf59f --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R26.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R26.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R26","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.Compose.RustStd.json new file mode 100644 index 000000000..7fbcf5246 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R27/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R27/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.RustStd.json new file mode 100644 index 000000000..c1832bf4b --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R27/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R27/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.json new file mode 100644 index 000000000..0e8ec558f --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R27.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R27.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R27","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.Compose.RustStd.json new file mode 100644 index 000000000..1a29ef8a1 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R28/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R28/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.RustStd.json new file mode 100644 index 000000000..f0b9a98ea --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R28/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R28/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.json new file mode 100644 index 000000000..68703cb16 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R28.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R28.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R28","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.Compose.RustStd.json new file mode 100644 index 000000000..986fc5706 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R29/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R29/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.RustStd.json new file mode 100644 index 000000000..ed2d1fdab --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R29/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R29/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.json new file mode 100644 index 000000000..dc7127ffa --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R29.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R29.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R29","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.Compose.RustStd.json new file mode 100644 index 000000000..eb48443d1 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R3/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R3/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.RustStd.json new file mode 100644 index 000000000..5f275cf4b --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R3/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R3/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.json new file mode 100644 index 000000000..f931d8aed --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R3.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R3.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R3","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.Compose.RustStd.json new file mode 100644 index 000000000..4b934c59b --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R30/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R30/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.RustStd.json new file mode 100644 index 000000000..dda819a2e --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R30/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R30/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.json new file mode 100644 index 000000000..5648471c1 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R30.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R30.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R30","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.Compose.RustStd.json new file mode 100644 index 000000000..2ae30577d --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R31/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R31/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.RustStd.json new file mode 100644 index 000000000..733983d97 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R31/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R31/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.json new file mode 100644 index 000000000..2649fe911 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R31.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R31.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R31","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.Compose.RustCore.json new file mode 100644 index 000000000..4426f037f --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.Compose.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R32/Compose/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R32/Compose/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.Compose.RustStd.json new file mode 100644 index 000000000..94ffc4063 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R32/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R32/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.RustCore.json new file mode 100644 index 000000000..a3cf25f6c --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R32/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R32/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.RustStd.json new file mode 100644 index 000000000..04a2b865b --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R32/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R32/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.json new file mode 100644 index 000000000..7cf71a7db --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R32.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R32.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R32","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.Compose.RustStd.json new file mode 100644 index 000000000..7b5d39234 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R33/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R33/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.RustStd.json new file mode 100644 index 000000000..bc9f69683 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R33/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R33/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.json new file mode 100644 index 000000000..1c1efd4dc --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R33.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R33.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R33","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.Compose.RustStd.json new file mode 100644 index 000000000..b2d2b5ecd --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R4/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R4/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.RustStd.json new file mode 100644 index 000000000..757771164 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R4/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R4/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.json new file mode 100644 index 000000000..0faaa9614 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R4.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R4.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R4","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.Compose.RustStd.json new file mode 100644 index 000000000..8ac497911 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R5/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R5/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.RustStd.json new file mode 100644 index 000000000..444c9cfdf --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R5/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R5/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.json new file mode 100644 index 000000000..f7a71adef --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R5.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R5.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R5","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.Compose.RustStd.json new file mode 100644 index 000000000..1c12867e6 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R6/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R6/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.RustStd.json new file mode 100644 index 000000000..d00f73e97 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R6/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R6/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.json new file mode 100644 index 000000000..5542a2a41 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R6.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R6.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R6","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.Compose.RustStd.json new file mode 100644 index 000000000..25c2584b2 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R7/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R7/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.RustStd.json new file mode 100644 index 000000000..f5511b55c --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R7/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R7/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.json new file mode 100644 index 000000000..ecc0b884c --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R7.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R7.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R7","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.Compose.RustStd.json new file mode 100644 index 000000000..460d1b557 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R8/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R8/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.RustStd.json new file mode 100644 index 000000000..dcfdc5506 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R8/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R8/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.json new file mode 100644 index 000000000..8d5b15083 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R8.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R8.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R8","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.Compose.RustStd.json new file mode 100644 index 000000000..f1bfb54e0 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R9/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R9/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.RustStd.json new file mode 100644 index 000000000..cd9aac278 --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R9/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R9/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.json new file mode 100644 index 000000000..43c26165a --- /dev/null +++ b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R9.olean","$STAGING/preserve-src/LexLeanPreserve/Ce05bf7cb47aac48ea11c4a7ac75c7962/R9.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Ce05bf7cb47aac48ea11c4a7ac75c7962.R9","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.Compose.RustStd.json deleted file mode 100644 index d01daf7e7..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R0/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R0/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.RustStd.json deleted file mode 100644 index 9df43a686..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R0/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R0/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.json deleted file mode 100644 index 3bcdf2ff3..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R0.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R0.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R0","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.Compose.RustStd.json deleted file mode 100644 index 7fdf2ae87..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R1/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R1/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.RustStd.json deleted file mode 100644 index 689162293..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R1/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R1/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.json deleted file mode 100644 index 033859753..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R1.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R1.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R1","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.Compose.RustCore.json deleted file mode 100644 index 973565f64..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.Compose.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R10/Compose/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R10/Compose/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.Compose.RustStd.json deleted file mode 100644 index e91c34a12..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R10/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R10/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.RustCore.json deleted file mode 100644 index 21ca9ba58..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R10/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R10/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.RustStd.json deleted file mode 100644 index 1703305bd..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R10/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R10/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.json deleted file mode 100644 index d4ed6b6b3..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R10.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R10.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R10","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.Compose.RustCore.json deleted file mode 100644 index 68465fea4..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.Compose.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R11/Compose/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R11/Compose/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.Compose.RustStd.json deleted file mode 100644 index abfff4ab6..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R11/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R11/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.RustCore.json deleted file mode 100644 index 6845a17be..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R11/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R11/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.RustStd.json deleted file mode 100644 index 8853d173e..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R11/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R11/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.json deleted file mode 100644 index 14723de14..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R11.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R11.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R11","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.Compose.RustCore.json deleted file mode 100644 index 0a3f75f21..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.Compose.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R12/Compose/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R12/Compose/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.Compose.RustStd.json deleted file mode 100644 index b6869656b..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R12/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R12/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.RustCore.json deleted file mode 100644 index 0fd0f275c..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R12/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R12/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.RustStd.json deleted file mode 100644 index b1688030e..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R12/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R12/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.json deleted file mode 100644 index 4f250e7f4..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R12.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R12.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R12","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.Compose.RustStd.json deleted file mode 100644 index b13ff3308..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R13/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R13/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.RustStd.json deleted file mode 100644 index 52eafa10c..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R13/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R13/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.json deleted file mode 100644 index ad69f4a21..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R13.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R13.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R13","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustCore.json deleted file mode 100644 index 53af78465..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R14/Compose/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R14/Compose/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustStd.json deleted file mode 100644 index 0f6441db3..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R14/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R14/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.RustCore.json deleted file mode 100644 index 426c0b8e7..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R14/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R14/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.RustStd.json deleted file mode 100644 index e24eab849..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R14/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R14/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.json deleted file mode 100644 index 47af5e344..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R14.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R14.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R14","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.Compose.RustCore.json deleted file mode 100644 index 08937ca84..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.Compose.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R15/Compose/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R15/Compose/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.Compose.RustStd.json deleted file mode 100644 index 77dd0bde3..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R15/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R15/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.RustCore.json deleted file mode 100644 index 8c4446ef1..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R15/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R15/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.RustStd.json deleted file mode 100644 index 9ad3141f3..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R15/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R15/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.json deleted file mode 100644 index 3de928b70..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R15.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R15.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R15","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.Compose.RustCore.json deleted file mode 100644 index 53ee3ca57..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.Compose.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R16/Compose/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R16/Compose/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.Compose.RustStd.json deleted file mode 100644 index fa65ebe0b..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R16/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R16/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.RustCore.json deleted file mode 100644 index 8f317ac06..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R16/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R16/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.RustStd.json deleted file mode 100644 index b36af649f..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R16/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R16/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.json deleted file mode 100644 index 0cb3d67fe..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R16.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R16.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R16","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.Compose.RustCore.json deleted file mode 100644 index b80f4118b..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.Compose.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R17/Compose/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R17/Compose/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.Compose.RustStd.json deleted file mode 100644 index f90a0607e..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R17/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R17/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.RustCore.json deleted file mode 100644 index 7e9d2cbf2..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R17/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R17/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.RustStd.json deleted file mode 100644 index e254afcbc..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R17/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R17/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.json deleted file mode 100644 index ba4b26261..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R17.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R17.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R17","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.Compose.RustCore.json deleted file mode 100644 index 1388154d5..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.Compose.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R18/Compose/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R18/Compose/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.Compose.RustStd.json deleted file mode 100644 index ac3af5190..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R18/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R18/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.RustCore.json deleted file mode 100644 index 07aebd180..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R18/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R18/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.RustStd.json deleted file mode 100644 index e9d6cd6ef..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R18/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R18/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.json deleted file mode 100644 index 5e5d95469..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R18.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R18.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R18","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.Compose.RustStd.json deleted file mode 100644 index cc44a7db1..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R19/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R19/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.RustStd.json deleted file mode 100644 index 0e93ae3d7..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R19/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R19/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.json deleted file mode 100644 index a7cf0833b..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R19.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R19.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R19","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.Compose.RustStd.json deleted file mode 100644 index d8dd77b2e..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R2/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R2/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.RustStd.json deleted file mode 100644 index a43566a86..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R2/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R2/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.json deleted file mode 100644 index 8de8f4b11..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R2.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R2.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R2","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.Compose.RustCore.json deleted file mode 100644 index 2ac886644..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.Compose.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R20/Compose/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R20/Compose/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.Compose.RustStd.json deleted file mode 100644 index 6abb8f3aa..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R20/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R20/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.RustCore.json deleted file mode 100644 index 636c77e20..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R20/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R20/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.RustStd.json deleted file mode 100644 index 4963a1adf..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R20/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R20/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.json deleted file mode 100644 index 10b097e46..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R20.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R20.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R20","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.Compose.RustCore.json deleted file mode 100644 index 7d4ee375c..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.Compose.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R21/Compose/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R21/Compose/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.Compose.RustStd.json deleted file mode 100644 index 81f56df29..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R21/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R21/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.RustCore.json deleted file mode 100644 index c35293eed..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R21/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R21/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.RustStd.json deleted file mode 100644 index f2fefd33c..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R21/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R21/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.json deleted file mode 100644 index e4263972c..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R21.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R21.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R21","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.Compose.RustCore.json deleted file mode 100644 index 1170b7bea..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.Compose.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R22/Compose/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R22/Compose/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.Compose.RustStd.json deleted file mode 100644 index 2241daa9a..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R22/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R22/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.RustCore.json deleted file mode 100644 index fcc6d0c8a..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R22/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R22/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.RustStd.json deleted file mode 100644 index 87fa66634..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R22/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R22/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.json deleted file mode 100644 index 26c761c04..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R22.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R22.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R22","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.Compose.RustCore.json deleted file mode 100644 index c6f2600a4..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.Compose.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R23/Compose/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R23/Compose/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.Compose.RustStd.json deleted file mode 100644 index e786d96df..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R23/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R23/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.RustCore.json deleted file mode 100644 index e3945b4cd..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R23/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R23/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.RustStd.json deleted file mode 100644 index 2fbd10375..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R23/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R23/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.json deleted file mode 100644 index f4ca26298..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R23.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R23.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R23","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.Compose.RustCore.json deleted file mode 100644 index deb8392e1..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.Compose.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R24/Compose/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R24/Compose/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.Compose.RustStd.json deleted file mode 100644 index 2efaf6065..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R24/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R24/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.RustCore.json deleted file mode 100644 index 27bed6814..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R24/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R24/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.RustStd.json deleted file mode 100644 index 1f1b7f4e2..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R24/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R24/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.json deleted file mode 100644 index 8fbdf558d..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R24.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R24.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R24","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.Compose.RustCore.json deleted file mode 100644 index f4fd144fe..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.Compose.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R25/Compose/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R25/Compose/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.Compose.RustStd.json deleted file mode 100644 index c5249e290..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R25/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R25/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.RustCore.json deleted file mode 100644 index 6878ae67f..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R25/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R25/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.RustStd.json deleted file mode 100644 index 2fab37b39..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R25/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R25/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.json deleted file mode 100644 index d23780363..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R25.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R25.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R25","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.Compose.RustStd.json deleted file mode 100644 index 360328d57..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R26/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R26/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.RustStd.json deleted file mode 100644 index f48e39b5b..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R26/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R26/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.json deleted file mode 100644 index 2580c434d..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R26.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R26.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R26","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.Compose.RustStd.json deleted file mode 100644 index e30fbf226..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R27/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R27/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.RustStd.json deleted file mode 100644 index 343a78201..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R27/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R27/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.json deleted file mode 100644 index ecebb714f..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R27.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R27.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R27","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.Compose.RustStd.json deleted file mode 100644 index 75b38874e..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R28/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R28/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.RustStd.json deleted file mode 100644 index 10f6a45cb..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R28/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R28/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.json deleted file mode 100644 index 08ed3f4a6..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R28.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R28.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R28","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.Compose.RustStd.json deleted file mode 100644 index b6e62440b..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R29/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R29/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.RustStd.json deleted file mode 100644 index ccbe31c9f..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R29/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R29/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.json deleted file mode 100644 index 7f5afd6f3..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R29.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R29.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R29","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.Compose.RustStd.json deleted file mode 100644 index 74b9a5ee8..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R3/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R3/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.RustStd.json deleted file mode 100644 index 8c7fea463..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R3/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R3/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.json deleted file mode 100644 index bc9f26c1b..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R3.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R3.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R3","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.Compose.RustStd.json deleted file mode 100644 index 1f44485c2..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R30/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R30/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.RustStd.json deleted file mode 100644 index b1c7e617f..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R30/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R30/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.json deleted file mode 100644 index bfa300903..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R30.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R30.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R30","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.Compose.RustStd.json deleted file mode 100644 index 0f029d01d..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R31/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R31/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.RustStd.json deleted file mode 100644 index 62d8d8327..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R31/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R31/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.json deleted file mode 100644 index 34ef570c5..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R31.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R31.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R31","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.Compose.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.Compose.RustCore.json deleted file mode 100644 index bcacdd9d9..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.Compose.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R32/Compose/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R32/Compose/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.Compose.RustStd.json deleted file mode 100644 index bbe10fc42..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R32/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R32/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.RustCore.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.RustCore.json deleted file mode 100644 index 2cf7a9a50..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R32/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R32/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.RustStd.json deleted file mode 100644 index 51dd8b45c..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R32/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R32/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.json deleted file mode 100644 index 72994996b..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R32.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R32.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R32","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.Compose.RustStd.json deleted file mode 100644 index 1f28591d3..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R33/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R33/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.RustStd.json deleted file mode 100644 index ae9d5bdfc..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R33/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R33/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.json deleted file mode 100644 index e14f02e06..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R33.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R33.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R33","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.Compose.RustStd.json deleted file mode 100644 index 814252c5d..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R4/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R4/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.RustStd.json deleted file mode 100644 index 05e85c643..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R4/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R4/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.json deleted file mode 100644 index 1b94dd616..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R4.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R4.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R4","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.Compose.RustStd.json deleted file mode 100644 index 9d134a349..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R5/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R5/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.RustStd.json deleted file mode 100644 index 0f8866142..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R5/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R5/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.json deleted file mode 100644 index 0169243ba..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R5.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R5.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R5","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.Compose.RustStd.json deleted file mode 100644 index d111e651a..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R6/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R6/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.RustStd.json deleted file mode 100644 index 15e1b3af9..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R6/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R6/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.json deleted file mode 100644 index 8f8719416..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R6.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R6.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R6","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.Compose.RustStd.json deleted file mode 100644 index 67ee0f045..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R7/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R7/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.RustStd.json deleted file mode 100644 index 39a2f5a88..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R7/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R7/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.json deleted file mode 100644 index 7a911201b..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R7.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R7.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R7","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.Compose.RustStd.json deleted file mode 100644 index 36bea5087..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R8/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R8/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.RustStd.json deleted file mode 100644 index cad5435e2..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R8/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R8/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.json deleted file mode 100644 index 154e0e035..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R8.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R8.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R8","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.Compose.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.Compose.RustStd.json deleted file mode 100644 index 958fdec1f..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R9/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R9/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.RustStd.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.RustStd.json deleted file mode 100644 index 4396e93d1..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R9/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R9/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.json b/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.json deleted file mode 100644 index ea5824860..000000000 --- a/examples/production-coverage/expected/verify/process/preserve/LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R9.olean","$STAGING/preserve-src/LexLeanPreserve/Cf3572b43e36d5c62b7601d32507ebc3a/R9.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf3572b43e36d5c62b7601d32507ebc3a.R9","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production-coverage/lexlean.lock b/examples/production-coverage/lexlean.lock index 2f4ebd5a1..d3d90ba6b 100644 --- a/examples/production-coverage/lexlean.lock +++ b/examples/production-coverage/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "1bcbdf2b89a335e2e8685fb89b09d3c4eba9f30371947781755576f588df7434" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/examples/production/expected/build/manifest.json b/examples/production/expected/build/manifest.json index 01c226d40..db5b9f5c1 100644 --- a/examples/production/expected/build/manifest.json +++ b/examples/production/expected/build/manifest.json @@ -1 +1 @@ -{"build_id":"e8cec50a5cfaedc8a44430d39b937679235fed006ab8e7b85b6447f539051b3c","compiler":{"semantics_id":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","version":"0.3.0"},"inputs":[{"byte_length":2684,"kind":"lexicon","path":"embedded","sha256":"3bc0fb09d706ffa7d5a1363302ea87c049acc7c7dcafde63c62682620c11be9b"},{"byte_length":14885,"kind":"lexicon","path":"embedded","sha256":"e0db021e01b91d651c43921d66f6b0023c8efbf17cac2ec53192ce5305e4e1ac"},{"byte_length":36197,"kind":"lexicon","path":"embedded","sha256":"827317cae68c162f3a96c8a8de4e53ab348e7d3724fd2b834fa85ecde1a1b392"},{"byte_length":1597,"kind":"lock","path":"lexlean.lock","sha256":"7b10180ac8efc255555bb2a4d22e07cef3c3e29ef41f5827bfbefd38e55f8c35"},{"byte_length":642,"kind":"project-config","path":"lexlean.toml","sha256":"6f85e3c598ebbd2209c3ad5533caeb0ac2558d009e9863ec732435267e89972e"},{"byte_length":1946,"kind":"source","path":"src/Kernel.lex.tex","sha256":"a437ec054ba361d174f27a15fdbec5579ed2c841212e7bc0ecc659cde626e1ec"},{"byte_length":1838,"kind":"source","path":"src/Main.lex.tex","sha256":"0aaa9bd2649c30feb852481dd9fe94d94c473ea275bef51eb9d92237ba111514"}],"language":"1.2","lean_toolchain":"leanprover/lean4:v4.32.1","modules":[{"lean_module":"Production.Kernel","module":"Kernel","source_path":"src/Kernel.lex.tex"},{"lean_module":"Production.Main","module":"Main","source_path":"src/Main.lex.tex"}],"outputs":[{"byte_length":9026,"kind":"coverage","path":"coverage/Production/Kernel.coverage.json","sha256":"3ea97485fa3e255128c0e407a5c9bb0e24b55a2ba50111da3ce3e49a884141bd"},{"byte_length":9294,"kind":"coverage","path":"coverage/Production/Main.coverage.json","sha256":"eeb4778546afa3d37c1910a3fa60ecac720f3c72cccd005161392751d7da275e"},{"byte_length":4700,"kind":"lean","path":"modules/Production/Kernel.lean","sha256":"fd63ab40fb52b7c19c13e75eeef1374c4193955b214637e3096fa168c90bd3a9"},{"byte_length":1180,"kind":"lean","path":"modules/Production/Main.lean","sha256":"0141c5543da183afef9d568f1b0f2715a232ded8c936b6ea03c42d3abd98156d"},{"byte_length":10604,"kind":"lexicon-closure","path":"lexicons/Kernel.closure.json","sha256":"e35a3fc5cf572b5924dcc9c94be8e299ee6d0504a814b35600a6bf96b2318c47"},{"byte_length":10602,"kind":"lexicon-closure","path":"lexicons/Main.closure.json","sha256":"727110f90daff26a2e5eb8069fcefecd5790c1264f5d6d4b2ef57db1c2bfb867"},{"byte_length":3900,"kind":"map","path":"maps/Production/Kernel.map.json","sha256":"5ef755f46093b700d441f34eba586083cae23d89bdf0fe291c2a90adfb9a196a"},{"byte_length":3571,"kind":"map","path":"maps/Production/Main.map.json","sha256":"e6d914ef9bbc2ecc797631839e766df1874ae42422d38275fe919c04aa320623"},{"byte_length":12235,"kind":"production-eligibility","path":"production/Production/Main.eligibility.json","sha256":"6c8ff35c840c08182f22729f284b07382ddce7f037e4aa40f3319c2fb61e5867"},{"byte_length":3394,"kind":"tex","path":"modules/Production/Kernel.tex","sha256":"d415f1c0a3f9813c3c3410e65976249a9095442bb37efb84d55a51a4af13e05a"},{"byte_length":3518,"kind":"tex","path":"modules/Production/Main.tex","sha256":"80c004efe4f1ad13364aa37b48f249fffe2f28cb879a380696c33c74ba29a176"}],"project":"production","selection":["Kernel","Main"],"semantic_id":"ecf58505f4e2844618eff0bdc9a2ce9dcf5d0a65b1a68627116a7fd4d4a29a8b","source_id":"c2fb286e33e6bdc8b415c6bbbc3afd824f9396d5ad9a0600b9bc282e7e4eb15c","spec":"lexlean/build-manifest/1"} +{"build_id":"5fd4bc9e06d1343a5339ed48b1fcd044f0b5d19fb87bb2e83c89e68922343e3d","compiler":{"semantics_id":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","version":"0.3.0"},"inputs":[{"byte_length":2684,"kind":"lexicon","path":"embedded","sha256":"3bc0fb09d706ffa7d5a1363302ea87c049acc7c7dcafde63c62682620c11be9b"},{"byte_length":14885,"kind":"lexicon","path":"embedded","sha256":"e0db021e01b91d651c43921d66f6b0023c8efbf17cac2ec53192ce5305e4e1ac"},{"byte_length":36197,"kind":"lexicon","path":"embedded","sha256":"827317cae68c162f3a96c8a8de4e53ab348e7d3724fd2b834fa85ecde1a1b392"},{"byte_length":1597,"kind":"lock","path":"lexlean.lock","sha256":"8261568081d2bad38b880aefd91be774c419a0aa967629c5233bfcb3dcafef68"},{"byte_length":642,"kind":"project-config","path":"lexlean.toml","sha256":"6f85e3c598ebbd2209c3ad5533caeb0ac2558d009e9863ec732435267e89972e"},{"byte_length":1946,"kind":"source","path":"src/Kernel.lex.tex","sha256":"a437ec054ba361d174f27a15fdbec5579ed2c841212e7bc0ecc659cde626e1ec"},{"byte_length":1838,"kind":"source","path":"src/Main.lex.tex","sha256":"0aaa9bd2649c30feb852481dd9fe94d94c473ea275bef51eb9d92237ba111514"}],"language":"1.2","lean_toolchain":"leanprover/lean4:v4.32.1","modules":[{"lean_module":"Production.Kernel","module":"Kernel","source_path":"src/Kernel.lex.tex"},{"lean_module":"Production.Main","module":"Main","source_path":"src/Main.lex.tex"}],"outputs":[{"byte_length":9026,"kind":"coverage","path":"coverage/Production/Kernel.coverage.json","sha256":"3ea97485fa3e255128c0e407a5c9bb0e24b55a2ba50111da3ce3e49a884141bd"},{"byte_length":9294,"kind":"coverage","path":"coverage/Production/Main.coverage.json","sha256":"eeb4778546afa3d37c1910a3fa60ecac720f3c72cccd005161392751d7da275e"},{"byte_length":4700,"kind":"lean","path":"modules/Production/Kernel.lean","sha256":"fd63ab40fb52b7c19c13e75eeef1374c4193955b214637e3096fa168c90bd3a9"},{"byte_length":1180,"kind":"lean","path":"modules/Production/Main.lean","sha256":"0141c5543da183afef9d568f1b0f2715a232ded8c936b6ea03c42d3abd98156d"},{"byte_length":10604,"kind":"lexicon-closure","path":"lexicons/Kernel.closure.json","sha256":"e35a3fc5cf572b5924dcc9c94be8e299ee6d0504a814b35600a6bf96b2318c47"},{"byte_length":10602,"kind":"lexicon-closure","path":"lexicons/Main.closure.json","sha256":"727110f90daff26a2e5eb8069fcefecd5790c1264f5d6d4b2ef57db1c2bfb867"},{"byte_length":3900,"kind":"map","path":"maps/Production/Kernel.map.json","sha256":"308e250c119458d414382703cffe0563d0df459a5844b741f178295e55adcf30"},{"byte_length":3571,"kind":"map","path":"maps/Production/Main.map.json","sha256":"671991284e5ebaad648b7a9aa44fedc0a5480942df7d13d54b086b8bf640142e"},{"byte_length":12235,"kind":"production-eligibility","path":"production/Production/Main.eligibility.json","sha256":"6c8ff35c840c08182f22729f284b07382ddce7f037e4aa40f3319c2fb61e5867"},{"byte_length":3394,"kind":"tex","path":"modules/Production/Kernel.tex","sha256":"d415f1c0a3f9813c3c3410e65976249a9095442bb37efb84d55a51a4af13e05a"},{"byte_length":3518,"kind":"tex","path":"modules/Production/Main.tex","sha256":"80c004efe4f1ad13364aa37b48f249fffe2f28cb879a380696c33c74ba29a176"}],"project":"production","selection":["Kernel","Main"],"semantic_id":"f5a58e441acc8b93ded11826c51cc7c8399ec177e079787a9b6551789ce1cab8","source_id":"d250fe6d3584d18e0a53f49ac172457540c88e60a54328beade0efb1bc001a8b","spec":"lexlean/build-manifest/1"} diff --git a/examples/production/expected/build/maps/Production/Kernel.map.json b/examples/production/expected/build/maps/Production/Kernel.map.json index cf7e60f61..a408fe2a8 100644 --- a/examples/production/expected/build/maps/Production/Kernel.map.json +++ b/examples/production/expected/build/maps/Production/Kernel.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/Production/Kernel.lean"},{"id":1,"kind":"tex","path":"modules/Production/Kernel.tex"}],"mappings":[{"artifact":0,"gen_end":272,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":1946,"src_start":0},{"artifact":0,"gen_end":357,"gen_start":272,"node":1,"role":"declaration","source":0,"src_end":270,"src_start":115},{"artifact":0,"gen_end":624,"gen_start":357,"node":2,"role":"declaration","source":0,"src_end":549,"src_start":272},{"artifact":0,"gen_end":730,"gen_start":624,"node":3,"role":"declaration","source":0,"src_end":711,"src_start":551},{"artifact":0,"gen_end":856,"gen_start":730,"node":4,"role":"declaration","source":0,"src_end":929,"src_start":713},{"artifact":0,"gen_end":1021,"gen_start":856,"node":5,"role":"declaration","source":0,"src_end":1158,"src_start":931},{"artifact":0,"gen_end":4104,"gen_start":1021,"node":6,"role":"declaration","source":0,"src_end":1389,"src_start":1160},{"artifact":0,"gen_end":4517,"gen_start":4104,"node":7,"role":"declaration","source":0,"src_end":1699,"src_start":1391},{"artifact":0,"gen_end":4595,"gen_start":4517,"node":8,"role":"declaration","source":0,"src_end":1787,"src_start":1701},{"artifact":0,"gen_end":4677,"gen_start":4595,"node":9,"role":"declaration","source":0,"src_end":1910,"src_start":1789},{"artifact":0,"gen_end":4700,"gen_start":4677,"node":0,"role":"declaration","source":0,"src_end":1946,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":10,"role":"declaration","source":0,"src_end":1946,"src_start":0},{"artifact":1,"gen_end":329,"gen_start":134,"node":11,"role":"declaration","source":0,"src_end":270,"src_start":115},{"artifact":1,"gen_end":843,"gen_start":329,"node":12,"role":"declaration","source":0,"src_end":549,"src_start":272},{"artifact":1,"gen_end":1196,"gen_start":843,"node":13,"role":"declaration","source":0,"src_end":711,"src_start":551},{"artifact":1,"gen_end":1585,"gen_start":1196,"node":14,"role":"declaration","source":0,"src_end":929,"src_start":713},{"artifact":1,"gen_end":2032,"gen_start":1585,"node":15,"role":"declaration","source":0,"src_end":1158,"src_start":931},{"artifact":1,"gen_end":2374,"gen_start":2032,"node":16,"role":"declaration","source":0,"src_end":1389,"src_start":1160},{"artifact":1,"gen_end":2941,"gen_start":2374,"node":17,"role":"declaration","source":0,"src_end":1699,"src_start":1391},{"artifact":1,"gen_end":3190,"gen_start":2941,"node":18,"role":"declaration","source":0,"src_end":1787,"src_start":1701},{"artifact":1,"gen_end":3379,"gen_start":3190,"node":19,"role":"declaration","source":0,"src_end":1910,"src_start":1789},{"artifact":1,"gen_end":3394,"gen_start":3379,"node":10,"role":"declaration","source":0,"src_end":1946,"src_start":0}],"module":"Kernel","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-latex-module"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"}],"semantic_id":"ecf58505f4e2844618eff0bdc9a2ce9dcf5d0a65b1a68627116a7fd4d4a29a8b","source_id":"c2fb286e33e6bdc8b415c6bbbc3afd824f9396d5ad9a0600b9bc282e7e4eb15c","sources":[{"id":0,"kind":"file","path":"src/Kernel.lex.tex","sha256":"a437ec054ba361d174f27a15fdbec5579ed2c841212e7bc0ecc659cde626e1ec"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/Production/Kernel.lean"},{"id":1,"kind":"tex","path":"modules/Production/Kernel.tex"}],"mappings":[{"artifact":0,"gen_end":272,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":1946,"src_start":0},{"artifact":0,"gen_end":357,"gen_start":272,"node":1,"role":"declaration","source":0,"src_end":270,"src_start":115},{"artifact":0,"gen_end":624,"gen_start":357,"node":2,"role":"declaration","source":0,"src_end":549,"src_start":272},{"artifact":0,"gen_end":730,"gen_start":624,"node":3,"role":"declaration","source":0,"src_end":711,"src_start":551},{"artifact":0,"gen_end":856,"gen_start":730,"node":4,"role":"declaration","source":0,"src_end":929,"src_start":713},{"artifact":0,"gen_end":1021,"gen_start":856,"node":5,"role":"declaration","source":0,"src_end":1158,"src_start":931},{"artifact":0,"gen_end":4104,"gen_start":1021,"node":6,"role":"declaration","source":0,"src_end":1389,"src_start":1160},{"artifact":0,"gen_end":4517,"gen_start":4104,"node":7,"role":"declaration","source":0,"src_end":1699,"src_start":1391},{"artifact":0,"gen_end":4595,"gen_start":4517,"node":8,"role":"declaration","source":0,"src_end":1787,"src_start":1701},{"artifact":0,"gen_end":4677,"gen_start":4595,"node":9,"role":"declaration","source":0,"src_end":1910,"src_start":1789},{"artifact":0,"gen_end":4700,"gen_start":4677,"node":0,"role":"declaration","source":0,"src_end":1946,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":10,"role":"declaration","source":0,"src_end":1946,"src_start":0},{"artifact":1,"gen_end":329,"gen_start":134,"node":11,"role":"declaration","source":0,"src_end":270,"src_start":115},{"artifact":1,"gen_end":843,"gen_start":329,"node":12,"role":"declaration","source":0,"src_end":549,"src_start":272},{"artifact":1,"gen_end":1196,"gen_start":843,"node":13,"role":"declaration","source":0,"src_end":711,"src_start":551},{"artifact":1,"gen_end":1585,"gen_start":1196,"node":14,"role":"declaration","source":0,"src_end":929,"src_start":713},{"artifact":1,"gen_end":2032,"gen_start":1585,"node":15,"role":"declaration","source":0,"src_end":1158,"src_start":931},{"artifact":1,"gen_end":2374,"gen_start":2032,"node":16,"role":"declaration","source":0,"src_end":1389,"src_start":1160},{"artifact":1,"gen_end":2941,"gen_start":2374,"node":17,"role":"declaration","source":0,"src_end":1699,"src_start":1391},{"artifact":1,"gen_end":3190,"gen_start":2941,"node":18,"role":"declaration","source":0,"src_end":1787,"src_start":1701},{"artifact":1,"gen_end":3379,"gen_start":3190,"node":19,"role":"declaration","source":0,"src_end":1910,"src_start":1789},{"artifact":1,"gen_end":3394,"gen_start":3379,"node":10,"role":"declaration","source":0,"src_end":1946,"src_start":0}],"module":"Kernel","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-latex-module"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"}],"semantic_id":"f5a58e441acc8b93ded11826c51cc7c8399ec177e079787a9b6551789ce1cab8","source_id":"d250fe6d3584d18e0a53f49ac172457540c88e60a54328beade0efb1bc001a8b","sources":[{"id":0,"kind":"file","path":"src/Kernel.lex.tex","sha256":"a437ec054ba361d174f27a15fdbec5579ed2c841212e7bc0ecc659cde626e1ec"}],"spec":"lexlean/source-map/1"} diff --git a/examples/production/expected/build/maps/Production/Main.map.json b/examples/production/expected/build/maps/Production/Main.map.json index dd86f7131..6d7d1884f 100644 --- a/examples/production/expected/build/maps/Production/Main.map.json +++ b/examples/production/expected/build/maps/Production/Main.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/Production/Main.lean"},{"id":1,"kind":"tex","path":"modules/Production/Main.tex"}],"mappings":[{"artifact":0,"gen_end":268,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":1838,"src_start":0},{"artifact":0,"gen_end":416,"gen_start":268,"node":1,"role":"declaration","source":0,"src_end":412,"src_start":135},{"artifact":0,"gen_end":562,"gen_start":416,"node":2,"role":"declaration","source":0,"src_end":660,"src_start":414},{"artifact":0,"gen_end":698,"gen_start":562,"node":3,"role":"declaration","source":0,"src_end":904,"src_start":662},{"artifact":0,"gen_end":794,"gen_start":698,"node":4,"role":"declaration","source":0,"src_end":1152,"src_start":906},{"artifact":0,"gen_end":887,"gen_start":794,"node":5,"role":"declaration","source":0,"src_end":1367,"src_start":1154},{"artifact":0,"gen_end":992,"gen_start":887,"node":6,"role":"declaration","source":0,"src_end":1571,"src_start":1369},{"artifact":0,"gen_end":1062,"gen_start":992,"node":7,"role":"declaration","source":0,"src_end":1669,"src_start":1573},{"artifact":0,"gen_end":1159,"gen_start":1062,"node":8,"role":"declaration","source":0,"src_end":1802,"src_start":1671},{"artifact":0,"gen_end":1180,"gen_start":1159,"node":0,"role":"declaration","source":0,"src_end":1838,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":9,"role":"declaration","source":0,"src_end":1838,"src_start":0},{"artifact":1,"gen_end":657,"gen_start":134,"node":10,"role":"declaration","source":0,"src_end":412,"src_start":135},{"artifact":1,"gen_end":1159,"gen_start":657,"node":11,"role":"declaration","source":0,"src_end":660,"src_start":414},{"artifact":1,"gen_end":1723,"gen_start":1159,"node":12,"role":"declaration","source":0,"src_end":904,"src_start":662},{"artifact":1,"gen_end":2209,"gen_start":1723,"node":13,"role":"declaration","source":0,"src_end":1152,"src_start":906},{"artifact":1,"gen_end":2670,"gen_start":2209,"node":14,"role":"declaration","source":0,"src_end":1367,"src_start":1154},{"artifact":1,"gen_end":3122,"gen_start":2670,"node":15,"role":"declaration","source":0,"src_end":1571,"src_start":1369},{"artifact":1,"gen_end":3299,"gen_start":3122,"node":16,"role":"declaration","source":0,"src_end":1669,"src_start":1573},{"artifact":1,"gen_end":3503,"gen_start":3299,"node":17,"role":"declaration","source":0,"src_end":1802,"src_start":1671},{"artifact":1,"gen_end":3518,"gen_start":3503,"node":9,"role":"declaration","source":0,"src_end":1838,"src_start":0}],"module":"Main","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-latex-module"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"}],"semantic_id":"ecf58505f4e2844618eff0bdc9a2ce9dcf5d0a65b1a68627116a7fd4d4a29a8b","source_id":"c2fb286e33e6bdc8b415c6bbbc3afd824f9396d5ad9a0600b9bc282e7e4eb15c","sources":[{"id":0,"kind":"file","path":"src/Main.lex.tex","sha256":"0aaa9bd2649c30feb852481dd9fe94d94c473ea275bef51eb9d92237ba111514"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/Production/Main.lean"},{"id":1,"kind":"tex","path":"modules/Production/Main.tex"}],"mappings":[{"artifact":0,"gen_end":268,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":1838,"src_start":0},{"artifact":0,"gen_end":416,"gen_start":268,"node":1,"role":"declaration","source":0,"src_end":412,"src_start":135},{"artifact":0,"gen_end":562,"gen_start":416,"node":2,"role":"declaration","source":0,"src_end":660,"src_start":414},{"artifact":0,"gen_end":698,"gen_start":562,"node":3,"role":"declaration","source":0,"src_end":904,"src_start":662},{"artifact":0,"gen_end":794,"gen_start":698,"node":4,"role":"declaration","source":0,"src_end":1152,"src_start":906},{"artifact":0,"gen_end":887,"gen_start":794,"node":5,"role":"declaration","source":0,"src_end":1367,"src_start":1154},{"artifact":0,"gen_end":992,"gen_start":887,"node":6,"role":"declaration","source":0,"src_end":1571,"src_start":1369},{"artifact":0,"gen_end":1062,"gen_start":992,"node":7,"role":"declaration","source":0,"src_end":1669,"src_start":1573},{"artifact":0,"gen_end":1159,"gen_start":1062,"node":8,"role":"declaration","source":0,"src_end":1802,"src_start":1671},{"artifact":0,"gen_end":1180,"gen_start":1159,"node":0,"role":"declaration","source":0,"src_end":1838,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":9,"role":"declaration","source":0,"src_end":1838,"src_start":0},{"artifact":1,"gen_end":657,"gen_start":134,"node":10,"role":"declaration","source":0,"src_end":412,"src_start":135},{"artifact":1,"gen_end":1159,"gen_start":657,"node":11,"role":"declaration","source":0,"src_end":660,"src_start":414},{"artifact":1,"gen_end":1723,"gen_start":1159,"node":12,"role":"declaration","source":0,"src_end":904,"src_start":662},{"artifact":1,"gen_end":2209,"gen_start":1723,"node":13,"role":"declaration","source":0,"src_end":1152,"src_start":906},{"artifact":1,"gen_end":2670,"gen_start":2209,"node":14,"role":"declaration","source":0,"src_end":1367,"src_start":1154},{"artifact":1,"gen_end":3122,"gen_start":2670,"node":15,"role":"declaration","source":0,"src_end":1571,"src_start":1369},{"artifact":1,"gen_end":3299,"gen_start":3122,"node":16,"role":"declaration","source":0,"src_end":1669,"src_start":1573},{"artifact":1,"gen_end":3503,"gen_start":3299,"node":17,"role":"declaration","source":0,"src_end":1802,"src_start":1671},{"artifact":1,"gen_end":3518,"gen_start":3503,"node":9,"role":"declaration","source":0,"src_end":1838,"src_start":0}],"module":"Main","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-latex-module"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"}],"semantic_id":"f5a58e441acc8b93ded11826c51cc7c8399ec177e079787a9b6551789ce1cab8","source_id":"d250fe6d3584d18e0a53f49ac172457540c88e60a54328beade0efb1bc001a8b","sources":[{"id":0,"kind":"file","path":"src/Main.lex.tex","sha256":"0aaa9bd2649c30feb852481dd9fe94d94c473ea275bef51eb9d92237ba111514"}],"spec":"lexlean/source-map/1"} diff --git a/examples/production/expected/verify/audit/LexLeanAudit.Aecf58505f4e2844618eff0bdc9a2ce9d.LexLeanRuntime.Collections.process.json b/examples/production/expected/verify/audit/LexLeanAudit.Aecf58505f4e2844618eff0bdc9a2ce9d.LexLeanRuntime.Collections.process.json deleted file mode 100644 index e6ce2ee76..000000000 --- a/examples/production/expected/verify/audit/LexLeanAudit.Aecf58505f4e2844618eff0bdc9a2ce9d.LexLeanRuntime.Collections.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Aecf58505f4e2844618eff0bdc9a2ce9d.LexLeanRuntime.Collections.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Aecf58505f4e2844618eff0bdc9a2ce9d.LexLeanRuntime.Collections","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanCollections.Key' does not depend on any axioms\n'LexLeanCollections.Key.casesOn' does not depend on any axioms\n'LexLeanCollections.Key.compare' does not depend on any axioms\n'LexLeanCollections.Key.ctorIdx' does not depend on any axioms\n'LexLeanCollections.Key.mk._flat_ctor' does not depend on any axioms\n'LexLeanCollections.Key.mk.noConfusion' does not depend on any axioms\n'LexLeanCollections.Key.noConfusion' does not depend on any axioms\n'LexLeanCollections.Key.noConfusionType' does not depend on any axioms\n'LexLeanCollections.Key.recOn' does not depend on any axioms\n'LexLeanCollections.compareCodes' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._f' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._sunfold' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._unsafe_rec' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.match_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.match_4' does not depend on any axioms\n'LexLeanCollections.containsElement' does not depend on any axioms\n'LexLeanCollections.containsElement._f' does not depend on any axioms\n'LexLeanCollections.containsElement._sunfold' does not depend on any axioms\n'LexLeanCollections.containsElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.graphNodes' does not depend on any axioms\n'LexLeanCollections.graphReachable' depends on axioms: [propext]\n'LexLeanCollections.graphSuccessors' does not depend on any axioms\n'LexLeanCollections.graphTopological' does not depend on any axioms\n'LexLeanCollections.insertElement' does not depend on any axioms\n'LexLeanCollections.insertElement._f' does not depend on any axioms\n'LexLeanCollections.insertElement._sunfold' does not depend on any axioms\n'LexLeanCollections.insertElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.insertElement.match_1' does not depend on any axioms\n'LexLeanCollections.insertEntry' does not depend on any axioms\n'LexLeanCollections.insertEntry._f' does not depend on any axioms\n'LexLeanCollections.insertEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.insertEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.insertEntry.match_1' does not depend on any axioms\n'LexLeanCollections.insertEntry.match_3' does not depend on any axioms\n'LexLeanCollections.instKeyBool' depends on axioms: [propext]\n'LexLeanCollections.instKeyInt' does not depend on any axioms\n'LexLeanCollections.instKeyInt16' does not depend on any axioms\n'LexLeanCollections.instKeyInt32' does not depend on any axioms\n'LexLeanCollections.instKeyInt64' does not depend on any axioms\n'LexLeanCollections.instKeyInt8' does not depend on any axioms\n'LexLeanCollections.instKeyNat' does not depend on any axioms\n'LexLeanCollections.instKeyProd' depends on axioms: [propext]\n'LexLeanCollections.instKeyString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanCollections.instKeyUInt16' does not depend on any axioms\n'LexLeanCollections.instKeyUInt32' does not depend on any axioms\n'LexLeanCollections.instKeyUInt64' does not depend on any axioms\n'LexLeanCollections.instKeyUInt8' does not depend on any axioms\n'LexLeanCollections.iterate' does not depend on any axioms\n'LexLeanCollections.iterate._f' does not depend on any axioms\n'LexLeanCollections.iterate._sunfold' does not depend on any axioms\n'LexLeanCollections.iterate._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.iterate.match_1' does not depend on any axioms\n'LexLeanCollections.iterateUntil' does not depend on any axioms\n'LexLeanCollections.iterateUntil._f' does not depend on any axioms\n'LexLeanCollections.iterateUntil._sunfold' does not depend on any axioms\n'LexLeanCollections.iterateUntil._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.iterateUntil.match_1' does not depend on any axioms\n'LexLeanCollections.lessThan' depends on axioms: [propext]\n'LexLeanCollections.lessThan._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.lessThan.match_1' depends on axioms: [propext]\n'LexLeanCollections.listFold' does not depend on any axioms\n'LexLeanCollections.lookupEntry' does not depend on any axioms\n'LexLeanCollections.lookupEntry._f' does not depend on any axioms\n'LexLeanCollections.lookupEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.lookupEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.mapContains' does not depend on any axioms\n'LexLeanCollections.mapEntries' does not depend on any axioms\n'LexLeanCollections.mapFold' does not depend on any axioms\n'LexLeanCollections.mapInsert' does not depend on any axioms\n'LexLeanCollections.mapKeys' does not depend on any axioms\n'LexLeanCollections.mapLookup' does not depend on any axioms\n'LexLeanCollections.mapRemove' does not depend on any axioms\n'LexLeanCollections.mapSize' does not depend on any axioms\n'LexLeanCollections.mapValues' does not depend on any axioms\n'LexLeanCollections.reachableFrom' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._f' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._sunfold' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._unsafe_rec' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom.match_1' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom.match_4' does not depend on any axioms\n'LexLeanCollections.removeElement' does not depend on any axioms\n'LexLeanCollections.removeElement._f' does not depend on any axioms\n'LexLeanCollections.removeElement._sunfold' does not depend on any axioms\n'LexLeanCollections.removeElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.removeEntry' does not depend on any axioms\n'LexLeanCollections.removeEntry._f' does not depend on any axioms\n'LexLeanCollections.removeEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.removeEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.setContains' does not depend on any axioms\n'LexLeanCollections.setDifference' does not depend on any axioms\n'LexLeanCollections.setElements' does not depend on any axioms\n'LexLeanCollections.setFold' does not depend on any axioms\n'LexLeanCollections.setInsert' does not depend on any axioms\n'LexLeanCollections.setIntersection' does not depend on any axioms\n'LexLeanCollections.setRemove' does not depend on any axioms\n'LexLeanCollections.setSize' does not depend on any axioms\n'LexLeanCollections.setUnion' does not depend on any axioms\n'LexLeanCollections.topological' does not depend on any axioms\n'LexLeanCollections.topological._f' does not depend on any axioms\n'LexLeanCollections.topological._sunfold' does not depend on any axioms\n'LexLeanCollections.topological._unsafe_rec' does not depend on any axioms\n","stdout_sha256":"b75acc0e99e23684c3cc876eacbfc93f47161cfee8a7440df17fa45f321c8c6a","tool":"lean"} diff --git a/examples/production/expected/verify/audit/LexLeanAudit.Aecf58505f4e2844618eff0bdc9a2ce9d.LexLeanRuntime.Laws.process.json b/examples/production/expected/verify/audit/LexLeanAudit.Aecf58505f4e2844618eff0bdc9a2ce9d.LexLeanRuntime.Laws.process.json deleted file mode 100644 index 8dca363df..000000000 --- a/examples/production/expected/verify/audit/LexLeanAudit.Aecf58505f4e2844618eff0bdc9a2ce9d.LexLeanRuntime.Laws.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Aecf58505f4e2844618eff0bdc9a2ce9d.LexLeanRuntime.Laws.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Aecf58505f4e2844618eff0bdc9a2ce9d.LexLeanRuntime.Laws","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanCollections.lessThan._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanCollections.lessThan.eq_1' depends on axioms: [propext]\n'LexLeanCollections.listFold.eq_1' does not depend on any axioms\n'LexLeanLaws.append_list' does not depend on any axioms\n'LexLeanLaws.length_list' does not depend on any axioms\n'LexLeanLaws.lessThan_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int16' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int32' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int64' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int8' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_nat' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint16' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint32' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint64' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint8' depends on axioms: [propext]\n'LexLeanLaws.listFold_add_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_add_int_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_add_nat' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_add_nat_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_append' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_cons' does not depend on any axioms\n'LexLeanLaws.listFold_extend' depends on axioms: [propext]\n'LexLeanLaws.listFold_fusion' does not depend on any axioms\n'LexLeanLaws.listFold_nil' does not depend on any axioms\n'LexLeanLaws.listFold_pair' does not depend on any axioms\n'LexLeanLaws.listFold_prepend' depends on axioms: [propext]\n'LexLeanLaws.listFold_sub_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_sub_int_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.mapEntries_self' does not depend on any axioms\n'LexLeanLaws.mapFold_listFold' does not depend on any axioms\n'LexLeanLaws.mapSize_length' does not depend on any axioms\n'LexLeanLaws.quotient_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.quotient_nat' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.remainder_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.remainder_nat' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.setElements_self' does not depend on any axioms\n'LexLeanLaws.setFold_listFold' does not depend on any axioms\n'LexLeanLaws.setSize_length' does not depend on any axioms\n'LexLeanLaws.sumInt' does not depend on any axioms\n'LexLeanLaws.sumInt._f' does not depend on any axioms\n'LexLeanLaws.sumInt._sunfold' does not depend on any axioms\n'LexLeanLaws.sumInt._unsafe_rec' does not depend on any axioms\n'LexLeanLaws.sumInt.eq_1' does not depend on any axioms\n'LexLeanLaws.sumInt.eq_2' does not depend on any axioms\n'LexLeanLaws.sumInt.eq_def' does not depend on any axioms\n'LexLeanLaws.sumInt_add' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_append' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_cons' does not depend on any axioms\n'LexLeanLaws.sumInt_const' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_mul' depends on axioms: [propext]\n'LexLeanLaws.sumInt_mul_right' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_mul_self' depends on axioms: [propext]\n'LexLeanLaws.sumInt_neg' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_neg_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_nil' does not depend on any axioms\n'LexLeanLaws.sumInt_perm' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_reverse' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_sub' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat' does not depend on any axioms\n'LexLeanLaws.sumNat._f' does not depend on any axioms\n'LexLeanLaws.sumNat._sunfold' does not depend on any axioms\n'LexLeanLaws.sumNat._unsafe_rec' does not depend on any axioms\n'LexLeanLaws.sumNat.eq_1' does not depend on any axioms\n'LexLeanLaws.sumNat.eq_2' does not depend on any axioms\n'LexLeanLaws.sumNat.eq_def' does not depend on any axioms\n'LexLeanLaws.sumNat.match_1' does not depend on any axioms\n'LexLeanLaws.sumNat_add' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_append' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_cons' does not depend on any axioms\n'LexLeanLaws.sumNat_const' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_mul' does not depend on any axioms\n'LexLeanLaws.sumNat_mul_right' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_mul_self' does not depend on any axioms\n'LexLeanLaws.sumNat_nil' does not depend on any axioms\n'LexLeanLaws.sumNat_perm' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_reverse' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.tdiv_ediv' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.tmod_emod' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.quotient.eq_1' does not depend on any axioms\n'LexLeanRuntime.remainder.eq_1' does not depend on any axioms\n","stdout_sha256":"a4ba2d39c9cdfd5e40c41c5ccf4726d937fd192fc042b74bb56cc0651e28919e","tool":"lean"} diff --git a/examples/production/expected/verify/audit/LexLeanAudit.Aecf58505f4e2844618eff0bdc9a2ce9d.LexLeanRuntime.Portable.process.json b/examples/production/expected/verify/audit/LexLeanAudit.Aecf58505f4e2844618eff0bdc9a2ce9d.LexLeanRuntime.Portable.process.json deleted file mode 100644 index 1b8c65852..000000000 --- a/examples/production/expected/verify/audit/LexLeanAudit.Aecf58505f4e2844618eff0bdc9a2ce9d.LexLeanRuntime.Portable.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Aecf58505f4e2844618eff0bdc9a2ce9d.LexLeanRuntime.Portable.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Aecf58505f4e2844618eff0bdc9a2ce9d.LexLeanRuntime.Portable","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanRuntime.Appendable' does not depend on any axioms\n'LexLeanRuntime.Appendable.append' does not depend on any axioms\n'LexLeanRuntime.Appendable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Appendable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Appendable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Appendable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Appendable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Appendable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Appendable.recOn' does not depend on any axioms\n'LexLeanRuntime.Decimal' does not depend on any axioms\n'LexLeanRuntime.Decimal.casesOn' does not depend on any axioms\n'LexLeanRuntime.Decimal.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Decimal.format' does not depend on any axioms\n'LexLeanRuntime.Decimal.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Decimal.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Decimal.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Decimal.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Decimal.parse' does not depend on any axioms\n'LexLeanRuntime.Decimal.recOn' does not depend on any axioms\n'LexLeanRuntime.Fixed' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitAnd' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitNot' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitOr' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitXor' does not depend on any axioms\n'LexLeanRuntime.Fixed.casesOn' does not depend on any axioms\n'LexLeanRuntime.Fixed.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Fixed.fromInt' does not depend on any axioms\n'LexLeanRuntime.Fixed.maximum' does not depend on any axioms\n'LexLeanRuntime.Fixed.minimum' does not depend on any axioms\n'LexLeanRuntime.Fixed.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Fixed.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Fixed.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Fixed.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Fixed.recOn' does not depend on any axioms\n'LexLeanRuntime.Fixed.shiftLeft' does not depend on any axioms\n'LexLeanRuntime.Fixed.shiftRight' does not depend on any axioms\n'LexLeanRuntime.Fixed.toToMathInt' does not depend on any axioms\n'LexLeanRuntime.Indexable' does not depend on any axioms\n'LexLeanRuntime.Indexable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Indexable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Indexable.index' does not depend on any axioms\n'LexLeanRuntime.Indexable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Indexable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Indexable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Indexable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Indexable.recOn' does not depend on any axioms\n'LexLeanRuntime.Lengthable' does not depend on any axioms\n'LexLeanRuntime.Lengthable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Lengthable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Lengthable.length' does not depend on any axioms\n'LexLeanRuntime.Lengthable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Lengthable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Lengthable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Lengthable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Lengthable.recOn' does not depend on any axioms\n'LexLeanRuntime.Quotient' does not depend on any axioms\n'LexLeanRuntime.Quotient.casesOn' does not depend on any axioms\n'LexLeanRuntime.Quotient.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Quotient.isZero' does not depend on any axioms\n'LexLeanRuntime.Quotient.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Quotient.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Quotient.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Quotient.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Quotient.quotient' does not depend on any axioms\n'LexLeanRuntime.Quotient.recOn' does not depend on any axioms\n'LexLeanRuntime.Quotient.remainder' does not depend on any axioms\n'LexLeanRuntime.Sliceable' does not depend on any axioms\n'LexLeanRuntime.Sliceable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Sliceable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Sliceable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Sliceable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Sliceable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Sliceable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Sliceable.recOn' does not depend on any axioms\n'LexLeanRuntime.Sliceable.slice' does not depend on any axioms\n'LexLeanRuntime.ToMathInt' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.casesOn' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.noConfusion' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.recOn' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.toInt' does not depend on any axioms\n'LexLeanRuntime.append' does not depend on any axioms\n'LexLeanRuntime.bitAnd' does not depend on any axioms\n'LexLeanRuntime.bitNot' does not depend on any axioms\n'LexLeanRuntime.bitOr' does not depend on any axioms\n'LexLeanRuntime.bitXor' does not depend on any axioms\n'LexLeanRuntime.checkedAdd' does not depend on any axioms\n'LexLeanRuntime.checkedAddInt64' does not depend on any axioms\n'LexLeanRuntime.checkedConvert' does not depend on any axioms\n'LexLeanRuntime.checkedFromInt' does not depend on any axioms\n'LexLeanRuntime.checkedMultiply' does not depend on any axioms\n'LexLeanRuntime.checkedMultiplyInt64' does not depend on any axioms\n'LexLeanRuntime.checkedMultiplyInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.checkedNegate' does not depend on any axioms\n'LexLeanRuntime.checkedNegateInt64' does not depend on any axioms\n'LexLeanRuntime.checkedQuotient' does not depend on any axioms\n'LexLeanRuntime.checkedQuotientInt64' does not depend on any axioms\n'LexLeanRuntime.checkedSubtract' does not depend on any axioms\n'LexLeanRuntime.checkedSubtractInt64' does not depend on any axioms\n'LexLeanRuntime.compareBytes' depends on axioms: [propext]\n'LexLeanRuntime.divideMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._f' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._sunfold' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.equal' does not depend on any axioms\n'LexLeanRuntime.formatDecimal' does not depend on any axioms\n'LexLeanRuntime.index' does not depend on any axioms\n'LexLeanRuntime.instAppendableByteArray' does not depend on any axioms\n'LexLeanRuntime.instAppendableList' does not depend on any axioms\n'LexLeanRuntime.instDecimalInt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instDecimalInt.match_1' does not depend on any axioms\n'LexLeanRuntime.instDecimalOfFixedOfToString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instFixedInt16' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt32' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt64' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt8' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt16' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt32' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt64' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt8' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instIndexableByteArrayUInt8' does not depend on any axioms\n'LexLeanRuntime.instIndexableList' does not depend on any axioms\n'LexLeanRuntime.instLengthableByteArray' does not depend on any axioms\n'LexLeanRuntime.instLengthableList' does not depend on any axioms\n'LexLeanRuntime.instLengthableString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instQuotientInt' does not depend on any axioms\n'LexLeanRuntime.instQuotientNat' does not depend on any axioms\n'LexLeanRuntime.instSliceableByteArray' does not depend on any axioms\n'LexLeanRuntime.instSliceableList' does not depend on any axioms\n'LexLeanRuntime.instToMathIntInt' does not depend on any axioms\n'LexLeanRuntime.join' depends on axioms: [propext]\n'LexLeanRuntime.length' does not depend on any axioms\n'LexLeanRuntime.listIndex' does not depend on any axioms\n'LexLeanRuntime.listIndex._f' does not depend on any axioms\n'LexLeanRuntime.listIndex._sunfold' does not depend on any axioms\n'LexLeanRuntime.listIndex._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.listIndex.match_1' does not depend on any axioms\n'LexLeanRuntime.magnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.multiply' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._f' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._sunfold' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.negate' does not depend on any axioms\n'LexLeanRuntime.parseDecimal' does not depend on any axioms\n'LexLeanRuntime.quotient' does not depend on any axioms\n'LexLeanRuntime.remainder' does not depend on any axioms\n'LexLeanRuntime.shiftLeft' does not depend on any axioms\n'LexLeanRuntime.shiftRight' does not depend on any axioms\n'LexLeanRuntime.signedMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.slice' does not depend on any axioms\n'LexLeanRuntime.splitExact' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.subtract' does not depend on any axioms\n'LexLeanRuntime.utf8Decode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.utf8Encode' does not depend on any axioms\n","stdout_sha256":"73fea1d9e9e9f0a2f1363b9f284eeeb9e434430e9fa910260b9526bad864641e","tool":"lean"} diff --git a/examples/production/expected/verify/audit/LexLeanAudit.Aecf58505f4e2844618eff0bdc9a2ce9d.Production.Kernel.process.json b/examples/production/expected/verify/audit/LexLeanAudit.Aecf58505f4e2844618eff0bdc9a2ce9d.Production.Kernel.process.json deleted file mode 100644 index edc99ed3d..000000000 --- a/examples/production/expected/verify/audit/LexLeanAudit.Aecf58505f4e2844618eff0bdc9a2ce9d.Production.Kernel.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Aecf58505f4e2844618eff0bdc9a2ce9d.Production.Kernel.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Aecf58505f4e2844618eff0bdc9a2ce9d.Production.Kernel","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Production.Kernel.Shape' does not depend on any axioms\n'Production.Kernel.applyTwice' does not depend on any axioms\n'Production.Kernel.area' does not depend on any axioms\n'Production.Kernel.area_square' does not depend on any axioms\n'Production.Kernel.countdown' depends on axioms: [propext, Quot.sound]\n'Production.Kernel.countdown_decreases' depends on axioms: [propext, Quot.sound]\n'Production.Kernel.firstOr' does not depend on any axioms\n'Production.Kernel.positive' does not depend on any axioms\n'Production.Kernel.total' does not depend on any axioms\n","stdout_sha256":"e7872f440e4a20755a5548c3999faa8297516295868ef0be032f4dff66e551ca","tool":"lean"} diff --git a/examples/production/expected/verify/audit/LexLeanAudit.Aecf58505f4e2844618eff0bdc9a2ce9d.Production.Main.process.json b/examples/production/expected/verify/audit/LexLeanAudit.Aecf58505f4e2844618eff0bdc9a2ce9d.Production.Main.process.json deleted file mode 100644 index 254cc8ed7..000000000 --- a/examples/production/expected/verify/audit/LexLeanAudit.Aecf58505f4e2844618eff0bdc9a2ce9d.Production.Main.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Aecf58505f4e2844618eff0bdc9a2ce9d.Production.Main.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Aecf58505f4e2844618eff0bdc9a2ce9d.Production.Main","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Production.Main.checkedSum' depends on axioms: [propext, Quot.sound]\n'Production.Main.halvings' depends on axioms: [propext, Quot.sound]\n'Production.Main.headOr' does not depend on any axioms\n'Production.Main.quadruple' does not depend on any axioms\n'Production.Main.quadruple_three' does not depend on any axioms\n'Production.Main.shapeArea' does not depend on any axioms\n'Production.Main.sumAll' does not depend on any axioms\n'Production.Main.sum_three' does not depend on any axioms\n","stdout_sha256":"ecef933d7d628ddb695b86ecad94d180c8c2ce3a0bd988fe1d6bedb4e601987f","tool":"lean"} diff --git a/examples/production/expected/verify/audit/LexLeanAudit.Aecf58505f4e2844618eff0bdc9a2ce9d.LexLeanRuntime.Collections.lean b/examples/production/expected/verify/audit/LexLeanAudit.Af5a58e441acc8b93ded11826c51cc7c8.LexLeanRuntime.Collections.lean similarity index 100% rename from examples/production/expected/verify/audit/LexLeanAudit.Aecf58505f4e2844618eff0bdc9a2ce9d.LexLeanRuntime.Collections.lean rename to examples/production/expected/verify/audit/LexLeanAudit.Af5a58e441acc8b93ded11826c51cc7c8.LexLeanRuntime.Collections.lean diff --git a/examples/production/expected/verify/audit/LexLeanAudit.Af5a58e441acc8b93ded11826c51cc7c8.LexLeanRuntime.Collections.process.json b/examples/production/expected/verify/audit/LexLeanAudit.Af5a58e441acc8b93ded11826c51cc7c8.LexLeanRuntime.Collections.process.json new file mode 100644 index 000000000..203068a4e --- /dev/null +++ b/examples/production/expected/verify/audit/LexLeanAudit.Af5a58e441acc8b93ded11826c51cc7c8.LexLeanRuntime.Collections.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Af5a58e441acc8b93ded11826c51cc7c8.LexLeanRuntime.Collections.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Af5a58e441acc8b93ded11826c51cc7c8.LexLeanRuntime.Collections","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanCollections.Key' does not depend on any axioms\n'LexLeanCollections.Key.casesOn' does not depend on any axioms\n'LexLeanCollections.Key.compare' does not depend on any axioms\n'LexLeanCollections.Key.ctorIdx' does not depend on any axioms\n'LexLeanCollections.Key.mk._flat_ctor' does not depend on any axioms\n'LexLeanCollections.Key.mk.noConfusion' does not depend on any axioms\n'LexLeanCollections.Key.noConfusion' does not depend on any axioms\n'LexLeanCollections.Key.noConfusionType' does not depend on any axioms\n'LexLeanCollections.Key.recOn' does not depend on any axioms\n'LexLeanCollections.compareCodes' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._f' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._sunfold' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._unsafe_rec' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.match_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.match_4' does not depend on any axioms\n'LexLeanCollections.containsElement' does not depend on any axioms\n'LexLeanCollections.containsElement._f' does not depend on any axioms\n'LexLeanCollections.containsElement._sunfold' does not depend on any axioms\n'LexLeanCollections.containsElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.graphNodes' does not depend on any axioms\n'LexLeanCollections.graphReachable' depends on axioms: [propext]\n'LexLeanCollections.graphSuccessors' does not depend on any axioms\n'LexLeanCollections.graphTopological' does not depend on any axioms\n'LexLeanCollections.insertElement' does not depend on any axioms\n'LexLeanCollections.insertElement._f' does not depend on any axioms\n'LexLeanCollections.insertElement._sunfold' does not depend on any axioms\n'LexLeanCollections.insertElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.insertElement.match_1' does not depend on any axioms\n'LexLeanCollections.insertEntry' does not depend on any axioms\n'LexLeanCollections.insertEntry._f' does not depend on any axioms\n'LexLeanCollections.insertEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.insertEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.insertEntry.match_1' does not depend on any axioms\n'LexLeanCollections.insertEntry.match_3' does not depend on any axioms\n'LexLeanCollections.instKeyBool' depends on axioms: [propext]\n'LexLeanCollections.instKeyInt' does not depend on any axioms\n'LexLeanCollections.instKeyInt16' does not depend on any axioms\n'LexLeanCollections.instKeyInt32' does not depend on any axioms\n'LexLeanCollections.instKeyInt64' does not depend on any axioms\n'LexLeanCollections.instKeyInt8' does not depend on any axioms\n'LexLeanCollections.instKeyNat' does not depend on any axioms\n'LexLeanCollections.instKeyProd' depends on axioms: [propext]\n'LexLeanCollections.instKeyString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanCollections.instKeyUInt16' does not depend on any axioms\n'LexLeanCollections.instKeyUInt32' does not depend on any axioms\n'LexLeanCollections.instKeyUInt64' does not depend on any axioms\n'LexLeanCollections.instKeyUInt8' does not depend on any axioms\n'LexLeanCollections.iterate' does not depend on any axioms\n'LexLeanCollections.iterate._f' does not depend on any axioms\n'LexLeanCollections.iterate._sunfold' does not depend on any axioms\n'LexLeanCollections.iterate._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.iterate.match_1' does not depend on any axioms\n'LexLeanCollections.iterateUntil' does not depend on any axioms\n'LexLeanCollections.iterateUntil._f' does not depend on any axioms\n'LexLeanCollections.iterateUntil._sunfold' does not depend on any axioms\n'LexLeanCollections.iterateUntil._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.iterateUntil.match_1' does not depend on any axioms\n'LexLeanCollections.lessThan' depends on axioms: [propext]\n'LexLeanCollections.lessThan._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.lessThan.match_1' depends on axioms: [propext]\n'LexLeanCollections.listFold' does not depend on any axioms\n'LexLeanCollections.lookupEntry' does not depend on any axioms\n'LexLeanCollections.lookupEntry._f' does not depend on any axioms\n'LexLeanCollections.lookupEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.lookupEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.mapContains' does not depend on any axioms\n'LexLeanCollections.mapEntries' does not depend on any axioms\n'LexLeanCollections.mapFold' does not depend on any axioms\n'LexLeanCollections.mapInsert' does not depend on any axioms\n'LexLeanCollections.mapKeys' does not depend on any axioms\n'LexLeanCollections.mapLookup' does not depend on any axioms\n'LexLeanCollections.mapRemove' does not depend on any axioms\n'LexLeanCollections.mapSize' does not depend on any axioms\n'LexLeanCollections.mapValues' does not depend on any axioms\n'LexLeanCollections.reachableFrom' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._f' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._sunfold' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._unsafe_rec' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom.match_1' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom.match_4' does not depend on any axioms\n'LexLeanCollections.removeElement' does not depend on any axioms\n'LexLeanCollections.removeElement._f' does not depend on any axioms\n'LexLeanCollections.removeElement._sunfold' does not depend on any axioms\n'LexLeanCollections.removeElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.removeEntry' does not depend on any axioms\n'LexLeanCollections.removeEntry._f' does not depend on any axioms\n'LexLeanCollections.removeEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.removeEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.setContains' does not depend on any axioms\n'LexLeanCollections.setDifference' does not depend on any axioms\n'LexLeanCollections.setElements' does not depend on any axioms\n'LexLeanCollections.setFold' does not depend on any axioms\n'LexLeanCollections.setInsert' does not depend on any axioms\n'LexLeanCollections.setIntersection' does not depend on any axioms\n'LexLeanCollections.setRemove' does not depend on any axioms\n'LexLeanCollections.setSize' does not depend on any axioms\n'LexLeanCollections.setUnion' does not depend on any axioms\n'LexLeanCollections.topological' does not depend on any axioms\n'LexLeanCollections.topological._f' does not depend on any axioms\n'LexLeanCollections.topological._sunfold' does not depend on any axioms\n'LexLeanCollections.topological._unsafe_rec' does not depend on any axioms\n","stdout_sha256":"b75acc0e99e23684c3cc876eacbfc93f47161cfee8a7440df17fa45f321c8c6a","tool":"lean"} diff --git a/examples/production/expected/verify/audit/LexLeanAudit.Aecf58505f4e2844618eff0bdc9a2ce9d.LexLeanRuntime.Laws.lean b/examples/production/expected/verify/audit/LexLeanAudit.Af5a58e441acc8b93ded11826c51cc7c8.LexLeanRuntime.Laws.lean similarity index 100% rename from examples/production/expected/verify/audit/LexLeanAudit.Aecf58505f4e2844618eff0bdc9a2ce9d.LexLeanRuntime.Laws.lean rename to examples/production/expected/verify/audit/LexLeanAudit.Af5a58e441acc8b93ded11826c51cc7c8.LexLeanRuntime.Laws.lean diff --git a/examples/production/expected/verify/audit/LexLeanAudit.Af5a58e441acc8b93ded11826c51cc7c8.LexLeanRuntime.Laws.process.json b/examples/production/expected/verify/audit/LexLeanAudit.Af5a58e441acc8b93ded11826c51cc7c8.LexLeanRuntime.Laws.process.json new file mode 100644 index 000000000..a4937b49e --- /dev/null +++ b/examples/production/expected/verify/audit/LexLeanAudit.Af5a58e441acc8b93ded11826c51cc7c8.LexLeanRuntime.Laws.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Af5a58e441acc8b93ded11826c51cc7c8.LexLeanRuntime.Laws.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Af5a58e441acc8b93ded11826c51cc7c8.LexLeanRuntime.Laws","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanCollections.lessThan._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanCollections.lessThan.eq_1' depends on axioms: [propext]\n'LexLeanCollections.listFold.eq_1' does not depend on any axioms\n'LexLeanLaws.append_list' does not depend on any axioms\n'LexLeanLaws.length_list' does not depend on any axioms\n'LexLeanLaws.lessThan_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int16' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int32' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int64' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int8' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_nat' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint16' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint32' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint64' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint8' depends on axioms: [propext]\n'LexLeanLaws.listFold_add_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_add_int_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_add_nat' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_add_nat_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_append' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_cons' does not depend on any axioms\n'LexLeanLaws.listFold_extend' depends on axioms: [propext]\n'LexLeanLaws.listFold_fusion' does not depend on any axioms\n'LexLeanLaws.listFold_nil' does not depend on any axioms\n'LexLeanLaws.listFold_pair' does not depend on any axioms\n'LexLeanLaws.listFold_prepend' depends on axioms: [propext]\n'LexLeanLaws.listFold_sub_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_sub_int_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.mapEntries_self' does not depend on any axioms\n'LexLeanLaws.mapFold_listFold' does not depend on any axioms\n'LexLeanLaws.mapSize_length' does not depend on any axioms\n'LexLeanLaws.quotient_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.quotient_nat' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.remainder_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.remainder_nat' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.setElements_self' does not depend on any axioms\n'LexLeanLaws.setFold_listFold' does not depend on any axioms\n'LexLeanLaws.setSize_length' does not depend on any axioms\n'LexLeanLaws.sumInt' does not depend on any axioms\n'LexLeanLaws.sumInt._f' does not depend on any axioms\n'LexLeanLaws.sumInt._sunfold' does not depend on any axioms\n'LexLeanLaws.sumInt._unsafe_rec' does not depend on any axioms\n'LexLeanLaws.sumInt.eq_1' does not depend on any axioms\n'LexLeanLaws.sumInt.eq_2' does not depend on any axioms\n'LexLeanLaws.sumInt.eq_def' does not depend on any axioms\n'LexLeanLaws.sumInt_add' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_append' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_cons' does not depend on any axioms\n'LexLeanLaws.sumInt_const' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_mul' depends on axioms: [propext]\n'LexLeanLaws.sumInt_mul_right' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_mul_self' depends on axioms: [propext]\n'LexLeanLaws.sumInt_neg' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_neg_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_nil' does not depend on any axioms\n'LexLeanLaws.sumInt_perm' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_reverse' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_sub' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat' does not depend on any axioms\n'LexLeanLaws.sumNat._f' does not depend on any axioms\n'LexLeanLaws.sumNat._sunfold' does not depend on any axioms\n'LexLeanLaws.sumNat._unsafe_rec' does not depend on any axioms\n'LexLeanLaws.sumNat.eq_1' does not depend on any axioms\n'LexLeanLaws.sumNat.eq_2' does not depend on any axioms\n'LexLeanLaws.sumNat.eq_def' does not depend on any axioms\n'LexLeanLaws.sumNat.match_1' does not depend on any axioms\n'LexLeanLaws.sumNat_add' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_append' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_cons' does not depend on any axioms\n'LexLeanLaws.sumNat_const' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_mul' does not depend on any axioms\n'LexLeanLaws.sumNat_mul_right' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_mul_self' does not depend on any axioms\n'LexLeanLaws.sumNat_nil' does not depend on any axioms\n'LexLeanLaws.sumNat_perm' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_reverse' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.tdiv_ediv' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.tmod_emod' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.quotient.eq_1' does not depend on any axioms\n'LexLeanRuntime.remainder.eq_1' does not depend on any axioms\n","stdout_sha256":"a4ba2d39c9cdfd5e40c41c5ccf4726d937fd192fc042b74bb56cc0651e28919e","tool":"lean"} diff --git a/examples/production/expected/verify/audit/LexLeanAudit.Aecf58505f4e2844618eff0bdc9a2ce9d.LexLeanRuntime.Portable.lean b/examples/production/expected/verify/audit/LexLeanAudit.Af5a58e441acc8b93ded11826c51cc7c8.LexLeanRuntime.Portable.lean similarity index 100% rename from examples/production/expected/verify/audit/LexLeanAudit.Aecf58505f4e2844618eff0bdc9a2ce9d.LexLeanRuntime.Portable.lean rename to examples/production/expected/verify/audit/LexLeanAudit.Af5a58e441acc8b93ded11826c51cc7c8.LexLeanRuntime.Portable.lean diff --git a/examples/production/expected/verify/audit/LexLeanAudit.Af5a58e441acc8b93ded11826c51cc7c8.LexLeanRuntime.Portable.process.json b/examples/production/expected/verify/audit/LexLeanAudit.Af5a58e441acc8b93ded11826c51cc7c8.LexLeanRuntime.Portable.process.json new file mode 100644 index 000000000..0f1a4e08f --- /dev/null +++ b/examples/production/expected/verify/audit/LexLeanAudit.Af5a58e441acc8b93ded11826c51cc7c8.LexLeanRuntime.Portable.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Af5a58e441acc8b93ded11826c51cc7c8.LexLeanRuntime.Portable.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Af5a58e441acc8b93ded11826c51cc7c8.LexLeanRuntime.Portable","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanRuntime.Appendable' does not depend on any axioms\n'LexLeanRuntime.Appendable.append' does not depend on any axioms\n'LexLeanRuntime.Appendable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Appendable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Appendable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Appendable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Appendable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Appendable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Appendable.recOn' does not depend on any axioms\n'LexLeanRuntime.Decimal' does not depend on any axioms\n'LexLeanRuntime.Decimal.casesOn' does not depend on any axioms\n'LexLeanRuntime.Decimal.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Decimal.format' does not depend on any axioms\n'LexLeanRuntime.Decimal.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Decimal.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Decimal.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Decimal.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Decimal.parse' does not depend on any axioms\n'LexLeanRuntime.Decimal.recOn' does not depend on any axioms\n'LexLeanRuntime.Fixed' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitAnd' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitNot' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitOr' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitXor' does not depend on any axioms\n'LexLeanRuntime.Fixed.casesOn' does not depend on any axioms\n'LexLeanRuntime.Fixed.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Fixed.fromInt' does not depend on any axioms\n'LexLeanRuntime.Fixed.maximum' does not depend on any axioms\n'LexLeanRuntime.Fixed.minimum' does not depend on any axioms\n'LexLeanRuntime.Fixed.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Fixed.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Fixed.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Fixed.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Fixed.recOn' does not depend on any axioms\n'LexLeanRuntime.Fixed.shiftLeft' does not depend on any axioms\n'LexLeanRuntime.Fixed.shiftRight' does not depend on any axioms\n'LexLeanRuntime.Fixed.toToMathInt' does not depend on any axioms\n'LexLeanRuntime.Indexable' does not depend on any axioms\n'LexLeanRuntime.Indexable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Indexable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Indexable.index' does not depend on any axioms\n'LexLeanRuntime.Indexable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Indexable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Indexable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Indexable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Indexable.recOn' does not depend on any axioms\n'LexLeanRuntime.Lengthable' does not depend on any axioms\n'LexLeanRuntime.Lengthable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Lengthable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Lengthable.length' does not depend on any axioms\n'LexLeanRuntime.Lengthable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Lengthable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Lengthable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Lengthable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Lengthable.recOn' does not depend on any axioms\n'LexLeanRuntime.Quotient' does not depend on any axioms\n'LexLeanRuntime.Quotient.casesOn' does not depend on any axioms\n'LexLeanRuntime.Quotient.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Quotient.isZero' does not depend on any axioms\n'LexLeanRuntime.Quotient.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Quotient.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Quotient.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Quotient.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Quotient.quotient' does not depend on any axioms\n'LexLeanRuntime.Quotient.recOn' does not depend on any axioms\n'LexLeanRuntime.Quotient.remainder' does not depend on any axioms\n'LexLeanRuntime.Sliceable' does not depend on any axioms\n'LexLeanRuntime.Sliceable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Sliceable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Sliceable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Sliceable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Sliceable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Sliceable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Sliceable.recOn' does not depend on any axioms\n'LexLeanRuntime.Sliceable.slice' does not depend on any axioms\n'LexLeanRuntime.ToMathInt' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.casesOn' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.noConfusion' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.recOn' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.toInt' does not depend on any axioms\n'LexLeanRuntime.append' does not depend on any axioms\n'LexLeanRuntime.bitAnd' does not depend on any axioms\n'LexLeanRuntime.bitNot' does not depend on any axioms\n'LexLeanRuntime.bitOr' does not depend on any axioms\n'LexLeanRuntime.bitXor' does not depend on any axioms\n'LexLeanRuntime.checkedAdd' does not depend on any axioms\n'LexLeanRuntime.checkedAddInt64' does not depend on any axioms\n'LexLeanRuntime.checkedConvert' does not depend on any axioms\n'LexLeanRuntime.checkedFromInt' does not depend on any axioms\n'LexLeanRuntime.checkedMultiply' does not depend on any axioms\n'LexLeanRuntime.checkedMultiplyInt64' does not depend on any axioms\n'LexLeanRuntime.checkedMultiplyInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.checkedNegate' does not depend on any axioms\n'LexLeanRuntime.checkedNegateInt64' does not depend on any axioms\n'LexLeanRuntime.checkedQuotient' does not depend on any axioms\n'LexLeanRuntime.checkedQuotientInt64' does not depend on any axioms\n'LexLeanRuntime.checkedSubtract' does not depend on any axioms\n'LexLeanRuntime.checkedSubtractInt64' does not depend on any axioms\n'LexLeanRuntime.compareBytes' depends on axioms: [propext]\n'LexLeanRuntime.divideMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._f' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._sunfold' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.equal' does not depend on any axioms\n'LexLeanRuntime.formatDecimal' does not depend on any axioms\n'LexLeanRuntime.index' does not depend on any axioms\n'LexLeanRuntime.instAppendableByteArray' does not depend on any axioms\n'LexLeanRuntime.instAppendableList' does not depend on any axioms\n'LexLeanRuntime.instDecimalInt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instDecimalInt.match_1' does not depend on any axioms\n'LexLeanRuntime.instDecimalOfFixedOfToString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instFixedInt16' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt32' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt64' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt8' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt16' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt32' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt64' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt8' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instIndexableByteArrayUInt8' does not depend on any axioms\n'LexLeanRuntime.instIndexableList' does not depend on any axioms\n'LexLeanRuntime.instLengthableByteArray' does not depend on any axioms\n'LexLeanRuntime.instLengthableList' does not depend on any axioms\n'LexLeanRuntime.instLengthableString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instQuotientInt' does not depend on any axioms\n'LexLeanRuntime.instQuotientNat' does not depend on any axioms\n'LexLeanRuntime.instSliceableByteArray' does not depend on any axioms\n'LexLeanRuntime.instSliceableList' does not depend on any axioms\n'LexLeanRuntime.instToMathIntInt' does not depend on any axioms\n'LexLeanRuntime.join' depends on axioms: [propext]\n'LexLeanRuntime.length' does not depend on any axioms\n'LexLeanRuntime.listIndex' does not depend on any axioms\n'LexLeanRuntime.listIndex._f' does not depend on any axioms\n'LexLeanRuntime.listIndex._sunfold' does not depend on any axioms\n'LexLeanRuntime.listIndex._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.listIndex.match_1' does not depend on any axioms\n'LexLeanRuntime.magnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.multiply' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._f' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._sunfold' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.negate' does not depend on any axioms\n'LexLeanRuntime.parseDecimal' does not depend on any axioms\n'LexLeanRuntime.quotient' does not depend on any axioms\n'LexLeanRuntime.remainder' does not depend on any axioms\n'LexLeanRuntime.shiftLeft' does not depend on any axioms\n'LexLeanRuntime.shiftRight' does not depend on any axioms\n'LexLeanRuntime.signedMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.slice' does not depend on any axioms\n'LexLeanRuntime.splitExact' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.subtract' does not depend on any axioms\n'LexLeanRuntime.utf8Decode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.utf8Encode' does not depend on any axioms\n","stdout_sha256":"73fea1d9e9e9f0a2f1363b9f284eeeb9e434430e9fa910260b9526bad864641e","tool":"lean"} diff --git a/examples/production/expected/verify/audit/LexLeanAudit.Aecf58505f4e2844618eff0bdc9a2ce9d.Production.Kernel.lean b/examples/production/expected/verify/audit/LexLeanAudit.Af5a58e441acc8b93ded11826c51cc7c8.Production.Kernel.lean similarity index 100% rename from examples/production/expected/verify/audit/LexLeanAudit.Aecf58505f4e2844618eff0bdc9a2ce9d.Production.Kernel.lean rename to examples/production/expected/verify/audit/LexLeanAudit.Af5a58e441acc8b93ded11826c51cc7c8.Production.Kernel.lean diff --git a/examples/production/expected/verify/audit/LexLeanAudit.Af5a58e441acc8b93ded11826c51cc7c8.Production.Kernel.process.json b/examples/production/expected/verify/audit/LexLeanAudit.Af5a58e441acc8b93ded11826c51cc7c8.Production.Kernel.process.json new file mode 100644 index 000000000..563797ebb --- /dev/null +++ b/examples/production/expected/verify/audit/LexLeanAudit.Af5a58e441acc8b93ded11826c51cc7c8.Production.Kernel.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Af5a58e441acc8b93ded11826c51cc7c8.Production.Kernel.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Af5a58e441acc8b93ded11826c51cc7c8.Production.Kernel","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Production.Kernel.Shape' does not depend on any axioms\n'Production.Kernel.applyTwice' does not depend on any axioms\n'Production.Kernel.area' does not depend on any axioms\n'Production.Kernel.area_square' does not depend on any axioms\n'Production.Kernel.countdown' depends on axioms: [propext, Quot.sound]\n'Production.Kernel.countdown_decreases' depends on axioms: [propext, Quot.sound]\n'Production.Kernel.firstOr' does not depend on any axioms\n'Production.Kernel.positive' does not depend on any axioms\n'Production.Kernel.total' does not depend on any axioms\n","stdout_sha256":"e7872f440e4a20755a5548c3999faa8297516295868ef0be032f4dff66e551ca","tool":"lean"} diff --git a/examples/production/expected/verify/audit/LexLeanAudit.Aecf58505f4e2844618eff0bdc9a2ce9d.Production.Main.lean b/examples/production/expected/verify/audit/LexLeanAudit.Af5a58e441acc8b93ded11826c51cc7c8.Production.Main.lean similarity index 100% rename from examples/production/expected/verify/audit/LexLeanAudit.Aecf58505f4e2844618eff0bdc9a2ce9d.Production.Main.lean rename to examples/production/expected/verify/audit/LexLeanAudit.Af5a58e441acc8b93ded11826c51cc7c8.Production.Main.lean diff --git a/examples/production/expected/verify/audit/LexLeanAudit.Af5a58e441acc8b93ded11826c51cc7c8.Production.Main.process.json b/examples/production/expected/verify/audit/LexLeanAudit.Af5a58e441acc8b93ded11826c51cc7c8.Production.Main.process.json new file mode 100644 index 000000000..411f637bb --- /dev/null +++ b/examples/production/expected/verify/audit/LexLeanAudit.Af5a58e441acc8b93ded11826c51cc7c8.Production.Main.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Af5a58e441acc8b93ded11826c51cc7c8.Production.Main.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Af5a58e441acc8b93ded11826c51cc7c8.Production.Main","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Production.Main.checkedSum' depends on axioms: [propext, Quot.sound]\n'Production.Main.halvings' depends on axioms: [propext, Quot.sound]\n'Production.Main.headOr' does not depend on any axioms\n'Production.Main.quadruple' does not depend on any axioms\n'Production.Main.quadruple_three' does not depend on any axioms\n'Production.Main.shapeArea' does not depend on any axioms\n'Production.Main.sumAll' does not depend on any axioms\n'Production.Main.sum_three' does not depend on any axioms\n","stdout_sha256":"ecef933d7d628ddb695b86ecad94d180c8c2ce3a0bd988fe1d6bedb4e601987f","tool":"lean"} diff --git a/examples/production/expected/verify/extract/LexLeanExtract.Xecf58505f4e2844618eff0bdc9a2ce9d.lean b/examples/production/expected/verify/extract/LexLeanExtract.Xf5a58e441acc8b93ded11826c51cc7c8.lean similarity index 100% rename from examples/production/expected/verify/extract/LexLeanExtract.Xecf58505f4e2844618eff0bdc9a2ce9d.lean rename to examples/production/expected/verify/extract/LexLeanExtract.Xf5a58e441acc8b93ded11826c51cc7c8.lean diff --git a/examples/production/expected/verify/extract/process.json b/examples/production/expected/verify/extract/process.json index 9e9477c04..b328fa696 100644 --- a/examples/production/expected/verify/extract/process.json +++ b/examples/production/expected/verify/extract/process.json @@ -1 +1 @@ -{"argv":["env","lean","$STAGING/extract/LexLeanExtract.Xecf58505f4e2844618eff0bdc9a2ce9d.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanExtract.Xecf58505f4e2844618eff0bdc9a2ce9d","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"{\"spec\":\"lexlean/lcnf-extraction/2\",\"lean\":{\"version\":\"4.32.1\",\"githash\":\"f054605aea4b840552cca2e725580bffd1e1b704\"},\"roots\":[\"Production.Main.checkedSum\",\"Production.Main.shapeArea\",\"Production.Main.quadruple\",\"Production.Main.halvings\",\"Production.Main.sumAll\",\"Production.Main.headOr\"],\"constants\":[{\"name\":\"LexLeanRuntime.Fixed\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.Fixed.mk\",\"parameters\":1,\"fields\":10,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"bvar\",\"index\":2}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":4},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":5},\"codomain\":{\"kind\":\"bvar\",\"index\":6}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":5},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":6},\"codomain\":{\"kind\":\"bvar\",\"index\":7}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":6},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":7},\"codomain\":{\"kind\":\"bvar\",\"index\":8}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":7},\"codomain\":{\"kind\":\"bvar\",\"index\":8}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":8},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":10}]}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":9},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":11}]}}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":10}]}}}}}}}}}}}}}]}},{\"name\":\"LexLeanRuntime.ToMathInt\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.ToMathInt.mk\",\"parameters\":1,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}}}}]}},{\"name\":\"LexLeanRuntime.checkedAdd\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"instHAdd\",\"HAdd.hAdd\",\"Int.instAdd\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.checkedFromInt\",\"LexLeanRuntime.Fixed.toToMathInt\",\"LexLeanRuntime.ToMathInt.toInt\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}},\"parameters\":[{\"id\":\"_uniq.19\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"borrow\":false},{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instAdd\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.24\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":0,\"value\":\"_uniq.20\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.ToMathInt\",\"index\":0,\"value\":\"_uniq.49\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.53\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.53\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.25\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedFromInt\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}}}}}}}}}},\"uses\":[\"Add\",\"HAdd\",\"Int\",\"Option\",\"instHAdd\",\"Int.instAdd\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.ToMathInt\",\"LexLeanRuntime.checkedFromInt\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.checkedFromInt\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"Option\",\"ite\",\"Int.decLt\",\"Int.instLTInt\",\"LT.lt\",\"LexLeanRuntime.Fixed\",\"Option.none\",\"Option.some\",\"LexLeanRuntime.Fixed.fromInt\",\"LexLeanRuntime.Fixed.maximum\",\"LexLeanRuntime.Fixed.minimum\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]}}}},\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"borrow\":false},{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":2,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"discriminant\":\"_uniq.33\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":3,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.43\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"discriminant\":\"_uniq.44\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.45\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":1,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.47\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.49\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.50\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.51\"}}}]}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.53\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.54\"}}}]}}}},\"uses\":[\"Decidable\",\"Int\",\"Option\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Int.decLt\",\"LexLeanRuntime.Fixed\",\"Option.none\",\"Option.some\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instFixedUInt32\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"Nat\",\"Option\",\"UInt32\",\"instLTNat\",\"instOfNat\",\"instOfNatNat\",\"ite\",\"Int.ofNat\",\"LT.lt\",\"Nat.decLt\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"UInt32.complement\",\"UInt32.land\",\"UInt32.lor\",\"UInt32.ofInt\",\"UInt32.shiftLeft\",\"UInt32.shiftRight\",\"UInt32.toNat\",\"UInt32.xor\",\"LexLeanRuntime.Fixed.mk\",\"LexLeanRuntime.ToMathInt.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.16\",\"parameters\":[{\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int.ofNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.15\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.ofInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.20\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"4294967295\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.23\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.land\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.lor\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.xor\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.complement\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.52\",\"parameters\":[{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"32\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.43\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"discriminant\":\"_uniq.45\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.46\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.47\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.48\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.shiftLeft\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.50\"}}}}]}}}}}}},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.76\",\"parameters\":[{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"32\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.66\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.67\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"fvar\",\"id\":\"_uniq.68\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"discriminant\":\"_uniq.69\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.71\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.72\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.shiftRight\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.74\"}}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.52\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.77\"}}}}}}}}}}}}}}}}}},\"uses\":[\"Decidable\",\"Int\",\"Nat\",\"OfNat\",\"Option\",\"UInt32\",\"instOfNat\",\"instOfNatNat\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Int.ofNat\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.ToMathInt\",\"Nat.decLt\",\"Option.none\",\"Option.some\",\"UInt32.complement\",\"UInt32.land\",\"UInt32.lor\",\"UInt32.ofInt\",\"UInt32.shiftLeft\",\"UInt32.shiftRight\",\"UInt32.toNat\",\"UInt32.xor\",\"LexLeanRuntime.Fixed.mk\",\"LexLeanRuntime.ToMathInt.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.multiply\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Mul\",\"instHMul\",\"HMul.hMul\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Mul\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}},\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Mul\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"borrow\":false},{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"borrow\":false},{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HMul\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instHMul\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HMul\",\"index\":0,\"value\":\"_uniq.39\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}}}},\"uses\":[\"HMul\",\"Mul\",\"instHMul\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.subtract\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Sub\",\"instHSub\",\"HSub.hSub\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}},\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"borrow\":false},{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"borrow\":false},{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HSub\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instHSub\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HSub\",\"index\":0,\"value\":\"_uniq.39\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}}}},\"uses\":[\"HSub\",\"Sub\",\"instHSub\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.Fixed.fromInt\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Fixed\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Fixed.maximum\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Fixed\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Fixed.minimum\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Fixed\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Fixed.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Fixed.toToMathInt\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Fixed\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.ToMathInt.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.ToMathInt.toInt\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.ToMathInt\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Production.Kernel.Shape\",\"kind\":\"inductive\",\"module\":\"Production.Kernel\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Production.Kernel.Shape.circle\",\"parameters\":0,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Production.Kernel.Shape\",\"levels\":[]}}},{\"name\":\"Production.Kernel.Shape.rectangle\",\"parameters\":0,\"fields\":2,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Production.Kernel.Shape\",\"levels\":[]}}}}]}},{\"name\":\"Production.Kernel.applyTwice\",\"kind\":\"definition\",\"module\":\"Production.Kernel\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.16\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.16\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.19\"}}}},\"uses\":[\"Nat\"]},\"inductive\":null},{\"name\":\"Production.Kernel.area\",\"kind\":\"definition\",\"module\":\"Production.Kernel\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instMulNat\",\"instOfNatNat\",\"LexLeanRuntime.multiply\",\"OfNat.ofNat\",\"Production.Kernel.Shape\",\"Production.Kernel.area.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Production.Kernel.Shape\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Production.Kernel.Shape\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.43\",\"parameters\":[{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Mul\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instMulNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.multiply\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.40\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.multiply\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.42\"}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.43\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.55\",\"parameters\":[{\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Mul\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instMulNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.multiply\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.54\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.55\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Production.Kernel.Shape\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.30\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Production.Kernel.Shape.circle\",\"parameters\":[{\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.44\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.64\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.65\"}}},{\"kind\":\"constructor\",\"constructor\":\"Production.Kernel.Shape.rectangle\",\"parameters\":[{\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.66\"},{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.68\"}}}]}}}}}},\"uses\":[\"Mul\",\"Nat\",\"OfNat\",\"instMulNat\",\"instOfNatNat\",\"LexLeanRuntime.multiply\",\"Production.Kernel.Shape\",\"Production.Kernel.Shape.circle\",\"Production.Kernel.Shape.rectangle\"]},\"inductive\":null},{\"name\":\"Production.Kernel.countdown\",\"kind\":\"definition\",\"module\":\"Production.Kernel\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"PSigma.mk\",\"Production.Kernel.countdown._unary\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.41\",\"parameters\":[{\"id\":\"_uniq.40\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.33\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.41\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.60\",\"parameters\":[{\"id\":\"_uniq.46\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.49\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.53\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.56\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.54\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Production.Kernel.countdown\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.59\"}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.60\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.75\",\"parameters\":[{\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"discriminant\":\"_uniq.66\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.61\"}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.42\"}}]}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.77\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.78\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.75\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.79\"},{\"kind\":\"erased\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.80\"}}}}}}}}}}}},\"uses\":[\"Add\",\"Bool\",\"HAdd\",\"Nat\",\"OfNat\",\"Sub\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"instSubNat\",\"Bool.false\",\"Bool.true\",\"LexLeanRuntime.subtract\",\"Nat.blt\",\"Production.Kernel.countdown\"]},\"inductive\":null},{\"name\":\"Production.Kernel.countdown_decreases\",\"kind\":\"theorem\",\"module\":\"Production.Kernel\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Nat\",\"Not\",\"congrArg\",\"id\",\"instHSub\",\"instLTNat\",\"instOfNatNat\",\"instSubNat\",\"Bool.false\",\"Bool.true\",\"Decidable.byContradiction\",\"Eq.mp\",\"Eq.trans\",\"HSub.hSub\",\"LT.lt\",\"LexLeanRuntime.subtract\",\"Nat.blt\",\"Nat.blt_eq\",\"Nat.decLt\",\"OfNat.ofNat\",\"_private.Production.Kernel.0.Production.Kernel.countdown_decreases._proof_1_32\",\"_private.Production.Kernel.0.Production.Kernel.countdown_decreases._simp_1_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Production.Kernel.firstOr\",\"kind\":\"definition\",\"module\":\"Production.Kernel\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Unit\",\"Production.Kernel.firstOr.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"bvar\",\"index\":2}}}},\"parameters\":[{\"id\":\"_uniq.51\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"borrow\":false},{\"id\":\"_uniq.53\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.61\",\"parameters\":[{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.53\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.61\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.73\",\"parameters\":[{\"id\":\"_uniq.71\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},\"borrow\":false},{\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.71\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.73\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},\"discriminant\":\"_uniq.52\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.62\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.84\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.85\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},\"borrow\":false},{\"id\":\"_uniq.86\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.74\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.85\"},{\"kind\":\"fvar\",\"id\":\"_uniq.86\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.87\"}}}]}}}}}},\"uses\":[\"List\",\"PUnit\",\"List.cons\",\"List.nil\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"Production.Kernel.total\",\"kind\":\"definition\",\"module\":\"Production.Kernel\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"List.brecOn\",\"Production.Kernel.total._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.39\",\"parameters\":[{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.37\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.38\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.39\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.54\",\"parameters\":[{\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.50\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Production.Kernel.total\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.51\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.47\"},{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.53\"}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.54\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.29\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.40\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.64\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.65\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.67\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.55\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.66\"},{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.68\"}}}]}}}}}},\"uses\":[\"Add\",\"HAdd\",\"List\",\"Nat\",\"OfNat\",\"PUnit\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"List.cons\",\"List.nil\",\"Unit.unit\",\"Production.Kernel.total\"]},\"inductive\":null},{\"name\":\"Production.Main.checkedSum\",\"kind\":\"definition\",\"module\":\"Production.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"UInt32\",\"LexLeanRuntime.checkedAdd\",\"LexLeanRuntime.instFixedUInt32\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instFixedUInt32\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedAdd\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.14\"}}}},\"uses\":[\"Option\",\"UInt32\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.checkedAdd\",\"LexLeanRuntime.instFixedUInt32\"]},\"inductive\":null},{\"name\":\"Production.Main.halvings\",\"kind\":\"definition\",\"module\":\"Production.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"OfNat.ofNat\",\"Production.Kernel.countdown\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.8\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Production.Kernel.countdown\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.10\"}}}}}},\"uses\":[\"Nat\",\"OfNat\",\"instOfNatNat\",\"Production.Kernel.countdown\"]},\"inductive\":null},{\"name\":\"Production.Main.headOr\",\"kind\":\"definition\",\"module\":\"Production.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"instOfNatNat\",\"OfNat.ofNat\",\"Production.Kernel.firstOr\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.8\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Production.Kernel.firstOr\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.10\"}}}}}},\"uses\":[\"List\",\"Nat\",\"OfNat\",\"instOfNatNat\",\"Production.Kernel.firstOr\"]},\"inductive\":null},{\"name\":\"Production.Main.quadruple\",\"kind\":\"definition\",\"module\":\"Production.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instAddNat\",\"instHAdd\",\"HAdd.hAdd\",\"Production.Kernel.applyTwice\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.30\",\"parameters\":[{\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.11\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.28\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.29\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Production.Kernel.applyTwice\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}}}},\"uses\":[\"Add\",\"HAdd\",\"Nat\",\"instAddNat\",\"instHAdd\",\"Production.Kernel.applyTwice\"]},\"inductive\":null},{\"name\":\"Production.Main.shapeArea\",\"kind\":\"definition\",\"module\":\"Production.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Production.Kernel.area\",\"Production.Kernel.Shape.rectangle\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Production.Kernel.Shape\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Production.Kernel.Shape.rectangle\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Production.Kernel.area\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.16\"}}}},\"uses\":[\"Nat\",\"Production.Kernel.Shape\",\"Production.Kernel.area\",\"Production.Kernel.Shape.rectangle\"]},\"inductive\":null},{\"name\":\"Production.Main.sumAll\",\"kind\":\"definition\",\"module\":\"Production.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Production.Kernel.total\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Production.Kernel.total\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}},\"uses\":[\"List\",\"Nat\",\"Production.Kernel.total\"]},\"inductive\":null},{\"name\":\"Production.Kernel.Shape.casesOn\",\"kind\":\"definition\",\"module\":\"Production.Kernel\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Production.Kernel.Shape\",\"Production.Kernel.Shape.circle\",\"Production.Kernel.Shape.rec\",\"Production.Kernel.Shape.rectangle\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Production.Kernel.Shape.circle\",\"kind\":\"constructor\",\"module\":\"Production.Kernel\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Production.Kernel.Shape.rec\",\"kind\":\"recursor\",\"module\":\"Production.Kernel\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"recursor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Production.Kernel.Shape.rectangle\",\"kind\":\"constructor\",\"module\":\"Production.Kernel\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Production.Kernel.area.match_1\",\"kind\":\"definition\",\"module\":\"Production.Kernel\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Production.Kernel.Shape\",\"Production.Kernel.Shape.casesOn\",\"Production.Kernel.Shape.circle\",\"Production.Kernel.Shape.rectangle\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Production.Kernel.countdown._unary\",\"kind\":\"definition\",\"module\":\"Production.Kernel\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Eq\",\"InvImage\",\"Nat\",\"PSigma\",\"instAddNat\",\"instHAdd\",\"instLTNat\",\"instOfNatNat\",\"instSubNat\",\"Bool.false\",\"Bool.true\",\"HAdd.hAdd\",\"LT.lt\",\"LexLeanRuntime.subtract\",\"Nat.blt\",\"OfNat.ofNat\",\"PSigma.casesOn\",\"PSigma.mk\",\"WellFounded.Nat.fix\",\"Production.Kernel.countdown.match_1\",\"Production.Kernel.countdown._unary._proof_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Production.Kernel.countdown.match_1\",\"kind\":\"definition\",\"module\":\"Production.Kernel\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Bool.casesOn\",\"Bool.false\",\"Bool.true\",\"Eq.refl\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Production.Kernel.firstOr.match_1\",\"kind\":\"definition\",\"module\":\"Production.Kernel\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Unit\",\"List.casesOn\",\"List.cons\",\"List.nil\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Production.Kernel.total._f\",\"kind\":\"definition\",\"module\":\"Production.Kernel\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"List\",\"Nat\",\"Unit\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"HAdd.hAdd\",\"List.below\",\"List.cons\",\"List.nil\",\"OfNat.ofNat\",\"Production.Kernel.total.match_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Production.Kernel.total.match_1\",\"kind\":\"definition\",\"module\":\"Production.Kernel\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Unit\",\"List.casesOn\",\"List.cons\",\"List.nil\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"_private.Production.Kernel.0.Production.Kernel.countdown_decreases._proof_1_32\",\"kind\":\"theorem\",\"module\":\"Production.Kernel\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":true,\"kernel_uses\":[\"And\",\"Bool\",\"Eq\",\"False\",\"Int\",\"Nat\",\"Not\",\"id\",\"instDecidableEqBool\",\"instHAdd\",\"instHSub\",\"instLENat\",\"instLTNat\",\"instNatCastInt\",\"instOfNat\",\"instOfNatNat\",\"instSubNat\",\"le_of_le_of_eq\",\"of_decide_eq_true\",\"And.left\",\"And.right\",\"Bool.true\",\"Decidable.decide\",\"Eq.refl\",\"Eq.symm\",\"Eq.trans\",\"HAdd.hAdd\",\"HSub.hSub\",\"Int.add_one_le_of_lt\",\"Int.instAdd\",\"Int.instLEInt\",\"Int.instNegInt\",\"Int.instSub\",\"Int.sub_eq_zero_of_eq\",\"Int.sub_nonneg_of_le\",\"LE.le\",\"LT.lt\",\"List.cons\",\"List.nil\",\"Nat.cast\",\"Nat.le_of_not_lt\",\"Neg.neg\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Or.elim\",\"Lean.Omega.LinearCombo\",\"Lean.Omega.tidy_sat\",\"Lean.Omega.Coeffs.ofList\",\"Lean.Omega.Constraint.addEquality_sat\",\"Lean.Omega.Constraint.addInequality_sat\",\"Lean.Omega.Constraint.combine_sat'\",\"Lean.Omega.Constraint.isImpossible\",\"Lean.Omega.Constraint.mk\",\"Lean.Omega.Constraint.not_sat'_of_isImpossible\",\"Lean.Omega.Int.add_congr\",\"Lean.Omega.Int.ofNat_le_of_le\",\"Lean.Omega.Int.ofNat_lt_of_lt\",\"Lean.Omega.Int.ofNat_sub_dichotomy\",\"Lean.Omega.Int.sub_congr\",\"Lean.Omega.LinearCombo.add_eval\",\"Lean.Omega.LinearCombo.coordinate\",\"Lean.Omega.LinearCombo.coordinate_eval_0\",\"Lean.Omega.LinearCombo.coordinate_eval_1\",\"Lean.Omega.LinearCombo.eval\",\"Lean.Omega.LinearCombo.instAdd\",\"Lean.Omega.LinearCombo.instSub\",\"Lean.Omega.LinearCombo.mk\",\"Lean.Omega.LinearCombo.sub_eval\"],\"declaration\":null,\"inductive\":null},{\"name\":\"_private.Production.Kernel.0.Production.Kernel.countdown_decreases._simp_1_1\",\"kind\":\"theorem\",\"module\":\"Production.Kernel\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Eq\",\"Not\",\"Bool.false\",\"Bool.not_eq_true\",\"Bool.true\",\"Eq.symm\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Production.Kernel.countdown._unary._proof_1\",\"kind\":\"theorem\",\"module\":\"Production.Kernel\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Eq\",\"InvImage\",\"Nat\",\"PSigma\",\"id\",\"instAddNat\",\"instHAdd\",\"instLTNat\",\"instOfNatNat\",\"instSubNat\",\"Bool.false\",\"HAdd.hAdd\",\"LT.lt\",\"LexLeanRuntime.subtract\",\"Nat.blt\",\"OfNat.ofNat\",\"PSigma.casesOn\",\"PSigma.mk\",\"Production.Kernel.countdown_decreases\"],\"declaration\":null,\"inductive\":null}],\"externals\":[{\"name\":\"Add\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Bool\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Decidable\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"HAdd\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"HMul\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"HSub\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Int\",\"kind\":\"inductive\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"List\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Mul\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Nat\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"OfNat\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Option\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"PUnit\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Sub\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"UInt32\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"instAddNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instHAdd\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instHMul\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instHSub\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instMulNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instOfNat\",\"kind\":\"definition\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instOfNatNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instSubNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Bool.false\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Bool\"},{\"name\":\"Bool.true\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Bool\"},{\"name\":\"Decidable.isFalse\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Decidable\"},{\"name\":\"Decidable.isTrue\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Decidable\"},{\"name\":\"Int.decLt\",\"kind\":\"definition\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int.instAdd\",\"kind\":\"definition\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int.ofNat\",\"kind\":\"constructor\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":true,\"inductive_type\":\"Int\"},{\"name\":\"List.cons\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"List\"},{\"name\":\"List.nil\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"List\"},{\"name\":\"Nat.blt\",\"kind\":\"definition\",\"module\":\"Init.Data.Nat.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.decLt\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Option.none\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Option\"},{\"name\":\"Option.some\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Option\"},{\"name\":\"UInt32.complement\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt32.land\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt32.lor\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt32.ofInt\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt32.shiftLeft\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt32.shiftRight\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt32.toNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt32.xor\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Unit.unit\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true}]}\n","stdout_sha256":"11f2b986da02936d686ec942597cc5e399980e686510eed491fe44180e9751e0","tool":"lean"} +{"argv":["env","lean","$STAGING/extract/LexLeanExtract.Xf5a58e441acc8b93ded11826c51cc7c8.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanExtract.Xf5a58e441acc8b93ded11826c51cc7c8","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"{\"spec\":\"lexlean/lcnf-extraction/2\",\"lean\":{\"version\":\"4.32.1\",\"githash\":\"f054605aea4b840552cca2e725580bffd1e1b704\"},\"roots\":[\"Production.Main.checkedSum\",\"Production.Main.shapeArea\",\"Production.Main.quadruple\",\"Production.Main.halvings\",\"Production.Main.sumAll\",\"Production.Main.headOr\"],\"constants\":[{\"name\":\"LexLeanRuntime.Fixed\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.Fixed.mk\",\"parameters\":1,\"fields\":10,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"bvar\",\"index\":2}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":4},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":5},\"codomain\":{\"kind\":\"bvar\",\"index\":6}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":5},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":6},\"codomain\":{\"kind\":\"bvar\",\"index\":7}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":6},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":7},\"codomain\":{\"kind\":\"bvar\",\"index\":8}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":7},\"codomain\":{\"kind\":\"bvar\",\"index\":8}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":8},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":10}]}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":9},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":11}]}}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":10}]}}}}}}}}}}}}}]}},{\"name\":\"LexLeanRuntime.ToMathInt\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.ToMathInt.mk\",\"parameters\":1,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}}}}]}},{\"name\":\"LexLeanRuntime.checkedAdd\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"instHAdd\",\"HAdd.hAdd\",\"Int.instAdd\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.checkedFromInt\",\"LexLeanRuntime.Fixed.toToMathInt\",\"LexLeanRuntime.ToMathInt.toInt\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}},\"parameters\":[{\"id\":\"_uniq.19\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"borrow\":false},{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.instAdd\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.24\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":0,\"value\":\"_uniq.20\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.ToMathInt\",\"index\":0,\"value\":\"_uniq.49\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.53\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.53\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.25\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedFromInt\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}}}}}}}}}},\"uses\":[\"Add\",\"HAdd\",\"Int\",\"Option\",\"instHAdd\",\"Int.instAdd\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.ToMathInt\",\"LexLeanRuntime.checkedFromInt\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.checkedFromInt\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"Option\",\"ite\",\"Int.decLt\",\"Int.instLTInt\",\"LT.lt\",\"LexLeanRuntime.Fixed\",\"Option.none\",\"Option.some\",\"LexLeanRuntime.Fixed.fromInt\",\"LexLeanRuntime.Fixed.maximum\",\"LexLeanRuntime.Fixed.minimum\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]}}}},\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"borrow\":false},{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":2,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"discriminant\":\"_uniq.33\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":3,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Int.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.43\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"discriminant\":\"_uniq.44\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.45\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Fixed\",\"index\":1,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.47\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.49\"}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.50\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.51\"}}}]}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.53\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.54\"}}}]}}}},\"uses\":[\"Decidable\",\"Int\",\"Option\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Int.decLt\",\"LexLeanRuntime.Fixed\",\"Option.none\",\"Option.some\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instFixedUInt32\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Int\",\"Nat\",\"Option\",\"UInt32\",\"instLTNat\",\"instOfNat\",\"instOfNatNat\",\"ite\",\"Int.ofNat\",\"LT.lt\",\"Nat.decLt\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"UInt32.complement\",\"UInt32.land\",\"UInt32.lor\",\"UInt32.ofInt\",\"UInt32.shiftLeft\",\"UInt32.shiftRight\",\"UInt32.toNat\",\"UInt32.xor\",\"LexLeanRuntime.Fixed.mk\",\"LexLeanRuntime.ToMathInt.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.16\",\"parameters\":[{\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Int.ofNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.15\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.ToMathInt.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.ofInt\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.20\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"4294967295\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Int\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.23\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.land\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.lor\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.xor\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.complement\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.52\",\"parameters\":[{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"32\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.43\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"discriminant\":\"_uniq.45\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.46\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.47\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.48\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.shiftLeft\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.50\"}}}}]}}}}}}},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.76\",\"parameters\":[{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.toNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"32\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.66\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.67\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.decLt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"fvar\",\"id\":\"_uniq.68\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"discriminant\":\"_uniq.69\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.71\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.72\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"UInt32.shiftRight\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.74\"}}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.52\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.77\"}}}}}}}}}}}}}}}}}},\"uses\":[\"Decidable\",\"Int\",\"Nat\",\"OfNat\",\"Option\",\"UInt32\",\"instOfNat\",\"instOfNatNat\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Int.ofNat\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.ToMathInt\",\"Nat.decLt\",\"Option.none\",\"Option.some\",\"UInt32.complement\",\"UInt32.land\",\"UInt32.lor\",\"UInt32.ofInt\",\"UInt32.shiftLeft\",\"UInt32.shiftRight\",\"UInt32.toNat\",\"UInt32.xor\",\"LexLeanRuntime.Fixed.mk\",\"LexLeanRuntime.ToMathInt.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.multiply\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Mul\",\"instHMul\",\"HMul.hMul\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Mul\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}},\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Mul\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"borrow\":false},{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"borrow\":false},{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HMul\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instHMul\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HMul\",\"index\":0,\"value\":\"_uniq.39\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}}}},\"uses\":[\"HMul\",\"Mul\",\"instHMul\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.subtract\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Sub\",\"instHSub\",\"HSub.hSub\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}},\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"borrow\":false},{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"borrow\":false},{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HSub\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instHSub\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HSub\",\"index\":0,\"value\":\"_uniq.39\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}}}},\"uses\":[\"HSub\",\"Sub\",\"instHSub\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.Fixed.fromInt\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Fixed\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Fixed.maximum\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Fixed\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Fixed.minimum\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Fixed\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Fixed.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Fixed.toToMathInt\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Fixed\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.ToMathInt.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.ToMathInt.toInt\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.ToMathInt\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Production.Kernel.Shape\",\"kind\":\"inductive\",\"module\":\"Production.Kernel\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Production.Kernel.Shape.circle\",\"parameters\":0,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Production.Kernel.Shape\",\"levels\":[]}}},{\"name\":\"Production.Kernel.Shape.rectangle\",\"parameters\":0,\"fields\":2,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Production.Kernel.Shape\",\"levels\":[]}}}}]}},{\"name\":\"Production.Kernel.applyTwice\",\"kind\":\"definition\",\"module\":\"Production.Kernel\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.16\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.16\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.19\"}}}},\"uses\":[\"Nat\"]},\"inductive\":null},{\"name\":\"Production.Kernel.area\",\"kind\":\"definition\",\"module\":\"Production.Kernel\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instMulNat\",\"instOfNatNat\",\"LexLeanRuntime.multiply\",\"OfNat.ofNat\",\"Production.Kernel.Shape\",\"Production.Kernel.area.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Production.Kernel.Shape\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Production.Kernel.Shape\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.43\",\"parameters\":[{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Mul\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instMulNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.multiply\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.40\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.multiply\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.42\"}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.43\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.55\",\"parameters\":[{\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Mul\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instMulNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.multiply\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.54\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.55\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Production.Kernel.Shape\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.30\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Production.Kernel.Shape.circle\",\"parameters\":[{\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.44\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.64\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.65\"}}},{\"kind\":\"constructor\",\"constructor\":\"Production.Kernel.Shape.rectangle\",\"parameters\":[{\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.66\"},{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.68\"}}}]}}}}}},\"uses\":[\"Mul\",\"Nat\",\"OfNat\",\"instMulNat\",\"instOfNatNat\",\"LexLeanRuntime.multiply\",\"Production.Kernel.Shape\",\"Production.Kernel.Shape.circle\",\"Production.Kernel.Shape.rectangle\"]},\"inductive\":null},{\"name\":\"Production.Kernel.countdown\",\"kind\":\"definition\",\"module\":\"Production.Kernel\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"PSigma.mk\",\"Production.Kernel.countdown._unary\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.41\",\"parameters\":[{\"id\":\"_uniq.40\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.33\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.41\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.60\",\"parameters\":[{\"id\":\"_uniq.46\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.49\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.53\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.56\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.54\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Production.Kernel.countdown\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.59\"}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.60\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.75\",\"parameters\":[{\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"discriminant\":\"_uniq.66\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.61\"}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.42\"}}]}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.77\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.78\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.75\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.79\"},{\"kind\":\"erased\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.80\"}}}}}}}}}}}},\"uses\":[\"Add\",\"Bool\",\"HAdd\",\"Nat\",\"OfNat\",\"Sub\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"instSubNat\",\"Bool.false\",\"Bool.true\",\"LexLeanRuntime.subtract\",\"Nat.blt\",\"Production.Kernel.countdown\"]},\"inductive\":null},{\"name\":\"Production.Kernel.countdown_decreases\",\"kind\":\"theorem\",\"module\":\"Production.Kernel\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Nat\",\"Not\",\"congrArg\",\"id\",\"instHSub\",\"instLTNat\",\"instOfNatNat\",\"instSubNat\",\"Bool.false\",\"Bool.true\",\"Decidable.byContradiction\",\"Eq.mp\",\"Eq.trans\",\"HSub.hSub\",\"LT.lt\",\"LexLeanRuntime.subtract\",\"Nat.blt\",\"Nat.blt_eq\",\"Nat.decLt\",\"OfNat.ofNat\",\"_private.Production.Kernel.0.Production.Kernel.countdown_decreases._proof_1_32\",\"_private.Production.Kernel.0.Production.Kernel.countdown_decreases._simp_1_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Production.Kernel.firstOr\",\"kind\":\"definition\",\"module\":\"Production.Kernel\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Unit\",\"Production.Kernel.firstOr.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"bvar\",\"index\":2}}}},\"parameters\":[{\"id\":\"_uniq.51\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"borrow\":false},{\"id\":\"_uniq.53\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.61\",\"parameters\":[{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.53\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.61\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.73\",\"parameters\":[{\"id\":\"_uniq.71\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},\"borrow\":false},{\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.71\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.73\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},\"discriminant\":\"_uniq.52\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.62\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.84\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.85\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},\"borrow\":false},{\"id\":\"_uniq.86\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.74\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.85\"},{\"kind\":\"fvar\",\"id\":\"_uniq.86\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.87\"}}}]}}}}}},\"uses\":[\"List\",\"PUnit\",\"List.cons\",\"List.nil\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"Production.Kernel.total\",\"kind\":\"definition\",\"module\":\"Production.Kernel\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"List.brecOn\",\"Production.Kernel.total._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.39\",\"parameters\":[{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.37\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.38\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.39\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.54\",\"parameters\":[{\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.50\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Production.Kernel.total\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.51\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.47\"},{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.53\"}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.54\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.29\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.40\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.64\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.65\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.67\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.55\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.66\"},{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.68\"}}}]}}}}}},\"uses\":[\"Add\",\"HAdd\",\"List\",\"Nat\",\"OfNat\",\"PUnit\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"List.cons\",\"List.nil\",\"Unit.unit\",\"Production.Kernel.total\"]},\"inductive\":null},{\"name\":\"Production.Main.checkedSum\",\"kind\":\"definition\",\"module\":\"Production.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"UInt32\",\"LexLeanRuntime.checkedAdd\",\"LexLeanRuntime.instFixedUInt32\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Fixed\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instFixedUInt32\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.checkedAdd\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt32\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.14\"}}}},\"uses\":[\"Option\",\"UInt32\",\"LexLeanRuntime.Fixed\",\"LexLeanRuntime.checkedAdd\",\"LexLeanRuntime.instFixedUInt32\"]},\"inductive\":null},{\"name\":\"Production.Main.halvings\",\"kind\":\"definition\",\"module\":\"Production.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"OfNat.ofNat\",\"Production.Kernel.countdown\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.8\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Production.Kernel.countdown\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.10\"}}}}}},\"uses\":[\"Nat\",\"OfNat\",\"instOfNatNat\",\"Production.Kernel.countdown\"]},\"inductive\":null},{\"name\":\"Production.Main.headOr\",\"kind\":\"definition\",\"module\":\"Production.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"instOfNatNat\",\"OfNat.ofNat\",\"Production.Kernel.firstOr\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.8\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Production.Kernel.firstOr\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.10\"}}}}}},\"uses\":[\"List\",\"Nat\",\"OfNat\",\"instOfNatNat\",\"Production.Kernel.firstOr\"]},\"inductive\":null},{\"name\":\"Production.Main.quadruple\",\"kind\":\"definition\",\"module\":\"Production.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instAddNat\",\"instHAdd\",\"HAdd.hAdd\",\"Production.Kernel.applyTwice\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.30\",\"parameters\":[{\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.11\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.28\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.29\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Production.Kernel.applyTwice\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}}}},\"uses\":[\"Add\",\"HAdd\",\"Nat\",\"instAddNat\",\"instHAdd\",\"Production.Kernel.applyTwice\"]},\"inductive\":null},{\"name\":\"Production.Main.shapeArea\",\"kind\":\"definition\",\"module\":\"Production.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Production.Kernel.area\",\"Production.Kernel.Shape.rectangle\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Production.Kernel.Shape\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Production.Kernel.Shape.rectangle\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Production.Kernel.area\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.16\"}}}},\"uses\":[\"Nat\",\"Production.Kernel.Shape\",\"Production.Kernel.area\",\"Production.Kernel.Shape.rectangle\"]},\"inductive\":null},{\"name\":\"Production.Main.sumAll\",\"kind\":\"definition\",\"module\":\"Production.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Production.Kernel.total\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Production.Kernel.total\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}},\"uses\":[\"List\",\"Nat\",\"Production.Kernel.total\"]},\"inductive\":null},{\"name\":\"Production.Kernel.Shape.casesOn\",\"kind\":\"definition\",\"module\":\"Production.Kernel\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Production.Kernel.Shape\",\"Production.Kernel.Shape.circle\",\"Production.Kernel.Shape.rec\",\"Production.Kernel.Shape.rectangle\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Production.Kernel.Shape.circle\",\"kind\":\"constructor\",\"module\":\"Production.Kernel\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Production.Kernel.Shape.rec\",\"kind\":\"recursor\",\"module\":\"Production.Kernel\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"recursor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Production.Kernel.Shape.rectangle\",\"kind\":\"constructor\",\"module\":\"Production.Kernel\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Production.Kernel.area.match_1\",\"kind\":\"definition\",\"module\":\"Production.Kernel\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Production.Kernel.Shape\",\"Production.Kernel.Shape.casesOn\",\"Production.Kernel.Shape.circle\",\"Production.Kernel.Shape.rectangle\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Production.Kernel.countdown._unary\",\"kind\":\"definition\",\"module\":\"Production.Kernel\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Eq\",\"InvImage\",\"Nat\",\"PSigma\",\"instAddNat\",\"instHAdd\",\"instLTNat\",\"instOfNatNat\",\"instSubNat\",\"Bool.false\",\"Bool.true\",\"HAdd.hAdd\",\"LT.lt\",\"LexLeanRuntime.subtract\",\"Nat.blt\",\"OfNat.ofNat\",\"PSigma.casesOn\",\"PSigma.mk\",\"WellFounded.Nat.fix\",\"Production.Kernel.countdown.match_1\",\"Production.Kernel.countdown._unary._proof_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Production.Kernel.countdown.match_1\",\"kind\":\"definition\",\"module\":\"Production.Kernel\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Bool.casesOn\",\"Bool.false\",\"Bool.true\",\"Eq.refl\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Production.Kernel.firstOr.match_1\",\"kind\":\"definition\",\"module\":\"Production.Kernel\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Unit\",\"List.casesOn\",\"List.cons\",\"List.nil\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Production.Kernel.total._f\",\"kind\":\"definition\",\"module\":\"Production.Kernel\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"List\",\"Nat\",\"Unit\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"HAdd.hAdd\",\"List.below\",\"List.cons\",\"List.nil\",\"OfNat.ofNat\",\"Production.Kernel.total.match_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Production.Kernel.total.match_1\",\"kind\":\"definition\",\"module\":\"Production.Kernel\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Unit\",\"List.casesOn\",\"List.cons\",\"List.nil\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"_private.Production.Kernel.0.Production.Kernel.countdown_decreases._proof_1_32\",\"kind\":\"theorem\",\"module\":\"Production.Kernel\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":true,\"kernel_uses\":[\"And\",\"Bool\",\"Eq\",\"False\",\"Int\",\"Nat\",\"Not\",\"id\",\"instDecidableEqBool\",\"instHAdd\",\"instHSub\",\"instLENat\",\"instLTNat\",\"instNatCastInt\",\"instOfNat\",\"instOfNatNat\",\"instSubNat\",\"le_of_le_of_eq\",\"of_decide_eq_true\",\"And.left\",\"And.right\",\"Bool.true\",\"Decidable.decide\",\"Eq.refl\",\"Eq.symm\",\"Eq.trans\",\"HAdd.hAdd\",\"HSub.hSub\",\"Int.add_one_le_of_lt\",\"Int.instAdd\",\"Int.instLEInt\",\"Int.instNegInt\",\"Int.instSub\",\"Int.sub_eq_zero_of_eq\",\"Int.sub_nonneg_of_le\",\"LE.le\",\"LT.lt\",\"List.cons\",\"List.nil\",\"Nat.cast\",\"Nat.le_of_not_lt\",\"Neg.neg\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Or.elim\",\"Lean.Omega.LinearCombo\",\"Lean.Omega.tidy_sat\",\"Lean.Omega.Coeffs.ofList\",\"Lean.Omega.Constraint.addEquality_sat\",\"Lean.Omega.Constraint.addInequality_sat\",\"Lean.Omega.Constraint.combine_sat'\",\"Lean.Omega.Constraint.isImpossible\",\"Lean.Omega.Constraint.mk\",\"Lean.Omega.Constraint.not_sat'_of_isImpossible\",\"Lean.Omega.Int.add_congr\",\"Lean.Omega.Int.ofNat_le_of_le\",\"Lean.Omega.Int.ofNat_lt_of_lt\",\"Lean.Omega.Int.ofNat_sub_dichotomy\",\"Lean.Omega.Int.sub_congr\",\"Lean.Omega.LinearCombo.add_eval\",\"Lean.Omega.LinearCombo.coordinate\",\"Lean.Omega.LinearCombo.coordinate_eval_0\",\"Lean.Omega.LinearCombo.coordinate_eval_1\",\"Lean.Omega.LinearCombo.eval\",\"Lean.Omega.LinearCombo.instAdd\",\"Lean.Omega.LinearCombo.instSub\",\"Lean.Omega.LinearCombo.mk\",\"Lean.Omega.LinearCombo.sub_eval\"],\"declaration\":null,\"inductive\":null},{\"name\":\"_private.Production.Kernel.0.Production.Kernel.countdown_decreases._simp_1_1\",\"kind\":\"theorem\",\"module\":\"Production.Kernel\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Eq\",\"Not\",\"Bool.false\",\"Bool.not_eq_true\",\"Bool.true\",\"Eq.symm\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Production.Kernel.countdown._unary._proof_1\",\"kind\":\"theorem\",\"module\":\"Production.Kernel\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"theorem\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Eq\",\"InvImage\",\"Nat\",\"PSigma\",\"id\",\"instAddNat\",\"instHAdd\",\"instLTNat\",\"instOfNatNat\",\"instSubNat\",\"Bool.false\",\"HAdd.hAdd\",\"LT.lt\",\"LexLeanRuntime.subtract\",\"Nat.blt\",\"OfNat.ofNat\",\"PSigma.casesOn\",\"PSigma.mk\",\"Production.Kernel.countdown_decreases\"],\"declaration\":null,\"inductive\":null}],\"externals\":[{\"name\":\"Add\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Bool\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Decidable\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"HAdd\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"HMul\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"HSub\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Int\",\"kind\":\"inductive\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"List\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Mul\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Nat\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"OfNat\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Option\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"PUnit\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Sub\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"UInt32\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"instAddNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instHAdd\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instHMul\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instHSub\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instMulNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instOfNat\",\"kind\":\"definition\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instOfNatNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instSubNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Bool.false\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Bool\"},{\"name\":\"Bool.true\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Bool\"},{\"name\":\"Decidable.isFalse\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Decidable\"},{\"name\":\"Decidable.isTrue\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Decidable\"},{\"name\":\"Int.decLt\",\"kind\":\"definition\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int.instAdd\",\"kind\":\"definition\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Int.ofNat\",\"kind\":\"constructor\",\"module\":\"Init.Data.Int.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":true,\"inductive_type\":\"Int\"},{\"name\":\"List.cons\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"List\"},{\"name\":\"List.nil\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"List\"},{\"name\":\"Nat.blt\",\"kind\":\"definition\",\"module\":\"Init.Data.Nat.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.decLt\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Option.none\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Option\"},{\"name\":\"Option.some\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Option\"},{\"name\":\"UInt32.complement\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt32.land\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt32.lor\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt32.ofInt\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt32.shiftLeft\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt32.shiftRight\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt32.toNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"UInt32.xor\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Unit.unit\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true}]}\n","stdout_sha256":"11f2b986da02936d686ec942597cc5e399980e686510eed491fe44180e9751e0","tool":"lean"} diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R0.lean b/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R0.lean deleted file mode 100644 index 550964009..000000000 --- a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R0.lean +++ /dev/null @@ -1,34 +0,0 @@ -import LexLeanPreservation.Core -import LexLeanPreservation.Values -import LexLeanPreservation.Primitives -import LexLeanPreservation.Fixed -import LexLeanPreservation.Keys -import LexLeanPreservation.Templates -import LexLeanPreservation.Validate -import Production.Kernel -import Production.Main -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -set_option linter.unusedVariables false -namespace LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0 - -def __prog : _root_.LexLeanTarget.TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1], types := [(.fixed .u32), (.fixed .u32)], result := (.option (.fixed .u32)), - body := (.prim .checkedAdd [(.var 0), (.var 1)]) }] } - -def __fits_0 (left : UInt32) (right : UInt32) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_0 (left : UInt32) (right : UInt32) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.u32 left), (_root_.LexLeanTarget.TargetSyntax.Value.u32 right)] (_root_.LexLeanPreservation.Rel (__fits_0 left right) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u32) (Production.Main.checkedSum left right))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_checkedAdd_u32 left right)) - -def denote (left : UInt32) (right : UInt32) : _root_.LexLeanPreservation.Obs := - _root_.cond (__fits_0 left right) (_root_.LexLeanPreservation.Obs.value (((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u32) (Production.Main.checkedSum left right)))) _root_.LexLeanPreservation.Obs.overflow - -theorem root (left : UInt32) (right : UInt32) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.u32 left), (_root_.LexLeanTarget.TargetSyntax.Value.u32 right)] (_root_.LexLeanPreservation.Rel (__fits_0 left right) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u32) (Production.Main.checkedSum left right))) := - _root_.LexLeanPreservation.run_of_funRel (__rel_0 left right) - -end LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0 diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R0/Compose/RustCore.lex.tex b/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R0/Compose/RustCore.lex.tex deleted file mode 100644 index e3804e0b4..000000000 --- a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R0/Compose/RustCore.lex.tex +++ /dev/null @@ -1,464 +0,0 @@ -\begin{lexlean}{RustCore} -\title{Certificate E LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.Compose.RustCore} -\begin{coremodule} -imports [ - LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0, - LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.RustCore, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.Compose.RustCore.root : @920 := @921 { - all: [LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.Compose.RustCore.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.RustCore.program -@1 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.RustCore.krate -@2 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.RustCore.flags -@3 := UInt32 -@4 := #2 -@5 := LexLeanTarget.TargetSyntax.Value.u32 -@6 := @5 @4 -@9 := LexLeanTarget.TargetSyntax.Ty.fixed LexLeanTarget.TargetSyntax.IntKind.u32 -@10 := LexLeanTarget.TargetSyntax.Program -@11 := LexLeanPreservation.Rust.RCrate -@12 := LexLeanPreservation.Rust.Flags -@13 := LexLeanPreservation.Rust.WT -@14 := #3 -@16 := @13 @14 @4 -@17 := #1 -@18 := @16 @17 -@19 := #0 -@20 := @5 @19 -@26 := {p : @10} -> {c : @11} -> {A : @12} -> (x : @3) -> @18 @20 @9 -@28 := LexLeanPreservation.Rust.wt_u32 @0 -@29 := @13 @0 -@36 := {c : @11} -> {A : @12} -> (x : @3) -> @29 @4 @17 @20 @9 -@37 := @28 @1 -@38 := @29 @1 -@43 := {A : @12} -> (x : @3) -> @38 @17 @20 @9 -@44 := @37 @2 -@45 := @38 @2 -@48 := (x : @3) -> @45 @20 @9 -@49 := @44 @4 -@51 := @45 @6 @9 -@52 := @5 @17 -@53 := @44 @17 -@55 := @45 @52 @9 -@56 := LexLeanTarget.TargetSyntax.Value -@57 := List.nil.{0} -@58 := List.cons.{0} -@59 := @57 @56 -@60 := @58 @56 -@61 := @60 @52 -@62 := @61 @59 -@63 := @60 @6 -@64 := @63 @62 -@65 := Nat -@68 := Prod.{0, 0} @65 @56 -@69 := 1 -@72 := Prod.mk.{0, 0} @65 @56 -@73 := @72 @69 -@74 := @73 @52 -@75 := 0 -@76 := @72 @75 -@77 := @76 @6 -@78 := @57 @68 -@79 := @58 @68 -@81 := @79 @77 @78 -@83 := @79 @74 @81 -@84 := Bool.false -@85 := LexLeanTarget.TargetSyntax.Function -@86 := LexLeanTarget.TargetSyntax.Program.functions -@87 := @86 @0 -@88 := LexLeanTarget.TargetSyntax.Ty -@89 := @57 @65 -@90 := @57 @88 -@91 := LexLeanTarget.TargetSyntax.Ty.unit -@92 := LexLeanTarget.TargetSyntax.Value.unit -@95 := LexLeanTarget.TargetSyntax.Expr.value @91 @92 -@100 := LexLeanTarget.TargetSyntax.Function.mk @89 @90 @91 @95 -@105 := List.getD.{0} @85 @87 @75 @100 -@109 := fun (__e_n : @65) => - LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.RustCore.root @19 @75 -@110 := LexLeanPreservation.Rust.WTL -@118 := {p : @10} -> {c : @11} -> {A : @12} -> @110 @4 @17 @19 @59 @90 -@120 := LexLeanPreservation.Rust.wtl_nil @0 -@121 := @110 @0 -@127 := {c : @11} -> {A : @12} -> @121 @17 @19 @59 @90 -@128 := @120 @1 -@129 := @121 @1 -@133 := {A : @12} -> @129 @19 @59 @90 -@134 := @128 @2 -@135 := @129 @2 -@136 := @135 @59 -@137 := @136 @90 -@138 := List.{0} -@139 := @138 @56 -@140 := @138 @88 -@141 := #6 -@142 := @13 @141 -@143 := #5 -@144 := @142 @143 -@145 := #4 -@148 := @144 @145 @14 @4 -@149 := #7 -@154 := @110 @149 @141 @143 @4 @17 -@155 := #8 -@158 := @110 @155 @149 @141 -@160 := @60 @143 @14 -@161 := @158 @160 -@162 := @58 @88 -@164 := @162 @145 @4 -@174 := {p : @10} -> - {c : @11} -> - {A : @12} -> - {v : @56} -> {t : @88} -> {vs : @139} -> {ts : @140} -> (h : @148) -> (hs : @154) -> @161 @164 -@176 := LexLeanPreservation.Rust.wtl_cons @0 -@196 := {c : @11} -> - {A : @12} -> - {v : @56} -> - {t : @88} -> - {vs : @139} -> - {ts : @140} -> - (h : @29 @143 @145 @14 @4) -> (hs : @121 @141 @143 @4 @17) -> @121 @149 @141 @160 @164 -@197 := @176 @1 -@213 := {A : @12} -> - {v : @56} -> - {t : @88} -> - {vs : @139} -> - {ts : @140} -> (h : @38 @145 @14 @4) -> (hs : @129 @143 @4 @17) -> @129 @141 @160 @164 -@214 := @197 @2 -@216 := @45 @14 @4 -@218 := @135 @4 @17 -@226 := {v : @56} -> - {t : @88} -> {vs : @139} -> {ts : @140} -> (h : @216) -> (hs : @218) -> @135 @160 @164 -@227 := @214 @52 -@228 := @5 @145 -@229 := @45 @228 -@230 := @229 @4 -@231 := @5 @141 -@232 := @60 @231 -@234 := @135 (@232 @14) -@240 := {t : @88} -> {vs : @139} -> {ts : @140} -> (h : @230) -> (hs : @218) -> @234 @164 -@241 := @227 @9 -@242 := @5 @14 -@244 := @45 @242 @9 -@245 := @5 @143 -@246 := @60 @245 -@248 := @135 (@246 @14) -@249 := @162 @9 -@250 := @249 @4 -@255 := {vs : @139} -> {ts : @140} -> (h : @244) -> (hs : @218) -> @248 @250 -@256 := @241 @59 -@257 := @136 @17 -@258 := @60 @228 -@259 := @258 @59 -@264 := {ts : @140} -> (h : @51) -> (hs : @257) -> @135 @259 @250 -@265 := @256 @90 -@266 := @60 @242 -@267 := @266 @59 -@268 := @135 @267 -@269 := @249 @90 -@272 := (h : @55) -> (hs : @137) -> @268 @269 -@273 := @265 @53 -@274 := @63 @59 -@276 := @135 @274 @269 -@277 := (hs : @137) -> @276 -@278 := @273 @134 -@280 := @135 @62 @269 -@281 := @214 @6 -@283 := @45 @245 @4 -@284 := @5 @149 -@285 := @60 @284 -@293 := {t : @88} -> {vs : @139} -> {ts : @140} -> (h : @283) -> (hs : @218) -> @135 (@285 @14) @164 -@294 := @281 @9 -@300 := {vs : @139} -> {ts : @140} -> (h : @229 @9) -> (hs : @218) -> @234 @250 -@301 := @294 @62 -@302 := @268 @17 -@303 := @246 @259 -@304 := @135 @303 -@308 := {ts : @140} -> (h : @244) -> (hs : @302) -> @304 @250 -@309 := @301 @269 -@310 := @258 @267 -@311 := @135 @310 -@312 := @249 @269 -@315 := (h : @51) -> (hs : @276) -> @311 @312 -@316 := @309 @49 -@317 := @266 @274 -@318 := @135 @317 -@320 := (hs : @280) -> @318 @312 -@321 := @316 @278 -@322 := @135 @64 -@323 := @322 @312 -@324 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.denote -@326 := @324 @4 @17 -@327 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.__fits_0 -@329 := @327 @4 @17 -@332 := Production.Main.checkedSum @4 @17 -@336 := LexLeanPreservation.encOption @3 @5 @332 -@339 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.root @4 @17 -@340 := Bool -@341 := Ne.{1} -@342 := LexLeanPreservation.Obs -@343 := @341 @342 -@344 := LexLeanPreservation.Rel -@347 := @343 (@344 @17 @19) -@348 := LexLeanPreservation.Obs.stuck -@351 := (f : @340) -> (v : @56) -> @347 @348 -@353 := LexLeanPreservation.Rust.rel_ne_stuck @329 -@360 := (v : @56) -> @343 (@344 (@327 @14 @4) @19) @348 -@361 := @353 @336 -@365 := @343 (@344 @329 @336) @348 -@366 := @138 @68 -@367 := LexLeanPreservation.Rust.FunSem -@368 := #9 -@374 := (n : @65) -> @367 @368 @155 @149 @19 @141 -@375 := Eq.{1} -@376 := Option.{0} -@377 := @376 @85 -@378 := @375 @377 -@385 := LexLeanRuntime.index (@138 @85) @85 (LexLeanRuntime.instIndexableList @85) -@389 := @378 (@385 (@86 @368) @141) -@390 := Option.some.{0} -@391 := @390 @85 -@392 := @391 @143 -@393 := @389 @392 -@394 := #10 -@398 := @110 @394 @368 @155 @143 -@399 := LexLeanTarget.TargetSyntax.Function.types -@400 := @399 @141 -@401 := @398 @400 -@402 := @376 @366 -@403 := @375 @402 -@404 := LexLeanTarget.TargetSemantics.bindAll -@405 := LexLeanTarget.TargetSyntax.Function.parameters -@410 := @403 (@404 (@405 @149) @141 @78) -@411 := @390 @366 -@412 := @411 @143 -@413 := @410 @412 -@414 := @376 @340 -@415 := @375 @414 -@416 := LexLeanPreservation.Rust.fnFallible -@417 := #11 -@420 := @415 (@416 @417 @368) -@421 := @390 @340 -@422 := @421 @143 -@423 := @420 @422 -@424 := LexLeanPreservation.RunConv -@425 := #13 -@429 := @424 @425 @394 @155 @143 -@431 := @343 @141 @348 -@432 := Exists.{1} -@433 := LexLeanPreservation.Rust.ROut -@434 := @432 @433 -@435 := And -@436 := LexLeanPreservation.Rust.RealizesFn -@440 := @435 (@436 @368 @155 @19) -@441 := LexLeanPreservation.Rust.RCI -@443 := @441 #15 -@444 := LexLeanPreservation.Rust.fnIdent -@445 := @444 @425 -@452 := (hne : @431) -> @434 (fun (ro : @433) => @440 (@443 @445 @417 @19)) -@467 := {p : @10} -> - {c : @11} -> - {A : @12} -> - {f : @65} -> - {fn : @85} -> - {args : @139} -> - {env : @366} -> - {F : @340} -> - {o : @342} -> - (hB : @374) -> - (hfn : @393) -> (hwt : @401) -> (hbind : @413) -> (hF : @423) -> (hA : @429) -> @452 -@469 := LexLeanPreservation.Rust.compose @0 -@470 := @367 @0 -@475 := (n : @65) -> @470 @155 @149 @19 @141 -@476 := @385 @87 -@479 := @378 (@476 @141) @392 -@483 := @121 @368 @155 @143 @400 -@484 := @424 @0 -@487 := @484 @394 @155 @143 -@501 := {c : @11} -> - {A : @12} -> - {f : @65} -> - {fn : @85} -> - {args : @139} -> - {env : @366} -> - {F : @340} -> - {o : @342} -> - (hB : @475) -> - (hfn : @479) -> (hwt : @483) -> (hbind : @413) -> (hF : @423) -> (hA : @487) -> @452 -@502 := @469 @1 -@503 := @470 @1 -@507 := (n : @65) -> @503 @149 @19 @141 -@510 := @129 @155 @143 @400 -@511 := @416 @1 -@514 := @415 (@511 @368) @422 -@515 := @441 @1 -@525 := (hbind : @413) -> - (hF : @514) -> (hA : @487) -> (hne : @431) -> @434 (fun (ro : @433) => @440 (@515 @445 @417 @19)) -@535 := {A : @12} -> - {f : @65} -> - {fn : @85} -> - {args : @139} -> - {env : @366} -> {F : @340} -> {o : @342} -> (hB : @507) -> (hfn : @479) -> (hwt : @510) -> @525 -@536 := @502 @2 -@538 := @503 @2 @19 -@540 := (n : @65) -> @538 @141 -@541 := @135 @143 -@542 := @541 @400 -@551 := {f : @65} -> - {fn : @85} -> - {args : @139} -> - {env : @366} -> {F : @340} -> {o : @342} -> (hB : @540) -> (hfn : @479) -> (hwt : @542) -> @525 -@552 := @536 @75 -@554 := (n : @65) -> @538 @75 -@555 := @476 @75 -@556 := @378 @555 -@557 := @556 @392 -@558 := @511 @75 -@559 := @415 @558 -@560 := @559 @422 -@561 := @484 @75 -@563 := @561 @155 @143 -@565 := @515 (@444 @75) -@573 := (hF : @560) -> (hA : @563) -> (hne : @431) -> @434 (fun (ro : @433) => @440 (@565 @417 @19)) -@582 := {fn : @85} -> - {args : @139} -> - {env : @366} -> - {F : @340} -> {o : @342} -> (hB : @554) -> (hfn : @557) -> (hwt : @542) -> (hbind : @413) -> @573 -@583 := @552 @105 -@585 := @556 (@391 @105) -@586 := @399 @105 -@587 := @541 @586 -@589 := @404 (@405 @105) -@601 := {args : @139} -> - {env : @366} -> - {F : @340} -> - {o : @342} -> - (hB : @554) -> (hfn : @585) -> (hwt : @587) -> (hbind : @403 (@589 @141 @78) @412) -> @573 -@602 := @583 @64 -@604 := @285 (@232 @59) -@606 := @135 @604 @586 -@608 := @60 (@5 @155) -@610 := @608 (@285 @59) -@614 := @403 (@589 @610 @78) @412 -@616 := @60 (@5 @394) -@618 := @60 (@5 @368) -@620 := @616 (@618 @59) -@622 := @561 @620 @143 -@624 := @60 (@5 @425) -@627 := @60 (@5 #12) -@644 := {env : @366} -> - {F : @340} -> - {o : @342} -> - (hB : @554) -> - (hfn : @585) -> - (hwt : @606) -> - (hbind : @614) -> - (hF : @560) -> - (hA : @622) -> (hne : @431) -> @434 (fun (ro : @433) => @440 (@565 (@624 (@627 @59)) @19)) -@645 := @602 @83 -@647 := @232 (@246 @59) -@649 := @135 @647 @586 -@660 := @403 (@589 @604 @78) (@411 (@79 (@73 @231) (@79 (@76 @284) @78))) -@662 := @618 (@608 @59) -@664 := @561 @662 @143 -@666 := @60 (@5 @417) -@682 := {F : @340} -> - {o : @342} -> - (hB : @554) -> - (hfn : @585) -> - (hwt : @649) -> - (hbind : @660) -> - (hF : @560) -> - (hA : @664) -> (hne : @431) -> @434 (fun (ro : @433) => @440 (@565 (@627 (@666 @59)) @19)) -@683 := @645 @84 -@684 := @304 @586 -@695 := @403 (@589 @647 @78) (@411 (@79 (@73 @245) (@79 (@76 @231) @78))) -@697 := @559 (@421 @84) -@699 := @561 @610 @143 -@700 := @436 @84 -@718 := {o : @342} -> - (hB : @554) -> - (hfn : @585) -> - (hwt : @684) -> - (hbind : @695) -> - (hF : @697) -> - (hA : @699) -> - (hne : @431) -> @434 (fun (ro : @433) => @435 (@700 @155 @19) (@565 (@666 (@616 @59)) @19)) -@719 := @683 @326 -@720 := @311 @586 -@731 := @403 (@589 @303 @78) (@411 (@79 (@73 @228) (@79 (@76 @245) @78))) -@732 := @561 @604 -@734 := @324 @149 @141 -@735 := @732 @734 -@737 := @324 @155 @149 -@756 := (hB : @554) -> - (hfn : @585) -> - (hwt : @720) -> - (hbind : @731) -> - (hF : @697) -> - (hA : @735) -> - (hne : @343 @737 @348) -> - @434 (fun (ro : @433) => @435 (@700 (@324 @394 @368) @19) (@565 @620 @19)) -@757 := @719 @109 -@758 := @318 @586 -@769 := @403 (@589 @310 @78) (@411 (@79 (@73 @242) (@79 (@76 @228) @78))) -@770 := @561 @647 -@772 := @324 @141 @143 -@791 := (hfn : @585) -> - (hwt : @758) -> - (hbind : @769) -> - (hF : @697) -> - (hA : @770 @772) -> - (hne : @343 @734 @348) -> - @434 (fun (ro : @433) => @435 (@700 (@324 @368 @155) @19) (@565 @662 @19)) -@792 := Eq.refl.{1} -@795 := @757 (@792 @377 @555) -@796 := @322 @586 -@807 := @403 (@589 @317 @78) (@411 (@79 (@73 @6) (@79 (@76 @242) @78))) -@808 := @561 @303 -@810 := @324 @143 @145 -@826 := (hwt : @796) -> - (hbind : @807) -> - (hF : @697) -> - (hA : @808 @810) -> - (hne : @343 @772 @348) -> @434 (fun (ro : @433) => @435 (@700 @737 @19) (@565 @610 @19)) -@827 := @795 @321 -@829 := @589 @64 @78 -@832 := @403 @829 (@411 @83) -@833 := @561 @310 -@835 := @324 @145 @14 -@850 := (hbind : @832) -> - (hF : @697) -> - (hA : @833 @835) -> - (hne : @343 @810 @348) -> @434 (fun (ro : @433) => @435 (@700 @734 @19) (@565 @604 @19)) -@853 := @827 (@792 @402 @829) -@854 := @561 @317 -@856 := @324 @14 @4 -@870 := (hF : @697) -> - (hA : @854 @856) -> - (hne : @343 @835 @348) -> @434 (fun (ro : @433) => @435 (@700 @772 @19) (@565 @647 @19)) -@873 := @853 (@792 @414 @558) -@887 := (hA : @561 @64 @326) -> - (hne : @343 @856 @348) -> @434 (fun (ro : @433) => @435 (@700 @810 @19) (@565 @303 @19)) -@888 := @873 @339 -@899 := (hne : @343 @326 @348) -> @434 (fun (ro : @433) => @435 (@700 @835 @19) (@565 @310 @19)) -@900 := @888 @361 -@906 := @435 (@700 @856 @19) (@565 @317 @19) -@908 := @434 (fun (ro : @433) => @906) -@910 := @434 (fun (__e_ro : @433) => @906) -@915 := LexLeanPreservation.Rust.RepresentableL (@61 (@60 @20 @59)) -@916 := (__e_hrep : @915) -> @910 -@917 := fun (__e_hrep : @915) => @900 -@918 := (right : @3) -> @916 -@919 := fun (right : @3) => @917 -@920 := (left : @3) -> @918 -@921 := fun (left : @3) => @919 -\end{coremodule} -\end{lexlean} diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R0/Compose/RustStd.lex.tex b/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R0/Compose/RustStd.lex.tex deleted file mode 100644 index 4bb48e496..000000000 --- a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R0/Compose/RustStd.lex.tex +++ /dev/null @@ -1,464 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0, - LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.Compose.RustStd.root : @920 := @921 { - all: [LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.RustStd.program -@1 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.RustStd.krate -@2 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.RustStd.flags -@3 := UInt32 -@4 := #2 -@5 := LexLeanTarget.TargetSyntax.Value.u32 -@6 := @5 @4 -@9 := LexLeanTarget.TargetSyntax.Ty.fixed LexLeanTarget.TargetSyntax.IntKind.u32 -@10 := LexLeanTarget.TargetSyntax.Program -@11 := LexLeanPreservation.Rust.RCrate -@12 := LexLeanPreservation.Rust.Flags -@13 := LexLeanPreservation.Rust.WT -@14 := #3 -@16 := @13 @14 @4 -@17 := #1 -@18 := @16 @17 -@19 := #0 -@20 := @5 @19 -@26 := {p : @10} -> {c : @11} -> {A : @12} -> (x : @3) -> @18 @20 @9 -@28 := LexLeanPreservation.Rust.wt_u32 @0 -@29 := @13 @0 -@36 := {c : @11} -> {A : @12} -> (x : @3) -> @29 @4 @17 @20 @9 -@37 := @28 @1 -@38 := @29 @1 -@43 := {A : @12} -> (x : @3) -> @38 @17 @20 @9 -@44 := @37 @2 -@45 := @38 @2 -@48 := (x : @3) -> @45 @20 @9 -@49 := @44 @4 -@51 := @45 @6 @9 -@52 := @5 @17 -@53 := @44 @17 -@55 := @45 @52 @9 -@56 := LexLeanTarget.TargetSyntax.Value -@57 := List.nil.{0} -@58 := List.cons.{0} -@59 := @57 @56 -@60 := @58 @56 -@61 := @60 @52 -@62 := @61 @59 -@63 := @60 @6 -@64 := @63 @62 -@65 := Nat -@68 := Prod.{0, 0} @65 @56 -@69 := 1 -@72 := Prod.mk.{0, 0} @65 @56 -@73 := @72 @69 -@74 := @73 @52 -@75 := 0 -@76 := @72 @75 -@77 := @76 @6 -@78 := @57 @68 -@79 := @58 @68 -@81 := @79 @77 @78 -@83 := @79 @74 @81 -@84 := Bool.false -@85 := LexLeanTarget.TargetSyntax.Function -@86 := LexLeanTarget.TargetSyntax.Program.functions -@87 := @86 @0 -@88 := LexLeanTarget.TargetSyntax.Ty -@89 := @57 @65 -@90 := @57 @88 -@91 := LexLeanTarget.TargetSyntax.Ty.unit -@92 := LexLeanTarget.TargetSyntax.Value.unit -@95 := LexLeanTarget.TargetSyntax.Expr.value @91 @92 -@100 := LexLeanTarget.TargetSyntax.Function.mk @89 @90 @91 @95 -@105 := List.getD.{0} @85 @87 @75 @100 -@109 := fun (__e_n : @65) => - LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.RustStd.root @19 @75 -@110 := LexLeanPreservation.Rust.WTL -@118 := {p : @10} -> {c : @11} -> {A : @12} -> @110 @4 @17 @19 @59 @90 -@120 := LexLeanPreservation.Rust.wtl_nil @0 -@121 := @110 @0 -@127 := {c : @11} -> {A : @12} -> @121 @17 @19 @59 @90 -@128 := @120 @1 -@129 := @121 @1 -@133 := {A : @12} -> @129 @19 @59 @90 -@134 := @128 @2 -@135 := @129 @2 -@136 := @135 @59 -@137 := @136 @90 -@138 := List.{0} -@139 := @138 @56 -@140 := @138 @88 -@141 := #6 -@142 := @13 @141 -@143 := #5 -@144 := @142 @143 -@145 := #4 -@148 := @144 @145 @14 @4 -@149 := #7 -@154 := @110 @149 @141 @143 @4 @17 -@155 := #8 -@158 := @110 @155 @149 @141 -@160 := @60 @143 @14 -@161 := @158 @160 -@162 := @58 @88 -@164 := @162 @145 @4 -@174 := {p : @10} -> - {c : @11} -> - {A : @12} -> - {v : @56} -> {t : @88} -> {vs : @139} -> {ts : @140} -> (h : @148) -> (hs : @154) -> @161 @164 -@176 := LexLeanPreservation.Rust.wtl_cons @0 -@196 := {c : @11} -> - {A : @12} -> - {v : @56} -> - {t : @88} -> - {vs : @139} -> - {ts : @140} -> - (h : @29 @143 @145 @14 @4) -> (hs : @121 @141 @143 @4 @17) -> @121 @149 @141 @160 @164 -@197 := @176 @1 -@213 := {A : @12} -> - {v : @56} -> - {t : @88} -> - {vs : @139} -> - {ts : @140} -> (h : @38 @145 @14 @4) -> (hs : @129 @143 @4 @17) -> @129 @141 @160 @164 -@214 := @197 @2 -@216 := @45 @14 @4 -@218 := @135 @4 @17 -@226 := {v : @56} -> - {t : @88} -> {vs : @139} -> {ts : @140} -> (h : @216) -> (hs : @218) -> @135 @160 @164 -@227 := @214 @52 -@228 := @5 @145 -@229 := @45 @228 -@230 := @229 @4 -@231 := @5 @141 -@232 := @60 @231 -@234 := @135 (@232 @14) -@240 := {t : @88} -> {vs : @139} -> {ts : @140} -> (h : @230) -> (hs : @218) -> @234 @164 -@241 := @227 @9 -@242 := @5 @14 -@244 := @45 @242 @9 -@245 := @5 @143 -@246 := @60 @245 -@248 := @135 (@246 @14) -@249 := @162 @9 -@250 := @249 @4 -@255 := {vs : @139} -> {ts : @140} -> (h : @244) -> (hs : @218) -> @248 @250 -@256 := @241 @59 -@257 := @136 @17 -@258 := @60 @228 -@259 := @258 @59 -@264 := {ts : @140} -> (h : @51) -> (hs : @257) -> @135 @259 @250 -@265 := @256 @90 -@266 := @60 @242 -@267 := @266 @59 -@268 := @135 @267 -@269 := @249 @90 -@272 := (h : @55) -> (hs : @137) -> @268 @269 -@273 := @265 @53 -@274 := @63 @59 -@276 := @135 @274 @269 -@277 := (hs : @137) -> @276 -@278 := @273 @134 -@280 := @135 @62 @269 -@281 := @214 @6 -@283 := @45 @245 @4 -@284 := @5 @149 -@285 := @60 @284 -@293 := {t : @88} -> {vs : @139} -> {ts : @140} -> (h : @283) -> (hs : @218) -> @135 (@285 @14) @164 -@294 := @281 @9 -@300 := {vs : @139} -> {ts : @140} -> (h : @229 @9) -> (hs : @218) -> @234 @250 -@301 := @294 @62 -@302 := @268 @17 -@303 := @246 @259 -@304 := @135 @303 -@308 := {ts : @140} -> (h : @244) -> (hs : @302) -> @304 @250 -@309 := @301 @269 -@310 := @258 @267 -@311 := @135 @310 -@312 := @249 @269 -@315 := (h : @51) -> (hs : @276) -> @311 @312 -@316 := @309 @49 -@317 := @266 @274 -@318 := @135 @317 -@320 := (hs : @280) -> @318 @312 -@321 := @316 @278 -@322 := @135 @64 -@323 := @322 @312 -@324 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.denote -@326 := @324 @4 @17 -@327 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.__fits_0 -@329 := @327 @4 @17 -@332 := Production.Main.checkedSum @4 @17 -@336 := LexLeanPreservation.encOption @3 @5 @332 -@339 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.root @4 @17 -@340 := Bool -@341 := Ne.{1} -@342 := LexLeanPreservation.Obs -@343 := @341 @342 -@344 := LexLeanPreservation.Rel -@347 := @343 (@344 @17 @19) -@348 := LexLeanPreservation.Obs.stuck -@351 := (f : @340) -> (v : @56) -> @347 @348 -@353 := LexLeanPreservation.Rust.rel_ne_stuck @329 -@360 := (v : @56) -> @343 (@344 (@327 @14 @4) @19) @348 -@361 := @353 @336 -@365 := @343 (@344 @329 @336) @348 -@366 := @138 @68 -@367 := LexLeanPreservation.Rust.FunSem -@368 := #9 -@374 := (n : @65) -> @367 @368 @155 @149 @19 @141 -@375 := Eq.{1} -@376 := Option.{0} -@377 := @376 @85 -@378 := @375 @377 -@385 := LexLeanRuntime.index (@138 @85) @85 (LexLeanRuntime.instIndexableList @85) -@389 := @378 (@385 (@86 @368) @141) -@390 := Option.some.{0} -@391 := @390 @85 -@392 := @391 @143 -@393 := @389 @392 -@394 := #10 -@398 := @110 @394 @368 @155 @143 -@399 := LexLeanTarget.TargetSyntax.Function.types -@400 := @399 @141 -@401 := @398 @400 -@402 := @376 @366 -@403 := @375 @402 -@404 := LexLeanTarget.TargetSemantics.bindAll -@405 := LexLeanTarget.TargetSyntax.Function.parameters -@410 := @403 (@404 (@405 @149) @141 @78) -@411 := @390 @366 -@412 := @411 @143 -@413 := @410 @412 -@414 := @376 @340 -@415 := @375 @414 -@416 := LexLeanPreservation.Rust.fnFallible -@417 := #11 -@420 := @415 (@416 @417 @368) -@421 := @390 @340 -@422 := @421 @143 -@423 := @420 @422 -@424 := LexLeanPreservation.RunConv -@425 := #13 -@429 := @424 @425 @394 @155 @143 -@431 := @343 @141 @348 -@432 := Exists.{1} -@433 := LexLeanPreservation.Rust.ROut -@434 := @432 @433 -@435 := And -@436 := LexLeanPreservation.Rust.RealizesFn -@440 := @435 (@436 @368 @155 @19) -@441 := LexLeanPreservation.Rust.RCI -@443 := @441 #15 -@444 := LexLeanPreservation.Rust.fnIdent -@445 := @444 @425 -@452 := (hne : @431) -> @434 (fun (ro : @433) => @440 (@443 @445 @417 @19)) -@467 := {p : @10} -> - {c : @11} -> - {A : @12} -> - {f : @65} -> - {fn : @85} -> - {args : @139} -> - {env : @366} -> - {F : @340} -> - {o : @342} -> - (hB : @374) -> - (hfn : @393) -> (hwt : @401) -> (hbind : @413) -> (hF : @423) -> (hA : @429) -> @452 -@469 := LexLeanPreservation.Rust.compose @0 -@470 := @367 @0 -@475 := (n : @65) -> @470 @155 @149 @19 @141 -@476 := @385 @87 -@479 := @378 (@476 @141) @392 -@483 := @121 @368 @155 @143 @400 -@484 := @424 @0 -@487 := @484 @394 @155 @143 -@501 := {c : @11} -> - {A : @12} -> - {f : @65} -> - {fn : @85} -> - {args : @139} -> - {env : @366} -> - {F : @340} -> - {o : @342} -> - (hB : @475) -> - (hfn : @479) -> (hwt : @483) -> (hbind : @413) -> (hF : @423) -> (hA : @487) -> @452 -@502 := @469 @1 -@503 := @470 @1 -@507 := (n : @65) -> @503 @149 @19 @141 -@510 := @129 @155 @143 @400 -@511 := @416 @1 -@514 := @415 (@511 @368) @422 -@515 := @441 @1 -@525 := (hbind : @413) -> - (hF : @514) -> (hA : @487) -> (hne : @431) -> @434 (fun (ro : @433) => @440 (@515 @445 @417 @19)) -@535 := {A : @12} -> - {f : @65} -> - {fn : @85} -> - {args : @139} -> - {env : @366} -> {F : @340} -> {o : @342} -> (hB : @507) -> (hfn : @479) -> (hwt : @510) -> @525 -@536 := @502 @2 -@538 := @503 @2 @19 -@540 := (n : @65) -> @538 @141 -@541 := @135 @143 -@542 := @541 @400 -@551 := {f : @65} -> - {fn : @85} -> - {args : @139} -> - {env : @366} -> {F : @340} -> {o : @342} -> (hB : @540) -> (hfn : @479) -> (hwt : @542) -> @525 -@552 := @536 @75 -@554 := (n : @65) -> @538 @75 -@555 := @476 @75 -@556 := @378 @555 -@557 := @556 @392 -@558 := @511 @75 -@559 := @415 @558 -@560 := @559 @422 -@561 := @484 @75 -@563 := @561 @155 @143 -@565 := @515 (@444 @75) -@573 := (hF : @560) -> (hA : @563) -> (hne : @431) -> @434 (fun (ro : @433) => @440 (@565 @417 @19)) -@582 := {fn : @85} -> - {args : @139} -> - {env : @366} -> - {F : @340} -> {o : @342} -> (hB : @554) -> (hfn : @557) -> (hwt : @542) -> (hbind : @413) -> @573 -@583 := @552 @105 -@585 := @556 (@391 @105) -@586 := @399 @105 -@587 := @541 @586 -@589 := @404 (@405 @105) -@601 := {args : @139} -> - {env : @366} -> - {F : @340} -> - {o : @342} -> - (hB : @554) -> (hfn : @585) -> (hwt : @587) -> (hbind : @403 (@589 @141 @78) @412) -> @573 -@602 := @583 @64 -@604 := @285 (@232 @59) -@606 := @135 @604 @586 -@608 := @60 (@5 @155) -@610 := @608 (@285 @59) -@614 := @403 (@589 @610 @78) @412 -@616 := @60 (@5 @394) -@618 := @60 (@5 @368) -@620 := @616 (@618 @59) -@622 := @561 @620 @143 -@624 := @60 (@5 @425) -@627 := @60 (@5 #12) -@644 := {env : @366} -> - {F : @340} -> - {o : @342} -> - (hB : @554) -> - (hfn : @585) -> - (hwt : @606) -> - (hbind : @614) -> - (hF : @560) -> - (hA : @622) -> (hne : @431) -> @434 (fun (ro : @433) => @440 (@565 (@624 (@627 @59)) @19)) -@645 := @602 @83 -@647 := @232 (@246 @59) -@649 := @135 @647 @586 -@660 := @403 (@589 @604 @78) (@411 (@79 (@73 @231) (@79 (@76 @284) @78))) -@662 := @618 (@608 @59) -@664 := @561 @662 @143 -@666 := @60 (@5 @417) -@682 := {F : @340} -> - {o : @342} -> - (hB : @554) -> - (hfn : @585) -> - (hwt : @649) -> - (hbind : @660) -> - (hF : @560) -> - (hA : @664) -> (hne : @431) -> @434 (fun (ro : @433) => @440 (@565 (@627 (@666 @59)) @19)) -@683 := @645 @84 -@684 := @304 @586 -@695 := @403 (@589 @647 @78) (@411 (@79 (@73 @245) (@79 (@76 @231) @78))) -@697 := @559 (@421 @84) -@699 := @561 @610 @143 -@700 := @436 @84 -@718 := {o : @342} -> - (hB : @554) -> - (hfn : @585) -> - (hwt : @684) -> - (hbind : @695) -> - (hF : @697) -> - (hA : @699) -> - (hne : @431) -> @434 (fun (ro : @433) => @435 (@700 @155 @19) (@565 (@666 (@616 @59)) @19)) -@719 := @683 @326 -@720 := @311 @586 -@731 := @403 (@589 @303 @78) (@411 (@79 (@73 @228) (@79 (@76 @245) @78))) -@732 := @561 @604 -@734 := @324 @149 @141 -@735 := @732 @734 -@737 := @324 @155 @149 -@756 := (hB : @554) -> - (hfn : @585) -> - (hwt : @720) -> - (hbind : @731) -> - (hF : @697) -> - (hA : @735) -> - (hne : @343 @737 @348) -> - @434 (fun (ro : @433) => @435 (@700 (@324 @394 @368) @19) (@565 @620 @19)) -@757 := @719 @109 -@758 := @318 @586 -@769 := @403 (@589 @310 @78) (@411 (@79 (@73 @242) (@79 (@76 @228) @78))) -@770 := @561 @647 -@772 := @324 @141 @143 -@791 := (hfn : @585) -> - (hwt : @758) -> - (hbind : @769) -> - (hF : @697) -> - (hA : @770 @772) -> - (hne : @343 @734 @348) -> - @434 (fun (ro : @433) => @435 (@700 (@324 @368 @155) @19) (@565 @662 @19)) -@792 := Eq.refl.{1} -@795 := @757 (@792 @377 @555) -@796 := @322 @586 -@807 := @403 (@589 @317 @78) (@411 (@79 (@73 @6) (@79 (@76 @242) @78))) -@808 := @561 @303 -@810 := @324 @143 @145 -@826 := (hwt : @796) -> - (hbind : @807) -> - (hF : @697) -> - (hA : @808 @810) -> - (hne : @343 @772 @348) -> @434 (fun (ro : @433) => @435 (@700 @737 @19) (@565 @610 @19)) -@827 := @795 @321 -@829 := @589 @64 @78 -@832 := @403 @829 (@411 @83) -@833 := @561 @310 -@835 := @324 @145 @14 -@850 := (hbind : @832) -> - (hF : @697) -> - (hA : @833 @835) -> - (hne : @343 @810 @348) -> @434 (fun (ro : @433) => @435 (@700 @734 @19) (@565 @604 @19)) -@853 := @827 (@792 @402 @829) -@854 := @561 @317 -@856 := @324 @14 @4 -@870 := (hF : @697) -> - (hA : @854 @856) -> - (hne : @343 @835 @348) -> @434 (fun (ro : @433) => @435 (@700 @772 @19) (@565 @647 @19)) -@873 := @853 (@792 @414 @558) -@887 := (hA : @561 @64 @326) -> - (hne : @343 @856 @348) -> @434 (fun (ro : @433) => @435 (@700 @810 @19) (@565 @303 @19)) -@888 := @873 @339 -@899 := (hne : @343 @326 @348) -> @434 (fun (ro : @433) => @435 (@700 @835 @19) (@565 @310 @19)) -@900 := @888 @361 -@906 := @435 (@700 @856 @19) (@565 @317 @19) -@908 := @434 (fun (ro : @433) => @906) -@910 := @434 (fun (__e_ro : @433) => @906) -@915 := LexLeanPreservation.Rust.RepresentableL (@61 (@60 @20 @59)) -@916 := (__e_hrep : @915) -> @910 -@917 := fun (__e_hrep : @915) => @900 -@918 := (right : @3) -> @916 -@919 := fun (right : @3) => @917 -@920 := (left : @3) -> @918 -@921 := fun (left : @3) => @919 -\end{coremodule} -\end{lexlean} diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R0/RustCore.lean b/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R0/RustCore.lean deleted file mode 100644 index 1b19d944a..000000000 --- a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R0/RustCore.lean +++ /dev/null @@ -1,33 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.RustCore -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1], types := [(.fixed .u32), (.fixed .u32)], result := (.option (.fixed .u32)), - body := (.prim .checkedAdd [(.var 0), (.var 1)]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .core, items := [ - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.fixed .u32) }, { pattern := (.bind (.generated .binding 1)), type := (.fixed .u32) }] (.option (.fixed .u32)) (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedAdd .u32)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false)))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))], (.call (.runtime (.checkedAdd .u32)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false), [(1, (.fixed .u32), (some 1)), (0, (.fixed .u32), (some 0))], rfl, rfl, - (Corr.prim (ts := [(.fixed .u32), (.fixed .u32)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | _ + 1 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.RustCore diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R0/RustStd.lean b/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R0/RustStd.lean deleted file mode 100644 index 13ee01c68..000000000 --- a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R0/RustStd.lean +++ /dev/null @@ -1,33 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1], types := [(.fixed .u32), (.fixed .u32)], result := (.option (.fixed .u32)), - body := (.prim .checkedAdd [(.var 0), (.var 1)]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.fixed .u32) }, { pattern := (.bind (.generated .binding 1)), type := (.fixed .u32) }] (.option (.fixed .u32)) (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedAdd .u32)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false)))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))], (.call (.runtime (.checkedAdd .u32)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false), [(1, (.fixed .u32), (some 1)), (0, (.fixed .u32), (some 0))], rfl, rfl, - (Corr.prim (ts := [(.fixed .u32), (.fixed .u32)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | _ + 1 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.RustStd diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R1.lean b/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R1.lean deleted file mode 100644 index 09a56b507..000000000 --- a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R1.lean +++ /dev/null @@ -1,47 +0,0 @@ -import LexLeanPreservation.Core -import LexLeanPreservation.Values -import LexLeanPreservation.Primitives -import LexLeanPreservation.Fixed -import LexLeanPreservation.Keys -import LexLeanPreservation.Templates -import LexLeanPreservation.Validate -import Production.Kernel -import Production.Main -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -set_option linter.unusedVariables false -namespace LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1 - -def __prog : _root_.LexLeanTarget.TargetSyntax.Program := - { adts := [{ constructors := [[.nat], [.nat, .nat]] }], functions := [ - { parameters := [0, 1], types := [.nat, .nat], result := .nat, - body := (.call 1 [(.build (.adt 1) (.adt 0) [(.var 0), (.var 1)])]) }, - { parameters := [0], types := [(.adt 0)], result := .nat, - body := (.«match» .nat (.var 0) [(.arm (.adt 0) [1] (.prim .natMul [(.prim .natMul [(.var 1), (.var 1)]), (.value .nat (.nat 3))])), (.arm (.adt 1) [2, 3] (.prim .natMul [(.var 2), (.var 3)]))]) }] } - -def __enc_0 : (Production.Kernel.Shape) -> _root_.LexLeanTarget.TargetSyntax.Value - | Production.Kernel.Shape.circle __x0 => _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat __x0)] - | Production.Kernel.Shape.rectangle __x0 __x1 => _root_.LexLeanTarget.TargetSyntax.Value.adt 1 [(_root_.LexLeanTarget.TargetSyntax.Value.nat __x0), (_root_.LexLeanTarget.TargetSyntax.Value.nat __x1)] - -def __fits_1 (shape : (Production.Kernel.Shape)) : Bool := - (Bool.true && (match shape with | Production.Kernel.Shape.circle radius => ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (_root_.LexLeanRuntime.multiply (radius) (radius) : Nat) 18446744073709551616)) && (Bool.true && Bool.true)) && (Nat.blt (_root_.LexLeanRuntime.multiply ((_root_.LexLeanRuntime.multiply (radius) (radius) : Nat)) ((3 : Nat)) : Nat) 18446744073709551616)) | Production.Kernel.Shape.rectangle width height => ((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (_root_.LexLeanRuntime.multiply (width) (height) : Nat) 18446744073709551616)))) - -theorem __rel_1 (shape : (Production.Kernel.Shape)) : _root_.LexLeanPreservation.FunRel __prog 1 [(__enc_0 shape)] (_root_.LexLeanPreservation.Rel (__fits_1 shape) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Production.Kernel.area shape))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV __enc_0 (fun (__a : (Production.Kernel.Shape)) => (match __a with | Production.Kernel.Shape.circle radius => ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (_root_.LexLeanRuntime.multiply (radius) (radius) : Nat) 18446744073709551616)) && (Bool.true && Bool.true)) && (Nat.blt (_root_.LexLeanRuntime.multiply ((_root_.LexLeanRuntime.multiply (radius) (radius) : Nat)) ((3 : Nat)) : Nat) 18446744073709551616)) | Production.Kernel.Shape.rectangle width height => ((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (_root_.LexLeanRuntime.multiply (width) (height) : Nat) 18446744073709551616)))) (fun (__a : (Production.Kernel.Shape)) => _root_.LexLeanTarget.TargetSyntax.Value.nat (match __a with | Production.Kernel.Shape.circle radius => (_root_.LexLeanRuntime.multiply ((_root_.LexLeanRuntime.multiply (radius) (radius) : Nat)) ((3 : Nat)) : Nat) | Production.Kernel.Shape.rectangle width height => (_root_.LexLeanRuntime.multiply (width) (height) : Nat))) shape (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (Production.Kernel.Shape)) _ => match __a with | Production.Kernel.Shape.circle radius => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natMul radius radius)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natMul (_root_.LexLeanRuntime.multiply (radius) (radius) : Nat) (3 : Nat)))) | Production.Kernel.Shape.rectangle width height => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natMul width height)))))) - -def __fits_0 (width : Nat) (height : Nat) : Bool := - ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && (__fits_1 ((Production.Kernel.Shape.rectangle (width) (height) : (Production.Kernel.Shape))))) - -attribute [local irreducible] Production.Kernel.area in -theorem __rel_0 (width : Nat) (height : Nat) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat width), (_root_.LexLeanTarget.TargetSyntax.Value.nat height)] (_root_.LexLeanPreservation.Rel (__fits_0 width height) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Production.Main.shapeArea width height))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) (__rel_1 ((Production.Kernel.Shape.rectangle (width) (height) : (Production.Kernel.Shape))))) - -def denote (width : Nat) (height : Nat) : _root_.LexLeanPreservation.Obs := - _root_.cond (__fits_0 width height) (_root_.LexLeanPreservation.Obs.value ((_root_.LexLeanTarget.TargetSyntax.Value.nat (Production.Main.shapeArea width height)))) _root_.LexLeanPreservation.Obs.overflow - -theorem root (width : Nat) (height : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat width), (_root_.LexLeanTarget.TargetSyntax.Value.nat height)] (_root_.LexLeanPreservation.Rel (__fits_0 width height) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Production.Main.shapeArea width height))) := - _root_.LexLeanPreservation.run_of_funRel (__rel_0 width height) - -end LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1 diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R1/Compose/RustCore.lex.tex b/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R1/Compose/RustCore.lex.tex deleted file mode 100644 index 9dcf62edb..000000000 --- a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R1/Compose/RustCore.lex.tex +++ /dev/null @@ -1,565 +0,0 @@ -\begin{lexlean}{RustCore} -\title{Certificate E LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.Compose.RustCore} -\begin{coremodule} -imports [ - LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1, - LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.RustCore, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.Compose.RustCore.__wt_0 : @16 := @453 { - all: [LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.Compose.RustCore.__wt_0], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.Compose.RustCore.root : @1128 := @1129 { - all: [LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.Compose.RustCore.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.RustCore.program -@1 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.RustCore.krate -@2 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.RustCore.flags -@3 := Production.Kernel.Shape -@4 := #0 -@6 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.__enc_0 @4 -@7 := LexLeanPreservation.Rust.WT -@8 := LexLeanTarget.TargetSyntax.Ty.adt -@9 := 0 -@10 := @8 @9 -@11 := @7 @0 -@12 := @11 @1 -@13 := @12 @2 -@15 := @13 @6 @10 -@16 := (__v : @3) -> @15 -@17 := fun (__v : @3) => @15 -@18 := LexLeanTarget.TargetSyntax.Value.nat -@19 := @18 @4 -@20 := LexLeanTarget.TargetSyntax.Ty.nat -@21 := LexLeanTarget.TargetSyntax.Program -@22 := LexLeanPreservation.Rust.RCrate -@23 := LexLeanPreservation.Rust.Flags -@24 := Nat -@25 := #3 -@26 := @7 @25 -@27 := #2 -@28 := @26 @27 -@29 := #1 -@36 := {p : @21} -> {c : @22} -> {A : @23} -> (n : @24) -> @28 @29 @19 @20 -@38 := LexLeanPreservation.Rust.wt_nat @0 -@45 := {c : @22} -> {A : @23} -> (n : @24) -> @11 @27 @29 @19 @20 -@46 := @38 @1 -@51 := {A : @23} -> (n : @24) -> @12 @29 @19 @20 -@52 := @46 @2 -@54 := @13 @19 @20 -@55 := (n : @24) -> @54 -@56 := @52 @4 -@57 := LexLeanTarget.TargetSyntax.Value -@58 := LexLeanTarget.TargetSyntax.Ty -@59 := List.nil.{0} -@60 := List.cons.{0} -@61 := @59 @57 -@62 := @60 @57 -@64 := @62 @19 @61 -@65 := @59 @58 -@66 := @60 @58 -@67 := @66 @20 -@68 := @67 @65 -@69 := LexLeanPreservation.Rust.WTL -@77 := {p : @21} -> {c : @22} -> {A : @23} -> @69 @27 @29 @4 @61 @65 -@79 := LexLeanPreservation.Rust.wtl_nil @0 -@80 := @69 @0 -@86 := {c : @22} -> {A : @23} -> @80 @29 @4 @61 @65 -@87 := @79 @1 -@88 := @80 @1 -@92 := {A : @23} -> @88 @4 @61 @65 -@93 := @87 @2 -@94 := @88 @2 -@95 := @94 @61 -@96 := @95 @65 -@97 := List.{0} -@98 := @97 @57 -@99 := @97 @58 -@100 := #6 -@101 := @7 @100 -@102 := #5 -@103 := @101 @102 -@104 := #4 -@107 := @103 @104 @25 @27 -@108 := #7 -@113 := @69 @108 @100 @102 @27 @29 -@114 := #8 -@117 := @69 @114 @108 @100 -@119 := @62 @102 @25 -@120 := @117 @119 -@122 := @66 @104 @27 -@132 := {p : @21} -> - {c : @22} -> - {A : @23} -> - {v : @57} -> {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @107) -> (hs : @113) -> @120 @122 -@134 := LexLeanPreservation.Rust.wtl_cons @0 -@138 := @11 @102 @104 @25 @27 -@142 := @80 @100 @102 @27 @29 -@154 := {c : @22} -> - {A : @23} -> - {v : @57} -> - {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @138) -> (hs : @142) -> @80 @108 @100 @119 @122 -@155 := @134 @1 -@158 := @12 @104 @25 @27 -@161 := @88 @102 @27 @29 -@171 := {A : @23} -> - {v : @57} -> - {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @158) -> (hs : @161) -> @88 @100 @119 @122 -@172 := @155 @2 -@174 := @13 @25 @27 -@176 := @94 @27 @29 -@184 := {v : @57} -> - {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @174) -> (hs : @176) -> @94 @119 @122 -@185 := @172 @19 -@186 := @18 @25 -@187 := @13 @186 -@188 := @187 @27 -@189 := @18 @102 -@190 := @62 @189 -@192 := @94 (@190 @25) -@198 := {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @188) -> (hs : @176) -> @192 @122 -@199 := @185 @20 -@200 := @18 @27 -@202 := @13 @200 @20 -@203 := @18 @104 -@204 := @62 @203 -@206 := @94 (@204 @25) -@207 := @67 @27 -@212 := {vs : @98} -> {ts : @99} -> (h : @202) -> (hs : @176) -> @206 @207 -@213 := @199 @61 -@214 := @18 @29 -@216 := @13 @214 @20 -@217 := @95 @29 -@218 := @62 @186 -@219 := @218 @61 -@220 := @94 @219 -@224 := {ts : @99} -> (h : @216) -> (hs : @217) -> @220 @207 -@225 := @213 @65 -@226 := @62 @200 -@227 := @226 @61 -@228 := @94 @227 -@229 := @228 @68 -@231 := (h : @54) -> (hs : @96) -> @229 -@232 := @225 @56 -@233 := @62 @214 -@234 := @233 @61 -@236 := @94 @234 @68 -@237 := (hs : @96) -> @236 -@238 := @232 @93 -@240 := @94 @64 @68 -@241 := Eq.{1} -@242 := Option.{0} -@243 := @242 @99 -@244 := @241 @243 -@245 := LexLeanPreservation.Rust.adtFields -@249 := @244 (@245 @100 @25 @27) -@250 := Option.some.{0} -@251 := @250 @99 -@252 := @251 @4 -@253 := @249 @252 -@256 := @7 @114 @108 @100 -@257 := LexLeanTarget.TargetSyntax.Value.adt -@259 := @257 @104 @25 -@260 := @256 @259 -@261 := @8 @102 -@271 := {p : @21} -> - {c : @22} -> - {A : @23} -> - {i : @24} -> {k : @24} -> {fs : @98} -> {tys : @99} -> (h : @253) -> (hf : @113) -> @260 @261 -@273 := LexLeanPreservation.Rust.wt_adt @0 -@274 := @245 @0 -@278 := @244 (@274 @25 @27) @252 -@290 := {c : @22} -> - {A : @23} -> - {i : @24} -> - {k : @24} -> {fs : @98} -> {tys : @99} -> (h : @278) -> (hf : @142) -> @11 @108 @100 @259 @261 -@291 := @273 @1 -@301 := {A : @23} -> - {i : @24} -> - {k : @24} -> {fs : @98} -> {tys : @99} -> (h : @278) -> (hf : @161) -> @12 @100 @259 @261 -@302 := @291 @2 -@303 := @13 @259 -@310 := {i : @24} -> - {k : @24} -> {fs : @98} -> {tys : @99} -> (h : @278) -> (hf : @176) -> @303 @261 -@311 := @302 @9 -@312 := @274 @9 -@321 := {k : @24} -> - {fs : @98} -> {tys : @99} -> (h : @244 (@312 @27) @252) -> (hf : @176) -> @303 @10 -@322 := @311 @9 -@323 := @312 @9 -@324 := @244 @323 -@325 := @324 @252 -@326 := @257 @9 -@333 := {fs : @98} -> {tys : @99} -> (h : @325) -> (hf : @176) -> @13 (@326 @25) @10 -@334 := @322 @64 -@335 := @228 @29 -@341 := {tys : @99} -> (h : @325) -> (hf : @335) -> @13 (@326 @219) @10 -@342 := @334 @68 -@349 := (h : @324 (@251 @68)) -> (hf : @236) -> @13 (@326 @227) @10 -@350 := Eq.refl.{1} -@351 := @350 @243 -@353 := @342 (@351 @323) -@357 := (hf : @240) -> @13 (@326 @234) @10 -@358 := @353 @238 -@361 := @13 (@326 @64) @10 -@362 := fun (__x0 : @24) => @358 -@363 := @52 @29 -@364 := @233 @64 -@365 := @67 @68 -@366 := @172 @214 -@367 := @13 @203 -@368 := @367 @27 -@369 := @18 @100 -@370 := @62 @369 -@372 := @94 (@370 @25) -@378 := {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @368) -> (hs : @176) -> @372 @122 -@379 := @366 @20 -@380 := @187 @20 -@385 := {vs : @98} -> {ts : @99} -> (h : @380) -> (hs : @176) -> @192 @207 -@386 := @379 @64 -@387 := @204 @219 -@388 := @94 @387 -@392 := {ts : @99} -> (h : @202) -> (hs : @335) -> @388 @207 -@393 := @386 @68 -@394 := @218 @227 -@395 := @94 @394 -@398 := (h : @216) -> (hs : @236) -> @395 @365 -@399 := @393 @363 -@400 := @226 @234 -@401 := @94 @400 -@402 := @401 @365 -@403 := (hs : @240) -> @402 -@404 := @399 @238 -@406 := @94 @364 @365 -@407 := 1 -@408 := @311 @407 -@409 := @312 @407 -@410 := @244 @409 -@411 := @410 @252 -@412 := @257 @407 -@419 := {fs : @98} -> {tys : @99} -> (h : @411) -> (hf : @176) -> @13 (@412 @25) @10 -@420 := @408 @364 -@427 := {tys : @99} -> (h : @411) -> (hf : @395 @29) -> @13 (@412 @387) @10 -@428 := @420 @365 -@435 := (h : @410 (@251 @365)) -> (hf : @402) -> @13 (@412 @394) @10 -@437 := @428 (@351 @409) -@441 := (hf : @406) -> @13 (@412 @400) @10 -@442 := @437 @404 -@445 := @13 (@412 @364) @10 -@447 := fun (__x0 : @24) => fun (__x1 : @24) => @442 -@453 := fun (__v : @3) => Production.Kernel.Shape.casesOn.{0} @17 @4 @362 @447 -@454 := @52 @27 -@457 := Prod.{0, 0} @24 @57 -@460 := Prod.mk.{0, 0} @24 @57 -@461 := @460 @407 -@462 := @461 @214 -@463 := @460 @9 -@464 := @463 @200 -@465 := @59 @457 -@466 := @60 @457 -@468 := @466 @464 @465 -@470 := @466 @462 @468 -@471 := Bool.true -@472 := LexLeanTarget.TargetSyntax.Function -@473 := LexLeanTarget.TargetSyntax.Program.functions -@474 := @473 @0 -@475 := @59 @24 -@476 := LexLeanTarget.TargetSyntax.Ty.unit -@477 := LexLeanTarget.TargetSyntax.Value.unit -@480 := LexLeanTarget.TargetSyntax.Expr.value @476 @477 -@485 := LexLeanTarget.TargetSyntax.Function.mk @475 @65 @476 @480 -@490 := List.getD.{0} @472 @474 @9 @485 -@494 := fun (__e_n : @24) => - LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.RustCore.root @4 @9 -@495 := @379 @61 -@496 := @204 @61 -@501 := {ts : @99} -> (h : @202) -> (hs : @217) -> @94 @496 @207 -@502 := @495 @65 -@505 := (h : @216) -> (hs : @96) -> @220 @68 -@507 := @502 @363 @93 -@508 := @172 @200 -@510 := @13 @189 @27 -@511 := @18 @108 -@512 := @62 @511 -@520 := {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @510) -> (hs : @176) -> @94 (@512 @25) @122 -@521 := @508 @20 -@527 := {vs : @98} -> {ts : @99} -> (h : @367 @20) -> (hs : @176) -> @372 @207 -@528 := @521 @234 -@529 := @220 @29 -@530 := @190 @496 -@531 := @94 @530 -@535 := {ts : @99} -> (h : @380) -> (hs : @529) -> @531 @207 -@536 := @528 @68 -@539 := (h : @202) -> (hs : @229) -> @388 @365 -@541 := @536 @454 @507 -@542 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.denote -@544 := @542 @27 @29 -@545 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.__fits_0 -@547 := @545 @27 @29 -@551 := @18 (Production.Main.shapeArea @27 @29) -@554 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.root @27 @29 -@555 := Bool -@556 := Ne.{1} -@557 := LexLeanPreservation.Obs -@558 := @556 @557 -@559 := LexLeanPreservation.Rel -@562 := @558 (@559 @29 @4) -@563 := LexLeanPreservation.Obs.stuck -@566 := (f : @555) -> (v : @57) -> @562 @563 -@568 := LexLeanPreservation.Rust.rel_ne_stuck @547 -@575 := (v : @57) -> @558 (@559 (@545 @25 @27) @4) @563 -@576 := @568 @551 -@580 := @558 (@559 @547 @551) @563 -@581 := @97 @457 -@582 := LexLeanPreservation.Rust.FunSem -@583 := #9 -@589 := (n : @24) -> @582 @583 @114 @108 @4 @100 -@590 := @242 @472 -@591 := @241 @590 -@598 := LexLeanRuntime.index (@97 @472) @472 (LexLeanRuntime.instIndexableList @472) -@602 := @591 (@598 (@473 @583) @100) -@603 := @250 @472 -@604 := @603 @102 -@605 := @602 @604 -@606 := #10 -@610 := @69 @606 @583 @114 @102 -@611 := LexLeanTarget.TargetSyntax.Function.types -@612 := @611 @100 -@613 := @610 @612 -@614 := @242 @581 -@615 := @241 @614 -@616 := LexLeanTarget.TargetSemantics.bindAll -@617 := LexLeanTarget.TargetSyntax.Function.parameters -@622 := @615 (@616 (@617 @108) @100 @465) -@623 := @250 @581 -@624 := @623 @102 -@625 := @622 @624 -@626 := @242 @555 -@627 := @241 @626 -@628 := LexLeanPreservation.Rust.fnFallible -@629 := #11 -@632 := @627 (@628 @629 @583) -@633 := @250 @555 -@634 := @633 @102 -@635 := @632 @634 -@636 := LexLeanPreservation.RunConv -@637 := #13 -@641 := @636 @637 @606 @114 @102 -@643 := @558 @100 @563 -@644 := Exists.{1} -@645 := LexLeanPreservation.Rust.ROut -@646 := @644 @645 -@647 := And -@648 := LexLeanPreservation.Rust.RealizesFn -@652 := @647 (@648 @583 @114 @4) -@653 := LexLeanPreservation.Rust.RCI -@655 := @653 #15 -@656 := LexLeanPreservation.Rust.fnIdent -@657 := @656 @637 -@664 := (hne : @643) -> @646 (fun (ro : @645) => @652 (@655 @657 @629 @4)) -@679 := {p : @21} -> - {c : @22} -> - {A : @23} -> - {f : @24} -> - {fn : @472} -> - {args : @98} -> - {env : @581} -> - {F : @555} -> - {o : @557} -> - (hB : @589) -> - (hfn : @605) -> (hwt : @613) -> (hbind : @625) -> (hF : @635) -> (hA : @641) -> @664 -@681 := LexLeanPreservation.Rust.compose @0 -@682 := @582 @0 -@687 := (n : @24) -> @682 @114 @108 @4 @100 -@688 := @598 @474 -@691 := @591 (@688 @100) @604 -@695 := @80 @583 @114 @102 @612 -@696 := @636 @0 -@699 := @696 @606 @114 @102 -@713 := {c : @22} -> - {A : @23} -> - {f : @24} -> - {fn : @472} -> - {args : @98} -> - {env : @581} -> - {F : @555} -> - {o : @557} -> - (hB : @687) -> - (hfn : @691) -> (hwt : @695) -> (hbind : @625) -> (hF : @635) -> (hA : @699) -> @664 -@714 := @681 @1 -@715 := @682 @1 -@719 := (n : @24) -> @715 @108 @4 @100 -@722 := @88 @114 @102 @612 -@723 := @628 @1 -@726 := @627 (@723 @583) @634 -@727 := @653 @1 -@737 := (hbind : @625) -> - (hF : @726) -> (hA : @699) -> (hne : @643) -> @646 (fun (ro : @645) => @652 (@727 @657 @629 @4)) -@747 := {A : @23} -> - {f : @24} -> - {fn : @472} -> - {args : @98} -> - {env : @581} -> {F : @555} -> {o : @557} -> (hB : @719) -> (hfn : @691) -> (hwt : @722) -> @737 -@748 := @714 @2 -@750 := @715 @2 @4 -@752 := (n : @24) -> @750 @100 -@753 := @94 @102 -@754 := @753 @612 -@763 := {f : @24} -> - {fn : @472} -> - {args : @98} -> - {env : @581} -> {F : @555} -> {o : @557} -> (hB : @752) -> (hfn : @691) -> (hwt : @754) -> @737 -@764 := @748 @9 -@766 := (n : @24) -> @750 @9 -@767 := @688 @9 -@768 := @591 @767 -@769 := @768 @604 -@770 := @723 @9 -@771 := @627 @770 -@772 := @771 @634 -@773 := @696 @9 -@775 := @773 @114 @102 -@777 := @727 (@656 @9) -@785 := (hF : @772) -> (hA : @775) -> (hne : @643) -> @646 (fun (ro : @645) => @652 (@777 @629 @4)) -@794 := {fn : @472} -> - {args : @98} -> - {env : @581} -> - {F : @555} -> {o : @557} -> (hB : @766) -> (hfn : @769) -> (hwt : @754) -> (hbind : @625) -> @785 -@795 := @764 @490 -@797 := @768 (@603 @490) -@798 := @611 @490 -@799 := @753 @798 -@801 := @616 (@617 @490) -@813 := {args : @98} -> - {env : @581} -> - {F : @555} -> - {o : @557} -> - (hB : @766) -> (hfn : @797) -> (hwt : @799) -> (hbind : @615 (@801 @100 @465) @624) -> @785 -@814 := @795 @400 -@816 := @512 (@370 @61) -@818 := @94 @816 @798 -@820 := @62 (@18 @114) -@822 := @820 (@512 @61) -@826 := @615 (@801 @822 @465) @624 -@828 := @62 (@18 @606) -@830 := @62 (@18 @583) -@832 := @828 (@830 @61) -@834 := @773 @832 @102 -@836 := @62 (@18 @637) -@839 := @62 (@18 #12) -@856 := {env : @581} -> - {F : @555} -> - {o : @557} -> - (hB : @766) -> - (hfn : @797) -> - (hwt : @818) -> - (hbind : @826) -> - (hF : @772) -> - (hA : @834) -> (hne : @643) -> @646 (fun (ro : @645) => @652 (@777 (@836 (@839 @61)) @4)) -@857 := @814 @470 -@859 := @370 (@190 @61) -@861 := @94 @859 @798 -@872 := @615 (@801 @816 @465) (@623 (@466 (@461 @369) (@466 (@463 @511) @465))) -@874 := @830 (@820 @61) -@876 := @773 @874 @102 -@878 := @62 (@18 @629) -@894 := {F : @555} -> - {o : @557} -> - (hB : @766) -> - (hfn : @797) -> - (hwt : @861) -> - (hbind : @872) -> - (hF : @772) -> - (hA : @876) -> (hne : @643) -> @646 (fun (ro : @645) => @652 (@777 (@839 (@878 @61)) @4)) -@895 := @857 @471 -@896 := @531 @798 -@907 := @615 (@801 @859 @465) (@623 (@466 (@461 @189) (@466 (@463 @369) @465))) -@909 := @771 (@633 @471) -@911 := @773 @822 @102 -@912 := @648 @471 -@930 := {o : @557} -> - (hB : @766) -> - (hfn : @797) -> - (hwt : @896) -> - (hbind : @907) -> - (hF : @909) -> - (hA : @911) -> - (hne : @643) -> @646 (fun (ro : @645) => @647 (@912 @114 @4) (@777 (@878 (@828 @61)) @4)) -@931 := @895 @544 -@932 := @388 @798 -@943 := @615 (@801 @530 @465) (@623 (@466 (@461 @203) (@466 (@463 @189) @465))) -@944 := @773 @816 -@946 := @542 @108 @100 -@947 := @944 @946 -@949 := @542 @114 @108 -@968 := (hB : @766) -> - (hfn : @797) -> - (hwt : @932) -> - (hbind : @943) -> - (hF : @909) -> - (hA : @947) -> - (hne : @558 @949 @563) -> @646 (fun (ro : @645) => @647 (@912 (@542 @606 @583) @4) (@777 @832 @4)) -@969 := @931 @494 -@970 := @395 @798 -@981 := @615 (@801 @387 @465) (@623 (@466 (@461 @186) (@466 (@463 @203) @465))) -@982 := @773 @859 -@984 := @542 @100 @102 -@1003 := (hfn : @797) -> - (hwt : @970) -> - (hbind : @981) -> - (hF : @909) -> - (hA : @982 @984) -> - (hne : @558 @946 @563) -> @646 (fun (ro : @645) => @647 (@912 (@542 @583 @114) @4) (@777 @874 @4)) -@1006 := @969 (@350 @590 @767) -@1007 := @401 @798 -@1018 := @615 (@801 @394 @465) (@623 (@466 (@461 @200) (@466 (@463 @186) @465))) -@1019 := @773 @530 -@1021 := @542 @102 @104 -@1037 := (hwt : @1007) -> - (hbind : @1018) -> - (hF : @909) -> - (hA : @1019 @1021) -> - (hne : @558 @984 @563) -> @646 (fun (ro : @645) => @647 (@912 @949 @4) (@777 @822 @4)) -@1038 := @1006 @541 -@1040 := @801 @400 @465 -@1043 := @615 @1040 (@623 @470) -@1044 := @773 @387 -@1046 := @542 @104 @25 -@1061 := (hbind : @1043) -> - (hF : @909) -> - (hA : @1044 @1046) -> - (hne : @558 @1021 @563) -> @646 (fun (ro : @645) => @647 (@912 @946 @4) (@777 @816 @4)) -@1064 := @1038 (@350 @614 @1040) -@1065 := @773 @394 -@1067 := @542 @25 @27 -@1081 := (hF : @909) -> - (hA : @1065 @1067) -> - (hne : @558 @1046 @563) -> @646 (fun (ro : @645) => @647 (@912 @984 @4) (@777 @859 @4)) -@1084 := @1064 (@350 @626 @770) -@1098 := (hA : @773 @400 @544) -> - (hne : @558 @1067 @563) -> @646 (fun (ro : @645) => @647 (@912 @1021 @4) (@777 @530 @4)) -@1099 := @1084 @554 -@1110 := (hne : @558 @544 @563) -> @646 (fun (ro : @645) => @647 (@912 @1046 @4) (@777 @387 @4)) -@1111 := @1099 @576 -@1117 := @647 (@912 @1067 @4) (@777 @394 @4) -@1119 := @646 (fun (ro : @645) => @1117) -@1121 := @646 (fun (__e_ro : @645) => @1117) -@1123 := LexLeanPreservation.Rust.RepresentableL @364 -@1124 := (__e_hrep : @1123) -> @1121 -@1125 := fun (__e_hrep : @1123) => @1111 -@1126 := (height : @24) -> @1124 -@1127 := fun (height : @24) => @1125 -@1128 := (width : @24) -> @1126 -@1129 := fun (width : @24) => @1127 -\end{coremodule} -\end{lexlean} diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R1/Compose/RustStd.lex.tex b/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R1/Compose/RustStd.lex.tex deleted file mode 100644 index fc899b5ef..000000000 --- a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R1/Compose/RustStd.lex.tex +++ /dev/null @@ -1,564 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1, - LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.Compose.RustStd.__wt_0 : @16 := @453 { - all: [LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.Compose.RustStd.__wt_0], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.Compose.RustStd.root : @1128 := @1129 { - all: [LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.RustStd.program -@1 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.RustStd.krate -@2 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.RustStd.flags -@3 := Production.Kernel.Shape -@4 := #0 -@6 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.__enc_0 @4 -@7 := LexLeanPreservation.Rust.WT -@8 := LexLeanTarget.TargetSyntax.Ty.adt -@9 := 0 -@10 := @8 @9 -@11 := @7 @0 -@12 := @11 @1 -@13 := @12 @2 -@15 := @13 @6 @10 -@16 := (__v : @3) -> @15 -@17 := fun (__v : @3) => @15 -@18 := LexLeanTarget.TargetSyntax.Value.nat -@19 := @18 @4 -@20 := LexLeanTarget.TargetSyntax.Ty.nat -@21 := LexLeanTarget.TargetSyntax.Program -@22 := LexLeanPreservation.Rust.RCrate -@23 := LexLeanPreservation.Rust.Flags -@24 := Nat -@25 := #3 -@26 := @7 @25 -@27 := #2 -@28 := @26 @27 -@29 := #1 -@36 := {p : @21} -> {c : @22} -> {A : @23} -> (n : @24) -> @28 @29 @19 @20 -@38 := LexLeanPreservation.Rust.wt_nat @0 -@45 := {c : @22} -> {A : @23} -> (n : @24) -> @11 @27 @29 @19 @20 -@46 := @38 @1 -@51 := {A : @23} -> (n : @24) -> @12 @29 @19 @20 -@52 := @46 @2 -@54 := @13 @19 @20 -@55 := (n : @24) -> @54 -@56 := @52 @4 -@57 := LexLeanTarget.TargetSyntax.Value -@58 := LexLeanTarget.TargetSyntax.Ty -@59 := List.nil.{0} -@60 := List.cons.{0} -@61 := @59 @57 -@62 := @60 @57 -@64 := @62 @19 @61 -@65 := @59 @58 -@66 := @60 @58 -@67 := @66 @20 -@68 := @67 @65 -@69 := LexLeanPreservation.Rust.WTL -@77 := {p : @21} -> {c : @22} -> {A : @23} -> @69 @27 @29 @4 @61 @65 -@79 := LexLeanPreservation.Rust.wtl_nil @0 -@80 := @69 @0 -@86 := {c : @22} -> {A : @23} -> @80 @29 @4 @61 @65 -@87 := @79 @1 -@88 := @80 @1 -@92 := {A : @23} -> @88 @4 @61 @65 -@93 := @87 @2 -@94 := @88 @2 -@95 := @94 @61 -@96 := @95 @65 -@97 := List.{0} -@98 := @97 @57 -@99 := @97 @58 -@100 := #6 -@101 := @7 @100 -@102 := #5 -@103 := @101 @102 -@104 := #4 -@107 := @103 @104 @25 @27 -@108 := #7 -@113 := @69 @108 @100 @102 @27 @29 -@114 := #8 -@117 := @69 @114 @108 @100 -@119 := @62 @102 @25 -@120 := @117 @119 -@122 := @66 @104 @27 -@132 := {p : @21} -> - {c : @22} -> - {A : @23} -> - {v : @57} -> {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @107) -> (hs : @113) -> @120 @122 -@134 := LexLeanPreservation.Rust.wtl_cons @0 -@138 := @11 @102 @104 @25 @27 -@142 := @80 @100 @102 @27 @29 -@154 := {c : @22} -> - {A : @23} -> - {v : @57} -> - {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @138) -> (hs : @142) -> @80 @108 @100 @119 @122 -@155 := @134 @1 -@158 := @12 @104 @25 @27 -@161 := @88 @102 @27 @29 -@171 := {A : @23} -> - {v : @57} -> - {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @158) -> (hs : @161) -> @88 @100 @119 @122 -@172 := @155 @2 -@174 := @13 @25 @27 -@176 := @94 @27 @29 -@184 := {v : @57} -> - {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @174) -> (hs : @176) -> @94 @119 @122 -@185 := @172 @19 -@186 := @18 @25 -@187 := @13 @186 -@188 := @187 @27 -@189 := @18 @102 -@190 := @62 @189 -@192 := @94 (@190 @25) -@198 := {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @188) -> (hs : @176) -> @192 @122 -@199 := @185 @20 -@200 := @18 @27 -@202 := @13 @200 @20 -@203 := @18 @104 -@204 := @62 @203 -@206 := @94 (@204 @25) -@207 := @67 @27 -@212 := {vs : @98} -> {ts : @99} -> (h : @202) -> (hs : @176) -> @206 @207 -@213 := @199 @61 -@214 := @18 @29 -@216 := @13 @214 @20 -@217 := @95 @29 -@218 := @62 @186 -@219 := @218 @61 -@220 := @94 @219 -@224 := {ts : @99} -> (h : @216) -> (hs : @217) -> @220 @207 -@225 := @213 @65 -@226 := @62 @200 -@227 := @226 @61 -@228 := @94 @227 -@229 := @228 @68 -@231 := (h : @54) -> (hs : @96) -> @229 -@232 := @225 @56 -@233 := @62 @214 -@234 := @233 @61 -@236 := @94 @234 @68 -@237 := (hs : @96) -> @236 -@238 := @232 @93 -@240 := @94 @64 @68 -@241 := Eq.{1} -@242 := Option.{0} -@243 := @242 @99 -@244 := @241 @243 -@245 := LexLeanPreservation.Rust.adtFields -@249 := @244 (@245 @100 @25 @27) -@250 := Option.some.{0} -@251 := @250 @99 -@252 := @251 @4 -@253 := @249 @252 -@256 := @7 @114 @108 @100 -@257 := LexLeanTarget.TargetSyntax.Value.adt -@259 := @257 @104 @25 -@260 := @256 @259 -@261 := @8 @102 -@271 := {p : @21} -> - {c : @22} -> - {A : @23} -> - {i : @24} -> {k : @24} -> {fs : @98} -> {tys : @99} -> (h : @253) -> (hf : @113) -> @260 @261 -@273 := LexLeanPreservation.Rust.wt_adt @0 -@274 := @245 @0 -@278 := @244 (@274 @25 @27) @252 -@290 := {c : @22} -> - {A : @23} -> - {i : @24} -> - {k : @24} -> {fs : @98} -> {tys : @99} -> (h : @278) -> (hf : @142) -> @11 @108 @100 @259 @261 -@291 := @273 @1 -@301 := {A : @23} -> - {i : @24} -> - {k : @24} -> {fs : @98} -> {tys : @99} -> (h : @278) -> (hf : @161) -> @12 @100 @259 @261 -@302 := @291 @2 -@303 := @13 @259 -@310 := {i : @24} -> - {k : @24} -> {fs : @98} -> {tys : @99} -> (h : @278) -> (hf : @176) -> @303 @261 -@311 := @302 @9 -@312 := @274 @9 -@321 := {k : @24} -> - {fs : @98} -> {tys : @99} -> (h : @244 (@312 @27) @252) -> (hf : @176) -> @303 @10 -@322 := @311 @9 -@323 := @312 @9 -@324 := @244 @323 -@325 := @324 @252 -@326 := @257 @9 -@333 := {fs : @98} -> {tys : @99} -> (h : @325) -> (hf : @176) -> @13 (@326 @25) @10 -@334 := @322 @64 -@335 := @228 @29 -@341 := {tys : @99} -> (h : @325) -> (hf : @335) -> @13 (@326 @219) @10 -@342 := @334 @68 -@349 := (h : @324 (@251 @68)) -> (hf : @236) -> @13 (@326 @227) @10 -@350 := Eq.refl.{1} -@351 := @350 @243 -@353 := @342 (@351 @323) -@357 := (hf : @240) -> @13 (@326 @234) @10 -@358 := @353 @238 -@361 := @13 (@326 @64) @10 -@362 := fun (__x0 : @24) => @358 -@363 := @52 @29 -@364 := @233 @64 -@365 := @67 @68 -@366 := @172 @214 -@367 := @13 @203 -@368 := @367 @27 -@369 := @18 @100 -@370 := @62 @369 -@372 := @94 (@370 @25) -@378 := {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @368) -> (hs : @176) -> @372 @122 -@379 := @366 @20 -@380 := @187 @20 -@385 := {vs : @98} -> {ts : @99} -> (h : @380) -> (hs : @176) -> @192 @207 -@386 := @379 @64 -@387 := @204 @219 -@388 := @94 @387 -@392 := {ts : @99} -> (h : @202) -> (hs : @335) -> @388 @207 -@393 := @386 @68 -@394 := @218 @227 -@395 := @94 @394 -@398 := (h : @216) -> (hs : @236) -> @395 @365 -@399 := @393 @363 -@400 := @226 @234 -@401 := @94 @400 -@402 := @401 @365 -@403 := (hs : @240) -> @402 -@404 := @399 @238 -@406 := @94 @364 @365 -@407 := 1 -@408 := @311 @407 -@409 := @312 @407 -@410 := @244 @409 -@411 := @410 @252 -@412 := @257 @407 -@419 := {fs : @98} -> {tys : @99} -> (h : @411) -> (hf : @176) -> @13 (@412 @25) @10 -@420 := @408 @364 -@427 := {tys : @99} -> (h : @411) -> (hf : @395 @29) -> @13 (@412 @387) @10 -@428 := @420 @365 -@435 := (h : @410 (@251 @365)) -> (hf : @402) -> @13 (@412 @394) @10 -@437 := @428 (@351 @409) -@441 := (hf : @406) -> @13 (@412 @400) @10 -@442 := @437 @404 -@445 := @13 (@412 @364) @10 -@447 := fun (__x0 : @24) => fun (__x1 : @24) => @442 -@453 := fun (__v : @3) => Production.Kernel.Shape.casesOn.{0} @17 @4 @362 @447 -@454 := @52 @27 -@457 := Prod.{0, 0} @24 @57 -@460 := Prod.mk.{0, 0} @24 @57 -@461 := @460 @407 -@462 := @461 @214 -@463 := @460 @9 -@464 := @463 @200 -@465 := @59 @457 -@466 := @60 @457 -@468 := @466 @464 @465 -@470 := @466 @462 @468 -@471 := Bool.true -@472 := LexLeanTarget.TargetSyntax.Function -@473 := LexLeanTarget.TargetSyntax.Program.functions -@474 := @473 @0 -@475 := @59 @24 -@476 := LexLeanTarget.TargetSyntax.Ty.unit -@477 := LexLeanTarget.TargetSyntax.Value.unit -@480 := LexLeanTarget.TargetSyntax.Expr.value @476 @477 -@485 := LexLeanTarget.TargetSyntax.Function.mk @475 @65 @476 @480 -@490 := List.getD.{0} @472 @474 @9 @485 -@494 := fun (__e_n : @24) => LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.RustStd.root @4 @9 -@495 := @379 @61 -@496 := @204 @61 -@501 := {ts : @99} -> (h : @202) -> (hs : @217) -> @94 @496 @207 -@502 := @495 @65 -@505 := (h : @216) -> (hs : @96) -> @220 @68 -@507 := @502 @363 @93 -@508 := @172 @200 -@510 := @13 @189 @27 -@511 := @18 @108 -@512 := @62 @511 -@520 := {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @510) -> (hs : @176) -> @94 (@512 @25) @122 -@521 := @508 @20 -@527 := {vs : @98} -> {ts : @99} -> (h : @367 @20) -> (hs : @176) -> @372 @207 -@528 := @521 @234 -@529 := @220 @29 -@530 := @190 @496 -@531 := @94 @530 -@535 := {ts : @99} -> (h : @380) -> (hs : @529) -> @531 @207 -@536 := @528 @68 -@539 := (h : @202) -> (hs : @229) -> @388 @365 -@541 := @536 @454 @507 -@542 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.denote -@544 := @542 @27 @29 -@545 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.__fits_0 -@547 := @545 @27 @29 -@551 := @18 (Production.Main.shapeArea @27 @29) -@554 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.root @27 @29 -@555 := Bool -@556 := Ne.{1} -@557 := LexLeanPreservation.Obs -@558 := @556 @557 -@559 := LexLeanPreservation.Rel -@562 := @558 (@559 @29 @4) -@563 := LexLeanPreservation.Obs.stuck -@566 := (f : @555) -> (v : @57) -> @562 @563 -@568 := LexLeanPreservation.Rust.rel_ne_stuck @547 -@575 := (v : @57) -> @558 (@559 (@545 @25 @27) @4) @563 -@576 := @568 @551 -@580 := @558 (@559 @547 @551) @563 -@581 := @97 @457 -@582 := LexLeanPreservation.Rust.FunSem -@583 := #9 -@589 := (n : @24) -> @582 @583 @114 @108 @4 @100 -@590 := @242 @472 -@591 := @241 @590 -@598 := LexLeanRuntime.index (@97 @472) @472 (LexLeanRuntime.instIndexableList @472) -@602 := @591 (@598 (@473 @583) @100) -@603 := @250 @472 -@604 := @603 @102 -@605 := @602 @604 -@606 := #10 -@610 := @69 @606 @583 @114 @102 -@611 := LexLeanTarget.TargetSyntax.Function.types -@612 := @611 @100 -@613 := @610 @612 -@614 := @242 @581 -@615 := @241 @614 -@616 := LexLeanTarget.TargetSemantics.bindAll -@617 := LexLeanTarget.TargetSyntax.Function.parameters -@622 := @615 (@616 (@617 @108) @100 @465) -@623 := @250 @581 -@624 := @623 @102 -@625 := @622 @624 -@626 := @242 @555 -@627 := @241 @626 -@628 := LexLeanPreservation.Rust.fnFallible -@629 := #11 -@632 := @627 (@628 @629 @583) -@633 := @250 @555 -@634 := @633 @102 -@635 := @632 @634 -@636 := LexLeanPreservation.RunConv -@637 := #13 -@641 := @636 @637 @606 @114 @102 -@643 := @558 @100 @563 -@644 := Exists.{1} -@645 := LexLeanPreservation.Rust.ROut -@646 := @644 @645 -@647 := And -@648 := LexLeanPreservation.Rust.RealizesFn -@652 := @647 (@648 @583 @114 @4) -@653 := LexLeanPreservation.Rust.RCI -@655 := @653 #15 -@656 := LexLeanPreservation.Rust.fnIdent -@657 := @656 @637 -@664 := (hne : @643) -> @646 (fun (ro : @645) => @652 (@655 @657 @629 @4)) -@679 := {p : @21} -> - {c : @22} -> - {A : @23} -> - {f : @24} -> - {fn : @472} -> - {args : @98} -> - {env : @581} -> - {F : @555} -> - {o : @557} -> - (hB : @589) -> - (hfn : @605) -> (hwt : @613) -> (hbind : @625) -> (hF : @635) -> (hA : @641) -> @664 -@681 := LexLeanPreservation.Rust.compose @0 -@682 := @582 @0 -@687 := (n : @24) -> @682 @114 @108 @4 @100 -@688 := @598 @474 -@691 := @591 (@688 @100) @604 -@695 := @80 @583 @114 @102 @612 -@696 := @636 @0 -@699 := @696 @606 @114 @102 -@713 := {c : @22} -> - {A : @23} -> - {f : @24} -> - {fn : @472} -> - {args : @98} -> - {env : @581} -> - {F : @555} -> - {o : @557} -> - (hB : @687) -> - (hfn : @691) -> (hwt : @695) -> (hbind : @625) -> (hF : @635) -> (hA : @699) -> @664 -@714 := @681 @1 -@715 := @682 @1 -@719 := (n : @24) -> @715 @108 @4 @100 -@722 := @88 @114 @102 @612 -@723 := @628 @1 -@726 := @627 (@723 @583) @634 -@727 := @653 @1 -@737 := (hbind : @625) -> - (hF : @726) -> (hA : @699) -> (hne : @643) -> @646 (fun (ro : @645) => @652 (@727 @657 @629 @4)) -@747 := {A : @23} -> - {f : @24} -> - {fn : @472} -> - {args : @98} -> - {env : @581} -> {F : @555} -> {o : @557} -> (hB : @719) -> (hfn : @691) -> (hwt : @722) -> @737 -@748 := @714 @2 -@750 := @715 @2 @4 -@752 := (n : @24) -> @750 @100 -@753 := @94 @102 -@754 := @753 @612 -@763 := {f : @24} -> - {fn : @472} -> - {args : @98} -> - {env : @581} -> {F : @555} -> {o : @557} -> (hB : @752) -> (hfn : @691) -> (hwt : @754) -> @737 -@764 := @748 @9 -@766 := (n : @24) -> @750 @9 -@767 := @688 @9 -@768 := @591 @767 -@769 := @768 @604 -@770 := @723 @9 -@771 := @627 @770 -@772 := @771 @634 -@773 := @696 @9 -@775 := @773 @114 @102 -@777 := @727 (@656 @9) -@785 := (hF : @772) -> (hA : @775) -> (hne : @643) -> @646 (fun (ro : @645) => @652 (@777 @629 @4)) -@794 := {fn : @472} -> - {args : @98} -> - {env : @581} -> - {F : @555} -> {o : @557} -> (hB : @766) -> (hfn : @769) -> (hwt : @754) -> (hbind : @625) -> @785 -@795 := @764 @490 -@797 := @768 (@603 @490) -@798 := @611 @490 -@799 := @753 @798 -@801 := @616 (@617 @490) -@813 := {args : @98} -> - {env : @581} -> - {F : @555} -> - {o : @557} -> - (hB : @766) -> (hfn : @797) -> (hwt : @799) -> (hbind : @615 (@801 @100 @465) @624) -> @785 -@814 := @795 @400 -@816 := @512 (@370 @61) -@818 := @94 @816 @798 -@820 := @62 (@18 @114) -@822 := @820 (@512 @61) -@826 := @615 (@801 @822 @465) @624 -@828 := @62 (@18 @606) -@830 := @62 (@18 @583) -@832 := @828 (@830 @61) -@834 := @773 @832 @102 -@836 := @62 (@18 @637) -@839 := @62 (@18 #12) -@856 := {env : @581} -> - {F : @555} -> - {o : @557} -> - (hB : @766) -> - (hfn : @797) -> - (hwt : @818) -> - (hbind : @826) -> - (hF : @772) -> - (hA : @834) -> (hne : @643) -> @646 (fun (ro : @645) => @652 (@777 (@836 (@839 @61)) @4)) -@857 := @814 @470 -@859 := @370 (@190 @61) -@861 := @94 @859 @798 -@872 := @615 (@801 @816 @465) (@623 (@466 (@461 @369) (@466 (@463 @511) @465))) -@874 := @830 (@820 @61) -@876 := @773 @874 @102 -@878 := @62 (@18 @629) -@894 := {F : @555} -> - {o : @557} -> - (hB : @766) -> - (hfn : @797) -> - (hwt : @861) -> - (hbind : @872) -> - (hF : @772) -> - (hA : @876) -> (hne : @643) -> @646 (fun (ro : @645) => @652 (@777 (@839 (@878 @61)) @4)) -@895 := @857 @471 -@896 := @531 @798 -@907 := @615 (@801 @859 @465) (@623 (@466 (@461 @189) (@466 (@463 @369) @465))) -@909 := @771 (@633 @471) -@911 := @773 @822 @102 -@912 := @648 @471 -@930 := {o : @557} -> - (hB : @766) -> - (hfn : @797) -> - (hwt : @896) -> - (hbind : @907) -> - (hF : @909) -> - (hA : @911) -> - (hne : @643) -> @646 (fun (ro : @645) => @647 (@912 @114 @4) (@777 (@878 (@828 @61)) @4)) -@931 := @895 @544 -@932 := @388 @798 -@943 := @615 (@801 @530 @465) (@623 (@466 (@461 @203) (@466 (@463 @189) @465))) -@944 := @773 @816 -@946 := @542 @108 @100 -@947 := @944 @946 -@949 := @542 @114 @108 -@968 := (hB : @766) -> - (hfn : @797) -> - (hwt : @932) -> - (hbind : @943) -> - (hF : @909) -> - (hA : @947) -> - (hne : @558 @949 @563) -> @646 (fun (ro : @645) => @647 (@912 (@542 @606 @583) @4) (@777 @832 @4)) -@969 := @931 @494 -@970 := @395 @798 -@981 := @615 (@801 @387 @465) (@623 (@466 (@461 @186) (@466 (@463 @203) @465))) -@982 := @773 @859 -@984 := @542 @100 @102 -@1003 := (hfn : @797) -> - (hwt : @970) -> - (hbind : @981) -> - (hF : @909) -> - (hA : @982 @984) -> - (hne : @558 @946 @563) -> @646 (fun (ro : @645) => @647 (@912 (@542 @583 @114) @4) (@777 @874 @4)) -@1006 := @969 (@350 @590 @767) -@1007 := @401 @798 -@1018 := @615 (@801 @394 @465) (@623 (@466 (@461 @200) (@466 (@463 @186) @465))) -@1019 := @773 @530 -@1021 := @542 @102 @104 -@1037 := (hwt : @1007) -> - (hbind : @1018) -> - (hF : @909) -> - (hA : @1019 @1021) -> - (hne : @558 @984 @563) -> @646 (fun (ro : @645) => @647 (@912 @949 @4) (@777 @822 @4)) -@1038 := @1006 @541 -@1040 := @801 @400 @465 -@1043 := @615 @1040 (@623 @470) -@1044 := @773 @387 -@1046 := @542 @104 @25 -@1061 := (hbind : @1043) -> - (hF : @909) -> - (hA : @1044 @1046) -> - (hne : @558 @1021 @563) -> @646 (fun (ro : @645) => @647 (@912 @946 @4) (@777 @816 @4)) -@1064 := @1038 (@350 @614 @1040) -@1065 := @773 @394 -@1067 := @542 @25 @27 -@1081 := (hF : @909) -> - (hA : @1065 @1067) -> - (hne : @558 @1046 @563) -> @646 (fun (ro : @645) => @647 (@912 @984 @4) (@777 @859 @4)) -@1084 := @1064 (@350 @626 @770) -@1098 := (hA : @773 @400 @544) -> - (hne : @558 @1067 @563) -> @646 (fun (ro : @645) => @647 (@912 @1021 @4) (@777 @530 @4)) -@1099 := @1084 @554 -@1110 := (hne : @558 @544 @563) -> @646 (fun (ro : @645) => @647 (@912 @1046 @4) (@777 @387 @4)) -@1111 := @1099 @576 -@1117 := @647 (@912 @1067 @4) (@777 @394 @4) -@1119 := @646 (fun (ro : @645) => @1117) -@1121 := @646 (fun (__e_ro : @645) => @1117) -@1123 := LexLeanPreservation.Rust.RepresentableL @364 -@1124 := (__e_hrep : @1123) -> @1121 -@1125 := fun (__e_hrep : @1123) => @1111 -@1126 := (height : @24) -> @1124 -@1127 := fun (height : @24) => @1125 -@1128 := (width : @24) -> @1126 -@1129 := fun (width : @24) => @1127 -\end{coremodule} -\end{lexlean} diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R1/RustCore.lean b/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R1/RustCore.lean deleted file mode 100644 index a3a266065..000000000 --- a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R1/RustCore.lean +++ /dev/null @@ -1,42 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.RustCore -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [{ constructors := [[.nat], [.nat, .nat]] }], functions := [ - { parameters := [0, 1], types := [.nat, .nat], result := .nat, - body := (.call 1 [(.build (.adt 1) (.adt 0) [(.var 0), (.var 1)])]) }, - { parameters := [0], types := [(.adt 0)], result := .nat, - body := (.«match» .nat (.var 0) [(.arm (.adt 0) [1] (.prim .natMul [(.prim .natMul [(.var 1), (.var 1)]), (.value .nat (.nat 3))])), (.arm (.adt 1) [2, 3] (.prim .natMul [(.var 2), (.var 3)]))]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .core, items := [ - (.enum (.adt 0) [{ number := 0, fields := [.nat] }, { number := 1, fields := [.nat, .nat] }]), - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .nat) (.mk [] (.call (.function 1) [(.construct (.adt 0 1) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))])] false))), - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 1)) [(.mk (.adt 0 0 [(.bind (.generated .binding 1))]) (.mk [(.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 1)))] (.call (.runtime .natMul) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] true)))), (.mk (.bind (.generated .operand 5)) none (.lit (.nat 3)))] (.call (.runtime .natMul) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false))), (.mk (.adt 0 1 [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))]) (.mk [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 3)))] (.call (.runtime .natMul) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false)))])))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 1) [(.construct (.adt 0 1) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))])] false), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.callF (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, .nat]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) (Corr.lNil))) rfl rfl rfl rfl)⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 1)) [(.mk (.adt 0 0 [(.bind (.generated .binding 1))]) (.mk [(.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 1)))] (.call (.runtime .natMul) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] true)))), (.mk (.bind (.generated .operand 5)) none (.lit (.nat 3)))] (.call (.runtime .natMul) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false))), (.mk (.adt 0 1 [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))]) (.mk [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 3)))] (.call (.runtime .natMul) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false)))]), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.adt 0)) (U := []) (view := false) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 1)))] (.call (.runtime .natMul) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] true)))), (.mk (.bind (.generated .operand 5)) none (.lit (.nat 3)))]) (tail := (.call (.runtime .natMul) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false)) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (2, .nat, (some 2)), (0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 3)))]) (tail := (.call (.runtime .natMul) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false)) (Corr.mNil) rfl rfl rfl (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natMul) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl)⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | _ + 2 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.RustCore diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R1/RustStd.lean b/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R1/RustStd.lean deleted file mode 100644 index 14ef6ec68..000000000 --- a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R1/RustStd.lean +++ /dev/null @@ -1,42 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [{ constructors := [[.nat], [.nat, .nat]] }], functions := [ - { parameters := [0, 1], types := [.nat, .nat], result := .nat, - body := (.call 1 [(.build (.adt 1) (.adt 0) [(.var 0), (.var 1)])]) }, - { parameters := [0], types := [(.adt 0)], result := .nat, - body := (.«match» .nat (.var 0) [(.arm (.adt 0) [1] (.prim .natMul [(.prim .natMul [(.var 1), (.var 1)]), (.value .nat (.nat 3))])), (.arm (.adt 1) [2, 3] (.prim .natMul [(.var 2), (.var 3)]))]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.enum (.adt 0) [{ number := 0, fields := [.nat] }, { number := 1, fields := [.nat, .nat] }]), - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .nat) (.mk [] (.call (.function 1) [(.construct (.adt 0 1) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))])] false))), - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 1)) [(.mk (.adt 0 0 [(.bind (.generated .binding 1))]) (.mk [(.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 1)))] (.call (.runtime .natMul) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] true)))), (.mk (.bind (.generated .operand 5)) none (.lit (.nat 3)))] (.call (.runtime .natMul) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false))), (.mk (.adt 0 1 [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))]) (.mk [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 3)))] (.call (.runtime .natMul) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false)))])))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 1) [(.construct (.adt 0 1) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))])] false), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.callF (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, .nat]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) (Corr.lNil))) rfl rfl rfl rfl)⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 1)) [(.mk (.adt 0 0 [(.bind (.generated .binding 1))]) (.mk [(.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 1)))] (.call (.runtime .natMul) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] true)))), (.mk (.bind (.generated .operand 5)) none (.lit (.nat 3)))] (.call (.runtime .natMul) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false))), (.mk (.adt 0 1 [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))]) (.mk [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 3)))] (.call (.runtime .natMul) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false)))]), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.adt 0)) (U := []) (view := false) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 1)))] (.call (.runtime .natMul) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] true)))), (.mk (.bind (.generated .operand 5)) none (.lit (.nat 3)))]) (tail := (.call (.runtime .natMul) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false)) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (2, .nat, (some 2)), (0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 3)))]) (tail := (.call (.runtime .natMul) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false)) (Corr.mNil) rfl rfl rfl (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natMul) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl)⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | _ + 2 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.RustStd diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R2.lean b/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R2.lean deleted file mode 100644 index c578ae9af..000000000 --- a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R2.lean +++ /dev/null @@ -1,51 +0,0 @@ -import LexLeanPreservation.Core -import LexLeanPreservation.Values -import LexLeanPreservation.Primitives -import LexLeanPreservation.Fixed -import LexLeanPreservation.Keys -import LexLeanPreservation.Templates -import LexLeanPreservation.Validate -import Production.Kernel -import Production.Main -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -set_option linter.unusedVariables false -namespace LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2 - -def __prog : _root_.LexLeanTarget.TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0], types := [.nat], result := .nat, - body := (.call 1 [(.closure 2 []), (.var 0)]) }, - { parameters := [0, 1], types := [(.fn [.nat] .nat), .nat], result := .nat, - body := (.apply (.var 0) [(.apply (.var 0) [(.var 1)])]) }, - { parameters := [0], types := [.nat], result := .nat, - body := (.prim .natAdd [(.var 0), (.var 0)]) }] } - -def __fits_1 (step : (Nat -> Nat)) (__ff_0 : Nat -> Bool) (value : Nat) : Bool := - (Bool.true && (((Bool.true && ((Bool.true && Bool.true) && (__ff_0 (value)))) && Bool.true) && (__ff_0 ((step (value)))))) - -theorem __rel_1 (step : (Nat -> Nat)) (__ff_0 : Nat -> Bool) (__fi_0 : Nat) (__fc_0 : List _root_.LexLeanTarget.TargetSyntax.Value) (__fh_0 : ∀ (__p0 : Nat), _root_.LexLeanPreservation.FunRel __prog __fi_0 (_root_.LexLeanRuntime.append __fc_0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat __p0)]) (_root_.LexLeanPreservation.Rel (__ff_0 __p0) (_root_.LexLeanTarget.TargetSyntax.Value.nat (step __p0)))) (value : Nat) : _root_.LexLeanPreservation.FunRel __prog 1 [(_root_.LexLeanTarget.TargetSyntax.Value.closure __fi_0 __fc_0), (_root_.LexLeanTarget.TargetSyntax.Value.nat value)] (_root_.LexLeanPreservation.Rel (__fits_1 step __ff_0 value) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Production.Kernel.applyTwice step value))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_apply (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_apply (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__fh_0 (value))) _root_.LexLeanPreservation.convL_nil) (__fh_0 ((step (value))))) - -def __fits_2 (number : Nat) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (number + number) 18446744073709551616)) - -theorem __rel_2 (number : Nat) : _root_.LexLeanPreservation.FunRel __prog 2 [(_root_.LexLeanTarget.TargetSyntax.Value.nat number)] (_root_.LexLeanPreservation.Rel (__fits_2 number) (_root_.LexLeanTarget.TargetSyntax.Value.nat ((number + number)))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd number number)) - -def __fits_0 (value : Nat) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && (__fits_1 ((fun (number : Nat) => (number + number))) (fun (__p0 : Nat) => __fits_2 __p0) (value))) - -attribute [local irreducible] Production.Kernel.applyTwice in -theorem __rel_0 (value : Nat) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat value)] (_root_.LexLeanPreservation.Rel (__fits_0 value) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Production.Main.quadruple value))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_1 ((fun (number : Nat) => (number + number))) (fun (__p0 : Nat) => __fits_2 __p0) (2) ([]) (fun (__p0 : Nat) => __rel_2 __p0) (value))) - -def denote (value : Nat) : _root_.LexLeanPreservation.Obs := - _root_.cond (__fits_0 value) (_root_.LexLeanPreservation.Obs.value ((_root_.LexLeanTarget.TargetSyntax.Value.nat (Production.Main.quadruple value)))) _root_.LexLeanPreservation.Obs.overflow - -theorem root (value : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat value)] (_root_.LexLeanPreservation.Rel (__fits_0 value) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Production.Main.quadruple value))) := - _root_.LexLeanPreservation.run_of_funRel (__rel_0 value) - -end LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2 diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R2/Compose/RustCore.lex.tex b/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R2/Compose/RustCore.lex.tex deleted file mode 100644 index 48b970872..000000000 --- a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R2/Compose/RustCore.lex.tex +++ /dev/null @@ -1,417 +0,0 @@ -\begin{lexlean}{RustCore} -\title{Certificate E LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.Compose.RustCore} -\begin{coremodule} -imports [ - LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2, - LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.RustCore, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.Compose.RustCore.root : @825 := @826 { - all: [LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.Compose.RustCore.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.RustCore.program -@1 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.RustCore.krate -@2 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.RustCore.flags -@3 := Nat -@4 := #1 -@5 := LexLeanTarget.TargetSyntax.Value.nat -@6 := @5 @4 -@7 := LexLeanTarget.TargetSyntax.Ty.nat -@8 := LexLeanTarget.TargetSyntax.Program -@9 := LexLeanPreservation.Rust.RCrate -@10 := LexLeanPreservation.Rust.Flags -@11 := LexLeanPreservation.Rust.WT -@12 := #3 -@13 := @11 @12 -@14 := #2 -@16 := @13 @14 @4 -@17 := #0 -@18 := @5 @17 -@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 -@26 := LexLeanPreservation.Rust.wt_nat @0 -@27 := @11 @0 -@34 := {c : @9} -> {A : @10} -> (n : @3) -> @27 @14 @4 @18 @7 -@35 := @26 @1 -@36 := @27 @1 -@41 := {A : @10} -> (n : @3) -> @36 @4 @18 @7 -@42 := @35 @2 -@43 := @36 @2 -@46 := (n : @3) -> @43 @18 @7 -@47 := @42 @4 -@49 := @43 @6 @7 -@50 := LexLeanTarget.TargetSyntax.Value -@51 := List.nil.{0} -@52 := List.cons.{0} -@53 := @51 @50 -@54 := @52 @50 -@56 := @54 @6 @53 -@59 := Prod.{0, 0} @3 @50 -@60 := 0 -@64 := Prod.mk.{0, 0} @3 @50 @60 -@65 := @64 @6 -@66 := @51 @59 -@67 := @52 @59 -@69 := @67 @65 @66 -@70 := Bool.true -@71 := LexLeanTarget.TargetSyntax.Function -@72 := LexLeanTarget.TargetSyntax.Program.functions -@73 := @72 @0 -@74 := LexLeanTarget.TargetSyntax.Ty -@75 := @51 @3 -@76 := @51 @74 -@77 := LexLeanTarget.TargetSyntax.Ty.unit -@78 := LexLeanTarget.TargetSyntax.Value.unit -@81 := LexLeanTarget.TargetSyntax.Expr.value @77 @78 -@86 := LexLeanTarget.TargetSyntax.Function.mk @75 @76 @77 @81 -@91 := List.getD.{0} @71 @73 @60 @86 -@95 := fun (__e_n : @3) => - LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.RustCore.root @17 @60 -@96 := LexLeanPreservation.Rust.WTL -@104 := {p : @8} -> {c : @9} -> {A : @10} -> @96 @14 @4 @17 @53 @76 -@106 := LexLeanPreservation.Rust.wtl_nil @0 -@107 := @96 @0 -@113 := {c : @9} -> {A : @10} -> @107 @4 @17 @53 @76 -@114 := @106 @1 -@115 := @107 @1 -@119 := {A : @10} -> @115 @17 @53 @76 -@120 := @114 @2 -@121 := @115 @2 -@122 := @121 @53 -@123 := @122 @76 -@124 := List.{0} -@125 := @124 @50 -@126 := @124 @74 -@127 := #6 -@128 := @11 @127 -@129 := #5 -@130 := @128 @129 -@131 := #4 -@134 := @130 @131 @12 @14 -@135 := #7 -@140 := @96 @135 @127 @129 @14 @4 -@141 := #8 -@144 := @96 @141 @135 @127 -@146 := @54 @129 @12 -@147 := @144 @146 -@148 := @52 @74 -@150 := @148 @131 @14 -@160 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {v : @50} -> {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @134) -> (hs : @140) -> @147 @150 -@162 := LexLeanPreservation.Rust.wtl_cons @0 -@182 := {c : @9} -> - {A : @10} -> - {v : @50} -> - {t : @74} -> - {vs : @125} -> - {ts : @126} -> - (h : @27 @129 @131 @12 @14) -> (hs : @107 @127 @129 @14 @4) -> @107 @135 @127 @146 @150 -@183 := @162 @1 -@199 := {A : @10} -> - {v : @50} -> - {t : @74} -> - {vs : @125} -> - {ts : @126} -> (h : @36 @131 @12 @14) -> (hs : @115 @129 @14 @4) -> @115 @127 @146 @150 -@200 := @183 @2 -@202 := @43 @12 @14 -@204 := @121 @14 @4 -@212 := {v : @50} -> - {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @202) -> (hs : @204) -> @121 @146 @150 -@213 := @200 @6 -@214 := @5 @131 -@216 := @43 @214 @14 -@217 := @5 @127 -@218 := @54 @217 -@226 := {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @216) -> (hs : @204) -> @121 (@218 @12) @150 -@227 := @213 @7 -@228 := @5 @12 -@230 := @43 @228 @7 -@231 := @5 @129 -@232 := @54 @231 -@234 := @121 (@232 @12) -@235 := @148 @7 -@236 := @235 @14 -@241 := {vs : @125} -> {ts : @126} -> (h : @230) -> (hs : @204) -> @234 @236 -@242 := @227 @53 -@243 := @5 @14 -@245 := @43 @243 @7 -@246 := @122 @4 -@248 := @54 @214 @53 -@249 := @121 @248 -@253 := {ts : @126} -> (h : @245) -> (hs : @246) -> @249 @236 -@254 := @242 @76 -@256 := @54 @228 @53 -@257 := @121 @256 -@258 := @235 @76 -@261 := (h : @49) -> (hs : @123) -> @257 @258 -@262 := @254 @47 -@264 := @54 @243 @53 -@265 := @121 @264 -@267 := (hs : @123) -> @265 @258 -@268 := @262 @120 -@269 := @121 @56 -@270 := @269 @258 -@271 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.denote -@272 := @271 @4 -@273 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.__fits_0 -@274 := @273 @4 -@277 := @5 (Production.Main.quadruple @4) -@279 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.root @4 -@280 := Bool -@281 := Ne.{1} -@282 := LexLeanPreservation.Obs -@283 := @281 @282 -@284 := LexLeanPreservation.Rel -@287 := @283 (@284 @4 @17) -@288 := LexLeanPreservation.Obs.stuck -@291 := (f : @280) -> (v : @50) -> @287 @288 -@293 := LexLeanPreservation.Rust.rel_ne_stuck @274 -@299 := (v : @50) -> @283 (@284 (@273 @14) @17) @288 -@300 := @293 @277 -@304 := @283 (@284 @274 @277) @288 -@305 := @124 @59 -@306 := LexLeanPreservation.Rust.FunSem -@307 := #9 -@313 := (n : @3) -> @306 @307 @141 @135 @17 @127 -@314 := Eq.{1} -@315 := Option.{0} -@316 := @315 @71 -@317 := @314 @316 -@324 := LexLeanRuntime.index (@124 @71) @71 (LexLeanRuntime.instIndexableList @71) -@328 := @317 (@324 (@72 @307) @127) -@329 := Option.some.{0} -@330 := @329 @71 -@331 := @330 @129 -@332 := @328 @331 -@333 := #10 -@337 := @96 @333 @307 @141 @129 -@338 := LexLeanTarget.TargetSyntax.Function.types -@339 := @338 @127 -@340 := @337 @339 -@341 := @315 @305 -@342 := @314 @341 -@343 := LexLeanTarget.TargetSemantics.bindAll -@344 := LexLeanTarget.TargetSyntax.Function.parameters -@349 := @342 (@343 (@344 @135) @127 @66) -@350 := @329 @305 -@351 := @350 @129 -@352 := @349 @351 -@353 := @315 @280 -@354 := @314 @353 -@355 := LexLeanPreservation.Rust.fnFallible -@356 := #11 -@359 := @354 (@355 @356 @307) -@360 := @329 @280 -@361 := @360 @129 -@362 := @359 @361 -@363 := LexLeanPreservation.RunConv -@364 := #13 -@368 := @363 @364 @333 @141 @129 -@370 := @283 @127 @288 -@371 := Exists.{1} -@372 := LexLeanPreservation.Rust.ROut -@373 := @371 @372 -@374 := And -@375 := LexLeanPreservation.Rust.RealizesFn -@379 := @374 (@375 @307 @141 @17) -@380 := LexLeanPreservation.Rust.RCI -@382 := @380 #15 -@383 := LexLeanPreservation.Rust.fnIdent -@384 := @383 @364 -@391 := (hne : @370) -> @373 (fun (ro : @372) => @379 (@382 @384 @356 @17)) -@406 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {f : @3} -> - {fn : @71} -> - {args : @125} -> - {env : @305} -> - {F : @280} -> - {o : @282} -> - (hB : @313) -> - (hfn : @332) -> (hwt : @340) -> (hbind : @352) -> (hF : @362) -> (hA : @368) -> @391 -@408 := LexLeanPreservation.Rust.compose @0 -@409 := @306 @0 -@414 := (n : @3) -> @409 @141 @135 @17 @127 -@415 := @324 @73 -@418 := @317 (@415 @127) @331 -@422 := @107 @307 @141 @129 @339 -@423 := @363 @0 -@426 := @423 @333 @141 @129 -@440 := {c : @9} -> - {A : @10} -> - {f : @3} -> - {fn : @71} -> - {args : @125} -> - {env : @305} -> - {F : @280} -> - {o : @282} -> - (hB : @414) -> - (hfn : @418) -> (hwt : @422) -> (hbind : @352) -> (hF : @362) -> (hA : @426) -> @391 -@441 := @408 @1 -@442 := @409 @1 -@446 := (n : @3) -> @442 @135 @17 @127 -@449 := @115 @141 @129 @339 -@450 := @355 @1 -@453 := @354 (@450 @307) @361 -@454 := @380 @1 -@464 := (hbind : @352) -> - (hF : @453) -> (hA : @426) -> (hne : @370) -> @373 (fun (ro : @372) => @379 (@454 @384 @356 @17)) -@474 := {A : @10} -> - {f : @3} -> - {fn : @71} -> - {args : @125} -> - {env : @305} -> {F : @280} -> {o : @282} -> (hB : @446) -> (hfn : @418) -> (hwt : @449) -> @464 -@475 := @441 @2 -@477 := @442 @2 @17 -@479 := (n : @3) -> @477 @127 -@480 := @121 @129 -@481 := @480 @339 -@490 := {f : @3} -> - {fn : @71} -> - {args : @125} -> - {env : @305} -> {F : @280} -> {o : @282} -> (hB : @479) -> (hfn : @418) -> (hwt : @481) -> @464 -@491 := @475 @60 -@493 := (n : @3) -> @477 @60 -@494 := @415 @60 -@495 := @317 @494 -@496 := @495 @331 -@497 := @450 @60 -@498 := @354 @497 -@499 := @498 @361 -@500 := @423 @60 -@502 := @500 @141 @129 -@504 := @454 (@383 @60) -@512 := (hF : @499) -> (hA : @502) -> (hne : @370) -> @373 (fun (ro : @372) => @379 (@504 @356 @17)) -@521 := {fn : @71} -> - {args : @125} -> - {env : @305} -> - {F : @280} -> {o : @282} -> (hB : @493) -> (hfn : @496) -> (hwt : @481) -> (hbind : @352) -> @512 -@522 := @491 @91 -@524 := @495 (@330 @91) -@525 := @338 @91 -@526 := @480 @525 -@528 := @343 (@344 @91) -@540 := {args : @125} -> - {env : @305} -> - {F : @280} -> - {o : @282} -> - (hB : @493) -> (hfn : @524) -> (hwt : @526) -> (hbind : @342 (@528 @127 @66) @351) -> @512 -@541 := @522 @56 -@542 := @218 @53 -@544 := @121 @542 @525 -@547 := @54 (@5 @135) @53 -@551 := @342 (@528 @547 @66) @351 -@554 := @54 (@5 @307) @53 -@575 := {env : @305} -> - {F : @280} -> - {o : @282} -> - (hB : @493) -> - (hfn : @524) -> - (hwt : @544) -> - (hbind : @551) -> - (hF : @499) -> - (hA : @500 @554 @129) -> - (hne : @370) -> @373 (fun (ro : @372) => @379 (@504 (@54 (@5 #12) @53) @17)) -@576 := @541 @69 -@577 := @232 @53 -@579 := @121 @577 @525 -@587 := @342 (@528 @542 @66) (@350 (@67 (@64 @217) @66)) -@590 := @54 (@5 @141) @53 -@609 := {F : @280} -> - {o : @282} -> - (hB : @493) -> - (hfn : @524) -> - (hwt : @579) -> - (hbind : @587) -> - (hF : @499) -> - (hA : @500 @590 @129) -> - (hne : @370) -> @373 (fun (ro : @372) => @379 (@504 (@54 (@5 @356) @53) @17)) -@610 := @576 @70 -@611 := @249 @525 -@619 := @342 (@528 @577 @66) (@350 (@67 (@64 @231) @66)) -@621 := @498 (@360 @70) -@623 := @500 @547 @129 -@624 := @375 @70 -@643 := {o : @282} -> - (hB : @493) -> - (hfn : @524) -> - (hwt : @611) -> - (hbind : @619) -> - (hF : @621) -> - (hA : @623) -> - (hne : @370) -> @373 (fun (ro : @372) => @374 (@624 @141 @17) (@504 (@54 (@5 @333) @53) @17)) -@644 := @610 @272 -@645 := @257 @525 -@653 := @342 (@528 @248 @66) (@350 (@67 (@64 @214) @66)) -@654 := @500 @542 -@655 := @271 @127 -@656 := @654 @655 -@657 := @271 @135 -@675 := (hB : @493) -> - (hfn : @524) -> - (hwt : @645) -> - (hbind : @653) -> - (hF : @621) -> - (hA : @656) -> - (hne : @283 @657 @288) -> @373 (fun (ro : @372) => @374 (@624 (@271 @307) @17) (@504 @554 @17)) -@676 := @644 @95 -@677 := @265 @525 -@685 := @342 (@528 @256 @66) (@350 (@67 (@64 @228) @66)) -@686 := @500 @577 -@687 := @271 @129 -@705 := (hfn : @524) -> - (hwt : @677) -> - (hbind : @685) -> - (hF : @621) -> - (hA : @686 @687) -> - (hne : @283 @655 @288) -> @373 (fun (ro : @372) => @374 (@624 (@271 @141) @17) (@504 @590 @17)) -@706 := Eq.refl.{1} -@709 := @676 (@706 @316 @494) -@710 := @269 @525 -@718 := @342 (@528 @264 @66) (@350 (@67 (@64 @243) @66)) -@719 := @500 @248 -@720 := @271 @131 -@736 := (hwt : @710) -> - (hbind : @718) -> - (hF : @621) -> - (hA : @719 @720) -> - (hne : @283 @687 @288) -> @373 (fun (ro : @372) => @374 (@624 @657 @17) (@504 @547 @17)) -@737 := @709 @268 -@739 := @528 @56 @66 -@742 := @342 @739 (@350 @69) -@743 := @500 @256 -@744 := @271 @12 -@759 := (hbind : @742) -> - (hF : @621) -> - (hA : @743 @744) -> - (hne : @283 @720 @288) -> @373 (fun (ro : @372) => @374 (@624 @655 @17) (@504 @542 @17)) -@762 := @737 (@706 @341 @739) -@763 := @500 @264 -@764 := @271 @14 -@778 := (hF : @621) -> - (hA : @763 @764) -> - (hne : @283 @744 @288) -> @373 (fun (ro : @372) => @374 (@624 @687 @17) (@504 @577 @17)) -@781 := @762 (@706 @353 @497) -@795 := (hA : @500 @56 @272) -> - (hne : @283 @764 @288) -> @373 (fun (ro : @372) => @374 (@624 @720 @17) (@504 @248 @17)) -@796 := @781 @279 -@807 := (hne : @283 @272 @288) -> @373 (fun (ro : @372) => @374 (@624 @744 @17) (@504 @256 @17)) -@808 := @796 @300 -@814 := @374 (@624 @764 @17) (@504 @264 @17) -@816 := @373 (fun (ro : @372) => @814) -@818 := @373 (fun (__e_ro : @372) => @814) -@822 := LexLeanPreservation.Rust.RepresentableL (@54 @18 @53) -@823 := (__e_hrep : @822) -> @818 -@824 := fun (__e_hrep : @822) => @808 -@825 := (value : @3) -> @823 -@826 := fun (value : @3) => @824 -\end{coremodule} -\end{lexlean} diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R2/Compose/RustStd.lex.tex b/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R2/Compose/RustStd.lex.tex deleted file mode 100644 index 16fc7d2fb..000000000 --- a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R2/Compose/RustStd.lex.tex +++ /dev/null @@ -1,416 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2, - LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.Compose.RustStd.root : @825 := @826 { - all: [LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.RustStd.program -@1 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.RustStd.krate -@2 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.RustStd.flags -@3 := Nat -@4 := #1 -@5 := LexLeanTarget.TargetSyntax.Value.nat -@6 := @5 @4 -@7 := LexLeanTarget.TargetSyntax.Ty.nat -@8 := LexLeanTarget.TargetSyntax.Program -@9 := LexLeanPreservation.Rust.RCrate -@10 := LexLeanPreservation.Rust.Flags -@11 := LexLeanPreservation.Rust.WT -@12 := #3 -@13 := @11 @12 -@14 := #2 -@16 := @13 @14 @4 -@17 := #0 -@18 := @5 @17 -@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 -@26 := LexLeanPreservation.Rust.wt_nat @0 -@27 := @11 @0 -@34 := {c : @9} -> {A : @10} -> (n : @3) -> @27 @14 @4 @18 @7 -@35 := @26 @1 -@36 := @27 @1 -@41 := {A : @10} -> (n : @3) -> @36 @4 @18 @7 -@42 := @35 @2 -@43 := @36 @2 -@46 := (n : @3) -> @43 @18 @7 -@47 := @42 @4 -@49 := @43 @6 @7 -@50 := LexLeanTarget.TargetSyntax.Value -@51 := List.nil.{0} -@52 := List.cons.{0} -@53 := @51 @50 -@54 := @52 @50 -@56 := @54 @6 @53 -@59 := Prod.{0, 0} @3 @50 -@60 := 0 -@64 := Prod.mk.{0, 0} @3 @50 @60 -@65 := @64 @6 -@66 := @51 @59 -@67 := @52 @59 -@69 := @67 @65 @66 -@70 := Bool.true -@71 := LexLeanTarget.TargetSyntax.Function -@72 := LexLeanTarget.TargetSyntax.Program.functions -@73 := @72 @0 -@74 := LexLeanTarget.TargetSyntax.Ty -@75 := @51 @3 -@76 := @51 @74 -@77 := LexLeanTarget.TargetSyntax.Ty.unit -@78 := LexLeanTarget.TargetSyntax.Value.unit -@81 := LexLeanTarget.TargetSyntax.Expr.value @77 @78 -@86 := LexLeanTarget.TargetSyntax.Function.mk @75 @76 @77 @81 -@91 := List.getD.{0} @71 @73 @60 @86 -@95 := fun (__e_n : @3) => LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.RustStd.root @17 @60 -@96 := LexLeanPreservation.Rust.WTL -@104 := {p : @8} -> {c : @9} -> {A : @10} -> @96 @14 @4 @17 @53 @76 -@106 := LexLeanPreservation.Rust.wtl_nil @0 -@107 := @96 @0 -@113 := {c : @9} -> {A : @10} -> @107 @4 @17 @53 @76 -@114 := @106 @1 -@115 := @107 @1 -@119 := {A : @10} -> @115 @17 @53 @76 -@120 := @114 @2 -@121 := @115 @2 -@122 := @121 @53 -@123 := @122 @76 -@124 := List.{0} -@125 := @124 @50 -@126 := @124 @74 -@127 := #6 -@128 := @11 @127 -@129 := #5 -@130 := @128 @129 -@131 := #4 -@134 := @130 @131 @12 @14 -@135 := #7 -@140 := @96 @135 @127 @129 @14 @4 -@141 := #8 -@144 := @96 @141 @135 @127 -@146 := @54 @129 @12 -@147 := @144 @146 -@148 := @52 @74 -@150 := @148 @131 @14 -@160 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {v : @50} -> {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @134) -> (hs : @140) -> @147 @150 -@162 := LexLeanPreservation.Rust.wtl_cons @0 -@182 := {c : @9} -> - {A : @10} -> - {v : @50} -> - {t : @74} -> - {vs : @125} -> - {ts : @126} -> - (h : @27 @129 @131 @12 @14) -> (hs : @107 @127 @129 @14 @4) -> @107 @135 @127 @146 @150 -@183 := @162 @1 -@199 := {A : @10} -> - {v : @50} -> - {t : @74} -> - {vs : @125} -> - {ts : @126} -> (h : @36 @131 @12 @14) -> (hs : @115 @129 @14 @4) -> @115 @127 @146 @150 -@200 := @183 @2 -@202 := @43 @12 @14 -@204 := @121 @14 @4 -@212 := {v : @50} -> - {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @202) -> (hs : @204) -> @121 @146 @150 -@213 := @200 @6 -@214 := @5 @131 -@216 := @43 @214 @14 -@217 := @5 @127 -@218 := @54 @217 -@226 := {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @216) -> (hs : @204) -> @121 (@218 @12) @150 -@227 := @213 @7 -@228 := @5 @12 -@230 := @43 @228 @7 -@231 := @5 @129 -@232 := @54 @231 -@234 := @121 (@232 @12) -@235 := @148 @7 -@236 := @235 @14 -@241 := {vs : @125} -> {ts : @126} -> (h : @230) -> (hs : @204) -> @234 @236 -@242 := @227 @53 -@243 := @5 @14 -@245 := @43 @243 @7 -@246 := @122 @4 -@248 := @54 @214 @53 -@249 := @121 @248 -@253 := {ts : @126} -> (h : @245) -> (hs : @246) -> @249 @236 -@254 := @242 @76 -@256 := @54 @228 @53 -@257 := @121 @256 -@258 := @235 @76 -@261 := (h : @49) -> (hs : @123) -> @257 @258 -@262 := @254 @47 -@264 := @54 @243 @53 -@265 := @121 @264 -@267 := (hs : @123) -> @265 @258 -@268 := @262 @120 -@269 := @121 @56 -@270 := @269 @258 -@271 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.denote -@272 := @271 @4 -@273 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.__fits_0 -@274 := @273 @4 -@277 := @5 (Production.Main.quadruple @4) -@279 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.root @4 -@280 := Bool -@281 := Ne.{1} -@282 := LexLeanPreservation.Obs -@283 := @281 @282 -@284 := LexLeanPreservation.Rel -@287 := @283 (@284 @4 @17) -@288 := LexLeanPreservation.Obs.stuck -@291 := (f : @280) -> (v : @50) -> @287 @288 -@293 := LexLeanPreservation.Rust.rel_ne_stuck @274 -@299 := (v : @50) -> @283 (@284 (@273 @14) @17) @288 -@300 := @293 @277 -@304 := @283 (@284 @274 @277) @288 -@305 := @124 @59 -@306 := LexLeanPreservation.Rust.FunSem -@307 := #9 -@313 := (n : @3) -> @306 @307 @141 @135 @17 @127 -@314 := Eq.{1} -@315 := Option.{0} -@316 := @315 @71 -@317 := @314 @316 -@324 := LexLeanRuntime.index (@124 @71) @71 (LexLeanRuntime.instIndexableList @71) -@328 := @317 (@324 (@72 @307) @127) -@329 := Option.some.{0} -@330 := @329 @71 -@331 := @330 @129 -@332 := @328 @331 -@333 := #10 -@337 := @96 @333 @307 @141 @129 -@338 := LexLeanTarget.TargetSyntax.Function.types -@339 := @338 @127 -@340 := @337 @339 -@341 := @315 @305 -@342 := @314 @341 -@343 := LexLeanTarget.TargetSemantics.bindAll -@344 := LexLeanTarget.TargetSyntax.Function.parameters -@349 := @342 (@343 (@344 @135) @127 @66) -@350 := @329 @305 -@351 := @350 @129 -@352 := @349 @351 -@353 := @315 @280 -@354 := @314 @353 -@355 := LexLeanPreservation.Rust.fnFallible -@356 := #11 -@359 := @354 (@355 @356 @307) -@360 := @329 @280 -@361 := @360 @129 -@362 := @359 @361 -@363 := LexLeanPreservation.RunConv -@364 := #13 -@368 := @363 @364 @333 @141 @129 -@370 := @283 @127 @288 -@371 := Exists.{1} -@372 := LexLeanPreservation.Rust.ROut -@373 := @371 @372 -@374 := And -@375 := LexLeanPreservation.Rust.RealizesFn -@379 := @374 (@375 @307 @141 @17) -@380 := LexLeanPreservation.Rust.RCI -@382 := @380 #15 -@383 := LexLeanPreservation.Rust.fnIdent -@384 := @383 @364 -@391 := (hne : @370) -> @373 (fun (ro : @372) => @379 (@382 @384 @356 @17)) -@406 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {f : @3} -> - {fn : @71} -> - {args : @125} -> - {env : @305} -> - {F : @280} -> - {o : @282} -> - (hB : @313) -> - (hfn : @332) -> (hwt : @340) -> (hbind : @352) -> (hF : @362) -> (hA : @368) -> @391 -@408 := LexLeanPreservation.Rust.compose @0 -@409 := @306 @0 -@414 := (n : @3) -> @409 @141 @135 @17 @127 -@415 := @324 @73 -@418 := @317 (@415 @127) @331 -@422 := @107 @307 @141 @129 @339 -@423 := @363 @0 -@426 := @423 @333 @141 @129 -@440 := {c : @9} -> - {A : @10} -> - {f : @3} -> - {fn : @71} -> - {args : @125} -> - {env : @305} -> - {F : @280} -> - {o : @282} -> - (hB : @414) -> - (hfn : @418) -> (hwt : @422) -> (hbind : @352) -> (hF : @362) -> (hA : @426) -> @391 -@441 := @408 @1 -@442 := @409 @1 -@446 := (n : @3) -> @442 @135 @17 @127 -@449 := @115 @141 @129 @339 -@450 := @355 @1 -@453 := @354 (@450 @307) @361 -@454 := @380 @1 -@464 := (hbind : @352) -> - (hF : @453) -> (hA : @426) -> (hne : @370) -> @373 (fun (ro : @372) => @379 (@454 @384 @356 @17)) -@474 := {A : @10} -> - {f : @3} -> - {fn : @71} -> - {args : @125} -> - {env : @305} -> {F : @280} -> {o : @282} -> (hB : @446) -> (hfn : @418) -> (hwt : @449) -> @464 -@475 := @441 @2 -@477 := @442 @2 @17 -@479 := (n : @3) -> @477 @127 -@480 := @121 @129 -@481 := @480 @339 -@490 := {f : @3} -> - {fn : @71} -> - {args : @125} -> - {env : @305} -> {F : @280} -> {o : @282} -> (hB : @479) -> (hfn : @418) -> (hwt : @481) -> @464 -@491 := @475 @60 -@493 := (n : @3) -> @477 @60 -@494 := @415 @60 -@495 := @317 @494 -@496 := @495 @331 -@497 := @450 @60 -@498 := @354 @497 -@499 := @498 @361 -@500 := @423 @60 -@502 := @500 @141 @129 -@504 := @454 (@383 @60) -@512 := (hF : @499) -> (hA : @502) -> (hne : @370) -> @373 (fun (ro : @372) => @379 (@504 @356 @17)) -@521 := {fn : @71} -> - {args : @125} -> - {env : @305} -> - {F : @280} -> {o : @282} -> (hB : @493) -> (hfn : @496) -> (hwt : @481) -> (hbind : @352) -> @512 -@522 := @491 @91 -@524 := @495 (@330 @91) -@525 := @338 @91 -@526 := @480 @525 -@528 := @343 (@344 @91) -@540 := {args : @125} -> - {env : @305} -> - {F : @280} -> - {o : @282} -> - (hB : @493) -> (hfn : @524) -> (hwt : @526) -> (hbind : @342 (@528 @127 @66) @351) -> @512 -@541 := @522 @56 -@542 := @218 @53 -@544 := @121 @542 @525 -@547 := @54 (@5 @135) @53 -@551 := @342 (@528 @547 @66) @351 -@554 := @54 (@5 @307) @53 -@575 := {env : @305} -> - {F : @280} -> - {o : @282} -> - (hB : @493) -> - (hfn : @524) -> - (hwt : @544) -> - (hbind : @551) -> - (hF : @499) -> - (hA : @500 @554 @129) -> - (hne : @370) -> @373 (fun (ro : @372) => @379 (@504 (@54 (@5 #12) @53) @17)) -@576 := @541 @69 -@577 := @232 @53 -@579 := @121 @577 @525 -@587 := @342 (@528 @542 @66) (@350 (@67 (@64 @217) @66)) -@590 := @54 (@5 @141) @53 -@609 := {F : @280} -> - {o : @282} -> - (hB : @493) -> - (hfn : @524) -> - (hwt : @579) -> - (hbind : @587) -> - (hF : @499) -> - (hA : @500 @590 @129) -> - (hne : @370) -> @373 (fun (ro : @372) => @379 (@504 (@54 (@5 @356) @53) @17)) -@610 := @576 @70 -@611 := @249 @525 -@619 := @342 (@528 @577 @66) (@350 (@67 (@64 @231) @66)) -@621 := @498 (@360 @70) -@623 := @500 @547 @129 -@624 := @375 @70 -@643 := {o : @282} -> - (hB : @493) -> - (hfn : @524) -> - (hwt : @611) -> - (hbind : @619) -> - (hF : @621) -> - (hA : @623) -> - (hne : @370) -> @373 (fun (ro : @372) => @374 (@624 @141 @17) (@504 (@54 (@5 @333) @53) @17)) -@644 := @610 @272 -@645 := @257 @525 -@653 := @342 (@528 @248 @66) (@350 (@67 (@64 @214) @66)) -@654 := @500 @542 -@655 := @271 @127 -@656 := @654 @655 -@657 := @271 @135 -@675 := (hB : @493) -> - (hfn : @524) -> - (hwt : @645) -> - (hbind : @653) -> - (hF : @621) -> - (hA : @656) -> - (hne : @283 @657 @288) -> @373 (fun (ro : @372) => @374 (@624 (@271 @307) @17) (@504 @554 @17)) -@676 := @644 @95 -@677 := @265 @525 -@685 := @342 (@528 @256 @66) (@350 (@67 (@64 @228) @66)) -@686 := @500 @577 -@687 := @271 @129 -@705 := (hfn : @524) -> - (hwt : @677) -> - (hbind : @685) -> - (hF : @621) -> - (hA : @686 @687) -> - (hne : @283 @655 @288) -> @373 (fun (ro : @372) => @374 (@624 (@271 @141) @17) (@504 @590 @17)) -@706 := Eq.refl.{1} -@709 := @676 (@706 @316 @494) -@710 := @269 @525 -@718 := @342 (@528 @264 @66) (@350 (@67 (@64 @243) @66)) -@719 := @500 @248 -@720 := @271 @131 -@736 := (hwt : @710) -> - (hbind : @718) -> - (hF : @621) -> - (hA : @719 @720) -> - (hne : @283 @687 @288) -> @373 (fun (ro : @372) => @374 (@624 @657 @17) (@504 @547 @17)) -@737 := @709 @268 -@739 := @528 @56 @66 -@742 := @342 @739 (@350 @69) -@743 := @500 @256 -@744 := @271 @12 -@759 := (hbind : @742) -> - (hF : @621) -> - (hA : @743 @744) -> - (hne : @283 @720 @288) -> @373 (fun (ro : @372) => @374 (@624 @655 @17) (@504 @542 @17)) -@762 := @737 (@706 @341 @739) -@763 := @500 @264 -@764 := @271 @14 -@778 := (hF : @621) -> - (hA : @763 @764) -> - (hne : @283 @744 @288) -> @373 (fun (ro : @372) => @374 (@624 @687 @17) (@504 @577 @17)) -@781 := @762 (@706 @353 @497) -@795 := (hA : @500 @56 @272) -> - (hne : @283 @764 @288) -> @373 (fun (ro : @372) => @374 (@624 @720 @17) (@504 @248 @17)) -@796 := @781 @279 -@807 := (hne : @283 @272 @288) -> @373 (fun (ro : @372) => @374 (@624 @744 @17) (@504 @256 @17)) -@808 := @796 @300 -@814 := @374 (@624 @764 @17) (@504 @264 @17) -@816 := @373 (fun (ro : @372) => @814) -@818 := @373 (fun (__e_ro : @372) => @814) -@822 := LexLeanPreservation.Rust.RepresentableL (@54 @18 @53) -@823 := (__e_hrep : @822) -> @818 -@824 := fun (__e_hrep : @822) => @808 -@825 := (value : @3) -> @823 -@826 := fun (value : @3) => @824 -\end{coremodule} -\end{lexlean} diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R2/RustCore.lean b/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R2/RustCore.lean deleted file mode 100644 index 91056f24d..000000000 --- a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R2/RustCore.lean +++ /dev/null @@ -1,51 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.RustCore -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0], types := [.nat], result := .nat, - body := (.call 1 [(.closure 2 []), (.var 0)]) }, - { parameters := [0, 1], types := [(.fn [.nat] .nat), .nat], result := .nat, - body := (.apply (.var 0) [(.apply (.var 0) [(.var 1)])]) }, - { parameters := [0], types := [.nat], result := .nat, - body := (.prim .natAdd [(.var 0), (.var 0)]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .core, items := [ - (.enum (.fn 0) [{ number := 2, fields := [] }]), - (.apply 0 [.nat] .nat true [{ function := 2, captures := [], functionFallible := true }]), - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible .nat) (.mk [] (.call (.function 1) [(.construct (.closure 0 2) []), (.copy (.generated .binding 0))] false))), - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .callee 1)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 1) [(.block (.mk [(.mk (.bind (.generated .callee 2)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 2) [(.copy (.generated .binding 1))] true)))] false))), - (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 0)))] (.call (.runtime .natAdd) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false)))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [(([.nat], .nat), true)] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 1) [(.construct (.closure 0 2) []), (.copy (.generated .binding 0))] false), [(0, .nat, (some 0))], rfl, rfl, - (Corr.callF (ts := [(.fn [.nat] .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .callee 1)) (some (.fn 0)) (.clone (.generated .binding 0)))], (.apply (.generated .callee 1) [(.block (.mk [(.mk (.bind (.generated .callee 2)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 2) [(.copy (.generated .binding 1))] true)))] false), [(1, .nat, (some 1)), (0, (.fn [.nat] .nat), (some 0))], rfl, rfl, - (Corr.applyF (ps := [.nat]) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 2)) (some (.fn 0)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 2) [(.copy (.generated .binding 1))] true)) (Corr.apply (ps := [.nat]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl)⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 0)))], (.call (.runtime .natAdd) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false), [(0, .nat, (some 0))], rfl, rfl, - (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | _ + 3 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.RustCore diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R2/RustStd.lean b/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R2/RustStd.lean deleted file mode 100644 index eafac40bc..000000000 --- a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R2/RustStd.lean +++ /dev/null @@ -1,51 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0], types := [.nat], result := .nat, - body := (.call 1 [(.closure 2 []), (.var 0)]) }, - { parameters := [0, 1], types := [(.fn [.nat] .nat), .nat], result := .nat, - body := (.apply (.var 0) [(.apply (.var 0) [(.var 1)])]) }, - { parameters := [0], types := [.nat], result := .nat, - body := (.prim .natAdd [(.var 0), (.var 0)]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.enum (.fn 0) [{ number := 2, fields := [] }]), - (.apply 0 [.nat] .nat true [{ function := 2, captures := [], functionFallible := true }]), - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible .nat) (.mk [] (.call (.function 1) [(.construct (.closure 0 2) []), (.copy (.generated .binding 0))] false))), - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .callee 1)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 1) [(.block (.mk [(.mk (.bind (.generated .callee 2)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 2) [(.copy (.generated .binding 1))] true)))] false))), - (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 0)))] (.call (.runtime .natAdd) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false)))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [(([.nat], .nat), true)] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 1) [(.construct (.closure 0 2) []), (.copy (.generated .binding 0))] false), [(0, .nat, (some 0))], rfl, rfl, - (Corr.callF (ts := [(.fn [.nat] .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .callee 1)) (some (.fn 0)) (.clone (.generated .binding 0)))], (.apply (.generated .callee 1) [(.block (.mk [(.mk (.bind (.generated .callee 2)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 2) [(.copy (.generated .binding 1))] true)))] false), [(1, .nat, (some 1)), (0, (.fn [.nat] .nat), (some 0))], rfl, rfl, - (Corr.applyF (ps := [.nat]) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 2)) (some (.fn 0)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 2) [(.copy (.generated .binding 1))] true)) (Corr.apply (ps := [.nat]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl)⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 0)))], (.call (.runtime .natAdd) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false), [(0, .nat, (some 0))], rfl, rfl, - (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | _ + 3 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.RustStd diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R3.lean b/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R3.lean deleted file mode 100644 index 6ce76ac74..000000000 --- a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R3.lean +++ /dev/null @@ -1,48 +0,0 @@ -import LexLeanPreservation.Core -import LexLeanPreservation.Values -import LexLeanPreservation.Primitives -import LexLeanPreservation.Fixed -import LexLeanPreservation.Keys -import LexLeanPreservation.Templates -import LexLeanPreservation.Validate -import Production.Kernel -import Production.Main -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -set_option linter.unusedVariables false -namespace LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3 - -def __prog : _root_.LexLeanTarget.TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0], types := [.nat], result := .nat, - body := (.call 1 [(.var 0), (.value .nat (.nat 0))]) }, - { parameters := [0, 1], types := [.nat, .nat], result := .nat, - body := (.cond (.prim .natLt [(.var 0), (.value .nat (.nat 2))]) (.var 1) (.call 1 [(.prim .natSub [(.var 0), (.value .nat (.nat 2))]), (.prim .natAdd [(.var 1), (.value .nat (.nat 1))])])) }] } - -def __fits_1 (number : Nat) (steps : Nat) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (match (generalizing := false) __decrease0 : (Nat.blt number (2 : Nat)) with | true => Bool.true | false => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (steps + (1 : Nat)) 18446744073709551616)) && Bool.true)) && (__fits_1 ((_root_.LexLeanRuntime.subtract (number) ((2 : Nat)) : Nat)) ((steps + (1 : Nat))))))) -termination_by number -decreasing_by all_goals first | (have __evidence := Production.Kernel.countdown_decreases (number) (steps) (__decrease0); subst_vars; exact __evidence) - -theorem __rel_1 (number : Nat) (steps : Nat) : _root_.LexLeanPreservation.FunRel __prog 1 [(_root_.LexLeanTarget.TargetSyntax.Value.nat number), (_root_.LexLeanTarget.TargetSyntax.Value.nat steps)] (_root_.LexLeanPreservation.Rel (__fits_1 number steps) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Production.Kernel.countdown number steps))) := by - rw [Production.Kernel.countdown.eq_def, __fits_1.eq_def] - exact _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (match (generalizing := false) __decrease0 : __b with | true => Bool.true | false => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (steps + (1 : Nat)) 18446744073709551616)) && Bool.true)) && (__fits_1 ((_root_.LexLeanRuntime.subtract (number) ((2 : Nat)) : Nat)) ((steps + (1 : Nat))))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (match (generalizing := false) __decrease0 : __b with | true => steps | false => (Production.Kernel.countdown ((_root_.LexLeanRuntime.subtract (number) ((2 : Nat)) : Nat)) ((steps + (1 : Nat)))))) (Nat.blt number (2 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt number (2 : Nat))) (fun __decrease0 => (_root_.LexLeanPreservation.conv_var rfl)) (fun __decrease0 => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub number (2 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd steps (1 : Nat))) _root_.LexLeanPreservation.convL_nil)) (__rel_1 ((_root_.LexLeanRuntime.subtract (number) ((2 : Nat)) : Nat)) ((steps + (1 : Nat))))))) -termination_by number -decreasing_by all_goals first | (have __evidence := Production.Kernel.countdown_decreases (number) (steps) (__decrease0); subst_vars; exact __evidence) - -def __fits_0 (number : Nat) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && (__fits_1 (number) ((0 : Nat)))) - -attribute [local irreducible] Production.Kernel.countdown in -theorem __rel_0 (number : Nat) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat number)] (_root_.LexLeanPreservation.Rel (__fits_0 number) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Production.Main.halvings number))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_1 (number) ((0 : Nat)))) - -def denote (number : Nat) : _root_.LexLeanPreservation.Obs := - _root_.cond (__fits_0 number) (_root_.LexLeanPreservation.Obs.value ((_root_.LexLeanTarget.TargetSyntax.Value.nat (Production.Main.halvings number)))) _root_.LexLeanPreservation.Obs.overflow - -theorem root (number : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat number)] (_root_.LexLeanPreservation.Rel (__fits_0 number) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Production.Main.halvings number))) := - _root_.LexLeanPreservation.run_of_funRel (__rel_0 number) - -end LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3 diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R3/Compose/RustCore.lex.tex b/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R3/Compose/RustCore.lex.tex deleted file mode 100644 index 5e59e29a7..000000000 --- a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R3/Compose/RustCore.lex.tex +++ /dev/null @@ -1,417 +0,0 @@ -\begin{lexlean}{RustCore} -\title{Certificate E LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.Compose.RustCore} -\begin{coremodule} -imports [ - LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3, - LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.RustCore, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.Compose.RustCore.root : @825 := @826 { - all: [LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.Compose.RustCore.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.RustCore.program -@1 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.RustCore.krate -@2 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.RustCore.flags -@3 := Nat -@4 := #1 -@5 := LexLeanTarget.TargetSyntax.Value.nat -@6 := @5 @4 -@7 := LexLeanTarget.TargetSyntax.Ty.nat -@8 := LexLeanTarget.TargetSyntax.Program -@9 := LexLeanPreservation.Rust.RCrate -@10 := LexLeanPreservation.Rust.Flags -@11 := LexLeanPreservation.Rust.WT -@12 := #3 -@13 := @11 @12 -@14 := #2 -@16 := @13 @14 @4 -@17 := #0 -@18 := @5 @17 -@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 -@26 := LexLeanPreservation.Rust.wt_nat @0 -@27 := @11 @0 -@34 := {c : @9} -> {A : @10} -> (n : @3) -> @27 @14 @4 @18 @7 -@35 := @26 @1 -@36 := @27 @1 -@41 := {A : @10} -> (n : @3) -> @36 @4 @18 @7 -@42 := @35 @2 -@43 := @36 @2 -@46 := (n : @3) -> @43 @18 @7 -@47 := @42 @4 -@49 := @43 @6 @7 -@50 := LexLeanTarget.TargetSyntax.Value -@51 := List.nil.{0} -@52 := List.cons.{0} -@53 := @51 @50 -@54 := @52 @50 -@56 := @54 @6 @53 -@59 := Prod.{0, 0} @3 @50 -@60 := 0 -@64 := Prod.mk.{0, 0} @3 @50 @60 -@65 := @64 @6 -@66 := @51 @59 -@67 := @52 @59 -@69 := @67 @65 @66 -@70 := Bool.true -@71 := LexLeanTarget.TargetSyntax.Function -@72 := LexLeanTarget.TargetSyntax.Program.functions -@73 := @72 @0 -@74 := LexLeanTarget.TargetSyntax.Ty -@75 := @51 @3 -@76 := @51 @74 -@77 := LexLeanTarget.TargetSyntax.Ty.unit -@78 := LexLeanTarget.TargetSyntax.Value.unit -@81 := LexLeanTarget.TargetSyntax.Expr.value @77 @78 -@86 := LexLeanTarget.TargetSyntax.Function.mk @75 @76 @77 @81 -@91 := List.getD.{0} @71 @73 @60 @86 -@95 := fun (__e_n : @3) => - LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.RustCore.root @17 @60 -@96 := LexLeanPreservation.Rust.WTL -@104 := {p : @8} -> {c : @9} -> {A : @10} -> @96 @14 @4 @17 @53 @76 -@106 := LexLeanPreservation.Rust.wtl_nil @0 -@107 := @96 @0 -@113 := {c : @9} -> {A : @10} -> @107 @4 @17 @53 @76 -@114 := @106 @1 -@115 := @107 @1 -@119 := {A : @10} -> @115 @17 @53 @76 -@120 := @114 @2 -@121 := @115 @2 -@122 := @121 @53 -@123 := @122 @76 -@124 := List.{0} -@125 := @124 @50 -@126 := @124 @74 -@127 := #6 -@128 := @11 @127 -@129 := #5 -@130 := @128 @129 -@131 := #4 -@134 := @130 @131 @12 @14 -@135 := #7 -@140 := @96 @135 @127 @129 @14 @4 -@141 := #8 -@144 := @96 @141 @135 @127 -@146 := @54 @129 @12 -@147 := @144 @146 -@148 := @52 @74 -@150 := @148 @131 @14 -@160 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {v : @50} -> {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @134) -> (hs : @140) -> @147 @150 -@162 := LexLeanPreservation.Rust.wtl_cons @0 -@182 := {c : @9} -> - {A : @10} -> - {v : @50} -> - {t : @74} -> - {vs : @125} -> - {ts : @126} -> - (h : @27 @129 @131 @12 @14) -> (hs : @107 @127 @129 @14 @4) -> @107 @135 @127 @146 @150 -@183 := @162 @1 -@199 := {A : @10} -> - {v : @50} -> - {t : @74} -> - {vs : @125} -> - {ts : @126} -> (h : @36 @131 @12 @14) -> (hs : @115 @129 @14 @4) -> @115 @127 @146 @150 -@200 := @183 @2 -@202 := @43 @12 @14 -@204 := @121 @14 @4 -@212 := {v : @50} -> - {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @202) -> (hs : @204) -> @121 @146 @150 -@213 := @200 @6 -@214 := @5 @131 -@216 := @43 @214 @14 -@217 := @5 @127 -@218 := @54 @217 -@226 := {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @216) -> (hs : @204) -> @121 (@218 @12) @150 -@227 := @213 @7 -@228 := @5 @12 -@230 := @43 @228 @7 -@231 := @5 @129 -@232 := @54 @231 -@234 := @121 (@232 @12) -@235 := @148 @7 -@236 := @235 @14 -@241 := {vs : @125} -> {ts : @126} -> (h : @230) -> (hs : @204) -> @234 @236 -@242 := @227 @53 -@243 := @5 @14 -@245 := @43 @243 @7 -@246 := @122 @4 -@248 := @54 @214 @53 -@249 := @121 @248 -@253 := {ts : @126} -> (h : @245) -> (hs : @246) -> @249 @236 -@254 := @242 @76 -@256 := @54 @228 @53 -@257 := @121 @256 -@258 := @235 @76 -@261 := (h : @49) -> (hs : @123) -> @257 @258 -@262 := @254 @47 -@264 := @54 @243 @53 -@265 := @121 @264 -@267 := (hs : @123) -> @265 @258 -@268 := @262 @120 -@269 := @121 @56 -@270 := @269 @258 -@271 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.denote -@272 := @271 @4 -@273 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.__fits_0 -@274 := @273 @4 -@277 := @5 (Production.Main.halvings @4) -@279 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.root @4 -@280 := Bool -@281 := Ne.{1} -@282 := LexLeanPreservation.Obs -@283 := @281 @282 -@284 := LexLeanPreservation.Rel -@287 := @283 (@284 @4 @17) -@288 := LexLeanPreservation.Obs.stuck -@291 := (f : @280) -> (v : @50) -> @287 @288 -@293 := LexLeanPreservation.Rust.rel_ne_stuck @274 -@299 := (v : @50) -> @283 (@284 (@273 @14) @17) @288 -@300 := @293 @277 -@304 := @283 (@284 @274 @277) @288 -@305 := @124 @59 -@306 := LexLeanPreservation.Rust.FunSem -@307 := #9 -@313 := (n : @3) -> @306 @307 @141 @135 @17 @127 -@314 := Eq.{1} -@315 := Option.{0} -@316 := @315 @71 -@317 := @314 @316 -@324 := LexLeanRuntime.index (@124 @71) @71 (LexLeanRuntime.instIndexableList @71) -@328 := @317 (@324 (@72 @307) @127) -@329 := Option.some.{0} -@330 := @329 @71 -@331 := @330 @129 -@332 := @328 @331 -@333 := #10 -@337 := @96 @333 @307 @141 @129 -@338 := LexLeanTarget.TargetSyntax.Function.types -@339 := @338 @127 -@340 := @337 @339 -@341 := @315 @305 -@342 := @314 @341 -@343 := LexLeanTarget.TargetSemantics.bindAll -@344 := LexLeanTarget.TargetSyntax.Function.parameters -@349 := @342 (@343 (@344 @135) @127 @66) -@350 := @329 @305 -@351 := @350 @129 -@352 := @349 @351 -@353 := @315 @280 -@354 := @314 @353 -@355 := LexLeanPreservation.Rust.fnFallible -@356 := #11 -@359 := @354 (@355 @356 @307) -@360 := @329 @280 -@361 := @360 @129 -@362 := @359 @361 -@363 := LexLeanPreservation.RunConv -@364 := #13 -@368 := @363 @364 @333 @141 @129 -@370 := @283 @127 @288 -@371 := Exists.{1} -@372 := LexLeanPreservation.Rust.ROut -@373 := @371 @372 -@374 := And -@375 := LexLeanPreservation.Rust.RealizesFn -@379 := @374 (@375 @307 @141 @17) -@380 := LexLeanPreservation.Rust.RCI -@382 := @380 #15 -@383 := LexLeanPreservation.Rust.fnIdent -@384 := @383 @364 -@391 := (hne : @370) -> @373 (fun (ro : @372) => @379 (@382 @384 @356 @17)) -@406 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {f : @3} -> - {fn : @71} -> - {args : @125} -> - {env : @305} -> - {F : @280} -> - {o : @282} -> - (hB : @313) -> - (hfn : @332) -> (hwt : @340) -> (hbind : @352) -> (hF : @362) -> (hA : @368) -> @391 -@408 := LexLeanPreservation.Rust.compose @0 -@409 := @306 @0 -@414 := (n : @3) -> @409 @141 @135 @17 @127 -@415 := @324 @73 -@418 := @317 (@415 @127) @331 -@422 := @107 @307 @141 @129 @339 -@423 := @363 @0 -@426 := @423 @333 @141 @129 -@440 := {c : @9} -> - {A : @10} -> - {f : @3} -> - {fn : @71} -> - {args : @125} -> - {env : @305} -> - {F : @280} -> - {o : @282} -> - (hB : @414) -> - (hfn : @418) -> (hwt : @422) -> (hbind : @352) -> (hF : @362) -> (hA : @426) -> @391 -@441 := @408 @1 -@442 := @409 @1 -@446 := (n : @3) -> @442 @135 @17 @127 -@449 := @115 @141 @129 @339 -@450 := @355 @1 -@453 := @354 (@450 @307) @361 -@454 := @380 @1 -@464 := (hbind : @352) -> - (hF : @453) -> (hA : @426) -> (hne : @370) -> @373 (fun (ro : @372) => @379 (@454 @384 @356 @17)) -@474 := {A : @10} -> - {f : @3} -> - {fn : @71} -> - {args : @125} -> - {env : @305} -> {F : @280} -> {o : @282} -> (hB : @446) -> (hfn : @418) -> (hwt : @449) -> @464 -@475 := @441 @2 -@477 := @442 @2 @17 -@479 := (n : @3) -> @477 @127 -@480 := @121 @129 -@481 := @480 @339 -@490 := {f : @3} -> - {fn : @71} -> - {args : @125} -> - {env : @305} -> {F : @280} -> {o : @282} -> (hB : @479) -> (hfn : @418) -> (hwt : @481) -> @464 -@491 := @475 @60 -@493 := (n : @3) -> @477 @60 -@494 := @415 @60 -@495 := @317 @494 -@496 := @495 @331 -@497 := @450 @60 -@498 := @354 @497 -@499 := @498 @361 -@500 := @423 @60 -@502 := @500 @141 @129 -@504 := @454 (@383 @60) -@512 := (hF : @499) -> (hA : @502) -> (hne : @370) -> @373 (fun (ro : @372) => @379 (@504 @356 @17)) -@521 := {fn : @71} -> - {args : @125} -> - {env : @305} -> - {F : @280} -> {o : @282} -> (hB : @493) -> (hfn : @496) -> (hwt : @481) -> (hbind : @352) -> @512 -@522 := @491 @91 -@524 := @495 (@330 @91) -@525 := @338 @91 -@526 := @480 @525 -@528 := @343 (@344 @91) -@540 := {args : @125} -> - {env : @305} -> - {F : @280} -> - {o : @282} -> - (hB : @493) -> (hfn : @524) -> (hwt : @526) -> (hbind : @342 (@528 @127 @66) @351) -> @512 -@541 := @522 @56 -@542 := @218 @53 -@544 := @121 @542 @525 -@547 := @54 (@5 @135) @53 -@551 := @342 (@528 @547 @66) @351 -@554 := @54 (@5 @307) @53 -@575 := {env : @305} -> - {F : @280} -> - {o : @282} -> - (hB : @493) -> - (hfn : @524) -> - (hwt : @544) -> - (hbind : @551) -> - (hF : @499) -> - (hA : @500 @554 @129) -> - (hne : @370) -> @373 (fun (ro : @372) => @379 (@504 (@54 (@5 #12) @53) @17)) -@576 := @541 @69 -@577 := @232 @53 -@579 := @121 @577 @525 -@587 := @342 (@528 @542 @66) (@350 (@67 (@64 @217) @66)) -@590 := @54 (@5 @141) @53 -@609 := {F : @280} -> - {o : @282} -> - (hB : @493) -> - (hfn : @524) -> - (hwt : @579) -> - (hbind : @587) -> - (hF : @499) -> - (hA : @500 @590 @129) -> - (hne : @370) -> @373 (fun (ro : @372) => @379 (@504 (@54 (@5 @356) @53) @17)) -@610 := @576 @70 -@611 := @249 @525 -@619 := @342 (@528 @577 @66) (@350 (@67 (@64 @231) @66)) -@621 := @498 (@360 @70) -@623 := @500 @547 @129 -@624 := @375 @70 -@643 := {o : @282} -> - (hB : @493) -> - (hfn : @524) -> - (hwt : @611) -> - (hbind : @619) -> - (hF : @621) -> - (hA : @623) -> - (hne : @370) -> @373 (fun (ro : @372) => @374 (@624 @141 @17) (@504 (@54 (@5 @333) @53) @17)) -@644 := @610 @272 -@645 := @257 @525 -@653 := @342 (@528 @248 @66) (@350 (@67 (@64 @214) @66)) -@654 := @500 @542 -@655 := @271 @127 -@656 := @654 @655 -@657 := @271 @135 -@675 := (hB : @493) -> - (hfn : @524) -> - (hwt : @645) -> - (hbind : @653) -> - (hF : @621) -> - (hA : @656) -> - (hne : @283 @657 @288) -> @373 (fun (ro : @372) => @374 (@624 (@271 @307) @17) (@504 @554 @17)) -@676 := @644 @95 -@677 := @265 @525 -@685 := @342 (@528 @256 @66) (@350 (@67 (@64 @228) @66)) -@686 := @500 @577 -@687 := @271 @129 -@705 := (hfn : @524) -> - (hwt : @677) -> - (hbind : @685) -> - (hF : @621) -> - (hA : @686 @687) -> - (hne : @283 @655 @288) -> @373 (fun (ro : @372) => @374 (@624 (@271 @141) @17) (@504 @590 @17)) -@706 := Eq.refl.{1} -@709 := @676 (@706 @316 @494) -@710 := @269 @525 -@718 := @342 (@528 @264 @66) (@350 (@67 (@64 @243) @66)) -@719 := @500 @248 -@720 := @271 @131 -@736 := (hwt : @710) -> - (hbind : @718) -> - (hF : @621) -> - (hA : @719 @720) -> - (hne : @283 @687 @288) -> @373 (fun (ro : @372) => @374 (@624 @657 @17) (@504 @547 @17)) -@737 := @709 @268 -@739 := @528 @56 @66 -@742 := @342 @739 (@350 @69) -@743 := @500 @256 -@744 := @271 @12 -@759 := (hbind : @742) -> - (hF : @621) -> - (hA : @743 @744) -> - (hne : @283 @720 @288) -> @373 (fun (ro : @372) => @374 (@624 @655 @17) (@504 @542 @17)) -@762 := @737 (@706 @341 @739) -@763 := @500 @264 -@764 := @271 @14 -@778 := (hF : @621) -> - (hA : @763 @764) -> - (hne : @283 @744 @288) -> @373 (fun (ro : @372) => @374 (@624 @687 @17) (@504 @577 @17)) -@781 := @762 (@706 @353 @497) -@795 := (hA : @500 @56 @272) -> - (hne : @283 @764 @288) -> @373 (fun (ro : @372) => @374 (@624 @720 @17) (@504 @248 @17)) -@796 := @781 @279 -@807 := (hne : @283 @272 @288) -> @373 (fun (ro : @372) => @374 (@624 @744 @17) (@504 @256 @17)) -@808 := @796 @300 -@814 := @374 (@624 @764 @17) (@504 @264 @17) -@816 := @373 (fun (ro : @372) => @814) -@818 := @373 (fun (__e_ro : @372) => @814) -@822 := LexLeanPreservation.Rust.RepresentableL (@54 @18 @53) -@823 := (__e_hrep : @822) -> @818 -@824 := fun (__e_hrep : @822) => @808 -@825 := (number : @3) -> @823 -@826 := fun (number : @3) => @824 -\end{coremodule} -\end{lexlean} diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R3/Compose/RustStd.lex.tex b/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R3/Compose/RustStd.lex.tex deleted file mode 100644 index 90f548cce..000000000 --- a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R3/Compose/RustStd.lex.tex +++ /dev/null @@ -1,416 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3, - LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.Compose.RustStd.root : @825 := @826 { - all: [LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.RustStd.program -@1 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.RustStd.krate -@2 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.RustStd.flags -@3 := Nat -@4 := #1 -@5 := LexLeanTarget.TargetSyntax.Value.nat -@6 := @5 @4 -@7 := LexLeanTarget.TargetSyntax.Ty.nat -@8 := LexLeanTarget.TargetSyntax.Program -@9 := LexLeanPreservation.Rust.RCrate -@10 := LexLeanPreservation.Rust.Flags -@11 := LexLeanPreservation.Rust.WT -@12 := #3 -@13 := @11 @12 -@14 := #2 -@16 := @13 @14 @4 -@17 := #0 -@18 := @5 @17 -@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 -@26 := LexLeanPreservation.Rust.wt_nat @0 -@27 := @11 @0 -@34 := {c : @9} -> {A : @10} -> (n : @3) -> @27 @14 @4 @18 @7 -@35 := @26 @1 -@36 := @27 @1 -@41 := {A : @10} -> (n : @3) -> @36 @4 @18 @7 -@42 := @35 @2 -@43 := @36 @2 -@46 := (n : @3) -> @43 @18 @7 -@47 := @42 @4 -@49 := @43 @6 @7 -@50 := LexLeanTarget.TargetSyntax.Value -@51 := List.nil.{0} -@52 := List.cons.{0} -@53 := @51 @50 -@54 := @52 @50 -@56 := @54 @6 @53 -@59 := Prod.{0, 0} @3 @50 -@60 := 0 -@64 := Prod.mk.{0, 0} @3 @50 @60 -@65 := @64 @6 -@66 := @51 @59 -@67 := @52 @59 -@69 := @67 @65 @66 -@70 := Bool.true -@71 := LexLeanTarget.TargetSyntax.Function -@72 := LexLeanTarget.TargetSyntax.Program.functions -@73 := @72 @0 -@74 := LexLeanTarget.TargetSyntax.Ty -@75 := @51 @3 -@76 := @51 @74 -@77 := LexLeanTarget.TargetSyntax.Ty.unit -@78 := LexLeanTarget.TargetSyntax.Value.unit -@81 := LexLeanTarget.TargetSyntax.Expr.value @77 @78 -@86 := LexLeanTarget.TargetSyntax.Function.mk @75 @76 @77 @81 -@91 := List.getD.{0} @71 @73 @60 @86 -@95 := fun (__e_n : @3) => LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.RustStd.root @17 @60 -@96 := LexLeanPreservation.Rust.WTL -@104 := {p : @8} -> {c : @9} -> {A : @10} -> @96 @14 @4 @17 @53 @76 -@106 := LexLeanPreservation.Rust.wtl_nil @0 -@107 := @96 @0 -@113 := {c : @9} -> {A : @10} -> @107 @4 @17 @53 @76 -@114 := @106 @1 -@115 := @107 @1 -@119 := {A : @10} -> @115 @17 @53 @76 -@120 := @114 @2 -@121 := @115 @2 -@122 := @121 @53 -@123 := @122 @76 -@124 := List.{0} -@125 := @124 @50 -@126 := @124 @74 -@127 := #6 -@128 := @11 @127 -@129 := #5 -@130 := @128 @129 -@131 := #4 -@134 := @130 @131 @12 @14 -@135 := #7 -@140 := @96 @135 @127 @129 @14 @4 -@141 := #8 -@144 := @96 @141 @135 @127 -@146 := @54 @129 @12 -@147 := @144 @146 -@148 := @52 @74 -@150 := @148 @131 @14 -@160 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {v : @50} -> {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @134) -> (hs : @140) -> @147 @150 -@162 := LexLeanPreservation.Rust.wtl_cons @0 -@182 := {c : @9} -> - {A : @10} -> - {v : @50} -> - {t : @74} -> - {vs : @125} -> - {ts : @126} -> - (h : @27 @129 @131 @12 @14) -> (hs : @107 @127 @129 @14 @4) -> @107 @135 @127 @146 @150 -@183 := @162 @1 -@199 := {A : @10} -> - {v : @50} -> - {t : @74} -> - {vs : @125} -> - {ts : @126} -> (h : @36 @131 @12 @14) -> (hs : @115 @129 @14 @4) -> @115 @127 @146 @150 -@200 := @183 @2 -@202 := @43 @12 @14 -@204 := @121 @14 @4 -@212 := {v : @50} -> - {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @202) -> (hs : @204) -> @121 @146 @150 -@213 := @200 @6 -@214 := @5 @131 -@216 := @43 @214 @14 -@217 := @5 @127 -@218 := @54 @217 -@226 := {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @216) -> (hs : @204) -> @121 (@218 @12) @150 -@227 := @213 @7 -@228 := @5 @12 -@230 := @43 @228 @7 -@231 := @5 @129 -@232 := @54 @231 -@234 := @121 (@232 @12) -@235 := @148 @7 -@236 := @235 @14 -@241 := {vs : @125} -> {ts : @126} -> (h : @230) -> (hs : @204) -> @234 @236 -@242 := @227 @53 -@243 := @5 @14 -@245 := @43 @243 @7 -@246 := @122 @4 -@248 := @54 @214 @53 -@249 := @121 @248 -@253 := {ts : @126} -> (h : @245) -> (hs : @246) -> @249 @236 -@254 := @242 @76 -@256 := @54 @228 @53 -@257 := @121 @256 -@258 := @235 @76 -@261 := (h : @49) -> (hs : @123) -> @257 @258 -@262 := @254 @47 -@264 := @54 @243 @53 -@265 := @121 @264 -@267 := (hs : @123) -> @265 @258 -@268 := @262 @120 -@269 := @121 @56 -@270 := @269 @258 -@271 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.denote -@272 := @271 @4 -@273 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.__fits_0 -@274 := @273 @4 -@277 := @5 (Production.Main.halvings @4) -@279 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.root @4 -@280 := Bool -@281 := Ne.{1} -@282 := LexLeanPreservation.Obs -@283 := @281 @282 -@284 := LexLeanPreservation.Rel -@287 := @283 (@284 @4 @17) -@288 := LexLeanPreservation.Obs.stuck -@291 := (f : @280) -> (v : @50) -> @287 @288 -@293 := LexLeanPreservation.Rust.rel_ne_stuck @274 -@299 := (v : @50) -> @283 (@284 (@273 @14) @17) @288 -@300 := @293 @277 -@304 := @283 (@284 @274 @277) @288 -@305 := @124 @59 -@306 := LexLeanPreservation.Rust.FunSem -@307 := #9 -@313 := (n : @3) -> @306 @307 @141 @135 @17 @127 -@314 := Eq.{1} -@315 := Option.{0} -@316 := @315 @71 -@317 := @314 @316 -@324 := LexLeanRuntime.index (@124 @71) @71 (LexLeanRuntime.instIndexableList @71) -@328 := @317 (@324 (@72 @307) @127) -@329 := Option.some.{0} -@330 := @329 @71 -@331 := @330 @129 -@332 := @328 @331 -@333 := #10 -@337 := @96 @333 @307 @141 @129 -@338 := LexLeanTarget.TargetSyntax.Function.types -@339 := @338 @127 -@340 := @337 @339 -@341 := @315 @305 -@342 := @314 @341 -@343 := LexLeanTarget.TargetSemantics.bindAll -@344 := LexLeanTarget.TargetSyntax.Function.parameters -@349 := @342 (@343 (@344 @135) @127 @66) -@350 := @329 @305 -@351 := @350 @129 -@352 := @349 @351 -@353 := @315 @280 -@354 := @314 @353 -@355 := LexLeanPreservation.Rust.fnFallible -@356 := #11 -@359 := @354 (@355 @356 @307) -@360 := @329 @280 -@361 := @360 @129 -@362 := @359 @361 -@363 := LexLeanPreservation.RunConv -@364 := #13 -@368 := @363 @364 @333 @141 @129 -@370 := @283 @127 @288 -@371 := Exists.{1} -@372 := LexLeanPreservation.Rust.ROut -@373 := @371 @372 -@374 := And -@375 := LexLeanPreservation.Rust.RealizesFn -@379 := @374 (@375 @307 @141 @17) -@380 := LexLeanPreservation.Rust.RCI -@382 := @380 #15 -@383 := LexLeanPreservation.Rust.fnIdent -@384 := @383 @364 -@391 := (hne : @370) -> @373 (fun (ro : @372) => @379 (@382 @384 @356 @17)) -@406 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {f : @3} -> - {fn : @71} -> - {args : @125} -> - {env : @305} -> - {F : @280} -> - {o : @282} -> - (hB : @313) -> - (hfn : @332) -> (hwt : @340) -> (hbind : @352) -> (hF : @362) -> (hA : @368) -> @391 -@408 := LexLeanPreservation.Rust.compose @0 -@409 := @306 @0 -@414 := (n : @3) -> @409 @141 @135 @17 @127 -@415 := @324 @73 -@418 := @317 (@415 @127) @331 -@422 := @107 @307 @141 @129 @339 -@423 := @363 @0 -@426 := @423 @333 @141 @129 -@440 := {c : @9} -> - {A : @10} -> - {f : @3} -> - {fn : @71} -> - {args : @125} -> - {env : @305} -> - {F : @280} -> - {o : @282} -> - (hB : @414) -> - (hfn : @418) -> (hwt : @422) -> (hbind : @352) -> (hF : @362) -> (hA : @426) -> @391 -@441 := @408 @1 -@442 := @409 @1 -@446 := (n : @3) -> @442 @135 @17 @127 -@449 := @115 @141 @129 @339 -@450 := @355 @1 -@453 := @354 (@450 @307) @361 -@454 := @380 @1 -@464 := (hbind : @352) -> - (hF : @453) -> (hA : @426) -> (hne : @370) -> @373 (fun (ro : @372) => @379 (@454 @384 @356 @17)) -@474 := {A : @10} -> - {f : @3} -> - {fn : @71} -> - {args : @125} -> - {env : @305} -> {F : @280} -> {o : @282} -> (hB : @446) -> (hfn : @418) -> (hwt : @449) -> @464 -@475 := @441 @2 -@477 := @442 @2 @17 -@479 := (n : @3) -> @477 @127 -@480 := @121 @129 -@481 := @480 @339 -@490 := {f : @3} -> - {fn : @71} -> - {args : @125} -> - {env : @305} -> {F : @280} -> {o : @282} -> (hB : @479) -> (hfn : @418) -> (hwt : @481) -> @464 -@491 := @475 @60 -@493 := (n : @3) -> @477 @60 -@494 := @415 @60 -@495 := @317 @494 -@496 := @495 @331 -@497 := @450 @60 -@498 := @354 @497 -@499 := @498 @361 -@500 := @423 @60 -@502 := @500 @141 @129 -@504 := @454 (@383 @60) -@512 := (hF : @499) -> (hA : @502) -> (hne : @370) -> @373 (fun (ro : @372) => @379 (@504 @356 @17)) -@521 := {fn : @71} -> - {args : @125} -> - {env : @305} -> - {F : @280} -> {o : @282} -> (hB : @493) -> (hfn : @496) -> (hwt : @481) -> (hbind : @352) -> @512 -@522 := @491 @91 -@524 := @495 (@330 @91) -@525 := @338 @91 -@526 := @480 @525 -@528 := @343 (@344 @91) -@540 := {args : @125} -> - {env : @305} -> - {F : @280} -> - {o : @282} -> - (hB : @493) -> (hfn : @524) -> (hwt : @526) -> (hbind : @342 (@528 @127 @66) @351) -> @512 -@541 := @522 @56 -@542 := @218 @53 -@544 := @121 @542 @525 -@547 := @54 (@5 @135) @53 -@551 := @342 (@528 @547 @66) @351 -@554 := @54 (@5 @307) @53 -@575 := {env : @305} -> - {F : @280} -> - {o : @282} -> - (hB : @493) -> - (hfn : @524) -> - (hwt : @544) -> - (hbind : @551) -> - (hF : @499) -> - (hA : @500 @554 @129) -> - (hne : @370) -> @373 (fun (ro : @372) => @379 (@504 (@54 (@5 #12) @53) @17)) -@576 := @541 @69 -@577 := @232 @53 -@579 := @121 @577 @525 -@587 := @342 (@528 @542 @66) (@350 (@67 (@64 @217) @66)) -@590 := @54 (@5 @141) @53 -@609 := {F : @280} -> - {o : @282} -> - (hB : @493) -> - (hfn : @524) -> - (hwt : @579) -> - (hbind : @587) -> - (hF : @499) -> - (hA : @500 @590 @129) -> - (hne : @370) -> @373 (fun (ro : @372) => @379 (@504 (@54 (@5 @356) @53) @17)) -@610 := @576 @70 -@611 := @249 @525 -@619 := @342 (@528 @577 @66) (@350 (@67 (@64 @231) @66)) -@621 := @498 (@360 @70) -@623 := @500 @547 @129 -@624 := @375 @70 -@643 := {o : @282} -> - (hB : @493) -> - (hfn : @524) -> - (hwt : @611) -> - (hbind : @619) -> - (hF : @621) -> - (hA : @623) -> - (hne : @370) -> @373 (fun (ro : @372) => @374 (@624 @141 @17) (@504 (@54 (@5 @333) @53) @17)) -@644 := @610 @272 -@645 := @257 @525 -@653 := @342 (@528 @248 @66) (@350 (@67 (@64 @214) @66)) -@654 := @500 @542 -@655 := @271 @127 -@656 := @654 @655 -@657 := @271 @135 -@675 := (hB : @493) -> - (hfn : @524) -> - (hwt : @645) -> - (hbind : @653) -> - (hF : @621) -> - (hA : @656) -> - (hne : @283 @657 @288) -> @373 (fun (ro : @372) => @374 (@624 (@271 @307) @17) (@504 @554 @17)) -@676 := @644 @95 -@677 := @265 @525 -@685 := @342 (@528 @256 @66) (@350 (@67 (@64 @228) @66)) -@686 := @500 @577 -@687 := @271 @129 -@705 := (hfn : @524) -> - (hwt : @677) -> - (hbind : @685) -> - (hF : @621) -> - (hA : @686 @687) -> - (hne : @283 @655 @288) -> @373 (fun (ro : @372) => @374 (@624 (@271 @141) @17) (@504 @590 @17)) -@706 := Eq.refl.{1} -@709 := @676 (@706 @316 @494) -@710 := @269 @525 -@718 := @342 (@528 @264 @66) (@350 (@67 (@64 @243) @66)) -@719 := @500 @248 -@720 := @271 @131 -@736 := (hwt : @710) -> - (hbind : @718) -> - (hF : @621) -> - (hA : @719 @720) -> - (hne : @283 @687 @288) -> @373 (fun (ro : @372) => @374 (@624 @657 @17) (@504 @547 @17)) -@737 := @709 @268 -@739 := @528 @56 @66 -@742 := @342 @739 (@350 @69) -@743 := @500 @256 -@744 := @271 @12 -@759 := (hbind : @742) -> - (hF : @621) -> - (hA : @743 @744) -> - (hne : @283 @720 @288) -> @373 (fun (ro : @372) => @374 (@624 @655 @17) (@504 @542 @17)) -@762 := @737 (@706 @341 @739) -@763 := @500 @264 -@764 := @271 @14 -@778 := (hF : @621) -> - (hA : @763 @764) -> - (hne : @283 @744 @288) -> @373 (fun (ro : @372) => @374 (@624 @687 @17) (@504 @577 @17)) -@781 := @762 (@706 @353 @497) -@795 := (hA : @500 @56 @272) -> - (hne : @283 @764 @288) -> @373 (fun (ro : @372) => @374 (@624 @720 @17) (@504 @248 @17)) -@796 := @781 @279 -@807 := (hne : @283 @272 @288) -> @373 (fun (ro : @372) => @374 (@624 @744 @17) (@504 @256 @17)) -@808 := @796 @300 -@814 := @374 (@624 @764 @17) (@504 @264 @17) -@816 := @373 (fun (ro : @372) => @814) -@818 := @373 (fun (__e_ro : @372) => @814) -@822 := LexLeanPreservation.Rust.RepresentableL (@54 @18 @53) -@823 := (__e_hrep : @822) -> @818 -@824 := fun (__e_hrep : @822) => @808 -@825 := (number : @3) -> @823 -@826 := fun (number : @3) => @824 -\end{coremodule} -\end{lexlean} diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R3/RustCore.lean b/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R3/RustCore.lean deleted file mode 100644 index 503bc1f3a..000000000 --- a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R3/RustCore.lean +++ /dev/null @@ -1,41 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.RustCore -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0], types := [.nat], result := .nat, - body := (.call 1 [(.var 0), (.value .nat (.nat 0))]) }, - { parameters := [0, 1], types := [.nat, .nat], result := .nat, - body := (.cond (.prim .natLt [(.var 0), (.value .nat (.nat 2))]) (.var 1) (.call 1 [(.prim .natSub [(.var 0), (.value .nat (.nat 2))]), (.prim .natAdd [(.var 1), (.value .nat (.nat 1))])])) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .core, items := [ - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible .nat) (.mk [] (.call (.function 1) [(.copy (.generated .binding 0)), (.lit (.nat 0))] false))), - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false) (.mk [] (.succeed (.copy (.generated .binding 1)))) (.mk [] (.call (.function 1) [(.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.lit (.nat 2)))] (.call (.runtime .natSub) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))), (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] true)))] false)))))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 1) [(.copy (.generated .binding 0)), (.lit (.nat 0))] false), [(0, .nat, (some 0))], rfl, rfl, - (Corr.callF (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 2)))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false) (.mk [] (.succeed (.copy (.generated .binding 1)))) (.mk [] (.call (.function 1) [(.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.lit (.nat 2)))] (.call (.runtime .natSub) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))), (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] true)))] false))), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 2)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.copy (.generated .binding 1)))) (lb := []) (tb := (.call (.function 1) [(.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.lit (.nat 2)))] (.call (.runtime .natSub) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))), (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] true)))] false)) (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl))) (Corr.callF (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.lit (.nat 2)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl)))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | _ + 2 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.RustCore diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R3/RustStd.lean b/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R3/RustStd.lean deleted file mode 100644 index c78342686..000000000 --- a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R3/RustStd.lean +++ /dev/null @@ -1,41 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0], types := [.nat], result := .nat, - body := (.call 1 [(.var 0), (.value .nat (.nat 0))]) }, - { parameters := [0, 1], types := [.nat, .nat], result := .nat, - body := (.cond (.prim .natLt [(.var 0), (.value .nat (.nat 2))]) (.var 1) (.call 1 [(.prim .natSub [(.var 0), (.value .nat (.nat 2))]), (.prim .natAdd [(.var 1), (.value .nat (.nat 1))])])) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible .nat) (.mk [] (.call (.function 1) [(.copy (.generated .binding 0)), (.lit (.nat 0))] false))), - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false) (.mk [] (.succeed (.copy (.generated .binding 1)))) (.mk [] (.call (.function 1) [(.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.lit (.nat 2)))] (.call (.runtime .natSub) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))), (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] true)))] false)))))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 1) [(.copy (.generated .binding 0)), (.lit (.nat 0))] false), [(0, .nat, (some 0))], rfl, rfl, - (Corr.callF (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 2)))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false) (.mk [] (.succeed (.copy (.generated .binding 1)))) (.mk [] (.call (.function 1) [(.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.lit (.nat 2)))] (.call (.runtime .natSub) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))), (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] true)))] false))), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 2)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.copy (.generated .binding 1)))) (lb := []) (tb := (.call (.function 1) [(.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.lit (.nat 2)))] (.call (.runtime .natSub) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))), (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] true)))] false)) (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl))) (Corr.callF (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.lit (.nat 2)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl)))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | _ + 2 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.RustStd diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R4.lean b/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R4.lean deleted file mode 100644 index e775440d4..000000000 --- a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R4.lean +++ /dev/null @@ -1,45 +0,0 @@ -import LexLeanPreservation.Core -import LexLeanPreservation.Values -import LexLeanPreservation.Primitives -import LexLeanPreservation.Fixed -import LexLeanPreservation.Keys -import LexLeanPreservation.Templates -import LexLeanPreservation.Validate -import Production.Kernel -import Production.Main -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -set_option linter.unusedVariables false -namespace LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4 - -def __prog : _root_.LexLeanTarget.TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0], types := [(.list .nat)], result := .nat, - body := (.call 1 [(.var 0)]) }, - { parameters := [0], types := [(.list .nat)], result := .nat, - body := (.«match» .nat (.var 0) [(.arm .nil [] (.value .nat (.nat 0))), (.arm .cons [1, 2] (.prim .natAdd [(.var 1), (.call 1 [(.var 2)])]))]) }] } - -def __fits_1 : ∀ (values : (List Nat)), Bool - | (List.nil) => (Bool.true && Bool.true) - | (List.cons head tail) => (Bool.true && ((Bool.true && (((Bool.true && Bool.true) && (__fits_1 (tail))) && Bool.true)) && (Nat.blt (head + (Production.Kernel.total (tail))) 18446744073709551616))) - -theorem __rel_1 : ∀ (values : (List Nat)), _root_.LexLeanPreservation.FunRel __prog 1 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) values)] (_root_.LexLeanPreservation.Rel (__fits_1 values) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Production.Kernel.total values))) - | (List.nil) => by rw [__fits_1.eq_def]; exact _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_match (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value)) - | (List.cons head tail) => by rw [__fits_1.eq_def]; exact _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_match (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_1 (tail))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd head (Production.Kernel.total (tail))))))) - -def __fits_0 (values : (List Nat)) : Bool := - ((Bool.true && Bool.true) && (__fits_1 (values))) - -attribute [local irreducible] Production.Kernel.total in -theorem __rel_0 (values : (List Nat)) : _root_.LexLeanPreservation.FunRel __prog 0 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) values)] (_root_.LexLeanPreservation.Rel (__fits_0 values) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Production.Main.sumAll values))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_1 (values))) - -def denote (values : (List Nat)) : _root_.LexLeanPreservation.Obs := - _root_.cond (__fits_0 values) (_root_.LexLeanPreservation.Obs.value ((_root_.LexLeanTarget.TargetSyntax.Value.nat (Production.Main.sumAll values)))) _root_.LexLeanPreservation.Obs.overflow - -theorem root (values : (List Nat)) : _root_.LexLeanPreservation.RunConv __prog 0 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) values)] (_root_.LexLeanPreservation.Rel (__fits_0 values) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Production.Main.sumAll values))) := - _root_.LexLeanPreservation.run_of_funRel (__rel_0 values) - -end LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4 diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R4/Compose/RustStd.lex.tex b/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R4/Compose/RustStd.lex.tex deleted file mode 100644 index 416ef85a9..000000000 --- a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R4/Compose/RustStd.lex.tex +++ /dev/null @@ -1,461 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4, - LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.Compose.RustStd.root : @923 := @924 { - all: [LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.RustStd.program -@1 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.RustStd.krate -@2 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.RustStd.flags -@3 := Nat -@4 := List.{0} -@5 := @4 @3 -@6 := #1 -@7 := LexLeanTarget.TargetSyntax.Value.nat -@8 := LexLeanPreservation.encList -@9 := @8 @3 -@10 := @9 @7 -@11 := @10 @6 -@12 := LexLeanTarget.TargetSyntax.Ty.nat -@13 := LexLeanTarget.TargetSyntax.Ty.list -@14 := @13 @12 -@15 := #0 -@16 := LexLeanTarget.TargetSyntax.Program -@17 := LexLeanPreservation.Rust.RCrate -@18 := LexLeanPreservation.Rust.Flags -@19 := LexLeanPreservation.Rust.WT -@20 := #3 -@21 := @19 @20 -@22 := #2 -@24 := @21 @22 @6 -@25 := @7 @15 -@31 := {p : @16} -> {c : @17} -> {A : @18} -> (n : @3) -> @24 @25 @12 -@33 := LexLeanPreservation.Rust.wt_nat @0 -@34 := @19 @0 -@41 := {c : @17} -> {A : @18} -> (n : @3) -> @34 @22 @6 @25 @12 -@42 := @33 @1 -@43 := @34 @1 -@48 := {A : @18} -> (n : @3) -> @43 @6 @25 @12 -@49 := @42 @2 -@50 := @43 @2 -@51 := @50 @25 -@52 := @51 @12 -@53 := (n : @3) -> @52 -@55 := fun (__x : @3) => @49 @15 -@56 := Sort 1 -@57 := LexLeanTarget.TargetSyntax.Value -@58 := (a._@._internal._hyg.#0 : @15) -> @57 -@59 := LexLeanTarget.TargetSyntax.Ty -@60 := #6 -@61 := @19 @60 -@62 := #5 -@63 := @61 @62 -@64 := #4 -@65 := @63 @64 -@66 := @22 @15 -@69 := (x : @22) -> @65 @66 @6 -@70 := @4 @20 -@71 := #7 -@74 := @19 @71 @60 @62 -@77 := @8 @64 @20 @15 -@78 := @74 @77 -@79 := @13 @22 -@88 := {p : @16} -> - {c : @17} -> - {A : @18} -> {α : @56} -> {e : @58} -> {t : @59} -> (h : @69) -> (xs : @70) -> @78 @79 -@90 := LexLeanPreservation.Rust.wt_encList @0 -@92 := @34 @62 @64 -@106 := {c : @17} -> - {A : @18} -> - {α : @56} -> - {e : @58} -> {t : @59} -> (h : (x : @22) -> @92 @66 @6) -> (xs : @70) -> @34 @60 @62 @77 @79 -@107 := @90 @1 -@108 := @43 @64 -@120 := {A : @18} -> - {α : @56} -> - {e : @58} -> {t : @59} -> (h : (x : @22) -> @108 @66 @6) -> (xs : @70) -> @43 @62 @77 @79 -@121 := @107 @2 -@123 := @50 @66 @6 -@131 := {α : @56} -> {e : @58} -> {t : @59} -> (h : (x : @22) -> @123) -> (xs : @70) -> @50 @77 @79 -@132 := @121 @3 -@142 := {e : (a._@._internal._hyg.#0 : @3) -> @57} -> - {t : @59} -> (h : (x : @3) -> @123) -> (xs : @5) -> @50 (@9 @20 @15) @79 -@143 := @132 @7 -@145 := (x : @3) -> @51 @6 -@146 := @10 @15 -@147 := @50 @146 -@151 := {t : @59} -> (h : @145) -> (xs : @5) -> @147 @79 -@152 := @143 @12 -@156 := (h : (x : @3) -> @52) -> (xs : @5) -> @147 @14 -@158 := @152 @55 @6 -@160 := @50 @11 @14 -@161 := List.nil.{0} -@162 := List.cons.{0} -@163 := @161 @57 -@164 := @162 @57 -@166 := @164 @11 @163 -@169 := Prod.{0, 0} @3 @57 -@170 := 0 -@174 := Prod.mk.{0, 0} @3 @57 @170 -@175 := @174 @11 -@176 := @161 @169 -@177 := @162 @169 -@179 := @177 @175 @176 -@180 := Bool.true -@181 := LexLeanTarget.TargetSyntax.Function -@182 := LexLeanTarget.TargetSyntax.Program.functions -@183 := @182 @0 -@184 := @161 @3 -@185 := @161 @59 -@186 := LexLeanTarget.TargetSyntax.Ty.unit -@187 := LexLeanTarget.TargetSyntax.Value.unit -@190 := LexLeanTarget.TargetSyntax.Expr.value @186 @187 -@195 := LexLeanTarget.TargetSyntax.Function.mk @184 @185 @186 @190 -@200 := List.getD.{0} @181 @183 @170 @195 -@204 := fun (__e_n : @3) => - LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.RustStd.root @15 @170 -@205 := LexLeanPreservation.Rust.WTL -@213 := {p : @16} -> {c : @17} -> {A : @18} -> @205 @22 @6 @15 @163 @185 -@215 := LexLeanPreservation.Rust.wtl_nil @0 -@216 := @205 @0 -@222 := {c : @17} -> {A : @18} -> @216 @6 @15 @163 @185 -@223 := @215 @1 -@224 := @216 @1 -@228 := {A : @18} -> @224 @15 @163 @185 -@229 := @223 @2 -@230 := @224 @2 -@231 := @230 @163 -@232 := @231 @185 -@233 := @4 @57 -@234 := @4 @59 -@236 := @65 @20 @22 -@241 := @205 @71 @60 @62 @22 @6 -@242 := #8 -@245 := @205 @242 @71 @60 -@247 := @164 @62 @20 -@248 := @245 @247 -@249 := @162 @59 -@251 := @249 @64 @22 -@261 := {p : @16} -> - {c : @17} -> - {A : @18} -> - {v : @57} -> {t : @59} -> {vs : @233} -> {ts : @234} -> (h : @236) -> (hs : @241) -> @248 @251 -@263 := LexLeanPreservation.Rust.wtl_cons @0 -@281 := {c : @17} -> - {A : @18} -> - {v : @57} -> - {t : @59} -> - {vs : @233} -> - {ts : @234} -> (h : @92 @20 @22) -> (hs : @216 @60 @62 @22 @6) -> @216 @71 @60 @247 @251 -@282 := @263 @1 -@297 := {A : @18} -> - {v : @57} -> - {t : @59} -> - {vs : @233} -> {ts : @234} -> (h : @108 @20 @22) -> (hs : @224 @62 @22 @6) -> @224 @60 @247 @251 -@298 := @282 @2 -@300 := @50 @20 @22 -@302 := @230 @22 @6 -@310 := {v : @57} -> - {t : @59} -> {vs : @233} -> {ts : @234} -> (h : @300) -> (hs : @302) -> @230 @247 @251 -@311 := @298 @11 -@312 := @10 @64 -@314 := @50 @312 @22 -@315 := @10 @60 -@316 := @164 @315 -@324 := {t : @59} -> {vs : @233} -> {ts : @234} -> (h : @314) -> (hs : @302) -> @230 (@316 @20) @251 -@325 := @311 @14 -@326 := @10 @20 -@328 := @50 @326 @14 -@329 := @10 @62 -@330 := @164 @329 -@332 := @230 (@330 @20) -@333 := @249 @14 -@334 := @333 @22 -@339 := {vs : @233} -> {ts : @234} -> (h : @328) -> (hs : @302) -> @332 @334 -@340 := @325 @163 -@341 := @10 @22 -@343 := @50 @341 @14 -@344 := @231 @6 -@346 := @164 @312 @163 -@347 := @230 @346 -@351 := {ts : @234} -> (h : @343) -> (hs : @344) -> @347 @334 -@352 := @340 @185 -@354 := @164 @326 @163 -@355 := @230 @354 -@356 := @333 @185 -@359 := (h : @160) -> (hs : @232) -> @355 @356 -@360 := @352 @158 -@362 := @164 @341 @163 -@363 := @230 @362 -@365 := (hs : @232) -> @363 @356 -@366 := @360 @229 -@367 := @230 @166 -@368 := @367 @356 -@369 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.denote -@370 := @369 @6 -@371 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.__fits_0 -@372 := @371 @6 -@375 := @7 (Production.Main.sumAll @6) -@377 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.root @6 -@378 := Bool -@379 := Ne.{1} -@380 := LexLeanPreservation.Obs -@381 := @379 @380 -@382 := LexLeanPreservation.Rel -@385 := @381 (@382 @6 @15) -@386 := LexLeanPreservation.Obs.stuck -@389 := (f : @378) -> (v : @57) -> @385 @386 -@391 := LexLeanPreservation.Rust.rel_ne_stuck @372 -@397 := (v : @57) -> @381 (@382 (@371 @22) @15) @386 -@398 := @391 @375 -@402 := @381 (@382 @372 @375) @386 -@403 := @4 @169 -@404 := LexLeanPreservation.Rust.FunSem -@405 := #9 -@411 := (n : @3) -> @404 @405 @242 @71 @15 @60 -@412 := Eq.{1} -@413 := Option.{0} -@414 := @413 @181 -@415 := @412 @414 -@422 := LexLeanRuntime.index (@4 @181) @181 (LexLeanRuntime.instIndexableList @181) -@426 := @415 (@422 (@182 @405) @60) -@427 := Option.some.{0} -@428 := @427 @181 -@429 := @428 @62 -@430 := @426 @429 -@431 := #10 -@435 := @205 @431 @405 @242 @62 -@436 := LexLeanTarget.TargetSyntax.Function.types -@437 := @436 @60 -@438 := @435 @437 -@439 := @413 @403 -@440 := @412 @439 -@441 := LexLeanTarget.TargetSemantics.bindAll -@442 := LexLeanTarget.TargetSyntax.Function.parameters -@447 := @440 (@441 (@442 @71) @60 @176) -@448 := @427 @403 -@449 := @448 @62 -@450 := @447 @449 -@451 := @413 @378 -@452 := @412 @451 -@453 := LexLeanPreservation.Rust.fnFallible -@454 := #11 -@457 := @452 (@453 @454 @405) -@458 := @427 @378 -@459 := @458 @62 -@460 := @457 @459 -@461 := LexLeanPreservation.RunConv -@462 := #13 -@466 := @461 @462 @431 @242 @62 -@468 := @381 @60 @386 -@469 := Exists.{1} -@470 := LexLeanPreservation.Rust.ROut -@471 := @469 @470 -@472 := And -@473 := LexLeanPreservation.Rust.RealizesFn -@477 := @472 (@473 @405 @242 @15) -@478 := LexLeanPreservation.Rust.RCI -@480 := @478 #15 -@481 := LexLeanPreservation.Rust.fnIdent -@482 := @481 @462 -@489 := (hne : @468) -> @471 (fun (ro : @470) => @477 (@480 @482 @454 @15)) -@504 := {p : @16} -> - {c : @17} -> - {A : @18} -> - {f : @3} -> - {fn : @181} -> - {args : @233} -> - {env : @403} -> - {F : @378} -> - {o : @380} -> - (hB : @411) -> - (hfn : @430) -> (hwt : @438) -> (hbind : @450) -> (hF : @460) -> (hA : @466) -> @489 -@506 := LexLeanPreservation.Rust.compose @0 -@507 := @404 @0 -@512 := (n : @3) -> @507 @242 @71 @15 @60 -@513 := @422 @183 -@516 := @415 (@513 @60) @429 -@520 := @216 @405 @242 @62 @437 -@521 := @461 @0 -@524 := @521 @431 @242 @62 -@538 := {c : @17} -> - {A : @18} -> - {f : @3} -> - {fn : @181} -> - {args : @233} -> - {env : @403} -> - {F : @378} -> - {o : @380} -> - (hB : @512) -> - (hfn : @516) -> (hwt : @520) -> (hbind : @450) -> (hF : @460) -> (hA : @524) -> @489 -@539 := @506 @1 -@540 := @507 @1 -@544 := (n : @3) -> @540 @71 @15 @60 -@547 := @224 @242 @62 @437 -@548 := @453 @1 -@551 := @452 (@548 @405) @459 -@552 := @478 @1 -@562 := (hbind : @450) -> - (hF : @551) -> (hA : @524) -> (hne : @468) -> @471 (fun (ro : @470) => @477 (@552 @482 @454 @15)) -@572 := {A : @18} -> - {f : @3} -> - {fn : @181} -> - {args : @233} -> - {env : @403} -> {F : @378} -> {o : @380} -> (hB : @544) -> (hfn : @516) -> (hwt : @547) -> @562 -@573 := @539 @2 -@575 := @540 @2 @15 -@577 := (n : @3) -> @575 @60 -@578 := @230 @62 -@579 := @578 @437 -@588 := {f : @3} -> - {fn : @181} -> - {args : @233} -> - {env : @403} -> {F : @378} -> {o : @380} -> (hB : @577) -> (hfn : @516) -> (hwt : @579) -> @562 -@589 := @573 @170 -@591 := (n : @3) -> @575 @170 -@592 := @513 @170 -@593 := @415 @592 -@594 := @593 @429 -@595 := @548 @170 -@596 := @452 @595 -@597 := @596 @459 -@598 := @521 @170 -@600 := @598 @242 @62 -@602 := @552 (@481 @170) -@610 := (hF : @597) -> (hA : @600) -> (hne : @468) -> @471 (fun (ro : @470) => @477 (@602 @454 @15)) -@619 := {fn : @181} -> - {args : @233} -> - {env : @403} -> - {F : @378} -> {o : @380} -> (hB : @591) -> (hfn : @594) -> (hwt : @579) -> (hbind : @450) -> @610 -@620 := @589 @200 -@622 := @593 (@428 @200) -@623 := @436 @200 -@624 := @578 @623 -@626 := @441 (@442 @200) -@638 := {args : @233} -> - {env : @403} -> - {F : @378} -> - {o : @380} -> - (hB : @591) -> (hfn : @622) -> (hwt : @624) -> (hbind : @440 (@626 @60 @176) @449) -> @610 -@639 := @620 @166 -@640 := @316 @163 -@642 := @230 @640 @623 -@645 := @164 (@10 @71) @163 -@649 := @440 (@626 @645 @176) @449 -@652 := @164 (@10 @405) @163 -@673 := {env : @403} -> - {F : @378} -> - {o : @380} -> - (hB : @591) -> - (hfn : @622) -> - (hwt : @642) -> - (hbind : @649) -> - (hF : @597) -> - (hA : @598 @652 @62) -> - (hne : @468) -> @471 (fun (ro : @470) => @477 (@602 (@164 (@10 #12) @163) @15)) -@674 := @639 @179 -@675 := @330 @163 -@677 := @230 @675 @623 -@685 := @440 (@626 @640 @176) (@448 (@177 (@174 @315) @176)) -@688 := @164 (@10 @242) @163 -@707 := {F : @378} -> - {o : @380} -> - (hB : @591) -> - (hfn : @622) -> - (hwt : @677) -> - (hbind : @685) -> - (hF : @597) -> - (hA : @598 @688 @62) -> - (hne : @468) -> @471 (fun (ro : @470) => @477 (@602 (@164 (@10 @454) @163) @15)) -@708 := @674 @180 -@709 := @347 @623 -@717 := @440 (@626 @675 @176) (@448 (@177 (@174 @329) @176)) -@719 := @596 (@458 @180) -@721 := @598 @645 @62 -@722 := @473 @180 -@741 := {o : @380} -> - (hB : @591) -> - (hfn : @622) -> - (hwt : @709) -> - (hbind : @717) -> - (hF : @719) -> - (hA : @721) -> - (hne : @468) -> @471 (fun (ro : @470) => @472 (@722 @242 @15) (@602 (@164 (@10 @431) @163) @15)) -@742 := @708 @370 -@743 := @355 @623 -@751 := @440 (@626 @346 @176) (@448 (@177 (@174 @312) @176)) -@752 := @598 @640 -@753 := @369 @60 -@754 := @752 @753 -@755 := @369 @71 -@773 := (hB : @591) -> - (hfn : @622) -> - (hwt : @743) -> - (hbind : @751) -> - (hF : @719) -> - (hA : @754) -> - (hne : @381 @755 @386) -> @471 (fun (ro : @470) => @472 (@722 (@369 @405) @15) (@602 @652 @15)) -@774 := @742 @204 -@775 := @363 @623 -@783 := @440 (@626 @354 @176) (@448 (@177 (@174 @326) @176)) -@784 := @598 @675 -@785 := @369 @62 -@803 := (hfn : @622) -> - (hwt : @775) -> - (hbind : @783) -> - (hF : @719) -> - (hA : @784 @785) -> - (hne : @381 @753 @386) -> @471 (fun (ro : @470) => @472 (@722 (@369 @242) @15) (@602 @688 @15)) -@804 := Eq.refl.{1} -@807 := @774 (@804 @414 @592) -@808 := @367 @623 -@816 := @440 (@626 @362 @176) (@448 (@177 (@174 @341) @176)) -@817 := @598 @346 -@818 := @369 @64 -@834 := (hwt : @808) -> - (hbind : @816) -> - (hF : @719) -> - (hA : @817 @818) -> - (hne : @381 @785 @386) -> @471 (fun (ro : @470) => @472 (@722 @755 @15) (@602 @645 @15)) -@835 := @807 @366 -@837 := @626 @166 @176 -@840 := @440 @837 (@448 @179) -@841 := @598 @354 -@842 := @369 @20 -@857 := (hbind : @840) -> - (hF : @719) -> - (hA : @841 @842) -> - (hne : @381 @818 @386) -> @471 (fun (ro : @470) => @472 (@722 @753 @15) (@602 @640 @15)) -@860 := @835 (@804 @439 @837) -@861 := @598 @362 -@862 := @369 @22 -@876 := (hF : @719) -> - (hA : @861 @862) -> - (hne : @381 @842 @386) -> @471 (fun (ro : @470) => @472 (@722 @785 @15) (@602 @675 @15)) -@879 := @860 (@804 @451 @595) -@893 := (hA : @598 @166 @370) -> - (hne : @381 @862 @386) -> @471 (fun (ro : @470) => @472 (@722 @818 @15) (@602 @346 @15)) -@894 := @879 @377 -@905 := (hne : @381 @370 @386) -> @471 (fun (ro : @470) => @472 (@722 @842 @15) (@602 @354 @15)) -@906 := @894 @398 -@912 := @472 (@722 @862 @15) (@602 @362 @15) -@914 := @471 (fun (ro : @470) => @912) -@916 := @471 (fun (__e_ro : @470) => @912) -@920 := LexLeanPreservation.Rust.RepresentableL (@164 @146 @163) -@921 := (__e_hrep : @920) -> @916 -@922 := fun (__e_hrep : @920) => @906 -@923 := (values : @5) -> @921 -@924 := fun (values : @5) => @922 -\end{coremodule} -\end{lexlean} diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R4/RustStd.lean b/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R4/RustStd.lean deleted file mode 100644 index a24250e4b..000000000 --- a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R4/RustStd.lean +++ /dev/null @@ -1,41 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0], types := [(.list .nat)], result := .nat, - body := (.call 1 [(.var 0)]) }, - { parameters := [0], types := [(.list .nat)], result := .nat, - body := (.«match» .nat (.var 0) [(.arm .nil [] (.value .nat (.nat 0))), (.arm .cons [1, 2] (.prim .natAdd [(.var 1), (.call 1 [(.var 2)])]))]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }] (.fallible .nat) (.mk [] (.call (.function 1) [(.move (.generated .binding 0))] false))), - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 1)) [(.mk .none (.mk [] (.succeed (.lit (.nat 0))))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 3)) none (.call (.function 1) [(.move (.generated .binding 2))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] false)))])))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 1) [(.move (.generated .binding 0))] false), [(0, (.list .nat), (some 0))], rfl, rfl, - (Corr.callF (ts := [(.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 1)) [(.mk .none (.mk [] (.succeed (.lit (.nat 0))))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 3)) none (.call (.function 1) [(.move (.generated .binding 2))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] false)))]), [(0, (.list .nat), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.lit (.nat 0)))) (Corr.mCons (Γ' := [(2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 3)) none (.call (.function 1) [(.move (.generated .binding 2))] true))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] false)) (Corr.mNil) rfl rfl rfl (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl)))) rfl rfl rfl)⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | _ + 2 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.RustStd diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R5.lean b/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R5.lean deleted file mode 100644 index a6c8701ed..000000000 --- a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R5.lean +++ /dev/null @@ -1,43 +0,0 @@ -import LexLeanPreservation.Core -import LexLeanPreservation.Values -import LexLeanPreservation.Primitives -import LexLeanPreservation.Fixed -import LexLeanPreservation.Keys -import LexLeanPreservation.Templates -import LexLeanPreservation.Validate -import Production.Kernel -import Production.Main -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -set_option linter.unusedVariables false -namespace LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5 - -def __prog : _root_.LexLeanTarget.TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0], types := [(.list .nat)], result := .nat, - body := (.call 1 [(.var 0), (.value .nat (.nat 0))]) }, - { parameters := [0, 1], types := [(.list .nat), .nat], result := .nat, - body := (.«match» .nat (.var 0) [(.arm .nil [] (.var 1)), (.arm .cons [2, 3] (.var 2))]) }] } - -def __fits_1 (values : (List Nat)) (fallback : Nat) : Bool := - (Bool.true && ((fun (Item : Type) (__a : (List Item)) (__k0 : Bool) (__k1 : ∀ (head : Item) (tail : (List Item)), Bool) => (match __a with | List.nil => __k0 | List.cons head tail => __k1 head tail : Bool)) Nat values (Bool.true) (fun (head : Nat) (tail : (List Nat)) => Bool.true))) - -theorem __rel_1 (values : (List Nat)) (fallback : Nat) : _root_.LexLeanPreservation.FunRel __prog 1 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) values), (_root_.LexLeanTarget.TargetSyntax.Value.nat fallback)] (_root_.LexLeanPreservation.Rel (__fits_1 values fallback) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Production.Kernel.firstOr Nat values fallback))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (List Nat)) => ((fun (Item : Type) (__a : (List Item)) (__k0 : Bool) (__k1 : ∀ (head : Item) (tail : (List Item)), Bool) => (match __a with | List.nil => __k0 | List.cons head tail => __k1 head tail : Bool)) Nat __a (Bool.true) (fun (head : Nat) (tail : (List Nat)) => Bool.true))) (fun (__a : (List Nat)) => _root_.LexLeanTarget.TargetSyntax.Value.nat ((fun (Item : Type) (__a : (List Item)) (__k0 : Nat) (__k1 : ∀ (head : Item) (tail : (List Item)), Nat) => (match __a with | List.nil => __k0 | List.cons head tail => __k1 head tail : Nat)) Nat __a (fallback) (fun (head : Nat) (tail : (List Nat)) => head))) values (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (List Nat)) _ => match __a with | List.nil => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | List.cons head tail => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl))))) - -def __fits_0 (values : (List Nat)) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && (__fits_1 (values) ((0 : Nat)))) - -attribute [local irreducible] Production.Kernel.firstOr in -theorem __rel_0 (values : (List Nat)) : _root_.LexLeanPreservation.FunRel __prog 0 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) values)] (_root_.LexLeanPreservation.Rel (__fits_0 values) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Production.Main.headOr values))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_1 (values) ((0 : Nat)))) - -def denote (values : (List Nat)) : _root_.LexLeanPreservation.Obs := - _root_.cond (__fits_0 values) (_root_.LexLeanPreservation.Obs.value ((_root_.LexLeanTarget.TargetSyntax.Value.nat (Production.Main.headOr values)))) _root_.LexLeanPreservation.Obs.overflow - -theorem root (values : (List Nat)) : _root_.LexLeanPreservation.RunConv __prog 0 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) values)] (_root_.LexLeanPreservation.Rel (__fits_0 values) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Production.Main.headOr values))) := - _root_.LexLeanPreservation.run_of_funRel (__rel_0 values) - -end LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5 diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R5/Compose/RustStd.lex.tex b/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R5/Compose/RustStd.lex.tex deleted file mode 100644 index 4f21e3d41..000000000 --- a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R5/Compose/RustStd.lex.tex +++ /dev/null @@ -1,461 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5, - LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.Compose.RustStd.root : @923 := @924 { - all: [LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.RustStd.program -@1 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.RustStd.krate -@2 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.RustStd.flags -@3 := Nat -@4 := List.{0} -@5 := @4 @3 -@6 := #1 -@7 := LexLeanTarget.TargetSyntax.Value.nat -@8 := LexLeanPreservation.encList -@9 := @8 @3 -@10 := @9 @7 -@11 := @10 @6 -@12 := LexLeanTarget.TargetSyntax.Ty.nat -@13 := LexLeanTarget.TargetSyntax.Ty.list -@14 := @13 @12 -@15 := #0 -@16 := LexLeanTarget.TargetSyntax.Program -@17 := LexLeanPreservation.Rust.RCrate -@18 := LexLeanPreservation.Rust.Flags -@19 := LexLeanPreservation.Rust.WT -@20 := #3 -@21 := @19 @20 -@22 := #2 -@24 := @21 @22 @6 -@25 := @7 @15 -@31 := {p : @16} -> {c : @17} -> {A : @18} -> (n : @3) -> @24 @25 @12 -@33 := LexLeanPreservation.Rust.wt_nat @0 -@34 := @19 @0 -@41 := {c : @17} -> {A : @18} -> (n : @3) -> @34 @22 @6 @25 @12 -@42 := @33 @1 -@43 := @34 @1 -@48 := {A : @18} -> (n : @3) -> @43 @6 @25 @12 -@49 := @42 @2 -@50 := @43 @2 -@51 := @50 @25 -@52 := @51 @12 -@53 := (n : @3) -> @52 -@55 := fun (__x : @3) => @49 @15 -@56 := Sort 1 -@57 := LexLeanTarget.TargetSyntax.Value -@58 := (a._@._internal._hyg.#0 : @15) -> @57 -@59 := LexLeanTarget.TargetSyntax.Ty -@60 := #6 -@61 := @19 @60 -@62 := #5 -@63 := @61 @62 -@64 := #4 -@65 := @63 @64 -@66 := @22 @15 -@69 := (x : @22) -> @65 @66 @6 -@70 := @4 @20 -@71 := #7 -@74 := @19 @71 @60 @62 -@77 := @8 @64 @20 @15 -@78 := @74 @77 -@79 := @13 @22 -@88 := {p : @16} -> - {c : @17} -> - {A : @18} -> {α : @56} -> {e : @58} -> {t : @59} -> (h : @69) -> (xs : @70) -> @78 @79 -@90 := LexLeanPreservation.Rust.wt_encList @0 -@92 := @34 @62 @64 -@106 := {c : @17} -> - {A : @18} -> - {α : @56} -> - {e : @58} -> {t : @59} -> (h : (x : @22) -> @92 @66 @6) -> (xs : @70) -> @34 @60 @62 @77 @79 -@107 := @90 @1 -@108 := @43 @64 -@120 := {A : @18} -> - {α : @56} -> - {e : @58} -> {t : @59} -> (h : (x : @22) -> @108 @66 @6) -> (xs : @70) -> @43 @62 @77 @79 -@121 := @107 @2 -@123 := @50 @66 @6 -@131 := {α : @56} -> {e : @58} -> {t : @59} -> (h : (x : @22) -> @123) -> (xs : @70) -> @50 @77 @79 -@132 := @121 @3 -@142 := {e : (a._@._internal._hyg.#0 : @3) -> @57} -> - {t : @59} -> (h : (x : @3) -> @123) -> (xs : @5) -> @50 (@9 @20 @15) @79 -@143 := @132 @7 -@145 := (x : @3) -> @51 @6 -@146 := @10 @15 -@147 := @50 @146 -@151 := {t : @59} -> (h : @145) -> (xs : @5) -> @147 @79 -@152 := @143 @12 -@156 := (h : (x : @3) -> @52) -> (xs : @5) -> @147 @14 -@158 := @152 @55 @6 -@160 := @50 @11 @14 -@161 := List.nil.{0} -@162 := List.cons.{0} -@163 := @161 @57 -@164 := @162 @57 -@166 := @164 @11 @163 -@169 := Prod.{0, 0} @3 @57 -@170 := 0 -@174 := Prod.mk.{0, 0} @3 @57 @170 -@175 := @174 @11 -@176 := @161 @169 -@177 := @162 @169 -@179 := @177 @175 @176 -@180 := Bool.false -@181 := LexLeanTarget.TargetSyntax.Function -@182 := LexLeanTarget.TargetSyntax.Program.functions -@183 := @182 @0 -@184 := @161 @3 -@185 := @161 @59 -@186 := LexLeanTarget.TargetSyntax.Ty.unit -@187 := LexLeanTarget.TargetSyntax.Value.unit -@190 := LexLeanTarget.TargetSyntax.Expr.value @186 @187 -@195 := LexLeanTarget.TargetSyntax.Function.mk @184 @185 @186 @190 -@200 := List.getD.{0} @181 @183 @170 @195 -@204 := fun (__e_n : @3) => - LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.RustStd.root @15 @170 -@205 := LexLeanPreservation.Rust.WTL -@213 := {p : @16} -> {c : @17} -> {A : @18} -> @205 @22 @6 @15 @163 @185 -@215 := LexLeanPreservation.Rust.wtl_nil @0 -@216 := @205 @0 -@222 := {c : @17} -> {A : @18} -> @216 @6 @15 @163 @185 -@223 := @215 @1 -@224 := @216 @1 -@228 := {A : @18} -> @224 @15 @163 @185 -@229 := @223 @2 -@230 := @224 @2 -@231 := @230 @163 -@232 := @231 @185 -@233 := @4 @57 -@234 := @4 @59 -@236 := @65 @20 @22 -@241 := @205 @71 @60 @62 @22 @6 -@242 := #8 -@245 := @205 @242 @71 @60 -@247 := @164 @62 @20 -@248 := @245 @247 -@249 := @162 @59 -@251 := @249 @64 @22 -@261 := {p : @16} -> - {c : @17} -> - {A : @18} -> - {v : @57} -> {t : @59} -> {vs : @233} -> {ts : @234} -> (h : @236) -> (hs : @241) -> @248 @251 -@263 := LexLeanPreservation.Rust.wtl_cons @0 -@281 := {c : @17} -> - {A : @18} -> - {v : @57} -> - {t : @59} -> - {vs : @233} -> - {ts : @234} -> (h : @92 @20 @22) -> (hs : @216 @60 @62 @22 @6) -> @216 @71 @60 @247 @251 -@282 := @263 @1 -@297 := {A : @18} -> - {v : @57} -> - {t : @59} -> - {vs : @233} -> {ts : @234} -> (h : @108 @20 @22) -> (hs : @224 @62 @22 @6) -> @224 @60 @247 @251 -@298 := @282 @2 -@300 := @50 @20 @22 -@302 := @230 @22 @6 -@310 := {v : @57} -> - {t : @59} -> {vs : @233} -> {ts : @234} -> (h : @300) -> (hs : @302) -> @230 @247 @251 -@311 := @298 @11 -@312 := @10 @64 -@314 := @50 @312 @22 -@315 := @10 @60 -@316 := @164 @315 -@324 := {t : @59} -> {vs : @233} -> {ts : @234} -> (h : @314) -> (hs : @302) -> @230 (@316 @20) @251 -@325 := @311 @14 -@326 := @10 @20 -@328 := @50 @326 @14 -@329 := @10 @62 -@330 := @164 @329 -@332 := @230 (@330 @20) -@333 := @249 @14 -@334 := @333 @22 -@339 := {vs : @233} -> {ts : @234} -> (h : @328) -> (hs : @302) -> @332 @334 -@340 := @325 @163 -@341 := @10 @22 -@343 := @50 @341 @14 -@344 := @231 @6 -@346 := @164 @312 @163 -@347 := @230 @346 -@351 := {ts : @234} -> (h : @343) -> (hs : @344) -> @347 @334 -@352 := @340 @185 -@354 := @164 @326 @163 -@355 := @230 @354 -@356 := @333 @185 -@359 := (h : @160) -> (hs : @232) -> @355 @356 -@360 := @352 @158 -@362 := @164 @341 @163 -@363 := @230 @362 -@365 := (hs : @232) -> @363 @356 -@366 := @360 @229 -@367 := @230 @166 -@368 := @367 @356 -@369 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.denote -@370 := @369 @6 -@371 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.__fits_0 -@372 := @371 @6 -@375 := @7 (Production.Main.headOr @6) -@377 := LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.root @6 -@378 := Bool -@379 := Ne.{1} -@380 := LexLeanPreservation.Obs -@381 := @379 @380 -@382 := LexLeanPreservation.Rel -@385 := @381 (@382 @6 @15) -@386 := LexLeanPreservation.Obs.stuck -@389 := (f : @378) -> (v : @57) -> @385 @386 -@391 := LexLeanPreservation.Rust.rel_ne_stuck @372 -@397 := (v : @57) -> @381 (@382 (@371 @22) @15) @386 -@398 := @391 @375 -@402 := @381 (@382 @372 @375) @386 -@403 := @4 @169 -@404 := LexLeanPreservation.Rust.FunSem -@405 := #9 -@411 := (n : @3) -> @404 @405 @242 @71 @15 @60 -@412 := Eq.{1} -@413 := Option.{0} -@414 := @413 @181 -@415 := @412 @414 -@422 := LexLeanRuntime.index (@4 @181) @181 (LexLeanRuntime.instIndexableList @181) -@426 := @415 (@422 (@182 @405) @60) -@427 := Option.some.{0} -@428 := @427 @181 -@429 := @428 @62 -@430 := @426 @429 -@431 := #10 -@435 := @205 @431 @405 @242 @62 -@436 := LexLeanTarget.TargetSyntax.Function.types -@437 := @436 @60 -@438 := @435 @437 -@439 := @413 @403 -@440 := @412 @439 -@441 := LexLeanTarget.TargetSemantics.bindAll -@442 := LexLeanTarget.TargetSyntax.Function.parameters -@447 := @440 (@441 (@442 @71) @60 @176) -@448 := @427 @403 -@449 := @448 @62 -@450 := @447 @449 -@451 := @413 @378 -@452 := @412 @451 -@453 := LexLeanPreservation.Rust.fnFallible -@454 := #11 -@457 := @452 (@453 @454 @405) -@458 := @427 @378 -@459 := @458 @62 -@460 := @457 @459 -@461 := LexLeanPreservation.RunConv -@462 := #13 -@466 := @461 @462 @431 @242 @62 -@468 := @381 @60 @386 -@469 := Exists.{1} -@470 := LexLeanPreservation.Rust.ROut -@471 := @469 @470 -@472 := And -@473 := LexLeanPreservation.Rust.RealizesFn -@477 := @472 (@473 @405 @242 @15) -@478 := LexLeanPreservation.Rust.RCI -@480 := @478 #15 -@481 := LexLeanPreservation.Rust.fnIdent -@482 := @481 @462 -@489 := (hne : @468) -> @471 (fun (ro : @470) => @477 (@480 @482 @454 @15)) -@504 := {p : @16} -> - {c : @17} -> - {A : @18} -> - {f : @3} -> - {fn : @181} -> - {args : @233} -> - {env : @403} -> - {F : @378} -> - {o : @380} -> - (hB : @411) -> - (hfn : @430) -> (hwt : @438) -> (hbind : @450) -> (hF : @460) -> (hA : @466) -> @489 -@506 := LexLeanPreservation.Rust.compose @0 -@507 := @404 @0 -@512 := (n : @3) -> @507 @242 @71 @15 @60 -@513 := @422 @183 -@516 := @415 (@513 @60) @429 -@520 := @216 @405 @242 @62 @437 -@521 := @461 @0 -@524 := @521 @431 @242 @62 -@538 := {c : @17} -> - {A : @18} -> - {f : @3} -> - {fn : @181} -> - {args : @233} -> - {env : @403} -> - {F : @378} -> - {o : @380} -> - (hB : @512) -> - (hfn : @516) -> (hwt : @520) -> (hbind : @450) -> (hF : @460) -> (hA : @524) -> @489 -@539 := @506 @1 -@540 := @507 @1 -@544 := (n : @3) -> @540 @71 @15 @60 -@547 := @224 @242 @62 @437 -@548 := @453 @1 -@551 := @452 (@548 @405) @459 -@552 := @478 @1 -@562 := (hbind : @450) -> - (hF : @551) -> (hA : @524) -> (hne : @468) -> @471 (fun (ro : @470) => @477 (@552 @482 @454 @15)) -@572 := {A : @18} -> - {f : @3} -> - {fn : @181} -> - {args : @233} -> - {env : @403} -> {F : @378} -> {o : @380} -> (hB : @544) -> (hfn : @516) -> (hwt : @547) -> @562 -@573 := @539 @2 -@575 := @540 @2 @15 -@577 := (n : @3) -> @575 @60 -@578 := @230 @62 -@579 := @578 @437 -@588 := {f : @3} -> - {fn : @181} -> - {args : @233} -> - {env : @403} -> {F : @378} -> {o : @380} -> (hB : @577) -> (hfn : @516) -> (hwt : @579) -> @562 -@589 := @573 @170 -@591 := (n : @3) -> @575 @170 -@592 := @513 @170 -@593 := @415 @592 -@594 := @593 @429 -@595 := @548 @170 -@596 := @452 @595 -@597 := @596 @459 -@598 := @521 @170 -@600 := @598 @242 @62 -@602 := @552 (@481 @170) -@610 := (hF : @597) -> (hA : @600) -> (hne : @468) -> @471 (fun (ro : @470) => @477 (@602 @454 @15)) -@619 := {fn : @181} -> - {args : @233} -> - {env : @403} -> - {F : @378} -> {o : @380} -> (hB : @591) -> (hfn : @594) -> (hwt : @579) -> (hbind : @450) -> @610 -@620 := @589 @200 -@622 := @593 (@428 @200) -@623 := @436 @200 -@624 := @578 @623 -@626 := @441 (@442 @200) -@638 := {args : @233} -> - {env : @403} -> - {F : @378} -> - {o : @380} -> - (hB : @591) -> (hfn : @622) -> (hwt : @624) -> (hbind : @440 (@626 @60 @176) @449) -> @610 -@639 := @620 @166 -@640 := @316 @163 -@642 := @230 @640 @623 -@645 := @164 (@10 @71) @163 -@649 := @440 (@626 @645 @176) @449 -@652 := @164 (@10 @405) @163 -@673 := {env : @403} -> - {F : @378} -> - {o : @380} -> - (hB : @591) -> - (hfn : @622) -> - (hwt : @642) -> - (hbind : @649) -> - (hF : @597) -> - (hA : @598 @652 @62) -> - (hne : @468) -> @471 (fun (ro : @470) => @477 (@602 (@164 (@10 #12) @163) @15)) -@674 := @639 @179 -@675 := @330 @163 -@677 := @230 @675 @623 -@685 := @440 (@626 @640 @176) (@448 (@177 (@174 @315) @176)) -@688 := @164 (@10 @242) @163 -@707 := {F : @378} -> - {o : @380} -> - (hB : @591) -> - (hfn : @622) -> - (hwt : @677) -> - (hbind : @685) -> - (hF : @597) -> - (hA : @598 @688 @62) -> - (hne : @468) -> @471 (fun (ro : @470) => @477 (@602 (@164 (@10 @454) @163) @15)) -@708 := @674 @180 -@709 := @347 @623 -@717 := @440 (@626 @675 @176) (@448 (@177 (@174 @329) @176)) -@719 := @596 (@458 @180) -@721 := @598 @645 @62 -@722 := @473 @180 -@741 := {o : @380} -> - (hB : @591) -> - (hfn : @622) -> - (hwt : @709) -> - (hbind : @717) -> - (hF : @719) -> - (hA : @721) -> - (hne : @468) -> @471 (fun (ro : @470) => @472 (@722 @242 @15) (@602 (@164 (@10 @431) @163) @15)) -@742 := @708 @370 -@743 := @355 @623 -@751 := @440 (@626 @346 @176) (@448 (@177 (@174 @312) @176)) -@752 := @598 @640 -@753 := @369 @60 -@754 := @752 @753 -@755 := @369 @71 -@773 := (hB : @591) -> - (hfn : @622) -> - (hwt : @743) -> - (hbind : @751) -> - (hF : @719) -> - (hA : @754) -> - (hne : @381 @755 @386) -> @471 (fun (ro : @470) => @472 (@722 (@369 @405) @15) (@602 @652 @15)) -@774 := @742 @204 -@775 := @363 @623 -@783 := @440 (@626 @354 @176) (@448 (@177 (@174 @326) @176)) -@784 := @598 @675 -@785 := @369 @62 -@803 := (hfn : @622) -> - (hwt : @775) -> - (hbind : @783) -> - (hF : @719) -> - (hA : @784 @785) -> - (hne : @381 @753 @386) -> @471 (fun (ro : @470) => @472 (@722 (@369 @242) @15) (@602 @688 @15)) -@804 := Eq.refl.{1} -@807 := @774 (@804 @414 @592) -@808 := @367 @623 -@816 := @440 (@626 @362 @176) (@448 (@177 (@174 @341) @176)) -@817 := @598 @346 -@818 := @369 @64 -@834 := (hwt : @808) -> - (hbind : @816) -> - (hF : @719) -> - (hA : @817 @818) -> - (hne : @381 @785 @386) -> @471 (fun (ro : @470) => @472 (@722 @755 @15) (@602 @645 @15)) -@835 := @807 @366 -@837 := @626 @166 @176 -@840 := @440 @837 (@448 @179) -@841 := @598 @354 -@842 := @369 @20 -@857 := (hbind : @840) -> - (hF : @719) -> - (hA : @841 @842) -> - (hne : @381 @818 @386) -> @471 (fun (ro : @470) => @472 (@722 @753 @15) (@602 @640 @15)) -@860 := @835 (@804 @439 @837) -@861 := @598 @362 -@862 := @369 @22 -@876 := (hF : @719) -> - (hA : @861 @862) -> - (hne : @381 @842 @386) -> @471 (fun (ro : @470) => @472 (@722 @785 @15) (@602 @675 @15)) -@879 := @860 (@804 @451 @595) -@893 := (hA : @598 @166 @370) -> - (hne : @381 @862 @386) -> @471 (fun (ro : @470) => @472 (@722 @818 @15) (@602 @346 @15)) -@894 := @879 @377 -@905 := (hne : @381 @370 @386) -> @471 (fun (ro : @470) => @472 (@722 @842 @15) (@602 @354 @15)) -@906 := @894 @398 -@912 := @472 (@722 @862 @15) (@602 @362 @15) -@914 := @471 (fun (ro : @470) => @912) -@916 := @471 (fun (__e_ro : @470) => @912) -@920 := LexLeanPreservation.Rust.RepresentableL (@164 @146 @163) -@921 := (__e_hrep : @920) -> @916 -@922 := fun (__e_hrep : @920) => @906 -@923 := (values : @5) -> @921 -@924 := fun (values : @5) => @922 -\end{coremodule} -\end{lexlean} diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R5/RustStd.lean b/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R5/RustStd.lean deleted file mode 100644 index 057c1b152..000000000 --- a/examples/production/expected/verify/preserve/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R5/RustStd.lean +++ /dev/null @@ -1,41 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0], types := [(.list .nat)], result := .nat, - body := (.call 1 [(.var 0), (.value .nat (.nat 0))]) }, - { parameters := [0, 1], types := [(.list .nat), .nat], result := .nat, - body := (.«match» .nat (.var 0) [(.arm .nil [] (.var 1)), (.arm .cons [2, 3] (.var 2))]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }] .nat (.mk [] (.call (.function 1) [(.move (.generated .binding 0)), (.lit (.nat 0))] false))), - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .nat (.mk [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 1)) [(.mk .none (.mk [] (.copy (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), .wild])) (.mk [] (.copy (.generated .binding 2))))])))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 1) [(.move (.generated .binding 0)), (.lit (.nat 0))] false), [(0, (.list .nat), (some 0))], rfl, rfl, - (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 1)) [(.mk .none (.mk [] (.copy (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), .wild])) (.mk [] (.copy (.generated .binding 2))))]), [(1, .nat, (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.copy (.generated .binding 1))) (Corr.mCons (Γ' := [(3, (.list .nat), none), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.copy (.generated .binding 2))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | _ + 2 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.RustStd diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R0.lean b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R0.lean new file mode 100644 index 000000000..a3e72654f --- /dev/null +++ b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R0.lean @@ -0,0 +1,34 @@ +import LexLeanPreservation.Core +import LexLeanPreservation.Values +import LexLeanPreservation.Primitives +import LexLeanPreservation.Fixed +import LexLeanPreservation.Keys +import LexLeanPreservation.Templates +import LexLeanPreservation.Validate +import Production.Kernel +import Production.Main +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +set_option linter.unusedVariables false +namespace LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0 + +def __prog : _root_.LexLeanTarget.TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1], types := [(.fixed .u32), (.fixed .u32)], result := (.option (.fixed .u32)), + body := (.prim .checkedAdd [(.var 0), (.var 1)]) }] } + +def __fits_0 (left : UInt32) (right : UInt32) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_0 (left : UInt32) (right : UInt32) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.u32 left), (_root_.LexLeanTarget.TargetSyntax.Value.u32 right)] (_root_.LexLeanPreservation.Rel (__fits_0 left right) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u32) (Production.Main.checkedSum left right))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_checkedAdd_u32 left right)) + +def denote (left : UInt32) (right : UInt32) : _root_.LexLeanPreservation.Obs := + _root_.cond (__fits_0 left right) (_root_.LexLeanPreservation.Obs.value (((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u32) (Production.Main.checkedSum left right)))) _root_.LexLeanPreservation.Obs.overflow + +theorem root (left : UInt32) (right : UInt32) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.u32 left), (_root_.LexLeanTarget.TargetSyntax.Value.u32 right)] (_root_.LexLeanPreservation.Rel (__fits_0 left right) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u32) (Production.Main.checkedSum left right))) := + _root_.LexLeanPreservation.run_of_funRel (__rel_0 left right) + +end LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0 diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R0/Compose/RustCore.lex.tex b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R0/Compose/RustCore.lex.tex new file mode 100644 index 000000000..ecfb8b4b4 --- /dev/null +++ b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R0/Compose/RustCore.lex.tex @@ -0,0 +1,464 @@ +\begin{lexlean}{RustCore} +\title{Certificate E LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.Compose.RustCore} +\begin{coremodule} +imports [ + LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0, + LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.RustCore, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.Compose.RustCore.root : @920 := @921 { + all: [LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.Compose.RustCore.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.RustCore.program +@1 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.RustCore.krate +@2 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.RustCore.flags +@3 := UInt32 +@4 := #2 +@5 := LexLeanTarget.TargetSyntax.Value.u32 +@6 := @5 @4 +@9 := LexLeanTarget.TargetSyntax.Ty.fixed LexLeanTarget.TargetSyntax.IntKind.u32 +@10 := LexLeanTarget.TargetSyntax.Program +@11 := LexLeanPreservation.Rust.RCrate +@12 := LexLeanPreservation.Rust.Flags +@13 := LexLeanPreservation.Rust.WT +@14 := #3 +@16 := @13 @14 @4 +@17 := #1 +@18 := @16 @17 +@19 := #0 +@20 := @5 @19 +@26 := {p : @10} -> {c : @11} -> {A : @12} -> (x : @3) -> @18 @20 @9 +@28 := LexLeanPreservation.Rust.wt_u32 @0 +@29 := @13 @0 +@36 := {c : @11} -> {A : @12} -> (x : @3) -> @29 @4 @17 @20 @9 +@37 := @28 @1 +@38 := @29 @1 +@43 := {A : @12} -> (x : @3) -> @38 @17 @20 @9 +@44 := @37 @2 +@45 := @38 @2 +@48 := (x : @3) -> @45 @20 @9 +@49 := @44 @4 +@51 := @45 @6 @9 +@52 := @5 @17 +@53 := @44 @17 +@55 := @45 @52 @9 +@56 := LexLeanTarget.TargetSyntax.Value +@57 := List.nil.{0} +@58 := List.cons.{0} +@59 := @57 @56 +@60 := @58 @56 +@61 := @60 @52 +@62 := @61 @59 +@63 := @60 @6 +@64 := @63 @62 +@65 := Nat +@68 := Prod.{0, 0} @65 @56 +@69 := 1 +@72 := Prod.mk.{0, 0} @65 @56 +@73 := @72 @69 +@74 := @73 @52 +@75 := 0 +@76 := @72 @75 +@77 := @76 @6 +@78 := @57 @68 +@79 := @58 @68 +@81 := @79 @77 @78 +@83 := @79 @74 @81 +@84 := Bool.false +@85 := LexLeanTarget.TargetSyntax.Function +@86 := LexLeanTarget.TargetSyntax.Program.functions +@87 := @86 @0 +@88 := LexLeanTarget.TargetSyntax.Ty +@89 := @57 @65 +@90 := @57 @88 +@91 := LexLeanTarget.TargetSyntax.Ty.unit +@92 := LexLeanTarget.TargetSyntax.Value.unit +@95 := LexLeanTarget.TargetSyntax.Expr.value @91 @92 +@100 := LexLeanTarget.TargetSyntax.Function.mk @89 @90 @91 @95 +@105 := List.getD.{0} @85 @87 @75 @100 +@109 := fun (__e_n : @65) => + LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.RustCore.root @19 @75 +@110 := LexLeanPreservation.Rust.WTL +@118 := {p : @10} -> {c : @11} -> {A : @12} -> @110 @4 @17 @19 @59 @90 +@120 := LexLeanPreservation.Rust.wtl_nil @0 +@121 := @110 @0 +@127 := {c : @11} -> {A : @12} -> @121 @17 @19 @59 @90 +@128 := @120 @1 +@129 := @121 @1 +@133 := {A : @12} -> @129 @19 @59 @90 +@134 := @128 @2 +@135 := @129 @2 +@136 := @135 @59 +@137 := @136 @90 +@138 := List.{0} +@139 := @138 @56 +@140 := @138 @88 +@141 := #6 +@142 := @13 @141 +@143 := #5 +@144 := @142 @143 +@145 := #4 +@148 := @144 @145 @14 @4 +@149 := #7 +@154 := @110 @149 @141 @143 @4 @17 +@155 := #8 +@158 := @110 @155 @149 @141 +@160 := @60 @143 @14 +@161 := @158 @160 +@162 := @58 @88 +@164 := @162 @145 @4 +@174 := {p : @10} -> + {c : @11} -> + {A : @12} -> + {v : @56} -> {t : @88} -> {vs : @139} -> {ts : @140} -> (h : @148) -> (hs : @154) -> @161 @164 +@176 := LexLeanPreservation.Rust.wtl_cons @0 +@196 := {c : @11} -> + {A : @12} -> + {v : @56} -> + {t : @88} -> + {vs : @139} -> + {ts : @140} -> + (h : @29 @143 @145 @14 @4) -> (hs : @121 @141 @143 @4 @17) -> @121 @149 @141 @160 @164 +@197 := @176 @1 +@213 := {A : @12} -> + {v : @56} -> + {t : @88} -> + {vs : @139} -> + {ts : @140} -> (h : @38 @145 @14 @4) -> (hs : @129 @143 @4 @17) -> @129 @141 @160 @164 +@214 := @197 @2 +@216 := @45 @14 @4 +@218 := @135 @4 @17 +@226 := {v : @56} -> + {t : @88} -> {vs : @139} -> {ts : @140} -> (h : @216) -> (hs : @218) -> @135 @160 @164 +@227 := @214 @52 +@228 := @5 @145 +@229 := @45 @228 +@230 := @229 @4 +@231 := @5 @141 +@232 := @60 @231 +@234 := @135 (@232 @14) +@240 := {t : @88} -> {vs : @139} -> {ts : @140} -> (h : @230) -> (hs : @218) -> @234 @164 +@241 := @227 @9 +@242 := @5 @14 +@244 := @45 @242 @9 +@245 := @5 @143 +@246 := @60 @245 +@248 := @135 (@246 @14) +@249 := @162 @9 +@250 := @249 @4 +@255 := {vs : @139} -> {ts : @140} -> (h : @244) -> (hs : @218) -> @248 @250 +@256 := @241 @59 +@257 := @136 @17 +@258 := @60 @228 +@259 := @258 @59 +@264 := {ts : @140} -> (h : @51) -> (hs : @257) -> @135 @259 @250 +@265 := @256 @90 +@266 := @60 @242 +@267 := @266 @59 +@268 := @135 @267 +@269 := @249 @90 +@272 := (h : @55) -> (hs : @137) -> @268 @269 +@273 := @265 @53 +@274 := @63 @59 +@276 := @135 @274 @269 +@277 := (hs : @137) -> @276 +@278 := @273 @134 +@280 := @135 @62 @269 +@281 := @214 @6 +@283 := @45 @245 @4 +@284 := @5 @149 +@285 := @60 @284 +@293 := {t : @88} -> {vs : @139} -> {ts : @140} -> (h : @283) -> (hs : @218) -> @135 (@285 @14) @164 +@294 := @281 @9 +@300 := {vs : @139} -> {ts : @140} -> (h : @229 @9) -> (hs : @218) -> @234 @250 +@301 := @294 @62 +@302 := @268 @17 +@303 := @246 @259 +@304 := @135 @303 +@308 := {ts : @140} -> (h : @244) -> (hs : @302) -> @304 @250 +@309 := @301 @269 +@310 := @258 @267 +@311 := @135 @310 +@312 := @249 @269 +@315 := (h : @51) -> (hs : @276) -> @311 @312 +@316 := @309 @49 +@317 := @266 @274 +@318 := @135 @317 +@320 := (hs : @280) -> @318 @312 +@321 := @316 @278 +@322 := @135 @64 +@323 := @322 @312 +@324 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.denote +@326 := @324 @4 @17 +@327 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.__fits_0 +@329 := @327 @4 @17 +@332 := Production.Main.checkedSum @4 @17 +@336 := LexLeanPreservation.encOption @3 @5 @332 +@339 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.root @4 @17 +@340 := Bool +@341 := Ne.{1} +@342 := LexLeanPreservation.Obs +@343 := @341 @342 +@344 := LexLeanPreservation.Rel +@347 := @343 (@344 @17 @19) +@348 := LexLeanPreservation.Obs.stuck +@351 := (f : @340) -> (v : @56) -> @347 @348 +@353 := LexLeanPreservation.Rust.rel_ne_stuck @329 +@360 := (v : @56) -> @343 (@344 (@327 @14 @4) @19) @348 +@361 := @353 @336 +@365 := @343 (@344 @329 @336) @348 +@366 := @138 @68 +@367 := LexLeanPreservation.Rust.FunSem +@368 := #9 +@374 := (n : @65) -> @367 @368 @155 @149 @19 @141 +@375 := Eq.{1} +@376 := Option.{0} +@377 := @376 @85 +@378 := @375 @377 +@385 := LexLeanRuntime.index (@138 @85) @85 (LexLeanRuntime.instIndexableList @85) +@389 := @378 (@385 (@86 @368) @141) +@390 := Option.some.{0} +@391 := @390 @85 +@392 := @391 @143 +@393 := @389 @392 +@394 := #10 +@398 := @110 @394 @368 @155 @143 +@399 := LexLeanTarget.TargetSyntax.Function.types +@400 := @399 @141 +@401 := @398 @400 +@402 := @376 @366 +@403 := @375 @402 +@404 := LexLeanTarget.TargetSemantics.bindAll +@405 := LexLeanTarget.TargetSyntax.Function.parameters +@410 := @403 (@404 (@405 @149) @141 @78) +@411 := @390 @366 +@412 := @411 @143 +@413 := @410 @412 +@414 := @376 @340 +@415 := @375 @414 +@416 := LexLeanPreservation.Rust.fnFallible +@417 := #11 +@420 := @415 (@416 @417 @368) +@421 := @390 @340 +@422 := @421 @143 +@423 := @420 @422 +@424 := LexLeanPreservation.RunConv +@425 := #13 +@429 := @424 @425 @394 @155 @143 +@431 := @343 @141 @348 +@432 := Exists.{1} +@433 := LexLeanPreservation.Rust.ROut +@434 := @432 @433 +@435 := And +@436 := LexLeanPreservation.Rust.RealizesFn +@440 := @435 (@436 @368 @155 @19) +@441 := LexLeanPreservation.Rust.RCI +@443 := @441 #15 +@444 := LexLeanPreservation.Rust.fnIdent +@445 := @444 @425 +@452 := (hne : @431) -> @434 (fun (ro : @433) => @440 (@443 @445 @417 @19)) +@467 := {p : @10} -> + {c : @11} -> + {A : @12} -> + {f : @65} -> + {fn : @85} -> + {args : @139} -> + {env : @366} -> + {F : @340} -> + {o : @342} -> + (hB : @374) -> + (hfn : @393) -> (hwt : @401) -> (hbind : @413) -> (hF : @423) -> (hA : @429) -> @452 +@469 := LexLeanPreservation.Rust.compose @0 +@470 := @367 @0 +@475 := (n : @65) -> @470 @155 @149 @19 @141 +@476 := @385 @87 +@479 := @378 (@476 @141) @392 +@483 := @121 @368 @155 @143 @400 +@484 := @424 @0 +@487 := @484 @394 @155 @143 +@501 := {c : @11} -> + {A : @12} -> + {f : @65} -> + {fn : @85} -> + {args : @139} -> + {env : @366} -> + {F : @340} -> + {o : @342} -> + (hB : @475) -> + (hfn : @479) -> (hwt : @483) -> (hbind : @413) -> (hF : @423) -> (hA : @487) -> @452 +@502 := @469 @1 +@503 := @470 @1 +@507 := (n : @65) -> @503 @149 @19 @141 +@510 := @129 @155 @143 @400 +@511 := @416 @1 +@514 := @415 (@511 @368) @422 +@515 := @441 @1 +@525 := (hbind : @413) -> + (hF : @514) -> (hA : @487) -> (hne : @431) -> @434 (fun (ro : @433) => @440 (@515 @445 @417 @19)) +@535 := {A : @12} -> + {f : @65} -> + {fn : @85} -> + {args : @139} -> + {env : @366} -> {F : @340} -> {o : @342} -> (hB : @507) -> (hfn : @479) -> (hwt : @510) -> @525 +@536 := @502 @2 +@538 := @503 @2 @19 +@540 := (n : @65) -> @538 @141 +@541 := @135 @143 +@542 := @541 @400 +@551 := {f : @65} -> + {fn : @85} -> + {args : @139} -> + {env : @366} -> {F : @340} -> {o : @342} -> (hB : @540) -> (hfn : @479) -> (hwt : @542) -> @525 +@552 := @536 @75 +@554 := (n : @65) -> @538 @75 +@555 := @476 @75 +@556 := @378 @555 +@557 := @556 @392 +@558 := @511 @75 +@559 := @415 @558 +@560 := @559 @422 +@561 := @484 @75 +@563 := @561 @155 @143 +@565 := @515 (@444 @75) +@573 := (hF : @560) -> (hA : @563) -> (hne : @431) -> @434 (fun (ro : @433) => @440 (@565 @417 @19)) +@582 := {fn : @85} -> + {args : @139} -> + {env : @366} -> + {F : @340} -> {o : @342} -> (hB : @554) -> (hfn : @557) -> (hwt : @542) -> (hbind : @413) -> @573 +@583 := @552 @105 +@585 := @556 (@391 @105) +@586 := @399 @105 +@587 := @541 @586 +@589 := @404 (@405 @105) +@601 := {args : @139} -> + {env : @366} -> + {F : @340} -> + {o : @342} -> + (hB : @554) -> (hfn : @585) -> (hwt : @587) -> (hbind : @403 (@589 @141 @78) @412) -> @573 +@602 := @583 @64 +@604 := @285 (@232 @59) +@606 := @135 @604 @586 +@608 := @60 (@5 @155) +@610 := @608 (@285 @59) +@614 := @403 (@589 @610 @78) @412 +@616 := @60 (@5 @394) +@618 := @60 (@5 @368) +@620 := @616 (@618 @59) +@622 := @561 @620 @143 +@624 := @60 (@5 @425) +@627 := @60 (@5 #12) +@644 := {env : @366} -> + {F : @340} -> + {o : @342} -> + (hB : @554) -> + (hfn : @585) -> + (hwt : @606) -> + (hbind : @614) -> + (hF : @560) -> + (hA : @622) -> (hne : @431) -> @434 (fun (ro : @433) => @440 (@565 (@624 (@627 @59)) @19)) +@645 := @602 @83 +@647 := @232 (@246 @59) +@649 := @135 @647 @586 +@660 := @403 (@589 @604 @78) (@411 (@79 (@73 @231) (@79 (@76 @284) @78))) +@662 := @618 (@608 @59) +@664 := @561 @662 @143 +@666 := @60 (@5 @417) +@682 := {F : @340} -> + {o : @342} -> + (hB : @554) -> + (hfn : @585) -> + (hwt : @649) -> + (hbind : @660) -> + (hF : @560) -> + (hA : @664) -> (hne : @431) -> @434 (fun (ro : @433) => @440 (@565 (@627 (@666 @59)) @19)) +@683 := @645 @84 +@684 := @304 @586 +@695 := @403 (@589 @647 @78) (@411 (@79 (@73 @245) (@79 (@76 @231) @78))) +@697 := @559 (@421 @84) +@699 := @561 @610 @143 +@700 := @436 @84 +@718 := {o : @342} -> + (hB : @554) -> + (hfn : @585) -> + (hwt : @684) -> + (hbind : @695) -> + (hF : @697) -> + (hA : @699) -> + (hne : @431) -> @434 (fun (ro : @433) => @435 (@700 @155 @19) (@565 (@666 (@616 @59)) @19)) +@719 := @683 @326 +@720 := @311 @586 +@731 := @403 (@589 @303 @78) (@411 (@79 (@73 @228) (@79 (@76 @245) @78))) +@732 := @561 @604 +@734 := @324 @149 @141 +@735 := @732 @734 +@737 := @324 @155 @149 +@756 := (hB : @554) -> + (hfn : @585) -> + (hwt : @720) -> + (hbind : @731) -> + (hF : @697) -> + (hA : @735) -> + (hne : @343 @737 @348) -> + @434 (fun (ro : @433) => @435 (@700 (@324 @394 @368) @19) (@565 @620 @19)) +@757 := @719 @109 +@758 := @318 @586 +@769 := @403 (@589 @310 @78) (@411 (@79 (@73 @242) (@79 (@76 @228) @78))) +@770 := @561 @647 +@772 := @324 @141 @143 +@791 := (hfn : @585) -> + (hwt : @758) -> + (hbind : @769) -> + (hF : @697) -> + (hA : @770 @772) -> + (hne : @343 @734 @348) -> + @434 (fun (ro : @433) => @435 (@700 (@324 @368 @155) @19) (@565 @662 @19)) +@792 := Eq.refl.{1} +@795 := @757 (@792 @377 @555) +@796 := @322 @586 +@807 := @403 (@589 @317 @78) (@411 (@79 (@73 @6) (@79 (@76 @242) @78))) +@808 := @561 @303 +@810 := @324 @143 @145 +@826 := (hwt : @796) -> + (hbind : @807) -> + (hF : @697) -> + (hA : @808 @810) -> + (hne : @343 @772 @348) -> @434 (fun (ro : @433) => @435 (@700 @737 @19) (@565 @610 @19)) +@827 := @795 @321 +@829 := @589 @64 @78 +@832 := @403 @829 (@411 @83) +@833 := @561 @310 +@835 := @324 @145 @14 +@850 := (hbind : @832) -> + (hF : @697) -> + (hA : @833 @835) -> + (hne : @343 @810 @348) -> @434 (fun (ro : @433) => @435 (@700 @734 @19) (@565 @604 @19)) +@853 := @827 (@792 @402 @829) +@854 := @561 @317 +@856 := @324 @14 @4 +@870 := (hF : @697) -> + (hA : @854 @856) -> + (hne : @343 @835 @348) -> @434 (fun (ro : @433) => @435 (@700 @772 @19) (@565 @647 @19)) +@873 := @853 (@792 @414 @558) +@887 := (hA : @561 @64 @326) -> + (hne : @343 @856 @348) -> @434 (fun (ro : @433) => @435 (@700 @810 @19) (@565 @303 @19)) +@888 := @873 @339 +@899 := (hne : @343 @326 @348) -> @434 (fun (ro : @433) => @435 (@700 @835 @19) (@565 @310 @19)) +@900 := @888 @361 +@906 := @435 (@700 @856 @19) (@565 @317 @19) +@908 := @434 (fun (ro : @433) => @906) +@910 := @434 (fun (__e_ro : @433) => @906) +@915 := LexLeanPreservation.Rust.RepresentableL (@61 (@60 @20 @59)) +@916 := (__e_hrep : @915) -> @910 +@917 := fun (__e_hrep : @915) => @900 +@918 := (right : @3) -> @916 +@919 := fun (right : @3) => @917 +@920 := (left : @3) -> @918 +@921 := fun (left : @3) => @919 +\end{coremodule} +\end{lexlean} diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R0/Compose/RustStd.lex.tex b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R0/Compose/RustStd.lex.tex new file mode 100644 index 000000000..75d8ef843 --- /dev/null +++ b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R0/Compose/RustStd.lex.tex @@ -0,0 +1,464 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0, + LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.Compose.RustStd.root : @920 := @921 { + all: [LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.RustStd.program +@1 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.RustStd.krate +@2 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.RustStd.flags +@3 := UInt32 +@4 := #2 +@5 := LexLeanTarget.TargetSyntax.Value.u32 +@6 := @5 @4 +@9 := LexLeanTarget.TargetSyntax.Ty.fixed LexLeanTarget.TargetSyntax.IntKind.u32 +@10 := LexLeanTarget.TargetSyntax.Program +@11 := LexLeanPreservation.Rust.RCrate +@12 := LexLeanPreservation.Rust.Flags +@13 := LexLeanPreservation.Rust.WT +@14 := #3 +@16 := @13 @14 @4 +@17 := #1 +@18 := @16 @17 +@19 := #0 +@20 := @5 @19 +@26 := {p : @10} -> {c : @11} -> {A : @12} -> (x : @3) -> @18 @20 @9 +@28 := LexLeanPreservation.Rust.wt_u32 @0 +@29 := @13 @0 +@36 := {c : @11} -> {A : @12} -> (x : @3) -> @29 @4 @17 @20 @9 +@37 := @28 @1 +@38 := @29 @1 +@43 := {A : @12} -> (x : @3) -> @38 @17 @20 @9 +@44 := @37 @2 +@45 := @38 @2 +@48 := (x : @3) -> @45 @20 @9 +@49 := @44 @4 +@51 := @45 @6 @9 +@52 := @5 @17 +@53 := @44 @17 +@55 := @45 @52 @9 +@56 := LexLeanTarget.TargetSyntax.Value +@57 := List.nil.{0} +@58 := List.cons.{0} +@59 := @57 @56 +@60 := @58 @56 +@61 := @60 @52 +@62 := @61 @59 +@63 := @60 @6 +@64 := @63 @62 +@65 := Nat +@68 := Prod.{0, 0} @65 @56 +@69 := 1 +@72 := Prod.mk.{0, 0} @65 @56 +@73 := @72 @69 +@74 := @73 @52 +@75 := 0 +@76 := @72 @75 +@77 := @76 @6 +@78 := @57 @68 +@79 := @58 @68 +@81 := @79 @77 @78 +@83 := @79 @74 @81 +@84 := Bool.false +@85 := LexLeanTarget.TargetSyntax.Function +@86 := LexLeanTarget.TargetSyntax.Program.functions +@87 := @86 @0 +@88 := LexLeanTarget.TargetSyntax.Ty +@89 := @57 @65 +@90 := @57 @88 +@91 := LexLeanTarget.TargetSyntax.Ty.unit +@92 := LexLeanTarget.TargetSyntax.Value.unit +@95 := LexLeanTarget.TargetSyntax.Expr.value @91 @92 +@100 := LexLeanTarget.TargetSyntax.Function.mk @89 @90 @91 @95 +@105 := List.getD.{0} @85 @87 @75 @100 +@109 := fun (__e_n : @65) => + LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.RustStd.root @19 @75 +@110 := LexLeanPreservation.Rust.WTL +@118 := {p : @10} -> {c : @11} -> {A : @12} -> @110 @4 @17 @19 @59 @90 +@120 := LexLeanPreservation.Rust.wtl_nil @0 +@121 := @110 @0 +@127 := {c : @11} -> {A : @12} -> @121 @17 @19 @59 @90 +@128 := @120 @1 +@129 := @121 @1 +@133 := {A : @12} -> @129 @19 @59 @90 +@134 := @128 @2 +@135 := @129 @2 +@136 := @135 @59 +@137 := @136 @90 +@138 := List.{0} +@139 := @138 @56 +@140 := @138 @88 +@141 := #6 +@142 := @13 @141 +@143 := #5 +@144 := @142 @143 +@145 := #4 +@148 := @144 @145 @14 @4 +@149 := #7 +@154 := @110 @149 @141 @143 @4 @17 +@155 := #8 +@158 := @110 @155 @149 @141 +@160 := @60 @143 @14 +@161 := @158 @160 +@162 := @58 @88 +@164 := @162 @145 @4 +@174 := {p : @10} -> + {c : @11} -> + {A : @12} -> + {v : @56} -> {t : @88} -> {vs : @139} -> {ts : @140} -> (h : @148) -> (hs : @154) -> @161 @164 +@176 := LexLeanPreservation.Rust.wtl_cons @0 +@196 := {c : @11} -> + {A : @12} -> + {v : @56} -> + {t : @88} -> + {vs : @139} -> + {ts : @140} -> + (h : @29 @143 @145 @14 @4) -> (hs : @121 @141 @143 @4 @17) -> @121 @149 @141 @160 @164 +@197 := @176 @1 +@213 := {A : @12} -> + {v : @56} -> + {t : @88} -> + {vs : @139} -> + {ts : @140} -> (h : @38 @145 @14 @4) -> (hs : @129 @143 @4 @17) -> @129 @141 @160 @164 +@214 := @197 @2 +@216 := @45 @14 @4 +@218 := @135 @4 @17 +@226 := {v : @56} -> + {t : @88} -> {vs : @139} -> {ts : @140} -> (h : @216) -> (hs : @218) -> @135 @160 @164 +@227 := @214 @52 +@228 := @5 @145 +@229 := @45 @228 +@230 := @229 @4 +@231 := @5 @141 +@232 := @60 @231 +@234 := @135 (@232 @14) +@240 := {t : @88} -> {vs : @139} -> {ts : @140} -> (h : @230) -> (hs : @218) -> @234 @164 +@241 := @227 @9 +@242 := @5 @14 +@244 := @45 @242 @9 +@245 := @5 @143 +@246 := @60 @245 +@248 := @135 (@246 @14) +@249 := @162 @9 +@250 := @249 @4 +@255 := {vs : @139} -> {ts : @140} -> (h : @244) -> (hs : @218) -> @248 @250 +@256 := @241 @59 +@257 := @136 @17 +@258 := @60 @228 +@259 := @258 @59 +@264 := {ts : @140} -> (h : @51) -> (hs : @257) -> @135 @259 @250 +@265 := @256 @90 +@266 := @60 @242 +@267 := @266 @59 +@268 := @135 @267 +@269 := @249 @90 +@272 := (h : @55) -> (hs : @137) -> @268 @269 +@273 := @265 @53 +@274 := @63 @59 +@276 := @135 @274 @269 +@277 := (hs : @137) -> @276 +@278 := @273 @134 +@280 := @135 @62 @269 +@281 := @214 @6 +@283 := @45 @245 @4 +@284 := @5 @149 +@285 := @60 @284 +@293 := {t : @88} -> {vs : @139} -> {ts : @140} -> (h : @283) -> (hs : @218) -> @135 (@285 @14) @164 +@294 := @281 @9 +@300 := {vs : @139} -> {ts : @140} -> (h : @229 @9) -> (hs : @218) -> @234 @250 +@301 := @294 @62 +@302 := @268 @17 +@303 := @246 @259 +@304 := @135 @303 +@308 := {ts : @140} -> (h : @244) -> (hs : @302) -> @304 @250 +@309 := @301 @269 +@310 := @258 @267 +@311 := @135 @310 +@312 := @249 @269 +@315 := (h : @51) -> (hs : @276) -> @311 @312 +@316 := @309 @49 +@317 := @266 @274 +@318 := @135 @317 +@320 := (hs : @280) -> @318 @312 +@321 := @316 @278 +@322 := @135 @64 +@323 := @322 @312 +@324 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.denote +@326 := @324 @4 @17 +@327 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.__fits_0 +@329 := @327 @4 @17 +@332 := Production.Main.checkedSum @4 @17 +@336 := LexLeanPreservation.encOption @3 @5 @332 +@339 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.root @4 @17 +@340 := Bool +@341 := Ne.{1} +@342 := LexLeanPreservation.Obs +@343 := @341 @342 +@344 := LexLeanPreservation.Rel +@347 := @343 (@344 @17 @19) +@348 := LexLeanPreservation.Obs.stuck +@351 := (f : @340) -> (v : @56) -> @347 @348 +@353 := LexLeanPreservation.Rust.rel_ne_stuck @329 +@360 := (v : @56) -> @343 (@344 (@327 @14 @4) @19) @348 +@361 := @353 @336 +@365 := @343 (@344 @329 @336) @348 +@366 := @138 @68 +@367 := LexLeanPreservation.Rust.FunSem +@368 := #9 +@374 := (n : @65) -> @367 @368 @155 @149 @19 @141 +@375 := Eq.{1} +@376 := Option.{0} +@377 := @376 @85 +@378 := @375 @377 +@385 := LexLeanRuntime.index (@138 @85) @85 (LexLeanRuntime.instIndexableList @85) +@389 := @378 (@385 (@86 @368) @141) +@390 := Option.some.{0} +@391 := @390 @85 +@392 := @391 @143 +@393 := @389 @392 +@394 := #10 +@398 := @110 @394 @368 @155 @143 +@399 := LexLeanTarget.TargetSyntax.Function.types +@400 := @399 @141 +@401 := @398 @400 +@402 := @376 @366 +@403 := @375 @402 +@404 := LexLeanTarget.TargetSemantics.bindAll +@405 := LexLeanTarget.TargetSyntax.Function.parameters +@410 := @403 (@404 (@405 @149) @141 @78) +@411 := @390 @366 +@412 := @411 @143 +@413 := @410 @412 +@414 := @376 @340 +@415 := @375 @414 +@416 := LexLeanPreservation.Rust.fnFallible +@417 := #11 +@420 := @415 (@416 @417 @368) +@421 := @390 @340 +@422 := @421 @143 +@423 := @420 @422 +@424 := LexLeanPreservation.RunConv +@425 := #13 +@429 := @424 @425 @394 @155 @143 +@431 := @343 @141 @348 +@432 := Exists.{1} +@433 := LexLeanPreservation.Rust.ROut +@434 := @432 @433 +@435 := And +@436 := LexLeanPreservation.Rust.RealizesFn +@440 := @435 (@436 @368 @155 @19) +@441 := LexLeanPreservation.Rust.RCI +@443 := @441 #15 +@444 := LexLeanPreservation.Rust.fnIdent +@445 := @444 @425 +@452 := (hne : @431) -> @434 (fun (ro : @433) => @440 (@443 @445 @417 @19)) +@467 := {p : @10} -> + {c : @11} -> + {A : @12} -> + {f : @65} -> + {fn : @85} -> + {args : @139} -> + {env : @366} -> + {F : @340} -> + {o : @342} -> + (hB : @374) -> + (hfn : @393) -> (hwt : @401) -> (hbind : @413) -> (hF : @423) -> (hA : @429) -> @452 +@469 := LexLeanPreservation.Rust.compose @0 +@470 := @367 @0 +@475 := (n : @65) -> @470 @155 @149 @19 @141 +@476 := @385 @87 +@479 := @378 (@476 @141) @392 +@483 := @121 @368 @155 @143 @400 +@484 := @424 @0 +@487 := @484 @394 @155 @143 +@501 := {c : @11} -> + {A : @12} -> + {f : @65} -> + {fn : @85} -> + {args : @139} -> + {env : @366} -> + {F : @340} -> + {o : @342} -> + (hB : @475) -> + (hfn : @479) -> (hwt : @483) -> (hbind : @413) -> (hF : @423) -> (hA : @487) -> @452 +@502 := @469 @1 +@503 := @470 @1 +@507 := (n : @65) -> @503 @149 @19 @141 +@510 := @129 @155 @143 @400 +@511 := @416 @1 +@514 := @415 (@511 @368) @422 +@515 := @441 @1 +@525 := (hbind : @413) -> + (hF : @514) -> (hA : @487) -> (hne : @431) -> @434 (fun (ro : @433) => @440 (@515 @445 @417 @19)) +@535 := {A : @12} -> + {f : @65} -> + {fn : @85} -> + {args : @139} -> + {env : @366} -> {F : @340} -> {o : @342} -> (hB : @507) -> (hfn : @479) -> (hwt : @510) -> @525 +@536 := @502 @2 +@538 := @503 @2 @19 +@540 := (n : @65) -> @538 @141 +@541 := @135 @143 +@542 := @541 @400 +@551 := {f : @65} -> + {fn : @85} -> + {args : @139} -> + {env : @366} -> {F : @340} -> {o : @342} -> (hB : @540) -> (hfn : @479) -> (hwt : @542) -> @525 +@552 := @536 @75 +@554 := (n : @65) -> @538 @75 +@555 := @476 @75 +@556 := @378 @555 +@557 := @556 @392 +@558 := @511 @75 +@559 := @415 @558 +@560 := @559 @422 +@561 := @484 @75 +@563 := @561 @155 @143 +@565 := @515 (@444 @75) +@573 := (hF : @560) -> (hA : @563) -> (hne : @431) -> @434 (fun (ro : @433) => @440 (@565 @417 @19)) +@582 := {fn : @85} -> + {args : @139} -> + {env : @366} -> + {F : @340} -> {o : @342} -> (hB : @554) -> (hfn : @557) -> (hwt : @542) -> (hbind : @413) -> @573 +@583 := @552 @105 +@585 := @556 (@391 @105) +@586 := @399 @105 +@587 := @541 @586 +@589 := @404 (@405 @105) +@601 := {args : @139} -> + {env : @366} -> + {F : @340} -> + {o : @342} -> + (hB : @554) -> (hfn : @585) -> (hwt : @587) -> (hbind : @403 (@589 @141 @78) @412) -> @573 +@602 := @583 @64 +@604 := @285 (@232 @59) +@606 := @135 @604 @586 +@608 := @60 (@5 @155) +@610 := @608 (@285 @59) +@614 := @403 (@589 @610 @78) @412 +@616 := @60 (@5 @394) +@618 := @60 (@5 @368) +@620 := @616 (@618 @59) +@622 := @561 @620 @143 +@624 := @60 (@5 @425) +@627 := @60 (@5 #12) +@644 := {env : @366} -> + {F : @340} -> + {o : @342} -> + (hB : @554) -> + (hfn : @585) -> + (hwt : @606) -> + (hbind : @614) -> + (hF : @560) -> + (hA : @622) -> (hne : @431) -> @434 (fun (ro : @433) => @440 (@565 (@624 (@627 @59)) @19)) +@645 := @602 @83 +@647 := @232 (@246 @59) +@649 := @135 @647 @586 +@660 := @403 (@589 @604 @78) (@411 (@79 (@73 @231) (@79 (@76 @284) @78))) +@662 := @618 (@608 @59) +@664 := @561 @662 @143 +@666 := @60 (@5 @417) +@682 := {F : @340} -> + {o : @342} -> + (hB : @554) -> + (hfn : @585) -> + (hwt : @649) -> + (hbind : @660) -> + (hF : @560) -> + (hA : @664) -> (hne : @431) -> @434 (fun (ro : @433) => @440 (@565 (@627 (@666 @59)) @19)) +@683 := @645 @84 +@684 := @304 @586 +@695 := @403 (@589 @647 @78) (@411 (@79 (@73 @245) (@79 (@76 @231) @78))) +@697 := @559 (@421 @84) +@699 := @561 @610 @143 +@700 := @436 @84 +@718 := {o : @342} -> + (hB : @554) -> + (hfn : @585) -> + (hwt : @684) -> + (hbind : @695) -> + (hF : @697) -> + (hA : @699) -> + (hne : @431) -> @434 (fun (ro : @433) => @435 (@700 @155 @19) (@565 (@666 (@616 @59)) @19)) +@719 := @683 @326 +@720 := @311 @586 +@731 := @403 (@589 @303 @78) (@411 (@79 (@73 @228) (@79 (@76 @245) @78))) +@732 := @561 @604 +@734 := @324 @149 @141 +@735 := @732 @734 +@737 := @324 @155 @149 +@756 := (hB : @554) -> + (hfn : @585) -> + (hwt : @720) -> + (hbind : @731) -> + (hF : @697) -> + (hA : @735) -> + (hne : @343 @737 @348) -> + @434 (fun (ro : @433) => @435 (@700 (@324 @394 @368) @19) (@565 @620 @19)) +@757 := @719 @109 +@758 := @318 @586 +@769 := @403 (@589 @310 @78) (@411 (@79 (@73 @242) (@79 (@76 @228) @78))) +@770 := @561 @647 +@772 := @324 @141 @143 +@791 := (hfn : @585) -> + (hwt : @758) -> + (hbind : @769) -> + (hF : @697) -> + (hA : @770 @772) -> + (hne : @343 @734 @348) -> + @434 (fun (ro : @433) => @435 (@700 (@324 @368 @155) @19) (@565 @662 @19)) +@792 := Eq.refl.{1} +@795 := @757 (@792 @377 @555) +@796 := @322 @586 +@807 := @403 (@589 @317 @78) (@411 (@79 (@73 @6) (@79 (@76 @242) @78))) +@808 := @561 @303 +@810 := @324 @143 @145 +@826 := (hwt : @796) -> + (hbind : @807) -> + (hF : @697) -> + (hA : @808 @810) -> + (hne : @343 @772 @348) -> @434 (fun (ro : @433) => @435 (@700 @737 @19) (@565 @610 @19)) +@827 := @795 @321 +@829 := @589 @64 @78 +@832 := @403 @829 (@411 @83) +@833 := @561 @310 +@835 := @324 @145 @14 +@850 := (hbind : @832) -> + (hF : @697) -> + (hA : @833 @835) -> + (hne : @343 @810 @348) -> @434 (fun (ro : @433) => @435 (@700 @734 @19) (@565 @604 @19)) +@853 := @827 (@792 @402 @829) +@854 := @561 @317 +@856 := @324 @14 @4 +@870 := (hF : @697) -> + (hA : @854 @856) -> + (hne : @343 @835 @348) -> @434 (fun (ro : @433) => @435 (@700 @772 @19) (@565 @647 @19)) +@873 := @853 (@792 @414 @558) +@887 := (hA : @561 @64 @326) -> + (hne : @343 @856 @348) -> @434 (fun (ro : @433) => @435 (@700 @810 @19) (@565 @303 @19)) +@888 := @873 @339 +@899 := (hne : @343 @326 @348) -> @434 (fun (ro : @433) => @435 (@700 @835 @19) (@565 @310 @19)) +@900 := @888 @361 +@906 := @435 (@700 @856 @19) (@565 @317 @19) +@908 := @434 (fun (ro : @433) => @906) +@910 := @434 (fun (__e_ro : @433) => @906) +@915 := LexLeanPreservation.Rust.RepresentableL (@61 (@60 @20 @59)) +@916 := (__e_hrep : @915) -> @910 +@917 := fun (__e_hrep : @915) => @900 +@918 := (right : @3) -> @916 +@919 := fun (right : @3) => @917 +@920 := (left : @3) -> @918 +@921 := fun (left : @3) => @919 +\end{coremodule} +\end{lexlean} diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R0/RustCore.lean b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R0/RustCore.lean new file mode 100644 index 000000000..8765b1c5c --- /dev/null +++ b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R0/RustCore.lean @@ -0,0 +1,33 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.RustCore +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1], types := [(.fixed .u32), (.fixed .u32)], result := (.option (.fixed .u32)), + body := (.prim .checkedAdd [(.var 0), (.var 1)]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .core, items := [ + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.fixed .u32) }, { pattern := (.bind (.generated .binding 1)), type := (.fixed .u32) }] (.option (.fixed .u32)) (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedAdd .u32)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false)))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))], (.call (.runtime (.checkedAdd .u32)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false), [(1, (.fixed .u32), (some 1)), (0, (.fixed .u32), (some 0))], rfl, rfl, + (Corr.prim (ts := [(.fixed .u32), (.fixed .u32)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | _ + 1 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.RustCore diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R0/RustStd.lean b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R0/RustStd.lean new file mode 100644 index 000000000..e228ececd --- /dev/null +++ b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R0/RustStd.lean @@ -0,0 +1,33 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1], types := [(.fixed .u32), (.fixed .u32)], result := (.option (.fixed .u32)), + body := (.prim .checkedAdd [(.var 0), (.var 1)]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.fixed .u32) }, { pattern := (.bind (.generated .binding 1)), type := (.fixed .u32) }] (.option (.fixed .u32)) (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))] (.call (.runtime (.checkedAdd .u32)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false)))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1)))], (.call (.runtime (.checkedAdd .u32)) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false), [(1, (.fixed .u32), (some 1)), (0, (.fixed .u32), (some 0))], rfl, rfl, + (Corr.prim (ts := [(.fixed .u32), (.fixed .u32)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | _ + 1 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.RustStd diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R1.lean b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R1.lean new file mode 100644 index 000000000..474df43f2 --- /dev/null +++ b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R1.lean @@ -0,0 +1,47 @@ +import LexLeanPreservation.Core +import LexLeanPreservation.Values +import LexLeanPreservation.Primitives +import LexLeanPreservation.Fixed +import LexLeanPreservation.Keys +import LexLeanPreservation.Templates +import LexLeanPreservation.Validate +import Production.Kernel +import Production.Main +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +set_option linter.unusedVariables false +namespace LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1 + +def __prog : _root_.LexLeanTarget.TargetSyntax.Program := + { adts := [{ constructors := [[.nat], [.nat, .nat]] }], functions := [ + { parameters := [0, 1], types := [.nat, .nat], result := .nat, + body := (.call 1 [(.build (.adt 1) (.adt 0) [(.var 0), (.var 1)])]) }, + { parameters := [0], types := [(.adt 0)], result := .nat, + body := (.«match» .nat (.var 0) [(.arm (.adt 0) [1] (.prim .natMul [(.prim .natMul [(.var 1), (.var 1)]), (.value .nat (.nat 3))])), (.arm (.adt 1) [2, 3] (.prim .natMul [(.var 2), (.var 3)]))]) }] } + +def __enc_0 : (Production.Kernel.Shape) -> _root_.LexLeanTarget.TargetSyntax.Value + | Production.Kernel.Shape.circle __x0 => _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat __x0)] + | Production.Kernel.Shape.rectangle __x0 __x1 => _root_.LexLeanTarget.TargetSyntax.Value.adt 1 [(_root_.LexLeanTarget.TargetSyntax.Value.nat __x0), (_root_.LexLeanTarget.TargetSyntax.Value.nat __x1)] + +def __fits_1 (shape : (Production.Kernel.Shape)) : Bool := + (Bool.true && (match shape with | Production.Kernel.Shape.circle radius => ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (_root_.LexLeanRuntime.multiply (radius) (radius) : Nat) 18446744073709551616)) && (Bool.true && Bool.true)) && (Nat.blt (_root_.LexLeanRuntime.multiply ((_root_.LexLeanRuntime.multiply (radius) (radius) : Nat)) ((3 : Nat)) : Nat) 18446744073709551616)) | Production.Kernel.Shape.rectangle width height => ((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (_root_.LexLeanRuntime.multiply (width) (height) : Nat) 18446744073709551616)))) + +theorem __rel_1 (shape : (Production.Kernel.Shape)) : _root_.LexLeanPreservation.FunRel __prog 1 [(__enc_0 shape)] (_root_.LexLeanPreservation.Rel (__fits_1 shape) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Production.Kernel.area shape))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV __enc_0 (fun (__a : (Production.Kernel.Shape)) => (match __a with | Production.Kernel.Shape.circle radius => ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (_root_.LexLeanRuntime.multiply (radius) (radius) : Nat) 18446744073709551616)) && (Bool.true && Bool.true)) && (Nat.blt (_root_.LexLeanRuntime.multiply ((_root_.LexLeanRuntime.multiply (radius) (radius) : Nat)) ((3 : Nat)) : Nat) 18446744073709551616)) | Production.Kernel.Shape.rectangle width height => ((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (_root_.LexLeanRuntime.multiply (width) (height) : Nat) 18446744073709551616)))) (fun (__a : (Production.Kernel.Shape)) => _root_.LexLeanTarget.TargetSyntax.Value.nat (match __a with | Production.Kernel.Shape.circle radius => (_root_.LexLeanRuntime.multiply ((_root_.LexLeanRuntime.multiply (radius) (radius) : Nat)) ((3 : Nat)) : Nat) | Production.Kernel.Shape.rectangle width height => (_root_.LexLeanRuntime.multiply (width) (height) : Nat))) shape (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (Production.Kernel.Shape)) _ => match __a with | Production.Kernel.Shape.circle radius => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natMul radius radius)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natMul (_root_.LexLeanRuntime.multiply (radius) (radius) : Nat) (3 : Nat)))) | Production.Kernel.Shape.rectangle width height => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natMul width height)))))) + +def __fits_0 (width : Nat) (height : Nat) : Bool := + ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && (__fits_1 ((Production.Kernel.Shape.rectangle (width) (height) : (Production.Kernel.Shape))))) + +attribute [local irreducible] Production.Kernel.area in +theorem __rel_0 (width : Nat) (height : Nat) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat width), (_root_.LexLeanTarget.TargetSyntax.Value.nat height)] (_root_.LexLeanPreservation.Rel (__fits_0 width height) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Production.Main.shapeArea width height))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) (__rel_1 ((Production.Kernel.Shape.rectangle (width) (height) : (Production.Kernel.Shape))))) + +def denote (width : Nat) (height : Nat) : _root_.LexLeanPreservation.Obs := + _root_.cond (__fits_0 width height) (_root_.LexLeanPreservation.Obs.value ((_root_.LexLeanTarget.TargetSyntax.Value.nat (Production.Main.shapeArea width height)))) _root_.LexLeanPreservation.Obs.overflow + +theorem root (width : Nat) (height : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat width), (_root_.LexLeanTarget.TargetSyntax.Value.nat height)] (_root_.LexLeanPreservation.Rel (__fits_0 width height) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Production.Main.shapeArea width height))) := + _root_.LexLeanPreservation.run_of_funRel (__rel_0 width height) + +end LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1 diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R1/Compose/RustCore.lex.tex b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R1/Compose/RustCore.lex.tex new file mode 100644 index 000000000..1ce90c927 --- /dev/null +++ b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R1/Compose/RustCore.lex.tex @@ -0,0 +1,565 @@ +\begin{lexlean}{RustCore} +\title{Certificate E LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.Compose.RustCore} +\begin{coremodule} +imports [ + LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1, + LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.RustCore, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.Compose.RustCore.__wt_0 : @16 := @453 { + all: [LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.Compose.RustCore.__wt_0], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.Compose.RustCore.root : @1128 := @1129 { + all: [LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.Compose.RustCore.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.RustCore.program +@1 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.RustCore.krate +@2 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.RustCore.flags +@3 := Production.Kernel.Shape +@4 := #0 +@6 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.__enc_0 @4 +@7 := LexLeanPreservation.Rust.WT +@8 := LexLeanTarget.TargetSyntax.Ty.adt +@9 := 0 +@10 := @8 @9 +@11 := @7 @0 +@12 := @11 @1 +@13 := @12 @2 +@15 := @13 @6 @10 +@16 := (__v : @3) -> @15 +@17 := fun (__v : @3) => @15 +@18 := LexLeanTarget.TargetSyntax.Value.nat +@19 := @18 @4 +@20 := LexLeanTarget.TargetSyntax.Ty.nat +@21 := LexLeanTarget.TargetSyntax.Program +@22 := LexLeanPreservation.Rust.RCrate +@23 := LexLeanPreservation.Rust.Flags +@24 := Nat +@25 := #3 +@26 := @7 @25 +@27 := #2 +@28 := @26 @27 +@29 := #1 +@36 := {p : @21} -> {c : @22} -> {A : @23} -> (n : @24) -> @28 @29 @19 @20 +@38 := LexLeanPreservation.Rust.wt_nat @0 +@45 := {c : @22} -> {A : @23} -> (n : @24) -> @11 @27 @29 @19 @20 +@46 := @38 @1 +@51 := {A : @23} -> (n : @24) -> @12 @29 @19 @20 +@52 := @46 @2 +@54 := @13 @19 @20 +@55 := (n : @24) -> @54 +@56 := @52 @4 +@57 := LexLeanTarget.TargetSyntax.Value +@58 := LexLeanTarget.TargetSyntax.Ty +@59 := List.nil.{0} +@60 := List.cons.{0} +@61 := @59 @57 +@62 := @60 @57 +@64 := @62 @19 @61 +@65 := @59 @58 +@66 := @60 @58 +@67 := @66 @20 +@68 := @67 @65 +@69 := LexLeanPreservation.Rust.WTL +@77 := {p : @21} -> {c : @22} -> {A : @23} -> @69 @27 @29 @4 @61 @65 +@79 := LexLeanPreservation.Rust.wtl_nil @0 +@80 := @69 @0 +@86 := {c : @22} -> {A : @23} -> @80 @29 @4 @61 @65 +@87 := @79 @1 +@88 := @80 @1 +@92 := {A : @23} -> @88 @4 @61 @65 +@93 := @87 @2 +@94 := @88 @2 +@95 := @94 @61 +@96 := @95 @65 +@97 := List.{0} +@98 := @97 @57 +@99 := @97 @58 +@100 := #6 +@101 := @7 @100 +@102 := #5 +@103 := @101 @102 +@104 := #4 +@107 := @103 @104 @25 @27 +@108 := #7 +@113 := @69 @108 @100 @102 @27 @29 +@114 := #8 +@117 := @69 @114 @108 @100 +@119 := @62 @102 @25 +@120 := @117 @119 +@122 := @66 @104 @27 +@132 := {p : @21} -> + {c : @22} -> + {A : @23} -> + {v : @57} -> {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @107) -> (hs : @113) -> @120 @122 +@134 := LexLeanPreservation.Rust.wtl_cons @0 +@138 := @11 @102 @104 @25 @27 +@142 := @80 @100 @102 @27 @29 +@154 := {c : @22} -> + {A : @23} -> + {v : @57} -> + {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @138) -> (hs : @142) -> @80 @108 @100 @119 @122 +@155 := @134 @1 +@158 := @12 @104 @25 @27 +@161 := @88 @102 @27 @29 +@171 := {A : @23} -> + {v : @57} -> + {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @158) -> (hs : @161) -> @88 @100 @119 @122 +@172 := @155 @2 +@174 := @13 @25 @27 +@176 := @94 @27 @29 +@184 := {v : @57} -> + {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @174) -> (hs : @176) -> @94 @119 @122 +@185 := @172 @19 +@186 := @18 @25 +@187 := @13 @186 +@188 := @187 @27 +@189 := @18 @102 +@190 := @62 @189 +@192 := @94 (@190 @25) +@198 := {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @188) -> (hs : @176) -> @192 @122 +@199 := @185 @20 +@200 := @18 @27 +@202 := @13 @200 @20 +@203 := @18 @104 +@204 := @62 @203 +@206 := @94 (@204 @25) +@207 := @67 @27 +@212 := {vs : @98} -> {ts : @99} -> (h : @202) -> (hs : @176) -> @206 @207 +@213 := @199 @61 +@214 := @18 @29 +@216 := @13 @214 @20 +@217 := @95 @29 +@218 := @62 @186 +@219 := @218 @61 +@220 := @94 @219 +@224 := {ts : @99} -> (h : @216) -> (hs : @217) -> @220 @207 +@225 := @213 @65 +@226 := @62 @200 +@227 := @226 @61 +@228 := @94 @227 +@229 := @228 @68 +@231 := (h : @54) -> (hs : @96) -> @229 +@232 := @225 @56 +@233 := @62 @214 +@234 := @233 @61 +@236 := @94 @234 @68 +@237 := (hs : @96) -> @236 +@238 := @232 @93 +@240 := @94 @64 @68 +@241 := Eq.{1} +@242 := Option.{0} +@243 := @242 @99 +@244 := @241 @243 +@245 := LexLeanPreservation.Rust.adtFields +@249 := @244 (@245 @100 @25 @27) +@250 := Option.some.{0} +@251 := @250 @99 +@252 := @251 @4 +@253 := @249 @252 +@256 := @7 @114 @108 @100 +@257 := LexLeanTarget.TargetSyntax.Value.adt +@259 := @257 @104 @25 +@260 := @256 @259 +@261 := @8 @102 +@271 := {p : @21} -> + {c : @22} -> + {A : @23} -> + {i : @24} -> {k : @24} -> {fs : @98} -> {tys : @99} -> (h : @253) -> (hf : @113) -> @260 @261 +@273 := LexLeanPreservation.Rust.wt_adt @0 +@274 := @245 @0 +@278 := @244 (@274 @25 @27) @252 +@290 := {c : @22} -> + {A : @23} -> + {i : @24} -> + {k : @24} -> {fs : @98} -> {tys : @99} -> (h : @278) -> (hf : @142) -> @11 @108 @100 @259 @261 +@291 := @273 @1 +@301 := {A : @23} -> + {i : @24} -> + {k : @24} -> {fs : @98} -> {tys : @99} -> (h : @278) -> (hf : @161) -> @12 @100 @259 @261 +@302 := @291 @2 +@303 := @13 @259 +@310 := {i : @24} -> + {k : @24} -> {fs : @98} -> {tys : @99} -> (h : @278) -> (hf : @176) -> @303 @261 +@311 := @302 @9 +@312 := @274 @9 +@321 := {k : @24} -> + {fs : @98} -> {tys : @99} -> (h : @244 (@312 @27) @252) -> (hf : @176) -> @303 @10 +@322 := @311 @9 +@323 := @312 @9 +@324 := @244 @323 +@325 := @324 @252 +@326 := @257 @9 +@333 := {fs : @98} -> {tys : @99} -> (h : @325) -> (hf : @176) -> @13 (@326 @25) @10 +@334 := @322 @64 +@335 := @228 @29 +@341 := {tys : @99} -> (h : @325) -> (hf : @335) -> @13 (@326 @219) @10 +@342 := @334 @68 +@349 := (h : @324 (@251 @68)) -> (hf : @236) -> @13 (@326 @227) @10 +@350 := Eq.refl.{1} +@351 := @350 @243 +@353 := @342 (@351 @323) +@357 := (hf : @240) -> @13 (@326 @234) @10 +@358 := @353 @238 +@361 := @13 (@326 @64) @10 +@362 := fun (__x0 : @24) => @358 +@363 := @52 @29 +@364 := @233 @64 +@365 := @67 @68 +@366 := @172 @214 +@367 := @13 @203 +@368 := @367 @27 +@369 := @18 @100 +@370 := @62 @369 +@372 := @94 (@370 @25) +@378 := {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @368) -> (hs : @176) -> @372 @122 +@379 := @366 @20 +@380 := @187 @20 +@385 := {vs : @98} -> {ts : @99} -> (h : @380) -> (hs : @176) -> @192 @207 +@386 := @379 @64 +@387 := @204 @219 +@388 := @94 @387 +@392 := {ts : @99} -> (h : @202) -> (hs : @335) -> @388 @207 +@393 := @386 @68 +@394 := @218 @227 +@395 := @94 @394 +@398 := (h : @216) -> (hs : @236) -> @395 @365 +@399 := @393 @363 +@400 := @226 @234 +@401 := @94 @400 +@402 := @401 @365 +@403 := (hs : @240) -> @402 +@404 := @399 @238 +@406 := @94 @364 @365 +@407 := 1 +@408 := @311 @407 +@409 := @312 @407 +@410 := @244 @409 +@411 := @410 @252 +@412 := @257 @407 +@419 := {fs : @98} -> {tys : @99} -> (h : @411) -> (hf : @176) -> @13 (@412 @25) @10 +@420 := @408 @364 +@427 := {tys : @99} -> (h : @411) -> (hf : @395 @29) -> @13 (@412 @387) @10 +@428 := @420 @365 +@435 := (h : @410 (@251 @365)) -> (hf : @402) -> @13 (@412 @394) @10 +@437 := @428 (@351 @409) +@441 := (hf : @406) -> @13 (@412 @400) @10 +@442 := @437 @404 +@445 := @13 (@412 @364) @10 +@447 := fun (__x0 : @24) => fun (__x1 : @24) => @442 +@453 := fun (__v : @3) => Production.Kernel.Shape.casesOn.{0} @17 @4 @362 @447 +@454 := @52 @27 +@457 := Prod.{0, 0} @24 @57 +@460 := Prod.mk.{0, 0} @24 @57 +@461 := @460 @407 +@462 := @461 @214 +@463 := @460 @9 +@464 := @463 @200 +@465 := @59 @457 +@466 := @60 @457 +@468 := @466 @464 @465 +@470 := @466 @462 @468 +@471 := Bool.true +@472 := LexLeanTarget.TargetSyntax.Function +@473 := LexLeanTarget.TargetSyntax.Program.functions +@474 := @473 @0 +@475 := @59 @24 +@476 := LexLeanTarget.TargetSyntax.Ty.unit +@477 := LexLeanTarget.TargetSyntax.Value.unit +@480 := LexLeanTarget.TargetSyntax.Expr.value @476 @477 +@485 := LexLeanTarget.TargetSyntax.Function.mk @475 @65 @476 @480 +@490 := List.getD.{0} @472 @474 @9 @485 +@494 := fun (__e_n : @24) => + LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.RustCore.root @4 @9 +@495 := @379 @61 +@496 := @204 @61 +@501 := {ts : @99} -> (h : @202) -> (hs : @217) -> @94 @496 @207 +@502 := @495 @65 +@505 := (h : @216) -> (hs : @96) -> @220 @68 +@507 := @502 @363 @93 +@508 := @172 @200 +@510 := @13 @189 @27 +@511 := @18 @108 +@512 := @62 @511 +@520 := {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @510) -> (hs : @176) -> @94 (@512 @25) @122 +@521 := @508 @20 +@527 := {vs : @98} -> {ts : @99} -> (h : @367 @20) -> (hs : @176) -> @372 @207 +@528 := @521 @234 +@529 := @220 @29 +@530 := @190 @496 +@531 := @94 @530 +@535 := {ts : @99} -> (h : @380) -> (hs : @529) -> @531 @207 +@536 := @528 @68 +@539 := (h : @202) -> (hs : @229) -> @388 @365 +@541 := @536 @454 @507 +@542 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.denote +@544 := @542 @27 @29 +@545 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.__fits_0 +@547 := @545 @27 @29 +@551 := @18 (Production.Main.shapeArea @27 @29) +@554 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.root @27 @29 +@555 := Bool +@556 := Ne.{1} +@557 := LexLeanPreservation.Obs +@558 := @556 @557 +@559 := LexLeanPreservation.Rel +@562 := @558 (@559 @29 @4) +@563 := LexLeanPreservation.Obs.stuck +@566 := (f : @555) -> (v : @57) -> @562 @563 +@568 := LexLeanPreservation.Rust.rel_ne_stuck @547 +@575 := (v : @57) -> @558 (@559 (@545 @25 @27) @4) @563 +@576 := @568 @551 +@580 := @558 (@559 @547 @551) @563 +@581 := @97 @457 +@582 := LexLeanPreservation.Rust.FunSem +@583 := #9 +@589 := (n : @24) -> @582 @583 @114 @108 @4 @100 +@590 := @242 @472 +@591 := @241 @590 +@598 := LexLeanRuntime.index (@97 @472) @472 (LexLeanRuntime.instIndexableList @472) +@602 := @591 (@598 (@473 @583) @100) +@603 := @250 @472 +@604 := @603 @102 +@605 := @602 @604 +@606 := #10 +@610 := @69 @606 @583 @114 @102 +@611 := LexLeanTarget.TargetSyntax.Function.types +@612 := @611 @100 +@613 := @610 @612 +@614 := @242 @581 +@615 := @241 @614 +@616 := LexLeanTarget.TargetSemantics.bindAll +@617 := LexLeanTarget.TargetSyntax.Function.parameters +@622 := @615 (@616 (@617 @108) @100 @465) +@623 := @250 @581 +@624 := @623 @102 +@625 := @622 @624 +@626 := @242 @555 +@627 := @241 @626 +@628 := LexLeanPreservation.Rust.fnFallible +@629 := #11 +@632 := @627 (@628 @629 @583) +@633 := @250 @555 +@634 := @633 @102 +@635 := @632 @634 +@636 := LexLeanPreservation.RunConv +@637 := #13 +@641 := @636 @637 @606 @114 @102 +@643 := @558 @100 @563 +@644 := Exists.{1} +@645 := LexLeanPreservation.Rust.ROut +@646 := @644 @645 +@647 := And +@648 := LexLeanPreservation.Rust.RealizesFn +@652 := @647 (@648 @583 @114 @4) +@653 := LexLeanPreservation.Rust.RCI +@655 := @653 #15 +@656 := LexLeanPreservation.Rust.fnIdent +@657 := @656 @637 +@664 := (hne : @643) -> @646 (fun (ro : @645) => @652 (@655 @657 @629 @4)) +@679 := {p : @21} -> + {c : @22} -> + {A : @23} -> + {f : @24} -> + {fn : @472} -> + {args : @98} -> + {env : @581} -> + {F : @555} -> + {o : @557} -> + (hB : @589) -> + (hfn : @605) -> (hwt : @613) -> (hbind : @625) -> (hF : @635) -> (hA : @641) -> @664 +@681 := LexLeanPreservation.Rust.compose @0 +@682 := @582 @0 +@687 := (n : @24) -> @682 @114 @108 @4 @100 +@688 := @598 @474 +@691 := @591 (@688 @100) @604 +@695 := @80 @583 @114 @102 @612 +@696 := @636 @0 +@699 := @696 @606 @114 @102 +@713 := {c : @22} -> + {A : @23} -> + {f : @24} -> + {fn : @472} -> + {args : @98} -> + {env : @581} -> + {F : @555} -> + {o : @557} -> + (hB : @687) -> + (hfn : @691) -> (hwt : @695) -> (hbind : @625) -> (hF : @635) -> (hA : @699) -> @664 +@714 := @681 @1 +@715 := @682 @1 +@719 := (n : @24) -> @715 @108 @4 @100 +@722 := @88 @114 @102 @612 +@723 := @628 @1 +@726 := @627 (@723 @583) @634 +@727 := @653 @1 +@737 := (hbind : @625) -> + (hF : @726) -> (hA : @699) -> (hne : @643) -> @646 (fun (ro : @645) => @652 (@727 @657 @629 @4)) +@747 := {A : @23} -> + {f : @24} -> + {fn : @472} -> + {args : @98} -> + {env : @581} -> {F : @555} -> {o : @557} -> (hB : @719) -> (hfn : @691) -> (hwt : @722) -> @737 +@748 := @714 @2 +@750 := @715 @2 @4 +@752 := (n : @24) -> @750 @100 +@753 := @94 @102 +@754 := @753 @612 +@763 := {f : @24} -> + {fn : @472} -> + {args : @98} -> + {env : @581} -> {F : @555} -> {o : @557} -> (hB : @752) -> (hfn : @691) -> (hwt : @754) -> @737 +@764 := @748 @9 +@766 := (n : @24) -> @750 @9 +@767 := @688 @9 +@768 := @591 @767 +@769 := @768 @604 +@770 := @723 @9 +@771 := @627 @770 +@772 := @771 @634 +@773 := @696 @9 +@775 := @773 @114 @102 +@777 := @727 (@656 @9) +@785 := (hF : @772) -> (hA : @775) -> (hne : @643) -> @646 (fun (ro : @645) => @652 (@777 @629 @4)) +@794 := {fn : @472} -> + {args : @98} -> + {env : @581} -> + {F : @555} -> {o : @557} -> (hB : @766) -> (hfn : @769) -> (hwt : @754) -> (hbind : @625) -> @785 +@795 := @764 @490 +@797 := @768 (@603 @490) +@798 := @611 @490 +@799 := @753 @798 +@801 := @616 (@617 @490) +@813 := {args : @98} -> + {env : @581} -> + {F : @555} -> + {o : @557} -> + (hB : @766) -> (hfn : @797) -> (hwt : @799) -> (hbind : @615 (@801 @100 @465) @624) -> @785 +@814 := @795 @400 +@816 := @512 (@370 @61) +@818 := @94 @816 @798 +@820 := @62 (@18 @114) +@822 := @820 (@512 @61) +@826 := @615 (@801 @822 @465) @624 +@828 := @62 (@18 @606) +@830 := @62 (@18 @583) +@832 := @828 (@830 @61) +@834 := @773 @832 @102 +@836 := @62 (@18 @637) +@839 := @62 (@18 #12) +@856 := {env : @581} -> + {F : @555} -> + {o : @557} -> + (hB : @766) -> + (hfn : @797) -> + (hwt : @818) -> + (hbind : @826) -> + (hF : @772) -> + (hA : @834) -> (hne : @643) -> @646 (fun (ro : @645) => @652 (@777 (@836 (@839 @61)) @4)) +@857 := @814 @470 +@859 := @370 (@190 @61) +@861 := @94 @859 @798 +@872 := @615 (@801 @816 @465) (@623 (@466 (@461 @369) (@466 (@463 @511) @465))) +@874 := @830 (@820 @61) +@876 := @773 @874 @102 +@878 := @62 (@18 @629) +@894 := {F : @555} -> + {o : @557} -> + (hB : @766) -> + (hfn : @797) -> + (hwt : @861) -> + (hbind : @872) -> + (hF : @772) -> + (hA : @876) -> (hne : @643) -> @646 (fun (ro : @645) => @652 (@777 (@839 (@878 @61)) @4)) +@895 := @857 @471 +@896 := @531 @798 +@907 := @615 (@801 @859 @465) (@623 (@466 (@461 @189) (@466 (@463 @369) @465))) +@909 := @771 (@633 @471) +@911 := @773 @822 @102 +@912 := @648 @471 +@930 := {o : @557} -> + (hB : @766) -> + (hfn : @797) -> + (hwt : @896) -> + (hbind : @907) -> + (hF : @909) -> + (hA : @911) -> + (hne : @643) -> @646 (fun (ro : @645) => @647 (@912 @114 @4) (@777 (@878 (@828 @61)) @4)) +@931 := @895 @544 +@932 := @388 @798 +@943 := @615 (@801 @530 @465) (@623 (@466 (@461 @203) (@466 (@463 @189) @465))) +@944 := @773 @816 +@946 := @542 @108 @100 +@947 := @944 @946 +@949 := @542 @114 @108 +@968 := (hB : @766) -> + (hfn : @797) -> + (hwt : @932) -> + (hbind : @943) -> + (hF : @909) -> + (hA : @947) -> + (hne : @558 @949 @563) -> @646 (fun (ro : @645) => @647 (@912 (@542 @606 @583) @4) (@777 @832 @4)) +@969 := @931 @494 +@970 := @395 @798 +@981 := @615 (@801 @387 @465) (@623 (@466 (@461 @186) (@466 (@463 @203) @465))) +@982 := @773 @859 +@984 := @542 @100 @102 +@1003 := (hfn : @797) -> + (hwt : @970) -> + (hbind : @981) -> + (hF : @909) -> + (hA : @982 @984) -> + (hne : @558 @946 @563) -> @646 (fun (ro : @645) => @647 (@912 (@542 @583 @114) @4) (@777 @874 @4)) +@1006 := @969 (@350 @590 @767) +@1007 := @401 @798 +@1018 := @615 (@801 @394 @465) (@623 (@466 (@461 @200) (@466 (@463 @186) @465))) +@1019 := @773 @530 +@1021 := @542 @102 @104 +@1037 := (hwt : @1007) -> + (hbind : @1018) -> + (hF : @909) -> + (hA : @1019 @1021) -> + (hne : @558 @984 @563) -> @646 (fun (ro : @645) => @647 (@912 @949 @4) (@777 @822 @4)) +@1038 := @1006 @541 +@1040 := @801 @400 @465 +@1043 := @615 @1040 (@623 @470) +@1044 := @773 @387 +@1046 := @542 @104 @25 +@1061 := (hbind : @1043) -> + (hF : @909) -> + (hA : @1044 @1046) -> + (hne : @558 @1021 @563) -> @646 (fun (ro : @645) => @647 (@912 @946 @4) (@777 @816 @4)) +@1064 := @1038 (@350 @614 @1040) +@1065 := @773 @394 +@1067 := @542 @25 @27 +@1081 := (hF : @909) -> + (hA : @1065 @1067) -> + (hne : @558 @1046 @563) -> @646 (fun (ro : @645) => @647 (@912 @984 @4) (@777 @859 @4)) +@1084 := @1064 (@350 @626 @770) +@1098 := (hA : @773 @400 @544) -> + (hne : @558 @1067 @563) -> @646 (fun (ro : @645) => @647 (@912 @1021 @4) (@777 @530 @4)) +@1099 := @1084 @554 +@1110 := (hne : @558 @544 @563) -> @646 (fun (ro : @645) => @647 (@912 @1046 @4) (@777 @387 @4)) +@1111 := @1099 @576 +@1117 := @647 (@912 @1067 @4) (@777 @394 @4) +@1119 := @646 (fun (ro : @645) => @1117) +@1121 := @646 (fun (__e_ro : @645) => @1117) +@1123 := LexLeanPreservation.Rust.RepresentableL @364 +@1124 := (__e_hrep : @1123) -> @1121 +@1125 := fun (__e_hrep : @1123) => @1111 +@1126 := (height : @24) -> @1124 +@1127 := fun (height : @24) => @1125 +@1128 := (width : @24) -> @1126 +@1129 := fun (width : @24) => @1127 +\end{coremodule} +\end{lexlean} diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R1/Compose/RustStd.lex.tex b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R1/Compose/RustStd.lex.tex new file mode 100644 index 000000000..7afce1b81 --- /dev/null +++ b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R1/Compose/RustStd.lex.tex @@ -0,0 +1,564 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1, + LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.Compose.RustStd.__wt_0 : @16 := @453 { + all: [LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.Compose.RustStd.__wt_0], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.Compose.RustStd.root : @1128 := @1129 { + all: [LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.RustStd.program +@1 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.RustStd.krate +@2 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.RustStd.flags +@3 := Production.Kernel.Shape +@4 := #0 +@6 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.__enc_0 @4 +@7 := LexLeanPreservation.Rust.WT +@8 := LexLeanTarget.TargetSyntax.Ty.adt +@9 := 0 +@10 := @8 @9 +@11 := @7 @0 +@12 := @11 @1 +@13 := @12 @2 +@15 := @13 @6 @10 +@16 := (__v : @3) -> @15 +@17 := fun (__v : @3) => @15 +@18 := LexLeanTarget.TargetSyntax.Value.nat +@19 := @18 @4 +@20 := LexLeanTarget.TargetSyntax.Ty.nat +@21 := LexLeanTarget.TargetSyntax.Program +@22 := LexLeanPreservation.Rust.RCrate +@23 := LexLeanPreservation.Rust.Flags +@24 := Nat +@25 := #3 +@26 := @7 @25 +@27 := #2 +@28 := @26 @27 +@29 := #1 +@36 := {p : @21} -> {c : @22} -> {A : @23} -> (n : @24) -> @28 @29 @19 @20 +@38 := LexLeanPreservation.Rust.wt_nat @0 +@45 := {c : @22} -> {A : @23} -> (n : @24) -> @11 @27 @29 @19 @20 +@46 := @38 @1 +@51 := {A : @23} -> (n : @24) -> @12 @29 @19 @20 +@52 := @46 @2 +@54 := @13 @19 @20 +@55 := (n : @24) -> @54 +@56 := @52 @4 +@57 := LexLeanTarget.TargetSyntax.Value +@58 := LexLeanTarget.TargetSyntax.Ty +@59 := List.nil.{0} +@60 := List.cons.{0} +@61 := @59 @57 +@62 := @60 @57 +@64 := @62 @19 @61 +@65 := @59 @58 +@66 := @60 @58 +@67 := @66 @20 +@68 := @67 @65 +@69 := LexLeanPreservation.Rust.WTL +@77 := {p : @21} -> {c : @22} -> {A : @23} -> @69 @27 @29 @4 @61 @65 +@79 := LexLeanPreservation.Rust.wtl_nil @0 +@80 := @69 @0 +@86 := {c : @22} -> {A : @23} -> @80 @29 @4 @61 @65 +@87 := @79 @1 +@88 := @80 @1 +@92 := {A : @23} -> @88 @4 @61 @65 +@93 := @87 @2 +@94 := @88 @2 +@95 := @94 @61 +@96 := @95 @65 +@97 := List.{0} +@98 := @97 @57 +@99 := @97 @58 +@100 := #6 +@101 := @7 @100 +@102 := #5 +@103 := @101 @102 +@104 := #4 +@107 := @103 @104 @25 @27 +@108 := #7 +@113 := @69 @108 @100 @102 @27 @29 +@114 := #8 +@117 := @69 @114 @108 @100 +@119 := @62 @102 @25 +@120 := @117 @119 +@122 := @66 @104 @27 +@132 := {p : @21} -> + {c : @22} -> + {A : @23} -> + {v : @57} -> {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @107) -> (hs : @113) -> @120 @122 +@134 := LexLeanPreservation.Rust.wtl_cons @0 +@138 := @11 @102 @104 @25 @27 +@142 := @80 @100 @102 @27 @29 +@154 := {c : @22} -> + {A : @23} -> + {v : @57} -> + {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @138) -> (hs : @142) -> @80 @108 @100 @119 @122 +@155 := @134 @1 +@158 := @12 @104 @25 @27 +@161 := @88 @102 @27 @29 +@171 := {A : @23} -> + {v : @57} -> + {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @158) -> (hs : @161) -> @88 @100 @119 @122 +@172 := @155 @2 +@174 := @13 @25 @27 +@176 := @94 @27 @29 +@184 := {v : @57} -> + {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @174) -> (hs : @176) -> @94 @119 @122 +@185 := @172 @19 +@186 := @18 @25 +@187 := @13 @186 +@188 := @187 @27 +@189 := @18 @102 +@190 := @62 @189 +@192 := @94 (@190 @25) +@198 := {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @188) -> (hs : @176) -> @192 @122 +@199 := @185 @20 +@200 := @18 @27 +@202 := @13 @200 @20 +@203 := @18 @104 +@204 := @62 @203 +@206 := @94 (@204 @25) +@207 := @67 @27 +@212 := {vs : @98} -> {ts : @99} -> (h : @202) -> (hs : @176) -> @206 @207 +@213 := @199 @61 +@214 := @18 @29 +@216 := @13 @214 @20 +@217 := @95 @29 +@218 := @62 @186 +@219 := @218 @61 +@220 := @94 @219 +@224 := {ts : @99} -> (h : @216) -> (hs : @217) -> @220 @207 +@225 := @213 @65 +@226 := @62 @200 +@227 := @226 @61 +@228 := @94 @227 +@229 := @228 @68 +@231 := (h : @54) -> (hs : @96) -> @229 +@232 := @225 @56 +@233 := @62 @214 +@234 := @233 @61 +@236 := @94 @234 @68 +@237 := (hs : @96) -> @236 +@238 := @232 @93 +@240 := @94 @64 @68 +@241 := Eq.{1} +@242 := Option.{0} +@243 := @242 @99 +@244 := @241 @243 +@245 := LexLeanPreservation.Rust.adtFields +@249 := @244 (@245 @100 @25 @27) +@250 := Option.some.{0} +@251 := @250 @99 +@252 := @251 @4 +@253 := @249 @252 +@256 := @7 @114 @108 @100 +@257 := LexLeanTarget.TargetSyntax.Value.adt +@259 := @257 @104 @25 +@260 := @256 @259 +@261 := @8 @102 +@271 := {p : @21} -> + {c : @22} -> + {A : @23} -> + {i : @24} -> {k : @24} -> {fs : @98} -> {tys : @99} -> (h : @253) -> (hf : @113) -> @260 @261 +@273 := LexLeanPreservation.Rust.wt_adt @0 +@274 := @245 @0 +@278 := @244 (@274 @25 @27) @252 +@290 := {c : @22} -> + {A : @23} -> + {i : @24} -> + {k : @24} -> {fs : @98} -> {tys : @99} -> (h : @278) -> (hf : @142) -> @11 @108 @100 @259 @261 +@291 := @273 @1 +@301 := {A : @23} -> + {i : @24} -> + {k : @24} -> {fs : @98} -> {tys : @99} -> (h : @278) -> (hf : @161) -> @12 @100 @259 @261 +@302 := @291 @2 +@303 := @13 @259 +@310 := {i : @24} -> + {k : @24} -> {fs : @98} -> {tys : @99} -> (h : @278) -> (hf : @176) -> @303 @261 +@311 := @302 @9 +@312 := @274 @9 +@321 := {k : @24} -> + {fs : @98} -> {tys : @99} -> (h : @244 (@312 @27) @252) -> (hf : @176) -> @303 @10 +@322 := @311 @9 +@323 := @312 @9 +@324 := @244 @323 +@325 := @324 @252 +@326 := @257 @9 +@333 := {fs : @98} -> {tys : @99} -> (h : @325) -> (hf : @176) -> @13 (@326 @25) @10 +@334 := @322 @64 +@335 := @228 @29 +@341 := {tys : @99} -> (h : @325) -> (hf : @335) -> @13 (@326 @219) @10 +@342 := @334 @68 +@349 := (h : @324 (@251 @68)) -> (hf : @236) -> @13 (@326 @227) @10 +@350 := Eq.refl.{1} +@351 := @350 @243 +@353 := @342 (@351 @323) +@357 := (hf : @240) -> @13 (@326 @234) @10 +@358 := @353 @238 +@361 := @13 (@326 @64) @10 +@362 := fun (__x0 : @24) => @358 +@363 := @52 @29 +@364 := @233 @64 +@365 := @67 @68 +@366 := @172 @214 +@367 := @13 @203 +@368 := @367 @27 +@369 := @18 @100 +@370 := @62 @369 +@372 := @94 (@370 @25) +@378 := {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @368) -> (hs : @176) -> @372 @122 +@379 := @366 @20 +@380 := @187 @20 +@385 := {vs : @98} -> {ts : @99} -> (h : @380) -> (hs : @176) -> @192 @207 +@386 := @379 @64 +@387 := @204 @219 +@388 := @94 @387 +@392 := {ts : @99} -> (h : @202) -> (hs : @335) -> @388 @207 +@393 := @386 @68 +@394 := @218 @227 +@395 := @94 @394 +@398 := (h : @216) -> (hs : @236) -> @395 @365 +@399 := @393 @363 +@400 := @226 @234 +@401 := @94 @400 +@402 := @401 @365 +@403 := (hs : @240) -> @402 +@404 := @399 @238 +@406 := @94 @364 @365 +@407 := 1 +@408 := @311 @407 +@409 := @312 @407 +@410 := @244 @409 +@411 := @410 @252 +@412 := @257 @407 +@419 := {fs : @98} -> {tys : @99} -> (h : @411) -> (hf : @176) -> @13 (@412 @25) @10 +@420 := @408 @364 +@427 := {tys : @99} -> (h : @411) -> (hf : @395 @29) -> @13 (@412 @387) @10 +@428 := @420 @365 +@435 := (h : @410 (@251 @365)) -> (hf : @402) -> @13 (@412 @394) @10 +@437 := @428 (@351 @409) +@441 := (hf : @406) -> @13 (@412 @400) @10 +@442 := @437 @404 +@445 := @13 (@412 @364) @10 +@447 := fun (__x0 : @24) => fun (__x1 : @24) => @442 +@453 := fun (__v : @3) => Production.Kernel.Shape.casesOn.{0} @17 @4 @362 @447 +@454 := @52 @27 +@457 := Prod.{0, 0} @24 @57 +@460 := Prod.mk.{0, 0} @24 @57 +@461 := @460 @407 +@462 := @461 @214 +@463 := @460 @9 +@464 := @463 @200 +@465 := @59 @457 +@466 := @60 @457 +@468 := @466 @464 @465 +@470 := @466 @462 @468 +@471 := Bool.true +@472 := LexLeanTarget.TargetSyntax.Function +@473 := LexLeanTarget.TargetSyntax.Program.functions +@474 := @473 @0 +@475 := @59 @24 +@476 := LexLeanTarget.TargetSyntax.Ty.unit +@477 := LexLeanTarget.TargetSyntax.Value.unit +@480 := LexLeanTarget.TargetSyntax.Expr.value @476 @477 +@485 := LexLeanTarget.TargetSyntax.Function.mk @475 @65 @476 @480 +@490 := List.getD.{0} @472 @474 @9 @485 +@494 := fun (__e_n : @24) => LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.RustStd.root @4 @9 +@495 := @379 @61 +@496 := @204 @61 +@501 := {ts : @99} -> (h : @202) -> (hs : @217) -> @94 @496 @207 +@502 := @495 @65 +@505 := (h : @216) -> (hs : @96) -> @220 @68 +@507 := @502 @363 @93 +@508 := @172 @200 +@510 := @13 @189 @27 +@511 := @18 @108 +@512 := @62 @511 +@520 := {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @510) -> (hs : @176) -> @94 (@512 @25) @122 +@521 := @508 @20 +@527 := {vs : @98} -> {ts : @99} -> (h : @367 @20) -> (hs : @176) -> @372 @207 +@528 := @521 @234 +@529 := @220 @29 +@530 := @190 @496 +@531 := @94 @530 +@535 := {ts : @99} -> (h : @380) -> (hs : @529) -> @531 @207 +@536 := @528 @68 +@539 := (h : @202) -> (hs : @229) -> @388 @365 +@541 := @536 @454 @507 +@542 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.denote +@544 := @542 @27 @29 +@545 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.__fits_0 +@547 := @545 @27 @29 +@551 := @18 (Production.Main.shapeArea @27 @29) +@554 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.root @27 @29 +@555 := Bool +@556 := Ne.{1} +@557 := LexLeanPreservation.Obs +@558 := @556 @557 +@559 := LexLeanPreservation.Rel +@562 := @558 (@559 @29 @4) +@563 := LexLeanPreservation.Obs.stuck +@566 := (f : @555) -> (v : @57) -> @562 @563 +@568 := LexLeanPreservation.Rust.rel_ne_stuck @547 +@575 := (v : @57) -> @558 (@559 (@545 @25 @27) @4) @563 +@576 := @568 @551 +@580 := @558 (@559 @547 @551) @563 +@581 := @97 @457 +@582 := LexLeanPreservation.Rust.FunSem +@583 := #9 +@589 := (n : @24) -> @582 @583 @114 @108 @4 @100 +@590 := @242 @472 +@591 := @241 @590 +@598 := LexLeanRuntime.index (@97 @472) @472 (LexLeanRuntime.instIndexableList @472) +@602 := @591 (@598 (@473 @583) @100) +@603 := @250 @472 +@604 := @603 @102 +@605 := @602 @604 +@606 := #10 +@610 := @69 @606 @583 @114 @102 +@611 := LexLeanTarget.TargetSyntax.Function.types +@612 := @611 @100 +@613 := @610 @612 +@614 := @242 @581 +@615 := @241 @614 +@616 := LexLeanTarget.TargetSemantics.bindAll +@617 := LexLeanTarget.TargetSyntax.Function.parameters +@622 := @615 (@616 (@617 @108) @100 @465) +@623 := @250 @581 +@624 := @623 @102 +@625 := @622 @624 +@626 := @242 @555 +@627 := @241 @626 +@628 := LexLeanPreservation.Rust.fnFallible +@629 := #11 +@632 := @627 (@628 @629 @583) +@633 := @250 @555 +@634 := @633 @102 +@635 := @632 @634 +@636 := LexLeanPreservation.RunConv +@637 := #13 +@641 := @636 @637 @606 @114 @102 +@643 := @558 @100 @563 +@644 := Exists.{1} +@645 := LexLeanPreservation.Rust.ROut +@646 := @644 @645 +@647 := And +@648 := LexLeanPreservation.Rust.RealizesFn +@652 := @647 (@648 @583 @114 @4) +@653 := LexLeanPreservation.Rust.RCI +@655 := @653 #15 +@656 := LexLeanPreservation.Rust.fnIdent +@657 := @656 @637 +@664 := (hne : @643) -> @646 (fun (ro : @645) => @652 (@655 @657 @629 @4)) +@679 := {p : @21} -> + {c : @22} -> + {A : @23} -> + {f : @24} -> + {fn : @472} -> + {args : @98} -> + {env : @581} -> + {F : @555} -> + {o : @557} -> + (hB : @589) -> + (hfn : @605) -> (hwt : @613) -> (hbind : @625) -> (hF : @635) -> (hA : @641) -> @664 +@681 := LexLeanPreservation.Rust.compose @0 +@682 := @582 @0 +@687 := (n : @24) -> @682 @114 @108 @4 @100 +@688 := @598 @474 +@691 := @591 (@688 @100) @604 +@695 := @80 @583 @114 @102 @612 +@696 := @636 @0 +@699 := @696 @606 @114 @102 +@713 := {c : @22} -> + {A : @23} -> + {f : @24} -> + {fn : @472} -> + {args : @98} -> + {env : @581} -> + {F : @555} -> + {o : @557} -> + (hB : @687) -> + (hfn : @691) -> (hwt : @695) -> (hbind : @625) -> (hF : @635) -> (hA : @699) -> @664 +@714 := @681 @1 +@715 := @682 @1 +@719 := (n : @24) -> @715 @108 @4 @100 +@722 := @88 @114 @102 @612 +@723 := @628 @1 +@726 := @627 (@723 @583) @634 +@727 := @653 @1 +@737 := (hbind : @625) -> + (hF : @726) -> (hA : @699) -> (hne : @643) -> @646 (fun (ro : @645) => @652 (@727 @657 @629 @4)) +@747 := {A : @23} -> + {f : @24} -> + {fn : @472} -> + {args : @98} -> + {env : @581} -> {F : @555} -> {o : @557} -> (hB : @719) -> (hfn : @691) -> (hwt : @722) -> @737 +@748 := @714 @2 +@750 := @715 @2 @4 +@752 := (n : @24) -> @750 @100 +@753 := @94 @102 +@754 := @753 @612 +@763 := {f : @24} -> + {fn : @472} -> + {args : @98} -> + {env : @581} -> {F : @555} -> {o : @557} -> (hB : @752) -> (hfn : @691) -> (hwt : @754) -> @737 +@764 := @748 @9 +@766 := (n : @24) -> @750 @9 +@767 := @688 @9 +@768 := @591 @767 +@769 := @768 @604 +@770 := @723 @9 +@771 := @627 @770 +@772 := @771 @634 +@773 := @696 @9 +@775 := @773 @114 @102 +@777 := @727 (@656 @9) +@785 := (hF : @772) -> (hA : @775) -> (hne : @643) -> @646 (fun (ro : @645) => @652 (@777 @629 @4)) +@794 := {fn : @472} -> + {args : @98} -> + {env : @581} -> + {F : @555} -> {o : @557} -> (hB : @766) -> (hfn : @769) -> (hwt : @754) -> (hbind : @625) -> @785 +@795 := @764 @490 +@797 := @768 (@603 @490) +@798 := @611 @490 +@799 := @753 @798 +@801 := @616 (@617 @490) +@813 := {args : @98} -> + {env : @581} -> + {F : @555} -> + {o : @557} -> + (hB : @766) -> (hfn : @797) -> (hwt : @799) -> (hbind : @615 (@801 @100 @465) @624) -> @785 +@814 := @795 @400 +@816 := @512 (@370 @61) +@818 := @94 @816 @798 +@820 := @62 (@18 @114) +@822 := @820 (@512 @61) +@826 := @615 (@801 @822 @465) @624 +@828 := @62 (@18 @606) +@830 := @62 (@18 @583) +@832 := @828 (@830 @61) +@834 := @773 @832 @102 +@836 := @62 (@18 @637) +@839 := @62 (@18 #12) +@856 := {env : @581} -> + {F : @555} -> + {o : @557} -> + (hB : @766) -> + (hfn : @797) -> + (hwt : @818) -> + (hbind : @826) -> + (hF : @772) -> + (hA : @834) -> (hne : @643) -> @646 (fun (ro : @645) => @652 (@777 (@836 (@839 @61)) @4)) +@857 := @814 @470 +@859 := @370 (@190 @61) +@861 := @94 @859 @798 +@872 := @615 (@801 @816 @465) (@623 (@466 (@461 @369) (@466 (@463 @511) @465))) +@874 := @830 (@820 @61) +@876 := @773 @874 @102 +@878 := @62 (@18 @629) +@894 := {F : @555} -> + {o : @557} -> + (hB : @766) -> + (hfn : @797) -> + (hwt : @861) -> + (hbind : @872) -> + (hF : @772) -> + (hA : @876) -> (hne : @643) -> @646 (fun (ro : @645) => @652 (@777 (@839 (@878 @61)) @4)) +@895 := @857 @471 +@896 := @531 @798 +@907 := @615 (@801 @859 @465) (@623 (@466 (@461 @189) (@466 (@463 @369) @465))) +@909 := @771 (@633 @471) +@911 := @773 @822 @102 +@912 := @648 @471 +@930 := {o : @557} -> + (hB : @766) -> + (hfn : @797) -> + (hwt : @896) -> + (hbind : @907) -> + (hF : @909) -> + (hA : @911) -> + (hne : @643) -> @646 (fun (ro : @645) => @647 (@912 @114 @4) (@777 (@878 (@828 @61)) @4)) +@931 := @895 @544 +@932 := @388 @798 +@943 := @615 (@801 @530 @465) (@623 (@466 (@461 @203) (@466 (@463 @189) @465))) +@944 := @773 @816 +@946 := @542 @108 @100 +@947 := @944 @946 +@949 := @542 @114 @108 +@968 := (hB : @766) -> + (hfn : @797) -> + (hwt : @932) -> + (hbind : @943) -> + (hF : @909) -> + (hA : @947) -> + (hne : @558 @949 @563) -> @646 (fun (ro : @645) => @647 (@912 (@542 @606 @583) @4) (@777 @832 @4)) +@969 := @931 @494 +@970 := @395 @798 +@981 := @615 (@801 @387 @465) (@623 (@466 (@461 @186) (@466 (@463 @203) @465))) +@982 := @773 @859 +@984 := @542 @100 @102 +@1003 := (hfn : @797) -> + (hwt : @970) -> + (hbind : @981) -> + (hF : @909) -> + (hA : @982 @984) -> + (hne : @558 @946 @563) -> @646 (fun (ro : @645) => @647 (@912 (@542 @583 @114) @4) (@777 @874 @4)) +@1006 := @969 (@350 @590 @767) +@1007 := @401 @798 +@1018 := @615 (@801 @394 @465) (@623 (@466 (@461 @200) (@466 (@463 @186) @465))) +@1019 := @773 @530 +@1021 := @542 @102 @104 +@1037 := (hwt : @1007) -> + (hbind : @1018) -> + (hF : @909) -> + (hA : @1019 @1021) -> + (hne : @558 @984 @563) -> @646 (fun (ro : @645) => @647 (@912 @949 @4) (@777 @822 @4)) +@1038 := @1006 @541 +@1040 := @801 @400 @465 +@1043 := @615 @1040 (@623 @470) +@1044 := @773 @387 +@1046 := @542 @104 @25 +@1061 := (hbind : @1043) -> + (hF : @909) -> + (hA : @1044 @1046) -> + (hne : @558 @1021 @563) -> @646 (fun (ro : @645) => @647 (@912 @946 @4) (@777 @816 @4)) +@1064 := @1038 (@350 @614 @1040) +@1065 := @773 @394 +@1067 := @542 @25 @27 +@1081 := (hF : @909) -> + (hA : @1065 @1067) -> + (hne : @558 @1046 @563) -> @646 (fun (ro : @645) => @647 (@912 @984 @4) (@777 @859 @4)) +@1084 := @1064 (@350 @626 @770) +@1098 := (hA : @773 @400 @544) -> + (hne : @558 @1067 @563) -> @646 (fun (ro : @645) => @647 (@912 @1021 @4) (@777 @530 @4)) +@1099 := @1084 @554 +@1110 := (hne : @558 @544 @563) -> @646 (fun (ro : @645) => @647 (@912 @1046 @4) (@777 @387 @4)) +@1111 := @1099 @576 +@1117 := @647 (@912 @1067 @4) (@777 @394 @4) +@1119 := @646 (fun (ro : @645) => @1117) +@1121 := @646 (fun (__e_ro : @645) => @1117) +@1123 := LexLeanPreservation.Rust.RepresentableL @364 +@1124 := (__e_hrep : @1123) -> @1121 +@1125 := fun (__e_hrep : @1123) => @1111 +@1126 := (height : @24) -> @1124 +@1127 := fun (height : @24) => @1125 +@1128 := (width : @24) -> @1126 +@1129 := fun (width : @24) => @1127 +\end{coremodule} +\end{lexlean} diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R1/RustCore.lean b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R1/RustCore.lean new file mode 100644 index 000000000..d9d7790e8 --- /dev/null +++ b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R1/RustCore.lean @@ -0,0 +1,42 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.RustCore +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [{ constructors := [[.nat], [.nat, .nat]] }], functions := [ + { parameters := [0, 1], types := [.nat, .nat], result := .nat, + body := (.call 1 [(.build (.adt 1) (.adt 0) [(.var 0), (.var 1)])]) }, + { parameters := [0], types := [(.adt 0)], result := .nat, + body := (.«match» .nat (.var 0) [(.arm (.adt 0) [1] (.prim .natMul [(.prim .natMul [(.var 1), (.var 1)]), (.value .nat (.nat 3))])), (.arm (.adt 1) [2, 3] (.prim .natMul [(.var 2), (.var 3)]))]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .core, items := [ + (.enum (.adt 0) [{ number := 0, fields := [.nat] }, { number := 1, fields := [.nat, .nat] }]), + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .nat) (.mk [] (.call (.function 1) [(.construct (.adt 0 1) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))])] false))), + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 1)) [(.mk (.adt 0 0 [(.bind (.generated .binding 1))]) (.mk [(.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 1)))] (.call (.runtime .natMul) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] true)))), (.mk (.bind (.generated .operand 5)) none (.lit (.nat 3)))] (.call (.runtime .natMul) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false))), (.mk (.adt 0 1 [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))]) (.mk [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 3)))] (.call (.runtime .natMul) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false)))])))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 1) [(.construct (.adt 0 1) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))])] false), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.callF (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, .nat]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) (Corr.lNil))) rfl rfl rfl rfl)⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 1)) [(.mk (.adt 0 0 [(.bind (.generated .binding 1))]) (.mk [(.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 1)))] (.call (.runtime .natMul) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] true)))), (.mk (.bind (.generated .operand 5)) none (.lit (.nat 3)))] (.call (.runtime .natMul) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false))), (.mk (.adt 0 1 [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))]) (.mk [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 3)))] (.call (.runtime .natMul) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false)))]), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.adt 0)) (U := []) (view := false) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 1)))] (.call (.runtime .natMul) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] true)))), (.mk (.bind (.generated .operand 5)) none (.lit (.nat 3)))]) (tail := (.call (.runtime .natMul) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false)) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (2, .nat, (some 2)), (0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 3)))]) (tail := (.call (.runtime .natMul) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false)) (Corr.mNil) rfl rfl rfl (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natMul) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl)⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | _ + 2 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.RustCore diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R1/RustStd.lean b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R1/RustStd.lean new file mode 100644 index 000000000..d203b83eb --- /dev/null +++ b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R1/RustStd.lean @@ -0,0 +1,42 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [{ constructors := [[.nat], [.nat, .nat]] }], functions := [ + { parameters := [0, 1], types := [.nat, .nat], result := .nat, + body := (.call 1 [(.build (.adt 1) (.adt 0) [(.var 0), (.var 1)])]) }, + { parameters := [0], types := [(.adt 0)], result := .nat, + body := (.«match» .nat (.var 0) [(.arm (.adt 0) [1] (.prim .natMul [(.prim .natMul [(.var 1), (.var 1)]), (.value .nat (.nat 3))])), (.arm (.adt 1) [2, 3] (.prim .natMul [(.var 2), (.var 3)]))]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.enum (.adt 0) [{ number := 0, fields := [.nat] }, { number := 1, fields := [.nat, .nat] }]), + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .nat) (.mk [] (.call (.function 1) [(.construct (.adt 0 1) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))])] false))), + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))] (.matchOn (.move (.generated .holder 1)) [(.mk (.adt 0 0 [(.bind (.generated .binding 1))]) (.mk [(.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 1)))] (.call (.runtime .natMul) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] true)))), (.mk (.bind (.generated .operand 5)) none (.lit (.nat 3)))] (.call (.runtime .natMul) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false))), (.mk (.adt 0 1 [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))]) (.mk [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 3)))] (.call (.runtime .natMul) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false)))])))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 1) [(.construct (.adt 0 1) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))])] false), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.callF (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, .nat]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) (Corr.lNil))) rfl rfl rfl rfl)⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))], (.matchOn (.move (.generated .holder 1)) [(.mk (.adt 0 0 [(.bind (.generated .binding 1))]) (.mk [(.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 1)))] (.call (.runtime .natMul) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] true)))), (.mk (.bind (.generated .operand 5)) none (.lit (.nat 3)))] (.call (.runtime .natMul) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false))), (.mk (.adt 0 1 [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))]) (.mk [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 3)))] (.call (.runtime .natMul) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false)))]), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.adt 0)) (U := []) (view := false) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 1)))] (.call (.runtime .natMul) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] true)))), (.mk (.bind (.generated .operand 5)) none (.lit (.nat 3)))]) (tail := (.call (.runtime .natMul) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] false)) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (2, .nat, (some 2)), (0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 3)))]) (tail := (.call (.runtime .natMul) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false)) (Corr.mNil) rfl rfl rfl (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natMul) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl)⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | _ + 2 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.RustStd diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R2.lean b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R2.lean new file mode 100644 index 000000000..c7fd31434 --- /dev/null +++ b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R2.lean @@ -0,0 +1,51 @@ +import LexLeanPreservation.Core +import LexLeanPreservation.Values +import LexLeanPreservation.Primitives +import LexLeanPreservation.Fixed +import LexLeanPreservation.Keys +import LexLeanPreservation.Templates +import LexLeanPreservation.Validate +import Production.Kernel +import Production.Main +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +set_option linter.unusedVariables false +namespace LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2 + +def __prog : _root_.LexLeanTarget.TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0], types := [.nat], result := .nat, + body := (.call 1 [(.closure 2 []), (.var 0)]) }, + { parameters := [0, 1], types := [(.fn [.nat] .nat), .nat], result := .nat, + body := (.apply (.var 0) [(.apply (.var 0) [(.var 1)])]) }, + { parameters := [0], types := [.nat], result := .nat, + body := (.prim .natAdd [(.var 0), (.var 0)]) }] } + +def __fits_1 (step : (Nat -> Nat)) (__ff_0 : Nat -> Bool) (value : Nat) : Bool := + (Bool.true && (((Bool.true && ((Bool.true && Bool.true) && (__ff_0 (value)))) && Bool.true) && (__ff_0 ((step (value)))))) + +theorem __rel_1 (step : (Nat -> Nat)) (__ff_0 : Nat -> Bool) (__fi_0 : Nat) (__fc_0 : List _root_.LexLeanTarget.TargetSyntax.Value) (__fh_0 : ∀ (__p0 : Nat), _root_.LexLeanPreservation.FunRel __prog __fi_0 (_root_.LexLeanRuntime.append __fc_0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat __p0)]) (_root_.LexLeanPreservation.Rel (__ff_0 __p0) (_root_.LexLeanTarget.TargetSyntax.Value.nat (step __p0)))) (value : Nat) : _root_.LexLeanPreservation.FunRel __prog 1 [(_root_.LexLeanTarget.TargetSyntax.Value.closure __fi_0 __fc_0), (_root_.LexLeanTarget.TargetSyntax.Value.nat value)] (_root_.LexLeanPreservation.Rel (__fits_1 step __ff_0 value) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Production.Kernel.applyTwice step value))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_apply (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_apply (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__fh_0 (value))) _root_.LexLeanPreservation.convL_nil) (__fh_0 ((step (value))))) + +def __fits_2 (number : Nat) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (number + number) 18446744073709551616)) + +theorem __rel_2 (number : Nat) : _root_.LexLeanPreservation.FunRel __prog 2 [(_root_.LexLeanTarget.TargetSyntax.Value.nat number)] (_root_.LexLeanPreservation.Rel (__fits_2 number) (_root_.LexLeanTarget.TargetSyntax.Value.nat ((number + number)))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd number number)) + +def __fits_0 (value : Nat) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && (__fits_1 ((fun (number : Nat) => (number + number))) (fun (__p0 : Nat) => __fits_2 __p0) (value))) + +attribute [local irreducible] Production.Kernel.applyTwice in +theorem __rel_0 (value : Nat) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat value)] (_root_.LexLeanPreservation.Rel (__fits_0 value) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Production.Main.quadruple value))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_1 ((fun (number : Nat) => (number + number))) (fun (__p0 : Nat) => __fits_2 __p0) (2) ([]) (fun (__p0 : Nat) => __rel_2 __p0) (value))) + +def denote (value : Nat) : _root_.LexLeanPreservation.Obs := + _root_.cond (__fits_0 value) (_root_.LexLeanPreservation.Obs.value ((_root_.LexLeanTarget.TargetSyntax.Value.nat (Production.Main.quadruple value)))) _root_.LexLeanPreservation.Obs.overflow + +theorem root (value : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat value)] (_root_.LexLeanPreservation.Rel (__fits_0 value) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Production.Main.quadruple value))) := + _root_.LexLeanPreservation.run_of_funRel (__rel_0 value) + +end LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2 diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R2/Compose/RustCore.lex.tex b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R2/Compose/RustCore.lex.tex new file mode 100644 index 000000000..252704e89 --- /dev/null +++ b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R2/Compose/RustCore.lex.tex @@ -0,0 +1,417 @@ +\begin{lexlean}{RustCore} +\title{Certificate E LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.Compose.RustCore} +\begin{coremodule} +imports [ + LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2, + LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.RustCore, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.Compose.RustCore.root : @825 := @826 { + all: [LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.Compose.RustCore.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.RustCore.program +@1 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.RustCore.krate +@2 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.RustCore.flags +@3 := Nat +@4 := #1 +@5 := LexLeanTarget.TargetSyntax.Value.nat +@6 := @5 @4 +@7 := LexLeanTarget.TargetSyntax.Ty.nat +@8 := LexLeanTarget.TargetSyntax.Program +@9 := LexLeanPreservation.Rust.RCrate +@10 := LexLeanPreservation.Rust.Flags +@11 := LexLeanPreservation.Rust.WT +@12 := #3 +@13 := @11 @12 +@14 := #2 +@16 := @13 @14 @4 +@17 := #0 +@18 := @5 @17 +@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 +@26 := LexLeanPreservation.Rust.wt_nat @0 +@27 := @11 @0 +@34 := {c : @9} -> {A : @10} -> (n : @3) -> @27 @14 @4 @18 @7 +@35 := @26 @1 +@36 := @27 @1 +@41 := {A : @10} -> (n : @3) -> @36 @4 @18 @7 +@42 := @35 @2 +@43 := @36 @2 +@46 := (n : @3) -> @43 @18 @7 +@47 := @42 @4 +@49 := @43 @6 @7 +@50 := LexLeanTarget.TargetSyntax.Value +@51 := List.nil.{0} +@52 := List.cons.{0} +@53 := @51 @50 +@54 := @52 @50 +@56 := @54 @6 @53 +@59 := Prod.{0, 0} @3 @50 +@60 := 0 +@64 := Prod.mk.{0, 0} @3 @50 @60 +@65 := @64 @6 +@66 := @51 @59 +@67 := @52 @59 +@69 := @67 @65 @66 +@70 := Bool.true +@71 := LexLeanTarget.TargetSyntax.Function +@72 := LexLeanTarget.TargetSyntax.Program.functions +@73 := @72 @0 +@74 := LexLeanTarget.TargetSyntax.Ty +@75 := @51 @3 +@76 := @51 @74 +@77 := LexLeanTarget.TargetSyntax.Ty.unit +@78 := LexLeanTarget.TargetSyntax.Value.unit +@81 := LexLeanTarget.TargetSyntax.Expr.value @77 @78 +@86 := LexLeanTarget.TargetSyntax.Function.mk @75 @76 @77 @81 +@91 := List.getD.{0} @71 @73 @60 @86 +@95 := fun (__e_n : @3) => + LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.RustCore.root @17 @60 +@96 := LexLeanPreservation.Rust.WTL +@104 := {p : @8} -> {c : @9} -> {A : @10} -> @96 @14 @4 @17 @53 @76 +@106 := LexLeanPreservation.Rust.wtl_nil @0 +@107 := @96 @0 +@113 := {c : @9} -> {A : @10} -> @107 @4 @17 @53 @76 +@114 := @106 @1 +@115 := @107 @1 +@119 := {A : @10} -> @115 @17 @53 @76 +@120 := @114 @2 +@121 := @115 @2 +@122 := @121 @53 +@123 := @122 @76 +@124 := List.{0} +@125 := @124 @50 +@126 := @124 @74 +@127 := #6 +@128 := @11 @127 +@129 := #5 +@130 := @128 @129 +@131 := #4 +@134 := @130 @131 @12 @14 +@135 := #7 +@140 := @96 @135 @127 @129 @14 @4 +@141 := #8 +@144 := @96 @141 @135 @127 +@146 := @54 @129 @12 +@147 := @144 @146 +@148 := @52 @74 +@150 := @148 @131 @14 +@160 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {v : @50} -> {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @134) -> (hs : @140) -> @147 @150 +@162 := LexLeanPreservation.Rust.wtl_cons @0 +@182 := {c : @9} -> + {A : @10} -> + {v : @50} -> + {t : @74} -> + {vs : @125} -> + {ts : @126} -> + (h : @27 @129 @131 @12 @14) -> (hs : @107 @127 @129 @14 @4) -> @107 @135 @127 @146 @150 +@183 := @162 @1 +@199 := {A : @10} -> + {v : @50} -> + {t : @74} -> + {vs : @125} -> + {ts : @126} -> (h : @36 @131 @12 @14) -> (hs : @115 @129 @14 @4) -> @115 @127 @146 @150 +@200 := @183 @2 +@202 := @43 @12 @14 +@204 := @121 @14 @4 +@212 := {v : @50} -> + {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @202) -> (hs : @204) -> @121 @146 @150 +@213 := @200 @6 +@214 := @5 @131 +@216 := @43 @214 @14 +@217 := @5 @127 +@218 := @54 @217 +@226 := {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @216) -> (hs : @204) -> @121 (@218 @12) @150 +@227 := @213 @7 +@228 := @5 @12 +@230 := @43 @228 @7 +@231 := @5 @129 +@232 := @54 @231 +@234 := @121 (@232 @12) +@235 := @148 @7 +@236 := @235 @14 +@241 := {vs : @125} -> {ts : @126} -> (h : @230) -> (hs : @204) -> @234 @236 +@242 := @227 @53 +@243 := @5 @14 +@245 := @43 @243 @7 +@246 := @122 @4 +@248 := @54 @214 @53 +@249 := @121 @248 +@253 := {ts : @126} -> (h : @245) -> (hs : @246) -> @249 @236 +@254 := @242 @76 +@256 := @54 @228 @53 +@257 := @121 @256 +@258 := @235 @76 +@261 := (h : @49) -> (hs : @123) -> @257 @258 +@262 := @254 @47 +@264 := @54 @243 @53 +@265 := @121 @264 +@267 := (hs : @123) -> @265 @258 +@268 := @262 @120 +@269 := @121 @56 +@270 := @269 @258 +@271 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.denote +@272 := @271 @4 +@273 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.__fits_0 +@274 := @273 @4 +@277 := @5 (Production.Main.quadruple @4) +@279 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.root @4 +@280 := Bool +@281 := Ne.{1} +@282 := LexLeanPreservation.Obs +@283 := @281 @282 +@284 := LexLeanPreservation.Rel +@287 := @283 (@284 @4 @17) +@288 := LexLeanPreservation.Obs.stuck +@291 := (f : @280) -> (v : @50) -> @287 @288 +@293 := LexLeanPreservation.Rust.rel_ne_stuck @274 +@299 := (v : @50) -> @283 (@284 (@273 @14) @17) @288 +@300 := @293 @277 +@304 := @283 (@284 @274 @277) @288 +@305 := @124 @59 +@306 := LexLeanPreservation.Rust.FunSem +@307 := #9 +@313 := (n : @3) -> @306 @307 @141 @135 @17 @127 +@314 := Eq.{1} +@315 := Option.{0} +@316 := @315 @71 +@317 := @314 @316 +@324 := LexLeanRuntime.index (@124 @71) @71 (LexLeanRuntime.instIndexableList @71) +@328 := @317 (@324 (@72 @307) @127) +@329 := Option.some.{0} +@330 := @329 @71 +@331 := @330 @129 +@332 := @328 @331 +@333 := #10 +@337 := @96 @333 @307 @141 @129 +@338 := LexLeanTarget.TargetSyntax.Function.types +@339 := @338 @127 +@340 := @337 @339 +@341 := @315 @305 +@342 := @314 @341 +@343 := LexLeanTarget.TargetSemantics.bindAll +@344 := LexLeanTarget.TargetSyntax.Function.parameters +@349 := @342 (@343 (@344 @135) @127 @66) +@350 := @329 @305 +@351 := @350 @129 +@352 := @349 @351 +@353 := @315 @280 +@354 := @314 @353 +@355 := LexLeanPreservation.Rust.fnFallible +@356 := #11 +@359 := @354 (@355 @356 @307) +@360 := @329 @280 +@361 := @360 @129 +@362 := @359 @361 +@363 := LexLeanPreservation.RunConv +@364 := #13 +@368 := @363 @364 @333 @141 @129 +@370 := @283 @127 @288 +@371 := Exists.{1} +@372 := LexLeanPreservation.Rust.ROut +@373 := @371 @372 +@374 := And +@375 := LexLeanPreservation.Rust.RealizesFn +@379 := @374 (@375 @307 @141 @17) +@380 := LexLeanPreservation.Rust.RCI +@382 := @380 #15 +@383 := LexLeanPreservation.Rust.fnIdent +@384 := @383 @364 +@391 := (hne : @370) -> @373 (fun (ro : @372) => @379 (@382 @384 @356 @17)) +@406 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {f : @3} -> + {fn : @71} -> + {args : @125} -> + {env : @305} -> + {F : @280} -> + {o : @282} -> + (hB : @313) -> + (hfn : @332) -> (hwt : @340) -> (hbind : @352) -> (hF : @362) -> (hA : @368) -> @391 +@408 := LexLeanPreservation.Rust.compose @0 +@409 := @306 @0 +@414 := (n : @3) -> @409 @141 @135 @17 @127 +@415 := @324 @73 +@418 := @317 (@415 @127) @331 +@422 := @107 @307 @141 @129 @339 +@423 := @363 @0 +@426 := @423 @333 @141 @129 +@440 := {c : @9} -> + {A : @10} -> + {f : @3} -> + {fn : @71} -> + {args : @125} -> + {env : @305} -> + {F : @280} -> + {o : @282} -> + (hB : @414) -> + (hfn : @418) -> (hwt : @422) -> (hbind : @352) -> (hF : @362) -> (hA : @426) -> @391 +@441 := @408 @1 +@442 := @409 @1 +@446 := (n : @3) -> @442 @135 @17 @127 +@449 := @115 @141 @129 @339 +@450 := @355 @1 +@453 := @354 (@450 @307) @361 +@454 := @380 @1 +@464 := (hbind : @352) -> + (hF : @453) -> (hA : @426) -> (hne : @370) -> @373 (fun (ro : @372) => @379 (@454 @384 @356 @17)) +@474 := {A : @10} -> + {f : @3} -> + {fn : @71} -> + {args : @125} -> + {env : @305} -> {F : @280} -> {o : @282} -> (hB : @446) -> (hfn : @418) -> (hwt : @449) -> @464 +@475 := @441 @2 +@477 := @442 @2 @17 +@479 := (n : @3) -> @477 @127 +@480 := @121 @129 +@481 := @480 @339 +@490 := {f : @3} -> + {fn : @71} -> + {args : @125} -> + {env : @305} -> {F : @280} -> {o : @282} -> (hB : @479) -> (hfn : @418) -> (hwt : @481) -> @464 +@491 := @475 @60 +@493 := (n : @3) -> @477 @60 +@494 := @415 @60 +@495 := @317 @494 +@496 := @495 @331 +@497 := @450 @60 +@498 := @354 @497 +@499 := @498 @361 +@500 := @423 @60 +@502 := @500 @141 @129 +@504 := @454 (@383 @60) +@512 := (hF : @499) -> (hA : @502) -> (hne : @370) -> @373 (fun (ro : @372) => @379 (@504 @356 @17)) +@521 := {fn : @71} -> + {args : @125} -> + {env : @305} -> + {F : @280} -> {o : @282} -> (hB : @493) -> (hfn : @496) -> (hwt : @481) -> (hbind : @352) -> @512 +@522 := @491 @91 +@524 := @495 (@330 @91) +@525 := @338 @91 +@526 := @480 @525 +@528 := @343 (@344 @91) +@540 := {args : @125} -> + {env : @305} -> + {F : @280} -> + {o : @282} -> + (hB : @493) -> (hfn : @524) -> (hwt : @526) -> (hbind : @342 (@528 @127 @66) @351) -> @512 +@541 := @522 @56 +@542 := @218 @53 +@544 := @121 @542 @525 +@547 := @54 (@5 @135) @53 +@551 := @342 (@528 @547 @66) @351 +@554 := @54 (@5 @307) @53 +@575 := {env : @305} -> + {F : @280} -> + {o : @282} -> + (hB : @493) -> + (hfn : @524) -> + (hwt : @544) -> + (hbind : @551) -> + (hF : @499) -> + (hA : @500 @554 @129) -> + (hne : @370) -> @373 (fun (ro : @372) => @379 (@504 (@54 (@5 #12) @53) @17)) +@576 := @541 @69 +@577 := @232 @53 +@579 := @121 @577 @525 +@587 := @342 (@528 @542 @66) (@350 (@67 (@64 @217) @66)) +@590 := @54 (@5 @141) @53 +@609 := {F : @280} -> + {o : @282} -> + (hB : @493) -> + (hfn : @524) -> + (hwt : @579) -> + (hbind : @587) -> + (hF : @499) -> + (hA : @500 @590 @129) -> + (hne : @370) -> @373 (fun (ro : @372) => @379 (@504 (@54 (@5 @356) @53) @17)) +@610 := @576 @70 +@611 := @249 @525 +@619 := @342 (@528 @577 @66) (@350 (@67 (@64 @231) @66)) +@621 := @498 (@360 @70) +@623 := @500 @547 @129 +@624 := @375 @70 +@643 := {o : @282} -> + (hB : @493) -> + (hfn : @524) -> + (hwt : @611) -> + (hbind : @619) -> + (hF : @621) -> + (hA : @623) -> + (hne : @370) -> @373 (fun (ro : @372) => @374 (@624 @141 @17) (@504 (@54 (@5 @333) @53) @17)) +@644 := @610 @272 +@645 := @257 @525 +@653 := @342 (@528 @248 @66) (@350 (@67 (@64 @214) @66)) +@654 := @500 @542 +@655 := @271 @127 +@656 := @654 @655 +@657 := @271 @135 +@675 := (hB : @493) -> + (hfn : @524) -> + (hwt : @645) -> + (hbind : @653) -> + (hF : @621) -> + (hA : @656) -> + (hne : @283 @657 @288) -> @373 (fun (ro : @372) => @374 (@624 (@271 @307) @17) (@504 @554 @17)) +@676 := @644 @95 +@677 := @265 @525 +@685 := @342 (@528 @256 @66) (@350 (@67 (@64 @228) @66)) +@686 := @500 @577 +@687 := @271 @129 +@705 := (hfn : @524) -> + (hwt : @677) -> + (hbind : @685) -> + (hF : @621) -> + (hA : @686 @687) -> + (hne : @283 @655 @288) -> @373 (fun (ro : @372) => @374 (@624 (@271 @141) @17) (@504 @590 @17)) +@706 := Eq.refl.{1} +@709 := @676 (@706 @316 @494) +@710 := @269 @525 +@718 := @342 (@528 @264 @66) (@350 (@67 (@64 @243) @66)) +@719 := @500 @248 +@720 := @271 @131 +@736 := (hwt : @710) -> + (hbind : @718) -> + (hF : @621) -> + (hA : @719 @720) -> + (hne : @283 @687 @288) -> @373 (fun (ro : @372) => @374 (@624 @657 @17) (@504 @547 @17)) +@737 := @709 @268 +@739 := @528 @56 @66 +@742 := @342 @739 (@350 @69) +@743 := @500 @256 +@744 := @271 @12 +@759 := (hbind : @742) -> + (hF : @621) -> + (hA : @743 @744) -> + (hne : @283 @720 @288) -> @373 (fun (ro : @372) => @374 (@624 @655 @17) (@504 @542 @17)) +@762 := @737 (@706 @341 @739) +@763 := @500 @264 +@764 := @271 @14 +@778 := (hF : @621) -> + (hA : @763 @764) -> + (hne : @283 @744 @288) -> @373 (fun (ro : @372) => @374 (@624 @687 @17) (@504 @577 @17)) +@781 := @762 (@706 @353 @497) +@795 := (hA : @500 @56 @272) -> + (hne : @283 @764 @288) -> @373 (fun (ro : @372) => @374 (@624 @720 @17) (@504 @248 @17)) +@796 := @781 @279 +@807 := (hne : @283 @272 @288) -> @373 (fun (ro : @372) => @374 (@624 @744 @17) (@504 @256 @17)) +@808 := @796 @300 +@814 := @374 (@624 @764 @17) (@504 @264 @17) +@816 := @373 (fun (ro : @372) => @814) +@818 := @373 (fun (__e_ro : @372) => @814) +@822 := LexLeanPreservation.Rust.RepresentableL (@54 @18 @53) +@823 := (__e_hrep : @822) -> @818 +@824 := fun (__e_hrep : @822) => @808 +@825 := (value : @3) -> @823 +@826 := fun (value : @3) => @824 +\end{coremodule} +\end{lexlean} diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R2/Compose/RustStd.lex.tex b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R2/Compose/RustStd.lex.tex new file mode 100644 index 000000000..ce8233ade --- /dev/null +++ b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R2/Compose/RustStd.lex.tex @@ -0,0 +1,416 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2, + LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.Compose.RustStd.root : @825 := @826 { + all: [LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.RustStd.program +@1 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.RustStd.krate +@2 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.RustStd.flags +@3 := Nat +@4 := #1 +@5 := LexLeanTarget.TargetSyntax.Value.nat +@6 := @5 @4 +@7 := LexLeanTarget.TargetSyntax.Ty.nat +@8 := LexLeanTarget.TargetSyntax.Program +@9 := LexLeanPreservation.Rust.RCrate +@10 := LexLeanPreservation.Rust.Flags +@11 := LexLeanPreservation.Rust.WT +@12 := #3 +@13 := @11 @12 +@14 := #2 +@16 := @13 @14 @4 +@17 := #0 +@18 := @5 @17 +@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 +@26 := LexLeanPreservation.Rust.wt_nat @0 +@27 := @11 @0 +@34 := {c : @9} -> {A : @10} -> (n : @3) -> @27 @14 @4 @18 @7 +@35 := @26 @1 +@36 := @27 @1 +@41 := {A : @10} -> (n : @3) -> @36 @4 @18 @7 +@42 := @35 @2 +@43 := @36 @2 +@46 := (n : @3) -> @43 @18 @7 +@47 := @42 @4 +@49 := @43 @6 @7 +@50 := LexLeanTarget.TargetSyntax.Value +@51 := List.nil.{0} +@52 := List.cons.{0} +@53 := @51 @50 +@54 := @52 @50 +@56 := @54 @6 @53 +@59 := Prod.{0, 0} @3 @50 +@60 := 0 +@64 := Prod.mk.{0, 0} @3 @50 @60 +@65 := @64 @6 +@66 := @51 @59 +@67 := @52 @59 +@69 := @67 @65 @66 +@70 := Bool.true +@71 := LexLeanTarget.TargetSyntax.Function +@72 := LexLeanTarget.TargetSyntax.Program.functions +@73 := @72 @0 +@74 := LexLeanTarget.TargetSyntax.Ty +@75 := @51 @3 +@76 := @51 @74 +@77 := LexLeanTarget.TargetSyntax.Ty.unit +@78 := LexLeanTarget.TargetSyntax.Value.unit +@81 := LexLeanTarget.TargetSyntax.Expr.value @77 @78 +@86 := LexLeanTarget.TargetSyntax.Function.mk @75 @76 @77 @81 +@91 := List.getD.{0} @71 @73 @60 @86 +@95 := fun (__e_n : @3) => LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.RustStd.root @17 @60 +@96 := LexLeanPreservation.Rust.WTL +@104 := {p : @8} -> {c : @9} -> {A : @10} -> @96 @14 @4 @17 @53 @76 +@106 := LexLeanPreservation.Rust.wtl_nil @0 +@107 := @96 @0 +@113 := {c : @9} -> {A : @10} -> @107 @4 @17 @53 @76 +@114 := @106 @1 +@115 := @107 @1 +@119 := {A : @10} -> @115 @17 @53 @76 +@120 := @114 @2 +@121 := @115 @2 +@122 := @121 @53 +@123 := @122 @76 +@124 := List.{0} +@125 := @124 @50 +@126 := @124 @74 +@127 := #6 +@128 := @11 @127 +@129 := #5 +@130 := @128 @129 +@131 := #4 +@134 := @130 @131 @12 @14 +@135 := #7 +@140 := @96 @135 @127 @129 @14 @4 +@141 := #8 +@144 := @96 @141 @135 @127 +@146 := @54 @129 @12 +@147 := @144 @146 +@148 := @52 @74 +@150 := @148 @131 @14 +@160 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {v : @50} -> {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @134) -> (hs : @140) -> @147 @150 +@162 := LexLeanPreservation.Rust.wtl_cons @0 +@182 := {c : @9} -> + {A : @10} -> + {v : @50} -> + {t : @74} -> + {vs : @125} -> + {ts : @126} -> + (h : @27 @129 @131 @12 @14) -> (hs : @107 @127 @129 @14 @4) -> @107 @135 @127 @146 @150 +@183 := @162 @1 +@199 := {A : @10} -> + {v : @50} -> + {t : @74} -> + {vs : @125} -> + {ts : @126} -> (h : @36 @131 @12 @14) -> (hs : @115 @129 @14 @4) -> @115 @127 @146 @150 +@200 := @183 @2 +@202 := @43 @12 @14 +@204 := @121 @14 @4 +@212 := {v : @50} -> + {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @202) -> (hs : @204) -> @121 @146 @150 +@213 := @200 @6 +@214 := @5 @131 +@216 := @43 @214 @14 +@217 := @5 @127 +@218 := @54 @217 +@226 := {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @216) -> (hs : @204) -> @121 (@218 @12) @150 +@227 := @213 @7 +@228 := @5 @12 +@230 := @43 @228 @7 +@231 := @5 @129 +@232 := @54 @231 +@234 := @121 (@232 @12) +@235 := @148 @7 +@236 := @235 @14 +@241 := {vs : @125} -> {ts : @126} -> (h : @230) -> (hs : @204) -> @234 @236 +@242 := @227 @53 +@243 := @5 @14 +@245 := @43 @243 @7 +@246 := @122 @4 +@248 := @54 @214 @53 +@249 := @121 @248 +@253 := {ts : @126} -> (h : @245) -> (hs : @246) -> @249 @236 +@254 := @242 @76 +@256 := @54 @228 @53 +@257 := @121 @256 +@258 := @235 @76 +@261 := (h : @49) -> (hs : @123) -> @257 @258 +@262 := @254 @47 +@264 := @54 @243 @53 +@265 := @121 @264 +@267 := (hs : @123) -> @265 @258 +@268 := @262 @120 +@269 := @121 @56 +@270 := @269 @258 +@271 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.denote +@272 := @271 @4 +@273 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.__fits_0 +@274 := @273 @4 +@277 := @5 (Production.Main.quadruple @4) +@279 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.root @4 +@280 := Bool +@281 := Ne.{1} +@282 := LexLeanPreservation.Obs +@283 := @281 @282 +@284 := LexLeanPreservation.Rel +@287 := @283 (@284 @4 @17) +@288 := LexLeanPreservation.Obs.stuck +@291 := (f : @280) -> (v : @50) -> @287 @288 +@293 := LexLeanPreservation.Rust.rel_ne_stuck @274 +@299 := (v : @50) -> @283 (@284 (@273 @14) @17) @288 +@300 := @293 @277 +@304 := @283 (@284 @274 @277) @288 +@305 := @124 @59 +@306 := LexLeanPreservation.Rust.FunSem +@307 := #9 +@313 := (n : @3) -> @306 @307 @141 @135 @17 @127 +@314 := Eq.{1} +@315 := Option.{0} +@316 := @315 @71 +@317 := @314 @316 +@324 := LexLeanRuntime.index (@124 @71) @71 (LexLeanRuntime.instIndexableList @71) +@328 := @317 (@324 (@72 @307) @127) +@329 := Option.some.{0} +@330 := @329 @71 +@331 := @330 @129 +@332 := @328 @331 +@333 := #10 +@337 := @96 @333 @307 @141 @129 +@338 := LexLeanTarget.TargetSyntax.Function.types +@339 := @338 @127 +@340 := @337 @339 +@341 := @315 @305 +@342 := @314 @341 +@343 := LexLeanTarget.TargetSemantics.bindAll +@344 := LexLeanTarget.TargetSyntax.Function.parameters +@349 := @342 (@343 (@344 @135) @127 @66) +@350 := @329 @305 +@351 := @350 @129 +@352 := @349 @351 +@353 := @315 @280 +@354 := @314 @353 +@355 := LexLeanPreservation.Rust.fnFallible +@356 := #11 +@359 := @354 (@355 @356 @307) +@360 := @329 @280 +@361 := @360 @129 +@362 := @359 @361 +@363 := LexLeanPreservation.RunConv +@364 := #13 +@368 := @363 @364 @333 @141 @129 +@370 := @283 @127 @288 +@371 := Exists.{1} +@372 := LexLeanPreservation.Rust.ROut +@373 := @371 @372 +@374 := And +@375 := LexLeanPreservation.Rust.RealizesFn +@379 := @374 (@375 @307 @141 @17) +@380 := LexLeanPreservation.Rust.RCI +@382 := @380 #15 +@383 := LexLeanPreservation.Rust.fnIdent +@384 := @383 @364 +@391 := (hne : @370) -> @373 (fun (ro : @372) => @379 (@382 @384 @356 @17)) +@406 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {f : @3} -> + {fn : @71} -> + {args : @125} -> + {env : @305} -> + {F : @280} -> + {o : @282} -> + (hB : @313) -> + (hfn : @332) -> (hwt : @340) -> (hbind : @352) -> (hF : @362) -> (hA : @368) -> @391 +@408 := LexLeanPreservation.Rust.compose @0 +@409 := @306 @0 +@414 := (n : @3) -> @409 @141 @135 @17 @127 +@415 := @324 @73 +@418 := @317 (@415 @127) @331 +@422 := @107 @307 @141 @129 @339 +@423 := @363 @0 +@426 := @423 @333 @141 @129 +@440 := {c : @9} -> + {A : @10} -> + {f : @3} -> + {fn : @71} -> + {args : @125} -> + {env : @305} -> + {F : @280} -> + {o : @282} -> + (hB : @414) -> + (hfn : @418) -> (hwt : @422) -> (hbind : @352) -> (hF : @362) -> (hA : @426) -> @391 +@441 := @408 @1 +@442 := @409 @1 +@446 := (n : @3) -> @442 @135 @17 @127 +@449 := @115 @141 @129 @339 +@450 := @355 @1 +@453 := @354 (@450 @307) @361 +@454 := @380 @1 +@464 := (hbind : @352) -> + (hF : @453) -> (hA : @426) -> (hne : @370) -> @373 (fun (ro : @372) => @379 (@454 @384 @356 @17)) +@474 := {A : @10} -> + {f : @3} -> + {fn : @71} -> + {args : @125} -> + {env : @305} -> {F : @280} -> {o : @282} -> (hB : @446) -> (hfn : @418) -> (hwt : @449) -> @464 +@475 := @441 @2 +@477 := @442 @2 @17 +@479 := (n : @3) -> @477 @127 +@480 := @121 @129 +@481 := @480 @339 +@490 := {f : @3} -> + {fn : @71} -> + {args : @125} -> + {env : @305} -> {F : @280} -> {o : @282} -> (hB : @479) -> (hfn : @418) -> (hwt : @481) -> @464 +@491 := @475 @60 +@493 := (n : @3) -> @477 @60 +@494 := @415 @60 +@495 := @317 @494 +@496 := @495 @331 +@497 := @450 @60 +@498 := @354 @497 +@499 := @498 @361 +@500 := @423 @60 +@502 := @500 @141 @129 +@504 := @454 (@383 @60) +@512 := (hF : @499) -> (hA : @502) -> (hne : @370) -> @373 (fun (ro : @372) => @379 (@504 @356 @17)) +@521 := {fn : @71} -> + {args : @125} -> + {env : @305} -> + {F : @280} -> {o : @282} -> (hB : @493) -> (hfn : @496) -> (hwt : @481) -> (hbind : @352) -> @512 +@522 := @491 @91 +@524 := @495 (@330 @91) +@525 := @338 @91 +@526 := @480 @525 +@528 := @343 (@344 @91) +@540 := {args : @125} -> + {env : @305} -> + {F : @280} -> + {o : @282} -> + (hB : @493) -> (hfn : @524) -> (hwt : @526) -> (hbind : @342 (@528 @127 @66) @351) -> @512 +@541 := @522 @56 +@542 := @218 @53 +@544 := @121 @542 @525 +@547 := @54 (@5 @135) @53 +@551 := @342 (@528 @547 @66) @351 +@554 := @54 (@5 @307) @53 +@575 := {env : @305} -> + {F : @280} -> + {o : @282} -> + (hB : @493) -> + (hfn : @524) -> + (hwt : @544) -> + (hbind : @551) -> + (hF : @499) -> + (hA : @500 @554 @129) -> + (hne : @370) -> @373 (fun (ro : @372) => @379 (@504 (@54 (@5 #12) @53) @17)) +@576 := @541 @69 +@577 := @232 @53 +@579 := @121 @577 @525 +@587 := @342 (@528 @542 @66) (@350 (@67 (@64 @217) @66)) +@590 := @54 (@5 @141) @53 +@609 := {F : @280} -> + {o : @282} -> + (hB : @493) -> + (hfn : @524) -> + (hwt : @579) -> + (hbind : @587) -> + (hF : @499) -> + (hA : @500 @590 @129) -> + (hne : @370) -> @373 (fun (ro : @372) => @379 (@504 (@54 (@5 @356) @53) @17)) +@610 := @576 @70 +@611 := @249 @525 +@619 := @342 (@528 @577 @66) (@350 (@67 (@64 @231) @66)) +@621 := @498 (@360 @70) +@623 := @500 @547 @129 +@624 := @375 @70 +@643 := {o : @282} -> + (hB : @493) -> + (hfn : @524) -> + (hwt : @611) -> + (hbind : @619) -> + (hF : @621) -> + (hA : @623) -> + (hne : @370) -> @373 (fun (ro : @372) => @374 (@624 @141 @17) (@504 (@54 (@5 @333) @53) @17)) +@644 := @610 @272 +@645 := @257 @525 +@653 := @342 (@528 @248 @66) (@350 (@67 (@64 @214) @66)) +@654 := @500 @542 +@655 := @271 @127 +@656 := @654 @655 +@657 := @271 @135 +@675 := (hB : @493) -> + (hfn : @524) -> + (hwt : @645) -> + (hbind : @653) -> + (hF : @621) -> + (hA : @656) -> + (hne : @283 @657 @288) -> @373 (fun (ro : @372) => @374 (@624 (@271 @307) @17) (@504 @554 @17)) +@676 := @644 @95 +@677 := @265 @525 +@685 := @342 (@528 @256 @66) (@350 (@67 (@64 @228) @66)) +@686 := @500 @577 +@687 := @271 @129 +@705 := (hfn : @524) -> + (hwt : @677) -> + (hbind : @685) -> + (hF : @621) -> + (hA : @686 @687) -> + (hne : @283 @655 @288) -> @373 (fun (ro : @372) => @374 (@624 (@271 @141) @17) (@504 @590 @17)) +@706 := Eq.refl.{1} +@709 := @676 (@706 @316 @494) +@710 := @269 @525 +@718 := @342 (@528 @264 @66) (@350 (@67 (@64 @243) @66)) +@719 := @500 @248 +@720 := @271 @131 +@736 := (hwt : @710) -> + (hbind : @718) -> + (hF : @621) -> + (hA : @719 @720) -> + (hne : @283 @687 @288) -> @373 (fun (ro : @372) => @374 (@624 @657 @17) (@504 @547 @17)) +@737 := @709 @268 +@739 := @528 @56 @66 +@742 := @342 @739 (@350 @69) +@743 := @500 @256 +@744 := @271 @12 +@759 := (hbind : @742) -> + (hF : @621) -> + (hA : @743 @744) -> + (hne : @283 @720 @288) -> @373 (fun (ro : @372) => @374 (@624 @655 @17) (@504 @542 @17)) +@762 := @737 (@706 @341 @739) +@763 := @500 @264 +@764 := @271 @14 +@778 := (hF : @621) -> + (hA : @763 @764) -> + (hne : @283 @744 @288) -> @373 (fun (ro : @372) => @374 (@624 @687 @17) (@504 @577 @17)) +@781 := @762 (@706 @353 @497) +@795 := (hA : @500 @56 @272) -> + (hne : @283 @764 @288) -> @373 (fun (ro : @372) => @374 (@624 @720 @17) (@504 @248 @17)) +@796 := @781 @279 +@807 := (hne : @283 @272 @288) -> @373 (fun (ro : @372) => @374 (@624 @744 @17) (@504 @256 @17)) +@808 := @796 @300 +@814 := @374 (@624 @764 @17) (@504 @264 @17) +@816 := @373 (fun (ro : @372) => @814) +@818 := @373 (fun (__e_ro : @372) => @814) +@822 := LexLeanPreservation.Rust.RepresentableL (@54 @18 @53) +@823 := (__e_hrep : @822) -> @818 +@824 := fun (__e_hrep : @822) => @808 +@825 := (value : @3) -> @823 +@826 := fun (value : @3) => @824 +\end{coremodule} +\end{lexlean} diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R2/RustCore.lean b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R2/RustCore.lean new file mode 100644 index 000000000..57999600e --- /dev/null +++ b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R2/RustCore.lean @@ -0,0 +1,51 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.RustCore +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0], types := [.nat], result := .nat, + body := (.call 1 [(.closure 2 []), (.var 0)]) }, + { parameters := [0, 1], types := [(.fn [.nat] .nat), .nat], result := .nat, + body := (.apply (.var 0) [(.apply (.var 0) [(.var 1)])]) }, + { parameters := [0], types := [.nat], result := .nat, + body := (.prim .natAdd [(.var 0), (.var 0)]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .core, items := [ + (.enum (.fn 0) [{ number := 2, fields := [] }]), + (.apply 0 [.nat] .nat true [{ function := 2, captures := [], functionFallible := true }]), + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible .nat) (.mk [] (.call (.function 1) [(.construct (.closure 0 2) []), (.copy (.generated .binding 0))] false))), + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .callee 1)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 1) [(.block (.mk [(.mk (.bind (.generated .callee 2)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 2) [(.copy (.generated .binding 1))] true)))] false))), + (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 0)))] (.call (.runtime .natAdd) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false)))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [(([.nat], .nat), true)] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 1) [(.construct (.closure 0 2) []), (.copy (.generated .binding 0))] false), [(0, .nat, (some 0))], rfl, rfl, + (Corr.callF (ts := [(.fn [.nat] .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .callee 1)) (some (.fn 0)) (.clone (.generated .binding 0)))], (.apply (.generated .callee 1) [(.block (.mk [(.mk (.bind (.generated .callee 2)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 2) [(.copy (.generated .binding 1))] true)))] false), [(1, .nat, (some 1)), (0, (.fn [.nat] .nat), (some 0))], rfl, rfl, + (Corr.applyF (ps := [.nat]) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 2)) (some (.fn 0)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 2) [(.copy (.generated .binding 1))] true)) (Corr.apply (ps := [.nat]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl)⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 0)))], (.call (.runtime .natAdd) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false), [(0, .nat, (some 0))], rfl, rfl, + (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | _ + 3 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.RustCore diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R2/RustStd.lean b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R2/RustStd.lean new file mode 100644 index 000000000..21c15fc44 --- /dev/null +++ b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R2/RustStd.lean @@ -0,0 +1,51 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0], types := [.nat], result := .nat, + body := (.call 1 [(.closure 2 []), (.var 0)]) }, + { parameters := [0, 1], types := [(.fn [.nat] .nat), .nat], result := .nat, + body := (.apply (.var 0) [(.apply (.var 0) [(.var 1)])]) }, + { parameters := [0], types := [.nat], result := .nat, + body := (.prim .natAdd [(.var 0), (.var 0)]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.enum (.fn 0) [{ number := 2, fields := [] }]), + (.apply 0 [.nat] .nat true [{ function := 2, captures := [], functionFallible := true }]), + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible .nat) (.mk [] (.call (.function 1) [(.construct (.closure 0 2) []), (.copy (.generated .binding 0))] false))), + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .callee 1)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 1) [(.block (.mk [(.mk (.bind (.generated .callee 2)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 2) [(.copy (.generated .binding 1))] true)))] false))), + (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 0)))] (.call (.runtime .natAdd) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false)))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [(([.nat], .nat), true)] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 1) [(.construct (.closure 0 2) []), (.copy (.generated .binding 0))] false), [(0, .nat, (some 0))], rfl, rfl, + (Corr.callF (ts := [(.fn [.nat] .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .callee 1)) (some (.fn 0)) (.clone (.generated .binding 0)))], (.apply (.generated .callee 1) [(.block (.mk [(.mk (.bind (.generated .callee 2)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 2) [(.copy (.generated .binding 1))] true)))] false), [(1, .nat, (some 1)), (0, (.fn [.nat] .nat), (some 0))], rfl, rfl, + (Corr.applyF (ps := [.nat]) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 2)) (some (.fn 0)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 2) [(.copy (.generated .binding 1))] true)) (Corr.apply (ps := [.nat]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl)⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 0)))], (.call (.runtime .natAdd) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false), [(0, .nat, (some 0))], rfl, rfl, + (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | _ + 3 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.RustStd diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R3.lean b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R3.lean new file mode 100644 index 000000000..208516fdb --- /dev/null +++ b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R3.lean @@ -0,0 +1,48 @@ +import LexLeanPreservation.Core +import LexLeanPreservation.Values +import LexLeanPreservation.Primitives +import LexLeanPreservation.Fixed +import LexLeanPreservation.Keys +import LexLeanPreservation.Templates +import LexLeanPreservation.Validate +import Production.Kernel +import Production.Main +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +set_option linter.unusedVariables false +namespace LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3 + +def __prog : _root_.LexLeanTarget.TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0], types := [.nat], result := .nat, + body := (.call 1 [(.var 0), (.value .nat (.nat 0))]) }, + { parameters := [0, 1], types := [.nat, .nat], result := .nat, + body := (.cond (.prim .natLt [(.var 0), (.value .nat (.nat 2))]) (.var 1) (.call 1 [(.prim .natSub [(.var 0), (.value .nat (.nat 2))]), (.prim .natAdd [(.var 1), (.value .nat (.nat 1))])])) }] } + +def __fits_1 (number : Nat) (steps : Nat) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (match (generalizing := false) __decrease0 : (Nat.blt number (2 : Nat)) with | true => Bool.true | false => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (steps + (1 : Nat)) 18446744073709551616)) && Bool.true)) && (__fits_1 ((_root_.LexLeanRuntime.subtract (number) ((2 : Nat)) : Nat)) ((steps + (1 : Nat))))))) +termination_by number +decreasing_by all_goals first | (have __evidence := Production.Kernel.countdown_decreases (number) (steps) (__decrease0); subst_vars; exact __evidence) + +theorem __rel_1 (number : Nat) (steps : Nat) : _root_.LexLeanPreservation.FunRel __prog 1 [(_root_.LexLeanTarget.TargetSyntax.Value.nat number), (_root_.LexLeanTarget.TargetSyntax.Value.nat steps)] (_root_.LexLeanPreservation.Rel (__fits_1 number steps) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Production.Kernel.countdown number steps))) := by + rw [Production.Kernel.countdown.eq_def, __fits_1.eq_def] + exact _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (match (generalizing := false) __decrease0 : __b with | true => Bool.true | false => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (steps + (1 : Nat)) 18446744073709551616)) && Bool.true)) && (__fits_1 ((_root_.LexLeanRuntime.subtract (number) ((2 : Nat)) : Nat)) ((steps + (1 : Nat))))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (match (generalizing := false) __decrease0 : __b with | true => steps | false => (Production.Kernel.countdown ((_root_.LexLeanRuntime.subtract (number) ((2 : Nat)) : Nat)) ((steps + (1 : Nat)))))) (Nat.blt number (2 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt number (2 : Nat))) (fun __decrease0 => (_root_.LexLeanPreservation.conv_var rfl)) (fun __decrease0 => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub number (2 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd steps (1 : Nat))) _root_.LexLeanPreservation.convL_nil)) (__rel_1 ((_root_.LexLeanRuntime.subtract (number) ((2 : Nat)) : Nat)) ((steps + (1 : Nat))))))) +termination_by number +decreasing_by all_goals first | (have __evidence := Production.Kernel.countdown_decreases (number) (steps) (__decrease0); subst_vars; exact __evidence) + +def __fits_0 (number : Nat) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && (__fits_1 (number) ((0 : Nat)))) + +attribute [local irreducible] Production.Kernel.countdown in +theorem __rel_0 (number : Nat) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat number)] (_root_.LexLeanPreservation.Rel (__fits_0 number) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Production.Main.halvings number))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_1 (number) ((0 : Nat)))) + +def denote (number : Nat) : _root_.LexLeanPreservation.Obs := + _root_.cond (__fits_0 number) (_root_.LexLeanPreservation.Obs.value ((_root_.LexLeanTarget.TargetSyntax.Value.nat (Production.Main.halvings number)))) _root_.LexLeanPreservation.Obs.overflow + +theorem root (number : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat number)] (_root_.LexLeanPreservation.Rel (__fits_0 number) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Production.Main.halvings number))) := + _root_.LexLeanPreservation.run_of_funRel (__rel_0 number) + +end LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3 diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R3/Compose/RustCore.lex.tex b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R3/Compose/RustCore.lex.tex new file mode 100644 index 000000000..8bcef617e --- /dev/null +++ b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R3/Compose/RustCore.lex.tex @@ -0,0 +1,417 @@ +\begin{lexlean}{RustCore} +\title{Certificate E LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.Compose.RustCore} +\begin{coremodule} +imports [ + LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3, + LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.RustCore, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.Compose.RustCore.root : @825 := @826 { + all: [LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.Compose.RustCore.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.RustCore.program +@1 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.RustCore.krate +@2 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.RustCore.flags +@3 := Nat +@4 := #1 +@5 := LexLeanTarget.TargetSyntax.Value.nat +@6 := @5 @4 +@7 := LexLeanTarget.TargetSyntax.Ty.nat +@8 := LexLeanTarget.TargetSyntax.Program +@9 := LexLeanPreservation.Rust.RCrate +@10 := LexLeanPreservation.Rust.Flags +@11 := LexLeanPreservation.Rust.WT +@12 := #3 +@13 := @11 @12 +@14 := #2 +@16 := @13 @14 @4 +@17 := #0 +@18 := @5 @17 +@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 +@26 := LexLeanPreservation.Rust.wt_nat @0 +@27 := @11 @0 +@34 := {c : @9} -> {A : @10} -> (n : @3) -> @27 @14 @4 @18 @7 +@35 := @26 @1 +@36 := @27 @1 +@41 := {A : @10} -> (n : @3) -> @36 @4 @18 @7 +@42 := @35 @2 +@43 := @36 @2 +@46 := (n : @3) -> @43 @18 @7 +@47 := @42 @4 +@49 := @43 @6 @7 +@50 := LexLeanTarget.TargetSyntax.Value +@51 := List.nil.{0} +@52 := List.cons.{0} +@53 := @51 @50 +@54 := @52 @50 +@56 := @54 @6 @53 +@59 := Prod.{0, 0} @3 @50 +@60 := 0 +@64 := Prod.mk.{0, 0} @3 @50 @60 +@65 := @64 @6 +@66 := @51 @59 +@67 := @52 @59 +@69 := @67 @65 @66 +@70 := Bool.true +@71 := LexLeanTarget.TargetSyntax.Function +@72 := LexLeanTarget.TargetSyntax.Program.functions +@73 := @72 @0 +@74 := LexLeanTarget.TargetSyntax.Ty +@75 := @51 @3 +@76 := @51 @74 +@77 := LexLeanTarget.TargetSyntax.Ty.unit +@78 := LexLeanTarget.TargetSyntax.Value.unit +@81 := LexLeanTarget.TargetSyntax.Expr.value @77 @78 +@86 := LexLeanTarget.TargetSyntax.Function.mk @75 @76 @77 @81 +@91 := List.getD.{0} @71 @73 @60 @86 +@95 := fun (__e_n : @3) => + LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.RustCore.root @17 @60 +@96 := LexLeanPreservation.Rust.WTL +@104 := {p : @8} -> {c : @9} -> {A : @10} -> @96 @14 @4 @17 @53 @76 +@106 := LexLeanPreservation.Rust.wtl_nil @0 +@107 := @96 @0 +@113 := {c : @9} -> {A : @10} -> @107 @4 @17 @53 @76 +@114 := @106 @1 +@115 := @107 @1 +@119 := {A : @10} -> @115 @17 @53 @76 +@120 := @114 @2 +@121 := @115 @2 +@122 := @121 @53 +@123 := @122 @76 +@124 := List.{0} +@125 := @124 @50 +@126 := @124 @74 +@127 := #6 +@128 := @11 @127 +@129 := #5 +@130 := @128 @129 +@131 := #4 +@134 := @130 @131 @12 @14 +@135 := #7 +@140 := @96 @135 @127 @129 @14 @4 +@141 := #8 +@144 := @96 @141 @135 @127 +@146 := @54 @129 @12 +@147 := @144 @146 +@148 := @52 @74 +@150 := @148 @131 @14 +@160 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {v : @50} -> {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @134) -> (hs : @140) -> @147 @150 +@162 := LexLeanPreservation.Rust.wtl_cons @0 +@182 := {c : @9} -> + {A : @10} -> + {v : @50} -> + {t : @74} -> + {vs : @125} -> + {ts : @126} -> + (h : @27 @129 @131 @12 @14) -> (hs : @107 @127 @129 @14 @4) -> @107 @135 @127 @146 @150 +@183 := @162 @1 +@199 := {A : @10} -> + {v : @50} -> + {t : @74} -> + {vs : @125} -> + {ts : @126} -> (h : @36 @131 @12 @14) -> (hs : @115 @129 @14 @4) -> @115 @127 @146 @150 +@200 := @183 @2 +@202 := @43 @12 @14 +@204 := @121 @14 @4 +@212 := {v : @50} -> + {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @202) -> (hs : @204) -> @121 @146 @150 +@213 := @200 @6 +@214 := @5 @131 +@216 := @43 @214 @14 +@217 := @5 @127 +@218 := @54 @217 +@226 := {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @216) -> (hs : @204) -> @121 (@218 @12) @150 +@227 := @213 @7 +@228 := @5 @12 +@230 := @43 @228 @7 +@231 := @5 @129 +@232 := @54 @231 +@234 := @121 (@232 @12) +@235 := @148 @7 +@236 := @235 @14 +@241 := {vs : @125} -> {ts : @126} -> (h : @230) -> (hs : @204) -> @234 @236 +@242 := @227 @53 +@243 := @5 @14 +@245 := @43 @243 @7 +@246 := @122 @4 +@248 := @54 @214 @53 +@249 := @121 @248 +@253 := {ts : @126} -> (h : @245) -> (hs : @246) -> @249 @236 +@254 := @242 @76 +@256 := @54 @228 @53 +@257 := @121 @256 +@258 := @235 @76 +@261 := (h : @49) -> (hs : @123) -> @257 @258 +@262 := @254 @47 +@264 := @54 @243 @53 +@265 := @121 @264 +@267 := (hs : @123) -> @265 @258 +@268 := @262 @120 +@269 := @121 @56 +@270 := @269 @258 +@271 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.denote +@272 := @271 @4 +@273 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.__fits_0 +@274 := @273 @4 +@277 := @5 (Production.Main.halvings @4) +@279 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.root @4 +@280 := Bool +@281 := Ne.{1} +@282 := LexLeanPreservation.Obs +@283 := @281 @282 +@284 := LexLeanPreservation.Rel +@287 := @283 (@284 @4 @17) +@288 := LexLeanPreservation.Obs.stuck +@291 := (f : @280) -> (v : @50) -> @287 @288 +@293 := LexLeanPreservation.Rust.rel_ne_stuck @274 +@299 := (v : @50) -> @283 (@284 (@273 @14) @17) @288 +@300 := @293 @277 +@304 := @283 (@284 @274 @277) @288 +@305 := @124 @59 +@306 := LexLeanPreservation.Rust.FunSem +@307 := #9 +@313 := (n : @3) -> @306 @307 @141 @135 @17 @127 +@314 := Eq.{1} +@315 := Option.{0} +@316 := @315 @71 +@317 := @314 @316 +@324 := LexLeanRuntime.index (@124 @71) @71 (LexLeanRuntime.instIndexableList @71) +@328 := @317 (@324 (@72 @307) @127) +@329 := Option.some.{0} +@330 := @329 @71 +@331 := @330 @129 +@332 := @328 @331 +@333 := #10 +@337 := @96 @333 @307 @141 @129 +@338 := LexLeanTarget.TargetSyntax.Function.types +@339 := @338 @127 +@340 := @337 @339 +@341 := @315 @305 +@342 := @314 @341 +@343 := LexLeanTarget.TargetSemantics.bindAll +@344 := LexLeanTarget.TargetSyntax.Function.parameters +@349 := @342 (@343 (@344 @135) @127 @66) +@350 := @329 @305 +@351 := @350 @129 +@352 := @349 @351 +@353 := @315 @280 +@354 := @314 @353 +@355 := LexLeanPreservation.Rust.fnFallible +@356 := #11 +@359 := @354 (@355 @356 @307) +@360 := @329 @280 +@361 := @360 @129 +@362 := @359 @361 +@363 := LexLeanPreservation.RunConv +@364 := #13 +@368 := @363 @364 @333 @141 @129 +@370 := @283 @127 @288 +@371 := Exists.{1} +@372 := LexLeanPreservation.Rust.ROut +@373 := @371 @372 +@374 := And +@375 := LexLeanPreservation.Rust.RealizesFn +@379 := @374 (@375 @307 @141 @17) +@380 := LexLeanPreservation.Rust.RCI +@382 := @380 #15 +@383 := LexLeanPreservation.Rust.fnIdent +@384 := @383 @364 +@391 := (hne : @370) -> @373 (fun (ro : @372) => @379 (@382 @384 @356 @17)) +@406 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {f : @3} -> + {fn : @71} -> + {args : @125} -> + {env : @305} -> + {F : @280} -> + {o : @282} -> + (hB : @313) -> + (hfn : @332) -> (hwt : @340) -> (hbind : @352) -> (hF : @362) -> (hA : @368) -> @391 +@408 := LexLeanPreservation.Rust.compose @0 +@409 := @306 @0 +@414 := (n : @3) -> @409 @141 @135 @17 @127 +@415 := @324 @73 +@418 := @317 (@415 @127) @331 +@422 := @107 @307 @141 @129 @339 +@423 := @363 @0 +@426 := @423 @333 @141 @129 +@440 := {c : @9} -> + {A : @10} -> + {f : @3} -> + {fn : @71} -> + {args : @125} -> + {env : @305} -> + {F : @280} -> + {o : @282} -> + (hB : @414) -> + (hfn : @418) -> (hwt : @422) -> (hbind : @352) -> (hF : @362) -> (hA : @426) -> @391 +@441 := @408 @1 +@442 := @409 @1 +@446 := (n : @3) -> @442 @135 @17 @127 +@449 := @115 @141 @129 @339 +@450 := @355 @1 +@453 := @354 (@450 @307) @361 +@454 := @380 @1 +@464 := (hbind : @352) -> + (hF : @453) -> (hA : @426) -> (hne : @370) -> @373 (fun (ro : @372) => @379 (@454 @384 @356 @17)) +@474 := {A : @10} -> + {f : @3} -> + {fn : @71} -> + {args : @125} -> + {env : @305} -> {F : @280} -> {o : @282} -> (hB : @446) -> (hfn : @418) -> (hwt : @449) -> @464 +@475 := @441 @2 +@477 := @442 @2 @17 +@479 := (n : @3) -> @477 @127 +@480 := @121 @129 +@481 := @480 @339 +@490 := {f : @3} -> + {fn : @71} -> + {args : @125} -> + {env : @305} -> {F : @280} -> {o : @282} -> (hB : @479) -> (hfn : @418) -> (hwt : @481) -> @464 +@491 := @475 @60 +@493 := (n : @3) -> @477 @60 +@494 := @415 @60 +@495 := @317 @494 +@496 := @495 @331 +@497 := @450 @60 +@498 := @354 @497 +@499 := @498 @361 +@500 := @423 @60 +@502 := @500 @141 @129 +@504 := @454 (@383 @60) +@512 := (hF : @499) -> (hA : @502) -> (hne : @370) -> @373 (fun (ro : @372) => @379 (@504 @356 @17)) +@521 := {fn : @71} -> + {args : @125} -> + {env : @305} -> + {F : @280} -> {o : @282} -> (hB : @493) -> (hfn : @496) -> (hwt : @481) -> (hbind : @352) -> @512 +@522 := @491 @91 +@524 := @495 (@330 @91) +@525 := @338 @91 +@526 := @480 @525 +@528 := @343 (@344 @91) +@540 := {args : @125} -> + {env : @305} -> + {F : @280} -> + {o : @282} -> + (hB : @493) -> (hfn : @524) -> (hwt : @526) -> (hbind : @342 (@528 @127 @66) @351) -> @512 +@541 := @522 @56 +@542 := @218 @53 +@544 := @121 @542 @525 +@547 := @54 (@5 @135) @53 +@551 := @342 (@528 @547 @66) @351 +@554 := @54 (@5 @307) @53 +@575 := {env : @305} -> + {F : @280} -> + {o : @282} -> + (hB : @493) -> + (hfn : @524) -> + (hwt : @544) -> + (hbind : @551) -> + (hF : @499) -> + (hA : @500 @554 @129) -> + (hne : @370) -> @373 (fun (ro : @372) => @379 (@504 (@54 (@5 #12) @53) @17)) +@576 := @541 @69 +@577 := @232 @53 +@579 := @121 @577 @525 +@587 := @342 (@528 @542 @66) (@350 (@67 (@64 @217) @66)) +@590 := @54 (@5 @141) @53 +@609 := {F : @280} -> + {o : @282} -> + (hB : @493) -> + (hfn : @524) -> + (hwt : @579) -> + (hbind : @587) -> + (hF : @499) -> + (hA : @500 @590 @129) -> + (hne : @370) -> @373 (fun (ro : @372) => @379 (@504 (@54 (@5 @356) @53) @17)) +@610 := @576 @70 +@611 := @249 @525 +@619 := @342 (@528 @577 @66) (@350 (@67 (@64 @231) @66)) +@621 := @498 (@360 @70) +@623 := @500 @547 @129 +@624 := @375 @70 +@643 := {o : @282} -> + (hB : @493) -> + (hfn : @524) -> + (hwt : @611) -> + (hbind : @619) -> + (hF : @621) -> + (hA : @623) -> + (hne : @370) -> @373 (fun (ro : @372) => @374 (@624 @141 @17) (@504 (@54 (@5 @333) @53) @17)) +@644 := @610 @272 +@645 := @257 @525 +@653 := @342 (@528 @248 @66) (@350 (@67 (@64 @214) @66)) +@654 := @500 @542 +@655 := @271 @127 +@656 := @654 @655 +@657 := @271 @135 +@675 := (hB : @493) -> + (hfn : @524) -> + (hwt : @645) -> + (hbind : @653) -> + (hF : @621) -> + (hA : @656) -> + (hne : @283 @657 @288) -> @373 (fun (ro : @372) => @374 (@624 (@271 @307) @17) (@504 @554 @17)) +@676 := @644 @95 +@677 := @265 @525 +@685 := @342 (@528 @256 @66) (@350 (@67 (@64 @228) @66)) +@686 := @500 @577 +@687 := @271 @129 +@705 := (hfn : @524) -> + (hwt : @677) -> + (hbind : @685) -> + (hF : @621) -> + (hA : @686 @687) -> + (hne : @283 @655 @288) -> @373 (fun (ro : @372) => @374 (@624 (@271 @141) @17) (@504 @590 @17)) +@706 := Eq.refl.{1} +@709 := @676 (@706 @316 @494) +@710 := @269 @525 +@718 := @342 (@528 @264 @66) (@350 (@67 (@64 @243) @66)) +@719 := @500 @248 +@720 := @271 @131 +@736 := (hwt : @710) -> + (hbind : @718) -> + (hF : @621) -> + (hA : @719 @720) -> + (hne : @283 @687 @288) -> @373 (fun (ro : @372) => @374 (@624 @657 @17) (@504 @547 @17)) +@737 := @709 @268 +@739 := @528 @56 @66 +@742 := @342 @739 (@350 @69) +@743 := @500 @256 +@744 := @271 @12 +@759 := (hbind : @742) -> + (hF : @621) -> + (hA : @743 @744) -> + (hne : @283 @720 @288) -> @373 (fun (ro : @372) => @374 (@624 @655 @17) (@504 @542 @17)) +@762 := @737 (@706 @341 @739) +@763 := @500 @264 +@764 := @271 @14 +@778 := (hF : @621) -> + (hA : @763 @764) -> + (hne : @283 @744 @288) -> @373 (fun (ro : @372) => @374 (@624 @687 @17) (@504 @577 @17)) +@781 := @762 (@706 @353 @497) +@795 := (hA : @500 @56 @272) -> + (hne : @283 @764 @288) -> @373 (fun (ro : @372) => @374 (@624 @720 @17) (@504 @248 @17)) +@796 := @781 @279 +@807 := (hne : @283 @272 @288) -> @373 (fun (ro : @372) => @374 (@624 @744 @17) (@504 @256 @17)) +@808 := @796 @300 +@814 := @374 (@624 @764 @17) (@504 @264 @17) +@816 := @373 (fun (ro : @372) => @814) +@818 := @373 (fun (__e_ro : @372) => @814) +@822 := LexLeanPreservation.Rust.RepresentableL (@54 @18 @53) +@823 := (__e_hrep : @822) -> @818 +@824 := fun (__e_hrep : @822) => @808 +@825 := (number : @3) -> @823 +@826 := fun (number : @3) => @824 +\end{coremodule} +\end{lexlean} diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R3/Compose/RustStd.lex.tex b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R3/Compose/RustStd.lex.tex new file mode 100644 index 000000000..54352a249 --- /dev/null +++ b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R3/Compose/RustStd.lex.tex @@ -0,0 +1,416 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3, + LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.Compose.RustStd.root : @825 := @826 { + all: [LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.RustStd.program +@1 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.RustStd.krate +@2 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.RustStd.flags +@3 := Nat +@4 := #1 +@5 := LexLeanTarget.TargetSyntax.Value.nat +@6 := @5 @4 +@7 := LexLeanTarget.TargetSyntax.Ty.nat +@8 := LexLeanTarget.TargetSyntax.Program +@9 := LexLeanPreservation.Rust.RCrate +@10 := LexLeanPreservation.Rust.Flags +@11 := LexLeanPreservation.Rust.WT +@12 := #3 +@13 := @11 @12 +@14 := #2 +@16 := @13 @14 @4 +@17 := #0 +@18 := @5 @17 +@24 := {p : @8} -> {c : @9} -> {A : @10} -> (n : @3) -> @16 @18 @7 +@26 := LexLeanPreservation.Rust.wt_nat @0 +@27 := @11 @0 +@34 := {c : @9} -> {A : @10} -> (n : @3) -> @27 @14 @4 @18 @7 +@35 := @26 @1 +@36 := @27 @1 +@41 := {A : @10} -> (n : @3) -> @36 @4 @18 @7 +@42 := @35 @2 +@43 := @36 @2 +@46 := (n : @3) -> @43 @18 @7 +@47 := @42 @4 +@49 := @43 @6 @7 +@50 := LexLeanTarget.TargetSyntax.Value +@51 := List.nil.{0} +@52 := List.cons.{0} +@53 := @51 @50 +@54 := @52 @50 +@56 := @54 @6 @53 +@59 := Prod.{0, 0} @3 @50 +@60 := 0 +@64 := Prod.mk.{0, 0} @3 @50 @60 +@65 := @64 @6 +@66 := @51 @59 +@67 := @52 @59 +@69 := @67 @65 @66 +@70 := Bool.true +@71 := LexLeanTarget.TargetSyntax.Function +@72 := LexLeanTarget.TargetSyntax.Program.functions +@73 := @72 @0 +@74 := LexLeanTarget.TargetSyntax.Ty +@75 := @51 @3 +@76 := @51 @74 +@77 := LexLeanTarget.TargetSyntax.Ty.unit +@78 := LexLeanTarget.TargetSyntax.Value.unit +@81 := LexLeanTarget.TargetSyntax.Expr.value @77 @78 +@86 := LexLeanTarget.TargetSyntax.Function.mk @75 @76 @77 @81 +@91 := List.getD.{0} @71 @73 @60 @86 +@95 := fun (__e_n : @3) => LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.RustStd.root @17 @60 +@96 := LexLeanPreservation.Rust.WTL +@104 := {p : @8} -> {c : @9} -> {A : @10} -> @96 @14 @4 @17 @53 @76 +@106 := LexLeanPreservation.Rust.wtl_nil @0 +@107 := @96 @0 +@113 := {c : @9} -> {A : @10} -> @107 @4 @17 @53 @76 +@114 := @106 @1 +@115 := @107 @1 +@119 := {A : @10} -> @115 @17 @53 @76 +@120 := @114 @2 +@121 := @115 @2 +@122 := @121 @53 +@123 := @122 @76 +@124 := List.{0} +@125 := @124 @50 +@126 := @124 @74 +@127 := #6 +@128 := @11 @127 +@129 := #5 +@130 := @128 @129 +@131 := #4 +@134 := @130 @131 @12 @14 +@135 := #7 +@140 := @96 @135 @127 @129 @14 @4 +@141 := #8 +@144 := @96 @141 @135 @127 +@146 := @54 @129 @12 +@147 := @144 @146 +@148 := @52 @74 +@150 := @148 @131 @14 +@160 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {v : @50} -> {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @134) -> (hs : @140) -> @147 @150 +@162 := LexLeanPreservation.Rust.wtl_cons @0 +@182 := {c : @9} -> + {A : @10} -> + {v : @50} -> + {t : @74} -> + {vs : @125} -> + {ts : @126} -> + (h : @27 @129 @131 @12 @14) -> (hs : @107 @127 @129 @14 @4) -> @107 @135 @127 @146 @150 +@183 := @162 @1 +@199 := {A : @10} -> + {v : @50} -> + {t : @74} -> + {vs : @125} -> + {ts : @126} -> (h : @36 @131 @12 @14) -> (hs : @115 @129 @14 @4) -> @115 @127 @146 @150 +@200 := @183 @2 +@202 := @43 @12 @14 +@204 := @121 @14 @4 +@212 := {v : @50} -> + {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @202) -> (hs : @204) -> @121 @146 @150 +@213 := @200 @6 +@214 := @5 @131 +@216 := @43 @214 @14 +@217 := @5 @127 +@218 := @54 @217 +@226 := {t : @74} -> {vs : @125} -> {ts : @126} -> (h : @216) -> (hs : @204) -> @121 (@218 @12) @150 +@227 := @213 @7 +@228 := @5 @12 +@230 := @43 @228 @7 +@231 := @5 @129 +@232 := @54 @231 +@234 := @121 (@232 @12) +@235 := @148 @7 +@236 := @235 @14 +@241 := {vs : @125} -> {ts : @126} -> (h : @230) -> (hs : @204) -> @234 @236 +@242 := @227 @53 +@243 := @5 @14 +@245 := @43 @243 @7 +@246 := @122 @4 +@248 := @54 @214 @53 +@249 := @121 @248 +@253 := {ts : @126} -> (h : @245) -> (hs : @246) -> @249 @236 +@254 := @242 @76 +@256 := @54 @228 @53 +@257 := @121 @256 +@258 := @235 @76 +@261 := (h : @49) -> (hs : @123) -> @257 @258 +@262 := @254 @47 +@264 := @54 @243 @53 +@265 := @121 @264 +@267 := (hs : @123) -> @265 @258 +@268 := @262 @120 +@269 := @121 @56 +@270 := @269 @258 +@271 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.denote +@272 := @271 @4 +@273 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.__fits_0 +@274 := @273 @4 +@277 := @5 (Production.Main.halvings @4) +@279 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.root @4 +@280 := Bool +@281 := Ne.{1} +@282 := LexLeanPreservation.Obs +@283 := @281 @282 +@284 := LexLeanPreservation.Rel +@287 := @283 (@284 @4 @17) +@288 := LexLeanPreservation.Obs.stuck +@291 := (f : @280) -> (v : @50) -> @287 @288 +@293 := LexLeanPreservation.Rust.rel_ne_stuck @274 +@299 := (v : @50) -> @283 (@284 (@273 @14) @17) @288 +@300 := @293 @277 +@304 := @283 (@284 @274 @277) @288 +@305 := @124 @59 +@306 := LexLeanPreservation.Rust.FunSem +@307 := #9 +@313 := (n : @3) -> @306 @307 @141 @135 @17 @127 +@314 := Eq.{1} +@315 := Option.{0} +@316 := @315 @71 +@317 := @314 @316 +@324 := LexLeanRuntime.index (@124 @71) @71 (LexLeanRuntime.instIndexableList @71) +@328 := @317 (@324 (@72 @307) @127) +@329 := Option.some.{0} +@330 := @329 @71 +@331 := @330 @129 +@332 := @328 @331 +@333 := #10 +@337 := @96 @333 @307 @141 @129 +@338 := LexLeanTarget.TargetSyntax.Function.types +@339 := @338 @127 +@340 := @337 @339 +@341 := @315 @305 +@342 := @314 @341 +@343 := LexLeanTarget.TargetSemantics.bindAll +@344 := LexLeanTarget.TargetSyntax.Function.parameters +@349 := @342 (@343 (@344 @135) @127 @66) +@350 := @329 @305 +@351 := @350 @129 +@352 := @349 @351 +@353 := @315 @280 +@354 := @314 @353 +@355 := LexLeanPreservation.Rust.fnFallible +@356 := #11 +@359 := @354 (@355 @356 @307) +@360 := @329 @280 +@361 := @360 @129 +@362 := @359 @361 +@363 := LexLeanPreservation.RunConv +@364 := #13 +@368 := @363 @364 @333 @141 @129 +@370 := @283 @127 @288 +@371 := Exists.{1} +@372 := LexLeanPreservation.Rust.ROut +@373 := @371 @372 +@374 := And +@375 := LexLeanPreservation.Rust.RealizesFn +@379 := @374 (@375 @307 @141 @17) +@380 := LexLeanPreservation.Rust.RCI +@382 := @380 #15 +@383 := LexLeanPreservation.Rust.fnIdent +@384 := @383 @364 +@391 := (hne : @370) -> @373 (fun (ro : @372) => @379 (@382 @384 @356 @17)) +@406 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {f : @3} -> + {fn : @71} -> + {args : @125} -> + {env : @305} -> + {F : @280} -> + {o : @282} -> + (hB : @313) -> + (hfn : @332) -> (hwt : @340) -> (hbind : @352) -> (hF : @362) -> (hA : @368) -> @391 +@408 := LexLeanPreservation.Rust.compose @0 +@409 := @306 @0 +@414 := (n : @3) -> @409 @141 @135 @17 @127 +@415 := @324 @73 +@418 := @317 (@415 @127) @331 +@422 := @107 @307 @141 @129 @339 +@423 := @363 @0 +@426 := @423 @333 @141 @129 +@440 := {c : @9} -> + {A : @10} -> + {f : @3} -> + {fn : @71} -> + {args : @125} -> + {env : @305} -> + {F : @280} -> + {o : @282} -> + (hB : @414) -> + (hfn : @418) -> (hwt : @422) -> (hbind : @352) -> (hF : @362) -> (hA : @426) -> @391 +@441 := @408 @1 +@442 := @409 @1 +@446 := (n : @3) -> @442 @135 @17 @127 +@449 := @115 @141 @129 @339 +@450 := @355 @1 +@453 := @354 (@450 @307) @361 +@454 := @380 @1 +@464 := (hbind : @352) -> + (hF : @453) -> (hA : @426) -> (hne : @370) -> @373 (fun (ro : @372) => @379 (@454 @384 @356 @17)) +@474 := {A : @10} -> + {f : @3} -> + {fn : @71} -> + {args : @125} -> + {env : @305} -> {F : @280} -> {o : @282} -> (hB : @446) -> (hfn : @418) -> (hwt : @449) -> @464 +@475 := @441 @2 +@477 := @442 @2 @17 +@479 := (n : @3) -> @477 @127 +@480 := @121 @129 +@481 := @480 @339 +@490 := {f : @3} -> + {fn : @71} -> + {args : @125} -> + {env : @305} -> {F : @280} -> {o : @282} -> (hB : @479) -> (hfn : @418) -> (hwt : @481) -> @464 +@491 := @475 @60 +@493 := (n : @3) -> @477 @60 +@494 := @415 @60 +@495 := @317 @494 +@496 := @495 @331 +@497 := @450 @60 +@498 := @354 @497 +@499 := @498 @361 +@500 := @423 @60 +@502 := @500 @141 @129 +@504 := @454 (@383 @60) +@512 := (hF : @499) -> (hA : @502) -> (hne : @370) -> @373 (fun (ro : @372) => @379 (@504 @356 @17)) +@521 := {fn : @71} -> + {args : @125} -> + {env : @305} -> + {F : @280} -> {o : @282} -> (hB : @493) -> (hfn : @496) -> (hwt : @481) -> (hbind : @352) -> @512 +@522 := @491 @91 +@524 := @495 (@330 @91) +@525 := @338 @91 +@526 := @480 @525 +@528 := @343 (@344 @91) +@540 := {args : @125} -> + {env : @305} -> + {F : @280} -> + {o : @282} -> + (hB : @493) -> (hfn : @524) -> (hwt : @526) -> (hbind : @342 (@528 @127 @66) @351) -> @512 +@541 := @522 @56 +@542 := @218 @53 +@544 := @121 @542 @525 +@547 := @54 (@5 @135) @53 +@551 := @342 (@528 @547 @66) @351 +@554 := @54 (@5 @307) @53 +@575 := {env : @305} -> + {F : @280} -> + {o : @282} -> + (hB : @493) -> + (hfn : @524) -> + (hwt : @544) -> + (hbind : @551) -> + (hF : @499) -> + (hA : @500 @554 @129) -> + (hne : @370) -> @373 (fun (ro : @372) => @379 (@504 (@54 (@5 #12) @53) @17)) +@576 := @541 @69 +@577 := @232 @53 +@579 := @121 @577 @525 +@587 := @342 (@528 @542 @66) (@350 (@67 (@64 @217) @66)) +@590 := @54 (@5 @141) @53 +@609 := {F : @280} -> + {o : @282} -> + (hB : @493) -> + (hfn : @524) -> + (hwt : @579) -> + (hbind : @587) -> + (hF : @499) -> + (hA : @500 @590 @129) -> + (hne : @370) -> @373 (fun (ro : @372) => @379 (@504 (@54 (@5 @356) @53) @17)) +@610 := @576 @70 +@611 := @249 @525 +@619 := @342 (@528 @577 @66) (@350 (@67 (@64 @231) @66)) +@621 := @498 (@360 @70) +@623 := @500 @547 @129 +@624 := @375 @70 +@643 := {o : @282} -> + (hB : @493) -> + (hfn : @524) -> + (hwt : @611) -> + (hbind : @619) -> + (hF : @621) -> + (hA : @623) -> + (hne : @370) -> @373 (fun (ro : @372) => @374 (@624 @141 @17) (@504 (@54 (@5 @333) @53) @17)) +@644 := @610 @272 +@645 := @257 @525 +@653 := @342 (@528 @248 @66) (@350 (@67 (@64 @214) @66)) +@654 := @500 @542 +@655 := @271 @127 +@656 := @654 @655 +@657 := @271 @135 +@675 := (hB : @493) -> + (hfn : @524) -> + (hwt : @645) -> + (hbind : @653) -> + (hF : @621) -> + (hA : @656) -> + (hne : @283 @657 @288) -> @373 (fun (ro : @372) => @374 (@624 (@271 @307) @17) (@504 @554 @17)) +@676 := @644 @95 +@677 := @265 @525 +@685 := @342 (@528 @256 @66) (@350 (@67 (@64 @228) @66)) +@686 := @500 @577 +@687 := @271 @129 +@705 := (hfn : @524) -> + (hwt : @677) -> + (hbind : @685) -> + (hF : @621) -> + (hA : @686 @687) -> + (hne : @283 @655 @288) -> @373 (fun (ro : @372) => @374 (@624 (@271 @141) @17) (@504 @590 @17)) +@706 := Eq.refl.{1} +@709 := @676 (@706 @316 @494) +@710 := @269 @525 +@718 := @342 (@528 @264 @66) (@350 (@67 (@64 @243) @66)) +@719 := @500 @248 +@720 := @271 @131 +@736 := (hwt : @710) -> + (hbind : @718) -> + (hF : @621) -> + (hA : @719 @720) -> + (hne : @283 @687 @288) -> @373 (fun (ro : @372) => @374 (@624 @657 @17) (@504 @547 @17)) +@737 := @709 @268 +@739 := @528 @56 @66 +@742 := @342 @739 (@350 @69) +@743 := @500 @256 +@744 := @271 @12 +@759 := (hbind : @742) -> + (hF : @621) -> + (hA : @743 @744) -> + (hne : @283 @720 @288) -> @373 (fun (ro : @372) => @374 (@624 @655 @17) (@504 @542 @17)) +@762 := @737 (@706 @341 @739) +@763 := @500 @264 +@764 := @271 @14 +@778 := (hF : @621) -> + (hA : @763 @764) -> + (hne : @283 @744 @288) -> @373 (fun (ro : @372) => @374 (@624 @687 @17) (@504 @577 @17)) +@781 := @762 (@706 @353 @497) +@795 := (hA : @500 @56 @272) -> + (hne : @283 @764 @288) -> @373 (fun (ro : @372) => @374 (@624 @720 @17) (@504 @248 @17)) +@796 := @781 @279 +@807 := (hne : @283 @272 @288) -> @373 (fun (ro : @372) => @374 (@624 @744 @17) (@504 @256 @17)) +@808 := @796 @300 +@814 := @374 (@624 @764 @17) (@504 @264 @17) +@816 := @373 (fun (ro : @372) => @814) +@818 := @373 (fun (__e_ro : @372) => @814) +@822 := LexLeanPreservation.Rust.RepresentableL (@54 @18 @53) +@823 := (__e_hrep : @822) -> @818 +@824 := fun (__e_hrep : @822) => @808 +@825 := (number : @3) -> @823 +@826 := fun (number : @3) => @824 +\end{coremodule} +\end{lexlean} diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R3/RustCore.lean b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R3/RustCore.lean new file mode 100644 index 000000000..09fff080c --- /dev/null +++ b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R3/RustCore.lean @@ -0,0 +1,41 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.RustCore +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0], types := [.nat], result := .nat, + body := (.call 1 [(.var 0), (.value .nat (.nat 0))]) }, + { parameters := [0, 1], types := [.nat, .nat], result := .nat, + body := (.cond (.prim .natLt [(.var 0), (.value .nat (.nat 2))]) (.var 1) (.call 1 [(.prim .natSub [(.var 0), (.value .nat (.nat 2))]), (.prim .natAdd [(.var 1), (.value .nat (.nat 1))])])) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .core, items := [ + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible .nat) (.mk [] (.call (.function 1) [(.copy (.generated .binding 0)), (.lit (.nat 0))] false))), + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false) (.mk [] (.succeed (.copy (.generated .binding 1)))) (.mk [] (.call (.function 1) [(.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.lit (.nat 2)))] (.call (.runtime .natSub) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))), (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] true)))] false)))))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 1) [(.copy (.generated .binding 0)), (.lit (.nat 0))] false), [(0, .nat, (some 0))], rfl, rfl, + (Corr.callF (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 2)))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false) (.mk [] (.succeed (.copy (.generated .binding 1)))) (.mk [] (.call (.function 1) [(.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.lit (.nat 2)))] (.call (.runtime .natSub) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))), (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] true)))] false))), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 2)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.copy (.generated .binding 1)))) (lb := []) (tb := (.call (.function 1) [(.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.lit (.nat 2)))] (.call (.runtime .natSub) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))), (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] true)))] false)) (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl))) (Corr.callF (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.lit (.nat 2)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl)))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | _ + 2 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.RustCore diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R3/RustStd.lean b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R3/RustStd.lean new file mode 100644 index 000000000..cc8eaaa89 --- /dev/null +++ b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R3/RustStd.lean @@ -0,0 +1,41 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0], types := [.nat], result := .nat, + body := (.call 1 [(.var 0), (.value .nat (.nat 0))]) }, + { parameters := [0, 1], types := [.nat, .nat], result := .nat, + body := (.cond (.prim .natLt [(.var 0), (.value .nat (.nat 2))]) (.var 1) (.call 1 [(.prim .natSub [(.var 0), (.value .nat (.nat 2))]), (.prim .natAdd [(.var 1), (.value .nat (.nat 1))])])) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible .nat) (.mk [] (.call (.function 1) [(.copy (.generated .binding 0)), (.lit (.nat 0))] false))), + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false) (.mk [] (.succeed (.copy (.generated .binding 1)))) (.mk [] (.call (.function 1) [(.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.lit (.nat 2)))] (.call (.runtime .natSub) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))), (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] true)))] false)))))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 1) [(.copy (.generated .binding 0)), (.lit (.nat 0))] false), [(0, .nat, (some 0))], rfl, rfl, + (Corr.callF (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 2)))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false) (.mk [] (.succeed (.copy (.generated .binding 1)))) (.mk [] (.call (.function 1) [(.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.lit (.nat 2)))] (.call (.runtime .natSub) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))), (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] true)))] false))), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 2)) none (.lit (.nat 2)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.copy (.generated .binding 1)))) (lb := []) (tb := (.call (.function 1) [(.block (.mk [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.lit (.nat 2)))] (.call (.runtime .natSub) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false))), (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] true)))] false)) (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl))) (Corr.callF (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 4)) none (.lit (.nat 2)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 6)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl)))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | _ + 2 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.RustStd diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R4.lean b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R4.lean new file mode 100644 index 000000000..14eabf1a6 --- /dev/null +++ b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R4.lean @@ -0,0 +1,45 @@ +import LexLeanPreservation.Core +import LexLeanPreservation.Values +import LexLeanPreservation.Primitives +import LexLeanPreservation.Fixed +import LexLeanPreservation.Keys +import LexLeanPreservation.Templates +import LexLeanPreservation.Validate +import Production.Kernel +import Production.Main +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +set_option linter.unusedVariables false +namespace LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4 + +def __prog : _root_.LexLeanTarget.TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0], types := [(.list .nat)], result := .nat, + body := (.call 1 [(.var 0)]) }, + { parameters := [0], types := [(.list .nat)], result := .nat, + body := (.«match» .nat (.var 0) [(.arm .nil [] (.value .nat (.nat 0))), (.arm .cons [1, 2] (.prim .natAdd [(.var 1), (.call 1 [(.var 2)])]))]) }] } + +def __fits_1 : ∀ (values : (List Nat)), Bool + | (List.nil) => (Bool.true && Bool.true) + | (List.cons head tail) => (Bool.true && ((Bool.true && (((Bool.true && Bool.true) && (__fits_1 (tail))) && Bool.true)) && (Nat.blt (head + (Production.Kernel.total (tail))) 18446744073709551616))) + +theorem __rel_1 : ∀ (values : (List Nat)), _root_.LexLeanPreservation.FunRel __prog 1 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) values)] (_root_.LexLeanPreservation.Rel (__fits_1 values) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Production.Kernel.total values))) + | (List.nil) => by rw [__fits_1.eq_def]; exact _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_match (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value)) + | (List.cons head tail) => by rw [__fits_1.eq_def]; exact _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_match (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_1 (tail))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd head (Production.Kernel.total (tail))))))) + +def __fits_0 (values : (List Nat)) : Bool := + ((Bool.true && Bool.true) && (__fits_1 (values))) + +attribute [local irreducible] Production.Kernel.total in +theorem __rel_0 (values : (List Nat)) : _root_.LexLeanPreservation.FunRel __prog 0 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) values)] (_root_.LexLeanPreservation.Rel (__fits_0 values) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Production.Main.sumAll values))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_1 (values))) + +def denote (values : (List Nat)) : _root_.LexLeanPreservation.Obs := + _root_.cond (__fits_0 values) (_root_.LexLeanPreservation.Obs.value ((_root_.LexLeanTarget.TargetSyntax.Value.nat (Production.Main.sumAll values)))) _root_.LexLeanPreservation.Obs.overflow + +theorem root (values : (List Nat)) : _root_.LexLeanPreservation.RunConv __prog 0 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) values)] (_root_.LexLeanPreservation.Rel (__fits_0 values) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Production.Main.sumAll values))) := + _root_.LexLeanPreservation.run_of_funRel (__rel_0 values) + +end LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4 diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R4/Compose/RustStd.lex.tex b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R4/Compose/RustStd.lex.tex new file mode 100644 index 000000000..7bf1e4904 --- /dev/null +++ b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R4/Compose/RustStd.lex.tex @@ -0,0 +1,461 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4, + LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.Compose.RustStd.root : @923 := @924 { + all: [LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.RustStd.program +@1 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.RustStd.krate +@2 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.RustStd.flags +@3 := Nat +@4 := List.{0} +@5 := @4 @3 +@6 := #1 +@7 := LexLeanTarget.TargetSyntax.Value.nat +@8 := LexLeanPreservation.encList +@9 := @8 @3 +@10 := @9 @7 +@11 := @10 @6 +@12 := LexLeanTarget.TargetSyntax.Ty.nat +@13 := LexLeanTarget.TargetSyntax.Ty.list +@14 := @13 @12 +@15 := #0 +@16 := LexLeanTarget.TargetSyntax.Program +@17 := LexLeanPreservation.Rust.RCrate +@18 := LexLeanPreservation.Rust.Flags +@19 := LexLeanPreservation.Rust.WT +@20 := #3 +@21 := @19 @20 +@22 := #2 +@24 := @21 @22 @6 +@25 := @7 @15 +@31 := {p : @16} -> {c : @17} -> {A : @18} -> (n : @3) -> @24 @25 @12 +@33 := LexLeanPreservation.Rust.wt_nat @0 +@34 := @19 @0 +@41 := {c : @17} -> {A : @18} -> (n : @3) -> @34 @22 @6 @25 @12 +@42 := @33 @1 +@43 := @34 @1 +@48 := {A : @18} -> (n : @3) -> @43 @6 @25 @12 +@49 := @42 @2 +@50 := @43 @2 +@51 := @50 @25 +@52 := @51 @12 +@53 := (n : @3) -> @52 +@55 := fun (__x : @3) => @49 @15 +@56 := Sort 1 +@57 := LexLeanTarget.TargetSyntax.Value +@58 := (a._@._internal._hyg.#0 : @15) -> @57 +@59 := LexLeanTarget.TargetSyntax.Ty +@60 := #6 +@61 := @19 @60 +@62 := #5 +@63 := @61 @62 +@64 := #4 +@65 := @63 @64 +@66 := @22 @15 +@69 := (x : @22) -> @65 @66 @6 +@70 := @4 @20 +@71 := #7 +@74 := @19 @71 @60 @62 +@77 := @8 @64 @20 @15 +@78 := @74 @77 +@79 := @13 @22 +@88 := {p : @16} -> + {c : @17} -> + {A : @18} -> {α : @56} -> {e : @58} -> {t : @59} -> (h : @69) -> (xs : @70) -> @78 @79 +@90 := LexLeanPreservation.Rust.wt_encList @0 +@92 := @34 @62 @64 +@106 := {c : @17} -> + {A : @18} -> + {α : @56} -> + {e : @58} -> {t : @59} -> (h : (x : @22) -> @92 @66 @6) -> (xs : @70) -> @34 @60 @62 @77 @79 +@107 := @90 @1 +@108 := @43 @64 +@120 := {A : @18} -> + {α : @56} -> + {e : @58} -> {t : @59} -> (h : (x : @22) -> @108 @66 @6) -> (xs : @70) -> @43 @62 @77 @79 +@121 := @107 @2 +@123 := @50 @66 @6 +@131 := {α : @56} -> {e : @58} -> {t : @59} -> (h : (x : @22) -> @123) -> (xs : @70) -> @50 @77 @79 +@132 := @121 @3 +@142 := {e : (a._@._internal._hyg.#0 : @3) -> @57} -> + {t : @59} -> (h : (x : @3) -> @123) -> (xs : @5) -> @50 (@9 @20 @15) @79 +@143 := @132 @7 +@145 := (x : @3) -> @51 @6 +@146 := @10 @15 +@147 := @50 @146 +@151 := {t : @59} -> (h : @145) -> (xs : @5) -> @147 @79 +@152 := @143 @12 +@156 := (h : (x : @3) -> @52) -> (xs : @5) -> @147 @14 +@158 := @152 @55 @6 +@160 := @50 @11 @14 +@161 := List.nil.{0} +@162 := List.cons.{0} +@163 := @161 @57 +@164 := @162 @57 +@166 := @164 @11 @163 +@169 := Prod.{0, 0} @3 @57 +@170 := 0 +@174 := Prod.mk.{0, 0} @3 @57 @170 +@175 := @174 @11 +@176 := @161 @169 +@177 := @162 @169 +@179 := @177 @175 @176 +@180 := Bool.true +@181 := LexLeanTarget.TargetSyntax.Function +@182 := LexLeanTarget.TargetSyntax.Program.functions +@183 := @182 @0 +@184 := @161 @3 +@185 := @161 @59 +@186 := LexLeanTarget.TargetSyntax.Ty.unit +@187 := LexLeanTarget.TargetSyntax.Value.unit +@190 := LexLeanTarget.TargetSyntax.Expr.value @186 @187 +@195 := LexLeanTarget.TargetSyntax.Function.mk @184 @185 @186 @190 +@200 := List.getD.{0} @181 @183 @170 @195 +@204 := fun (__e_n : @3) => + LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.RustStd.root @15 @170 +@205 := LexLeanPreservation.Rust.WTL +@213 := {p : @16} -> {c : @17} -> {A : @18} -> @205 @22 @6 @15 @163 @185 +@215 := LexLeanPreservation.Rust.wtl_nil @0 +@216 := @205 @0 +@222 := {c : @17} -> {A : @18} -> @216 @6 @15 @163 @185 +@223 := @215 @1 +@224 := @216 @1 +@228 := {A : @18} -> @224 @15 @163 @185 +@229 := @223 @2 +@230 := @224 @2 +@231 := @230 @163 +@232 := @231 @185 +@233 := @4 @57 +@234 := @4 @59 +@236 := @65 @20 @22 +@241 := @205 @71 @60 @62 @22 @6 +@242 := #8 +@245 := @205 @242 @71 @60 +@247 := @164 @62 @20 +@248 := @245 @247 +@249 := @162 @59 +@251 := @249 @64 @22 +@261 := {p : @16} -> + {c : @17} -> + {A : @18} -> + {v : @57} -> {t : @59} -> {vs : @233} -> {ts : @234} -> (h : @236) -> (hs : @241) -> @248 @251 +@263 := LexLeanPreservation.Rust.wtl_cons @0 +@281 := {c : @17} -> + {A : @18} -> + {v : @57} -> + {t : @59} -> + {vs : @233} -> + {ts : @234} -> (h : @92 @20 @22) -> (hs : @216 @60 @62 @22 @6) -> @216 @71 @60 @247 @251 +@282 := @263 @1 +@297 := {A : @18} -> + {v : @57} -> + {t : @59} -> + {vs : @233} -> {ts : @234} -> (h : @108 @20 @22) -> (hs : @224 @62 @22 @6) -> @224 @60 @247 @251 +@298 := @282 @2 +@300 := @50 @20 @22 +@302 := @230 @22 @6 +@310 := {v : @57} -> + {t : @59} -> {vs : @233} -> {ts : @234} -> (h : @300) -> (hs : @302) -> @230 @247 @251 +@311 := @298 @11 +@312 := @10 @64 +@314 := @50 @312 @22 +@315 := @10 @60 +@316 := @164 @315 +@324 := {t : @59} -> {vs : @233} -> {ts : @234} -> (h : @314) -> (hs : @302) -> @230 (@316 @20) @251 +@325 := @311 @14 +@326 := @10 @20 +@328 := @50 @326 @14 +@329 := @10 @62 +@330 := @164 @329 +@332 := @230 (@330 @20) +@333 := @249 @14 +@334 := @333 @22 +@339 := {vs : @233} -> {ts : @234} -> (h : @328) -> (hs : @302) -> @332 @334 +@340 := @325 @163 +@341 := @10 @22 +@343 := @50 @341 @14 +@344 := @231 @6 +@346 := @164 @312 @163 +@347 := @230 @346 +@351 := {ts : @234} -> (h : @343) -> (hs : @344) -> @347 @334 +@352 := @340 @185 +@354 := @164 @326 @163 +@355 := @230 @354 +@356 := @333 @185 +@359 := (h : @160) -> (hs : @232) -> @355 @356 +@360 := @352 @158 +@362 := @164 @341 @163 +@363 := @230 @362 +@365 := (hs : @232) -> @363 @356 +@366 := @360 @229 +@367 := @230 @166 +@368 := @367 @356 +@369 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.denote +@370 := @369 @6 +@371 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.__fits_0 +@372 := @371 @6 +@375 := @7 (Production.Main.sumAll @6) +@377 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.root @6 +@378 := Bool +@379 := Ne.{1} +@380 := LexLeanPreservation.Obs +@381 := @379 @380 +@382 := LexLeanPreservation.Rel +@385 := @381 (@382 @6 @15) +@386 := LexLeanPreservation.Obs.stuck +@389 := (f : @378) -> (v : @57) -> @385 @386 +@391 := LexLeanPreservation.Rust.rel_ne_stuck @372 +@397 := (v : @57) -> @381 (@382 (@371 @22) @15) @386 +@398 := @391 @375 +@402 := @381 (@382 @372 @375) @386 +@403 := @4 @169 +@404 := LexLeanPreservation.Rust.FunSem +@405 := #9 +@411 := (n : @3) -> @404 @405 @242 @71 @15 @60 +@412 := Eq.{1} +@413 := Option.{0} +@414 := @413 @181 +@415 := @412 @414 +@422 := LexLeanRuntime.index (@4 @181) @181 (LexLeanRuntime.instIndexableList @181) +@426 := @415 (@422 (@182 @405) @60) +@427 := Option.some.{0} +@428 := @427 @181 +@429 := @428 @62 +@430 := @426 @429 +@431 := #10 +@435 := @205 @431 @405 @242 @62 +@436 := LexLeanTarget.TargetSyntax.Function.types +@437 := @436 @60 +@438 := @435 @437 +@439 := @413 @403 +@440 := @412 @439 +@441 := LexLeanTarget.TargetSemantics.bindAll +@442 := LexLeanTarget.TargetSyntax.Function.parameters +@447 := @440 (@441 (@442 @71) @60 @176) +@448 := @427 @403 +@449 := @448 @62 +@450 := @447 @449 +@451 := @413 @378 +@452 := @412 @451 +@453 := LexLeanPreservation.Rust.fnFallible +@454 := #11 +@457 := @452 (@453 @454 @405) +@458 := @427 @378 +@459 := @458 @62 +@460 := @457 @459 +@461 := LexLeanPreservation.RunConv +@462 := #13 +@466 := @461 @462 @431 @242 @62 +@468 := @381 @60 @386 +@469 := Exists.{1} +@470 := LexLeanPreservation.Rust.ROut +@471 := @469 @470 +@472 := And +@473 := LexLeanPreservation.Rust.RealizesFn +@477 := @472 (@473 @405 @242 @15) +@478 := LexLeanPreservation.Rust.RCI +@480 := @478 #15 +@481 := LexLeanPreservation.Rust.fnIdent +@482 := @481 @462 +@489 := (hne : @468) -> @471 (fun (ro : @470) => @477 (@480 @482 @454 @15)) +@504 := {p : @16} -> + {c : @17} -> + {A : @18} -> + {f : @3} -> + {fn : @181} -> + {args : @233} -> + {env : @403} -> + {F : @378} -> + {o : @380} -> + (hB : @411) -> + (hfn : @430) -> (hwt : @438) -> (hbind : @450) -> (hF : @460) -> (hA : @466) -> @489 +@506 := LexLeanPreservation.Rust.compose @0 +@507 := @404 @0 +@512 := (n : @3) -> @507 @242 @71 @15 @60 +@513 := @422 @183 +@516 := @415 (@513 @60) @429 +@520 := @216 @405 @242 @62 @437 +@521 := @461 @0 +@524 := @521 @431 @242 @62 +@538 := {c : @17} -> + {A : @18} -> + {f : @3} -> + {fn : @181} -> + {args : @233} -> + {env : @403} -> + {F : @378} -> + {o : @380} -> + (hB : @512) -> + (hfn : @516) -> (hwt : @520) -> (hbind : @450) -> (hF : @460) -> (hA : @524) -> @489 +@539 := @506 @1 +@540 := @507 @1 +@544 := (n : @3) -> @540 @71 @15 @60 +@547 := @224 @242 @62 @437 +@548 := @453 @1 +@551 := @452 (@548 @405) @459 +@552 := @478 @1 +@562 := (hbind : @450) -> + (hF : @551) -> (hA : @524) -> (hne : @468) -> @471 (fun (ro : @470) => @477 (@552 @482 @454 @15)) +@572 := {A : @18} -> + {f : @3} -> + {fn : @181} -> + {args : @233} -> + {env : @403} -> {F : @378} -> {o : @380} -> (hB : @544) -> (hfn : @516) -> (hwt : @547) -> @562 +@573 := @539 @2 +@575 := @540 @2 @15 +@577 := (n : @3) -> @575 @60 +@578 := @230 @62 +@579 := @578 @437 +@588 := {f : @3} -> + {fn : @181} -> + {args : @233} -> + {env : @403} -> {F : @378} -> {o : @380} -> (hB : @577) -> (hfn : @516) -> (hwt : @579) -> @562 +@589 := @573 @170 +@591 := (n : @3) -> @575 @170 +@592 := @513 @170 +@593 := @415 @592 +@594 := @593 @429 +@595 := @548 @170 +@596 := @452 @595 +@597 := @596 @459 +@598 := @521 @170 +@600 := @598 @242 @62 +@602 := @552 (@481 @170) +@610 := (hF : @597) -> (hA : @600) -> (hne : @468) -> @471 (fun (ro : @470) => @477 (@602 @454 @15)) +@619 := {fn : @181} -> + {args : @233} -> + {env : @403} -> + {F : @378} -> {o : @380} -> (hB : @591) -> (hfn : @594) -> (hwt : @579) -> (hbind : @450) -> @610 +@620 := @589 @200 +@622 := @593 (@428 @200) +@623 := @436 @200 +@624 := @578 @623 +@626 := @441 (@442 @200) +@638 := {args : @233} -> + {env : @403} -> + {F : @378} -> + {o : @380} -> + (hB : @591) -> (hfn : @622) -> (hwt : @624) -> (hbind : @440 (@626 @60 @176) @449) -> @610 +@639 := @620 @166 +@640 := @316 @163 +@642 := @230 @640 @623 +@645 := @164 (@10 @71) @163 +@649 := @440 (@626 @645 @176) @449 +@652 := @164 (@10 @405) @163 +@673 := {env : @403} -> + {F : @378} -> + {o : @380} -> + (hB : @591) -> + (hfn : @622) -> + (hwt : @642) -> + (hbind : @649) -> + (hF : @597) -> + (hA : @598 @652 @62) -> + (hne : @468) -> @471 (fun (ro : @470) => @477 (@602 (@164 (@10 #12) @163) @15)) +@674 := @639 @179 +@675 := @330 @163 +@677 := @230 @675 @623 +@685 := @440 (@626 @640 @176) (@448 (@177 (@174 @315) @176)) +@688 := @164 (@10 @242) @163 +@707 := {F : @378} -> + {o : @380} -> + (hB : @591) -> + (hfn : @622) -> + (hwt : @677) -> + (hbind : @685) -> + (hF : @597) -> + (hA : @598 @688 @62) -> + (hne : @468) -> @471 (fun (ro : @470) => @477 (@602 (@164 (@10 @454) @163) @15)) +@708 := @674 @180 +@709 := @347 @623 +@717 := @440 (@626 @675 @176) (@448 (@177 (@174 @329) @176)) +@719 := @596 (@458 @180) +@721 := @598 @645 @62 +@722 := @473 @180 +@741 := {o : @380} -> + (hB : @591) -> + (hfn : @622) -> + (hwt : @709) -> + (hbind : @717) -> + (hF : @719) -> + (hA : @721) -> + (hne : @468) -> @471 (fun (ro : @470) => @472 (@722 @242 @15) (@602 (@164 (@10 @431) @163) @15)) +@742 := @708 @370 +@743 := @355 @623 +@751 := @440 (@626 @346 @176) (@448 (@177 (@174 @312) @176)) +@752 := @598 @640 +@753 := @369 @60 +@754 := @752 @753 +@755 := @369 @71 +@773 := (hB : @591) -> + (hfn : @622) -> + (hwt : @743) -> + (hbind : @751) -> + (hF : @719) -> + (hA : @754) -> + (hne : @381 @755 @386) -> @471 (fun (ro : @470) => @472 (@722 (@369 @405) @15) (@602 @652 @15)) +@774 := @742 @204 +@775 := @363 @623 +@783 := @440 (@626 @354 @176) (@448 (@177 (@174 @326) @176)) +@784 := @598 @675 +@785 := @369 @62 +@803 := (hfn : @622) -> + (hwt : @775) -> + (hbind : @783) -> + (hF : @719) -> + (hA : @784 @785) -> + (hne : @381 @753 @386) -> @471 (fun (ro : @470) => @472 (@722 (@369 @242) @15) (@602 @688 @15)) +@804 := Eq.refl.{1} +@807 := @774 (@804 @414 @592) +@808 := @367 @623 +@816 := @440 (@626 @362 @176) (@448 (@177 (@174 @341) @176)) +@817 := @598 @346 +@818 := @369 @64 +@834 := (hwt : @808) -> + (hbind : @816) -> + (hF : @719) -> + (hA : @817 @818) -> + (hne : @381 @785 @386) -> @471 (fun (ro : @470) => @472 (@722 @755 @15) (@602 @645 @15)) +@835 := @807 @366 +@837 := @626 @166 @176 +@840 := @440 @837 (@448 @179) +@841 := @598 @354 +@842 := @369 @20 +@857 := (hbind : @840) -> + (hF : @719) -> + (hA : @841 @842) -> + (hne : @381 @818 @386) -> @471 (fun (ro : @470) => @472 (@722 @753 @15) (@602 @640 @15)) +@860 := @835 (@804 @439 @837) +@861 := @598 @362 +@862 := @369 @22 +@876 := (hF : @719) -> + (hA : @861 @862) -> + (hne : @381 @842 @386) -> @471 (fun (ro : @470) => @472 (@722 @785 @15) (@602 @675 @15)) +@879 := @860 (@804 @451 @595) +@893 := (hA : @598 @166 @370) -> + (hne : @381 @862 @386) -> @471 (fun (ro : @470) => @472 (@722 @818 @15) (@602 @346 @15)) +@894 := @879 @377 +@905 := (hne : @381 @370 @386) -> @471 (fun (ro : @470) => @472 (@722 @842 @15) (@602 @354 @15)) +@906 := @894 @398 +@912 := @472 (@722 @862 @15) (@602 @362 @15) +@914 := @471 (fun (ro : @470) => @912) +@916 := @471 (fun (__e_ro : @470) => @912) +@920 := LexLeanPreservation.Rust.RepresentableL (@164 @146 @163) +@921 := (__e_hrep : @920) -> @916 +@922 := fun (__e_hrep : @920) => @906 +@923 := (values : @5) -> @921 +@924 := fun (values : @5) => @922 +\end{coremodule} +\end{lexlean} diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R4/RustStd.lean b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R4/RustStd.lean new file mode 100644 index 000000000..5ff93fe30 --- /dev/null +++ b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R4/RustStd.lean @@ -0,0 +1,41 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0], types := [(.list .nat)], result := .nat, + body := (.call 1 [(.var 0)]) }, + { parameters := [0], types := [(.list .nat)], result := .nat, + body := (.«match» .nat (.var 0) [(.arm .nil [] (.value .nat (.nat 0))), (.arm .cons [1, 2] (.prim .natAdd [(.var 1), (.call 1 [(.var 2)])]))]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }] (.fallible .nat) (.mk [] (.call (.function 1) [(.move (.generated .binding 0))] false))), + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 1)) [(.mk .none (.mk [] (.succeed (.lit (.nat 0))))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 3)) none (.call (.function 1) [(.move (.generated .binding 2))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] false)))])))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 1) [(.move (.generated .binding 0))] false), [(0, (.list .nat), (some 0))], rfl, rfl, + (Corr.callF (ts := [(.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 1)) [(.mk .none (.mk [] (.succeed (.lit (.nat 0))))), (.mk (.some (.tuple [(.bind (.generated .binding 1)), (.bind (.generated .binding 2))])) (.mk [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 3)) none (.call (.function 1) [(.move (.generated .binding 2))] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] false)))]), [(0, (.list .nat), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.lit (.nat 0)))) (Corr.mCons (Γ' := [(2, (.list .nat), (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 3)) none (.call (.function 1) [(.move (.generated .binding 2))] true))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 2)), (.move (.generated .operand 3))] false)) (Corr.mNil) rfl rfl rfl (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl)))) rfl rfl rfl)⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | _ + 2 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.RustStd diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R5.lean b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R5.lean new file mode 100644 index 000000000..12a6c5174 --- /dev/null +++ b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R5.lean @@ -0,0 +1,43 @@ +import LexLeanPreservation.Core +import LexLeanPreservation.Values +import LexLeanPreservation.Primitives +import LexLeanPreservation.Fixed +import LexLeanPreservation.Keys +import LexLeanPreservation.Templates +import LexLeanPreservation.Validate +import Production.Kernel +import Production.Main +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +set_option linter.unusedVariables false +namespace LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5 + +def __prog : _root_.LexLeanTarget.TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0], types := [(.list .nat)], result := .nat, + body := (.call 1 [(.var 0), (.value .nat (.nat 0))]) }, + { parameters := [0, 1], types := [(.list .nat), .nat], result := .nat, + body := (.«match» .nat (.var 0) [(.arm .nil [] (.var 1)), (.arm .cons [2, 3] (.var 2))]) }] } + +def __fits_1 (values : (List Nat)) (fallback : Nat) : Bool := + (Bool.true && ((fun (Item : Type) (__a : (List Item)) (__k0 : Bool) (__k1 : ∀ (head : Item) (tail : (List Item)), Bool) => (match __a with | List.nil => __k0 | List.cons head tail => __k1 head tail : Bool)) Nat values (Bool.true) (fun (head : Nat) (tail : (List Nat)) => Bool.true))) + +theorem __rel_1 (values : (List Nat)) (fallback : Nat) : _root_.LexLeanPreservation.FunRel __prog 1 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) values), (_root_.LexLeanTarget.TargetSyntax.Value.nat fallback)] (_root_.LexLeanPreservation.Rel (__fits_1 values fallback) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Production.Kernel.firstOr Nat values fallback))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (List Nat)) => ((fun (Item : Type) (__a : (List Item)) (__k0 : Bool) (__k1 : ∀ (head : Item) (tail : (List Item)), Bool) => (match __a with | List.nil => __k0 | List.cons head tail => __k1 head tail : Bool)) Nat __a (Bool.true) (fun (head : Nat) (tail : (List Nat)) => Bool.true))) (fun (__a : (List Nat)) => _root_.LexLeanTarget.TargetSyntax.Value.nat ((fun (Item : Type) (__a : (List Item)) (__k0 : Nat) (__k1 : ∀ (head : Item) (tail : (List Item)), Nat) => (match __a with | List.nil => __k0 | List.cons head tail => __k1 head tail : Nat)) Nat __a (fallback) (fun (head : Nat) (tail : (List Nat)) => head))) values (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (List Nat)) _ => match __a with | List.nil => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | List.cons head tail => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl))))) + +def __fits_0 (values : (List Nat)) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && (__fits_1 (values) ((0 : Nat)))) + +attribute [local irreducible] Production.Kernel.firstOr in +theorem __rel_0 (values : (List Nat)) : _root_.LexLeanPreservation.FunRel __prog 0 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) values)] (_root_.LexLeanPreservation.Rel (__fits_0 values) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Production.Main.headOr values))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_1 (values) ((0 : Nat)))) + +def denote (values : (List Nat)) : _root_.LexLeanPreservation.Obs := + _root_.cond (__fits_0 values) (_root_.LexLeanPreservation.Obs.value ((_root_.LexLeanTarget.TargetSyntax.Value.nat (Production.Main.headOr values)))) _root_.LexLeanPreservation.Obs.overflow + +theorem root (values : (List Nat)) : _root_.LexLeanPreservation.RunConv __prog 0 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) values)] (_root_.LexLeanPreservation.Rel (__fits_0 values) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Production.Main.headOr values))) := + _root_.LexLeanPreservation.run_of_funRel (__rel_0 values) + +end LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5 diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R5/Compose/RustStd.lex.tex b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R5/Compose/RustStd.lex.tex new file mode 100644 index 000000000..34229d7f6 --- /dev/null +++ b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R5/Compose/RustStd.lex.tex @@ -0,0 +1,461 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5, + LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.Compose.RustStd.root : @923 := @924 { + all: [LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.RustStd.program +@1 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.RustStd.krate +@2 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.RustStd.flags +@3 := Nat +@4 := List.{0} +@5 := @4 @3 +@6 := #1 +@7 := LexLeanTarget.TargetSyntax.Value.nat +@8 := LexLeanPreservation.encList +@9 := @8 @3 +@10 := @9 @7 +@11 := @10 @6 +@12 := LexLeanTarget.TargetSyntax.Ty.nat +@13 := LexLeanTarget.TargetSyntax.Ty.list +@14 := @13 @12 +@15 := #0 +@16 := LexLeanTarget.TargetSyntax.Program +@17 := LexLeanPreservation.Rust.RCrate +@18 := LexLeanPreservation.Rust.Flags +@19 := LexLeanPreservation.Rust.WT +@20 := #3 +@21 := @19 @20 +@22 := #2 +@24 := @21 @22 @6 +@25 := @7 @15 +@31 := {p : @16} -> {c : @17} -> {A : @18} -> (n : @3) -> @24 @25 @12 +@33 := LexLeanPreservation.Rust.wt_nat @0 +@34 := @19 @0 +@41 := {c : @17} -> {A : @18} -> (n : @3) -> @34 @22 @6 @25 @12 +@42 := @33 @1 +@43 := @34 @1 +@48 := {A : @18} -> (n : @3) -> @43 @6 @25 @12 +@49 := @42 @2 +@50 := @43 @2 +@51 := @50 @25 +@52 := @51 @12 +@53 := (n : @3) -> @52 +@55 := fun (__x : @3) => @49 @15 +@56 := Sort 1 +@57 := LexLeanTarget.TargetSyntax.Value +@58 := (a._@._internal._hyg.#0 : @15) -> @57 +@59 := LexLeanTarget.TargetSyntax.Ty +@60 := #6 +@61 := @19 @60 +@62 := #5 +@63 := @61 @62 +@64 := #4 +@65 := @63 @64 +@66 := @22 @15 +@69 := (x : @22) -> @65 @66 @6 +@70 := @4 @20 +@71 := #7 +@74 := @19 @71 @60 @62 +@77 := @8 @64 @20 @15 +@78 := @74 @77 +@79 := @13 @22 +@88 := {p : @16} -> + {c : @17} -> + {A : @18} -> {α : @56} -> {e : @58} -> {t : @59} -> (h : @69) -> (xs : @70) -> @78 @79 +@90 := LexLeanPreservation.Rust.wt_encList @0 +@92 := @34 @62 @64 +@106 := {c : @17} -> + {A : @18} -> + {α : @56} -> + {e : @58} -> {t : @59} -> (h : (x : @22) -> @92 @66 @6) -> (xs : @70) -> @34 @60 @62 @77 @79 +@107 := @90 @1 +@108 := @43 @64 +@120 := {A : @18} -> + {α : @56} -> + {e : @58} -> {t : @59} -> (h : (x : @22) -> @108 @66 @6) -> (xs : @70) -> @43 @62 @77 @79 +@121 := @107 @2 +@123 := @50 @66 @6 +@131 := {α : @56} -> {e : @58} -> {t : @59} -> (h : (x : @22) -> @123) -> (xs : @70) -> @50 @77 @79 +@132 := @121 @3 +@142 := {e : (a._@._internal._hyg.#0 : @3) -> @57} -> + {t : @59} -> (h : (x : @3) -> @123) -> (xs : @5) -> @50 (@9 @20 @15) @79 +@143 := @132 @7 +@145 := (x : @3) -> @51 @6 +@146 := @10 @15 +@147 := @50 @146 +@151 := {t : @59} -> (h : @145) -> (xs : @5) -> @147 @79 +@152 := @143 @12 +@156 := (h : (x : @3) -> @52) -> (xs : @5) -> @147 @14 +@158 := @152 @55 @6 +@160 := @50 @11 @14 +@161 := List.nil.{0} +@162 := List.cons.{0} +@163 := @161 @57 +@164 := @162 @57 +@166 := @164 @11 @163 +@169 := Prod.{0, 0} @3 @57 +@170 := 0 +@174 := Prod.mk.{0, 0} @3 @57 @170 +@175 := @174 @11 +@176 := @161 @169 +@177 := @162 @169 +@179 := @177 @175 @176 +@180 := Bool.false +@181 := LexLeanTarget.TargetSyntax.Function +@182 := LexLeanTarget.TargetSyntax.Program.functions +@183 := @182 @0 +@184 := @161 @3 +@185 := @161 @59 +@186 := LexLeanTarget.TargetSyntax.Ty.unit +@187 := LexLeanTarget.TargetSyntax.Value.unit +@190 := LexLeanTarget.TargetSyntax.Expr.value @186 @187 +@195 := LexLeanTarget.TargetSyntax.Function.mk @184 @185 @186 @190 +@200 := List.getD.{0} @181 @183 @170 @195 +@204 := fun (__e_n : @3) => + LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.RustStd.root @15 @170 +@205 := LexLeanPreservation.Rust.WTL +@213 := {p : @16} -> {c : @17} -> {A : @18} -> @205 @22 @6 @15 @163 @185 +@215 := LexLeanPreservation.Rust.wtl_nil @0 +@216 := @205 @0 +@222 := {c : @17} -> {A : @18} -> @216 @6 @15 @163 @185 +@223 := @215 @1 +@224 := @216 @1 +@228 := {A : @18} -> @224 @15 @163 @185 +@229 := @223 @2 +@230 := @224 @2 +@231 := @230 @163 +@232 := @231 @185 +@233 := @4 @57 +@234 := @4 @59 +@236 := @65 @20 @22 +@241 := @205 @71 @60 @62 @22 @6 +@242 := #8 +@245 := @205 @242 @71 @60 +@247 := @164 @62 @20 +@248 := @245 @247 +@249 := @162 @59 +@251 := @249 @64 @22 +@261 := {p : @16} -> + {c : @17} -> + {A : @18} -> + {v : @57} -> {t : @59} -> {vs : @233} -> {ts : @234} -> (h : @236) -> (hs : @241) -> @248 @251 +@263 := LexLeanPreservation.Rust.wtl_cons @0 +@281 := {c : @17} -> + {A : @18} -> + {v : @57} -> + {t : @59} -> + {vs : @233} -> + {ts : @234} -> (h : @92 @20 @22) -> (hs : @216 @60 @62 @22 @6) -> @216 @71 @60 @247 @251 +@282 := @263 @1 +@297 := {A : @18} -> + {v : @57} -> + {t : @59} -> + {vs : @233} -> {ts : @234} -> (h : @108 @20 @22) -> (hs : @224 @62 @22 @6) -> @224 @60 @247 @251 +@298 := @282 @2 +@300 := @50 @20 @22 +@302 := @230 @22 @6 +@310 := {v : @57} -> + {t : @59} -> {vs : @233} -> {ts : @234} -> (h : @300) -> (hs : @302) -> @230 @247 @251 +@311 := @298 @11 +@312 := @10 @64 +@314 := @50 @312 @22 +@315 := @10 @60 +@316 := @164 @315 +@324 := {t : @59} -> {vs : @233} -> {ts : @234} -> (h : @314) -> (hs : @302) -> @230 (@316 @20) @251 +@325 := @311 @14 +@326 := @10 @20 +@328 := @50 @326 @14 +@329 := @10 @62 +@330 := @164 @329 +@332 := @230 (@330 @20) +@333 := @249 @14 +@334 := @333 @22 +@339 := {vs : @233} -> {ts : @234} -> (h : @328) -> (hs : @302) -> @332 @334 +@340 := @325 @163 +@341 := @10 @22 +@343 := @50 @341 @14 +@344 := @231 @6 +@346 := @164 @312 @163 +@347 := @230 @346 +@351 := {ts : @234} -> (h : @343) -> (hs : @344) -> @347 @334 +@352 := @340 @185 +@354 := @164 @326 @163 +@355 := @230 @354 +@356 := @333 @185 +@359 := (h : @160) -> (hs : @232) -> @355 @356 +@360 := @352 @158 +@362 := @164 @341 @163 +@363 := @230 @362 +@365 := (hs : @232) -> @363 @356 +@366 := @360 @229 +@367 := @230 @166 +@368 := @367 @356 +@369 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.denote +@370 := @369 @6 +@371 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.__fits_0 +@372 := @371 @6 +@375 := @7 (Production.Main.headOr @6) +@377 := LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.root @6 +@378 := Bool +@379 := Ne.{1} +@380 := LexLeanPreservation.Obs +@381 := @379 @380 +@382 := LexLeanPreservation.Rel +@385 := @381 (@382 @6 @15) +@386 := LexLeanPreservation.Obs.stuck +@389 := (f : @378) -> (v : @57) -> @385 @386 +@391 := LexLeanPreservation.Rust.rel_ne_stuck @372 +@397 := (v : @57) -> @381 (@382 (@371 @22) @15) @386 +@398 := @391 @375 +@402 := @381 (@382 @372 @375) @386 +@403 := @4 @169 +@404 := LexLeanPreservation.Rust.FunSem +@405 := #9 +@411 := (n : @3) -> @404 @405 @242 @71 @15 @60 +@412 := Eq.{1} +@413 := Option.{0} +@414 := @413 @181 +@415 := @412 @414 +@422 := LexLeanRuntime.index (@4 @181) @181 (LexLeanRuntime.instIndexableList @181) +@426 := @415 (@422 (@182 @405) @60) +@427 := Option.some.{0} +@428 := @427 @181 +@429 := @428 @62 +@430 := @426 @429 +@431 := #10 +@435 := @205 @431 @405 @242 @62 +@436 := LexLeanTarget.TargetSyntax.Function.types +@437 := @436 @60 +@438 := @435 @437 +@439 := @413 @403 +@440 := @412 @439 +@441 := LexLeanTarget.TargetSemantics.bindAll +@442 := LexLeanTarget.TargetSyntax.Function.parameters +@447 := @440 (@441 (@442 @71) @60 @176) +@448 := @427 @403 +@449 := @448 @62 +@450 := @447 @449 +@451 := @413 @378 +@452 := @412 @451 +@453 := LexLeanPreservation.Rust.fnFallible +@454 := #11 +@457 := @452 (@453 @454 @405) +@458 := @427 @378 +@459 := @458 @62 +@460 := @457 @459 +@461 := LexLeanPreservation.RunConv +@462 := #13 +@466 := @461 @462 @431 @242 @62 +@468 := @381 @60 @386 +@469 := Exists.{1} +@470 := LexLeanPreservation.Rust.ROut +@471 := @469 @470 +@472 := And +@473 := LexLeanPreservation.Rust.RealizesFn +@477 := @472 (@473 @405 @242 @15) +@478 := LexLeanPreservation.Rust.RCI +@480 := @478 #15 +@481 := LexLeanPreservation.Rust.fnIdent +@482 := @481 @462 +@489 := (hne : @468) -> @471 (fun (ro : @470) => @477 (@480 @482 @454 @15)) +@504 := {p : @16} -> + {c : @17} -> + {A : @18} -> + {f : @3} -> + {fn : @181} -> + {args : @233} -> + {env : @403} -> + {F : @378} -> + {o : @380} -> + (hB : @411) -> + (hfn : @430) -> (hwt : @438) -> (hbind : @450) -> (hF : @460) -> (hA : @466) -> @489 +@506 := LexLeanPreservation.Rust.compose @0 +@507 := @404 @0 +@512 := (n : @3) -> @507 @242 @71 @15 @60 +@513 := @422 @183 +@516 := @415 (@513 @60) @429 +@520 := @216 @405 @242 @62 @437 +@521 := @461 @0 +@524 := @521 @431 @242 @62 +@538 := {c : @17} -> + {A : @18} -> + {f : @3} -> + {fn : @181} -> + {args : @233} -> + {env : @403} -> + {F : @378} -> + {o : @380} -> + (hB : @512) -> + (hfn : @516) -> (hwt : @520) -> (hbind : @450) -> (hF : @460) -> (hA : @524) -> @489 +@539 := @506 @1 +@540 := @507 @1 +@544 := (n : @3) -> @540 @71 @15 @60 +@547 := @224 @242 @62 @437 +@548 := @453 @1 +@551 := @452 (@548 @405) @459 +@552 := @478 @1 +@562 := (hbind : @450) -> + (hF : @551) -> (hA : @524) -> (hne : @468) -> @471 (fun (ro : @470) => @477 (@552 @482 @454 @15)) +@572 := {A : @18} -> + {f : @3} -> + {fn : @181} -> + {args : @233} -> + {env : @403} -> {F : @378} -> {o : @380} -> (hB : @544) -> (hfn : @516) -> (hwt : @547) -> @562 +@573 := @539 @2 +@575 := @540 @2 @15 +@577 := (n : @3) -> @575 @60 +@578 := @230 @62 +@579 := @578 @437 +@588 := {f : @3} -> + {fn : @181} -> + {args : @233} -> + {env : @403} -> {F : @378} -> {o : @380} -> (hB : @577) -> (hfn : @516) -> (hwt : @579) -> @562 +@589 := @573 @170 +@591 := (n : @3) -> @575 @170 +@592 := @513 @170 +@593 := @415 @592 +@594 := @593 @429 +@595 := @548 @170 +@596 := @452 @595 +@597 := @596 @459 +@598 := @521 @170 +@600 := @598 @242 @62 +@602 := @552 (@481 @170) +@610 := (hF : @597) -> (hA : @600) -> (hne : @468) -> @471 (fun (ro : @470) => @477 (@602 @454 @15)) +@619 := {fn : @181} -> + {args : @233} -> + {env : @403} -> + {F : @378} -> {o : @380} -> (hB : @591) -> (hfn : @594) -> (hwt : @579) -> (hbind : @450) -> @610 +@620 := @589 @200 +@622 := @593 (@428 @200) +@623 := @436 @200 +@624 := @578 @623 +@626 := @441 (@442 @200) +@638 := {args : @233} -> + {env : @403} -> + {F : @378} -> + {o : @380} -> + (hB : @591) -> (hfn : @622) -> (hwt : @624) -> (hbind : @440 (@626 @60 @176) @449) -> @610 +@639 := @620 @166 +@640 := @316 @163 +@642 := @230 @640 @623 +@645 := @164 (@10 @71) @163 +@649 := @440 (@626 @645 @176) @449 +@652 := @164 (@10 @405) @163 +@673 := {env : @403} -> + {F : @378} -> + {o : @380} -> + (hB : @591) -> + (hfn : @622) -> + (hwt : @642) -> + (hbind : @649) -> + (hF : @597) -> + (hA : @598 @652 @62) -> + (hne : @468) -> @471 (fun (ro : @470) => @477 (@602 (@164 (@10 #12) @163) @15)) +@674 := @639 @179 +@675 := @330 @163 +@677 := @230 @675 @623 +@685 := @440 (@626 @640 @176) (@448 (@177 (@174 @315) @176)) +@688 := @164 (@10 @242) @163 +@707 := {F : @378} -> + {o : @380} -> + (hB : @591) -> + (hfn : @622) -> + (hwt : @677) -> + (hbind : @685) -> + (hF : @597) -> + (hA : @598 @688 @62) -> + (hne : @468) -> @471 (fun (ro : @470) => @477 (@602 (@164 (@10 @454) @163) @15)) +@708 := @674 @180 +@709 := @347 @623 +@717 := @440 (@626 @675 @176) (@448 (@177 (@174 @329) @176)) +@719 := @596 (@458 @180) +@721 := @598 @645 @62 +@722 := @473 @180 +@741 := {o : @380} -> + (hB : @591) -> + (hfn : @622) -> + (hwt : @709) -> + (hbind : @717) -> + (hF : @719) -> + (hA : @721) -> + (hne : @468) -> @471 (fun (ro : @470) => @472 (@722 @242 @15) (@602 (@164 (@10 @431) @163) @15)) +@742 := @708 @370 +@743 := @355 @623 +@751 := @440 (@626 @346 @176) (@448 (@177 (@174 @312) @176)) +@752 := @598 @640 +@753 := @369 @60 +@754 := @752 @753 +@755 := @369 @71 +@773 := (hB : @591) -> + (hfn : @622) -> + (hwt : @743) -> + (hbind : @751) -> + (hF : @719) -> + (hA : @754) -> + (hne : @381 @755 @386) -> @471 (fun (ro : @470) => @472 (@722 (@369 @405) @15) (@602 @652 @15)) +@774 := @742 @204 +@775 := @363 @623 +@783 := @440 (@626 @354 @176) (@448 (@177 (@174 @326) @176)) +@784 := @598 @675 +@785 := @369 @62 +@803 := (hfn : @622) -> + (hwt : @775) -> + (hbind : @783) -> + (hF : @719) -> + (hA : @784 @785) -> + (hne : @381 @753 @386) -> @471 (fun (ro : @470) => @472 (@722 (@369 @242) @15) (@602 @688 @15)) +@804 := Eq.refl.{1} +@807 := @774 (@804 @414 @592) +@808 := @367 @623 +@816 := @440 (@626 @362 @176) (@448 (@177 (@174 @341) @176)) +@817 := @598 @346 +@818 := @369 @64 +@834 := (hwt : @808) -> + (hbind : @816) -> + (hF : @719) -> + (hA : @817 @818) -> + (hne : @381 @785 @386) -> @471 (fun (ro : @470) => @472 (@722 @755 @15) (@602 @645 @15)) +@835 := @807 @366 +@837 := @626 @166 @176 +@840 := @440 @837 (@448 @179) +@841 := @598 @354 +@842 := @369 @20 +@857 := (hbind : @840) -> + (hF : @719) -> + (hA : @841 @842) -> + (hne : @381 @818 @386) -> @471 (fun (ro : @470) => @472 (@722 @753 @15) (@602 @640 @15)) +@860 := @835 (@804 @439 @837) +@861 := @598 @362 +@862 := @369 @22 +@876 := (hF : @719) -> + (hA : @861 @862) -> + (hne : @381 @842 @386) -> @471 (fun (ro : @470) => @472 (@722 @785 @15) (@602 @675 @15)) +@879 := @860 (@804 @451 @595) +@893 := (hA : @598 @166 @370) -> + (hne : @381 @862 @386) -> @471 (fun (ro : @470) => @472 (@722 @818 @15) (@602 @346 @15)) +@894 := @879 @377 +@905 := (hne : @381 @370 @386) -> @471 (fun (ro : @470) => @472 (@722 @842 @15) (@602 @354 @15)) +@906 := @894 @398 +@912 := @472 (@722 @862 @15) (@602 @362 @15) +@914 := @471 (fun (ro : @470) => @912) +@916 := @471 (fun (__e_ro : @470) => @912) +@920 := LexLeanPreservation.Rust.RepresentableL (@164 @146 @163) +@921 := (__e_hrep : @920) -> @916 +@922 := fun (__e_hrep : @920) => @906 +@923 := (values : @5) -> @921 +@924 := fun (values : @5) => @922 +\end{coremodule} +\end{lexlean} diff --git a/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R5/RustStd.lean b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R5/RustStd.lean new file mode 100644 index 000000000..4af917056 --- /dev/null +++ b/examples/production/expected/verify/preserve/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R5/RustStd.lean @@ -0,0 +1,41 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0], types := [(.list .nat)], result := .nat, + body := (.call 1 [(.var 0), (.value .nat (.nat 0))]) }, + { parameters := [0, 1], types := [(.list .nat), .nat], result := .nat, + body := (.«match» .nat (.var 0) [(.arm .nil [] (.var 1)), (.arm .cons [2, 3] (.var 2))]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }] .nat (.mk [] (.call (.function 1) [(.move (.generated .binding 0)), (.lit (.nat 0))] false))), + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.list .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .nat (.mk [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 1)) [(.mk .none (.mk [] (.copy (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), .wild])) (.mk [] (.copy (.generated .binding 2))))])))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 1) [(.move (.generated .binding 0)), (.lit (.nat 0))] false), [(0, (.list .nat), (some 0))], rfl, rfl, + (Corr.callOps (ts := [(.list .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 1)) [(.mk .none (.mk [] (.copy (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), .wild])) (.mk [] (.copy (.generated .binding 2))))]), [(1, .nat, (some 1)), (0, (.list .nat), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.copy (.generated .binding 1))) (Corr.mCons (Γ' := [(3, (.list .nat), none), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.list .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.copy (.generated .binding 2))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | _ + 2 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.RustStd diff --git a/examples/production/expected/verify/preserve/audit.txt b/examples/production/expected/verify/preserve/audit.txt index ab2556964..2590bf742 100644 --- a/examples/production/expected/verify/preserve/audit.txt +++ b/examples/production/expected/verify/preserve/audit.txt @@ -7737,74 +7737,74 @@ 'LexLeanPreservation.encOption.eq_2' does not depend on any axioms 'LexLeanPreservation.encPair.eq_1' does not depend on any axioms 'LexLeanPreservation.encUnit.eq_1' does not depend on any axioms -'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.RustCore.root' depends on axioms: [propext, +'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.RustCore.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.RustCore.root' depends on axioms: [propext, +'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.RustCore.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.RustCore.root' depends on axioms: [propext, +'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.RustCore.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.RustCore.root' depends on axioms: [propext, +'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.RustCore.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.Compose.RustCore.root' depends on axioms: [propext, +'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.Compose.RustCore.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.Compose.RustCore.root' depends on axioms: [propext, +'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.Compose.RustCore.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.Compose.RustCore.root' depends on axioms: [propext, +'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.Compose.RustCore.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.Compose.RustCore.root' depends on axioms: [propext, +'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.Compose.RustCore.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.Compose.RustCore.__wt_0' depends on axioms: [propext] -'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.Compose.RustStd.__wt_0' depends on axioms: [propext] +'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.Compose.RustCore.__wt_0' depends on axioms: [propext] +'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.Compose.RustStd.__wt_0' depends on axioms: [propext] -- statement vocabulary inductive LexLeanPreservation.Obs : Type number of parameters: 0 diff --git a/examples/production/expected/verify/preserve/preservation.json b/examples/production/expected/verify/preserve/preservation.json index b1e18d153..91381972d 100644 --- a/examples/production/expected/verify/preserve/preservation.json +++ b/examples/production/expected/verify/preserve/preservation.json @@ -1 +1 @@ -{"library":{"axioms":["Classical.choice","Quot.sound","propext"],"registry_sha256":"02de6e4be5a6ae43997bacd3713ea587693b8ac66da4aef567463a535a076ff3"},"roots":[{"byte_length":2450,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0","program":{"byte_length":338,"sha256":"938b367cd5b23f8fb66adc8d4520333ff0e34954395668d2e3b072af86ad3216"},"renderings":[{"byte_length":2119,"composed":{"byte_length":13344,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.Compose.RustCore","sha256":"24129d37f0c77d64b4115e66d37ed32256673a55a44fa9cfd1e6a543e9bdcdea","theorem":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.Compose.RustCore.root"},"crate":{"byte_length":3976,"sha256":"a9ae0afab91c841fada5f7d20ccfe8a41dfc2ca90b5b46dab280d5cd17d1385f"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.RustCore","sha256":"13683baefae531981ebea8ad3a81060383b45974a2e4d923db43afaaa671c895","target":"rust-core","theorem":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.RustCore.root"},{"byte_length":2116,"composed":{"byte_length":13335,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.Compose.RustStd","sha256":"48b6419c6ad0b4ba5abc87f48b2ea555a84db02379545bf6af78545630565ce4","theorem":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.Compose.RustStd.root"},"crate":{"byte_length":12894,"sha256":"9b5d12145ec61a1e7c8b36c9ae4a493ad5897ccaf7c764cbf360f4e9a6cea8e6"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.RustStd","sha256":"46723f0b48797e58aba7952d87099123cff866974c33e5fc4bd441e4eca1a1c0","target":"rust-std","theorem":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.RustStd.root"}],"root":"Production.Main.checkedSum","sha256":"45c95f47d885217841b48001c7340dbe71a7104c8d7612978bfa1a4902fa986f","targets":["rust-core","rust-std"],"theorem":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.root"},{"byte_length":6583,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1","program":{"byte_length":1055,"sha256":"f21fc970908e57448e4db7c06bf2b57fee84f4b8734cbbf1ac327c6ee4ab6215"},"renderings":[{"byte_length":6377,"composed":{"byte_length":16804,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.Compose.RustCore","sha256":"9108116741af0d8bcf422314a4900253d15f8a55d5faf880f5fd76966974a2a2","theorem":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.Compose.RustCore.root"},"crate":{"byte_length":4405,"sha256":"ca17d7510141e6e1b02dccc85a256a77785a5103f5a826747ea80ab9c1fb86bd"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.RustCore","sha256":"a86e0030be179ea98057f1f898f2d7487c1f58c5a3274f32ff6385765f8b0046","target":"rust-core","theorem":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.RustCore.root"},{"byte_length":6374,"composed":{"byte_length":16791,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.Compose.RustStd","sha256":"770438f47f0bfa35459a1e079093e672268e380f0efb1e512761e5fe6f56cd6f","theorem":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.Compose.RustStd.root"},"crate":{"byte_length":13323,"sha256":"513d47124349518781071d810b7d6ee6eda7aad8ae16d6d0fb34990f19bb55f7"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.RustStd","sha256":"c9501ca9f37c3cd65b6c8739a57ac0a251173e39599860e37851dc06ba98af2f","target":"rust-std","theorem":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.RustStd.root"}],"root":"Production.Main.shapeArea","sha256":"3f9cfeee17967b3ac746424d7f46307e7150264c7254f68affb95b48e88cdf6d","targets":["rust-core","rust-std"],"theorem":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.root"},{"byte_length":4724,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2","program":{"byte_length":725,"sha256":"6853b4945864259f1da2a6fc5277607d3e4c3c725d8be3dfd7cd38000ab16928"},"renderings":[{"byte_length":4438,"composed":{"byte_length":12040,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.Compose.RustCore","sha256":"f9bf8bd9bcbd1afd90f1fe68074820ad6e740fe2f471c6b67c4bcdcd60026c5d","theorem":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.Compose.RustCore.root"},"crate":{"byte_length":4314,"sha256":"8a91ac04eaa493de8edac523d3ac4a799351d7a2b214f2eb1badeb0ac9fbdfa8"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.RustCore","sha256":"c04870f095f4f606fbfb6fb9f75183781a8541176adeecd03354fd411eb14b80","target":"rust-core","theorem":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.RustCore.root"},{"byte_length":4435,"composed":{"byte_length":12029,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.Compose.RustStd","sha256":"ae7a8fc8d2f278b61c122d1f0adb58531bdeae5ab2534c174dde42a7df686854","theorem":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.Compose.RustStd.root"},"crate":{"byte_length":13232,"sha256":"60e3d73c22b61aae4921ed8290cc78aa71cefc726f1d940ccac0d9daa1da7b37"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.RustStd","sha256":"943b8657452b5164eeee60853aab775ac2573d391ac0b09c3a2d38e7e21c9cc3","target":"rust-std","theorem":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.RustStd.root"}],"root":"Production.Main.quadruple","sha256":"18c12987556392e2e59cdf552a5e0c0c7dde6773ea07c0828621f66cc9d5a4e3","targets":["rust-core","rust-std"],"theorem":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.root"},{"byte_length":5629,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3","program":{"byte_length":962,"sha256":"4e73456e09ab92d80df1297c17a2a129e17822ff1c88cc30ec946ac7b5d21df3"},"renderings":[{"byte_length":5904,"composed":{"byte_length":12041,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.Compose.RustCore","sha256":"c021afd2ce2cd097c75e383e46cdec3fae32ccf6eb959155c0c6a3a630f7127b","theorem":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.Compose.RustCore.root"},"crate":{"byte_length":4245,"sha256":"5d0c2369b0094a573935f6f3e8ec55ee8377e2716cdf91f69eafbdccfd576350"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.RustCore","sha256":"9cb84a401810269d4a9ca6d302e218378e50c5d2f863c6feaa7b1a4f66f0fd01","target":"rust-core","theorem":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.RustCore.root"},{"byte_length":5901,"composed":{"byte_length":12030,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.Compose.RustStd","sha256":"64f765ae8c248c14e829ec187ca83e416aafdbb4de3a20b54dba7f14fcfb197e","theorem":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.Compose.RustStd.root"},"crate":{"byte_length":13163,"sha256":"0e3de250af7f0d8ab8b78cf05b26a348482821e96656854d81acde5d0045176d"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.RustStd","sha256":"552f936ec820f26a9ad94b21611dcc65b92ff39040af4eb096f9d5ea4d9d89dd","target":"rust-std","theorem":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.RustStd.root"}],"root":"Production.Main.halvings","sha256":"df92dc9f77be1123bd9a67521a0d11a4bf62179993f5fe37e444611419c1dcd2","targets":["rust-core","rust-std"],"theorem":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.root"},{"byte_length":3911,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4","program":{"byte_length":730,"sha256":"8ff4684c89e1a22e97417561a676319cab5351c711d244d980c53acc6160e821"},"renderings":[{"byte_length":4099,"composed":{"byte_length":13516,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.Compose.RustStd","sha256":"fe2f9b210b3b53bd286a300e1a33482fede565e29619916ede010d2034ed5076","theorem":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.Compose.RustStd.root"},"crate":{"byte_length":13085,"sha256":"83b2d122dec85436570c0f5b42cf87a311265a21df42e733c2f90555a4797e2e"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.RustStd","sha256":"ab0642e6f95fb34a3e56263b4628a32e3ebf9b5517daeb78d5c55ae4d936dbc1","target":"rust-std","theorem":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.RustStd.root"}],"root":"Production.Main.sumAll","sha256":"3900ce9f6eaabf4fc8f464a7528a6dcc99d1ef27a001edb434182aa77898664f","targets":["rust-std"],"theorem":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.root"},{"byte_length":4321,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5","program":{"byte_length":645,"sha256":"fd195b2e7a605141c794aa55f45159309d1e64be3c91ea5076f013e04dd08ec8"},"renderings":[{"byte_length":3226,"composed":{"byte_length":13517,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.Compose.RustStd","sha256":"059e0d52ec8e27488dfd8ec395979964c5e7de37d011bae30f370d52693340bf","theorem":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.Compose.RustStd.root"},"crate":{"byte_length":13019,"sha256":"0d6a4f61233b7dba3058013d7ce78e556bdbb28e9cd31915fdf5c2be8bcca08a"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.RustStd","sha256":"358591d3b791ea3da19091d0a45504b3f56e6dd836142a9abcde201006ffd85c","target":"rust-std","theorem":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.RustStd.root"}],"root":"Production.Main.headOr","sha256":"0f1f8d4bdd2fe58a0c5bda0a13b89300f1133e02341c9a10f0b9dca0746ec76a","targets":["rust-std"],"theorem":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.root"}],"spec":"lexlean/preservation/1"} +{"library":{"axioms":["Classical.choice","Quot.sound","propext"],"registry_sha256":"02de6e4be5a6ae43997bacd3713ea587693b8ac66da4aef567463a535a076ff3"},"roots":[{"byte_length":2450,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0","program":{"byte_length":338,"sha256":"938b367cd5b23f8fb66adc8d4520333ff0e34954395668d2e3b072af86ad3216"},"renderings":[{"byte_length":2119,"composed":{"byte_length":13344,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.Compose.RustCore","sha256":"c4329046e58fc8991f5dc8011a306a8de1fc41e286c9e00c3437ea89906b1a5f","theorem":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.Compose.RustCore.root"},"crate":{"byte_length":3976,"sha256":"a9ae0afab91c841fada5f7d20ccfe8a41dfc2ca90b5b46dab280d5cd17d1385f"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.RustCore","sha256":"9f42f3c695bfc94f21a496308daf7cf09a30d4ff3a93ffb71afef26ffcaa3761","target":"rust-core","theorem":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.RustCore.root"},{"byte_length":2116,"composed":{"byte_length":13335,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.Compose.RustStd","sha256":"14811b1c3bbb37d99ee9e49a08eec142ce249ebe06f7eb969296aa8402ab40c8","theorem":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.Compose.RustStd.root"},"crate":{"byte_length":12894,"sha256":"9b5d12145ec61a1e7c8b36c9ae4a493ad5897ccaf7c764cbf360f4e9a6cea8e6"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.RustStd","sha256":"271c02930fc13541c13b9a5fe393bc0567bbcd84e5b1c1db0e0f25424da544a7","target":"rust-std","theorem":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.RustStd.root"}],"root":"Production.Main.checkedSum","sha256":"048299ccb2b891ee1e32d5b837ad8a4b06cdc734c82816373c9de5eab7b18d30","targets":["rust-core","rust-std"],"theorem":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.root"},{"byte_length":6583,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1","program":{"byte_length":1055,"sha256":"f21fc970908e57448e4db7c06bf2b57fee84f4b8734cbbf1ac327c6ee4ab6215"},"renderings":[{"byte_length":6377,"composed":{"byte_length":16804,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.Compose.RustCore","sha256":"d973dc5ef63579c6bc8e6da477f2a13e6fd73e5503925d9886a7b9ff0b8482a6","theorem":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.Compose.RustCore.root"},"crate":{"byte_length":4405,"sha256":"ca17d7510141e6e1b02dccc85a256a77785a5103f5a826747ea80ab9c1fb86bd"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.RustCore","sha256":"83a599a5416442cdbf509aeaa58e39ded6df5cccfafe05f80760d0c0c9147fe9","target":"rust-core","theorem":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.RustCore.root"},{"byte_length":6374,"composed":{"byte_length":16791,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.Compose.RustStd","sha256":"355965761f280e4e83517d08cb02779e8760e6050fff311851fa5b912e0e53d6","theorem":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.Compose.RustStd.root"},"crate":{"byte_length":13323,"sha256":"513d47124349518781071d810b7d6ee6eda7aad8ae16d6d0fb34990f19bb55f7"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.RustStd","sha256":"2da8fc10a612e72e7a8e79706e9f6b2598bc40fbd7c5227a36c0ff63e37ff556","target":"rust-std","theorem":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.RustStd.root"}],"root":"Production.Main.shapeArea","sha256":"723bdea3cf78873c857e761c96b990b74343e27326995a6571f5a0cb763d9228","targets":["rust-core","rust-std"],"theorem":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.root"},{"byte_length":4724,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2","program":{"byte_length":725,"sha256":"6853b4945864259f1da2a6fc5277607d3e4c3c725d8be3dfd7cd38000ab16928"},"renderings":[{"byte_length":4438,"composed":{"byte_length":12040,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.Compose.RustCore","sha256":"08243fc9512a73c025f4b4daa1cac46c03d5ae445e7f939af7bec11dbdf6017a","theorem":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.Compose.RustCore.root"},"crate":{"byte_length":4314,"sha256":"8a91ac04eaa493de8edac523d3ac4a799351d7a2b214f2eb1badeb0ac9fbdfa8"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.RustCore","sha256":"d46ff903a7735fbf2cf7efb586eccd543042bab1f233e9aa9e8e97110066fba3","target":"rust-core","theorem":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.RustCore.root"},{"byte_length":4435,"composed":{"byte_length":12029,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.Compose.RustStd","sha256":"0390c48a0729882baafe15ec0ad6452f6e7e15fb8f8d3de01d1f006ce20ab312","theorem":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.Compose.RustStd.root"},"crate":{"byte_length":13232,"sha256":"60e3d73c22b61aae4921ed8290cc78aa71cefc726f1d940ccac0d9daa1da7b37"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.RustStd","sha256":"aa5a39707fbf78ca5fc82abf20ae9b390a85f096e1f477deafac125d7104a850","target":"rust-std","theorem":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.RustStd.root"}],"root":"Production.Main.quadruple","sha256":"8dd3dccd47189bef94a24f791d365999ccaba27fd95b9bc048fba159e90280b5","targets":["rust-core","rust-std"],"theorem":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.root"},{"byte_length":5629,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3","program":{"byte_length":962,"sha256":"4e73456e09ab92d80df1297c17a2a129e17822ff1c88cc30ec946ac7b5d21df3"},"renderings":[{"byte_length":5904,"composed":{"byte_length":12041,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.Compose.RustCore","sha256":"7d8468df0119b0b1de97aba9dcaf8ae0a1df138b3262de094a53eea9119e2793","theorem":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.Compose.RustCore.root"},"crate":{"byte_length":4245,"sha256":"5d0c2369b0094a573935f6f3e8ec55ee8377e2716cdf91f69eafbdccfd576350"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.RustCore","sha256":"548bcee5e2aa593acb875823086c8aa0105b11cd9c7d98c2ae033f784c8ebbd8","target":"rust-core","theorem":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.RustCore.root"},{"byte_length":5901,"composed":{"byte_length":12030,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.Compose.RustStd","sha256":"067394853b5eb5034ebdd41134ca83b70fcdb6ce63dcfa43d742ca6db6efe905","theorem":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.Compose.RustStd.root"},"crate":{"byte_length":13163,"sha256":"0e3de250af7f0d8ab8b78cf05b26a348482821e96656854d81acde5d0045176d"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.RustStd","sha256":"cbb07b75e5d2751bcbff4ff3899cc2cc3b184be7c3efbf3e9077572ef82dd7df","target":"rust-std","theorem":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.RustStd.root"}],"root":"Production.Main.halvings","sha256":"7ee839779603d04d86c948366c39438312a54a6bb271d86ebad1cd2e66e4c3dc","targets":["rust-core","rust-std"],"theorem":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.root"},{"byte_length":3911,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4","program":{"byte_length":730,"sha256":"8ff4684c89e1a22e97417561a676319cab5351c711d244d980c53acc6160e821"},"renderings":[{"byte_length":4099,"composed":{"byte_length":13516,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.Compose.RustStd","sha256":"4050e0ff694a47d3adf898c20766e8824202f3bb0834b78193cef77c99f2a3f3","theorem":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.Compose.RustStd.root"},"crate":{"byte_length":13085,"sha256":"83b2d122dec85436570c0f5b42cf87a311265a21df42e733c2f90555a4797e2e"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.RustStd","sha256":"b18e809c5b4b7ab28265dbde61352cc0a56e0bba3d338b16dc2bc44be7a3da71","target":"rust-std","theorem":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.RustStd.root"}],"root":"Production.Main.sumAll","sha256":"72292e2a8ee0992e14145d6fac45f216b18a5736787308be2715a4e7ec6be0d6","targets":["rust-std"],"theorem":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.root"},{"byte_length":4321,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5","program":{"byte_length":645,"sha256":"fd195b2e7a605141c794aa55f45159309d1e64be3c91ea5076f013e04dd08ec8"},"renderings":[{"byte_length":3226,"composed":{"byte_length":13517,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.Compose.RustStd","sha256":"44db8ee54fb06f61abe2dda28dcd071d9b69f3286a92c9112f99a0251b6c509e","theorem":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.Compose.RustStd.root"},"crate":{"byte_length":13019,"sha256":"0d6a4f61233b7dba3058013d7ce78e556bdbb28e9cd31915fdf5c2be8bcca08a"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.RustStd","sha256":"e1f847b6a4e2dbe4a9b03bb7c4e3f0f80940ec2b82332e644202756d40aff3f3","target":"rust-std","theorem":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.RustStd.root"}],"root":"Production.Main.headOr","sha256":"ba84212d7dc0c188b3edab3f0b63125dd00ecb805e61a176de5495adbb6a187a","targets":["rust-std"],"theorem":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.root"}],"spec":"lexlean/preservation/1"} diff --git a/examples/production/expected/verify/probe/LexLeanProbe.Pecf58505f4e2844618eff0bdc9a2ce9d.lean b/examples/production/expected/verify/probe/LexLeanProbe.Pf5a58e441acc8b93ded11826c51cc7c8.lean similarity index 100% rename from examples/production/expected/verify/probe/LexLeanProbe.Pecf58505f4e2844618eff0bdc9a2ce9d.lean rename to examples/production/expected/verify/probe/LexLeanProbe.Pf5a58e441acc8b93ded11826c51cc7c8.lean diff --git a/examples/production/expected/verify/probe/process.json b/examples/production/expected/verify/probe/process.json index 303604c48..0f07077ae 100644 --- a/examples/production/expected/verify/probe/process.json +++ b/examples/production/expected/verify/probe/process.json @@ -1 +1 @@ -{"argv":["env","lean","$STAGING/probe/LexLeanProbe.Pecf58505f4e2844618eff0bdc9a2ce9d.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanProbe.Pecf58505f4e2844618eff0bdc9a2ce9d","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} +{"argv":["env","lean","$STAGING/probe/LexLeanProbe.Pf5a58e441acc8b93ded11826c51cc7c8.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanProbe.Pf5a58e441acc8b93ded11826c51cc7c8","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.Compose.RustCore.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.Compose.RustCore.json deleted file mode 100644 index 6c778bd97..000000000 --- a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.Compose.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.Compose.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.Compose.RustStd.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.Compose.RustStd.json deleted file mode 100644 index 9f06302cf..000000000 --- a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.RustCore.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.RustCore.json deleted file mode 100644 index 7fe15b637..000000000 --- a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.RustStd.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.RustStd.json deleted file mode 100644 index 5aa6800a7..000000000 --- a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.json deleted file mode 100644 index 835c498f2..000000000 --- a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.Compose.RustCore.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.Compose.RustCore.json deleted file mode 100644 index 40c01ff12..000000000 --- a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.Compose.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.Compose.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.Compose.RustStd.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.Compose.RustStd.json deleted file mode 100644 index 504484421..000000000 --- a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.RustCore.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.RustCore.json deleted file mode 100644 index 12308846c..000000000 --- a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.RustStd.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.RustStd.json deleted file mode 100644 index 8bc2c07a3..000000000 --- a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.json deleted file mode 100644 index 52969aefe..000000000 --- a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.Compose.RustCore.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.Compose.RustCore.json deleted file mode 100644 index 450d05cf3..000000000 --- a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.Compose.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.Compose.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.Compose.RustStd.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.Compose.RustStd.json deleted file mode 100644 index 21f2da7a2..000000000 --- a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.RustCore.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.RustCore.json deleted file mode 100644 index 38264d20d..000000000 --- a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.RustStd.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.RustStd.json deleted file mode 100644 index 8209c3d65..000000000 --- a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.json deleted file mode 100644 index df6e12e79..000000000 --- a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.Compose.RustCore.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.Compose.RustCore.json deleted file mode 100644 index a62a4ba5b..000000000 --- a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.Compose.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.Compose.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.Compose.RustStd.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.Compose.RustStd.json deleted file mode 100644 index 90e5319b7..000000000 --- a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.RustCore.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.RustCore.json deleted file mode 100644 index dc9c676a8..000000000 --- a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.RustStd.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.RustStd.json deleted file mode 100644 index 83ed46766..000000000 --- a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.json deleted file mode 100644 index cd7d0505e..000000000 --- a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.Compose.RustStd.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.Compose.RustStd.json deleted file mode 100644 index 962c5f94f..000000000 --- a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.RustStd.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.RustStd.json deleted file mode 100644 index ddc9e8d0d..000000000 --- a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.json deleted file mode 100644 index 69699282b..000000000 --- a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.Compose.RustStd.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.Compose.RustStd.json deleted file mode 100644 index e621aa12c..000000000 --- a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.RustStd.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.RustStd.json deleted file mode 100644 index 6b6b4fd96..000000000 --- a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.json deleted file mode 100644 index e9a50d393..000000000 --- a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.Compose.RustCore.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.Compose.RustCore.json new file mode 100644 index 000000000..c03567884 --- /dev/null +++ b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.Compose.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.Compose.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.Compose.RustStd.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.Compose.RustStd.json new file mode 100644 index 000000000..9fa9dfd11 --- /dev/null +++ b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.RustCore.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.RustCore.json new file mode 100644 index 000000000..325d26c76 --- /dev/null +++ b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.RustStd.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.RustStd.json new file mode 100644 index 000000000..63b0e89d5 --- /dev/null +++ b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.json new file mode 100644 index 000000000..7718259ba --- /dev/null +++ b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.Compose.RustCore.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.Compose.RustCore.json new file mode 100644 index 000000000..c4f2d91e5 --- /dev/null +++ b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.Compose.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.Compose.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.Compose.RustStd.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.Compose.RustStd.json new file mode 100644 index 000000000..bf05be0d6 --- /dev/null +++ b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.RustCore.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.RustCore.json new file mode 100644 index 000000000..f7cf36219 --- /dev/null +++ b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.RustStd.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.RustStd.json new file mode 100644 index 000000000..2b1a18956 --- /dev/null +++ b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.json new file mode 100644 index 000000000..5b9e3631f --- /dev/null +++ b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.Compose.RustCore.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.Compose.RustCore.json new file mode 100644 index 000000000..f4f8bd3d0 --- /dev/null +++ b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.Compose.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.Compose.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.Compose.RustStd.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.Compose.RustStd.json new file mode 100644 index 000000000..30ac3a156 --- /dev/null +++ b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.RustCore.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.RustCore.json new file mode 100644 index 000000000..7583d82d9 --- /dev/null +++ b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.RustStd.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.RustStd.json new file mode 100644 index 000000000..6d8cceebb --- /dev/null +++ b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.json new file mode 100644 index 000000000..7aa30ead5 --- /dev/null +++ b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.Compose.RustCore.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.Compose.RustCore.json new file mode 100644 index 000000000..8ca56da48 --- /dev/null +++ b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.Compose.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.Compose.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.Compose.RustStd.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.Compose.RustStd.json new file mode 100644 index 000000000..0cddc04f1 --- /dev/null +++ b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.RustCore.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.RustCore.json new file mode 100644 index 000000000..3dd0d3967 --- /dev/null +++ b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.RustStd.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.RustStd.json new file mode 100644 index 000000000..c575cc080 --- /dev/null +++ b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.json new file mode 100644 index 000000000..fb266d621 --- /dev/null +++ b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.Compose.RustStd.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.Compose.RustStd.json new file mode 100644 index 000000000..48688325b --- /dev/null +++ b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.RustStd.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.RustStd.json new file mode 100644 index 000000000..1e559bd2b --- /dev/null +++ b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.json new file mode 100644 index 000000000..97307a000 --- /dev/null +++ b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.Compose.RustStd.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.Compose.RustStd.json new file mode 100644 index 000000000..729235972 --- /dev/null +++ b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.RustStd.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.RustStd.json new file mode 100644 index 000000000..9628f86a3 --- /dev/null +++ b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.json b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.json new file mode 100644 index 000000000..b8ddf9738 --- /dev/null +++ b/examples/production/expected/verify/process/leanchecker/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Audit.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Audit.json index d2f4b2ce9..29c7b3090 100644 --- a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Audit.json +++ b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Audit.json @@ -1 +1 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","$STAGING/preserve-src/LexLeanPreserve/Audit.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Audit","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanPreservation.Obs' does not depend on any axioms\n'LexLeanPreservation.obs.match_1' does not depend on any axioms\n'LexLeanPreservation.obs' does not depend on any axioms\n'LexLeanPreservation.Conv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ConvA' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ObsL' does not depend on any axioms\n'LexLeanPreservation.obsL.match_1' does not depend on any axioms\n'LexLeanPreservation.obsL' does not depend on any axioms\n'LexLeanPreservation.ConvL' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.FunRel' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Obs._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.Obs._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.Obs.casesOn' does not depend on any axioms\n'LexLeanPreservation.Obs.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.Obs.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Obs.ctorElim' does not depend on any axioms\n'LexLeanPreservation.Obs.overflow.elim' does not depend on any axioms\n'LexLeanPreservation.Obs.stuck.elim' does not depend on any axioms\n'LexLeanPreservation.Obs.value.elim' does not depend on any axioms\n'LexLeanPreservation.Obs.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.Obs.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Obs.overflow.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Obs.recOn' does not depend on any axioms\n'LexLeanPreservation.Obs.stuck.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Obs.value.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Obs.value.inj' does not depend on any axioms\n'LexLeanPreservation.Obs.value.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Obs.value.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ObsL._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.ObsL._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.ObsL.casesOn' does not depend on any axioms\n'LexLeanPreservation.ObsL.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.ObsL.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.ObsL.ctorElim' does not depend on any axioms\n'LexLeanPreservation.ObsL.overflow.elim' does not depend on any axioms\n'LexLeanPreservation.ObsL.stuck.elim' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.elim' does not depend on any axioms\n'LexLeanPreservation.ObsL.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.ObsL.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ObsL.overflow.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ObsL.recOn' does not depend on any axioms\n'LexLeanPreservation.ObsL.stuck.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.inj' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.injEq' depends on axioms: [propext]\n'LexLeanPreservation.ObsL.values.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rel' does not depend on any axioms\n'LexLeanPreservation.Rel.eq_1' does not depend on any axioms\n'LexLeanPreservation.RelL' does not depend on any axioms\n'LexLeanPreservation.RelL.eq_1' does not depend on any axioms\n'LexLeanPreservation.RunConv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.addSteps_ne' does not depend on any axioms\n'LexLeanPreservation.chargeResult_ne' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.stable.match_1_16' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_18' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_20' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_22' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_24' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_26' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.eval.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.stable' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.evalArms_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs_ne' does not depend on any axioms\n'LexLeanPreservation.convA_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.eval_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs_addSteps' does not depend on any axioms\n'LexLeanPreservation.convA_hit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.convA_miss' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.evalList_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obsL_ne' does not depend on any axioms\n'LexLeanPreservation.convL_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.convL_cons._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.convL_cons._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.convL_cons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.convL_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_apply._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_apply._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_apply._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_apply' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_build' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_call._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_call._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_call' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_closure' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_cond._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_cond._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_field' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_first' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_let._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_let._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_let' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_match._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_match._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_match' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_matchV' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs_chargeResult' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_prim' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_second' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_var' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.funRel_intro' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs.eq_1' does not depend on any axioms\n'LexLeanPreservation.obs.eq_2' does not depend on any axioms\n'LexLeanPreservation.obs.eq_3' does not depend on any axioms\n'LexLeanPreservation.obs.eq_4' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_1' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_2' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_3' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_4' does not depend on any axioms\n'LexLeanPreservation.run_of_funRel' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.run.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ListEnc' does not depend on any axioms\n'LexLeanPreservation.ListEnc._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.ListEnc._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.ListEnc.casesOn' does not depend on any axioms\n'LexLeanPreservation.ListEnc.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.ListEnc.elem' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items' does not depend on any axioms\n'LexLeanPreservation.ListEnc.enc' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_cons' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_eq.match_1_1' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_nil' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_eq._f' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_eq' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.ListEnc.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.ListEnc.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk.inj' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk.injEq' depends on axioms: [propext]\n'LexLeanPreservation.ListEnc.mk.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ListEnc.recOn' does not depend on any axioms\n'LexLeanPreservation.OptEnc' does not depend on any axioms\n'LexLeanPreservation.OptEnc._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.OptEnc._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.OptEnc.casesOn' does not depend on any axioms\n'LexLeanPreservation.OptEnc.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.OptEnc.elem' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc_none' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc_some' does not depend on any axioms\n'LexLeanPreservation.encOption.match_1' does not depend on any axioms\n'LexLeanPreservation.encOption' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc_map' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.OptEnc.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.OptEnc.noConfusion' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk.noConfusion' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk.inj' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk.injEq' depends on axioms: [propext]\n'LexLeanPreservation.OptEnc.mk.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.OptEnc.recOn' does not depend on any axioms\n'LexLeanPreservation.construct_adt' does not depend on any axioms\n'LexLeanPreservation.construct_cons' does not depend on any axioms\n'LexLeanPreservation.construct_error' does not depend on any axioms\n'LexLeanPreservation.construct_false' does not depend on any axioms\n'LexLeanPreservation.construct_nil' does not depend on any axioms\n'LexLeanPreservation.construct_none' does not depend on any axioms\n'LexLeanPreservation.construct_ok' does not depend on any axioms\n'LexLeanPreservation.construct_pair' does not depend on any axioms\n'LexLeanPreservation.construct_some' does not depend on any axioms\n'LexLeanPreservation.construct_succ' does not depend on any axioms\n'LexLeanPreservation.construct_true' does not depend on any axioms\n'LexLeanPreservation.construct_unit' does not depend on any axioms\n'LexLeanPreservation.construct_zero' does not depend on any axioms\n'LexLeanPreservation.encExcept.match_1' does not depend on any axioms\n'LexLeanPreservation.encExcept' does not depend on any axioms\n'LexLeanPreservation.encList' does not depend on any axioms\n'LexLeanPreservation.encOrdering.match_1' does not depend on any axioms\n'LexLeanPreservation.encOrdering' does not depend on any axioms\n'LexLeanPreservation.encPair' does not depend on any axioms\n'LexLeanPreservation.encUnit' does not depend on any axioms\n'LexLeanPreservation.listEnc._proof_1' does not depend on any axioms\n'LexLeanPreservation.listEnc._proof_2' does not depend on any axioms\n'LexLeanPreservation.listEnc' does not depend on any axioms\n'LexLeanPreservation.optEnc._proof_1' does not depend on any axioms\n'LexLeanPreservation.optEnc._proof_2' does not depend on any axioms\n'LexLeanPreservation.optEnc' does not depend on any axioms\n'LexLeanPreservation.bytes_empty' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.bytes_one' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.bytes_zero' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.encOrdering.eq_1' does not depend on any axioms\n'LexLeanPreservation.encOrdering.eq_2' does not depend on any axioms\n'LexLeanPreservation.encOrdering.eq_3' does not depend on any axioms\n'LexLeanPreservation.fromOrdering_encOrdering' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.fromStrings_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.fromStrings_map._f' does not depend on any axioms\n'LexLeanPreservation.fromStrings_map' does not depend on any axioms\n'LexLeanPreservation.intFits' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.listIndex_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.listIndex_map._f' does not depend on any axioms\n'LexLeanPreservation.listIndex_map' does not depend on any axioms\n'LexLeanPreservation.listIndex_unique.match_1_1' does not depend on any axioms\n'LexLeanPreservation.listIndex_unique._f' does not depend on any axioms\n'LexLeanPreservation.listIndex_unique' does not depend on any axioms\n'LexLeanPreservation.obs_intResult' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.obs_natResult' does not depend on any axioms\n'LexLeanPreservation.prim_append_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_append_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_boolNot' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_compareBytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_bool' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_nat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_ordering' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_string' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_index_bytes.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_index_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_index_list.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_index_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intMul' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intNeg' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intQuot' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intRem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intSub' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_join.match_1_1' does not depend on any axioms\n'LexLeanPreservation.toStrings_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.toStrings_map.match_1_3' does not depend on any axioms\n'LexLeanPreservation.toStrings_map._f' does not depend on any axioms\n'LexLeanPreservation.toStrings_map' does not depend on any axioms\n'LexLeanPreservation.prim_join' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_length_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_length_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_length_string' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natAdd' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natEq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natLe' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natLt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natMul' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natQuot' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natRem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natSub' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_slice_bytes.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_slice_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_slice_list.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_slice_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_splitExact.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_splitExact' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_utf8Decode.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_utf8Decode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_utf8Encode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.compareBytes.eq_1' depends on axioms: [propext]\n'LexLeanRuntime.equal.eq_1' does not depend on any axioms\n'LexLeanRuntime.length.eq_1' does not depend on any axioms\n'LexLeanRuntime.slice.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromOrdering.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.checkedMultiplyWith.match_1' does not depend on any axioms\n'LexLeanPreservation.checkedMultiplyWith' does not depend on any axioms\n'LexLeanPreservation.checkedQuotientWith' does not depend on any axioms\n'LexLeanPreservation.decimalFits.match_1' does not depend on any axioms\n'LexLeanPreservation.decimalFits' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.divideStep' does not depend on any axioms\n'LexLeanPreservation.divide_unique.match_1_1' does not depend on any axioms\n'LexLeanPreservation.divide_unique._f' does not depend on any axioms\n'LexLeanPreservation.divide_unique' does not depend on any axioms\n'LexLeanPreservation.multiplyStep' does not depend on any axioms\n'LexLeanPreservation.multiply_unique.match_1_1' does not depend on any axioms\n'LexLeanPreservation.multiply_unique._f' does not depend on any axioms\n'LexLeanPreservation.multiply_unique' does not depend on any axioms\n'LexLeanPreservation.prim_bitAnd_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i64.match_1_2' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_int' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_int.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_int' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ordOf.match_1' does not depend on any axioms\n'LexLeanPreservation.ordOf' does not depend on any axioms\n'LexLeanPreservation.KeySpec' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.mk._flat_ctor' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.recOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.spec' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.compareCodes_eq.match_1_1' does not depend on any axioms\n'LexLeanPreservation.compareCodes_eq._f' depends on axioms: [propext]\n'LexLeanPreservation.compareCodes_eq' depends on axioms: [propext]\n'LexLeanPreservation.compareCodes_swap.match_1_1' does not depend on any axioms\n'LexLeanPreservation.compareCodes_swap._f' depends on axioms: [propext]\n'LexLeanPreservation.compareCodes_swap' depends on axioms: [propext]\n'LexLeanPreservation.lessThanE' does not depend on any axioms\n'LexLeanPreservation.prim_compare_key.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_compare_key' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_lessThan' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.orderOf_insert' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.orderBool.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.keySpec_bool' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI16.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI32.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI64.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI8.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderInt.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_int' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderNat.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_nat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.keySpec_pair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderString.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.keySpec_string' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU16.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU32.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU64.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU8.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanCollections.compareCodes._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_2' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_3' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_4' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_def' depends on axioms: [propext]\n'LexLeanCollections.insertEntry.eq_1' does not depend on any axioms\n'LexLeanCollections.insertEntry.eq_2' does not depend on any axioms\n'LexLeanCollections.insertEntry.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.compareValue.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_18' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_20' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_22' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_23' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_24' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_25' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_26' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_27' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_28' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_29' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_30' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_31' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_33' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_34' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_35' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_36' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_37' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_38' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_39' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_40' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_41' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_42' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_43' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_44' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_45' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_46' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_47' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_48' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_49' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_50' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_51' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_52' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_53' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_54' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_55' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_56' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_57' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_58' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_59' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_60' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_61' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_62' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_63' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_65' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_66' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_67' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_68' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_69' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_70' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_71' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_72' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_73' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_74' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_75' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_76' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_77' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_78' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_79' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_80' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_81' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_82' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_83' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_84' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_85' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_86' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_87' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_88' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_89' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_90' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_91' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_92' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_93' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_94' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_95' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_96' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_97' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_98' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_99' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Conv.bool_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Conv.fits_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.FunRel.fits_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ListEnc.enc.eq_1' does not depend on any axioms\n'LexLeanPreservation.ListEnc.enc_cons' does not depend on any axioms\n'LexLeanPreservation.ListEnc.enc_nil' does not depend on any axioms\n'LexLeanPreservation.LookOps' does not depend on any axioms\n'LexLeanPreservation.LookOps.casesOn' does not depend on any axioms\n'LexLeanPreservation.LookOps.l0' does not depend on any axioms\n'LexLeanPreservation.LookOps.leq' does not depend on any axioms\n'LexLeanPreservation.LookOps.lgt' does not depend on any axioms\n'LexLeanPreservation.LookOps.llt' does not depend on any axioms\n'LexLeanPreservation.LookOps.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.LookOps.recOn' does not depend on any axioms\n'LexLeanPreservation.SetOps' does not depend on any axioms\n'LexLeanPreservation.SetOps.c0' does not depend on any axioms\n'LexLeanPreservation.SetOps.casesOn' does not depend on any axioms\n'LexLeanPreservation.SetOps.ceq' does not depend on any axioms\n'LexLeanPreservation.SetOps.cgt' does not depend on any axioms\n'LexLeanPreservation.SetOps.clt' does not depend on any axioms\n'LexLeanPreservation.SetOps.i0' does not depend on any axioms\n'LexLeanPreservation.SetOps.ieq' does not depend on any axioms\n'LexLeanPreservation.SetOps.igt' does not depend on any axioms\n'LexLeanPreservation.SetOps.ilt' does not depend on any axioms\n'LexLeanPreservation.SetOps.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.SetOps.r0' does not depend on any axioms\n'LexLeanPreservation.SetOps.recOn' does not depend on any axioms\n'LexLeanPreservation.SetOps.req' does not depend on any axioms\n'LexLeanPreservation.SetOps.rgt' does not depend on any axioms\n'LexLeanPreservation.SetOps.rlt' does not depend on any axioms\n'LexLeanPreservation.TopoOps' does not depend on any axioms\n'LexLeanPreservation.TopoOps.casesOn' does not depend on any axioms\n'LexLeanPreservation.TopoOps.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.TopoOps.recOn' does not depend on any axioms\n'LexLeanPreservation.TopoOps.s_next' does not depend on any axioms\n'LexLeanPreservation.TopoOps.s_nil' does not depend on any axioms\n'LexLeanPreservation.TopoOps.s_stuck' does not depend on any axioms\n'LexLeanPreservation.TopoOps.z_cons' does not depend on any axioms\n'LexLeanPreservation.TopoOps.z_nil' does not depend on any axioms\n'LexLeanPreservation.Tpl.boolE' does not depend on any axioms\n'LexLeanPreservation.Tpl.byOrder' does not depend on any axioms\n'LexLeanPreservation.Tpl.cns' does not depend on any axioms\n'LexLeanPreservation.Tpl.fn' does not depend on any axioms\n'LexLeanPreservation.Tpl.lst' does not depend on any axioms\n'LexLeanPreservation.Tpl.v' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphInnerFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.pr' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphNodesFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.natOne' does not depend on any axioms\n'LexLeanPreservation.Tpl.nl' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphReachableFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphSuccessorsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphTopologicalFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.iterateFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.iterateUntilFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.listFoldFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapContainsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapFoldFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapInsertFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapLookupFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapProjectFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapRemoveFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reachFrontierFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reachIntoFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reachRoundsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reverseFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setContainsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setFilterFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setInsertFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setRemoveFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setUnionFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoFinished' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoReadyFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoRoundsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoUnreachedFn' does not depend on any axioms\n'LexLeanPreservation.blt_succ_fits._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.blt_succ_fits' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_cond_false' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_cond_true' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.enc_elem' does not depend on any axioms\n'LexLeanPreservation.enc_entry' does not depend on any axioms\n'LexLeanPreservation.foldFits.match_1' does not depend on any axioms\n'LexLeanPreservation.foldFits._f' does not depend on any axioms\n'LexLeanPreservation.foldFits' does not depend on any axioms\n'LexLeanPreservation.foldFits._sunfold' does not depend on any axioms\n'LexLeanPreservation.foldFits._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.foldFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.foldFits.eq_2' does not depend on any axioms\n'LexLeanPreservation.foldFits.eq_def' does not depend on any axioms\n'LexLeanPreservation.graphFits' does not depend on any axioms\n'LexLeanPreservation.graphFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.iterateFits.match_1' does not depend on any axioms\n'LexLeanPreservation.iterateFits._f' does not depend on any axioms\n'LexLeanPreservation.iterateFits' does not depend on any axioms\n'LexLeanPreservation.iterateFits._sunfold' does not depend on any axioms\n'LexLeanPreservation.iterateFits._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.iterateFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.iterateFits.eq_2' does not depend on any axioms\n'LexLeanPreservation.iterateFits.eq_def' does not depend on any axioms\n'LexLeanPreservation.length_eq' does not depend on any axioms\n'LexLeanPreservation.prim_compare_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.reachNext' does not depend on any axioms\n'LexLeanPreservation.tpl_graphInner.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setInsert.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setInsert._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setInsert' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphInner._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphInner' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphNodes.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_graphNodes._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphNodes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapLookup.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapLookup._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapLookup' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphSuccessors' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachFrontier.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_reachInto.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setContains.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setContains._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setContains' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachInto._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachInto' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachFrontier._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachFrontier' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachRounds.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setUnion.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setUnion._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setUnion' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachRounds._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachRounds' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphReachable' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reverse.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_reverse._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reverse' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setRemove.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setRemove._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setRemove' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoReady.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_topoUnreached.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_topoUnreached._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoUnreached' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoReady._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoReady' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoRounds.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_topoRounds._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoRounds' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphTopological' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterate.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_iterate._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterate' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterateUntil.match_1_1' does not depend on any axioms\n'LexLeanPreservation.untilFits.match_1' does not depend on any axioms\n'LexLeanPreservation.untilFits._f' does not depend on any axioms\n'LexLeanPreservation.untilFits' does not depend on any axioms\n'LexLeanPreservation.tpl_iterateUntil._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterateUntil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_listFold.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_listFold._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_listFold' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapContains' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapFold.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapFold._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapFold' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapInsert.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapInsert._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapInsert' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapKeys.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapKeys._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapKeys' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapRemove.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapRemove._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapRemove' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapValues.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapValues._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapValues' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setDifference.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setDifference._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setDifference' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setIntersection.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setIntersection._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setIntersection' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.untilFits._sunfold' does not depend on any axioms\n'LexLeanPreservation.untilFits._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.untilFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.untilFits.eq_2' does not depend on any axioms\n'LexLeanPreservation.untilFits.eq_def' does not depend on any axioms\n'LexLeanPreservation.validExcept.match_1' does not depend on any axioms\n'LexLeanPreservation.InvExcept' does not depend on any axioms\n'LexLeanPreservation.InvList' does not depend on any axioms\n'LexLeanPreservation.InvList.eq_1' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.match_1' does not depend on any axioms\n'LexLeanPreservation.StrictAsc._f' does not depend on any axioms\n'LexLeanPreservation.StrictAsc' does not depend on any axioms\n'LexLeanPreservation.InvMap' does not depend on any axioms\n'LexLeanPreservation.validOption.match_1' does not depend on any axioms\n'LexLeanPreservation.InvOption' does not depend on any axioms\n'LexLeanPreservation.InvOption.eq_1' does not depend on any axioms\n'LexLeanPreservation.InvOption.eq_2' does not depend on any axioms\n'LexLeanPreservation.InvPair' does not depend on any axioms\n'LexLeanPreservation.InvSet' does not depend on any axioms\n'LexLeanPreservation.StrictAsc._sunfold' does not depend on any axioms\n'LexLeanPreservation.StrictAsc._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_1' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_2' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_3' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_def' does not depend on any axioms\n'LexLeanPreservation.Tpl.validListFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validMapFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validOptionFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validPairFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validResultFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validSetFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validTrueFn' does not depend on any axioms\n'LexLeanPreservation.ascMap.match_1' does not depend on any axioms\n'LexLeanPreservation.lessB.match_1' does not depend on any axioms\n'LexLeanPreservation.lessB' does not depend on any axioms\n'LexLeanPreservation.ascMap._f' does not depend on any axioms\n'LexLeanPreservation.ascMap' does not depend on any axioms\n'LexLeanPreservation.ascMap._sunfold' does not depend on any axioms\n'LexLeanPreservation.ascMap._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_1' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_2' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_3' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_def' does not depend on any axioms\n'LexLeanPreservation.ascMap_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.lessB_iff' depends on axioms: [propext]\n'LexLeanPreservation.ascMap_iff._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.ascMap_iff' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.ascMap_inv' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.ascSet._f' does not depend on any axioms\n'LexLeanPreservation.ascSet' does not depend on any axioms\n'LexLeanPreservation.ascSet._sunfold' does not depend on any axioms\n'LexLeanPreservation.ascSet._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_1' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_2' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_3' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_def' does not depend on any axioms\n'LexLeanPreservation.ascSet_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.ascSet_iff._f' depends on axioms: [propext]\n'LexLeanPreservation.ascSet_iff' depends on axioms: [propext]\n'LexLeanPreservation.ascSet_inv' depends on axioms: [propext]\n'LexLeanPreservation.condAnd_iff' depends on axioms: [propext]\n'LexLeanPreservation.invList_eqs.match_1_1' does not depend on any axioms\n'LexLeanPreservation.invList_eqs._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.invList_eqs' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.lessB.eq_1' does not depend on any axioms\n'LexLeanPreservation.lessB_eq' depends on axioms: [propext]\n'LexLeanPreservation.lessB_gt' depends on axioms: [propext]\n'LexLeanPreservation.lessB_lt' depends on axioms: [propext]\n'LexLeanPreservation.someObs.match_1' does not depend on any axioms\n'LexLeanPreservation.someObs' does not depend on any axioms\n'LexLeanPreservation.tpl_validList.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validList.match_1' does not depend on any axioms\n'LexLeanPreservation.validList._f' does not depend on any axioms\n'LexLeanPreservation.validList' does not depend on any axioms\n'LexLeanPreservation.tpl_validList' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validMap.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_validMap._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validMap' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validOption.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validOption' does not depend on any axioms\n'LexLeanPreservation.tpl_validOption' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validPair.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validPair' does not depend on any axioms\n'LexLeanPreservation.tpl_validPair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validResult.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validExcept' does not depend on any axioms\n'LexLeanPreservation.tpl_validResult' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validSet.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_validSet._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validSet' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validTrue' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.trueIff' does not depend on any axioms\n'LexLeanPreservation.validExcept_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validExcept_inv' does not depend on any axioms\n'LexLeanPreservation.validList._sunfold' does not depend on any axioms\n'LexLeanPreservation.validList._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.validList.eq_1' does not depend on any axioms\n'LexLeanPreservation.validList.eq_2' does not depend on any axioms\n'LexLeanPreservation.validList.eq_def' does not depend on any axioms\n'LexLeanPreservation.validList_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validList_iff._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.validList_iff' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.validList_inv' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.validOption.eq_1' does not depend on any axioms\n'LexLeanPreservation.validOption.eq_2' does not depend on any axioms\n'LexLeanPreservation.validOption_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validOption_inv' depends on axioms: [propext]\n'LexLeanPreservation.validPair_inv' depends on axioms: [propext]\n'LexLeanPreservation.validTrue_inv' does not depend on any axioms\n'LexLeanPreservation.Rust.Ctx' does not depend on any axioms\n'LexLeanPreservation.Rust.Flags' does not depend on any axioms\n'LexLeanPreservation.Rust.RCrate' does not depend on any axioms\n'LexLeanPreservation.Rust.RIdent' does not depend on any axioms\n'LexLeanPreservation.Rust.WT._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.adtFields' depends on axioms: [propext]\n'LexLeanTarget.TargetSyntax.IntKind.ofNat' does not depend on any axioms\n'LexLeanTarget.TargetSyntax.IntKind.ofNat_ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Rust.instDecidableEqIntKind_lexLeanPreservation._proof_1' does not depend on any axioms\n'LexLeanPreservation.Rust.instDecidableEqIntKind_lexLeanPreservation._proof_2' does not depend on any axioms\n'LexLeanPreservation.Rust.instDecidableEqIntKind_lexLeanPreservation' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flagOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fnIdent' does not depend on any axioms\n'LexLeanPreservation.Rust.fnFallible' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.inert._f' does not depend on any axioms\n'LexLeanPreservation.Rust.inert' does not depend on any axioms\n'LexLeanPreservation.Rust.WT._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.WTAll._f' does not depend on any axioms\n'LexLeanPreservation.Rust.WTL.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctxLookup.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup._f' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup' does not depend on any axioms\n'LexLeanPreservation.Rust.local_' does not depend on any axioms\n'LexLeanPreservation.Rust.EnvRel' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ROut' does not depend on any axioms\n'LexLeanPreservation.Rust.Halt' does not depend on any axioms\n'LexLeanPreservation.Rust.REnv' does not depend on any axioms\n'LexLeanPreservation.Rust.RExpr' does not depend on any axioms\n'LexLeanPreservation.Rust.RC' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RLet' does not depend on any axioms\n'LexLeanPreservation.Rust.LetsOK' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.append' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.below' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.below.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.brecOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.recOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.append_left' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.append_right' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.below' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.below.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.brecOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.recOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RBlock' does not depend on any axioms\n'LexLeanPreservation.Rust.dispatched_ne' does not depend on any axioms\n'LexLeanPreservation.Rust.finished_ne' does not depend on any axioms\n'LexLeanPreservation.Rust.returned_ne' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_24' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_26' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_28' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_30' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_32' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_34' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_36' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.eval.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_22' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.invoke.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.stable' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.reval_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCB' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.block' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCA' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.revalBlock_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCB.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCI' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.invoke_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCI.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCL' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.revalList_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCL.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.WTAll' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.block_of_lets' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.block_of_raise' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.ctxLookup._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup_slot._simp_1_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotFree' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup_slot' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_cons_other' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sameIdent_self' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_cons_self' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sameIdent_local' depends on axioms: [propext]\n'LexLeanPreservation.Rust.envRel_bind' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.envRel_extra' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.envRel_ghost' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sameIdent_kind' depends on axioms: [propext]\n'LexLeanPreservation.Rust.envRel_temp' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.listIndex_eq.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.listIndex_eq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.listIndex_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.index_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.inert._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.inert._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_nil.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_raise_head.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcl_raise_head.match_1_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcl_raise_head' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_raise_tail' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.revalArms_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.slotFree.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sunfold' depends on axioms: [propext]\n'LexLeanTarget.RustSemantics.eval.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_18' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_20' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.invoke.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.invoke.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.kindNumber.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.lookup.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.lookup.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.lookup.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.lookup.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.lookup.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.lookup.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd' does not depend on any axioms\n'LexLeanPreservation.Rust.isTemp._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isTemp.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isTemp' depends on axioms: [propext]\n'LexLeanPreservation.Rust.letsBind.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds._f' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds._f' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind._f' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind' does not depend on any axioms\n'LexLeanPreservation.Rust.tempFresh' does not depend on any axioms\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.foldN.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.flatB._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep.match_7' does not depend on any axioms\n'LexLeanPreservation.Rust.foldStep' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldB' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats._f' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats' does not depend on any axioms\n'LexLeanPreservation.Rust.okBlock' does not depend on any axioms\n'LexLeanPreservation.Rust.partRead._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Kind.casesOn' does not depend on any axioms\n'LexLeanPreservation.Rust.elseCtx.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.elseCtx' does not depend on any axioms\n'LexLeanPreservation.Rust.elseLets.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.elseLets' does not depend on any axioms\n'LexLeanPreservation.Rust.heldOK.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.heldOK' does not depend on any axioms\n'LexLeanPreservation.Rust.negateR._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.negateR._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.negateR.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.negateR' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_5' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_7' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_9' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identBoxed' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal' does not depend on any axioms\n'LexLeanPreservation.Rust.isWild._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.unboxOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotOK.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocal' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armShape.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.armShape' does not depend on any axioms\n'LexLeanPreservation.Rust.otherArms.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.otherArms' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.noClosure.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.noClosure._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh' depends on axioms: [propext]\n'LexLeanPreservation.Rust.covered' depends on axioms: [propext]\n'LexLeanPreservation.Rust.scrut' does not depend on any axioms\n'LexLeanPreservation.Rust.validU.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.validU' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotOK' does not depend on any axioms\n'LexLeanPreservation.Rust.ctorOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identsDistinct.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct._f' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct' does not depend on any axioms\n'LexLeanPreservation.Rust.litOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArg._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.match_6' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArg.match_8' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArg' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArgs._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildTail.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildsArm.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildsArm' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.itemOK.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemOK' does not depend on any axioms\n'LexLeanPreservation.Rust.itemTyped.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemTyped.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf' does not depend on any axioms\n'LexLeanPreservation.Rust.itemTyped' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_9' does not depend on any axioms\n'LexLeanPreservation.Rust.isFixed._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped' depends on axioms: [propext]\n'LexLeanPreservation.Rust.primTyped' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.litValues._f' does not depend on any axioms\n'LexLeanPreservation.Rust.litValue' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.typedLitAll._f' does not depend on any axioms\n'LexLeanPreservation.Rust.typedLits.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Corr' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.below' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.below.casesOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.brecOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.casesOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.recOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.FunOK' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.CrateOK' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Fresh' does not depend on any axioms\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn' depends on axioms: [propext]\n'LexLeanPreservation.Rust.FunSem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Kind._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.casesOn' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ctorElim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.b.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.e.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.k.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.l.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.m.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.ops.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.recOn' does not depend on any axioms\n'LexLeanPreservation.Rust.KPre.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.KPre' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Kind.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.ctorElim' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Kind.nat.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.plain.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.plain.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.recOn' does not depend on any axioms\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesM.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.RealizesM' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Sem.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.viewVal._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Sem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.foldN._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identsDistinct._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_10' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_11' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_12' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_13' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_14' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_6' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_7' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_8' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.litValues' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue._sunfold' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.litValue._unsafe_rec' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues._sunfold' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.paramCtx._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patsBinds' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.patLocals._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patsBinds._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArgs._sunfold' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs._unsafe_rec' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.typedLitAll' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.typedLits._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_of_inert.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_of_inert.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_of_inert._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_of_inert' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_of_inert._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_of_inert' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Halt.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.LetsRaise.halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.block_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.boxed' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesM.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesM.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_bytes_inv' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_list_inv' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_string_inv' depends on axioms: [propext]\n'LexLeanPreservation.Rust.takes_of_typed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.allWidth_of.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_eq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_eq._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.tysBeq_eq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq_eq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.wt_fixed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.allWidth_of._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.allWidth_of' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.width_of_typed.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.width_of_typed.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.width_of_typed.match_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.width_of_typed' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.accepts_of_typed' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_apply' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtl_append.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_append._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_append' depends on axioms: [propext]\n'LexLeanPreservation.Rust.apply_result' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.bindPattern_shape.match_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.bindPattern_shape._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.bindPatterns_shape._simp_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindPatterns_shape.match_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.bindPatterns_shape._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.bindPattern_shape' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.bindPatterns_shape' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms_spec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_4' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_6' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_7' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.boolArms_eval' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.boxWith.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_100' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_102' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_96' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_98' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_function' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.call_result' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.const_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.convert_args.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.convert_args' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_append_fresh' depends on axioms: [propext]\n'LexLeanPreservation.Rust.envRel_fresh' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_not._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_cond.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.itemResult.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.eval_match' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fixedTyped.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_18' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_19' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_20' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_21' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_22' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_23' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_24' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_25' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_26' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_27' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_28' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_29' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_30' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_31' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_32' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_33' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_34' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_35' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_36' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_37' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_38' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_39' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_40' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_41' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_42' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_43' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_44' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_45' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_46' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_47' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_48' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_49' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_50' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_51' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_52' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_53' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_54' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_55' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_56' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_57' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_58' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_59' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_60' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_61' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN_sound.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.split_last.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.split_last._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.split_last' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep_spec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcb_nil_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_nomatch.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcb_cons_nomatch' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_stop' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_prefix' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_flat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_read_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_cons_same' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcb_fold_last' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldStep_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldN_sound._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldN_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldB_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldN.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_append' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_bind._simp_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_bind' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotFree_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_weaken' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_elseCtx' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_temp._simp_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_temp' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fromStrings_wt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fromStrings_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fromStrings_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.hasWidth_i16' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_i32' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_i64' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_i8' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u16' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u32' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u64' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u8' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.heldOK.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.heldOK.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.isFixed._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.isSeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.isTemp._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.itemOK.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemOperands_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.itemResult' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.kpre_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_pred._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_pred.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_pred' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.kpre_else' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.kpre_then' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_of_lets' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_b_rcb' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.k_branch' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_cond_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_isZero_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_lit_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate_halt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_negate_halt.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_nonZero_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_23' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_25' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_27' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_29' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_31' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_33' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_35' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_37' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_39' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_41' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_43' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_45' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_47' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_49' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_51' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_not_inv.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_not_inv.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_not_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.k_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_read.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_read' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.kpre_held' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.letsBind.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.letsOK_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.letsOK_shape' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.litValue._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_4' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_def' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_5' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.eq_def' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.lit_branch' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.lookup_through._simp_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.lookup_through' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms_spec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms_eval' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.obsL_evalList_zero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.obs_eval_zero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.oneOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf_halt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.param_env.match_1_1' depends on axioms: [propext]\n'LexLeanTarget.TargetSemantics.bindAll.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.param_env._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.param_env' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.patBinds.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_10' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_6' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_7' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_8' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.primTyped.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_apply_halt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_apply_halt.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_apply_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_call_halt.match_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_runtime' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_construct' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct_halt.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct_halt.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_isZero.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_isZero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_lit.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_lit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue._simp_10' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue._simp_9' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue.match_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_pair.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_pair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_litValues.match_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rcl_litValues._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_nonZero.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_nonZero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_pair_halt_left' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_pair_halt_right' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_widen.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_widen' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_widen_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_11' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_7' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_litValues' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_nil_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_single_halt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_single_halt.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_single_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_widen_one' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.readOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizesL_halt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizesL_haltL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizes_halt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizesM_overflow' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizes_oneOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.runItem_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.runItem_succ' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_applyGen.match_1_13' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen.match_1_15' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen.match_1_28' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_apply' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_applyF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_bOfE' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_build.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_build.match_1_99' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_build' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildConst' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildPair.match_1_101' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_97' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_99' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildSucc.match_1_129' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSucc.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSucc' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildSuccF.match_1_101' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSuccF.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSuccF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_callF.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callF.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_callOps.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callOps.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callOps' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_closure.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.wtl_length.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_length._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_length' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_closure' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_cond.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_cond.match_1_11' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_condId.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_condId' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_eOfB' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_eOfBFold' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_eOfBNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_fOfB' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_unit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_fUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kHeld' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kLit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kId' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kIf' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kNeg' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kSame' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_lCons.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons.match_1_17' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons.match_1_19' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_lNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_letBind.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letBind.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letBind' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_letWild.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letWild.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letWild' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBool._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchHolder.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchHolder.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchHolder' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBool' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBoolId._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBoolId.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchBoolId' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchNat._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchNat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchUnit._proof_1_386' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchUnit.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchUnit.match_1_387' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsCons._simp_1_13' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsCons.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons.match_1_14' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons.match_1_16' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsOfL' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_29' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_31' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_ops_box.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_ops_box.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_ops_box.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_ops_box' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_part._sparseCasesOn_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_part.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_part.match_1_14' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_part.match_1_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_part' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_part._sparseCasesOn_1_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_prim.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_prim.match_1_38' does not depend on any axioms\n'LexLeanPreservation.Rust.wtAll_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wtAll_iff._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.wtAll_iff' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_append' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_bitwise' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_checked' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_convert' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_decode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_encode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_fixedTyped.match_1_67' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_format' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_index' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_join' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_parse' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_shift' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.slice_eq' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_slice' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_split' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_unary' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtl_one.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_one' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_three.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_three' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_two.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_two' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_fixedTyped' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_prim' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_prim' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_primF.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF.match_1_7' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_primWiden.match_1_108' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_110' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_112' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_114' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_116' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.typedLitAll_wt.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit_wt.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits_wt.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_var' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_varUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_zero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.shapeOf.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_10' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_11' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_12' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_13' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_14' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_6' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_7' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_8' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.tempFresh.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_12.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_13.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_14.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.allWidth.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.allWidth.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.allWidth.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_100' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_101' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_102' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_103' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_104' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_105' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_106' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_107' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_108' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_109' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_110' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_111' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_112' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_113' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_114' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_115' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_116' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_117' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_118' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_119' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_120' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_121' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_122' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_123' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_124' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_125' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_126' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_127' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_128' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_129' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_130' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_131' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_132' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_133' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_134' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_135' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_136' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_137' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_138' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_139' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_140' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_141' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_142' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_143' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_144' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_145' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_146' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_147' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_148' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_149' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_150' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_151' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_152' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_153' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_154' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_155' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_156' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_157' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_158' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_159' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_160' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_161' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_162' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_163' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_164' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_165' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_166' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_167' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_168' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_169' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_170' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_171' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_172' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_173' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_174' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_175' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_176' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_177' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_178' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_179' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_180' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_181' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_182' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_183' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_184' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_185' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_186' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_51' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_52' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_53' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_54' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_55' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_56' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_57' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_58' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_59' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_60' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_61' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_62' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_63' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_64' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_65' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_66' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_67' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_68' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_69' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_70' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_71' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_72' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_73' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_74' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_75' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_76' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_77' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_78' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_79' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_80' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_81' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_82' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_83' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_84' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_85' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_86' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_87' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_88' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_89' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_90' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_91' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_92' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_93' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_94' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_95' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_96' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_97' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_98' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_99' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_100' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_101' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_102' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_103' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_104' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_105' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_106' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_107' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_108' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_109' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_110' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_111' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_112' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_113' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_114' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_115' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_116' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_117' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_118' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_119' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_120' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_121' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_122' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_123' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_124' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_125' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_126' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_127' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_128' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_129' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_130' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_131' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_132' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_133' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_134' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_135' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_136' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_137' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_138' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_139' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_140' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_141' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_142' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_143' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_144' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_145' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_146' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_147' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_148' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_149' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_150' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_151' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_152' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_153' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_154' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_155' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_156' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_157' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_158' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_159' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_160' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_161' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_162' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_163' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_164' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_165' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_166' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_167' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_168' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_169' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_170' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_171' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_172' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_173' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_174' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_175' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_176' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_177' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_178' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_179' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_180' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_181' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_182' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_183' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_184' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_51' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_52' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_53' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_54' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_55' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_56' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_57' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_58' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_59' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_60' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_61' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_62' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_63' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_64' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_65' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_66' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_67' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_68' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_69' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_70' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_71' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_72' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_73' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_74' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_75' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_76' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_77' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_78' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_79' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_80' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_81' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_82' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_83' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_84' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_85' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_86' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_87' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_88' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_89' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_90' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_91' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_92' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_93' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_94' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_95' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_96' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_97' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_98' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_99' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemAccepts.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemAccepts.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.literal.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_10' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_11' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_12' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_13' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_14' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_15' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_3' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_4' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_5' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_6' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_7' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_8' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_9' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.propagated.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.returned.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_10' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_11' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_12' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_13' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_14' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_15' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_16' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_17' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_18' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_19' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_20' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_21' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_22' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_23' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_24' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_25' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_26' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_27' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_28' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_29' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_30' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_31' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_32' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_33' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_34' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_35' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_36' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_37' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_38' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_39' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_40' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_41' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_42' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_43' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_44' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_45' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_46' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_47' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_48' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_49' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_5' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_50' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_51' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_52' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_53' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_54' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_55' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_56' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_57' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_58' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_59' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_6' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_60' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_61' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_62' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_63' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_64' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_65' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_66' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_67' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_68' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_69' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_7' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_70' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_71' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_72' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_73' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_74' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_75' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_76' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_77' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_78' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_79' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_8' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_80' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_81' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_82' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_83' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_9' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_10' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_100' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_101' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_102' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_103' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_104' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_105' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_106' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_107' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_108' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_109' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_11' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_110' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_111' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_112' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_113' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_114' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_115' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_116' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_117' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_118' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_119' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_12' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_120' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_121' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_122' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_123' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_124' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_125' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_126' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_127' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_128' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_129' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_13' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_130' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_131' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_132' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_133' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_134' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_135' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_136' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_137' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_138' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_139' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_14' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_140' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_141' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_142' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_143' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_144' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_145' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_146' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_147' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_148' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_149' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_15' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_150' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_151' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_152' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_153' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_154' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_155' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_156' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_157' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_158' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_159' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_16' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_160' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_161' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_162' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_163' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_164' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_165' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_166' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_167' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_168' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_169' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_17' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_170' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_171' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_172' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_173' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_174' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_175' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_176' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_177' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_178' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_179' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_18' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_180' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_181' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_182' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_183' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_184' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_185' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_186' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_187' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_188' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_189' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_19' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_190' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_191' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_192' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_193' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_194' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_195' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_196' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_197' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_198' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_199' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_20' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_200' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_201' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_202' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_203' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_204' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_205' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_206' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_207' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_208' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_209' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_21' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_210' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_211' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_212' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_213' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_214' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_215' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_216' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_217' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_218' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_219' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_22' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_220' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_221' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_222' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_223' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_224' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_225' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_226' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_227' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_228' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_229' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_23' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_230' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_231' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_232' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_233' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_234' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_235' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_236' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_237' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_238' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_239' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_24' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_240' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_241' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_242' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_243' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_244' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_245' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_246' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_247' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_248' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_249' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_25' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_250' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_251' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_252' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_253' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_254' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_255' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_256' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_257' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_258' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_259' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_26' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_260' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_261' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_262' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_263' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_264' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_265' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_266' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_267' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_268' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_269' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_27' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_270' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_271' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_272' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_273' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_274' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_275' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_276' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_277' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_278' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_279' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_28' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_280' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_281' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_282' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_283' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_284' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_285' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_286' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_287' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_288' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_289' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_29' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_290' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_291' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_292' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_293' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_294' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_295' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_296' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_297' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_298' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_299' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_30' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_300' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_301' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_302' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_303' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_304' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_305' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_306' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_307' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_308' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_309' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_31' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_310' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_311' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_312' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_313' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_314' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_315' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_316' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_317' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_318' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_319' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_32' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_320' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_321' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_322' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_323' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_324' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_325' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_326' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_327' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_328' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_329' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_33' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_330' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_331' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_332' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_333' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_334' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_335' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_336' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_337' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_338' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_339' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_34' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_340' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_341' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_342' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_343' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_344' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_345' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_346' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_347' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_348' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_349' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_35' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_350' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_351' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_352' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_353' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_354' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_355' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_356' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_357' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_358' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_359' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_36' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_360' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_361' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_362' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_363' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_364' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_365' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_366' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_367' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_368' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_369' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_37' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_370' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_38' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_39' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_40' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_41' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_42' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_43' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_44' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_45' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_46' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_47' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_48' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_49' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_5' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_50' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_51' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_52' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_53' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_54' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_55' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_56' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_57' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_58' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_59' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_6' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_60' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_61' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_62' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_63' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_64' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_65' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_66' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_67' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_68' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_69' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_7' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_70' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_71' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_72' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_73' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_74' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_75' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_76' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_77' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_78' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_79' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_8' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_80' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_81' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_82' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_83' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_84' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_85' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_86' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_87' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_88' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_89' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_9' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_90' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_91' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_92' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_93' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_94' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_95' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_96' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_97' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_98' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_99' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromStrings.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromStrings.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromStrings.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.primitive.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1000' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1001' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1002' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1003' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1004' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1005' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1006' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1007' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1008' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1009' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1010' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1011' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1012' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1013' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1014' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1015' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1016' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1017' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1018' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1019' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1020' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1021' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1022' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1023' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1024' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1025' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1026' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1027' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1028' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1029' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1030' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1031' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1032' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1033' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1034' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1035' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1036' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1037' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1038' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1039' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1040' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1041' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1042' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1043' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1044' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1045' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1046' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1047' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1048' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1049' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1050' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1051' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1052' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1053' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1054' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1055' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1056' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1057' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1058' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1059' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1060' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1061' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1062' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1063' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1064' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1065' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1066' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1067' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1068' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1069' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1070' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1071' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1072' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1073' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1074' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1075' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1076' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1077' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1078' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1079' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1080' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1081' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1082' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1083' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1084' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1085' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1086' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1087' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1088' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1089' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1090' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1091' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1092' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1093' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1094' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1095' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1096' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1097' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1098' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1099' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1426' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1427' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1428' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1429' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1430' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1431' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1432' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1433' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1434' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1435' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1436' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1437' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1438' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1439' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1440' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1441' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1442' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1443' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1444' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1445' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1446' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1447' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1448' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1449' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1450' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1451' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1452' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1453' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1454' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1455' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1456' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1457' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1458' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1459' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1460' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1461' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1462' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1463' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1464' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1465' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1466' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1467' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1468' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1469' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1470' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1471' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1472' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1473' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1474' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1475' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1476' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1477' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1478' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1479' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1480' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1481' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1482' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1483' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1484' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1485' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1486' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1487' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1488' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1489' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1490' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1491' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1492' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1493' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1494' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1495' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1496' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1497' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1498' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1499' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1500' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1501' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1502' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1503' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1504' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1505' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1506' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1507' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1508' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1509' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1510' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1511' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1512' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1513' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1514' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1515' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1516' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1517' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1518' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1519' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1520' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1521' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1522' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1523' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1524' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1525' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1526' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1527' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1528' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1529' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1530' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1531' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1532' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1533' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1534' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1535' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1536' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1537' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1538' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1539' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1540' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1541' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1542' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1543' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1544' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1545' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1546' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1547' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1548' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1549' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1550' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1551' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1552' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1553' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1554' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1555' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1556' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1557' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1558' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1559' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1560' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1561' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1562' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1563' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1564' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1565' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1566' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1567' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1568' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1569' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1570' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1571' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1572' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1573' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1574' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1575' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1576' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1577' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1578' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1579' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1580' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1581' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1582' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1583' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1584' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1585' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1586' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1587' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1588' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1589' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1590' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1591' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1592' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1593' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1594' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1595' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1596' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1597' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1598' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1599' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1600' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1601' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1602' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1603' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1604' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1605' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1606' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1607' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1608' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1609' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1610' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1611' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1612' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1613' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1614' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1615' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1616' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1617' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1618' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1619' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1620' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1621' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1622' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1623' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1624' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1625' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1626' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1627' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1628' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1629' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1630' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1631' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1632' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1633' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1634' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1635' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1636' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1637' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1638' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1639' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1640' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1641' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1642' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1643' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1644' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1645' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1646' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1647' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1648' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1649' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1650' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1651' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1652' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1653' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1654' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1655' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1656' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1657' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1658' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1659' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1660' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1661' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1662' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1663' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1664' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1665' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1666' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1667' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1668' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1669' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1670' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1671' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1672' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1673' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1674' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1675' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1676' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1677' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1678' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1679' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1680' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1681' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1682' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1683' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1684' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1685' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1686' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1687' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1688' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1689' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1690' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1691' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1692' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1693' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1694' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1695' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1696' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1697' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1698' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1699' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1700' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1701' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1702' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1703' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1704' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1705' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1706' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1707' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1708' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1709' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1710' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1711' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1712' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1713' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1714' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1715' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1716' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1717' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1718' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1719' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1720' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1721' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1722' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1723' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1724' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1725' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1726' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1727' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1728' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1729' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1730' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1731' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1732' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1733' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1734' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1735' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1736' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1737' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1738' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1739' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1740' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1741' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1742' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1743' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1744' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1745' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1746' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1747' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1748' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1749' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1750' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1751' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1752' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1753' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1754' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1755' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1756' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1757' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1758' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1759' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1760' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1761' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1762' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1763' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1764' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1765' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1766' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1767' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1768' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1769' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1770' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1771' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1772' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1773' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1774' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1775' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1776' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1777' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1778' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1779' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1780' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1781' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1782' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1783' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1784' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1785' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1786' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1787' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1788' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1789' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1790' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1791' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1792' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1793' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1794' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1795' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1796' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1797' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1798' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1799' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_18' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1800' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1801' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1802' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1803' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1804' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1805' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1806' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1807' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1808' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1809' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1810' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1811' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1812' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1813' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1814' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1815' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1816' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1817' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1818' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1819' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1820' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1821' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1822' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1823' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1824' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1825' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1826' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1827' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1828' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1829' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1830' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1831' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1832' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1833' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1834' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1835' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1836' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1837' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1838' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1839' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1840' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1841' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1842' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1843' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1844' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1845' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1846' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1847' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1848' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1849' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1850' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1851' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1852' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1853' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1854' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1855' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1856' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1857' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1858' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1859' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1860' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1861' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1862' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1863' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1864' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1865' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1866' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1867' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1868' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1869' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1870' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1871' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1872' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1873' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1874' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1875' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1876' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1877' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1878' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1879' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1880' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1881' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1882' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1883' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1884' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1885' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1886' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1887' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1888' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1889' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1890' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1891' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1892' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1893' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1894' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1895' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1896' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1897' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1898' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1899' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1900' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1901' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1902' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1903' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1904' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1905' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1906' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1907' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1908' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1909' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1910' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1911' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1912' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1913' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1914' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1915' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1916' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1917' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1918' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1919' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1920' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1921' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1922' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1923' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1924' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1925' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1926' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1927' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1928' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1929' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1930' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1931' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1932' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1933' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1934' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1935' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1936' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1937' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1938' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1939' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1940' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1941' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1942' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1943' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1944' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1945' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1946' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1947' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1948' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1949' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1950' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1951' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1952' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1953' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1954' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1955' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1956' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1957' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1958' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1959' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1960' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1961' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1962' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1963' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1964' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1965' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1966' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1967' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1968' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1969' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1970' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1971' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1972' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1973' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1974' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1975' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1976' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1977' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1978' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1979' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1980' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1981' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1982' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1983' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1984' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1985' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1986' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1987' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1988' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1989' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1990' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1991' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1992' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1993' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1994' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1995' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1996' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1997' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1998' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1999' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_20' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2000' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2001' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2002' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2003' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2004' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2005' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2006' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2007' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2008' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2009' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2010' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2011' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2012' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2013' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2014' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2015' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2016' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2017' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2018' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2019' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2020' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2021' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2022' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2023' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2024' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2025' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2026' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2027' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2028' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2029' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2030' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2031' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2032' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2033' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2034' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2035' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2036' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2037' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2038' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2039' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2040' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2041' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2042' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2043' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2044' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2045' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2046' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2047' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2048' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2049' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2050' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2051' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2052' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2053' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2054' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2055' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2056' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2057' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2058' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2059' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2060' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2061' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2062' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2063' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2064' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2065' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2066' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2067' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2068' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2069' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2070' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2071' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2072' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2073' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2074' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2075' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2076' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2077' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2078' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2079' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2080' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2081' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2082' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2083' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2084' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2085' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2086' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2087' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2088' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2089' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2090' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2091' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2092' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2093' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2094' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2095' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2096' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2097' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2098' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2099' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_22' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_23' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_24' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2426' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2427' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2428' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2429' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2430' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2431' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2432' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2433' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2434' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2435' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2436' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2437' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2438' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2439' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2440' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2441' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2442' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2443' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2444' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2445' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2446' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2447' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2448' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2449' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2450' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2451' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2452' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2453' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2454' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2455' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2456' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2457' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2458' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2459' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2460' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2461' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2462' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2463' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2464' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2465' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2466' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2467' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2468' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2469' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2470' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2471' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2472' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2473' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2474' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2475' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2476' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2477' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2478' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2479' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2480' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2481' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2482' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2483' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2484' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2485' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2486' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2487' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2488' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2489' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2490' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2491' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2492' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2493' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2494' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2495' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2496' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2497' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2498' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2499' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_25' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2500' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2501' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2502' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2503' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2504' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2505' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2506' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2507' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2508' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2509' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2510' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2511' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2512' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2513' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2514' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2515' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2516' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2517' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2518' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2519' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2520' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2521' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2522' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2523' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2524' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2525' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2526' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2527' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2528' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2529' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2530' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2531' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2532' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2533' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2534' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2535' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2536' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2537' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2538' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2539' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2540' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2541' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2542' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2543' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2544' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2545' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2546' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2547' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2548' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2549' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2550' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2551' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2552' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2553' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2554' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2555' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2556' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2557' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2558' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2559' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2560' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2561' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2562' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2563' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2564' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2565' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2566' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2567' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2568' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2569' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2570' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2571' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2572' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2573' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2574' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2575' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2576' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2577' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2578' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2579' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2580' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2581' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2582' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2583' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2584' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2585' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2586' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2587' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2588' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2589' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2590' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2591' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2592' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2593' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2594' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2595' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2596' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2597' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2598' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2599' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_26' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2600' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2601' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2602' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2603' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2604' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2605' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2606' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2607' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2608' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2609' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2610' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2611' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2612' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2613' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2614' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2615' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2616' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2617' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2618' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2619' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2620' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2621' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2622' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2623' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2624' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2625' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2626' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2627' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2628' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2629' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2630' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2631' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2632' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2633' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2634' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2635' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2636' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2637' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2638' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2639' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2640' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2641' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2642' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2643' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2644' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2645' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2646' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2647' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2648' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2649' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2650' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2651' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2652' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2653' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2654' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2655' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2656' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2657' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2658' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2659' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2660' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2661' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2662' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2663' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2664' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2665' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2666' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2667' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2668' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2669' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2670' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2671' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2672' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2673' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2674' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2675' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2676' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2677' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2678' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2679' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2680' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2681' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2682' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2683' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2684' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2685' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2686' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2687' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2688' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2689' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2690' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2691' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2692' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2693' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2694' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2695' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2696' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2697' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2698' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2699' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_27' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2700' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2701' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2702' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2703' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2704' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2705' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2706' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2707' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2708' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2709' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2710' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2711' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2712' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2713' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2714' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2715' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2716' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2717' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2718' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2719' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2720' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2721' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2722' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2723' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2724' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2725' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2726' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2727' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2728' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2729' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2730' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2731' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2732' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2733' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2734' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2735' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2736' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2737' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2738' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2739' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2740' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2741' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2742' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2743' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2744' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2745' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2746' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2747' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2748' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2749' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2750' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2751' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2752' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2753' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2754' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2755' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2756' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2757' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2758' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2759' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2760' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2761' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2762' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2763' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2764' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2765' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2766' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2767' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2768' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2769' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2770' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2771' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2772' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2773' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2774' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2775' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2776' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2777' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2778' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2779' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2780' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2781' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2782' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2783' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2784' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2785' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2786' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2787' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2788' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2789' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2790' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2791' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2792' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2793' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2794' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2795' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2796' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2797' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2798' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2799' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_28' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2800' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2801' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2802' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2803' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2804' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2805' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2806' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2807' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2808' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2809' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2810' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2811' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2812' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2813' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2814' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2815' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2816' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2817' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2818' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2819' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2820' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2821' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2822' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2823' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2824' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2825' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2826' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2827' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2828' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2829' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2830' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2831' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2832' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2833' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2834' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2835' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2836' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2837' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2838' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2839' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2840' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2841' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2842' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2843' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2844' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2845' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2846' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2847' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2848' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2849' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2850' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2851' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2852' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2853' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2854' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2855' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2856' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2857' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2858' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2859' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2860' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2861' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2862' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2863' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2864' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2865' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2866' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2867' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2868' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2869' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2870' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2871' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2872' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2873' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2874' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2875' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2876' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2877' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2878' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2879' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2880' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2881' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2882' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2883' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2884' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2885' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2886' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2887' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2888' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2889' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2890' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2891' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2892' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2893' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2894' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2895' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2896' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2897' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2898' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2899' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_29' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2900' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2901' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2902' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2903' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2904' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2905' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2906' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2907' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2908' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2909' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2910' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2911' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2912' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2913' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2914' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2915' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2916' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2917' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2918' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2919' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2920' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2921' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2922' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2923' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2924' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2925' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2926' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2927' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2928' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2929' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2930' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2931' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2932' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2933' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2934' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2935' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2936' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2937' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2938' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2939' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2940' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2941' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2942' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2943' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2944' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2945' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2946' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2947' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2948' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2949' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2950' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2951' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2952' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2953' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2954' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2955' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2956' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2957' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2958' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2959' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2960' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2961' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2962' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2963' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2964' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2965' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2966' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2967' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2968' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2969' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2970' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2971' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2972' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2973' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2974' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2975' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2976' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2977' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2978' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2979' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2980' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2981' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2982' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2983' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2984' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2985' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2986' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2987' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2988' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2989' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2990' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2991' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2992' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2993' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2994' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2995' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2996' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2997' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2998' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2999' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_30' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3000' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3001' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3002' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3003' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3004' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3005' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3006' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3007' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3008' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3009' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3010' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3011' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3012' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3013' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3014' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3015' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3016' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3017' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3018' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3019' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3020' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3021' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3022' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3023' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3024' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3025' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3026' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3027' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3028' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3029' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3030' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3031' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3032' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3033' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3034' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3035' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3036' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3037' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3038' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3039' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3040' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3041' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3042' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3043' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3044' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3045' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3046' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3047' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3048' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3049' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3050' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3051' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3052' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3053' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3054' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3055' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3056' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3057' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3058' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3059' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3060' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3061' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3062' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3063' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3064' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3065' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3066' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3067' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3068' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3069' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3070' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3071' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3072' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3073' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3074' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3075' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3076' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3077' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3078' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3079' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3080' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3081' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3082' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3083' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3084' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3085' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3086' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3087' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3088' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3089' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3090' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3091' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3092' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3093' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3094' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3095' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3096' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3097' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3098' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3099' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_31' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_33' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_34' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_35' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_36' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_37' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_38' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_39' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_40' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_41' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_42' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_426' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_427' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_428' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_429' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_43' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_430' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_431' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_432' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_433' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_434' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_435' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_436' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_437' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_438' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_439' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_44' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_440' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_441' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_442' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_443' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_444' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_445' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_446' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_447' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_448' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_449' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_45' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_450' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_451' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_452' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_453' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_454' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_455' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_456' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_457' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_458' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_459' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_46' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_460' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_461' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_462' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_463' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_464' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_465' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_466' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_467' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_468' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_469' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_47' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_470' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_471' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_472' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_473' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_474' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_475' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_476' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_477' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_478' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_479' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_48' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_480' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_481' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_482' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_483' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_484' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_485' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_486' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_487' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_488' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_489' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_49' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_490' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_491' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_492' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_493' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_494' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_495' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_496' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_497' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_498' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_499' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_50' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_500' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_501' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_502' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_503' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_504' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_505' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_506' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_507' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_508' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_509' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_51' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_510' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_511' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_512' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_513' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_514' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_515' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_516' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_517' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_518' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_519' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_52' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_520' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_521' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_522' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_523' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_524' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_525' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_526' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_527' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_528' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_529' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_53' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_530' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_531' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_532' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_533' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_534' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_535' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_536' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_537' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_538' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_539' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_54' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_540' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_541' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_542' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_543' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_544' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_545' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_546' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_547' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_548' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_549' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_55' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_550' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_551' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_552' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_553' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_554' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_555' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_556' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_557' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_558' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_559' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_56' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_560' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_561' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_562' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_563' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_564' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_565' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_566' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_567' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_568' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_569' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_57' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_570' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_571' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_572' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_573' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_574' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_575' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_576' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_577' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_578' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_579' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_58' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_580' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_581' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_582' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_583' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_584' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_585' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_586' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_587' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_588' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_589' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_59' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_590' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_591' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_592' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_593' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_594' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_595' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_596' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_597' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_598' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_599' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_60' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_600' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_601' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_602' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_603' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_604' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_605' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_606' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_607' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_608' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_609' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_61' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_610' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_611' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_612' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_613' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_614' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_615' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_616' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_617' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_618' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_619' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_62' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_620' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_621' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_622' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_623' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_624' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_625' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_626' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_627' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_628' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_629' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_63' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_630' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_631' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_632' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_633' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_634' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_635' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_636' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_637' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_638' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_639' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_640' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_641' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_642' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_643' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_644' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_645' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_646' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_647' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_648' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_649' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_65' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_650' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_651' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_652' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_653' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_654' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_655' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_656' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_657' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_658' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_659' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_66' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_660' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_661' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_662' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_663' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_664' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_665' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_666' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_667' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_668' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_669' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_67' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_670' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_671' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_672' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_673' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_674' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_675' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_676' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_677' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_678' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_679' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_68' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_680' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_681' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_682' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_683' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_684' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_685' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_686' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_687' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_688' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_689' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_69' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_690' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_691' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_692' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_693' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_694' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_695' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_696' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_697' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_698' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_699' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_70' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_700' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_701' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_702' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_703' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_704' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_705' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_706' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_707' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_708' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_709' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_71' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_710' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_711' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_712' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_713' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_714' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_715' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_716' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_717' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_718' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_719' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_72' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_720' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_721' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_722' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_723' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_724' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_725' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_726' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_727' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_728' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_729' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_73' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_730' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_731' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_732' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_733' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_734' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_735' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_736' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_737' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_738' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_739' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_74' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_740' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_741' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_742' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_743' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_744' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_745' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_746' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_747' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_748' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_749' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_75' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_750' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_751' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_752' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_753' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_754' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_755' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_756' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_757' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_758' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_759' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_76' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_760' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_761' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_762' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_763' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_764' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_765' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_766' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_767' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_768' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_769' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_77' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_770' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_771' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_772' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_773' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_774' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_775' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_776' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_777' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_778' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_779' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_78' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_780' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_781' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_782' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_783' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_784' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_785' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_786' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_787' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_788' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_789' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_79' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_790' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_791' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_792' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_793' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_794' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_795' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_796' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_797' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_798' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_799' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_80' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_800' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_801' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_802' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_803' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_804' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_805' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_806' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_807' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_808' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_809' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_81' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_810' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_811' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_812' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_813' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_814' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_815' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_816' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_817' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_818' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_819' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_82' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_820' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_821' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_822' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_823' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_824' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_825' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_826' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_827' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_828' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_829' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_83' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_830' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_831' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_832' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_833' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_834' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_835' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_836' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_837' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_838' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_839' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_84' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_840' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_841' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_842' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_843' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_844' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_845' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_846' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_847' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_848' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_849' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_85' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_850' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_851' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_852' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_853' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_854' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_855' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_856' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_857' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_858' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_859' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_86' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_860' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_861' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_862' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_863' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_864' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_865' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_866' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_867' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_868' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_869' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_87' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_870' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_871' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_872' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_873' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_874' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_875' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_876' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_877' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_878' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_879' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_88' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_880' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_881' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_882' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_883' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_884' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_885' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_886' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_887' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_888' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_889' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_89' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_890' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_891' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_892' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_893' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_894' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_895' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_896' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_897' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_898' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_899' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_90' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_900' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_901' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_902' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_903' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_904' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_905' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_906' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_907' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_908' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_909' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_91' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_910' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_911' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_912' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_913' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_914' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_915' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_916' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_917' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_918' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_919' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_92' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_920' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_921' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_922' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_923' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_924' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_925' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_926' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_927' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_928' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_929' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_93' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_930' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_931' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_932' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_933' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_934' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_935' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_936' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_937' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_938' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_939' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_94' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_940' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_941' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_942' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_943' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_944' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_945' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_946' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_947' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_948' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_949' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_95' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_950' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_951' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_952' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_953' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_954' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_955' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_956' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_957' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_958' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_959' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_96' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_960' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_961' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_962' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_963' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_964' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_965' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_966' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_967' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_968' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_969' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_97' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_970' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_971' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_972' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_973' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_974' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_975' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_976' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_977' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_978' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_979' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_98' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_980' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_981' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_982' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_983' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_984' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_985' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_986' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_987' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_988' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_989' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_99' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_990' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_991' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_992' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_993' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_994' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_995' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_996' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_997' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_998' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_999' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.adtFields.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_12.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_13.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_12.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat_outer' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.boxedOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.boxedOne.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.boxedOne' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bp_entries._simp_1_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.simplePat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bp_entries.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.entriesOf._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bp_entries._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.bp_entries' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.directPat_cons._simp_1_4' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.identBoxed_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identLocal_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf_spec' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_cons' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_len.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_len._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_len' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_loads._simp_1_27' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_loads._simp_1_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_loads.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none._simp_1_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none._simp_1_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rlookup_append' depends on axioms: [propext]\n'LexLeanPreservation.Rust.same_boxed_boxed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_boxed_none' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_local_none._simp_1_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_local_none._simp_1_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_local_none.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.same_local_local' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_local_none._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_local_none' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_boxed_local' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rlookup_local_boxed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rlookup_local_single' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_loads._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.directPat_loads' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_boxed_some._simp_1_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_some._simp_1_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_some.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_some._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.entries_boxed_some' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.envRel_locals' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fields_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindPatterns_single' depends on axioms: [propext]\n'LexLeanPreservation.Rust.outer_bind' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.paramCtx_length.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_length._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_length' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.bindOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOne.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.covered.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.covered_mem._simp_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.wt_uninh._simp_10' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.covered_mem' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.ctorOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.destruct_canon' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq_refl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.destruct_excl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.directPat.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_lookup.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_none_of._simp_1_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_none_of.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sameIdent_iff' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_none_of._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_none_of' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.identsDistinct.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.entries_lookup._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_lookup' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.eval_field.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.eval_field._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_field.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_field' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats_none._simp_1_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats_none.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats_none._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats_none' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats_some._simp_1_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats_some.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats_some._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats_some' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_partRead' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.tyBeq_unit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.field_out' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.findArm_some.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.findArm_some._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.findArm_some' depends on axioms: [propext]\n'LexLeanPreservation.Rust.findDispatch_some.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.findDispatch_some._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.findDispatch_some' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_ext' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identBoxed.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identBoxed.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.isWild._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.okBlock.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.otherArms.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.otherArms_mem._simp_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.otherArms_mem' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.outer_miss' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.outer_view' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_ext.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_ext._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_ext' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_fresh.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_fresh._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_fresh' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocal.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_matchOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_matchOn_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_uncons.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_uncons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_scrut' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rca_hit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rca_miss' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_det' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_rebuild.match_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_eq_of_same' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg_rc' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_rebuild._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_rebuild' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.readOf_rc' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.realizesM_value' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArg_simple' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_def' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs_simple.match_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs_simple._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs_simple' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_14.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuild_rca._simp_1_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuild_rca.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_value._simp_1_21' depends on axioms: [propext]\n'LexLeanPreservation.Rust.single_rebuild' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_rca._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_rca' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuildsArm.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_nil' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_fieldGen._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_fieldGen.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_fieldGen.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.wtl_get.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_get._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_get' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_fieldGen' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_fieldHeld' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_fieldRead' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_mCons._simp_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_mCons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_mNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchArms._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.tyBeq_refl.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq_refl._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.tysBeq_refl.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tysBeq_refl._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_refl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.tysBeq_refl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.uninh_of_inert.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.uninh_of_inert._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh_of_inert' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_uninh.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_uninh._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtl_uninh.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_uninh._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_uninh' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.taken_arm' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchArms' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchPair._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchPair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchRebuilt._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchRebuilt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchRebuilt.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchRebuilt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.simplePat.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.validU.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_uninh' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.findArm.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findArm.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findArm.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_5' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_6' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_7' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_8' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.fl_of' does not depend on any axioms\n'LexLeanPreservation.Rust.fnFallible.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of._simp_1_14' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.funSem_of.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_12' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.isTemp.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isTemp.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.item_ne' depends on axioms: [propext]\n'LexLeanPreservation.Rust.kind_ne' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sound._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sound._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.simulate' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Representable._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Representable.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Representable._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.RepresentableL._f' does not depend on any axioms\n'LexLeanPreservation.Rust.Representable' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Representable._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.Representable._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.compose' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rel_ne_stuck' depends on axioms: [propext]\n'LexLeanPreservation.Rust.repL_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.repL_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.runItem_abort_infallible' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtAll_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wtAll_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_map._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_map' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_adt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_bool' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_bytes' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encExcept.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_encExcept' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_list' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encList' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encOption.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_encOption' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encOrdering' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encPair' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encUnit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_errorV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i32' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i64' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_int' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_listEnc' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_nat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_noneV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_okV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_optEnc.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_someV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_optEnc' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_ordering' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_pairV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_string' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u32' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u64' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_unitValue' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_nil' depends on axioms: [propext]\n'LexLeanPreservation.encExcept.eq_1' does not depend on any axioms\n'LexLeanPreservation.encExcept.eq_2' does not depend on any axioms\n'LexLeanPreservation.encOption.eq_1' does not depend on any axioms\n'LexLeanPreservation.encOption.eq_2' does not depend on any axioms\n'LexLeanPreservation.encPair.eq_1' does not depend on any axioms\n'LexLeanPreservation.encUnit.eq_1' does not depend on any axioms\n'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.Compose.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.Compose.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.Compose.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.Compose.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.Compose.RustCore.__wt_0' depends on axioms: [propext]\n'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.Compose.RustStd.__wt_0' depends on axioms: [propext]\n-- statement vocabulary\ninductive LexLeanPreservation.Obs : Type\nnumber of parameters: 0\nconstructors:\nLexLeanPreservation.Obs.value : LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs\nLexLeanPreservation.Obs.overflow : LexLeanPreservation.Obs\nLexLeanPreservation.Obs.stuck : LexLeanPreservation.Obs\ndef LexLeanPreservation.Rel : Bool → LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs :=\nfun fits v => bif fits then LexLeanPreservation.Obs.value v else LexLeanPreservation.Obs.overflow\ndef LexLeanPreservation.Conv : LexLeanTarget.TargetSyntax.Program →\n List (Nat × LexLeanTarget.TargetSyntax.Value) → LexLeanTarget.TargetSyntax.Expr → LexLeanPreservation.Obs → Prop :=\nfun p env e o => ∃ n, LexLeanPreservation.obs (LexLeanTarget.TargetSemantics.eval n p env e) = some o\ndef LexLeanPreservation.FunRel : LexLeanTarget.TargetSyntax.Program →\n Nat → List LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs → Prop :=\nfun p f args o =>\n ∃ fn,\n LexLeanRuntime.index p.functions f = some fn ∧\n ∃ env,\n LexLeanTarget.TargetSemantics.bindAll fn.parameters args [] = some env ∧\n LexLeanPreservation.Conv p env fn.body o\ndef LexLeanPreservation.RunConv : LexLeanTarget.TargetSyntax.Program →\n Nat → List LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs → Prop :=\nfun p entry args o => ∃ n, LexLeanPreservation.obs (LexLeanTarget.TargetSemantics.run n p entry args) = some o\ndef LexLeanPreservation.Rust.WT : LexLeanTarget.TargetSyntax.Program →\n LexLeanPreservation.Rust.RCrate →\n LexLeanPreservation.Rust.Flags → LexLeanTarget.TargetSyntax.Value → LexLeanTarget.TargetSyntax.Ty → Prop :=\nfun p c A x x_1 =>\n x.brecOn (LexLeanPreservation.Rust.WT._f p c A)\n (fun t f => ⟨LexLeanPreservation.Rust.WTL._f p c A t f, LexLeanPreservation.Rust.WTAll._f p c A t f⟩) x_1\ndef LexLeanPreservation.Rust.WTL : LexLeanTarget.TargetSyntax.Program →\n LexLeanPreservation.Rust.RCrate →\n LexLeanPreservation.Rust.Flags →\n List LexLeanTarget.TargetSyntax.Value → List LexLeanTarget.TargetSyntax.Ty → Prop :=\nfun p c A x x_1 =>\n (LexLeanTarget.TargetSyntax.Value.brecOn_1 x (LexLeanPreservation.Rust.WT._f p c A) fun t f =>\n ⟨LexLeanPreservation.Rust.WTL._f p c A t f, LexLeanPreservation.Rust.WTAll._f p c A t f⟩).1\n x_1\ndef LexLeanPreservation.Rust.fnIdent : Nat → LexLeanPreservation.Rust.RIdent :=\nfun f => LexLeanTarget.RustSyntax.Ident.generated LexLeanTarget.RustSyntax.IdentKind.function f\ndef LexLeanPreservation.Rust.fnFallible : LexLeanPreservation.Rust.RCrate → Nat → Option Bool :=\nfun c f =>\n Option.map (fun fn => LexLeanTarget.RustSemantics.fallibleType fn.snd.fst)\n (LexLeanTarget.RustSemantics.findFunction c.items (LexLeanPreservation.Rust.fnIdent f))\ndef LexLeanPreservation.Rust.RCI : LexLeanPreservation.Rust.RCrate →\n LexLeanPreservation.Rust.RIdent → List LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Rust.ROut → Prop :=\nfun c f args o =>\n o ≠ LexLeanTarget.RustSemantics.ROutcome.exhausted ∧ ∃ n, LexLeanTarget.RustSemantics.invoke n c f args = o\ndef LexLeanPreservation.Rust.Realizes : Bool → LexLeanPreservation.Obs → LexLeanPreservation.Rust.ROut → Prop :=\nfun fl x x_1 =>\n match x, x_1 with\n | LexLeanPreservation.Obs.value v, LexLeanTarget.RustSemantics.ROutcome.value w => w = v\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.raise => fl = true\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.abort => True\n | x, x_2 => False\ndef LexLeanPreservation.Rust.RealizesFn : Bool → LexLeanPreservation.Obs → LexLeanPreservation.Rust.ROut → Prop :=\nfun fallible x x_1 =>\n match x, x_1 with\n | LexLeanPreservation.Obs.value v, LexLeanTarget.RustSemantics.ROutcome.value w => w = bif fallible then v.ok else v\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.value w =>\n fallible = true ∧ w = LexLeanTarget.TargetSyntax.Value.unit.error\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.abort => True\n | x, x_2 => False\ndef LexLeanPreservation.Rust.FunSem : LexLeanTarget.TargetSyntax.Program →\n LexLeanPreservation.Rust.RCrate → LexLeanPreservation.Rust.Flags → Nat → Nat → Prop :=\nfun p c A n f =>\n ∀ (fn : LexLeanTarget.TargetSyntax.Function) (args : List LexLeanTarget.TargetSyntax.Value)\n (env : List (Nat × LexLeanTarget.TargetSyntax.Value)) (F : Bool),\n LexLeanRuntime.index p.functions f = some fn →\n LexLeanPreservation.Rust.WTL p c A args fn.types →\n LexLeanTarget.TargetSemantics.bindAll fn.parameters args [] = some env →\n LexLeanPreservation.Rust.fnFallible c f = some F →\n ∀ (o : LexLeanPreservation.Obs),\n LexLeanPreservation.obs (LexLeanTarget.TargetSemantics.eval n p env fn.body) = some o →\n o ≠ LexLeanPreservation.Obs.stuck →\n (∀ (v : LexLeanTarget.TargetSyntax.Value),\n o = LexLeanPreservation.Obs.value v → LexLeanPreservation.Rust.WT p c A v fn.result) ∧\n ∃ ro,\n LexLeanPreservation.Rust.RealizesFn F o ro ∧\n LexLeanPreservation.Rust.RCI c (LexLeanPreservation.Rust.fnIdent f) args ro\ndef LexLeanPreservation.someObs : LexLeanPreservation.Obs → LexLeanPreservation.Obs :=\nfun x =>\n match x with\n | LexLeanPreservation.Obs.value v => LexLeanPreservation.Obs.value v.some\n | LexLeanPreservation.Obs.overflow => LexLeanPreservation.Obs.overflow\n | LexLeanPreservation.Obs.stuck => LexLeanPreservation.Obs.stuck\ndef LexLeanPreservation.Rust.Representable : LexLeanTarget.TargetSyntax.Value → Prop :=\nfun x => x.brecOn LexLeanPreservation.Rust.Representable._f LexLeanPreservation.Rust.RepresentableL._f\ndef LexLeanPreservation.Rust.RepresentableL : List LexLeanTarget.TargetSyntax.Value → Prop :=\nfun x =>\n LexLeanTarget.TargetSyntax.Value.brecOn_1 x LexLeanPreservation.Rust.Representable._f\n LexLeanPreservation.Rust.RepresentableL._f\nLexLeanPreservation.Rust.runItem_abort_infallible : ∀ (profile : LexLeanTarget.RustSyntax.Profile)\n (item : LexLeanTarget.RustSyntax.Item) (values : List LexLeanTarget.TargetSyntax.Value),\n LexLeanTarget.RustSemantics.runItem profile item values = LexLeanTarget.RustSemantics.ROutcome.abort →\n LexLeanTarget.RustSemantics.itemFallible item = false\n","stdout_sha256":"906145791431d036a18e82fbbd46a58f88c34d33acce3cf74dd8867e6ff3304a","tool":"lean"} +{"argv":["env","lean","-R","$STAGING/preserve-src","$STAGING/preserve-src/LexLeanPreserve/Audit.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Audit","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanPreservation.Obs' does not depend on any axioms\n'LexLeanPreservation.obs.match_1' does not depend on any axioms\n'LexLeanPreservation.obs' does not depend on any axioms\n'LexLeanPreservation.Conv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ConvA' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ObsL' does not depend on any axioms\n'LexLeanPreservation.obsL.match_1' does not depend on any axioms\n'LexLeanPreservation.obsL' does not depend on any axioms\n'LexLeanPreservation.ConvL' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.FunRel' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Obs._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.Obs._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.Obs.casesOn' does not depend on any axioms\n'LexLeanPreservation.Obs.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.Obs.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Obs.ctorElim' does not depend on any axioms\n'LexLeanPreservation.Obs.overflow.elim' does not depend on any axioms\n'LexLeanPreservation.Obs.stuck.elim' does not depend on any axioms\n'LexLeanPreservation.Obs.value.elim' does not depend on any axioms\n'LexLeanPreservation.Obs.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.Obs.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Obs.overflow.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Obs.recOn' does not depend on any axioms\n'LexLeanPreservation.Obs.stuck.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Obs.value.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Obs.value.inj' does not depend on any axioms\n'LexLeanPreservation.Obs.value.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Obs.value.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ObsL._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.ObsL._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.ObsL.casesOn' does not depend on any axioms\n'LexLeanPreservation.ObsL.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.ObsL.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.ObsL.ctorElim' does not depend on any axioms\n'LexLeanPreservation.ObsL.overflow.elim' does not depend on any axioms\n'LexLeanPreservation.ObsL.stuck.elim' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.elim' does not depend on any axioms\n'LexLeanPreservation.ObsL.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.ObsL.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ObsL.overflow.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ObsL.recOn' does not depend on any axioms\n'LexLeanPreservation.ObsL.stuck.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.inj' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.injEq' depends on axioms: [propext]\n'LexLeanPreservation.ObsL.values.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rel' does not depend on any axioms\n'LexLeanPreservation.Rel.eq_1' does not depend on any axioms\n'LexLeanPreservation.RelL' does not depend on any axioms\n'LexLeanPreservation.RelL.eq_1' does not depend on any axioms\n'LexLeanPreservation.RunConv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.addSteps_ne' does not depend on any axioms\n'LexLeanPreservation.chargeResult_ne' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.stable.match_1_16' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_18' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_20' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_22' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_24' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_26' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.eval.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.stable' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.evalArms_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs_ne' does not depend on any axioms\n'LexLeanPreservation.convA_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.eval_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs_addSteps' does not depend on any axioms\n'LexLeanPreservation.convA_hit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.convA_miss' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.evalList_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obsL_ne' does not depend on any axioms\n'LexLeanPreservation.convL_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.convL_cons._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.convL_cons._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.convL_cons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.convL_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_apply._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_apply._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_apply._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_apply' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_build' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_call._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_call._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_call' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_closure' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_cond._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_cond._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_field' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_first' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_let._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_let._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_let' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_match._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_match._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_match' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_matchV' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs_chargeResult' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_prim' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_second' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_var' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.funRel_intro' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs.eq_1' does not depend on any axioms\n'LexLeanPreservation.obs.eq_2' does not depend on any axioms\n'LexLeanPreservation.obs.eq_3' does not depend on any axioms\n'LexLeanPreservation.obs.eq_4' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_1' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_2' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_3' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_4' does not depend on any axioms\n'LexLeanPreservation.run_of_funRel' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.run.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ListEnc' does not depend on any axioms\n'LexLeanPreservation.ListEnc._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.ListEnc._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.ListEnc.casesOn' does not depend on any axioms\n'LexLeanPreservation.ListEnc.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.ListEnc.elem' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items' does not depend on any axioms\n'LexLeanPreservation.ListEnc.enc' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_cons' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_eq.match_1_1' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_nil' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_eq._f' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_eq' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.ListEnc.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.ListEnc.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk.inj' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk.injEq' depends on axioms: [propext]\n'LexLeanPreservation.ListEnc.mk.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ListEnc.recOn' does not depend on any axioms\n'LexLeanPreservation.OptEnc' does not depend on any axioms\n'LexLeanPreservation.OptEnc._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.OptEnc._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.OptEnc.casesOn' does not depend on any axioms\n'LexLeanPreservation.OptEnc.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.OptEnc.elem' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc_none' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc_some' does not depend on any axioms\n'LexLeanPreservation.encOption.match_1' does not depend on any axioms\n'LexLeanPreservation.encOption' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc_map' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.OptEnc.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.OptEnc.noConfusion' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk.noConfusion' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk.inj' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk.injEq' depends on axioms: [propext]\n'LexLeanPreservation.OptEnc.mk.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.OptEnc.recOn' does not depend on any axioms\n'LexLeanPreservation.construct_adt' does not depend on any axioms\n'LexLeanPreservation.construct_cons' does not depend on any axioms\n'LexLeanPreservation.construct_error' does not depend on any axioms\n'LexLeanPreservation.construct_false' does not depend on any axioms\n'LexLeanPreservation.construct_nil' does not depend on any axioms\n'LexLeanPreservation.construct_none' does not depend on any axioms\n'LexLeanPreservation.construct_ok' does not depend on any axioms\n'LexLeanPreservation.construct_pair' does not depend on any axioms\n'LexLeanPreservation.construct_some' does not depend on any axioms\n'LexLeanPreservation.construct_succ' does not depend on any axioms\n'LexLeanPreservation.construct_true' does not depend on any axioms\n'LexLeanPreservation.construct_unit' does not depend on any axioms\n'LexLeanPreservation.construct_zero' does not depend on any axioms\n'LexLeanPreservation.encExcept.match_1' does not depend on any axioms\n'LexLeanPreservation.encExcept' does not depend on any axioms\n'LexLeanPreservation.encList' does not depend on any axioms\n'LexLeanPreservation.encOrdering.match_1' does not depend on any axioms\n'LexLeanPreservation.encOrdering' does not depend on any axioms\n'LexLeanPreservation.encPair' does not depend on any axioms\n'LexLeanPreservation.encUnit' does not depend on any axioms\n'LexLeanPreservation.listEnc._proof_1' does not depend on any axioms\n'LexLeanPreservation.listEnc._proof_2' does not depend on any axioms\n'LexLeanPreservation.listEnc' does not depend on any axioms\n'LexLeanPreservation.optEnc._proof_1' does not depend on any axioms\n'LexLeanPreservation.optEnc._proof_2' does not depend on any axioms\n'LexLeanPreservation.optEnc' does not depend on any axioms\n'LexLeanPreservation.bytes_empty' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.bytes_one' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.bytes_zero' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.encOrdering.eq_1' does not depend on any axioms\n'LexLeanPreservation.encOrdering.eq_2' does not depend on any axioms\n'LexLeanPreservation.encOrdering.eq_3' does not depend on any axioms\n'LexLeanPreservation.fromOrdering_encOrdering' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.fromStrings_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.fromStrings_map._f' does not depend on any axioms\n'LexLeanPreservation.fromStrings_map' does not depend on any axioms\n'LexLeanPreservation.intFits' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.listIndex_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.listIndex_map._f' does not depend on any axioms\n'LexLeanPreservation.listIndex_map' does not depend on any axioms\n'LexLeanPreservation.listIndex_unique.match_1_1' does not depend on any axioms\n'LexLeanPreservation.listIndex_unique._f' does not depend on any axioms\n'LexLeanPreservation.listIndex_unique' does not depend on any axioms\n'LexLeanPreservation.obs_intResult' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.obs_natResult' does not depend on any axioms\n'LexLeanPreservation.prim_append_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_append_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_boolNot' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_compareBytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_bool' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_nat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_ordering' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_string' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_index_bytes.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_index_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_index_list.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_index_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intMul' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intNeg' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intQuot' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intRem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intSub' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_join.match_1_1' does not depend on any axioms\n'LexLeanPreservation.toStrings_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.toStrings_map.match_1_3' does not depend on any axioms\n'LexLeanPreservation.toStrings_map._f' does not depend on any axioms\n'LexLeanPreservation.toStrings_map' does not depend on any axioms\n'LexLeanPreservation.prim_join' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_length_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_length_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_length_string' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natAdd' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natEq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natLe' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natLt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natMul' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natQuot' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natRem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natSub' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_slice_bytes.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_slice_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_slice_list.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_slice_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_splitExact.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_splitExact' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_utf8Decode.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_utf8Decode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_utf8Encode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.compareBytes.eq_1' depends on axioms: [propext]\n'LexLeanRuntime.equal.eq_1' does not depend on any axioms\n'LexLeanRuntime.length.eq_1' does not depend on any axioms\n'LexLeanRuntime.slice.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromOrdering.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.checkedMultiplyWith.match_1' does not depend on any axioms\n'LexLeanPreservation.checkedMultiplyWith' does not depend on any axioms\n'LexLeanPreservation.checkedQuotientWith' does not depend on any axioms\n'LexLeanPreservation.decimalFits.match_1' does not depend on any axioms\n'LexLeanPreservation.decimalFits' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.divideStep' does not depend on any axioms\n'LexLeanPreservation.divide_unique.match_1_1' does not depend on any axioms\n'LexLeanPreservation.divide_unique._f' does not depend on any axioms\n'LexLeanPreservation.divide_unique' does not depend on any axioms\n'LexLeanPreservation.multiplyStep' does not depend on any axioms\n'LexLeanPreservation.multiply_unique.match_1_1' does not depend on any axioms\n'LexLeanPreservation.multiply_unique._f' does not depend on any axioms\n'LexLeanPreservation.multiply_unique' does not depend on any axioms\n'LexLeanPreservation.prim_bitAnd_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i64.match_1_2' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_int' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_int.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_int' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ordOf.match_1' does not depend on any axioms\n'LexLeanPreservation.ordOf' does not depend on any axioms\n'LexLeanPreservation.KeySpec' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.mk._flat_ctor' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.recOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.spec' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.compareCodes_eq.match_1_1' does not depend on any axioms\n'LexLeanPreservation.compareCodes_eq._f' depends on axioms: [propext]\n'LexLeanPreservation.compareCodes_eq' depends on axioms: [propext]\n'LexLeanPreservation.compareCodes_swap.match_1_1' does not depend on any axioms\n'LexLeanPreservation.compareCodes_swap._f' depends on axioms: [propext]\n'LexLeanPreservation.compareCodes_swap' depends on axioms: [propext]\n'LexLeanPreservation.lessThanE' does not depend on any axioms\n'LexLeanPreservation.prim_compare_key.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_compare_key' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_lessThan' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.orderOf_insert' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.orderBool.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.keySpec_bool' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI16.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI32.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI64.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI8.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderInt.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_int' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderNat.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_nat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.keySpec_pair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderString.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.keySpec_string' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU16.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU32.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU64.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU8.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanCollections.compareCodes._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_2' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_3' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_4' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_def' depends on axioms: [propext]\n'LexLeanCollections.insertEntry.eq_1' does not depend on any axioms\n'LexLeanCollections.insertEntry.eq_2' does not depend on any axioms\n'LexLeanCollections.insertEntry.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.compareValue.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_18' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_20' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_22' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_23' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_24' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_25' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_26' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_27' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_28' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_29' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_30' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_31' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_33' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_34' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_35' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_36' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_37' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_38' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_39' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_40' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_41' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_42' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_43' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_44' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_45' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_46' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_47' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_48' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_49' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_50' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_51' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_52' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_53' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_54' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_55' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_56' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_57' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_58' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_59' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_60' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_61' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_62' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_63' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_65' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_66' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_67' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_68' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_69' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_70' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_71' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_72' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_73' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_74' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_75' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_76' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_77' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_78' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_79' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_80' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_81' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_82' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_83' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_84' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_85' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_86' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_87' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_88' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_89' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_90' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_91' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_92' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_93' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_94' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_95' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_96' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_97' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_98' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_99' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Conv.bool_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Conv.fits_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.FunRel.fits_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ListEnc.enc.eq_1' does not depend on any axioms\n'LexLeanPreservation.ListEnc.enc_cons' does not depend on any axioms\n'LexLeanPreservation.ListEnc.enc_nil' does not depend on any axioms\n'LexLeanPreservation.LookOps' does not depend on any axioms\n'LexLeanPreservation.LookOps.casesOn' does not depend on any axioms\n'LexLeanPreservation.LookOps.l0' does not depend on any axioms\n'LexLeanPreservation.LookOps.leq' does not depend on any axioms\n'LexLeanPreservation.LookOps.lgt' does not depend on any axioms\n'LexLeanPreservation.LookOps.llt' does not depend on any axioms\n'LexLeanPreservation.LookOps.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.LookOps.recOn' does not depend on any axioms\n'LexLeanPreservation.SetOps' does not depend on any axioms\n'LexLeanPreservation.SetOps.c0' does not depend on any axioms\n'LexLeanPreservation.SetOps.casesOn' does not depend on any axioms\n'LexLeanPreservation.SetOps.ceq' does not depend on any axioms\n'LexLeanPreservation.SetOps.cgt' does not depend on any axioms\n'LexLeanPreservation.SetOps.clt' does not depend on any axioms\n'LexLeanPreservation.SetOps.i0' does not depend on any axioms\n'LexLeanPreservation.SetOps.ieq' does not depend on any axioms\n'LexLeanPreservation.SetOps.igt' does not depend on any axioms\n'LexLeanPreservation.SetOps.ilt' does not depend on any axioms\n'LexLeanPreservation.SetOps.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.SetOps.r0' does not depend on any axioms\n'LexLeanPreservation.SetOps.recOn' does not depend on any axioms\n'LexLeanPreservation.SetOps.req' does not depend on any axioms\n'LexLeanPreservation.SetOps.rgt' does not depend on any axioms\n'LexLeanPreservation.SetOps.rlt' does not depend on any axioms\n'LexLeanPreservation.TopoOps' does not depend on any axioms\n'LexLeanPreservation.TopoOps.casesOn' does not depend on any axioms\n'LexLeanPreservation.TopoOps.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.TopoOps.recOn' does not depend on any axioms\n'LexLeanPreservation.TopoOps.s_next' does not depend on any axioms\n'LexLeanPreservation.TopoOps.s_nil' does not depend on any axioms\n'LexLeanPreservation.TopoOps.s_stuck' does not depend on any axioms\n'LexLeanPreservation.TopoOps.z_cons' does not depend on any axioms\n'LexLeanPreservation.TopoOps.z_nil' does not depend on any axioms\n'LexLeanPreservation.Tpl.boolE' does not depend on any axioms\n'LexLeanPreservation.Tpl.byOrder' does not depend on any axioms\n'LexLeanPreservation.Tpl.cns' does not depend on any axioms\n'LexLeanPreservation.Tpl.fn' does not depend on any axioms\n'LexLeanPreservation.Tpl.lst' does not depend on any axioms\n'LexLeanPreservation.Tpl.v' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphInnerFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.pr' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphNodesFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.natOne' does not depend on any axioms\n'LexLeanPreservation.Tpl.nl' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphReachableFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphSuccessorsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphTopologicalFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.iterateFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.iterateUntilFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.listFoldFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapContainsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapFoldFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapInsertFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapLookupFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapProjectFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapRemoveFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reachFrontierFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reachIntoFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reachRoundsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reverseFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setContainsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setFilterFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setInsertFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setRemoveFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setUnionFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoFinished' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoReadyFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoRoundsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoUnreachedFn' does not depend on any axioms\n'LexLeanPreservation.blt_succ_fits._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.blt_succ_fits' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_cond_false' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_cond_true' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.enc_elem' does not depend on any axioms\n'LexLeanPreservation.enc_entry' does not depend on any axioms\n'LexLeanPreservation.foldFits.match_1' does not depend on any axioms\n'LexLeanPreservation.foldFits._f' does not depend on any axioms\n'LexLeanPreservation.foldFits' does not depend on any axioms\n'LexLeanPreservation.foldFits._sunfold' does not depend on any axioms\n'LexLeanPreservation.foldFits._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.foldFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.foldFits.eq_2' does not depend on any axioms\n'LexLeanPreservation.foldFits.eq_def' does not depend on any axioms\n'LexLeanPreservation.graphFits' does not depend on any axioms\n'LexLeanPreservation.graphFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.iterateFits.match_1' does not depend on any axioms\n'LexLeanPreservation.iterateFits._f' does not depend on any axioms\n'LexLeanPreservation.iterateFits' does not depend on any axioms\n'LexLeanPreservation.iterateFits._sunfold' does not depend on any axioms\n'LexLeanPreservation.iterateFits._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.iterateFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.iterateFits.eq_2' does not depend on any axioms\n'LexLeanPreservation.iterateFits.eq_def' does not depend on any axioms\n'LexLeanPreservation.length_eq' does not depend on any axioms\n'LexLeanPreservation.prim_compare_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.reachNext' does not depend on any axioms\n'LexLeanPreservation.tpl_graphInner.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setInsert.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setInsert._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setInsert' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphInner._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphInner' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphNodes.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_graphNodes._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphNodes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapLookup.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapLookup._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapLookup' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphSuccessors' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachFrontier.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_reachInto.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setContains.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setContains._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setContains' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachInto._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachInto' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachFrontier._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachFrontier' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachRounds.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setUnion.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setUnion._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setUnion' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachRounds._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachRounds' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphReachable' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reverse.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_reverse._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reverse' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setRemove.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setRemove._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setRemove' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoReady.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_topoUnreached.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_topoUnreached._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoUnreached' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoReady._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoReady' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoRounds.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_topoRounds._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoRounds' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphTopological' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterate.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_iterate._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterate' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterateUntil.match_1_1' does not depend on any axioms\n'LexLeanPreservation.untilFits.match_1' does not depend on any axioms\n'LexLeanPreservation.untilFits._f' does not depend on any axioms\n'LexLeanPreservation.untilFits' does not depend on any axioms\n'LexLeanPreservation.tpl_iterateUntil._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterateUntil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_listFold.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_listFold._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_listFold' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapContains' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapFold.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapFold._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapFold' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapInsert.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapInsert._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapInsert' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapKeys.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapKeys._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapKeys' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapRemove.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapRemove._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapRemove' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapValues.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapValues._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapValues' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setDifference.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setDifference._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setDifference' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setIntersection.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setIntersection._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setIntersection' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.untilFits._sunfold' does not depend on any axioms\n'LexLeanPreservation.untilFits._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.untilFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.untilFits.eq_2' does not depend on any axioms\n'LexLeanPreservation.untilFits.eq_def' does not depend on any axioms\n'LexLeanPreservation.validExcept.match_1' does not depend on any axioms\n'LexLeanPreservation.InvExcept' does not depend on any axioms\n'LexLeanPreservation.InvList' does not depend on any axioms\n'LexLeanPreservation.InvList.eq_1' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.match_1' does not depend on any axioms\n'LexLeanPreservation.StrictAsc._f' does not depend on any axioms\n'LexLeanPreservation.StrictAsc' does not depend on any axioms\n'LexLeanPreservation.InvMap' does not depend on any axioms\n'LexLeanPreservation.validOption.match_1' does not depend on any axioms\n'LexLeanPreservation.InvOption' does not depend on any axioms\n'LexLeanPreservation.InvOption.eq_1' does not depend on any axioms\n'LexLeanPreservation.InvOption.eq_2' does not depend on any axioms\n'LexLeanPreservation.InvPair' does not depend on any axioms\n'LexLeanPreservation.InvSet' does not depend on any axioms\n'LexLeanPreservation.StrictAsc._sunfold' does not depend on any axioms\n'LexLeanPreservation.StrictAsc._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_1' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_2' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_3' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_def' does not depend on any axioms\n'LexLeanPreservation.Tpl.validListFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validMapFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validOptionFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validPairFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validResultFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validSetFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validTrueFn' does not depend on any axioms\n'LexLeanPreservation.ascMap.match_1' does not depend on any axioms\n'LexLeanPreservation.lessB.match_1' does not depend on any axioms\n'LexLeanPreservation.lessB' does not depend on any axioms\n'LexLeanPreservation.ascMap._f' does not depend on any axioms\n'LexLeanPreservation.ascMap' does not depend on any axioms\n'LexLeanPreservation.ascMap._sunfold' does not depend on any axioms\n'LexLeanPreservation.ascMap._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_1' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_2' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_3' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_def' does not depend on any axioms\n'LexLeanPreservation.ascMap_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.lessB_iff' depends on axioms: [propext]\n'LexLeanPreservation.ascMap_iff._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.ascMap_iff' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.ascMap_inv' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.ascSet._f' does not depend on any axioms\n'LexLeanPreservation.ascSet' does not depend on any axioms\n'LexLeanPreservation.ascSet._sunfold' does not depend on any axioms\n'LexLeanPreservation.ascSet._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_1' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_2' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_3' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_def' does not depend on any axioms\n'LexLeanPreservation.ascSet_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.ascSet_iff._f' depends on axioms: [propext]\n'LexLeanPreservation.ascSet_iff' depends on axioms: [propext]\n'LexLeanPreservation.ascSet_inv' depends on axioms: [propext]\n'LexLeanPreservation.condAnd_iff' depends on axioms: [propext]\n'LexLeanPreservation.invList_eqs.match_1_1' does not depend on any axioms\n'LexLeanPreservation.invList_eqs._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.invList_eqs' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.lessB.eq_1' does not depend on any axioms\n'LexLeanPreservation.lessB_eq' depends on axioms: [propext]\n'LexLeanPreservation.lessB_gt' depends on axioms: [propext]\n'LexLeanPreservation.lessB_lt' depends on axioms: [propext]\n'LexLeanPreservation.someObs.match_1' does not depend on any axioms\n'LexLeanPreservation.someObs' does not depend on any axioms\n'LexLeanPreservation.tpl_validList.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validList.match_1' does not depend on any axioms\n'LexLeanPreservation.validList._f' does not depend on any axioms\n'LexLeanPreservation.validList' does not depend on any axioms\n'LexLeanPreservation.tpl_validList' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validMap.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_validMap._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validMap' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validOption.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validOption' does not depend on any axioms\n'LexLeanPreservation.tpl_validOption' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validPair.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validPair' does not depend on any axioms\n'LexLeanPreservation.tpl_validPair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validResult.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validExcept' does not depend on any axioms\n'LexLeanPreservation.tpl_validResult' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validSet.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_validSet._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validSet' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validTrue' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.trueIff' does not depend on any axioms\n'LexLeanPreservation.validExcept_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validExcept_inv' does not depend on any axioms\n'LexLeanPreservation.validList._sunfold' does not depend on any axioms\n'LexLeanPreservation.validList._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.validList.eq_1' does not depend on any axioms\n'LexLeanPreservation.validList.eq_2' does not depend on any axioms\n'LexLeanPreservation.validList.eq_def' does not depend on any axioms\n'LexLeanPreservation.validList_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validList_iff._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.validList_iff' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.validList_inv' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.validOption.eq_1' does not depend on any axioms\n'LexLeanPreservation.validOption.eq_2' does not depend on any axioms\n'LexLeanPreservation.validOption_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validOption_inv' depends on axioms: [propext]\n'LexLeanPreservation.validPair_inv' depends on axioms: [propext]\n'LexLeanPreservation.validTrue_inv' does not depend on any axioms\n'LexLeanPreservation.Rust.Ctx' does not depend on any axioms\n'LexLeanPreservation.Rust.Flags' does not depend on any axioms\n'LexLeanPreservation.Rust.RCrate' does not depend on any axioms\n'LexLeanPreservation.Rust.RIdent' does not depend on any axioms\n'LexLeanPreservation.Rust.WT._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.adtFields' depends on axioms: [propext]\n'LexLeanTarget.TargetSyntax.IntKind.ofNat' does not depend on any axioms\n'LexLeanTarget.TargetSyntax.IntKind.ofNat_ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Rust.instDecidableEqIntKind_lexLeanPreservation._proof_1' does not depend on any axioms\n'LexLeanPreservation.Rust.instDecidableEqIntKind_lexLeanPreservation._proof_2' does not depend on any axioms\n'LexLeanPreservation.Rust.instDecidableEqIntKind_lexLeanPreservation' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flagOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fnIdent' does not depend on any axioms\n'LexLeanPreservation.Rust.fnFallible' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.inert._f' does not depend on any axioms\n'LexLeanPreservation.Rust.inert' does not depend on any axioms\n'LexLeanPreservation.Rust.WT._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.WTAll._f' does not depend on any axioms\n'LexLeanPreservation.Rust.WTL.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctxLookup.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup._f' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup' does not depend on any axioms\n'LexLeanPreservation.Rust.local_' does not depend on any axioms\n'LexLeanPreservation.Rust.EnvRel' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ROut' does not depend on any axioms\n'LexLeanPreservation.Rust.Halt' does not depend on any axioms\n'LexLeanPreservation.Rust.REnv' does not depend on any axioms\n'LexLeanPreservation.Rust.RExpr' does not depend on any axioms\n'LexLeanPreservation.Rust.RC' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RLet' does not depend on any axioms\n'LexLeanPreservation.Rust.LetsOK' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.append' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.below' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.below.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.brecOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.recOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.append_left' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.append_right' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.below' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.below.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.brecOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.recOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RBlock' does not depend on any axioms\n'LexLeanPreservation.Rust.dispatched_ne' does not depend on any axioms\n'LexLeanPreservation.Rust.finished_ne' does not depend on any axioms\n'LexLeanPreservation.Rust.returned_ne' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_24' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_26' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_28' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_30' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_32' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_34' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_36' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.eval.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_22' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.invoke.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.stable' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.reval_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCB' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.block' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCA' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.revalBlock_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCB.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCI' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.invoke_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCI.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCL' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.revalList_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCL.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.WTAll' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.block_of_lets' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.block_of_raise' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.ctxLookup._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup_slot._simp_1_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotFree' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup_slot' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_cons_other' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sameIdent_self' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_cons_self' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sameIdent_local' depends on axioms: [propext]\n'LexLeanPreservation.Rust.envRel_bind' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.envRel_extra' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.envRel_ghost' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sameIdent_kind' depends on axioms: [propext]\n'LexLeanPreservation.Rust.envRel_temp' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.listIndex_eq.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.listIndex_eq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.listIndex_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.index_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.inert._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.inert._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_nil.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_raise_head.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcl_raise_head.match_1_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcl_raise_head' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_raise_tail' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.revalArms_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.slotFree.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sunfold' depends on axioms: [propext]\n'LexLeanTarget.RustSemantics.eval.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_18' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_20' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.invoke.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.invoke.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.kindNumber.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.lookup.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.lookup.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.lookup.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.lookup.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.lookup.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.lookup.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd' does not depend on any axioms\n'LexLeanPreservation.Rust.isTemp._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isTemp.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isTemp' depends on axioms: [propext]\n'LexLeanPreservation.Rust.letsBind.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds._f' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds._f' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind._f' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind' does not depend on any axioms\n'LexLeanPreservation.Rust.tempFresh' does not depend on any axioms\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.foldN.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.flatB._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep.match_7' does not depend on any axioms\n'LexLeanPreservation.Rust.foldStep' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldB' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats._f' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats' does not depend on any axioms\n'LexLeanPreservation.Rust.okBlock' does not depend on any axioms\n'LexLeanPreservation.Rust.partRead._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Kind.casesOn' does not depend on any axioms\n'LexLeanPreservation.Rust.elseCtx.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.elseCtx' does not depend on any axioms\n'LexLeanPreservation.Rust.elseLets.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.elseLets' does not depend on any axioms\n'LexLeanPreservation.Rust.heldOK.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.heldOK' does not depend on any axioms\n'LexLeanPreservation.Rust.negateR._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.negateR._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.negateR.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.negateR' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_5' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_7' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_9' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identBoxed' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal' does not depend on any axioms\n'LexLeanPreservation.Rust.isWild._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.unboxOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotOK.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocal' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armShape.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.armShape' does not depend on any axioms\n'LexLeanPreservation.Rust.otherArms.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.otherArms' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.noClosure.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.noClosure._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh' depends on axioms: [propext]\n'LexLeanPreservation.Rust.covered' depends on axioms: [propext]\n'LexLeanPreservation.Rust.scrut' does not depend on any axioms\n'LexLeanPreservation.Rust.validU.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.validU' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotOK' does not depend on any axioms\n'LexLeanPreservation.Rust.ctorOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identsDistinct.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct._f' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct' does not depend on any axioms\n'LexLeanPreservation.Rust.litOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArg._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.match_6' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArg.match_8' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArg' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArgs._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildTail.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildsArm.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildsArm' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.itemOK.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemOK' does not depend on any axioms\n'LexLeanPreservation.Rust.itemTyped.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemTyped.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf' does not depend on any axioms\n'LexLeanPreservation.Rust.itemTyped' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_9' does not depend on any axioms\n'LexLeanPreservation.Rust.isFixed._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped' depends on axioms: [propext]\n'LexLeanPreservation.Rust.primTyped' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.litValues._f' does not depend on any axioms\n'LexLeanPreservation.Rust.litValue' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.typedLitAll._f' does not depend on any axioms\n'LexLeanPreservation.Rust.typedLits.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Corr' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.below' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.below.casesOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.brecOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.casesOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.recOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.FunOK' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.CrateOK' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Fresh' does not depend on any axioms\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn' depends on axioms: [propext]\n'LexLeanPreservation.Rust.FunSem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Kind._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.casesOn' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ctorElim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.b.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.e.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.k.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.l.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.m.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.ops.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.recOn' does not depend on any axioms\n'LexLeanPreservation.Rust.KPre.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.KPre' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Kind.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.ctorElim' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Kind.nat.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.plain.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.plain.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.recOn' does not depend on any axioms\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesM.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.RealizesM' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Sem.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.viewVal._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Sem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.foldN._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identsDistinct._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_10' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_11' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_12' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_13' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_14' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_6' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_7' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_8' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.litValues' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue._sunfold' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.litValue._unsafe_rec' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues._sunfold' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.paramCtx._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patsBinds' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.patLocals._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patsBinds._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArgs._sunfold' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs._unsafe_rec' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.typedLitAll' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.typedLits._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_of_inert.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_of_inert.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_of_inert._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_of_inert' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_of_inert._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_of_inert' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Halt.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.LetsRaise.halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.block_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.boxed' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesM.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesM.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_bytes_inv' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_list_inv' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_string_inv' depends on axioms: [propext]\n'LexLeanPreservation.Rust.takes_of_typed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.allWidth_of.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_eq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_eq._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.tysBeq_eq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq_eq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.wt_fixed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.allWidth_of._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.allWidth_of' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.width_of_typed.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.width_of_typed.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.width_of_typed.match_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.width_of_typed' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.accepts_of_typed' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_apply' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtl_append.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_append._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_append' depends on axioms: [propext]\n'LexLeanPreservation.Rust.apply_result' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.bindPattern_shape.match_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.bindPattern_shape._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.bindPatterns_shape._simp_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindPatterns_shape.match_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.bindPatterns_shape._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.bindPattern_shape' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.bindPatterns_shape' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms_spec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_4' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_6' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_7' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.boolArms_eval' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.boxWith.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_100' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_102' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_96' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_98' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_function' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.call_result' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.const_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.convert_args.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.convert_args' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_append_fresh' depends on axioms: [propext]\n'LexLeanPreservation.Rust.envRel_fresh' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_not._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_cond.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.itemResult.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.eval_match' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fixedTyped.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_18' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_19' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_20' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_21' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_22' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_23' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_24' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_25' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_26' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_27' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_28' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_29' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_30' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_31' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_32' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_33' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_34' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_35' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_36' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_37' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_38' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_39' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_40' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_41' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_42' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_43' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_44' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_45' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_46' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_47' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_48' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_49' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_50' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_51' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_52' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_53' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_54' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_55' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_56' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_57' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_58' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_59' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_60' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_61' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN_sound.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.split_last.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.split_last._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.split_last' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep_spec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcb_nil_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_nomatch.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcb_cons_nomatch' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_stop' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_prefix' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_flat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_read_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_cons_same' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcb_fold_last' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldStep_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldN_sound._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldN_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldB_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldN.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_append' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_bind._simp_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_bind' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotFree_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_weaken' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_elseCtx' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_temp._simp_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_temp' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fromStrings_wt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fromStrings_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fromStrings_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.hasWidth_i16' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_i32' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_i64' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_i8' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u16' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u32' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u64' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u8' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.heldOK.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.heldOK.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.isFixed._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.isSeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.isTemp._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.itemOK.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemOperands_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.itemResult' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.kpre_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_pred._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_pred.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_pred' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.kpre_else' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.kpre_then' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_of_lets' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_b_rcb' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.k_branch' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_cond_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_isZero_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_lit_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate_halt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_negate_halt.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_nonZero_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_23' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_25' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_27' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_29' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_31' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_33' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_35' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_37' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_39' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_41' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_43' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_45' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_47' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_49' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_51' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_not_inv.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_not_inv.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_not_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.k_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_read.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_read' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.kpre_held' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.letsBind.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.letsOK_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.letsOK_shape' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.litValue._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_4' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_def' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_5' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.eq_def' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.lit_branch' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.lookup_through._simp_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.lookup_through' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms_spec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms_eval' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.obsL_evalList_zero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.obs_eval_zero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.oneOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf_halt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.param_env.match_1_1' depends on axioms: [propext]\n'LexLeanTarget.TargetSemantics.bindAll.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.param_env._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.param_env' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.patBinds.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_10' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_6' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_7' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_8' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.primTyped.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_apply_halt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_apply_halt.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_apply_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_call_halt.match_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_runtime' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_construct' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct_halt.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct_halt.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_isZero.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_isZero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_lit.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_lit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue._simp_10' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue._simp_9' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue.match_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_pair.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_pair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_litValues.match_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rcl_litValues._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_nonZero.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_nonZero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_pair_halt_left' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_pair_halt_right' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_widen.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_widen' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_widen_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_11' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_7' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_litValues' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_nil_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_single_halt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_single_halt.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_single_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_widen_one' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.readOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizesL_halt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizesL_haltL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizes_halt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizesM_overflow' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizes_oneOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.runItem_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.runItem_succ' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_applyGen.match_1_13' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen.match_1_15' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen.match_1_28' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_apply' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_applyF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_bOfE' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_build.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_build.match_1_99' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_build' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildConst' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildPair.match_1_101' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_97' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_99' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildSucc.match_1_129' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSucc.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSucc' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildSuccF.match_1_101' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSuccF.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSuccF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_callF.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callF.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_callOps.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callOps.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callOps' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_closure.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.wtl_length.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_length._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_length' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_closure' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_cond.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_cond.match_1_11' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_condId.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_condId' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_eOfB' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_eOfBFold' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_eOfBNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_fOfB' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_unit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_fUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kHeld' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kLit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kId' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kIf' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kNeg' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kSame' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_lCons.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons.match_1_17' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons.match_1_19' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_lNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_letBind.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letBind.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letBind' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_letWild.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letWild.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letWild' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBool._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchHolder.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchHolder.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchHolder' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBool' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBoolId._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBoolId.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchBoolId' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchNat._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchNat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchUnit._proof_1_386' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchUnit.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchUnit.match_1_387' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsCons._simp_1_13' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsCons.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons.match_1_14' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons.match_1_16' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsOfL' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_29' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_31' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_ops_box.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_ops_box.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_ops_box.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_ops_box' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_part._sparseCasesOn_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_part.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_part.match_1_14' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_part.match_1_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_part' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_part._sparseCasesOn_1_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_prim.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_prim.match_1_38' does not depend on any axioms\n'LexLeanPreservation.Rust.wtAll_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wtAll_iff._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.wtAll_iff' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_append' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_bitwise' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_checked' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_convert' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_decode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_encode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_fixedTyped.match_1_67' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_format' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_index' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_join' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_parse' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_shift' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.slice_eq' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_slice' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_split' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_unary' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtl_one.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_one' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_three.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_three' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_two.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_two' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_fixedTyped' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_prim' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_prim' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_primF.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF.match_1_7' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_primWiden.match_1_108' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_110' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_112' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_114' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_116' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.typedLitAll_wt.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit_wt.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits_wt.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_var' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_varUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_zero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.shapeOf.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_10' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_11' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_12' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_13' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_14' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_6' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_7' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_8' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.tempFresh.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_12.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_13.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_14.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.allWidth.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.allWidth.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.allWidth.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_100' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_101' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_102' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_103' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_104' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_105' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_106' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_107' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_108' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_109' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_110' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_111' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_112' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_113' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_114' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_115' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_116' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_117' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_118' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_119' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_120' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_121' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_122' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_123' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_124' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_125' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_126' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_127' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_128' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_129' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_130' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_131' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_132' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_133' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_134' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_135' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_136' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_137' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_138' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_139' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_140' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_141' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_142' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_143' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_144' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_145' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_146' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_147' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_148' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_149' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_150' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_151' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_152' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_153' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_154' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_155' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_156' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_157' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_158' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_159' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_160' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_161' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_162' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_163' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_164' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_165' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_166' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_167' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_168' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_169' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_170' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_171' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_172' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_173' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_174' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_175' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_176' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_177' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_178' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_179' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_180' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_181' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_182' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_183' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_184' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_185' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_186' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_51' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_52' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_53' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_54' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_55' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_56' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_57' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_58' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_59' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_60' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_61' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_62' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_63' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_64' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_65' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_66' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_67' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_68' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_69' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_70' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_71' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_72' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_73' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_74' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_75' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_76' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_77' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_78' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_79' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_80' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_81' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_82' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_83' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_84' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_85' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_86' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_87' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_88' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_89' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_90' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_91' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_92' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_93' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_94' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_95' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_96' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_97' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_98' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_99' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_100' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_101' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_102' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_103' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_104' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_105' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_106' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_107' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_108' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_109' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_110' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_111' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_112' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_113' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_114' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_115' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_116' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_117' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_118' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_119' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_120' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_121' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_122' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_123' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_124' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_125' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_126' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_127' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_128' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_129' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_130' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_131' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_132' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_133' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_134' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_135' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_136' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_137' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_138' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_139' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_140' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_141' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_142' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_143' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_144' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_145' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_146' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_147' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_148' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_149' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_150' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_151' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_152' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_153' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_154' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_155' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_156' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_157' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_158' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_159' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_160' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_161' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_162' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_163' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_164' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_165' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_166' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_167' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_168' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_169' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_170' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_171' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_172' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_173' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_174' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_175' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_176' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_177' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_178' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_179' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_180' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_181' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_182' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_183' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_184' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_51' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_52' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_53' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_54' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_55' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_56' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_57' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_58' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_59' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_60' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_61' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_62' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_63' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_64' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_65' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_66' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_67' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_68' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_69' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_70' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_71' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_72' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_73' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_74' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_75' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_76' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_77' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_78' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_79' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_80' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_81' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_82' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_83' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_84' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_85' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_86' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_87' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_88' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_89' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_90' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_91' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_92' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_93' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_94' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_95' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_96' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_97' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_98' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_99' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemAccepts.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemAccepts.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.literal.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_10' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_11' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_12' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_13' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_14' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_15' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_3' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_4' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_5' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_6' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_7' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_8' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_9' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.propagated.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.returned.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_10' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_11' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_12' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_13' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_14' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_15' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_16' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_17' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_18' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_19' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_20' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_21' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_22' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_23' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_24' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_25' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_26' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_27' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_28' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_29' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_30' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_31' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_32' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_33' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_34' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_35' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_36' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_37' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_38' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_39' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_40' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_41' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_42' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_43' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_44' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_45' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_46' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_47' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_48' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_49' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_5' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_50' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_51' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_52' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_53' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_54' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_55' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_56' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_57' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_58' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_59' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_6' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_60' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_61' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_62' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_63' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_64' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_65' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_66' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_67' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_68' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_69' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_7' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_70' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_71' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_72' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_73' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_74' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_75' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_76' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_77' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_78' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_79' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_8' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_80' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_81' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_82' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_83' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_9' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_10' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_100' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_101' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_102' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_103' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_104' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_105' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_106' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_107' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_108' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_109' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_11' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_110' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_111' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_112' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_113' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_114' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_115' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_116' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_117' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_118' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_119' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_12' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_120' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_121' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_122' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_123' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_124' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_125' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_126' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_127' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_128' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_129' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_13' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_130' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_131' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_132' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_133' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_134' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_135' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_136' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_137' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_138' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_139' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_14' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_140' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_141' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_142' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_143' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_144' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_145' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_146' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_147' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_148' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_149' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_15' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_150' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_151' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_152' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_153' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_154' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_155' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_156' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_157' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_158' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_159' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_16' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_160' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_161' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_162' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_163' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_164' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_165' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_166' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_167' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_168' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_169' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_17' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_170' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_171' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_172' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_173' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_174' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_175' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_176' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_177' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_178' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_179' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_18' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_180' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_181' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_182' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_183' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_184' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_185' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_186' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_187' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_188' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_189' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_19' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_190' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_191' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_192' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_193' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_194' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_195' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_196' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_197' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_198' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_199' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_20' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_200' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_201' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_202' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_203' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_204' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_205' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_206' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_207' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_208' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_209' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_21' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_210' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_211' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_212' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_213' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_214' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_215' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_216' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_217' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_218' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_219' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_22' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_220' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_221' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_222' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_223' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_224' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_225' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_226' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_227' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_228' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_229' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_23' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_230' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_231' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_232' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_233' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_234' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_235' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_236' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_237' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_238' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_239' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_24' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_240' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_241' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_242' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_243' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_244' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_245' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_246' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_247' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_248' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_249' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_25' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_250' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_251' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_252' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_253' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_254' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_255' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_256' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_257' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_258' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_259' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_26' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_260' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_261' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_262' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_263' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_264' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_265' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_266' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_267' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_268' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_269' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_27' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_270' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_271' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_272' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_273' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_274' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_275' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_276' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_277' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_278' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_279' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_28' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_280' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_281' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_282' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_283' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_284' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_285' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_286' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_287' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_288' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_289' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_29' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_290' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_291' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_292' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_293' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_294' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_295' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_296' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_297' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_298' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_299' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_30' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_300' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_301' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_302' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_303' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_304' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_305' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_306' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_307' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_308' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_309' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_31' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_310' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_311' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_312' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_313' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_314' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_315' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_316' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_317' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_318' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_319' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_32' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_320' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_321' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_322' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_323' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_324' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_325' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_326' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_327' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_328' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_329' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_33' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_330' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_331' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_332' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_333' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_334' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_335' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_336' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_337' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_338' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_339' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_34' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_340' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_341' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_342' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_343' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_344' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_345' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_346' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_347' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_348' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_349' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_35' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_350' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_351' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_352' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_353' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_354' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_355' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_356' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_357' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_358' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_359' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_36' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_360' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_361' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_362' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_363' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_364' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_365' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_366' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_367' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_368' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_369' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_37' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_370' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_38' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_39' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_40' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_41' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_42' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_43' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_44' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_45' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_46' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_47' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_48' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_49' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_5' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_50' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_51' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_52' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_53' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_54' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_55' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_56' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_57' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_58' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_59' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_6' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_60' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_61' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_62' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_63' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_64' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_65' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_66' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_67' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_68' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_69' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_7' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_70' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_71' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_72' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_73' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_74' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_75' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_76' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_77' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_78' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_79' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_8' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_80' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_81' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_82' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_83' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_84' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_85' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_86' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_87' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_88' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_89' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_9' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_90' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_91' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_92' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_93' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_94' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_95' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_96' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_97' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_98' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_99' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromStrings.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromStrings.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromStrings.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.primitive.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1000' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1001' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1002' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1003' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1004' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1005' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1006' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1007' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1008' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1009' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1010' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1011' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1012' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1013' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1014' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1015' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1016' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1017' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1018' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1019' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1020' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1021' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1022' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1023' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1024' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1025' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1026' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1027' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1028' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1029' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1030' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1031' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1032' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1033' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1034' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1035' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1036' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1037' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1038' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1039' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1040' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1041' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1042' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1043' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1044' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1045' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1046' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1047' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1048' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1049' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1050' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1051' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1052' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1053' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1054' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1055' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1056' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1057' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1058' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1059' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1060' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1061' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1062' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1063' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1064' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1065' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1066' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1067' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1068' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1069' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1070' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1071' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1072' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1073' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1074' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1075' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1076' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1077' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1078' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1079' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1080' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1081' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1082' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1083' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1084' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1085' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1086' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1087' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1088' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1089' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1090' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1091' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1092' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1093' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1094' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1095' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1096' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1097' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1098' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1099' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1426' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1427' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1428' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1429' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1430' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1431' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1432' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1433' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1434' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1435' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1436' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1437' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1438' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1439' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1440' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1441' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1442' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1443' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1444' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1445' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1446' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1447' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1448' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1449' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1450' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1451' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1452' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1453' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1454' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1455' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1456' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1457' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1458' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1459' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1460' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1461' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1462' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1463' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1464' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1465' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1466' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1467' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1468' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1469' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1470' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1471' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1472' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1473' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1474' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1475' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1476' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1477' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1478' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1479' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1480' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1481' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1482' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1483' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1484' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1485' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1486' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1487' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1488' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1489' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1490' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1491' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1492' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1493' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1494' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1495' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1496' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1497' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1498' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1499' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1500' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1501' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1502' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1503' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1504' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1505' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1506' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1507' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1508' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1509' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1510' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1511' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1512' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1513' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1514' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1515' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1516' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1517' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1518' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1519' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1520' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1521' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1522' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1523' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1524' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1525' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1526' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1527' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1528' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1529' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1530' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1531' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1532' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1533' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1534' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1535' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1536' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1537' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1538' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1539' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1540' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1541' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1542' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1543' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1544' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1545' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1546' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1547' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1548' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1549' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1550' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1551' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1552' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1553' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1554' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1555' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1556' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1557' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1558' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1559' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1560' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1561' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1562' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1563' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1564' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1565' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1566' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1567' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1568' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1569' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1570' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1571' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1572' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1573' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1574' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1575' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1576' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1577' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1578' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1579' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1580' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1581' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1582' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1583' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1584' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1585' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1586' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1587' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1588' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1589' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1590' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1591' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1592' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1593' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1594' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1595' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1596' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1597' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1598' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1599' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1600' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1601' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1602' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1603' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1604' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1605' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1606' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1607' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1608' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1609' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1610' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1611' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1612' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1613' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1614' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1615' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1616' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1617' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1618' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1619' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1620' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1621' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1622' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1623' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1624' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1625' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1626' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1627' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1628' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1629' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1630' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1631' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1632' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1633' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1634' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1635' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1636' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1637' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1638' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1639' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1640' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1641' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1642' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1643' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1644' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1645' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1646' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1647' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1648' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1649' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1650' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1651' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1652' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1653' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1654' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1655' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1656' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1657' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1658' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1659' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1660' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1661' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1662' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1663' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1664' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1665' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1666' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1667' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1668' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1669' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1670' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1671' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1672' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1673' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1674' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1675' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1676' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1677' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1678' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1679' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1680' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1681' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1682' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1683' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1684' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1685' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1686' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1687' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1688' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1689' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1690' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1691' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1692' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1693' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1694' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1695' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1696' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1697' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1698' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1699' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1700' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1701' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1702' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1703' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1704' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1705' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1706' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1707' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1708' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1709' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1710' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1711' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1712' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1713' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1714' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1715' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1716' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1717' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1718' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1719' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1720' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1721' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1722' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1723' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1724' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1725' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1726' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1727' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1728' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1729' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1730' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1731' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1732' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1733' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1734' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1735' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1736' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1737' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1738' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1739' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1740' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1741' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1742' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1743' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1744' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1745' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1746' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1747' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1748' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1749' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1750' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1751' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1752' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1753' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1754' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1755' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1756' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1757' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1758' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1759' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1760' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1761' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1762' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1763' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1764' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1765' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1766' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1767' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1768' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1769' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1770' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1771' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1772' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1773' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1774' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1775' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1776' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1777' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1778' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1779' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1780' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1781' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1782' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1783' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1784' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1785' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1786' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1787' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1788' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1789' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1790' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1791' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1792' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1793' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1794' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1795' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1796' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1797' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1798' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1799' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_18' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1800' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1801' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1802' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1803' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1804' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1805' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1806' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1807' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1808' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1809' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1810' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1811' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1812' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1813' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1814' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1815' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1816' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1817' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1818' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1819' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1820' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1821' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1822' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1823' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1824' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1825' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1826' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1827' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1828' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1829' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1830' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1831' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1832' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1833' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1834' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1835' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1836' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1837' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1838' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1839' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1840' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1841' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1842' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1843' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1844' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1845' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1846' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1847' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1848' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1849' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1850' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1851' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1852' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1853' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1854' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1855' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1856' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1857' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1858' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1859' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1860' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1861' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1862' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1863' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1864' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1865' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1866' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1867' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1868' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1869' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1870' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1871' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1872' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1873' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1874' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1875' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1876' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1877' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1878' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1879' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1880' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1881' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1882' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1883' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1884' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1885' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1886' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1887' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1888' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1889' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1890' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1891' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1892' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1893' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1894' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1895' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1896' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1897' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1898' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1899' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1900' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1901' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1902' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1903' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1904' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1905' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1906' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1907' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1908' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1909' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1910' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1911' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1912' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1913' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1914' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1915' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1916' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1917' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1918' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1919' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1920' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1921' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1922' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1923' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1924' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1925' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1926' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1927' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1928' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1929' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1930' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1931' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1932' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1933' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1934' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1935' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1936' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1937' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1938' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1939' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1940' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1941' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1942' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1943' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1944' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1945' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1946' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1947' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1948' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1949' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1950' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1951' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1952' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1953' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1954' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1955' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1956' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1957' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1958' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1959' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1960' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1961' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1962' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1963' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1964' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1965' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1966' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1967' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1968' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1969' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1970' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1971' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1972' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1973' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1974' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1975' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1976' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1977' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1978' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1979' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1980' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1981' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1982' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1983' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1984' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1985' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1986' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1987' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1988' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1989' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1990' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1991' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1992' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1993' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1994' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1995' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1996' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1997' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1998' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1999' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_20' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2000' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2001' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2002' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2003' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2004' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2005' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2006' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2007' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2008' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2009' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2010' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2011' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2012' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2013' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2014' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2015' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2016' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2017' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2018' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2019' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2020' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2021' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2022' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2023' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2024' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2025' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2026' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2027' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2028' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2029' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2030' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2031' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2032' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2033' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2034' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2035' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2036' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2037' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2038' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2039' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2040' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2041' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2042' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2043' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2044' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2045' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2046' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2047' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2048' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2049' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2050' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2051' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2052' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2053' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2054' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2055' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2056' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2057' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2058' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2059' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2060' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2061' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2062' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2063' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2064' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2065' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2066' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2067' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2068' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2069' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2070' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2071' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2072' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2073' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2074' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2075' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2076' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2077' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2078' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2079' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2080' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2081' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2082' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2083' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2084' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2085' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2086' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2087' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2088' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2089' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2090' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2091' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2092' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2093' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2094' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2095' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2096' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2097' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2098' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2099' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_22' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_23' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_24' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2426' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2427' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2428' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2429' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2430' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2431' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2432' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2433' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2434' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2435' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2436' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2437' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2438' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2439' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2440' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2441' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2442' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2443' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2444' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2445' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2446' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2447' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2448' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2449' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2450' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2451' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2452' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2453' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2454' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2455' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2456' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2457' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2458' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2459' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2460' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2461' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2462' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2463' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2464' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2465' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2466' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2467' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2468' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2469' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2470' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2471' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2472' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2473' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2474' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2475' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2476' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2477' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2478' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2479' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2480' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2481' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2482' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2483' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2484' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2485' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2486' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2487' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2488' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2489' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2490' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2491' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2492' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2493' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2494' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2495' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2496' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2497' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2498' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2499' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_25' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2500' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2501' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2502' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2503' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2504' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2505' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2506' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2507' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2508' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2509' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2510' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2511' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2512' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2513' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2514' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2515' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2516' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2517' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2518' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2519' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2520' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2521' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2522' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2523' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2524' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2525' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2526' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2527' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2528' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2529' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2530' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2531' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2532' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2533' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2534' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2535' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2536' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2537' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2538' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2539' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2540' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2541' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2542' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2543' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2544' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2545' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2546' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2547' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2548' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2549' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2550' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2551' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2552' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2553' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2554' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2555' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2556' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2557' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2558' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2559' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2560' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2561' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2562' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2563' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2564' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2565' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2566' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2567' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2568' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2569' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2570' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2571' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2572' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2573' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2574' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2575' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2576' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2577' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2578' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2579' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2580' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2581' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2582' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2583' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2584' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2585' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2586' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2587' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2588' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2589' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2590' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2591' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2592' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2593' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2594' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2595' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2596' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2597' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2598' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2599' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_26' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2600' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2601' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2602' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2603' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2604' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2605' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2606' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2607' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2608' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2609' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2610' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2611' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2612' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2613' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2614' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2615' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2616' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2617' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2618' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2619' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2620' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2621' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2622' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2623' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2624' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2625' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2626' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2627' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2628' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2629' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2630' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2631' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2632' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2633' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2634' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2635' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2636' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2637' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2638' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2639' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2640' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2641' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2642' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2643' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2644' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2645' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2646' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2647' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2648' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2649' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2650' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2651' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2652' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2653' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2654' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2655' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2656' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2657' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2658' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2659' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2660' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2661' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2662' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2663' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2664' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2665' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2666' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2667' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2668' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2669' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2670' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2671' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2672' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2673' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2674' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2675' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2676' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2677' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2678' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2679' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2680' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2681' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2682' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2683' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2684' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2685' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2686' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2687' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2688' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2689' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2690' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2691' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2692' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2693' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2694' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2695' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2696' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2697' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2698' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2699' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_27' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2700' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2701' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2702' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2703' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2704' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2705' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2706' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2707' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2708' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2709' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2710' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2711' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2712' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2713' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2714' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2715' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2716' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2717' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2718' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2719' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2720' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2721' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2722' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2723' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2724' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2725' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2726' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2727' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2728' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2729' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2730' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2731' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2732' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2733' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2734' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2735' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2736' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2737' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2738' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2739' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2740' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2741' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2742' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2743' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2744' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2745' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2746' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2747' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2748' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2749' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2750' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2751' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2752' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2753' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2754' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2755' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2756' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2757' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2758' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2759' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2760' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2761' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2762' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2763' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2764' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2765' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2766' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2767' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2768' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2769' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2770' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2771' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2772' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2773' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2774' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2775' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2776' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2777' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2778' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2779' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2780' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2781' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2782' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2783' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2784' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2785' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2786' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2787' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2788' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2789' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2790' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2791' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2792' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2793' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2794' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2795' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2796' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2797' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2798' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2799' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_28' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2800' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2801' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2802' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2803' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2804' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2805' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2806' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2807' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2808' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2809' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2810' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2811' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2812' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2813' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2814' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2815' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2816' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2817' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2818' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2819' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2820' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2821' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2822' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2823' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2824' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2825' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2826' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2827' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2828' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2829' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2830' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2831' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2832' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2833' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2834' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2835' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2836' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2837' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2838' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2839' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2840' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2841' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2842' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2843' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2844' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2845' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2846' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2847' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2848' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2849' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2850' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2851' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2852' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2853' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2854' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2855' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2856' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2857' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2858' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2859' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2860' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2861' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2862' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2863' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2864' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2865' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2866' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2867' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2868' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2869' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2870' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2871' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2872' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2873' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2874' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2875' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2876' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2877' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2878' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2879' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2880' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2881' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2882' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2883' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2884' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2885' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2886' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2887' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2888' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2889' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2890' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2891' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2892' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2893' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2894' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2895' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2896' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2897' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2898' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2899' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_29' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2900' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2901' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2902' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2903' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2904' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2905' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2906' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2907' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2908' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2909' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2910' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2911' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2912' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2913' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2914' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2915' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2916' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2917' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2918' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2919' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2920' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2921' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2922' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2923' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2924' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2925' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2926' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2927' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2928' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2929' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2930' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2931' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2932' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2933' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2934' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2935' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2936' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2937' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2938' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2939' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2940' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2941' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2942' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2943' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2944' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2945' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2946' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2947' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2948' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2949' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2950' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2951' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2952' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2953' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2954' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2955' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2956' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2957' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2958' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2959' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2960' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2961' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2962' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2963' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2964' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2965' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2966' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2967' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2968' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2969' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2970' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2971' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2972' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2973' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2974' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2975' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2976' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2977' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2978' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2979' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2980' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2981' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2982' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2983' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2984' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2985' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2986' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2987' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2988' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2989' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2990' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2991' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2992' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2993' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2994' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2995' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2996' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2997' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2998' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2999' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_30' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3000' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3001' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3002' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3003' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3004' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3005' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3006' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3007' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3008' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3009' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3010' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3011' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3012' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3013' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3014' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3015' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3016' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3017' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3018' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3019' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3020' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3021' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3022' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3023' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3024' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3025' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3026' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3027' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3028' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3029' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3030' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3031' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3032' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3033' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3034' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3035' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3036' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3037' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3038' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3039' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3040' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3041' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3042' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3043' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3044' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3045' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3046' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3047' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3048' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3049' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3050' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3051' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3052' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3053' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3054' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3055' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3056' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3057' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3058' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3059' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3060' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3061' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3062' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3063' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3064' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3065' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3066' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3067' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3068' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3069' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3070' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3071' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3072' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3073' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3074' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3075' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3076' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3077' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3078' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3079' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3080' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3081' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3082' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3083' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3084' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3085' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3086' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3087' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3088' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3089' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3090' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3091' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3092' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3093' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3094' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3095' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3096' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3097' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3098' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3099' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_31' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_33' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_34' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_35' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_36' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_37' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_38' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_39' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_40' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_41' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_42' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_426' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_427' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_428' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_429' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_43' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_430' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_431' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_432' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_433' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_434' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_435' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_436' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_437' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_438' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_439' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_44' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_440' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_441' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_442' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_443' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_444' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_445' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_446' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_447' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_448' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_449' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_45' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_450' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_451' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_452' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_453' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_454' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_455' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_456' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_457' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_458' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_459' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_46' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_460' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_461' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_462' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_463' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_464' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_465' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_466' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_467' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_468' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_469' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_47' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_470' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_471' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_472' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_473' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_474' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_475' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_476' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_477' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_478' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_479' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_48' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_480' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_481' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_482' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_483' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_484' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_485' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_486' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_487' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_488' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_489' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_49' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_490' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_491' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_492' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_493' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_494' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_495' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_496' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_497' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_498' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_499' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_50' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_500' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_501' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_502' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_503' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_504' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_505' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_506' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_507' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_508' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_509' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_51' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_510' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_511' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_512' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_513' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_514' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_515' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_516' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_517' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_518' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_519' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_52' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_520' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_521' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_522' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_523' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_524' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_525' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_526' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_527' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_528' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_529' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_53' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_530' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_531' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_532' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_533' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_534' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_535' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_536' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_537' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_538' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_539' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_54' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_540' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_541' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_542' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_543' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_544' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_545' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_546' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_547' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_548' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_549' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_55' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_550' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_551' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_552' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_553' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_554' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_555' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_556' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_557' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_558' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_559' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_56' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_560' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_561' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_562' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_563' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_564' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_565' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_566' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_567' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_568' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_569' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_57' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_570' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_571' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_572' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_573' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_574' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_575' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_576' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_577' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_578' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_579' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_58' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_580' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_581' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_582' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_583' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_584' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_585' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_586' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_587' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_588' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_589' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_59' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_590' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_591' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_592' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_593' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_594' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_595' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_596' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_597' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_598' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_599' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_60' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_600' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_601' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_602' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_603' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_604' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_605' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_606' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_607' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_608' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_609' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_61' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_610' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_611' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_612' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_613' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_614' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_615' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_616' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_617' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_618' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_619' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_62' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_620' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_621' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_622' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_623' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_624' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_625' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_626' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_627' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_628' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_629' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_63' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_630' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_631' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_632' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_633' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_634' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_635' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_636' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_637' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_638' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_639' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_640' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_641' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_642' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_643' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_644' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_645' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_646' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_647' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_648' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_649' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_65' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_650' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_651' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_652' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_653' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_654' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_655' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_656' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_657' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_658' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_659' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_66' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_660' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_661' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_662' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_663' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_664' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_665' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_666' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_667' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_668' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_669' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_67' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_670' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_671' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_672' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_673' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_674' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_675' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_676' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_677' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_678' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_679' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_68' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_680' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_681' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_682' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_683' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_684' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_685' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_686' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_687' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_688' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_689' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_69' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_690' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_691' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_692' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_693' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_694' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_695' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_696' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_697' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_698' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_699' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_70' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_700' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_701' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_702' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_703' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_704' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_705' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_706' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_707' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_708' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_709' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_71' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_710' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_711' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_712' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_713' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_714' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_715' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_716' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_717' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_718' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_719' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_72' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_720' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_721' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_722' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_723' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_724' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_725' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_726' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_727' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_728' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_729' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_73' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_730' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_731' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_732' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_733' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_734' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_735' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_736' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_737' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_738' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_739' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_74' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_740' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_741' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_742' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_743' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_744' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_745' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_746' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_747' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_748' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_749' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_75' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_750' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_751' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_752' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_753' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_754' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_755' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_756' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_757' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_758' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_759' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_76' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_760' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_761' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_762' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_763' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_764' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_765' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_766' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_767' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_768' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_769' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_77' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_770' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_771' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_772' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_773' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_774' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_775' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_776' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_777' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_778' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_779' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_78' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_780' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_781' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_782' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_783' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_784' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_785' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_786' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_787' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_788' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_789' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_79' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_790' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_791' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_792' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_793' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_794' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_795' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_796' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_797' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_798' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_799' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_80' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_800' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_801' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_802' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_803' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_804' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_805' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_806' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_807' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_808' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_809' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_81' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_810' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_811' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_812' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_813' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_814' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_815' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_816' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_817' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_818' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_819' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_82' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_820' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_821' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_822' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_823' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_824' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_825' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_826' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_827' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_828' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_829' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_83' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_830' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_831' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_832' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_833' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_834' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_835' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_836' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_837' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_838' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_839' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_84' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_840' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_841' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_842' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_843' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_844' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_845' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_846' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_847' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_848' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_849' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_85' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_850' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_851' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_852' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_853' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_854' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_855' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_856' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_857' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_858' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_859' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_86' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_860' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_861' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_862' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_863' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_864' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_865' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_866' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_867' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_868' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_869' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_87' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_870' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_871' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_872' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_873' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_874' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_875' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_876' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_877' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_878' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_879' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_88' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_880' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_881' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_882' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_883' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_884' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_885' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_886' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_887' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_888' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_889' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_89' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_890' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_891' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_892' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_893' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_894' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_895' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_896' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_897' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_898' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_899' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_90' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_900' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_901' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_902' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_903' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_904' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_905' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_906' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_907' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_908' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_909' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_91' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_910' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_911' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_912' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_913' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_914' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_915' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_916' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_917' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_918' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_919' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_92' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_920' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_921' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_922' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_923' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_924' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_925' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_926' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_927' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_928' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_929' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_93' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_930' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_931' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_932' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_933' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_934' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_935' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_936' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_937' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_938' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_939' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_94' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_940' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_941' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_942' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_943' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_944' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_945' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_946' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_947' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_948' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_949' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_95' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_950' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_951' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_952' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_953' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_954' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_955' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_956' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_957' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_958' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_959' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_96' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_960' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_961' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_962' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_963' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_964' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_965' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_966' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_967' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_968' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_969' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_97' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_970' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_971' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_972' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_973' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_974' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_975' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_976' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_977' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_978' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_979' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_98' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_980' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_981' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_982' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_983' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_984' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_985' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_986' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_987' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_988' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_989' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_99' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_990' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_991' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_992' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_993' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_994' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_995' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_996' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_997' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_998' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_999' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.adtFields.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_12.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_13.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_12.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat_outer' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.boxedOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.boxedOne.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.boxedOne' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bp_entries._simp_1_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.simplePat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bp_entries.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.entriesOf._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bp_entries._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.bp_entries' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.directPat_cons._simp_1_4' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.identBoxed_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identLocal_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf_spec' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_cons' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_len.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_len._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_len' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_loads._simp_1_27' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_loads._simp_1_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_loads.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none._simp_1_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none._simp_1_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rlookup_append' depends on axioms: [propext]\n'LexLeanPreservation.Rust.same_boxed_boxed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_boxed_none' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_local_none._simp_1_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_local_none._simp_1_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_local_none.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.same_local_local' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_local_none._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_local_none' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_boxed_local' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rlookup_local_boxed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rlookup_local_single' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_loads._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.directPat_loads' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_boxed_some._simp_1_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_some._simp_1_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_some.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_some._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.entries_boxed_some' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.envRel_locals' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fields_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindPatterns_single' depends on axioms: [propext]\n'LexLeanPreservation.Rust.outer_bind' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.paramCtx_length.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_length._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_length' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.bindOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOne.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.covered.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.covered_mem._simp_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.wt_uninh._simp_10' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.covered_mem' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.ctorOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.destruct_canon' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq_refl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.destruct_excl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.directPat.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_lookup.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_none_of._simp_1_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_none_of.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sameIdent_iff' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_none_of._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_none_of' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.identsDistinct.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.entries_lookup._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_lookup' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.eval_field.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.eval_field._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_field.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_field' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats_none._simp_1_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats_none.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats_none._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats_none' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats_some._simp_1_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats_some.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats_some._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats_some' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_partRead' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.tyBeq_unit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.field_out' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.findArm_some.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.findArm_some._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.findArm_some' depends on axioms: [propext]\n'LexLeanPreservation.Rust.findDispatch_some.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.findDispatch_some._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.findDispatch_some' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_ext' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identBoxed.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identBoxed.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.isWild._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.okBlock.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.otherArms.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.otherArms_mem._simp_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.otherArms_mem' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.outer_miss' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.outer_view' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_ext.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_ext._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_ext' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_fresh.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_fresh._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_fresh' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocal.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_matchOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_matchOn_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_uncons.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_uncons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_scrut' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rca_hit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rca_miss' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_det' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_rebuild.match_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_eq_of_same' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg_rc' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_rebuild._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_rebuild' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.readOf_rc' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.realizesM_value' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArg_simple' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_def' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs_simple.match_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs_simple._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs_simple' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_14.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuild_rca._simp_1_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuild_rca.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_value._simp_1_21' depends on axioms: [propext]\n'LexLeanPreservation.Rust.single_rebuild' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_rca._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_rca' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuildsArm.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_nil' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_fieldGen._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_fieldGen.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_fieldGen.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.wtl_get.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_get._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_get' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_fieldGen' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_fieldHeld' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_fieldRead' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_mCons._simp_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_mCons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_mNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchArms._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.tyBeq_refl.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq_refl._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.tysBeq_refl.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tysBeq_refl._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_refl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.tysBeq_refl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.uninh_of_inert.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.uninh_of_inert._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh_of_inert' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_uninh.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_uninh._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtl_uninh.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_uninh._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_uninh' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.taken_arm' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchArms' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchPair._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchPair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchRebuilt._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchRebuilt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchRebuilt.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchRebuilt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.simplePat.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.validU.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_uninh' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.findArm.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findArm.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findArm.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_5' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_6' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_7' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_8' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.fl_of' does not depend on any axioms\n'LexLeanPreservation.Rust.fnFallible.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of._simp_1_14' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.funSem_of.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_12' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.isTemp.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isTemp.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.item_ne' depends on axioms: [propext]\n'LexLeanPreservation.Rust.kind_ne' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sound._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sound._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.simulate' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Representable._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Representable.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Representable._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.RepresentableL._f' does not depend on any axioms\n'LexLeanPreservation.Rust.Representable' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Representable._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.Representable._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.compose' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rel_ne_stuck' depends on axioms: [propext]\n'LexLeanPreservation.Rust.repL_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.repL_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.runItem_abort_infallible' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtAll_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wtAll_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_map._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_map' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_adt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_bool' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_bytes' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encExcept.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_encExcept' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_list' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encList' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encOption.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_encOption' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encOrdering' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encPair' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encUnit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_errorV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i32' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i64' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_int' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_listEnc' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_nat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_noneV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_okV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_optEnc.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_someV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_optEnc' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_ordering' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_pairV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_string' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u32' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u64' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_unitValue' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_nil' depends on axioms: [propext]\n'LexLeanPreservation.encExcept.eq_1' does not depend on any axioms\n'LexLeanPreservation.encExcept.eq_2' does not depend on any axioms\n'LexLeanPreservation.encOption.eq_1' does not depend on any axioms\n'LexLeanPreservation.encOption.eq_2' does not depend on any axioms\n'LexLeanPreservation.encPair.eq_1' does not depend on any axioms\n'LexLeanPreservation.encUnit.eq_1' does not depend on any axioms\n'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.Compose.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.Compose.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.Compose.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.Compose.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.Compose.RustCore.__wt_0' depends on axioms: [propext]\n'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.Compose.RustStd.__wt_0' depends on axioms: [propext]\n-- statement vocabulary\ninductive LexLeanPreservation.Obs : Type\nnumber of parameters: 0\nconstructors:\nLexLeanPreservation.Obs.value : LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs\nLexLeanPreservation.Obs.overflow : LexLeanPreservation.Obs\nLexLeanPreservation.Obs.stuck : LexLeanPreservation.Obs\ndef LexLeanPreservation.Rel : Bool → LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs :=\nfun fits v => bif fits then LexLeanPreservation.Obs.value v else LexLeanPreservation.Obs.overflow\ndef LexLeanPreservation.Conv : LexLeanTarget.TargetSyntax.Program →\n List (Nat × LexLeanTarget.TargetSyntax.Value) → LexLeanTarget.TargetSyntax.Expr → LexLeanPreservation.Obs → Prop :=\nfun p env e o => ∃ n, LexLeanPreservation.obs (LexLeanTarget.TargetSemantics.eval n p env e) = some o\ndef LexLeanPreservation.FunRel : LexLeanTarget.TargetSyntax.Program →\n Nat → List LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs → Prop :=\nfun p f args o =>\n ∃ fn,\n LexLeanRuntime.index p.functions f = some fn ∧\n ∃ env,\n LexLeanTarget.TargetSemantics.bindAll fn.parameters args [] = some env ∧\n LexLeanPreservation.Conv p env fn.body o\ndef LexLeanPreservation.RunConv : LexLeanTarget.TargetSyntax.Program →\n Nat → List LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs → Prop :=\nfun p entry args o => ∃ n, LexLeanPreservation.obs (LexLeanTarget.TargetSemantics.run n p entry args) = some o\ndef LexLeanPreservation.Rust.WT : LexLeanTarget.TargetSyntax.Program →\n LexLeanPreservation.Rust.RCrate →\n LexLeanPreservation.Rust.Flags → LexLeanTarget.TargetSyntax.Value → LexLeanTarget.TargetSyntax.Ty → Prop :=\nfun p c A x x_1 =>\n x.brecOn (LexLeanPreservation.Rust.WT._f p c A)\n (fun t f => ⟨LexLeanPreservation.Rust.WTL._f p c A t f, LexLeanPreservation.Rust.WTAll._f p c A t f⟩) x_1\ndef LexLeanPreservation.Rust.WTL : LexLeanTarget.TargetSyntax.Program →\n LexLeanPreservation.Rust.RCrate →\n LexLeanPreservation.Rust.Flags →\n List LexLeanTarget.TargetSyntax.Value → List LexLeanTarget.TargetSyntax.Ty → Prop :=\nfun p c A x x_1 =>\n (LexLeanTarget.TargetSyntax.Value.brecOn_1 x (LexLeanPreservation.Rust.WT._f p c A) fun t f =>\n ⟨LexLeanPreservation.Rust.WTL._f p c A t f, LexLeanPreservation.Rust.WTAll._f p c A t f⟩).1\n x_1\ndef LexLeanPreservation.Rust.fnIdent : Nat → LexLeanPreservation.Rust.RIdent :=\nfun f => LexLeanTarget.RustSyntax.Ident.generated LexLeanTarget.RustSyntax.IdentKind.function f\ndef LexLeanPreservation.Rust.fnFallible : LexLeanPreservation.Rust.RCrate → Nat → Option Bool :=\nfun c f =>\n Option.map (fun fn => LexLeanTarget.RustSemantics.fallibleType fn.snd.fst)\n (LexLeanTarget.RustSemantics.findFunction c.items (LexLeanPreservation.Rust.fnIdent f))\ndef LexLeanPreservation.Rust.RCI : LexLeanPreservation.Rust.RCrate →\n LexLeanPreservation.Rust.RIdent → List LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Rust.ROut → Prop :=\nfun c f args o =>\n o ≠ LexLeanTarget.RustSemantics.ROutcome.exhausted ∧ ∃ n, LexLeanTarget.RustSemantics.invoke n c f args = o\ndef LexLeanPreservation.Rust.Realizes : Bool → LexLeanPreservation.Obs → LexLeanPreservation.Rust.ROut → Prop :=\nfun fl x x_1 =>\n match x, x_1 with\n | LexLeanPreservation.Obs.value v, LexLeanTarget.RustSemantics.ROutcome.value w => w = v\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.raise => fl = true\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.abort => True\n | x, x_2 => False\ndef LexLeanPreservation.Rust.RealizesFn : Bool → LexLeanPreservation.Obs → LexLeanPreservation.Rust.ROut → Prop :=\nfun fallible x x_1 =>\n match x, x_1 with\n | LexLeanPreservation.Obs.value v, LexLeanTarget.RustSemantics.ROutcome.value w => w = bif fallible then v.ok else v\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.value w =>\n fallible = true ∧ w = LexLeanTarget.TargetSyntax.Value.unit.error\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.abort => True\n | x, x_2 => False\ndef LexLeanPreservation.Rust.FunSem : LexLeanTarget.TargetSyntax.Program →\n LexLeanPreservation.Rust.RCrate → LexLeanPreservation.Rust.Flags → Nat → Nat → Prop :=\nfun p c A n f =>\n ∀ (fn : LexLeanTarget.TargetSyntax.Function) (args : List LexLeanTarget.TargetSyntax.Value)\n (env : List (Nat × LexLeanTarget.TargetSyntax.Value)) (F : Bool),\n LexLeanRuntime.index p.functions f = some fn →\n LexLeanPreservation.Rust.WTL p c A args fn.types →\n LexLeanTarget.TargetSemantics.bindAll fn.parameters args [] = some env →\n LexLeanPreservation.Rust.fnFallible c f = some F →\n ∀ (o : LexLeanPreservation.Obs),\n LexLeanPreservation.obs (LexLeanTarget.TargetSemantics.eval n p env fn.body) = some o →\n o ≠ LexLeanPreservation.Obs.stuck →\n (∀ (v : LexLeanTarget.TargetSyntax.Value),\n o = LexLeanPreservation.Obs.value v → LexLeanPreservation.Rust.WT p c A v fn.result) ∧\n ∃ ro,\n LexLeanPreservation.Rust.RealizesFn F o ro ∧\n LexLeanPreservation.Rust.RCI c (LexLeanPreservation.Rust.fnIdent f) args ro\ndef LexLeanPreservation.someObs : LexLeanPreservation.Obs → LexLeanPreservation.Obs :=\nfun x =>\n match x with\n | LexLeanPreservation.Obs.value v => LexLeanPreservation.Obs.value v.some\n | LexLeanPreservation.Obs.overflow => LexLeanPreservation.Obs.overflow\n | LexLeanPreservation.Obs.stuck => LexLeanPreservation.Obs.stuck\ndef LexLeanPreservation.Rust.Representable : LexLeanTarget.TargetSyntax.Value → Prop :=\nfun x => x.brecOn LexLeanPreservation.Rust.Representable._f LexLeanPreservation.Rust.RepresentableL._f\ndef LexLeanPreservation.Rust.RepresentableL : List LexLeanTarget.TargetSyntax.Value → Prop :=\nfun x =>\n LexLeanTarget.TargetSyntax.Value.brecOn_1 x LexLeanPreservation.Rust.Representable._f\n LexLeanPreservation.Rust.RepresentableL._f\nLexLeanPreservation.Rust.runItem_abort_infallible : ∀ (profile : LexLeanTarget.RustSyntax.Profile)\n (item : LexLeanTarget.RustSyntax.Item) (values : List LexLeanTarget.TargetSyntax.Value),\n LexLeanTarget.RustSemantics.runItem profile item values = LexLeanTarget.RustSemantics.ROutcome.abort →\n LexLeanTarget.RustSemantics.itemFallible item = false\n","stdout_sha256":"531665fb0302a3e1e19130bebaedee468fe5a68411b480ca471fa52e02740620","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.Compose.RustCore.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.Compose.RustCore.json deleted file mode 100644 index b59d30c81..000000000 --- a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.Compose.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R0/Compose/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R0/Compose/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.Compose.RustStd.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.Compose.RustStd.json deleted file mode 100644 index 1419685af..000000000 --- a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R0/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R0/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.RustCore.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.RustCore.json deleted file mode 100644 index cf7942fda..000000000 --- a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R0/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R0/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.RustStd.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.RustStd.json deleted file mode 100644 index 97b91a011..000000000 --- a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R0/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R0/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.json deleted file mode 100644 index 431bd6b7e..000000000 --- a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R0.olean","$STAGING/preserve-src/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R0.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.Compose.RustCore.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.Compose.RustCore.json deleted file mode 100644 index 1db5c5c45..000000000 --- a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.Compose.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R1/Compose/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R1/Compose/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.Compose.RustStd.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.Compose.RustStd.json deleted file mode 100644 index f26b1a503..000000000 --- a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R1/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R1/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.RustCore.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.RustCore.json deleted file mode 100644 index 9193f1226..000000000 --- a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R1/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R1/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.RustStd.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.RustStd.json deleted file mode 100644 index 0b36d2d30..000000000 --- a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R1/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R1/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.json deleted file mode 100644 index 4245b01f6..000000000 --- a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R1.olean","$STAGING/preserve-src/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R1.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R1","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.Compose.RustCore.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.Compose.RustCore.json deleted file mode 100644 index 82c329bdc..000000000 --- a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.Compose.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R2/Compose/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R2/Compose/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.Compose.RustStd.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.Compose.RustStd.json deleted file mode 100644 index 2a821f24d..000000000 --- a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R2/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R2/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.RustCore.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.RustCore.json deleted file mode 100644 index 170f5d657..000000000 --- a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R2/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R2/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.RustStd.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.RustStd.json deleted file mode 100644 index 51f9c2121..000000000 --- a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R2/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R2/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.json deleted file mode 100644 index 27aded32d..000000000 --- a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R2.olean","$STAGING/preserve-src/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R2.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.Compose.RustCore.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.Compose.RustCore.json deleted file mode 100644 index 5603b6b9b..000000000 --- a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.Compose.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R3/Compose/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R3/Compose/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.Compose.RustStd.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.Compose.RustStd.json deleted file mode 100644 index 62634c9d3..000000000 --- a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R3/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R3/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.RustCore.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.RustCore.json deleted file mode 100644 index 8c51398f1..000000000 --- a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R3/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R3/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.RustStd.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.RustStd.json deleted file mode 100644 index 036fa4863..000000000 --- a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R3/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R3/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.json deleted file mode 100644 index 5060f6ced..000000000 --- a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R3.olean","$STAGING/preserve-src/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R3.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R3","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.Compose.RustStd.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.Compose.RustStd.json deleted file mode 100644 index bddd04c04..000000000 --- a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R4/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R4/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.RustStd.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.RustStd.json deleted file mode 100644 index 5b02bdd32..000000000 --- a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R4/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R4/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.json deleted file mode 100644 index e75678956..000000000 --- a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R4.olean","$STAGING/preserve-src/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R4.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R4","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.Compose.RustStd.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.Compose.RustStd.json deleted file mode 100644 index c19b3079b..000000000 --- a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R5/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R5/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.RustStd.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.RustStd.json deleted file mode 100644 index bb463993d..000000000 --- a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R5/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R5/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.json deleted file mode 100644 index 6f449ec79..000000000 --- a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R5.olean","$STAGING/preserve-src/LexLeanPreserve/Cecf58505f4e2844618eff0bdc9a2ce9d/R5.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R5","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.Compose.RustCore.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.Compose.RustCore.json new file mode 100644 index 000000000..5831b8981 --- /dev/null +++ b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.Compose.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R0/Compose/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R0/Compose/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.Compose.RustStd.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.Compose.RustStd.json new file mode 100644 index 000000000..a05765951 --- /dev/null +++ b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R0/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R0/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.RustCore.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.RustCore.json new file mode 100644 index 000000000..29d73931b --- /dev/null +++ b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R0/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R0/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.RustStd.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.RustStd.json new file mode 100644 index 000000000..8128465a0 --- /dev/null +++ b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R0/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R0/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.json new file mode 100644 index 000000000..5cd048a38 --- /dev/null +++ b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R0.olean","$STAGING/preserve-src/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R0.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.Compose.RustCore.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.Compose.RustCore.json new file mode 100644 index 000000000..7db66255b --- /dev/null +++ b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.Compose.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R1/Compose/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R1/Compose/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.Compose.RustStd.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.Compose.RustStd.json new file mode 100644 index 000000000..36b9dcc0f --- /dev/null +++ b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R1/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R1/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.RustCore.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.RustCore.json new file mode 100644 index 000000000..00b687530 --- /dev/null +++ b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R1/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R1/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.RustStd.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.RustStd.json new file mode 100644 index 000000000..6c81eb302 --- /dev/null +++ b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R1/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R1/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.json new file mode 100644 index 000000000..4ba624706 --- /dev/null +++ b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R1.olean","$STAGING/preserve-src/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R1.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R1","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.Compose.RustCore.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.Compose.RustCore.json new file mode 100644 index 000000000..adfd97d09 --- /dev/null +++ b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.Compose.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R2/Compose/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R2/Compose/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.Compose.RustStd.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.Compose.RustStd.json new file mode 100644 index 000000000..12ff097ab --- /dev/null +++ b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R2/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R2/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.RustCore.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.RustCore.json new file mode 100644 index 000000000..d79aef39a --- /dev/null +++ b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R2/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R2/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.RustStd.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.RustStd.json new file mode 100644 index 000000000..2424ed896 --- /dev/null +++ b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R2/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R2/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.json new file mode 100644 index 000000000..e0ef97042 --- /dev/null +++ b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R2.olean","$STAGING/preserve-src/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R2.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.Compose.RustCore.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.Compose.RustCore.json new file mode 100644 index 000000000..945d9cacd --- /dev/null +++ b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.Compose.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R3/Compose/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R3/Compose/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.Compose.RustStd.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.Compose.RustStd.json new file mode 100644 index 000000000..99297cfb6 --- /dev/null +++ b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R3/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R3/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.RustCore.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.RustCore.json new file mode 100644 index 000000000..b432f518d --- /dev/null +++ b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R3/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R3/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.RustStd.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.RustStd.json new file mode 100644 index 000000000..0053c95fe --- /dev/null +++ b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R3/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R3/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.json new file mode 100644 index 000000000..14446b9e5 --- /dev/null +++ b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R3.olean","$STAGING/preserve-src/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R3.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R3","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.Compose.RustStd.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.Compose.RustStd.json new file mode 100644 index 000000000..7291de2e9 --- /dev/null +++ b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R4/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R4/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.RustStd.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.RustStd.json new file mode 100644 index 000000000..4283bc1c3 --- /dev/null +++ b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R4/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R4/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.json new file mode 100644 index 000000000..ddb88f73c --- /dev/null +++ b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R4.olean","$STAGING/preserve-src/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R4.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R4","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.Compose.RustStd.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.Compose.RustStd.json new file mode 100644 index 000000000..0333f3ebe --- /dev/null +++ b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R5/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R5/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.RustStd.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.RustStd.json new file mode 100644 index 000000000..c0043d2b3 --- /dev/null +++ b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R5/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R5/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.json b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.json new file mode 100644 index 000000000..af9be5814 --- /dev/null +++ b/examples/production/expected/verify/process/preserve/LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R5.olean","$STAGING/preserve-src/LexLeanPreserve/Cf5a58e441acc8b93ded11826c51cc7c8/R5.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R5","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/production/lexlean.lock b/examples/production/lexlean.lock index d4a5c808a..17bc4d068 100644 --- a/examples/production/lexlean.lock +++ b/examples/production/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6f85e3c598ebbd2209c3ad5533caeb0ac2558d009e9863ec732435267e89972e" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/examples/reasoning/expected/build/manifest.json b/examples/reasoning/expected/build/manifest.json index 0cb85b818..cf7aa018e 100644 --- a/examples/reasoning/expected/build/manifest.json +++ b/examples/reasoning/expected/build/manifest.json @@ -1 +1 @@ -{"build_id":"62e1c936c69007af9b7f98ca48a157c61f06c5ca99b580ff0990593215c0d6a3","compiler":{"semantics_id":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","version":"0.3.0"},"inputs":[{"byte_length":2684,"kind":"lexicon","path":"embedded","sha256":"3bc0fb09d706ffa7d5a1363302ea87c049acc7c7dcafde63c62682620c11be9b"},{"byte_length":14885,"kind":"lexicon","path":"embedded","sha256":"e0db021e01b91d651c43921d66f6b0023c8efbf17cac2ec53192ce5305e4e1ac"},{"byte_length":36197,"kind":"lexicon","path":"embedded","sha256":"827317cae68c162f3a96c8a8de4e53ab348e7d3724fd2b834fa85ecde1a1b392"},{"byte_length":3061,"kind":"lexicon","path":"glossary/reasoning.titles","sha256":"e47cc403ae3b7c1ac2f3fc574239f31c15973f248243a2e0b70c8000caf68f98"},{"byte_length":1945,"kind":"lock","path":"lexlean.lock","sha256":"69bcc64cbddb10f810b0455998c7d8d2b1dd95db9f18ad004293005aa198edd2"},{"byte_length":738,"kind":"project-config","path":"lexlean.toml","sha256":"254deddb728df2532affa57ca92fefae0324c34d616c713273d63bd4cccbb2bf"},{"byte_length":4636,"kind":"source","path":"src/Budget.lex.tex","sha256":"107fc5d7f6acd256caf10ae6a53953c04a86dacfc953d16196805f2f71aa835f"},{"byte_length":27439,"kind":"source","path":"src/Clinic.lex.tex","sha256":"01d7ef34f88ff99c06d1bd95d1e580e88e2b75b2d2826bfce7462f6514d1d05a"},{"byte_length":30065,"kind":"source","path":"src/Main.lex.tex","sha256":"1c528893e116cb6b0cf1f39acb17a02c4e3e5302c5c8e2c802bb3cff19582468"},{"byte_length":8705,"kind":"source","path":"src/Planner.lex.tex","sha256":"8ebdbb36e0f5607e8ca0cdac698535bdd0fc793f9173ecc275817b706ec68f16"},{"byte_length":3642,"kind":"source","path":"src/Screening.lex.tex","sha256":"3dc86d2c1968e2eee6b3f55e1013f2ad4506f81a29a261e767d7dd2029b77efc"}],"language":"1.2","lean_toolchain":"leanprover/lean4:v4.32.1","modules":[{"lean_module":"Reasoning.Budget","module":"Budget","source_path":"src/Budget.lex.tex"},{"lean_module":"Reasoning.Clinic","module":"Clinic","source_path":"src/Clinic.lex.tex"},{"lean_module":"Reasoning.Main","module":"Main","source_path":"src/Main.lex.tex"},{"lean_module":"Reasoning.Planner","module":"Planner","source_path":"src/Planner.lex.tex"},{"lean_module":"Reasoning.Screening","module":"Screening","source_path":"src/Screening.lex.tex"}],"outputs":[{"byte_length":12731,"kind":"coverage","path":"coverage/Reasoning/Budget.coverage.json","sha256":"d203ca71639c6070536b7c5cfacedd0381c29cbec7e00047f56e818c53d6ae29"},{"byte_length":23360,"kind":"coverage","path":"coverage/Reasoning/Clinic.coverage.json","sha256":"90bcf5385ba8615ee75cd0a7f168e017f9124f1f6cf7981009ca07e13f9779f6"},{"byte_length":29286,"kind":"coverage","path":"coverage/Reasoning/Main.coverage.json","sha256":"fb5ffec8c5eb5203df581c3788e5ad4ece2862592a53b5f5d626d18c2e841f2e"},{"byte_length":17423,"kind":"coverage","path":"coverage/Reasoning/Planner.coverage.json","sha256":"42e72aec84844766d6505e3b885feb0b07295a96c78b0f67d7cf071f7b71331d"},{"byte_length":12874,"kind":"coverage","path":"coverage/Reasoning/Screening.coverage.json","sha256":"f38daac390fb621e0a407f16cec5aad847dccbbfd8dd8eda8e8cb7e1ce42ebc7"},{"byte_length":59604,"kind":"lean","path":"modules/Reasoning/Budget.lean","sha256":"13cb23a1119fad06996a3bdbeee2ccb9060ecfb3dc7bbe88d04d6884d763a829"},{"byte_length":139655,"kind":"lean","path":"modules/Reasoning/Clinic.lean","sha256":"55966472a6d676e56b9c8ae1eb0f05b3b477a921075d1c7354c107398b8e2440"},{"byte_length":87124,"kind":"lean","path":"modules/Reasoning/Main.lean","sha256":"5b4a8724cca748ec75c20b0944481b9de79db99c727146896d0203d40d91ec94"},{"byte_length":158737,"kind":"lean","path":"modules/Reasoning/Planner.lean","sha256":"212bd7913e2880719d9b8fac3811db3ec8e0227b1a46d96e93fb9315262e8f7c"},{"byte_length":42547,"kind":"lean","path":"modules/Reasoning/Screening.lean","sha256":"060035b4fcf49df396af1c1a28a46af408e8d9c4f2b9b3935703d3a38c811a5f"},{"byte_length":11233,"kind":"lexicon-closure","path":"lexicons/Budget.closure.json","sha256":"cd5b9087dba571f9410cceb129c23f19613d232799a59279934f24f1c9c341e0"},{"byte_length":11233,"kind":"lexicon-closure","path":"lexicons/Clinic.closure.json","sha256":"e6bf53c5a76f0e7565a0e1a643a439d4e9e3e9e4571094fa75e4afb3dc11b6f7"},{"byte_length":11231,"kind":"lexicon-closure","path":"lexicons/Main.closure.json","sha256":"2a209ecbafc820ae30051979f00499bb931d3bbd13e27301326cf60baae0b982"},{"byte_length":11234,"kind":"lexicon-closure","path":"lexicons/Planner.closure.json","sha256":"5a53b13b649333892d981f1d8d11cb229147651c0087fa0d04d05a0300373732"},{"byte_length":11236,"kind":"lexicon-closure","path":"lexicons/Screening.closure.json","sha256":"538dbf529cb24abcec5c2f68b3abfaca608b7197a5f5125bd83c5eea370c73ae"},{"byte_length":6180,"kind":"map","path":"maps/Reasoning/Budget.map.json","sha256":"0b1ee654fe60946f0b728fb67c035a3cf6bdc6b3f2d50a55837d3871e75e24b8"},{"byte_length":19015,"kind":"map","path":"maps/Reasoning/Clinic.map.json","sha256":"a79f44aff7f79cd70d1777570dc59cb8f2cbc1523432014a6d5c5331597075f3"},{"byte_length":23346,"kind":"map","path":"maps/Reasoning/Main.map.json","sha256":"9f941267ce01e547b76ff5cde150a5ce2b0c30a7eaa7636357b4d4ecaaad382a"},{"byte_length":11733,"kind":"map","path":"maps/Reasoning/Planner.map.json","sha256":"7847a8d452608c53b7a33d4c3e6c2d5a099896feb2a95b045f780d0637a95d5e"},{"byte_length":6182,"kind":"map","path":"maps/Reasoning/Screening.map.json","sha256":"00c9ecffaf8469257c56b59c4d3e5588c25be9b861aea05fd21dd2cf9a2527af"},{"byte_length":216758,"kind":"production-eligibility","path":"production/Reasoning/Main.eligibility.json","sha256":"ac218965e553140b13bbaa660d46558f5a0040d9aa89c4d17f93bd02b4946413"},{"byte_length":34987,"kind":"tex","path":"modules/Reasoning/Budget.tex","sha256":"e119790e14fb08097a91884bd4d4576ecf25f73b8dfb77cb8a4a6974b9bd139c"},{"byte_length":78159,"kind":"tex","path":"modules/Reasoning/Clinic.tex","sha256":"9f22e4e59d2b2515287ca787c5bbef1669441372e69d090b8dbfbc4182088896"},{"byte_length":71965,"kind":"tex","path":"modules/Reasoning/Main.tex","sha256":"cf47f1f8008e33cf5a6a231b5dc3bc349446fd6ae48a9bc7570a8291a93f81fc"},{"byte_length":90367,"kind":"tex","path":"modules/Reasoning/Planner.tex","sha256":"1517be188348a5e8c29ecac93545fa4ac2338e802a7a030bfec7ccc6fb5317f1"},{"byte_length":27194,"kind":"tex","path":"modules/Reasoning/Screening.tex","sha256":"dd053d08d2811509a8659e75b228530b5bff859bb749a955297b965407bf13e4"}],"project":"reasoning","selection":["Budget","Clinic","Main","Planner","Screening"],"semantic_id":"7b45b58d681c076cfd69727310b65f3fa63b0a50619281de2bf41504227f308d","source_id":"2d4bae2a2e1a68f05b8703a9e5c6ab1dc1a1bfbfe4e3d9885a7e842bcc0fad92","spec":"lexlean/build-manifest/1"} +{"build_id":"e826a5099eef8fdf565817b4afc2347ed32d388f11daaba203bbd5323f083517","compiler":{"semantics_id":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","version":"0.3.0"},"inputs":[{"byte_length":2684,"kind":"lexicon","path":"embedded","sha256":"3bc0fb09d706ffa7d5a1363302ea87c049acc7c7dcafde63c62682620c11be9b"},{"byte_length":14885,"kind":"lexicon","path":"embedded","sha256":"e0db021e01b91d651c43921d66f6b0023c8efbf17cac2ec53192ce5305e4e1ac"},{"byte_length":36197,"kind":"lexicon","path":"embedded","sha256":"827317cae68c162f3a96c8a8de4e53ab348e7d3724fd2b834fa85ecde1a1b392"},{"byte_length":3061,"kind":"lexicon","path":"glossary/reasoning.titles","sha256":"e47cc403ae3b7c1ac2f3fc574239f31c15973f248243a2e0b70c8000caf68f98"},{"byte_length":1945,"kind":"lock","path":"lexlean.lock","sha256":"2f45b19e2736550e456990c7b4ff2c56f80e82cedaf61b927b858d52ab7d0f56"},{"byte_length":738,"kind":"project-config","path":"lexlean.toml","sha256":"254deddb728df2532affa57ca92fefae0324c34d616c713273d63bd4cccbb2bf"},{"byte_length":4636,"kind":"source","path":"src/Budget.lex.tex","sha256":"107fc5d7f6acd256caf10ae6a53953c04a86dacfc953d16196805f2f71aa835f"},{"byte_length":27439,"kind":"source","path":"src/Clinic.lex.tex","sha256":"01d7ef34f88ff99c06d1bd95d1e580e88e2b75b2d2826bfce7462f6514d1d05a"},{"byte_length":30065,"kind":"source","path":"src/Main.lex.tex","sha256":"1c528893e116cb6b0cf1f39acb17a02c4e3e5302c5c8e2c802bb3cff19582468"},{"byte_length":8705,"kind":"source","path":"src/Planner.lex.tex","sha256":"8ebdbb36e0f5607e8ca0cdac698535bdd0fc793f9173ecc275817b706ec68f16"},{"byte_length":3642,"kind":"source","path":"src/Screening.lex.tex","sha256":"3dc86d2c1968e2eee6b3f55e1013f2ad4506f81a29a261e767d7dd2029b77efc"}],"language":"1.2","lean_toolchain":"leanprover/lean4:v4.32.1","modules":[{"lean_module":"Reasoning.Budget","module":"Budget","source_path":"src/Budget.lex.tex"},{"lean_module":"Reasoning.Clinic","module":"Clinic","source_path":"src/Clinic.lex.tex"},{"lean_module":"Reasoning.Main","module":"Main","source_path":"src/Main.lex.tex"},{"lean_module":"Reasoning.Planner","module":"Planner","source_path":"src/Planner.lex.tex"},{"lean_module":"Reasoning.Screening","module":"Screening","source_path":"src/Screening.lex.tex"}],"outputs":[{"byte_length":12731,"kind":"coverage","path":"coverage/Reasoning/Budget.coverage.json","sha256":"d203ca71639c6070536b7c5cfacedd0381c29cbec7e00047f56e818c53d6ae29"},{"byte_length":23360,"kind":"coverage","path":"coverage/Reasoning/Clinic.coverage.json","sha256":"90bcf5385ba8615ee75cd0a7f168e017f9124f1f6cf7981009ca07e13f9779f6"},{"byte_length":29286,"kind":"coverage","path":"coverage/Reasoning/Main.coverage.json","sha256":"fb5ffec8c5eb5203df581c3788e5ad4ece2862592a53b5f5d626d18c2e841f2e"},{"byte_length":17423,"kind":"coverage","path":"coverage/Reasoning/Planner.coverage.json","sha256":"42e72aec84844766d6505e3b885feb0b07295a96c78b0f67d7cf071f7b71331d"},{"byte_length":12874,"kind":"coverage","path":"coverage/Reasoning/Screening.coverage.json","sha256":"f38daac390fb621e0a407f16cec5aad847dccbbfd8dd8eda8e8cb7e1ce42ebc7"},{"byte_length":59604,"kind":"lean","path":"modules/Reasoning/Budget.lean","sha256":"13cb23a1119fad06996a3bdbeee2ccb9060ecfb3dc7bbe88d04d6884d763a829"},{"byte_length":139655,"kind":"lean","path":"modules/Reasoning/Clinic.lean","sha256":"55966472a6d676e56b9c8ae1eb0f05b3b477a921075d1c7354c107398b8e2440"},{"byte_length":87124,"kind":"lean","path":"modules/Reasoning/Main.lean","sha256":"5b4a8724cca748ec75c20b0944481b9de79db99c727146896d0203d40d91ec94"},{"byte_length":158737,"kind":"lean","path":"modules/Reasoning/Planner.lean","sha256":"212bd7913e2880719d9b8fac3811db3ec8e0227b1a46d96e93fb9315262e8f7c"},{"byte_length":42547,"kind":"lean","path":"modules/Reasoning/Screening.lean","sha256":"060035b4fcf49df396af1c1a28a46af408e8d9c4f2b9b3935703d3a38c811a5f"},{"byte_length":11233,"kind":"lexicon-closure","path":"lexicons/Budget.closure.json","sha256":"cd5b9087dba571f9410cceb129c23f19613d232799a59279934f24f1c9c341e0"},{"byte_length":11233,"kind":"lexicon-closure","path":"lexicons/Clinic.closure.json","sha256":"e6bf53c5a76f0e7565a0e1a643a439d4e9e3e9e4571094fa75e4afb3dc11b6f7"},{"byte_length":11231,"kind":"lexicon-closure","path":"lexicons/Main.closure.json","sha256":"2a209ecbafc820ae30051979f00499bb931d3bbd13e27301326cf60baae0b982"},{"byte_length":11234,"kind":"lexicon-closure","path":"lexicons/Planner.closure.json","sha256":"5a53b13b649333892d981f1d8d11cb229147651c0087fa0d04d05a0300373732"},{"byte_length":11236,"kind":"lexicon-closure","path":"lexicons/Screening.closure.json","sha256":"538dbf529cb24abcec5c2f68b3abfaca608b7197a5f5125bd83c5eea370c73ae"},{"byte_length":6180,"kind":"map","path":"maps/Reasoning/Budget.map.json","sha256":"742d20d211275a78cad0204ec1fc7d07e4ab62c0d70fa0cacb02cd5bca72ad6f"},{"byte_length":19015,"kind":"map","path":"maps/Reasoning/Clinic.map.json","sha256":"f5c3a491aeb23ca252bbc8f9439d0d72debc40aeb155459918718eddfc0063bd"},{"byte_length":23346,"kind":"map","path":"maps/Reasoning/Main.map.json","sha256":"6e090eac0be7aa1ce4f205afbfb6df740e4b4331e08691238309454b4b5ff7ea"},{"byte_length":11733,"kind":"map","path":"maps/Reasoning/Planner.map.json","sha256":"d5a5227c6d6972aefaf75ec8022c7847e454d8e80f93a2d4ed03867ac04da980"},{"byte_length":6182,"kind":"map","path":"maps/Reasoning/Screening.map.json","sha256":"26b091c453a277c5dd73bd477b2cb9d15812dbe39af6fa71dfea2262edbd5e86"},{"byte_length":216758,"kind":"production-eligibility","path":"production/Reasoning/Main.eligibility.json","sha256":"ac218965e553140b13bbaa660d46558f5a0040d9aa89c4d17f93bd02b4946413"},{"byte_length":34987,"kind":"tex","path":"modules/Reasoning/Budget.tex","sha256":"e119790e14fb08097a91884bd4d4576ecf25f73b8dfb77cb8a4a6974b9bd139c"},{"byte_length":78159,"kind":"tex","path":"modules/Reasoning/Clinic.tex","sha256":"9f22e4e59d2b2515287ca787c5bbef1669441372e69d090b8dbfbc4182088896"},{"byte_length":71965,"kind":"tex","path":"modules/Reasoning/Main.tex","sha256":"cf47f1f8008e33cf5a6a231b5dc3bc349446fd6ae48a9bc7570a8291a93f81fc"},{"byte_length":90367,"kind":"tex","path":"modules/Reasoning/Planner.tex","sha256":"1517be188348a5e8c29ecac93545fa4ac2338e802a7a030bfec7ccc6fb5317f1"},{"byte_length":27194,"kind":"tex","path":"modules/Reasoning/Screening.tex","sha256":"dd053d08d2811509a8659e75b228530b5bff859bb749a955297b965407bf13e4"}],"project":"reasoning","selection":["Budget","Clinic","Main","Planner","Screening"],"semantic_id":"02b315b69b8881ec6f91f78f9b12c6085dc76fa6c7bf1cc658029f081e286c53","source_id":"0057130a9fc0f7ed88a4394b9d3931f003d7ecce5f56d65b920bb48c69bdfc7e","spec":"lexlean/build-manifest/1"} diff --git a/examples/reasoning/expected/build/maps/Reasoning/Budget.map.json b/examples/reasoning/expected/build/maps/Reasoning/Budget.map.json index 006ed4cc9..91bda3b3a 100644 --- a/examples/reasoning/expected/build/maps/Reasoning/Budget.map.json +++ b/examples/reasoning/expected/build/maps/Reasoning/Budget.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/Reasoning/Budget.lean"},{"id":1,"kind":"tex","path":"modules/Reasoning/Budget.tex"}],"mappings":[{"artifact":0,"gen_end":351,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":4636,"src_start":0},{"artifact":0,"gen_end":494,"gen_start":351,"node":1,"role":"declaration","source":0,"src_end":324,"src_start":145},{"artifact":0,"gen_end":575,"gen_start":494,"node":2,"role":"declaration","source":0,"src_end":448,"src_start":326},{"artifact":0,"gen_end":576,"gen_start":575,"node":3,"role":"declaration","source":0,"src_end":588,"src_start":450},{"artifact":0,"gen_end":3685,"gen_start":576,"node":4,"role":"declaration","source":0,"src_end":867,"src_start":590},{"artifact":0,"gen_end":6823,"gen_start":3685,"node":5,"role":"declaration","source":0,"src_end":1178,"src_start":869},{"artifact":0,"gen_end":8110,"gen_start":6823,"node":6,"role":"declaration","source":0,"src_end":1482,"src_start":1180},{"artifact":0,"gen_end":11252,"gen_start":8110,"node":7,"role":"declaration","source":0,"src_end":1785,"src_start":1484},{"artifact":0,"gen_end":14423,"gen_start":11252,"node":8,"role":"declaration","source":0,"src_end":2120,"src_start":1787},{"artifact":0,"gen_end":15943,"gen_start":14423,"node":9,"role":"declaration","source":0,"src_end":2513,"src_start":2122},{"artifact":0,"gen_end":16030,"gen_start":15943,"node":10,"role":"declaration","source":0,"src_end":2632,"src_start":2515},{"artifact":0,"gen_end":16121,"gen_start":16030,"node":11,"role":"declaration","source":0,"src_end":2777,"src_start":2634},{"artifact":0,"gen_end":19188,"gen_start":16121,"node":12,"role":"declaration","source":0,"src_end":3016,"src_start":2779},{"artifact":0,"gen_end":19363,"gen_start":19188,"node":13,"role":"declaration","source":0,"src_end":3224,"src_start":3018},{"artifact":0,"gen_end":22429,"gen_start":19363,"node":14,"role":"declaration","source":0,"src_end":3485,"src_start":3226},{"artifact":0,"gen_end":42270,"gen_start":22429,"node":15,"role":"declaration","source":0,"src_end":4058,"src_start":3487},{"artifact":0,"gen_end":59582,"gen_start":42270,"node":16,"role":"declaration","source":0,"src_end":4600,"src_start":4060},{"artifact":0,"gen_end":59604,"gen_start":59582,"node":0,"role":"declaration","source":0,"src_end":4636,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":17,"role":"declaration","source":0,"src_end":4636,"src_start":0},{"artifact":1,"gen_end":497,"gen_start":134,"node":18,"role":"declaration","source":0,"src_end":324,"src_start":145},{"artifact":1,"gen_end":794,"gen_start":497,"node":19,"role":"declaration","source":0,"src_end":448,"src_start":326},{"artifact":1,"gen_end":1045,"gen_start":794,"node":20,"role":"declaration","source":0,"src_end":588,"src_start":450},{"artifact":1,"gen_end":1428,"gen_start":1045,"node":21,"role":"declaration","source":0,"src_end":867,"src_start":590},{"artifact":1,"gen_end":1836,"gen_start":1428,"node":22,"role":"declaration","source":0,"src_end":1178,"src_start":869},{"artifact":1,"gen_end":3715,"gen_start":1836,"node":23,"role":"declaration","source":0,"src_end":1482,"src_start":1180},{"artifact":1,"gen_end":4133,"gen_start":3715,"node":24,"role":"declaration","source":0,"src_end":1785,"src_start":1484},{"artifact":1,"gen_end":4576,"gen_start":4133,"node":25,"role":"declaration","source":0,"src_end":2120,"src_start":1787},{"artifact":1,"gen_end":6863,"gen_start":4576,"node":26,"role":"declaration","source":0,"src_end":2513,"src_start":2122},{"artifact":1,"gen_end":7154,"gen_start":6863,"node":27,"role":"declaration","source":0,"src_end":2632,"src_start":2515},{"artifact":1,"gen_end":7525,"gen_start":7154,"node":28,"role":"declaration","source":0,"src_end":2777,"src_start":2634},{"artifact":1,"gen_end":7842,"gen_start":7525,"node":29,"role":"declaration","source":0,"src_end":3016,"src_start":2779},{"artifact":1,"gen_end":8490,"gen_start":7842,"node":30,"role":"declaration","source":0,"src_end":3224,"src_start":3018},{"artifact":1,"gen_end":8826,"gen_start":8490,"node":31,"role":"declaration","source":0,"src_end":3485,"src_start":3226},{"artifact":1,"gen_end":22640,"gen_start":8826,"node":32,"role":"declaration","source":0,"src_end":4058,"src_start":3487},{"artifact":1,"gen_end":34972,"gen_start":22640,"node":33,"role":"declaration","source":0,"src_end":4600,"src_start":4060},{"artifact":1,"gen_end":34987,"gen_start":34972,"node":17,"role":"declaration","source":0,"src_end":4636,"src_start":0}],"module":"Budget","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-latex-module"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"}],"semantic_id":"7b45b58d681c076cfd69727310b65f3fa63b0a50619281de2bf41504227f308d","source_id":"2d4bae2a2e1a68f05b8703a9e5c6ab1dc1a1bfbfe4e3d9885a7e842bcc0fad92","sources":[{"id":0,"kind":"file","path":"src/Budget.lex.tex","sha256":"107fc5d7f6acd256caf10ae6a53953c04a86dacfc953d16196805f2f71aa835f"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/Reasoning/Budget.lean"},{"id":1,"kind":"tex","path":"modules/Reasoning/Budget.tex"}],"mappings":[{"artifact":0,"gen_end":351,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":4636,"src_start":0},{"artifact":0,"gen_end":494,"gen_start":351,"node":1,"role":"declaration","source":0,"src_end":324,"src_start":145},{"artifact":0,"gen_end":575,"gen_start":494,"node":2,"role":"declaration","source":0,"src_end":448,"src_start":326},{"artifact":0,"gen_end":576,"gen_start":575,"node":3,"role":"declaration","source":0,"src_end":588,"src_start":450},{"artifact":0,"gen_end":3685,"gen_start":576,"node":4,"role":"declaration","source":0,"src_end":867,"src_start":590},{"artifact":0,"gen_end":6823,"gen_start":3685,"node":5,"role":"declaration","source":0,"src_end":1178,"src_start":869},{"artifact":0,"gen_end":8110,"gen_start":6823,"node":6,"role":"declaration","source":0,"src_end":1482,"src_start":1180},{"artifact":0,"gen_end":11252,"gen_start":8110,"node":7,"role":"declaration","source":0,"src_end":1785,"src_start":1484},{"artifact":0,"gen_end":14423,"gen_start":11252,"node":8,"role":"declaration","source":0,"src_end":2120,"src_start":1787},{"artifact":0,"gen_end":15943,"gen_start":14423,"node":9,"role":"declaration","source":0,"src_end":2513,"src_start":2122},{"artifact":0,"gen_end":16030,"gen_start":15943,"node":10,"role":"declaration","source":0,"src_end":2632,"src_start":2515},{"artifact":0,"gen_end":16121,"gen_start":16030,"node":11,"role":"declaration","source":0,"src_end":2777,"src_start":2634},{"artifact":0,"gen_end":19188,"gen_start":16121,"node":12,"role":"declaration","source":0,"src_end":3016,"src_start":2779},{"artifact":0,"gen_end":19363,"gen_start":19188,"node":13,"role":"declaration","source":0,"src_end":3224,"src_start":3018},{"artifact":0,"gen_end":22429,"gen_start":19363,"node":14,"role":"declaration","source":0,"src_end":3485,"src_start":3226},{"artifact":0,"gen_end":42270,"gen_start":22429,"node":15,"role":"declaration","source":0,"src_end":4058,"src_start":3487},{"artifact":0,"gen_end":59582,"gen_start":42270,"node":16,"role":"declaration","source":0,"src_end":4600,"src_start":4060},{"artifact":0,"gen_end":59604,"gen_start":59582,"node":0,"role":"declaration","source":0,"src_end":4636,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":17,"role":"declaration","source":0,"src_end":4636,"src_start":0},{"artifact":1,"gen_end":497,"gen_start":134,"node":18,"role":"declaration","source":0,"src_end":324,"src_start":145},{"artifact":1,"gen_end":794,"gen_start":497,"node":19,"role":"declaration","source":0,"src_end":448,"src_start":326},{"artifact":1,"gen_end":1045,"gen_start":794,"node":20,"role":"declaration","source":0,"src_end":588,"src_start":450},{"artifact":1,"gen_end":1428,"gen_start":1045,"node":21,"role":"declaration","source":0,"src_end":867,"src_start":590},{"artifact":1,"gen_end":1836,"gen_start":1428,"node":22,"role":"declaration","source":0,"src_end":1178,"src_start":869},{"artifact":1,"gen_end":3715,"gen_start":1836,"node":23,"role":"declaration","source":0,"src_end":1482,"src_start":1180},{"artifact":1,"gen_end":4133,"gen_start":3715,"node":24,"role":"declaration","source":0,"src_end":1785,"src_start":1484},{"artifact":1,"gen_end":4576,"gen_start":4133,"node":25,"role":"declaration","source":0,"src_end":2120,"src_start":1787},{"artifact":1,"gen_end":6863,"gen_start":4576,"node":26,"role":"declaration","source":0,"src_end":2513,"src_start":2122},{"artifact":1,"gen_end":7154,"gen_start":6863,"node":27,"role":"declaration","source":0,"src_end":2632,"src_start":2515},{"artifact":1,"gen_end":7525,"gen_start":7154,"node":28,"role":"declaration","source":0,"src_end":2777,"src_start":2634},{"artifact":1,"gen_end":7842,"gen_start":7525,"node":29,"role":"declaration","source":0,"src_end":3016,"src_start":2779},{"artifact":1,"gen_end":8490,"gen_start":7842,"node":30,"role":"declaration","source":0,"src_end":3224,"src_start":3018},{"artifact":1,"gen_end":8826,"gen_start":8490,"node":31,"role":"declaration","source":0,"src_end":3485,"src_start":3226},{"artifact":1,"gen_end":22640,"gen_start":8826,"node":32,"role":"declaration","source":0,"src_end":4058,"src_start":3487},{"artifact":1,"gen_end":34972,"gen_start":22640,"node":33,"role":"declaration","source":0,"src_end":4600,"src_start":4060},{"artifact":1,"gen_end":34987,"gen_start":34972,"node":17,"role":"declaration","source":0,"src_end":4636,"src_start":0}],"module":"Budget","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-latex-module"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"}],"semantic_id":"02b315b69b8881ec6f91f78f9b12c6085dc76fa6c7bf1cc658029f081e286c53","source_id":"0057130a9fc0f7ed88a4394b9d3931f003d7ecce5f56d65b920bb48c69bdfc7e","sources":[{"id":0,"kind":"file","path":"src/Budget.lex.tex","sha256":"107fc5d7f6acd256caf10ae6a53953c04a86dacfc953d16196805f2f71aa835f"}],"spec":"lexlean/source-map/1"} diff --git a/examples/reasoning/expected/build/maps/Reasoning/Clinic.map.json b/examples/reasoning/expected/build/maps/Reasoning/Clinic.map.json index 704b9cbae..4f468dd74 100644 --- a/examples/reasoning/expected/build/maps/Reasoning/Clinic.map.json +++ b/examples/reasoning/expected/build/maps/Reasoning/Clinic.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/Reasoning/Clinic.lean"},{"id":1,"kind":"tex","path":"modules/Reasoning/Clinic.tex"}],"mappings":[{"artifact":0,"gen_end":351,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":27439,"src_start":0},{"artifact":0,"gen_end":498,"gen_start":351,"node":1,"role":"declaration","source":0,"src_end":440,"src_start":144},{"artifact":0,"gen_end":675,"gen_start":498,"node":2,"role":"declaration","source":0,"src_end":816,"src_start":442},{"artifact":0,"gen_end":763,"gen_start":675,"node":3,"role":"declaration","source":0,"src_end":954,"src_start":818},{"artifact":0,"gen_end":851,"gen_start":763,"node":4,"role":"declaration","source":0,"src_end":1092,"src_start":956},{"artifact":0,"gen_end":944,"gen_start":851,"node":5,"role":"declaration","source":0,"src_end":1235,"src_start":1094},{"artifact":0,"gen_end":1032,"gen_start":944,"node":6,"role":"declaration","source":0,"src_end":1373,"src_start":1237},{"artifact":0,"gen_end":1119,"gen_start":1032,"node":7,"role":"declaration","source":0,"src_end":1510,"src_start":1375},{"artifact":0,"gen_end":1207,"gen_start":1119,"node":8,"role":"declaration","source":0,"src_end":1626,"src_start":1512},{"artifact":0,"gen_end":1296,"gen_start":1207,"node":9,"role":"declaration","source":0,"src_end":1743,"src_start":1628},{"artifact":0,"gen_end":1390,"gen_start":1296,"node":10,"role":"declaration","source":0,"src_end":1865,"src_start":1745},{"artifact":0,"gen_end":1479,"gen_start":1390,"node":11,"role":"declaration","source":0,"src_end":1982,"src_start":1867},{"artifact":0,"gen_end":1567,"gen_start":1479,"node":12,"role":"declaration","source":0,"src_end":2098,"src_start":1984},{"artifact":0,"gen_end":1775,"gen_start":1567,"node":13,"role":"declaration","source":0,"src_end":2382,"src_start":2100},{"artifact":0,"gen_end":3252,"gen_start":1775,"node":14,"role":"declaration","source":0,"src_end":4502,"src_start":2384},{"artifact":0,"gen_end":3506,"gen_start":3252,"node":15,"role":"declaration","source":0,"src_end":4840,"src_start":4504},{"artifact":0,"gen_end":3986,"gen_start":3506,"node":16,"role":"declaration","source":0,"src_end":5303,"src_start":4842},{"artifact":0,"gen_end":7134,"gen_start":3986,"node":17,"role":"declaration","source":0,"src_end":5701,"src_start":5305},{"artifact":0,"gen_end":7306,"gen_start":7134,"node":18,"role":"declaration","source":0,"src_end":5935,"src_start":5703},{"artifact":0,"gen_end":10727,"gen_start":7306,"node":19,"role":"declaration","source":0,"src_end":6705,"src_start":5937},{"artifact":0,"gen_end":14121,"gen_start":10727,"node":20,"role":"declaration","source":0,"src_end":7354,"src_start":6707},{"artifact":0,"gen_end":15647,"gen_start":14121,"node":21,"role":"declaration","source":0,"src_end":7914,"src_start":7356},{"artifact":0,"gen_end":19077,"gen_start":15647,"node":22,"role":"declaration","source":0,"src_end":8693,"src_start":7916},{"artifact":0,"gen_end":22480,"gen_start":19077,"node":23,"role":"declaration","source":0,"src_end":9351,"src_start":8695},{"artifact":0,"gen_end":24099,"gen_start":22480,"node":24,"role":"declaration","source":0,"src_end":9932,"src_start":9353},{"artifact":0,"gen_end":27526,"gen_start":24099,"node":25,"role":"declaration","source":0,"src_end":10708,"src_start":9934},{"artifact":0,"gen_end":30926,"gen_start":27526,"node":26,"role":"declaration","source":0,"src_end":11363,"src_start":10710},{"artifact":0,"gen_end":32514,"gen_start":30926,"node":27,"role":"declaration","source":0,"src_end":11937,"src_start":11365},{"artifact":0,"gen_end":35944,"gen_start":32514,"node":28,"role":"declaration","source":0,"src_end":12716,"src_start":11939},{"artifact":0,"gen_end":39347,"gen_start":35944,"node":29,"role":"declaration","source":0,"src_end":13374,"src_start":12718},{"artifact":0,"gen_end":40980,"gen_start":39347,"node":30,"role":"declaration","source":0,"src_end":13957,"src_start":13376},{"artifact":0,"gen_end":44463,"gen_start":40980,"node":31,"role":"declaration","source":0,"src_end":14805,"src_start":13959},{"artifact":0,"gen_end":47919,"gen_start":44463,"node":32,"role":"declaration","source":0,"src_end":15532,"src_start":14807},{"artifact":0,"gen_end":49476,"gen_start":47919,"node":33,"role":"declaration","source":0,"src_end":16168,"src_start":15534},{"artifact":0,"gen_end":52945,"gen_start":49476,"node":34,"role":"declaration","source":0,"src_end":16984,"src_start":16170},{"artifact":0,"gen_end":56387,"gen_start":52945,"node":35,"role":"declaration","source":0,"src_end":17679,"src_start":16986},{"artifact":0,"gen_end":57958,"gen_start":56387,"node":36,"role":"declaration","source":0,"src_end":18287,"src_start":17681},{"artifact":0,"gen_end":61414,"gen_start":57958,"node":37,"role":"declaration","source":0,"src_end":19091,"src_start":18289},{"artifact":0,"gen_end":64843,"gen_start":61414,"node":38,"role":"declaration","source":0,"src_end":19774,"src_start":19093},{"artifact":0,"gen_end":66404,"gen_start":64843,"node":39,"role":"declaration","source":0,"src_end":20368,"src_start":19776},{"artifact":0,"gen_end":70001,"gen_start":66404,"node":40,"role":"declaration","source":0,"src_end":21308,"src_start":20370},{"artifact":0,"gen_end":73571,"gen_start":70001,"node":41,"role":"declaration","source":0,"src_end":22127,"src_start":21310},{"artifact":0,"gen_end":75298,"gen_start":73571,"node":42,"role":"declaration","source":0,"src_end":22863,"src_start":22129},{"artifact":0,"gen_end":75480,"gen_start":75298,"node":43,"role":"declaration","source":0,"src_end":23072,"src_start":22865},{"artifact":0,"gen_end":75694,"gen_start":75480,"node":44,"role":"declaration","source":0,"src_end":23321,"src_start":23074},{"artifact":0,"gen_end":78901,"gen_start":75694,"node":45,"role":"declaration","source":0,"src_end":23800,"src_start":23323},{"artifact":0,"gen_end":82111,"gen_start":78901,"node":46,"role":"declaration","source":0,"src_end":24282,"src_start":23802},{"artifact":0,"gen_end":82477,"gen_start":82111,"node":47,"role":"declaration","source":0,"src_end":24566,"src_start":24284},{"artifact":0,"gen_end":82563,"gen_start":82477,"node":48,"role":"declaration","source":0,"src_end":24660,"src_start":24568},{"artifact":0,"gen_end":82652,"gen_start":82563,"node":49,"role":"declaration","source":0,"src_end":24789,"src_start":24662},{"artifact":0,"gen_end":85727,"gen_start":82652,"node":50,"role":"declaration","source":0,"src_end":25020,"src_start":24791},{"artifact":0,"gen_end":85893,"gen_start":85727,"node":51,"role":"declaration","source":0,"src_end":25224,"src_start":25022},{"artifact":0,"gen_end":89054,"gen_start":85893,"node":52,"role":"declaration","source":0,"src_end":25579,"src_start":25226},{"artifact":0,"gen_end":92213,"gen_start":89054,"node":53,"role":"declaration","source":0,"src_end":25914,"src_start":25581},{"artifact":0,"gen_end":116886,"gen_start":92213,"node":54,"role":"declaration","source":0,"src_end":26711,"src_start":25916},{"artifact":0,"gen_end":139633,"gen_start":116886,"node":55,"role":"declaration","source":0,"src_end":27403,"src_start":26713},{"artifact":0,"gen_end":139655,"gen_start":139633,"node":0,"role":"declaration","source":0,"src_end":27439,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":56,"role":"declaration","source":0,"src_end":27439,"src_start":0},{"artifact":1,"gen_end":536,"gen_start":134,"node":57,"role":"declaration","source":0,"src_end":440,"src_start":144},{"artifact":1,"gen_end":1076,"gen_start":536,"node":58,"role":"declaration","source":0,"src_end":816,"src_start":442},{"artifact":1,"gen_end":1411,"gen_start":1076,"node":59,"role":"declaration","source":0,"src_end":954,"src_start":818},{"artifact":1,"gen_end":1746,"gen_start":1411,"node":60,"role":"declaration","source":0,"src_end":1092,"src_start":956},{"artifact":1,"gen_end":2086,"gen_start":1746,"node":61,"role":"declaration","source":0,"src_end":1235,"src_start":1094},{"artifact":1,"gen_end":2421,"gen_start":2086,"node":62,"role":"declaration","source":0,"src_end":1373,"src_start":1237},{"artifact":1,"gen_end":2755,"gen_start":2421,"node":63,"role":"declaration","source":0,"src_end":1510,"src_start":1375},{"artifact":1,"gen_end":3014,"gen_start":2755,"node":64,"role":"declaration","source":0,"src_end":1626,"src_start":1512},{"artifact":1,"gen_end":3274,"gen_start":3014,"node":65,"role":"declaration","source":0,"src_end":1743,"src_start":1628},{"artifact":1,"gen_end":3539,"gen_start":3274,"node":66,"role":"declaration","source":0,"src_end":1865,"src_start":1745},{"artifact":1,"gen_end":3799,"gen_start":3539,"node":67,"role":"declaration","source":0,"src_end":1982,"src_start":1867},{"artifact":1,"gen_end":4058,"gen_start":3799,"node":68,"role":"declaration","source":0,"src_end":2098,"src_start":1984},{"artifact":1,"gen_end":4482,"gen_start":4058,"node":69,"role":"declaration","source":0,"src_end":2382,"src_start":2100},{"artifact":1,"gen_end":6595,"gen_start":4482,"node":70,"role":"declaration","source":0,"src_end":4502,"src_start":2384},{"artifact":1,"gen_end":7125,"gen_start":6595,"node":71,"role":"declaration","source":0,"src_end":4840,"src_start":4504},{"artifact":1,"gen_end":7787,"gen_start":7125,"node":72,"role":"declaration","source":0,"src_end":5303,"src_start":4842},{"artifact":1,"gen_end":8107,"gen_start":7787,"node":73,"role":"declaration","source":0,"src_end":5701,"src_start":5305},{"artifact":1,"gen_end":8840,"gen_start":8107,"node":74,"role":"declaration","source":0,"src_end":5935,"src_start":5703},{"artifact":1,"gen_end":9389,"gen_start":8840,"node":75,"role":"declaration","source":0,"src_end":6705,"src_start":5937},{"artifact":1,"gen_end":9953,"gen_start":9389,"node":76,"role":"declaration","source":0,"src_end":7354,"src_start":6707},{"artifact":1,"gen_end":12552,"gen_start":9953,"node":77,"role":"declaration","source":0,"src_end":7914,"src_start":7356},{"artifact":1,"gen_end":13110,"gen_start":12552,"node":78,"role":"declaration","source":0,"src_end":8693,"src_start":7916},{"artifact":1,"gen_end":13683,"gen_start":13110,"node":79,"role":"declaration","source":0,"src_end":9351,"src_start":8695},{"artifact":1,"gen_end":16390,"gen_start":13683,"node":80,"role":"declaration","source":0,"src_end":9932,"src_start":9353},{"artifact":1,"gen_end":16945,"gen_start":16390,"node":81,"role":"declaration","source":0,"src_end":10708,"src_start":9934},{"artifact":1,"gen_end":17515,"gen_start":16945,"node":82,"role":"declaration","source":0,"src_end":11363,"src_start":10710},{"artifact":1,"gen_end":20186,"gen_start":17515,"node":83,"role":"declaration","source":0,"src_end":11937,"src_start":11365},{"artifact":1,"gen_end":20744,"gen_start":20186,"node":84,"role":"declaration","source":0,"src_end":12716,"src_start":11939},{"artifact":1,"gen_end":21317,"gen_start":20744,"node":85,"role":"declaration","source":0,"src_end":13374,"src_start":12718},{"artifact":1,"gen_end":24036,"gen_start":21317,"node":86,"role":"declaration","source":0,"src_end":13957,"src_start":13376},{"artifact":1,"gen_end":24647,"gen_start":24036,"node":87,"role":"declaration","source":0,"src_end":14805,"src_start":13959},{"artifact":1,"gen_end":25273,"gen_start":24647,"node":88,"role":"declaration","source":0,"src_end":15532,"src_start":14807},{"artifact":1,"gen_end":28108,"gen_start":25273,"node":89,"role":"declaration","source":0,"src_end":16168,"src_start":15534},{"artifact":1,"gen_end":28707,"gen_start":28108,"node":90,"role":"declaration","source":0,"src_end":16984,"src_start":16170},{"artifact":1,"gen_end":29321,"gen_start":28707,"node":91,"role":"declaration","source":0,"src_end":17679,"src_start":16986},{"artifact":1,"gen_end":32132,"gen_start":29321,"node":92,"role":"declaration","source":0,"src_end":18287,"src_start":17681},{"artifact":1,"gen_end":32718,"gen_start":32132,"node":93,"role":"declaration","source":0,"src_end":19091,"src_start":18289},{"artifact":1,"gen_end":33319,"gen_start":32718,"node":94,"role":"declaration","source":0,"src_end":19774,"src_start":19093},{"artifact":1,"gen_end":36066,"gen_start":33319,"node":95,"role":"declaration","source":0,"src_end":20368,"src_start":19776},{"artifact":1,"gen_end":36797,"gen_start":36066,"node":96,"role":"declaration","source":0,"src_end":21308,"src_start":20370},{"artifact":1,"gen_end":37543,"gen_start":36797,"node":97,"role":"declaration","source":0,"src_end":22127,"src_start":21310},{"artifact":1,"gen_end":40906,"gen_start":37543,"node":98,"role":"declaration","source":0,"src_end":22863,"src_start":22129},{"artifact":1,"gen_end":41319,"gen_start":40906,"node":99,"role":"declaration","source":0,"src_end":23072,"src_start":22865},{"artifact":1,"gen_end":41788,"gen_start":41319,"node":100,"role":"declaration","source":0,"src_end":23321,"src_start":23074},{"artifact":1,"gen_end":42109,"gen_start":41788,"node":101,"role":"declaration","source":0,"src_end":23800,"src_start":23323},{"artifact":1,"gen_end":42433,"gen_start":42109,"node":102,"role":"declaration","source":0,"src_end":24282,"src_start":23802},{"artifact":1,"gen_end":43603,"gen_start":42433,"node":103,"role":"declaration","source":0,"src_end":24566,"src_start":24284},{"artifact":1,"gen_end":43859,"gen_start":43603,"node":104,"role":"declaration","source":0,"src_end":24660,"src_start":24568},{"artifact":1,"gen_end":44194,"gen_start":43859,"node":105,"role":"declaration","source":0,"src_end":24789,"src_start":24662},{"artifact":1,"gen_end":44476,"gen_start":44194,"node":106,"role":"declaration","source":0,"src_end":25020,"src_start":24791},{"artifact":1,"gen_end":45162,"gen_start":44476,"node":107,"role":"declaration","source":0,"src_end":25224,"src_start":25022},{"artifact":1,"gen_end":45578,"gen_start":45162,"node":108,"role":"declaration","source":0,"src_end":25579,"src_start":25226},{"artifact":1,"gen_end":45977,"gen_start":45578,"node":109,"role":"declaration","source":0,"src_end":25914,"src_start":25581},{"artifact":1,"gen_end":62729,"gen_start":45977,"node":110,"role":"declaration","source":0,"src_end":26711,"src_start":25916},{"artifact":1,"gen_end":78144,"gen_start":62729,"node":111,"role":"declaration","source":0,"src_end":27403,"src_start":26713},{"artifact":1,"gen_end":78159,"gen_start":78144,"node":56,"role":"declaration","source":0,"src_end":27439,"src_start":0}],"module":"Clinic","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"},{"id":40,"kind":"semantic-declaration"},{"id":41,"kind":"semantic-declaration"},{"id":42,"kind":"semantic-declaration"},{"id":43,"kind":"semantic-declaration"},{"id":44,"kind":"semantic-declaration"},{"id":45,"kind":"semantic-declaration"},{"id":46,"kind":"semantic-declaration"},{"id":47,"kind":"semantic-declaration"},{"id":48,"kind":"semantic-declaration"},{"id":49,"kind":"semantic-declaration"},{"id":50,"kind":"semantic-declaration"},{"id":51,"kind":"semantic-declaration"},{"id":52,"kind":"semantic-declaration"},{"id":53,"kind":"semantic-declaration"},{"id":54,"kind":"semantic-declaration"},{"id":55,"kind":"semantic-declaration"},{"id":56,"kind":"semantic-latex-module"},{"id":57,"kind":"semantic-declaration"},{"id":58,"kind":"semantic-declaration"},{"id":59,"kind":"semantic-declaration"},{"id":60,"kind":"semantic-declaration"},{"id":61,"kind":"semantic-declaration"},{"id":62,"kind":"semantic-declaration"},{"id":63,"kind":"semantic-declaration"},{"id":64,"kind":"semantic-declaration"},{"id":65,"kind":"semantic-declaration"},{"id":66,"kind":"semantic-declaration"},{"id":67,"kind":"semantic-declaration"},{"id":68,"kind":"semantic-declaration"},{"id":69,"kind":"semantic-declaration"},{"id":70,"kind":"semantic-declaration"},{"id":71,"kind":"semantic-declaration"},{"id":72,"kind":"semantic-declaration"},{"id":73,"kind":"semantic-declaration"},{"id":74,"kind":"semantic-declaration"},{"id":75,"kind":"semantic-declaration"},{"id":76,"kind":"semantic-declaration"},{"id":77,"kind":"semantic-declaration"},{"id":78,"kind":"semantic-declaration"},{"id":79,"kind":"semantic-declaration"},{"id":80,"kind":"semantic-declaration"},{"id":81,"kind":"semantic-declaration"},{"id":82,"kind":"semantic-declaration"},{"id":83,"kind":"semantic-declaration"},{"id":84,"kind":"semantic-declaration"},{"id":85,"kind":"semantic-declaration"},{"id":86,"kind":"semantic-declaration"},{"id":87,"kind":"semantic-declaration"},{"id":88,"kind":"semantic-declaration"},{"id":89,"kind":"semantic-declaration"},{"id":90,"kind":"semantic-declaration"},{"id":91,"kind":"semantic-declaration"},{"id":92,"kind":"semantic-declaration"},{"id":93,"kind":"semantic-declaration"},{"id":94,"kind":"semantic-declaration"},{"id":95,"kind":"semantic-declaration"},{"id":96,"kind":"semantic-declaration"},{"id":97,"kind":"semantic-declaration"},{"id":98,"kind":"semantic-declaration"},{"id":99,"kind":"semantic-declaration"},{"id":100,"kind":"semantic-declaration"},{"id":101,"kind":"semantic-declaration"},{"id":102,"kind":"semantic-declaration"},{"id":103,"kind":"semantic-declaration"},{"id":104,"kind":"semantic-declaration"},{"id":105,"kind":"semantic-declaration"},{"id":106,"kind":"semantic-declaration"},{"id":107,"kind":"semantic-declaration"},{"id":108,"kind":"semantic-declaration"},{"id":109,"kind":"semantic-declaration"},{"id":110,"kind":"semantic-declaration"},{"id":111,"kind":"semantic-declaration"}],"semantic_id":"7b45b58d681c076cfd69727310b65f3fa63b0a50619281de2bf41504227f308d","source_id":"2d4bae2a2e1a68f05b8703a9e5c6ab1dc1a1bfbfe4e3d9885a7e842bcc0fad92","sources":[{"id":0,"kind":"file","path":"src/Clinic.lex.tex","sha256":"01d7ef34f88ff99c06d1bd95d1e580e88e2b75b2d2826bfce7462f6514d1d05a"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/Reasoning/Clinic.lean"},{"id":1,"kind":"tex","path":"modules/Reasoning/Clinic.tex"}],"mappings":[{"artifact":0,"gen_end":351,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":27439,"src_start":0},{"artifact":0,"gen_end":498,"gen_start":351,"node":1,"role":"declaration","source":0,"src_end":440,"src_start":144},{"artifact":0,"gen_end":675,"gen_start":498,"node":2,"role":"declaration","source":0,"src_end":816,"src_start":442},{"artifact":0,"gen_end":763,"gen_start":675,"node":3,"role":"declaration","source":0,"src_end":954,"src_start":818},{"artifact":0,"gen_end":851,"gen_start":763,"node":4,"role":"declaration","source":0,"src_end":1092,"src_start":956},{"artifact":0,"gen_end":944,"gen_start":851,"node":5,"role":"declaration","source":0,"src_end":1235,"src_start":1094},{"artifact":0,"gen_end":1032,"gen_start":944,"node":6,"role":"declaration","source":0,"src_end":1373,"src_start":1237},{"artifact":0,"gen_end":1119,"gen_start":1032,"node":7,"role":"declaration","source":0,"src_end":1510,"src_start":1375},{"artifact":0,"gen_end":1207,"gen_start":1119,"node":8,"role":"declaration","source":0,"src_end":1626,"src_start":1512},{"artifact":0,"gen_end":1296,"gen_start":1207,"node":9,"role":"declaration","source":0,"src_end":1743,"src_start":1628},{"artifact":0,"gen_end":1390,"gen_start":1296,"node":10,"role":"declaration","source":0,"src_end":1865,"src_start":1745},{"artifact":0,"gen_end":1479,"gen_start":1390,"node":11,"role":"declaration","source":0,"src_end":1982,"src_start":1867},{"artifact":0,"gen_end":1567,"gen_start":1479,"node":12,"role":"declaration","source":0,"src_end":2098,"src_start":1984},{"artifact":0,"gen_end":1775,"gen_start":1567,"node":13,"role":"declaration","source":0,"src_end":2382,"src_start":2100},{"artifact":0,"gen_end":3252,"gen_start":1775,"node":14,"role":"declaration","source":0,"src_end":4502,"src_start":2384},{"artifact":0,"gen_end":3506,"gen_start":3252,"node":15,"role":"declaration","source":0,"src_end":4840,"src_start":4504},{"artifact":0,"gen_end":3986,"gen_start":3506,"node":16,"role":"declaration","source":0,"src_end":5303,"src_start":4842},{"artifact":0,"gen_end":7134,"gen_start":3986,"node":17,"role":"declaration","source":0,"src_end":5701,"src_start":5305},{"artifact":0,"gen_end":7306,"gen_start":7134,"node":18,"role":"declaration","source":0,"src_end":5935,"src_start":5703},{"artifact":0,"gen_end":10727,"gen_start":7306,"node":19,"role":"declaration","source":0,"src_end":6705,"src_start":5937},{"artifact":0,"gen_end":14121,"gen_start":10727,"node":20,"role":"declaration","source":0,"src_end":7354,"src_start":6707},{"artifact":0,"gen_end":15647,"gen_start":14121,"node":21,"role":"declaration","source":0,"src_end":7914,"src_start":7356},{"artifact":0,"gen_end":19077,"gen_start":15647,"node":22,"role":"declaration","source":0,"src_end":8693,"src_start":7916},{"artifact":0,"gen_end":22480,"gen_start":19077,"node":23,"role":"declaration","source":0,"src_end":9351,"src_start":8695},{"artifact":0,"gen_end":24099,"gen_start":22480,"node":24,"role":"declaration","source":0,"src_end":9932,"src_start":9353},{"artifact":0,"gen_end":27526,"gen_start":24099,"node":25,"role":"declaration","source":0,"src_end":10708,"src_start":9934},{"artifact":0,"gen_end":30926,"gen_start":27526,"node":26,"role":"declaration","source":0,"src_end":11363,"src_start":10710},{"artifact":0,"gen_end":32514,"gen_start":30926,"node":27,"role":"declaration","source":0,"src_end":11937,"src_start":11365},{"artifact":0,"gen_end":35944,"gen_start":32514,"node":28,"role":"declaration","source":0,"src_end":12716,"src_start":11939},{"artifact":0,"gen_end":39347,"gen_start":35944,"node":29,"role":"declaration","source":0,"src_end":13374,"src_start":12718},{"artifact":0,"gen_end":40980,"gen_start":39347,"node":30,"role":"declaration","source":0,"src_end":13957,"src_start":13376},{"artifact":0,"gen_end":44463,"gen_start":40980,"node":31,"role":"declaration","source":0,"src_end":14805,"src_start":13959},{"artifact":0,"gen_end":47919,"gen_start":44463,"node":32,"role":"declaration","source":0,"src_end":15532,"src_start":14807},{"artifact":0,"gen_end":49476,"gen_start":47919,"node":33,"role":"declaration","source":0,"src_end":16168,"src_start":15534},{"artifact":0,"gen_end":52945,"gen_start":49476,"node":34,"role":"declaration","source":0,"src_end":16984,"src_start":16170},{"artifact":0,"gen_end":56387,"gen_start":52945,"node":35,"role":"declaration","source":0,"src_end":17679,"src_start":16986},{"artifact":0,"gen_end":57958,"gen_start":56387,"node":36,"role":"declaration","source":0,"src_end":18287,"src_start":17681},{"artifact":0,"gen_end":61414,"gen_start":57958,"node":37,"role":"declaration","source":0,"src_end":19091,"src_start":18289},{"artifact":0,"gen_end":64843,"gen_start":61414,"node":38,"role":"declaration","source":0,"src_end":19774,"src_start":19093},{"artifact":0,"gen_end":66404,"gen_start":64843,"node":39,"role":"declaration","source":0,"src_end":20368,"src_start":19776},{"artifact":0,"gen_end":70001,"gen_start":66404,"node":40,"role":"declaration","source":0,"src_end":21308,"src_start":20370},{"artifact":0,"gen_end":73571,"gen_start":70001,"node":41,"role":"declaration","source":0,"src_end":22127,"src_start":21310},{"artifact":0,"gen_end":75298,"gen_start":73571,"node":42,"role":"declaration","source":0,"src_end":22863,"src_start":22129},{"artifact":0,"gen_end":75480,"gen_start":75298,"node":43,"role":"declaration","source":0,"src_end":23072,"src_start":22865},{"artifact":0,"gen_end":75694,"gen_start":75480,"node":44,"role":"declaration","source":0,"src_end":23321,"src_start":23074},{"artifact":0,"gen_end":78901,"gen_start":75694,"node":45,"role":"declaration","source":0,"src_end":23800,"src_start":23323},{"artifact":0,"gen_end":82111,"gen_start":78901,"node":46,"role":"declaration","source":0,"src_end":24282,"src_start":23802},{"artifact":0,"gen_end":82477,"gen_start":82111,"node":47,"role":"declaration","source":0,"src_end":24566,"src_start":24284},{"artifact":0,"gen_end":82563,"gen_start":82477,"node":48,"role":"declaration","source":0,"src_end":24660,"src_start":24568},{"artifact":0,"gen_end":82652,"gen_start":82563,"node":49,"role":"declaration","source":0,"src_end":24789,"src_start":24662},{"artifact":0,"gen_end":85727,"gen_start":82652,"node":50,"role":"declaration","source":0,"src_end":25020,"src_start":24791},{"artifact":0,"gen_end":85893,"gen_start":85727,"node":51,"role":"declaration","source":0,"src_end":25224,"src_start":25022},{"artifact":0,"gen_end":89054,"gen_start":85893,"node":52,"role":"declaration","source":0,"src_end":25579,"src_start":25226},{"artifact":0,"gen_end":92213,"gen_start":89054,"node":53,"role":"declaration","source":0,"src_end":25914,"src_start":25581},{"artifact":0,"gen_end":116886,"gen_start":92213,"node":54,"role":"declaration","source":0,"src_end":26711,"src_start":25916},{"artifact":0,"gen_end":139633,"gen_start":116886,"node":55,"role":"declaration","source":0,"src_end":27403,"src_start":26713},{"artifact":0,"gen_end":139655,"gen_start":139633,"node":0,"role":"declaration","source":0,"src_end":27439,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":56,"role":"declaration","source":0,"src_end":27439,"src_start":0},{"artifact":1,"gen_end":536,"gen_start":134,"node":57,"role":"declaration","source":0,"src_end":440,"src_start":144},{"artifact":1,"gen_end":1076,"gen_start":536,"node":58,"role":"declaration","source":0,"src_end":816,"src_start":442},{"artifact":1,"gen_end":1411,"gen_start":1076,"node":59,"role":"declaration","source":0,"src_end":954,"src_start":818},{"artifact":1,"gen_end":1746,"gen_start":1411,"node":60,"role":"declaration","source":0,"src_end":1092,"src_start":956},{"artifact":1,"gen_end":2086,"gen_start":1746,"node":61,"role":"declaration","source":0,"src_end":1235,"src_start":1094},{"artifact":1,"gen_end":2421,"gen_start":2086,"node":62,"role":"declaration","source":0,"src_end":1373,"src_start":1237},{"artifact":1,"gen_end":2755,"gen_start":2421,"node":63,"role":"declaration","source":0,"src_end":1510,"src_start":1375},{"artifact":1,"gen_end":3014,"gen_start":2755,"node":64,"role":"declaration","source":0,"src_end":1626,"src_start":1512},{"artifact":1,"gen_end":3274,"gen_start":3014,"node":65,"role":"declaration","source":0,"src_end":1743,"src_start":1628},{"artifact":1,"gen_end":3539,"gen_start":3274,"node":66,"role":"declaration","source":0,"src_end":1865,"src_start":1745},{"artifact":1,"gen_end":3799,"gen_start":3539,"node":67,"role":"declaration","source":0,"src_end":1982,"src_start":1867},{"artifact":1,"gen_end":4058,"gen_start":3799,"node":68,"role":"declaration","source":0,"src_end":2098,"src_start":1984},{"artifact":1,"gen_end":4482,"gen_start":4058,"node":69,"role":"declaration","source":0,"src_end":2382,"src_start":2100},{"artifact":1,"gen_end":6595,"gen_start":4482,"node":70,"role":"declaration","source":0,"src_end":4502,"src_start":2384},{"artifact":1,"gen_end":7125,"gen_start":6595,"node":71,"role":"declaration","source":0,"src_end":4840,"src_start":4504},{"artifact":1,"gen_end":7787,"gen_start":7125,"node":72,"role":"declaration","source":0,"src_end":5303,"src_start":4842},{"artifact":1,"gen_end":8107,"gen_start":7787,"node":73,"role":"declaration","source":0,"src_end":5701,"src_start":5305},{"artifact":1,"gen_end":8840,"gen_start":8107,"node":74,"role":"declaration","source":0,"src_end":5935,"src_start":5703},{"artifact":1,"gen_end":9389,"gen_start":8840,"node":75,"role":"declaration","source":0,"src_end":6705,"src_start":5937},{"artifact":1,"gen_end":9953,"gen_start":9389,"node":76,"role":"declaration","source":0,"src_end":7354,"src_start":6707},{"artifact":1,"gen_end":12552,"gen_start":9953,"node":77,"role":"declaration","source":0,"src_end":7914,"src_start":7356},{"artifact":1,"gen_end":13110,"gen_start":12552,"node":78,"role":"declaration","source":0,"src_end":8693,"src_start":7916},{"artifact":1,"gen_end":13683,"gen_start":13110,"node":79,"role":"declaration","source":0,"src_end":9351,"src_start":8695},{"artifact":1,"gen_end":16390,"gen_start":13683,"node":80,"role":"declaration","source":0,"src_end":9932,"src_start":9353},{"artifact":1,"gen_end":16945,"gen_start":16390,"node":81,"role":"declaration","source":0,"src_end":10708,"src_start":9934},{"artifact":1,"gen_end":17515,"gen_start":16945,"node":82,"role":"declaration","source":0,"src_end":11363,"src_start":10710},{"artifact":1,"gen_end":20186,"gen_start":17515,"node":83,"role":"declaration","source":0,"src_end":11937,"src_start":11365},{"artifact":1,"gen_end":20744,"gen_start":20186,"node":84,"role":"declaration","source":0,"src_end":12716,"src_start":11939},{"artifact":1,"gen_end":21317,"gen_start":20744,"node":85,"role":"declaration","source":0,"src_end":13374,"src_start":12718},{"artifact":1,"gen_end":24036,"gen_start":21317,"node":86,"role":"declaration","source":0,"src_end":13957,"src_start":13376},{"artifact":1,"gen_end":24647,"gen_start":24036,"node":87,"role":"declaration","source":0,"src_end":14805,"src_start":13959},{"artifact":1,"gen_end":25273,"gen_start":24647,"node":88,"role":"declaration","source":0,"src_end":15532,"src_start":14807},{"artifact":1,"gen_end":28108,"gen_start":25273,"node":89,"role":"declaration","source":0,"src_end":16168,"src_start":15534},{"artifact":1,"gen_end":28707,"gen_start":28108,"node":90,"role":"declaration","source":0,"src_end":16984,"src_start":16170},{"artifact":1,"gen_end":29321,"gen_start":28707,"node":91,"role":"declaration","source":0,"src_end":17679,"src_start":16986},{"artifact":1,"gen_end":32132,"gen_start":29321,"node":92,"role":"declaration","source":0,"src_end":18287,"src_start":17681},{"artifact":1,"gen_end":32718,"gen_start":32132,"node":93,"role":"declaration","source":0,"src_end":19091,"src_start":18289},{"artifact":1,"gen_end":33319,"gen_start":32718,"node":94,"role":"declaration","source":0,"src_end":19774,"src_start":19093},{"artifact":1,"gen_end":36066,"gen_start":33319,"node":95,"role":"declaration","source":0,"src_end":20368,"src_start":19776},{"artifact":1,"gen_end":36797,"gen_start":36066,"node":96,"role":"declaration","source":0,"src_end":21308,"src_start":20370},{"artifact":1,"gen_end":37543,"gen_start":36797,"node":97,"role":"declaration","source":0,"src_end":22127,"src_start":21310},{"artifact":1,"gen_end":40906,"gen_start":37543,"node":98,"role":"declaration","source":0,"src_end":22863,"src_start":22129},{"artifact":1,"gen_end":41319,"gen_start":40906,"node":99,"role":"declaration","source":0,"src_end":23072,"src_start":22865},{"artifact":1,"gen_end":41788,"gen_start":41319,"node":100,"role":"declaration","source":0,"src_end":23321,"src_start":23074},{"artifact":1,"gen_end":42109,"gen_start":41788,"node":101,"role":"declaration","source":0,"src_end":23800,"src_start":23323},{"artifact":1,"gen_end":42433,"gen_start":42109,"node":102,"role":"declaration","source":0,"src_end":24282,"src_start":23802},{"artifact":1,"gen_end":43603,"gen_start":42433,"node":103,"role":"declaration","source":0,"src_end":24566,"src_start":24284},{"artifact":1,"gen_end":43859,"gen_start":43603,"node":104,"role":"declaration","source":0,"src_end":24660,"src_start":24568},{"artifact":1,"gen_end":44194,"gen_start":43859,"node":105,"role":"declaration","source":0,"src_end":24789,"src_start":24662},{"artifact":1,"gen_end":44476,"gen_start":44194,"node":106,"role":"declaration","source":0,"src_end":25020,"src_start":24791},{"artifact":1,"gen_end":45162,"gen_start":44476,"node":107,"role":"declaration","source":0,"src_end":25224,"src_start":25022},{"artifact":1,"gen_end":45578,"gen_start":45162,"node":108,"role":"declaration","source":0,"src_end":25579,"src_start":25226},{"artifact":1,"gen_end":45977,"gen_start":45578,"node":109,"role":"declaration","source":0,"src_end":25914,"src_start":25581},{"artifact":1,"gen_end":62729,"gen_start":45977,"node":110,"role":"declaration","source":0,"src_end":26711,"src_start":25916},{"artifact":1,"gen_end":78144,"gen_start":62729,"node":111,"role":"declaration","source":0,"src_end":27403,"src_start":26713},{"artifact":1,"gen_end":78159,"gen_start":78144,"node":56,"role":"declaration","source":0,"src_end":27439,"src_start":0}],"module":"Clinic","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"},{"id":40,"kind":"semantic-declaration"},{"id":41,"kind":"semantic-declaration"},{"id":42,"kind":"semantic-declaration"},{"id":43,"kind":"semantic-declaration"},{"id":44,"kind":"semantic-declaration"},{"id":45,"kind":"semantic-declaration"},{"id":46,"kind":"semantic-declaration"},{"id":47,"kind":"semantic-declaration"},{"id":48,"kind":"semantic-declaration"},{"id":49,"kind":"semantic-declaration"},{"id":50,"kind":"semantic-declaration"},{"id":51,"kind":"semantic-declaration"},{"id":52,"kind":"semantic-declaration"},{"id":53,"kind":"semantic-declaration"},{"id":54,"kind":"semantic-declaration"},{"id":55,"kind":"semantic-declaration"},{"id":56,"kind":"semantic-latex-module"},{"id":57,"kind":"semantic-declaration"},{"id":58,"kind":"semantic-declaration"},{"id":59,"kind":"semantic-declaration"},{"id":60,"kind":"semantic-declaration"},{"id":61,"kind":"semantic-declaration"},{"id":62,"kind":"semantic-declaration"},{"id":63,"kind":"semantic-declaration"},{"id":64,"kind":"semantic-declaration"},{"id":65,"kind":"semantic-declaration"},{"id":66,"kind":"semantic-declaration"},{"id":67,"kind":"semantic-declaration"},{"id":68,"kind":"semantic-declaration"},{"id":69,"kind":"semantic-declaration"},{"id":70,"kind":"semantic-declaration"},{"id":71,"kind":"semantic-declaration"},{"id":72,"kind":"semantic-declaration"},{"id":73,"kind":"semantic-declaration"},{"id":74,"kind":"semantic-declaration"},{"id":75,"kind":"semantic-declaration"},{"id":76,"kind":"semantic-declaration"},{"id":77,"kind":"semantic-declaration"},{"id":78,"kind":"semantic-declaration"},{"id":79,"kind":"semantic-declaration"},{"id":80,"kind":"semantic-declaration"},{"id":81,"kind":"semantic-declaration"},{"id":82,"kind":"semantic-declaration"},{"id":83,"kind":"semantic-declaration"},{"id":84,"kind":"semantic-declaration"},{"id":85,"kind":"semantic-declaration"},{"id":86,"kind":"semantic-declaration"},{"id":87,"kind":"semantic-declaration"},{"id":88,"kind":"semantic-declaration"},{"id":89,"kind":"semantic-declaration"},{"id":90,"kind":"semantic-declaration"},{"id":91,"kind":"semantic-declaration"},{"id":92,"kind":"semantic-declaration"},{"id":93,"kind":"semantic-declaration"},{"id":94,"kind":"semantic-declaration"},{"id":95,"kind":"semantic-declaration"},{"id":96,"kind":"semantic-declaration"},{"id":97,"kind":"semantic-declaration"},{"id":98,"kind":"semantic-declaration"},{"id":99,"kind":"semantic-declaration"},{"id":100,"kind":"semantic-declaration"},{"id":101,"kind":"semantic-declaration"},{"id":102,"kind":"semantic-declaration"},{"id":103,"kind":"semantic-declaration"},{"id":104,"kind":"semantic-declaration"},{"id":105,"kind":"semantic-declaration"},{"id":106,"kind":"semantic-declaration"},{"id":107,"kind":"semantic-declaration"},{"id":108,"kind":"semantic-declaration"},{"id":109,"kind":"semantic-declaration"},{"id":110,"kind":"semantic-declaration"},{"id":111,"kind":"semantic-declaration"}],"semantic_id":"02b315b69b8881ec6f91f78f9b12c6085dc76fa6c7bf1cc658029f081e286c53","source_id":"0057130a9fc0f7ed88a4394b9d3931f003d7ecce5f56d65b920bb48c69bdfc7e","sources":[{"id":0,"kind":"file","path":"src/Clinic.lex.tex","sha256":"01d7ef34f88ff99c06d1bd95d1e580e88e2b75b2d2826bfce7462f6514d1d05a"}],"spec":"lexlean/source-map/1"} diff --git a/examples/reasoning/expected/build/maps/Reasoning/Main.map.json b/examples/reasoning/expected/build/maps/Reasoning/Main.map.json index a1319f629..2de47e452 100644 --- a/examples/reasoning/expected/build/maps/Reasoning/Main.map.json +++ b/examples/reasoning/expected/build/maps/Reasoning/Main.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/Reasoning/Main.lean"},{"id":1,"kind":"tex","path":"modules/Reasoning/Main.tex"}],"mappings":[{"artifact":0,"gen_end":513,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":30065,"src_start":0},{"artifact":0,"gen_end":715,"gen_start":513,"node":1,"role":"declaration","source":0,"src_end":460,"src_start":234},{"artifact":0,"gen_end":716,"gen_start":715,"node":2,"role":"declaration","source":0,"src_end":626,"src_start":462},{"artifact":0,"gen_end":855,"gen_start":716,"node":3,"role":"declaration","source":0,"src_end":830,"src_start":628},{"artifact":0,"gen_end":1007,"gen_start":855,"node":4,"role":"declaration","source":0,"src_end":1068,"src_start":832},{"artifact":0,"gen_end":1177,"gen_start":1007,"node":5,"role":"declaration","source":0,"src_end":1290,"src_start":1070},{"artifact":0,"gen_end":1324,"gen_start":1177,"node":6,"role":"declaration","source":0,"src_end":1441,"src_start":1292},{"artifact":0,"gen_end":1474,"gen_start":1324,"node":7,"role":"declaration","source":0,"src_end":1592,"src_start":1443},{"artifact":0,"gen_end":1640,"gen_start":1474,"node":8,"role":"declaration","source":0,"src_end":1776,"src_start":1594},{"artifact":0,"gen_end":4775,"gen_start":1640,"node":9,"role":"declaration","source":0,"src_end":2078,"src_start":1778},{"artifact":0,"gen_end":4920,"gen_start":4775,"node":10,"role":"declaration","source":0,"src_end":2305,"src_start":2080},{"artifact":0,"gen_end":5224,"gen_start":4920,"node":11,"role":"declaration","source":0,"src_end":2682,"src_start":2307},{"artifact":0,"gen_end":5528,"gen_start":5224,"node":12,"role":"declaration","source":0,"src_end":3041,"src_start":2684},{"artifact":0,"gen_end":5818,"gen_start":5528,"node":13,"role":"declaration","source":0,"src_end":3345,"src_start":3043},{"artifact":0,"gen_end":9083,"gen_start":5818,"node":14,"role":"declaration","source":0,"src_end":3765,"src_start":3347},{"artifact":0,"gen_end":12456,"gen_start":9083,"node":15,"role":"declaration","source":0,"src_end":4281,"src_start":3767},{"artifact":0,"gen_end":15692,"gen_start":12456,"node":16,"role":"declaration","source":0,"src_end":4695,"src_start":4283},{"artifact":0,"gen_end":40686,"gen_start":15692,"node":17,"role":"declaration","source":0,"src_end":5734,"src_start":4697},{"artifact":0,"gen_end":40786,"gen_start":40686,"node":18,"role":"declaration","source":0,"src_end":5833,"src_start":5736},{"artifact":0,"gen_end":40889,"gen_start":40786,"node":19,"role":"declaration","source":0,"src_end":5968,"src_start":5835},{"artifact":0,"gen_end":43964,"gen_start":40889,"node":20,"role":"declaration","source":0,"src_end":6190,"src_start":5970},{"artifact":0,"gen_end":44111,"gen_start":43964,"node":21,"role":"declaration","source":0,"src_end":6389,"src_start":6192},{"artifact":0,"gen_end":47300,"gen_start":44111,"node":22,"role":"declaration","source":0,"src_end":6731,"src_start":6391},{"artifact":0,"gen_end":68181,"gen_start":47300,"node":23,"role":"declaration","source":0,"src_end":7608,"src_start":6733},{"artifact":0,"gen_end":68627,"gen_start":68181,"node":24,"role":"declaration","source":0,"src_end":8192,"src_start":7610},{"artifact":0,"gen_end":69055,"gen_start":68627,"node":25,"role":"declaration","source":0,"src_end":8767,"src_start":8194},{"artifact":0,"gen_end":69537,"gen_start":69055,"node":26,"role":"declaration","source":0,"src_end":9391,"src_start":8769},{"artifact":0,"gen_end":69696,"gen_start":69537,"node":27,"role":"declaration","source":0,"src_end":9707,"src_start":9393},{"artifact":0,"gen_end":69844,"gen_start":69696,"node":28,"role":"declaration","source":0,"src_end":9979,"src_start":9709},{"artifact":0,"gen_end":70271,"gen_start":69844,"node":29,"role":"declaration","source":0,"src_end":10553,"src_start":9981},{"artifact":0,"gen_end":70422,"gen_start":70271,"node":30,"role":"declaration","source":0,"src_end":10828,"src_start":10555},{"artifact":0,"gen_end":70579,"gen_start":70422,"node":31,"role":"declaration","source":0,"src_end":11117,"src_start":10830},{"artifact":0,"gen_end":71280,"gen_start":70579,"node":32,"role":"declaration","source":0,"src_end":11892,"src_start":11119},{"artifact":0,"gen_end":71372,"gen_start":71280,"node":33,"role":"declaration","source":0,"src_end":12020,"src_start":11894},{"artifact":0,"gen_end":72083,"gen_start":71372,"node":34,"role":"declaration","source":0,"src_end":12754,"src_start":12022},{"artifact":0,"gen_end":72336,"gen_start":72083,"node":35,"role":"declaration","source":0,"src_end":13058,"src_start":12756},{"artifact":0,"gen_end":72609,"gen_start":72336,"node":36,"role":"declaration","source":0,"src_end":13405,"src_start":13060},{"artifact":0,"gen_end":72964,"gen_start":72609,"node":37,"role":"declaration","source":0,"src_end":13816,"src_start":13407},{"artifact":0,"gen_end":73273,"gen_start":72964,"node":38,"role":"declaration","source":0,"src_end":14166,"src_start":13818},{"artifact":0,"gen_end":73549,"gen_start":73273,"node":39,"role":"declaration","source":0,"src_end":14502,"src_start":14168},{"artifact":0,"gen_end":73823,"gen_start":73549,"node":40,"role":"declaration","source":0,"src_end":14836,"src_start":14504},{"artifact":0,"gen_end":73917,"gen_start":73823,"node":41,"role":"declaration","source":0,"src_end":14966,"src_start":14838},{"artifact":0,"gen_end":74224,"gen_start":73917,"node":42,"role":"declaration","source":0,"src_end":15380,"src_start":14968},{"artifact":0,"gen_end":74323,"gen_start":74224,"node":43,"role":"declaration","source":0,"src_end":15545,"src_start":15382},{"artifact":0,"gen_end":74457,"gen_start":74323,"node":44,"role":"declaration","source":0,"src_end":15745,"src_start":15547},{"artifact":0,"gen_end":74674,"gen_start":74457,"node":45,"role":"declaration","source":0,"src_end":16068,"src_start":15747},{"artifact":0,"gen_end":74805,"gen_start":74674,"node":46,"role":"declaration","source":0,"src_end":16294,"src_start":16070},{"artifact":0,"gen_end":74910,"gen_start":74805,"node":47,"role":"declaration","source":0,"src_end":16477,"src_start":16296},{"artifact":0,"gen_end":75103,"gen_start":74910,"node":48,"role":"declaration","source":0,"src_end":16751,"src_start":16479},{"artifact":0,"gen_end":75193,"gen_start":75103,"node":49,"role":"declaration","source":0,"src_end":16877,"src_start":16753},{"artifact":0,"gen_end":75380,"gen_start":75193,"node":50,"role":"declaration","source":0,"src_end":17143,"src_start":16879},{"artifact":0,"gen_end":75517,"gen_start":75380,"node":51,"role":"declaration","source":0,"src_end":17346,"src_start":17145},{"artifact":0,"gen_end":75658,"gen_start":75517,"node":52,"role":"declaration","source":0,"src_end":17553,"src_start":17348},{"artifact":0,"gen_end":76881,"gen_start":75658,"node":53,"role":"declaration","source":0,"src_end":18780,"src_start":17555},{"artifact":0,"gen_end":78100,"gen_start":76881,"node":54,"role":"declaration","source":0,"src_end":20003,"src_start":18782},{"artifact":0,"gen_end":79321,"gen_start":78100,"node":55,"role":"declaration","source":0,"src_end":21228,"src_start":20005},{"artifact":0,"gen_end":80435,"gen_start":79321,"node":56,"role":"declaration","source":0,"src_end":22400,"src_start":21230},{"artifact":0,"gen_end":81545,"gen_start":80435,"node":57,"role":"declaration","source":0,"src_end":23568,"src_start":22402},{"artifact":0,"gen_end":82775,"gen_start":81545,"node":58,"role":"declaration","source":0,"src_end":24802,"src_start":23570},{"artifact":0,"gen_end":83214,"gen_start":82775,"node":59,"role":"declaration","source":0,"src_end":25281,"src_start":24804},{"artifact":0,"gen_end":83594,"gen_start":83214,"node":60,"role":"declaration","source":0,"src_end":25701,"src_start":25283},{"artifact":0,"gen_end":83984,"gen_start":83594,"node":61,"role":"declaration","source":0,"src_end":26131,"src_start":25703},{"artifact":0,"gen_end":84411,"gen_start":83984,"node":62,"role":"declaration","source":0,"src_end":26691,"src_start":26133},{"artifact":0,"gen_end":84853,"gen_start":84411,"node":63,"role":"declaration","source":0,"src_end":27266,"src_start":26693},{"artifact":0,"gen_end":85312,"gen_start":84853,"node":64,"role":"declaration","source":0,"src_end":27837,"src_start":27268},{"artifact":0,"gen_end":85773,"gen_start":85312,"node":65,"role":"declaration","source":0,"src_end":28410,"src_start":27839},{"artifact":0,"gen_end":86248,"gen_start":85773,"node":66,"role":"declaration","source":0,"src_end":28997,"src_start":28412},{"artifact":0,"gen_end":86668,"gen_start":86248,"node":67,"role":"declaration","source":0,"src_end":29505,"src_start":28999},{"artifact":0,"gen_end":87104,"gen_start":86668,"node":68,"role":"declaration","source":0,"src_end":30029,"src_start":29507},{"artifact":0,"gen_end":87124,"gen_start":87104,"node":0,"role":"declaration","source":0,"src_end":30065,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":69,"role":"declaration","source":0,"src_end":30065,"src_start":0},{"artifact":1,"gen_end":507,"gen_start":134,"node":70,"role":"declaration","source":0,"src_end":460,"src_start":234},{"artifact":1,"gen_end":791,"gen_start":507,"node":71,"role":"declaration","source":0,"src_end":626,"src_start":462},{"artifact":1,"gen_end":1329,"gen_start":791,"node":72,"role":"declaration","source":0,"src_end":830,"src_start":628},{"artifact":1,"gen_end":1624,"gen_start":1329,"node":73,"role":"declaration","source":0,"src_end":1068,"src_start":832},{"artifact":1,"gen_end":2298,"gen_start":1624,"node":74,"role":"declaration","source":0,"src_end":1290,"src_start":1070},{"artifact":1,"gen_end":2765,"gen_start":2298,"node":75,"role":"declaration","source":0,"src_end":1441,"src_start":1292},{"artifact":1,"gen_end":3101,"gen_start":2765,"node":76,"role":"declaration","source":0,"src_end":1592,"src_start":1443},{"artifact":1,"gen_end":3516,"gen_start":3101,"node":77,"role":"declaration","source":0,"src_end":1776,"src_start":1594},{"artifact":1,"gen_end":3835,"gen_start":3516,"node":78,"role":"declaration","source":0,"src_end":2078,"src_start":1778},{"artifact":1,"gen_end":4543,"gen_start":3835,"node":79,"role":"declaration","source":0,"src_end":2305,"src_start":2080},{"artifact":1,"gen_end":4993,"gen_start":4543,"node":80,"role":"declaration","source":0,"src_end":2682,"src_start":2307},{"artifact":1,"gen_end":5428,"gen_start":4993,"node":81,"role":"declaration","source":0,"src_end":3041,"src_start":2684},{"artifact":1,"gen_end":5934,"gen_start":5428,"node":82,"role":"declaration","source":0,"src_end":3345,"src_start":3043},{"artifact":1,"gen_end":6370,"gen_start":5934,"node":83,"role":"declaration","source":0,"src_end":3765,"src_start":3347},{"artifact":1,"gen_end":6770,"gen_start":6370,"node":84,"role":"declaration","source":0,"src_end":4281,"src_start":3767},{"artifact":1,"gen_end":7167,"gen_start":6770,"node":85,"role":"declaration","source":0,"src_end":4695,"src_start":4283},{"artifact":1,"gen_end":27214,"gen_start":7167,"node":86,"role":"declaration","source":0,"src_end":5734,"src_start":4697},{"artifact":1,"gen_end":27484,"gen_start":27214,"node":87,"role":"declaration","source":0,"src_end":5833,"src_start":5736},{"artifact":1,"gen_end":27833,"gen_start":27484,"node":88,"role":"declaration","source":0,"src_end":5968,"src_start":5835},{"artifact":1,"gen_end":28122,"gen_start":27833,"node":89,"role":"declaration","source":0,"src_end":6190,"src_start":5970},{"artifact":1,"gen_end":28806,"gen_start":28122,"node":90,"role":"declaration","source":0,"src_end":6389,"src_start":6192},{"artifact":1,"gen_end":29234,"gen_start":28806,"node":91,"role":"declaration","source":0,"src_end":6731,"src_start":6391},{"artifact":1,"gen_end":45911,"gen_start":29234,"node":92,"role":"declaration","source":0,"src_end":7608,"src_start":6733},{"artifact":1,"gen_end":46717,"gen_start":45911,"node":93,"role":"declaration","source":0,"src_end":8192,"src_start":7610},{"artifact":1,"gen_end":47505,"gen_start":46717,"node":94,"role":"declaration","source":0,"src_end":8767,"src_start":8194},{"artifact":1,"gen_end":48358,"gen_start":47505,"node":95,"role":"declaration","source":0,"src_end":9391,"src_start":8769},{"artifact":1,"gen_end":48897,"gen_start":48358,"node":96,"role":"declaration","source":0,"src_end":9707,"src_start":9393},{"artifact":1,"gen_end":49414,"gen_start":48897,"node":97,"role":"declaration","source":0,"src_end":9979,"src_start":9709},{"artifact":1,"gen_end":50201,"gen_start":49414,"node":98,"role":"declaration","source":0,"src_end":10553,"src_start":9981},{"artifact":1,"gen_end":50721,"gen_start":50201,"node":99,"role":"declaration","source":0,"src_end":10828,"src_start":10555},{"artifact":1,"gen_end":51247,"gen_start":50721,"node":100,"role":"declaration","source":0,"src_end":11117,"src_start":10830},{"artifact":1,"gen_end":52060,"gen_start":51247,"node":101,"role":"declaration","source":0,"src_end":11892,"src_start":11119},{"artifact":1,"gen_end":52262,"gen_start":52060,"node":102,"role":"declaration","source":0,"src_end":12020,"src_start":11894},{"artifact":1,"gen_end":53085,"gen_start":52262,"node":103,"role":"declaration","source":0,"src_end":12754,"src_start":12022},{"artifact":1,"gen_end":53450,"gen_start":53085,"node":104,"role":"declaration","source":0,"src_end":13058,"src_start":12756},{"artifact":1,"gen_end":53835,"gen_start":53450,"node":105,"role":"declaration","source":0,"src_end":13405,"src_start":13060},{"artifact":1,"gen_end":54301,"gen_start":53835,"node":106,"role":"declaration","source":0,"src_end":13816,"src_start":13407},{"artifact":1,"gen_end":54722,"gen_start":54301,"node":107,"role":"declaration","source":0,"src_end":14166,"src_start":13818},{"artifact":1,"gen_end":55103,"gen_start":54722,"node":108,"role":"declaration","source":0,"src_end":14502,"src_start":14168},{"artifact":1,"gen_end":55482,"gen_start":55103,"node":109,"role":"declaration","source":0,"src_end":14836,"src_start":14504},{"artifact":1,"gen_end":55686,"gen_start":55482,"node":110,"role":"declaration","source":0,"src_end":14966,"src_start":14838},{"artifact":1,"gen_end":56103,"gen_start":55686,"node":111,"role":"declaration","source":0,"src_end":15380,"src_start":14968},{"artifact":1,"gen_end":56312,"gen_start":56103,"node":112,"role":"declaration","source":0,"src_end":15545,"src_start":15382},{"artifact":1,"gen_end":56549,"gen_start":56312,"node":113,"role":"declaration","source":0,"src_end":15745,"src_start":15547},{"artifact":1,"gen_end":56887,"gen_start":56549,"node":114,"role":"declaration","source":0,"src_end":16068,"src_start":15747},{"artifact":1,"gen_end":57132,"gen_start":56887,"node":115,"role":"declaration","source":0,"src_end":16294,"src_start":16070},{"artifact":1,"gen_end":57358,"gen_start":57132,"node":116,"role":"declaration","source":0,"src_end":16477,"src_start":16296},{"artifact":1,"gen_end":57661,"gen_start":57358,"node":117,"role":"declaration","source":0,"src_end":16751,"src_start":16479},{"artifact":1,"gen_end":57861,"gen_start":57661,"node":118,"role":"declaration","source":0,"src_end":16877,"src_start":16753},{"artifact":1,"gen_end":58158,"gen_start":57861,"node":119,"role":"declaration","source":0,"src_end":17143,"src_start":16879},{"artifact":1,"gen_end":58398,"gen_start":58158,"node":120,"role":"declaration","source":0,"src_end":17346,"src_start":17145},{"artifact":1,"gen_end":58642,"gen_start":58398,"node":121,"role":"declaration","source":0,"src_end":17553,"src_start":17348},{"artifact":1,"gen_end":59987,"gen_start":58642,"node":122,"role":"declaration","source":0,"src_end":18780,"src_start":17555},{"artifact":1,"gen_end":61329,"gen_start":59987,"node":123,"role":"declaration","source":0,"src_end":20003,"src_start":18782},{"artifact":1,"gen_end":62672,"gen_start":61329,"node":124,"role":"declaration","source":0,"src_end":21228,"src_start":20005},{"artifact":1,"gen_end":63908,"gen_start":62672,"node":125,"role":"declaration","source":0,"src_end":22400,"src_start":21230},{"artifact":1,"gen_end":65141,"gen_start":63908,"node":126,"role":"declaration","source":0,"src_end":23568,"src_start":22402},{"artifact":1,"gen_end":66494,"gen_start":65141,"node":127,"role":"declaration","source":0,"src_end":24802,"src_start":23570},{"artifact":1,"gen_end":67043,"gen_start":66494,"node":128,"role":"declaration","source":0,"src_end":25281,"src_start":24804},{"artifact":1,"gen_end":67533,"gen_start":67043,"node":129,"role":"declaration","source":0,"src_end":25701,"src_start":25283},{"artifact":1,"gen_end":68034,"gen_start":67533,"node":130,"role":"declaration","source":0,"src_end":26131,"src_start":25703},{"artifact":1,"gen_end":68582,"gen_start":68034,"node":131,"role":"declaration","source":0,"src_end":26691,"src_start":26133},{"artifact":1,"gen_end":69146,"gen_start":68582,"node":132,"role":"declaration","source":0,"src_end":27266,"src_start":26693},{"artifact":1,"gen_end":69715,"gen_start":69146,"node":133,"role":"declaration","source":0,"src_end":27837,"src_start":27268},{"artifact":1,"gen_end":70287,"gen_start":69715,"node":134,"role":"declaration","source":0,"src_end":28410,"src_start":27839},{"artifact":1,"gen_end":70873,"gen_start":70287,"node":135,"role":"declaration","source":0,"src_end":28997,"src_start":28412},{"artifact":1,"gen_end":71403,"gen_start":70873,"node":136,"role":"declaration","source":0,"src_end":29505,"src_start":28999},{"artifact":1,"gen_end":71950,"gen_start":71403,"node":137,"role":"declaration","source":0,"src_end":30029,"src_start":29507},{"artifact":1,"gen_end":71965,"gen_start":71950,"node":69,"role":"declaration","source":0,"src_end":30065,"src_start":0}],"module":"Main","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"},{"id":40,"kind":"semantic-declaration"},{"id":41,"kind":"semantic-declaration"},{"id":42,"kind":"semantic-declaration"},{"id":43,"kind":"semantic-declaration"},{"id":44,"kind":"semantic-declaration"},{"id":45,"kind":"semantic-declaration"},{"id":46,"kind":"semantic-declaration"},{"id":47,"kind":"semantic-declaration"},{"id":48,"kind":"semantic-declaration"},{"id":49,"kind":"semantic-declaration"},{"id":50,"kind":"semantic-declaration"},{"id":51,"kind":"semantic-declaration"},{"id":52,"kind":"semantic-declaration"},{"id":53,"kind":"semantic-declaration"},{"id":54,"kind":"semantic-declaration"},{"id":55,"kind":"semantic-declaration"},{"id":56,"kind":"semantic-declaration"},{"id":57,"kind":"semantic-declaration"},{"id":58,"kind":"semantic-declaration"},{"id":59,"kind":"semantic-declaration"},{"id":60,"kind":"semantic-declaration"},{"id":61,"kind":"semantic-declaration"},{"id":62,"kind":"semantic-declaration"},{"id":63,"kind":"semantic-declaration"},{"id":64,"kind":"semantic-declaration"},{"id":65,"kind":"semantic-declaration"},{"id":66,"kind":"semantic-declaration"},{"id":67,"kind":"semantic-declaration"},{"id":68,"kind":"semantic-declaration"},{"id":69,"kind":"semantic-latex-module"},{"id":70,"kind":"semantic-declaration"},{"id":71,"kind":"semantic-declaration"},{"id":72,"kind":"semantic-declaration"},{"id":73,"kind":"semantic-declaration"},{"id":74,"kind":"semantic-declaration"},{"id":75,"kind":"semantic-declaration"},{"id":76,"kind":"semantic-declaration"},{"id":77,"kind":"semantic-declaration"},{"id":78,"kind":"semantic-declaration"},{"id":79,"kind":"semantic-declaration"},{"id":80,"kind":"semantic-declaration"},{"id":81,"kind":"semantic-declaration"},{"id":82,"kind":"semantic-declaration"},{"id":83,"kind":"semantic-declaration"},{"id":84,"kind":"semantic-declaration"},{"id":85,"kind":"semantic-declaration"},{"id":86,"kind":"semantic-declaration"},{"id":87,"kind":"semantic-declaration"},{"id":88,"kind":"semantic-declaration"},{"id":89,"kind":"semantic-declaration"},{"id":90,"kind":"semantic-declaration"},{"id":91,"kind":"semantic-declaration"},{"id":92,"kind":"semantic-declaration"},{"id":93,"kind":"semantic-declaration"},{"id":94,"kind":"semantic-declaration"},{"id":95,"kind":"semantic-declaration"},{"id":96,"kind":"semantic-declaration"},{"id":97,"kind":"semantic-declaration"},{"id":98,"kind":"semantic-declaration"},{"id":99,"kind":"semantic-declaration"},{"id":100,"kind":"semantic-declaration"},{"id":101,"kind":"semantic-declaration"},{"id":102,"kind":"semantic-declaration"},{"id":103,"kind":"semantic-declaration"},{"id":104,"kind":"semantic-declaration"},{"id":105,"kind":"semantic-declaration"},{"id":106,"kind":"semantic-declaration"},{"id":107,"kind":"semantic-declaration"},{"id":108,"kind":"semantic-declaration"},{"id":109,"kind":"semantic-declaration"},{"id":110,"kind":"semantic-declaration"},{"id":111,"kind":"semantic-declaration"},{"id":112,"kind":"semantic-declaration"},{"id":113,"kind":"semantic-declaration"},{"id":114,"kind":"semantic-declaration"},{"id":115,"kind":"semantic-declaration"},{"id":116,"kind":"semantic-declaration"},{"id":117,"kind":"semantic-declaration"},{"id":118,"kind":"semantic-declaration"},{"id":119,"kind":"semantic-declaration"},{"id":120,"kind":"semantic-declaration"},{"id":121,"kind":"semantic-declaration"},{"id":122,"kind":"semantic-declaration"},{"id":123,"kind":"semantic-declaration"},{"id":124,"kind":"semantic-declaration"},{"id":125,"kind":"semantic-declaration"},{"id":126,"kind":"semantic-declaration"},{"id":127,"kind":"semantic-declaration"},{"id":128,"kind":"semantic-declaration"},{"id":129,"kind":"semantic-declaration"},{"id":130,"kind":"semantic-declaration"},{"id":131,"kind":"semantic-declaration"},{"id":132,"kind":"semantic-declaration"},{"id":133,"kind":"semantic-declaration"},{"id":134,"kind":"semantic-declaration"},{"id":135,"kind":"semantic-declaration"},{"id":136,"kind":"semantic-declaration"},{"id":137,"kind":"semantic-declaration"}],"semantic_id":"7b45b58d681c076cfd69727310b65f3fa63b0a50619281de2bf41504227f308d","source_id":"2d4bae2a2e1a68f05b8703a9e5c6ab1dc1a1bfbfe4e3d9885a7e842bcc0fad92","sources":[{"id":0,"kind":"file","path":"src/Main.lex.tex","sha256":"1c528893e116cb6b0cf1f39acb17a02c4e3e5302c5c8e2c802bb3cff19582468"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/Reasoning/Main.lean"},{"id":1,"kind":"tex","path":"modules/Reasoning/Main.tex"}],"mappings":[{"artifact":0,"gen_end":513,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":30065,"src_start":0},{"artifact":0,"gen_end":715,"gen_start":513,"node":1,"role":"declaration","source":0,"src_end":460,"src_start":234},{"artifact":0,"gen_end":716,"gen_start":715,"node":2,"role":"declaration","source":0,"src_end":626,"src_start":462},{"artifact":0,"gen_end":855,"gen_start":716,"node":3,"role":"declaration","source":0,"src_end":830,"src_start":628},{"artifact":0,"gen_end":1007,"gen_start":855,"node":4,"role":"declaration","source":0,"src_end":1068,"src_start":832},{"artifact":0,"gen_end":1177,"gen_start":1007,"node":5,"role":"declaration","source":0,"src_end":1290,"src_start":1070},{"artifact":0,"gen_end":1324,"gen_start":1177,"node":6,"role":"declaration","source":0,"src_end":1441,"src_start":1292},{"artifact":0,"gen_end":1474,"gen_start":1324,"node":7,"role":"declaration","source":0,"src_end":1592,"src_start":1443},{"artifact":0,"gen_end":1640,"gen_start":1474,"node":8,"role":"declaration","source":0,"src_end":1776,"src_start":1594},{"artifact":0,"gen_end":4775,"gen_start":1640,"node":9,"role":"declaration","source":0,"src_end":2078,"src_start":1778},{"artifact":0,"gen_end":4920,"gen_start":4775,"node":10,"role":"declaration","source":0,"src_end":2305,"src_start":2080},{"artifact":0,"gen_end":5224,"gen_start":4920,"node":11,"role":"declaration","source":0,"src_end":2682,"src_start":2307},{"artifact":0,"gen_end":5528,"gen_start":5224,"node":12,"role":"declaration","source":0,"src_end":3041,"src_start":2684},{"artifact":0,"gen_end":5818,"gen_start":5528,"node":13,"role":"declaration","source":0,"src_end":3345,"src_start":3043},{"artifact":0,"gen_end":9083,"gen_start":5818,"node":14,"role":"declaration","source":0,"src_end":3765,"src_start":3347},{"artifact":0,"gen_end":12456,"gen_start":9083,"node":15,"role":"declaration","source":0,"src_end":4281,"src_start":3767},{"artifact":0,"gen_end":15692,"gen_start":12456,"node":16,"role":"declaration","source":0,"src_end":4695,"src_start":4283},{"artifact":0,"gen_end":40686,"gen_start":15692,"node":17,"role":"declaration","source":0,"src_end":5734,"src_start":4697},{"artifact":0,"gen_end":40786,"gen_start":40686,"node":18,"role":"declaration","source":0,"src_end":5833,"src_start":5736},{"artifact":0,"gen_end":40889,"gen_start":40786,"node":19,"role":"declaration","source":0,"src_end":5968,"src_start":5835},{"artifact":0,"gen_end":43964,"gen_start":40889,"node":20,"role":"declaration","source":0,"src_end":6190,"src_start":5970},{"artifact":0,"gen_end":44111,"gen_start":43964,"node":21,"role":"declaration","source":0,"src_end":6389,"src_start":6192},{"artifact":0,"gen_end":47300,"gen_start":44111,"node":22,"role":"declaration","source":0,"src_end":6731,"src_start":6391},{"artifact":0,"gen_end":68181,"gen_start":47300,"node":23,"role":"declaration","source":0,"src_end":7608,"src_start":6733},{"artifact":0,"gen_end":68627,"gen_start":68181,"node":24,"role":"declaration","source":0,"src_end":8192,"src_start":7610},{"artifact":0,"gen_end":69055,"gen_start":68627,"node":25,"role":"declaration","source":0,"src_end":8767,"src_start":8194},{"artifact":0,"gen_end":69537,"gen_start":69055,"node":26,"role":"declaration","source":0,"src_end":9391,"src_start":8769},{"artifact":0,"gen_end":69696,"gen_start":69537,"node":27,"role":"declaration","source":0,"src_end":9707,"src_start":9393},{"artifact":0,"gen_end":69844,"gen_start":69696,"node":28,"role":"declaration","source":0,"src_end":9979,"src_start":9709},{"artifact":0,"gen_end":70271,"gen_start":69844,"node":29,"role":"declaration","source":0,"src_end":10553,"src_start":9981},{"artifact":0,"gen_end":70422,"gen_start":70271,"node":30,"role":"declaration","source":0,"src_end":10828,"src_start":10555},{"artifact":0,"gen_end":70579,"gen_start":70422,"node":31,"role":"declaration","source":0,"src_end":11117,"src_start":10830},{"artifact":0,"gen_end":71280,"gen_start":70579,"node":32,"role":"declaration","source":0,"src_end":11892,"src_start":11119},{"artifact":0,"gen_end":71372,"gen_start":71280,"node":33,"role":"declaration","source":0,"src_end":12020,"src_start":11894},{"artifact":0,"gen_end":72083,"gen_start":71372,"node":34,"role":"declaration","source":0,"src_end":12754,"src_start":12022},{"artifact":0,"gen_end":72336,"gen_start":72083,"node":35,"role":"declaration","source":0,"src_end":13058,"src_start":12756},{"artifact":0,"gen_end":72609,"gen_start":72336,"node":36,"role":"declaration","source":0,"src_end":13405,"src_start":13060},{"artifact":0,"gen_end":72964,"gen_start":72609,"node":37,"role":"declaration","source":0,"src_end":13816,"src_start":13407},{"artifact":0,"gen_end":73273,"gen_start":72964,"node":38,"role":"declaration","source":0,"src_end":14166,"src_start":13818},{"artifact":0,"gen_end":73549,"gen_start":73273,"node":39,"role":"declaration","source":0,"src_end":14502,"src_start":14168},{"artifact":0,"gen_end":73823,"gen_start":73549,"node":40,"role":"declaration","source":0,"src_end":14836,"src_start":14504},{"artifact":0,"gen_end":73917,"gen_start":73823,"node":41,"role":"declaration","source":0,"src_end":14966,"src_start":14838},{"artifact":0,"gen_end":74224,"gen_start":73917,"node":42,"role":"declaration","source":0,"src_end":15380,"src_start":14968},{"artifact":0,"gen_end":74323,"gen_start":74224,"node":43,"role":"declaration","source":0,"src_end":15545,"src_start":15382},{"artifact":0,"gen_end":74457,"gen_start":74323,"node":44,"role":"declaration","source":0,"src_end":15745,"src_start":15547},{"artifact":0,"gen_end":74674,"gen_start":74457,"node":45,"role":"declaration","source":0,"src_end":16068,"src_start":15747},{"artifact":0,"gen_end":74805,"gen_start":74674,"node":46,"role":"declaration","source":0,"src_end":16294,"src_start":16070},{"artifact":0,"gen_end":74910,"gen_start":74805,"node":47,"role":"declaration","source":0,"src_end":16477,"src_start":16296},{"artifact":0,"gen_end":75103,"gen_start":74910,"node":48,"role":"declaration","source":0,"src_end":16751,"src_start":16479},{"artifact":0,"gen_end":75193,"gen_start":75103,"node":49,"role":"declaration","source":0,"src_end":16877,"src_start":16753},{"artifact":0,"gen_end":75380,"gen_start":75193,"node":50,"role":"declaration","source":0,"src_end":17143,"src_start":16879},{"artifact":0,"gen_end":75517,"gen_start":75380,"node":51,"role":"declaration","source":0,"src_end":17346,"src_start":17145},{"artifact":0,"gen_end":75658,"gen_start":75517,"node":52,"role":"declaration","source":0,"src_end":17553,"src_start":17348},{"artifact":0,"gen_end":76881,"gen_start":75658,"node":53,"role":"declaration","source":0,"src_end":18780,"src_start":17555},{"artifact":0,"gen_end":78100,"gen_start":76881,"node":54,"role":"declaration","source":0,"src_end":20003,"src_start":18782},{"artifact":0,"gen_end":79321,"gen_start":78100,"node":55,"role":"declaration","source":0,"src_end":21228,"src_start":20005},{"artifact":0,"gen_end":80435,"gen_start":79321,"node":56,"role":"declaration","source":0,"src_end":22400,"src_start":21230},{"artifact":0,"gen_end":81545,"gen_start":80435,"node":57,"role":"declaration","source":0,"src_end":23568,"src_start":22402},{"artifact":0,"gen_end":82775,"gen_start":81545,"node":58,"role":"declaration","source":0,"src_end":24802,"src_start":23570},{"artifact":0,"gen_end":83214,"gen_start":82775,"node":59,"role":"declaration","source":0,"src_end":25281,"src_start":24804},{"artifact":0,"gen_end":83594,"gen_start":83214,"node":60,"role":"declaration","source":0,"src_end":25701,"src_start":25283},{"artifact":0,"gen_end":83984,"gen_start":83594,"node":61,"role":"declaration","source":0,"src_end":26131,"src_start":25703},{"artifact":0,"gen_end":84411,"gen_start":83984,"node":62,"role":"declaration","source":0,"src_end":26691,"src_start":26133},{"artifact":0,"gen_end":84853,"gen_start":84411,"node":63,"role":"declaration","source":0,"src_end":27266,"src_start":26693},{"artifact":0,"gen_end":85312,"gen_start":84853,"node":64,"role":"declaration","source":0,"src_end":27837,"src_start":27268},{"artifact":0,"gen_end":85773,"gen_start":85312,"node":65,"role":"declaration","source":0,"src_end":28410,"src_start":27839},{"artifact":0,"gen_end":86248,"gen_start":85773,"node":66,"role":"declaration","source":0,"src_end":28997,"src_start":28412},{"artifact":0,"gen_end":86668,"gen_start":86248,"node":67,"role":"declaration","source":0,"src_end":29505,"src_start":28999},{"artifact":0,"gen_end":87104,"gen_start":86668,"node":68,"role":"declaration","source":0,"src_end":30029,"src_start":29507},{"artifact":0,"gen_end":87124,"gen_start":87104,"node":0,"role":"declaration","source":0,"src_end":30065,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":69,"role":"declaration","source":0,"src_end":30065,"src_start":0},{"artifact":1,"gen_end":507,"gen_start":134,"node":70,"role":"declaration","source":0,"src_end":460,"src_start":234},{"artifact":1,"gen_end":791,"gen_start":507,"node":71,"role":"declaration","source":0,"src_end":626,"src_start":462},{"artifact":1,"gen_end":1329,"gen_start":791,"node":72,"role":"declaration","source":0,"src_end":830,"src_start":628},{"artifact":1,"gen_end":1624,"gen_start":1329,"node":73,"role":"declaration","source":0,"src_end":1068,"src_start":832},{"artifact":1,"gen_end":2298,"gen_start":1624,"node":74,"role":"declaration","source":0,"src_end":1290,"src_start":1070},{"artifact":1,"gen_end":2765,"gen_start":2298,"node":75,"role":"declaration","source":0,"src_end":1441,"src_start":1292},{"artifact":1,"gen_end":3101,"gen_start":2765,"node":76,"role":"declaration","source":0,"src_end":1592,"src_start":1443},{"artifact":1,"gen_end":3516,"gen_start":3101,"node":77,"role":"declaration","source":0,"src_end":1776,"src_start":1594},{"artifact":1,"gen_end":3835,"gen_start":3516,"node":78,"role":"declaration","source":0,"src_end":2078,"src_start":1778},{"artifact":1,"gen_end":4543,"gen_start":3835,"node":79,"role":"declaration","source":0,"src_end":2305,"src_start":2080},{"artifact":1,"gen_end":4993,"gen_start":4543,"node":80,"role":"declaration","source":0,"src_end":2682,"src_start":2307},{"artifact":1,"gen_end":5428,"gen_start":4993,"node":81,"role":"declaration","source":0,"src_end":3041,"src_start":2684},{"artifact":1,"gen_end":5934,"gen_start":5428,"node":82,"role":"declaration","source":0,"src_end":3345,"src_start":3043},{"artifact":1,"gen_end":6370,"gen_start":5934,"node":83,"role":"declaration","source":0,"src_end":3765,"src_start":3347},{"artifact":1,"gen_end":6770,"gen_start":6370,"node":84,"role":"declaration","source":0,"src_end":4281,"src_start":3767},{"artifact":1,"gen_end":7167,"gen_start":6770,"node":85,"role":"declaration","source":0,"src_end":4695,"src_start":4283},{"artifact":1,"gen_end":27214,"gen_start":7167,"node":86,"role":"declaration","source":0,"src_end":5734,"src_start":4697},{"artifact":1,"gen_end":27484,"gen_start":27214,"node":87,"role":"declaration","source":0,"src_end":5833,"src_start":5736},{"artifact":1,"gen_end":27833,"gen_start":27484,"node":88,"role":"declaration","source":0,"src_end":5968,"src_start":5835},{"artifact":1,"gen_end":28122,"gen_start":27833,"node":89,"role":"declaration","source":0,"src_end":6190,"src_start":5970},{"artifact":1,"gen_end":28806,"gen_start":28122,"node":90,"role":"declaration","source":0,"src_end":6389,"src_start":6192},{"artifact":1,"gen_end":29234,"gen_start":28806,"node":91,"role":"declaration","source":0,"src_end":6731,"src_start":6391},{"artifact":1,"gen_end":45911,"gen_start":29234,"node":92,"role":"declaration","source":0,"src_end":7608,"src_start":6733},{"artifact":1,"gen_end":46717,"gen_start":45911,"node":93,"role":"declaration","source":0,"src_end":8192,"src_start":7610},{"artifact":1,"gen_end":47505,"gen_start":46717,"node":94,"role":"declaration","source":0,"src_end":8767,"src_start":8194},{"artifact":1,"gen_end":48358,"gen_start":47505,"node":95,"role":"declaration","source":0,"src_end":9391,"src_start":8769},{"artifact":1,"gen_end":48897,"gen_start":48358,"node":96,"role":"declaration","source":0,"src_end":9707,"src_start":9393},{"artifact":1,"gen_end":49414,"gen_start":48897,"node":97,"role":"declaration","source":0,"src_end":9979,"src_start":9709},{"artifact":1,"gen_end":50201,"gen_start":49414,"node":98,"role":"declaration","source":0,"src_end":10553,"src_start":9981},{"artifact":1,"gen_end":50721,"gen_start":50201,"node":99,"role":"declaration","source":0,"src_end":10828,"src_start":10555},{"artifact":1,"gen_end":51247,"gen_start":50721,"node":100,"role":"declaration","source":0,"src_end":11117,"src_start":10830},{"artifact":1,"gen_end":52060,"gen_start":51247,"node":101,"role":"declaration","source":0,"src_end":11892,"src_start":11119},{"artifact":1,"gen_end":52262,"gen_start":52060,"node":102,"role":"declaration","source":0,"src_end":12020,"src_start":11894},{"artifact":1,"gen_end":53085,"gen_start":52262,"node":103,"role":"declaration","source":0,"src_end":12754,"src_start":12022},{"artifact":1,"gen_end":53450,"gen_start":53085,"node":104,"role":"declaration","source":0,"src_end":13058,"src_start":12756},{"artifact":1,"gen_end":53835,"gen_start":53450,"node":105,"role":"declaration","source":0,"src_end":13405,"src_start":13060},{"artifact":1,"gen_end":54301,"gen_start":53835,"node":106,"role":"declaration","source":0,"src_end":13816,"src_start":13407},{"artifact":1,"gen_end":54722,"gen_start":54301,"node":107,"role":"declaration","source":0,"src_end":14166,"src_start":13818},{"artifact":1,"gen_end":55103,"gen_start":54722,"node":108,"role":"declaration","source":0,"src_end":14502,"src_start":14168},{"artifact":1,"gen_end":55482,"gen_start":55103,"node":109,"role":"declaration","source":0,"src_end":14836,"src_start":14504},{"artifact":1,"gen_end":55686,"gen_start":55482,"node":110,"role":"declaration","source":0,"src_end":14966,"src_start":14838},{"artifact":1,"gen_end":56103,"gen_start":55686,"node":111,"role":"declaration","source":0,"src_end":15380,"src_start":14968},{"artifact":1,"gen_end":56312,"gen_start":56103,"node":112,"role":"declaration","source":0,"src_end":15545,"src_start":15382},{"artifact":1,"gen_end":56549,"gen_start":56312,"node":113,"role":"declaration","source":0,"src_end":15745,"src_start":15547},{"artifact":1,"gen_end":56887,"gen_start":56549,"node":114,"role":"declaration","source":0,"src_end":16068,"src_start":15747},{"artifact":1,"gen_end":57132,"gen_start":56887,"node":115,"role":"declaration","source":0,"src_end":16294,"src_start":16070},{"artifact":1,"gen_end":57358,"gen_start":57132,"node":116,"role":"declaration","source":0,"src_end":16477,"src_start":16296},{"artifact":1,"gen_end":57661,"gen_start":57358,"node":117,"role":"declaration","source":0,"src_end":16751,"src_start":16479},{"artifact":1,"gen_end":57861,"gen_start":57661,"node":118,"role":"declaration","source":0,"src_end":16877,"src_start":16753},{"artifact":1,"gen_end":58158,"gen_start":57861,"node":119,"role":"declaration","source":0,"src_end":17143,"src_start":16879},{"artifact":1,"gen_end":58398,"gen_start":58158,"node":120,"role":"declaration","source":0,"src_end":17346,"src_start":17145},{"artifact":1,"gen_end":58642,"gen_start":58398,"node":121,"role":"declaration","source":0,"src_end":17553,"src_start":17348},{"artifact":1,"gen_end":59987,"gen_start":58642,"node":122,"role":"declaration","source":0,"src_end":18780,"src_start":17555},{"artifact":1,"gen_end":61329,"gen_start":59987,"node":123,"role":"declaration","source":0,"src_end":20003,"src_start":18782},{"artifact":1,"gen_end":62672,"gen_start":61329,"node":124,"role":"declaration","source":0,"src_end":21228,"src_start":20005},{"artifact":1,"gen_end":63908,"gen_start":62672,"node":125,"role":"declaration","source":0,"src_end":22400,"src_start":21230},{"artifact":1,"gen_end":65141,"gen_start":63908,"node":126,"role":"declaration","source":0,"src_end":23568,"src_start":22402},{"artifact":1,"gen_end":66494,"gen_start":65141,"node":127,"role":"declaration","source":0,"src_end":24802,"src_start":23570},{"artifact":1,"gen_end":67043,"gen_start":66494,"node":128,"role":"declaration","source":0,"src_end":25281,"src_start":24804},{"artifact":1,"gen_end":67533,"gen_start":67043,"node":129,"role":"declaration","source":0,"src_end":25701,"src_start":25283},{"artifact":1,"gen_end":68034,"gen_start":67533,"node":130,"role":"declaration","source":0,"src_end":26131,"src_start":25703},{"artifact":1,"gen_end":68582,"gen_start":68034,"node":131,"role":"declaration","source":0,"src_end":26691,"src_start":26133},{"artifact":1,"gen_end":69146,"gen_start":68582,"node":132,"role":"declaration","source":0,"src_end":27266,"src_start":26693},{"artifact":1,"gen_end":69715,"gen_start":69146,"node":133,"role":"declaration","source":0,"src_end":27837,"src_start":27268},{"artifact":1,"gen_end":70287,"gen_start":69715,"node":134,"role":"declaration","source":0,"src_end":28410,"src_start":27839},{"artifact":1,"gen_end":70873,"gen_start":70287,"node":135,"role":"declaration","source":0,"src_end":28997,"src_start":28412},{"artifact":1,"gen_end":71403,"gen_start":70873,"node":136,"role":"declaration","source":0,"src_end":29505,"src_start":28999},{"artifact":1,"gen_end":71950,"gen_start":71403,"node":137,"role":"declaration","source":0,"src_end":30029,"src_start":29507},{"artifact":1,"gen_end":71965,"gen_start":71950,"node":69,"role":"declaration","source":0,"src_end":30065,"src_start":0}],"module":"Main","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"},{"id":40,"kind":"semantic-declaration"},{"id":41,"kind":"semantic-declaration"},{"id":42,"kind":"semantic-declaration"},{"id":43,"kind":"semantic-declaration"},{"id":44,"kind":"semantic-declaration"},{"id":45,"kind":"semantic-declaration"},{"id":46,"kind":"semantic-declaration"},{"id":47,"kind":"semantic-declaration"},{"id":48,"kind":"semantic-declaration"},{"id":49,"kind":"semantic-declaration"},{"id":50,"kind":"semantic-declaration"},{"id":51,"kind":"semantic-declaration"},{"id":52,"kind":"semantic-declaration"},{"id":53,"kind":"semantic-declaration"},{"id":54,"kind":"semantic-declaration"},{"id":55,"kind":"semantic-declaration"},{"id":56,"kind":"semantic-declaration"},{"id":57,"kind":"semantic-declaration"},{"id":58,"kind":"semantic-declaration"},{"id":59,"kind":"semantic-declaration"},{"id":60,"kind":"semantic-declaration"},{"id":61,"kind":"semantic-declaration"},{"id":62,"kind":"semantic-declaration"},{"id":63,"kind":"semantic-declaration"},{"id":64,"kind":"semantic-declaration"},{"id":65,"kind":"semantic-declaration"},{"id":66,"kind":"semantic-declaration"},{"id":67,"kind":"semantic-declaration"},{"id":68,"kind":"semantic-declaration"},{"id":69,"kind":"semantic-latex-module"},{"id":70,"kind":"semantic-declaration"},{"id":71,"kind":"semantic-declaration"},{"id":72,"kind":"semantic-declaration"},{"id":73,"kind":"semantic-declaration"},{"id":74,"kind":"semantic-declaration"},{"id":75,"kind":"semantic-declaration"},{"id":76,"kind":"semantic-declaration"},{"id":77,"kind":"semantic-declaration"},{"id":78,"kind":"semantic-declaration"},{"id":79,"kind":"semantic-declaration"},{"id":80,"kind":"semantic-declaration"},{"id":81,"kind":"semantic-declaration"},{"id":82,"kind":"semantic-declaration"},{"id":83,"kind":"semantic-declaration"},{"id":84,"kind":"semantic-declaration"},{"id":85,"kind":"semantic-declaration"},{"id":86,"kind":"semantic-declaration"},{"id":87,"kind":"semantic-declaration"},{"id":88,"kind":"semantic-declaration"},{"id":89,"kind":"semantic-declaration"},{"id":90,"kind":"semantic-declaration"},{"id":91,"kind":"semantic-declaration"},{"id":92,"kind":"semantic-declaration"},{"id":93,"kind":"semantic-declaration"},{"id":94,"kind":"semantic-declaration"},{"id":95,"kind":"semantic-declaration"},{"id":96,"kind":"semantic-declaration"},{"id":97,"kind":"semantic-declaration"},{"id":98,"kind":"semantic-declaration"},{"id":99,"kind":"semantic-declaration"},{"id":100,"kind":"semantic-declaration"},{"id":101,"kind":"semantic-declaration"},{"id":102,"kind":"semantic-declaration"},{"id":103,"kind":"semantic-declaration"},{"id":104,"kind":"semantic-declaration"},{"id":105,"kind":"semantic-declaration"},{"id":106,"kind":"semantic-declaration"},{"id":107,"kind":"semantic-declaration"},{"id":108,"kind":"semantic-declaration"},{"id":109,"kind":"semantic-declaration"},{"id":110,"kind":"semantic-declaration"},{"id":111,"kind":"semantic-declaration"},{"id":112,"kind":"semantic-declaration"},{"id":113,"kind":"semantic-declaration"},{"id":114,"kind":"semantic-declaration"},{"id":115,"kind":"semantic-declaration"},{"id":116,"kind":"semantic-declaration"},{"id":117,"kind":"semantic-declaration"},{"id":118,"kind":"semantic-declaration"},{"id":119,"kind":"semantic-declaration"},{"id":120,"kind":"semantic-declaration"},{"id":121,"kind":"semantic-declaration"},{"id":122,"kind":"semantic-declaration"},{"id":123,"kind":"semantic-declaration"},{"id":124,"kind":"semantic-declaration"},{"id":125,"kind":"semantic-declaration"},{"id":126,"kind":"semantic-declaration"},{"id":127,"kind":"semantic-declaration"},{"id":128,"kind":"semantic-declaration"},{"id":129,"kind":"semantic-declaration"},{"id":130,"kind":"semantic-declaration"},{"id":131,"kind":"semantic-declaration"},{"id":132,"kind":"semantic-declaration"},{"id":133,"kind":"semantic-declaration"},{"id":134,"kind":"semantic-declaration"},{"id":135,"kind":"semantic-declaration"},{"id":136,"kind":"semantic-declaration"},{"id":137,"kind":"semantic-declaration"}],"semantic_id":"02b315b69b8881ec6f91f78f9b12c6085dc76fa6c7bf1cc658029f081e286c53","source_id":"0057130a9fc0f7ed88a4394b9d3931f003d7ecce5f56d65b920bb48c69bdfc7e","sources":[{"id":0,"kind":"file","path":"src/Main.lex.tex","sha256":"1c528893e116cb6b0cf1f39acb17a02c4e3e5302c5c8e2c802bb3cff19582468"}],"spec":"lexlean/source-map/1"} diff --git a/examples/reasoning/expected/build/maps/Reasoning/Planner.map.json b/examples/reasoning/expected/build/maps/Reasoning/Planner.map.json index 3809c18ca..16971cf8f 100644 --- a/examples/reasoning/expected/build/maps/Reasoning/Planner.map.json +++ b/examples/reasoning/expected/build/maps/Reasoning/Planner.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/Reasoning/Planner.lean"},{"id":1,"kind":"tex","path":"modules/Reasoning/Planner.tex"}],"mappings":[{"artifact":0,"gen_end":352,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":8705,"src_start":0},{"artifact":0,"gen_end":483,"gen_start":352,"node":1,"role":"declaration","source":0,"src_end":284,"src_start":142},{"artifact":0,"gen_end":587,"gen_start":483,"node":2,"role":"declaration","source":0,"src_end":410,"src_start":286},{"artifact":0,"gen_end":3654,"gen_start":587,"node":3,"role":"declaration","source":0,"src_end":600,"src_start":412},{"artifact":0,"gen_end":3807,"gen_start":3654,"node":4,"role":"declaration","source":0,"src_end":747,"src_start":602},{"artifact":0,"gen_end":6889,"gen_start":3807,"node":5,"role":"declaration","source":0,"src_end":1008,"src_start":749},{"artifact":0,"gen_end":7675,"gen_start":6889,"node":6,"role":"declaration","source":0,"src_end":1248,"src_start":1010},{"artifact":0,"gen_end":10758,"gen_start":7675,"node":7,"role":"declaration","source":0,"src_end":1509,"src_start":1250},{"artifact":0,"gen_end":11554,"gen_start":10758,"node":8,"role":"declaration","source":0,"src_end":1750,"src_start":1511},{"artifact":0,"gen_end":14726,"gen_start":11554,"node":9,"role":"declaration","source":0,"src_end":2087,"src_start":1752},{"artifact":0,"gen_end":15765,"gen_start":14726,"node":10,"role":"declaration","source":0,"src_end":2476,"src_start":2089},{"artifact":0,"gen_end":15892,"gen_start":15765,"node":11,"role":"declaration","source":0,"src_end":2624,"src_start":2478},{"artifact":0,"gen_end":16032,"gen_start":15892,"node":12,"role":"declaration","source":0,"src_end":2799,"src_start":2626},{"artifact":0,"gen_end":19127,"gen_start":16032,"node":13,"role":"declaration","source":0,"src_end":3043,"src_start":2801},{"artifact":0,"gen_end":19290,"gen_start":19127,"node":14,"role":"declaration","source":0,"src_end":3251,"src_start":3045},{"artifact":0,"gen_end":22293,"gen_start":19290,"node":15,"role":"declaration","source":0,"src_end":3444,"src_start":3253},{"artifact":0,"gen_end":49981,"gen_start":22293,"node":16,"role":"declaration","source":0,"src_end":4017,"src_start":3446},{"artifact":0,"gen_end":50066,"gen_start":49981,"node":17,"role":"declaration","source":0,"src_end":4110,"src_start":4019},{"artifact":0,"gen_end":50154,"gen_start":50066,"node":18,"role":"declaration","source":0,"src_end":4239,"src_start":4112},{"artifact":0,"gen_end":53224,"gen_start":50154,"node":19,"role":"declaration","source":0,"src_end":4465,"src_start":4241},{"artifact":0,"gen_end":53379,"gen_start":53224,"node":20,"role":"declaration","source":0,"src_end":4657,"src_start":4467},{"artifact":0,"gen_end":53463,"gen_start":53379,"node":21,"role":"declaration","source":0,"src_end":4749,"src_start":4659},{"artifact":0,"gen_end":53550,"gen_start":53463,"node":22,"role":"declaration","source":0,"src_end":4877,"src_start":4751},{"artifact":0,"gen_end":56615,"gen_start":53550,"node":23,"role":"declaration","source":0,"src_end":5098,"src_start":4879},{"artifact":0,"gen_end":56769,"gen_start":56615,"node":24,"role":"declaration","source":0,"src_end":5289,"src_start":5100},{"artifact":0,"gen_end":59881,"gen_start":56769,"node":25,"role":"declaration","source":0,"src_end":5589,"src_start":5291},{"artifact":0,"gen_end":60019,"gen_start":59881,"node":26,"role":"declaration","source":0,"src_end":5743,"src_start":5591},{"artifact":0,"gen_end":63034,"gen_start":60019,"node":27,"role":"declaration","source":0,"src_end":5947,"src_start":5745},{"artifact":0,"gen_end":66145,"gen_start":63034,"node":28,"role":"declaration","source":0,"src_end":6227,"src_start":5949},{"artifact":0,"gen_end":69273,"gen_start":66145,"node":29,"role":"declaration","source":0,"src_end":6541,"src_start":6229},{"artifact":0,"gen_end":72365,"gen_start":69273,"node":30,"role":"declaration","source":0,"src_end":6821,"src_start":6543},{"artifact":0,"gen_end":100730,"gen_start":72365,"node":31,"role":"declaration","source":0,"src_end":7430,"src_start":6823},{"artifact":0,"gen_end":130090,"gen_start":100730,"node":32,"role":"declaration","source":0,"src_end":8099,"src_start":7432},{"artifact":0,"gen_end":158714,"gen_start":130090,"node":33,"role":"declaration","source":0,"src_end":8669,"src_start":8101},{"artifact":0,"gen_end":158737,"gen_start":158714,"node":0,"role":"declaration","source":0,"src_end":8705,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":34,"role":"declaration","source":0,"src_end":8705,"src_start":0},{"artifact":1,"gen_end":450,"gen_start":134,"node":35,"role":"declaration","source":0,"src_end":284,"src_start":142},{"artifact":1,"gen_end":740,"gen_start":450,"node":36,"role":"declaration","source":0,"src_end":410,"src_start":286},{"artifact":1,"gen_end":1018,"gen_start":740,"node":37,"role":"declaration","source":0,"src_end":600,"src_start":412},{"artifact":1,"gen_end":1647,"gen_start":1018,"node":38,"role":"declaration","source":0,"src_end":747,"src_start":602},{"artifact":1,"gen_end":1989,"gen_start":1647,"node":39,"role":"declaration","source":0,"src_end":1008,"src_start":749},{"artifact":1,"gen_end":3308,"gen_start":1989,"node":40,"role":"declaration","source":0,"src_end":1248,"src_start":1010},{"artifact":1,"gen_end":3651,"gen_start":3308,"node":41,"role":"declaration","source":0,"src_end":1509,"src_start":1250},{"artifact":1,"gen_end":4981,"gen_start":3651,"node":42,"role":"declaration","source":0,"src_end":1750,"src_start":1511},{"artifact":1,"gen_end":5415,"gen_start":4981,"node":43,"role":"declaration","source":0,"src_end":2087,"src_start":1752},{"artifact":1,"gen_end":7272,"gen_start":5415,"node":44,"role":"declaration","source":0,"src_end":2476,"src_start":2089},{"artifact":1,"gen_end":7585,"gen_start":7272,"node":45,"role":"declaration","source":0,"src_end":2624,"src_start":2478},{"artifact":1,"gen_end":7974,"gen_start":7585,"node":46,"role":"declaration","source":0,"src_end":2799,"src_start":2626},{"artifact":1,"gen_end":8279,"gen_start":7974,"node":47,"role":"declaration","source":0,"src_end":3043,"src_start":2801},{"artifact":1,"gen_end":8992,"gen_start":8279,"node":48,"role":"declaration","source":0,"src_end":3251,"src_start":3045},{"artifact":1,"gen_end":9254,"gen_start":8992,"node":49,"role":"declaration","source":0,"src_end":3444,"src_start":3253},{"artifact":1,"gen_end":27419,"gen_start":9254,"node":50,"role":"declaration","source":0,"src_end":4017,"src_start":3446},{"artifact":1,"gen_end":27674,"gen_start":27419,"node":51,"role":"declaration","source":0,"src_end":4110,"src_start":4019},{"artifact":1,"gen_end":28008,"gen_start":27674,"node":52,"role":"declaration","source":0,"src_end":4239,"src_start":4112},{"artifact":1,"gen_end":28292,"gen_start":28008,"node":53,"role":"declaration","source":0,"src_end":4465,"src_start":4241},{"artifact":1,"gen_end":28953,"gen_start":28292,"node":54,"role":"declaration","source":0,"src_end":4657,"src_start":4467},{"artifact":1,"gen_end":29207,"gen_start":28953,"node":55,"role":"declaration","source":0,"src_end":4749,"src_start":4659},{"artifact":1,"gen_end":29540,"gen_start":29207,"node":56,"role":"declaration","source":0,"src_end":4877,"src_start":4751},{"artifact":1,"gen_end":29821,"gen_start":29540,"node":57,"role":"declaration","source":0,"src_end":5098,"src_start":4879},{"artifact":1,"gen_end":30480,"gen_start":29821,"node":58,"role":"declaration","source":0,"src_end":5289,"src_start":5100},{"artifact":1,"gen_end":30826,"gen_start":30480,"node":59,"role":"declaration","source":0,"src_end":5589,"src_start":5291},{"artifact":1,"gen_end":31150,"gen_start":30826,"node":60,"role":"declaration","source":0,"src_end":5743,"src_start":5591},{"artifact":1,"gen_end":31418,"gen_start":31150,"node":61,"role":"declaration","source":0,"src_end":5947,"src_start":5745},{"artifact":1,"gen_end":31775,"gen_start":31418,"node":62,"role":"declaration","source":0,"src_end":6227,"src_start":5949},{"artifact":1,"gen_end":32131,"gen_start":31775,"node":63,"role":"declaration","source":0,"src_end":6541,"src_start":6229},{"artifact":1,"gen_end":32464,"gen_start":32131,"node":64,"role":"declaration","source":0,"src_end":6821,"src_start":6543},{"artifact":1,"gen_end":51452,"gen_start":32464,"node":65,"role":"declaration","source":0,"src_end":7430,"src_start":6823},{"artifact":1,"gen_end":71336,"gen_start":51452,"node":66,"role":"declaration","source":0,"src_end":8099,"src_start":7432},{"artifact":1,"gen_end":90352,"gen_start":71336,"node":67,"role":"declaration","source":0,"src_end":8669,"src_start":8101},{"artifact":1,"gen_end":90367,"gen_start":90352,"node":34,"role":"declaration","source":0,"src_end":8705,"src_start":0}],"module":"Planner","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-latex-module"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"},{"id":40,"kind":"semantic-declaration"},{"id":41,"kind":"semantic-declaration"},{"id":42,"kind":"semantic-declaration"},{"id":43,"kind":"semantic-declaration"},{"id":44,"kind":"semantic-declaration"},{"id":45,"kind":"semantic-declaration"},{"id":46,"kind":"semantic-declaration"},{"id":47,"kind":"semantic-declaration"},{"id":48,"kind":"semantic-declaration"},{"id":49,"kind":"semantic-declaration"},{"id":50,"kind":"semantic-declaration"},{"id":51,"kind":"semantic-declaration"},{"id":52,"kind":"semantic-declaration"},{"id":53,"kind":"semantic-declaration"},{"id":54,"kind":"semantic-declaration"},{"id":55,"kind":"semantic-declaration"},{"id":56,"kind":"semantic-declaration"},{"id":57,"kind":"semantic-declaration"},{"id":58,"kind":"semantic-declaration"},{"id":59,"kind":"semantic-declaration"},{"id":60,"kind":"semantic-declaration"},{"id":61,"kind":"semantic-declaration"},{"id":62,"kind":"semantic-declaration"},{"id":63,"kind":"semantic-declaration"},{"id":64,"kind":"semantic-declaration"},{"id":65,"kind":"semantic-declaration"},{"id":66,"kind":"semantic-declaration"},{"id":67,"kind":"semantic-declaration"}],"semantic_id":"7b45b58d681c076cfd69727310b65f3fa63b0a50619281de2bf41504227f308d","source_id":"2d4bae2a2e1a68f05b8703a9e5c6ab1dc1a1bfbfe4e3d9885a7e842bcc0fad92","sources":[{"id":0,"kind":"file","path":"src/Planner.lex.tex","sha256":"8ebdbb36e0f5607e8ca0cdac698535bdd0fc793f9173ecc275817b706ec68f16"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/Reasoning/Planner.lean"},{"id":1,"kind":"tex","path":"modules/Reasoning/Planner.tex"}],"mappings":[{"artifact":0,"gen_end":352,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":8705,"src_start":0},{"artifact":0,"gen_end":483,"gen_start":352,"node":1,"role":"declaration","source":0,"src_end":284,"src_start":142},{"artifact":0,"gen_end":587,"gen_start":483,"node":2,"role":"declaration","source":0,"src_end":410,"src_start":286},{"artifact":0,"gen_end":3654,"gen_start":587,"node":3,"role":"declaration","source":0,"src_end":600,"src_start":412},{"artifact":0,"gen_end":3807,"gen_start":3654,"node":4,"role":"declaration","source":0,"src_end":747,"src_start":602},{"artifact":0,"gen_end":6889,"gen_start":3807,"node":5,"role":"declaration","source":0,"src_end":1008,"src_start":749},{"artifact":0,"gen_end":7675,"gen_start":6889,"node":6,"role":"declaration","source":0,"src_end":1248,"src_start":1010},{"artifact":0,"gen_end":10758,"gen_start":7675,"node":7,"role":"declaration","source":0,"src_end":1509,"src_start":1250},{"artifact":0,"gen_end":11554,"gen_start":10758,"node":8,"role":"declaration","source":0,"src_end":1750,"src_start":1511},{"artifact":0,"gen_end":14726,"gen_start":11554,"node":9,"role":"declaration","source":0,"src_end":2087,"src_start":1752},{"artifact":0,"gen_end":15765,"gen_start":14726,"node":10,"role":"declaration","source":0,"src_end":2476,"src_start":2089},{"artifact":0,"gen_end":15892,"gen_start":15765,"node":11,"role":"declaration","source":0,"src_end":2624,"src_start":2478},{"artifact":0,"gen_end":16032,"gen_start":15892,"node":12,"role":"declaration","source":0,"src_end":2799,"src_start":2626},{"artifact":0,"gen_end":19127,"gen_start":16032,"node":13,"role":"declaration","source":0,"src_end":3043,"src_start":2801},{"artifact":0,"gen_end":19290,"gen_start":19127,"node":14,"role":"declaration","source":0,"src_end":3251,"src_start":3045},{"artifact":0,"gen_end":22293,"gen_start":19290,"node":15,"role":"declaration","source":0,"src_end":3444,"src_start":3253},{"artifact":0,"gen_end":49981,"gen_start":22293,"node":16,"role":"declaration","source":0,"src_end":4017,"src_start":3446},{"artifact":0,"gen_end":50066,"gen_start":49981,"node":17,"role":"declaration","source":0,"src_end":4110,"src_start":4019},{"artifact":0,"gen_end":50154,"gen_start":50066,"node":18,"role":"declaration","source":0,"src_end":4239,"src_start":4112},{"artifact":0,"gen_end":53224,"gen_start":50154,"node":19,"role":"declaration","source":0,"src_end":4465,"src_start":4241},{"artifact":0,"gen_end":53379,"gen_start":53224,"node":20,"role":"declaration","source":0,"src_end":4657,"src_start":4467},{"artifact":0,"gen_end":53463,"gen_start":53379,"node":21,"role":"declaration","source":0,"src_end":4749,"src_start":4659},{"artifact":0,"gen_end":53550,"gen_start":53463,"node":22,"role":"declaration","source":0,"src_end":4877,"src_start":4751},{"artifact":0,"gen_end":56615,"gen_start":53550,"node":23,"role":"declaration","source":0,"src_end":5098,"src_start":4879},{"artifact":0,"gen_end":56769,"gen_start":56615,"node":24,"role":"declaration","source":0,"src_end":5289,"src_start":5100},{"artifact":0,"gen_end":59881,"gen_start":56769,"node":25,"role":"declaration","source":0,"src_end":5589,"src_start":5291},{"artifact":0,"gen_end":60019,"gen_start":59881,"node":26,"role":"declaration","source":0,"src_end":5743,"src_start":5591},{"artifact":0,"gen_end":63034,"gen_start":60019,"node":27,"role":"declaration","source":0,"src_end":5947,"src_start":5745},{"artifact":0,"gen_end":66145,"gen_start":63034,"node":28,"role":"declaration","source":0,"src_end":6227,"src_start":5949},{"artifact":0,"gen_end":69273,"gen_start":66145,"node":29,"role":"declaration","source":0,"src_end":6541,"src_start":6229},{"artifact":0,"gen_end":72365,"gen_start":69273,"node":30,"role":"declaration","source":0,"src_end":6821,"src_start":6543},{"artifact":0,"gen_end":100730,"gen_start":72365,"node":31,"role":"declaration","source":0,"src_end":7430,"src_start":6823},{"artifact":0,"gen_end":130090,"gen_start":100730,"node":32,"role":"declaration","source":0,"src_end":8099,"src_start":7432},{"artifact":0,"gen_end":158714,"gen_start":130090,"node":33,"role":"declaration","source":0,"src_end":8669,"src_start":8101},{"artifact":0,"gen_end":158737,"gen_start":158714,"node":0,"role":"declaration","source":0,"src_end":8705,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":34,"role":"declaration","source":0,"src_end":8705,"src_start":0},{"artifact":1,"gen_end":450,"gen_start":134,"node":35,"role":"declaration","source":0,"src_end":284,"src_start":142},{"artifact":1,"gen_end":740,"gen_start":450,"node":36,"role":"declaration","source":0,"src_end":410,"src_start":286},{"artifact":1,"gen_end":1018,"gen_start":740,"node":37,"role":"declaration","source":0,"src_end":600,"src_start":412},{"artifact":1,"gen_end":1647,"gen_start":1018,"node":38,"role":"declaration","source":0,"src_end":747,"src_start":602},{"artifact":1,"gen_end":1989,"gen_start":1647,"node":39,"role":"declaration","source":0,"src_end":1008,"src_start":749},{"artifact":1,"gen_end":3308,"gen_start":1989,"node":40,"role":"declaration","source":0,"src_end":1248,"src_start":1010},{"artifact":1,"gen_end":3651,"gen_start":3308,"node":41,"role":"declaration","source":0,"src_end":1509,"src_start":1250},{"artifact":1,"gen_end":4981,"gen_start":3651,"node":42,"role":"declaration","source":0,"src_end":1750,"src_start":1511},{"artifact":1,"gen_end":5415,"gen_start":4981,"node":43,"role":"declaration","source":0,"src_end":2087,"src_start":1752},{"artifact":1,"gen_end":7272,"gen_start":5415,"node":44,"role":"declaration","source":0,"src_end":2476,"src_start":2089},{"artifact":1,"gen_end":7585,"gen_start":7272,"node":45,"role":"declaration","source":0,"src_end":2624,"src_start":2478},{"artifact":1,"gen_end":7974,"gen_start":7585,"node":46,"role":"declaration","source":0,"src_end":2799,"src_start":2626},{"artifact":1,"gen_end":8279,"gen_start":7974,"node":47,"role":"declaration","source":0,"src_end":3043,"src_start":2801},{"artifact":1,"gen_end":8992,"gen_start":8279,"node":48,"role":"declaration","source":0,"src_end":3251,"src_start":3045},{"artifact":1,"gen_end":9254,"gen_start":8992,"node":49,"role":"declaration","source":0,"src_end":3444,"src_start":3253},{"artifact":1,"gen_end":27419,"gen_start":9254,"node":50,"role":"declaration","source":0,"src_end":4017,"src_start":3446},{"artifact":1,"gen_end":27674,"gen_start":27419,"node":51,"role":"declaration","source":0,"src_end":4110,"src_start":4019},{"artifact":1,"gen_end":28008,"gen_start":27674,"node":52,"role":"declaration","source":0,"src_end":4239,"src_start":4112},{"artifact":1,"gen_end":28292,"gen_start":28008,"node":53,"role":"declaration","source":0,"src_end":4465,"src_start":4241},{"artifact":1,"gen_end":28953,"gen_start":28292,"node":54,"role":"declaration","source":0,"src_end":4657,"src_start":4467},{"artifact":1,"gen_end":29207,"gen_start":28953,"node":55,"role":"declaration","source":0,"src_end":4749,"src_start":4659},{"artifact":1,"gen_end":29540,"gen_start":29207,"node":56,"role":"declaration","source":0,"src_end":4877,"src_start":4751},{"artifact":1,"gen_end":29821,"gen_start":29540,"node":57,"role":"declaration","source":0,"src_end":5098,"src_start":4879},{"artifact":1,"gen_end":30480,"gen_start":29821,"node":58,"role":"declaration","source":0,"src_end":5289,"src_start":5100},{"artifact":1,"gen_end":30826,"gen_start":30480,"node":59,"role":"declaration","source":0,"src_end":5589,"src_start":5291},{"artifact":1,"gen_end":31150,"gen_start":30826,"node":60,"role":"declaration","source":0,"src_end":5743,"src_start":5591},{"artifact":1,"gen_end":31418,"gen_start":31150,"node":61,"role":"declaration","source":0,"src_end":5947,"src_start":5745},{"artifact":1,"gen_end":31775,"gen_start":31418,"node":62,"role":"declaration","source":0,"src_end":6227,"src_start":5949},{"artifact":1,"gen_end":32131,"gen_start":31775,"node":63,"role":"declaration","source":0,"src_end":6541,"src_start":6229},{"artifact":1,"gen_end":32464,"gen_start":32131,"node":64,"role":"declaration","source":0,"src_end":6821,"src_start":6543},{"artifact":1,"gen_end":51452,"gen_start":32464,"node":65,"role":"declaration","source":0,"src_end":7430,"src_start":6823},{"artifact":1,"gen_end":71336,"gen_start":51452,"node":66,"role":"declaration","source":0,"src_end":8099,"src_start":7432},{"artifact":1,"gen_end":90352,"gen_start":71336,"node":67,"role":"declaration","source":0,"src_end":8669,"src_start":8101},{"artifact":1,"gen_end":90367,"gen_start":90352,"node":34,"role":"declaration","source":0,"src_end":8705,"src_start":0}],"module":"Planner","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-latex-module"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"},{"id":40,"kind":"semantic-declaration"},{"id":41,"kind":"semantic-declaration"},{"id":42,"kind":"semantic-declaration"},{"id":43,"kind":"semantic-declaration"},{"id":44,"kind":"semantic-declaration"},{"id":45,"kind":"semantic-declaration"},{"id":46,"kind":"semantic-declaration"},{"id":47,"kind":"semantic-declaration"},{"id":48,"kind":"semantic-declaration"},{"id":49,"kind":"semantic-declaration"},{"id":50,"kind":"semantic-declaration"},{"id":51,"kind":"semantic-declaration"},{"id":52,"kind":"semantic-declaration"},{"id":53,"kind":"semantic-declaration"},{"id":54,"kind":"semantic-declaration"},{"id":55,"kind":"semantic-declaration"},{"id":56,"kind":"semantic-declaration"},{"id":57,"kind":"semantic-declaration"},{"id":58,"kind":"semantic-declaration"},{"id":59,"kind":"semantic-declaration"},{"id":60,"kind":"semantic-declaration"},{"id":61,"kind":"semantic-declaration"},{"id":62,"kind":"semantic-declaration"},{"id":63,"kind":"semantic-declaration"},{"id":64,"kind":"semantic-declaration"},{"id":65,"kind":"semantic-declaration"},{"id":66,"kind":"semantic-declaration"},{"id":67,"kind":"semantic-declaration"}],"semantic_id":"02b315b69b8881ec6f91f78f9b12c6085dc76fa6c7bf1cc658029f081e286c53","source_id":"0057130a9fc0f7ed88a4394b9d3931f003d7ecce5f56d65b920bb48c69bdfc7e","sources":[{"id":0,"kind":"file","path":"src/Planner.lex.tex","sha256":"8ebdbb36e0f5607e8ca0cdac698535bdd0fc793f9173ecc275817b706ec68f16"}],"spec":"lexlean/source-map/1"} diff --git a/examples/reasoning/expected/build/maps/Reasoning/Screening.map.json b/examples/reasoning/expected/build/maps/Reasoning/Screening.map.json index f9b1f7204..caa85ae18 100644 --- a/examples/reasoning/expected/build/maps/Reasoning/Screening.map.json +++ b/examples/reasoning/expected/build/maps/Reasoning/Screening.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/Reasoning/Screening.lean"},{"id":1,"kind":"tex","path":"modules/Reasoning/Screening.tex"}],"mappings":[{"artifact":0,"gen_end":390,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":3642,"src_start":0},{"artifact":0,"gen_end":516,"gen_start":390,"node":1,"role":"declaration","source":0,"src_end":276,"src_start":146},{"artifact":0,"gen_end":645,"gen_start":516,"node":2,"role":"declaration","source":0,"src_end":434,"src_start":278},{"artifact":0,"gen_end":3714,"gen_start":645,"node":3,"role":"declaration","source":0,"src_end":659,"src_start":436},{"artifact":0,"gen_end":3886,"gen_start":3714,"node":4,"role":"declaration","source":0,"src_end":899,"src_start":661},{"artifact":0,"gen_end":4151,"gen_start":3886,"node":5,"role":"declaration","source":0,"src_end":1201,"src_start":901},{"artifact":0,"gen_end":4260,"gen_start":4151,"node":6,"role":"declaration","source":0,"src_end":1298,"src_start":1203},{"artifact":0,"gen_end":4412,"gen_start":4260,"node":7,"role":"declaration","source":0,"src_end":1473,"src_start":1300},{"artifact":0,"gen_end":4413,"gen_start":4412,"node":8,"role":"declaration","source":0,"src_end":1565,"src_start":1475},{"artifact":0,"gen_end":7509,"gen_start":4413,"node":9,"role":"declaration","source":0,"src_end":1803,"src_start":1567},{"artifact":0,"gen_end":8854,"gen_start":7509,"node":10,"role":"declaration","source":0,"src_end":2213,"src_start":1805},{"artifact":0,"gen_end":8937,"gen_start":8854,"node":11,"role":"declaration","source":0,"src_end":2305,"src_start":2215},{"artifact":0,"gen_end":9023,"gen_start":8937,"node":12,"role":"declaration","source":0,"src_end":2433,"src_start":2307},{"artifact":0,"gen_end":12068,"gen_start":9023,"node":13,"role":"declaration","source":0,"src_end":2634,"src_start":2435},{"artifact":0,"gen_end":12225,"gen_start":12068,"node":14,"role":"declaration","source":0,"src_end":2817,"src_start":2636},{"artifact":0,"gen_end":20447,"gen_start":12225,"node":15,"role":"declaration","source":0,"src_end":3166,"src_start":2819},{"artifact":0,"gen_end":42522,"gen_start":20447,"node":16,"role":"declaration","source":0,"src_end":3606,"src_start":3168},{"artifact":0,"gen_end":42547,"gen_start":42522,"node":0,"role":"declaration","source":0,"src_end":3642,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":17,"role":"declaration","source":0,"src_end":3642,"src_start":0},{"artifact":1,"gen_end":430,"gen_start":134,"node":18,"role":"declaration","source":0,"src_end":276,"src_start":146},{"artifact":1,"gen_end":805,"gen_start":430,"node":19,"role":"declaration","source":0,"src_end":434,"src_start":278},{"artifact":1,"gen_end":1090,"gen_start":805,"node":20,"role":"declaration","source":0,"src_end":659,"src_start":436},{"artifact":1,"gen_end":1752,"gen_start":1090,"node":21,"role":"declaration","source":0,"src_end":899,"src_start":661},{"artifact":1,"gen_end":2542,"gen_start":1752,"node":22,"role":"declaration","source":0,"src_end":1201,"src_start":901},{"artifact":1,"gen_end":2959,"gen_start":2542,"node":23,"role":"declaration","source":0,"src_end":1298,"src_start":1203},{"artifact":1,"gen_end":3312,"gen_start":2959,"node":24,"role":"declaration","source":0,"src_end":1473,"src_start":1300},{"artifact":1,"gen_end":3527,"gen_start":3312,"node":25,"role":"declaration","source":0,"src_end":1565,"src_start":1475},{"artifact":1,"gen_end":3850,"gen_start":3527,"node":26,"role":"declaration","source":0,"src_end":1803,"src_start":1567},{"artifact":1,"gen_end":5867,"gen_start":3850,"node":27,"role":"declaration","source":0,"src_end":2213,"src_start":1805},{"artifact":1,"gen_end":6121,"gen_start":5867,"node":28,"role":"declaration","source":0,"src_end":2305,"src_start":2215},{"artifact":1,"gen_end":6454,"gen_start":6121,"node":29,"role":"declaration","source":0,"src_end":2433,"src_start":2307},{"artifact":1,"gen_end":6717,"gen_start":6454,"node":30,"role":"declaration","source":0,"src_end":2634,"src_start":2435},{"artifact":1,"gen_end":7348,"gen_start":6717,"node":31,"role":"declaration","source":0,"src_end":2817,"src_start":2636},{"artifact":1,"gen_end":13192,"gen_start":7348,"node":32,"role":"declaration","source":0,"src_end":3166,"src_start":2819},{"artifact":1,"gen_end":27179,"gen_start":13192,"node":33,"role":"declaration","source":0,"src_end":3606,"src_start":3168},{"artifact":1,"gen_end":27194,"gen_start":27179,"node":17,"role":"declaration","source":0,"src_end":3642,"src_start":0}],"module":"Screening","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-latex-module"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"}],"semantic_id":"7b45b58d681c076cfd69727310b65f3fa63b0a50619281de2bf41504227f308d","source_id":"2d4bae2a2e1a68f05b8703a9e5c6ab1dc1a1bfbfe4e3d9885a7e842bcc0fad92","sources":[{"id":0,"kind":"file","path":"src/Screening.lex.tex","sha256":"3dc86d2c1968e2eee6b3f55e1013f2ad4506f81a29a261e767d7dd2029b77efc"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/Reasoning/Screening.lean"},{"id":1,"kind":"tex","path":"modules/Reasoning/Screening.tex"}],"mappings":[{"artifact":0,"gen_end":390,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":3642,"src_start":0},{"artifact":0,"gen_end":516,"gen_start":390,"node":1,"role":"declaration","source":0,"src_end":276,"src_start":146},{"artifact":0,"gen_end":645,"gen_start":516,"node":2,"role":"declaration","source":0,"src_end":434,"src_start":278},{"artifact":0,"gen_end":3714,"gen_start":645,"node":3,"role":"declaration","source":0,"src_end":659,"src_start":436},{"artifact":0,"gen_end":3886,"gen_start":3714,"node":4,"role":"declaration","source":0,"src_end":899,"src_start":661},{"artifact":0,"gen_end":4151,"gen_start":3886,"node":5,"role":"declaration","source":0,"src_end":1201,"src_start":901},{"artifact":0,"gen_end":4260,"gen_start":4151,"node":6,"role":"declaration","source":0,"src_end":1298,"src_start":1203},{"artifact":0,"gen_end":4412,"gen_start":4260,"node":7,"role":"declaration","source":0,"src_end":1473,"src_start":1300},{"artifact":0,"gen_end":4413,"gen_start":4412,"node":8,"role":"declaration","source":0,"src_end":1565,"src_start":1475},{"artifact":0,"gen_end":7509,"gen_start":4413,"node":9,"role":"declaration","source":0,"src_end":1803,"src_start":1567},{"artifact":0,"gen_end":8854,"gen_start":7509,"node":10,"role":"declaration","source":0,"src_end":2213,"src_start":1805},{"artifact":0,"gen_end":8937,"gen_start":8854,"node":11,"role":"declaration","source":0,"src_end":2305,"src_start":2215},{"artifact":0,"gen_end":9023,"gen_start":8937,"node":12,"role":"declaration","source":0,"src_end":2433,"src_start":2307},{"artifact":0,"gen_end":12068,"gen_start":9023,"node":13,"role":"declaration","source":0,"src_end":2634,"src_start":2435},{"artifact":0,"gen_end":12225,"gen_start":12068,"node":14,"role":"declaration","source":0,"src_end":2817,"src_start":2636},{"artifact":0,"gen_end":20447,"gen_start":12225,"node":15,"role":"declaration","source":0,"src_end":3166,"src_start":2819},{"artifact":0,"gen_end":42522,"gen_start":20447,"node":16,"role":"declaration","source":0,"src_end":3606,"src_start":3168},{"artifact":0,"gen_end":42547,"gen_start":42522,"node":0,"role":"declaration","source":0,"src_end":3642,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":17,"role":"declaration","source":0,"src_end":3642,"src_start":0},{"artifact":1,"gen_end":430,"gen_start":134,"node":18,"role":"declaration","source":0,"src_end":276,"src_start":146},{"artifact":1,"gen_end":805,"gen_start":430,"node":19,"role":"declaration","source":0,"src_end":434,"src_start":278},{"artifact":1,"gen_end":1090,"gen_start":805,"node":20,"role":"declaration","source":0,"src_end":659,"src_start":436},{"artifact":1,"gen_end":1752,"gen_start":1090,"node":21,"role":"declaration","source":0,"src_end":899,"src_start":661},{"artifact":1,"gen_end":2542,"gen_start":1752,"node":22,"role":"declaration","source":0,"src_end":1201,"src_start":901},{"artifact":1,"gen_end":2959,"gen_start":2542,"node":23,"role":"declaration","source":0,"src_end":1298,"src_start":1203},{"artifact":1,"gen_end":3312,"gen_start":2959,"node":24,"role":"declaration","source":0,"src_end":1473,"src_start":1300},{"artifact":1,"gen_end":3527,"gen_start":3312,"node":25,"role":"declaration","source":0,"src_end":1565,"src_start":1475},{"artifact":1,"gen_end":3850,"gen_start":3527,"node":26,"role":"declaration","source":0,"src_end":1803,"src_start":1567},{"artifact":1,"gen_end":5867,"gen_start":3850,"node":27,"role":"declaration","source":0,"src_end":2213,"src_start":1805},{"artifact":1,"gen_end":6121,"gen_start":5867,"node":28,"role":"declaration","source":0,"src_end":2305,"src_start":2215},{"artifact":1,"gen_end":6454,"gen_start":6121,"node":29,"role":"declaration","source":0,"src_end":2433,"src_start":2307},{"artifact":1,"gen_end":6717,"gen_start":6454,"node":30,"role":"declaration","source":0,"src_end":2634,"src_start":2435},{"artifact":1,"gen_end":7348,"gen_start":6717,"node":31,"role":"declaration","source":0,"src_end":2817,"src_start":2636},{"artifact":1,"gen_end":13192,"gen_start":7348,"node":32,"role":"declaration","source":0,"src_end":3166,"src_start":2819},{"artifact":1,"gen_end":27179,"gen_start":13192,"node":33,"role":"declaration","source":0,"src_end":3606,"src_start":3168},{"artifact":1,"gen_end":27194,"gen_start":27179,"node":17,"role":"declaration","source":0,"src_end":3642,"src_start":0}],"module":"Screening","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-latex-module"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"}],"semantic_id":"02b315b69b8881ec6f91f78f9b12c6085dc76fa6c7bf1cc658029f081e286c53","source_id":"0057130a9fc0f7ed88a4394b9d3931f003d7ecce5f56d65b920bb48c69bdfc7e","sources":[{"id":0,"kind":"file","path":"src/Screening.lex.tex","sha256":"3dc86d2c1968e2eee6b3f55e1013f2ad4506f81a29a261e767d7dd2029b77efc"}],"spec":"lexlean/source-map/1"} diff --git a/examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.LexLeanRuntime.Collections.lean b/examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.LexLeanRuntime.Collections.lean similarity index 100% rename from examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.LexLeanRuntime.Collections.lean rename to examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.LexLeanRuntime.Collections.lean diff --git a/examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.LexLeanRuntime.Collections.process.json b/examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.LexLeanRuntime.Collections.process.json new file mode 100644 index 000000000..ea4a842f1 --- /dev/null +++ b/examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.LexLeanRuntime.Collections.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.LexLeanRuntime.Collections.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.LexLeanRuntime.Collections","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanCollections.Key' does not depend on any axioms\n'LexLeanCollections.Key.casesOn' does not depend on any axioms\n'LexLeanCollections.Key.compare' does not depend on any axioms\n'LexLeanCollections.Key.ctorIdx' does not depend on any axioms\n'LexLeanCollections.Key.mk._flat_ctor' does not depend on any axioms\n'LexLeanCollections.Key.mk.noConfusion' does not depend on any axioms\n'LexLeanCollections.Key.noConfusion' does not depend on any axioms\n'LexLeanCollections.Key.noConfusionType' does not depend on any axioms\n'LexLeanCollections.Key.recOn' does not depend on any axioms\n'LexLeanCollections.compareCodes' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._f' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._sunfold' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._unsafe_rec' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.match_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.match_4' does not depend on any axioms\n'LexLeanCollections.containsElement' does not depend on any axioms\n'LexLeanCollections.containsElement._f' does not depend on any axioms\n'LexLeanCollections.containsElement._sunfold' does not depend on any axioms\n'LexLeanCollections.containsElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.graphNodes' does not depend on any axioms\n'LexLeanCollections.graphReachable' depends on axioms: [propext]\n'LexLeanCollections.graphSuccessors' does not depend on any axioms\n'LexLeanCollections.graphTopological' does not depend on any axioms\n'LexLeanCollections.insertElement' does not depend on any axioms\n'LexLeanCollections.insertElement._f' does not depend on any axioms\n'LexLeanCollections.insertElement._sunfold' does not depend on any axioms\n'LexLeanCollections.insertElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.insertElement.match_1' does not depend on any axioms\n'LexLeanCollections.insertEntry' does not depend on any axioms\n'LexLeanCollections.insertEntry._f' does not depend on any axioms\n'LexLeanCollections.insertEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.insertEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.insertEntry.match_1' does not depend on any axioms\n'LexLeanCollections.insertEntry.match_3' does not depend on any axioms\n'LexLeanCollections.instKeyBool' depends on axioms: [propext]\n'LexLeanCollections.instKeyInt' does not depend on any axioms\n'LexLeanCollections.instKeyInt16' does not depend on any axioms\n'LexLeanCollections.instKeyInt32' does not depend on any axioms\n'LexLeanCollections.instKeyInt64' does not depend on any axioms\n'LexLeanCollections.instKeyInt8' does not depend on any axioms\n'LexLeanCollections.instKeyNat' does not depend on any axioms\n'LexLeanCollections.instKeyProd' depends on axioms: [propext]\n'LexLeanCollections.instKeyString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanCollections.instKeyUInt16' does not depend on any axioms\n'LexLeanCollections.instKeyUInt32' does not depend on any axioms\n'LexLeanCollections.instKeyUInt64' does not depend on any axioms\n'LexLeanCollections.instKeyUInt8' does not depend on any axioms\n'LexLeanCollections.iterate' does not depend on any axioms\n'LexLeanCollections.iterate._f' does not depend on any axioms\n'LexLeanCollections.iterate._sunfold' does not depend on any axioms\n'LexLeanCollections.iterate._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.iterate.match_1' does not depend on any axioms\n'LexLeanCollections.iterateUntil' does not depend on any axioms\n'LexLeanCollections.iterateUntil._f' does not depend on any axioms\n'LexLeanCollections.iterateUntil._sunfold' does not depend on any axioms\n'LexLeanCollections.iterateUntil._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.iterateUntil.match_1' does not depend on any axioms\n'LexLeanCollections.lessThan' depends on axioms: [propext]\n'LexLeanCollections.lessThan._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.lessThan.match_1' depends on axioms: [propext]\n'LexLeanCollections.listFold' does not depend on any axioms\n'LexLeanCollections.lookupEntry' does not depend on any axioms\n'LexLeanCollections.lookupEntry._f' does not depend on any axioms\n'LexLeanCollections.lookupEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.lookupEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.mapContains' does not depend on any axioms\n'LexLeanCollections.mapEntries' does not depend on any axioms\n'LexLeanCollections.mapFold' does not depend on any axioms\n'LexLeanCollections.mapInsert' does not depend on any axioms\n'LexLeanCollections.mapKeys' does not depend on any axioms\n'LexLeanCollections.mapLookup' does not depend on any axioms\n'LexLeanCollections.mapRemove' does not depend on any axioms\n'LexLeanCollections.mapSize' does not depend on any axioms\n'LexLeanCollections.mapValues' does not depend on any axioms\n'LexLeanCollections.reachableFrom' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._f' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._sunfold' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._unsafe_rec' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom.match_1' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom.match_4' does not depend on any axioms\n'LexLeanCollections.removeElement' does not depend on any axioms\n'LexLeanCollections.removeElement._f' does not depend on any axioms\n'LexLeanCollections.removeElement._sunfold' does not depend on any axioms\n'LexLeanCollections.removeElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.removeEntry' does not depend on any axioms\n'LexLeanCollections.removeEntry._f' does not depend on any axioms\n'LexLeanCollections.removeEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.removeEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.setContains' does not depend on any axioms\n'LexLeanCollections.setDifference' does not depend on any axioms\n'LexLeanCollections.setElements' does not depend on any axioms\n'LexLeanCollections.setFold' does not depend on any axioms\n'LexLeanCollections.setInsert' does not depend on any axioms\n'LexLeanCollections.setIntersection' does not depend on any axioms\n'LexLeanCollections.setRemove' does not depend on any axioms\n'LexLeanCollections.setSize' does not depend on any axioms\n'LexLeanCollections.setUnion' does not depend on any axioms\n'LexLeanCollections.topological' does not depend on any axioms\n'LexLeanCollections.topological._f' does not depend on any axioms\n'LexLeanCollections.topological._sunfold' does not depend on any axioms\n'LexLeanCollections.topological._unsafe_rec' does not depend on any axioms\n","stdout_sha256":"b75acc0e99e23684c3cc876eacbfc93f47161cfee8a7440df17fa45f321c8c6a","tool":"lean"} diff --git a/examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.LexLeanRuntime.Laws.lean b/examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.LexLeanRuntime.Laws.lean similarity index 100% rename from examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.LexLeanRuntime.Laws.lean rename to examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.LexLeanRuntime.Laws.lean diff --git a/examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.LexLeanRuntime.Laws.process.json b/examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.LexLeanRuntime.Laws.process.json new file mode 100644 index 000000000..a411745f8 --- /dev/null +++ b/examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.LexLeanRuntime.Laws.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.LexLeanRuntime.Laws.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.LexLeanRuntime.Laws","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanCollections.lessThan._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanCollections.lessThan.eq_1' depends on axioms: [propext]\n'LexLeanCollections.listFold.eq_1' does not depend on any axioms\n'LexLeanLaws.append_list' does not depend on any axioms\n'LexLeanLaws.length_list' does not depend on any axioms\n'LexLeanLaws.lessThan_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int16' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int32' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int64' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int8' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_nat' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint16' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint32' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint64' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint8' depends on axioms: [propext]\n'LexLeanLaws.listFold_add_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_add_int_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_add_nat' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_add_nat_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_append' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_cons' does not depend on any axioms\n'LexLeanLaws.listFold_extend' depends on axioms: [propext]\n'LexLeanLaws.listFold_fusion' does not depend on any axioms\n'LexLeanLaws.listFold_nil' does not depend on any axioms\n'LexLeanLaws.listFold_pair' does not depend on any axioms\n'LexLeanLaws.listFold_prepend' depends on axioms: [propext]\n'LexLeanLaws.listFold_sub_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_sub_int_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.mapEntries_self' does not depend on any axioms\n'LexLeanLaws.mapFold_listFold' does not depend on any axioms\n'LexLeanLaws.mapSize_length' does not depend on any axioms\n'LexLeanLaws.quotient_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.quotient_nat' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.remainder_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.remainder_nat' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.setElements_self' does not depend on any axioms\n'LexLeanLaws.setFold_listFold' does not depend on any axioms\n'LexLeanLaws.setSize_length' does not depend on any axioms\n'LexLeanLaws.sumInt' does not depend on any axioms\n'LexLeanLaws.sumInt._f' does not depend on any axioms\n'LexLeanLaws.sumInt._sunfold' does not depend on any axioms\n'LexLeanLaws.sumInt._unsafe_rec' does not depend on any axioms\n'LexLeanLaws.sumInt.eq_1' does not depend on any axioms\n'LexLeanLaws.sumInt.eq_2' does not depend on any axioms\n'LexLeanLaws.sumInt.eq_def' does not depend on any axioms\n'LexLeanLaws.sumInt_add' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_append' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_cons' does not depend on any axioms\n'LexLeanLaws.sumInt_const' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_mul' depends on axioms: [propext]\n'LexLeanLaws.sumInt_mul_right' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_mul_self' depends on axioms: [propext]\n'LexLeanLaws.sumInt_neg' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_neg_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_nil' does not depend on any axioms\n'LexLeanLaws.sumInt_perm' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_reverse' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_sub' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat' does not depend on any axioms\n'LexLeanLaws.sumNat._f' does not depend on any axioms\n'LexLeanLaws.sumNat._sunfold' does not depend on any axioms\n'LexLeanLaws.sumNat._unsafe_rec' does not depend on any axioms\n'LexLeanLaws.sumNat.eq_1' does not depend on any axioms\n'LexLeanLaws.sumNat.eq_2' does not depend on any axioms\n'LexLeanLaws.sumNat.eq_def' does not depend on any axioms\n'LexLeanLaws.sumNat.match_1' does not depend on any axioms\n'LexLeanLaws.sumNat_add' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_append' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_cons' does not depend on any axioms\n'LexLeanLaws.sumNat_const' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_mul' does not depend on any axioms\n'LexLeanLaws.sumNat_mul_right' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_mul_self' does not depend on any axioms\n'LexLeanLaws.sumNat_nil' does not depend on any axioms\n'LexLeanLaws.sumNat_perm' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_reverse' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.tdiv_ediv' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.tmod_emod' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.quotient.eq_1' does not depend on any axioms\n'LexLeanRuntime.remainder.eq_1' does not depend on any axioms\n","stdout_sha256":"a4ba2d39c9cdfd5e40c41c5ccf4726d937fd192fc042b74bb56cc0651e28919e","tool":"lean"} diff --git a/examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.LexLeanRuntime.Models.lean b/examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.LexLeanRuntime.Models.lean similarity index 100% rename from examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.LexLeanRuntime.Models.lean rename to examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.LexLeanRuntime.Models.lean diff --git a/examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.LexLeanRuntime.Models.process.json b/examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.LexLeanRuntime.Models.process.json new file mode 100644 index 000000000..ec66ea488 --- /dev/null +++ b/examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.LexLeanRuntime.Models.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.LexLeanRuntime.Models.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.LexLeanRuntime.Models","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanModels.Agreement' does not depend on any axioms\n'LexLeanModels.Complete1' does not depend on any axioms\n'LexLeanModels.Complete2' does not depend on any axioms\n'LexLeanModels.Complete4' does not depend on any axioms\n'LexLeanModels.Equivalent' does not depend on any axioms\n'LexLeanModels.EquivalentStep' does not depend on any axioms\n'LexLeanModels.EquivalentStepNoInvariant' does not depend on any axioms\n'LexLeanModels.EquivalentStepNoPrecondition' does not depend on any axioms\n'LexLeanModels.EquivalentStepTotal' does not depend on any axioms\n'LexLeanModels.EquivalentTotal' does not depend on any axioms\n'LexLeanModels.Initial' does not depend on any axioms\n'LexLeanModels.Preserves' does not depend on any axioms\n'LexLeanModels.PreservesTotal' does not depend on any axioms\n'LexLeanModels.Satisfies' does not depend on any axioms\n'LexLeanModels.SatisfiesStep' does not depend on any axioms\n'LexLeanModels.SatisfiesStepNoInvariant' does not depend on any axioms\n'LexLeanModels.SatisfiesStepNoPrecondition' does not depend on any axioms\n'LexLeanModels.SatisfiesStepTotal' does not depend on any axioms\n'LexLeanModels.SatisfiesTotal' does not depend on any axioms\n'LexLeanModels.Sound1' does not depend on any axioms\n'LexLeanModels.Sound2' does not depend on any axioms\n'LexLeanModels.Sound4' does not depend on any axioms\n'LexLeanModels.encodeInt' does not depend on any axioms\n'LexLeanModels.inRange' does not depend on any axioms\n'LexLeanModels.linesMatch' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanModels.tensorMatches' does not depend on any axioms\n'LexLeanModels.utf8Char' does not depend on any axioms\n","stdout_sha256":"43ad1c715570458672aedc9abb1691012eef870f5b804f1e230abb890e49ffee","tool":"lean"} diff --git a/examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.LexLeanRuntime.Portable.lean b/examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.LexLeanRuntime.Portable.lean similarity index 100% rename from examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.LexLeanRuntime.Portable.lean rename to examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.LexLeanRuntime.Portable.lean diff --git a/examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.LexLeanRuntime.Portable.process.json b/examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.LexLeanRuntime.Portable.process.json new file mode 100644 index 000000000..4c51ca005 --- /dev/null +++ b/examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.LexLeanRuntime.Portable.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.LexLeanRuntime.Portable.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.LexLeanRuntime.Portable","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanRuntime.Appendable' does not depend on any axioms\n'LexLeanRuntime.Appendable.append' does not depend on any axioms\n'LexLeanRuntime.Appendable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Appendable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Appendable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Appendable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Appendable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Appendable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Appendable.recOn' does not depend on any axioms\n'LexLeanRuntime.Decimal' does not depend on any axioms\n'LexLeanRuntime.Decimal.casesOn' does not depend on any axioms\n'LexLeanRuntime.Decimal.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Decimal.format' does not depend on any axioms\n'LexLeanRuntime.Decimal.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Decimal.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Decimal.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Decimal.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Decimal.parse' does not depend on any axioms\n'LexLeanRuntime.Decimal.recOn' does not depend on any axioms\n'LexLeanRuntime.Fixed' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitAnd' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitNot' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitOr' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitXor' does not depend on any axioms\n'LexLeanRuntime.Fixed.casesOn' does not depend on any axioms\n'LexLeanRuntime.Fixed.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Fixed.fromInt' does not depend on any axioms\n'LexLeanRuntime.Fixed.maximum' does not depend on any axioms\n'LexLeanRuntime.Fixed.minimum' does not depend on any axioms\n'LexLeanRuntime.Fixed.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Fixed.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Fixed.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Fixed.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Fixed.recOn' does not depend on any axioms\n'LexLeanRuntime.Fixed.shiftLeft' does not depend on any axioms\n'LexLeanRuntime.Fixed.shiftRight' does not depend on any axioms\n'LexLeanRuntime.Fixed.toToMathInt' does not depend on any axioms\n'LexLeanRuntime.Indexable' does not depend on any axioms\n'LexLeanRuntime.Indexable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Indexable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Indexable.index' does not depend on any axioms\n'LexLeanRuntime.Indexable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Indexable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Indexable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Indexable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Indexable.recOn' does not depend on any axioms\n'LexLeanRuntime.Lengthable' does not depend on any axioms\n'LexLeanRuntime.Lengthable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Lengthable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Lengthable.length' does not depend on any axioms\n'LexLeanRuntime.Lengthable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Lengthable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Lengthable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Lengthable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Lengthable.recOn' does not depend on any axioms\n'LexLeanRuntime.Quotient' does not depend on any axioms\n'LexLeanRuntime.Quotient.casesOn' does not depend on any axioms\n'LexLeanRuntime.Quotient.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Quotient.isZero' does not depend on any axioms\n'LexLeanRuntime.Quotient.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Quotient.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Quotient.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Quotient.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Quotient.quotient' does not depend on any axioms\n'LexLeanRuntime.Quotient.recOn' does not depend on any axioms\n'LexLeanRuntime.Quotient.remainder' does not depend on any axioms\n'LexLeanRuntime.Sliceable' does not depend on any axioms\n'LexLeanRuntime.Sliceable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Sliceable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Sliceable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Sliceable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Sliceable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Sliceable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Sliceable.recOn' does not depend on any axioms\n'LexLeanRuntime.Sliceable.slice' does not depend on any axioms\n'LexLeanRuntime.ToMathInt' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.casesOn' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.noConfusion' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.recOn' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.toInt' does not depend on any axioms\n'LexLeanRuntime.append' does not depend on any axioms\n'LexLeanRuntime.bitAnd' does not depend on any axioms\n'LexLeanRuntime.bitNot' does not depend on any axioms\n'LexLeanRuntime.bitOr' does not depend on any axioms\n'LexLeanRuntime.bitXor' does not depend on any axioms\n'LexLeanRuntime.checkedAdd' does not depend on any axioms\n'LexLeanRuntime.checkedAddInt64' does not depend on any axioms\n'LexLeanRuntime.checkedConvert' does not depend on any axioms\n'LexLeanRuntime.checkedFromInt' does not depend on any axioms\n'LexLeanRuntime.checkedMultiply' does not depend on any axioms\n'LexLeanRuntime.checkedMultiplyInt64' does not depend on any axioms\n'LexLeanRuntime.checkedMultiplyInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.checkedNegate' does not depend on any axioms\n'LexLeanRuntime.checkedNegateInt64' does not depend on any axioms\n'LexLeanRuntime.checkedQuotient' does not depend on any axioms\n'LexLeanRuntime.checkedQuotientInt64' does not depend on any axioms\n'LexLeanRuntime.checkedSubtract' does not depend on any axioms\n'LexLeanRuntime.checkedSubtractInt64' does not depend on any axioms\n'LexLeanRuntime.compareBytes' depends on axioms: [propext]\n'LexLeanRuntime.divideMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._f' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._sunfold' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.equal' does not depend on any axioms\n'LexLeanRuntime.formatDecimal' does not depend on any axioms\n'LexLeanRuntime.index' does not depend on any axioms\n'LexLeanRuntime.instAppendableByteArray' does not depend on any axioms\n'LexLeanRuntime.instAppendableList' does not depend on any axioms\n'LexLeanRuntime.instDecimalInt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instDecimalInt.match_1' does not depend on any axioms\n'LexLeanRuntime.instDecimalOfFixedOfToString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instFixedInt16' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt32' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt64' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt8' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt16' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt32' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt64' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt8' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instIndexableByteArrayUInt8' does not depend on any axioms\n'LexLeanRuntime.instIndexableList' does not depend on any axioms\n'LexLeanRuntime.instLengthableByteArray' does not depend on any axioms\n'LexLeanRuntime.instLengthableList' does not depend on any axioms\n'LexLeanRuntime.instLengthableString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instQuotientInt' does not depend on any axioms\n'LexLeanRuntime.instQuotientNat' does not depend on any axioms\n'LexLeanRuntime.instSliceableByteArray' does not depend on any axioms\n'LexLeanRuntime.instSliceableList' does not depend on any axioms\n'LexLeanRuntime.instToMathIntInt' does not depend on any axioms\n'LexLeanRuntime.join' depends on axioms: [propext]\n'LexLeanRuntime.length' does not depend on any axioms\n'LexLeanRuntime.listIndex' does not depend on any axioms\n'LexLeanRuntime.listIndex._f' does not depend on any axioms\n'LexLeanRuntime.listIndex._sunfold' does not depend on any axioms\n'LexLeanRuntime.listIndex._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.listIndex.match_1' does not depend on any axioms\n'LexLeanRuntime.magnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.multiply' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._f' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._sunfold' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.negate' does not depend on any axioms\n'LexLeanRuntime.parseDecimal' does not depend on any axioms\n'LexLeanRuntime.quotient' does not depend on any axioms\n'LexLeanRuntime.remainder' does not depend on any axioms\n'LexLeanRuntime.shiftLeft' does not depend on any axioms\n'LexLeanRuntime.shiftRight' does not depend on any axioms\n'LexLeanRuntime.signedMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.slice' does not depend on any axioms\n'LexLeanRuntime.splitExact' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.subtract' does not depend on any axioms\n'LexLeanRuntime.utf8Decode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.utf8Encode' does not depend on any axioms\n","stdout_sha256":"73fea1d9e9e9f0a2f1363b9f284eeeb9e434430e9fa910260b9526bad864641e","tool":"lean"} diff --git a/examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.LexLeanRuntime.Reasoning.lean b/examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.LexLeanRuntime.Reasoning.lean similarity index 100% rename from examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.LexLeanRuntime.Reasoning.lean rename to examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.LexLeanRuntime.Reasoning.lean diff --git a/examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.LexLeanRuntime.Reasoning.process.json b/examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.LexLeanRuntime.Reasoning.process.json new file mode 100644 index 000000000..8d935b485 --- /dev/null +++ b/examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.LexLeanRuntime.Reasoning.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.LexLeanRuntime.Reasoning.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.LexLeanRuntime.Reasoning","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanReasoning.All' does not depend on any axioms\n'LexLeanReasoning.All.below' does not depend on any axioms\n'LexLeanReasoning.All.below.casesOn' does not depend on any axioms\n'LexLeanReasoning.All.brecOn' does not depend on any axioms\n'LexLeanReasoning.All.casesOn' does not depend on any axioms\n'LexLeanReasoning.All.recOn' does not depend on any axioms\n'LexLeanReasoning.Complete' does not depend on any axioms\n'LexLeanReasoning.Found' does not depend on any axioms\n'LexLeanReasoning.Found.match_1' does not depend on any axioms\n'LexLeanReasoning.Preserves' does not depend on any axioms\n'LexLeanReasoning.Reaches' does not depend on any axioms\n'LexLeanReasoning.SearchOk' does not depend on any axioms\n'LexLeanReasoning.Sound' does not depend on any axioms\n'LexLeanReasoning.Star' does not depend on any axioms\n'LexLeanReasoning.Star.below' does not depend on any axioms\n'LexLeanReasoning.Star.below.casesOn' does not depend on any axioms\n'LexLeanReasoning.Star.brecOn' does not depend on any axioms\n'LexLeanReasoning.Star.casesOn' does not depend on any axioms\n'LexLeanReasoning.Star.recOn' does not depend on any axioms\n'LexLeanReasoning.allAppend' does not depend on any axioms\n'LexLeanReasoning.allFold' does not depend on any axioms\n'LexLeanReasoning.allHead' does not depend on any axioms\n'LexLeanReasoning.allSingle' does not depend on any axioms\n'LexLeanReasoning.allTail' does not depend on any axioms\n'LexLeanReasoning.bltSucc' does not depend on any axioms\n'LexLeanReasoning.capAll' does not depend on any axioms\n'LexLeanReasoning.capBound' does not depend on any axioms\n'LexLeanReasoning.checked' does not depend on any axioms\n'LexLeanReasoning.foldInvariant' does not depend on any axioms\n'LexLeanReasoning.foldSnoc' does not depend on any axioms\n'LexLeanReasoning.freshAll' does not depend on any axioms\n'LexLeanReasoning.guarded' does not depend on any axioms\n'LexLeanReasoning.guardedRank' does not depend on any axioms\n'LexLeanReasoning.iterateUntilBound' does not depend on any axioms\n'LexLeanReasoning.iterateUntilCount' does not depend on any axioms\n'LexLeanReasoning.iterateUntilGrowth' does not depend on any axioms\n'LexLeanReasoning.iterateUntilInvariant' does not depend on any axioms\n'LexLeanReasoning.iterateUntilSimulate' does not depend on any axioms\n'LexLeanReasoning.iterateUntilStops' does not depend on any axioms\n'LexLeanReasoning.lengthSnoc' does not depend on any axioms\n'LexLeanReasoning.noneSome' does not depend on any axioms\n'LexLeanReasoning.peakBound' does not depend on any axioms\n'LexLeanReasoning.reachesStart' does not depend on any axioms\n'LexLeanReasoning.searchStart' does not depend on any axioms\n'LexLeanReasoning.starPreserves' does not depend on any axioms\n'LexLeanReasoning.zeroLe' does not depend on any axioms\n","stdout_sha256":"bcad061b4e8b3848b9d6815070631b4088a7b6b1512ab5c741c66c6dea825fee","tool":"lean"} diff --git a/examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.Reasoning.Budget.lean b/examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.Reasoning.Budget.lean similarity index 100% rename from examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.Reasoning.Budget.lean rename to examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.Reasoning.Budget.lean diff --git a/examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.Reasoning.Budget.process.json b/examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.Reasoning.Budget.process.json new file mode 100644 index 000000000..37f866fd9 --- /dev/null +++ b/examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.Reasoning.Budget.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.Reasoning.Budget.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.Reasoning.Budget","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Reasoning.Budget.Burn.apply' does not depend on any axioms\n'Reasoning.Budget.Burn.apply_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Budget.Burn.apply_sound' depends on axioms: [propext, Quot.sound]\n'Reasoning.Budget.Burn.candidates' does not depend on any axioms\n'Reasoning.Budget.Burn.conclusion' does not depend on any axioms\n'Reasoning.Budget.Burn.guard' does not depend on any axioms\n'Reasoning.Budget.Drained.sound' depends on axioms: [propext]\n'Reasoning.Budget.Empty' does not depend on any axioms\n'Reasoning.Budget.Refund' does not depend on any axioms\n'Reasoning.Budget.Refund.Ledger' does not depend on any axioms\n'Reasoning.Budget.Refund.Run' does not depend on any axioms\n'Reasoning.Budget.Refund.Step' does not depend on any axioms\n'Reasoning.Budget.Refund.accept' does not depend on any axioms\n'Reasoning.Budget.Refund.accept_sound' depends on axioms: [propext]\n'Reasoning.Budget.Refund.account' does not depend on any axioms\n'Reasoning.Budget.Refund.answer' does not depend on any axioms\n'Reasoning.Budget.Refund.attempts' does not depend on any axioms\n'Reasoning.Budget.Refund.conclude' does not depend on any axioms\n'Reasoning.Budget.Refund.conclude_accept' does not depend on any axioms\n'Reasoning.Budget.Refund.conclude_sound' depends on axioms: [propext]\n'Reasoning.Budget.Refund.derivation' depends on axioms: [propext, Quot.sound]\n'Reasoning.Budget.Refund.explained' depends on axioms: [propext]\n'Reasoning.Budget.Refund.extract' does not depend on any axioms\n'Reasoning.Budget.Refund.fire' does not depend on any axioms\n'Reasoning.Budget.Refund.fire_sound' depends on axioms: [propext, Quot.sound]\n'Reasoning.Budget.Refund.firings_bounded' does not depend on any axioms\n'Reasoning.Budget.Refund.follow' does not depend on any axioms\n'Reasoning.Budget.Refund.iterations_bounded' does not depend on any axioms\n'Reasoning.Budget.Refund.next' does not depend on any axioms\n'Reasoning.Budget.Refund.next_sound' depends on axioms: [propext, Quot.sound]\n'Reasoning.Budget.Refund.observe' does not depend on any axioms\n'Reasoning.Budget.Refund.replay' does not depend on any axioms\n'Reasoning.Budget.Refund.replay_fire' does not depend on any axioms\n'Reasoning.Budget.Refund.replay_sound' depends on axioms: [propext, Quot.sound]\n'Reasoning.Budget.Refund.run' does not depend on any axioms\n'Reasoning.Budget.Refund.run_state' does not depend on any axioms\n'Reasoning.Budget.Refund.run_trace' does not depend on any axioms\n'Reasoning.Budget.Refund.saturate' does not depend on any axioms\n'Reasoning.Budget.Refund.saturate_derivation' depends on axioms: [propext, Quot.sound]\n'Reasoning.Budget.Refund.select' does not depend on any axioms\n'Reasoning.Budget.Refund.start' does not depend on any axioms\n'Reasoning.Budget.Refund.step' does not depend on any axioms\n'Reasoning.Budget.Refund.step_count' does not depend on any axioms\n'Reasoning.Budget.Refund.step_fired' does not depend on any axioms\n'Reasoning.Budget.Refund.step_none' does not depend on any axioms\n'Reasoning.Budget.Refund.step_some' does not depend on any axioms\n'Reasoning.Budget.Refund.step_trace' does not depend on any axioms\n'Reasoning.Budget.Refund.verdict' does not depend on any axioms\n'Reasoning.Budget.Refund.verdict_sound' depends on axioms: [propext]\n'Reasoning.Budget.Remaining' does not depend on any axioms\n'Reasoning.Budget.Spend' does not depend on any axioms\n'Reasoning.Budget.Spend.Ledger' does not depend on any axioms\n'Reasoning.Budget.Spend.Run' does not depend on any axioms\n'Reasoning.Budget.Spend.Step' does not depend on any axioms\n'Reasoning.Budget.Spend.accept' does not depend on any axioms\n'Reasoning.Budget.Spend.accept_sound' depends on axioms: [propext]\n'Reasoning.Budget.Spend.account' does not depend on any axioms\n'Reasoning.Budget.Spend.answer' does not depend on any axioms\n'Reasoning.Budget.Spend.attempts' does not depend on any axioms\n'Reasoning.Budget.Spend.conclude' does not depend on any axioms\n'Reasoning.Budget.Spend.conclude_accept' does not depend on any axioms\n'Reasoning.Budget.Spend.conclude_sound' depends on axioms: [propext]\n'Reasoning.Budget.Spend.derivation' depends on axioms: [propext, Quot.sound]\n'Reasoning.Budget.Spend.explained' depends on axioms: [propext]\n'Reasoning.Budget.Spend.extract' does not depend on any axioms\n'Reasoning.Budget.Spend.fire' does not depend on any axioms\n'Reasoning.Budget.Spend.fire_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Budget.Spend.fire_sound' depends on axioms: [propext, Quot.sound]\n'Reasoning.Budget.Spend.firings_bounded' does not depend on any axioms\n'Reasoning.Budget.Spend.follow' does not depend on any axioms\n'Reasoning.Budget.Spend.iterations_bounded' does not depend on any axioms\n'Reasoning.Budget.Spend.next' does not depend on any axioms\n'Reasoning.Budget.Spend.next_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Budget.Spend.next_sound' depends on axioms: [propext, Quot.sound]\n'Reasoning.Budget.Spend.observe' does not depend on any axioms\n'Reasoning.Budget.Spend.replay' does not depend on any axioms\n'Reasoning.Budget.Spend.replay_fire' does not depend on any axioms\n'Reasoning.Budget.Spend.replay_sound' depends on axioms: [propext, Quot.sound]\n'Reasoning.Budget.Spend.run' does not depend on any axioms\n'Reasoning.Budget.Spend.run_state' does not depend on any axioms\n'Reasoning.Budget.Spend.run_trace' does not depend on any axioms\n'Reasoning.Budget.Spend.saturate' does not depend on any axioms\n'Reasoning.Budget.Spend.saturate_derivation' depends on axioms: [propext, Quot.sound]\n'Reasoning.Budget.Spend.saturates' depends on axioms: [propext, Quot.sound]\n'Reasoning.Budget.Spend.select' does not depend on any axioms\n'Reasoning.Budget.Spend.start' does not depend on any axioms\n'Reasoning.Budget.Spend.step' does not depend on any axioms\n'Reasoning.Budget.Spend.step_count' does not depend on any axioms\n'Reasoning.Budget.Spend.step_fired' does not depend on any axioms\n'Reasoning.Budget.Spend.step_none' does not depend on any axioms\n'Reasoning.Budget.Spend.step_some' does not depend on any axioms\n'Reasoning.Budget.Spend.step_trace' does not depend on any axioms\n'Reasoning.Budget.Spend.verdict' does not depend on any axioms\n'Reasoning.Budget.Spend.verdict_sound' depends on axioms: [propext]\n'Reasoning.Budget.Spent' does not depend on any axioms\n'Reasoning.Budget.Tick.apply' does not depend on any axioms\n'Reasoning.Budget.Tick.apply_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Budget.Tick.apply_sound' depends on axioms: [propext, Quot.sound]\n'Reasoning.Budget.Tick.conclusion' does not depend on any axioms\n'Reasoning.Budget.Tick.guard' does not depend on any axioms\n'Reasoning.Budget.allowance_bound' depends on axioms: [propext, Quot.sound]\n'Reasoning.Budget.burn_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Budget.burn_sound' depends on axioms: [propext, Quot.sound]\n'Reasoning.Budget.emptyCheck' does not depend on any axioms\n'Reasoning.Budget.empty_sound' depends on axioms: [propext]\n'Reasoning.Budget.tick_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Budget.tick_sound' depends on axioms: [propext, Quot.sound]\n","stdout_sha256":"61274b9278738a5387ec49d25adf40a85f958c84f3e7007db22fe5da1fa0f781","tool":"lean"} diff --git a/examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.Reasoning.Clinic.lean b/examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.Reasoning.Clinic.lean similarity index 100% rename from examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.Reasoning.Clinic.lean rename to examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.Reasoning.Clinic.lean diff --git a/examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.Reasoning.Clinic.process.json b/examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.Reasoning.Clinic.process.json new file mode 100644 index 000000000..bd799d333 --- /dev/null +++ b/examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.Reasoning.Clinic.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.Reasoning.Clinic.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.Reasoning.Clinic","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Reasoning.Clinic.Chart' does not depend on any axioms\n'Reasoning.Clinic.Consistent' does not depend on any axioms\n'Reasoning.Clinic.Discharged' does not depend on any axioms\n'Reasoning.Clinic.Escalate.apply' does not depend on any axioms\n'Reasoning.Clinic.Escalate.apply_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Clinic.Escalate.apply_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Escalate.conclusion' does not depend on any axioms\n'Reasoning.Clinic.Escalate.guard' does not depend on any axioms\n'Reasoning.Clinic.Febrile' does not depend on any axioms\n'Reasoning.Clinic.Fever.apply' does not depend on any axioms\n'Reasoning.Clinic.Fever.apply_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Clinic.Fever.apply_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Fever.conclusion' does not depend on any axioms\n'Reasoning.Clinic.Fever.guard' does not depend on any axioms\n'Reasoning.Clinic.Findings.preserves' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Hypotensive' does not depend on any axioms\n'Reasoning.Clinic.Indicated' does not depend on any axioms\n'Reasoning.Clinic.Justified' does not depend on any axioms\n'Reasoning.Clinic.Leukocytic' does not depend on any axioms\n'Reasoning.Clinic.Leukocytosis.apply' does not depend on any axioms\n'Reasoning.Clinic.Leukocytosis.apply_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Clinic.Leukocytosis.apply_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Leukocytosis.conclusion' does not depend on any axioms\n'Reasoning.Clinic.Leukocytosis.guard' does not depend on any axioms\n'Reasoning.Clinic.Outpatient.sound' depends on axioms: [propext]\n'Reasoning.Clinic.Pending' does not depend on any axioms\n'Reasoning.Clinic.Recommendation.complete' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Recommendation.sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Review' does not depend on any axioms\n'Reasoning.Clinic.Review.Ledger' does not depend on any axioms\n'Reasoning.Clinic.Review.Run' does not depend on any axioms\n'Reasoning.Clinic.Review.Step' does not depend on any axioms\n'Reasoning.Clinic.Review.accept' does not depend on any axioms\n'Reasoning.Clinic.Review.accept_sound' depends on axioms: [propext]\n'Reasoning.Clinic.Review.account' does not depend on any axioms\n'Reasoning.Clinic.Review.answer' does not depend on any axioms\n'Reasoning.Clinic.Review.attempts' does not depend on any axioms\n'Reasoning.Clinic.Review.conclude' does not depend on any axioms\n'Reasoning.Clinic.Review.conclude_accept' does not depend on any axioms\n'Reasoning.Clinic.Review.conclude_sound' depends on axioms: [propext]\n'Reasoning.Clinic.Review.derivation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Review.explained' depends on axioms: [propext]\n'Reasoning.Clinic.Review.extract' does not depend on any axioms\n'Reasoning.Clinic.Review.fire' does not depend on any axioms\n'Reasoning.Clinic.Review.fire_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Review.firings_bounded' does not depend on any axioms\n'Reasoning.Clinic.Review.follow' does not depend on any axioms\n'Reasoning.Clinic.Review.follow_invariant' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Review.iterations_bounded' does not depend on any axioms\n'Reasoning.Clinic.Review.next' does not depend on any axioms\n'Reasoning.Clinic.Review.next_preserves' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Review.next_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Review.observe' does not depend on any axioms\n'Reasoning.Clinic.Review.replay' does not depend on any axioms\n'Reasoning.Clinic.Review.replay_fire' does not depend on any axioms\n'Reasoning.Clinic.Review.replay_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Review.run' does not depend on any axioms\n'Reasoning.Clinic.Review.run_state' does not depend on any axioms\n'Reasoning.Clinic.Review.run_trace' does not depend on any axioms\n'Reasoning.Clinic.Review.saturate' does not depend on any axioms\n'Reasoning.Clinic.Review.saturate_derivation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Review.saturate_invariant' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Review.select' does not depend on any axioms\n'Reasoning.Clinic.Review.start' does not depend on any axioms\n'Reasoning.Clinic.Review.step' does not depend on any axioms\n'Reasoning.Clinic.Review.step_count' does not depend on any axioms\n'Reasoning.Clinic.Review.step_fired' does not depend on any axioms\n'Reasoning.Clinic.Review.step_none' does not depend on any axioms\n'Reasoning.Clinic.Review.step_some' does not depend on any axioms\n'Reasoning.Clinic.Review.step_trace' does not depend on any axioms\n'Reasoning.Clinic.Review.verdict' does not depend on any axioms\n'Reasoning.Clinic.Review.verdict_sound' depends on axioms: [propext]\n'Reasoning.Clinic.Sepsis.apply' does not depend on any axioms\n'Reasoning.Clinic.Sepsis.apply_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Clinic.Sepsis.apply_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Sepsis.conclusion' does not depend on any axioms\n'Reasoning.Clinic.Sepsis.guard' does not depend on any axioms\n'Reasoning.Clinic.Shock.apply' does not depend on any axioms\n'Reasoning.Clinic.Shock.apply_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Clinic.Shock.apply_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Shock.conclusion' does not depend on any axioms\n'Reasoning.Clinic.Shock.guard' does not depend on any axioms\n'Reasoning.Clinic.Sirs.apply' does not depend on any axioms\n'Reasoning.Clinic.Sirs.apply_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Clinic.Sirs.apply_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Sirs.conclusion' does not depend on any axioms\n'Reasoning.Clinic.Sirs.guard' does not depend on any axioms\n'Reasoning.Clinic.Tachycardia.apply' does not depend on any axioms\n'Reasoning.Clinic.Tachycardia.apply_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Clinic.Tachycardia.apply_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Tachycardia.conclusion' does not depend on any axioms\n'Reasoning.Clinic.Tachycardia.guard' does not depend on any axioms\n'Reasoning.Clinic.Tachycardic' does not depend on any axioms\n'Reasoning.Clinic.Tachypnea.apply' does not depend on any axioms\n'Reasoning.Clinic.Tachypnea.apply_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Clinic.Tachypnea.apply_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Tachypnea.conclusion' does not depend on any axioms\n'Reasoning.Clinic.Tachypnea.guard' does not depend on any axioms\n'Reasoning.Clinic.Tachypneic' does not depend on any axioms\n'Reasoning.Clinic.Triage' does not depend on any axioms\n'Reasoning.Clinic.Triage.Ledger' does not depend on any axioms\n'Reasoning.Clinic.Triage.Run' does not depend on any axioms\n'Reasoning.Clinic.Triage.Step' does not depend on any axioms\n'Reasoning.Clinic.Triage.accept' does not depend on any axioms\n'Reasoning.Clinic.Triage.accept_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Triage.account' does not depend on any axioms\n'Reasoning.Clinic.Triage.answer' does not depend on any axioms\n'Reasoning.Clinic.Triage.attempts' does not depend on any axioms\n'Reasoning.Clinic.Triage.conclude' does not depend on any axioms\n'Reasoning.Clinic.Triage.conclude_accept' does not depend on any axioms\n'Reasoning.Clinic.Triage.conclude_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Triage.derivation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Triage.explained' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Triage.extract' does not depend on any axioms\n'Reasoning.Clinic.Triage.fire' does not depend on any axioms\n'Reasoning.Clinic.Triage.fire_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Clinic.Triage.fire_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Triage.firings_bounded' does not depend on any axioms\n'Reasoning.Clinic.Triage.follow' does not depend on any axioms\n'Reasoning.Clinic.Triage.follow_invariant' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Triage.iterations_bounded' does not depend on any axioms\n'Reasoning.Clinic.Triage.next' does not depend on any axioms\n'Reasoning.Clinic.Triage.next_preserves' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Triage.next_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Clinic.Triage.next_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Triage.observe' does not depend on any axioms\n'Reasoning.Clinic.Triage.replay' does not depend on any axioms\n'Reasoning.Clinic.Triage.replay_fire' does not depend on any axioms\n'Reasoning.Clinic.Triage.replay_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Triage.run' does not depend on any axioms\n'Reasoning.Clinic.Triage.run_state' does not depend on any axioms\n'Reasoning.Clinic.Triage.run_trace' does not depend on any axioms\n'Reasoning.Clinic.Triage.saturate' does not depend on any axioms\n'Reasoning.Clinic.Triage.saturate_derivation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Triage.saturate_invariant' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Triage.saturates' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Triage.select' does not depend on any axioms\n'Reasoning.Clinic.Triage.start' does not depend on any axioms\n'Reasoning.Clinic.Triage.step' does not depend on any axioms\n'Reasoning.Clinic.Triage.step_count' does not depend on any axioms\n'Reasoning.Clinic.Triage.step_fired' does not depend on any axioms\n'Reasoning.Clinic.Triage.step_none' does not depend on any axioms\n'Reasoning.Clinic.Triage.step_some' does not depend on any axioms\n'Reasoning.Clinic.Triage.step_trace' does not depend on any axioms\n'Reasoning.Clinic.Triage.verdict' does not depend on any axioms\n'Reasoning.Clinic.Triage.verdict_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Vitals' does not depend on any axioms\n'Reasoning.Clinic.Warranted' does not depend on any axioms\n'Reasoning.Clinic.admitted_consistent' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.admitted_pending' depends on axioms: [propext, Quot.sound]\n'Reasoning.Clinic.consistent_preserved' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.dischargeCheck' does not depend on any axioms\n'Reasoning.Clinic.discharge_sound' depends on axioms: [propext]\n'Reasoning.Clinic.escalate_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Clinic.escalate_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.fever_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Clinic.fever_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.feverish' does not depend on any axioms\n'Reasoning.Clinic.hypotensive' does not depend on any axioms\n'Reasoning.Clinic.leukocytic' does not depend on any axioms\n'Reasoning.Clinic.leukocytosis_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Clinic.leukocytosis_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.recommendationCheck' does not depend on any axioms\n'Reasoning.Clinic.recommendation_complete' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.recommendation_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.sepsis_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Clinic.sepsis_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.shock_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Clinic.shock_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.sirs_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Clinic.sirs_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.tachycardia_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Clinic.tachycardia_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.tachycardic' does not depend on any axioms\n'Reasoning.Clinic.tachypnea_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Clinic.tachypnea_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.tachypneic' does not depend on any axioms\n","stdout_sha256":"d385d180f0ca2a66d16d21a13c5c0cb09098259b2c56ec20e64bef35d7d23d18","tool":"lean"} diff --git a/examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.Reasoning.Main.lean b/examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.Reasoning.Main.lean similarity index 100% rename from examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.Reasoning.Main.lean rename to examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.Reasoning.Main.lean diff --git a/examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.Reasoning.Main.process.json b/examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.Reasoning.Main.process.json new file mode 100644 index 000000000..7cb2cf035 --- /dev/null +++ b/examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.Reasoning.Main.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.Reasoning.Main.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.Reasoning.Main","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Reasoning.Main.Cap' does not depend on any axioms\n'Reasoning.Main.Cap.Ledger' does not depend on any axioms\n'Reasoning.Main.Cap.Run' does not depend on any axioms\n'Reasoning.Main.Cap.Step' does not depend on any axioms\n'Reasoning.Main.Cap.accept' does not depend on any axioms\n'Reasoning.Main.Cap.accept_sound' depends on axioms: [propext, Quot.sound]\n'Reasoning.Main.Cap.account' does not depend on any axioms\n'Reasoning.Main.Cap.answer' does not depend on any axioms\n'Reasoning.Main.Cap.attempts' does not depend on any axioms\n'Reasoning.Main.Cap.conclude' does not depend on any axioms\n'Reasoning.Main.Cap.conclude_accept' does not depend on any axioms\n'Reasoning.Main.Cap.conclude_sound' depends on axioms: [propext, Quot.sound]\n'Reasoning.Main.Cap.derivation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Cap.explained' depends on axioms: [propext, Quot.sound]\n'Reasoning.Main.Cap.extract' does not depend on any axioms\n'Reasoning.Main.Cap.fire' does not depend on any axioms\n'Reasoning.Main.Cap.fire_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Cap.firings_bounded' does not depend on any axioms\n'Reasoning.Main.Cap.follow' does not depend on any axioms\n'Reasoning.Main.Cap.follow_invariant' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Cap.iterations_bounded' does not depend on any axioms\n'Reasoning.Main.Cap.next' does not depend on any axioms\n'Reasoning.Main.Cap.next_preserves' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Cap.next_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Cap.observe' does not depend on any axioms\n'Reasoning.Main.Cap.replay' does not depend on any axioms\n'Reasoning.Main.Cap.replay_fire' does not depend on any axioms\n'Reasoning.Main.Cap.replay_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Cap.run' does not depend on any axioms\n'Reasoning.Main.Cap.run_state' does not depend on any axioms\n'Reasoning.Main.Cap.run_trace' does not depend on any axioms\n'Reasoning.Main.Cap.saturate' does not depend on any axioms\n'Reasoning.Main.Cap.saturate_derivation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Cap.saturate_invariant' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Cap.select' does not depend on any axioms\n'Reasoning.Main.Cap.start' does not depend on any axioms\n'Reasoning.Main.Cap.step' does not depend on any axioms\n'Reasoning.Main.Cap.step_count' does not depend on any axioms\n'Reasoning.Main.Cap.step_fired' does not depend on any axioms\n'Reasoning.Main.Cap.step_none' does not depend on any axioms\n'Reasoning.Main.Cap.step_some' does not depend on any axioms\n'Reasoning.Main.Cap.step_trace' does not depend on any axioms\n'Reasoning.Main.Cap.verdict' does not depend on any axioms\n'Reasoning.Main.Cap.verdict_sound' depends on axioms: [propext, Quot.sound]\n'Reasoning.Main.Capped' does not depend on any axioms\n'Reasoning.Main.Ceiling.sound' depends on axioms: [propext]\n'Reasoning.Main.GatewayEvidence.gateway_safe' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.GatewayModel' does not depend on any axioms\n'Reasoning.Main.GatewayTriage' does not depend on any axioms\n'Reasoning.Main.Grade' does not depend on any axioms\n'Reasoning.Main.Grade.Ledger' does not depend on any axioms\n'Reasoning.Main.Grade.Run' does not depend on any axioms\n'Reasoning.Main.Grade.Step' does not depend on any axioms\n'Reasoning.Main.Grade.accept' does not depend on any axioms\n'Reasoning.Main.Grade.accept_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Grade.account' does not depend on any axioms\n'Reasoning.Main.Grade.answer' does not depend on any axioms\n'Reasoning.Main.Grade.attempts' does not depend on any axioms\n'Reasoning.Main.Grade.conclude' does not depend on any axioms\n'Reasoning.Main.Grade.conclude_accept' does not depend on any axioms\n'Reasoning.Main.Grade.conclude_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Grade.derivation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Grade.explained' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Grade.extract' does not depend on any axioms\n'Reasoning.Main.Grade.fire' does not depend on any axioms\n'Reasoning.Main.Grade.fire_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Main.Grade.fire_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Grade.firings_bounded' does not depend on any axioms\n'Reasoning.Main.Grade.follow' does not depend on any axioms\n'Reasoning.Main.Grade.follow_invariant' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Grade.follow_relation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Grade.iterations_bounded' does not depend on any axioms\n'Reasoning.Main.Grade.next' does not depend on any axioms\n'Reasoning.Main.Grade.next_preserves' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Grade.next_preserves_relation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Grade.next_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Main.Grade.next_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Grade.observe' does not depend on any axioms\n'Reasoning.Main.Grade.replay' does not depend on any axioms\n'Reasoning.Main.Grade.replay_fire' does not depend on any axioms\n'Reasoning.Main.Grade.replay_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Grade.run' does not depend on any axioms\n'Reasoning.Main.Grade.run_relation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Grade.run_state' does not depend on any axioms\n'Reasoning.Main.Grade.run_trace' does not depend on any axioms\n'Reasoning.Main.Grade.saturate' does not depend on any axioms\n'Reasoning.Main.Grade.saturate_derivation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Grade.saturate_invariant' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Grade.saturate_relation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Grade.saturates' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Grade.select' does not depend on any axioms\n'Reasoning.Main.Grade.start' does not depend on any axioms\n'Reasoning.Main.Grade.step' does not depend on any axioms\n'Reasoning.Main.Grade.step_count' does not depend on any axioms\n'Reasoning.Main.Grade.step_fired' does not depend on any axioms\n'Reasoning.Main.Grade.step_none' does not depend on any axioms\n'Reasoning.Main.Grade.step_some' does not depend on any axioms\n'Reasoning.Main.Grade.step_trace' does not depend on any axioms\n'Reasoning.Main.Grade.verdict' does not depend on any axioms\n'Reasoning.Main.Grade.verdict_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Graded' does not depend on any axioms\n'Reasoning.Main.Guaranteed' does not depend on any axioms\n'Reasoning.Main.Related' does not depend on any axioms\n'Reasoning.Main.Scale.sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.cap_correct' depends on axioms: [propext, Quot.sound]\n'Reasoning.Main.cappedCheck' does not depend on any axioms\n'Reasoning.Main.capped_sound' depends on axioms: [propext]\n'Reasoning.Main.doseLevel' does not depend on any axioms\n'Reasoning.Main.dose_exhausted' does not depend on any axioms\n'Reasoning.Main.dose_exhausted_ledger' does not depend on any axioms\n'Reasoning.Main.dose_found' does not depend on any axioms\n'Reasoning.Main.dose_ledger' does not depend on any axioms\n'Reasoning.Main.gatewayLevel' does not depend on any axioms\n'Reasoning.Main.gateway_level' does not depend on any axioms\n'Reasoning.Main.gateway_safe' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.gradeLevel' does not depend on any axioms\n'Reasoning.Main.grade_admitted' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.grade_correct' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.grade_ledger' does not depend on any axioms\n'Reasoning.Main.grade_pending' depends on axioms: [propext, Quot.sound]\n'Reasoning.Main.grade_shock' does not depend on any axioms\n'Reasoning.Main.grade_well_ledger' does not depend on any axioms\n'Reasoning.Main.gradedCheck' does not depend on any axioms\n'Reasoning.Main.graded_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.planLeft' depends on axioms: [propext]\n'Reasoning.Main.plan_found' depends on axioms: [propext]\n'Reasoning.Main.plan_frontier' depends on axioms: [propext]\n'Reasoning.Main.plan_ledger' depends on axioms: [propext]\n'Reasoning.Main.plan_unsolved' depends on axioms: [propext]\n'Reasoning.Main.plan_unsolved_ledger' depends on axioms: [propext]\n'Reasoning.Main.refund_drained' does not depend on any axioms\n'Reasoning.Main.refund_ledger' does not depend on any axioms\n'Reasoning.Main.refund_unsolved' does not depend on any axioms\n'Reasoning.Main.refund_unsolved_ledger' does not depend on any axioms\n'Reasoning.Main.related_admitted' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.related_preserved' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.review_exhausted' does not depend on any axioms\n'Reasoning.Main.review_ledger' does not depend on any axioms\n'Reasoning.Main.review_rejected' does not depend on any axioms\n'Reasoning.Main.review_rejected_ledger' does not depend on any axioms\n'Reasoning.Main.screenDose' does not depend on any axioms\n'Reasoning.Main.screen_found' does not depend on any axioms\n'Reasoning.Main.screen_ledger' does not depend on any axioms\n'Reasoning.Main.screen_truncated' does not depend on any axioms\n'Reasoning.Main.screen_truncated_ledger' does not depend on any axioms\n'Reasoning.Main.screen_unsolved_ledger' does not depend on any axioms\n'Reasoning.Main.spendLeft' does not depend on any axioms\n'Reasoning.Main.spend_drained' does not depend on any axioms\n'Reasoning.Main.spend_ledger' does not depend on any axioms\n'Reasoning.Main.triageLevel' does not depend on any axioms\n'Reasoning.Main.triageSteps' does not depend on any axioms\n'Reasoning.Main.triage_forged' does not depend on any axioms\n'Reasoning.Main.triage_inapplicable' does not depend on any axioms\n'Reasoning.Main.triage_iterations' does not depend on any axioms\n'Reasoning.Main.triage_ledger' does not depend on any axioms\n'Reasoning.Main.triage_level' does not depend on any axioms\n'Reasoning.Main.triage_replays' does not depend on any axioms\n'Reasoning.Main.triage_shock' does not depend on any axioms\n'Reasoning.Main.triage_well' does not depend on any axioms\n'Reasoning.Main.triage_well_ledger' does not depend on any axioms\n","stdout_sha256":"13bfab88bf1e8f71fc26deed8cf04a2a08de1934d83603a6cc29cf959867360f","tool":"lean"} diff --git a/examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.Reasoning.Planner.lean b/examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.Reasoning.Planner.lean similarity index 100% rename from examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.Reasoning.Planner.lean rename to examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.Reasoning.Planner.lean diff --git a/examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.Reasoning.Planner.process.json b/examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.Reasoning.Planner.process.json new file mode 100644 index 000000000..6901f2d8f --- /dev/null +++ b/examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.Reasoning.Planner.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.Reasoning.Planner.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.Reasoning.Planner","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Reasoning.Planner.Anywhere.sound' depends on axioms: [propext]\n'Reasoning.Planner.EmptyB.apply' does not depend on any axioms\n'Reasoning.Planner.EmptyB.apply_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.EmptyB.conclusion' does not depend on any axioms\n'Reasoning.Planner.EmptyB.guard' does not depend on any axioms\n'Reasoning.Planner.FillA.apply' does not depend on any axioms\n'Reasoning.Planner.FillA.apply_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.FillA.conclusion' does not depend on any axioms\n'Reasoning.Planner.FillA.guard' does not depend on any axioms\n'Reasoning.Planner.Fits' does not depend on any axioms\n'Reasoning.Planner.Held' does not depend on any axioms\n'Reasoning.Planner.Inside.sound' depends on axioms: [propext]\n'Reasoning.Planner.Measured.sound' depends on axioms: [propext]\n'Reasoning.Planner.Measures' does not depend on any axioms\n'Reasoning.Planner.Moves' does not depend on any axioms\n'Reasoning.Planner.Plan' depends on axioms: [propext]\n'Reasoning.Planner.Plan.EmptyB.successors' does not depend on any axioms\n'Reasoning.Planner.Plan.EmptyB.successors_ok' does not depend on any axioms\n'Reasoning.Planner.Plan.FillA.successors' does not depend on any axioms\n'Reasoning.Planner.Plan.FillA.successors_ok' does not depend on any axioms\n'Reasoning.Planner.Plan.Ledger' does not depend on any axioms\n'Reasoning.Planner.Plan.Node' does not depend on any axioms\n'Reasoning.Planner.Plan.Pour.collect' does not depend on any axioms\n'Reasoning.Planner.Plan.Pour.successors' does not depend on any axioms\n'Reasoning.Planner.Plan.Pour.successors_ok' does not depend on any axioms\n'Reasoning.Planner.Plan.Search' does not depend on any axioms\n'Reasoning.Planner.Plan.Step' does not depend on any axioms\n'Reasoning.Planner.Plan.accept' does not depend on any axioms\n'Reasoning.Planner.Plan.accept_sound' depends on axioms: [propext]\n'Reasoning.Planner.Plan.answer' does not depend on any axioms\n'Reasoning.Planner.Plan.attempts' does not depend on any axioms\n'Reasoning.Planner.Plan.derivation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.Plan.expansions_bounded' depends on axioms: [propext]\n'Reasoning.Planner.Plan.explained' depends on axioms: [propext]\n'Reasoning.Planner.Plan.extend' does not depend on any axioms\n'Reasoning.Planner.Plan.extract' does not depend on any axioms\n'Reasoning.Planner.Plan.failure' does not depend on any axioms\n'Reasoning.Planner.Plan.fire' does not depend on any axioms\n'Reasoning.Planner.Plan.fire_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.Plan.follow' does not depend on any axioms\n'Reasoning.Planner.Plan.follow_invariant' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.Plan.fresh' depends on axioms: [propext]\n'Reasoning.Planner.Plan.fresh_ok' depends on axioms: [propext]\n'Reasoning.Planner.Plan.frontier_bounded' depends on axioms: [propext]\n'Reasoning.Planner.Plan.iterations_bounded' depends on axioms: [propext]\n'Reasoning.Planner.Plan.observe' does not depend on any axioms\n'Reasoning.Planner.Plan.replay' does not depend on any axioms\n'Reasoning.Planner.Plan.replay_fire' does not depend on any axioms\n'Reasoning.Planner.Plan.replay_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.Plan.run' depends on axioms: [propext]\n'Reasoning.Planner.Plan.searchStep' depends on axioms: [propext]\n'Reasoning.Planner.Plan.search_count' depends on axioms: [propext]\n'Reasoning.Planner.Plan.search_expanded' depends on axioms: [propext]\n'Reasoning.Planner.Plan.search_ok' depends on axioms: [propext]\n'Reasoning.Planner.Plan.search_peak' depends on axioms: [propext]\n'Reasoning.Planner.Plan.search_step' depends on axioms: [propext]\n'Reasoning.Planner.Plan.search_verify_growth' depends on axioms: [propext]\n'Reasoning.Planner.Plan.start' depends on axioms: [propext]\n'Reasoning.Planner.Plan.successors' does not depend on any axioms\n'Reasoning.Planner.Plan.successors_ok' does not depend on any axioms\n'Reasoning.Planner.Plan.verdict' depends on axioms: [propext]\n'Reasoning.Planner.Plan.verdict_sound' depends on axioms: [propext]\n'Reasoning.Planner.Plan.verifications_bounded' depends on axioms: [propext]\n'Reasoning.Planner.PlanFit' depends on axioms: [propext]\n'Reasoning.Planner.PlanFit.EmptyB.successors' does not depend on any axioms\n'Reasoning.Planner.PlanFit.EmptyB.successors_ok' does not depend on any axioms\n'Reasoning.Planner.PlanFit.FillA.successors' does not depend on any axioms\n'Reasoning.Planner.PlanFit.FillA.successors_ok' does not depend on any axioms\n'Reasoning.Planner.PlanFit.Ledger' does not depend on any axioms\n'Reasoning.Planner.PlanFit.Node' does not depend on any axioms\n'Reasoning.Planner.PlanFit.Pour.collect' does not depend on any axioms\n'Reasoning.Planner.PlanFit.Pour.successors' does not depend on any axioms\n'Reasoning.Planner.PlanFit.Pour.successors_ok' does not depend on any axioms\n'Reasoning.Planner.PlanFit.Search' does not depend on any axioms\n'Reasoning.Planner.PlanFit.Step' does not depend on any axioms\n'Reasoning.Planner.PlanFit.accept' does not depend on any axioms\n'Reasoning.Planner.PlanFit.accept_sound' depends on axioms: [propext, Quot.sound]\n'Reasoning.Planner.PlanFit.answer' does not depend on any axioms\n'Reasoning.Planner.PlanFit.attempts' does not depend on any axioms\n'Reasoning.Planner.PlanFit.derivation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.PlanFit.expansions_bounded' depends on axioms: [propext]\n'Reasoning.Planner.PlanFit.explained' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.PlanFit.extend' does not depend on any axioms\n'Reasoning.Planner.PlanFit.extract' does not depend on any axioms\n'Reasoning.Planner.PlanFit.failure' does not depend on any axioms\n'Reasoning.Planner.PlanFit.fire' does not depend on any axioms\n'Reasoning.Planner.PlanFit.fire_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.PlanFit.follow' does not depend on any axioms\n'Reasoning.Planner.PlanFit.follow_invariant' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.PlanFit.fresh' depends on axioms: [propext]\n'Reasoning.Planner.PlanFit.fresh_ok' depends on axioms: [propext]\n'Reasoning.Planner.PlanFit.frontier_bounded' depends on axioms: [propext]\n'Reasoning.Planner.PlanFit.iterations_bounded' depends on axioms: [propext]\n'Reasoning.Planner.PlanFit.observe' does not depend on any axioms\n'Reasoning.Planner.PlanFit.replay' does not depend on any axioms\n'Reasoning.Planner.PlanFit.replay_fire' does not depend on any axioms\n'Reasoning.Planner.PlanFit.replay_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.PlanFit.run' depends on axioms: [propext]\n'Reasoning.Planner.PlanFit.searchStep' depends on axioms: [propext]\n'Reasoning.Planner.PlanFit.search_count' depends on axioms: [propext]\n'Reasoning.Planner.PlanFit.search_expanded' depends on axioms: [propext]\n'Reasoning.Planner.PlanFit.search_ok' depends on axioms: [propext]\n'Reasoning.Planner.PlanFit.search_peak' depends on axioms: [propext]\n'Reasoning.Planner.PlanFit.search_step' depends on axioms: [propext]\n'Reasoning.Planner.PlanFit.search_verify_growth' depends on axioms: [propext]\n'Reasoning.Planner.PlanFit.start' depends on axioms: [propext]\n'Reasoning.Planner.PlanFit.successors' does not depend on any axioms\n'Reasoning.Planner.PlanFit.successors_ok' does not depend on any axioms\n'Reasoning.Planner.PlanFit.verdict' depends on axioms: [propext]\n'Reasoning.Planner.PlanFit.verdict_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.PlanFit.verifications_bounded' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitR' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitR.EmptyB.successors' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.EmptyB.successors_ok' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.FillA.successors' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.FillA.successors_ok' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.Ledger' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.Node' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.Pour.collect' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.Pour.successors' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.Pour.successors_ok' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.Search' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.Step' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.accept' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.accept_sound' depends on axioms: [propext, Quot.sound]\n'Reasoning.Planner.PlanFitR.answer' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.attempts' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.derivation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.PlanFitR.expansions_bounded' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitR.explained' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.PlanFitR.extend' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.extract' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.failure' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.fire' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.fire_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.PlanFitR.follow' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.follow_invariant' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.PlanFitR.follow_relation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.PlanFitR.fresh' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitR.fresh_ok' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitR.frontier_bounded' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitR.iterations_bounded' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitR.observe' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.replay' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.replay_fire' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.replay_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.PlanFitR.run' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitR.searchStep' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitR.search_count' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitR.search_expanded' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitR.search_ok' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitR.search_peak' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitR.search_step' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitR.search_verify_growth' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitR.start' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitR.successors' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.successors_ok' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.verdict' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitR.verdict_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.PlanFitR.verifications_bounded' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitU' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitU.EmptyB.successors' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.EmptyB.successors_ok' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.FillA.successors' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.FillA.successors_ok' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.Ledger' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.Node' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.Pour.collect' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.Pour.successors' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.Pour.successors_ok' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.Search' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.Step' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.accept' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.accept_sound' depends on axioms: [propext, Quot.sound]\n'Reasoning.Planner.PlanFitU.answer' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.attempts' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.derivation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.PlanFitU.expansions_bounded' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitU.explained' depends on axioms: [propext, Quot.sound]\n'Reasoning.Planner.PlanFitU.extend' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.extract' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.failure' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.fire' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.fire_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.PlanFitU.follow' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.follow_invariant' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.PlanFitU.fresh' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitU.fresh_ok' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitU.frontier_bounded' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitU.iterations_bounded' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitU.observe' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.replay' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.replay_fire' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.replay_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.PlanFitU.run' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitU.searchStep' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitU.search_count' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitU.search_expanded' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitU.search_ok' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitU.search_peak' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitU.search_step' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitU.search_verify_growth' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitU.start' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitU.successors' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.successors_ok' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.verdict' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitU.verdict_sound' depends on axioms: [propext, Quot.sound]\n'Reasoning.Planner.PlanFitU.verifications_bounded' depends on axioms: [propext]\n'Reasoning.Planner.Pour.apply' does not depend on any axioms\n'Reasoning.Planner.Pour.apply_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.Pour.candidates' does not depend on any axioms\n'Reasoning.Planner.Pour.conclusion' does not depend on any axioms\n'Reasoning.Planner.Pour.guard' does not depend on any axioms\n'Reasoning.Planner.Pouring.preserves' does not depend on any axioms\n'Reasoning.Planner.Whole' does not depend on any axioms\n'Reasoning.Planner.Within' does not depend on any axioms\n'Reasoning.Planner.empty_jugs_fit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.emptyb_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.filla_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.fits_kept' does not depend on any axioms\n'Reasoning.Planner.held_initial' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.held_preserved' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.measuresCheck' does not depend on any axioms\n'Reasoning.Planner.measures_sound' depends on axioms: [propext]\n'Reasoning.Planner.plan_fit_correct' depends on axioms: [propext, Quot.sound]\n'Reasoning.Planner.plan_held_correct' depends on axioms: [propext, Quot.sound]\n'Reasoning.Planner.plan_whole_correct' depends on axioms: [propext, Quot.sound]\n'Reasoning.Planner.pour_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.wholeCheck' does not depend on any axioms\n'Reasoning.Planner.whole_sound' depends on axioms: [propext]\n'Reasoning.Planner.withinCheck' does not depend on any axioms\n'Reasoning.Planner.within_sound' depends on axioms: [propext]\n","stdout_sha256":"1bde3cc2a8f61dcfb844a885ccd0a1c0ee853cf3e237d0038b10dd7f015cf6f3","tool":"lean"} diff --git a/examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.Reasoning.Screening.lean b/examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.Reasoning.Screening.lean similarity index 100% rename from examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.Reasoning.Screening.lean rename to examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.Reasoning.Screening.lean diff --git a/examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.Reasoning.Screening.process.json b/examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.Reasoning.Screening.process.json new file mode 100644 index 000000000..a5d3c695f --- /dev/null +++ b/examples/reasoning/expected/verify/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.Reasoning.Screening.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.Reasoning.Screening.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A02b315b69b8881ec6f91f78f9b12c608.Reasoning.Screening","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Reasoning.Screening.Dose' does not depend on any axioms\n'Reasoning.Screening.Dose.Ledger' does not depend on any axioms\n'Reasoning.Screening.Dose.Step' does not depend on any axioms\n'Reasoning.Screening.Dose.Trial' does not depend on any axioms\n'Reasoning.Screening.Dose.answer' does not depend on any axioms\n'Reasoning.Screening.Dose.candidates' does not depend on any axioms\n'Reasoning.Screening.Dose.explained' depends on axioms: [propext]\n'Reasoning.Screening.Dose.failure' does not depend on any axioms\n'Reasoning.Screening.Dose.run' does not depend on any axioms\n'Reasoning.Screening.Dose.run_sound' depends on axioms: [propext]\n'Reasoning.Screening.Dose.try' does not depend on any axioms\n'Reasoning.Screening.Dose.try_count' does not depend on any axioms\n'Reasoning.Screening.Dose.try_sound' depends on axioms: [propext]\n'Reasoning.Screening.Dose.verdict' does not depend on any axioms\n'Reasoning.Screening.Dose.verdict_sound' depends on axioms: [propext]\n'Reasoning.Screening.Dose.verifications_bounded' does not depend on any axioms\n'Reasoning.Screening.Dose.verify' does not depend on any axioms\n'Reasoning.Screening.Dose.verify_sound' depends on axioms: [propext]\n'Reasoning.Screening.DoseCandidates' does not depend on any axioms\n'Reasoning.Screening.DoseContract.postcondition_sound' depends on axioms: [propext]\n'Reasoning.Screening.DoseModel' does not depend on any axioms\n'Reasoning.Screening.Propose.apply' does not depend on any axioms\n'Reasoning.Screening.Propose.apply_sound' depends on axioms: [propext]\n'Reasoning.Screening.Propose.candidates' does not depend on any axioms\n'Reasoning.Screening.Propose.conclusion' does not depend on any axioms\n'Reasoning.Screening.Propose.guard' does not depend on any axioms\n'Reasoning.Screening.Proposed' does not depend on any axioms\n'Reasoning.Screening.Safe' does not depend on any axioms\n'Reasoning.Screening.SafeDose.sound' depends on axioms: [propext]\n'Reasoning.Screening.Screen' does not depend on any axioms\n'Reasoning.Screening.Screen.Ledger' does not depend on any axioms\n'Reasoning.Screening.Screen.Node' does not depend on any axioms\n'Reasoning.Screening.Screen.Propose.collect' does not depend on any axioms\n'Reasoning.Screening.Screen.Propose.successors' does not depend on any axioms\n'Reasoning.Screening.Screen.Propose.successors_ok' does not depend on any axioms\n'Reasoning.Screening.Screen.Search' does not depend on any axioms\n'Reasoning.Screening.Screen.Step' does not depend on any axioms\n'Reasoning.Screening.Screen.accept' does not depend on any axioms\n'Reasoning.Screening.Screen.accept_sound' depends on axioms: [propext]\n'Reasoning.Screening.Screen.answer' does not depend on any axioms\n'Reasoning.Screening.Screen.attempts' does not depend on any axioms\n'Reasoning.Screening.Screen.derivation' depends on axioms: [propext]\n'Reasoning.Screening.Screen.expansions_bounded' does not depend on any axioms\n'Reasoning.Screening.Screen.explained' depends on axioms: [propext]\n'Reasoning.Screening.Screen.extend' does not depend on any axioms\n'Reasoning.Screening.Screen.extract' does not depend on any axioms\n'Reasoning.Screening.Screen.failure' does not depend on any axioms\n'Reasoning.Screening.Screen.fire' does not depend on any axioms\n'Reasoning.Screening.Screen.fire_sound' depends on axioms: [propext]\n'Reasoning.Screening.Screen.follow' does not depend on any axioms\n'Reasoning.Screening.Screen.frontier_bounded' does not depend on any axioms\n'Reasoning.Screening.Screen.iterations_bounded' does not depend on any axioms\n'Reasoning.Screening.Screen.observe' does not depend on any axioms\n'Reasoning.Screening.Screen.replay' does not depend on any axioms\n'Reasoning.Screening.Screen.replay_fire' does not depend on any axioms\n'Reasoning.Screening.Screen.replay_sound' depends on axioms: [propext]\n'Reasoning.Screening.Screen.run' does not depend on any axioms\n'Reasoning.Screening.Screen.searchStep' does not depend on any axioms\n'Reasoning.Screening.Screen.search_count' does not depend on any axioms\n'Reasoning.Screening.Screen.search_expanded' does not depend on any axioms\n'Reasoning.Screening.Screen.search_ok' does not depend on any axioms\n'Reasoning.Screening.Screen.search_peak' does not depend on any axioms\n'Reasoning.Screening.Screen.search_step' does not depend on any axioms\n'Reasoning.Screening.Screen.search_verify_growth' does not depend on any axioms\n'Reasoning.Screening.Screen.start' does not depend on any axioms\n'Reasoning.Screening.Screen.successors' does not depend on any axioms\n'Reasoning.Screening.Screen.successors_ok' does not depend on any axioms\n'Reasoning.Screening.Screen.verdict' does not depend on any axioms\n'Reasoning.Screening.Screen.verdict_sound' depends on axioms: [propext]\n'Reasoning.Screening.Screen.verifications_bounded' does not depend on any axioms\n'Reasoning.Screening.Short' does not depend on any axioms\n'Reasoning.Screening.propose_sound' depends on axioms: [propext]\n'Reasoning.Screening.safeCheck' does not depend on any axioms\n'Reasoning.Screening.safe_sound' depends on axioms: [propext]\n'Reasoning.Screening.shortCheck' does not depend on any axioms\n'Reasoning.Screening.short_sound' depends on axioms: [propext]\n","stdout_sha256":"cf0950a5981076ee37dfdf563d46105dc9dbe4ef7ca4ebdbbbc5af2f23a3410b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.LexLeanRuntime.Collections.process.json b/examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.LexLeanRuntime.Collections.process.json deleted file mode 100644 index a0edc8afc..000000000 --- a/examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.LexLeanRuntime.Collections.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.LexLeanRuntime.Collections.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.LexLeanRuntime.Collections","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanCollections.Key' does not depend on any axioms\n'LexLeanCollections.Key.casesOn' does not depend on any axioms\n'LexLeanCollections.Key.compare' does not depend on any axioms\n'LexLeanCollections.Key.ctorIdx' does not depend on any axioms\n'LexLeanCollections.Key.mk._flat_ctor' does not depend on any axioms\n'LexLeanCollections.Key.mk.noConfusion' does not depend on any axioms\n'LexLeanCollections.Key.noConfusion' does not depend on any axioms\n'LexLeanCollections.Key.noConfusionType' does not depend on any axioms\n'LexLeanCollections.Key.recOn' does not depend on any axioms\n'LexLeanCollections.compareCodes' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._f' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._sunfold' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._unsafe_rec' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.match_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.match_4' does not depend on any axioms\n'LexLeanCollections.containsElement' does not depend on any axioms\n'LexLeanCollections.containsElement._f' does not depend on any axioms\n'LexLeanCollections.containsElement._sunfold' does not depend on any axioms\n'LexLeanCollections.containsElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.graphNodes' does not depend on any axioms\n'LexLeanCollections.graphReachable' depends on axioms: [propext]\n'LexLeanCollections.graphSuccessors' does not depend on any axioms\n'LexLeanCollections.graphTopological' does not depend on any axioms\n'LexLeanCollections.insertElement' does not depend on any axioms\n'LexLeanCollections.insertElement._f' does not depend on any axioms\n'LexLeanCollections.insertElement._sunfold' does not depend on any axioms\n'LexLeanCollections.insertElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.insertElement.match_1' does not depend on any axioms\n'LexLeanCollections.insertEntry' does not depend on any axioms\n'LexLeanCollections.insertEntry._f' does not depend on any axioms\n'LexLeanCollections.insertEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.insertEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.insertEntry.match_1' does not depend on any axioms\n'LexLeanCollections.insertEntry.match_3' does not depend on any axioms\n'LexLeanCollections.instKeyBool' depends on axioms: [propext]\n'LexLeanCollections.instKeyInt' does not depend on any axioms\n'LexLeanCollections.instKeyInt16' does not depend on any axioms\n'LexLeanCollections.instKeyInt32' does not depend on any axioms\n'LexLeanCollections.instKeyInt64' does not depend on any axioms\n'LexLeanCollections.instKeyInt8' does not depend on any axioms\n'LexLeanCollections.instKeyNat' does not depend on any axioms\n'LexLeanCollections.instKeyProd' depends on axioms: [propext]\n'LexLeanCollections.instKeyString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanCollections.instKeyUInt16' does not depend on any axioms\n'LexLeanCollections.instKeyUInt32' does not depend on any axioms\n'LexLeanCollections.instKeyUInt64' does not depend on any axioms\n'LexLeanCollections.instKeyUInt8' does not depend on any axioms\n'LexLeanCollections.iterate' does not depend on any axioms\n'LexLeanCollections.iterate._f' does not depend on any axioms\n'LexLeanCollections.iterate._sunfold' does not depend on any axioms\n'LexLeanCollections.iterate._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.iterate.match_1' does not depend on any axioms\n'LexLeanCollections.iterateUntil' does not depend on any axioms\n'LexLeanCollections.iterateUntil._f' does not depend on any axioms\n'LexLeanCollections.iterateUntil._sunfold' does not depend on any axioms\n'LexLeanCollections.iterateUntil._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.iterateUntil.match_1' does not depend on any axioms\n'LexLeanCollections.lessThan' depends on axioms: [propext]\n'LexLeanCollections.lessThan._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.lessThan.match_1' depends on axioms: [propext]\n'LexLeanCollections.listFold' does not depend on any axioms\n'LexLeanCollections.lookupEntry' does not depend on any axioms\n'LexLeanCollections.lookupEntry._f' does not depend on any axioms\n'LexLeanCollections.lookupEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.lookupEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.mapContains' does not depend on any axioms\n'LexLeanCollections.mapEntries' does not depend on any axioms\n'LexLeanCollections.mapFold' does not depend on any axioms\n'LexLeanCollections.mapInsert' does not depend on any axioms\n'LexLeanCollections.mapKeys' does not depend on any axioms\n'LexLeanCollections.mapLookup' does not depend on any axioms\n'LexLeanCollections.mapRemove' does not depend on any axioms\n'LexLeanCollections.mapSize' does not depend on any axioms\n'LexLeanCollections.mapValues' does not depend on any axioms\n'LexLeanCollections.reachableFrom' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._f' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._sunfold' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._unsafe_rec' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom.match_1' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom.match_4' does not depend on any axioms\n'LexLeanCollections.removeElement' does not depend on any axioms\n'LexLeanCollections.removeElement._f' does not depend on any axioms\n'LexLeanCollections.removeElement._sunfold' does not depend on any axioms\n'LexLeanCollections.removeElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.removeEntry' does not depend on any axioms\n'LexLeanCollections.removeEntry._f' does not depend on any axioms\n'LexLeanCollections.removeEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.removeEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.setContains' does not depend on any axioms\n'LexLeanCollections.setDifference' does not depend on any axioms\n'LexLeanCollections.setElements' does not depend on any axioms\n'LexLeanCollections.setFold' does not depend on any axioms\n'LexLeanCollections.setInsert' does not depend on any axioms\n'LexLeanCollections.setIntersection' does not depend on any axioms\n'LexLeanCollections.setRemove' does not depend on any axioms\n'LexLeanCollections.setSize' does not depend on any axioms\n'LexLeanCollections.setUnion' does not depend on any axioms\n'LexLeanCollections.topological' does not depend on any axioms\n'LexLeanCollections.topological._f' does not depend on any axioms\n'LexLeanCollections.topological._sunfold' does not depend on any axioms\n'LexLeanCollections.topological._unsafe_rec' does not depend on any axioms\n","stdout_sha256":"b75acc0e99e23684c3cc876eacbfc93f47161cfee8a7440df17fa45f321c8c6a","tool":"lean"} diff --git a/examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.LexLeanRuntime.Laws.process.json b/examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.LexLeanRuntime.Laws.process.json deleted file mode 100644 index c434694f3..000000000 --- a/examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.LexLeanRuntime.Laws.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.LexLeanRuntime.Laws.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.LexLeanRuntime.Laws","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanCollections.lessThan._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanCollections.lessThan.eq_1' depends on axioms: [propext]\n'LexLeanCollections.listFold.eq_1' does not depend on any axioms\n'LexLeanLaws.append_list' does not depend on any axioms\n'LexLeanLaws.length_list' does not depend on any axioms\n'LexLeanLaws.lessThan_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int16' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int32' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int64' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int8' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_nat' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint16' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint32' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint64' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint8' depends on axioms: [propext]\n'LexLeanLaws.listFold_add_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_add_int_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_add_nat' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_add_nat_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_append' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_cons' does not depend on any axioms\n'LexLeanLaws.listFold_extend' depends on axioms: [propext]\n'LexLeanLaws.listFold_fusion' does not depend on any axioms\n'LexLeanLaws.listFold_nil' does not depend on any axioms\n'LexLeanLaws.listFold_pair' does not depend on any axioms\n'LexLeanLaws.listFold_prepend' depends on axioms: [propext]\n'LexLeanLaws.listFold_sub_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_sub_int_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.mapEntries_self' does not depend on any axioms\n'LexLeanLaws.mapFold_listFold' does not depend on any axioms\n'LexLeanLaws.mapSize_length' does not depend on any axioms\n'LexLeanLaws.quotient_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.quotient_nat' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.remainder_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.remainder_nat' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.setElements_self' does not depend on any axioms\n'LexLeanLaws.setFold_listFold' does not depend on any axioms\n'LexLeanLaws.setSize_length' does not depend on any axioms\n'LexLeanLaws.sumInt' does not depend on any axioms\n'LexLeanLaws.sumInt._f' does not depend on any axioms\n'LexLeanLaws.sumInt._sunfold' does not depend on any axioms\n'LexLeanLaws.sumInt._unsafe_rec' does not depend on any axioms\n'LexLeanLaws.sumInt.eq_1' does not depend on any axioms\n'LexLeanLaws.sumInt.eq_2' does not depend on any axioms\n'LexLeanLaws.sumInt.eq_def' does not depend on any axioms\n'LexLeanLaws.sumInt_add' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_append' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_cons' does not depend on any axioms\n'LexLeanLaws.sumInt_const' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_mul' depends on axioms: [propext]\n'LexLeanLaws.sumInt_mul_right' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_mul_self' depends on axioms: [propext]\n'LexLeanLaws.sumInt_neg' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_neg_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_nil' does not depend on any axioms\n'LexLeanLaws.sumInt_perm' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_reverse' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_sub' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat' does not depend on any axioms\n'LexLeanLaws.sumNat._f' does not depend on any axioms\n'LexLeanLaws.sumNat._sunfold' does not depend on any axioms\n'LexLeanLaws.sumNat._unsafe_rec' does not depend on any axioms\n'LexLeanLaws.sumNat.eq_1' does not depend on any axioms\n'LexLeanLaws.sumNat.eq_2' does not depend on any axioms\n'LexLeanLaws.sumNat.eq_def' does not depend on any axioms\n'LexLeanLaws.sumNat.match_1' does not depend on any axioms\n'LexLeanLaws.sumNat_add' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_append' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_cons' does not depend on any axioms\n'LexLeanLaws.sumNat_const' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_mul' does not depend on any axioms\n'LexLeanLaws.sumNat_mul_right' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_mul_self' does not depend on any axioms\n'LexLeanLaws.sumNat_nil' does not depend on any axioms\n'LexLeanLaws.sumNat_perm' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_reverse' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.tdiv_ediv' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.tmod_emod' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.quotient.eq_1' does not depend on any axioms\n'LexLeanRuntime.remainder.eq_1' does not depend on any axioms\n","stdout_sha256":"a4ba2d39c9cdfd5e40c41c5ccf4726d937fd192fc042b74bb56cc0651e28919e","tool":"lean"} diff --git a/examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.LexLeanRuntime.Models.process.json b/examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.LexLeanRuntime.Models.process.json deleted file mode 100644 index 966f09413..000000000 --- a/examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.LexLeanRuntime.Models.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.LexLeanRuntime.Models.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.LexLeanRuntime.Models","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanModels.Agreement' does not depend on any axioms\n'LexLeanModels.Complete1' does not depend on any axioms\n'LexLeanModels.Complete2' does not depend on any axioms\n'LexLeanModels.Complete4' does not depend on any axioms\n'LexLeanModels.Equivalent' does not depend on any axioms\n'LexLeanModels.EquivalentStep' does not depend on any axioms\n'LexLeanModels.EquivalentStepNoInvariant' does not depend on any axioms\n'LexLeanModels.EquivalentStepNoPrecondition' does not depend on any axioms\n'LexLeanModels.EquivalentStepTotal' does not depend on any axioms\n'LexLeanModels.EquivalentTotal' does not depend on any axioms\n'LexLeanModels.Initial' does not depend on any axioms\n'LexLeanModels.Preserves' does not depend on any axioms\n'LexLeanModels.PreservesTotal' does not depend on any axioms\n'LexLeanModels.Satisfies' does not depend on any axioms\n'LexLeanModels.SatisfiesStep' does not depend on any axioms\n'LexLeanModels.SatisfiesStepNoInvariant' does not depend on any axioms\n'LexLeanModels.SatisfiesStepNoPrecondition' does not depend on any axioms\n'LexLeanModels.SatisfiesStepTotal' does not depend on any axioms\n'LexLeanModels.SatisfiesTotal' does not depend on any axioms\n'LexLeanModels.Sound1' does not depend on any axioms\n'LexLeanModels.Sound2' does not depend on any axioms\n'LexLeanModels.Sound4' does not depend on any axioms\n'LexLeanModels.encodeInt' does not depend on any axioms\n'LexLeanModels.inRange' does not depend on any axioms\n'LexLeanModels.linesMatch' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanModels.tensorMatches' does not depend on any axioms\n'LexLeanModels.utf8Char' does not depend on any axioms\n","stdout_sha256":"43ad1c715570458672aedc9abb1691012eef870f5b804f1e230abb890e49ffee","tool":"lean"} diff --git a/examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.LexLeanRuntime.Portable.process.json b/examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.LexLeanRuntime.Portable.process.json deleted file mode 100644 index c81de023b..000000000 --- a/examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.LexLeanRuntime.Portable.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.LexLeanRuntime.Portable.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.LexLeanRuntime.Portable","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanRuntime.Appendable' does not depend on any axioms\n'LexLeanRuntime.Appendable.append' does not depend on any axioms\n'LexLeanRuntime.Appendable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Appendable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Appendable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Appendable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Appendable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Appendable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Appendable.recOn' does not depend on any axioms\n'LexLeanRuntime.Decimal' does not depend on any axioms\n'LexLeanRuntime.Decimal.casesOn' does not depend on any axioms\n'LexLeanRuntime.Decimal.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Decimal.format' does not depend on any axioms\n'LexLeanRuntime.Decimal.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Decimal.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Decimal.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Decimal.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Decimal.parse' does not depend on any axioms\n'LexLeanRuntime.Decimal.recOn' does not depend on any axioms\n'LexLeanRuntime.Fixed' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitAnd' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitNot' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitOr' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitXor' does not depend on any axioms\n'LexLeanRuntime.Fixed.casesOn' does not depend on any axioms\n'LexLeanRuntime.Fixed.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Fixed.fromInt' does not depend on any axioms\n'LexLeanRuntime.Fixed.maximum' does not depend on any axioms\n'LexLeanRuntime.Fixed.minimum' does not depend on any axioms\n'LexLeanRuntime.Fixed.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Fixed.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Fixed.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Fixed.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Fixed.recOn' does not depend on any axioms\n'LexLeanRuntime.Fixed.shiftLeft' does not depend on any axioms\n'LexLeanRuntime.Fixed.shiftRight' does not depend on any axioms\n'LexLeanRuntime.Fixed.toToMathInt' does not depend on any axioms\n'LexLeanRuntime.Indexable' does not depend on any axioms\n'LexLeanRuntime.Indexable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Indexable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Indexable.index' does not depend on any axioms\n'LexLeanRuntime.Indexable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Indexable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Indexable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Indexable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Indexable.recOn' does not depend on any axioms\n'LexLeanRuntime.Lengthable' does not depend on any axioms\n'LexLeanRuntime.Lengthable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Lengthable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Lengthable.length' does not depend on any axioms\n'LexLeanRuntime.Lengthable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Lengthable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Lengthable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Lengthable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Lengthable.recOn' does not depend on any axioms\n'LexLeanRuntime.Quotient' does not depend on any axioms\n'LexLeanRuntime.Quotient.casesOn' does not depend on any axioms\n'LexLeanRuntime.Quotient.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Quotient.isZero' does not depend on any axioms\n'LexLeanRuntime.Quotient.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Quotient.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Quotient.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Quotient.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Quotient.quotient' does not depend on any axioms\n'LexLeanRuntime.Quotient.recOn' does not depend on any axioms\n'LexLeanRuntime.Quotient.remainder' does not depend on any axioms\n'LexLeanRuntime.Sliceable' does not depend on any axioms\n'LexLeanRuntime.Sliceable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Sliceable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Sliceable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Sliceable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Sliceable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Sliceable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Sliceable.recOn' does not depend on any axioms\n'LexLeanRuntime.Sliceable.slice' does not depend on any axioms\n'LexLeanRuntime.ToMathInt' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.casesOn' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.noConfusion' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.recOn' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.toInt' does not depend on any axioms\n'LexLeanRuntime.append' does not depend on any axioms\n'LexLeanRuntime.bitAnd' does not depend on any axioms\n'LexLeanRuntime.bitNot' does not depend on any axioms\n'LexLeanRuntime.bitOr' does not depend on any axioms\n'LexLeanRuntime.bitXor' does not depend on any axioms\n'LexLeanRuntime.checkedAdd' does not depend on any axioms\n'LexLeanRuntime.checkedAddInt64' does not depend on any axioms\n'LexLeanRuntime.checkedConvert' does not depend on any axioms\n'LexLeanRuntime.checkedFromInt' does not depend on any axioms\n'LexLeanRuntime.checkedMultiply' does not depend on any axioms\n'LexLeanRuntime.checkedMultiplyInt64' does not depend on any axioms\n'LexLeanRuntime.checkedMultiplyInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.checkedNegate' does not depend on any axioms\n'LexLeanRuntime.checkedNegateInt64' does not depend on any axioms\n'LexLeanRuntime.checkedQuotient' does not depend on any axioms\n'LexLeanRuntime.checkedQuotientInt64' does not depend on any axioms\n'LexLeanRuntime.checkedSubtract' does not depend on any axioms\n'LexLeanRuntime.checkedSubtractInt64' does not depend on any axioms\n'LexLeanRuntime.compareBytes' depends on axioms: [propext]\n'LexLeanRuntime.divideMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._f' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._sunfold' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.equal' does not depend on any axioms\n'LexLeanRuntime.formatDecimal' does not depend on any axioms\n'LexLeanRuntime.index' does not depend on any axioms\n'LexLeanRuntime.instAppendableByteArray' does not depend on any axioms\n'LexLeanRuntime.instAppendableList' does not depend on any axioms\n'LexLeanRuntime.instDecimalInt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instDecimalInt.match_1' does not depend on any axioms\n'LexLeanRuntime.instDecimalOfFixedOfToString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instFixedInt16' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt32' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt64' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt8' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt16' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt32' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt64' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt8' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instIndexableByteArrayUInt8' does not depend on any axioms\n'LexLeanRuntime.instIndexableList' does not depend on any axioms\n'LexLeanRuntime.instLengthableByteArray' does not depend on any axioms\n'LexLeanRuntime.instLengthableList' does not depend on any axioms\n'LexLeanRuntime.instLengthableString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instQuotientInt' does not depend on any axioms\n'LexLeanRuntime.instQuotientNat' does not depend on any axioms\n'LexLeanRuntime.instSliceableByteArray' does not depend on any axioms\n'LexLeanRuntime.instSliceableList' does not depend on any axioms\n'LexLeanRuntime.instToMathIntInt' does not depend on any axioms\n'LexLeanRuntime.join' depends on axioms: [propext]\n'LexLeanRuntime.length' does not depend on any axioms\n'LexLeanRuntime.listIndex' does not depend on any axioms\n'LexLeanRuntime.listIndex._f' does not depend on any axioms\n'LexLeanRuntime.listIndex._sunfold' does not depend on any axioms\n'LexLeanRuntime.listIndex._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.listIndex.match_1' does not depend on any axioms\n'LexLeanRuntime.magnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.multiply' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._f' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._sunfold' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.negate' does not depend on any axioms\n'LexLeanRuntime.parseDecimal' does not depend on any axioms\n'LexLeanRuntime.quotient' does not depend on any axioms\n'LexLeanRuntime.remainder' does not depend on any axioms\n'LexLeanRuntime.shiftLeft' does not depend on any axioms\n'LexLeanRuntime.shiftRight' does not depend on any axioms\n'LexLeanRuntime.signedMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.slice' does not depend on any axioms\n'LexLeanRuntime.splitExact' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.subtract' does not depend on any axioms\n'LexLeanRuntime.utf8Decode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.utf8Encode' does not depend on any axioms\n","stdout_sha256":"73fea1d9e9e9f0a2f1363b9f284eeeb9e434430e9fa910260b9526bad864641e","tool":"lean"} diff --git a/examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.LexLeanRuntime.Reasoning.process.json b/examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.LexLeanRuntime.Reasoning.process.json deleted file mode 100644 index 491d51a6a..000000000 --- a/examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.LexLeanRuntime.Reasoning.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.LexLeanRuntime.Reasoning.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.LexLeanRuntime.Reasoning","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanReasoning.All' does not depend on any axioms\n'LexLeanReasoning.All.below' does not depend on any axioms\n'LexLeanReasoning.All.below.casesOn' does not depend on any axioms\n'LexLeanReasoning.All.brecOn' does not depend on any axioms\n'LexLeanReasoning.All.casesOn' does not depend on any axioms\n'LexLeanReasoning.All.recOn' does not depend on any axioms\n'LexLeanReasoning.Complete' does not depend on any axioms\n'LexLeanReasoning.Found' does not depend on any axioms\n'LexLeanReasoning.Found.match_1' does not depend on any axioms\n'LexLeanReasoning.Preserves' does not depend on any axioms\n'LexLeanReasoning.Reaches' does not depend on any axioms\n'LexLeanReasoning.SearchOk' does not depend on any axioms\n'LexLeanReasoning.Sound' does not depend on any axioms\n'LexLeanReasoning.Star' does not depend on any axioms\n'LexLeanReasoning.Star.below' does not depend on any axioms\n'LexLeanReasoning.Star.below.casesOn' does not depend on any axioms\n'LexLeanReasoning.Star.brecOn' does not depend on any axioms\n'LexLeanReasoning.Star.casesOn' does not depend on any axioms\n'LexLeanReasoning.Star.recOn' does not depend on any axioms\n'LexLeanReasoning.allAppend' does not depend on any axioms\n'LexLeanReasoning.allFold' does not depend on any axioms\n'LexLeanReasoning.allHead' does not depend on any axioms\n'LexLeanReasoning.allSingle' does not depend on any axioms\n'LexLeanReasoning.allTail' does not depend on any axioms\n'LexLeanReasoning.bltSucc' does not depend on any axioms\n'LexLeanReasoning.capAll' does not depend on any axioms\n'LexLeanReasoning.capBound' does not depend on any axioms\n'LexLeanReasoning.checked' does not depend on any axioms\n'LexLeanReasoning.foldInvariant' does not depend on any axioms\n'LexLeanReasoning.foldSnoc' does not depend on any axioms\n'LexLeanReasoning.freshAll' does not depend on any axioms\n'LexLeanReasoning.guarded' does not depend on any axioms\n'LexLeanReasoning.guardedRank' does not depend on any axioms\n'LexLeanReasoning.iterateUntilBound' does not depend on any axioms\n'LexLeanReasoning.iterateUntilCount' does not depend on any axioms\n'LexLeanReasoning.iterateUntilGrowth' does not depend on any axioms\n'LexLeanReasoning.iterateUntilInvariant' does not depend on any axioms\n'LexLeanReasoning.iterateUntilSimulate' does not depend on any axioms\n'LexLeanReasoning.iterateUntilStops' does not depend on any axioms\n'LexLeanReasoning.lengthSnoc' does not depend on any axioms\n'LexLeanReasoning.noneSome' does not depend on any axioms\n'LexLeanReasoning.peakBound' does not depend on any axioms\n'LexLeanReasoning.reachesStart' does not depend on any axioms\n'LexLeanReasoning.searchStart' does not depend on any axioms\n'LexLeanReasoning.starPreserves' does not depend on any axioms\n'LexLeanReasoning.zeroLe' does not depend on any axioms\n","stdout_sha256":"bcad061b4e8b3848b9d6815070631b4088a7b6b1512ab5c741c66c6dea825fee","tool":"lean"} diff --git a/examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.Reasoning.Budget.process.json b/examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.Reasoning.Budget.process.json deleted file mode 100644 index eb7d96e1d..000000000 --- a/examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.Reasoning.Budget.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.Reasoning.Budget.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.Reasoning.Budget","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Reasoning.Budget.Burn.apply' does not depend on any axioms\n'Reasoning.Budget.Burn.apply_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Budget.Burn.apply_sound' depends on axioms: [propext, Quot.sound]\n'Reasoning.Budget.Burn.candidates' does not depend on any axioms\n'Reasoning.Budget.Burn.conclusion' does not depend on any axioms\n'Reasoning.Budget.Burn.guard' does not depend on any axioms\n'Reasoning.Budget.Drained.sound' depends on axioms: [propext]\n'Reasoning.Budget.Empty' does not depend on any axioms\n'Reasoning.Budget.Refund' does not depend on any axioms\n'Reasoning.Budget.Refund.Ledger' does not depend on any axioms\n'Reasoning.Budget.Refund.Run' does not depend on any axioms\n'Reasoning.Budget.Refund.Step' does not depend on any axioms\n'Reasoning.Budget.Refund.accept' does not depend on any axioms\n'Reasoning.Budget.Refund.accept_sound' depends on axioms: [propext]\n'Reasoning.Budget.Refund.account' does not depend on any axioms\n'Reasoning.Budget.Refund.answer' does not depend on any axioms\n'Reasoning.Budget.Refund.attempts' does not depend on any axioms\n'Reasoning.Budget.Refund.conclude' does not depend on any axioms\n'Reasoning.Budget.Refund.conclude_accept' does not depend on any axioms\n'Reasoning.Budget.Refund.conclude_sound' depends on axioms: [propext]\n'Reasoning.Budget.Refund.derivation' depends on axioms: [propext, Quot.sound]\n'Reasoning.Budget.Refund.explained' depends on axioms: [propext]\n'Reasoning.Budget.Refund.extract' does not depend on any axioms\n'Reasoning.Budget.Refund.fire' does not depend on any axioms\n'Reasoning.Budget.Refund.fire_sound' depends on axioms: [propext, Quot.sound]\n'Reasoning.Budget.Refund.firings_bounded' does not depend on any axioms\n'Reasoning.Budget.Refund.follow' does not depend on any axioms\n'Reasoning.Budget.Refund.iterations_bounded' does not depend on any axioms\n'Reasoning.Budget.Refund.next' does not depend on any axioms\n'Reasoning.Budget.Refund.next_sound' depends on axioms: [propext, Quot.sound]\n'Reasoning.Budget.Refund.observe' does not depend on any axioms\n'Reasoning.Budget.Refund.replay' does not depend on any axioms\n'Reasoning.Budget.Refund.replay_fire' does not depend on any axioms\n'Reasoning.Budget.Refund.replay_sound' depends on axioms: [propext, Quot.sound]\n'Reasoning.Budget.Refund.run' does not depend on any axioms\n'Reasoning.Budget.Refund.run_state' does not depend on any axioms\n'Reasoning.Budget.Refund.run_trace' does not depend on any axioms\n'Reasoning.Budget.Refund.saturate' does not depend on any axioms\n'Reasoning.Budget.Refund.saturate_derivation' depends on axioms: [propext, Quot.sound]\n'Reasoning.Budget.Refund.select' does not depend on any axioms\n'Reasoning.Budget.Refund.start' does not depend on any axioms\n'Reasoning.Budget.Refund.step' does not depend on any axioms\n'Reasoning.Budget.Refund.step_count' does not depend on any axioms\n'Reasoning.Budget.Refund.step_fired' does not depend on any axioms\n'Reasoning.Budget.Refund.step_none' does not depend on any axioms\n'Reasoning.Budget.Refund.step_some' does not depend on any axioms\n'Reasoning.Budget.Refund.step_trace' does not depend on any axioms\n'Reasoning.Budget.Refund.verdict' does not depend on any axioms\n'Reasoning.Budget.Refund.verdict_sound' depends on axioms: [propext]\n'Reasoning.Budget.Remaining' does not depend on any axioms\n'Reasoning.Budget.Spend' does not depend on any axioms\n'Reasoning.Budget.Spend.Ledger' does not depend on any axioms\n'Reasoning.Budget.Spend.Run' does not depend on any axioms\n'Reasoning.Budget.Spend.Step' does not depend on any axioms\n'Reasoning.Budget.Spend.accept' does not depend on any axioms\n'Reasoning.Budget.Spend.accept_sound' depends on axioms: [propext]\n'Reasoning.Budget.Spend.account' does not depend on any axioms\n'Reasoning.Budget.Spend.answer' does not depend on any axioms\n'Reasoning.Budget.Spend.attempts' does not depend on any axioms\n'Reasoning.Budget.Spend.conclude' does not depend on any axioms\n'Reasoning.Budget.Spend.conclude_accept' does not depend on any axioms\n'Reasoning.Budget.Spend.conclude_sound' depends on axioms: [propext]\n'Reasoning.Budget.Spend.derivation' depends on axioms: [propext, Quot.sound]\n'Reasoning.Budget.Spend.explained' depends on axioms: [propext]\n'Reasoning.Budget.Spend.extract' does not depend on any axioms\n'Reasoning.Budget.Spend.fire' does not depend on any axioms\n'Reasoning.Budget.Spend.fire_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Budget.Spend.fire_sound' depends on axioms: [propext, Quot.sound]\n'Reasoning.Budget.Spend.firings_bounded' does not depend on any axioms\n'Reasoning.Budget.Spend.follow' does not depend on any axioms\n'Reasoning.Budget.Spend.iterations_bounded' does not depend on any axioms\n'Reasoning.Budget.Spend.next' does not depend on any axioms\n'Reasoning.Budget.Spend.next_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Budget.Spend.next_sound' depends on axioms: [propext, Quot.sound]\n'Reasoning.Budget.Spend.observe' does not depend on any axioms\n'Reasoning.Budget.Spend.replay' does not depend on any axioms\n'Reasoning.Budget.Spend.replay_fire' does not depend on any axioms\n'Reasoning.Budget.Spend.replay_sound' depends on axioms: [propext, Quot.sound]\n'Reasoning.Budget.Spend.run' does not depend on any axioms\n'Reasoning.Budget.Spend.run_state' does not depend on any axioms\n'Reasoning.Budget.Spend.run_trace' does not depend on any axioms\n'Reasoning.Budget.Spend.saturate' does not depend on any axioms\n'Reasoning.Budget.Spend.saturate_derivation' depends on axioms: [propext, Quot.sound]\n'Reasoning.Budget.Spend.saturates' depends on axioms: [propext, Quot.sound]\n'Reasoning.Budget.Spend.select' does not depend on any axioms\n'Reasoning.Budget.Spend.start' does not depend on any axioms\n'Reasoning.Budget.Spend.step' does not depend on any axioms\n'Reasoning.Budget.Spend.step_count' does not depend on any axioms\n'Reasoning.Budget.Spend.step_fired' does not depend on any axioms\n'Reasoning.Budget.Spend.step_none' does not depend on any axioms\n'Reasoning.Budget.Spend.step_some' does not depend on any axioms\n'Reasoning.Budget.Spend.step_trace' does not depend on any axioms\n'Reasoning.Budget.Spend.verdict' does not depend on any axioms\n'Reasoning.Budget.Spend.verdict_sound' depends on axioms: [propext]\n'Reasoning.Budget.Spent' does not depend on any axioms\n'Reasoning.Budget.Tick.apply' does not depend on any axioms\n'Reasoning.Budget.Tick.apply_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Budget.Tick.apply_sound' depends on axioms: [propext, Quot.sound]\n'Reasoning.Budget.Tick.conclusion' does not depend on any axioms\n'Reasoning.Budget.Tick.guard' does not depend on any axioms\n'Reasoning.Budget.allowance_bound' depends on axioms: [propext, Quot.sound]\n'Reasoning.Budget.burn_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Budget.burn_sound' depends on axioms: [propext, Quot.sound]\n'Reasoning.Budget.emptyCheck' does not depend on any axioms\n'Reasoning.Budget.empty_sound' depends on axioms: [propext]\n'Reasoning.Budget.tick_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Budget.tick_sound' depends on axioms: [propext, Quot.sound]\n","stdout_sha256":"61274b9278738a5387ec49d25adf40a85f958c84f3e7007db22fe5da1fa0f781","tool":"lean"} diff --git a/examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.Reasoning.Clinic.process.json b/examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.Reasoning.Clinic.process.json deleted file mode 100644 index ab1cf5347..000000000 --- a/examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.Reasoning.Clinic.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.Reasoning.Clinic.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.Reasoning.Clinic","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Reasoning.Clinic.Chart' does not depend on any axioms\n'Reasoning.Clinic.Consistent' does not depend on any axioms\n'Reasoning.Clinic.Discharged' does not depend on any axioms\n'Reasoning.Clinic.Escalate.apply' does not depend on any axioms\n'Reasoning.Clinic.Escalate.apply_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Clinic.Escalate.apply_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Escalate.conclusion' does not depend on any axioms\n'Reasoning.Clinic.Escalate.guard' does not depend on any axioms\n'Reasoning.Clinic.Febrile' does not depend on any axioms\n'Reasoning.Clinic.Fever.apply' does not depend on any axioms\n'Reasoning.Clinic.Fever.apply_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Clinic.Fever.apply_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Fever.conclusion' does not depend on any axioms\n'Reasoning.Clinic.Fever.guard' does not depend on any axioms\n'Reasoning.Clinic.Findings.preserves' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Hypotensive' does not depend on any axioms\n'Reasoning.Clinic.Indicated' does not depend on any axioms\n'Reasoning.Clinic.Justified' does not depend on any axioms\n'Reasoning.Clinic.Leukocytic' does not depend on any axioms\n'Reasoning.Clinic.Leukocytosis.apply' does not depend on any axioms\n'Reasoning.Clinic.Leukocytosis.apply_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Clinic.Leukocytosis.apply_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Leukocytosis.conclusion' does not depend on any axioms\n'Reasoning.Clinic.Leukocytosis.guard' does not depend on any axioms\n'Reasoning.Clinic.Outpatient.sound' depends on axioms: [propext]\n'Reasoning.Clinic.Pending' does not depend on any axioms\n'Reasoning.Clinic.Recommendation.complete' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Recommendation.sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Review' does not depend on any axioms\n'Reasoning.Clinic.Review.Ledger' does not depend on any axioms\n'Reasoning.Clinic.Review.Run' does not depend on any axioms\n'Reasoning.Clinic.Review.Step' does not depend on any axioms\n'Reasoning.Clinic.Review.accept' does not depend on any axioms\n'Reasoning.Clinic.Review.accept_sound' depends on axioms: [propext]\n'Reasoning.Clinic.Review.account' does not depend on any axioms\n'Reasoning.Clinic.Review.answer' does not depend on any axioms\n'Reasoning.Clinic.Review.attempts' does not depend on any axioms\n'Reasoning.Clinic.Review.conclude' does not depend on any axioms\n'Reasoning.Clinic.Review.conclude_accept' does not depend on any axioms\n'Reasoning.Clinic.Review.conclude_sound' depends on axioms: [propext]\n'Reasoning.Clinic.Review.derivation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Review.explained' depends on axioms: [propext]\n'Reasoning.Clinic.Review.extract' does not depend on any axioms\n'Reasoning.Clinic.Review.fire' does not depend on any axioms\n'Reasoning.Clinic.Review.fire_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Review.firings_bounded' does not depend on any axioms\n'Reasoning.Clinic.Review.follow' does not depend on any axioms\n'Reasoning.Clinic.Review.follow_invariant' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Review.iterations_bounded' does not depend on any axioms\n'Reasoning.Clinic.Review.next' does not depend on any axioms\n'Reasoning.Clinic.Review.next_preserves' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Review.next_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Review.observe' does not depend on any axioms\n'Reasoning.Clinic.Review.replay' does not depend on any axioms\n'Reasoning.Clinic.Review.replay_fire' does not depend on any axioms\n'Reasoning.Clinic.Review.replay_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Review.run' does not depend on any axioms\n'Reasoning.Clinic.Review.run_state' does not depend on any axioms\n'Reasoning.Clinic.Review.run_trace' does not depend on any axioms\n'Reasoning.Clinic.Review.saturate' does not depend on any axioms\n'Reasoning.Clinic.Review.saturate_derivation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Review.saturate_invariant' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Review.select' does not depend on any axioms\n'Reasoning.Clinic.Review.start' does not depend on any axioms\n'Reasoning.Clinic.Review.step' does not depend on any axioms\n'Reasoning.Clinic.Review.step_count' does not depend on any axioms\n'Reasoning.Clinic.Review.step_fired' does not depend on any axioms\n'Reasoning.Clinic.Review.step_none' does not depend on any axioms\n'Reasoning.Clinic.Review.step_some' does not depend on any axioms\n'Reasoning.Clinic.Review.step_trace' does not depend on any axioms\n'Reasoning.Clinic.Review.verdict' does not depend on any axioms\n'Reasoning.Clinic.Review.verdict_sound' depends on axioms: [propext]\n'Reasoning.Clinic.Sepsis.apply' does not depend on any axioms\n'Reasoning.Clinic.Sepsis.apply_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Clinic.Sepsis.apply_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Sepsis.conclusion' does not depend on any axioms\n'Reasoning.Clinic.Sepsis.guard' does not depend on any axioms\n'Reasoning.Clinic.Shock.apply' does not depend on any axioms\n'Reasoning.Clinic.Shock.apply_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Clinic.Shock.apply_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Shock.conclusion' does not depend on any axioms\n'Reasoning.Clinic.Shock.guard' does not depend on any axioms\n'Reasoning.Clinic.Sirs.apply' does not depend on any axioms\n'Reasoning.Clinic.Sirs.apply_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Clinic.Sirs.apply_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Sirs.conclusion' does not depend on any axioms\n'Reasoning.Clinic.Sirs.guard' does not depend on any axioms\n'Reasoning.Clinic.Tachycardia.apply' does not depend on any axioms\n'Reasoning.Clinic.Tachycardia.apply_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Clinic.Tachycardia.apply_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Tachycardia.conclusion' does not depend on any axioms\n'Reasoning.Clinic.Tachycardia.guard' does not depend on any axioms\n'Reasoning.Clinic.Tachycardic' does not depend on any axioms\n'Reasoning.Clinic.Tachypnea.apply' does not depend on any axioms\n'Reasoning.Clinic.Tachypnea.apply_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Clinic.Tachypnea.apply_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Tachypnea.conclusion' does not depend on any axioms\n'Reasoning.Clinic.Tachypnea.guard' does not depend on any axioms\n'Reasoning.Clinic.Tachypneic' does not depend on any axioms\n'Reasoning.Clinic.Triage' does not depend on any axioms\n'Reasoning.Clinic.Triage.Ledger' does not depend on any axioms\n'Reasoning.Clinic.Triage.Run' does not depend on any axioms\n'Reasoning.Clinic.Triage.Step' does not depend on any axioms\n'Reasoning.Clinic.Triage.accept' does not depend on any axioms\n'Reasoning.Clinic.Triage.accept_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Triage.account' does not depend on any axioms\n'Reasoning.Clinic.Triage.answer' does not depend on any axioms\n'Reasoning.Clinic.Triage.attempts' does not depend on any axioms\n'Reasoning.Clinic.Triage.conclude' does not depend on any axioms\n'Reasoning.Clinic.Triage.conclude_accept' does not depend on any axioms\n'Reasoning.Clinic.Triage.conclude_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Triage.derivation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Triage.explained' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Triage.extract' does not depend on any axioms\n'Reasoning.Clinic.Triage.fire' does not depend on any axioms\n'Reasoning.Clinic.Triage.fire_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Clinic.Triage.fire_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Triage.firings_bounded' does not depend on any axioms\n'Reasoning.Clinic.Triage.follow' does not depend on any axioms\n'Reasoning.Clinic.Triage.follow_invariant' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Triage.iterations_bounded' does not depend on any axioms\n'Reasoning.Clinic.Triage.next' does not depend on any axioms\n'Reasoning.Clinic.Triage.next_preserves' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Triage.next_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Clinic.Triage.next_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Triage.observe' does not depend on any axioms\n'Reasoning.Clinic.Triage.replay' does not depend on any axioms\n'Reasoning.Clinic.Triage.replay_fire' does not depend on any axioms\n'Reasoning.Clinic.Triage.replay_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Triage.run' does not depend on any axioms\n'Reasoning.Clinic.Triage.run_state' does not depend on any axioms\n'Reasoning.Clinic.Triage.run_trace' does not depend on any axioms\n'Reasoning.Clinic.Triage.saturate' does not depend on any axioms\n'Reasoning.Clinic.Triage.saturate_derivation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Triage.saturate_invariant' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Triage.saturates' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Triage.select' does not depend on any axioms\n'Reasoning.Clinic.Triage.start' does not depend on any axioms\n'Reasoning.Clinic.Triage.step' does not depend on any axioms\n'Reasoning.Clinic.Triage.step_count' does not depend on any axioms\n'Reasoning.Clinic.Triage.step_fired' does not depend on any axioms\n'Reasoning.Clinic.Triage.step_none' does not depend on any axioms\n'Reasoning.Clinic.Triage.step_some' does not depend on any axioms\n'Reasoning.Clinic.Triage.step_trace' does not depend on any axioms\n'Reasoning.Clinic.Triage.verdict' does not depend on any axioms\n'Reasoning.Clinic.Triage.verdict_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.Vitals' does not depend on any axioms\n'Reasoning.Clinic.Warranted' does not depend on any axioms\n'Reasoning.Clinic.admitted_consistent' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.admitted_pending' depends on axioms: [propext, Quot.sound]\n'Reasoning.Clinic.consistent_preserved' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.dischargeCheck' does not depend on any axioms\n'Reasoning.Clinic.discharge_sound' depends on axioms: [propext]\n'Reasoning.Clinic.escalate_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Clinic.escalate_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.fever_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Clinic.fever_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.feverish' does not depend on any axioms\n'Reasoning.Clinic.hypotensive' does not depend on any axioms\n'Reasoning.Clinic.leukocytic' does not depend on any axioms\n'Reasoning.Clinic.leukocytosis_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Clinic.leukocytosis_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.recommendationCheck' does not depend on any axioms\n'Reasoning.Clinic.recommendation_complete' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.recommendation_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.sepsis_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Clinic.sepsis_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.shock_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Clinic.shock_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.sirs_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Clinic.sirs_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.tachycardia_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Clinic.tachycardia_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.tachycardic' does not depend on any axioms\n'Reasoning.Clinic.tachypnea_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Clinic.tachypnea_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Clinic.tachypneic' does not depend on any axioms\n","stdout_sha256":"d385d180f0ca2a66d16d21a13c5c0cb09098259b2c56ec20e64bef35d7d23d18","tool":"lean"} diff --git a/examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.Reasoning.Main.process.json b/examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.Reasoning.Main.process.json deleted file mode 100644 index 3e6e8fbcc..000000000 --- a/examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.Reasoning.Main.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.Reasoning.Main.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.Reasoning.Main","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Reasoning.Main.Cap' does not depend on any axioms\n'Reasoning.Main.Cap.Ledger' does not depend on any axioms\n'Reasoning.Main.Cap.Run' does not depend on any axioms\n'Reasoning.Main.Cap.Step' does not depend on any axioms\n'Reasoning.Main.Cap.accept' does not depend on any axioms\n'Reasoning.Main.Cap.accept_sound' depends on axioms: [propext, Quot.sound]\n'Reasoning.Main.Cap.account' does not depend on any axioms\n'Reasoning.Main.Cap.answer' does not depend on any axioms\n'Reasoning.Main.Cap.attempts' does not depend on any axioms\n'Reasoning.Main.Cap.conclude' does not depend on any axioms\n'Reasoning.Main.Cap.conclude_accept' does not depend on any axioms\n'Reasoning.Main.Cap.conclude_sound' depends on axioms: [propext, Quot.sound]\n'Reasoning.Main.Cap.derivation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Cap.explained' depends on axioms: [propext, Quot.sound]\n'Reasoning.Main.Cap.extract' does not depend on any axioms\n'Reasoning.Main.Cap.fire' does not depend on any axioms\n'Reasoning.Main.Cap.fire_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Cap.firings_bounded' does not depend on any axioms\n'Reasoning.Main.Cap.follow' does not depend on any axioms\n'Reasoning.Main.Cap.follow_invariant' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Cap.iterations_bounded' does not depend on any axioms\n'Reasoning.Main.Cap.next' does not depend on any axioms\n'Reasoning.Main.Cap.next_preserves' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Cap.next_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Cap.observe' does not depend on any axioms\n'Reasoning.Main.Cap.replay' does not depend on any axioms\n'Reasoning.Main.Cap.replay_fire' does not depend on any axioms\n'Reasoning.Main.Cap.replay_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Cap.run' does not depend on any axioms\n'Reasoning.Main.Cap.run_state' does not depend on any axioms\n'Reasoning.Main.Cap.run_trace' does not depend on any axioms\n'Reasoning.Main.Cap.saturate' does not depend on any axioms\n'Reasoning.Main.Cap.saturate_derivation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Cap.saturate_invariant' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Cap.select' does not depend on any axioms\n'Reasoning.Main.Cap.start' does not depend on any axioms\n'Reasoning.Main.Cap.step' does not depend on any axioms\n'Reasoning.Main.Cap.step_count' does not depend on any axioms\n'Reasoning.Main.Cap.step_fired' does not depend on any axioms\n'Reasoning.Main.Cap.step_none' does not depend on any axioms\n'Reasoning.Main.Cap.step_some' does not depend on any axioms\n'Reasoning.Main.Cap.step_trace' does not depend on any axioms\n'Reasoning.Main.Cap.verdict' does not depend on any axioms\n'Reasoning.Main.Cap.verdict_sound' depends on axioms: [propext, Quot.sound]\n'Reasoning.Main.Capped' does not depend on any axioms\n'Reasoning.Main.Ceiling.sound' depends on axioms: [propext]\n'Reasoning.Main.GatewayEvidence.gateway_safe' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.GatewayModel' does not depend on any axioms\n'Reasoning.Main.GatewayTriage' does not depend on any axioms\n'Reasoning.Main.Grade' does not depend on any axioms\n'Reasoning.Main.Grade.Ledger' does not depend on any axioms\n'Reasoning.Main.Grade.Run' does not depend on any axioms\n'Reasoning.Main.Grade.Step' does not depend on any axioms\n'Reasoning.Main.Grade.accept' does not depend on any axioms\n'Reasoning.Main.Grade.accept_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Grade.account' does not depend on any axioms\n'Reasoning.Main.Grade.answer' does not depend on any axioms\n'Reasoning.Main.Grade.attempts' does not depend on any axioms\n'Reasoning.Main.Grade.conclude' does not depend on any axioms\n'Reasoning.Main.Grade.conclude_accept' does not depend on any axioms\n'Reasoning.Main.Grade.conclude_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Grade.derivation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Grade.explained' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Grade.extract' does not depend on any axioms\n'Reasoning.Main.Grade.fire' does not depend on any axioms\n'Reasoning.Main.Grade.fire_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Main.Grade.fire_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Grade.firings_bounded' does not depend on any axioms\n'Reasoning.Main.Grade.follow' does not depend on any axioms\n'Reasoning.Main.Grade.follow_invariant' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Grade.follow_relation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Grade.iterations_bounded' does not depend on any axioms\n'Reasoning.Main.Grade.next' does not depend on any axioms\n'Reasoning.Main.Grade.next_preserves' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Grade.next_preserves_relation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Grade.next_progress' depends on axioms: [propext, Quot.sound]\n'Reasoning.Main.Grade.next_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Grade.observe' does not depend on any axioms\n'Reasoning.Main.Grade.replay' does not depend on any axioms\n'Reasoning.Main.Grade.replay_fire' does not depend on any axioms\n'Reasoning.Main.Grade.replay_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Grade.run' does not depend on any axioms\n'Reasoning.Main.Grade.run_relation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Grade.run_state' does not depend on any axioms\n'Reasoning.Main.Grade.run_trace' does not depend on any axioms\n'Reasoning.Main.Grade.saturate' does not depend on any axioms\n'Reasoning.Main.Grade.saturate_derivation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Grade.saturate_invariant' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Grade.saturate_relation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Grade.saturates' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Grade.select' does not depend on any axioms\n'Reasoning.Main.Grade.start' does not depend on any axioms\n'Reasoning.Main.Grade.step' does not depend on any axioms\n'Reasoning.Main.Grade.step_count' does not depend on any axioms\n'Reasoning.Main.Grade.step_fired' does not depend on any axioms\n'Reasoning.Main.Grade.step_none' does not depend on any axioms\n'Reasoning.Main.Grade.step_some' does not depend on any axioms\n'Reasoning.Main.Grade.step_trace' does not depend on any axioms\n'Reasoning.Main.Grade.verdict' does not depend on any axioms\n'Reasoning.Main.Grade.verdict_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.Graded' does not depend on any axioms\n'Reasoning.Main.Guaranteed' does not depend on any axioms\n'Reasoning.Main.Related' does not depend on any axioms\n'Reasoning.Main.Scale.sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.cap_correct' depends on axioms: [propext, Quot.sound]\n'Reasoning.Main.cappedCheck' does not depend on any axioms\n'Reasoning.Main.capped_sound' depends on axioms: [propext]\n'Reasoning.Main.doseLevel' does not depend on any axioms\n'Reasoning.Main.dose_exhausted' does not depend on any axioms\n'Reasoning.Main.dose_exhausted_ledger' does not depend on any axioms\n'Reasoning.Main.dose_found' does not depend on any axioms\n'Reasoning.Main.dose_ledger' does not depend on any axioms\n'Reasoning.Main.gatewayLevel' does not depend on any axioms\n'Reasoning.Main.gateway_level' does not depend on any axioms\n'Reasoning.Main.gateway_safe' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.gradeLevel' does not depend on any axioms\n'Reasoning.Main.grade_admitted' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.grade_correct' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.grade_ledger' does not depend on any axioms\n'Reasoning.Main.grade_pending' depends on axioms: [propext, Quot.sound]\n'Reasoning.Main.grade_shock' does not depend on any axioms\n'Reasoning.Main.grade_well_ledger' does not depend on any axioms\n'Reasoning.Main.gradedCheck' does not depend on any axioms\n'Reasoning.Main.graded_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.planLeft' depends on axioms: [propext]\n'Reasoning.Main.plan_found' depends on axioms: [propext]\n'Reasoning.Main.plan_frontier' depends on axioms: [propext]\n'Reasoning.Main.plan_ledger' depends on axioms: [propext]\n'Reasoning.Main.plan_unsolved' depends on axioms: [propext]\n'Reasoning.Main.plan_unsolved_ledger' depends on axioms: [propext]\n'Reasoning.Main.refund_drained' does not depend on any axioms\n'Reasoning.Main.refund_ledger' does not depend on any axioms\n'Reasoning.Main.refund_unsolved' does not depend on any axioms\n'Reasoning.Main.refund_unsolved_ledger' does not depend on any axioms\n'Reasoning.Main.related_admitted' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.related_preserved' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Main.review_exhausted' does not depend on any axioms\n'Reasoning.Main.review_ledger' does not depend on any axioms\n'Reasoning.Main.review_rejected' does not depend on any axioms\n'Reasoning.Main.review_rejected_ledger' does not depend on any axioms\n'Reasoning.Main.screenDose' does not depend on any axioms\n'Reasoning.Main.screen_found' does not depend on any axioms\n'Reasoning.Main.screen_ledger' does not depend on any axioms\n'Reasoning.Main.screen_truncated' does not depend on any axioms\n'Reasoning.Main.screen_truncated_ledger' does not depend on any axioms\n'Reasoning.Main.screen_unsolved_ledger' does not depend on any axioms\n'Reasoning.Main.spendLeft' does not depend on any axioms\n'Reasoning.Main.spend_drained' does not depend on any axioms\n'Reasoning.Main.spend_ledger' does not depend on any axioms\n'Reasoning.Main.triageLevel' does not depend on any axioms\n'Reasoning.Main.triageSteps' does not depend on any axioms\n'Reasoning.Main.triage_forged' does not depend on any axioms\n'Reasoning.Main.triage_inapplicable' does not depend on any axioms\n'Reasoning.Main.triage_iterations' does not depend on any axioms\n'Reasoning.Main.triage_ledger' does not depend on any axioms\n'Reasoning.Main.triage_level' does not depend on any axioms\n'Reasoning.Main.triage_replays' does not depend on any axioms\n'Reasoning.Main.triage_shock' does not depend on any axioms\n'Reasoning.Main.triage_well' does not depend on any axioms\n'Reasoning.Main.triage_well_ledger' does not depend on any axioms\n","stdout_sha256":"13bfab88bf1e8f71fc26deed8cf04a2a08de1934d83603a6cc29cf959867360f","tool":"lean"} diff --git a/examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.Reasoning.Planner.process.json b/examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.Reasoning.Planner.process.json deleted file mode 100644 index 7edded1f4..000000000 --- a/examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.Reasoning.Planner.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.Reasoning.Planner.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.Reasoning.Planner","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Reasoning.Planner.Anywhere.sound' depends on axioms: [propext]\n'Reasoning.Planner.EmptyB.apply' does not depend on any axioms\n'Reasoning.Planner.EmptyB.apply_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.EmptyB.conclusion' does not depend on any axioms\n'Reasoning.Planner.EmptyB.guard' does not depend on any axioms\n'Reasoning.Planner.FillA.apply' does not depend on any axioms\n'Reasoning.Planner.FillA.apply_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.FillA.conclusion' does not depend on any axioms\n'Reasoning.Planner.FillA.guard' does not depend on any axioms\n'Reasoning.Planner.Fits' does not depend on any axioms\n'Reasoning.Planner.Held' does not depend on any axioms\n'Reasoning.Planner.Inside.sound' depends on axioms: [propext]\n'Reasoning.Planner.Measured.sound' depends on axioms: [propext]\n'Reasoning.Planner.Measures' does not depend on any axioms\n'Reasoning.Planner.Moves' does not depend on any axioms\n'Reasoning.Planner.Plan' depends on axioms: [propext]\n'Reasoning.Planner.Plan.EmptyB.successors' does not depend on any axioms\n'Reasoning.Planner.Plan.EmptyB.successors_ok' does not depend on any axioms\n'Reasoning.Planner.Plan.FillA.successors' does not depend on any axioms\n'Reasoning.Planner.Plan.FillA.successors_ok' does not depend on any axioms\n'Reasoning.Planner.Plan.Ledger' does not depend on any axioms\n'Reasoning.Planner.Plan.Node' does not depend on any axioms\n'Reasoning.Planner.Plan.Pour.collect' does not depend on any axioms\n'Reasoning.Planner.Plan.Pour.successors' does not depend on any axioms\n'Reasoning.Planner.Plan.Pour.successors_ok' does not depend on any axioms\n'Reasoning.Planner.Plan.Search' does not depend on any axioms\n'Reasoning.Planner.Plan.Step' does not depend on any axioms\n'Reasoning.Planner.Plan.accept' does not depend on any axioms\n'Reasoning.Planner.Plan.accept_sound' depends on axioms: [propext]\n'Reasoning.Planner.Plan.answer' does not depend on any axioms\n'Reasoning.Planner.Plan.attempts' does not depend on any axioms\n'Reasoning.Planner.Plan.derivation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.Plan.expansions_bounded' depends on axioms: [propext]\n'Reasoning.Planner.Plan.explained' depends on axioms: [propext]\n'Reasoning.Planner.Plan.extend' does not depend on any axioms\n'Reasoning.Planner.Plan.extract' does not depend on any axioms\n'Reasoning.Planner.Plan.failure' does not depend on any axioms\n'Reasoning.Planner.Plan.fire' does not depend on any axioms\n'Reasoning.Planner.Plan.fire_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.Plan.follow' does not depend on any axioms\n'Reasoning.Planner.Plan.follow_invariant' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.Plan.fresh' depends on axioms: [propext]\n'Reasoning.Planner.Plan.fresh_ok' depends on axioms: [propext]\n'Reasoning.Planner.Plan.frontier_bounded' depends on axioms: [propext]\n'Reasoning.Planner.Plan.iterations_bounded' depends on axioms: [propext]\n'Reasoning.Planner.Plan.observe' does not depend on any axioms\n'Reasoning.Planner.Plan.replay' does not depend on any axioms\n'Reasoning.Planner.Plan.replay_fire' does not depend on any axioms\n'Reasoning.Planner.Plan.replay_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.Plan.run' depends on axioms: [propext]\n'Reasoning.Planner.Plan.searchStep' depends on axioms: [propext]\n'Reasoning.Planner.Plan.search_count' depends on axioms: [propext]\n'Reasoning.Planner.Plan.search_expanded' depends on axioms: [propext]\n'Reasoning.Planner.Plan.search_ok' depends on axioms: [propext]\n'Reasoning.Planner.Plan.search_peak' depends on axioms: [propext]\n'Reasoning.Planner.Plan.search_step' depends on axioms: [propext]\n'Reasoning.Planner.Plan.search_verify_growth' depends on axioms: [propext]\n'Reasoning.Planner.Plan.start' depends on axioms: [propext]\n'Reasoning.Planner.Plan.successors' does not depend on any axioms\n'Reasoning.Planner.Plan.successors_ok' does not depend on any axioms\n'Reasoning.Planner.Plan.verdict' depends on axioms: [propext]\n'Reasoning.Planner.Plan.verdict_sound' depends on axioms: [propext]\n'Reasoning.Planner.Plan.verifications_bounded' depends on axioms: [propext]\n'Reasoning.Planner.PlanFit' depends on axioms: [propext]\n'Reasoning.Planner.PlanFit.EmptyB.successors' does not depend on any axioms\n'Reasoning.Planner.PlanFit.EmptyB.successors_ok' does not depend on any axioms\n'Reasoning.Planner.PlanFit.FillA.successors' does not depend on any axioms\n'Reasoning.Planner.PlanFit.FillA.successors_ok' does not depend on any axioms\n'Reasoning.Planner.PlanFit.Ledger' does not depend on any axioms\n'Reasoning.Planner.PlanFit.Node' does not depend on any axioms\n'Reasoning.Planner.PlanFit.Pour.collect' does not depend on any axioms\n'Reasoning.Planner.PlanFit.Pour.successors' does not depend on any axioms\n'Reasoning.Planner.PlanFit.Pour.successors_ok' does not depend on any axioms\n'Reasoning.Planner.PlanFit.Search' does not depend on any axioms\n'Reasoning.Planner.PlanFit.Step' does not depend on any axioms\n'Reasoning.Planner.PlanFit.accept' does not depend on any axioms\n'Reasoning.Planner.PlanFit.accept_sound' depends on axioms: [propext, Quot.sound]\n'Reasoning.Planner.PlanFit.answer' does not depend on any axioms\n'Reasoning.Planner.PlanFit.attempts' does not depend on any axioms\n'Reasoning.Planner.PlanFit.derivation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.PlanFit.expansions_bounded' depends on axioms: [propext]\n'Reasoning.Planner.PlanFit.explained' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.PlanFit.extend' does not depend on any axioms\n'Reasoning.Planner.PlanFit.extract' does not depend on any axioms\n'Reasoning.Planner.PlanFit.failure' does not depend on any axioms\n'Reasoning.Planner.PlanFit.fire' does not depend on any axioms\n'Reasoning.Planner.PlanFit.fire_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.PlanFit.follow' does not depend on any axioms\n'Reasoning.Planner.PlanFit.follow_invariant' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.PlanFit.fresh' depends on axioms: [propext]\n'Reasoning.Planner.PlanFit.fresh_ok' depends on axioms: [propext]\n'Reasoning.Planner.PlanFit.frontier_bounded' depends on axioms: [propext]\n'Reasoning.Planner.PlanFit.iterations_bounded' depends on axioms: [propext]\n'Reasoning.Planner.PlanFit.observe' does not depend on any axioms\n'Reasoning.Planner.PlanFit.replay' does not depend on any axioms\n'Reasoning.Planner.PlanFit.replay_fire' does not depend on any axioms\n'Reasoning.Planner.PlanFit.replay_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.PlanFit.run' depends on axioms: [propext]\n'Reasoning.Planner.PlanFit.searchStep' depends on axioms: [propext]\n'Reasoning.Planner.PlanFit.search_count' depends on axioms: [propext]\n'Reasoning.Planner.PlanFit.search_expanded' depends on axioms: [propext]\n'Reasoning.Planner.PlanFit.search_ok' depends on axioms: [propext]\n'Reasoning.Planner.PlanFit.search_peak' depends on axioms: [propext]\n'Reasoning.Planner.PlanFit.search_step' depends on axioms: [propext]\n'Reasoning.Planner.PlanFit.search_verify_growth' depends on axioms: [propext]\n'Reasoning.Planner.PlanFit.start' depends on axioms: [propext]\n'Reasoning.Planner.PlanFit.successors' does not depend on any axioms\n'Reasoning.Planner.PlanFit.successors_ok' does not depend on any axioms\n'Reasoning.Planner.PlanFit.verdict' depends on axioms: [propext]\n'Reasoning.Planner.PlanFit.verdict_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.PlanFit.verifications_bounded' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitR' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitR.EmptyB.successors' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.EmptyB.successors_ok' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.FillA.successors' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.FillA.successors_ok' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.Ledger' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.Node' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.Pour.collect' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.Pour.successors' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.Pour.successors_ok' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.Search' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.Step' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.accept' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.accept_sound' depends on axioms: [propext, Quot.sound]\n'Reasoning.Planner.PlanFitR.answer' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.attempts' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.derivation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.PlanFitR.expansions_bounded' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitR.explained' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.PlanFitR.extend' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.extract' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.failure' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.fire' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.fire_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.PlanFitR.follow' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.follow_invariant' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.PlanFitR.follow_relation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.PlanFitR.fresh' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitR.fresh_ok' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitR.frontier_bounded' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitR.iterations_bounded' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitR.observe' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.replay' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.replay_fire' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.replay_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.PlanFitR.run' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitR.searchStep' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitR.search_count' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitR.search_expanded' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitR.search_ok' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitR.search_peak' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitR.search_step' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitR.search_verify_growth' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitR.start' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitR.successors' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.successors_ok' does not depend on any axioms\n'Reasoning.Planner.PlanFitR.verdict' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitR.verdict_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.PlanFitR.verifications_bounded' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitU' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitU.EmptyB.successors' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.EmptyB.successors_ok' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.FillA.successors' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.FillA.successors_ok' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.Ledger' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.Node' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.Pour.collect' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.Pour.successors' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.Pour.successors_ok' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.Search' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.Step' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.accept' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.accept_sound' depends on axioms: [propext, Quot.sound]\n'Reasoning.Planner.PlanFitU.answer' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.attempts' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.derivation' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.PlanFitU.expansions_bounded' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitU.explained' depends on axioms: [propext, Quot.sound]\n'Reasoning.Planner.PlanFitU.extend' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.extract' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.failure' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.fire' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.fire_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.PlanFitU.follow' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.follow_invariant' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.PlanFitU.fresh' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitU.fresh_ok' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitU.frontier_bounded' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitU.iterations_bounded' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitU.observe' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.replay' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.replay_fire' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.replay_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.PlanFitU.run' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitU.searchStep' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitU.search_count' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitU.search_expanded' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitU.search_ok' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitU.search_peak' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitU.search_step' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitU.search_verify_growth' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitU.start' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitU.successors' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.successors_ok' does not depend on any axioms\n'Reasoning.Planner.PlanFitU.verdict' depends on axioms: [propext]\n'Reasoning.Planner.PlanFitU.verdict_sound' depends on axioms: [propext, Quot.sound]\n'Reasoning.Planner.PlanFitU.verifications_bounded' depends on axioms: [propext]\n'Reasoning.Planner.Pour.apply' does not depend on any axioms\n'Reasoning.Planner.Pour.apply_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.Pour.candidates' does not depend on any axioms\n'Reasoning.Planner.Pour.conclusion' does not depend on any axioms\n'Reasoning.Planner.Pour.guard' does not depend on any axioms\n'Reasoning.Planner.Pouring.preserves' does not depend on any axioms\n'Reasoning.Planner.Whole' does not depend on any axioms\n'Reasoning.Planner.Within' does not depend on any axioms\n'Reasoning.Planner.empty_jugs_fit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.emptyb_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.filla_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.fits_kept' does not depend on any axioms\n'Reasoning.Planner.held_initial' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.held_preserved' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.measuresCheck' does not depend on any axioms\n'Reasoning.Planner.measures_sound' depends on axioms: [propext]\n'Reasoning.Planner.plan_fit_correct' depends on axioms: [propext, Quot.sound]\n'Reasoning.Planner.plan_held_correct' depends on axioms: [propext, Quot.sound]\n'Reasoning.Planner.plan_whole_correct' depends on axioms: [propext, Quot.sound]\n'Reasoning.Planner.pour_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'Reasoning.Planner.wholeCheck' does not depend on any axioms\n'Reasoning.Planner.whole_sound' depends on axioms: [propext]\n'Reasoning.Planner.withinCheck' does not depend on any axioms\n'Reasoning.Planner.within_sound' depends on axioms: [propext]\n","stdout_sha256":"1bde3cc2a8f61dcfb844a885ccd0a1c0ee853cf3e237d0038b10dd7f015cf6f3","tool":"lean"} diff --git a/examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.Reasoning.Screening.process.json b/examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.Reasoning.Screening.process.json deleted file mode 100644 index 98abaf60b..000000000 --- a/examples/reasoning/expected/verify/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.Reasoning.Screening.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.Reasoning.Screening.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A7b45b58d681c076cfd69727310b65f3f.Reasoning.Screening","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Reasoning.Screening.Dose' does not depend on any axioms\n'Reasoning.Screening.Dose.Ledger' does not depend on any axioms\n'Reasoning.Screening.Dose.Step' does not depend on any axioms\n'Reasoning.Screening.Dose.Trial' does not depend on any axioms\n'Reasoning.Screening.Dose.answer' does not depend on any axioms\n'Reasoning.Screening.Dose.candidates' does not depend on any axioms\n'Reasoning.Screening.Dose.explained' depends on axioms: [propext]\n'Reasoning.Screening.Dose.failure' does not depend on any axioms\n'Reasoning.Screening.Dose.run' does not depend on any axioms\n'Reasoning.Screening.Dose.run_sound' depends on axioms: [propext]\n'Reasoning.Screening.Dose.try' does not depend on any axioms\n'Reasoning.Screening.Dose.try_count' does not depend on any axioms\n'Reasoning.Screening.Dose.try_sound' depends on axioms: [propext]\n'Reasoning.Screening.Dose.verdict' does not depend on any axioms\n'Reasoning.Screening.Dose.verdict_sound' depends on axioms: [propext]\n'Reasoning.Screening.Dose.verifications_bounded' does not depend on any axioms\n'Reasoning.Screening.Dose.verify' does not depend on any axioms\n'Reasoning.Screening.Dose.verify_sound' depends on axioms: [propext]\n'Reasoning.Screening.DoseCandidates' does not depend on any axioms\n'Reasoning.Screening.DoseContract.postcondition_sound' depends on axioms: [propext]\n'Reasoning.Screening.DoseModel' does not depend on any axioms\n'Reasoning.Screening.Propose.apply' does not depend on any axioms\n'Reasoning.Screening.Propose.apply_sound' depends on axioms: [propext]\n'Reasoning.Screening.Propose.candidates' does not depend on any axioms\n'Reasoning.Screening.Propose.conclusion' does not depend on any axioms\n'Reasoning.Screening.Propose.guard' does not depend on any axioms\n'Reasoning.Screening.Proposed' does not depend on any axioms\n'Reasoning.Screening.Safe' does not depend on any axioms\n'Reasoning.Screening.SafeDose.sound' depends on axioms: [propext]\n'Reasoning.Screening.Screen' does not depend on any axioms\n'Reasoning.Screening.Screen.Ledger' does not depend on any axioms\n'Reasoning.Screening.Screen.Node' does not depend on any axioms\n'Reasoning.Screening.Screen.Propose.collect' does not depend on any axioms\n'Reasoning.Screening.Screen.Propose.successors' does not depend on any axioms\n'Reasoning.Screening.Screen.Propose.successors_ok' does not depend on any axioms\n'Reasoning.Screening.Screen.Search' does not depend on any axioms\n'Reasoning.Screening.Screen.Step' does not depend on any axioms\n'Reasoning.Screening.Screen.accept' does not depend on any axioms\n'Reasoning.Screening.Screen.accept_sound' depends on axioms: [propext]\n'Reasoning.Screening.Screen.answer' does not depend on any axioms\n'Reasoning.Screening.Screen.attempts' does not depend on any axioms\n'Reasoning.Screening.Screen.derivation' depends on axioms: [propext]\n'Reasoning.Screening.Screen.expansions_bounded' does not depend on any axioms\n'Reasoning.Screening.Screen.explained' depends on axioms: [propext]\n'Reasoning.Screening.Screen.extend' does not depend on any axioms\n'Reasoning.Screening.Screen.extract' does not depend on any axioms\n'Reasoning.Screening.Screen.failure' does not depend on any axioms\n'Reasoning.Screening.Screen.fire' does not depend on any axioms\n'Reasoning.Screening.Screen.fire_sound' depends on axioms: [propext]\n'Reasoning.Screening.Screen.follow' does not depend on any axioms\n'Reasoning.Screening.Screen.frontier_bounded' does not depend on any axioms\n'Reasoning.Screening.Screen.iterations_bounded' does not depend on any axioms\n'Reasoning.Screening.Screen.observe' does not depend on any axioms\n'Reasoning.Screening.Screen.replay' does not depend on any axioms\n'Reasoning.Screening.Screen.replay_fire' does not depend on any axioms\n'Reasoning.Screening.Screen.replay_sound' depends on axioms: [propext]\n'Reasoning.Screening.Screen.run' does not depend on any axioms\n'Reasoning.Screening.Screen.searchStep' does not depend on any axioms\n'Reasoning.Screening.Screen.search_count' does not depend on any axioms\n'Reasoning.Screening.Screen.search_expanded' does not depend on any axioms\n'Reasoning.Screening.Screen.search_ok' does not depend on any axioms\n'Reasoning.Screening.Screen.search_peak' does not depend on any axioms\n'Reasoning.Screening.Screen.search_step' does not depend on any axioms\n'Reasoning.Screening.Screen.search_verify_growth' does not depend on any axioms\n'Reasoning.Screening.Screen.start' does not depend on any axioms\n'Reasoning.Screening.Screen.successors' does not depend on any axioms\n'Reasoning.Screening.Screen.successors_ok' does not depend on any axioms\n'Reasoning.Screening.Screen.verdict' does not depend on any axioms\n'Reasoning.Screening.Screen.verdict_sound' depends on axioms: [propext]\n'Reasoning.Screening.Screen.verifications_bounded' does not depend on any axioms\n'Reasoning.Screening.Short' does not depend on any axioms\n'Reasoning.Screening.propose_sound' depends on axioms: [propext]\n'Reasoning.Screening.safeCheck' does not depend on any axioms\n'Reasoning.Screening.safe_sound' depends on axioms: [propext]\n'Reasoning.Screening.shortCheck' does not depend on any axioms\n'Reasoning.Screening.short_sound' depends on axioms: [propext]\n","stdout_sha256":"cf0950a5981076ee37dfdf563d46105dc9dbe4ef7ca4ebdbbbc5af2f23a3410b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/extract/LexLeanExtract.X7b45b58d681c076cfd69727310b65f3f.lean b/examples/reasoning/expected/verify/extract/LexLeanExtract.X02b315b69b8881ec6f91f78f9b12c608.lean similarity index 100% rename from examples/reasoning/expected/verify/extract/LexLeanExtract.X7b45b58d681c076cfd69727310b65f3f.lean rename to examples/reasoning/expected/verify/extract/LexLeanExtract.X02b315b69b8881ec6f91f78f9b12c608.lean diff --git a/examples/reasoning/expected/verify/extract/process.json b/examples/reasoning/expected/verify/extract/process.json index d8ee4897a..5bd0fa215 100644 --- a/examples/reasoning/expected/verify/extract/process.json +++ b/examples/reasoning/expected/verify/extract/process.json @@ -1 +1 @@ -{"argv":["env","lean","$STAGING/extract/LexLeanExtract.X7b45b58d681c076cfd69727310b65f3f.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanExtract.X7b45b58d681c076cfd69727310b65f3f","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"{\"spec\":\"lexlean/lcnf-extraction/2\",\"lean\":{\"version\":\"4.32.1\",\"githash\":\"f054605aea4b840552cca2e725580bffd1e1b704\"},\"roots\":[\"Reasoning.Main.triageLevel\",\"Reasoning.Main.gatewayLevel\",\"Reasoning.Main.triageSteps\",\"Reasoning.Main.planLeft\",\"Reasoning.Main.doseLevel\",\"Reasoning.Main.gradeLevel\",\"Reasoning.Main.screenDose\",\"Reasoning.Main.spendLeft\"],\"constants\":[{\"name\":\"LexLeanCollections.Key\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanCollections.Key.mk\",\"parameters\":1,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}}}}]}},{\"name\":\"LexLeanCollections.containsElement\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"List\",\"LexLeanCollections.Key\",\"List.brecOn\",\"LexLeanCollections.containsElement._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}}}},\"parameters\":[{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"borrow\":false},{\"id\":\"_uniq.62\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},\"borrow\":false},{\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.71\",\"parameters\":[{\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.70\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.71\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.115\",\"parameters\":[{\"id\":\"_uniq.84\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},\"borrow\":false},{\"id\":\"_uniq.85\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.71\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.94\",\"parameters\":[{\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.93\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.94\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.99\",\"parameters\":[{\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.containsElement\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},{\"kind\":\"fvar\",\"id\":\"_uniq.85\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.98\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.99\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanCollections.Key\",\"index\":0,\"value\":\"_uniq.61\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.106\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Ordering\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.107\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Ordering.lt\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.90\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.109\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Ordering.eq\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.110\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.111\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.95\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.110\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.111\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Ordering.gt\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.113\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.100\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.112\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.113\"}}}}]}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.115\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.63\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.72\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.125\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.126\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.127\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},\"borrow\":false},{\"id\":\"_uniq.128\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.129\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.116\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.127\"},{\"kind\":\"fvar\",\"id\":\"_uniq.128\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.129\"}}}]}}}}}},\"uses\":[\"Bool\",\"List\",\"Ordering\",\"PUnit\",\"Bool.false\",\"Bool.true\",\"LexLeanCollections.Key\",\"LexLeanCollections.containsElement\",\"List.cons\",\"List.nil\",\"Ordering.eq\",\"Ordering.gt\",\"Ordering.lt\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.insertElement\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"LexLeanCollections.Key\",\"List.brecOn\",\"LexLeanCollections.insertElement._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}},\"parameters\":[{\"id\":\"_uniq.62\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"borrow\":false},{\"id\":\"_uniq.64\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},\"borrow\":false},{\"id\":\"_uniq.65\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.74\",\"parameters\":[{\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.72\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.73\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.74\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.123\",\"parameters\":[{\"id\":\"_uniq.87\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},\"borrow\":false},{\"id\":\"_uniq.88\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.96\",\"parameters\":[{\"id\":\"_uniq.93\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"},{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.94\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.95\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.96\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.101\",\"parameters\":[{\"id\":\"_uniq.99\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"},{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.100\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.101\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.107\",\"parameters\":[{\"id\":\"_uniq.104\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.insertElement\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"},{\"kind\":\"fvar\",\"id\":\"_uniq.105\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.106\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.107\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanCollections.Key\",\"index\":0,\"value\":\"_uniq.63\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.114\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Ordering\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"discriminant\":\"_uniq.115\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Ordering.lt\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.97\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.116\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.117\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Ordering.eq\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.118\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.102\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.118\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.119\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Ordering.gt\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.120\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.121\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.108\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.120\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.121\"}}}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.124\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.123\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"discriminant\":\"_uniq.65\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.75\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.133\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.134\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.135\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},\"borrow\":false},{\"id\":\"_uniq.136\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.137\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.124\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.135\"},{\"kind\":\"fvar\",\"id\":\"_uniq.136\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.137\"}}}]}}}}}},\"uses\":[\"List\",\"Ordering\",\"PUnit\",\"LexLeanCollections.Key\",\"LexLeanCollections.insertElement\",\"List.cons\",\"List.nil\",\"Ordering.eq\",\"Ordering.gt\",\"Ordering.lt\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.instKeyNat\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOrdNat\",\"Ord.compare\",\"LexLeanCollections.Key.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.1\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Ord\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instOrdNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Ord\",\"index\":0,\"value\":\"_uniq.1\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.15\"}}}}},\"uses\":[\"Nat\",\"Ord\",\"Ordering\",\"instOrdNat\",\"LexLeanCollections.Key\",\"LexLeanCollections.Key.mk\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.instKeyProd\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Ordering\",\"Prod\",\"Unit\",\"LexLeanCollections.Key\",\"Prod.fst\",\"Prod.snd\",\"LexLeanCollections.Key.compare\",\"LexLeanCollections.Key.mk\",\"LexLeanCollections.compareCodes.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3},{\"kind\":\"bvar\",\"index\":2}]}]}}}}},\"parameters\":[{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"borrow\":false},{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.82\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"borrow\":false},{\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.56\",\"parameters\":[{\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanCollections.Key\",\"index\":0,\"value\":\"_uniq.37\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.44\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.45\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.52\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.55\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.62\",\"parameters\":[{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.61\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.62\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanCollections.Key\",\"index\":0,\"value\":\"_uniq.36\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.44\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.45\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.69\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.70\"},{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Ordering\",\"result_type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"discriminant\":\"_uniq.72\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Ordering.eq\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.57\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.74\"}}}},{\"kind\":\"default\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.79\",\"parameters\":[{\"id\":\"_uniq.77\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.63\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.72\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.78\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.79\",\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"any\"}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.80\"}}}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.82\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.83\"}}}},\"uses\":[\"Ordering\",\"PUnit\",\"Prod\",\"LexLeanCollections.Key\",\"Ordering.eq\",\"Unit.unit\",\"LexLeanCollections.Key.mk\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.iterateUntil\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Nat\",\"Option\",\"Prod\",\"Nat.brecOn\",\"LexLeanCollections.iterateUntil._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}}}}},\"parameters\":[{\"id\":\"_uniq.65\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.68\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]}},\"borrow\":false},{\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.79\",\"parameters\":[{\"id\":\"_uniq.76\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"},{\"kind\":\"fvar\",\"id\":\"_uniq.77\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.78\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.79\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.121\",\"parameters\":[{\"id\":\"_uniq.91\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.92\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.101\",\"parameters\":[{\"id\":\"_uniq.98\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.92\"},{\"kind\":\"fvar\",\"id\":\"_uniq.99\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.100\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.101\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.106\",\"parameters\":[{\"id\":\"_uniq.104\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.68\"},{\"kind\":\"fvar\",\"id\":\"_uniq.91\"},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.105\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.106\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.68\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"discriminant\":\"_uniq.115\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.102\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.116\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.117\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.118\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.107\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.118\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.119\"}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.121\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Nat\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"discriminant\":\"_uniq.69\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Nat.zero\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.128\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.80\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.128\"}}},{\"kind\":\"constructor\",\"constructor\":\"Nat.succ\",\"parameters\":[{\"id\":\"_uniq.129\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.130\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.122\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.129\"},{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.130\"}}}]}}}}}},\"uses\":[\"Bool\",\"Nat\",\"Option\",\"PUnit\",\"Prod\",\"Bool.false\",\"Bool.true\",\"LexLeanCollections.iterateUntil\",\"Nat.succ\",\"Nat.zero\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.listFold\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"List.foldl\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":2}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}}},\"parameters\":[{\"id\":\"_uniq.53\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}}},\"borrow\":false},{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},\"borrow\":false},{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},\"value\":{\"kind\":\"const\",\"name\":\"List.foldl\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.64\"}}},\"uses\":[\"List\",\"List.foldl\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.setContains\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"LexLeanCollections.Key\",\"LexLeanCollections.containsElement\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}}}},\"parameters\":[{\"id\":\"_uniq.19\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"borrow\":false},{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.containsElement\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.23\"}}},\"uses\":[\"Bool\",\"List\",\"LexLeanCollections.Key\",\"LexLeanCollections.containsElement\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.setInsert\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"LexLeanCollections.Key\",\"LexLeanCollections.insertElement\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}},\"parameters\":[{\"id\":\"_uniq.19\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"borrow\":false},{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.insertElement\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.23\"}}},\"uses\":[\"List\",\"LexLeanCollections.Key\",\"LexLeanCollections.insertElement\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.Appendable\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.Appendable.mk\",\"parameters\":1,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"bvar\",\"index\":2}}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}}}}]}},{\"name\":\"LexLeanRuntime.Lengthable\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.Lengthable.mk\",\"parameters\":1,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}}}}]}},{\"name\":\"LexLeanRuntime.append\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.Appendable.append\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}},\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"borrow\":false},{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"borrow\":false},{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Appendable\",\"index\":0,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.39\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.40\"}}}},\"uses\":[\"LexLeanRuntime.Appendable\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instAppendableList\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"List.append\",\"LexLeanRuntime.Appendable.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]}]}},\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"List.appendTR\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}}},\"uses\":[\"List\",\"LexLeanRuntime.Appendable\",\"List.appendTR\",\"LexLeanRuntime.Appendable.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instLengthableList\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"List.length\",\"LexLeanRuntime.Lengthable.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]}]}},\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"List.lengthTR\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.10\"}}}},\"uses\":[\"List\",\"Nat\",\"LexLeanRuntime.Lengthable\",\"List.lengthTR\",\"LexLeanRuntime.Lengthable.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.length\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.Lengthable.length\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}}},\"parameters\":[{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Lengthable\",\"index\":0,\"value\":\"_uniq.16\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.18\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.19\"}}}},\"uses\":[\"Nat\",\"LexLeanRuntime.Lengthable\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.multiply\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Mul\",\"instHMul\",\"HMul.hMul\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Mul\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}},\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Mul\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"borrow\":false},{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"borrow\":false},{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HMul\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instHMul\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HMul\",\"index\":0,\"value\":\"_uniq.39\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}}}},\"uses\":[\"HMul\",\"Mul\",\"instHMul\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.subtract\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Sub\",\"instHSub\",\"HSub.hSub\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}},\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"borrow\":false},{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"borrow\":false},{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HSub\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instHSub\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HSub\",\"index\":0,\"value\":\"_uniq.39\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}}}},\"uses\":[\"HSub\",\"Sub\",\"instHSub\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.Key.compare\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanCollections.Key\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.Key.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.compareCodes._sparseCasesOn_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Nat\",\"Ordering\",\"instOfNatNat\",\"Bool.false\",\"Eq.refl\",\"Nat.hasNotBit\",\"Nat.land\",\"Nat.ne_of_beq_eq_false\",\"Nat.shiftRight\",\"OfNat.ofNat\",\"Ordering.ctorIdx\",\"Ordering.eq\",\"Ordering.gt\",\"Ordering.lt\",\"Ordering.rec\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.compareCodes.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Ordering\",\"Unit\",\"Nat.hasNotBit\",\"Ordering.ctorIdx\",\"Ordering.eq\",\"Unit.unit\",\"LexLeanCollections.compareCodes._sparseCasesOn_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.containsElement._f\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"List\",\"Ordering\",\"Unit\",\"Bool.false\",\"Bool.true\",\"LexLeanCollections.Key\",\"List.below\",\"List.cons\",\"List.nil\",\"LexLeanCollections.Key.compare\",\"LexLeanCollections.insertElement.match_1\",\"LexLeanCollections.insertEntry.match_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.insertElement._f\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"List\",\"Ordering\",\"Unit\",\"LexLeanCollections.Key\",\"List.below\",\"List.cons\",\"List.nil\",\"LexLeanCollections.Key.compare\",\"LexLeanCollections.insertElement.match_1\",\"LexLeanCollections.insertEntry.match_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.insertElement.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Unit\",\"List.casesOn\",\"List.cons\",\"List.nil\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.insertEntry.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Ordering\",\"Unit\",\"Ordering.casesOn\",\"Ordering.eq\",\"Ordering.gt\",\"Ordering.lt\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.iterate.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Nat.casesOn\",\"Nat.succ\",\"OfNat.ofNat\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.iterateUntil._f\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Nat.below\",\"Nat.succ\",\"OfNat.ofNat\",\"Prod.mk\",\"LexLeanCollections.iterate.match_1\",\"LexLeanCollections.iterateUntil.match_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.iterateUntil.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Appendable.append\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Appendable\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Appendable.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Lengthable.length\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Lengthable\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Lengthable.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Budget.emptyCheck\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Nat.beq\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}}},\"parameters\":[{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},\"borrow\":false},{\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.20\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.22\"}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"instOfNatNat\",\"Nat.beq\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Chart\",\"kind\":\"inductive\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Reasoning.Clinic.Chart.mk\",\"parameters\":0,\"fields\":9,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}}}}}}}}}}}]}},{\"name\":\"Reasoning.Clinic.Triage\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"List\",\"Nat\",\"Prod\",\"Unit\",\"Bool.false\",\"Except.error\",\"Except.ok\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Triage.Run\",\"Reasoning.Clinic.Triage.Step\",\"Reasoning.Clinic.Triage.conclude\",\"Reasoning.Clinic.Triage.match_1\",\"Reasoning.Clinic.Triage.run\",\"Reasoning.Clinic.Triage.Run.state\",\"Reasoning.Clinic.Triage.Run.trace\",\"Reasoning.Clinic.Triage.account.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]}]}},\"parameters\":[{\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.run\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.45\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.100\",\"parameters\":[{\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.73\",\"parameters\":[{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.46\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Triage.Run\",\"index\":1,\"value\":\"_uniq.60\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.72\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.73\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.80\",\"parameters\":[{\"id\":\"_uniq.78\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.78\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.79\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.80\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.46\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Triage.Run\",\"index\":0,\"value\":\"_uniq.92\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.conclude\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.93\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Except\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]}]},\"discriminant\":\"_uniq.94\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Except.error\",\"parameters\":[{\"id\":\"_uniq.95\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.81\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.95\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.96\"}}},{\"kind\":\"constructor\",\"constructor\":\"Except.ok\",\"parameters\":[{\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.74\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.97\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.98\"}}}]}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.100\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.107\",\"parameters\":[{\"id\":\"_uniq.103\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.105\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.106\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.107\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.113\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.46\"},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]}]},\"discriminant\":\"_uniq.113\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.108\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.115\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.101\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.116\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.117\"}}}}]}}}}}}}}},\"uses\":[\"Bool\",\"Except\",\"List\",\"Nat\",\"PUnit\",\"Prod\",\"Bool.false\",\"Bool.true\",\"Except.error\",\"Except.ok\",\"Prod.mk\",\"Unit.unit\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Triage.Run\",\"Reasoning.Clinic.Triage.Step\",\"Reasoning.Clinic.Triage.conclude\",\"Reasoning.Clinic.Triage.run\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Vitals\",\"kind\":\"inductive\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Reasoning.Clinic.Vitals.mk\",\"parameters\":0,\"fields\":6,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]}}}}}}}}]}},{\"name\":\"Reasoning.Clinic.feverish\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Nat.blt\",\"OfNat.ofNat\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Vitals.temperature\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"380\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.8\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Vitals\",\"index\":0,\"value\":\"_uniq.6\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.11\"}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"instOfNatNat\",\"Nat.blt\",\"Reasoning.Clinic.Vitals\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.hypotensive\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Nat.blt\",\"OfNat.ofNat\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Vitals.systolic\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Vitals\",\"index\":4,\"value\":\"_uniq.6\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"90\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.9\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.11\"}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"instOfNatNat\",\"Nat.blt\",\"Reasoning.Clinic.Vitals\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.leukocytic\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Nat.blt\",\"OfNat.ofNat\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Vitals.whiteCells\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"12\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.8\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Vitals\",\"index\":3,\"value\":\"_uniq.6\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.11\"}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"instOfNatNat\",\"Nat.blt\",\"Reasoning.Clinic.Vitals\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.recommendationCheck\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Bool.and\",\"Bool.not\",\"Bool.or\",\"Nat.beq\",\"Nat.ble\",\"OfNat.ofNat\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.feverish\",\"Reasoning.Clinic.hypotensive\",\"Reasoning.Clinic.tachycardic\",\"Reasoning.Clinic.Vitals.infection\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.72\",\"parameters\":[{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.71\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.72\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.176\",\"parameters\":[{\"id\":\"_uniq.78\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.84\",\"parameters\":[{\"id\":\"_uniq.82\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.83\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.84\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.161\",\"parameters\":[{\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.72\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.141\",\"parameters\":[{\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.72\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.125\",\"parameters\":[{\"id\":\"_uniq.105\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.72\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.113\",\"parameters\":[{\"id\":\"_uniq.111\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.tachycardic\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.112\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.113\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.feverish\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.119\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.120\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.121\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.109\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.120\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.121\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.114\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.122\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.123\"}}}}]}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.125\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.131\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Vitals\",\"index\":5,\"value\":\"_uniq.63\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.132\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.132\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.133\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.135\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.131\"},{\"kind\":\"fvar\",\"id\":\"_uniq.134\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.135\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.137\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.100\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.136\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.137\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.138\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.139\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.126\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.138\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.139\"}}}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.142\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.141\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.147\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.hypotensive\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.154\",\"parameters\":[{\"id\":\"_uniq.152\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.153\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.not\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.152\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.153\"}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.160\",\"parameters\":[{\"id\":\"_uniq.158\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.159\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.142\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.158\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.154\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.159\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.157\",\"parameters\":[{\"id\":\"_uniq.155\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.156\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.91\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.155\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.154\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.156\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.147\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.148\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.157\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.148\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.150\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.160\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.150\"}]}}}]}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.162\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.161\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.167\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.168\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.167\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.169\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.168\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.170\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.169\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.170\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.171\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.172\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.162\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.171\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.172\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.173\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.174\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.85\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.173\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.174\"}}}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.177\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.176\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.182\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.183\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.182\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.184\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.183\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.185\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.184\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.185\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.186\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.187\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.73\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.186\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.187\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.188\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.189\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.177\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.188\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.189\"}}}}]}}}}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"PUnit\",\"instOfNatNat\",\"Bool.false\",\"Bool.not\",\"Bool.true\",\"Nat.beq\",\"Nat.ble\",\"Unit.unit\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.feverish\",\"Reasoning.Clinic.hypotensive\",\"Reasoning.Clinic.tachycardic\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.tachycardic\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Nat.blt\",\"OfNat.ofNat\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Vitals.heartRate\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"90\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.8\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Vitals\",\"index\":1,\"value\":\"_uniq.6\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.11\"}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"instOfNatNat\",\"Nat.blt\",\"Reasoning.Clinic.Vitals\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.tachypneic\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Nat.blt\",\"OfNat.ofNat\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Vitals.respiratoryRate\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"20\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.8\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Vitals\",\"index\":2,\"value\":\"_uniq.6\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.11\"}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"instOfNatNat\",\"Nat.blt\",\"Reasoning.Clinic.Vitals\"]},\"inductive\":null},{\"name\":\"Reasoning.Main.GatewayModel\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Vitals\",\"Reasoning.Main.GatewayTriage\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.GatewayTriage\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}},\"uses\":[\"Bool\",\"Except\",\"Nat\",\"Prod\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Main.GatewayTriage\"]},\"inductive\":null},{\"name\":\"Reasoning.Main.GatewayTriage\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Triage.verdict\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.verdict\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}},\"uses\":[\"Bool\",\"Except\",\"Nat\",\"Prod\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Triage.verdict\"]},\"inductive\":null},{\"name\":\"Reasoning.Main.doseLevel\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"Nat\",\"Prod\",\"instOfNatNat\",\"OfNat.ofNat\",\"Reasoning.Main.Grade.match_1\",\"Reasoning.Screening.Dose.verdict\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.32\",\"parameters\":[{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.32\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.41\",\"parameters\":[{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"9\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.39\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.40\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.41\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.verdict\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Except\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.53\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Except.error\",\"parameters\":[{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.42\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.55\"}}},{\"kind\":\"constructor\",\"constructor\":\"Except.ok\",\"parameters\":[{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.33\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}}]}}}}}}},\"uses\":[\"Bool\",\"Except\",\"Nat\",\"OfNat\",\"Prod\",\"instOfNatNat\",\"Except.error\",\"Except.ok\",\"Reasoning.Screening.Dose.verdict\"]},\"inductive\":null},{\"name\":\"Reasoning.Main.gatewayLevel\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"Nat\",\"Prod\",\"instOfNatNat\",\"OfNat.ofNat\",\"Reasoning.Main.GatewayModel\",\"Reasoning.Clinic.Vitals.mk\",\"Reasoning.Main.Grade.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}}}}}},\"parameters\":[{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.67\",\"parameters\":[{\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.66\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.67\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.76\",\"parameters\":[{\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"9\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.74\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.75\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.76\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.58\"},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.GatewayModel\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Except\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.89\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Except.error\",\"parameters\":[{\"id\":\"_uniq.90\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.77\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.90\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.91\"}}},{\"kind\":\"constructor\",\"constructor\":\"Except.ok\",\"parameters\":[{\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.68\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.93\"}}}]}}}}}}}},\"uses\":[\"Bool\",\"Except\",\"Nat\",\"OfNat\",\"Prod\",\"instOfNatNat\",\"Except.error\",\"Except.ok\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Main.GatewayModel\",\"Reasoning.Clinic.Vitals.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Main.gradeLevel\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"Nat\",\"Prod\",\"instOfNatNat\",\"OfNat.ofNat\",\"Reasoning.Clinic.Vitals.mk\",\"Reasoning.Main.Grade.match_1\",\"Reasoning.Main.Grade.verdict\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}}}}}},\"parameters\":[{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.67\",\"parameters\":[{\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.66\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.67\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.76\",\"parameters\":[{\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"9\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.74\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.75\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.76\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.58\"},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.verdict\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Except\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.89\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Except.error\",\"parameters\":[{\"id\":\"_uniq.90\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.77\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.90\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.91\"}}},{\"kind\":\"constructor\",\"constructor\":\"Except.ok\",\"parameters\":[{\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.68\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.93\"}}}]}}}}}}}},\"uses\":[\"Bool\",\"Except\",\"Nat\",\"OfNat\",\"Prod\",\"instOfNatNat\",\"Except.error\",\"Except.ok\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Vitals.mk\",\"Reasoning.Main.Grade.verdict\"]},\"inductive\":null},{\"name\":\"Reasoning.Main.planLeft\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"Nat\",\"Prod\",\"instOfNatNat\",\"OfNat.ofNat\",\"Prod.fst\",\"Reasoning.Main.planLeft.match_1\",\"Reasoning.Planner.Plan.verdict\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.33\",\"parameters\":[{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.31\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.32\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.33\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.42\",\"parameters\":[{\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"9\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.40\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.41\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.42\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.verdict\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Except\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.54\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Except.error\",\"parameters\":[{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.43\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.56\"}}},{\"kind\":\"constructor\",\"constructor\":\"Except.ok\",\"parameters\":[{\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.34\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.58\"}}}]}}}}}}},\"uses\":[\"Bool\",\"Except\",\"Nat\",\"OfNat\",\"Prod\",\"instOfNatNat\",\"Except.error\",\"Except.ok\",\"Reasoning.Planner.Plan.verdict\"]},\"inductive\":null},{\"name\":\"Reasoning.Main.screenDose\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"Nat\",\"Prod\",\"instOfNatNat\",\"OfNat.ofNat\",\"Reasoning.Main.Grade.match_1\",\"Reasoning.Screening.Screen.verdict\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.32\",\"parameters\":[{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.32\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.41\",\"parameters\":[{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"9\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.39\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.40\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.41\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.verdict\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Except\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.53\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Except.error\",\"parameters\":[{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.42\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.55\"}}},{\"kind\":\"constructor\",\"constructor\":\"Except.ok\",\"parameters\":[{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.33\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}}]}}}}}}},\"uses\":[\"Bool\",\"Except\",\"Nat\",\"OfNat\",\"Prod\",\"instOfNatNat\",\"Except.error\",\"Except.ok\",\"Reasoning.Screening.Screen.verdict\"]},\"inductive\":null},{\"name\":\"Reasoning.Main.spendLeft\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"Nat\",\"Prod\",\"instOfNatNat\",\"OfNat.ofNat\",\"Prod.mk\",\"Reasoning.Budget.Spend.verdict\",\"Reasoning.Main.Grade.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.32\",\"parameters\":[{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.32\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.41\",\"parameters\":[{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"9\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.39\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.40\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.41\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.verdict\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Except\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.54\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Except.error\",\"parameters\":[{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.42\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.56\"}}},{\"kind\":\"constructor\",\"constructor\":\"Except.ok\",\"parameters\":[{\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.33\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.58\"}}}]}}}}}}}},\"uses\":[\"Bool\",\"Except\",\"Nat\",\"OfNat\",\"Prod\",\"instOfNatNat\",\"Except.error\",\"Except.ok\",\"Prod.mk\",\"Reasoning.Budget.Spend.verdict\"]},\"inductive\":null},{\"name\":\"Reasoning.Main.triageLevel\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"Nat\",\"Prod\",\"instOfNatNat\",\"OfNat.ofNat\",\"Reasoning.Clinic.Triage.verdict\",\"Reasoning.Clinic.Vitals.mk\",\"Reasoning.Main.Grade.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}}}}}},\"parameters\":[{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.67\",\"parameters\":[{\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.66\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.67\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.76\",\"parameters\":[{\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"9\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.74\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.75\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.76\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.58\"},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.verdict\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.94\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Except\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.95\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Except.error\",\"parameters\":[{\"id\":\"_uniq.96\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.77\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.96\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.97\"}}},{\"kind\":\"constructor\",\"constructor\":\"Except.ok\",\"parameters\":[{\"id\":\"_uniq.98\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.68\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.98\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.99\"}}}]}}}}}}}},\"uses\":[\"Bool\",\"Except\",\"Nat\",\"OfNat\",\"Prod\",\"instOfNatNat\",\"Except.error\",\"Except.ok\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Triage.verdict\",\"Reasoning.Clinic.Vitals.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Main.triageSteps\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"List\",\"Nat\",\"Prod\",\"instOfNatNat\",\"LexLeanRuntime.instLengthableList\",\"LexLeanRuntime.length\",\"OfNat.ofNat\",\"Prod.snd\",\"Reasoning.Clinic.Triage\",\"Reasoning.Clinic.Triage.Step\",\"Reasoning.Clinic.Vitals.mk\",\"Reasoning.Main.triageSteps.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}}}}}},\"parameters\":[{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.70\",\"parameters\":[{\"id\":\"_uniq.66\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.66\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.67\"},{\"kind\":\"fvar\",\"id\":\"_uniq.68\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.69\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.70\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.79\",\"parameters\":[{\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.77\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.78\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.79\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.58\"},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.91\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Except\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.92\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Except.error\",\"parameters\":[{\"id\":\"_uniq.93\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.80\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.93\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.94\"}}},{\"kind\":\"constructor\",\"constructor\":\"Except.ok\",\"parameters\":[{\"id\":\"_uniq.95\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.71\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.95\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.96\"}}}]}}}}}}}},\"uses\":[\"Bool\",\"Except\",\"List\",\"Nat\",\"OfNat\",\"Prod\",\"instOfNatNat\",\"Except.error\",\"Except.ok\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableList\",\"LexLeanRuntime.length\",\"Reasoning.Clinic.Triage\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Triage.Step\",\"Reasoning.Clinic.Vitals.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"List\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"Except.error\",\"Except.ok\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"Reasoning.Planner.Plan.Node\",\"Reasoning.Planner.Plan.Search\",\"Reasoning.Planner.Plan.Step\",\"Reasoning.Planner.Plan.failure\",\"Reasoning.Planner.Plan.run\",\"Reasoning.Planner.Plan.Node.trace\",\"Reasoning.Planner.Plan.Search.found\",\"Reasoning.Planner.Plan.Search.truncated\",\"Reasoning.Planner.Plan.searchStep.match_5\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}]}]}},\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.run\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.31\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.44\",\"parameters\":[{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.36\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.36\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Node\",\"index\":1,\"value\":\"_uniq.38\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.43\"}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.44\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.60\",\"parameters\":[{\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.32\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.32\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Search\",\"index\":3,\"value\":\"_uniq.51\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.failure\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.59\"}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.60\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.32\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Search\",\"index\":2,\"value\":\"_uniq.69\"},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}]}]},\"discriminant\":\"_uniq.70\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.61\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.72\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.73\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.45\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.74\"}}}]}}}}}}}}}},\"uses\":[\"Bool\",\"Except\",\"List\",\"Nat\",\"Option\",\"PUnit\",\"Prod\",\"Except.error\",\"Except.ok\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"Unit.unit\",\"Reasoning.Planner.Plan.Node\",\"Reasoning.Planner.Plan.Search\",\"Reasoning.Planner.Plan.Step\",\"Reasoning.Planner.Plan.failure\",\"Reasoning.Planner.Plan.run\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.measuresCheck\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Prod\",\"instOfNatNat\",\"Bool.and\",\"Nat.beq\",\"Nat.ble\",\"OfNat.ofNat\",\"Prod.fst\",\"Prod.snd\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.37\",\"parameters\":[{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.36\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.37\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.46\",\"parameters\":[{\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.29\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"4\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.43\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.45\"}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.46\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.29\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.52\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.53\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.38\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.55\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.47\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}}}]}}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"PUnit\",\"Prod\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Nat.beq\",\"Nat.ble\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.DoseCandidates\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"instSubNat\",\"LexLeanRuntime.subtract\",\"List.cons\",\"List.nil\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"10\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.9\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"20\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.13\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"30\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.17\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"50\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.21\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.28\"}}}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"List\",\"Nat\",\"OfNat\",\"Sub\",\"instOfNatNat\",\"instSubNat\",\"LexLeanRuntime.subtract\",\"List.cons\",\"List.nil\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.DoseModel\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Reasoning.Screening.DoseCandidates\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.DoseCandidates\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}},\"uses\":[\"List\",\"Nat\",\"Reasoning.Screening.DoseCandidates\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"List\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"Except.error\",\"Except.ok\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"Reasoning.Screening.Screen.Node\",\"Reasoning.Screening.Screen.Search\",\"Reasoning.Screening.Screen.Step\",\"Reasoning.Screening.Screen.failure\",\"Reasoning.Screening.Screen.run\",\"Reasoning.Screening.Screen.Node.trace\",\"Reasoning.Screening.Screen.Search.found\",\"Reasoning.Screening.Screen.Search.truncated\",\"Reasoning.Screening.Screen.searchStep.match_3\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]}]}]}},\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.run\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.31\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.44\",\"parameters\":[{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.36\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.36\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Node\",\"index\":1,\"value\":\"_uniq.38\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.43\"}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.44\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.59\",\"parameters\":[{\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.32\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.32\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Search\",\"index\":2,\"value\":\"_uniq.51\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.failure\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.58\"}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.59\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.32\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Search\",\"index\":1,\"value\":\"_uniq.68\"},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]}]}]},\"discriminant\":\"_uniq.69\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.60\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.71\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.45\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.72\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.73\"}}}]}}}}}}}}}},\"uses\":[\"Bool\",\"Except\",\"List\",\"Nat\",\"Option\",\"PUnit\",\"Prod\",\"Except.error\",\"Except.ok\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"Unit.unit\",\"Reasoning.Screening.Screen.Node\",\"Reasoning.Screening.Screen.Search\",\"Reasoning.Screening.Screen.Step\",\"Reasoning.Screening.Screen.failure\",\"Reasoning.Screening.Screen.run\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.safeCheck\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instAddNat\",\"instHAdd\",\"HAdd.hAdd\",\"Nat.ble\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.14\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.15\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.17\"}}}}}}},\"uses\":[\"Add\",\"Bool\",\"HAdd\",\"Nat\",\"instAddNat\",\"instHAdd\",\"Nat.ble\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.shortCheck\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"instOfNatNat\",\"LexLeanRuntime.instLengthableList\",\"LexLeanRuntime.length\",\"Nat.ble\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"4\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.16\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.18\"}}}}}}}},\"uses\":[\"Bool\",\"List\",\"Nat\",\"OfNat\",\"instOfNatNat\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableList\",\"LexLeanRuntime.length\",\"Nat.ble\"]},\"inductive\":null},{\"name\":\"Reasoning.Budget.Burn.apply\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Nat\",\"Option\",\"Prod\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.none\",\"Option.some\",\"Reasoning.Budget.Burn.conclusion\",\"Reasoning.Budget.Burn.guard\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}}}},\"parameters\":[{\"id\":\"_uniq.19\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Burn.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.32\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.34\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Burn.conclusion\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.37\"}}}}]}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Nat\",\"Option\",\"Prod\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Reasoning.Budget.Burn.conclusion\",\"Reasoning.Budget.Burn.guard\"]},\"inductive\":null},{\"name\":\"Reasoning.Budget.Burn.candidates\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Prod\",\"instOfNatNat\",\"List.cons\",\"List.nil\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.14\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.17\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.21\"}}}}}}}}}}},\"uses\":[\"List\",\"Nat\",\"OfNat\",\"Prod\",\"instOfNatNat\",\"List.cons\",\"List.nil\"]},\"inductive\":null},{\"name\":\"Reasoning.Budget.Burn.conclusion\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Prod\",\"instSubNat\",\"LexLeanRuntime.subtract\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}}},\"parameters\":[{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.17\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.17\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.23\"}}}}}}},\"uses\":[\"Nat\",\"Prod\",\"Sub\",\"instSubNat\",\"LexLeanRuntime.subtract\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Budget.Burn.guard\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Prod\",\"instOfNatNat\",\"Bool.and\",\"Nat.ble\",\"Nat.blt\",\"OfNat.ofNat\",\"Prod.snd\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}}},\"parameters\":[{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.44\",\"parameters\":[{\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.43\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.44\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.52\",\"parameters\":[{\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.49\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.51\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.52\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.35\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.59\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.45\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.61\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.53\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.63\"}}}}]}}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"PUnit\",\"Prod\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Nat.ble\",\"Nat.blt\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"Reasoning.Budget.Spend.Step\",\"kind\":\"inductive\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Reasoning.Budget.Spend.Step.Tick\",\"parameters\":1,\"fields\":0,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]}}},{\"name\":\"Reasoning.Budget.Spend.Step.Burn\",\"parameters\":1,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}}}}]}},{\"name\":\"Reasoning.Budget.Spend.accept\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.none\",\"Option.some\",\"Reasoning.Budget.emptyCheck\",\"Reasoning.Budget.Spend.extract\",\"Reasoning.Budget.Spend.accept.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}}},\"parameters\":[{\"id\":\"_uniq.39\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.49\",\"parameters\":[{\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.48\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.49\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.71\",\"parameters\":[{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.emptyCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.40\"},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.65\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.66\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.67\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.68\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.69\"}}}]}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.71\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.extract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.80\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.50\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.82\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.83\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.72\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.84\"}}}]}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Nat\",\"Option\",\"PUnit\",\"Prod\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Budget.emptyCheck\",\"Reasoning.Budget.Spend.extract\"]},\"inductive\":null},{\"name\":\"Reasoning.Budget.Spend.conclude\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"Bool.false\",\"Bool.true\",\"Except.error\",\"Except.ok\",\"Prod.mk\",\"Reasoning.Budget.Spend.accept\",\"Reasoning.Budget.Spend.extract\",\"Reasoning.Budget.Spend.conclude.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}}},\"parameters\":[{\"id\":\"_uniq.50\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.60\",\"parameters\":[{\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.59\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.60\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.100\",\"parameters\":[{\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.77\",\"parameters\":[{\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.75\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.76\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.77\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.85\",\"parameters\":[{\"id\":\"_uniq.80\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"},{\"kind\":\"fvar\",\"id\":\"_uniq.82\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.83\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.84\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.85\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.extract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.94\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.86\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.95\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.96\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.78\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.97\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.98\"}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.100\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.accept\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.109\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.110\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.111\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.101\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.110\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.111\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.112\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.113\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.61\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.112\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.113\"}}}]}}}}}}},\"uses\":[\"Bool\",\"Except\",\"Nat\",\"Option\",\"PUnit\",\"Prod\",\"Bool.false\",\"Bool.true\",\"Except.error\",\"Except.ok\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"Unit.unit\",\"Reasoning.Budget.Spend.accept\",\"Reasoning.Budget.Spend.extract\"]},\"inductive\":null},{\"name\":\"Reasoning.Budget.Spend.extract\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Prod\",\"Option.some\",\"Prod.snd\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.12\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.14\"}}}},\"uses\":[\"Nat\",\"Option\",\"Prod\",\"Option.some\"]},\"inductive\":null},{\"name\":\"Reasoning.Budget.Spend.fire\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Option\",\"Prod\",\"Unit\",\"Reasoning.Budget.Burn.apply\",\"Reasoning.Budget.Spend.Step\",\"Reasoning.Budget.Tick.apply\",\"Reasoning.Budget.Spend.fire.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}}}},\"parameters\":[{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.46\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Tick.apply\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.45\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.46\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.53\",\"parameters\":[{\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Burn.apply\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.52\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.53\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Reasoning.Budget.Spend.Step\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.38\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Reasoning.Budget.Spend.Step.Tick\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.47\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.63\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Reasoning.Budget.Spend.Step.Burn\",\"parameters\":[{\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.54\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.64\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.65\"}}}]}}}}}},\"uses\":[\"Nat\",\"Option\",\"PUnit\",\"Prod\",\"Unit.unit\",\"Reasoning.Budget.Burn.apply\",\"Reasoning.Budget.Spend.Step\",\"Reasoning.Budget.Tick.apply\",\"Reasoning.Budget.Spend.Step.Burn\",\"Reasoning.Budget.Spend.Step.Tick\"]},\"inductive\":null},{\"name\":\"Reasoning.Budget.Spend.next\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Option\",\"Prod\",\"Unit\",\"Option.none\",\"Reasoning.Budget.Spend.Step\",\"Reasoning.Budget.Spend.fire\",\"Reasoning.Budget.Spend.select\",\"Reasoning.Budget.Spend.next.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}}},\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.39\",\"parameters\":[{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.38\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.39\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.46\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.fire\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.45\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.46\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.select\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.55\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.40\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.47\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.59\"}}}]}}}}}}},\"uses\":[\"Nat\",\"Option\",\"PUnit\",\"Prod\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Budget.Spend.Step\",\"Reasoning.Budget.Spend.fire\",\"Reasoning.Budget.Spend.select\"]},\"inductive\":null},{\"name\":\"Reasoning.Budget.Spend.observe\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Prod\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"HAdd.hAdd\",\"OfNat.ofNat\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.12\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.15\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.12\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.19\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.16\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.22\"}}}}}}}}}}}},\"uses\":[\"Add\",\"HAdd\",\"Nat\",\"OfNat\",\"Prod\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Budget.Spend.saturate\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Prod\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"HAdd.hAdd\",\"LexLeanCollections.iterateUntil\",\"OfNat.ofNat\",\"Prod.snd\",\"Reasoning.Budget.Spend.next\",\"Reasoning.Budget.Spend.observe\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.next\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.15\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.12\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"4\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.35\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.32\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.observe\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.39\"}}}}}}}}}}}}},\"uses\":[\"Add\",\"Bool\",\"HAdd\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"LexLeanCollections.iterateUntil\",\"Reasoning.Budget.Spend.next\",\"Reasoning.Budget.Spend.observe\"]},\"inductive\":null},{\"name\":\"Reasoning.Budget.Spend.select\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"LexLeanCollections.listFold\",\"Option.none\",\"Option.some\",\"Reasoning.Budget.Burn.candidates\",\"Reasoning.Budget.Burn.guard\",\"Reasoning.Budget.Spend.Step\",\"Reasoning.Budget.Tick.guard\",\"Reasoning.Budget.Spend.Step.Burn\",\"Reasoning.Budget.Spend.Step.Tick\",\"Reasoning.Budget.Spend.select.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}]}}},\"parameters\":[{\"id\":\"_uniq.49\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.58\",\"parameters\":[{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.58\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.115\",\"parameters\":[{\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.111\",\"parameters\":[{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]},\"borrow\":false},{\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.58\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.97\",\"parameters\":[{\"id\":\"_uniq.77\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Burn.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.86\"},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]},\"discriminant\":\"_uniq.88\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.89\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.90\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.91\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step.Burn\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.94\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.95\"}}}}]}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.97\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]},\"discriminant\":\"_uniq.70\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.98\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.106\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.107\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.108\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.75\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.109\"}}}]}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.113\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Burn.candidates\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.111\"},{\"kind\":\"fvar\",\"id\":\"_uniq.112\"},{\"kind\":\"fvar\",\"id\":\"_uniq.113\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.114\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.115\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.132\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Tick.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.132\"},{\"kind\":\"fvar\",\"id\":\"_uniq.133\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.147\",\"parameters\":[{\"id\":\"_uniq.141\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]},\"discriminant\":\"_uniq.141\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.142\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.143\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.116\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.142\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.143\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.144\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.145\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.59\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.144\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.145\"}}}]}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]},\"discriminant\":\"_uniq.134\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.135\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.147\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.136\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.137\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.139\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step.Tick\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.140\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.139\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.147\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.140\"}]}}}}]}}}}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"List\",\"Nat\",\"Option\",\"PUnit\",\"Prod\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanCollections.listFold\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Budget.Burn.candidates\",\"Reasoning.Budget.Burn.guard\",\"Reasoning.Budget.Spend.Step\",\"Reasoning.Budget.Tick.guard\",\"Reasoning.Budget.Spend.Step.Burn\",\"Reasoning.Budget.Spend.Step.Tick\"]},\"inductive\":null},{\"name\":\"Reasoning.Budget.Spend.verdict\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"Nat\",\"Prod\",\"Unit\",\"Bool.false\",\"Except.error\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"Reasoning.Budget.Spend.conclude\",\"Reasoning.Budget.Spend.saturate\",\"Reasoning.Budget.Spend.account.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.saturate\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.36\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.44\",\"parameters\":[{\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.37\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.conclude\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.43\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.44\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.51\",\"parameters\":[{\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.50\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.51\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.37\"},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.57\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.52\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.59\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.45\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.61\"}}}}]}}}}}}}}},\"uses\":[\"Bool\",\"Except\",\"Nat\",\"PUnit\",\"Prod\",\"Bool.false\",\"Bool.true\",\"Except.error\",\"Prod.mk\",\"Unit.unit\",\"Reasoning.Budget.Spend.conclude\",\"Reasoning.Budget.Spend.saturate\"]},\"inductive\":null},{\"name\":\"Reasoning.Budget.Tick.apply\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Nat\",\"Option\",\"Prod\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.none\",\"Option.some\",\"Reasoning.Budget.Tick.conclusion\",\"Reasoning.Budget.Tick.guard\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}}},\"parameters\":[{\"id\":\"_uniq.14\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Tick.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.26\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.28\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Tick.conclusion\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}}}}]}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Nat\",\"Option\",\"Prod\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Reasoning.Budget.Tick.conclusion\",\"Reasoning.Budget.Tick.guard\"]},\"inductive\":null},{\"name\":\"Reasoning.Budget.Tick.conclusion\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Prod\",\"instOfNatNat\",\"instSubNat\",\"LexLeanRuntime.subtract\",\"OfNat.ofNat\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.12\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.12\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.17\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.20\"}}}}}}}}}},\"uses\":[\"Nat\",\"OfNat\",\"Prod\",\"Sub\",\"instOfNatNat\",\"instSubNat\",\"LexLeanRuntime.subtract\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Budget.Tick.guard\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Prod\",\"instOfNatNat\",\"Nat.blt\",\"OfNat.ofNat\",\"Prod.snd\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.14\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.12\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.17\"}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"Prod\",\"instOfNatNat\",\"Nat.blt\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Chart.fever\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Chart\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Chart.leukocytosis\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Chart\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Chart.level\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Chart\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Chart.mk\",\"kind\":\"constructor\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Chart.sepsis\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Chart\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Chart.shock\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Chart\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Chart.sirs\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Chart\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Chart.tachycardia\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Chart\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Chart.tachypnea\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Chart\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Chart.vitals\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Chart\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Escalate.apply\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Option\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.none\",\"Option.some\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Escalate.conclusion\",\"Reasoning.Clinic.Escalate.guard\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Escalate.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"discriminant\":\"_uniq.20\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.22\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Escalate.conclusion\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.25\"}}}}]}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Option\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Escalate.conclusion\",\"Reasoning.Clinic.Escalate.guard\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Escalate.conclusion\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"HAdd.hAdd\",\"OfNat.ofNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Chart.fever\",\"Reasoning.Clinic.Chart.leukocytosis\",\"Reasoning.Clinic.Chart.level\",\"Reasoning.Clinic.Chart.mk\",\"Reasoning.Clinic.Chart.sepsis\",\"Reasoning.Clinic.Chart.shock\",\"Reasoning.Clinic.Chart.sirs\",\"Reasoning.Clinic.Chart.tachycardia\",\"Reasoning.Clinic.Chart.tachypnea\",\"Reasoning.Clinic.Chart.vitals\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":0,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":1,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":2,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":3,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":4,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":5,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":6,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":7,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.15\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":8,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.19\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.16\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.22\"}}}}}}}}}}}}}}}}}}},\"uses\":[\"Add\",\"HAdd\",\"Nat\",\"OfNat\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Chart.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Escalate.guard\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Bool.and\",\"Bool.or\",\"Nat.beq\",\"Nat.blt\",\"OfNat.ofNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Chart.level\",\"Reasoning.Clinic.Chart.sepsis\",\"Reasoning.Clinic.Chart.shock\",\"Reasoning.Clinic.Chart.sirs\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.74\",\"parameters\":[{\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.73\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.74\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.219\",\"parameters\":[{\"id\":\"_uniq.80\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.86\",\"parameters\":[{\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.85\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.86\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.174\",\"parameters\":[{\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.86\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.129\",\"parameters\":[{\"id\":\"_uniq.101\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.74\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.113\",\"parameters\":[{\"id\":\"_uniq.107\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":7,\"value\":\"_uniq.66\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.110\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.109\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.111\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.110\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.108\"},{\"kind\":\"fvar\",\"id\":\"_uniq.111\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.112\"}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.113\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":8,\"value\":\"_uniq.66\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.120\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.121\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.120\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.121\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.119\"},{\"kind\":\"fvar\",\"id\":\"_uniq.122\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.123\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.124\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.105\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.124\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.125\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.127\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.114\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.126\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.127\"}}}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.130\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.129\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.138\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.74\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.146\",\"parameters\":[{\"id\":\"_uniq.140\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.141\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":6,\"value\":\"_uniq.66\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.142\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.143\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.142\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.144\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.143\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.145\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.141\"},{\"kind\":\"fvar\",\"id\":\"_uniq.144\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.145\"}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.147\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.146\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.152\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":8,\"value\":\"_uniq.66\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.153\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.154\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.153\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.155\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.154\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.156\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.152\"},{\"kind\":\"fvar\",\"id\":\"_uniq.155\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.167\",\"parameters\":[{\"id\":\"_uniq.161\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.161\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.162\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.163\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.130\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.162\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.163\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.164\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.165\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.96\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.164\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.165\"}}}}]}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.173\",\"parameters\":[{\"id\":\"_uniq.171\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.172\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.147\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.171\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.167\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.172\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.170\",\"parameters\":[{\"id\":\"_uniq.168\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.169\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.138\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.168\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.167\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.169\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.156\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.157\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.170\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.157\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.159\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.173\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.159\"}]}}}]}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.175\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.174\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.183\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.74\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.191\",\"parameters\":[{\"id\":\"_uniq.185\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.186\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":5,\"value\":\"_uniq.66\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.187\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.188\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.187\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.189\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.188\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.190\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.186\"},{\"kind\":\"fvar\",\"id\":\"_uniq.189\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.190\"}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.192\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.191\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.197\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":8,\"value\":\"_uniq.66\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.198\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.199\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.198\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.200\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.199\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.201\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.197\"},{\"kind\":\"fvar\",\"id\":\"_uniq.200\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.212\",\"parameters\":[{\"id\":\"_uniq.206\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.206\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.207\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.208\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.175\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.207\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.208\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.209\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.210\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.87\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.209\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.210\"}}}}]}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.215\",\"parameters\":[{\"id\":\"_uniq.213\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.214\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.183\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.213\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.212\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.214\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.218\",\"parameters\":[{\"id\":\"_uniq.216\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.217\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.192\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.216\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.212\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.217\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.201\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.202\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.215\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.202\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.204\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.218\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.204\"}]}}}]}}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.220\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.219\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.225\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":8,\"value\":\"_uniq.66\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.226\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.227\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.226\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.228\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.227\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.229\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.225\"},{\"kind\":\"fvar\",\"id\":\"_uniq.228\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.229\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.230\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.231\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.75\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.230\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.231\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.232\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.233\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.220\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.232\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.233\"}}}}]}}}}}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"PUnit\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Nat.beq\",\"Nat.blt\",\"Unit.unit\",\"Reasoning.Clinic.Chart\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Fever.apply\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Option\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.none\",\"Option.some\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Fever.conclusion\",\"Reasoning.Clinic.Fever.guard\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Fever.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"discriminant\":\"_uniq.20\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.22\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Fever.conclusion\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.25\"}}}}]}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Option\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Fever.conclusion\",\"Reasoning.Clinic.Fever.guard\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Fever.conclusion\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"OfNat.ofNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Chart.leukocytosis\",\"Reasoning.Clinic.Chart.level\",\"Reasoning.Clinic.Chart.mk\",\"Reasoning.Clinic.Chart.sepsis\",\"Reasoning.Clinic.Chart.shock\",\"Reasoning.Clinic.Chart.sirs\",\"Reasoning.Clinic.Chart.tachycardia\",\"Reasoning.Clinic.Chart.tachypnea\",\"Reasoning.Clinic.Chart.vitals\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":0,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.8\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":2,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":3,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":4,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":5,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":6,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":7,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":8,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.17\"}}}}}}}}}}}}}},\"uses\":[\"Nat\",\"OfNat\",\"instOfNatNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Chart.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Fever.guard\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Bool.and\",\"Nat.beq\",\"OfNat.ofNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.feverish\",\"Reasoning.Clinic.Chart.fever\",\"Reasoning.Clinic.Chart.vitals\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.30\",\"parameters\":[{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.29\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.30\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.36\",\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":0,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.feverish\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.35\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.36\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":1,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.44\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.46\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.31\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.48\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.37\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.50\"}}}}]}}}}}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"PUnit\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Nat.beq\",\"Unit.unit\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.feverish\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Leukocytosis.apply\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Option\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.none\",\"Option.some\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Leukocytosis.conclusion\",\"Reasoning.Clinic.Leukocytosis.guard\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Leukocytosis.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"discriminant\":\"_uniq.20\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.22\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Leukocytosis.conclusion\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.25\"}}}}]}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Option\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Leukocytosis.conclusion\",\"Reasoning.Clinic.Leukocytosis.guard\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Leukocytosis.conclusion\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"OfNat.ofNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Chart.fever\",\"Reasoning.Clinic.Chart.level\",\"Reasoning.Clinic.Chart.mk\",\"Reasoning.Clinic.Chart.sepsis\",\"Reasoning.Clinic.Chart.shock\",\"Reasoning.Clinic.Chart.sirs\",\"Reasoning.Clinic.Chart.tachycardia\",\"Reasoning.Clinic.Chart.tachypnea\",\"Reasoning.Clinic.Chart.vitals\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":0,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":1,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":2,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":3,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.11\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":5,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":6,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":7,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":8,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.17\"}}}}}}}}}}}}}},\"uses\":[\"Nat\",\"OfNat\",\"instOfNatNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Chart.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Leukocytosis.guard\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Bool.and\",\"Nat.beq\",\"OfNat.ofNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.leukocytic\",\"Reasoning.Clinic.Chart.leukocytosis\",\"Reasoning.Clinic.Chart.vitals\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.30\",\"parameters\":[{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.29\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.30\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.36\",\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":0,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.leukocytic\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.35\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.36\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":4,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.44\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.46\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.31\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.48\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.37\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.50\"}}}}]}}}}}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"PUnit\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Nat.beq\",\"Unit.unit\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.leukocytic\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Sepsis.apply\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Option\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.none\",\"Option.some\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Sepsis.conclusion\",\"Reasoning.Clinic.Sepsis.guard\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Sepsis.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"discriminant\":\"_uniq.20\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.22\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Sepsis.conclusion\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.25\"}}}}]}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Option\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Sepsis.conclusion\",\"Reasoning.Clinic.Sepsis.guard\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Sepsis.conclusion\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"OfNat.ofNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Chart.fever\",\"Reasoning.Clinic.Chart.leukocytosis\",\"Reasoning.Clinic.Chart.level\",\"Reasoning.Clinic.Chart.mk\",\"Reasoning.Clinic.Chart.shock\",\"Reasoning.Clinic.Chart.sirs\",\"Reasoning.Clinic.Chart.tachycardia\",\"Reasoning.Clinic.Chart.tachypnea\",\"Reasoning.Clinic.Chart.vitals\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":0,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":1,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":2,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":3,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":4,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":5,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.13\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":7,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":8,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.17\"}}}}}}}}}}}}}},\"uses\":[\"Nat\",\"OfNat\",\"instOfNatNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Chart.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Sepsis.guard\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Bool.and\",\"Nat.beq\",\"OfNat.ofNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Chart.sepsis\",\"Reasoning.Clinic.Chart.sirs\",\"Reasoning.Clinic.Chart.vitals\",\"Reasoning.Clinic.Vitals.infection\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.38\",\"parameters\":[{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.37\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.38\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.73\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.38\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.57\",\"parameters\":[{\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":0,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Vitals\",\"index\":5,\"value\":\"_uniq.51\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.54\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.52\"},{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.56\"}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.57\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":5,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.64\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.65\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"},{\"kind\":\"fvar\",\"id\":\"_uniq.66\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.67\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.48\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.68\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.69\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.58\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.71\"}}}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.73\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":6,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.81\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.79\"},{\"kind\":\"fvar\",\"id\":\"_uniq.82\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.83\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.39\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.84\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.85\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.74\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.86\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.87\"}}}}]}}}}}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"PUnit\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Nat.beq\",\"Unit.unit\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Shock.apply\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Option\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.none\",\"Option.some\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Shock.conclusion\",\"Reasoning.Clinic.Shock.guard\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Shock.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"discriminant\":\"_uniq.20\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.22\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Shock.conclusion\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.25\"}}}}]}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Option\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Shock.conclusion\",\"Reasoning.Clinic.Shock.guard\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Shock.conclusion\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"OfNat.ofNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Chart.fever\",\"Reasoning.Clinic.Chart.leukocytosis\",\"Reasoning.Clinic.Chart.level\",\"Reasoning.Clinic.Chart.mk\",\"Reasoning.Clinic.Chart.sepsis\",\"Reasoning.Clinic.Chart.sirs\",\"Reasoning.Clinic.Chart.tachycardia\",\"Reasoning.Clinic.Chart.tachypnea\",\"Reasoning.Clinic.Chart.vitals\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":0,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":1,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":2,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":3,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":4,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":5,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":6,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.14\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":8,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.17\"}}}}}}}}}}}}}},\"uses\":[\"Nat\",\"OfNat\",\"instOfNatNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Chart.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Shock.guard\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Bool.and\",\"Nat.beq\",\"OfNat.ofNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.hypotensive\",\"Reasoning.Clinic.Chart.sepsis\",\"Reasoning.Clinic.Chart.shock\",\"Reasoning.Clinic.Chart.vitals\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.38\",\"parameters\":[{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.37\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.38\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.69\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.38\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.53\",\"parameters\":[{\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":0,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.hypotensive\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.52\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.53\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":6,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.61\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.63\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.48\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.64\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.65\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.54\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.66\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.67\"}}}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.69\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":7,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.77\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.78\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.79\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.39\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.81\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.70\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.82\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.83\"}}}}]}}}}}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"PUnit\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Nat.beq\",\"Unit.unit\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.hypotensive\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Sirs.apply\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Option\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.none\",\"Option.some\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Sirs.conclusion\",\"Reasoning.Clinic.Sirs.guard\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Sirs.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"discriminant\":\"_uniq.20\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.22\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Sirs.conclusion\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.25\"}}}}]}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Option\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Sirs.conclusion\",\"Reasoning.Clinic.Sirs.guard\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Sirs.conclusion\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"OfNat.ofNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Chart.fever\",\"Reasoning.Clinic.Chart.leukocytosis\",\"Reasoning.Clinic.Chart.level\",\"Reasoning.Clinic.Chart.mk\",\"Reasoning.Clinic.Chart.sepsis\",\"Reasoning.Clinic.Chart.shock\",\"Reasoning.Clinic.Chart.tachycardia\",\"Reasoning.Clinic.Chart.tachypnea\",\"Reasoning.Clinic.Chart.vitals\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":0,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":1,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":2,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":3,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":4,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.12\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":6,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":7,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":8,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.17\"}}}}}}}}}}}}}},\"uses\":[\"Nat\",\"OfNat\",\"instOfNatNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Chart.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Sirs.guard\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"Bool.and\",\"HAdd.hAdd\",\"Nat.beq\",\"Nat.ble\",\"OfNat.ofNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Chart.fever\",\"Reasoning.Clinic.Chart.leukocytosis\",\"Reasoning.Clinic.Chart.sirs\",\"Reasoning.Clinic.Chart.tachycardia\",\"Reasoning.Clinic.Chart.tachypnea\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.30\",\"parameters\":[{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.29\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.30\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.48\",\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.35\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.38\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":1,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":2,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.39\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":3,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.39\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":4,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.39\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.44\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.47\"}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.48\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":5,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.56\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.58\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.31\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.60\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.49\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.62\"}}}}]}}}}}}}}}}},\"uses\":[\"Add\",\"Bool\",\"HAdd\",\"Nat\",\"OfNat\",\"PUnit\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Nat.beq\",\"Nat.ble\",\"Unit.unit\",\"Reasoning.Clinic.Chart\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Tachycardia.apply\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Option\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.none\",\"Option.some\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Tachycardia.conclusion\",\"Reasoning.Clinic.Tachycardia.guard\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Tachycardia.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"discriminant\":\"_uniq.20\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.22\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Tachycardia.conclusion\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.25\"}}}}]}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Option\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Tachycardia.conclusion\",\"Reasoning.Clinic.Tachycardia.guard\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Tachycardia.conclusion\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"OfNat.ofNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Chart.fever\",\"Reasoning.Clinic.Chart.leukocytosis\",\"Reasoning.Clinic.Chart.level\",\"Reasoning.Clinic.Chart.mk\",\"Reasoning.Clinic.Chart.sepsis\",\"Reasoning.Clinic.Chart.shock\",\"Reasoning.Clinic.Chart.sirs\",\"Reasoning.Clinic.Chart.tachypnea\",\"Reasoning.Clinic.Chart.vitals\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":0,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":1,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.9\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":3,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":4,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":5,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":6,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":7,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":8,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.17\"}}}}}}}}}}}}}},\"uses\":[\"Nat\",\"OfNat\",\"instOfNatNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Chart.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Tachycardia.guard\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Bool.and\",\"Nat.beq\",\"OfNat.ofNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.tachycardic\",\"Reasoning.Clinic.Chart.tachycardia\",\"Reasoning.Clinic.Chart.vitals\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.30\",\"parameters\":[{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.29\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.30\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.36\",\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":0,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.tachycardic\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.35\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.36\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":2,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.44\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.46\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.31\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.48\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.37\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.50\"}}}}]}}}}}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"PUnit\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Nat.beq\",\"Unit.unit\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.tachycardic\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Tachypnea.apply\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Option\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.none\",\"Option.some\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Tachypnea.conclusion\",\"Reasoning.Clinic.Tachypnea.guard\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Tachypnea.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"discriminant\":\"_uniq.20\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.22\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Tachypnea.conclusion\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.25\"}}}}]}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Option\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Tachypnea.conclusion\",\"Reasoning.Clinic.Tachypnea.guard\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Tachypnea.conclusion\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"OfNat.ofNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Chart.fever\",\"Reasoning.Clinic.Chart.leukocytosis\",\"Reasoning.Clinic.Chart.level\",\"Reasoning.Clinic.Chart.mk\",\"Reasoning.Clinic.Chart.sepsis\",\"Reasoning.Clinic.Chart.shock\",\"Reasoning.Clinic.Chart.sirs\",\"Reasoning.Clinic.Chart.tachycardia\",\"Reasoning.Clinic.Chart.vitals\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":0,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":1,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":2,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.10\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":4,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":5,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":6,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":7,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":8,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.17\"}}}}}}}}}}}}}},\"uses\":[\"Nat\",\"OfNat\",\"instOfNatNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Chart.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Tachypnea.guard\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Bool.and\",\"Nat.beq\",\"OfNat.ofNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.tachypneic\",\"Reasoning.Clinic.Chart.tachypnea\",\"Reasoning.Clinic.Chart.vitals\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.30\",\"parameters\":[{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.29\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.30\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.36\",\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":0,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.tachypneic\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.35\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.36\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":3,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.44\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.46\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.31\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.48\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.37\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.50\"}}}}]}}}}}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"PUnit\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Nat.beq\",\"Unit.unit\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.tachypneic\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.Ledger\",\"kind\":\"inductive\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Reasoning.Clinic.Triage.Ledger.mk\",\"parameters\":0,\"fields\":6,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Ledger\",\"levels\":[]}}}}}}}}]}},{\"name\":\"Reasoning.Clinic.Triage.Run\",\"kind\":\"inductive\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Reasoning.Clinic.Triage.Run.mk\",\"parameters\":0,\"fields\":3,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Ledger\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]}}}}}]}},{\"name\":\"Reasoning.Clinic.Triage.Step\",\"kind\":\"inductive\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Reasoning.Clinic.Triage.Step.Fever\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}},{\"name\":\"Reasoning.Clinic.Triage.Step.Tachycardia\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}},{\"name\":\"Reasoning.Clinic.Triage.Step.Tachypnea\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}},{\"name\":\"Reasoning.Clinic.Triage.Step.Leukocytosis\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}},{\"name\":\"Reasoning.Clinic.Triage.Step.Sirs\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}},{\"name\":\"Reasoning.Clinic.Triage.Step.Sepsis\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}},{\"name\":\"Reasoning.Clinic.Triage.Step.Shock\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}},{\"name\":\"Reasoning.Clinic.Triage.Step.Escalate\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}}]}},{\"name\":\"Reasoning.Clinic.Triage.accept\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Nat\",\"Option\",\"Unit\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.none\",\"Option.some\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.recommendationCheck\",\"Reasoning.Clinic.Triage.extract\",\"Reasoning.Clinic.Triage.accept.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.41\",\"parameters\":[{\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.40\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.41\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.63\",\"parameters\":[{\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.recommendationCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.57\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.58\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.59\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.61\"}}}]}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.63\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.extract\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.72\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.42\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.74\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.75\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.64\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.76\"}}}]}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Nat\",\"Option\",\"PUnit\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.recommendationCheck\",\"Reasoning.Clinic.Triage.extract\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.attempts\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Nat\",\"Prod\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"ite\",\"Bool.true\",\"HAdd.hAdd\",\"OfNat.ofNat\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Escalate.guard\",\"Reasoning.Clinic.Fever.guard\",\"Reasoning.Clinic.Leukocytosis.guard\",\"Reasoning.Clinic.Sepsis.guard\",\"Reasoning.Clinic.Shock.guard\",\"Reasoning.Clinic.Sirs.guard\",\"Reasoning.Clinic.Tachycardia.guard\",\"Reasoning.Clinic.Tachypnea.guard\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Fever.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.48\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.50\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.51\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.245\",\"parameters\":[{\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.77\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.78\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.87\"},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.244\",\"parameters\":[{\"id\":\"_uniq.131\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.132\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.131\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.141\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.132\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.142\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.141\"},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.243\",\"parameters\":[{\"id\":\"_uniq.241\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.242\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.241\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.242\"}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.142\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.143\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.147\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Sirs.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.148\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.147\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.149\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.148\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.158\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.149\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.159\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.158\"},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.239\",\"parameters\":[{\"id\":\"_uniq.174\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.175\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.174\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.184\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.175\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.185\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.184\"},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.238\",\"parameters\":[{\"id\":\"_uniq.228\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.229\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.228\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.230\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.229\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.231\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.232\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.231\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.233\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.232\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.234\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.132\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.235\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.229\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.236\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.233\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.234\"},{\"kind\":\"fvar\",\"id\":\"_uniq.235\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.237\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.230\"},{\"kind\":\"fvar\",\"id\":\"_uniq.236\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.243\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.237\"}]}}}}}}}}}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.185\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.186\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.189\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Shock.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.190\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.189\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.191\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.190\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.200\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.191\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.201\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.200\"},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.226\",\"parameters\":[{\"id\":\"_uniq.216\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.217\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.216\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.218\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.217\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.219\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.220\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.219\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.221\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.220\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.222\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.175\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.223\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.217\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.224\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.221\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.222\"},{\"kind\":\"fvar\",\"id\":\"_uniq.223\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.225\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.218\"},{\"kind\":\"fvar\",\"id\":\"_uniq.224\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.238\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.225\"}]}}}}}}}}}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.201\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.202\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.204\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Escalate.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.205\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.204\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.206\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.205\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.207\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.206\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.208\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.209\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.208\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.210\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.209\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.211\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.191\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.212\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.206\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.213\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.210\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.211\"},{\"kind\":\"fvar\",\"id\":\"_uniq.212\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.214\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.207\"},{\"kind\":\"fvar\",\"id\":\"_uniq.213\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.226\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.214\"}]}}}}}}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.215\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.226\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.191\"}]}}]}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.227\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.238\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.175\"}]}}]}}}}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.159\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.160\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.162\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Sepsis.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.163\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.162\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.164\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.163\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.165\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.164\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.166\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.167\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.166\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.168\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.167\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.169\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.149\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.170\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.164\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.171\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.168\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.169\"},{\"kind\":\"fvar\",\"id\":\"_uniq.170\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.172\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.165\"},{\"kind\":\"fvar\",\"id\":\"_uniq.171\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.239\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.172\"}]}}}}}}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.173\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.239\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.149\"}]}}]}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.240\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.243\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.132\"}]}}]}}}}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.88\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.89\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Tachypnea.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.92\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.93\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.94\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.129\",\"parameters\":[{\"id\":\"_uniq.119\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.120\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.119\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.121\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.120\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.122\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.124\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.123\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.78\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.120\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.127\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.124\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.125\"},{\"kind\":\"fvar\",\"id\":\"_uniq.126\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.128\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.121\"},{\"kind\":\"fvar\",\"id\":\"_uniq.127\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.244\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.128\"}]}}}}}}}}}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.104\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.105\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Leukocytosis.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.107\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.108\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.110\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.109\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.111\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.111\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.113\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.112\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.94\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.109\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.113\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.114\"},{\"kind\":\"fvar\",\"id\":\"_uniq.115\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.110\"},{\"kind\":\"fvar\",\"id\":\"_uniq.116\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.129\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.117\"}]}}}}}}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.118\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.129\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.94\"}]}}]}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.130\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.244\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.78\"}]}}]}}}}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.62\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.63\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Tachycardia.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.66\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.67\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.69\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.70\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.51\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.67\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.71\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.72\"},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.68\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.245\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"}]}}}}}}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.76\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.245\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]}}]}}}}}}}}}}}},\"uses\":[\"Add\",\"Bool\",\"Decidable\",\"HAdd\",\"Nat\",\"OfNat\",\"Prod\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Prod.mk\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Escalate.guard\",\"Reasoning.Clinic.Fever.guard\",\"Reasoning.Clinic.Leukocytosis.guard\",\"Reasoning.Clinic.Sepsis.guard\",\"Reasoning.Clinic.Shock.guard\",\"Reasoning.Clinic.Sirs.guard\",\"Reasoning.Clinic.Tachycardia.guard\",\"Reasoning.Clinic.Tachypnea.guard\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.conclude\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"Bool.false\",\"Bool.true\",\"Except.error\",\"Except.ok\",\"Prod.mk\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Triage.accept\",\"Reasoning.Clinic.Triage.extract\",\"Reasoning.Clinic.Triage.conclude.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.52\",\"parameters\":[{\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.51\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.52\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.92\",\"parameters\":[{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.69\",\"parameters\":[{\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"fvar\",\"id\":\"_uniq.66\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.68\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.69\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.77\",\"parameters\":[{\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.75\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.76\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.77\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.extract\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.86\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.78\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.87\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.88\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.89\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.70\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.89\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.90\"}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.92\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.accept\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.43\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.101\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.93\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.102\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.103\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.104\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.53\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.104\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.105\"}}}]}}}}}}},\"uses\":[\"Bool\",\"Except\",\"Nat\",\"Option\",\"PUnit\",\"Prod\",\"Bool.false\",\"Bool.true\",\"Except.error\",\"Except.ok\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"Unit.unit\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Triage.accept\",\"Reasoning.Clinic.Triage.extract\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.extract\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Option.some\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Chart.level\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":8,\"value\":\"_uniq.6\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.17\"}}}},\"uses\":[\"Nat\",\"Option\",\"Option.some\",\"Reasoning.Clinic.Chart\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.fire\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Option\",\"Unit\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Escalate.apply\",\"Reasoning.Clinic.Fever.apply\",\"Reasoning.Clinic.Leukocytosis.apply\",\"Reasoning.Clinic.Sepsis.apply\",\"Reasoning.Clinic.Shock.apply\",\"Reasoning.Clinic.Sirs.apply\",\"Reasoning.Clinic.Tachycardia.apply\",\"Reasoning.Clinic.Tachypnea.apply\",\"Reasoning.Clinic.Triage.Step\",\"Reasoning.Clinic.Triage.fire.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.78\",\"parameters\":[{\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Fever.apply\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.77\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.78\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.83\",\"parameters\":[{\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Tachycardia.apply\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.82\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.83\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.88\",\"parameters\":[{\"id\":\"_uniq.86\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Tachypnea.apply\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.87\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.88\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.93\",\"parameters\":[{\"id\":\"_uniq.91\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Leukocytosis.apply\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.92\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.93\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.98\",\"parameters\":[{\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Sirs.apply\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.97\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.98\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.103\",\"parameters\":[{\"id\":\"_uniq.101\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Sepsis.apply\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.102\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.103\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.108\",\"parameters\":[{\"id\":\"_uniq.106\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Shock.apply\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.107\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.108\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.113\",\"parameters\":[{\"id\":\"_uniq.111\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Escalate.apply\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.112\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.113\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Reasoning.Clinic.Triage.Step\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"discriminant\":\"_uniq.64\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Reasoning.Clinic.Triage.Step.Fever\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.79\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.125\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.126\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Reasoning.Clinic.Triage.Step.Tachycardia\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.127\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.128\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.84\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.127\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.128\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Reasoning.Clinic.Triage.Step.Tachypnea\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.129\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.130\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.89\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.129\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.130\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Reasoning.Clinic.Triage.Step.Leukocytosis\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.131\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.132\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.94\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.131\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.132\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Reasoning.Clinic.Triage.Step.Sirs\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.99\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.133\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.134\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Reasoning.Clinic.Triage.Step.Sepsis\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.135\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.104\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.135\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.136\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Reasoning.Clinic.Triage.Step.Shock\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.137\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.138\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.109\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.137\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.138\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Reasoning.Clinic.Triage.Step.Escalate\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.139\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.140\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.114\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.139\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.140\"}}}}]}}}}}}}}}}}}}}}}}},\"uses\":[\"Option\",\"PUnit\",\"Unit.unit\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Escalate.apply\",\"Reasoning.Clinic.Fever.apply\",\"Reasoning.Clinic.Leukocytosis.apply\",\"Reasoning.Clinic.Sepsis.apply\",\"Reasoning.Clinic.Shock.apply\",\"Reasoning.Clinic.Sirs.apply\",\"Reasoning.Clinic.Tachycardia.apply\",\"Reasoning.Clinic.Tachypnea.apply\",\"Reasoning.Clinic.Triage.Step\",\"Reasoning.Clinic.Triage.Step.Escalate\",\"Reasoning.Clinic.Triage.Step.Fever\",\"Reasoning.Clinic.Triage.Step.Leukocytosis\",\"Reasoning.Clinic.Triage.Step.Sepsis\",\"Reasoning.Clinic.Triage.Step.Shock\",\"Reasoning.Clinic.Triage.Step.Sirs\",\"Reasoning.Clinic.Triage.Step.Tachycardia\",\"Reasoning.Clinic.Triage.Step.Tachypnea\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"Nat\",\"Prod\",\"Except.casesOn\",\"Except.error\",\"Except.ok\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.next\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Option\",\"Unit\",\"Option.none\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Triage.Step\",\"Reasoning.Clinic.Triage.fire\",\"Reasoning.Clinic.Triage.select\",\"Reasoning.Clinic.Triage.next.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.32\",\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.32\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.39\",\"parameters\":[{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.fire\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.38\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.39\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.select\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"discriminant\":\"_uniq.48\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.33\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.50\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.40\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.52\"}}}]}}}}}}},\"uses\":[\"Option\",\"PUnit\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Triage.Step\",\"Reasoning.Clinic.Triage.fire\",\"Reasoning.Clinic.Triage.select\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.observe\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"OfNat.ofNat\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Chart.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.7\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.9\"}}}}}},\"uses\":[\"Nat\",\"OfNat\",\"instOfNatNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Chart.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.run\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"LexLeanCollections.iterateUntil\",\"OfNat.ofNat\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Triage.Run\",\"Reasoning.Clinic.Triage.start\",\"Reasoning.Clinic.Triage.step\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]}]}},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.step\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"11\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.9\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.start\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.12\"}}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"instOfNatNat\",\"LexLeanCollections.iterateUntil\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Triage.Run\",\"Reasoning.Clinic.Triage.start\",\"Reasoning.Clinic.Triage.step\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.saturate\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"LexLeanCollections.iterateUntil\",\"OfNat.ofNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Triage.next\",\"Reasoning.Clinic.Triage.observe\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.next\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"11\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.9\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.observe\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.12\"}}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"instOfNatNat\",\"LexLeanCollections.iterateUntil\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Triage.next\",\"Reasoning.Clinic.Triage.observe\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.select\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Option\",\"Unit\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.none\",\"Option.some\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Escalate.guard\",\"Reasoning.Clinic.Fever.guard\",\"Reasoning.Clinic.Leukocytosis.guard\",\"Reasoning.Clinic.Sepsis.guard\",\"Reasoning.Clinic.Shock.guard\",\"Reasoning.Clinic.Sirs.guard\",\"Reasoning.Clinic.Tachycardia.guard\",\"Reasoning.Clinic.Tachypnea.guard\",\"Reasoning.Clinic.Triage.Step\",\"Reasoning.Clinic.Triage.Step.Escalate\",\"Reasoning.Clinic.Triage.Step.Fever\",\"Reasoning.Clinic.Triage.Step.Leukocytosis\",\"Reasoning.Clinic.Triage.Step.Sepsis\",\"Reasoning.Clinic.Triage.Step.Shock\",\"Reasoning.Clinic.Triage.Step.Sirs\",\"Reasoning.Clinic.Triage.Step.Tachycardia\",\"Reasoning.Clinic.Triage.Step.Tachypnea\",\"Reasoning.Clinic.Triage.select.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.114\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.124\",\"parameters\":[{\"id\":\"_uniq.122\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.122\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.123\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.124\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.273\",\"parameters\":[{\"id\":\"_uniq.132\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.124\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.197\",\"parameters\":[{\"id\":\"_uniq.141\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.145\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.124\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.165\",\"parameters\":[{\"id\":\"_uniq.147\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.156\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Escalate.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.157\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.158\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.156\"},{\"kind\":\"fvar\",\"id\":\"_uniq.157\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.158\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.159\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.160\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.160\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.161\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.162\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step.Escalate\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.163\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.162\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.163\"}}}}]}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.166\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.165\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.182\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Shock.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.183\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.184\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.182\"},{\"kind\":\"fvar\",\"id\":\"_uniq.183\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.196\",\"parameters\":[{\"id\":\"_uniq.190\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.190\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.191\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.192\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.166\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.191\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.192\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.193\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.194\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.145\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.193\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.194\"}}}]}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.184\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.185\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.186\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.196\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.186\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.187\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.188\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step.Shock\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.189\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.188\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.196\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.189\"}]}}}}]}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.198\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.197\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.209\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.124\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.229\",\"parameters\":[{\"id\":\"_uniq.211\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.220\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Sepsis.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.221\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.222\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.220\"},{\"kind\":\"fvar\",\"id\":\"_uniq.221\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.222\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.223\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.224\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.224\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.225\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.226\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step.Sepsis\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.227\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.226\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.227\"}}}}]}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.230\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.229\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.246\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Sirs.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.247\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.248\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.246\"},{\"kind\":\"fvar\",\"id\":\"_uniq.247\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.272\",\"parameters\":[{\"id\":\"_uniq.254\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.265\",\"parameters\":[{\"id\":\"_uniq.259\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.259\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.260\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.261\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.198\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.260\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.261\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.262\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.263\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.136\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.262\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.263\"}}}]}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.271\",\"parameters\":[{\"id\":\"_uniq.269\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.270\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.209\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.269\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.265\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.270\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.268\",\"parameters\":[{\"id\":\"_uniq.266\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.267\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.230\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.266\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.265\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.267\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.254\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.255\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.268\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.255\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.257\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.271\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.257\"}]}}]}}}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.248\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.249\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.250\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.272\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.250\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.251\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.252\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step.Sirs\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.253\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.252\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.272\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.253\"}]}}}}]}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.274\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.273\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.287\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.124\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.348\",\"parameters\":[{\"id\":\"_uniq.292\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.296\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.124\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.316\",\"parameters\":[{\"id\":\"_uniq.298\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.307\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Leukocytosis.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.308\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.309\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.307\"},{\"kind\":\"fvar\",\"id\":\"_uniq.308\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.309\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.310\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.311\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.311\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.312\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.313\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step.Leukocytosis\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.314\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.313\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.314\"}}}}]}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.317\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.316\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.333\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Tachypnea.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.334\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.335\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.333\"},{\"kind\":\"fvar\",\"id\":\"_uniq.334\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.347\",\"parameters\":[{\"id\":\"_uniq.341\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.341\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.342\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.343\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.317\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.342\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.343\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.344\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.345\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.296\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.344\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.345\"}}}]}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.335\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.336\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.337\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.347\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.337\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.338\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.339\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step.Tachypnea\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.340\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.339\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.347\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.340\"}]}}}}]}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.349\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.348\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.362\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.124\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.382\",\"parameters\":[{\"id\":\"_uniq.364\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.373\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Tachycardia.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.374\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.375\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.373\"},{\"kind\":\"fvar\",\"id\":\"_uniq.374\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.375\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.376\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.377\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.377\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.378\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.379\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step.Tachycardia\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.380\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.379\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.380\"}}}}]}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.383\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.382\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.399\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Fever.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.400\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.401\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.399\"},{\"kind\":\"fvar\",\"id\":\"_uniq.400\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.437\",\"parameters\":[{\"id\":\"_uniq.407\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.430\",\"parameters\":[{\"id\":\"_uniq.412\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.423\",\"parameters\":[{\"id\":\"_uniq.417\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.417\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.418\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.419\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.274\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.418\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.419\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.420\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.421\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.125\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.420\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.421\"}}}]}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.426\",\"parameters\":[{\"id\":\"_uniq.424\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.425\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.349\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.424\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.423\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.425\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.429\",\"parameters\":[{\"id\":\"_uniq.427\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.428\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.287\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.427\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.423\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.428\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.412\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.413\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.426\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.413\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.415\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.429\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.415\"}]}}]}}}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.436\",\"parameters\":[{\"id\":\"_uniq.434\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.435\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.362\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.434\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.430\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.435\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.433\",\"parameters\":[{\"id\":\"_uniq.431\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.432\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.383\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.431\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.430\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.432\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.407\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.408\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.433\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.408\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.410\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.436\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.410\"}]}}]}}}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.401\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.402\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.403\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.437\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.403\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.404\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.405\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step.Fever\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.406\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.405\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.437\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.406\"}]}}}}]}}}}}}}}}}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Option\",\"PUnit\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Escalate.guard\",\"Reasoning.Clinic.Fever.guard\",\"Reasoning.Clinic.Leukocytosis.guard\",\"Reasoning.Clinic.Sepsis.guard\",\"Reasoning.Clinic.Shock.guard\",\"Reasoning.Clinic.Sirs.guard\",\"Reasoning.Clinic.Tachycardia.guard\",\"Reasoning.Clinic.Tachypnea.guard\",\"Reasoning.Clinic.Triage.Step\",\"Reasoning.Clinic.Triage.Step.Escalate\",\"Reasoning.Clinic.Triage.Step.Fever\",\"Reasoning.Clinic.Triage.Step.Leukocytosis\",\"Reasoning.Clinic.Triage.Step.Sepsis\",\"Reasoning.Clinic.Triage.Step.Shock\",\"Reasoning.Clinic.Triage.Step.Sirs\",\"Reasoning.Clinic.Triage.Step.Tachycardia\",\"Reasoning.Clinic.Triage.Step.Tachypnea\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.start\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"List.nil\",\"OfNat.ofNat\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Triage.Step\",\"Reasoning.Clinic.Triage.observe\",\"Reasoning.Clinic.Triage.Ledger.mk\",\"Reasoning.Clinic.Triage.Run.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.observe\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.9\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Ledger\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Ledger.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.18\"}}}}}}}}},\"uses\":[\"List\",\"Nat\",\"OfNat\",\"instOfNatNat\",\"List.nil\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Triage.Ledger\",\"Reasoning.Clinic.Triage.Run\",\"Reasoning.Clinic.Triage.Step\",\"Reasoning.Clinic.Triage.observe\",\"Reasoning.Clinic.Triage.Ledger.mk\",\"Reasoning.Clinic.Triage.Run.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.step\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Option\",\"Unit\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"HAdd.hAdd\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"List.cons\",\"List.nil\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Triage.Run\",\"Reasoning.Clinic.Triage.Step\",\"Reasoning.Clinic.Triage.attempts\",\"Reasoning.Clinic.Triage.fire\",\"Reasoning.Clinic.Triage.select\",\"Reasoning.Clinic.Triage.Ledger.attempts\",\"Reasoning.Clinic.Triage.Ledger.expansions\",\"Reasoning.Clinic.Triage.Ledger.firings\",\"Reasoning.Clinic.Triage.Ledger.frontier\",\"Reasoning.Clinic.Triage.Ledger.iterations\",\"Reasoning.Clinic.Triage.Ledger.mk\",\"Reasoning.Clinic.Triage.Ledger.verifications\",\"Reasoning.Clinic.Triage.Run.ledger\",\"Reasoning.Clinic.Triage.Run.mk\",\"Reasoning.Clinic.Triage.Run.state\",\"Reasoning.Clinic.Triage.Run.trace\",\"Reasoning.Clinic.Triage.next.match_1\",\"Reasoning.Clinic.Triage.replay.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.44\",\"parameters\":[{\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.43\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.44\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.103\",\"parameters\":[{\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.44\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.87\",\"parameters\":[{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Triage.Run\",\"index\":1,\"value\":\"_uniq.36\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.52\"},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.66\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.67\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Ledger\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Triage.Run\",\"index\":2,\"value\":\"_uniq.36\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Triage.Ledger\",\"index\":0,\"value\":\"_uniq.69\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.72\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.68\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.70\"},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Triage.Ledger\",\"index\":1,\"value\":\"_uniq.69\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Triage.Run\",\"index\":0,\"value\":\"_uniq.36\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.attempts\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.68\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.77\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Triage.Ledger\",\"index\":2,\"value\":\"_uniq.69\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.68\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.79\"},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Triage.Ledger\",\"index\":3,\"value\":\"_uniq.69\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Triage.Ledger\",\"index\":4,\"value\":\"_uniq.69\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Triage.Ledger\",\"index\":5,\"value\":\"_uniq.69\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Ledger\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Ledger.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"},{\"kind\":\"fvar\",\"id\":\"_uniq.78\"},{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"},{\"kind\":\"fvar\",\"id\":\"_uniq.82\"},{\"kind\":\"fvar\",\"id\":\"_uniq.83\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.85\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.86\"}}}}}}}}}}}}}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.87\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Triage.Run\",\"index\":0,\"value\":\"_uniq.36\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.fire\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.96\"},{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]}]},\"discriminant\":\"_uniq.97\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.98\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.99\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.100\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.88\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.100\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.101\"}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.103\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Triage.Run\",\"index\":0,\"value\":\"_uniq.36\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.113\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.select\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.112\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]}]},\"discriminant\":\"_uniq.113\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.45\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.115\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.116\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.104\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.116\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.117\"}}}]}}}}}}}},\"uses\":[\"Add\",\"HAdd\",\"List\",\"Nat\",\"OfNat\",\"Option\",\"PUnit\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"List.cons\",\"List.nil\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Triage.Ledger\",\"Reasoning.Clinic.Triage.Run\",\"Reasoning.Clinic.Triage.Step\",\"Reasoning.Clinic.Triage.attempts\",\"Reasoning.Clinic.Triage.fire\",\"Reasoning.Clinic.Triage.select\",\"Reasoning.Clinic.Triage.Ledger.mk\",\"Reasoning.Clinic.Triage.Run.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.verdict\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"Nat\",\"Prod\",\"Unit\",\"Bool.false\",\"Except.error\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Triage.conclude\",\"Reasoning.Clinic.Triage.saturate\",\"Reasoning.Clinic.Triage.account.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.saturate\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.29\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.37\",\"parameters\":[{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.conclude\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.36\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.37\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.50\",\"parameters\":[{\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.49\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.50\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.56\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.51\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.58\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.38\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.60\"}}}}]}}}}}}}}},\"uses\":[\"Bool\",\"Except\",\"Nat\",\"PUnit\",\"Prod\",\"Bool.false\",\"Bool.true\",\"Except.error\",\"Prod.mk\",\"Unit.unit\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Triage.conclude\",\"Reasoning.Clinic.Triage.saturate\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Vitals.heartRate\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Vitals\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Vitals.infection\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Vitals\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Vitals.mk\",\"kind\":\"constructor\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Vitals.respiratoryRate\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Vitals\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Vitals.systolic\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Vitals\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Vitals.temperature\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Vitals\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Vitals.whiteCells\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Vitals\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.Step\",\"kind\":\"inductive\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Reasoning.Main.Grade.Step.Fever\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}},{\"name\":\"Reasoning.Main.Grade.Step.Tachycardia\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}},{\"name\":\"Reasoning.Main.Grade.Step.Tachypnea\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}},{\"name\":\"Reasoning.Main.Grade.Step.Leukocytosis\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}},{\"name\":\"Reasoning.Main.Grade.Step.Sirs\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}},{\"name\":\"Reasoning.Main.Grade.Step.Sepsis\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}},{\"name\":\"Reasoning.Main.Grade.Step.Shock\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}},{\"name\":\"Reasoning.Main.Grade.Step.Escalate\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}}]}},{\"name\":\"Reasoning.Main.Grade.accept\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Main.Grade.extract\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.extract\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.12\"}}},\"uses\":[\"Nat\",\"Option\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Main.Grade.extract\"]},\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.conclude\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"Bool.false\",\"Bool.true\",\"Except.error\",\"Except.ok\",\"Prod.mk\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Main.Grade.accept\",\"Reasoning.Main.Grade.extract\",\"Reasoning.Main.Grade.conclude.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.52\",\"parameters\":[{\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.51\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.52\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.92\",\"parameters\":[{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.69\",\"parameters\":[{\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"fvar\",\"id\":\"_uniq.66\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.68\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.69\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.77\",\"parameters\":[{\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.75\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.76\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.77\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.extract\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.86\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.78\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.87\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.88\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.89\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.70\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.89\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.90\"}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.92\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.accept\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.43\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.101\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.93\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.102\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.103\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.104\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.53\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.104\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.105\"}}}]}}}}}}},\"uses\":[\"Bool\",\"Except\",\"Nat\",\"Option\",\"PUnit\",\"Prod\",\"Bool.false\",\"Bool.true\",\"Except.error\",\"Except.ok\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"Unit.unit\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Main.Grade.accept\",\"Reasoning.Main.Grade.extract\"]},\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.extract\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Option.some\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Chart.level\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":8,\"value\":\"_uniq.6\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.8\"}}}},\"uses\":[\"Nat\",\"Option\",\"Option.some\",\"Reasoning.Clinic.Chart\"]},\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.fire\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Option\",\"Unit\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Escalate.apply\",\"Reasoning.Clinic.Fever.apply\",\"Reasoning.Clinic.Leukocytosis.apply\",\"Reasoning.Clinic.Sepsis.apply\",\"Reasoning.Clinic.Shock.apply\",\"Reasoning.Clinic.Sirs.apply\",\"Reasoning.Clinic.Tachycardia.apply\",\"Reasoning.Clinic.Tachypnea.apply\",\"Reasoning.Main.Grade.Step\",\"Reasoning.Main.Grade.fire.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.78\",\"parameters\":[{\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Fever.apply\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.77\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.78\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.83\",\"parameters\":[{\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Tachycardia.apply\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.82\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.83\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.88\",\"parameters\":[{\"id\":\"_uniq.86\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Tachypnea.apply\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.87\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.88\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.93\",\"parameters\":[{\"id\":\"_uniq.91\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Leukocytosis.apply\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.92\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.93\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.98\",\"parameters\":[{\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Sirs.apply\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.97\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.98\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.103\",\"parameters\":[{\"id\":\"_uniq.101\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Sepsis.apply\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.102\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.103\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.108\",\"parameters\":[{\"id\":\"_uniq.106\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Shock.apply\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.107\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.108\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.113\",\"parameters\":[{\"id\":\"_uniq.111\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Escalate.apply\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.112\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.113\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Reasoning.Main.Grade.Step\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"discriminant\":\"_uniq.64\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Reasoning.Main.Grade.Step.Fever\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.79\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.125\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.126\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Reasoning.Main.Grade.Step.Tachycardia\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.127\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.128\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.84\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.127\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.128\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Reasoning.Main.Grade.Step.Tachypnea\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.129\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.130\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.89\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.129\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.130\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Reasoning.Main.Grade.Step.Leukocytosis\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.131\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.132\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.94\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.131\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.132\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Reasoning.Main.Grade.Step.Sirs\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.99\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.133\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.134\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Reasoning.Main.Grade.Step.Sepsis\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.135\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.104\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.135\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.136\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Reasoning.Main.Grade.Step.Shock\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.137\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.138\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.109\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.137\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.138\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Reasoning.Main.Grade.Step.Escalate\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.139\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.140\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.114\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.139\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.140\"}}}}]}}}}}}}}}}}}}}}}}},\"uses\":[\"Option\",\"PUnit\",\"Unit.unit\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Escalate.apply\",\"Reasoning.Clinic.Fever.apply\",\"Reasoning.Clinic.Leukocytosis.apply\",\"Reasoning.Clinic.Sepsis.apply\",\"Reasoning.Clinic.Shock.apply\",\"Reasoning.Clinic.Sirs.apply\",\"Reasoning.Clinic.Tachycardia.apply\",\"Reasoning.Clinic.Tachypnea.apply\",\"Reasoning.Main.Grade.Step\",\"Reasoning.Main.Grade.Step.Escalate\",\"Reasoning.Main.Grade.Step.Fever\",\"Reasoning.Main.Grade.Step.Leukocytosis\",\"Reasoning.Main.Grade.Step.Sepsis\",\"Reasoning.Main.Grade.Step.Shock\",\"Reasoning.Main.Grade.Step.Sirs\",\"Reasoning.Main.Grade.Step.Tachycardia\",\"Reasoning.Main.Grade.Step.Tachypnea\"]},\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"Nat\",\"Prod\",\"Except.casesOn\",\"Except.error\",\"Except.ok\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.next\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Option\",\"Unit\",\"Option.none\",\"Reasoning.Clinic.Chart\",\"Reasoning.Main.Grade.Step\",\"Reasoning.Main.Grade.fire\",\"Reasoning.Main.Grade.select\",\"Reasoning.Main.Grade.next.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.32\",\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.32\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.39\",\"parameters\":[{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.fire\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.38\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.39\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.select\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"discriminant\":\"_uniq.48\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.33\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.50\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.40\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.52\"}}}]}}}}}}},\"uses\":[\"Option\",\"PUnit\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Clinic.Chart\",\"Reasoning.Main.Grade.Step\",\"Reasoning.Main.Grade.fire\",\"Reasoning.Main.Grade.select\"]},\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.observe\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"OfNat.ofNat\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Chart.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.7\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.9\"}}}}}},\"uses\":[\"Nat\",\"OfNat\",\"instOfNatNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Chart.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.saturate\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"LexLeanCollections.iterateUntil\",\"OfNat.ofNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Main.Grade.next\",\"Reasoning.Main.Grade.observe\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.next\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"11\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.9\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.observe\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.12\"}}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"instOfNatNat\",\"LexLeanCollections.iterateUntil\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Main.Grade.next\",\"Reasoning.Main.Grade.observe\"]},\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.select\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Option\",\"Unit\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.none\",\"Option.some\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Escalate.guard\",\"Reasoning.Clinic.Fever.guard\",\"Reasoning.Clinic.Leukocytosis.guard\",\"Reasoning.Clinic.Sepsis.guard\",\"Reasoning.Clinic.Shock.guard\",\"Reasoning.Clinic.Sirs.guard\",\"Reasoning.Clinic.Tachycardia.guard\",\"Reasoning.Clinic.Tachypnea.guard\",\"Reasoning.Main.Grade.Step\",\"Reasoning.Main.Grade.Step.Escalate\",\"Reasoning.Main.Grade.Step.Fever\",\"Reasoning.Main.Grade.Step.Leukocytosis\",\"Reasoning.Main.Grade.Step.Sepsis\",\"Reasoning.Main.Grade.Step.Shock\",\"Reasoning.Main.Grade.Step.Sirs\",\"Reasoning.Main.Grade.Step.Tachycardia\",\"Reasoning.Main.Grade.Step.Tachypnea\",\"Reasoning.Main.Grade.select.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.114\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.124\",\"parameters\":[{\"id\":\"_uniq.122\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.122\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.123\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.124\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.273\",\"parameters\":[{\"id\":\"_uniq.132\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.124\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.197\",\"parameters\":[{\"id\":\"_uniq.141\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.145\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.124\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.165\",\"parameters\":[{\"id\":\"_uniq.147\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.156\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Escalate.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.157\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.158\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.156\"},{\"kind\":\"fvar\",\"id\":\"_uniq.157\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.158\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.159\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.160\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.160\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.161\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.162\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step.Escalate\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.163\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.162\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.163\"}}}}]}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.166\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.165\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.182\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Shock.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.183\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.184\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.182\"},{\"kind\":\"fvar\",\"id\":\"_uniq.183\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.196\",\"parameters\":[{\"id\":\"_uniq.190\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.190\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.191\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.192\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.166\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.191\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.192\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.193\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.194\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.145\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.193\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.194\"}}}]}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.184\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.185\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.186\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.196\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.186\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.187\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.188\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step.Shock\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.189\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.188\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.196\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.189\"}]}}}}]}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.198\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.197\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.209\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.124\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.229\",\"parameters\":[{\"id\":\"_uniq.211\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.220\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Sepsis.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.221\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.222\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.220\"},{\"kind\":\"fvar\",\"id\":\"_uniq.221\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.222\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.223\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.224\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.224\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.225\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.226\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step.Sepsis\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.227\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.226\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.227\"}}}}]}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.230\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.229\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.246\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Sirs.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.247\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.248\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.246\"},{\"kind\":\"fvar\",\"id\":\"_uniq.247\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.272\",\"parameters\":[{\"id\":\"_uniq.254\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.265\",\"parameters\":[{\"id\":\"_uniq.259\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.259\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.260\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.261\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.198\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.260\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.261\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.262\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.263\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.136\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.262\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.263\"}}}]}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.271\",\"parameters\":[{\"id\":\"_uniq.269\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.270\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.209\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.269\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.265\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.270\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.268\",\"parameters\":[{\"id\":\"_uniq.266\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.267\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.230\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.266\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.265\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.267\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.254\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.255\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.268\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.255\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.257\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.271\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.257\"}]}}]}}}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.248\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.249\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.250\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.272\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.250\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.251\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.252\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step.Sirs\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.253\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.252\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.272\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.253\"}]}}}}]}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.274\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.273\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.287\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.124\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.348\",\"parameters\":[{\"id\":\"_uniq.292\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.296\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.124\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.316\",\"parameters\":[{\"id\":\"_uniq.298\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.307\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Leukocytosis.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.308\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.309\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.307\"},{\"kind\":\"fvar\",\"id\":\"_uniq.308\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.309\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.310\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.311\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.311\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.312\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.313\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step.Leukocytosis\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.314\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.313\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.314\"}}}}]}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.317\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.316\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.333\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Tachypnea.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.334\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.335\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.333\"},{\"kind\":\"fvar\",\"id\":\"_uniq.334\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.347\",\"parameters\":[{\"id\":\"_uniq.341\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.341\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.342\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.343\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.317\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.342\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.343\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.344\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.345\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.296\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.344\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.345\"}}}]}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.335\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.336\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.337\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.347\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.337\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.338\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.339\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step.Tachypnea\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.340\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.339\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.347\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.340\"}]}}}}]}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.349\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.348\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.362\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.124\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.382\",\"parameters\":[{\"id\":\"_uniq.364\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.373\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Tachycardia.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.374\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.375\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.373\"},{\"kind\":\"fvar\",\"id\":\"_uniq.374\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.375\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.376\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.377\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.377\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.378\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.379\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step.Tachycardia\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.380\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.379\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.380\"}}}}]}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.383\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.382\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.399\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Fever.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.400\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.401\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.399\"},{\"kind\":\"fvar\",\"id\":\"_uniq.400\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.437\",\"parameters\":[{\"id\":\"_uniq.407\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.430\",\"parameters\":[{\"id\":\"_uniq.412\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.423\",\"parameters\":[{\"id\":\"_uniq.417\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.417\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.418\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.419\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.274\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.418\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.419\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.420\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.421\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.125\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.420\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.421\"}}}]}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.426\",\"parameters\":[{\"id\":\"_uniq.424\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.425\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.349\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.424\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.423\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.425\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.429\",\"parameters\":[{\"id\":\"_uniq.427\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.428\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.287\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.427\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.423\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.428\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.412\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.413\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.426\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.413\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.415\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.429\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.415\"}]}}]}}}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.436\",\"parameters\":[{\"id\":\"_uniq.434\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.435\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.362\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.434\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.430\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.435\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.433\",\"parameters\":[{\"id\":\"_uniq.431\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.432\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.383\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.431\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.430\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.432\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.407\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.408\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.433\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.408\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.410\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.436\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.410\"}]}}]}}}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.401\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.402\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.403\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.437\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.403\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.404\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.405\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step.Fever\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.406\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.405\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.437\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.406\"}]}}}}]}}}}}}}}}}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Option\",\"PUnit\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Escalate.guard\",\"Reasoning.Clinic.Fever.guard\",\"Reasoning.Clinic.Leukocytosis.guard\",\"Reasoning.Clinic.Sepsis.guard\",\"Reasoning.Clinic.Shock.guard\",\"Reasoning.Clinic.Sirs.guard\",\"Reasoning.Clinic.Tachycardia.guard\",\"Reasoning.Clinic.Tachypnea.guard\",\"Reasoning.Main.Grade.Step\",\"Reasoning.Main.Grade.Step.Escalate\",\"Reasoning.Main.Grade.Step.Fever\",\"Reasoning.Main.Grade.Step.Leukocytosis\",\"Reasoning.Main.Grade.Step.Sepsis\",\"Reasoning.Main.Grade.Step.Shock\",\"Reasoning.Main.Grade.Step.Sirs\",\"Reasoning.Main.Grade.Step.Tachycardia\",\"Reasoning.Main.Grade.Step.Tachypnea\"]},\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.verdict\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"Nat\",\"Prod\",\"Unit\",\"Bool.false\",\"Except.error\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Main.Grade.conclude\",\"Reasoning.Main.Grade.saturate\",\"Reasoning.Main.Grade.account.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.saturate\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.29\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.37\",\"parameters\":[{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.conclude\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.36\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.37\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.44\",\"parameters\":[{\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.43\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.44\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.50\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.45\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.52\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.38\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.54\"}}}}]}}}}}}}}},\"uses\":[\"Bool\",\"Except\",\"Nat\",\"PUnit\",\"Prod\",\"Bool.false\",\"Bool.true\",\"Except.error\",\"Prod.mk\",\"Unit.unit\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Main.Grade.conclude\",\"Reasoning.Main.Grade.saturate\"]},\"inductive\":null},{\"name\":\"Reasoning.Main.planLeft.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"Nat\",\"Prod\",\"Except.casesOn\",\"Except.error\",\"Except.ok\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Main.triageSteps.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"List\",\"Nat\",\"Prod\",\"Except.casesOn\",\"Except.error\",\"Except.ok\",\"Reasoning.Clinic.Triage.Step\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.EmptyB.apply\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Nat\",\"Option\",\"Prod\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.none\",\"Option.some\",\"Reasoning.Planner.EmptyB.conclusion\",\"Reasoning.Planner.EmptyB.guard\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"parameters\":[{\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.EmptyB.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.20\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.22\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.EmptyB.conclusion\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.25\"}}}}]}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Nat\",\"Option\",\"Prod\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Reasoning.Planner.EmptyB.conclusion\",\"Reasoning.Planner.EmptyB.guard\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.EmptyB.conclusion\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Prod\",\"instOfNatNat\",\"OfNat.ofNat\",\"Prod.fst\",\"Prod.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.6\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.9\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.11\"}}}}}}},\"uses\":[\"Nat\",\"OfNat\",\"Prod\",\"instOfNatNat\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.EmptyB.guard\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Prod\",\"instOfNatNat\",\"Bool.and\",\"Nat.ble\",\"Nat.blt\",\"OfNat.ofNat\",\"Prod.fst\",\"Prod.snd\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.30\",\"parameters\":[{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.29\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.30\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.39\",\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"4\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.36\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.38\"}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.39\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.46\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.47\"},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.49\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.31\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.51\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.40\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.53\"}}}}]}}}}}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"PUnit\",\"Prod\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Nat.ble\",\"Nat.blt\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.FillA.apply\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Nat\",\"Option\",\"Prod\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.none\",\"Option.some\",\"Reasoning.Planner.FillA.conclusion\",\"Reasoning.Planner.FillA.guard\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"parameters\":[{\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.FillA.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.20\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.22\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.FillA.conclusion\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.25\"}}}}]}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Nat\",\"Option\",\"Prod\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Reasoning.Planner.FillA.conclusion\",\"Reasoning.Planner.FillA.guard\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.FillA.conclusion\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Prod\",\"instOfNatNat\",\"OfNat.ofNat\",\"Prod.mk\",\"Prod.snd\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"4\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.8\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.6\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.11\"}}}}}}},\"uses\":[\"Nat\",\"OfNat\",\"Prod\",\"instOfNatNat\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.FillA.guard\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Prod\",\"instOfNatNat\",\"Bool.and\",\"Nat.ble\",\"Nat.blt\",\"OfNat.ofNat\",\"Prod.fst\",\"Prod.snd\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.30\",\"parameters\":[{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.29\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.30\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.39\",\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.36\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.38\"}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.39\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"4\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.46\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.47\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.49\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.31\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.51\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.40\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.53\"}}}}]}}}}}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"PUnit\",\"Prod\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Nat.ble\",\"Nat.blt\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Ledger\",\"kind\":\"inductive\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Reasoning.Planner.Plan.Ledger.mk\",\"parameters\":0,\"fields\":6,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Ledger\",\"levels\":[]}}}}}}}}]}},{\"name\":\"Reasoning.Planner.Plan.Node\",\"kind\":\"inductive\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Reasoning.Planner.Plan.Node.mk\",\"parameters\":0,\"fields\":2,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}}}}]}},{\"name\":\"Reasoning.Planner.Plan.Search\",\"kind\":\"inductive\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Reasoning.Planner.Plan.Search.mk\",\"parameters\":0,\"fields\":5,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Ledger\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}}}}}}}]}},{\"name\":\"Reasoning.Planner.Plan.Step\",\"kind\":\"inductive\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Reasoning.Planner.Plan.Step.FillA\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}},{\"name\":\"Reasoning.Planner.Plan.Step.EmptyB\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}},{\"name\":\"Reasoning.Planner.Plan.Step.Pour\",\"parameters\":0,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}}}]}},{\"name\":\"Reasoning.Planner.Plan.accept\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.none\",\"Option.some\",\"Reasoning.Planner.measuresCheck\",\"Reasoning.Planner.Plan.extract\",\"Reasoning.Planner.Plan.replay.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}}},\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.42\",\"parameters\":[{\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.41\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.42\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.64\",\"parameters\":[{\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.measuresCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.58\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.60\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.62\"}}}]}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.64\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.extract\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.73\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.43\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.75\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.76\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.77\"}}}]}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Nat\",\"Option\",\"PUnit\",\"Prod\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Planner.measuresCheck\",\"Reasoning.Planner.Plan.extract\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.attempts\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Prod\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"HAdd.hAdd\",\"LexLeanRuntime.instLengthableList\",\"LexLeanRuntime.length\",\"OfNat.ofNat\",\"Reasoning.Planner.Pour.candidates\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.8\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.11\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Pour.candidates\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.9\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.9\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.17\"}}}}}}}}}}}}},\"uses\":[\"Add\",\"HAdd\",\"List\",\"Nat\",\"OfNat\",\"Prod\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableList\",\"LexLeanRuntime.length\",\"Reasoning.Planner.Pour.candidates\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.extract\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Prod\",\"Option.some\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}},\"uses\":[\"Nat\",\"Option\",\"Prod\",\"Option.some\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.failure\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Prod\",\"instDecidableEqBool\",\"ite\",\"Bool.and\",\"Bool.false\",\"Bool.not\",\"Bool.true\",\"Prod.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.44\",\"parameters\":[{\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.43\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.44\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.49\",\"parameters\":[{\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.not\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.48\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.49\",\"arguments\":[]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.69\",\"parameters\":[{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"discriminant\":\"_uniq.61\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.62\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.64\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.65\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.66\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.67\"}}}}]}}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.75\",\"parameters\":[{\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.50\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.69\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.72\",\"parameters\":[{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.45\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.69\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"discriminant\":\"_uniq.27\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.72\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.75\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]}}}]}}}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"PUnit\",\"Prod\",\"instDecidableEqBool\",\"Bool.false\",\"Bool.not\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Prod.mk\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.fire\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Option\",\"Prod\",\"Unit\",\"Reasoning.Planner.EmptyB.apply\",\"Reasoning.Planner.FillA.apply\",\"Reasoning.Planner.Plan.Step\",\"Reasoning.Planner.Pour.apply\",\"Reasoning.Planner.Plan.fire.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}}},\"parameters\":[{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.46\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.FillA.apply\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.45\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.46\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.51\",\"parameters\":[{\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.EmptyB.apply\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.50\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.51\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.58\",\"parameters\":[{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Pour.apply\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.58\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Reasoning.Planner.Plan.Step\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.37\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Reasoning.Planner.Plan.Step.FillA\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.47\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.66\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.67\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Reasoning.Planner.Plan.Step.EmptyB\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.52\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.68\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.69\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Reasoning.Planner.Plan.Step.Pour\",\"parameters\":[{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.59\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.71\"}}}]}}}}}}}},\"uses\":[\"Nat\",\"Option\",\"PUnit\",\"Prod\",\"Unit.unit\",\"Reasoning.Planner.EmptyB.apply\",\"Reasoning.Planner.FillA.apply\",\"Reasoning.Planner.Plan.Step\",\"Reasoning.Planner.Pour.apply\",\"Reasoning.Planner.Plan.Step.EmptyB\",\"Reasoning.Planner.Plan.Step.FillA\",\"Reasoning.Planner.Plan.Step.Pour\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.fresh\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"List\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"LexLeanCollections.instKeyNat\",\"LexLeanCollections.instKeyProd\",\"LexLeanCollections.listFold\",\"LexLeanCollections.setContains\",\"LexLeanCollections.setInsert\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"List.cons\",\"List.nil\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"Reasoning.Planner.Plan.Node\",\"Reasoning.Planner.Plan.Node.state\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}}},\"parameters\":[{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.47\",\"parameters\":[{\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"borrow\":false},{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.instKeyNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.instKeyProd\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.20\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Node\",\"index\":0,\"value\":\"_uniq.21\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.setContains\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"discriminant\":\"_uniq.36\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.20\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.setInsert\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.44\"}}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.45\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.20\"}}]}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.50\"}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"List\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanCollections.Key\",\"LexLeanCollections.instKeyNat\",\"LexLeanCollections.instKeyProd\",\"LexLeanCollections.listFold\",\"LexLeanCollections.setContains\",\"LexLeanCollections.setInsert\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"List.cons\",\"List.nil\",\"Prod.mk\",\"Reasoning.Planner.Plan.Node\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.observe\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"OfNat.ofNat\",\"Prod.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.8\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.10\"}}}}}},\"uses\":[\"Nat\",\"OfNat\",\"Prod\",\"instOfNatNat\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.run\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instMulNat\",\"instOfNatNat\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.multiply\",\"OfNat.ofNat\",\"Reasoning.Planner.Plan.Search\",\"Reasoning.Planner.Plan.searchStep\",\"Reasoning.Planner.Plan.start\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.11\",\"parameters\":[{\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.searchStep\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.10\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Mul\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instMulNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"8\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.14\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.multiply\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.start\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.18\"}}}}}}}}}},\"uses\":[\"Bool\",\"Mul\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"instMulNat\",\"instOfNatNat\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.multiply\",\"Reasoning.Planner.Plan.Search\",\"Reasoning.Planner.Plan.searchStep\",\"Reasoning.Planner.Plan.start\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.searchStep\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"List\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"ite\",\"Bool.or\",\"Bool.true\",\"HAdd.hAdd\",\"LexLeanCollections.listFold\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"LexLeanRuntime.instLengthableList\",\"LexLeanRuntime.length\",\"List.cons\",\"List.nil\",\"Nat.blt\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"Reasoning.Planner.Plan.Node\",\"Reasoning.Planner.Plan.Search\",\"Reasoning.Planner.Plan.accept\",\"Reasoning.Planner.Plan.attempts\",\"Reasoning.Planner.Plan.fresh\",\"Reasoning.Planner.Plan.successors\",\"Reasoning.Planner.Plan.Ledger.attempts\",\"Reasoning.Planner.Plan.Ledger.expansions\",\"Reasoning.Planner.Plan.Ledger.firings\",\"Reasoning.Planner.Plan.Ledger.frontier\",\"Reasoning.Planner.Plan.Ledger.iterations\",\"Reasoning.Planner.Plan.Ledger.mk\",\"Reasoning.Planner.Plan.Ledger.verifications\",\"Reasoning.Planner.Plan.Node.state\",\"Reasoning.Planner.Plan.Search.found\",\"Reasoning.Planner.Plan.Search.frontier\",\"Reasoning.Planner.Plan.Search.ledger\",\"Reasoning.Planner.Plan.Search.mk\",\"Reasoning.Planner.Plan.Search.truncated\",\"Reasoning.Planner.Plan.Search.visited\",\"Reasoning.Planner.Plan.searchStep.match_1\",\"Reasoning.Planner.Plan.searchStep.match_3\",\"Reasoning.Planner.Plan.searchStep.match_5\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.93\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.101\",\"parameters\":[{\"id\":\"_uniq.99\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.100\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.101\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.327\",\"parameters\":[{\"id\":\"_uniq.109\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.115\",\"parameters\":[{\"id\":\"_uniq.113\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.114\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.115\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.310\",\"parameters\":[{\"id\":\"_uniq.126\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.127\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.162\",\"parameters\":[{\"id\":\"_uniq.133\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Search\",\"index\":1,\"value\":\"_uniq.93\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.135\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.133\"},{\"kind\":\"fvar\",\"id\":\"_uniq.126\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.135\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.137\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Search\",\"index\":3,\"value\":\"_uniq.93\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.138\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.139\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.138\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.140\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.139\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.141\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Ledger\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Search\",\"index\":4,\"value\":\"_uniq.93\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.148\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Ledger\",\"index\":0,\"value\":\"_uniq.141\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.149\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.150\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.149\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.151\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.150\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.152\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.140\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.148\"},{\"kind\":\"fvar\",\"id\":\"_uniq.151\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.153\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Ledger\",\"index\":1,\"value\":\"_uniq.141\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.154\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Ledger\",\"index\":2,\"value\":\"_uniq.141\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.155\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Ledger\",\"index\":3,\"value\":\"_uniq.141\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.156\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Ledger\",\"index\":4,\"value\":\"_uniq.141\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.157\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.140\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.156\"},{\"kind\":\"fvar\",\"id\":\"_uniq.151\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.158\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Ledger\",\"index\":5,\"value\":\"_uniq.141\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.159\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Ledger\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Ledger.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.152\"},{\"kind\":\"fvar\",\"id\":\"_uniq.153\"},{\"kind\":\"fvar\",\"id\":\"_uniq.154\"},{\"kind\":\"fvar\",\"id\":\"_uniq.155\"},{\"kind\":\"fvar\",\"id\":\"_uniq.157\"},{\"kind\":\"fvar\",\"id\":\"_uniq.158\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.160\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.127\"},{\"kind\":\"fvar\",\"id\":\"_uniq.134\"},{\"kind\":\"fvar\",\"id\":\"_uniq.136\"},{\"kind\":\"fvar\",\"id\":\"_uniq.137\"},{\"kind\":\"fvar\",\"id\":\"_uniq.159\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.161\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.160\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.161\"}}}}}}}}}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.163\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.162\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.294\",\"parameters\":[{\"id\":\"_uniq.169\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.174\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.successors\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.126\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.175\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.174\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.176\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Search\",\"index\":1,\"value\":\"_uniq.93\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.177\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.fresh\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.176\"},{\"kind\":\"fvar\",\"id\":\"_uniq.175\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.178\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.177\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.179\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.180\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.178\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.181\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.179\"},{\"kind\":\"fvar\",\"id\":\"_uniq.127\"},{\"kind\":\"fvar\",\"id\":\"_uniq.180\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.182\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.181\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.210\",\"parameters\":[{\"id\":\"_uniq.185\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.186\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.195\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.196\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.195\"},{\"kind\":\"fvar\",\"id\":\"_uniq.185\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.197\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.198\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.197\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.199\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.198\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.200\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.199\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"},{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.201\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.196\"},{\"kind\":\"fvar\",\"id\":\"_uniq.200\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.202\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.203\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.201\"},{\"kind\":\"fvar\",\"id\":\"_uniq.202\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"discriminant\":\"_uniq.203\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.204\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.185\"}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.205\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.206\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.207\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.186\"},{\"kind\":\"fvar\",\"id\":\"_uniq.206\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.208\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.179\"},{\"kind\":\"fvar\",\"id\":\"_uniq.185\"},{\"kind\":\"fvar\",\"id\":\"_uniq.207\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.208\"}}}}}]}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.211\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.212\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.210\"},{\"kind\":\"fvar\",\"id\":\"_uniq.211\"},{\"kind\":\"fvar\",\"id\":\"_uniq.182\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.213\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.212\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.214\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.178\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.215\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.223\",\"parameters\":[{\"id\":\"_uniq.221\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.222\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.222\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.224\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.223\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.234\",\"parameters\":[{\"id\":\"_uniq.226\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.227\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.228\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.227\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.229\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.228\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.230\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.229\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"},{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.231\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.232\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.231\"},{\"kind\":\"fvar\",\"id\":\"_uniq.182\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.233\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.230\"},{\"kind\":\"fvar\",\"id\":\"_uniq.232\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.233\"}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.235\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.234\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.240\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Search\",\"index\":3,\"value\":\"_uniq.93\"},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.287\",\"parameters\":[{\"id\":\"_uniq.245\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.246\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.247\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.246\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.248\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.247\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.249\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Ledger\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Search\",\"index\":4,\"value\":\"_uniq.93\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.250\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Ledger\",\"index\":0,\"value\":\"_uniq.249\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.251\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.252\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.251\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.253\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.252\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.254\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.248\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.250\"},{\"kind\":\"fvar\",\"id\":\"_uniq.253\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.255\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Ledger\",\"index\":1,\"value\":\"_uniq.249\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.256\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Node\",\"index\":0,\"value\":\"_uniq.126\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.257\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.attempts\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.256\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.258\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.248\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.255\"},{\"kind\":\"fvar\",\"id\":\"_uniq.257\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.259\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Ledger\",\"index\":2,\"value\":\"_uniq.249\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.260\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.261\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.260\"},{\"kind\":\"fvar\",\"id\":\"_uniq.175\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.262\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.248\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.259\"},{\"kind\":\"fvar\",\"id\":\"_uniq.261\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.263\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Ledger\",\"index\":3,\"value\":\"_uniq.249\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.264\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.248\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.263\"},{\"kind\":\"fvar\",\"id\":\"_uniq.253\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.265\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Ledger\",\"index\":4,\"value\":\"_uniq.249\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.266\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.248\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.265\"},{\"kind\":\"fvar\",\"id\":\"_uniq.253\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.275\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Ledger\",\"index\":5,\"value\":\"_uniq.249\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.276\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.260\"},{\"kind\":\"fvar\",\"id\":\"_uniq.213\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.277\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.275\"},{\"kind\":\"fvar\",\"id\":\"_uniq.276\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.278\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.279\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.277\"},{\"kind\":\"fvar\",\"id\":\"_uniq.278\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.286\",\"parameters\":[{\"id\":\"_uniq.282\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.283\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Ledger\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Ledger.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.254\"},{\"kind\":\"fvar\",\"id\":\"_uniq.258\"},{\"kind\":\"fvar\",\"id\":\"_uniq.262\"},{\"kind\":\"fvar\",\"id\":\"_uniq.264\"},{\"kind\":\"fvar\",\"id\":\"_uniq.266\"},{\"kind\":\"fvar\",\"id\":\"_uniq.282\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.284\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.213\"},{\"kind\":\"fvar\",\"id\":\"_uniq.214\"},{\"kind\":\"fvar\",\"id\":\"_uniq.215\"},{\"kind\":\"fvar\",\"id\":\"_uniq.245\"},{\"kind\":\"fvar\",\"id\":\"_uniq.283\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.285\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.284\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.285\"}}}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]},\"discriminant\":\"_uniq.279\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.280\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.286\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.275\"}]}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.281\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.286\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.276\"}]}}]}}}}}}}}}}}}}}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.293\",\"parameters\":[{\"id\":\"_uniq.291\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.292\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.224\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.291\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.287\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.292\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.290\",\"parameters\":[{\"id\":\"_uniq.288\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.289\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.235\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.288\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.287\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.289\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]},\"discriminant\":\"_uniq.240\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.241\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.290\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.241\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.243\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.293\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.243\"}]}}}]}}}}}}}}}}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.295\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.294\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.303\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Node\",\"index\":0,\"value\":\"_uniq.126\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.304\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.accept\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"},{\"kind\":\"fvar\",\"id\":\"_uniq.303\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]},\"discriminant\":\"_uniq.304\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.305\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.306\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.295\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.305\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.306\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.307\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.308\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.163\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.307\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.308\"}}}]}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.311\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.310\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.320\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Search\",\"index\":0,\"value\":\"_uniq.93\"},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]},\"discriminant\":\"_uniq.320\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.321\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.322\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.116\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.321\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.322\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.323\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.324\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.325\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.311\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.323\"},{\"kind\":\"fvar\",\"id\":\"_uniq.324\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.325\"}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.328\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.327\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.336\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Search\",\"index\":2,\"value\":\"_uniq.93\"},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]},\"discriminant\":\"_uniq.336\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.337\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.338\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.328\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.337\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.338\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.339\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.340\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.102\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.339\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.340\"}}}]}}}}}}},\"uses\":[\"Add\",\"Bool\",\"Decidable\",\"HAdd\",\"List\",\"Nat\",\"OfNat\",\"Option\",\"PUnit\",\"Prod\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanCollections.listFold\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"LexLeanRuntime.instLengthableList\",\"LexLeanRuntime.length\",\"List.cons\",\"List.nil\",\"Nat.blt\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"Unit.unit\",\"Reasoning.Planner.Plan.Ledger\",\"Reasoning.Planner.Plan.Node\",\"Reasoning.Planner.Plan.Search\",\"Reasoning.Planner.Plan.accept\",\"Reasoning.Planner.Plan.attempts\",\"Reasoning.Planner.Plan.fresh\",\"Reasoning.Planner.Plan.successors\",\"Reasoning.Planner.Plan.Ledger.mk\",\"Reasoning.Planner.Plan.Search.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.start\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"List\",\"Nat\",\"Prod\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"ite\",\"Bool.true\",\"HAdd.hAdd\",\"LexLeanCollections.instKeyNat\",\"LexLeanCollections.instKeyProd\",\"LexLeanCollections.listFold\",\"LexLeanCollections.setInsert\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"LexLeanRuntime.instLengthableList\",\"LexLeanRuntime.length\",\"List.cons\",\"List.nil\",\"Nat.blt\",\"OfNat.ofNat\",\"Option.none\",\"Reasoning.Planner.Plan.Node\",\"Reasoning.Planner.Plan.Step\",\"Reasoning.Planner.Plan.observe\",\"Reasoning.Planner.Plan.Ledger.mk\",\"Reasoning.Planner.Plan.Node.mk\",\"Reasoning.Planner.Plan.Search.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.43\",\"parameters\":[{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.31\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"discriminant\":\"_uniq.35\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.17\"}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.41\"}}}}}}]}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.observe\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.49\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.instKeyNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.instKeyProd\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.setInsert\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.52\"},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.57\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.58\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.61\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.64\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.65\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.67\"},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Ledger\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Ledger.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.66\"},{\"kind\":\"fvar\",\"id\":\"_uniq.66\"},{\"kind\":\"fvar\",\"id\":\"_uniq.66\"},{\"kind\":\"fvar\",\"id\":\"_uniq.66\"},{\"kind\":\"fvar\",\"id\":\"_uniq.66\"},{\"kind\":\"fvar\",\"id\":\"_uniq.68\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"},{\"kind\":\"fvar\",\"id\":\"_uniq.69\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.70\"}}}}}}}}}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Add\",\"Bool\",\"Decidable\",\"HAdd\",\"List\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanCollections.Key\",\"LexLeanCollections.instKeyNat\",\"LexLeanCollections.instKeyProd\",\"LexLeanCollections.listFold\",\"LexLeanCollections.setInsert\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"LexLeanRuntime.instLengthableList\",\"LexLeanRuntime.length\",\"List.cons\",\"List.nil\",\"Nat.blt\",\"Option.none\",\"Reasoning.Planner.Plan.Ledger\",\"Reasoning.Planner.Plan.Node\",\"Reasoning.Planner.Plan.Search\",\"Reasoning.Planner.Plan.Step\",\"Reasoning.Planner.Plan.observe\",\"Reasoning.Planner.Plan.Ledger.mk\",\"Reasoning.Planner.Plan.Node.mk\",\"Reasoning.Planner.Plan.Search.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.successors\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"Reasoning.Planner.Plan.Node\",\"Reasoning.Planner.Plan.EmptyB.successors\",\"Reasoning.Planner.Plan.FillA.successors\",\"Reasoning.Planner.Plan.Pour.successors\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.FillA.successors\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.EmptyB.successors\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Pour.successors\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.12\"}}}}}}}},\"uses\":[\"List\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"Reasoning.Planner.Plan.Node\",\"Reasoning.Planner.Plan.EmptyB.successors\",\"Reasoning.Planner.Plan.FillA.successors\",\"Reasoning.Planner.Plan.Pour.successors\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.verdict\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"List\",\"Nat\",\"Prod\",\"Except.error\",\"Except.ok\",\"Prod.fst\",\"Reasoning.Planner.Plan\",\"Reasoning.Planner.Plan.Step\",\"Reasoning.Planner.Plan.verdict.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"parameters\":[{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.34\",\"parameters\":[{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.31\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.33\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.34\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.41\",\"parameters\":[{\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.40\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.41\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Except\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.53\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Except.error\",\"parameters\":[{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.42\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.55\"}}},{\"kind\":\"constructor\",\"constructor\":\"Except.ok\",\"parameters\":[{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.35\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}}]}}}}}}},\"uses\":[\"Bool\",\"Except\",\"List\",\"Nat\",\"Prod\",\"Except.error\",\"Except.ok\",\"Reasoning.Planner.Plan\",\"Reasoning.Planner.Plan.Step\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.Pour.apply\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Nat\",\"Option\",\"Prod\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.none\",\"Option.some\",\"Reasoning.Planner.Pour.conclusion\",\"Reasoning.Planner.Pour.guard\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}}},\"parameters\":[{\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Pour.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.26\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.28\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Pour.conclusion\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}}}}]}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Nat\",\"Option\",\"Prod\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Reasoning.Planner.Pour.conclusion\",\"Reasoning.Planner.Pour.guard\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.Pour.candidates\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Prod\",\"instOfNatNat\",\"List.cons\",\"List.nil\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.8\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.11\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.14\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.19\"}}}}}}}}}}}}}}},\"uses\":[\"List\",\"Nat\",\"OfNat\",\"Prod\",\"instOfNatNat\",\"List.cons\",\"List.nil\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.Pour.conclusion\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Prod\",\"instAddNat\",\"instHAdd\",\"instSubNat\",\"HAdd.hAdd\",\"LexLeanRuntime.subtract\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.11\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.17\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.11\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.18\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.21\"}}}}}}}}}}},\"uses\":[\"Add\",\"HAdd\",\"Nat\",\"Prod\",\"Sub\",\"instAddNat\",\"instHAdd\",\"instSubNat\",\"LexLeanRuntime.subtract\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.Pour.guard\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Prod\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"Bool.and\",\"HAdd.hAdd\",\"Nat.ble\",\"OfNat.ofNat\",\"Prod.fst\",\"Prod.snd\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.45\",\"parameters\":[{\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.44\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.45\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.83\",\"parameters\":[{\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.45\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.63\",\"parameters\":[{\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.36\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"4\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.60\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.58\"},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.62\"}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.63\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.69\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.70\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.36\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.71\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.72\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.75\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.77\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.55\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.78\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.79\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.64\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.81\"}}}}]}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.83\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.36\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.89\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.90\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.46\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.91\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.92\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.84\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.93\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.94\"}}}}]}}}}}}}},\"uses\":[\"Add\",\"Bool\",\"HAdd\",\"Nat\",\"OfNat\",\"PUnit\",\"Prod\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Nat.ble\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Dose.Ledger\",\"kind\":\"inductive\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Reasoning.Screening.Dose.Ledger.mk\",\"parameters\":0,\"fields\":6,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Ledger\",\"levels\":[]}}}}}}}}]}},{\"name\":\"Reasoning.Screening.Dose.Trial\",\"kind\":\"inductive\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Reasoning.Screening.Dose.Trial.mk\",\"parameters\":0,\"fields\":3,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Ledger\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]}}}}}]}},{\"name\":\"Reasoning.Screening.Dose.candidates\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Except\",\"List\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"ite\",\"Bool.false\",\"Bool.true\",\"Except.error\",\"Except.ok\",\"List.nil\",\"Prod.mk\",\"Reasoning.Screening.DoseModel\",\"Reasoning.Screening.shortCheck\",\"Reasoning.Screening.Propose.candidates.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.37\",\"parameters\":[{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.36\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.37\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.44\",\"parameters\":[{\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.43\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.44\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.30\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.DoseModel\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.59\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.shortCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.58\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.69\"},{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.84\",\"parameters\":[{\"id\":\"_uniq.78\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Except\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.78\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Except.error\",\"parameters\":[{\"id\":\"_uniq.79\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.45\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.79\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.80\"}}},{\"kind\":\"constructor\",\"constructor\":\"Except.ok\",\"parameters\":[{\"id\":\"_uniq.81\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.38\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.82\"}}}]}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.71\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.72\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.70\"},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.84\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"}]}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.76\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.84\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.77\"}]}}}]}}}}}}}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Except\",\"List\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"Bool.false\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Except.error\",\"Except.ok\",\"List.nil\",\"Prod.mk\",\"Reasoning.Screening.DoseModel\",\"Reasoning.Screening.shortCheck\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Dose.failure\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Nat\",\"Prod\",\"Unit\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Nat.beq\",\"OfNat.ofNat\",\"Prod.mk\",\"Reasoning.Screening.Dose.Trial\",\"Reasoning.Screening.Dose.Ledger.verifications\",\"Reasoning.Screening.Dose.Trial.ledger\",\"Reasoning.Screening.Dose.Trial.truncated\",\"Reasoning.Screening.Dose.try.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.43\",\"parameters\":[{\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.42\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.43\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.87\",\"parameters\":[{\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.57\",\"parameters\":[{\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.56\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.57\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.64\",\"parameters\":[{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.63\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.64\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Ledger\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Dose.Trial\",\"index\":2,\"value\":\"_uniq.34\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Dose.Ledger\",\"index\":4,\"value\":\"_uniq.70\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.78\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.79\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.77\"},{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"discriminant\":\"_uniq.81\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.82\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.83\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.58\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.84\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.85\"}}}}]}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.87\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Dose.Trial\",\"index\":1,\"value\":\"_uniq.34\"},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"discriminant\":\"_uniq.93\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.88\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.94\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.95\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.44\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.96\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.97\"}}}}]}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"PUnit\",\"Prod\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Nat.beq\",\"Prod.mk\",\"Unit.unit\",\"Reasoning.Screening.Dose.Ledger\",\"Reasoning.Screening.Dose.Trial\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Dose.run\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Bool.false\",\"LexLeanCollections.listFold\",\"OfNat.ofNat\",\"Option.none\",\"Reasoning.Screening.Dose.Trial\",\"Reasoning.Screening.Dose.candidates\",\"Reasoning.Screening.Dose.try\",\"Reasoning.Screening.Dose.Ledger.mk\",\"Reasoning.Screening.Dose.Trial.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.13\",\"parameters\":[{\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.try\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.12\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.17\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Ledger\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Ledger.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.candidates\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.22\"}}}}}}}}}}}},\"uses\":[\"Bool\",\"List\",\"Nat\",\"OfNat\",\"Option\",\"instOfNatNat\",\"Bool.false\",\"LexLeanCollections.listFold\",\"Option.none\",\"Reasoning.Screening.Dose.Ledger\",\"Reasoning.Screening.Dose.Trial\",\"Reasoning.Screening.Dose.candidates\",\"Reasoning.Screening.Dose.try\",\"Reasoning.Screening.Dose.Ledger.mk\",\"Reasoning.Screening.Dose.Trial.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Dose.try\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Nat\",\"Option\",\"Unit\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"Bool.true\",\"HAdd.hAdd\",\"Nat.blt\",\"OfNat.ofNat\",\"Option.none\",\"Reasoning.Screening.Dose.Trial\",\"Reasoning.Screening.Dose.verify\",\"Reasoning.Screening.Dose.Ledger.attempts\",\"Reasoning.Screening.Dose.Ledger.expansions\",\"Reasoning.Screening.Dose.Ledger.firings\",\"Reasoning.Screening.Dose.Ledger.frontier\",\"Reasoning.Screening.Dose.Ledger.iterations\",\"Reasoning.Screening.Dose.Ledger.mk\",\"Reasoning.Screening.Dose.Ledger.verifications\",\"Reasoning.Screening.Dose.Trial.found\",\"Reasoning.Screening.Dose.Trial.ledger\",\"Reasoning.Screening.Dose.Trial.mk\",\"Reasoning.Screening.Dose.Trial.truncated\",\"Reasoning.Screening.Dose.try.match_1\",\"Reasoning.Screening.Dose.try.match_3\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]}}}},\"parameters\":[{\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.53\",\"parameters\":[{\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.46\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.53\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.110\",\"parameters\":[{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.85\",\"parameters\":[{\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.verify\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Dose.Trial\",\"index\":1,\"value\":\"_uniq.46\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.68\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Ledger\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Dose.Trial\",\"index\":2,\"value\":\"_uniq.46\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Dose.Ledger\",\"index\":0,\"value\":\"_uniq.70\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.72\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.73\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.69\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.71\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Dose.Ledger\",\"index\":1,\"value\":\"_uniq.70\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.69\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.76\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Dose.Ledger\",\"index\":2,\"value\":\"_uniq.70\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Dose.Ledger\",\"index\":3,\"value\":\"_uniq.70\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Dose.Ledger\",\"index\":4,\"value\":\"_uniq.70\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.69\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Dose.Ledger\",\"index\":5,\"value\":\"_uniq.70\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Ledger\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Ledger.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.77\"},{\"kind\":\"fvar\",\"id\":\"_uniq.78\"},{\"kind\":\"fvar\",\"id\":\"_uniq.79\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"},{\"kind\":\"fvar\",\"id\":\"_uniq.82\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"fvar\",\"id\":\"_uniq.66\"},{\"kind\":\"fvar\",\"id\":\"_uniq.83\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.84\"}}}}}}}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.85\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.93\",\"parameters\":[{\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Ledger\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Dose.Trial\",\"index\":2,\"value\":\"_uniq.46\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.89\"},{\"kind\":\"fvar\",\"id\":\"_uniq.90\"},{\"kind\":\"fvar\",\"id\":\"_uniq.91\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.92\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.93\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Ledger\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Dose.Trial\",\"index\":2,\"value\":\"_uniq.46\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Dose.Ledger\",\"index\":4,\"value\":\"_uniq.99\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.101\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.102\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.100\"},{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]},\"discriminant\":\"_uniq.104\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.94\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.105\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.106\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.86\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.107\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.108\"}}}}]}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.111\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.110\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Dose.Trial\",\"index\":0,\"value\":\"_uniq.46\"},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]},\"discriminant\":\"_uniq.119\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.120\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.121\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.111\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.120\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.121\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.122\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.54\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.122\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.123\"}}}]}}}}}}},\"uses\":[\"Add\",\"Bool\",\"HAdd\",\"Nat\",\"OfNat\",\"Option\",\"PUnit\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Nat.blt\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Screening.Dose.Ledger\",\"Reasoning.Screening.Dose.Trial\",\"Reasoning.Screening.Dose.verify\",\"Reasoning.Screening.Dose.Ledger.mk\",\"Reasoning.Screening.Dose.Trial.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Dose.verdict\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"Except.error\",\"Except.ok\",\"Reasoning.Screening.Dose.Trial\",\"Reasoning.Screening.Dose.failure\",\"Reasoning.Screening.Dose.run\",\"Reasoning.Screening.Dose.Trial.found\",\"Reasoning.Screening.Dose.try.match_3\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.run\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.31\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.38\",\"parameters\":[{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.37\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.38\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.46\",\"parameters\":[{\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.failure\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.45\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.46\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Dose.Trial\",\"index\":0,\"value\":\"_uniq.32\"},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.58\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.47\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.60\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.39\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.62\"}}}]}}}}}}}}},\"uses\":[\"Bool\",\"Except\",\"Nat\",\"Option\",\"PUnit\",\"Prod\",\"Except.error\",\"Except.ok\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Screening.Dose.Trial\",\"Reasoning.Screening.Dose.failure\",\"Reasoning.Screening.Dose.run\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Dose.verify\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Nat\",\"Option\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.none\",\"Option.some\",\"Reasoning.Screening.safeCheck\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.safeCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.26\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.28\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.30\"}}}]}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Nat\",\"Option\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Reasoning.Screening.safeCheck\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Propose.apply\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Nat\",\"Option\",\"Prod\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.none\",\"Option.some\",\"Reasoning.Screening.Propose.conclusion\",\"Reasoning.Screening.Propose.guard\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}}},\"parameters\":[{\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Propose.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.26\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.28\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Propose.conclusion\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}}}}]}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Nat\",\"Option\",\"Prod\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Reasoning.Screening.Propose.conclusion\",\"Reasoning.Screening.Propose.guard\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Propose.candidates\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Except\",\"List\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"ite\",\"Bool.false\",\"Bool.true\",\"Except.error\",\"Except.ok\",\"List.nil\",\"Prod.fst\",\"Prod.mk\",\"Reasoning.Screening.DoseModel\",\"Reasoning.Screening.shortCheck\",\"Reasoning.Screening.Propose.candidates.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.37\",\"parameters\":[{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.36\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.37\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.44\",\"parameters\":[{\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.43\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.44\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.58\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.DoseModel\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.60\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.shortCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.70\"},{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.85\",\"parameters\":[{\"id\":\"_uniq.79\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Except\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.79\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Except.error\",\"parameters\":[{\"id\":\"_uniq.80\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.45\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.81\"}}},{\"kind\":\"constructor\",\"constructor\":\"Except.ok\",\"parameters\":[{\"id\":\"_uniq.82\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.38\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.82\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.83\"}}}]}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.72\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.73\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.71\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.75\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.85\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.77\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.85\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.78\"}]}}}]}}}}}}}}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Except\",\"List\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"Bool.false\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Except.error\",\"Except.ok\",\"List.nil\",\"Prod.mk\",\"Reasoning.Screening.DoseModel\",\"Reasoning.Screening.shortCheck\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Propose.conclusion\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Prod\",\"Prod.fst\",\"Prod.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.11\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.14\"}}}},\"uses\":[\"Nat\",\"Prod\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Propose.guard\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Prod\",\"instOfNatNat\",\"Bool.and\",\"Nat.beq\",\"Nat.blt\",\"OfNat.ofNat\",\"Prod.snd\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.37\",\"parameters\":[{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.36\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.37\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.45\",\"parameters\":[{\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.42\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.43\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.44\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.45\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.28\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.53\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.55\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.38\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.46\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.59\"}}}}]}}}}}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"PUnit\",\"Prod\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Nat.beq\",\"Nat.blt\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.Ledger\",\"kind\":\"inductive\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Reasoning.Screening.Screen.Ledger.mk\",\"parameters\":0,\"fields\":6,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Ledger\",\"levels\":[]}}}}}}}}]}},{\"name\":\"Reasoning.Screening.Screen.Node\",\"kind\":\"inductive\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Reasoning.Screening.Screen.Node.mk\",\"parameters\":0,\"fields\":2,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}}}}]}},{\"name\":\"Reasoning.Screening.Screen.Search\",\"kind\":\"inductive\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Reasoning.Screening.Screen.Search.mk\",\"parameters\":0,\"fields\":4,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Ledger\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}}}}}}]}},{\"name\":\"Reasoning.Screening.Screen.Step\",\"kind\":\"inductive\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Reasoning.Screening.Screen.Step.Propose\",\"parameters\":0,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}}}]}},{\"name\":\"Reasoning.Screening.Screen.accept\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.none\",\"Option.some\",\"Reasoning.Screening.safeCheck\",\"Reasoning.Screening.Screen.extract\",\"Reasoning.Screening.Screen.accept.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.42\",\"parameters\":[{\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.41\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.42\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.64\",\"parameters\":[{\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.safeCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.58\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.60\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.62\"}}}]}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.64\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.extract\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.73\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.43\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.75\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.77\"}}}]}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Nat\",\"Option\",\"PUnit\",\"Prod\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Screening.safeCheck\",\"Reasoning.Screening.Screen.extract\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.attempts\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Prod\",\"LexLeanRuntime.instLengthableList\",\"LexLeanRuntime.length\",\"Reasoning.Screening.Propose.candidates\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Propose.candidates\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.9\"}}}}},\"uses\":[\"List\",\"Nat\",\"Prod\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableList\",\"LexLeanRuntime.length\",\"Reasoning.Screening.Propose.candidates\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.extract\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Nat\",\"Option\",\"Prod\",\"instDecidableEqBool\",\"instOfNatNat\",\"ite\",\"Bool.true\",\"Nat.blt\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Prod.snd\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.19\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.9\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.24\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.26\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.28\"}}}]}}}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"instDecidableEqBool\",\"instOfNatNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Nat.blt\",\"Option.none\",\"Option.some\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.failure\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Prod\",\"instDecidableEqBool\",\"ite\",\"Bool.and\",\"Bool.false\",\"Bool.not\",\"Bool.true\",\"Prod.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.44\",\"parameters\":[{\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.43\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.44\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.49\",\"parameters\":[{\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.not\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.48\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.49\",\"arguments\":[]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.69\",\"parameters\":[{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"discriminant\":\"_uniq.61\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.62\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.64\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.65\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.66\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.67\"}}}}]}}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.75\",\"parameters\":[{\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.50\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.69\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.72\",\"parameters\":[{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.45\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.69\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"discriminant\":\"_uniq.27\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.72\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.75\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]}}}]}}}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"PUnit\",\"Prod\",\"instDecidableEqBool\",\"Bool.false\",\"Bool.not\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Prod.mk\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.fire\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Option\",\"Prod\",\"Reasoning.Screening.Propose.apply\",\"Reasoning.Screening.Screen.Step\",\"Reasoning.Screening.Screen.fire.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}}},\"parameters\":[{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.31\",\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Propose.apply\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.30\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.31\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Reasoning.Screening.Screen.Step\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.24\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Reasoning.Screening.Screen.Step.Propose\",\"parameters\":[{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.32\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.38\"}}}]}}}},\"uses\":[\"Nat\",\"Option\",\"Prod\",\"Reasoning.Screening.Propose.apply\",\"Reasoning.Screening.Screen.Step\",\"Reasoning.Screening.Screen.Step.Propose\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.observe\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"OfNat.ofNat\",\"Prod.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.8\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.10\"}}}}}},\"uses\":[\"Nat\",\"OfNat\",\"Prod\",\"instOfNatNat\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.run\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"LexLeanCollections.iterateUntil\",\"OfNat.ofNat\",\"Reasoning.Screening.Screen.Search\",\"Reasoning.Screening.Screen.searchStep\",\"Reasoning.Screening.Screen.start\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.11\",\"parameters\":[{\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.searchStep\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.10\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"8\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.13\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.start\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.16\"}}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"instOfNatNat\",\"LexLeanCollections.iterateUntil\",\"Reasoning.Screening.Screen.Search\",\"Reasoning.Screening.Screen.searchStep\",\"Reasoning.Screening.Screen.start\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.searchStep\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"List\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"ite\",\"Bool.or\",\"Bool.true\",\"HAdd.hAdd\",\"LexLeanCollections.listFold\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"LexLeanRuntime.instLengthableList\",\"LexLeanRuntime.length\",\"List.cons\",\"List.nil\",\"Nat.blt\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"Reasoning.Screening.Screen.Node\",\"Reasoning.Screening.Screen.Search\",\"Reasoning.Screening.Screen.accept\",\"Reasoning.Screening.Screen.attempts\",\"Reasoning.Screening.Screen.successors\",\"Reasoning.Screening.Dose.try.match_3\",\"Reasoning.Screening.Screen.Ledger.attempts\",\"Reasoning.Screening.Screen.Ledger.expansions\",\"Reasoning.Screening.Screen.Ledger.firings\",\"Reasoning.Screening.Screen.Ledger.frontier\",\"Reasoning.Screening.Screen.Ledger.iterations\",\"Reasoning.Screening.Screen.Ledger.mk\",\"Reasoning.Screening.Screen.Ledger.verifications\",\"Reasoning.Screening.Screen.Node.state\",\"Reasoning.Screening.Screen.Search.found\",\"Reasoning.Screening.Screen.Search.frontier\",\"Reasoning.Screening.Screen.Search.ledger\",\"Reasoning.Screening.Screen.Search.mk\",\"Reasoning.Screening.Screen.Search.truncated\",\"Reasoning.Screening.Screen.searchStep.match_1\",\"Reasoning.Screening.Screen.searchStep.match_3\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.93\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.101\",\"parameters\":[{\"id\":\"_uniq.99\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.100\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.101\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.320\",\"parameters\":[{\"id\":\"_uniq.109\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.115\",\"parameters\":[{\"id\":\"_uniq.113\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.114\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.115\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.303\",\"parameters\":[{\"id\":\"_uniq.126\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.127\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.161\",\"parameters\":[{\"id\":\"_uniq.133\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.133\"},{\"kind\":\"fvar\",\"id\":\"_uniq.126\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.135\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.134\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Search\",\"index\":2,\"value\":\"_uniq.93\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.137\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.138\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.137\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.139\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.138\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.140\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Ledger\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Search\",\"index\":3,\"value\":\"_uniq.93\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.147\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Ledger\",\"index\":0,\"value\":\"_uniq.140\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.148\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.149\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.148\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.150\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.149\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.151\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.139\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.147\"},{\"kind\":\"fvar\",\"id\":\"_uniq.150\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.152\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Ledger\",\"index\":1,\"value\":\"_uniq.140\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.153\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Ledger\",\"index\":2,\"value\":\"_uniq.140\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.154\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Ledger\",\"index\":3,\"value\":\"_uniq.140\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.155\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Ledger\",\"index\":4,\"value\":\"_uniq.140\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.156\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.139\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.155\"},{\"kind\":\"fvar\",\"id\":\"_uniq.150\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.157\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Ledger\",\"index\":5,\"value\":\"_uniq.140\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.158\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Ledger\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Ledger.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.151\"},{\"kind\":\"fvar\",\"id\":\"_uniq.152\"},{\"kind\":\"fvar\",\"id\":\"_uniq.153\"},{\"kind\":\"fvar\",\"id\":\"_uniq.154\"},{\"kind\":\"fvar\",\"id\":\"_uniq.156\"},{\"kind\":\"fvar\",\"id\":\"_uniq.157\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.159\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.127\"},{\"kind\":\"fvar\",\"id\":\"_uniq.135\"},{\"kind\":\"fvar\",\"id\":\"_uniq.136\"},{\"kind\":\"fvar\",\"id\":\"_uniq.158\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.160\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.159\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.160\"}}}}}}}}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.162\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.161\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.287\",\"parameters\":[{\"id\":\"_uniq.168\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.173\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.successors\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.126\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.174\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.173\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.175\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.174\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.176\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.177\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.176\"},{\"kind\":\"fvar\",\"id\":\"_uniq.175\"},{\"kind\":\"fvar\",\"id\":\"_uniq.127\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.178\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.177\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.205\",\"parameters\":[{\"id\":\"_uniq.181\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.182\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.191\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.192\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.191\"},{\"kind\":\"fvar\",\"id\":\"_uniq.181\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.193\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.194\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.193\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.195\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.194\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.196\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.192\"},{\"kind\":\"fvar\",\"id\":\"_uniq.195\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.197\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.198\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.196\"},{\"kind\":\"fvar\",\"id\":\"_uniq.197\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"discriminant\":\"_uniq.198\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.199\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.181\"}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.200\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.201\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.202\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.182\"},{\"kind\":\"fvar\",\"id\":\"_uniq.201\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.203\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.176\"},{\"kind\":\"fvar\",\"id\":\"_uniq.181\"},{\"kind\":\"fvar\",\"id\":\"_uniq.202\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.203\"}}}}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.206\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.207\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.205\"},{\"kind\":\"fvar\",\"id\":\"_uniq.206\"},{\"kind\":\"fvar\",\"id\":\"_uniq.178\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.208\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.207\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.209\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.217\",\"parameters\":[{\"id\":\"_uniq.215\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.216\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.216\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.218\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.217\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.227\",\"parameters\":[{\"id\":\"_uniq.220\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.221\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.222\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.221\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.223\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.222\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.224\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.225\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.224\"},{\"kind\":\"fvar\",\"id\":\"_uniq.178\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.226\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.223\"},{\"kind\":\"fvar\",\"id\":\"_uniq.225\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.226\"}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.228\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.227\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.233\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Search\",\"index\":2,\"value\":\"_uniq.93\"},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.280\",\"parameters\":[{\"id\":\"_uniq.238\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.239\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.240\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.239\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.241\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.240\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.242\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Ledger\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Search\",\"index\":3,\"value\":\"_uniq.93\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.243\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Ledger\",\"index\":0,\"value\":\"_uniq.242\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.244\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.245\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.244\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.246\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.245\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.247\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.241\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.243\"},{\"kind\":\"fvar\",\"id\":\"_uniq.246\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.248\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Ledger\",\"index\":1,\"value\":\"_uniq.242\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.249\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Node\",\"index\":0,\"value\":\"_uniq.126\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.250\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.attempts\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.249\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.251\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.241\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.248\"},{\"kind\":\"fvar\",\"id\":\"_uniq.250\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.252\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Ledger\",\"index\":2,\"value\":\"_uniq.242\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.253\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.254\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.253\"},{\"kind\":\"fvar\",\"id\":\"_uniq.174\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.255\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.241\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.252\"},{\"kind\":\"fvar\",\"id\":\"_uniq.254\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.256\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Ledger\",\"index\":3,\"value\":\"_uniq.242\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.257\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.241\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.256\"},{\"kind\":\"fvar\",\"id\":\"_uniq.246\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.258\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Ledger\",\"index\":4,\"value\":\"_uniq.242\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.259\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.241\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.258\"},{\"kind\":\"fvar\",\"id\":\"_uniq.246\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.268\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Ledger\",\"index\":5,\"value\":\"_uniq.242\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.269\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.253\"},{\"kind\":\"fvar\",\"id\":\"_uniq.208\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.270\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.268\"},{\"kind\":\"fvar\",\"id\":\"_uniq.269\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.271\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.272\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.270\"},{\"kind\":\"fvar\",\"id\":\"_uniq.271\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.279\",\"parameters\":[{\"id\":\"_uniq.275\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.276\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Ledger\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Ledger.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.247\"},{\"kind\":\"fvar\",\"id\":\"_uniq.251\"},{\"kind\":\"fvar\",\"id\":\"_uniq.255\"},{\"kind\":\"fvar\",\"id\":\"_uniq.257\"},{\"kind\":\"fvar\",\"id\":\"_uniq.259\"},{\"kind\":\"fvar\",\"id\":\"_uniq.275\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.277\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.208\"},{\"kind\":\"fvar\",\"id\":\"_uniq.209\"},{\"kind\":\"fvar\",\"id\":\"_uniq.238\"},{\"kind\":\"fvar\",\"id\":\"_uniq.276\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.278\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.277\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.278\"}}}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]},\"discriminant\":\"_uniq.272\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.273\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.279\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.268\"}]}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.274\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.279\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.269\"}]}}]}}}}}}}}}}}}}}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.286\",\"parameters\":[{\"id\":\"_uniq.284\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.285\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.218\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.284\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.280\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.285\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.283\",\"parameters\":[{\"id\":\"_uniq.281\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.282\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.228\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.281\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.280\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.282\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]},\"discriminant\":\"_uniq.233\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.234\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.283\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.234\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.236\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.286\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.236\"}]}}}]}}}}}}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.288\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.287\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.296\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Node\",\"index\":0,\"value\":\"_uniq.126\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.297\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.accept\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"},{\"kind\":\"fvar\",\"id\":\"_uniq.296\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]},\"discriminant\":\"_uniq.297\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.298\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.299\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.288\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.298\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.299\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.300\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.301\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.162\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.300\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.301\"}}}]}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.304\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.303\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.313\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Search\",\"index\":0,\"value\":\"_uniq.93\"},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]},\"discriminant\":\"_uniq.313\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.314\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.315\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.116\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.314\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.315\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.316\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.317\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.318\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.304\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.316\"},{\"kind\":\"fvar\",\"id\":\"_uniq.317\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.318\"}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.321\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.320\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.329\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Search\",\"index\":1,\"value\":\"_uniq.93\"},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]},\"discriminant\":\"_uniq.329\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.330\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.331\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.321\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.330\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.331\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.332\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.333\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.102\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.332\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.333\"}}}]}}}}}}},\"uses\":[\"Add\",\"Bool\",\"Decidable\",\"HAdd\",\"List\",\"Nat\",\"OfNat\",\"Option\",\"PUnit\",\"Prod\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanCollections.listFold\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"LexLeanRuntime.instLengthableList\",\"LexLeanRuntime.length\",\"List.cons\",\"List.nil\",\"Nat.blt\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"Unit.unit\",\"Reasoning.Screening.Screen.Ledger\",\"Reasoning.Screening.Screen.Node\",\"Reasoning.Screening.Screen.Search\",\"Reasoning.Screening.Screen.accept\",\"Reasoning.Screening.Screen.attempts\",\"Reasoning.Screening.Screen.successors\",\"Reasoning.Screening.Screen.Ledger.mk\",\"Reasoning.Screening.Screen.Search.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.start\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"List\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"instOfNatNat\",\"ite\",\"Bool.true\",\"LexLeanCollections.listFold\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"LexLeanRuntime.instLengthableList\",\"LexLeanRuntime.length\",\"List.cons\",\"List.nil\",\"Nat.blt\",\"OfNat.ofNat\",\"Option.none\",\"Reasoning.Screening.Screen.Node\",\"Reasoning.Screening.Screen.Step\",\"Reasoning.Screening.Screen.observe\",\"Reasoning.Screening.Screen.Ledger.mk\",\"Reasoning.Screening.Screen.Node.mk\",\"Reasoning.Screening.Screen.Search.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.42\",\"parameters\":[{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"discriminant\":\"_uniq.34\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.17\"}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.40\"}}}}}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.observe\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.44\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.48\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.52\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.55\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.59\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Ledger\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Ledger.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.64\"}}}}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"List\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"instDecidableEqBool\",\"instOfNatNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanCollections.listFold\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"LexLeanRuntime.instLengthableList\",\"LexLeanRuntime.length\",\"List.cons\",\"List.nil\",\"Nat.blt\",\"Option.none\",\"Reasoning.Screening.Screen.Ledger\",\"Reasoning.Screening.Screen.Node\",\"Reasoning.Screening.Screen.Search\",\"Reasoning.Screening.Screen.Step\",\"Reasoning.Screening.Screen.observe\",\"Reasoning.Screening.Screen.Ledger.mk\",\"Reasoning.Screening.Screen.Node.mk\",\"Reasoning.Screening.Screen.Search.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.successors\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Screening.Screen.Node\",\"Reasoning.Screening.Screen.Propose.successors\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Propose.successors\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}},\"uses\":[\"List\",\"Reasoning.Screening.Screen.Node\",\"Reasoning.Screening.Screen.Propose.successors\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.verdict\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"List\",\"Nat\",\"Prod\",\"Except.error\",\"Except.ok\",\"Prod.fst\",\"Reasoning.Screening.Screen\",\"Reasoning.Screening.Screen.Step\",\"Reasoning.Screening.Screen.verdict.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.34\",\"parameters\":[{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.31\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.33\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.34\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.41\",\"parameters\":[{\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.40\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.41\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Except\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.53\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Except.error\",\"parameters\":[{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.42\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.55\"}}},{\"kind\":\"constructor\",\"constructor\":\"Except.ok\",\"parameters\":[{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.35\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}}]}}}}}}},\"uses\":[\"Bool\",\"Except\",\"List\",\"Nat\",\"Prod\",\"Except.error\",\"Except.ok\",\"Reasoning.Screening.Screen\",\"Reasoning.Screening.Screen.Step\"]},\"inductive\":null},{\"name\":\"Reasoning.Budget.Spend.Step.Burn\",\"kind\":\"constructor\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Budget.Spend.Step.Tick\",\"kind\":\"constructor\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Budget.Spend.Step.casesOn\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Reasoning.Budget.Spend.Step\",\"Reasoning.Budget.Spend.Step.Burn\",\"Reasoning.Budget.Spend.Step.Tick\",\"Reasoning.Budget.Spend.Step.rec\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Budget.Spend.Step.rec\",\"kind\":\"recursor\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"recursor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Budget.Spend.accept.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Budget.Spend.account.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Unit\",\"Bool.casesOn\",\"Bool.false\",\"Bool.true\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Budget.Spend.conclude.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Budget.Spend.fire.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Unit\",\"Unit.unit\",\"Reasoning.Budget.Spend.Step\",\"Reasoning.Budget.Spend.Step.Burn\",\"Reasoning.Budget.Spend.Step.Tick\",\"Reasoning.Budget.Spend.Step.casesOn\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Budget.Spend.next.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Budget.Spend.Step\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Budget.Spend.select.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Budget.Spend.Step\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.Ledger.attempts\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Triage.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.Ledger.expansions\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Triage.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.Ledger.firings\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Triage.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.Ledger.frontier\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Triage.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.Ledger.iterations\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Triage.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.Ledger.mk\",\"kind\":\"constructor\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.Ledger.verifications\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Triage.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.Run.ledger\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Triage.Run\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.Run.mk\",\"kind\":\"constructor\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.Run.state\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Triage.Run\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.Run.trace\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Triage.Run\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.Step.Escalate\",\"kind\":\"constructor\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.Step.Fever\",\"kind\":\"constructor\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.Step.Leukocytosis\",\"kind\":\"constructor\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.Step.Sepsis\",\"kind\":\"constructor\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.Step.Shock\",\"kind\":\"constructor\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.Step.Sirs\",\"kind\":\"constructor\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.Step.Tachycardia\",\"kind\":\"constructor\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.Step.Tachypnea\",\"kind\":\"constructor\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.Step.casesOn\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Triage.Step\",\"Reasoning.Clinic.Triage.Step.Escalate\",\"Reasoning.Clinic.Triage.Step.Fever\",\"Reasoning.Clinic.Triage.Step.Leukocytosis\",\"Reasoning.Clinic.Triage.Step.Sepsis\",\"Reasoning.Clinic.Triage.Step.Shock\",\"Reasoning.Clinic.Triage.Step.Sirs\",\"Reasoning.Clinic.Triage.Step.Tachycardia\",\"Reasoning.Clinic.Triage.Step.Tachypnea\",\"Reasoning.Clinic.Triage.Step.rec\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.Step.rec\",\"kind\":\"recursor\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"recursor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.accept.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.account.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Unit\",\"Bool.casesOn\",\"Bool.false\",\"Bool.true\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.conclude.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.fire.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Unit\",\"Unit.unit\",\"Reasoning.Clinic.Triage.Step\",\"Reasoning.Clinic.Triage.Step.Escalate\",\"Reasoning.Clinic.Triage.Step.Fever\",\"Reasoning.Clinic.Triage.Step.Leukocytosis\",\"Reasoning.Clinic.Triage.Step.Sepsis\",\"Reasoning.Clinic.Triage.Step.Shock\",\"Reasoning.Clinic.Triage.Step.Sirs\",\"Reasoning.Clinic.Triage.Step.Tachycardia\",\"Reasoning.Clinic.Triage.Step.Tachypnea\",\"Reasoning.Clinic.Triage.Step.casesOn\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.next.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Clinic.Triage.Step\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.replay.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Clinic.Chart\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.select.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Clinic.Triage.Step\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.Step.Escalate\",\"kind\":\"constructor\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.Step.Fever\",\"kind\":\"constructor\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.Step.Leukocytosis\",\"kind\":\"constructor\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.Step.Sepsis\",\"kind\":\"constructor\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.Step.Shock\",\"kind\":\"constructor\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.Step.Sirs\",\"kind\":\"constructor\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.Step.Tachycardia\",\"kind\":\"constructor\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.Step.Tachypnea\",\"kind\":\"constructor\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.Step.casesOn\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Main.Grade.Step\",\"Reasoning.Main.Grade.Step.Escalate\",\"Reasoning.Main.Grade.Step.Fever\",\"Reasoning.Main.Grade.Step.Leukocytosis\",\"Reasoning.Main.Grade.Step.Sepsis\",\"Reasoning.Main.Grade.Step.Shock\",\"Reasoning.Main.Grade.Step.Sirs\",\"Reasoning.Main.Grade.Step.Tachycardia\",\"Reasoning.Main.Grade.Step.Tachypnea\",\"Reasoning.Main.Grade.Step.rec\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.Step.rec\",\"kind\":\"recursor\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"recursor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.account.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Unit\",\"Bool.casesOn\",\"Bool.false\",\"Bool.true\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.conclude.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.fire.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Unit\",\"Unit.unit\",\"Reasoning.Main.Grade.Step\",\"Reasoning.Main.Grade.Step.Escalate\",\"Reasoning.Main.Grade.Step.Fever\",\"Reasoning.Main.Grade.Step.Leukocytosis\",\"Reasoning.Main.Grade.Step.Sepsis\",\"Reasoning.Main.Grade.Step.Shock\",\"Reasoning.Main.Grade.Step.Sirs\",\"Reasoning.Main.Grade.Step.Tachycardia\",\"Reasoning.Main.Grade.Step.Tachypnea\",\"Reasoning.Main.Grade.Step.casesOn\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.next.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Main.Grade.Step\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.select.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Main.Grade.Step\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.EmptyB.successors\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"List.cons\",\"List.nil\",\"Reasoning.Planner.Plan.Node\",\"Reasoning.Planner.Plan.Step\",\"Reasoning.Planner.Plan.fire\",\"Reasoning.Planner.Plan.Node.mk\",\"Reasoning.Planner.Plan.Node.state\",\"Reasoning.Planner.Plan.Node.trace\",\"Reasoning.Planner.Plan.Step.EmptyB\",\"Reasoning.Planner.Plan.replay.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.32\",\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.32\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.47\",\"parameters\":[{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Node\",\"index\":1,\"value\":\"_uniq.24\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step.EmptyB\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.40\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.46\"}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.47\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Node\",\"index\":0,\"value\":\"_uniq.24\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step.EmptyB\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.fire\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"discriminant\":\"_uniq.58\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.33\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.60\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.48\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.62\"}}}]}}}}}}}}},\"uses\":[\"List\",\"Nat\",\"Option\",\"PUnit\",\"Prod\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"List.cons\",\"List.nil\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Planner.Plan.Node\",\"Reasoning.Planner.Plan.Step\",\"Reasoning.Planner.Plan.fire\",\"Reasoning.Planner.Plan.Node.mk\",\"Reasoning.Planner.Plan.Step.EmptyB\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.FillA.successors\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"List.cons\",\"List.nil\",\"Reasoning.Planner.Plan.Node\",\"Reasoning.Planner.Plan.Step\",\"Reasoning.Planner.Plan.fire\",\"Reasoning.Planner.Plan.Node.mk\",\"Reasoning.Planner.Plan.Node.state\",\"Reasoning.Planner.Plan.Node.trace\",\"Reasoning.Planner.Plan.Step.FillA\",\"Reasoning.Planner.Plan.replay.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.32\",\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.32\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.47\",\"parameters\":[{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Node\",\"index\":1,\"value\":\"_uniq.24\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step.FillA\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.40\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.46\"}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.47\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Node\",\"index\":0,\"value\":\"_uniq.24\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step.FillA\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.fire\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"discriminant\":\"_uniq.58\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.33\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.60\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.48\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.62\"}}}]}}}}}}}}},\"uses\":[\"List\",\"Nat\",\"Option\",\"PUnit\",\"Prod\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"List.cons\",\"List.nil\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Planner.Plan.Node\",\"Reasoning.Planner.Plan.Step\",\"Reasoning.Planner.Plan.fire\",\"Reasoning.Planner.Plan.Node.mk\",\"Reasoning.Planner.Plan.Step.FillA\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Ledger.attempts\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Planner.Plan.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Ledger.expansions\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Planner.Plan.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Ledger.firings\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Planner.Plan.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Ledger.frontier\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Planner.Plan.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Ledger.iterations\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Planner.Plan.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Ledger.mk\",\"kind\":\"constructor\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Ledger.verifications\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Planner.Plan.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Node.mk\",\"kind\":\"constructor\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Node.state\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Planner.Plan.Node\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Node.trace\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Planner.Plan.Node\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Pour.collect\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"List.cons\",\"List.nil\",\"Reasoning.Planner.Plan.Node\",\"Reasoning.Planner.Plan.Step\",\"Reasoning.Planner.Plan.fire\",\"Reasoning.Planner.Plan.Node.mk\",\"Reasoning.Planner.Plan.Node.state\",\"Reasoning.Planner.Plan.Node.trace\",\"Reasoning.Planner.Plan.Step.Pour\",\"Reasoning.Planner.Plan.replay.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}}}},\"parameters\":[{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.43\",\"parameters\":[{\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.35\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.43\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.61\",\"parameters\":[{\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Node\",\"index\":1,\"value\":\"_uniq.34\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step.Pour\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.48\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.60\"}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.61\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Node\",\"index\":0,\"value\":\"_uniq.34\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step.Pour\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.fire\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.70\"},{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"discriminant\":\"_uniq.72\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.44\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.74\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.62\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.76\"}}}]}}}}}}}}},\"uses\":[\"List\",\"Nat\",\"Option\",\"PUnit\",\"Prod\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"List.cons\",\"List.nil\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Planner.Plan.Node\",\"Reasoning.Planner.Plan.Step\",\"Reasoning.Planner.Plan.fire\",\"Reasoning.Planner.Plan.Node.mk\",\"Reasoning.Planner.Plan.Step.Pour\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Pour.successors\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"LexLeanCollections.listFold\",\"List.nil\",\"Reasoning.Planner.Plan.Node\",\"Reasoning.Planner.Pour.candidates\",\"Reasoning.Planner.Plan.Node.state\",\"Reasoning.Planner.Plan.Pour.collect\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.14\",\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Pour.collect\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.13\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Node\",\"index\":0,\"value\":\"_uniq.8\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Pour.candidates\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.18\"}}}}}}},\"uses\":[\"List\",\"Nat\",\"Prod\",\"LexLeanCollections.listFold\",\"List.nil\",\"Reasoning.Planner.Plan.Node\",\"Reasoning.Planner.Pour.candidates\",\"Reasoning.Planner.Plan.Pour.collect\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Search.found\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Planner.Plan.Search\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Search.frontier\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Planner.Plan.Search\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Search.ledger\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Planner.Plan.Search\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Search.mk\",\"kind\":\"constructor\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Search.truncated\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Planner.Plan.Search\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Search.visited\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Planner.Plan.Search\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Step.EmptyB\",\"kind\":\"constructor\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Step.FillA\",\"kind\":\"constructor\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Step.Pour\",\"kind\":\"constructor\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Step.casesOn\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Reasoning.Planner.Plan.Step\",\"Reasoning.Planner.Plan.Step.EmptyB\",\"Reasoning.Planner.Plan.Step.FillA\",\"Reasoning.Planner.Plan.Step.Pour\",\"Reasoning.Planner.Plan.Step.rec\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Step.rec\",\"kind\":\"recursor\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"recursor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.fire.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Unit\",\"Unit.unit\",\"Reasoning.Planner.Plan.Step\",\"Reasoning.Planner.Plan.Step.EmptyB\",\"Reasoning.Planner.Plan.Step.FillA\",\"Reasoning.Planner.Plan.Step.Pour\",\"Reasoning.Planner.Plan.Step.casesOn\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.replay.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Option\",\"Prod\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.searchStep.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Option\",\"Prod\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.searchStep.match_3\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Unit\",\"List.casesOn\",\"List.cons\",\"List.nil\",\"Unit.unit\",\"Reasoning.Planner.Plan.Node\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.searchStep.match_5\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Option\",\"Prod\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Planner.Plan.Node\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.verdict.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"List\",\"Nat\",\"Prod\",\"Except.casesOn\",\"Except.error\",\"Except.ok\",\"Reasoning.Planner.Plan.Step\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Dose.Ledger.attempts\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Screening.Dose.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Dose.Ledger.expansions\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Screening.Dose.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Dose.Ledger.firings\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Screening.Dose.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Dose.Ledger.frontier\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Screening.Dose.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Dose.Ledger.iterations\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Screening.Dose.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Dose.Ledger.mk\",\"kind\":\"constructor\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Dose.Ledger.verifications\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Screening.Dose.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Dose.Trial.found\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Screening.Dose.Trial\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Dose.Trial.ledger\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Screening.Dose.Trial\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Dose.Trial.mk\",\"kind\":\"constructor\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Dose.Trial.truncated\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Screening.Dose.Trial\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Dose.try.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Unit\",\"Bool.casesOn\",\"Bool.false\",\"Bool.true\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Dose.try.match_3\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Propose.candidates.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"List\",\"Nat\",\"Prod\",\"Except.casesOn\",\"Except.error\",\"Except.ok\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.Ledger.attempts\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Screening.Screen.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.Ledger.expansions\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Screening.Screen.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.Ledger.firings\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Screening.Screen.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.Ledger.frontier\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Screening.Screen.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.Ledger.iterations\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Screening.Screen.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.Ledger.mk\",\"kind\":\"constructor\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.Ledger.verifications\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Screening.Screen.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.Node.mk\",\"kind\":\"constructor\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.Node.state\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Screening.Screen.Node\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.Node.trace\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Screening.Screen.Node\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.Propose.collect\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"List.cons\",\"List.nil\",\"Reasoning.Screening.Screen.Node\",\"Reasoning.Screening.Screen.Step\",\"Reasoning.Screening.Screen.fire\",\"Reasoning.Screening.Screen.Node.mk\",\"Reasoning.Screening.Screen.Node.state\",\"Reasoning.Screening.Screen.Node.trace\",\"Reasoning.Screening.Screen.Step.Propose\",\"Reasoning.Screening.Screen.replay.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}}}},\"parameters\":[{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.43\",\"parameters\":[{\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.35\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.43\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.61\",\"parameters\":[{\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Node\",\"index\":1,\"value\":\"_uniq.34\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step.Propose\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.48\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.60\"}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.61\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Node\",\"index\":0,\"value\":\"_uniq.34\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step.Propose\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.fire\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.70\"},{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"discriminant\":\"_uniq.72\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.44\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.74\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.62\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.76\"}}}]}}}}}}}}},\"uses\":[\"List\",\"Nat\",\"Option\",\"PUnit\",\"Prod\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"List.cons\",\"List.nil\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Screening.Screen.Node\",\"Reasoning.Screening.Screen.Step\",\"Reasoning.Screening.Screen.fire\",\"Reasoning.Screening.Screen.Node.mk\",\"Reasoning.Screening.Screen.Step.Propose\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.Propose.successors\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"LexLeanCollections.listFold\",\"List.nil\",\"Reasoning.Screening.Propose.candidates\",\"Reasoning.Screening.Screen.Node\",\"Reasoning.Screening.Screen.Node.state\",\"Reasoning.Screening.Screen.Propose.collect\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.14\",\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Propose.collect\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.13\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Node\",\"index\":0,\"value\":\"_uniq.8\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Propose.candidates\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.18\"}}}}}}},\"uses\":[\"List\",\"Nat\",\"Prod\",\"LexLeanCollections.listFold\",\"List.nil\",\"Reasoning.Screening.Propose.candidates\",\"Reasoning.Screening.Screen.Node\",\"Reasoning.Screening.Screen.Propose.collect\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.Search.found\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Screening.Screen.Search\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.Search.frontier\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Screening.Screen.Search\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.Search.ledger\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Screening.Screen.Search\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.Search.mk\",\"kind\":\"constructor\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.Search.truncated\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Screening.Screen.Search\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.Step.Propose\",\"kind\":\"constructor\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.Step.casesOn\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Reasoning.Screening.Screen.Step\",\"Reasoning.Screening.Screen.Step.Propose\",\"Reasoning.Screening.Screen.Step.rec\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.Step.rec\",\"kind\":\"recursor\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"recursor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.accept.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.fire.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Reasoning.Screening.Screen.Step\",\"Reasoning.Screening.Screen.Step.Propose\",\"Reasoning.Screening.Screen.Step.casesOn\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.replay.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Option\",\"Prod\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.searchStep.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Unit\",\"List.casesOn\",\"List.cons\",\"List.nil\",\"Unit.unit\",\"Reasoning.Screening.Screen.Node\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.searchStep.match_3\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Option\",\"Prod\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Screening.Screen.Node\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.verdict.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"List\",\"Nat\",\"Prod\",\"Except.casesOn\",\"Except.error\",\"Except.ok\",\"Reasoning.Screening.Screen.Step\"],\"declaration\":null,\"inductive\":null}],\"externals\":[{\"name\":\"Add\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Bool\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Decidable\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Except\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"HAdd\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"HMul\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"HSub\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"List\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Mul\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Nat\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"OfNat\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Option\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Ord\",\"kind\":\"inductive\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Ordering\",\"kind\":\"inductive\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"PUnit\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Prod\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Sub\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"instAddNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instDecidableEqBool\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instHAdd\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instHMul\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instHSub\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instMulNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instOfNatNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instOrdNat\",\"kind\":\"definition\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instSubNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Bool.false\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Bool\"},{\"name\":\"Bool.not\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Bool.true\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Bool\"},{\"name\":\"Decidable.isFalse\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Decidable\"},{\"name\":\"Decidable.isTrue\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Decidable\"},{\"name\":\"Except.error\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Except\"},{\"name\":\"Except.ok\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Except\"},{\"name\":\"List.appendTR\",\"kind\":\"definition\",\"module\":\"Init.Data.List.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"List.cons\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"List\"},{\"name\":\"List.foldl\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"List.lengthTR\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"List.nil\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"List\"},{\"name\":\"Nat.beq\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.ble\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.blt\",\"kind\":\"definition\",\"module\":\"Init.Data.Nat.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.succ\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Nat\"},{\"name\":\"Nat.zero\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Nat\"},{\"name\":\"Option.none\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Option\"},{\"name\":\"Option.some\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Option\"},{\"name\":\"Ordering.eq\",\"kind\":\"constructor\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Ordering\"},{\"name\":\"Ordering.gt\",\"kind\":\"constructor\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Ordering\"},{\"name\":\"Ordering.lt\",\"kind\":\"constructor\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Ordering\"},{\"name\":\"Prod.mk\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Prod\"},{\"name\":\"Unit.unit\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true}]}\n","stdout_sha256":"d2c9b0ff12d25eb940a8ff94fdbfcd8794392d439e10d7eaa35eefbe43ed2b4b","tool":"lean"} +{"argv":["env","lean","$STAGING/extract/LexLeanExtract.X02b315b69b8881ec6f91f78f9b12c608.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanExtract.X02b315b69b8881ec6f91f78f9b12c608","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"{\"spec\":\"lexlean/lcnf-extraction/2\",\"lean\":{\"version\":\"4.32.1\",\"githash\":\"f054605aea4b840552cca2e725580bffd1e1b704\"},\"roots\":[\"Reasoning.Main.triageLevel\",\"Reasoning.Main.gatewayLevel\",\"Reasoning.Main.triageSteps\",\"Reasoning.Main.planLeft\",\"Reasoning.Main.doseLevel\",\"Reasoning.Main.gradeLevel\",\"Reasoning.Main.screenDose\",\"Reasoning.Main.spendLeft\"],\"constants\":[{\"name\":\"LexLeanCollections.Key\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanCollections.Key.mk\",\"parameters\":1,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}}}}]}},{\"name\":\"LexLeanCollections.containsElement\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"List\",\"LexLeanCollections.Key\",\"List.brecOn\",\"LexLeanCollections.containsElement._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}}}},\"parameters\":[{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"borrow\":false},{\"id\":\"_uniq.62\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},\"borrow\":false},{\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.71\",\"parameters\":[{\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.70\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.71\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.115\",\"parameters\":[{\"id\":\"_uniq.84\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},\"borrow\":false},{\"id\":\"_uniq.85\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.71\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.94\",\"parameters\":[{\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.93\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.94\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.99\",\"parameters\":[{\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.containsElement\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},{\"kind\":\"fvar\",\"id\":\"_uniq.85\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.98\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.99\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanCollections.Key\",\"index\":0,\"value\":\"_uniq.61\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.106\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Ordering\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.107\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Ordering.lt\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.90\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.109\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Ordering.eq\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.110\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.111\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.95\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.110\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.111\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Ordering.gt\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.113\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.100\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.112\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.113\"}}}}]}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.115\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.63\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.72\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.125\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.126\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.127\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},\"borrow\":false},{\"id\":\"_uniq.128\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.129\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.116\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.127\"},{\"kind\":\"fvar\",\"id\":\"_uniq.128\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.129\"}}}]}}}}}},\"uses\":[\"Bool\",\"List\",\"Ordering\",\"PUnit\",\"Bool.false\",\"Bool.true\",\"LexLeanCollections.Key\",\"LexLeanCollections.containsElement\",\"List.cons\",\"List.nil\",\"Ordering.eq\",\"Ordering.gt\",\"Ordering.lt\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.insertElement\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"LexLeanCollections.Key\",\"List.brecOn\",\"LexLeanCollections.insertElement._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}},\"parameters\":[{\"id\":\"_uniq.62\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"borrow\":false},{\"id\":\"_uniq.64\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},\"borrow\":false},{\"id\":\"_uniq.65\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.74\",\"parameters\":[{\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.72\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.73\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.74\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.123\",\"parameters\":[{\"id\":\"_uniq.87\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},\"borrow\":false},{\"id\":\"_uniq.88\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.96\",\"parameters\":[{\"id\":\"_uniq.93\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"},{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.94\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.95\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.96\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.101\",\"parameters\":[{\"id\":\"_uniq.99\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"},{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.100\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.101\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.107\",\"parameters\":[{\"id\":\"_uniq.104\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.insertElement\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"},{\"kind\":\"fvar\",\"id\":\"_uniq.105\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.106\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.107\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanCollections.Key\",\"index\":0,\"value\":\"_uniq.63\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.114\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Ordering\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"discriminant\":\"_uniq.115\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Ordering.lt\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.97\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.116\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.117\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Ordering.eq\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.118\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.102\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.118\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.119\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Ordering.gt\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.120\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.121\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.108\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.120\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.121\"}}}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.124\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.123\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"discriminant\":\"_uniq.65\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.75\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.133\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.134\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.135\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},\"borrow\":false},{\"id\":\"_uniq.136\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.137\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.124\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.135\"},{\"kind\":\"fvar\",\"id\":\"_uniq.136\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.137\"}}}]}}}}}},\"uses\":[\"List\",\"Ordering\",\"PUnit\",\"LexLeanCollections.Key\",\"LexLeanCollections.insertElement\",\"List.cons\",\"List.nil\",\"Ordering.eq\",\"Ordering.gt\",\"Ordering.lt\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.instKeyNat\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOrdNat\",\"Ord.compare\",\"LexLeanCollections.Key.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.1\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Ord\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instOrdNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"Ord\",\"index\":0,\"value\":\"_uniq.1\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.15\"}}}}},\"uses\":[\"Nat\",\"Ord\",\"Ordering\",\"instOrdNat\",\"LexLeanCollections.Key\",\"LexLeanCollections.Key.mk\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.instKeyProd\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Ordering\",\"Prod\",\"Unit\",\"LexLeanCollections.Key\",\"Prod.fst\",\"Prod.snd\",\"LexLeanCollections.Key.compare\",\"LexLeanCollections.Key.mk\",\"LexLeanCollections.compareCodes.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3},{\"kind\":\"bvar\",\"index\":2}]}]}}}}},\"parameters\":[{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"borrow\":false},{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.82\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"borrow\":false},{\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.56\",\"parameters\":[{\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanCollections.Key\",\"index\":0,\"value\":\"_uniq.37\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.44\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.45\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.52\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.55\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.62\",\"parameters\":[{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.61\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.62\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanCollections.Key\",\"index\":0,\"value\":\"_uniq.36\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.44\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.45\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.69\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.70\"},{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Ordering\",\"result_type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"discriminant\":\"_uniq.72\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Ordering.eq\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.57\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.74\"}}}},{\"kind\":\"default\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.79\",\"parameters\":[{\"id\":\"_uniq.77\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"erased\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.63\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.72\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.78\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"const\",\"name\":\"Ordering\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.79\",\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"any\"}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.80\"}}}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.82\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.83\"}}}},\"uses\":[\"Ordering\",\"PUnit\",\"Prod\",\"LexLeanCollections.Key\",\"Ordering.eq\",\"Unit.unit\",\"LexLeanCollections.Key.mk\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.iterateUntil\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Nat\",\"Option\",\"Prod\",\"Nat.brecOn\",\"LexLeanCollections.iterateUntil._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}}}}},\"parameters\":[{\"id\":\"_uniq.65\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.68\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]}},\"borrow\":false},{\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.79\",\"parameters\":[{\"id\":\"_uniq.76\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"},{\"kind\":\"fvar\",\"id\":\"_uniq.77\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.78\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.79\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.121\",\"parameters\":[{\"id\":\"_uniq.91\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.92\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.101\",\"parameters\":[{\"id\":\"_uniq.98\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.92\"},{\"kind\":\"fvar\",\"id\":\"_uniq.99\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.100\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.101\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.106\",\"parameters\":[{\"id\":\"_uniq.104\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.68\"},{\"kind\":\"fvar\",\"id\":\"_uniq.91\"},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.105\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.106\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.68\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"discriminant\":\"_uniq.115\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.102\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.116\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.117\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.118\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.107\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.118\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.119\"}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.121\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Nat\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"discriminant\":\"_uniq.69\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Nat.zero\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.128\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.80\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.128\"}}},{\"kind\":\"constructor\",\"constructor\":\"Nat.succ\",\"parameters\":[{\"id\":\"_uniq.129\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.130\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.122\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.129\"},{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.130\"}}}]}}}}}},\"uses\":[\"Bool\",\"Nat\",\"Option\",\"PUnit\",\"Prod\",\"Bool.false\",\"Bool.true\",\"LexLeanCollections.iterateUntil\",\"Nat.succ\",\"Nat.zero\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.listFold\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"List.foldl\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":2}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}}},\"parameters\":[{\"id\":\"_uniq.53\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}}},\"borrow\":false},{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},\"borrow\":false},{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},\"value\":{\"kind\":\"const\",\"name\":\"List.foldl\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.64\"}}},\"uses\":[\"List\",\"List.foldl\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.setContains\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"LexLeanCollections.Key\",\"LexLeanCollections.containsElement\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}}}},\"parameters\":[{\"id\":\"_uniq.19\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"borrow\":false},{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.containsElement\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.23\"}}},\"uses\":[\"Bool\",\"List\",\"LexLeanCollections.Key\",\"LexLeanCollections.containsElement\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.setInsert\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"LexLeanCollections.Key\",\"LexLeanCollections.insertElement\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}},\"parameters\":[{\"id\":\"_uniq.19\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"borrow\":false},{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.insertElement\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.23\"}}},\"uses\":[\"List\",\"LexLeanCollections.Key\",\"LexLeanCollections.insertElement\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.Appendable\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.Appendable.mk\",\"parameters\":1,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"bvar\",\"index\":2}}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}}}}]}},{\"name\":\"LexLeanRuntime.Lengthable\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.Lengthable.mk\",\"parameters\":1,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}}}}]}},{\"name\":\"LexLeanRuntime.append\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.Appendable.append\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}},\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"borrow\":false},{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"borrow\":false},{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Appendable\",\"index\":0,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.39\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.40\"}}}},\"uses\":[\"LexLeanRuntime.Appendable\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instAppendableList\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"List.append\",\"LexLeanRuntime.Appendable.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]}]}},\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"List.appendTR\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}}},\"uses\":[\"List\",\"LexLeanRuntime.Appendable\",\"List.appendTR\",\"LexLeanRuntime.Appendable.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instLengthableList\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"List.length\",\"LexLeanRuntime.Lengthable.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]}]}},\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"List.lengthTR\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.10\"}}}},\"uses\":[\"List\",\"Nat\",\"LexLeanRuntime.Lengthable\",\"List.lengthTR\",\"LexLeanRuntime.Lengthable.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.length\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.Lengthable.length\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}}},\"parameters\":[{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Lengthable\",\"index\":0,\"value\":\"_uniq.16\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.18\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.19\"}}}},\"uses\":[\"Nat\",\"LexLeanRuntime.Lengthable\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.multiply\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Mul\",\"instHMul\",\"HMul.hMul\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Mul\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}},\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Mul\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"borrow\":false},{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"borrow\":false},{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HMul\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instHMul\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HMul\",\"index\":0,\"value\":\"_uniq.39\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}}}},\"uses\":[\"HMul\",\"Mul\",\"instHMul\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.subtract\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Sub\",\"instHSub\",\"HSub.hSub\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}},\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"borrow\":false},{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"borrow\":false},{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HSub\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instHSub\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HSub\",\"index\":0,\"value\":\"_uniq.39\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}}}},\"uses\":[\"HSub\",\"Sub\",\"instHSub\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.Key.compare\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanCollections.Key\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.Key.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.compareCodes._sparseCasesOn_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Nat\",\"Ordering\",\"instOfNatNat\",\"Bool.false\",\"Eq.refl\",\"Nat.hasNotBit\",\"Nat.land\",\"Nat.ne_of_beq_eq_false\",\"Nat.shiftRight\",\"OfNat.ofNat\",\"Ordering.ctorIdx\",\"Ordering.eq\",\"Ordering.gt\",\"Ordering.lt\",\"Ordering.rec\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.compareCodes.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Ordering\",\"Unit\",\"Nat.hasNotBit\",\"Ordering.ctorIdx\",\"Ordering.eq\",\"Unit.unit\",\"LexLeanCollections.compareCodes._sparseCasesOn_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.containsElement._f\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"List\",\"Ordering\",\"Unit\",\"Bool.false\",\"Bool.true\",\"LexLeanCollections.Key\",\"List.below\",\"List.cons\",\"List.nil\",\"LexLeanCollections.Key.compare\",\"LexLeanCollections.insertElement.match_1\",\"LexLeanCollections.insertEntry.match_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.insertElement._f\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"List\",\"Ordering\",\"Unit\",\"LexLeanCollections.Key\",\"List.below\",\"List.cons\",\"List.nil\",\"LexLeanCollections.Key.compare\",\"LexLeanCollections.insertElement.match_1\",\"LexLeanCollections.insertEntry.match_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.insertElement.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Unit\",\"List.casesOn\",\"List.cons\",\"List.nil\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.insertEntry.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Ordering\",\"Unit\",\"Ordering.casesOn\",\"Ordering.eq\",\"Ordering.gt\",\"Ordering.lt\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.iterate.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Nat.casesOn\",\"Nat.succ\",\"OfNat.ofNat\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.iterateUntil._f\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Nat.below\",\"Nat.succ\",\"OfNat.ofNat\",\"Prod.mk\",\"LexLeanCollections.iterate.match_1\",\"LexLeanCollections.iterateUntil.match_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.iterateUntil.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Appendable.append\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Appendable\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Appendable.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Lengthable.length\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Lengthable\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Lengthable.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Budget.emptyCheck\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Nat.beq\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}}},\"parameters\":[{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},\"borrow\":false},{\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.20\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.22\"}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"instOfNatNat\",\"Nat.beq\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Chart\",\"kind\":\"inductive\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Reasoning.Clinic.Chart.mk\",\"parameters\":0,\"fields\":9,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}}}}}}}}}}}]}},{\"name\":\"Reasoning.Clinic.Triage\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"List\",\"Nat\",\"Prod\",\"Unit\",\"Bool.false\",\"Except.error\",\"Except.ok\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Triage.Run\",\"Reasoning.Clinic.Triage.Step\",\"Reasoning.Clinic.Triage.conclude\",\"Reasoning.Clinic.Triage.match_1\",\"Reasoning.Clinic.Triage.run\",\"Reasoning.Clinic.Triage.Run.state\",\"Reasoning.Clinic.Triage.Run.trace\",\"Reasoning.Clinic.Triage.account.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]}]}},\"parameters\":[{\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.run\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.45\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.100\",\"parameters\":[{\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.73\",\"parameters\":[{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.46\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Triage.Run\",\"index\":1,\"value\":\"_uniq.60\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.72\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.73\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.80\",\"parameters\":[{\"id\":\"_uniq.78\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.78\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.79\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.80\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.46\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Triage.Run\",\"index\":0,\"value\":\"_uniq.92\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.conclude\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.93\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Except\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]}]},\"discriminant\":\"_uniq.94\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Except.error\",\"parameters\":[{\"id\":\"_uniq.95\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.81\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.95\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.96\"}}},{\"kind\":\"constructor\",\"constructor\":\"Except.ok\",\"parameters\":[{\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.74\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.97\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.98\"}}}]}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.100\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.107\",\"parameters\":[{\"id\":\"_uniq.103\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.105\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.106\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.107\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.113\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.46\"},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]}]},\"discriminant\":\"_uniq.113\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.108\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.115\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.101\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.116\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.117\"}}}}]}}}}}}}}},\"uses\":[\"Bool\",\"Except\",\"List\",\"Nat\",\"PUnit\",\"Prod\",\"Bool.false\",\"Bool.true\",\"Except.error\",\"Except.ok\",\"Prod.mk\",\"Unit.unit\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Triage.Run\",\"Reasoning.Clinic.Triage.Step\",\"Reasoning.Clinic.Triage.conclude\",\"Reasoning.Clinic.Triage.run\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Vitals\",\"kind\":\"inductive\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Reasoning.Clinic.Vitals.mk\",\"parameters\":0,\"fields\":6,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]}}}}}}}}]}},{\"name\":\"Reasoning.Clinic.feverish\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Nat.blt\",\"OfNat.ofNat\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Vitals.temperature\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"380\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.8\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Vitals\",\"index\":0,\"value\":\"_uniq.6\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.11\"}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"instOfNatNat\",\"Nat.blt\",\"Reasoning.Clinic.Vitals\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.hypotensive\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Nat.blt\",\"OfNat.ofNat\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Vitals.systolic\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Vitals\",\"index\":4,\"value\":\"_uniq.6\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"90\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.9\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.11\"}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"instOfNatNat\",\"Nat.blt\",\"Reasoning.Clinic.Vitals\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.leukocytic\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Nat.blt\",\"OfNat.ofNat\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Vitals.whiteCells\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"12\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.8\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Vitals\",\"index\":3,\"value\":\"_uniq.6\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.11\"}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"instOfNatNat\",\"Nat.blt\",\"Reasoning.Clinic.Vitals\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.recommendationCheck\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Bool.and\",\"Bool.not\",\"Bool.or\",\"Nat.beq\",\"Nat.ble\",\"OfNat.ofNat\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.feverish\",\"Reasoning.Clinic.hypotensive\",\"Reasoning.Clinic.tachycardic\",\"Reasoning.Clinic.Vitals.infection\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.72\",\"parameters\":[{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.71\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.72\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.176\",\"parameters\":[{\"id\":\"_uniq.78\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.84\",\"parameters\":[{\"id\":\"_uniq.82\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.83\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.84\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.161\",\"parameters\":[{\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.72\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.141\",\"parameters\":[{\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.72\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.125\",\"parameters\":[{\"id\":\"_uniq.105\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.72\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.113\",\"parameters\":[{\"id\":\"_uniq.111\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.tachycardic\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.112\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.113\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.feverish\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.119\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.120\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.121\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.109\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.120\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.121\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.114\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.122\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.123\"}}}}]}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.125\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.131\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Vitals\",\"index\":5,\"value\":\"_uniq.63\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.132\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.132\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.133\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.135\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.131\"},{\"kind\":\"fvar\",\"id\":\"_uniq.134\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.135\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.137\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.100\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.136\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.137\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.138\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.139\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.126\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.138\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.139\"}}}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.142\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.141\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.147\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.hypotensive\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.154\",\"parameters\":[{\"id\":\"_uniq.152\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.153\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.not\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.152\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.153\"}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.160\",\"parameters\":[{\"id\":\"_uniq.158\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.159\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.142\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.158\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.154\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.159\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.157\",\"parameters\":[{\"id\":\"_uniq.155\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.156\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.91\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.155\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.154\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.156\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.147\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.148\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.157\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.148\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.150\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.160\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.150\"}]}}}]}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.162\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.161\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.167\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.168\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.167\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.169\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.168\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.170\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.169\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.170\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.171\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.172\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.162\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.171\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.172\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.173\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.174\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.85\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.173\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.174\"}}}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.177\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.176\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.182\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.183\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.182\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.184\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.183\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.185\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.184\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.185\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.186\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.187\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.73\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.186\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.187\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.188\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.189\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.177\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.188\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.189\"}}}}]}}}}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"PUnit\",\"instOfNatNat\",\"Bool.false\",\"Bool.not\",\"Bool.true\",\"Nat.beq\",\"Nat.ble\",\"Unit.unit\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.feverish\",\"Reasoning.Clinic.hypotensive\",\"Reasoning.Clinic.tachycardic\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.tachycardic\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Nat.blt\",\"OfNat.ofNat\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Vitals.heartRate\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"90\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.8\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Vitals\",\"index\":1,\"value\":\"_uniq.6\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.11\"}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"instOfNatNat\",\"Nat.blt\",\"Reasoning.Clinic.Vitals\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.tachypneic\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Nat.blt\",\"OfNat.ofNat\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Vitals.respiratoryRate\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"20\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.8\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Vitals\",\"index\":2,\"value\":\"_uniq.6\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.11\"}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"instOfNatNat\",\"Nat.blt\",\"Reasoning.Clinic.Vitals\"]},\"inductive\":null},{\"name\":\"Reasoning.Main.GatewayModel\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Vitals\",\"Reasoning.Main.GatewayTriage\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.GatewayTriage\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}},\"uses\":[\"Bool\",\"Except\",\"Nat\",\"Prod\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Main.GatewayTriage\"]},\"inductive\":null},{\"name\":\"Reasoning.Main.GatewayTriage\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Triage.verdict\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.verdict\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}},\"uses\":[\"Bool\",\"Except\",\"Nat\",\"Prod\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Triage.verdict\"]},\"inductive\":null},{\"name\":\"Reasoning.Main.doseLevel\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"Nat\",\"Prod\",\"instOfNatNat\",\"OfNat.ofNat\",\"Reasoning.Main.Grade.match_1\",\"Reasoning.Screening.Dose.verdict\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.32\",\"parameters\":[{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.32\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.41\",\"parameters\":[{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"9\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.39\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.40\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.41\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.verdict\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Except\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.53\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Except.error\",\"parameters\":[{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.42\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.55\"}}},{\"kind\":\"constructor\",\"constructor\":\"Except.ok\",\"parameters\":[{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.33\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}}]}}}}}}},\"uses\":[\"Bool\",\"Except\",\"Nat\",\"OfNat\",\"Prod\",\"instOfNatNat\",\"Except.error\",\"Except.ok\",\"Reasoning.Screening.Dose.verdict\"]},\"inductive\":null},{\"name\":\"Reasoning.Main.gatewayLevel\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"Nat\",\"Prod\",\"instOfNatNat\",\"OfNat.ofNat\",\"Reasoning.Main.GatewayModel\",\"Reasoning.Clinic.Vitals.mk\",\"Reasoning.Main.Grade.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}}}}}},\"parameters\":[{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.67\",\"parameters\":[{\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.66\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.67\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.76\",\"parameters\":[{\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"9\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.74\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.75\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.76\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.58\"},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.GatewayModel\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Except\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.89\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Except.error\",\"parameters\":[{\"id\":\"_uniq.90\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.77\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.90\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.91\"}}},{\"kind\":\"constructor\",\"constructor\":\"Except.ok\",\"parameters\":[{\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.68\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.93\"}}}]}}}}}}}},\"uses\":[\"Bool\",\"Except\",\"Nat\",\"OfNat\",\"Prod\",\"instOfNatNat\",\"Except.error\",\"Except.ok\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Main.GatewayModel\",\"Reasoning.Clinic.Vitals.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Main.gradeLevel\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"Nat\",\"Prod\",\"instOfNatNat\",\"OfNat.ofNat\",\"Reasoning.Clinic.Vitals.mk\",\"Reasoning.Main.Grade.match_1\",\"Reasoning.Main.Grade.verdict\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}}}}}},\"parameters\":[{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.67\",\"parameters\":[{\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.66\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.67\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.76\",\"parameters\":[{\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"9\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.74\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.75\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.76\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.58\"},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.verdict\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Except\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.89\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Except.error\",\"parameters\":[{\"id\":\"_uniq.90\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.77\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.90\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.91\"}}},{\"kind\":\"constructor\",\"constructor\":\"Except.ok\",\"parameters\":[{\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.68\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.93\"}}}]}}}}}}}},\"uses\":[\"Bool\",\"Except\",\"Nat\",\"OfNat\",\"Prod\",\"instOfNatNat\",\"Except.error\",\"Except.ok\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Vitals.mk\",\"Reasoning.Main.Grade.verdict\"]},\"inductive\":null},{\"name\":\"Reasoning.Main.planLeft\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"Nat\",\"Prod\",\"instOfNatNat\",\"OfNat.ofNat\",\"Prod.fst\",\"Reasoning.Main.planLeft.match_1\",\"Reasoning.Planner.Plan.verdict\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.33\",\"parameters\":[{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.31\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.32\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.33\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.42\",\"parameters\":[{\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"9\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.40\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.41\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.42\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.verdict\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Except\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.54\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Except.error\",\"parameters\":[{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.43\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.56\"}}},{\"kind\":\"constructor\",\"constructor\":\"Except.ok\",\"parameters\":[{\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.34\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.58\"}}}]}}}}}}},\"uses\":[\"Bool\",\"Except\",\"Nat\",\"OfNat\",\"Prod\",\"instOfNatNat\",\"Except.error\",\"Except.ok\",\"Reasoning.Planner.Plan.verdict\"]},\"inductive\":null},{\"name\":\"Reasoning.Main.screenDose\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"Nat\",\"Prod\",\"instOfNatNat\",\"OfNat.ofNat\",\"Reasoning.Main.Grade.match_1\",\"Reasoning.Screening.Screen.verdict\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.32\",\"parameters\":[{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.32\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.41\",\"parameters\":[{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"9\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.39\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.40\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.41\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.verdict\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Except\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.53\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Except.error\",\"parameters\":[{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.42\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.55\"}}},{\"kind\":\"constructor\",\"constructor\":\"Except.ok\",\"parameters\":[{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.33\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}}]}}}}}}},\"uses\":[\"Bool\",\"Except\",\"Nat\",\"OfNat\",\"Prod\",\"instOfNatNat\",\"Except.error\",\"Except.ok\",\"Reasoning.Screening.Screen.verdict\"]},\"inductive\":null},{\"name\":\"Reasoning.Main.spendLeft\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"Nat\",\"Prod\",\"instOfNatNat\",\"OfNat.ofNat\",\"Prod.mk\",\"Reasoning.Budget.Spend.verdict\",\"Reasoning.Main.Grade.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.32\",\"parameters\":[{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.32\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.41\",\"parameters\":[{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"9\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.39\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.40\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.41\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.verdict\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Except\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.54\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Except.error\",\"parameters\":[{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.42\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.56\"}}},{\"kind\":\"constructor\",\"constructor\":\"Except.ok\",\"parameters\":[{\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.33\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.58\"}}}]}}}}}}}},\"uses\":[\"Bool\",\"Except\",\"Nat\",\"OfNat\",\"Prod\",\"instOfNatNat\",\"Except.error\",\"Except.ok\",\"Prod.mk\",\"Reasoning.Budget.Spend.verdict\"]},\"inductive\":null},{\"name\":\"Reasoning.Main.triageLevel\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"Nat\",\"Prod\",\"instOfNatNat\",\"OfNat.ofNat\",\"Reasoning.Clinic.Triage.verdict\",\"Reasoning.Clinic.Vitals.mk\",\"Reasoning.Main.Grade.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}}}}}},\"parameters\":[{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.67\",\"parameters\":[{\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.66\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.67\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.76\",\"parameters\":[{\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"9\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.74\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.75\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.76\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.58\"},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.verdict\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.94\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Except\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.95\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Except.error\",\"parameters\":[{\"id\":\"_uniq.96\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.77\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.96\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.97\"}}},{\"kind\":\"constructor\",\"constructor\":\"Except.ok\",\"parameters\":[{\"id\":\"_uniq.98\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.68\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.98\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.99\"}}}]}}}}}}}},\"uses\":[\"Bool\",\"Except\",\"Nat\",\"OfNat\",\"Prod\",\"instOfNatNat\",\"Except.error\",\"Except.ok\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Triage.verdict\",\"Reasoning.Clinic.Vitals.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Main.triageSteps\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"List\",\"Nat\",\"Prod\",\"instOfNatNat\",\"LexLeanRuntime.instLengthableList\",\"LexLeanRuntime.length\",\"OfNat.ofNat\",\"Prod.snd\",\"Reasoning.Clinic.Triage\",\"Reasoning.Clinic.Triage.Step\",\"Reasoning.Clinic.Vitals.mk\",\"Reasoning.Main.triageSteps.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}}}}}},\"parameters\":[{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.70\",\"parameters\":[{\"id\":\"_uniq.66\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.66\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.67\"},{\"kind\":\"fvar\",\"id\":\"_uniq.68\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.69\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.70\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.79\",\"parameters\":[{\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.77\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.78\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.79\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.58\"},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.91\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Except\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.92\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Except.error\",\"parameters\":[{\"id\":\"_uniq.93\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.80\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.93\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.94\"}}},{\"kind\":\"constructor\",\"constructor\":\"Except.ok\",\"parameters\":[{\"id\":\"_uniq.95\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.71\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.95\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.96\"}}}]}}}}}}}},\"uses\":[\"Bool\",\"Except\",\"List\",\"Nat\",\"OfNat\",\"Prod\",\"instOfNatNat\",\"Except.error\",\"Except.ok\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableList\",\"LexLeanRuntime.length\",\"Reasoning.Clinic.Triage\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Triage.Step\",\"Reasoning.Clinic.Vitals.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"List\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"Except.error\",\"Except.ok\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"Reasoning.Planner.Plan.Node\",\"Reasoning.Planner.Plan.Search\",\"Reasoning.Planner.Plan.Step\",\"Reasoning.Planner.Plan.failure\",\"Reasoning.Planner.Plan.run\",\"Reasoning.Planner.Plan.Node.trace\",\"Reasoning.Planner.Plan.Search.found\",\"Reasoning.Planner.Plan.Search.truncated\",\"Reasoning.Planner.Plan.searchStep.match_5\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}]}]}},\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.run\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.31\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.44\",\"parameters\":[{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.36\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.36\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Node\",\"index\":1,\"value\":\"_uniq.38\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.43\"}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.44\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.60\",\"parameters\":[{\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.32\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.32\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Search\",\"index\":3,\"value\":\"_uniq.51\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.failure\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.59\"}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.60\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.32\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Search\",\"index\":2,\"value\":\"_uniq.69\"},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}]}]},\"discriminant\":\"_uniq.70\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.61\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.72\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.73\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.45\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.74\"}}}]}}}}}}}}}},\"uses\":[\"Bool\",\"Except\",\"List\",\"Nat\",\"Option\",\"PUnit\",\"Prod\",\"Except.error\",\"Except.ok\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"Unit.unit\",\"Reasoning.Planner.Plan.Node\",\"Reasoning.Planner.Plan.Search\",\"Reasoning.Planner.Plan.Step\",\"Reasoning.Planner.Plan.failure\",\"Reasoning.Planner.Plan.run\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.measuresCheck\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Prod\",\"instOfNatNat\",\"Bool.and\",\"Nat.beq\",\"Nat.ble\",\"OfNat.ofNat\",\"Prod.fst\",\"Prod.snd\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.37\",\"parameters\":[{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.36\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.37\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.46\",\"parameters\":[{\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.29\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"4\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.43\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.45\"}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.46\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.29\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.52\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.53\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.38\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.55\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.47\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}}}]}}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"PUnit\",\"Prod\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Nat.beq\",\"Nat.ble\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.DoseCandidates\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"instSubNat\",\"LexLeanRuntime.subtract\",\"List.cons\",\"List.nil\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"10\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.9\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"20\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.13\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"30\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.17\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"50\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.21\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.28\"}}}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"List\",\"Nat\",\"OfNat\",\"Sub\",\"instOfNatNat\",\"instSubNat\",\"LexLeanRuntime.subtract\",\"List.cons\",\"List.nil\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.DoseModel\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Reasoning.Screening.DoseCandidates\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.DoseCandidates\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}},\"uses\":[\"List\",\"Nat\",\"Reasoning.Screening.DoseCandidates\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"List\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"Except.error\",\"Except.ok\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"Reasoning.Screening.Screen.Node\",\"Reasoning.Screening.Screen.Search\",\"Reasoning.Screening.Screen.Step\",\"Reasoning.Screening.Screen.failure\",\"Reasoning.Screening.Screen.run\",\"Reasoning.Screening.Screen.Node.trace\",\"Reasoning.Screening.Screen.Search.found\",\"Reasoning.Screening.Screen.Search.truncated\",\"Reasoning.Screening.Screen.searchStep.match_3\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]}]}]}},\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.run\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.31\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.44\",\"parameters\":[{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.36\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.36\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Node\",\"index\":1,\"value\":\"_uniq.38\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.43\"}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.44\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.59\",\"parameters\":[{\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.32\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.32\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Search\",\"index\":2,\"value\":\"_uniq.51\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.failure\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.58\"}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.59\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.32\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Search\",\"index\":1,\"value\":\"_uniq.68\"},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]}]}]},\"discriminant\":\"_uniq.69\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.60\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.71\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.45\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.72\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.73\"}}}]}}}}}}}}}},\"uses\":[\"Bool\",\"Except\",\"List\",\"Nat\",\"Option\",\"PUnit\",\"Prod\",\"Except.error\",\"Except.ok\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"Unit.unit\",\"Reasoning.Screening.Screen.Node\",\"Reasoning.Screening.Screen.Search\",\"Reasoning.Screening.Screen.Step\",\"Reasoning.Screening.Screen.failure\",\"Reasoning.Screening.Screen.run\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.safeCheck\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instAddNat\",\"instHAdd\",\"HAdd.hAdd\",\"Nat.ble\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.14\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.15\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.17\"}}}}}}},\"uses\":[\"Add\",\"Bool\",\"HAdd\",\"Nat\",\"instAddNat\",\"instHAdd\",\"Nat.ble\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.shortCheck\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"instOfNatNat\",\"LexLeanRuntime.instLengthableList\",\"LexLeanRuntime.length\",\"Nat.ble\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"4\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.16\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.18\"}}}}}}}},\"uses\":[\"Bool\",\"List\",\"Nat\",\"OfNat\",\"instOfNatNat\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableList\",\"LexLeanRuntime.length\",\"Nat.ble\"]},\"inductive\":null},{\"name\":\"Reasoning.Budget.Burn.apply\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Nat\",\"Option\",\"Prod\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.none\",\"Option.some\",\"Reasoning.Budget.Burn.conclusion\",\"Reasoning.Budget.Burn.guard\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}}}},\"parameters\":[{\"id\":\"_uniq.19\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Burn.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.32\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.34\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Burn.conclusion\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.37\"}}}}]}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Nat\",\"Option\",\"Prod\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Reasoning.Budget.Burn.conclusion\",\"Reasoning.Budget.Burn.guard\"]},\"inductive\":null},{\"name\":\"Reasoning.Budget.Burn.candidates\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Prod\",\"instOfNatNat\",\"List.cons\",\"List.nil\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.14\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.17\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.21\"}}}}}}}}}}},\"uses\":[\"List\",\"Nat\",\"OfNat\",\"Prod\",\"instOfNatNat\",\"List.cons\",\"List.nil\"]},\"inductive\":null},{\"name\":\"Reasoning.Budget.Burn.conclusion\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Prod\",\"instSubNat\",\"LexLeanRuntime.subtract\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}}},\"parameters\":[{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.17\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.17\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.23\"}}}}}}},\"uses\":[\"Nat\",\"Prod\",\"Sub\",\"instSubNat\",\"LexLeanRuntime.subtract\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Budget.Burn.guard\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Prod\",\"instOfNatNat\",\"Bool.and\",\"Nat.ble\",\"Nat.blt\",\"OfNat.ofNat\",\"Prod.snd\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}}},\"parameters\":[{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.44\",\"parameters\":[{\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.43\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.44\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.52\",\"parameters\":[{\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.49\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.51\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.52\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.35\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.59\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.45\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.61\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.53\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.63\"}}}}]}}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"PUnit\",\"Prod\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Nat.ble\",\"Nat.blt\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"Reasoning.Budget.Spend.Step\",\"kind\":\"inductive\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Reasoning.Budget.Spend.Step.Tick\",\"parameters\":1,\"fields\":0,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]}}},{\"name\":\"Reasoning.Budget.Spend.Step.Burn\",\"parameters\":1,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}}}}]}},{\"name\":\"Reasoning.Budget.Spend.accept\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.none\",\"Option.some\",\"Reasoning.Budget.emptyCheck\",\"Reasoning.Budget.Spend.extract\",\"Reasoning.Budget.Spend.accept.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}}},\"parameters\":[{\"id\":\"_uniq.39\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.49\",\"parameters\":[{\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.48\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.49\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.71\",\"parameters\":[{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.emptyCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.40\"},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.65\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.66\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.67\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.68\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.69\"}}}]}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.71\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.extract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.80\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.50\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.82\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.83\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.72\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.84\"}}}]}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Nat\",\"Option\",\"PUnit\",\"Prod\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Budget.emptyCheck\",\"Reasoning.Budget.Spend.extract\"]},\"inductive\":null},{\"name\":\"Reasoning.Budget.Spend.conclude\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"Bool.false\",\"Bool.true\",\"Except.error\",\"Except.ok\",\"Prod.mk\",\"Reasoning.Budget.Spend.accept\",\"Reasoning.Budget.Spend.extract\",\"Reasoning.Budget.Spend.conclude.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}}},\"parameters\":[{\"id\":\"_uniq.50\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.60\",\"parameters\":[{\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.59\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.60\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.100\",\"parameters\":[{\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.77\",\"parameters\":[{\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.75\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.76\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.77\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.85\",\"parameters\":[{\"id\":\"_uniq.80\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"},{\"kind\":\"fvar\",\"id\":\"_uniq.82\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.83\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.84\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.85\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.extract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.94\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.86\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.95\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.96\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.78\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.97\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.98\"}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.100\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.accept\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.109\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.110\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.111\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.101\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.110\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.111\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.112\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.113\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.61\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.112\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.113\"}}}]}}}}}}},\"uses\":[\"Bool\",\"Except\",\"Nat\",\"Option\",\"PUnit\",\"Prod\",\"Bool.false\",\"Bool.true\",\"Except.error\",\"Except.ok\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"Unit.unit\",\"Reasoning.Budget.Spend.accept\",\"Reasoning.Budget.Spend.extract\"]},\"inductive\":null},{\"name\":\"Reasoning.Budget.Spend.extract\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Prod\",\"Option.some\",\"Prod.snd\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.12\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.14\"}}}},\"uses\":[\"Nat\",\"Option\",\"Prod\",\"Option.some\"]},\"inductive\":null},{\"name\":\"Reasoning.Budget.Spend.fire\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Option\",\"Prod\",\"Unit\",\"Reasoning.Budget.Burn.apply\",\"Reasoning.Budget.Spend.Step\",\"Reasoning.Budget.Tick.apply\",\"Reasoning.Budget.Spend.fire.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}}}},\"parameters\":[{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.46\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Tick.apply\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.45\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.46\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.53\",\"parameters\":[{\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Burn.apply\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.52\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.53\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Reasoning.Budget.Spend.Step\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.38\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Reasoning.Budget.Spend.Step.Tick\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.47\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.63\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Reasoning.Budget.Spend.Step.Burn\",\"parameters\":[{\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.54\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.64\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.65\"}}}]}}}}}},\"uses\":[\"Nat\",\"Option\",\"PUnit\",\"Prod\",\"Unit.unit\",\"Reasoning.Budget.Burn.apply\",\"Reasoning.Budget.Spend.Step\",\"Reasoning.Budget.Tick.apply\",\"Reasoning.Budget.Spend.Step.Burn\",\"Reasoning.Budget.Spend.Step.Tick\"]},\"inductive\":null},{\"name\":\"Reasoning.Budget.Spend.next\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Option\",\"Prod\",\"Unit\",\"Option.none\",\"Reasoning.Budget.Spend.Step\",\"Reasoning.Budget.Spend.fire\",\"Reasoning.Budget.Spend.select\",\"Reasoning.Budget.Spend.next.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}}},\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.39\",\"parameters\":[{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.38\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.39\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.46\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.fire\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.45\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.46\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.select\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.55\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.40\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.47\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.59\"}}}]}}}}}}},\"uses\":[\"Nat\",\"Option\",\"PUnit\",\"Prod\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Budget.Spend.Step\",\"Reasoning.Budget.Spend.fire\",\"Reasoning.Budget.Spend.select\"]},\"inductive\":null},{\"name\":\"Reasoning.Budget.Spend.observe\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Prod\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"HAdd.hAdd\",\"OfNat.ofNat\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.12\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.15\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.12\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.19\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.16\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.22\"}}}}}}}}}}}},\"uses\":[\"Add\",\"HAdd\",\"Nat\",\"OfNat\",\"Prod\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Budget.Spend.saturate\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Prod\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"HAdd.hAdd\",\"LexLeanCollections.iterateUntil\",\"OfNat.ofNat\",\"Prod.snd\",\"Reasoning.Budget.Spend.next\",\"Reasoning.Budget.Spend.observe\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.next\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.15\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.12\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"4\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.35\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.32\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.observe\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.39\"}}}}}}}}}}}}},\"uses\":[\"Add\",\"Bool\",\"HAdd\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"LexLeanCollections.iterateUntil\",\"Reasoning.Budget.Spend.next\",\"Reasoning.Budget.Spend.observe\"]},\"inductive\":null},{\"name\":\"Reasoning.Budget.Spend.select\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"LexLeanCollections.listFold\",\"Option.none\",\"Option.some\",\"Reasoning.Budget.Burn.candidates\",\"Reasoning.Budget.Burn.guard\",\"Reasoning.Budget.Spend.Step\",\"Reasoning.Budget.Tick.guard\",\"Reasoning.Budget.Spend.Step.Burn\",\"Reasoning.Budget.Spend.Step.Tick\",\"Reasoning.Budget.Spend.select.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}]}}},\"parameters\":[{\"id\":\"_uniq.49\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.58\",\"parameters\":[{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.58\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.115\",\"parameters\":[{\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.111\",\"parameters\":[{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]},\"borrow\":false},{\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.58\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.97\",\"parameters\":[{\"id\":\"_uniq.77\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Burn.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.86\"},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]},\"discriminant\":\"_uniq.88\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.89\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.90\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.91\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step.Burn\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.94\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.95\"}}}}]}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.97\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]},\"discriminant\":\"_uniq.70\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.98\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.106\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.107\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.108\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.75\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.109\"}}}]}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.113\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Burn.candidates\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.111\"},{\"kind\":\"fvar\",\"id\":\"_uniq.112\"},{\"kind\":\"fvar\",\"id\":\"_uniq.113\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.114\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.115\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.132\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Tick.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.132\"},{\"kind\":\"fvar\",\"id\":\"_uniq.133\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.147\",\"parameters\":[{\"id\":\"_uniq.141\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]},\"discriminant\":\"_uniq.141\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.142\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.143\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.116\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.142\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.143\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.144\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.145\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.59\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.144\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.145\"}}}]}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]},\"discriminant\":\"_uniq.134\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.135\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.147\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.136\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.137\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.139\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step.Tick\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.140\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.Step\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.139\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.147\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.140\"}]}}}}]}}}}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"List\",\"Nat\",\"Option\",\"PUnit\",\"Prod\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanCollections.listFold\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Budget.Burn.candidates\",\"Reasoning.Budget.Burn.guard\",\"Reasoning.Budget.Spend.Step\",\"Reasoning.Budget.Tick.guard\",\"Reasoning.Budget.Spend.Step.Burn\",\"Reasoning.Budget.Spend.Step.Tick\"]},\"inductive\":null},{\"name\":\"Reasoning.Budget.Spend.verdict\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"Nat\",\"Prod\",\"Unit\",\"Bool.false\",\"Except.error\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"Reasoning.Budget.Spend.conclude\",\"Reasoning.Budget.Spend.saturate\",\"Reasoning.Budget.Spend.account.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.saturate\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.36\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.44\",\"parameters\":[{\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.37\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Spend.conclude\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.43\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.44\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.51\",\"parameters\":[{\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.50\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.51\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.37\"},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.57\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.52\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.59\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.45\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.61\"}}}}]}}}}}}}}},\"uses\":[\"Bool\",\"Except\",\"Nat\",\"PUnit\",\"Prod\",\"Bool.false\",\"Bool.true\",\"Except.error\",\"Prod.mk\",\"Unit.unit\",\"Reasoning.Budget.Spend.conclude\",\"Reasoning.Budget.Spend.saturate\"]},\"inductive\":null},{\"name\":\"Reasoning.Budget.Tick.apply\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Nat\",\"Option\",\"Prod\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.none\",\"Option.some\",\"Reasoning.Budget.Tick.conclusion\",\"Reasoning.Budget.Tick.guard\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}}},\"parameters\":[{\"id\":\"_uniq.14\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Tick.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.26\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.28\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Budget.Tick.conclusion\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}}}}]}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Nat\",\"Option\",\"Prod\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Reasoning.Budget.Tick.conclusion\",\"Reasoning.Budget.Tick.guard\"]},\"inductive\":null},{\"name\":\"Reasoning.Budget.Tick.conclusion\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Prod\",\"instOfNatNat\",\"instSubNat\",\"LexLeanRuntime.subtract\",\"OfNat.ofNat\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.12\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.12\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.17\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.20\"}}}}}}}}}},\"uses\":[\"Nat\",\"OfNat\",\"Prod\",\"Sub\",\"instOfNatNat\",\"instSubNat\",\"LexLeanRuntime.subtract\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Budget.Tick.guard\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Prod\",\"instOfNatNat\",\"Nat.blt\",\"OfNat.ofNat\",\"Prod.snd\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.14\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.12\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.17\"}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"Prod\",\"instOfNatNat\",\"Nat.blt\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Chart.fever\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Chart\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Chart.leukocytosis\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Chart\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Chart.level\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Chart\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Chart.mk\",\"kind\":\"constructor\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Chart.sepsis\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Chart\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Chart.shock\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Chart\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Chart.sirs\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Chart\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Chart.tachycardia\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Chart\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Chart.tachypnea\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Chart\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Chart.vitals\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Chart\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Escalate.apply\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Option\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.none\",\"Option.some\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Escalate.conclusion\",\"Reasoning.Clinic.Escalate.guard\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Escalate.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"discriminant\":\"_uniq.20\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.22\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Escalate.conclusion\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.25\"}}}}]}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Option\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Escalate.conclusion\",\"Reasoning.Clinic.Escalate.guard\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Escalate.conclusion\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"HAdd.hAdd\",\"OfNat.ofNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Chart.fever\",\"Reasoning.Clinic.Chart.leukocytosis\",\"Reasoning.Clinic.Chart.level\",\"Reasoning.Clinic.Chart.mk\",\"Reasoning.Clinic.Chart.sepsis\",\"Reasoning.Clinic.Chart.shock\",\"Reasoning.Clinic.Chart.sirs\",\"Reasoning.Clinic.Chart.tachycardia\",\"Reasoning.Clinic.Chart.tachypnea\",\"Reasoning.Clinic.Chart.vitals\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":0,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":1,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":2,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":3,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":4,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":5,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":6,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":7,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.15\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":8,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.19\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.16\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.22\"}}}}}}}}}}}}}}}}}}},\"uses\":[\"Add\",\"HAdd\",\"Nat\",\"OfNat\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Chart.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Escalate.guard\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Bool.and\",\"Bool.or\",\"Nat.beq\",\"Nat.blt\",\"OfNat.ofNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Chart.level\",\"Reasoning.Clinic.Chart.sepsis\",\"Reasoning.Clinic.Chart.shock\",\"Reasoning.Clinic.Chart.sirs\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.74\",\"parameters\":[{\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.73\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.74\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.219\",\"parameters\":[{\"id\":\"_uniq.80\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.86\",\"parameters\":[{\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.85\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.86\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.174\",\"parameters\":[{\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.86\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.129\",\"parameters\":[{\"id\":\"_uniq.101\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.74\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.113\",\"parameters\":[{\"id\":\"_uniq.107\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":7,\"value\":\"_uniq.66\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.110\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.109\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.111\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.110\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.108\"},{\"kind\":\"fvar\",\"id\":\"_uniq.111\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.112\"}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.113\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":8,\"value\":\"_uniq.66\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.120\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.121\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.120\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.121\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.119\"},{\"kind\":\"fvar\",\"id\":\"_uniq.122\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.123\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.124\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.105\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.124\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.125\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.127\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.114\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.126\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.127\"}}}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.130\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.129\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.138\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.74\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.146\",\"parameters\":[{\"id\":\"_uniq.140\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.141\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":6,\"value\":\"_uniq.66\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.142\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.143\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.142\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.144\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.143\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.145\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.141\"},{\"kind\":\"fvar\",\"id\":\"_uniq.144\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.145\"}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.147\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.146\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.152\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":8,\"value\":\"_uniq.66\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.153\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.154\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.153\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.155\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.154\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.156\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.152\"},{\"kind\":\"fvar\",\"id\":\"_uniq.155\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.167\",\"parameters\":[{\"id\":\"_uniq.161\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.161\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.162\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.163\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.130\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.162\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.163\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.164\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.165\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.96\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.164\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.165\"}}}}]}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.173\",\"parameters\":[{\"id\":\"_uniq.171\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.172\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.147\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.171\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.167\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.172\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.170\",\"parameters\":[{\"id\":\"_uniq.168\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.169\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.138\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.168\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.167\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.169\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.156\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.157\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.170\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.157\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.159\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.173\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.159\"}]}}}]}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.175\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.174\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.183\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.74\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.191\",\"parameters\":[{\"id\":\"_uniq.185\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.186\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":5,\"value\":\"_uniq.66\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.187\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.188\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.187\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.189\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.188\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.190\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.186\"},{\"kind\":\"fvar\",\"id\":\"_uniq.189\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.190\"}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.192\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.191\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.197\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":8,\"value\":\"_uniq.66\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.198\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.199\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.198\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.200\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.199\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.201\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.197\"},{\"kind\":\"fvar\",\"id\":\"_uniq.200\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.212\",\"parameters\":[{\"id\":\"_uniq.206\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.206\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.207\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.208\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.175\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.207\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.208\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.209\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.210\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.87\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.209\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.210\"}}}}]}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.215\",\"parameters\":[{\"id\":\"_uniq.213\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.214\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.183\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.213\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.212\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.214\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.218\",\"parameters\":[{\"id\":\"_uniq.216\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.217\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.192\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.216\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.212\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.217\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.201\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.202\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.215\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.202\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.204\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.218\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.204\"}]}}}]}}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.220\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.219\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.225\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":8,\"value\":\"_uniq.66\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.226\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.227\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.226\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.228\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.227\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.229\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.225\"},{\"kind\":\"fvar\",\"id\":\"_uniq.228\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.229\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.230\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.231\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.75\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.230\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.231\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.232\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.233\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.220\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.232\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.233\"}}}}]}}}}}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"PUnit\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Nat.beq\",\"Nat.blt\",\"Unit.unit\",\"Reasoning.Clinic.Chart\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Fever.apply\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Option\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.none\",\"Option.some\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Fever.conclusion\",\"Reasoning.Clinic.Fever.guard\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Fever.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"discriminant\":\"_uniq.20\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.22\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Fever.conclusion\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.25\"}}}}]}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Option\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Fever.conclusion\",\"Reasoning.Clinic.Fever.guard\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Fever.conclusion\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"OfNat.ofNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Chart.leukocytosis\",\"Reasoning.Clinic.Chart.level\",\"Reasoning.Clinic.Chart.mk\",\"Reasoning.Clinic.Chart.sepsis\",\"Reasoning.Clinic.Chart.shock\",\"Reasoning.Clinic.Chart.sirs\",\"Reasoning.Clinic.Chart.tachycardia\",\"Reasoning.Clinic.Chart.tachypnea\",\"Reasoning.Clinic.Chart.vitals\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":0,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.8\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":2,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":3,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":4,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":5,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":6,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":7,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":8,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.17\"}}}}}}}}}}}}}},\"uses\":[\"Nat\",\"OfNat\",\"instOfNatNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Chart.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Fever.guard\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Bool.and\",\"Nat.beq\",\"OfNat.ofNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.feverish\",\"Reasoning.Clinic.Chart.fever\",\"Reasoning.Clinic.Chart.vitals\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.30\",\"parameters\":[{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.29\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.30\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.36\",\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":0,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.feverish\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.35\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.36\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":1,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.44\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.46\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.31\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.48\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.37\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.50\"}}}}]}}}}}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"PUnit\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Nat.beq\",\"Unit.unit\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.feverish\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Leukocytosis.apply\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Option\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.none\",\"Option.some\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Leukocytosis.conclusion\",\"Reasoning.Clinic.Leukocytosis.guard\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Leukocytosis.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"discriminant\":\"_uniq.20\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.22\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Leukocytosis.conclusion\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.25\"}}}}]}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Option\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Leukocytosis.conclusion\",\"Reasoning.Clinic.Leukocytosis.guard\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Leukocytosis.conclusion\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"OfNat.ofNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Chart.fever\",\"Reasoning.Clinic.Chart.level\",\"Reasoning.Clinic.Chart.mk\",\"Reasoning.Clinic.Chart.sepsis\",\"Reasoning.Clinic.Chart.shock\",\"Reasoning.Clinic.Chart.sirs\",\"Reasoning.Clinic.Chart.tachycardia\",\"Reasoning.Clinic.Chart.tachypnea\",\"Reasoning.Clinic.Chart.vitals\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":0,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":1,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":2,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":3,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.11\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":5,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":6,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":7,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":8,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.17\"}}}}}}}}}}}}}},\"uses\":[\"Nat\",\"OfNat\",\"instOfNatNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Chart.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Leukocytosis.guard\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Bool.and\",\"Nat.beq\",\"OfNat.ofNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.leukocytic\",\"Reasoning.Clinic.Chart.leukocytosis\",\"Reasoning.Clinic.Chart.vitals\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.30\",\"parameters\":[{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.29\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.30\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.36\",\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":0,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.leukocytic\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.35\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.36\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":4,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.44\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.46\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.31\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.48\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.37\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.50\"}}}}]}}}}}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"PUnit\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Nat.beq\",\"Unit.unit\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.leukocytic\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Sepsis.apply\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Option\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.none\",\"Option.some\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Sepsis.conclusion\",\"Reasoning.Clinic.Sepsis.guard\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Sepsis.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"discriminant\":\"_uniq.20\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.22\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Sepsis.conclusion\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.25\"}}}}]}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Option\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Sepsis.conclusion\",\"Reasoning.Clinic.Sepsis.guard\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Sepsis.conclusion\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"OfNat.ofNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Chart.fever\",\"Reasoning.Clinic.Chart.leukocytosis\",\"Reasoning.Clinic.Chart.level\",\"Reasoning.Clinic.Chart.mk\",\"Reasoning.Clinic.Chart.shock\",\"Reasoning.Clinic.Chart.sirs\",\"Reasoning.Clinic.Chart.tachycardia\",\"Reasoning.Clinic.Chart.tachypnea\",\"Reasoning.Clinic.Chart.vitals\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":0,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":1,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":2,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":3,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":4,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":5,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.13\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":7,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":8,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.17\"}}}}}}}}}}}}}},\"uses\":[\"Nat\",\"OfNat\",\"instOfNatNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Chart.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Sepsis.guard\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Bool.and\",\"Nat.beq\",\"OfNat.ofNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Chart.sepsis\",\"Reasoning.Clinic.Chart.sirs\",\"Reasoning.Clinic.Chart.vitals\",\"Reasoning.Clinic.Vitals.infection\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.38\",\"parameters\":[{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.37\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.38\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.73\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.38\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.57\",\"parameters\":[{\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":0,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Vitals\",\"index\":5,\"value\":\"_uniq.51\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.54\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.52\"},{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.56\"}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.57\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":5,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.64\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.65\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"},{\"kind\":\"fvar\",\"id\":\"_uniq.66\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.67\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.48\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.68\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.69\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.58\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.71\"}}}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.73\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":6,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.81\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.79\"},{\"kind\":\"fvar\",\"id\":\"_uniq.82\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.83\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.39\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.84\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.85\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.74\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.86\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.87\"}}}}]}}}}}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"PUnit\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Nat.beq\",\"Unit.unit\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Shock.apply\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Option\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.none\",\"Option.some\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Shock.conclusion\",\"Reasoning.Clinic.Shock.guard\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Shock.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"discriminant\":\"_uniq.20\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.22\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Shock.conclusion\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.25\"}}}}]}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Option\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Shock.conclusion\",\"Reasoning.Clinic.Shock.guard\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Shock.conclusion\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"OfNat.ofNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Chart.fever\",\"Reasoning.Clinic.Chart.leukocytosis\",\"Reasoning.Clinic.Chart.level\",\"Reasoning.Clinic.Chart.mk\",\"Reasoning.Clinic.Chart.sepsis\",\"Reasoning.Clinic.Chart.sirs\",\"Reasoning.Clinic.Chart.tachycardia\",\"Reasoning.Clinic.Chart.tachypnea\",\"Reasoning.Clinic.Chart.vitals\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":0,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":1,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":2,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":3,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":4,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":5,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":6,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.14\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":8,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.17\"}}}}}}}}}}}}}},\"uses\":[\"Nat\",\"OfNat\",\"instOfNatNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Chart.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Shock.guard\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Bool.and\",\"Nat.beq\",\"OfNat.ofNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.hypotensive\",\"Reasoning.Clinic.Chart.sepsis\",\"Reasoning.Clinic.Chart.shock\",\"Reasoning.Clinic.Chart.vitals\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.38\",\"parameters\":[{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.37\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.38\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.69\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.38\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.53\",\"parameters\":[{\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":0,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.hypotensive\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.52\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.53\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":6,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.61\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.63\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.48\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.64\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.65\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.54\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.66\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.67\"}}}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.69\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":7,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.77\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.78\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.79\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.39\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.81\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.70\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.82\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.83\"}}}}]}}}}}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"PUnit\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Nat.beq\",\"Unit.unit\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.hypotensive\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Sirs.apply\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Option\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.none\",\"Option.some\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Sirs.conclusion\",\"Reasoning.Clinic.Sirs.guard\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Sirs.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"discriminant\":\"_uniq.20\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.22\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Sirs.conclusion\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.25\"}}}}]}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Option\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Sirs.conclusion\",\"Reasoning.Clinic.Sirs.guard\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Sirs.conclusion\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"OfNat.ofNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Chart.fever\",\"Reasoning.Clinic.Chart.leukocytosis\",\"Reasoning.Clinic.Chart.level\",\"Reasoning.Clinic.Chart.mk\",\"Reasoning.Clinic.Chart.sepsis\",\"Reasoning.Clinic.Chart.shock\",\"Reasoning.Clinic.Chart.tachycardia\",\"Reasoning.Clinic.Chart.tachypnea\",\"Reasoning.Clinic.Chart.vitals\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":0,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":1,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":2,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":3,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":4,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.12\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":6,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":7,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":8,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.17\"}}}}}}}}}}}}}},\"uses\":[\"Nat\",\"OfNat\",\"instOfNatNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Chart.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Sirs.guard\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"Bool.and\",\"HAdd.hAdd\",\"Nat.beq\",\"Nat.ble\",\"OfNat.ofNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Chart.fever\",\"Reasoning.Clinic.Chart.leukocytosis\",\"Reasoning.Clinic.Chart.sirs\",\"Reasoning.Clinic.Chart.tachycardia\",\"Reasoning.Clinic.Chart.tachypnea\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.30\",\"parameters\":[{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.29\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.30\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.48\",\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.35\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.38\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":1,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":2,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.39\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.40\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":3,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.39\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":4,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.39\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.44\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.47\"}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.48\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":5,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.56\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.58\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.31\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.60\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.49\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.62\"}}}}]}}}}}}}}}}},\"uses\":[\"Add\",\"Bool\",\"HAdd\",\"Nat\",\"OfNat\",\"PUnit\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Nat.beq\",\"Nat.ble\",\"Unit.unit\",\"Reasoning.Clinic.Chart\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Tachycardia.apply\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Option\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.none\",\"Option.some\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Tachycardia.conclusion\",\"Reasoning.Clinic.Tachycardia.guard\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Tachycardia.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"discriminant\":\"_uniq.20\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.22\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Tachycardia.conclusion\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.25\"}}}}]}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Option\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Tachycardia.conclusion\",\"Reasoning.Clinic.Tachycardia.guard\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Tachycardia.conclusion\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"OfNat.ofNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Chart.fever\",\"Reasoning.Clinic.Chart.leukocytosis\",\"Reasoning.Clinic.Chart.level\",\"Reasoning.Clinic.Chart.mk\",\"Reasoning.Clinic.Chart.sepsis\",\"Reasoning.Clinic.Chart.shock\",\"Reasoning.Clinic.Chart.sirs\",\"Reasoning.Clinic.Chart.tachypnea\",\"Reasoning.Clinic.Chart.vitals\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":0,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":1,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.9\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":3,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":4,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":5,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":6,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":7,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":8,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.17\"}}}}}}}}}}}}}},\"uses\":[\"Nat\",\"OfNat\",\"instOfNatNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Chart.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Tachycardia.guard\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Bool.and\",\"Nat.beq\",\"OfNat.ofNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.tachycardic\",\"Reasoning.Clinic.Chart.tachycardia\",\"Reasoning.Clinic.Chart.vitals\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.30\",\"parameters\":[{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.29\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.30\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.36\",\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":0,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.tachycardic\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.35\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.36\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":2,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.44\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.46\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.31\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.48\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.37\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.50\"}}}}]}}}}}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"PUnit\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Nat.beq\",\"Unit.unit\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.tachycardic\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Tachypnea.apply\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Option\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.none\",\"Option.some\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Tachypnea.conclusion\",\"Reasoning.Clinic.Tachypnea.guard\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Tachypnea.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"discriminant\":\"_uniq.20\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.22\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Tachypnea.conclusion\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.25\"}}}}]}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Option\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Tachypnea.conclusion\",\"Reasoning.Clinic.Tachypnea.guard\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Tachypnea.conclusion\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"OfNat.ofNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Chart.fever\",\"Reasoning.Clinic.Chart.leukocytosis\",\"Reasoning.Clinic.Chart.level\",\"Reasoning.Clinic.Chart.mk\",\"Reasoning.Clinic.Chart.sepsis\",\"Reasoning.Clinic.Chart.shock\",\"Reasoning.Clinic.Chart.sirs\",\"Reasoning.Clinic.Chart.tachycardia\",\"Reasoning.Clinic.Chart.vitals\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":0,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":1,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":2,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.10\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":4,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":5,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":6,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":7,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":8,\"value\":\"_uniq.5\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.17\"}}}}}}}}}}}}}},\"uses\":[\"Nat\",\"OfNat\",\"instOfNatNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Chart.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Tachypnea.guard\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Bool.and\",\"Nat.beq\",\"OfNat.ofNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.tachypneic\",\"Reasoning.Clinic.Chart.tachypnea\",\"Reasoning.Clinic.Chart.vitals\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.30\",\"parameters\":[{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.29\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.30\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.36\",\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":0,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.tachypneic\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.35\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.36\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":3,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.44\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.46\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.31\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.48\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.37\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.50\"}}}}]}}}}}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"PUnit\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Nat.beq\",\"Unit.unit\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.tachypneic\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.Ledger\",\"kind\":\"inductive\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Reasoning.Clinic.Triage.Ledger.mk\",\"parameters\":0,\"fields\":6,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Ledger\",\"levels\":[]}}}}}}}}]}},{\"name\":\"Reasoning.Clinic.Triage.Run\",\"kind\":\"inductive\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Reasoning.Clinic.Triage.Run.mk\",\"parameters\":0,\"fields\":3,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Ledger\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]}}}}}]}},{\"name\":\"Reasoning.Clinic.Triage.Step\",\"kind\":\"inductive\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Reasoning.Clinic.Triage.Step.Fever\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}},{\"name\":\"Reasoning.Clinic.Triage.Step.Tachycardia\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}},{\"name\":\"Reasoning.Clinic.Triage.Step.Tachypnea\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}},{\"name\":\"Reasoning.Clinic.Triage.Step.Leukocytosis\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}},{\"name\":\"Reasoning.Clinic.Triage.Step.Sirs\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}},{\"name\":\"Reasoning.Clinic.Triage.Step.Sepsis\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}},{\"name\":\"Reasoning.Clinic.Triage.Step.Shock\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}},{\"name\":\"Reasoning.Clinic.Triage.Step.Escalate\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}}]}},{\"name\":\"Reasoning.Clinic.Triage.accept\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Nat\",\"Option\",\"Unit\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.none\",\"Option.some\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.recommendationCheck\",\"Reasoning.Clinic.Triage.extract\",\"Reasoning.Clinic.Triage.accept.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.41\",\"parameters\":[{\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.40\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.41\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.63\",\"parameters\":[{\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.recommendationCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.57\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.58\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.59\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.61\"}}}]}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.63\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.extract\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.72\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.42\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.74\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.75\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.64\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.76\"}}}]}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Nat\",\"Option\",\"PUnit\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.recommendationCheck\",\"Reasoning.Clinic.Triage.extract\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.attempts\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Nat\",\"Prod\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"ite\",\"Bool.true\",\"HAdd.hAdd\",\"OfNat.ofNat\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Escalate.guard\",\"Reasoning.Clinic.Fever.guard\",\"Reasoning.Clinic.Leukocytosis.guard\",\"Reasoning.Clinic.Sepsis.guard\",\"Reasoning.Clinic.Shock.guard\",\"Reasoning.Clinic.Sirs.guard\",\"Reasoning.Clinic.Tachycardia.guard\",\"Reasoning.Clinic.Tachypnea.guard\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Fever.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.48\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.50\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.51\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.245\",\"parameters\":[{\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.77\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.78\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.87\"},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.244\",\"parameters\":[{\"id\":\"_uniq.131\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.132\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.131\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.141\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.132\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.142\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.141\"},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.243\",\"parameters\":[{\"id\":\"_uniq.241\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.242\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.241\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.242\"}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.142\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.143\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.147\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Sirs.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.148\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.147\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.149\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.148\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.158\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.149\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.159\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.158\"},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.239\",\"parameters\":[{\"id\":\"_uniq.174\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.175\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.174\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.184\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.175\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.185\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.184\"},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.238\",\"parameters\":[{\"id\":\"_uniq.228\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.229\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.228\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.230\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.229\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.231\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.232\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.231\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.233\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.232\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.234\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.132\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.235\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.229\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.236\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.233\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.234\"},{\"kind\":\"fvar\",\"id\":\"_uniq.235\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.237\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.230\"},{\"kind\":\"fvar\",\"id\":\"_uniq.236\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.243\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.237\"}]}}}}}}}}}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.185\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.186\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.189\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Shock.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.190\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.189\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.191\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.190\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.200\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.191\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.201\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.200\"},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.226\",\"parameters\":[{\"id\":\"_uniq.216\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.217\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.216\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.218\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.217\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.219\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.220\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.219\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.221\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.220\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.222\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.175\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.223\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.217\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.224\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.221\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.222\"},{\"kind\":\"fvar\",\"id\":\"_uniq.223\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.225\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.218\"},{\"kind\":\"fvar\",\"id\":\"_uniq.224\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.238\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.225\"}]}}}}}}}}}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.201\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.202\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.204\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Escalate.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.205\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.204\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.206\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.205\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.207\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.206\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.208\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.209\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.208\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.210\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.209\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.211\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.191\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.212\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.206\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.213\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.210\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.211\"},{\"kind\":\"fvar\",\"id\":\"_uniq.212\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.214\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.207\"},{\"kind\":\"fvar\",\"id\":\"_uniq.213\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.226\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.214\"}]}}}}}}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.215\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.226\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.191\"}]}}]}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.227\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.238\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.175\"}]}}]}}}}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.159\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.160\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.162\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Sepsis.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.163\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.162\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.164\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.163\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.165\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.164\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.166\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.167\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.166\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.168\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.167\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.169\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.149\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.170\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.164\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.171\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.168\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.169\"},{\"kind\":\"fvar\",\"id\":\"_uniq.170\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.172\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.165\"},{\"kind\":\"fvar\",\"id\":\"_uniq.171\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.239\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.172\"}]}}}}}}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.173\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.239\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.149\"}]}}]}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.240\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.243\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.132\"}]}}]}}}}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.88\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.89\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Tachypnea.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.92\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.93\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.94\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.103\"},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.129\",\"parameters\":[{\"id\":\"_uniq.119\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.120\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.119\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.121\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.120\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.122\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.124\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.123\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.78\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.120\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.127\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.124\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.125\"},{\"kind\":\"fvar\",\"id\":\"_uniq.126\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.128\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.121\"},{\"kind\":\"fvar\",\"id\":\"_uniq.127\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.244\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.128\"}]}}}}}}}}}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.104\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.105\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Leukocytosis.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.107\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.108\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.110\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.109\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.111\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.111\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.113\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.112\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.94\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.109\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.113\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.114\"},{\"kind\":\"fvar\",\"id\":\"_uniq.115\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.110\"},{\"kind\":\"fvar\",\"id\":\"_uniq.116\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.129\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.117\"}]}}}}}}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.118\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.129\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.94\"}]}}]}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.130\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.244\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.78\"}]}}]}}}}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"discriminant\":\"_uniq.62\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.63\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Tachycardia.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.66\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.67\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.69\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.70\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.51\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.67\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.71\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.72\"},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.68\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.245\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"}]}}}}}}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.76\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.245\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]}}]}}}}}}}}}}}},\"uses\":[\"Add\",\"Bool\",\"Decidable\",\"HAdd\",\"Nat\",\"OfNat\",\"Prod\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Prod.mk\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Escalate.guard\",\"Reasoning.Clinic.Fever.guard\",\"Reasoning.Clinic.Leukocytosis.guard\",\"Reasoning.Clinic.Sepsis.guard\",\"Reasoning.Clinic.Shock.guard\",\"Reasoning.Clinic.Sirs.guard\",\"Reasoning.Clinic.Tachycardia.guard\",\"Reasoning.Clinic.Tachypnea.guard\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.conclude\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"Bool.false\",\"Bool.true\",\"Except.error\",\"Except.ok\",\"Prod.mk\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Triage.accept\",\"Reasoning.Clinic.Triage.extract\",\"Reasoning.Clinic.Triage.conclude.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.52\",\"parameters\":[{\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.51\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.52\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.92\",\"parameters\":[{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.69\",\"parameters\":[{\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"fvar\",\"id\":\"_uniq.66\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.68\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.69\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.77\",\"parameters\":[{\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.75\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.76\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.77\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.extract\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.86\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.78\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.87\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.88\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.89\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.70\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.89\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.90\"}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.92\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.accept\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.43\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.101\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.93\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.102\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.103\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.104\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.53\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.104\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.105\"}}}]}}}}}}},\"uses\":[\"Bool\",\"Except\",\"Nat\",\"Option\",\"PUnit\",\"Prod\",\"Bool.false\",\"Bool.true\",\"Except.error\",\"Except.ok\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"Unit.unit\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Triage.accept\",\"Reasoning.Clinic.Triage.extract\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.extract\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Option.some\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Chart.level\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":8,\"value\":\"_uniq.6\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.17\"}}}},\"uses\":[\"Nat\",\"Option\",\"Option.some\",\"Reasoning.Clinic.Chart\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.fire\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Option\",\"Unit\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Escalate.apply\",\"Reasoning.Clinic.Fever.apply\",\"Reasoning.Clinic.Leukocytosis.apply\",\"Reasoning.Clinic.Sepsis.apply\",\"Reasoning.Clinic.Shock.apply\",\"Reasoning.Clinic.Sirs.apply\",\"Reasoning.Clinic.Tachycardia.apply\",\"Reasoning.Clinic.Tachypnea.apply\",\"Reasoning.Clinic.Triage.Step\",\"Reasoning.Clinic.Triage.fire.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.78\",\"parameters\":[{\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Fever.apply\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.77\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.78\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.83\",\"parameters\":[{\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Tachycardia.apply\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.82\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.83\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.88\",\"parameters\":[{\"id\":\"_uniq.86\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Tachypnea.apply\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.87\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.88\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.93\",\"parameters\":[{\"id\":\"_uniq.91\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Leukocytosis.apply\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.92\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.93\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.98\",\"parameters\":[{\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Sirs.apply\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.97\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.98\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.103\",\"parameters\":[{\"id\":\"_uniq.101\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Sepsis.apply\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.102\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.103\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.108\",\"parameters\":[{\"id\":\"_uniq.106\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Shock.apply\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.107\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.108\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.113\",\"parameters\":[{\"id\":\"_uniq.111\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Escalate.apply\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.112\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.113\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Reasoning.Clinic.Triage.Step\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"discriminant\":\"_uniq.64\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Reasoning.Clinic.Triage.Step.Fever\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.79\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.125\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.126\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Reasoning.Clinic.Triage.Step.Tachycardia\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.127\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.128\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.84\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.127\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.128\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Reasoning.Clinic.Triage.Step.Tachypnea\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.129\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.130\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.89\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.129\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.130\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Reasoning.Clinic.Triage.Step.Leukocytosis\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.131\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.132\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.94\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.131\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.132\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Reasoning.Clinic.Triage.Step.Sirs\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.99\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.133\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.134\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Reasoning.Clinic.Triage.Step.Sepsis\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.135\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.104\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.135\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.136\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Reasoning.Clinic.Triage.Step.Shock\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.137\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.138\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.109\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.137\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.138\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Reasoning.Clinic.Triage.Step.Escalate\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.139\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.140\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.114\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.139\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.140\"}}}}]}}}}}}}}}}}}}}}}}},\"uses\":[\"Option\",\"PUnit\",\"Unit.unit\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Escalate.apply\",\"Reasoning.Clinic.Fever.apply\",\"Reasoning.Clinic.Leukocytosis.apply\",\"Reasoning.Clinic.Sepsis.apply\",\"Reasoning.Clinic.Shock.apply\",\"Reasoning.Clinic.Sirs.apply\",\"Reasoning.Clinic.Tachycardia.apply\",\"Reasoning.Clinic.Tachypnea.apply\",\"Reasoning.Clinic.Triage.Step\",\"Reasoning.Clinic.Triage.Step.Escalate\",\"Reasoning.Clinic.Triage.Step.Fever\",\"Reasoning.Clinic.Triage.Step.Leukocytosis\",\"Reasoning.Clinic.Triage.Step.Sepsis\",\"Reasoning.Clinic.Triage.Step.Shock\",\"Reasoning.Clinic.Triage.Step.Sirs\",\"Reasoning.Clinic.Triage.Step.Tachycardia\",\"Reasoning.Clinic.Triage.Step.Tachypnea\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"Nat\",\"Prod\",\"Except.casesOn\",\"Except.error\",\"Except.ok\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.next\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Option\",\"Unit\",\"Option.none\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Triage.Step\",\"Reasoning.Clinic.Triage.fire\",\"Reasoning.Clinic.Triage.select\",\"Reasoning.Clinic.Triage.next.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.32\",\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.32\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.39\",\"parameters\":[{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.fire\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.38\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.39\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.select\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"discriminant\":\"_uniq.48\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.33\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.50\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.40\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.52\"}}}]}}}}}}},\"uses\":[\"Option\",\"PUnit\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Triage.Step\",\"Reasoning.Clinic.Triage.fire\",\"Reasoning.Clinic.Triage.select\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.observe\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"OfNat.ofNat\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Chart.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.7\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.9\"}}}}}},\"uses\":[\"Nat\",\"OfNat\",\"instOfNatNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Chart.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.run\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"LexLeanCollections.iterateUntil\",\"OfNat.ofNat\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Triage.Run\",\"Reasoning.Clinic.Triage.start\",\"Reasoning.Clinic.Triage.step\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]}]}},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.step\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"11\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.9\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.start\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.12\"}}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"instOfNatNat\",\"LexLeanCollections.iterateUntil\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Triage.Run\",\"Reasoning.Clinic.Triage.start\",\"Reasoning.Clinic.Triage.step\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.saturate\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"LexLeanCollections.iterateUntil\",\"OfNat.ofNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Triage.next\",\"Reasoning.Clinic.Triage.observe\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.next\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"11\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.9\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.observe\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.12\"}}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"instOfNatNat\",\"LexLeanCollections.iterateUntil\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Triage.next\",\"Reasoning.Clinic.Triage.observe\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.select\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Option\",\"Unit\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.none\",\"Option.some\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Escalate.guard\",\"Reasoning.Clinic.Fever.guard\",\"Reasoning.Clinic.Leukocytosis.guard\",\"Reasoning.Clinic.Sepsis.guard\",\"Reasoning.Clinic.Shock.guard\",\"Reasoning.Clinic.Sirs.guard\",\"Reasoning.Clinic.Tachycardia.guard\",\"Reasoning.Clinic.Tachypnea.guard\",\"Reasoning.Clinic.Triage.Step\",\"Reasoning.Clinic.Triage.Step.Escalate\",\"Reasoning.Clinic.Triage.Step.Fever\",\"Reasoning.Clinic.Triage.Step.Leukocytosis\",\"Reasoning.Clinic.Triage.Step.Sepsis\",\"Reasoning.Clinic.Triage.Step.Shock\",\"Reasoning.Clinic.Triage.Step.Sirs\",\"Reasoning.Clinic.Triage.Step.Tachycardia\",\"Reasoning.Clinic.Triage.Step.Tachypnea\",\"Reasoning.Clinic.Triage.select.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.114\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.124\",\"parameters\":[{\"id\":\"_uniq.122\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.122\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.123\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.124\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.273\",\"parameters\":[{\"id\":\"_uniq.132\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.124\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.197\",\"parameters\":[{\"id\":\"_uniq.141\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.145\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.124\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.165\",\"parameters\":[{\"id\":\"_uniq.147\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.156\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Escalate.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.157\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.158\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.156\"},{\"kind\":\"fvar\",\"id\":\"_uniq.157\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.158\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.159\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.160\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.160\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.161\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.162\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step.Escalate\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.163\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.162\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.163\"}}}}]}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.166\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.165\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.182\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Shock.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.183\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.184\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.182\"},{\"kind\":\"fvar\",\"id\":\"_uniq.183\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.196\",\"parameters\":[{\"id\":\"_uniq.190\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.190\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.191\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.192\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.166\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.191\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.192\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.193\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.194\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.145\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.193\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.194\"}}}]}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.184\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.185\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.186\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.196\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.186\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.187\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.188\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step.Shock\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.189\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.188\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.196\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.189\"}]}}}}]}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.198\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.197\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.209\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.124\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.229\",\"parameters\":[{\"id\":\"_uniq.211\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.220\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Sepsis.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.221\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.222\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.220\"},{\"kind\":\"fvar\",\"id\":\"_uniq.221\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.222\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.223\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.224\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.224\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.225\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.226\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step.Sepsis\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.227\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.226\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.227\"}}}}]}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.230\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.229\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.246\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Sirs.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.247\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.248\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.246\"},{\"kind\":\"fvar\",\"id\":\"_uniq.247\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.272\",\"parameters\":[{\"id\":\"_uniq.254\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.265\",\"parameters\":[{\"id\":\"_uniq.259\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.259\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.260\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.261\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.198\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.260\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.261\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.262\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.263\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.136\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.262\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.263\"}}}]}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.271\",\"parameters\":[{\"id\":\"_uniq.269\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.270\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.209\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.269\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.265\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.270\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.268\",\"parameters\":[{\"id\":\"_uniq.266\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.267\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.230\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.266\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.265\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.267\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.254\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.255\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.268\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.255\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.257\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.271\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.257\"}]}}]}}}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.248\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.249\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.250\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.272\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.250\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.251\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.252\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step.Sirs\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.253\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.252\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.272\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.253\"}]}}}}]}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.274\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.273\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.287\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.124\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.348\",\"parameters\":[{\"id\":\"_uniq.292\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.296\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.124\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.316\",\"parameters\":[{\"id\":\"_uniq.298\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.307\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Leukocytosis.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.308\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.309\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.307\"},{\"kind\":\"fvar\",\"id\":\"_uniq.308\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.309\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.310\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.311\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.311\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.312\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.313\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step.Leukocytosis\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.314\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.313\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.314\"}}}}]}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.317\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.316\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.333\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Tachypnea.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.334\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.335\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.333\"},{\"kind\":\"fvar\",\"id\":\"_uniq.334\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.347\",\"parameters\":[{\"id\":\"_uniq.341\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.341\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.342\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.343\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.317\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.342\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.343\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.344\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.345\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.296\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.344\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.345\"}}}]}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.335\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.336\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.337\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.347\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.337\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.338\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.339\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step.Tachypnea\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.340\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.339\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.347\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.340\"}]}}}}]}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.349\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.348\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.362\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.124\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.382\",\"parameters\":[{\"id\":\"_uniq.364\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.373\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Tachycardia.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.374\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.375\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.373\"},{\"kind\":\"fvar\",\"id\":\"_uniq.374\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.375\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.376\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.377\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.377\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.378\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.379\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step.Tachycardia\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.380\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.379\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.380\"}}}}]}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.383\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.382\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.399\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Fever.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.400\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.401\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.399\"},{\"kind\":\"fvar\",\"id\":\"_uniq.400\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.437\",\"parameters\":[{\"id\":\"_uniq.407\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.430\",\"parameters\":[{\"id\":\"_uniq.412\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.423\",\"parameters\":[{\"id\":\"_uniq.417\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.417\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.418\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.419\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.274\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.418\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.419\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.420\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.421\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.125\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.420\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.421\"}}}]}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.426\",\"parameters\":[{\"id\":\"_uniq.424\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.425\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.349\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.424\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.423\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.425\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.429\",\"parameters\":[{\"id\":\"_uniq.427\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.428\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.287\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.427\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.423\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.428\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.412\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.413\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.426\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.413\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.415\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.429\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.415\"}]}}]}}}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.436\",\"parameters\":[{\"id\":\"_uniq.434\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.435\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.362\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.434\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.430\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.435\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.433\",\"parameters\":[{\"id\":\"_uniq.431\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.432\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.383\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.431\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.430\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.432\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.407\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.408\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.433\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.408\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.410\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.436\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.410\"}]}}]}}}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.401\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.402\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.403\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.437\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.403\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.404\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.405\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step.Fever\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.406\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.405\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.437\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.406\"}]}}}}]}}}}}}}}}}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Option\",\"PUnit\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Escalate.guard\",\"Reasoning.Clinic.Fever.guard\",\"Reasoning.Clinic.Leukocytosis.guard\",\"Reasoning.Clinic.Sepsis.guard\",\"Reasoning.Clinic.Shock.guard\",\"Reasoning.Clinic.Sirs.guard\",\"Reasoning.Clinic.Tachycardia.guard\",\"Reasoning.Clinic.Tachypnea.guard\",\"Reasoning.Clinic.Triage.Step\",\"Reasoning.Clinic.Triage.Step.Escalate\",\"Reasoning.Clinic.Triage.Step.Fever\",\"Reasoning.Clinic.Triage.Step.Leukocytosis\",\"Reasoning.Clinic.Triage.Step.Sepsis\",\"Reasoning.Clinic.Triage.Step.Shock\",\"Reasoning.Clinic.Triage.Step.Sirs\",\"Reasoning.Clinic.Triage.Step.Tachycardia\",\"Reasoning.Clinic.Triage.Step.Tachypnea\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.start\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"List.nil\",\"OfNat.ofNat\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Triage.Step\",\"Reasoning.Clinic.Triage.observe\",\"Reasoning.Clinic.Triage.Ledger.mk\",\"Reasoning.Clinic.Triage.Run.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.observe\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.9\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Ledger\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Ledger.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.18\"}}}}}}}}},\"uses\":[\"List\",\"Nat\",\"OfNat\",\"instOfNatNat\",\"List.nil\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Triage.Ledger\",\"Reasoning.Clinic.Triage.Run\",\"Reasoning.Clinic.Triage.Step\",\"Reasoning.Clinic.Triage.observe\",\"Reasoning.Clinic.Triage.Ledger.mk\",\"Reasoning.Clinic.Triage.Run.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.step\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Option\",\"Unit\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"HAdd.hAdd\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"List.cons\",\"List.nil\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Triage.Run\",\"Reasoning.Clinic.Triage.Step\",\"Reasoning.Clinic.Triage.attempts\",\"Reasoning.Clinic.Triage.fire\",\"Reasoning.Clinic.Triage.select\",\"Reasoning.Clinic.Triage.Ledger.attempts\",\"Reasoning.Clinic.Triage.Ledger.expansions\",\"Reasoning.Clinic.Triage.Ledger.firings\",\"Reasoning.Clinic.Triage.Ledger.frontier\",\"Reasoning.Clinic.Triage.Ledger.iterations\",\"Reasoning.Clinic.Triage.Ledger.mk\",\"Reasoning.Clinic.Triage.Ledger.verifications\",\"Reasoning.Clinic.Triage.Run.ledger\",\"Reasoning.Clinic.Triage.Run.mk\",\"Reasoning.Clinic.Triage.Run.state\",\"Reasoning.Clinic.Triage.Run.trace\",\"Reasoning.Clinic.Triage.next.match_1\",\"Reasoning.Clinic.Triage.replay.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.44\",\"parameters\":[{\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.43\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.44\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.103\",\"parameters\":[{\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.44\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.87\",\"parameters\":[{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Triage.Run\",\"index\":1,\"value\":\"_uniq.36\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.52\"},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.66\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.67\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Ledger\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Triage.Run\",\"index\":2,\"value\":\"_uniq.36\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Triage.Ledger\",\"index\":0,\"value\":\"_uniq.69\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.72\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.68\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.70\"},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Triage.Ledger\",\"index\":1,\"value\":\"_uniq.69\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Triage.Run\",\"index\":0,\"value\":\"_uniq.36\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.attempts\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.68\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.77\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Triage.Ledger\",\"index\":2,\"value\":\"_uniq.69\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.68\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.79\"},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Triage.Ledger\",\"index\":3,\"value\":\"_uniq.69\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Triage.Ledger\",\"index\":4,\"value\":\"_uniq.69\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Triage.Ledger\",\"index\":5,\"value\":\"_uniq.69\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Ledger\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Ledger.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"},{\"kind\":\"fvar\",\"id\":\"_uniq.78\"},{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"},{\"kind\":\"fvar\",\"id\":\"_uniq.82\"},{\"kind\":\"fvar\",\"id\":\"_uniq.83\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.85\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.86\"}}}}}}}}}}}}}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.87\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Triage.Run\",\"index\":0,\"value\":\"_uniq.36\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.fire\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.96\"},{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]}]},\"discriminant\":\"_uniq.97\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.98\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.99\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.100\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.88\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.100\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.101\"}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.103\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Triage.Run\",\"index\":0,\"value\":\"_uniq.36\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.113\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.select\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.112\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]}]},\"discriminant\":\"_uniq.113\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.45\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.115\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.116\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Step\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.Run\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.104\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.116\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.117\"}}}]}}}}}}}},\"uses\":[\"Add\",\"HAdd\",\"List\",\"Nat\",\"OfNat\",\"Option\",\"PUnit\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"List.cons\",\"List.nil\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Triage.Ledger\",\"Reasoning.Clinic.Triage.Run\",\"Reasoning.Clinic.Triage.Step\",\"Reasoning.Clinic.Triage.attempts\",\"Reasoning.Clinic.Triage.fire\",\"Reasoning.Clinic.Triage.select\",\"Reasoning.Clinic.Triage.Ledger.mk\",\"Reasoning.Clinic.Triage.Run.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.verdict\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"Nat\",\"Prod\",\"Unit\",\"Bool.false\",\"Except.error\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Triage.conclude\",\"Reasoning.Clinic.Triage.saturate\",\"Reasoning.Clinic.Triage.account.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.saturate\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.29\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.37\",\"parameters\":[{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Triage.conclude\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.36\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.37\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.50\",\"parameters\":[{\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.49\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.50\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.56\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.51\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.58\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.38\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.60\"}}}}]}}}}}}}}},\"uses\":[\"Bool\",\"Except\",\"Nat\",\"PUnit\",\"Prod\",\"Bool.false\",\"Bool.true\",\"Except.error\",\"Prod.mk\",\"Unit.unit\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Triage.conclude\",\"Reasoning.Clinic.Triage.saturate\"]},\"inductive\":null},{\"name\":\"Reasoning.Clinic.Vitals.heartRate\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Vitals\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Vitals.infection\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Vitals\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Vitals.mk\",\"kind\":\"constructor\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Vitals.respiratoryRate\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Vitals\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Vitals.systolic\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Vitals\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Vitals.temperature\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Vitals\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Vitals.whiteCells\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Vitals\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.Step\",\"kind\":\"inductive\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Reasoning.Main.Grade.Step.Fever\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}},{\"name\":\"Reasoning.Main.Grade.Step.Tachycardia\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}},{\"name\":\"Reasoning.Main.Grade.Step.Tachypnea\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}},{\"name\":\"Reasoning.Main.Grade.Step.Leukocytosis\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}},{\"name\":\"Reasoning.Main.Grade.Step.Sirs\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}},{\"name\":\"Reasoning.Main.Grade.Step.Sepsis\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}},{\"name\":\"Reasoning.Main.Grade.Step.Shock\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}},{\"name\":\"Reasoning.Main.Grade.Step.Escalate\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}}]}},{\"name\":\"Reasoning.Main.Grade.accept\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Main.Grade.extract\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.extract\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.12\"}}},\"uses\":[\"Nat\",\"Option\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Main.Grade.extract\"]},\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.conclude\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"Bool.false\",\"Bool.true\",\"Except.error\",\"Except.ok\",\"Prod.mk\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Main.Grade.accept\",\"Reasoning.Main.Grade.extract\",\"Reasoning.Main.Grade.conclude.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.52\",\"parameters\":[{\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.51\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.52\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.92\",\"parameters\":[{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.69\",\"parameters\":[{\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"fvar\",\"id\":\"_uniq.66\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.68\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.69\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.77\",\"parameters\":[{\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.75\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.76\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.77\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.extract\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.86\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.78\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.87\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.88\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.89\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.70\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.89\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.90\"}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.92\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.accept\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.43\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.101\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.93\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.102\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.103\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.104\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.53\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.104\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.105\"}}}]}}}}}}},\"uses\":[\"Bool\",\"Except\",\"Nat\",\"Option\",\"PUnit\",\"Prod\",\"Bool.false\",\"Bool.true\",\"Except.error\",\"Except.ok\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"Unit.unit\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Main.Grade.accept\",\"Reasoning.Main.Grade.extract\"]},\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.extract\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Option.some\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Chart.level\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Clinic.Chart\",\"index\":8,\"value\":\"_uniq.6\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.8\"}}}},\"uses\":[\"Nat\",\"Option\",\"Option.some\",\"Reasoning.Clinic.Chart\"]},\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.fire\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Option\",\"Unit\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Escalate.apply\",\"Reasoning.Clinic.Fever.apply\",\"Reasoning.Clinic.Leukocytosis.apply\",\"Reasoning.Clinic.Sepsis.apply\",\"Reasoning.Clinic.Shock.apply\",\"Reasoning.Clinic.Sirs.apply\",\"Reasoning.Clinic.Tachycardia.apply\",\"Reasoning.Clinic.Tachypnea.apply\",\"Reasoning.Main.Grade.Step\",\"Reasoning.Main.Grade.fire.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.78\",\"parameters\":[{\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Fever.apply\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.77\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.78\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.83\",\"parameters\":[{\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Tachycardia.apply\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.82\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.83\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.88\",\"parameters\":[{\"id\":\"_uniq.86\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Tachypnea.apply\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.87\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.88\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.93\",\"parameters\":[{\"id\":\"_uniq.91\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Leukocytosis.apply\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.92\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.93\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.98\",\"parameters\":[{\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Sirs.apply\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.97\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.98\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.103\",\"parameters\":[{\"id\":\"_uniq.101\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Sepsis.apply\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.102\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.103\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.108\",\"parameters\":[{\"id\":\"_uniq.106\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Shock.apply\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.107\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.108\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.113\",\"parameters\":[{\"id\":\"_uniq.111\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Escalate.apply\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.112\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.113\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Reasoning.Main.Grade.Step\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"discriminant\":\"_uniq.64\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Reasoning.Main.Grade.Step.Fever\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.79\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.125\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.126\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Reasoning.Main.Grade.Step.Tachycardia\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.127\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.128\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.84\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.127\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.128\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Reasoning.Main.Grade.Step.Tachypnea\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.129\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.130\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.89\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.129\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.130\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Reasoning.Main.Grade.Step.Leukocytosis\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.131\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.132\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.94\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.131\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.132\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Reasoning.Main.Grade.Step.Sirs\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.133\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.99\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.133\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.134\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Reasoning.Main.Grade.Step.Sepsis\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.135\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.104\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.135\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.136\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Reasoning.Main.Grade.Step.Shock\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.137\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.138\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.109\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.137\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.138\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Reasoning.Main.Grade.Step.Escalate\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.139\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.140\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.114\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.139\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.140\"}}}}]}}}}}}}}}}}}}}}}}},\"uses\":[\"Option\",\"PUnit\",\"Unit.unit\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Escalate.apply\",\"Reasoning.Clinic.Fever.apply\",\"Reasoning.Clinic.Leukocytosis.apply\",\"Reasoning.Clinic.Sepsis.apply\",\"Reasoning.Clinic.Shock.apply\",\"Reasoning.Clinic.Sirs.apply\",\"Reasoning.Clinic.Tachycardia.apply\",\"Reasoning.Clinic.Tachypnea.apply\",\"Reasoning.Main.Grade.Step\",\"Reasoning.Main.Grade.Step.Escalate\",\"Reasoning.Main.Grade.Step.Fever\",\"Reasoning.Main.Grade.Step.Leukocytosis\",\"Reasoning.Main.Grade.Step.Sepsis\",\"Reasoning.Main.Grade.Step.Shock\",\"Reasoning.Main.Grade.Step.Sirs\",\"Reasoning.Main.Grade.Step.Tachycardia\",\"Reasoning.Main.Grade.Step.Tachypnea\"]},\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"Nat\",\"Prod\",\"Except.casesOn\",\"Except.error\",\"Except.ok\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.next\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Option\",\"Unit\",\"Option.none\",\"Reasoning.Clinic.Chart\",\"Reasoning.Main.Grade.Step\",\"Reasoning.Main.Grade.fire\",\"Reasoning.Main.Grade.select\",\"Reasoning.Main.Grade.next.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.32\",\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.32\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.39\",\"parameters\":[{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.fire\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.38\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.39\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.select\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"discriminant\":\"_uniq.48\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.33\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.50\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.40\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.52\"}}}]}}}}}}},\"uses\":[\"Option\",\"PUnit\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Clinic.Chart\",\"Reasoning.Main.Grade.Step\",\"Reasoning.Main.Grade.fire\",\"Reasoning.Main.Grade.select\"]},\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.observe\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"OfNat.ofNat\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Chart.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.5\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.7\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.5\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.9\"}}}}}},\"uses\":[\"Nat\",\"OfNat\",\"instOfNatNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Clinic.Chart.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.saturate\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"LexLeanCollections.iterateUntil\",\"OfNat.ofNat\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Main.Grade.next\",\"Reasoning.Main.Grade.observe\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}]}},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.next\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"11\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.9\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.observe\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.12\"}}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"instOfNatNat\",\"LexLeanCollections.iterateUntil\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Main.Grade.next\",\"Reasoning.Main.Grade.observe\"]},\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.select\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Option\",\"Unit\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.none\",\"Option.some\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Escalate.guard\",\"Reasoning.Clinic.Fever.guard\",\"Reasoning.Clinic.Leukocytosis.guard\",\"Reasoning.Clinic.Sepsis.guard\",\"Reasoning.Clinic.Shock.guard\",\"Reasoning.Clinic.Sirs.guard\",\"Reasoning.Clinic.Tachycardia.guard\",\"Reasoning.Clinic.Tachypnea.guard\",\"Reasoning.Main.Grade.Step\",\"Reasoning.Main.Grade.Step.Escalate\",\"Reasoning.Main.Grade.Step.Fever\",\"Reasoning.Main.Grade.Step.Leukocytosis\",\"Reasoning.Main.Grade.Step.Sepsis\",\"Reasoning.Main.Grade.Step.Shock\",\"Reasoning.Main.Grade.Step.Sirs\",\"Reasoning.Main.Grade.Step.Tachycardia\",\"Reasoning.Main.Grade.Step.Tachypnea\",\"Reasoning.Main.Grade.select.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.114\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.124\",\"parameters\":[{\"id\":\"_uniq.122\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.122\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.123\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.124\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.273\",\"parameters\":[{\"id\":\"_uniq.132\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.124\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.197\",\"parameters\":[{\"id\":\"_uniq.141\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.145\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.124\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.165\",\"parameters\":[{\"id\":\"_uniq.147\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.156\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Escalate.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.157\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.158\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.156\"},{\"kind\":\"fvar\",\"id\":\"_uniq.157\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.158\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.159\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.160\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.160\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.161\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.162\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step.Escalate\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.163\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.162\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.163\"}}}}]}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.166\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.165\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.182\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Shock.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.183\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.184\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.182\"},{\"kind\":\"fvar\",\"id\":\"_uniq.183\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.196\",\"parameters\":[{\"id\":\"_uniq.190\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.190\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.191\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.192\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.166\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.191\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.192\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.193\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.194\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.145\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.193\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.194\"}}}]}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.184\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.185\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.186\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.196\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.186\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.187\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.188\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step.Shock\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.189\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.188\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.196\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.189\"}]}}}}]}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.198\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.197\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.209\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.124\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.229\",\"parameters\":[{\"id\":\"_uniq.211\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.220\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Sepsis.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.221\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.222\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.220\"},{\"kind\":\"fvar\",\"id\":\"_uniq.221\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.222\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.223\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.224\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.224\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.225\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.226\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step.Sepsis\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.227\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.226\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.227\"}}}}]}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.230\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.229\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.246\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Sirs.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.247\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.248\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.246\"},{\"kind\":\"fvar\",\"id\":\"_uniq.247\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.272\",\"parameters\":[{\"id\":\"_uniq.254\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.265\",\"parameters\":[{\"id\":\"_uniq.259\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.259\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.260\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.261\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.198\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.260\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.261\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.262\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.263\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.136\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.262\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.263\"}}}]}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.271\",\"parameters\":[{\"id\":\"_uniq.269\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.270\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.209\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.269\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.265\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.270\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.268\",\"parameters\":[{\"id\":\"_uniq.266\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.267\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.230\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.266\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.265\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.267\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.254\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.255\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.268\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.255\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.257\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.271\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.257\"}]}}]}}}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.248\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.249\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.250\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.272\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.250\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.251\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.252\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step.Sirs\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.253\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.252\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.272\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.253\"}]}}}}]}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.274\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.273\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.287\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.124\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.348\",\"parameters\":[{\"id\":\"_uniq.292\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.296\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.124\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.316\",\"parameters\":[{\"id\":\"_uniq.298\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.307\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Leukocytosis.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.308\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.309\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.307\"},{\"kind\":\"fvar\",\"id\":\"_uniq.308\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.309\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.310\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.311\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.311\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.312\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.313\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step.Leukocytosis\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.314\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.313\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.314\"}}}}]}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.317\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.316\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.333\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Tachypnea.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.334\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.335\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.333\"},{\"kind\":\"fvar\",\"id\":\"_uniq.334\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.347\",\"parameters\":[{\"id\":\"_uniq.341\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.341\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.342\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.343\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.317\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.342\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.343\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.344\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.345\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.296\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.344\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.345\"}}}]}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.335\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.336\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.337\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.347\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.337\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.338\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.339\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step.Tachypnea\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.340\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.339\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.347\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.340\"}]}}}}]}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.349\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.348\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.362\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.124\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.382\",\"parameters\":[{\"id\":\"_uniq.364\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.373\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Tachycardia.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.374\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.375\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.373\"},{\"kind\":\"fvar\",\"id\":\"_uniq.374\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.375\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.376\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.377\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.377\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.378\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.379\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step.Tachycardia\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.380\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.379\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.380\"}}}}]}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.383\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.382\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.399\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Fever.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.114\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.400\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.401\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.399\"},{\"kind\":\"fvar\",\"id\":\"_uniq.400\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.437\",\"parameters\":[{\"id\":\"_uniq.407\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.430\",\"parameters\":[{\"id\":\"_uniq.412\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.423\",\"parameters\":[{\"id\":\"_uniq.417\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.417\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.418\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.419\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.274\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.418\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.419\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.420\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.421\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.125\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.420\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.421\"}}}]}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.426\",\"parameters\":[{\"id\":\"_uniq.424\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.425\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.349\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.424\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.423\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.425\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.429\",\"parameters\":[{\"id\":\"_uniq.427\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.428\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.287\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.427\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.423\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.428\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.412\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.413\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.426\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.413\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.415\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.429\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.415\"}]}}]}}}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.436\",\"parameters\":[{\"id\":\"_uniq.434\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.435\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.362\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.434\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.430\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.435\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.433\",\"parameters\":[{\"id\":\"_uniq.431\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.432\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.383\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.431\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.430\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.432\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.407\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.408\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.433\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.408\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.410\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.436\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.410\"}]}}]}}}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"discriminant\":\"_uniq.401\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.402\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.403\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.437\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.403\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.404\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.405\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step.Fever\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.406\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.Step\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.405\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.437\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.406\"}]}}}}]}}}}}}}}}}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Option\",\"PUnit\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Escalate.guard\",\"Reasoning.Clinic.Fever.guard\",\"Reasoning.Clinic.Leukocytosis.guard\",\"Reasoning.Clinic.Sepsis.guard\",\"Reasoning.Clinic.Shock.guard\",\"Reasoning.Clinic.Sirs.guard\",\"Reasoning.Clinic.Tachycardia.guard\",\"Reasoning.Clinic.Tachypnea.guard\",\"Reasoning.Main.Grade.Step\",\"Reasoning.Main.Grade.Step.Escalate\",\"Reasoning.Main.Grade.Step.Fever\",\"Reasoning.Main.Grade.Step.Leukocytosis\",\"Reasoning.Main.Grade.Step.Sepsis\",\"Reasoning.Main.Grade.Step.Shock\",\"Reasoning.Main.Grade.Step.Sirs\",\"Reasoning.Main.Grade.Step.Tachycardia\",\"Reasoning.Main.Grade.Step.Tachypnea\"]},\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.verdict\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"Nat\",\"Prod\",\"Unit\",\"Bool.false\",\"Except.error\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Main.Grade.conclude\",\"Reasoning.Main.Grade.saturate\",\"Reasoning.Main.Grade.account.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Vitals\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.saturate\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.29\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.37\",\"parameters\":[{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Clinic.Chart\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Main.Grade.conclude\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.36\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.37\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.44\",\"parameters\":[{\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.43\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.44\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.50\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.45\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.52\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.38\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.54\"}}}}]}}}}}}}}},\"uses\":[\"Bool\",\"Except\",\"Nat\",\"PUnit\",\"Prod\",\"Bool.false\",\"Bool.true\",\"Except.error\",\"Prod.mk\",\"Unit.unit\",\"Reasoning.Clinic.Chart\",\"Reasoning.Clinic.Vitals\",\"Reasoning.Main.Grade.conclude\",\"Reasoning.Main.Grade.saturate\"]},\"inductive\":null},{\"name\":\"Reasoning.Main.planLeft.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"Nat\",\"Prod\",\"Except.casesOn\",\"Except.error\",\"Except.ok\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Main.triageSteps.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"List\",\"Nat\",\"Prod\",\"Except.casesOn\",\"Except.error\",\"Except.ok\",\"Reasoning.Clinic.Triage.Step\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.EmptyB.apply\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Nat\",\"Option\",\"Prod\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.none\",\"Option.some\",\"Reasoning.Planner.EmptyB.conclusion\",\"Reasoning.Planner.EmptyB.guard\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"parameters\":[{\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.EmptyB.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.20\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.22\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.EmptyB.conclusion\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.25\"}}}}]}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Nat\",\"Option\",\"Prod\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Reasoning.Planner.EmptyB.conclusion\",\"Reasoning.Planner.EmptyB.guard\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.EmptyB.conclusion\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Prod\",\"instOfNatNat\",\"OfNat.ofNat\",\"Prod.fst\",\"Prod.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.6\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.9\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.11\"}}}}}}},\"uses\":[\"Nat\",\"OfNat\",\"Prod\",\"instOfNatNat\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.EmptyB.guard\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Prod\",\"instOfNatNat\",\"Bool.and\",\"Nat.ble\",\"Nat.blt\",\"OfNat.ofNat\",\"Prod.fst\",\"Prod.snd\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.30\",\"parameters\":[{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.29\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.30\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.39\",\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"4\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.36\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.38\"}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.39\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.46\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.47\"},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.49\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.31\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.51\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.40\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.53\"}}}}]}}}}}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"PUnit\",\"Prod\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Nat.ble\",\"Nat.blt\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.FillA.apply\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Nat\",\"Option\",\"Prod\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.none\",\"Option.some\",\"Reasoning.Planner.FillA.conclusion\",\"Reasoning.Planner.FillA.guard\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"parameters\":[{\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.FillA.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.20\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.22\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.FillA.conclusion\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.25\"}}}}]}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Nat\",\"Option\",\"Prod\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Reasoning.Planner.FillA.conclusion\",\"Reasoning.Planner.FillA.guard\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.FillA.conclusion\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Prod\",\"instOfNatNat\",\"OfNat.ofNat\",\"Prod.mk\",\"Prod.snd\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"4\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.8\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.6\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.11\"}}}}}}},\"uses\":[\"Nat\",\"OfNat\",\"Prod\",\"instOfNatNat\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.FillA.guard\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Prod\",\"instOfNatNat\",\"Bool.and\",\"Nat.ble\",\"Nat.blt\",\"OfNat.ofNat\",\"Prod.fst\",\"Prod.snd\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.30\",\"parameters\":[{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.29\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.30\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.39\",\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.36\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.38\"}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.39\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"4\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.46\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.47\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.49\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.31\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.51\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.40\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.53\"}}}}]}}}}}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"PUnit\",\"Prod\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Nat.ble\",\"Nat.blt\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Ledger\",\"kind\":\"inductive\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Reasoning.Planner.Plan.Ledger.mk\",\"parameters\":0,\"fields\":6,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Ledger\",\"levels\":[]}}}}}}}}]}},{\"name\":\"Reasoning.Planner.Plan.Node\",\"kind\":\"inductive\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Reasoning.Planner.Plan.Node.mk\",\"parameters\":0,\"fields\":2,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}}}}]}},{\"name\":\"Reasoning.Planner.Plan.Search\",\"kind\":\"inductive\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Reasoning.Planner.Plan.Search.mk\",\"parameters\":0,\"fields\":5,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Ledger\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}}}}}}}]}},{\"name\":\"Reasoning.Planner.Plan.Step\",\"kind\":\"inductive\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Reasoning.Planner.Plan.Step.FillA\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}},{\"name\":\"Reasoning.Planner.Plan.Step.EmptyB\",\"parameters\":0,\"fields\":0,\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}},{\"name\":\"Reasoning.Planner.Plan.Step.Pour\",\"parameters\":0,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}}}]}},{\"name\":\"Reasoning.Planner.Plan.accept\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.none\",\"Option.some\",\"Reasoning.Planner.measuresCheck\",\"Reasoning.Planner.Plan.extract\",\"Reasoning.Planner.Plan.replay.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}}},\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.42\",\"parameters\":[{\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.41\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.42\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.64\",\"parameters\":[{\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.measuresCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.58\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.60\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.62\"}}}]}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.64\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.extract\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.73\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.43\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.75\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.76\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.77\"}}}]}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Nat\",\"Option\",\"PUnit\",\"Prod\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Planner.measuresCheck\",\"Reasoning.Planner.Plan.extract\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.attempts\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Prod\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"HAdd.hAdd\",\"LexLeanRuntime.instLengthableList\",\"LexLeanRuntime.length\",\"OfNat.ofNat\",\"Reasoning.Planner.Pour.candidates\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.8\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.11\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Pour.candidates\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.9\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.9\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.17\"}}}}}}}}}}}}},\"uses\":[\"Add\",\"HAdd\",\"List\",\"Nat\",\"OfNat\",\"Prod\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableList\",\"LexLeanRuntime.length\",\"Reasoning.Planner.Pour.candidates\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.extract\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Prod\",\"Option.some\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}},\"uses\":[\"Nat\",\"Option\",\"Prod\",\"Option.some\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.failure\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Prod\",\"instDecidableEqBool\",\"ite\",\"Bool.and\",\"Bool.false\",\"Bool.not\",\"Bool.true\",\"Prod.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.44\",\"parameters\":[{\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.43\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.44\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.49\",\"parameters\":[{\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.not\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.48\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.49\",\"arguments\":[]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.69\",\"parameters\":[{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"discriminant\":\"_uniq.61\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.62\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.64\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.65\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.66\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.67\"}}}}]}}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.75\",\"parameters\":[{\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.50\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.69\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.72\",\"parameters\":[{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.45\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.69\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"discriminant\":\"_uniq.27\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.72\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.75\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]}}}]}}}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"PUnit\",\"Prod\",\"instDecidableEqBool\",\"Bool.false\",\"Bool.not\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Prod.mk\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.fire\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Option\",\"Prod\",\"Unit\",\"Reasoning.Planner.EmptyB.apply\",\"Reasoning.Planner.FillA.apply\",\"Reasoning.Planner.Plan.Step\",\"Reasoning.Planner.Pour.apply\",\"Reasoning.Planner.Plan.fire.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}}},\"parameters\":[{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.46\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.FillA.apply\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.45\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.46\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.51\",\"parameters\":[{\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.EmptyB.apply\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.50\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.51\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.58\",\"parameters\":[{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Pour.apply\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.58\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Reasoning.Planner.Plan.Step\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.37\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Reasoning.Planner.Plan.Step.FillA\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.47\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.66\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.67\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Reasoning.Planner.Plan.Step.EmptyB\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.52\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.68\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.69\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Reasoning.Planner.Plan.Step.Pour\",\"parameters\":[{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.59\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.71\"}}}]}}}}}}}},\"uses\":[\"Nat\",\"Option\",\"PUnit\",\"Prod\",\"Unit.unit\",\"Reasoning.Planner.EmptyB.apply\",\"Reasoning.Planner.FillA.apply\",\"Reasoning.Planner.Plan.Step\",\"Reasoning.Planner.Pour.apply\",\"Reasoning.Planner.Plan.Step.EmptyB\",\"Reasoning.Planner.Plan.Step.FillA\",\"Reasoning.Planner.Plan.Step.Pour\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.fresh\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"List\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"LexLeanCollections.instKeyNat\",\"LexLeanCollections.instKeyProd\",\"LexLeanCollections.listFold\",\"LexLeanCollections.setContains\",\"LexLeanCollections.setInsert\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"List.cons\",\"List.nil\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"Reasoning.Planner.Plan.Node\",\"Reasoning.Planner.Plan.Node.state\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}}},\"parameters\":[{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.47\",\"parameters\":[{\"id\":\"_uniq.20\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"borrow\":false},{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.instKeyNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.instKeyProd\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.20\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Node\",\"index\":0,\"value\":\"_uniq.21\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.setContains\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"discriminant\":\"_uniq.36\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.20\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.setInsert\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.44\"}}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.45\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.20\"}}]}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.50\"}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"List\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanCollections.Key\",\"LexLeanCollections.instKeyNat\",\"LexLeanCollections.instKeyProd\",\"LexLeanCollections.listFold\",\"LexLeanCollections.setContains\",\"LexLeanCollections.setInsert\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"List.cons\",\"List.nil\",\"Prod.mk\",\"Reasoning.Planner.Plan.Node\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.observe\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"OfNat.ofNat\",\"Prod.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.8\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.10\"}}}}}},\"uses\":[\"Nat\",\"OfNat\",\"Prod\",\"instOfNatNat\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.run\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instMulNat\",\"instOfNatNat\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.multiply\",\"OfNat.ofNat\",\"Reasoning.Planner.Plan.Search\",\"Reasoning.Planner.Plan.searchStep\",\"Reasoning.Planner.Plan.start\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.11\",\"parameters\":[{\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.searchStep\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.10\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Mul\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instMulNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"8\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.14\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.multiply\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.start\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.18\"}}}}}}}}}},\"uses\":[\"Bool\",\"Mul\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"instMulNat\",\"instOfNatNat\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.multiply\",\"Reasoning.Planner.Plan.Search\",\"Reasoning.Planner.Plan.searchStep\",\"Reasoning.Planner.Plan.start\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.searchStep\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"List\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"ite\",\"Bool.or\",\"Bool.true\",\"HAdd.hAdd\",\"LexLeanCollections.listFold\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"LexLeanRuntime.instLengthableList\",\"LexLeanRuntime.length\",\"List.cons\",\"List.nil\",\"Nat.blt\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"Reasoning.Planner.Plan.Node\",\"Reasoning.Planner.Plan.Search\",\"Reasoning.Planner.Plan.accept\",\"Reasoning.Planner.Plan.attempts\",\"Reasoning.Planner.Plan.fresh\",\"Reasoning.Planner.Plan.successors\",\"Reasoning.Planner.Plan.Ledger.attempts\",\"Reasoning.Planner.Plan.Ledger.expansions\",\"Reasoning.Planner.Plan.Ledger.firings\",\"Reasoning.Planner.Plan.Ledger.frontier\",\"Reasoning.Planner.Plan.Ledger.iterations\",\"Reasoning.Planner.Plan.Ledger.mk\",\"Reasoning.Planner.Plan.Ledger.verifications\",\"Reasoning.Planner.Plan.Node.state\",\"Reasoning.Planner.Plan.Search.found\",\"Reasoning.Planner.Plan.Search.frontier\",\"Reasoning.Planner.Plan.Search.ledger\",\"Reasoning.Planner.Plan.Search.mk\",\"Reasoning.Planner.Plan.Search.truncated\",\"Reasoning.Planner.Plan.Search.visited\",\"Reasoning.Planner.Plan.searchStep.match_1\",\"Reasoning.Planner.Plan.searchStep.match_3\",\"Reasoning.Planner.Plan.searchStep.match_5\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.93\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.101\",\"parameters\":[{\"id\":\"_uniq.99\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.100\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.101\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.327\",\"parameters\":[{\"id\":\"_uniq.109\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.115\",\"parameters\":[{\"id\":\"_uniq.113\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.114\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.115\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.310\",\"parameters\":[{\"id\":\"_uniq.126\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.127\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.162\",\"parameters\":[{\"id\":\"_uniq.133\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Search\",\"index\":1,\"value\":\"_uniq.93\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.135\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.133\"},{\"kind\":\"fvar\",\"id\":\"_uniq.126\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.135\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.137\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Search\",\"index\":3,\"value\":\"_uniq.93\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.138\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.139\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.138\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.140\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.139\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.141\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Ledger\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Search\",\"index\":4,\"value\":\"_uniq.93\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.148\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Ledger\",\"index\":0,\"value\":\"_uniq.141\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.149\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.150\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.149\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.151\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.150\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.152\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.140\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.148\"},{\"kind\":\"fvar\",\"id\":\"_uniq.151\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.153\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Ledger\",\"index\":1,\"value\":\"_uniq.141\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.154\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Ledger\",\"index\":2,\"value\":\"_uniq.141\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.155\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Ledger\",\"index\":3,\"value\":\"_uniq.141\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.156\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Ledger\",\"index\":4,\"value\":\"_uniq.141\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.157\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.140\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.156\"},{\"kind\":\"fvar\",\"id\":\"_uniq.151\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.158\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Ledger\",\"index\":5,\"value\":\"_uniq.141\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.159\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Ledger\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Ledger.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.152\"},{\"kind\":\"fvar\",\"id\":\"_uniq.153\"},{\"kind\":\"fvar\",\"id\":\"_uniq.154\"},{\"kind\":\"fvar\",\"id\":\"_uniq.155\"},{\"kind\":\"fvar\",\"id\":\"_uniq.157\"},{\"kind\":\"fvar\",\"id\":\"_uniq.158\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.160\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.127\"},{\"kind\":\"fvar\",\"id\":\"_uniq.134\"},{\"kind\":\"fvar\",\"id\":\"_uniq.136\"},{\"kind\":\"fvar\",\"id\":\"_uniq.137\"},{\"kind\":\"fvar\",\"id\":\"_uniq.159\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.161\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.160\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.161\"}}}}}}}}}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.163\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.162\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.294\",\"parameters\":[{\"id\":\"_uniq.169\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.174\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.successors\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.126\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.175\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.174\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.176\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Search\",\"index\":1,\"value\":\"_uniq.93\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.177\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.fresh\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.176\"},{\"kind\":\"fvar\",\"id\":\"_uniq.175\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.178\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.177\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.179\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.180\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.178\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.181\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.179\"},{\"kind\":\"fvar\",\"id\":\"_uniq.127\"},{\"kind\":\"fvar\",\"id\":\"_uniq.180\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.182\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.181\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.210\",\"parameters\":[{\"id\":\"_uniq.185\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.186\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.195\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.196\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.195\"},{\"kind\":\"fvar\",\"id\":\"_uniq.185\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.197\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.198\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.197\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.199\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.198\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.200\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.199\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"},{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.201\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.196\"},{\"kind\":\"fvar\",\"id\":\"_uniq.200\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.202\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.203\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.201\"},{\"kind\":\"fvar\",\"id\":\"_uniq.202\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"discriminant\":\"_uniq.203\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.204\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.185\"}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.205\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.206\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.207\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.186\"},{\"kind\":\"fvar\",\"id\":\"_uniq.206\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.208\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.179\"},{\"kind\":\"fvar\",\"id\":\"_uniq.185\"},{\"kind\":\"fvar\",\"id\":\"_uniq.207\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.208\"}}}}}]}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.211\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.212\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.210\"},{\"kind\":\"fvar\",\"id\":\"_uniq.211\"},{\"kind\":\"fvar\",\"id\":\"_uniq.182\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.213\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.212\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.214\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.178\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.215\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.223\",\"parameters\":[{\"id\":\"_uniq.221\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.222\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.222\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.224\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.223\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.234\",\"parameters\":[{\"id\":\"_uniq.226\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.227\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.228\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.227\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.229\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.228\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.230\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.229\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"},{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.231\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.232\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.231\"},{\"kind\":\"fvar\",\"id\":\"_uniq.182\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.233\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.230\"},{\"kind\":\"fvar\",\"id\":\"_uniq.232\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.233\"}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.235\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.234\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.240\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Search\",\"index\":3,\"value\":\"_uniq.93\"},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.287\",\"parameters\":[{\"id\":\"_uniq.245\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.246\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.247\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.246\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.248\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.247\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.249\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Ledger\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Search\",\"index\":4,\"value\":\"_uniq.93\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.250\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Ledger\",\"index\":0,\"value\":\"_uniq.249\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.251\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.252\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.251\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.253\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.252\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.254\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.248\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.250\"},{\"kind\":\"fvar\",\"id\":\"_uniq.253\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.255\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Ledger\",\"index\":1,\"value\":\"_uniq.249\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.256\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Node\",\"index\":0,\"value\":\"_uniq.126\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.257\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.attempts\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.256\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.258\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.248\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.255\"},{\"kind\":\"fvar\",\"id\":\"_uniq.257\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.259\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Ledger\",\"index\":2,\"value\":\"_uniq.249\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.260\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.261\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.260\"},{\"kind\":\"fvar\",\"id\":\"_uniq.175\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.262\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.248\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.259\"},{\"kind\":\"fvar\",\"id\":\"_uniq.261\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.263\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Ledger\",\"index\":3,\"value\":\"_uniq.249\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.264\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.248\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.263\"},{\"kind\":\"fvar\",\"id\":\"_uniq.253\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.265\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Ledger\",\"index\":4,\"value\":\"_uniq.249\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.266\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.248\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.265\"},{\"kind\":\"fvar\",\"id\":\"_uniq.253\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.275\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Ledger\",\"index\":5,\"value\":\"_uniq.249\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.276\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.260\"},{\"kind\":\"fvar\",\"id\":\"_uniq.213\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.277\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.275\"},{\"kind\":\"fvar\",\"id\":\"_uniq.276\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.278\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.279\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.277\"},{\"kind\":\"fvar\",\"id\":\"_uniq.278\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.286\",\"parameters\":[{\"id\":\"_uniq.282\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.283\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Ledger\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Ledger.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.254\"},{\"kind\":\"fvar\",\"id\":\"_uniq.258\"},{\"kind\":\"fvar\",\"id\":\"_uniq.262\"},{\"kind\":\"fvar\",\"id\":\"_uniq.264\"},{\"kind\":\"fvar\",\"id\":\"_uniq.266\"},{\"kind\":\"fvar\",\"id\":\"_uniq.282\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.284\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.213\"},{\"kind\":\"fvar\",\"id\":\"_uniq.214\"},{\"kind\":\"fvar\",\"id\":\"_uniq.215\"},{\"kind\":\"fvar\",\"id\":\"_uniq.245\"},{\"kind\":\"fvar\",\"id\":\"_uniq.283\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.285\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.284\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.285\"}}}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]},\"discriminant\":\"_uniq.279\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.280\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.286\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.275\"}]}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.281\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.286\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.276\"}]}}]}}}}}}}}}}}}}}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.293\",\"parameters\":[{\"id\":\"_uniq.291\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.292\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.224\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.291\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.287\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.292\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.290\",\"parameters\":[{\"id\":\"_uniq.288\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.289\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.235\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.288\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.287\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.289\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]},\"discriminant\":\"_uniq.240\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.241\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.290\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.241\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.243\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.293\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.243\"}]}}}]}}}}}}}}}}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.295\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.294\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.303\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Node\",\"index\":0,\"value\":\"_uniq.126\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.304\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.accept\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"},{\"kind\":\"fvar\",\"id\":\"_uniq.303\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]},\"discriminant\":\"_uniq.304\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.305\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.306\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.295\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.305\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.306\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.307\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.308\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.163\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.307\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.308\"}}}]}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.311\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.310\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.320\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Search\",\"index\":0,\"value\":\"_uniq.93\"},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]},\"discriminant\":\"_uniq.320\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.321\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.322\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.116\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.321\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.322\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.323\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.324\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.325\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.311\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.323\"},{\"kind\":\"fvar\",\"id\":\"_uniq.324\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.325\"}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.328\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.327\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.336\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Search\",\"index\":2,\"value\":\"_uniq.93\"},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]},\"discriminant\":\"_uniq.336\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.337\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.338\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.328\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.337\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.338\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.339\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.340\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.102\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.339\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.340\"}}}]}}}}}}},\"uses\":[\"Add\",\"Bool\",\"Decidable\",\"HAdd\",\"List\",\"Nat\",\"OfNat\",\"Option\",\"PUnit\",\"Prod\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanCollections.listFold\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"LexLeanRuntime.instLengthableList\",\"LexLeanRuntime.length\",\"List.cons\",\"List.nil\",\"Nat.blt\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"Unit.unit\",\"Reasoning.Planner.Plan.Ledger\",\"Reasoning.Planner.Plan.Node\",\"Reasoning.Planner.Plan.Search\",\"Reasoning.Planner.Plan.accept\",\"Reasoning.Planner.Plan.attempts\",\"Reasoning.Planner.Plan.fresh\",\"Reasoning.Planner.Plan.successors\",\"Reasoning.Planner.Plan.Ledger.mk\",\"Reasoning.Planner.Plan.Search.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.start\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"List\",\"Nat\",\"Prod\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"ite\",\"Bool.true\",\"HAdd.hAdd\",\"LexLeanCollections.instKeyNat\",\"LexLeanCollections.instKeyProd\",\"LexLeanCollections.listFold\",\"LexLeanCollections.setInsert\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"LexLeanRuntime.instLengthableList\",\"LexLeanRuntime.length\",\"List.cons\",\"List.nil\",\"Nat.blt\",\"OfNat.ofNat\",\"Option.none\",\"Reasoning.Planner.Plan.Node\",\"Reasoning.Planner.Plan.Step\",\"Reasoning.Planner.Plan.observe\",\"Reasoning.Planner.Plan.Ledger.mk\",\"Reasoning.Planner.Plan.Node.mk\",\"Reasoning.Planner.Plan.Search.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.43\",\"parameters\":[{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.31\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"discriminant\":\"_uniq.35\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.17\"}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.40\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.41\"}}}}}}]}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.observe\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.49\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.instKeyNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.Key\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.instKeyProd\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.setInsert\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.52\"},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.57\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.58\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.61\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.64\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.65\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.67\"},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Ledger\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Ledger.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.66\"},{\"kind\":\"fvar\",\"id\":\"_uniq.66\"},{\"kind\":\"fvar\",\"id\":\"_uniq.66\"},{\"kind\":\"fvar\",\"id\":\"_uniq.66\"},{\"kind\":\"fvar\",\"id\":\"_uniq.66\"},{\"kind\":\"fvar\",\"id\":\"_uniq.68\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Search.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"},{\"kind\":\"fvar\",\"id\":\"_uniq.69\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.70\"}}}}}}}}}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Add\",\"Bool\",\"Decidable\",\"HAdd\",\"List\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanCollections.Key\",\"LexLeanCollections.instKeyNat\",\"LexLeanCollections.instKeyProd\",\"LexLeanCollections.listFold\",\"LexLeanCollections.setInsert\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"LexLeanRuntime.instLengthableList\",\"LexLeanRuntime.length\",\"List.cons\",\"List.nil\",\"Nat.blt\",\"Option.none\",\"Reasoning.Planner.Plan.Ledger\",\"Reasoning.Planner.Plan.Node\",\"Reasoning.Planner.Plan.Search\",\"Reasoning.Planner.Plan.Step\",\"Reasoning.Planner.Plan.observe\",\"Reasoning.Planner.Plan.Ledger.mk\",\"Reasoning.Planner.Plan.Node.mk\",\"Reasoning.Planner.Plan.Search.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.successors\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"Reasoning.Planner.Plan.Node\",\"Reasoning.Planner.Plan.EmptyB.successors\",\"Reasoning.Planner.Plan.FillA.successors\",\"Reasoning.Planner.Plan.Pour.successors\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.FillA.successors\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.EmptyB.successors\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Pour.successors\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.12\"}}}}}}}},\"uses\":[\"List\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"Reasoning.Planner.Plan.Node\",\"Reasoning.Planner.Plan.EmptyB.successors\",\"Reasoning.Planner.Plan.FillA.successors\",\"Reasoning.Planner.Plan.Pour.successors\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.verdict\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"List\",\"Nat\",\"Prod\",\"Except.error\",\"Except.ok\",\"Prod.fst\",\"Reasoning.Planner.Plan\",\"Reasoning.Planner.Plan.Step\",\"Reasoning.Planner.Plan.verdict.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"parameters\":[{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.34\",\"parameters\":[{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.31\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.33\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.34\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.41\",\"parameters\":[{\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.40\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.41\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Except\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.53\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Except.error\",\"parameters\":[{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.42\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.55\"}}},{\"kind\":\"constructor\",\"constructor\":\"Except.ok\",\"parameters\":[{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.35\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}}]}}}}}}},\"uses\":[\"Bool\",\"Except\",\"List\",\"Nat\",\"Prod\",\"Except.error\",\"Except.ok\",\"Reasoning.Planner.Plan\",\"Reasoning.Planner.Plan.Step\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.Pour.apply\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Nat\",\"Option\",\"Prod\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.none\",\"Option.some\",\"Reasoning.Planner.Pour.conclusion\",\"Reasoning.Planner.Pour.guard\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}}},\"parameters\":[{\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Pour.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.26\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.28\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Pour.conclusion\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}}}}]}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Nat\",\"Option\",\"Prod\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Reasoning.Planner.Pour.conclusion\",\"Reasoning.Planner.Pour.guard\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.Pour.candidates\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Prod\",\"instOfNatNat\",\"List.cons\",\"List.nil\",\"OfNat.ofNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.8\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"2\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.11\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.14\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.19\"}}}}}}}}}}}}}}},\"uses\":[\"List\",\"Nat\",\"OfNat\",\"Prod\",\"instOfNatNat\",\"List.cons\",\"List.nil\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.Pour.conclusion\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Prod\",\"instAddNat\",\"instHAdd\",\"instSubNat\",\"HAdd.hAdd\",\"LexLeanRuntime.subtract\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.11\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.17\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.11\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.18\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.21\"}}}}}}}}}}},\"uses\":[\"Add\",\"HAdd\",\"Nat\",\"Prod\",\"Sub\",\"instAddNat\",\"instHAdd\",\"instSubNat\",\"LexLeanRuntime.subtract\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.Pour.guard\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Prod\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"Bool.and\",\"HAdd.hAdd\",\"Nat.ble\",\"OfNat.ofNat\",\"Prod.fst\",\"Prod.snd\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.45\",\"parameters\":[{\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.44\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.45\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.83\",\"parameters\":[{\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.45\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.63\",\"parameters\":[{\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.36\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"4\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.60\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.58\"},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.62\"}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.63\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.69\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.70\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.36\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.71\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.72\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.75\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.77\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.55\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.78\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.79\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.64\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.81\"}}}}]}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.83\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.36\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.89\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.90\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.46\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.91\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.92\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.84\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.93\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.94\"}}}}]}}}}}}}},\"uses\":[\"Add\",\"Bool\",\"HAdd\",\"Nat\",\"OfNat\",\"PUnit\",\"Prod\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Nat.ble\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Dose.Ledger\",\"kind\":\"inductive\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Reasoning.Screening.Dose.Ledger.mk\",\"parameters\":0,\"fields\":6,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Ledger\",\"levels\":[]}}}}}}}}]}},{\"name\":\"Reasoning.Screening.Dose.Trial\",\"kind\":\"inductive\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Reasoning.Screening.Dose.Trial.mk\",\"parameters\":0,\"fields\":3,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Ledger\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]}}}}}]}},{\"name\":\"Reasoning.Screening.Dose.candidates\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Except\",\"List\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"ite\",\"Bool.false\",\"Bool.true\",\"Except.error\",\"Except.ok\",\"List.nil\",\"Prod.mk\",\"Reasoning.Screening.DoseModel\",\"Reasoning.Screening.shortCheck\",\"Reasoning.Screening.Propose.candidates.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.37\",\"parameters\":[{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.36\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.37\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.44\",\"parameters\":[{\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.43\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.44\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.30\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.DoseModel\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.59\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.shortCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.58\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.69\"},{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.84\",\"parameters\":[{\"id\":\"_uniq.78\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Except\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.78\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Except.error\",\"parameters\":[{\"id\":\"_uniq.79\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.45\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.79\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.80\"}}},{\"kind\":\"constructor\",\"constructor\":\"Except.ok\",\"parameters\":[{\"id\":\"_uniq.81\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.38\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.82\"}}}]}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.71\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.72\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.70\"},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.84\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"}]}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.76\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.84\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.77\"}]}}}]}}}}}}}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Except\",\"List\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"Bool.false\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Except.error\",\"Except.ok\",\"List.nil\",\"Prod.mk\",\"Reasoning.Screening.DoseModel\",\"Reasoning.Screening.shortCheck\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Dose.failure\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Nat\",\"Prod\",\"Unit\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Nat.beq\",\"OfNat.ofNat\",\"Prod.mk\",\"Reasoning.Screening.Dose.Trial\",\"Reasoning.Screening.Dose.Ledger.verifications\",\"Reasoning.Screening.Dose.Trial.ledger\",\"Reasoning.Screening.Dose.Trial.truncated\",\"Reasoning.Screening.Dose.try.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.43\",\"parameters\":[{\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.42\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.43\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.87\",\"parameters\":[{\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.57\",\"parameters\":[{\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.56\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.57\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.64\",\"parameters\":[{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.63\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.64\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Ledger\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Dose.Trial\",\"index\":2,\"value\":\"_uniq.34\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Dose.Ledger\",\"index\":4,\"value\":\"_uniq.70\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.78\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.79\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.77\"},{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"discriminant\":\"_uniq.81\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.82\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.83\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.58\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.84\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.85\"}}}}]}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.87\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Dose.Trial\",\"index\":1,\"value\":\"_uniq.34\"},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"discriminant\":\"_uniq.93\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.88\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.94\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.95\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.44\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.96\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.97\"}}}}]}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"PUnit\",\"Prod\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Nat.beq\",\"Prod.mk\",\"Unit.unit\",\"Reasoning.Screening.Dose.Ledger\",\"Reasoning.Screening.Dose.Trial\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Dose.run\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Bool.false\",\"LexLeanCollections.listFold\",\"OfNat.ofNat\",\"Option.none\",\"Reasoning.Screening.Dose.Trial\",\"Reasoning.Screening.Dose.candidates\",\"Reasoning.Screening.Dose.try\",\"Reasoning.Screening.Dose.Ledger.mk\",\"Reasoning.Screening.Dose.Trial.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.13\",\"parameters\":[{\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.try\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.12\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.17\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Ledger\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Ledger.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.candidates\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.22\"}}}}}}}}}}}},\"uses\":[\"Bool\",\"List\",\"Nat\",\"OfNat\",\"Option\",\"instOfNatNat\",\"Bool.false\",\"LexLeanCollections.listFold\",\"Option.none\",\"Reasoning.Screening.Dose.Ledger\",\"Reasoning.Screening.Dose.Trial\",\"Reasoning.Screening.Dose.candidates\",\"Reasoning.Screening.Dose.try\",\"Reasoning.Screening.Dose.Ledger.mk\",\"Reasoning.Screening.Dose.Trial.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Dose.try\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Nat\",\"Option\",\"Unit\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"Bool.true\",\"HAdd.hAdd\",\"Nat.blt\",\"OfNat.ofNat\",\"Option.none\",\"Reasoning.Screening.Dose.Trial\",\"Reasoning.Screening.Dose.verify\",\"Reasoning.Screening.Dose.Ledger.attempts\",\"Reasoning.Screening.Dose.Ledger.expansions\",\"Reasoning.Screening.Dose.Ledger.firings\",\"Reasoning.Screening.Dose.Ledger.frontier\",\"Reasoning.Screening.Dose.Ledger.iterations\",\"Reasoning.Screening.Dose.Ledger.mk\",\"Reasoning.Screening.Dose.Ledger.verifications\",\"Reasoning.Screening.Dose.Trial.found\",\"Reasoning.Screening.Dose.Trial.ledger\",\"Reasoning.Screening.Dose.Trial.mk\",\"Reasoning.Screening.Dose.Trial.truncated\",\"Reasoning.Screening.Dose.try.match_1\",\"Reasoning.Screening.Dose.try.match_3\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]}}}},\"parameters\":[{\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.53\",\"parameters\":[{\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.46\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.53\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.110\",\"parameters\":[{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.85\",\"parameters\":[{\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.verify\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Dose.Trial\",\"index\":1,\"value\":\"_uniq.46\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.68\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Ledger\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Dose.Trial\",\"index\":2,\"value\":\"_uniq.46\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Dose.Ledger\",\"index\":0,\"value\":\"_uniq.70\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.72\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.73\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.69\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.71\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Dose.Ledger\",\"index\":1,\"value\":\"_uniq.70\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.69\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.76\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Dose.Ledger\",\"index\":2,\"value\":\"_uniq.70\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Dose.Ledger\",\"index\":3,\"value\":\"_uniq.70\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Dose.Ledger\",\"index\":4,\"value\":\"_uniq.70\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.69\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Dose.Ledger\",\"index\":5,\"value\":\"_uniq.70\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Ledger\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Ledger.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.77\"},{\"kind\":\"fvar\",\"id\":\"_uniq.78\"},{\"kind\":\"fvar\",\"id\":\"_uniq.79\"},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"},{\"kind\":\"fvar\",\"id\":\"_uniq.82\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"fvar\",\"id\":\"_uniq.66\"},{\"kind\":\"fvar\",\"id\":\"_uniq.83\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.84\"}}}}}}}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.85\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.93\",\"parameters\":[{\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Ledger\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Dose.Trial\",\"index\":2,\"value\":\"_uniq.46\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.89\"},{\"kind\":\"fvar\",\"id\":\"_uniq.90\"},{\"kind\":\"fvar\",\"id\":\"_uniq.91\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.92\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.93\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Ledger\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Dose.Trial\",\"index\":2,\"value\":\"_uniq.46\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Dose.Ledger\",\"index\":4,\"value\":\"_uniq.99\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.101\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.102\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.100\"},{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]},\"discriminant\":\"_uniq.104\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.94\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.105\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.106\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.86\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.107\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.108\"}}}}]}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.111\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.110\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Dose.Trial\",\"index\":0,\"value\":\"_uniq.46\"},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]},\"discriminant\":\"_uniq.119\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.120\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.121\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.111\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.120\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.121\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.122\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.54\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.122\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.123\"}}}]}}}}}}},\"uses\":[\"Add\",\"Bool\",\"HAdd\",\"Nat\",\"OfNat\",\"Option\",\"PUnit\",\"instAddNat\",\"instHAdd\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Nat.blt\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Screening.Dose.Ledger\",\"Reasoning.Screening.Dose.Trial\",\"Reasoning.Screening.Dose.verify\",\"Reasoning.Screening.Dose.Ledger.mk\",\"Reasoning.Screening.Dose.Trial.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Dose.verdict\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"Except.error\",\"Except.ok\",\"Reasoning.Screening.Dose.Trial\",\"Reasoning.Screening.Dose.failure\",\"Reasoning.Screening.Dose.run\",\"Reasoning.Screening.Dose.Trial.found\",\"Reasoning.Screening.Dose.try.match_3\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.run\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.Trial\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.31\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.38\",\"parameters\":[{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.37\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.38\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.46\",\"parameters\":[{\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Dose.failure\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.45\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.46\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Dose.Trial\",\"index\":0,\"value\":\"_uniq.32\"},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.58\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.47\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.60\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.39\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.62\"}}}]}}}}}}}}},\"uses\":[\"Bool\",\"Except\",\"Nat\",\"Option\",\"PUnit\",\"Prod\",\"Except.error\",\"Except.ok\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Screening.Dose.Trial\",\"Reasoning.Screening.Dose.failure\",\"Reasoning.Screening.Dose.run\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Dose.verify\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Nat\",\"Option\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.none\",\"Option.some\",\"Reasoning.Screening.safeCheck\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.safeCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.26\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.28\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.30\"}}}]}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Nat\",\"Option\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Reasoning.Screening.safeCheck\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Propose.apply\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Nat\",\"Option\",\"Prod\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.none\",\"Option.some\",\"Reasoning.Screening.Propose.conclusion\",\"Reasoning.Screening.Propose.guard\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}}},\"parameters\":[{\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Propose.guard\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.26\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.28\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Propose.conclusion\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}}}}]}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Nat\",\"Option\",\"Prod\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Reasoning.Screening.Propose.conclusion\",\"Reasoning.Screening.Propose.guard\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Propose.candidates\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Except\",\"List\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"ite\",\"Bool.false\",\"Bool.true\",\"Except.error\",\"Except.ok\",\"List.nil\",\"Prod.fst\",\"Prod.mk\",\"Reasoning.Screening.DoseModel\",\"Reasoning.Screening.shortCheck\",\"Reasoning.Screening.Propose.candidates.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.37\",\"parameters\":[{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.36\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.37\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.44\",\"parameters\":[{\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.43\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.44\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.58\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.DoseModel\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.60\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.shortCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.70\"},{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.85\",\"parameters\":[{\"id\":\"_uniq.79\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Except\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.79\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Except.error\",\"parameters\":[{\"id\":\"_uniq.80\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.45\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.81\"}}},{\"kind\":\"constructor\",\"constructor\":\"Except.ok\",\"parameters\":[{\"id\":\"_uniq.82\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.38\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.82\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.83\"}}}]}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.72\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.73\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.71\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.75\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.85\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.77\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.85\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.78\"}]}}}]}}}}}}}}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Except\",\"List\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"Bool.false\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Except.error\",\"Except.ok\",\"List.nil\",\"Prod.mk\",\"Reasoning.Screening.DoseModel\",\"Reasoning.Screening.shortCheck\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Propose.conclusion\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Prod\",\"Prod.fst\",\"Prod.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.11\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.14\"}}}},\"uses\":[\"Nat\",\"Prod\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Propose.guard\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Prod\",\"instOfNatNat\",\"Bool.and\",\"Nat.beq\",\"Nat.blt\",\"OfNat.ofNat\",\"Prod.snd\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.37\",\"parameters\":[{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.36\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.37\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.45\",\"parameters\":[{\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.42\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.43\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.44\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.45\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.28\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.53\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.beq\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.55\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.38\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.46\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.59\"}}}}]}}}}}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"PUnit\",\"Prod\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Nat.beq\",\"Nat.blt\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.Ledger\",\"kind\":\"inductive\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Reasoning.Screening.Screen.Ledger.mk\",\"parameters\":0,\"fields\":6,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Ledger\",\"levels\":[]}}}}}}}}]}},{\"name\":\"Reasoning.Screening.Screen.Node\",\"kind\":\"inductive\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Reasoning.Screening.Screen.Node.mk\",\"parameters\":0,\"fields\":2,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}}}}]}},{\"name\":\"Reasoning.Screening.Screen.Search\",\"kind\":\"inductive\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Reasoning.Screening.Screen.Search.mk\",\"parameters\":0,\"fields\":4,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Ledger\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}}}}}}]}},{\"name\":\"Reasoning.Screening.Screen.Step\",\"kind\":\"inductive\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":0,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"Reasoning.Screening.Screen.Step.Propose\",\"parameters\":0,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}}}]}},{\"name\":\"Reasoning.Screening.Screen.accept\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"instDecidableEqBool\",\"ite\",\"Bool.true\",\"Option.none\",\"Option.some\",\"Reasoning.Screening.safeCheck\",\"Reasoning.Screening.Screen.extract\",\"Reasoning.Screening.Screen.accept.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.42\",\"parameters\":[{\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.41\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.42\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.64\",\"parameters\":[{\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.safeCheck\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.58\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.60\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.62\"}}}]}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.64\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.extract\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.73\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.43\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.75\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.77\"}}}]}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Nat\",\"Option\",\"PUnit\",\"Prod\",\"instDecidableEqBool\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Screening.safeCheck\",\"Reasoning.Screening.Screen.extract\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.attempts\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Prod\",\"LexLeanRuntime.instLengthableList\",\"LexLeanRuntime.length\",\"Reasoning.Screening.Propose.candidates\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Propose.candidates\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.9\"}}}}},\"uses\":[\"List\",\"Nat\",\"Prod\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableList\",\"LexLeanRuntime.length\",\"Reasoning.Screening.Propose.candidates\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.extract\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Nat\",\"Option\",\"Prod\",\"instDecidableEqBool\",\"instOfNatNat\",\"ite\",\"Bool.true\",\"Nat.blt\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Prod.snd\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.19\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.9\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.24\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.26\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.28\"}}}]}}}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"instDecidableEqBool\",\"instOfNatNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Nat.blt\",\"Option.none\",\"Option.some\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.failure\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"Prod\",\"instDecidableEqBool\",\"ite\",\"Bool.and\",\"Bool.false\",\"Bool.not\",\"Bool.true\",\"Prod.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.44\",\"parameters\":[{\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.43\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.44\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.49\",\"parameters\":[{\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.not\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.48\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.49\",\"arguments\":[]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.69\",\"parameters\":[{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"discriminant\":\"_uniq.61\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.62\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.64\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.65\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.66\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.67\"}}}}]}}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.75\",\"parameters\":[{\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.50\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.69\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.72\",\"parameters\":[{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.45\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.69\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"discriminant\":\"_uniq.27\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.72\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.75\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]}}}]}}}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"PUnit\",\"Prod\",\"instDecidableEqBool\",\"Bool.false\",\"Bool.not\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"Prod.mk\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.fire\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Option\",\"Prod\",\"Reasoning.Screening.Propose.apply\",\"Reasoning.Screening.Screen.Step\",\"Reasoning.Screening.Screen.fire.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}}},\"parameters\":[{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.31\",\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Propose.apply\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.30\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.31\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Reasoning.Screening.Screen.Step\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"discriminant\":\"_uniq.24\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Reasoning.Screening.Screen.Step.Propose\",\"parameters\":[{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.32\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.38\"}}}]}}}},\"uses\":[\"Nat\",\"Option\",\"Prod\",\"Reasoning.Screening.Propose.apply\",\"Reasoning.Screening.Screen.Step\",\"Reasoning.Screening.Screen.Step.Propose\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.observe\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"OfNat.ofNat\",\"Prod.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.8\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.6\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.10\"}}}}}},\"uses\":[\"Nat\",\"OfNat\",\"Prod\",\"instOfNatNat\",\"Prod.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.run\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"LexLeanCollections.iterateUntil\",\"OfNat.ofNat\",\"Reasoning.Screening.Screen.Search\",\"Reasoning.Screening.Screen.searchStep\",\"Reasoning.Screening.Screen.start\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.11\",\"parameters\":[{\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.10\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.searchStep\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.10\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"8\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.13\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.start\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.16\"}}}}}}}},\"uses\":[\"Bool\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"instOfNatNat\",\"LexLeanCollections.iterateUntil\",\"Reasoning.Screening.Screen.Search\",\"Reasoning.Screening.Screen.searchStep\",\"Reasoning.Screening.Screen.start\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.searchStep\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"List\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"ite\",\"Bool.or\",\"Bool.true\",\"HAdd.hAdd\",\"LexLeanCollections.listFold\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"LexLeanRuntime.instLengthableList\",\"LexLeanRuntime.length\",\"List.cons\",\"List.nil\",\"Nat.blt\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"Reasoning.Screening.Screen.Node\",\"Reasoning.Screening.Screen.Search\",\"Reasoning.Screening.Screen.accept\",\"Reasoning.Screening.Screen.attempts\",\"Reasoning.Screening.Screen.successors\",\"Reasoning.Screening.Dose.try.match_3\",\"Reasoning.Screening.Screen.Ledger.attempts\",\"Reasoning.Screening.Screen.Ledger.expansions\",\"Reasoning.Screening.Screen.Ledger.firings\",\"Reasoning.Screening.Screen.Ledger.frontier\",\"Reasoning.Screening.Screen.Ledger.iterations\",\"Reasoning.Screening.Screen.Ledger.mk\",\"Reasoning.Screening.Screen.Ledger.verifications\",\"Reasoning.Screening.Screen.Node.state\",\"Reasoning.Screening.Screen.Search.found\",\"Reasoning.Screening.Screen.Search.frontier\",\"Reasoning.Screening.Screen.Search.ledger\",\"Reasoning.Screening.Screen.Search.mk\",\"Reasoning.Screening.Screen.Search.truncated\",\"Reasoning.Screening.Screen.searchStep.match_1\",\"Reasoning.Screening.Screen.searchStep.match_3\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.92\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.93\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.101\",\"parameters\":[{\"id\":\"_uniq.99\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.100\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.101\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.320\",\"parameters\":[{\"id\":\"_uniq.109\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.115\",\"parameters\":[{\"id\":\"_uniq.113\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.114\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.115\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.303\",\"parameters\":[{\"id\":\"_uniq.126\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.127\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.161\",\"parameters\":[{\"id\":\"_uniq.133\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.133\"},{\"kind\":\"fvar\",\"id\":\"_uniq.126\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.135\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.134\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Search\",\"index\":2,\"value\":\"_uniq.93\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.137\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.138\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.137\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.139\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.138\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.140\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Ledger\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Search\",\"index\":3,\"value\":\"_uniq.93\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.147\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Ledger\",\"index\":0,\"value\":\"_uniq.140\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.148\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.149\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.148\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.150\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.149\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.151\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.139\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.147\"},{\"kind\":\"fvar\",\"id\":\"_uniq.150\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.152\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Ledger\",\"index\":1,\"value\":\"_uniq.140\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.153\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Ledger\",\"index\":2,\"value\":\"_uniq.140\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.154\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Ledger\",\"index\":3,\"value\":\"_uniq.140\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.155\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Ledger\",\"index\":4,\"value\":\"_uniq.140\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.156\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.139\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.155\"},{\"kind\":\"fvar\",\"id\":\"_uniq.150\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.157\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Ledger\",\"index\":5,\"value\":\"_uniq.140\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.158\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Ledger\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Ledger.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.151\"},{\"kind\":\"fvar\",\"id\":\"_uniq.152\"},{\"kind\":\"fvar\",\"id\":\"_uniq.153\"},{\"kind\":\"fvar\",\"id\":\"_uniq.154\"},{\"kind\":\"fvar\",\"id\":\"_uniq.156\"},{\"kind\":\"fvar\",\"id\":\"_uniq.157\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.159\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.127\"},{\"kind\":\"fvar\",\"id\":\"_uniq.135\"},{\"kind\":\"fvar\",\"id\":\"_uniq.136\"},{\"kind\":\"fvar\",\"id\":\"_uniq.158\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.160\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.159\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.160\"}}}}}}}}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.162\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.161\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.287\",\"parameters\":[{\"id\":\"_uniq.168\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.173\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.successors\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.126\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.174\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.173\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.175\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.174\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.176\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.177\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.176\"},{\"kind\":\"fvar\",\"id\":\"_uniq.175\"},{\"kind\":\"fvar\",\"id\":\"_uniq.127\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.178\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.177\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.205\",\"parameters\":[{\"id\":\"_uniq.181\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.182\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.191\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.192\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.191\"},{\"kind\":\"fvar\",\"id\":\"_uniq.181\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.193\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.194\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.193\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.195\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.194\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.196\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.192\"},{\"kind\":\"fvar\",\"id\":\"_uniq.195\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.197\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.198\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.196\"},{\"kind\":\"fvar\",\"id\":\"_uniq.197\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"discriminant\":\"_uniq.198\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.199\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.181\"}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.200\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.201\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.202\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.182\"},{\"kind\":\"fvar\",\"id\":\"_uniq.201\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.203\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.176\"},{\"kind\":\"fvar\",\"id\":\"_uniq.181\"},{\"kind\":\"fvar\",\"id\":\"_uniq.202\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.203\"}}}}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.206\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.207\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.205\"},{\"kind\":\"fvar\",\"id\":\"_uniq.206\"},{\"kind\":\"fvar\",\"id\":\"_uniq.178\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.208\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.207\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.209\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.217\",\"parameters\":[{\"id\":\"_uniq.215\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.216\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.216\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.218\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.217\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.227\",\"parameters\":[{\"id\":\"_uniq.220\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.221\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.222\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.221\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.223\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.222\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.224\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.225\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.224\"},{\"kind\":\"fvar\",\"id\":\"_uniq.178\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.226\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.223\"},{\"kind\":\"fvar\",\"id\":\"_uniq.225\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.226\"}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.228\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.227\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.233\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Search\",\"index\":2,\"value\":\"_uniq.93\"},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.280\",\"parameters\":[{\"id\":\"_uniq.238\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.239\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.240\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.239\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.241\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.240\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.242\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Ledger\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Search\",\"index\":3,\"value\":\"_uniq.93\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.243\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Ledger\",\"index\":0,\"value\":\"_uniq.242\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.244\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.245\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.244\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.246\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.245\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.247\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.241\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.243\"},{\"kind\":\"fvar\",\"id\":\"_uniq.246\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.248\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Ledger\",\"index\":1,\"value\":\"_uniq.242\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.249\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Node\",\"index\":0,\"value\":\"_uniq.126\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.250\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.attempts\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.249\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.251\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.241\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.248\"},{\"kind\":\"fvar\",\"id\":\"_uniq.250\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.252\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Ledger\",\"index\":2,\"value\":\"_uniq.242\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.253\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.254\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.253\"},{\"kind\":\"fvar\",\"id\":\"_uniq.174\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.255\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.241\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.252\"},{\"kind\":\"fvar\",\"id\":\"_uniq.254\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.256\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Ledger\",\"index\":3,\"value\":\"_uniq.242\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.257\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.241\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.256\"},{\"kind\":\"fvar\",\"id\":\"_uniq.246\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.258\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Ledger\",\"index\":4,\"value\":\"_uniq.242\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.259\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.241\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.258\"},{\"kind\":\"fvar\",\"id\":\"_uniq.246\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.268\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Ledger\",\"index\":5,\"value\":\"_uniq.242\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.269\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.253\"},{\"kind\":\"fvar\",\"id\":\"_uniq.208\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.270\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.268\"},{\"kind\":\"fvar\",\"id\":\"_uniq.269\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.271\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.272\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.270\"},{\"kind\":\"fvar\",\"id\":\"_uniq.271\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.279\",\"parameters\":[{\"id\":\"_uniq.275\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.276\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Ledger\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Ledger.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.247\"},{\"kind\":\"fvar\",\"id\":\"_uniq.251\"},{\"kind\":\"fvar\",\"id\":\"_uniq.255\"},{\"kind\":\"fvar\",\"id\":\"_uniq.257\"},{\"kind\":\"fvar\",\"id\":\"_uniq.259\"},{\"kind\":\"fvar\",\"id\":\"_uniq.275\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.277\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.208\"},{\"kind\":\"fvar\",\"id\":\"_uniq.209\"},{\"kind\":\"fvar\",\"id\":\"_uniq.238\"},{\"kind\":\"fvar\",\"id\":\"_uniq.276\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.278\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.277\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.278\"}}}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]},\"discriminant\":\"_uniq.272\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.273\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.279\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.268\"}]}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.274\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"jump\",\"target\":\"_uniq.279\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.269\"}]}}]}}}}}}}}}}}}}}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.286\",\"parameters\":[{\"id\":\"_uniq.284\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.285\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.218\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.284\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.280\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.285\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.283\",\"parameters\":[{\"id\":\"_uniq.281\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.282\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.228\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.281\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.280\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.282\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]},\"discriminant\":\"_uniq.233\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.234\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.283\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.234\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.236\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.286\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.236\"}]}}}]}}}}}}}}}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.288\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.287\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.296\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Node\",\"index\":0,\"value\":\"_uniq.126\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.297\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.accept\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"},{\"kind\":\"fvar\",\"id\":\"_uniq.296\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]},\"discriminant\":\"_uniq.297\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.298\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.299\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.288\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.298\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.299\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.300\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.301\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.162\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.300\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.301\"}}}]}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.304\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.303\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.313\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Search\",\"index\":0,\"value\":\"_uniq.93\"},\"body\":{\"kind\":\"cases\",\"type_name\":\"List\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]},\"discriminant\":\"_uniq.313\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"List.nil\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.314\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.315\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.116\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.314\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.315\"}}}},{\"kind\":\"constructor\",\"constructor\":\"List.cons\",\"parameters\":[{\"id\":\"_uniq.316\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.317\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.318\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.304\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.316\"},{\"kind\":\"fvar\",\"id\":\"_uniq.317\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.318\"}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.321\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.320\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.329\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Search\",\"index\":1,\"value\":\"_uniq.93\"},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]},\"discriminant\":\"_uniq.329\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.330\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.331\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.321\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.330\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.331\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.332\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.333\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.102\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.332\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.333\"}}}]}}}}}}},\"uses\":[\"Add\",\"Bool\",\"Decidable\",\"HAdd\",\"List\",\"Nat\",\"OfNat\",\"Option\",\"PUnit\",\"Prod\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanCollections.listFold\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"LexLeanRuntime.instLengthableList\",\"LexLeanRuntime.length\",\"List.cons\",\"List.nil\",\"Nat.blt\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"Unit.unit\",\"Reasoning.Screening.Screen.Ledger\",\"Reasoning.Screening.Screen.Node\",\"Reasoning.Screening.Screen.Search\",\"Reasoning.Screening.Screen.accept\",\"Reasoning.Screening.Screen.attempts\",\"Reasoning.Screening.Screen.successors\",\"Reasoning.Screening.Screen.Ledger.mk\",\"Reasoning.Screening.Screen.Search.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.start\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Eq\",\"List\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"instOfNatNat\",\"ite\",\"Bool.true\",\"LexLeanCollections.listFold\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"LexLeanRuntime.instLengthableList\",\"LexLeanRuntime.length\",\"List.cons\",\"List.nil\",\"Nat.blt\",\"OfNat.ofNat\",\"Option.none\",\"Reasoning.Screening.Screen.Node\",\"Reasoning.Screening.Screen.Step\",\"Reasoning.Screening.Screen.observe\",\"Reasoning.Screening.Screen.Ledger.mk\",\"Reasoning.Screening.Screen.Node.mk\",\"Reasoning.Screening.Screen.Search.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.42\",\"parameters\":[{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"discriminant\":\"_uniq.34\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.17\"}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.40\"}}}}}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.observe\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.44\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.48\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"3\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.52\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.55\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.59\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Ledger\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Ledger.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Search.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.64\"}}}}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Bool\",\"Decidable\",\"List\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"instDecidableEqBool\",\"instOfNatNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanCollections.listFold\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"LexLeanRuntime.instLengthableList\",\"LexLeanRuntime.length\",\"List.cons\",\"List.nil\",\"Nat.blt\",\"Option.none\",\"Reasoning.Screening.Screen.Ledger\",\"Reasoning.Screening.Screen.Node\",\"Reasoning.Screening.Screen.Search\",\"Reasoning.Screening.Screen.Step\",\"Reasoning.Screening.Screen.observe\",\"Reasoning.Screening.Screen.Ledger.mk\",\"Reasoning.Screening.Screen.Node.mk\",\"Reasoning.Screening.Screen.Search.mk\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.successors\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Screening.Screen.Node\",\"Reasoning.Screening.Screen.Propose.successors\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.6\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.7\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Propose.successors\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.6\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.7\"}}},\"uses\":[\"List\",\"Reasoning.Screening.Screen.Node\",\"Reasoning.Screening.Screen.Propose.successors\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.verdict\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"List\",\"Nat\",\"Prod\",\"Except.error\",\"Except.ok\",\"Prod.fst\",\"Reasoning.Screening.Screen\",\"Reasoning.Screening.Screen.Step\",\"Reasoning.Screening.Screen.verdict.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.34\",\"parameters\":[{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.31\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.ok\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.33\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.34\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.41\",\"parameters\":[{\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Except.error\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.40\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.41\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Except\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.53\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Except.error\",\"parameters\":[{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.42\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.55\"}}},{\"kind\":\"constructor\",\"constructor\":\"Except.ok\",\"parameters\":[{\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Except\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.35\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}}]}}}}}}},\"uses\":[\"Bool\",\"Except\",\"List\",\"Nat\",\"Prod\",\"Except.error\",\"Except.ok\",\"Reasoning.Screening.Screen\",\"Reasoning.Screening.Screen.Step\"]},\"inductive\":null},{\"name\":\"Reasoning.Budget.Spend.Step.Burn\",\"kind\":\"constructor\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Budget.Spend.Step.Tick\",\"kind\":\"constructor\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Budget.Spend.Step.casesOn\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Reasoning.Budget.Spend.Step\",\"Reasoning.Budget.Spend.Step.Burn\",\"Reasoning.Budget.Spend.Step.Tick\",\"Reasoning.Budget.Spend.Step.rec\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Budget.Spend.Step.rec\",\"kind\":\"recursor\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"recursor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Budget.Spend.accept.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Budget.Spend.account.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Unit\",\"Bool.casesOn\",\"Bool.false\",\"Bool.true\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Budget.Spend.conclude.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Budget.Spend.fire.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Unit\",\"Unit.unit\",\"Reasoning.Budget.Spend.Step\",\"Reasoning.Budget.Spend.Step.Burn\",\"Reasoning.Budget.Spend.Step.Tick\",\"Reasoning.Budget.Spend.Step.casesOn\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Budget.Spend.next.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Budget.Spend.Step\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Budget.Spend.select.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Budget\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Budget.Spend.Step\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.Ledger.attempts\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Triage.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.Ledger.expansions\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Triage.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.Ledger.firings\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Triage.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.Ledger.frontier\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Triage.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.Ledger.iterations\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Triage.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.Ledger.mk\",\"kind\":\"constructor\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.Ledger.verifications\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Triage.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.Run.ledger\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Triage.Run\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.Run.mk\",\"kind\":\"constructor\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.Run.state\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Triage.Run\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.Run.trace\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Triage.Run\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.Step.Escalate\",\"kind\":\"constructor\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.Step.Fever\",\"kind\":\"constructor\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.Step.Leukocytosis\",\"kind\":\"constructor\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.Step.Sepsis\",\"kind\":\"constructor\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.Step.Shock\",\"kind\":\"constructor\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.Step.Sirs\",\"kind\":\"constructor\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.Step.Tachycardia\",\"kind\":\"constructor\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.Step.Tachypnea\",\"kind\":\"constructor\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.Step.casesOn\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Clinic.Triage.Step\",\"Reasoning.Clinic.Triage.Step.Escalate\",\"Reasoning.Clinic.Triage.Step.Fever\",\"Reasoning.Clinic.Triage.Step.Leukocytosis\",\"Reasoning.Clinic.Triage.Step.Sepsis\",\"Reasoning.Clinic.Triage.Step.Shock\",\"Reasoning.Clinic.Triage.Step.Sirs\",\"Reasoning.Clinic.Triage.Step.Tachycardia\",\"Reasoning.Clinic.Triage.Step.Tachypnea\",\"Reasoning.Clinic.Triage.Step.rec\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.Step.rec\",\"kind\":\"recursor\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"recursor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.accept.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.account.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Unit\",\"Bool.casesOn\",\"Bool.false\",\"Bool.true\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.conclude.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.fire.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Unit\",\"Unit.unit\",\"Reasoning.Clinic.Triage.Step\",\"Reasoning.Clinic.Triage.Step.Escalate\",\"Reasoning.Clinic.Triage.Step.Fever\",\"Reasoning.Clinic.Triage.Step.Leukocytosis\",\"Reasoning.Clinic.Triage.Step.Sepsis\",\"Reasoning.Clinic.Triage.Step.Shock\",\"Reasoning.Clinic.Triage.Step.Sirs\",\"Reasoning.Clinic.Triage.Step.Tachycardia\",\"Reasoning.Clinic.Triage.Step.Tachypnea\",\"Reasoning.Clinic.Triage.Step.casesOn\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.next.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Clinic.Triage.Step\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.replay.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Clinic.Chart\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Clinic.Triage.select.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Clinic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Clinic.Triage.Step\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.Step.Escalate\",\"kind\":\"constructor\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.Step.Fever\",\"kind\":\"constructor\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.Step.Leukocytosis\",\"kind\":\"constructor\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.Step.Sepsis\",\"kind\":\"constructor\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.Step.Shock\",\"kind\":\"constructor\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.Step.Sirs\",\"kind\":\"constructor\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.Step.Tachycardia\",\"kind\":\"constructor\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.Step.Tachypnea\",\"kind\":\"constructor\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.Step.casesOn\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Main.Grade.Step\",\"Reasoning.Main.Grade.Step.Escalate\",\"Reasoning.Main.Grade.Step.Fever\",\"Reasoning.Main.Grade.Step.Leukocytosis\",\"Reasoning.Main.Grade.Step.Sepsis\",\"Reasoning.Main.Grade.Step.Shock\",\"Reasoning.Main.Grade.Step.Sirs\",\"Reasoning.Main.Grade.Step.Tachycardia\",\"Reasoning.Main.Grade.Step.Tachypnea\",\"Reasoning.Main.Grade.Step.rec\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.Step.rec\",\"kind\":\"recursor\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"recursor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.account.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Unit\",\"Bool.casesOn\",\"Bool.false\",\"Bool.true\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.conclude.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.fire.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Unit\",\"Unit.unit\",\"Reasoning.Main.Grade.Step\",\"Reasoning.Main.Grade.Step.Escalate\",\"Reasoning.Main.Grade.Step.Fever\",\"Reasoning.Main.Grade.Step.Leukocytosis\",\"Reasoning.Main.Grade.Step.Sepsis\",\"Reasoning.Main.Grade.Step.Shock\",\"Reasoning.Main.Grade.Step.Sirs\",\"Reasoning.Main.Grade.Step.Tachycardia\",\"Reasoning.Main.Grade.Step.Tachypnea\",\"Reasoning.Main.Grade.Step.casesOn\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.next.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Main.Grade.Step\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Main.Grade.select.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Main\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Main.Grade.Step\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.EmptyB.successors\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"List.cons\",\"List.nil\",\"Reasoning.Planner.Plan.Node\",\"Reasoning.Planner.Plan.Step\",\"Reasoning.Planner.Plan.fire\",\"Reasoning.Planner.Plan.Node.mk\",\"Reasoning.Planner.Plan.Node.state\",\"Reasoning.Planner.Plan.Node.trace\",\"Reasoning.Planner.Plan.Step.EmptyB\",\"Reasoning.Planner.Plan.replay.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.32\",\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.32\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.47\",\"parameters\":[{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Node\",\"index\":1,\"value\":\"_uniq.24\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step.EmptyB\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.40\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.46\"}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.47\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Node\",\"index\":0,\"value\":\"_uniq.24\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step.EmptyB\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.fire\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"discriminant\":\"_uniq.58\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.33\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.60\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.48\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.62\"}}}]}}}}}}}}},\"uses\":[\"List\",\"Nat\",\"Option\",\"PUnit\",\"Prod\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"List.cons\",\"List.nil\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Planner.Plan.Node\",\"Reasoning.Planner.Plan.Step\",\"Reasoning.Planner.Plan.fire\",\"Reasoning.Planner.Plan.Node.mk\",\"Reasoning.Planner.Plan.Step.EmptyB\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.FillA.successors\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"List.cons\",\"List.nil\",\"Reasoning.Planner.Plan.Node\",\"Reasoning.Planner.Plan.Step\",\"Reasoning.Planner.Plan.fire\",\"Reasoning.Planner.Plan.Node.mk\",\"Reasoning.Planner.Plan.Node.state\",\"Reasoning.Planner.Plan.Node.trace\",\"Reasoning.Planner.Plan.Step.FillA\",\"Reasoning.Planner.Plan.replay.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.32\",\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.32\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.47\",\"parameters\":[{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Node\",\"index\":1,\"value\":\"_uniq.24\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step.FillA\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.40\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.46\"}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.47\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Node\",\"index\":0,\"value\":\"_uniq.24\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step.FillA\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.fire\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"discriminant\":\"_uniq.58\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.33\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.60\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.48\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.62\"}}}]}}}}}}}}},\"uses\":[\"List\",\"Nat\",\"Option\",\"PUnit\",\"Prod\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"List.cons\",\"List.nil\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Planner.Plan.Node\",\"Reasoning.Planner.Plan.Step\",\"Reasoning.Planner.Plan.fire\",\"Reasoning.Planner.Plan.Node.mk\",\"Reasoning.Planner.Plan.Step.FillA\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Ledger.attempts\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Planner.Plan.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Ledger.expansions\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Planner.Plan.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Ledger.firings\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Planner.Plan.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Ledger.frontier\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Planner.Plan.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Ledger.iterations\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Planner.Plan.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Ledger.mk\",\"kind\":\"constructor\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Ledger.verifications\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Planner.Plan.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Node.mk\",\"kind\":\"constructor\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Node.state\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Planner.Plan.Node\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Node.trace\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Planner.Plan.Node\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Pour.collect\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"List.cons\",\"List.nil\",\"Reasoning.Planner.Plan.Node\",\"Reasoning.Planner.Plan.Step\",\"Reasoning.Planner.Plan.fire\",\"Reasoning.Planner.Plan.Node.mk\",\"Reasoning.Planner.Plan.Node.state\",\"Reasoning.Planner.Plan.Node.trace\",\"Reasoning.Planner.Plan.Step.Pour\",\"Reasoning.Planner.Plan.replay.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}}}},\"parameters\":[{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.43\",\"parameters\":[{\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.35\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.43\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.61\",\"parameters\":[{\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Node\",\"index\":1,\"value\":\"_uniq.34\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step.Pour\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.48\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.60\"}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.61\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Node\",\"index\":0,\"value\":\"_uniq.34\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Step.Pour\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.fire\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.70\"},{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"discriminant\":\"_uniq.72\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.44\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.74\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.62\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.76\"}}}]}}}}}}}}},\"uses\":[\"List\",\"Nat\",\"Option\",\"PUnit\",\"Prod\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"List.cons\",\"List.nil\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Planner.Plan.Node\",\"Reasoning.Planner.Plan.Step\",\"Reasoning.Planner.Plan.fire\",\"Reasoning.Planner.Plan.Node.mk\",\"Reasoning.Planner.Plan.Step.Pour\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Pour.successors\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"LexLeanCollections.listFold\",\"List.nil\",\"Reasoning.Planner.Plan.Node\",\"Reasoning.Planner.Pour.candidates\",\"Reasoning.Planner.Plan.Node.state\",\"Reasoning.Planner.Plan.Pour.collect\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.14\",\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Pour.collect\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.13\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Planner.Plan.Node\",\"index\":0,\"value\":\"_uniq.8\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Pour.candidates\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Planner.Plan.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.18\"}}}}}}},\"uses\":[\"List\",\"Nat\",\"Prod\",\"LexLeanCollections.listFold\",\"List.nil\",\"Reasoning.Planner.Plan.Node\",\"Reasoning.Planner.Pour.candidates\",\"Reasoning.Planner.Plan.Pour.collect\"]},\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Search.found\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Planner.Plan.Search\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Search.frontier\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Planner.Plan.Search\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Search.ledger\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Planner.Plan.Search\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Search.mk\",\"kind\":\"constructor\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Search.truncated\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Planner.Plan.Search\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Search.visited\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Planner.Plan.Search\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Step.EmptyB\",\"kind\":\"constructor\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Step.FillA\",\"kind\":\"constructor\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Step.Pour\",\"kind\":\"constructor\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Step.casesOn\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Reasoning.Planner.Plan.Step\",\"Reasoning.Planner.Plan.Step.EmptyB\",\"Reasoning.Planner.Plan.Step.FillA\",\"Reasoning.Planner.Plan.Step.Pour\",\"Reasoning.Planner.Plan.Step.rec\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.Step.rec\",\"kind\":\"recursor\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"recursor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.fire.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Unit\",\"Unit.unit\",\"Reasoning.Planner.Plan.Step\",\"Reasoning.Planner.Plan.Step.EmptyB\",\"Reasoning.Planner.Plan.Step.FillA\",\"Reasoning.Planner.Plan.Step.Pour\",\"Reasoning.Planner.Plan.Step.casesOn\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.replay.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Option\",\"Prod\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.searchStep.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Option\",\"Prod\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.searchStep.match_3\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Unit\",\"List.casesOn\",\"List.cons\",\"List.nil\",\"Unit.unit\",\"Reasoning.Planner.Plan.Node\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.searchStep.match_5\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Option\",\"Prod\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Planner.Plan.Node\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Planner.Plan.verdict.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Planner\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"List\",\"Nat\",\"Prod\",\"Except.casesOn\",\"Except.error\",\"Except.ok\",\"Reasoning.Planner.Plan.Step\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Dose.Ledger.attempts\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Screening.Dose.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Dose.Ledger.expansions\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Screening.Dose.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Dose.Ledger.firings\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Screening.Dose.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Dose.Ledger.frontier\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Screening.Dose.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Dose.Ledger.iterations\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Screening.Dose.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Dose.Ledger.mk\",\"kind\":\"constructor\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Dose.Ledger.verifications\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Screening.Dose.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Dose.Trial.found\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Screening.Dose.Trial\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Dose.Trial.ledger\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Screening.Dose.Trial\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Dose.Trial.mk\",\"kind\":\"constructor\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Dose.Trial.truncated\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Screening.Dose.Trial\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Dose.try.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Unit\",\"Bool.casesOn\",\"Bool.false\",\"Bool.true\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Dose.try.match_3\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Propose.candidates.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"List\",\"Nat\",\"Prod\",\"Except.casesOn\",\"Except.error\",\"Except.ok\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.Ledger.attempts\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Screening.Screen.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.Ledger.expansions\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Screening.Screen.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.Ledger.firings\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Screening.Screen.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.Ledger.frontier\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Screening.Screen.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.Ledger.iterations\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Screening.Screen.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.Ledger.mk\",\"kind\":\"constructor\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.Ledger.verifications\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Screening.Screen.Ledger\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.Node.mk\",\"kind\":\"constructor\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.Node.state\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Screening.Screen.Node\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.Node.trace\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Screening.Screen.Node\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.Propose.collect\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"List.cons\",\"List.nil\",\"Reasoning.Screening.Screen.Node\",\"Reasoning.Screening.Screen.Step\",\"Reasoning.Screening.Screen.fire\",\"Reasoning.Screening.Screen.Node.mk\",\"Reasoning.Screening.Screen.Node.state\",\"Reasoning.Screening.Screen.Node.trace\",\"Reasoning.Screening.Screen.Step.Propose\",\"Reasoning.Screening.Screen.replay.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}}}},\"parameters\":[{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.43\",\"parameters\":[{\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.35\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.43\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.61\",\"parameters\":[{\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableList\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Node\",\"index\":1,\"value\":\"_uniq.34\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step.Propose\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"},{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.48\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.60\"}}}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.61\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Node\",\"index\":0,\"value\":\"_uniq.34\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Step.Propose\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.fire\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.70\"},{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"discriminant\":\"_uniq.72\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.44\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.74\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.75\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.62\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.76\"}}}]}}}}}}}}},\"uses\":[\"List\",\"Nat\",\"Option\",\"PUnit\",\"Prod\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableList\",\"List.cons\",\"List.nil\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Screening.Screen.Node\",\"Reasoning.Screening.Screen.Step\",\"Reasoning.Screening.Screen.fire\",\"Reasoning.Screening.Screen.Node.mk\",\"Reasoning.Screening.Screen.Step.Propose\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.Propose.successors\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Nat\",\"LexLeanCollections.listFold\",\"List.nil\",\"Reasoning.Screening.Propose.candidates\",\"Reasoning.Screening.Screen.Node\",\"Reasoning.Screening.Screen.Node.state\",\"Reasoning.Screening.Screen.Propose.collect\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.14\",\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Propose.collect\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.8\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.13\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Reasoning.Screening.Screen.Node\",\"index\":0,\"value\":\"_uniq.8\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Propose.candidates\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Reasoning.Screening.Screen.Node\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.18\"}}}}}}},\"uses\":[\"List\",\"Nat\",\"Prod\",\"LexLeanCollections.listFold\",\"List.nil\",\"Reasoning.Screening.Propose.candidates\",\"Reasoning.Screening.Screen.Node\",\"Reasoning.Screening.Screen.Propose.collect\"]},\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.Search.found\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Screening.Screen.Search\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.Search.frontier\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Screening.Screen.Search\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.Search.ledger\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Screening.Screen.Search\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.Search.mk\",\"kind\":\"constructor\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.Search.truncated\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Reasoning.Screening.Screen.Search\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.Step.Propose\",\"kind\":\"constructor\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.Step.casesOn\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Reasoning.Screening.Screen.Step\",\"Reasoning.Screening.Screen.Step.Propose\",\"Reasoning.Screening.Screen.Step.rec\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.Step.rec\",\"kind\":\"recursor\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"recursor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.accept.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.fire.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Reasoning.Screening.Screen.Step\",\"Reasoning.Screening.Screen.Step.Propose\",\"Reasoning.Screening.Screen.Step.casesOn\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.replay.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Option\",\"Prod\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.searchStep.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"Unit\",\"List.casesOn\",\"List.cons\",\"List.nil\",\"Unit.unit\",\"Reasoning.Screening.Screen.Node\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.searchStep.match_3\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"Option\",\"Prod\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"Reasoning.Screening.Screen.Node\"],\"declaration\":null,\"inductive\":null},{\"name\":\"Reasoning.Screening.Screen.verdict.match_1\",\"kind\":\"definition\",\"module\":\"Reasoning.Screening\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Except\",\"List\",\"Nat\",\"Prod\",\"Except.casesOn\",\"Except.error\",\"Except.ok\",\"Reasoning.Screening.Screen.Step\"],\"declaration\":null,\"inductive\":null}],\"externals\":[{\"name\":\"Add\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Bool\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Decidable\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Except\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"HAdd\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"HMul\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"HSub\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"List\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Mul\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Nat\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"OfNat\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Option\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Ord\",\"kind\":\"inductive\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Ordering\",\"kind\":\"inductive\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"PUnit\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Prod\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Sub\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"instAddNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instDecidableEqBool\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instHAdd\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instHMul\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instHSub\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instMulNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instOfNatNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instOrdNat\",\"kind\":\"definition\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instSubNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Bool.false\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Bool\"},{\"name\":\"Bool.not\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Bool.true\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Bool\"},{\"name\":\"Decidable.isFalse\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Decidable\"},{\"name\":\"Decidable.isTrue\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Decidable\"},{\"name\":\"Except.error\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Except\"},{\"name\":\"Except.ok\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Except\"},{\"name\":\"List.appendTR\",\"kind\":\"definition\",\"module\":\"Init.Data.List.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"List.cons\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"List\"},{\"name\":\"List.foldl\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"List.lengthTR\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"List.nil\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"List\"},{\"name\":\"Nat.beq\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.ble\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.blt\",\"kind\":\"definition\",\"module\":\"Init.Data.Nat.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.succ\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Nat\"},{\"name\":\"Nat.zero\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Nat\"},{\"name\":\"Option.none\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Option\"},{\"name\":\"Option.some\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Option\"},{\"name\":\"Ordering.eq\",\"kind\":\"constructor\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Ordering\"},{\"name\":\"Ordering.gt\",\"kind\":\"constructor\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Ordering\"},{\"name\":\"Ordering.lt\",\"kind\":\"constructor\",\"module\":\"Init.Data.Ord.Basic\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Ordering\"},{\"name\":\"Prod.mk\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Prod\"},{\"name\":\"Unit.unit\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true}]}\n","stdout_sha256":"d2c9b0ff12d25eb940a8ff94fdbfcd8794392d439e10d7eaa35eefbe43ed2b4b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R0.lean b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R0.lean new file mode 100644 index 000000000..7c5a7b962 --- /dev/null +++ b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R0.lean @@ -0,0 +1,391 @@ +import LexLeanPreservation.Core +import LexLeanPreservation.Values +import LexLeanPreservation.Primitives +import LexLeanPreservation.Fixed +import LexLeanPreservation.Keys +import LexLeanPreservation.Templates +import LexLeanPreservation.Validate +import Reasoning.Budget +import Reasoning.Clinic +import Reasoning.Main +import Reasoning.Planner +import Reasoning.Screening +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +set_option linter.unusedVariables false +namespace LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0 + +def __prog : _root_.LexLeanTarget.TargetSyntax.Program := + { adts := [{ constructors := [[.nat, .nat, .nat, .nat, .nat, .nat]] }, + { constructors := [[(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]] }, + { constructors := [[], [], [], [], [], [], [], []] }], functions := (( + { parameters := [0, 1, 2, 3, 4, 5], types := [.nat, .nat, .nat, .nat, .nat, .nat], result := .nat, + body := (.«match» .nat (.call 1 [(.build (.adt 0) (.adt 0) [(.var 0), (.var 1), (.var 2), (.var 3), (.var 4), (.var 5)])]) [(.arm .ok [6] (.var 6)), (.arm .error [7] (.value .nat (.nat 9)))]) }) ::( + { parameters := [0], types := [(.adt 0)], result := (.result .nat (.pair .bool .bool)), + body := (.«let» 1 (.pair (.adt 1) .bool) (.call 2 [(.var 0)]) (.«match» (.result .nat (.pair .bool .bool)) (.second (.var 1)) [(.arm .true [] (.call 3 [(.var 0), (.first (.var 1))])), (.arm .false [] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])]))])) }) ::( + { parameters := [0], types := [(.adt 0)], result := (.pair (.adt 1) .bool), + body := (.call 4 [(.closure 5 []), (.value .nat (.nat 11)), (.call 6 [(.var 0)])]) }) ::( + { parameters := [0, 1], types := [(.adt 0), (.adt 1)], result := (.result .nat (.pair .bool .bool)), + body := (.«match» (.result .nat (.pair .bool .bool)) (.call 7 [(.var 0), (.var 1)]) [(.arm .some [2] (.build .ok (.result .nat (.pair .bool .bool)) [(.var 2)])), (.arm .none [] (.«match» (.result .nat (.pair .bool .bool)) (.call 8 [(.var 1)]) [(.arm .some [3] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])])])), (.arm .none [] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])])]))]))]) }) ::( + { parameters := [0, 1, 2], types := [(.fn [(.adt 1)] (.option (.adt 1))), .nat, (.adt 1)], result := (.pair (.adt 1) .bool), + body := (.«match» (.pair (.adt 1) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.adt 1) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.adt 1) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.adt 1) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 4 [(.var 0), (.var 3), (.var 4)]))]))]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.«match» (.option (.adt 1)) (.call 9 [(.var 0)]) [(.arm .none [] (.build .none (.option (.adt 1)) [])), (.arm .some [1] (.call 10 [(.var 0), (.var 1)]))]) }) ::( + { parameters := [0], types := [(.adt 0)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.var 0), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0))]) }) ::( + { parameters := [0, 1], types := [(.adt 0), (.adt 1)], result := (.option .nat), + body := (.«match» (.option .nat) (.call 8 [(.var 1)]) [(.arm .none [] (.build .none (.option .nat) [])), (.arm .some [2] (.cond (.call 11 [(.var 0), (.var 2)]) (.build .some (.option .nat) [(.var 2)]) (.build .none (.option .nat) [])))]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option .nat), + body := (.build .some (.option .nat) [(.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 2)), + body := (.«match» (.option (.adt 2)) (.«match» (.option (.adt 2)) (.«match» (.option (.adt 2)) (.cond (.call 12 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 0) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [1] (.build .some (.option (.adt 2)) [(.var 1)])), (.arm .none [] (.cond (.call 13 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 1) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]) [(.arm .some [2] (.build .some (.option (.adt 2)) [(.var 2)])), (.arm .none [] (.«match» (.option (.adt 2)) (.cond (.call 14 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 2) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [3] (.build .some (.option (.adt 2)) [(.var 3)])), (.arm .none [] (.cond (.call 15 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 3) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]))]) [(.arm .some [4] (.build .some (.option (.adt 2)) [(.var 4)])), (.arm .none [] (.«match» (.option (.adt 2)) (.«match» (.option (.adt 2)) (.cond (.call 16 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 4) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [5] (.build .some (.option (.adt 2)) [(.var 5)])), (.arm .none [] (.cond (.call 17 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 5) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]) [(.arm .some [6] (.build .some (.option (.adt 2)) [(.var 6)])), (.arm .none [] (.«match» (.option (.adt 2)) (.cond (.call 18 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 6) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [7] (.build .some (.option (.adt 2)) [(.var 7)])), (.arm .none [] (.cond (.call 19 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 7) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]))]))]) }) ::( + { parameters := [0, 1], types := [(.adt 1), (.adt 2)], result := (.option (.adt 1)), + body := (.«match» (.option (.adt 1)) (.var 1) [(.arm (.adt 0) [] (.call 20 [(.var 0)])), (.arm (.adt 1) [] (.call 21 [(.var 0)])), (.arm (.adt 2) [] (.call 22 [(.var 0)])), (.arm (.adt 3) [] (.call 23 [(.var 0)])), (.arm (.adt 4) [] (.call 24 [(.var 0)])), (.arm (.adt 5) [] (.call 25 [(.var 0)])), (.arm (.adt 6) [] (.call 26 [(.var 0)])), (.arm (.adt 7) [] (.call 27 [(.var 0)]))]) }) ::( + { parameters := [0, 1], types := [(.adt 0), .nat], result := .bool, + body := (.cond (.prim .natLe [(.var 1), (.value .nat (.nat 3))]) (.cond (.prim .natEq [(.var 1), (.value .nat (.nat 3))]) (.build .true .bool []) (.prim .boolNot [(.cond (.call 28 [(.var 0)]) (.cond (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 1))]) (.cond (.call 29 [(.var 0)]) (.call 30 [(.var 0)]) (.build .false .bool [])) (.build .false .bool [])) (.build .false .bool []))])) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 1), (.value .nat (.nat 0))]) (.call 29 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 2), (.value .nat (.nat 0))]) (.call 30 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 3), (.value .nat (.nat 0))]) (.call 31 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 4), (.value .nat (.nat 0))]) (.call 32 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 0))]) (.prim .natLe [(.value .nat (.nat 2)), (.prim .natAdd [(.prim .natAdd [(.prim .natAdd [(.field (.var 0) 1), (.field (.var 0) 2)]), (.field (.var 0) 3)]), (.field (.var 0) 4)])]) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 0))]) (.cond (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 1))]) (.prim .natEq [(.field (.field (.var 0) 0) 5), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 7), (.value .nat (.nat 0))]) (.cond (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 1))]) (.call 28 [(.field (.var 0) 0)]) (.build .false .bool [])) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natLt [(.field (.var 0) 8), (.value .nat (.nat 3))]) (.cond (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 0))]) (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .true .bool []) (.cond (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 1))]) (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .true .bool []) (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 2))]) (.prim .natEq [(.field (.var 0) 7), (.value .nat (.nat 1))]) (.build .false .bool [])))) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 12 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 33 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 13 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 34 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 14 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 35 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 15 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 36 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 16 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 37 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 17 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 38 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 18 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 39 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 19 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 40 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.prim .natLt [(.field (.var 0) 4), (.value .nat (.nat 90))]) }) ::( + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.prim .natLt [(.value .nat (.nat 380)), (.field (.var 0) 0)]) }) ::( + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.prim .natLt [(.value .nat (.nat 90)), (.field (.var 0) 1)]) }) ::( + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.prim .natLt [(.value .nat (.nat 20)), (.field (.var 0) 2)]) }) ::( + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.prim .natLt [(.value .nat (.nat 12)), (.field (.var 0) 3)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.value .nat (.nat 1)), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.value .nat (.nat 1)), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.value .nat (.nat 1)), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.value .nat (.nat 1)), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.value .nat (.nat 1)), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.value .nat (.nat 1)), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.value .nat (.nat 1)), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.prim .natAdd [(.field (.var 0) 8), (.value .nat (.nat 1))])]) }) ::[]) } + +def __enc_0 (__s : (Reasoning.Clinic.Vitals)) : _root_.LexLeanTarget.TargetSyntax.Value := + _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).temperature), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).heartRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).respiratoryRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).whiteCells), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).systolic), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).infection)] + +def __enc_1 (__s : (Reasoning.Clinic.Chart)) : _root_.LexLeanTarget.TargetSyntax.Value := + _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [(__enc_0 (__s).vitals), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).fever), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).tachycardia), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).tachypnea), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).leukocytosis), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).sirs), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).sepsis), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).shock), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).level)] + +def __enc_2 : (Reasoning.Clinic.Triage.Step) -> _root_.LexLeanTarget.TargetSyntax.Value + | Reasoning.Clinic.Triage.Step.Fever => _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [] + | Reasoning.Clinic.Triage.Step.Tachycardia => _root_.LexLeanTarget.TargetSyntax.Value.adt 1 [] + | Reasoning.Clinic.Triage.Step.Tachypnea => _root_.LexLeanTarget.TargetSyntax.Value.adt 2 [] + | Reasoning.Clinic.Triage.Step.Leukocytosis => _root_.LexLeanTarget.TargetSyntax.Value.adt 3 [] + | Reasoning.Clinic.Triage.Step.Sirs => _root_.LexLeanTarget.TargetSyntax.Value.adt 4 [] + | Reasoning.Clinic.Triage.Step.Sepsis => _root_.LexLeanTarget.TargetSyntax.Value.adt 5 [] + | Reasoning.Clinic.Triage.Step.Shock => _root_.LexLeanTarget.TargetSyntax.Value.adt 6 [] + | Reasoning.Clinic.Triage.Step.Escalate => _root_.LexLeanTarget.TargetSyntax.Value.adt 7 [] + +def __fits_29 (v : (Reasoning.Clinic.Vitals)) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_29 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 29 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_29 v) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.feverish v))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (380 : Nat) (v).temperature)) + +def __fits_12 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).fever (0 : Nat)) then ((Bool.true && Bool.true) && (__fits_29 ((s).vitals))) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.feverish in +theorem __rel_12 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 12 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_12 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Fever.guard s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && (__fits_29 ((s).vitals))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Reasoning.Clinic.feverish ((s).vitals)))) (Nat.beq (s).fever (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).fever (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_29 ((s).vitals)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) + +def __fits_30 (v : (Reasoning.Clinic.Vitals)) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_30 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 30 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_30 v) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.tachycardic v))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (90 : Nat) (v).heartRate)) + +def __fits_13 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).tachycardia (0 : Nat)) then ((Bool.true && Bool.true) && (__fits_30 ((s).vitals))) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.tachycardic in +theorem __rel_13 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 13 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_13 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Tachycardia.guard s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && (__fits_30 ((s).vitals))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Reasoning.Clinic.tachycardic ((s).vitals)))) (Nat.beq (s).tachycardia (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).tachycardia (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_30 ((s).vitals)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) + +def __fits_31 (v : (Reasoning.Clinic.Vitals)) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_31 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 31 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_31 v) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.tachypneic v))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (20 : Nat) (v).respiratoryRate)) + +def __fits_14 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).tachypnea (0 : Nat)) then ((Bool.true && Bool.true) && (__fits_31 ((s).vitals))) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.tachypneic in +theorem __rel_14 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 14 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_14 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Tachypnea.guard s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && (__fits_31 ((s).vitals))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Reasoning.Clinic.tachypneic ((s).vitals)))) (Nat.beq (s).tachypnea (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).tachypnea (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_31 ((s).vitals)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) + +def __fits_32 (v : (Reasoning.Clinic.Vitals)) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_32 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 32 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_32 v) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.leukocytic v))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (12 : Nat) (v).whiteCells)) + +def __fits_15 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).leukocytosis (0 : Nat)) then ((Bool.true && Bool.true) && (__fits_32 ((s).vitals))) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.leukocytic in +theorem __rel_15 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 15 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_15 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Leukocytosis.guard s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && (__fits_32 ((s).vitals))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Reasoning.Clinic.leukocytic ((s).vitals)))) (Nat.beq (s).leukocytosis (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).leukocytosis (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_32 ((s).vitals)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) + +def __fits_16 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sirs (0 : Nat)) then ((Bool.true && (((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((s).fever + (s).tachycardia) 18446744073709551616)) && (Bool.true && Bool.true)) && (Nat.blt (((s).fever + (s).tachycardia) + (s).tachypnea) 18446744073709551616)) && (Bool.true && Bool.true)) && (Nat.blt ((((s).fever + (s).tachycardia) + (s).tachypnea) + (s).leukocytosis) 18446744073709551616)) && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) + +theorem __rel_16 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 16 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_16 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Sirs.guard s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((s).fever + (s).tachycardia) 18446744073709551616)) && (Bool.true && Bool.true)) && (Nat.blt (((s).fever + (s).tachycardia) + (s).tachypnea) 18446744073709551616)) && (Bool.true && Bool.true)) && (Nat.blt ((((s).fever + (s).tachycardia) + (s).tachypnea) + (s).leukocytosis) 18446744073709551616)) && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.ble (2 : Nat) ((((s).fever + (s).tachycardia) + (s).tachypnea) + (s).leukocytosis)))) (Nat.beq (s).sirs (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sirs (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (s).fever (s).tachycardia)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((s).fever + (s).tachycardia) (s).tachypnea)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (((s).fever + (s).tachycardia) + (s).tachypnea) (s).leukocytosis)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe (2 : Nat) ((((s).fever + (s).tachycardia) + (s).tachypnea) + (s).leukocytosis)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) + +def __fits_17 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sepsis (0 : Nat)) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sirs (1 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) + +theorem __rel_17 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 17 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_17 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Sepsis.guard s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sirs (1 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && ((Nat.beq (s).sirs (1 : Nat)) && (Nat.beq ((s).vitals).infection (1 : Nat))))) (Nat.beq (s).sepsis (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sepsis (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.beq ((s).vitals).infection (1 : Nat)))) (Nat.beq (s).sirs (1 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sirs (1 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq ((s).vitals).infection (1 : Nat)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) + +def __fits_28 (v : (Reasoning.Clinic.Vitals)) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_28 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 28 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_28 v) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.hypotensive v))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (v).systolic (90 : Nat))) + +def __fits_18 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).shock (0 : Nat)) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sepsis (1 : Nat)) then ((Bool.true && Bool.true) && (__fits_28 ((s).vitals))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.hypotensive in +theorem __rel_18 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 18 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_18 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Shock.guard s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sepsis (1 : Nat)) then ((Bool.true && Bool.true) && (__fits_28 ((s).vitals))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && ((Nat.beq (s).sepsis (1 : Nat)) && (Reasoning.Clinic.hypotensive ((s).vitals))))) (Nat.beq (s).shock (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).shock (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && (__fits_28 ((s).vitals))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Reasoning.Clinic.hypotensive ((s).vitals)))) (Nat.beq (s).sepsis (1 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sepsis (1 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_28 ((s).vitals)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) + +def __fits_19 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.blt (s).level (3 : Nat)) then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (0 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if ((Nat.beq (s).level (0 : Nat)) && (Nat.beq (s).sirs (1 : Nat))) then (Bool.true && Bool.true) else ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (1 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if ((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (2 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))))))) else (Bool.true && Bool.true))) + +theorem __rel_19 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 19 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_19 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Escalate.guard s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (0 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if ((Nat.beq (s).level (0 : Nat)) && (Nat.beq (s).sirs (1 : Nat))) then (Bool.true && Bool.true) else ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (1 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if ((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (2 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))))))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (((Nat.beq (s).level (0 : Nat)) && (Nat.beq (s).sirs (1 : Nat))) || (((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) || ((Nat.beq (s).level (2 : Nat)) && (Nat.beq (s).shock (1 : Nat))))))) (Nat.blt (s).level (3 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (s).level (3 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (Bool.true && Bool.true) else ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (1 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if ((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (2 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b || (((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) || ((Nat.beq (s).level (2 : Nat)) && (Nat.beq (s).shock (1 : Nat)))))) ((Nat.beq (s).level (0 : Nat)) && (Nat.beq (s).sirs (1 : Nat))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.beq (s).sirs (1 : Nat)))) (Nat.beq (s).level (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).level (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sirs (1 : Nat)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (2 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b || ((Nat.beq (s).level (2 : Nat)) && (Nat.beq (s).shock (1 : Nat))))) ((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.beq (s).sepsis (1 : Nat)))) (Nat.beq (s).level (1 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).level (1 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sepsis (1 : Nat)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.beq (s).shock (1 : Nat)))) (Nat.beq (s).level (2 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).level (2 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).shock (1 : Nat)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))))))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) + +def __fits_9 (_ys : (Reasoning.Clinic.Chart)) : Bool := + ((((((Bool.true && Bool.true) && (__fits_12 (_ys))) && (if (Reasoning.Clinic.Fever.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Fever : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_13 (_ys))) && (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) && (match (match (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Fever : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachycardia : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((Bool.true && Bool.true) && (__fits_14 (_ys))) && (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachypnea : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_15 (_ys))) && (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))) && (match (match (match (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Fever : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachycardia : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (match (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachypnea : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Leukocytosis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((((Bool.true && Bool.true) && (__fits_16 (_ys))) && (if (Reasoning.Clinic.Sirs.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_17 (_ys))) && (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) && (match (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sepsis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((Bool.true && Bool.true) && (__fits_18 (_ys))) && (if (Reasoning.Clinic.Shock.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Shock : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_19 (_ys))) && (if (Reasoning.Clinic.Escalate.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))))) + +attribute [local irreducible] Reasoning.Clinic.Escalate.guard Reasoning.Clinic.Fever.guard Reasoning.Clinic.Leukocytosis.guard Reasoning.Clinic.Sepsis.guard Reasoning.Clinic.Shock.guard Reasoning.Clinic.Sirs.guard Reasoning.Clinic.Tachycardia.guard Reasoning.Clinic.Tachypnea.guard in +theorem __rel_9 (_ys : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 9 [(__enc_1 _ys)] (_root_.LexLeanPreservation.Rel (__fits_9 _ys) ((_root_.LexLeanPreservation.encOption __enc_2) (Reasoning.Clinic.Triage.select _ys))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((((Bool.true && Bool.true) && (__fits_16 (_ys))) && (if (Reasoning.Clinic.Sirs.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_17 (_ys))) && (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) && (match (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sepsis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((Bool.true && Bool.true) && (__fits_18 (_ys))) && (if (Reasoning.Clinic.Shock.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Shock : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_19 (_ys))) && (if (Reasoning.Clinic.Escalate.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_2) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (match (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sepsis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (match (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Shock : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Escalate.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Escalate : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))))))) (match (match (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Fever : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachycardia : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (match (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachypnea : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Leukocytosis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))))) (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((Bool.true && Bool.true) && (__fits_14 (_ys))) && (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachypnea : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_15 (_ys))) && (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_2) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (match (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachypnea : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Leukocytosis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))))) (match (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Fever : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachycardia : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_13 (_ys))) && (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_2) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachycardia : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))))) (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Fever : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Fever : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Fever.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_12 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Tachycardia : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Tachycardia.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_13 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_15 (_ys))) && (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_2) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Leukocytosis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))))) (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachypnea : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Tachypnea : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Tachypnea.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_14 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Leukocytosis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Leukocytosis.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_15 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((Bool.true && Bool.true) && (__fits_18 (_ys))) && (if (Reasoning.Clinic.Shock.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Shock : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_19 (_ys))) && (if (Reasoning.Clinic.Escalate.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_2) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (match (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Shock : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Escalate.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Escalate : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))))) (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sepsis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_17 (_ys))) && (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_2) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sepsis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))))) (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Sirs.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_16 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Sepsis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Sepsis.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_17 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_19 (_ys))) && (if (Reasoning.Clinic.Escalate.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_2) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Escalate.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Escalate : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))))) (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Shock : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Shock : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Shock.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_18 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Escalate : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Escalate.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_19 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))))))))))) + +def __fits_33 (s : (Reasoning.Clinic.Chart)) : Bool := + ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) + +theorem __rel_33 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 33 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_33 s) (__enc_1 (Reasoning.Clinic.Fever.conclusion s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) + +def __fits_20 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && Bool.true) && (__fits_12 (s))) && (if (Reasoning.Clinic.Fever.guard (s)) then ((((Bool.true && Bool.true) && (__fits_33 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.Fever.conclusion Reasoning.Clinic.Fever.guard in +theorem __rel_20 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 20 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_20 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Fever.apply s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_33 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Fever.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Fever.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_12 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_33 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_34 (s : (Reasoning.Clinic.Chart)) : Bool := + ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) + +theorem __rel_34 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 34 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_34 s) (__enc_1 (Reasoning.Clinic.Tachycardia.conclusion s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) + +def __fits_21 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && Bool.true) && (__fits_13 (s))) && (if (Reasoning.Clinic.Tachycardia.guard (s)) then ((((Bool.true && Bool.true) && (__fits_34 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.Tachycardia.conclusion Reasoning.Clinic.Tachycardia.guard in +theorem __rel_21 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 21 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_21 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Tachycardia.apply s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_34 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Tachycardia.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Tachycardia.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_13 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_34 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_35 (s : (Reasoning.Clinic.Chart)) : Bool := + ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) + +theorem __rel_35 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 35 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_35 s) (__enc_1 (Reasoning.Clinic.Tachypnea.conclusion s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) + +def __fits_22 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && Bool.true) && (__fits_14 (s))) && (if (Reasoning.Clinic.Tachypnea.guard (s)) then ((((Bool.true && Bool.true) && (__fits_35 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.Tachypnea.conclusion Reasoning.Clinic.Tachypnea.guard in +theorem __rel_22 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 22 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_22 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Tachypnea.apply s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_35 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Tachypnea.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Tachypnea.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_14 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_35 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_36 (s : (Reasoning.Clinic.Chart)) : Bool := + ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) + +theorem __rel_36 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 36 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_36 s) (__enc_1 (Reasoning.Clinic.Leukocytosis.conclusion s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) + +def __fits_23 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && Bool.true) && (__fits_15 (s))) && (if (Reasoning.Clinic.Leukocytosis.guard (s)) then ((((Bool.true && Bool.true) && (__fits_36 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.Leukocytosis.conclusion Reasoning.Clinic.Leukocytosis.guard in +theorem __rel_23 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 23 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_23 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Leukocytosis.apply s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_36 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Leukocytosis.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Leukocytosis.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_15 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_36 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_37 (s : (Reasoning.Clinic.Chart)) : Bool := + ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) + +theorem __rel_37 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 37 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_37 s) (__enc_1 (Reasoning.Clinic.Sirs.conclusion s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) + +def __fits_24 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && Bool.true) && (__fits_16 (s))) && (if (Reasoning.Clinic.Sirs.guard (s)) then ((((Bool.true && Bool.true) && (__fits_37 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.Sirs.conclusion Reasoning.Clinic.Sirs.guard in +theorem __rel_24 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 24 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_24 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Sirs.apply s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_37 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Sirs.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Sirs.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_16 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_37 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_38 (s : (Reasoning.Clinic.Chart)) : Bool := + ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) + +theorem __rel_38 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 38 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_38 s) (__enc_1 (Reasoning.Clinic.Sepsis.conclusion s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) + +def __fits_25 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && Bool.true) && (__fits_17 (s))) && (if (Reasoning.Clinic.Sepsis.guard (s)) then ((((Bool.true && Bool.true) && (__fits_38 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.Sepsis.conclusion Reasoning.Clinic.Sepsis.guard in +theorem __rel_25 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 25 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_25 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Sepsis.apply s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_38 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Sepsis.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Sepsis.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_17 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_38 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_39 (s : (Reasoning.Clinic.Chart)) : Bool := + ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) + +theorem __rel_39 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 39 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_39 s) (__enc_1 (Reasoning.Clinic.Shock.conclusion s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) + +def __fits_26 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && Bool.true) && (__fits_18 (s))) && (if (Reasoning.Clinic.Shock.guard (s)) then ((((Bool.true && Bool.true) && (__fits_39 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.Shock.conclusion Reasoning.Clinic.Shock.guard in +theorem __rel_26 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 26 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_26 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Shock.apply s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_39 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Shock.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Shock.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_18 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_39 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_40 (s : (Reasoning.Clinic.Chart)) : Bool := + ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((s).level + (1 : Nat)) 18446744073709551616)) && Bool.true))))))))) && Bool.true) + +theorem __rel_40 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 40 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_40 s) (__enc_1 (Reasoning.Clinic.Escalate.conclusion s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (s).level (1 : Nat))) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) + +def __fits_27 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && Bool.true) && (__fits_19 (s))) && (if (Reasoning.Clinic.Escalate.guard (s)) then ((((Bool.true && Bool.true) && (__fits_40 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.Escalate.conclusion Reasoning.Clinic.Escalate.guard in +theorem __rel_27 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 27 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_27 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Escalate.apply s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_40 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Escalate.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Escalate.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_19 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_40 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_10 (_ys : (Reasoning.Clinic.Chart)) (_ystep : (Reasoning.Clinic.Triage.Step)) : Bool := + (Bool.true && (match _ystep with | Reasoning.Clinic.Triage.Step.Fever => ((Bool.true && Bool.true) && (__fits_20 (_ys))) | Reasoning.Clinic.Triage.Step.Tachycardia => ((Bool.true && Bool.true) && (__fits_21 (_ys))) | Reasoning.Clinic.Triage.Step.Tachypnea => ((Bool.true && Bool.true) && (__fits_22 (_ys))) | Reasoning.Clinic.Triage.Step.Leukocytosis => ((Bool.true && Bool.true) && (__fits_23 (_ys))) | Reasoning.Clinic.Triage.Step.Sirs => ((Bool.true && Bool.true) && (__fits_24 (_ys))) | Reasoning.Clinic.Triage.Step.Sepsis => ((Bool.true && Bool.true) && (__fits_25 (_ys))) | Reasoning.Clinic.Triage.Step.Shock => ((Bool.true && Bool.true) && (__fits_26 (_ys))) | Reasoning.Clinic.Triage.Step.Escalate => ((Bool.true && Bool.true) && (__fits_27 (_ys))))) + +attribute [local irreducible] Reasoning.Clinic.Escalate.apply Reasoning.Clinic.Fever.apply Reasoning.Clinic.Leukocytosis.apply Reasoning.Clinic.Sepsis.apply Reasoning.Clinic.Shock.apply Reasoning.Clinic.Sirs.apply Reasoning.Clinic.Tachycardia.apply Reasoning.Clinic.Tachypnea.apply in +theorem __rel_10 (_ys : (Reasoning.Clinic.Chart)) (_ystep : (Reasoning.Clinic.Triage.Step)) : _root_.LexLeanPreservation.FunRel __prog 10 [(__enc_1 _ys), (__enc_2 _ystep)] (_root_.LexLeanPreservation.Rel (__fits_10 _ys _ystep) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Triage.fire _ys _ystep))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV __enc_2 (fun (__a : (Reasoning.Clinic.Triage.Step)) => (match __a with | Reasoning.Clinic.Triage.Step.Fever => ((Bool.true && Bool.true) && (__fits_20 (_ys))) | Reasoning.Clinic.Triage.Step.Tachycardia => ((Bool.true && Bool.true) && (__fits_21 (_ys))) | Reasoning.Clinic.Triage.Step.Tachypnea => ((Bool.true && Bool.true) && (__fits_22 (_ys))) | Reasoning.Clinic.Triage.Step.Leukocytosis => ((Bool.true && Bool.true) && (__fits_23 (_ys))) | Reasoning.Clinic.Triage.Step.Sirs => ((Bool.true && Bool.true) && (__fits_24 (_ys))) | Reasoning.Clinic.Triage.Step.Sepsis => ((Bool.true && Bool.true) && (__fits_25 (_ys))) | Reasoning.Clinic.Triage.Step.Shock => ((Bool.true && Bool.true) && (__fits_26 (_ys))) | Reasoning.Clinic.Triage.Step.Escalate => ((Bool.true && Bool.true) && (__fits_27 (_ys))))) (fun (__a : (Reasoning.Clinic.Triage.Step)) => (_root_.LexLeanPreservation.encOption __enc_1) (match __a with | Reasoning.Clinic.Triage.Step.Fever => (Reasoning.Clinic.Fever.apply (_ys)) | Reasoning.Clinic.Triage.Step.Tachycardia => (Reasoning.Clinic.Tachycardia.apply (_ys)) | Reasoning.Clinic.Triage.Step.Tachypnea => (Reasoning.Clinic.Tachypnea.apply (_ys)) | Reasoning.Clinic.Triage.Step.Leukocytosis => (Reasoning.Clinic.Leukocytosis.apply (_ys)) | Reasoning.Clinic.Triage.Step.Sirs => (Reasoning.Clinic.Sirs.apply (_ys)) | Reasoning.Clinic.Triage.Step.Sepsis => (Reasoning.Clinic.Sepsis.apply (_ys)) | Reasoning.Clinic.Triage.Step.Shock => (Reasoning.Clinic.Shock.apply (_ys)) | Reasoning.Clinic.Triage.Step.Escalate => (Reasoning.Clinic.Escalate.apply (_ys)))) _ystep (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (Reasoning.Clinic.Triage.Step)) _ => match __a with | Reasoning.Clinic.Triage.Step.Fever => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_20 (_ys)))) | Reasoning.Clinic.Triage.Step.Tachycardia => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_21 (_ys))))) | Reasoning.Clinic.Triage.Step.Tachypnea => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_22 (_ys)))))) | Reasoning.Clinic.Triage.Step.Leukocytosis => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_23 (_ys))))))) | Reasoning.Clinic.Triage.Step.Sirs => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_24 (_ys)))))))) | Reasoning.Clinic.Triage.Step.Sepsis => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_25 (_ys))))))))) | Reasoning.Clinic.Triage.Step.Shock => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_26 (_ys)))))))))) | Reasoning.Clinic.Triage.Step.Escalate => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_27 (_ys))))))))))))) + +def __fits_5 (_ys : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && Bool.true) && (__fits_9 (_ys))) && (match (Reasoning.Clinic.Triage.select (_ys)) with | Option.none => (Bool.true && Bool.true) | Option.some _ystep => ((Bool.true && (Bool.true && Bool.true)) && (__fits_10 (_ys) (_ystep))))) + +attribute [local irreducible] Reasoning.Clinic.Triage.fire Reasoning.Clinic.Triage.select in +theorem __rel_5 (_ys : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 5 [(__enc_1 _ys)] (_root_.LexLeanPreservation.Rel (__fits_5 _ys) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Triage.next _ys))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.none => (Bool.true && Bool.true) | Option.some _ystep => ((Bool.true && (Bool.true && Bool.true)) && (__fits_10 (_ys) (_ystep))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_1) (match __a with | Option.none => (Option.none : (Option (Reasoning.Clinic.Chart))) | Option.some _ystep => (Reasoning.Clinic.Triage.fire (_ys) (_ystep)))) (Reasoning.Clinic.Triage.select (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_9 (_ys))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) | Option.some _ystep => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_10 (_ys) (_ystep))))))) + +def __fits_6 (patient : (Reasoning.Clinic.Vitals)) : Bool := + ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) + +theorem __rel_6 (patient : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 6 [(__enc_0 patient)] (_root_.LexLeanPreservation.Rel (__fits_6 patient) (__enc_1 (Reasoning.Clinic.Triage.observe patient))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) + +def __fits_2 (patient : (Reasoning.Clinic.Vitals)) : Bool := + ((Bool.true && (Bool.true && (((Bool.true && Bool.true) && (__fits_6 (patient))) && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : (Reasoning.Clinic.Chart)) => __fits_5 __p0) ((Reasoning.Clinic.Triage.next)) ((11 : Nat)) ((Reasoning.Clinic.Triage.observe (patient))))) + +attribute [local irreducible] Reasoning.Clinic.Triage.observe in +theorem __rel_2 (patient : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 2 [(__enc_0 patient)] (_root_.LexLeanPreservation.Rel (__fits_2 patient) ((_root_.LexLeanPreservation.encPair __enc_1 _root_.LexLeanTarget.TargetSyntax.Value.bool) (Reasoning.Clinic.Triage.saturate patient))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_6 (patient))) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterateUntil (es := __enc_1) (_root_.LexLeanPreservation.optEnc __enc_1) (fun _ => rfl) (_root_.LexLeanPreservation.encPair __enc_1 _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) ((Reasoning.Clinic.Triage.next)) (fun (__p0 : (Reasoning.Clinic.Chart)) => __fits_5 __p0) 5 [] (fun (__p0 : (Reasoning.Clinic.Chart)) => __rel_5 __p0) (_root_.LexLeanCollections.iterateUntil ((Reasoning.Clinic.Triage.next))) (fun _ => rfl) (fun _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (p := __prog) (fi := 4) (ts := (.adt 1)) rfl ((11 : Nat)) ((Reasoning.Clinic.Triage.observe (patient))))) + +def __fits_8 (chart : (Reasoning.Clinic.Chart)) : Bool := + ((Bool.true && Bool.true) && Bool.true) + +theorem __rel_8 (chart : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 8 [(__enc_1 chart)] (_root_.LexLeanPreservation.Rel (__fits_8 chart) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Clinic.Triage.extract chart))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some) + +def __fits_11 (v : (Reasoning.Clinic.Vitals)) (r : Nat) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.ble r (3 : Nat)) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq r (3 : Nat)) then (Bool.true && Bool.true) else (((((Bool.true && Bool.true) && (__fits_28 (v))) && (if (Reasoning.Clinic.hypotensive (v)) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (v).infection (1 : Nat)) then (((Bool.true && Bool.true) && (__fits_29 (v))) && (if (Reasoning.Clinic.feverish (v)) then ((Bool.true && Bool.true) && (__fits_30 (v))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && Bool.true) && Bool.true))) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.feverish Reasoning.Clinic.hypotensive Reasoning.Clinic.tachycardic in +theorem __rel_11 (v : (Reasoning.Clinic.Vitals)) (r : Nat) : _root_.LexLeanPreservation.FunRel __prog 11 [(__enc_0 v), (_root_.LexLeanTarget.TargetSyntax.Value.nat r)] (_root_.LexLeanPreservation.Rel (__fits_11 v r) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.recommendationCheck v r))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq r (3 : Nat)) then (Bool.true && Bool.true) else (((((Bool.true && Bool.true) && (__fits_28 (v))) && (if (Reasoning.Clinic.hypotensive (v)) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (v).infection (1 : Nat)) then (((Bool.true && Bool.true) && (__fits_29 (v))) && (if (Reasoning.Clinic.feverish (v)) then ((Bool.true && Bool.true) && (__fits_30 (v))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && Bool.true) && Bool.true))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && ((Nat.beq r (3 : Nat)) || (!((Reasoning.Clinic.hypotensive (v)) && ((Nat.beq (v).infection (1 : Nat)) && ((Reasoning.Clinic.feverish (v)) && (Reasoning.Clinic.tachycardic (v))))))))) (Nat.ble r (3 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe r (3 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (Bool.true && Bool.true) else (((((Bool.true && Bool.true) && (__fits_28 (v))) && (if (Reasoning.Clinic.hypotensive (v)) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (v).infection (1 : Nat)) then (((Bool.true && Bool.true) && (__fits_29 (v))) && (if (Reasoning.Clinic.feverish (v)) then ((Bool.true && Bool.true) && (__fits_30 (v))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && Bool.true) && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b || (!((Reasoning.Clinic.hypotensive (v)) && ((Nat.beq (v).infection (1 : Nat)) && ((Reasoning.Clinic.feverish (v)) && (Reasoning.Clinic.tachycardic (v)))))))) (Nat.beq r (3 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq r (3 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (v).infection (1 : Nat)) then (((Bool.true && Bool.true) && (__fits_29 (v))) && (if (Reasoning.Clinic.feverish (v)) then ((Bool.true && Bool.true) && (__fits_30 (v))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && ((Nat.beq (v).infection (1 : Nat)) && ((Reasoning.Clinic.feverish (v)) && (Reasoning.Clinic.tachycardic (v)))))) (Reasoning.Clinic.hypotensive (v)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_28 (v))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (((Bool.true && Bool.true) && (__fits_29 (v))) && (if (Reasoning.Clinic.feverish (v)) then ((Bool.true && Bool.true) && (__fits_30 (v))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && ((Reasoning.Clinic.feverish (v)) && (Reasoning.Clinic.tachycardic (v))))) (Nat.beq (v).infection (1 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (v).infection (1 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && (__fits_30 (v))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Reasoning.Clinic.tachycardic (v)))) (Reasoning.Clinic.feverish (v)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_29 (v))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_30 (v)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_boolNot ((Reasoning.Clinic.hypotensive (v)) && ((Nat.beq (v).infection (1 : Nat)) && ((Reasoning.Clinic.feverish (v)) && (Reasoning.Clinic.tachycardic (v)))))))))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) + +def __fits_7 (patient : (Reasoning.Clinic.Vitals)) (_ys : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && Bool.true) && (__fits_8 (_ys))) && (match (Reasoning.Clinic.Triage.extract (_ys)) with | Option.none => (Bool.true && Bool.true) | Option.some _yv => (((Bool.true && (Bool.true && Bool.true)) && (__fits_11 (patient) (_yv))) && (if (Reasoning.Clinic.recommendationCheck (patient) (_yv)) then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) + +attribute [local irreducible] Reasoning.Clinic.Triage.extract Reasoning.Clinic.recommendationCheck in +theorem __rel_7 (patient : (Reasoning.Clinic.Vitals)) (_ys : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 7 [(__enc_0 patient), (__enc_1 _ys)] (_root_.LexLeanPreservation.Rel (__fits_7 patient _ys) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Clinic.Triage.accept patient _ys))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Option Nat)) => (match __a with | Option.none => (Bool.true && Bool.true) | Option.some _yv => (((Bool.true && (Bool.true && Bool.true)) && (__fits_11 (patient) (_yv))) && (if (Reasoning.Clinic.recommendationCheck (patient) (_yv)) then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__a : (Option Nat)) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (match __a with | Option.none => (Option.none : (Option Nat)) | Option.some _yv => (if (Reasoning.Clinic.recommendationCheck (patient) (_yv)) then (Option.some (_yv) : (Option Nat)) else (Option.none : (Option Nat))))) (Reasoning.Clinic.Triage.extract (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_8 (_ys))) (fun (__a : (Option Nat)) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) | Option.some _yv => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Option.some (_yv) : (Option Nat)) else (Option.none : (Option Nat)))) (Reasoning.Clinic.recommendationCheck (patient) (_yv)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_11 (patient) (_yv))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))) + +def __fits_3 (patient : (Reasoning.Clinic.Vitals)) (_ys : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && (__fits_7 (patient) (_ys))) && (match (Reasoning.Clinic.Triage.accept (patient) (_ys)) with | Option.some _yv => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_8 (_ys))) && (match (Reasoning.Clinic.Triage.extract (_ys)) with | Option.some _yv => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) + +attribute [local irreducible] Reasoning.Clinic.Triage.accept Reasoning.Clinic.Triage.extract in +theorem __rel_3 (patient : (Reasoning.Clinic.Vitals)) (_ys : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 3 [(__enc_0 patient), (__enc_1 _ys)] (_root_.LexLeanPreservation.Rel (__fits_3 patient _ys) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Clinic.Triage.conclude patient _ys))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Option Nat)) => (match __a with | Option.some _yv => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_8 (_ys))) && (match (Reasoning.Clinic.Triage.extract (_ys)) with | Option.some _yv => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) (fun (__a : (Option Nat)) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (match __a with | Option.some _yv => (Except.ok (_yv) : (Except (Prod Bool Bool) Nat)) | Option.none => (match (Reasoning.Clinic.Triage.extract (_ys)) with | Option.some _yv => (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)) | Option.none => (Except.error (((Bool.false, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat))))) (Reasoning.Clinic.Triage.accept (patient) (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_7 (patient) (_ys))) (fun (__a : (Option Nat)) _ => match __a with | Option.some _yv => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Option Nat)) => (match __a with | Option.some _yv => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__a : (Option Nat)) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (match __a with | Option.some _yv => (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)) | Option.none => (Except.error (((Bool.false, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)))) (Reasoning.Clinic.Triage.extract (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_8 (_ys))) (fun (__a : (Option Nat)) _ => match __a with | Option.some _yv => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error))))))))) + +def __fits_1 (patient : (Reasoning.Clinic.Vitals)) : Bool := + (((Bool.true && Bool.true) && (__fits_2 (patient))) && (let _yfinal : (Prod (Reasoning.Clinic.Chart) Bool) := (Reasoning.Clinic.Triage.saturate (patient)); (Bool.true && (match (_yfinal).2 with | Bool.true => ((Bool.true && (Bool.true && Bool.true)) && (__fits_3 (patient) ((_yfinal).1))) | Bool.false => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) + +attribute [local irreducible] Reasoning.Clinic.Triage.conclude Reasoning.Clinic.Triage.saturate in +theorem __rel_1 (patient : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 1 [(__enc_0 patient)] (_root_.LexLeanPreservation.Rel (__fits_1 patient) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Clinic.Triage.verdict patient))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (let _yfinal : (Prod (Reasoning.Clinic.Chart) Bool) := (Reasoning.Clinic.Triage.saturate (patient)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_2 (patient))) (_root_.LexLeanPreservation.conv_matchV _root_.LexLeanTarget.TargetSyntax.Value.bool (fun (__a : Bool) => (match __a with | Bool.true => ((Bool.true && (Bool.true && Bool.true)) && (__fits_3 (patient) ((_yfinal).1))) | Bool.false => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__a : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (match __a with | Bool.true => (Reasoning.Clinic.Triage.conclude (patient) ((_yfinal).1)) | Bool.false => (Except.error (((Bool.false, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)))) (_yfinal).2 (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (fun (__a : Bool) _ => match __a with | Bool.true => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil)) (__rel_3 (patient) ((_yfinal).1)))) | Bool.false => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)))))) + +def __fits_0 (temperature : Nat) (heartRate : Nat) (respiratoryRate : Nat) (whiteCells : Nat) (systolic : Nat) (infection : Nat) : Bool := + (((((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true)))))) && Bool.true) && Bool.true) && (__fits_1 (({ temperature := temperature, heartRate := heartRate, respiratoryRate := respiratoryRate, whiteCells := whiteCells, systolic := systolic, infection := infection } : (Reasoning.Clinic.Vitals))))) && (match (Reasoning.Clinic.Triage.verdict (({ temperature := temperature, heartRate := heartRate, respiratoryRate := respiratoryRate, whiteCells := whiteCells, systolic := systolic, infection := infection } : (Reasoning.Clinic.Vitals)))) with | Except.ok level => Bool.true | Except.error failure => Bool.true)) + +attribute [local irreducible] Reasoning.Clinic.Triage.verdict in +theorem __rel_0 (temperature : Nat) (heartRate : Nat) (respiratoryRate : Nat) (whiteCells : Nat) (systolic : Nat) (infection : Nat) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat temperature), (_root_.LexLeanTarget.TargetSyntax.Value.nat heartRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat respiratoryRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat whiteCells), (_root_.LexLeanTarget.TargetSyntax.Value.nat systolic), (_root_.LexLeanTarget.TargetSyntax.Value.nat infection)] (_root_.LexLeanPreservation.Rel (__fits_0 temperature heartRate respiratoryRate whiteCells systolic infection) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.triageLevel temperature heartRate respiratoryRate whiteCells systolic infection))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Except (Prod Bool Bool) Nat)) => (match __a with | Except.ok level => Bool.true | Except.error failure => Bool.true)) (fun (__a : (Except (Prod Bool Bool) Nat)) => _root_.LexLeanTarget.TargetSyntax.Value.nat (match __a with | Except.ok level => level | Except.error failure => (9 : Nat))) (Reasoning.Clinic.Triage.verdict (({ temperature := temperature, heartRate := heartRate, respiratoryRate := respiratoryRate, whiteCells := whiteCells, systolic := systolic, infection := infection } : (Reasoning.Clinic.Vitals)))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)))))) _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) (__rel_1 (({ temperature := temperature, heartRate := heartRate, respiratoryRate := respiratoryRate, whiteCells := whiteCells, systolic := systolic, infection := infection } : (Reasoning.Clinic.Vitals))))) (fun (__a : (Except (Prod Bool Bool) Nat)) _ => match __a with | Except.ok level => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | Except.error failure => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value)))) + +def denote (temperature : Nat) (heartRate : Nat) (respiratoryRate : Nat) (whiteCells : Nat) (systolic : Nat) (infection : Nat) : _root_.LexLeanPreservation.Obs := + _root_.cond (__fits_0 temperature heartRate respiratoryRate whiteCells systolic infection) (_root_.LexLeanPreservation.Obs.value ((_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.triageLevel temperature heartRate respiratoryRate whiteCells systolic infection)))) _root_.LexLeanPreservation.Obs.overflow + +theorem root (temperature : Nat) (heartRate : Nat) (respiratoryRate : Nat) (whiteCells : Nat) (systolic : Nat) (infection : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat temperature), (_root_.LexLeanTarget.TargetSyntax.Value.nat heartRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat respiratoryRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat whiteCells), (_root_.LexLeanTarget.TargetSyntax.Value.nat systolic), (_root_.LexLeanTarget.TargetSyntax.Value.nat infection)] (_root_.LexLeanPreservation.Rel (__fits_0 temperature heartRate respiratoryRate whiteCells systolic infection) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.triageLevel temperature heartRate respiratoryRate whiteCells systolic infection))) := + _root_.LexLeanPreservation.run_of_funRel (__rel_0 temperature heartRate respiratoryRate whiteCells systolic infection) + +end LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0 diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R0/Compose/RustCore.lex.tex b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R0/Compose/RustCore.lex.tex new file mode 100644 index 000000000..a9b995a93 --- /dev/null +++ b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R0/Compose/RustCore.lex.tex @@ -0,0 +1,1341 @@ +\begin{lexlean}{RustCore} +\title{Certificate E LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.Compose.RustCore} +\begin{coremodule} +imports [ + LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0, + LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.RustCore, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.Compose.RustCore.__wt_0 : @16 := @716 { + all: [LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.Compose.RustCore.__wt_0], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.Compose.RustCore.__wt_1 : @724 := @1388 { + all: [LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.Compose.RustCore.__wt_1], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.Compose.RustCore.__wt_2 : @1396 := @1631 { + all: [LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.Compose.RustCore.__wt_2], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.Compose.RustCore.root : @2716 := @2717 { + all: [LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.Compose.RustCore.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.RustCore.program +@1 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.RustCore.krate +@2 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.RustCore.flags +@3 := Reasoning.Clinic.Vitals +@4 := #0 +@5 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.__enc_0 +@6 := @5 @4 +@7 := LexLeanPreservation.Rust.WT +@8 := LexLeanTarget.TargetSyntax.Ty.adt +@9 := 0 +@10 := @8 @9 +@11 := @7 @0 +@12 := @11 @1 +@13 := @12 @2 +@16 := (__s : @3) -> @13 @6 @10 +@17 := Reasoning.Clinic.Vitals.temperature +@18 := @17 @4 +@19 := Reasoning.Clinic.Vitals.heartRate +@20 := @19 @4 +@21 := Reasoning.Clinic.Vitals.respiratoryRate +@22 := @21 @4 +@23 := Reasoning.Clinic.Vitals.whiteCells +@24 := @23 @4 +@25 := Reasoning.Clinic.Vitals.systolic +@26 := @25 @4 +@27 := Reasoning.Clinic.Vitals.infection +@28 := @27 @4 +@29 := LexLeanTarget.TargetSyntax.Value.nat +@30 := @29 @18 +@31 := LexLeanTarget.TargetSyntax.Ty.nat +@32 := LexLeanTarget.TargetSyntax.Program +@33 := LexLeanPreservation.Rust.RCrate +@34 := LexLeanPreservation.Rust.Flags +@35 := Nat +@36 := #3 +@37 := @7 @36 +@38 := #2 +@39 := @37 @38 +@40 := #1 +@41 := @39 @40 +@42 := @29 @4 +@48 := {p : @32} -> {c : @33} -> {A : @34} -> (n : @35) -> @41 @42 @31 +@50 := LexLeanPreservation.Rust.wt_nat @0 +@57 := {c : @33} -> {A : @34} -> (n : @35) -> @11 @38 @40 @42 @31 +@58 := @50 @1 +@63 := {A : @34} -> (n : @35) -> @12 @40 @42 @31 +@64 := @58 @2 +@67 := (n : @35) -> @13 @42 @31 +@68 := @64 @18 +@70 := @13 @30 @31 +@71 := @29 @20 +@72 := @64 @20 +@74 := @13 @71 @31 +@75 := @29 @22 +@76 := @64 @22 +@78 := @13 @75 @31 +@79 := @29 @24 +@80 := @64 @24 +@82 := @13 @79 @31 +@83 := @29 @26 +@84 := @64 @26 +@86 := @13 @83 @31 +@87 := @29 @28 +@88 := @64 @28 +@90 := @13 @87 @31 +@91 := LexLeanTarget.TargetSyntax.Value +@92 := LexLeanTarget.TargetSyntax.Ty +@93 := List.nil.{0} +@94 := List.cons.{0} +@95 := @93 @91 +@96 := @94 @91 +@98 := @96 @87 @95 +@100 := @96 @83 @98 +@102 := @96 @79 @100 +@104 := @96 @75 @102 +@106 := @96 @71 @104 +@108 := @96 @30 @106 +@109 := @93 @92 +@110 := @94 @92 +@111 := @110 @31 +@112 := @111 @109 +@113 := @111 @112 +@114 := @111 @113 +@115 := @111 @114 +@116 := @111 @115 +@117 := @111 @116 +@118 := LexLeanPreservation.Rust.WTL +@126 := {p : @32} -> {c : @33} -> {A : @34} -> @118 @38 @40 @4 @95 @109 +@128 := LexLeanPreservation.Rust.wtl_nil @0 +@129 := @118 @0 +@135 := {c : @33} -> {A : @34} -> @129 @40 @4 @95 @109 +@136 := @128 @1 +@137 := @129 @1 +@141 := {A : @34} -> @137 @4 @95 @109 +@142 := @136 @2 +@143 := @137 @2 +@144 := @143 @95 +@145 := @144 @109 +@146 := List.{0} +@147 := @146 @91 +@148 := @146 @92 +@149 := #6 +@150 := @7 @149 +@151 := #5 +@152 := @150 @151 +@153 := #4 +@156 := @152 @153 @36 @38 +@157 := #7 +@162 := @118 @157 @149 @151 @38 @40 +@163 := #8 +@166 := @118 @163 @157 @149 +@168 := @96 @151 @36 +@169 := @166 @168 +@171 := @110 @153 @38 +@181 := {p : @32} -> + {c : @33} -> + {A : @34} -> + {v : @91} -> {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @156) -> (hs : @162) -> @169 @171 +@183 := LexLeanPreservation.Rust.wtl_cons @0 +@187 := @11 @151 @153 @36 @38 +@191 := @129 @149 @151 @38 @40 +@203 := {c : @33} -> + {A : @34} -> + {v : @91} -> + {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @187) -> (hs : @191) -> @129 @157 @149 @168 @171 +@204 := @183 @1 +@207 := @12 @153 @36 @38 +@210 := @137 @151 @38 @40 +@220 := {A : @34} -> + {v : @91} -> + {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @207) -> (hs : @210) -> @137 @149 @168 @171 +@221 := @204 @2 +@223 := @13 @36 @38 +@225 := @143 @38 @40 +@233 := {v : @91} -> + {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @223) -> (hs : @225) -> @143 @168 @171 +@234 := @221 @87 +@236 := @29 (@27 @36) +@249 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @236 @38) -> (hs : @225) -> @143 (@96 (@29 (@27 @151)) @36) @171 +@250 := @234 @31 +@252 := @29 (@27 @38) +@254 := @13 @252 @31 +@259 := @143 (@96 (@29 (@27 @153)) @36) +@260 := @111 @38 +@265 := {vs : @147} -> {ts : @148} -> (h : @254) -> (hs : @225) -> @259 @260 +@266 := @250 @95 +@268 := @29 (@27 @40) +@270 := @13 @268 @31 +@271 := @144 @40 +@273 := @96 @236 @95 +@278 := {ts : @148} -> (h : @270) -> (hs : @271) -> @143 @273 @260 +@279 := @266 @109 +@281 := @96 @252 @95 +@282 := @143 @281 +@285 := (h : @90) -> (hs : @145) -> @282 @112 +@286 := @279 @88 +@288 := @96 @268 @95 +@290 := @143 @288 @112 +@291 := (hs : @145) -> @290 +@292 := @286 @142 +@294 := @143 @98 @112 +@295 := @221 @83 +@297 := @29 (@25 @36) +@310 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @297 @38) -> (hs : @225) -> @143 (@96 (@29 (@25 @151)) @36) @171 +@311 := @295 @31 +@313 := @29 (@25 @38) +@325 := {vs : @147} -> + {ts : @148} -> (h : @13 @313 @31) -> (hs : @225) -> @143 (@96 (@29 (@25 @153)) @36) @260 +@326 := @311 @98 +@328 := @29 (@25 @40) +@330 := @13 @328 @31 +@331 := @282 @40 +@333 := @96 @297 @273 +@338 := {ts : @148} -> (h : @330) -> (hs : @331) -> @143 @333 @260 +@339 := @326 @112 +@341 := @96 @313 @281 +@342 := @143 @341 +@345 := (h : @86) -> (hs : @290) -> @342 @113 +@346 := @339 @84 +@348 := @96 @328 @288 +@350 := @143 @348 @113 +@351 := (hs : @294) -> @350 +@352 := @346 @292 +@354 := @143 @100 @113 +@355 := @221 @79 +@357 := @29 (@23 @36) +@370 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @357 @38) -> (hs : @225) -> @143 (@96 (@29 (@23 @151)) @36) @171 +@371 := @355 @31 +@373 := @29 (@23 @38) +@385 := {vs : @147} -> + {ts : @148} -> (h : @13 @373 @31) -> (hs : @225) -> @143 (@96 (@29 (@23 @153)) @36) @260 +@386 := @371 @100 +@388 := @29 (@23 @40) +@390 := @13 @388 @31 +@391 := @342 @40 +@393 := @96 @357 @333 +@398 := {ts : @148} -> (h : @390) -> (hs : @391) -> @143 @393 @260 +@399 := @386 @113 +@401 := @96 @373 @341 +@402 := @143 @401 +@405 := (h : @82) -> (hs : @350) -> @402 @114 +@406 := @399 @80 +@408 := @96 @388 @348 +@410 := @143 @408 @114 +@411 := (hs : @354) -> @410 +@412 := @406 @352 +@414 := @143 @102 @114 +@415 := @221 @75 +@417 := @29 (@21 @36) +@430 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @417 @38) -> (hs : @225) -> @143 (@96 (@29 (@21 @151)) @36) @171 +@431 := @415 @31 +@433 := @29 (@21 @38) +@445 := {vs : @147} -> + {ts : @148} -> (h : @13 @433 @31) -> (hs : @225) -> @143 (@96 (@29 (@21 @153)) @36) @260 +@446 := @431 @102 +@448 := @29 (@21 @40) +@450 := @13 @448 @31 +@451 := @402 @40 +@453 := @96 @417 @393 +@458 := {ts : @148} -> (h : @450) -> (hs : @451) -> @143 @453 @260 +@459 := @446 @114 +@461 := @96 @433 @401 +@462 := @143 @461 +@465 := (h : @78) -> (hs : @410) -> @462 @115 +@466 := @459 @76 +@468 := @96 @448 @408 +@470 := @143 @468 @115 +@471 := (hs : @414) -> @470 +@472 := @466 @412 +@474 := @143 @104 @115 +@475 := @221 @71 +@477 := @29 (@19 @36) +@490 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @477 @38) -> (hs : @225) -> @143 (@96 (@29 (@19 @151)) @36) @171 +@491 := @475 @31 +@493 := @29 (@19 @38) +@505 := {vs : @147} -> + {ts : @148} -> (h : @13 @493 @31) -> (hs : @225) -> @143 (@96 (@29 (@19 @153)) @36) @260 +@506 := @491 @104 +@508 := @29 (@19 @40) +@510 := @13 @508 @31 +@511 := @462 @40 +@513 := @96 @477 @453 +@518 := {ts : @148} -> (h : @510) -> (hs : @511) -> @143 @513 @260 +@519 := @506 @115 +@521 := @96 @493 @461 +@522 := @143 @521 +@525 := (h : @74) -> (hs : @470) -> @522 @116 +@526 := @519 @72 +@528 := @96 @508 @468 +@530 := @143 @528 @116 +@531 := (hs : @474) -> @530 +@532 := @526 @472 +@534 := @143 @106 @116 +@535 := @221 @30 +@537 := @29 (@17 @36) +@550 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @537 @38) -> (hs : @225) -> @143 (@96 (@29 (@17 @151)) @36) @171 +@551 := @535 @31 +@553 := @29 (@17 @38) +@565 := {vs : @147} -> + {ts : @148} -> (h : @13 @553 @31) -> (hs : @225) -> @143 (@96 (@29 (@17 @153)) @36) @260 +@566 := @551 @106 +@568 := @29 (@17 @40) +@570 := @13 @568 @31 +@571 := @522 @40 +@573 := @96 @537 @513 +@578 := {ts : @148} -> (h : @570) -> (hs : @571) -> @143 @573 @260 +@579 := @566 @116 +@581 := @96 @553 @521 +@582 := @143 @581 +@585 := (h : @70) -> (hs : @530) -> @582 @117 +@586 := @579 @68 +@588 := @96 @568 @528 +@590 := @143 @588 @117 +@591 := (hs : @534) -> @590 +@592 := @586 @532 +@594 := @143 @108 @117 +@595 := Eq.{1} +@596 := Option.{0} +@597 := @596 @148 +@598 := @595 @597 +@599 := LexLeanPreservation.Rust.adtFields +@603 := @598 (@599 @149 @36 @38) +@604 := Option.some.{0} +@605 := @604 @148 +@606 := @605 @4 +@607 := @603 @606 +@610 := @7 @163 @157 @149 +@611 := LexLeanTarget.TargetSyntax.Value.adt +@613 := @611 @153 @36 +@614 := @610 @613 +@615 := @8 @151 +@625 := {p : @32} -> + {c : @33} -> + {A : @34} -> + {i : @35} -> {k : @35} -> {fs : @147} -> {tys : @148} -> (h : @607) -> (hf : @162) -> @614 @615 +@627 := LexLeanPreservation.Rust.wt_adt @0 +@628 := @599 @0 +@632 := @598 (@628 @36 @38) @606 +@644 := {c : @33} -> + {A : @34} -> + {i : @35} -> + {k : @35} -> {fs : @147} -> {tys : @148} -> (h : @632) -> (hf : @191) -> @11 @157 @149 @613 @615 +@645 := @627 @1 +@655 := {A : @34} -> + {i : @35} -> + {k : @35} -> {fs : @147} -> {tys : @148} -> (h : @632) -> (hf : @210) -> @12 @149 @613 @615 +@656 := @645 @2 +@657 := @13 @613 +@664 := {i : @35} -> + {k : @35} -> {fs : @147} -> {tys : @148} -> (h : @632) -> (hf : @225) -> @657 @615 +@665 := @656 @9 +@666 := @628 @9 +@675 := {k : @35} -> + {fs : @147} -> {tys : @148} -> (h : @598 (@666 @38) @606) -> (hf : @225) -> @657 @10 +@676 := @665 @9 +@677 := @666 @9 +@678 := @598 @677 +@679 := @678 @606 +@680 := @611 @9 +@682 := @13 (@680 @36) +@687 := {fs : @147} -> {tys : @148} -> (h : @679) -> (hf : @225) -> @682 @10 +@688 := @676 @108 +@695 := {tys : @148} -> (h : @679) -> (hf : @582 @40) -> @13 (@680 @573) @10 +@696 := @688 @117 +@703 := (h : @678 (@605 @117)) -> (hf : @590) -> @13 (@680 @581) @10 +@704 := Eq.refl.{1} +@705 := @704 @597 +@707 := @696 (@705 @677) +@711 := (hf : @594) -> @13 (@680 @588) @10 +@712 := @707 @592 +@715 := @13 (@680 @108) @10 +@716 := fun (__s : @3) => @712 +@717 := Reasoning.Clinic.Chart +@719 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.__enc_1 @4 +@720 := 1 +@721 := @8 @720 +@724 := (__s : @717) -> @13 @719 @721 +@725 := Reasoning.Clinic.Chart.vitals +@726 := @725 @4 +@727 := Reasoning.Clinic.Chart.fever +@728 := @727 @4 +@729 := Reasoning.Clinic.Chart.tachycardia +@730 := @729 @4 +@731 := Reasoning.Clinic.Chart.tachypnea +@732 := @731 @4 +@733 := Reasoning.Clinic.Chart.leukocytosis +@734 := @733 @4 +@735 := Reasoning.Clinic.Chart.sirs +@736 := @735 @4 +@737 := Reasoning.Clinic.Chart.sepsis +@738 := @737 @4 +@739 := Reasoning.Clinic.Chart.shock +@740 := @739 @4 +@741 := Reasoning.Clinic.Chart.level +@742 := @741 @4 +@743 := @5 @726 +@745 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.Compose.RustCore.__wt_0 @726 +@746 := @29 @728 +@747 := @64 @728 +@749 := @13 @746 @31 +@750 := @29 @730 +@751 := @64 @730 +@753 := @13 @750 @31 +@754 := @29 @732 +@755 := @64 @732 +@757 := @13 @754 @31 +@758 := @29 @734 +@759 := @64 @734 +@761 := @13 @758 @31 +@762 := @29 @736 +@763 := @64 @736 +@765 := @13 @762 @31 +@766 := @29 @738 +@767 := @64 @738 +@769 := @13 @766 @31 +@770 := @29 @740 +@771 := @64 @740 +@773 := @13 @770 @31 +@774 := @29 @742 +@775 := @64 @742 +@777 := @13 @774 @31 +@779 := @96 @774 @95 +@781 := @96 @770 @779 +@783 := @96 @766 @781 +@785 := @96 @762 @783 +@787 := @96 @758 @785 +@789 := @96 @754 @787 +@791 := @96 @750 @789 +@793 := @96 @746 @791 +@795 := @96 @743 @793 +@796 := @111 @117 +@797 := @111 @796 +@798 := @110 @10 +@799 := @798 @797 +@800 := @221 @774 +@802 := @29 (@741 @36) +@815 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @802 @38) -> (hs : @225) -> @143 (@96 (@29 (@741 @151)) @36) @171 +@816 := @800 @31 +@818 := @29 (@741 @38) +@830 := {vs : @147} -> + {ts : @148} -> (h : @13 @818 @31) -> (hs : @225) -> @143 (@96 (@29 (@741 @153)) @36) @260 +@831 := @816 @95 +@833 := @29 (@741 @40) +@835 := @13 @833 @31 +@837 := @96 @802 @95 +@842 := {ts : @148} -> (h : @835) -> (hs : @271) -> @143 @837 @260 +@843 := @831 @109 +@845 := @96 @818 @95 +@846 := @143 @845 +@849 := (h : @777) -> (hs : @145) -> @846 @112 +@850 := @843 @775 +@852 := @96 @833 @95 +@854 := @143 @852 @112 +@855 := (hs : @145) -> @854 +@856 := @850 @142 +@858 := @143 @779 @112 +@859 := @221 @770 +@861 := @29 (@739 @36) +@874 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @861 @38) -> (hs : @225) -> @143 (@96 (@29 (@739 @151)) @36) @171 +@875 := @859 @31 +@877 := @29 (@739 @38) +@889 := {vs : @147} -> + {ts : @148} -> (h : @13 @877 @31) -> (hs : @225) -> @143 (@96 (@29 (@739 @153)) @36) @260 +@890 := @875 @779 +@892 := @29 (@739 @40) +@894 := @13 @892 @31 +@895 := @846 @40 +@897 := @96 @861 @837 +@902 := {ts : @148} -> (h : @894) -> (hs : @895) -> @143 @897 @260 +@903 := @890 @112 +@905 := @96 @877 @845 +@906 := @143 @905 +@909 := (h : @773) -> (hs : @854) -> @906 @113 +@910 := @903 @771 +@912 := @96 @892 @852 +@914 := @143 @912 @113 +@915 := (hs : @858) -> @914 +@916 := @910 @856 +@918 := @143 @781 @113 +@919 := @221 @766 +@921 := @29 (@737 @36) +@934 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @921 @38) -> (hs : @225) -> @143 (@96 (@29 (@737 @151)) @36) @171 +@935 := @919 @31 +@937 := @29 (@737 @38) +@949 := {vs : @147} -> + {ts : @148} -> (h : @13 @937 @31) -> (hs : @225) -> @143 (@96 (@29 (@737 @153)) @36) @260 +@950 := @935 @781 +@952 := @29 (@737 @40) +@954 := @13 @952 @31 +@955 := @906 @40 +@957 := @96 @921 @897 +@962 := {ts : @148} -> (h : @954) -> (hs : @955) -> @143 @957 @260 +@963 := @950 @113 +@965 := @96 @937 @905 +@966 := @143 @965 +@969 := (h : @769) -> (hs : @914) -> @966 @114 +@970 := @963 @767 +@972 := @96 @952 @912 +@974 := @143 @972 @114 +@975 := (hs : @918) -> @974 +@976 := @970 @916 +@978 := @143 @783 @114 +@979 := @221 @762 +@981 := @29 (@735 @36) +@994 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @981 @38) -> (hs : @225) -> @143 (@96 (@29 (@735 @151)) @36) @171 +@995 := @979 @31 +@997 := @29 (@735 @38) +@1009 := {vs : @147} -> + {ts : @148} -> (h : @13 @997 @31) -> (hs : @225) -> @143 (@96 (@29 (@735 @153)) @36) @260 +@1010 := @995 @783 +@1012 := @29 (@735 @40) +@1014 := @13 @1012 @31 +@1015 := @966 @40 +@1017 := @96 @981 @957 +@1022 := {ts : @148} -> (h : @1014) -> (hs : @1015) -> @143 @1017 @260 +@1023 := @1010 @114 +@1025 := @96 @997 @965 +@1026 := @143 @1025 +@1029 := (h : @765) -> (hs : @974) -> @1026 @115 +@1030 := @1023 @763 +@1032 := @96 @1012 @972 +@1034 := @143 @1032 @115 +@1035 := (hs : @978) -> @1034 +@1036 := @1030 @976 +@1038 := @143 @785 @115 +@1039 := @221 @758 +@1041 := @29 (@733 @36) +@1054 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @1041 @38) -> (hs : @225) -> @143 (@96 (@29 (@733 @151)) @36) @171 +@1055 := @1039 @31 +@1057 := @29 (@733 @38) +@1069 := {vs : @147} -> + {ts : @148} -> (h : @13 @1057 @31) -> (hs : @225) -> @143 (@96 (@29 (@733 @153)) @36) @260 +@1070 := @1055 @785 +@1072 := @29 (@733 @40) +@1074 := @13 @1072 @31 +@1075 := @1026 @40 +@1077 := @96 @1041 @1017 +@1082 := {ts : @148} -> (h : @1074) -> (hs : @1075) -> @143 @1077 @260 +@1083 := @1070 @115 +@1085 := @96 @1057 @1025 +@1086 := @143 @1085 +@1089 := (h : @761) -> (hs : @1034) -> @1086 @116 +@1090 := @1083 @759 +@1092 := @96 @1072 @1032 +@1094 := @143 @1092 @116 +@1095 := (hs : @1038) -> @1094 +@1096 := @1090 @1036 +@1098 := @143 @787 @116 +@1099 := @221 @754 +@1101 := @29 (@731 @36) +@1114 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @1101 @38) -> (hs : @225) -> @143 (@96 (@29 (@731 @151)) @36) @171 +@1115 := @1099 @31 +@1117 := @29 (@731 @38) +@1129 := {vs : @147} -> + {ts : @148} -> (h : @13 @1117 @31) -> (hs : @225) -> @143 (@96 (@29 (@731 @153)) @36) @260 +@1130 := @1115 @787 +@1132 := @29 (@731 @40) +@1134 := @13 @1132 @31 +@1135 := @1086 @40 +@1137 := @96 @1101 @1077 +@1142 := {ts : @148} -> (h : @1134) -> (hs : @1135) -> @143 @1137 @260 +@1143 := @1130 @116 +@1145 := @96 @1117 @1085 +@1146 := @143 @1145 +@1149 := (h : @757) -> (hs : @1094) -> @1146 @117 +@1150 := @1143 @755 +@1152 := @96 @1132 @1092 +@1154 := @143 @1152 @117 +@1155 := (hs : @1098) -> @1154 +@1156 := @1150 @1096 +@1158 := @143 @789 @117 +@1159 := @221 @750 +@1161 := @29 (@729 @36) +@1174 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @1161 @38) -> (hs : @225) -> @143 (@96 (@29 (@729 @151)) @36) @171 +@1175 := @1159 @31 +@1177 := @29 (@729 @38) +@1189 := {vs : @147} -> + {ts : @148} -> (h : @13 @1177 @31) -> (hs : @225) -> @143 (@96 (@29 (@729 @153)) @36) @260 +@1190 := @1175 @789 +@1192 := @29 (@729 @40) +@1194 := @13 @1192 @31 +@1195 := @1146 @40 +@1197 := @96 @1161 @1137 +@1202 := {ts : @148} -> (h : @1194) -> (hs : @1195) -> @143 @1197 @260 +@1203 := @1190 @117 +@1205 := @96 @1177 @1145 +@1206 := @143 @1205 +@1209 := (h : @753) -> (hs : @1154) -> @1206 @796 +@1210 := @1203 @751 +@1212 := @96 @1192 @1152 +@1214 := @143 @1212 @796 +@1215 := (hs : @1158) -> @1214 +@1216 := @1210 @1156 +@1218 := @143 @791 @796 +@1219 := @221 @746 +@1221 := @29 (@727 @36) +@1234 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @1221 @38) -> (hs : @225) -> @143 (@96 (@29 (@727 @151)) @36) @171 +@1235 := @1219 @31 +@1237 := @29 (@727 @38) +@1249 := {vs : @147} -> + {ts : @148} -> (h : @13 @1237 @31) -> (hs : @225) -> @143 (@96 (@29 (@727 @153)) @36) @260 +@1250 := @1235 @791 +@1252 := @29 (@727 @40) +@1254 := @13 @1252 @31 +@1255 := @1206 @40 +@1257 := @96 @1221 @1197 +@1262 := {ts : @148} -> (h : @1254) -> (hs : @1255) -> @143 @1257 @260 +@1263 := @1250 @796 +@1265 := @96 @1237 @1205 +@1266 := @143 @1265 +@1269 := (h : @749) -> (hs : @1214) -> @1266 @797 +@1270 := @1263 @747 +@1272 := @96 @1252 @1212 +@1274 := @143 @1272 @797 +@1275 := (hs : @1218) -> @1274 +@1276 := @1270 @1216 +@1278 := @143 @793 @797 +@1279 := @221 @743 +@1281 := @5 (@725 @36) +@1294 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @1281 @38) -> (hs : @225) -> @143 (@96 (@5 (@725 @151)) @36) @171 +@1295 := @1279 @10 +@1297 := @5 (@725 @38) +@1299 := @13 @1297 @10 +@1304 := @143 (@96 (@5 (@725 @153)) @36) +@1305 := @798 @38 +@1310 := {vs : @147} -> {ts : @148} -> (h : @1299) -> (hs : @225) -> @1304 @1305 +@1311 := @1295 @793 +@1313 := @5 (@725 @40) +@1315 := @13 @1313 @10 +@1316 := @1266 @40 +@1318 := @96 @1281 @1257 +@1323 := {ts : @148} -> (h : @1315) -> (hs : @1316) -> @143 @1318 @1305 +@1324 := @1311 @797 +@1326 := @13 @743 @10 +@1328 := @96 @1297 @1265 +@1329 := @143 @1328 +@1332 := (h : @1326) -> (hs : @1274) -> @1329 @799 +@1333 := @1324 @745 +@1335 := @96 @1313 @1272 +@1337 := @143 @1335 @799 +@1338 := (hs : @1278) -> @1337 +@1339 := @1333 @1276 +@1341 := @143 @795 @799 +@1342 := @656 @720 +@1343 := @628 @720 +@1352 := {k : @35} -> + {fs : @147} -> {tys : @148} -> (h : @598 (@1343 @38) @606) -> (hf : @225) -> @657 @721 +@1353 := @1342 @9 +@1354 := @1343 @9 +@1355 := @598 @1354 +@1356 := @1355 @606 +@1361 := {fs : @147} -> {tys : @148} -> (h : @1356) -> (hf : @225) -> @682 @721 +@1362 := @1353 @795 +@1369 := {tys : @148} -> (h : @1356) -> (hf : @1329 @40) -> @13 (@680 @1318) @721 +@1370 := @1362 @799 +@1377 := (h : @1355 (@605 @799)) -> (hf : @1337) -> @13 (@680 @1328) @721 +@1379 := @1370 (@705 @1354) +@1383 := (hf : @1341) -> @13 (@680 @1335) @721 +@1384 := @1379 @1339 +@1387 := @13 (@680 @795) @721 +@1388 := fun (__s : @717) => @1384 +@1389 := Reasoning.Clinic.Triage.Step +@1391 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.__enc_2 @4 +@1392 := 2 +@1393 := @8 @1392 +@1395 := @13 @1391 @1393 +@1396 := (__v : @1389) -> @1395 +@1397 := fun (__v : @1389) => @1395 +@1398 := @656 @1392 +@1399 := @628 @1392 +@1408 := {k : @35} -> + {fs : @147} -> {tys : @148} -> (h : @598 (@1399 @38) @606) -> (hf : @225) -> @657 @1393 +@1409 := @1398 @9 +@1410 := @1399 @9 +@1411 := @598 @1410 +@1412 := @1411 @606 +@1417 := {fs : @147} -> {tys : @148} -> (h : @1412) -> (hf : @225) -> @682 @1393 +@1418 := @1409 @95 +@1421 := @13 (@680 @95) @1393 +@1424 := {tys : @148} -> (h : @1412) -> (hf : @271) -> @1421 +@1425 := @1418 @109 +@1426 := @605 @109 +@1429 := (h : @1411 @1426) -> (hf : @145) -> @1421 +@1432 := @1425 (@705 @1410) @142 +@1433 := @1398 @720 +@1434 := @1399 @720 +@1435 := @598 @1434 +@1436 := @1435 @606 +@1437 := @611 @720 +@1444 := {fs : @147} -> {tys : @148} -> (h : @1436) -> (hf : @225) -> @13 (@1437 @36) @1393 +@1445 := @1433 @95 +@1448 := @13 (@1437 @95) @1393 +@1451 := {tys : @148} -> (h : @1436) -> (hf : @271) -> @1448 +@1452 := @1445 @109 +@1455 := (h : @1435 @1426) -> (hf : @145) -> @1448 +@1458 := @1452 (@705 @1434) @142 +@1459 := @1398 @1392 +@1460 := @1399 @1392 +@1461 := @598 @1460 +@1462 := @1461 @606 +@1463 := @611 @1392 +@1470 := {fs : @147} -> {tys : @148} -> (h : @1462) -> (hf : @225) -> @13 (@1463 @36) @1393 +@1471 := @1459 @95 +@1474 := @13 (@1463 @95) @1393 +@1477 := {tys : @148} -> (h : @1462) -> (hf : @271) -> @1474 +@1478 := @1471 @109 +@1481 := (h : @1461 @1426) -> (hf : @145) -> @1474 +@1484 := @1478 (@705 @1460) @142 +@1485 := 3 +@1486 := @1398 @1485 +@1487 := @1399 @1485 +@1488 := @598 @1487 +@1489 := @1488 @606 +@1490 := @611 @1485 +@1497 := {fs : @147} -> {tys : @148} -> (h : @1489) -> (hf : @225) -> @13 (@1490 @36) @1393 +@1498 := @1486 @95 +@1501 := @13 (@1490 @95) @1393 +@1504 := {tys : @148} -> (h : @1489) -> (hf : @271) -> @1501 +@1505 := @1498 @109 +@1508 := (h : @1488 @1426) -> (hf : @145) -> @1501 +@1511 := @1505 (@705 @1487) @142 +@1512 := 4 +@1513 := @1398 @1512 +@1514 := @1399 @1512 +@1515 := @598 @1514 +@1516 := @1515 @606 +@1517 := @611 @1512 +@1524 := {fs : @147} -> {tys : @148} -> (h : @1516) -> (hf : @225) -> @13 (@1517 @36) @1393 +@1525 := @1513 @95 +@1528 := @13 (@1517 @95) @1393 +@1531 := {tys : @148} -> (h : @1516) -> (hf : @271) -> @1528 +@1532 := @1525 @109 +@1535 := (h : @1515 @1426) -> (hf : @145) -> @1528 +@1538 := @1532 (@705 @1514) @142 +@1539 := 5 +@1540 := @1398 @1539 +@1541 := @1399 @1539 +@1542 := @598 @1541 +@1543 := @1542 @606 +@1544 := @611 @1539 +@1551 := {fs : @147} -> {tys : @148} -> (h : @1543) -> (hf : @225) -> @13 (@1544 @36) @1393 +@1552 := @1540 @95 +@1555 := @13 (@1544 @95) @1393 +@1558 := {tys : @148} -> (h : @1543) -> (hf : @271) -> @1555 +@1559 := @1552 @109 +@1562 := (h : @1542 @1426) -> (hf : @145) -> @1555 +@1565 := @1559 (@705 @1541) @142 +@1566 := 6 +@1567 := @1398 @1566 +@1568 := @1399 @1566 +@1569 := @598 @1568 +@1570 := @1569 @606 +@1571 := @611 @1566 +@1578 := {fs : @147} -> {tys : @148} -> (h : @1570) -> (hf : @225) -> @13 (@1571 @36) @1393 +@1579 := @1567 @95 +@1582 := @13 (@1571 @95) @1393 +@1585 := {tys : @148} -> (h : @1570) -> (hf : @271) -> @1582 +@1586 := @1579 @109 +@1589 := (h : @1569 @1426) -> (hf : @145) -> @1582 +@1592 := @1586 (@705 @1568) @142 +@1593 := 7 +@1594 := @1398 @1593 +@1595 := @1399 @1593 +@1596 := @598 @1595 +@1597 := @1596 @606 +@1598 := @611 @1593 +@1605 := {fs : @147} -> {tys : @148} -> (h : @1597) -> (hf : @225) -> @13 (@1598 @36) @1393 +@1606 := @1594 @95 +@1609 := @13 (@1598 @95) @1393 +@1612 := {tys : @148} -> (h : @1597) -> (hf : @271) -> @1609 +@1613 := @1606 @109 +@1616 := (h : @1596 @1426) -> (hf : @145) -> @1609 +@1619 := @1613 (@705 @1595) @142 +@1631 := fun (__v : @1389) => + Reasoning.Clinic.Triage.Step.casesOn.{0} @1397 @4 @1432 @1458 @1484 @1511 @1538 @1565 @1592 @1619 +@1632 := @29 @149 +@1633 := @64 @149 +@1634 := @13 @1632 +@1635 := @1634 @31 +@1636 := @29 @151 +@1637 := @64 @151 +@1638 := @13 @1636 +@1639 := @1638 @31 +@1640 := @29 @153 +@1641 := @64 @153 +@1642 := @13 @1640 +@1643 := @1642 @31 +@1644 := @29 @36 +@1645 := @64 @36 +@1647 := @13 @1644 @31 +@1648 := @29 @38 +@1649 := @64 @38 +@1651 := @13 @1648 @31 +@1652 := @29 @40 +@1653 := @64 @40 +@1655 := @13 @1652 @31 +@1656 := @96 @1652 +@1657 := @1656 @95 +@1658 := @96 @1648 +@1659 := @1658 @1657 +@1660 := @96 @1644 +@1661 := @1660 @1659 +@1662 := @96 @1640 +@1663 := @1662 @1661 +@1664 := @96 @1636 +@1665 := @1664 @1663 +@1666 := @96 @1632 +@1667 := @1666 @1665 +@1670 := Prod.{0, 0} @35 @91 +@1673 := Prod.mk.{0, 0} @35 @91 +@1674 := @1673 @1539 +@1675 := @1674 @1652 +@1676 := @1673 @1512 +@1677 := @1676 @1648 +@1678 := @1673 @1485 +@1679 := @1678 @1644 +@1680 := @1673 @1392 +@1681 := @1680 @1640 +@1682 := @1673 @720 +@1683 := @1682 @1636 +@1684 := @1673 @9 +@1685 := @1684 @1632 +@1686 := @93 @1670 +@1687 := @94 @1670 +@1689 := @1687 @1685 @1686 +@1691 := @1687 @1683 @1689 +@1693 := @1687 @1681 @1691 +@1695 := @1687 @1679 @1693 +@1697 := @1687 @1677 @1695 +@1699 := @1687 @1675 @1697 +@1700 := Bool.true +@1701 := LexLeanTarget.TargetSyntax.Function +@1702 := LexLeanTarget.TargetSyntax.Program.functions +@1703 := @1702 @0 +@1704 := @93 @35 +@1705 := LexLeanTarget.TargetSyntax.Ty.unit +@1706 := LexLeanTarget.TargetSyntax.Value.unit +@1709 := LexLeanTarget.TargetSyntax.Expr.value @1705 @1706 +@1714 := LexLeanTarget.TargetSyntax.Function.mk @1704 @109 @1705 @1709 +@1719 := List.getD.{0} @1701 @1703 @9 @1714 +@1723 := fun (__e_n : @35) => + LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.RustCore.root @4 @9 +@1724 := @221 @1652 +@1725 := @1642 @38 +@1727 := @143 (@1666 @36) +@1733 := {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @1725) -> (hs : @225) -> @1727 @171 +@1734 := @1724 @31 +@1741 := {vs : @147} -> {ts : @148} -> (h : @1647) -> (hs : @225) -> @143 (@1664 @36) @260 +@1742 := @1734 @95 +@1743 := @1662 @95 +@1748 := {ts : @148} -> (h : @1651) -> (hs : @271) -> @143 @1743 @260 +@1749 := @1742 @109 +@1750 := @1660 @95 +@1751 := @143 @1750 +@1754 := (h : @1655) -> (hs : @145) -> @1751 @112 +@1755 := @1749 @1653 +@1756 := @1658 @95 +@1758 := @143 @1756 @112 +@1759 := (hs : @145) -> @1758 +@1760 := @1755 @142 +@1762 := @143 @1657 @112 +@1763 := @221 @1648 +@1764 := @1638 @38 +@1765 := @29 @157 +@1766 := @96 @1765 +@1768 := @143 (@1766 @36) +@1774 := {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @1764) -> (hs : @225) -> @1768 @171 +@1775 := @1763 @31 +@1780 := {vs : @147} -> {ts : @148} -> (h : @1643) -> (hs : @225) -> @1727 @260 +@1781 := @1775 @1657 +@1782 := @1751 @40 +@1783 := @1664 @1743 +@1788 := {ts : @148} -> (h : @1647) -> (hs : @1782) -> @143 @1783 @260 +@1789 := @1781 @112 +@1790 := @1662 @1750 +@1791 := @143 @1790 +@1794 := (h : @1651) -> (hs : @1758) -> @1791 @113 +@1795 := @1789 @1649 +@1796 := @1660 @1756 +@1798 := @143 @1796 @113 +@1799 := (hs : @1762) -> @1798 +@1800 := @1795 @1760 +@1802 := @143 @1659 @113 +@1803 := @221 @1644 +@1804 := @1634 @38 +@1805 := @29 @163 +@1806 := @96 @1805 +@1808 := @143 (@1806 @36) +@1814 := {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @1804) -> (hs : @225) -> @1808 @171 +@1815 := @1803 @31 +@1820 := {vs : @147} -> {ts : @148} -> (h : @1639) -> (hs : @225) -> @1768 @260 +@1821 := @1815 @1659 +@1822 := @1791 @40 +@1823 := @1666 @1783 +@1828 := {ts : @148} -> (h : @1643) -> (hs : @1822) -> @143 @1823 @260 +@1829 := @1821 @113 +@1830 := @1664 @1790 +@1831 := @143 @1830 +@1834 := (h : @1647) -> (hs : @1798) -> @1831 @114 +@1835 := @1829 @1645 +@1836 := @1662 @1796 +@1838 := @143 @1836 @114 +@1839 := (hs : @1802) -> @1838 +@1840 := @1835 @1800 +@1842 := @143 @1661 @114 +@1843 := @221 @1640 +@1844 := @13 @1765 +@1845 := @1844 @38 +@1846 := #9 +@1847 := @29 @1846 +@1848 := @96 @1847 +@1850 := @143 (@1848 @36) +@1856 := {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @1845) -> (hs : @225) -> @1850 @171 +@1857 := @1843 @31 +@1862 := {vs : @147} -> {ts : @148} -> (h : @1635) -> (hs : @225) -> @1808 @260 +@1863 := @1857 @1661 +@1864 := @1831 @40 +@1865 := @1766 @1823 +@1870 := {ts : @148} -> (h : @1639) -> (hs : @1864) -> @143 @1865 @260 +@1871 := @1863 @114 +@1872 := @1666 @1830 +@1873 := @143 @1872 +@1876 := (h : @1643) -> (hs : @1838) -> @1873 @115 +@1877 := @1871 @1641 +@1878 := @1664 @1836 +@1880 := @143 @1878 @115 +@1881 := (hs : @1842) -> @1880 +@1882 := @1877 @1840 +@1884 := @143 @1663 @115 +@1885 := @221 @1636 +@1886 := @13 @1805 +@1887 := @1886 @38 +@1888 := #10 +@1889 := @29 @1888 +@1890 := @96 @1889 +@1892 := @143 (@1890 @36) +@1898 := {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @1887) -> (hs : @225) -> @1892 @171 +@1899 := @1885 @31 +@1900 := @1844 @31 +@1905 := {vs : @147} -> {ts : @148} -> (h : @1900) -> (hs : @225) -> @1850 @260 +@1906 := @1899 @1663 +@1907 := @1873 @40 +@1908 := @1806 @1865 +@1913 := {ts : @148} -> (h : @1635) -> (hs : @1907) -> @143 @1908 @260 +@1914 := @1906 @115 +@1915 := @1766 @1872 +@1916 := @143 @1915 +@1919 := (h : @1639) -> (hs : @1880) -> @1916 @116 +@1920 := @1914 @1637 +@1921 := @1666 @1878 +@1923 := @143 @1921 @116 +@1924 := (hs : @1884) -> @1923 +@1925 := @1920 @1882 +@1927 := @143 @1665 @116 +@1928 := @221 @1632 +@1930 := @13 @1847 @38 +@1931 := #11 +@1932 := @29 @1931 +@1933 := @96 @1932 +@1941 := {t : @92} -> + {vs : @147} -> {ts : @148} -> (h : @1930) -> (hs : @225) -> @143 (@1933 @36) @171 +@1942 := @1928 @31 +@1948 := {vs : @147} -> {ts : @148} -> (h : @1886 @31) -> (hs : @225) -> @1892 @260 +@1949 := @1942 @1665 +@1950 := @1916 @40 +@1951 := @1848 @1908 +@1952 := @143 @1951 +@1956 := {ts : @148} -> (h : @1900) -> (hs : @1950) -> @1952 @260 +@1957 := @1949 @116 +@1958 := @1806 @1915 +@1959 := @143 @1958 +@1962 := (h : @1635) -> (hs : @1923) -> @1959 @117 +@1963 := @1957 @1633 +@1964 := @1766 @1921 +@1965 := @143 @1964 +@1967 := (hs : @1927) -> @1965 @117 +@1968 := @1963 @1925 +@1969 := @143 @1667 +@1970 := @1969 @117 +@1971 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.denote +@1977 := @1971 @149 @151 @153 @36 @38 @40 +@1978 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.__fits_0 +@1984 := @1978 @149 @151 @153 @36 @38 @40 +@1992 := @29 (Reasoning.Main.triageLevel @149 @151 @153 @36 @38 @40) +@1999 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.root @149 @151 @153 @36 @38 @40 +@2000 := Bool +@2001 := Ne.{1} +@2002 := LexLeanPreservation.Obs +@2003 := @2001 @2002 +@2004 := LexLeanPreservation.Rel +@2007 := @2003 (@2004 @40 @4) +@2008 := LexLeanPreservation.Obs.stuck +@2011 := (f : @2000) -> (v : @91) -> @2007 @2008 +@2013 := LexLeanPreservation.Rust.rel_ne_stuck @1984 +@2024 := (v : @91) -> @2003 (@2004 (@1978 @157 @149 @151 @153 @36 @38) @4) @2008 +@2025 := @2013 @1992 +@2029 := @2003 (@2004 @1984 @1992) @2008 +@2030 := @146 @1670 +@2031 := LexLeanPreservation.Rust.FunSem +@2037 := (n : @35) -> @2031 @1846 @163 @157 @4 @149 +@2038 := @596 @1701 +@2039 := @595 @2038 +@2046 := LexLeanRuntime.index (@146 @1701) @1701 (LexLeanRuntime.instIndexableList @1701) +@2050 := @2039 (@2046 (@1702 @1846) @149) +@2051 := @604 @1701 +@2052 := @2051 @151 +@2053 := @2050 @2052 +@2057 := @118 @1888 @1846 @163 @151 +@2058 := LexLeanTarget.TargetSyntax.Function.types +@2059 := @2058 @149 +@2060 := @2057 @2059 +@2061 := @596 @2030 +@2062 := @595 @2061 +@2063 := LexLeanTarget.TargetSemantics.bindAll +@2064 := LexLeanTarget.TargetSyntax.Function.parameters +@2069 := @2062 (@2063 (@2064 @157) @149 @1686) +@2070 := @604 @2030 +@2071 := @2070 @151 +@2072 := @2069 @2071 +@2073 := @596 @2000 +@2074 := @595 @2073 +@2075 := LexLeanPreservation.Rust.fnFallible +@2078 := @2074 (@2075 @1931 @1846) +@2079 := @604 @2000 +@2080 := @2079 @151 +@2081 := @2078 @2080 +@2082 := LexLeanPreservation.RunConv +@2083 := #13 +@2087 := @2082 @2083 @1888 @163 @151 +@2089 := @2003 @149 @2008 +@2090 := Exists.{1} +@2091 := LexLeanPreservation.Rust.ROut +@2092 := @2090 @2091 +@2093 := And +@2094 := LexLeanPreservation.Rust.RealizesFn +@2098 := @2093 (@2094 @1846 @163 @4) +@2099 := LexLeanPreservation.Rust.RCI +@2100 := #15 +@2101 := @2099 @2100 +@2102 := LexLeanPreservation.Rust.fnIdent +@2103 := @2102 @2083 +@2110 := (hne : @2089) -> @2092 (fun (ro : @2091) => @2098 (@2101 @2103 @1931 @4)) +@2125 := {p : @32} -> + {c : @33} -> + {A : @34} -> + {f : @35} -> + {fn : @1701} -> + {args : @147} -> + {env : @2030} -> + {F : @2000} -> + {o : @2002} -> + (hB : @2037) -> + (hfn : @2053) -> (hwt : @2060) -> (hbind : @2072) -> (hF : @2081) -> (hA : @2087) -> @2110 +@2127 := LexLeanPreservation.Rust.compose @0 +@2128 := @2031 @0 +@2133 := (n : @35) -> @2128 @163 @157 @4 @149 +@2134 := @2046 @1703 +@2137 := @2039 (@2134 @149) @2052 +@2141 := @129 @1846 @163 @151 @2059 +@2142 := @2082 @0 +@2145 := @2142 @1888 @163 @151 +@2159 := {c : @33} -> + {A : @34} -> + {f : @35} -> + {fn : @1701} -> + {args : @147} -> + {env : @2030} -> + {F : @2000} -> + {o : @2002} -> + (hB : @2133) -> + (hfn : @2137) -> (hwt : @2141) -> (hbind : @2072) -> (hF : @2081) -> (hA : @2145) -> @2110 +@2160 := @2127 @1 +@2161 := @2128 @1 +@2165 := (n : @35) -> @2161 @157 @4 @149 +@2168 := @137 @163 @151 @2059 +@2169 := @2075 @1 +@2172 := @2074 (@2169 @1846) @2080 +@2173 := @2099 @1 +@2183 := (hbind : @2072) -> + (hF : @2172) -> + (hA : @2145) -> (hne : @2089) -> @2092 (fun (ro : @2091) => @2098 (@2173 @2103 @1931 @4)) +@2193 := {A : @34} -> + {f : @35} -> + {fn : @1701} -> + {args : @147} -> + {env : @2030} -> + {F : @2000} -> {o : @2002} -> (hB : @2165) -> (hfn : @2137) -> (hwt : @2168) -> @2183 +@2194 := @2160 @2 +@2196 := @2161 @2 @4 +@2198 := (n : @35) -> @2196 @149 +@2199 := @143 @151 +@2200 := @2199 @2059 +@2209 := {f : @35} -> + {fn : @1701} -> + {args : @147} -> + {env : @2030} -> + {F : @2000} -> {o : @2002} -> (hB : @2198) -> (hfn : @2137) -> (hwt : @2200) -> @2183 +@2210 := @2194 @9 +@2212 := (n : @35) -> @2196 @9 +@2213 := @2134 @9 +@2214 := @2039 @2213 +@2215 := @2214 @2052 +@2216 := @2169 @9 +@2217 := @2074 @2216 +@2218 := @2217 @2080 +@2219 := @2142 @9 +@2221 := @2219 @163 @151 +@2223 := @2173 (@2102 @9) +@2231 := (hF : @2218) -> + (hA : @2221) -> (hne : @2089) -> @2092 (fun (ro : @2091) => @2098 (@2223 @1931 @4)) +@2240 := {fn : @1701} -> + {args : @147} -> + {env : @2030} -> + {F : @2000} -> + {o : @2002} -> (hB : @2212) -> (hfn : @2215) -> (hwt : @2200) -> (hbind : @2072) -> @2231 +@2241 := @2210 @1719 +@2243 := @2214 (@2051 @1719) +@2244 := @2058 @1719 +@2245 := @2199 @2244 +@2247 := @2063 (@2064 @1719) +@2259 := {args : @147} -> + {env : @2030} -> + {F : @2000} -> + {o : @2002} -> + (hB : @2212) -> + (hfn : @2243) -> (hwt : @2245) -> (hbind : @2062 (@2247 @149 @1686) @2071) -> @2231 +@2260 := @2241 @1667 +@2266 := @1933 (@1890 (@1848 (@1806 (@1766 (@1666 @95))))) +@2268 := @143 @2266 @2244 +@2269 := #12 +@2271 := @96 (@29 @2269) +@2277 := @2271 (@1933 (@1890 (@1848 (@1806 (@1766 @95))))) +@2281 := @2062 (@2247 @2277 @1686) @2071 +@2282 := #14 +@2284 := @96 (@29 @2282) +@2286 := @96 (@29 @2083) +@2292 := @2284 (@2286 (@2271 (@1933 (@1890 (@1848 @95))))) +@2294 := @2219 @2292 @151 +@2297 := @96 (@29 #17) +@2300 := @96 (@29 #16) +@2302 := @96 (@29 @2100) +@2323 := {env : @2030} -> + {F : @2000} -> + {o : @2002} -> + (hB : @2212) -> + (hfn : @2243) -> + (hwt : @2268) -> + (hbind : @2281) -> + (hF : @2218) -> + (hA : @2294) -> + (hne : @2089) -> + @2092 (fun (ro : @2091) => @2098 (@2223 (@2297 (@2300 (@2302 (@2284 (@2286 (@2271 @95)))))) @4)) +@2324 := @2260 @1699 +@2330 := @1890 (@1848 (@1806 (@1766 (@1666 (@1664 @95))))) +@2332 := @143 @2330 @2244 +@2355 := @2062 + (@2247 @2266 @1686) + (@2070 + (@1687 + (@1674 @1632) + (@1687 + (@1676 @1765) + (@1687 + (@1678 @1805) + (@1687 (@1680 @1847) (@1687 (@1682 @1889) (@1687 (@1684 @1932) @1686))))))) +@2361 := @2286 (@2271 (@1933 (@1890 (@1848 (@1806 @95))))) +@2383 := {F : @2000} -> + {o : @2002} -> + (hB : @2212) -> + (hfn : @2243) -> + (hwt : @2332) -> + (hbind : @2355) -> + (hF : @2218) -> + (hA : @2219 @2361 @151) -> + (hne : @2089) -> + @2092 (fun (ro : @2091) => @2098 (@2223 (@2300 (@2302 (@2284 (@2286 (@2271 (@1933 @95)))))) @4)) +@2384 := @2324 @1700 +@2385 := @1952 @2244 +@2408 := @2062 + (@2247 @2330 @1686) + (@2070 + (@1687 + (@1674 @1636) + (@1687 + (@1676 @1632) + (@1687 + (@1678 @1765) + (@1687 (@1680 @1805) (@1687 (@1682 @1847) (@1687 (@1684 @1889) @1686))))))) +@2410 := @2217 (@2079 @1700) +@2412 := @2219 @2277 @151 +@2413 := @2094 @1700 +@2435 := {o : @2002} -> + (hB : @2212) -> + (hfn : @2243) -> + (hwt : @2385) -> + (hbind : @2408) -> + (hF : @2410) -> + (hA : @2412) -> + (hne : @2089) -> + @2092 + (fun (ro : @2091) => + @2093 (@2413 @163 @4) (@2223 (@2302 (@2284 (@2286 (@2271 (@1933 (@1890 @95)))))) @4)) +@2436 := @2384 @1977 +@2437 := @1959 @2244 +@2460 := @2062 + (@2247 @1951 @1686) + (@2070 + (@1687 + (@1674 @1640) + (@1687 + (@1676 @1636) + (@1687 + (@1678 @1632) + (@1687 (@1680 @1765) (@1687 (@1682 @1805) (@1687 (@1684 @1847) @1686))))))) +@2461 := @2219 @2266 +@2467 := @1971 @1931 @1888 @1846 @163 @157 @149 +@2468 := @2461 @2467 +@2474 := @1971 @2269 @1931 @1888 @1846 @163 @157 +@2497 := (hB : @2212) -> + (hfn : @2243) -> + (hwt : @2437) -> + (hbind : @2460) -> + (hF : @2410) -> + (hA : @2468) -> + (hne : @2003 @2474 @2008) -> + @2092 + (fun (ro : @2091) => + @2093 (@2413 (@1971 @2282 @2083 @2269 @1931 @1888 @1846) @4) (@2223 @2292 @4)) +@2498 := @2436 @1723 +@2499 := @1965 @2244 +@2522 := @2062 + (@2247 @1958 @1686) + (@2070 + (@1687 + (@1674 @1644) + (@1687 + (@1676 @1640) + (@1687 + (@1678 @1636) + (@1687 (@1680 @1632) (@1687 (@1682 @1765) (@1687 (@1684 @1805) @1686))))))) +@2523 := @2219 @2330 +@2529 := @1971 @1888 @1846 @163 @157 @149 @151 +@2552 := (hfn : @2243) -> + (hwt : @2499) -> + (hbind : @2522) -> + (hF : @2410) -> + (hA : @2523 @2529) -> + (hne : @2003 @2467 @2008) -> + @2092 + (fun (ro : @2091) => + @2093 (@2413 (@1971 @2083 @2269 @1931 @1888 @1846 @163) @4) (@2223 @2361 @4)) +@2555 := @2498 (@704 @2038 @2213) +@2556 := @1969 @2244 +@2579 := @2062 + (@2247 @1964 @1686) + (@2070 + (@1687 + (@1674 @1648) + (@1687 + (@1676 @1644) + (@1687 + (@1678 @1640) + (@1687 (@1680 @1636) (@1687 (@1682 @1632) (@1687 (@1684 @1765) @1686))))))) +@2580 := @2219 @1951 +@2586 := @1971 @1846 @163 @157 @149 @151 @153 +@2602 := (hwt : @2556) -> + (hbind : @2579) -> + (hF : @2410) -> + (hA : @2580 @2586) -> + (hne : @2003 @2529 @2008) -> @2092 (fun (ro : @2091) => @2093 (@2413 @2474 @4) (@2223 @2277 @4)) +@2603 := @2555 @1968 +@2605 := @2247 @1667 @1686 +@2608 := @2062 @2605 (@2070 @1699) +@2609 := @2219 @1958 +@2615 := @1971 @163 @157 @149 @151 @153 @36 +@2630 := (hbind : @2608) -> + (hF : @2410) -> + (hA : @2609 @2615) -> + (hne : @2003 @2586 @2008) -> @2092 (fun (ro : @2091) => @2093 (@2413 @2467 @4) (@2223 @2266 @4)) +@2633 := @2603 (@704 @2061 @2605) +@2634 := @2219 @1964 +@2640 := @1971 @157 @149 @151 @153 @36 @38 +@2654 := (hF : @2410) -> + (hA : @2634 @2640) -> + (hne : @2003 @2615 @2008) -> @2092 (fun (ro : @2091) => @2093 (@2413 @2529 @4) (@2223 @2330 @4)) +@2657 := @2633 (@704 @2073 @2216) +@2671 := (hA : @2219 @1667 @1977) -> + (hne : @2003 @2640 @2008) -> @2092 (fun (ro : @2091) => @2093 (@2413 @2586 @4) (@2223 @1951 @4)) +@2672 := @2657 @1999 +@2683 := (hne : @2003 @1977 @2008) -> + @2092 (fun (ro : @2091) => @2093 (@2413 @2615 @4) (@2223 @1958 @4)) +@2684 := @2672 @2025 +@2690 := @2093 (@2413 @2640 @4) (@2223 @1964 @4) +@2692 := @2092 (fun (ro : @2091) => @2690) +@2694 := @2092 (fun (__e_ro : @2091) => @2690) +@2703 := LexLeanPreservation.Rust.RepresentableL + (@1664 (@1662 (@1660 (@1658 (@1656 (@96 @42 @95)))))) +@2704 := (__e_hrep : @2703) -> @2694 +@2705 := fun (__e_hrep : @2703) => @2684 +@2706 := (infection : @35) -> @2704 +@2707 := fun (infection : @35) => @2705 +@2708 := (systolic : @35) -> @2706 +@2709 := fun (systolic : @35) => @2707 +@2710 := (whiteCells : @35) -> @2708 +@2711 := fun (whiteCells : @35) => @2709 +@2712 := (respiratoryRate : @35) -> @2710 +@2713 := fun (respiratoryRate : @35) => @2711 +@2714 := (heartRate : @35) -> @2712 +@2715 := fun (heartRate : @35) => @2713 +@2716 := (temperature : @35) -> @2714 +@2717 := fun (temperature : @35) => @2715 +\end{coremodule} +\end{lexlean} diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R0/RustCore.lean b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R0/RustCore.lean new file mode 100644 index 000000000..8d2a04607 --- /dev/null +++ b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R0/RustCore.lean @@ -0,0 +1,360 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.RustCore +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [{ constructors := [[.nat, .nat, .nat, .nat, .nat, .nat]] }, + { constructors := [[(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]] }, + { constructors := [[], [], [], [], [], [], [], []] }], functions := (( + { parameters := [0, 1, 2, 3, 4, 5], types := [.nat, .nat, .nat, .nat, .nat, .nat], result := .nat, + body := (.«match» .nat (.call 1 [(.build (.adt 0) (.adt 0) [(.var 0), (.var 1), (.var 2), (.var 3), (.var 4), (.var 5)])]) [(.arm .ok [6] (.var 6)), (.arm .error [7] (.value .nat (.nat 9)))]) }) ::( + { parameters := [0], types := [(.adt 0)], result := (.result .nat (.pair .bool .bool)), + body := (.«let» 1 (.pair (.adt 1) .bool) (.call 2 [(.var 0)]) (.«match» (.result .nat (.pair .bool .bool)) (.second (.var 1)) [(.arm .true [] (.call 3 [(.var 0), (.first (.var 1))])), (.arm .false [] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])]))])) }) ::( + { parameters := [0], types := [(.adt 0)], result := (.pair (.adt 1) .bool), + body := (.call 4 [(.closure 5 []), (.value .nat (.nat 11)), (.call 6 [(.var 0)])]) }) ::( + { parameters := [0, 1], types := [(.adt 0), (.adt 1)], result := (.result .nat (.pair .bool .bool)), + body := (.«match» (.result .nat (.pair .bool .bool)) (.call 7 [(.var 0), (.var 1)]) [(.arm .some [2] (.build .ok (.result .nat (.pair .bool .bool)) [(.var 2)])), (.arm .none [] (.«match» (.result .nat (.pair .bool .bool)) (.call 8 [(.var 1)]) [(.arm .some [3] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])])])), (.arm .none [] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])])]))]))]) }) ::( + { parameters := [0, 1, 2], types := [(.fn [(.adt 1)] (.option (.adt 1))), .nat, (.adt 1)], result := (.pair (.adt 1) .bool), + body := (.«match» (.pair (.adt 1) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.adt 1) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.adt 1) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.adt 1) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 4 [(.var 0), (.var 3), (.var 4)]))]))]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.«match» (.option (.adt 1)) (.call 9 [(.var 0)]) [(.arm .none [] (.build .none (.option (.adt 1)) [])), (.arm .some [1] (.call 10 [(.var 0), (.var 1)]))]) }) ::( + { parameters := [0], types := [(.adt 0)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.var 0), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0))]) }) ::( + { parameters := [0, 1], types := [(.adt 0), (.adt 1)], result := (.option .nat), + body := (.«match» (.option .nat) (.call 8 [(.var 1)]) [(.arm .none [] (.build .none (.option .nat) [])), (.arm .some [2] (.cond (.call 11 [(.var 0), (.var 2)]) (.build .some (.option .nat) [(.var 2)]) (.build .none (.option .nat) [])))]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option .nat), + body := (.build .some (.option .nat) [(.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 2)), + body := (.«match» (.option (.adt 2)) (.«match» (.option (.adt 2)) (.«match» (.option (.adt 2)) (.cond (.call 12 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 0) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [1] (.build .some (.option (.adt 2)) [(.var 1)])), (.arm .none [] (.cond (.call 13 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 1) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]) [(.arm .some [2] (.build .some (.option (.adt 2)) [(.var 2)])), (.arm .none [] (.«match» (.option (.adt 2)) (.cond (.call 14 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 2) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [3] (.build .some (.option (.adt 2)) [(.var 3)])), (.arm .none [] (.cond (.call 15 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 3) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]))]) [(.arm .some [4] (.build .some (.option (.adt 2)) [(.var 4)])), (.arm .none [] (.«match» (.option (.adt 2)) (.«match» (.option (.adt 2)) (.cond (.call 16 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 4) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [5] (.build .some (.option (.adt 2)) [(.var 5)])), (.arm .none [] (.cond (.call 17 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 5) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]) [(.arm .some [6] (.build .some (.option (.adt 2)) [(.var 6)])), (.arm .none [] (.«match» (.option (.adt 2)) (.cond (.call 18 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 6) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [7] (.build .some (.option (.adt 2)) [(.var 7)])), (.arm .none [] (.cond (.call 19 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 7) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]))]))]) }) ::( + { parameters := [0, 1], types := [(.adt 1), (.adt 2)], result := (.option (.adt 1)), + body := (.«match» (.option (.adt 1)) (.var 1) [(.arm (.adt 0) [] (.call 20 [(.var 0)])), (.arm (.adt 1) [] (.call 21 [(.var 0)])), (.arm (.adt 2) [] (.call 22 [(.var 0)])), (.arm (.adt 3) [] (.call 23 [(.var 0)])), (.arm (.adt 4) [] (.call 24 [(.var 0)])), (.arm (.adt 5) [] (.call 25 [(.var 0)])), (.arm (.adt 6) [] (.call 26 [(.var 0)])), (.arm (.adt 7) [] (.call 27 [(.var 0)]))]) }) ::( + { parameters := [0, 1], types := [(.adt 0), .nat], result := .bool, + body := (.cond (.prim .natLe [(.var 1), (.value .nat (.nat 3))]) (.cond (.prim .natEq [(.var 1), (.value .nat (.nat 3))]) (.build .true .bool []) (.prim .boolNot [(.cond (.call 28 [(.var 0)]) (.cond (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 1))]) (.cond (.call 29 [(.var 0)]) (.call 30 [(.var 0)]) (.build .false .bool [])) (.build .false .bool [])) (.build .false .bool []))])) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 1), (.value .nat (.nat 0))]) (.call 29 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 2), (.value .nat (.nat 0))]) (.call 30 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 3), (.value .nat (.nat 0))]) (.call 31 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 4), (.value .nat (.nat 0))]) (.call 32 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 0))]) (.prim .natLe [(.value .nat (.nat 2)), (.prim .natAdd [(.prim .natAdd [(.prim .natAdd [(.field (.var 0) 1), (.field (.var 0) 2)]), (.field (.var 0) 3)]), (.field (.var 0) 4)])]) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 0))]) (.cond (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 1))]) (.prim .natEq [(.field (.field (.var 0) 0) 5), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 7), (.value .nat (.nat 0))]) (.cond (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 1))]) (.call 28 [(.field (.var 0) 0)]) (.build .false .bool [])) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natLt [(.field (.var 0) 8), (.value .nat (.nat 3))]) (.cond (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 0))]) (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .true .bool []) (.cond (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 1))]) (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .true .bool []) (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 2))]) (.prim .natEq [(.field (.var 0) 7), (.value .nat (.nat 1))]) (.build .false .bool [])))) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 12 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 33 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 13 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 34 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 14 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 35 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 15 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 36 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 16 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 37 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 17 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 38 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 18 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 39 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 19 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 40 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.prim .natLt [(.field (.var 0) 4), (.value .nat (.nat 90))]) }) ::( + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.prim .natLt [(.value .nat (.nat 380)), (.field (.var 0) 0)]) }) ::( + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.prim .natLt [(.value .nat (.nat 90)), (.field (.var 0) 1)]) }) ::( + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.prim .natLt [(.value .nat (.nat 20)), (.field (.var 0) 2)]) }) ::( + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.prim .natLt [(.value .nat (.nat 12)), (.field (.var 0) 3)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.value .nat (.nat 1)), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.value .nat (.nat 1)), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.value .nat (.nat 1)), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.value .nat (.nat 1)), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.value .nat (.nat 1)), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.value .nat (.nat 1)), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.value .nat (.nat 1)), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.prim .natAdd [(.field (.var 0) 8), (.value .nat (.nat 1))])]) }) ::[]) } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .core, items := ((.enum (.adt 0) [{ number := 0, fields := [.nat, .nat, .nat, .nat, .nat, .nat] }]) :: + (.enum (.adt 1) [{ number := 0, fields := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat] }]) :: + (.enum (.adt 2) [{ number := 0, fields := [] }, { number := 1, fields := [] }, { number := 2, fields := [] }, { number := 3, fields := [] }, { number := 4, fields := [] }, { number := 5, fields := [] }, { number := 6, fields := [] }, { number := 7, fields := [] }]) :: + (.enum (.fn 0) [{ number := 5, fields := [] }]) :: + (.apply 0 [(.adt 1)] (.option (.adt 1)) true [{ function := 5, captures := [], functionFallible := true }]) :: + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := .nat }, { pattern := (.bind (.generated .binding 3)), type := .nat }, { pattern := (.bind (.generated .binding 4)), type := .nat }, { pattern := (.bind (.generated .binding 5)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 1)) none (.call (.function 1) [(.construct (.adt 0 0) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1)), (.copy (.generated .binding 2)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4)), (.copy (.generated .binding 5))])] true))] (.matchOn (.move (.generated .holder 1)) [(.mk (.ok (.bind (.generated .binding 6))) (.mk [] (.succeed (.copy (.generated .binding 6))))), (.mk (.err .wild) (.mk [] (.succeed (.lit (.nat 9)))))]))) :: + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible (.result .nat (.pair .bool .bool))) (.mk [(.mk (.bind (.generated .binding 1)) (some (.pair (.adt 1) .bool)) (.call (.function 2) [(.clone (.generated .binding 0))] true)), (.mk (.bind (.generated .holder 3)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 2))]) none (.move (.generated .binding 1)))] (.move (.generated .part 2)))))] (.cond (.move (.generated .holder 3)) (.mk [] (.succeed (.call (.function 3) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 4)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 4))))] false))) (.mk [] (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))])))))) :: + (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible (.pair (.adt 1) .bool)) (.mk [] (.call (.function 4) [(.construct (.closure 0 5) []), (.lit (.nat 11)), (.call (.function 6) [(.move (.generated .binding 0))] false)] false))) :: + (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 1) }] (.result .nat (.pair .bool .bool)) (.mk [(.mk (.bind (.generated .holder 5)) none (.call (.function 7) [(.move (.generated .binding 0)), (.clone (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 5)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 6)) none (.call (.function 8) [(.move (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 6)) [(.mk .none (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))]))), (.mk (.some .wild) (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))])))]))) :: + (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := (.adt 1) }] (.fallible (.pair (.adt 1) .bool)) (.mk [(.mk (.bind (.generated .holder 7)) none (.copy (.generated .binding 1)))] (.cond (.isZero (.generated .holder 7)) (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 7))), (.mk (.bind (.generated .holder 9)) none (.block (.mk [(.mk (.bind (.generated .callee 8)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 8) [(.clone (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 9)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))]))))) :: + (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.fallible (.option (.adt 1))) (.mk [(.mk (.bind (.generated .holder 10)) none (.call (.function 9) [(.clone (.generated .binding 0))] true))] (.matchOn (.move (.generated .holder 10)) [(.mk .none (.mk [] (.succeed (.construct (.none (.adt 1)) [])))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.call (.function 10) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false)))]))) :: + (.function (.generated .function 6) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.move (.generated .binding 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0))]))) :: + (.function (.generated .function 7) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 1) }] (.option .nat) (.mk [(.mk (.bind (.generated .holder 11)) none (.call (.function 8) [(.move (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 11)) [(.mk .none (.mk [] (.construct (.none .nat) []))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.cond (.call (.function 11) [(.move (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.mk [] (.construct .some [(.copy (.generated .binding 2))])) (.mk [] (.construct (.none .nat) [])))))]))) :: + (.function (.generated .function 8) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.option .nat) (.mk [] (.construct .some [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 12))]) (.mk [] (.move (.generated .part 12))))])]))) :: + (.function (.generated .function 9) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.fallible (.option (.adt 2))) (.mk [(.mk (.bind (.generated .holder 16)) none (.block (.mk [(.mk (.bind (.generated .holder 14)) none (.block (.mk [(.mk (.bind (.generated .holder 13)) none (.cond (.call (.function 12) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 0) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [] (.cond (.call (.function 13) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 1) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.construct .some [(.move (.generated .binding 1))])))]))))] (.matchOn (.move (.generated .holder 14)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 15)) none (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 2) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 15)) [(.mk .none (.mk [] (.cond (.call (.function 15) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 3) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.construct .some [(.move (.generated .binding 3))])))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.construct .some [(.move (.generated .binding 2))])))]))))] (.matchOn (.move (.generated .holder 16)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 18)) none (.block (.mk [(.mk (.bind (.generated .holder 17)) none (.cond (.call (.function 16) [(.clone (.generated .binding 0))] true) (.mk [] (.construct .some [(.construct (.adt 2 4) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 17)) [(.mk .none (.mk [] (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 5) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.construct .some [(.move (.generated .binding 5))])))]))))] (.matchOn (.move (.generated .holder 18)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 19)) none (.cond (.call (.function 18) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 6) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 19)) [(.mk .none (.mk [] (.cond (.call (.function 19) [(.move (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.construct (.adt 2 7) [])]))) (.mk [] (.succeed (.construct (.none (.adt 2)) [])))))), (.mk (.some (.bind (.generated .binding 7))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 7))]))))]))), (.mk (.some (.bind (.generated .binding 6))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 6))]))))]))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 4))]))))]))) :: + (.function (.generated .function 10) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 2) }] (.fallible (.option (.adt 1))) (.mk [(.mk (.bind (.generated .holder 20)) none (.move (.generated .binding 1)))] (.matchOn (.move (.generated .holder 20)) [(.mk (.adt 2 0 []) (.mk [] (.succeed (.call (.function 20) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 1 []) (.mk [] (.succeed (.call (.function 21) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 2 []) (.mk [] (.succeed (.call (.function 22) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 3 []) (.mk [] (.succeed (.call (.function 23) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 4 []) (.mk [] (.call (.function 24) [(.move (.generated .binding 0))] false))), (.mk (.adt 2 5 []) (.mk [] (.succeed (.call (.function 25) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 6 []) (.mk [] (.succeed (.call (.function 26) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 7 []) (.mk [] (.call (.function 27) [(.move (.generated .binding 0))] false)))]))) :: + (.function (.generated .function 11) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .operand 21)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 22)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natLe) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false) (.mk [(.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 24)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 28)) none (.cond (.call (.function 28) [(.clone (.generated .binding 0))] false) (.mk [(.mk (.bind (.generated .operand 26)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 25))]) (.mk [] (.move (.generated .part 25))))])), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] false) (.mk [] (.cond (.call (.function 29) [(.clone (.generated .binding 0))] false) (.mk [] (.call (.function 30) [(.move (.generated .binding 0))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))))] (.call (.runtime .boolNot) [(.move (.generated .operand 28))] false)))) (.mk [] (.lit (.bool false)))))) :: + (.function (.generated .function 12) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .operand 30)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 29)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 29))))])), (.mk (.bind (.generated .operand 31)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] false) (.mk [] (.call (.function 29) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 32)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 32))))])] false)) (.mk [] (.lit (.bool false)))))) :: + (.function (.generated .function 13) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .operand 34)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 33)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 33))))])), (.mk (.bind (.generated .operand 35)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 34)), (.move (.generated .operand 35))] false) (.mk [] (.call (.function 30) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 36)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 36))))])] false)) (.mk [] (.lit (.bool false)))))) :: + (.function (.generated .function 14) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .operand 38)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 37)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 37))))])), (.mk (.bind (.generated .operand 39)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 38)), (.move (.generated .operand 39))] false) (.mk [] (.call (.function 31) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 40)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 40))))])] false)) (.mk [] (.lit (.bool false)))))) :: + (.function (.generated .function 15) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .operand 42)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 41)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 41))))])), (.mk (.bind (.generated .operand 43)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 42)), (.move (.generated .operand 43))] false) (.mk [] (.call (.function 32) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 44)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 44))))])] false)) (.mk [] (.lit (.bool false)))))) :: + (.function (.generated .function 16) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.fallible .bool) (.mk [(.mk (.bind (.generated .operand 46)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 45)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 45))))])), (.mk (.bind (.generated .operand 47)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 46)), (.move (.generated .operand 47))] false) (.mk [(.mk (.bind (.generated .operand 58)) none (.lit (.nat 2))), (.mk (.bind (.generated .operand 59)) none (.block (.mk [(.mk (.bind (.generated .operand 56)) none (.block (.mk [(.mk (.bind (.generated .operand 53)) none (.block (.mk [(.mk (.bind (.generated .operand 50)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 48)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 48))))])), (.mk (.bind (.generated .operand 51)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 49)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 49))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 50)), (.move (.generated .operand 51))] true)))), (.mk (.bind (.generated .operand 54)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 52)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 52))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] true)))), (.mk (.bind (.generated .operand 57)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 55)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 55))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 56)), (.move (.generated .operand 57))] true))))] (.succeed (.call (.runtime .natLe) [(.move (.generated .operand 58)), (.move (.generated .operand 59))] false))) (.mk [] (.succeed (.lit (.bool false))))))) :: + (.function (.generated .function 17) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .operand 61)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 60)), .wild, .wild]) (.mk [] (.move (.generated .part 60))))])), (.mk (.bind (.generated .operand 62)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 61)), (.move (.generated .operand 62))] false) (.mk [(.mk (.bind (.generated .operand 64)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 63)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 63))))])), (.mk (.bind (.generated .operand 65)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 64)), (.move (.generated .operand 65))] false) (.mk [(.mk (.bind (.generated .operand 69)) none (.block (.mk [(.mk (.bind (.generated .holder 68)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 67)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 67))))]))] (.matchOn (.move (.generated .holder 68)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 66))]) (.mk [] (.move (.generated .part 66))))])))), (.mk (.bind (.generated .operand 70)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 69)), (.move (.generated .operand 70))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))))) :: + (.function (.generated .function 18) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .operand 72)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 71)), .wild]) (.mk [] (.move (.generated .part 71))))])), (.mk (.bind (.generated .operand 73)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 72)), (.move (.generated .operand 73))] false) (.mk [(.mk (.bind (.generated .operand 75)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 74)), .wild, .wild]) (.mk [] (.move (.generated .part 74))))])), (.mk (.bind (.generated .operand 76)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 75)), (.move (.generated .operand 76))] false) (.mk [] (.call (.function 28) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 77)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 77))))])] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))))) :: + (.function (.generated .function 19) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .operand 79)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 78))]) (.mk [] (.move (.generated .part 78))))])), (.mk (.bind (.generated .operand 80)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 79)), (.move (.generated .operand 80))] false) (.mk [(.mk (.bind (.generated .operand 82)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))])), (.mk (.bind (.generated .operand 83)) none (.lit (.nat 0)))] (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 82)), (.move (.generated .operand 83))] false) (.mk [(.mk (.bind (.generated .operand 85)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 84)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 84))))])), (.mk (.bind (.generated .operand 86)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 85)), (.move (.generated .operand 86))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 88)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 87))]) (.mk [] (.move (.generated .part 87))))])), (.mk (.bind (.generated .operand 89)) none (.lit (.nat 1)))] (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 88)), (.move (.generated .operand 89))] false) (.mk [(.mk (.bind (.generated .operand 91)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 90)), .wild, .wild]) (.mk [] (.move (.generated .part 90))))])), (.mk (.bind (.generated .operand 92)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 94)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 93))]) (.mk [] (.move (.generated .part 93))))])), (.mk (.bind (.generated .operand 95)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 94)), (.move (.generated .operand 95))] false) (.mk [(.mk (.bind (.generated .operand 97)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 96)), .wild]) (.mk [] (.move (.generated .part 96))))])), (.mk (.bind (.generated .operand 98)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 97)), (.move (.generated .operand 98))] false)) (.mk [] (.lit (.bool false))))))))) (.mk [] (.lit (.bool false)))))) :: + (.function (.generated .function 20) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.option (.adt 1)) (.mk [] (.cond (.call (.function 12) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 33) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))))) :: + (.function (.generated .function 21) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.option (.adt 1)) (.mk [] (.cond (.call (.function 13) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 34) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))))) :: + (.function (.generated .function 22) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.option (.adt 1)) (.mk [] (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 35) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))))) :: + (.function (.generated .function 23) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.option (.adt 1)) (.mk [] (.cond (.call (.function 15) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 36) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))))) :: + (.function (.generated .function 24) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.fallible (.option (.adt 1))) (.mk [] (.cond (.call (.function 16) [(.clone (.generated .binding 0))] true) (.mk [] (.succeed (.construct .some [(.call (.function 37) [(.move (.generated .binding 0))] false)]))) (.mk [] (.succeed (.construct (.none (.adt 1)) [])))))) :: + (.function (.generated .function 25) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.option (.adt 1)) (.mk [] (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 38) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))))) :: + (.function (.generated .function 26) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.option (.adt 1)) (.mk [] (.cond (.call (.function 18) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 39) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))))) :: + (.function (.generated .function 27) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.fallible (.option (.adt 1))) (.mk [] (.cond (.call (.function 19) [(.clone (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.call (.function 40) [(.move (.generated .binding 0))] true)]))) (.mk [] (.succeed (.construct (.none (.adt 1)) [])))))) :: + (.function (.generated .function 28) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .operand 100)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 99)), .wild]) (.mk [] (.move (.generated .part 99))))])), (.mk (.bind (.generated .operand 101)) none (.lit (.nat 90)))] (.call (.runtime .natLt) [(.move (.generated .operand 100)), (.move (.generated .operand 101))] false))) :: + (.function (.generated .function 29) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .operand 103)) none (.lit (.nat 380))), (.mk (.bind (.generated .operand 104)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [(.bind (.generated .part 102)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 102))))]))] (.call (.runtime .natLt) [(.move (.generated .operand 103)), (.move (.generated .operand 104))] false))) :: + (.function (.generated .function 30) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .operand 106)) none (.lit (.nat 90))), (.mk (.bind (.generated .operand 107)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 105)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 105))))]))] (.call (.runtime .natLt) [(.move (.generated .operand 106)), (.move (.generated .operand 107))] false))) :: + (.function (.generated .function 31) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .operand 109)) none (.lit (.nat 20))), (.mk (.bind (.generated .operand 110)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 108)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 108))))]))] (.call (.runtime .natLt) [(.move (.generated .operand 109)), (.move (.generated .operand 110))] false))) :: + (.function (.generated .function 32) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .operand 112)) none (.lit (.nat 12))), (.mk (.bind (.generated .operand 113)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, (.bind (.generated .part 111)), .wild, .wild]) (.mk [] (.move (.generated .part 111))))]))] (.call (.runtime .natLt) [(.move (.generated .operand 112)), (.move (.generated .operand 113))] false))) :: + (.function (.generated .function 33) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 114)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 114))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 115)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 115))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 116)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 116))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 117)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 117))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 118)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 118))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 119)), .wild, .wild]) (.mk [] (.move (.generated .part 119))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 120)), .wild]) (.mk [] (.move (.generated .part 120))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 121))]) (.mk [] (.move (.generated .part 121))))])]))) :: + (.function (.generated .function 34) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 122)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 122))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 123)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 123))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 124)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 124))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 125)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 125))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 126)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 126))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 127)), .wild, .wild]) (.mk [] (.move (.generated .part 127))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 128)), .wild]) (.mk [] (.move (.generated .part 128))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 129))]) (.mk [] (.move (.generated .part 129))))])]))) :: + (.function (.generated .function 35) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 130)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 130))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 131)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 131))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 132)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 132))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 133)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 133))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 134)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 134))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 135)), .wild, .wild]) (.mk [] (.move (.generated .part 135))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 136)), .wild]) (.mk [] (.move (.generated .part 136))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 137))]) (.mk [] (.move (.generated .part 137))))])]))) :: + (.function (.generated .function 36) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 138)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 138))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 139)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 139))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 140)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 140))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 141)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 141))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 142)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 142))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 143)), .wild, .wild]) (.mk [] (.move (.generated .part 143))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 144)), .wild]) (.mk [] (.move (.generated .part 144))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 145))]) (.mk [] (.move (.generated .part 145))))])]))) :: + (.function (.generated .function 37) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 146)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 146))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 147)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 147))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 148)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 148))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 149)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 149))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 150)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 150))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 151)), .wild, .wild]) (.mk [] (.move (.generated .part 151))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 152)), .wild]) (.mk [] (.move (.generated .part 152))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 153))]) (.mk [] (.move (.generated .part 153))))])]))) :: + (.function (.generated .function 38) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 154)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 154))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 155)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 155))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 156)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 156))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 157)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 157))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 158)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 158))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 159)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 159))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 160)), .wild]) (.mk [] (.move (.generated .part 160))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 161))]) (.mk [] (.move (.generated .part 161))))])]))) :: + (.function (.generated .function 39) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 162)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 162))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 163)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 163))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 164)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 164))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 165)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 165))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 166)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 166))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 167)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 167))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 168)), .wild, .wild]) (.mk [] (.move (.generated .part 168))))]), (.lit (.nat 1)), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 169))]) (.mk [] (.move (.generated .part 169))))])]))) :: + (.function (.generated .function 40) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.fallible (.adt 1)) (.mk [] (.succeed (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 170)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 170))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 171)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 171))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 172)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 172))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 173)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 173))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 174)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 174))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 175)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 175))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 176)), .wild, .wild]) (.mk [] (.move (.generated .part 176))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 177)), .wild]) (.mk [] (.move (.generated .part 177))))]), (.block (.mk [(.mk (.bind (.generated .operand 179)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 178))]) (.mk [] (.move (.generated .part 178))))])), (.mk (.bind (.generated .operand 180)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 179)), (.move (.generated .operand 180))] true)))])))) :: + []) } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [(([(.adt 1)], (.option (.adt 1))), true)] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.call (.function 1) [(.construct (.adt 0 0) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1)), (.copy (.generated .binding 2)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4)), (.copy (.generated .binding 5))])] true))], (.matchOn (.move (.generated .holder 1)) [(.mk (.ok (.bind (.generated .binding 6))) (.mk [] (.succeed (.copy (.generated .binding 6))))), (.mk (.err .wild) (.mk [] (.succeed (.lit (.nat 9)))))]), [(5, .nat, (some 5)), (4, .nat, (some 4)), (3, .nat, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.matchArms (st := (.result .nat (.pair .bool .bool))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))))))) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(6, .nat, (some 6)), (5, .nat, (some 5)), (4, .nat, (some 4)), (3, .nat, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, .nat, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.copy (.generated .binding 6)))) (Corr.mCons (Γ' := [(7, (.pair .bool .bool), none), (5, .nat, (some 5)), (4, .nat, (some 4)), (3, .nat, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, .nat, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.lit (.nat 9)))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl)))) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some (.pair (.adt 1) .bool)) (.call (.function 2) [(.clone (.generated .binding 0))] true)), (.mk (.bind (.generated .holder 3)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 2))]) none (.move (.generated .binding 1)))] (.move (.generated .part 2)))))], (.cond (.move (.generated .holder 3)) (.mk [] (.succeed (.call (.function 3) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 4)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 4))))] false))) (.mk [] (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))])))), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.matchBool (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 2))]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 2))) (Corr.second (ta := (.adt 1)) (tb := .bool) (Corr.var rfl rfl) rfl)) rfl rfl (Corr.kIf (la := []) (ta := (.succeed (.call (.function 3) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 4)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 4))))] false))) (lb := []) (tb := (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))) (Corr.fOfB (Corr.callOps (ts := [(.adt 0), (.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 4)), .wild]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 4))) (Corr.first (ta := (.adt 1)) (tb := .bool) (Corr.var rfl rfl) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)))))⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 4) [(.construct (.closure 0 5) []), (.lit (.nat 11)), (.call (.function 6) [(.move (.generated .binding 0))] false)] false), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.callF (ts := [(.fn [(.adt 1)] (.option (.adt 1))), .nat, (.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl)⟩⟩ + +theorem fun3 : FunOK program krate flags 3 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 5)) none (.call (.function 7) [(.move (.generated .binding 0)), (.clone (.generated .binding 1))] false))], (.matchOn (.move (.generated .holder 5)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 6)) none (.call (.function 8) [(.move (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 6)) [(.mk .none (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))]))), (.mk (.some .wild) (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))])))]), [(1, (.adt 1), (some 1)), (0, (.adt 0), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0), (.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.adt 1), (some 1)), (0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 6)) none (.call (.function 8) [(.move (.generated .binding 1))] false))]) (tail := (.matchOn (.move (.generated .holder 6)) [(.mk .none (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))]))), (.mk (.some .wild) (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))])) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, (.adt 1), (some 1)), (0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.adt 1), (some 1)), (0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))])) (Corr.mCons (Γ' := [(3, .nat, none), (1, (.adt 1), (some 1)), (0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)) rfl rfl rfl)) rfl rfl rfl)⟩⟩ + +theorem fun4 : FunOK program krate flags 4 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 7)) none (.copy (.generated .binding 1)))], (.cond (.isZero (.generated .holder 7)) (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 7))), (.mk (.bind (.generated .holder 9)) none (.block (.mk [(.mk (.bind (.generated .callee 8)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 8) [(.clone (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 9)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))]))), [(2, (.adt 1), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.adt 1)] (.option (.adt 1))), (some 0))], rfl, rfl, + (Corr.matchNat (sl := (some 3)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (lb := [(.mk (.bind (.generated .holder 9)) none (.block (.mk [(.mk (.bind (.generated .callee 8)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 8) [(.clone (.generated .binding 2))] true))))]) (tb := (.matchOn (.move (.generated .holder 9)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))])) (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))))) (Corr.matchArms (st := (.option (.adt 1))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 8)) (some (.fn 0)) (.clone (.generated .binding 0)))]) (tail := (.apply (.generated .callee 8) [(.clone (.generated .binding 2))] true)) (Corr.apply (ps := [(.adt 1)]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (2, (.adt 1), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.adt 1)] (.option (.adt 1))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true))))) (Corr.mCons (Γ' := [(4, (.adt 1), (some 4)), (3, .nat, (some 3)), (2, (.adt 1), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.adt 1)] (.option (.adt 1))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.adt 1)] (.option (.adt 1))), .nat, (.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))))))) rfl rfl rfl)))⟩⟩ + +theorem fun5 : FunOK program krate flags 5 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 10)) none (.call (.function 9) [(.clone (.generated .binding 0))] true))], (.matchOn (.move (.generated .holder 10)) [(.mk .none (.mk [] (.succeed (.construct (.none (.adt 1)) [])))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.call (.function 10) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false)))]), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct (.none (.adt 1)) []))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 10) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.adt 1), (.adt 2)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl)⟩⟩ + +theorem fun6 : FunOK program krate flags 6 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.move (.generated .binding 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0))]), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))))))))) rfl)⟩⟩ + +theorem fun7 : FunOK program krate flags 7 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 11)) none (.call (.function 8) [(.move (.generated .binding 1))] false))], (.matchOn (.move (.generated .holder 11)) [(.mk .none (.mk [] (.construct (.none .nat) []))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.cond (.call (.function 11) [(.move (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.mk [] (.construct .some [(.copy (.generated .binding 2))])) (.mk [] (.construct (.none .nat) [])))))]), [(1, (.adt 1), (some 1)), (0, (.adt 0), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.adt 1), (some 1)), (0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none .nat) [])) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, (.adt 1), (some 1)), (0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 11) [(.move (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.mk [] (.construct .some [(.copy (.generated .binding 2))])) (.mk [] (.construct (.none .nat) [])))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 11) [(.move (.generated .binding 0)), (.copy (.generated .binding 2))] false)) (lk := []) (Corr.callOps (ts := [(.adt 0), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.copy (.generated .binding 2))])) (lb := []) (tb := (.construct (.none .nat) [])) (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun8 : FunOK program krate flags 8 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct .some [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 12))]) (.mk [] (.move (.generated .part 12))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 12))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)⟩⟩ + +theorem fun9 : FunOK program krate flags 9 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 16)) none (.block (.mk [(.mk (.bind (.generated .holder 14)) none (.block (.mk [(.mk (.bind (.generated .holder 13)) none (.cond (.call (.function 12) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 0) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [] (.cond (.call (.function 13) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 1) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.construct .some [(.move (.generated .binding 1))])))]))))] (.matchOn (.move (.generated .holder 14)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 15)) none (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 2) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 15)) [(.mk .none (.mk [] (.cond (.call (.function 15) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 3) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.construct .some [(.move (.generated .binding 3))])))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.construct .some [(.move (.generated .binding 2))])))]))))], (.matchOn (.move (.generated .holder 16)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 18)) none (.block (.mk [(.mk (.bind (.generated .holder 17)) none (.cond (.call (.function 16) [(.clone (.generated .binding 0))] true) (.mk [] (.construct .some [(.construct (.adt 2 4) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 17)) [(.mk .none (.mk [] (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 5) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.construct .some [(.move (.generated .binding 5))])))]))))] (.matchOn (.move (.generated .holder 18)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 19)) none (.cond (.call (.function 18) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 6) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 19)) [(.mk .none (.mk [] (.cond (.call (.function 19) [(.move (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.construct (.adt 2 7) [])]))) (.mk [] (.succeed (.construct (.none (.adt 2)) [])))))), (.mk (.some (.bind (.generated .binding 7))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 7))]))))]))), (.mk (.some (.bind (.generated .binding 6))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 6))]))))]))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 4))]))))]), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 14)) none (.block (.mk [(.mk (.bind (.generated .holder 13)) none (.cond (.call (.function 12) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 0) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [] (.cond (.call (.function 13) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 1) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.construct .some [(.move (.generated .binding 1))])))]))))]) (tail := (.matchOn (.move (.generated .holder 14)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 15)) none (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 2) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 15)) [(.mk .none (.mk [] (.cond (.call (.function 15) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 3) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.construct .some [(.move (.generated .binding 3))])))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.construct .some [(.move (.generated .binding 2))])))])) (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 13)) none (.cond (.call (.function 12) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 0) [])])) (.mk [] (.construct (.none (.adt 2)) []))))]) (tail := (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [] (.cond (.call (.function 13) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 1) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.construct .some [(.move (.generated .binding 1))])))])) (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.cond (lc := []) (ce := (.call (.function 12) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 2 0) [])])) (lb := []) (tb := (.construct (.none (.adt 2)) [])) (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 13) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 1) [])])) (.mk [] (.construct (.none (.adt 2)) [])))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.move (.generated .binding 1))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 13) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 2 1) [])])) (lb := []) (tb := (.construct (.none (.adt 2)) [])) (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) rfl rfl rfl)) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 15)) none (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 2) [])])) (.mk [] (.construct (.none (.adt 2)) []))))]) (tail := (.matchOn (.move (.generated .holder 15)) [(.mk .none (.mk [] (.cond (.call (.function 15) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 3) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.construct .some [(.move (.generated .binding 3))])))])) (Corr.mCons (Γ' := [(2, (.adt 2), (some 2)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.move (.generated .binding 2))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.cond (lc := []) (ce := (.call (.function 14) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 2 2) [])])) (lb := []) (tb := (.construct (.none (.adt 2)) [])) (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 15) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 3) [])])) (.mk [] (.construct (.none (.adt 2)) [])))) (Corr.mCons (Γ' := [(3, (.adt 2), (some 3)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.move (.generated .binding 3))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 15) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 2 3) [])])) (lb := []) (tb := (.construct (.none (.adt 2)) [])) (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) rfl rfl rfl)) rfl rfl rfl)) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 18)) none (.block (.mk [(.mk (.bind (.generated .holder 17)) none (.cond (.call (.function 16) [(.clone (.generated .binding 0))] true) (.mk [] (.construct .some [(.construct (.adt 2 4) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 17)) [(.mk .none (.mk [] (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 5) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.construct .some [(.move (.generated .binding 5))])))]))))]) (tail := (.matchOn (.move (.generated .holder 18)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 19)) none (.cond (.call (.function 18) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 6) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 19)) [(.mk .none (.mk [] (.cond (.call (.function 19) [(.move (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.construct (.adt 2 7) [])]))) (.mk [] (.succeed (.construct (.none (.adt 2)) [])))))), (.mk (.some (.bind (.generated .binding 7))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 7))]))))]))), (.mk (.some (.bind (.generated .binding 6))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 6))]))))])) (Corr.mCons (Γ' := [(4, (.adt 2), (some 4)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct .some [(.move (.generated .binding 4))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 17)) none (.cond (.call (.function 16) [(.clone (.generated .binding 0))] true) (.mk [] (.construct .some [(.construct (.adt 2 4) [])])) (.mk [] (.construct (.none (.adt 2)) []))))]) (tail := (.matchOn (.move (.generated .holder 17)) [(.mk .none (.mk [] (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 5) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.construct .some [(.move (.generated .binding 5))])))])) (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.cond (lc := []) (ce := (.call (.function 16) [(.clone (.generated .binding 0))] true)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 2 4) [])])) (lb := []) (tb := (.construct (.none (.adt 2)) [])) (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 5) [])])) (.mk [] (.construct (.none (.adt 2)) [])))) (Corr.mCons (Γ' := [(5, (.adt 2), (some 5)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.move (.generated .binding 5))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 17) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 2 5) [])])) (lb := []) (tb := (.construct (.none (.adt 2)) [])) (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) rfl rfl rfl)) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 19)) none (.cond (.call (.function 18) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 6) [])])) (.mk [] (.construct (.none (.adt 2)) []))))]) (tail := (.matchOn (.move (.generated .holder 19)) [(.mk .none (.mk [] (.cond (.call (.function 19) [(.move (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.construct (.adt 2 7) [])]))) (.mk [] (.succeed (.construct (.none (.adt 2)) [])))))), (.mk (.some (.bind (.generated .binding 7))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 7))]))))])) (Corr.mCons (Γ' := [(6, (.adt 2), (some 6)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct .some [(.move (.generated .binding 6))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.cond (lc := []) (ce := (.call (.function 18) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 2 6) [])])) (lb := []) (tb := (.construct (.none (.adt 2)) [])) (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 19) [(.move (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.construct (.adt 2 7) [])]))) (.mk [] (.succeed (.construct (.none (.adt 2)) []))))) (Corr.mCons (Γ' := [(7, (.adt 2), (some 7)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct .some [(.move (.generated .binding 7))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 19) [(.move (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.construct (.adt 2 7) [])]))) (lb := []) (tb := (.succeed (.construct (.none (.adt 2)) []))) (Corr.fOfB (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))) rfl rfl rfl)) rfl rfl rfl)) rfl rfl rfl)⟩⟩ + +theorem fun10 : FunOK program krate flags 10 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 20)) none (.move (.generated .binding 1)))], (.matchOn (.move (.generated .holder 20)) [(.mk (.adt 2 0 []) (.mk [] (.succeed (.call (.function 20) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 1 []) (.mk [] (.succeed (.call (.function 21) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 2 []) (.mk [] (.succeed (.call (.function 22) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 3 []) (.mk [] (.succeed (.call (.function 23) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 4 []) (.mk [] (.call (.function 24) [(.move (.generated .binding 0))] false))), (.mk (.adt 2 5 []) (.mk [] (.succeed (.call (.function 25) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 6 []) (.mk [] (.succeed (.call (.function 26) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 7 []) (.mk [] (.call (.function 27) [(.move (.generated .binding 0))] false)))]), [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.adt 2)) (U := []) (view := false) (idx := [0, 1, 2, 3, 4, 5, 6, 7]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.call (.function 20) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.call (.function 21) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.succeed (.call (.function 22) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 3) (loads := []) (lets := []) (tail := (.succeed (.call (.function 23) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 4) (loads := []) (lets := []) (tail := (.call (.function 24) [(.move (.generated .binding 0))] false)) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 5) (loads := []) (lets := []) (tail := (.succeed (.call (.function 25) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 6) (loads := []) (lets := []) (tail := (.succeed (.call (.function 26) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 7) (loads := []) (lets := []) (tail := (.call (.function 27) [(.move (.generated .binding 0))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.callF (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl)⟩⟩ + +theorem fun11 : FunOK program krate flags 11 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 21)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 22)) none (.lit (.nat 3)))], (.cond (.call (.runtime .natLe) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false) (.mk [(.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 24)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 28)) none (.cond (.call (.function 28) [(.clone (.generated .binding 0))] false) (.mk [(.mk (.bind (.generated .operand 26)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 25))]) (.mk [] (.move (.generated .part 25))))])), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] false) (.mk [] (.cond (.call (.function 29) [(.clone (.generated .binding 0))] false) (.mk [] (.call (.function 30) [(.move (.generated .binding 0))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))))] (.call (.runtime .boolNot) [(.move (.generated .operand 28))] false)))) (.mk [] (.lit (.bool false)))), [(1, .nat, (some 1)), (0, (.adt 0), (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 21)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 22)) none (.lit (.nat 3)))]) (ce := (.call (.runtime .natLe) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 24)) none (.lit (.nat 3)))]) (ta := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 28)) none (.cond (.call (.function 28) [(.clone (.generated .binding 0))] false) (.mk [(.mk (.bind (.generated .operand 26)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 25))]) (.mk [] (.move (.generated .part 25))))])), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] false) (.mk [] (.cond (.call (.function 29) [(.clone (.generated .binding 0))] false) (.mk [] (.call (.function 30) [(.move (.generated .binding 0))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))))] (.call (.runtime .boolNot) [(.move (.generated .operand 28))] false)))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 24)) none (.lit (.nat 3)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 28)) none (.cond (.call (.function 28) [(.clone (.generated .binding 0))] false) (.mk [(.mk (.bind (.generated .operand 26)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 25))]) (.mk [] (.move (.generated .part 25))))])), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] false) (.mk [] (.cond (.call (.function 29) [(.clone (.generated .binding 0))] false) (.mk [] (.call (.function 30) [(.move (.generated .binding 0))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))))]) (tb := (.call (.runtime .boolNot) [(.move (.generated .operand 28))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.prim (ts := [.bool]) (Corr.opsCons (Corr.eOfBNil (Corr.cond (lc := []) (ce := (.call (.function 28) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 26)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 25))]) (.mk [] (.move (.generated .part 25))))])), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))]) (ta := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] false) (.mk [] (.cond (.call (.function 29) [(.clone (.generated .binding 0))] false) (.mk [] (.call (.function 30) [(.move (.generated .binding 0))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 26)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 25))]) (.mk [] (.move (.generated .part 25))))])), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 25))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 29) [(.clone (.generated .binding 0))] false) (.mk [] (.call (.function 30) [(.move (.generated .binding 0))] false)) (.mk [] (.lit (.bool false))))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := []) (ce := (.call (.function 29) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 30) [(.move (.generated .binding 0))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.bOfE (Corr.buildConst rfl))))) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl))) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ + +theorem fun12 : FunOK program krate flags 12 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 30)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 29)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 29))))])), (.mk (.bind (.generated .operand 31)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] false) (.mk [] (.call (.function 29) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 32)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 32))))])] false)) (.mk [] (.lit (.bool false)))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 30)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 29)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 29))))])), (.mk (.bind (.generated .operand 31)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 29))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 29) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 32)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 32))))])] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 32))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ + +theorem fun13 : FunOK program krate flags 13 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 34)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 33)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 33))))])), (.mk (.bind (.generated .operand 35)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 34)), (.move (.generated .operand 35))] false) (.mk [] (.call (.function 30) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 36)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 36))))])] false)) (.mk [] (.lit (.bool false)))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 34)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 33)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 33))))])), (.mk (.bind (.generated .operand 35)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 34)), (.move (.generated .operand 35))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 33))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 30) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 36)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 36))))])] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 36))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ + +theorem fun14 : FunOK program krate flags 14 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 38)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 37)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 37))))])), (.mk (.bind (.generated .operand 39)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 38)), (.move (.generated .operand 39))] false) (.mk [] (.call (.function 31) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 40)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 40))))])] false)) (.mk [] (.lit (.bool false)))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 38)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 37)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 37))))])), (.mk (.bind (.generated .operand 39)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 38)), (.move (.generated .operand 39))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 37))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 31) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 40)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 40))))])] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 40))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ + +theorem fun15 : FunOK program krate flags 15 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 42)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 41)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 41))))])), (.mk (.bind (.generated .operand 43)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 42)), (.move (.generated .operand 43))] false) (.mk [] (.call (.function 32) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 44)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 44))))])] false)) (.mk [] (.lit (.bool false)))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 42)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 41)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 41))))])), (.mk (.bind (.generated .operand 43)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 42)), (.move (.generated .operand 43))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 41))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 32) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 44)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 44))))])] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 44))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ + +theorem fun16 : FunOK program krate flags 16 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 46)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 45)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 45))))])), (.mk (.bind (.generated .operand 47)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 46)), (.move (.generated .operand 47))] false) (.mk [(.mk (.bind (.generated .operand 58)) none (.lit (.nat 2))), (.mk (.bind (.generated .operand 59)) none (.block (.mk [(.mk (.bind (.generated .operand 56)) none (.block (.mk [(.mk (.bind (.generated .operand 53)) none (.block (.mk [(.mk (.bind (.generated .operand 50)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 48)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 48))))])), (.mk (.bind (.generated .operand 51)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 49)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 49))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 50)), (.move (.generated .operand 51))] true)))), (.mk (.bind (.generated .operand 54)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 52)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 52))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] true)))), (.mk (.bind (.generated .operand 57)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 55)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 55))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 56)), (.move (.generated .operand 57))] true))))] (.succeed (.call (.runtime .natLe) [(.move (.generated .operand 58)), (.move (.generated .operand 59))] false))) (.mk [] (.succeed (.lit (.bool false))))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 46)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 45)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 45))))])), (.mk (.bind (.generated .operand 47)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 46)), (.move (.generated .operand 47))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 45))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 58)) none (.lit (.nat 2))), (.mk (.bind (.generated .operand 59)) none (.block (.mk [(.mk (.bind (.generated .operand 56)) none (.block (.mk [(.mk (.bind (.generated .operand 53)) none (.block (.mk [(.mk (.bind (.generated .operand 50)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 48)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 48))))])), (.mk (.bind (.generated .operand 51)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 49)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 49))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 50)), (.move (.generated .operand 51))] true)))), (.mk (.bind (.generated .operand 54)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 52)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 52))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] true)))), (.mk (.bind (.generated .operand 57)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 55)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 55))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 56)), (.move (.generated .operand 57))] true))))]) (ta := (.succeed (.call (.runtime .natLe) [(.move (.generated .operand 58)), (.move (.generated .operand 59))] false))) (lb := []) (tb := (.succeed (.lit (.bool false)))) (Corr.fOfB (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 56)) none (.block (.mk [(.mk (.bind (.generated .operand 53)) none (.block (.mk [(.mk (.bind (.generated .operand 50)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 48)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 48))))])), (.mk (.bind (.generated .operand 51)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 49)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 49))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 50)), (.move (.generated .operand 51))] true)))), (.mk (.bind (.generated .operand 54)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 52)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 52))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] true)))), (.mk (.bind (.generated .operand 57)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 55)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 55))))]))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 56)), (.move (.generated .operand 57))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 53)) none (.block (.mk [(.mk (.bind (.generated .operand 50)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 48)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 48))))])), (.mk (.bind (.generated .operand 51)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 49)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 49))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 50)), (.move (.generated .operand 51))] true)))), (.mk (.bind (.generated .operand 54)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 52)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 52))))]))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 50)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 48)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 48))))])), (.mk (.bind (.generated .operand 51)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 49)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 49))))]))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 50)), (.move (.generated .operand 51))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 48))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 49))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 52))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 55))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.fOfB (Corr.bOfE (Corr.buildConst rfl)))))⟩⟩ + +theorem fun17 : FunOK program krate flags 17 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 61)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 60)), .wild, .wild]) (.mk [] (.move (.generated .part 60))))])), (.mk (.bind (.generated .operand 62)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 61)), (.move (.generated .operand 62))] false) (.mk [(.mk (.bind (.generated .operand 64)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 63)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 63))))])), (.mk (.bind (.generated .operand 65)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 64)), (.move (.generated .operand 65))] false) (.mk [(.mk (.bind (.generated .operand 69)) none (.block (.mk [(.mk (.bind (.generated .holder 68)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 67)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 67))))]))] (.matchOn (.move (.generated .holder 68)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 66))]) (.mk [] (.move (.generated .part 66))))])))), (.mk (.bind (.generated .operand 70)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 69)), (.move (.generated .operand 70))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 61)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 60)), .wild, .wild]) (.mk [] (.move (.generated .part 60))))])), (.mk (.bind (.generated .operand 62)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 61)), (.move (.generated .operand 62))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 60))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 64)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 63)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 63))))])), (.mk (.bind (.generated .operand 65)) none (.lit (.nat 1)))]) (ta := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 64)), (.move (.generated .operand 65))] false) (.mk [(.mk (.bind (.generated .operand 69)) none (.block (.mk [(.mk (.bind (.generated .holder 68)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 67)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 67))))]))] (.matchOn (.move (.generated .holder 68)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 66))]) (.mk [] (.move (.generated .part 66))))])))), (.mk (.bind (.generated .operand 70)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 69)), (.move (.generated .operand 70))] false)) (.mk [] (.lit (.bool false))))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 64)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 63)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 63))))])), (.mk (.bind (.generated .operand 65)) none (.lit (.nat 1)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 64)), (.move (.generated .operand 65))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 63))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 69)) none (.block (.mk [(.mk (.bind (.generated .holder 68)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 67)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 67))))]))] (.matchOn (.move (.generated .holder 68)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 66))]) (.mk [] (.move (.generated .part 66))))])))), (.mk (.bind (.generated .operand 70)) none (.lit (.nat 1)))]) (ta := (.call (.runtime .natEq) [(.move (.generated .operand 69)), (.move (.generated .operand 70))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 68)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 67)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 67))))]))]) (tail := (.matchOn (.move (.generated .holder 68)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 66))]) (.mk [] (.move (.generated .part 66))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 66))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 67))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ + +theorem fun18 : FunOK program krate flags 18 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 72)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 71)), .wild]) (.mk [] (.move (.generated .part 71))))])), (.mk (.bind (.generated .operand 73)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 72)), (.move (.generated .operand 73))] false) (.mk [(.mk (.bind (.generated .operand 75)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 74)), .wild, .wild]) (.mk [] (.move (.generated .part 74))))])), (.mk (.bind (.generated .operand 76)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 75)), (.move (.generated .operand 76))] false) (.mk [] (.call (.function 28) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 77)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 77))))])] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 72)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 71)), .wild]) (.mk [] (.move (.generated .part 71))))])), (.mk (.bind (.generated .operand 73)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 72)), (.move (.generated .operand 73))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 71))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 75)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 74)), .wild, .wild]) (.mk [] (.move (.generated .part 74))))])), (.mk (.bind (.generated .operand 76)) none (.lit (.nat 1)))]) (ta := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 75)), (.move (.generated .operand 76))] false) (.mk [] (.call (.function 28) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 77)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 77))))])] false)) (.mk [] (.lit (.bool false))))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 75)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 74)), .wild, .wild]) (.mk [] (.move (.generated .part 74))))])), (.mk (.bind (.generated .operand 76)) none (.lit (.nat 1)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 75)), (.move (.generated .operand 76))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 74))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 28) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 77)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 77))))])] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 77))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ + +theorem fun19 : FunOK program krate flags 19 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 79)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 78))]) (.mk [] (.move (.generated .part 78))))])), (.mk (.bind (.generated .operand 80)) none (.lit (.nat 3)))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 79)), (.move (.generated .operand 80))] false) (.mk [(.mk (.bind (.generated .operand 82)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))])), (.mk (.bind (.generated .operand 83)) none (.lit (.nat 0)))] (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 82)), (.move (.generated .operand 83))] false) (.mk [(.mk (.bind (.generated .operand 85)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 84)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 84))))])), (.mk (.bind (.generated .operand 86)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 85)), (.move (.generated .operand 86))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 88)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 87))]) (.mk [] (.move (.generated .part 87))))])), (.mk (.bind (.generated .operand 89)) none (.lit (.nat 1)))] (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 88)), (.move (.generated .operand 89))] false) (.mk [(.mk (.bind (.generated .operand 91)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 90)), .wild, .wild]) (.mk [] (.move (.generated .part 90))))])), (.mk (.bind (.generated .operand 92)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 94)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 93))]) (.mk [] (.move (.generated .part 93))))])), (.mk (.bind (.generated .operand 95)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 94)), (.move (.generated .operand 95))] false) (.mk [(.mk (.bind (.generated .operand 97)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 96)), .wild]) (.mk [] (.move (.generated .part 96))))])), (.mk (.bind (.generated .operand 98)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 97)), (.move (.generated .operand 98))] false)) (.mk [] (.lit (.bool false))))))))) (.mk [] (.lit (.bool false)))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 79)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 78))]) (.mk [] (.move (.generated .part 78))))])), (.mk (.bind (.generated .operand 80)) none (.lit (.nat 3)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 79)), (.move (.generated .operand 80))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 78))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 82)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))])), (.mk (.bind (.generated .operand 83)) none (.lit (.nat 0)))]) (ta := (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 82)), (.move (.generated .operand 83))] false) (.mk [(.mk (.bind (.generated .operand 85)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 84)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 84))))])), (.mk (.bind (.generated .operand 86)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 85)), (.move (.generated .operand 86))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 88)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 87))]) (.mk [] (.move (.generated .part 87))))])), (.mk (.bind (.generated .operand 89)) none (.lit (.nat 1)))] (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 88)), (.move (.generated .operand 89))] false) (.mk [(.mk (.bind (.generated .operand 91)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 90)), .wild, .wild]) (.mk [] (.move (.generated .part 90))))])), (.mk (.bind (.generated .operand 92)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 94)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 93))]) (.mk [] (.move (.generated .part 93))))])), (.mk (.bind (.generated .operand 95)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 94)), (.move (.generated .operand 95))] false) (.mk [(.mk (.bind (.generated .operand 97)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 96)), .wild]) (.mk [] (.move (.generated .part 96))))])), (.mk (.bind (.generated .operand 98)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 97)), (.move (.generated .operand 98))] false)) (.mk [] (.lit (.bool false))))))))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 82)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))])), (.mk (.bind (.generated .operand 83)) none (.lit (.nat 0)))]) (ce := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 82)), (.move (.generated .operand 83))] false) (.mk [(.mk (.bind (.generated .operand 85)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 84)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 84))))])), (.mk (.bind (.generated .operand 86)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 85)), (.move (.generated .operand 86))] false)) (.mk [] (.lit (.bool false))))) (lk := []) (Corr.cond (lc := [(.mk (.bind (.generated .operand 82)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))])), (.mk (.bind (.generated .operand 83)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 82)), (.move (.generated .operand 83))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 81))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 85)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 84)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 84))))])), (.mk (.bind (.generated .operand 86)) none (.lit (.nat 1)))]) (ta := (.call (.runtime .natEq) [(.move (.generated .operand 85)), (.move (.generated .operand 86))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 84))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 88)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 87))]) (.mk [] (.move (.generated .part 87))))])), (.mk (.bind (.generated .operand 89)) none (.lit (.nat 1)))]) (tb := (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 88)), (.move (.generated .operand 89))] false) (.mk [(.mk (.bind (.generated .operand 91)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 90)), .wild, .wild]) (.mk [] (.move (.generated .part 90))))])), (.mk (.bind (.generated .operand 92)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 94)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 93))]) (.mk [] (.move (.generated .part 93))))])), (.mk (.bind (.generated .operand 95)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 94)), (.move (.generated .operand 95))] false) (.mk [(.mk (.bind (.generated .operand 97)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 96)), .wild]) (.mk [] (.move (.generated .part 96))))])), (.mk (.bind (.generated .operand 98)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 97)), (.move (.generated .operand 98))] false)) (.mk [] (.lit (.bool false))))))) (Corr.bOfE (Corr.buildConst rfl)) (Corr.cond (lc := [(.mk (.bind (.generated .operand 88)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 87))]) (.mk [] (.move (.generated .part 87))))])), (.mk (.bind (.generated .operand 89)) none (.lit (.nat 1)))]) (ce := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 88)), (.move (.generated .operand 89))] false) (.mk [(.mk (.bind (.generated .operand 91)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 90)), .wild, .wild]) (.mk [] (.move (.generated .part 90))))])), (.mk (.bind (.generated .operand 92)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] false)) (.mk [] (.lit (.bool false))))) (lk := []) (Corr.cond (lc := [(.mk (.bind (.generated .operand 88)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 87))]) (.mk [] (.move (.generated .part 87))))])), (.mk (.bind (.generated .operand 89)) none (.lit (.nat 1)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 88)), (.move (.generated .operand 89))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 87))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 91)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 90)), .wild, .wild]) (.mk [] (.move (.generated .part 90))))])), (.mk (.bind (.generated .operand 92)) none (.lit (.nat 1)))]) (ta := (.call (.runtime .natEq) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 90))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 94)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 93))]) (.mk [] (.move (.generated .part 93))))])), (.mk (.bind (.generated .operand 95)) none (.lit (.nat 2)))]) (tb := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 94)), (.move (.generated .operand 95))] false) (.mk [(.mk (.bind (.generated .operand 97)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 96)), .wild]) (.mk [] (.move (.generated .part 96))))])), (.mk (.bind (.generated .operand 98)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 97)), (.move (.generated .operand 98))] false)) (.mk [] (.lit (.bool false))))) (Corr.bOfE (Corr.buildConst rfl)) (Corr.cond (lc := [(.mk (.bind (.generated .operand 94)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 93))]) (.mk [] (.move (.generated .part 93))))])), (.mk (.bind (.generated .operand 95)) none (.lit (.nat 2)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 94)), (.move (.generated .operand 95))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 93))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 97)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 96)), .wild]) (.mk [] (.move (.generated .part 96))))])), (.mk (.bind (.generated .operand 98)) none (.lit (.nat 1)))]) (ta := (.call (.runtime .natEq) [(.move (.generated .operand 97)), (.move (.generated .operand 98))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 96))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))))))) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ + +theorem fun20 : FunOK program krate flags 20 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 12) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 33) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 12) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 33) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ + +theorem fun21 : FunOK program krate flags 21 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 13) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 34) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 13) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 34) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ + +theorem fun22 : FunOK program krate flags 22 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 35) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 14) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 35) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ + +theorem fun23 : FunOK program krate flags 23 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 15) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 36) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 15) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 36) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ + +theorem fun24 : FunOK program krate flags 24 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 16) [(.clone (.generated .binding 0))] true) (.mk [] (.succeed (.construct .some [(.call (.function 37) [(.move (.generated .binding 0))] false)]))) (.mk [] (.succeed (.construct (.none (.adt 1)) [])))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 16) [(.clone (.generated .binding 0))] true)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.call (.function 37) [(.move (.generated .binding 0))] false)]))) (lb := []) (tb := (.succeed (.construct (.none (.adt 1)) []))) (Corr.fOfB (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))⟩⟩ + +theorem fun25 : FunOK program krate flags 25 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 38) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 17) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 38) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ + +theorem fun26 : FunOK program krate flags 26 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 18) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 39) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 18) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 39) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ + +theorem fun27 : FunOK program krate flags 27 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 19) [(.clone (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.call (.function 40) [(.move (.generated .binding 0))] true)]))) (.mk [] (.succeed (.construct (.none (.adt 1)) [])))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 19) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.call (.function 40) [(.move (.generated .binding 0))] true)]))) (lb := []) (tb := (.succeed (.construct (.none (.adt 1)) []))) (Corr.fOfB (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))⟩⟩ + +theorem fun28 : FunOK program krate flags 28 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 100)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 99)), .wild]) (.mk [] (.move (.generated .part 99))))])), (.mk (.bind (.generated .operand 101)) none (.lit (.nat 90)))], (.call (.runtime .natLt) [(.move (.generated .operand 100)), (.move (.generated .operand 101))] false), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 99))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun29 : FunOK program krate flags 29 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 103)) none (.lit (.nat 380))), (.mk (.bind (.generated .operand 104)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [(.bind (.generated .part 102)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 102))))]))], (.call (.runtime .natLt) [(.move (.generated .operand 103)), (.move (.generated .operand 104))] false), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 102))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun30 : FunOK program krate flags 30 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 106)) none (.lit (.nat 90))), (.mk (.bind (.generated .operand 107)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 105)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 105))))]))], (.call (.runtime .natLt) [(.move (.generated .operand 106)), (.move (.generated .operand 107))] false), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 105))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun31 : FunOK program krate flags 31 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 109)) none (.lit (.nat 20))), (.mk (.bind (.generated .operand 110)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 108)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 108))))]))], (.call (.runtime .natLt) [(.move (.generated .operand 109)), (.move (.generated .operand 110))] false), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 108))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun32 : FunOK program krate flags 32 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 112)) none (.lit (.nat 12))), (.mk (.bind (.generated .operand 113)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, (.bind (.generated .part 111)), .wild, .wild]) (.mk [] (.move (.generated .part 111))))]))], (.call (.runtime .natLt) [(.move (.generated .operand 112)), (.move (.generated .operand 113))] false), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 111))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun33 : FunOK program krate flags 33 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 114)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 114))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 115)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 115))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 116)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 116))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 117)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 117))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 118)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 118))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 119)), .wild, .wild]) (.mk [] (.move (.generated .part 119))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 120)), .wild]) (.mk [] (.move (.generated .part 120))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 121))]) (.mk [] (.move (.generated .part 121))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 114))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 115))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 116))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 117))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 118))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 119))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 120))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 121))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ + +theorem fun34 : FunOK program krate flags 34 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 122)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 122))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 123)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 123))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 124)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 124))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 125)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 125))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 126)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 126))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 127)), .wild, .wild]) (.mk [] (.move (.generated .part 127))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 128)), .wild]) (.mk [] (.move (.generated .part 128))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 129))]) (.mk [] (.move (.generated .part 129))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 122))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 123))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 124))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 125))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 126))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 127))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 128))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 129))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ + +theorem fun35 : FunOK program krate flags 35 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 130)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 130))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 131)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 131))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 132)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 132))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 133)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 133))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 134)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 134))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 135)), .wild, .wild]) (.mk [] (.move (.generated .part 135))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 136)), .wild]) (.mk [] (.move (.generated .part 136))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 137))]) (.mk [] (.move (.generated .part 137))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 130))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 131))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 132))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 133))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 134))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 135))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 136))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 137))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ + +theorem fun36 : FunOK program krate flags 36 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 138)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 138))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 139)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 139))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 140)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 140))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 141)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 141))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 142)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 142))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 143)), .wild, .wild]) (.mk [] (.move (.generated .part 143))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 144)), .wild]) (.mk [] (.move (.generated .part 144))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 145))]) (.mk [] (.move (.generated .part 145))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 138))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 139))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 140))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 141))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 142))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 143))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 144))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 145))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ + +theorem fun37 : FunOK program krate flags 37 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 146)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 146))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 147)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 147))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 148)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 148))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 149)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 149))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 150)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 150))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 151)), .wild, .wild]) (.mk [] (.move (.generated .part 151))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 152)), .wild]) (.mk [] (.move (.generated .part 152))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 153))]) (.mk [] (.move (.generated .part 153))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 146))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 147))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 148))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 149))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 150))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 151))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 152))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 153))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ + +theorem fun38 : FunOK program krate flags 38 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 154)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 154))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 155)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 155))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 156)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 156))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 157)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 157))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 158)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 158))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 159)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 159))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 160)), .wild]) (.mk [] (.move (.generated .part 160))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 161))]) (.mk [] (.move (.generated .part 161))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 154))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 155))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 156))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 157))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 158))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 159))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 160))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 161))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ + +theorem fun39 : FunOK program krate flags 39 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 162)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 162))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 163)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 163))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 164)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 164))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 165)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 165))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 166)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 166))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 167)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 167))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 168)), .wild, .wild]) (.mk [] (.move (.generated .part 168))))]), (.lit (.nat 1)), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 169))]) (.mk [] (.move (.generated .part 169))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 162))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 163))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 164))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 165))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 166))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 167))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 168))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 169))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ + +theorem fun40 : FunOK program krate flags 40 := + ⟨_, rfl, .inl ⟨_, _, [], (.succeed (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 170)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 170))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 171)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 171))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 172)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 172))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 173)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 173))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 174)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 174))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 175)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 175))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 176)), .wild, .wild]) (.mk [] (.move (.generated .part 176))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 177)), .wild]) (.mk [] (.move (.generated .part 177))))]), (.block (.mk [(.mk (.bind (.generated .operand 179)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 178))]) (.mk [] (.move (.generated .part 178))))])), (.mk (.bind (.generated .operand 180)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 179)), (.move (.generated .operand 180))] true)))])), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.fOfB (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 170))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 171))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 172))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 173))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 174))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 175))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 176))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 177))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 179)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 178))]) (.mk [] (.move (.generated .part 178))))])), (.mk (.bind (.generated .operand 180)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 179)), (.move (.generated .operand 180))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 178))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | 3 => exact fun3 + | 4 => exact fun4 + | 5 => exact fun5 + | 6 => exact fun6 + | 7 => exact fun7 + | 8 => exact fun8 + | 9 => exact fun9 + | 10 => exact fun10 + | 11 => exact fun11 + | 12 => exact fun12 + | 13 => exact fun13 + | 14 => exact fun14 + | 15 => exact fun15 + | 16 => exact fun16 + | 17 => exact fun17 + | 18 => exact fun18 + | 19 => exact fun19 + | 20 => exact fun20 + | 21 => exact fun21 + | 22 => exact fun22 + | 23 => exact fun23 + | 24 => exact fun24 + | 25 => exact fun25 + | 26 => exact fun26 + | 27 => exact fun27 + | 28 => exact fun28 + | 29 => exact fun29 + | 30 => exact fun30 + | 31 => exact fun31 + | 32 => exact fun32 + | 33 => exact fun33 + | 34 => exact fun34 + | 35 => exact fun35 + | 36 => exact fun36 + | 37 => exact fun37 + | 38 => exact fun38 + | 39 => exact fun39 + | 40 => exact fun40 + | _ + 41 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.RustCore diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R1.lean b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R1.lean new file mode 100644 index 000000000..e1cdbdf9b --- /dev/null +++ b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R1.lean @@ -0,0 +1,409 @@ +import LexLeanPreservation.Core +import LexLeanPreservation.Values +import LexLeanPreservation.Primitives +import LexLeanPreservation.Fixed +import LexLeanPreservation.Keys +import LexLeanPreservation.Templates +import LexLeanPreservation.Validate +import Reasoning.Budget +import Reasoning.Clinic +import Reasoning.Main +import Reasoning.Planner +import Reasoning.Screening +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +set_option linter.unusedVariables false +namespace LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1 + +def __prog : _root_.LexLeanTarget.TargetSyntax.Program := + { adts := [{ constructors := [[.nat, .nat, .nat, .nat, .nat, .nat]] }, + { constructors := [[(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]] }, + { constructors := [[], [], [], [], [], [], [], []] }], functions := (( + { parameters := [0, 1, 2, 3, 4, 5], types := [.nat, .nat, .nat, .nat, .nat, .nat], result := .nat, + body := (.«match» .nat (.call 1 [(.build (.adt 0) (.adt 0) [(.var 0), (.var 1), (.var 2), (.var 3), (.var 4), (.var 5)])]) [(.arm .ok [6] (.var 6)), (.arm .error [7] (.value .nat (.nat 9)))]) }) ::( + { parameters := [0], types := [(.adt 0)], result := (.result .nat (.pair .bool .bool)), + body := (.call 2 [(.var 0)]) }) ::( + { parameters := [0], types := [(.adt 0)], result := (.result .nat (.pair .bool .bool)), + body := (.call 3 [(.var 0)]) }) ::( + { parameters := [0], types := [(.adt 0)], result := (.result .nat (.pair .bool .bool)), + body := (.«let» 1 (.pair (.adt 1) .bool) (.call 4 [(.var 0)]) (.«match» (.result .nat (.pair .bool .bool)) (.second (.var 1)) [(.arm .true [] (.call 5 [(.var 0), (.first (.var 1))])), (.arm .false [] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])]))])) }) ::( + { parameters := [0], types := [(.adt 0)], result := (.pair (.adt 1) .bool), + body := (.call 6 [(.closure 7 []), (.value .nat (.nat 11)), (.call 8 [(.var 0)])]) }) ::( + { parameters := [0, 1], types := [(.adt 0), (.adt 1)], result := (.result .nat (.pair .bool .bool)), + body := (.«match» (.result .nat (.pair .bool .bool)) (.call 9 [(.var 0), (.var 1)]) [(.arm .some [2] (.build .ok (.result .nat (.pair .bool .bool)) [(.var 2)])), (.arm .none [] (.«match» (.result .nat (.pair .bool .bool)) (.call 10 [(.var 1)]) [(.arm .some [3] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])])])), (.arm .none [] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])])]))]))]) }) ::( + { parameters := [0, 1, 2], types := [(.fn [(.adt 1)] (.option (.adt 1))), .nat, (.adt 1)], result := (.pair (.adt 1) .bool), + body := (.«match» (.pair (.adt 1) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.adt 1) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.adt 1) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.adt 1) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 6 [(.var 0), (.var 3), (.var 4)]))]))]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.«match» (.option (.adt 1)) (.call 11 [(.var 0)]) [(.arm .none [] (.build .none (.option (.adt 1)) [])), (.arm .some [1] (.call 12 [(.var 0), (.var 1)]))]) }) ::( + { parameters := [0], types := [(.adt 0)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.var 0), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0))]) }) ::( + { parameters := [0, 1], types := [(.adt 0), (.adt 1)], result := (.option .nat), + body := (.«match» (.option .nat) (.call 10 [(.var 1)]) [(.arm .none [] (.build .none (.option .nat) [])), (.arm .some [2] (.cond (.call 13 [(.var 0), (.var 2)]) (.build .some (.option .nat) [(.var 2)]) (.build .none (.option .nat) [])))]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option .nat), + body := (.build .some (.option .nat) [(.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 2)), + body := (.«match» (.option (.adt 2)) (.«match» (.option (.adt 2)) (.«match» (.option (.adt 2)) (.cond (.call 14 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 0) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [1] (.build .some (.option (.adt 2)) [(.var 1)])), (.arm .none [] (.cond (.call 15 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 1) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]) [(.arm .some [2] (.build .some (.option (.adt 2)) [(.var 2)])), (.arm .none [] (.«match» (.option (.adt 2)) (.cond (.call 16 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 2) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [3] (.build .some (.option (.adt 2)) [(.var 3)])), (.arm .none [] (.cond (.call 17 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 3) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]))]) [(.arm .some [4] (.build .some (.option (.adt 2)) [(.var 4)])), (.arm .none [] (.«match» (.option (.adt 2)) (.«match» (.option (.adt 2)) (.cond (.call 18 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 4) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [5] (.build .some (.option (.adt 2)) [(.var 5)])), (.arm .none [] (.cond (.call 19 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 5) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]) [(.arm .some [6] (.build .some (.option (.adt 2)) [(.var 6)])), (.arm .none [] (.«match» (.option (.adt 2)) (.cond (.call 20 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 6) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [7] (.build .some (.option (.adt 2)) [(.var 7)])), (.arm .none [] (.cond (.call 21 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 7) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]))]))]) }) ::( + { parameters := [0, 1], types := [(.adt 1), (.adt 2)], result := (.option (.adt 1)), + body := (.«match» (.option (.adt 1)) (.var 1) [(.arm (.adt 0) [] (.call 22 [(.var 0)])), (.arm (.adt 1) [] (.call 23 [(.var 0)])), (.arm (.adt 2) [] (.call 24 [(.var 0)])), (.arm (.adt 3) [] (.call 25 [(.var 0)])), (.arm (.adt 4) [] (.call 26 [(.var 0)])), (.arm (.adt 5) [] (.call 27 [(.var 0)])), (.arm (.adt 6) [] (.call 28 [(.var 0)])), (.arm (.adt 7) [] (.call 29 [(.var 0)]))]) }) ::( + { parameters := [0, 1], types := [(.adt 0), .nat], result := .bool, + body := (.cond (.prim .natLe [(.var 1), (.value .nat (.nat 3))]) (.cond (.prim .natEq [(.var 1), (.value .nat (.nat 3))]) (.build .true .bool []) (.prim .boolNot [(.cond (.call 30 [(.var 0)]) (.cond (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 1))]) (.cond (.call 31 [(.var 0)]) (.call 32 [(.var 0)]) (.build .false .bool [])) (.build .false .bool [])) (.build .false .bool []))])) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 1), (.value .nat (.nat 0))]) (.call 31 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 2), (.value .nat (.nat 0))]) (.call 32 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 3), (.value .nat (.nat 0))]) (.call 33 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 4), (.value .nat (.nat 0))]) (.call 34 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 0))]) (.prim .natLe [(.value .nat (.nat 2)), (.prim .natAdd [(.prim .natAdd [(.prim .natAdd [(.field (.var 0) 1), (.field (.var 0) 2)]), (.field (.var 0) 3)]), (.field (.var 0) 4)])]) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 0))]) (.cond (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 1))]) (.prim .natEq [(.field (.field (.var 0) 0) 5), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 7), (.value .nat (.nat 0))]) (.cond (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 1))]) (.call 30 [(.field (.var 0) 0)]) (.build .false .bool [])) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natLt [(.field (.var 0) 8), (.value .nat (.nat 3))]) (.cond (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 0))]) (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .true .bool []) (.cond (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 1))]) (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .true .bool []) (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 2))]) (.prim .natEq [(.field (.var 0) 7), (.value .nat (.nat 1))]) (.build .false .bool [])))) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 14 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 35 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 15 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 36 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 16 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 37 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 17 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 38 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 18 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 39 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 19 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 40 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 20 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 41 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 21 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 42 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.prim .natLt [(.field (.var 0) 4), (.value .nat (.nat 90))]) }) ::( + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.prim .natLt [(.value .nat (.nat 380)), (.field (.var 0) 0)]) }) ::( + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.prim .natLt [(.value .nat (.nat 90)), (.field (.var 0) 1)]) }) ::( + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.prim .natLt [(.value .nat (.nat 20)), (.field (.var 0) 2)]) }) ::( + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.prim .natLt [(.value .nat (.nat 12)), (.field (.var 0) 3)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.value .nat (.nat 1)), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.value .nat (.nat 1)), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.value .nat (.nat 1)), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.value .nat (.nat 1)), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.value .nat (.nat 1)), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.value .nat (.nat 1)), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.value .nat (.nat 1)), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.prim .natAdd [(.field (.var 0) 8), (.value .nat (.nat 1))])]) }) ::[]) } + +def __enc_0 (__s : (Reasoning.Clinic.Vitals)) : _root_.LexLeanTarget.TargetSyntax.Value := + _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).temperature), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).heartRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).respiratoryRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).whiteCells), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).systolic), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).infection)] + +def __enc_1 (__s : (Reasoning.Clinic.Chart)) : _root_.LexLeanTarget.TargetSyntax.Value := + _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [(__enc_0 (__s).vitals), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).fever), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).tachycardia), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).tachypnea), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).leukocytosis), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).sirs), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).sepsis), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).shock), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).level)] + +def __enc_2 : (Reasoning.Clinic.Triage.Step) -> _root_.LexLeanTarget.TargetSyntax.Value + | Reasoning.Clinic.Triage.Step.Fever => _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [] + | Reasoning.Clinic.Triage.Step.Tachycardia => _root_.LexLeanTarget.TargetSyntax.Value.adt 1 [] + | Reasoning.Clinic.Triage.Step.Tachypnea => _root_.LexLeanTarget.TargetSyntax.Value.adt 2 [] + | Reasoning.Clinic.Triage.Step.Leukocytosis => _root_.LexLeanTarget.TargetSyntax.Value.adt 3 [] + | Reasoning.Clinic.Triage.Step.Sirs => _root_.LexLeanTarget.TargetSyntax.Value.adt 4 [] + | Reasoning.Clinic.Triage.Step.Sepsis => _root_.LexLeanTarget.TargetSyntax.Value.adt 5 [] + | Reasoning.Clinic.Triage.Step.Shock => _root_.LexLeanTarget.TargetSyntax.Value.adt 6 [] + | Reasoning.Clinic.Triage.Step.Escalate => _root_.LexLeanTarget.TargetSyntax.Value.adt 7 [] + +def __fits_31 (v : (Reasoning.Clinic.Vitals)) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_31 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 31 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_31 v) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.feverish v))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (380 : Nat) (v).temperature)) + +def __fits_14 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).fever (0 : Nat)) then ((Bool.true && Bool.true) && (__fits_31 ((s).vitals))) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.feverish in +theorem __rel_14 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 14 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_14 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Fever.guard s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && (__fits_31 ((s).vitals))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Reasoning.Clinic.feverish ((s).vitals)))) (Nat.beq (s).fever (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).fever (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_31 ((s).vitals)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) + +def __fits_32 (v : (Reasoning.Clinic.Vitals)) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_32 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 32 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_32 v) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.tachycardic v))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (90 : Nat) (v).heartRate)) + +def __fits_15 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).tachycardia (0 : Nat)) then ((Bool.true && Bool.true) && (__fits_32 ((s).vitals))) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.tachycardic in +theorem __rel_15 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 15 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_15 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Tachycardia.guard s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && (__fits_32 ((s).vitals))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Reasoning.Clinic.tachycardic ((s).vitals)))) (Nat.beq (s).tachycardia (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).tachycardia (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_32 ((s).vitals)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) + +def __fits_33 (v : (Reasoning.Clinic.Vitals)) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_33 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 33 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_33 v) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.tachypneic v))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (20 : Nat) (v).respiratoryRate)) + +def __fits_16 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).tachypnea (0 : Nat)) then ((Bool.true && Bool.true) && (__fits_33 ((s).vitals))) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.tachypneic in +theorem __rel_16 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 16 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_16 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Tachypnea.guard s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && (__fits_33 ((s).vitals))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Reasoning.Clinic.tachypneic ((s).vitals)))) (Nat.beq (s).tachypnea (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).tachypnea (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_33 ((s).vitals)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) + +def __fits_34 (v : (Reasoning.Clinic.Vitals)) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_34 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 34 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_34 v) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.leukocytic v))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (12 : Nat) (v).whiteCells)) + +def __fits_17 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).leukocytosis (0 : Nat)) then ((Bool.true && Bool.true) && (__fits_34 ((s).vitals))) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.leukocytic in +theorem __rel_17 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 17 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_17 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Leukocytosis.guard s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && (__fits_34 ((s).vitals))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Reasoning.Clinic.leukocytic ((s).vitals)))) (Nat.beq (s).leukocytosis (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).leukocytosis (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_34 ((s).vitals)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) + +def __fits_18 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sirs (0 : Nat)) then ((Bool.true && (((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((s).fever + (s).tachycardia) 18446744073709551616)) && (Bool.true && Bool.true)) && (Nat.blt (((s).fever + (s).tachycardia) + (s).tachypnea) 18446744073709551616)) && (Bool.true && Bool.true)) && (Nat.blt ((((s).fever + (s).tachycardia) + (s).tachypnea) + (s).leukocytosis) 18446744073709551616)) && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) + +theorem __rel_18 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 18 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_18 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Sirs.guard s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((s).fever + (s).tachycardia) 18446744073709551616)) && (Bool.true && Bool.true)) && (Nat.blt (((s).fever + (s).tachycardia) + (s).tachypnea) 18446744073709551616)) && (Bool.true && Bool.true)) && (Nat.blt ((((s).fever + (s).tachycardia) + (s).tachypnea) + (s).leukocytosis) 18446744073709551616)) && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.ble (2 : Nat) ((((s).fever + (s).tachycardia) + (s).tachypnea) + (s).leukocytosis)))) (Nat.beq (s).sirs (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sirs (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (s).fever (s).tachycardia)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((s).fever + (s).tachycardia) (s).tachypnea)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (((s).fever + (s).tachycardia) + (s).tachypnea) (s).leukocytosis)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe (2 : Nat) ((((s).fever + (s).tachycardia) + (s).tachypnea) + (s).leukocytosis)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) + +def __fits_19 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sepsis (0 : Nat)) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sirs (1 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) + +theorem __rel_19 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 19 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_19 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Sepsis.guard s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sirs (1 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && ((Nat.beq (s).sirs (1 : Nat)) && (Nat.beq ((s).vitals).infection (1 : Nat))))) (Nat.beq (s).sepsis (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sepsis (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.beq ((s).vitals).infection (1 : Nat)))) (Nat.beq (s).sirs (1 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sirs (1 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq ((s).vitals).infection (1 : Nat)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) + +def __fits_30 (v : (Reasoning.Clinic.Vitals)) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_30 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 30 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_30 v) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.hypotensive v))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (v).systolic (90 : Nat))) + +def __fits_20 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).shock (0 : Nat)) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sepsis (1 : Nat)) then ((Bool.true && Bool.true) && (__fits_30 ((s).vitals))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.hypotensive in +theorem __rel_20 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 20 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_20 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Shock.guard s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sepsis (1 : Nat)) then ((Bool.true && Bool.true) && (__fits_30 ((s).vitals))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && ((Nat.beq (s).sepsis (1 : Nat)) && (Reasoning.Clinic.hypotensive ((s).vitals))))) (Nat.beq (s).shock (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).shock (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && (__fits_30 ((s).vitals))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Reasoning.Clinic.hypotensive ((s).vitals)))) (Nat.beq (s).sepsis (1 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sepsis (1 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_30 ((s).vitals)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) + +def __fits_21 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.blt (s).level (3 : Nat)) then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (0 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if ((Nat.beq (s).level (0 : Nat)) && (Nat.beq (s).sirs (1 : Nat))) then (Bool.true && Bool.true) else ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (1 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if ((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (2 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))))))) else (Bool.true && Bool.true))) + +theorem __rel_21 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 21 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_21 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Escalate.guard s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (0 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if ((Nat.beq (s).level (0 : Nat)) && (Nat.beq (s).sirs (1 : Nat))) then (Bool.true && Bool.true) else ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (1 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if ((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (2 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))))))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (((Nat.beq (s).level (0 : Nat)) && (Nat.beq (s).sirs (1 : Nat))) || (((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) || ((Nat.beq (s).level (2 : Nat)) && (Nat.beq (s).shock (1 : Nat))))))) (Nat.blt (s).level (3 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (s).level (3 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (Bool.true && Bool.true) else ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (1 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if ((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (2 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b || (((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) || ((Nat.beq (s).level (2 : Nat)) && (Nat.beq (s).shock (1 : Nat)))))) ((Nat.beq (s).level (0 : Nat)) && (Nat.beq (s).sirs (1 : Nat))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.beq (s).sirs (1 : Nat)))) (Nat.beq (s).level (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).level (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sirs (1 : Nat)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (2 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b || ((Nat.beq (s).level (2 : Nat)) && (Nat.beq (s).shock (1 : Nat))))) ((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.beq (s).sepsis (1 : Nat)))) (Nat.beq (s).level (1 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).level (1 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sepsis (1 : Nat)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.beq (s).shock (1 : Nat)))) (Nat.beq (s).level (2 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).level (2 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).shock (1 : Nat)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))))))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) + +def __fits_11 (_ys : (Reasoning.Clinic.Chart)) : Bool := + ((((((Bool.true && Bool.true) && (__fits_14 (_ys))) && (if (Reasoning.Clinic.Fever.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Fever : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_15 (_ys))) && (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) && (match (match (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Fever : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachycardia : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((Bool.true && Bool.true) && (__fits_16 (_ys))) && (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachypnea : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_17 (_ys))) && (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))) && (match (match (match (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Fever : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachycardia : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (match (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachypnea : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Leukocytosis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((((Bool.true && Bool.true) && (__fits_18 (_ys))) && (if (Reasoning.Clinic.Sirs.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_19 (_ys))) && (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) && (match (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sepsis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((Bool.true && Bool.true) && (__fits_20 (_ys))) && (if (Reasoning.Clinic.Shock.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Shock : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_21 (_ys))) && (if (Reasoning.Clinic.Escalate.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))))) + +attribute [local irreducible] Reasoning.Clinic.Escalate.guard Reasoning.Clinic.Fever.guard Reasoning.Clinic.Leukocytosis.guard Reasoning.Clinic.Sepsis.guard Reasoning.Clinic.Shock.guard Reasoning.Clinic.Sirs.guard Reasoning.Clinic.Tachycardia.guard Reasoning.Clinic.Tachypnea.guard in +theorem __rel_11 (_ys : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 11 [(__enc_1 _ys)] (_root_.LexLeanPreservation.Rel (__fits_11 _ys) ((_root_.LexLeanPreservation.encOption __enc_2) (Reasoning.Clinic.Triage.select _ys))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((((Bool.true && Bool.true) && (__fits_18 (_ys))) && (if (Reasoning.Clinic.Sirs.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_19 (_ys))) && (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) && (match (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sepsis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((Bool.true && Bool.true) && (__fits_20 (_ys))) && (if (Reasoning.Clinic.Shock.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Shock : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_21 (_ys))) && (if (Reasoning.Clinic.Escalate.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_2) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (match (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sepsis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (match (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Shock : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Escalate.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Escalate : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))))))) (match (match (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Fever : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachycardia : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (match (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachypnea : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Leukocytosis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))))) (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((Bool.true && Bool.true) && (__fits_16 (_ys))) && (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachypnea : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_17 (_ys))) && (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_2) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (match (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachypnea : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Leukocytosis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))))) (match (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Fever : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachycardia : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_15 (_ys))) && (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_2) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachycardia : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))))) (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Fever : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Fever : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Fever.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_14 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Tachycardia : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Tachycardia.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_15 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_17 (_ys))) && (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_2) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Leukocytosis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))))) (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachypnea : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Tachypnea : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Tachypnea.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_16 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Leukocytosis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Leukocytosis.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_17 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((Bool.true && Bool.true) && (__fits_20 (_ys))) && (if (Reasoning.Clinic.Shock.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Shock : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_21 (_ys))) && (if (Reasoning.Clinic.Escalate.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_2) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (match (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Shock : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Escalate.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Escalate : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))))) (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sepsis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_19 (_ys))) && (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_2) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sepsis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))))) (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Sirs.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_18 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Sepsis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Sepsis.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_19 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_21 (_ys))) && (if (Reasoning.Clinic.Escalate.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_2) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Escalate.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Escalate : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))))) (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Shock : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Shock : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Shock.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_20 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Escalate : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Escalate.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_21 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))))))))))) + +def __fits_35 (s : (Reasoning.Clinic.Chart)) : Bool := + ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) + +theorem __rel_35 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 35 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_35 s) (__enc_1 (Reasoning.Clinic.Fever.conclusion s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) + +def __fits_22 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && Bool.true) && (__fits_14 (s))) && (if (Reasoning.Clinic.Fever.guard (s)) then ((((Bool.true && Bool.true) && (__fits_35 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.Fever.conclusion Reasoning.Clinic.Fever.guard in +theorem __rel_22 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 22 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_22 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Fever.apply s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_35 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Fever.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Fever.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_14 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_35 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_36 (s : (Reasoning.Clinic.Chart)) : Bool := + ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) + +theorem __rel_36 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 36 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_36 s) (__enc_1 (Reasoning.Clinic.Tachycardia.conclusion s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) + +def __fits_23 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && Bool.true) && (__fits_15 (s))) && (if (Reasoning.Clinic.Tachycardia.guard (s)) then ((((Bool.true && Bool.true) && (__fits_36 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.Tachycardia.conclusion Reasoning.Clinic.Tachycardia.guard in +theorem __rel_23 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 23 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_23 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Tachycardia.apply s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_36 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Tachycardia.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Tachycardia.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_15 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_36 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_37 (s : (Reasoning.Clinic.Chart)) : Bool := + ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) + +theorem __rel_37 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 37 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_37 s) (__enc_1 (Reasoning.Clinic.Tachypnea.conclusion s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) + +def __fits_24 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && Bool.true) && (__fits_16 (s))) && (if (Reasoning.Clinic.Tachypnea.guard (s)) then ((((Bool.true && Bool.true) && (__fits_37 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.Tachypnea.conclusion Reasoning.Clinic.Tachypnea.guard in +theorem __rel_24 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 24 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_24 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Tachypnea.apply s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_37 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Tachypnea.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Tachypnea.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_16 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_37 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_38 (s : (Reasoning.Clinic.Chart)) : Bool := + ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) + +theorem __rel_38 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 38 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_38 s) (__enc_1 (Reasoning.Clinic.Leukocytosis.conclusion s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) + +def __fits_25 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && Bool.true) && (__fits_17 (s))) && (if (Reasoning.Clinic.Leukocytosis.guard (s)) then ((((Bool.true && Bool.true) && (__fits_38 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.Leukocytosis.conclusion Reasoning.Clinic.Leukocytosis.guard in +theorem __rel_25 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 25 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_25 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Leukocytosis.apply s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_38 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Leukocytosis.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Leukocytosis.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_17 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_38 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_39 (s : (Reasoning.Clinic.Chart)) : Bool := + ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) + +theorem __rel_39 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 39 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_39 s) (__enc_1 (Reasoning.Clinic.Sirs.conclusion s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) + +def __fits_26 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && Bool.true) && (__fits_18 (s))) && (if (Reasoning.Clinic.Sirs.guard (s)) then ((((Bool.true && Bool.true) && (__fits_39 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.Sirs.conclusion Reasoning.Clinic.Sirs.guard in +theorem __rel_26 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 26 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_26 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Sirs.apply s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_39 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Sirs.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Sirs.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_18 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_39 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_40 (s : (Reasoning.Clinic.Chart)) : Bool := + ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) + +theorem __rel_40 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 40 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_40 s) (__enc_1 (Reasoning.Clinic.Sepsis.conclusion s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) + +def __fits_27 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && Bool.true) && (__fits_19 (s))) && (if (Reasoning.Clinic.Sepsis.guard (s)) then ((((Bool.true && Bool.true) && (__fits_40 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.Sepsis.conclusion Reasoning.Clinic.Sepsis.guard in +theorem __rel_27 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 27 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_27 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Sepsis.apply s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_40 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Sepsis.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Sepsis.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_19 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_40 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_41 (s : (Reasoning.Clinic.Chart)) : Bool := + ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) + +theorem __rel_41 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 41 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_41 s) (__enc_1 (Reasoning.Clinic.Shock.conclusion s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) + +def __fits_28 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && Bool.true) && (__fits_20 (s))) && (if (Reasoning.Clinic.Shock.guard (s)) then ((((Bool.true && Bool.true) && (__fits_41 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.Shock.conclusion Reasoning.Clinic.Shock.guard in +theorem __rel_28 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 28 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_28 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Shock.apply s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_41 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Shock.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Shock.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_20 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_41 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_42 (s : (Reasoning.Clinic.Chart)) : Bool := + ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((s).level + (1 : Nat)) 18446744073709551616)) && Bool.true))))))))) && Bool.true) + +theorem __rel_42 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 42 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_42 s) (__enc_1 (Reasoning.Clinic.Escalate.conclusion s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (s).level (1 : Nat))) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) + +def __fits_29 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && Bool.true) && (__fits_21 (s))) && (if (Reasoning.Clinic.Escalate.guard (s)) then ((((Bool.true && Bool.true) && (__fits_42 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.Escalate.conclusion Reasoning.Clinic.Escalate.guard in +theorem __rel_29 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 29 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_29 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Escalate.apply s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_42 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Escalate.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Escalate.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_21 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_42 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_12 (_ys : (Reasoning.Clinic.Chart)) (_ystep : (Reasoning.Clinic.Triage.Step)) : Bool := + (Bool.true && (match _ystep with | Reasoning.Clinic.Triage.Step.Fever => ((Bool.true && Bool.true) && (__fits_22 (_ys))) | Reasoning.Clinic.Triage.Step.Tachycardia => ((Bool.true && Bool.true) && (__fits_23 (_ys))) | Reasoning.Clinic.Triage.Step.Tachypnea => ((Bool.true && Bool.true) && (__fits_24 (_ys))) | Reasoning.Clinic.Triage.Step.Leukocytosis => ((Bool.true && Bool.true) && (__fits_25 (_ys))) | Reasoning.Clinic.Triage.Step.Sirs => ((Bool.true && Bool.true) && (__fits_26 (_ys))) | Reasoning.Clinic.Triage.Step.Sepsis => ((Bool.true && Bool.true) && (__fits_27 (_ys))) | Reasoning.Clinic.Triage.Step.Shock => ((Bool.true && Bool.true) && (__fits_28 (_ys))) | Reasoning.Clinic.Triage.Step.Escalate => ((Bool.true && Bool.true) && (__fits_29 (_ys))))) + +attribute [local irreducible] Reasoning.Clinic.Escalate.apply Reasoning.Clinic.Fever.apply Reasoning.Clinic.Leukocytosis.apply Reasoning.Clinic.Sepsis.apply Reasoning.Clinic.Shock.apply Reasoning.Clinic.Sirs.apply Reasoning.Clinic.Tachycardia.apply Reasoning.Clinic.Tachypnea.apply in +theorem __rel_12 (_ys : (Reasoning.Clinic.Chart)) (_ystep : (Reasoning.Clinic.Triage.Step)) : _root_.LexLeanPreservation.FunRel __prog 12 [(__enc_1 _ys), (__enc_2 _ystep)] (_root_.LexLeanPreservation.Rel (__fits_12 _ys _ystep) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Triage.fire _ys _ystep))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV __enc_2 (fun (__a : (Reasoning.Clinic.Triage.Step)) => (match __a with | Reasoning.Clinic.Triage.Step.Fever => ((Bool.true && Bool.true) && (__fits_22 (_ys))) | Reasoning.Clinic.Triage.Step.Tachycardia => ((Bool.true && Bool.true) && (__fits_23 (_ys))) | Reasoning.Clinic.Triage.Step.Tachypnea => ((Bool.true && Bool.true) && (__fits_24 (_ys))) | Reasoning.Clinic.Triage.Step.Leukocytosis => ((Bool.true && Bool.true) && (__fits_25 (_ys))) | Reasoning.Clinic.Triage.Step.Sirs => ((Bool.true && Bool.true) && (__fits_26 (_ys))) | Reasoning.Clinic.Triage.Step.Sepsis => ((Bool.true && Bool.true) && (__fits_27 (_ys))) | Reasoning.Clinic.Triage.Step.Shock => ((Bool.true && Bool.true) && (__fits_28 (_ys))) | Reasoning.Clinic.Triage.Step.Escalate => ((Bool.true && Bool.true) && (__fits_29 (_ys))))) (fun (__a : (Reasoning.Clinic.Triage.Step)) => (_root_.LexLeanPreservation.encOption __enc_1) (match __a with | Reasoning.Clinic.Triage.Step.Fever => (Reasoning.Clinic.Fever.apply (_ys)) | Reasoning.Clinic.Triage.Step.Tachycardia => (Reasoning.Clinic.Tachycardia.apply (_ys)) | Reasoning.Clinic.Triage.Step.Tachypnea => (Reasoning.Clinic.Tachypnea.apply (_ys)) | Reasoning.Clinic.Triage.Step.Leukocytosis => (Reasoning.Clinic.Leukocytosis.apply (_ys)) | Reasoning.Clinic.Triage.Step.Sirs => (Reasoning.Clinic.Sirs.apply (_ys)) | Reasoning.Clinic.Triage.Step.Sepsis => (Reasoning.Clinic.Sepsis.apply (_ys)) | Reasoning.Clinic.Triage.Step.Shock => (Reasoning.Clinic.Shock.apply (_ys)) | Reasoning.Clinic.Triage.Step.Escalate => (Reasoning.Clinic.Escalate.apply (_ys)))) _ystep (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (Reasoning.Clinic.Triage.Step)) _ => match __a with | Reasoning.Clinic.Triage.Step.Fever => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_22 (_ys)))) | Reasoning.Clinic.Triage.Step.Tachycardia => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_23 (_ys))))) | Reasoning.Clinic.Triage.Step.Tachypnea => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_24 (_ys)))))) | Reasoning.Clinic.Triage.Step.Leukocytosis => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_25 (_ys))))))) | Reasoning.Clinic.Triage.Step.Sirs => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_26 (_ys)))))))) | Reasoning.Clinic.Triage.Step.Sepsis => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_27 (_ys))))))))) | Reasoning.Clinic.Triage.Step.Shock => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_28 (_ys)))))))))) | Reasoning.Clinic.Triage.Step.Escalate => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_29 (_ys))))))))))))) + +def __fits_7 (_ys : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && Bool.true) && (__fits_11 (_ys))) && (match (Reasoning.Clinic.Triage.select (_ys)) with | Option.none => (Bool.true && Bool.true) | Option.some _ystep => ((Bool.true && (Bool.true && Bool.true)) && (__fits_12 (_ys) (_ystep))))) + +attribute [local irreducible] Reasoning.Clinic.Triage.fire Reasoning.Clinic.Triage.select in +theorem __rel_7 (_ys : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 7 [(__enc_1 _ys)] (_root_.LexLeanPreservation.Rel (__fits_7 _ys) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Triage.next _ys))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.none => (Bool.true && Bool.true) | Option.some _ystep => ((Bool.true && (Bool.true && Bool.true)) && (__fits_12 (_ys) (_ystep))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_1) (match __a with | Option.none => (Option.none : (Option (Reasoning.Clinic.Chart))) | Option.some _ystep => (Reasoning.Clinic.Triage.fire (_ys) (_ystep)))) (Reasoning.Clinic.Triage.select (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_11 (_ys))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) | Option.some _ystep => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_12 (_ys) (_ystep))))))) + +def __fits_8 (patient : (Reasoning.Clinic.Vitals)) : Bool := + ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) + +theorem __rel_8 (patient : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 8 [(__enc_0 patient)] (_root_.LexLeanPreservation.Rel (__fits_8 patient) (__enc_1 (Reasoning.Clinic.Triage.observe patient))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) + +def __fits_4 (patient : (Reasoning.Clinic.Vitals)) : Bool := + ((Bool.true && (Bool.true && (((Bool.true && Bool.true) && (__fits_8 (patient))) && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : (Reasoning.Clinic.Chart)) => __fits_7 __p0) ((Reasoning.Clinic.Triage.next)) ((11 : Nat)) ((Reasoning.Clinic.Triage.observe (patient))))) + +attribute [local irreducible] Reasoning.Clinic.Triage.observe in +theorem __rel_4 (patient : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 4 [(__enc_0 patient)] (_root_.LexLeanPreservation.Rel (__fits_4 patient) ((_root_.LexLeanPreservation.encPair __enc_1 _root_.LexLeanTarget.TargetSyntax.Value.bool) (Reasoning.Clinic.Triage.saturate patient))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_8 (patient))) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterateUntil (es := __enc_1) (_root_.LexLeanPreservation.optEnc __enc_1) (fun _ => rfl) (_root_.LexLeanPreservation.encPair __enc_1 _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) ((Reasoning.Clinic.Triage.next)) (fun (__p0 : (Reasoning.Clinic.Chart)) => __fits_7 __p0) 7 [] (fun (__p0 : (Reasoning.Clinic.Chart)) => __rel_7 __p0) (_root_.LexLeanCollections.iterateUntil ((Reasoning.Clinic.Triage.next))) (fun _ => rfl) (fun _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (p := __prog) (fi := 6) (ts := (.adt 1)) rfl ((11 : Nat)) ((Reasoning.Clinic.Triage.observe (patient))))) + +def __fits_10 (chart : (Reasoning.Clinic.Chart)) : Bool := + ((Bool.true && Bool.true) && Bool.true) + +theorem __rel_10 (chart : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 10 [(__enc_1 chart)] (_root_.LexLeanPreservation.Rel (__fits_10 chart) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Clinic.Triage.extract chart))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some) + +def __fits_13 (v : (Reasoning.Clinic.Vitals)) (r : Nat) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.ble r (3 : Nat)) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq r (3 : Nat)) then (Bool.true && Bool.true) else (((((Bool.true && Bool.true) && (__fits_30 (v))) && (if (Reasoning.Clinic.hypotensive (v)) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (v).infection (1 : Nat)) then (((Bool.true && Bool.true) && (__fits_31 (v))) && (if (Reasoning.Clinic.feverish (v)) then ((Bool.true && Bool.true) && (__fits_32 (v))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && Bool.true) && Bool.true))) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.feverish Reasoning.Clinic.hypotensive Reasoning.Clinic.tachycardic in +theorem __rel_13 (v : (Reasoning.Clinic.Vitals)) (r : Nat) : _root_.LexLeanPreservation.FunRel __prog 13 [(__enc_0 v), (_root_.LexLeanTarget.TargetSyntax.Value.nat r)] (_root_.LexLeanPreservation.Rel (__fits_13 v r) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.recommendationCheck v r))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq r (3 : Nat)) then (Bool.true && Bool.true) else (((((Bool.true && Bool.true) && (__fits_30 (v))) && (if (Reasoning.Clinic.hypotensive (v)) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (v).infection (1 : Nat)) then (((Bool.true && Bool.true) && (__fits_31 (v))) && (if (Reasoning.Clinic.feverish (v)) then ((Bool.true && Bool.true) && (__fits_32 (v))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && Bool.true) && Bool.true))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && ((Nat.beq r (3 : Nat)) || (!((Reasoning.Clinic.hypotensive (v)) && ((Nat.beq (v).infection (1 : Nat)) && ((Reasoning.Clinic.feverish (v)) && (Reasoning.Clinic.tachycardic (v))))))))) (Nat.ble r (3 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe r (3 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (Bool.true && Bool.true) else (((((Bool.true && Bool.true) && (__fits_30 (v))) && (if (Reasoning.Clinic.hypotensive (v)) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (v).infection (1 : Nat)) then (((Bool.true && Bool.true) && (__fits_31 (v))) && (if (Reasoning.Clinic.feverish (v)) then ((Bool.true && Bool.true) && (__fits_32 (v))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && Bool.true) && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b || (!((Reasoning.Clinic.hypotensive (v)) && ((Nat.beq (v).infection (1 : Nat)) && ((Reasoning.Clinic.feverish (v)) && (Reasoning.Clinic.tachycardic (v)))))))) (Nat.beq r (3 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq r (3 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (v).infection (1 : Nat)) then (((Bool.true && Bool.true) && (__fits_31 (v))) && (if (Reasoning.Clinic.feverish (v)) then ((Bool.true && Bool.true) && (__fits_32 (v))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && ((Nat.beq (v).infection (1 : Nat)) && ((Reasoning.Clinic.feverish (v)) && (Reasoning.Clinic.tachycardic (v)))))) (Reasoning.Clinic.hypotensive (v)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_30 (v))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (((Bool.true && Bool.true) && (__fits_31 (v))) && (if (Reasoning.Clinic.feverish (v)) then ((Bool.true && Bool.true) && (__fits_32 (v))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && ((Reasoning.Clinic.feverish (v)) && (Reasoning.Clinic.tachycardic (v))))) (Nat.beq (v).infection (1 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (v).infection (1 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && (__fits_32 (v))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Reasoning.Clinic.tachycardic (v)))) (Reasoning.Clinic.feverish (v)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_31 (v))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_32 (v)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_boolNot ((Reasoning.Clinic.hypotensive (v)) && ((Nat.beq (v).infection (1 : Nat)) && ((Reasoning.Clinic.feverish (v)) && (Reasoning.Clinic.tachycardic (v)))))))))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) + +def __fits_9 (patient : (Reasoning.Clinic.Vitals)) (_ys : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && Bool.true) && (__fits_10 (_ys))) && (match (Reasoning.Clinic.Triage.extract (_ys)) with | Option.none => (Bool.true && Bool.true) | Option.some _yv => (((Bool.true && (Bool.true && Bool.true)) && (__fits_13 (patient) (_yv))) && (if (Reasoning.Clinic.recommendationCheck (patient) (_yv)) then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) + +attribute [local irreducible] Reasoning.Clinic.Triage.extract Reasoning.Clinic.recommendationCheck in +theorem __rel_9 (patient : (Reasoning.Clinic.Vitals)) (_ys : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 9 [(__enc_0 patient), (__enc_1 _ys)] (_root_.LexLeanPreservation.Rel (__fits_9 patient _ys) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Clinic.Triage.accept patient _ys))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Option Nat)) => (match __a with | Option.none => (Bool.true && Bool.true) | Option.some _yv => (((Bool.true && (Bool.true && Bool.true)) && (__fits_13 (patient) (_yv))) && (if (Reasoning.Clinic.recommendationCheck (patient) (_yv)) then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__a : (Option Nat)) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (match __a with | Option.none => (Option.none : (Option Nat)) | Option.some _yv => (if (Reasoning.Clinic.recommendationCheck (patient) (_yv)) then (Option.some (_yv) : (Option Nat)) else (Option.none : (Option Nat))))) (Reasoning.Clinic.Triage.extract (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_10 (_ys))) (fun (__a : (Option Nat)) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) | Option.some _yv => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Option.some (_yv) : (Option Nat)) else (Option.none : (Option Nat)))) (Reasoning.Clinic.recommendationCheck (patient) (_yv)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_13 (patient) (_yv))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))) + +def __fits_5 (patient : (Reasoning.Clinic.Vitals)) (_ys : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && (__fits_9 (patient) (_ys))) && (match (Reasoning.Clinic.Triage.accept (patient) (_ys)) with | Option.some _yv => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_10 (_ys))) && (match (Reasoning.Clinic.Triage.extract (_ys)) with | Option.some _yv => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) + +attribute [local irreducible] Reasoning.Clinic.Triage.accept Reasoning.Clinic.Triage.extract in +theorem __rel_5 (patient : (Reasoning.Clinic.Vitals)) (_ys : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 5 [(__enc_0 patient), (__enc_1 _ys)] (_root_.LexLeanPreservation.Rel (__fits_5 patient _ys) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Clinic.Triage.conclude patient _ys))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Option Nat)) => (match __a with | Option.some _yv => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_10 (_ys))) && (match (Reasoning.Clinic.Triage.extract (_ys)) with | Option.some _yv => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) (fun (__a : (Option Nat)) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (match __a with | Option.some _yv => (Except.ok (_yv) : (Except (Prod Bool Bool) Nat)) | Option.none => (match (Reasoning.Clinic.Triage.extract (_ys)) with | Option.some _yv => (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)) | Option.none => (Except.error (((Bool.false, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat))))) (Reasoning.Clinic.Triage.accept (patient) (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_9 (patient) (_ys))) (fun (__a : (Option Nat)) _ => match __a with | Option.some _yv => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Option Nat)) => (match __a with | Option.some _yv => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__a : (Option Nat)) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (match __a with | Option.some _yv => (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)) | Option.none => (Except.error (((Bool.false, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)))) (Reasoning.Clinic.Triage.extract (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_10 (_ys))) (fun (__a : (Option Nat)) _ => match __a with | Option.some _yv => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error))))))))) + +def __fits_3 (patient : (Reasoning.Clinic.Vitals)) : Bool := + (((Bool.true && Bool.true) && (__fits_4 (patient))) && (let _yfinal : (Prod (Reasoning.Clinic.Chart) Bool) := (Reasoning.Clinic.Triage.saturate (patient)); (Bool.true && (match (_yfinal).2 with | Bool.true => ((Bool.true && (Bool.true && Bool.true)) && (__fits_5 (patient) ((_yfinal).1))) | Bool.false => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) + +attribute [local irreducible] Reasoning.Clinic.Triage.conclude Reasoning.Clinic.Triage.saturate in +theorem __rel_3 (patient : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 3 [(__enc_0 patient)] (_root_.LexLeanPreservation.Rel (__fits_3 patient) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Clinic.Triage.verdict patient))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (let _yfinal : (Prod (Reasoning.Clinic.Chart) Bool) := (Reasoning.Clinic.Triage.saturate (patient)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_4 (patient))) (_root_.LexLeanPreservation.conv_matchV _root_.LexLeanTarget.TargetSyntax.Value.bool (fun (__a : Bool) => (match __a with | Bool.true => ((Bool.true && (Bool.true && Bool.true)) && (__fits_5 (patient) ((_yfinal).1))) | Bool.false => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__a : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (match __a with | Bool.true => (Reasoning.Clinic.Triage.conclude (patient) ((_yfinal).1)) | Bool.false => (Except.error (((Bool.false, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)))) (_yfinal).2 (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (fun (__a : Bool) _ => match __a with | Bool.true => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil)) (__rel_5 (patient) ((_yfinal).1)))) | Bool.false => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)))))) + +def __fits_2 (v : (Reasoning.Clinic.Vitals)) : Bool := + ((Bool.true && Bool.true) && (__fits_3 (v))) + +attribute [local irreducible] Reasoning.Clinic.Triage.verdict in +theorem __rel_2 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 2 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_2 v) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Main.GatewayTriage v))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_3 (v))) + +def __fits_1 (_yinput : (Reasoning.Clinic.Vitals)) : Bool := + ((Bool.true && Bool.true) && (__fits_2 (_yinput))) + +attribute [local irreducible] Reasoning.Main.GatewayTriage in +theorem __rel_1 (_yinput : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 1 [(__enc_0 _yinput)] (_root_.LexLeanPreservation.Rel (__fits_1 _yinput) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Main.GatewayModel _yinput))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_2 (_yinput))) + +def __fits_0 (temperature : Nat) (heartRate : Nat) (respiratoryRate : Nat) (whiteCells : Nat) (systolic : Nat) (infection : Nat) : Bool := + (((((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true)))))) && Bool.true) && Bool.true) && (__fits_1 (({ temperature := temperature, heartRate := heartRate, respiratoryRate := respiratoryRate, whiteCells := whiteCells, systolic := systolic, infection := infection } : (Reasoning.Clinic.Vitals))))) && (match (Reasoning.Main.GatewayModel (({ temperature := temperature, heartRate := heartRate, respiratoryRate := respiratoryRate, whiteCells := whiteCells, systolic := systolic, infection := infection } : (Reasoning.Clinic.Vitals)))) with | Except.ok level => Bool.true | Except.error failure => Bool.true)) + +attribute [local irreducible] Reasoning.Main.GatewayModel in +theorem __rel_0 (temperature : Nat) (heartRate : Nat) (respiratoryRate : Nat) (whiteCells : Nat) (systolic : Nat) (infection : Nat) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat temperature), (_root_.LexLeanTarget.TargetSyntax.Value.nat heartRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat respiratoryRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat whiteCells), (_root_.LexLeanTarget.TargetSyntax.Value.nat systolic), (_root_.LexLeanTarget.TargetSyntax.Value.nat infection)] (_root_.LexLeanPreservation.Rel (__fits_0 temperature heartRate respiratoryRate whiteCells systolic infection) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.gatewayLevel temperature heartRate respiratoryRate whiteCells systolic infection))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Except (Prod Bool Bool) Nat)) => (match __a with | Except.ok level => Bool.true | Except.error failure => Bool.true)) (fun (__a : (Except (Prod Bool Bool) Nat)) => _root_.LexLeanTarget.TargetSyntax.Value.nat (match __a with | Except.ok level => level | Except.error failure => (9 : Nat))) (Reasoning.Main.GatewayModel (({ temperature := temperature, heartRate := heartRate, respiratoryRate := respiratoryRate, whiteCells := whiteCells, systolic := systolic, infection := infection } : (Reasoning.Clinic.Vitals)))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)))))) _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) (__rel_1 (({ temperature := temperature, heartRate := heartRate, respiratoryRate := respiratoryRate, whiteCells := whiteCells, systolic := systolic, infection := infection } : (Reasoning.Clinic.Vitals))))) (fun (__a : (Except (Prod Bool Bool) Nat)) _ => match __a with | Except.ok level => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | Except.error failure => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value)))) + +def denote (temperature : Nat) (heartRate : Nat) (respiratoryRate : Nat) (whiteCells : Nat) (systolic : Nat) (infection : Nat) : _root_.LexLeanPreservation.Obs := + _root_.cond (__fits_0 temperature heartRate respiratoryRate whiteCells systolic infection) (_root_.LexLeanPreservation.Obs.value ((_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.gatewayLevel temperature heartRate respiratoryRate whiteCells systolic infection)))) _root_.LexLeanPreservation.Obs.overflow + +theorem root (temperature : Nat) (heartRate : Nat) (respiratoryRate : Nat) (whiteCells : Nat) (systolic : Nat) (infection : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat temperature), (_root_.LexLeanTarget.TargetSyntax.Value.nat heartRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat respiratoryRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat whiteCells), (_root_.LexLeanTarget.TargetSyntax.Value.nat systolic), (_root_.LexLeanTarget.TargetSyntax.Value.nat infection)] (_root_.LexLeanPreservation.Rel (__fits_0 temperature heartRate respiratoryRate whiteCells systolic infection) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.gatewayLevel temperature heartRate respiratoryRate whiteCells systolic infection))) := + _root_.LexLeanPreservation.run_of_funRel (__rel_0 temperature heartRate respiratoryRate whiteCells systolic infection) + +end LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1 diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R1/Compose/RustCore.lex.tex b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R1/Compose/RustCore.lex.tex new file mode 100644 index 000000000..be58dc7d3 --- /dev/null +++ b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R1/Compose/RustCore.lex.tex @@ -0,0 +1,1341 @@ +\begin{lexlean}{RustCore} +\title{Certificate E LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.Compose.RustCore} +\begin{coremodule} +imports [ + LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1, + LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.RustCore, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.Compose.RustCore.__wt_0 : @16 := @716 { + all: [LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.Compose.RustCore.__wt_0], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.Compose.RustCore.__wt_1 : @724 := @1388 { + all: [LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.Compose.RustCore.__wt_1], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.Compose.RustCore.__wt_2 : @1396 := @1631 { + all: [LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.Compose.RustCore.__wt_2], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.Compose.RustCore.root : @2716 := @2717 { + all: [LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.Compose.RustCore.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.RustCore.program +@1 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.RustCore.krate +@2 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.RustCore.flags +@3 := Reasoning.Clinic.Vitals +@4 := #0 +@5 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.__enc_0 +@6 := @5 @4 +@7 := LexLeanPreservation.Rust.WT +@8 := LexLeanTarget.TargetSyntax.Ty.adt +@9 := 0 +@10 := @8 @9 +@11 := @7 @0 +@12 := @11 @1 +@13 := @12 @2 +@16 := (__s : @3) -> @13 @6 @10 +@17 := Reasoning.Clinic.Vitals.temperature +@18 := @17 @4 +@19 := Reasoning.Clinic.Vitals.heartRate +@20 := @19 @4 +@21 := Reasoning.Clinic.Vitals.respiratoryRate +@22 := @21 @4 +@23 := Reasoning.Clinic.Vitals.whiteCells +@24 := @23 @4 +@25 := Reasoning.Clinic.Vitals.systolic +@26 := @25 @4 +@27 := Reasoning.Clinic.Vitals.infection +@28 := @27 @4 +@29 := LexLeanTarget.TargetSyntax.Value.nat +@30 := @29 @18 +@31 := LexLeanTarget.TargetSyntax.Ty.nat +@32 := LexLeanTarget.TargetSyntax.Program +@33 := LexLeanPreservation.Rust.RCrate +@34 := LexLeanPreservation.Rust.Flags +@35 := Nat +@36 := #3 +@37 := @7 @36 +@38 := #2 +@39 := @37 @38 +@40 := #1 +@41 := @39 @40 +@42 := @29 @4 +@48 := {p : @32} -> {c : @33} -> {A : @34} -> (n : @35) -> @41 @42 @31 +@50 := LexLeanPreservation.Rust.wt_nat @0 +@57 := {c : @33} -> {A : @34} -> (n : @35) -> @11 @38 @40 @42 @31 +@58 := @50 @1 +@63 := {A : @34} -> (n : @35) -> @12 @40 @42 @31 +@64 := @58 @2 +@67 := (n : @35) -> @13 @42 @31 +@68 := @64 @18 +@70 := @13 @30 @31 +@71 := @29 @20 +@72 := @64 @20 +@74 := @13 @71 @31 +@75 := @29 @22 +@76 := @64 @22 +@78 := @13 @75 @31 +@79 := @29 @24 +@80 := @64 @24 +@82 := @13 @79 @31 +@83 := @29 @26 +@84 := @64 @26 +@86 := @13 @83 @31 +@87 := @29 @28 +@88 := @64 @28 +@90 := @13 @87 @31 +@91 := LexLeanTarget.TargetSyntax.Value +@92 := LexLeanTarget.TargetSyntax.Ty +@93 := List.nil.{0} +@94 := List.cons.{0} +@95 := @93 @91 +@96 := @94 @91 +@98 := @96 @87 @95 +@100 := @96 @83 @98 +@102 := @96 @79 @100 +@104 := @96 @75 @102 +@106 := @96 @71 @104 +@108 := @96 @30 @106 +@109 := @93 @92 +@110 := @94 @92 +@111 := @110 @31 +@112 := @111 @109 +@113 := @111 @112 +@114 := @111 @113 +@115 := @111 @114 +@116 := @111 @115 +@117 := @111 @116 +@118 := LexLeanPreservation.Rust.WTL +@126 := {p : @32} -> {c : @33} -> {A : @34} -> @118 @38 @40 @4 @95 @109 +@128 := LexLeanPreservation.Rust.wtl_nil @0 +@129 := @118 @0 +@135 := {c : @33} -> {A : @34} -> @129 @40 @4 @95 @109 +@136 := @128 @1 +@137 := @129 @1 +@141 := {A : @34} -> @137 @4 @95 @109 +@142 := @136 @2 +@143 := @137 @2 +@144 := @143 @95 +@145 := @144 @109 +@146 := List.{0} +@147 := @146 @91 +@148 := @146 @92 +@149 := #6 +@150 := @7 @149 +@151 := #5 +@152 := @150 @151 +@153 := #4 +@156 := @152 @153 @36 @38 +@157 := #7 +@162 := @118 @157 @149 @151 @38 @40 +@163 := #8 +@166 := @118 @163 @157 @149 +@168 := @96 @151 @36 +@169 := @166 @168 +@171 := @110 @153 @38 +@181 := {p : @32} -> + {c : @33} -> + {A : @34} -> + {v : @91} -> {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @156) -> (hs : @162) -> @169 @171 +@183 := LexLeanPreservation.Rust.wtl_cons @0 +@187 := @11 @151 @153 @36 @38 +@191 := @129 @149 @151 @38 @40 +@203 := {c : @33} -> + {A : @34} -> + {v : @91} -> + {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @187) -> (hs : @191) -> @129 @157 @149 @168 @171 +@204 := @183 @1 +@207 := @12 @153 @36 @38 +@210 := @137 @151 @38 @40 +@220 := {A : @34} -> + {v : @91} -> + {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @207) -> (hs : @210) -> @137 @149 @168 @171 +@221 := @204 @2 +@223 := @13 @36 @38 +@225 := @143 @38 @40 +@233 := {v : @91} -> + {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @223) -> (hs : @225) -> @143 @168 @171 +@234 := @221 @87 +@236 := @29 (@27 @36) +@249 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @236 @38) -> (hs : @225) -> @143 (@96 (@29 (@27 @151)) @36) @171 +@250 := @234 @31 +@252 := @29 (@27 @38) +@254 := @13 @252 @31 +@259 := @143 (@96 (@29 (@27 @153)) @36) +@260 := @111 @38 +@265 := {vs : @147} -> {ts : @148} -> (h : @254) -> (hs : @225) -> @259 @260 +@266 := @250 @95 +@268 := @29 (@27 @40) +@270 := @13 @268 @31 +@271 := @144 @40 +@273 := @96 @236 @95 +@278 := {ts : @148} -> (h : @270) -> (hs : @271) -> @143 @273 @260 +@279 := @266 @109 +@281 := @96 @252 @95 +@282 := @143 @281 +@285 := (h : @90) -> (hs : @145) -> @282 @112 +@286 := @279 @88 +@288 := @96 @268 @95 +@290 := @143 @288 @112 +@291 := (hs : @145) -> @290 +@292 := @286 @142 +@294 := @143 @98 @112 +@295 := @221 @83 +@297 := @29 (@25 @36) +@310 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @297 @38) -> (hs : @225) -> @143 (@96 (@29 (@25 @151)) @36) @171 +@311 := @295 @31 +@313 := @29 (@25 @38) +@325 := {vs : @147} -> + {ts : @148} -> (h : @13 @313 @31) -> (hs : @225) -> @143 (@96 (@29 (@25 @153)) @36) @260 +@326 := @311 @98 +@328 := @29 (@25 @40) +@330 := @13 @328 @31 +@331 := @282 @40 +@333 := @96 @297 @273 +@338 := {ts : @148} -> (h : @330) -> (hs : @331) -> @143 @333 @260 +@339 := @326 @112 +@341 := @96 @313 @281 +@342 := @143 @341 +@345 := (h : @86) -> (hs : @290) -> @342 @113 +@346 := @339 @84 +@348 := @96 @328 @288 +@350 := @143 @348 @113 +@351 := (hs : @294) -> @350 +@352 := @346 @292 +@354 := @143 @100 @113 +@355 := @221 @79 +@357 := @29 (@23 @36) +@370 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @357 @38) -> (hs : @225) -> @143 (@96 (@29 (@23 @151)) @36) @171 +@371 := @355 @31 +@373 := @29 (@23 @38) +@385 := {vs : @147} -> + {ts : @148} -> (h : @13 @373 @31) -> (hs : @225) -> @143 (@96 (@29 (@23 @153)) @36) @260 +@386 := @371 @100 +@388 := @29 (@23 @40) +@390 := @13 @388 @31 +@391 := @342 @40 +@393 := @96 @357 @333 +@398 := {ts : @148} -> (h : @390) -> (hs : @391) -> @143 @393 @260 +@399 := @386 @113 +@401 := @96 @373 @341 +@402 := @143 @401 +@405 := (h : @82) -> (hs : @350) -> @402 @114 +@406 := @399 @80 +@408 := @96 @388 @348 +@410 := @143 @408 @114 +@411 := (hs : @354) -> @410 +@412 := @406 @352 +@414 := @143 @102 @114 +@415 := @221 @75 +@417 := @29 (@21 @36) +@430 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @417 @38) -> (hs : @225) -> @143 (@96 (@29 (@21 @151)) @36) @171 +@431 := @415 @31 +@433 := @29 (@21 @38) +@445 := {vs : @147} -> + {ts : @148} -> (h : @13 @433 @31) -> (hs : @225) -> @143 (@96 (@29 (@21 @153)) @36) @260 +@446 := @431 @102 +@448 := @29 (@21 @40) +@450 := @13 @448 @31 +@451 := @402 @40 +@453 := @96 @417 @393 +@458 := {ts : @148} -> (h : @450) -> (hs : @451) -> @143 @453 @260 +@459 := @446 @114 +@461 := @96 @433 @401 +@462 := @143 @461 +@465 := (h : @78) -> (hs : @410) -> @462 @115 +@466 := @459 @76 +@468 := @96 @448 @408 +@470 := @143 @468 @115 +@471 := (hs : @414) -> @470 +@472 := @466 @412 +@474 := @143 @104 @115 +@475 := @221 @71 +@477 := @29 (@19 @36) +@490 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @477 @38) -> (hs : @225) -> @143 (@96 (@29 (@19 @151)) @36) @171 +@491 := @475 @31 +@493 := @29 (@19 @38) +@505 := {vs : @147} -> + {ts : @148} -> (h : @13 @493 @31) -> (hs : @225) -> @143 (@96 (@29 (@19 @153)) @36) @260 +@506 := @491 @104 +@508 := @29 (@19 @40) +@510 := @13 @508 @31 +@511 := @462 @40 +@513 := @96 @477 @453 +@518 := {ts : @148} -> (h : @510) -> (hs : @511) -> @143 @513 @260 +@519 := @506 @115 +@521 := @96 @493 @461 +@522 := @143 @521 +@525 := (h : @74) -> (hs : @470) -> @522 @116 +@526 := @519 @72 +@528 := @96 @508 @468 +@530 := @143 @528 @116 +@531 := (hs : @474) -> @530 +@532 := @526 @472 +@534 := @143 @106 @116 +@535 := @221 @30 +@537 := @29 (@17 @36) +@550 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @537 @38) -> (hs : @225) -> @143 (@96 (@29 (@17 @151)) @36) @171 +@551 := @535 @31 +@553 := @29 (@17 @38) +@565 := {vs : @147} -> + {ts : @148} -> (h : @13 @553 @31) -> (hs : @225) -> @143 (@96 (@29 (@17 @153)) @36) @260 +@566 := @551 @106 +@568 := @29 (@17 @40) +@570 := @13 @568 @31 +@571 := @522 @40 +@573 := @96 @537 @513 +@578 := {ts : @148} -> (h : @570) -> (hs : @571) -> @143 @573 @260 +@579 := @566 @116 +@581 := @96 @553 @521 +@582 := @143 @581 +@585 := (h : @70) -> (hs : @530) -> @582 @117 +@586 := @579 @68 +@588 := @96 @568 @528 +@590 := @143 @588 @117 +@591 := (hs : @534) -> @590 +@592 := @586 @532 +@594 := @143 @108 @117 +@595 := Eq.{1} +@596 := Option.{0} +@597 := @596 @148 +@598 := @595 @597 +@599 := LexLeanPreservation.Rust.adtFields +@603 := @598 (@599 @149 @36 @38) +@604 := Option.some.{0} +@605 := @604 @148 +@606 := @605 @4 +@607 := @603 @606 +@610 := @7 @163 @157 @149 +@611 := LexLeanTarget.TargetSyntax.Value.adt +@613 := @611 @153 @36 +@614 := @610 @613 +@615 := @8 @151 +@625 := {p : @32} -> + {c : @33} -> + {A : @34} -> + {i : @35} -> {k : @35} -> {fs : @147} -> {tys : @148} -> (h : @607) -> (hf : @162) -> @614 @615 +@627 := LexLeanPreservation.Rust.wt_adt @0 +@628 := @599 @0 +@632 := @598 (@628 @36 @38) @606 +@644 := {c : @33} -> + {A : @34} -> + {i : @35} -> + {k : @35} -> {fs : @147} -> {tys : @148} -> (h : @632) -> (hf : @191) -> @11 @157 @149 @613 @615 +@645 := @627 @1 +@655 := {A : @34} -> + {i : @35} -> + {k : @35} -> {fs : @147} -> {tys : @148} -> (h : @632) -> (hf : @210) -> @12 @149 @613 @615 +@656 := @645 @2 +@657 := @13 @613 +@664 := {i : @35} -> + {k : @35} -> {fs : @147} -> {tys : @148} -> (h : @632) -> (hf : @225) -> @657 @615 +@665 := @656 @9 +@666 := @628 @9 +@675 := {k : @35} -> + {fs : @147} -> {tys : @148} -> (h : @598 (@666 @38) @606) -> (hf : @225) -> @657 @10 +@676 := @665 @9 +@677 := @666 @9 +@678 := @598 @677 +@679 := @678 @606 +@680 := @611 @9 +@682 := @13 (@680 @36) +@687 := {fs : @147} -> {tys : @148} -> (h : @679) -> (hf : @225) -> @682 @10 +@688 := @676 @108 +@695 := {tys : @148} -> (h : @679) -> (hf : @582 @40) -> @13 (@680 @573) @10 +@696 := @688 @117 +@703 := (h : @678 (@605 @117)) -> (hf : @590) -> @13 (@680 @581) @10 +@704 := Eq.refl.{1} +@705 := @704 @597 +@707 := @696 (@705 @677) +@711 := (hf : @594) -> @13 (@680 @588) @10 +@712 := @707 @592 +@715 := @13 (@680 @108) @10 +@716 := fun (__s : @3) => @712 +@717 := Reasoning.Clinic.Chart +@719 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.__enc_1 @4 +@720 := 1 +@721 := @8 @720 +@724 := (__s : @717) -> @13 @719 @721 +@725 := Reasoning.Clinic.Chart.vitals +@726 := @725 @4 +@727 := Reasoning.Clinic.Chart.fever +@728 := @727 @4 +@729 := Reasoning.Clinic.Chart.tachycardia +@730 := @729 @4 +@731 := Reasoning.Clinic.Chart.tachypnea +@732 := @731 @4 +@733 := Reasoning.Clinic.Chart.leukocytosis +@734 := @733 @4 +@735 := Reasoning.Clinic.Chart.sirs +@736 := @735 @4 +@737 := Reasoning.Clinic.Chart.sepsis +@738 := @737 @4 +@739 := Reasoning.Clinic.Chart.shock +@740 := @739 @4 +@741 := Reasoning.Clinic.Chart.level +@742 := @741 @4 +@743 := @5 @726 +@745 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.Compose.RustCore.__wt_0 @726 +@746 := @29 @728 +@747 := @64 @728 +@749 := @13 @746 @31 +@750 := @29 @730 +@751 := @64 @730 +@753 := @13 @750 @31 +@754 := @29 @732 +@755 := @64 @732 +@757 := @13 @754 @31 +@758 := @29 @734 +@759 := @64 @734 +@761 := @13 @758 @31 +@762 := @29 @736 +@763 := @64 @736 +@765 := @13 @762 @31 +@766 := @29 @738 +@767 := @64 @738 +@769 := @13 @766 @31 +@770 := @29 @740 +@771 := @64 @740 +@773 := @13 @770 @31 +@774 := @29 @742 +@775 := @64 @742 +@777 := @13 @774 @31 +@779 := @96 @774 @95 +@781 := @96 @770 @779 +@783 := @96 @766 @781 +@785 := @96 @762 @783 +@787 := @96 @758 @785 +@789 := @96 @754 @787 +@791 := @96 @750 @789 +@793 := @96 @746 @791 +@795 := @96 @743 @793 +@796 := @111 @117 +@797 := @111 @796 +@798 := @110 @10 +@799 := @798 @797 +@800 := @221 @774 +@802 := @29 (@741 @36) +@815 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @802 @38) -> (hs : @225) -> @143 (@96 (@29 (@741 @151)) @36) @171 +@816 := @800 @31 +@818 := @29 (@741 @38) +@830 := {vs : @147} -> + {ts : @148} -> (h : @13 @818 @31) -> (hs : @225) -> @143 (@96 (@29 (@741 @153)) @36) @260 +@831 := @816 @95 +@833 := @29 (@741 @40) +@835 := @13 @833 @31 +@837 := @96 @802 @95 +@842 := {ts : @148} -> (h : @835) -> (hs : @271) -> @143 @837 @260 +@843 := @831 @109 +@845 := @96 @818 @95 +@846 := @143 @845 +@849 := (h : @777) -> (hs : @145) -> @846 @112 +@850 := @843 @775 +@852 := @96 @833 @95 +@854 := @143 @852 @112 +@855 := (hs : @145) -> @854 +@856 := @850 @142 +@858 := @143 @779 @112 +@859 := @221 @770 +@861 := @29 (@739 @36) +@874 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @861 @38) -> (hs : @225) -> @143 (@96 (@29 (@739 @151)) @36) @171 +@875 := @859 @31 +@877 := @29 (@739 @38) +@889 := {vs : @147} -> + {ts : @148} -> (h : @13 @877 @31) -> (hs : @225) -> @143 (@96 (@29 (@739 @153)) @36) @260 +@890 := @875 @779 +@892 := @29 (@739 @40) +@894 := @13 @892 @31 +@895 := @846 @40 +@897 := @96 @861 @837 +@902 := {ts : @148} -> (h : @894) -> (hs : @895) -> @143 @897 @260 +@903 := @890 @112 +@905 := @96 @877 @845 +@906 := @143 @905 +@909 := (h : @773) -> (hs : @854) -> @906 @113 +@910 := @903 @771 +@912 := @96 @892 @852 +@914 := @143 @912 @113 +@915 := (hs : @858) -> @914 +@916 := @910 @856 +@918 := @143 @781 @113 +@919 := @221 @766 +@921 := @29 (@737 @36) +@934 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @921 @38) -> (hs : @225) -> @143 (@96 (@29 (@737 @151)) @36) @171 +@935 := @919 @31 +@937 := @29 (@737 @38) +@949 := {vs : @147} -> + {ts : @148} -> (h : @13 @937 @31) -> (hs : @225) -> @143 (@96 (@29 (@737 @153)) @36) @260 +@950 := @935 @781 +@952 := @29 (@737 @40) +@954 := @13 @952 @31 +@955 := @906 @40 +@957 := @96 @921 @897 +@962 := {ts : @148} -> (h : @954) -> (hs : @955) -> @143 @957 @260 +@963 := @950 @113 +@965 := @96 @937 @905 +@966 := @143 @965 +@969 := (h : @769) -> (hs : @914) -> @966 @114 +@970 := @963 @767 +@972 := @96 @952 @912 +@974 := @143 @972 @114 +@975 := (hs : @918) -> @974 +@976 := @970 @916 +@978 := @143 @783 @114 +@979 := @221 @762 +@981 := @29 (@735 @36) +@994 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @981 @38) -> (hs : @225) -> @143 (@96 (@29 (@735 @151)) @36) @171 +@995 := @979 @31 +@997 := @29 (@735 @38) +@1009 := {vs : @147} -> + {ts : @148} -> (h : @13 @997 @31) -> (hs : @225) -> @143 (@96 (@29 (@735 @153)) @36) @260 +@1010 := @995 @783 +@1012 := @29 (@735 @40) +@1014 := @13 @1012 @31 +@1015 := @966 @40 +@1017 := @96 @981 @957 +@1022 := {ts : @148} -> (h : @1014) -> (hs : @1015) -> @143 @1017 @260 +@1023 := @1010 @114 +@1025 := @96 @997 @965 +@1026 := @143 @1025 +@1029 := (h : @765) -> (hs : @974) -> @1026 @115 +@1030 := @1023 @763 +@1032 := @96 @1012 @972 +@1034 := @143 @1032 @115 +@1035 := (hs : @978) -> @1034 +@1036 := @1030 @976 +@1038 := @143 @785 @115 +@1039 := @221 @758 +@1041 := @29 (@733 @36) +@1054 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @1041 @38) -> (hs : @225) -> @143 (@96 (@29 (@733 @151)) @36) @171 +@1055 := @1039 @31 +@1057 := @29 (@733 @38) +@1069 := {vs : @147} -> + {ts : @148} -> (h : @13 @1057 @31) -> (hs : @225) -> @143 (@96 (@29 (@733 @153)) @36) @260 +@1070 := @1055 @785 +@1072 := @29 (@733 @40) +@1074 := @13 @1072 @31 +@1075 := @1026 @40 +@1077 := @96 @1041 @1017 +@1082 := {ts : @148} -> (h : @1074) -> (hs : @1075) -> @143 @1077 @260 +@1083 := @1070 @115 +@1085 := @96 @1057 @1025 +@1086 := @143 @1085 +@1089 := (h : @761) -> (hs : @1034) -> @1086 @116 +@1090 := @1083 @759 +@1092 := @96 @1072 @1032 +@1094 := @143 @1092 @116 +@1095 := (hs : @1038) -> @1094 +@1096 := @1090 @1036 +@1098 := @143 @787 @116 +@1099 := @221 @754 +@1101 := @29 (@731 @36) +@1114 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @1101 @38) -> (hs : @225) -> @143 (@96 (@29 (@731 @151)) @36) @171 +@1115 := @1099 @31 +@1117 := @29 (@731 @38) +@1129 := {vs : @147} -> + {ts : @148} -> (h : @13 @1117 @31) -> (hs : @225) -> @143 (@96 (@29 (@731 @153)) @36) @260 +@1130 := @1115 @787 +@1132 := @29 (@731 @40) +@1134 := @13 @1132 @31 +@1135 := @1086 @40 +@1137 := @96 @1101 @1077 +@1142 := {ts : @148} -> (h : @1134) -> (hs : @1135) -> @143 @1137 @260 +@1143 := @1130 @116 +@1145 := @96 @1117 @1085 +@1146 := @143 @1145 +@1149 := (h : @757) -> (hs : @1094) -> @1146 @117 +@1150 := @1143 @755 +@1152 := @96 @1132 @1092 +@1154 := @143 @1152 @117 +@1155 := (hs : @1098) -> @1154 +@1156 := @1150 @1096 +@1158 := @143 @789 @117 +@1159 := @221 @750 +@1161 := @29 (@729 @36) +@1174 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @1161 @38) -> (hs : @225) -> @143 (@96 (@29 (@729 @151)) @36) @171 +@1175 := @1159 @31 +@1177 := @29 (@729 @38) +@1189 := {vs : @147} -> + {ts : @148} -> (h : @13 @1177 @31) -> (hs : @225) -> @143 (@96 (@29 (@729 @153)) @36) @260 +@1190 := @1175 @789 +@1192 := @29 (@729 @40) +@1194 := @13 @1192 @31 +@1195 := @1146 @40 +@1197 := @96 @1161 @1137 +@1202 := {ts : @148} -> (h : @1194) -> (hs : @1195) -> @143 @1197 @260 +@1203 := @1190 @117 +@1205 := @96 @1177 @1145 +@1206 := @143 @1205 +@1209 := (h : @753) -> (hs : @1154) -> @1206 @796 +@1210 := @1203 @751 +@1212 := @96 @1192 @1152 +@1214 := @143 @1212 @796 +@1215 := (hs : @1158) -> @1214 +@1216 := @1210 @1156 +@1218 := @143 @791 @796 +@1219 := @221 @746 +@1221 := @29 (@727 @36) +@1234 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @1221 @38) -> (hs : @225) -> @143 (@96 (@29 (@727 @151)) @36) @171 +@1235 := @1219 @31 +@1237 := @29 (@727 @38) +@1249 := {vs : @147} -> + {ts : @148} -> (h : @13 @1237 @31) -> (hs : @225) -> @143 (@96 (@29 (@727 @153)) @36) @260 +@1250 := @1235 @791 +@1252 := @29 (@727 @40) +@1254 := @13 @1252 @31 +@1255 := @1206 @40 +@1257 := @96 @1221 @1197 +@1262 := {ts : @148} -> (h : @1254) -> (hs : @1255) -> @143 @1257 @260 +@1263 := @1250 @796 +@1265 := @96 @1237 @1205 +@1266 := @143 @1265 +@1269 := (h : @749) -> (hs : @1214) -> @1266 @797 +@1270 := @1263 @747 +@1272 := @96 @1252 @1212 +@1274 := @143 @1272 @797 +@1275 := (hs : @1218) -> @1274 +@1276 := @1270 @1216 +@1278 := @143 @793 @797 +@1279 := @221 @743 +@1281 := @5 (@725 @36) +@1294 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @1281 @38) -> (hs : @225) -> @143 (@96 (@5 (@725 @151)) @36) @171 +@1295 := @1279 @10 +@1297 := @5 (@725 @38) +@1299 := @13 @1297 @10 +@1304 := @143 (@96 (@5 (@725 @153)) @36) +@1305 := @798 @38 +@1310 := {vs : @147} -> {ts : @148} -> (h : @1299) -> (hs : @225) -> @1304 @1305 +@1311 := @1295 @793 +@1313 := @5 (@725 @40) +@1315 := @13 @1313 @10 +@1316 := @1266 @40 +@1318 := @96 @1281 @1257 +@1323 := {ts : @148} -> (h : @1315) -> (hs : @1316) -> @143 @1318 @1305 +@1324 := @1311 @797 +@1326 := @13 @743 @10 +@1328 := @96 @1297 @1265 +@1329 := @143 @1328 +@1332 := (h : @1326) -> (hs : @1274) -> @1329 @799 +@1333 := @1324 @745 +@1335 := @96 @1313 @1272 +@1337 := @143 @1335 @799 +@1338 := (hs : @1278) -> @1337 +@1339 := @1333 @1276 +@1341 := @143 @795 @799 +@1342 := @656 @720 +@1343 := @628 @720 +@1352 := {k : @35} -> + {fs : @147} -> {tys : @148} -> (h : @598 (@1343 @38) @606) -> (hf : @225) -> @657 @721 +@1353 := @1342 @9 +@1354 := @1343 @9 +@1355 := @598 @1354 +@1356 := @1355 @606 +@1361 := {fs : @147} -> {tys : @148} -> (h : @1356) -> (hf : @225) -> @682 @721 +@1362 := @1353 @795 +@1369 := {tys : @148} -> (h : @1356) -> (hf : @1329 @40) -> @13 (@680 @1318) @721 +@1370 := @1362 @799 +@1377 := (h : @1355 (@605 @799)) -> (hf : @1337) -> @13 (@680 @1328) @721 +@1379 := @1370 (@705 @1354) +@1383 := (hf : @1341) -> @13 (@680 @1335) @721 +@1384 := @1379 @1339 +@1387 := @13 (@680 @795) @721 +@1388 := fun (__s : @717) => @1384 +@1389 := Reasoning.Clinic.Triage.Step +@1391 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.__enc_2 @4 +@1392 := 2 +@1393 := @8 @1392 +@1395 := @13 @1391 @1393 +@1396 := (__v : @1389) -> @1395 +@1397 := fun (__v : @1389) => @1395 +@1398 := @656 @1392 +@1399 := @628 @1392 +@1408 := {k : @35} -> + {fs : @147} -> {tys : @148} -> (h : @598 (@1399 @38) @606) -> (hf : @225) -> @657 @1393 +@1409 := @1398 @9 +@1410 := @1399 @9 +@1411 := @598 @1410 +@1412 := @1411 @606 +@1417 := {fs : @147} -> {tys : @148} -> (h : @1412) -> (hf : @225) -> @682 @1393 +@1418 := @1409 @95 +@1421 := @13 (@680 @95) @1393 +@1424 := {tys : @148} -> (h : @1412) -> (hf : @271) -> @1421 +@1425 := @1418 @109 +@1426 := @605 @109 +@1429 := (h : @1411 @1426) -> (hf : @145) -> @1421 +@1432 := @1425 (@705 @1410) @142 +@1433 := @1398 @720 +@1434 := @1399 @720 +@1435 := @598 @1434 +@1436 := @1435 @606 +@1437 := @611 @720 +@1444 := {fs : @147} -> {tys : @148} -> (h : @1436) -> (hf : @225) -> @13 (@1437 @36) @1393 +@1445 := @1433 @95 +@1448 := @13 (@1437 @95) @1393 +@1451 := {tys : @148} -> (h : @1436) -> (hf : @271) -> @1448 +@1452 := @1445 @109 +@1455 := (h : @1435 @1426) -> (hf : @145) -> @1448 +@1458 := @1452 (@705 @1434) @142 +@1459 := @1398 @1392 +@1460 := @1399 @1392 +@1461 := @598 @1460 +@1462 := @1461 @606 +@1463 := @611 @1392 +@1470 := {fs : @147} -> {tys : @148} -> (h : @1462) -> (hf : @225) -> @13 (@1463 @36) @1393 +@1471 := @1459 @95 +@1474 := @13 (@1463 @95) @1393 +@1477 := {tys : @148} -> (h : @1462) -> (hf : @271) -> @1474 +@1478 := @1471 @109 +@1481 := (h : @1461 @1426) -> (hf : @145) -> @1474 +@1484 := @1478 (@705 @1460) @142 +@1485 := 3 +@1486 := @1398 @1485 +@1487 := @1399 @1485 +@1488 := @598 @1487 +@1489 := @1488 @606 +@1490 := @611 @1485 +@1497 := {fs : @147} -> {tys : @148} -> (h : @1489) -> (hf : @225) -> @13 (@1490 @36) @1393 +@1498 := @1486 @95 +@1501 := @13 (@1490 @95) @1393 +@1504 := {tys : @148} -> (h : @1489) -> (hf : @271) -> @1501 +@1505 := @1498 @109 +@1508 := (h : @1488 @1426) -> (hf : @145) -> @1501 +@1511 := @1505 (@705 @1487) @142 +@1512 := 4 +@1513 := @1398 @1512 +@1514 := @1399 @1512 +@1515 := @598 @1514 +@1516 := @1515 @606 +@1517 := @611 @1512 +@1524 := {fs : @147} -> {tys : @148} -> (h : @1516) -> (hf : @225) -> @13 (@1517 @36) @1393 +@1525 := @1513 @95 +@1528 := @13 (@1517 @95) @1393 +@1531 := {tys : @148} -> (h : @1516) -> (hf : @271) -> @1528 +@1532 := @1525 @109 +@1535 := (h : @1515 @1426) -> (hf : @145) -> @1528 +@1538 := @1532 (@705 @1514) @142 +@1539 := 5 +@1540 := @1398 @1539 +@1541 := @1399 @1539 +@1542 := @598 @1541 +@1543 := @1542 @606 +@1544 := @611 @1539 +@1551 := {fs : @147} -> {tys : @148} -> (h : @1543) -> (hf : @225) -> @13 (@1544 @36) @1393 +@1552 := @1540 @95 +@1555 := @13 (@1544 @95) @1393 +@1558 := {tys : @148} -> (h : @1543) -> (hf : @271) -> @1555 +@1559 := @1552 @109 +@1562 := (h : @1542 @1426) -> (hf : @145) -> @1555 +@1565 := @1559 (@705 @1541) @142 +@1566 := 6 +@1567 := @1398 @1566 +@1568 := @1399 @1566 +@1569 := @598 @1568 +@1570 := @1569 @606 +@1571 := @611 @1566 +@1578 := {fs : @147} -> {tys : @148} -> (h : @1570) -> (hf : @225) -> @13 (@1571 @36) @1393 +@1579 := @1567 @95 +@1582 := @13 (@1571 @95) @1393 +@1585 := {tys : @148} -> (h : @1570) -> (hf : @271) -> @1582 +@1586 := @1579 @109 +@1589 := (h : @1569 @1426) -> (hf : @145) -> @1582 +@1592 := @1586 (@705 @1568) @142 +@1593 := 7 +@1594 := @1398 @1593 +@1595 := @1399 @1593 +@1596 := @598 @1595 +@1597 := @1596 @606 +@1598 := @611 @1593 +@1605 := {fs : @147} -> {tys : @148} -> (h : @1597) -> (hf : @225) -> @13 (@1598 @36) @1393 +@1606 := @1594 @95 +@1609 := @13 (@1598 @95) @1393 +@1612 := {tys : @148} -> (h : @1597) -> (hf : @271) -> @1609 +@1613 := @1606 @109 +@1616 := (h : @1596 @1426) -> (hf : @145) -> @1609 +@1619 := @1613 (@705 @1595) @142 +@1631 := fun (__v : @1389) => + Reasoning.Clinic.Triage.Step.casesOn.{0} @1397 @4 @1432 @1458 @1484 @1511 @1538 @1565 @1592 @1619 +@1632 := @29 @149 +@1633 := @64 @149 +@1634 := @13 @1632 +@1635 := @1634 @31 +@1636 := @29 @151 +@1637 := @64 @151 +@1638 := @13 @1636 +@1639 := @1638 @31 +@1640 := @29 @153 +@1641 := @64 @153 +@1642 := @13 @1640 +@1643 := @1642 @31 +@1644 := @29 @36 +@1645 := @64 @36 +@1647 := @13 @1644 @31 +@1648 := @29 @38 +@1649 := @64 @38 +@1651 := @13 @1648 @31 +@1652 := @29 @40 +@1653 := @64 @40 +@1655 := @13 @1652 @31 +@1656 := @96 @1652 +@1657 := @1656 @95 +@1658 := @96 @1648 +@1659 := @1658 @1657 +@1660 := @96 @1644 +@1661 := @1660 @1659 +@1662 := @96 @1640 +@1663 := @1662 @1661 +@1664 := @96 @1636 +@1665 := @1664 @1663 +@1666 := @96 @1632 +@1667 := @1666 @1665 +@1670 := Prod.{0, 0} @35 @91 +@1673 := Prod.mk.{0, 0} @35 @91 +@1674 := @1673 @1539 +@1675 := @1674 @1652 +@1676 := @1673 @1512 +@1677 := @1676 @1648 +@1678 := @1673 @1485 +@1679 := @1678 @1644 +@1680 := @1673 @1392 +@1681 := @1680 @1640 +@1682 := @1673 @720 +@1683 := @1682 @1636 +@1684 := @1673 @9 +@1685 := @1684 @1632 +@1686 := @93 @1670 +@1687 := @94 @1670 +@1689 := @1687 @1685 @1686 +@1691 := @1687 @1683 @1689 +@1693 := @1687 @1681 @1691 +@1695 := @1687 @1679 @1693 +@1697 := @1687 @1677 @1695 +@1699 := @1687 @1675 @1697 +@1700 := Bool.true +@1701 := LexLeanTarget.TargetSyntax.Function +@1702 := LexLeanTarget.TargetSyntax.Program.functions +@1703 := @1702 @0 +@1704 := @93 @35 +@1705 := LexLeanTarget.TargetSyntax.Ty.unit +@1706 := LexLeanTarget.TargetSyntax.Value.unit +@1709 := LexLeanTarget.TargetSyntax.Expr.value @1705 @1706 +@1714 := LexLeanTarget.TargetSyntax.Function.mk @1704 @109 @1705 @1709 +@1719 := List.getD.{0} @1701 @1703 @9 @1714 +@1723 := fun (__e_n : @35) => + LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.RustCore.root @4 @9 +@1724 := @221 @1652 +@1725 := @1642 @38 +@1727 := @143 (@1666 @36) +@1733 := {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @1725) -> (hs : @225) -> @1727 @171 +@1734 := @1724 @31 +@1741 := {vs : @147} -> {ts : @148} -> (h : @1647) -> (hs : @225) -> @143 (@1664 @36) @260 +@1742 := @1734 @95 +@1743 := @1662 @95 +@1748 := {ts : @148} -> (h : @1651) -> (hs : @271) -> @143 @1743 @260 +@1749 := @1742 @109 +@1750 := @1660 @95 +@1751 := @143 @1750 +@1754 := (h : @1655) -> (hs : @145) -> @1751 @112 +@1755 := @1749 @1653 +@1756 := @1658 @95 +@1758 := @143 @1756 @112 +@1759 := (hs : @145) -> @1758 +@1760 := @1755 @142 +@1762 := @143 @1657 @112 +@1763 := @221 @1648 +@1764 := @1638 @38 +@1765 := @29 @157 +@1766 := @96 @1765 +@1768 := @143 (@1766 @36) +@1774 := {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @1764) -> (hs : @225) -> @1768 @171 +@1775 := @1763 @31 +@1780 := {vs : @147} -> {ts : @148} -> (h : @1643) -> (hs : @225) -> @1727 @260 +@1781 := @1775 @1657 +@1782 := @1751 @40 +@1783 := @1664 @1743 +@1788 := {ts : @148} -> (h : @1647) -> (hs : @1782) -> @143 @1783 @260 +@1789 := @1781 @112 +@1790 := @1662 @1750 +@1791 := @143 @1790 +@1794 := (h : @1651) -> (hs : @1758) -> @1791 @113 +@1795 := @1789 @1649 +@1796 := @1660 @1756 +@1798 := @143 @1796 @113 +@1799 := (hs : @1762) -> @1798 +@1800 := @1795 @1760 +@1802 := @143 @1659 @113 +@1803 := @221 @1644 +@1804 := @1634 @38 +@1805 := @29 @163 +@1806 := @96 @1805 +@1808 := @143 (@1806 @36) +@1814 := {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @1804) -> (hs : @225) -> @1808 @171 +@1815 := @1803 @31 +@1820 := {vs : @147} -> {ts : @148} -> (h : @1639) -> (hs : @225) -> @1768 @260 +@1821 := @1815 @1659 +@1822 := @1791 @40 +@1823 := @1666 @1783 +@1828 := {ts : @148} -> (h : @1643) -> (hs : @1822) -> @143 @1823 @260 +@1829 := @1821 @113 +@1830 := @1664 @1790 +@1831 := @143 @1830 +@1834 := (h : @1647) -> (hs : @1798) -> @1831 @114 +@1835 := @1829 @1645 +@1836 := @1662 @1796 +@1838 := @143 @1836 @114 +@1839 := (hs : @1802) -> @1838 +@1840 := @1835 @1800 +@1842 := @143 @1661 @114 +@1843 := @221 @1640 +@1844 := @13 @1765 +@1845 := @1844 @38 +@1846 := #9 +@1847 := @29 @1846 +@1848 := @96 @1847 +@1850 := @143 (@1848 @36) +@1856 := {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @1845) -> (hs : @225) -> @1850 @171 +@1857 := @1843 @31 +@1862 := {vs : @147} -> {ts : @148} -> (h : @1635) -> (hs : @225) -> @1808 @260 +@1863 := @1857 @1661 +@1864 := @1831 @40 +@1865 := @1766 @1823 +@1870 := {ts : @148} -> (h : @1639) -> (hs : @1864) -> @143 @1865 @260 +@1871 := @1863 @114 +@1872 := @1666 @1830 +@1873 := @143 @1872 +@1876 := (h : @1643) -> (hs : @1838) -> @1873 @115 +@1877 := @1871 @1641 +@1878 := @1664 @1836 +@1880 := @143 @1878 @115 +@1881 := (hs : @1842) -> @1880 +@1882 := @1877 @1840 +@1884 := @143 @1663 @115 +@1885 := @221 @1636 +@1886 := @13 @1805 +@1887 := @1886 @38 +@1888 := #10 +@1889 := @29 @1888 +@1890 := @96 @1889 +@1892 := @143 (@1890 @36) +@1898 := {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @1887) -> (hs : @225) -> @1892 @171 +@1899 := @1885 @31 +@1900 := @1844 @31 +@1905 := {vs : @147} -> {ts : @148} -> (h : @1900) -> (hs : @225) -> @1850 @260 +@1906 := @1899 @1663 +@1907 := @1873 @40 +@1908 := @1806 @1865 +@1913 := {ts : @148} -> (h : @1635) -> (hs : @1907) -> @143 @1908 @260 +@1914 := @1906 @115 +@1915 := @1766 @1872 +@1916 := @143 @1915 +@1919 := (h : @1639) -> (hs : @1880) -> @1916 @116 +@1920 := @1914 @1637 +@1921 := @1666 @1878 +@1923 := @143 @1921 @116 +@1924 := (hs : @1884) -> @1923 +@1925 := @1920 @1882 +@1927 := @143 @1665 @116 +@1928 := @221 @1632 +@1930 := @13 @1847 @38 +@1931 := #11 +@1932 := @29 @1931 +@1933 := @96 @1932 +@1941 := {t : @92} -> + {vs : @147} -> {ts : @148} -> (h : @1930) -> (hs : @225) -> @143 (@1933 @36) @171 +@1942 := @1928 @31 +@1948 := {vs : @147} -> {ts : @148} -> (h : @1886 @31) -> (hs : @225) -> @1892 @260 +@1949 := @1942 @1665 +@1950 := @1916 @40 +@1951 := @1848 @1908 +@1952 := @143 @1951 +@1956 := {ts : @148} -> (h : @1900) -> (hs : @1950) -> @1952 @260 +@1957 := @1949 @116 +@1958 := @1806 @1915 +@1959 := @143 @1958 +@1962 := (h : @1635) -> (hs : @1923) -> @1959 @117 +@1963 := @1957 @1633 +@1964 := @1766 @1921 +@1965 := @143 @1964 +@1967 := (hs : @1927) -> @1965 @117 +@1968 := @1963 @1925 +@1969 := @143 @1667 +@1970 := @1969 @117 +@1971 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.denote +@1977 := @1971 @149 @151 @153 @36 @38 @40 +@1978 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.__fits_0 +@1984 := @1978 @149 @151 @153 @36 @38 @40 +@1992 := @29 (Reasoning.Main.gatewayLevel @149 @151 @153 @36 @38 @40) +@1999 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.root @149 @151 @153 @36 @38 @40 +@2000 := Bool +@2001 := Ne.{1} +@2002 := LexLeanPreservation.Obs +@2003 := @2001 @2002 +@2004 := LexLeanPreservation.Rel +@2007 := @2003 (@2004 @40 @4) +@2008 := LexLeanPreservation.Obs.stuck +@2011 := (f : @2000) -> (v : @91) -> @2007 @2008 +@2013 := LexLeanPreservation.Rust.rel_ne_stuck @1984 +@2024 := (v : @91) -> @2003 (@2004 (@1978 @157 @149 @151 @153 @36 @38) @4) @2008 +@2025 := @2013 @1992 +@2029 := @2003 (@2004 @1984 @1992) @2008 +@2030 := @146 @1670 +@2031 := LexLeanPreservation.Rust.FunSem +@2037 := (n : @35) -> @2031 @1846 @163 @157 @4 @149 +@2038 := @596 @1701 +@2039 := @595 @2038 +@2046 := LexLeanRuntime.index (@146 @1701) @1701 (LexLeanRuntime.instIndexableList @1701) +@2050 := @2039 (@2046 (@1702 @1846) @149) +@2051 := @604 @1701 +@2052 := @2051 @151 +@2053 := @2050 @2052 +@2057 := @118 @1888 @1846 @163 @151 +@2058 := LexLeanTarget.TargetSyntax.Function.types +@2059 := @2058 @149 +@2060 := @2057 @2059 +@2061 := @596 @2030 +@2062 := @595 @2061 +@2063 := LexLeanTarget.TargetSemantics.bindAll +@2064 := LexLeanTarget.TargetSyntax.Function.parameters +@2069 := @2062 (@2063 (@2064 @157) @149 @1686) +@2070 := @604 @2030 +@2071 := @2070 @151 +@2072 := @2069 @2071 +@2073 := @596 @2000 +@2074 := @595 @2073 +@2075 := LexLeanPreservation.Rust.fnFallible +@2078 := @2074 (@2075 @1931 @1846) +@2079 := @604 @2000 +@2080 := @2079 @151 +@2081 := @2078 @2080 +@2082 := LexLeanPreservation.RunConv +@2083 := #13 +@2087 := @2082 @2083 @1888 @163 @151 +@2089 := @2003 @149 @2008 +@2090 := Exists.{1} +@2091 := LexLeanPreservation.Rust.ROut +@2092 := @2090 @2091 +@2093 := And +@2094 := LexLeanPreservation.Rust.RealizesFn +@2098 := @2093 (@2094 @1846 @163 @4) +@2099 := LexLeanPreservation.Rust.RCI +@2100 := #15 +@2101 := @2099 @2100 +@2102 := LexLeanPreservation.Rust.fnIdent +@2103 := @2102 @2083 +@2110 := (hne : @2089) -> @2092 (fun (ro : @2091) => @2098 (@2101 @2103 @1931 @4)) +@2125 := {p : @32} -> + {c : @33} -> + {A : @34} -> + {f : @35} -> + {fn : @1701} -> + {args : @147} -> + {env : @2030} -> + {F : @2000} -> + {o : @2002} -> + (hB : @2037) -> + (hfn : @2053) -> (hwt : @2060) -> (hbind : @2072) -> (hF : @2081) -> (hA : @2087) -> @2110 +@2127 := LexLeanPreservation.Rust.compose @0 +@2128 := @2031 @0 +@2133 := (n : @35) -> @2128 @163 @157 @4 @149 +@2134 := @2046 @1703 +@2137 := @2039 (@2134 @149) @2052 +@2141 := @129 @1846 @163 @151 @2059 +@2142 := @2082 @0 +@2145 := @2142 @1888 @163 @151 +@2159 := {c : @33} -> + {A : @34} -> + {f : @35} -> + {fn : @1701} -> + {args : @147} -> + {env : @2030} -> + {F : @2000} -> + {o : @2002} -> + (hB : @2133) -> + (hfn : @2137) -> (hwt : @2141) -> (hbind : @2072) -> (hF : @2081) -> (hA : @2145) -> @2110 +@2160 := @2127 @1 +@2161 := @2128 @1 +@2165 := (n : @35) -> @2161 @157 @4 @149 +@2168 := @137 @163 @151 @2059 +@2169 := @2075 @1 +@2172 := @2074 (@2169 @1846) @2080 +@2173 := @2099 @1 +@2183 := (hbind : @2072) -> + (hF : @2172) -> + (hA : @2145) -> (hne : @2089) -> @2092 (fun (ro : @2091) => @2098 (@2173 @2103 @1931 @4)) +@2193 := {A : @34} -> + {f : @35} -> + {fn : @1701} -> + {args : @147} -> + {env : @2030} -> + {F : @2000} -> {o : @2002} -> (hB : @2165) -> (hfn : @2137) -> (hwt : @2168) -> @2183 +@2194 := @2160 @2 +@2196 := @2161 @2 @4 +@2198 := (n : @35) -> @2196 @149 +@2199 := @143 @151 +@2200 := @2199 @2059 +@2209 := {f : @35} -> + {fn : @1701} -> + {args : @147} -> + {env : @2030} -> + {F : @2000} -> {o : @2002} -> (hB : @2198) -> (hfn : @2137) -> (hwt : @2200) -> @2183 +@2210 := @2194 @9 +@2212 := (n : @35) -> @2196 @9 +@2213 := @2134 @9 +@2214 := @2039 @2213 +@2215 := @2214 @2052 +@2216 := @2169 @9 +@2217 := @2074 @2216 +@2218 := @2217 @2080 +@2219 := @2142 @9 +@2221 := @2219 @163 @151 +@2223 := @2173 (@2102 @9) +@2231 := (hF : @2218) -> + (hA : @2221) -> (hne : @2089) -> @2092 (fun (ro : @2091) => @2098 (@2223 @1931 @4)) +@2240 := {fn : @1701} -> + {args : @147} -> + {env : @2030} -> + {F : @2000} -> + {o : @2002} -> (hB : @2212) -> (hfn : @2215) -> (hwt : @2200) -> (hbind : @2072) -> @2231 +@2241 := @2210 @1719 +@2243 := @2214 (@2051 @1719) +@2244 := @2058 @1719 +@2245 := @2199 @2244 +@2247 := @2063 (@2064 @1719) +@2259 := {args : @147} -> + {env : @2030} -> + {F : @2000} -> + {o : @2002} -> + (hB : @2212) -> + (hfn : @2243) -> (hwt : @2245) -> (hbind : @2062 (@2247 @149 @1686) @2071) -> @2231 +@2260 := @2241 @1667 +@2266 := @1933 (@1890 (@1848 (@1806 (@1766 (@1666 @95))))) +@2268 := @143 @2266 @2244 +@2269 := #12 +@2271 := @96 (@29 @2269) +@2277 := @2271 (@1933 (@1890 (@1848 (@1806 (@1766 @95))))) +@2281 := @2062 (@2247 @2277 @1686) @2071 +@2282 := #14 +@2284 := @96 (@29 @2282) +@2286 := @96 (@29 @2083) +@2292 := @2284 (@2286 (@2271 (@1933 (@1890 (@1848 @95))))) +@2294 := @2219 @2292 @151 +@2297 := @96 (@29 #17) +@2300 := @96 (@29 #16) +@2302 := @96 (@29 @2100) +@2323 := {env : @2030} -> + {F : @2000} -> + {o : @2002} -> + (hB : @2212) -> + (hfn : @2243) -> + (hwt : @2268) -> + (hbind : @2281) -> + (hF : @2218) -> + (hA : @2294) -> + (hne : @2089) -> + @2092 (fun (ro : @2091) => @2098 (@2223 (@2297 (@2300 (@2302 (@2284 (@2286 (@2271 @95)))))) @4)) +@2324 := @2260 @1699 +@2330 := @1890 (@1848 (@1806 (@1766 (@1666 (@1664 @95))))) +@2332 := @143 @2330 @2244 +@2355 := @2062 + (@2247 @2266 @1686) + (@2070 + (@1687 + (@1674 @1632) + (@1687 + (@1676 @1765) + (@1687 + (@1678 @1805) + (@1687 (@1680 @1847) (@1687 (@1682 @1889) (@1687 (@1684 @1932) @1686))))))) +@2361 := @2286 (@2271 (@1933 (@1890 (@1848 (@1806 @95))))) +@2383 := {F : @2000} -> + {o : @2002} -> + (hB : @2212) -> + (hfn : @2243) -> + (hwt : @2332) -> + (hbind : @2355) -> + (hF : @2218) -> + (hA : @2219 @2361 @151) -> + (hne : @2089) -> + @2092 (fun (ro : @2091) => @2098 (@2223 (@2300 (@2302 (@2284 (@2286 (@2271 (@1933 @95)))))) @4)) +@2384 := @2324 @1700 +@2385 := @1952 @2244 +@2408 := @2062 + (@2247 @2330 @1686) + (@2070 + (@1687 + (@1674 @1636) + (@1687 + (@1676 @1632) + (@1687 + (@1678 @1765) + (@1687 (@1680 @1805) (@1687 (@1682 @1847) (@1687 (@1684 @1889) @1686))))))) +@2410 := @2217 (@2079 @1700) +@2412 := @2219 @2277 @151 +@2413 := @2094 @1700 +@2435 := {o : @2002} -> + (hB : @2212) -> + (hfn : @2243) -> + (hwt : @2385) -> + (hbind : @2408) -> + (hF : @2410) -> + (hA : @2412) -> + (hne : @2089) -> + @2092 + (fun (ro : @2091) => + @2093 (@2413 @163 @4) (@2223 (@2302 (@2284 (@2286 (@2271 (@1933 (@1890 @95)))))) @4)) +@2436 := @2384 @1977 +@2437 := @1959 @2244 +@2460 := @2062 + (@2247 @1951 @1686) + (@2070 + (@1687 + (@1674 @1640) + (@1687 + (@1676 @1636) + (@1687 + (@1678 @1632) + (@1687 (@1680 @1765) (@1687 (@1682 @1805) (@1687 (@1684 @1847) @1686))))))) +@2461 := @2219 @2266 +@2467 := @1971 @1931 @1888 @1846 @163 @157 @149 +@2468 := @2461 @2467 +@2474 := @1971 @2269 @1931 @1888 @1846 @163 @157 +@2497 := (hB : @2212) -> + (hfn : @2243) -> + (hwt : @2437) -> + (hbind : @2460) -> + (hF : @2410) -> + (hA : @2468) -> + (hne : @2003 @2474 @2008) -> + @2092 + (fun (ro : @2091) => + @2093 (@2413 (@1971 @2282 @2083 @2269 @1931 @1888 @1846) @4) (@2223 @2292 @4)) +@2498 := @2436 @1723 +@2499 := @1965 @2244 +@2522 := @2062 + (@2247 @1958 @1686) + (@2070 + (@1687 + (@1674 @1644) + (@1687 + (@1676 @1640) + (@1687 + (@1678 @1636) + (@1687 (@1680 @1632) (@1687 (@1682 @1765) (@1687 (@1684 @1805) @1686))))))) +@2523 := @2219 @2330 +@2529 := @1971 @1888 @1846 @163 @157 @149 @151 +@2552 := (hfn : @2243) -> + (hwt : @2499) -> + (hbind : @2522) -> + (hF : @2410) -> + (hA : @2523 @2529) -> + (hne : @2003 @2467 @2008) -> + @2092 + (fun (ro : @2091) => + @2093 (@2413 (@1971 @2083 @2269 @1931 @1888 @1846 @163) @4) (@2223 @2361 @4)) +@2555 := @2498 (@704 @2038 @2213) +@2556 := @1969 @2244 +@2579 := @2062 + (@2247 @1964 @1686) + (@2070 + (@1687 + (@1674 @1648) + (@1687 + (@1676 @1644) + (@1687 + (@1678 @1640) + (@1687 (@1680 @1636) (@1687 (@1682 @1632) (@1687 (@1684 @1765) @1686))))))) +@2580 := @2219 @1951 +@2586 := @1971 @1846 @163 @157 @149 @151 @153 +@2602 := (hwt : @2556) -> + (hbind : @2579) -> + (hF : @2410) -> + (hA : @2580 @2586) -> + (hne : @2003 @2529 @2008) -> @2092 (fun (ro : @2091) => @2093 (@2413 @2474 @4) (@2223 @2277 @4)) +@2603 := @2555 @1968 +@2605 := @2247 @1667 @1686 +@2608 := @2062 @2605 (@2070 @1699) +@2609 := @2219 @1958 +@2615 := @1971 @163 @157 @149 @151 @153 @36 +@2630 := (hbind : @2608) -> + (hF : @2410) -> + (hA : @2609 @2615) -> + (hne : @2003 @2586 @2008) -> @2092 (fun (ro : @2091) => @2093 (@2413 @2467 @4) (@2223 @2266 @4)) +@2633 := @2603 (@704 @2061 @2605) +@2634 := @2219 @1964 +@2640 := @1971 @157 @149 @151 @153 @36 @38 +@2654 := (hF : @2410) -> + (hA : @2634 @2640) -> + (hne : @2003 @2615 @2008) -> @2092 (fun (ro : @2091) => @2093 (@2413 @2529 @4) (@2223 @2330 @4)) +@2657 := @2633 (@704 @2073 @2216) +@2671 := (hA : @2219 @1667 @1977) -> + (hne : @2003 @2640 @2008) -> @2092 (fun (ro : @2091) => @2093 (@2413 @2586 @4) (@2223 @1951 @4)) +@2672 := @2657 @1999 +@2683 := (hne : @2003 @1977 @2008) -> + @2092 (fun (ro : @2091) => @2093 (@2413 @2615 @4) (@2223 @1958 @4)) +@2684 := @2672 @2025 +@2690 := @2093 (@2413 @2640 @4) (@2223 @1964 @4) +@2692 := @2092 (fun (ro : @2091) => @2690) +@2694 := @2092 (fun (__e_ro : @2091) => @2690) +@2703 := LexLeanPreservation.Rust.RepresentableL + (@1664 (@1662 (@1660 (@1658 (@1656 (@96 @42 @95)))))) +@2704 := (__e_hrep : @2703) -> @2694 +@2705 := fun (__e_hrep : @2703) => @2684 +@2706 := (infection : @35) -> @2704 +@2707 := fun (infection : @35) => @2705 +@2708 := (systolic : @35) -> @2706 +@2709 := fun (systolic : @35) => @2707 +@2710 := (whiteCells : @35) -> @2708 +@2711 := fun (whiteCells : @35) => @2709 +@2712 := (respiratoryRate : @35) -> @2710 +@2713 := fun (respiratoryRate : @35) => @2711 +@2714 := (heartRate : @35) -> @2712 +@2715 := fun (heartRate : @35) => @2713 +@2716 := (temperature : @35) -> @2714 +@2717 := fun (temperature : @35) => @2715 +\end{coremodule} +\end{lexlean} diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R1/RustCore.lean b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R1/RustCore.lean new file mode 100644 index 000000000..962eba60f --- /dev/null +++ b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R1/RustCore.lean @@ -0,0 +1,376 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.RustCore +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [{ constructors := [[.nat, .nat, .nat, .nat, .nat, .nat]] }, + { constructors := [[(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]] }, + { constructors := [[], [], [], [], [], [], [], []] }], functions := (( + { parameters := [0, 1, 2, 3, 4, 5], types := [.nat, .nat, .nat, .nat, .nat, .nat], result := .nat, + body := (.«match» .nat (.call 1 [(.build (.adt 0) (.adt 0) [(.var 0), (.var 1), (.var 2), (.var 3), (.var 4), (.var 5)])]) [(.arm .ok [6] (.var 6)), (.arm .error [7] (.value .nat (.nat 9)))]) }) ::( + { parameters := [0], types := [(.adt 0)], result := (.result .nat (.pair .bool .bool)), + body := (.call 2 [(.var 0)]) }) ::( + { parameters := [0], types := [(.adt 0)], result := (.result .nat (.pair .bool .bool)), + body := (.call 3 [(.var 0)]) }) ::( + { parameters := [0], types := [(.adt 0)], result := (.result .nat (.pair .bool .bool)), + body := (.«let» 1 (.pair (.adt 1) .bool) (.call 4 [(.var 0)]) (.«match» (.result .nat (.pair .bool .bool)) (.second (.var 1)) [(.arm .true [] (.call 5 [(.var 0), (.first (.var 1))])), (.arm .false [] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])]))])) }) ::( + { parameters := [0], types := [(.adt 0)], result := (.pair (.adt 1) .bool), + body := (.call 6 [(.closure 7 []), (.value .nat (.nat 11)), (.call 8 [(.var 0)])]) }) ::( + { parameters := [0, 1], types := [(.adt 0), (.adt 1)], result := (.result .nat (.pair .bool .bool)), + body := (.«match» (.result .nat (.pair .bool .bool)) (.call 9 [(.var 0), (.var 1)]) [(.arm .some [2] (.build .ok (.result .nat (.pair .bool .bool)) [(.var 2)])), (.arm .none [] (.«match» (.result .nat (.pair .bool .bool)) (.call 10 [(.var 1)]) [(.arm .some [3] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])])])), (.arm .none [] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])])]))]))]) }) ::( + { parameters := [0, 1, 2], types := [(.fn [(.adt 1)] (.option (.adt 1))), .nat, (.adt 1)], result := (.pair (.adt 1) .bool), + body := (.«match» (.pair (.adt 1) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.adt 1) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.adt 1) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.adt 1) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 6 [(.var 0), (.var 3), (.var 4)]))]))]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.«match» (.option (.adt 1)) (.call 11 [(.var 0)]) [(.arm .none [] (.build .none (.option (.adt 1)) [])), (.arm .some [1] (.call 12 [(.var 0), (.var 1)]))]) }) ::( + { parameters := [0], types := [(.adt 0)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.var 0), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0))]) }) ::( + { parameters := [0, 1], types := [(.adt 0), (.adt 1)], result := (.option .nat), + body := (.«match» (.option .nat) (.call 10 [(.var 1)]) [(.arm .none [] (.build .none (.option .nat) [])), (.arm .some [2] (.cond (.call 13 [(.var 0), (.var 2)]) (.build .some (.option .nat) [(.var 2)]) (.build .none (.option .nat) [])))]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option .nat), + body := (.build .some (.option .nat) [(.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 2)), + body := (.«match» (.option (.adt 2)) (.«match» (.option (.adt 2)) (.«match» (.option (.adt 2)) (.cond (.call 14 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 0) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [1] (.build .some (.option (.adt 2)) [(.var 1)])), (.arm .none [] (.cond (.call 15 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 1) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]) [(.arm .some [2] (.build .some (.option (.adt 2)) [(.var 2)])), (.arm .none [] (.«match» (.option (.adt 2)) (.cond (.call 16 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 2) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [3] (.build .some (.option (.adt 2)) [(.var 3)])), (.arm .none [] (.cond (.call 17 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 3) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]))]) [(.arm .some [4] (.build .some (.option (.adt 2)) [(.var 4)])), (.arm .none [] (.«match» (.option (.adt 2)) (.«match» (.option (.adt 2)) (.cond (.call 18 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 4) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [5] (.build .some (.option (.adt 2)) [(.var 5)])), (.arm .none [] (.cond (.call 19 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 5) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]) [(.arm .some [6] (.build .some (.option (.adt 2)) [(.var 6)])), (.arm .none [] (.«match» (.option (.adt 2)) (.cond (.call 20 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 6) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [7] (.build .some (.option (.adt 2)) [(.var 7)])), (.arm .none [] (.cond (.call 21 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 7) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]))]))]) }) ::( + { parameters := [0, 1], types := [(.adt 1), (.adt 2)], result := (.option (.adt 1)), + body := (.«match» (.option (.adt 1)) (.var 1) [(.arm (.adt 0) [] (.call 22 [(.var 0)])), (.arm (.adt 1) [] (.call 23 [(.var 0)])), (.arm (.adt 2) [] (.call 24 [(.var 0)])), (.arm (.adt 3) [] (.call 25 [(.var 0)])), (.arm (.adt 4) [] (.call 26 [(.var 0)])), (.arm (.adt 5) [] (.call 27 [(.var 0)])), (.arm (.adt 6) [] (.call 28 [(.var 0)])), (.arm (.adt 7) [] (.call 29 [(.var 0)]))]) }) ::( + { parameters := [0, 1], types := [(.adt 0), .nat], result := .bool, + body := (.cond (.prim .natLe [(.var 1), (.value .nat (.nat 3))]) (.cond (.prim .natEq [(.var 1), (.value .nat (.nat 3))]) (.build .true .bool []) (.prim .boolNot [(.cond (.call 30 [(.var 0)]) (.cond (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 1))]) (.cond (.call 31 [(.var 0)]) (.call 32 [(.var 0)]) (.build .false .bool [])) (.build .false .bool [])) (.build .false .bool []))])) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 1), (.value .nat (.nat 0))]) (.call 31 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 2), (.value .nat (.nat 0))]) (.call 32 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 3), (.value .nat (.nat 0))]) (.call 33 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 4), (.value .nat (.nat 0))]) (.call 34 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 0))]) (.prim .natLe [(.value .nat (.nat 2)), (.prim .natAdd [(.prim .natAdd [(.prim .natAdd [(.field (.var 0) 1), (.field (.var 0) 2)]), (.field (.var 0) 3)]), (.field (.var 0) 4)])]) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 0))]) (.cond (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 1))]) (.prim .natEq [(.field (.field (.var 0) 0) 5), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 7), (.value .nat (.nat 0))]) (.cond (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 1))]) (.call 30 [(.field (.var 0) 0)]) (.build .false .bool [])) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natLt [(.field (.var 0) 8), (.value .nat (.nat 3))]) (.cond (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 0))]) (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .true .bool []) (.cond (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 1))]) (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .true .bool []) (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 2))]) (.prim .natEq [(.field (.var 0) 7), (.value .nat (.nat 1))]) (.build .false .bool [])))) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 14 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 35 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 15 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 36 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 16 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 37 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 17 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 38 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 18 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 39 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 19 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 40 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 20 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 41 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 21 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 42 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.prim .natLt [(.field (.var 0) 4), (.value .nat (.nat 90))]) }) ::( + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.prim .natLt [(.value .nat (.nat 380)), (.field (.var 0) 0)]) }) ::( + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.prim .natLt [(.value .nat (.nat 90)), (.field (.var 0) 1)]) }) ::( + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.prim .natLt [(.value .nat (.nat 20)), (.field (.var 0) 2)]) }) ::( + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.prim .natLt [(.value .nat (.nat 12)), (.field (.var 0) 3)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.value .nat (.nat 1)), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.value .nat (.nat 1)), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.value .nat (.nat 1)), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.value .nat (.nat 1)), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.value .nat (.nat 1)), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.value .nat (.nat 1)), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.value .nat (.nat 1)), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.prim .natAdd [(.field (.var 0) 8), (.value .nat (.nat 1))])]) }) ::[]) } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .core, items := ((.enum (.adt 0) [{ number := 0, fields := [.nat, .nat, .nat, .nat, .nat, .nat] }]) :: + (.enum (.adt 1) [{ number := 0, fields := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat] }]) :: + (.enum (.adt 2) [{ number := 0, fields := [] }, { number := 1, fields := [] }, { number := 2, fields := [] }, { number := 3, fields := [] }, { number := 4, fields := [] }, { number := 5, fields := [] }, { number := 6, fields := [] }, { number := 7, fields := [] }]) :: + (.enum (.fn 0) [{ number := 7, fields := [] }]) :: + (.apply 0 [(.adt 1)] (.option (.adt 1)) true [{ function := 7, captures := [], functionFallible := true }]) :: + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := .nat }, { pattern := (.bind (.generated .binding 3)), type := .nat }, { pattern := (.bind (.generated .binding 4)), type := .nat }, { pattern := (.bind (.generated .binding 5)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 1)) none (.call (.function 1) [(.construct (.adt 0 0) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1)), (.copy (.generated .binding 2)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4)), (.copy (.generated .binding 5))])] true))] (.matchOn (.move (.generated .holder 1)) [(.mk (.ok (.bind (.generated .binding 6))) (.mk [] (.succeed (.copy (.generated .binding 6))))), (.mk (.err .wild) (.mk [] (.succeed (.lit (.nat 9)))))]))) :: + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible (.result .nat (.pair .bool .bool))) (.mk [] (.call (.function 2) [(.move (.generated .binding 0))] false))) :: + (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible (.result .nat (.pair .bool .bool))) (.mk [] (.call (.function 3) [(.move (.generated .binding 0))] false))) :: + (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible (.result .nat (.pair .bool .bool))) (.mk [(.mk (.bind (.generated .binding 1)) (some (.pair (.adt 1) .bool)) (.call (.function 4) [(.clone (.generated .binding 0))] true)), (.mk (.bind (.generated .holder 3)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 2))]) none (.move (.generated .binding 1)))] (.move (.generated .part 2)))))] (.cond (.move (.generated .holder 3)) (.mk [] (.succeed (.call (.function 5) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 4)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 4))))] false))) (.mk [] (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))])))))) :: + (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible (.pair (.adt 1) .bool)) (.mk [] (.call (.function 6) [(.construct (.closure 0 7) []), (.lit (.nat 11)), (.call (.function 8) [(.move (.generated .binding 0))] false)] false))) :: + (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 1) }] (.result .nat (.pair .bool .bool)) (.mk [(.mk (.bind (.generated .holder 5)) none (.call (.function 9) [(.move (.generated .binding 0)), (.clone (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 5)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 6)) none (.call (.function 10) [(.move (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 6)) [(.mk .none (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))]))), (.mk (.some .wild) (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))])))]))) :: + (.function (.generated .function 6) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := (.adt 1) }] (.fallible (.pair (.adt 1) .bool)) (.mk [(.mk (.bind (.generated .holder 7)) none (.copy (.generated .binding 1)))] (.cond (.isZero (.generated .holder 7)) (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 7))), (.mk (.bind (.generated .holder 9)) none (.block (.mk [(.mk (.bind (.generated .callee 8)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 8) [(.clone (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 9)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 6) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))]))))) :: + (.function (.generated .function 7) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.fallible (.option (.adt 1))) (.mk [(.mk (.bind (.generated .holder 10)) none (.call (.function 11) [(.clone (.generated .binding 0))] true))] (.matchOn (.move (.generated .holder 10)) [(.mk .none (.mk [] (.succeed (.construct (.none (.adt 1)) [])))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.call (.function 12) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false)))]))) :: + (.function (.generated .function 8) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.move (.generated .binding 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0))]))) :: + (.function (.generated .function 9) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 1) }] (.option .nat) (.mk [(.mk (.bind (.generated .holder 11)) none (.call (.function 10) [(.move (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 11)) [(.mk .none (.mk [] (.construct (.none .nat) []))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.cond (.call (.function 13) [(.move (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.mk [] (.construct .some [(.copy (.generated .binding 2))])) (.mk [] (.construct (.none .nat) [])))))]))) :: + (.function (.generated .function 10) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.option .nat) (.mk [] (.construct .some [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 12))]) (.mk [] (.move (.generated .part 12))))])]))) :: + (.function (.generated .function 11) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.fallible (.option (.adt 2))) (.mk [(.mk (.bind (.generated .holder 16)) none (.block (.mk [(.mk (.bind (.generated .holder 14)) none (.block (.mk [(.mk (.bind (.generated .holder 13)) none (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 0) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [] (.cond (.call (.function 15) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 1) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.construct .some [(.move (.generated .binding 1))])))]))))] (.matchOn (.move (.generated .holder 14)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 15)) none (.cond (.call (.function 16) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 2) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 15)) [(.mk .none (.mk [] (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 3) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.construct .some [(.move (.generated .binding 3))])))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.construct .some [(.move (.generated .binding 2))])))]))))] (.matchOn (.move (.generated .holder 16)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 18)) none (.block (.mk [(.mk (.bind (.generated .holder 17)) none (.cond (.call (.function 18) [(.clone (.generated .binding 0))] true) (.mk [] (.construct .some [(.construct (.adt 2 4) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 17)) [(.mk .none (.mk [] (.cond (.call (.function 19) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 5) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.construct .some [(.move (.generated .binding 5))])))]))))] (.matchOn (.move (.generated .holder 18)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 19)) none (.cond (.call (.function 20) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 6) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 19)) [(.mk .none (.mk [] (.cond (.call (.function 21) [(.move (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.construct (.adt 2 7) [])]))) (.mk [] (.succeed (.construct (.none (.adt 2)) [])))))), (.mk (.some (.bind (.generated .binding 7))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 7))]))))]))), (.mk (.some (.bind (.generated .binding 6))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 6))]))))]))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 4))]))))]))) :: + (.function (.generated .function 12) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 2) }] (.fallible (.option (.adt 1))) (.mk [(.mk (.bind (.generated .holder 20)) none (.move (.generated .binding 1)))] (.matchOn (.move (.generated .holder 20)) [(.mk (.adt 2 0 []) (.mk [] (.succeed (.call (.function 22) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 1 []) (.mk [] (.succeed (.call (.function 23) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 2 []) (.mk [] (.succeed (.call (.function 24) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 3 []) (.mk [] (.succeed (.call (.function 25) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 4 []) (.mk [] (.call (.function 26) [(.move (.generated .binding 0))] false))), (.mk (.adt 2 5 []) (.mk [] (.succeed (.call (.function 27) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 6 []) (.mk [] (.succeed (.call (.function 28) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 7 []) (.mk [] (.call (.function 29) [(.move (.generated .binding 0))] false)))]))) :: + (.function (.generated .function 13) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .operand 21)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 22)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natLe) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false) (.mk [(.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 24)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 28)) none (.cond (.call (.function 30) [(.clone (.generated .binding 0))] false) (.mk [(.mk (.bind (.generated .operand 26)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 25))]) (.mk [] (.move (.generated .part 25))))])), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] false) (.mk [] (.cond (.call (.function 31) [(.clone (.generated .binding 0))] false) (.mk [] (.call (.function 32) [(.move (.generated .binding 0))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))))] (.call (.runtime .boolNot) [(.move (.generated .operand 28))] false)))) (.mk [] (.lit (.bool false)))))) :: + (.function (.generated .function 14) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .operand 30)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 29)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 29))))])), (.mk (.bind (.generated .operand 31)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] false) (.mk [] (.call (.function 31) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 32)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 32))))])] false)) (.mk [] (.lit (.bool false)))))) :: + (.function (.generated .function 15) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .operand 34)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 33)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 33))))])), (.mk (.bind (.generated .operand 35)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 34)), (.move (.generated .operand 35))] false) (.mk [] (.call (.function 32) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 36)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 36))))])] false)) (.mk [] (.lit (.bool false)))))) :: + (.function (.generated .function 16) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .operand 38)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 37)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 37))))])), (.mk (.bind (.generated .operand 39)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 38)), (.move (.generated .operand 39))] false) (.mk [] (.call (.function 33) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 40)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 40))))])] false)) (.mk [] (.lit (.bool false)))))) :: + (.function (.generated .function 17) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .operand 42)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 41)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 41))))])), (.mk (.bind (.generated .operand 43)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 42)), (.move (.generated .operand 43))] false) (.mk [] (.call (.function 34) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 44)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 44))))])] false)) (.mk [] (.lit (.bool false)))))) :: + (.function (.generated .function 18) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.fallible .bool) (.mk [(.mk (.bind (.generated .operand 46)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 45)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 45))))])), (.mk (.bind (.generated .operand 47)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 46)), (.move (.generated .operand 47))] false) (.mk [(.mk (.bind (.generated .operand 58)) none (.lit (.nat 2))), (.mk (.bind (.generated .operand 59)) none (.block (.mk [(.mk (.bind (.generated .operand 56)) none (.block (.mk [(.mk (.bind (.generated .operand 53)) none (.block (.mk [(.mk (.bind (.generated .operand 50)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 48)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 48))))])), (.mk (.bind (.generated .operand 51)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 49)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 49))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 50)), (.move (.generated .operand 51))] true)))), (.mk (.bind (.generated .operand 54)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 52)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 52))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] true)))), (.mk (.bind (.generated .operand 57)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 55)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 55))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 56)), (.move (.generated .operand 57))] true))))] (.succeed (.call (.runtime .natLe) [(.move (.generated .operand 58)), (.move (.generated .operand 59))] false))) (.mk [] (.succeed (.lit (.bool false))))))) :: + (.function (.generated .function 19) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .operand 61)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 60)), .wild, .wild]) (.mk [] (.move (.generated .part 60))))])), (.mk (.bind (.generated .operand 62)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 61)), (.move (.generated .operand 62))] false) (.mk [(.mk (.bind (.generated .operand 64)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 63)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 63))))])), (.mk (.bind (.generated .operand 65)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 64)), (.move (.generated .operand 65))] false) (.mk [(.mk (.bind (.generated .operand 69)) none (.block (.mk [(.mk (.bind (.generated .holder 68)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 67)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 67))))]))] (.matchOn (.move (.generated .holder 68)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 66))]) (.mk [] (.move (.generated .part 66))))])))), (.mk (.bind (.generated .operand 70)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 69)), (.move (.generated .operand 70))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))))) :: + (.function (.generated .function 20) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .operand 72)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 71)), .wild]) (.mk [] (.move (.generated .part 71))))])), (.mk (.bind (.generated .operand 73)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 72)), (.move (.generated .operand 73))] false) (.mk [(.mk (.bind (.generated .operand 75)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 74)), .wild, .wild]) (.mk [] (.move (.generated .part 74))))])), (.mk (.bind (.generated .operand 76)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 75)), (.move (.generated .operand 76))] false) (.mk [] (.call (.function 30) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 77)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 77))))])] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))))) :: + (.function (.generated .function 21) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .operand 79)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 78))]) (.mk [] (.move (.generated .part 78))))])), (.mk (.bind (.generated .operand 80)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 79)), (.move (.generated .operand 80))] false) (.mk [(.mk (.bind (.generated .operand 82)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))])), (.mk (.bind (.generated .operand 83)) none (.lit (.nat 0)))] (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 82)), (.move (.generated .operand 83))] false) (.mk [(.mk (.bind (.generated .operand 85)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 84)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 84))))])), (.mk (.bind (.generated .operand 86)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 85)), (.move (.generated .operand 86))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 88)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 87))]) (.mk [] (.move (.generated .part 87))))])), (.mk (.bind (.generated .operand 89)) none (.lit (.nat 1)))] (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 88)), (.move (.generated .operand 89))] false) (.mk [(.mk (.bind (.generated .operand 91)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 90)), .wild, .wild]) (.mk [] (.move (.generated .part 90))))])), (.mk (.bind (.generated .operand 92)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 94)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 93))]) (.mk [] (.move (.generated .part 93))))])), (.mk (.bind (.generated .operand 95)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 94)), (.move (.generated .operand 95))] false) (.mk [(.mk (.bind (.generated .operand 97)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 96)), .wild]) (.mk [] (.move (.generated .part 96))))])), (.mk (.bind (.generated .operand 98)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 97)), (.move (.generated .operand 98))] false)) (.mk [] (.lit (.bool false))))))))) (.mk [] (.lit (.bool false)))))) :: + (.function (.generated .function 22) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.option (.adt 1)) (.mk [] (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 35) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))))) :: + (.function (.generated .function 23) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.option (.adt 1)) (.mk [] (.cond (.call (.function 15) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 36) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))))) :: + (.function (.generated .function 24) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.option (.adt 1)) (.mk [] (.cond (.call (.function 16) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 37) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))))) :: + (.function (.generated .function 25) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.option (.adt 1)) (.mk [] (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 38) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))))) :: + (.function (.generated .function 26) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.fallible (.option (.adt 1))) (.mk [] (.cond (.call (.function 18) [(.clone (.generated .binding 0))] true) (.mk [] (.succeed (.construct .some [(.call (.function 39) [(.move (.generated .binding 0))] false)]))) (.mk [] (.succeed (.construct (.none (.adt 1)) [])))))) :: + (.function (.generated .function 27) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.option (.adt 1)) (.mk [] (.cond (.call (.function 19) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 40) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))))) :: + (.function (.generated .function 28) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.option (.adt 1)) (.mk [] (.cond (.call (.function 20) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 41) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))))) :: + (.function (.generated .function 29) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.fallible (.option (.adt 1))) (.mk [] (.cond (.call (.function 21) [(.clone (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.call (.function 42) [(.move (.generated .binding 0))] true)]))) (.mk [] (.succeed (.construct (.none (.adt 1)) [])))))) :: + (.function (.generated .function 30) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .operand 100)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 99)), .wild]) (.mk [] (.move (.generated .part 99))))])), (.mk (.bind (.generated .operand 101)) none (.lit (.nat 90)))] (.call (.runtime .natLt) [(.move (.generated .operand 100)), (.move (.generated .operand 101))] false))) :: + (.function (.generated .function 31) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .operand 103)) none (.lit (.nat 380))), (.mk (.bind (.generated .operand 104)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [(.bind (.generated .part 102)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 102))))]))] (.call (.runtime .natLt) [(.move (.generated .operand 103)), (.move (.generated .operand 104))] false))) :: + (.function (.generated .function 32) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .operand 106)) none (.lit (.nat 90))), (.mk (.bind (.generated .operand 107)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 105)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 105))))]))] (.call (.runtime .natLt) [(.move (.generated .operand 106)), (.move (.generated .operand 107))] false))) :: + (.function (.generated .function 33) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .operand 109)) none (.lit (.nat 20))), (.mk (.bind (.generated .operand 110)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 108)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 108))))]))] (.call (.runtime .natLt) [(.move (.generated .operand 109)), (.move (.generated .operand 110))] false))) :: + (.function (.generated .function 34) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .operand 112)) none (.lit (.nat 12))), (.mk (.bind (.generated .operand 113)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, (.bind (.generated .part 111)), .wild, .wild]) (.mk [] (.move (.generated .part 111))))]))] (.call (.runtime .natLt) [(.move (.generated .operand 112)), (.move (.generated .operand 113))] false))) :: + (.function (.generated .function 35) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 114)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 114))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 115)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 115))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 116)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 116))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 117)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 117))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 118)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 118))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 119)), .wild, .wild]) (.mk [] (.move (.generated .part 119))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 120)), .wild]) (.mk [] (.move (.generated .part 120))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 121))]) (.mk [] (.move (.generated .part 121))))])]))) :: + (.function (.generated .function 36) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 122)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 122))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 123)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 123))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 124)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 124))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 125)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 125))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 126)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 126))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 127)), .wild, .wild]) (.mk [] (.move (.generated .part 127))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 128)), .wild]) (.mk [] (.move (.generated .part 128))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 129))]) (.mk [] (.move (.generated .part 129))))])]))) :: + (.function (.generated .function 37) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 130)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 130))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 131)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 131))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 132)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 132))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 133)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 133))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 134)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 134))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 135)), .wild, .wild]) (.mk [] (.move (.generated .part 135))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 136)), .wild]) (.mk [] (.move (.generated .part 136))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 137))]) (.mk [] (.move (.generated .part 137))))])]))) :: + (.function (.generated .function 38) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 138)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 138))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 139)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 139))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 140)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 140))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 141)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 141))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 142)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 142))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 143)), .wild, .wild]) (.mk [] (.move (.generated .part 143))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 144)), .wild]) (.mk [] (.move (.generated .part 144))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 145))]) (.mk [] (.move (.generated .part 145))))])]))) :: + (.function (.generated .function 39) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 146)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 146))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 147)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 147))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 148)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 148))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 149)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 149))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 150)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 150))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 151)), .wild, .wild]) (.mk [] (.move (.generated .part 151))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 152)), .wild]) (.mk [] (.move (.generated .part 152))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 153))]) (.mk [] (.move (.generated .part 153))))])]))) :: + (.function (.generated .function 40) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 154)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 154))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 155)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 155))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 156)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 156))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 157)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 157))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 158)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 158))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 159)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 159))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 160)), .wild]) (.mk [] (.move (.generated .part 160))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 161))]) (.mk [] (.move (.generated .part 161))))])]))) :: + (.function (.generated .function 41) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 162)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 162))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 163)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 163))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 164)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 164))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 165)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 165))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 166)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 166))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 167)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 167))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 168)), .wild, .wild]) (.mk [] (.move (.generated .part 168))))]), (.lit (.nat 1)), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 169))]) (.mk [] (.move (.generated .part 169))))])]))) :: + (.function (.generated .function 42) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.fallible (.adt 1)) (.mk [] (.succeed (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 170)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 170))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 171)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 171))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 172)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 172))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 173)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 173))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 174)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 174))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 175)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 175))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 176)), .wild, .wild]) (.mk [] (.move (.generated .part 176))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 177)), .wild]) (.mk [] (.move (.generated .part 177))))]), (.block (.mk [(.mk (.bind (.generated .operand 179)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 178))]) (.mk [] (.move (.generated .part 178))))])), (.mk (.bind (.generated .operand 180)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 179)), (.move (.generated .operand 180))] true)))])))) :: + []) } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [(([(.adt 1)], (.option (.adt 1))), true)] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.call (.function 1) [(.construct (.adt 0 0) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1)), (.copy (.generated .binding 2)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4)), (.copy (.generated .binding 5))])] true))], (.matchOn (.move (.generated .holder 1)) [(.mk (.ok (.bind (.generated .binding 6))) (.mk [] (.succeed (.copy (.generated .binding 6))))), (.mk (.err .wild) (.mk [] (.succeed (.lit (.nat 9)))))]), [(5, .nat, (some 5)), (4, .nat, (some 4)), (3, .nat, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.matchArms (st := (.result .nat (.pair .bool .bool))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))))))) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(6, .nat, (some 6)), (5, .nat, (some 5)), (4, .nat, (some 4)), (3, .nat, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, .nat, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.copy (.generated .binding 6)))) (Corr.mCons (Γ' := [(7, (.pair .bool .bool), none), (5, .nat, (some 5)), (4, .nat, (some 4)), (3, .nat, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, .nat, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.lit (.nat 9)))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl)))) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 2) [(.move (.generated .binding 0))] false), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.callF (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 3) [(.move (.generated .binding 0))] false), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.callF (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)⟩⟩ + +theorem fun3 : FunOK program krate flags 3 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some (.pair (.adt 1) .bool)) (.call (.function 4) [(.clone (.generated .binding 0))] true)), (.mk (.bind (.generated .holder 3)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 2))]) none (.move (.generated .binding 1)))] (.move (.generated .part 2)))))], (.cond (.move (.generated .holder 3)) (.mk [] (.succeed (.call (.function 5) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 4)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 4))))] false))) (.mk [] (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))])))), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.matchBool (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 2))]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 2))) (Corr.second (ta := (.adt 1)) (tb := .bool) (Corr.var rfl rfl) rfl)) rfl rfl (Corr.kIf (la := []) (ta := (.succeed (.call (.function 5) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 4)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 4))))] false))) (lb := []) (tb := (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))) (Corr.fOfB (Corr.callOps (ts := [(.adt 0), (.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 4)), .wild]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 4))) (Corr.first (ta := (.adt 1)) (tb := .bool) (Corr.var rfl rfl) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)))))⟩⟩ + +theorem fun4 : FunOK program krate flags 4 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 6) [(.construct (.closure 0 7) []), (.lit (.nat 11)), (.call (.function 8) [(.move (.generated .binding 0))] false)] false), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.callF (ts := [(.fn [(.adt 1)] (.option (.adt 1))), .nat, (.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl)⟩⟩ + +theorem fun5 : FunOK program krate flags 5 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 5)) none (.call (.function 9) [(.move (.generated .binding 0)), (.clone (.generated .binding 1))] false))], (.matchOn (.move (.generated .holder 5)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 6)) none (.call (.function 10) [(.move (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 6)) [(.mk .none (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))]))), (.mk (.some .wild) (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))])))]), [(1, (.adt 1), (some 1)), (0, (.adt 0), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0), (.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.adt 1), (some 1)), (0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 6)) none (.call (.function 10) [(.move (.generated .binding 1))] false))]) (tail := (.matchOn (.move (.generated .holder 6)) [(.mk .none (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))]))), (.mk (.some .wild) (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))])) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, (.adt 1), (some 1)), (0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.adt 1), (some 1)), (0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))])) (Corr.mCons (Γ' := [(3, .nat, none), (1, (.adt 1), (some 1)), (0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)) rfl rfl rfl)) rfl rfl rfl)⟩⟩ + +theorem fun6 : FunOK program krate flags 6 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 7)) none (.copy (.generated .binding 1)))], (.cond (.isZero (.generated .holder 7)) (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 7))), (.mk (.bind (.generated .holder 9)) none (.block (.mk [(.mk (.bind (.generated .callee 8)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 8) [(.clone (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 9)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 6) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))]))), [(2, (.adt 1), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.adt 1)] (.option (.adt 1))), (some 0))], rfl, rfl, + (Corr.matchNat (sl := (some 3)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (lb := [(.mk (.bind (.generated .holder 9)) none (.block (.mk [(.mk (.bind (.generated .callee 8)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 8) [(.clone (.generated .binding 2))] true))))]) (tb := (.matchOn (.move (.generated .holder 9)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 6) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))])) (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))))) (Corr.matchArms (st := (.option (.adt 1))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 8)) (some (.fn 0)) (.clone (.generated .binding 0)))]) (tail := (.apply (.generated .callee 8) [(.clone (.generated .binding 2))] true)) (Corr.apply (ps := [(.adt 1)]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (2, (.adt 1), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.adt 1)] (.option (.adt 1))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true))))) (Corr.mCons (Γ' := [(4, (.adt 1), (some 4)), (3, .nat, (some 3)), (2, (.adt 1), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.adt 1)] (.option (.adt 1))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 6) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.adt 1)] (.option (.adt 1))), .nat, (.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))))))) rfl rfl rfl)))⟩⟩ + +theorem fun7 : FunOK program krate flags 7 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 10)) none (.call (.function 11) [(.clone (.generated .binding 0))] true))], (.matchOn (.move (.generated .holder 10)) [(.mk .none (.mk [] (.succeed (.construct (.none (.adt 1)) [])))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.call (.function 12) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false)))]), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct (.none (.adt 1)) []))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 12) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.adt 1), (.adt 2)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl)⟩⟩ + +theorem fun8 : FunOK program krate flags 8 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.move (.generated .binding 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0))]), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))))))))) rfl)⟩⟩ + +theorem fun9 : FunOK program krate flags 9 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 11)) none (.call (.function 10) [(.move (.generated .binding 1))] false))], (.matchOn (.move (.generated .holder 11)) [(.mk .none (.mk [] (.construct (.none .nat) []))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.cond (.call (.function 13) [(.move (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.mk [] (.construct .some [(.copy (.generated .binding 2))])) (.mk [] (.construct (.none .nat) [])))))]), [(1, (.adt 1), (some 1)), (0, (.adt 0), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.adt 1), (some 1)), (0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none .nat) [])) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, (.adt 1), (some 1)), (0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 13) [(.move (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.mk [] (.construct .some [(.copy (.generated .binding 2))])) (.mk [] (.construct (.none .nat) [])))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 13) [(.move (.generated .binding 0)), (.copy (.generated .binding 2))] false)) (lk := []) (Corr.callOps (ts := [(.adt 0), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.copy (.generated .binding 2))])) (lb := []) (tb := (.construct (.none .nat) [])) (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun10 : FunOK program krate flags 10 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct .some [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 12))]) (.mk [] (.move (.generated .part 12))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 12))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)⟩⟩ + +theorem fun11 : FunOK program krate flags 11 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 16)) none (.block (.mk [(.mk (.bind (.generated .holder 14)) none (.block (.mk [(.mk (.bind (.generated .holder 13)) none (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 0) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [] (.cond (.call (.function 15) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 1) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.construct .some [(.move (.generated .binding 1))])))]))))] (.matchOn (.move (.generated .holder 14)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 15)) none (.cond (.call (.function 16) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 2) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 15)) [(.mk .none (.mk [] (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 3) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.construct .some [(.move (.generated .binding 3))])))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.construct .some [(.move (.generated .binding 2))])))]))))], (.matchOn (.move (.generated .holder 16)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 18)) none (.block (.mk [(.mk (.bind (.generated .holder 17)) none (.cond (.call (.function 18) [(.clone (.generated .binding 0))] true) (.mk [] (.construct .some [(.construct (.adt 2 4) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 17)) [(.mk .none (.mk [] (.cond (.call (.function 19) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 5) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.construct .some [(.move (.generated .binding 5))])))]))))] (.matchOn (.move (.generated .holder 18)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 19)) none (.cond (.call (.function 20) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 6) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 19)) [(.mk .none (.mk [] (.cond (.call (.function 21) [(.move (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.construct (.adt 2 7) [])]))) (.mk [] (.succeed (.construct (.none (.adt 2)) [])))))), (.mk (.some (.bind (.generated .binding 7))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 7))]))))]))), (.mk (.some (.bind (.generated .binding 6))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 6))]))))]))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 4))]))))]), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 14)) none (.block (.mk [(.mk (.bind (.generated .holder 13)) none (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 0) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [] (.cond (.call (.function 15) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 1) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.construct .some [(.move (.generated .binding 1))])))]))))]) (tail := (.matchOn (.move (.generated .holder 14)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 15)) none (.cond (.call (.function 16) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 2) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 15)) [(.mk .none (.mk [] (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 3) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.construct .some [(.move (.generated .binding 3))])))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.construct .some [(.move (.generated .binding 2))])))])) (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 13)) none (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 0) [])])) (.mk [] (.construct (.none (.adt 2)) []))))]) (tail := (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [] (.cond (.call (.function 15) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 1) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.construct .some [(.move (.generated .binding 1))])))])) (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.cond (lc := []) (ce := (.call (.function 14) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 2 0) [])])) (lb := []) (tb := (.construct (.none (.adt 2)) [])) (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 15) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 1) [])])) (.mk [] (.construct (.none (.adt 2)) [])))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.move (.generated .binding 1))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 15) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 2 1) [])])) (lb := []) (tb := (.construct (.none (.adt 2)) [])) (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) rfl rfl rfl)) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 15)) none (.cond (.call (.function 16) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 2) [])])) (.mk [] (.construct (.none (.adt 2)) []))))]) (tail := (.matchOn (.move (.generated .holder 15)) [(.mk .none (.mk [] (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 3) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.construct .some [(.move (.generated .binding 3))])))])) (Corr.mCons (Γ' := [(2, (.adt 2), (some 2)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.move (.generated .binding 2))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.cond (lc := []) (ce := (.call (.function 16) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 2 2) [])])) (lb := []) (tb := (.construct (.none (.adt 2)) [])) (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 3) [])])) (.mk [] (.construct (.none (.adt 2)) [])))) (Corr.mCons (Γ' := [(3, (.adt 2), (some 3)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.move (.generated .binding 3))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 17) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 2 3) [])])) (lb := []) (tb := (.construct (.none (.adt 2)) [])) (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) rfl rfl rfl)) rfl rfl rfl)) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 18)) none (.block (.mk [(.mk (.bind (.generated .holder 17)) none (.cond (.call (.function 18) [(.clone (.generated .binding 0))] true) (.mk [] (.construct .some [(.construct (.adt 2 4) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 17)) [(.mk .none (.mk [] (.cond (.call (.function 19) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 5) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.construct .some [(.move (.generated .binding 5))])))]))))]) (tail := (.matchOn (.move (.generated .holder 18)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 19)) none (.cond (.call (.function 20) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 6) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 19)) [(.mk .none (.mk [] (.cond (.call (.function 21) [(.move (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.construct (.adt 2 7) [])]))) (.mk [] (.succeed (.construct (.none (.adt 2)) [])))))), (.mk (.some (.bind (.generated .binding 7))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 7))]))))]))), (.mk (.some (.bind (.generated .binding 6))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 6))]))))])) (Corr.mCons (Γ' := [(4, (.adt 2), (some 4)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct .some [(.move (.generated .binding 4))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 17)) none (.cond (.call (.function 18) [(.clone (.generated .binding 0))] true) (.mk [] (.construct .some [(.construct (.adt 2 4) [])])) (.mk [] (.construct (.none (.adt 2)) []))))]) (tail := (.matchOn (.move (.generated .holder 17)) [(.mk .none (.mk [] (.cond (.call (.function 19) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 5) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.construct .some [(.move (.generated .binding 5))])))])) (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.cond (lc := []) (ce := (.call (.function 18) [(.clone (.generated .binding 0))] true)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 2 4) [])])) (lb := []) (tb := (.construct (.none (.adt 2)) [])) (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 19) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 5) [])])) (.mk [] (.construct (.none (.adt 2)) [])))) (Corr.mCons (Γ' := [(5, (.adt 2), (some 5)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.move (.generated .binding 5))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 19) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 2 5) [])])) (lb := []) (tb := (.construct (.none (.adt 2)) [])) (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) rfl rfl rfl)) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 19)) none (.cond (.call (.function 20) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 6) [])])) (.mk [] (.construct (.none (.adt 2)) []))))]) (tail := (.matchOn (.move (.generated .holder 19)) [(.mk .none (.mk [] (.cond (.call (.function 21) [(.move (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.construct (.adt 2 7) [])]))) (.mk [] (.succeed (.construct (.none (.adt 2)) [])))))), (.mk (.some (.bind (.generated .binding 7))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 7))]))))])) (Corr.mCons (Γ' := [(6, (.adt 2), (some 6)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct .some [(.move (.generated .binding 6))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.cond (lc := []) (ce := (.call (.function 20) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 2 6) [])])) (lb := []) (tb := (.construct (.none (.adt 2)) [])) (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 21) [(.move (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.construct (.adt 2 7) [])]))) (.mk [] (.succeed (.construct (.none (.adt 2)) []))))) (Corr.mCons (Γ' := [(7, (.adt 2), (some 7)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct .some [(.move (.generated .binding 7))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 21) [(.move (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.construct (.adt 2 7) [])]))) (lb := []) (tb := (.succeed (.construct (.none (.adt 2)) []))) (Corr.fOfB (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))) rfl rfl rfl)) rfl rfl rfl)) rfl rfl rfl)⟩⟩ + +theorem fun12 : FunOK program krate flags 12 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 20)) none (.move (.generated .binding 1)))], (.matchOn (.move (.generated .holder 20)) [(.mk (.adt 2 0 []) (.mk [] (.succeed (.call (.function 22) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 1 []) (.mk [] (.succeed (.call (.function 23) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 2 []) (.mk [] (.succeed (.call (.function 24) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 3 []) (.mk [] (.succeed (.call (.function 25) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 4 []) (.mk [] (.call (.function 26) [(.move (.generated .binding 0))] false))), (.mk (.adt 2 5 []) (.mk [] (.succeed (.call (.function 27) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 6 []) (.mk [] (.succeed (.call (.function 28) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 7 []) (.mk [] (.call (.function 29) [(.move (.generated .binding 0))] false)))]), [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.adt 2)) (U := []) (view := false) (idx := [0, 1, 2, 3, 4, 5, 6, 7]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.call (.function 22) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.call (.function 23) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.succeed (.call (.function 24) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 3) (loads := []) (lets := []) (tail := (.succeed (.call (.function 25) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 4) (loads := []) (lets := []) (tail := (.call (.function 26) [(.move (.generated .binding 0))] false)) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 5) (loads := []) (lets := []) (tail := (.succeed (.call (.function 27) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 6) (loads := []) (lets := []) (tail := (.succeed (.call (.function 28) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 7) (loads := []) (lets := []) (tail := (.call (.function 29) [(.move (.generated .binding 0))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.callF (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl)⟩⟩ + +theorem fun13 : FunOK program krate flags 13 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 21)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 22)) none (.lit (.nat 3)))], (.cond (.call (.runtime .natLe) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false) (.mk [(.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 24)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 28)) none (.cond (.call (.function 30) [(.clone (.generated .binding 0))] false) (.mk [(.mk (.bind (.generated .operand 26)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 25))]) (.mk [] (.move (.generated .part 25))))])), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] false) (.mk [] (.cond (.call (.function 31) [(.clone (.generated .binding 0))] false) (.mk [] (.call (.function 32) [(.move (.generated .binding 0))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))))] (.call (.runtime .boolNot) [(.move (.generated .operand 28))] false)))) (.mk [] (.lit (.bool false)))), [(1, .nat, (some 1)), (0, (.adt 0), (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 21)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 22)) none (.lit (.nat 3)))]) (ce := (.call (.runtime .natLe) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 24)) none (.lit (.nat 3)))]) (ta := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 28)) none (.cond (.call (.function 30) [(.clone (.generated .binding 0))] false) (.mk [(.mk (.bind (.generated .operand 26)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 25))]) (.mk [] (.move (.generated .part 25))))])), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] false) (.mk [] (.cond (.call (.function 31) [(.clone (.generated .binding 0))] false) (.mk [] (.call (.function 32) [(.move (.generated .binding 0))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))))] (.call (.runtime .boolNot) [(.move (.generated .operand 28))] false)))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 24)) none (.lit (.nat 3)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 28)) none (.cond (.call (.function 30) [(.clone (.generated .binding 0))] false) (.mk [(.mk (.bind (.generated .operand 26)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 25))]) (.mk [] (.move (.generated .part 25))))])), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] false) (.mk [] (.cond (.call (.function 31) [(.clone (.generated .binding 0))] false) (.mk [] (.call (.function 32) [(.move (.generated .binding 0))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))))]) (tb := (.call (.runtime .boolNot) [(.move (.generated .operand 28))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.prim (ts := [.bool]) (Corr.opsCons (Corr.eOfBNil (Corr.cond (lc := []) (ce := (.call (.function 30) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 26)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 25))]) (.mk [] (.move (.generated .part 25))))])), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))]) (ta := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] false) (.mk [] (.cond (.call (.function 31) [(.clone (.generated .binding 0))] false) (.mk [] (.call (.function 32) [(.move (.generated .binding 0))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 26)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 25))]) (.mk [] (.move (.generated .part 25))))])), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 25))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 31) [(.clone (.generated .binding 0))] false) (.mk [] (.call (.function 32) [(.move (.generated .binding 0))] false)) (.mk [] (.lit (.bool false))))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := []) (ce := (.call (.function 31) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 32) [(.move (.generated .binding 0))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.bOfE (Corr.buildConst rfl))))) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl))) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ + +theorem fun14 : FunOK program krate flags 14 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 30)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 29)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 29))))])), (.mk (.bind (.generated .operand 31)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] false) (.mk [] (.call (.function 31) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 32)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 32))))])] false)) (.mk [] (.lit (.bool false)))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 30)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 29)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 29))))])), (.mk (.bind (.generated .operand 31)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 29))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 31) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 32)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 32))))])] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 32))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ + +theorem fun15 : FunOK program krate flags 15 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 34)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 33)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 33))))])), (.mk (.bind (.generated .operand 35)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 34)), (.move (.generated .operand 35))] false) (.mk [] (.call (.function 32) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 36)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 36))))])] false)) (.mk [] (.lit (.bool false)))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 34)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 33)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 33))))])), (.mk (.bind (.generated .operand 35)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 34)), (.move (.generated .operand 35))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 33))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 32) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 36)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 36))))])] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 36))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ + +theorem fun16 : FunOK program krate flags 16 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 38)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 37)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 37))))])), (.mk (.bind (.generated .operand 39)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 38)), (.move (.generated .operand 39))] false) (.mk [] (.call (.function 33) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 40)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 40))))])] false)) (.mk [] (.lit (.bool false)))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 38)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 37)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 37))))])), (.mk (.bind (.generated .operand 39)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 38)), (.move (.generated .operand 39))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 37))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 33) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 40)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 40))))])] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 40))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ + +theorem fun17 : FunOK program krate flags 17 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 42)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 41)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 41))))])), (.mk (.bind (.generated .operand 43)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 42)), (.move (.generated .operand 43))] false) (.mk [] (.call (.function 34) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 44)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 44))))])] false)) (.mk [] (.lit (.bool false)))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 42)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 41)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 41))))])), (.mk (.bind (.generated .operand 43)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 42)), (.move (.generated .operand 43))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 41))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 34) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 44)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 44))))])] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 44))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ + +theorem fun18 : FunOK program krate flags 18 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 46)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 45)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 45))))])), (.mk (.bind (.generated .operand 47)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 46)), (.move (.generated .operand 47))] false) (.mk [(.mk (.bind (.generated .operand 58)) none (.lit (.nat 2))), (.mk (.bind (.generated .operand 59)) none (.block (.mk [(.mk (.bind (.generated .operand 56)) none (.block (.mk [(.mk (.bind (.generated .operand 53)) none (.block (.mk [(.mk (.bind (.generated .operand 50)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 48)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 48))))])), (.mk (.bind (.generated .operand 51)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 49)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 49))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 50)), (.move (.generated .operand 51))] true)))), (.mk (.bind (.generated .operand 54)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 52)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 52))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] true)))), (.mk (.bind (.generated .operand 57)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 55)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 55))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 56)), (.move (.generated .operand 57))] true))))] (.succeed (.call (.runtime .natLe) [(.move (.generated .operand 58)), (.move (.generated .operand 59))] false))) (.mk [] (.succeed (.lit (.bool false))))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 46)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 45)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 45))))])), (.mk (.bind (.generated .operand 47)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 46)), (.move (.generated .operand 47))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 45))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 58)) none (.lit (.nat 2))), (.mk (.bind (.generated .operand 59)) none (.block (.mk [(.mk (.bind (.generated .operand 56)) none (.block (.mk [(.mk (.bind (.generated .operand 53)) none (.block (.mk [(.mk (.bind (.generated .operand 50)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 48)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 48))))])), (.mk (.bind (.generated .operand 51)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 49)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 49))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 50)), (.move (.generated .operand 51))] true)))), (.mk (.bind (.generated .operand 54)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 52)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 52))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] true)))), (.mk (.bind (.generated .operand 57)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 55)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 55))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 56)), (.move (.generated .operand 57))] true))))]) (ta := (.succeed (.call (.runtime .natLe) [(.move (.generated .operand 58)), (.move (.generated .operand 59))] false))) (lb := []) (tb := (.succeed (.lit (.bool false)))) (Corr.fOfB (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 56)) none (.block (.mk [(.mk (.bind (.generated .operand 53)) none (.block (.mk [(.mk (.bind (.generated .operand 50)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 48)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 48))))])), (.mk (.bind (.generated .operand 51)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 49)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 49))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 50)), (.move (.generated .operand 51))] true)))), (.mk (.bind (.generated .operand 54)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 52)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 52))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] true)))), (.mk (.bind (.generated .operand 57)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 55)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 55))))]))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 56)), (.move (.generated .operand 57))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 53)) none (.block (.mk [(.mk (.bind (.generated .operand 50)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 48)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 48))))])), (.mk (.bind (.generated .operand 51)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 49)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 49))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 50)), (.move (.generated .operand 51))] true)))), (.mk (.bind (.generated .operand 54)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 52)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 52))))]))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 50)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 48)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 48))))])), (.mk (.bind (.generated .operand 51)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 49)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 49))))]))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 50)), (.move (.generated .operand 51))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 48))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 49))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 52))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 55))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.fOfB (Corr.bOfE (Corr.buildConst rfl)))))⟩⟩ + +theorem fun19 : FunOK program krate flags 19 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 61)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 60)), .wild, .wild]) (.mk [] (.move (.generated .part 60))))])), (.mk (.bind (.generated .operand 62)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 61)), (.move (.generated .operand 62))] false) (.mk [(.mk (.bind (.generated .operand 64)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 63)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 63))))])), (.mk (.bind (.generated .operand 65)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 64)), (.move (.generated .operand 65))] false) (.mk [(.mk (.bind (.generated .operand 69)) none (.block (.mk [(.mk (.bind (.generated .holder 68)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 67)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 67))))]))] (.matchOn (.move (.generated .holder 68)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 66))]) (.mk [] (.move (.generated .part 66))))])))), (.mk (.bind (.generated .operand 70)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 69)), (.move (.generated .operand 70))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 61)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 60)), .wild, .wild]) (.mk [] (.move (.generated .part 60))))])), (.mk (.bind (.generated .operand 62)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 61)), (.move (.generated .operand 62))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 60))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 64)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 63)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 63))))])), (.mk (.bind (.generated .operand 65)) none (.lit (.nat 1)))]) (ta := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 64)), (.move (.generated .operand 65))] false) (.mk [(.mk (.bind (.generated .operand 69)) none (.block (.mk [(.mk (.bind (.generated .holder 68)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 67)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 67))))]))] (.matchOn (.move (.generated .holder 68)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 66))]) (.mk [] (.move (.generated .part 66))))])))), (.mk (.bind (.generated .operand 70)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 69)), (.move (.generated .operand 70))] false)) (.mk [] (.lit (.bool false))))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 64)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 63)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 63))))])), (.mk (.bind (.generated .operand 65)) none (.lit (.nat 1)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 64)), (.move (.generated .operand 65))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 63))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 69)) none (.block (.mk [(.mk (.bind (.generated .holder 68)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 67)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 67))))]))] (.matchOn (.move (.generated .holder 68)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 66))]) (.mk [] (.move (.generated .part 66))))])))), (.mk (.bind (.generated .operand 70)) none (.lit (.nat 1)))]) (ta := (.call (.runtime .natEq) [(.move (.generated .operand 69)), (.move (.generated .operand 70))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 68)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 67)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 67))))]))]) (tail := (.matchOn (.move (.generated .holder 68)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 66))]) (.mk [] (.move (.generated .part 66))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 66))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 67))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ + +theorem fun20 : FunOK program krate flags 20 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 72)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 71)), .wild]) (.mk [] (.move (.generated .part 71))))])), (.mk (.bind (.generated .operand 73)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 72)), (.move (.generated .operand 73))] false) (.mk [(.mk (.bind (.generated .operand 75)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 74)), .wild, .wild]) (.mk [] (.move (.generated .part 74))))])), (.mk (.bind (.generated .operand 76)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 75)), (.move (.generated .operand 76))] false) (.mk [] (.call (.function 30) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 77)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 77))))])] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 72)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 71)), .wild]) (.mk [] (.move (.generated .part 71))))])), (.mk (.bind (.generated .operand 73)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 72)), (.move (.generated .operand 73))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 71))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 75)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 74)), .wild, .wild]) (.mk [] (.move (.generated .part 74))))])), (.mk (.bind (.generated .operand 76)) none (.lit (.nat 1)))]) (ta := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 75)), (.move (.generated .operand 76))] false) (.mk [] (.call (.function 30) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 77)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 77))))])] false)) (.mk [] (.lit (.bool false))))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 75)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 74)), .wild, .wild]) (.mk [] (.move (.generated .part 74))))])), (.mk (.bind (.generated .operand 76)) none (.lit (.nat 1)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 75)), (.move (.generated .operand 76))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 74))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 30) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 77)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 77))))])] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 77))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ + +theorem fun21 : FunOK program krate flags 21 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 79)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 78))]) (.mk [] (.move (.generated .part 78))))])), (.mk (.bind (.generated .operand 80)) none (.lit (.nat 3)))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 79)), (.move (.generated .operand 80))] false) (.mk [(.mk (.bind (.generated .operand 82)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))])), (.mk (.bind (.generated .operand 83)) none (.lit (.nat 0)))] (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 82)), (.move (.generated .operand 83))] false) (.mk [(.mk (.bind (.generated .operand 85)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 84)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 84))))])), (.mk (.bind (.generated .operand 86)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 85)), (.move (.generated .operand 86))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 88)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 87))]) (.mk [] (.move (.generated .part 87))))])), (.mk (.bind (.generated .operand 89)) none (.lit (.nat 1)))] (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 88)), (.move (.generated .operand 89))] false) (.mk [(.mk (.bind (.generated .operand 91)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 90)), .wild, .wild]) (.mk [] (.move (.generated .part 90))))])), (.mk (.bind (.generated .operand 92)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 94)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 93))]) (.mk [] (.move (.generated .part 93))))])), (.mk (.bind (.generated .operand 95)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 94)), (.move (.generated .operand 95))] false) (.mk [(.mk (.bind (.generated .operand 97)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 96)), .wild]) (.mk [] (.move (.generated .part 96))))])), (.mk (.bind (.generated .operand 98)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 97)), (.move (.generated .operand 98))] false)) (.mk [] (.lit (.bool false))))))))) (.mk [] (.lit (.bool false)))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 79)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 78))]) (.mk [] (.move (.generated .part 78))))])), (.mk (.bind (.generated .operand 80)) none (.lit (.nat 3)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 79)), (.move (.generated .operand 80))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 78))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 82)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))])), (.mk (.bind (.generated .operand 83)) none (.lit (.nat 0)))]) (ta := (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 82)), (.move (.generated .operand 83))] false) (.mk [(.mk (.bind (.generated .operand 85)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 84)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 84))))])), (.mk (.bind (.generated .operand 86)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 85)), (.move (.generated .operand 86))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 88)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 87))]) (.mk [] (.move (.generated .part 87))))])), (.mk (.bind (.generated .operand 89)) none (.lit (.nat 1)))] (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 88)), (.move (.generated .operand 89))] false) (.mk [(.mk (.bind (.generated .operand 91)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 90)), .wild, .wild]) (.mk [] (.move (.generated .part 90))))])), (.mk (.bind (.generated .operand 92)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 94)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 93))]) (.mk [] (.move (.generated .part 93))))])), (.mk (.bind (.generated .operand 95)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 94)), (.move (.generated .operand 95))] false) (.mk [(.mk (.bind (.generated .operand 97)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 96)), .wild]) (.mk [] (.move (.generated .part 96))))])), (.mk (.bind (.generated .operand 98)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 97)), (.move (.generated .operand 98))] false)) (.mk [] (.lit (.bool false))))))))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 82)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))])), (.mk (.bind (.generated .operand 83)) none (.lit (.nat 0)))]) (ce := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 82)), (.move (.generated .operand 83))] false) (.mk [(.mk (.bind (.generated .operand 85)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 84)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 84))))])), (.mk (.bind (.generated .operand 86)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 85)), (.move (.generated .operand 86))] false)) (.mk [] (.lit (.bool false))))) (lk := []) (Corr.cond (lc := [(.mk (.bind (.generated .operand 82)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))])), (.mk (.bind (.generated .operand 83)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 82)), (.move (.generated .operand 83))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 81))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 85)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 84)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 84))))])), (.mk (.bind (.generated .operand 86)) none (.lit (.nat 1)))]) (ta := (.call (.runtime .natEq) [(.move (.generated .operand 85)), (.move (.generated .operand 86))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 84))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 88)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 87))]) (.mk [] (.move (.generated .part 87))))])), (.mk (.bind (.generated .operand 89)) none (.lit (.nat 1)))]) (tb := (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 88)), (.move (.generated .operand 89))] false) (.mk [(.mk (.bind (.generated .operand 91)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 90)), .wild, .wild]) (.mk [] (.move (.generated .part 90))))])), (.mk (.bind (.generated .operand 92)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 94)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 93))]) (.mk [] (.move (.generated .part 93))))])), (.mk (.bind (.generated .operand 95)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 94)), (.move (.generated .operand 95))] false) (.mk [(.mk (.bind (.generated .operand 97)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 96)), .wild]) (.mk [] (.move (.generated .part 96))))])), (.mk (.bind (.generated .operand 98)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 97)), (.move (.generated .operand 98))] false)) (.mk [] (.lit (.bool false))))))) (Corr.bOfE (Corr.buildConst rfl)) (Corr.cond (lc := [(.mk (.bind (.generated .operand 88)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 87))]) (.mk [] (.move (.generated .part 87))))])), (.mk (.bind (.generated .operand 89)) none (.lit (.nat 1)))]) (ce := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 88)), (.move (.generated .operand 89))] false) (.mk [(.mk (.bind (.generated .operand 91)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 90)), .wild, .wild]) (.mk [] (.move (.generated .part 90))))])), (.mk (.bind (.generated .operand 92)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] false)) (.mk [] (.lit (.bool false))))) (lk := []) (Corr.cond (lc := [(.mk (.bind (.generated .operand 88)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 87))]) (.mk [] (.move (.generated .part 87))))])), (.mk (.bind (.generated .operand 89)) none (.lit (.nat 1)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 88)), (.move (.generated .operand 89))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 87))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 91)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 90)), .wild, .wild]) (.mk [] (.move (.generated .part 90))))])), (.mk (.bind (.generated .operand 92)) none (.lit (.nat 1)))]) (ta := (.call (.runtime .natEq) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 90))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 94)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 93))]) (.mk [] (.move (.generated .part 93))))])), (.mk (.bind (.generated .operand 95)) none (.lit (.nat 2)))]) (tb := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 94)), (.move (.generated .operand 95))] false) (.mk [(.mk (.bind (.generated .operand 97)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 96)), .wild]) (.mk [] (.move (.generated .part 96))))])), (.mk (.bind (.generated .operand 98)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 97)), (.move (.generated .operand 98))] false)) (.mk [] (.lit (.bool false))))) (Corr.bOfE (Corr.buildConst rfl)) (Corr.cond (lc := [(.mk (.bind (.generated .operand 94)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 93))]) (.mk [] (.move (.generated .part 93))))])), (.mk (.bind (.generated .operand 95)) none (.lit (.nat 2)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 94)), (.move (.generated .operand 95))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 93))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 97)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 96)), .wild]) (.mk [] (.move (.generated .part 96))))])), (.mk (.bind (.generated .operand 98)) none (.lit (.nat 1)))]) (ta := (.call (.runtime .natEq) [(.move (.generated .operand 97)), (.move (.generated .operand 98))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 96))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))))))) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ + +theorem fun22 : FunOK program krate flags 22 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 35) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 14) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 35) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ + +theorem fun23 : FunOK program krate flags 23 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 15) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 36) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 15) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 36) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ + +theorem fun24 : FunOK program krate flags 24 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 16) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 37) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 16) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 37) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ + +theorem fun25 : FunOK program krate flags 25 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 38) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 17) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 38) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ + +theorem fun26 : FunOK program krate flags 26 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 18) [(.clone (.generated .binding 0))] true) (.mk [] (.succeed (.construct .some [(.call (.function 39) [(.move (.generated .binding 0))] false)]))) (.mk [] (.succeed (.construct (.none (.adt 1)) [])))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 18) [(.clone (.generated .binding 0))] true)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.call (.function 39) [(.move (.generated .binding 0))] false)]))) (lb := []) (tb := (.succeed (.construct (.none (.adt 1)) []))) (Corr.fOfB (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))⟩⟩ + +theorem fun27 : FunOK program krate flags 27 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 19) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 40) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 19) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 40) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ + +theorem fun28 : FunOK program krate flags 28 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 20) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 41) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 20) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 41) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ + +theorem fun29 : FunOK program krate flags 29 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 21) [(.clone (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.call (.function 42) [(.move (.generated .binding 0))] true)]))) (.mk [] (.succeed (.construct (.none (.adt 1)) [])))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 21) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.call (.function 42) [(.move (.generated .binding 0))] true)]))) (lb := []) (tb := (.succeed (.construct (.none (.adt 1)) []))) (Corr.fOfB (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))⟩⟩ + +theorem fun30 : FunOK program krate flags 30 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 100)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 99)), .wild]) (.mk [] (.move (.generated .part 99))))])), (.mk (.bind (.generated .operand 101)) none (.lit (.nat 90)))], (.call (.runtime .natLt) [(.move (.generated .operand 100)), (.move (.generated .operand 101))] false), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 99))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun31 : FunOK program krate flags 31 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 103)) none (.lit (.nat 380))), (.mk (.bind (.generated .operand 104)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [(.bind (.generated .part 102)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 102))))]))], (.call (.runtime .natLt) [(.move (.generated .operand 103)), (.move (.generated .operand 104))] false), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 102))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun32 : FunOK program krate flags 32 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 106)) none (.lit (.nat 90))), (.mk (.bind (.generated .operand 107)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 105)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 105))))]))], (.call (.runtime .natLt) [(.move (.generated .operand 106)), (.move (.generated .operand 107))] false), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 105))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun33 : FunOK program krate flags 33 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 109)) none (.lit (.nat 20))), (.mk (.bind (.generated .operand 110)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 108)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 108))))]))], (.call (.runtime .natLt) [(.move (.generated .operand 109)), (.move (.generated .operand 110))] false), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 108))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun34 : FunOK program krate flags 34 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 112)) none (.lit (.nat 12))), (.mk (.bind (.generated .operand 113)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, (.bind (.generated .part 111)), .wild, .wild]) (.mk [] (.move (.generated .part 111))))]))], (.call (.runtime .natLt) [(.move (.generated .operand 112)), (.move (.generated .operand 113))] false), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 111))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun35 : FunOK program krate flags 35 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 114)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 114))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 115)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 115))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 116)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 116))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 117)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 117))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 118)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 118))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 119)), .wild, .wild]) (.mk [] (.move (.generated .part 119))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 120)), .wild]) (.mk [] (.move (.generated .part 120))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 121))]) (.mk [] (.move (.generated .part 121))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 114))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 115))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 116))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 117))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 118))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 119))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 120))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 121))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ + +theorem fun36 : FunOK program krate flags 36 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 122)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 122))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 123)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 123))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 124)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 124))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 125)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 125))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 126)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 126))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 127)), .wild, .wild]) (.mk [] (.move (.generated .part 127))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 128)), .wild]) (.mk [] (.move (.generated .part 128))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 129))]) (.mk [] (.move (.generated .part 129))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 122))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 123))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 124))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 125))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 126))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 127))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 128))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 129))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ + +theorem fun37 : FunOK program krate flags 37 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 130)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 130))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 131)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 131))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 132)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 132))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 133)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 133))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 134)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 134))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 135)), .wild, .wild]) (.mk [] (.move (.generated .part 135))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 136)), .wild]) (.mk [] (.move (.generated .part 136))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 137))]) (.mk [] (.move (.generated .part 137))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 130))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 131))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 132))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 133))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 134))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 135))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 136))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 137))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ + +theorem fun38 : FunOK program krate flags 38 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 138)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 138))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 139)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 139))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 140)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 140))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 141)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 141))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 142)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 142))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 143)), .wild, .wild]) (.mk [] (.move (.generated .part 143))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 144)), .wild]) (.mk [] (.move (.generated .part 144))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 145))]) (.mk [] (.move (.generated .part 145))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 138))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 139))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 140))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 141))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 142))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 143))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 144))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 145))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ + +theorem fun39 : FunOK program krate flags 39 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 146)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 146))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 147)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 147))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 148)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 148))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 149)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 149))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 150)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 150))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 151)), .wild, .wild]) (.mk [] (.move (.generated .part 151))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 152)), .wild]) (.mk [] (.move (.generated .part 152))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 153))]) (.mk [] (.move (.generated .part 153))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 146))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 147))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 148))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 149))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 150))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 151))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 152))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 153))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ + +theorem fun40 : FunOK program krate flags 40 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 154)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 154))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 155)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 155))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 156)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 156))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 157)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 157))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 158)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 158))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 159)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 159))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 160)), .wild]) (.mk [] (.move (.generated .part 160))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 161))]) (.mk [] (.move (.generated .part 161))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 154))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 155))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 156))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 157))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 158))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 159))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 160))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 161))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ + +theorem fun41 : FunOK program krate flags 41 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 162)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 162))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 163)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 163))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 164)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 164))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 165)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 165))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 166)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 166))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 167)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 167))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 168)), .wild, .wild]) (.mk [] (.move (.generated .part 168))))]), (.lit (.nat 1)), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 169))]) (.mk [] (.move (.generated .part 169))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 162))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 163))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 164))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 165))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 166))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 167))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 168))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 169))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ + +theorem fun42 : FunOK program krate flags 42 := + ⟨_, rfl, .inl ⟨_, _, [], (.succeed (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 170)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 170))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 171)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 171))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 172)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 172))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 173)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 173))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 174)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 174))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 175)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 175))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 176)), .wild, .wild]) (.mk [] (.move (.generated .part 176))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 177)), .wild]) (.mk [] (.move (.generated .part 177))))]), (.block (.mk [(.mk (.bind (.generated .operand 179)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 178))]) (.mk [] (.move (.generated .part 178))))])), (.mk (.bind (.generated .operand 180)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 179)), (.move (.generated .operand 180))] true)))])), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.fOfB (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 170))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 171))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 172))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 173))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 174))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 175))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 176))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 177))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 179)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 178))]) (.mk [] (.move (.generated .part 178))))])), (.mk (.bind (.generated .operand 180)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 179)), (.move (.generated .operand 180))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 178))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | 3 => exact fun3 + | 4 => exact fun4 + | 5 => exact fun5 + | 6 => exact fun6 + | 7 => exact fun7 + | 8 => exact fun8 + | 9 => exact fun9 + | 10 => exact fun10 + | 11 => exact fun11 + | 12 => exact fun12 + | 13 => exact fun13 + | 14 => exact fun14 + | 15 => exact fun15 + | 16 => exact fun16 + | 17 => exact fun17 + | 18 => exact fun18 + | 19 => exact fun19 + | 20 => exact fun20 + | 21 => exact fun21 + | 22 => exact fun22 + | 23 => exact fun23 + | 24 => exact fun24 + | 25 => exact fun25 + | 26 => exact fun26 + | 27 => exact fun27 + | 28 => exact fun28 + | 29 => exact fun29 + | 30 => exact fun30 + | 31 => exact fun31 + | 32 => exact fun32 + | 33 => exact fun33 + | 34 => exact fun34 + | 35 => exact fun35 + | 36 => exact fun36 + | 37 => exact fun37 + | 38 => exact fun38 + | 39 => exact fun39 + | 40 => exact fun40 + | 41 => exact fun41 + | 42 => exact fun42 + | _ + 43 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.RustCore diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R2.lean b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R2.lean new file mode 100644 index 000000000..1d6c54953 --- /dev/null +++ b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R2.lean @@ -0,0 +1,417 @@ +import LexLeanPreservation.Core +import LexLeanPreservation.Values +import LexLeanPreservation.Primitives +import LexLeanPreservation.Fixed +import LexLeanPreservation.Keys +import LexLeanPreservation.Templates +import LexLeanPreservation.Validate +import Reasoning.Budget +import Reasoning.Clinic +import Reasoning.Main +import Reasoning.Planner +import Reasoning.Screening +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +set_option linter.unusedVariables false +namespace LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2 + +def __prog : _root_.LexLeanTarget.TargetSyntax.Program := + { adts := [{ constructors := [[.nat, .nat, .nat, .nat, .nat, .nat]] }, + { constructors := [[], [], [], [], [], [], [], []] }, + { constructors := [[(.adt 3), (.list (.adt 1)), (.adt 4)]] }, + { constructors := [[(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]] }, + { constructors := [[.nat, .nat, .nat, .nat, .nat, .nat]] }], functions := (( + { parameters := [0, 1, 2, 3, 4, 5], types := [.nat, .nat, .nat, .nat, .nat, .nat], result := .nat, + body := (.«match» .nat (.call 1 [(.build (.adt 0) (.adt 0) [(.var 0), (.var 1), (.var 2), (.var 3), (.var 4), (.var 5)])]) [(.arm .ok [6] (.prim .length [(.second (.var 6))])), (.arm .error [7] (.value .nat (.nat 0)))]) }) ::( + { parameters := [0], types := [(.adt 0)], result := (.result (.pair .nat (.list (.adt 1))) (.pair .bool .bool)), + body := (.«let» 1 (.pair (.adt 2) .bool) (.call 2 [(.var 0)]) (.«match» (.result (.pair .nat (.list (.adt 1))) (.pair .bool .bool)) (.second (.var 1)) [(.arm .true [] (.«match» (.result (.pair .nat (.list (.adt 1))) (.pair .bool .bool)) (.call 3 [(.var 0), (.field (.first (.var 1)) 0)]) [(.arm .ok [2] (.build .ok (.result (.pair .nat (.list (.adt 1))) (.pair .bool .bool)) [(.build .pair (.pair .nat (.list (.adt 1))) [(.var 2), (.field (.first (.var 1)) 1)])])), (.arm .error [3] (.build .error (.result (.pair .nat (.list (.adt 1))) (.pair .bool .bool)) [(.var 3)]))])), (.arm .false [] (.build .error (.result (.pair .nat (.list (.adt 1))) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])]))])) }) ::( + { parameters := [0], types := [(.adt 0)], result := (.pair (.adt 2) .bool), + body := (.call 4 [(.closure 5 []), (.value .nat (.nat 11)), (.call 6 [(.var 0)])]) }) ::( + { parameters := [0, 1], types := [(.adt 0), (.adt 3)], result := (.result .nat (.pair .bool .bool)), + body := (.«match» (.result .nat (.pair .bool .bool)) (.call 7 [(.var 0), (.var 1)]) [(.arm .some [2] (.build .ok (.result .nat (.pair .bool .bool)) [(.var 2)])), (.arm .none [] (.«match» (.result .nat (.pair .bool .bool)) (.call 8 [(.var 1)]) [(.arm .some [3] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])])])), (.arm .none [] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])])]))]))]) }) ::( + { parameters := [0, 1, 2], types := [(.fn [(.adt 2)] (.option (.adt 2))), .nat, (.adt 2)], result := (.pair (.adt 2) .bool), + body := (.«match» (.pair (.adt 2) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.adt 2) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.adt 2) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.adt 2) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 4 [(.var 0), (.var 3), (.var 4)]))]))]) }) ::( + { parameters := [0], types := [(.adt 2)], result := (.option (.adt 2)), + body := (.«match» (.option (.adt 2)) (.call 9 [(.field (.var 0) 0)]) [(.arm .none [] (.build .none (.option (.adt 2)) [])), (.arm .some [1] (.«match» (.option (.adt 2)) (.call 10 [(.field (.var 0) 0), (.var 1)]) [(.arm .none [] (.build .none (.option (.adt 2)) [])), (.arm .some [2] (.build .some (.option (.adt 2)) [(.build (.adt 0) (.adt 2) [(.var 2), (.prim .append [(.field (.var 0) 1), (.build .cons (.list (.adt 1)) [(.var 1), (.build .nil (.list (.adt 1)) [])])]), (.build (.adt 0) (.adt 4) [(.prim .natAdd [(.field (.field (.var 0) 2) 0), (.value .nat (.nat 1))]), (.prim .natAdd [(.field (.field (.var 0) 2) 1), (.call 11 [(.field (.var 0) 0)])]), (.prim .natAdd [(.field (.field (.var 0) 2) 2), (.value .nat (.nat 1))]), (.field (.field (.var 0) 2) 3), (.field (.field (.var 0) 2) 4), (.field (.field (.var 0) 2) 5)])])]))]))]) }) ::( + { parameters := [0], types := [(.adt 0)], result := (.adt 2), + body := (.build (.adt 0) (.adt 2) [(.call 12 [(.var 0)]), (.build .nil (.list (.adt 1)) []), (.build (.adt 0) (.adt 4) [(.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0))])]) }) ::( + { parameters := [0, 1], types := [(.adt 0), (.adt 3)], result := (.option .nat), + body := (.«match» (.option .nat) (.call 8 [(.var 1)]) [(.arm .none [] (.build .none (.option .nat) [])), (.arm .some [2] (.cond (.call 13 [(.var 0), (.var 2)]) (.build .some (.option .nat) [(.var 2)]) (.build .none (.option .nat) [])))]) }) ::( + { parameters := [0], types := [(.adt 3)], result := (.option .nat), + body := (.build .some (.option .nat) [(.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 3)], result := (.option (.adt 1)), + body := (.«match» (.option (.adt 1)) (.«match» (.option (.adt 1)) (.«match» (.option (.adt 1)) (.cond (.call 14 [(.var 0)]) (.build .some (.option (.adt 1)) [(.build (.adt 0) (.adt 1) [])]) (.build .none (.option (.adt 1)) [])) [(.arm .some [1] (.build .some (.option (.adt 1)) [(.var 1)])), (.arm .none [] (.cond (.call 15 [(.var 0)]) (.build .some (.option (.adt 1)) [(.build (.adt 1) (.adt 1) [])]) (.build .none (.option (.adt 1)) [])))]) [(.arm .some [2] (.build .some (.option (.adt 1)) [(.var 2)])), (.arm .none [] (.«match» (.option (.adt 1)) (.cond (.call 16 [(.var 0)]) (.build .some (.option (.adt 1)) [(.build (.adt 2) (.adt 1) [])]) (.build .none (.option (.adt 1)) [])) [(.arm .some [3] (.build .some (.option (.adt 1)) [(.var 3)])), (.arm .none [] (.cond (.call 17 [(.var 0)]) (.build .some (.option (.adt 1)) [(.build (.adt 3) (.adt 1) [])]) (.build .none (.option (.adt 1)) [])))]))]) [(.arm .some [4] (.build .some (.option (.adt 1)) [(.var 4)])), (.arm .none [] (.«match» (.option (.adt 1)) (.«match» (.option (.adt 1)) (.cond (.call 18 [(.var 0)]) (.build .some (.option (.adt 1)) [(.build (.adt 4) (.adt 1) [])]) (.build .none (.option (.adt 1)) [])) [(.arm .some [5] (.build .some (.option (.adt 1)) [(.var 5)])), (.arm .none [] (.cond (.call 19 [(.var 0)]) (.build .some (.option (.adt 1)) [(.build (.adt 5) (.adt 1) [])]) (.build .none (.option (.adt 1)) [])))]) [(.arm .some [6] (.build .some (.option (.adt 1)) [(.var 6)])), (.arm .none [] (.«match» (.option (.adt 1)) (.cond (.call 20 [(.var 0)]) (.build .some (.option (.adt 1)) [(.build (.adt 6) (.adt 1) [])]) (.build .none (.option (.adt 1)) [])) [(.arm .some [7] (.build .some (.option (.adt 1)) [(.var 7)])), (.arm .none [] (.cond (.call 21 [(.var 0)]) (.build .some (.option (.adt 1)) [(.build (.adt 7) (.adt 1) [])]) (.build .none (.option (.adt 1)) [])))]))]))]) }) ::( + { parameters := [0, 1], types := [(.adt 3), (.adt 1)], result := (.option (.adt 3)), + body := (.«match» (.option (.adt 3)) (.var 1) [(.arm (.adt 0) [] (.call 22 [(.var 0)])), (.arm (.adt 1) [] (.call 23 [(.var 0)])), (.arm (.adt 2) [] (.call 24 [(.var 0)])), (.arm (.adt 3) [] (.call 25 [(.var 0)])), (.arm (.adt 4) [] (.call 26 [(.var 0)])), (.arm (.adt 5) [] (.call 27 [(.var 0)])), (.arm (.adt 6) [] (.call 28 [(.var 0)])), (.arm (.adt 7) [] (.call 29 [(.var 0)]))]) }) ::( + { parameters := [0], types := [(.adt 3)], result := .nat, + body := (.second (.«let» 7 (.pair .bool .nat) (.«let» 3 (.pair .bool .nat) (.«let» 1 (.pair .bool .nat) (.build .pair (.pair .bool .nat) [(.call 14 [(.var 0)]), (.value .nat (.nat 1))]) (.cond (.first (.var 1)) (.var 1) (.«let» 2 (.pair .bool .nat) (.build .pair (.pair .bool .nat) [(.call 15 [(.var 0)]), (.value .nat (.nat 1))]) (.build .pair (.pair .bool .nat) [(.first (.var 2)), (.prim .natAdd [(.second (.var 1)), (.second (.var 2))])])))) (.cond (.first (.var 3)) (.var 3) (.«let» 6 (.pair .bool .nat) (.«let» 4 (.pair .bool .nat) (.build .pair (.pair .bool .nat) [(.call 16 [(.var 0)]), (.value .nat (.nat 1))]) (.cond (.first (.var 4)) (.var 4) (.«let» 5 (.pair .bool .nat) (.build .pair (.pair .bool .nat) [(.call 17 [(.var 0)]), (.value .nat (.nat 1))]) (.build .pair (.pair .bool .nat) [(.first (.var 5)), (.prim .natAdd [(.second (.var 4)), (.second (.var 5))])])))) (.build .pair (.pair .bool .nat) [(.first (.var 6)), (.prim .natAdd [(.second (.var 3)), (.second (.var 6))])])))) (.cond (.first (.var 7)) (.var 7) (.«let» 14 (.pair .bool .nat) (.«let» 10 (.pair .bool .nat) (.«let» 8 (.pair .bool .nat) (.build .pair (.pair .bool .nat) [(.call 18 [(.var 0)]), (.value .nat (.nat 1))]) (.cond (.first (.var 8)) (.var 8) (.«let» 9 (.pair .bool .nat) (.build .pair (.pair .bool .nat) [(.call 19 [(.var 0)]), (.value .nat (.nat 1))]) (.build .pair (.pair .bool .nat) [(.first (.var 9)), (.prim .natAdd [(.second (.var 8)), (.second (.var 9))])])))) (.cond (.first (.var 10)) (.var 10) (.«let» 13 (.pair .bool .nat) (.«let» 11 (.pair .bool .nat) (.build .pair (.pair .bool .nat) [(.call 20 [(.var 0)]), (.value .nat (.nat 1))]) (.cond (.first (.var 11)) (.var 11) (.«let» 12 (.pair .bool .nat) (.build .pair (.pair .bool .nat) [(.call 21 [(.var 0)]), (.value .nat (.nat 1))]) (.build .pair (.pair .bool .nat) [(.first (.var 12)), (.prim .natAdd [(.second (.var 11)), (.second (.var 12))])])))) (.build .pair (.pair .bool .nat) [(.first (.var 13)), (.prim .natAdd [(.second (.var 10)), (.second (.var 13))])])))) (.build .pair (.pair .bool .nat) [(.first (.var 14)), (.prim .natAdd [(.second (.var 7)), (.second (.var 14))])]))))) }) ::( + { parameters := [0], types := [(.adt 0)], result := (.adt 3), + body := (.build (.adt 0) (.adt 3) [(.var 0), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0))]) }) ::( + { parameters := [0, 1], types := [(.adt 0), .nat], result := .bool, + body := (.cond (.prim .natLe [(.var 1), (.value .nat (.nat 3))]) (.cond (.prim .natEq [(.var 1), (.value .nat (.nat 3))]) (.build .true .bool []) (.prim .boolNot [(.cond (.call 30 [(.var 0)]) (.cond (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 1))]) (.cond (.call 31 [(.var 0)]) (.call 32 [(.var 0)]) (.build .false .bool [])) (.build .false .bool [])) (.build .false .bool []))])) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 3)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 1), (.value .nat (.nat 0))]) (.call 31 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 3)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 2), (.value .nat (.nat 0))]) (.call 32 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 3)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 3), (.value .nat (.nat 0))]) (.call 33 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 3)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 4), (.value .nat (.nat 0))]) (.call 34 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 3)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 0))]) (.prim .natLe [(.value .nat (.nat 2)), (.prim .natAdd [(.prim .natAdd [(.prim .natAdd [(.field (.var 0) 1), (.field (.var 0) 2)]), (.field (.var 0) 3)]), (.field (.var 0) 4)])]) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 3)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 0))]) (.cond (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 1))]) (.prim .natEq [(.field (.field (.var 0) 0) 5), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 3)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 7), (.value .nat (.nat 0))]) (.cond (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 1))]) (.call 30 [(.field (.var 0) 0)]) (.build .false .bool [])) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 3)], result := .bool, + body := (.cond (.prim .natLt [(.field (.var 0) 8), (.value .nat (.nat 3))]) (.cond (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 0))]) (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .true .bool []) (.cond (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 1))]) (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .true .bool []) (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 2))]) (.prim .natEq [(.field (.var 0) 7), (.value .nat (.nat 1))]) (.build .false .bool [])))) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 3)], result := (.option (.adt 3)), + body := (.cond (.call 14 [(.var 0)]) (.build .some (.option (.adt 3)) [(.call 35 [(.var 0)])]) (.build .none (.option (.adt 3)) [])) }) ::( + { parameters := [0], types := [(.adt 3)], result := (.option (.adt 3)), + body := (.cond (.call 15 [(.var 0)]) (.build .some (.option (.adt 3)) [(.call 36 [(.var 0)])]) (.build .none (.option (.adt 3)) [])) }) ::( + { parameters := [0], types := [(.adt 3)], result := (.option (.adt 3)), + body := (.cond (.call 16 [(.var 0)]) (.build .some (.option (.adt 3)) [(.call 37 [(.var 0)])]) (.build .none (.option (.adt 3)) [])) }) ::( + { parameters := [0], types := [(.adt 3)], result := (.option (.adt 3)), + body := (.cond (.call 17 [(.var 0)]) (.build .some (.option (.adt 3)) [(.call 38 [(.var 0)])]) (.build .none (.option (.adt 3)) [])) }) ::( + { parameters := [0], types := [(.adt 3)], result := (.option (.adt 3)), + body := (.cond (.call 18 [(.var 0)]) (.build .some (.option (.adt 3)) [(.call 39 [(.var 0)])]) (.build .none (.option (.adt 3)) [])) }) ::( + { parameters := [0], types := [(.adt 3)], result := (.option (.adt 3)), + body := (.cond (.call 19 [(.var 0)]) (.build .some (.option (.adt 3)) [(.call 40 [(.var 0)])]) (.build .none (.option (.adt 3)) [])) }) ::( + { parameters := [0], types := [(.adt 3)], result := (.option (.adt 3)), + body := (.cond (.call 20 [(.var 0)]) (.build .some (.option (.adt 3)) [(.call 41 [(.var 0)])]) (.build .none (.option (.adt 3)) [])) }) ::( + { parameters := [0], types := [(.adt 3)], result := (.option (.adt 3)), + body := (.cond (.call 21 [(.var 0)]) (.build .some (.option (.adt 3)) [(.call 42 [(.var 0)])]) (.build .none (.option (.adt 3)) [])) }) ::( + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.prim .natLt [(.field (.var 0) 4), (.value .nat (.nat 90))]) }) ::( + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.prim .natLt [(.value .nat (.nat 380)), (.field (.var 0) 0)]) }) ::( + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.prim .natLt [(.value .nat (.nat 90)), (.field (.var 0) 1)]) }) ::( + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.prim .natLt [(.value .nat (.nat 20)), (.field (.var 0) 2)]) }) ::( + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.prim .natLt [(.value .nat (.nat 12)), (.field (.var 0) 3)]) }) ::( + { parameters := [0], types := [(.adt 3)], result := (.adt 3), + body := (.build (.adt 0) (.adt 3) [(.field (.var 0) 0), (.value .nat (.nat 1)), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 3)], result := (.adt 3), + body := (.build (.adt 0) (.adt 3) [(.field (.var 0) 0), (.field (.var 0) 1), (.value .nat (.nat 1)), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 3)], result := (.adt 3), + body := (.build (.adt 0) (.adt 3) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.value .nat (.nat 1)), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 3)], result := (.adt 3), + body := (.build (.adt 0) (.adt 3) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.value .nat (.nat 1)), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 3)], result := (.adt 3), + body := (.build (.adt 0) (.adt 3) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.value .nat (.nat 1)), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 3)], result := (.adt 3), + body := (.build (.adt 0) (.adt 3) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.value .nat (.nat 1)), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 3)], result := (.adt 3), + body := (.build (.adt 0) (.adt 3) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.value .nat (.nat 1)), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 3)], result := (.adt 3), + body := (.build (.adt 0) (.adt 3) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.prim .natAdd [(.field (.var 0) 8), (.value .nat (.nat 1))])]) }) ::[]) } + +def __enc_0 (__s : (Reasoning.Clinic.Vitals)) : _root_.LexLeanTarget.TargetSyntax.Value := + _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).temperature), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).heartRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).respiratoryRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).whiteCells), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).systolic), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).infection)] + +def __enc_1 : (Reasoning.Clinic.Triage.Step) -> _root_.LexLeanTarget.TargetSyntax.Value + | Reasoning.Clinic.Triage.Step.Fever => _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [] + | Reasoning.Clinic.Triage.Step.Tachycardia => _root_.LexLeanTarget.TargetSyntax.Value.adt 1 [] + | Reasoning.Clinic.Triage.Step.Tachypnea => _root_.LexLeanTarget.TargetSyntax.Value.adt 2 [] + | Reasoning.Clinic.Triage.Step.Leukocytosis => _root_.LexLeanTarget.TargetSyntax.Value.adt 3 [] + | Reasoning.Clinic.Triage.Step.Sirs => _root_.LexLeanTarget.TargetSyntax.Value.adt 4 [] + | Reasoning.Clinic.Triage.Step.Sepsis => _root_.LexLeanTarget.TargetSyntax.Value.adt 5 [] + | Reasoning.Clinic.Triage.Step.Shock => _root_.LexLeanTarget.TargetSyntax.Value.adt 6 [] + | Reasoning.Clinic.Triage.Step.Escalate => _root_.LexLeanTarget.TargetSyntax.Value.adt 7 [] + +def __enc_3 (__s : (Reasoning.Clinic.Chart)) : _root_.LexLeanTarget.TargetSyntax.Value := + _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [(__enc_0 (__s).vitals), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).fever), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).tachycardia), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).tachypnea), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).leukocytosis), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).sirs), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).sepsis), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).shock), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).level)] + +def __enc_4 (__s : (Reasoning.Clinic.Triage.Ledger)) : _root_.LexLeanTarget.TargetSyntax.Value := + _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).iterations), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).attempts), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).firings), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).expansions), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).verifications), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).frontier)] + +def __enc_2 (__s : (Reasoning.Clinic.Triage.Run)) : _root_.LexLeanTarget.TargetSyntax.Value := + _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [(__enc_3 (__s).state), ((_root_.LexLeanPreservation.encList __enc_1) (__s).trace), (__enc_4 (__s).ledger)] + +def __fits_31 (v : (Reasoning.Clinic.Vitals)) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_31 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 31 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_31 v) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.feverish v))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (380 : Nat) (v).temperature)) + +def __fits_14 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).fever (0 : Nat)) then ((Bool.true && Bool.true) && (__fits_31 ((s).vitals))) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.feverish in +theorem __rel_14 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 14 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_14 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Fever.guard s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && (__fits_31 ((s).vitals))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Reasoning.Clinic.feverish ((s).vitals)))) (Nat.beq (s).fever (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).fever (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_31 ((s).vitals)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) + +def __fits_32 (v : (Reasoning.Clinic.Vitals)) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_32 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 32 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_32 v) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.tachycardic v))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (90 : Nat) (v).heartRate)) + +def __fits_15 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).tachycardia (0 : Nat)) then ((Bool.true && Bool.true) && (__fits_32 ((s).vitals))) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.tachycardic in +theorem __rel_15 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 15 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_15 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Tachycardia.guard s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && (__fits_32 ((s).vitals))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Reasoning.Clinic.tachycardic ((s).vitals)))) (Nat.beq (s).tachycardia (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).tachycardia (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_32 ((s).vitals)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) + +def __fits_33 (v : (Reasoning.Clinic.Vitals)) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_33 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 33 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_33 v) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.tachypneic v))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (20 : Nat) (v).respiratoryRate)) + +def __fits_16 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).tachypnea (0 : Nat)) then ((Bool.true && Bool.true) && (__fits_33 ((s).vitals))) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.tachypneic in +theorem __rel_16 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 16 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_16 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Tachypnea.guard s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && (__fits_33 ((s).vitals))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Reasoning.Clinic.tachypneic ((s).vitals)))) (Nat.beq (s).tachypnea (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).tachypnea (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_33 ((s).vitals)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) + +def __fits_34 (v : (Reasoning.Clinic.Vitals)) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_34 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 34 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_34 v) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.leukocytic v))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (12 : Nat) (v).whiteCells)) + +def __fits_17 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).leukocytosis (0 : Nat)) then ((Bool.true && Bool.true) && (__fits_34 ((s).vitals))) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.leukocytic in +theorem __rel_17 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 17 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_17 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Leukocytosis.guard s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && (__fits_34 ((s).vitals))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Reasoning.Clinic.leukocytic ((s).vitals)))) (Nat.beq (s).leukocytosis (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).leukocytosis (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_34 ((s).vitals)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) + +def __fits_18 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sirs (0 : Nat)) then ((Bool.true && (((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((s).fever + (s).tachycardia) 18446744073709551616)) && (Bool.true && Bool.true)) && (Nat.blt (((s).fever + (s).tachycardia) + (s).tachypnea) 18446744073709551616)) && (Bool.true && Bool.true)) && (Nat.blt ((((s).fever + (s).tachycardia) + (s).tachypnea) + (s).leukocytosis) 18446744073709551616)) && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) + +theorem __rel_18 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 18 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_18 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Sirs.guard s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((s).fever + (s).tachycardia) 18446744073709551616)) && (Bool.true && Bool.true)) && (Nat.blt (((s).fever + (s).tachycardia) + (s).tachypnea) 18446744073709551616)) && (Bool.true && Bool.true)) && (Nat.blt ((((s).fever + (s).tachycardia) + (s).tachypnea) + (s).leukocytosis) 18446744073709551616)) && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.ble (2 : Nat) ((((s).fever + (s).tachycardia) + (s).tachypnea) + (s).leukocytosis)))) (Nat.beq (s).sirs (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sirs (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (s).fever (s).tachycardia)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((s).fever + (s).tachycardia) (s).tachypnea)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (((s).fever + (s).tachycardia) + (s).tachypnea) (s).leukocytosis)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe (2 : Nat) ((((s).fever + (s).tachycardia) + (s).tachypnea) + (s).leukocytosis)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) + +def __fits_19 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sepsis (0 : Nat)) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sirs (1 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) + +theorem __rel_19 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 19 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_19 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Sepsis.guard s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sirs (1 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && ((Nat.beq (s).sirs (1 : Nat)) && (Nat.beq ((s).vitals).infection (1 : Nat))))) (Nat.beq (s).sepsis (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sepsis (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.beq ((s).vitals).infection (1 : Nat)))) (Nat.beq (s).sirs (1 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sirs (1 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq ((s).vitals).infection (1 : Nat)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) + +def __fits_30 (v : (Reasoning.Clinic.Vitals)) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_30 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 30 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_30 v) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.hypotensive v))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (v).systolic (90 : Nat))) + +def __fits_20 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).shock (0 : Nat)) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sepsis (1 : Nat)) then ((Bool.true && Bool.true) && (__fits_30 ((s).vitals))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.hypotensive in +theorem __rel_20 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 20 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_20 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Shock.guard s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sepsis (1 : Nat)) then ((Bool.true && Bool.true) && (__fits_30 ((s).vitals))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && ((Nat.beq (s).sepsis (1 : Nat)) && (Reasoning.Clinic.hypotensive ((s).vitals))))) (Nat.beq (s).shock (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).shock (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && (__fits_30 ((s).vitals))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Reasoning.Clinic.hypotensive ((s).vitals)))) (Nat.beq (s).sepsis (1 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sepsis (1 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_30 ((s).vitals)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) + +def __fits_21 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.blt (s).level (3 : Nat)) then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (0 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if ((Nat.beq (s).level (0 : Nat)) && (Nat.beq (s).sirs (1 : Nat))) then (Bool.true && Bool.true) else ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (1 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if ((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (2 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))))))) else (Bool.true && Bool.true))) + +theorem __rel_21 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 21 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_21 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Escalate.guard s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (0 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if ((Nat.beq (s).level (0 : Nat)) && (Nat.beq (s).sirs (1 : Nat))) then (Bool.true && Bool.true) else ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (1 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if ((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (2 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))))))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (((Nat.beq (s).level (0 : Nat)) && (Nat.beq (s).sirs (1 : Nat))) || (((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) || ((Nat.beq (s).level (2 : Nat)) && (Nat.beq (s).shock (1 : Nat))))))) (Nat.blt (s).level (3 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (s).level (3 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (Bool.true && Bool.true) else ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (1 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if ((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (2 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b || (((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) || ((Nat.beq (s).level (2 : Nat)) && (Nat.beq (s).shock (1 : Nat)))))) ((Nat.beq (s).level (0 : Nat)) && (Nat.beq (s).sirs (1 : Nat))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.beq (s).sirs (1 : Nat)))) (Nat.beq (s).level (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).level (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sirs (1 : Nat)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (2 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b || ((Nat.beq (s).level (2 : Nat)) && (Nat.beq (s).shock (1 : Nat))))) ((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.beq (s).sepsis (1 : Nat)))) (Nat.beq (s).level (1 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).level (1 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sepsis (1 : Nat)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.beq (s).shock (1 : Nat)))) (Nat.beq (s).level (2 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).level (2 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).shock (1 : Nat)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))))))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) + +def __fits_9 (_ys : (Reasoning.Clinic.Chart)) : Bool := + ((((((Bool.true && Bool.true) && (__fits_14 (_ys))) && (if (Reasoning.Clinic.Fever.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Fever : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_15 (_ys))) && (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) && (match (match (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Fever : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachycardia : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((Bool.true && Bool.true) && (__fits_16 (_ys))) && (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachypnea : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_17 (_ys))) && (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))) && (match (match (match (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Fever : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachycardia : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (match (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachypnea : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Leukocytosis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((((Bool.true && Bool.true) && (__fits_18 (_ys))) && (if (Reasoning.Clinic.Sirs.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_19 (_ys))) && (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) && (match (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sepsis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((Bool.true && Bool.true) && (__fits_20 (_ys))) && (if (Reasoning.Clinic.Shock.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Shock : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_21 (_ys))) && (if (Reasoning.Clinic.Escalate.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))))) + +attribute [local irreducible] Reasoning.Clinic.Escalate.guard Reasoning.Clinic.Fever.guard Reasoning.Clinic.Leukocytosis.guard Reasoning.Clinic.Sepsis.guard Reasoning.Clinic.Shock.guard Reasoning.Clinic.Sirs.guard Reasoning.Clinic.Tachycardia.guard Reasoning.Clinic.Tachypnea.guard in +theorem __rel_9 (_ys : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 9 [(__enc_3 _ys)] (_root_.LexLeanPreservation.Rel (__fits_9 _ys) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Triage.select _ys))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_1) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((((Bool.true && Bool.true) && (__fits_18 (_ys))) && (if (Reasoning.Clinic.Sirs.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_19 (_ys))) && (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) && (match (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sepsis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((Bool.true && Bool.true) && (__fits_20 (_ys))) && (if (Reasoning.Clinic.Shock.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Shock : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_21 (_ys))) && (if (Reasoning.Clinic.Escalate.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_1) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (match (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sepsis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (match (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Shock : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Escalate.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Escalate : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))))))) (match (match (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Fever : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachycardia : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (match (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachypnea : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Leukocytosis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))))) (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_1) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((Bool.true && Bool.true) && (__fits_16 (_ys))) && (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachypnea : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_17 (_ys))) && (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_1) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (match (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachypnea : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Leukocytosis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))))) (match (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Fever : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachycardia : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_1) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_15 (_ys))) && (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_1) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachycardia : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))))) (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Fever : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Fever : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Fever.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_14 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Tachycardia : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Tachycardia.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_15 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_1) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_17 (_ys))) && (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_1) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Leukocytosis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))))) (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachypnea : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Tachypnea : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Tachypnea.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_16 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Leukocytosis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Leukocytosis.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_17 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_1) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((Bool.true && Bool.true) && (__fits_20 (_ys))) && (if (Reasoning.Clinic.Shock.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Shock : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_21 (_ys))) && (if (Reasoning.Clinic.Escalate.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_1) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (match (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Shock : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Escalate.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Escalate : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))))) (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sepsis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_1) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_19 (_ys))) && (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_1) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sepsis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))))) (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Sirs.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_18 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Sepsis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Sepsis.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_19 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_1) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_21 (_ys))) && (if (Reasoning.Clinic.Escalate.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_1) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Escalate.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Escalate : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))))) (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Shock : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Shock : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Shock.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_20 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Escalate : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Escalate.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_21 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))))))))))) + +def __fits_35 (s : (Reasoning.Clinic.Chart)) : Bool := + ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) + +theorem __rel_35 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 35 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_35 s) (__enc_3 (Reasoning.Clinic.Fever.conclusion s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) + +def __fits_22 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && Bool.true) && (__fits_14 (s))) && (if (Reasoning.Clinic.Fever.guard (s)) then ((((Bool.true && Bool.true) && (__fits_35 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.Fever.conclusion Reasoning.Clinic.Fever.guard in +theorem __rel_22 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 22 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_22 s) ((_root_.LexLeanPreservation.encOption __enc_3) (Reasoning.Clinic.Fever.apply s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_35 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_3) (if __b then (Option.some ((Reasoning.Clinic.Fever.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Fever.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_14 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_35 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_36 (s : (Reasoning.Clinic.Chart)) : Bool := + ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) + +theorem __rel_36 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 36 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_36 s) (__enc_3 (Reasoning.Clinic.Tachycardia.conclusion s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) + +def __fits_23 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && Bool.true) && (__fits_15 (s))) && (if (Reasoning.Clinic.Tachycardia.guard (s)) then ((((Bool.true && Bool.true) && (__fits_36 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.Tachycardia.conclusion Reasoning.Clinic.Tachycardia.guard in +theorem __rel_23 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 23 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_23 s) ((_root_.LexLeanPreservation.encOption __enc_3) (Reasoning.Clinic.Tachycardia.apply s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_36 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_3) (if __b then (Option.some ((Reasoning.Clinic.Tachycardia.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Tachycardia.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_15 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_36 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_37 (s : (Reasoning.Clinic.Chart)) : Bool := + ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) + +theorem __rel_37 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 37 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_37 s) (__enc_3 (Reasoning.Clinic.Tachypnea.conclusion s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) + +def __fits_24 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && Bool.true) && (__fits_16 (s))) && (if (Reasoning.Clinic.Tachypnea.guard (s)) then ((((Bool.true && Bool.true) && (__fits_37 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.Tachypnea.conclusion Reasoning.Clinic.Tachypnea.guard in +theorem __rel_24 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 24 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_24 s) ((_root_.LexLeanPreservation.encOption __enc_3) (Reasoning.Clinic.Tachypnea.apply s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_37 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_3) (if __b then (Option.some ((Reasoning.Clinic.Tachypnea.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Tachypnea.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_16 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_37 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_38 (s : (Reasoning.Clinic.Chart)) : Bool := + ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) + +theorem __rel_38 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 38 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_38 s) (__enc_3 (Reasoning.Clinic.Leukocytosis.conclusion s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) + +def __fits_25 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && Bool.true) && (__fits_17 (s))) && (if (Reasoning.Clinic.Leukocytosis.guard (s)) then ((((Bool.true && Bool.true) && (__fits_38 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.Leukocytosis.conclusion Reasoning.Clinic.Leukocytosis.guard in +theorem __rel_25 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 25 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_25 s) ((_root_.LexLeanPreservation.encOption __enc_3) (Reasoning.Clinic.Leukocytosis.apply s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_38 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_3) (if __b then (Option.some ((Reasoning.Clinic.Leukocytosis.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Leukocytosis.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_17 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_38 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_39 (s : (Reasoning.Clinic.Chart)) : Bool := + ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) + +theorem __rel_39 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 39 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_39 s) (__enc_3 (Reasoning.Clinic.Sirs.conclusion s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) + +def __fits_26 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && Bool.true) && (__fits_18 (s))) && (if (Reasoning.Clinic.Sirs.guard (s)) then ((((Bool.true && Bool.true) && (__fits_39 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.Sirs.conclusion Reasoning.Clinic.Sirs.guard in +theorem __rel_26 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 26 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_26 s) ((_root_.LexLeanPreservation.encOption __enc_3) (Reasoning.Clinic.Sirs.apply s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_39 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_3) (if __b then (Option.some ((Reasoning.Clinic.Sirs.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Sirs.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_18 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_39 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_40 (s : (Reasoning.Clinic.Chart)) : Bool := + ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) + +theorem __rel_40 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 40 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_40 s) (__enc_3 (Reasoning.Clinic.Sepsis.conclusion s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) + +def __fits_27 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && Bool.true) && (__fits_19 (s))) && (if (Reasoning.Clinic.Sepsis.guard (s)) then ((((Bool.true && Bool.true) && (__fits_40 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.Sepsis.conclusion Reasoning.Clinic.Sepsis.guard in +theorem __rel_27 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 27 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_27 s) ((_root_.LexLeanPreservation.encOption __enc_3) (Reasoning.Clinic.Sepsis.apply s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_40 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_3) (if __b then (Option.some ((Reasoning.Clinic.Sepsis.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Sepsis.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_19 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_40 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_41 (s : (Reasoning.Clinic.Chart)) : Bool := + ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) + +theorem __rel_41 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 41 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_41 s) (__enc_3 (Reasoning.Clinic.Shock.conclusion s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) + +def __fits_28 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && Bool.true) && (__fits_20 (s))) && (if (Reasoning.Clinic.Shock.guard (s)) then ((((Bool.true && Bool.true) && (__fits_41 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.Shock.conclusion Reasoning.Clinic.Shock.guard in +theorem __rel_28 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 28 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_28 s) ((_root_.LexLeanPreservation.encOption __enc_3) (Reasoning.Clinic.Shock.apply s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_41 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_3) (if __b then (Option.some ((Reasoning.Clinic.Shock.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Shock.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_20 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_41 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_42 (s : (Reasoning.Clinic.Chart)) : Bool := + ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((s).level + (1 : Nat)) 18446744073709551616)) && Bool.true))))))))) && Bool.true) + +theorem __rel_42 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 42 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_42 s) (__enc_3 (Reasoning.Clinic.Escalate.conclusion s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (s).level (1 : Nat))) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) + +def __fits_29 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && Bool.true) && (__fits_21 (s))) && (if (Reasoning.Clinic.Escalate.guard (s)) then ((((Bool.true && Bool.true) && (__fits_42 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.Escalate.conclusion Reasoning.Clinic.Escalate.guard in +theorem __rel_29 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 29 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_29 s) ((_root_.LexLeanPreservation.encOption __enc_3) (Reasoning.Clinic.Escalate.apply s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_42 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_3) (if __b then (Option.some ((Reasoning.Clinic.Escalate.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Escalate.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_21 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_42 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_10 (_ys : (Reasoning.Clinic.Chart)) (_ystep : (Reasoning.Clinic.Triage.Step)) : Bool := + (Bool.true && (match _ystep with | Reasoning.Clinic.Triage.Step.Fever => ((Bool.true && Bool.true) && (__fits_22 (_ys))) | Reasoning.Clinic.Triage.Step.Tachycardia => ((Bool.true && Bool.true) && (__fits_23 (_ys))) | Reasoning.Clinic.Triage.Step.Tachypnea => ((Bool.true && Bool.true) && (__fits_24 (_ys))) | Reasoning.Clinic.Triage.Step.Leukocytosis => ((Bool.true && Bool.true) && (__fits_25 (_ys))) | Reasoning.Clinic.Triage.Step.Sirs => ((Bool.true && Bool.true) && (__fits_26 (_ys))) | Reasoning.Clinic.Triage.Step.Sepsis => ((Bool.true && Bool.true) && (__fits_27 (_ys))) | Reasoning.Clinic.Triage.Step.Shock => ((Bool.true && Bool.true) && (__fits_28 (_ys))) | Reasoning.Clinic.Triage.Step.Escalate => ((Bool.true && Bool.true) && (__fits_29 (_ys))))) + +attribute [local irreducible] Reasoning.Clinic.Escalate.apply Reasoning.Clinic.Fever.apply Reasoning.Clinic.Leukocytosis.apply Reasoning.Clinic.Sepsis.apply Reasoning.Clinic.Shock.apply Reasoning.Clinic.Sirs.apply Reasoning.Clinic.Tachycardia.apply Reasoning.Clinic.Tachypnea.apply in +theorem __rel_10 (_ys : (Reasoning.Clinic.Chart)) (_ystep : (Reasoning.Clinic.Triage.Step)) : _root_.LexLeanPreservation.FunRel __prog 10 [(__enc_3 _ys), (__enc_1 _ystep)] (_root_.LexLeanPreservation.Rel (__fits_10 _ys _ystep) ((_root_.LexLeanPreservation.encOption __enc_3) (Reasoning.Clinic.Triage.fire _ys _ystep))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV __enc_1 (fun (__a : (Reasoning.Clinic.Triage.Step)) => (match __a with | Reasoning.Clinic.Triage.Step.Fever => ((Bool.true && Bool.true) && (__fits_22 (_ys))) | Reasoning.Clinic.Triage.Step.Tachycardia => ((Bool.true && Bool.true) && (__fits_23 (_ys))) | Reasoning.Clinic.Triage.Step.Tachypnea => ((Bool.true && Bool.true) && (__fits_24 (_ys))) | Reasoning.Clinic.Triage.Step.Leukocytosis => ((Bool.true && Bool.true) && (__fits_25 (_ys))) | Reasoning.Clinic.Triage.Step.Sirs => ((Bool.true && Bool.true) && (__fits_26 (_ys))) | Reasoning.Clinic.Triage.Step.Sepsis => ((Bool.true && Bool.true) && (__fits_27 (_ys))) | Reasoning.Clinic.Triage.Step.Shock => ((Bool.true && Bool.true) && (__fits_28 (_ys))) | Reasoning.Clinic.Triage.Step.Escalate => ((Bool.true && Bool.true) && (__fits_29 (_ys))))) (fun (__a : (Reasoning.Clinic.Triage.Step)) => (_root_.LexLeanPreservation.encOption __enc_3) (match __a with | Reasoning.Clinic.Triage.Step.Fever => (Reasoning.Clinic.Fever.apply (_ys)) | Reasoning.Clinic.Triage.Step.Tachycardia => (Reasoning.Clinic.Tachycardia.apply (_ys)) | Reasoning.Clinic.Triage.Step.Tachypnea => (Reasoning.Clinic.Tachypnea.apply (_ys)) | Reasoning.Clinic.Triage.Step.Leukocytosis => (Reasoning.Clinic.Leukocytosis.apply (_ys)) | Reasoning.Clinic.Triage.Step.Sirs => (Reasoning.Clinic.Sirs.apply (_ys)) | Reasoning.Clinic.Triage.Step.Sepsis => (Reasoning.Clinic.Sepsis.apply (_ys)) | Reasoning.Clinic.Triage.Step.Shock => (Reasoning.Clinic.Shock.apply (_ys)) | Reasoning.Clinic.Triage.Step.Escalate => (Reasoning.Clinic.Escalate.apply (_ys)))) _ystep (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (Reasoning.Clinic.Triage.Step)) _ => match __a with | Reasoning.Clinic.Triage.Step.Fever => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_22 (_ys)))) | Reasoning.Clinic.Triage.Step.Tachycardia => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_23 (_ys))))) | Reasoning.Clinic.Triage.Step.Tachypnea => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_24 (_ys)))))) | Reasoning.Clinic.Triage.Step.Leukocytosis => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_25 (_ys))))))) | Reasoning.Clinic.Triage.Step.Sirs => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_26 (_ys)))))))) | Reasoning.Clinic.Triage.Step.Sepsis => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_27 (_ys))))))))) | Reasoning.Clinic.Triage.Step.Shock => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_28 (_ys)))))))))) | Reasoning.Clinic.Triage.Step.Escalate => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_29 (_ys))))))))))))) + +def __fits_11 (_ys : (Reasoning.Clinic.Chart)) : Bool := + (((((((Bool.true && Bool.true) && (__fits_14 (_ys))) && (Bool.true && Bool.true)) && Bool.true) && (let _yscan0l : (Prod Bool Nat) := ((Reasoning.Clinic.Fever.guard (_ys)), (1 : Nat)); (Bool.true && (if (_yscan0l).1 then Bool.true else (((((Bool.true && Bool.true) && (__fits_15 (_ys))) && (Bool.true && Bool.true)) && Bool.true) && (let _yscan0r : (Prod Bool Nat) := ((Reasoning.Clinic.Tachycardia.guard (_ys)), (1 : Nat)); ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((_yscan0l).2 + (_yscan0r).2) 18446744073709551616)) && Bool.true)) && Bool.true))))))) && (let _yscan2l : (Prod Bool Nat) := (let _yscan0l : (Prod Bool Nat) := ((Reasoning.Clinic.Fever.guard (_ys)), (1 : Nat)); (if (_yscan0l).1 then _yscan0l else (let _yscan0r : (Prod Bool Nat) := ((Reasoning.Clinic.Tachycardia.guard (_ys)), (1 : Nat)); ((_yscan0r).1, ((_yscan0l).2 + (_yscan0r).2))))); (Bool.true && (if (_yscan2l).1 then Bool.true else ((((((Bool.true && Bool.true) && (__fits_16 (_ys))) && (Bool.true && Bool.true)) && Bool.true) && (let _yscan1l : (Prod Bool Nat) := ((Reasoning.Clinic.Tachypnea.guard (_ys)), (1 : Nat)); (Bool.true && (if (_yscan1l).1 then Bool.true else (((((Bool.true && Bool.true) && (__fits_17 (_ys))) && (Bool.true && Bool.true)) && Bool.true) && (let _yscan1r : (Prod Bool Nat) := ((Reasoning.Clinic.Leukocytosis.guard (_ys)), (1 : Nat)); ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((_yscan1l).2 + (_yscan1r).2) 18446744073709551616)) && Bool.true)) && Bool.true))))))) && (let _yscan2r : (Prod Bool Nat) := (let _yscan1l : (Prod Bool Nat) := ((Reasoning.Clinic.Tachypnea.guard (_ys)), (1 : Nat)); (if (_yscan1l).1 then _yscan1l else (let _yscan1r : (Prod Bool Nat) := ((Reasoning.Clinic.Leukocytosis.guard (_ys)), (1 : Nat)); ((_yscan1r).1, ((_yscan1l).2 + (_yscan1r).2))))); ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((_yscan2l).2 + (_yscan2r).2) 18446744073709551616)) && Bool.true)) && Bool.true))))))) && (let _yscan6l : (Prod Bool Nat) := (let _yscan2l : (Prod Bool Nat) := (let _yscan0l : (Prod Bool Nat) := ((Reasoning.Clinic.Fever.guard (_ys)), (1 : Nat)); (if (_yscan0l).1 then _yscan0l else (let _yscan0r : (Prod Bool Nat) := ((Reasoning.Clinic.Tachycardia.guard (_ys)), (1 : Nat)); ((_yscan0r).1, ((_yscan0l).2 + (_yscan0r).2))))); (if (_yscan2l).1 then _yscan2l else (let _yscan2r : (Prod Bool Nat) := (let _yscan1l : (Prod Bool Nat) := ((Reasoning.Clinic.Tachypnea.guard (_ys)), (1 : Nat)); (if (_yscan1l).1 then _yscan1l else (let _yscan1r : (Prod Bool Nat) := ((Reasoning.Clinic.Leukocytosis.guard (_ys)), (1 : Nat)); ((_yscan1r).1, ((_yscan1l).2 + (_yscan1r).2))))); ((_yscan2r).1, ((_yscan2l).2 + (_yscan2r).2))))); (Bool.true && (if (_yscan6l).1 then Bool.true else (((((((Bool.true && Bool.true) && (__fits_18 (_ys))) && (Bool.true && Bool.true)) && Bool.true) && (let _yscan3l : (Prod Bool Nat) := ((Reasoning.Clinic.Sirs.guard (_ys)), (1 : Nat)); (Bool.true && (if (_yscan3l).1 then Bool.true else (((((Bool.true && Bool.true) && (__fits_19 (_ys))) && (Bool.true && Bool.true)) && Bool.true) && (let _yscan3r : (Prod Bool Nat) := ((Reasoning.Clinic.Sepsis.guard (_ys)), (1 : Nat)); ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((_yscan3l).2 + (_yscan3r).2) 18446744073709551616)) && Bool.true)) && Bool.true))))))) && (let _yscan5l : (Prod Bool Nat) := (let _yscan3l : (Prod Bool Nat) := ((Reasoning.Clinic.Sirs.guard (_ys)), (1 : Nat)); (if (_yscan3l).1 then _yscan3l else (let _yscan3r : (Prod Bool Nat) := ((Reasoning.Clinic.Sepsis.guard (_ys)), (1 : Nat)); ((_yscan3r).1, ((_yscan3l).2 + (_yscan3r).2))))); (Bool.true && (if (_yscan5l).1 then Bool.true else ((((((Bool.true && Bool.true) && (__fits_20 (_ys))) && (Bool.true && Bool.true)) && Bool.true) && (let _yscan4l : (Prod Bool Nat) := ((Reasoning.Clinic.Shock.guard (_ys)), (1 : Nat)); (Bool.true && (if (_yscan4l).1 then Bool.true else (((((Bool.true && Bool.true) && (__fits_21 (_ys))) && (Bool.true && Bool.true)) && Bool.true) && (let _yscan4r : (Prod Bool Nat) := ((Reasoning.Clinic.Escalate.guard (_ys)), (1 : Nat)); ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((_yscan4l).2 + (_yscan4r).2) 18446744073709551616)) && Bool.true)) && Bool.true))))))) && (let _yscan5r : (Prod Bool Nat) := (let _yscan4l : (Prod Bool Nat) := ((Reasoning.Clinic.Shock.guard (_ys)), (1 : Nat)); (if (_yscan4l).1 then _yscan4l else (let _yscan4r : (Prod Bool Nat) := ((Reasoning.Clinic.Escalate.guard (_ys)), (1 : Nat)); ((_yscan4r).1, ((_yscan4l).2 + (_yscan4r).2))))); ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((_yscan5l).2 + (_yscan5r).2) 18446744073709551616)) && Bool.true)) && Bool.true))))))) && (let _yscan6r : (Prod Bool Nat) := (let _yscan5l : (Prod Bool Nat) := (let _yscan3l : (Prod Bool Nat) := ((Reasoning.Clinic.Sirs.guard (_ys)), (1 : Nat)); (if (_yscan3l).1 then _yscan3l else (let _yscan3r : (Prod Bool Nat) := ((Reasoning.Clinic.Sepsis.guard (_ys)), (1 : Nat)); ((_yscan3r).1, ((_yscan3l).2 + (_yscan3r).2))))); (if (_yscan5l).1 then _yscan5l else (let _yscan5r : (Prod Bool Nat) := (let _yscan4l : (Prod Bool Nat) := ((Reasoning.Clinic.Shock.guard (_ys)), (1 : Nat)); (if (_yscan4l).1 then _yscan4l else (let _yscan4r : (Prod Bool Nat) := ((Reasoning.Clinic.Escalate.guard (_ys)), (1 : Nat)); ((_yscan4r).1, ((_yscan4l).2 + (_yscan4r).2))))); ((_yscan5r).1, ((_yscan5l).2 + (_yscan5r).2))))); ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((_yscan6l).2 + (_yscan6r).2) 18446744073709551616)) && Bool.true)) && Bool.true))))))) + +attribute [local irreducible] Reasoning.Clinic.Escalate.guard Reasoning.Clinic.Fever.guard Reasoning.Clinic.Leukocytosis.guard Reasoning.Clinic.Sepsis.guard Reasoning.Clinic.Shock.guard Reasoning.Clinic.Sirs.guard Reasoning.Clinic.Tachycardia.guard Reasoning.Clinic.Tachypnea.guard in +theorem __rel_11 (_ys : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 11 [(__enc_3 _ys)] (_root_.LexLeanPreservation.Rel (__fits_11 _ys) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Clinic.Triage.attempts _ys))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_second (let _yscan6l : (Prod Bool Nat) := (let _yscan2l : (Prod Bool Nat) := (let _yscan0l : (Prod Bool Nat) := ((Reasoning.Clinic.Fever.guard (_ys)), (1 : Nat)); (if (_yscan0l).1 then _yscan0l else (let _yscan0r : (Prod Bool Nat) := ((Reasoning.Clinic.Tachycardia.guard (_ys)), (1 : Nat)); ((_yscan0r).1, ((_yscan0l).2 + (_yscan0r).2))))); (if (_yscan2l).1 then _yscan2l else (let _yscan2r : (Prod Bool Nat) := (let _yscan1l : (Prod Bool Nat) := ((Reasoning.Clinic.Tachypnea.guard (_ys)), (1 : Nat)); (if (_yscan1l).1 then _yscan1l else (let _yscan1r : (Prod Bool Nat) := ((Reasoning.Clinic.Leukocytosis.guard (_ys)), (1 : Nat)); ((_yscan1r).1, ((_yscan1l).2 + (_yscan1r).2))))); ((_yscan2r).1, ((_yscan2l).2 + (_yscan2r).2))))); _root_.LexLeanPreservation.conv_let (let _yscan2l : (Prod Bool Nat) := (let _yscan0l : (Prod Bool Nat) := ((Reasoning.Clinic.Fever.guard (_ys)), (1 : Nat)); (if (_yscan0l).1 then _yscan0l else (let _yscan0r : (Prod Bool Nat) := ((Reasoning.Clinic.Tachycardia.guard (_ys)), (1 : Nat)); ((_yscan0r).1, ((_yscan0l).2 + (_yscan0r).2))))); _root_.LexLeanPreservation.conv_let (let _yscan0l : (Prod Bool Nat) := ((Reasoning.Clinic.Fever.guard (_ys)), (1 : Nat)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_14 (_ys))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else (((((Bool.true && Bool.true) && (__fits_15 (_ys))) && (Bool.true && Bool.true)) && Bool.true) && (let _yscan0r : (Prod Bool Nat) := ((Reasoning.Clinic.Tachycardia.guard (_ys)), (1 : Nat)); ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((_yscan0l).2 + (_yscan0r).2) 18446744073709551616)) && Bool.true)) && Bool.true))))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then _yscan0l else (let _yscan0r : (Prod Bool Nat) := ((Reasoning.Clinic.Tachycardia.guard (_ys)), (1 : Nat)); ((_yscan0r).1, ((_yscan0l).2 + (_yscan0r).2))))) (_yscan0l).1 (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (fun _ => (_root_.LexLeanPreservation.conv_var rfl)) (fun _ => (let _yscan0r : (Prod Bool Nat) := ((Reasoning.Clinic.Tachycardia.guard (_ys)), (1 : Nat)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_15 (_ys))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (_yscan0l).2 (_yscan0r).2)) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else ((((((Bool.true && Bool.true) && (__fits_16 (_ys))) && (Bool.true && Bool.true)) && Bool.true) && (let _yscan1l : (Prod Bool Nat) := ((Reasoning.Clinic.Tachypnea.guard (_ys)), (1 : Nat)); (Bool.true && (if (_yscan1l).1 then Bool.true else (((((Bool.true && Bool.true) && (__fits_17 (_ys))) && (Bool.true && Bool.true)) && Bool.true) && (let _yscan1r : (Prod Bool Nat) := ((Reasoning.Clinic.Leukocytosis.guard (_ys)), (1 : Nat)); ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((_yscan1l).2 + (_yscan1r).2) 18446744073709551616)) && Bool.true)) && Bool.true))))))) && (let _yscan2r : (Prod Bool Nat) := (let _yscan1l : (Prod Bool Nat) := ((Reasoning.Clinic.Tachypnea.guard (_ys)), (1 : Nat)); (if (_yscan1l).1 then _yscan1l else (let _yscan1r : (Prod Bool Nat) := ((Reasoning.Clinic.Leukocytosis.guard (_ys)), (1 : Nat)); ((_yscan1r).1, ((_yscan1l).2 + (_yscan1r).2))))); ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((_yscan2l).2 + (_yscan2r).2) 18446744073709551616)) && Bool.true)) && Bool.true))))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then _yscan2l else (let _yscan2r : (Prod Bool Nat) := (let _yscan1l : (Prod Bool Nat) := ((Reasoning.Clinic.Tachypnea.guard (_ys)), (1 : Nat)); (if (_yscan1l).1 then _yscan1l else (let _yscan1r : (Prod Bool Nat) := ((Reasoning.Clinic.Leukocytosis.guard (_ys)), (1 : Nat)); ((_yscan1r).1, ((_yscan1l).2 + (_yscan1r).2))))); ((_yscan2r).1, ((_yscan2l).2 + (_yscan2r).2))))) (_yscan2l).1 (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (fun _ => (_root_.LexLeanPreservation.conv_var rfl)) (fun _ => (let _yscan2r : (Prod Bool Nat) := (let _yscan1l : (Prod Bool Nat) := ((Reasoning.Clinic.Tachypnea.guard (_ys)), (1 : Nat)); (if (_yscan1l).1 then _yscan1l else (let _yscan1r : (Prod Bool Nat) := ((Reasoning.Clinic.Leukocytosis.guard (_ys)), (1 : Nat)); ((_yscan1r).1, ((_yscan1l).2 + (_yscan1r).2))))); _root_.LexLeanPreservation.conv_let (let _yscan1l : (Prod Bool Nat) := ((Reasoning.Clinic.Tachypnea.guard (_ys)), (1 : Nat)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_16 (_ys))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else (((((Bool.true && Bool.true) && (__fits_17 (_ys))) && (Bool.true && Bool.true)) && Bool.true) && (let _yscan1r : (Prod Bool Nat) := ((Reasoning.Clinic.Leukocytosis.guard (_ys)), (1 : Nat)); ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((_yscan1l).2 + (_yscan1r).2) 18446744073709551616)) && Bool.true)) && Bool.true))))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then _yscan1l else (let _yscan1r : (Prod Bool Nat) := ((Reasoning.Clinic.Leukocytosis.guard (_ys)), (1 : Nat)); ((_yscan1r).1, ((_yscan1l).2 + (_yscan1r).2))))) (_yscan1l).1 (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (fun _ => (_root_.LexLeanPreservation.conv_var rfl)) (fun _ => (let _yscan1r : (Prod Bool Nat) := ((Reasoning.Clinic.Leukocytosis.guard (_ys)), (1 : Nat)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_17 (_ys))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (_yscan1l).2 (_yscan1r).2)) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))))) (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (_yscan2l).2 (_yscan2r).2)) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else (((((((Bool.true && Bool.true) && (__fits_18 (_ys))) && (Bool.true && Bool.true)) && Bool.true) && (let _yscan3l : (Prod Bool Nat) := ((Reasoning.Clinic.Sirs.guard (_ys)), (1 : Nat)); (Bool.true && (if (_yscan3l).1 then Bool.true else (((((Bool.true && Bool.true) && (__fits_19 (_ys))) && (Bool.true && Bool.true)) && Bool.true) && (let _yscan3r : (Prod Bool Nat) := ((Reasoning.Clinic.Sepsis.guard (_ys)), (1 : Nat)); ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((_yscan3l).2 + (_yscan3r).2) 18446744073709551616)) && Bool.true)) && Bool.true))))))) && (let _yscan5l : (Prod Bool Nat) := (let _yscan3l : (Prod Bool Nat) := ((Reasoning.Clinic.Sirs.guard (_ys)), (1 : Nat)); (if (_yscan3l).1 then _yscan3l else (let _yscan3r : (Prod Bool Nat) := ((Reasoning.Clinic.Sepsis.guard (_ys)), (1 : Nat)); ((_yscan3r).1, ((_yscan3l).2 + (_yscan3r).2))))); (Bool.true && (if (_yscan5l).1 then Bool.true else ((((((Bool.true && Bool.true) && (__fits_20 (_ys))) && (Bool.true && Bool.true)) && Bool.true) && (let _yscan4l : (Prod Bool Nat) := ((Reasoning.Clinic.Shock.guard (_ys)), (1 : Nat)); (Bool.true && (if (_yscan4l).1 then Bool.true else (((((Bool.true && Bool.true) && (__fits_21 (_ys))) && (Bool.true && Bool.true)) && Bool.true) && (let _yscan4r : (Prod Bool Nat) := ((Reasoning.Clinic.Escalate.guard (_ys)), (1 : Nat)); ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((_yscan4l).2 + (_yscan4r).2) 18446744073709551616)) && Bool.true)) && Bool.true))))))) && (let _yscan5r : (Prod Bool Nat) := (let _yscan4l : (Prod Bool Nat) := ((Reasoning.Clinic.Shock.guard (_ys)), (1 : Nat)); (if (_yscan4l).1 then _yscan4l else (let _yscan4r : (Prod Bool Nat) := ((Reasoning.Clinic.Escalate.guard (_ys)), (1 : Nat)); ((_yscan4r).1, ((_yscan4l).2 + (_yscan4r).2))))); ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((_yscan5l).2 + (_yscan5r).2) 18446744073709551616)) && Bool.true)) && Bool.true))))))) && (let _yscan6r : (Prod Bool Nat) := (let _yscan5l : (Prod Bool Nat) := (let _yscan3l : (Prod Bool Nat) := ((Reasoning.Clinic.Sirs.guard (_ys)), (1 : Nat)); (if (_yscan3l).1 then _yscan3l else (let _yscan3r : (Prod Bool Nat) := ((Reasoning.Clinic.Sepsis.guard (_ys)), (1 : Nat)); ((_yscan3r).1, ((_yscan3l).2 + (_yscan3r).2))))); (if (_yscan5l).1 then _yscan5l else (let _yscan5r : (Prod Bool Nat) := (let _yscan4l : (Prod Bool Nat) := ((Reasoning.Clinic.Shock.guard (_ys)), (1 : Nat)); (if (_yscan4l).1 then _yscan4l else (let _yscan4r : (Prod Bool Nat) := ((Reasoning.Clinic.Escalate.guard (_ys)), (1 : Nat)); ((_yscan4r).1, ((_yscan4l).2 + (_yscan4r).2))))); ((_yscan5r).1, ((_yscan5l).2 + (_yscan5r).2))))); ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((_yscan6l).2 + (_yscan6r).2) 18446744073709551616)) && Bool.true)) && Bool.true))))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then _yscan6l else (let _yscan6r : (Prod Bool Nat) := (let _yscan5l : (Prod Bool Nat) := (let _yscan3l : (Prod Bool Nat) := ((Reasoning.Clinic.Sirs.guard (_ys)), (1 : Nat)); (if (_yscan3l).1 then _yscan3l else (let _yscan3r : (Prod Bool Nat) := ((Reasoning.Clinic.Sepsis.guard (_ys)), (1 : Nat)); ((_yscan3r).1, ((_yscan3l).2 + (_yscan3r).2))))); (if (_yscan5l).1 then _yscan5l else (let _yscan5r : (Prod Bool Nat) := (let _yscan4l : (Prod Bool Nat) := ((Reasoning.Clinic.Shock.guard (_ys)), (1 : Nat)); (if (_yscan4l).1 then _yscan4l else (let _yscan4r : (Prod Bool Nat) := ((Reasoning.Clinic.Escalate.guard (_ys)), (1 : Nat)); ((_yscan4r).1, ((_yscan4l).2 + (_yscan4r).2))))); ((_yscan5r).1, ((_yscan5l).2 + (_yscan5r).2))))); ((_yscan6r).1, ((_yscan6l).2 + (_yscan6r).2))))) (_yscan6l).1 (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (fun _ => (_root_.LexLeanPreservation.conv_var rfl)) (fun _ => (let _yscan6r : (Prod Bool Nat) := (let _yscan5l : (Prod Bool Nat) := (let _yscan3l : (Prod Bool Nat) := ((Reasoning.Clinic.Sirs.guard (_ys)), (1 : Nat)); (if (_yscan3l).1 then _yscan3l else (let _yscan3r : (Prod Bool Nat) := ((Reasoning.Clinic.Sepsis.guard (_ys)), (1 : Nat)); ((_yscan3r).1, ((_yscan3l).2 + (_yscan3r).2))))); (if (_yscan5l).1 then _yscan5l else (let _yscan5r : (Prod Bool Nat) := (let _yscan4l : (Prod Bool Nat) := ((Reasoning.Clinic.Shock.guard (_ys)), (1 : Nat)); (if (_yscan4l).1 then _yscan4l else (let _yscan4r : (Prod Bool Nat) := ((Reasoning.Clinic.Escalate.guard (_ys)), (1 : Nat)); ((_yscan4r).1, ((_yscan4l).2 + (_yscan4r).2))))); ((_yscan5r).1, ((_yscan5l).2 + (_yscan5r).2))))); _root_.LexLeanPreservation.conv_let (let _yscan5l : (Prod Bool Nat) := (let _yscan3l : (Prod Bool Nat) := ((Reasoning.Clinic.Sirs.guard (_ys)), (1 : Nat)); (if (_yscan3l).1 then _yscan3l else (let _yscan3r : (Prod Bool Nat) := ((Reasoning.Clinic.Sepsis.guard (_ys)), (1 : Nat)); ((_yscan3r).1, ((_yscan3l).2 + (_yscan3r).2))))); _root_.LexLeanPreservation.conv_let (let _yscan3l : (Prod Bool Nat) := ((Reasoning.Clinic.Sirs.guard (_ys)), (1 : Nat)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_18 (_ys))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else (((((Bool.true && Bool.true) && (__fits_19 (_ys))) && (Bool.true && Bool.true)) && Bool.true) && (let _yscan3r : (Prod Bool Nat) := ((Reasoning.Clinic.Sepsis.guard (_ys)), (1 : Nat)); ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((_yscan3l).2 + (_yscan3r).2) 18446744073709551616)) && Bool.true)) && Bool.true))))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then _yscan3l else (let _yscan3r : (Prod Bool Nat) := ((Reasoning.Clinic.Sepsis.guard (_ys)), (1 : Nat)); ((_yscan3r).1, ((_yscan3l).2 + (_yscan3r).2))))) (_yscan3l).1 (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (fun _ => (_root_.LexLeanPreservation.conv_var rfl)) (fun _ => (let _yscan3r : (Prod Bool Nat) := ((Reasoning.Clinic.Sepsis.guard (_ys)), (1 : Nat)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_19 (_ys))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (_yscan3l).2 (_yscan3r).2)) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else ((((((Bool.true && Bool.true) && (__fits_20 (_ys))) && (Bool.true && Bool.true)) && Bool.true) && (let _yscan4l : (Prod Bool Nat) := ((Reasoning.Clinic.Shock.guard (_ys)), (1 : Nat)); (Bool.true && (if (_yscan4l).1 then Bool.true else (((((Bool.true && Bool.true) && (__fits_21 (_ys))) && (Bool.true && Bool.true)) && Bool.true) && (let _yscan4r : (Prod Bool Nat) := ((Reasoning.Clinic.Escalate.guard (_ys)), (1 : Nat)); ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((_yscan4l).2 + (_yscan4r).2) 18446744073709551616)) && Bool.true)) && Bool.true))))))) && (let _yscan5r : (Prod Bool Nat) := (let _yscan4l : (Prod Bool Nat) := ((Reasoning.Clinic.Shock.guard (_ys)), (1 : Nat)); (if (_yscan4l).1 then _yscan4l else (let _yscan4r : (Prod Bool Nat) := ((Reasoning.Clinic.Escalate.guard (_ys)), (1 : Nat)); ((_yscan4r).1, ((_yscan4l).2 + (_yscan4r).2))))); ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((_yscan5l).2 + (_yscan5r).2) 18446744073709551616)) && Bool.true)) && Bool.true))))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then _yscan5l else (let _yscan5r : (Prod Bool Nat) := (let _yscan4l : (Prod Bool Nat) := ((Reasoning.Clinic.Shock.guard (_ys)), (1 : Nat)); (if (_yscan4l).1 then _yscan4l else (let _yscan4r : (Prod Bool Nat) := ((Reasoning.Clinic.Escalate.guard (_ys)), (1 : Nat)); ((_yscan4r).1, ((_yscan4l).2 + (_yscan4r).2))))); ((_yscan5r).1, ((_yscan5l).2 + (_yscan5r).2))))) (_yscan5l).1 (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (fun _ => (_root_.LexLeanPreservation.conv_var rfl)) (fun _ => (let _yscan5r : (Prod Bool Nat) := (let _yscan4l : (Prod Bool Nat) := ((Reasoning.Clinic.Shock.guard (_ys)), (1 : Nat)); (if (_yscan4l).1 then _yscan4l else (let _yscan4r : (Prod Bool Nat) := ((Reasoning.Clinic.Escalate.guard (_ys)), (1 : Nat)); ((_yscan4r).1, ((_yscan4l).2 + (_yscan4r).2))))); _root_.LexLeanPreservation.conv_let (let _yscan4l : (Prod Bool Nat) := ((Reasoning.Clinic.Shock.guard (_ys)), (1 : Nat)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_20 (_ys))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else (((((Bool.true && Bool.true) && (__fits_21 (_ys))) && (Bool.true && Bool.true)) && Bool.true) && (let _yscan4r : (Prod Bool Nat) := ((Reasoning.Clinic.Escalate.guard (_ys)), (1 : Nat)); ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((_yscan4l).2 + (_yscan4r).2) 18446744073709551616)) && Bool.true)) && Bool.true))))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then _yscan4l else (let _yscan4r : (Prod Bool Nat) := ((Reasoning.Clinic.Escalate.guard (_ys)), (1 : Nat)); ((_yscan4r).1, ((_yscan4l).2 + (_yscan4r).2))))) (_yscan4l).1 (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (fun _ => (_root_.LexLeanPreservation.conv_var rfl)) (fun _ => (let _yscan4r : (Prod Bool Nat) := ((Reasoning.Clinic.Escalate.guard (_ys)), (1 : Nat)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_21 (_ys))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (_yscan4l).2 (_yscan4r).2)) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))))) (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (_yscan5l).2 (_yscan5r).2)) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))))) (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (_yscan6l).2 (_yscan6r).2)) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair)))))) + +def __fits_5 (_yr : (Reasoning.Clinic.Triage.Run)) : Bool := + (((Bool.true && Bool.true) && (__fits_9 ((_yr).state))) && (match (Reasoning.Clinic.Triage.select ((_yr).state)) with | Option.none => (Bool.true && Bool.true) | Option.some _ystep => (((Bool.true && (Bool.true && Bool.true)) && (__fits_10 ((_yr).state) (_ystep))) && (match (Reasoning.Clinic.Triage.fire ((_yr).state) (_ystep)) with | Option.none => (Bool.true && Bool.true) | Option.some _yt => ((((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).iterations + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (((Bool.true && Bool.true) && (__fits_11 ((_yr).state))) && Bool.true)) && (Nat.blt (((_yr).ledger).attempts + (Reasoning.Clinic.Triage.attempts ((_yr).state))) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).firings + (1 : Nat)) 18446744073709551616)) && (Bool.true && (Bool.true && (Bool.true && Bool.true)))))) && Bool.true) && Bool.true))) && Bool.true) && Bool.true) && Bool.true))))) + +attribute [local irreducible] Reasoning.Clinic.Triage.attempts Reasoning.Clinic.Triage.fire Reasoning.Clinic.Triage.select in +theorem __rel_5 (_yr : (Reasoning.Clinic.Triage.Run)) : _root_.LexLeanPreservation.FunRel __prog 5 [(__enc_2 _yr)] (_root_.LexLeanPreservation.Rel (__fits_5 _yr) ((_root_.LexLeanPreservation.encOption __enc_2) (Reasoning.Clinic.Triage.step _yr))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_1) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.none => (Bool.true && Bool.true) | Option.some _ystep => (((Bool.true && (Bool.true && Bool.true)) && (__fits_10 ((_yr).state) (_ystep))) && (match (Reasoning.Clinic.Triage.fire ((_yr).state) (_ystep)) with | Option.none => (Bool.true && Bool.true) | Option.some _yt => ((((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).iterations + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (((Bool.true && Bool.true) && (__fits_11 ((_yr).state))) && Bool.true)) && (Nat.blt (((_yr).ledger).attempts + (Reasoning.Clinic.Triage.attempts ((_yr).state))) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).firings + (1 : Nat)) 18446744073709551616)) && (Bool.true && (Bool.true && (Bool.true && Bool.true)))))) && Bool.true) && Bool.true))) && Bool.true) && Bool.true) && Bool.true))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_2) (match __a with | Option.none => (Option.none : (Option (Reasoning.Clinic.Triage.Run))) | Option.some _ystep => (match (Reasoning.Clinic.Triage.fire ((_yr).state) (_ystep)) with | Option.none => (Option.none : (Option (Reasoning.Clinic.Triage.Run))) | Option.some _yt => (Option.some (({ state := _yt, trace := (_root_.LexLeanRuntime.append ((_yr).trace) ((_ystep :: ([] : List (Reasoning.Clinic.Triage.Step)))) : (List (Reasoning.Clinic.Triage.Step))), ledger := ({ iterations := (((_yr).ledger).iterations + (1 : Nat)), attempts := (((_yr).ledger).attempts + (Reasoning.Clinic.Triage.attempts ((_yr).state))), firings := (((_yr).ledger).firings + (1 : Nat)), expansions := ((_yr).ledger).expansions, verifications := ((_yr).ledger).verifications, frontier := ((_yr).ledger).frontier } : (Reasoning.Clinic.Triage.Ledger)) } : (Reasoning.Clinic.Triage.Run))) : (Option (Reasoning.Clinic.Triage.Run)))))) (Reasoning.Clinic.Triage.select ((_yr).state)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_9 ((_yr).state))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) | Option.some _ystep => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_3) (fun (__a : (Option (Reasoning.Clinic.Chart))) => (match __a with | Option.none => (Bool.true && Bool.true) | Option.some _yt => ((((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).iterations + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (((Bool.true && Bool.true) && (__fits_11 ((_yr).state))) && Bool.true)) && (Nat.blt (((_yr).ledger).attempts + (Reasoning.Clinic.Triage.attempts ((_yr).state))) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).firings + (1 : Nat)) 18446744073709551616)) && (Bool.true && (Bool.true && (Bool.true && Bool.true)))))) && Bool.true) && Bool.true))) && Bool.true) && Bool.true) && Bool.true))) (fun (__a : (Option (Reasoning.Clinic.Chart))) => (_root_.LexLeanPreservation.encOption __enc_2) (match __a with | Option.none => (Option.none : (Option (Reasoning.Clinic.Triage.Run))) | Option.some _yt => (Option.some (({ state := _yt, trace := (_root_.LexLeanRuntime.append ((_yr).trace) ((_ystep :: ([] : List (Reasoning.Clinic.Triage.Step)))) : (List (Reasoning.Clinic.Triage.Step))), ledger := ({ iterations := (((_yr).ledger).iterations + (1 : Nat)), attempts := (((_yr).ledger).attempts + (Reasoning.Clinic.Triage.attempts ((_yr).state))), firings := (((_yr).ledger).firings + (1 : Nat)), expansions := ((_yr).ledger).expansions, verifications := ((_yr).ledger).verifications, frontier := ((_yr).ledger).frontier } : (Reasoning.Clinic.Triage.Ledger)) } : (Reasoning.Clinic.Triage.Run))) : (Option (Reasoning.Clinic.Triage.Run))))) (Reasoning.Clinic.Triage.fire ((_yr).state) (_ystep)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_10 ((_yr).state) (_ystep))) (fun (__a : (Option (Reasoning.Clinic.Chart))) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) | Option.some _yt => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc __enc_1) (_yr).trace (_ystep :: ([] : List (Reasoning.Clinic.Triage.Step))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((_yr).ledger).iterations (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_11 ((_yr).state))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((_yr).ledger).attempts (Reasoning.Clinic.Triage.attempts ((_yr).state)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((_yr).ledger).firings (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) _root_.LexLeanPreservation.convL_nil)))))) _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil))) _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some))))))))) + +def __fits_12 (patient : (Reasoning.Clinic.Vitals)) : Bool := + ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) + +theorem __rel_12 (patient : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 12 [(__enc_0 patient)] (_root_.LexLeanPreservation.Rel (__fits_12 patient) (__enc_3 (Reasoning.Clinic.Triage.observe patient))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) + +def __fits_6 (patient : (Reasoning.Clinic.Vitals)) : Bool := + ((((Bool.true && Bool.true) && (__fits_12 (patient))) && ((Bool.true && Bool.true) && (((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true)))))) && Bool.true) && Bool.true))) && Bool.true) + +attribute [local irreducible] Reasoning.Clinic.Triage.observe in +theorem __rel_6 (patient : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 6 [(__enc_0 patient)] (_root_.LexLeanPreservation.Rel (__fits_6 patient) (__enc_2 (Reasoning.Clinic.Triage.start patient))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_12 (patient))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)))))) _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil))) _root_.LexLeanPreservation.construct_adt) + +def __fits_2 (patient : (Reasoning.Clinic.Vitals)) : Bool := + ((Bool.true && (Bool.true && (((Bool.true && Bool.true) && (__fits_6 (patient))) && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : (Reasoning.Clinic.Triage.Run)) => __fits_5 __p0) ((Reasoning.Clinic.Triage.step)) ((11 : Nat)) ((Reasoning.Clinic.Triage.start (patient))))) + +attribute [local irreducible] Reasoning.Clinic.Triage.start in +theorem __rel_2 (patient : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 2 [(__enc_0 patient)] (_root_.LexLeanPreservation.Rel (__fits_2 patient) ((_root_.LexLeanPreservation.encPair __enc_2 _root_.LexLeanTarget.TargetSyntax.Value.bool) (Reasoning.Clinic.Triage.run patient))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_6 (patient))) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterateUntil (es := __enc_2) (_root_.LexLeanPreservation.optEnc __enc_2) (fun _ => rfl) (_root_.LexLeanPreservation.encPair __enc_2 _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) ((Reasoning.Clinic.Triage.step)) (fun (__p0 : (Reasoning.Clinic.Triage.Run)) => __fits_5 __p0) 5 [] (fun (__p0 : (Reasoning.Clinic.Triage.Run)) => __rel_5 __p0) (_root_.LexLeanCollections.iterateUntil ((Reasoning.Clinic.Triage.step))) (fun _ => rfl) (fun _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (p := __prog) (fi := 4) (ts := (.adt 2)) rfl ((11 : Nat)) ((Reasoning.Clinic.Triage.start (patient))))) + +def __fits_8 (chart : (Reasoning.Clinic.Chart)) : Bool := + ((Bool.true && Bool.true) && Bool.true) + +theorem __rel_8 (chart : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 8 [(__enc_3 chart)] (_root_.LexLeanPreservation.Rel (__fits_8 chart) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Clinic.Triage.extract chart))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some) + +def __fits_13 (v : (Reasoning.Clinic.Vitals)) (r : Nat) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.ble r (3 : Nat)) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq r (3 : Nat)) then (Bool.true && Bool.true) else (((((Bool.true && Bool.true) && (__fits_30 (v))) && (if (Reasoning.Clinic.hypotensive (v)) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (v).infection (1 : Nat)) then (((Bool.true && Bool.true) && (__fits_31 (v))) && (if (Reasoning.Clinic.feverish (v)) then ((Bool.true && Bool.true) && (__fits_32 (v))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && Bool.true) && Bool.true))) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.feverish Reasoning.Clinic.hypotensive Reasoning.Clinic.tachycardic in +theorem __rel_13 (v : (Reasoning.Clinic.Vitals)) (r : Nat) : _root_.LexLeanPreservation.FunRel __prog 13 [(__enc_0 v), (_root_.LexLeanTarget.TargetSyntax.Value.nat r)] (_root_.LexLeanPreservation.Rel (__fits_13 v r) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.recommendationCheck v r))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq r (3 : Nat)) then (Bool.true && Bool.true) else (((((Bool.true && Bool.true) && (__fits_30 (v))) && (if (Reasoning.Clinic.hypotensive (v)) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (v).infection (1 : Nat)) then (((Bool.true && Bool.true) && (__fits_31 (v))) && (if (Reasoning.Clinic.feverish (v)) then ((Bool.true && Bool.true) && (__fits_32 (v))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && Bool.true) && Bool.true))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && ((Nat.beq r (3 : Nat)) || (!((Reasoning.Clinic.hypotensive (v)) && ((Nat.beq (v).infection (1 : Nat)) && ((Reasoning.Clinic.feverish (v)) && (Reasoning.Clinic.tachycardic (v))))))))) (Nat.ble r (3 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe r (3 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (Bool.true && Bool.true) else (((((Bool.true && Bool.true) && (__fits_30 (v))) && (if (Reasoning.Clinic.hypotensive (v)) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (v).infection (1 : Nat)) then (((Bool.true && Bool.true) && (__fits_31 (v))) && (if (Reasoning.Clinic.feverish (v)) then ((Bool.true && Bool.true) && (__fits_32 (v))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && Bool.true) && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b || (!((Reasoning.Clinic.hypotensive (v)) && ((Nat.beq (v).infection (1 : Nat)) && ((Reasoning.Clinic.feverish (v)) && (Reasoning.Clinic.tachycardic (v)))))))) (Nat.beq r (3 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq r (3 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (v).infection (1 : Nat)) then (((Bool.true && Bool.true) && (__fits_31 (v))) && (if (Reasoning.Clinic.feverish (v)) then ((Bool.true && Bool.true) && (__fits_32 (v))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && ((Nat.beq (v).infection (1 : Nat)) && ((Reasoning.Clinic.feverish (v)) && (Reasoning.Clinic.tachycardic (v)))))) (Reasoning.Clinic.hypotensive (v)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_30 (v))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (((Bool.true && Bool.true) && (__fits_31 (v))) && (if (Reasoning.Clinic.feverish (v)) then ((Bool.true && Bool.true) && (__fits_32 (v))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && ((Reasoning.Clinic.feverish (v)) && (Reasoning.Clinic.tachycardic (v))))) (Nat.beq (v).infection (1 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (v).infection (1 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && (__fits_32 (v))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Reasoning.Clinic.tachycardic (v)))) (Reasoning.Clinic.feverish (v)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_31 (v))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_32 (v)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_boolNot ((Reasoning.Clinic.hypotensive (v)) && ((Nat.beq (v).infection (1 : Nat)) && ((Reasoning.Clinic.feverish (v)) && (Reasoning.Clinic.tachycardic (v)))))))))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) + +def __fits_7 (patient : (Reasoning.Clinic.Vitals)) (_ys : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && Bool.true) && (__fits_8 (_ys))) && (match (Reasoning.Clinic.Triage.extract (_ys)) with | Option.none => (Bool.true && Bool.true) | Option.some _yv => (((Bool.true && (Bool.true && Bool.true)) && (__fits_13 (patient) (_yv))) && (if (Reasoning.Clinic.recommendationCheck (patient) (_yv)) then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) + +attribute [local irreducible] Reasoning.Clinic.Triage.extract Reasoning.Clinic.recommendationCheck in +theorem __rel_7 (patient : (Reasoning.Clinic.Vitals)) (_ys : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 7 [(__enc_0 patient), (__enc_3 _ys)] (_root_.LexLeanPreservation.Rel (__fits_7 patient _ys) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Clinic.Triage.accept patient _ys))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Option Nat)) => (match __a with | Option.none => (Bool.true && Bool.true) | Option.some _yv => (((Bool.true && (Bool.true && Bool.true)) && (__fits_13 (patient) (_yv))) && (if (Reasoning.Clinic.recommendationCheck (patient) (_yv)) then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__a : (Option Nat)) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (match __a with | Option.none => (Option.none : (Option Nat)) | Option.some _yv => (if (Reasoning.Clinic.recommendationCheck (patient) (_yv)) then (Option.some (_yv) : (Option Nat)) else (Option.none : (Option Nat))))) (Reasoning.Clinic.Triage.extract (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_8 (_ys))) (fun (__a : (Option Nat)) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) | Option.some _yv => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Option.some (_yv) : (Option Nat)) else (Option.none : (Option Nat)))) (Reasoning.Clinic.recommendationCheck (patient) (_yv)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_13 (patient) (_yv))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))) + +def __fits_3 (patient : (Reasoning.Clinic.Vitals)) (_ys : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && (__fits_7 (patient) (_ys))) && (match (Reasoning.Clinic.Triage.accept (patient) (_ys)) with | Option.some _yv => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_8 (_ys))) && (match (Reasoning.Clinic.Triage.extract (_ys)) with | Option.some _yv => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) + +attribute [local irreducible] Reasoning.Clinic.Triage.accept Reasoning.Clinic.Triage.extract in +theorem __rel_3 (patient : (Reasoning.Clinic.Vitals)) (_ys : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 3 [(__enc_0 patient), (__enc_3 _ys)] (_root_.LexLeanPreservation.Rel (__fits_3 patient _ys) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Clinic.Triage.conclude patient _ys))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Option Nat)) => (match __a with | Option.some _yv => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_8 (_ys))) && (match (Reasoning.Clinic.Triage.extract (_ys)) with | Option.some _yv => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) (fun (__a : (Option Nat)) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (match __a with | Option.some _yv => (Except.ok (_yv) : (Except (Prod Bool Bool) Nat)) | Option.none => (match (Reasoning.Clinic.Triage.extract (_ys)) with | Option.some _yv => (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)) | Option.none => (Except.error (((Bool.false, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat))))) (Reasoning.Clinic.Triage.accept (patient) (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_7 (patient) (_ys))) (fun (__a : (Option Nat)) _ => match __a with | Option.some _yv => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Option Nat)) => (match __a with | Option.some _yv => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__a : (Option Nat)) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (match __a with | Option.some _yv => (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)) | Option.none => (Except.error (((Bool.false, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)))) (Reasoning.Clinic.Triage.extract (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_8 (_ys))) (fun (__a : (Option Nat)) _ => match __a with | Option.some _yv => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error))))))))) + +def __fits_1 (patient : (Reasoning.Clinic.Vitals)) : Bool := + (((Bool.true && Bool.true) && (__fits_2 (patient))) && (let _yfinal : (Prod (Reasoning.Clinic.Triage.Run) Bool) := (Reasoning.Clinic.Triage.run (patient)); (Bool.true && (match (_yfinal).2 with | Bool.true => (((Bool.true && (Bool.true && Bool.true)) && (__fits_3 (patient) (((_yfinal).1).state))) && (match (Reasoning.Clinic.Triage.conclude (patient) (((_yfinal).1).state)) with | Except.ok _yv => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Except.error _ye => ((Bool.true && Bool.true) && Bool.true))) | Bool.false => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) + +attribute [local irreducible] Reasoning.Clinic.Triage.conclude Reasoning.Clinic.Triage.run in +theorem __rel_1 (patient : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 1 [(__enc_0 patient)] (_root_.LexLeanPreservation.Rel (__fits_1 patient) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList __enc_1))) (Reasoning.Clinic.Triage patient))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (let _yfinal : (Prod (Reasoning.Clinic.Triage.Run) Bool) := (Reasoning.Clinic.Triage.run (patient)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_2 (patient))) (_root_.LexLeanPreservation.conv_matchV _root_.LexLeanTarget.TargetSyntax.Value.bool (fun (__a : Bool) => (match __a with | Bool.true => (((Bool.true && (Bool.true && Bool.true)) && (__fits_3 (patient) (((_yfinal).1).state))) && (match (Reasoning.Clinic.Triage.conclude (patient) (((_yfinal).1).state)) with | Except.ok _yv => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Except.error _ye => ((Bool.true && Bool.true) && Bool.true))) | Bool.false => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__a : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList __enc_1))) (match __a with | Bool.true => (match (Reasoning.Clinic.Triage.conclude (patient) (((_yfinal).1).state)) with | Except.ok _yv => (Except.ok ((_yv, ((_yfinal).1).trace)) : (Except (Prod Bool Bool) (Prod Nat (List (Reasoning.Clinic.Triage.Step))))) | Except.error _ye => (Except.error (_ye) : (Except (Prod Bool Bool) (Prod Nat (List (Reasoning.Clinic.Triage.Step)))))) | Bool.false => (Except.error (((Bool.false, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod Nat (List (Reasoning.Clinic.Triage.Step))))))) (_yfinal).2 (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (fun (__a : Bool) _ => match __a with | Bool.true => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Except (Prod Bool Bool) Nat)) => (match __a with | Except.ok _yv => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Except.error _ye => ((Bool.true && Bool.true) && Bool.true))) (fun (__a : (Except (Prod Bool Bool) Nat)) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList __enc_1))) (match __a with | Except.ok _yv => (Except.ok ((_yv, ((_yfinal).1).trace)) : (Except (Prod Bool Bool) (Prod Nat (List (Reasoning.Clinic.Triage.Step))))) | Except.error _ye => (Except.error (_ye) : (Except (Prod Bool Bool) (Prod Nat (List (Reasoning.Clinic.Triage.Step))))))) (Reasoning.Clinic.Triage.conclude (patient) (((_yfinal).1).state)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_3 (patient) (((_yfinal).1).state))) (fun (__a : (Except (Prod Bool Bool) Nat)) _ => match __a with | Except.ok _yv => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok)) | Except.error _ye => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)))))) | Bool.false => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)))))) + +def __fits_0 (temperature : Nat) (heartRate : Nat) (respiratoryRate : Nat) (whiteCells : Nat) (systolic : Nat) (infection : Nat) : Bool := + (((((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true)))))) && Bool.true) && Bool.true) && (__fits_1 (({ temperature := temperature, heartRate := heartRate, respiratoryRate := respiratoryRate, whiteCells := whiteCells, systolic := systolic, infection := infection } : (Reasoning.Clinic.Vitals))))) && (match (Reasoning.Clinic.Triage (({ temperature := temperature, heartRate := heartRate, respiratoryRate := respiratoryRate, whiteCells := whiteCells, systolic := systolic, infection := infection } : (Reasoning.Clinic.Vitals)))) with | Except.ok explained => ((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length ((explained).2) : Nat) 18446744073709551616)) | Except.error failure => Bool.true)) + +attribute [local irreducible] Reasoning.Clinic.Triage in +theorem __rel_0 (temperature : Nat) (heartRate : Nat) (respiratoryRate : Nat) (whiteCells : Nat) (systolic : Nat) (infection : Nat) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat temperature), (_root_.LexLeanTarget.TargetSyntax.Value.nat heartRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat respiratoryRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat whiteCells), (_root_.LexLeanTarget.TargetSyntax.Value.nat systolic), (_root_.LexLeanTarget.TargetSyntax.Value.nat infection)] (_root_.LexLeanPreservation.Rel (__fits_0 temperature heartRate respiratoryRate whiteCells systolic infection) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.triageSteps temperature heartRate respiratoryRate whiteCells systolic infection))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList __enc_1))) (fun (__a : (Except (Prod Bool Bool) (Prod Nat (List (Reasoning.Clinic.Triage.Step))))) => (match __a with | Except.ok explained => ((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length ((explained).2) : Nat) 18446744073709551616)) | Except.error failure => Bool.true)) (fun (__a : (Except (Prod Bool Bool) (Prod Nat (List (Reasoning.Clinic.Triage.Step))))) => _root_.LexLeanTarget.TargetSyntax.Value.nat (match __a with | Except.ok explained => (_root_.LexLeanRuntime.length ((explained).2) : Nat) | Except.error failure => (0 : Nat))) (Reasoning.Clinic.Triage (({ temperature := temperature, heartRate := heartRate, respiratoryRate := respiratoryRate, whiteCells := whiteCells, systolic := systolic, infection := infection } : (Reasoning.Clinic.Vitals)))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)))))) _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) (__rel_1 (({ temperature := temperature, heartRate := heartRate, respiratoryRate := respiratoryRate, whiteCells := whiteCells, systolic := systolic, infection := infection } : (Reasoning.Clinic.Vitals))))) (fun (__a : (Except (Prod Bool Bool) (Prod Nat (List (Reasoning.Clinic.Triage.Step))))) _ => match __a with | Except.ok explained => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc __enc_1) (explained).2))) | Except.error failure => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value)))) + +def denote (temperature : Nat) (heartRate : Nat) (respiratoryRate : Nat) (whiteCells : Nat) (systolic : Nat) (infection : Nat) : _root_.LexLeanPreservation.Obs := + _root_.cond (__fits_0 temperature heartRate respiratoryRate whiteCells systolic infection) (_root_.LexLeanPreservation.Obs.value ((_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.triageSteps temperature heartRate respiratoryRate whiteCells systolic infection)))) _root_.LexLeanPreservation.Obs.overflow + +theorem root (temperature : Nat) (heartRate : Nat) (respiratoryRate : Nat) (whiteCells : Nat) (systolic : Nat) (infection : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat temperature), (_root_.LexLeanTarget.TargetSyntax.Value.nat heartRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat respiratoryRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat whiteCells), (_root_.LexLeanTarget.TargetSyntax.Value.nat systolic), (_root_.LexLeanTarget.TargetSyntax.Value.nat infection)] (_root_.LexLeanPreservation.Rel (__fits_0 temperature heartRate respiratoryRate whiteCells systolic infection) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.triageSteps temperature heartRate respiratoryRate whiteCells systolic infection))) := + _root_.LexLeanPreservation.run_of_funRel (__rel_0 temperature heartRate respiratoryRate whiteCells systolic infection) + +end LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2 diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R2/Compose/RustStd.lex.tex b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R2/Compose/RustStd.lex.tex new file mode 100644 index 000000000..e1ca87eb6 --- /dev/null +++ b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R2/Compose/RustStd.lex.tex @@ -0,0 +1,1741 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2, + LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.Compose.RustStd.__wt_0 : @16 := @716 { + all: [LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.Compose.RustStd.__wt_0], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.Compose.RustStd.__wt_1 : @724 := @960 { + all: [LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.Compose.RustStd.__wt_1], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.Compose.RustStd.__wt_3 : @967 := @1631 { + all: [LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.Compose.RustStd.__wt_3], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.Compose.RustStd.__wt_4 : @1638 := @2091 { + all: [LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.Compose.RustStd.__wt_4], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.Compose.RustStd.__wt_2 : @2098 := @2458 { + all: [LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.Compose.RustStd.__wt_2], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.Compose.RustStd.root : @3543 := @3544 { + all: [LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.RustStd.program +@1 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.RustStd.krate +@2 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.RustStd.flags +@3 := Reasoning.Clinic.Vitals +@4 := #0 +@5 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.__enc_0 +@6 := @5 @4 +@7 := LexLeanPreservation.Rust.WT +@8 := LexLeanTarget.TargetSyntax.Ty.adt +@9 := 0 +@10 := @8 @9 +@11 := @7 @0 +@12 := @11 @1 +@13 := @12 @2 +@16 := (__s : @3) -> @13 @6 @10 +@17 := Reasoning.Clinic.Vitals.temperature +@18 := @17 @4 +@19 := Reasoning.Clinic.Vitals.heartRate +@20 := @19 @4 +@21 := Reasoning.Clinic.Vitals.respiratoryRate +@22 := @21 @4 +@23 := Reasoning.Clinic.Vitals.whiteCells +@24 := @23 @4 +@25 := Reasoning.Clinic.Vitals.systolic +@26 := @25 @4 +@27 := Reasoning.Clinic.Vitals.infection +@28 := @27 @4 +@29 := LexLeanTarget.TargetSyntax.Value.nat +@30 := @29 @18 +@31 := LexLeanTarget.TargetSyntax.Ty.nat +@32 := LexLeanTarget.TargetSyntax.Program +@33 := LexLeanPreservation.Rust.RCrate +@34 := LexLeanPreservation.Rust.Flags +@35 := Nat +@36 := #3 +@37 := @7 @36 +@38 := #2 +@39 := @37 @38 +@40 := #1 +@41 := @39 @40 +@42 := @29 @4 +@48 := {p : @32} -> {c : @33} -> {A : @34} -> (n : @35) -> @41 @42 @31 +@50 := LexLeanPreservation.Rust.wt_nat @0 +@57 := {c : @33} -> {A : @34} -> (n : @35) -> @11 @38 @40 @42 @31 +@58 := @50 @1 +@63 := {A : @34} -> (n : @35) -> @12 @40 @42 @31 +@64 := @58 @2 +@67 := (n : @35) -> @13 @42 @31 +@68 := @64 @18 +@70 := @13 @30 @31 +@71 := @29 @20 +@72 := @64 @20 +@74 := @13 @71 @31 +@75 := @29 @22 +@76 := @64 @22 +@78 := @13 @75 @31 +@79 := @29 @24 +@80 := @64 @24 +@82 := @13 @79 @31 +@83 := @29 @26 +@84 := @64 @26 +@86 := @13 @83 @31 +@87 := @29 @28 +@88 := @64 @28 +@90 := @13 @87 @31 +@91 := LexLeanTarget.TargetSyntax.Value +@92 := LexLeanTarget.TargetSyntax.Ty +@93 := List.nil.{0} +@94 := List.cons.{0} +@95 := @93 @91 +@96 := @94 @91 +@98 := @96 @87 @95 +@100 := @96 @83 @98 +@102 := @96 @79 @100 +@104 := @96 @75 @102 +@106 := @96 @71 @104 +@108 := @96 @30 @106 +@109 := @93 @92 +@110 := @94 @92 +@111 := @110 @31 +@112 := @111 @109 +@113 := @111 @112 +@114 := @111 @113 +@115 := @111 @114 +@116 := @111 @115 +@117 := @111 @116 +@118 := LexLeanPreservation.Rust.WTL +@126 := {p : @32} -> {c : @33} -> {A : @34} -> @118 @38 @40 @4 @95 @109 +@128 := LexLeanPreservation.Rust.wtl_nil @0 +@129 := @118 @0 +@135 := {c : @33} -> {A : @34} -> @129 @40 @4 @95 @109 +@136 := @128 @1 +@137 := @129 @1 +@141 := {A : @34} -> @137 @4 @95 @109 +@142 := @136 @2 +@143 := @137 @2 +@144 := @143 @95 +@145 := @144 @109 +@146 := List.{0} +@147 := @146 @91 +@148 := @146 @92 +@149 := #6 +@150 := @7 @149 +@151 := #5 +@152 := @150 @151 +@153 := #4 +@154 := @152 @153 +@156 := @154 @36 @38 +@157 := #7 +@162 := @118 @157 @149 @151 @38 @40 +@163 := #8 +@166 := @118 @163 @157 @149 +@168 := @96 @151 @36 +@169 := @166 @168 +@171 := @110 @153 @38 +@181 := {p : @32} -> + {c : @33} -> + {A : @34} -> + {v : @91} -> {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @156) -> (hs : @162) -> @169 @171 +@183 := LexLeanPreservation.Rust.wtl_cons @0 +@185 := @11 @151 @153 +@187 := @185 @36 @38 +@191 := @129 @149 @151 @38 @40 +@203 := {c : @33} -> + {A : @34} -> + {v : @91} -> + {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @187) -> (hs : @191) -> @129 @157 @149 @168 @171 +@204 := @183 @1 +@205 := @12 @153 +@207 := @205 @36 @38 +@210 := @137 @151 @38 @40 +@220 := {A : @34} -> + {v : @91} -> + {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @207) -> (hs : @210) -> @137 @149 @168 @171 +@221 := @204 @2 +@223 := @13 @36 @38 +@225 := @143 @38 @40 +@233 := {v : @91} -> + {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @223) -> (hs : @225) -> @143 @168 @171 +@234 := @221 @87 +@236 := @29 (@27 @36) +@249 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @236 @38) -> (hs : @225) -> @143 (@96 (@29 (@27 @151)) @36) @171 +@250 := @234 @31 +@252 := @29 (@27 @38) +@254 := @13 @252 @31 +@259 := @143 (@96 (@29 (@27 @153)) @36) +@260 := @111 @38 +@265 := {vs : @147} -> {ts : @148} -> (h : @254) -> (hs : @225) -> @259 @260 +@266 := @250 @95 +@268 := @29 (@27 @40) +@270 := @13 @268 @31 +@271 := @144 @40 +@273 := @96 @236 @95 +@278 := {ts : @148} -> (h : @270) -> (hs : @271) -> @143 @273 @260 +@279 := @266 @109 +@281 := @96 @252 @95 +@282 := @143 @281 +@285 := (h : @90) -> (hs : @145) -> @282 @112 +@286 := @279 @88 +@288 := @96 @268 @95 +@290 := @143 @288 @112 +@291 := (hs : @145) -> @290 +@292 := @286 @142 +@294 := @143 @98 @112 +@295 := @221 @83 +@297 := @29 (@25 @36) +@310 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @297 @38) -> (hs : @225) -> @143 (@96 (@29 (@25 @151)) @36) @171 +@311 := @295 @31 +@313 := @29 (@25 @38) +@325 := {vs : @147} -> + {ts : @148} -> (h : @13 @313 @31) -> (hs : @225) -> @143 (@96 (@29 (@25 @153)) @36) @260 +@326 := @311 @98 +@328 := @29 (@25 @40) +@330 := @13 @328 @31 +@331 := @282 @40 +@333 := @96 @297 @273 +@338 := {ts : @148} -> (h : @330) -> (hs : @331) -> @143 @333 @260 +@339 := @326 @112 +@341 := @96 @313 @281 +@342 := @143 @341 +@345 := (h : @86) -> (hs : @290) -> @342 @113 +@346 := @339 @84 +@348 := @96 @328 @288 +@350 := @143 @348 @113 +@351 := (hs : @294) -> @350 +@352 := @346 @292 +@354 := @143 @100 @113 +@355 := @221 @79 +@357 := @29 (@23 @36) +@370 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @357 @38) -> (hs : @225) -> @143 (@96 (@29 (@23 @151)) @36) @171 +@371 := @355 @31 +@373 := @29 (@23 @38) +@385 := {vs : @147} -> + {ts : @148} -> (h : @13 @373 @31) -> (hs : @225) -> @143 (@96 (@29 (@23 @153)) @36) @260 +@386 := @371 @100 +@388 := @29 (@23 @40) +@390 := @13 @388 @31 +@391 := @342 @40 +@393 := @96 @357 @333 +@398 := {ts : @148} -> (h : @390) -> (hs : @391) -> @143 @393 @260 +@399 := @386 @113 +@401 := @96 @373 @341 +@402 := @143 @401 +@405 := (h : @82) -> (hs : @350) -> @402 @114 +@406 := @399 @80 +@408 := @96 @388 @348 +@410 := @143 @408 @114 +@411 := (hs : @354) -> @410 +@412 := @406 @352 +@414 := @143 @102 @114 +@415 := @221 @75 +@417 := @29 (@21 @36) +@430 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @417 @38) -> (hs : @225) -> @143 (@96 (@29 (@21 @151)) @36) @171 +@431 := @415 @31 +@433 := @29 (@21 @38) +@445 := {vs : @147} -> + {ts : @148} -> (h : @13 @433 @31) -> (hs : @225) -> @143 (@96 (@29 (@21 @153)) @36) @260 +@446 := @431 @102 +@448 := @29 (@21 @40) +@450 := @13 @448 @31 +@451 := @402 @40 +@453 := @96 @417 @393 +@458 := {ts : @148} -> (h : @450) -> (hs : @451) -> @143 @453 @260 +@459 := @446 @114 +@461 := @96 @433 @401 +@462 := @143 @461 +@465 := (h : @78) -> (hs : @410) -> @462 @115 +@466 := @459 @76 +@468 := @96 @448 @408 +@470 := @143 @468 @115 +@471 := (hs : @414) -> @470 +@472 := @466 @412 +@474 := @143 @104 @115 +@475 := @221 @71 +@477 := @29 (@19 @36) +@490 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @477 @38) -> (hs : @225) -> @143 (@96 (@29 (@19 @151)) @36) @171 +@491 := @475 @31 +@493 := @29 (@19 @38) +@505 := {vs : @147} -> + {ts : @148} -> (h : @13 @493 @31) -> (hs : @225) -> @143 (@96 (@29 (@19 @153)) @36) @260 +@506 := @491 @104 +@508 := @29 (@19 @40) +@510 := @13 @508 @31 +@511 := @462 @40 +@513 := @96 @477 @453 +@518 := {ts : @148} -> (h : @510) -> (hs : @511) -> @143 @513 @260 +@519 := @506 @115 +@521 := @96 @493 @461 +@522 := @143 @521 +@525 := (h : @74) -> (hs : @470) -> @522 @116 +@526 := @519 @72 +@528 := @96 @508 @468 +@530 := @143 @528 @116 +@531 := (hs : @474) -> @530 +@532 := @526 @472 +@534 := @143 @106 @116 +@535 := @221 @30 +@537 := @29 (@17 @36) +@550 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @537 @38) -> (hs : @225) -> @143 (@96 (@29 (@17 @151)) @36) @171 +@551 := @535 @31 +@553 := @29 (@17 @38) +@565 := {vs : @147} -> + {ts : @148} -> (h : @13 @553 @31) -> (hs : @225) -> @143 (@96 (@29 (@17 @153)) @36) @260 +@566 := @551 @106 +@568 := @29 (@17 @40) +@570 := @13 @568 @31 +@571 := @522 @40 +@573 := @96 @537 @513 +@578 := {ts : @148} -> (h : @570) -> (hs : @571) -> @143 @573 @260 +@579 := @566 @116 +@581 := @96 @553 @521 +@582 := @143 @581 +@585 := (h : @70) -> (hs : @530) -> @582 @117 +@586 := @579 @68 +@588 := @96 @568 @528 +@590 := @143 @588 @117 +@591 := (hs : @534) -> @590 +@592 := @586 @532 +@594 := @143 @108 @117 +@595 := Eq.{1} +@596 := Option.{0} +@597 := @596 @148 +@598 := @595 @597 +@599 := LexLeanPreservation.Rust.adtFields +@603 := @598 (@599 @149 @36 @38) +@604 := Option.some.{0} +@605 := @604 @148 +@606 := @605 @4 +@607 := @603 @606 +@610 := @7 @163 @157 @149 +@611 := LexLeanTarget.TargetSyntax.Value.adt +@613 := @611 @153 @36 +@614 := @610 @613 +@615 := @8 @151 +@625 := {p : @32} -> + {c : @33} -> + {A : @34} -> + {i : @35} -> {k : @35} -> {fs : @147} -> {tys : @148} -> (h : @607) -> (hf : @162) -> @614 @615 +@627 := LexLeanPreservation.Rust.wt_adt @0 +@628 := @599 @0 +@632 := @598 (@628 @36 @38) @606 +@644 := {c : @33} -> + {A : @34} -> + {i : @35} -> + {k : @35} -> {fs : @147} -> {tys : @148} -> (h : @632) -> (hf : @191) -> @11 @157 @149 @613 @615 +@645 := @627 @1 +@655 := {A : @34} -> + {i : @35} -> + {k : @35} -> {fs : @147} -> {tys : @148} -> (h : @632) -> (hf : @210) -> @12 @149 @613 @615 +@656 := @645 @2 +@657 := @13 @613 +@664 := {i : @35} -> + {k : @35} -> {fs : @147} -> {tys : @148} -> (h : @632) -> (hf : @225) -> @657 @615 +@665 := @656 @9 +@666 := @628 @9 +@675 := {k : @35} -> + {fs : @147} -> {tys : @148} -> (h : @598 (@666 @38) @606) -> (hf : @225) -> @657 @10 +@676 := @665 @9 +@677 := @666 @9 +@678 := @598 @677 +@679 := @678 @606 +@680 := @611 @9 +@682 := @13 (@680 @36) +@687 := {fs : @147} -> {tys : @148} -> (h : @679) -> (hf : @225) -> @682 @10 +@688 := @676 @108 +@695 := {tys : @148} -> (h : @679) -> (hf : @582 @40) -> @13 (@680 @573) @10 +@696 := @688 @117 +@697 := @605 @117 +@703 := (h : @678 @697) -> (hf : @590) -> @13 (@680 @581) @10 +@704 := Eq.refl.{1} +@705 := @704 @597 +@707 := @696 (@705 @677) +@711 := (hf : @594) -> @13 (@680 @588) @10 +@712 := @707 @592 +@715 := @13 (@680 @108) @10 +@716 := fun (__s : @3) => @712 +@717 := Reasoning.Clinic.Triage.Step +@718 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.__enc_1 +@719 := @718 @4 +@720 := 1 +@721 := @8 @720 +@722 := @13 @719 +@723 := @722 @721 +@724 := (__v : @717) -> @723 +@725 := fun (__v : @717) => @723 +@726 := @656 @720 +@727 := @628 @720 +@736 := {k : @35} -> + {fs : @147} -> {tys : @148} -> (h : @598 (@727 @38) @606) -> (hf : @225) -> @657 @721 +@737 := @726 @9 +@738 := @727 @9 +@739 := @598 @738 +@740 := @739 @606 +@745 := {fs : @147} -> {tys : @148} -> (h : @740) -> (hf : @225) -> @682 @721 +@746 := @737 @95 +@749 := @13 (@680 @95) @721 +@752 := {tys : @148} -> (h : @740) -> (hf : @271) -> @749 +@753 := @746 @109 +@754 := @605 @109 +@757 := (h : @739 @754) -> (hf : @145) -> @749 +@760 := @753 (@705 @738) @142 +@761 := @726 @720 +@762 := @727 @720 +@763 := @598 @762 +@764 := @763 @606 +@765 := @611 @720 +@772 := {fs : @147} -> {tys : @148} -> (h : @764) -> (hf : @225) -> @13 (@765 @36) @721 +@773 := @761 @95 +@776 := @13 (@765 @95) @721 +@779 := {tys : @148} -> (h : @764) -> (hf : @271) -> @776 +@780 := @773 @109 +@783 := (h : @763 @754) -> (hf : @145) -> @776 +@786 := @780 (@705 @762) @142 +@787 := 2 +@788 := @726 @787 +@789 := @727 @787 +@790 := @598 @789 +@791 := @790 @606 +@792 := @611 @787 +@799 := {fs : @147} -> {tys : @148} -> (h : @791) -> (hf : @225) -> @13 (@792 @36) @721 +@800 := @788 @95 +@803 := @13 (@792 @95) @721 +@806 := {tys : @148} -> (h : @791) -> (hf : @271) -> @803 +@807 := @800 @109 +@810 := (h : @790 @754) -> (hf : @145) -> @803 +@813 := @807 (@705 @789) @142 +@814 := 3 +@815 := @726 @814 +@816 := @727 @814 +@817 := @598 @816 +@818 := @817 @606 +@819 := @611 @814 +@826 := {fs : @147} -> {tys : @148} -> (h : @818) -> (hf : @225) -> @13 (@819 @36) @721 +@827 := @815 @95 +@830 := @13 (@819 @95) @721 +@833 := {tys : @148} -> (h : @818) -> (hf : @271) -> @830 +@834 := @827 @109 +@837 := (h : @817 @754) -> (hf : @145) -> @830 +@840 := @834 (@705 @816) @142 +@841 := 4 +@842 := @726 @841 +@843 := @727 @841 +@844 := @598 @843 +@845 := @844 @606 +@846 := @611 @841 +@853 := {fs : @147} -> {tys : @148} -> (h : @845) -> (hf : @225) -> @13 (@846 @36) @721 +@854 := @842 @95 +@857 := @13 (@846 @95) @721 +@860 := {tys : @148} -> (h : @845) -> (hf : @271) -> @857 +@861 := @854 @109 +@864 := (h : @844 @754) -> (hf : @145) -> @857 +@867 := @861 (@705 @843) @142 +@868 := 5 +@869 := @726 @868 +@870 := @727 @868 +@871 := @598 @870 +@872 := @871 @606 +@873 := @611 @868 +@880 := {fs : @147} -> {tys : @148} -> (h : @872) -> (hf : @225) -> @13 (@873 @36) @721 +@881 := @869 @95 +@884 := @13 (@873 @95) @721 +@887 := {tys : @148} -> (h : @872) -> (hf : @271) -> @884 +@888 := @881 @109 +@891 := (h : @871 @754) -> (hf : @145) -> @884 +@894 := @888 (@705 @870) @142 +@895 := 6 +@896 := @726 @895 +@897 := @727 @895 +@898 := @598 @897 +@899 := @898 @606 +@900 := @611 @895 +@907 := {fs : @147} -> {tys : @148} -> (h : @899) -> (hf : @225) -> @13 (@900 @36) @721 +@908 := @896 @95 +@911 := @13 (@900 @95) @721 +@914 := {tys : @148} -> (h : @899) -> (hf : @271) -> @911 +@915 := @908 @109 +@918 := (h : @898 @754) -> (hf : @145) -> @911 +@921 := @915 (@705 @897) @142 +@922 := 7 +@923 := @726 @922 +@924 := @727 @922 +@925 := @598 @924 +@926 := @925 @606 +@927 := @611 @922 +@934 := {fs : @147} -> {tys : @148} -> (h : @926) -> (hf : @225) -> @13 (@927 @36) @721 +@935 := @923 @95 +@938 := @13 (@927 @95) @721 +@941 := {tys : @148} -> (h : @926) -> (hf : @271) -> @938 +@942 := @935 @109 +@945 := (h : @925 @754) -> (hf : @145) -> @938 +@948 := @942 (@705 @924) @142 +@960 := fun (__v : @717) => + Reasoning.Clinic.Triage.Step.casesOn.{0} @725 @4 @760 @786 @813 @840 @867 @894 @921 @948 +@961 := Reasoning.Clinic.Chart +@962 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.__enc_3 +@963 := @962 @4 +@964 := @8 @814 +@967 := (__s : @961) -> @13 @963 @964 +@968 := Reasoning.Clinic.Chart.vitals +@969 := @968 @4 +@970 := Reasoning.Clinic.Chart.fever +@971 := @970 @4 +@972 := Reasoning.Clinic.Chart.tachycardia +@973 := @972 @4 +@974 := Reasoning.Clinic.Chart.tachypnea +@975 := @974 @4 +@976 := Reasoning.Clinic.Chart.leukocytosis +@977 := @976 @4 +@978 := Reasoning.Clinic.Chart.sirs +@979 := @978 @4 +@980 := Reasoning.Clinic.Chart.sepsis +@981 := @980 @4 +@982 := Reasoning.Clinic.Chart.shock +@983 := @982 @4 +@984 := Reasoning.Clinic.Chart.level +@985 := @984 @4 +@986 := @5 @969 +@988 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.Compose.RustStd.__wt_0 @969 +@989 := @29 @971 +@990 := @64 @971 +@992 := @13 @989 @31 +@993 := @29 @973 +@994 := @64 @973 +@996 := @13 @993 @31 +@997 := @29 @975 +@998 := @64 @975 +@1000 := @13 @997 @31 +@1001 := @29 @977 +@1002 := @64 @977 +@1004 := @13 @1001 @31 +@1005 := @29 @979 +@1006 := @64 @979 +@1008 := @13 @1005 @31 +@1009 := @29 @981 +@1010 := @64 @981 +@1012 := @13 @1009 @31 +@1013 := @29 @983 +@1014 := @64 @983 +@1016 := @13 @1013 @31 +@1017 := @29 @985 +@1018 := @64 @985 +@1020 := @13 @1017 @31 +@1022 := @96 @1017 @95 +@1024 := @96 @1013 @1022 +@1026 := @96 @1009 @1024 +@1028 := @96 @1005 @1026 +@1030 := @96 @1001 @1028 +@1032 := @96 @997 @1030 +@1034 := @96 @993 @1032 +@1036 := @96 @989 @1034 +@1038 := @96 @986 @1036 +@1039 := @111 @117 +@1040 := @111 @1039 +@1041 := @110 @10 +@1042 := @1041 @1040 +@1043 := @221 @1017 +@1045 := @29 (@984 @36) +@1058 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @1045 @38) -> (hs : @225) -> @143 (@96 (@29 (@984 @151)) @36) @171 +@1059 := @1043 @31 +@1061 := @29 (@984 @38) +@1073 := {vs : @147} -> + {ts : @148} -> (h : @13 @1061 @31) -> (hs : @225) -> @143 (@96 (@29 (@984 @153)) @36) @260 +@1074 := @1059 @95 +@1076 := @29 (@984 @40) +@1078 := @13 @1076 @31 +@1080 := @96 @1045 @95 +@1085 := {ts : @148} -> (h : @1078) -> (hs : @271) -> @143 @1080 @260 +@1086 := @1074 @109 +@1088 := @96 @1061 @95 +@1089 := @143 @1088 +@1092 := (h : @1020) -> (hs : @145) -> @1089 @112 +@1093 := @1086 @1018 +@1095 := @96 @1076 @95 +@1097 := @143 @1095 @112 +@1098 := (hs : @145) -> @1097 +@1099 := @1093 @142 +@1101 := @143 @1022 @112 +@1102 := @221 @1013 +@1104 := @29 (@982 @36) +@1117 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @1104 @38) -> (hs : @225) -> @143 (@96 (@29 (@982 @151)) @36) @171 +@1118 := @1102 @31 +@1120 := @29 (@982 @38) +@1132 := {vs : @147} -> + {ts : @148} -> (h : @13 @1120 @31) -> (hs : @225) -> @143 (@96 (@29 (@982 @153)) @36) @260 +@1133 := @1118 @1022 +@1135 := @29 (@982 @40) +@1137 := @13 @1135 @31 +@1138 := @1089 @40 +@1140 := @96 @1104 @1080 +@1145 := {ts : @148} -> (h : @1137) -> (hs : @1138) -> @143 @1140 @260 +@1146 := @1133 @112 +@1148 := @96 @1120 @1088 +@1149 := @143 @1148 +@1152 := (h : @1016) -> (hs : @1097) -> @1149 @113 +@1153 := @1146 @1014 +@1155 := @96 @1135 @1095 +@1157 := @143 @1155 @113 +@1158 := (hs : @1101) -> @1157 +@1159 := @1153 @1099 +@1161 := @143 @1024 @113 +@1162 := @221 @1009 +@1164 := @29 (@980 @36) +@1177 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @1164 @38) -> (hs : @225) -> @143 (@96 (@29 (@980 @151)) @36) @171 +@1178 := @1162 @31 +@1180 := @29 (@980 @38) +@1192 := {vs : @147} -> + {ts : @148} -> (h : @13 @1180 @31) -> (hs : @225) -> @143 (@96 (@29 (@980 @153)) @36) @260 +@1193 := @1178 @1024 +@1195 := @29 (@980 @40) +@1197 := @13 @1195 @31 +@1198 := @1149 @40 +@1200 := @96 @1164 @1140 +@1205 := {ts : @148} -> (h : @1197) -> (hs : @1198) -> @143 @1200 @260 +@1206 := @1193 @113 +@1208 := @96 @1180 @1148 +@1209 := @143 @1208 +@1212 := (h : @1012) -> (hs : @1157) -> @1209 @114 +@1213 := @1206 @1010 +@1215 := @96 @1195 @1155 +@1217 := @143 @1215 @114 +@1218 := (hs : @1161) -> @1217 +@1219 := @1213 @1159 +@1221 := @143 @1026 @114 +@1222 := @221 @1005 +@1224 := @29 (@978 @36) +@1237 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @1224 @38) -> (hs : @225) -> @143 (@96 (@29 (@978 @151)) @36) @171 +@1238 := @1222 @31 +@1240 := @29 (@978 @38) +@1252 := {vs : @147} -> + {ts : @148} -> (h : @13 @1240 @31) -> (hs : @225) -> @143 (@96 (@29 (@978 @153)) @36) @260 +@1253 := @1238 @1026 +@1255 := @29 (@978 @40) +@1257 := @13 @1255 @31 +@1258 := @1209 @40 +@1260 := @96 @1224 @1200 +@1265 := {ts : @148} -> (h : @1257) -> (hs : @1258) -> @143 @1260 @260 +@1266 := @1253 @114 +@1268 := @96 @1240 @1208 +@1269 := @143 @1268 +@1272 := (h : @1008) -> (hs : @1217) -> @1269 @115 +@1273 := @1266 @1006 +@1275 := @96 @1255 @1215 +@1277 := @143 @1275 @115 +@1278 := (hs : @1221) -> @1277 +@1279 := @1273 @1219 +@1281 := @143 @1028 @115 +@1282 := @221 @1001 +@1284 := @29 (@976 @36) +@1297 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @1284 @38) -> (hs : @225) -> @143 (@96 (@29 (@976 @151)) @36) @171 +@1298 := @1282 @31 +@1300 := @29 (@976 @38) +@1312 := {vs : @147} -> + {ts : @148} -> (h : @13 @1300 @31) -> (hs : @225) -> @143 (@96 (@29 (@976 @153)) @36) @260 +@1313 := @1298 @1028 +@1315 := @29 (@976 @40) +@1317 := @13 @1315 @31 +@1318 := @1269 @40 +@1320 := @96 @1284 @1260 +@1325 := {ts : @148} -> (h : @1317) -> (hs : @1318) -> @143 @1320 @260 +@1326 := @1313 @115 +@1328 := @96 @1300 @1268 +@1329 := @143 @1328 +@1332 := (h : @1004) -> (hs : @1277) -> @1329 @116 +@1333 := @1326 @1002 +@1335 := @96 @1315 @1275 +@1337 := @143 @1335 @116 +@1338 := (hs : @1281) -> @1337 +@1339 := @1333 @1279 +@1341 := @143 @1030 @116 +@1342 := @221 @997 +@1344 := @29 (@974 @36) +@1357 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @1344 @38) -> (hs : @225) -> @143 (@96 (@29 (@974 @151)) @36) @171 +@1358 := @1342 @31 +@1360 := @29 (@974 @38) +@1372 := {vs : @147} -> + {ts : @148} -> (h : @13 @1360 @31) -> (hs : @225) -> @143 (@96 (@29 (@974 @153)) @36) @260 +@1373 := @1358 @1030 +@1375 := @29 (@974 @40) +@1377 := @13 @1375 @31 +@1378 := @1329 @40 +@1380 := @96 @1344 @1320 +@1385 := {ts : @148} -> (h : @1377) -> (hs : @1378) -> @143 @1380 @260 +@1386 := @1373 @116 +@1388 := @96 @1360 @1328 +@1389 := @143 @1388 +@1392 := (h : @1000) -> (hs : @1337) -> @1389 @117 +@1393 := @1386 @998 +@1395 := @96 @1375 @1335 +@1397 := @143 @1395 @117 +@1398 := (hs : @1341) -> @1397 +@1399 := @1393 @1339 +@1401 := @143 @1032 @117 +@1402 := @221 @993 +@1404 := @29 (@972 @36) +@1417 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @1404 @38) -> (hs : @225) -> @143 (@96 (@29 (@972 @151)) @36) @171 +@1418 := @1402 @31 +@1420 := @29 (@972 @38) +@1432 := {vs : @147} -> + {ts : @148} -> (h : @13 @1420 @31) -> (hs : @225) -> @143 (@96 (@29 (@972 @153)) @36) @260 +@1433 := @1418 @1032 +@1435 := @29 (@972 @40) +@1437 := @13 @1435 @31 +@1438 := @1389 @40 +@1440 := @96 @1404 @1380 +@1445 := {ts : @148} -> (h : @1437) -> (hs : @1438) -> @143 @1440 @260 +@1446 := @1433 @117 +@1448 := @96 @1420 @1388 +@1449 := @143 @1448 +@1452 := (h : @996) -> (hs : @1397) -> @1449 @1039 +@1453 := @1446 @994 +@1455 := @96 @1435 @1395 +@1457 := @143 @1455 @1039 +@1458 := (hs : @1401) -> @1457 +@1459 := @1453 @1399 +@1461 := @143 @1034 @1039 +@1462 := @221 @989 +@1464 := @29 (@970 @36) +@1477 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @1464 @38) -> (hs : @225) -> @143 (@96 (@29 (@970 @151)) @36) @171 +@1478 := @1462 @31 +@1480 := @29 (@970 @38) +@1492 := {vs : @147} -> + {ts : @148} -> (h : @13 @1480 @31) -> (hs : @225) -> @143 (@96 (@29 (@970 @153)) @36) @260 +@1493 := @1478 @1034 +@1495 := @29 (@970 @40) +@1497 := @13 @1495 @31 +@1498 := @1449 @40 +@1500 := @96 @1464 @1440 +@1505 := {ts : @148} -> (h : @1497) -> (hs : @1498) -> @143 @1500 @260 +@1506 := @1493 @1039 +@1508 := @96 @1480 @1448 +@1509 := @143 @1508 +@1512 := (h : @992) -> (hs : @1457) -> @1509 @1040 +@1513 := @1506 @990 +@1515 := @96 @1495 @1455 +@1517 := @143 @1515 @1040 +@1518 := (hs : @1461) -> @1517 +@1519 := @1513 @1459 +@1521 := @143 @1036 @1040 +@1522 := @221 @986 +@1524 := @5 (@968 @36) +@1537 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @1524 @38) -> (hs : @225) -> @143 (@96 (@5 (@968 @151)) @36) @171 +@1538 := @1522 @10 +@1540 := @5 (@968 @38) +@1542 := @13 @1540 @10 +@1547 := @143 (@96 (@5 (@968 @153)) @36) +@1548 := @1041 @38 +@1553 := {vs : @147} -> {ts : @148} -> (h : @1542) -> (hs : @225) -> @1547 @1548 +@1554 := @1538 @1036 +@1556 := @5 (@968 @40) +@1558 := @13 @1556 @10 +@1559 := @1509 @40 +@1561 := @96 @1524 @1500 +@1566 := {ts : @148} -> (h : @1558) -> (hs : @1559) -> @143 @1561 @1548 +@1567 := @1554 @1040 +@1569 := @13 @986 @10 +@1571 := @96 @1540 @1508 +@1572 := @143 @1571 +@1575 := (h : @1569) -> (hs : @1517) -> @1572 @1042 +@1576 := @1567 @988 +@1578 := @96 @1556 @1515 +@1580 := @143 @1578 @1042 +@1581 := (hs : @1521) -> @1580 +@1582 := @1576 @1519 +@1584 := @143 @1038 @1042 +@1585 := @656 @814 +@1586 := @628 @814 +@1595 := {k : @35} -> + {fs : @147} -> {tys : @148} -> (h : @598 (@1586 @38) @606) -> (hf : @225) -> @657 @964 +@1596 := @1585 @9 +@1597 := @1586 @9 +@1598 := @598 @1597 +@1599 := @1598 @606 +@1604 := {fs : @147} -> {tys : @148} -> (h : @1599) -> (hf : @225) -> @682 @964 +@1605 := @1596 @1038 +@1612 := {tys : @148} -> (h : @1599) -> (hf : @1572 @40) -> @13 (@680 @1561) @964 +@1613 := @1605 @1042 +@1620 := (h : @1598 (@605 @1042)) -> (hf : @1580) -> @13 (@680 @1571) @964 +@1622 := @1613 (@705 @1597) +@1626 := (hf : @1584) -> @13 (@680 @1578) @964 +@1627 := @1622 @1582 +@1630 := @13 (@680 @1038) @964 +@1631 := fun (__s : @961) => @1627 +@1632 := Reasoning.Clinic.Triage.Ledger +@1633 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.__enc_4 +@1634 := @1633 @4 +@1635 := @8 @841 +@1638 := (__s : @1632) -> @13 @1634 @1635 +@1639 := Reasoning.Clinic.Triage.Ledger.iterations +@1640 := @1639 @4 +@1641 := Reasoning.Clinic.Triage.Ledger.attempts +@1642 := @1641 @4 +@1643 := Reasoning.Clinic.Triage.Ledger.firings +@1644 := @1643 @4 +@1645 := Reasoning.Clinic.Triage.Ledger.expansions +@1646 := @1645 @4 +@1647 := Reasoning.Clinic.Triage.Ledger.verifications +@1648 := @1647 @4 +@1649 := Reasoning.Clinic.Triage.Ledger.frontier +@1650 := @1649 @4 +@1651 := @29 @1640 +@1652 := @64 @1640 +@1654 := @13 @1651 @31 +@1655 := @29 @1642 +@1656 := @64 @1642 +@1658 := @13 @1655 @31 +@1659 := @29 @1644 +@1660 := @64 @1644 +@1662 := @13 @1659 @31 +@1663 := @29 @1646 +@1664 := @64 @1646 +@1666 := @13 @1663 @31 +@1667 := @29 @1648 +@1668 := @64 @1648 +@1670 := @13 @1667 @31 +@1671 := @29 @1650 +@1672 := @64 @1650 +@1674 := @13 @1671 @31 +@1676 := @96 @1671 @95 +@1678 := @96 @1667 @1676 +@1680 := @96 @1663 @1678 +@1682 := @96 @1659 @1680 +@1684 := @96 @1655 @1682 +@1686 := @96 @1651 @1684 +@1687 := @221 @1671 +@1689 := @29 (@1649 @36) +@1702 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @1689 @38) -> (hs : @225) -> @143 (@96 (@29 (@1649 @151)) @36) @171 +@1703 := @1687 @31 +@1705 := @29 (@1649 @38) +@1717 := {vs : @147} -> + {ts : @148} -> (h : @13 @1705 @31) -> (hs : @225) -> @143 (@96 (@29 (@1649 @153)) @36) @260 +@1718 := @1703 @95 +@1720 := @29 (@1649 @40) +@1722 := @13 @1720 @31 +@1724 := @96 @1689 @95 +@1729 := {ts : @148} -> (h : @1722) -> (hs : @271) -> @143 @1724 @260 +@1730 := @1718 @109 +@1732 := @96 @1705 @95 +@1733 := @143 @1732 +@1736 := (h : @1674) -> (hs : @145) -> @1733 @112 +@1737 := @1730 @1672 +@1739 := @96 @1720 @95 +@1741 := @143 @1739 @112 +@1742 := (hs : @145) -> @1741 +@1743 := @1737 @142 +@1745 := @143 @1676 @112 +@1746 := @221 @1667 +@1748 := @29 (@1647 @36) +@1761 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @1748 @38) -> (hs : @225) -> @143 (@96 (@29 (@1647 @151)) @36) @171 +@1762 := @1746 @31 +@1764 := @29 (@1647 @38) +@1776 := {vs : @147} -> + {ts : @148} -> (h : @13 @1764 @31) -> (hs : @225) -> @143 (@96 (@29 (@1647 @153)) @36) @260 +@1777 := @1762 @1676 +@1779 := @29 (@1647 @40) +@1781 := @13 @1779 @31 +@1782 := @1733 @40 +@1784 := @96 @1748 @1724 +@1789 := {ts : @148} -> (h : @1781) -> (hs : @1782) -> @143 @1784 @260 +@1790 := @1777 @112 +@1792 := @96 @1764 @1732 +@1793 := @143 @1792 +@1796 := (h : @1670) -> (hs : @1741) -> @1793 @113 +@1797 := @1790 @1668 +@1799 := @96 @1779 @1739 +@1801 := @143 @1799 @113 +@1802 := (hs : @1745) -> @1801 +@1803 := @1797 @1743 +@1805 := @143 @1678 @113 +@1806 := @221 @1663 +@1808 := @29 (@1645 @36) +@1821 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @1808 @38) -> (hs : @225) -> @143 (@96 (@29 (@1645 @151)) @36) @171 +@1822 := @1806 @31 +@1824 := @29 (@1645 @38) +@1836 := {vs : @147} -> + {ts : @148} -> (h : @13 @1824 @31) -> (hs : @225) -> @143 (@96 (@29 (@1645 @153)) @36) @260 +@1837 := @1822 @1678 +@1839 := @29 (@1645 @40) +@1841 := @13 @1839 @31 +@1842 := @1793 @40 +@1844 := @96 @1808 @1784 +@1849 := {ts : @148} -> (h : @1841) -> (hs : @1842) -> @143 @1844 @260 +@1850 := @1837 @113 +@1852 := @96 @1824 @1792 +@1853 := @143 @1852 +@1856 := (h : @1666) -> (hs : @1801) -> @1853 @114 +@1857 := @1850 @1664 +@1859 := @96 @1839 @1799 +@1861 := @143 @1859 @114 +@1862 := (hs : @1805) -> @1861 +@1863 := @1857 @1803 +@1865 := @143 @1680 @114 +@1866 := @221 @1659 +@1868 := @29 (@1643 @36) +@1881 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @1868 @38) -> (hs : @225) -> @143 (@96 (@29 (@1643 @151)) @36) @171 +@1882 := @1866 @31 +@1884 := @29 (@1643 @38) +@1896 := {vs : @147} -> + {ts : @148} -> (h : @13 @1884 @31) -> (hs : @225) -> @143 (@96 (@29 (@1643 @153)) @36) @260 +@1897 := @1882 @1680 +@1899 := @29 (@1643 @40) +@1901 := @13 @1899 @31 +@1902 := @1853 @40 +@1904 := @96 @1868 @1844 +@1909 := {ts : @148} -> (h : @1901) -> (hs : @1902) -> @143 @1904 @260 +@1910 := @1897 @114 +@1912 := @96 @1884 @1852 +@1913 := @143 @1912 +@1916 := (h : @1662) -> (hs : @1861) -> @1913 @115 +@1917 := @1910 @1660 +@1919 := @96 @1899 @1859 +@1921 := @143 @1919 @115 +@1922 := (hs : @1865) -> @1921 +@1923 := @1917 @1863 +@1925 := @143 @1682 @115 +@1926 := @221 @1655 +@1928 := @29 (@1641 @36) +@1941 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @1928 @38) -> (hs : @225) -> @143 (@96 (@29 (@1641 @151)) @36) @171 +@1942 := @1926 @31 +@1944 := @29 (@1641 @38) +@1956 := {vs : @147} -> + {ts : @148} -> (h : @13 @1944 @31) -> (hs : @225) -> @143 (@96 (@29 (@1641 @153)) @36) @260 +@1957 := @1942 @1682 +@1959 := @29 (@1641 @40) +@1961 := @13 @1959 @31 +@1962 := @1913 @40 +@1964 := @96 @1928 @1904 +@1969 := {ts : @148} -> (h : @1961) -> (hs : @1962) -> @143 @1964 @260 +@1970 := @1957 @115 +@1972 := @96 @1944 @1912 +@1973 := @143 @1972 +@1976 := (h : @1658) -> (hs : @1921) -> @1973 @116 +@1977 := @1970 @1656 +@1979 := @96 @1959 @1919 +@1981 := @143 @1979 @116 +@1982 := (hs : @1925) -> @1981 +@1983 := @1977 @1923 +@1985 := @143 @1684 @116 +@1986 := @221 @1651 +@1988 := @29 (@1639 @36) +@2001 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @1988 @38) -> (hs : @225) -> @143 (@96 (@29 (@1639 @151)) @36) @171 +@2002 := @1986 @31 +@2004 := @29 (@1639 @38) +@2016 := {vs : @147} -> + {ts : @148} -> (h : @13 @2004 @31) -> (hs : @225) -> @143 (@96 (@29 (@1639 @153)) @36) @260 +@2017 := @2002 @1684 +@2019 := @29 (@1639 @40) +@2021 := @13 @2019 @31 +@2022 := @1973 @40 +@2024 := @96 @1988 @1964 +@2029 := {ts : @148} -> (h : @2021) -> (hs : @2022) -> @143 @2024 @260 +@2030 := @2017 @116 +@2032 := @96 @2004 @1972 +@2033 := @143 @2032 +@2036 := (h : @1654) -> (hs : @1981) -> @2033 @117 +@2037 := @2030 @1652 +@2039 := @96 @2019 @1979 +@2041 := @143 @2039 @117 +@2042 := (hs : @1985) -> @2041 +@2043 := @2037 @1983 +@2045 := @143 @1686 @117 +@2046 := @656 @841 +@2047 := @628 @841 +@2056 := {k : @35} -> + {fs : @147} -> {tys : @148} -> (h : @598 (@2047 @38) @606) -> (hf : @225) -> @657 @1635 +@2057 := @2046 @9 +@2058 := @2047 @9 +@2059 := @598 @2058 +@2060 := @2059 @606 +@2065 := {fs : @147} -> {tys : @148} -> (h : @2060) -> (hf : @225) -> @682 @1635 +@2066 := @2057 @1686 +@2073 := {tys : @148} -> (h : @2060) -> (hf : @2033 @40) -> @13 (@680 @2024) @1635 +@2074 := @2066 @117 +@2080 := (h : @2059 @697) -> (hf : @2041) -> @13 (@680 @2032) @1635 +@2082 := @2074 (@705 @2058) +@2086 := (hf : @2045) -> @13 (@680 @2039) @1635 +@2087 := @2082 @2043 +@2090 := @13 (@680 @1686) @1635 +@2091 := fun (__s : @1632) => @2087 +@2092 := Reasoning.Clinic.Triage.Run +@2094 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.__enc_2 @4 +@2095 := @8 @787 +@2098 := (__s : @2092) -> @13 @2094 @2095 +@2099 := Reasoning.Clinic.Triage.Run.state +@2100 := @2099 @4 +@2101 := Reasoning.Clinic.Triage.Run.trace +@2102 := @2101 @4 +@2103 := Reasoning.Clinic.Triage.Run.ledger +@2104 := @2103 @4 +@2105 := @962 @2100 +@2107 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.Compose.RustStd.__wt_3 @2100 +@2108 := LexLeanPreservation.encList +@2109 := @2108 @717 +@2110 := @2109 @718 +@2111 := @2110 @2102 +@2112 := LexLeanTarget.TargetSyntax.Ty.list +@2113 := @2112 @721 +@2116 := fun (__x : @717) => + LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.Compose.RustStd.__wt_1 @4 +@2117 := Sort 1 +@2118 := (a._@._internal._hyg.#0 : @4) -> @91 +@2119 := @38 @4 +@2122 := (x : @38) -> @154 @2119 @40 +@2123 := @146 @36 +@2126 := @7 @157 @149 @151 +@2129 := @2108 @153 @36 @4 +@2130 := @2126 @2129 +@2131 := @2112 @38 +@2140 := {p : @32} -> + {c : @33} -> + {A : @34} -> {α : @2117} -> {e : @2118} -> {t : @92} -> (h : @2122) -> (xs : @2123) -> @2130 @2131 +@2142 := LexLeanPreservation.Rust.wt_encList @0 +@2156 := {c : @33} -> + {A : @34} -> + {α : @2117} -> + {e : @2118} -> + {t : @92} -> (h : (x : @38) -> @185 @2119 @40) -> (xs : @2123) -> @11 @149 @151 @2129 @2131 +@2157 := @2142 @1 +@2169 := {A : @34} -> + {α : @2117} -> + {e : @2118} -> + {t : @92} -> (h : (x : @38) -> @205 @2119 @40) -> (xs : @2123) -> @12 @151 @2129 @2131 +@2170 := @2157 @2 +@2172 := @13 @2119 @40 +@2180 := {α : @2117} -> + {e : @2118} -> {t : @92} -> (h : (x : @38) -> @2172) -> (xs : @2123) -> @13 @2129 @2131 +@2181 := @2170 @717 +@2182 := (a._@._internal._hyg.#0 : @717) -> @91 +@2183 := (x : @717) -> @2172 +@2184 := @146 @717 +@2192 := {e : @2182} -> {t : @92} -> (h : @2183) -> (xs : @2184) -> @13 (@2109 @36 @4) @2131 +@2193 := @2181 @718 +@2195 := (x : @717) -> @722 @40 +@2197 := @13 (@2110 @4) +@2201 := {t : @92} -> (h : @2195) -> (xs : @2184) -> @2197 @2131 +@2202 := @2193 @721 +@2206 := (h : (x : @717) -> @723) -> (xs : @2184) -> @2197 @2113 +@2208 := @2202 @2116 @2102 +@2210 := @13 @2111 @2113 +@2211 := @1633 @2104 +@2213 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.Compose.RustStd.__wt_4 @2104 +@2215 := @96 @2211 @95 +@2217 := @96 @2111 @2215 +@2219 := @96 @2105 @2217 +@2220 := @110 @1635 +@2221 := @2220 @109 +@2222 := @110 @2113 +@2223 := @2222 @2221 +@2224 := @110 @964 +@2225 := @2224 @2223 +@2226 := @221 @2211 +@2228 := @1633 (@2103 @36) +@2241 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @2228 @38) -> (hs : @225) -> @143 (@96 (@1633 (@2103 @151)) @36) @171 +@2242 := @2226 @1635 +@2244 := @1633 (@2103 @38) +@2246 := @13 @2244 @1635 +@2251 := @143 (@96 (@1633 (@2103 @153)) @36) +@2252 := @2220 @38 +@2257 := {vs : @147} -> {ts : @148} -> (h : @2246) -> (hs : @225) -> @2251 @2252 +@2258 := @2242 @95 +@2260 := @1633 (@2103 @40) +@2262 := @13 @2260 @1635 +@2264 := @96 @2228 @95 +@2269 := {ts : @148} -> (h : @2262) -> (hs : @271) -> @143 @2264 @2252 +@2270 := @2258 @109 +@2272 := @13 @2211 @1635 +@2274 := @96 @2244 @95 +@2275 := @143 @2274 +@2278 := (h : @2272) -> (hs : @145) -> @2275 @2221 +@2279 := @2270 @2213 +@2281 := @96 @2260 @95 +@2283 := @143 @2281 @2221 +@2284 := (hs : @145) -> @2283 +@2285 := @2279 @142 +@2287 := @143 @2215 @2221 +@2288 := @221 @2111 +@2290 := @2110 (@2101 @36) +@2303 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @2290 @38) -> (hs : @225) -> @143 (@96 (@2110 (@2101 @151)) @36) @171 +@2304 := @2288 @2113 +@2306 := @2110 (@2101 @38) +@2308 := @13 @2306 @2113 +@2313 := @143 (@96 (@2110 (@2101 @153)) @36) +@2314 := @2222 @38 +@2319 := {vs : @147} -> {ts : @148} -> (h : @2308) -> (hs : @225) -> @2313 @2314 +@2320 := @2304 @2215 +@2322 := @2110 (@2101 @40) +@2324 := @13 @2322 @2113 +@2325 := @2275 @40 +@2327 := @96 @2290 @2264 +@2332 := {ts : @148} -> (h : @2324) -> (hs : @2325) -> @143 @2327 @2314 +@2333 := @2320 @2221 +@2335 := @96 @2306 @2274 +@2336 := @143 @2335 +@2339 := (h : @2210) -> (hs : @2283) -> @2336 @2223 +@2340 := @2333 @2208 +@2342 := @96 @2322 @2281 +@2344 := @143 @2342 @2223 +@2345 := (hs : @2287) -> @2344 +@2346 := @2340 @2285 +@2348 := @143 @2217 @2223 +@2349 := @221 @2105 +@2351 := @962 (@2099 @36) +@2364 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @2351 @38) -> (hs : @225) -> @143 (@96 (@962 (@2099 @151)) @36) @171 +@2365 := @2349 @964 +@2367 := @962 (@2099 @38) +@2369 := @13 @2367 @964 +@2374 := @143 (@96 (@962 (@2099 @153)) @36) +@2375 := @2224 @38 +@2380 := {vs : @147} -> {ts : @148} -> (h : @2369) -> (hs : @225) -> @2374 @2375 +@2381 := @2365 @2217 +@2383 := @962 (@2099 @40) +@2385 := @13 @2383 @964 +@2386 := @2336 @40 +@2388 := @96 @2351 @2327 +@2393 := {ts : @148} -> (h : @2385) -> (hs : @2386) -> @143 @2388 @2375 +@2394 := @2381 @2223 +@2396 := @13 @2105 @964 +@2398 := @96 @2367 @2335 +@2399 := @143 @2398 +@2402 := (h : @2396) -> (hs : @2344) -> @2399 @2225 +@2403 := @2394 @2107 +@2405 := @96 @2383 @2342 +@2407 := @143 @2405 @2225 +@2408 := (hs : @2348) -> @2407 +@2409 := @2403 @2346 +@2411 := @143 @2219 @2225 +@2412 := @656 @787 +@2413 := @628 @787 +@2422 := {k : @35} -> + {fs : @147} -> {tys : @148} -> (h : @598 (@2413 @38) @606) -> (hf : @225) -> @657 @2095 +@2423 := @2412 @9 +@2424 := @2413 @9 +@2425 := @598 @2424 +@2426 := @2425 @606 +@2431 := {fs : @147} -> {tys : @148} -> (h : @2426) -> (hf : @225) -> @682 @2095 +@2432 := @2423 @2219 +@2439 := {tys : @148} -> (h : @2426) -> (hf : @2399 @40) -> @13 (@680 @2388) @2095 +@2440 := @2432 @2225 +@2447 := (h : @2425 (@605 @2225)) -> (hf : @2407) -> @13 (@680 @2398) @2095 +@2449 := @2440 (@705 @2424) +@2453 := (hf : @2411) -> @13 (@680 @2405) @2095 +@2454 := @2449 @2409 +@2457 := @13 (@680 @2219) @2095 +@2458 := fun (__s : @2092) => @2454 +@2459 := @29 @149 +@2460 := @64 @149 +@2461 := @13 @2459 +@2462 := @2461 @31 +@2463 := @29 @151 +@2464 := @64 @151 +@2465 := @13 @2463 +@2466 := @2465 @31 +@2467 := @29 @153 +@2468 := @64 @153 +@2469 := @13 @2467 +@2470 := @2469 @31 +@2471 := @29 @36 +@2472 := @64 @36 +@2474 := @13 @2471 @31 +@2475 := @29 @38 +@2476 := @64 @38 +@2478 := @13 @2475 @31 +@2479 := @29 @40 +@2480 := @64 @40 +@2482 := @13 @2479 @31 +@2483 := @96 @2479 +@2484 := @2483 @95 +@2485 := @96 @2475 +@2486 := @2485 @2484 +@2487 := @96 @2471 +@2488 := @2487 @2486 +@2489 := @96 @2467 +@2490 := @2489 @2488 +@2491 := @96 @2463 +@2492 := @2491 @2490 +@2493 := @96 @2459 +@2494 := @2493 @2492 +@2497 := Prod.{0, 0} @35 @91 +@2500 := Prod.mk.{0, 0} @35 @91 +@2501 := @2500 @868 +@2502 := @2501 @2479 +@2503 := @2500 @841 +@2504 := @2503 @2475 +@2505 := @2500 @814 +@2506 := @2505 @2471 +@2507 := @2500 @787 +@2508 := @2507 @2467 +@2509 := @2500 @720 +@2510 := @2509 @2463 +@2511 := @2500 @9 +@2512 := @2511 @2459 +@2513 := @93 @2497 +@2514 := @94 @2497 +@2516 := @2514 @2512 @2513 +@2518 := @2514 @2510 @2516 +@2520 := @2514 @2508 @2518 +@2522 := @2514 @2506 @2520 +@2524 := @2514 @2504 @2522 +@2526 := @2514 @2502 @2524 +@2527 := Bool.true +@2528 := LexLeanTarget.TargetSyntax.Function +@2529 := LexLeanTarget.TargetSyntax.Program.functions +@2530 := @2529 @0 +@2531 := @93 @35 +@2532 := LexLeanTarget.TargetSyntax.Ty.unit +@2533 := LexLeanTarget.TargetSyntax.Value.unit +@2536 := LexLeanTarget.TargetSyntax.Expr.value @2532 @2533 +@2541 := LexLeanTarget.TargetSyntax.Function.mk @2531 @109 @2532 @2536 +@2546 := List.getD.{0} @2528 @2530 @9 @2541 +@2550 := fun (__e_n : @35) => + LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.RustStd.root @4 @9 +@2551 := @221 @2479 +@2552 := @2469 @38 +@2554 := @143 (@2493 @36) +@2560 := {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @2552) -> (hs : @225) -> @2554 @171 +@2561 := @2551 @31 +@2568 := {vs : @147} -> {ts : @148} -> (h : @2474) -> (hs : @225) -> @143 (@2491 @36) @260 +@2569 := @2561 @95 +@2570 := @2489 @95 +@2575 := {ts : @148} -> (h : @2478) -> (hs : @271) -> @143 @2570 @260 +@2576 := @2569 @109 +@2577 := @2487 @95 +@2578 := @143 @2577 +@2581 := (h : @2482) -> (hs : @145) -> @2578 @112 +@2582 := @2576 @2480 +@2583 := @2485 @95 +@2585 := @143 @2583 @112 +@2586 := (hs : @145) -> @2585 +@2587 := @2582 @142 +@2589 := @143 @2484 @112 +@2590 := @221 @2475 +@2591 := @2465 @38 +@2592 := @29 @157 +@2593 := @96 @2592 +@2595 := @143 (@2593 @36) +@2601 := {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @2591) -> (hs : @225) -> @2595 @171 +@2602 := @2590 @31 +@2607 := {vs : @147} -> {ts : @148} -> (h : @2470) -> (hs : @225) -> @2554 @260 +@2608 := @2602 @2484 +@2609 := @2578 @40 +@2610 := @2491 @2570 +@2615 := {ts : @148} -> (h : @2474) -> (hs : @2609) -> @143 @2610 @260 +@2616 := @2608 @112 +@2617 := @2489 @2577 +@2618 := @143 @2617 +@2621 := (h : @2478) -> (hs : @2585) -> @2618 @113 +@2622 := @2616 @2476 +@2623 := @2487 @2583 +@2625 := @143 @2623 @113 +@2626 := (hs : @2589) -> @2625 +@2627 := @2622 @2587 +@2629 := @143 @2486 @113 +@2630 := @221 @2471 +@2631 := @2461 @38 +@2632 := @29 @163 +@2633 := @96 @2632 +@2635 := @143 (@2633 @36) +@2641 := {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @2631) -> (hs : @225) -> @2635 @171 +@2642 := @2630 @31 +@2647 := {vs : @147} -> {ts : @148} -> (h : @2466) -> (hs : @225) -> @2595 @260 +@2648 := @2642 @2486 +@2649 := @2618 @40 +@2650 := @2493 @2610 +@2655 := {ts : @148} -> (h : @2470) -> (hs : @2649) -> @143 @2650 @260 +@2656 := @2648 @113 +@2657 := @2491 @2617 +@2658 := @143 @2657 +@2661 := (h : @2474) -> (hs : @2625) -> @2658 @114 +@2662 := @2656 @2472 +@2663 := @2489 @2623 +@2665 := @143 @2663 @114 +@2666 := (hs : @2629) -> @2665 +@2667 := @2662 @2627 +@2669 := @143 @2488 @114 +@2670 := @221 @2467 +@2671 := @13 @2592 +@2672 := @2671 @38 +@2673 := #9 +@2674 := @29 @2673 +@2675 := @96 @2674 +@2677 := @143 (@2675 @36) +@2683 := {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @2672) -> (hs : @225) -> @2677 @171 +@2684 := @2670 @31 +@2689 := {vs : @147} -> {ts : @148} -> (h : @2462) -> (hs : @225) -> @2635 @260 +@2690 := @2684 @2488 +@2691 := @2658 @40 +@2692 := @2593 @2650 +@2697 := {ts : @148} -> (h : @2466) -> (hs : @2691) -> @143 @2692 @260 +@2698 := @2690 @114 +@2699 := @2493 @2657 +@2700 := @143 @2699 +@2703 := (h : @2470) -> (hs : @2665) -> @2700 @115 +@2704 := @2698 @2468 +@2705 := @2491 @2663 +@2707 := @143 @2705 @115 +@2708 := (hs : @2669) -> @2707 +@2709 := @2704 @2667 +@2711 := @143 @2490 @115 +@2712 := @221 @2463 +@2713 := @13 @2632 +@2714 := @2713 @38 +@2715 := #10 +@2716 := @29 @2715 +@2717 := @96 @2716 +@2719 := @143 (@2717 @36) +@2725 := {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @2714) -> (hs : @225) -> @2719 @171 +@2726 := @2712 @31 +@2727 := @2671 @31 +@2732 := {vs : @147} -> {ts : @148} -> (h : @2727) -> (hs : @225) -> @2677 @260 +@2733 := @2726 @2490 +@2734 := @2700 @40 +@2735 := @2633 @2692 +@2740 := {ts : @148} -> (h : @2462) -> (hs : @2734) -> @143 @2735 @260 +@2741 := @2733 @115 +@2742 := @2593 @2699 +@2743 := @143 @2742 +@2746 := (h : @2466) -> (hs : @2707) -> @2743 @116 +@2747 := @2741 @2464 +@2748 := @2493 @2705 +@2750 := @143 @2748 @116 +@2751 := (hs : @2711) -> @2750 +@2752 := @2747 @2709 +@2754 := @143 @2492 @116 +@2755 := @221 @2459 +@2757 := @13 @2674 @38 +@2758 := #11 +@2759 := @29 @2758 +@2760 := @96 @2759 +@2768 := {t : @92} -> + {vs : @147} -> {ts : @148} -> (h : @2757) -> (hs : @225) -> @143 (@2760 @36) @171 +@2769 := @2755 @31 +@2775 := {vs : @147} -> {ts : @148} -> (h : @2713 @31) -> (hs : @225) -> @2719 @260 +@2776 := @2769 @2492 +@2777 := @2743 @40 +@2778 := @2675 @2735 +@2779 := @143 @2778 +@2783 := {ts : @148} -> (h : @2727) -> (hs : @2777) -> @2779 @260 +@2784 := @2776 @116 +@2785 := @2633 @2742 +@2786 := @143 @2785 +@2789 := (h : @2462) -> (hs : @2750) -> @2786 @117 +@2790 := @2784 @2460 +@2791 := @2593 @2748 +@2792 := @143 @2791 +@2794 := (hs : @2754) -> @2792 @117 +@2795 := @2790 @2752 +@2796 := @143 @2494 +@2797 := @2796 @117 +@2798 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.denote +@2804 := @2798 @149 @151 @153 @36 @38 @40 +@2805 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.__fits_0 +@2811 := @2805 @149 @151 @153 @36 @38 @40 +@2819 := @29 (Reasoning.Main.triageSteps @149 @151 @153 @36 @38 @40) +@2826 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.root @149 @151 @153 @36 @38 @40 +@2827 := Bool +@2828 := Ne.{1} +@2829 := LexLeanPreservation.Obs +@2830 := @2828 @2829 +@2831 := LexLeanPreservation.Rel +@2834 := @2830 (@2831 @40 @4) +@2835 := LexLeanPreservation.Obs.stuck +@2838 := (f : @2827) -> (v : @91) -> @2834 @2835 +@2840 := LexLeanPreservation.Rust.rel_ne_stuck @2811 +@2851 := (v : @91) -> @2830 (@2831 (@2805 @157 @149 @151 @153 @36 @38) @4) @2835 +@2852 := @2840 @2819 +@2856 := @2830 (@2831 @2811 @2819) @2835 +@2857 := @146 @2497 +@2858 := LexLeanPreservation.Rust.FunSem +@2864 := (n : @35) -> @2858 @2673 @163 @157 @4 @149 +@2865 := @596 @2528 +@2866 := @595 @2865 +@2873 := LexLeanRuntime.index (@146 @2528) @2528 (LexLeanRuntime.instIndexableList @2528) +@2877 := @2866 (@2873 (@2529 @2673) @149) +@2878 := @604 @2528 +@2879 := @2878 @151 +@2880 := @2877 @2879 +@2884 := @118 @2715 @2673 @163 @151 +@2885 := LexLeanTarget.TargetSyntax.Function.types +@2886 := @2885 @149 +@2887 := @2884 @2886 +@2888 := @596 @2857 +@2889 := @595 @2888 +@2890 := LexLeanTarget.TargetSemantics.bindAll +@2891 := LexLeanTarget.TargetSyntax.Function.parameters +@2896 := @2889 (@2890 (@2891 @157) @149 @2513) +@2897 := @604 @2857 +@2898 := @2897 @151 +@2899 := @2896 @2898 +@2900 := @596 @2827 +@2901 := @595 @2900 +@2902 := LexLeanPreservation.Rust.fnFallible +@2905 := @2901 (@2902 @2758 @2673) +@2906 := @604 @2827 +@2907 := @2906 @151 +@2908 := @2905 @2907 +@2909 := LexLeanPreservation.RunConv +@2910 := #13 +@2914 := @2909 @2910 @2715 @163 @151 +@2916 := @2830 @149 @2835 +@2917 := Exists.{1} +@2918 := LexLeanPreservation.Rust.ROut +@2919 := @2917 @2918 +@2920 := And +@2921 := LexLeanPreservation.Rust.RealizesFn +@2925 := @2920 (@2921 @2673 @163 @4) +@2926 := LexLeanPreservation.Rust.RCI +@2927 := #15 +@2928 := @2926 @2927 +@2929 := LexLeanPreservation.Rust.fnIdent +@2930 := @2929 @2910 +@2937 := (hne : @2916) -> @2919 (fun (ro : @2918) => @2925 (@2928 @2930 @2758 @4)) +@2952 := {p : @32} -> + {c : @33} -> + {A : @34} -> + {f : @35} -> + {fn : @2528} -> + {args : @147} -> + {env : @2857} -> + {F : @2827} -> + {o : @2829} -> + (hB : @2864) -> + (hfn : @2880) -> (hwt : @2887) -> (hbind : @2899) -> (hF : @2908) -> (hA : @2914) -> @2937 +@2954 := LexLeanPreservation.Rust.compose @0 +@2955 := @2858 @0 +@2960 := (n : @35) -> @2955 @163 @157 @4 @149 +@2961 := @2873 @2530 +@2964 := @2866 (@2961 @149) @2879 +@2968 := @129 @2673 @163 @151 @2886 +@2969 := @2909 @0 +@2972 := @2969 @2715 @163 @151 +@2986 := {c : @33} -> + {A : @34} -> + {f : @35} -> + {fn : @2528} -> + {args : @147} -> + {env : @2857} -> + {F : @2827} -> + {o : @2829} -> + (hB : @2960) -> + (hfn : @2964) -> (hwt : @2968) -> (hbind : @2899) -> (hF : @2908) -> (hA : @2972) -> @2937 +@2987 := @2954 @1 +@2988 := @2955 @1 +@2992 := (n : @35) -> @2988 @157 @4 @149 +@2995 := @137 @163 @151 @2886 +@2996 := @2902 @1 +@2999 := @2901 (@2996 @2673) @2907 +@3000 := @2926 @1 +@3010 := (hbind : @2899) -> + (hF : @2999) -> + (hA : @2972) -> (hne : @2916) -> @2919 (fun (ro : @2918) => @2925 (@3000 @2930 @2758 @4)) +@3020 := {A : @34} -> + {f : @35} -> + {fn : @2528} -> + {args : @147} -> + {env : @2857} -> + {F : @2827} -> {o : @2829} -> (hB : @2992) -> (hfn : @2964) -> (hwt : @2995) -> @3010 +@3021 := @2987 @2 +@3023 := @2988 @2 @4 +@3025 := (n : @35) -> @3023 @149 +@3026 := @143 @151 +@3027 := @3026 @2886 +@3036 := {f : @35} -> + {fn : @2528} -> + {args : @147} -> + {env : @2857} -> + {F : @2827} -> {o : @2829} -> (hB : @3025) -> (hfn : @2964) -> (hwt : @3027) -> @3010 +@3037 := @3021 @9 +@3039 := (n : @35) -> @3023 @9 +@3040 := @2961 @9 +@3041 := @2866 @3040 +@3042 := @3041 @2879 +@3043 := @2996 @9 +@3044 := @2901 @3043 +@3045 := @3044 @2907 +@3046 := @2969 @9 +@3048 := @3046 @163 @151 +@3050 := @3000 (@2929 @9) +@3058 := (hF : @3045) -> + (hA : @3048) -> (hne : @2916) -> @2919 (fun (ro : @2918) => @2925 (@3050 @2758 @4)) +@3067 := {fn : @2528} -> + {args : @147} -> + {env : @2857} -> + {F : @2827} -> + {o : @2829} -> (hB : @3039) -> (hfn : @3042) -> (hwt : @3027) -> (hbind : @2899) -> @3058 +@3068 := @3037 @2546 +@3070 := @3041 (@2878 @2546) +@3071 := @2885 @2546 +@3072 := @3026 @3071 +@3074 := @2890 (@2891 @2546) +@3086 := {args : @147} -> + {env : @2857} -> + {F : @2827} -> + {o : @2829} -> + (hB : @3039) -> + (hfn : @3070) -> (hwt : @3072) -> (hbind : @2889 (@3074 @149 @2513) @2898) -> @3058 +@3087 := @3068 @2494 +@3093 := @2760 (@2717 (@2675 (@2633 (@2593 (@2493 @95))))) +@3095 := @143 @3093 @3071 +@3096 := #12 +@3098 := @96 (@29 @3096) +@3104 := @3098 (@2760 (@2717 (@2675 (@2633 (@2593 @95))))) +@3108 := @2889 (@3074 @3104 @2513) @2898 +@3109 := #14 +@3111 := @96 (@29 @3109) +@3113 := @96 (@29 @2910) +@3119 := @3111 (@3113 (@3098 (@2760 (@2717 (@2675 @95))))) +@3121 := @3046 @3119 @151 +@3124 := @96 (@29 #17) +@3127 := @96 (@29 #16) +@3129 := @96 (@29 @2927) +@3150 := {env : @2857} -> + {F : @2827} -> + {o : @2829} -> + (hB : @3039) -> + (hfn : @3070) -> + (hwt : @3095) -> + (hbind : @3108) -> + (hF : @3045) -> + (hA : @3121) -> + (hne : @2916) -> + @2919 (fun (ro : @2918) => @2925 (@3050 (@3124 (@3127 (@3129 (@3111 (@3113 (@3098 @95)))))) @4)) +@3151 := @3087 @2526 +@3157 := @2717 (@2675 (@2633 (@2593 (@2493 (@2491 @95))))) +@3159 := @143 @3157 @3071 +@3182 := @2889 + (@3074 @3093 @2513) + (@2897 + (@2514 + (@2501 @2459) + (@2514 + (@2503 @2592) + (@2514 + (@2505 @2632) + (@2514 (@2507 @2674) (@2514 (@2509 @2716) (@2514 (@2511 @2759) @2513))))))) +@3188 := @3113 (@3098 (@2760 (@2717 (@2675 (@2633 @95))))) +@3210 := {F : @2827} -> + {o : @2829} -> + (hB : @3039) -> + (hfn : @3070) -> + (hwt : @3159) -> + (hbind : @3182) -> + (hF : @3045) -> + (hA : @3046 @3188 @151) -> + (hne : @2916) -> + @2919 (fun (ro : @2918) => @2925 (@3050 (@3127 (@3129 (@3111 (@3113 (@3098 (@2760 @95)))))) @4)) +@3211 := @3151 @2527 +@3212 := @2779 @3071 +@3235 := @2889 + (@3074 @3157 @2513) + (@2897 + (@2514 + (@2501 @2463) + (@2514 + (@2503 @2459) + (@2514 + (@2505 @2592) + (@2514 (@2507 @2632) (@2514 (@2509 @2674) (@2514 (@2511 @2716) @2513))))))) +@3237 := @3044 (@2906 @2527) +@3239 := @3046 @3104 @151 +@3240 := @2921 @2527 +@3262 := {o : @2829} -> + (hB : @3039) -> + (hfn : @3070) -> + (hwt : @3212) -> + (hbind : @3235) -> + (hF : @3237) -> + (hA : @3239) -> + (hne : @2916) -> + @2919 + (fun (ro : @2918) => + @2920 (@3240 @163 @4) (@3050 (@3129 (@3111 (@3113 (@3098 (@2760 (@2717 @95)))))) @4)) +@3263 := @3211 @2804 +@3264 := @2786 @3071 +@3287 := @2889 + (@3074 @2778 @2513) + (@2897 + (@2514 + (@2501 @2467) + (@2514 + (@2503 @2463) + (@2514 + (@2505 @2459) + (@2514 (@2507 @2592) (@2514 (@2509 @2632) (@2514 (@2511 @2674) @2513))))))) +@3288 := @3046 @3093 +@3294 := @2798 @2758 @2715 @2673 @163 @157 @149 +@3295 := @3288 @3294 +@3301 := @2798 @3096 @2758 @2715 @2673 @163 @157 +@3324 := (hB : @3039) -> + (hfn : @3070) -> + (hwt : @3264) -> + (hbind : @3287) -> + (hF : @3237) -> + (hA : @3295) -> + (hne : @2830 @3301 @2835) -> + @2919 + (fun (ro : @2918) => + @2920 (@3240 (@2798 @3109 @2910 @3096 @2758 @2715 @2673) @4) (@3050 @3119 @4)) +@3325 := @3263 @2550 +@3326 := @2792 @3071 +@3349 := @2889 + (@3074 @2785 @2513) + (@2897 + (@2514 + (@2501 @2471) + (@2514 + (@2503 @2467) + (@2514 + (@2505 @2463) + (@2514 (@2507 @2459) (@2514 (@2509 @2592) (@2514 (@2511 @2632) @2513))))))) +@3350 := @3046 @3157 +@3356 := @2798 @2715 @2673 @163 @157 @149 @151 +@3379 := (hfn : @3070) -> + (hwt : @3326) -> + (hbind : @3349) -> + (hF : @3237) -> + (hA : @3350 @3356) -> + (hne : @2830 @3294 @2835) -> + @2919 + (fun (ro : @2918) => + @2920 (@3240 (@2798 @2910 @3096 @2758 @2715 @2673 @163) @4) (@3050 @3188 @4)) +@3382 := @3325 (@704 @2865 @3040) +@3383 := @2796 @3071 +@3406 := @2889 + (@3074 @2791 @2513) + (@2897 + (@2514 + (@2501 @2475) + (@2514 + (@2503 @2471) + (@2514 + (@2505 @2467) + (@2514 (@2507 @2463) (@2514 (@2509 @2459) (@2514 (@2511 @2592) @2513))))))) +@3407 := @3046 @2778 +@3413 := @2798 @2673 @163 @157 @149 @151 @153 +@3429 := (hwt : @3383) -> + (hbind : @3406) -> + (hF : @3237) -> + (hA : @3407 @3413) -> + (hne : @2830 @3356 @2835) -> @2919 (fun (ro : @2918) => @2920 (@3240 @3301 @4) (@3050 @3104 @4)) +@3430 := @3382 @2795 +@3432 := @3074 @2494 @2513 +@3435 := @2889 @3432 (@2897 @2526) +@3436 := @3046 @2785 +@3442 := @2798 @163 @157 @149 @151 @153 @36 +@3457 := (hbind : @3435) -> + (hF : @3237) -> + (hA : @3436 @3442) -> + (hne : @2830 @3413 @2835) -> @2919 (fun (ro : @2918) => @2920 (@3240 @3294 @4) (@3050 @3093 @4)) +@3460 := @3430 (@704 @2888 @3432) +@3461 := @3046 @2791 +@3467 := @2798 @157 @149 @151 @153 @36 @38 +@3481 := (hF : @3237) -> + (hA : @3461 @3467) -> + (hne : @2830 @3442 @2835) -> @2919 (fun (ro : @2918) => @2920 (@3240 @3356 @4) (@3050 @3157 @4)) +@3484 := @3460 (@704 @2900 @3043) +@3498 := (hA : @3046 @2494 @2804) -> + (hne : @2830 @3467 @2835) -> @2919 (fun (ro : @2918) => @2920 (@3240 @3413 @4) (@3050 @2778 @4)) +@3499 := @3484 @2826 +@3510 := (hne : @2830 @2804 @2835) -> + @2919 (fun (ro : @2918) => @2920 (@3240 @3442 @4) (@3050 @2785 @4)) +@3511 := @3499 @2852 +@3517 := @2920 (@3240 @3467 @4) (@3050 @2791 @4) +@3519 := @2919 (fun (ro : @2918) => @3517) +@3521 := @2919 (fun (__e_ro : @2918) => @3517) +@3530 := LexLeanPreservation.Rust.RepresentableL + (@2491 (@2489 (@2487 (@2485 (@2483 (@96 @42 @95)))))) +@3531 := (__e_hrep : @3530) -> @3521 +@3532 := fun (__e_hrep : @3530) => @3511 +@3533 := (infection : @35) -> @3531 +@3534 := fun (infection : @35) => @3532 +@3535 := (systolic : @35) -> @3533 +@3536 := fun (systolic : @35) => @3534 +@3537 := (whiteCells : @35) -> @3535 +@3538 := fun (whiteCells : @35) => @3536 +@3539 := (respiratoryRate : @35) -> @3537 +@3540 := fun (respiratoryRate : @35) => @3538 +@3541 := (heartRate : @35) -> @3539 +@3542 := fun (heartRate : @35) => @3540 +@3543 := (temperature : @35) -> @3541 +@3544 := fun (temperature : @35) => @3542 +\end{coremodule} +\end{lexlean} diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R2/RustStd.lean b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R2/RustStd.lean new file mode 100644 index 000000000..f26edfc56 --- /dev/null +++ b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R2/RustStd.lean @@ -0,0 +1,380 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [{ constructors := [[.nat, .nat, .nat, .nat, .nat, .nat]] }, + { constructors := [[], [], [], [], [], [], [], []] }, + { constructors := [[(.adt 3), (.list (.adt 1)), (.adt 4)]] }, + { constructors := [[(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]] }, + { constructors := [[.nat, .nat, .nat, .nat, .nat, .nat]] }], functions := (( + { parameters := [0, 1, 2, 3, 4, 5], types := [.nat, .nat, .nat, .nat, .nat, .nat], result := .nat, + body := (.«match» .nat (.call 1 [(.build (.adt 0) (.adt 0) [(.var 0), (.var 1), (.var 2), (.var 3), (.var 4), (.var 5)])]) [(.arm .ok [6] (.prim .length [(.second (.var 6))])), (.arm .error [7] (.value .nat (.nat 0)))]) }) ::( + { parameters := [0], types := [(.adt 0)], result := (.result (.pair .nat (.list (.adt 1))) (.pair .bool .bool)), + body := (.«let» 1 (.pair (.adt 2) .bool) (.call 2 [(.var 0)]) (.«match» (.result (.pair .nat (.list (.adt 1))) (.pair .bool .bool)) (.second (.var 1)) [(.arm .true [] (.«match» (.result (.pair .nat (.list (.adt 1))) (.pair .bool .bool)) (.call 3 [(.var 0), (.field (.first (.var 1)) 0)]) [(.arm .ok [2] (.build .ok (.result (.pair .nat (.list (.adt 1))) (.pair .bool .bool)) [(.build .pair (.pair .nat (.list (.adt 1))) [(.var 2), (.field (.first (.var 1)) 1)])])), (.arm .error [3] (.build .error (.result (.pair .nat (.list (.adt 1))) (.pair .bool .bool)) [(.var 3)]))])), (.arm .false [] (.build .error (.result (.pair .nat (.list (.adt 1))) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])]))])) }) ::( + { parameters := [0], types := [(.adt 0)], result := (.pair (.adt 2) .bool), + body := (.call 4 [(.closure 5 []), (.value .nat (.nat 11)), (.call 6 [(.var 0)])]) }) ::( + { parameters := [0, 1], types := [(.adt 0), (.adt 3)], result := (.result .nat (.pair .bool .bool)), + body := (.«match» (.result .nat (.pair .bool .bool)) (.call 7 [(.var 0), (.var 1)]) [(.arm .some [2] (.build .ok (.result .nat (.pair .bool .bool)) [(.var 2)])), (.arm .none [] (.«match» (.result .nat (.pair .bool .bool)) (.call 8 [(.var 1)]) [(.arm .some [3] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])])])), (.arm .none [] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])])]))]))]) }) ::( + { parameters := [0, 1, 2], types := [(.fn [(.adt 2)] (.option (.adt 2))), .nat, (.adt 2)], result := (.pair (.adt 2) .bool), + body := (.«match» (.pair (.adt 2) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.adt 2) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.adt 2) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.adt 2) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 4 [(.var 0), (.var 3), (.var 4)]))]))]) }) ::( + { parameters := [0], types := [(.adt 2)], result := (.option (.adt 2)), + body := (.«match» (.option (.adt 2)) (.call 9 [(.field (.var 0) 0)]) [(.arm .none [] (.build .none (.option (.adt 2)) [])), (.arm .some [1] (.«match» (.option (.adt 2)) (.call 10 [(.field (.var 0) 0), (.var 1)]) [(.arm .none [] (.build .none (.option (.adt 2)) [])), (.arm .some [2] (.build .some (.option (.adt 2)) [(.build (.adt 0) (.adt 2) [(.var 2), (.prim .append [(.field (.var 0) 1), (.build .cons (.list (.adt 1)) [(.var 1), (.build .nil (.list (.adt 1)) [])])]), (.build (.adt 0) (.adt 4) [(.prim .natAdd [(.field (.field (.var 0) 2) 0), (.value .nat (.nat 1))]), (.prim .natAdd [(.field (.field (.var 0) 2) 1), (.call 11 [(.field (.var 0) 0)])]), (.prim .natAdd [(.field (.field (.var 0) 2) 2), (.value .nat (.nat 1))]), (.field (.field (.var 0) 2) 3), (.field (.field (.var 0) 2) 4), (.field (.field (.var 0) 2) 5)])])]))]))]) }) ::( + { parameters := [0], types := [(.adt 0)], result := (.adt 2), + body := (.build (.adt 0) (.adt 2) [(.call 12 [(.var 0)]), (.build .nil (.list (.adt 1)) []), (.build (.adt 0) (.adt 4) [(.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0))])]) }) ::( + { parameters := [0, 1], types := [(.adt 0), (.adt 3)], result := (.option .nat), + body := (.«match» (.option .nat) (.call 8 [(.var 1)]) [(.arm .none [] (.build .none (.option .nat) [])), (.arm .some [2] (.cond (.call 13 [(.var 0), (.var 2)]) (.build .some (.option .nat) [(.var 2)]) (.build .none (.option .nat) [])))]) }) ::( + { parameters := [0], types := [(.adt 3)], result := (.option .nat), + body := (.build .some (.option .nat) [(.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 3)], result := (.option (.adt 1)), + body := (.«match» (.option (.adt 1)) (.«match» (.option (.adt 1)) (.«match» (.option (.adt 1)) (.cond (.call 14 [(.var 0)]) (.build .some (.option (.adt 1)) [(.build (.adt 0) (.adt 1) [])]) (.build .none (.option (.adt 1)) [])) [(.arm .some [1] (.build .some (.option (.adt 1)) [(.var 1)])), (.arm .none [] (.cond (.call 15 [(.var 0)]) (.build .some (.option (.adt 1)) [(.build (.adt 1) (.adt 1) [])]) (.build .none (.option (.adt 1)) [])))]) [(.arm .some [2] (.build .some (.option (.adt 1)) [(.var 2)])), (.arm .none [] (.«match» (.option (.adt 1)) (.cond (.call 16 [(.var 0)]) (.build .some (.option (.adt 1)) [(.build (.adt 2) (.adt 1) [])]) (.build .none (.option (.adt 1)) [])) [(.arm .some [3] (.build .some (.option (.adt 1)) [(.var 3)])), (.arm .none [] (.cond (.call 17 [(.var 0)]) (.build .some (.option (.adt 1)) [(.build (.adt 3) (.adt 1) [])]) (.build .none (.option (.adt 1)) [])))]))]) [(.arm .some [4] (.build .some (.option (.adt 1)) [(.var 4)])), (.arm .none [] (.«match» (.option (.adt 1)) (.«match» (.option (.adt 1)) (.cond (.call 18 [(.var 0)]) (.build .some (.option (.adt 1)) [(.build (.adt 4) (.adt 1) [])]) (.build .none (.option (.adt 1)) [])) [(.arm .some [5] (.build .some (.option (.adt 1)) [(.var 5)])), (.arm .none [] (.cond (.call 19 [(.var 0)]) (.build .some (.option (.adt 1)) [(.build (.adt 5) (.adt 1) [])]) (.build .none (.option (.adt 1)) [])))]) [(.arm .some [6] (.build .some (.option (.adt 1)) [(.var 6)])), (.arm .none [] (.«match» (.option (.adt 1)) (.cond (.call 20 [(.var 0)]) (.build .some (.option (.adt 1)) [(.build (.adt 6) (.adt 1) [])]) (.build .none (.option (.adt 1)) [])) [(.arm .some [7] (.build .some (.option (.adt 1)) [(.var 7)])), (.arm .none [] (.cond (.call 21 [(.var 0)]) (.build .some (.option (.adt 1)) [(.build (.adt 7) (.adt 1) [])]) (.build .none (.option (.adt 1)) [])))]))]))]) }) ::( + { parameters := [0, 1], types := [(.adt 3), (.adt 1)], result := (.option (.adt 3)), + body := (.«match» (.option (.adt 3)) (.var 1) [(.arm (.adt 0) [] (.call 22 [(.var 0)])), (.arm (.adt 1) [] (.call 23 [(.var 0)])), (.arm (.adt 2) [] (.call 24 [(.var 0)])), (.arm (.adt 3) [] (.call 25 [(.var 0)])), (.arm (.adt 4) [] (.call 26 [(.var 0)])), (.arm (.adt 5) [] (.call 27 [(.var 0)])), (.arm (.adt 6) [] (.call 28 [(.var 0)])), (.arm (.adt 7) [] (.call 29 [(.var 0)]))]) }) ::( + { parameters := [0], types := [(.adt 3)], result := .nat, + body := (.second (.«let» 7 (.pair .bool .nat) (.«let» 3 (.pair .bool .nat) (.«let» 1 (.pair .bool .nat) (.build .pair (.pair .bool .nat) [(.call 14 [(.var 0)]), (.value .nat (.nat 1))]) (.cond (.first (.var 1)) (.var 1) (.«let» 2 (.pair .bool .nat) (.build .pair (.pair .bool .nat) [(.call 15 [(.var 0)]), (.value .nat (.nat 1))]) (.build .pair (.pair .bool .nat) [(.first (.var 2)), (.prim .natAdd [(.second (.var 1)), (.second (.var 2))])])))) (.cond (.first (.var 3)) (.var 3) (.«let» 6 (.pair .bool .nat) (.«let» 4 (.pair .bool .nat) (.build .pair (.pair .bool .nat) [(.call 16 [(.var 0)]), (.value .nat (.nat 1))]) (.cond (.first (.var 4)) (.var 4) (.«let» 5 (.pair .bool .nat) (.build .pair (.pair .bool .nat) [(.call 17 [(.var 0)]), (.value .nat (.nat 1))]) (.build .pair (.pair .bool .nat) [(.first (.var 5)), (.prim .natAdd [(.second (.var 4)), (.second (.var 5))])])))) (.build .pair (.pair .bool .nat) [(.first (.var 6)), (.prim .natAdd [(.second (.var 3)), (.second (.var 6))])])))) (.cond (.first (.var 7)) (.var 7) (.«let» 14 (.pair .bool .nat) (.«let» 10 (.pair .bool .nat) (.«let» 8 (.pair .bool .nat) (.build .pair (.pair .bool .nat) [(.call 18 [(.var 0)]), (.value .nat (.nat 1))]) (.cond (.first (.var 8)) (.var 8) (.«let» 9 (.pair .bool .nat) (.build .pair (.pair .bool .nat) [(.call 19 [(.var 0)]), (.value .nat (.nat 1))]) (.build .pair (.pair .bool .nat) [(.first (.var 9)), (.prim .natAdd [(.second (.var 8)), (.second (.var 9))])])))) (.cond (.first (.var 10)) (.var 10) (.«let» 13 (.pair .bool .nat) (.«let» 11 (.pair .bool .nat) (.build .pair (.pair .bool .nat) [(.call 20 [(.var 0)]), (.value .nat (.nat 1))]) (.cond (.first (.var 11)) (.var 11) (.«let» 12 (.pair .bool .nat) (.build .pair (.pair .bool .nat) [(.call 21 [(.var 0)]), (.value .nat (.nat 1))]) (.build .pair (.pair .bool .nat) [(.first (.var 12)), (.prim .natAdd [(.second (.var 11)), (.second (.var 12))])])))) (.build .pair (.pair .bool .nat) [(.first (.var 13)), (.prim .natAdd [(.second (.var 10)), (.second (.var 13))])])))) (.build .pair (.pair .bool .nat) [(.first (.var 14)), (.prim .natAdd [(.second (.var 7)), (.second (.var 14))])]))))) }) ::( + { parameters := [0], types := [(.adt 0)], result := (.adt 3), + body := (.build (.adt 0) (.adt 3) [(.var 0), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0))]) }) ::( + { parameters := [0, 1], types := [(.adt 0), .nat], result := .bool, + body := (.cond (.prim .natLe [(.var 1), (.value .nat (.nat 3))]) (.cond (.prim .natEq [(.var 1), (.value .nat (.nat 3))]) (.build .true .bool []) (.prim .boolNot [(.cond (.call 30 [(.var 0)]) (.cond (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 1))]) (.cond (.call 31 [(.var 0)]) (.call 32 [(.var 0)]) (.build .false .bool [])) (.build .false .bool [])) (.build .false .bool []))])) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 3)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 1), (.value .nat (.nat 0))]) (.call 31 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 3)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 2), (.value .nat (.nat 0))]) (.call 32 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 3)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 3), (.value .nat (.nat 0))]) (.call 33 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 3)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 4), (.value .nat (.nat 0))]) (.call 34 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 3)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 0))]) (.prim .natLe [(.value .nat (.nat 2)), (.prim .natAdd [(.prim .natAdd [(.prim .natAdd [(.field (.var 0) 1), (.field (.var 0) 2)]), (.field (.var 0) 3)]), (.field (.var 0) 4)])]) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 3)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 0))]) (.cond (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 1))]) (.prim .natEq [(.field (.field (.var 0) 0) 5), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 3)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 7), (.value .nat (.nat 0))]) (.cond (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 1))]) (.call 30 [(.field (.var 0) 0)]) (.build .false .bool [])) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 3)], result := .bool, + body := (.cond (.prim .natLt [(.field (.var 0) 8), (.value .nat (.nat 3))]) (.cond (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 0))]) (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .true .bool []) (.cond (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 1))]) (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .true .bool []) (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 2))]) (.prim .natEq [(.field (.var 0) 7), (.value .nat (.nat 1))]) (.build .false .bool [])))) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 3)], result := (.option (.adt 3)), + body := (.cond (.call 14 [(.var 0)]) (.build .some (.option (.adt 3)) [(.call 35 [(.var 0)])]) (.build .none (.option (.adt 3)) [])) }) ::( + { parameters := [0], types := [(.adt 3)], result := (.option (.adt 3)), + body := (.cond (.call 15 [(.var 0)]) (.build .some (.option (.adt 3)) [(.call 36 [(.var 0)])]) (.build .none (.option (.adt 3)) [])) }) ::( + { parameters := [0], types := [(.adt 3)], result := (.option (.adt 3)), + body := (.cond (.call 16 [(.var 0)]) (.build .some (.option (.adt 3)) [(.call 37 [(.var 0)])]) (.build .none (.option (.adt 3)) [])) }) ::( + { parameters := [0], types := [(.adt 3)], result := (.option (.adt 3)), + body := (.cond (.call 17 [(.var 0)]) (.build .some (.option (.adt 3)) [(.call 38 [(.var 0)])]) (.build .none (.option (.adt 3)) [])) }) ::( + { parameters := [0], types := [(.adt 3)], result := (.option (.adt 3)), + body := (.cond (.call 18 [(.var 0)]) (.build .some (.option (.adt 3)) [(.call 39 [(.var 0)])]) (.build .none (.option (.adt 3)) [])) }) ::( + { parameters := [0], types := [(.adt 3)], result := (.option (.adt 3)), + body := (.cond (.call 19 [(.var 0)]) (.build .some (.option (.adt 3)) [(.call 40 [(.var 0)])]) (.build .none (.option (.adt 3)) [])) }) ::( + { parameters := [0], types := [(.adt 3)], result := (.option (.adt 3)), + body := (.cond (.call 20 [(.var 0)]) (.build .some (.option (.adt 3)) [(.call 41 [(.var 0)])]) (.build .none (.option (.adt 3)) [])) }) ::( + { parameters := [0], types := [(.adt 3)], result := (.option (.adt 3)), + body := (.cond (.call 21 [(.var 0)]) (.build .some (.option (.adt 3)) [(.call 42 [(.var 0)])]) (.build .none (.option (.adt 3)) [])) }) ::( + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.prim .natLt [(.field (.var 0) 4), (.value .nat (.nat 90))]) }) ::( + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.prim .natLt [(.value .nat (.nat 380)), (.field (.var 0) 0)]) }) ::( + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.prim .natLt [(.value .nat (.nat 90)), (.field (.var 0) 1)]) }) ::( + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.prim .natLt [(.value .nat (.nat 20)), (.field (.var 0) 2)]) }) ::( + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.prim .natLt [(.value .nat (.nat 12)), (.field (.var 0) 3)]) }) ::( + { parameters := [0], types := [(.adt 3)], result := (.adt 3), + body := (.build (.adt 0) (.adt 3) [(.field (.var 0) 0), (.value .nat (.nat 1)), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 3)], result := (.adt 3), + body := (.build (.adt 0) (.adt 3) [(.field (.var 0) 0), (.field (.var 0) 1), (.value .nat (.nat 1)), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 3)], result := (.adt 3), + body := (.build (.adt 0) (.adt 3) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.value .nat (.nat 1)), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 3)], result := (.adt 3), + body := (.build (.adt 0) (.adt 3) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.value .nat (.nat 1)), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 3)], result := (.adt 3), + body := (.build (.adt 0) (.adt 3) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.value .nat (.nat 1)), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 3)], result := (.adt 3), + body := (.build (.adt 0) (.adt 3) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.value .nat (.nat 1)), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 3)], result := (.adt 3), + body := (.build (.adt 0) (.adt 3) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.value .nat (.nat 1)), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 3)], result := (.adt 3), + body := (.build (.adt 0) (.adt 3) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.prim .natAdd [(.field (.var 0) 8), (.value .nat (.nat 1))])]) }) ::[]) } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := ((.enum (.adt 0) [{ number := 0, fields := [.nat, .nat, .nat, .nat, .nat, .nat] }]) :: + (.enum (.adt 1) [{ number := 0, fields := [] }, { number := 1, fields := [] }, { number := 2, fields := [] }, { number := 3, fields := [] }, { number := 4, fields := [] }, { number := 5, fields := [] }, { number := 6, fields := [] }, { number := 7, fields := [] }]) :: + (.enum (.adt 2) [{ number := 0, fields := [(.adt 3), (.list (.adt 1)), (.adt 4)] }]) :: + (.enum (.adt 3) [{ number := 0, fields := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat] }]) :: + (.enum (.adt 4) [{ number := 0, fields := [.nat, .nat, .nat, .nat, .nat, .nat] }]) :: + (.enum (.fn 0) [{ number := 5, fields := [] }]) :: + (.apply 0 [(.adt 2)] (.option (.adt 2)) true [{ function := 5, captures := [], functionFallible := true }]) :: + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := .nat }, { pattern := (.bind (.generated .binding 3)), type := .nat }, { pattern := (.bind (.generated .binding 4)), type := .nat }, { pattern := (.bind (.generated .binding 5)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 1)) none (.call (.function 1) [(.construct (.adt 0 0) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1)), (.copy (.generated .binding 2)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4)), (.copy (.generated .binding 5))])] true))] (.matchOn (.move (.generated .holder 1)) [(.mk (.ok (.bind (.generated .binding 6))) (.mk [(.mk (.bind (.generated .operand 3)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 2))]) none (.move (.generated .binding 6)))] (.move (.generated .part 2)))))] (.succeed (.call (.runtime .lengthList) [(.move (.generated .operand 3))] false)))), (.mk (.err .wild) (.mk [] (.succeed (.lit (.nat 0)))))]))) :: + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible (.result (.pair .nat (.list (.adt 1))) (.pair .bool .bool))) (.mk [(.mk (.bind (.generated .binding 1)) (some (.pair (.adt 2) .bool)) (.call (.function 2) [(.clone (.generated .binding 0))] true)), (.mk (.bind (.generated .holder 5)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 4))]) none (.clone (.generated .binding 1)))] (.move (.generated .part 4)))))] (.cond (.move (.generated .holder 5)) (.mk [(.mk (.bind (.generated .holder 9)) none (.call (.function 3) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .holder 8)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 7)), .wild]) none (.clone (.generated .binding 1)))] (.move (.generated .part 7)))))] (.matchOn (.move (.generated .holder 8)) [(.mk (.adt 2 0 [(.bind (.generated .part 6)), .wild, .wild]) (.mk [] (.move (.generated .part 6))))])))] false))] (.matchOn (.move (.generated .holder 9)) [(.mk (.ok (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct (.ok (.pair .nat (.list (.adt 1))) (.pair .bool .bool)) [(.pair (.copy (.generated .binding 2)) (.block (.mk [(.mk (.bind (.generated .holder 12)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 11)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 11)))))] (.matchOn (.move (.generated .holder 12)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 10)), .wild]) (.mk [] (.move (.generated .part 10))))]))))])))), (.mk (.err (.bind (.generated .binding 3))) (.mk [] (.succeed (.construct (.err (.pair .nat (.list (.adt 1))) (.pair .bool .bool)) [(.copy (.generated .binding 3))]))))])) (.mk [] (.succeed (.construct (.err (.pair .nat (.list (.adt 1))) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))])))))) :: + (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible (.pair (.adt 2) .bool)) (.mk [] (.call (.function 4) [(.construct (.closure 0 5) []), (.lit (.nat 11)), (.call (.function 6) [(.move (.generated .binding 0))] false)] false))) :: + (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 3) }] (.result .nat (.pair .bool .bool)) (.mk [(.mk (.bind (.generated .holder 13)) none (.call (.function 7) [(.move (.generated .binding 0)), (.clone (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 14)) none (.call (.function 8) [(.move (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 14)) [(.mk .none (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))]))), (.mk (.some .wild) (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))])))]))) :: + (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := (.adt 2) }] (.fallible (.pair (.adt 2) .bool)) (.mk [(.mk (.bind (.generated .holder 15)) none (.copy (.generated .binding 1)))] (.cond (.isZero (.generated .holder 15)) (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 15))), (.mk (.bind (.generated .holder 17)) none (.block (.mk [(.mk (.bind (.generated .callee 16)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 16) [(.clone (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 17)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))]))))) :: + (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 2) }] (.fallible (.option (.adt 2))) (.mk [(.mk (.bind (.generated .holder 19)) none (.call (.function 9) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [(.bind (.generated .part 18)), .wild, .wild]) (.mk [] (.move (.generated .part 18))))])] true))] (.matchOn (.move (.generated .holder 19)) [(.mk .none (.mk [] (.succeed (.construct (.none (.adt 2)) [])))), (.mk (.some (.bind (.generated .binding 1))) (.mk [(.mk (.bind (.generated .holder 21)) none (.call (.function 10) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [(.bind (.generated .part 20)), .wild, .wild]) (.mk [] (.move (.generated .part 20))))]), (.clone (.generated .binding 1))] true))] (.matchOn (.move (.generated .holder 21)) [(.mk .none (.mk [] (.succeed (.construct (.none (.adt 2)) [])))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct .some [(.construct (.adt 2 0) [(.move (.generated .binding 2)), (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 22)), .wild]) (.mk [] (.move (.generated .part 22))))])), (.mk (.bind (.generated .operand 24)) none (.construct .cons [(.move (.generated .binding 1)), (.construct (.nil (.adt 1)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))), (.construct (.adt 4 0) [(.block (.mk [(.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .holder 27)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 26))]) (.mk [] (.move (.generated .part 26))))]))] (.matchOn (.move (.generated .holder 27)) [(.mk (.adt 4 0 [(.bind (.generated .part 25)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 25))))])))), (.mk (.bind (.generated .operand 29)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 28)), (.move (.generated .operand 29))] true))), (.block (.mk [(.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.bind (.generated .holder 32)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 31))]) (.mk [] (.move (.generated .part 31))))]))] (.matchOn (.move (.generated .holder 32)) [(.mk (.adt 4 0 [.wild, (.bind (.generated .part 30)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 30))))])))), (.mk (.bind (.generated .operand 35)) none (.call (.function 11) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [(.bind (.generated .part 33)), .wild, .wild]) (.mk [] (.move (.generated .part 33))))])] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 34)), (.move (.generated .operand 35))] true))), (.block (.mk [(.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.bind (.generated .holder 38)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 37))]) (.mk [] (.move (.generated .part 37))))]))] (.matchOn (.move (.generated .holder 38)) [(.mk (.adt 4 0 [.wild, .wild, (.bind (.generated .part 36)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 36))))])))), (.mk (.bind (.generated .operand 40)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] true))), (.block (.mk [(.mk (.bind (.generated .holder 43)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 42))]) (.mk [] (.move (.generated .part 42))))]))] (.matchOn (.move (.generated .holder 43)) [(.mk (.adt 4 0 [.wild, .wild, .wild, (.bind (.generated .part 41)), .wild, .wild]) (.mk [] (.move (.generated .part 41))))]))), (.block (.mk [(.mk (.bind (.generated .holder 46)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 45))]) (.mk [] (.move (.generated .part 45))))]))] (.matchOn (.move (.generated .holder 46)) [(.mk (.adt 4 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 44)), .wild]) (.mk [] (.move (.generated .part 44))))]))), (.block (.mk [(.mk (.bind (.generated .holder 49)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 48))]) (.mk [] (.move (.generated .part 48))))]))] (.matchOn (.move (.generated .holder 49)) [(.mk (.adt 4 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 47))]) (.mk [] (.move (.generated .part 47))))])))])])]))))])))]))) :: + (.function (.generated .function 6) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.adt 2) (.mk [] (.construct (.adt 2 0) [(.call (.function 12) [(.move (.generated .binding 0))] false), (.construct (.nil (.adt 1)) []), (.construct (.adt 4 0) [(.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0))])]))) :: + (.function (.generated .function 7) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 3) }] (.option .nat) (.mk [(.mk (.bind (.generated .holder 50)) none (.call (.function 8) [(.move (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 50)) [(.mk .none (.mk [] (.construct (.none .nat) []))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.cond (.call (.function 13) [(.move (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.mk [] (.construct .some [(.copy (.generated .binding 2))])) (.mk [] (.construct (.none .nat) [])))))]))) :: + (.function (.generated .function 8) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] (.option .nat) (.mk [] (.construct .some [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 51))]) (.mk [] (.move (.generated .part 51))))])]))) :: + (.function (.generated .function 9) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] (.fallible (.option (.adt 1))) (.mk [(.mk (.bind (.generated .holder 55)) none (.block (.mk [(.mk (.bind (.generated .holder 53)) none (.block (.mk [(.mk (.bind (.generated .holder 52)) none (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 0) [])])) (.mk [] (.construct (.none (.adt 1)) []))))] (.matchOn (.move (.generated .holder 52)) [(.mk .none (.mk [] (.cond (.call (.function 15) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 1) [])])) (.mk [] (.construct (.none (.adt 1)) []))))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.construct .some [(.move (.generated .binding 1))])))]))))] (.matchOn (.move (.generated .holder 53)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 54)) none (.cond (.call (.function 16) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 2) [])])) (.mk [] (.construct (.none (.adt 1)) []))))] (.matchOn (.move (.generated .holder 54)) [(.mk .none (.mk [] (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 3) [])])) (.mk [] (.construct (.none (.adt 1)) []))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.construct .some [(.move (.generated .binding 3))])))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.construct .some [(.move (.generated .binding 2))])))]))))] (.matchOn (.move (.generated .holder 55)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 57)) none (.block (.mk [(.mk (.bind (.generated .holder 56)) none (.cond (.call (.function 18) [(.clone (.generated .binding 0))] true) (.mk [] (.construct .some [(.construct (.adt 1 4) [])])) (.mk [] (.construct (.none (.adt 1)) []))))] (.matchOn (.move (.generated .holder 56)) [(.mk .none (.mk [] (.cond (.call (.function 19) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 5) [])])) (.mk [] (.construct (.none (.adt 1)) []))))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.construct .some [(.move (.generated .binding 5))])))]))))] (.matchOn (.move (.generated .holder 57)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 58)) none (.cond (.call (.function 20) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 6) [])])) (.mk [] (.construct (.none (.adt 1)) []))))] (.matchOn (.move (.generated .holder 58)) [(.mk .none (.mk [] (.cond (.call (.function 21) [(.move (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.construct (.adt 1 7) [])]))) (.mk [] (.succeed (.construct (.none (.adt 1)) [])))))), (.mk (.some (.bind (.generated .binding 7))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 7))]))))]))), (.mk (.some (.bind (.generated .binding 6))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 6))]))))]))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 4))]))))]))) :: + (.function (.generated .function 10) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 1) }] (.fallible (.option (.adt 3))) (.mk [(.mk (.bind (.generated .holder 59)) none (.move (.generated .binding 1)))] (.matchOn (.move (.generated .holder 59)) [(.mk (.adt 1 0 []) (.mk [] (.succeed (.call (.function 22) [(.move (.generated .binding 0))] false)))), (.mk (.adt 1 1 []) (.mk [] (.succeed (.call (.function 23) [(.move (.generated .binding 0))] false)))), (.mk (.adt 1 2 []) (.mk [] (.succeed (.call (.function 24) [(.move (.generated .binding 0))] false)))), (.mk (.adt 1 3 []) (.mk [] (.succeed (.call (.function 25) [(.move (.generated .binding 0))] false)))), (.mk (.adt 1 4 []) (.mk [] (.call (.function 26) [(.move (.generated .binding 0))] false))), (.mk (.adt 1 5 []) (.mk [] (.succeed (.call (.function 27) [(.move (.generated .binding 0))] false)))), (.mk (.adt 1 6 []) (.mk [] (.succeed (.call (.function 28) [(.move (.generated .binding 0))] false)))), (.mk (.adt 1 7 []) (.mk [] (.call (.function 29) [(.move (.generated .binding 0))] false)))]))) :: + (.function (.generated .function 11) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] (.fallible .nat) (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 60))]) none (.block (.mk [(.mk (.bind (.generated .binding 7)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 3)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 1)) (some (.pair .bool .nat)) (.pair (.call (.function 14) [(.clone (.generated .binding 0))] false) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 61)), .wild]) none (.copy (.generated .binding 1)))] (.cond (.move (.generated .part 61)) (.mk [] (.copy (.generated .binding 1))) (.mk [(.mk (.bind (.generated .binding 2)) (some (.pair .bool .nat)) (.pair (.call (.function 15) [(.clone (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 62)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 62)))) (.block (.mk [(.mk (.bind (.generated .operand 65)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 63))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 63))))), (.mk (.bind (.generated .operand 66)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 64))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 64)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 65)), (.move (.generated .operand 66))] true))))))))), (.mk (.tuple [(.bind (.generated .part 67)), .wild]) none (.copy (.generated .binding 3)))] (.cond (.move (.generated .part 67)) (.mk [] (.copy (.generated .binding 3))) (.mk [(.mk (.bind (.generated .binding 6)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 4)) (some (.pair .bool .nat)) (.pair (.call (.function 16) [(.clone (.generated .binding 0))] false) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 68)), .wild]) none (.copy (.generated .binding 4)))] (.cond (.move (.generated .part 68)) (.mk [] (.copy (.generated .binding 4))) (.mk [(.mk (.bind (.generated .binding 5)) (some (.pair .bool .nat)) (.pair (.call (.function 17) [(.clone (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 69)), .wild]) none (.copy (.generated .binding 5)))] (.move (.generated .part 69)))) (.block (.mk [(.mk (.bind (.generated .operand 72)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 70))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 70))))), (.mk (.bind (.generated .operand 73)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 71))]) none (.copy (.generated .binding 5)))] (.move (.generated .part 71)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 72)), (.move (.generated .operand 73))] true)))))))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 74)), .wild]) none (.copy (.generated .binding 6)))] (.move (.generated .part 74)))) (.block (.mk [(.mk (.bind (.generated .operand 77)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 75))]) none (.copy (.generated .binding 3)))] (.move (.generated .part 75))))), (.mk (.bind (.generated .operand 78)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 76))]) none (.copy (.generated .binding 6)))] (.move (.generated .part 76)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 77)), (.move (.generated .operand 78))] true))))))))), (.mk (.tuple [(.bind (.generated .part 79)), .wild]) none (.copy (.generated .binding 7)))] (.cond (.move (.generated .part 79)) (.mk [] (.copy (.generated .binding 7))) (.mk [(.mk (.bind (.generated .binding 14)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 10)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 8)) (some (.pair .bool .nat)) (.pair (.call (.function 18) [(.clone (.generated .binding 0))] true) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 80)), .wild]) none (.copy (.generated .binding 8)))] (.cond (.move (.generated .part 80)) (.mk [] (.copy (.generated .binding 8))) (.mk [(.mk (.bind (.generated .binding 9)) (some (.pair .bool .nat)) (.pair (.call (.function 19) [(.clone (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 81)), .wild]) none (.copy (.generated .binding 9)))] (.move (.generated .part 81)))) (.block (.mk [(.mk (.bind (.generated .operand 84)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 82))]) none (.copy (.generated .binding 8)))] (.move (.generated .part 82))))), (.mk (.bind (.generated .operand 85)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 83))]) none (.copy (.generated .binding 9)))] (.move (.generated .part 83)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 84)), (.move (.generated .operand 85))] true))))))))), (.mk (.tuple [(.bind (.generated .part 86)), .wild]) none (.copy (.generated .binding 10)))] (.cond (.move (.generated .part 86)) (.mk [] (.copy (.generated .binding 10))) (.mk [(.mk (.bind (.generated .binding 13)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 11)) (some (.pair .bool .nat)) (.pair (.call (.function 20) [(.clone (.generated .binding 0))] false) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 87)), .wild]) none (.copy (.generated .binding 11)))] (.cond (.move (.generated .part 87)) (.mk [] (.copy (.generated .binding 11))) (.mk [(.mk (.bind (.generated .binding 12)) (some (.pair .bool .nat)) (.pair (.call (.function 21) [(.move (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 88)), .wild]) none (.copy (.generated .binding 12)))] (.move (.generated .part 88)))) (.block (.mk [(.mk (.bind (.generated .operand 91)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 89))]) none (.copy (.generated .binding 11)))] (.move (.generated .part 89))))), (.mk (.bind (.generated .operand 92)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 90))]) none (.copy (.generated .binding 12)))] (.move (.generated .part 90)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] true)))))))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 93)), .wild]) none (.copy (.generated .binding 13)))] (.move (.generated .part 93)))) (.block (.mk [(.mk (.bind (.generated .operand 96)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 94))]) none (.copy (.generated .binding 10)))] (.move (.generated .part 94))))), (.mk (.bind (.generated .operand 97)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 95))]) none (.copy (.generated .binding 13)))] (.move (.generated .part 95)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 96)), (.move (.generated .operand 97))] true)))))))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 98)), .wild]) none (.copy (.generated .binding 14)))] (.move (.generated .part 98)))) (.block (.mk [(.mk (.bind (.generated .operand 101)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 99))]) none (.copy (.generated .binding 7)))] (.move (.generated .part 99))))), (.mk (.bind (.generated .operand 102)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 100))]) none (.copy (.generated .binding 14)))] (.move (.generated .part 100)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 101)), (.move (.generated .operand 102))] true)))))))))] (.succeed (.move (.generated .part 60))))) :: + (.function (.generated .function 12) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.adt 3) (.mk [] (.construct (.adt 3 0) [(.move (.generated .binding 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0))]))) :: + (.function (.generated .function 13) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .operand 103)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 104)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natLe) [(.move (.generated .operand 103)), (.move (.generated .operand 104))] false) (.mk [(.mk (.bind (.generated .operand 105)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 106)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 105)), (.move (.generated .operand 106))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 110)) none (.cond (.call (.function 30) [(.clone (.generated .binding 0))] false) (.mk [(.mk (.bind (.generated .operand 108)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 107))]) (.mk [] (.move (.generated .part 107))))])), (.mk (.bind (.generated .operand 109)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 108)), (.move (.generated .operand 109))] false) (.mk [] (.cond (.call (.function 31) [(.clone (.generated .binding 0))] false) (.mk [] (.call (.function 32) [(.move (.generated .binding 0))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))))] (.call (.runtime .boolNot) [(.move (.generated .operand 110))] false)))) (.mk [] (.lit (.bool false)))))) :: + (.function (.generated .function 14) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] .bool (.mk [(.mk (.bind (.generated .operand 112)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 111)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 111))))])), (.mk (.bind (.generated .operand 113)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 112)), (.move (.generated .operand 113))] false) (.mk [] (.call (.function 31) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 114)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 114))))])] false)) (.mk [] (.lit (.bool false)))))) :: + (.function (.generated .function 15) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] .bool (.mk [(.mk (.bind (.generated .operand 116)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 115)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 115))))])), (.mk (.bind (.generated .operand 117)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 116)), (.move (.generated .operand 117))] false) (.mk [] (.call (.function 32) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 118)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 118))))])] false)) (.mk [] (.lit (.bool false)))))) :: + (.function (.generated .function 16) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] .bool (.mk [(.mk (.bind (.generated .operand 120)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 119)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 119))))])), (.mk (.bind (.generated .operand 121)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 120)), (.move (.generated .operand 121))] false) (.mk [] (.call (.function 33) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 122)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 122))))])] false)) (.mk [] (.lit (.bool false)))))) :: + (.function (.generated .function 17) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] .bool (.mk [(.mk (.bind (.generated .operand 124)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 123)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 123))))])), (.mk (.bind (.generated .operand 125)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 124)), (.move (.generated .operand 125))] false) (.mk [] (.call (.function 34) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 126)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 126))))])] false)) (.mk [] (.lit (.bool false)))))) :: + (.function (.generated .function 18) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] (.fallible .bool) (.mk [(.mk (.bind (.generated .operand 128)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 127)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 127))))])), (.mk (.bind (.generated .operand 129)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 128)), (.move (.generated .operand 129))] false) (.mk [(.mk (.bind (.generated .operand 140)) none (.lit (.nat 2))), (.mk (.bind (.generated .operand 141)) none (.block (.mk [(.mk (.bind (.generated .operand 138)) none (.block (.mk [(.mk (.bind (.generated .operand 135)) none (.block (.mk [(.mk (.bind (.generated .operand 132)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 130)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 130))))])), (.mk (.bind (.generated .operand 133)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 131)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 131))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 132)), (.move (.generated .operand 133))] true)))), (.mk (.bind (.generated .operand 136)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 134)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 134))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 135)), (.move (.generated .operand 136))] true)))), (.mk (.bind (.generated .operand 139)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 137)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 137))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 138)), (.move (.generated .operand 139))] true))))] (.succeed (.call (.runtime .natLe) [(.move (.generated .operand 140)), (.move (.generated .operand 141))] false))) (.mk [] (.succeed (.lit (.bool false))))))) :: + (.function (.generated .function 19) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] .bool (.mk [(.mk (.bind (.generated .operand 143)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 142)), .wild, .wild]) (.mk [] (.move (.generated .part 142))))])), (.mk (.bind (.generated .operand 144)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 143)), (.move (.generated .operand 144))] false) (.mk [(.mk (.bind (.generated .operand 146)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 145)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 145))))])), (.mk (.bind (.generated .operand 147)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 146)), (.move (.generated .operand 147))] false) (.mk [(.mk (.bind (.generated .operand 151)) none (.block (.mk [(.mk (.bind (.generated .holder 150)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 149)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 149))))]))] (.matchOn (.move (.generated .holder 150)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 148))]) (.mk [] (.move (.generated .part 148))))])))), (.mk (.bind (.generated .operand 152)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 151)), (.move (.generated .operand 152))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))))) :: + (.function (.generated .function 20) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] .bool (.mk [(.mk (.bind (.generated .operand 154)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 153)), .wild]) (.mk [] (.move (.generated .part 153))))])), (.mk (.bind (.generated .operand 155)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 154)), (.move (.generated .operand 155))] false) (.mk [(.mk (.bind (.generated .operand 157)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 156)), .wild, .wild]) (.mk [] (.move (.generated .part 156))))])), (.mk (.bind (.generated .operand 158)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 157)), (.move (.generated .operand 158))] false) (.mk [] (.call (.function 30) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 159)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 159))))])] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))))) :: + (.function (.generated .function 21) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] .bool (.mk [(.mk (.bind (.generated .operand 161)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 160))]) (.mk [] (.move (.generated .part 160))))])), (.mk (.bind (.generated .operand 162)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 161)), (.move (.generated .operand 162))] false) (.mk [(.mk (.bind (.generated .operand 164)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 163))]) (.mk [] (.move (.generated .part 163))))])), (.mk (.bind (.generated .operand 165)) none (.lit (.nat 0)))] (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 164)), (.move (.generated .operand 165))] false) (.mk [(.mk (.bind (.generated .operand 167)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 166)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 166))))])), (.mk (.bind (.generated .operand 168)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 167)), (.move (.generated .operand 168))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 170)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 169))]) (.mk [] (.move (.generated .part 169))))])), (.mk (.bind (.generated .operand 171)) none (.lit (.nat 1)))] (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 170)), (.move (.generated .operand 171))] false) (.mk [(.mk (.bind (.generated .operand 173)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 172)), .wild, .wild]) (.mk [] (.move (.generated .part 172))))])), (.mk (.bind (.generated .operand 174)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 173)), (.move (.generated .operand 174))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 176)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 175))]) (.mk [] (.move (.generated .part 175))))])), (.mk (.bind (.generated .operand 177)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 176)), (.move (.generated .operand 177))] false) (.mk [(.mk (.bind (.generated .operand 179)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 178)), .wild]) (.mk [] (.move (.generated .part 178))))])), (.mk (.bind (.generated .operand 180)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 179)), (.move (.generated .operand 180))] false)) (.mk [] (.lit (.bool false))))))))) (.mk [] (.lit (.bool false)))))) :: + (.function (.generated .function 22) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] (.option (.adt 3)) (.mk [] (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 35) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 3)) []))))) :: + (.function (.generated .function 23) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] (.option (.adt 3)) (.mk [] (.cond (.call (.function 15) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 36) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 3)) []))))) :: + (.function (.generated .function 24) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] (.option (.adt 3)) (.mk [] (.cond (.call (.function 16) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 37) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 3)) []))))) :: + (.function (.generated .function 25) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] (.option (.adt 3)) (.mk [] (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 38) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 3)) []))))) :: + (.function (.generated .function 26) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] (.fallible (.option (.adt 3))) (.mk [] (.cond (.call (.function 18) [(.clone (.generated .binding 0))] true) (.mk [] (.succeed (.construct .some [(.call (.function 39) [(.move (.generated .binding 0))] false)]))) (.mk [] (.succeed (.construct (.none (.adt 3)) [])))))) :: + (.function (.generated .function 27) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] (.option (.adt 3)) (.mk [] (.cond (.call (.function 19) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 40) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 3)) []))))) :: + (.function (.generated .function 28) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] (.option (.adt 3)) (.mk [] (.cond (.call (.function 20) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 41) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 3)) []))))) :: + (.function (.generated .function 29) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] (.fallible (.option (.adt 3))) (.mk [] (.cond (.call (.function 21) [(.clone (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.call (.function 42) [(.move (.generated .binding 0))] true)]))) (.mk [] (.succeed (.construct (.none (.adt 3)) [])))))) :: + (.function (.generated .function 30) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .operand 182)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 181)), .wild]) (.mk [] (.move (.generated .part 181))))])), (.mk (.bind (.generated .operand 183)) none (.lit (.nat 90)))] (.call (.runtime .natLt) [(.move (.generated .operand 182)), (.move (.generated .operand 183))] false))) :: + (.function (.generated .function 31) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .operand 185)) none (.lit (.nat 380))), (.mk (.bind (.generated .operand 186)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [(.bind (.generated .part 184)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 184))))]))] (.call (.runtime .natLt) [(.move (.generated .operand 185)), (.move (.generated .operand 186))] false))) :: + (.function (.generated .function 32) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .operand 188)) none (.lit (.nat 90))), (.mk (.bind (.generated .operand 189)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 187)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 187))))]))] (.call (.runtime .natLt) [(.move (.generated .operand 188)), (.move (.generated .operand 189))] false))) :: + (.function (.generated .function 33) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .operand 191)) none (.lit (.nat 20))), (.mk (.bind (.generated .operand 192)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 190)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 190))))]))] (.call (.runtime .natLt) [(.move (.generated .operand 191)), (.move (.generated .operand 192))] false))) :: + (.function (.generated .function 34) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .operand 194)) none (.lit (.nat 12))), (.mk (.bind (.generated .operand 195)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, (.bind (.generated .part 193)), .wild, .wild]) (.mk [] (.move (.generated .part 193))))]))] (.call (.runtime .natLt) [(.move (.generated .operand 194)), (.move (.generated .operand 195))] false))) :: + (.function (.generated .function 35) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] (.adt 3) (.mk [] (.construct (.adt 3 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 196)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 196))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 197)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 197))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 198)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 198))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 199)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 199))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 200)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 200))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 201)), .wild, .wild]) (.mk [] (.move (.generated .part 201))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 202)), .wild]) (.mk [] (.move (.generated .part 202))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 203))]) (.mk [] (.move (.generated .part 203))))])]))) :: + (.function (.generated .function 36) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] (.adt 3) (.mk [] (.construct (.adt 3 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 204)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 204))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 205)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 205))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 206)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 206))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 207)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 207))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 208)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 208))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 209)), .wild, .wild]) (.mk [] (.move (.generated .part 209))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 210)), .wild]) (.mk [] (.move (.generated .part 210))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 211))]) (.mk [] (.move (.generated .part 211))))])]))) :: + (.function (.generated .function 37) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] (.adt 3) (.mk [] (.construct (.adt 3 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 212)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 212))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 213)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 213))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 214)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 214))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 215)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 215))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 216)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 216))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 217)), .wild, .wild]) (.mk [] (.move (.generated .part 217))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 218)), .wild]) (.mk [] (.move (.generated .part 218))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 219))]) (.mk [] (.move (.generated .part 219))))])]))) :: + (.function (.generated .function 38) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] (.adt 3) (.mk [] (.construct (.adt 3 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 220)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 220))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 221)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 221))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 222)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 222))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 223)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 223))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 224)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 224))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 225)), .wild, .wild]) (.mk [] (.move (.generated .part 225))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 226)), .wild]) (.mk [] (.move (.generated .part 226))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 227))]) (.mk [] (.move (.generated .part 227))))])]))) :: + (.function (.generated .function 39) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] (.adt 3) (.mk [] (.construct (.adt 3 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 228)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 228))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 229)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 229))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 230)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 230))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 231)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 231))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 232)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 232))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 233)), .wild, .wild]) (.mk [] (.move (.generated .part 233))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 234)), .wild]) (.mk [] (.move (.generated .part 234))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 235))]) (.mk [] (.move (.generated .part 235))))])]))) :: + (.function (.generated .function 40) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] (.adt 3) (.mk [] (.construct (.adt 3 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 236)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 236))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 237)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 237))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 238)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 238))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 239)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 239))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 240)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 240))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 241)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 241))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 242)), .wild]) (.mk [] (.move (.generated .part 242))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 243))]) (.mk [] (.move (.generated .part 243))))])]))) :: + (.function (.generated .function 41) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] (.adt 3) (.mk [] (.construct (.adt 3 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 244)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 244))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 245)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 245))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 246)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 246))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 247)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 247))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 248)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 248))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 249)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 249))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 250)), .wild, .wild]) (.mk [] (.move (.generated .part 250))))]), (.lit (.nat 1)), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 251))]) (.mk [] (.move (.generated .part 251))))])]))) :: + (.function (.generated .function 42) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] (.fallible (.adt 3)) (.mk [] (.succeed (.construct (.adt 3 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 252)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 252))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 253)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 253))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 254)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 254))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 255)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 255))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 256)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 256))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 257)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 257))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 258)), .wild, .wild]) (.mk [] (.move (.generated .part 258))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 259)), .wild]) (.mk [] (.move (.generated .part 259))))]), (.block (.mk [(.mk (.bind (.generated .operand 261)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 260))]) (.mk [] (.move (.generated .part 260))))])), (.mk (.bind (.generated .operand 262)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 261)), (.move (.generated .operand 262))] true)))])))) :: + []) } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [(([(.adt 2)], (.option (.adt 2))), true)] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.call (.function 1) [(.construct (.adt 0 0) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1)), (.copy (.generated .binding 2)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4)), (.copy (.generated .binding 5))])] true))], (.matchOn (.move (.generated .holder 1)) [(.mk (.ok (.bind (.generated .binding 6))) (.mk [(.mk (.bind (.generated .operand 3)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 2))]) none (.move (.generated .binding 6)))] (.move (.generated .part 2)))))] (.succeed (.call (.runtime .lengthList) [(.move (.generated .operand 3))] false)))), (.mk (.err .wild) (.mk [] (.succeed (.lit (.nat 0)))))]), [(5, .nat, (some 5)), (4, .nat, (some 4)), (3, .nat, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.matchArms (st := (.result (.pair .nat (.list (.adt 1))) (.pair .bool .bool))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))))))) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(6, (.pair .nat (.list (.adt 1))), (some 6)), (5, .nat, (some 5)), (4, .nat, (some 4)), (3, .nat, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, .nat, (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .operand 3)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 2))]) none (.move (.generated .binding 6)))] (.move (.generated .part 2)))))]) (tail := (.succeed (.call (.runtime .lengthList) [(.move (.generated .operand 3))] false))) (Corr.mCons (Γ' := [(7, (.pair .bool .bool), none), (5, .nat, (some 5)), (4, .nat, (some 4)), (3, .nat, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, .nat, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.lit (.nat 0)))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl)))) rfl rfl rfl (Corr.fOfB (Corr.prim (ts := [(.list (.adt 1))]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 2))]) none (.move (.generated .binding 6)))]) (tail := (.move (.generated .part 2))) (Corr.second (ta := .nat) (tb := (.list (.adt 1))) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl))) rfl rfl rfl)⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some (.pair (.adt 2) .bool)) (.call (.function 2) [(.clone (.generated .binding 0))] true)), (.mk (.bind (.generated .holder 5)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 4))]) none (.clone (.generated .binding 1)))] (.move (.generated .part 4)))))], (.cond (.move (.generated .holder 5)) (.mk [(.mk (.bind (.generated .holder 9)) none (.call (.function 3) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .holder 8)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 7)), .wild]) none (.clone (.generated .binding 1)))] (.move (.generated .part 7)))))] (.matchOn (.move (.generated .holder 8)) [(.mk (.adt 2 0 [(.bind (.generated .part 6)), .wild, .wild]) (.mk [] (.move (.generated .part 6))))])))] false))] (.matchOn (.move (.generated .holder 9)) [(.mk (.ok (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct (.ok (.pair .nat (.list (.adt 1))) (.pair .bool .bool)) [(.pair (.copy (.generated .binding 2)) (.block (.mk [(.mk (.bind (.generated .holder 12)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 11)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 11)))))] (.matchOn (.move (.generated .holder 12)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 10)), .wild]) (.mk [] (.move (.generated .part 10))))]))))])))), (.mk (.err (.bind (.generated .binding 3))) (.mk [] (.succeed (.construct (.err (.pair .nat (.list (.adt 1))) (.pair .bool .bool)) [(.copy (.generated .binding 3))]))))])) (.mk [] (.succeed (.construct (.err (.pair .nat (.list (.adt 1))) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))])))), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.matchBool (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 4))]) none (.clone (.generated .binding 1)))]) (tail := (.move (.generated .part 4))) (Corr.second (ta := (.adt 2)) (tb := .bool) (Corr.var rfl rfl) rfl)) rfl rfl (Corr.kIf (la := [(.mk (.bind (.generated .holder 9)) none (.call (.function 3) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .holder 8)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 7)), .wild]) none (.clone (.generated .binding 1)))] (.move (.generated .part 7)))))] (.matchOn (.move (.generated .holder 8)) [(.mk (.adt 2 0 [(.bind (.generated .part 6)), .wild, .wild]) (.mk [] (.move (.generated .part 6))))])))] false))]) (ta := (.matchOn (.move (.generated .holder 9)) [(.mk (.ok (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct (.ok (.pair .nat (.list (.adt 1))) (.pair .bool .bool)) [(.pair (.copy (.generated .binding 2)) (.block (.mk [(.mk (.bind (.generated .holder 12)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 11)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 11)))))] (.matchOn (.move (.generated .holder 12)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 10)), .wild]) (.mk [] (.move (.generated .part 10))))]))))])))), (.mk (.err (.bind (.generated .binding 3))) (.mk [] (.succeed (.construct (.err (.pair .nat (.list (.adt 1))) (.pair .bool .bool)) [(.copy (.generated .binding 3))]))))])) (lb := []) (tb := (.succeed (.construct (.err (.pair .nat (.list (.adt 1))) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))) (Corr.matchArms (st := (.result .nat (.pair .bool .bool))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0), (.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 8)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 7)), .wild]) none (.clone (.generated .binding 1)))] (.move (.generated .part 7)))))]) (tail := (.matchOn (.move (.generated .holder 8)) [(.mk (.adt 2 0 [(.bind (.generated .part 6)), .wild, .wild]) (.mk [] (.move (.generated .part 6))))])) (Corr.fieldHeld (ts := [(.adt 3), (.list (.adt 1)), (.adt 4)]) (rd := (.move (.generated .part 6))) (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 7)), .wild]) none (.clone (.generated .binding 1)))]) (tail := (.move (.generated .part 7))) (Corr.first (ta := (.adt 2)) (tb := .bool) (Corr.var rfl rfl) rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, (.pair (.adt 2) .bool), (some 1)), (0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct (.ok (.pair .nat (.list (.adt 1))) (.pair .bool .bool)) [(.pair (.copy (.generated .binding 2)) (.block (.mk [(.mk (.bind (.generated .holder 12)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 11)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 11)))))] (.matchOn (.move (.generated .holder 12)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 10)), .wild]) (.mk [] (.move (.generated .part 10))))]))))]))) (Corr.mCons (Γ' := [(3, (.pair .bool .bool), (some 3)), (1, (.pair (.adt 2) .bool), (some 1)), (0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.construct (.err (.pair .nat (.list (.adt 1))) (.pair .bool .bool)) [(.copy (.generated .binding 3))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.pair .nat (.list (.adt 1)))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 12)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 11)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 11)))))]) (tail := (.matchOn (.move (.generated .holder 12)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 10)), .wild]) (.mk [] (.move (.generated .part 10))))])) (Corr.fieldHeld (ts := [(.adt 3), (.list (.adt 1)), (.adt 4)]) (rd := (.move (.generated .part 10))) (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 11)), .wild]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 11))) (Corr.first (ta := (.adt 2)) (tb := .bool) (Corr.var rfl rfl) rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lNil))) rfl))) rfl rfl rfl) (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)))))⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 4) [(.construct (.closure 0 5) []), (.lit (.nat 11)), (.call (.function 6) [(.move (.generated .binding 0))] false)] false), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.callF (ts := [(.fn [(.adt 2)] (.option (.adt 2))), .nat, (.adt 2)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl)⟩⟩ + +theorem fun3 : FunOK program krate flags 3 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 13)) none (.call (.function 7) [(.move (.generated .binding 0)), (.clone (.generated .binding 1))] false))], (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 14)) none (.call (.function 8) [(.move (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 14)) [(.mk .none (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))]))), (.mk (.some .wild) (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))])))]), [(1, (.adt 3), (some 1)), (0, (.adt 0), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0), (.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.adt 3), (some 1)), (0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 14)) none (.call (.function 8) [(.move (.generated .binding 1))] false))]) (tail := (.matchOn (.move (.generated .holder 14)) [(.mk .none (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))]))), (.mk (.some .wild) (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))])) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, (.adt 3), (some 1)), (0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.adt 3), (some 1)), (0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))])) (Corr.mCons (Γ' := [(3, .nat, none), (1, (.adt 3), (some 1)), (0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)) rfl rfl rfl)) rfl rfl rfl)⟩⟩ + +theorem fun4 : FunOK program krate flags 4 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 15)) none (.copy (.generated .binding 1)))], (.cond (.isZero (.generated .holder 15)) (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 15))), (.mk (.bind (.generated .holder 17)) none (.block (.mk [(.mk (.bind (.generated .callee 16)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 16) [(.clone (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 17)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))]))), [(2, (.adt 2), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.adt 2)] (.option (.adt 2))), (some 0))], rfl, rfl, + (Corr.matchNat (sl := (some 3)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (lb := [(.mk (.bind (.generated .holder 17)) none (.block (.mk [(.mk (.bind (.generated .callee 16)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 16) [(.clone (.generated .binding 2))] true))))]) (tb := (.matchOn (.move (.generated .holder 17)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))])) (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))))) (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 16)) (some (.fn 0)) (.clone (.generated .binding 0)))]) (tail := (.apply (.generated .callee 16) [(.clone (.generated .binding 2))] true)) (Corr.apply (ps := [(.adt 2)]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (2, (.adt 2), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.adt 2)] (.option (.adt 2))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true))))) (Corr.mCons (Γ' := [(4, (.adt 2), (some 4)), (3, .nat, (some 3)), (2, (.adt 2), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.adt 2)] (.option (.adt 2))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.adt 2)] (.option (.adt 2))), .nat, (.adt 2)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))))))) rfl rfl rfl)))⟩⟩ + +theorem fun5 : FunOK program krate flags 5 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 19)) none (.call (.function 9) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [(.bind (.generated .part 18)), .wild, .wild]) (.mk [] (.move (.generated .part 18))))])] true))], (.matchOn (.move (.generated .holder 19)) [(.mk .none (.mk [] (.succeed (.construct (.none (.adt 2)) [])))), (.mk (.some (.bind (.generated .binding 1))) (.mk [(.mk (.bind (.generated .holder 21)) none (.call (.function 10) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [(.bind (.generated .part 20)), .wild, .wild]) (.mk [] (.move (.generated .part 20))))]), (.clone (.generated .binding 1))] true))] (.matchOn (.move (.generated .holder 21)) [(.mk .none (.mk [] (.succeed (.construct (.none (.adt 2)) [])))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct .some [(.construct (.adt 2 0) [(.move (.generated .binding 2)), (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 22)), .wild]) (.mk [] (.move (.generated .part 22))))])), (.mk (.bind (.generated .operand 24)) none (.construct .cons [(.move (.generated .binding 1)), (.construct (.nil (.adt 1)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))), (.construct (.adt 4 0) [(.block (.mk [(.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .holder 27)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 26))]) (.mk [] (.move (.generated .part 26))))]))] (.matchOn (.move (.generated .holder 27)) [(.mk (.adt 4 0 [(.bind (.generated .part 25)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 25))))])))), (.mk (.bind (.generated .operand 29)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 28)), (.move (.generated .operand 29))] true))), (.block (.mk [(.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.bind (.generated .holder 32)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 31))]) (.mk [] (.move (.generated .part 31))))]))] (.matchOn (.move (.generated .holder 32)) [(.mk (.adt 4 0 [.wild, (.bind (.generated .part 30)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 30))))])))), (.mk (.bind (.generated .operand 35)) none (.call (.function 11) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [(.bind (.generated .part 33)), .wild, .wild]) (.mk [] (.move (.generated .part 33))))])] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 34)), (.move (.generated .operand 35))] true))), (.block (.mk [(.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.bind (.generated .holder 38)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 37))]) (.mk [] (.move (.generated .part 37))))]))] (.matchOn (.move (.generated .holder 38)) [(.mk (.adt 4 0 [.wild, .wild, (.bind (.generated .part 36)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 36))))])))), (.mk (.bind (.generated .operand 40)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] true))), (.block (.mk [(.mk (.bind (.generated .holder 43)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 42))]) (.mk [] (.move (.generated .part 42))))]))] (.matchOn (.move (.generated .holder 43)) [(.mk (.adt 4 0 [.wild, .wild, .wild, (.bind (.generated .part 41)), .wild, .wild]) (.mk [] (.move (.generated .part 41))))]))), (.block (.mk [(.mk (.bind (.generated .holder 46)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 45))]) (.mk [] (.move (.generated .part 45))))]))] (.matchOn (.move (.generated .holder 46)) [(.mk (.adt 4 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 44)), .wild]) (.mk [] (.move (.generated .part 44))))]))), (.block (.mk [(.mk (.bind (.generated .holder 49)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 48))]) (.mk [] (.move (.generated .part 48))))]))] (.matchOn (.move (.generated .holder 49)) [(.mk (.adt 4 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 47))]) (.mk [] (.move (.generated .part 47))))])))])])]))))])))]), [(0, (.adt 2), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option (.adt 1))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 3), (.list (.adt 1)), (.adt 4)]) (rd := (.move (.generated .part 18))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(0, (.adt 2), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct (.none (.adt 2)) []))) (Corr.mCons (Γ' := [(1, (.adt 1), (some 1)), (0, (.adt 2), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 21)) none (.call (.function 10) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [(.bind (.generated .part 20)), .wild, .wild]) (.mk [] (.move (.generated .part 20))))]), (.clone (.generated .binding 1))] true))]) (tail := (.matchOn (.move (.generated .holder 21)) [(.mk .none (.mk [] (.succeed (.construct (.none (.adt 2)) [])))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct .some [(.construct (.adt 2 0) [(.move (.generated .binding 2)), (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 22)), .wild]) (.mk [] (.move (.generated .part 22))))])), (.mk (.bind (.generated .operand 24)) none (.construct .cons [(.move (.generated .binding 1)), (.construct (.nil (.adt 1)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))), (.construct (.adt 4 0) [(.block (.mk [(.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .holder 27)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 26))]) (.mk [] (.move (.generated .part 26))))]))] (.matchOn (.move (.generated .holder 27)) [(.mk (.adt 4 0 [(.bind (.generated .part 25)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 25))))])))), (.mk (.bind (.generated .operand 29)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 28)), (.move (.generated .operand 29))] true))), (.block (.mk [(.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.bind (.generated .holder 32)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 31))]) (.mk [] (.move (.generated .part 31))))]))] (.matchOn (.move (.generated .holder 32)) [(.mk (.adt 4 0 [.wild, (.bind (.generated .part 30)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 30))))])))), (.mk (.bind (.generated .operand 35)) none (.call (.function 11) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [(.bind (.generated .part 33)), .wild, .wild]) (.mk [] (.move (.generated .part 33))))])] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 34)), (.move (.generated .operand 35))] true))), (.block (.mk [(.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.bind (.generated .holder 38)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 37))]) (.mk [] (.move (.generated .part 37))))]))] (.matchOn (.move (.generated .holder 38)) [(.mk (.adt 4 0 [.wild, .wild, (.bind (.generated .part 36)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 36))))])))), (.mk (.bind (.generated .operand 40)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] true))), (.block (.mk [(.mk (.bind (.generated .holder 43)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 42))]) (.mk [] (.move (.generated .part 42))))]))] (.matchOn (.move (.generated .holder 43)) [(.mk (.adt 4 0 [.wild, .wild, .wild, (.bind (.generated .part 41)), .wild, .wild]) (.mk [] (.move (.generated .part 41))))]))), (.block (.mk [(.mk (.bind (.generated .holder 46)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 45))]) (.mk [] (.move (.generated .part 45))))]))] (.matchOn (.move (.generated .holder 46)) [(.mk (.adt 4 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 44)), .wild]) (.mk [] (.move (.generated .part 44))))]))), (.block (.mk [(.mk (.bind (.generated .holder 49)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 48))]) (.mk [] (.move (.generated .part 48))))]))] (.matchOn (.move (.generated .holder 49)) [(.mk (.adt 4 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 47))]) (.mk [] (.move (.generated .part 47))))])))])])]))))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := (.option (.adt 3))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.adt 3), (.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 3), (.list (.adt 1)), (.adt 4)]) (rd := (.move (.generated .part 20))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.adt 1), (some 1)), (0, (.adt 2), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct (.none (.adt 2)) []))) (Corr.mCons (Γ' := [(2, (.adt 3), (some 2)), (1, (.adt 1), (some 1)), (0, (.adt 2), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.construct .some [(.construct (.adt 2 0) [(.move (.generated .binding 2)), (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 22)), .wild]) (.mk [] (.move (.generated .part 22))))])), (.mk (.bind (.generated .operand 24)) none (.construct .cons [(.move (.generated .binding 1)), (.construct (.nil (.adt 1)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))), (.construct (.adt 4 0) [(.block (.mk [(.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .holder 27)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 26))]) (.mk [] (.move (.generated .part 26))))]))] (.matchOn (.move (.generated .holder 27)) [(.mk (.adt 4 0 [(.bind (.generated .part 25)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 25))))])))), (.mk (.bind (.generated .operand 29)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 28)), (.move (.generated .operand 29))] true))), (.block (.mk [(.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.bind (.generated .holder 32)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 31))]) (.mk [] (.move (.generated .part 31))))]))] (.matchOn (.move (.generated .holder 32)) [(.mk (.adt 4 0 [.wild, (.bind (.generated .part 30)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 30))))])))), (.mk (.bind (.generated .operand 35)) none (.call (.function 11) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [(.bind (.generated .part 33)), .wild, .wild]) (.mk [] (.move (.generated .part 33))))])] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 34)), (.move (.generated .operand 35))] true))), (.block (.mk [(.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.bind (.generated .holder 38)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 37))]) (.mk [] (.move (.generated .part 37))))]))] (.matchOn (.move (.generated .holder 38)) [(.mk (.adt 4 0 [.wild, .wild, (.bind (.generated .part 36)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 36))))])))), (.mk (.bind (.generated .operand 40)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] true))), (.block (.mk [(.mk (.bind (.generated .holder 43)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 42))]) (.mk [] (.move (.generated .part 42))))]))] (.matchOn (.move (.generated .holder 43)) [(.mk (.adt 4 0 [.wild, .wild, .wild, (.bind (.generated .part 41)), .wild, .wild]) (.mk [] (.move (.generated .part 41))))]))), (.block (.mk [(.mk (.bind (.generated .holder 46)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 45))]) (.mk [] (.move (.generated .part 45))))]))] (.matchOn (.move (.generated .holder 46)) [(.mk (.adt 4 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 44)), .wild]) (.mk [] (.move (.generated .part 44))))]))), (.block (.mk [(.mk (.bind (.generated .holder 49)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 48))]) (.mk [] (.move (.generated .part 48))))]))] (.matchOn (.move (.generated .holder 49)) [(.mk (.adt 4 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 47))]) (.mk [] (.move (.generated .part 47))))])))])])]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.adt 3), (.list (.adt 1)), (.adt 4)]) (mask := [false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 23)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 22)), .wild]) (.mk [] (.move (.generated .part 22))))])), (.mk (.bind (.generated .operand 24)) none (.construct .cons [(.move (.generated .binding 1)), (.construct (.nil (.adt 1)) [])]))]) (tail := (.call (.runtime .appendList) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false)) (Corr.prim (ts := [(.list (.adt 1)), (.list (.adt 1))]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 3), (.list (.adt 1)), (.adt 4)]) (rd := (.move (.generated .part 22))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [(.adt 1), (.list (.adt 1))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .holder 27)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 26))]) (.mk [] (.move (.generated .part 26))))]))] (.matchOn (.move (.generated .holder 27)) [(.mk (.adt 4 0 [(.bind (.generated .part 25)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 25))))])))), (.mk (.bind (.generated .operand 29)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 28)), (.move (.generated .operand 29))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 27)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 26))]) (.mk [] (.move (.generated .part 26))))]))]) (tail := (.matchOn (.move (.generated .holder 27)) [(.mk (.adt 4 0 [(.bind (.generated .part 25)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 25))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 25))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 3), (.list (.adt 1)), (.adt 4)]) (rd := (.move (.generated .part 26))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.bind (.generated .holder 32)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 31))]) (.mk [] (.move (.generated .part 31))))]))] (.matchOn (.move (.generated .holder 32)) [(.mk (.adt 4 0 [.wild, (.bind (.generated .part 30)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 30))))])))), (.mk (.bind (.generated .operand 35)) none (.call (.function 11) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [(.bind (.generated .part 33)), .wild, .wild]) (.mk [] (.move (.generated .part 33))))])] true))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 34)), (.move (.generated .operand 35))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 32)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 31))]) (.mk [] (.move (.generated .part 31))))]))]) (tail := (.matchOn (.move (.generated .holder 32)) [(.mk (.adt 4 0 [.wild, (.bind (.generated .part 30)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 30))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 30))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 3), (.list (.adt 1)), (.adt 4)]) (rd := (.move (.generated .part 31))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 3), (.list (.adt 1)), (.adt 4)]) (rd := (.move (.generated .part 33))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.bind (.generated .holder 38)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 37))]) (.mk [] (.move (.generated .part 37))))]))] (.matchOn (.move (.generated .holder 38)) [(.mk (.adt 4 0 [.wild, .wild, (.bind (.generated .part 36)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 36))))])))), (.mk (.bind (.generated .operand 40)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 38)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 37))]) (.mk [] (.move (.generated .part 37))))]))]) (tail := (.matchOn (.move (.generated .holder 38)) [(.mk (.adt 4 0 [.wild, .wild, (.bind (.generated .part 36)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 36))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 36))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 3), (.list (.adt 1)), (.adt 4)]) (rd := (.move (.generated .part 37))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 43)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 42))]) (.mk [] (.move (.generated .part 42))))]))]) (tail := (.matchOn (.move (.generated .holder 43)) [(.mk (.adt 4 0 [.wild, .wild, .wild, (.bind (.generated .part 41)), .wild, .wild]) (.mk [] (.move (.generated .part 41))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 41))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 3), (.list (.adt 1)), (.adt 4)]) (rd := (.move (.generated .part 42))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 46)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 45))]) (.mk [] (.move (.generated .part 45))))]))]) (tail := (.matchOn (.move (.generated .holder 46)) [(.mk (.adt 4 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 44)), .wild]) (.mk [] (.move (.generated .part 44))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 44))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 3), (.list (.adt 1)), (.adt 4)]) (rd := (.move (.generated .part 45))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 49)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 48))]) (.mk [] (.move (.generated .part 48))))]))]) (tail := (.matchOn (.move (.generated .holder 49)) [(.mk (.adt 4 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 47))]) (.mk [] (.move (.generated .part 47))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 47))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 3), (.list (.adt 1)), (.adt 4)]) (rd := (.move (.generated .part 48))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))))))) rfl)) (Corr.lNil))))) rfl)) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl)⟩⟩ + +theorem fun6 : FunOK program krate flags 6 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 2 0) [(.call (.function 12) [(.move (.generated .binding 0))] false), (.construct (.nil (.adt 1)) []), (.construct (.adt 4 0) [(.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0))])]), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.build (ts := [(.adt 3), (.list (.adt 1)), (.adt 4)]) (mask := [false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))))))) rfl)) (Corr.lNil))))) rfl)⟩⟩ + +theorem fun7 : FunOK program krate flags 7 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 50)) none (.call (.function 8) [(.move (.generated .binding 1))] false))], (.matchOn (.move (.generated .holder 50)) [(.mk .none (.mk [] (.construct (.none .nat) []))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.cond (.call (.function 13) [(.move (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.mk [] (.construct .some [(.copy (.generated .binding 2))])) (.mk [] (.construct (.none .nat) [])))))]), [(1, (.adt 3), (some 1)), (0, (.adt 0), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.adt 3), (some 1)), (0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none .nat) [])) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, (.adt 3), (some 1)), (0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 13) [(.move (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.mk [] (.construct .some [(.copy (.generated .binding 2))])) (.mk [] (.construct (.none .nat) [])))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 13) [(.move (.generated .binding 0)), (.copy (.generated .binding 2))] false)) (lk := []) (Corr.callOps (ts := [(.adt 0), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.copy (.generated .binding 2))])) (lb := []) (tb := (.construct (.none .nat) [])) (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun8 : FunOK program krate flags 8 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct .some [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 51))]) (.mk [] (.move (.generated .part 51))))])]), [(0, (.adt 3), (some 0))], rfl, rfl, + (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 51))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)⟩⟩ + +theorem fun9 : FunOK program krate flags 9 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 55)) none (.block (.mk [(.mk (.bind (.generated .holder 53)) none (.block (.mk [(.mk (.bind (.generated .holder 52)) none (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 0) [])])) (.mk [] (.construct (.none (.adt 1)) []))))] (.matchOn (.move (.generated .holder 52)) [(.mk .none (.mk [] (.cond (.call (.function 15) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 1) [])])) (.mk [] (.construct (.none (.adt 1)) []))))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.construct .some [(.move (.generated .binding 1))])))]))))] (.matchOn (.move (.generated .holder 53)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 54)) none (.cond (.call (.function 16) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 2) [])])) (.mk [] (.construct (.none (.adt 1)) []))))] (.matchOn (.move (.generated .holder 54)) [(.mk .none (.mk [] (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 3) [])])) (.mk [] (.construct (.none (.adt 1)) []))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.construct .some [(.move (.generated .binding 3))])))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.construct .some [(.move (.generated .binding 2))])))]))))], (.matchOn (.move (.generated .holder 55)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 57)) none (.block (.mk [(.mk (.bind (.generated .holder 56)) none (.cond (.call (.function 18) [(.clone (.generated .binding 0))] true) (.mk [] (.construct .some [(.construct (.adt 1 4) [])])) (.mk [] (.construct (.none (.adt 1)) []))))] (.matchOn (.move (.generated .holder 56)) [(.mk .none (.mk [] (.cond (.call (.function 19) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 5) [])])) (.mk [] (.construct (.none (.adt 1)) []))))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.construct .some [(.move (.generated .binding 5))])))]))))] (.matchOn (.move (.generated .holder 57)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 58)) none (.cond (.call (.function 20) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 6) [])])) (.mk [] (.construct (.none (.adt 1)) []))))] (.matchOn (.move (.generated .holder 58)) [(.mk .none (.mk [] (.cond (.call (.function 21) [(.move (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.construct (.adt 1 7) [])]))) (.mk [] (.succeed (.construct (.none (.adt 1)) [])))))), (.mk (.some (.bind (.generated .binding 7))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 7))]))))]))), (.mk (.some (.bind (.generated .binding 6))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 6))]))))]))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 4))]))))]), [(0, (.adt 3), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option (.adt 1))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 53)) none (.block (.mk [(.mk (.bind (.generated .holder 52)) none (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 0) [])])) (.mk [] (.construct (.none (.adt 1)) []))))] (.matchOn (.move (.generated .holder 52)) [(.mk .none (.mk [] (.cond (.call (.function 15) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 1) [])])) (.mk [] (.construct (.none (.adt 1)) []))))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.construct .some [(.move (.generated .binding 1))])))]))))]) (tail := (.matchOn (.move (.generated .holder 53)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 54)) none (.cond (.call (.function 16) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 2) [])])) (.mk [] (.construct (.none (.adt 1)) []))))] (.matchOn (.move (.generated .holder 54)) [(.mk .none (.mk [] (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 3) [])])) (.mk [] (.construct (.none (.adt 1)) []))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.construct .some [(.move (.generated .binding 3))])))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.construct .some [(.move (.generated .binding 2))])))])) (Corr.matchArms (st := (.option (.adt 1))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 52)) none (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 0) [])])) (.mk [] (.construct (.none (.adt 1)) []))))]) (tail := (.matchOn (.move (.generated .holder 52)) [(.mk .none (.mk [] (.cond (.call (.function 15) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 1) [])])) (.mk [] (.construct (.none (.adt 1)) []))))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.construct .some [(.move (.generated .binding 1))])))])) (Corr.matchArms (st := (.option (.adt 1))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.cond (lc := []) (ce := (.call (.function 14) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 1 0) [])])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) (Corr.mCons (Γ' := [(0, (.adt 3), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 15) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 1) [])])) (.mk [] (.construct (.none (.adt 1)) [])))) (Corr.mCons (Γ' := [(1, (.adt 1), (some 1)), (0, (.adt 3), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.move (.generated .binding 1))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 15) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 1 1) [])])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) rfl rfl rfl)) (Corr.mCons (Γ' := [(0, (.adt 3), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 54)) none (.cond (.call (.function 16) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 2) [])])) (.mk [] (.construct (.none (.adt 1)) []))))]) (tail := (.matchOn (.move (.generated .holder 54)) [(.mk .none (.mk [] (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 3) [])])) (.mk [] (.construct (.none (.adt 1)) []))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.construct .some [(.move (.generated .binding 3))])))])) (Corr.mCons (Γ' := [(2, (.adt 1), (some 2)), (0, (.adt 3), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.move (.generated .binding 2))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.matchArms (st := (.option (.adt 1))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.cond (lc := []) (ce := (.call (.function 16) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 1 2) [])])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) (Corr.mCons (Γ' := [(0, (.adt 3), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 3) [])])) (.mk [] (.construct (.none (.adt 1)) [])))) (Corr.mCons (Γ' := [(3, (.adt 1), (some 3)), (0, (.adt 3), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.move (.generated .binding 3))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 17) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 1 3) [])])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) rfl rfl rfl)) rfl rfl rfl)) (Corr.mCons (Γ' := [(0, (.adt 3), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 57)) none (.block (.mk [(.mk (.bind (.generated .holder 56)) none (.cond (.call (.function 18) [(.clone (.generated .binding 0))] true) (.mk [] (.construct .some [(.construct (.adt 1 4) [])])) (.mk [] (.construct (.none (.adt 1)) []))))] (.matchOn (.move (.generated .holder 56)) [(.mk .none (.mk [] (.cond (.call (.function 19) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 5) [])])) (.mk [] (.construct (.none (.adt 1)) []))))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.construct .some [(.move (.generated .binding 5))])))]))))]) (tail := (.matchOn (.move (.generated .holder 57)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 58)) none (.cond (.call (.function 20) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 6) [])])) (.mk [] (.construct (.none (.adt 1)) []))))] (.matchOn (.move (.generated .holder 58)) [(.mk .none (.mk [] (.cond (.call (.function 21) [(.move (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.construct (.adt 1 7) [])]))) (.mk [] (.succeed (.construct (.none (.adt 1)) [])))))), (.mk (.some (.bind (.generated .binding 7))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 7))]))))]))), (.mk (.some (.bind (.generated .binding 6))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 6))]))))])) (Corr.mCons (Γ' := [(4, (.adt 1), (some 4)), (0, (.adt 3), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct .some [(.move (.generated .binding 4))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.matchArms (st := (.option (.adt 1))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 56)) none (.cond (.call (.function 18) [(.clone (.generated .binding 0))] true) (.mk [] (.construct .some [(.construct (.adt 1 4) [])])) (.mk [] (.construct (.none (.adt 1)) []))))]) (tail := (.matchOn (.move (.generated .holder 56)) [(.mk .none (.mk [] (.cond (.call (.function 19) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 5) [])])) (.mk [] (.construct (.none (.adt 1)) []))))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.construct .some [(.move (.generated .binding 5))])))])) (Corr.matchArms (st := (.option (.adt 1))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.cond (lc := []) (ce := (.call (.function 18) [(.clone (.generated .binding 0))] true)) (lk := []) (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 1 4) [])])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) (Corr.mCons (Γ' := [(0, (.adt 3), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 19) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 5) [])])) (.mk [] (.construct (.none (.adt 1)) [])))) (Corr.mCons (Γ' := [(5, (.adt 1), (some 5)), (0, (.adt 3), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.move (.generated .binding 5))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 19) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 1 5) [])])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) rfl rfl rfl)) (Corr.mCons (Γ' := [(0, (.adt 3), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 58)) none (.cond (.call (.function 20) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 6) [])])) (.mk [] (.construct (.none (.adt 1)) []))))]) (tail := (.matchOn (.move (.generated .holder 58)) [(.mk .none (.mk [] (.cond (.call (.function 21) [(.move (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.construct (.adt 1 7) [])]))) (.mk [] (.succeed (.construct (.none (.adt 1)) [])))))), (.mk (.some (.bind (.generated .binding 7))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 7))]))))])) (Corr.mCons (Γ' := [(6, (.adt 1), (some 6)), (0, (.adt 3), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct .some [(.move (.generated .binding 6))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.matchArms (st := (.option (.adt 1))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.cond (lc := []) (ce := (.call (.function 20) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 1 6) [])])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) (Corr.mCons (Γ' := [(0, (.adt 3), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 21) [(.move (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.construct (.adt 1 7) [])]))) (.mk [] (.succeed (.construct (.none (.adt 1)) []))))) (Corr.mCons (Γ' := [(7, (.adt 1), (some 7)), (0, (.adt 3), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct .some [(.move (.generated .binding 7))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 21) [(.move (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.construct (.adt 1 7) [])]))) (lb := []) (tb := (.succeed (.construct (.none (.adt 1)) []))) (Corr.fOfB (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))) rfl rfl rfl)) rfl rfl rfl)) rfl rfl rfl)⟩⟩ + +theorem fun10 : FunOK program krate flags 10 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 59)) none (.move (.generated .binding 1)))], (.matchOn (.move (.generated .holder 59)) [(.mk (.adt 1 0 []) (.mk [] (.succeed (.call (.function 22) [(.move (.generated .binding 0))] false)))), (.mk (.adt 1 1 []) (.mk [] (.succeed (.call (.function 23) [(.move (.generated .binding 0))] false)))), (.mk (.adt 1 2 []) (.mk [] (.succeed (.call (.function 24) [(.move (.generated .binding 0))] false)))), (.mk (.adt 1 3 []) (.mk [] (.succeed (.call (.function 25) [(.move (.generated .binding 0))] false)))), (.mk (.adt 1 4 []) (.mk [] (.call (.function 26) [(.move (.generated .binding 0))] false))), (.mk (.adt 1 5 []) (.mk [] (.succeed (.call (.function 27) [(.move (.generated .binding 0))] false)))), (.mk (.adt 1 6 []) (.mk [] (.succeed (.call (.function 28) [(.move (.generated .binding 0))] false)))), (.mk (.adt 1 7 []) (.mk [] (.call (.function 29) [(.move (.generated .binding 0))] false)))]), [(1, (.adt 1), (some 1)), (0, (.adt 3), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.adt 1)) (U := []) (view := false) (idx := [0, 1, 2, 3, 4, 5, 6, 7]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.adt 1), (some 1)), (0, (.adt 3), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.call (.function 22) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 1), (some 1)), (0, (.adt 3), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.call (.function 23) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 1), (some 1)), (0, (.adt 3), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.succeed (.call (.function 24) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 1), (some 1)), (0, (.adt 3), (some 0))]) (j := 3) (loads := []) (lets := []) (tail := (.succeed (.call (.function 25) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 1), (some 1)), (0, (.adt 3), (some 0))]) (j := 4) (loads := []) (lets := []) (tail := (.call (.function 26) [(.move (.generated .binding 0))] false)) (Corr.mCons (Γ' := [(1, (.adt 1), (some 1)), (0, (.adt 3), (some 0))]) (j := 5) (loads := []) (lets := []) (tail := (.succeed (.call (.function 27) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 1), (some 1)), (0, (.adt 3), (some 0))]) (j := 6) (loads := []) (lets := []) (tail := (.succeed (.call (.function 28) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 1), (some 1)), (0, (.adt 3), (some 0))]) (j := 7) (loads := []) (lets := []) (tail := (.call (.function 29) [(.move (.generated .binding 0))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.callF (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl)⟩⟩ + +theorem fun11 : FunOK program krate flags 11 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.tuple [.wild, (.bind (.generated .part 60))]) none (.block (.mk [(.mk (.bind (.generated .binding 7)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 3)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 1)) (some (.pair .bool .nat)) (.pair (.call (.function 14) [(.clone (.generated .binding 0))] false) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 61)), .wild]) none (.copy (.generated .binding 1)))] (.cond (.move (.generated .part 61)) (.mk [] (.copy (.generated .binding 1))) (.mk [(.mk (.bind (.generated .binding 2)) (some (.pair .bool .nat)) (.pair (.call (.function 15) [(.clone (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 62)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 62)))) (.block (.mk [(.mk (.bind (.generated .operand 65)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 63))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 63))))), (.mk (.bind (.generated .operand 66)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 64))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 64)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 65)), (.move (.generated .operand 66))] true))))))))), (.mk (.tuple [(.bind (.generated .part 67)), .wild]) none (.copy (.generated .binding 3)))] (.cond (.move (.generated .part 67)) (.mk [] (.copy (.generated .binding 3))) (.mk [(.mk (.bind (.generated .binding 6)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 4)) (some (.pair .bool .nat)) (.pair (.call (.function 16) [(.clone (.generated .binding 0))] false) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 68)), .wild]) none (.copy (.generated .binding 4)))] (.cond (.move (.generated .part 68)) (.mk [] (.copy (.generated .binding 4))) (.mk [(.mk (.bind (.generated .binding 5)) (some (.pair .bool .nat)) (.pair (.call (.function 17) [(.clone (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 69)), .wild]) none (.copy (.generated .binding 5)))] (.move (.generated .part 69)))) (.block (.mk [(.mk (.bind (.generated .operand 72)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 70))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 70))))), (.mk (.bind (.generated .operand 73)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 71))]) none (.copy (.generated .binding 5)))] (.move (.generated .part 71)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 72)), (.move (.generated .operand 73))] true)))))))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 74)), .wild]) none (.copy (.generated .binding 6)))] (.move (.generated .part 74)))) (.block (.mk [(.mk (.bind (.generated .operand 77)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 75))]) none (.copy (.generated .binding 3)))] (.move (.generated .part 75))))), (.mk (.bind (.generated .operand 78)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 76))]) none (.copy (.generated .binding 6)))] (.move (.generated .part 76)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 77)), (.move (.generated .operand 78))] true))))))))), (.mk (.tuple [(.bind (.generated .part 79)), .wild]) none (.copy (.generated .binding 7)))] (.cond (.move (.generated .part 79)) (.mk [] (.copy (.generated .binding 7))) (.mk [(.mk (.bind (.generated .binding 14)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 10)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 8)) (some (.pair .bool .nat)) (.pair (.call (.function 18) [(.clone (.generated .binding 0))] true) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 80)), .wild]) none (.copy (.generated .binding 8)))] (.cond (.move (.generated .part 80)) (.mk [] (.copy (.generated .binding 8))) (.mk [(.mk (.bind (.generated .binding 9)) (some (.pair .bool .nat)) (.pair (.call (.function 19) [(.clone (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 81)), .wild]) none (.copy (.generated .binding 9)))] (.move (.generated .part 81)))) (.block (.mk [(.mk (.bind (.generated .operand 84)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 82))]) none (.copy (.generated .binding 8)))] (.move (.generated .part 82))))), (.mk (.bind (.generated .operand 85)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 83))]) none (.copy (.generated .binding 9)))] (.move (.generated .part 83)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 84)), (.move (.generated .operand 85))] true))))))))), (.mk (.tuple [(.bind (.generated .part 86)), .wild]) none (.copy (.generated .binding 10)))] (.cond (.move (.generated .part 86)) (.mk [] (.copy (.generated .binding 10))) (.mk [(.mk (.bind (.generated .binding 13)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 11)) (some (.pair .bool .nat)) (.pair (.call (.function 20) [(.clone (.generated .binding 0))] false) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 87)), .wild]) none (.copy (.generated .binding 11)))] (.cond (.move (.generated .part 87)) (.mk [] (.copy (.generated .binding 11))) (.mk [(.mk (.bind (.generated .binding 12)) (some (.pair .bool .nat)) (.pair (.call (.function 21) [(.move (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 88)), .wild]) none (.copy (.generated .binding 12)))] (.move (.generated .part 88)))) (.block (.mk [(.mk (.bind (.generated .operand 91)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 89))]) none (.copy (.generated .binding 11)))] (.move (.generated .part 89))))), (.mk (.bind (.generated .operand 92)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 90))]) none (.copy (.generated .binding 12)))] (.move (.generated .part 90)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] true)))))))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 93)), .wild]) none (.copy (.generated .binding 13)))] (.move (.generated .part 93)))) (.block (.mk [(.mk (.bind (.generated .operand 96)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 94))]) none (.copy (.generated .binding 10)))] (.move (.generated .part 94))))), (.mk (.bind (.generated .operand 97)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 95))]) none (.copy (.generated .binding 13)))] (.move (.generated .part 95)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 96)), (.move (.generated .operand 97))] true)))))))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 98)), .wild]) none (.copy (.generated .binding 14)))] (.move (.generated .part 98)))) (.block (.mk [(.mk (.bind (.generated .operand 101)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 99))]) none (.copy (.generated .binding 7)))] (.move (.generated .part 99))))), (.mk (.bind (.generated .operand 102)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 100))]) none (.copy (.generated .binding 14)))] (.move (.generated .part 100)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 101)), (.move (.generated .operand 102))] true)))))))))], (.succeed (.move (.generated .part 60))), [(0, (.adt 3), (some 0))], rfl, rfl, + (Corr.fOfB (Corr.second (ta := .bool) (tb := .nat) (Corr.eOfB (lets := [(.mk (.bind (.generated .binding 7)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 3)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 1)) (some (.pair .bool .nat)) (.pair (.call (.function 14) [(.clone (.generated .binding 0))] false) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 61)), .wild]) none (.copy (.generated .binding 1)))] (.cond (.move (.generated .part 61)) (.mk [] (.copy (.generated .binding 1))) (.mk [(.mk (.bind (.generated .binding 2)) (some (.pair .bool .nat)) (.pair (.call (.function 15) [(.clone (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 62)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 62)))) (.block (.mk [(.mk (.bind (.generated .operand 65)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 63))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 63))))), (.mk (.bind (.generated .operand 66)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 64))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 64)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 65)), (.move (.generated .operand 66))] true))))))))), (.mk (.tuple [(.bind (.generated .part 67)), .wild]) none (.copy (.generated .binding 3)))] (.cond (.move (.generated .part 67)) (.mk [] (.copy (.generated .binding 3))) (.mk [(.mk (.bind (.generated .binding 6)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 4)) (some (.pair .bool .nat)) (.pair (.call (.function 16) [(.clone (.generated .binding 0))] false) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 68)), .wild]) none (.copy (.generated .binding 4)))] (.cond (.move (.generated .part 68)) (.mk [] (.copy (.generated .binding 4))) (.mk [(.mk (.bind (.generated .binding 5)) (some (.pair .bool .nat)) (.pair (.call (.function 17) [(.clone (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 69)), .wild]) none (.copy (.generated .binding 5)))] (.move (.generated .part 69)))) (.block (.mk [(.mk (.bind (.generated .operand 72)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 70))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 70))))), (.mk (.bind (.generated .operand 73)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 71))]) none (.copy (.generated .binding 5)))] (.move (.generated .part 71)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 72)), (.move (.generated .operand 73))] true)))))))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 74)), .wild]) none (.copy (.generated .binding 6)))] (.move (.generated .part 74)))) (.block (.mk [(.mk (.bind (.generated .operand 77)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 75))]) none (.copy (.generated .binding 3)))] (.move (.generated .part 75))))), (.mk (.bind (.generated .operand 78)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 76))]) none (.copy (.generated .binding 6)))] (.move (.generated .part 76)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 77)), (.move (.generated .operand 78))] true))))))))), (.mk (.tuple [(.bind (.generated .part 79)), .wild]) none (.copy (.generated .binding 7)))]) (tail := (.cond (.move (.generated .part 79)) (.mk [] (.copy (.generated .binding 7))) (.mk [(.mk (.bind (.generated .binding 14)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 10)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 8)) (some (.pair .bool .nat)) (.pair (.call (.function 18) [(.clone (.generated .binding 0))] true) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 80)), .wild]) none (.copy (.generated .binding 8)))] (.cond (.move (.generated .part 80)) (.mk [] (.copy (.generated .binding 8))) (.mk [(.mk (.bind (.generated .binding 9)) (some (.pair .bool .nat)) (.pair (.call (.function 19) [(.clone (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 81)), .wild]) none (.copy (.generated .binding 9)))] (.move (.generated .part 81)))) (.block (.mk [(.mk (.bind (.generated .operand 84)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 82))]) none (.copy (.generated .binding 8)))] (.move (.generated .part 82))))), (.mk (.bind (.generated .operand 85)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 83))]) none (.copy (.generated .binding 9)))] (.move (.generated .part 83)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 84)), (.move (.generated .operand 85))] true))))))))), (.mk (.tuple [(.bind (.generated .part 86)), .wild]) none (.copy (.generated .binding 10)))] (.cond (.move (.generated .part 86)) (.mk [] (.copy (.generated .binding 10))) (.mk [(.mk (.bind (.generated .binding 13)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 11)) (some (.pair .bool .nat)) (.pair (.call (.function 20) [(.clone (.generated .binding 0))] false) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 87)), .wild]) none (.copy (.generated .binding 11)))] (.cond (.move (.generated .part 87)) (.mk [] (.copy (.generated .binding 11))) (.mk [(.mk (.bind (.generated .binding 12)) (some (.pair .bool .nat)) (.pair (.call (.function 21) [(.move (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 88)), .wild]) none (.copy (.generated .binding 12)))] (.move (.generated .part 88)))) (.block (.mk [(.mk (.bind (.generated .operand 91)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 89))]) none (.copy (.generated .binding 11)))] (.move (.generated .part 89))))), (.mk (.bind (.generated .operand 92)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 90))]) none (.copy (.generated .binding 12)))] (.move (.generated .part 90)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] true)))))))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 93)), .wild]) none (.copy (.generated .binding 13)))] (.move (.generated .part 93)))) (.block (.mk [(.mk (.bind (.generated .operand 96)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 94))]) none (.copy (.generated .binding 10)))] (.move (.generated .part 94))))), (.mk (.bind (.generated .operand 97)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 95))]) none (.copy (.generated .binding 13)))] (.move (.generated .part 95)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 96)), (.move (.generated .operand 97))] true)))))))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 98)), .wild]) none (.copy (.generated .binding 14)))] (.move (.generated .part 98)))) (.block (.mk [(.mk (.bind (.generated .operand 101)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 99))]) none (.copy (.generated .binding 7)))] (.move (.generated .part 99))))), (.mk (.bind (.generated .operand 102)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 100))]) none (.copy (.generated .binding 14)))] (.move (.generated .part 100)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 101)), (.move (.generated .operand 102))] true))))))) (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .binding 3)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 1)) (some (.pair .bool .nat)) (.pair (.call (.function 14) [(.clone (.generated .binding 0))] false) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 61)), .wild]) none (.copy (.generated .binding 1)))] (.cond (.move (.generated .part 61)) (.mk [] (.copy (.generated .binding 1))) (.mk [(.mk (.bind (.generated .binding 2)) (some (.pair .bool .nat)) (.pair (.call (.function 15) [(.clone (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 62)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 62)))) (.block (.mk [(.mk (.bind (.generated .operand 65)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 63))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 63))))), (.mk (.bind (.generated .operand 66)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 64))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 64)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 65)), (.move (.generated .operand 66))] true))))))))), (.mk (.tuple [(.bind (.generated .part 67)), .wild]) none (.copy (.generated .binding 3)))]) (tail := (.cond (.move (.generated .part 67)) (.mk [] (.copy (.generated .binding 3))) (.mk [(.mk (.bind (.generated .binding 6)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 4)) (some (.pair .bool .nat)) (.pair (.call (.function 16) [(.clone (.generated .binding 0))] false) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 68)), .wild]) none (.copy (.generated .binding 4)))] (.cond (.move (.generated .part 68)) (.mk [] (.copy (.generated .binding 4))) (.mk [(.mk (.bind (.generated .binding 5)) (some (.pair .bool .nat)) (.pair (.call (.function 17) [(.clone (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 69)), .wild]) none (.copy (.generated .binding 5)))] (.move (.generated .part 69)))) (.block (.mk [(.mk (.bind (.generated .operand 72)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 70))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 70))))), (.mk (.bind (.generated .operand 73)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 71))]) none (.copy (.generated .binding 5)))] (.move (.generated .part 71)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 72)), (.move (.generated .operand 73))] true)))))))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 74)), .wild]) none (.copy (.generated .binding 6)))] (.move (.generated .part 74)))) (.block (.mk [(.mk (.bind (.generated .operand 77)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 75))]) none (.copy (.generated .binding 3)))] (.move (.generated .part 75))))), (.mk (.bind (.generated .operand 78)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 76))]) none (.copy (.generated .binding 6)))] (.move (.generated .part 76)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 77)), (.move (.generated .operand 78))] true))))))) (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .binding 1)) (some (.pair .bool .nat)) (.pair (.call (.function 14) [(.clone (.generated .binding 0))] false) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 61)), .wild]) none (.copy (.generated .binding 1)))]) (tail := (.cond (.move (.generated .part 61)) (.mk [] (.copy (.generated .binding 1))) (.mk [(.mk (.bind (.generated .binding 2)) (some (.pair .bool .nat)) (.pair (.call (.function 15) [(.clone (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 62)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 62)))) (.block (.mk [(.mk (.bind (.generated .operand 65)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 63))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 63))))), (.mk (.bind (.generated .operand 66)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 64))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 64)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 65)), (.move (.generated .operand 66))] true))))))) (Corr.letBind (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl (Corr.cond (lc := [(.mk (.tuple [(.bind (.generated .part 61)), .wild]) none (.copy (.generated .binding 1)))]) (ce := (.move (.generated .part 61))) (lk := []) (Corr.first (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl) (Corr.kIf (la := []) (ta := (.copy (.generated .binding 1))) (lb := [(.mk (.bind (.generated .binding 2)) (some (.pair .bool .nat)) (.pair (.call (.function 15) [(.clone (.generated .binding 0))] false) (.lit (.nat 1))))]) (tb := (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 62)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 62)))) (.block (.mk [(.mk (.bind (.generated .operand 65)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 63))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 63))))), (.mk (.bind (.generated .operand 66)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 64))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 64)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 65)), (.move (.generated .operand 66))] true))))) (Corr.bOfE (Corr.var rfl rfl)) (Corr.letBind (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 62)), .wild]) none (.copy (.generated .binding 2)))]) (tail := (.move (.generated .part 62))) (Corr.first (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 65)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 63))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 63))))), (.mk (.bind (.generated .operand 66)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 64))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 64)))))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 65)), (.move (.generated .operand 66))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 63))]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 63))) (Corr.second (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 64))]) none (.copy (.generated .binding 2)))]) (tail := (.move (.generated .part 64))) (Corr.second (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))))))))) rfl (Corr.cond (lc := [(.mk (.tuple [(.bind (.generated .part 67)), .wild]) none (.copy (.generated .binding 3)))]) (ce := (.move (.generated .part 67))) (lk := []) (Corr.first (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl) (Corr.kIf (la := []) (ta := (.copy (.generated .binding 3))) (lb := [(.mk (.bind (.generated .binding 6)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 4)) (some (.pair .bool .nat)) (.pair (.call (.function 16) [(.clone (.generated .binding 0))] false) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 68)), .wild]) none (.copy (.generated .binding 4)))] (.cond (.move (.generated .part 68)) (.mk [] (.copy (.generated .binding 4))) (.mk [(.mk (.bind (.generated .binding 5)) (some (.pair .bool .nat)) (.pair (.call (.function 17) [(.clone (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 69)), .wild]) none (.copy (.generated .binding 5)))] (.move (.generated .part 69)))) (.block (.mk [(.mk (.bind (.generated .operand 72)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 70))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 70))))), (.mk (.bind (.generated .operand 73)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 71))]) none (.copy (.generated .binding 5)))] (.move (.generated .part 71)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 72)), (.move (.generated .operand 73))] true)))))))))]) (tb := (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 74)), .wild]) none (.copy (.generated .binding 6)))] (.move (.generated .part 74)))) (.block (.mk [(.mk (.bind (.generated .operand 77)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 75))]) none (.copy (.generated .binding 3)))] (.move (.generated .part 75))))), (.mk (.bind (.generated .operand 78)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 76))]) none (.copy (.generated .binding 6)))] (.move (.generated .part 76)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 77)), (.move (.generated .operand 78))] true))))) (Corr.bOfE (Corr.var rfl rfl)) (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .binding 4)) (some (.pair .bool .nat)) (.pair (.call (.function 16) [(.clone (.generated .binding 0))] false) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 68)), .wild]) none (.copy (.generated .binding 4)))]) (tail := (.cond (.move (.generated .part 68)) (.mk [] (.copy (.generated .binding 4))) (.mk [(.mk (.bind (.generated .binding 5)) (some (.pair .bool .nat)) (.pair (.call (.function 17) [(.clone (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 69)), .wild]) none (.copy (.generated .binding 5)))] (.move (.generated .part 69)))) (.block (.mk [(.mk (.bind (.generated .operand 72)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 70))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 70))))), (.mk (.bind (.generated .operand 73)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 71))]) none (.copy (.generated .binding 5)))] (.move (.generated .part 71)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 72)), (.move (.generated .operand 73))] true))))))) (Corr.letBind (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl (Corr.cond (lc := [(.mk (.tuple [(.bind (.generated .part 68)), .wild]) none (.copy (.generated .binding 4)))]) (ce := (.move (.generated .part 68))) (lk := []) (Corr.first (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl) (Corr.kIf (la := []) (ta := (.copy (.generated .binding 4))) (lb := [(.mk (.bind (.generated .binding 5)) (some (.pair .bool .nat)) (.pair (.call (.function 17) [(.clone (.generated .binding 0))] false) (.lit (.nat 1))))]) (tb := (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 69)), .wild]) none (.copy (.generated .binding 5)))] (.move (.generated .part 69)))) (.block (.mk [(.mk (.bind (.generated .operand 72)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 70))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 70))))), (.mk (.bind (.generated .operand 73)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 71))]) none (.copy (.generated .binding 5)))] (.move (.generated .part 71)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 72)), (.move (.generated .operand 73))] true))))) (Corr.bOfE (Corr.var rfl rfl)) (Corr.letBind (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 69)), .wild]) none (.copy (.generated .binding 5)))]) (tail := (.move (.generated .part 69))) (Corr.first (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 72)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 70))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 70))))), (.mk (.bind (.generated .operand 73)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 71))]) none (.copy (.generated .binding 5)))] (.move (.generated .part 71)))))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 72)), (.move (.generated .operand 73))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 70))]) none (.copy (.generated .binding 4)))]) (tail := (.move (.generated .part 70))) (Corr.second (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 71))]) none (.copy (.generated .binding 5)))]) (tail := (.move (.generated .part 71))) (Corr.second (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))))))))) rfl (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 74)), .wild]) none (.copy (.generated .binding 6)))]) (tail := (.move (.generated .part 74))) (Corr.first (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 77)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 75))]) none (.copy (.generated .binding 3)))] (.move (.generated .part 75))))), (.mk (.bind (.generated .operand 78)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 76))]) none (.copy (.generated .binding 6)))] (.move (.generated .part 76)))))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 77)), (.move (.generated .operand 78))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 75))]) none (.copy (.generated .binding 3)))]) (tail := (.move (.generated .part 75))) (Corr.second (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 76))]) none (.copy (.generated .binding 6)))]) (tail := (.move (.generated .part 76))) (Corr.second (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))))))))) rfl (Corr.cond (lc := [(.mk (.tuple [(.bind (.generated .part 79)), .wild]) none (.copy (.generated .binding 7)))]) (ce := (.move (.generated .part 79))) (lk := []) (Corr.first (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl) (Corr.kIf (la := []) (ta := (.copy (.generated .binding 7))) (lb := [(.mk (.bind (.generated .binding 14)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 10)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 8)) (some (.pair .bool .nat)) (.pair (.call (.function 18) [(.clone (.generated .binding 0))] true) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 80)), .wild]) none (.copy (.generated .binding 8)))] (.cond (.move (.generated .part 80)) (.mk [] (.copy (.generated .binding 8))) (.mk [(.mk (.bind (.generated .binding 9)) (some (.pair .bool .nat)) (.pair (.call (.function 19) [(.clone (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 81)), .wild]) none (.copy (.generated .binding 9)))] (.move (.generated .part 81)))) (.block (.mk [(.mk (.bind (.generated .operand 84)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 82))]) none (.copy (.generated .binding 8)))] (.move (.generated .part 82))))), (.mk (.bind (.generated .operand 85)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 83))]) none (.copy (.generated .binding 9)))] (.move (.generated .part 83)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 84)), (.move (.generated .operand 85))] true))))))))), (.mk (.tuple [(.bind (.generated .part 86)), .wild]) none (.copy (.generated .binding 10)))] (.cond (.move (.generated .part 86)) (.mk [] (.copy (.generated .binding 10))) (.mk [(.mk (.bind (.generated .binding 13)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 11)) (some (.pair .bool .nat)) (.pair (.call (.function 20) [(.clone (.generated .binding 0))] false) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 87)), .wild]) none (.copy (.generated .binding 11)))] (.cond (.move (.generated .part 87)) (.mk [] (.copy (.generated .binding 11))) (.mk [(.mk (.bind (.generated .binding 12)) (some (.pair .bool .nat)) (.pair (.call (.function 21) [(.move (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 88)), .wild]) none (.copy (.generated .binding 12)))] (.move (.generated .part 88)))) (.block (.mk [(.mk (.bind (.generated .operand 91)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 89))]) none (.copy (.generated .binding 11)))] (.move (.generated .part 89))))), (.mk (.bind (.generated .operand 92)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 90))]) none (.copy (.generated .binding 12)))] (.move (.generated .part 90)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] true)))))))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 93)), .wild]) none (.copy (.generated .binding 13)))] (.move (.generated .part 93)))) (.block (.mk [(.mk (.bind (.generated .operand 96)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 94))]) none (.copy (.generated .binding 10)))] (.move (.generated .part 94))))), (.mk (.bind (.generated .operand 97)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 95))]) none (.copy (.generated .binding 13)))] (.move (.generated .part 95)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 96)), (.move (.generated .operand 97))] true)))))))))]) (tb := (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 98)), .wild]) none (.copy (.generated .binding 14)))] (.move (.generated .part 98)))) (.block (.mk [(.mk (.bind (.generated .operand 101)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 99))]) none (.copy (.generated .binding 7)))] (.move (.generated .part 99))))), (.mk (.bind (.generated .operand 102)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 100))]) none (.copy (.generated .binding 14)))] (.move (.generated .part 100)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 101)), (.move (.generated .operand 102))] true))))) (Corr.bOfE (Corr.var rfl rfl)) (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .binding 10)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 8)) (some (.pair .bool .nat)) (.pair (.call (.function 18) [(.clone (.generated .binding 0))] true) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 80)), .wild]) none (.copy (.generated .binding 8)))] (.cond (.move (.generated .part 80)) (.mk [] (.copy (.generated .binding 8))) (.mk [(.mk (.bind (.generated .binding 9)) (some (.pair .bool .nat)) (.pair (.call (.function 19) [(.clone (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 81)), .wild]) none (.copy (.generated .binding 9)))] (.move (.generated .part 81)))) (.block (.mk [(.mk (.bind (.generated .operand 84)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 82))]) none (.copy (.generated .binding 8)))] (.move (.generated .part 82))))), (.mk (.bind (.generated .operand 85)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 83))]) none (.copy (.generated .binding 9)))] (.move (.generated .part 83)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 84)), (.move (.generated .operand 85))] true))))))))), (.mk (.tuple [(.bind (.generated .part 86)), .wild]) none (.copy (.generated .binding 10)))]) (tail := (.cond (.move (.generated .part 86)) (.mk [] (.copy (.generated .binding 10))) (.mk [(.mk (.bind (.generated .binding 13)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 11)) (some (.pair .bool .nat)) (.pair (.call (.function 20) [(.clone (.generated .binding 0))] false) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 87)), .wild]) none (.copy (.generated .binding 11)))] (.cond (.move (.generated .part 87)) (.mk [] (.copy (.generated .binding 11))) (.mk [(.mk (.bind (.generated .binding 12)) (some (.pair .bool .nat)) (.pair (.call (.function 21) [(.move (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 88)), .wild]) none (.copy (.generated .binding 12)))] (.move (.generated .part 88)))) (.block (.mk [(.mk (.bind (.generated .operand 91)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 89))]) none (.copy (.generated .binding 11)))] (.move (.generated .part 89))))), (.mk (.bind (.generated .operand 92)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 90))]) none (.copy (.generated .binding 12)))] (.move (.generated .part 90)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] true)))))))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 93)), .wild]) none (.copy (.generated .binding 13)))] (.move (.generated .part 93)))) (.block (.mk [(.mk (.bind (.generated .operand 96)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 94))]) none (.copy (.generated .binding 10)))] (.move (.generated .part 94))))), (.mk (.bind (.generated .operand 97)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 95))]) none (.copy (.generated .binding 13)))] (.move (.generated .part 95)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 96)), (.move (.generated .operand 97))] true))))))) (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .binding 8)) (some (.pair .bool .nat)) (.pair (.call (.function 18) [(.clone (.generated .binding 0))] true) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 80)), .wild]) none (.copy (.generated .binding 8)))]) (tail := (.cond (.move (.generated .part 80)) (.mk [] (.copy (.generated .binding 8))) (.mk [(.mk (.bind (.generated .binding 9)) (some (.pair .bool .nat)) (.pair (.call (.function 19) [(.clone (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 81)), .wild]) none (.copy (.generated .binding 9)))] (.move (.generated .part 81)))) (.block (.mk [(.mk (.bind (.generated .operand 84)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 82))]) none (.copy (.generated .binding 8)))] (.move (.generated .part 82))))), (.mk (.bind (.generated .operand 85)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 83))]) none (.copy (.generated .binding 9)))] (.move (.generated .part 83)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 84)), (.move (.generated .operand 85))] true))))))) (Corr.letBind (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl (Corr.cond (lc := [(.mk (.tuple [(.bind (.generated .part 80)), .wild]) none (.copy (.generated .binding 8)))]) (ce := (.move (.generated .part 80))) (lk := []) (Corr.first (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl) (Corr.kIf (la := []) (ta := (.copy (.generated .binding 8))) (lb := [(.mk (.bind (.generated .binding 9)) (some (.pair .bool .nat)) (.pair (.call (.function 19) [(.clone (.generated .binding 0))] false) (.lit (.nat 1))))]) (tb := (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 81)), .wild]) none (.copy (.generated .binding 9)))] (.move (.generated .part 81)))) (.block (.mk [(.mk (.bind (.generated .operand 84)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 82))]) none (.copy (.generated .binding 8)))] (.move (.generated .part 82))))), (.mk (.bind (.generated .operand 85)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 83))]) none (.copy (.generated .binding 9)))] (.move (.generated .part 83)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 84)), (.move (.generated .operand 85))] true))))) (Corr.bOfE (Corr.var rfl rfl)) (Corr.letBind (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 81)), .wild]) none (.copy (.generated .binding 9)))]) (tail := (.move (.generated .part 81))) (Corr.first (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 84)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 82))]) none (.copy (.generated .binding 8)))] (.move (.generated .part 82))))), (.mk (.bind (.generated .operand 85)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 83))]) none (.copy (.generated .binding 9)))] (.move (.generated .part 83)))))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 84)), (.move (.generated .operand 85))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 82))]) none (.copy (.generated .binding 8)))]) (tail := (.move (.generated .part 82))) (Corr.second (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 83))]) none (.copy (.generated .binding 9)))]) (tail := (.move (.generated .part 83))) (Corr.second (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))))))))) rfl (Corr.cond (lc := [(.mk (.tuple [(.bind (.generated .part 86)), .wild]) none (.copy (.generated .binding 10)))]) (ce := (.move (.generated .part 86))) (lk := []) (Corr.first (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl) (Corr.kIf (la := []) (ta := (.copy (.generated .binding 10))) (lb := [(.mk (.bind (.generated .binding 13)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 11)) (some (.pair .bool .nat)) (.pair (.call (.function 20) [(.clone (.generated .binding 0))] false) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 87)), .wild]) none (.copy (.generated .binding 11)))] (.cond (.move (.generated .part 87)) (.mk [] (.copy (.generated .binding 11))) (.mk [(.mk (.bind (.generated .binding 12)) (some (.pair .bool .nat)) (.pair (.call (.function 21) [(.move (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 88)), .wild]) none (.copy (.generated .binding 12)))] (.move (.generated .part 88)))) (.block (.mk [(.mk (.bind (.generated .operand 91)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 89))]) none (.copy (.generated .binding 11)))] (.move (.generated .part 89))))), (.mk (.bind (.generated .operand 92)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 90))]) none (.copy (.generated .binding 12)))] (.move (.generated .part 90)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] true)))))))))]) (tb := (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 93)), .wild]) none (.copy (.generated .binding 13)))] (.move (.generated .part 93)))) (.block (.mk [(.mk (.bind (.generated .operand 96)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 94))]) none (.copy (.generated .binding 10)))] (.move (.generated .part 94))))), (.mk (.bind (.generated .operand 97)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 95))]) none (.copy (.generated .binding 13)))] (.move (.generated .part 95)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 96)), (.move (.generated .operand 97))] true))))) (Corr.bOfE (Corr.var rfl rfl)) (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .binding 11)) (some (.pair .bool .nat)) (.pair (.call (.function 20) [(.clone (.generated .binding 0))] false) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 87)), .wild]) none (.copy (.generated .binding 11)))]) (tail := (.cond (.move (.generated .part 87)) (.mk [] (.copy (.generated .binding 11))) (.mk [(.mk (.bind (.generated .binding 12)) (some (.pair .bool .nat)) (.pair (.call (.function 21) [(.move (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 88)), .wild]) none (.copy (.generated .binding 12)))] (.move (.generated .part 88)))) (.block (.mk [(.mk (.bind (.generated .operand 91)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 89))]) none (.copy (.generated .binding 11)))] (.move (.generated .part 89))))), (.mk (.bind (.generated .operand 92)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 90))]) none (.copy (.generated .binding 12)))] (.move (.generated .part 90)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] true))))))) (Corr.letBind (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl (Corr.cond (lc := [(.mk (.tuple [(.bind (.generated .part 87)), .wild]) none (.copy (.generated .binding 11)))]) (ce := (.move (.generated .part 87))) (lk := []) (Corr.first (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl) (Corr.kIf (la := []) (ta := (.copy (.generated .binding 11))) (lb := [(.mk (.bind (.generated .binding 12)) (some (.pair .bool .nat)) (.pair (.call (.function 21) [(.move (.generated .binding 0))] false) (.lit (.nat 1))))]) (tb := (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 88)), .wild]) none (.copy (.generated .binding 12)))] (.move (.generated .part 88)))) (.block (.mk [(.mk (.bind (.generated .operand 91)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 89))]) none (.copy (.generated .binding 11)))] (.move (.generated .part 89))))), (.mk (.bind (.generated .operand 92)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 90))]) none (.copy (.generated .binding 12)))] (.move (.generated .part 90)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] true))))) (Corr.bOfE (Corr.var rfl rfl)) (Corr.letBind (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 88)), .wild]) none (.copy (.generated .binding 12)))]) (tail := (.move (.generated .part 88))) (Corr.first (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 91)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 89))]) none (.copy (.generated .binding 11)))] (.move (.generated .part 89))))), (.mk (.bind (.generated .operand 92)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 90))]) none (.copy (.generated .binding 12)))] (.move (.generated .part 90)))))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 89))]) none (.copy (.generated .binding 11)))]) (tail := (.move (.generated .part 89))) (Corr.second (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 90))]) none (.copy (.generated .binding 12)))]) (tail := (.move (.generated .part 90))) (Corr.second (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))))))))) rfl (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 93)), .wild]) none (.copy (.generated .binding 13)))]) (tail := (.move (.generated .part 93))) (Corr.first (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 96)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 94))]) none (.copy (.generated .binding 10)))] (.move (.generated .part 94))))), (.mk (.bind (.generated .operand 97)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 95))]) none (.copy (.generated .binding 13)))] (.move (.generated .part 95)))))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 96)), (.move (.generated .operand 97))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 94))]) none (.copy (.generated .binding 10)))]) (tail := (.move (.generated .part 94))) (Corr.second (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 95))]) none (.copy (.generated .binding 13)))]) (tail := (.move (.generated .part 95))) (Corr.second (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))))))))) rfl (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 98)), .wild]) none (.copy (.generated .binding 14)))]) (tail := (.move (.generated .part 98))) (Corr.first (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 101)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 99))]) none (.copy (.generated .binding 7)))] (.move (.generated .part 99))))), (.mk (.bind (.generated .operand 102)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 100))]) none (.copy (.generated .binding 14)))] (.move (.generated .part 100)))))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 101)), (.move (.generated .operand 102))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 99))]) none (.copy (.generated .binding 7)))]) (tail := (.move (.generated .part 99))) (Corr.second (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 100))]) none (.copy (.generated .binding 14)))]) (tail := (.move (.generated .part 100))) (Corr.second (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))))))))) rfl))⟩⟩ + +theorem fun12 : FunOK program krate flags 12 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 3 0) [(.move (.generated .binding 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0))]), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))))))))) rfl)⟩⟩ + +theorem fun13 : FunOK program krate flags 13 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 103)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 104)) none (.lit (.nat 3)))], (.cond (.call (.runtime .natLe) [(.move (.generated .operand 103)), (.move (.generated .operand 104))] false) (.mk [(.mk (.bind (.generated .operand 105)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 106)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 105)), (.move (.generated .operand 106))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 110)) none (.cond (.call (.function 30) [(.clone (.generated .binding 0))] false) (.mk [(.mk (.bind (.generated .operand 108)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 107))]) (.mk [] (.move (.generated .part 107))))])), (.mk (.bind (.generated .operand 109)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 108)), (.move (.generated .operand 109))] false) (.mk [] (.cond (.call (.function 31) [(.clone (.generated .binding 0))] false) (.mk [] (.call (.function 32) [(.move (.generated .binding 0))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))))] (.call (.runtime .boolNot) [(.move (.generated .operand 110))] false)))) (.mk [] (.lit (.bool false)))), [(1, .nat, (some 1)), (0, (.adt 0), (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 103)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 104)) none (.lit (.nat 3)))]) (ce := (.call (.runtime .natLe) [(.move (.generated .operand 103)), (.move (.generated .operand 104))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 105)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 106)) none (.lit (.nat 3)))]) (ta := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 105)), (.move (.generated .operand 106))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 110)) none (.cond (.call (.function 30) [(.clone (.generated .binding 0))] false) (.mk [(.mk (.bind (.generated .operand 108)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 107))]) (.mk [] (.move (.generated .part 107))))])), (.mk (.bind (.generated .operand 109)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 108)), (.move (.generated .operand 109))] false) (.mk [] (.cond (.call (.function 31) [(.clone (.generated .binding 0))] false) (.mk [] (.call (.function 32) [(.move (.generated .binding 0))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))))] (.call (.runtime .boolNot) [(.move (.generated .operand 110))] false)))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 105)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 106)) none (.lit (.nat 3)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 105)), (.move (.generated .operand 106))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 110)) none (.cond (.call (.function 30) [(.clone (.generated .binding 0))] false) (.mk [(.mk (.bind (.generated .operand 108)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 107))]) (.mk [] (.move (.generated .part 107))))])), (.mk (.bind (.generated .operand 109)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 108)), (.move (.generated .operand 109))] false) (.mk [] (.cond (.call (.function 31) [(.clone (.generated .binding 0))] false) (.mk [] (.call (.function 32) [(.move (.generated .binding 0))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))))]) (tb := (.call (.runtime .boolNot) [(.move (.generated .operand 110))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.prim (ts := [.bool]) (Corr.opsCons (Corr.eOfBNil (Corr.cond (lc := []) (ce := (.call (.function 30) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 108)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 107))]) (.mk [] (.move (.generated .part 107))))])), (.mk (.bind (.generated .operand 109)) none (.lit (.nat 1)))]) (ta := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 108)), (.move (.generated .operand 109))] false) (.mk [] (.cond (.call (.function 31) [(.clone (.generated .binding 0))] false) (.mk [] (.call (.function 32) [(.move (.generated .binding 0))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 108)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 107))]) (.mk [] (.move (.generated .part 107))))])), (.mk (.bind (.generated .operand 109)) none (.lit (.nat 1)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 108)), (.move (.generated .operand 109))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 107))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 31) [(.clone (.generated .binding 0))] false) (.mk [] (.call (.function 32) [(.move (.generated .binding 0))] false)) (.mk [] (.lit (.bool false))))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := []) (ce := (.call (.function 31) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 32) [(.move (.generated .binding 0))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.bOfE (Corr.buildConst rfl))))) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl))) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ + +theorem fun14 : FunOK program krate flags 14 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 112)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 111)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 111))))])), (.mk (.bind (.generated .operand 113)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 112)), (.move (.generated .operand 113))] false) (.mk [] (.call (.function 31) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 114)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 114))))])] false)) (.mk [] (.lit (.bool false)))), [(0, (.adt 3), (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 112)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 111)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 111))))])), (.mk (.bind (.generated .operand 113)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 112)), (.move (.generated .operand 113))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 111))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 31) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 114)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 114))))])] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 114))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ + +theorem fun15 : FunOK program krate flags 15 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 116)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 115)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 115))))])), (.mk (.bind (.generated .operand 117)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 116)), (.move (.generated .operand 117))] false) (.mk [] (.call (.function 32) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 118)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 118))))])] false)) (.mk [] (.lit (.bool false)))), [(0, (.adt 3), (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 116)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 115)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 115))))])), (.mk (.bind (.generated .operand 117)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 116)), (.move (.generated .operand 117))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 115))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 32) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 118)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 118))))])] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 118))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ + +theorem fun16 : FunOK program krate flags 16 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 120)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 119)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 119))))])), (.mk (.bind (.generated .operand 121)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 120)), (.move (.generated .operand 121))] false) (.mk [] (.call (.function 33) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 122)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 122))))])] false)) (.mk [] (.lit (.bool false)))), [(0, (.adt 3), (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 120)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 119)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 119))))])), (.mk (.bind (.generated .operand 121)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 120)), (.move (.generated .operand 121))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 119))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 33) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 122)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 122))))])] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 122))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ + +theorem fun17 : FunOK program krate flags 17 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 124)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 123)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 123))))])), (.mk (.bind (.generated .operand 125)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 124)), (.move (.generated .operand 125))] false) (.mk [] (.call (.function 34) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 126)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 126))))])] false)) (.mk [] (.lit (.bool false)))), [(0, (.adt 3), (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 124)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 123)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 123))))])), (.mk (.bind (.generated .operand 125)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 124)), (.move (.generated .operand 125))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 123))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 34) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 126)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 126))))])] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 126))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ + +theorem fun18 : FunOK program krate flags 18 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 128)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 127)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 127))))])), (.mk (.bind (.generated .operand 129)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 128)), (.move (.generated .operand 129))] false) (.mk [(.mk (.bind (.generated .operand 140)) none (.lit (.nat 2))), (.mk (.bind (.generated .operand 141)) none (.block (.mk [(.mk (.bind (.generated .operand 138)) none (.block (.mk [(.mk (.bind (.generated .operand 135)) none (.block (.mk [(.mk (.bind (.generated .operand 132)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 130)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 130))))])), (.mk (.bind (.generated .operand 133)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 131)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 131))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 132)), (.move (.generated .operand 133))] true)))), (.mk (.bind (.generated .operand 136)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 134)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 134))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 135)), (.move (.generated .operand 136))] true)))), (.mk (.bind (.generated .operand 139)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 137)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 137))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 138)), (.move (.generated .operand 139))] true))))] (.succeed (.call (.runtime .natLe) [(.move (.generated .operand 140)), (.move (.generated .operand 141))] false))) (.mk [] (.succeed (.lit (.bool false))))), [(0, (.adt 3), (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 128)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 127)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 127))))])), (.mk (.bind (.generated .operand 129)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 128)), (.move (.generated .operand 129))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 127))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 140)) none (.lit (.nat 2))), (.mk (.bind (.generated .operand 141)) none (.block (.mk [(.mk (.bind (.generated .operand 138)) none (.block (.mk [(.mk (.bind (.generated .operand 135)) none (.block (.mk [(.mk (.bind (.generated .operand 132)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 130)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 130))))])), (.mk (.bind (.generated .operand 133)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 131)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 131))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 132)), (.move (.generated .operand 133))] true)))), (.mk (.bind (.generated .operand 136)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 134)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 134))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 135)), (.move (.generated .operand 136))] true)))), (.mk (.bind (.generated .operand 139)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 137)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 137))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 138)), (.move (.generated .operand 139))] true))))]) (ta := (.succeed (.call (.runtime .natLe) [(.move (.generated .operand 140)), (.move (.generated .operand 141))] false))) (lb := []) (tb := (.succeed (.lit (.bool false)))) (Corr.fOfB (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 138)) none (.block (.mk [(.mk (.bind (.generated .operand 135)) none (.block (.mk [(.mk (.bind (.generated .operand 132)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 130)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 130))))])), (.mk (.bind (.generated .operand 133)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 131)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 131))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 132)), (.move (.generated .operand 133))] true)))), (.mk (.bind (.generated .operand 136)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 134)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 134))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 135)), (.move (.generated .operand 136))] true)))), (.mk (.bind (.generated .operand 139)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 137)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 137))))]))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 138)), (.move (.generated .operand 139))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 135)) none (.block (.mk [(.mk (.bind (.generated .operand 132)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 130)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 130))))])), (.mk (.bind (.generated .operand 133)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 131)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 131))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 132)), (.move (.generated .operand 133))] true)))), (.mk (.bind (.generated .operand 136)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 134)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 134))))]))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 135)), (.move (.generated .operand 136))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 132)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 130)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 130))))])), (.mk (.bind (.generated .operand 133)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 131)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 131))))]))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 132)), (.move (.generated .operand 133))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 130))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 131))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 134))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 137))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.fOfB (Corr.bOfE (Corr.buildConst rfl)))))⟩⟩ + +theorem fun19 : FunOK program krate flags 19 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 143)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 142)), .wild, .wild]) (.mk [] (.move (.generated .part 142))))])), (.mk (.bind (.generated .operand 144)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 143)), (.move (.generated .operand 144))] false) (.mk [(.mk (.bind (.generated .operand 146)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 145)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 145))))])), (.mk (.bind (.generated .operand 147)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 146)), (.move (.generated .operand 147))] false) (.mk [(.mk (.bind (.generated .operand 151)) none (.block (.mk [(.mk (.bind (.generated .holder 150)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 149)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 149))))]))] (.matchOn (.move (.generated .holder 150)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 148))]) (.mk [] (.move (.generated .part 148))))])))), (.mk (.bind (.generated .operand 152)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 151)), (.move (.generated .operand 152))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))), [(0, (.adt 3), (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 143)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 142)), .wild, .wild]) (.mk [] (.move (.generated .part 142))))])), (.mk (.bind (.generated .operand 144)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 143)), (.move (.generated .operand 144))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 142))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 146)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 145)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 145))))])), (.mk (.bind (.generated .operand 147)) none (.lit (.nat 1)))]) (ta := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 146)), (.move (.generated .operand 147))] false) (.mk [(.mk (.bind (.generated .operand 151)) none (.block (.mk [(.mk (.bind (.generated .holder 150)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 149)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 149))))]))] (.matchOn (.move (.generated .holder 150)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 148))]) (.mk [] (.move (.generated .part 148))))])))), (.mk (.bind (.generated .operand 152)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 151)), (.move (.generated .operand 152))] false)) (.mk [] (.lit (.bool false))))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 146)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 145)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 145))))])), (.mk (.bind (.generated .operand 147)) none (.lit (.nat 1)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 146)), (.move (.generated .operand 147))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 145))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 151)) none (.block (.mk [(.mk (.bind (.generated .holder 150)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 149)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 149))))]))] (.matchOn (.move (.generated .holder 150)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 148))]) (.mk [] (.move (.generated .part 148))))])))), (.mk (.bind (.generated .operand 152)) none (.lit (.nat 1)))]) (ta := (.call (.runtime .natEq) [(.move (.generated .operand 151)), (.move (.generated .operand 152))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 150)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 149)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 149))))]))]) (tail := (.matchOn (.move (.generated .holder 150)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 148))]) (.mk [] (.move (.generated .part 148))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 148))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 149))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ + +theorem fun20 : FunOK program krate flags 20 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 154)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 153)), .wild]) (.mk [] (.move (.generated .part 153))))])), (.mk (.bind (.generated .operand 155)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 154)), (.move (.generated .operand 155))] false) (.mk [(.mk (.bind (.generated .operand 157)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 156)), .wild, .wild]) (.mk [] (.move (.generated .part 156))))])), (.mk (.bind (.generated .operand 158)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 157)), (.move (.generated .operand 158))] false) (.mk [] (.call (.function 30) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 159)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 159))))])] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))), [(0, (.adt 3), (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 154)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 153)), .wild]) (.mk [] (.move (.generated .part 153))))])), (.mk (.bind (.generated .operand 155)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 154)), (.move (.generated .operand 155))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 153))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 157)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 156)), .wild, .wild]) (.mk [] (.move (.generated .part 156))))])), (.mk (.bind (.generated .operand 158)) none (.lit (.nat 1)))]) (ta := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 157)), (.move (.generated .operand 158))] false) (.mk [] (.call (.function 30) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 159)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 159))))])] false)) (.mk [] (.lit (.bool false))))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 157)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 156)), .wild, .wild]) (.mk [] (.move (.generated .part 156))))])), (.mk (.bind (.generated .operand 158)) none (.lit (.nat 1)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 157)), (.move (.generated .operand 158))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 156))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 30) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 159)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 159))))])] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 159))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ + +theorem fun21 : FunOK program krate flags 21 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 161)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 160))]) (.mk [] (.move (.generated .part 160))))])), (.mk (.bind (.generated .operand 162)) none (.lit (.nat 3)))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 161)), (.move (.generated .operand 162))] false) (.mk [(.mk (.bind (.generated .operand 164)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 163))]) (.mk [] (.move (.generated .part 163))))])), (.mk (.bind (.generated .operand 165)) none (.lit (.nat 0)))] (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 164)), (.move (.generated .operand 165))] false) (.mk [(.mk (.bind (.generated .operand 167)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 166)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 166))))])), (.mk (.bind (.generated .operand 168)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 167)), (.move (.generated .operand 168))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 170)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 169))]) (.mk [] (.move (.generated .part 169))))])), (.mk (.bind (.generated .operand 171)) none (.lit (.nat 1)))] (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 170)), (.move (.generated .operand 171))] false) (.mk [(.mk (.bind (.generated .operand 173)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 172)), .wild, .wild]) (.mk [] (.move (.generated .part 172))))])), (.mk (.bind (.generated .operand 174)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 173)), (.move (.generated .operand 174))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 176)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 175))]) (.mk [] (.move (.generated .part 175))))])), (.mk (.bind (.generated .operand 177)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 176)), (.move (.generated .operand 177))] false) (.mk [(.mk (.bind (.generated .operand 179)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 178)), .wild]) (.mk [] (.move (.generated .part 178))))])), (.mk (.bind (.generated .operand 180)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 179)), (.move (.generated .operand 180))] false)) (.mk [] (.lit (.bool false))))))))) (.mk [] (.lit (.bool false)))), [(0, (.adt 3), (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 161)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 160))]) (.mk [] (.move (.generated .part 160))))])), (.mk (.bind (.generated .operand 162)) none (.lit (.nat 3)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 161)), (.move (.generated .operand 162))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 160))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 164)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 163))]) (.mk [] (.move (.generated .part 163))))])), (.mk (.bind (.generated .operand 165)) none (.lit (.nat 0)))]) (ta := (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 164)), (.move (.generated .operand 165))] false) (.mk [(.mk (.bind (.generated .operand 167)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 166)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 166))))])), (.mk (.bind (.generated .operand 168)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 167)), (.move (.generated .operand 168))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 170)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 169))]) (.mk [] (.move (.generated .part 169))))])), (.mk (.bind (.generated .operand 171)) none (.lit (.nat 1)))] (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 170)), (.move (.generated .operand 171))] false) (.mk [(.mk (.bind (.generated .operand 173)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 172)), .wild, .wild]) (.mk [] (.move (.generated .part 172))))])), (.mk (.bind (.generated .operand 174)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 173)), (.move (.generated .operand 174))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 176)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 175))]) (.mk [] (.move (.generated .part 175))))])), (.mk (.bind (.generated .operand 177)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 176)), (.move (.generated .operand 177))] false) (.mk [(.mk (.bind (.generated .operand 179)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 178)), .wild]) (.mk [] (.move (.generated .part 178))))])), (.mk (.bind (.generated .operand 180)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 179)), (.move (.generated .operand 180))] false)) (.mk [] (.lit (.bool false))))))))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 164)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 163))]) (.mk [] (.move (.generated .part 163))))])), (.mk (.bind (.generated .operand 165)) none (.lit (.nat 0)))]) (ce := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 164)), (.move (.generated .operand 165))] false) (.mk [(.mk (.bind (.generated .operand 167)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 166)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 166))))])), (.mk (.bind (.generated .operand 168)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 167)), (.move (.generated .operand 168))] false)) (.mk [] (.lit (.bool false))))) (lk := []) (Corr.cond (lc := [(.mk (.bind (.generated .operand 164)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 163))]) (.mk [] (.move (.generated .part 163))))])), (.mk (.bind (.generated .operand 165)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 164)), (.move (.generated .operand 165))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 163))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 167)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 166)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 166))))])), (.mk (.bind (.generated .operand 168)) none (.lit (.nat 1)))]) (ta := (.call (.runtime .natEq) [(.move (.generated .operand 167)), (.move (.generated .operand 168))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 166))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 170)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 169))]) (.mk [] (.move (.generated .part 169))))])), (.mk (.bind (.generated .operand 171)) none (.lit (.nat 1)))]) (tb := (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 170)), (.move (.generated .operand 171))] false) (.mk [(.mk (.bind (.generated .operand 173)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 172)), .wild, .wild]) (.mk [] (.move (.generated .part 172))))])), (.mk (.bind (.generated .operand 174)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 173)), (.move (.generated .operand 174))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 176)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 175))]) (.mk [] (.move (.generated .part 175))))])), (.mk (.bind (.generated .operand 177)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 176)), (.move (.generated .operand 177))] false) (.mk [(.mk (.bind (.generated .operand 179)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 178)), .wild]) (.mk [] (.move (.generated .part 178))))])), (.mk (.bind (.generated .operand 180)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 179)), (.move (.generated .operand 180))] false)) (.mk [] (.lit (.bool false))))))) (Corr.bOfE (Corr.buildConst rfl)) (Corr.cond (lc := [(.mk (.bind (.generated .operand 170)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 169))]) (.mk [] (.move (.generated .part 169))))])), (.mk (.bind (.generated .operand 171)) none (.lit (.nat 1)))]) (ce := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 170)), (.move (.generated .operand 171))] false) (.mk [(.mk (.bind (.generated .operand 173)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 172)), .wild, .wild]) (.mk [] (.move (.generated .part 172))))])), (.mk (.bind (.generated .operand 174)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 173)), (.move (.generated .operand 174))] false)) (.mk [] (.lit (.bool false))))) (lk := []) (Corr.cond (lc := [(.mk (.bind (.generated .operand 170)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 169))]) (.mk [] (.move (.generated .part 169))))])), (.mk (.bind (.generated .operand 171)) none (.lit (.nat 1)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 170)), (.move (.generated .operand 171))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 169))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 173)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 172)), .wild, .wild]) (.mk [] (.move (.generated .part 172))))])), (.mk (.bind (.generated .operand 174)) none (.lit (.nat 1)))]) (ta := (.call (.runtime .natEq) [(.move (.generated .operand 173)), (.move (.generated .operand 174))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 172))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 176)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 175))]) (.mk [] (.move (.generated .part 175))))])), (.mk (.bind (.generated .operand 177)) none (.lit (.nat 2)))]) (tb := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 176)), (.move (.generated .operand 177))] false) (.mk [(.mk (.bind (.generated .operand 179)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 178)), .wild]) (.mk [] (.move (.generated .part 178))))])), (.mk (.bind (.generated .operand 180)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 179)), (.move (.generated .operand 180))] false)) (.mk [] (.lit (.bool false))))) (Corr.bOfE (Corr.buildConst rfl)) (Corr.cond (lc := [(.mk (.bind (.generated .operand 176)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 175))]) (.mk [] (.move (.generated .part 175))))])), (.mk (.bind (.generated .operand 177)) none (.lit (.nat 2)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 176)), (.move (.generated .operand 177))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 175))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 179)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 178)), .wild]) (.mk [] (.move (.generated .part 178))))])), (.mk (.bind (.generated .operand 180)) none (.lit (.nat 1)))]) (ta := (.call (.runtime .natEq) [(.move (.generated .operand 179)), (.move (.generated .operand 180))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 178))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))))))) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ + +theorem fun22 : FunOK program krate flags 22 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 35) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 3)) []))), [(0, (.adt 3), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 14) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 35) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 3)) [])) (Corr.build (ts := [(.adt 3)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ + +theorem fun23 : FunOK program krate flags 23 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 15) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 36) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 3)) []))), [(0, (.adt 3), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 15) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 36) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 3)) [])) (Corr.build (ts := [(.adt 3)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ + +theorem fun24 : FunOK program krate flags 24 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 16) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 37) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 3)) []))), [(0, (.adt 3), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 16) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 37) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 3)) [])) (Corr.build (ts := [(.adt 3)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ + +theorem fun25 : FunOK program krate flags 25 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 38) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 3)) []))), [(0, (.adt 3), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 17) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 38) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 3)) [])) (Corr.build (ts := [(.adt 3)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ + +theorem fun26 : FunOK program krate flags 26 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 18) [(.clone (.generated .binding 0))] true) (.mk [] (.succeed (.construct .some [(.call (.function 39) [(.move (.generated .binding 0))] false)]))) (.mk [] (.succeed (.construct (.none (.adt 3)) [])))), [(0, (.adt 3), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 18) [(.clone (.generated .binding 0))] true)) (lk := []) (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.call (.function 39) [(.move (.generated .binding 0))] false)]))) (lb := []) (tb := (.succeed (.construct (.none (.adt 3)) []))) (Corr.fOfB (Corr.build (ts := [(.adt 3)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))⟩⟩ + +theorem fun27 : FunOK program krate flags 27 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 19) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 40) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 3)) []))), [(0, (.adt 3), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 19) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 40) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 3)) [])) (Corr.build (ts := [(.adt 3)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ + +theorem fun28 : FunOK program krate flags 28 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 20) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 41) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 3)) []))), [(0, (.adt 3), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 20) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 41) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 3)) [])) (Corr.build (ts := [(.adt 3)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ + +theorem fun29 : FunOK program krate flags 29 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 21) [(.clone (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.call (.function 42) [(.move (.generated .binding 0))] true)]))) (.mk [] (.succeed (.construct (.none (.adt 3)) [])))), [(0, (.adt 3), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 21) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.call (.function 42) [(.move (.generated .binding 0))] true)]))) (lb := []) (tb := (.succeed (.construct (.none (.adt 3)) []))) (Corr.fOfB (Corr.build (ts := [(.adt 3)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))⟩⟩ + +theorem fun30 : FunOK program krate flags 30 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 182)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 181)), .wild]) (.mk [] (.move (.generated .part 181))))])), (.mk (.bind (.generated .operand 183)) none (.lit (.nat 90)))], (.call (.runtime .natLt) [(.move (.generated .operand 182)), (.move (.generated .operand 183))] false), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 181))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun31 : FunOK program krate flags 31 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 185)) none (.lit (.nat 380))), (.mk (.bind (.generated .operand 186)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [(.bind (.generated .part 184)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 184))))]))], (.call (.runtime .natLt) [(.move (.generated .operand 185)), (.move (.generated .operand 186))] false), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 184))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun32 : FunOK program krate flags 32 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 188)) none (.lit (.nat 90))), (.mk (.bind (.generated .operand 189)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 187)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 187))))]))], (.call (.runtime .natLt) [(.move (.generated .operand 188)), (.move (.generated .operand 189))] false), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 187))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun33 : FunOK program krate flags 33 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 191)) none (.lit (.nat 20))), (.mk (.bind (.generated .operand 192)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 190)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 190))))]))], (.call (.runtime .natLt) [(.move (.generated .operand 191)), (.move (.generated .operand 192))] false), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 190))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun34 : FunOK program krate flags 34 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 194)) none (.lit (.nat 12))), (.mk (.bind (.generated .operand 195)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, (.bind (.generated .part 193)), .wild, .wild]) (.mk [] (.move (.generated .part 193))))]))], (.call (.runtime .natLt) [(.move (.generated .operand 194)), (.move (.generated .operand 195))] false), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 193))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun35 : FunOK program krate flags 35 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 3 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 196)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 196))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 197)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 197))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 198)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 198))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 199)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 199))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 200)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 200))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 201)), .wild, .wild]) (.mk [] (.move (.generated .part 201))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 202)), .wild]) (.mk [] (.move (.generated .part 202))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 203))]) (.mk [] (.move (.generated .part 203))))])]), [(0, (.adt 3), (some 0))], rfl, rfl, + (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 196))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 197))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 198))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 199))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 200))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 201))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 202))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 203))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ + +theorem fun36 : FunOK program krate flags 36 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 3 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 204)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 204))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 205)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 205))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 206)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 206))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 207)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 207))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 208)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 208))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 209)), .wild, .wild]) (.mk [] (.move (.generated .part 209))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 210)), .wild]) (.mk [] (.move (.generated .part 210))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 211))]) (.mk [] (.move (.generated .part 211))))])]), [(0, (.adt 3), (some 0))], rfl, rfl, + (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 204))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 205))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 206))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 207))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 208))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 209))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 210))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 211))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ + +theorem fun37 : FunOK program krate flags 37 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 3 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 212)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 212))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 213)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 213))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 214)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 214))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 215)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 215))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 216)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 216))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 217)), .wild, .wild]) (.mk [] (.move (.generated .part 217))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 218)), .wild]) (.mk [] (.move (.generated .part 218))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 219))]) (.mk [] (.move (.generated .part 219))))])]), [(0, (.adt 3), (some 0))], rfl, rfl, + (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 212))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 213))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 214))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 215))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 216))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 217))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 218))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 219))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ + +theorem fun38 : FunOK program krate flags 38 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 3 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 220)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 220))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 221)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 221))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 222)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 222))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 223)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 223))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 224)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 224))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 225)), .wild, .wild]) (.mk [] (.move (.generated .part 225))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 226)), .wild]) (.mk [] (.move (.generated .part 226))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 227))]) (.mk [] (.move (.generated .part 227))))])]), [(0, (.adt 3), (some 0))], rfl, rfl, + (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 220))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 221))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 222))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 223))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 224))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 225))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 226))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 227))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ + +theorem fun39 : FunOK program krate flags 39 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 3 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 228)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 228))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 229)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 229))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 230)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 230))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 231)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 231))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 232)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 232))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 233)), .wild, .wild]) (.mk [] (.move (.generated .part 233))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 234)), .wild]) (.mk [] (.move (.generated .part 234))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 235))]) (.mk [] (.move (.generated .part 235))))])]), [(0, (.adt 3), (some 0))], rfl, rfl, + (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 228))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 229))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 230))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 231))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 232))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 233))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 234))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 235))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ + +theorem fun40 : FunOK program krate flags 40 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 3 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 236)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 236))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 237)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 237))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 238)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 238))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 239)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 239))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 240)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 240))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 241)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 241))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 242)), .wild]) (.mk [] (.move (.generated .part 242))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 243))]) (.mk [] (.move (.generated .part 243))))])]), [(0, (.adt 3), (some 0))], rfl, rfl, + (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 236))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 237))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 238))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 239))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 240))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 241))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 242))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 243))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ + +theorem fun41 : FunOK program krate flags 41 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 3 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 244)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 244))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 245)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 245))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 246)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 246))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 247)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 247))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 248)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 248))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 249)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 249))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 250)), .wild, .wild]) (.mk [] (.move (.generated .part 250))))]), (.lit (.nat 1)), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 251))]) (.mk [] (.move (.generated .part 251))))])]), [(0, (.adt 3), (some 0))], rfl, rfl, + (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 244))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 245))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 246))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 247))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 248))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 249))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 250))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 251))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ + +theorem fun42 : FunOK program krate flags 42 := + ⟨_, rfl, .inl ⟨_, _, [], (.succeed (.construct (.adt 3 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 252)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 252))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 253)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 253))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 254)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 254))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 255)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 255))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 256)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 256))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 257)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 257))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 258)), .wild, .wild]) (.mk [] (.move (.generated .part 258))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 259)), .wild]) (.mk [] (.move (.generated .part 259))))]), (.block (.mk [(.mk (.bind (.generated .operand 261)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 260))]) (.mk [] (.move (.generated .part 260))))])), (.mk (.bind (.generated .operand 262)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 261)), (.move (.generated .operand 262))] true)))])), [(0, (.adt 3), (some 0))], rfl, rfl, + (Corr.fOfB (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 252))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 253))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 254))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 255))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 256))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 257))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 258))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 259))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 261)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 260))]) (.mk [] (.move (.generated .part 260))))])), (.mk (.bind (.generated .operand 262)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 261)), (.move (.generated .operand 262))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 260))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | 3 => exact fun3 + | 4 => exact fun4 + | 5 => exact fun5 + | 6 => exact fun6 + | 7 => exact fun7 + | 8 => exact fun8 + | 9 => exact fun9 + | 10 => exact fun10 + | 11 => exact fun11 + | 12 => exact fun12 + | 13 => exact fun13 + | 14 => exact fun14 + | 15 => exact fun15 + | 16 => exact fun16 + | 17 => exact fun17 + | 18 => exact fun18 + | 19 => exact fun19 + | 20 => exact fun20 + | 21 => exact fun21 + | 22 => exact fun22 + | 23 => exact fun23 + | 24 => exact fun24 + | 25 => exact fun25 + | 26 => exact fun26 + | 27 => exact fun27 + | 28 => exact fun28 + | 29 => exact fun29 + | 30 => exact fun30 + | 31 => exact fun31 + | 32 => exact fun32 + | 33 => exact fun33 + | 34 => exact fun34 + | 35 => exact fun35 + | 36 => exact fun36 + | 37 => exact fun37 + | 38 => exact fun38 + | 39 => exact fun39 + | 40 => exact fun40 + | 41 => exact fun41 + | 42 => exact fun42 + | _ + 43 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.RustStd diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R3.lean b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R3.lean new file mode 100644 index 000000000..080bec382 --- /dev/null +++ b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R3.lean @@ -0,0 +1,349 @@ +import LexLeanPreservation.Core +import LexLeanPreservation.Values +import LexLeanPreservation.Primitives +import LexLeanPreservation.Fixed +import LexLeanPreservation.Keys +import LexLeanPreservation.Templates +import LexLeanPreservation.Validate +import Reasoning.Budget +import Reasoning.Clinic +import Reasoning.Main +import Reasoning.Planner +import Reasoning.Screening +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +set_option linter.unusedVariables false +namespace LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3 + +def __prog : _root_.LexLeanTarget.TargetSyntax.Program := + { adts := [{ constructors := [[], [], [.nat]] }, + { constructors := [[(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]] }, + { constructors := [[(.pair .nat .nat), (.list (.adt 0))]] }, + { constructors := [[.nat, .nat, .nat, .nat, .nat, .nat]] }], functions := (( + { parameters := [0], types := [.nat], result := .nat, + body := (.«match» .nat (.call 1 [(.var 0)]) [(.arm .ok [1] (.first (.var 1))), (.arm .error [2] (.value .nat (.nat 9)))]) }) ::( + { parameters := [0], types := [.nat], result := (.result (.pair .nat .nat) (.pair .bool .bool)), + body := (.«match» (.result (.pair .nat .nat) (.pair .bool .bool)) (.call 2 [(.var 0)]) [(.arm .ok [1] (.build .ok (.result (.pair .nat .nat) (.pair .bool .bool)) [(.first (.var 1))])), (.arm .error [2] (.build .error (.result (.pair .nat .nat) (.pair .bool .bool)) [(.var 2)]))]) }) ::( + { parameters := [0], types := [.nat], result := (.result (.pair (.pair .nat .nat) (.list (.adt 0))) (.pair .bool .bool)), + body := (.«let» 1 (.pair (.adt 1) .bool) (.call 3 [(.var 0)]) (.«match» (.result (.pair (.pair .nat .nat) (.list (.adt 0))) (.pair .bool .bool)) (.field (.first (.var 1)) 2) [(.arm .some [2] (.build .ok (.result (.pair (.pair .nat .nat) (.list (.adt 0))) (.pair .bool .bool)) [(.build .pair (.pair (.pair .nat .nat) (.list (.adt 0))) [(.first (.var 2)), (.field (.second (.var 2)) 1)])])), (.arm .none [] (.build .error (.result (.pair (.pair .nat .nat) (.list (.adt 0))) (.pair .bool .bool)) [(.call 4 [(.second (.var 1)), (.field (.first (.var 1)) 3)])]))])) }) ::( + { parameters := [0], types := [.nat], result := (.pair (.adt 1) .bool), + body := (.call 5 [(.closure 6 [(.var 0)]), (.prim .natMul [(.var 0), (.value .nat (.nat 8))]), (.call 7 [(.var 0)])]) }) ::( + { parameters := [0, 1], types := [.bool, .bool], result := (.pair .bool .bool), + body := (.cond (.cond (.var 0) (.prim .boolNot [(.var 1)]) (.build .false .bool [])) (.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])]) (.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])) }) ::( + { parameters := [0, 1, 2], types := [(.fn [(.adt 1)] (.option (.adt 1))), .nat, (.adt 1)], result := (.pair (.adt 1) .bool), + body := (.«match» (.pair (.adt 1) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.adt 1) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.adt 1) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.adt 1) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 5 [(.var 0), (.var 3), (.var 4)]))]))]) }) ::( + { parameters := [0, 1], types := [.nat, (.adt 1)], result := (.option (.adt 1)), + body := (.call 8 [(.var 0), (.var 1)]) }) ::( + { parameters := [0], types := [.nat], result := (.adt 1), + body := (.«let» 1 (.list (.adt 2)) (.call 9 [(.closure 10 [(.var 0)]), (.build .nil (.list (.adt 2)) []), (.build .cons (.list (.adt 2)) [(.build (.adt 0) (.adt 2) [(.call 11 [(.var 0)]), (.build .nil (.list (.adt 0)) [])]), (.build .nil (.list (.adt 2)) [])])]) (.build (.adt 0) (.adt 1) [(.var 1), (.call 12 [(.build .nil (.list (.pair .nat .nat)) []), (.call 11 [(.var 0)])]), (.build .none (.option (.pair (.pair .nat .nat) (.adt 2))) []), (.prim .natLt [(.prim .natAdd [(.var 0), (.var 0)]), (.value .nat (.nat 1))]), (.build (.adt 0) (.adt 3) [(.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.prim .length [(.var 1)])])])) }) ::( + { parameters := [0, 1], types := [.nat, (.adt 1)], result := (.option (.adt 1)), + body := (.«match» (.option (.adt 1)) (.field (.var 1) 2) [(.arm .some [2] (.build .none (.option (.adt 1)) [])), (.arm .none [] (.«match» (.option (.adt 1)) (.field (.var 1) 0) [(.arm .nil [] (.build .none (.option (.adt 1)) [])), (.arm .cons [3, 4] (.«match» (.option (.adt 1)) (.call 13 [(.var 0), (.field (.var 3) 0)]) [(.arm .some [5] (.build .some (.option (.adt 1)) [(.build (.adt 0) (.adt 1) [(.var 4), (.field (.var 1) 1), (.build .some (.option (.pair (.pair .nat .nat) (.adt 2))) [(.build .pair (.pair (.pair .nat .nat) (.adt 2)) [(.var 5), (.var 3)])]), (.field (.var 1) 3), (.build (.adt 0) (.adt 3) [(.prim .natAdd [(.field (.field (.var 1) 4) 0), (.value .nat (.nat 1))]), (.field (.field (.var 1) 4) 1), (.field (.field (.var 1) 4) 2), (.field (.field (.var 1) 4) 3), (.prim .natAdd [(.field (.field (.var 1) 4) 4), (.value .nat (.nat 1))]), (.field (.field (.var 1) 4) 5)])])])), (.arm .none [] (.«let» 6 (.list (.adt 2)) (.call 14 [(.var 3)]) (.«let» 7 (.pair (.list (.adt 2)) (.list (.pair .nat .nat))) (.call 15 [(.field (.var 1) 1), (.var 6)]) (.«let» 8 (.list (.adt 2)) (.prim .append [(.var 4), (.first (.var 7))]) (.«let» 9 (.list (.adt 2)) (.call 9 [(.closure 16 [(.var 0)]), (.build .nil (.list (.adt 2)) []), (.var 8)]) (.build .some (.option (.adt 1)) [(.build (.adt 0) (.adt 1) [(.var 9), (.second (.var 7)), (.build .none (.option (.pair (.pair .nat .nat) (.adt 2))) []), (.cond (.field (.var 1) 3) (.build .true .bool []) (.prim .natLt [(.prim .natAdd [(.var 0), (.var 0)]), (.prim .length [(.var 8)])])), (.build (.adt 0) (.adt 3) [(.prim .natAdd [(.field (.field (.var 1) 4) 0), (.value .nat (.nat 1))]), (.prim .natAdd [(.field (.field (.var 1) 4) 1), (.call 17 [(.field (.var 3) 0)])]), (.prim .natAdd [(.field (.field (.var 1) 4) 2), (.prim .length [(.var 6)])]), (.prim .natAdd [(.field (.field (.var 1) 4) 3), (.value .nat (.nat 1))]), (.prim .natAdd [(.field (.field (.var 1) 4) 4), (.value .nat (.nat 1))]), (.cond (.prim .natLt [(.field (.field (.var 1) 4) 5), (.prim .length [(.var 9)])]) (.prim .length [(.var 9)]) (.field (.field (.var 1) 4) 5))])])]))))))]))]))]) }) ::( + { parameters := [0, 1, 2], types := [(.fn [(.list (.adt 2)), (.adt 2)] (.list (.adt 2))), (.list (.adt 2)), (.list (.adt 2))], result := (.list (.adt 2)), + body := (.«match» (.list (.adt 2)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 9 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }) ::( + { parameters := [0, 1, 2], types := [.nat, (.list (.adt 2)), (.adt 2)], result := (.list (.adt 2)), + body := (.cond (.prim .natLt [(.prim .length [(.var 1)]), (.prim .natAdd [(.var 0), (.var 0)])]) (.prim .append [(.var 1), (.build .cons (.list (.adt 2)) [(.var 2), (.build .nil (.list (.adt 2)) [])])]) (.var 1)) }) ::( + { parameters := [0], types := [.nat], result := (.pair .nat .nat), + body := (.build .pair (.pair .nat .nat) [(.value .nat (.nat 0)), (.value .nat (.nat 0))]) }) ::( + { parameters := [0, 1], types := [(.list (.pair .nat .nat)), (.pair .nat .nat)], result := (.list (.pair .nat .nat)), + body := (.«match» (.list (.pair .nat .nat)) (.var 0) [(.arm .nil [] (.build .cons (.list (.pair .nat .nat)) [(.var 1), (.build .nil (.list (.pair .nat .nat)) [])])), (.arm .cons [2, 3] (.«match» (.list (.pair .nat .nat)) (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .cons (.list (.pair .nat .nat)) [(.var 1), (.var 0)])), (.arm .eq [] (.var 0)), (.arm .gt [] (.build .cons (.list (.pair .nat .nat)) [(.var 2), (.call 12 [(.var 3), (.var 1)])]))]))]) }) ::( + { parameters := [0, 1], types := [.nat, (.pair .nat .nat)], result := (.option (.pair .nat .nat)), + body := (.«match» (.option (.pair .nat .nat)) (.call 18 [(.var 1)]) [(.arm .none [] (.build .none (.option (.pair .nat .nat)) [])), (.arm .some [2] (.cond (.call 19 [(.var 0), (.var 2)]) (.build .some (.option (.pair .nat .nat)) [(.var 2)]) (.build .none (.option (.pair .nat .nat)) [])))]) }) ::( + { parameters := [0], types := [(.adt 2)], result := (.list (.adt 2)), + body := (.prim .append [(.call 20 [(.var 0)]), (.prim .append [(.call 21 [(.var 0)]), (.call 22 [(.var 0)])])]) }) ::( + { parameters := [0, 1], types := [(.list (.pair .nat .nat)), (.list (.adt 2))], result := (.pair (.list (.adt 2)) (.list (.pair .nat .nat))), + body := (.call 23 [(.closure 24 []), (.build .pair (.pair (.list (.adt 2)) (.list (.pair .nat .nat))) [(.build .nil (.list (.adt 2)) []), (.var 0)]), (.var 1)]) }) ::( + { parameters := [0, 1, 2], types := [.nat, (.list (.adt 2)), (.adt 2)], result := (.list (.adt 2)), + body := (.cond (.prim .natLt [(.prim .length [(.var 1)]), (.prim .natAdd [(.var 0), (.var 0)])]) (.prim .append [(.var 1), (.build .cons (.list (.adt 2)) [(.var 2), (.build .nil (.list (.adt 2)) [])])]) (.var 1)) }) ::( + { parameters := [0], types := [(.pair .nat .nat)], result := .nat, + body := (.prim .natAdd [(.value .nat (.nat 1)), (.prim .natAdd [(.value .nat (.nat 1)), (.prim .length [(.call 25 [(.var 0)])])])]) }) ::( + { parameters := [0], types := [(.pair .nat .nat)], result := (.option (.pair .nat .nat)), + body := (.build .some (.option (.pair .nat .nat)) [(.var 0)]) }) ::( + { parameters := [0, 1], types := [.nat, (.pair .nat .nat)], result := .bool, + body := (.cond (.prim .natEq [(.second (.var 1)), (.var 0)]) (.prim .natLe [(.first (.var 1)), (.value .nat (.nat 4))]) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 2)], result := (.list (.adt 2)), + body := (.«match» (.list (.adt 2)) (.call 26 [(.field (.var 0) 0), (.build (.adt 0) (.adt 0) [])]) [(.arm .none [] (.build .nil (.list (.adt 2)) [])), (.arm .some [1] (.build .cons (.list (.adt 2)) [(.build (.adt 0) (.adt 2) [(.var 1), (.prim .append [(.field (.var 0) 1), (.build .cons (.list (.adt 0)) [(.build (.adt 0) (.adt 0) []), (.build .nil (.list (.adt 0)) [])])])]), (.build .nil (.list (.adt 2)) [])]))]) }) ::( + { parameters := [0], types := [(.adt 2)], result := (.list (.adt 2)), + body := (.«match» (.list (.adt 2)) (.call 26 [(.field (.var 0) 0), (.build (.adt 1) (.adt 0) [])]) [(.arm .none [] (.build .nil (.list (.adt 2)) [])), (.arm .some [1] (.build .cons (.list (.adt 2)) [(.build (.adt 0) (.adt 2) [(.var 1), (.prim .append [(.field (.var 0) 1), (.build .cons (.list (.adt 0)) [(.build (.adt 1) (.adt 0) []), (.build .nil (.list (.adt 0)) [])])])]), (.build .nil (.list (.adt 2)) [])]))]) }) ::( + { parameters := [0], types := [(.adt 2)], result := (.list (.adt 2)), + body := (.call 27 [(.closure 28 [(.var 0)]), (.build .nil (.list (.adt 2)) []), (.call 25 [(.field (.var 0) 0)])]) }) ::( + { parameters := [0, 1, 2], types := [(.fn [(.pair (.list (.adt 2)) (.list (.pair .nat .nat))), (.adt 2)] (.pair (.list (.adt 2)) (.list (.pair .nat .nat)))), (.pair (.list (.adt 2)) (.list (.pair .nat .nat))), (.list (.adt 2))], result := (.pair (.list (.adt 2)) (.list (.pair .nat .nat))), + body := (.«match» (.pair (.list (.adt 2)) (.list (.pair .nat .nat))) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 23 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }) ::( + { parameters := [0, 1], types := [(.pair (.list (.adt 2)) (.list (.pair .nat .nat))), (.adt 2)], result := (.pair (.list (.adt 2)) (.list (.pair .nat .nat))), + body := (.cond (.call 29 [(.second (.var 0)), (.field (.var 1) 0)]) (.var 0) (.build .pair (.pair (.list (.adt 2)) (.list (.pair .nat .nat))) [(.prim .append [(.first (.var 0)), (.build .cons (.list (.adt 2)) [(.var 1), (.build .nil (.list (.adt 2)) [])])]), (.call 12 [(.second (.var 0)), (.field (.var 1) 0)])])) }) ::( + { parameters := [0], types := [(.pair .nat .nat)], result := (.list .nat), + body := (.build .cons (.list .nat) [(.value .nat (.nat 1)), (.build .cons (.list .nat) [(.value .nat (.nat 2)), (.build .cons (.list .nat) [(.value .nat (.nat 3)), (.build .nil (.list .nat) [])])])]) }) ::( + { parameters := [0, 1], types := [(.pair .nat .nat), (.adt 0)], result := (.option (.pair .nat .nat)), + body := (.«match» (.option (.pair .nat .nat)) (.var 1) [(.arm (.adt 0) [] (.call 30 [(.var 0)])), (.arm (.adt 1) [] (.call 31 [(.var 0)])), (.arm (.adt 2) [2] (.call 32 [(.var 0), (.var 2)]))]) }) ::( + { parameters := [0, 1, 2], types := [(.fn [(.list (.adt 2)), .nat] (.list (.adt 2))), (.list (.adt 2)), (.list .nat)], result := (.list (.adt 2)), + body := (.«match» (.list (.adt 2)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 27 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }) ::( + { parameters := [0, 1, 2], types := [(.adt 2), (.list (.adt 2)), .nat], result := (.list (.adt 2)), + body := (.call 33 [(.var 0), (.var 1), (.var 2)]) }) ::( + { parameters := [0, 1], types := [(.list (.pair .nat .nat)), (.pair .nat .nat)], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .false .bool [])), (.arm .cons [2, 3] (.«match» .bool (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .false .bool [])), (.arm .eq [] (.build .true .bool [])), (.arm .gt [] (.call 29 [(.var 3), (.var 1)]))]))]) }) ::( + { parameters := [0], types := [(.pair .nat .nat)], result := (.option (.pair .nat .nat)), + body := (.cond (.call 34 [(.var 0)]) (.build .some (.option (.pair .nat .nat)) [(.call 35 [(.var 0)])]) (.build .none (.option (.pair .nat .nat)) [])) }) ::( + { parameters := [0], types := [(.pair .nat .nat)], result := (.option (.pair .nat .nat)), + body := (.cond (.call 36 [(.var 0)]) (.build .some (.option (.pair .nat .nat)) [(.call 37 [(.var 0)])]) (.build .none (.option (.pair .nat .nat)) [])) }) ::( + { parameters := [0, 1], types := [(.pair .nat .nat), .nat], result := (.option (.pair .nat .nat)), + body := (.cond (.call 38 [(.var 0), (.var 1)]) (.build .some (.option (.pair .nat .nat)) [(.call 39 [(.var 0), (.var 1)])]) (.build .none (.option (.pair .nat .nat)) [])) }) ::( + { parameters := [0, 1, 2], types := [(.adt 2), (.list (.adt 2)), .nat], result := (.list (.adt 2)), + body := (.«match» (.list (.adt 2)) (.call 26 [(.field (.var 0) 0), (.build (.adt 2) (.adt 0) [(.var 2)])]) [(.arm .none [] (.var 1)), (.arm .some [3] (.prim .append [(.var 1), (.build .cons (.list (.adt 2)) [(.build (.adt 0) (.adt 2) [(.var 3), (.prim .append [(.field (.var 0) 1), (.build .cons (.list (.adt 0)) [(.build (.adt 2) (.adt 0) [(.var 2)]), (.build .nil (.list (.adt 0)) [])])])]), (.build .nil (.list (.adt 2)) [])])]))]) }) ::( + { parameters := [0], types := [(.pair .nat .nat)], result := .bool, + body := (.cond (.prim .natLt [(.first (.var 0)), (.value .nat (.nat 4))]) (.prim .natLe [(.second (.var 0)), (.value .nat (.nat 3))]) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.pair .nat .nat)], result := (.pair .nat .nat), + body := (.build .pair (.pair .nat .nat) [(.value .nat (.nat 4)), (.second (.var 0))]) }) ::( + { parameters := [0], types := [(.pair .nat .nat)], result := .bool, + body := (.cond (.prim .natLt [(.value .nat (.nat 0)), (.second (.var 0))]) (.prim .natLe [(.first (.var 0)), (.value .nat (.nat 4))]) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.pair .nat .nat)], result := (.pair .nat .nat), + body := (.build .pair (.pair .nat .nat) [(.first (.var 0)), (.value .nat (.nat 0))]) }) ::( + { parameters := [0, 1], types := [(.pair .nat .nat), .nat], result := .bool, + body := (.cond (.prim .natLe [(.var 1), (.first (.var 0))]) (.cond (.prim .natLe [(.prim .natAdd [(.second (.var 0)), (.var 1)]), (.value .nat (.nat 3))]) (.prim .natLe [(.first (.var 0)), (.value .nat (.nat 4))]) (.build .false .bool [])) (.build .false .bool [])) }) ::( + { parameters := [0, 1], types := [(.pair .nat .nat), .nat], result := (.pair .nat .nat), + body := (.build .pair (.pair .nat .nat) [(.prim .natSub [(.first (.var 0)), (.var 1)]), (.prim .natAdd [(.second (.var 0)), (.var 1)])]) }) ::[]) } + +def __enc_0 : (Reasoning.Planner.Plan.Step) -> _root_.LexLeanTarget.TargetSyntax.Value + | Reasoning.Planner.Plan.Step.FillA => _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [] + | Reasoning.Planner.Plan.Step.EmptyB => _root_.LexLeanTarget.TargetSyntax.Value.adt 1 [] + | Reasoning.Planner.Plan.Step.Pour __x0 => _root_.LexLeanTarget.TargetSyntax.Value.adt 2 [(_root_.LexLeanTarget.TargetSyntax.Value.nat __x0)] + +def __enc_2 (__s : (Reasoning.Planner.Plan.Node)) : _root_.LexLeanTarget.TargetSyntax.Value := + _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) (__s).state), ((_root_.LexLeanPreservation.encList __enc_0) (__s).trace)] + +def __enc_3 (__s : (Reasoning.Planner.Plan.Ledger)) : _root_.LexLeanTarget.TargetSyntax.Value := + _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).iterations), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).attempts), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).firings), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).expansions), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).verifications), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).frontier)] + +def __enc_1 (__s : (Reasoning.Planner.Plan.Search)) : _root_.LexLeanTarget.TargetSyntax.Value := + _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [((_root_.LexLeanPreservation.encList __enc_2) (__s).frontier), ((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (__s).visited), ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) __enc_2)) (__s).found), (_root_.LexLeanTarget.TargetSyntax.Value.bool (__s).truncated), (__enc_3 (__s).ledger)] + +def __fits_18 (jugs : (Prod Nat Nat)) : Bool := + ((Bool.true && Bool.true) && Bool.true) + +theorem __rel_18 (jugs : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 18 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) jugs)] (_root_.LexLeanPreservation.Rel (__fits_18 jugs) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Reasoning.Planner.Plan.extract jugs))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some) + +def __fits_19 (target : Nat) (r : (Prod Nat Nat)) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (r).2 target) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) + +theorem __rel_19 (target : Nat) (r : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 19 [(_root_.LexLeanTarget.TargetSyntax.Value.nat target), ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) r)] (_root_.LexLeanPreservation.Rel (__fits_19 target r) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Planner.measuresCheck target r))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.ble (r).1 (4 : Nat)))) (Nat.beq (r).2 target) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (r).2 target)) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe (r).1 (4 : Nat)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) + +def __fits_13 (target : Nat) (_ys : (Prod Nat Nat)) : Bool := + (((Bool.true && Bool.true) && (__fits_18 (_ys))) && (match (Reasoning.Planner.Plan.extract (_ys)) with | Option.none => (Bool.true && Bool.true) | Option.some _yv => (((Bool.true && (Bool.true && Bool.true)) && (__fits_19 (target) (_yv))) && (if (Reasoning.Planner.measuresCheck (target) (_yv)) then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) + +attribute [local irreducible] Reasoning.Planner.Plan.extract Reasoning.Planner.measuresCheck in +theorem __rel_13 (target : Nat) (_ys : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 13 [(_root_.LexLeanTarget.TargetSyntax.Value.nat target), ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) _ys)] (_root_.LexLeanPreservation.Rel (__fits_13 target _ys) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Reasoning.Planner.Plan.accept target _ys))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun (__a : (Option (Prod Nat Nat))) => (match __a with | Option.none => (Bool.true && Bool.true) | Option.some _yv => (((Bool.true && (Bool.true && Bool.true)) && (__fits_19 (target) (_yv))) && (if (Reasoning.Planner.measuresCheck (target) (_yv)) then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__a : (Option (Prod Nat Nat))) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (match __a with | Option.none => (Option.none : (Option (Prod Nat Nat))) | Option.some _yv => (if (Reasoning.Planner.measuresCheck (target) (_yv)) then (Option.some (_yv) : (Option (Prod Nat Nat))) else (Option.none : (Option (Prod Nat Nat)))))) (Reasoning.Planner.Plan.extract (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_18 (_ys))) (fun (__a : (Option (Prod Nat Nat))) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) | Option.some _yv => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (if __b then (Option.some (_yv) : (Option (Prod Nat Nat))) else (Option.none : (Option (Prod Nat Nat))))) (Reasoning.Planner.measuresCheck (target) (_yv)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_19 (target) (_yv))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))) + +def __fits_34 (s : (Prod Nat Nat)) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.blt (s).1 (4 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) + +theorem __rel_34 (s : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 34 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) s)] (_root_.LexLeanPreservation.Rel (__fits_34 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Planner.FillA.guard s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.ble (s).2 (3 : Nat)))) (Nat.blt (s).1 (4 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (s).1 (4 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe (s).2 (3 : Nat)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) + +def __fits_35 (s : (Prod Nat Nat)) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_35 (s : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 35 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) s)] (_root_.LexLeanPreservation.Rel (__fits_35 s) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Planner.FillA.conclusion s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) + +def __fits_30 (s : (Prod Nat Nat)) : Bool := + (((Bool.true && Bool.true) && (__fits_34 (s))) && (if (Reasoning.Planner.FillA.guard (s)) then ((((Bool.true && Bool.true) && (__fits_35 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Planner.FillA.conclusion Reasoning.Planner.FillA.guard in +theorem __rel_30 (s : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 30 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) s)] (_root_.LexLeanPreservation.Rel (__fits_30 s) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Reasoning.Planner.FillA.apply s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_35 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (if __b then (Option.some ((Reasoning.Planner.FillA.conclusion (s))) : (Option (Prod Nat Nat))) else (Option.none : (Option (Prod Nat Nat))))) (Reasoning.Planner.FillA.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_34 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_35 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_36 (s : (Prod Nat Nat)) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.blt (0 : Nat) (s).2) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) + +theorem __rel_36 (s : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 36 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) s)] (_root_.LexLeanPreservation.Rel (__fits_36 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Planner.EmptyB.guard s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.ble (s).1 (4 : Nat)))) (Nat.blt (0 : Nat) (s).2) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (0 : Nat) (s).2)) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe (s).1 (4 : Nat)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) + +def __fits_37 (s : (Prod Nat Nat)) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_37 (s : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 37 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) s)] (_root_.LexLeanPreservation.Rel (__fits_37 s) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Planner.EmptyB.conclusion s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) + +def __fits_31 (s : (Prod Nat Nat)) : Bool := + (((Bool.true && Bool.true) && (__fits_36 (s))) && (if (Reasoning.Planner.EmptyB.guard (s)) then ((((Bool.true && Bool.true) && (__fits_37 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Planner.EmptyB.conclusion Reasoning.Planner.EmptyB.guard in +theorem __rel_31 (s : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 31 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) s)] (_root_.LexLeanPreservation.Rel (__fits_31 s) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Reasoning.Planner.EmptyB.apply s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_37 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (if __b then (Option.some ((Reasoning.Planner.EmptyB.conclusion (s))) : (Option (Prod Nat Nat))) else (Option.none : (Option (Prod Nat Nat))))) (Reasoning.Planner.EmptyB.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_36 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_37 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_38 (s : (Prod Nat Nat)) (k : Nat) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.ble k (s).1) then (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((s).2 + k) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.ble ((s).2 + k) (3 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) + +theorem __rel_38 (s : (Prod Nat Nat)) (k : Nat) : _root_.LexLeanPreservation.FunRel __prog 38 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) s), (_root_.LexLeanTarget.TargetSyntax.Value.nat k)] (_root_.LexLeanPreservation.Rel (__fits_38 s k) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Planner.Pour.guard s k))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((s).2 + k) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.ble ((s).2 + k) (3 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && ((Nat.ble ((s).2 + k) (3 : Nat)) && (Nat.ble (s).1 (4 : Nat))))) (Nat.ble k (s).1) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe k (s).1)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.ble (s).1 (4 : Nat)))) (Nat.ble ((s).2 + k) (3 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (s).2 k)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe ((s).2 + k) (3 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe (s).1 (4 : Nat)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) + +def __fits_39 (s : (Prod Nat Nat)) (k : Nat) : Bool := + ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((s).2 + k) 18446744073709551616)) && Bool.true)) && Bool.true) + +theorem __rel_39 (s : (Prod Nat Nat)) (k : Nat) : _root_.LexLeanPreservation.FunRel __prog 39 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) s), (_root_.LexLeanTarget.TargetSyntax.Value.nat k)] (_root_.LexLeanPreservation.Rel (__fits_39 s k) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Planner.Pour.conclusion s k))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub (s).1 k)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (s).2 k)) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) + +def __fits_32 (s : (Prod Nat Nat)) (k : Nat) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && (__fits_38 (s) (k))) && (if (Reasoning.Planner.Pour.guard (s) (k)) then ((((Bool.true && (Bool.true && Bool.true)) && (__fits_39 (s) (k))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Planner.Pour.conclusion Reasoning.Planner.Pour.guard in +theorem __rel_32 (s : (Prod Nat Nat)) (k : Nat) : _root_.LexLeanPreservation.FunRel __prog 32 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) s), (_root_.LexLeanTarget.TargetSyntax.Value.nat k)] (_root_.LexLeanPreservation.Rel (__fits_32 s k) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Reasoning.Planner.Pour.apply s k))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (Bool.true && Bool.true)) && (__fits_39 (s) (k))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (if __b then (Option.some ((Reasoning.Planner.Pour.conclusion (s) (k))) : (Option (Prod Nat Nat))) else (Option.none : (Option (Prod Nat Nat))))) (Reasoning.Planner.Pour.guard (s) (k)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_38 (s) (k))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_39 (s) (k))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_26 (_ys : (Prod Nat Nat)) (_ystep : (Reasoning.Planner.Plan.Step)) : Bool := + (Bool.true && (match _ystep with | Reasoning.Planner.Plan.Step.FillA => ((Bool.true && Bool.true) && (__fits_30 (_ys))) | Reasoning.Planner.Plan.Step.EmptyB => ((Bool.true && Bool.true) && (__fits_31 (_ys))) | Reasoning.Planner.Plan.Step.Pour _yb => ((Bool.true && (Bool.true && Bool.true)) && (__fits_32 (_ys) (_yb))))) + +attribute [local irreducible] Reasoning.Planner.EmptyB.apply Reasoning.Planner.FillA.apply Reasoning.Planner.Pour.apply in +theorem __rel_26 (_ys : (Prod Nat Nat)) (_ystep : (Reasoning.Planner.Plan.Step)) : _root_.LexLeanPreservation.FunRel __prog 26 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) _ys), (__enc_0 _ystep)] (_root_.LexLeanPreservation.Rel (__fits_26 _ys _ystep) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Reasoning.Planner.Plan.fire _ys _ystep))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV __enc_0 (fun (__a : (Reasoning.Planner.Plan.Step)) => (match __a with | Reasoning.Planner.Plan.Step.FillA => ((Bool.true && Bool.true) && (__fits_30 (_ys))) | Reasoning.Planner.Plan.Step.EmptyB => ((Bool.true && Bool.true) && (__fits_31 (_ys))) | Reasoning.Planner.Plan.Step.Pour _yb => ((Bool.true && (Bool.true && Bool.true)) && (__fits_32 (_ys) (_yb))))) (fun (__a : (Reasoning.Planner.Plan.Step)) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (match __a with | Reasoning.Planner.Plan.Step.FillA => (Reasoning.Planner.FillA.apply (_ys)) | Reasoning.Planner.Plan.Step.EmptyB => (Reasoning.Planner.EmptyB.apply (_ys)) | Reasoning.Planner.Plan.Step.Pour _yb => (Reasoning.Planner.Pour.apply (_ys) (_yb)))) _ystep (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (Reasoning.Planner.Plan.Step)) _ => match __a with | Reasoning.Planner.Plan.Step.FillA => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_30 (_ys)))) | Reasoning.Planner.Plan.Step.EmptyB => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_31 (_ys))))) | Reasoning.Planner.Plan.Step.Pour _yb => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_32 (_ys) (_yb)))))))) + +def __fits_20 (_ynode : (Reasoning.Planner.Plan.Node)) : Bool := + (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && (__fits_26 ((_ynode).state) ((Reasoning.Planner.Plan.Step.FillA : (Reasoning.Planner.Plan.Step))))) && (match (Reasoning.Planner.Plan.fire ((_ynode).state) ((Reasoning.Planner.Plan.Step.FillA : (Reasoning.Planner.Plan.Step)))) with | Option.none => (Bool.true && Bool.true) | Option.some _yt => ((((Bool.true && (((Bool.true && ((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true))) + +attribute [local irreducible] Reasoning.Planner.Plan.fire in +theorem __rel_20 (_ynode : (Reasoning.Planner.Plan.Node)) : _root_.LexLeanPreservation.FunRel __prog 20 [(__enc_2 _ynode)] (_root_.LexLeanPreservation.Rel (__fits_20 _ynode) ((_root_.LexLeanPreservation.encList __enc_2) (Reasoning.Planner.Plan.FillA.successors _ynode))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun (__a : (Option (Prod Nat Nat))) => (match __a with | Option.none => (Bool.true && Bool.true) | Option.some _yt => ((((Bool.true && (((Bool.true && ((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true))) (fun (__a : (Option (Prod Nat Nat))) => (_root_.LexLeanPreservation.encList __enc_2) (match __a with | Option.none => ([] : List (Reasoning.Planner.Plan.Node)) | Option.some _yt => (({ state := _yt, trace := (_root_.LexLeanRuntime.append ((_ynode).trace) (((Reasoning.Planner.Plan.Step.FillA : (Reasoning.Planner.Plan.Step)) :: ([] : List (Reasoning.Planner.Plan.Step)))) : (List (Reasoning.Planner.Plan.Step))) } : (Reasoning.Planner.Plan.Node)) :: ([] : List (Reasoning.Planner.Plan.Node))))) (Reasoning.Planner.Plan.fire ((_ynode).state) ((Reasoning.Planner.Plan.Step.FillA : (Reasoning.Planner.Plan.Step)))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil)) (__rel_26 ((_ynode).state) ((Reasoning.Planner.Plan.Step.FillA : (Reasoning.Planner.Plan.Step))))) (fun (__a : (Option (Prod Nat Nat))) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil)) | Option.some _yt => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc __enc_0) (_ynode).trace ((Reasoning.Planner.Plan.Step.FillA : (Reasoning.Planner.Plan.Step)) :: ([] : List (Reasoning.Planner.Plan.Step))))) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_adt) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons))))) + +def __fits_21 (_ynode : (Reasoning.Planner.Plan.Node)) : Bool := + (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && (__fits_26 ((_ynode).state) ((Reasoning.Planner.Plan.Step.EmptyB : (Reasoning.Planner.Plan.Step))))) && (match (Reasoning.Planner.Plan.fire ((_ynode).state) ((Reasoning.Planner.Plan.Step.EmptyB : (Reasoning.Planner.Plan.Step)))) with | Option.none => (Bool.true && Bool.true) | Option.some _yt => ((((Bool.true && (((Bool.true && ((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true))) + +attribute [local irreducible] Reasoning.Planner.Plan.fire in +theorem __rel_21 (_ynode : (Reasoning.Planner.Plan.Node)) : _root_.LexLeanPreservation.FunRel __prog 21 [(__enc_2 _ynode)] (_root_.LexLeanPreservation.Rel (__fits_21 _ynode) ((_root_.LexLeanPreservation.encList __enc_2) (Reasoning.Planner.Plan.EmptyB.successors _ynode))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun (__a : (Option (Prod Nat Nat))) => (match __a with | Option.none => (Bool.true && Bool.true) | Option.some _yt => ((((Bool.true && (((Bool.true && ((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true))) (fun (__a : (Option (Prod Nat Nat))) => (_root_.LexLeanPreservation.encList __enc_2) (match __a with | Option.none => ([] : List (Reasoning.Planner.Plan.Node)) | Option.some _yt => (({ state := _yt, trace := (_root_.LexLeanRuntime.append ((_ynode).trace) (((Reasoning.Planner.Plan.Step.EmptyB : (Reasoning.Planner.Plan.Step)) :: ([] : List (Reasoning.Planner.Plan.Step)))) : (List (Reasoning.Planner.Plan.Step))) } : (Reasoning.Planner.Plan.Node)) :: ([] : List (Reasoning.Planner.Plan.Node))))) (Reasoning.Planner.Plan.fire ((_ynode).state) ((Reasoning.Planner.Plan.Step.EmptyB : (Reasoning.Planner.Plan.Step)))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil)) (__rel_26 ((_ynode).state) ((Reasoning.Planner.Plan.Step.EmptyB : (Reasoning.Planner.Plan.Step))))) (fun (__a : (Option (Prod Nat Nat))) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil)) | Option.some _yt => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc __enc_0) (_ynode).trace ((Reasoning.Planner.Plan.Step.EmptyB : (Reasoning.Planner.Plan.Step)) :: ([] : List (Reasoning.Planner.Plan.Step))))) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_adt) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons))))) + +def __fits_25 (s : (Prod Nat Nat)) : Bool := + ((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) + +theorem __rel_25 (s : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 25 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) s)] (_root_.LexLeanPreservation.Rel (__fits_25 s) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Planner.Pour.candidates s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) + +def __fits_33 (_ynode : (Reasoning.Planner.Plan.Node)) (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yb : Nat) : Bool := + (((Bool.true && (((Bool.true && Bool.true) && Bool.true) && Bool.true)) && (__fits_26 ((_ynode).state) ((Reasoning.Planner.Plan.Step.Pour (_yb) : (Reasoning.Planner.Plan.Step))))) && (match (Reasoning.Planner.Plan.fire ((_ynode).state) ((Reasoning.Planner.Plan.Step.Pour (_yb) : (Reasoning.Planner.Plan.Step)))) with | Option.none => Bool.true | Option.some _yt => ((Bool.true && (((((Bool.true && (((Bool.true && (((((Bool.true && Bool.true) && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true))) + +attribute [local irreducible] Reasoning.Planner.Plan.fire in +theorem __rel_33 (_ynode : (Reasoning.Planner.Plan.Node)) (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yb : Nat) : _root_.LexLeanPreservation.FunRel __prog 33 [(__enc_2 _ynode), ((_root_.LexLeanPreservation.encList __enc_2) _yacc), (_root_.LexLeanTarget.TargetSyntax.Value.nat _yb)] (_root_.LexLeanPreservation.Rel (__fits_33 _ynode _yacc _yb) ((_root_.LexLeanPreservation.encList __enc_2) (Reasoning.Planner.Plan.Pour.collect _ynode _yacc _yb))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun (__a : (Option (Prod Nat Nat))) => (match __a with | Option.none => Bool.true | Option.some _yt => ((Bool.true && (((((Bool.true && (((Bool.true && (((((Bool.true && Bool.true) && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true))) (fun (__a : (Option (Prod Nat Nat))) => (_root_.LexLeanPreservation.encList __enc_2) (match __a with | Option.none => _yacc | Option.some _yt => (_root_.LexLeanRuntime.append (_yacc) ((({ state := _yt, trace := (_root_.LexLeanRuntime.append ((_ynode).trace) (((Reasoning.Planner.Plan.Step.Pour (_yb) : (Reasoning.Planner.Plan.Step)) :: ([] : List (Reasoning.Planner.Plan.Step)))) : (List (Reasoning.Planner.Plan.Step))) } : (Reasoning.Planner.Plan.Node)) :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))))) (Reasoning.Planner.Plan.fire ((_ynode).state) ((Reasoning.Planner.Plan.Step.Pour (_yb) : (Reasoning.Planner.Plan.Step)))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil)) (__rel_26 ((_ynode).state) ((Reasoning.Planner.Plan.Step.Pour (_yb) : (Reasoning.Planner.Plan.Step))))) (fun (__a : (Option (Prod Nat Nat))) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | Option.some _yt => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_adt) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc __enc_0) (_ynode).trace ((Reasoning.Planner.Plan.Step.Pour (_yb) : (Reasoning.Planner.Plan.Step)) :: ([] : List (Reasoning.Planner.Plan.Step))))) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_adt) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc __enc_2) _yacc (({ state := _yt, trace := (_root_.LexLeanRuntime.append ((_ynode).trace) (((Reasoning.Planner.Plan.Step.Pour (_yb) : (Reasoning.Planner.Plan.Step)) :: ([] : List (Reasoning.Planner.Plan.Step)))) : (List (Reasoning.Planner.Plan.Step))) } : (Reasoning.Planner.Plan.Node)) :: ([] : List (Reasoning.Planner.Plan.Node))))))))) + +def __fits_28 (_ynode : (Reasoning.Planner.Plan.Node)) (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yb : Nat) : Bool := + ((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_33 (_ynode) (_yacc) (_yb))) + +attribute [local irreducible] Reasoning.Planner.Plan.Pour.collect in +theorem __rel_28 (_ynode : (Reasoning.Planner.Plan.Node)) (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yb : Nat) : _root_.LexLeanPreservation.FunRel __prog 28 [(__enc_2 _ynode), ((_root_.LexLeanPreservation.encList __enc_2) _yacc), (_root_.LexLeanTarget.TargetSyntax.Value.nat _yb)] (_root_.LexLeanPreservation.Rel (__fits_28 _ynode _yacc _yb) ((_root_.LexLeanPreservation.encList __enc_2) ((Reasoning.Planner.Plan.Pour.collect (_ynode) (_yacc) (_yb))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (__rel_33 (_ynode) (_yacc) (_yb))) + +def __fits_22 (_ynode : (Reasoning.Planner.Plan.Node)) : Bool := + (((Bool.true && Bool.true) && ((Bool.true && Bool.true) && (((Bool.true && Bool.true) && (__fits_25 ((_ynode).state))) && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (List (Reasoning.Planner.Plan.Node))) (__p1 : Nat) => __fits_28 (_ynode) __p0 __p1) ((fun (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yb : Nat) => (Reasoning.Planner.Plan.Pour.collect (_ynode) (_yacc) (_yb)))) (([] : List (Reasoning.Planner.Plan.Node))) ((Reasoning.Planner.Pour.candidates ((_ynode).state))))) + +attribute [local irreducible] Reasoning.Planner.Plan.Pour.collect Reasoning.Planner.Pour.candidates in +theorem __rel_22 (_ynode : (Reasoning.Planner.Plan.Node)) : _root_.LexLeanPreservation.FunRel __prog 22 [(__enc_2 _ynode)] (_root_.LexLeanPreservation.Rel (__fits_22 _ynode) ((_root_.LexLeanPreservation.encList __enc_2) (Reasoning.Planner.Plan.Pour.successors _ynode))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_25 ((_ynode).state))) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.nat) (es := (_root_.LexLeanPreservation.encList __enc_2)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) ((fun (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yb : Nat) => (Reasoning.Planner.Plan.Pour.collect (_ynode) (_yacc) (_yb)))) (fun (__p0 : (List (Reasoning.Planner.Plan.Node))) (__p1 : Nat) => __fits_28 (_ynode) __p0 __p1) 28 [(__enc_2 _ynode)] (fun (__p0 : (List (Reasoning.Planner.Plan.Node))) (__p1 : Nat) => __rel_28 (_ynode) __p0 __p1) (p := __prog) (fi := 27) (ta := .nat) (ts := (.list (.adt 2))) rfl (([] : List (Reasoning.Planner.Plan.Node))) ((Reasoning.Planner.Pour.candidates ((_ynode).state))))) + +def __fits_14 (_ynode : (Reasoning.Planner.Plan.Node)) : Bool := + ((((Bool.true && Bool.true) && (__fits_20 (_ynode))) && (((((Bool.true && Bool.true) && (__fits_21 (_ynode))) && (((Bool.true && Bool.true) && (__fits_22 (_ynode))) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) + +attribute [local irreducible] Reasoning.Planner.Plan.EmptyB.successors Reasoning.Planner.Plan.FillA.successors Reasoning.Planner.Plan.Pour.successors in +theorem __rel_14 (_ynode : (Reasoning.Planner.Plan.Node)) : _root_.LexLeanPreservation.FunRel __prog 14 [(__enc_2 _ynode)] (_root_.LexLeanPreservation.Rel (__fits_14 _ynode) ((_root_.LexLeanPreservation.encList __enc_2) (Reasoning.Planner.Plan.successors _ynode))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_20 (_ynode))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_21 (_ynode))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_22 (_ynode))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc __enc_2) (Reasoning.Planner.Plan.EmptyB.successors (_ynode)) (Reasoning.Planner.Plan.Pour.successors (_ynode)))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc __enc_2) (Reasoning.Planner.Plan.FillA.successors (_ynode)) (_root_.LexLeanRuntime.append ((Reasoning.Planner.Plan.EmptyB.successors (_ynode))) ((Reasoning.Planner.Plan.Pour.successors (_ynode))) : (List (Reasoning.Planner.Plan.Node))))) + +def __fits_24 (_yacc : (Prod (List (Reasoning.Planner.Plan.Node)) (List (Prod Nat Nat)))) (_yn : (Reasoning.Planner.Plan.Node)) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanCollections.setContains ((_yacc).2) ((_yn).state) : Bool) then Bool.true else ((((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true))) + +theorem __rel_24 (_yacc : (Prod (List (Reasoning.Planner.Plan.Node)) (List (Prod Nat Nat)))) (_yn : (Reasoning.Planner.Plan.Node)) : _root_.LexLeanPreservation.FunRel __prog 24 [((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList __enc_2) (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat))) _yacc), (__enc_2 _yn)] (_root_.LexLeanPreservation.Rel (__fits_24 _yacc _yn) ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList __enc_2) (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat))) ((if (_root_.LexLeanCollections.setContains ((_yacc).2) ((_yn).state) : Bool) then _yacc else ((_root_.LexLeanRuntime.append ((_yacc).1) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))), (_root_.LexLeanCollections.setInsert ((_yacc).2) ((_yn).state) : (List (Prod Nat Nat)))))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else ((((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList __enc_2) (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat))) (if __b then _yacc else ((_root_.LexLeanRuntime.append ((_yacc).1) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))), (_root_.LexLeanCollections.setInsert ((_yacc).2) ((_yn).state) : (List (Prod Nat Nat)))))) (_root_.LexLeanCollections.setContains ((_yacc).2) ((_yn).state) : Bool) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.tpl_setContains (_root_.LexLeanPreservation.keySpec_pair (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanCollections.Key.compare : (Prod Nat Nat) -> (Prod Nat Nat) -> Ordering) (fun _ _ __h => by simp only [_root_.LexLeanCollections.Key.compare] at __h ⊢; simp only [__h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.Key.compare] at __h ⊢; simp only [__h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.Key.compare] at __h ⊢; simp only [__h])) (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) _root_.LexLeanCollections.containsElement (fun _ => rfl) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.containsElement, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.containsElement, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.containsElement, __h]) (p := __prog) (fi := 29) (tk := (.pair .nat .nat)) rfl ((_yacc).2) ((_yn).state))) (fun _ => (_root_.LexLeanPreservation.conv_var rfl)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc __enc_2) (_yacc).1 (_yn :: ([] : List (Reasoning.Planner.Plan.Node))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.tpl_setInsert (_root_.LexLeanPreservation.keySpec_pair (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanCollections.Key.compare : (Prod Nat Nat) -> (Prod Nat Nat) -> Ordering) (fun _ _ __h => by simp only [_root_.LexLeanCollections.Key.compare] at __h ⊢; simp only [__h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.Key.compare] at __h ⊢; simp only [__h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.Key.compare] at __h ⊢; simp only [__h])) (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) _root_.LexLeanCollections.insertElement (fun _ => rfl) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.insertElement, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.insertElement, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.insertElement, __h]) (p := __prog) (fi := 12) (tk := (.pair .nat .nat)) rfl ((_yacc).2) ((_yn).state))) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))) + +def __fits_15 (_yvisited : (List (Prod Nat Nat))) (_ynodes : (List (Reasoning.Planner.Plan.Node))) : Bool := + ((Bool.true && ((((Bool.true && Bool.true) && (Bool.true && Bool.true)) && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Prod (List (Reasoning.Planner.Plan.Node)) (List (Prod Nat Nat)))) (__p1 : (Reasoning.Planner.Plan.Node)) => __fits_24 __p0 __p1) ((fun (_yacc : (Prod (List (Reasoning.Planner.Plan.Node)) (List (Prod Nat Nat)))) (_yn : (Reasoning.Planner.Plan.Node)) => (if (_root_.LexLeanCollections.setContains ((_yacc).2) ((_yn).state) : Bool) then _yacc else ((_root_.LexLeanRuntime.append ((_yacc).1) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))), (_root_.LexLeanCollections.setInsert ((_yacc).2) ((_yn).state) : (List (Prod Nat Nat))))))) ((([] : List (Reasoning.Planner.Plan.Node)), _yvisited)) (_ynodes))) + +theorem __rel_15 (_yvisited : (List (Prod Nat Nat))) (_ynodes : (List (Reasoning.Planner.Plan.Node))) : _root_.LexLeanPreservation.FunRel __prog 15 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) _yvisited), ((_root_.LexLeanPreservation.encList __enc_2) _ynodes)] (_root_.LexLeanPreservation.Rel (__fits_15 _yvisited _ynodes) ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList __enc_2) (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat))) (Reasoning.Planner.Plan.fresh _yvisited _ynodes))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := __enc_2) (es := (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList __enc_2) (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)))) (_root_.LexLeanPreservation.listEnc __enc_2) (fun _ => rfl) ((fun (_yacc : (Prod (List (Reasoning.Planner.Plan.Node)) (List (Prod Nat Nat)))) (_yn : (Reasoning.Planner.Plan.Node)) => (if (_root_.LexLeanCollections.setContains ((_yacc).2) ((_yn).state) : Bool) then _yacc else ((_root_.LexLeanRuntime.append ((_yacc).1) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))), (_root_.LexLeanCollections.setInsert ((_yacc).2) ((_yn).state) : (List (Prod Nat Nat))))))) (fun (__p0 : (Prod (List (Reasoning.Planner.Plan.Node)) (List (Prod Nat Nat)))) (__p1 : (Reasoning.Planner.Plan.Node)) => __fits_24 __p0 __p1) 24 [] (fun (__p0 : (Prod (List (Reasoning.Planner.Plan.Node)) (List (Prod Nat Nat)))) (__p1 : (Reasoning.Planner.Plan.Node)) => __rel_24 __p0 __p1) (p := __prog) (fi := 23) (ta := (.adt 2)) (ts := (.pair (.list (.adt 2)) (.list (.pair .nat .nat)))) rfl ((([] : List (Reasoning.Planner.Plan.Node)), _yvisited)) (_ynodes))) + +def __fits_16 (target : Nat) (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yn : (Reasoning.Planner.Plan.Node)) : Bool := + (((((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (target + target) 18446744073709551616)) && Bool.true)) && Bool.true) && (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target)) then ((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) else Bool.true)) + +theorem __rel_16 (target : Nat) (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yn : (Reasoning.Planner.Plan.Node)) : _root_.LexLeanPreservation.FunRel __prog 16 [(_root_.LexLeanTarget.TargetSyntax.Value.nat target), ((_root_.LexLeanPreservation.encList __enc_2) _yacc), (__enc_2 _yn)] (_root_.LexLeanPreservation.Rel (__fits_16 target _yacc _yn) ((_root_.LexLeanPreservation.encList __enc_2) ((if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))) else _yacc)))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) else Bool.true)) (fun (__b : Bool) => (_root_.LexLeanPreservation.encList __enc_2) (if __b then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))) else _yacc)) (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc __enc_2) _yacc)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd target target)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc __enc_2) _yacc (_yn :: ([] : List (Reasoning.Planner.Plan.Node)))))) (fun _ => (_root_.LexLeanPreservation.conv_var rfl))) + +def __fits_17 (_ys : (Prod Nat Nat)) : Bool := + ((Bool.true && (((Bool.true && (((((Bool.true && Bool.true) && (__fits_25 (_ys))) && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length ((Reasoning.Planner.Pour.candidates (_ys))) : Nat) 18446744073709551616)) && Bool.true)) && (Nat.blt ((1 : Nat) + (_root_.LexLeanRuntime.length ((Reasoning.Planner.Pour.candidates (_ys))) : Nat)) 18446744073709551616)) && Bool.true)) && (Nat.blt ((1 : Nat) + ((1 : Nat) + (_root_.LexLeanRuntime.length ((Reasoning.Planner.Pour.candidates (_ys))) : Nat))) 18446744073709551616)) + +attribute [local irreducible] Reasoning.Planner.Pour.candidates in +theorem __rel_17 (_ys : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 17 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) _ys)] (_root_.LexLeanPreservation.Rel (__fits_17 _ys) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Planner.Plan.attempts _ys))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_25 (_ys))) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Planner.Pour.candidates (_ys)))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (1 : Nat) (_root_.LexLeanRuntime.length ((Reasoning.Planner.Pour.candidates (_ys))) : Nat))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (1 : Nat) ((1 : Nat) + (_root_.LexLeanRuntime.length ((Reasoning.Planner.Pour.candidates (_ys))) : Nat)))) + +def __fits_8 (target : Nat) (_yr : (Reasoning.Planner.Plan.Search)) : Bool := + (Bool.true && (match (_yr).found with | Option.some _yhit => (Bool.true && Bool.true) | Option.none => (Bool.true && (match (_yr).frontier with | List.nil => (Bool.true && Bool.true) | List.cons _ynode _yrest => (((Bool.true && (Bool.true && Bool.true)) && (__fits_13 (target) ((_ynode).state))) && (match (Reasoning.Planner.Plan.accept (target) ((_ynode).state)) with | Option.some _yv => ((((Bool.true && (Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) && (Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).iterations + (1 : Nat)) 18446744073709551616)) && (Bool.true && (Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).verifications + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true)))))) && Bool.true) && Bool.true))))) && Bool.true) && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_14 (_ynode))) && (let _ysuccessors : (List (Reasoning.Planner.Plan.Node)) := (Reasoning.Planner.Plan.successors (_ynode)); (((Bool.true && (Bool.true && Bool.true)) && (__fits_15 ((_yr).visited) (_ysuccessors))) && (let _yfresh : (Prod (List (Reasoning.Planner.Plan.Node)) (List (Prod Nat Nat))) := (Reasoning.Planner.Plan.fresh ((_yr).visited) (_ysuccessors)); (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (let _yordered : (List (Reasoning.Planner.Plan.Node)) := (_root_.LexLeanRuntime.append (_yrest) ((_yfresh).1) : (List (Reasoning.Planner.Plan.Node))); ((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (List (Reasoning.Planner.Plan.Node))) (__p1 : (Reasoning.Planner.Plan.Node)) => __fits_16 (target) __p0 __p1) ((fun (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yn : (Reasoning.Planner.Plan.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))) else _yacc))) (([] : List (Reasoning.Planner.Plan.Node))) (_yordered))) && (let _ynext : (List (Reasoning.Planner.Plan.Node)) := (_root_.LexLeanCollections.listFold ((fun (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yn : (Reasoning.Planner.Plan.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))) else _yacc))) (([] : List (Reasoning.Planner.Plan.Node))) (_yordered) : (List (Reasoning.Planner.Plan.Node))); ((((Bool.true && (Bool.true && ((Bool.true && Bool.true) && ((Bool.true && (if (_yr).truncated then (Bool.true && Bool.true) else ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (target + target) 18446744073709551616)) && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_yordered) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true))) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).iterations + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (((Bool.true && Bool.true) && (__fits_17 ((_ynode).state))) && Bool.true)) && (Nat.blt (((_yr).ledger).attempts + (Reasoning.Planner.Plan.attempts ((_ynode).state))) 18446744073709551616)) && (((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ysuccessors) : Nat) 18446744073709551616)) && Bool.true)) && (Nat.blt (((_yr).ledger).firings + (_root_.LexLeanRuntime.length (_ysuccessors) : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).expansions + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).verifications + (1 : Nat)) 18446744073709551616)) && ((((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ynext) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true) && (if (Nat.blt ((_yr).ledger).frontier (_root_.LexLeanRuntime.length (_ynext) : Nat)) then ((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ynext) : Nat) 18446744073709551616)) else Bool.true)) && Bool.true)))))) && Bool.true) && Bool.true))))) && Bool.true) && Bool.true) && Bool.true))))))))))))))) + +attribute [local irreducible] Reasoning.Planner.Plan.accept Reasoning.Planner.Plan.attempts Reasoning.Planner.Plan.fresh Reasoning.Planner.Plan.successors in +theorem __rel_8 (target : Nat) (_yr : (Reasoning.Planner.Plan.Search)) : _root_.LexLeanPreservation.FunRel __prog 8 [(_root_.LexLeanTarget.TargetSyntax.Value.nat target), (__enc_1 _yr)] (_root_.LexLeanPreservation.Rel (__fits_8 target _yr) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Planner.Plan.searchStep target _yr))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) __enc_2)) (fun (__a : (Option (Prod (Prod Nat Nat) (Reasoning.Planner.Plan.Node)))) => (match __a with | Option.some _yhit => (Bool.true && Bool.true) | Option.none => (Bool.true && (match (_yr).frontier with | List.nil => (Bool.true && Bool.true) | List.cons _ynode _yrest => (((Bool.true && (Bool.true && Bool.true)) && (__fits_13 (target) ((_ynode).state))) && (match (Reasoning.Planner.Plan.accept (target) ((_ynode).state)) with | Option.some _yv => ((((Bool.true && (Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) && (Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).iterations + (1 : Nat)) 18446744073709551616)) && (Bool.true && (Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).verifications + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true)))))) && Bool.true) && Bool.true))))) && Bool.true) && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_14 (_ynode))) && (let _ysuccessors : (List (Reasoning.Planner.Plan.Node)) := (Reasoning.Planner.Plan.successors (_ynode)); (((Bool.true && (Bool.true && Bool.true)) && (__fits_15 ((_yr).visited) (_ysuccessors))) && (let _yfresh : (Prod (List (Reasoning.Planner.Plan.Node)) (List (Prod Nat Nat))) := (Reasoning.Planner.Plan.fresh ((_yr).visited) (_ysuccessors)); (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (let _yordered : (List (Reasoning.Planner.Plan.Node)) := (_root_.LexLeanRuntime.append (_yrest) ((_yfresh).1) : (List (Reasoning.Planner.Plan.Node))); ((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (List (Reasoning.Planner.Plan.Node))) (__p1 : (Reasoning.Planner.Plan.Node)) => __fits_16 (target) __p0 __p1) ((fun (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yn : (Reasoning.Planner.Plan.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))) else _yacc))) (([] : List (Reasoning.Planner.Plan.Node))) (_yordered))) && (let _ynext : (List (Reasoning.Planner.Plan.Node)) := (_root_.LexLeanCollections.listFold ((fun (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yn : (Reasoning.Planner.Plan.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))) else _yacc))) (([] : List (Reasoning.Planner.Plan.Node))) (_yordered) : (List (Reasoning.Planner.Plan.Node))); ((((Bool.true && (Bool.true && ((Bool.true && Bool.true) && ((Bool.true && (if (_yr).truncated then (Bool.true && Bool.true) else ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (target + target) 18446744073709551616)) && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_yordered) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true))) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).iterations + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (((Bool.true && Bool.true) && (__fits_17 ((_ynode).state))) && Bool.true)) && (Nat.blt (((_yr).ledger).attempts + (Reasoning.Planner.Plan.attempts ((_ynode).state))) 18446744073709551616)) && (((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ysuccessors) : Nat) 18446744073709551616)) && Bool.true)) && (Nat.blt (((_yr).ledger).firings + (_root_.LexLeanRuntime.length (_ysuccessors) : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).expansions + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).verifications + (1 : Nat)) 18446744073709551616)) && ((((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ynext) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true) && (if (Nat.blt ((_yr).ledger).frontier (_root_.LexLeanRuntime.length (_ynext) : Nat)) then ((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ynext) : Nat) 18446744073709551616)) else Bool.true)) && Bool.true)))))) && Bool.true) && Bool.true))))) && Bool.true) && Bool.true) && Bool.true))))))))))))))) (fun (__a : (Option (Prod (Prod Nat Nat) (Reasoning.Planner.Plan.Node)))) => (_root_.LexLeanPreservation.encOption __enc_1) (match __a with | Option.some _yhit => (Option.none : (Option (Reasoning.Planner.Plan.Search))) | Option.none => (match (_yr).frontier with | List.nil => (Option.none : (Option (Reasoning.Planner.Plan.Search))) | List.cons _ynode _yrest => (match (Reasoning.Planner.Plan.accept (target) ((_ynode).state)) with | Option.some _yv => (Option.some (({ frontier := _yrest, visited := (_yr).visited, found := (Option.some ((_yv, _ynode)) : (Option (Prod (Prod Nat Nat) (Reasoning.Planner.Plan.Node)))), truncated := (_yr).truncated, ledger := ({ iterations := (((_yr).ledger).iterations + (1 : Nat)), attempts := ((_yr).ledger).attempts, firings := ((_yr).ledger).firings, expansions := ((_yr).ledger).expansions, verifications := (((_yr).ledger).verifications + (1 : Nat)), frontier := ((_yr).ledger).frontier } : (Reasoning.Planner.Plan.Ledger)) } : (Reasoning.Planner.Plan.Search))) : (Option (Reasoning.Planner.Plan.Search))) | Option.none => (let _ysuccessors : (List (Reasoning.Planner.Plan.Node)) := (Reasoning.Planner.Plan.successors (_ynode)); (let _yfresh : (Prod (List (Reasoning.Planner.Plan.Node)) (List (Prod Nat Nat))) := (Reasoning.Planner.Plan.fresh ((_yr).visited) (_ysuccessors)); (let _yordered : (List (Reasoning.Planner.Plan.Node)) := (_root_.LexLeanRuntime.append (_yrest) ((_yfresh).1) : (List (Reasoning.Planner.Plan.Node))); (let _ynext : (List (Reasoning.Planner.Plan.Node)) := (_root_.LexLeanCollections.listFold ((fun (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yn : (Reasoning.Planner.Plan.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))) else _yacc))) (([] : List (Reasoning.Planner.Plan.Node))) (_yordered) : (List (Reasoning.Planner.Plan.Node))); (Option.some (({ frontier := _ynext, visited := (_yfresh).2, found := (Option.none : (Option (Prod (Prod Nat Nat) (Reasoning.Planner.Plan.Node)))), truncated := ((_yr).truncated || (Nat.blt (target + target) (_root_.LexLeanRuntime.length (_yordered) : Nat))), ledger := ({ iterations := (((_yr).ledger).iterations + (1 : Nat)), attempts := (((_yr).ledger).attempts + (Reasoning.Planner.Plan.attempts ((_ynode).state))), firings := (((_yr).ledger).firings + (_root_.LexLeanRuntime.length (_ysuccessors) : Nat)), expansions := (((_yr).ledger).expansions + (1 : Nat)), verifications := (((_yr).ledger).verifications + (1 : Nat)), frontier := (if (Nat.blt ((_yr).ledger).frontier (_root_.LexLeanRuntime.length (_ynext) : Nat)) then (_root_.LexLeanRuntime.length (_ynext) : Nat) else ((_yr).ledger).frontier) } : (Reasoning.Planner.Plan.Ledger)) } : (Reasoning.Planner.Plan.Search))) : (Option (Reasoning.Planner.Plan.Search))))))))))) (_yr).found (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (fun (__a : (Option (Prod (Prod Nat Nat) (Reasoning.Planner.Plan.Node)))) _ => match __a with | Option.some _yhit => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encList __enc_2) (fun (__a : (List (Reasoning.Planner.Plan.Node))) => (match __a with | List.nil => (Bool.true && Bool.true) | List.cons _ynode _yrest => (((Bool.true && (Bool.true && Bool.true)) && (__fits_13 (target) ((_ynode).state))) && (match (Reasoning.Planner.Plan.accept (target) ((_ynode).state)) with | Option.some _yv => ((((Bool.true && (Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) && (Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).iterations + (1 : Nat)) 18446744073709551616)) && (Bool.true && (Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).verifications + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true)))))) && Bool.true) && Bool.true))))) && Bool.true) && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_14 (_ynode))) && (let _ysuccessors : (List (Reasoning.Planner.Plan.Node)) := (Reasoning.Planner.Plan.successors (_ynode)); (((Bool.true && (Bool.true && Bool.true)) && (__fits_15 ((_yr).visited) (_ysuccessors))) && (let _yfresh : (Prod (List (Reasoning.Planner.Plan.Node)) (List (Prod Nat Nat))) := (Reasoning.Planner.Plan.fresh ((_yr).visited) (_ysuccessors)); (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (let _yordered : (List (Reasoning.Planner.Plan.Node)) := (_root_.LexLeanRuntime.append (_yrest) ((_yfresh).1) : (List (Reasoning.Planner.Plan.Node))); ((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (List (Reasoning.Planner.Plan.Node))) (__p1 : (Reasoning.Planner.Plan.Node)) => __fits_16 (target) __p0 __p1) ((fun (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yn : (Reasoning.Planner.Plan.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))) else _yacc))) (([] : List (Reasoning.Planner.Plan.Node))) (_yordered))) && (let _ynext : (List (Reasoning.Planner.Plan.Node)) := (_root_.LexLeanCollections.listFold ((fun (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yn : (Reasoning.Planner.Plan.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))) else _yacc))) (([] : List (Reasoning.Planner.Plan.Node))) (_yordered) : (List (Reasoning.Planner.Plan.Node))); ((((Bool.true && (Bool.true && ((Bool.true && Bool.true) && ((Bool.true && (if (_yr).truncated then (Bool.true && Bool.true) else ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (target + target) 18446744073709551616)) && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_yordered) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true))) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).iterations + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (((Bool.true && Bool.true) && (__fits_17 ((_ynode).state))) && Bool.true)) && (Nat.blt (((_yr).ledger).attempts + (Reasoning.Planner.Plan.attempts ((_ynode).state))) 18446744073709551616)) && (((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ysuccessors) : Nat) 18446744073709551616)) && Bool.true)) && (Nat.blt (((_yr).ledger).firings + (_root_.LexLeanRuntime.length (_ysuccessors) : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).expansions + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).verifications + (1 : Nat)) 18446744073709551616)) && ((((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ynext) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true) && (if (Nat.blt ((_yr).ledger).frontier (_root_.LexLeanRuntime.length (_ynext) : Nat)) then ((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ynext) : Nat) 18446744073709551616)) else Bool.true)) && Bool.true)))))) && Bool.true) && Bool.true))))) && Bool.true) && Bool.true) && Bool.true))))))))))))) (fun (__a : (List (Reasoning.Planner.Plan.Node))) => (_root_.LexLeanPreservation.encOption __enc_1) (match __a with | List.nil => (Option.none : (Option (Reasoning.Planner.Plan.Search))) | List.cons _ynode _yrest => (match (Reasoning.Planner.Plan.accept (target) ((_ynode).state)) with | Option.some _yv => (Option.some (({ frontier := _yrest, visited := (_yr).visited, found := (Option.some ((_yv, _ynode)) : (Option (Prod (Prod Nat Nat) (Reasoning.Planner.Plan.Node)))), truncated := (_yr).truncated, ledger := ({ iterations := (((_yr).ledger).iterations + (1 : Nat)), attempts := ((_yr).ledger).attempts, firings := ((_yr).ledger).firings, expansions := ((_yr).ledger).expansions, verifications := (((_yr).ledger).verifications + (1 : Nat)), frontier := ((_yr).ledger).frontier } : (Reasoning.Planner.Plan.Ledger)) } : (Reasoning.Planner.Plan.Search))) : (Option (Reasoning.Planner.Plan.Search))) | Option.none => (let _ysuccessors : (List (Reasoning.Planner.Plan.Node)) := (Reasoning.Planner.Plan.successors (_ynode)); (let _yfresh : (Prod (List (Reasoning.Planner.Plan.Node)) (List (Prod Nat Nat))) := (Reasoning.Planner.Plan.fresh ((_yr).visited) (_ysuccessors)); (let _yordered : (List (Reasoning.Planner.Plan.Node)) := (_root_.LexLeanRuntime.append (_yrest) ((_yfresh).1) : (List (Reasoning.Planner.Plan.Node))); (let _ynext : (List (Reasoning.Planner.Plan.Node)) := (_root_.LexLeanCollections.listFold ((fun (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yn : (Reasoning.Planner.Plan.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))) else _yacc))) (([] : List (Reasoning.Planner.Plan.Node))) (_yordered) : (List (Reasoning.Planner.Plan.Node))); (Option.some (({ frontier := _ynext, visited := (_yfresh).2, found := (Option.none : (Option (Prod (Prod Nat Nat) (Reasoning.Planner.Plan.Node)))), truncated := ((_yr).truncated || (Nat.blt (target + target) (_root_.LexLeanRuntime.length (_yordered) : Nat))), ledger := ({ iterations := (((_yr).ledger).iterations + (1 : Nat)), attempts := (((_yr).ledger).attempts + (Reasoning.Planner.Plan.attempts ((_ynode).state))), firings := (((_yr).ledger).firings + (_root_.LexLeanRuntime.length (_ysuccessors) : Nat)), expansions := (((_yr).ledger).expansions + (1 : Nat)), verifications := (((_yr).ledger).verifications + (1 : Nat)), frontier := (if (Nat.blt ((_yr).ledger).frontier (_root_.LexLeanRuntime.length (_ynext) : Nat)) then (_root_.LexLeanRuntime.length (_ynext) : Nat) else ((_yr).ledger).frontier) } : (Reasoning.Planner.Plan.Ledger)) } : (Reasoning.Planner.Plan.Search))) : (Option (Reasoning.Planner.Plan.Search)))))))))) (_yr).frontier (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (fun (__a : (List (Reasoning.Planner.Plan.Node))) _ => match __a with | List.nil => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) | List.cons _ynode _yrest => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun (__a : (Option (Prod Nat Nat))) => (match __a with | Option.some _yv => ((((Bool.true && (Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) && (Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).iterations + (1 : Nat)) 18446744073709551616)) && (Bool.true && (Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).verifications + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true)))))) && Bool.true) && Bool.true))))) && Bool.true) && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_14 (_ynode))) && (let _ysuccessors : (List (Reasoning.Planner.Plan.Node)) := (Reasoning.Planner.Plan.successors (_ynode)); (((Bool.true && (Bool.true && Bool.true)) && (__fits_15 ((_yr).visited) (_ysuccessors))) && (let _yfresh : (Prod (List (Reasoning.Planner.Plan.Node)) (List (Prod Nat Nat))) := (Reasoning.Planner.Plan.fresh ((_yr).visited) (_ysuccessors)); (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (let _yordered : (List (Reasoning.Planner.Plan.Node)) := (_root_.LexLeanRuntime.append (_yrest) ((_yfresh).1) : (List (Reasoning.Planner.Plan.Node))); ((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (List (Reasoning.Planner.Plan.Node))) (__p1 : (Reasoning.Planner.Plan.Node)) => __fits_16 (target) __p0 __p1) ((fun (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yn : (Reasoning.Planner.Plan.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))) else _yacc))) (([] : List (Reasoning.Planner.Plan.Node))) (_yordered))) && (let _ynext : (List (Reasoning.Planner.Plan.Node)) := (_root_.LexLeanCollections.listFold ((fun (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yn : (Reasoning.Planner.Plan.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))) else _yacc))) (([] : List (Reasoning.Planner.Plan.Node))) (_yordered) : (List (Reasoning.Planner.Plan.Node))); ((((Bool.true && (Bool.true && ((Bool.true && Bool.true) && ((Bool.true && (if (_yr).truncated then (Bool.true && Bool.true) else ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (target + target) 18446744073709551616)) && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_yordered) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true))) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).iterations + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (((Bool.true && Bool.true) && (__fits_17 ((_ynode).state))) && Bool.true)) && (Nat.blt (((_yr).ledger).attempts + (Reasoning.Planner.Plan.attempts ((_ynode).state))) 18446744073709551616)) && (((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ysuccessors) : Nat) 18446744073709551616)) && Bool.true)) && (Nat.blt (((_yr).ledger).firings + (_root_.LexLeanRuntime.length (_ysuccessors) : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).expansions + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).verifications + (1 : Nat)) 18446744073709551616)) && ((((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ynext) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true) && (if (Nat.blt ((_yr).ledger).frontier (_root_.LexLeanRuntime.length (_ynext) : Nat)) then ((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ynext) : Nat) 18446744073709551616)) else Bool.true)) && Bool.true)))))) && Bool.true) && Bool.true))))) && Bool.true) && Bool.true) && Bool.true))))))))))) (fun (__a : (Option (Prod Nat Nat))) => (_root_.LexLeanPreservation.encOption __enc_1) (match __a with | Option.some _yv => (Option.some (({ frontier := _yrest, visited := (_yr).visited, found := (Option.some ((_yv, _ynode)) : (Option (Prod (Prod Nat Nat) (Reasoning.Planner.Plan.Node)))), truncated := (_yr).truncated, ledger := ({ iterations := (((_yr).ledger).iterations + (1 : Nat)), attempts := ((_yr).ledger).attempts, firings := ((_yr).ledger).firings, expansions := ((_yr).ledger).expansions, verifications := (((_yr).ledger).verifications + (1 : Nat)), frontier := ((_yr).ledger).frontier } : (Reasoning.Planner.Plan.Ledger)) } : (Reasoning.Planner.Plan.Search))) : (Option (Reasoning.Planner.Plan.Search))) | Option.none => (let _ysuccessors : (List (Reasoning.Planner.Plan.Node)) := (Reasoning.Planner.Plan.successors (_ynode)); (let _yfresh : (Prod (List (Reasoning.Planner.Plan.Node)) (List (Prod Nat Nat))) := (Reasoning.Planner.Plan.fresh ((_yr).visited) (_ysuccessors)); (let _yordered : (List (Reasoning.Planner.Plan.Node)) := (_root_.LexLeanRuntime.append (_yrest) ((_yfresh).1) : (List (Reasoning.Planner.Plan.Node))); (let _ynext : (List (Reasoning.Planner.Plan.Node)) := (_root_.LexLeanCollections.listFold ((fun (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yn : (Reasoning.Planner.Plan.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))) else _yacc))) (([] : List (Reasoning.Planner.Plan.Node))) (_yordered) : (List (Reasoning.Planner.Plan.Node))); (Option.some (({ frontier := _ynext, visited := (_yfresh).2, found := (Option.none : (Option (Prod (Prod Nat Nat) (Reasoning.Planner.Plan.Node)))), truncated := ((_yr).truncated || (Nat.blt (target + target) (_root_.LexLeanRuntime.length (_yordered) : Nat))), ledger := ({ iterations := (((_yr).ledger).iterations + (1 : Nat)), attempts := (((_yr).ledger).attempts + (Reasoning.Planner.Plan.attempts ((_ynode).state))), firings := (((_yr).ledger).firings + (_root_.LexLeanRuntime.length (_ysuccessors) : Nat)), expansions := (((_yr).ledger).expansions + (1 : Nat)), verifications := (((_yr).ledger).verifications + (1 : Nat)), frontier := (if (Nat.blt ((_yr).ledger).frontier (_root_.LexLeanRuntime.length (_ynext) : Nat)) then (_root_.LexLeanRuntime.length (_ynext) : Nat) else ((_yr).ledger).frontier) } : (Reasoning.Planner.Plan.Ledger)) } : (Reasoning.Planner.Plan.Search))) : (Option (Reasoning.Planner.Plan.Search))))))))) (Reasoning.Planner.Plan.accept (target) ((_ynode).state)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_13 (target) ((_ynode).state))) (fun (__a : (Option (Prod Nat Nat))) _ => match __a with | Option.some _yv => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((_yr).ledger).iterations (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((_yr).ledger).verifications (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) _root_.LexLeanPreservation.convL_nil)))))) _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil))))) _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (let _ysuccessors : (List (Reasoning.Planner.Plan.Node)) := (Reasoning.Planner.Plan.successors (_ynode)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_14 (_ynode))) (let _yfresh : (Prod (List (Reasoning.Planner.Plan.Node)) (List (Prod Nat Nat))) := (Reasoning.Planner.Plan.fresh ((_yr).visited) (_ysuccessors)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_15 ((_yr).visited) (_ysuccessors))) (let _yordered : (List (Reasoning.Planner.Plan.Node)) := (_root_.LexLeanRuntime.append (_yrest) ((_yfresh).1) : (List (Reasoning.Planner.Plan.Node))); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc __enc_2) _yrest (_yfresh).1)) (let _ynext : (List (Reasoning.Planner.Plan.Node)) := (_root_.LexLeanCollections.listFold ((fun (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yn : (Reasoning.Planner.Plan.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))) else _yacc))) (([] : List (Reasoning.Planner.Plan.Node))) (_yordered) : (List (Reasoning.Planner.Plan.Node))); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := __enc_2) (es := (_root_.LexLeanPreservation.encList __enc_2)) (_root_.LexLeanPreservation.listEnc __enc_2) (fun _ => rfl) ((fun (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yn : (Reasoning.Planner.Plan.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))) else _yacc))) (fun (__p0 : (List (Reasoning.Planner.Plan.Node))) (__p1 : (Reasoning.Planner.Plan.Node)) => __fits_16 (target) __p0 __p1) 16 [(_root_.LexLeanTarget.TargetSyntax.Value.nat target)] (fun (__p0 : (List (Reasoning.Planner.Plan.Node))) (__p1 : (Reasoning.Planner.Plan.Node)) => __rel_16 (target) __p0 __p1) (p := __prog) (fi := 9) (ta := (.adt 2)) (ts := (.list (.adt 2))) rfl (([] : List (Reasoning.Planner.Plan.Node))) (_yordered))) (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (Bool.true && Bool.true) else ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (target + target) 18446744073709551616)) && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_yordered) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b || (Nat.blt (target + target) (_root_.LexLeanRuntime.length (_yordered) : Nat)))) (_yr).truncated (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd target target)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc __enc_2) _yordered)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (target + target) (_root_.LexLeanRuntime.length (_yordered) : Nat))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((_yr).ledger).iterations (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_17 ((_ynode).state))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((_yr).ledger).attempts (Reasoning.Planner.Plan.attempts ((_ynode).state)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc __enc_2) _ysuccessors)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((_yr).ledger).firings (_root_.LexLeanRuntime.length (_ysuccessors) : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((_yr).ledger).expansions (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((_yr).ledger).verifications (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ynext) : Nat) 18446744073709551616)) else Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (_root_.LexLeanRuntime.length (_ynext) : Nat) else ((_yr).ledger).frontier)) (Nat.blt ((_yr).ledger).frontier (_root_.LexLeanRuntime.length (_ynext) : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc __enc_2) _ynext)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt ((_yr).ledger).frontier (_root_.LexLeanRuntime.length (_ynext) : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc __enc_2) _ynext))) (fun _ => (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl))) _root_.LexLeanPreservation.convL_nil)))))) _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil))))) _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some))))))))))))))))) + +def __fits_6 (target : Nat) (_yr : (Reasoning.Planner.Plan.Search)) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && (__fits_8 (target) (_yr))) + +attribute [local irreducible] Reasoning.Planner.Plan.searchStep in +theorem __rel_6 (target : Nat) (_yr : (Reasoning.Planner.Plan.Search)) : _root_.LexLeanPreservation.FunRel __prog 6 [(_root_.LexLeanTarget.TargetSyntax.Value.nat target), (__enc_1 _yr)] (_root_.LexLeanPreservation.Rel (__fits_6 target _yr) ((_root_.LexLeanPreservation.encOption __enc_1) ((Reasoning.Planner.Plan.searchStep (target) (_yr))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_8 (target) (_yr))) + +def __fits_10 (target : Nat) (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yn : (Reasoning.Planner.Plan.Node)) : Bool := + (((((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (target + target) 18446744073709551616)) && Bool.true)) && Bool.true) && (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target)) then ((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) else Bool.true)) + +theorem __rel_10 (target : Nat) (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yn : (Reasoning.Planner.Plan.Node)) : _root_.LexLeanPreservation.FunRel __prog 10 [(_root_.LexLeanTarget.TargetSyntax.Value.nat target), ((_root_.LexLeanPreservation.encList __enc_2) _yacc), (__enc_2 _yn)] (_root_.LexLeanPreservation.Rel (__fits_10 target _yacc _yn) ((_root_.LexLeanPreservation.encList __enc_2) ((if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))) else _yacc)))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) else Bool.true)) (fun (__b : Bool) => (_root_.LexLeanPreservation.encList __enc_2) (if __b then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))) else _yacc)) (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc __enc_2) _yacc)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd target target)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc __enc_2) _yacc (_yn :: ([] : List (Reasoning.Planner.Plan.Node)))))) (fun _ => (_root_.LexLeanPreservation.conv_var rfl))) + +def __fits_11 (target : Nat) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_11 (target : Nat) : _root_.LexLeanPreservation.FunRel __prog 11 [(_root_.LexLeanTarget.TargetSyntax.Value.nat target)] (_root_.LexLeanPreservation.Rel (__fits_11 target) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Planner.Plan.observe target))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) + +def __fits_7 (target : Nat) : Bool := + ((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && (((((((Bool.true && Bool.true) && (__fits_11 (target))) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (List (Reasoning.Planner.Plan.Node))) (__p1 : (Reasoning.Planner.Plan.Node)) => __fits_10 (target) __p0 __p1) ((fun (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yn : (Reasoning.Planner.Plan.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))) else _yacc))) (([] : List (Reasoning.Planner.Plan.Node))) ((({ state := (Reasoning.Planner.Plan.observe (target)), trace := ([] : List (Reasoning.Planner.Plan.Step)) } : (Reasoning.Planner.Plan.Node)) :: ([] : List (Reasoning.Planner.Plan.Node)))))) && (let _yfirst : (List (Reasoning.Planner.Plan.Node)) := (_root_.LexLeanCollections.listFold ((fun (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yn : (Reasoning.Planner.Plan.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))) else _yacc))) (([] : List (Reasoning.Planner.Plan.Node))) ((({ state := (Reasoning.Planner.Plan.observe (target)), trace := ([] : List (Reasoning.Planner.Plan.Step)) } : (Reasoning.Planner.Plan.Node)) :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))); ((Bool.true && ((((Bool.true && Bool.true) && (((Bool.true && Bool.true) && (__fits_11 (target))) && Bool.true)) && Bool.true) && ((Bool.true && Bool.true) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (target + target) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) && (((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_yfirst) : Nat) 18446744073709551616)) && Bool.true)))))) && Bool.true) && Bool.true))))) && Bool.true))) + +attribute [local irreducible] Reasoning.Planner.Plan.observe in +theorem __rel_7 (target : Nat) : _root_.LexLeanPreservation.FunRel __prog 7 [(_root_.LexLeanTarget.TargetSyntax.Value.nat target)] (_root_.LexLeanPreservation.Rel (__fits_7 target) (__enc_1 (Reasoning.Planner.Plan.start target))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (let _yfirst : (List (Reasoning.Planner.Plan.Node)) := (_root_.LexLeanCollections.listFold ((fun (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yn : (Reasoning.Planner.Plan.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))) else _yacc))) (([] : List (Reasoning.Planner.Plan.Node))) ((({ state := (Reasoning.Planner.Plan.observe (target)), trace := ([] : List (Reasoning.Planner.Plan.Step)) } : (Reasoning.Planner.Plan.Node)) :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_11 (target))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_adt) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := __enc_2) (es := (_root_.LexLeanPreservation.encList __enc_2)) (_root_.LexLeanPreservation.listEnc __enc_2) (fun _ => rfl) ((fun (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yn : (Reasoning.Planner.Plan.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))) else _yacc))) (fun (__p0 : (List (Reasoning.Planner.Plan.Node))) (__p1 : (Reasoning.Planner.Plan.Node)) => __fits_10 (target) __p0 __p1) 10 [(_root_.LexLeanTarget.TargetSyntax.Value.nat target)] (fun (__p0 : (List (Reasoning.Planner.Plan.Node))) (__p1 : (Reasoning.Planner.Plan.Node)) => __rel_10 (target) __p0 __p1) (p := __prog) (fi := 9) (ta := (.adt 2)) (ts := (.list (.adt 2))) rfl (([] : List (Reasoning.Planner.Plan.Node))) ((({ state := (Reasoning.Planner.Plan.observe (target)), trace := ([] : List (Reasoning.Planner.Plan.Step)) } : (Reasoning.Planner.Plan.Node)) :: ([] : List (Reasoning.Planner.Plan.Node)))))) (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_11 (target))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.tpl_setInsert (_root_.LexLeanPreservation.keySpec_pair (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanCollections.Key.compare : (Prod Nat Nat) -> (Prod Nat Nat) -> Ordering) (fun _ _ __h => by simp only [_root_.LexLeanCollections.Key.compare] at __h ⊢; simp only [__h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.Key.compare] at __h ⊢; simp only [__h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.Key.compare] at __h ⊢; simp only [__h])) (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) _root_.LexLeanCollections.insertElement (fun _ => rfl) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.insertElement, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.insertElement, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.insertElement, __h]) (p := __prog) (fi := 12) (tk := (.pair .nat .nat)) rfl (([] : List (Prod Nat Nat))) ((Reasoning.Planner.Plan.observe (target))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd target target)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (target + target) (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc __enc_2) _yfirst)) _root_.LexLeanPreservation.convL_nil)))))) _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil))))) _root_.LexLeanPreservation.construct_adt)) + +def __fits_3 (target : Nat) : Bool := + (((Bool.true && Bool.true) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (_root_.LexLeanRuntime.multiply (target) ((8 : Nat)) : Nat) 18446744073709551616)) && (((Bool.true && Bool.true) && (__fits_7 (target))) && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : (Reasoning.Planner.Plan.Search)) => __fits_6 (target) __p0) ((fun (_yr : (Reasoning.Planner.Plan.Search)) => (Reasoning.Planner.Plan.searchStep (target) (_yr)))) ((_root_.LexLeanRuntime.multiply (target) ((8 : Nat)) : Nat)) ((Reasoning.Planner.Plan.start (target))))) + +attribute [local irreducible] Reasoning.Planner.Plan.searchStep Reasoning.Planner.Plan.start in +theorem __rel_3 (target : Nat) : _root_.LexLeanPreservation.FunRel __prog 3 [(_root_.LexLeanTarget.TargetSyntax.Value.nat target)] (_root_.LexLeanPreservation.Rel (__fits_3 target) ((_root_.LexLeanPreservation.encPair __enc_1 _root_.LexLeanTarget.TargetSyntax.Value.bool) (Reasoning.Planner.Plan.run target))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natMul target (8 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_7 (target))) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterateUntil (es := __enc_1) (_root_.LexLeanPreservation.optEnc __enc_1) (fun _ => rfl) (_root_.LexLeanPreservation.encPair __enc_1 _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) ((fun (_yr : (Reasoning.Planner.Plan.Search)) => (Reasoning.Planner.Plan.searchStep (target) (_yr)))) (fun (__p0 : (Reasoning.Planner.Plan.Search)) => __fits_6 (target) __p0) 6 [(_root_.LexLeanTarget.TargetSyntax.Value.nat target)] (fun (__p0 : (Reasoning.Planner.Plan.Search)) => __rel_6 (target) __p0) (_root_.LexLeanCollections.iterateUntil ((fun (_yr : (Reasoning.Planner.Plan.Search)) => (Reasoning.Planner.Plan.searchStep (target) (_yr))))) (fun _ => rfl) (fun _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (p := __prog) (fi := 5) (ts := (.adt 1)) rfl ((_root_.LexLeanRuntime.multiply (target) ((8 : Nat)) : Nat)) ((Reasoning.Planner.Plan.start (target))))) + +def __fits_4 (_ysaturated : Bool) (_ytruncated : Bool) : Bool := + ((Bool.true && (if _ysaturated then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (if (_ysaturated && (!_ytruncated)) then (((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) else (((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true))) + +theorem __rel_4 (_ysaturated : Bool) (_ytruncated : Bool) : _root_.LexLeanPreservation.FunRel __prog 4 [(_root_.LexLeanTarget.TargetSyntax.Value.bool _ysaturated), (_root_.LexLeanTarget.TargetSyntax.Value.bool _ytruncated)] (_root_.LexLeanPreservation.Rel (__fits_4 _ysaturated _ytruncated) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (Reasoning.Planner.Plan.failure _ysaturated _ytruncated))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) else (((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (if __b then ((Bool.false, Bool.true) : (Prod Bool Bool)) else ((Bool.false, Bool.false) : (Prod Bool Bool)))) (_ysaturated && (!_ytruncated)) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (!_ytruncated))) _ysaturated (_root_.LexLeanPreservation.conv_var rfl) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_boolNot _ytruncated))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))) + +def __fits_2 (target : Nat) : Bool := + (((Bool.true && Bool.true) && (__fits_3 (target))) && (let _yfinal : (Prod (Reasoning.Planner.Plan.Search) Bool) := (Reasoning.Planner.Plan.run (target)); (Bool.true && (match ((_yfinal).1).found with | Option.some _yhit => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => ((((Bool.true && (Bool.true && Bool.true)) && (__fits_4 ((_yfinal).2) (((_yfinal).1).truncated))) && Bool.true) && Bool.true))))) + +attribute [local irreducible] Reasoning.Planner.Plan.failure Reasoning.Planner.Plan.run in +theorem __rel_2 (target : Nat) : _root_.LexLeanPreservation.FunRel __prog 2 [(_root_.LexLeanTarget.TargetSyntax.Value.nat target)] (_root_.LexLeanPreservation.Rel (__fits_2 target) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encList __enc_0))) (Reasoning.Planner.Plan target))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (let _yfinal : (Prod (Reasoning.Planner.Plan.Search) Bool) := (Reasoning.Planner.Plan.run (target)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_3 (target))) (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) __enc_2)) (fun (__a : (Option (Prod (Prod Nat Nat) (Reasoning.Planner.Plan.Node)))) => (match __a with | Option.some _yhit => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => ((((Bool.true && (Bool.true && Bool.true)) && (__fits_4 ((_yfinal).2) (((_yfinal).1).truncated))) && Bool.true) && Bool.true))) (fun (__a : (Option (Prod (Prod Nat Nat) (Reasoning.Planner.Plan.Node)))) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encList __enc_0))) (match __a with | Option.some _yhit => (Except.ok (((_yhit).1, ((_yhit).2).trace)) : (Except (Prod Bool Bool) (Prod (Prod Nat Nat) (List (Reasoning.Planner.Plan.Step))))) | Option.none => (Except.error ((Reasoning.Planner.Plan.failure ((_yfinal).2) (((_yfinal).1).truncated))) : (Except (Prod Bool Bool) (Prod (Prod Nat Nat) (List (Reasoning.Planner.Plan.Step))))))) ((_yfinal).1).found (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) rfl) (fun (__a : (Option (Prod (Prod Nat Nat) (Reasoning.Planner.Plan.Node)))) _ => match __a with | Option.some _yhit => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_4 ((_yfinal).2) (((_yfinal).1).truncated))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)))))) + +def __fits_1 (target : Nat) : Bool := + (((Bool.true && Bool.true) && (__fits_2 (target))) && (match (Reasoning.Planner.Plan (target)) with | Except.ok _yp => ((Bool.true && Bool.true) && Bool.true) | Except.error _ye => ((Bool.true && Bool.true) && Bool.true))) + +attribute [local irreducible] Reasoning.Planner.Plan in +theorem __rel_1 (target : Nat) : _root_.LexLeanPreservation.FunRel __prog 1 [(_root_.LexLeanTarget.TargetSyntax.Value.nat target)] (_root_.LexLeanPreservation.Rel (__fits_1 target) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Reasoning.Planner.Plan.verdict target))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encList __enc_0))) (fun (__a : (Except (Prod Bool Bool) (Prod (Prod Nat Nat) (List (Reasoning.Planner.Plan.Step))))) => (match __a with | Except.ok _yp => ((Bool.true && Bool.true) && Bool.true) | Except.error _ye => ((Bool.true && Bool.true) && Bool.true))) (fun (__a : (Except (Prod Bool Bool) (Prod (Prod Nat Nat) (List (Reasoning.Planner.Plan.Step))))) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (match __a with | Except.ok _yp => (Except.ok ((_yp).1) : (Except (Prod Bool Bool) (Prod Nat Nat))) | Except.error _ye => (Except.error (_ye) : (Except (Prod Bool Bool) (Prod Nat Nat))))) (Reasoning.Planner.Plan (target)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_2 (target))) (fun (__a : (Except (Prod Bool Bool) (Prod (Prod Nat Nat) (List (Reasoning.Planner.Plan.Step))))) _ => match __a with | Except.ok _yp => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok)) | Except.error _ye => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error))))) + +def __fits_0 (target : Nat) : Bool := + (((Bool.true && Bool.true) && (__fits_1 (target))) && (match (Reasoning.Planner.Plan.verdict (target)) with | Except.ok jugs => Bool.true | Except.error failure => Bool.true)) + +attribute [local irreducible] Reasoning.Planner.Plan.verdict in +theorem __rel_0 (target : Nat) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat target)] (_root_.LexLeanPreservation.Rel (__fits_0 target) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.planLeft target))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun (__a : (Except (Prod Bool Bool) (Prod Nat Nat))) => (match __a with | Except.ok jugs => Bool.true | Except.error failure => Bool.true)) (fun (__a : (Except (Prod Bool Bool) (Prod Nat Nat))) => _root_.LexLeanTarget.TargetSyntax.Value.nat (match __a with | Except.ok jugs => (jugs).1 | Except.error failure => (9 : Nat))) (Reasoning.Planner.Plan.verdict (target)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_1 (target))) (fun (__a : (Except (Prod Bool Bool) (Prod Nat Nat))) _ => match __a with | Except.ok jugs => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl))) | Except.error failure => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value)))) + +def denote (target : Nat) : _root_.LexLeanPreservation.Obs := + _root_.cond (__fits_0 target) (_root_.LexLeanPreservation.Obs.value ((_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.planLeft target)))) _root_.LexLeanPreservation.Obs.overflow + +theorem root (target : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat target)] (_root_.LexLeanPreservation.Rel (__fits_0 target) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.planLeft target))) := + _root_.LexLeanPreservation.run_of_funRel (__rel_0 target) + +end LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3 diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R3/Compose/RustStd.lex.tex b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R3/Compose/RustStd.lex.tex new file mode 100644 index 000000000..e78e6478b --- /dev/null +++ b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R3/Compose/RustStd.lex.tex @@ -0,0 +1,1301 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3, + LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.Compose.RustStd.__wt_0 : @16 := @424 { + all: [LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.Compose.RustStd.__wt_0], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.Compose.RustStd.__wt_2 : @431 := @905 { + all: [LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.Compose.RustStd.__wt_2], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.Compose.RustStd.__wt_3 : @913 := @1372 { + all: [LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.Compose.RustStd.__wt_3], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.Compose.RustStd.__wt_1 : @1379 := @2024 { + all: [LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.Compose.RustStd.__wt_1], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.Compose.RustStd.root : @2637 := @2638 { + all: [LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.RustStd.program +@1 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.RustStd.krate +@2 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.RustStd.flags +@3 := Reasoning.Planner.Plan.Step +@4 := #0 +@5 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.__enc_0 +@6 := @5 @4 +@7 := LexLeanPreservation.Rust.WT +@8 := LexLeanTarget.TargetSyntax.Ty.adt +@9 := 0 +@10 := @8 @9 +@11 := @7 @0 +@12 := @11 @1 +@13 := @12 @2 +@14 := @13 @6 +@15 := @14 @10 +@16 := (__v : @3) -> @15 +@17 := fun (__v : @3) => @15 +@18 := LexLeanTarget.TargetSyntax.Value +@19 := LexLeanTarget.TargetSyntax.Ty +@20 := List.nil.{0} +@21 := List.cons.{0} +@22 := @20 @18 +@23 := @20 @19 +@24 := LexLeanTarget.TargetSyntax.Program +@25 := LexLeanPreservation.Rust.RCrate +@26 := LexLeanPreservation.Rust.Flags +@27 := LexLeanPreservation.Rust.WTL +@28 := #2 +@29 := @27 @28 +@30 := #1 +@37 := {p : @24} -> {c : @25} -> {A : @26} -> @29 @30 @4 @22 @23 +@39 := LexLeanPreservation.Rust.wtl_nil @0 +@40 := @27 @0 +@46 := {c : @25} -> {A : @26} -> @40 @30 @4 @22 @23 +@47 := @39 @1 +@48 := @40 @1 +@52 := {A : @26} -> @48 @4 @22 @23 +@53 := @47 @2 +@54 := @48 @2 +@55 := @54 @22 +@56 := @55 @23 +@57 := Nat +@58 := List.{0} +@59 := @58 @18 +@60 := @58 @19 +@61 := Eq.{1} +@62 := Option.{0} +@63 := @62 @60 +@64 := @61 @63 +@65 := LexLeanPreservation.Rust.adtFields +@66 := #6 +@67 := @65 @66 +@68 := #3 +@71 := @64 (@67 @68 @28) +@72 := Option.some.{0} +@73 := @72 @60 +@74 := @73 @4 +@75 := @71 @74 +@76 := #7 +@78 := @27 @76 @66 +@79 := #5 +@82 := @78 @79 @28 @30 +@83 := #8 +@86 := @7 @83 @76 @66 +@87 := LexLeanTarget.TargetSyntax.Value.adt +@88 := #4 +@90 := @87 @88 @68 +@91 := @86 @90 +@92 := @8 @79 +@102 := {p : @24} -> + {c : @25} -> + {A : @26} -> + {i : @57} -> {k : @57} -> {fs : @59} -> {tys : @60} -> (h : @75) -> (hf : @82) -> @91 @92 +@104 := LexLeanPreservation.Rust.wt_adt @0 +@105 := @65 @0 +@109 := @64 (@105 @68 @28) @74 +@113 := @40 @66 @79 @28 @30 +@125 := {c : @25} -> + {A : @26} -> + {i : @57} -> + {k : @57} -> {fs : @59} -> {tys : @60} -> (h : @109) -> (hf : @113) -> @11 @76 @66 @90 @92 +@126 := @104 @1 +@129 := @48 @79 @28 @30 +@139 := {A : @26} -> + {i : @57} -> + {k : @57} -> {fs : @59} -> {tys : @60} -> (h : @109) -> (hf : @129) -> @12 @66 @90 @92 +@140 := @126 @2 +@142 := @54 @28 @30 +@143 := @13 @90 +@150 := {i : @57} -> {k : @57} -> {fs : @59} -> {tys : @60} -> (h : @109) -> (hf : @142) -> @143 @92 +@151 := @140 @9 +@152 := @105 @9 +@161 := {k : @57} -> + {fs : @59} -> {tys : @60} -> (h : @64 (@152 @28) @74) -> (hf : @142) -> @143 @10 +@162 := @151 @9 +@163 := @152 @9 +@164 := @64 @163 +@165 := @164 @74 +@166 := @87 @9 +@168 := @13 (@166 @68) +@173 := {fs : @59} -> {tys : @60} -> (h : @165) -> (hf : @142) -> @168 @10 +@174 := @162 @22 +@175 := @55 @30 +@178 := @13 (@166 @22) @10 +@181 := {tys : @60} -> (h : @165) -> (hf : @175) -> @178 +@182 := @174 @23 +@183 := @73 @23 +@186 := (h : @164 @183) -> (hf : @56) -> @178 +@187 := Eq.refl.{1} +@188 := @187 @63 +@191 := @182 (@188 @163) @53 +@192 := 1 +@193 := @151 @192 +@194 := @152 @192 +@195 := @64 @194 +@196 := @195 @74 +@197 := @87 @192 +@204 := {fs : @59} -> {tys : @60} -> (h : @196) -> (hf : @142) -> @13 (@197 @68) @10 +@205 := @193 @22 +@208 := @13 (@197 @22) @10 +@211 := {tys : @60} -> (h : @196) -> (hf : @175) -> @208 +@212 := @205 @23 +@215 := (h : @195 @183) -> (hf : @56) -> @208 +@218 := @212 (@188 @194) @53 +@219 := LexLeanTarget.TargetSyntax.Value.nat +@220 := @219 @4 +@221 := LexLeanTarget.TargetSyntax.Ty.nat +@224 := @7 @68 @28 @30 +@230 := {p : @24} -> {c : @25} -> {A : @26} -> (n : @57) -> @224 @220 @221 +@232 := LexLeanPreservation.Rust.wt_nat @0 +@234 := @11 @28 @30 +@239 := {c : @25} -> {A : @26} -> (n : @57) -> @234 @220 @221 +@240 := @232 @1 +@241 := @12 @30 +@245 := {A : @26} -> (n : @57) -> @241 @220 @221 +@246 := @240 @2 +@247 := @13 @220 +@248 := @247 @221 +@249 := (n : @57) -> @248 +@250 := @246 @4 +@251 := @21 @18 +@253 := @251 @220 @22 +@254 := @21 @19 +@255 := @254 @221 +@256 := @255 @23 +@259 := @7 @66 @79 @88 +@261 := @259 @68 @28 +@264 := @27 @83 @76 @66 +@266 := @251 @79 @68 +@267 := @264 @266 +@269 := @254 @88 @28 +@279 := {p : @24} -> + {c : @25} -> + {A : @26} -> + {v : @18} -> {t : @19} -> {vs : @59} -> {ts : @60} -> (h : @261) -> (hs : @82) -> @267 @269 +@281 := LexLeanPreservation.Rust.wtl_cons @0 +@283 := @11 @79 @88 +@297 := {c : @25} -> + {A : @26} -> + {v : @18} -> + {t : @19} -> + {vs : @59} -> {ts : @60} -> (h : @283 @68 @28) -> (hs : @113) -> @40 @76 @66 @266 @269 +@298 := @281 @1 +@299 := @12 @88 +@311 := {A : @26} -> + {v : @18} -> + {t : @19} -> {vs : @59} -> {ts : @60} -> (h : @299 @68 @28) -> (hs : @129) -> @48 @66 @266 @269 +@312 := @298 @2 +@322 := {v : @18} -> + {t : @19} -> {vs : @59} -> {ts : @60} -> (h : @13 @68 @28) -> (hs : @142) -> @54 @266 @269 +@323 := @312 @220 +@324 := @219 @68 +@325 := @13 @324 +@326 := @325 @28 +@327 := @219 @79 +@328 := @251 @327 +@330 := @54 (@328 @68) +@336 := {t : @19} -> {vs : @59} -> {ts : @60} -> (h : @326) -> (hs : @142) -> @330 @269 +@337 := @323 @221 +@338 := @219 @28 +@340 := @13 @338 @221 +@341 := @219 @88 +@342 := @251 @341 +@344 := @54 (@342 @68) +@345 := @255 @28 +@350 := {vs : @59} -> {ts : @60} -> (h : @340) -> (hs : @142) -> @344 @345 +@351 := @337 @22 +@352 := @219 @30 +@354 := @13 @352 @221 +@356 := @251 @324 @22 +@357 := @54 @356 +@361 := {ts : @60} -> (h : @354) -> (hs : @175) -> @357 @345 +@362 := @351 @23 +@364 := @251 @338 @22 +@365 := @54 @364 +@368 := (h : @248) -> (hs : @56) -> @365 @256 +@369 := @362 @250 +@371 := @251 @352 @22 +@372 := @54 @371 +@373 := @372 @256 +@374 := (hs : @56) -> @373 +@375 := @369 @53 +@377 := @54 @253 @256 +@378 := 2 +@379 := @151 @378 +@380 := @152 @378 +@381 := @64 @380 +@382 := @381 @74 +@383 := @87 @378 +@390 := {fs : @59} -> {tys : @60} -> (h : @382) -> (hf : @142) -> @13 (@383 @68) @10 +@391 := @379 @253 +@398 := {tys : @60} -> (h : @382) -> (hf : @365 @30) -> @13 (@383 @356) @10 +@399 := @391 @256 +@406 := (h : @381 (@73 @256)) -> (hf : @373) -> @13 (@383 @364) @10 +@408 := @399 (@188 @380) +@412 := (hf : @377) -> @13 (@383 @371) @10 +@413 := @408 @375 +@416 := @13 (@383 @253) @10 +@417 := fun (__x0 : @57) => @413 +@424 := fun (__v : @3) => Reasoning.Planner.Plan.Step.casesOn.{0} @17 @4 @191 @218 @417 +@425 := Reasoning.Planner.Plan.Node +@426 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.__enc_2 +@427 := @426 @4 +@428 := @8 @378 +@429 := @13 @427 +@430 := @429 @428 +@431 := (__s : @425) -> @430 +@432 := Reasoning.Planner.Plan.Node.state +@433 := @432 @4 +@434 := Reasoning.Planner.Plan.Node.trace +@435 := @434 @4 +@436 := LexLeanPreservation.encPair +@437 := @436 @57 +@438 := @437 @57 +@439 := @438 @219 +@440 := @439 @219 +@441 := @440 @433 +@442 := LexLeanTarget.TargetSyntax.Ty.pair +@443 := @442 @221 +@444 := @443 @221 +@445 := fun (__x : @57) => @250 +@446 := Sort 1 +@447 := (a._@._internal._hyg.#0 : @30) -> @18 +@448 := #9 +@451 := @7 @448 @83 @76 +@452 := @88 @4 +@455 := (x : @79) -> @451 @452 @28 +@456 := #10 +@462 := (x : @79) -> @7 @456 @448 @83 @452 @28 +@463 := Prod.{0, 0} +@465 := @463 @76 @66 +@466 := #11 +@469 := @7 @466 @456 @448 +@474 := @436 @83 @76 @66 @79 @4 +@475 := @469 @474 +@477 := @442 @88 @68 +@490 := {p : @24} -> + {c : @25} -> + {A : @26} -> + {α : @446} -> + {β : @446} -> + {ea : @447} -> + {eb : @447} -> {s : @19} -> {t : @19} -> (ha : @455) -> (hb : @462) -> (x : @465) -> @475 @477 +@492 := LexLeanPreservation.Rust.wt_encPair @0 +@517 := {c : @25} -> + {A : @26} -> + {α : @446} -> + {β : @446} -> + {ea : @447} -> + {eb : @447} -> + {s : @19} -> + {t : @19} -> + (ha : (x : @79) -> @11 @83 @76 @452 @28) -> + (hb : (x : @79) -> @11 @448 @83 @452 @28) -> (x : @465) -> @11 @456 @448 @474 @477 +@518 := @492 @1 +@539 := {A : @26} -> + {α : @446} -> + {β : @446} -> + {ea : @447} -> + {eb : @447} -> + {s : @19} -> + {t : @19} -> + (ha : (x : @79) -> @12 @76 @452 @28) -> + (hb : (x : @79) -> @12 @83 @452 @28) -> (x : @465) -> @12 @448 @474 @477 +@540 := @518 @2 +@542 := @13 @452 @28 +@543 := (x : @79) -> @542 +@554 := {α : @446} -> + {β : @446} -> + {ea : @447} -> + {eb : @447} -> {s : @19} -> {t : @19} -> (ha : @543) -> (hb : @543) -> (x : @465) -> @13 @474 @477 +@555 := @540 @57 +@556 := (a._@._internal._hyg.#0 : @57) -> @18 +@557 := (x : @57) -> @542 +@558 := @463 @57 +@573 := {β : @446} -> + {ea : @556} -> + {eb : @447} -> + {s : @19} -> + {t : @19} -> (ha : @557) -> (hb : @543) -> (x : @558 @66) -> @13 (@437 @76 @66 @79 @4) @477 +@574 := @555 @57 +@575 := @558 @57 +@587 := {ea : @556} -> + {eb : @556} -> + {s : @19} -> {t : @19} -> (ha : @557) -> (hb : @557) -> (x : @575) -> @13 (@438 @66 @79 @4) @477 +@588 := @574 @219 +@590 := (x : @57) -> @247 @28 +@600 := {eb : @556} -> + {s : @19} -> {t : @19} -> (ha : @590) -> (hb : @557) -> (x : @575) -> @13 (@439 @79 @4) @477 +@601 := @588 @219 +@603 := @13 (@440 @4) +@609 := {s : @19} -> {t : @19} -> (ha : @590) -> (hb : @590) -> (x : @575) -> @603 @477 +@610 := @601 @221 +@611 := (x : @57) -> @248 +@617 := {t : @19} -> (ha : @611) -> (hb : @590) -> (x : @575) -> @603 (@443 @68) +@618 := @610 @221 +@620 := (x : @575) -> @603 @444 +@622 := (ha : @611) -> (hb : @611) -> @620 +@624 := @618 @445 @445 +@625 := @624 @433 +@627 := @13 @441 @444 +@628 := LexLeanPreservation.encList +@629 := @628 @3 +@630 := @629 @5 +@631 := @630 @435 +@632 := LexLeanTarget.TargetSyntax.Ty.list +@633 := @632 @10 +@636 := fun (__x : @3) => + LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.Compose.RustStd.__wt_0 @4 +@637 := (a._@._internal._hyg.#0 : @4) -> @18 +@638 := @28 @4 +@641 := (x : @28) -> @259 @638 @30 +@642 := @58 @68 +@645 := @7 @76 @66 @79 +@648 := @628 @88 @68 @4 +@649 := @645 @648 +@650 := @632 @28 +@659 := {p : @24} -> + {c : @25} -> + {A : @26} -> {α : @446} -> {e : @637} -> {t : @19} -> (h : @641) -> (xs : @642) -> @649 @650 +@661 := LexLeanPreservation.Rust.wt_encList @0 +@664 := (x : @28) -> @283 @638 @30 +@666 := @11 @66 @79 +@675 := {c : @25} -> + {A : @26} -> {α : @446} -> {e : @637} -> {t : @19} -> (h : @664) -> (xs : @642) -> @666 @648 @650 +@676 := @661 @1 +@679 := (x : @28) -> @299 @638 @30 +@680 := @12 @79 +@688 := {A : @26} -> + {α : @446} -> {e : @637} -> {t : @19} -> (h : @679) -> (xs : @642) -> @680 @648 @650 +@689 := @676 @2 +@691 := @13 @638 @30 +@692 := (x : @28) -> @691 +@699 := {α : @446} -> {e : @637} -> {t : @19} -> (h : @692) -> (xs : @642) -> @13 @648 @650 +@700 := @689 @3 +@701 := (a._@._internal._hyg.#0 : @3) -> @18 +@702 := (x : @3) -> @691 +@703 := @58 @3 +@711 := {e : @701} -> {t : @19} -> (h : @702) -> (xs : @703) -> @13 (@629 @68 @4) @650 +@712 := @700 @5 +@714 := (x : @3) -> @14 @30 +@716 := @13 (@630 @4) +@720 := {t : @19} -> (h : @714) -> (xs : @703) -> @716 @650 +@721 := @712 @10 +@725 := (h : (x : @3) -> @15) -> (xs : @703) -> @716 @633 +@727 := @721 @636 @435 +@729 := @13 @631 @633 +@731 := @251 @631 @22 +@733 := @251 @441 @731 +@734 := @254 @633 +@735 := @734 @23 +@736 := @254 @444 +@737 := @736 @735 +@738 := @312 @631 +@740 := @630 (@434 @68) +@753 := {t : @19} -> + {vs : @59} -> + {ts : @60} -> (h : @13 @740 @28) -> (hs : @142) -> @54 (@251 (@630 (@434 @79)) @68) @269 +@754 := @738 @633 +@756 := @630 (@434 @28) +@758 := @13 @756 @633 +@763 := @54 (@251 (@630 (@434 @88)) @68) +@764 := @734 @28 +@769 := {vs : @59} -> {ts : @60} -> (h : @758) -> (hs : @142) -> @763 @764 +@770 := @754 @22 +@772 := @630 (@434 @30) +@774 := @13 @772 @633 +@776 := @251 @740 @22 +@781 := {ts : @60} -> (h : @774) -> (hs : @175) -> @54 @776 @764 +@782 := @770 @23 +@784 := @251 @756 @22 +@785 := @54 @784 +@788 := (h : @729) -> (hs : @56) -> @785 @735 +@789 := @782 @727 +@791 := @251 @772 @22 +@793 := @54 @791 @735 +@794 := (hs : @56) -> @793 +@795 := @789 @53 +@797 := @54 @731 @735 +@798 := @312 @441 +@800 := @440 (@432 @68) +@813 := {t : @19} -> + {vs : @59} -> + {ts : @60} -> (h : @13 @800 @28) -> (hs : @142) -> @54 (@251 (@440 (@432 @79)) @68) @269 +@814 := @798 @444 +@816 := @440 (@432 @28) +@818 := @13 @816 @444 +@823 := @54 (@251 (@440 (@432 @88)) @68) +@824 := @736 @28 +@829 := {vs : @59} -> {ts : @60} -> (h : @818) -> (hs : @142) -> @823 @824 +@830 := @814 @731 +@832 := @440 (@432 @30) +@834 := @13 @832 @444 +@835 := @785 @30 +@837 := @251 @800 @776 +@842 := {ts : @60} -> (h : @834) -> (hs : @835) -> @54 @837 @824 +@843 := @830 @735 +@845 := @251 @816 @784 +@846 := @54 @845 +@849 := (h : @627) -> (hs : @793) -> @846 @737 +@850 := @843 @625 +@852 := @251 @832 @791 +@854 := @54 @852 @737 +@855 := (hs : @797) -> @854 +@856 := @850 @795 +@858 := @54 @733 @737 +@859 := @140 @378 +@860 := @105 @378 +@869 := {k : @57} -> + {fs : @59} -> {tys : @60} -> (h : @64 (@860 @28) @74) -> (hf : @142) -> @143 @428 +@870 := @859 @9 +@871 := @860 @9 +@872 := @64 @871 +@873 := @872 @74 +@878 := {fs : @59} -> {tys : @60} -> (h : @873) -> (hf : @142) -> @168 @428 +@879 := @870 @733 +@886 := {tys : @60} -> (h : @873) -> (hf : @846 @30) -> @13 (@166 @837) @428 +@887 := @879 @737 +@894 := (h : @872 (@73 @737)) -> (hf : @854) -> @13 (@166 @845) @428 +@896 := @887 (@188 @871) +@900 := (hf : @858) -> @13 (@166 @852) @428 +@901 := @896 @856 +@904 := @13 (@166 @733) @428 +@905 := fun (__s : @425) => @901 +@906 := Reasoning.Planner.Plan.Ledger +@907 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.__enc_3 +@908 := @907 @4 +@909 := 3 +@910 := @8 @909 +@913 := (__s : @906) -> @13 @908 @910 +@914 := Reasoning.Planner.Plan.Ledger.iterations +@915 := @914 @4 +@916 := Reasoning.Planner.Plan.Ledger.attempts +@917 := @916 @4 +@918 := Reasoning.Planner.Plan.Ledger.firings +@919 := @918 @4 +@920 := Reasoning.Planner.Plan.Ledger.expansions +@921 := @920 @4 +@922 := Reasoning.Planner.Plan.Ledger.verifications +@923 := @922 @4 +@924 := Reasoning.Planner.Plan.Ledger.frontier +@925 := @924 @4 +@926 := @219 @915 +@927 := @246 @915 +@929 := @13 @926 @221 +@930 := @219 @917 +@931 := @246 @917 +@933 := @13 @930 @221 +@934 := @219 @919 +@935 := @246 @919 +@937 := @13 @934 @221 +@938 := @219 @921 +@939 := @246 @921 +@941 := @13 @938 @221 +@942 := @219 @923 +@943 := @246 @923 +@945 := @13 @942 @221 +@946 := @219 @925 +@947 := @246 @925 +@949 := @13 @946 @221 +@951 := @251 @946 @22 +@953 := @251 @942 @951 +@955 := @251 @938 @953 +@957 := @251 @934 @955 +@959 := @251 @930 @957 +@961 := @251 @926 @959 +@962 := @255 @256 +@963 := @255 @962 +@964 := @255 @963 +@965 := @255 @964 +@966 := @255 @965 +@967 := @312 @946 +@969 := @219 (@924 @68) +@982 := {t : @19} -> + {vs : @59} -> + {ts : @60} -> (h : @13 @969 @28) -> (hs : @142) -> @54 (@251 (@219 (@924 @79)) @68) @269 +@983 := @967 @221 +@985 := @219 (@924 @28) +@997 := {vs : @59} -> + {ts : @60} -> (h : @13 @985 @221) -> (hs : @142) -> @54 (@251 (@219 (@924 @88)) @68) @345 +@998 := @983 @22 +@1000 := @219 (@924 @30) +@1002 := @13 @1000 @221 +@1004 := @251 @969 @22 +@1009 := {ts : @60} -> (h : @1002) -> (hs : @175) -> @54 @1004 @345 +@1010 := @998 @23 +@1012 := @251 @985 @22 +@1013 := @54 @1012 +@1016 := (h : @949) -> (hs : @56) -> @1013 @256 +@1017 := @1010 @947 +@1019 := @251 @1000 @22 +@1021 := @54 @1019 @256 +@1022 := (hs : @56) -> @1021 +@1023 := @1017 @53 +@1025 := @54 @951 @256 +@1026 := @312 @942 +@1028 := @219 (@922 @68) +@1041 := {t : @19} -> + {vs : @59} -> + {ts : @60} -> (h : @13 @1028 @28) -> (hs : @142) -> @54 (@251 (@219 (@922 @79)) @68) @269 +@1042 := @1026 @221 +@1044 := @219 (@922 @28) +@1056 := {vs : @59} -> + {ts : @60} -> (h : @13 @1044 @221) -> (hs : @142) -> @54 (@251 (@219 (@922 @88)) @68) @345 +@1057 := @1042 @951 +@1059 := @219 (@922 @30) +@1061 := @13 @1059 @221 +@1062 := @1013 @30 +@1064 := @251 @1028 @1004 +@1069 := {ts : @60} -> (h : @1061) -> (hs : @1062) -> @54 @1064 @345 +@1070 := @1057 @256 +@1072 := @251 @1044 @1012 +@1073 := @54 @1072 +@1076 := (h : @945) -> (hs : @1021) -> @1073 @962 +@1077 := @1070 @943 +@1079 := @251 @1059 @1019 +@1081 := @54 @1079 @962 +@1082 := (hs : @1025) -> @1081 +@1083 := @1077 @1023 +@1085 := @54 @953 @962 +@1086 := @312 @938 +@1088 := @219 (@920 @68) +@1101 := {t : @19} -> + {vs : @59} -> + {ts : @60} -> (h : @13 @1088 @28) -> (hs : @142) -> @54 (@251 (@219 (@920 @79)) @68) @269 +@1102 := @1086 @221 +@1104 := @219 (@920 @28) +@1116 := {vs : @59} -> + {ts : @60} -> (h : @13 @1104 @221) -> (hs : @142) -> @54 (@251 (@219 (@920 @88)) @68) @345 +@1117 := @1102 @953 +@1119 := @219 (@920 @30) +@1121 := @13 @1119 @221 +@1122 := @1073 @30 +@1124 := @251 @1088 @1064 +@1129 := {ts : @60} -> (h : @1121) -> (hs : @1122) -> @54 @1124 @345 +@1130 := @1117 @962 +@1132 := @251 @1104 @1072 +@1133 := @54 @1132 +@1136 := (h : @941) -> (hs : @1081) -> @1133 @963 +@1137 := @1130 @939 +@1139 := @251 @1119 @1079 +@1141 := @54 @1139 @963 +@1142 := (hs : @1085) -> @1141 +@1143 := @1137 @1083 +@1145 := @54 @955 @963 +@1146 := @312 @934 +@1148 := @219 (@918 @68) +@1161 := {t : @19} -> + {vs : @59} -> + {ts : @60} -> (h : @13 @1148 @28) -> (hs : @142) -> @54 (@251 (@219 (@918 @79)) @68) @269 +@1162 := @1146 @221 +@1164 := @219 (@918 @28) +@1176 := {vs : @59} -> + {ts : @60} -> (h : @13 @1164 @221) -> (hs : @142) -> @54 (@251 (@219 (@918 @88)) @68) @345 +@1177 := @1162 @955 +@1179 := @219 (@918 @30) +@1181 := @13 @1179 @221 +@1182 := @1133 @30 +@1184 := @251 @1148 @1124 +@1189 := {ts : @60} -> (h : @1181) -> (hs : @1182) -> @54 @1184 @345 +@1190 := @1177 @963 +@1192 := @251 @1164 @1132 +@1193 := @54 @1192 +@1196 := (h : @937) -> (hs : @1141) -> @1193 @964 +@1197 := @1190 @935 +@1199 := @251 @1179 @1139 +@1201 := @54 @1199 @964 +@1202 := (hs : @1145) -> @1201 +@1203 := @1197 @1143 +@1205 := @54 @957 @964 +@1206 := @312 @930 +@1208 := @219 (@916 @68) +@1221 := {t : @19} -> + {vs : @59} -> + {ts : @60} -> (h : @13 @1208 @28) -> (hs : @142) -> @54 (@251 (@219 (@916 @79)) @68) @269 +@1222 := @1206 @221 +@1224 := @219 (@916 @28) +@1236 := {vs : @59} -> + {ts : @60} -> (h : @13 @1224 @221) -> (hs : @142) -> @54 (@251 (@219 (@916 @88)) @68) @345 +@1237 := @1222 @957 +@1239 := @219 (@916 @30) +@1241 := @13 @1239 @221 +@1242 := @1193 @30 +@1244 := @251 @1208 @1184 +@1249 := {ts : @60} -> (h : @1241) -> (hs : @1242) -> @54 @1244 @345 +@1250 := @1237 @964 +@1252 := @251 @1224 @1192 +@1253 := @54 @1252 +@1256 := (h : @933) -> (hs : @1201) -> @1253 @965 +@1257 := @1250 @931 +@1259 := @251 @1239 @1199 +@1261 := @54 @1259 @965 +@1262 := (hs : @1205) -> @1261 +@1263 := @1257 @1203 +@1265 := @54 @959 @965 +@1266 := @312 @926 +@1268 := @219 (@914 @68) +@1281 := {t : @19} -> + {vs : @59} -> + {ts : @60} -> (h : @13 @1268 @28) -> (hs : @142) -> @54 (@251 (@219 (@914 @79)) @68) @269 +@1282 := @1266 @221 +@1284 := @219 (@914 @28) +@1296 := {vs : @59} -> + {ts : @60} -> (h : @13 @1284 @221) -> (hs : @142) -> @54 (@251 (@219 (@914 @88)) @68) @345 +@1297 := @1282 @959 +@1299 := @219 (@914 @30) +@1301 := @13 @1299 @221 +@1302 := @1253 @30 +@1304 := @251 @1268 @1244 +@1309 := {ts : @60} -> (h : @1301) -> (hs : @1302) -> @54 @1304 @345 +@1310 := @1297 @965 +@1312 := @251 @1284 @1252 +@1313 := @54 @1312 +@1316 := (h : @929) -> (hs : @1261) -> @1313 @966 +@1317 := @1310 @927 +@1319 := @251 @1299 @1259 +@1321 := @54 @1319 @966 +@1322 := (hs : @1265) -> @1321 +@1323 := @1317 @1263 +@1325 := @54 @961 @966 +@1326 := @140 @909 +@1327 := @105 @909 +@1336 := {k : @57} -> + {fs : @59} -> {tys : @60} -> (h : @64 (@1327 @28) @74) -> (hf : @142) -> @143 @910 +@1337 := @1326 @9 +@1338 := @1327 @9 +@1339 := @64 @1338 +@1340 := @1339 @74 +@1345 := {fs : @59} -> {tys : @60} -> (h : @1340) -> (hf : @142) -> @168 @910 +@1346 := @1337 @961 +@1353 := {tys : @60} -> (h : @1340) -> (hf : @1313 @30) -> @13 (@166 @1304) @910 +@1354 := @1346 @966 +@1361 := (h : @1339 (@73 @966)) -> (hf : @1321) -> @13 (@166 @1312) @910 +@1363 := @1354 (@188 @1338) +@1367 := (hf : @1325) -> @13 (@166 @1319) @910 +@1368 := @1363 @1323 +@1371 := @13 (@166 @961) @910 +@1372 := fun (__s : @906) => @1368 +@1373 := Reasoning.Planner.Plan.Search +@1375 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.__enc_1 @4 +@1376 := @8 @192 +@1379 := (__s : @1373) -> @13 @1375 @1376 +@1380 := Reasoning.Planner.Plan.Search.frontier +@1381 := @1380 @4 +@1382 := Reasoning.Planner.Plan.Search.visited +@1383 := @1382 @4 +@1384 := Reasoning.Planner.Plan.Search.found +@1385 := @1384 @4 +@1386 := Reasoning.Planner.Plan.Search.truncated +@1387 := @1386 @4 +@1388 := Reasoning.Planner.Plan.Search.ledger +@1389 := @1388 @4 +@1390 := @628 @425 +@1391 := @1390 @426 +@1392 := @1391 @1381 +@1393 := @632 @428 +@1396 := fun (__x : @425) => + LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.Compose.RustStd.__wt_2 @4 +@1397 := @689 @425 +@1398 := (a._@._internal._hyg.#0 : @425) -> @18 +@1399 := (x : @425) -> @691 +@1400 := @58 @425 +@1408 := {e : @1398} -> {t : @19} -> (h : @1399) -> (xs : @1400) -> @13 (@1390 @68 @4) @650 +@1409 := @1397 @426 +@1411 := (x : @425) -> @429 @30 +@1413 := @13 (@1391 @4) +@1417 := {t : @19} -> (h : @1411) -> (xs : @1400) -> @1413 @650 +@1418 := @1409 @428 +@1419 := (x : @425) -> @430 +@1422 := (h : @1419) -> (xs : @1400) -> @1413 @1393 +@1424 := @1418 @1396 @1381 +@1426 := @13 @1392 @1393 +@1427 := @628 @575 +@1428 := @1427 @440 +@1429 := @1428 @1383 +@1430 := @632 @444 +@1432 := fun (__x : @575) => @624 @4 +@1433 := @689 @575 +@1434 := (a._@._internal._hyg.#0 : @575) -> @18 +@1435 := (x : @575) -> @691 +@1436 := @58 @575 +@1444 := {e : @1434} -> {t : @19} -> (h : @1435) -> (xs : @1436) -> @13 (@1427 @68 @4) @650 +@1445 := @1433 @440 +@1447 := (x : @575) -> @603 @30 +@1449 := @13 (@1428 @4) +@1453 := {t : @19} -> (h : @1447) -> (xs : @1436) -> @1449 @650 +@1454 := @1445 @444 +@1457 := (h : @620) -> (xs : @1436) -> @1449 @1430 +@1459 := @1454 @1432 @1383 +@1461 := @13 @1429 @1430 +@1462 := @463 @575 +@1463 := @1462 @425 +@1464 := @436 @575 +@1465 := @1464 @425 +@1466 := @1465 @440 +@1467 := @1466 @426 +@1468 := LexLeanPreservation.encOption +@1469 := @1468 @1463 +@1470 := @1469 @1467 +@1471 := @1470 @1385 +@1472 := @442 @444 +@1473 := @1472 @428 +@1474 := LexLeanTarget.TargetSyntax.Ty.option +@1475 := @1474 @1473 +@1476 := @540 @575 +@1477 := (x : @575) -> @542 +@1492 := {β : @446} -> + {ea : @1434} -> + {eb : @447} -> + {s : @19} -> + {t : @19} -> (ha : @1477) -> (hb : @543) -> (x : @1462 @66) -> @13 (@1464 @76 @66 @79 @4) @477 +@1493 := @1476 @425 +@1494 := (x : @425) -> @542 +@1506 := {ea : @1434} -> + {eb : @1398} -> + {s : @19} -> + {t : @19} -> (ha : @1477) -> (hb : @1494) -> (x : @1463) -> @13 (@1465 @66 @79 @4) @477 +@1507 := @1493 @440 +@1509 := (x : @575) -> @603 @28 +@1519 := {eb : @1398} -> + {s : @19} -> {t : @19} -> (ha : @1509) -> (hb : @1494) -> (x : @1463) -> @13 (@1466 @79 @4) @477 +@1520 := @1507 @426 +@1522 := (x : @425) -> @429 @28 +@1524 := @13 (@1467 @4) +@1530 := {s : @19} -> {t : @19} -> (ha : @1509) -> (hb : @1522) -> (x : @1463) -> @1524 @477 +@1531 := @1520 @444 +@1537 := {t : @19} -> (ha : @620) -> (hb : @1522) -> (x : @1463) -> @1524 (@1472 @68) +@1538 := @1531 @428 +@1540 := (x : @1463) -> @1524 @1473 +@1542 := (ha : @620) -> (hb : @1419) -> @1540 +@1546 := fun (__x : @1463) => @1538 @1432 @1396 @4 +@1547 := @62 @68 +@1550 := @1468 @88 @68 @4 +@1551 := @645 @1550 +@1552 := @1474 @28 +@1561 := {p : @24} -> + {c : @25} -> + {A : @26} -> {α : @446} -> {e : @637} -> {t : @19} -> (h : @641) -> (o : @1547) -> @1551 @1552 +@1563 := LexLeanPreservation.Rust.wt_encOption @0 +@1572 := {c : @25} -> + {A : @26} -> + {α : @446} -> {e : @637} -> {t : @19} -> (h : @664) -> (o : @1547) -> @666 @1550 @1552 +@1573 := @1563 @1 +@1581 := {A : @26} -> + {α : @446} -> {e : @637} -> {t : @19} -> (h : @679) -> (o : @1547) -> @680 @1550 @1552 +@1582 := @1573 @2 +@1589 := {α : @446} -> {e : @637} -> {t : @19} -> (h : @692) -> (o : @1547) -> @13 @1550 @1552 +@1590 := @1582 @1463 +@1591 := (a._@._internal._hyg.#0 : @1463) -> @18 +@1592 := (x : @1463) -> @691 +@1593 := @62 @1463 +@1601 := {e : @1591} -> {t : @19} -> (h : @1592) -> (o : @1593) -> @13 (@1469 @68 @4) @1552 +@1602 := @1590 @1467 +@1604 := (x : @1463) -> @1524 @30 +@1606 := @13 (@1470 @4) +@1610 := {t : @19} -> (h : @1604) -> (o : @1593) -> @1606 @1552 +@1611 := @1602 @1473 +@1614 := (h : @1540) -> (o : @1593) -> @1606 @1475 +@1616 := @1611 @1546 @1385 +@1618 := @13 @1471 @1475 +@1619 := LexLeanTarget.TargetSyntax.Value.bool +@1620 := @1619 @1387 +@1621 := LexLeanTarget.TargetSyntax.Ty.bool +@1622 := Bool +@1623 := @1619 @4 +@1629 := {p : @24} -> {c : @25} -> {A : @26} -> (b : @1622) -> @224 @1623 @1621 +@1631 := LexLeanPreservation.Rust.wt_bool @0 +@1636 := {c : @25} -> {A : @26} -> (b : @1622) -> @234 @1623 @1621 +@1637 := @1631 @1 +@1641 := {A : @26} -> (b : @1622) -> @241 @1623 @1621 +@1642 := @1637 @2 +@1645 := (b : @1622) -> @13 @1623 @1621 +@1646 := @1642 @1387 +@1648 := @13 @1620 @1621 +@1649 := @907 @1389 +@1651 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.Compose.RustStd.__wt_3 @1389 +@1653 := @251 @1649 @22 +@1655 := @251 @1620 @1653 +@1657 := @251 @1471 @1655 +@1659 := @251 @1429 @1657 +@1661 := @251 @1392 @1659 +@1662 := @254 @910 +@1663 := @1662 @23 +@1664 := @254 @1621 +@1665 := @1664 @1663 +@1666 := @254 @1475 +@1667 := @1666 @1665 +@1668 := @254 @1430 +@1669 := @1668 @1667 +@1670 := @254 @1393 +@1671 := @1670 @1669 +@1672 := @312 @1649 +@1674 := @907 (@1388 @68) +@1687 := {t : @19} -> + {vs : @59} -> + {ts : @60} -> (h : @13 @1674 @28) -> (hs : @142) -> @54 (@251 (@907 (@1388 @79)) @68) @269 +@1688 := @1672 @910 +@1690 := @907 (@1388 @28) +@1692 := @13 @1690 @910 +@1697 := @54 (@251 (@907 (@1388 @88)) @68) +@1698 := @1662 @28 +@1703 := {vs : @59} -> {ts : @60} -> (h : @1692) -> (hs : @142) -> @1697 @1698 +@1704 := @1688 @22 +@1706 := @907 (@1388 @30) +@1708 := @13 @1706 @910 +@1710 := @251 @1674 @22 +@1715 := {ts : @60} -> (h : @1708) -> (hs : @175) -> @54 @1710 @1698 +@1716 := @1704 @23 +@1718 := @13 @1649 @910 +@1720 := @251 @1690 @22 +@1721 := @54 @1720 +@1724 := (h : @1718) -> (hs : @56) -> @1721 @1663 +@1725 := @1716 @1651 +@1727 := @251 @1706 @22 +@1729 := @54 @1727 @1663 +@1730 := (hs : @56) -> @1729 +@1731 := @1725 @53 +@1733 := @54 @1653 @1663 +@1734 := @312 @1620 +@1736 := @1619 (@1386 @68) +@1749 := {t : @19} -> + {vs : @59} -> + {ts : @60} -> (h : @13 @1736 @28) -> (hs : @142) -> @54 (@251 (@1619 (@1386 @79)) @68) @269 +@1750 := @1734 @1621 +@1752 := @1619 (@1386 @28) +@1754 := @13 @1752 @1621 +@1759 := @54 (@251 (@1619 (@1386 @88)) @68) +@1760 := @1664 @28 +@1765 := {vs : @59} -> {ts : @60} -> (h : @1754) -> (hs : @142) -> @1759 @1760 +@1766 := @1750 @1653 +@1768 := @1619 (@1386 @30) +@1770 := @13 @1768 @1621 +@1771 := @1721 @30 +@1773 := @251 @1736 @1710 +@1778 := {ts : @60} -> (h : @1770) -> (hs : @1771) -> @54 @1773 @1760 +@1779 := @1766 @1663 +@1781 := @251 @1752 @1720 +@1782 := @54 @1781 +@1785 := (h : @1648) -> (hs : @1729) -> @1782 @1665 +@1786 := @1779 @1646 +@1788 := @251 @1768 @1727 +@1790 := @54 @1788 @1665 +@1791 := (hs : @1733) -> @1790 +@1792 := @1786 @1731 +@1794 := @54 @1655 @1665 +@1795 := @312 @1471 +@1797 := @1470 (@1384 @68) +@1810 := {t : @19} -> + {vs : @59} -> + {ts : @60} -> (h : @13 @1797 @28) -> (hs : @142) -> @54 (@251 (@1470 (@1384 @79)) @68) @269 +@1811 := @1795 @1475 +@1813 := @1470 (@1384 @28) +@1815 := @13 @1813 @1475 +@1820 := @54 (@251 (@1470 (@1384 @88)) @68) +@1821 := @1666 @28 +@1826 := {vs : @59} -> {ts : @60} -> (h : @1815) -> (hs : @142) -> @1820 @1821 +@1827 := @1811 @1655 +@1829 := @1470 (@1384 @30) +@1831 := @13 @1829 @1475 +@1832 := @1782 @30 +@1834 := @251 @1797 @1773 +@1839 := {ts : @60} -> (h : @1831) -> (hs : @1832) -> @54 @1834 @1821 +@1840 := @1827 @1665 +@1842 := @251 @1813 @1781 +@1843 := @54 @1842 +@1846 := (h : @1618) -> (hs : @1790) -> @1843 @1667 +@1847 := @1840 @1616 +@1849 := @251 @1829 @1788 +@1851 := @54 @1849 @1667 +@1852 := (hs : @1794) -> @1851 +@1853 := @1847 @1792 +@1855 := @54 @1657 @1667 +@1856 := @312 @1429 +@1858 := @1428 (@1382 @68) +@1871 := {t : @19} -> + {vs : @59} -> + {ts : @60} -> (h : @13 @1858 @28) -> (hs : @142) -> @54 (@251 (@1428 (@1382 @79)) @68) @269 +@1872 := @1856 @1430 +@1874 := @1428 (@1382 @28) +@1876 := @13 @1874 @1430 +@1881 := @54 (@251 (@1428 (@1382 @88)) @68) +@1882 := @1668 @28 +@1887 := {vs : @59} -> {ts : @60} -> (h : @1876) -> (hs : @142) -> @1881 @1882 +@1888 := @1872 @1657 +@1890 := @1428 (@1382 @30) +@1892 := @13 @1890 @1430 +@1893 := @1843 @30 +@1895 := @251 @1858 @1834 +@1900 := {ts : @60} -> (h : @1892) -> (hs : @1893) -> @54 @1895 @1882 +@1901 := @1888 @1667 +@1903 := @251 @1874 @1842 +@1904 := @54 @1903 +@1907 := (h : @1461) -> (hs : @1851) -> @1904 @1669 +@1908 := @1901 @1459 +@1910 := @251 @1890 @1849 +@1912 := @54 @1910 @1669 +@1913 := (hs : @1855) -> @1912 +@1914 := @1908 @1853 +@1916 := @54 @1659 @1669 +@1917 := @312 @1392 +@1919 := @1391 (@1380 @68) +@1932 := {t : @19} -> + {vs : @59} -> + {ts : @60} -> (h : @13 @1919 @28) -> (hs : @142) -> @54 (@251 (@1391 (@1380 @79)) @68) @269 +@1933 := @1917 @1393 +@1935 := @1391 (@1380 @28) +@1937 := @13 @1935 @1393 +@1942 := @54 (@251 (@1391 (@1380 @88)) @68) +@1943 := @1670 @28 +@1948 := {vs : @59} -> {ts : @60} -> (h : @1937) -> (hs : @142) -> @1942 @1943 +@1949 := @1933 @1659 +@1951 := @1391 (@1380 @30) +@1953 := @13 @1951 @1393 +@1954 := @1904 @30 +@1956 := @251 @1919 @1895 +@1961 := {ts : @60} -> (h : @1953) -> (hs : @1954) -> @54 @1956 @1943 +@1962 := @1949 @1669 +@1964 := @251 @1935 @1903 +@1965 := @54 @1964 +@1968 := (h : @1426) -> (hs : @1912) -> @1965 @1671 +@1969 := @1962 @1424 +@1971 := @251 @1951 @1910 +@1973 := @54 @1971 @1671 +@1974 := (hs : @1916) -> @1973 +@1975 := @1969 @1914 +@1977 := @54 @1661 @1671 +@1978 := @140 @192 +@1979 := @105 @192 +@1988 := {k : @57} -> + {fs : @59} -> {tys : @60} -> (h : @64 (@1979 @28) @74) -> (hf : @142) -> @143 @1376 +@1989 := @1978 @9 +@1990 := @1979 @9 +@1991 := @64 @1990 +@1992 := @1991 @74 +@1997 := {fs : @59} -> {tys : @60} -> (h : @1992) -> (hf : @142) -> @168 @1376 +@1998 := @1989 @1661 +@2005 := {tys : @60} -> (h : @1992) -> (hf : @1965 @30) -> @13 (@166 @1956) @1376 +@2006 := @1998 @1671 +@2013 := (h : @1991 (@73 @1671)) -> (hf : @1973) -> @13 (@166 @1964) @1376 +@2015 := @2006 (@188 @1990) +@2019 := (hf : @1977) -> @13 (@166 @1971) @1376 +@2020 := @2015 @1975 +@2023 := @13 (@166 @1661) @1376 +@2024 := fun (__s : @1373) => @2020 +@2025 := @246 @30 +@2026 := @558 @18 +@2030 := Prod.mk.{0, 0} @57 @18 @9 +@2031 := @2030 @352 +@2032 := @20 @2026 +@2033 := @21 @2026 +@2035 := @2033 @2031 @2032 +@2036 := Bool.true +@2037 := LexLeanTarget.TargetSyntax.Function +@2038 := LexLeanTarget.TargetSyntax.Program.functions +@2039 := @2038 @0 +@2040 := @20 @57 +@2041 := LexLeanTarget.TargetSyntax.Ty.unit +@2042 := LexLeanTarget.TargetSyntax.Value.unit +@2045 := LexLeanTarget.TargetSyntax.Expr.value @2041 @2042 +@2050 := LexLeanTarget.TargetSyntax.Function.mk @2040 @23 @2041 @2045 +@2055 := List.getD.{0} @2037 @2039 @9 @2050 +@2059 := fun (__e_n : @57) => + LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.RustStd.root @4 @9 +@2060 := @312 @352 +@2062 := @13 @341 @28 +@2063 := @219 @66 +@2064 := @251 @2063 +@2072 := {t : @19} -> {vs : @59} -> {ts : @60} -> (h : @2062) -> (hs : @142) -> @54 (@2064 @68) @269 +@2073 := @2060 @221 +@2079 := {vs : @59} -> {ts : @60} -> (h : @325 @221) -> (hs : @142) -> @330 @345 +@2080 := @2073 @22 +@2081 := @342 @22 +@2082 := @54 @2081 +@2086 := {ts : @60} -> (h : @340) -> (hs : @175) -> @2082 @345 +@2087 := @2080 @23 +@2090 := (h : @354) -> (hs : @56) -> @357 @256 +@2092 := @2087 @2025 @53 +@2093 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.denote +@2094 := @2093 @30 +@2095 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.__fits_0 +@2096 := @2095 @30 +@2099 := @219 (Reasoning.Main.planLeft @30) +@2101 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.root @30 +@2102 := Ne.{1} +@2103 := LexLeanPreservation.Obs +@2104 := @2102 @2103 +@2105 := LexLeanPreservation.Rel +@2108 := @2104 (@2105 @30 @4) +@2109 := LexLeanPreservation.Obs.stuck +@2112 := (f : @1622) -> (v : @18) -> @2108 @2109 +@2114 := LexLeanPreservation.Rust.rel_ne_stuck @2096 +@2120 := (v : @18) -> @2104 (@2105 (@2095 @28) @4) @2109 +@2121 := @2114 @2099 +@2125 := @2104 (@2105 @2096 @2099) @2109 +@2126 := @58 @2026 +@2127 := LexLeanPreservation.Rust.FunSem +@2133 := (n : @57) -> @2127 @448 @83 @76 @4 @66 +@2134 := @62 @2037 +@2135 := @61 @2134 +@2142 := LexLeanRuntime.index (@58 @2037) @2037 (LexLeanRuntime.instIndexableList @2037) +@2146 := @2135 (@2142 (@2038 @448) @66) +@2147 := @72 @2037 +@2148 := @2147 @79 +@2149 := @2146 @2148 +@2153 := @27 @456 @448 @83 @79 +@2154 := LexLeanTarget.TargetSyntax.Function.types +@2155 := @2154 @66 +@2156 := @2153 @2155 +@2157 := @62 @2126 +@2158 := @61 @2157 +@2159 := LexLeanTarget.TargetSemantics.bindAll +@2160 := LexLeanTarget.TargetSyntax.Function.parameters +@2165 := @2158 (@2159 (@2160 @76) @66 @2032) +@2166 := @72 @2126 +@2167 := @2166 @79 +@2168 := @2165 @2167 +@2169 := @62 @1622 +@2170 := @61 @2169 +@2171 := LexLeanPreservation.Rust.fnFallible +@2174 := @2170 (@2171 @466 @448) +@2175 := @72 @1622 +@2176 := @2175 @79 +@2177 := @2174 @2176 +@2178 := LexLeanPreservation.RunConv +@2179 := #13 +@2183 := @2178 @2179 @456 @83 @79 +@2185 := @2104 @66 @2109 +@2186 := Exists.{1} +@2187 := LexLeanPreservation.Rust.ROut +@2188 := @2186 @2187 +@2189 := And +@2190 := LexLeanPreservation.Rust.RealizesFn +@2194 := @2189 (@2190 @448 @83 @4) +@2195 := LexLeanPreservation.Rust.RCI +@2197 := @2195 #15 +@2198 := LexLeanPreservation.Rust.fnIdent +@2199 := @2198 @2179 +@2206 := (hne : @2185) -> @2188 (fun (ro : @2187) => @2194 (@2197 @2199 @466 @4)) +@2221 := {p : @24} -> + {c : @25} -> + {A : @26} -> + {f : @57} -> + {fn : @2037} -> + {args : @59} -> + {env : @2126} -> + {F : @1622} -> + {o : @2103} -> + (hB : @2133) -> + (hfn : @2149) -> (hwt : @2156) -> (hbind : @2168) -> (hF : @2177) -> (hA : @2183) -> @2206 +@2223 := LexLeanPreservation.Rust.compose @0 +@2224 := @2127 @0 +@2229 := (n : @57) -> @2224 @83 @76 @4 @66 +@2230 := @2142 @2039 +@2233 := @2135 (@2230 @66) @2148 +@2237 := @40 @448 @83 @79 @2155 +@2238 := @2178 @0 +@2241 := @2238 @456 @83 @79 +@2255 := {c : @25} -> + {A : @26} -> + {f : @57} -> + {fn : @2037} -> + {args : @59} -> + {env : @2126} -> + {F : @1622} -> + {o : @2103} -> + (hB : @2229) -> + (hfn : @2233) -> (hwt : @2237) -> (hbind : @2168) -> (hF : @2177) -> (hA : @2241) -> @2206 +@2256 := @2223 @1 +@2257 := @2224 @1 +@2261 := (n : @57) -> @2257 @76 @4 @66 +@2264 := @48 @83 @79 @2155 +@2265 := @2171 @1 +@2268 := @2170 (@2265 @448) @2176 +@2269 := @2195 @1 +@2279 := (hbind : @2168) -> + (hF : @2268) -> + (hA : @2241) -> (hne : @2185) -> @2188 (fun (ro : @2187) => @2194 (@2269 @2199 @466 @4)) +@2289 := {A : @26} -> + {f : @57} -> + {fn : @2037} -> + {args : @59} -> + {env : @2126} -> + {F : @1622} -> {o : @2103} -> (hB : @2261) -> (hfn : @2233) -> (hwt : @2264) -> @2279 +@2290 := @2256 @2 +@2292 := @2257 @2 @4 +@2294 := (n : @57) -> @2292 @66 +@2295 := @54 @79 +@2296 := @2295 @2155 +@2305 := {f : @57} -> + {fn : @2037} -> + {args : @59} -> + {env : @2126} -> + {F : @1622} -> {o : @2103} -> (hB : @2294) -> (hfn : @2233) -> (hwt : @2296) -> @2279 +@2306 := @2290 @9 +@2308 := (n : @57) -> @2292 @9 +@2309 := @2230 @9 +@2310 := @2135 @2309 +@2311 := @2310 @2148 +@2312 := @2265 @9 +@2313 := @2170 @2312 +@2314 := @2313 @2176 +@2315 := @2238 @9 +@2317 := @2315 @83 @79 +@2319 := @2269 (@2198 @9) +@2327 := (hF : @2314) -> + (hA : @2317) -> (hne : @2185) -> @2188 (fun (ro : @2187) => @2194 (@2319 @466 @4)) +@2336 := {fn : @2037} -> + {args : @59} -> + {env : @2126} -> + {F : @1622} -> + {o : @2103} -> (hB : @2308) -> (hfn : @2311) -> (hwt : @2296) -> (hbind : @2168) -> @2327 +@2337 := @2306 @2055 +@2339 := @2310 (@2147 @2055) +@2340 := @2154 @2055 +@2341 := @2295 @2340 +@2343 := @2159 (@2160 @2055) +@2355 := {args : @59} -> + {env : @2126} -> + {F : @1622} -> + {o : @2103} -> + (hB : @2308) -> (hfn : @2339) -> (hwt : @2341) -> (hbind : @2158 (@2343 @66 @2032) @2167) -> @2327 +@2356 := @2337 @371 +@2357 := @2064 @22 +@2359 := @54 @2357 @2340 +@2362 := @251 (@219 @76) @22 +@2366 := @2158 (@2343 @2362 @2032) @2167 +@2369 := @251 (@219 @448) @22 +@2390 := {env : @2126} -> + {F : @1622} -> + {o : @2103} -> + (hB : @2308) -> + (hfn : @2339) -> + (hwt : @2359) -> + (hbind : @2366) -> + (hF : @2314) -> + (hA : @2315 @2369 @79) -> + (hne : @2185) -> @2188 (fun (ro : @2187) => @2194 (@2319 (@251 (@219 #12) @22) @4)) +@2391 := @2356 @2035 +@2392 := @328 @22 +@2394 := @54 @2392 @2340 +@2402 := @2158 (@2343 @2357 @2032) (@2166 (@2033 (@2030 @2063) @2032)) +@2405 := @251 (@219 @83) @22 +@2424 := {F : @1622} -> + {o : @2103} -> + (hB : @2308) -> + (hfn : @2339) -> + (hwt : @2394) -> + (hbind : @2402) -> + (hF : @2314) -> + (hA : @2315 @2405 @79) -> + (hne : @2185) -> @2188 (fun (ro : @2187) => @2194 (@2319 (@251 (@219 @466) @22) @4)) +@2425 := @2391 @2036 +@2426 := @2082 @2340 +@2434 := @2158 (@2343 @2392 @2032) (@2166 (@2033 (@2030 @327) @2032)) +@2436 := @2313 (@2175 @2036) +@2438 := @2315 @2362 @79 +@2439 := @2190 @2036 +@2458 := {o : @2103} -> + (hB : @2308) -> + (hfn : @2339) -> + (hwt : @2426) -> + (hbind : @2434) -> + (hF : @2436) -> + (hA : @2438) -> + (hne : @2185) -> + @2188 (fun (ro : @2187) => @2189 (@2439 @83 @4) (@2319 (@251 (@219 @456) @22) @4)) +@2459 := @2425 @2094 +@2460 := @357 @2340 +@2468 := @2158 (@2343 @2081 @2032) (@2166 (@2033 (@2030 @341) @2032)) +@2469 := @2315 @2357 +@2470 := @2093 @66 +@2471 := @2469 @2470 +@2472 := @2093 @76 +@2490 := (hB : @2308) -> + (hfn : @2339) -> + (hwt : @2460) -> + (hbind : @2468) -> + (hF : @2436) -> + (hA : @2471) -> + (hne : @2104 @2472 @2109) -> + @2188 (fun (ro : @2187) => @2189 (@2439 (@2093 @448) @4) (@2319 @2369 @4)) +@2491 := @2459 @2059 +@2492 := @365 @2340 +@2500 := @2158 (@2343 @356 @2032) (@2166 (@2033 (@2030 @324) @2032)) +@2501 := @2315 @2392 +@2502 := @2093 @79 +@2520 := (hfn : @2339) -> + (hwt : @2492) -> + (hbind : @2500) -> + (hF : @2436) -> + (hA : @2501 @2502) -> + (hne : @2104 @2470 @2109) -> + @2188 (fun (ro : @2187) => @2189 (@2439 (@2093 @83) @4) (@2319 @2405 @4)) +@2523 := @2491 (@187 @2134 @2309) +@2524 := @372 @2340 +@2532 := @2158 (@2343 @364 @2032) (@2166 (@2033 (@2030 @338) @2032)) +@2533 := @2315 @2081 +@2534 := @2093 @88 +@2550 := (hwt : @2524) -> + (hbind : @2532) -> + (hF : @2436) -> + (hA : @2533 @2534) -> + (hne : @2104 @2502 @2109) -> @2188 (fun (ro : @2187) => @2189 (@2439 @2472 @4) (@2319 @2362 @4)) +@2551 := @2523 @2092 +@2553 := @2343 @371 @2032 +@2556 := @2158 @2553 (@2166 @2035) +@2557 := @2315 @356 +@2558 := @2093 @68 +@2573 := (hbind : @2556) -> + (hF : @2436) -> + (hA : @2557 @2558) -> + (hne : @2104 @2534 @2109) -> @2188 (fun (ro : @2187) => @2189 (@2439 @2470 @4) (@2319 @2357 @4)) +@2576 := @2551 (@187 @2157 @2553) +@2577 := @2315 @364 +@2578 := @2093 @28 +@2592 := (hF : @2436) -> + (hA : @2577 @2578) -> + (hne : @2104 @2558 @2109) -> @2188 (fun (ro : @2187) => @2189 (@2439 @2502 @4) (@2319 @2392 @4)) +@2595 := @2576 (@187 @2169 @2312) +@2609 := (hA : @2315 @371 @2094) -> + (hne : @2104 @2578 @2109) -> @2188 (fun (ro : @2187) => @2189 (@2439 @2534 @4) (@2319 @2081 @4)) +@2610 := @2595 @2101 +@2621 := (hne : @2104 @2094 @2109) -> + @2188 (fun (ro : @2187) => @2189 (@2439 @2558 @4) (@2319 @356 @4)) +@2622 := @2610 @2121 +@2628 := @2189 (@2439 @2578 @4) (@2319 @364 @4) +@2630 := @2188 (fun (ro : @2187) => @2628) +@2632 := @2188 (fun (__e_ro : @2187) => @2628) +@2634 := LexLeanPreservation.Rust.RepresentableL @253 +@2635 := (__e_hrep : @2634) -> @2632 +@2636 := fun (__e_hrep : @2634) => @2622 +@2637 := (target : @57) -> @2635 +@2638 := fun (target : @57) => @2636 +\end{coremodule} +\end{lexlean} diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R3/RustStd.lean b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R3/RustStd.lean new file mode 100644 index 000000000..f0210c10c --- /dev/null +++ b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R3/RustStd.lean @@ -0,0 +1,360 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [{ constructors := [[], [], [.nat]] }, + { constructors := [[(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]] }, + { constructors := [[(.pair .nat .nat), (.list (.adt 0))]] }, + { constructors := [[.nat, .nat, .nat, .nat, .nat, .nat]] }], functions := (( + { parameters := [0], types := [.nat], result := .nat, + body := (.«match» .nat (.call 1 [(.var 0)]) [(.arm .ok [1] (.first (.var 1))), (.arm .error [2] (.value .nat (.nat 9)))]) }) ::( + { parameters := [0], types := [.nat], result := (.result (.pair .nat .nat) (.pair .bool .bool)), + body := (.«match» (.result (.pair .nat .nat) (.pair .bool .bool)) (.call 2 [(.var 0)]) [(.arm .ok [1] (.build .ok (.result (.pair .nat .nat) (.pair .bool .bool)) [(.first (.var 1))])), (.arm .error [2] (.build .error (.result (.pair .nat .nat) (.pair .bool .bool)) [(.var 2)]))]) }) ::( + { parameters := [0], types := [.nat], result := (.result (.pair (.pair .nat .nat) (.list (.adt 0))) (.pair .bool .bool)), + body := (.«let» 1 (.pair (.adt 1) .bool) (.call 3 [(.var 0)]) (.«match» (.result (.pair (.pair .nat .nat) (.list (.adt 0))) (.pair .bool .bool)) (.field (.first (.var 1)) 2) [(.arm .some [2] (.build .ok (.result (.pair (.pair .nat .nat) (.list (.adt 0))) (.pair .bool .bool)) [(.build .pair (.pair (.pair .nat .nat) (.list (.adt 0))) [(.first (.var 2)), (.field (.second (.var 2)) 1)])])), (.arm .none [] (.build .error (.result (.pair (.pair .nat .nat) (.list (.adt 0))) (.pair .bool .bool)) [(.call 4 [(.second (.var 1)), (.field (.first (.var 1)) 3)])]))])) }) ::( + { parameters := [0], types := [.nat], result := (.pair (.adt 1) .bool), + body := (.call 5 [(.closure 6 [(.var 0)]), (.prim .natMul [(.var 0), (.value .nat (.nat 8))]), (.call 7 [(.var 0)])]) }) ::( + { parameters := [0, 1], types := [.bool, .bool], result := (.pair .bool .bool), + body := (.cond (.cond (.var 0) (.prim .boolNot [(.var 1)]) (.build .false .bool [])) (.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])]) (.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])) }) ::( + { parameters := [0, 1, 2], types := [(.fn [(.adt 1)] (.option (.adt 1))), .nat, (.adt 1)], result := (.pair (.adt 1) .bool), + body := (.«match» (.pair (.adt 1) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.adt 1) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.adt 1) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.adt 1) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 5 [(.var 0), (.var 3), (.var 4)]))]))]) }) ::( + { parameters := [0, 1], types := [.nat, (.adt 1)], result := (.option (.adt 1)), + body := (.call 8 [(.var 0), (.var 1)]) }) ::( + { parameters := [0], types := [.nat], result := (.adt 1), + body := (.«let» 1 (.list (.adt 2)) (.call 9 [(.closure 10 [(.var 0)]), (.build .nil (.list (.adt 2)) []), (.build .cons (.list (.adt 2)) [(.build (.adt 0) (.adt 2) [(.call 11 [(.var 0)]), (.build .nil (.list (.adt 0)) [])]), (.build .nil (.list (.adt 2)) [])])]) (.build (.adt 0) (.adt 1) [(.var 1), (.call 12 [(.build .nil (.list (.pair .nat .nat)) []), (.call 11 [(.var 0)])]), (.build .none (.option (.pair (.pair .nat .nat) (.adt 2))) []), (.prim .natLt [(.prim .natAdd [(.var 0), (.var 0)]), (.value .nat (.nat 1))]), (.build (.adt 0) (.adt 3) [(.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.prim .length [(.var 1)])])])) }) ::( + { parameters := [0, 1], types := [.nat, (.adt 1)], result := (.option (.adt 1)), + body := (.«match» (.option (.adt 1)) (.field (.var 1) 2) [(.arm .some [2] (.build .none (.option (.adt 1)) [])), (.arm .none [] (.«match» (.option (.adt 1)) (.field (.var 1) 0) [(.arm .nil [] (.build .none (.option (.adt 1)) [])), (.arm .cons [3, 4] (.«match» (.option (.adt 1)) (.call 13 [(.var 0), (.field (.var 3) 0)]) [(.arm .some [5] (.build .some (.option (.adt 1)) [(.build (.adt 0) (.adt 1) [(.var 4), (.field (.var 1) 1), (.build .some (.option (.pair (.pair .nat .nat) (.adt 2))) [(.build .pair (.pair (.pair .nat .nat) (.adt 2)) [(.var 5), (.var 3)])]), (.field (.var 1) 3), (.build (.adt 0) (.adt 3) [(.prim .natAdd [(.field (.field (.var 1) 4) 0), (.value .nat (.nat 1))]), (.field (.field (.var 1) 4) 1), (.field (.field (.var 1) 4) 2), (.field (.field (.var 1) 4) 3), (.prim .natAdd [(.field (.field (.var 1) 4) 4), (.value .nat (.nat 1))]), (.field (.field (.var 1) 4) 5)])])])), (.arm .none [] (.«let» 6 (.list (.adt 2)) (.call 14 [(.var 3)]) (.«let» 7 (.pair (.list (.adt 2)) (.list (.pair .nat .nat))) (.call 15 [(.field (.var 1) 1), (.var 6)]) (.«let» 8 (.list (.adt 2)) (.prim .append [(.var 4), (.first (.var 7))]) (.«let» 9 (.list (.adt 2)) (.call 9 [(.closure 16 [(.var 0)]), (.build .nil (.list (.adt 2)) []), (.var 8)]) (.build .some (.option (.adt 1)) [(.build (.adt 0) (.adt 1) [(.var 9), (.second (.var 7)), (.build .none (.option (.pair (.pair .nat .nat) (.adt 2))) []), (.cond (.field (.var 1) 3) (.build .true .bool []) (.prim .natLt [(.prim .natAdd [(.var 0), (.var 0)]), (.prim .length [(.var 8)])])), (.build (.adt 0) (.adt 3) [(.prim .natAdd [(.field (.field (.var 1) 4) 0), (.value .nat (.nat 1))]), (.prim .natAdd [(.field (.field (.var 1) 4) 1), (.call 17 [(.field (.var 3) 0)])]), (.prim .natAdd [(.field (.field (.var 1) 4) 2), (.prim .length [(.var 6)])]), (.prim .natAdd [(.field (.field (.var 1) 4) 3), (.value .nat (.nat 1))]), (.prim .natAdd [(.field (.field (.var 1) 4) 4), (.value .nat (.nat 1))]), (.cond (.prim .natLt [(.field (.field (.var 1) 4) 5), (.prim .length [(.var 9)])]) (.prim .length [(.var 9)]) (.field (.field (.var 1) 4) 5))])])]))))))]))]))]) }) ::( + { parameters := [0, 1, 2], types := [(.fn [(.list (.adt 2)), (.adt 2)] (.list (.adt 2))), (.list (.adt 2)), (.list (.adt 2))], result := (.list (.adt 2)), + body := (.«match» (.list (.adt 2)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 9 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }) ::( + { parameters := [0, 1, 2], types := [.nat, (.list (.adt 2)), (.adt 2)], result := (.list (.adt 2)), + body := (.cond (.prim .natLt [(.prim .length [(.var 1)]), (.prim .natAdd [(.var 0), (.var 0)])]) (.prim .append [(.var 1), (.build .cons (.list (.adt 2)) [(.var 2), (.build .nil (.list (.adt 2)) [])])]) (.var 1)) }) ::( + { parameters := [0], types := [.nat], result := (.pair .nat .nat), + body := (.build .pair (.pair .nat .nat) [(.value .nat (.nat 0)), (.value .nat (.nat 0))]) }) ::( + { parameters := [0, 1], types := [(.list (.pair .nat .nat)), (.pair .nat .nat)], result := (.list (.pair .nat .nat)), + body := (.«match» (.list (.pair .nat .nat)) (.var 0) [(.arm .nil [] (.build .cons (.list (.pair .nat .nat)) [(.var 1), (.build .nil (.list (.pair .nat .nat)) [])])), (.arm .cons [2, 3] (.«match» (.list (.pair .nat .nat)) (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .cons (.list (.pair .nat .nat)) [(.var 1), (.var 0)])), (.arm .eq [] (.var 0)), (.arm .gt [] (.build .cons (.list (.pair .nat .nat)) [(.var 2), (.call 12 [(.var 3), (.var 1)])]))]))]) }) ::( + { parameters := [0, 1], types := [.nat, (.pair .nat .nat)], result := (.option (.pair .nat .nat)), + body := (.«match» (.option (.pair .nat .nat)) (.call 18 [(.var 1)]) [(.arm .none [] (.build .none (.option (.pair .nat .nat)) [])), (.arm .some [2] (.cond (.call 19 [(.var 0), (.var 2)]) (.build .some (.option (.pair .nat .nat)) [(.var 2)]) (.build .none (.option (.pair .nat .nat)) [])))]) }) ::( + { parameters := [0], types := [(.adt 2)], result := (.list (.adt 2)), + body := (.prim .append [(.call 20 [(.var 0)]), (.prim .append [(.call 21 [(.var 0)]), (.call 22 [(.var 0)])])]) }) ::( + { parameters := [0, 1], types := [(.list (.pair .nat .nat)), (.list (.adt 2))], result := (.pair (.list (.adt 2)) (.list (.pair .nat .nat))), + body := (.call 23 [(.closure 24 []), (.build .pair (.pair (.list (.adt 2)) (.list (.pair .nat .nat))) [(.build .nil (.list (.adt 2)) []), (.var 0)]), (.var 1)]) }) ::( + { parameters := [0, 1, 2], types := [.nat, (.list (.adt 2)), (.adt 2)], result := (.list (.adt 2)), + body := (.cond (.prim .natLt [(.prim .length [(.var 1)]), (.prim .natAdd [(.var 0), (.var 0)])]) (.prim .append [(.var 1), (.build .cons (.list (.adt 2)) [(.var 2), (.build .nil (.list (.adt 2)) [])])]) (.var 1)) }) ::( + { parameters := [0], types := [(.pair .nat .nat)], result := .nat, + body := (.prim .natAdd [(.value .nat (.nat 1)), (.prim .natAdd [(.value .nat (.nat 1)), (.prim .length [(.call 25 [(.var 0)])])])]) }) ::( + { parameters := [0], types := [(.pair .nat .nat)], result := (.option (.pair .nat .nat)), + body := (.build .some (.option (.pair .nat .nat)) [(.var 0)]) }) ::( + { parameters := [0, 1], types := [.nat, (.pair .nat .nat)], result := .bool, + body := (.cond (.prim .natEq [(.second (.var 1)), (.var 0)]) (.prim .natLe [(.first (.var 1)), (.value .nat (.nat 4))]) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 2)], result := (.list (.adt 2)), + body := (.«match» (.list (.adt 2)) (.call 26 [(.field (.var 0) 0), (.build (.adt 0) (.adt 0) [])]) [(.arm .none [] (.build .nil (.list (.adt 2)) [])), (.arm .some [1] (.build .cons (.list (.adt 2)) [(.build (.adt 0) (.adt 2) [(.var 1), (.prim .append [(.field (.var 0) 1), (.build .cons (.list (.adt 0)) [(.build (.adt 0) (.adt 0) []), (.build .nil (.list (.adt 0)) [])])])]), (.build .nil (.list (.adt 2)) [])]))]) }) ::( + { parameters := [0], types := [(.adt 2)], result := (.list (.adt 2)), + body := (.«match» (.list (.adt 2)) (.call 26 [(.field (.var 0) 0), (.build (.adt 1) (.adt 0) [])]) [(.arm .none [] (.build .nil (.list (.adt 2)) [])), (.arm .some [1] (.build .cons (.list (.adt 2)) [(.build (.adt 0) (.adt 2) [(.var 1), (.prim .append [(.field (.var 0) 1), (.build .cons (.list (.adt 0)) [(.build (.adt 1) (.adt 0) []), (.build .nil (.list (.adt 0)) [])])])]), (.build .nil (.list (.adt 2)) [])]))]) }) ::( + { parameters := [0], types := [(.adt 2)], result := (.list (.adt 2)), + body := (.call 27 [(.closure 28 [(.var 0)]), (.build .nil (.list (.adt 2)) []), (.call 25 [(.field (.var 0) 0)])]) }) ::( + { parameters := [0, 1, 2], types := [(.fn [(.pair (.list (.adt 2)) (.list (.pair .nat .nat))), (.adt 2)] (.pair (.list (.adt 2)) (.list (.pair .nat .nat)))), (.pair (.list (.adt 2)) (.list (.pair .nat .nat))), (.list (.adt 2))], result := (.pair (.list (.adt 2)) (.list (.pair .nat .nat))), + body := (.«match» (.pair (.list (.adt 2)) (.list (.pair .nat .nat))) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 23 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }) ::( + { parameters := [0, 1], types := [(.pair (.list (.adt 2)) (.list (.pair .nat .nat))), (.adt 2)], result := (.pair (.list (.adt 2)) (.list (.pair .nat .nat))), + body := (.cond (.call 29 [(.second (.var 0)), (.field (.var 1) 0)]) (.var 0) (.build .pair (.pair (.list (.adt 2)) (.list (.pair .nat .nat))) [(.prim .append [(.first (.var 0)), (.build .cons (.list (.adt 2)) [(.var 1), (.build .nil (.list (.adt 2)) [])])]), (.call 12 [(.second (.var 0)), (.field (.var 1) 0)])])) }) ::( + { parameters := [0], types := [(.pair .nat .nat)], result := (.list .nat), + body := (.build .cons (.list .nat) [(.value .nat (.nat 1)), (.build .cons (.list .nat) [(.value .nat (.nat 2)), (.build .cons (.list .nat) [(.value .nat (.nat 3)), (.build .nil (.list .nat) [])])])]) }) ::( + { parameters := [0, 1], types := [(.pair .nat .nat), (.adt 0)], result := (.option (.pair .nat .nat)), + body := (.«match» (.option (.pair .nat .nat)) (.var 1) [(.arm (.adt 0) [] (.call 30 [(.var 0)])), (.arm (.adt 1) [] (.call 31 [(.var 0)])), (.arm (.adt 2) [2] (.call 32 [(.var 0), (.var 2)]))]) }) ::( + { parameters := [0, 1, 2], types := [(.fn [(.list (.adt 2)), .nat] (.list (.adt 2))), (.list (.adt 2)), (.list .nat)], result := (.list (.adt 2)), + body := (.«match» (.list (.adt 2)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 27 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }) ::( + { parameters := [0, 1, 2], types := [(.adt 2), (.list (.adt 2)), .nat], result := (.list (.adt 2)), + body := (.call 33 [(.var 0), (.var 1), (.var 2)]) }) ::( + { parameters := [0, 1], types := [(.list (.pair .nat .nat)), (.pair .nat .nat)], result := .bool, + body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .false .bool [])), (.arm .cons [2, 3] (.«match» .bool (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .false .bool [])), (.arm .eq [] (.build .true .bool [])), (.arm .gt [] (.call 29 [(.var 3), (.var 1)]))]))]) }) ::( + { parameters := [0], types := [(.pair .nat .nat)], result := (.option (.pair .nat .nat)), + body := (.cond (.call 34 [(.var 0)]) (.build .some (.option (.pair .nat .nat)) [(.call 35 [(.var 0)])]) (.build .none (.option (.pair .nat .nat)) [])) }) ::( + { parameters := [0], types := [(.pair .nat .nat)], result := (.option (.pair .nat .nat)), + body := (.cond (.call 36 [(.var 0)]) (.build .some (.option (.pair .nat .nat)) [(.call 37 [(.var 0)])]) (.build .none (.option (.pair .nat .nat)) [])) }) ::( + { parameters := [0, 1], types := [(.pair .nat .nat), .nat], result := (.option (.pair .nat .nat)), + body := (.cond (.call 38 [(.var 0), (.var 1)]) (.build .some (.option (.pair .nat .nat)) [(.call 39 [(.var 0), (.var 1)])]) (.build .none (.option (.pair .nat .nat)) [])) }) ::( + { parameters := [0, 1, 2], types := [(.adt 2), (.list (.adt 2)), .nat], result := (.list (.adt 2)), + body := (.«match» (.list (.adt 2)) (.call 26 [(.field (.var 0) 0), (.build (.adt 2) (.adt 0) [(.var 2)])]) [(.arm .none [] (.var 1)), (.arm .some [3] (.prim .append [(.var 1), (.build .cons (.list (.adt 2)) [(.build (.adt 0) (.adt 2) [(.var 3), (.prim .append [(.field (.var 0) 1), (.build .cons (.list (.adt 0)) [(.build (.adt 2) (.adt 0) [(.var 2)]), (.build .nil (.list (.adt 0)) [])])])]), (.build .nil (.list (.adt 2)) [])])]))]) }) ::( + { parameters := [0], types := [(.pair .nat .nat)], result := .bool, + body := (.cond (.prim .natLt [(.first (.var 0)), (.value .nat (.nat 4))]) (.prim .natLe [(.second (.var 0)), (.value .nat (.nat 3))]) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.pair .nat .nat)], result := (.pair .nat .nat), + body := (.build .pair (.pair .nat .nat) [(.value .nat (.nat 4)), (.second (.var 0))]) }) ::( + { parameters := [0], types := [(.pair .nat .nat)], result := .bool, + body := (.cond (.prim .natLt [(.value .nat (.nat 0)), (.second (.var 0))]) (.prim .natLe [(.first (.var 0)), (.value .nat (.nat 4))]) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.pair .nat .nat)], result := (.pair .nat .nat), + body := (.build .pair (.pair .nat .nat) [(.first (.var 0)), (.value .nat (.nat 0))]) }) ::( + { parameters := [0, 1], types := [(.pair .nat .nat), .nat], result := .bool, + body := (.cond (.prim .natLe [(.var 1), (.first (.var 0))]) (.cond (.prim .natLe [(.prim .natAdd [(.second (.var 0)), (.var 1)]), (.value .nat (.nat 3))]) (.prim .natLe [(.first (.var 0)), (.value .nat (.nat 4))]) (.build .false .bool [])) (.build .false .bool [])) }) ::( + { parameters := [0, 1], types := [(.pair .nat .nat), .nat], result := (.pair .nat .nat), + body := (.build .pair (.pair .nat .nat) [(.prim .natSub [(.first (.var 0)), (.var 1)]), (.prim .natAdd [(.second (.var 0)), (.var 1)])]) }) ::[]) } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := ((.enum (.adt 0) [{ number := 0, fields := [] }, { number := 1, fields := [] }, { number := 2, fields := [.nat] }]) :: + (.enum (.adt 1) [{ number := 0, fields := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)] }]) :: + (.enum (.adt 2) [{ number := 0, fields := [(.pair .nat .nat), (.list (.adt 0))] }]) :: + (.enum (.adt 3) [{ number := 0, fields := [.nat, .nat, .nat, .nat, .nat, .nat] }]) :: + (.enum (.fn 0) [{ number := 6, fields := [.nat] }]) :: + (.apply 0 [(.adt 1)] (.option (.adt 1)) true [{ function := 6, captures := [.copy], functionFallible := true }]) :: + (.enum (.fn 1) [{ number := 10, fields := [.nat] }, { number := 16, fields := [.nat] }]) :: + (.apply 1 [(.list (.adt 2)), (.adt 2)] (.list (.adt 2)) true [{ function := 10, captures := [.copy], functionFallible := true }, { function := 16, captures := [.copy], functionFallible := true }]) :: + (.enum (.fn 2) [{ number := 24, fields := [] }]) :: + (.apply 2 [(.pair (.list (.adt 2)) (.list (.pair .nat .nat))), (.adt 2)] (.pair (.list (.adt 2)) (.list (.pair .nat .nat))) false [{ function := 24, captures := [], functionFallible := false }]) :: + (.enum (.fn 3) [{ number := 28, fields := [(.adt 2)] }]) :: + (.apply 3 [(.list (.adt 2)), .nat] (.list (.adt 2)) true [{ function := 28, captures := [.clone], functionFallible := true }]) :: + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 1)) none (.call (.function 1) [(.copy (.generated .binding 0))] true))] (.matchOn (.move (.generated .holder 1)) [(.mk (.ok (.bind (.generated .binding 1))) (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.copy (.generated .binding 1)))] (.succeed (.move (.generated .part 2))))), (.mk (.err .wild) (.mk [] (.succeed (.lit (.nat 9)))))]))) :: + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible (.result (.pair .nat .nat) (.pair .bool .bool))) (.mk [(.mk (.bind (.generated .holder 3)) none (.call (.function 2) [(.copy (.generated .binding 0))] true))] (.matchOn (.move (.generated .holder 3)) [(.mk (.ok (.bind (.generated .binding 1))) (.mk [] (.succeed (.construct (.ok (.pair .nat .nat) (.pair .bool .bool)) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 4)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 4))))])))), (.mk (.err (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.copy (.generated .binding 2))]))))]))) :: + (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible (.result (.pair (.pair .nat .nat) (.list (.adt 0))) (.pair .bool .bool))) (.mk [(.mk (.bind (.generated .binding 1)) (some (.pair (.adt 1) .bool)) (.call (.function 3) [(.copy (.generated .binding 0))] true)), (.mk (.bind (.generated .holder 8)) none (.block (.mk [(.mk (.bind (.generated .holder 7)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 6)), .wild]) none (.clone (.generated .binding 1)))] (.move (.generated .part 6)))))] (.matchOn (.move (.generated .holder 7)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 5)), .wild, .wild]) (.mk [] (.move (.generated .part 5))))]))))] (.matchOn (.move (.generated .holder 8)) [(.mk .none (.mk [] (.succeed (.construct (.err (.pair (.pair .nat .nat) (.list (.adt 0))) (.pair .bool .bool)) [(.call (.function 4) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 13))]) none (.move (.generated .binding 1)))] (.move (.generated .part 13)))), (.block (.mk [(.mk (.bind (.generated .holder 16)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 15)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 15)))))] (.matchOn (.move (.generated .holder 16)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 14)), .wild]) (.mk [] (.move (.generated .part 14))))])))] false)])))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct (.ok (.pair (.pair .nat .nat) (.list (.adt 0))) (.pair .bool .bool)) [(.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 9)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 9)))) (.block (.mk [(.mk (.bind (.generated .holder 12)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 11))]) none (.move (.generated .binding 2)))] (.move (.generated .part 11)))))] (.matchOn (.move (.generated .holder 12)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 10))]) (.mk [] (.move (.generated .part 10))))]))))]))))]))) :: + (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible (.pair (.adt 1) .bool)) (.mk [] (.call (.function 5) [(.construct (.closure 0 6) [(.copy (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 18)) none (.lit (.nat 8)))] (.call (.runtime .natMul) [(.move (.generated .operand 17)), (.move (.generated .operand 18))] true))), (.call (.function 7) [(.copy (.generated .binding 0))] true)] false))) :: + (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := .bool }, { pattern := (.bind (.generated .binding 1)), type := .bool }] (.pair .bool .bool) (.mk [] (.cond (.cond (.copy (.generated .binding 0)) (.mk [(.mk (.bind (.generated .operand 19)) none (.copy (.generated .binding 1)))] (.call (.runtime .boolNot) [(.move (.generated .operand 19))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.pair (.lit (.bool false)) (.lit (.bool true)))) (.mk [] (.pair (.lit (.bool false)) (.lit (.bool false))))))) :: + (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := (.adt 1) }] (.fallible (.pair (.adt 1) .bool)) (.mk [(.mk (.bind (.generated .holder 20)) none (.copy (.generated .binding 1)))] (.cond (.isZero (.generated .holder 20)) (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 20))), (.mk (.bind (.generated .holder 22)) none (.block (.mk [(.mk (.bind (.generated .callee 21)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 21) [(.clone (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 22)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 5) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))]))))) :: + (.function (.generated .function 6) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := (.adt 1) }] (.fallible (.option (.adt 1))) (.mk [] (.call (.function 8) [(.copy (.generated .binding 0)), (.move (.generated .binding 1))] false))) :: + (.function (.generated .function 7) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible (.adt 1)) (.mk [(.mk (.bind (.generated .binding 1)) (some (.list (.adt 2))) (.call (.function 9) [(.construct (.closure 1 10) [(.copy (.generated .binding 0))]), (.construct (.nil (.adt 2)) []), (.construct .cons [(.construct (.adt 2 0) [(.call (.function 11) [(.copy (.generated .binding 0))] false), (.construct (.nil (.adt 0)) [])]), (.construct (.nil (.adt 2)) [])])] true))] (.succeed (.construct (.adt 1 0) [(.clone (.generated .binding 1)), (.call (.function 12) [(.construct (.nil (.pair .nat .nat)) []), (.call (.function 11) [(.copy (.generated .binding 0))] false)] false), (.construct (.none (.pair (.pair .nat .nat) (.adt 2))) []), (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 0)))] (.call (.runtime .natAdd) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] true)))), (.mk (.bind (.generated .operand 26)) none (.lit (.nat 1)))] (.call (.runtime .natLt) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))), (.construct (.adt 3 0) [(.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.move (.generated .binding 1)))] (.call (.runtime .lengthList) [(.move (.generated .operand 27))] false)))])])))) :: + (.function (.generated .function 8) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := (.adt 1) }] (.fallible (.option (.adt 1))) (.mk [(.mk (.bind (.generated .holder 29)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 28)), .wild, .wild]) (.mk [] (.move (.generated .part 28))))]))] (.matchOn (.move (.generated .holder 29)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 31)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [(.bind (.generated .part 30)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 30))))]))] (.matchOn (.uncons (.generated .holder 31)) [(.mk .none (.mk [] (.succeed (.construct (.none (.adt 1)) [])))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [(.mk (.bind (.generated .holder 33)) none (.call (.function 13) [(.copy (.generated .binding 0)), (.matchOn (.clone (.generated .binding 3)) [(.mk (.adt 2 0 [(.bind (.generated .part 32)), .wild]) (.mk [] (.move (.generated .part 32))))])] false))] (.matchOn (.move (.generated .holder 33)) [(.mk .none (.mk [(.mk (.bind (.generated .binding 6)) (some (.list (.adt 2))) (.call (.function 14) [(.clone (.generated .binding 3))] true)), (.mk (.bind (.generated .binding 7)) (some (.pair (.list (.adt 2)) (.list (.pair .nat .nat)))) (.call (.function 15) [(.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 58)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 58))))]), (.clone (.generated .binding 6))] false)), (.mk (.bind (.generated .binding 8)) (some (.list (.adt 2))) (.block (.mk [(.mk (.bind (.generated .operand 60)) none (.move (.generated .binding 4))), (.mk (.bind (.generated .operand 61)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 59)), .wild]) none (.move (.generated .binding 7)))] (.move (.generated .part 59)))))] (.call (.runtime .appendList) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] false)))), (.mk (.bind (.generated .binding 9)) (some (.list (.adt 2))) (.call (.function 9) [(.construct (.closure 1 16) [(.copy (.generated .binding 0))]), (.construct (.nil (.adt 2)) []), (.clone (.generated .binding 8))] true))] (.succeed (.construct .some [(.construct (.adt 1 0) [(.clone (.generated .binding 9)), (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 62))]) none (.move (.generated .binding 7)))] (.move (.generated .part 62)))), (.construct (.none (.pair (.pair .nat .nat) (.adt 2))) []), (.cond (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 63)), .wild]) (.mk [] (.move (.generated .part 63))))]) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 67)) none (.block (.mk [(.mk (.bind (.generated .operand 64)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 65)) none (.copy (.generated .binding 0)))] (.call (.runtime .natAdd) [(.move (.generated .operand 64)), (.move (.generated .operand 65))] true)))), (.mk (.bind (.generated .operand 68)) none (.block (.mk [(.mk (.bind (.generated .operand 66)) none (.move (.generated .binding 8)))] (.call (.runtime .lengthList) [(.move (.generated .operand 66))] false))))] (.call (.runtime .natLt) [(.move (.generated .operand 67)), (.move (.generated .operand 68))] false))), (.construct (.adt 3 0) [(.block (.mk [(.mk (.bind (.generated .operand 72)) none (.block (.mk [(.mk (.bind (.generated .holder 71)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 70))]) (.mk [] (.move (.generated .part 70))))]))] (.matchOn (.move (.generated .holder 71)) [(.mk (.adt 3 0 [(.bind (.generated .part 69)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 69))))])))), (.mk (.bind (.generated .operand 73)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 72)), (.move (.generated .operand 73))] true))), (.block (.mk [(.mk (.bind (.generated .operand 78)) none (.block (.mk [(.mk (.bind (.generated .holder 76)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 75))]) (.mk [] (.move (.generated .part 75))))]))] (.matchOn (.move (.generated .holder 76)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 74)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 74))))])))), (.mk (.bind (.generated .operand 79)) none (.call (.function 17) [(.matchOn (.move (.generated .binding 3)) [(.mk (.adt 2 0 [(.bind (.generated .part 77)), .wild]) (.mk [] (.move (.generated .part 77))))])] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 78)), (.move (.generated .operand 79))] true))), (.block (.mk [(.mk (.bind (.generated .operand 84)) none (.block (.mk [(.mk (.bind (.generated .holder 82)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))]))] (.matchOn (.move (.generated .holder 82)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 80)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 80))))])))), (.mk (.bind (.generated .operand 85)) none (.block (.mk [(.mk (.bind (.generated .operand 83)) none (.move (.generated .binding 6)))] (.call (.runtime .lengthList) [(.move (.generated .operand 83))] false))))] (.call (.runtime .natAdd) [(.move (.generated .operand 84)), (.move (.generated .operand 85))] true))), (.block (.mk [(.mk (.bind (.generated .operand 89)) none (.block (.mk [(.mk (.bind (.generated .holder 88)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 87))]) (.mk [] (.move (.generated .part 87))))]))] (.matchOn (.move (.generated .holder 88)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 86)), .wild, .wild]) (.mk [] (.move (.generated .part 86))))])))), (.mk (.bind (.generated .operand 90)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 89)), (.move (.generated .operand 90))] true))), (.block (.mk [(.mk (.bind (.generated .operand 94)) none (.block (.mk [(.mk (.bind (.generated .holder 93)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 92))]) (.mk [] (.move (.generated .part 92))))]))] (.matchOn (.move (.generated .holder 93)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 91)), .wild]) (.mk [] (.move (.generated .part 91))))])))), (.mk (.bind (.generated .operand 95)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 94)), (.move (.generated .operand 95))] true))), (.block (.mk [(.mk (.bind (.generated .operand 100)) none (.block (.mk [(.mk (.bind (.generated .holder 98)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 97))]) (.mk [] (.move (.generated .part 97))))]))] (.matchOn (.move (.generated .holder 98)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 96))]) (.mk [] (.move (.generated .part 96))))])))), (.mk (.bind (.generated .operand 101)) none (.block (.mk [(.mk (.bind (.generated .operand 99)) none (.clone (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 99))] false))))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 100)), (.move (.generated .operand 101))] false) (.mk [(.mk (.bind (.generated .operand 102)) none (.move (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 102))] false)) (.mk [(.mk (.bind (.generated .holder 105)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 104))]) (.mk [] (.move (.generated .part 104))))]))] (.matchOn (.move (.generated .holder 105)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 103))]) (.mk [] (.move (.generated .part 103))))])))))])])])))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.succeed (.construct .some [(.construct (.adt 1 0) [(.move (.generated .binding 4)), (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 34)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 34))))]), (.construct .some [(.pair (.copy (.generated .binding 5)) (.move (.generated .binding 3)))]), (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 35)), .wild]) (.mk [] (.move (.generated .part 35))))]), (.construct (.adt 3 0) [(.block (.mk [(.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.bind (.generated .holder 38)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 37))]) (.mk [] (.move (.generated .part 37))))]))] (.matchOn (.move (.generated .holder 38)) [(.mk (.adt 3 0 [(.bind (.generated .part 36)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 36))))])))), (.mk (.bind (.generated .operand 40)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] true))), (.block (.mk [(.mk (.bind (.generated .holder 43)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 42))]) (.mk [] (.move (.generated .part 42))))]))] (.matchOn (.move (.generated .holder 43)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 41)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 41))))]))), (.block (.mk [(.mk (.bind (.generated .holder 46)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 45))]) (.mk [] (.move (.generated .part 45))))]))] (.matchOn (.move (.generated .holder 46)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 44)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 44))))]))), (.block (.mk [(.mk (.bind (.generated .holder 49)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 48))]) (.mk [] (.move (.generated .part 48))))]))] (.matchOn (.move (.generated .holder 49)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 47)), .wild, .wild]) (.mk [] (.move (.generated .part 47))))]))), (.block (.mk [(.mk (.bind (.generated .operand 53)) none (.block (.mk [(.mk (.bind (.generated .holder 52)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 51))]) (.mk [] (.move (.generated .part 51))))]))] (.matchOn (.move (.generated .holder 52)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 50)), .wild]) (.mk [] (.move (.generated .part 50))))])))), (.mk (.bind (.generated .operand 54)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] true))), (.block (.mk [(.mk (.bind (.generated .holder 57)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 56))]) (.mk [] (.move (.generated .part 56))))]))] (.matchOn (.move (.generated .holder 57)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 55))]) (.mk [] (.move (.generated .part 55))))])))])])]))))])))]))), (.mk (.some .wild) (.mk [] (.succeed (.construct (.none (.adt 1)) []))))]))) :: + (.function (.generated .function 9) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 1) }, { pattern := (.bind (.generated .binding 1)), type := (.list (.adt 2)) }, { pattern := (.bind (.generated .binding 2)), type := (.list (.adt 2)) }] (.fallible (.list (.adt 2))) (.mk [(.mk (.bind (.generated .holder 106)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 106)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 9) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 107)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 107) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]))) :: + (.function (.generated .function 10) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := (.list (.adt 2)) }, { pattern := (.bind (.generated .binding 2)), type := (.adt 2) }] (.fallible (.list (.adt 2))) (.mk [(.mk (.bind (.generated .operand 111)) none (.block (.mk [(.mk (.bind (.generated .operand 108)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthList) [(.move (.generated .operand 108))] false)))), (.mk (.bind (.generated .operand 112)) none (.block (.mk [(.mk (.bind (.generated .operand 109)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 110)) none (.copy (.generated .binding 0)))] (.call (.runtime .natAdd) [(.move (.generated .operand 109)), (.move (.generated .operand 110))] true))))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 111)), (.move (.generated .operand 112))] false) (.mk [(.mk (.bind (.generated .operand 113)) none (.move (.generated .binding 1))), (.mk (.bind (.generated .operand 114)) none (.construct .cons [(.move (.generated .binding 2)), (.construct (.nil (.adt 2)) [])]))] (.succeed (.call (.runtime .appendList) [(.move (.generated .operand 113)), (.move (.generated .operand 114))] false))) (.mk [] (.succeed (.move (.generated .binding 1))))))) :: + (.function (.generated .function 11) [{ pattern := .wild, type := .nat }] (.pair .nat .nat) (.mk [] (.pair (.lit (.nat 0)) (.lit (.nat 0))))) :: + (.function (.generated .function 12) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat .nat)) }, { pattern := (.bind (.generated .binding 1)), type := (.pair .nat .nat) }] (.list (.pair .nat .nat)) (.mk [(.mk (.bind (.generated .holder 115)) none (.clone (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 115)) [(.mk .none (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil (.pair .nat .nat)) [])]))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 118)) none (.block (.mk [(.mk (.bind (.generated .operand 116)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 117)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 116)), (.move (.generated .operand 117))] false))))] (.matchOn (.move (.generated .holder 118)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 12) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])))]))) :: + (.function (.generated .function 13) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := (.pair .nat .nat) }] (.option (.pair .nat .nat)) (.mk [(.mk (.bind (.generated .holder 119)) none (.call (.function 18) [(.copy (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 119)) [(.mk .none (.mk [] (.construct (.none (.pair .nat .nat)) []))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.cond (.call (.function 19) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.mk [] (.construct .some [(.copy (.generated .binding 2))])) (.mk [] (.construct (.none (.pair .nat .nat)) [])))))]))) :: + (.function (.generated .function 14) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 2) }] (.fallible (.list (.adt 2))) (.mk [(.mk (.bind (.generated .operand 122)) none (.call (.function 20) [(.clone (.generated .binding 0))] true)), (.mk (.bind (.generated .operand 123)) none (.block (.mk [(.mk (.bind (.generated .operand 120)) none (.call (.function 21) [(.clone (.generated .binding 0))] true)), (.mk (.bind (.generated .operand 121)) none (.call (.function 22) [(.move (.generated .binding 0))] true))] (.call (.runtime .appendList) [(.move (.generated .operand 120)), (.move (.generated .operand 121))] false))))] (.succeed (.call (.runtime .appendList) [(.move (.generated .operand 122)), (.move (.generated .operand 123))] false)))) :: + (.function (.generated .function 15) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat .nat)) }, { pattern := (.bind (.generated .binding 1)), type := (.list (.adt 2)) }] (.pair (.list (.adt 2)) (.list (.pair .nat .nat))) (.mk [] (.call (.function 23) [(.construct (.closure 2 24) []), (.pair (.construct (.nil (.adt 2)) []) (.move (.generated .binding 0))), (.move (.generated .binding 1))] false))) :: + (.function (.generated .function 16) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := (.list (.adt 2)) }, { pattern := (.bind (.generated .binding 2)), type := (.adt 2) }] (.fallible (.list (.adt 2))) (.mk [(.mk (.bind (.generated .operand 127)) none (.block (.mk [(.mk (.bind (.generated .operand 124)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthList) [(.move (.generated .operand 124))] false)))), (.mk (.bind (.generated .operand 128)) none (.block (.mk [(.mk (.bind (.generated .operand 125)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 126)) none (.copy (.generated .binding 0)))] (.call (.runtime .natAdd) [(.move (.generated .operand 125)), (.move (.generated .operand 126))] true))))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 127)), (.move (.generated .operand 128))] false) (.mk [(.mk (.bind (.generated .operand 129)) none (.move (.generated .binding 1))), (.mk (.bind (.generated .operand 130)) none (.construct .cons [(.move (.generated .binding 2)), (.construct (.nil (.adt 2)) [])]))] (.succeed (.call (.runtime .appendList) [(.move (.generated .operand 129)), (.move (.generated .operand 130))] false))) (.mk [] (.succeed (.move (.generated .binding 1))))))) :: + (.function (.generated .function 17) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }] (.fallible .nat) (.mk [(.mk (.bind (.generated .operand 134)) none (.lit (.nat 1))), (.mk (.bind (.generated .operand 135)) none (.block (.mk [(.mk (.bind (.generated .operand 132)) none (.lit (.nat 1))), (.mk (.bind (.generated .operand 133)) none (.block (.mk [(.mk (.bind (.generated .operand 131)) none (.call (.function 25) [(.copy (.generated .binding 0))] false))] (.call (.runtime .lengthList) [(.move (.generated .operand 131))] false))))] (.call (.runtime .natAdd) [(.move (.generated .operand 132)), (.move (.generated .operand 133))] true))))] (.call (.runtime .natAdd) [(.move (.generated .operand 134)), (.move (.generated .operand 135))] false))) :: + (.function (.generated .function 18) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }] (.option (.pair .nat .nat)) (.mk [] (.construct .some [(.copy (.generated .binding 0))]))) :: + (.function (.generated .function 19) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := (.pair .nat .nat) }] .bool (.mk [(.mk (.bind (.generated .operand 137)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 136))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 136))))), (.mk (.bind (.generated .operand 138)) none (.copy (.generated .binding 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 137)), (.move (.generated .operand 138))] false) (.mk [(.mk (.bind (.generated .operand 140)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 139)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 139))))), (.mk (.bind (.generated .operand 141)) none (.lit (.nat 4)))] (.call (.runtime .natLe) [(.move (.generated .operand 140)), (.move (.generated .operand 141))] false)) (.mk [] (.lit (.bool false)))))) :: + (.function (.generated .function 20) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 2) }] (.fallible (.list (.adt 2))) (.mk [(.mk (.bind (.generated .holder 143)) none (.call (.function 26) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [(.bind (.generated .part 142)), .wild]) (.mk [] (.move (.generated .part 142))))]), (.construct (.adt 0 0) [])] true))] (.matchOn (.move (.generated .holder 143)) [(.mk .none (.mk [] (.succeed (.construct (.nil (.adt 2)) [])))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.succeed (.construct .cons [(.construct (.adt 2 0) [(.copy (.generated .binding 1)), (.block (.mk [(.mk (.bind (.generated .operand 145)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 144))]) (.mk [] (.move (.generated .part 144))))])), (.mk (.bind (.generated .operand 146)) none (.construct .cons [(.construct (.adt 0 0) []), (.construct (.nil (.adt 0)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 145)), (.move (.generated .operand 146))] false)))]), (.construct (.nil (.adt 2)) [])]))))]))) :: + (.function (.generated .function 21) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 2) }] (.fallible (.list (.adt 2))) (.mk [(.mk (.bind (.generated .holder 148)) none (.call (.function 26) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [(.bind (.generated .part 147)), .wild]) (.mk [] (.move (.generated .part 147))))]), (.construct (.adt 0 1) [])] true))] (.matchOn (.move (.generated .holder 148)) [(.mk .none (.mk [] (.succeed (.construct (.nil (.adt 2)) [])))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.succeed (.construct .cons [(.construct (.adt 2 0) [(.copy (.generated .binding 1)), (.block (.mk [(.mk (.bind (.generated .operand 150)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 149))]) (.mk [] (.move (.generated .part 149))))])), (.mk (.bind (.generated .operand 151)) none (.construct .cons [(.construct (.adt 0 1) []), (.construct (.nil (.adt 0)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 150)), (.move (.generated .operand 151))] false)))]), (.construct (.nil (.adt 2)) [])]))))]))) :: + (.function (.generated .function 22) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 2) }] (.fallible (.list (.adt 2))) (.mk [] (.call (.function 27) [(.construct (.closure 3 28) [(.clone (.generated .binding 0))]), (.construct (.nil (.adt 2)) []), (.call (.function 25) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [(.bind (.generated .part 152)), .wild]) (.mk [] (.move (.generated .part 152))))])] false)] false))) :: + (.function (.generated .function 23) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 2) }, { pattern := (.bind (.generated .binding 1)), type := (.pair (.list (.adt 2)) (.list (.pair .nat .nat))) }, { pattern := (.bind (.generated .binding 2)), type := (.list (.adt 2)) }] (.pair (.list (.adt 2)) (.list (.pair .nat .nat))) (.mk [(.mk (.bind (.generated .holder 153)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 153)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 23) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 154)) (some (.fn 2)) (.move (.generated .binding 0)))] (.apply (.generated .callee 154) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]))) :: + (.function (.generated .function 24) [{ pattern := (.bind (.generated .binding 0)), type := (.pair (.list (.adt 2)) (.list (.pair .nat .nat))) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 2) }] (.pair (.list (.adt 2)) (.list (.pair .nat .nat))) (.mk [] (.cond (.call (.function 29) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 155))]) none (.clone (.generated .binding 0)))] (.move (.generated .part 155)))), (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 2 0 [(.bind (.generated .part 156)), .wild]) (.mk [] (.move (.generated .part 156))))])] false) (.mk [] (.move (.generated .binding 0))) (.mk [] (.pair (.block (.mk [(.mk (.bind (.generated .operand 158)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 157)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 157))))), (.mk (.bind (.generated .operand 159)) none (.construct .cons [(.clone (.generated .binding 1)), (.construct (.nil (.adt 2)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 158)), (.move (.generated .operand 159))] false))) (.call (.function 12) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 160))]) none (.move (.generated .binding 0)))] (.move (.generated .part 160)))), (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 2 0 [(.bind (.generated .part 161)), .wild]) (.mk [] (.move (.generated .part 161))))])] false)))))) :: + (.function (.generated .function 25) [{ pattern := .wild, type := (.pair .nat .nat) }] (.list .nat) (.mk [] (.construct .cons [(.lit (.nat 1)), (.construct .cons [(.lit (.nat 2)), (.construct .cons [(.lit (.nat 3)), (.construct (.nil .nat) [])])])]))) :: + (.function (.generated .function 26) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 0) }] (.fallible (.option (.pair .nat .nat))) (.mk [(.mk (.bind (.generated .holder 162)) none (.move (.generated .binding 1)))] (.matchOn (.move (.generated .holder 162)) [(.mk (.adt 0 0 []) (.mk [] (.succeed (.call (.function 30) [(.copy (.generated .binding 0))] false)))), (.mk (.adt 0 1 []) (.mk [] (.succeed (.call (.function 31) [(.copy (.generated .binding 0))] false)))), (.mk (.adt 0 2 [(.bind (.generated .binding 2))]) (.mk [] (.call (.function 32) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] false)))]))) :: + (.function (.generated .function 27) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 3) }, { pattern := (.bind (.generated .binding 1)), type := (.list (.adt 2)) }, { pattern := (.bind (.generated .binding 2)), type := (.list .nat) }] (.fallible (.list (.adt 2))) (.mk [(.mk (.bind (.generated .holder 163)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 163)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 27) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 164)) (some (.fn 3)) (.move (.generated .binding 0)))] (.apply (.generated .callee 164) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]))) :: + (.function (.generated .function 28) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 2) }, { pattern := (.bind (.generated .binding 1)), type := (.list (.adt 2)) }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.fallible (.list (.adt 2))) (.mk [] (.call (.function 33) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 2))] false))) :: + (.function (.generated .function 29) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat .nat)) }, { pattern := (.bind (.generated .binding 1)), type := (.pair .nat .nat) }] .bool (.mk [(.mk (.bind (.generated .holder 165)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 165)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 168)) none (.block (.mk [(.mk (.bind (.generated .operand 166)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 167)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 166)), (.move (.generated .operand 167))] false))))] (.matchOn (.move (.generated .holder 168)) [(.mk (.ordering .less) (.mk [] (.lit (.bool false)))), (.mk (.ordering .same) (.mk [] (.lit (.bool true)))), (.mk (.ordering .more) (.mk [] (.call (.function 29) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]))) :: + (.function (.generated .function 30) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }] (.option (.pair .nat .nat)) (.mk [] (.cond (.call (.function 34) [(.copy (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 35) [(.copy (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.pair .nat .nat)) []))))) :: + (.function (.generated .function 31) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }] (.option (.pair .nat .nat)) (.mk [] (.cond (.call (.function 36) [(.copy (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 37) [(.copy (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.pair .nat .nat)) []))))) :: + (.function (.generated .function 32) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.option (.pair .nat .nat))) (.mk [] (.cond (.call (.function 38) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] true) (.mk [] (.succeed (.construct .some [(.call (.function 39) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] true)]))) (.mk [] (.succeed (.construct (.none (.pair .nat .nat)) [])))))) :: + (.function (.generated .function 33) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 2) }, { pattern := (.bind (.generated .binding 1)), type := (.list (.adt 2)) }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.fallible (.list (.adt 2))) (.mk [(.mk (.bind (.generated .holder 170)) none (.call (.function 26) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [(.bind (.generated .part 169)), .wild]) (.mk [] (.move (.generated .part 169))))]), (.construct (.adt 0 2) [(.copy (.generated .binding 2))])] true))] (.matchOn (.move (.generated .holder 170)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [(.mk (.bind (.generated .operand 174)) none (.move (.generated .binding 1))), (.mk (.bind (.generated .operand 175)) none (.construct .cons [(.construct (.adt 2 0) [(.copy (.generated .binding 3)), (.block (.mk [(.mk (.bind (.generated .operand 172)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 171))]) (.mk [] (.move (.generated .part 171))))])), (.mk (.bind (.generated .operand 173)) none (.construct .cons [(.construct (.adt 0 2) [(.copy (.generated .binding 2))]), (.construct (.nil (.adt 0)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 172)), (.move (.generated .operand 173))] false)))]), (.construct (.nil (.adt 2)) [])]))] (.succeed (.call (.runtime .appendList) [(.move (.generated .operand 174)), (.move (.generated .operand 175))] false))))]))) :: + (.function (.generated .function 34) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }] .bool (.mk [(.mk (.bind (.generated .operand 177)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 176)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 176))))), (.mk (.bind (.generated .operand 178)) none (.lit (.nat 4)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 177)), (.move (.generated .operand 178))] false) (.mk [(.mk (.bind (.generated .operand 180)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 179))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 179))))), (.mk (.bind (.generated .operand 181)) none (.lit (.nat 3)))] (.call (.runtime .natLe) [(.move (.generated .operand 180)), (.move (.generated .operand 181))] false)) (.mk [] (.lit (.bool false)))))) :: + (.function (.generated .function 35) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }] (.pair .nat .nat) (.mk [] (.pair (.lit (.nat 4)) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 182))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 182))))))) :: + (.function (.generated .function 36) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }] .bool (.mk [(.mk (.bind (.generated .operand 184)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 185)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 183))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 183)))))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 184)), (.move (.generated .operand 185))] false) (.mk [(.mk (.bind (.generated .operand 187)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 186)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 186))))), (.mk (.bind (.generated .operand 188)) none (.lit (.nat 4)))] (.call (.runtime .natLe) [(.move (.generated .operand 187)), (.move (.generated .operand 188))] false)) (.mk [] (.lit (.bool false)))))) :: + (.function (.generated .function 37) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }] (.pair .nat .nat) (.mk [] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 189)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 189)))) (.lit (.nat 0))))) :: + (.function (.generated .function 38) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .bool) (.mk [(.mk (.bind (.generated .operand 191)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 192)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 190)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 190)))))] (.cond (.call (.runtime .natLe) [(.move (.generated .operand 191)), (.move (.generated .operand 192))] false) (.mk [(.mk (.bind (.generated .operand 196)) none (.block (.mk [(.mk (.bind (.generated .operand 194)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 193))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 193))))), (.mk (.bind (.generated .operand 195)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 194)), (.move (.generated .operand 195))] true)))), (.mk (.bind (.generated .operand 197)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natLe) [(.move (.generated .operand 196)), (.move (.generated .operand 197))] false) (.mk [(.mk (.bind (.generated .operand 199)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 198)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 198))))), (.mk (.bind (.generated .operand 200)) none (.lit (.nat 4)))] (.succeed (.call (.runtime .natLe) [(.move (.generated .operand 199)), (.move (.generated .operand 200))] false))) (.mk [] (.succeed (.lit (.bool false)))))) (.mk [] (.succeed (.lit (.bool false))))))) :: + (.function (.generated .function 39) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.pair .nat .nat)) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 202)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 201)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 201))))), (.mk (.bind (.generated .operand 203)) none (.copy (.generated .binding 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 202)), (.move (.generated .operand 203))] false))) (.block (.mk [(.mk (.bind (.generated .operand 205)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 204))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 204))))), (.mk (.bind (.generated .operand 206)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 205)), (.move (.generated .operand 206))] true))))))) :: + []) } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [(([(.adt 1)], (.option (.adt 1))), true), (([(.list (.adt 2)), (.adt 2)], (.list (.adt 2))), true), (([(.pair (.list (.adt 2)) (.list (.pair .nat .nat))), (.adt 2)], (.pair (.list (.adt 2)) (.list (.pair .nat .nat)))), false), (([(.list (.adt 2)), .nat], (.list (.adt 2))), true)] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.call (.function 1) [(.copy (.generated .binding 0))] true))], (.matchOn (.move (.generated .holder 1)) [(.mk (.ok (.bind (.generated .binding 1))) (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.copy (.generated .binding 1)))] (.succeed (.move (.generated .part 2))))), (.mk (.err .wild) (.mk [] (.succeed (.lit (.nat 9)))))]), [(0, .nat, (some 0))], rfl, rfl, + (Corr.matchArms (st := (.result (.pair .nat .nat) (.pair .bool .bool))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.pair .nat .nat), (some 1)), (0, .nat, (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.copy (.generated .binding 1)))]) (tail := (.succeed (.move (.generated .part 2)))) (Corr.mCons (Γ' := [(2, (.pair .bool .bool), none), (0, .nat, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.lit (.nat 9)))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl)))) rfl rfl rfl (Corr.fOfB (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl))) rfl rfl rfl)⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 3)) none (.call (.function 2) [(.copy (.generated .binding 0))] true))], (.matchOn (.move (.generated .holder 3)) [(.mk (.ok (.bind (.generated .binding 1))) (.mk [] (.succeed (.construct (.ok (.pair .nat .nat) (.pair .bool .bool)) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 4)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 4))))])))), (.mk (.err (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.copy (.generated .binding 2))]))))]), [(0, .nat, (some 0))], rfl, rfl, + (Corr.matchArms (st := (.result (.pair (.pair .nat .nat) (.list (.adt 0))) (.pair .bool .bool))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.pair (.pair .nat .nat) (.list (.adt 0))), (some 1)), (0, .nat, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct (.ok (.pair .nat .nat) (.pair .bool .bool)) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 4)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 4))))]))) (Corr.mCons (Γ' := [(2, (.pair .bool .bool), (some 2)), (0, .nat, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.copy (.generated .binding 2))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.pair .nat .nat)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 4)), .wild]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 4))) (Corr.first (ta := (.pair .nat .nat)) (tb := (.list (.adt 0))) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl))) rfl rfl rfl)⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some (.pair (.adt 1) .bool)) (.call (.function 3) [(.copy (.generated .binding 0))] true)), (.mk (.bind (.generated .holder 8)) none (.block (.mk [(.mk (.bind (.generated .holder 7)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 6)), .wild]) none (.clone (.generated .binding 1)))] (.move (.generated .part 6)))))] (.matchOn (.move (.generated .holder 7)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 5)), .wild, .wild]) (.mk [] (.move (.generated .part 5))))]))))], (.matchOn (.move (.generated .holder 8)) [(.mk .none (.mk [] (.succeed (.construct (.err (.pair (.pair .nat .nat) (.list (.adt 0))) (.pair .bool .bool)) [(.call (.function 4) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 13))]) none (.move (.generated .binding 1)))] (.move (.generated .part 13)))), (.block (.mk [(.mk (.bind (.generated .holder 16)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 15)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 15)))))] (.matchOn (.move (.generated .holder 16)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 14)), .wild]) (.mk [] (.move (.generated .part 14))))])))] false)])))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct (.ok (.pair (.pair .nat .nat) (.list (.adt 0))) (.pair .bool .bool)) [(.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 9)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 9)))) (.block (.mk [(.mk (.bind (.generated .holder 12)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 11))]) none (.move (.generated .binding 2)))] (.move (.generated .part 11)))))] (.matchOn (.move (.generated .holder 12)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 10))]) (.mk [] (.move (.generated .part 10))))]))))]))))]), [(0, .nat, (some 0))], rfl, rfl, + (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.matchArms (st := (.option (.pair (.pair .nat .nat) (.adt 2)))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 7)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 6)), .wild]) none (.clone (.generated .binding 1)))] (.move (.generated .part 6)))))]) (tail := (.matchOn (.move (.generated .holder 7)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 5)), .wild, .wild]) (.mk [] (.move (.generated .part 5))))])) (Corr.fieldHeld (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 5))) (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 6)), .wild]) none (.clone (.generated .binding 1)))]) (tail := (.move (.generated .part 6))) (Corr.first (ta := (.adt 1)) (tb := .bool) (Corr.var rfl rfl) rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.pair (.adt 1) .bool), (some 1)), (0, .nat, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.construct (.err (.pair (.pair .nat .nat) (.list (.adt 0))) (.pair .bool .bool)) [(.call (.function 4) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 13))]) none (.move (.generated .binding 1)))] (.move (.generated .part 13)))), (.block (.mk [(.mk (.bind (.generated .holder 16)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 15)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 15)))))] (.matchOn (.move (.generated .holder 16)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 14)), .wild]) (.mk [] (.move (.generated .part 14))))])))] false)]))) (Corr.mCons (Γ' := [(2, (.pair (.pair .nat .nat) (.adt 2)), (some 2)), (1, (.pair (.adt 1) .bool), (some 1)), (0, .nat, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct (.ok (.pair (.pair .nat .nat) (.list (.adt 0))) (.pair .bool .bool)) [(.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 9)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 9)))) (.block (.mk [(.mk (.bind (.generated .holder 12)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 11))]) none (.move (.generated .binding 2)))] (.move (.generated .part 11)))))] (.matchOn (.move (.generated .holder 12)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 10))]) (.mk [] (.move (.generated .part 10))))]))))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.pair (.pair .nat .nat) (.list (.adt 0)))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 9)), .wild]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 9))) (Corr.first (ta := (.pair .nat .nat)) (tb := (.adt 2)) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 12)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 11))]) none (.move (.generated .binding 2)))] (.move (.generated .part 11)))))]) (tail := (.matchOn (.move (.generated .holder 12)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 10))]) (.mk [] (.move (.generated .part 10))))])) (Corr.fieldHeld (ts := [(.pair .nat .nat), (.list (.adt 0))]) (rd := (.move (.generated .part 10))) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 11))]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 11))) (Corr.second (ta := (.pair .nat .nat)) (tb := (.adt 2)) (Corr.var rfl rfl) rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bool, .bool]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 13))]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 13))) (Corr.second (ta := (.adt 1)) (tb := .bool) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 16)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 15)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 15)))))]) (tail := (.matchOn (.move (.generated .holder 16)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 14)), .wild]) (.mk [] (.move (.generated .part 14))))])) (Corr.fieldHeld (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 14))) (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 15)), .wild]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 15))) (Corr.first (ta := (.adt 1)) (tb := .bool) (Corr.var rfl rfl) rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl))) rfl rfl rfl))⟩⟩ + +theorem fun3 : FunOK program krate flags 3 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 5) [(.construct (.closure 0 6) [(.copy (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 18)) none (.lit (.nat 8)))] (.call (.runtime .natMul) [(.move (.generated .operand 17)), (.move (.generated .operand 18))] true))), (.call (.function 7) [(.copy (.generated .binding 0))] true)] false), [(0, .nat, (some 0))], rfl, rfl, + (Corr.callF (ts := [(.fn [(.adt 1)] (.option (.adt 1))), .nat, (.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [.nat]) (mask := [false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 18)) none (.lit (.nat 8)))]) (tail := (.call (.runtime .natMul) [(.move (.generated .operand 17)), (.move (.generated .operand 18))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl)⟩⟩ + +theorem fun4 : FunOK program krate flags 4 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.cond (.copy (.generated .binding 0)) (.mk [(.mk (.bind (.generated .operand 19)) none (.copy (.generated .binding 1)))] (.call (.runtime .boolNot) [(.move (.generated .operand 19))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.pair (.lit (.bool false)) (.lit (.bool true)))) (.mk [] (.pair (.lit (.bool false)) (.lit (.bool false))))), [(1, .bool, (some 1)), (0, .bool, (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.cond (.copy (.generated .binding 0)) (.mk [(.mk (.bind (.generated .operand 19)) none (.copy (.generated .binding 1)))] (.call (.runtime .boolNot) [(.move (.generated .operand 19))] false)) (.mk [] (.lit (.bool false))))) (lk := []) (Corr.cond (lc := []) (ce := (.copy (.generated .binding 0))) (lk := []) (Corr.bOfE (Corr.var rfl rfl)) (Corr.kIf (la := [(.mk (.bind (.generated .operand 19)) none (.copy (.generated .binding 1)))]) (ta := (.call (.runtime .boolNot) [(.move (.generated .operand 19))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.bool]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.kIf (la := []) (ta := (.pair (.lit (.bool false)) (.lit (.bool true)))) (lb := []) (tb := (.pair (.lit (.bool false)) (.lit (.bool false)))) (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))))) (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))))))⟩⟩ + +theorem fun5 : FunOK program krate flags 5 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 20)) none (.copy (.generated .binding 1)))], (.cond (.isZero (.generated .holder 20)) (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 20))), (.mk (.bind (.generated .holder 22)) none (.block (.mk [(.mk (.bind (.generated .callee 21)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 21) [(.clone (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 22)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 5) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))]))), [(2, (.adt 1), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.adt 1)] (.option (.adt 1))), (some 0))], rfl, rfl, + (Corr.matchNat (sl := (some 3)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (lb := [(.mk (.bind (.generated .holder 22)) none (.block (.mk [(.mk (.bind (.generated .callee 21)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 21) [(.clone (.generated .binding 2))] true))))]) (tb := (.matchOn (.move (.generated .holder 22)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 5) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))])) (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))))) (Corr.matchArms (st := (.option (.adt 1))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 21)) (some (.fn 0)) (.clone (.generated .binding 0)))]) (tail := (.apply (.generated .callee 21) [(.clone (.generated .binding 2))] true)) (Corr.apply (ps := [(.adt 1)]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (2, (.adt 1), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.adt 1)] (.option (.adt 1))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true))))) (Corr.mCons (Γ' := [(4, (.adt 1), (some 4)), (3, .nat, (some 3)), (2, (.adt 1), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.adt 1)] (.option (.adt 1))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 5) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.adt 1)] (.option (.adt 1))), .nat, (.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))))))) rfl rfl rfl)))⟩⟩ + +theorem fun6 : FunOK program krate flags 6 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 8) [(.copy (.generated .binding 0)), (.move (.generated .binding 1))] false), [(1, (.adt 1), (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.callF (ts := [.nat, (.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)⟩⟩ + +theorem fun7 : FunOK program krate flags 7 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some (.list (.adt 2))) (.call (.function 9) [(.construct (.closure 1 10) [(.copy (.generated .binding 0))]), (.construct (.nil (.adt 2)) []), (.construct .cons [(.construct (.adt 2 0) [(.call (.function 11) [(.copy (.generated .binding 0))] false), (.construct (.nil (.adt 0)) [])]), (.construct (.nil (.adt 2)) [])])] true))], (.succeed (.construct (.adt 1 0) [(.clone (.generated .binding 1)), (.call (.function 12) [(.construct (.nil (.pair .nat .nat)) []), (.call (.function 11) [(.copy (.generated .binding 0))] false)] false), (.construct (.none (.pair (.pair .nat .nat) (.adt 2))) []), (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 0)))] (.call (.runtime .natAdd) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] true)))), (.mk (.bind (.generated .operand 26)) none (.lit (.nat 1)))] (.call (.runtime .natLt) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))), (.construct (.adt 3 0) [(.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.move (.generated .binding 1)))] (.call (.runtime .lengthList) [(.move (.generated .operand 27))] false)))])])), [(0, .nat, (some 0))], rfl, rfl, + (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.list (.adt 2)), (.adt 2)] (.list (.adt 2))), (.list (.adt 2)), (.list (.adt 2))]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [.nat]) (mask := [false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.adt 2), (.list (.adt 2))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.pair .nat .nat), (.list (.adt 0))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl (Corr.fOfB (Corr.build (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (mask := [false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .nat .nat)), (.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 25)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 0)))] (.call (.runtime .natAdd) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] true)))), (.mk (.bind (.generated .operand 26)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natLt) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 0)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 27)) none (.move (.generated .binding 1)))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 27))] false)) (Corr.prim (ts := [(.list (.adt 2))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))))))) rfl)) (Corr.lNil))))))) rfl)))⟩⟩ + +theorem fun8 : FunOK program krate flags 8 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 29)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 28)), .wild, .wild]) (.mk [] (.move (.generated .part 28))))]))], (.matchOn (.move (.generated .holder 29)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 31)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [(.bind (.generated .part 30)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 30))))]))] (.matchOn (.uncons (.generated .holder 31)) [(.mk .none (.mk [] (.succeed (.construct (.none (.adt 1)) [])))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [(.mk (.bind (.generated .holder 33)) none (.call (.function 13) [(.copy (.generated .binding 0)), (.matchOn (.clone (.generated .binding 3)) [(.mk (.adt 2 0 [(.bind (.generated .part 32)), .wild]) (.mk [] (.move (.generated .part 32))))])] false))] (.matchOn (.move (.generated .holder 33)) [(.mk .none (.mk [(.mk (.bind (.generated .binding 6)) (some (.list (.adt 2))) (.call (.function 14) [(.clone (.generated .binding 3))] true)), (.mk (.bind (.generated .binding 7)) (some (.pair (.list (.adt 2)) (.list (.pair .nat .nat)))) (.call (.function 15) [(.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 58)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 58))))]), (.clone (.generated .binding 6))] false)), (.mk (.bind (.generated .binding 8)) (some (.list (.adt 2))) (.block (.mk [(.mk (.bind (.generated .operand 60)) none (.move (.generated .binding 4))), (.mk (.bind (.generated .operand 61)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 59)), .wild]) none (.move (.generated .binding 7)))] (.move (.generated .part 59)))))] (.call (.runtime .appendList) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] false)))), (.mk (.bind (.generated .binding 9)) (some (.list (.adt 2))) (.call (.function 9) [(.construct (.closure 1 16) [(.copy (.generated .binding 0))]), (.construct (.nil (.adt 2)) []), (.clone (.generated .binding 8))] true))] (.succeed (.construct .some [(.construct (.adt 1 0) [(.clone (.generated .binding 9)), (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 62))]) none (.move (.generated .binding 7)))] (.move (.generated .part 62)))), (.construct (.none (.pair (.pair .nat .nat) (.adt 2))) []), (.cond (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 63)), .wild]) (.mk [] (.move (.generated .part 63))))]) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 67)) none (.block (.mk [(.mk (.bind (.generated .operand 64)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 65)) none (.copy (.generated .binding 0)))] (.call (.runtime .natAdd) [(.move (.generated .operand 64)), (.move (.generated .operand 65))] true)))), (.mk (.bind (.generated .operand 68)) none (.block (.mk [(.mk (.bind (.generated .operand 66)) none (.move (.generated .binding 8)))] (.call (.runtime .lengthList) [(.move (.generated .operand 66))] false))))] (.call (.runtime .natLt) [(.move (.generated .operand 67)), (.move (.generated .operand 68))] false))), (.construct (.adt 3 0) [(.block (.mk [(.mk (.bind (.generated .operand 72)) none (.block (.mk [(.mk (.bind (.generated .holder 71)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 70))]) (.mk [] (.move (.generated .part 70))))]))] (.matchOn (.move (.generated .holder 71)) [(.mk (.adt 3 0 [(.bind (.generated .part 69)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 69))))])))), (.mk (.bind (.generated .operand 73)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 72)), (.move (.generated .operand 73))] true))), (.block (.mk [(.mk (.bind (.generated .operand 78)) none (.block (.mk [(.mk (.bind (.generated .holder 76)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 75))]) (.mk [] (.move (.generated .part 75))))]))] (.matchOn (.move (.generated .holder 76)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 74)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 74))))])))), (.mk (.bind (.generated .operand 79)) none (.call (.function 17) [(.matchOn (.move (.generated .binding 3)) [(.mk (.adt 2 0 [(.bind (.generated .part 77)), .wild]) (.mk [] (.move (.generated .part 77))))])] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 78)), (.move (.generated .operand 79))] true))), (.block (.mk [(.mk (.bind (.generated .operand 84)) none (.block (.mk [(.mk (.bind (.generated .holder 82)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))]))] (.matchOn (.move (.generated .holder 82)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 80)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 80))))])))), (.mk (.bind (.generated .operand 85)) none (.block (.mk [(.mk (.bind (.generated .operand 83)) none (.move (.generated .binding 6)))] (.call (.runtime .lengthList) [(.move (.generated .operand 83))] false))))] (.call (.runtime .natAdd) [(.move (.generated .operand 84)), (.move (.generated .operand 85))] true))), (.block (.mk [(.mk (.bind (.generated .operand 89)) none (.block (.mk [(.mk (.bind (.generated .holder 88)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 87))]) (.mk [] (.move (.generated .part 87))))]))] (.matchOn (.move (.generated .holder 88)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 86)), .wild, .wild]) (.mk [] (.move (.generated .part 86))))])))), (.mk (.bind (.generated .operand 90)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 89)), (.move (.generated .operand 90))] true))), (.block (.mk [(.mk (.bind (.generated .operand 94)) none (.block (.mk [(.mk (.bind (.generated .holder 93)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 92))]) (.mk [] (.move (.generated .part 92))))]))] (.matchOn (.move (.generated .holder 93)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 91)), .wild]) (.mk [] (.move (.generated .part 91))))])))), (.mk (.bind (.generated .operand 95)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 94)), (.move (.generated .operand 95))] true))), (.block (.mk [(.mk (.bind (.generated .operand 100)) none (.block (.mk [(.mk (.bind (.generated .holder 98)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 97))]) (.mk [] (.move (.generated .part 97))))]))] (.matchOn (.move (.generated .holder 98)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 96))]) (.mk [] (.move (.generated .part 96))))])))), (.mk (.bind (.generated .operand 101)) none (.block (.mk [(.mk (.bind (.generated .operand 99)) none (.clone (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 99))] false))))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 100)), (.move (.generated .operand 101))] false) (.mk [(.mk (.bind (.generated .operand 102)) none (.move (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 102))] false)) (.mk [(.mk (.bind (.generated .holder 105)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 104))]) (.mk [] (.move (.generated .part 104))))]))] (.matchOn (.move (.generated .holder 105)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 103))]) (.mk [] (.move (.generated .part 103))))])))))])])])))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.succeed (.construct .some [(.construct (.adt 1 0) [(.move (.generated .binding 4)), (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 34)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 34))))]), (.construct .some [(.pair (.copy (.generated .binding 5)) (.move (.generated .binding 3)))]), (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 35)), .wild]) (.mk [] (.move (.generated .part 35))))]), (.construct (.adt 3 0) [(.block (.mk [(.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.bind (.generated .holder 38)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 37))]) (.mk [] (.move (.generated .part 37))))]))] (.matchOn (.move (.generated .holder 38)) [(.mk (.adt 3 0 [(.bind (.generated .part 36)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 36))))])))), (.mk (.bind (.generated .operand 40)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] true))), (.block (.mk [(.mk (.bind (.generated .holder 43)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 42))]) (.mk [] (.move (.generated .part 42))))]))] (.matchOn (.move (.generated .holder 43)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 41)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 41))))]))), (.block (.mk [(.mk (.bind (.generated .holder 46)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 45))]) (.mk [] (.move (.generated .part 45))))]))] (.matchOn (.move (.generated .holder 46)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 44)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 44))))]))), (.block (.mk [(.mk (.bind (.generated .holder 49)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 48))]) (.mk [] (.move (.generated .part 48))))]))] (.matchOn (.move (.generated .holder 49)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 47)), .wild, .wild]) (.mk [] (.move (.generated .part 47))))]))), (.block (.mk [(.mk (.bind (.generated .operand 53)) none (.block (.mk [(.mk (.bind (.generated .holder 52)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 51))]) (.mk [] (.move (.generated .part 51))))]))] (.matchOn (.move (.generated .holder 52)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 50)), .wild]) (.mk [] (.move (.generated .part 50))))])))), (.mk (.bind (.generated .operand 54)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] true))), (.block (.mk [(.mk (.bind (.generated .holder 57)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 56))]) (.mk [] (.move (.generated .part 56))))]))] (.matchOn (.move (.generated .holder 57)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 55))]) (.mk [] (.move (.generated .part 55))))])))])])]))))])))]))), (.mk (.some .wild) (.mk [] (.succeed (.construct (.none (.adt 1)) []))))]), [(1, (.adt 1), (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option (.pair (.pair .nat .nat) (.adt 2)))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 28))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.adt 1), (some 1)), (0, .nat, (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 31)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [(.bind (.generated .part 30)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 30))))]))]) (tail := (.matchOn (.uncons (.generated .holder 31)) [(.mk .none (.mk [] (.succeed (.construct (.none (.adt 1)) [])))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [(.mk (.bind (.generated .holder 33)) none (.call (.function 13) [(.copy (.generated .binding 0)), (.matchOn (.clone (.generated .binding 3)) [(.mk (.adt 2 0 [(.bind (.generated .part 32)), .wild]) (.mk [] (.move (.generated .part 32))))])] false))] (.matchOn (.move (.generated .holder 33)) [(.mk .none (.mk [(.mk (.bind (.generated .binding 6)) (some (.list (.adt 2))) (.call (.function 14) [(.clone (.generated .binding 3))] true)), (.mk (.bind (.generated .binding 7)) (some (.pair (.list (.adt 2)) (.list (.pair .nat .nat)))) (.call (.function 15) [(.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 58)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 58))))]), (.clone (.generated .binding 6))] false)), (.mk (.bind (.generated .binding 8)) (some (.list (.adt 2))) (.block (.mk [(.mk (.bind (.generated .operand 60)) none (.move (.generated .binding 4))), (.mk (.bind (.generated .operand 61)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 59)), .wild]) none (.move (.generated .binding 7)))] (.move (.generated .part 59)))))] (.call (.runtime .appendList) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] false)))), (.mk (.bind (.generated .binding 9)) (some (.list (.adt 2))) (.call (.function 9) [(.construct (.closure 1 16) [(.copy (.generated .binding 0))]), (.construct (.nil (.adt 2)) []), (.clone (.generated .binding 8))] true))] (.succeed (.construct .some [(.construct (.adt 1 0) [(.clone (.generated .binding 9)), (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 62))]) none (.move (.generated .binding 7)))] (.move (.generated .part 62)))), (.construct (.none (.pair (.pair .nat .nat) (.adt 2))) []), (.cond (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 63)), .wild]) (.mk [] (.move (.generated .part 63))))]) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 67)) none (.block (.mk [(.mk (.bind (.generated .operand 64)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 65)) none (.copy (.generated .binding 0)))] (.call (.runtime .natAdd) [(.move (.generated .operand 64)), (.move (.generated .operand 65))] true)))), (.mk (.bind (.generated .operand 68)) none (.block (.mk [(.mk (.bind (.generated .operand 66)) none (.move (.generated .binding 8)))] (.call (.runtime .lengthList) [(.move (.generated .operand 66))] false))))] (.call (.runtime .natLt) [(.move (.generated .operand 67)), (.move (.generated .operand 68))] false))), (.construct (.adt 3 0) [(.block (.mk [(.mk (.bind (.generated .operand 72)) none (.block (.mk [(.mk (.bind (.generated .holder 71)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 70))]) (.mk [] (.move (.generated .part 70))))]))] (.matchOn (.move (.generated .holder 71)) [(.mk (.adt 3 0 [(.bind (.generated .part 69)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 69))))])))), (.mk (.bind (.generated .operand 73)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 72)), (.move (.generated .operand 73))] true))), (.block (.mk [(.mk (.bind (.generated .operand 78)) none (.block (.mk [(.mk (.bind (.generated .holder 76)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 75))]) (.mk [] (.move (.generated .part 75))))]))] (.matchOn (.move (.generated .holder 76)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 74)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 74))))])))), (.mk (.bind (.generated .operand 79)) none (.call (.function 17) [(.matchOn (.move (.generated .binding 3)) [(.mk (.adt 2 0 [(.bind (.generated .part 77)), .wild]) (.mk [] (.move (.generated .part 77))))])] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 78)), (.move (.generated .operand 79))] true))), (.block (.mk [(.mk (.bind (.generated .operand 84)) none (.block (.mk [(.mk (.bind (.generated .holder 82)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))]))] (.matchOn (.move (.generated .holder 82)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 80)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 80))))])))), (.mk (.bind (.generated .operand 85)) none (.block (.mk [(.mk (.bind (.generated .operand 83)) none (.move (.generated .binding 6)))] (.call (.runtime .lengthList) [(.move (.generated .operand 83))] false))))] (.call (.runtime .natAdd) [(.move (.generated .operand 84)), (.move (.generated .operand 85))] true))), (.block (.mk [(.mk (.bind (.generated .operand 89)) none (.block (.mk [(.mk (.bind (.generated .holder 88)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 87))]) (.mk [] (.move (.generated .part 87))))]))] (.matchOn (.move (.generated .holder 88)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 86)), .wild, .wild]) (.mk [] (.move (.generated .part 86))))])))), (.mk (.bind (.generated .operand 90)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 89)), (.move (.generated .operand 90))] true))), (.block (.mk [(.mk (.bind (.generated .operand 94)) none (.block (.mk [(.mk (.bind (.generated .holder 93)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 92))]) (.mk [] (.move (.generated .part 92))))]))] (.matchOn (.move (.generated .holder 93)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 91)), .wild]) (.mk [] (.move (.generated .part 91))))])))), (.mk (.bind (.generated .operand 95)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 94)), (.move (.generated .operand 95))] true))), (.block (.mk [(.mk (.bind (.generated .operand 100)) none (.block (.mk [(.mk (.bind (.generated .holder 98)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 97))]) (.mk [] (.move (.generated .part 97))))]))] (.matchOn (.move (.generated .holder 98)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 96))]) (.mk [] (.move (.generated .part 96))))])))), (.mk (.bind (.generated .operand 101)) none (.block (.mk [(.mk (.bind (.generated .operand 99)) none (.clone (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 99))] false))))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 100)), (.move (.generated .operand 101))] false) (.mk [(.mk (.bind (.generated .operand 102)) none (.move (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 102))] false)) (.mk [(.mk (.bind (.generated .holder 105)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 104))]) (.mk [] (.move (.generated .part 104))))]))] (.matchOn (.move (.generated .holder 105)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 103))]) (.mk [] (.move (.generated .part 103))))])))))])])])))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.succeed (.construct .some [(.construct (.adt 1 0) [(.move (.generated .binding 4)), (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 34)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 34))))]), (.construct .some [(.pair (.copy (.generated .binding 5)) (.move (.generated .binding 3)))]), (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 35)), .wild]) (.mk [] (.move (.generated .part 35))))]), (.construct (.adt 3 0) [(.block (.mk [(.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.bind (.generated .holder 38)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 37))]) (.mk [] (.move (.generated .part 37))))]))] (.matchOn (.move (.generated .holder 38)) [(.mk (.adt 3 0 [(.bind (.generated .part 36)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 36))))])))), (.mk (.bind (.generated .operand 40)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] true))), (.block (.mk [(.mk (.bind (.generated .holder 43)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 42))]) (.mk [] (.move (.generated .part 42))))]))] (.matchOn (.move (.generated .holder 43)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 41)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 41))))]))), (.block (.mk [(.mk (.bind (.generated .holder 46)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 45))]) (.mk [] (.move (.generated .part 45))))]))] (.matchOn (.move (.generated .holder 46)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 44)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 44))))]))), (.block (.mk [(.mk (.bind (.generated .holder 49)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 48))]) (.mk [] (.move (.generated .part 48))))]))] (.matchOn (.move (.generated .holder 49)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 47)), .wild, .wild]) (.mk [] (.move (.generated .part 47))))]))), (.block (.mk [(.mk (.bind (.generated .operand 53)) none (.block (.mk [(.mk (.bind (.generated .holder 52)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 51))]) (.mk [] (.move (.generated .part 51))))]))] (.matchOn (.move (.generated .holder 52)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 50)), .wild]) (.mk [] (.move (.generated .part 50))))])))), (.mk (.bind (.generated .operand 54)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] true))), (.block (.mk [(.mk (.bind (.generated .holder 57)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 56))]) (.mk [] (.move (.generated .part 56))))]))] (.matchOn (.move (.generated .holder 57)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 55))]) (.mk [] (.move (.generated .part 55))))])))])])]))))])))])) (Corr.mCons (Γ' := [(2, (.pair (.pair .nat .nat) (.adt 2)), none), (1, (.adt 1), (some 1)), (0, .nat, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct (.none (.adt 1)) []))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl (Corr.matchArms (st := (.list (.adt 2))) (U := []) (view := true) (idx := [0, 1]) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 30))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.adt 1), (some 1)), (0, .nat, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct (.none (.adt 1)) []))) (Corr.mCons (Γ' := [(4, (.list (.adt 2)), (some 4)), (3, (.adt 2), (some 3)), (1, (.adt 1), (some 1)), (0, .nat, (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 33)) none (.call (.function 13) [(.copy (.generated .binding 0)), (.matchOn (.clone (.generated .binding 3)) [(.mk (.adt 2 0 [(.bind (.generated .part 32)), .wild]) (.mk [] (.move (.generated .part 32))))])] false))]) (tail := (.matchOn (.move (.generated .holder 33)) [(.mk .none (.mk [(.mk (.bind (.generated .binding 6)) (some (.list (.adt 2))) (.call (.function 14) [(.clone (.generated .binding 3))] true)), (.mk (.bind (.generated .binding 7)) (some (.pair (.list (.adt 2)) (.list (.pair .nat .nat)))) (.call (.function 15) [(.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 58)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 58))))]), (.clone (.generated .binding 6))] false)), (.mk (.bind (.generated .binding 8)) (some (.list (.adt 2))) (.block (.mk [(.mk (.bind (.generated .operand 60)) none (.move (.generated .binding 4))), (.mk (.bind (.generated .operand 61)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 59)), .wild]) none (.move (.generated .binding 7)))] (.move (.generated .part 59)))))] (.call (.runtime .appendList) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] false)))), (.mk (.bind (.generated .binding 9)) (some (.list (.adt 2))) (.call (.function 9) [(.construct (.closure 1 16) [(.copy (.generated .binding 0))]), (.construct (.nil (.adt 2)) []), (.clone (.generated .binding 8))] true))] (.succeed (.construct .some [(.construct (.adt 1 0) [(.clone (.generated .binding 9)), (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 62))]) none (.move (.generated .binding 7)))] (.move (.generated .part 62)))), (.construct (.none (.pair (.pair .nat .nat) (.adt 2))) []), (.cond (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 63)), .wild]) (.mk [] (.move (.generated .part 63))))]) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 67)) none (.block (.mk [(.mk (.bind (.generated .operand 64)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 65)) none (.copy (.generated .binding 0)))] (.call (.runtime .natAdd) [(.move (.generated .operand 64)), (.move (.generated .operand 65))] true)))), (.mk (.bind (.generated .operand 68)) none (.block (.mk [(.mk (.bind (.generated .operand 66)) none (.move (.generated .binding 8)))] (.call (.runtime .lengthList) [(.move (.generated .operand 66))] false))))] (.call (.runtime .natLt) [(.move (.generated .operand 67)), (.move (.generated .operand 68))] false))), (.construct (.adt 3 0) [(.block (.mk [(.mk (.bind (.generated .operand 72)) none (.block (.mk [(.mk (.bind (.generated .holder 71)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 70))]) (.mk [] (.move (.generated .part 70))))]))] (.matchOn (.move (.generated .holder 71)) [(.mk (.adt 3 0 [(.bind (.generated .part 69)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 69))))])))), (.mk (.bind (.generated .operand 73)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 72)), (.move (.generated .operand 73))] true))), (.block (.mk [(.mk (.bind (.generated .operand 78)) none (.block (.mk [(.mk (.bind (.generated .holder 76)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 75))]) (.mk [] (.move (.generated .part 75))))]))] (.matchOn (.move (.generated .holder 76)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 74)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 74))))])))), (.mk (.bind (.generated .operand 79)) none (.call (.function 17) [(.matchOn (.move (.generated .binding 3)) [(.mk (.adt 2 0 [(.bind (.generated .part 77)), .wild]) (.mk [] (.move (.generated .part 77))))])] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 78)), (.move (.generated .operand 79))] true))), (.block (.mk [(.mk (.bind (.generated .operand 84)) none (.block (.mk [(.mk (.bind (.generated .holder 82)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))]))] (.matchOn (.move (.generated .holder 82)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 80)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 80))))])))), (.mk (.bind (.generated .operand 85)) none (.block (.mk [(.mk (.bind (.generated .operand 83)) none (.move (.generated .binding 6)))] (.call (.runtime .lengthList) [(.move (.generated .operand 83))] false))))] (.call (.runtime .natAdd) [(.move (.generated .operand 84)), (.move (.generated .operand 85))] true))), (.block (.mk [(.mk (.bind (.generated .operand 89)) none (.block (.mk [(.mk (.bind (.generated .holder 88)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 87))]) (.mk [] (.move (.generated .part 87))))]))] (.matchOn (.move (.generated .holder 88)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 86)), .wild, .wild]) (.mk [] (.move (.generated .part 86))))])))), (.mk (.bind (.generated .operand 90)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 89)), (.move (.generated .operand 90))] true))), (.block (.mk [(.mk (.bind (.generated .operand 94)) none (.block (.mk [(.mk (.bind (.generated .holder 93)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 92))]) (.mk [] (.move (.generated .part 92))))]))] (.matchOn (.move (.generated .holder 93)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 91)), .wild]) (.mk [] (.move (.generated .part 91))))])))), (.mk (.bind (.generated .operand 95)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 94)), (.move (.generated .operand 95))] true))), (.block (.mk [(.mk (.bind (.generated .operand 100)) none (.block (.mk [(.mk (.bind (.generated .holder 98)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 97))]) (.mk [] (.move (.generated .part 97))))]))] (.matchOn (.move (.generated .holder 98)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 96))]) (.mk [] (.move (.generated .part 96))))])))), (.mk (.bind (.generated .operand 101)) none (.block (.mk [(.mk (.bind (.generated .operand 99)) none (.clone (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 99))] false))))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 100)), (.move (.generated .operand 101))] false) (.mk [(.mk (.bind (.generated .operand 102)) none (.move (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 102))] false)) (.mk [(.mk (.bind (.generated .holder 105)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 104))]) (.mk [] (.move (.generated .part 104))))]))] (.matchOn (.move (.generated .holder 105)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 103))]) (.mk [] (.move (.generated .part 103))))])))))])])])))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.succeed (.construct .some [(.construct (.adt 1 0) [(.move (.generated .binding 4)), (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 34)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 34))))]), (.construct .some [(.pair (.copy (.generated .binding 5)) (.move (.generated .binding 3)))]), (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 35)), .wild]) (.mk [] (.move (.generated .part 35))))]), (.construct (.adt 3 0) [(.block (.mk [(.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.bind (.generated .holder 38)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 37))]) (.mk [] (.move (.generated .part 37))))]))] (.matchOn (.move (.generated .holder 38)) [(.mk (.adt 3 0 [(.bind (.generated .part 36)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 36))))])))), (.mk (.bind (.generated .operand 40)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] true))), (.block (.mk [(.mk (.bind (.generated .holder 43)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 42))]) (.mk [] (.move (.generated .part 42))))]))] (.matchOn (.move (.generated .holder 43)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 41)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 41))))]))), (.block (.mk [(.mk (.bind (.generated .holder 46)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 45))]) (.mk [] (.move (.generated .part 45))))]))] (.matchOn (.move (.generated .holder 46)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 44)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 44))))]))), (.block (.mk [(.mk (.bind (.generated .holder 49)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 48))]) (.mk [] (.move (.generated .part 48))))]))] (.matchOn (.move (.generated .holder 49)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 47)), .wild, .wild]) (.mk [] (.move (.generated .part 47))))]))), (.block (.mk [(.mk (.bind (.generated .operand 53)) none (.block (.mk [(.mk (.bind (.generated .holder 52)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 51))]) (.mk [] (.move (.generated .part 51))))]))] (.matchOn (.move (.generated .holder 52)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 50)), .wild]) (.mk [] (.move (.generated .part 50))))])))), (.mk (.bind (.generated .operand 54)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] true))), (.block (.mk [(.mk (.bind (.generated .holder 57)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 56))]) (.mk [] (.move (.generated .part 56))))]))] (.matchOn (.move (.generated .holder 57)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 55))]) (.mk [] (.move (.generated .part 55))))])))])])]))))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := (.option (.pair .nat .nat))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.nat, (.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.pair .nat .nat), (.list (.adt 0))]) (rd := (.move (.generated .part 32))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.list (.adt 2)), (some 4)), (3, (.adt 2), (some 3)), (1, (.adt 1), (some 1)), (0, .nat, (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .binding 6)) (some (.list (.adt 2))) (.call (.function 14) [(.clone (.generated .binding 3))] true)), (.mk (.bind (.generated .binding 7)) (some (.pair (.list (.adt 2)) (.list (.pair .nat .nat)))) (.call (.function 15) [(.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 58)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 58))))]), (.clone (.generated .binding 6))] false)), (.mk (.bind (.generated .binding 8)) (some (.list (.adt 2))) (.block (.mk [(.mk (.bind (.generated .operand 60)) none (.move (.generated .binding 4))), (.mk (.bind (.generated .operand 61)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 59)), .wild]) none (.move (.generated .binding 7)))] (.move (.generated .part 59)))))] (.call (.runtime .appendList) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] false)))), (.mk (.bind (.generated .binding 9)) (some (.list (.adt 2))) (.call (.function 9) [(.construct (.closure 1 16) [(.copy (.generated .binding 0))]), (.construct (.nil (.adt 2)) []), (.clone (.generated .binding 8))] true))]) (tail := (.succeed (.construct .some [(.construct (.adt 1 0) [(.clone (.generated .binding 9)), (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 62))]) none (.move (.generated .binding 7)))] (.move (.generated .part 62)))), (.construct (.none (.pair (.pair .nat .nat) (.adt 2))) []), (.cond (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 63)), .wild]) (.mk [] (.move (.generated .part 63))))]) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 67)) none (.block (.mk [(.mk (.bind (.generated .operand 64)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 65)) none (.copy (.generated .binding 0)))] (.call (.runtime .natAdd) [(.move (.generated .operand 64)), (.move (.generated .operand 65))] true)))), (.mk (.bind (.generated .operand 68)) none (.block (.mk [(.mk (.bind (.generated .operand 66)) none (.move (.generated .binding 8)))] (.call (.runtime .lengthList) [(.move (.generated .operand 66))] false))))] (.call (.runtime .natLt) [(.move (.generated .operand 67)), (.move (.generated .operand 68))] false))), (.construct (.adt 3 0) [(.block (.mk [(.mk (.bind (.generated .operand 72)) none (.block (.mk [(.mk (.bind (.generated .holder 71)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 70))]) (.mk [] (.move (.generated .part 70))))]))] (.matchOn (.move (.generated .holder 71)) [(.mk (.adt 3 0 [(.bind (.generated .part 69)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 69))))])))), (.mk (.bind (.generated .operand 73)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 72)), (.move (.generated .operand 73))] true))), (.block (.mk [(.mk (.bind (.generated .operand 78)) none (.block (.mk [(.mk (.bind (.generated .holder 76)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 75))]) (.mk [] (.move (.generated .part 75))))]))] (.matchOn (.move (.generated .holder 76)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 74)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 74))))])))), (.mk (.bind (.generated .operand 79)) none (.call (.function 17) [(.matchOn (.move (.generated .binding 3)) [(.mk (.adt 2 0 [(.bind (.generated .part 77)), .wild]) (.mk [] (.move (.generated .part 77))))])] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 78)), (.move (.generated .operand 79))] true))), (.block (.mk [(.mk (.bind (.generated .operand 84)) none (.block (.mk [(.mk (.bind (.generated .holder 82)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))]))] (.matchOn (.move (.generated .holder 82)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 80)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 80))))])))), (.mk (.bind (.generated .operand 85)) none (.block (.mk [(.mk (.bind (.generated .operand 83)) none (.move (.generated .binding 6)))] (.call (.runtime .lengthList) [(.move (.generated .operand 83))] false))))] (.call (.runtime .natAdd) [(.move (.generated .operand 84)), (.move (.generated .operand 85))] true))), (.block (.mk [(.mk (.bind (.generated .operand 89)) none (.block (.mk [(.mk (.bind (.generated .holder 88)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 87))]) (.mk [] (.move (.generated .part 87))))]))] (.matchOn (.move (.generated .holder 88)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 86)), .wild, .wild]) (.mk [] (.move (.generated .part 86))))])))), (.mk (.bind (.generated .operand 90)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 89)), (.move (.generated .operand 90))] true))), (.block (.mk [(.mk (.bind (.generated .operand 94)) none (.block (.mk [(.mk (.bind (.generated .holder 93)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 92))]) (.mk [] (.move (.generated .part 92))))]))] (.matchOn (.move (.generated .holder 93)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 91)), .wild]) (.mk [] (.move (.generated .part 91))))])))), (.mk (.bind (.generated .operand 95)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 94)), (.move (.generated .operand 95))] true))), (.block (.mk [(.mk (.bind (.generated .operand 100)) none (.block (.mk [(.mk (.bind (.generated .holder 98)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 97))]) (.mk [] (.move (.generated .part 97))))]))] (.matchOn (.move (.generated .holder 98)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 96))]) (.mk [] (.move (.generated .part 96))))])))), (.mk (.bind (.generated .operand 101)) none (.block (.mk [(.mk (.bind (.generated .operand 99)) none (.clone (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 99))] false))))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 100)), (.move (.generated .operand 101))] false) (.mk [(.mk (.bind (.generated .operand 102)) none (.move (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 102))] false)) (.mk [(.mk (.bind (.generated .holder 105)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 104))]) (.mk [] (.move (.generated .part 104))))]))] (.matchOn (.move (.generated .holder 105)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 103))]) (.mk [] (.move (.generated .part 103))))])))))])])]))) (Corr.mCons (Γ' := [(5, (.pair .nat .nat), (some 5)), (4, (.list (.adt 2)), (some 4)), (3, (.adt 2), (some 3)), (1, (.adt 1), (some 1)), (0, .nat, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct .some [(.construct (.adt 1 0) [(.move (.generated .binding 4)), (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 34)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 34))))]), (.construct .some [(.pair (.copy (.generated .binding 5)) (.move (.generated .binding 3)))]), (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 35)), .wild]) (.mk [] (.move (.generated .part 35))))]), (.construct (.adt 3 0) [(.block (.mk [(.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.bind (.generated .holder 38)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 37))]) (.mk [] (.move (.generated .part 37))))]))] (.matchOn (.move (.generated .holder 38)) [(.mk (.adt 3 0 [(.bind (.generated .part 36)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 36))))])))), (.mk (.bind (.generated .operand 40)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] true))), (.block (.mk [(.mk (.bind (.generated .holder 43)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 42))]) (.mk [] (.move (.generated .part 42))))]))] (.matchOn (.move (.generated .holder 43)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 41)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 41))))]))), (.block (.mk [(.mk (.bind (.generated .holder 46)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 45))]) (.mk [] (.move (.generated .part 45))))]))] (.matchOn (.move (.generated .holder 46)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 44)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 44))))]))), (.block (.mk [(.mk (.bind (.generated .holder 49)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 48))]) (.mk [] (.move (.generated .part 48))))]))] (.matchOn (.move (.generated .holder 49)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 47)), .wild, .wild]) (.mk [] (.move (.generated .part 47))))]))), (.block (.mk [(.mk (.bind (.generated .operand 53)) none (.block (.mk [(.mk (.bind (.generated .holder 52)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 51))]) (.mk [] (.move (.generated .part 51))))]))] (.matchOn (.move (.generated .holder 52)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 50)), .wild]) (.mk [] (.move (.generated .part 50))))])))), (.mk (.bind (.generated .operand 54)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] true))), (.block (.mk [(.mk (.bind (.generated .holder 57)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 56))]) (.mk [] (.move (.generated .part 56))))]))] (.matchOn (.move (.generated .holder 57)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 55))]) (.mk [] (.move (.generated .part 55))))])))])])]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (mask := [false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 34))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.pair (.pair .nat .nat) (.adt 2))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lNil))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 35))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.bind (.generated .holder 38)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 37))]) (.mk [] (.move (.generated .part 37))))]))] (.matchOn (.move (.generated .holder 38)) [(.mk (.adt 3 0 [(.bind (.generated .part 36)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 36))))])))), (.mk (.bind (.generated .operand 40)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 38)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 37))]) (.mk [] (.move (.generated .part 37))))]))]) (tail := (.matchOn (.move (.generated .holder 38)) [(.mk (.adt 3 0 [(.bind (.generated .part 36)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 36))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 36))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 37))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 43)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 42))]) (.mk [] (.move (.generated .part 42))))]))]) (tail := (.matchOn (.move (.generated .holder 43)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 41)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 41))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 41))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 42))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 46)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 45))]) (.mk [] (.move (.generated .part 45))))]))]) (tail := (.matchOn (.move (.generated .holder 46)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 44)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 44))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 44))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 45))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 49)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 48))]) (.mk [] (.move (.generated .part 48))))]))]) (tail := (.matchOn (.move (.generated .holder 49)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 47)), .wild, .wild]) (.mk [] (.move (.generated .part 47))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 47))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 48))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 53)) none (.block (.mk [(.mk (.bind (.generated .holder 52)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 51))]) (.mk [] (.move (.generated .part 51))))]))] (.matchOn (.move (.generated .holder 52)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 50)), .wild]) (.mk [] (.move (.generated .part 50))))])))), (.mk (.bind (.generated .operand 54)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 52)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 51))]) (.mk [] (.move (.generated .part 51))))]))]) (tail := (.matchOn (.move (.generated .holder 52)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 50)), .wild]) (.mk [] (.move (.generated .part 50))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 50))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 51))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 57)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 56))]) (.mk [] (.move (.generated .part 56))))]))]) (tail := (.matchOn (.move (.generated .holder 57)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 55))]) (.mk [] (.move (.generated .part 55))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 55))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 56))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))))))) rfl)) (Corr.lNil))))))) rfl)) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.adt 2)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .nat .nat)), (.list (.adt 2))]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 58))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 60)) none (.move (.generated .binding 4))), (.mk (.bind (.generated .operand 61)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 59)), .wild]) none (.move (.generated .binding 7)))] (.move (.generated .part 59)))))]) (tail := (.call (.runtime .appendList) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] false)) (Corr.prim (ts := [(.list (.adt 2)), (.list (.adt 2))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 59)), .wild]) none (.move (.generated .binding 7)))]) (tail := (.move (.generated .part 59))) (Corr.first (ta := (.list (.adt 2))) (tb := (.list (.pair .nat .nat))) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.list (.adt 2)), (.adt 2)] (.list (.adt 2))), (.list (.adt 2)), (.list (.adt 2))]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [.nat]) (mask := [false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl (Corr.fOfB (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (mask := [false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 62))]) none (.move (.generated .binding 7)))]) (tail := (.move (.generated .part 62))) (Corr.second (ta := (.list (.adt 2))) (tb := (.list (.pair .nat .nat))) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.cond (lc := []) (ce := (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 63)), .wild]) (.mk [] (.move (.generated .part 63))))])) (lk := []) (Corr.fieldRead (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 63))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 67)) none (.block (.mk [(.mk (.bind (.generated .operand 64)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 65)) none (.copy (.generated .binding 0)))] (.call (.runtime .natAdd) [(.move (.generated .operand 64)), (.move (.generated .operand 65))] true)))), (.mk (.bind (.generated .operand 68)) none (.block (.mk [(.mk (.bind (.generated .operand 66)) none (.move (.generated .binding 8)))] (.call (.runtime .lengthList) [(.move (.generated .operand 66))] false))))]) (tb := (.call (.runtime .natLt) [(.move (.generated .operand 67)), (.move (.generated .operand 68))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 64)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 65)) none (.copy (.generated .binding 0)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 64)), (.move (.generated .operand 65))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 66)) none (.move (.generated .binding 8)))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 66))] false)) (Corr.prim (ts := [(.list (.adt 2))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)))) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 72)) none (.block (.mk [(.mk (.bind (.generated .holder 71)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 70))]) (.mk [] (.move (.generated .part 70))))]))] (.matchOn (.move (.generated .holder 71)) [(.mk (.adt 3 0 [(.bind (.generated .part 69)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 69))))])))), (.mk (.bind (.generated .operand 73)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 72)), (.move (.generated .operand 73))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 71)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 70))]) (.mk [] (.move (.generated .part 70))))]))]) (tail := (.matchOn (.move (.generated .holder 71)) [(.mk (.adt 3 0 [(.bind (.generated .part 69)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 69))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 69))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 70))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 78)) none (.block (.mk [(.mk (.bind (.generated .holder 76)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 75))]) (.mk [] (.move (.generated .part 75))))]))] (.matchOn (.move (.generated .holder 76)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 74)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 74))))])))), (.mk (.bind (.generated .operand 79)) none (.call (.function 17) [(.matchOn (.move (.generated .binding 3)) [(.mk (.adt 2 0 [(.bind (.generated .part 77)), .wild]) (.mk [] (.move (.generated .part 77))))])] true))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 78)), (.move (.generated .operand 79))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 76)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 75))]) (.mk [] (.move (.generated .part 75))))]))]) (tail := (.matchOn (.move (.generated .holder 76)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 74)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 74))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 74))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 75))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.pair .nat .nat), (.list (.adt 0))]) (rd := (.move (.generated .part 77))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 84)) none (.block (.mk [(.mk (.bind (.generated .holder 82)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))]))] (.matchOn (.move (.generated .holder 82)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 80)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 80))))])))), (.mk (.bind (.generated .operand 85)) none (.block (.mk [(.mk (.bind (.generated .operand 83)) none (.move (.generated .binding 6)))] (.call (.runtime .lengthList) [(.move (.generated .operand 83))] false))))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 84)), (.move (.generated .operand 85))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 82)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))]))]) (tail := (.matchOn (.move (.generated .holder 82)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 80)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 80))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 80))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 81))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 83)) none (.move (.generated .binding 6)))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 83))] false)) (Corr.prim (ts := [(.list (.adt 2))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 89)) none (.block (.mk [(.mk (.bind (.generated .holder 88)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 87))]) (.mk [] (.move (.generated .part 87))))]))] (.matchOn (.move (.generated .holder 88)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 86)), .wild, .wild]) (.mk [] (.move (.generated .part 86))))])))), (.mk (.bind (.generated .operand 90)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 89)), (.move (.generated .operand 90))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 88)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 87))]) (.mk [] (.move (.generated .part 87))))]))]) (tail := (.matchOn (.move (.generated .holder 88)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 86)), .wild, .wild]) (.mk [] (.move (.generated .part 86))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 86))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 87))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 94)) none (.block (.mk [(.mk (.bind (.generated .holder 93)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 92))]) (.mk [] (.move (.generated .part 92))))]))] (.matchOn (.move (.generated .holder 93)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 91)), .wild]) (.mk [] (.move (.generated .part 91))))])))), (.mk (.bind (.generated .operand 95)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 94)), (.move (.generated .operand 95))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 93)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 92))]) (.mk [] (.move (.generated .part 92))))]))]) (tail := (.matchOn (.move (.generated .holder 93)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 91)), .wild]) (.mk [] (.move (.generated .part 91))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 91))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 92))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 100)) none (.block (.mk [(.mk (.bind (.generated .holder 98)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 97))]) (.mk [] (.move (.generated .part 97))))]))] (.matchOn (.move (.generated .holder 98)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 96))]) (.mk [] (.move (.generated .part 96))))])))), (.mk (.bind (.generated .operand 101)) none (.block (.mk [(.mk (.bind (.generated .operand 99)) none (.clone (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 99))] false))))]) (tail := (.cond (.call (.runtime .natLt) [(.move (.generated .operand 100)), (.move (.generated .operand 101))] false) (.mk [(.mk (.bind (.generated .operand 102)) none (.move (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 102))] false)) (.mk [(.mk (.bind (.generated .holder 105)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 104))]) (.mk [] (.move (.generated .part 104))))]))] (.matchOn (.move (.generated .holder 105)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 103))]) (.mk [] (.move (.generated .part 103))))])))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 100)) none (.block (.mk [(.mk (.bind (.generated .holder 98)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 97))]) (.mk [] (.move (.generated .part 97))))]))] (.matchOn (.move (.generated .holder 98)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 96))]) (.mk [] (.move (.generated .part 96))))])))), (.mk (.bind (.generated .operand 101)) none (.block (.mk [(.mk (.bind (.generated .operand 99)) none (.clone (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 99))] false))))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 100)), (.move (.generated .operand 101))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 98)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 97))]) (.mk [] (.move (.generated .part 97))))]))]) (tail := (.matchOn (.move (.generated .holder 98)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 96))]) (.mk [] (.move (.generated .part 96))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 96))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 97))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 99)) none (.clone (.generated .binding 9)))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 99))] false)) (Corr.prim (ts := [(.list (.adt 2))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 102)) none (.move (.generated .binding 9)))]) (ta := (.call (.runtime .lengthList) [(.move (.generated .operand 102))] false)) (lb := [(.mk (.bind (.generated .holder 105)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 104))]) (.mk [] (.move (.generated .part 104))))]))]) (tb := (.matchOn (.move (.generated .holder 105)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 103))]) (.mk [] (.move (.generated .part 103))))])) (Corr.prim (ts := [(.list (.adt 2))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 103))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 104))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)))) (Corr.lNil)))))))) rfl)) (Corr.lNil))))))) rfl)) (Corr.lNil))) rfl))))))) rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl)) rfl rfl rfl)⟩⟩ + +theorem fun9 : FunOK program krate flags 9 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 106)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 106)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 9) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 107)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 107) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]), [(2, (.list (.adt 2)), (some 2)), (1, (.list (.adt 2)), (some 1)), (0, (.fn [(.list (.adt 2)), (.adt 2)] (.list (.adt 2))), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.adt 2))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.adt 2)), (some 2)), (1, (.list (.adt 2)), (some 1)), (0, (.fn [(.list (.adt 2)), (.adt 2)] (.list (.adt 2))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list (.adt 2)), (some 4)), (3, (.adt 2), (some 3)), (2, (.list (.adt 2)), (some 2)), (1, (.list (.adt 2)), (some 1)), (0, (.fn [(.list (.adt 2)), (.adt 2)] (.list (.adt 2))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 9) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 107)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 107) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.list (.adt 2)), (.adt 2)] (.list (.adt 2))), (.list (.adt 2)), (.list (.adt 2))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 107)) (some (.fn 1)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 107) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true)) (Corr.apply (ps := [(.list (.adt 2)), (.adt 2)]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ + +theorem fun10 : FunOK program krate flags 10 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 111)) none (.block (.mk [(.mk (.bind (.generated .operand 108)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthList) [(.move (.generated .operand 108))] false)))), (.mk (.bind (.generated .operand 112)) none (.block (.mk [(.mk (.bind (.generated .operand 109)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 110)) none (.copy (.generated .binding 0)))] (.call (.runtime .natAdd) [(.move (.generated .operand 109)), (.move (.generated .operand 110))] true))))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 111)), (.move (.generated .operand 112))] false) (.mk [(.mk (.bind (.generated .operand 113)) none (.move (.generated .binding 1))), (.mk (.bind (.generated .operand 114)) none (.construct .cons [(.move (.generated .binding 2)), (.construct (.nil (.adt 2)) [])]))] (.succeed (.call (.runtime .appendList) [(.move (.generated .operand 113)), (.move (.generated .operand 114))] false))) (.mk [] (.succeed (.move (.generated .binding 1))))), [(2, (.adt 2), (some 2)), (1, (.list (.adt 2)), (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 111)) none (.block (.mk [(.mk (.bind (.generated .operand 108)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthList) [(.move (.generated .operand 108))] false)))), (.mk (.bind (.generated .operand 112)) none (.block (.mk [(.mk (.bind (.generated .operand 109)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 110)) none (.copy (.generated .binding 0)))] (.call (.runtime .natAdd) [(.move (.generated .operand 109)), (.move (.generated .operand 110))] true))))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 111)), (.move (.generated .operand 112))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 108)) none (.clone (.generated .binding 1)))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 108))] false)) (Corr.prim (ts := [(.list (.adt 2))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 109)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 110)) none (.copy (.generated .binding 0)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 109)), (.move (.generated .operand 110))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 113)) none (.move (.generated .binding 1))), (.mk (.bind (.generated .operand 114)) none (.construct .cons [(.move (.generated .binding 2)), (.construct (.nil (.adt 2)) [])]))]) (ta := (.succeed (.call (.runtime .appendList) [(.move (.generated .operand 113)), (.move (.generated .operand 114))] false))) (lb := []) (tb := (.succeed (.move (.generated .binding 1)))) (Corr.fOfB (Corr.prim (ts := [(.list (.adt 2)), (.list (.adt 2))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [(.adt 2), (.list (.adt 2))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))))⟩⟩ + +theorem fun11 : FunOK program krate flags 11 := + ⟨_, rfl, .inl ⟨_, _, [], (.pair (.lit (.nat 0)) (.lit (.nat 0))), [(0, .nat, none)], rfl, rfl, + (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))))⟩⟩ + +theorem fun12 : FunOK program krate flags 12 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 115)) none (.clone (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 115)) [(.mk .none (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil (.pair .nat .nat)) [])]))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 118)) none (.block (.mk [(.mk (.bind (.generated .operand 116)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 117)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 116)), (.move (.generated .operand 117))] false))))] (.matchOn (.move (.generated .holder 118)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 12) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])))]), [(1, (.pair .nat .nat), (some 1)), (0, (.list (.pair .nat .nat)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.pair .nat .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.pair .nat .nat), (some 1)), (0, (.list (.pair .nat .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil (.pair .nat .nat)) [])])) (Corr.mCons (Γ' := [(3, (.list (.pair .nat .nat)), (some 3)), (2, (.pair .nat .nat), (some 2)), (1, (.pair .nat .nat), (some 1)), (0, (.list (.pair .nat .nat)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 118)) none (.block (.mk [(.mk (.bind (.generated .operand 116)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 117)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 116)), (.move (.generated .operand 117))] false))))]) (tail := (.matchOn (.move (.generated .holder 118)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 12) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 116)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 117)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 116)), (.move (.generated .operand 117))] false)) (Corr.prim (ts := [(.pair .nat .nat), (.pair .nat .nat)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list (.pair .nat .nat)), (some 3)), (2, (.pair .nat .nat), (some 2)), (1, (.pair .nat .nat), (some 1)), (0, (.list (.pair .nat .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))])) (Corr.mCons (Γ' := [(3, (.list (.pair .nat .nat)), (some 3)), (2, (.pair .nat .nat), (some 2)), (1, (.pair .nat .nat), (some 1)), (0, (.list (.pair .nat .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.move (.generated .binding 0))) (Corr.mCons (Γ' := [(3, (.list (.pair .nat .nat)), (some 3)), (2, (.pair .nat .nat), (some 2)), (1, (.pair .nat .nat), (some 1)), (0, (.list (.pair .nat .nat)), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 12) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.pair .nat .nat), (.list (.pair .nat .nat))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .nat .nat)), (.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.build (ts := [(.pair .nat .nat), (.list (.pair .nat .nat))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := [(.pair .nat .nat), (.list (.pair .nat .nat))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun13 : FunOK program krate flags 13 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 119)) none (.call (.function 18) [(.copy (.generated .binding 1))] false))], (.matchOn (.move (.generated .holder 119)) [(.mk .none (.mk [] (.construct (.none (.pair .nat .nat)) []))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.cond (.call (.function 19) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.mk [] (.construct .some [(.copy (.generated .binding 2))])) (.mk [] (.construct (.none (.pair .nat .nat)) [])))))]), [(1, (.pair .nat .nat), (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option (.pair .nat .nat))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.pair .nat .nat), (some 1)), (0, .nat, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none (.pair .nat .nat)) [])) (Corr.mCons (Γ' := [(2, (.pair .nat .nat), (some 2)), (1, (.pair .nat .nat), (some 1)), (0, .nat, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 19) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.mk [] (.construct .some [(.copy (.generated .binding 2))])) (.mk [] (.construct (.none (.pair .nat .nat)) [])))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 19) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] false)) (lk := []) (Corr.callOps (ts := [.nat, (.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.copy (.generated .binding 2))])) (lb := []) (tb := (.construct (.none (.pair .nat .nat)) [])) (Corr.build (ts := [(.pair .nat .nat)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun14 : FunOK program krate flags 14 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 122)) none (.call (.function 20) [(.clone (.generated .binding 0))] true)), (.mk (.bind (.generated .operand 123)) none (.block (.mk [(.mk (.bind (.generated .operand 120)) none (.call (.function 21) [(.clone (.generated .binding 0))] true)), (.mk (.bind (.generated .operand 121)) none (.call (.function 22) [(.move (.generated .binding 0))] true))] (.call (.runtime .appendList) [(.move (.generated .operand 120)), (.move (.generated .operand 121))] false))))], (.succeed (.call (.runtime .appendList) [(.move (.generated .operand 122)), (.move (.generated .operand 123))] false)), [(0, (.adt 2), (some 0))], rfl, rfl, + (Corr.fOfB (Corr.prim (ts := [(.list (.adt 2)), (.list (.adt 2))]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 2)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 120)) none (.call (.function 21) [(.clone (.generated .binding 0))] true)), (.mk (.bind (.generated .operand 121)) none (.call (.function 22) [(.move (.generated .binding 0))] true))]) (tail := (.call (.runtime .appendList) [(.move (.generated .operand 120)), (.move (.generated .operand 121))] false)) (Corr.prim (ts := [(.list (.adt 2)), (.list (.adt 2))]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 2)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 2)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl))⟩⟩ + +theorem fun15 : FunOK program krate flags 15 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 23) [(.construct (.closure 2 24) []), (.pair (.construct (.nil (.adt 2)) []) (.move (.generated .binding 0))), (.move (.generated .binding 1))] false), [(1, (.list (.adt 2)), (some 1)), (0, (.list (.pair .nat .nat)), (some 0))], rfl, rfl, + (Corr.callOps (ts := [(.fn [(.pair (.list (.adt 2)) (.list (.pair .nat .nat))), (.adt 2)] (.pair (.list (.adt 2)) (.list (.pair .nat .nat)))), (.pair (.list (.adt 2)) (.list (.pair .nat .nat))), (.list (.adt 2))]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := false) (ff := false) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun16 : FunOK program krate flags 16 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 127)) none (.block (.mk [(.mk (.bind (.generated .operand 124)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthList) [(.move (.generated .operand 124))] false)))), (.mk (.bind (.generated .operand 128)) none (.block (.mk [(.mk (.bind (.generated .operand 125)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 126)) none (.copy (.generated .binding 0)))] (.call (.runtime .natAdd) [(.move (.generated .operand 125)), (.move (.generated .operand 126))] true))))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 127)), (.move (.generated .operand 128))] false) (.mk [(.mk (.bind (.generated .operand 129)) none (.move (.generated .binding 1))), (.mk (.bind (.generated .operand 130)) none (.construct .cons [(.move (.generated .binding 2)), (.construct (.nil (.adt 2)) [])]))] (.succeed (.call (.runtime .appendList) [(.move (.generated .operand 129)), (.move (.generated .operand 130))] false))) (.mk [] (.succeed (.move (.generated .binding 1))))), [(2, (.adt 2), (some 2)), (1, (.list (.adt 2)), (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 127)) none (.block (.mk [(.mk (.bind (.generated .operand 124)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthList) [(.move (.generated .operand 124))] false)))), (.mk (.bind (.generated .operand 128)) none (.block (.mk [(.mk (.bind (.generated .operand 125)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 126)) none (.copy (.generated .binding 0)))] (.call (.runtime .natAdd) [(.move (.generated .operand 125)), (.move (.generated .operand 126))] true))))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 127)), (.move (.generated .operand 128))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 124)) none (.clone (.generated .binding 1)))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 124))] false)) (Corr.prim (ts := [(.list (.adt 2))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 125)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 126)) none (.copy (.generated .binding 0)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 125)), (.move (.generated .operand 126))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 129)) none (.move (.generated .binding 1))), (.mk (.bind (.generated .operand 130)) none (.construct .cons [(.move (.generated .binding 2)), (.construct (.nil (.adt 2)) [])]))]) (ta := (.succeed (.call (.runtime .appendList) [(.move (.generated .operand 129)), (.move (.generated .operand 130))] false))) (lb := []) (tb := (.succeed (.move (.generated .binding 1)))) (Corr.fOfB (Corr.prim (ts := [(.list (.adt 2)), (.list (.adt 2))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [(.adt 2), (.list (.adt 2))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))))⟩⟩ + +theorem fun17 : FunOK program krate flags 17 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 134)) none (.lit (.nat 1))), (.mk (.bind (.generated .operand 135)) none (.block (.mk [(.mk (.bind (.generated .operand 132)) none (.lit (.nat 1))), (.mk (.bind (.generated .operand 133)) none (.block (.mk [(.mk (.bind (.generated .operand 131)) none (.call (.function 25) [(.copy (.generated .binding 0))] false))] (.call (.runtime .lengthList) [(.move (.generated .operand 131))] false))))] (.call (.runtime .natAdd) [(.move (.generated .operand 132)), (.move (.generated .operand 133))] true))))], (.call (.runtime .natAdd) [(.move (.generated .operand 134)), (.move (.generated .operand 135))] false), [(0, (.pair .nat .nat), (some 0))], rfl, rfl, + (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 132)) none (.lit (.nat 1))), (.mk (.bind (.generated .operand 133)) none (.block (.mk [(.mk (.bind (.generated .operand 131)) none (.call (.function 25) [(.copy (.generated .binding 0))] false))] (.call (.runtime .lengthList) [(.move (.generated .operand 131))] false))))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 132)), (.move (.generated .operand 133))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 131)) none (.call (.function 25) [(.copy (.generated .binding 0))] false))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 131))] false)) (Corr.prim (ts := [(.list .nat)]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun18 : FunOK program krate flags 18 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct .some [(.copy (.generated .binding 0))]), [(0, (.pair .nat .nat), (some 0))], rfl, rfl, + (Corr.build (ts := [(.pair .nat .nat)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)⟩⟩ + +theorem fun19 : FunOK program krate flags 19 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 137)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 136))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 136))))), (.mk (.bind (.generated .operand 138)) none (.copy (.generated .binding 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 137)), (.move (.generated .operand 138))] false) (.mk [(.mk (.bind (.generated .operand 140)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 139)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 139))))), (.mk (.bind (.generated .operand 141)) none (.lit (.nat 4)))] (.call (.runtime .natLe) [(.move (.generated .operand 140)), (.move (.generated .operand 141))] false)) (.mk [] (.lit (.bool false)))), [(1, (.pair .nat .nat), (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 137)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 136))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 136))))), (.mk (.bind (.generated .operand 138)) none (.copy (.generated .binding 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 137)), (.move (.generated .operand 138))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 136))]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 136))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 140)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 139)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 139))))), (.mk (.bind (.generated .operand 141)) none (.lit (.nat 4)))]) (ta := (.call (.runtime .natLe) [(.move (.generated .operand 140)), (.move (.generated .operand 141))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 139)), .wild]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 139))) (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ + +theorem fun20 : FunOK program krate flags 20 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 143)) none (.call (.function 26) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [(.bind (.generated .part 142)), .wild]) (.mk [] (.move (.generated .part 142))))]), (.construct (.adt 0 0) [])] true))], (.matchOn (.move (.generated .holder 143)) [(.mk .none (.mk [] (.succeed (.construct (.nil (.adt 2)) [])))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.succeed (.construct .cons [(.construct (.adt 2 0) [(.copy (.generated .binding 1)), (.block (.mk [(.mk (.bind (.generated .operand 145)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 144))]) (.mk [] (.move (.generated .part 144))))])), (.mk (.bind (.generated .operand 146)) none (.construct .cons [(.construct (.adt 0 0) []), (.construct (.nil (.adt 0)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 145)), (.move (.generated .operand 146))] false)))]), (.construct (.nil (.adt 2)) [])]))))]), [(0, (.adt 2), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option (.pair .nat .nat))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat), (.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.pair .nat .nat), (.list (.adt 0))]) (rd := (.move (.generated .part 142))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(0, (.adt 2), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct (.nil (.adt 2)) []))) (Corr.mCons (Γ' := [(1, (.pair .nat .nat), (some 1)), (0, (.adt 2), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.construct .cons [(.construct (.adt 2 0) [(.copy (.generated .binding 1)), (.block (.mk [(.mk (.bind (.generated .operand 145)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 144))]) (.mk [] (.move (.generated .part 144))))])), (.mk (.bind (.generated .operand 146)) none (.construct .cons [(.construct (.adt 0 0) []), (.construct (.nil (.adt 0)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 145)), (.move (.generated .operand 146))] false)))]), (.construct (.nil (.adt 2)) [])]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.adt 2), (.list (.adt 2))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.pair .nat .nat), (.list (.adt 0))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 145)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 144))]) (.mk [] (.move (.generated .part 144))))])), (.mk (.bind (.generated .operand 146)) none (.construct .cons [(.construct (.adt 0 0) []), (.construct (.nil (.adt 0)) [])]))]) (tail := (.call (.runtime .appendList) [(.move (.generated .operand 145)), (.move (.generated .operand 146))] false)) (Corr.prim (ts := [(.list (.adt 0)), (.list (.adt 0))]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.pair .nat .nat), (.list (.adt 0))]) (rd := (.move (.generated .part 144))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [(.adt 0), (.list (.adt 0))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl))) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl)⟩⟩ + +theorem fun21 : FunOK program krate flags 21 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 148)) none (.call (.function 26) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [(.bind (.generated .part 147)), .wild]) (.mk [] (.move (.generated .part 147))))]), (.construct (.adt 0 1) [])] true))], (.matchOn (.move (.generated .holder 148)) [(.mk .none (.mk [] (.succeed (.construct (.nil (.adt 2)) [])))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.succeed (.construct .cons [(.construct (.adt 2 0) [(.copy (.generated .binding 1)), (.block (.mk [(.mk (.bind (.generated .operand 150)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 149))]) (.mk [] (.move (.generated .part 149))))])), (.mk (.bind (.generated .operand 151)) none (.construct .cons [(.construct (.adt 0 1) []), (.construct (.nil (.adt 0)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 150)), (.move (.generated .operand 151))] false)))]), (.construct (.nil (.adt 2)) [])]))))]), [(0, (.adt 2), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option (.pair .nat .nat))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat), (.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.pair .nat .nat), (.list (.adt 0))]) (rd := (.move (.generated .part 147))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(0, (.adt 2), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct (.nil (.adt 2)) []))) (Corr.mCons (Γ' := [(1, (.pair .nat .nat), (some 1)), (0, (.adt 2), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.construct .cons [(.construct (.adt 2 0) [(.copy (.generated .binding 1)), (.block (.mk [(.mk (.bind (.generated .operand 150)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 149))]) (.mk [] (.move (.generated .part 149))))])), (.mk (.bind (.generated .operand 151)) none (.construct .cons [(.construct (.adt 0 1) []), (.construct (.nil (.adt 0)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 150)), (.move (.generated .operand 151))] false)))]), (.construct (.nil (.adt 2)) [])]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.adt 2), (.list (.adt 2))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.pair .nat .nat), (.list (.adt 0))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 150)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 149))]) (.mk [] (.move (.generated .part 149))))])), (.mk (.bind (.generated .operand 151)) none (.construct .cons [(.construct (.adt 0 1) []), (.construct (.nil (.adt 0)) [])]))]) (tail := (.call (.runtime .appendList) [(.move (.generated .operand 150)), (.move (.generated .operand 151))] false)) (Corr.prim (ts := [(.list (.adt 0)), (.list (.adt 0))]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.pair .nat .nat), (.list (.adt 0))]) (rd := (.move (.generated .part 149))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [(.adt 0), (.list (.adt 0))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl))) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl)⟩⟩ + +theorem fun22 : FunOK program krate flags 22 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 27) [(.construct (.closure 3 28) [(.clone (.generated .binding 0))]), (.construct (.nil (.adt 2)) []), (.call (.function 25) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [(.bind (.generated .part 152)), .wild]) (.mk [] (.move (.generated .part 152))))])] false)] false), [(0, (.adt 2), (some 0))], rfl, rfl, + (Corr.callF (ts := [(.fn [(.list (.adt 2)), .nat] (.list (.adt 2))), (.list (.adt 2)), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [(.adt 2)]) (mask := [false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.pair .nat .nat), (.list (.adt 0))]) (rd := (.move (.generated .part 152))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl)⟩⟩ + +theorem fun23 : FunOK program krate flags 23 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 153)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 153)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 23) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 154)) (some (.fn 2)) (.move (.generated .binding 0)))] (.apply (.generated .callee 154) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]), [(2, (.list (.adt 2)), (some 2)), (1, (.pair (.list (.adt 2)) (.list (.pair .nat .nat))), (some 1)), (0, (.fn [(.pair (.list (.adt 2)) (.list (.pair .nat .nat))), (.adt 2)] (.pair (.list (.adt 2)) (.list (.pair .nat .nat)))), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.adt 2))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.adt 2)), (some 2)), (1, (.pair (.list (.adt 2)) (.list (.pair .nat .nat))), (some 1)), (0, (.fn [(.pair (.list (.adt 2)) (.list (.pair .nat .nat))), (.adt 2)] (.pair (.list (.adt 2)) (.list (.pair .nat .nat)))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 1))) (Corr.mCons (Γ' := [(4, (.list (.adt 2)), (some 4)), (3, (.adt 2), (some 3)), (2, (.list (.adt 2)), (some 2)), (1, (.pair (.list (.adt 2)) (.list (.pair .nat .nat))), (some 1)), (0, (.fn [(.pair (.list (.adt 2)) (.list (.pair .nat .nat))), (.adt 2)] (.pair (.list (.adt 2)) (.list (.pair .nat .nat)))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 23) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 154)) (some (.fn 2)) (.move (.generated .binding 0)))] (.apply (.generated .callee 154) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.fn [(.pair (.list (.adt 2)) (.list (.pair .nat .nat))), (.adt 2)] (.pair (.list (.adt 2)) (.list (.pair .nat .nat)))), (.pair (.list (.adt 2)) (.list (.pair .nat .nat))), (.list (.adt 2))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 154)) (some (.fn 2)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 154) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false)) (Corr.apply (ps := [(.pair (.list (.adt 2)) (.list (.pair .nat .nat))), (.adt 2)]) (af := false) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ + +theorem fun24 : FunOK program krate flags 24 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 29) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 155))]) none (.clone (.generated .binding 0)))] (.move (.generated .part 155)))), (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 2 0 [(.bind (.generated .part 156)), .wild]) (.mk [] (.move (.generated .part 156))))])] false) (.mk [] (.move (.generated .binding 0))) (.mk [] (.pair (.block (.mk [(.mk (.bind (.generated .operand 158)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 157)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 157))))), (.mk (.bind (.generated .operand 159)) none (.construct .cons [(.clone (.generated .binding 1)), (.construct (.nil (.adt 2)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 158)), (.move (.generated .operand 159))] false))) (.call (.function 12) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 160))]) none (.move (.generated .binding 0)))] (.move (.generated .part 160)))), (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 2 0 [(.bind (.generated .part 161)), .wild]) (.mk [] (.move (.generated .part 161))))])] false)))), [(1, (.adt 2), (some 1)), (0, (.pair (.list (.adt 2)) (.list (.pair .nat .nat))), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 29) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 155))]) none (.clone (.generated .binding 0)))] (.move (.generated .part 155)))), (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 2 0 [(.bind (.generated .part 156)), .wild]) (.mk [] (.move (.generated .part 156))))])] false)) (lk := []) (Corr.callOps (ts := [(.list (.pair .nat .nat)), (.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 155))]) none (.clone (.generated .binding 0)))]) (tail := (.move (.generated .part 155))) (Corr.second (ta := (.list (.adt 2))) (tb := (.list (.pair .nat .nat))) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.pair .nat .nat), (.list (.adt 0))]) (rd := (.move (.generated .part 156))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.move (.generated .binding 0))) (lb := []) (tb := (.pair (.block (.mk [(.mk (.bind (.generated .operand 158)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 157)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 157))))), (.mk (.bind (.generated .operand 159)) none (.construct .cons [(.clone (.generated .binding 1)), (.construct (.nil (.adt 2)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 158)), (.move (.generated .operand 159))] false))) (.call (.function 12) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 160))]) none (.move (.generated .binding 0)))] (.move (.generated .part 160)))), (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 2 0 [(.bind (.generated .part 161)), .wild]) (.mk [] (.move (.generated .part 161))))])] false))) (Corr.bOfE (Corr.var rfl rfl)) (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 158)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 157)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 157))))), (.mk (.bind (.generated .operand 159)) none (.construct .cons [(.clone (.generated .binding 1)), (.construct (.nil (.adt 2)) [])]))]) (tail := (.call (.runtime .appendList) [(.move (.generated .operand 158)), (.move (.generated .operand 159))] false)) (Corr.prim (ts := [(.list (.adt 2)), (.list (.adt 2))]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 157)), .wild]) none (.move (.generated .binding 0)))]) (tail := (.move (.generated .part 157))) (Corr.first (ta := (.list (.adt 2))) (tb := (.list (.pair .nat .nat))) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [(.adt 2), (.list (.adt 2))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .nat .nat)), (.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 160))]) none (.move (.generated .binding 0)))]) (tail := (.move (.generated .part 160))) (Corr.second (ta := (.list (.adt 2))) (tb := (.list (.pair .nat .nat))) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.pair .nat .nat), (.list (.adt 0))]) (rd := (.move (.generated .part 161))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))))))⟩⟩ + +theorem fun25 : FunOK program krate flags 25 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct .cons [(.lit (.nat 1)), (.construct .cons [(.lit (.nat 2)), (.construct .cons [(.lit (.nat 3)), (.construct (.nil .nat) [])])])]), [(0, (.pair .nat .nat), none)], rfl, rfl, + (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)⟩⟩ + +theorem fun26 : FunOK program krate flags 26 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 162)) none (.move (.generated .binding 1)))], (.matchOn (.move (.generated .holder 162)) [(.mk (.adt 0 0 []) (.mk [] (.succeed (.call (.function 30) [(.copy (.generated .binding 0))] false)))), (.mk (.adt 0 1 []) (.mk [] (.succeed (.call (.function 31) [(.copy (.generated .binding 0))] false)))), (.mk (.adt 0 2 [(.bind (.generated .binding 2))]) (.mk [] (.call (.function 32) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] false)))]), [(1, (.adt 0), (some 1)), (0, (.pair .nat .nat), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.adt 0)) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.adt 0), (some 1)), (0, (.pair .nat .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.call (.function 30) [(.copy (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 0), (some 1)), (0, (.pair .nat .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.call (.function 31) [(.copy (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, (.adt 0), (some 1)), (0, (.pair .nat .nat), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.call (.function 32) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.pair .nat .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl)⟩⟩ + +theorem fun27 : FunOK program krate flags 27 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 163)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 163)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 27) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 164)) (some (.fn 3)) (.move (.generated .binding 0)))] (.apply (.generated .callee 164) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]), [(2, (.list .nat), (some 2)), (1, (.list (.adt 2)), (some 1)), (0, (.fn [(.list (.adt 2)), .nat] (.list (.adt 2))), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .nat), (some 2)), (1, (.list (.adt 2)), (some 1)), (0, (.fn [(.list (.adt 2)), .nat] (.list (.adt 2))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list .nat), (some 4)), (3, .nat, (some 3)), (2, (.list .nat), (some 2)), (1, (.list (.adt 2)), (some 1)), (0, (.fn [(.list (.adt 2)), .nat] (.list (.adt 2))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 27) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 164)) (some (.fn 3)) (.move (.generated .binding 0)))] (.apply (.generated .callee 164) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.list (.adt 2)), .nat] (.list (.adt 2))), (.list (.adt 2)), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 164)) (some (.fn 3)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 164) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true)) (Corr.apply (ps := [(.list (.adt 2)), .nat]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ + +theorem fun28 : FunOK program krate flags 28 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 33) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 2))] false), [(2, .nat, (some 2)), (1, (.list (.adt 2)), (some 1)), (0, (.adt 2), (some 0))], rfl, rfl, + (Corr.callF (ts := [(.adt 2), (.list (.adt 2)), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)⟩⟩ + +theorem fun29 : FunOK program krate flags 29 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 165)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 165)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 168)) none (.block (.mk [(.mk (.bind (.generated .operand 166)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 167)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 166)), (.move (.generated .operand 167))] false))))] (.matchOn (.move (.generated .holder 168)) [(.mk (.ordering .less) (.mk [] (.lit (.bool false)))), (.mk (.ordering .same) (.mk [] (.lit (.bool true)))), (.mk (.ordering .more) (.mk [] (.call (.function 29) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]), [(1, (.pair .nat .nat), (some 1)), (0, (.list (.pair .nat .nat)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.pair .nat .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.pair .nat .nat), (some 1)), (0, (.list (.pair .nat .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(3, (.list (.pair .nat .nat)), (some 3)), (2, (.pair .nat .nat), (some 2)), (1, (.pair .nat .nat), (some 1)), (0, (.list (.pair .nat .nat)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 168)) none (.block (.mk [(.mk (.bind (.generated .operand 166)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 167)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 166)), (.move (.generated .operand 167))] false))))]) (tail := (.matchOn (.move (.generated .holder 168)) [(.mk (.ordering .less) (.mk [] (.lit (.bool false)))), (.mk (.ordering .same) (.mk [] (.lit (.bool true)))), (.mk (.ordering .more) (.mk [] (.call (.function 29) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 166)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 167)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 166)), (.move (.generated .operand 167))] false)) (Corr.prim (ts := [(.pair .nat .nat), (.pair .nat .nat)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list (.pair .nat .nat)), (some 3)), (2, (.pair .nat .nat), (some 2)), (1, (.pair .nat .nat), (some 1)), (0, (.list (.pair .nat .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(3, (.list (.pair .nat .nat)), (some 3)), (2, (.pair .nat .nat), (some 2)), (1, (.pair .nat .nat), (some 1)), (0, (.list (.pair .nat .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(3, (.list (.pair .nat .nat)), (some 3)), (2, (.pair .nat .nat), (some 2)), (1, (.pair .nat .nat), (some 1)), (0, (.list (.pair .nat .nat)), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.call (.function 29) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list (.pair .nat .nat)), (.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ + +theorem fun30 : FunOK program krate flags 30 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 34) [(.copy (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 35) [(.copy (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.pair .nat .nat)) []))), [(0, (.pair .nat .nat), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 34) [(.copy (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 35) [(.copy (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.pair .nat .nat)) [])) (Corr.build (ts := [(.pair .nat .nat)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ + +theorem fun31 : FunOK program krate flags 31 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 36) [(.copy (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 37) [(.copy (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.pair .nat .nat)) []))), [(0, (.pair .nat .nat), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 36) [(.copy (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 37) [(.copy (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.pair .nat .nat)) [])) (Corr.build (ts := [(.pair .nat .nat)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ + +theorem fun32 : FunOK program krate flags 32 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 38) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] true) (.mk [] (.succeed (.construct .some [(.call (.function 39) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] true)]))) (.mk [] (.succeed (.construct (.none (.pair .nat .nat)) [])))), [(1, .nat, (some 1)), (0, (.pair .nat .nat), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 38) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] true)) (lk := []) (Corr.callOps (ts := [(.pair .nat .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.call (.function 39) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] true)]))) (lb := []) (tb := (.succeed (.construct (.none (.pair .nat .nat)) []))) (Corr.fOfB (Corr.build (ts := [(.pair .nat .nat)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))⟩⟩ + +theorem fun33 : FunOK program krate flags 33 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 170)) none (.call (.function 26) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [(.bind (.generated .part 169)), .wild]) (.mk [] (.move (.generated .part 169))))]), (.construct (.adt 0 2) [(.copy (.generated .binding 2))])] true))], (.matchOn (.move (.generated .holder 170)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [(.mk (.bind (.generated .operand 174)) none (.move (.generated .binding 1))), (.mk (.bind (.generated .operand 175)) none (.construct .cons [(.construct (.adt 2 0) [(.copy (.generated .binding 3)), (.block (.mk [(.mk (.bind (.generated .operand 172)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 171))]) (.mk [] (.move (.generated .part 171))))])), (.mk (.bind (.generated .operand 173)) none (.construct .cons [(.construct (.adt 0 2) [(.copy (.generated .binding 2))]), (.construct (.nil (.adt 0)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 172)), (.move (.generated .operand 173))] false)))]), (.construct (.nil (.adt 2)) [])]))] (.succeed (.call (.runtime .appendList) [(.move (.generated .operand 174)), (.move (.generated .operand 175))] false))))]), [(2, .nat, (some 2)), (1, (.list (.adt 2)), (some 1)), (0, (.adt 2), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option (.pair .nat .nat))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat), (.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.pair .nat .nat), (.list (.adt 0))]) (rd := (.move (.generated .part 169))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, (.list (.adt 2)), (some 1)), (0, (.adt 2), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 1)))) (Corr.mCons (Γ' := [(3, (.pair .nat .nat), (some 3)), (2, .nat, (some 2)), (1, (.list (.adt 2)), (some 1)), (0, (.adt 2), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .operand 174)) none (.move (.generated .binding 1))), (.mk (.bind (.generated .operand 175)) none (.construct .cons [(.construct (.adt 2 0) [(.copy (.generated .binding 3)), (.block (.mk [(.mk (.bind (.generated .operand 172)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 171))]) (.mk [] (.move (.generated .part 171))))])), (.mk (.bind (.generated .operand 173)) none (.construct .cons [(.construct (.adt 0 2) [(.copy (.generated .binding 2))]), (.construct (.nil (.adt 0)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 172)), (.move (.generated .operand 173))] false)))]), (.construct (.nil (.adt 2)) [])]))]) (tail := (.succeed (.call (.runtime .appendList) [(.move (.generated .operand 174)), (.move (.generated .operand 175))] false))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.prim (ts := [(.list (.adt 2)), (.list (.adt 2))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [(.adt 2), (.list (.adt 2))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.pair .nat .nat), (.list (.adt 0))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 172)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 171))]) (.mk [] (.move (.generated .part 171))))])), (.mk (.bind (.generated .operand 173)) none (.construct .cons [(.construct (.adt 0 2) [(.copy (.generated .binding 2))]), (.construct (.nil (.adt 0)) [])]))]) (tail := (.call (.runtime .appendList) [(.move (.generated .operand 172)), (.move (.generated .operand 173))] false)) (Corr.prim (ts := [(.list (.adt 0)), (.list (.adt 0))]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.pair .nat .nat), (.list (.adt 0))]) (rd := (.move (.generated .part 171))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [(.adt 0), (.list (.adt 0))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ + +theorem fun34 : FunOK program krate flags 34 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 177)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 176)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 176))))), (.mk (.bind (.generated .operand 178)) none (.lit (.nat 4)))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 177)), (.move (.generated .operand 178))] false) (.mk [(.mk (.bind (.generated .operand 180)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 179))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 179))))), (.mk (.bind (.generated .operand 181)) none (.lit (.nat 3)))] (.call (.runtime .natLe) [(.move (.generated .operand 180)), (.move (.generated .operand 181))] false)) (.mk [] (.lit (.bool false)))), [(0, (.pair .nat .nat), (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 177)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 176)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 176))))), (.mk (.bind (.generated .operand 178)) none (.lit (.nat 4)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 177)), (.move (.generated .operand 178))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 176)), .wild]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 176))) (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 180)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 179))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 179))))), (.mk (.bind (.generated .operand 181)) none (.lit (.nat 3)))]) (ta := (.call (.runtime .natLe) [(.move (.generated .operand 180)), (.move (.generated .operand 181))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 179))]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 179))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ + +theorem fun35 : FunOK program krate flags 35 := + ⟨_, rfl, .inl ⟨_, _, [], (.pair (.lit (.nat 4)) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 182))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 182))))), [(0, (.pair .nat .nat), (some 0))], rfl, rfl, + (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 182))]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 182))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lNil)))))⟩⟩ + +theorem fun36 : FunOK program krate flags 36 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 184)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 185)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 183))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 183)))))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 184)), (.move (.generated .operand 185))] false) (.mk [(.mk (.bind (.generated .operand 187)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 186)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 186))))), (.mk (.bind (.generated .operand 188)) none (.lit (.nat 4)))] (.call (.runtime .natLe) [(.move (.generated .operand 187)), (.move (.generated .operand 188))] false)) (.mk [] (.lit (.bool false)))), [(0, (.pair .nat .nat), (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 184)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 185)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 183))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 183)))))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 184)), (.move (.generated .operand 185))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 183))]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 183))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 187)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 186)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 186))))), (.mk (.bind (.generated .operand 188)) none (.lit (.nat 4)))]) (ta := (.call (.runtime .natLe) [(.move (.generated .operand 187)), (.move (.generated .operand 188))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 186)), .wild]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 186))) (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ + +theorem fun37 : FunOK program krate flags 37 := + ⟨_, rfl, .inl ⟨_, _, [], (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 189)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 189)))) (.lit (.nat 0))), [(0, (.pair .nat .nat), (some 0))], rfl, rfl, + (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 189)), .wild]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 189))) (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))))⟩⟩ + +theorem fun38 : FunOK program krate flags 38 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 191)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 192)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 190)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 190)))))], (.cond (.call (.runtime .natLe) [(.move (.generated .operand 191)), (.move (.generated .operand 192))] false) (.mk [(.mk (.bind (.generated .operand 196)) none (.block (.mk [(.mk (.bind (.generated .operand 194)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 193))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 193))))), (.mk (.bind (.generated .operand 195)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 194)), (.move (.generated .operand 195))] true)))), (.mk (.bind (.generated .operand 197)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natLe) [(.move (.generated .operand 196)), (.move (.generated .operand 197))] false) (.mk [(.mk (.bind (.generated .operand 199)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 198)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 198))))), (.mk (.bind (.generated .operand 200)) none (.lit (.nat 4)))] (.succeed (.call (.runtime .natLe) [(.move (.generated .operand 199)), (.move (.generated .operand 200))] false))) (.mk [] (.succeed (.lit (.bool false)))))) (.mk [] (.succeed (.lit (.bool false))))), [(1, .nat, (some 1)), (0, (.pair .nat .nat), (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 191)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 192)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 190)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 190)))))]) (ce := (.call (.runtime .natLe) [(.move (.generated .operand 191)), (.move (.generated .operand 192))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 190)), .wild]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 190))) (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 196)) none (.block (.mk [(.mk (.bind (.generated .operand 194)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 193))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 193))))), (.mk (.bind (.generated .operand 195)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 194)), (.move (.generated .operand 195))] true)))), (.mk (.bind (.generated .operand 197)) none (.lit (.nat 3)))]) (ta := (.cond (.call (.runtime .natLe) [(.move (.generated .operand 196)), (.move (.generated .operand 197))] false) (.mk [(.mk (.bind (.generated .operand 199)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 198)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 198))))), (.mk (.bind (.generated .operand 200)) none (.lit (.nat 4)))] (.succeed (.call (.runtime .natLe) [(.move (.generated .operand 199)), (.move (.generated .operand 200))] false))) (.mk [] (.succeed (.lit (.bool false)))))) (lb := []) (tb := (.succeed (.lit (.bool false)))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 196)) none (.block (.mk [(.mk (.bind (.generated .operand 194)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 193))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 193))))), (.mk (.bind (.generated .operand 195)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 194)), (.move (.generated .operand 195))] true)))), (.mk (.bind (.generated .operand 197)) none (.lit (.nat 3)))]) (ce := (.call (.runtime .natLe) [(.move (.generated .operand 196)), (.move (.generated .operand 197))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 194)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 193))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 193))))), (.mk (.bind (.generated .operand 195)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 194)), (.move (.generated .operand 195))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 193))]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 193))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 199)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 198)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 198))))), (.mk (.bind (.generated .operand 200)) none (.lit (.nat 4)))]) (ta := (.succeed (.call (.runtime .natLe) [(.move (.generated .operand 199)), (.move (.generated .operand 200))] false))) (lb := []) (tb := (.succeed (.lit (.bool false)))) (Corr.fOfB (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 198)), .wild]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 198))) (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.fOfB (Corr.bOfE (Corr.buildConst rfl))))) (Corr.fOfB (Corr.bOfE (Corr.buildConst rfl)))))⟩⟩ + +theorem fun39 : FunOK program krate flags 39 := + ⟨_, rfl, .inl ⟨_, _, [], (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 202)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 201)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 201))))), (.mk (.bind (.generated .operand 203)) none (.copy (.generated .binding 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 202)), (.move (.generated .operand 203))] false))) (.block (.mk [(.mk (.bind (.generated .operand 205)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 204))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 204))))), (.mk (.bind (.generated .operand 206)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 205)), (.move (.generated .operand 206))] true))))), [(1, .nat, (some 1)), (0, (.pair .nat .nat), (some 0))], rfl, rfl, + (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 202)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 201)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 201))))), (.mk (.bind (.generated .operand 203)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 202)), (.move (.generated .operand 203))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 201)), .wild]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 201))) (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 205)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 204))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 204))))), (.mk (.bind (.generated .operand 206)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 205)), (.move (.generated .operand 206))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 204))]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 204))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | 3 => exact fun3 + | 4 => exact fun4 + | 5 => exact fun5 + | 6 => exact fun6 + | 7 => exact fun7 + | 8 => exact fun8 + | 9 => exact fun9 + | 10 => exact fun10 + | 11 => exact fun11 + | 12 => exact fun12 + | 13 => exact fun13 + | 14 => exact fun14 + | 15 => exact fun15 + | 16 => exact fun16 + | 17 => exact fun17 + | 18 => exact fun18 + | 19 => exact fun19 + | 20 => exact fun20 + | 21 => exact fun21 + | 22 => exact fun22 + | 23 => exact fun23 + | 24 => exact fun24 + | 25 => exact fun25 + | 26 => exact fun26 + | 27 => exact fun27 + | 28 => exact fun28 + | 29 => exact fun29 + | 30 => exact fun30 + | 31 => exact fun31 + | 32 => exact fun32 + | 33 => exact fun33 + | 34 => exact fun34 + | 35 => exact fun35 + | 36 => exact fun36 + | 37 => exact fun37 + | 38 => exact fun38 + | 39 => exact fun39 + | _ + 40 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.RustStd diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R4.lean b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R4.lean new file mode 100644 index 000000000..cd5982709 --- /dev/null +++ b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R4.lean @@ -0,0 +1,142 @@ +import LexLeanPreservation.Core +import LexLeanPreservation.Values +import LexLeanPreservation.Primitives +import LexLeanPreservation.Fixed +import LexLeanPreservation.Keys +import LexLeanPreservation.Templates +import LexLeanPreservation.Validate +import Reasoning.Budget +import Reasoning.Clinic +import Reasoning.Main +import Reasoning.Planner +import Reasoning.Screening +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +set_option linter.unusedVariables false +namespace LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4 + +def __prog : _root_.LexLeanTarget.TargetSyntax.Program := + { adts := [{ constructors := [[(.option .nat), .bool, (.adt 1)]] }, + { constructors := [[.nat, .nat, .nat, .nat, .nat, .nat]] }], functions := [ + { parameters := [0], types := [.nat], result := .nat, + body := (.«match» .nat (.call 1 [(.var 0)]) [(.arm .ok [1] (.var 1)), (.arm .error [2] (.value .nat (.nat 9)))]) }, + { parameters := [0], types := [.nat], result := (.result .nat (.pair .bool .bool)), + body := (.«let» 1 (.adt 0) (.call 2 [(.var 0)]) (.«match» (.result .nat (.pair .bool .bool)) (.field (.var 1) 0) [(.arm .some [2] (.build .ok (.result .nat (.pair .bool .bool)) [(.var 2)])), (.arm .none [] (.build .error (.result .nat (.pair .bool .bool)) [(.call 3 [(.var 1)])]))])) }, + { parameters := [0], types := [.nat], result := (.adt 0), + body := (.call 4 [(.closure 5 [(.var 0)]), (.build (.adt 0) (.adt 0) [(.build .none (.option .nat) []), (.build .false .bool []), (.build (.adt 0) (.adt 1) [(.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0))])]), (.call 6 [(.var 0)])]) }, + { parameters := [0], types := [(.adt 0)], result := (.pair .bool .bool), + body := (.«match» (.pair .bool .bool) (.field (.var 0) 1) [(.arm .true [] (.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])), (.arm .false [] (.«match» (.pair .bool .bool) (.prim .natEq [(.field (.field (.var 0) 2) 4), (.value .nat (.nat 0))]) [(.arm .true [] (.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])])), (.arm .false [] (.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])]))]))]) }, + { parameters := [0, 1, 2], types := [(.fn [(.adt 0), .nat] (.adt 0)), (.adt 0), (.list .nat)], result := (.adt 0), + body := (.«match» (.adt 0) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 4 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, + { parameters := [0, 1, 2], types := [.nat, (.adt 0), .nat], result := (.adt 0), + body := (.call 7 [(.var 0), (.var 1), (.var 2)]) }, + { parameters := [0], types := [.nat], result := (.list .nat), + body := (.«match» (.list .nat) (.«let» 1 .nat (.var 0) (.«let» 2 (.list .nat) (.call 8 [(.var 1)]) (.cond (.call 9 [(.var 1), (.var 2)]) (.build .ok (.result (.list .nat) (.pair .bool .bool)) [(.var 2)]) (.build .error (.result (.list .nat) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])])])))) [(.arm .ok [3] (.var 3)), (.arm .error [4] (.build .nil (.list .nat) []))]) }, + { parameters := [0, 1, 2], types := [.nat, (.adt 0), .nat], result := (.adt 0), + body := (.«match» (.adt 0) (.field (.var 1) 0) [(.arm .some [3] (.var 1)), (.arm .none [] (.«match» (.adt 0) (.prim .natLt [(.field (.field (.var 1) 2) 4), (.value .nat (.nat 3))]) [(.arm .true [] (.build (.adt 0) (.adt 0) [(.call 10 [(.var 0), (.var 2)]), (.field (.var 1) 1), (.build (.adt 0) (.adt 1) [(.prim .natAdd [(.field (.field (.var 1) 2) 0), (.value .nat (.nat 1))]), (.prim .natAdd [(.field (.field (.var 1) 2) 1), (.value .nat (.nat 1))]), (.field (.field (.var 1) 2) 2), (.field (.field (.var 1) 2) 3), (.prim .natAdd [(.field (.field (.var 1) 2) 4), (.value .nat (.nat 1))]), (.field (.field (.var 1) 2) 5)])])), (.arm .false [] (.build (.adt 0) (.adt 0) [(.build .none (.option .nat) []), (.build .true .bool []), (.field (.var 1) 2)]))]))]) }, + { parameters := [0], types := [.nat], result := (.list .nat), + body := (.call 11 [(.var 0)]) }, + { parameters := [0, 1], types := [.nat, (.list .nat)], result := .bool, + body := (.prim .natLe [(.prim .length [(.var 1)]), (.value .nat (.nat 4))]) }, + { parameters := [0, 1], types := [.nat, .nat], result := (.option .nat), + body := (.cond (.call 12 [(.var 0), (.var 1)]) (.build .some (.option .nat) [(.var 1)]) (.build .none (.option .nat) [])) }, + { parameters := [0], types := [.nat], result := (.list .nat), + body := (.build .cons (.list .nat) [(.prim .natSub [(.var 0), (.value .nat (.nat 10))]), (.build .cons (.list .nat) [(.prim .natSub [(.var 0), (.value .nat (.nat 20))]), (.build .cons (.list .nat) [(.prim .natSub [(.var 0), (.value .nat (.nat 30))]), (.build .cons (.list .nat) [(.prim .natSub [(.var 0), (.value .nat (.nat 50))]), (.build .nil (.list .nat) [])])])])]) }, + { parameters := [0, 1], types := [.nat, .nat], result := .bool, + body := (.prim .natLe [(.prim .natAdd [(.var 1), (.var 1)]), (.var 0)]) }] } + +def __enc_1 (__s : (Reasoning.Screening.Dose.Ledger)) : _root_.LexLeanTarget.TargetSyntax.Value := + _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).iterations), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).attempts), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).firings), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).expansions), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).verifications), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).frontier)] + +def __enc_0 (__s : (Reasoning.Screening.Dose.Trial)) : _root_.LexLeanTarget.TargetSyntax.Value := + _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (__s).found), (_root_.LexLeanTarget.TargetSyntax.Value.bool (__s).truncated), (__enc_1 (__s).ledger)] + +def __fits_12 (w : Nat) (r : Nat) : Bool := + ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (r + r) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_12 (w : Nat) (r : Nat) : _root_.LexLeanPreservation.FunRel __prog 12 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w), (_root_.LexLeanTarget.TargetSyntax.Value.nat r)] (_root_.LexLeanPreservation.Rel (__fits_12 w r) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Screening.safeCheck w r))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd r r)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe (r + r) w)) + +def __fits_10 (w : Nat) (_yc : Nat) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && (__fits_12 (w) (_yc))) && (if (Reasoning.Screening.safeCheck (w) (_yc)) then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Screening.safeCheck in +theorem __rel_10 (w : Nat) (_yc : Nat) : _root_.LexLeanPreservation.FunRel __prog 10 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w), (_root_.LexLeanTarget.TargetSyntax.Value.nat _yc)] (_root_.LexLeanPreservation.Rel (__fits_10 w _yc) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Screening.Dose.verify w _yc))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Option.some (_yc) : (Option Nat)) else (Option.none : (Option Nat)))) (Reasoning.Screening.safeCheck (w) (_yc)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_12 (w) (_yc))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_7 (w : Nat) (_yt : (Reasoning.Screening.Dose.Trial)) (_yc : Nat) : Bool := + (Bool.true && (match (_yt).found with | Option.some _yhit => Bool.true | Option.none => (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (match (Nat.blt ((_yt).ledger).verifications (3 : Nat)) with | Bool.true => ((((Bool.true && (Bool.true && Bool.true)) && (__fits_10 (w) (_yc))) && (Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yt).ledger).iterations + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yt).ledger).attempts + (1 : Nat)) 18446744073709551616)) && (Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yt).ledger).verifications + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true)))))) && Bool.true) && Bool.true))) && Bool.true) | Bool.false => (((Bool.true && Bool.true) && ((Bool.true && Bool.true) && (Bool.true && Bool.true))) && Bool.true))))) + +attribute [local irreducible] Reasoning.Screening.Dose.verify in +theorem __rel_7 (w : Nat) (_yt : (Reasoning.Screening.Dose.Trial)) (_yc : Nat) : _root_.LexLeanPreservation.FunRel __prog 7 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w), (__enc_0 _yt), (_root_.LexLeanTarget.TargetSyntax.Value.nat _yc)] (_root_.LexLeanPreservation.Rel (__fits_7 w _yt _yc) (__enc_0 (Reasoning.Screening.Dose.«try» w _yt _yc))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Option Nat)) => (match __a with | Option.some _yhit => Bool.true | Option.none => (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (match (Nat.blt ((_yt).ledger).verifications (3 : Nat)) with | Bool.true => ((((Bool.true && (Bool.true && Bool.true)) && (__fits_10 (w) (_yc))) && (Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yt).ledger).iterations + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yt).ledger).attempts + (1 : Nat)) 18446744073709551616)) && (Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yt).ledger).verifications + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true)))))) && Bool.true) && Bool.true))) && Bool.true) | Bool.false => (((Bool.true && Bool.true) && ((Bool.true && Bool.true) && (Bool.true && Bool.true))) && Bool.true))))) (fun (__a : (Option Nat)) => __enc_0 (match __a with | Option.some _yhit => _yt | Option.none => (match (Nat.blt ((_yt).ledger).verifications (3 : Nat)) with | Bool.true => ({ found := (Reasoning.Screening.Dose.verify (w) (_yc)), truncated := (_yt).truncated, ledger := ({ iterations := (((_yt).ledger).iterations + (1 : Nat)), attempts := (((_yt).ledger).attempts + (1 : Nat)), firings := ((_yt).ledger).firings, expansions := ((_yt).ledger).expansions, verifications := (((_yt).ledger).verifications + (1 : Nat)), frontier := ((_yt).ledger).frontier } : (Reasoning.Screening.Dose.Ledger)) } : (Reasoning.Screening.Dose.Trial)) | Bool.false => ({ found := (Option.none : (Option Nat)), truncated := Bool.true, ledger := (_yt).ledger } : (Reasoning.Screening.Dose.Trial))))) (_yt).found (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (fun (__a : (Option Nat)) _ => match __a with | Option.some _yhit => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV _root_.LexLeanTarget.TargetSyntax.Value.bool (fun (__a : Bool) => (match __a with | Bool.true => ((((Bool.true && (Bool.true && Bool.true)) && (__fits_10 (w) (_yc))) && (Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yt).ledger).iterations + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yt).ledger).attempts + (1 : Nat)) 18446744073709551616)) && (Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yt).ledger).verifications + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true)))))) && Bool.true) && Bool.true))) && Bool.true) | Bool.false => (((Bool.true && Bool.true) && ((Bool.true && Bool.true) && (Bool.true && Bool.true))) && Bool.true))) (fun (__a : Bool) => __enc_0 (match __a with | Bool.true => ({ found := (Reasoning.Screening.Dose.verify (w) (_yc)), truncated := (_yt).truncated, ledger := ({ iterations := (((_yt).ledger).iterations + (1 : Nat)), attempts := (((_yt).ledger).attempts + (1 : Nat)), firings := ((_yt).ledger).firings, expansions := ((_yt).ledger).expansions, verifications := (((_yt).ledger).verifications + (1 : Nat)), frontier := ((_yt).ledger).frontier } : (Reasoning.Screening.Dose.Ledger)) } : (Reasoning.Screening.Dose.Trial)) | Bool.false => ({ found := (Option.none : (Option Nat)), truncated := Bool.true, ledger := (_yt).ledger } : (Reasoning.Screening.Dose.Trial)))) (Nat.blt ((_yt).ledger).verifications (3 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt ((_yt).ledger).verifications (3 : Nat))) (fun (__a : Bool) _ => match __a with | Bool.true => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_10 (w) (_yc))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((_yt).ledger).iterations (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((_yt).ledger).attempts (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((_yt).ledger).verifications (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) _root_.LexLeanPreservation.convL_nil)))))) _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil))) _root_.LexLeanPreservation.construct_adt)) | Bool.false => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))) _root_.LexLeanPreservation.construct_adt))))))))) + +def __fits_5 (w : Nat) (_yt : (Reasoning.Screening.Dose.Trial)) (_yc : Nat) : Bool := + ((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_7 (w) (_yt) (_yc))) + +attribute [local irreducible] Reasoning.Screening.Dose.«try» in +theorem __rel_5 (w : Nat) (_yt : (Reasoning.Screening.Dose.Trial)) (_yc : Nat) : _root_.LexLeanPreservation.FunRel __prog 5 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w), (__enc_0 _yt), (_root_.LexLeanTarget.TargetSyntax.Value.nat _yc)] (_root_.LexLeanPreservation.Rel (__fits_5 w _yt _yc) (__enc_0 ((Reasoning.Screening.Dose.«try» (w) (_yt) (_yc))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (__rel_7 (w) (_yt) (_yc))) + +def __fits_11 (w : Nat) : Bool := + ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) + +theorem __rel_11 (w : Nat) : _root_.LexLeanPreservation.FunRel __prog 11 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w)] (_root_.LexLeanPreservation.Rel (__fits_11 w) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Screening.DoseCandidates w))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub w (10 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub w (20 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub w (30 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub w (50 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) + +def __fits_8 (_yinput : Nat) : Bool := + ((Bool.true && Bool.true) && (__fits_11 (_yinput))) + +attribute [local irreducible] Reasoning.Screening.DoseCandidates in +theorem __rel_8 (_yinput : Nat) : _root_.LexLeanPreservation.FunRel __prog 8 [(_root_.LexLeanTarget.TargetSyntax.Value.nat _yinput)] (_root_.LexLeanPreservation.Rel (__fits_8 _yinput) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Screening.DoseModel _yinput))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_11 (_yinput))) + +def __fits_9 (w : Nat) (doses : (List Nat)) : Bool := + ((((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (doses) : Nat) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_9 (w : Nat) (doses : (List Nat)) : _root_.LexLeanPreservation.FunRel __prog 9 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w), ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) doses)] (_root_.LexLeanPreservation.Rel (__fits_9 w doses) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Screening.shortCheck w doses))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) doses)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe (_root_.LexLeanRuntime.length (doses) : Nat) (4 : Nat))) + +def __fits_6 (w : Nat) : Bool := + ((Bool.true && (let _ychecked1_input : Nat := w; (((Bool.true && Bool.true) && (__fits_8 (_ychecked1_input))) && (let _ychecked1_output : (List Nat) := (Reasoning.Screening.DoseModel (_ychecked1_input)); (((Bool.true && (Bool.true && Bool.true)) && (__fits_9 (_ychecked1_input) (_ychecked1_output))) && (if (Reasoning.Screening.shortCheck (_ychecked1_input) (_ychecked1_output)) then ((Bool.true && Bool.true) && Bool.true) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))))) && (match (let _ychecked1_input : Nat := w; (let _ychecked1_output : (List Nat) := (Reasoning.Screening.DoseModel (_ychecked1_input)); (if (Reasoning.Screening.shortCheck (_ychecked1_input) (_ychecked1_output)) then (Except.ok (_ychecked1_output) : (Except (Prod Bool Bool) (List Nat))) else (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (List Nat)))))) with | Except.ok proposed => Bool.true | Except.error refusal => (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Screening.DoseModel Reasoning.Screening.shortCheck in +theorem __rel_6 (w : Nat) : _root_.LexLeanPreservation.FunRel __prog 6 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w)] (_root_.LexLeanPreservation.Rel (__fits_6 w) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Screening.Dose.candidates w))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun (__a : (Except (Prod Bool Bool) (List Nat))) => (match __a with | Except.ok proposed => Bool.true | Except.error refusal => (Bool.true && Bool.true))) (fun (__a : (Except (Prod Bool Bool) (List Nat))) => (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (match __a with | Except.ok proposed => proposed | Except.error refusal => ([] : List Nat))) (let _ychecked1_input : Nat := w; (let _ychecked1_output : (List Nat) := (Reasoning.Screening.DoseModel (_ychecked1_input)); (if (Reasoning.Screening.shortCheck (_ychecked1_input) (_ychecked1_output)) then (Except.ok (_ychecked1_output) : (Except (Prod Bool Bool) (List Nat))) else (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (List Nat)))))) (let _ychecked1_input : Nat := w; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_var rfl) (let _ychecked1_output : (List Nat) := (Reasoning.Screening.DoseModel (_ychecked1_input)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_8 (_ychecked1_input))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && Bool.true) && Bool.true) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) (if __b then (Except.ok (_ychecked1_output) : (Except (Prod Bool Bool) (List Nat))) else (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (List Nat))))) (Reasoning.Screening.shortCheck (_ychecked1_input) (_ychecked1_output)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_9 (_ychecked1_input) (_ychecked1_output))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error))))) (fun (__a : (Except (Prod Bool Bool) (List Nat))) _ => match __a with | Except.ok proposed => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | Except.error refusal => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil))))) + +def __fits_2 (w : Nat) : Bool := + (((Bool.true && Bool.true) && ((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && (((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true)))))) && Bool.true) && Bool.true))) && Bool.true) && (((Bool.true && Bool.true) && (__fits_6 (w))) && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Reasoning.Screening.Dose.Trial)) (__p1 : Nat) => __fits_5 (w) __p0 __p1) ((fun (_yt : (Reasoning.Screening.Dose.Trial)) (_yc : Nat) => (Reasoning.Screening.Dose.«try» (w) (_yt) (_yc)))) (({ found := (Option.none : (Option Nat)), truncated := Bool.false, ledger := ({ iterations := (0 : Nat), attempts := (0 : Nat), firings := (0 : Nat), expansions := (0 : Nat), verifications := (0 : Nat), frontier := (0 : Nat) } : (Reasoning.Screening.Dose.Ledger)) } : (Reasoning.Screening.Dose.Trial))) ((Reasoning.Screening.Dose.candidates (w))))) + +attribute [local irreducible] Reasoning.Screening.Dose.candidates Reasoning.Screening.Dose.«try» in +theorem __rel_2 (w : Nat) : _root_.LexLeanPreservation.FunRel __prog 2 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w)] (_root_.LexLeanPreservation.Rel (__fits_2 w) (__enc_0 (Reasoning.Screening.Dose.run w))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)))))) _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil))) _root_.LexLeanPreservation.construct_adt) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_6 (w))) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.nat) (es := __enc_0) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) ((fun (_yt : (Reasoning.Screening.Dose.Trial)) (_yc : Nat) => (Reasoning.Screening.Dose.«try» (w) (_yt) (_yc)))) (fun (__p0 : (Reasoning.Screening.Dose.Trial)) (__p1 : Nat) => __fits_5 (w) __p0 __p1) 5 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w)] (fun (__p0 : (Reasoning.Screening.Dose.Trial)) (__p1 : Nat) => __rel_5 (w) __p0 __p1) (p := __prog) (fi := 4) (ta := .nat) (ts := (.adt 0)) rfl (({ found := (Option.none : (Option Nat)), truncated := Bool.false, ledger := ({ iterations := (0 : Nat), attempts := (0 : Nat), firings := (0 : Nat), expansions := (0 : Nat), verifications := (0 : Nat), frontier := (0 : Nat) } : (Reasoning.Screening.Dose.Ledger)) } : (Reasoning.Screening.Dose.Trial))) ((Reasoning.Screening.Dose.candidates (w))))) + +def __fits_3 (_yt : (Reasoning.Screening.Dose.Trial)) : Bool := + (Bool.true && (match (_yt).truncated with | Bool.true => (((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) | Bool.false => (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (match (Nat.beq ((_yt).ledger).verifications (0 : Nat)) with | Bool.true => (((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) | Bool.false => (((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true))))) + +theorem __rel_3 (_yt : (Reasoning.Screening.Dose.Trial)) : _root_.LexLeanPreservation.FunRel __prog 3 [(__enc_0 _yt)] (_root_.LexLeanPreservation.Rel (__fits_3 _yt) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (Reasoning.Screening.Dose.failure _yt))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV _root_.LexLeanTarget.TargetSyntax.Value.bool (fun (__a : Bool) => (match __a with | Bool.true => (((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) | Bool.false => (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (match (Nat.beq ((_yt).ledger).verifications (0 : Nat)) with | Bool.true => (((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) | Bool.false => (((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true))))) (fun (__a : Bool) => (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (match __a with | Bool.true => ((Bool.false, Bool.false) : (Prod Bool Bool)) | Bool.false => (match (Nat.beq ((_yt).ledger).verifications (0 : Nat)) with | Bool.true => ((Bool.false, Bool.true) : (Prod Bool Bool)) | Bool.false => ((Bool.true, Bool.false) : (Prod Bool Bool))))) (_yt).truncated (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (fun (__a : Bool) _ => match __a with | Bool.true => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair)) | Bool.false => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV _root_.LexLeanTarget.TargetSyntax.Value.bool (fun (__a : Bool) => (match __a with | Bool.true => (((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) | Bool.false => (((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true))) (fun (__a : Bool) => (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (match __a with | Bool.true => ((Bool.false, Bool.true) : (Prod Bool Bool)) | Bool.false => ((Bool.true, Bool.false) : (Prod Bool Bool)))) (Nat.beq ((_yt).ledger).verifications (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq ((_yt).ledger).verifications (0 : Nat))) (fun (__a : Bool) _ => match __a with | Bool.true => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair)) | Bool.false => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))))))))) + +def __fits_1 (w : Nat) : Bool := + (((Bool.true && Bool.true) && (__fits_2 (w))) && (let _yfinal : (Reasoning.Screening.Dose.Trial) := (Reasoning.Screening.Dose.run (w)); (Bool.true && (match (_yfinal).found with | Option.some _yv => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((Bool.true && Bool.true) && (__fits_3 (_yfinal))) && Bool.true) && Bool.true))))) + +attribute [local irreducible] Reasoning.Screening.Dose.failure Reasoning.Screening.Dose.run in +theorem __rel_1 (w : Nat) : _root_.LexLeanPreservation.FunRel __prog 1 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w)] (_root_.LexLeanPreservation.Rel (__fits_1 w) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Screening.Dose.verdict w))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (let _yfinal : (Reasoning.Screening.Dose.Trial) := (Reasoning.Screening.Dose.run (w)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_2 (w))) (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Option Nat)) => (match __a with | Option.some _yv => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((Bool.true && Bool.true) && (__fits_3 (_yfinal))) && Bool.true) && Bool.true))) (fun (__a : (Option Nat)) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (match __a with | Option.some _yv => (Except.ok (_yv) : (Except (Prod Bool Bool) Nat)) | Option.none => (Except.error ((Reasoning.Screening.Dose.failure (_yfinal))) : (Except (Prod Bool Bool) Nat)))) (_yfinal).found (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (fun (__a : (Option Nat)) _ => match __a with | Option.some _yv => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_3 (_yfinal))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)))))) + +def __fits_0 (w : Nat) : Bool := + (((Bool.true && Bool.true) && (__fits_1 (w))) && (match (Reasoning.Screening.Dose.verdict (w)) with | Except.ok dose => Bool.true | Except.error failure => Bool.true)) + +attribute [local irreducible] Reasoning.Screening.Dose.verdict in +theorem __rel_0 (w : Nat) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w)] (_root_.LexLeanPreservation.Rel (__fits_0 w) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.doseLevel w))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Except (Prod Bool Bool) Nat)) => (match __a with | Except.ok dose => Bool.true | Except.error failure => Bool.true)) (fun (__a : (Except (Prod Bool Bool) Nat)) => _root_.LexLeanTarget.TargetSyntax.Value.nat (match __a with | Except.ok dose => dose | Except.error failure => (9 : Nat))) (Reasoning.Screening.Dose.verdict (w)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_1 (w))) (fun (__a : (Except (Prod Bool Bool) Nat)) _ => match __a with | Except.ok dose => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | Except.error failure => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value)))) + +def denote (w : Nat) : _root_.LexLeanPreservation.Obs := + _root_.cond (__fits_0 w) (_root_.LexLeanPreservation.Obs.value ((_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.doseLevel w)))) _root_.LexLeanPreservation.Obs.overflow + +theorem root (w : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w)] (_root_.LexLeanPreservation.Rel (__fits_0 w) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.doseLevel w))) := + _root_.LexLeanPreservation.run_of_funRel (__rel_0 w) + +end LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4 diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R4/Compose/RustStd.lex.tex b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R4/Compose/RustStd.lex.tex new file mode 100644 index 000000000..458cbb9a2 --- /dev/null +++ b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R4/Compose/RustStd.lex.tex @@ -0,0 +1,877 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4, + LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.Compose.RustStd.__wt_1 : @16 := @717 { + all: [LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.Compose.RustStd.__wt_1], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.Compose.RustStd.__wt_0 : @724 := @1108 { + all: [LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.Compose.RustStd.__wt_0], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.Compose.RustStd.root : @1754 := @1755 { + all: [LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.RustStd.program +@1 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.RustStd.krate +@2 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.RustStd.flags +@3 := Reasoning.Screening.Dose.Ledger +@4 := #0 +@5 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.__enc_1 +@6 := @5 @4 +@7 := LexLeanPreservation.Rust.WT +@8 := LexLeanTarget.TargetSyntax.Ty.adt +@9 := 1 +@10 := @8 @9 +@11 := @7 @0 +@12 := @11 @1 +@13 := @12 @2 +@16 := (__s : @3) -> @13 @6 @10 +@17 := Reasoning.Screening.Dose.Ledger.iterations +@18 := @17 @4 +@19 := Reasoning.Screening.Dose.Ledger.attempts +@20 := @19 @4 +@21 := Reasoning.Screening.Dose.Ledger.firings +@22 := @21 @4 +@23 := Reasoning.Screening.Dose.Ledger.expansions +@24 := @23 @4 +@25 := Reasoning.Screening.Dose.Ledger.verifications +@26 := @25 @4 +@27 := Reasoning.Screening.Dose.Ledger.frontier +@28 := @27 @4 +@29 := LexLeanTarget.TargetSyntax.Value.nat +@30 := @29 @18 +@31 := LexLeanTarget.TargetSyntax.Ty.nat +@32 := LexLeanTarget.TargetSyntax.Program +@33 := LexLeanPreservation.Rust.RCrate +@34 := LexLeanPreservation.Rust.Flags +@35 := Nat +@36 := #3 +@37 := @7 @36 +@38 := #2 +@39 := @37 @38 +@40 := #1 +@41 := @39 @40 +@42 := @29 @4 +@48 := {p : @32} -> {c : @33} -> {A : @34} -> (n : @35) -> @41 @42 @31 +@50 := LexLeanPreservation.Rust.wt_nat @0 +@52 := @11 @38 @40 +@57 := {c : @33} -> {A : @34} -> (n : @35) -> @52 @42 @31 +@58 := @50 @1 +@59 := @12 @40 +@63 := {A : @34} -> (n : @35) -> @59 @42 @31 +@64 := @58 @2 +@65 := @13 @42 +@66 := @65 @31 +@67 := (n : @35) -> @66 +@68 := @64 @18 +@70 := @13 @30 @31 +@71 := @29 @20 +@72 := @64 @20 +@74 := @13 @71 @31 +@75 := @29 @22 +@76 := @64 @22 +@78 := @13 @75 @31 +@79 := @29 @24 +@80 := @64 @24 +@82 := @13 @79 @31 +@83 := @29 @26 +@84 := @64 @26 +@86 := @13 @83 @31 +@87 := @29 @28 +@88 := @64 @28 +@90 := @13 @87 @31 +@91 := LexLeanTarget.TargetSyntax.Value +@92 := LexLeanTarget.TargetSyntax.Ty +@93 := List.nil.{0} +@94 := List.cons.{0} +@95 := @93 @91 +@96 := @94 @91 +@98 := @96 @87 @95 +@100 := @96 @83 @98 +@102 := @96 @79 @100 +@104 := @96 @75 @102 +@106 := @96 @71 @104 +@108 := @96 @30 @106 +@109 := @93 @92 +@110 := @94 @92 +@111 := @110 @31 +@112 := @111 @109 +@113 := @111 @112 +@114 := @111 @113 +@115 := @111 @114 +@116 := @111 @115 +@117 := @111 @116 +@118 := LexLeanPreservation.Rust.WTL +@126 := {p : @32} -> {c : @33} -> {A : @34} -> @118 @38 @40 @4 @95 @109 +@128 := LexLeanPreservation.Rust.wtl_nil @0 +@129 := @118 @0 +@135 := {c : @33} -> {A : @34} -> @129 @40 @4 @95 @109 +@136 := @128 @1 +@137 := @129 @1 +@141 := {A : @34} -> @137 @4 @95 @109 +@142 := @136 @2 +@143 := @137 @2 +@144 := @143 @95 +@145 := @144 @109 +@146 := List.{0} +@147 := @146 @91 +@148 := @146 @92 +@149 := #6 +@150 := @7 @149 +@151 := #5 +@152 := @150 @151 +@153 := #4 +@154 := @152 @153 +@156 := @154 @36 @38 +@157 := #7 +@162 := @118 @157 @149 @151 @38 @40 +@163 := #8 +@166 := @118 @163 @157 @149 +@168 := @96 @151 @36 +@169 := @166 @168 +@171 := @110 @153 @38 +@181 := {p : @32} -> + {c : @33} -> + {A : @34} -> + {v : @91} -> {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @156) -> (hs : @162) -> @169 @171 +@183 := LexLeanPreservation.Rust.wtl_cons @0 +@185 := @11 @151 @153 +@187 := @185 @36 @38 +@191 := @129 @149 @151 @38 @40 +@203 := {c : @33} -> + {A : @34} -> + {v : @91} -> + {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @187) -> (hs : @191) -> @129 @157 @149 @168 @171 +@204 := @183 @1 +@205 := @12 @153 +@207 := @205 @36 @38 +@210 := @137 @151 @38 @40 +@220 := {A : @34} -> + {v : @91} -> + {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @207) -> (hs : @210) -> @137 @149 @168 @171 +@221 := @204 @2 +@223 := @13 @36 @38 +@225 := @143 @38 @40 +@233 := {v : @91} -> + {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @223) -> (hs : @225) -> @143 @168 @171 +@234 := @221 @87 +@236 := @29 (@27 @36) +@249 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @236 @38) -> (hs : @225) -> @143 (@96 (@29 (@27 @151)) @36) @171 +@250 := @234 @31 +@252 := @29 (@27 @38) +@254 := @13 @252 @31 +@259 := @143 (@96 (@29 (@27 @153)) @36) +@260 := @111 @38 +@265 := {vs : @147} -> {ts : @148} -> (h : @254) -> (hs : @225) -> @259 @260 +@266 := @250 @95 +@268 := @29 (@27 @40) +@270 := @13 @268 @31 +@271 := @144 @40 +@273 := @96 @236 @95 +@278 := {ts : @148} -> (h : @270) -> (hs : @271) -> @143 @273 @260 +@279 := @266 @109 +@281 := @96 @252 @95 +@282 := @143 @281 +@285 := (h : @90) -> (hs : @145) -> @282 @112 +@286 := @279 @88 +@288 := @96 @268 @95 +@290 := @143 @288 @112 +@291 := (hs : @145) -> @290 +@292 := @286 @142 +@294 := @143 @98 @112 +@295 := @221 @83 +@297 := @29 (@25 @36) +@310 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @297 @38) -> (hs : @225) -> @143 (@96 (@29 (@25 @151)) @36) @171 +@311 := @295 @31 +@313 := @29 (@25 @38) +@325 := {vs : @147} -> + {ts : @148} -> (h : @13 @313 @31) -> (hs : @225) -> @143 (@96 (@29 (@25 @153)) @36) @260 +@326 := @311 @98 +@328 := @29 (@25 @40) +@330 := @13 @328 @31 +@331 := @282 @40 +@333 := @96 @297 @273 +@338 := {ts : @148} -> (h : @330) -> (hs : @331) -> @143 @333 @260 +@339 := @326 @112 +@341 := @96 @313 @281 +@342 := @143 @341 +@345 := (h : @86) -> (hs : @290) -> @342 @113 +@346 := @339 @84 +@348 := @96 @328 @288 +@350 := @143 @348 @113 +@351 := (hs : @294) -> @350 +@352 := @346 @292 +@354 := @143 @100 @113 +@355 := @221 @79 +@357 := @29 (@23 @36) +@370 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @357 @38) -> (hs : @225) -> @143 (@96 (@29 (@23 @151)) @36) @171 +@371 := @355 @31 +@373 := @29 (@23 @38) +@385 := {vs : @147} -> + {ts : @148} -> (h : @13 @373 @31) -> (hs : @225) -> @143 (@96 (@29 (@23 @153)) @36) @260 +@386 := @371 @100 +@388 := @29 (@23 @40) +@390 := @13 @388 @31 +@391 := @342 @40 +@393 := @96 @357 @333 +@398 := {ts : @148} -> (h : @390) -> (hs : @391) -> @143 @393 @260 +@399 := @386 @113 +@401 := @96 @373 @341 +@402 := @143 @401 +@405 := (h : @82) -> (hs : @350) -> @402 @114 +@406 := @399 @80 +@408 := @96 @388 @348 +@410 := @143 @408 @114 +@411 := (hs : @354) -> @410 +@412 := @406 @352 +@414 := @143 @102 @114 +@415 := @221 @75 +@417 := @29 (@21 @36) +@430 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @417 @38) -> (hs : @225) -> @143 (@96 (@29 (@21 @151)) @36) @171 +@431 := @415 @31 +@433 := @29 (@21 @38) +@445 := {vs : @147} -> + {ts : @148} -> (h : @13 @433 @31) -> (hs : @225) -> @143 (@96 (@29 (@21 @153)) @36) @260 +@446 := @431 @102 +@448 := @29 (@21 @40) +@450 := @13 @448 @31 +@451 := @402 @40 +@453 := @96 @417 @393 +@458 := {ts : @148} -> (h : @450) -> (hs : @451) -> @143 @453 @260 +@459 := @446 @114 +@461 := @96 @433 @401 +@462 := @143 @461 +@465 := (h : @78) -> (hs : @410) -> @462 @115 +@466 := @459 @76 +@468 := @96 @448 @408 +@470 := @143 @468 @115 +@471 := (hs : @414) -> @470 +@472 := @466 @412 +@474 := @143 @104 @115 +@475 := @221 @71 +@477 := @29 (@19 @36) +@490 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @477 @38) -> (hs : @225) -> @143 (@96 (@29 (@19 @151)) @36) @171 +@491 := @475 @31 +@493 := @29 (@19 @38) +@505 := {vs : @147} -> + {ts : @148} -> (h : @13 @493 @31) -> (hs : @225) -> @143 (@96 (@29 (@19 @153)) @36) @260 +@506 := @491 @104 +@508 := @29 (@19 @40) +@510 := @13 @508 @31 +@511 := @462 @40 +@513 := @96 @477 @453 +@518 := {ts : @148} -> (h : @510) -> (hs : @511) -> @143 @513 @260 +@519 := @506 @115 +@521 := @96 @493 @461 +@522 := @143 @521 +@525 := (h : @74) -> (hs : @470) -> @522 @116 +@526 := @519 @72 +@528 := @96 @508 @468 +@530 := @143 @528 @116 +@531 := (hs : @474) -> @530 +@532 := @526 @472 +@534 := @143 @106 @116 +@535 := @221 @30 +@537 := @29 (@17 @36) +@550 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @537 @38) -> (hs : @225) -> @143 (@96 (@29 (@17 @151)) @36) @171 +@551 := @535 @31 +@553 := @29 (@17 @38) +@565 := {vs : @147} -> + {ts : @148} -> (h : @13 @553 @31) -> (hs : @225) -> @143 (@96 (@29 (@17 @153)) @36) @260 +@566 := @551 @106 +@568 := @29 (@17 @40) +@570 := @13 @568 @31 +@571 := @522 @40 +@573 := @96 @537 @513 +@578 := {ts : @148} -> (h : @570) -> (hs : @571) -> @143 @573 @260 +@579 := @566 @116 +@581 := @96 @553 @521 +@582 := @143 @581 +@585 := (h : @70) -> (hs : @530) -> @582 @117 +@586 := @579 @68 +@588 := @96 @568 @528 +@590 := @143 @588 @117 +@591 := (hs : @534) -> @590 +@592 := @586 @532 +@594 := @143 @108 @117 +@595 := 0 +@596 := Eq.{1} +@597 := Option.{0} +@598 := @597 @148 +@599 := @596 @598 +@600 := LexLeanPreservation.Rust.adtFields +@604 := @599 (@600 @149 @36 @38) +@605 := Option.some.{0} +@606 := @605 @148 +@607 := @606 @4 +@608 := @604 @607 +@611 := @7 @163 @157 @149 +@612 := LexLeanTarget.TargetSyntax.Value.adt +@614 := @612 @153 @36 +@615 := @611 @614 +@616 := @8 @151 +@626 := {p : @32} -> + {c : @33} -> + {A : @34} -> + {i : @35} -> {k : @35} -> {fs : @147} -> {tys : @148} -> (h : @608) -> (hf : @162) -> @615 @616 +@628 := LexLeanPreservation.Rust.wt_adt @0 +@629 := @600 @0 +@633 := @599 (@629 @36 @38) @607 +@645 := {c : @33} -> + {A : @34} -> + {i : @35} -> + {k : @35} -> {fs : @147} -> {tys : @148} -> (h : @633) -> (hf : @191) -> @11 @157 @149 @614 @616 +@646 := @628 @1 +@656 := {A : @34} -> + {i : @35} -> + {k : @35} -> {fs : @147} -> {tys : @148} -> (h : @633) -> (hf : @210) -> @12 @149 @614 @616 +@657 := @646 @2 +@658 := @13 @614 +@665 := {i : @35} -> + {k : @35} -> {fs : @147} -> {tys : @148} -> (h : @633) -> (hf : @225) -> @658 @616 +@666 := @657 @9 +@667 := @629 @9 +@676 := {k : @35} -> + {fs : @147} -> {tys : @148} -> (h : @599 (@667 @38) @607) -> (hf : @225) -> @658 @10 +@677 := @666 @595 +@678 := @667 @595 +@679 := @599 @678 +@680 := @679 @607 +@681 := @612 @595 +@683 := @13 (@681 @36) +@688 := {fs : @147} -> {tys : @148} -> (h : @680) -> (hf : @225) -> @683 @10 +@689 := @677 @108 +@696 := {tys : @148} -> (h : @680) -> (hf : @582 @40) -> @13 (@681 @573) @10 +@697 := @689 @117 +@704 := (h : @679 (@606 @117)) -> (hf : @590) -> @13 (@681 @581) @10 +@705 := Eq.refl.{1} +@706 := @705 @598 +@708 := @697 (@706 @678) +@712 := (hf : @594) -> @13 (@681 @588) @10 +@713 := @708 @592 +@716 := @13 (@681 @108) @10 +@717 := fun (__s : @3) => @713 +@718 := Reasoning.Screening.Dose.Trial +@720 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.__enc_0 @4 +@721 := @8 @595 +@724 := (__s : @718) -> @13 @720 @721 +@725 := Reasoning.Screening.Dose.Trial.found +@726 := @725 @4 +@727 := Reasoning.Screening.Dose.Trial.truncated +@728 := @727 @4 +@729 := Reasoning.Screening.Dose.Trial.ledger +@730 := @729 @4 +@731 := LexLeanPreservation.encOption +@732 := @731 @35 +@733 := @732 @29 +@734 := @733 @726 +@735 := LexLeanTarget.TargetSyntax.Ty.option +@736 := @735 @31 +@738 := fun (__x : @35) => @64 @4 +@739 := Sort 1 +@740 := (a._@._internal._hyg.#0 : @4) -> @91 +@741 := @38 @4 +@744 := (x : @38) -> @154 @741 @40 +@745 := @597 @36 +@748 := @7 @157 @149 @151 +@751 := @731 @153 @36 @4 +@752 := @748 @751 +@753 := @735 @38 +@762 := {p : @32} -> + {c : @33} -> + {A : @34} -> {α : @739} -> {e : @740} -> {t : @92} -> (h : @744) -> (o : @745) -> @752 @753 +@764 := LexLeanPreservation.Rust.wt_encOption @0 +@778 := {c : @33} -> + {A : @34} -> + {α : @739} -> + {e : @740} -> + {t : @92} -> (h : (x : @38) -> @185 @741 @40) -> (o : @745) -> @11 @149 @151 @751 @753 +@779 := @764 @1 +@791 := {A : @34} -> + {α : @739} -> + {e : @740} -> {t : @92} -> (h : (x : @38) -> @205 @741 @40) -> (o : @745) -> @12 @151 @751 @753 +@792 := @779 @2 +@794 := @13 @741 @40 +@802 := {α : @739} -> + {e : @740} -> {t : @92} -> (h : (x : @38) -> @794) -> (o : @745) -> @13 @751 @753 +@803 := @792 @35 +@804 := (a._@._internal._hyg.#0 : @35) -> @91 +@805 := (x : @35) -> @794 +@806 := @597 @35 +@814 := {e : @804} -> {t : @92} -> (h : @805) -> (o : @806) -> @13 (@732 @36 @4) @753 +@815 := @803 @29 +@817 := (x : @35) -> @65 @40 +@819 := @13 (@733 @4) +@823 := {t : @92} -> (h : @817) -> (o : @806) -> @819 @753 +@824 := @815 @31 +@828 := (h : (x : @35) -> @66) -> (o : @806) -> @819 @736 +@830 := @824 @738 @726 +@832 := @13 @734 @736 +@833 := LexLeanTarget.TargetSyntax.Value.bool +@834 := @833 @728 +@835 := LexLeanTarget.TargetSyntax.Ty.bool +@836 := Bool +@837 := @833 @4 +@843 := {p : @32} -> {c : @33} -> {A : @34} -> (b : @836) -> @41 @837 @835 +@845 := LexLeanPreservation.Rust.wt_bool @0 +@850 := {c : @33} -> {A : @34} -> (b : @836) -> @52 @837 @835 +@851 := @845 @1 +@855 := {A : @34} -> (b : @836) -> @59 @837 @835 +@856 := @851 @2 +@859 := (b : @836) -> @13 @837 @835 +@860 := @856 @728 +@862 := @13 @834 @835 +@863 := @5 @730 +@865 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.Compose.RustStd.__wt_1 @730 +@867 := @96 @863 @95 +@869 := @96 @834 @867 +@871 := @96 @734 @869 +@872 := @110 @10 +@873 := @872 @109 +@874 := @110 @835 +@875 := @874 @873 +@876 := @110 @736 +@877 := @876 @875 +@878 := @221 @863 +@880 := @5 (@729 @36) +@893 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @880 @38) -> (hs : @225) -> @143 (@96 (@5 (@729 @151)) @36) @171 +@894 := @878 @10 +@896 := @5 (@729 @38) +@898 := @13 @896 @10 +@903 := @143 (@96 (@5 (@729 @153)) @36) +@904 := @872 @38 +@909 := {vs : @147} -> {ts : @148} -> (h : @898) -> (hs : @225) -> @903 @904 +@910 := @894 @95 +@912 := @5 (@729 @40) +@914 := @13 @912 @10 +@916 := @96 @880 @95 +@921 := {ts : @148} -> (h : @914) -> (hs : @271) -> @143 @916 @904 +@922 := @910 @109 +@924 := @13 @863 @10 +@926 := @96 @896 @95 +@927 := @143 @926 +@930 := (h : @924) -> (hs : @145) -> @927 @873 +@931 := @922 @865 +@933 := @96 @912 @95 +@935 := @143 @933 @873 +@936 := (hs : @145) -> @935 +@937 := @931 @142 +@939 := @143 @867 @873 +@940 := @221 @834 +@942 := @833 (@727 @36) +@955 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @942 @38) -> (hs : @225) -> @143 (@96 (@833 (@727 @151)) @36) @171 +@956 := @940 @835 +@958 := @833 (@727 @38) +@960 := @13 @958 @835 +@965 := @143 (@96 (@833 (@727 @153)) @36) +@966 := @874 @38 +@971 := {vs : @147} -> {ts : @148} -> (h : @960) -> (hs : @225) -> @965 @966 +@972 := @956 @867 +@974 := @833 (@727 @40) +@976 := @13 @974 @835 +@977 := @927 @40 +@979 := @96 @942 @916 +@984 := {ts : @148} -> (h : @976) -> (hs : @977) -> @143 @979 @966 +@985 := @972 @873 +@987 := @96 @958 @926 +@988 := @143 @987 +@991 := (h : @862) -> (hs : @935) -> @988 @875 +@992 := @985 @860 +@994 := @96 @974 @933 +@996 := @143 @994 @875 +@997 := (hs : @939) -> @996 +@998 := @992 @937 +@1000 := @143 @869 @875 +@1001 := @221 @734 +@1003 := @733 (@725 @36) +@1016 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @1003 @38) -> (hs : @225) -> @143 (@96 (@733 (@725 @151)) @36) @171 +@1017 := @1001 @736 +@1019 := @733 (@725 @38) +@1021 := @13 @1019 @736 +@1026 := @143 (@96 (@733 (@725 @153)) @36) +@1027 := @876 @38 +@1032 := {vs : @147} -> {ts : @148} -> (h : @1021) -> (hs : @225) -> @1026 @1027 +@1033 := @1017 @869 +@1035 := @733 (@725 @40) +@1037 := @13 @1035 @736 +@1038 := @988 @40 +@1040 := @96 @1003 @979 +@1045 := {ts : @148} -> (h : @1037) -> (hs : @1038) -> @143 @1040 @1027 +@1046 := @1033 @875 +@1048 := @96 @1019 @987 +@1049 := @143 @1048 +@1052 := (h : @832) -> (hs : @996) -> @1049 @877 +@1053 := @1046 @830 +@1055 := @96 @1035 @994 +@1057 := @143 @1055 @877 +@1058 := (hs : @1000) -> @1057 +@1059 := @1053 @998 +@1061 := @143 @871 @877 +@1062 := @657 @595 +@1063 := @629 @595 +@1072 := {k : @35} -> + {fs : @147} -> {tys : @148} -> (h : @599 (@1063 @38) @607) -> (hf : @225) -> @658 @721 +@1073 := @1062 @595 +@1074 := @1063 @595 +@1075 := @599 @1074 +@1076 := @1075 @607 +@1081 := {fs : @147} -> {tys : @148} -> (h : @1076) -> (hf : @225) -> @683 @721 +@1082 := @1073 @871 +@1089 := {tys : @148} -> (h : @1076) -> (hf : @1049 @40) -> @13 (@681 @1040) @721 +@1090 := @1082 @877 +@1097 := (h : @1075 (@606 @877)) -> (hf : @1057) -> @13 (@681 @1048) @721 +@1099 := @1090 (@706 @1074) +@1103 := (hf : @1061) -> @13 (@681 @1055) @721 +@1104 := @1099 @1059 +@1107 := @13 (@681 @871) @721 +@1108 := fun (__s : @718) => @1104 +@1109 := @29 @40 +@1110 := @64 @40 +@1112 := @13 @1109 @31 +@1114 := @96 @1109 @95 +@1117 := Prod.{0, 0} @35 @91 +@1121 := Prod.mk.{0, 0} @35 @91 @595 +@1122 := @1121 @1109 +@1123 := @93 @1117 +@1124 := @94 @1117 +@1126 := @1124 @1122 @1123 +@1127 := Bool.true +@1128 := LexLeanTarget.TargetSyntax.Function +@1129 := LexLeanTarget.TargetSyntax.Program.functions +@1130 := @1129 @0 +@1131 := @93 @35 +@1132 := LexLeanTarget.TargetSyntax.Ty.unit +@1133 := LexLeanTarget.TargetSyntax.Value.unit +@1136 := LexLeanTarget.TargetSyntax.Expr.value @1132 @1133 +@1141 := LexLeanTarget.TargetSyntax.Function.mk @1131 @109 @1132 @1136 +@1146 := List.getD.{0} @1128 @1130 @595 @1141 +@1150 := fun (__e_n : @35) => + LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.RustStd.root @4 @595 +@1151 := @221 @1109 +@1152 := @29 @153 +@1154 := @13 @1152 @38 +@1155 := @29 @149 +@1156 := @96 @1155 +@1164 := {t : @92} -> + {vs : @147} -> {ts : @148} -> (h : @1154) -> (hs : @225) -> @143 (@1156 @36) @171 +@1165 := @1151 @31 +@1166 := @29 @36 +@1168 := @13 @1166 @31 +@1169 := @29 @151 +@1170 := @96 @1169 +@1177 := {vs : @147} -> {ts : @148} -> (h : @1168) -> (hs : @225) -> @143 (@1170 @36) @260 +@1178 := @1165 @95 +@1179 := @29 @38 +@1181 := @13 @1179 @31 +@1183 := @96 @1152 @95 +@1184 := @143 @1183 +@1188 := {ts : @148} -> (h : @1181) -> (hs : @271) -> @1184 @260 +@1189 := @1178 @109 +@1191 := @96 @1166 @95 +@1192 := @143 @1191 +@1195 := (h : @1112) -> (hs : @145) -> @1192 @112 +@1196 := @1189 @1110 +@1198 := @96 @1179 @95 +@1199 := @143 @1198 +@1201 := (hs : @145) -> @1199 @112 +@1202 := @1196 @142 +@1203 := @143 @1114 +@1204 := @1203 @112 +@1205 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.denote +@1206 := @1205 @40 +@1207 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.__fits_0 +@1208 := @1207 @40 +@1211 := @29 (Reasoning.Main.doseLevel @40) +@1213 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.root @40 +@1214 := Ne.{1} +@1215 := LexLeanPreservation.Obs +@1216 := @1214 @1215 +@1217 := LexLeanPreservation.Rel +@1220 := @1216 (@1217 @40 @4) +@1221 := LexLeanPreservation.Obs.stuck +@1224 := (f : @836) -> (v : @91) -> @1220 @1221 +@1226 := LexLeanPreservation.Rust.rel_ne_stuck @1208 +@1232 := (v : @91) -> @1216 (@1217 (@1207 @38) @4) @1221 +@1233 := @1226 @1211 +@1237 := @1216 (@1217 @1208 @1211) @1221 +@1238 := @146 @1117 +@1239 := LexLeanPreservation.Rust.FunSem +@1240 := #9 +@1246 := (n : @35) -> @1239 @1240 @163 @157 @4 @149 +@1247 := @597 @1128 +@1248 := @596 @1247 +@1255 := LexLeanRuntime.index (@146 @1128) @1128 (LexLeanRuntime.instIndexableList @1128) +@1259 := @1248 (@1255 (@1129 @1240) @149) +@1260 := @605 @1128 +@1261 := @1260 @151 +@1262 := @1259 @1261 +@1263 := #10 +@1267 := @118 @1263 @1240 @163 @151 +@1268 := LexLeanTarget.TargetSyntax.Function.types +@1269 := @1268 @149 +@1270 := @1267 @1269 +@1271 := @597 @1238 +@1272 := @596 @1271 +@1273 := LexLeanTarget.TargetSemantics.bindAll +@1274 := LexLeanTarget.TargetSyntax.Function.parameters +@1279 := @1272 (@1273 (@1274 @157) @149 @1123) +@1280 := @605 @1238 +@1281 := @1280 @151 +@1282 := @1279 @1281 +@1283 := @597 @836 +@1284 := @596 @1283 +@1285 := LexLeanPreservation.Rust.fnFallible +@1286 := #11 +@1289 := @1284 (@1285 @1286 @1240) +@1290 := @605 @836 +@1291 := @1290 @151 +@1292 := @1289 @1291 +@1293 := LexLeanPreservation.RunConv +@1294 := #13 +@1298 := @1293 @1294 @1263 @163 @151 +@1300 := @1216 @149 @1221 +@1301 := Exists.{1} +@1302 := LexLeanPreservation.Rust.ROut +@1303 := @1301 @1302 +@1304 := And +@1305 := LexLeanPreservation.Rust.RealizesFn +@1309 := @1304 (@1305 @1240 @163 @4) +@1310 := LexLeanPreservation.Rust.RCI +@1312 := @1310 #15 +@1313 := LexLeanPreservation.Rust.fnIdent +@1314 := @1313 @1294 +@1321 := (hne : @1300) -> @1303 (fun (ro : @1302) => @1309 (@1312 @1314 @1286 @4)) +@1336 := {p : @32} -> + {c : @33} -> + {A : @34} -> + {f : @35} -> + {fn : @1128} -> + {args : @147} -> + {env : @1238} -> + {F : @836} -> + {o : @1215} -> + (hB : @1246) -> + (hfn : @1262) -> (hwt : @1270) -> (hbind : @1282) -> (hF : @1292) -> (hA : @1298) -> @1321 +@1338 := LexLeanPreservation.Rust.compose @0 +@1339 := @1239 @0 +@1344 := (n : @35) -> @1339 @163 @157 @4 @149 +@1345 := @1255 @1130 +@1348 := @1248 (@1345 @149) @1261 +@1352 := @129 @1240 @163 @151 @1269 +@1353 := @1293 @0 +@1356 := @1353 @1263 @163 @151 +@1370 := {c : @33} -> + {A : @34} -> + {f : @35} -> + {fn : @1128} -> + {args : @147} -> + {env : @1238} -> + {F : @836} -> + {o : @1215} -> + (hB : @1344) -> + (hfn : @1348) -> (hwt : @1352) -> (hbind : @1282) -> (hF : @1292) -> (hA : @1356) -> @1321 +@1371 := @1338 @1 +@1372 := @1339 @1 +@1376 := (n : @35) -> @1372 @157 @4 @149 +@1379 := @137 @163 @151 @1269 +@1380 := @1285 @1 +@1383 := @1284 (@1380 @1240) @1291 +@1384 := @1310 @1 +@1394 := (hbind : @1282) -> + (hF : @1383) -> + (hA : @1356) -> (hne : @1300) -> @1303 (fun (ro : @1302) => @1309 (@1384 @1314 @1286 @4)) +@1404 := {A : @34} -> + {f : @35} -> + {fn : @1128} -> + {args : @147} -> + {env : @1238} -> + {F : @836} -> {o : @1215} -> (hB : @1376) -> (hfn : @1348) -> (hwt : @1379) -> @1394 +@1405 := @1371 @2 +@1407 := @1372 @2 @4 +@1409 := (n : @35) -> @1407 @149 +@1410 := @143 @151 +@1411 := @1410 @1269 +@1420 := {f : @35} -> + {fn : @1128} -> + {args : @147} -> + {env : @1238} -> + {F : @836} -> {o : @1215} -> (hB : @1409) -> (hfn : @1348) -> (hwt : @1411) -> @1394 +@1421 := @1405 @595 +@1423 := (n : @35) -> @1407 @595 +@1424 := @1345 @595 +@1425 := @1248 @1424 +@1426 := @1425 @1261 +@1427 := @1380 @595 +@1428 := @1284 @1427 +@1429 := @1428 @1291 +@1430 := @1353 @595 +@1432 := @1430 @163 @151 +@1434 := @1384 (@1313 @595) +@1442 := (hF : @1429) -> + (hA : @1432) -> (hne : @1300) -> @1303 (fun (ro : @1302) => @1309 (@1434 @1286 @4)) +@1451 := {fn : @1128} -> + {args : @147} -> + {env : @1238} -> + {F : @836} -> + {o : @1215} -> (hB : @1423) -> (hfn : @1426) -> (hwt : @1411) -> (hbind : @1282) -> @1442 +@1452 := @1421 @1146 +@1454 := @1425 (@1260 @1146) +@1455 := @1268 @1146 +@1456 := @1410 @1455 +@1458 := @1273 (@1274 @1146) +@1470 := {args : @147} -> + {env : @1238} -> + {F : @836} -> + {o : @1215} -> + (hB : @1423) -> + (hfn : @1454) -> (hwt : @1456) -> (hbind : @1272 (@1458 @149 @1123) @1281) -> @1442 +@1471 := @1452 @1114 +@1472 := @1156 @95 +@1474 := @143 @1472 @1455 +@1477 := @96 (@29 @157) @95 +@1481 := @1272 (@1458 @1477 @1123) @1281 +@1484 := @96 (@29 @1240) @95 +@1505 := {env : @1238} -> + {F : @836} -> + {o : @1215} -> + (hB : @1423) -> + (hfn : @1454) -> + (hwt : @1474) -> + (hbind : @1481) -> + (hF : @1429) -> + (hA : @1430 @1484 @151) -> + (hne : @1300) -> @1303 (fun (ro : @1302) => @1309 (@1434 (@96 (@29 #12) @95) @4)) +@1506 := @1471 @1126 +@1507 := @1170 @95 +@1509 := @143 @1507 @1455 +@1517 := @1272 (@1458 @1472 @1123) (@1280 (@1124 (@1121 @1155) @1123)) +@1520 := @96 (@29 @163) @95 +@1539 := {F : @836} -> + {o : @1215} -> + (hB : @1423) -> + (hfn : @1454) -> + (hwt : @1509) -> + (hbind : @1517) -> + (hF : @1429) -> + (hA : @1430 @1520 @151) -> + (hne : @1300) -> @1303 (fun (ro : @1302) => @1309 (@1434 (@96 (@29 @1286) @95) @4)) +@1540 := @1506 @1127 +@1541 := @1184 @1455 +@1549 := @1272 (@1458 @1507 @1123) (@1280 (@1124 (@1121 @1169) @1123)) +@1551 := @1428 (@1290 @1127) +@1553 := @1430 @1477 @151 +@1554 := @1305 @1127 +@1573 := {o : @1215} -> + (hB : @1423) -> + (hfn : @1454) -> + (hwt : @1541) -> + (hbind : @1549) -> + (hF : @1551) -> + (hA : @1553) -> + (hne : @1300) -> + @1303 (fun (ro : @1302) => @1304 (@1554 @163 @4) (@1434 (@96 (@29 @1263) @95) @4)) +@1574 := @1540 @1206 +@1575 := @1192 @1455 +@1583 := @1272 (@1458 @1183 @1123) (@1280 (@1124 (@1121 @1152) @1123)) +@1584 := @1430 @1472 +@1585 := @1205 @149 +@1586 := @1584 @1585 +@1587 := @1205 @157 +@1605 := (hB : @1423) -> + (hfn : @1454) -> + (hwt : @1575) -> + (hbind : @1583) -> + (hF : @1551) -> + (hA : @1586) -> + (hne : @1216 @1587 @1221) -> + @1303 (fun (ro : @1302) => @1304 (@1554 (@1205 @1240) @4) (@1434 @1484 @4)) +@1606 := @1574 @1150 +@1607 := @1199 @1455 +@1615 := @1272 (@1458 @1191 @1123) (@1280 (@1124 (@1121 @1166) @1123)) +@1616 := @1430 @1507 +@1617 := @1205 @151 +@1635 := (hfn : @1454) -> + (hwt : @1607) -> + (hbind : @1615) -> + (hF : @1551) -> + (hA : @1616 @1617) -> + (hne : @1216 @1585 @1221) -> + @1303 (fun (ro : @1302) => @1304 (@1554 (@1205 @163) @4) (@1434 @1520 @4)) +@1638 := @1606 (@705 @1247 @1424) +@1639 := @1203 @1455 +@1647 := @1272 (@1458 @1198 @1123) (@1280 (@1124 (@1121 @1179) @1123)) +@1648 := @1430 @1183 +@1649 := @1205 @153 +@1665 := (hwt : @1639) -> + (hbind : @1647) -> + (hF : @1551) -> + (hA : @1648 @1649) -> + (hne : @1216 @1617 @1221) -> @1303 (fun (ro : @1302) => @1304 (@1554 @1587 @4) (@1434 @1477 @4)) +@1666 := @1638 @1202 +@1668 := @1458 @1114 @1123 +@1671 := @1272 @1668 (@1280 @1126) +@1672 := @1430 @1191 +@1673 := @1205 @36 +@1688 := (hbind : @1671) -> + (hF : @1551) -> + (hA : @1672 @1673) -> + (hne : @1216 @1649 @1221) -> @1303 (fun (ro : @1302) => @1304 (@1554 @1585 @4) (@1434 @1472 @4)) +@1691 := @1666 (@705 @1271 @1668) +@1692 := @1430 @1198 +@1693 := @1205 @38 +@1707 := (hF : @1551) -> + (hA : @1692 @1693) -> + (hne : @1216 @1673 @1221) -> @1303 (fun (ro : @1302) => @1304 (@1554 @1617 @4) (@1434 @1507 @4)) +@1710 := @1691 (@705 @1283 @1427) +@1724 := (hA : @1430 @1114 @1206) -> + (hne : @1216 @1693 @1221) -> @1303 (fun (ro : @1302) => @1304 (@1554 @1649 @4) (@1434 @1183 @4)) +@1725 := @1710 @1213 +@1736 := (hne : @1216 @1206 @1221) -> + @1303 (fun (ro : @1302) => @1304 (@1554 @1673 @4) (@1434 @1191 @4)) +@1737 := @1725 @1233 +@1743 := @1304 (@1554 @1693 @4) (@1434 @1198 @4) +@1745 := @1303 (fun (ro : @1302) => @1743) +@1747 := @1303 (fun (__e_ro : @1302) => @1743) +@1751 := LexLeanPreservation.Rust.RepresentableL (@96 @42 @95) +@1752 := (__e_hrep : @1751) -> @1747 +@1753 := fun (__e_hrep : @1751) => @1737 +@1754 := (w : @35) -> @1752 +@1755 := fun (w : @35) => @1753 +\end{coremodule} +\end{lexlean} diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R4/RustStd.lean b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R4/RustStd.lean new file mode 100644 index 000000000..501874cb4 --- /dev/null +++ b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R4/RustStd.lean @@ -0,0 +1,134 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [{ constructors := [[(.option .nat), .bool, (.adt 1)]] }, + { constructors := [[.nat, .nat, .nat, .nat, .nat, .nat]] }], functions := [ + { parameters := [0], types := [.nat], result := .nat, + body := (.«match» .nat (.call 1 [(.var 0)]) [(.arm .ok [1] (.var 1)), (.arm .error [2] (.value .nat (.nat 9)))]) }, + { parameters := [0], types := [.nat], result := (.result .nat (.pair .bool .bool)), + body := (.«let» 1 (.adt 0) (.call 2 [(.var 0)]) (.«match» (.result .nat (.pair .bool .bool)) (.field (.var 1) 0) [(.arm .some [2] (.build .ok (.result .nat (.pair .bool .bool)) [(.var 2)])), (.arm .none [] (.build .error (.result .nat (.pair .bool .bool)) [(.call 3 [(.var 1)])]))])) }, + { parameters := [0], types := [.nat], result := (.adt 0), + body := (.call 4 [(.closure 5 [(.var 0)]), (.build (.adt 0) (.adt 0) [(.build .none (.option .nat) []), (.build .false .bool []), (.build (.adt 0) (.adt 1) [(.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0))])]), (.call 6 [(.var 0)])]) }, + { parameters := [0], types := [(.adt 0)], result := (.pair .bool .bool), + body := (.«match» (.pair .bool .bool) (.field (.var 0) 1) [(.arm .true [] (.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])), (.arm .false [] (.«match» (.pair .bool .bool) (.prim .natEq [(.field (.field (.var 0) 2) 4), (.value .nat (.nat 0))]) [(.arm .true [] (.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])])), (.arm .false [] (.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])]))]))]) }, + { parameters := [0, 1, 2], types := [(.fn [(.adt 0), .nat] (.adt 0)), (.adt 0), (.list .nat)], result := (.adt 0), + body := (.«match» (.adt 0) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 4 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, + { parameters := [0, 1, 2], types := [.nat, (.adt 0), .nat], result := (.adt 0), + body := (.call 7 [(.var 0), (.var 1), (.var 2)]) }, + { parameters := [0], types := [.nat], result := (.list .nat), + body := (.«match» (.list .nat) (.«let» 1 .nat (.var 0) (.«let» 2 (.list .nat) (.call 8 [(.var 1)]) (.cond (.call 9 [(.var 1), (.var 2)]) (.build .ok (.result (.list .nat) (.pair .bool .bool)) [(.var 2)]) (.build .error (.result (.list .nat) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])])])))) [(.arm .ok [3] (.var 3)), (.arm .error [4] (.build .nil (.list .nat) []))]) }, + { parameters := [0, 1, 2], types := [.nat, (.adt 0), .nat], result := (.adt 0), + body := (.«match» (.adt 0) (.field (.var 1) 0) [(.arm .some [3] (.var 1)), (.arm .none [] (.«match» (.adt 0) (.prim .natLt [(.field (.field (.var 1) 2) 4), (.value .nat (.nat 3))]) [(.arm .true [] (.build (.adt 0) (.adt 0) [(.call 10 [(.var 0), (.var 2)]), (.field (.var 1) 1), (.build (.adt 0) (.adt 1) [(.prim .natAdd [(.field (.field (.var 1) 2) 0), (.value .nat (.nat 1))]), (.prim .natAdd [(.field (.field (.var 1) 2) 1), (.value .nat (.nat 1))]), (.field (.field (.var 1) 2) 2), (.field (.field (.var 1) 2) 3), (.prim .natAdd [(.field (.field (.var 1) 2) 4), (.value .nat (.nat 1))]), (.field (.field (.var 1) 2) 5)])])), (.arm .false [] (.build (.adt 0) (.adt 0) [(.build .none (.option .nat) []), (.build .true .bool []), (.field (.var 1) 2)]))]))]) }, + { parameters := [0], types := [.nat], result := (.list .nat), + body := (.call 11 [(.var 0)]) }, + { parameters := [0, 1], types := [.nat, (.list .nat)], result := .bool, + body := (.prim .natLe [(.prim .length [(.var 1)]), (.value .nat (.nat 4))]) }, + { parameters := [0, 1], types := [.nat, .nat], result := (.option .nat), + body := (.cond (.call 12 [(.var 0), (.var 1)]) (.build .some (.option .nat) [(.var 1)]) (.build .none (.option .nat) [])) }, + { parameters := [0], types := [.nat], result := (.list .nat), + body := (.build .cons (.list .nat) [(.prim .natSub [(.var 0), (.value .nat (.nat 10))]), (.build .cons (.list .nat) [(.prim .natSub [(.var 0), (.value .nat (.nat 20))]), (.build .cons (.list .nat) [(.prim .natSub [(.var 0), (.value .nat (.nat 30))]), (.build .cons (.list .nat) [(.prim .natSub [(.var 0), (.value .nat (.nat 50))]), (.build .nil (.list .nat) [])])])])]) }, + { parameters := [0, 1], types := [.nat, .nat], result := .bool, + body := (.prim .natLe [(.prim .natAdd [(.var 1), (.var 1)]), (.var 0)]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.enum (.adt 0) [{ number := 0, fields := [(.option .nat), .bool, (.adt 1)] }]), + (.enum (.adt 1) [{ number := 0, fields := [.nat, .nat, .nat, .nat, .nat, .nat] }]), + (.enum (.fn 0) [{ number := 5, fields := [.nat] }]), + (.apply 0 [(.adt 0), .nat] (.adt 0) true [{ function := 5, captures := [.copy], functionFallible := true }]), + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 1)) none (.call (.function 1) [(.copy (.generated .binding 0))] true))] (.matchOn (.move (.generated .holder 1)) [(.mk (.ok (.bind (.generated .binding 1))) (.mk [] (.succeed (.copy (.generated .binding 1))))), (.mk (.err .wild) (.mk [] (.succeed (.lit (.nat 9)))))]))), + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible (.result .nat (.pair .bool .bool))) (.mk [(.mk (.bind (.generated .binding 1)) (some (.adt 0)) (.call (.function 2) [(.copy (.generated .binding 0))] true)), (.mk (.bind (.generated .holder 3)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [(.bind (.generated .part 2)), .wild, .wild]) (.mk [] (.move (.generated .part 2))))]))] (.matchOn (.move (.generated .holder 3)) [(.mk .none (.mk [] (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.call (.function 3) [(.move (.generated .binding 1))] false)])))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))]))))]))), + (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible (.adt 0)) (.mk [] (.call (.function 4) [(.construct (.closure 0 5) [(.copy (.generated .binding 0))]), (.construct (.adt 0 0) [(.construct (.none .nat) []), (.lit (.bool false)), (.construct (.adt 1 0) [(.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0))])]), (.call (.function 6) [(.copy (.generated .binding 0))] false)] false))), + (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.pair .bool .bool) (.mk [(.mk (.bind (.generated .holder 5)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 4)), .wild]) (.mk [] (.move (.generated .part 4))))]))] (.cond (.move (.generated .holder 5)) (.mk [] (.pair (.lit (.bool false)) (.lit (.bool false)))) (.mk [(.mk (.bind (.generated .holder 11)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.block (.mk [(.mk (.bind (.generated .holder 8)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 7))]) (.mk [] (.move (.generated .part 7))))]))] (.matchOn (.move (.generated .holder 8)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 6)), .wild]) (.mk [] (.move (.generated .part 6))))])))), (.mk (.bind (.generated .operand 10)) none (.lit (.nat 0)))] (.call (.runtime .natEq) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false))))] (.cond (.move (.generated .holder 11)) (.mk [] (.pair (.lit (.bool false)) (.lit (.bool true)))) (.mk [] (.pair (.lit (.bool true)) (.lit (.bool false))))))))), + (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 0) }, { pattern := (.bind (.generated .binding 2)), type := (.list .nat) }] (.fallible (.adt 0)) (.mk [(.mk (.bind (.generated .holder 12)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 12)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 4) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 13)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 13) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]))), + (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := (.adt 0) }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.fallible (.adt 0)) (.mk [] (.call (.function 7) [(.copy (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 2))] false))), + (.function (.generated .function 6) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 14)) none (.block (.mk [(.mk (.bind (.generated .binding 1)) (some .nat) (.copy (.generated .binding 0))), (.mk (.bind (.generated .binding 2)) (some (.list .nat)) (.call (.function 8) [(.copy (.generated .binding 1))] false))] (.cond (.call (.function 9) [(.copy (.generated .binding 1)), (.clone (.generated .binding 2))] false) (.mk [] (.construct (.ok (.list .nat) (.pair .bool .bool)) [(.move (.generated .binding 2))])) (.mk [] (.construct (.err (.list .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))]))))))] (.matchOn (.move (.generated .holder 14)) [(.mk (.ok (.bind (.generated .binding 3))) (.mk [] (.move (.generated .binding 3)))), (.mk (.err .wild) (.mk [] (.construct (.nil .nat) [])))]))), + (.function (.generated .function 7) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := (.adt 0) }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.fallible (.adt 0)) (.mk [(.mk (.bind (.generated .holder 16)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [(.bind (.generated .part 15)), .wild, .wild]) (.mk [] (.move (.generated .part 15))))]))] (.matchOn (.move (.generated .holder 16)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 22)) none (.block (.mk [(.mk (.bind (.generated .operand 20)) none (.block (.mk [(.mk (.bind (.generated .holder 19)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 18))]) (.mk [] (.move (.generated .part 18))))]))] (.matchOn (.move (.generated .holder 19)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 17)), .wild]) (.mk [] (.move (.generated .part 17))))])))), (.mk (.bind (.generated .operand 21)) none (.lit (.nat 3)))] (.call (.runtime .natLt) [(.move (.generated .operand 20)), (.move (.generated .operand 21))] false))))] (.cond (.move (.generated .holder 22)) (.mk [] (.succeed (.construct (.adt 0 0) [(.call (.function 10) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] true), (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 23)), .wild]) (.mk [] (.move (.generated .part 23))))]), (.construct (.adt 1 0) [(.block (.mk [(.mk (.bind (.generated .operand 27)) none (.block (.mk [(.mk (.bind (.generated .holder 26)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 25))]) (.mk [] (.move (.generated .part 25))))]))] (.matchOn (.move (.generated .holder 26)) [(.mk (.adt 1 0 [(.bind (.generated .part 24)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 24))))])))), (.mk (.bind (.generated .operand 28)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] true))), (.block (.mk [(.mk (.bind (.generated .operand 32)) none (.block (.mk [(.mk (.bind (.generated .holder 31)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 30))]) (.mk [] (.move (.generated .part 30))))]))] (.matchOn (.move (.generated .holder 31)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 29)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 29))))])))), (.mk (.bind (.generated .operand 33)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] true))), (.block (.mk [(.mk (.bind (.generated .holder 36)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 35))]) (.mk [] (.move (.generated .part 35))))]))] (.matchOn (.move (.generated .holder 36)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 34)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 34))))]))), (.block (.mk [(.mk (.bind (.generated .holder 39)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 38))]) (.mk [] (.move (.generated .part 38))))]))] (.matchOn (.move (.generated .holder 39)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 37)), .wild, .wild]) (.mk [] (.move (.generated .part 37))))]))), (.block (.mk [(.mk (.bind (.generated .operand 43)) none (.block (.mk [(.mk (.bind (.generated .holder 42)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 41))]) (.mk [] (.move (.generated .part 41))))]))] (.matchOn (.move (.generated .holder 42)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 40)), .wild]) (.mk [] (.move (.generated .part 40))))])))), (.mk (.bind (.generated .operand 44)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] true))), (.block (.mk [(.mk (.bind (.generated .holder 47)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 46))]) (.mk [] (.move (.generated .part 46))))]))] (.matchOn (.move (.generated .holder 47)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 45))]) (.mk [] (.move (.generated .part 45))))])))])]))) (.mk [] (.succeed (.construct (.adt 0 0) [(.construct (.none .nat) []), (.lit (.bool true)), (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 48))]) (.mk [] (.move (.generated .part 48))))])])))))), (.mk (.some .wild) (.mk [] (.succeed (.move (.generated .binding 1)))))]))), + (.function (.generated .function 8) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.list .nat) (.mk [] (.call (.function 11) [(.copy (.generated .binding 0))] false))), + (.function (.generated .function 9) [{ pattern := .wild, type := .nat }, { pattern := (.bind (.generated .binding 1)), type := (.list .nat) }] .bool (.mk [(.mk (.bind (.generated .operand 50)) none (.block (.mk [(.mk (.bind (.generated .operand 49)) none (.move (.generated .binding 1)))] (.call (.runtime .lengthList) [(.move (.generated .operand 49))] false)))), (.mk (.bind (.generated .operand 51)) none (.lit (.nat 4)))] (.call (.runtime .natLe) [(.move (.generated .operand 50)), (.move (.generated .operand 51))] false))), + (.function (.generated .function 10) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.option .nat)) (.mk [] (.cond (.call (.function 12) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] true) (.mk [] (.succeed (.construct .some [(.copy (.generated .binding 1))]))) (.mk [] (.succeed (.construct (.none .nat) [])))))), + (.function (.generated .function 11) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.list .nat) (.mk [] (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 52)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 53)) none (.lit (.nat 10)))] (.call (.runtime .natSub) [(.move (.generated .operand 52)), (.move (.generated .operand 53))] false))), (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 54)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 55)) none (.lit (.nat 20)))] (.call (.runtime .natSub) [(.move (.generated .operand 54)), (.move (.generated .operand 55))] false))), (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 56)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 57)) none (.lit (.nat 30)))] (.call (.runtime .natSub) [(.move (.generated .operand 56)), (.move (.generated .operand 57))] false))), (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 58)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 59)) none (.lit (.nat 50)))] (.call (.runtime .natSub) [(.move (.generated .operand 58)), (.move (.generated .operand 59))] false))), (.construct (.nil .nat) [])])])])]))), + (.function (.generated .function 12) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .bool) (.mk [(.mk (.bind (.generated .operand 62)) none (.block (.mk [(.mk (.bind (.generated .operand 60)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 61)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] true)))), (.mk (.bind (.generated .operand 63)) none (.copy (.generated .binding 0)))] (.succeed (.call (.runtime .natLe) [(.move (.generated .operand 62)), (.move (.generated .operand 63))] false))))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [(([(.adt 0), .nat], (.adt 0)), true)] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.call (.function 1) [(.copy (.generated .binding 0))] true))], (.matchOn (.move (.generated .holder 1)) [(.mk (.ok (.bind (.generated .binding 1))) (.mk [] (.succeed (.copy (.generated .binding 1))))), (.mk (.err .wild) (.mk [] (.succeed (.lit (.nat 9)))))]), [(0, .nat, (some 0))], rfl, rfl, + (Corr.matchArms (st := (.result .nat (.pair .bool .bool))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, .nat, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.copy (.generated .binding 1)))) (Corr.mCons (Γ' := [(2, (.pair .bool .bool), none), (0, .nat, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.lit (.nat 9)))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl)))) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some (.adt 0)) (.call (.function 2) [(.copy (.generated .binding 0))] true)), (.mk (.bind (.generated .holder 3)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [(.bind (.generated .part 2)), .wild, .wild]) (.mk [] (.move (.generated .part 2))))]))], (.matchOn (.move (.generated .holder 3)) [(.mk .none (.mk [] (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.call (.function 3) [(.move (.generated .binding 1))] false)])))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))]))))]), [(0, .nat, (some 0))], rfl, rfl, + (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.fieldRead (ts := [(.option .nat), .bool, (.adt 1)]) (rd := (.move (.generated .part 2))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.adt 0), (some 1)), (0, .nat, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.call (.function 3) [(.move (.generated .binding 1))] false)]))) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, (.adt 0), (some 1)), (0, .nat, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl))) rfl rfl rfl))⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 4) [(.construct (.closure 0 5) [(.copy (.generated .binding 0))]), (.construct (.adt 0 0) [(.construct (.none .nat) []), (.lit (.bool false)), (.construct (.adt 1 0) [(.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0))])]), (.call (.function 6) [(.copy (.generated .binding 0))] false)] false), [(0, .nat, (some 0))], rfl, rfl, + (Corr.callF (ts := [(.fn [(.adt 0), .nat] (.adt 0)), (.adt 0), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [.nat]) (mask := [false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.option .nat), .bool, (.adt 1)]) (mask := [false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))))))) rfl)) (Corr.lNil))))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl)⟩⟩ + +theorem fun3 : FunOK program krate flags 3 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 5)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 4)), .wild]) (.mk [] (.move (.generated .part 4))))]))], (.cond (.move (.generated .holder 5)) (.mk [] (.pair (.lit (.bool false)) (.lit (.bool false)))) (.mk [(.mk (.bind (.generated .holder 11)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.block (.mk [(.mk (.bind (.generated .holder 8)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 7))]) (.mk [] (.move (.generated .part 7))))]))] (.matchOn (.move (.generated .holder 8)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 6)), .wild]) (.mk [] (.move (.generated .part 6))))])))), (.mk (.bind (.generated .operand 10)) none (.lit (.nat 0)))] (.call (.runtime .natEq) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false))))] (.cond (.move (.generated .holder 11)) (.mk [] (.pair (.lit (.bool false)) (.lit (.bool true)))) (.mk [] (.pair (.lit (.bool true)) (.lit (.bool false))))))), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.matchBool (Corr.eOfBNil (Corr.fieldRead (ts := [(.option .nat), .bool, (.adt 1)]) (rd := (.move (.generated .part 4))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl (Corr.kIf (la := []) (ta := (.pair (.lit (.bool false)) (.lit (.bool false)))) (lb := [(.mk (.bind (.generated .holder 11)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.block (.mk [(.mk (.bind (.generated .holder 8)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 7))]) (.mk [] (.move (.generated .part 7))))]))] (.matchOn (.move (.generated .holder 8)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 6)), .wild]) (.mk [] (.move (.generated .part 6))))])))), (.mk (.bind (.generated .operand 10)) none (.lit (.nat 0)))] (.call (.runtime .natEq) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false))))]) (tb := (.cond (.move (.generated .holder 11)) (.mk [] (.pair (.lit (.bool false)) (.lit (.bool true)))) (.mk [] (.pair (.lit (.bool true)) (.lit (.bool false)))))) (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))))) (Corr.matchBool (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 9)) none (.block (.mk [(.mk (.bind (.generated .holder 8)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 7))]) (.mk [] (.move (.generated .part 7))))]))] (.matchOn (.move (.generated .holder 8)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 6)), .wild]) (.mk [] (.move (.generated .part 6))))])))), (.mk (.bind (.generated .operand 10)) none (.lit (.nat 0)))]) (tail := (.call (.runtime .natEq) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 8)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 7))]) (.mk [] (.move (.generated .part 7))))]))]) (tail := (.matchOn (.move (.generated .holder 8)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 6)), .wild]) (.mk [] (.move (.generated .part 6))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 6))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.option .nat), .bool, (.adt 1)]) (rd := (.move (.generated .part 7))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl (Corr.kIf (la := []) (ta := (.pair (.lit (.bool false)) (.lit (.bool true)))) (lb := []) (tb := (.pair (.lit (.bool true)) (.lit (.bool false)))) (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))))) (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))))))))⟩⟩ + +theorem fun4 : FunOK program krate flags 4 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 12)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 12)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 4) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 13)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 13) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]), [(2, (.list .nat), (some 2)), (1, (.adt 0), (some 1)), (0, (.fn [(.adt 0), .nat] (.adt 0)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .nat), (some 2)), (1, (.adt 0), (some 1)), (0, (.fn [(.adt 0), .nat] (.adt 0)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list .nat), (some 4)), (3, .nat, (some 3)), (2, (.list .nat), (some 2)), (1, (.adt 0), (some 1)), (0, (.fn [(.adt 0), .nat] (.adt 0)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 4) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 13)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 13) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.adt 0), .nat] (.adt 0)), (.adt 0), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 13)) (some (.fn 0)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 13) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true)) (Corr.apply (ps := [(.adt 0), .nat]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ + +theorem fun5 : FunOK program krate flags 5 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 7) [(.copy (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 2))] false), [(2, .nat, (some 2)), (1, (.adt 0), (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.callF (ts := [.nat, (.adt 0), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)⟩⟩ + +theorem fun6 : FunOK program krate flags 6 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 14)) none (.block (.mk [(.mk (.bind (.generated .binding 1)) (some .nat) (.copy (.generated .binding 0))), (.mk (.bind (.generated .binding 2)) (some (.list .nat)) (.call (.function 8) [(.copy (.generated .binding 1))] false))] (.cond (.call (.function 9) [(.copy (.generated .binding 1)), (.clone (.generated .binding 2))] false) (.mk [] (.construct (.ok (.list .nat) (.pair .bool .bool)) [(.move (.generated .binding 2))])) (.mk [] (.construct (.err (.list .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))]))))))], (.matchOn (.move (.generated .holder 14)) [(.mk (.ok (.bind (.generated .binding 3))) (.mk [] (.move (.generated .binding 3)))), (.mk (.err .wild) (.mk [] (.construct (.nil .nat) [])))]), [(0, .nat, (some 0))], rfl, rfl, + (Corr.matchArms (st := (.result (.list .nat) (.pair .bool .bool))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.bind (.generated .binding 1)) (some .nat) (.copy (.generated .binding 0))), (.mk (.bind (.generated .binding 2)) (some (.list .nat)) (.call (.function 8) [(.copy (.generated .binding 1))] false))]) (tail := (.cond (.call (.function 9) [(.copy (.generated .binding 1)), (.clone (.generated .binding 2))] false) (.mk [] (.construct (.ok (.list .nat) (.pair .bool .bool)) [(.move (.generated .binding 2))])) (.mk [] (.construct (.err (.list .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))) (Corr.letBind (Corr.var rfl rfl) rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := []) (ce := (.call (.function 9) [(.copy (.generated .binding 1)), (.clone (.generated .binding 2))] false)) (lk := []) (Corr.callOps (ts := [.nat, (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct (.ok (.list .nat) (.pair .bool .bool)) [(.move (.generated .binding 2))])) (lb := []) (tb := (.construct (.err (.list .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])) (Corr.build (ts := [(.list .nat)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl) (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)))))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (0, .nat, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 3))) (Corr.mCons (Γ' := [(4, (.pair .bool .bool), none), (0, .nat, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct (.nil .nat) [])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ + +theorem fun7 : FunOK program krate flags 7 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 16)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [(.bind (.generated .part 15)), .wild, .wild]) (.mk [] (.move (.generated .part 15))))]))], (.matchOn (.move (.generated .holder 16)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 22)) none (.block (.mk [(.mk (.bind (.generated .operand 20)) none (.block (.mk [(.mk (.bind (.generated .holder 19)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 18))]) (.mk [] (.move (.generated .part 18))))]))] (.matchOn (.move (.generated .holder 19)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 17)), .wild]) (.mk [] (.move (.generated .part 17))))])))), (.mk (.bind (.generated .operand 21)) none (.lit (.nat 3)))] (.call (.runtime .natLt) [(.move (.generated .operand 20)), (.move (.generated .operand 21))] false))))] (.cond (.move (.generated .holder 22)) (.mk [] (.succeed (.construct (.adt 0 0) [(.call (.function 10) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] true), (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 23)), .wild]) (.mk [] (.move (.generated .part 23))))]), (.construct (.adt 1 0) [(.block (.mk [(.mk (.bind (.generated .operand 27)) none (.block (.mk [(.mk (.bind (.generated .holder 26)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 25))]) (.mk [] (.move (.generated .part 25))))]))] (.matchOn (.move (.generated .holder 26)) [(.mk (.adt 1 0 [(.bind (.generated .part 24)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 24))))])))), (.mk (.bind (.generated .operand 28)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] true))), (.block (.mk [(.mk (.bind (.generated .operand 32)) none (.block (.mk [(.mk (.bind (.generated .holder 31)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 30))]) (.mk [] (.move (.generated .part 30))))]))] (.matchOn (.move (.generated .holder 31)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 29)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 29))))])))), (.mk (.bind (.generated .operand 33)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] true))), (.block (.mk [(.mk (.bind (.generated .holder 36)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 35))]) (.mk [] (.move (.generated .part 35))))]))] (.matchOn (.move (.generated .holder 36)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 34)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 34))))]))), (.block (.mk [(.mk (.bind (.generated .holder 39)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 38))]) (.mk [] (.move (.generated .part 38))))]))] (.matchOn (.move (.generated .holder 39)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 37)), .wild, .wild]) (.mk [] (.move (.generated .part 37))))]))), (.block (.mk [(.mk (.bind (.generated .operand 43)) none (.block (.mk [(.mk (.bind (.generated .holder 42)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 41))]) (.mk [] (.move (.generated .part 41))))]))] (.matchOn (.move (.generated .holder 42)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 40)), .wild]) (.mk [] (.move (.generated .part 40))))])))), (.mk (.bind (.generated .operand 44)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] true))), (.block (.mk [(.mk (.bind (.generated .holder 47)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 46))]) (.mk [] (.move (.generated .part 46))))]))] (.matchOn (.move (.generated .holder 47)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 45))]) (.mk [] (.move (.generated .part 45))))])))])]))) (.mk [] (.succeed (.construct (.adt 0 0) [(.construct (.none .nat) []), (.lit (.bool true)), (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 48))]) (.mk [] (.move (.generated .part 48))))])])))))), (.mk (.some .wild) (.mk [] (.succeed (.move (.generated .binding 1)))))]), [(2, .nat, (some 2)), (1, (.adt 0), (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.fieldRead (ts := [(.option .nat), .bool, (.adt 1)]) (rd := (.move (.generated .part 15))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, (.adt 0), (some 1)), (0, .nat, (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 22)) none (.block (.mk [(.mk (.bind (.generated .operand 20)) none (.block (.mk [(.mk (.bind (.generated .holder 19)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 18))]) (.mk [] (.move (.generated .part 18))))]))] (.matchOn (.move (.generated .holder 19)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 17)), .wild]) (.mk [] (.move (.generated .part 17))))])))), (.mk (.bind (.generated .operand 21)) none (.lit (.nat 3)))] (.call (.runtime .natLt) [(.move (.generated .operand 20)), (.move (.generated .operand 21))] false))))]) (tail := (.cond (.move (.generated .holder 22)) (.mk [] (.succeed (.construct (.adt 0 0) [(.call (.function 10) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] true), (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 23)), .wild]) (.mk [] (.move (.generated .part 23))))]), (.construct (.adt 1 0) [(.block (.mk [(.mk (.bind (.generated .operand 27)) none (.block (.mk [(.mk (.bind (.generated .holder 26)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 25))]) (.mk [] (.move (.generated .part 25))))]))] (.matchOn (.move (.generated .holder 26)) [(.mk (.adt 1 0 [(.bind (.generated .part 24)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 24))))])))), (.mk (.bind (.generated .operand 28)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] true))), (.block (.mk [(.mk (.bind (.generated .operand 32)) none (.block (.mk [(.mk (.bind (.generated .holder 31)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 30))]) (.mk [] (.move (.generated .part 30))))]))] (.matchOn (.move (.generated .holder 31)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 29)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 29))))])))), (.mk (.bind (.generated .operand 33)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] true))), (.block (.mk [(.mk (.bind (.generated .holder 36)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 35))]) (.mk [] (.move (.generated .part 35))))]))] (.matchOn (.move (.generated .holder 36)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 34)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 34))))]))), (.block (.mk [(.mk (.bind (.generated .holder 39)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 38))]) (.mk [] (.move (.generated .part 38))))]))] (.matchOn (.move (.generated .holder 39)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 37)), .wild, .wild]) (.mk [] (.move (.generated .part 37))))]))), (.block (.mk [(.mk (.bind (.generated .operand 43)) none (.block (.mk [(.mk (.bind (.generated .holder 42)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 41))]) (.mk [] (.move (.generated .part 41))))]))] (.matchOn (.move (.generated .holder 42)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 40)), .wild]) (.mk [] (.move (.generated .part 40))))])))), (.mk (.bind (.generated .operand 44)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] true))), (.block (.mk [(.mk (.bind (.generated .holder 47)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 46))]) (.mk [] (.move (.generated .part 46))))]))] (.matchOn (.move (.generated .holder 47)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 45))]) (.mk [] (.move (.generated .part 45))))])))])]))) (.mk [] (.succeed (.construct (.adt 0 0) [(.construct (.none .nat) []), (.lit (.bool true)), (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 48))]) (.mk [] (.move (.generated .part 48))))])]))))) (Corr.mCons (Γ' := [(3, .nat, none), (2, .nat, (some 2)), (1, (.adt 0), (some 1)), (0, .nat, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 1)))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl (Corr.matchBool (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 20)) none (.block (.mk [(.mk (.bind (.generated .holder 19)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 18))]) (.mk [] (.move (.generated .part 18))))]))] (.matchOn (.move (.generated .holder 19)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 17)), .wild]) (.mk [] (.move (.generated .part 17))))])))), (.mk (.bind (.generated .operand 21)) none (.lit (.nat 3)))]) (tail := (.call (.runtime .natLt) [(.move (.generated .operand 20)), (.move (.generated .operand 21))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 19)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 18))]) (.mk [] (.move (.generated .part 18))))]))]) (tail := (.matchOn (.move (.generated .holder 19)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 17)), .wild]) (.mk [] (.move (.generated .part 17))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 17))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.option .nat), .bool, (.adt 1)]) (rd := (.move (.generated .part 18))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl (Corr.kIf (la := []) (ta := (.succeed (.construct (.adt 0 0) [(.call (.function 10) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] true), (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 23)), .wild]) (.mk [] (.move (.generated .part 23))))]), (.construct (.adt 1 0) [(.block (.mk [(.mk (.bind (.generated .operand 27)) none (.block (.mk [(.mk (.bind (.generated .holder 26)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 25))]) (.mk [] (.move (.generated .part 25))))]))] (.matchOn (.move (.generated .holder 26)) [(.mk (.adt 1 0 [(.bind (.generated .part 24)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 24))))])))), (.mk (.bind (.generated .operand 28)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] true))), (.block (.mk [(.mk (.bind (.generated .operand 32)) none (.block (.mk [(.mk (.bind (.generated .holder 31)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 30))]) (.mk [] (.move (.generated .part 30))))]))] (.matchOn (.move (.generated .holder 31)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 29)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 29))))])))), (.mk (.bind (.generated .operand 33)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] true))), (.block (.mk [(.mk (.bind (.generated .holder 36)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 35))]) (.mk [] (.move (.generated .part 35))))]))] (.matchOn (.move (.generated .holder 36)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 34)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 34))))]))), (.block (.mk [(.mk (.bind (.generated .holder 39)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 38))]) (.mk [] (.move (.generated .part 38))))]))] (.matchOn (.move (.generated .holder 39)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 37)), .wild, .wild]) (.mk [] (.move (.generated .part 37))))]))), (.block (.mk [(.mk (.bind (.generated .operand 43)) none (.block (.mk [(.mk (.bind (.generated .holder 42)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 41))]) (.mk [] (.move (.generated .part 41))))]))] (.matchOn (.move (.generated .holder 42)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 40)), .wild]) (.mk [] (.move (.generated .part 40))))])))), (.mk (.bind (.generated .operand 44)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] true))), (.block (.mk [(.mk (.bind (.generated .holder 47)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 46))]) (.mk [] (.move (.generated .part 46))))]))] (.matchOn (.move (.generated .holder 47)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 45))]) (.mk [] (.move (.generated .part 45))))])))])]))) (lb := []) (tb := (.succeed (.construct (.adt 0 0) [(.construct (.none .nat) []), (.lit (.bool true)), (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 48))]) (.mk [] (.move (.generated .part 48))))])]))) (Corr.fOfB (Corr.build (ts := [(.option .nat), .bool, (.adt 1)]) (mask := [false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.option .nat), .bool, (.adt 1)]) (rd := (.move (.generated .part 23))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 27)) none (.block (.mk [(.mk (.bind (.generated .holder 26)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 25))]) (.mk [] (.move (.generated .part 25))))]))] (.matchOn (.move (.generated .holder 26)) [(.mk (.adt 1 0 [(.bind (.generated .part 24)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 24))))])))), (.mk (.bind (.generated .operand 28)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 26)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 25))]) (.mk [] (.move (.generated .part 25))))]))]) (tail := (.matchOn (.move (.generated .holder 26)) [(.mk (.adt 1 0 [(.bind (.generated .part 24)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 24))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 24))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.option .nat), .bool, (.adt 1)]) (rd := (.move (.generated .part 25))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 32)) none (.block (.mk [(.mk (.bind (.generated .holder 31)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 30))]) (.mk [] (.move (.generated .part 30))))]))] (.matchOn (.move (.generated .holder 31)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 29)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 29))))])))), (.mk (.bind (.generated .operand 33)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 31)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 30))]) (.mk [] (.move (.generated .part 30))))]))]) (tail := (.matchOn (.move (.generated .holder 31)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 29)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 29))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 29))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.option .nat), .bool, (.adt 1)]) (rd := (.move (.generated .part 30))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 36)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 35))]) (.mk [] (.move (.generated .part 35))))]))]) (tail := (.matchOn (.move (.generated .holder 36)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 34)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 34))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 34))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.option .nat), .bool, (.adt 1)]) (rd := (.move (.generated .part 35))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 39)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 38))]) (.mk [] (.move (.generated .part 38))))]))]) (tail := (.matchOn (.move (.generated .holder 39)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 37)), .wild, .wild]) (.mk [] (.move (.generated .part 37))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 37))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.option .nat), .bool, (.adt 1)]) (rd := (.move (.generated .part 38))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 43)) none (.block (.mk [(.mk (.bind (.generated .holder 42)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 41))]) (.mk [] (.move (.generated .part 41))))]))] (.matchOn (.move (.generated .holder 42)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 40)), .wild]) (.mk [] (.move (.generated .part 40))))])))), (.mk (.bind (.generated .operand 44)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 42)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 41))]) (.mk [] (.move (.generated .part 41))))]))]) (tail := (.matchOn (.move (.generated .holder 42)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 40)), .wild]) (.mk [] (.move (.generated .part 40))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 40))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.option .nat), .bool, (.adt 1)]) (rd := (.move (.generated .part 41))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 47)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 46))]) (.mk [] (.move (.generated .part 46))))]))]) (tail := (.matchOn (.move (.generated .holder 47)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 45))]) (.mk [] (.move (.generated .part 45))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 45))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.option .nat), .bool, (.adt 1)]) (rd := (.move (.generated .part 46))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))))))) rfl)) (Corr.lNil))))) rfl)) (Corr.fOfB (Corr.build (ts := [(.option .nat), .bool, (.adt 1)]) (mask := [false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.option .nat), .bool, (.adt 1)]) (rd := (.move (.generated .part 48))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl))))) rfl rfl rfl)⟩⟩ + +theorem fun8 : FunOK program krate flags 8 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 11) [(.copy (.generated .binding 0))] false), [(0, .nat, (some 0))], rfl, rfl, + (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun9 : FunOK program krate flags 9 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 50)) none (.block (.mk [(.mk (.bind (.generated .operand 49)) none (.move (.generated .binding 1)))] (.call (.runtime .lengthList) [(.move (.generated .operand 49))] false)))), (.mk (.bind (.generated .operand 51)) none (.lit (.nat 4)))], (.call (.runtime .natLe) [(.move (.generated .operand 50)), (.move (.generated .operand 51))] false), [(1, (.list .nat), (some 1)), (0, .nat, none)], rfl, rfl, + (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 49)) none (.move (.generated .binding 1)))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 49))] false)) (Corr.prim (ts := [(.list .nat)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun10 : FunOK program krate flags 10 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 12) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] true) (.mk [] (.succeed (.construct .some [(.copy (.generated .binding 1))]))) (.mk [] (.succeed (.construct (.none .nat) [])))), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 12) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] true)) (lk := []) (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.copy (.generated .binding 1))]))) (lb := []) (tb := (.succeed (.construct (.none .nat) []))) (Corr.fOfB (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))⟩⟩ + +theorem fun11 : FunOK program krate flags 11 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 52)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 53)) none (.lit (.nat 10)))] (.call (.runtime .natSub) [(.move (.generated .operand 52)), (.move (.generated .operand 53))] false))), (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 54)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 55)) none (.lit (.nat 20)))] (.call (.runtime .natSub) [(.move (.generated .operand 54)), (.move (.generated .operand 55))] false))), (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 56)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 57)) none (.lit (.nat 30)))] (.call (.runtime .natSub) [(.move (.generated .operand 56)), (.move (.generated .operand 57))] false))), (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 58)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 59)) none (.lit (.nat 50)))] (.call (.runtime .natSub) [(.move (.generated .operand 58)), (.move (.generated .operand 59))] false))), (.construct (.nil .nat) [])])])])]), [(0, .nat, (some 0))], rfl, rfl, + (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 52)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 53)) none (.lit (.nat 10)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 52)), (.move (.generated .operand 53))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 54)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 55)) none (.lit (.nat 20)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 54)), (.move (.generated .operand 55))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 56)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 57)) none (.lit (.nat 30)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 56)), (.move (.generated .operand 57))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 58)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 59)) none (.lit (.nat 50)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 58)), (.move (.generated .operand 59))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)⟩⟩ + +theorem fun12 : FunOK program krate flags 12 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 62)) none (.block (.mk [(.mk (.bind (.generated .operand 60)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 61)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] true)))), (.mk (.bind (.generated .operand 63)) none (.copy (.generated .binding 0)))], (.succeed (.call (.runtime .natLe) [(.move (.generated .operand 62)), (.move (.generated .operand 63))] false)), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.fOfB (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 60)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 61)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | 3 => exact fun3 + | 4 => exact fun4 + | 5 => exact fun5 + | 6 => exact fun6 + | 7 => exact fun7 + | 8 => exact fun8 + | 9 => exact fun9 + | 10 => exact fun10 + | 11 => exact fun11 + | 12 => exact fun12 + | _ + 13 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.RustStd diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R5.lean b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R5.lean new file mode 100644 index 000000000..ab3b11e5c --- /dev/null +++ b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R5.lean @@ -0,0 +1,382 @@ +import LexLeanPreservation.Core +import LexLeanPreservation.Values +import LexLeanPreservation.Primitives +import LexLeanPreservation.Fixed +import LexLeanPreservation.Keys +import LexLeanPreservation.Templates +import LexLeanPreservation.Validate +import Reasoning.Budget +import Reasoning.Clinic +import Reasoning.Main +import Reasoning.Planner +import Reasoning.Screening +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +set_option linter.unusedVariables false +namespace LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5 + +def __prog : _root_.LexLeanTarget.TargetSyntax.Program := + { adts := [{ constructors := [[.nat, .nat, .nat, .nat, .nat, .nat]] }, + { constructors := [[(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]] }, + { constructors := [[], [], [], [], [], [], [], []] }], functions := (( + { parameters := [0, 1, 2, 3, 4, 5], types := [.nat, .nat, .nat, .nat, .nat, .nat], result := .nat, + body := (.«match» .nat (.call 1 [(.build (.adt 0) (.adt 0) [(.var 0), (.var 1), (.var 2), (.var 3), (.var 4), (.var 5)])]) [(.arm .ok [6] (.var 6)), (.arm .error [7] (.value .nat (.nat 9)))]) }) ::( + { parameters := [0], types := [(.adt 0)], result := (.result .nat (.pair .bool .bool)), + body := (.«let» 1 (.pair (.adt 1) .bool) (.call 2 [(.var 0)]) (.«match» (.result .nat (.pair .bool .bool)) (.second (.var 1)) [(.arm .true [] (.call 3 [(.var 0), (.first (.var 1))])), (.arm .false [] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])]))])) }) ::( + { parameters := [0], types := [(.adt 0)], result := (.pair (.adt 1) .bool), + body := (.call 4 [(.closure 5 []), (.value .nat (.nat 11)), (.call 6 [(.var 0)])]) }) ::( + { parameters := [0, 1], types := [(.adt 0), (.adt 1)], result := (.result .nat (.pair .bool .bool)), + body := (.«match» (.result .nat (.pair .bool .bool)) (.call 7 [(.var 0), (.var 1)]) [(.arm .some [2] (.build .ok (.result .nat (.pair .bool .bool)) [(.var 2)])), (.arm .none [] (.«match» (.result .nat (.pair .bool .bool)) (.call 8 [(.var 1)]) [(.arm .some [3] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])])])), (.arm .none [] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])])]))]))]) }) ::( + { parameters := [0, 1, 2], types := [(.fn [(.adt 1)] (.option (.adt 1))), .nat, (.adt 1)], result := (.pair (.adt 1) .bool), + body := (.«match» (.pair (.adt 1) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.adt 1) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.adt 1) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.adt 1) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 4 [(.var 0), (.var 3), (.var 4)]))]))]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.«match» (.option (.adt 1)) (.call 9 [(.var 0)]) [(.arm .none [] (.build .none (.option (.adt 1)) [])), (.arm .some [1] (.call 10 [(.var 0), (.var 1)]))]) }) ::( + { parameters := [0], types := [(.adt 0)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.var 0), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0))]) }) ::( + { parameters := [0, 1], types := [(.adt 0), (.adt 1)], result := (.option .nat), + body := (.call 8 [(.var 1)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option .nat), + body := (.build .some (.option .nat) [(.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 2)), + body := (.«match» (.option (.adt 2)) (.«match» (.option (.adt 2)) (.«match» (.option (.adt 2)) (.cond (.call 11 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 0) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [1] (.build .some (.option (.adt 2)) [(.var 1)])), (.arm .none [] (.cond (.call 12 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 1) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]) [(.arm .some [2] (.build .some (.option (.adt 2)) [(.var 2)])), (.arm .none [] (.«match» (.option (.adt 2)) (.cond (.call 13 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 2) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [3] (.build .some (.option (.adt 2)) [(.var 3)])), (.arm .none [] (.cond (.call 14 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 3) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]))]) [(.arm .some [4] (.build .some (.option (.adt 2)) [(.var 4)])), (.arm .none [] (.«match» (.option (.adt 2)) (.«match» (.option (.adt 2)) (.cond (.call 15 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 4) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [5] (.build .some (.option (.adt 2)) [(.var 5)])), (.arm .none [] (.cond (.call 16 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 5) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]) [(.arm .some [6] (.build .some (.option (.adt 2)) [(.var 6)])), (.arm .none [] (.«match» (.option (.adt 2)) (.cond (.call 17 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 6) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [7] (.build .some (.option (.adt 2)) [(.var 7)])), (.arm .none [] (.cond (.call 18 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 7) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]))]))]) }) ::( + { parameters := [0, 1], types := [(.adt 1), (.adt 2)], result := (.option (.adt 1)), + body := (.«match» (.option (.adt 1)) (.var 1) [(.arm (.adt 0) [] (.call 19 [(.var 0)])), (.arm (.adt 1) [] (.call 20 [(.var 0)])), (.arm (.adt 2) [] (.call 21 [(.var 0)])), (.arm (.adt 3) [] (.call 22 [(.var 0)])), (.arm (.adt 4) [] (.call 23 [(.var 0)])), (.arm (.adt 5) [] (.call 24 [(.var 0)])), (.arm (.adt 6) [] (.call 25 [(.var 0)])), (.arm (.adt 7) [] (.call 26 [(.var 0)]))]) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 1), (.value .nat (.nat 0))]) (.call 27 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 2), (.value .nat (.nat 0))]) (.call 28 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 3), (.value .nat (.nat 0))]) (.call 29 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 4), (.value .nat (.nat 0))]) (.call 30 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 0))]) (.prim .natLe [(.value .nat (.nat 2)), (.prim .natAdd [(.prim .natAdd [(.prim .natAdd [(.field (.var 0) 1), (.field (.var 0) 2)]), (.field (.var 0) 3)]), (.field (.var 0) 4)])]) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 0))]) (.cond (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 1))]) (.prim .natEq [(.field (.field (.var 0) 0) 5), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 7), (.value .nat (.nat 0))]) (.cond (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 1))]) (.call 31 [(.field (.var 0) 0)]) (.build .false .bool [])) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natLt [(.field (.var 0) 8), (.value .nat (.nat 3))]) (.cond (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 0))]) (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .true .bool []) (.cond (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 1))]) (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .true .bool []) (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 2))]) (.prim .natEq [(.field (.var 0) 7), (.value .nat (.nat 1))]) (.build .false .bool [])))) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 11 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 32 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 12 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 33 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 13 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 34 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 14 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 35 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 15 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 36 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 16 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 37 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 17 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 38 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 18 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 39 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.prim .natLt [(.value .nat (.nat 380)), (.field (.var 0) 0)]) }) ::( + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.prim .natLt [(.value .nat (.nat 90)), (.field (.var 0) 1)]) }) ::( + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.prim .natLt [(.value .nat (.nat 20)), (.field (.var 0) 2)]) }) ::( + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.prim .natLt [(.value .nat (.nat 12)), (.field (.var 0) 3)]) }) ::( + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.prim .natLt [(.field (.var 0) 4), (.value .nat (.nat 90))]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.value .nat (.nat 1)), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.value .nat (.nat 1)), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.value .nat (.nat 1)), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.value .nat (.nat 1)), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.value .nat (.nat 1)), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.value .nat (.nat 1)), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.value .nat (.nat 1)), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.prim .natAdd [(.field (.var 0) 8), (.value .nat (.nat 1))])]) }) ::[]) } + +def __enc_0 (__s : (Reasoning.Clinic.Vitals)) : _root_.LexLeanTarget.TargetSyntax.Value := + _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).temperature), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).heartRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).respiratoryRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).whiteCells), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).systolic), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).infection)] + +def __enc_1 (__s : (Reasoning.Clinic.Chart)) : _root_.LexLeanTarget.TargetSyntax.Value := + _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [(__enc_0 (__s).vitals), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).fever), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).tachycardia), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).tachypnea), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).leukocytosis), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).sirs), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).sepsis), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).shock), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).level)] + +def __enc_2 : (Reasoning.Main.Grade.Step) -> _root_.LexLeanTarget.TargetSyntax.Value + | Reasoning.Main.Grade.Step.Fever => _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [] + | Reasoning.Main.Grade.Step.Tachycardia => _root_.LexLeanTarget.TargetSyntax.Value.adt 1 [] + | Reasoning.Main.Grade.Step.Tachypnea => _root_.LexLeanTarget.TargetSyntax.Value.adt 2 [] + | Reasoning.Main.Grade.Step.Leukocytosis => _root_.LexLeanTarget.TargetSyntax.Value.adt 3 [] + | Reasoning.Main.Grade.Step.Sirs => _root_.LexLeanTarget.TargetSyntax.Value.adt 4 [] + | Reasoning.Main.Grade.Step.Sepsis => _root_.LexLeanTarget.TargetSyntax.Value.adt 5 [] + | Reasoning.Main.Grade.Step.Shock => _root_.LexLeanTarget.TargetSyntax.Value.adt 6 [] + | Reasoning.Main.Grade.Step.Escalate => _root_.LexLeanTarget.TargetSyntax.Value.adt 7 [] + +def __fits_27 (v : (Reasoning.Clinic.Vitals)) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_27 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 27 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_27 v) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.feverish v))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (380 : Nat) (v).temperature)) + +def __fits_11 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).fever (0 : Nat)) then ((Bool.true && Bool.true) && (__fits_27 ((s).vitals))) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.feverish in +theorem __rel_11 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 11 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_11 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Fever.guard s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && (__fits_27 ((s).vitals))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Reasoning.Clinic.feverish ((s).vitals)))) (Nat.beq (s).fever (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).fever (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_27 ((s).vitals)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) + +def __fits_28 (v : (Reasoning.Clinic.Vitals)) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_28 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 28 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_28 v) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.tachycardic v))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (90 : Nat) (v).heartRate)) + +def __fits_12 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).tachycardia (0 : Nat)) then ((Bool.true && Bool.true) && (__fits_28 ((s).vitals))) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.tachycardic in +theorem __rel_12 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 12 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_12 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Tachycardia.guard s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && (__fits_28 ((s).vitals))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Reasoning.Clinic.tachycardic ((s).vitals)))) (Nat.beq (s).tachycardia (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).tachycardia (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_28 ((s).vitals)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) + +def __fits_29 (v : (Reasoning.Clinic.Vitals)) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_29 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 29 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_29 v) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.tachypneic v))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (20 : Nat) (v).respiratoryRate)) + +def __fits_13 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).tachypnea (0 : Nat)) then ((Bool.true && Bool.true) && (__fits_29 ((s).vitals))) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.tachypneic in +theorem __rel_13 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 13 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_13 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Tachypnea.guard s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && (__fits_29 ((s).vitals))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Reasoning.Clinic.tachypneic ((s).vitals)))) (Nat.beq (s).tachypnea (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).tachypnea (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_29 ((s).vitals)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) + +def __fits_30 (v : (Reasoning.Clinic.Vitals)) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_30 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 30 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_30 v) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.leukocytic v))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (12 : Nat) (v).whiteCells)) + +def __fits_14 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).leukocytosis (0 : Nat)) then ((Bool.true && Bool.true) && (__fits_30 ((s).vitals))) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.leukocytic in +theorem __rel_14 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 14 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_14 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Leukocytosis.guard s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && (__fits_30 ((s).vitals))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Reasoning.Clinic.leukocytic ((s).vitals)))) (Nat.beq (s).leukocytosis (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).leukocytosis (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_30 ((s).vitals)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) + +def __fits_15 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sirs (0 : Nat)) then ((Bool.true && (((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((s).fever + (s).tachycardia) 18446744073709551616)) && (Bool.true && Bool.true)) && (Nat.blt (((s).fever + (s).tachycardia) + (s).tachypnea) 18446744073709551616)) && (Bool.true && Bool.true)) && (Nat.blt ((((s).fever + (s).tachycardia) + (s).tachypnea) + (s).leukocytosis) 18446744073709551616)) && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) + +theorem __rel_15 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 15 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_15 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Sirs.guard s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((s).fever + (s).tachycardia) 18446744073709551616)) && (Bool.true && Bool.true)) && (Nat.blt (((s).fever + (s).tachycardia) + (s).tachypnea) 18446744073709551616)) && (Bool.true && Bool.true)) && (Nat.blt ((((s).fever + (s).tachycardia) + (s).tachypnea) + (s).leukocytosis) 18446744073709551616)) && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.ble (2 : Nat) ((((s).fever + (s).tachycardia) + (s).tachypnea) + (s).leukocytosis)))) (Nat.beq (s).sirs (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sirs (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (s).fever (s).tachycardia)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((s).fever + (s).tachycardia) (s).tachypnea)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (((s).fever + (s).tachycardia) + (s).tachypnea) (s).leukocytosis)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe (2 : Nat) ((((s).fever + (s).tachycardia) + (s).tachypnea) + (s).leukocytosis)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) + +def __fits_16 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sepsis (0 : Nat)) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sirs (1 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) + +theorem __rel_16 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 16 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_16 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Sepsis.guard s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sirs (1 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && ((Nat.beq (s).sirs (1 : Nat)) && (Nat.beq ((s).vitals).infection (1 : Nat))))) (Nat.beq (s).sepsis (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sepsis (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.beq ((s).vitals).infection (1 : Nat)))) (Nat.beq (s).sirs (1 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sirs (1 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq ((s).vitals).infection (1 : Nat)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) + +def __fits_31 (v : (Reasoning.Clinic.Vitals)) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_31 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 31 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_31 v) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.hypotensive v))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (v).systolic (90 : Nat))) + +def __fits_17 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).shock (0 : Nat)) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sepsis (1 : Nat)) then ((Bool.true && Bool.true) && (__fits_31 ((s).vitals))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.hypotensive in +theorem __rel_17 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 17 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_17 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Shock.guard s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sepsis (1 : Nat)) then ((Bool.true && Bool.true) && (__fits_31 ((s).vitals))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && ((Nat.beq (s).sepsis (1 : Nat)) && (Reasoning.Clinic.hypotensive ((s).vitals))))) (Nat.beq (s).shock (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).shock (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && (__fits_31 ((s).vitals))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Reasoning.Clinic.hypotensive ((s).vitals)))) (Nat.beq (s).sepsis (1 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sepsis (1 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_31 ((s).vitals)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) + +def __fits_18 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.blt (s).level (3 : Nat)) then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (0 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if ((Nat.beq (s).level (0 : Nat)) && (Nat.beq (s).sirs (1 : Nat))) then (Bool.true && Bool.true) else ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (1 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if ((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (2 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))))))) else (Bool.true && Bool.true))) + +theorem __rel_18 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 18 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_18 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Escalate.guard s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (0 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if ((Nat.beq (s).level (0 : Nat)) && (Nat.beq (s).sirs (1 : Nat))) then (Bool.true && Bool.true) else ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (1 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if ((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (2 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))))))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (((Nat.beq (s).level (0 : Nat)) && (Nat.beq (s).sirs (1 : Nat))) || (((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) || ((Nat.beq (s).level (2 : Nat)) && (Nat.beq (s).shock (1 : Nat))))))) (Nat.blt (s).level (3 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (s).level (3 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (Bool.true && Bool.true) else ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (1 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if ((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (2 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b || (((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) || ((Nat.beq (s).level (2 : Nat)) && (Nat.beq (s).shock (1 : Nat)))))) ((Nat.beq (s).level (0 : Nat)) && (Nat.beq (s).sirs (1 : Nat))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.beq (s).sirs (1 : Nat)))) (Nat.beq (s).level (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).level (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sirs (1 : Nat)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (2 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b || ((Nat.beq (s).level (2 : Nat)) && (Nat.beq (s).shock (1 : Nat))))) ((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.beq (s).sepsis (1 : Nat)))) (Nat.beq (s).level (1 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).level (1 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sepsis (1 : Nat)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.beq (s).shock (1 : Nat)))) (Nat.beq (s).level (2 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).level (2 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).shock (1 : Nat)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))))))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) + +def __fits_9 (_ys : (Reasoning.Clinic.Chart)) : Bool := + ((((((Bool.true && Bool.true) && (__fits_11 (_ys))) && (if (Reasoning.Clinic.Fever.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Fever : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_12 (_ys))) && (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) && (match (match (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Fever : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Main.Grade.Step))) | Option.none => (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Tachycardia : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step))))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((Bool.true && Bool.true) && (__fits_13 (_ys))) && (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Tachypnea : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_14 (_ys))) && (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))) && (match (match (match (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Fever : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Main.Grade.Step))) | Option.none => (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Tachycardia : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step))))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Main.Grade.Step))) | Option.none => (match (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Tachypnea : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Main.Grade.Step))) | Option.none => (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Leukocytosis : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((((Bool.true && Bool.true) && (__fits_15 (_ys))) && (if (Reasoning.Clinic.Sirs.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Sirs : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_16 (_ys))) && (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) && (match (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Sirs : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Main.Grade.Step))) | Option.none => (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Sepsis : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step))))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((Bool.true && Bool.true) && (__fits_17 (_ys))) && (if (Reasoning.Clinic.Shock.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Shock : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_18 (_ys))) && (if (Reasoning.Clinic.Escalate.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))))) + +attribute [local irreducible] Reasoning.Clinic.Escalate.guard Reasoning.Clinic.Fever.guard Reasoning.Clinic.Leukocytosis.guard Reasoning.Clinic.Sepsis.guard Reasoning.Clinic.Shock.guard Reasoning.Clinic.Sirs.guard Reasoning.Clinic.Tachycardia.guard Reasoning.Clinic.Tachypnea.guard in +theorem __rel_9 (_ys : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 9 [(__enc_1 _ys)] (_root_.LexLeanPreservation.Rel (__fits_9 _ys) ((_root_.LexLeanPreservation.encOption __enc_2) (Reasoning.Main.Grade.select _ys))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Main.Grade.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((((Bool.true && Bool.true) && (__fits_15 (_ys))) && (if (Reasoning.Clinic.Sirs.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Sirs : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_16 (_ys))) && (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) && (match (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Sirs : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Main.Grade.Step))) | Option.none => (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Sepsis : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step))))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((Bool.true && Bool.true) && (__fits_17 (_ys))) && (if (Reasoning.Clinic.Shock.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Shock : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_18 (_ys))) && (if (Reasoning.Clinic.Escalate.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))))) (fun (__a : (Option (Reasoning.Main.Grade.Step))) => (_root_.LexLeanPreservation.encOption __enc_2) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Main.Grade.Step))) | Option.none => (match (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Sirs : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Main.Grade.Step))) | Option.none => (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Sepsis : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step))))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Main.Grade.Step))) | Option.none => (match (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Shock : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Main.Grade.Step))) | Option.none => (if (Reasoning.Clinic.Escalate.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Escalate : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))))))) (match (match (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Fever : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Main.Grade.Step))) | Option.none => (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Tachycardia : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step))))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Main.Grade.Step))) | Option.none => (match (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Tachypnea : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Main.Grade.Step))) | Option.none => (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Leukocytosis : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))))) (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Main.Grade.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((Bool.true && Bool.true) && (__fits_13 (_ys))) && (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Tachypnea : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_14 (_ys))) && (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))) (fun (__a : (Option (Reasoning.Main.Grade.Step))) => (_root_.LexLeanPreservation.encOption __enc_2) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Main.Grade.Step))) | Option.none => (match (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Tachypnea : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Main.Grade.Step))) | Option.none => (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Leukocytosis : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step))))))) (match (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Fever : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Main.Grade.Step))) | Option.none => (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Tachycardia : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step))))) (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Main.Grade.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_12 (_ys))) && (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__a : (Option (Reasoning.Main.Grade.Step))) => (_root_.LexLeanPreservation.encOption __enc_2) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Main.Grade.Step))) | Option.none => (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Tachycardia : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))))) (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Fever : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Main.Grade.Step.Fever : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step))))) (Reasoning.Clinic.Fever.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_11 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (fun (__a : (Option (Reasoning.Main.Grade.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Main.Grade.Step.Tachycardia : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step))))) (Reasoning.Clinic.Tachycardia.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_12 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))) (fun (__a : (Option (Reasoning.Main.Grade.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Main.Grade.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_14 (_ys))) && (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__a : (Option (Reasoning.Main.Grade.Step))) => (_root_.LexLeanPreservation.encOption __enc_2) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Main.Grade.Step))) | Option.none => (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Leukocytosis : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))))) (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Tachypnea : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Main.Grade.Step.Tachypnea : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step))))) (Reasoning.Clinic.Tachypnea.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_13 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (fun (__a : (Option (Reasoning.Main.Grade.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Main.Grade.Step.Leukocytosis : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step))))) (Reasoning.Clinic.Leukocytosis.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_14 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))))))) (fun (__a : (Option (Reasoning.Main.Grade.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Main.Grade.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((Bool.true && Bool.true) && (__fits_17 (_ys))) && (if (Reasoning.Clinic.Shock.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Shock : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_18 (_ys))) && (if (Reasoning.Clinic.Escalate.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))) (fun (__a : (Option (Reasoning.Main.Grade.Step))) => (_root_.LexLeanPreservation.encOption __enc_2) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Main.Grade.Step))) | Option.none => (match (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Shock : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Main.Grade.Step))) | Option.none => (if (Reasoning.Clinic.Escalate.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Escalate : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step))))))) (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Sirs : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Main.Grade.Step))) | Option.none => (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Sepsis : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step))))) (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Main.Grade.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_16 (_ys))) && (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__a : (Option (Reasoning.Main.Grade.Step))) => (_root_.LexLeanPreservation.encOption __enc_2) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Main.Grade.Step))) | Option.none => (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Sepsis : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))))) (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Sirs : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Main.Grade.Step.Sirs : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step))))) (Reasoning.Clinic.Sirs.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_15 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (fun (__a : (Option (Reasoning.Main.Grade.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Main.Grade.Step.Sepsis : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step))))) (Reasoning.Clinic.Sepsis.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_16 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))) (fun (__a : (Option (Reasoning.Main.Grade.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Main.Grade.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_18 (_ys))) && (if (Reasoning.Clinic.Escalate.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__a : (Option (Reasoning.Main.Grade.Step))) => (_root_.LexLeanPreservation.encOption __enc_2) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Main.Grade.Step))) | Option.none => (if (Reasoning.Clinic.Escalate.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Escalate : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))))) (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Shock : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Main.Grade.Step.Shock : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step))))) (Reasoning.Clinic.Shock.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_17 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (fun (__a : (Option (Reasoning.Main.Grade.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Main.Grade.Step.Escalate : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step))))) (Reasoning.Clinic.Escalate.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_18 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))))))))))) + +def __fits_32 (s : (Reasoning.Clinic.Chart)) : Bool := + ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) + +theorem __rel_32 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 32 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_32 s) (__enc_1 (Reasoning.Clinic.Fever.conclusion s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) + +def __fits_19 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && Bool.true) && (__fits_11 (s))) && (if (Reasoning.Clinic.Fever.guard (s)) then ((((Bool.true && Bool.true) && (__fits_32 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.Fever.conclusion Reasoning.Clinic.Fever.guard in +theorem __rel_19 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 19 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_19 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Fever.apply s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_32 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Fever.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Fever.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_11 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_32 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_33 (s : (Reasoning.Clinic.Chart)) : Bool := + ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) + +theorem __rel_33 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 33 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_33 s) (__enc_1 (Reasoning.Clinic.Tachycardia.conclusion s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) + +def __fits_20 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && Bool.true) && (__fits_12 (s))) && (if (Reasoning.Clinic.Tachycardia.guard (s)) then ((((Bool.true && Bool.true) && (__fits_33 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.Tachycardia.conclusion Reasoning.Clinic.Tachycardia.guard in +theorem __rel_20 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 20 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_20 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Tachycardia.apply s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_33 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Tachycardia.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Tachycardia.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_12 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_33 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_34 (s : (Reasoning.Clinic.Chart)) : Bool := + ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) + +theorem __rel_34 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 34 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_34 s) (__enc_1 (Reasoning.Clinic.Tachypnea.conclusion s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) + +def __fits_21 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && Bool.true) && (__fits_13 (s))) && (if (Reasoning.Clinic.Tachypnea.guard (s)) then ((((Bool.true && Bool.true) && (__fits_34 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.Tachypnea.conclusion Reasoning.Clinic.Tachypnea.guard in +theorem __rel_21 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 21 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_21 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Tachypnea.apply s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_34 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Tachypnea.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Tachypnea.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_13 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_34 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_35 (s : (Reasoning.Clinic.Chart)) : Bool := + ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) + +theorem __rel_35 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 35 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_35 s) (__enc_1 (Reasoning.Clinic.Leukocytosis.conclusion s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) + +def __fits_22 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && Bool.true) && (__fits_14 (s))) && (if (Reasoning.Clinic.Leukocytosis.guard (s)) then ((((Bool.true && Bool.true) && (__fits_35 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.Leukocytosis.conclusion Reasoning.Clinic.Leukocytosis.guard in +theorem __rel_22 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 22 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_22 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Leukocytosis.apply s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_35 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Leukocytosis.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Leukocytosis.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_14 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_35 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_36 (s : (Reasoning.Clinic.Chart)) : Bool := + ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) + +theorem __rel_36 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 36 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_36 s) (__enc_1 (Reasoning.Clinic.Sirs.conclusion s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) + +def __fits_23 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && Bool.true) && (__fits_15 (s))) && (if (Reasoning.Clinic.Sirs.guard (s)) then ((((Bool.true && Bool.true) && (__fits_36 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.Sirs.conclusion Reasoning.Clinic.Sirs.guard in +theorem __rel_23 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 23 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_23 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Sirs.apply s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_36 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Sirs.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Sirs.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_15 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_36 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_37 (s : (Reasoning.Clinic.Chart)) : Bool := + ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) + +theorem __rel_37 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 37 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_37 s) (__enc_1 (Reasoning.Clinic.Sepsis.conclusion s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) + +def __fits_24 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && Bool.true) && (__fits_16 (s))) && (if (Reasoning.Clinic.Sepsis.guard (s)) then ((((Bool.true && Bool.true) && (__fits_37 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.Sepsis.conclusion Reasoning.Clinic.Sepsis.guard in +theorem __rel_24 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 24 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_24 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Sepsis.apply s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_37 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Sepsis.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Sepsis.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_16 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_37 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_38 (s : (Reasoning.Clinic.Chart)) : Bool := + ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) + +theorem __rel_38 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 38 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_38 s) (__enc_1 (Reasoning.Clinic.Shock.conclusion s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) + +def __fits_25 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && Bool.true) && (__fits_17 (s))) && (if (Reasoning.Clinic.Shock.guard (s)) then ((((Bool.true && Bool.true) && (__fits_38 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.Shock.conclusion Reasoning.Clinic.Shock.guard in +theorem __rel_25 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 25 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_25 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Shock.apply s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_38 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Shock.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Shock.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_17 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_38 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_39 (s : (Reasoning.Clinic.Chart)) : Bool := + ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((s).level + (1 : Nat)) 18446744073709551616)) && Bool.true))))))))) && Bool.true) + +theorem __rel_39 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 39 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_39 s) (__enc_1 (Reasoning.Clinic.Escalate.conclusion s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (s).level (1 : Nat))) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) + +def __fits_26 (s : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && Bool.true) && (__fits_18 (s))) && (if (Reasoning.Clinic.Escalate.guard (s)) then ((((Bool.true && Bool.true) && (__fits_39 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Clinic.Escalate.conclusion Reasoning.Clinic.Escalate.guard in +theorem __rel_26 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 26 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_26 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Escalate.apply s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_39 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Escalate.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Escalate.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_18 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_39 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_10 (_ys : (Reasoning.Clinic.Chart)) (_ystep : (Reasoning.Main.Grade.Step)) : Bool := + (Bool.true && (match _ystep with | Reasoning.Main.Grade.Step.Fever => ((Bool.true && Bool.true) && (__fits_19 (_ys))) | Reasoning.Main.Grade.Step.Tachycardia => ((Bool.true && Bool.true) && (__fits_20 (_ys))) | Reasoning.Main.Grade.Step.Tachypnea => ((Bool.true && Bool.true) && (__fits_21 (_ys))) | Reasoning.Main.Grade.Step.Leukocytosis => ((Bool.true && Bool.true) && (__fits_22 (_ys))) | Reasoning.Main.Grade.Step.Sirs => ((Bool.true && Bool.true) && (__fits_23 (_ys))) | Reasoning.Main.Grade.Step.Sepsis => ((Bool.true && Bool.true) && (__fits_24 (_ys))) | Reasoning.Main.Grade.Step.Shock => ((Bool.true && Bool.true) && (__fits_25 (_ys))) | Reasoning.Main.Grade.Step.Escalate => ((Bool.true && Bool.true) && (__fits_26 (_ys))))) + +attribute [local irreducible] Reasoning.Clinic.Escalate.apply Reasoning.Clinic.Fever.apply Reasoning.Clinic.Leukocytosis.apply Reasoning.Clinic.Sepsis.apply Reasoning.Clinic.Shock.apply Reasoning.Clinic.Sirs.apply Reasoning.Clinic.Tachycardia.apply Reasoning.Clinic.Tachypnea.apply in +theorem __rel_10 (_ys : (Reasoning.Clinic.Chart)) (_ystep : (Reasoning.Main.Grade.Step)) : _root_.LexLeanPreservation.FunRel __prog 10 [(__enc_1 _ys), (__enc_2 _ystep)] (_root_.LexLeanPreservation.Rel (__fits_10 _ys _ystep) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Main.Grade.fire _ys _ystep))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV __enc_2 (fun (__a : (Reasoning.Main.Grade.Step)) => (match __a with | Reasoning.Main.Grade.Step.Fever => ((Bool.true && Bool.true) && (__fits_19 (_ys))) | Reasoning.Main.Grade.Step.Tachycardia => ((Bool.true && Bool.true) && (__fits_20 (_ys))) | Reasoning.Main.Grade.Step.Tachypnea => ((Bool.true && Bool.true) && (__fits_21 (_ys))) | Reasoning.Main.Grade.Step.Leukocytosis => ((Bool.true && Bool.true) && (__fits_22 (_ys))) | Reasoning.Main.Grade.Step.Sirs => ((Bool.true && Bool.true) && (__fits_23 (_ys))) | Reasoning.Main.Grade.Step.Sepsis => ((Bool.true && Bool.true) && (__fits_24 (_ys))) | Reasoning.Main.Grade.Step.Shock => ((Bool.true && Bool.true) && (__fits_25 (_ys))) | Reasoning.Main.Grade.Step.Escalate => ((Bool.true && Bool.true) && (__fits_26 (_ys))))) (fun (__a : (Reasoning.Main.Grade.Step)) => (_root_.LexLeanPreservation.encOption __enc_1) (match __a with | Reasoning.Main.Grade.Step.Fever => (Reasoning.Clinic.Fever.apply (_ys)) | Reasoning.Main.Grade.Step.Tachycardia => (Reasoning.Clinic.Tachycardia.apply (_ys)) | Reasoning.Main.Grade.Step.Tachypnea => (Reasoning.Clinic.Tachypnea.apply (_ys)) | Reasoning.Main.Grade.Step.Leukocytosis => (Reasoning.Clinic.Leukocytosis.apply (_ys)) | Reasoning.Main.Grade.Step.Sirs => (Reasoning.Clinic.Sirs.apply (_ys)) | Reasoning.Main.Grade.Step.Sepsis => (Reasoning.Clinic.Sepsis.apply (_ys)) | Reasoning.Main.Grade.Step.Shock => (Reasoning.Clinic.Shock.apply (_ys)) | Reasoning.Main.Grade.Step.Escalate => (Reasoning.Clinic.Escalate.apply (_ys)))) _ystep (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (Reasoning.Main.Grade.Step)) _ => match __a with | Reasoning.Main.Grade.Step.Fever => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_19 (_ys)))) | Reasoning.Main.Grade.Step.Tachycardia => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_20 (_ys))))) | Reasoning.Main.Grade.Step.Tachypnea => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_21 (_ys)))))) | Reasoning.Main.Grade.Step.Leukocytosis => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_22 (_ys))))))) | Reasoning.Main.Grade.Step.Sirs => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_23 (_ys)))))))) | Reasoning.Main.Grade.Step.Sepsis => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_24 (_ys))))))))) | Reasoning.Main.Grade.Step.Shock => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_25 (_ys)))))))))) | Reasoning.Main.Grade.Step.Escalate => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_26 (_ys))))))))))))) + +def __fits_5 (_ys : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && Bool.true) && (__fits_9 (_ys))) && (match (Reasoning.Main.Grade.select (_ys)) with | Option.none => (Bool.true && Bool.true) | Option.some _ystep => ((Bool.true && (Bool.true && Bool.true)) && (__fits_10 (_ys) (_ystep))))) + +attribute [local irreducible] Reasoning.Main.Grade.fire Reasoning.Main.Grade.select in +theorem __rel_5 (_ys : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 5 [(__enc_1 _ys)] (_root_.LexLeanPreservation.Rel (__fits_5 _ys) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Main.Grade.next _ys))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Main.Grade.Step))) => (match __a with | Option.none => (Bool.true && Bool.true) | Option.some _ystep => ((Bool.true && (Bool.true && Bool.true)) && (__fits_10 (_ys) (_ystep))))) (fun (__a : (Option (Reasoning.Main.Grade.Step))) => (_root_.LexLeanPreservation.encOption __enc_1) (match __a with | Option.none => (Option.none : (Option (Reasoning.Clinic.Chart))) | Option.some _ystep => (Reasoning.Main.Grade.fire (_ys) (_ystep)))) (Reasoning.Main.Grade.select (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_9 (_ys))) (fun (__a : (Option (Reasoning.Main.Grade.Step))) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) | Option.some _ystep => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_10 (_ys) (_ystep))))))) + +def __fits_6 (v : (Reasoning.Clinic.Vitals)) : Bool := + ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) + +theorem __rel_6 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 6 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_6 v) (__enc_1 (Reasoning.Main.Grade.observe v))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) + +def __fits_2 (v : (Reasoning.Clinic.Vitals)) : Bool := + ((Bool.true && (Bool.true && (((Bool.true && Bool.true) && (__fits_6 (v))) && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : (Reasoning.Clinic.Chart)) => __fits_5 __p0) ((Reasoning.Main.Grade.next)) ((11 : Nat)) ((Reasoning.Main.Grade.observe (v))))) + +attribute [local irreducible] Reasoning.Main.Grade.observe in +theorem __rel_2 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 2 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_2 v) ((_root_.LexLeanPreservation.encPair __enc_1 _root_.LexLeanTarget.TargetSyntax.Value.bool) (Reasoning.Main.Grade.saturate v))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_6 (v))) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterateUntil (es := __enc_1) (_root_.LexLeanPreservation.optEnc __enc_1) (fun _ => rfl) (_root_.LexLeanPreservation.encPair __enc_1 _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) ((Reasoning.Main.Grade.next)) (fun (__p0 : (Reasoning.Clinic.Chart)) => __fits_5 __p0) 5 [] (fun (__p0 : (Reasoning.Clinic.Chart)) => __rel_5 __p0) (_root_.LexLeanCollections.iterateUntil ((Reasoning.Main.Grade.next))) (fun _ => rfl) (fun _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (p := __prog) (fi := 4) (ts := (.adt 1)) rfl ((11 : Nat)) ((Reasoning.Main.Grade.observe (v))))) + +def __fits_8 (chart : (Reasoning.Clinic.Chart)) : Bool := + ((Bool.true && Bool.true) && Bool.true) + +theorem __rel_8 (chart : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 8 [(__enc_1 chart)] (_root_.LexLeanPreservation.Rel (__fits_8 chart) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Main.Grade.extract chart))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some) + +def __fits_7 (v : (Reasoning.Clinic.Vitals)) (_ys : (Reasoning.Clinic.Chart)) : Bool := + ((Bool.true && Bool.true) && (__fits_8 (_ys))) + +attribute [local irreducible] Reasoning.Main.Grade.extract in +theorem __rel_7 (v : (Reasoning.Clinic.Vitals)) (_ys : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 7 [(__enc_0 v), (__enc_1 _ys)] (_root_.LexLeanPreservation.Rel (__fits_7 v _ys) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Main.Grade.accept v _ys))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_8 (_ys))) + +def __fits_3 (v : (Reasoning.Clinic.Vitals)) (_ys : (Reasoning.Clinic.Chart)) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && (__fits_7 (v) (_ys))) && (match (Reasoning.Main.Grade.accept (v) (_ys)) with | Option.some _yv => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_8 (_ys))) && (match (Reasoning.Main.Grade.extract (_ys)) with | Option.some _yv => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) + +attribute [local irreducible] Reasoning.Main.Grade.accept Reasoning.Main.Grade.extract in +theorem __rel_3 (v : (Reasoning.Clinic.Vitals)) (_ys : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 3 [(__enc_0 v), (__enc_1 _ys)] (_root_.LexLeanPreservation.Rel (__fits_3 v _ys) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Main.Grade.conclude v _ys))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Option Nat)) => (match __a with | Option.some _yv => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_8 (_ys))) && (match (Reasoning.Main.Grade.extract (_ys)) with | Option.some _yv => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) (fun (__a : (Option Nat)) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (match __a with | Option.some _yv => (Except.ok (_yv) : (Except (Prod Bool Bool) Nat)) | Option.none => (match (Reasoning.Main.Grade.extract (_ys)) with | Option.some _yv => (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)) | Option.none => (Except.error (((Bool.false, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat))))) (Reasoning.Main.Grade.accept (v) (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_7 (v) (_ys))) (fun (__a : (Option Nat)) _ => match __a with | Option.some _yv => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Option Nat)) => (match __a with | Option.some _yv => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__a : (Option Nat)) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (match __a with | Option.some _yv => (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)) | Option.none => (Except.error (((Bool.false, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)))) (Reasoning.Main.Grade.extract (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_8 (_ys))) (fun (__a : (Option Nat)) _ => match __a with | Option.some _yv => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error))))))))) + +def __fits_1 (v : (Reasoning.Clinic.Vitals)) : Bool := + (((Bool.true && Bool.true) && (__fits_2 (v))) && (let _yfinal : (Prod (Reasoning.Clinic.Chart) Bool) := (Reasoning.Main.Grade.saturate (v)); (Bool.true && (match (_yfinal).2 with | Bool.true => ((Bool.true && (Bool.true && Bool.true)) && (__fits_3 (v) ((_yfinal).1))) | Bool.false => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) + +attribute [local irreducible] Reasoning.Main.Grade.conclude Reasoning.Main.Grade.saturate in +theorem __rel_1 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 1 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_1 v) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Main.Grade.verdict v))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (let _yfinal : (Prod (Reasoning.Clinic.Chart) Bool) := (Reasoning.Main.Grade.saturate (v)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_2 (v))) (_root_.LexLeanPreservation.conv_matchV _root_.LexLeanTarget.TargetSyntax.Value.bool (fun (__a : Bool) => (match __a with | Bool.true => ((Bool.true && (Bool.true && Bool.true)) && (__fits_3 (v) ((_yfinal).1))) | Bool.false => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__a : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (match __a with | Bool.true => (Reasoning.Main.Grade.conclude (v) ((_yfinal).1)) | Bool.false => (Except.error (((Bool.false, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)))) (_yfinal).2 (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (fun (__a : Bool) _ => match __a with | Bool.true => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil)) (__rel_3 (v) ((_yfinal).1)))) | Bool.false => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)))))) + +def __fits_0 (temperature : Nat) (heartRate : Nat) (respiratoryRate : Nat) (whiteCells : Nat) (systolic : Nat) (infection : Nat) : Bool := + (((((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true)))))) && Bool.true) && Bool.true) && (__fits_1 (({ temperature := temperature, heartRate := heartRate, respiratoryRate := respiratoryRate, whiteCells := whiteCells, systolic := systolic, infection := infection } : (Reasoning.Clinic.Vitals))))) && (match (Reasoning.Main.Grade.verdict (({ temperature := temperature, heartRate := heartRate, respiratoryRate := respiratoryRate, whiteCells := whiteCells, systolic := systolic, infection := infection } : (Reasoning.Clinic.Vitals)))) with | Except.ok level => Bool.true | Except.error failure => Bool.true)) + +attribute [local irreducible] Reasoning.Main.Grade.verdict in +theorem __rel_0 (temperature : Nat) (heartRate : Nat) (respiratoryRate : Nat) (whiteCells : Nat) (systolic : Nat) (infection : Nat) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat temperature), (_root_.LexLeanTarget.TargetSyntax.Value.nat heartRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat respiratoryRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat whiteCells), (_root_.LexLeanTarget.TargetSyntax.Value.nat systolic), (_root_.LexLeanTarget.TargetSyntax.Value.nat infection)] (_root_.LexLeanPreservation.Rel (__fits_0 temperature heartRate respiratoryRate whiteCells systolic infection) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.gradeLevel temperature heartRate respiratoryRate whiteCells systolic infection))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Except (Prod Bool Bool) Nat)) => (match __a with | Except.ok level => Bool.true | Except.error failure => Bool.true)) (fun (__a : (Except (Prod Bool Bool) Nat)) => _root_.LexLeanTarget.TargetSyntax.Value.nat (match __a with | Except.ok level => level | Except.error failure => (9 : Nat))) (Reasoning.Main.Grade.verdict (({ temperature := temperature, heartRate := heartRate, respiratoryRate := respiratoryRate, whiteCells := whiteCells, systolic := systolic, infection := infection } : (Reasoning.Clinic.Vitals)))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)))))) _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) (__rel_1 (({ temperature := temperature, heartRate := heartRate, respiratoryRate := respiratoryRate, whiteCells := whiteCells, systolic := systolic, infection := infection } : (Reasoning.Clinic.Vitals))))) (fun (__a : (Except (Prod Bool Bool) Nat)) _ => match __a with | Except.ok level => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | Except.error failure => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value)))) + +def denote (temperature : Nat) (heartRate : Nat) (respiratoryRate : Nat) (whiteCells : Nat) (systolic : Nat) (infection : Nat) : _root_.LexLeanPreservation.Obs := + _root_.cond (__fits_0 temperature heartRate respiratoryRate whiteCells systolic infection) (_root_.LexLeanPreservation.Obs.value ((_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.gradeLevel temperature heartRate respiratoryRate whiteCells systolic infection)))) _root_.LexLeanPreservation.Obs.overflow + +theorem root (temperature : Nat) (heartRate : Nat) (respiratoryRate : Nat) (whiteCells : Nat) (systolic : Nat) (infection : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat temperature), (_root_.LexLeanTarget.TargetSyntax.Value.nat heartRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat respiratoryRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat whiteCells), (_root_.LexLeanTarget.TargetSyntax.Value.nat systolic), (_root_.LexLeanTarget.TargetSyntax.Value.nat infection)] (_root_.LexLeanPreservation.Rel (__fits_0 temperature heartRate respiratoryRate whiteCells systolic infection) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.gradeLevel temperature heartRate respiratoryRate whiteCells systolic infection))) := + _root_.LexLeanPreservation.run_of_funRel (__rel_0 temperature heartRate respiratoryRate whiteCells systolic infection) + +end LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5 diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R5/Compose/RustCore.lex.tex b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R5/Compose/RustCore.lex.tex new file mode 100644 index 000000000..1ef1e32fd --- /dev/null +++ b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R5/Compose/RustCore.lex.tex @@ -0,0 +1,1341 @@ +\begin{lexlean}{RustCore} +\title{Certificate E LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.Compose.RustCore} +\begin{coremodule} +imports [ + LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5, + LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.RustCore, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.Compose.RustCore.__wt_0 : @16 := @716 { + all: [LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.Compose.RustCore.__wt_0], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.Compose.RustCore.__wt_1 : @724 := @1388 { + all: [LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.Compose.RustCore.__wt_1], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.Compose.RustCore.__wt_2 : @1396 := @1631 { + all: [LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.Compose.RustCore.__wt_2], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.Compose.RustCore.root : @2716 := @2717 { + all: [LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.Compose.RustCore.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.RustCore.program +@1 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.RustCore.krate +@2 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.RustCore.flags +@3 := Reasoning.Clinic.Vitals +@4 := #0 +@5 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.__enc_0 +@6 := @5 @4 +@7 := LexLeanPreservation.Rust.WT +@8 := LexLeanTarget.TargetSyntax.Ty.adt +@9 := 0 +@10 := @8 @9 +@11 := @7 @0 +@12 := @11 @1 +@13 := @12 @2 +@16 := (__s : @3) -> @13 @6 @10 +@17 := Reasoning.Clinic.Vitals.temperature +@18 := @17 @4 +@19 := Reasoning.Clinic.Vitals.heartRate +@20 := @19 @4 +@21 := Reasoning.Clinic.Vitals.respiratoryRate +@22 := @21 @4 +@23 := Reasoning.Clinic.Vitals.whiteCells +@24 := @23 @4 +@25 := Reasoning.Clinic.Vitals.systolic +@26 := @25 @4 +@27 := Reasoning.Clinic.Vitals.infection +@28 := @27 @4 +@29 := LexLeanTarget.TargetSyntax.Value.nat +@30 := @29 @18 +@31 := LexLeanTarget.TargetSyntax.Ty.nat +@32 := LexLeanTarget.TargetSyntax.Program +@33 := LexLeanPreservation.Rust.RCrate +@34 := LexLeanPreservation.Rust.Flags +@35 := Nat +@36 := #3 +@37 := @7 @36 +@38 := #2 +@39 := @37 @38 +@40 := #1 +@41 := @39 @40 +@42 := @29 @4 +@48 := {p : @32} -> {c : @33} -> {A : @34} -> (n : @35) -> @41 @42 @31 +@50 := LexLeanPreservation.Rust.wt_nat @0 +@57 := {c : @33} -> {A : @34} -> (n : @35) -> @11 @38 @40 @42 @31 +@58 := @50 @1 +@63 := {A : @34} -> (n : @35) -> @12 @40 @42 @31 +@64 := @58 @2 +@67 := (n : @35) -> @13 @42 @31 +@68 := @64 @18 +@70 := @13 @30 @31 +@71 := @29 @20 +@72 := @64 @20 +@74 := @13 @71 @31 +@75 := @29 @22 +@76 := @64 @22 +@78 := @13 @75 @31 +@79 := @29 @24 +@80 := @64 @24 +@82 := @13 @79 @31 +@83 := @29 @26 +@84 := @64 @26 +@86 := @13 @83 @31 +@87 := @29 @28 +@88 := @64 @28 +@90 := @13 @87 @31 +@91 := LexLeanTarget.TargetSyntax.Value +@92 := LexLeanTarget.TargetSyntax.Ty +@93 := List.nil.{0} +@94 := List.cons.{0} +@95 := @93 @91 +@96 := @94 @91 +@98 := @96 @87 @95 +@100 := @96 @83 @98 +@102 := @96 @79 @100 +@104 := @96 @75 @102 +@106 := @96 @71 @104 +@108 := @96 @30 @106 +@109 := @93 @92 +@110 := @94 @92 +@111 := @110 @31 +@112 := @111 @109 +@113 := @111 @112 +@114 := @111 @113 +@115 := @111 @114 +@116 := @111 @115 +@117 := @111 @116 +@118 := LexLeanPreservation.Rust.WTL +@126 := {p : @32} -> {c : @33} -> {A : @34} -> @118 @38 @40 @4 @95 @109 +@128 := LexLeanPreservation.Rust.wtl_nil @0 +@129 := @118 @0 +@135 := {c : @33} -> {A : @34} -> @129 @40 @4 @95 @109 +@136 := @128 @1 +@137 := @129 @1 +@141 := {A : @34} -> @137 @4 @95 @109 +@142 := @136 @2 +@143 := @137 @2 +@144 := @143 @95 +@145 := @144 @109 +@146 := List.{0} +@147 := @146 @91 +@148 := @146 @92 +@149 := #6 +@150 := @7 @149 +@151 := #5 +@152 := @150 @151 +@153 := #4 +@156 := @152 @153 @36 @38 +@157 := #7 +@162 := @118 @157 @149 @151 @38 @40 +@163 := #8 +@166 := @118 @163 @157 @149 +@168 := @96 @151 @36 +@169 := @166 @168 +@171 := @110 @153 @38 +@181 := {p : @32} -> + {c : @33} -> + {A : @34} -> + {v : @91} -> {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @156) -> (hs : @162) -> @169 @171 +@183 := LexLeanPreservation.Rust.wtl_cons @0 +@187 := @11 @151 @153 @36 @38 +@191 := @129 @149 @151 @38 @40 +@203 := {c : @33} -> + {A : @34} -> + {v : @91} -> + {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @187) -> (hs : @191) -> @129 @157 @149 @168 @171 +@204 := @183 @1 +@207 := @12 @153 @36 @38 +@210 := @137 @151 @38 @40 +@220 := {A : @34} -> + {v : @91} -> + {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @207) -> (hs : @210) -> @137 @149 @168 @171 +@221 := @204 @2 +@223 := @13 @36 @38 +@225 := @143 @38 @40 +@233 := {v : @91} -> + {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @223) -> (hs : @225) -> @143 @168 @171 +@234 := @221 @87 +@236 := @29 (@27 @36) +@249 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @236 @38) -> (hs : @225) -> @143 (@96 (@29 (@27 @151)) @36) @171 +@250 := @234 @31 +@252 := @29 (@27 @38) +@254 := @13 @252 @31 +@259 := @143 (@96 (@29 (@27 @153)) @36) +@260 := @111 @38 +@265 := {vs : @147} -> {ts : @148} -> (h : @254) -> (hs : @225) -> @259 @260 +@266 := @250 @95 +@268 := @29 (@27 @40) +@270 := @13 @268 @31 +@271 := @144 @40 +@273 := @96 @236 @95 +@278 := {ts : @148} -> (h : @270) -> (hs : @271) -> @143 @273 @260 +@279 := @266 @109 +@281 := @96 @252 @95 +@282 := @143 @281 +@285 := (h : @90) -> (hs : @145) -> @282 @112 +@286 := @279 @88 +@288 := @96 @268 @95 +@290 := @143 @288 @112 +@291 := (hs : @145) -> @290 +@292 := @286 @142 +@294 := @143 @98 @112 +@295 := @221 @83 +@297 := @29 (@25 @36) +@310 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @297 @38) -> (hs : @225) -> @143 (@96 (@29 (@25 @151)) @36) @171 +@311 := @295 @31 +@313 := @29 (@25 @38) +@325 := {vs : @147} -> + {ts : @148} -> (h : @13 @313 @31) -> (hs : @225) -> @143 (@96 (@29 (@25 @153)) @36) @260 +@326 := @311 @98 +@328 := @29 (@25 @40) +@330 := @13 @328 @31 +@331 := @282 @40 +@333 := @96 @297 @273 +@338 := {ts : @148} -> (h : @330) -> (hs : @331) -> @143 @333 @260 +@339 := @326 @112 +@341 := @96 @313 @281 +@342 := @143 @341 +@345 := (h : @86) -> (hs : @290) -> @342 @113 +@346 := @339 @84 +@348 := @96 @328 @288 +@350 := @143 @348 @113 +@351 := (hs : @294) -> @350 +@352 := @346 @292 +@354 := @143 @100 @113 +@355 := @221 @79 +@357 := @29 (@23 @36) +@370 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @357 @38) -> (hs : @225) -> @143 (@96 (@29 (@23 @151)) @36) @171 +@371 := @355 @31 +@373 := @29 (@23 @38) +@385 := {vs : @147} -> + {ts : @148} -> (h : @13 @373 @31) -> (hs : @225) -> @143 (@96 (@29 (@23 @153)) @36) @260 +@386 := @371 @100 +@388 := @29 (@23 @40) +@390 := @13 @388 @31 +@391 := @342 @40 +@393 := @96 @357 @333 +@398 := {ts : @148} -> (h : @390) -> (hs : @391) -> @143 @393 @260 +@399 := @386 @113 +@401 := @96 @373 @341 +@402 := @143 @401 +@405 := (h : @82) -> (hs : @350) -> @402 @114 +@406 := @399 @80 +@408 := @96 @388 @348 +@410 := @143 @408 @114 +@411 := (hs : @354) -> @410 +@412 := @406 @352 +@414 := @143 @102 @114 +@415 := @221 @75 +@417 := @29 (@21 @36) +@430 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @417 @38) -> (hs : @225) -> @143 (@96 (@29 (@21 @151)) @36) @171 +@431 := @415 @31 +@433 := @29 (@21 @38) +@445 := {vs : @147} -> + {ts : @148} -> (h : @13 @433 @31) -> (hs : @225) -> @143 (@96 (@29 (@21 @153)) @36) @260 +@446 := @431 @102 +@448 := @29 (@21 @40) +@450 := @13 @448 @31 +@451 := @402 @40 +@453 := @96 @417 @393 +@458 := {ts : @148} -> (h : @450) -> (hs : @451) -> @143 @453 @260 +@459 := @446 @114 +@461 := @96 @433 @401 +@462 := @143 @461 +@465 := (h : @78) -> (hs : @410) -> @462 @115 +@466 := @459 @76 +@468 := @96 @448 @408 +@470 := @143 @468 @115 +@471 := (hs : @414) -> @470 +@472 := @466 @412 +@474 := @143 @104 @115 +@475 := @221 @71 +@477 := @29 (@19 @36) +@490 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @477 @38) -> (hs : @225) -> @143 (@96 (@29 (@19 @151)) @36) @171 +@491 := @475 @31 +@493 := @29 (@19 @38) +@505 := {vs : @147} -> + {ts : @148} -> (h : @13 @493 @31) -> (hs : @225) -> @143 (@96 (@29 (@19 @153)) @36) @260 +@506 := @491 @104 +@508 := @29 (@19 @40) +@510 := @13 @508 @31 +@511 := @462 @40 +@513 := @96 @477 @453 +@518 := {ts : @148} -> (h : @510) -> (hs : @511) -> @143 @513 @260 +@519 := @506 @115 +@521 := @96 @493 @461 +@522 := @143 @521 +@525 := (h : @74) -> (hs : @470) -> @522 @116 +@526 := @519 @72 +@528 := @96 @508 @468 +@530 := @143 @528 @116 +@531 := (hs : @474) -> @530 +@532 := @526 @472 +@534 := @143 @106 @116 +@535 := @221 @30 +@537 := @29 (@17 @36) +@550 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @537 @38) -> (hs : @225) -> @143 (@96 (@29 (@17 @151)) @36) @171 +@551 := @535 @31 +@553 := @29 (@17 @38) +@565 := {vs : @147} -> + {ts : @148} -> (h : @13 @553 @31) -> (hs : @225) -> @143 (@96 (@29 (@17 @153)) @36) @260 +@566 := @551 @106 +@568 := @29 (@17 @40) +@570 := @13 @568 @31 +@571 := @522 @40 +@573 := @96 @537 @513 +@578 := {ts : @148} -> (h : @570) -> (hs : @571) -> @143 @573 @260 +@579 := @566 @116 +@581 := @96 @553 @521 +@582 := @143 @581 +@585 := (h : @70) -> (hs : @530) -> @582 @117 +@586 := @579 @68 +@588 := @96 @568 @528 +@590 := @143 @588 @117 +@591 := (hs : @534) -> @590 +@592 := @586 @532 +@594 := @143 @108 @117 +@595 := Eq.{1} +@596 := Option.{0} +@597 := @596 @148 +@598 := @595 @597 +@599 := LexLeanPreservation.Rust.adtFields +@603 := @598 (@599 @149 @36 @38) +@604 := Option.some.{0} +@605 := @604 @148 +@606 := @605 @4 +@607 := @603 @606 +@610 := @7 @163 @157 @149 +@611 := LexLeanTarget.TargetSyntax.Value.adt +@613 := @611 @153 @36 +@614 := @610 @613 +@615 := @8 @151 +@625 := {p : @32} -> + {c : @33} -> + {A : @34} -> + {i : @35} -> {k : @35} -> {fs : @147} -> {tys : @148} -> (h : @607) -> (hf : @162) -> @614 @615 +@627 := LexLeanPreservation.Rust.wt_adt @0 +@628 := @599 @0 +@632 := @598 (@628 @36 @38) @606 +@644 := {c : @33} -> + {A : @34} -> + {i : @35} -> + {k : @35} -> {fs : @147} -> {tys : @148} -> (h : @632) -> (hf : @191) -> @11 @157 @149 @613 @615 +@645 := @627 @1 +@655 := {A : @34} -> + {i : @35} -> + {k : @35} -> {fs : @147} -> {tys : @148} -> (h : @632) -> (hf : @210) -> @12 @149 @613 @615 +@656 := @645 @2 +@657 := @13 @613 +@664 := {i : @35} -> + {k : @35} -> {fs : @147} -> {tys : @148} -> (h : @632) -> (hf : @225) -> @657 @615 +@665 := @656 @9 +@666 := @628 @9 +@675 := {k : @35} -> + {fs : @147} -> {tys : @148} -> (h : @598 (@666 @38) @606) -> (hf : @225) -> @657 @10 +@676 := @665 @9 +@677 := @666 @9 +@678 := @598 @677 +@679 := @678 @606 +@680 := @611 @9 +@682 := @13 (@680 @36) +@687 := {fs : @147} -> {tys : @148} -> (h : @679) -> (hf : @225) -> @682 @10 +@688 := @676 @108 +@695 := {tys : @148} -> (h : @679) -> (hf : @582 @40) -> @13 (@680 @573) @10 +@696 := @688 @117 +@703 := (h : @678 (@605 @117)) -> (hf : @590) -> @13 (@680 @581) @10 +@704 := Eq.refl.{1} +@705 := @704 @597 +@707 := @696 (@705 @677) +@711 := (hf : @594) -> @13 (@680 @588) @10 +@712 := @707 @592 +@715 := @13 (@680 @108) @10 +@716 := fun (__s : @3) => @712 +@717 := Reasoning.Clinic.Chart +@719 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.__enc_1 @4 +@720 := 1 +@721 := @8 @720 +@724 := (__s : @717) -> @13 @719 @721 +@725 := Reasoning.Clinic.Chart.vitals +@726 := @725 @4 +@727 := Reasoning.Clinic.Chart.fever +@728 := @727 @4 +@729 := Reasoning.Clinic.Chart.tachycardia +@730 := @729 @4 +@731 := Reasoning.Clinic.Chart.tachypnea +@732 := @731 @4 +@733 := Reasoning.Clinic.Chart.leukocytosis +@734 := @733 @4 +@735 := Reasoning.Clinic.Chart.sirs +@736 := @735 @4 +@737 := Reasoning.Clinic.Chart.sepsis +@738 := @737 @4 +@739 := Reasoning.Clinic.Chart.shock +@740 := @739 @4 +@741 := Reasoning.Clinic.Chart.level +@742 := @741 @4 +@743 := @5 @726 +@745 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.Compose.RustCore.__wt_0 @726 +@746 := @29 @728 +@747 := @64 @728 +@749 := @13 @746 @31 +@750 := @29 @730 +@751 := @64 @730 +@753 := @13 @750 @31 +@754 := @29 @732 +@755 := @64 @732 +@757 := @13 @754 @31 +@758 := @29 @734 +@759 := @64 @734 +@761 := @13 @758 @31 +@762 := @29 @736 +@763 := @64 @736 +@765 := @13 @762 @31 +@766 := @29 @738 +@767 := @64 @738 +@769 := @13 @766 @31 +@770 := @29 @740 +@771 := @64 @740 +@773 := @13 @770 @31 +@774 := @29 @742 +@775 := @64 @742 +@777 := @13 @774 @31 +@779 := @96 @774 @95 +@781 := @96 @770 @779 +@783 := @96 @766 @781 +@785 := @96 @762 @783 +@787 := @96 @758 @785 +@789 := @96 @754 @787 +@791 := @96 @750 @789 +@793 := @96 @746 @791 +@795 := @96 @743 @793 +@796 := @111 @117 +@797 := @111 @796 +@798 := @110 @10 +@799 := @798 @797 +@800 := @221 @774 +@802 := @29 (@741 @36) +@815 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @802 @38) -> (hs : @225) -> @143 (@96 (@29 (@741 @151)) @36) @171 +@816 := @800 @31 +@818 := @29 (@741 @38) +@830 := {vs : @147} -> + {ts : @148} -> (h : @13 @818 @31) -> (hs : @225) -> @143 (@96 (@29 (@741 @153)) @36) @260 +@831 := @816 @95 +@833 := @29 (@741 @40) +@835 := @13 @833 @31 +@837 := @96 @802 @95 +@842 := {ts : @148} -> (h : @835) -> (hs : @271) -> @143 @837 @260 +@843 := @831 @109 +@845 := @96 @818 @95 +@846 := @143 @845 +@849 := (h : @777) -> (hs : @145) -> @846 @112 +@850 := @843 @775 +@852 := @96 @833 @95 +@854 := @143 @852 @112 +@855 := (hs : @145) -> @854 +@856 := @850 @142 +@858 := @143 @779 @112 +@859 := @221 @770 +@861 := @29 (@739 @36) +@874 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @861 @38) -> (hs : @225) -> @143 (@96 (@29 (@739 @151)) @36) @171 +@875 := @859 @31 +@877 := @29 (@739 @38) +@889 := {vs : @147} -> + {ts : @148} -> (h : @13 @877 @31) -> (hs : @225) -> @143 (@96 (@29 (@739 @153)) @36) @260 +@890 := @875 @779 +@892 := @29 (@739 @40) +@894 := @13 @892 @31 +@895 := @846 @40 +@897 := @96 @861 @837 +@902 := {ts : @148} -> (h : @894) -> (hs : @895) -> @143 @897 @260 +@903 := @890 @112 +@905 := @96 @877 @845 +@906 := @143 @905 +@909 := (h : @773) -> (hs : @854) -> @906 @113 +@910 := @903 @771 +@912 := @96 @892 @852 +@914 := @143 @912 @113 +@915 := (hs : @858) -> @914 +@916 := @910 @856 +@918 := @143 @781 @113 +@919 := @221 @766 +@921 := @29 (@737 @36) +@934 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @921 @38) -> (hs : @225) -> @143 (@96 (@29 (@737 @151)) @36) @171 +@935 := @919 @31 +@937 := @29 (@737 @38) +@949 := {vs : @147} -> + {ts : @148} -> (h : @13 @937 @31) -> (hs : @225) -> @143 (@96 (@29 (@737 @153)) @36) @260 +@950 := @935 @781 +@952 := @29 (@737 @40) +@954 := @13 @952 @31 +@955 := @906 @40 +@957 := @96 @921 @897 +@962 := {ts : @148} -> (h : @954) -> (hs : @955) -> @143 @957 @260 +@963 := @950 @113 +@965 := @96 @937 @905 +@966 := @143 @965 +@969 := (h : @769) -> (hs : @914) -> @966 @114 +@970 := @963 @767 +@972 := @96 @952 @912 +@974 := @143 @972 @114 +@975 := (hs : @918) -> @974 +@976 := @970 @916 +@978 := @143 @783 @114 +@979 := @221 @762 +@981 := @29 (@735 @36) +@994 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @981 @38) -> (hs : @225) -> @143 (@96 (@29 (@735 @151)) @36) @171 +@995 := @979 @31 +@997 := @29 (@735 @38) +@1009 := {vs : @147} -> + {ts : @148} -> (h : @13 @997 @31) -> (hs : @225) -> @143 (@96 (@29 (@735 @153)) @36) @260 +@1010 := @995 @783 +@1012 := @29 (@735 @40) +@1014 := @13 @1012 @31 +@1015 := @966 @40 +@1017 := @96 @981 @957 +@1022 := {ts : @148} -> (h : @1014) -> (hs : @1015) -> @143 @1017 @260 +@1023 := @1010 @114 +@1025 := @96 @997 @965 +@1026 := @143 @1025 +@1029 := (h : @765) -> (hs : @974) -> @1026 @115 +@1030 := @1023 @763 +@1032 := @96 @1012 @972 +@1034 := @143 @1032 @115 +@1035 := (hs : @978) -> @1034 +@1036 := @1030 @976 +@1038 := @143 @785 @115 +@1039 := @221 @758 +@1041 := @29 (@733 @36) +@1054 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @1041 @38) -> (hs : @225) -> @143 (@96 (@29 (@733 @151)) @36) @171 +@1055 := @1039 @31 +@1057 := @29 (@733 @38) +@1069 := {vs : @147} -> + {ts : @148} -> (h : @13 @1057 @31) -> (hs : @225) -> @143 (@96 (@29 (@733 @153)) @36) @260 +@1070 := @1055 @785 +@1072 := @29 (@733 @40) +@1074 := @13 @1072 @31 +@1075 := @1026 @40 +@1077 := @96 @1041 @1017 +@1082 := {ts : @148} -> (h : @1074) -> (hs : @1075) -> @143 @1077 @260 +@1083 := @1070 @115 +@1085 := @96 @1057 @1025 +@1086 := @143 @1085 +@1089 := (h : @761) -> (hs : @1034) -> @1086 @116 +@1090 := @1083 @759 +@1092 := @96 @1072 @1032 +@1094 := @143 @1092 @116 +@1095 := (hs : @1038) -> @1094 +@1096 := @1090 @1036 +@1098 := @143 @787 @116 +@1099 := @221 @754 +@1101 := @29 (@731 @36) +@1114 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @1101 @38) -> (hs : @225) -> @143 (@96 (@29 (@731 @151)) @36) @171 +@1115 := @1099 @31 +@1117 := @29 (@731 @38) +@1129 := {vs : @147} -> + {ts : @148} -> (h : @13 @1117 @31) -> (hs : @225) -> @143 (@96 (@29 (@731 @153)) @36) @260 +@1130 := @1115 @787 +@1132 := @29 (@731 @40) +@1134 := @13 @1132 @31 +@1135 := @1086 @40 +@1137 := @96 @1101 @1077 +@1142 := {ts : @148} -> (h : @1134) -> (hs : @1135) -> @143 @1137 @260 +@1143 := @1130 @116 +@1145 := @96 @1117 @1085 +@1146 := @143 @1145 +@1149 := (h : @757) -> (hs : @1094) -> @1146 @117 +@1150 := @1143 @755 +@1152 := @96 @1132 @1092 +@1154 := @143 @1152 @117 +@1155 := (hs : @1098) -> @1154 +@1156 := @1150 @1096 +@1158 := @143 @789 @117 +@1159 := @221 @750 +@1161 := @29 (@729 @36) +@1174 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @1161 @38) -> (hs : @225) -> @143 (@96 (@29 (@729 @151)) @36) @171 +@1175 := @1159 @31 +@1177 := @29 (@729 @38) +@1189 := {vs : @147} -> + {ts : @148} -> (h : @13 @1177 @31) -> (hs : @225) -> @143 (@96 (@29 (@729 @153)) @36) @260 +@1190 := @1175 @789 +@1192 := @29 (@729 @40) +@1194 := @13 @1192 @31 +@1195 := @1146 @40 +@1197 := @96 @1161 @1137 +@1202 := {ts : @148} -> (h : @1194) -> (hs : @1195) -> @143 @1197 @260 +@1203 := @1190 @117 +@1205 := @96 @1177 @1145 +@1206 := @143 @1205 +@1209 := (h : @753) -> (hs : @1154) -> @1206 @796 +@1210 := @1203 @751 +@1212 := @96 @1192 @1152 +@1214 := @143 @1212 @796 +@1215 := (hs : @1158) -> @1214 +@1216 := @1210 @1156 +@1218 := @143 @791 @796 +@1219 := @221 @746 +@1221 := @29 (@727 @36) +@1234 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @1221 @38) -> (hs : @225) -> @143 (@96 (@29 (@727 @151)) @36) @171 +@1235 := @1219 @31 +@1237 := @29 (@727 @38) +@1249 := {vs : @147} -> + {ts : @148} -> (h : @13 @1237 @31) -> (hs : @225) -> @143 (@96 (@29 (@727 @153)) @36) @260 +@1250 := @1235 @791 +@1252 := @29 (@727 @40) +@1254 := @13 @1252 @31 +@1255 := @1206 @40 +@1257 := @96 @1221 @1197 +@1262 := {ts : @148} -> (h : @1254) -> (hs : @1255) -> @143 @1257 @260 +@1263 := @1250 @796 +@1265 := @96 @1237 @1205 +@1266 := @143 @1265 +@1269 := (h : @749) -> (hs : @1214) -> @1266 @797 +@1270 := @1263 @747 +@1272 := @96 @1252 @1212 +@1274 := @143 @1272 @797 +@1275 := (hs : @1218) -> @1274 +@1276 := @1270 @1216 +@1278 := @143 @793 @797 +@1279 := @221 @743 +@1281 := @5 (@725 @36) +@1294 := {t : @92} -> + {vs : @147} -> + {ts : @148} -> (h : @13 @1281 @38) -> (hs : @225) -> @143 (@96 (@5 (@725 @151)) @36) @171 +@1295 := @1279 @10 +@1297 := @5 (@725 @38) +@1299 := @13 @1297 @10 +@1304 := @143 (@96 (@5 (@725 @153)) @36) +@1305 := @798 @38 +@1310 := {vs : @147} -> {ts : @148} -> (h : @1299) -> (hs : @225) -> @1304 @1305 +@1311 := @1295 @793 +@1313 := @5 (@725 @40) +@1315 := @13 @1313 @10 +@1316 := @1266 @40 +@1318 := @96 @1281 @1257 +@1323 := {ts : @148} -> (h : @1315) -> (hs : @1316) -> @143 @1318 @1305 +@1324 := @1311 @797 +@1326 := @13 @743 @10 +@1328 := @96 @1297 @1265 +@1329 := @143 @1328 +@1332 := (h : @1326) -> (hs : @1274) -> @1329 @799 +@1333 := @1324 @745 +@1335 := @96 @1313 @1272 +@1337 := @143 @1335 @799 +@1338 := (hs : @1278) -> @1337 +@1339 := @1333 @1276 +@1341 := @143 @795 @799 +@1342 := @656 @720 +@1343 := @628 @720 +@1352 := {k : @35} -> + {fs : @147} -> {tys : @148} -> (h : @598 (@1343 @38) @606) -> (hf : @225) -> @657 @721 +@1353 := @1342 @9 +@1354 := @1343 @9 +@1355 := @598 @1354 +@1356 := @1355 @606 +@1361 := {fs : @147} -> {tys : @148} -> (h : @1356) -> (hf : @225) -> @682 @721 +@1362 := @1353 @795 +@1369 := {tys : @148} -> (h : @1356) -> (hf : @1329 @40) -> @13 (@680 @1318) @721 +@1370 := @1362 @799 +@1377 := (h : @1355 (@605 @799)) -> (hf : @1337) -> @13 (@680 @1328) @721 +@1379 := @1370 (@705 @1354) +@1383 := (hf : @1341) -> @13 (@680 @1335) @721 +@1384 := @1379 @1339 +@1387 := @13 (@680 @795) @721 +@1388 := fun (__s : @717) => @1384 +@1389 := Reasoning.Main.Grade.Step +@1391 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.__enc_2 @4 +@1392 := 2 +@1393 := @8 @1392 +@1395 := @13 @1391 @1393 +@1396 := (__v : @1389) -> @1395 +@1397 := fun (__v : @1389) => @1395 +@1398 := @656 @1392 +@1399 := @628 @1392 +@1408 := {k : @35} -> + {fs : @147} -> {tys : @148} -> (h : @598 (@1399 @38) @606) -> (hf : @225) -> @657 @1393 +@1409 := @1398 @9 +@1410 := @1399 @9 +@1411 := @598 @1410 +@1412 := @1411 @606 +@1417 := {fs : @147} -> {tys : @148} -> (h : @1412) -> (hf : @225) -> @682 @1393 +@1418 := @1409 @95 +@1421 := @13 (@680 @95) @1393 +@1424 := {tys : @148} -> (h : @1412) -> (hf : @271) -> @1421 +@1425 := @1418 @109 +@1426 := @605 @109 +@1429 := (h : @1411 @1426) -> (hf : @145) -> @1421 +@1432 := @1425 (@705 @1410) @142 +@1433 := @1398 @720 +@1434 := @1399 @720 +@1435 := @598 @1434 +@1436 := @1435 @606 +@1437 := @611 @720 +@1444 := {fs : @147} -> {tys : @148} -> (h : @1436) -> (hf : @225) -> @13 (@1437 @36) @1393 +@1445 := @1433 @95 +@1448 := @13 (@1437 @95) @1393 +@1451 := {tys : @148} -> (h : @1436) -> (hf : @271) -> @1448 +@1452 := @1445 @109 +@1455 := (h : @1435 @1426) -> (hf : @145) -> @1448 +@1458 := @1452 (@705 @1434) @142 +@1459 := @1398 @1392 +@1460 := @1399 @1392 +@1461 := @598 @1460 +@1462 := @1461 @606 +@1463 := @611 @1392 +@1470 := {fs : @147} -> {tys : @148} -> (h : @1462) -> (hf : @225) -> @13 (@1463 @36) @1393 +@1471 := @1459 @95 +@1474 := @13 (@1463 @95) @1393 +@1477 := {tys : @148} -> (h : @1462) -> (hf : @271) -> @1474 +@1478 := @1471 @109 +@1481 := (h : @1461 @1426) -> (hf : @145) -> @1474 +@1484 := @1478 (@705 @1460) @142 +@1485 := 3 +@1486 := @1398 @1485 +@1487 := @1399 @1485 +@1488 := @598 @1487 +@1489 := @1488 @606 +@1490 := @611 @1485 +@1497 := {fs : @147} -> {tys : @148} -> (h : @1489) -> (hf : @225) -> @13 (@1490 @36) @1393 +@1498 := @1486 @95 +@1501 := @13 (@1490 @95) @1393 +@1504 := {tys : @148} -> (h : @1489) -> (hf : @271) -> @1501 +@1505 := @1498 @109 +@1508 := (h : @1488 @1426) -> (hf : @145) -> @1501 +@1511 := @1505 (@705 @1487) @142 +@1512 := 4 +@1513 := @1398 @1512 +@1514 := @1399 @1512 +@1515 := @598 @1514 +@1516 := @1515 @606 +@1517 := @611 @1512 +@1524 := {fs : @147} -> {tys : @148} -> (h : @1516) -> (hf : @225) -> @13 (@1517 @36) @1393 +@1525 := @1513 @95 +@1528 := @13 (@1517 @95) @1393 +@1531 := {tys : @148} -> (h : @1516) -> (hf : @271) -> @1528 +@1532 := @1525 @109 +@1535 := (h : @1515 @1426) -> (hf : @145) -> @1528 +@1538 := @1532 (@705 @1514) @142 +@1539 := 5 +@1540 := @1398 @1539 +@1541 := @1399 @1539 +@1542 := @598 @1541 +@1543 := @1542 @606 +@1544 := @611 @1539 +@1551 := {fs : @147} -> {tys : @148} -> (h : @1543) -> (hf : @225) -> @13 (@1544 @36) @1393 +@1552 := @1540 @95 +@1555 := @13 (@1544 @95) @1393 +@1558 := {tys : @148} -> (h : @1543) -> (hf : @271) -> @1555 +@1559 := @1552 @109 +@1562 := (h : @1542 @1426) -> (hf : @145) -> @1555 +@1565 := @1559 (@705 @1541) @142 +@1566 := 6 +@1567 := @1398 @1566 +@1568 := @1399 @1566 +@1569 := @598 @1568 +@1570 := @1569 @606 +@1571 := @611 @1566 +@1578 := {fs : @147} -> {tys : @148} -> (h : @1570) -> (hf : @225) -> @13 (@1571 @36) @1393 +@1579 := @1567 @95 +@1582 := @13 (@1571 @95) @1393 +@1585 := {tys : @148} -> (h : @1570) -> (hf : @271) -> @1582 +@1586 := @1579 @109 +@1589 := (h : @1569 @1426) -> (hf : @145) -> @1582 +@1592 := @1586 (@705 @1568) @142 +@1593 := 7 +@1594 := @1398 @1593 +@1595 := @1399 @1593 +@1596 := @598 @1595 +@1597 := @1596 @606 +@1598 := @611 @1593 +@1605 := {fs : @147} -> {tys : @148} -> (h : @1597) -> (hf : @225) -> @13 (@1598 @36) @1393 +@1606 := @1594 @95 +@1609 := @13 (@1598 @95) @1393 +@1612 := {tys : @148} -> (h : @1597) -> (hf : @271) -> @1609 +@1613 := @1606 @109 +@1616 := (h : @1596 @1426) -> (hf : @145) -> @1609 +@1619 := @1613 (@705 @1595) @142 +@1631 := fun (__v : @1389) => + Reasoning.Main.Grade.Step.casesOn.{0} @1397 @4 @1432 @1458 @1484 @1511 @1538 @1565 @1592 @1619 +@1632 := @29 @149 +@1633 := @64 @149 +@1634 := @13 @1632 +@1635 := @1634 @31 +@1636 := @29 @151 +@1637 := @64 @151 +@1638 := @13 @1636 +@1639 := @1638 @31 +@1640 := @29 @153 +@1641 := @64 @153 +@1642 := @13 @1640 +@1643 := @1642 @31 +@1644 := @29 @36 +@1645 := @64 @36 +@1647 := @13 @1644 @31 +@1648 := @29 @38 +@1649 := @64 @38 +@1651 := @13 @1648 @31 +@1652 := @29 @40 +@1653 := @64 @40 +@1655 := @13 @1652 @31 +@1656 := @96 @1652 +@1657 := @1656 @95 +@1658 := @96 @1648 +@1659 := @1658 @1657 +@1660 := @96 @1644 +@1661 := @1660 @1659 +@1662 := @96 @1640 +@1663 := @1662 @1661 +@1664 := @96 @1636 +@1665 := @1664 @1663 +@1666 := @96 @1632 +@1667 := @1666 @1665 +@1670 := Prod.{0, 0} @35 @91 +@1673 := Prod.mk.{0, 0} @35 @91 +@1674 := @1673 @1539 +@1675 := @1674 @1652 +@1676 := @1673 @1512 +@1677 := @1676 @1648 +@1678 := @1673 @1485 +@1679 := @1678 @1644 +@1680 := @1673 @1392 +@1681 := @1680 @1640 +@1682 := @1673 @720 +@1683 := @1682 @1636 +@1684 := @1673 @9 +@1685 := @1684 @1632 +@1686 := @93 @1670 +@1687 := @94 @1670 +@1689 := @1687 @1685 @1686 +@1691 := @1687 @1683 @1689 +@1693 := @1687 @1681 @1691 +@1695 := @1687 @1679 @1693 +@1697 := @1687 @1677 @1695 +@1699 := @1687 @1675 @1697 +@1700 := Bool.true +@1701 := LexLeanTarget.TargetSyntax.Function +@1702 := LexLeanTarget.TargetSyntax.Program.functions +@1703 := @1702 @0 +@1704 := @93 @35 +@1705 := LexLeanTarget.TargetSyntax.Ty.unit +@1706 := LexLeanTarget.TargetSyntax.Value.unit +@1709 := LexLeanTarget.TargetSyntax.Expr.value @1705 @1706 +@1714 := LexLeanTarget.TargetSyntax.Function.mk @1704 @109 @1705 @1709 +@1719 := List.getD.{0} @1701 @1703 @9 @1714 +@1723 := fun (__e_n : @35) => + LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.RustCore.root @4 @9 +@1724 := @221 @1652 +@1725 := @1642 @38 +@1727 := @143 (@1666 @36) +@1733 := {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @1725) -> (hs : @225) -> @1727 @171 +@1734 := @1724 @31 +@1741 := {vs : @147} -> {ts : @148} -> (h : @1647) -> (hs : @225) -> @143 (@1664 @36) @260 +@1742 := @1734 @95 +@1743 := @1662 @95 +@1748 := {ts : @148} -> (h : @1651) -> (hs : @271) -> @143 @1743 @260 +@1749 := @1742 @109 +@1750 := @1660 @95 +@1751 := @143 @1750 +@1754 := (h : @1655) -> (hs : @145) -> @1751 @112 +@1755 := @1749 @1653 +@1756 := @1658 @95 +@1758 := @143 @1756 @112 +@1759 := (hs : @145) -> @1758 +@1760 := @1755 @142 +@1762 := @143 @1657 @112 +@1763 := @221 @1648 +@1764 := @1638 @38 +@1765 := @29 @157 +@1766 := @96 @1765 +@1768 := @143 (@1766 @36) +@1774 := {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @1764) -> (hs : @225) -> @1768 @171 +@1775 := @1763 @31 +@1780 := {vs : @147} -> {ts : @148} -> (h : @1643) -> (hs : @225) -> @1727 @260 +@1781 := @1775 @1657 +@1782 := @1751 @40 +@1783 := @1664 @1743 +@1788 := {ts : @148} -> (h : @1647) -> (hs : @1782) -> @143 @1783 @260 +@1789 := @1781 @112 +@1790 := @1662 @1750 +@1791 := @143 @1790 +@1794 := (h : @1651) -> (hs : @1758) -> @1791 @113 +@1795 := @1789 @1649 +@1796 := @1660 @1756 +@1798 := @143 @1796 @113 +@1799 := (hs : @1762) -> @1798 +@1800 := @1795 @1760 +@1802 := @143 @1659 @113 +@1803 := @221 @1644 +@1804 := @1634 @38 +@1805 := @29 @163 +@1806 := @96 @1805 +@1808 := @143 (@1806 @36) +@1814 := {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @1804) -> (hs : @225) -> @1808 @171 +@1815 := @1803 @31 +@1820 := {vs : @147} -> {ts : @148} -> (h : @1639) -> (hs : @225) -> @1768 @260 +@1821 := @1815 @1659 +@1822 := @1791 @40 +@1823 := @1666 @1783 +@1828 := {ts : @148} -> (h : @1643) -> (hs : @1822) -> @143 @1823 @260 +@1829 := @1821 @113 +@1830 := @1664 @1790 +@1831 := @143 @1830 +@1834 := (h : @1647) -> (hs : @1798) -> @1831 @114 +@1835 := @1829 @1645 +@1836 := @1662 @1796 +@1838 := @143 @1836 @114 +@1839 := (hs : @1802) -> @1838 +@1840 := @1835 @1800 +@1842 := @143 @1661 @114 +@1843 := @221 @1640 +@1844 := @13 @1765 +@1845 := @1844 @38 +@1846 := #9 +@1847 := @29 @1846 +@1848 := @96 @1847 +@1850 := @143 (@1848 @36) +@1856 := {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @1845) -> (hs : @225) -> @1850 @171 +@1857 := @1843 @31 +@1862 := {vs : @147} -> {ts : @148} -> (h : @1635) -> (hs : @225) -> @1808 @260 +@1863 := @1857 @1661 +@1864 := @1831 @40 +@1865 := @1766 @1823 +@1870 := {ts : @148} -> (h : @1639) -> (hs : @1864) -> @143 @1865 @260 +@1871 := @1863 @114 +@1872 := @1666 @1830 +@1873 := @143 @1872 +@1876 := (h : @1643) -> (hs : @1838) -> @1873 @115 +@1877 := @1871 @1641 +@1878 := @1664 @1836 +@1880 := @143 @1878 @115 +@1881 := (hs : @1842) -> @1880 +@1882 := @1877 @1840 +@1884 := @143 @1663 @115 +@1885 := @221 @1636 +@1886 := @13 @1805 +@1887 := @1886 @38 +@1888 := #10 +@1889 := @29 @1888 +@1890 := @96 @1889 +@1892 := @143 (@1890 @36) +@1898 := {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @1887) -> (hs : @225) -> @1892 @171 +@1899 := @1885 @31 +@1900 := @1844 @31 +@1905 := {vs : @147} -> {ts : @148} -> (h : @1900) -> (hs : @225) -> @1850 @260 +@1906 := @1899 @1663 +@1907 := @1873 @40 +@1908 := @1806 @1865 +@1913 := {ts : @148} -> (h : @1635) -> (hs : @1907) -> @143 @1908 @260 +@1914 := @1906 @115 +@1915 := @1766 @1872 +@1916 := @143 @1915 +@1919 := (h : @1639) -> (hs : @1880) -> @1916 @116 +@1920 := @1914 @1637 +@1921 := @1666 @1878 +@1923 := @143 @1921 @116 +@1924 := (hs : @1884) -> @1923 +@1925 := @1920 @1882 +@1927 := @143 @1665 @116 +@1928 := @221 @1632 +@1930 := @13 @1847 @38 +@1931 := #11 +@1932 := @29 @1931 +@1933 := @96 @1932 +@1941 := {t : @92} -> + {vs : @147} -> {ts : @148} -> (h : @1930) -> (hs : @225) -> @143 (@1933 @36) @171 +@1942 := @1928 @31 +@1948 := {vs : @147} -> {ts : @148} -> (h : @1886 @31) -> (hs : @225) -> @1892 @260 +@1949 := @1942 @1665 +@1950 := @1916 @40 +@1951 := @1848 @1908 +@1952 := @143 @1951 +@1956 := {ts : @148} -> (h : @1900) -> (hs : @1950) -> @1952 @260 +@1957 := @1949 @116 +@1958 := @1806 @1915 +@1959 := @143 @1958 +@1962 := (h : @1635) -> (hs : @1923) -> @1959 @117 +@1963 := @1957 @1633 +@1964 := @1766 @1921 +@1965 := @143 @1964 +@1967 := (hs : @1927) -> @1965 @117 +@1968 := @1963 @1925 +@1969 := @143 @1667 +@1970 := @1969 @117 +@1971 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.denote +@1977 := @1971 @149 @151 @153 @36 @38 @40 +@1978 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.__fits_0 +@1984 := @1978 @149 @151 @153 @36 @38 @40 +@1992 := @29 (Reasoning.Main.gradeLevel @149 @151 @153 @36 @38 @40) +@1999 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.root @149 @151 @153 @36 @38 @40 +@2000 := Bool +@2001 := Ne.{1} +@2002 := LexLeanPreservation.Obs +@2003 := @2001 @2002 +@2004 := LexLeanPreservation.Rel +@2007 := @2003 (@2004 @40 @4) +@2008 := LexLeanPreservation.Obs.stuck +@2011 := (f : @2000) -> (v : @91) -> @2007 @2008 +@2013 := LexLeanPreservation.Rust.rel_ne_stuck @1984 +@2024 := (v : @91) -> @2003 (@2004 (@1978 @157 @149 @151 @153 @36 @38) @4) @2008 +@2025 := @2013 @1992 +@2029 := @2003 (@2004 @1984 @1992) @2008 +@2030 := @146 @1670 +@2031 := LexLeanPreservation.Rust.FunSem +@2037 := (n : @35) -> @2031 @1846 @163 @157 @4 @149 +@2038 := @596 @1701 +@2039 := @595 @2038 +@2046 := LexLeanRuntime.index (@146 @1701) @1701 (LexLeanRuntime.instIndexableList @1701) +@2050 := @2039 (@2046 (@1702 @1846) @149) +@2051 := @604 @1701 +@2052 := @2051 @151 +@2053 := @2050 @2052 +@2057 := @118 @1888 @1846 @163 @151 +@2058 := LexLeanTarget.TargetSyntax.Function.types +@2059 := @2058 @149 +@2060 := @2057 @2059 +@2061 := @596 @2030 +@2062 := @595 @2061 +@2063 := LexLeanTarget.TargetSemantics.bindAll +@2064 := LexLeanTarget.TargetSyntax.Function.parameters +@2069 := @2062 (@2063 (@2064 @157) @149 @1686) +@2070 := @604 @2030 +@2071 := @2070 @151 +@2072 := @2069 @2071 +@2073 := @596 @2000 +@2074 := @595 @2073 +@2075 := LexLeanPreservation.Rust.fnFallible +@2078 := @2074 (@2075 @1931 @1846) +@2079 := @604 @2000 +@2080 := @2079 @151 +@2081 := @2078 @2080 +@2082 := LexLeanPreservation.RunConv +@2083 := #13 +@2087 := @2082 @2083 @1888 @163 @151 +@2089 := @2003 @149 @2008 +@2090 := Exists.{1} +@2091 := LexLeanPreservation.Rust.ROut +@2092 := @2090 @2091 +@2093 := And +@2094 := LexLeanPreservation.Rust.RealizesFn +@2098 := @2093 (@2094 @1846 @163 @4) +@2099 := LexLeanPreservation.Rust.RCI +@2100 := #15 +@2101 := @2099 @2100 +@2102 := LexLeanPreservation.Rust.fnIdent +@2103 := @2102 @2083 +@2110 := (hne : @2089) -> @2092 (fun (ro : @2091) => @2098 (@2101 @2103 @1931 @4)) +@2125 := {p : @32} -> + {c : @33} -> + {A : @34} -> + {f : @35} -> + {fn : @1701} -> + {args : @147} -> + {env : @2030} -> + {F : @2000} -> + {o : @2002} -> + (hB : @2037) -> + (hfn : @2053) -> (hwt : @2060) -> (hbind : @2072) -> (hF : @2081) -> (hA : @2087) -> @2110 +@2127 := LexLeanPreservation.Rust.compose @0 +@2128 := @2031 @0 +@2133 := (n : @35) -> @2128 @163 @157 @4 @149 +@2134 := @2046 @1703 +@2137 := @2039 (@2134 @149) @2052 +@2141 := @129 @1846 @163 @151 @2059 +@2142 := @2082 @0 +@2145 := @2142 @1888 @163 @151 +@2159 := {c : @33} -> + {A : @34} -> + {f : @35} -> + {fn : @1701} -> + {args : @147} -> + {env : @2030} -> + {F : @2000} -> + {o : @2002} -> + (hB : @2133) -> + (hfn : @2137) -> (hwt : @2141) -> (hbind : @2072) -> (hF : @2081) -> (hA : @2145) -> @2110 +@2160 := @2127 @1 +@2161 := @2128 @1 +@2165 := (n : @35) -> @2161 @157 @4 @149 +@2168 := @137 @163 @151 @2059 +@2169 := @2075 @1 +@2172 := @2074 (@2169 @1846) @2080 +@2173 := @2099 @1 +@2183 := (hbind : @2072) -> + (hF : @2172) -> + (hA : @2145) -> (hne : @2089) -> @2092 (fun (ro : @2091) => @2098 (@2173 @2103 @1931 @4)) +@2193 := {A : @34} -> + {f : @35} -> + {fn : @1701} -> + {args : @147} -> + {env : @2030} -> + {F : @2000} -> {o : @2002} -> (hB : @2165) -> (hfn : @2137) -> (hwt : @2168) -> @2183 +@2194 := @2160 @2 +@2196 := @2161 @2 @4 +@2198 := (n : @35) -> @2196 @149 +@2199 := @143 @151 +@2200 := @2199 @2059 +@2209 := {f : @35} -> + {fn : @1701} -> + {args : @147} -> + {env : @2030} -> + {F : @2000} -> {o : @2002} -> (hB : @2198) -> (hfn : @2137) -> (hwt : @2200) -> @2183 +@2210 := @2194 @9 +@2212 := (n : @35) -> @2196 @9 +@2213 := @2134 @9 +@2214 := @2039 @2213 +@2215 := @2214 @2052 +@2216 := @2169 @9 +@2217 := @2074 @2216 +@2218 := @2217 @2080 +@2219 := @2142 @9 +@2221 := @2219 @163 @151 +@2223 := @2173 (@2102 @9) +@2231 := (hF : @2218) -> + (hA : @2221) -> (hne : @2089) -> @2092 (fun (ro : @2091) => @2098 (@2223 @1931 @4)) +@2240 := {fn : @1701} -> + {args : @147} -> + {env : @2030} -> + {F : @2000} -> + {o : @2002} -> (hB : @2212) -> (hfn : @2215) -> (hwt : @2200) -> (hbind : @2072) -> @2231 +@2241 := @2210 @1719 +@2243 := @2214 (@2051 @1719) +@2244 := @2058 @1719 +@2245 := @2199 @2244 +@2247 := @2063 (@2064 @1719) +@2259 := {args : @147} -> + {env : @2030} -> + {F : @2000} -> + {o : @2002} -> + (hB : @2212) -> + (hfn : @2243) -> (hwt : @2245) -> (hbind : @2062 (@2247 @149 @1686) @2071) -> @2231 +@2260 := @2241 @1667 +@2266 := @1933 (@1890 (@1848 (@1806 (@1766 (@1666 @95))))) +@2268 := @143 @2266 @2244 +@2269 := #12 +@2271 := @96 (@29 @2269) +@2277 := @2271 (@1933 (@1890 (@1848 (@1806 (@1766 @95))))) +@2281 := @2062 (@2247 @2277 @1686) @2071 +@2282 := #14 +@2284 := @96 (@29 @2282) +@2286 := @96 (@29 @2083) +@2292 := @2284 (@2286 (@2271 (@1933 (@1890 (@1848 @95))))) +@2294 := @2219 @2292 @151 +@2297 := @96 (@29 #17) +@2300 := @96 (@29 #16) +@2302 := @96 (@29 @2100) +@2323 := {env : @2030} -> + {F : @2000} -> + {o : @2002} -> + (hB : @2212) -> + (hfn : @2243) -> + (hwt : @2268) -> + (hbind : @2281) -> + (hF : @2218) -> + (hA : @2294) -> + (hne : @2089) -> + @2092 (fun (ro : @2091) => @2098 (@2223 (@2297 (@2300 (@2302 (@2284 (@2286 (@2271 @95)))))) @4)) +@2324 := @2260 @1699 +@2330 := @1890 (@1848 (@1806 (@1766 (@1666 (@1664 @95))))) +@2332 := @143 @2330 @2244 +@2355 := @2062 + (@2247 @2266 @1686) + (@2070 + (@1687 + (@1674 @1632) + (@1687 + (@1676 @1765) + (@1687 + (@1678 @1805) + (@1687 (@1680 @1847) (@1687 (@1682 @1889) (@1687 (@1684 @1932) @1686))))))) +@2361 := @2286 (@2271 (@1933 (@1890 (@1848 (@1806 @95))))) +@2383 := {F : @2000} -> + {o : @2002} -> + (hB : @2212) -> + (hfn : @2243) -> + (hwt : @2332) -> + (hbind : @2355) -> + (hF : @2218) -> + (hA : @2219 @2361 @151) -> + (hne : @2089) -> + @2092 (fun (ro : @2091) => @2098 (@2223 (@2300 (@2302 (@2284 (@2286 (@2271 (@1933 @95)))))) @4)) +@2384 := @2324 @1700 +@2385 := @1952 @2244 +@2408 := @2062 + (@2247 @2330 @1686) + (@2070 + (@1687 + (@1674 @1636) + (@1687 + (@1676 @1632) + (@1687 + (@1678 @1765) + (@1687 (@1680 @1805) (@1687 (@1682 @1847) (@1687 (@1684 @1889) @1686))))))) +@2410 := @2217 (@2079 @1700) +@2412 := @2219 @2277 @151 +@2413 := @2094 @1700 +@2435 := {o : @2002} -> + (hB : @2212) -> + (hfn : @2243) -> + (hwt : @2385) -> + (hbind : @2408) -> + (hF : @2410) -> + (hA : @2412) -> + (hne : @2089) -> + @2092 + (fun (ro : @2091) => + @2093 (@2413 @163 @4) (@2223 (@2302 (@2284 (@2286 (@2271 (@1933 (@1890 @95)))))) @4)) +@2436 := @2384 @1977 +@2437 := @1959 @2244 +@2460 := @2062 + (@2247 @1951 @1686) + (@2070 + (@1687 + (@1674 @1640) + (@1687 + (@1676 @1636) + (@1687 + (@1678 @1632) + (@1687 (@1680 @1765) (@1687 (@1682 @1805) (@1687 (@1684 @1847) @1686))))))) +@2461 := @2219 @2266 +@2467 := @1971 @1931 @1888 @1846 @163 @157 @149 +@2468 := @2461 @2467 +@2474 := @1971 @2269 @1931 @1888 @1846 @163 @157 +@2497 := (hB : @2212) -> + (hfn : @2243) -> + (hwt : @2437) -> + (hbind : @2460) -> + (hF : @2410) -> + (hA : @2468) -> + (hne : @2003 @2474 @2008) -> + @2092 + (fun (ro : @2091) => + @2093 (@2413 (@1971 @2282 @2083 @2269 @1931 @1888 @1846) @4) (@2223 @2292 @4)) +@2498 := @2436 @1723 +@2499 := @1965 @2244 +@2522 := @2062 + (@2247 @1958 @1686) + (@2070 + (@1687 + (@1674 @1644) + (@1687 + (@1676 @1640) + (@1687 + (@1678 @1636) + (@1687 (@1680 @1632) (@1687 (@1682 @1765) (@1687 (@1684 @1805) @1686))))))) +@2523 := @2219 @2330 +@2529 := @1971 @1888 @1846 @163 @157 @149 @151 +@2552 := (hfn : @2243) -> + (hwt : @2499) -> + (hbind : @2522) -> + (hF : @2410) -> + (hA : @2523 @2529) -> + (hne : @2003 @2467 @2008) -> + @2092 + (fun (ro : @2091) => + @2093 (@2413 (@1971 @2083 @2269 @1931 @1888 @1846 @163) @4) (@2223 @2361 @4)) +@2555 := @2498 (@704 @2038 @2213) +@2556 := @1969 @2244 +@2579 := @2062 + (@2247 @1964 @1686) + (@2070 + (@1687 + (@1674 @1648) + (@1687 + (@1676 @1644) + (@1687 + (@1678 @1640) + (@1687 (@1680 @1636) (@1687 (@1682 @1632) (@1687 (@1684 @1765) @1686))))))) +@2580 := @2219 @1951 +@2586 := @1971 @1846 @163 @157 @149 @151 @153 +@2602 := (hwt : @2556) -> + (hbind : @2579) -> + (hF : @2410) -> + (hA : @2580 @2586) -> + (hne : @2003 @2529 @2008) -> @2092 (fun (ro : @2091) => @2093 (@2413 @2474 @4) (@2223 @2277 @4)) +@2603 := @2555 @1968 +@2605 := @2247 @1667 @1686 +@2608 := @2062 @2605 (@2070 @1699) +@2609 := @2219 @1958 +@2615 := @1971 @163 @157 @149 @151 @153 @36 +@2630 := (hbind : @2608) -> + (hF : @2410) -> + (hA : @2609 @2615) -> + (hne : @2003 @2586 @2008) -> @2092 (fun (ro : @2091) => @2093 (@2413 @2467 @4) (@2223 @2266 @4)) +@2633 := @2603 (@704 @2061 @2605) +@2634 := @2219 @1964 +@2640 := @1971 @157 @149 @151 @153 @36 @38 +@2654 := (hF : @2410) -> + (hA : @2634 @2640) -> + (hne : @2003 @2615 @2008) -> @2092 (fun (ro : @2091) => @2093 (@2413 @2529 @4) (@2223 @2330 @4)) +@2657 := @2633 (@704 @2073 @2216) +@2671 := (hA : @2219 @1667 @1977) -> + (hne : @2003 @2640 @2008) -> @2092 (fun (ro : @2091) => @2093 (@2413 @2586 @4) (@2223 @1951 @4)) +@2672 := @2657 @1999 +@2683 := (hne : @2003 @1977 @2008) -> + @2092 (fun (ro : @2091) => @2093 (@2413 @2615 @4) (@2223 @1958 @4)) +@2684 := @2672 @2025 +@2690 := @2093 (@2413 @2640 @4) (@2223 @1964 @4) +@2692 := @2092 (fun (ro : @2091) => @2690) +@2694 := @2092 (fun (__e_ro : @2091) => @2690) +@2703 := LexLeanPreservation.Rust.RepresentableL + (@1664 (@1662 (@1660 (@1658 (@1656 (@96 @42 @95)))))) +@2704 := (__e_hrep : @2703) -> @2694 +@2705 := fun (__e_hrep : @2703) => @2684 +@2706 := (infection : @35) -> @2704 +@2707 := fun (infection : @35) => @2705 +@2708 := (systolic : @35) -> @2706 +@2709 := fun (systolic : @35) => @2707 +@2710 := (whiteCells : @35) -> @2708 +@2711 := fun (whiteCells : @35) => @2709 +@2712 := (respiratoryRate : @35) -> @2710 +@2713 := fun (respiratoryRate : @35) => @2711 +@2714 := (heartRate : @35) -> @2712 +@2715 := fun (heartRate : @35) => @2713 +@2716 := (temperature : @35) -> @2714 +@2717 := fun (temperature : @35) => @2715 +\end{coremodule} +\end{lexlean} diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R5/RustCore.lean b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R5/RustCore.lean new file mode 100644 index 000000000..d8f931617 --- /dev/null +++ b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R5/RustCore.lean @@ -0,0 +1,352 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.RustCore +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [{ constructors := [[.nat, .nat, .nat, .nat, .nat, .nat]] }, + { constructors := [[(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]] }, + { constructors := [[], [], [], [], [], [], [], []] }], functions := (( + { parameters := [0, 1, 2, 3, 4, 5], types := [.nat, .nat, .nat, .nat, .nat, .nat], result := .nat, + body := (.«match» .nat (.call 1 [(.build (.adt 0) (.adt 0) [(.var 0), (.var 1), (.var 2), (.var 3), (.var 4), (.var 5)])]) [(.arm .ok [6] (.var 6)), (.arm .error [7] (.value .nat (.nat 9)))]) }) ::( + { parameters := [0], types := [(.adt 0)], result := (.result .nat (.pair .bool .bool)), + body := (.«let» 1 (.pair (.adt 1) .bool) (.call 2 [(.var 0)]) (.«match» (.result .nat (.pair .bool .bool)) (.second (.var 1)) [(.arm .true [] (.call 3 [(.var 0), (.first (.var 1))])), (.arm .false [] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])]))])) }) ::( + { parameters := [0], types := [(.adt 0)], result := (.pair (.adt 1) .bool), + body := (.call 4 [(.closure 5 []), (.value .nat (.nat 11)), (.call 6 [(.var 0)])]) }) ::( + { parameters := [0, 1], types := [(.adt 0), (.adt 1)], result := (.result .nat (.pair .bool .bool)), + body := (.«match» (.result .nat (.pair .bool .bool)) (.call 7 [(.var 0), (.var 1)]) [(.arm .some [2] (.build .ok (.result .nat (.pair .bool .bool)) [(.var 2)])), (.arm .none [] (.«match» (.result .nat (.pair .bool .bool)) (.call 8 [(.var 1)]) [(.arm .some [3] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])])])), (.arm .none [] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])])]))]))]) }) ::( + { parameters := [0, 1, 2], types := [(.fn [(.adt 1)] (.option (.adt 1))), .nat, (.adt 1)], result := (.pair (.adt 1) .bool), + body := (.«match» (.pair (.adt 1) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.adt 1) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.adt 1) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.adt 1) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 4 [(.var 0), (.var 3), (.var 4)]))]))]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.«match» (.option (.adt 1)) (.call 9 [(.var 0)]) [(.arm .none [] (.build .none (.option (.adt 1)) [])), (.arm .some [1] (.call 10 [(.var 0), (.var 1)]))]) }) ::( + { parameters := [0], types := [(.adt 0)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.var 0), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0))]) }) ::( + { parameters := [0, 1], types := [(.adt 0), (.adt 1)], result := (.option .nat), + body := (.call 8 [(.var 1)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option .nat), + body := (.build .some (.option .nat) [(.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 2)), + body := (.«match» (.option (.adt 2)) (.«match» (.option (.adt 2)) (.«match» (.option (.adt 2)) (.cond (.call 11 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 0) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [1] (.build .some (.option (.adt 2)) [(.var 1)])), (.arm .none [] (.cond (.call 12 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 1) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]) [(.arm .some [2] (.build .some (.option (.adt 2)) [(.var 2)])), (.arm .none [] (.«match» (.option (.adt 2)) (.cond (.call 13 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 2) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [3] (.build .some (.option (.adt 2)) [(.var 3)])), (.arm .none [] (.cond (.call 14 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 3) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]))]) [(.arm .some [4] (.build .some (.option (.adt 2)) [(.var 4)])), (.arm .none [] (.«match» (.option (.adt 2)) (.«match» (.option (.adt 2)) (.cond (.call 15 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 4) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [5] (.build .some (.option (.adt 2)) [(.var 5)])), (.arm .none [] (.cond (.call 16 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 5) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]) [(.arm .some [6] (.build .some (.option (.adt 2)) [(.var 6)])), (.arm .none [] (.«match» (.option (.adt 2)) (.cond (.call 17 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 6) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [7] (.build .some (.option (.adt 2)) [(.var 7)])), (.arm .none [] (.cond (.call 18 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 7) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]))]))]) }) ::( + { parameters := [0, 1], types := [(.adt 1), (.adt 2)], result := (.option (.adt 1)), + body := (.«match» (.option (.adt 1)) (.var 1) [(.arm (.adt 0) [] (.call 19 [(.var 0)])), (.arm (.adt 1) [] (.call 20 [(.var 0)])), (.arm (.adt 2) [] (.call 21 [(.var 0)])), (.arm (.adt 3) [] (.call 22 [(.var 0)])), (.arm (.adt 4) [] (.call 23 [(.var 0)])), (.arm (.adt 5) [] (.call 24 [(.var 0)])), (.arm (.adt 6) [] (.call 25 [(.var 0)])), (.arm (.adt 7) [] (.call 26 [(.var 0)]))]) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 1), (.value .nat (.nat 0))]) (.call 27 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 2), (.value .nat (.nat 0))]) (.call 28 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 3), (.value .nat (.nat 0))]) (.call 29 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 4), (.value .nat (.nat 0))]) (.call 30 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 0))]) (.prim .natLe [(.value .nat (.nat 2)), (.prim .natAdd [(.prim .natAdd [(.prim .natAdd [(.field (.var 0) 1), (.field (.var 0) 2)]), (.field (.var 0) 3)]), (.field (.var 0) 4)])]) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 0))]) (.cond (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 1))]) (.prim .natEq [(.field (.field (.var 0) 0) 5), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natEq [(.field (.var 0) 7), (.value .nat (.nat 0))]) (.cond (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 1))]) (.call 31 [(.field (.var 0) 0)]) (.build .false .bool [])) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := .bool, + body := (.cond (.prim .natLt [(.field (.var 0) 8), (.value .nat (.nat 3))]) (.cond (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 0))]) (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .true .bool []) (.cond (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 1))]) (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .true .bool []) (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 2))]) (.prim .natEq [(.field (.var 0) 7), (.value .nat (.nat 1))]) (.build .false .bool [])))) (.build .false .bool [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 11 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 32 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 12 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 33 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 13 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 34 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 14 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 35 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 15 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 36 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 16 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 37 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 17 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 38 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), + body := (.cond (.call 18 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 39 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.prim .natLt [(.value .nat (.nat 380)), (.field (.var 0) 0)]) }) ::( + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.prim .natLt [(.value .nat (.nat 90)), (.field (.var 0) 1)]) }) ::( + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.prim .natLt [(.value .nat (.nat 20)), (.field (.var 0) 2)]) }) ::( + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.prim .natLt [(.value .nat (.nat 12)), (.field (.var 0) 3)]) }) ::( + { parameters := [0], types := [(.adt 0)], result := .bool, + body := (.prim .natLt [(.field (.var 0) 4), (.value .nat (.nat 90))]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.value .nat (.nat 1)), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.value .nat (.nat 1)), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.value .nat (.nat 1)), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.value .nat (.nat 1)), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.value .nat (.nat 1)), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.value .nat (.nat 1)), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.value .nat (.nat 1)), (.field (.var 0) 8)]) }) ::( + { parameters := [0], types := [(.adt 1)], result := (.adt 1), + body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.prim .natAdd [(.field (.var 0) 8), (.value .nat (.nat 1))])]) }) ::[]) } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .core, items := ((.enum (.adt 0) [{ number := 0, fields := [.nat, .nat, .nat, .nat, .nat, .nat] }]) :: + (.enum (.adt 1) [{ number := 0, fields := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat] }]) :: + (.enum (.adt 2) [{ number := 0, fields := [] }, { number := 1, fields := [] }, { number := 2, fields := [] }, { number := 3, fields := [] }, { number := 4, fields := [] }, { number := 5, fields := [] }, { number := 6, fields := [] }, { number := 7, fields := [] }]) :: + (.enum (.fn 0) [{ number := 5, fields := [] }]) :: + (.apply 0 [(.adt 1)] (.option (.adt 1)) true [{ function := 5, captures := [], functionFallible := true }]) :: + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := .nat }, { pattern := (.bind (.generated .binding 3)), type := .nat }, { pattern := (.bind (.generated .binding 4)), type := .nat }, { pattern := (.bind (.generated .binding 5)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 1)) none (.call (.function 1) [(.construct (.adt 0 0) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1)), (.copy (.generated .binding 2)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4)), (.copy (.generated .binding 5))])] true))] (.matchOn (.move (.generated .holder 1)) [(.mk (.ok (.bind (.generated .binding 6))) (.mk [] (.succeed (.copy (.generated .binding 6))))), (.mk (.err .wild) (.mk [] (.succeed (.lit (.nat 9)))))]))) :: + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible (.result .nat (.pair .bool .bool))) (.mk [(.mk (.bind (.generated .binding 1)) (some (.pair (.adt 1) .bool)) (.call (.function 2) [(.clone (.generated .binding 0))] true)), (.mk (.bind (.generated .holder 3)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 2))]) none (.move (.generated .binding 1)))] (.move (.generated .part 2)))))] (.cond (.move (.generated .holder 3)) (.mk [] (.succeed (.call (.function 3) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 4)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 4))))] false))) (.mk [] (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))])))))) :: + (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible (.pair (.adt 1) .bool)) (.mk [] (.call (.function 4) [(.construct (.closure 0 5) []), (.lit (.nat 11)), (.call (.function 6) [(.move (.generated .binding 0))] false)] false))) :: + (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 1) }] (.result .nat (.pair .bool .bool)) (.mk [(.mk (.bind (.generated .holder 5)) none (.call (.function 7) [(.move (.generated .binding 0)), (.clone (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 5)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 6)) none (.call (.function 8) [(.move (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 6)) [(.mk .none (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))]))), (.mk (.some .wild) (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))])))]))) :: + (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := (.adt 1) }] (.fallible (.pair (.adt 1) .bool)) (.mk [(.mk (.bind (.generated .holder 7)) none (.copy (.generated .binding 1)))] (.cond (.isZero (.generated .holder 7)) (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 7))), (.mk (.bind (.generated .holder 9)) none (.block (.mk [(.mk (.bind (.generated .callee 8)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 8) [(.clone (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 9)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))]))))) :: + (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.fallible (.option (.adt 1))) (.mk [(.mk (.bind (.generated .holder 10)) none (.call (.function 9) [(.clone (.generated .binding 0))] true))] (.matchOn (.move (.generated .holder 10)) [(.mk .none (.mk [] (.succeed (.construct (.none (.adt 1)) [])))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.call (.function 10) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false)))]))) :: + (.function (.generated .function 6) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.move (.generated .binding 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0))]))) :: + (.function (.generated .function 7) [{ pattern := .wild, type := (.adt 0) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 1) }] (.option .nat) (.mk [] (.call (.function 8) [(.move (.generated .binding 1))] false))) :: + (.function (.generated .function 8) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.option .nat) (.mk [] (.construct .some [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 11))]) (.mk [] (.move (.generated .part 11))))])]))) :: + (.function (.generated .function 9) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.fallible (.option (.adt 2))) (.mk [(.mk (.bind (.generated .holder 15)) none (.block (.mk [(.mk (.bind (.generated .holder 13)) none (.block (.mk [(.mk (.bind (.generated .holder 12)) none (.cond (.call (.function 11) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 0) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 12)) [(.mk .none (.mk [] (.cond (.call (.function 12) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 1) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.construct .some [(.move (.generated .binding 1))])))]))))] (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 14)) none (.cond (.call (.function 13) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 2) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 14)) [(.mk .none (.mk [] (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 3) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.construct .some [(.move (.generated .binding 3))])))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.construct .some [(.move (.generated .binding 2))])))]))))] (.matchOn (.move (.generated .holder 15)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 17)) none (.block (.mk [(.mk (.bind (.generated .holder 16)) none (.cond (.call (.function 15) [(.clone (.generated .binding 0))] true) (.mk [] (.construct .some [(.construct (.adt 2 4) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 16)) [(.mk .none (.mk [] (.cond (.call (.function 16) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 5) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.construct .some [(.move (.generated .binding 5))])))]))))] (.matchOn (.move (.generated .holder 17)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 18)) none (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 6) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 18)) [(.mk .none (.mk [] (.cond (.call (.function 18) [(.move (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.construct (.adt 2 7) [])]))) (.mk [] (.succeed (.construct (.none (.adt 2)) [])))))), (.mk (.some (.bind (.generated .binding 7))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 7))]))))]))), (.mk (.some (.bind (.generated .binding 6))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 6))]))))]))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 4))]))))]))) :: + (.function (.generated .function 10) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 2) }] (.fallible (.option (.adt 1))) (.mk [(.mk (.bind (.generated .holder 19)) none (.move (.generated .binding 1)))] (.matchOn (.move (.generated .holder 19)) [(.mk (.adt 2 0 []) (.mk [] (.succeed (.call (.function 19) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 1 []) (.mk [] (.succeed (.call (.function 20) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 2 []) (.mk [] (.succeed (.call (.function 21) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 3 []) (.mk [] (.succeed (.call (.function 22) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 4 []) (.mk [] (.call (.function 23) [(.move (.generated .binding 0))] false))), (.mk (.adt 2 5 []) (.mk [] (.succeed (.call (.function 24) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 6 []) (.mk [] (.succeed (.call (.function 25) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 7 []) (.mk [] (.call (.function 26) [(.move (.generated .binding 0))] false)))]))) :: + (.function (.generated .function 11) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .operand 21)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 20)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 20))))])), (.mk (.bind (.generated .operand 22)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false) (.mk [] (.call (.function 27) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 23)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 23))))])] false)) (.mk [] (.lit (.bool false)))))) :: + (.function (.generated .function 12) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .operand 25)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 24)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 24))))])), (.mk (.bind (.generated .operand 26)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false) (.mk [] (.call (.function 28) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 27)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 27))))])] false)) (.mk [] (.lit (.bool false)))))) :: + (.function (.generated .function 13) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .operand 29)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 28)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 28))))])), (.mk (.bind (.generated .operand 30)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false) (.mk [] (.call (.function 29) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 31)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 31))))])] false)) (.mk [] (.lit (.bool false)))))) :: + (.function (.generated .function 14) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .operand 33)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 32)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 32))))])), (.mk (.bind (.generated .operand 34)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false) (.mk [] (.call (.function 30) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 35)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 35))))])] false)) (.mk [] (.lit (.bool false)))))) :: + (.function (.generated .function 15) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.fallible .bool) (.mk [(.mk (.bind (.generated .operand 37)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 36)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 36))))])), (.mk (.bind (.generated .operand 38)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 37)), (.move (.generated .operand 38))] false) (.mk [(.mk (.bind (.generated .operand 49)) none (.lit (.nat 2))), (.mk (.bind (.generated .operand 50)) none (.block (.mk [(.mk (.bind (.generated .operand 47)) none (.block (.mk [(.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.bind (.generated .operand 41)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 39)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 39))))])), (.mk (.bind (.generated .operand 42)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 40)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 40))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 41)), (.move (.generated .operand 42))] true)))), (.mk (.bind (.generated .operand 45)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 43)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 43))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 44)), (.move (.generated .operand 45))] true)))), (.mk (.bind (.generated .operand 48)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 46)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 46))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 47)), (.move (.generated .operand 48))] true))))] (.succeed (.call (.runtime .natLe) [(.move (.generated .operand 49)), (.move (.generated .operand 50))] false))) (.mk [] (.succeed (.lit (.bool false))))))) :: + (.function (.generated .function 16) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .operand 52)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 51)), .wild, .wild]) (.mk [] (.move (.generated .part 51))))])), (.mk (.bind (.generated .operand 53)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 52)), (.move (.generated .operand 53))] false) (.mk [(.mk (.bind (.generated .operand 55)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 54)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 54))))])), (.mk (.bind (.generated .operand 56)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 55)), (.move (.generated .operand 56))] false) (.mk [(.mk (.bind (.generated .operand 60)) none (.block (.mk [(.mk (.bind (.generated .holder 59)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 58)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 58))))]))] (.matchOn (.move (.generated .holder 59)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 57))]) (.mk [] (.move (.generated .part 57))))])))), (.mk (.bind (.generated .operand 61)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))))) :: + (.function (.generated .function 17) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .operand 63)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 62)), .wild]) (.mk [] (.move (.generated .part 62))))])), (.mk (.bind (.generated .operand 64)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 63)), (.move (.generated .operand 64))] false) (.mk [(.mk (.bind (.generated .operand 66)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 65)), .wild, .wild]) (.mk [] (.move (.generated .part 65))))])), (.mk (.bind (.generated .operand 67)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 66)), (.move (.generated .operand 67))] false) (.mk [] (.call (.function 31) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 68)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 68))))])] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))))) :: + (.function (.generated .function 18) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .operand 70)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 69))]) (.mk [] (.move (.generated .part 69))))])), (.mk (.bind (.generated .operand 71)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 70)), (.move (.generated .operand 71))] false) (.mk [(.mk (.bind (.generated .operand 73)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 72))]) (.mk [] (.move (.generated .part 72))))])), (.mk (.bind (.generated .operand 74)) none (.lit (.nat 0)))] (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 73)), (.move (.generated .operand 74))] false) (.mk [(.mk (.bind (.generated .operand 76)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 75)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 75))))])), (.mk (.bind (.generated .operand 77)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 76)), (.move (.generated .operand 77))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 79)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 78))]) (.mk [] (.move (.generated .part 78))))])), (.mk (.bind (.generated .operand 80)) none (.lit (.nat 1)))] (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 79)), (.move (.generated .operand 80))] false) (.mk [(.mk (.bind (.generated .operand 82)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 81)), .wild, .wild]) (.mk [] (.move (.generated .part 81))))])), (.mk (.bind (.generated .operand 83)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 82)), (.move (.generated .operand 83))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 85)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 84))]) (.mk [] (.move (.generated .part 84))))])), (.mk (.bind (.generated .operand 86)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 85)), (.move (.generated .operand 86))] false) (.mk [(.mk (.bind (.generated .operand 88)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 87)), .wild]) (.mk [] (.move (.generated .part 87))))])), (.mk (.bind (.generated .operand 89)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 88)), (.move (.generated .operand 89))] false)) (.mk [] (.lit (.bool false))))))))) (.mk [] (.lit (.bool false)))))) :: + (.function (.generated .function 19) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.option (.adt 1)) (.mk [] (.cond (.call (.function 11) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 32) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))))) :: + (.function (.generated .function 20) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.option (.adt 1)) (.mk [] (.cond (.call (.function 12) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 33) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))))) :: + (.function (.generated .function 21) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.option (.adt 1)) (.mk [] (.cond (.call (.function 13) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 34) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))))) :: + (.function (.generated .function 22) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.option (.adt 1)) (.mk [] (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 35) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))))) :: + (.function (.generated .function 23) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.fallible (.option (.adt 1))) (.mk [] (.cond (.call (.function 15) [(.clone (.generated .binding 0))] true) (.mk [] (.succeed (.construct .some [(.call (.function 36) [(.move (.generated .binding 0))] false)]))) (.mk [] (.succeed (.construct (.none (.adt 1)) [])))))) :: + (.function (.generated .function 24) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.option (.adt 1)) (.mk [] (.cond (.call (.function 16) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 37) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))))) :: + (.function (.generated .function 25) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.option (.adt 1)) (.mk [] (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 38) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))))) :: + (.function (.generated .function 26) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.fallible (.option (.adt 1))) (.mk [] (.cond (.call (.function 18) [(.clone (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.call (.function 39) [(.move (.generated .binding 0))] true)]))) (.mk [] (.succeed (.construct (.none (.adt 1)) [])))))) :: + (.function (.generated .function 27) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .operand 91)) none (.lit (.nat 380))), (.mk (.bind (.generated .operand 92)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [(.bind (.generated .part 90)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 90))))]))] (.call (.runtime .natLt) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] false))) :: + (.function (.generated .function 28) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .operand 94)) none (.lit (.nat 90))), (.mk (.bind (.generated .operand 95)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 93)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 93))))]))] (.call (.runtime .natLt) [(.move (.generated .operand 94)), (.move (.generated .operand 95))] false))) :: + (.function (.generated .function 29) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .operand 97)) none (.lit (.nat 20))), (.mk (.bind (.generated .operand 98)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 96)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 96))))]))] (.call (.runtime .natLt) [(.move (.generated .operand 97)), (.move (.generated .operand 98))] false))) :: + (.function (.generated .function 30) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .operand 100)) none (.lit (.nat 12))), (.mk (.bind (.generated .operand 101)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, (.bind (.generated .part 99)), .wild, .wild]) (.mk [] (.move (.generated .part 99))))]))] (.call (.runtime .natLt) [(.move (.generated .operand 100)), (.move (.generated .operand 101))] false))) :: + (.function (.generated .function 31) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .operand 103)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 102)), .wild]) (.mk [] (.move (.generated .part 102))))])), (.mk (.bind (.generated .operand 104)) none (.lit (.nat 90)))] (.call (.runtime .natLt) [(.move (.generated .operand 103)), (.move (.generated .operand 104))] false))) :: + (.function (.generated .function 32) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 105)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 105))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 106)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 106))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 107)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 107))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 108)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 108))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 109)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 109))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 110)), .wild, .wild]) (.mk [] (.move (.generated .part 110))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 111)), .wild]) (.mk [] (.move (.generated .part 111))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 112))]) (.mk [] (.move (.generated .part 112))))])]))) :: + (.function (.generated .function 33) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 113)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 113))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 114)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 114))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 115)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 115))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 116)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 116))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 117)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 117))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 118)), .wild, .wild]) (.mk [] (.move (.generated .part 118))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 119)), .wild]) (.mk [] (.move (.generated .part 119))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 120))]) (.mk [] (.move (.generated .part 120))))])]))) :: + (.function (.generated .function 34) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 121)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 121))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 122)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 122))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 123)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 123))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 124)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 124))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 125)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 125))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 126)), .wild, .wild]) (.mk [] (.move (.generated .part 126))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 127)), .wild]) (.mk [] (.move (.generated .part 127))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 128))]) (.mk [] (.move (.generated .part 128))))])]))) :: + (.function (.generated .function 35) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 129)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 129))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 130)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 130))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 131)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 131))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 132)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 132))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 133)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 133))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 134)), .wild, .wild]) (.mk [] (.move (.generated .part 134))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 135)), .wild]) (.mk [] (.move (.generated .part 135))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 136))]) (.mk [] (.move (.generated .part 136))))])]))) :: + (.function (.generated .function 36) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 137)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 137))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 138)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 138))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 139)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 139))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 140)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 140))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 141)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 141))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 142)), .wild, .wild]) (.mk [] (.move (.generated .part 142))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 143)), .wild]) (.mk [] (.move (.generated .part 143))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 144))]) (.mk [] (.move (.generated .part 144))))])]))) :: + (.function (.generated .function 37) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 145)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 145))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 146)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 146))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 147)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 147))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 148)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 148))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 149)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 149))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 150)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 150))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 151)), .wild]) (.mk [] (.move (.generated .part 151))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 152))]) (.mk [] (.move (.generated .part 152))))])]))) :: + (.function (.generated .function 38) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 153)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 153))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 154)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 154))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 155)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 155))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 156)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 156))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 157)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 157))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 158)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 158))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 159)), .wild, .wild]) (.mk [] (.move (.generated .part 159))))]), (.lit (.nat 1)), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 160))]) (.mk [] (.move (.generated .part 160))))])]))) :: + (.function (.generated .function 39) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.fallible (.adt 1)) (.mk [] (.succeed (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 161)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 161))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 162)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 162))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 163)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 163))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 164)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 164))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 165)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 165))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 166)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 166))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 167)), .wild, .wild]) (.mk [] (.move (.generated .part 167))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 168)), .wild]) (.mk [] (.move (.generated .part 168))))]), (.block (.mk [(.mk (.bind (.generated .operand 170)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 169))]) (.mk [] (.move (.generated .part 169))))])), (.mk (.bind (.generated .operand 171)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 170)), (.move (.generated .operand 171))] true)))])))) :: + []) } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [(([(.adt 1)], (.option (.adt 1))), true)] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.call (.function 1) [(.construct (.adt 0 0) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1)), (.copy (.generated .binding 2)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4)), (.copy (.generated .binding 5))])] true))], (.matchOn (.move (.generated .holder 1)) [(.mk (.ok (.bind (.generated .binding 6))) (.mk [] (.succeed (.copy (.generated .binding 6))))), (.mk (.err .wild) (.mk [] (.succeed (.lit (.nat 9)))))]), [(5, .nat, (some 5)), (4, .nat, (some 4)), (3, .nat, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.matchArms (st := (.result .nat (.pair .bool .bool))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))))))) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(6, .nat, (some 6)), (5, .nat, (some 5)), (4, .nat, (some 4)), (3, .nat, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, .nat, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.copy (.generated .binding 6)))) (Corr.mCons (Γ' := [(7, (.pair .bool .bool), none), (5, .nat, (some 5)), (4, .nat, (some 4)), (3, .nat, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, .nat, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.lit (.nat 9)))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl)))) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some (.pair (.adt 1) .bool)) (.call (.function 2) [(.clone (.generated .binding 0))] true)), (.mk (.bind (.generated .holder 3)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 2))]) none (.move (.generated .binding 1)))] (.move (.generated .part 2)))))], (.cond (.move (.generated .holder 3)) (.mk [] (.succeed (.call (.function 3) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 4)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 4))))] false))) (.mk [] (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))])))), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.matchBool (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 2))]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 2))) (Corr.second (ta := (.adt 1)) (tb := .bool) (Corr.var rfl rfl) rfl)) rfl rfl (Corr.kIf (la := []) (ta := (.succeed (.call (.function 3) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 4)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 4))))] false))) (lb := []) (tb := (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))) (Corr.fOfB (Corr.callOps (ts := [(.adt 0), (.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 4)), .wild]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 4))) (Corr.first (ta := (.adt 1)) (tb := .bool) (Corr.var rfl rfl) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)))))⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 4) [(.construct (.closure 0 5) []), (.lit (.nat 11)), (.call (.function 6) [(.move (.generated .binding 0))] false)] false), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.callF (ts := [(.fn [(.adt 1)] (.option (.adt 1))), .nat, (.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl)⟩⟩ + +theorem fun3 : FunOK program krate flags 3 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 5)) none (.call (.function 7) [(.move (.generated .binding 0)), (.clone (.generated .binding 1))] false))], (.matchOn (.move (.generated .holder 5)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 6)) none (.call (.function 8) [(.move (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 6)) [(.mk .none (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))]))), (.mk (.some .wild) (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))])))]), [(1, (.adt 1), (some 1)), (0, (.adt 0), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0), (.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.adt 1), (some 1)), (0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 6)) none (.call (.function 8) [(.move (.generated .binding 1))] false))]) (tail := (.matchOn (.move (.generated .holder 6)) [(.mk .none (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))]))), (.mk (.some .wild) (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))])) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, (.adt 1), (some 1)), (0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.adt 1), (some 1)), (0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))])) (Corr.mCons (Γ' := [(3, .nat, none), (1, (.adt 1), (some 1)), (0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)) rfl rfl rfl)) rfl rfl rfl)⟩⟩ + +theorem fun4 : FunOK program krate flags 4 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 7)) none (.copy (.generated .binding 1)))], (.cond (.isZero (.generated .holder 7)) (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 7))), (.mk (.bind (.generated .holder 9)) none (.block (.mk [(.mk (.bind (.generated .callee 8)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 8) [(.clone (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 9)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))]))), [(2, (.adt 1), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.adt 1)] (.option (.adt 1))), (some 0))], rfl, rfl, + (Corr.matchNat (sl := (some 3)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (lb := [(.mk (.bind (.generated .holder 9)) none (.block (.mk [(.mk (.bind (.generated .callee 8)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 8) [(.clone (.generated .binding 2))] true))))]) (tb := (.matchOn (.move (.generated .holder 9)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))])) (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))))) (Corr.matchArms (st := (.option (.adt 1))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 8)) (some (.fn 0)) (.clone (.generated .binding 0)))]) (tail := (.apply (.generated .callee 8) [(.clone (.generated .binding 2))] true)) (Corr.apply (ps := [(.adt 1)]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (2, (.adt 1), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.adt 1)] (.option (.adt 1))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true))))) (Corr.mCons (Γ' := [(4, (.adt 1), (some 4)), (3, .nat, (some 3)), (2, (.adt 1), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.adt 1)] (.option (.adt 1))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.adt 1)] (.option (.adt 1))), .nat, (.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))))))) rfl rfl rfl)))⟩⟩ + +theorem fun5 : FunOK program krate flags 5 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 10)) none (.call (.function 9) [(.clone (.generated .binding 0))] true))], (.matchOn (.move (.generated .holder 10)) [(.mk .none (.mk [] (.succeed (.construct (.none (.adt 1)) [])))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.call (.function 10) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false)))]), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct (.none (.adt 1)) []))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 10) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.adt 1), (.adt 2)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl)⟩⟩ + +theorem fun6 : FunOK program krate flags 6 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.move (.generated .binding 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0))]), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))))))))) rfl)⟩⟩ + +theorem fun7 : FunOK program krate flags 7 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 8) [(.move (.generated .binding 1))] false), [(1, (.adt 1), (some 1)), (0, (.adt 0), none)], rfl, rfl, + (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun8 : FunOK program krate flags 8 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct .some [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 11))]) (.mk [] (.move (.generated .part 11))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 11))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)⟩⟩ + +theorem fun9 : FunOK program krate flags 9 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 15)) none (.block (.mk [(.mk (.bind (.generated .holder 13)) none (.block (.mk [(.mk (.bind (.generated .holder 12)) none (.cond (.call (.function 11) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 0) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 12)) [(.mk .none (.mk [] (.cond (.call (.function 12) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 1) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.construct .some [(.move (.generated .binding 1))])))]))))] (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 14)) none (.cond (.call (.function 13) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 2) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 14)) [(.mk .none (.mk [] (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 3) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.construct .some [(.move (.generated .binding 3))])))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.construct .some [(.move (.generated .binding 2))])))]))))], (.matchOn (.move (.generated .holder 15)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 17)) none (.block (.mk [(.mk (.bind (.generated .holder 16)) none (.cond (.call (.function 15) [(.clone (.generated .binding 0))] true) (.mk [] (.construct .some [(.construct (.adt 2 4) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 16)) [(.mk .none (.mk [] (.cond (.call (.function 16) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 5) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.construct .some [(.move (.generated .binding 5))])))]))))] (.matchOn (.move (.generated .holder 17)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 18)) none (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 6) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 18)) [(.mk .none (.mk [] (.cond (.call (.function 18) [(.move (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.construct (.adt 2 7) [])]))) (.mk [] (.succeed (.construct (.none (.adt 2)) [])))))), (.mk (.some (.bind (.generated .binding 7))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 7))]))))]))), (.mk (.some (.bind (.generated .binding 6))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 6))]))))]))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 4))]))))]), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 13)) none (.block (.mk [(.mk (.bind (.generated .holder 12)) none (.cond (.call (.function 11) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 0) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 12)) [(.mk .none (.mk [] (.cond (.call (.function 12) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 1) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.construct .some [(.move (.generated .binding 1))])))]))))]) (tail := (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 14)) none (.cond (.call (.function 13) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 2) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 14)) [(.mk .none (.mk [] (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 3) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.construct .some [(.move (.generated .binding 3))])))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.construct .some [(.move (.generated .binding 2))])))])) (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 12)) none (.cond (.call (.function 11) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 0) [])])) (.mk [] (.construct (.none (.adt 2)) []))))]) (tail := (.matchOn (.move (.generated .holder 12)) [(.mk .none (.mk [] (.cond (.call (.function 12) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 1) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.construct .some [(.move (.generated .binding 1))])))])) (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.cond (lc := []) (ce := (.call (.function 11) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 2 0) [])])) (lb := []) (tb := (.construct (.none (.adt 2)) [])) (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 12) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 1) [])])) (.mk [] (.construct (.none (.adt 2)) [])))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.move (.generated .binding 1))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 12) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 2 1) [])])) (lb := []) (tb := (.construct (.none (.adt 2)) [])) (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) rfl rfl rfl)) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 14)) none (.cond (.call (.function 13) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 2) [])])) (.mk [] (.construct (.none (.adt 2)) []))))]) (tail := (.matchOn (.move (.generated .holder 14)) [(.mk .none (.mk [] (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 3) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.construct .some [(.move (.generated .binding 3))])))])) (Corr.mCons (Γ' := [(2, (.adt 2), (some 2)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.move (.generated .binding 2))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.cond (lc := []) (ce := (.call (.function 13) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 2 2) [])])) (lb := []) (tb := (.construct (.none (.adt 2)) [])) (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 3) [])])) (.mk [] (.construct (.none (.adt 2)) [])))) (Corr.mCons (Γ' := [(3, (.adt 2), (some 3)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.move (.generated .binding 3))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 14) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 2 3) [])])) (lb := []) (tb := (.construct (.none (.adt 2)) [])) (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) rfl rfl rfl)) rfl rfl rfl)) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 17)) none (.block (.mk [(.mk (.bind (.generated .holder 16)) none (.cond (.call (.function 15) [(.clone (.generated .binding 0))] true) (.mk [] (.construct .some [(.construct (.adt 2 4) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 16)) [(.mk .none (.mk [] (.cond (.call (.function 16) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 5) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.construct .some [(.move (.generated .binding 5))])))]))))]) (tail := (.matchOn (.move (.generated .holder 17)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 18)) none (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 6) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 18)) [(.mk .none (.mk [] (.cond (.call (.function 18) [(.move (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.construct (.adt 2 7) [])]))) (.mk [] (.succeed (.construct (.none (.adt 2)) [])))))), (.mk (.some (.bind (.generated .binding 7))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 7))]))))]))), (.mk (.some (.bind (.generated .binding 6))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 6))]))))])) (Corr.mCons (Γ' := [(4, (.adt 2), (some 4)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct .some [(.move (.generated .binding 4))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 16)) none (.cond (.call (.function 15) [(.clone (.generated .binding 0))] true) (.mk [] (.construct .some [(.construct (.adt 2 4) [])])) (.mk [] (.construct (.none (.adt 2)) []))))]) (tail := (.matchOn (.move (.generated .holder 16)) [(.mk .none (.mk [] (.cond (.call (.function 16) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 5) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.construct .some [(.move (.generated .binding 5))])))])) (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.cond (lc := []) (ce := (.call (.function 15) [(.clone (.generated .binding 0))] true)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 2 4) [])])) (lb := []) (tb := (.construct (.none (.adt 2)) [])) (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 16) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 5) [])])) (.mk [] (.construct (.none (.adt 2)) [])))) (Corr.mCons (Γ' := [(5, (.adt 2), (some 5)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.move (.generated .binding 5))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 16) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 2 5) [])])) (lb := []) (tb := (.construct (.none (.adt 2)) [])) (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) rfl rfl rfl)) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 18)) none (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 6) [])])) (.mk [] (.construct (.none (.adt 2)) []))))]) (tail := (.matchOn (.move (.generated .holder 18)) [(.mk .none (.mk [] (.cond (.call (.function 18) [(.move (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.construct (.adt 2 7) [])]))) (.mk [] (.succeed (.construct (.none (.adt 2)) [])))))), (.mk (.some (.bind (.generated .binding 7))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 7))]))))])) (Corr.mCons (Γ' := [(6, (.adt 2), (some 6)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct .some [(.move (.generated .binding 6))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.cond (lc := []) (ce := (.call (.function 17) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 2 6) [])])) (lb := []) (tb := (.construct (.none (.adt 2)) [])) (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 18) [(.move (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.construct (.adt 2 7) [])]))) (.mk [] (.succeed (.construct (.none (.adt 2)) []))))) (Corr.mCons (Γ' := [(7, (.adt 2), (some 7)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct .some [(.move (.generated .binding 7))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 18) [(.move (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.construct (.adt 2 7) [])]))) (lb := []) (tb := (.succeed (.construct (.none (.adt 2)) []))) (Corr.fOfB (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))) rfl rfl rfl)) rfl rfl rfl)) rfl rfl rfl)⟩⟩ + +theorem fun10 : FunOK program krate flags 10 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 19)) none (.move (.generated .binding 1)))], (.matchOn (.move (.generated .holder 19)) [(.mk (.adt 2 0 []) (.mk [] (.succeed (.call (.function 19) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 1 []) (.mk [] (.succeed (.call (.function 20) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 2 []) (.mk [] (.succeed (.call (.function 21) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 3 []) (.mk [] (.succeed (.call (.function 22) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 4 []) (.mk [] (.call (.function 23) [(.move (.generated .binding 0))] false))), (.mk (.adt 2 5 []) (.mk [] (.succeed (.call (.function 24) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 6 []) (.mk [] (.succeed (.call (.function 25) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 7 []) (.mk [] (.call (.function 26) [(.move (.generated .binding 0))] false)))]), [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.adt 2)) (U := []) (view := false) (idx := [0, 1, 2, 3, 4, 5, 6, 7]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.call (.function 19) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.call (.function 20) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.succeed (.call (.function 21) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 3) (loads := []) (lets := []) (tail := (.succeed (.call (.function 22) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 4) (loads := []) (lets := []) (tail := (.call (.function 23) [(.move (.generated .binding 0))] false)) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 5) (loads := []) (lets := []) (tail := (.succeed (.call (.function 24) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 6) (loads := []) (lets := []) (tail := (.succeed (.call (.function 25) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 7) (loads := []) (lets := []) (tail := (.call (.function 26) [(.move (.generated .binding 0))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.callF (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl)⟩⟩ + +theorem fun11 : FunOK program krate flags 11 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 21)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 20)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 20))))])), (.mk (.bind (.generated .operand 22)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false) (.mk [] (.call (.function 27) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 23)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 23))))])] false)) (.mk [] (.lit (.bool false)))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 21)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 20)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 20))))])), (.mk (.bind (.generated .operand 22)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 20))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 27) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 23)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 23))))])] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 23))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ + +theorem fun12 : FunOK program krate flags 12 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 25)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 24)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 24))))])), (.mk (.bind (.generated .operand 26)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false) (.mk [] (.call (.function 28) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 27)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 27))))])] false)) (.mk [] (.lit (.bool false)))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 25)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 24)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 24))))])), (.mk (.bind (.generated .operand 26)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 24))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 28) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 27)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 27))))])] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 27))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ + +theorem fun13 : FunOK program krate flags 13 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 29)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 28)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 28))))])), (.mk (.bind (.generated .operand 30)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false) (.mk [] (.call (.function 29) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 31)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 31))))])] false)) (.mk [] (.lit (.bool false)))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 29)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 28)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 28))))])), (.mk (.bind (.generated .operand 30)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 28))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 29) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 31)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 31))))])] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 31))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ + +theorem fun14 : FunOK program krate flags 14 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 33)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 32)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 32))))])), (.mk (.bind (.generated .operand 34)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false) (.mk [] (.call (.function 30) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 35)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 35))))])] false)) (.mk [] (.lit (.bool false)))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 33)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 32)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 32))))])), (.mk (.bind (.generated .operand 34)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 32))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 30) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 35)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 35))))])] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 35))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ + +theorem fun15 : FunOK program krate flags 15 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 37)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 36)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 36))))])), (.mk (.bind (.generated .operand 38)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 37)), (.move (.generated .operand 38))] false) (.mk [(.mk (.bind (.generated .operand 49)) none (.lit (.nat 2))), (.mk (.bind (.generated .operand 50)) none (.block (.mk [(.mk (.bind (.generated .operand 47)) none (.block (.mk [(.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.bind (.generated .operand 41)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 39)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 39))))])), (.mk (.bind (.generated .operand 42)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 40)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 40))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 41)), (.move (.generated .operand 42))] true)))), (.mk (.bind (.generated .operand 45)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 43)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 43))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 44)), (.move (.generated .operand 45))] true)))), (.mk (.bind (.generated .operand 48)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 46)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 46))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 47)), (.move (.generated .operand 48))] true))))] (.succeed (.call (.runtime .natLe) [(.move (.generated .operand 49)), (.move (.generated .operand 50))] false))) (.mk [] (.succeed (.lit (.bool false))))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 37)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 36)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 36))))])), (.mk (.bind (.generated .operand 38)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 37)), (.move (.generated .operand 38))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 36))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 49)) none (.lit (.nat 2))), (.mk (.bind (.generated .operand 50)) none (.block (.mk [(.mk (.bind (.generated .operand 47)) none (.block (.mk [(.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.bind (.generated .operand 41)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 39)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 39))))])), (.mk (.bind (.generated .operand 42)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 40)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 40))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 41)), (.move (.generated .operand 42))] true)))), (.mk (.bind (.generated .operand 45)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 43)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 43))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 44)), (.move (.generated .operand 45))] true)))), (.mk (.bind (.generated .operand 48)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 46)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 46))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 47)), (.move (.generated .operand 48))] true))))]) (ta := (.succeed (.call (.runtime .natLe) [(.move (.generated .operand 49)), (.move (.generated .operand 50))] false))) (lb := []) (tb := (.succeed (.lit (.bool false)))) (Corr.fOfB (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 47)) none (.block (.mk [(.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.bind (.generated .operand 41)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 39)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 39))))])), (.mk (.bind (.generated .operand 42)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 40)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 40))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 41)), (.move (.generated .operand 42))] true)))), (.mk (.bind (.generated .operand 45)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 43)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 43))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 44)), (.move (.generated .operand 45))] true)))), (.mk (.bind (.generated .operand 48)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 46)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 46))))]))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 47)), (.move (.generated .operand 48))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.bind (.generated .operand 41)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 39)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 39))))])), (.mk (.bind (.generated .operand 42)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 40)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 40))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 41)), (.move (.generated .operand 42))] true)))), (.mk (.bind (.generated .operand 45)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 43)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 43))))]))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 44)), (.move (.generated .operand 45))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 41)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 39)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 39))))])), (.mk (.bind (.generated .operand 42)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 40)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 40))))]))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 41)), (.move (.generated .operand 42))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 39))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 40))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 43))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 46))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.fOfB (Corr.bOfE (Corr.buildConst rfl)))))⟩⟩ + +theorem fun16 : FunOK program krate flags 16 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 52)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 51)), .wild, .wild]) (.mk [] (.move (.generated .part 51))))])), (.mk (.bind (.generated .operand 53)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 52)), (.move (.generated .operand 53))] false) (.mk [(.mk (.bind (.generated .operand 55)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 54)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 54))))])), (.mk (.bind (.generated .operand 56)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 55)), (.move (.generated .operand 56))] false) (.mk [(.mk (.bind (.generated .operand 60)) none (.block (.mk [(.mk (.bind (.generated .holder 59)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 58)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 58))))]))] (.matchOn (.move (.generated .holder 59)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 57))]) (.mk [] (.move (.generated .part 57))))])))), (.mk (.bind (.generated .operand 61)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 52)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 51)), .wild, .wild]) (.mk [] (.move (.generated .part 51))))])), (.mk (.bind (.generated .operand 53)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 52)), (.move (.generated .operand 53))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 51))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 55)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 54)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 54))))])), (.mk (.bind (.generated .operand 56)) none (.lit (.nat 1)))]) (ta := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 55)), (.move (.generated .operand 56))] false) (.mk [(.mk (.bind (.generated .operand 60)) none (.block (.mk [(.mk (.bind (.generated .holder 59)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 58)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 58))))]))] (.matchOn (.move (.generated .holder 59)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 57))]) (.mk [] (.move (.generated .part 57))))])))), (.mk (.bind (.generated .operand 61)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] false)) (.mk [] (.lit (.bool false))))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 55)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 54)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 54))))])), (.mk (.bind (.generated .operand 56)) none (.lit (.nat 1)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 55)), (.move (.generated .operand 56))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 54))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 60)) none (.block (.mk [(.mk (.bind (.generated .holder 59)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 58)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 58))))]))] (.matchOn (.move (.generated .holder 59)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 57))]) (.mk [] (.move (.generated .part 57))))])))), (.mk (.bind (.generated .operand 61)) none (.lit (.nat 1)))]) (ta := (.call (.runtime .natEq) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 59)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 58)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 58))))]))]) (tail := (.matchOn (.move (.generated .holder 59)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 57))]) (.mk [] (.move (.generated .part 57))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 57))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 58))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ + +theorem fun17 : FunOK program krate flags 17 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 63)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 62)), .wild]) (.mk [] (.move (.generated .part 62))))])), (.mk (.bind (.generated .operand 64)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 63)), (.move (.generated .operand 64))] false) (.mk [(.mk (.bind (.generated .operand 66)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 65)), .wild, .wild]) (.mk [] (.move (.generated .part 65))))])), (.mk (.bind (.generated .operand 67)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 66)), (.move (.generated .operand 67))] false) (.mk [] (.call (.function 31) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 68)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 68))))])] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 63)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 62)), .wild]) (.mk [] (.move (.generated .part 62))))])), (.mk (.bind (.generated .operand 64)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 63)), (.move (.generated .operand 64))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 62))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 66)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 65)), .wild, .wild]) (.mk [] (.move (.generated .part 65))))])), (.mk (.bind (.generated .operand 67)) none (.lit (.nat 1)))]) (ta := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 66)), (.move (.generated .operand 67))] false) (.mk [] (.call (.function 31) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 68)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 68))))])] false)) (.mk [] (.lit (.bool false))))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 66)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 65)), .wild, .wild]) (.mk [] (.move (.generated .part 65))))])), (.mk (.bind (.generated .operand 67)) none (.lit (.nat 1)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 66)), (.move (.generated .operand 67))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 65))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 31) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 68)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 68))))])] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 68))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ + +theorem fun18 : FunOK program krate flags 18 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 70)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 69))]) (.mk [] (.move (.generated .part 69))))])), (.mk (.bind (.generated .operand 71)) none (.lit (.nat 3)))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 70)), (.move (.generated .operand 71))] false) (.mk [(.mk (.bind (.generated .operand 73)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 72))]) (.mk [] (.move (.generated .part 72))))])), (.mk (.bind (.generated .operand 74)) none (.lit (.nat 0)))] (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 73)), (.move (.generated .operand 74))] false) (.mk [(.mk (.bind (.generated .operand 76)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 75)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 75))))])), (.mk (.bind (.generated .operand 77)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 76)), (.move (.generated .operand 77))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 79)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 78))]) (.mk [] (.move (.generated .part 78))))])), (.mk (.bind (.generated .operand 80)) none (.lit (.nat 1)))] (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 79)), (.move (.generated .operand 80))] false) (.mk [(.mk (.bind (.generated .operand 82)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 81)), .wild, .wild]) (.mk [] (.move (.generated .part 81))))])), (.mk (.bind (.generated .operand 83)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 82)), (.move (.generated .operand 83))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 85)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 84))]) (.mk [] (.move (.generated .part 84))))])), (.mk (.bind (.generated .operand 86)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 85)), (.move (.generated .operand 86))] false) (.mk [(.mk (.bind (.generated .operand 88)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 87)), .wild]) (.mk [] (.move (.generated .part 87))))])), (.mk (.bind (.generated .operand 89)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 88)), (.move (.generated .operand 89))] false)) (.mk [] (.lit (.bool false))))))))) (.mk [] (.lit (.bool false)))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 70)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 69))]) (.mk [] (.move (.generated .part 69))))])), (.mk (.bind (.generated .operand 71)) none (.lit (.nat 3)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 70)), (.move (.generated .operand 71))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 69))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 73)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 72))]) (.mk [] (.move (.generated .part 72))))])), (.mk (.bind (.generated .operand 74)) none (.lit (.nat 0)))]) (ta := (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 73)), (.move (.generated .operand 74))] false) (.mk [(.mk (.bind (.generated .operand 76)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 75)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 75))))])), (.mk (.bind (.generated .operand 77)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 76)), (.move (.generated .operand 77))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 79)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 78))]) (.mk [] (.move (.generated .part 78))))])), (.mk (.bind (.generated .operand 80)) none (.lit (.nat 1)))] (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 79)), (.move (.generated .operand 80))] false) (.mk [(.mk (.bind (.generated .operand 82)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 81)), .wild, .wild]) (.mk [] (.move (.generated .part 81))))])), (.mk (.bind (.generated .operand 83)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 82)), (.move (.generated .operand 83))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 85)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 84))]) (.mk [] (.move (.generated .part 84))))])), (.mk (.bind (.generated .operand 86)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 85)), (.move (.generated .operand 86))] false) (.mk [(.mk (.bind (.generated .operand 88)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 87)), .wild]) (.mk [] (.move (.generated .part 87))))])), (.mk (.bind (.generated .operand 89)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 88)), (.move (.generated .operand 89))] false)) (.mk [] (.lit (.bool false))))))))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 73)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 72))]) (.mk [] (.move (.generated .part 72))))])), (.mk (.bind (.generated .operand 74)) none (.lit (.nat 0)))]) (ce := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 73)), (.move (.generated .operand 74))] false) (.mk [(.mk (.bind (.generated .operand 76)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 75)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 75))))])), (.mk (.bind (.generated .operand 77)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 76)), (.move (.generated .operand 77))] false)) (.mk [] (.lit (.bool false))))) (lk := []) (Corr.cond (lc := [(.mk (.bind (.generated .operand 73)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 72))]) (.mk [] (.move (.generated .part 72))))])), (.mk (.bind (.generated .operand 74)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 73)), (.move (.generated .operand 74))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 72))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 76)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 75)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 75))))])), (.mk (.bind (.generated .operand 77)) none (.lit (.nat 1)))]) (ta := (.call (.runtime .natEq) [(.move (.generated .operand 76)), (.move (.generated .operand 77))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 75))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 79)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 78))]) (.mk [] (.move (.generated .part 78))))])), (.mk (.bind (.generated .operand 80)) none (.lit (.nat 1)))]) (tb := (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 79)), (.move (.generated .operand 80))] false) (.mk [(.mk (.bind (.generated .operand 82)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 81)), .wild, .wild]) (.mk [] (.move (.generated .part 81))))])), (.mk (.bind (.generated .operand 83)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 82)), (.move (.generated .operand 83))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 85)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 84))]) (.mk [] (.move (.generated .part 84))))])), (.mk (.bind (.generated .operand 86)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 85)), (.move (.generated .operand 86))] false) (.mk [(.mk (.bind (.generated .operand 88)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 87)), .wild]) (.mk [] (.move (.generated .part 87))))])), (.mk (.bind (.generated .operand 89)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 88)), (.move (.generated .operand 89))] false)) (.mk [] (.lit (.bool false))))))) (Corr.bOfE (Corr.buildConst rfl)) (Corr.cond (lc := [(.mk (.bind (.generated .operand 79)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 78))]) (.mk [] (.move (.generated .part 78))))])), (.mk (.bind (.generated .operand 80)) none (.lit (.nat 1)))]) (ce := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 79)), (.move (.generated .operand 80))] false) (.mk [(.mk (.bind (.generated .operand 82)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 81)), .wild, .wild]) (.mk [] (.move (.generated .part 81))))])), (.mk (.bind (.generated .operand 83)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 82)), (.move (.generated .operand 83))] false)) (.mk [] (.lit (.bool false))))) (lk := []) (Corr.cond (lc := [(.mk (.bind (.generated .operand 79)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 78))]) (.mk [] (.move (.generated .part 78))))])), (.mk (.bind (.generated .operand 80)) none (.lit (.nat 1)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 79)), (.move (.generated .operand 80))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 78))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 82)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 81)), .wild, .wild]) (.mk [] (.move (.generated .part 81))))])), (.mk (.bind (.generated .operand 83)) none (.lit (.nat 1)))]) (ta := (.call (.runtime .natEq) [(.move (.generated .operand 82)), (.move (.generated .operand 83))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 81))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 85)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 84))]) (.mk [] (.move (.generated .part 84))))])), (.mk (.bind (.generated .operand 86)) none (.lit (.nat 2)))]) (tb := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 85)), (.move (.generated .operand 86))] false) (.mk [(.mk (.bind (.generated .operand 88)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 87)), .wild]) (.mk [] (.move (.generated .part 87))))])), (.mk (.bind (.generated .operand 89)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 88)), (.move (.generated .operand 89))] false)) (.mk [] (.lit (.bool false))))) (Corr.bOfE (Corr.buildConst rfl)) (Corr.cond (lc := [(.mk (.bind (.generated .operand 85)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 84))]) (.mk [] (.move (.generated .part 84))))])), (.mk (.bind (.generated .operand 86)) none (.lit (.nat 2)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 85)), (.move (.generated .operand 86))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 84))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 88)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 87)), .wild]) (.mk [] (.move (.generated .part 87))))])), (.mk (.bind (.generated .operand 89)) none (.lit (.nat 1)))]) (ta := (.call (.runtime .natEq) [(.move (.generated .operand 88)), (.move (.generated .operand 89))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 87))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))))))) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ + +theorem fun19 : FunOK program krate flags 19 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 11) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 32) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 11) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 32) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ + +theorem fun20 : FunOK program krate flags 20 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 12) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 33) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 12) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 33) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ + +theorem fun21 : FunOK program krate flags 21 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 13) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 34) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 13) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 34) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ + +theorem fun22 : FunOK program krate flags 22 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 35) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 14) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 35) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ + +theorem fun23 : FunOK program krate flags 23 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 15) [(.clone (.generated .binding 0))] true) (.mk [] (.succeed (.construct .some [(.call (.function 36) [(.move (.generated .binding 0))] false)]))) (.mk [] (.succeed (.construct (.none (.adt 1)) [])))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 15) [(.clone (.generated .binding 0))] true)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.call (.function 36) [(.move (.generated .binding 0))] false)]))) (lb := []) (tb := (.succeed (.construct (.none (.adt 1)) []))) (Corr.fOfB (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))⟩⟩ + +theorem fun24 : FunOK program krate flags 24 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 16) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 37) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 16) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 37) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ + +theorem fun25 : FunOK program krate flags 25 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 38) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 17) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 38) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ + +theorem fun26 : FunOK program krate flags 26 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 18) [(.clone (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.call (.function 39) [(.move (.generated .binding 0))] true)]))) (.mk [] (.succeed (.construct (.none (.adt 1)) [])))), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 18) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.call (.function 39) [(.move (.generated .binding 0))] true)]))) (lb := []) (tb := (.succeed (.construct (.none (.adt 1)) []))) (Corr.fOfB (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))⟩⟩ + +theorem fun27 : FunOK program krate flags 27 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 91)) none (.lit (.nat 380))), (.mk (.bind (.generated .operand 92)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [(.bind (.generated .part 90)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 90))))]))], (.call (.runtime .natLt) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] false), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 90))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun28 : FunOK program krate flags 28 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 94)) none (.lit (.nat 90))), (.mk (.bind (.generated .operand 95)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 93)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 93))))]))], (.call (.runtime .natLt) [(.move (.generated .operand 94)), (.move (.generated .operand 95))] false), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 93))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun29 : FunOK program krate flags 29 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 97)) none (.lit (.nat 20))), (.mk (.bind (.generated .operand 98)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 96)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 96))))]))], (.call (.runtime .natLt) [(.move (.generated .operand 97)), (.move (.generated .operand 98))] false), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 96))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun30 : FunOK program krate flags 30 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 100)) none (.lit (.nat 12))), (.mk (.bind (.generated .operand 101)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, (.bind (.generated .part 99)), .wild, .wild]) (.mk [] (.move (.generated .part 99))))]))], (.call (.runtime .natLt) [(.move (.generated .operand 100)), (.move (.generated .operand 101))] false), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 99))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun31 : FunOK program krate flags 31 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 103)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 102)), .wild]) (.mk [] (.move (.generated .part 102))))])), (.mk (.bind (.generated .operand 104)) none (.lit (.nat 90)))], (.call (.runtime .natLt) [(.move (.generated .operand 103)), (.move (.generated .operand 104))] false), [(0, (.adt 0), (some 0))], rfl, rfl, + (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 102))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun32 : FunOK program krate flags 32 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 105)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 105))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 106)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 106))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 107)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 107))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 108)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 108))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 109)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 109))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 110)), .wild, .wild]) (.mk [] (.move (.generated .part 110))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 111)), .wild]) (.mk [] (.move (.generated .part 111))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 112))]) (.mk [] (.move (.generated .part 112))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 105))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 106))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 107))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 108))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 109))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 110))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 111))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 112))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ + +theorem fun33 : FunOK program krate flags 33 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 113)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 113))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 114)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 114))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 115)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 115))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 116)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 116))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 117)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 117))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 118)), .wild, .wild]) (.mk [] (.move (.generated .part 118))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 119)), .wild]) (.mk [] (.move (.generated .part 119))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 120))]) (.mk [] (.move (.generated .part 120))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 113))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 114))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 115))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 116))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 117))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 118))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 119))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 120))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ + +theorem fun34 : FunOK program krate flags 34 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 121)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 121))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 122)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 122))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 123)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 123))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 124)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 124))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 125)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 125))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 126)), .wild, .wild]) (.mk [] (.move (.generated .part 126))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 127)), .wild]) (.mk [] (.move (.generated .part 127))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 128))]) (.mk [] (.move (.generated .part 128))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 121))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 122))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 123))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 124))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 125))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 126))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 127))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 128))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ + +theorem fun35 : FunOK program krate flags 35 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 129)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 129))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 130)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 130))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 131)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 131))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 132)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 132))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 133)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 133))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 134)), .wild, .wild]) (.mk [] (.move (.generated .part 134))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 135)), .wild]) (.mk [] (.move (.generated .part 135))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 136))]) (.mk [] (.move (.generated .part 136))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 129))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 130))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 131))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 132))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 133))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 134))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 135))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 136))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ + +theorem fun36 : FunOK program krate flags 36 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 137)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 137))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 138)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 138))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 139)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 139))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 140)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 140))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 141)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 141))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 142)), .wild, .wild]) (.mk [] (.move (.generated .part 142))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 143)), .wild]) (.mk [] (.move (.generated .part 143))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 144))]) (.mk [] (.move (.generated .part 144))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 137))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 138))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 139))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 140))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 141))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 142))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 143))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 144))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ + +theorem fun37 : FunOK program krate flags 37 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 145)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 145))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 146)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 146))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 147)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 147))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 148)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 148))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 149)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 149))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 150)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 150))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 151)), .wild]) (.mk [] (.move (.generated .part 151))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 152))]) (.mk [] (.move (.generated .part 152))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 145))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 146))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 147))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 148))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 149))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 150))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 151))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 152))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ + +theorem fun38 : FunOK program krate flags 38 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 153)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 153))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 154)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 154))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 155)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 155))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 156)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 156))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 157)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 157))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 158)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 158))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 159)), .wild, .wild]) (.mk [] (.move (.generated .part 159))))]), (.lit (.nat 1)), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 160))]) (.mk [] (.move (.generated .part 160))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 153))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 154))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 155))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 156))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 157))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 158))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 159))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 160))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ + +theorem fun39 : FunOK program krate flags 39 := + ⟨_, rfl, .inl ⟨_, _, [], (.succeed (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 161)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 161))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 162)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 162))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 163)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 163))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 164)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 164))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 165)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 165))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 166)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 166))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 167)), .wild, .wild]) (.mk [] (.move (.generated .part 167))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 168)), .wild]) (.mk [] (.move (.generated .part 168))))]), (.block (.mk [(.mk (.bind (.generated .operand 170)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 169))]) (.mk [] (.move (.generated .part 169))))])), (.mk (.bind (.generated .operand 171)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 170)), (.move (.generated .operand 171))] true)))])), [(0, (.adt 1), (some 0))], rfl, rfl, + (Corr.fOfB (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 161))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 162))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 163))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 164))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 165))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 166))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 167))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 168))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 170)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 169))]) (.mk [] (.move (.generated .part 169))))])), (.mk (.bind (.generated .operand 171)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 170)), (.move (.generated .operand 171))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 169))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | 3 => exact fun3 + | 4 => exact fun4 + | 5 => exact fun5 + | 6 => exact fun6 + | 7 => exact fun7 + | 8 => exact fun8 + | 9 => exact fun9 + | 10 => exact fun10 + | 11 => exact fun11 + | 12 => exact fun12 + | 13 => exact fun13 + | 14 => exact fun14 + | 15 => exact fun15 + | 16 => exact fun16 + | 17 => exact fun17 + | 18 => exact fun18 + | 19 => exact fun19 + | 20 => exact fun20 + | 21 => exact fun21 + | 22 => exact fun22 + | 23 => exact fun23 + | 24 => exact fun24 + | 25 => exact fun25 + | 26 => exact fun26 + | 27 => exact fun27 + | 28 => exact fun28 + | 29 => exact fun29 + | 30 => exact fun30 + | 31 => exact fun31 + | 32 => exact fun32 + | 33 => exact fun33 + | 34 => exact fun34 + | 35 => exact fun35 + | 36 => exact fun36 + | 37 => exact fun37 + | 38 => exact fun38 + | 39 => exact fun39 + | _ + 40 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.RustCore diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R6.lean b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R6.lean new file mode 100644 index 000000000..8bd67f958 --- /dev/null +++ b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R6.lean @@ -0,0 +1,283 @@ +import LexLeanPreservation.Core +import LexLeanPreservation.Values +import LexLeanPreservation.Primitives +import LexLeanPreservation.Fixed +import LexLeanPreservation.Keys +import LexLeanPreservation.Templates +import LexLeanPreservation.Validate +import Reasoning.Budget +import Reasoning.Clinic +import Reasoning.Main +import Reasoning.Planner +import Reasoning.Screening +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +set_option linter.unusedVariables false +namespace LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6 + +def __prog : _root_.LexLeanTarget.TargetSyntax.Program := + { adts := [{ constructors := [[.nat]] }, + { constructors := [[(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]] }, + { constructors := [[(.pair .nat .nat), (.list (.adt 0))]] }, + { constructors := [[.nat, .nat, .nat, .nat, .nat, .nat]] }], functions := [ + { parameters := [0], types := [.nat], result := .nat, + body := (.«match» .nat (.call 1 [(.var 0)]) [(.arm .ok [1] (.var 1)), (.arm .error [2] (.value .nat (.nat 9)))]) }, + { parameters := [0], types := [.nat], result := (.result .nat (.pair .bool .bool)), + body := (.«match» (.result .nat (.pair .bool .bool)) (.call 2 [(.var 0)]) [(.arm .ok [1] (.build .ok (.result .nat (.pair .bool .bool)) [(.first (.var 1))])), (.arm .error [2] (.build .error (.result .nat (.pair .bool .bool)) [(.var 2)]))]) }, + { parameters := [0], types := [.nat], result := (.result (.pair .nat (.list (.adt 0))) (.pair .bool .bool)), + body := (.«let» 1 (.pair (.adt 1) .bool) (.call 3 [(.var 0)]) (.«match» (.result (.pair .nat (.list (.adt 0))) (.pair .bool .bool)) (.field (.first (.var 1)) 1) [(.arm .some [2] (.build .ok (.result (.pair .nat (.list (.adt 0))) (.pair .bool .bool)) [(.build .pair (.pair .nat (.list (.adt 0))) [(.first (.var 2)), (.field (.second (.var 2)) 1)])])), (.arm .none [] (.build .error (.result (.pair .nat (.list (.adt 0))) (.pair .bool .bool)) [(.call 4 [(.second (.var 1)), (.field (.first (.var 1)) 2)])]))])) }, + { parameters := [0], types := [.nat], result := (.pair (.adt 1) .bool), + body := (.call 5 [(.closure 6 [(.var 0)]), (.value .nat (.nat 8)), (.call 7 [(.var 0)])]) }, + { parameters := [0, 1], types := [.bool, .bool], result := (.pair .bool .bool), + body := (.cond (.cond (.var 0) (.prim .boolNot [(.var 1)]) (.build .false .bool [])) (.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])]) (.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])) }, + { parameters := [0, 1, 2], types := [(.fn [(.adt 1)] (.option (.adt 1))), .nat, (.adt 1)], result := (.pair (.adt 1) .bool), + body := (.«match» (.pair (.adt 1) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.adt 1) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.adt 1) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.adt 1) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 5 [(.var 0), (.var 3), (.var 4)]))]))]) }, + { parameters := [0, 1], types := [.nat, (.adt 1)], result := (.option (.adt 1)), + body := (.call 8 [(.var 0), (.var 1)]) }, + { parameters := [0], types := [.nat], result := (.adt 1), + body := (.«let» 1 (.list (.adt 2)) (.call 9 [(.closure 10 []), (.build .nil (.list (.adt 2)) []), (.build .cons (.list (.adt 2)) [(.build (.adt 0) (.adt 2) [(.call 11 [(.var 0)]), (.build .nil (.list (.adt 0)) [])]), (.build .nil (.list (.adt 2)) [])])]) (.build (.adt 0) (.adt 1) [(.var 1), (.build .none (.option (.pair .nat (.adt 2))) []), (.prim .natLt [(.value .nat (.nat 3)), (.value .nat (.nat 1))]), (.build (.adt 0) (.adt 3) [(.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.prim .length [(.var 1)])])])) }, + { parameters := [0, 1], types := [.nat, (.adt 1)], result := (.option (.adt 1)), + body := (.«match» (.option (.adt 1)) (.field (.var 1) 1) [(.arm .some [2] (.build .none (.option (.adt 1)) [])), (.arm .none [] (.«match» (.option (.adt 1)) (.field (.var 1) 0) [(.arm .nil [] (.build .none (.option (.adt 1)) [])), (.arm .cons [3, 4] (.«match» (.option (.adt 1)) (.call 12 [(.var 0), (.field (.var 3) 0)]) [(.arm .some [5] (.build .some (.option (.adt 1)) [(.build (.adt 0) (.adt 1) [(.var 4), (.build .some (.option (.pair .nat (.adt 2))) [(.build .pair (.pair .nat (.adt 2)) [(.var 5), (.var 3)])]), (.field (.var 1) 2), (.build (.adt 0) (.adt 3) [(.prim .natAdd [(.field (.field (.var 1) 3) 0), (.value .nat (.nat 1))]), (.field (.field (.var 1) 3) 1), (.field (.field (.var 1) 3) 2), (.field (.field (.var 1) 3) 3), (.prim .natAdd [(.field (.field (.var 1) 3) 4), (.value .nat (.nat 1))]), (.field (.field (.var 1) 3) 5)])])])), (.arm .none [] (.«let» 6 (.list (.adt 2)) (.call 13 [(.var 3)]) (.«let» 7 (.list (.adt 2)) (.var 6) (.«let» 8 (.list (.adt 2)) (.prim .append [(.var 7), (.var 4)]) (.«let» 9 (.list (.adt 2)) (.call 9 [(.closure 14 []), (.build .nil (.list (.adt 2)) []), (.var 8)]) (.build .some (.option (.adt 1)) [(.build (.adt 0) (.adt 1) [(.var 9), (.build .none (.option (.pair .nat (.adt 2))) []), (.cond (.field (.var 1) 2) (.build .true .bool []) (.prim .natLt [(.value .nat (.nat 3)), (.prim .length [(.var 8)])])), (.build (.adt 0) (.adt 3) [(.prim .natAdd [(.field (.field (.var 1) 3) 0), (.value .nat (.nat 1))]), (.prim .natAdd [(.field (.field (.var 1) 3) 1), (.call 15 [(.field (.var 3) 0)])]), (.prim .natAdd [(.field (.field (.var 1) 3) 2), (.prim .length [(.var 6)])]), (.prim .natAdd [(.field (.field (.var 1) 3) 3), (.value .nat (.nat 1))]), (.prim .natAdd [(.field (.field (.var 1) 3) 4), (.value .nat (.nat 1))]), (.cond (.prim .natLt [(.field (.field (.var 1) 3) 5), (.prim .length [(.var 9)])]) (.prim .length [(.var 9)]) (.field (.field (.var 1) 3) 5))])])]))))))]))]))]) }, + { parameters := [0, 1, 2], types := [(.fn [(.list (.adt 2)), (.adt 2)] (.list (.adt 2))), (.list (.adt 2)), (.list (.adt 2))], result := (.list (.adt 2)), + body := (.«match» (.list (.adt 2)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 9 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, + { parameters := [0, 1], types := [(.list (.adt 2)), (.adt 2)], result := (.list (.adt 2)), + body := (.cond (.prim .natLt [(.prim .length [(.var 0)]), (.value .nat (.nat 3))]) (.prim .append [(.var 0), (.build .cons (.list (.adt 2)) [(.var 1), (.build .nil (.list (.adt 2)) [])])]) (.var 0)) }, + { parameters := [0], types := [.nat], result := (.pair .nat .nat), + body := (.build .pair (.pair .nat .nat) [(.var 0), (.value .nat (.nat 0))]) }, + { parameters := [0, 1], types := [.nat, (.pair .nat .nat)], result := (.option .nat), + body := (.«match» (.option .nat) (.call 16 [(.var 1)]) [(.arm .none [] (.build .none (.option .nat) [])), (.arm .some [2] (.cond (.call 17 [(.var 0), (.var 2)]) (.build .some (.option .nat) [(.var 2)]) (.build .none (.option .nat) [])))]) }, + { parameters := [0], types := [(.adt 2)], result := (.list (.adt 2)), + body := (.call 18 [(.var 0)]) }, + { parameters := [0, 1], types := [(.list (.adt 2)), (.adt 2)], result := (.list (.adt 2)), + body := (.cond (.prim .natLt [(.prim .length [(.var 0)]), (.value .nat (.nat 3))]) (.prim .append [(.var 0), (.build .cons (.list (.adt 2)) [(.var 1), (.build .nil (.list (.adt 2)) [])])]) (.var 0)) }, + { parameters := [0], types := [(.pair .nat .nat)], result := .nat, + body := (.prim .length [(.call 19 [(.var 0)])]) }, + { parameters := [0], types := [(.pair .nat .nat)], result := (.option .nat), + body := (.cond (.prim .natLt [(.value .nat (.nat 0)), (.second (.var 0))]) (.build .some (.option .nat) [(.second (.var 0))]) (.build .none (.option .nat) [])) }, + { parameters := [0, 1], types := [.nat, .nat], result := .bool, + body := (.prim .natLe [(.prim .natAdd [(.var 1), (.var 1)]), (.var 0)]) }, + { parameters := [0], types := [(.adt 2)], result := (.list (.adt 2)), + body := (.call 20 [(.closure 21 [(.var 0)]), (.build .nil (.list (.adt 2)) []), (.call 19 [(.field (.var 0) 0)])]) }, + { parameters := [0], types := [(.pair .nat .nat)], result := (.list .nat), + body := (.«match» (.list .nat) (.«let» 1 .nat (.first (.var 0)) (.«let» 2 (.list .nat) (.call 22 [(.var 1)]) (.cond (.call 23 [(.var 1), (.var 2)]) (.build .ok (.result (.list .nat) (.pair .bool .bool)) [(.var 2)]) (.build .error (.result (.list .nat) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])])])))) [(.arm .ok [3] (.var 3)), (.arm .error [4] (.build .nil (.list .nat) []))]) }, + { parameters := [0, 1, 2], types := [(.fn [(.list (.adt 2)), .nat] (.list (.adt 2))), (.list (.adt 2)), (.list .nat)], result := (.list (.adt 2)), + body := (.«match» (.list (.adt 2)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 20 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, + { parameters := [0, 1, 2], types := [(.adt 2), (.list (.adt 2)), .nat], result := (.list (.adt 2)), + body := (.call 24 [(.var 0), (.var 1), (.var 2)]) }, + { parameters := [0], types := [.nat], result := (.list .nat), + body := (.call 25 [(.var 0)]) }, + { parameters := [0, 1], types := [.nat, (.list .nat)], result := .bool, + body := (.prim .natLe [(.prim .length [(.var 1)]), (.value .nat (.nat 4))]) }, + { parameters := [0, 1, 2], types := [(.adt 2), (.list (.adt 2)), .nat], result := (.list (.adt 2)), + body := (.«match» (.list (.adt 2)) (.call 26 [(.field (.var 0) 0), (.build (.adt 0) (.adt 0) [(.var 2)])]) [(.arm .none [] (.var 1)), (.arm .some [3] (.prim .append [(.var 1), (.build .cons (.list (.adt 2)) [(.build (.adt 0) (.adt 2) [(.var 3), (.prim .append [(.field (.var 0) 1), (.build .cons (.list (.adt 0)) [(.build (.adt 0) (.adt 0) [(.var 2)]), (.build .nil (.list (.adt 0)) [])])])]), (.build .nil (.list (.adt 2)) [])])]))]) }, + { parameters := [0], types := [.nat], result := (.list .nat), + body := (.build .cons (.list .nat) [(.prim .natSub [(.var 0), (.value .nat (.nat 10))]), (.build .cons (.list .nat) [(.prim .natSub [(.var 0), (.value .nat (.nat 20))]), (.build .cons (.list .nat) [(.prim .natSub [(.var 0), (.value .nat (.nat 30))]), (.build .cons (.list .nat) [(.prim .natSub [(.var 0), (.value .nat (.nat 50))]), (.build .nil (.list .nat) [])])])])]) }, + { parameters := [0, 1], types := [(.pair .nat .nat), (.adt 0)], result := (.option (.pair .nat .nat)), + body := (.«match» (.option (.pair .nat .nat)) (.var 1) [(.arm (.adt 0) [2] (.call 27 [(.var 0), (.var 2)]))]) }, + { parameters := [0, 1], types := [(.pair .nat .nat), .nat], result := (.option (.pair .nat .nat)), + body := (.cond (.call 28 [(.var 0), (.var 1)]) (.build .some (.option (.pair .nat .nat)) [(.call 29 [(.var 0), (.var 1)])]) (.build .none (.option (.pair .nat .nat)) [])) }, + { parameters := [0, 1], types := [(.pair .nat .nat), .nat], result := .bool, + body := (.cond (.prim .natEq [(.second (.var 0)), (.value .nat (.nat 0))]) (.prim .natLt [(.value .nat (.nat 0)), (.var 1)]) (.build .false .bool [])) }, + { parameters := [0, 1], types := [(.pair .nat .nat), .nat], result := (.pair .nat .nat), + body := (.build .pair (.pair .nat .nat) [(.first (.var 0)), (.var 1)]) }] } + +def __enc_0 : (Reasoning.Screening.Screen.Step) -> _root_.LexLeanTarget.TargetSyntax.Value + | Reasoning.Screening.Screen.Step.Propose __x0 => _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat __x0)] + +def __enc_2 (__s : (Reasoning.Screening.Screen.Node)) : _root_.LexLeanTarget.TargetSyntax.Value := + _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) (__s).state), ((_root_.LexLeanPreservation.encList __enc_0) (__s).trace)] + +def __enc_3 (__s : (Reasoning.Screening.Screen.Ledger)) : _root_.LexLeanTarget.TargetSyntax.Value := + _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).iterations), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).attempts), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).firings), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).expansions), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).verifications), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).frontier)] + +def __enc_1 (__s : (Reasoning.Screening.Screen.Search)) : _root_.LexLeanTarget.TargetSyntax.Value := + _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [((_root_.LexLeanPreservation.encList __enc_2) (__s).frontier), ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat __enc_2)) (__s).found), (_root_.LexLeanTarget.TargetSyntax.Value.bool (__s).truncated), (__enc_3 (__s).ledger)] + +def __fits_16 (pick : (Prod Nat Nat)) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.blt (0 : Nat) (pick).2) then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +theorem __rel_16 (pick : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 16 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) pick)] (_root_.LexLeanPreservation.Rel (__fits_16 pick) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Screening.Screen.extract pick))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Option.some ((pick).2) : (Option Nat)) else (Option.none : (Option Nat)))) (Nat.blt (0 : Nat) (pick).2) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (0 : Nat) (pick).2)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_17 (w : Nat) (r : Nat) : Bool := + ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (r + r) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_17 (w : Nat) (r : Nat) : _root_.LexLeanPreservation.FunRel __prog 17 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w), (_root_.LexLeanTarget.TargetSyntax.Value.nat r)] (_root_.LexLeanPreservation.Rel (__fits_17 w r) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Screening.safeCheck w r))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd r r)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe (r + r) w)) + +def __fits_12 (w : Nat) (_ys : (Prod Nat Nat)) : Bool := + (((Bool.true && Bool.true) && (__fits_16 (_ys))) && (match (Reasoning.Screening.Screen.extract (_ys)) with | Option.none => (Bool.true && Bool.true) | Option.some _yv => (((Bool.true && (Bool.true && Bool.true)) && (__fits_17 (w) (_yv))) && (if (Reasoning.Screening.safeCheck (w) (_yv)) then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) + +attribute [local irreducible] Reasoning.Screening.Screen.extract Reasoning.Screening.safeCheck in +theorem __rel_12 (w : Nat) (_ys : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 12 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w), ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) _ys)] (_root_.LexLeanPreservation.Rel (__fits_12 w _ys) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Screening.Screen.accept w _ys))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Option Nat)) => (match __a with | Option.none => (Bool.true && Bool.true) | Option.some _yv => (((Bool.true && (Bool.true && Bool.true)) && (__fits_17 (w) (_yv))) && (if (Reasoning.Screening.safeCheck (w) (_yv)) then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__a : (Option Nat)) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (match __a with | Option.none => (Option.none : (Option Nat)) | Option.some _yv => (if (Reasoning.Screening.safeCheck (w) (_yv)) then (Option.some (_yv) : (Option Nat)) else (Option.none : (Option Nat))))) (Reasoning.Screening.Screen.extract (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_16 (_ys))) (fun (__a : (Option Nat)) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) | Option.some _yv => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Option.some (_yv) : (Option Nat)) else (Option.none : (Option Nat)))) (Reasoning.Screening.safeCheck (w) (_yv)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_17 (w) (_yv))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))) + +def __fits_25 (w : Nat) : Bool := + ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) + +theorem __rel_25 (w : Nat) : _root_.LexLeanPreservation.FunRel __prog 25 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w)] (_root_.LexLeanPreservation.Rel (__fits_25 w) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Screening.DoseCandidates w))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub w (10 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub w (20 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub w (30 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub w (50 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) + +def __fits_22 (_yinput : Nat) : Bool := + ((Bool.true && Bool.true) && (__fits_25 (_yinput))) + +attribute [local irreducible] Reasoning.Screening.DoseCandidates in +theorem __rel_22 (_yinput : Nat) : _root_.LexLeanPreservation.FunRel __prog 22 [(_root_.LexLeanTarget.TargetSyntax.Value.nat _yinput)] (_root_.LexLeanPreservation.Rel (__fits_22 _yinput) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Screening.DoseModel _yinput))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_25 (_yinput))) + +def __fits_23 (w : Nat) (doses : (List Nat)) : Bool := + ((((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (doses) : Nat) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_23 (w : Nat) (doses : (List Nat)) : _root_.LexLeanPreservation.FunRel __prog 23 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w), ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) doses)] (_root_.LexLeanPreservation.Rel (__fits_23 w doses) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Screening.shortCheck w doses))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) doses)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe (_root_.LexLeanRuntime.length (doses) : Nat) (4 : Nat))) + +def __fits_19 (s : (Prod Nat Nat)) : Bool := + ((Bool.true && (let _ychecked1_input : Nat := (s).1; (((Bool.true && Bool.true) && (__fits_22 (_ychecked1_input))) && (let _ychecked1_output : (List Nat) := (Reasoning.Screening.DoseModel (_ychecked1_input)); (((Bool.true && (Bool.true && Bool.true)) && (__fits_23 (_ychecked1_input) (_ychecked1_output))) && (if (Reasoning.Screening.shortCheck (_ychecked1_input) (_ychecked1_output)) then ((Bool.true && Bool.true) && Bool.true) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))))) && (match (let _ychecked1_input : Nat := (s).1; (let _ychecked1_output : (List Nat) := (Reasoning.Screening.DoseModel (_ychecked1_input)); (if (Reasoning.Screening.shortCheck (_ychecked1_input) (_ychecked1_output)) then (Except.ok (_ychecked1_output) : (Except (Prod Bool Bool) (List Nat))) else (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (List Nat)))))) with | Except.ok proposed => Bool.true | Except.error refusal => (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Screening.DoseModel Reasoning.Screening.shortCheck in +theorem __rel_19 (s : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 19 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) s)] (_root_.LexLeanPreservation.Rel (__fits_19 s) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Screening.Propose.candidates s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun (__a : (Except (Prod Bool Bool) (List Nat))) => (match __a with | Except.ok proposed => Bool.true | Except.error refusal => (Bool.true && Bool.true))) (fun (__a : (Except (Prod Bool Bool) (List Nat))) => (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (match __a with | Except.ok proposed => proposed | Except.error refusal => ([] : List Nat))) (let _ychecked1_input : Nat := (s).1; (let _ychecked1_output : (List Nat) := (Reasoning.Screening.DoseModel (_ychecked1_input)); (if (Reasoning.Screening.shortCheck (_ychecked1_input) (_ychecked1_output)) then (Except.ok (_ychecked1_output) : (Except (Prod Bool Bool) (List Nat))) else (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (List Nat)))))) (let _ychecked1_input : Nat := (s).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (let _ychecked1_output : (List Nat) := (Reasoning.Screening.DoseModel (_ychecked1_input)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_22 (_ychecked1_input))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && Bool.true) && Bool.true) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) (if __b then (Except.ok (_ychecked1_output) : (Except (Prod Bool Bool) (List Nat))) else (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (List Nat))))) (Reasoning.Screening.shortCheck (_ychecked1_input) (_ychecked1_output)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_23 (_ychecked1_input) (_ychecked1_output))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error))))) (fun (__a : (Except (Prod Bool Bool) (List Nat))) _ => match __a with | Except.ok proposed => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | Except.error refusal => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil))))) + +def __fits_28 (s : (Prod Nat Nat)) (d : Nat) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).2 (0 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) + +theorem __rel_28 (s : (Prod Nat Nat)) (d : Nat) : _root_.LexLeanPreservation.FunRel __prog 28 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) s), (_root_.LexLeanTarget.TargetSyntax.Value.nat d)] (_root_.LexLeanPreservation.Rel (__fits_28 s d) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Screening.Propose.guard s d))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.blt (0 : Nat) d))) (Nat.beq (s).2 (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).2 (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (0 : Nat) d))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) + +def __fits_29 (s : (Prod Nat Nat)) (d : Nat) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_29 (s : (Prod Nat Nat)) (d : Nat) : _root_.LexLeanPreservation.FunRel __prog 29 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) s), (_root_.LexLeanTarget.TargetSyntax.Value.nat d)] (_root_.LexLeanPreservation.Rel (__fits_29 s d) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Screening.Propose.conclusion s d))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) + +def __fits_27 (s : (Prod Nat Nat)) (d : Nat) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && (__fits_28 (s) (d))) && (if (Reasoning.Screening.Propose.guard (s) (d)) then ((((Bool.true && (Bool.true && Bool.true)) && (__fits_29 (s) (d))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Screening.Propose.conclusion Reasoning.Screening.Propose.guard in +theorem __rel_27 (s : (Prod Nat Nat)) (d : Nat) : _root_.LexLeanPreservation.FunRel __prog 27 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) s), (_root_.LexLeanTarget.TargetSyntax.Value.nat d)] (_root_.LexLeanPreservation.Rel (__fits_27 s d) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Reasoning.Screening.Propose.apply s d))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (Bool.true && Bool.true)) && (__fits_29 (s) (d))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (if __b then (Option.some ((Reasoning.Screening.Propose.conclusion (s) (d))) : (Option (Prod Nat Nat))) else (Option.none : (Option (Prod Nat Nat))))) (Reasoning.Screening.Propose.guard (s) (d)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_28 (s) (d))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_29 (s) (d))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_26 (_ys : (Prod Nat Nat)) (_ystep : (Reasoning.Screening.Screen.Step)) : Bool := + (Bool.true && (match _ystep with | Reasoning.Screening.Screen.Step.Propose _yb => ((Bool.true && (Bool.true && Bool.true)) && (__fits_27 (_ys) (_yb))))) + +attribute [local irreducible] Reasoning.Screening.Propose.apply in +theorem __rel_26 (_ys : (Prod Nat Nat)) (_ystep : (Reasoning.Screening.Screen.Step)) : _root_.LexLeanPreservation.FunRel __prog 26 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) _ys), (__enc_0 _ystep)] (_root_.LexLeanPreservation.Rel (__fits_26 _ys _ystep) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Reasoning.Screening.Screen.fire _ys _ystep))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV __enc_0 (fun (__a : (Reasoning.Screening.Screen.Step)) => (match __a with | Reasoning.Screening.Screen.Step.Propose _yb => ((Bool.true && (Bool.true && Bool.true)) && (__fits_27 (_ys) (_yb))))) (fun (__a : (Reasoning.Screening.Screen.Step)) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (match __a with | Reasoning.Screening.Screen.Step.Propose _yb => (Reasoning.Screening.Propose.apply (_ys) (_yb)))) _ystep (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (Reasoning.Screening.Screen.Step)) _ => match __a with | Reasoning.Screening.Screen.Step.Propose _yb => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_27 (_ys) (_yb)))))) + +def __fits_24 (_ynode : (Reasoning.Screening.Screen.Node)) (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yb : Nat) : Bool := + (((Bool.true && (((Bool.true && Bool.true) && Bool.true) && Bool.true)) && (__fits_26 ((_ynode).state) ((Reasoning.Screening.Screen.Step.Propose (_yb) : (Reasoning.Screening.Screen.Step))))) && (match (Reasoning.Screening.Screen.fire ((_ynode).state) ((Reasoning.Screening.Screen.Step.Propose (_yb) : (Reasoning.Screening.Screen.Step)))) with | Option.none => Bool.true | Option.some _yt => ((Bool.true && (((((Bool.true && (((Bool.true && (((((Bool.true && Bool.true) && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true))) + +attribute [local irreducible] Reasoning.Screening.Screen.fire in +theorem __rel_24 (_ynode : (Reasoning.Screening.Screen.Node)) (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yb : Nat) : _root_.LexLeanPreservation.FunRel __prog 24 [(__enc_2 _ynode), ((_root_.LexLeanPreservation.encList __enc_2) _yacc), (_root_.LexLeanTarget.TargetSyntax.Value.nat _yb)] (_root_.LexLeanPreservation.Rel (__fits_24 _ynode _yacc _yb) ((_root_.LexLeanPreservation.encList __enc_2) (Reasoning.Screening.Screen.Propose.collect _ynode _yacc _yb))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun (__a : (Option (Prod Nat Nat))) => (match __a with | Option.none => Bool.true | Option.some _yt => ((Bool.true && (((((Bool.true && (((Bool.true && (((((Bool.true && Bool.true) && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true))) (fun (__a : (Option (Prod Nat Nat))) => (_root_.LexLeanPreservation.encList __enc_2) (match __a with | Option.none => _yacc | Option.some _yt => (_root_.LexLeanRuntime.append (_yacc) ((({ state := _yt, trace := (_root_.LexLeanRuntime.append ((_ynode).trace) (((Reasoning.Screening.Screen.Step.Propose (_yb) : (Reasoning.Screening.Screen.Step)) :: ([] : List (Reasoning.Screening.Screen.Step)))) : (List (Reasoning.Screening.Screen.Step))) } : (Reasoning.Screening.Screen.Node)) :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))))) (Reasoning.Screening.Screen.fire ((_ynode).state) ((Reasoning.Screening.Screen.Step.Propose (_yb) : (Reasoning.Screening.Screen.Step)))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil)) (__rel_26 ((_ynode).state) ((Reasoning.Screening.Screen.Step.Propose (_yb) : (Reasoning.Screening.Screen.Step))))) (fun (__a : (Option (Prod Nat Nat))) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | Option.some _yt => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_adt) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc __enc_0) (_ynode).trace ((Reasoning.Screening.Screen.Step.Propose (_yb) : (Reasoning.Screening.Screen.Step)) :: ([] : List (Reasoning.Screening.Screen.Step))))) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_adt) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc __enc_2) _yacc (({ state := _yt, trace := (_root_.LexLeanRuntime.append ((_ynode).trace) (((Reasoning.Screening.Screen.Step.Propose (_yb) : (Reasoning.Screening.Screen.Step)) :: ([] : List (Reasoning.Screening.Screen.Step)))) : (List (Reasoning.Screening.Screen.Step))) } : (Reasoning.Screening.Screen.Node)) :: ([] : List (Reasoning.Screening.Screen.Node))))))))) + +def __fits_21 (_ynode : (Reasoning.Screening.Screen.Node)) (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yb : Nat) : Bool := + ((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_24 (_ynode) (_yacc) (_yb))) + +attribute [local irreducible] Reasoning.Screening.Screen.Propose.collect in +theorem __rel_21 (_ynode : (Reasoning.Screening.Screen.Node)) (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yb : Nat) : _root_.LexLeanPreservation.FunRel __prog 21 [(__enc_2 _ynode), ((_root_.LexLeanPreservation.encList __enc_2) _yacc), (_root_.LexLeanTarget.TargetSyntax.Value.nat _yb)] (_root_.LexLeanPreservation.Rel (__fits_21 _ynode _yacc _yb) ((_root_.LexLeanPreservation.encList __enc_2) ((Reasoning.Screening.Screen.Propose.collect (_ynode) (_yacc) (_yb))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (__rel_24 (_ynode) (_yacc) (_yb))) + +def __fits_18 (_ynode : (Reasoning.Screening.Screen.Node)) : Bool := + (((Bool.true && Bool.true) && ((Bool.true && Bool.true) && (((Bool.true && Bool.true) && (__fits_19 ((_ynode).state))) && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (List (Reasoning.Screening.Screen.Node))) (__p1 : Nat) => __fits_21 (_ynode) __p0 __p1) ((fun (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yb : Nat) => (Reasoning.Screening.Screen.Propose.collect (_ynode) (_yacc) (_yb)))) (([] : List (Reasoning.Screening.Screen.Node))) ((Reasoning.Screening.Propose.candidates ((_ynode).state))))) + +attribute [local irreducible] Reasoning.Screening.Propose.candidates Reasoning.Screening.Screen.Propose.collect in +theorem __rel_18 (_ynode : (Reasoning.Screening.Screen.Node)) : _root_.LexLeanPreservation.FunRel __prog 18 [(__enc_2 _ynode)] (_root_.LexLeanPreservation.Rel (__fits_18 _ynode) ((_root_.LexLeanPreservation.encList __enc_2) (Reasoning.Screening.Screen.Propose.successors _ynode))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_19 ((_ynode).state))) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.nat) (es := (_root_.LexLeanPreservation.encList __enc_2)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) ((fun (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yb : Nat) => (Reasoning.Screening.Screen.Propose.collect (_ynode) (_yacc) (_yb)))) (fun (__p0 : (List (Reasoning.Screening.Screen.Node))) (__p1 : Nat) => __fits_21 (_ynode) __p0 __p1) 21 [(__enc_2 _ynode)] (fun (__p0 : (List (Reasoning.Screening.Screen.Node))) (__p1 : Nat) => __rel_21 (_ynode) __p0 __p1) (p := __prog) (fi := 20) (ta := .nat) (ts := (.list (.adt 2))) rfl (([] : List (Reasoning.Screening.Screen.Node))) ((Reasoning.Screening.Propose.candidates ((_ynode).state))))) + +def __fits_13 (_ynode : (Reasoning.Screening.Screen.Node)) : Bool := + ((Bool.true && Bool.true) && (__fits_18 (_ynode))) + +attribute [local irreducible] Reasoning.Screening.Screen.Propose.successors in +theorem __rel_13 (_ynode : (Reasoning.Screening.Screen.Node)) : _root_.LexLeanPreservation.FunRel __prog 13 [(__enc_2 _ynode)] (_root_.LexLeanPreservation.Rel (__fits_13 _ynode) ((_root_.LexLeanPreservation.encList __enc_2) (Reasoning.Screening.Screen.successors _ynode))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_18 (_ynode))) + +def __fits_14 (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yn : (Reasoning.Screening.Screen.Node)) : Bool := + (((((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat)) then ((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) else Bool.true)) + +theorem __rel_14 (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yn : (Reasoning.Screening.Screen.Node)) : _root_.LexLeanPreservation.FunRel __prog 14 [((_root_.LexLeanPreservation.encList __enc_2) _yacc), (__enc_2 _yn)] (_root_.LexLeanPreservation.Rel (__fits_14 _yacc _yn) ((_root_.LexLeanPreservation.encList __enc_2) ((if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))) else _yacc)))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) else Bool.true)) (fun (__b : Bool) => (_root_.LexLeanPreservation.encList __enc_2) (if __b then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))) else _yacc)) (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc __enc_2) _yacc)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc __enc_2) _yacc (_yn :: ([] : List (Reasoning.Screening.Screen.Node)))))) (fun _ => (_root_.LexLeanPreservation.conv_var rfl))) + +def __fits_15 (_ys : (Prod Nat Nat)) : Bool := + ((((Bool.true && Bool.true) && (__fits_19 (_ys))) && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length ((Reasoning.Screening.Propose.candidates (_ys))) : Nat) 18446744073709551616)) + +attribute [local irreducible] Reasoning.Screening.Propose.candidates in +theorem __rel_15 (_ys : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 15 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) _ys)] (_root_.LexLeanPreservation.Rel (__fits_15 _ys) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Screening.Screen.attempts _ys))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_19 (_ys))) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Screening.Propose.candidates (_ys)))) + +def __fits_8 (w : Nat) (_yr : (Reasoning.Screening.Screen.Search)) : Bool := + (Bool.true && (match (_yr).found with | Option.some _yhit => (Bool.true && Bool.true) | Option.none => (Bool.true && (match (_yr).frontier with | List.nil => (Bool.true && Bool.true) | List.cons _ynode _yrest => (((Bool.true && (Bool.true && Bool.true)) && (__fits_12 (w) ((_ynode).state))) && (match (Reasoning.Screening.Screen.accept (w) ((_ynode).state)) with | Option.some _yv => ((((Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) && (Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).iterations + (1 : Nat)) 18446744073709551616)) && (Bool.true && (Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).verifications + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true)))))) && Bool.true) && Bool.true)))) && Bool.true) && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_13 (_ynode))) && (let _ysuccessors : (List (Reasoning.Screening.Screen.Node)) := (Reasoning.Screening.Screen.successors (_ynode)); (Bool.true && (let _yfresh : (List (Reasoning.Screening.Screen.Node)) := _ysuccessors; (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (let _yordered : (List (Reasoning.Screening.Screen.Node)) := (_root_.LexLeanRuntime.append (_yfresh) (_yrest) : (List (Reasoning.Screening.Screen.Node))); (((Bool.true && ((Bool.true && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (List (Reasoning.Screening.Screen.Node))) (__p1 : (Reasoning.Screening.Screen.Node)) => __fits_14 __p0 __p1) ((fun (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yn : (Reasoning.Screening.Screen.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))) else _yacc))) (([] : List (Reasoning.Screening.Screen.Node))) (_yordered))) && (let _ynext : (List (Reasoning.Screening.Screen.Node)) := (_root_.LexLeanCollections.listFold ((fun (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yn : (Reasoning.Screening.Screen.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))) else _yacc))) (([] : List (Reasoning.Screening.Screen.Node))) (_yordered) : (List (Reasoning.Screening.Screen.Node))); ((((Bool.true && ((Bool.true && Bool.true) && ((Bool.true && (if (_yr).truncated then (Bool.true && Bool.true) else ((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_yordered) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true))) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).iterations + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (((Bool.true && Bool.true) && (__fits_15 ((_ynode).state))) && Bool.true)) && (Nat.blt (((_yr).ledger).attempts + (Reasoning.Screening.Screen.attempts ((_ynode).state))) 18446744073709551616)) && (((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ysuccessors) : Nat) 18446744073709551616)) && Bool.true)) && (Nat.blt (((_yr).ledger).firings + (_root_.LexLeanRuntime.length (_ysuccessors) : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).expansions + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).verifications + (1 : Nat)) 18446744073709551616)) && ((((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ynext) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true) && (if (Nat.blt ((_yr).ledger).frontier (_root_.LexLeanRuntime.length (_ynext) : Nat)) then ((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ynext) : Nat) 18446744073709551616)) else Bool.true)) && Bool.true)))))) && Bool.true) && Bool.true)))) && Bool.true) && Bool.true) && Bool.true))))))))))))))) + +attribute [local irreducible] Reasoning.Screening.Screen.accept Reasoning.Screening.Screen.attempts Reasoning.Screening.Screen.successors in +theorem __rel_8 (w : Nat) (_yr : (Reasoning.Screening.Screen.Search)) : _root_.LexLeanPreservation.FunRel __prog 8 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w), (__enc_1 _yr)] (_root_.LexLeanPreservation.Rel (__fits_8 w _yr) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Screening.Screen.searchStep w _yr))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat __enc_2)) (fun (__a : (Option (Prod Nat (Reasoning.Screening.Screen.Node)))) => (match __a with | Option.some _yhit => (Bool.true && Bool.true) | Option.none => (Bool.true && (match (_yr).frontier with | List.nil => (Bool.true && Bool.true) | List.cons _ynode _yrest => (((Bool.true && (Bool.true && Bool.true)) && (__fits_12 (w) ((_ynode).state))) && (match (Reasoning.Screening.Screen.accept (w) ((_ynode).state)) with | Option.some _yv => ((((Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) && (Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).iterations + (1 : Nat)) 18446744073709551616)) && (Bool.true && (Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).verifications + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true)))))) && Bool.true) && Bool.true)))) && Bool.true) && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_13 (_ynode))) && (let _ysuccessors : (List (Reasoning.Screening.Screen.Node)) := (Reasoning.Screening.Screen.successors (_ynode)); (Bool.true && (let _yfresh : (List (Reasoning.Screening.Screen.Node)) := _ysuccessors; (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (let _yordered : (List (Reasoning.Screening.Screen.Node)) := (_root_.LexLeanRuntime.append (_yfresh) (_yrest) : (List (Reasoning.Screening.Screen.Node))); (((Bool.true && ((Bool.true && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (List (Reasoning.Screening.Screen.Node))) (__p1 : (Reasoning.Screening.Screen.Node)) => __fits_14 __p0 __p1) ((fun (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yn : (Reasoning.Screening.Screen.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))) else _yacc))) (([] : List (Reasoning.Screening.Screen.Node))) (_yordered))) && (let _ynext : (List (Reasoning.Screening.Screen.Node)) := (_root_.LexLeanCollections.listFold ((fun (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yn : (Reasoning.Screening.Screen.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))) else _yacc))) (([] : List (Reasoning.Screening.Screen.Node))) (_yordered) : (List (Reasoning.Screening.Screen.Node))); ((((Bool.true && ((Bool.true && Bool.true) && ((Bool.true && (if (_yr).truncated then (Bool.true && Bool.true) else ((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_yordered) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true))) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).iterations + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (((Bool.true && Bool.true) && (__fits_15 ((_ynode).state))) && Bool.true)) && (Nat.blt (((_yr).ledger).attempts + (Reasoning.Screening.Screen.attempts ((_ynode).state))) 18446744073709551616)) && (((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ysuccessors) : Nat) 18446744073709551616)) && Bool.true)) && (Nat.blt (((_yr).ledger).firings + (_root_.LexLeanRuntime.length (_ysuccessors) : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).expansions + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).verifications + (1 : Nat)) 18446744073709551616)) && ((((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ynext) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true) && (if (Nat.blt ((_yr).ledger).frontier (_root_.LexLeanRuntime.length (_ynext) : Nat)) then ((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ynext) : Nat) 18446744073709551616)) else Bool.true)) && Bool.true)))))) && Bool.true) && Bool.true)))) && Bool.true) && Bool.true) && Bool.true))))))))))))))) (fun (__a : (Option (Prod Nat (Reasoning.Screening.Screen.Node)))) => (_root_.LexLeanPreservation.encOption __enc_1) (match __a with | Option.some _yhit => (Option.none : (Option (Reasoning.Screening.Screen.Search))) | Option.none => (match (_yr).frontier with | List.nil => (Option.none : (Option (Reasoning.Screening.Screen.Search))) | List.cons _ynode _yrest => (match (Reasoning.Screening.Screen.accept (w) ((_ynode).state)) with | Option.some _yv => (Option.some (({ frontier := _yrest, found := (Option.some ((_yv, _ynode)) : (Option (Prod Nat (Reasoning.Screening.Screen.Node)))), truncated := (_yr).truncated, ledger := ({ iterations := (((_yr).ledger).iterations + (1 : Nat)), attempts := ((_yr).ledger).attempts, firings := ((_yr).ledger).firings, expansions := ((_yr).ledger).expansions, verifications := (((_yr).ledger).verifications + (1 : Nat)), frontier := ((_yr).ledger).frontier } : (Reasoning.Screening.Screen.Ledger)) } : (Reasoning.Screening.Screen.Search))) : (Option (Reasoning.Screening.Screen.Search))) | Option.none => (let _ysuccessors : (List (Reasoning.Screening.Screen.Node)) := (Reasoning.Screening.Screen.successors (_ynode)); (let _yfresh : (List (Reasoning.Screening.Screen.Node)) := _ysuccessors; (let _yordered : (List (Reasoning.Screening.Screen.Node)) := (_root_.LexLeanRuntime.append (_yfresh) (_yrest) : (List (Reasoning.Screening.Screen.Node))); (let _ynext : (List (Reasoning.Screening.Screen.Node)) := (_root_.LexLeanCollections.listFold ((fun (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yn : (Reasoning.Screening.Screen.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))) else _yacc))) (([] : List (Reasoning.Screening.Screen.Node))) (_yordered) : (List (Reasoning.Screening.Screen.Node))); (Option.some (({ frontier := _ynext, found := (Option.none : (Option (Prod Nat (Reasoning.Screening.Screen.Node)))), truncated := ((_yr).truncated || (Nat.blt (3 : Nat) (_root_.LexLeanRuntime.length (_yordered) : Nat))), ledger := ({ iterations := (((_yr).ledger).iterations + (1 : Nat)), attempts := (((_yr).ledger).attempts + (Reasoning.Screening.Screen.attempts ((_ynode).state))), firings := (((_yr).ledger).firings + (_root_.LexLeanRuntime.length (_ysuccessors) : Nat)), expansions := (((_yr).ledger).expansions + (1 : Nat)), verifications := (((_yr).ledger).verifications + (1 : Nat)), frontier := (if (Nat.blt ((_yr).ledger).frontier (_root_.LexLeanRuntime.length (_ynext) : Nat)) then (_root_.LexLeanRuntime.length (_ynext) : Nat) else ((_yr).ledger).frontier) } : (Reasoning.Screening.Screen.Ledger)) } : (Reasoning.Screening.Screen.Search))) : (Option (Reasoning.Screening.Screen.Search))))))))))) (_yr).found (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (fun (__a : (Option (Prod Nat (Reasoning.Screening.Screen.Node)))) _ => match __a with | Option.some _yhit => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encList __enc_2) (fun (__a : (List (Reasoning.Screening.Screen.Node))) => (match __a with | List.nil => (Bool.true && Bool.true) | List.cons _ynode _yrest => (((Bool.true && (Bool.true && Bool.true)) && (__fits_12 (w) ((_ynode).state))) && (match (Reasoning.Screening.Screen.accept (w) ((_ynode).state)) with | Option.some _yv => ((((Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) && (Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).iterations + (1 : Nat)) 18446744073709551616)) && (Bool.true && (Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).verifications + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true)))))) && Bool.true) && Bool.true)))) && Bool.true) && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_13 (_ynode))) && (let _ysuccessors : (List (Reasoning.Screening.Screen.Node)) := (Reasoning.Screening.Screen.successors (_ynode)); (Bool.true && (let _yfresh : (List (Reasoning.Screening.Screen.Node)) := _ysuccessors; (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (let _yordered : (List (Reasoning.Screening.Screen.Node)) := (_root_.LexLeanRuntime.append (_yfresh) (_yrest) : (List (Reasoning.Screening.Screen.Node))); (((Bool.true && ((Bool.true && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (List (Reasoning.Screening.Screen.Node))) (__p1 : (Reasoning.Screening.Screen.Node)) => __fits_14 __p0 __p1) ((fun (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yn : (Reasoning.Screening.Screen.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))) else _yacc))) (([] : List (Reasoning.Screening.Screen.Node))) (_yordered))) && (let _ynext : (List (Reasoning.Screening.Screen.Node)) := (_root_.LexLeanCollections.listFold ((fun (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yn : (Reasoning.Screening.Screen.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))) else _yacc))) (([] : List (Reasoning.Screening.Screen.Node))) (_yordered) : (List (Reasoning.Screening.Screen.Node))); ((((Bool.true && ((Bool.true && Bool.true) && ((Bool.true && (if (_yr).truncated then (Bool.true && Bool.true) else ((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_yordered) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true))) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).iterations + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (((Bool.true && Bool.true) && (__fits_15 ((_ynode).state))) && Bool.true)) && (Nat.blt (((_yr).ledger).attempts + (Reasoning.Screening.Screen.attempts ((_ynode).state))) 18446744073709551616)) && (((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ysuccessors) : Nat) 18446744073709551616)) && Bool.true)) && (Nat.blt (((_yr).ledger).firings + (_root_.LexLeanRuntime.length (_ysuccessors) : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).expansions + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).verifications + (1 : Nat)) 18446744073709551616)) && ((((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ynext) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true) && (if (Nat.blt ((_yr).ledger).frontier (_root_.LexLeanRuntime.length (_ynext) : Nat)) then ((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ynext) : Nat) 18446744073709551616)) else Bool.true)) && Bool.true)))))) && Bool.true) && Bool.true)))) && Bool.true) && Bool.true) && Bool.true))))))))))))) (fun (__a : (List (Reasoning.Screening.Screen.Node))) => (_root_.LexLeanPreservation.encOption __enc_1) (match __a with | List.nil => (Option.none : (Option (Reasoning.Screening.Screen.Search))) | List.cons _ynode _yrest => (match (Reasoning.Screening.Screen.accept (w) ((_ynode).state)) with | Option.some _yv => (Option.some (({ frontier := _yrest, found := (Option.some ((_yv, _ynode)) : (Option (Prod Nat (Reasoning.Screening.Screen.Node)))), truncated := (_yr).truncated, ledger := ({ iterations := (((_yr).ledger).iterations + (1 : Nat)), attempts := ((_yr).ledger).attempts, firings := ((_yr).ledger).firings, expansions := ((_yr).ledger).expansions, verifications := (((_yr).ledger).verifications + (1 : Nat)), frontier := ((_yr).ledger).frontier } : (Reasoning.Screening.Screen.Ledger)) } : (Reasoning.Screening.Screen.Search))) : (Option (Reasoning.Screening.Screen.Search))) | Option.none => (let _ysuccessors : (List (Reasoning.Screening.Screen.Node)) := (Reasoning.Screening.Screen.successors (_ynode)); (let _yfresh : (List (Reasoning.Screening.Screen.Node)) := _ysuccessors; (let _yordered : (List (Reasoning.Screening.Screen.Node)) := (_root_.LexLeanRuntime.append (_yfresh) (_yrest) : (List (Reasoning.Screening.Screen.Node))); (let _ynext : (List (Reasoning.Screening.Screen.Node)) := (_root_.LexLeanCollections.listFold ((fun (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yn : (Reasoning.Screening.Screen.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))) else _yacc))) (([] : List (Reasoning.Screening.Screen.Node))) (_yordered) : (List (Reasoning.Screening.Screen.Node))); (Option.some (({ frontier := _ynext, found := (Option.none : (Option (Prod Nat (Reasoning.Screening.Screen.Node)))), truncated := ((_yr).truncated || (Nat.blt (3 : Nat) (_root_.LexLeanRuntime.length (_yordered) : Nat))), ledger := ({ iterations := (((_yr).ledger).iterations + (1 : Nat)), attempts := (((_yr).ledger).attempts + (Reasoning.Screening.Screen.attempts ((_ynode).state))), firings := (((_yr).ledger).firings + (_root_.LexLeanRuntime.length (_ysuccessors) : Nat)), expansions := (((_yr).ledger).expansions + (1 : Nat)), verifications := (((_yr).ledger).verifications + (1 : Nat)), frontier := (if (Nat.blt ((_yr).ledger).frontier (_root_.LexLeanRuntime.length (_ynext) : Nat)) then (_root_.LexLeanRuntime.length (_ynext) : Nat) else ((_yr).ledger).frontier) } : (Reasoning.Screening.Screen.Ledger)) } : (Reasoning.Screening.Screen.Search))) : (Option (Reasoning.Screening.Screen.Search)))))))))) (_yr).frontier (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (fun (__a : (List (Reasoning.Screening.Screen.Node))) _ => match __a with | List.nil => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) | List.cons _ynode _yrest => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Option Nat)) => (match __a with | Option.some _yv => ((((Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) && (Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).iterations + (1 : Nat)) 18446744073709551616)) && (Bool.true && (Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).verifications + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true)))))) && Bool.true) && Bool.true)))) && Bool.true) && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_13 (_ynode))) && (let _ysuccessors : (List (Reasoning.Screening.Screen.Node)) := (Reasoning.Screening.Screen.successors (_ynode)); (Bool.true && (let _yfresh : (List (Reasoning.Screening.Screen.Node)) := _ysuccessors; (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (let _yordered : (List (Reasoning.Screening.Screen.Node)) := (_root_.LexLeanRuntime.append (_yfresh) (_yrest) : (List (Reasoning.Screening.Screen.Node))); (((Bool.true && ((Bool.true && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (List (Reasoning.Screening.Screen.Node))) (__p1 : (Reasoning.Screening.Screen.Node)) => __fits_14 __p0 __p1) ((fun (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yn : (Reasoning.Screening.Screen.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))) else _yacc))) (([] : List (Reasoning.Screening.Screen.Node))) (_yordered))) && (let _ynext : (List (Reasoning.Screening.Screen.Node)) := (_root_.LexLeanCollections.listFold ((fun (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yn : (Reasoning.Screening.Screen.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))) else _yacc))) (([] : List (Reasoning.Screening.Screen.Node))) (_yordered) : (List (Reasoning.Screening.Screen.Node))); ((((Bool.true && ((Bool.true && Bool.true) && ((Bool.true && (if (_yr).truncated then (Bool.true && Bool.true) else ((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_yordered) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true))) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).iterations + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (((Bool.true && Bool.true) && (__fits_15 ((_ynode).state))) && Bool.true)) && (Nat.blt (((_yr).ledger).attempts + (Reasoning.Screening.Screen.attempts ((_ynode).state))) 18446744073709551616)) && (((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ysuccessors) : Nat) 18446744073709551616)) && Bool.true)) && (Nat.blt (((_yr).ledger).firings + (_root_.LexLeanRuntime.length (_ysuccessors) : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).expansions + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).verifications + (1 : Nat)) 18446744073709551616)) && ((((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ynext) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true) && (if (Nat.blt ((_yr).ledger).frontier (_root_.LexLeanRuntime.length (_ynext) : Nat)) then ((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ynext) : Nat) 18446744073709551616)) else Bool.true)) && Bool.true)))))) && Bool.true) && Bool.true)))) && Bool.true) && Bool.true) && Bool.true))))))))))) (fun (__a : (Option Nat)) => (_root_.LexLeanPreservation.encOption __enc_1) (match __a with | Option.some _yv => (Option.some (({ frontier := _yrest, found := (Option.some ((_yv, _ynode)) : (Option (Prod Nat (Reasoning.Screening.Screen.Node)))), truncated := (_yr).truncated, ledger := ({ iterations := (((_yr).ledger).iterations + (1 : Nat)), attempts := ((_yr).ledger).attempts, firings := ((_yr).ledger).firings, expansions := ((_yr).ledger).expansions, verifications := (((_yr).ledger).verifications + (1 : Nat)), frontier := ((_yr).ledger).frontier } : (Reasoning.Screening.Screen.Ledger)) } : (Reasoning.Screening.Screen.Search))) : (Option (Reasoning.Screening.Screen.Search))) | Option.none => (let _ysuccessors : (List (Reasoning.Screening.Screen.Node)) := (Reasoning.Screening.Screen.successors (_ynode)); (let _yfresh : (List (Reasoning.Screening.Screen.Node)) := _ysuccessors; (let _yordered : (List (Reasoning.Screening.Screen.Node)) := (_root_.LexLeanRuntime.append (_yfresh) (_yrest) : (List (Reasoning.Screening.Screen.Node))); (let _ynext : (List (Reasoning.Screening.Screen.Node)) := (_root_.LexLeanCollections.listFold ((fun (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yn : (Reasoning.Screening.Screen.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))) else _yacc))) (([] : List (Reasoning.Screening.Screen.Node))) (_yordered) : (List (Reasoning.Screening.Screen.Node))); (Option.some (({ frontier := _ynext, found := (Option.none : (Option (Prod Nat (Reasoning.Screening.Screen.Node)))), truncated := ((_yr).truncated || (Nat.blt (3 : Nat) (_root_.LexLeanRuntime.length (_yordered) : Nat))), ledger := ({ iterations := (((_yr).ledger).iterations + (1 : Nat)), attempts := (((_yr).ledger).attempts + (Reasoning.Screening.Screen.attempts ((_ynode).state))), firings := (((_yr).ledger).firings + (_root_.LexLeanRuntime.length (_ysuccessors) : Nat)), expansions := (((_yr).ledger).expansions + (1 : Nat)), verifications := (((_yr).ledger).verifications + (1 : Nat)), frontier := (if (Nat.blt ((_yr).ledger).frontier (_root_.LexLeanRuntime.length (_ynext) : Nat)) then (_root_.LexLeanRuntime.length (_ynext) : Nat) else ((_yr).ledger).frontier) } : (Reasoning.Screening.Screen.Ledger)) } : (Reasoning.Screening.Screen.Search))) : (Option (Reasoning.Screening.Screen.Search))))))))) (Reasoning.Screening.Screen.accept (w) ((_ynode).state)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_12 (w) ((_ynode).state))) (fun (__a : (Option Nat)) _ => match __a with | Option.some _yv => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((_yr).ledger).iterations (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((_yr).ledger).verifications (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) _root_.LexLeanPreservation.convL_nil)))))) _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil)))) _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (let _ysuccessors : (List (Reasoning.Screening.Screen.Node)) := (Reasoning.Screening.Screen.successors (_ynode)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_13 (_ynode))) (let _yfresh : (List (Reasoning.Screening.Screen.Node)) := _ysuccessors; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_var rfl) (let _yordered : (List (Reasoning.Screening.Screen.Node)) := (_root_.LexLeanRuntime.append (_yfresh) (_yrest) : (List (Reasoning.Screening.Screen.Node))); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc __enc_2) _yfresh _yrest)) (let _ynext : (List (Reasoning.Screening.Screen.Node)) := (_root_.LexLeanCollections.listFold ((fun (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yn : (Reasoning.Screening.Screen.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))) else _yacc))) (([] : List (Reasoning.Screening.Screen.Node))) (_yordered) : (List (Reasoning.Screening.Screen.Node))); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := __enc_2) (es := (_root_.LexLeanPreservation.encList __enc_2)) (_root_.LexLeanPreservation.listEnc __enc_2) (fun _ => rfl) ((fun (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yn : (Reasoning.Screening.Screen.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))) else _yacc))) (fun (__p0 : (List (Reasoning.Screening.Screen.Node))) (__p1 : (Reasoning.Screening.Screen.Node)) => __fits_14 __p0 __p1) 14 [] (fun (__p0 : (List (Reasoning.Screening.Screen.Node))) (__p1 : (Reasoning.Screening.Screen.Node)) => __rel_14 __p0 __p1) (p := __prog) (fi := 9) (ta := (.adt 2)) (ts := (.list (.adt 2))) rfl (([] : List (Reasoning.Screening.Screen.Node))) (_yordered))) (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (Bool.true && Bool.true) else ((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_yordered) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b || (Nat.blt (3 : Nat) (_root_.LexLeanRuntime.length (_yordered) : Nat)))) (_yr).truncated (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc __enc_2) _yordered)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (3 : Nat) (_root_.LexLeanRuntime.length (_yordered) : Nat))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((_yr).ledger).iterations (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_15 ((_ynode).state))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((_yr).ledger).attempts (Reasoning.Screening.Screen.attempts ((_ynode).state)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc __enc_2) _ysuccessors)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((_yr).ledger).firings (_root_.LexLeanRuntime.length (_ysuccessors) : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((_yr).ledger).expansions (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((_yr).ledger).verifications (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ynext) : Nat) 18446744073709551616)) else Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (_root_.LexLeanRuntime.length (_ynext) : Nat) else ((_yr).ledger).frontier)) (Nat.blt ((_yr).ledger).frontier (_root_.LexLeanRuntime.length (_ynext) : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc __enc_2) _ynext)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt ((_yr).ledger).frontier (_root_.LexLeanRuntime.length (_ynext) : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc __enc_2) _ynext))) (fun _ => (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl))) _root_.LexLeanPreservation.convL_nil)))))) _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil)))) _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some))))))))))))))))) + +def __fits_6 (w : Nat) (_yr : (Reasoning.Screening.Screen.Search)) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && (__fits_8 (w) (_yr))) + +attribute [local irreducible] Reasoning.Screening.Screen.searchStep in +theorem __rel_6 (w : Nat) (_yr : (Reasoning.Screening.Screen.Search)) : _root_.LexLeanPreservation.FunRel __prog 6 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w), (__enc_1 _yr)] (_root_.LexLeanPreservation.Rel (__fits_6 w _yr) ((_root_.LexLeanPreservation.encOption __enc_1) ((Reasoning.Screening.Screen.searchStep (w) (_yr))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_8 (w) (_yr))) + +def __fits_10 (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yn : (Reasoning.Screening.Screen.Node)) : Bool := + (((((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat)) then ((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) else Bool.true)) + +theorem __rel_10 (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yn : (Reasoning.Screening.Screen.Node)) : _root_.LexLeanPreservation.FunRel __prog 10 [((_root_.LexLeanPreservation.encList __enc_2) _yacc), (__enc_2 _yn)] (_root_.LexLeanPreservation.Rel (__fits_10 _yacc _yn) ((_root_.LexLeanPreservation.encList __enc_2) ((if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))) else _yacc)))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) else Bool.true)) (fun (__b : Bool) => (_root_.LexLeanPreservation.encList __enc_2) (if __b then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))) else _yacc)) (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc __enc_2) _yacc)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc __enc_2) _yacc (_yn :: ([] : List (Reasoning.Screening.Screen.Node)))))) (fun _ => (_root_.LexLeanPreservation.conv_var rfl))) + +def __fits_11 (w : Nat) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_11 (w : Nat) : _root_.LexLeanPreservation.FunRel __prog 11 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w)] (_root_.LexLeanPreservation.Rel (__fits_11 w) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Screening.Screen.observe w))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) + +def __fits_7 (w : Nat) : Bool := + (((Bool.true && ((Bool.true && Bool.true) && (((((((Bool.true && Bool.true) && (__fits_11 (w))) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (List (Reasoning.Screening.Screen.Node))) (__p1 : (Reasoning.Screening.Screen.Node)) => __fits_10 __p0 __p1) ((fun (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yn : (Reasoning.Screening.Screen.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))) else _yacc))) (([] : List (Reasoning.Screening.Screen.Node))) ((({ state := (Reasoning.Screening.Screen.observe (w)), trace := ([] : List (Reasoning.Screening.Screen.Step)) } : (Reasoning.Screening.Screen.Node)) :: ([] : List (Reasoning.Screening.Screen.Node)))))) && (let _yfirst : (List (Reasoning.Screening.Screen.Node)) := (_root_.LexLeanCollections.listFold ((fun (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yn : (Reasoning.Screening.Screen.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))) else _yacc))) (([] : List (Reasoning.Screening.Screen.Node))) ((({ state := (Reasoning.Screening.Screen.observe (w)), trace := ([] : List (Reasoning.Screening.Screen.Step)) } : (Reasoning.Screening.Screen.Node)) :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))); ((Bool.true && ((Bool.true && Bool.true) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_yfirst) : Nat) 18446744073709551616)) && Bool.true)))))) && Bool.true) && Bool.true)))) && Bool.true))) + +attribute [local irreducible] Reasoning.Screening.Screen.observe in +theorem __rel_7 (w : Nat) : _root_.LexLeanPreservation.FunRel __prog 7 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w)] (_root_.LexLeanPreservation.Rel (__fits_7 w) (__enc_1 (Reasoning.Screening.Screen.start w))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (let _yfirst : (List (Reasoning.Screening.Screen.Node)) := (_root_.LexLeanCollections.listFold ((fun (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yn : (Reasoning.Screening.Screen.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))) else _yacc))) (([] : List (Reasoning.Screening.Screen.Node))) ((({ state := (Reasoning.Screening.Screen.observe (w)), trace := ([] : List (Reasoning.Screening.Screen.Step)) } : (Reasoning.Screening.Screen.Node)) :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_11 (w))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_adt) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := __enc_2) (es := (_root_.LexLeanPreservation.encList __enc_2)) (_root_.LexLeanPreservation.listEnc __enc_2) (fun _ => rfl) ((fun (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yn : (Reasoning.Screening.Screen.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))) else _yacc))) (fun (__p0 : (List (Reasoning.Screening.Screen.Node))) (__p1 : (Reasoning.Screening.Screen.Node)) => __fits_10 __p0 __p1) 10 [] (fun (__p0 : (List (Reasoning.Screening.Screen.Node))) (__p1 : (Reasoning.Screening.Screen.Node)) => __rel_10 __p0 __p1) (p := __prog) (fi := 9) (ta := (.adt 2)) (ts := (.list (.adt 2))) rfl (([] : List (Reasoning.Screening.Screen.Node))) ((({ state := (Reasoning.Screening.Screen.observe (w)), trace := ([] : List (Reasoning.Screening.Screen.Step)) } : (Reasoning.Screening.Screen.Node)) :: ([] : List (Reasoning.Screening.Screen.Node)))))) (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (3 : Nat) (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc __enc_2) _yfirst)) _root_.LexLeanPreservation.convL_nil)))))) _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil)))) _root_.LexLeanPreservation.construct_adt)) + +def __fits_3 (w : Nat) : Bool := + (((Bool.true && Bool.true) && (Bool.true && (((Bool.true && Bool.true) && (__fits_7 (w))) && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : (Reasoning.Screening.Screen.Search)) => __fits_6 (w) __p0) ((fun (_yr : (Reasoning.Screening.Screen.Search)) => (Reasoning.Screening.Screen.searchStep (w) (_yr)))) ((8 : Nat)) ((Reasoning.Screening.Screen.start (w))))) + +attribute [local irreducible] Reasoning.Screening.Screen.searchStep Reasoning.Screening.Screen.start in +theorem __rel_3 (w : Nat) : _root_.LexLeanPreservation.FunRel __prog 3 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w)] (_root_.LexLeanPreservation.Rel (__fits_3 w) ((_root_.LexLeanPreservation.encPair __enc_1 _root_.LexLeanTarget.TargetSyntax.Value.bool) (Reasoning.Screening.Screen.run w))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_7 (w))) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterateUntil (es := __enc_1) (_root_.LexLeanPreservation.optEnc __enc_1) (fun _ => rfl) (_root_.LexLeanPreservation.encPair __enc_1 _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) ((fun (_yr : (Reasoning.Screening.Screen.Search)) => (Reasoning.Screening.Screen.searchStep (w) (_yr)))) (fun (__p0 : (Reasoning.Screening.Screen.Search)) => __fits_6 (w) __p0) 6 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w)] (fun (__p0 : (Reasoning.Screening.Screen.Search)) => __rel_6 (w) __p0) (_root_.LexLeanCollections.iterateUntil ((fun (_yr : (Reasoning.Screening.Screen.Search)) => (Reasoning.Screening.Screen.searchStep (w) (_yr))))) (fun _ => rfl) (fun _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (p := __prog) (fi := 5) (ts := (.adt 1)) rfl ((8 : Nat)) ((Reasoning.Screening.Screen.start (w))))) + +def __fits_4 (_ysaturated : Bool) (_ytruncated : Bool) : Bool := + ((Bool.true && (if _ysaturated then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (if (_ysaturated && (!_ytruncated)) then (((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) else (((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true))) + +theorem __rel_4 (_ysaturated : Bool) (_ytruncated : Bool) : _root_.LexLeanPreservation.FunRel __prog 4 [(_root_.LexLeanTarget.TargetSyntax.Value.bool _ysaturated), (_root_.LexLeanTarget.TargetSyntax.Value.bool _ytruncated)] (_root_.LexLeanPreservation.Rel (__fits_4 _ysaturated _ytruncated) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (Reasoning.Screening.Screen.failure _ysaturated _ytruncated))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) else (((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (if __b then ((Bool.false, Bool.true) : (Prod Bool Bool)) else ((Bool.false, Bool.false) : (Prod Bool Bool)))) (_ysaturated && (!_ytruncated)) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (!_ytruncated))) _ysaturated (_root_.LexLeanPreservation.conv_var rfl) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_boolNot _ytruncated))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))) + +def __fits_2 (w : Nat) : Bool := + (((Bool.true && Bool.true) && (__fits_3 (w))) && (let _yfinal : (Prod (Reasoning.Screening.Screen.Search) Bool) := (Reasoning.Screening.Screen.run (w)); (Bool.true && (match ((_yfinal).1).found with | Option.some _yhit => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => ((((Bool.true && (Bool.true && Bool.true)) && (__fits_4 ((_yfinal).2) (((_yfinal).1).truncated))) && Bool.true) && Bool.true))))) + +attribute [local irreducible] Reasoning.Screening.Screen.failure Reasoning.Screening.Screen.run in +theorem __rel_2 (w : Nat) : _root_.LexLeanPreservation.FunRel __prog 2 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w)] (_root_.LexLeanPreservation.Rel (__fits_2 w) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList __enc_0))) (Reasoning.Screening.Screen w))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (let _yfinal : (Prod (Reasoning.Screening.Screen.Search) Bool) := (Reasoning.Screening.Screen.run (w)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_3 (w))) (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat __enc_2)) (fun (__a : (Option (Prod Nat (Reasoning.Screening.Screen.Node)))) => (match __a with | Option.some _yhit => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => ((((Bool.true && (Bool.true && Bool.true)) && (__fits_4 ((_yfinal).2) (((_yfinal).1).truncated))) && Bool.true) && Bool.true))) (fun (__a : (Option (Prod Nat (Reasoning.Screening.Screen.Node)))) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList __enc_0))) (match __a with | Option.some _yhit => (Except.ok (((_yhit).1, ((_yhit).2).trace)) : (Except (Prod Bool Bool) (Prod Nat (List (Reasoning.Screening.Screen.Step))))) | Option.none => (Except.error ((Reasoning.Screening.Screen.failure ((_yfinal).2) (((_yfinal).1).truncated))) : (Except (Prod Bool Bool) (Prod Nat (List (Reasoning.Screening.Screen.Step))))))) ((_yfinal).1).found (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) rfl) (fun (__a : (Option (Prod Nat (Reasoning.Screening.Screen.Node)))) _ => match __a with | Option.some _yhit => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_4 ((_yfinal).2) (((_yfinal).1).truncated))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)))))) + +def __fits_1 (w : Nat) : Bool := + (((Bool.true && Bool.true) && (__fits_2 (w))) && (match (Reasoning.Screening.Screen (w)) with | Except.ok _yp => ((Bool.true && Bool.true) && Bool.true) | Except.error _ye => ((Bool.true && Bool.true) && Bool.true))) + +attribute [local irreducible] Reasoning.Screening.Screen in +theorem __rel_1 (w : Nat) : _root_.LexLeanPreservation.FunRel __prog 1 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w)] (_root_.LexLeanPreservation.Rel (__fits_1 w) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Screening.Screen.verdict w))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList __enc_0))) (fun (__a : (Except (Prod Bool Bool) (Prod Nat (List (Reasoning.Screening.Screen.Step))))) => (match __a with | Except.ok _yp => ((Bool.true && Bool.true) && Bool.true) | Except.error _ye => ((Bool.true && Bool.true) && Bool.true))) (fun (__a : (Except (Prod Bool Bool) (Prod Nat (List (Reasoning.Screening.Screen.Step))))) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (match __a with | Except.ok _yp => (Except.ok ((_yp).1) : (Except (Prod Bool Bool) Nat)) | Except.error _ye => (Except.error (_ye) : (Except (Prod Bool Bool) Nat)))) (Reasoning.Screening.Screen (w)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_2 (w))) (fun (__a : (Except (Prod Bool Bool) (Prod Nat (List (Reasoning.Screening.Screen.Step))))) _ => match __a with | Except.ok _yp => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok)) | Except.error _ye => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error))))) + +def __fits_0 (w : Nat) : Bool := + (((Bool.true && Bool.true) && (__fits_1 (w))) && (match (Reasoning.Screening.Screen.verdict (w)) with | Except.ok dose => Bool.true | Except.error failure => Bool.true)) + +attribute [local irreducible] Reasoning.Screening.Screen.verdict in +theorem __rel_0 (w : Nat) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w)] (_root_.LexLeanPreservation.Rel (__fits_0 w) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.screenDose w))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Except (Prod Bool Bool) Nat)) => (match __a with | Except.ok dose => Bool.true | Except.error failure => Bool.true)) (fun (__a : (Except (Prod Bool Bool) Nat)) => _root_.LexLeanTarget.TargetSyntax.Value.nat (match __a with | Except.ok dose => dose | Except.error failure => (9 : Nat))) (Reasoning.Screening.Screen.verdict (w)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_1 (w))) (fun (__a : (Except (Prod Bool Bool) Nat)) _ => match __a with | Except.ok dose => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | Except.error failure => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value)))) + +def denote (w : Nat) : _root_.LexLeanPreservation.Obs := + _root_.cond (__fits_0 w) (_root_.LexLeanPreservation.Obs.value ((_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.screenDose w)))) _root_.LexLeanPreservation.Obs.overflow + +theorem root (w : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w)] (_root_.LexLeanPreservation.Rel (__fits_0 w) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.screenDose w))) := + _root_.LexLeanPreservation.run_of_funRel (__rel_0 w) + +end LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6 diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R6/Compose/RustStd.lex.tex b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R6/Compose/RustStd.lex.tex new file mode 100644 index 000000000..5165ff664 --- /dev/null +++ b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R6/Compose/RustStd.lex.tex @@ -0,0 +1,1218 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6, + LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.Compose.RustStd.__wt_0 : @16 := @367 { + all: [LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.Compose.RustStd.__wt_0], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.Compose.RustStd.__wt_2 : @375 := @849 { + all: [LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.Compose.RustStd.__wt_2], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.Compose.RustStd.__wt_3 : @857 := @1316 { + all: [LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.Compose.RustStd.__wt_3], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.Compose.RustStd.__wt_1 : @1324 := @1844 { + all: [LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.Compose.RustStd.__wt_1], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.Compose.RustStd.root : @2457 := @2458 { + all: [LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.RustStd.program +@1 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.RustStd.krate +@2 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.RustStd.flags +@3 := Reasoning.Screening.Screen.Step +@4 := #0 +@5 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.__enc_0 +@6 := @5 @4 +@7 := LexLeanPreservation.Rust.WT +@8 := LexLeanTarget.TargetSyntax.Ty.adt +@9 := 0 +@10 := @8 @9 +@11 := @7 @0 +@12 := @11 @1 +@13 := @12 @2 +@14 := @13 @6 +@15 := @14 @10 +@16 := (__v : @3) -> @15 +@17 := fun (__v : @3) => @15 +@18 := LexLeanTarget.TargetSyntax.Value.nat +@19 := @18 @4 +@20 := LexLeanTarget.TargetSyntax.Ty.nat +@21 := LexLeanTarget.TargetSyntax.Program +@22 := LexLeanPreservation.Rust.RCrate +@23 := LexLeanPreservation.Rust.Flags +@24 := Nat +@25 := #3 +@26 := @7 @25 +@27 := #2 +@28 := @26 @27 +@29 := #1 +@30 := @28 @29 +@36 := {p : @21} -> {c : @22} -> {A : @23} -> (n : @24) -> @30 @19 @20 +@38 := LexLeanPreservation.Rust.wt_nat @0 +@40 := @11 @27 @29 +@45 := {c : @22} -> {A : @23} -> (n : @24) -> @40 @19 @20 +@46 := @38 @1 +@47 := @12 @29 +@51 := {A : @23} -> (n : @24) -> @47 @19 @20 +@52 := @46 @2 +@53 := @13 @19 +@54 := @53 @20 +@55 := (n : @24) -> @54 +@56 := @52 @4 +@57 := LexLeanTarget.TargetSyntax.Value +@58 := LexLeanTarget.TargetSyntax.Ty +@59 := List.nil.{0} +@60 := List.cons.{0} +@61 := @59 @57 +@62 := @60 @57 +@64 := @62 @19 @61 +@65 := @59 @58 +@66 := @60 @58 +@67 := @66 @20 +@68 := @67 @65 +@69 := LexLeanPreservation.Rust.WTL +@77 := {p : @21} -> {c : @22} -> {A : @23} -> @69 @27 @29 @4 @61 @65 +@79 := LexLeanPreservation.Rust.wtl_nil @0 +@80 := @69 @0 +@86 := {c : @22} -> {A : @23} -> @80 @29 @4 @61 @65 +@87 := @79 @1 +@88 := @80 @1 +@92 := {A : @23} -> @88 @4 @61 @65 +@93 := @87 @2 +@94 := @88 @2 +@95 := @94 @61 +@96 := @95 @65 +@97 := List.{0} +@98 := @97 @57 +@99 := @97 @58 +@100 := #6 +@101 := @7 @100 +@102 := #5 +@103 := @101 @102 +@104 := #4 +@105 := @103 @104 +@107 := @105 @25 @27 +@108 := #7 +@113 := @69 @108 @100 @102 @27 @29 +@114 := #8 +@117 := @69 @114 @108 @100 +@119 := @62 @102 @25 +@120 := @117 @119 +@122 := @66 @104 @27 +@132 := {p : @21} -> + {c : @22} -> + {A : @23} -> + {v : @57} -> {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @107) -> (hs : @113) -> @120 @122 +@134 := LexLeanPreservation.Rust.wtl_cons @0 +@136 := @11 @102 @104 +@138 := @136 @25 @27 +@142 := @80 @100 @102 @27 @29 +@154 := {c : @22} -> + {A : @23} -> + {v : @57} -> + {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @138) -> (hs : @142) -> @80 @108 @100 @119 @122 +@155 := @134 @1 +@156 := @12 @104 +@158 := @156 @25 @27 +@161 := @88 @102 @27 @29 +@171 := {A : @23} -> + {v : @57} -> + {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @158) -> (hs : @161) -> @88 @100 @119 @122 +@172 := @155 @2 +@174 := @13 @25 @27 +@176 := @94 @27 @29 +@184 := {v : @57} -> + {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @174) -> (hs : @176) -> @94 @119 @122 +@185 := @172 @19 +@186 := @18 @25 +@187 := @13 @186 +@188 := @187 @27 +@189 := @18 @102 +@190 := @62 @189 +@192 := @94 (@190 @25) +@198 := {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @188) -> (hs : @176) -> @192 @122 +@199 := @185 @20 +@200 := @18 @27 +@202 := @13 @200 @20 +@203 := @18 @104 +@204 := @62 @203 +@206 := @94 (@204 @25) +@207 := @67 @27 +@212 := {vs : @98} -> {ts : @99} -> (h : @202) -> (hs : @176) -> @206 @207 +@213 := @199 @61 +@214 := @18 @29 +@216 := @13 @214 @20 +@217 := @95 @29 +@219 := @62 @186 @61 +@220 := @94 @219 +@224 := {ts : @99} -> (h : @216) -> (hs : @217) -> @220 @207 +@225 := @213 @65 +@227 := @62 @200 @61 +@228 := @94 @227 +@231 := (h : @54) -> (hs : @96) -> @228 @68 +@232 := @225 @56 +@234 := @62 @214 @61 +@235 := @94 @234 +@236 := @235 @68 +@237 := (hs : @96) -> @236 +@238 := @232 @93 +@240 := @94 @64 @68 +@241 := Eq.{1} +@242 := Option.{0} +@243 := @242 @99 +@244 := @241 @243 +@245 := LexLeanPreservation.Rust.adtFields +@249 := @244 (@245 @100 @25 @27) +@250 := Option.some.{0} +@251 := @250 @99 +@252 := @251 @4 +@253 := @249 @252 +@256 := @7 @114 @108 @100 +@257 := LexLeanTarget.TargetSyntax.Value.adt +@259 := @257 @104 @25 +@260 := @256 @259 +@261 := @8 @102 +@271 := {p : @21} -> + {c : @22} -> + {A : @23} -> + {i : @24} -> {k : @24} -> {fs : @98} -> {tys : @99} -> (h : @253) -> (hf : @113) -> @260 @261 +@273 := LexLeanPreservation.Rust.wt_adt @0 +@274 := @245 @0 +@278 := @244 (@274 @25 @27) @252 +@290 := {c : @22} -> + {A : @23} -> + {i : @24} -> + {k : @24} -> {fs : @98} -> {tys : @99} -> (h : @278) -> (hf : @142) -> @11 @108 @100 @259 @261 +@291 := @273 @1 +@301 := {A : @23} -> + {i : @24} -> + {k : @24} -> {fs : @98} -> {tys : @99} -> (h : @278) -> (hf : @161) -> @12 @100 @259 @261 +@302 := @291 @2 +@303 := @13 @259 +@310 := {i : @24} -> + {k : @24} -> {fs : @98} -> {tys : @99} -> (h : @278) -> (hf : @176) -> @303 @261 +@311 := @302 @9 +@312 := @274 @9 +@321 := {k : @24} -> + {fs : @98} -> {tys : @99} -> (h : @244 (@312 @27) @252) -> (hf : @176) -> @303 @10 +@322 := @311 @9 +@323 := @312 @9 +@324 := @244 @323 +@325 := @324 @252 +@326 := @257 @9 +@328 := @13 (@326 @25) +@333 := {fs : @98} -> {tys : @99} -> (h : @325) -> (hf : @176) -> @328 @10 +@334 := @322 @64 +@341 := {tys : @99} -> (h : @325) -> (hf : @228 @29) -> @13 (@326 @219) @10 +@342 := @334 @68 +@349 := (h : @324 (@251 @68)) -> (hf : @236) -> @13 (@326 @227) @10 +@350 := Eq.refl.{1} +@351 := @350 @243 +@353 := @342 (@351 @323) +@357 := (hf : @240) -> @13 (@326 @234) @10 +@358 := @353 @238 +@361 := @13 (@326 @64) @10 +@362 := fun (__x0 : @24) => @358 +@367 := fun (__v : @3) => Reasoning.Screening.Screen.Step.casesOn.{0} @17 @4 @362 +@368 := Reasoning.Screening.Screen.Node +@369 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.__enc_2 +@370 := @369 @4 +@371 := 2 +@372 := @8 @371 +@373 := @13 @370 +@374 := @373 @372 +@375 := (__s : @368) -> @374 +@376 := Reasoning.Screening.Screen.Node.state +@377 := @376 @4 +@378 := Reasoning.Screening.Screen.Node.trace +@379 := @378 @4 +@380 := LexLeanPreservation.encPair +@381 := @380 @24 +@382 := @381 @24 +@383 := @382 @18 +@384 := @383 @18 +@385 := @384 @377 +@386 := LexLeanTarget.TargetSyntax.Ty.pair +@387 := @386 @20 +@388 := @387 @20 +@389 := fun (__x : @24) => @56 +@390 := Sort 1 +@391 := (a._@._internal._hyg.#0 : @29) -> @57 +@392 := #9 +@395 := @7 @392 @114 @108 +@396 := @104 @4 +@399 := (x : @102) -> @395 @396 @27 +@400 := #10 +@406 := (x : @102) -> @7 @400 @392 @114 @396 @27 +@407 := Prod.{0, 0} +@409 := @407 @108 @100 +@410 := #11 +@413 := @7 @410 @400 @392 +@418 := @380 @114 @108 @100 @102 @4 +@419 := @413 @418 +@421 := @386 @104 @25 +@434 := {p : @21} -> + {c : @22} -> + {A : @23} -> + {α : @390} -> + {β : @390} -> + {ea : @391} -> + {eb : @391} -> {s : @58} -> {t : @58} -> (ha : @399) -> (hb : @406) -> (x : @409) -> @419 @421 +@436 := LexLeanPreservation.Rust.wt_encPair @0 +@461 := {c : @22} -> + {A : @23} -> + {α : @390} -> + {β : @390} -> + {ea : @391} -> + {eb : @391} -> + {s : @58} -> + {t : @58} -> + (ha : (x : @102) -> @11 @114 @108 @396 @27) -> + (hb : (x : @102) -> @11 @392 @114 @396 @27) -> (x : @409) -> @11 @400 @392 @418 @421 +@462 := @436 @1 +@483 := {A : @23} -> + {α : @390} -> + {β : @390} -> + {ea : @391} -> + {eb : @391} -> + {s : @58} -> + {t : @58} -> + (ha : (x : @102) -> @12 @108 @396 @27) -> + (hb : (x : @102) -> @12 @114 @396 @27) -> (x : @409) -> @12 @392 @418 @421 +@484 := @462 @2 +@486 := @13 @396 @27 +@487 := (x : @102) -> @486 +@498 := {α : @390} -> + {β : @390} -> + {ea : @391} -> + {eb : @391} -> {s : @58} -> {t : @58} -> (ha : @487) -> (hb : @487) -> (x : @409) -> @13 @418 @421 +@499 := @484 @24 +@500 := (a._@._internal._hyg.#0 : @24) -> @57 +@501 := (x : @24) -> @486 +@502 := @407 @24 +@517 := {β : @390} -> + {ea : @500} -> + {eb : @391} -> + {s : @58} -> + {t : @58} -> (ha : @501) -> (hb : @487) -> (x : @502 @100) -> @13 (@381 @108 @100 @102 @4) @421 +@518 := @499 @24 +@519 := @502 @24 +@531 := {ea : @500} -> + {eb : @500} -> + {s : @58} -> {t : @58} -> (ha : @501) -> (hb : @501) -> (x : @519) -> @13 (@382 @100 @102 @4) @421 +@532 := @518 @18 +@534 := (x : @24) -> @53 @27 +@544 := {eb : @500} -> + {s : @58} -> {t : @58} -> (ha : @534) -> (hb : @501) -> (x : @519) -> @13 (@383 @102 @4) @421 +@545 := @532 @18 +@547 := @13 (@384 @4) +@553 := {s : @58} -> {t : @58} -> (ha : @534) -> (hb : @534) -> (x : @519) -> @547 @421 +@554 := @545 @20 +@555 := (x : @24) -> @54 +@556 := @387 @25 +@561 := {t : @58} -> (ha : @555) -> (hb : @534) -> (x : @519) -> @547 @556 +@562 := @554 @20 +@566 := (ha : @555) -> (hb : @555) -> (x : @519) -> @547 @388 +@569 := @562 @389 @389 @377 +@571 := @13 @385 @388 +@572 := LexLeanPreservation.encList +@573 := @572 @3 +@574 := @573 @5 +@575 := @574 @379 +@576 := LexLeanTarget.TargetSyntax.Ty.list +@577 := @576 @10 +@580 := fun (__x : @3) => + LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.Compose.RustStd.__wt_0 @4 +@581 := (a._@._internal._hyg.#0 : @4) -> @57 +@582 := @27 @4 +@585 := (x : @27) -> @105 @582 @29 +@586 := @97 @25 +@589 := @7 @108 @100 @102 +@592 := @572 @104 @25 @4 +@593 := @589 @592 +@594 := @576 @27 +@603 := {p : @21} -> + {c : @22} -> + {A : @23} -> {α : @390} -> {e : @581} -> {t : @58} -> (h : @585) -> (xs : @586) -> @593 @594 +@605 := LexLeanPreservation.Rust.wt_encList @0 +@608 := (x : @27) -> @136 @582 @29 +@610 := @11 @100 @102 +@619 := {c : @22} -> + {A : @23} -> {α : @390} -> {e : @581} -> {t : @58} -> (h : @608) -> (xs : @586) -> @610 @592 @594 +@620 := @605 @1 +@623 := (x : @27) -> @156 @582 @29 +@624 := @12 @102 +@632 := {A : @23} -> + {α : @390} -> {e : @581} -> {t : @58} -> (h : @623) -> (xs : @586) -> @624 @592 @594 +@633 := @620 @2 +@635 := @13 @582 @29 +@636 := (x : @27) -> @635 +@643 := {α : @390} -> {e : @581} -> {t : @58} -> (h : @636) -> (xs : @586) -> @13 @592 @594 +@644 := @633 @3 +@645 := (a._@._internal._hyg.#0 : @3) -> @57 +@646 := (x : @3) -> @635 +@647 := @97 @3 +@655 := {e : @645} -> {t : @58} -> (h : @646) -> (xs : @647) -> @13 (@573 @25 @4) @594 +@656 := @644 @5 +@658 := (x : @3) -> @14 @29 +@660 := @13 (@574 @4) +@664 := {t : @58} -> (h : @658) -> (xs : @647) -> @660 @594 +@665 := @656 @10 +@669 := (h : (x : @3) -> @15) -> (xs : @647) -> @660 @577 +@671 := @665 @580 @379 +@673 := @13 @575 @577 +@675 := @62 @575 @61 +@677 := @62 @385 @675 +@678 := @66 @577 +@679 := @678 @65 +@680 := @66 @388 +@681 := @680 @679 +@682 := @172 @575 +@684 := @574 (@378 @25) +@697 := {t : @58} -> + {vs : @98} -> + {ts : @99} -> (h : @13 @684 @27) -> (hs : @176) -> @94 (@62 (@574 (@378 @102)) @25) @122 +@698 := @682 @577 +@700 := @574 (@378 @27) +@702 := @13 @700 @577 +@707 := @94 (@62 (@574 (@378 @104)) @25) +@708 := @678 @27 +@713 := {vs : @98} -> {ts : @99} -> (h : @702) -> (hs : @176) -> @707 @708 +@714 := @698 @61 +@716 := @574 (@378 @29) +@718 := @13 @716 @577 +@720 := @62 @684 @61 +@725 := {ts : @99} -> (h : @718) -> (hs : @217) -> @94 @720 @708 +@726 := @714 @65 +@728 := @62 @700 @61 +@729 := @94 @728 +@732 := (h : @673) -> (hs : @96) -> @729 @679 +@733 := @726 @671 +@735 := @62 @716 @61 +@737 := @94 @735 @679 +@738 := (hs : @96) -> @737 +@739 := @733 @93 +@741 := @94 @675 @679 +@742 := @172 @385 +@744 := @384 (@376 @25) +@757 := {t : @58} -> + {vs : @98} -> + {ts : @99} -> (h : @13 @744 @27) -> (hs : @176) -> @94 (@62 (@384 (@376 @102)) @25) @122 +@758 := @742 @388 +@760 := @384 (@376 @27) +@762 := @13 @760 @388 +@767 := @94 (@62 (@384 (@376 @104)) @25) +@768 := @680 @27 +@773 := {vs : @98} -> {ts : @99} -> (h : @762) -> (hs : @176) -> @767 @768 +@774 := @758 @675 +@776 := @384 (@376 @29) +@778 := @13 @776 @388 +@779 := @729 @29 +@781 := @62 @744 @720 +@786 := {ts : @99} -> (h : @778) -> (hs : @779) -> @94 @781 @768 +@787 := @774 @679 +@789 := @62 @760 @728 +@790 := @94 @789 +@793 := (h : @571) -> (hs : @737) -> @790 @681 +@794 := @787 @569 +@796 := @62 @776 @735 +@798 := @94 @796 @681 +@799 := (hs : @741) -> @798 +@800 := @794 @739 +@802 := @94 @677 @681 +@803 := @302 @371 +@804 := @274 @371 +@813 := {k : @24} -> + {fs : @98} -> {tys : @99} -> (h : @244 (@804 @27) @252) -> (hf : @176) -> @303 @372 +@814 := @803 @9 +@815 := @804 @9 +@816 := @244 @815 +@817 := @816 @252 +@822 := {fs : @98} -> {tys : @99} -> (h : @817) -> (hf : @176) -> @328 @372 +@823 := @814 @677 +@830 := {tys : @99} -> (h : @817) -> (hf : @790 @29) -> @13 (@326 @781) @372 +@831 := @823 @681 +@838 := (h : @816 (@251 @681)) -> (hf : @798) -> @13 (@326 @789) @372 +@840 := @831 (@351 @815) +@844 := (hf : @802) -> @13 (@326 @796) @372 +@845 := @840 @800 +@848 := @13 (@326 @677) @372 +@849 := fun (__s : @368) => @845 +@850 := Reasoning.Screening.Screen.Ledger +@851 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.__enc_3 +@852 := @851 @4 +@853 := 3 +@854 := @8 @853 +@857 := (__s : @850) -> @13 @852 @854 +@858 := Reasoning.Screening.Screen.Ledger.iterations +@859 := @858 @4 +@860 := Reasoning.Screening.Screen.Ledger.attempts +@861 := @860 @4 +@862 := Reasoning.Screening.Screen.Ledger.firings +@863 := @862 @4 +@864 := Reasoning.Screening.Screen.Ledger.expansions +@865 := @864 @4 +@866 := Reasoning.Screening.Screen.Ledger.verifications +@867 := @866 @4 +@868 := Reasoning.Screening.Screen.Ledger.frontier +@869 := @868 @4 +@870 := @18 @859 +@871 := @52 @859 +@873 := @13 @870 @20 +@874 := @18 @861 +@875 := @52 @861 +@877 := @13 @874 @20 +@878 := @18 @863 +@879 := @52 @863 +@881 := @13 @878 @20 +@882 := @18 @865 +@883 := @52 @865 +@885 := @13 @882 @20 +@886 := @18 @867 +@887 := @52 @867 +@889 := @13 @886 @20 +@890 := @18 @869 +@891 := @52 @869 +@893 := @13 @890 @20 +@895 := @62 @890 @61 +@897 := @62 @886 @895 +@899 := @62 @882 @897 +@901 := @62 @878 @899 +@903 := @62 @874 @901 +@905 := @62 @870 @903 +@906 := @67 @68 +@907 := @67 @906 +@908 := @67 @907 +@909 := @67 @908 +@910 := @67 @909 +@911 := @172 @890 +@913 := @18 (@868 @25) +@926 := {t : @58} -> + {vs : @98} -> + {ts : @99} -> (h : @13 @913 @27) -> (hs : @176) -> @94 (@62 (@18 (@868 @102)) @25) @122 +@927 := @911 @20 +@929 := @18 (@868 @27) +@941 := {vs : @98} -> + {ts : @99} -> (h : @13 @929 @20) -> (hs : @176) -> @94 (@62 (@18 (@868 @104)) @25) @207 +@942 := @927 @61 +@944 := @18 (@868 @29) +@946 := @13 @944 @20 +@948 := @62 @913 @61 +@953 := {ts : @99} -> (h : @946) -> (hs : @217) -> @94 @948 @207 +@954 := @942 @65 +@956 := @62 @929 @61 +@957 := @94 @956 +@960 := (h : @893) -> (hs : @96) -> @957 @68 +@961 := @954 @891 +@963 := @62 @944 @61 +@965 := @94 @963 @68 +@966 := (hs : @96) -> @965 +@967 := @961 @93 +@969 := @94 @895 @68 +@970 := @172 @886 +@972 := @18 (@866 @25) +@985 := {t : @58} -> + {vs : @98} -> + {ts : @99} -> (h : @13 @972 @27) -> (hs : @176) -> @94 (@62 (@18 (@866 @102)) @25) @122 +@986 := @970 @20 +@988 := @18 (@866 @27) +@1000 := {vs : @98} -> + {ts : @99} -> (h : @13 @988 @20) -> (hs : @176) -> @94 (@62 (@18 (@866 @104)) @25) @207 +@1001 := @986 @895 +@1003 := @18 (@866 @29) +@1005 := @13 @1003 @20 +@1006 := @957 @29 +@1008 := @62 @972 @948 +@1013 := {ts : @99} -> (h : @1005) -> (hs : @1006) -> @94 @1008 @207 +@1014 := @1001 @68 +@1016 := @62 @988 @956 +@1017 := @94 @1016 +@1020 := (h : @889) -> (hs : @965) -> @1017 @906 +@1021 := @1014 @887 +@1023 := @62 @1003 @963 +@1025 := @94 @1023 @906 +@1026 := (hs : @969) -> @1025 +@1027 := @1021 @967 +@1029 := @94 @897 @906 +@1030 := @172 @882 +@1032 := @18 (@864 @25) +@1045 := {t : @58} -> + {vs : @98} -> + {ts : @99} -> (h : @13 @1032 @27) -> (hs : @176) -> @94 (@62 (@18 (@864 @102)) @25) @122 +@1046 := @1030 @20 +@1048 := @18 (@864 @27) +@1060 := {vs : @98} -> + {ts : @99} -> (h : @13 @1048 @20) -> (hs : @176) -> @94 (@62 (@18 (@864 @104)) @25) @207 +@1061 := @1046 @897 +@1063 := @18 (@864 @29) +@1065 := @13 @1063 @20 +@1066 := @1017 @29 +@1068 := @62 @1032 @1008 +@1073 := {ts : @99} -> (h : @1065) -> (hs : @1066) -> @94 @1068 @207 +@1074 := @1061 @906 +@1076 := @62 @1048 @1016 +@1077 := @94 @1076 +@1080 := (h : @885) -> (hs : @1025) -> @1077 @907 +@1081 := @1074 @883 +@1083 := @62 @1063 @1023 +@1085 := @94 @1083 @907 +@1086 := (hs : @1029) -> @1085 +@1087 := @1081 @1027 +@1089 := @94 @899 @907 +@1090 := @172 @878 +@1092 := @18 (@862 @25) +@1105 := {t : @58} -> + {vs : @98} -> + {ts : @99} -> (h : @13 @1092 @27) -> (hs : @176) -> @94 (@62 (@18 (@862 @102)) @25) @122 +@1106 := @1090 @20 +@1108 := @18 (@862 @27) +@1120 := {vs : @98} -> + {ts : @99} -> (h : @13 @1108 @20) -> (hs : @176) -> @94 (@62 (@18 (@862 @104)) @25) @207 +@1121 := @1106 @899 +@1123 := @18 (@862 @29) +@1125 := @13 @1123 @20 +@1126 := @1077 @29 +@1128 := @62 @1092 @1068 +@1133 := {ts : @99} -> (h : @1125) -> (hs : @1126) -> @94 @1128 @207 +@1134 := @1121 @907 +@1136 := @62 @1108 @1076 +@1137 := @94 @1136 +@1140 := (h : @881) -> (hs : @1085) -> @1137 @908 +@1141 := @1134 @879 +@1143 := @62 @1123 @1083 +@1145 := @94 @1143 @908 +@1146 := (hs : @1089) -> @1145 +@1147 := @1141 @1087 +@1149 := @94 @901 @908 +@1150 := @172 @874 +@1152 := @18 (@860 @25) +@1165 := {t : @58} -> + {vs : @98} -> + {ts : @99} -> (h : @13 @1152 @27) -> (hs : @176) -> @94 (@62 (@18 (@860 @102)) @25) @122 +@1166 := @1150 @20 +@1168 := @18 (@860 @27) +@1180 := {vs : @98} -> + {ts : @99} -> (h : @13 @1168 @20) -> (hs : @176) -> @94 (@62 (@18 (@860 @104)) @25) @207 +@1181 := @1166 @901 +@1183 := @18 (@860 @29) +@1185 := @13 @1183 @20 +@1186 := @1137 @29 +@1188 := @62 @1152 @1128 +@1193 := {ts : @99} -> (h : @1185) -> (hs : @1186) -> @94 @1188 @207 +@1194 := @1181 @908 +@1196 := @62 @1168 @1136 +@1197 := @94 @1196 +@1200 := (h : @877) -> (hs : @1145) -> @1197 @909 +@1201 := @1194 @875 +@1203 := @62 @1183 @1143 +@1205 := @94 @1203 @909 +@1206 := (hs : @1149) -> @1205 +@1207 := @1201 @1147 +@1209 := @94 @903 @909 +@1210 := @172 @870 +@1212 := @18 (@858 @25) +@1225 := {t : @58} -> + {vs : @98} -> + {ts : @99} -> (h : @13 @1212 @27) -> (hs : @176) -> @94 (@62 (@18 (@858 @102)) @25) @122 +@1226 := @1210 @20 +@1228 := @18 (@858 @27) +@1240 := {vs : @98} -> + {ts : @99} -> (h : @13 @1228 @20) -> (hs : @176) -> @94 (@62 (@18 (@858 @104)) @25) @207 +@1241 := @1226 @903 +@1243 := @18 (@858 @29) +@1245 := @13 @1243 @20 +@1246 := @1197 @29 +@1248 := @62 @1212 @1188 +@1253 := {ts : @99} -> (h : @1245) -> (hs : @1246) -> @94 @1248 @207 +@1254 := @1241 @909 +@1256 := @62 @1228 @1196 +@1257 := @94 @1256 +@1260 := (h : @873) -> (hs : @1205) -> @1257 @910 +@1261 := @1254 @871 +@1263 := @62 @1243 @1203 +@1265 := @94 @1263 @910 +@1266 := (hs : @1209) -> @1265 +@1267 := @1261 @1207 +@1269 := @94 @905 @910 +@1270 := @302 @853 +@1271 := @274 @853 +@1280 := {k : @24} -> + {fs : @98} -> {tys : @99} -> (h : @244 (@1271 @27) @252) -> (hf : @176) -> @303 @854 +@1281 := @1270 @9 +@1282 := @1271 @9 +@1283 := @244 @1282 +@1284 := @1283 @252 +@1289 := {fs : @98} -> {tys : @99} -> (h : @1284) -> (hf : @176) -> @328 @854 +@1290 := @1281 @905 +@1297 := {tys : @99} -> (h : @1284) -> (hf : @1257 @29) -> @13 (@326 @1248) @854 +@1298 := @1290 @910 +@1305 := (h : @1283 (@251 @910)) -> (hf : @1265) -> @13 (@326 @1256) @854 +@1307 := @1298 (@351 @1282) +@1311 := (hf : @1269) -> @13 (@326 @1263) @854 +@1312 := @1307 @1267 +@1315 := @13 (@326 @905) @854 +@1316 := fun (__s : @850) => @1312 +@1317 := Reasoning.Screening.Screen.Search +@1319 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.__enc_1 @4 +@1320 := 1 +@1321 := @8 @1320 +@1324 := (__s : @1317) -> @13 @1319 @1321 +@1325 := Reasoning.Screening.Screen.Search.frontier +@1326 := @1325 @4 +@1327 := Reasoning.Screening.Screen.Search.found +@1328 := @1327 @4 +@1329 := Reasoning.Screening.Screen.Search.truncated +@1330 := @1329 @4 +@1331 := Reasoning.Screening.Screen.Search.ledger +@1332 := @1331 @4 +@1333 := @572 @368 +@1334 := @1333 @369 +@1335 := @1334 @1326 +@1336 := @576 @372 +@1339 := fun (__x : @368) => + LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.Compose.RustStd.__wt_2 @4 +@1340 := @633 @368 +@1341 := (a._@._internal._hyg.#0 : @368) -> @57 +@1342 := (x : @368) -> @635 +@1343 := @97 @368 +@1351 := {e : @1341} -> {t : @58} -> (h : @1342) -> (xs : @1343) -> @13 (@1333 @25 @4) @594 +@1352 := @1340 @369 +@1354 := (x : @368) -> @373 @29 +@1356 := @13 (@1334 @4) +@1360 := {t : @58} -> (h : @1354) -> (xs : @1343) -> @1356 @594 +@1361 := @1352 @372 +@1362 := (x : @368) -> @374 +@1365 := (h : @1362) -> (xs : @1343) -> @1356 @1336 +@1367 := @1361 @1339 @1326 +@1369 := @13 @1335 @1336 +@1370 := @502 @368 +@1371 := @381 @368 +@1372 := @1371 @18 +@1373 := @1372 @369 +@1374 := LexLeanPreservation.encOption +@1375 := @1374 @1370 +@1376 := @1375 @1373 +@1377 := @1376 @1328 +@1378 := @387 @372 +@1379 := LexLeanTarget.TargetSyntax.Ty.option +@1380 := @1379 @1378 +@1381 := @499 @368 +@1382 := (x : @368) -> @486 +@1394 := {ea : @500} -> + {eb : @1341} -> + {s : @58} -> + {t : @58} -> (ha : @501) -> (hb : @1382) -> (x : @1370) -> @13 (@1371 @100 @102 @4) @421 +@1395 := @1381 @18 +@1405 := {eb : @1341} -> + {s : @58} -> {t : @58} -> (ha : @534) -> (hb : @1382) -> (x : @1370) -> @13 (@1372 @102 @4) @421 +@1406 := @1395 @369 +@1408 := (x : @368) -> @373 @27 +@1410 := @13 (@1373 @4) +@1416 := {s : @58} -> {t : @58} -> (ha : @534) -> (hb : @1408) -> (x : @1370) -> @1410 @421 +@1417 := @1406 @20 +@1422 := {t : @58} -> (ha : @555) -> (hb : @1408) -> (x : @1370) -> @1410 @556 +@1423 := @1417 @372 +@1425 := (x : @1370) -> @1410 @1378 +@1427 := (ha : @555) -> (hb : @1362) -> @1425 +@1431 := fun (__x : @1370) => @1423 @389 @1339 @4 +@1432 := @242 @25 +@1435 := @1374 @104 @25 @4 +@1436 := @589 @1435 +@1437 := @1379 @27 +@1446 := {p : @21} -> + {c : @22} -> + {A : @23} -> {α : @390} -> {e : @581} -> {t : @58} -> (h : @585) -> (o : @1432) -> @1436 @1437 +@1448 := LexLeanPreservation.Rust.wt_encOption @0 +@1457 := {c : @22} -> + {A : @23} -> + {α : @390} -> {e : @581} -> {t : @58} -> (h : @608) -> (o : @1432) -> @610 @1435 @1437 +@1458 := @1448 @1 +@1466 := {A : @23} -> + {α : @390} -> {e : @581} -> {t : @58} -> (h : @623) -> (o : @1432) -> @624 @1435 @1437 +@1467 := @1458 @2 +@1474 := {α : @390} -> {e : @581} -> {t : @58} -> (h : @636) -> (o : @1432) -> @13 @1435 @1437 +@1475 := @1467 @1370 +@1476 := (a._@._internal._hyg.#0 : @1370) -> @57 +@1477 := (x : @1370) -> @635 +@1478 := @242 @1370 +@1486 := {e : @1476} -> {t : @58} -> (h : @1477) -> (o : @1478) -> @13 (@1375 @25 @4) @1437 +@1487 := @1475 @1373 +@1489 := (x : @1370) -> @1410 @29 +@1491 := @13 (@1376 @4) +@1495 := {t : @58} -> (h : @1489) -> (o : @1478) -> @1491 @1437 +@1496 := @1487 @1378 +@1499 := (h : @1425) -> (o : @1478) -> @1491 @1380 +@1501 := @1496 @1431 @1328 +@1503 := @13 @1377 @1380 +@1504 := LexLeanTarget.TargetSyntax.Value.bool +@1505 := @1504 @1330 +@1506 := LexLeanTarget.TargetSyntax.Ty.bool +@1507 := Bool +@1508 := @1504 @4 +@1514 := {p : @21} -> {c : @22} -> {A : @23} -> (b : @1507) -> @30 @1508 @1506 +@1516 := LexLeanPreservation.Rust.wt_bool @0 +@1521 := {c : @22} -> {A : @23} -> (b : @1507) -> @40 @1508 @1506 +@1522 := @1516 @1 +@1526 := {A : @23} -> (b : @1507) -> @47 @1508 @1506 +@1527 := @1522 @2 +@1530 := (b : @1507) -> @13 @1508 @1506 +@1531 := @1527 @1330 +@1533 := @13 @1505 @1506 +@1534 := @851 @1332 +@1536 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.Compose.RustStd.__wt_3 @1332 +@1538 := @62 @1534 @61 +@1540 := @62 @1505 @1538 +@1542 := @62 @1377 @1540 +@1544 := @62 @1335 @1542 +@1545 := @66 @854 +@1546 := @1545 @65 +@1547 := @66 @1506 +@1548 := @1547 @1546 +@1549 := @66 @1380 +@1550 := @1549 @1548 +@1551 := @66 @1336 +@1552 := @1551 @1550 +@1553 := @172 @1534 +@1555 := @851 (@1331 @25) +@1568 := {t : @58} -> + {vs : @98} -> + {ts : @99} -> (h : @13 @1555 @27) -> (hs : @176) -> @94 (@62 (@851 (@1331 @102)) @25) @122 +@1569 := @1553 @854 +@1571 := @851 (@1331 @27) +@1573 := @13 @1571 @854 +@1578 := @94 (@62 (@851 (@1331 @104)) @25) +@1579 := @1545 @27 +@1584 := {vs : @98} -> {ts : @99} -> (h : @1573) -> (hs : @176) -> @1578 @1579 +@1585 := @1569 @61 +@1587 := @851 (@1331 @29) +@1589 := @13 @1587 @854 +@1591 := @62 @1555 @61 +@1596 := {ts : @99} -> (h : @1589) -> (hs : @217) -> @94 @1591 @1579 +@1597 := @1585 @65 +@1599 := @13 @1534 @854 +@1601 := @62 @1571 @61 +@1602 := @94 @1601 +@1605 := (h : @1599) -> (hs : @96) -> @1602 @1546 +@1606 := @1597 @1536 +@1608 := @62 @1587 @61 +@1610 := @94 @1608 @1546 +@1611 := (hs : @96) -> @1610 +@1612 := @1606 @93 +@1614 := @94 @1538 @1546 +@1615 := @172 @1505 +@1617 := @1504 (@1329 @25) +@1630 := {t : @58} -> + {vs : @98} -> + {ts : @99} -> (h : @13 @1617 @27) -> (hs : @176) -> @94 (@62 (@1504 (@1329 @102)) @25) @122 +@1631 := @1615 @1506 +@1633 := @1504 (@1329 @27) +@1635 := @13 @1633 @1506 +@1640 := @94 (@62 (@1504 (@1329 @104)) @25) +@1641 := @1547 @27 +@1646 := {vs : @98} -> {ts : @99} -> (h : @1635) -> (hs : @176) -> @1640 @1641 +@1647 := @1631 @1538 +@1649 := @1504 (@1329 @29) +@1651 := @13 @1649 @1506 +@1652 := @1602 @29 +@1654 := @62 @1617 @1591 +@1659 := {ts : @99} -> (h : @1651) -> (hs : @1652) -> @94 @1654 @1641 +@1660 := @1647 @1546 +@1662 := @62 @1633 @1601 +@1663 := @94 @1662 +@1666 := (h : @1533) -> (hs : @1610) -> @1663 @1548 +@1667 := @1660 @1531 +@1669 := @62 @1649 @1608 +@1671 := @94 @1669 @1548 +@1672 := (hs : @1614) -> @1671 +@1673 := @1667 @1612 +@1675 := @94 @1540 @1548 +@1676 := @172 @1377 +@1678 := @1376 (@1327 @25) +@1691 := {t : @58} -> + {vs : @98} -> + {ts : @99} -> (h : @13 @1678 @27) -> (hs : @176) -> @94 (@62 (@1376 (@1327 @102)) @25) @122 +@1692 := @1676 @1380 +@1694 := @1376 (@1327 @27) +@1696 := @13 @1694 @1380 +@1701 := @94 (@62 (@1376 (@1327 @104)) @25) +@1702 := @1549 @27 +@1707 := {vs : @98} -> {ts : @99} -> (h : @1696) -> (hs : @176) -> @1701 @1702 +@1708 := @1692 @1540 +@1710 := @1376 (@1327 @29) +@1712 := @13 @1710 @1380 +@1713 := @1663 @29 +@1715 := @62 @1678 @1654 +@1720 := {ts : @99} -> (h : @1712) -> (hs : @1713) -> @94 @1715 @1702 +@1721 := @1708 @1548 +@1723 := @62 @1694 @1662 +@1724 := @94 @1723 +@1727 := (h : @1503) -> (hs : @1671) -> @1724 @1550 +@1728 := @1721 @1501 +@1730 := @62 @1710 @1669 +@1732 := @94 @1730 @1550 +@1733 := (hs : @1675) -> @1732 +@1734 := @1728 @1673 +@1736 := @94 @1542 @1550 +@1737 := @172 @1335 +@1739 := @1334 (@1325 @25) +@1752 := {t : @58} -> + {vs : @98} -> + {ts : @99} -> (h : @13 @1739 @27) -> (hs : @176) -> @94 (@62 (@1334 (@1325 @102)) @25) @122 +@1753 := @1737 @1336 +@1755 := @1334 (@1325 @27) +@1757 := @13 @1755 @1336 +@1762 := @94 (@62 (@1334 (@1325 @104)) @25) +@1763 := @1551 @27 +@1768 := {vs : @98} -> {ts : @99} -> (h : @1757) -> (hs : @176) -> @1762 @1763 +@1769 := @1753 @1542 +@1771 := @1334 (@1325 @29) +@1773 := @13 @1771 @1336 +@1774 := @1724 @29 +@1776 := @62 @1739 @1715 +@1781 := {ts : @99} -> (h : @1773) -> (hs : @1774) -> @94 @1776 @1763 +@1782 := @1769 @1550 +@1784 := @62 @1755 @1723 +@1785 := @94 @1784 +@1788 := (h : @1369) -> (hs : @1732) -> @1785 @1552 +@1789 := @1782 @1367 +@1791 := @62 @1771 @1730 +@1793 := @94 @1791 @1552 +@1794 := (hs : @1736) -> @1793 +@1795 := @1789 @1734 +@1797 := @94 @1544 @1552 +@1798 := @302 @1320 +@1799 := @274 @1320 +@1808 := {k : @24} -> + {fs : @98} -> {tys : @99} -> (h : @244 (@1799 @27) @252) -> (hf : @176) -> @303 @1321 +@1809 := @1798 @9 +@1810 := @1799 @9 +@1811 := @244 @1810 +@1812 := @1811 @252 +@1817 := {fs : @98} -> {tys : @99} -> (h : @1812) -> (hf : @176) -> @328 @1321 +@1818 := @1809 @1544 +@1825 := {tys : @99} -> (h : @1812) -> (hf : @1785 @29) -> @13 (@326 @1776) @1321 +@1826 := @1818 @1552 +@1833 := (h : @1811 (@251 @1552)) -> (hf : @1793) -> @13 (@326 @1784) @1321 +@1835 := @1826 (@351 @1810) +@1839 := (hf : @1797) -> @13 (@326 @1791) @1321 +@1840 := @1835 @1795 +@1843 := @13 (@326 @1544) @1321 +@1844 := fun (__s : @1317) => @1840 +@1845 := @52 @29 +@1846 := @502 @57 +@1850 := Prod.mk.{0, 0} @24 @57 @9 +@1851 := @1850 @214 +@1852 := @59 @1846 +@1853 := @60 @1846 +@1855 := @1853 @1851 @1852 +@1856 := Bool.true +@1857 := LexLeanTarget.TargetSyntax.Function +@1858 := LexLeanTarget.TargetSyntax.Program.functions +@1859 := @1858 @0 +@1860 := @59 @24 +@1861 := LexLeanTarget.TargetSyntax.Ty.unit +@1862 := LexLeanTarget.TargetSyntax.Value.unit +@1865 := LexLeanTarget.TargetSyntax.Expr.value @1861 @1862 +@1870 := LexLeanTarget.TargetSyntax.Function.mk @1860 @65 @1861 @1865 +@1875 := List.getD.{0} @1857 @1859 @9 @1870 +@1879 := fun (__e_n : @24) => + LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.RustStd.root @4 @9 +@1880 := @172 @214 +@1882 := @13 @203 @27 +@1883 := @18 @100 +@1884 := @62 @1883 +@1892 := {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @1882) -> (hs : @176) -> @94 (@1884 @25) @122 +@1893 := @1880 @20 +@1899 := {vs : @98} -> {ts : @99} -> (h : @187 @20) -> (hs : @176) -> @192 @207 +@1900 := @1893 @61 +@1901 := @204 @61 +@1902 := @94 @1901 +@1906 := {ts : @99} -> (h : @202) -> (hs : @217) -> @1902 @207 +@1907 := @1900 @65 +@1910 := (h : @216) -> (hs : @96) -> @220 @68 +@1912 := @1907 @1845 @93 +@1913 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.denote +@1914 := @1913 @29 +@1915 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.__fits_0 +@1916 := @1915 @29 +@1919 := @18 (Reasoning.Main.screenDose @29) +@1921 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.root @29 +@1922 := Ne.{1} +@1923 := LexLeanPreservation.Obs +@1924 := @1922 @1923 +@1925 := LexLeanPreservation.Rel +@1928 := @1924 (@1925 @29 @4) +@1929 := LexLeanPreservation.Obs.stuck +@1932 := (f : @1507) -> (v : @57) -> @1928 @1929 +@1934 := LexLeanPreservation.Rust.rel_ne_stuck @1916 +@1940 := (v : @57) -> @1924 (@1925 (@1915 @27) @4) @1929 +@1941 := @1934 @1919 +@1945 := @1924 (@1925 @1916 @1919) @1929 +@1946 := @97 @1846 +@1947 := LexLeanPreservation.Rust.FunSem +@1953 := (n : @24) -> @1947 @392 @114 @108 @4 @100 +@1954 := @242 @1857 +@1955 := @241 @1954 +@1962 := LexLeanRuntime.index (@97 @1857) @1857 (LexLeanRuntime.instIndexableList @1857) +@1966 := @1955 (@1962 (@1858 @392) @100) +@1967 := @250 @1857 +@1968 := @1967 @102 +@1969 := @1966 @1968 +@1973 := @69 @400 @392 @114 @102 +@1974 := LexLeanTarget.TargetSyntax.Function.types +@1975 := @1974 @100 +@1976 := @1973 @1975 +@1977 := @242 @1946 +@1978 := @241 @1977 +@1979 := LexLeanTarget.TargetSemantics.bindAll +@1980 := LexLeanTarget.TargetSyntax.Function.parameters +@1985 := @1978 (@1979 (@1980 @108) @100 @1852) +@1986 := @250 @1946 +@1987 := @1986 @102 +@1988 := @1985 @1987 +@1989 := @242 @1507 +@1990 := @241 @1989 +@1991 := LexLeanPreservation.Rust.fnFallible +@1994 := @1990 (@1991 @410 @392) +@1995 := @250 @1507 +@1996 := @1995 @102 +@1997 := @1994 @1996 +@1998 := LexLeanPreservation.RunConv +@1999 := #13 +@2003 := @1998 @1999 @400 @114 @102 +@2005 := @1924 @100 @1929 +@2006 := Exists.{1} +@2007 := LexLeanPreservation.Rust.ROut +@2008 := @2006 @2007 +@2009 := And +@2010 := LexLeanPreservation.Rust.RealizesFn +@2014 := @2009 (@2010 @392 @114 @4) +@2015 := LexLeanPreservation.Rust.RCI +@2017 := @2015 #15 +@2018 := LexLeanPreservation.Rust.fnIdent +@2019 := @2018 @1999 +@2026 := (hne : @2005) -> @2008 (fun (ro : @2007) => @2014 (@2017 @2019 @410 @4)) +@2041 := {p : @21} -> + {c : @22} -> + {A : @23} -> + {f : @24} -> + {fn : @1857} -> + {args : @98} -> + {env : @1946} -> + {F : @1507} -> + {o : @1923} -> + (hB : @1953) -> + (hfn : @1969) -> (hwt : @1976) -> (hbind : @1988) -> (hF : @1997) -> (hA : @2003) -> @2026 +@2043 := LexLeanPreservation.Rust.compose @0 +@2044 := @1947 @0 +@2049 := (n : @24) -> @2044 @114 @108 @4 @100 +@2050 := @1962 @1859 +@2053 := @1955 (@2050 @100) @1968 +@2057 := @80 @392 @114 @102 @1975 +@2058 := @1998 @0 +@2061 := @2058 @400 @114 @102 +@2075 := {c : @22} -> + {A : @23} -> + {f : @24} -> + {fn : @1857} -> + {args : @98} -> + {env : @1946} -> + {F : @1507} -> + {o : @1923} -> + (hB : @2049) -> + (hfn : @2053) -> (hwt : @2057) -> (hbind : @1988) -> (hF : @1997) -> (hA : @2061) -> @2026 +@2076 := @2043 @1 +@2077 := @2044 @1 +@2081 := (n : @24) -> @2077 @108 @4 @100 +@2084 := @88 @114 @102 @1975 +@2085 := @1991 @1 +@2088 := @1990 (@2085 @392) @1996 +@2089 := @2015 @1 +@2099 := (hbind : @1988) -> + (hF : @2088) -> + (hA : @2061) -> (hne : @2005) -> @2008 (fun (ro : @2007) => @2014 (@2089 @2019 @410 @4)) +@2109 := {A : @23} -> + {f : @24} -> + {fn : @1857} -> + {args : @98} -> + {env : @1946} -> + {F : @1507} -> {o : @1923} -> (hB : @2081) -> (hfn : @2053) -> (hwt : @2084) -> @2099 +@2110 := @2076 @2 +@2112 := @2077 @2 @4 +@2114 := (n : @24) -> @2112 @100 +@2115 := @94 @102 +@2116 := @2115 @1975 +@2125 := {f : @24} -> + {fn : @1857} -> + {args : @98} -> + {env : @1946} -> + {F : @1507} -> {o : @1923} -> (hB : @2114) -> (hfn : @2053) -> (hwt : @2116) -> @2099 +@2126 := @2110 @9 +@2128 := (n : @24) -> @2112 @9 +@2129 := @2050 @9 +@2130 := @1955 @2129 +@2131 := @2130 @1968 +@2132 := @2085 @9 +@2133 := @1990 @2132 +@2134 := @2133 @1996 +@2135 := @2058 @9 +@2137 := @2135 @114 @102 +@2139 := @2089 (@2018 @9) +@2147 := (hF : @2134) -> + (hA : @2137) -> (hne : @2005) -> @2008 (fun (ro : @2007) => @2014 (@2139 @410 @4)) +@2156 := {fn : @1857} -> + {args : @98} -> + {env : @1946} -> + {F : @1507} -> + {o : @1923} -> (hB : @2128) -> (hfn : @2131) -> (hwt : @2116) -> (hbind : @1988) -> @2147 +@2157 := @2126 @1875 +@2159 := @2130 (@1967 @1875) +@2160 := @1974 @1875 +@2161 := @2115 @2160 +@2163 := @1979 (@1980 @1875) +@2175 := {args : @98} -> + {env : @1946} -> + {F : @1507} -> + {o : @1923} -> + (hB : @2128) -> + (hfn : @2159) -> (hwt : @2161) -> (hbind : @1978 (@2163 @100 @1852) @1987) -> @2147 +@2176 := @2157 @234 +@2177 := @1884 @61 +@2179 := @94 @2177 @2160 +@2182 := @62 (@18 @108) @61 +@2186 := @1978 (@2163 @2182 @1852) @1987 +@2189 := @62 (@18 @392) @61 +@2210 := {env : @1946} -> + {F : @1507} -> + {o : @1923} -> + (hB : @2128) -> + (hfn : @2159) -> + (hwt : @2179) -> + (hbind : @2186) -> + (hF : @2134) -> + (hA : @2135 @2189 @102) -> + (hne : @2005) -> @2008 (fun (ro : @2007) => @2014 (@2139 (@62 (@18 #12) @61) @4)) +@2211 := @2176 @1855 +@2212 := @190 @61 +@2214 := @94 @2212 @2160 +@2222 := @1978 (@2163 @2177 @1852) (@1986 (@1853 (@1850 @1883) @1852)) +@2225 := @62 (@18 @114) @61 +@2244 := {F : @1507} -> + {o : @1923} -> + (hB : @2128) -> + (hfn : @2159) -> + (hwt : @2214) -> + (hbind : @2222) -> + (hF : @2134) -> + (hA : @2135 @2225 @102) -> + (hne : @2005) -> @2008 (fun (ro : @2007) => @2014 (@2139 (@62 (@18 @410) @61) @4)) +@2245 := @2211 @1856 +@2246 := @1902 @2160 +@2254 := @1978 (@2163 @2212 @1852) (@1986 (@1853 (@1850 @189) @1852)) +@2256 := @2133 (@1995 @1856) +@2258 := @2135 @2182 @102 +@2259 := @2010 @1856 +@2278 := {o : @1923} -> + (hB : @2128) -> + (hfn : @2159) -> + (hwt : @2246) -> + (hbind : @2254) -> + (hF : @2256) -> + (hA : @2258) -> + (hne : @2005) -> @2008 (fun (ro : @2007) => @2009 (@2259 @114 @4) (@2139 (@62 (@18 @400) @61) @4)) +@2279 := @2245 @1914 +@2280 := @220 @2160 +@2288 := @1978 (@2163 @1901 @1852) (@1986 (@1853 (@1850 @203) @1852)) +@2289 := @2135 @2177 +@2290 := @1913 @100 +@2291 := @2289 @2290 +@2292 := @1913 @108 +@2310 := (hB : @2128) -> + (hfn : @2159) -> + (hwt : @2280) -> + (hbind : @2288) -> + (hF : @2256) -> + (hA : @2291) -> + (hne : @1924 @2292 @1929) -> + @2008 (fun (ro : @2007) => @2009 (@2259 (@1913 @392) @4) (@2139 @2189 @4)) +@2311 := @2279 @1879 +@2312 := @228 @2160 +@2320 := @1978 (@2163 @219 @1852) (@1986 (@1853 (@1850 @186) @1852)) +@2321 := @2135 @2212 +@2322 := @1913 @102 +@2340 := (hfn : @2159) -> + (hwt : @2312) -> + (hbind : @2320) -> + (hF : @2256) -> + (hA : @2321 @2322) -> + (hne : @1924 @2290 @1929) -> + @2008 (fun (ro : @2007) => @2009 (@2259 (@1913 @114) @4) (@2139 @2225 @4)) +@2343 := @2311 (@350 @1954 @2129) +@2344 := @235 @2160 +@2352 := @1978 (@2163 @227 @1852) (@1986 (@1853 (@1850 @200) @1852)) +@2353 := @2135 @1901 +@2354 := @1913 @104 +@2370 := (hwt : @2344) -> + (hbind : @2352) -> + (hF : @2256) -> + (hA : @2353 @2354) -> + (hne : @1924 @2322 @1929) -> @2008 (fun (ro : @2007) => @2009 (@2259 @2292 @4) (@2139 @2182 @4)) +@2371 := @2343 @1912 +@2373 := @2163 @234 @1852 +@2376 := @1978 @2373 (@1986 @1855) +@2377 := @2135 @219 +@2378 := @1913 @25 +@2393 := (hbind : @2376) -> + (hF : @2256) -> + (hA : @2377 @2378) -> + (hne : @1924 @2354 @1929) -> @2008 (fun (ro : @2007) => @2009 (@2259 @2290 @4) (@2139 @2177 @4)) +@2396 := @2371 (@350 @1977 @2373) +@2397 := @2135 @227 +@2398 := @1913 @27 +@2412 := (hF : @2256) -> + (hA : @2397 @2398) -> + (hne : @1924 @2378 @1929) -> @2008 (fun (ro : @2007) => @2009 (@2259 @2322 @4) (@2139 @2212 @4)) +@2415 := @2396 (@350 @1989 @2132) +@2429 := (hA : @2135 @234 @1914) -> + (hne : @1924 @2398 @1929) -> @2008 (fun (ro : @2007) => @2009 (@2259 @2354 @4) (@2139 @1901 @4)) +@2430 := @2415 @1921 +@2441 := (hne : @1924 @1914 @1929) -> + @2008 (fun (ro : @2007) => @2009 (@2259 @2378 @4) (@2139 @219 @4)) +@2442 := @2430 @1941 +@2448 := @2009 (@2259 @2398 @4) (@2139 @227 @4) +@2450 := @2008 (fun (ro : @2007) => @2448) +@2452 := @2008 (fun (__e_ro : @2007) => @2448) +@2454 := LexLeanPreservation.Rust.RepresentableL @64 +@2455 := (__e_hrep : @2454) -> @2452 +@2456 := fun (__e_hrep : @2454) => @2442 +@2457 := (w : @24) -> @2455 +@2458 := fun (w : @24) => @2456 +\end{coremodule} +\end{lexlean} diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R6/RustStd.lean b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R6/RustStd.lean new file mode 100644 index 000000000..1a204be05 --- /dev/null +++ b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R6/RustStd.lean @@ -0,0 +1,278 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [{ constructors := [[.nat]] }, + { constructors := [[(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]] }, + { constructors := [[(.pair .nat .nat), (.list (.adt 0))]] }, + { constructors := [[.nat, .nat, .nat, .nat, .nat, .nat]] }], functions := [ + { parameters := [0], types := [.nat], result := .nat, + body := (.«match» .nat (.call 1 [(.var 0)]) [(.arm .ok [1] (.var 1)), (.arm .error [2] (.value .nat (.nat 9)))]) }, + { parameters := [0], types := [.nat], result := (.result .nat (.pair .bool .bool)), + body := (.«match» (.result .nat (.pair .bool .bool)) (.call 2 [(.var 0)]) [(.arm .ok [1] (.build .ok (.result .nat (.pair .bool .bool)) [(.first (.var 1))])), (.arm .error [2] (.build .error (.result .nat (.pair .bool .bool)) [(.var 2)]))]) }, + { parameters := [0], types := [.nat], result := (.result (.pair .nat (.list (.adt 0))) (.pair .bool .bool)), + body := (.«let» 1 (.pair (.adt 1) .bool) (.call 3 [(.var 0)]) (.«match» (.result (.pair .nat (.list (.adt 0))) (.pair .bool .bool)) (.field (.first (.var 1)) 1) [(.arm .some [2] (.build .ok (.result (.pair .nat (.list (.adt 0))) (.pair .bool .bool)) [(.build .pair (.pair .nat (.list (.adt 0))) [(.first (.var 2)), (.field (.second (.var 2)) 1)])])), (.arm .none [] (.build .error (.result (.pair .nat (.list (.adt 0))) (.pair .bool .bool)) [(.call 4 [(.second (.var 1)), (.field (.first (.var 1)) 2)])]))])) }, + { parameters := [0], types := [.nat], result := (.pair (.adt 1) .bool), + body := (.call 5 [(.closure 6 [(.var 0)]), (.value .nat (.nat 8)), (.call 7 [(.var 0)])]) }, + { parameters := [0, 1], types := [.bool, .bool], result := (.pair .bool .bool), + body := (.cond (.cond (.var 0) (.prim .boolNot [(.var 1)]) (.build .false .bool [])) (.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])]) (.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])) }, + { parameters := [0, 1, 2], types := [(.fn [(.adt 1)] (.option (.adt 1))), .nat, (.adt 1)], result := (.pair (.adt 1) .bool), + body := (.«match» (.pair (.adt 1) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.adt 1) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.adt 1) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.adt 1) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 5 [(.var 0), (.var 3), (.var 4)]))]))]) }, + { parameters := [0, 1], types := [.nat, (.adt 1)], result := (.option (.adt 1)), + body := (.call 8 [(.var 0), (.var 1)]) }, + { parameters := [0], types := [.nat], result := (.adt 1), + body := (.«let» 1 (.list (.adt 2)) (.call 9 [(.closure 10 []), (.build .nil (.list (.adt 2)) []), (.build .cons (.list (.adt 2)) [(.build (.adt 0) (.adt 2) [(.call 11 [(.var 0)]), (.build .nil (.list (.adt 0)) [])]), (.build .nil (.list (.adt 2)) [])])]) (.build (.adt 0) (.adt 1) [(.var 1), (.build .none (.option (.pair .nat (.adt 2))) []), (.prim .natLt [(.value .nat (.nat 3)), (.value .nat (.nat 1))]), (.build (.adt 0) (.adt 3) [(.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.prim .length [(.var 1)])])])) }, + { parameters := [0, 1], types := [.nat, (.adt 1)], result := (.option (.adt 1)), + body := (.«match» (.option (.adt 1)) (.field (.var 1) 1) [(.arm .some [2] (.build .none (.option (.adt 1)) [])), (.arm .none [] (.«match» (.option (.adt 1)) (.field (.var 1) 0) [(.arm .nil [] (.build .none (.option (.adt 1)) [])), (.arm .cons [3, 4] (.«match» (.option (.adt 1)) (.call 12 [(.var 0), (.field (.var 3) 0)]) [(.arm .some [5] (.build .some (.option (.adt 1)) [(.build (.adt 0) (.adt 1) [(.var 4), (.build .some (.option (.pair .nat (.adt 2))) [(.build .pair (.pair .nat (.adt 2)) [(.var 5), (.var 3)])]), (.field (.var 1) 2), (.build (.adt 0) (.adt 3) [(.prim .natAdd [(.field (.field (.var 1) 3) 0), (.value .nat (.nat 1))]), (.field (.field (.var 1) 3) 1), (.field (.field (.var 1) 3) 2), (.field (.field (.var 1) 3) 3), (.prim .natAdd [(.field (.field (.var 1) 3) 4), (.value .nat (.nat 1))]), (.field (.field (.var 1) 3) 5)])])])), (.arm .none [] (.«let» 6 (.list (.adt 2)) (.call 13 [(.var 3)]) (.«let» 7 (.list (.adt 2)) (.var 6) (.«let» 8 (.list (.adt 2)) (.prim .append [(.var 7), (.var 4)]) (.«let» 9 (.list (.adt 2)) (.call 9 [(.closure 14 []), (.build .nil (.list (.adt 2)) []), (.var 8)]) (.build .some (.option (.adt 1)) [(.build (.adt 0) (.adt 1) [(.var 9), (.build .none (.option (.pair .nat (.adt 2))) []), (.cond (.field (.var 1) 2) (.build .true .bool []) (.prim .natLt [(.value .nat (.nat 3)), (.prim .length [(.var 8)])])), (.build (.adt 0) (.adt 3) [(.prim .natAdd [(.field (.field (.var 1) 3) 0), (.value .nat (.nat 1))]), (.prim .natAdd [(.field (.field (.var 1) 3) 1), (.call 15 [(.field (.var 3) 0)])]), (.prim .natAdd [(.field (.field (.var 1) 3) 2), (.prim .length [(.var 6)])]), (.prim .natAdd [(.field (.field (.var 1) 3) 3), (.value .nat (.nat 1))]), (.prim .natAdd [(.field (.field (.var 1) 3) 4), (.value .nat (.nat 1))]), (.cond (.prim .natLt [(.field (.field (.var 1) 3) 5), (.prim .length [(.var 9)])]) (.prim .length [(.var 9)]) (.field (.field (.var 1) 3) 5))])])]))))))]))]))]) }, + { parameters := [0, 1, 2], types := [(.fn [(.list (.adt 2)), (.adt 2)] (.list (.adt 2))), (.list (.adt 2)), (.list (.adt 2))], result := (.list (.adt 2)), + body := (.«match» (.list (.adt 2)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 9 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, + { parameters := [0, 1], types := [(.list (.adt 2)), (.adt 2)], result := (.list (.adt 2)), + body := (.cond (.prim .natLt [(.prim .length [(.var 0)]), (.value .nat (.nat 3))]) (.prim .append [(.var 0), (.build .cons (.list (.adt 2)) [(.var 1), (.build .nil (.list (.adt 2)) [])])]) (.var 0)) }, + { parameters := [0], types := [.nat], result := (.pair .nat .nat), + body := (.build .pair (.pair .nat .nat) [(.var 0), (.value .nat (.nat 0))]) }, + { parameters := [0, 1], types := [.nat, (.pair .nat .nat)], result := (.option .nat), + body := (.«match» (.option .nat) (.call 16 [(.var 1)]) [(.arm .none [] (.build .none (.option .nat) [])), (.arm .some [2] (.cond (.call 17 [(.var 0), (.var 2)]) (.build .some (.option .nat) [(.var 2)]) (.build .none (.option .nat) [])))]) }, + { parameters := [0], types := [(.adt 2)], result := (.list (.adt 2)), + body := (.call 18 [(.var 0)]) }, + { parameters := [0, 1], types := [(.list (.adt 2)), (.adt 2)], result := (.list (.adt 2)), + body := (.cond (.prim .natLt [(.prim .length [(.var 0)]), (.value .nat (.nat 3))]) (.prim .append [(.var 0), (.build .cons (.list (.adt 2)) [(.var 1), (.build .nil (.list (.adt 2)) [])])]) (.var 0)) }, + { parameters := [0], types := [(.pair .nat .nat)], result := .nat, + body := (.prim .length [(.call 19 [(.var 0)])]) }, + { parameters := [0], types := [(.pair .nat .nat)], result := (.option .nat), + body := (.cond (.prim .natLt [(.value .nat (.nat 0)), (.second (.var 0))]) (.build .some (.option .nat) [(.second (.var 0))]) (.build .none (.option .nat) [])) }, + { parameters := [0, 1], types := [.nat, .nat], result := .bool, + body := (.prim .natLe [(.prim .natAdd [(.var 1), (.var 1)]), (.var 0)]) }, + { parameters := [0], types := [(.adt 2)], result := (.list (.adt 2)), + body := (.call 20 [(.closure 21 [(.var 0)]), (.build .nil (.list (.adt 2)) []), (.call 19 [(.field (.var 0) 0)])]) }, + { parameters := [0], types := [(.pair .nat .nat)], result := (.list .nat), + body := (.«match» (.list .nat) (.«let» 1 .nat (.first (.var 0)) (.«let» 2 (.list .nat) (.call 22 [(.var 1)]) (.cond (.call 23 [(.var 1), (.var 2)]) (.build .ok (.result (.list .nat) (.pair .bool .bool)) [(.var 2)]) (.build .error (.result (.list .nat) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])])])))) [(.arm .ok [3] (.var 3)), (.arm .error [4] (.build .nil (.list .nat) []))]) }, + { parameters := [0, 1, 2], types := [(.fn [(.list (.adt 2)), .nat] (.list (.adt 2))), (.list (.adt 2)), (.list .nat)], result := (.list (.adt 2)), + body := (.«match» (.list (.adt 2)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 20 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, + { parameters := [0, 1, 2], types := [(.adt 2), (.list (.adt 2)), .nat], result := (.list (.adt 2)), + body := (.call 24 [(.var 0), (.var 1), (.var 2)]) }, + { parameters := [0], types := [.nat], result := (.list .nat), + body := (.call 25 [(.var 0)]) }, + { parameters := [0, 1], types := [.nat, (.list .nat)], result := .bool, + body := (.prim .natLe [(.prim .length [(.var 1)]), (.value .nat (.nat 4))]) }, + { parameters := [0, 1, 2], types := [(.adt 2), (.list (.adt 2)), .nat], result := (.list (.adt 2)), + body := (.«match» (.list (.adt 2)) (.call 26 [(.field (.var 0) 0), (.build (.adt 0) (.adt 0) [(.var 2)])]) [(.arm .none [] (.var 1)), (.arm .some [3] (.prim .append [(.var 1), (.build .cons (.list (.adt 2)) [(.build (.adt 0) (.adt 2) [(.var 3), (.prim .append [(.field (.var 0) 1), (.build .cons (.list (.adt 0)) [(.build (.adt 0) (.adt 0) [(.var 2)]), (.build .nil (.list (.adt 0)) [])])])]), (.build .nil (.list (.adt 2)) [])])]))]) }, + { parameters := [0], types := [.nat], result := (.list .nat), + body := (.build .cons (.list .nat) [(.prim .natSub [(.var 0), (.value .nat (.nat 10))]), (.build .cons (.list .nat) [(.prim .natSub [(.var 0), (.value .nat (.nat 20))]), (.build .cons (.list .nat) [(.prim .natSub [(.var 0), (.value .nat (.nat 30))]), (.build .cons (.list .nat) [(.prim .natSub [(.var 0), (.value .nat (.nat 50))]), (.build .nil (.list .nat) [])])])])]) }, + { parameters := [0, 1], types := [(.pair .nat .nat), (.adt 0)], result := (.option (.pair .nat .nat)), + body := (.«match» (.option (.pair .nat .nat)) (.var 1) [(.arm (.adt 0) [2] (.call 27 [(.var 0), (.var 2)]))]) }, + { parameters := [0, 1], types := [(.pair .nat .nat), .nat], result := (.option (.pair .nat .nat)), + body := (.cond (.call 28 [(.var 0), (.var 1)]) (.build .some (.option (.pair .nat .nat)) [(.call 29 [(.var 0), (.var 1)])]) (.build .none (.option (.pair .nat .nat)) [])) }, + { parameters := [0, 1], types := [(.pair .nat .nat), .nat], result := .bool, + body := (.cond (.prim .natEq [(.second (.var 0)), (.value .nat (.nat 0))]) (.prim .natLt [(.value .nat (.nat 0)), (.var 1)]) (.build .false .bool [])) }, + { parameters := [0, 1], types := [(.pair .nat .nat), .nat], result := (.pair .nat .nat), + body := (.build .pair (.pair .nat .nat) [(.first (.var 0)), (.var 1)]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := ((.enum (.adt 0) [{ number := 0, fields := [.nat] }]) :: + (.enum (.adt 1) [{ number := 0, fields := [(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)] }]) :: + (.enum (.adt 2) [{ number := 0, fields := [(.pair .nat .nat), (.list (.adt 0))] }]) :: + (.enum (.adt 3) [{ number := 0, fields := [.nat, .nat, .nat, .nat, .nat, .nat] }]) :: + (.enum (.fn 0) [{ number := 6, fields := [.nat] }]) :: + (.apply 0 [(.adt 1)] (.option (.adt 1)) true [{ function := 6, captures := [.copy], functionFallible := true }]) :: + (.enum (.fn 1) [{ number := 10, fields := [] }, { number := 14, fields := [] }]) :: + (.apply 1 [(.list (.adt 2)), (.adt 2)] (.list (.adt 2)) false [{ function := 10, captures := [], functionFallible := false }, { function := 14, captures := [], functionFallible := false }]) :: + (.enum (.fn 2) [{ number := 21, fields := [(.adt 2)] }]) :: + (.apply 2 [(.list (.adt 2)), .nat] (.list (.adt 2)) false [{ function := 21, captures := [.clone], functionFallible := false }]) :: + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 1)) none (.call (.function 1) [(.copy (.generated .binding 0))] true))] (.matchOn (.move (.generated .holder 1)) [(.mk (.ok (.bind (.generated .binding 1))) (.mk [] (.succeed (.copy (.generated .binding 1))))), (.mk (.err .wild) (.mk [] (.succeed (.lit (.nat 9)))))]))) :: + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible (.result .nat (.pair .bool .bool))) (.mk [(.mk (.bind (.generated .holder 2)) none (.call (.function 2) [(.copy (.generated .binding 0))] true))] (.matchOn (.move (.generated .holder 2)) [(.mk (.ok (.bind (.generated .binding 1))) (.mk [] (.succeed (.construct (.ok .nat (.pair .bool .bool)) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 3))))])))), (.mk (.err (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))]))))]))) :: + (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible (.result (.pair .nat (.list (.adt 0))) (.pair .bool .bool))) (.mk [(.mk (.bind (.generated .binding 1)) (some (.pair (.adt 1) .bool)) (.call (.function 3) [(.copy (.generated .binding 0))] true)), (.mk (.bind (.generated .holder 7)) none (.block (.mk [(.mk (.bind (.generated .holder 6)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 5)), .wild]) none (.clone (.generated .binding 1)))] (.move (.generated .part 5)))))] (.matchOn (.move (.generated .holder 6)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 4)), .wild, .wild]) (.mk [] (.move (.generated .part 4))))]))))] (.matchOn (.move (.generated .holder 7)) [(.mk .none (.mk [] (.succeed (.construct (.err (.pair .nat (.list (.adt 0))) (.pair .bool .bool)) [(.call (.function 4) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 12))]) none (.move (.generated .binding 1)))] (.move (.generated .part 12)))), (.block (.mk [(.mk (.bind (.generated .holder 15)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 14)))))] (.matchOn (.move (.generated .holder 15)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 13)), .wild]) (.mk [] (.move (.generated .part 13))))])))] false)])))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct (.ok (.pair .nat (.list (.adt 0))) (.pair .bool .bool)) [(.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 8)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 8)))) (.block (.mk [(.mk (.bind (.generated .holder 11)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 10))]) none (.move (.generated .binding 2)))] (.move (.generated .part 10)))))] (.matchOn (.move (.generated .holder 11)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 9))]) (.mk [] (.move (.generated .part 9))))]))))]))))]))) :: + (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible (.pair (.adt 1) .bool)) (.mk [] (.call (.function 5) [(.construct (.closure 0 6) [(.copy (.generated .binding 0))]), (.lit (.nat 8)), (.call (.function 7) [(.copy (.generated .binding 0))] false)] false))) :: + (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := .bool }, { pattern := (.bind (.generated .binding 1)), type := .bool }] (.pair .bool .bool) (.mk [] (.cond (.cond (.copy (.generated .binding 0)) (.mk [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 1)))] (.call (.runtime .boolNot) [(.move (.generated .operand 16))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.pair (.lit (.bool false)) (.lit (.bool true)))) (.mk [] (.pair (.lit (.bool false)) (.lit (.bool false))))))) :: + (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := (.adt 1) }] (.fallible (.pair (.adt 1) .bool)) (.mk [(.mk (.bind (.generated .holder 17)) none (.copy (.generated .binding 1)))] (.cond (.isZero (.generated .holder 17)) (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 17))), (.mk (.bind (.generated .holder 19)) none (.block (.mk [(.mk (.bind (.generated .callee 18)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 18) [(.clone (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 19)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 5) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))]))))) :: + (.function (.generated .function 6) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := (.adt 1) }] (.fallible (.option (.adt 1))) (.mk [] (.call (.function 8) [(.copy (.generated .binding 0)), (.move (.generated .binding 1))] false))) :: + (.function (.generated .function 7) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.adt 1) (.mk [(.mk (.bind (.generated .binding 1)) (some (.list (.adt 2))) (.call (.function 9) [(.construct (.closure 1 10) []), (.construct (.nil (.adt 2)) []), (.construct .cons [(.construct (.adt 2 0) [(.call (.function 11) [(.copy (.generated .binding 0))] false), (.construct (.nil (.adt 0)) [])]), (.construct (.nil (.adt 2)) [])])] false))] (.construct (.adt 1 0) [(.clone (.generated .binding 1)), (.construct (.none (.pair .nat (.adt 2))) []), (.block (.mk [(.mk (.bind (.generated .operand 20)) none (.lit (.nat 3))), (.mk (.bind (.generated .operand 21)) none (.lit (.nat 1)))] (.call (.runtime .natLt) [(.move (.generated .operand 20)), (.move (.generated .operand 21))] false))), (.construct (.adt 3 0) [(.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.block (.mk [(.mk (.bind (.generated .operand 22)) none (.move (.generated .binding 1)))] (.call (.runtime .lengthList) [(.move (.generated .operand 22))] false)))])]))) :: + (.function (.generated .function 8) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := (.adt 1) }] (.fallible (.option (.adt 1))) (.mk [(.mk (.bind (.generated .holder 24)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 23)), .wild, .wild]) (.mk [] (.move (.generated .part 23))))]))] (.matchOn (.move (.generated .holder 24)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 26)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [(.bind (.generated .part 25)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 25))))]))] (.matchOn (.uncons (.generated .holder 26)) [(.mk .none (.mk [] (.succeed (.construct (.none (.adt 1)) [])))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [(.mk (.bind (.generated .holder 28)) none (.call (.function 12) [(.copy (.generated .binding 0)), (.matchOn (.clone (.generated .binding 3)) [(.mk (.adt 2 0 [(.bind (.generated .part 27)), .wild]) (.mk [] (.move (.generated .part 27))))])] true))] (.matchOn (.move (.generated .holder 28)) [(.mk .none (.mk [(.mk (.bind (.generated .binding 6)) (some (.list (.adt 2))) (.call (.function 13) [(.clone (.generated .binding 3))] false)), (.mk (.bind (.generated .binding 7)) (some (.list (.adt 2))) (.clone (.generated .binding 6))), (.mk (.bind (.generated .binding 8)) (some (.list (.adt 2))) (.block (.mk [(.mk (.bind (.generated .operand 52)) none (.move (.generated .binding 7))), (.mk (.bind (.generated .operand 53)) none (.move (.generated .binding 4)))] (.call (.runtime .appendList) [(.move (.generated .operand 52)), (.move (.generated .operand 53))] false)))), (.mk (.bind (.generated .binding 9)) (some (.list (.adt 2))) (.call (.function 9) [(.construct (.closure 1 14) []), (.construct (.nil (.adt 2)) []), (.clone (.generated .binding 8))] false))] (.succeed (.construct .some [(.construct (.adt 1 0) [(.clone (.generated .binding 9)), (.construct (.none (.pair .nat (.adt 2))) []), (.cond (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 54)), .wild]) (.mk [] (.move (.generated .part 54))))]) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 56)) none (.lit (.nat 3))), (.mk (.bind (.generated .operand 57)) none (.block (.mk [(.mk (.bind (.generated .operand 55)) none (.move (.generated .binding 8)))] (.call (.runtime .lengthList) [(.move (.generated .operand 55))] false))))] (.call (.runtime .natLt) [(.move (.generated .operand 56)), (.move (.generated .operand 57))] false))), (.construct (.adt 3 0) [(.block (.mk [(.mk (.bind (.generated .operand 61)) none (.block (.mk [(.mk (.bind (.generated .holder 60)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 59))]) (.mk [] (.move (.generated .part 59))))]))] (.matchOn (.move (.generated .holder 60)) [(.mk (.adt 3 0 [(.bind (.generated .part 58)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 58))))])))), (.mk (.bind (.generated .operand 62)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 61)), (.move (.generated .operand 62))] true))), (.block (.mk [(.mk (.bind (.generated .operand 67)) none (.block (.mk [(.mk (.bind (.generated .holder 65)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 64))]) (.mk [] (.move (.generated .part 64))))]))] (.matchOn (.move (.generated .holder 65)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 63)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 63))))])))), (.mk (.bind (.generated .operand 68)) none (.call (.function 15) [(.matchOn (.move (.generated .binding 3)) [(.mk (.adt 2 0 [(.bind (.generated .part 66)), .wild]) (.mk [] (.move (.generated .part 66))))])] false))] (.call (.runtime .natAdd) [(.move (.generated .operand 67)), (.move (.generated .operand 68))] true))), (.block (.mk [(.mk (.bind (.generated .operand 73)) none (.block (.mk [(.mk (.bind (.generated .holder 71)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 70))]) (.mk [] (.move (.generated .part 70))))]))] (.matchOn (.move (.generated .holder 71)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 69)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 69))))])))), (.mk (.bind (.generated .operand 74)) none (.block (.mk [(.mk (.bind (.generated .operand 72)) none (.move (.generated .binding 6)))] (.call (.runtime .lengthList) [(.move (.generated .operand 72))] false))))] (.call (.runtime .natAdd) [(.move (.generated .operand 73)), (.move (.generated .operand 74))] true))), (.block (.mk [(.mk (.bind (.generated .operand 78)) none (.block (.mk [(.mk (.bind (.generated .holder 77)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 76))]) (.mk [] (.move (.generated .part 76))))]))] (.matchOn (.move (.generated .holder 77)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 75)), .wild, .wild]) (.mk [] (.move (.generated .part 75))))])))), (.mk (.bind (.generated .operand 79)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 78)), (.move (.generated .operand 79))] true))), (.block (.mk [(.mk (.bind (.generated .operand 83)) none (.block (.mk [(.mk (.bind (.generated .holder 82)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))]))] (.matchOn (.move (.generated .holder 82)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 80)), .wild]) (.mk [] (.move (.generated .part 80))))])))), (.mk (.bind (.generated .operand 84)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 83)), (.move (.generated .operand 84))] true))), (.block (.mk [(.mk (.bind (.generated .operand 89)) none (.block (.mk [(.mk (.bind (.generated .holder 87)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 86))]) (.mk [] (.move (.generated .part 86))))]))] (.matchOn (.move (.generated .holder 87)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 85))]) (.mk [] (.move (.generated .part 85))))])))), (.mk (.bind (.generated .operand 90)) none (.block (.mk [(.mk (.bind (.generated .operand 88)) none (.clone (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 88))] false))))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 89)), (.move (.generated .operand 90))] false) (.mk [(.mk (.bind (.generated .operand 91)) none (.move (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 91))] false)) (.mk [(.mk (.bind (.generated .holder 94)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 93))]) (.mk [] (.move (.generated .part 93))))]))] (.matchOn (.move (.generated .holder 94)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 92))]) (.mk [] (.move (.generated .part 92))))])))))])])])))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.succeed (.construct .some [(.construct (.adt 1 0) [(.move (.generated .binding 4)), (.construct .some [(.pair (.copy (.generated .binding 5)) (.move (.generated .binding 3)))]), (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 29)), .wild]) (.mk [] (.move (.generated .part 29))))]), (.construct (.adt 3 0) [(.block (.mk [(.mk (.bind (.generated .operand 33)) none (.block (.mk [(.mk (.bind (.generated .holder 32)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 31))]) (.mk [] (.move (.generated .part 31))))]))] (.matchOn (.move (.generated .holder 32)) [(.mk (.adt 3 0 [(.bind (.generated .part 30)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 30))))])))), (.mk (.bind (.generated .operand 34)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] true))), (.block (.mk [(.mk (.bind (.generated .holder 37)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 36))]) (.mk [] (.move (.generated .part 36))))]))] (.matchOn (.move (.generated .holder 37)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 35)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 35))))]))), (.block (.mk [(.mk (.bind (.generated .holder 40)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 39))]) (.mk [] (.move (.generated .part 39))))]))] (.matchOn (.move (.generated .holder 40)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 38)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 38))))]))), (.block (.mk [(.mk (.bind (.generated .holder 43)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 42))]) (.mk [] (.move (.generated .part 42))))]))] (.matchOn (.move (.generated .holder 43)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 41)), .wild, .wild]) (.mk [] (.move (.generated .part 41))))]))), (.block (.mk [(.mk (.bind (.generated .operand 47)) none (.block (.mk [(.mk (.bind (.generated .holder 46)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 45))]) (.mk [] (.move (.generated .part 45))))]))] (.matchOn (.move (.generated .holder 46)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 44)), .wild]) (.mk [] (.move (.generated .part 44))))])))), (.mk (.bind (.generated .operand 48)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 47)), (.move (.generated .operand 48))] true))), (.block (.mk [(.mk (.bind (.generated .holder 51)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 50))]) (.mk [] (.move (.generated .part 50))))]))] (.matchOn (.move (.generated .holder 51)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 49))]) (.mk [] (.move (.generated .part 49))))])))])])]))))])))]))), (.mk (.some .wild) (.mk [] (.succeed (.construct (.none (.adt 1)) []))))]))) :: + (.function (.generated .function 9) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 1) }, { pattern := (.bind (.generated .binding 1)), type := (.list (.adt 2)) }, { pattern := (.bind (.generated .binding 2)), type := (.list (.adt 2)) }] (.list (.adt 2)) (.mk [(.mk (.bind (.generated .holder 95)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 95)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 9) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 96)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 96) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]))) :: + (.function (.generated .function 10) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.adt 2)) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 2) }] (.list (.adt 2)) (.mk [(.mk (.bind (.generated .operand 98)) none (.block (.mk [(.mk (.bind (.generated .operand 97)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthList) [(.move (.generated .operand 97))] false)))), (.mk (.bind (.generated .operand 99)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 98)), (.move (.generated .operand 99))] false) (.mk [(.mk (.bind (.generated .operand 100)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 101)) none (.construct .cons [(.move (.generated .binding 1)), (.construct (.nil (.adt 2)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 100)), (.move (.generated .operand 101))] false)) (.mk [] (.move (.generated .binding 0)))))) :: + (.function (.generated .function 11) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.pair .nat .nat) (.mk [] (.pair (.copy (.generated .binding 0)) (.lit (.nat 0))))) :: + (.function (.generated .function 12) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := (.pair .nat .nat) }] (.fallible (.option .nat)) (.mk [(.mk (.bind (.generated .holder 102)) none (.call (.function 16) [(.copy (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 102)) [(.mk .none (.mk [] (.succeed (.construct (.none .nat) [])))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.cond (.call (.function 17) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] true) (.mk [] (.succeed (.construct .some [(.copy (.generated .binding 2))]))) (.mk [] (.succeed (.construct (.none .nat) []))))))]))) :: + (.function (.generated .function 13) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 2) }] (.list (.adt 2)) (.mk [] (.call (.function 18) [(.move (.generated .binding 0))] false))) :: + (.function (.generated .function 14) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.adt 2)) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 2) }] (.list (.adt 2)) (.mk [(.mk (.bind (.generated .operand 104)) none (.block (.mk [(.mk (.bind (.generated .operand 103)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthList) [(.move (.generated .operand 103))] false)))), (.mk (.bind (.generated .operand 105)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 104)), (.move (.generated .operand 105))] false) (.mk [(.mk (.bind (.generated .operand 106)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 107)) none (.construct .cons [(.move (.generated .binding 1)), (.construct (.nil (.adt 2)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 106)), (.move (.generated .operand 107))] false)) (.mk [] (.move (.generated .binding 0)))))) :: + (.function (.generated .function 15) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }] .nat (.mk [(.mk (.bind (.generated .operand 108)) none (.call (.function 19) [(.copy (.generated .binding 0))] false))] (.call (.runtime .lengthList) [(.move (.generated .operand 108))] false))) :: + (.function (.generated .function 16) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }] (.option .nat) (.mk [(.mk (.bind (.generated .operand 110)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 111)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 109))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 109)))))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 110)), (.move (.generated .operand 111))] false) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 112))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 112))))])) (.mk [] (.construct (.none .nat) []))))) :: + (.function (.generated .function 17) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .bool) (.mk [(.mk (.bind (.generated .operand 115)) none (.block (.mk [(.mk (.bind (.generated .operand 113)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 114)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 113)), (.move (.generated .operand 114))] true)))), (.mk (.bind (.generated .operand 116)) none (.copy (.generated .binding 0)))] (.succeed (.call (.runtime .natLe) [(.move (.generated .operand 115)), (.move (.generated .operand 116))] false)))) :: + (.function (.generated .function 18) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 2) }] (.list (.adt 2)) (.mk [] (.call (.function 20) [(.construct (.closure 2 21) [(.clone (.generated .binding 0))]), (.construct (.nil (.adt 2)) []), (.call (.function 19) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [(.bind (.generated .part 117)), .wild]) (.mk [] (.move (.generated .part 117))))])] false)] false))) :: + (.function (.generated .function 19) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 119)) none (.block (.mk [(.mk (.bind (.generated .binding 1)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 118)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 118))))), (.mk (.bind (.generated .binding 2)) (some (.list .nat)) (.call (.function 22) [(.copy (.generated .binding 1))] false))] (.cond (.call (.function 23) [(.copy (.generated .binding 1)), (.clone (.generated .binding 2))] false) (.mk [] (.construct (.ok (.list .nat) (.pair .bool .bool)) [(.move (.generated .binding 2))])) (.mk [] (.construct (.err (.list .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))]))))))] (.matchOn (.move (.generated .holder 119)) [(.mk (.ok (.bind (.generated .binding 3))) (.mk [] (.move (.generated .binding 3)))), (.mk (.err .wild) (.mk [] (.construct (.nil .nat) [])))]))) :: + (.function (.generated .function 20) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 2) }, { pattern := (.bind (.generated .binding 1)), type := (.list (.adt 2)) }, { pattern := (.bind (.generated .binding 2)), type := (.list .nat) }] (.list (.adt 2)) (.mk [(.mk (.bind (.generated .holder 120)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 120)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 20) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 121)) (some (.fn 2)) (.move (.generated .binding 0)))] (.apply (.generated .callee 121) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]))) :: + (.function (.generated .function 21) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 2) }, { pattern := (.bind (.generated .binding 1)), type := (.list (.adt 2)) }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.list (.adt 2)) (.mk [] (.call (.function 24) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 2))] false))) :: + (.function (.generated .function 22) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.list .nat) (.mk [] (.call (.function 25) [(.copy (.generated .binding 0))] false))) :: + (.function (.generated .function 23) [{ pattern := .wild, type := .nat }, { pattern := (.bind (.generated .binding 1)), type := (.list .nat) }] .bool (.mk [(.mk (.bind (.generated .operand 123)) none (.block (.mk [(.mk (.bind (.generated .operand 122)) none (.move (.generated .binding 1)))] (.call (.runtime .lengthList) [(.move (.generated .operand 122))] false)))), (.mk (.bind (.generated .operand 124)) none (.lit (.nat 4)))] (.call (.runtime .natLe) [(.move (.generated .operand 123)), (.move (.generated .operand 124))] false))) :: + (.function (.generated .function 24) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 2) }, { pattern := (.bind (.generated .binding 1)), type := (.list (.adt 2)) }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.list (.adt 2)) (.mk [(.mk (.bind (.generated .holder 126)) none (.call (.function 26) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [(.bind (.generated .part 125)), .wild]) (.mk [] (.move (.generated .part 125))))]), (.construct (.adt 0 0) [(.copy (.generated .binding 2))])] false))] (.matchOn (.move (.generated .holder 126)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.bind (.generated .binding 3))) (.mk [(.mk (.bind (.generated .operand 130)) none (.move (.generated .binding 1))), (.mk (.bind (.generated .operand 131)) none (.construct .cons [(.construct (.adt 2 0) [(.copy (.generated .binding 3)), (.block (.mk [(.mk (.bind (.generated .operand 128)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 127))]) (.mk [] (.move (.generated .part 127))))])), (.mk (.bind (.generated .operand 129)) none (.construct .cons [(.construct (.adt 0 0) [(.copy (.generated .binding 2))]), (.construct (.nil (.adt 0)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 128)), (.move (.generated .operand 129))] false)))]), (.construct (.nil (.adt 2)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 130)), (.move (.generated .operand 131))] false)))]))) :: + (.function (.generated .function 25) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.list .nat) (.mk [] (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 132)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 133)) none (.lit (.nat 10)))] (.call (.runtime .natSub) [(.move (.generated .operand 132)), (.move (.generated .operand 133))] false))), (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 134)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 135)) none (.lit (.nat 20)))] (.call (.runtime .natSub) [(.move (.generated .operand 134)), (.move (.generated .operand 135))] false))), (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 136)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 137)) none (.lit (.nat 30)))] (.call (.runtime .natSub) [(.move (.generated .operand 136)), (.move (.generated .operand 137))] false))), (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 138)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 139)) none (.lit (.nat 50)))] (.call (.runtime .natSub) [(.move (.generated .operand 138)), (.move (.generated .operand 139))] false))), (.construct (.nil .nat) [])])])])]))) :: + (.function (.generated .function 26) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 0) }] (.option (.pair .nat .nat)) (.mk [(.mk (.bind (.generated .holder 140)) none (.move (.generated .binding 1)))] (.matchOn (.move (.generated .holder 140)) [(.mk (.adt 0 0 [(.bind (.generated .binding 2))]) (.mk [] (.call (.function 27) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] false)))]))) :: + (.function (.generated .function 27) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.option (.pair .nat .nat)) (.mk [] (.cond (.call (.function 28) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false) (.mk [] (.construct .some [(.call (.function 29) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false)])) (.mk [] (.construct (.none (.pair .nat .nat)) []))))) :: + (.function (.generated .function 28) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .operand 142)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 141))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 141))))), (.mk (.bind (.generated .operand 143)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 142)), (.move (.generated .operand 143))] false) (.mk [(.mk (.bind (.generated .operand 144)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 145)) none (.copy (.generated .binding 1)))] (.call (.runtime .natLt) [(.move (.generated .operand 144)), (.move (.generated .operand 145))] false)) (.mk [] (.lit (.bool false)))))) :: + (.function (.generated .function 29) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.pair .nat .nat) (.mk [] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 146)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 146)))) (.copy (.generated .binding 1))))) :: + []) } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [(([(.adt 1)], (.option (.adt 1))), true), (([(.list (.adt 2)), (.adt 2)], (.list (.adt 2))), false), (([(.list (.adt 2)), .nat], (.list (.adt 2))), false)] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.call (.function 1) [(.copy (.generated .binding 0))] true))], (.matchOn (.move (.generated .holder 1)) [(.mk (.ok (.bind (.generated .binding 1))) (.mk [] (.succeed (.copy (.generated .binding 1))))), (.mk (.err .wild) (.mk [] (.succeed (.lit (.nat 9)))))]), [(0, .nat, (some 0))], rfl, rfl, + (Corr.matchArms (st := (.result .nat (.pair .bool .bool))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, .nat, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.copy (.generated .binding 1)))) (Corr.mCons (Γ' := [(2, (.pair .bool .bool), none), (0, .nat, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.lit (.nat 9)))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl)))) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 2)) none (.call (.function 2) [(.copy (.generated .binding 0))] true))], (.matchOn (.move (.generated .holder 2)) [(.mk (.ok (.bind (.generated .binding 1))) (.mk [] (.succeed (.construct (.ok .nat (.pair .bool .bool)) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 3))))])))), (.mk (.err (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))]))))]), [(0, .nat, (some 0))], rfl, rfl, + (Corr.matchArms (st := (.result (.pair .nat (.list (.adt 0))) (.pair .bool .bool))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.pair .nat (.list (.adt 0))), (some 1)), (0, .nat, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct (.ok .nat (.pair .bool .bool)) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 3))))]))) (Corr.mCons (Γ' := [(2, (.pair .bool .bool), (some 2)), (0, .nat, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 3))) (Corr.first (ta := .nat) (tb := (.list (.adt 0))) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl))) rfl rfl rfl)⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some (.pair (.adt 1) .bool)) (.call (.function 3) [(.copy (.generated .binding 0))] true)), (.mk (.bind (.generated .holder 7)) none (.block (.mk [(.mk (.bind (.generated .holder 6)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 5)), .wild]) none (.clone (.generated .binding 1)))] (.move (.generated .part 5)))))] (.matchOn (.move (.generated .holder 6)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 4)), .wild, .wild]) (.mk [] (.move (.generated .part 4))))]))))], (.matchOn (.move (.generated .holder 7)) [(.mk .none (.mk [] (.succeed (.construct (.err (.pair .nat (.list (.adt 0))) (.pair .bool .bool)) [(.call (.function 4) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 12))]) none (.move (.generated .binding 1)))] (.move (.generated .part 12)))), (.block (.mk [(.mk (.bind (.generated .holder 15)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 14)))))] (.matchOn (.move (.generated .holder 15)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 13)), .wild]) (.mk [] (.move (.generated .part 13))))])))] false)])))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct (.ok (.pair .nat (.list (.adt 0))) (.pair .bool .bool)) [(.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 8)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 8)))) (.block (.mk [(.mk (.bind (.generated .holder 11)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 10))]) none (.move (.generated .binding 2)))] (.move (.generated .part 10)))))] (.matchOn (.move (.generated .holder 11)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 9))]) (.mk [] (.move (.generated .part 9))))]))))]))))]), [(0, .nat, (some 0))], rfl, rfl, + (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.matchArms (st := (.option (.pair .nat (.adt 2)))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 6)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 5)), .wild]) none (.clone (.generated .binding 1)))] (.move (.generated .part 5)))))]) (tail := (.matchOn (.move (.generated .holder 6)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 4)), .wild, .wild]) (.mk [] (.move (.generated .part 4))))])) (Corr.fieldHeld (ts := [(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 4))) (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 5)), .wild]) none (.clone (.generated .binding 1)))]) (tail := (.move (.generated .part 5))) (Corr.first (ta := (.adt 1)) (tb := .bool) (Corr.var rfl rfl) rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.pair (.adt 1) .bool), (some 1)), (0, .nat, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.construct (.err (.pair .nat (.list (.adt 0))) (.pair .bool .bool)) [(.call (.function 4) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 12))]) none (.move (.generated .binding 1)))] (.move (.generated .part 12)))), (.block (.mk [(.mk (.bind (.generated .holder 15)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 14)))))] (.matchOn (.move (.generated .holder 15)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 13)), .wild]) (.mk [] (.move (.generated .part 13))))])))] false)]))) (Corr.mCons (Γ' := [(2, (.pair .nat (.adt 2)), (some 2)), (1, (.pair (.adt 1) .bool), (some 1)), (0, .nat, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct (.ok (.pair .nat (.list (.adt 0))) (.pair .bool .bool)) [(.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 8)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 8)))) (.block (.mk [(.mk (.bind (.generated .holder 11)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 10))]) none (.move (.generated .binding 2)))] (.move (.generated .part 10)))))] (.matchOn (.move (.generated .holder 11)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 9))]) (.mk [] (.move (.generated .part 9))))]))))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.pair .nat (.list (.adt 0)))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 8)), .wild]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 8))) (Corr.first (ta := .nat) (tb := (.adt 2)) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 11)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 10))]) none (.move (.generated .binding 2)))] (.move (.generated .part 10)))))]) (tail := (.matchOn (.move (.generated .holder 11)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 9))]) (.mk [] (.move (.generated .part 9))))])) (Corr.fieldHeld (ts := [(.pair .nat .nat), (.list (.adt 0))]) (rd := (.move (.generated .part 9))) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 10))]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 10))) (Corr.second (ta := .nat) (tb := (.adt 2)) (Corr.var rfl rfl) rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bool, .bool]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 12))]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 12))) (Corr.second (ta := (.adt 1)) (tb := .bool) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 15)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 14)))))]) (tail := (.matchOn (.move (.generated .holder 15)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 13)), .wild]) (.mk [] (.move (.generated .part 13))))])) (Corr.fieldHeld (ts := [(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 13))) (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 14))) (Corr.first (ta := (.adt 1)) (tb := .bool) (Corr.var rfl rfl) rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl))) rfl rfl rfl))⟩⟩ + +theorem fun3 : FunOK program krate flags 3 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 5) [(.construct (.closure 0 6) [(.copy (.generated .binding 0))]), (.lit (.nat 8)), (.call (.function 7) [(.copy (.generated .binding 0))] false)] false), [(0, .nat, (some 0))], rfl, rfl, + (Corr.callF (ts := [(.fn [(.adt 1)] (.option (.adt 1))), .nat, (.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [.nat]) (mask := [false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl)⟩⟩ + +theorem fun4 : FunOK program krate flags 4 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.cond (.copy (.generated .binding 0)) (.mk [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 1)))] (.call (.runtime .boolNot) [(.move (.generated .operand 16))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.pair (.lit (.bool false)) (.lit (.bool true)))) (.mk [] (.pair (.lit (.bool false)) (.lit (.bool false))))), [(1, .bool, (some 1)), (0, .bool, (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.cond (.copy (.generated .binding 0)) (.mk [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 1)))] (.call (.runtime .boolNot) [(.move (.generated .operand 16))] false)) (.mk [] (.lit (.bool false))))) (lk := []) (Corr.cond (lc := []) (ce := (.copy (.generated .binding 0))) (lk := []) (Corr.bOfE (Corr.var rfl rfl)) (Corr.kIf (la := [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 1)))]) (ta := (.call (.runtime .boolNot) [(.move (.generated .operand 16))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.bool]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.kIf (la := []) (ta := (.pair (.lit (.bool false)) (.lit (.bool true)))) (lb := []) (tb := (.pair (.lit (.bool false)) (.lit (.bool false)))) (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))))) (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))))))⟩⟩ + +theorem fun5 : FunOK program krate flags 5 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 17)) none (.copy (.generated .binding 1)))], (.cond (.isZero (.generated .holder 17)) (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 17))), (.mk (.bind (.generated .holder 19)) none (.block (.mk [(.mk (.bind (.generated .callee 18)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 18) [(.clone (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 19)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 5) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))]))), [(2, (.adt 1), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.adt 1)] (.option (.adt 1))), (some 0))], rfl, rfl, + (Corr.matchNat (sl := (some 3)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (lb := [(.mk (.bind (.generated .holder 19)) none (.block (.mk [(.mk (.bind (.generated .callee 18)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 18) [(.clone (.generated .binding 2))] true))))]) (tb := (.matchOn (.move (.generated .holder 19)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 5) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))])) (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))))) (Corr.matchArms (st := (.option (.adt 1))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 18)) (some (.fn 0)) (.clone (.generated .binding 0)))]) (tail := (.apply (.generated .callee 18) [(.clone (.generated .binding 2))] true)) (Corr.apply (ps := [(.adt 1)]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (2, (.adt 1), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.adt 1)] (.option (.adt 1))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true))))) (Corr.mCons (Γ' := [(4, (.adt 1), (some 4)), (3, .nat, (some 3)), (2, (.adt 1), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.adt 1)] (.option (.adt 1))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 5) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.adt 1)] (.option (.adt 1))), .nat, (.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))))))) rfl rfl rfl)))⟩⟩ + +theorem fun6 : FunOK program krate flags 6 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 8) [(.copy (.generated .binding 0)), (.move (.generated .binding 1))] false), [(1, (.adt 1), (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.callF (ts := [.nat, (.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)⟩⟩ + +theorem fun7 : FunOK program krate flags 7 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some (.list (.adt 2))) (.call (.function 9) [(.construct (.closure 1 10) []), (.construct (.nil (.adt 2)) []), (.construct .cons [(.construct (.adt 2 0) [(.call (.function 11) [(.copy (.generated .binding 0))] false), (.construct (.nil (.adt 0)) [])]), (.construct (.nil (.adt 2)) [])])] false))], (.construct (.adt 1 0) [(.clone (.generated .binding 1)), (.construct (.none (.pair .nat (.adt 2))) []), (.block (.mk [(.mk (.bind (.generated .operand 20)) none (.lit (.nat 3))), (.mk (.bind (.generated .operand 21)) none (.lit (.nat 1)))] (.call (.runtime .natLt) [(.move (.generated .operand 20)), (.move (.generated .operand 21))] false))), (.construct (.adt 3 0) [(.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.block (.mk [(.mk (.bind (.generated .operand 22)) none (.move (.generated .binding 1)))] (.call (.runtime .lengthList) [(.move (.generated .operand 22))] false)))])]), [(0, .nat, (some 0))], rfl, rfl, + (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.list (.adt 2)), (.adt 2)] (.list (.adt 2))), (.list (.adt 2)), (.list (.adt 2))]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := false) (ff := false) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.adt 2), (.list (.adt 2))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.pair .nat .nat), (.list (.adt 0))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl (Corr.build (ts := [(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]) (mask := [false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 20)) none (.lit (.nat 3))), (.mk (.bind (.generated .operand 21)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natLt) [(.move (.generated .operand 20)), (.move (.generated .operand 21))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 22)) none (.move (.generated .binding 1)))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 22))] false)) (Corr.prim (ts := [(.list (.adt 2))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))))))) rfl)) (Corr.lNil)))))) rfl))⟩⟩ + +theorem fun8 : FunOK program krate flags 8 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 24)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 23)), .wild, .wild]) (.mk [] (.move (.generated .part 23))))]))], (.matchOn (.move (.generated .holder 24)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 26)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [(.bind (.generated .part 25)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 25))))]))] (.matchOn (.uncons (.generated .holder 26)) [(.mk .none (.mk [] (.succeed (.construct (.none (.adt 1)) [])))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [(.mk (.bind (.generated .holder 28)) none (.call (.function 12) [(.copy (.generated .binding 0)), (.matchOn (.clone (.generated .binding 3)) [(.mk (.adt 2 0 [(.bind (.generated .part 27)), .wild]) (.mk [] (.move (.generated .part 27))))])] true))] (.matchOn (.move (.generated .holder 28)) [(.mk .none (.mk [(.mk (.bind (.generated .binding 6)) (some (.list (.adt 2))) (.call (.function 13) [(.clone (.generated .binding 3))] false)), (.mk (.bind (.generated .binding 7)) (some (.list (.adt 2))) (.clone (.generated .binding 6))), (.mk (.bind (.generated .binding 8)) (some (.list (.adt 2))) (.block (.mk [(.mk (.bind (.generated .operand 52)) none (.move (.generated .binding 7))), (.mk (.bind (.generated .operand 53)) none (.move (.generated .binding 4)))] (.call (.runtime .appendList) [(.move (.generated .operand 52)), (.move (.generated .operand 53))] false)))), (.mk (.bind (.generated .binding 9)) (some (.list (.adt 2))) (.call (.function 9) [(.construct (.closure 1 14) []), (.construct (.nil (.adt 2)) []), (.clone (.generated .binding 8))] false))] (.succeed (.construct .some [(.construct (.adt 1 0) [(.clone (.generated .binding 9)), (.construct (.none (.pair .nat (.adt 2))) []), (.cond (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 54)), .wild]) (.mk [] (.move (.generated .part 54))))]) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 56)) none (.lit (.nat 3))), (.mk (.bind (.generated .operand 57)) none (.block (.mk [(.mk (.bind (.generated .operand 55)) none (.move (.generated .binding 8)))] (.call (.runtime .lengthList) [(.move (.generated .operand 55))] false))))] (.call (.runtime .natLt) [(.move (.generated .operand 56)), (.move (.generated .operand 57))] false))), (.construct (.adt 3 0) [(.block (.mk [(.mk (.bind (.generated .operand 61)) none (.block (.mk [(.mk (.bind (.generated .holder 60)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 59))]) (.mk [] (.move (.generated .part 59))))]))] (.matchOn (.move (.generated .holder 60)) [(.mk (.adt 3 0 [(.bind (.generated .part 58)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 58))))])))), (.mk (.bind (.generated .operand 62)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 61)), (.move (.generated .operand 62))] true))), (.block (.mk [(.mk (.bind (.generated .operand 67)) none (.block (.mk [(.mk (.bind (.generated .holder 65)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 64))]) (.mk [] (.move (.generated .part 64))))]))] (.matchOn (.move (.generated .holder 65)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 63)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 63))))])))), (.mk (.bind (.generated .operand 68)) none (.call (.function 15) [(.matchOn (.move (.generated .binding 3)) [(.mk (.adt 2 0 [(.bind (.generated .part 66)), .wild]) (.mk [] (.move (.generated .part 66))))])] false))] (.call (.runtime .natAdd) [(.move (.generated .operand 67)), (.move (.generated .operand 68))] true))), (.block (.mk [(.mk (.bind (.generated .operand 73)) none (.block (.mk [(.mk (.bind (.generated .holder 71)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 70))]) (.mk [] (.move (.generated .part 70))))]))] (.matchOn (.move (.generated .holder 71)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 69)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 69))))])))), (.mk (.bind (.generated .operand 74)) none (.block (.mk [(.mk (.bind (.generated .operand 72)) none (.move (.generated .binding 6)))] (.call (.runtime .lengthList) [(.move (.generated .operand 72))] false))))] (.call (.runtime .natAdd) [(.move (.generated .operand 73)), (.move (.generated .operand 74))] true))), (.block (.mk [(.mk (.bind (.generated .operand 78)) none (.block (.mk [(.mk (.bind (.generated .holder 77)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 76))]) (.mk [] (.move (.generated .part 76))))]))] (.matchOn (.move (.generated .holder 77)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 75)), .wild, .wild]) (.mk [] (.move (.generated .part 75))))])))), (.mk (.bind (.generated .operand 79)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 78)), (.move (.generated .operand 79))] true))), (.block (.mk [(.mk (.bind (.generated .operand 83)) none (.block (.mk [(.mk (.bind (.generated .holder 82)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))]))] (.matchOn (.move (.generated .holder 82)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 80)), .wild]) (.mk [] (.move (.generated .part 80))))])))), (.mk (.bind (.generated .operand 84)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 83)), (.move (.generated .operand 84))] true))), (.block (.mk [(.mk (.bind (.generated .operand 89)) none (.block (.mk [(.mk (.bind (.generated .holder 87)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 86))]) (.mk [] (.move (.generated .part 86))))]))] (.matchOn (.move (.generated .holder 87)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 85))]) (.mk [] (.move (.generated .part 85))))])))), (.mk (.bind (.generated .operand 90)) none (.block (.mk [(.mk (.bind (.generated .operand 88)) none (.clone (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 88))] false))))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 89)), (.move (.generated .operand 90))] false) (.mk [(.mk (.bind (.generated .operand 91)) none (.move (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 91))] false)) (.mk [(.mk (.bind (.generated .holder 94)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 93))]) (.mk [] (.move (.generated .part 93))))]))] (.matchOn (.move (.generated .holder 94)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 92))]) (.mk [] (.move (.generated .part 92))))])))))])])])))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.succeed (.construct .some [(.construct (.adt 1 0) [(.move (.generated .binding 4)), (.construct .some [(.pair (.copy (.generated .binding 5)) (.move (.generated .binding 3)))]), (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 29)), .wild]) (.mk [] (.move (.generated .part 29))))]), (.construct (.adt 3 0) [(.block (.mk [(.mk (.bind (.generated .operand 33)) none (.block (.mk [(.mk (.bind (.generated .holder 32)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 31))]) (.mk [] (.move (.generated .part 31))))]))] (.matchOn (.move (.generated .holder 32)) [(.mk (.adt 3 0 [(.bind (.generated .part 30)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 30))))])))), (.mk (.bind (.generated .operand 34)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] true))), (.block (.mk [(.mk (.bind (.generated .holder 37)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 36))]) (.mk [] (.move (.generated .part 36))))]))] (.matchOn (.move (.generated .holder 37)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 35)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 35))))]))), (.block (.mk [(.mk (.bind (.generated .holder 40)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 39))]) (.mk [] (.move (.generated .part 39))))]))] (.matchOn (.move (.generated .holder 40)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 38)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 38))))]))), (.block (.mk [(.mk (.bind (.generated .holder 43)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 42))]) (.mk [] (.move (.generated .part 42))))]))] (.matchOn (.move (.generated .holder 43)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 41)), .wild, .wild]) (.mk [] (.move (.generated .part 41))))]))), (.block (.mk [(.mk (.bind (.generated .operand 47)) none (.block (.mk [(.mk (.bind (.generated .holder 46)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 45))]) (.mk [] (.move (.generated .part 45))))]))] (.matchOn (.move (.generated .holder 46)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 44)), .wild]) (.mk [] (.move (.generated .part 44))))])))), (.mk (.bind (.generated .operand 48)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 47)), (.move (.generated .operand 48))] true))), (.block (.mk [(.mk (.bind (.generated .holder 51)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 50))]) (.mk [] (.move (.generated .part 50))))]))] (.matchOn (.move (.generated .holder 51)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 49))]) (.mk [] (.move (.generated .part 49))))])))])])]))))])))]))), (.mk (.some .wild) (.mk [] (.succeed (.construct (.none (.adt 1)) []))))]), [(1, (.adt 1), (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option (.pair .nat (.adt 2)))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 23))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.adt 1), (some 1)), (0, .nat, (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 26)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [(.bind (.generated .part 25)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 25))))]))]) (tail := (.matchOn (.uncons (.generated .holder 26)) [(.mk .none (.mk [] (.succeed (.construct (.none (.adt 1)) [])))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [(.mk (.bind (.generated .holder 28)) none (.call (.function 12) [(.copy (.generated .binding 0)), (.matchOn (.clone (.generated .binding 3)) [(.mk (.adt 2 0 [(.bind (.generated .part 27)), .wild]) (.mk [] (.move (.generated .part 27))))])] true))] (.matchOn (.move (.generated .holder 28)) [(.mk .none (.mk [(.mk (.bind (.generated .binding 6)) (some (.list (.adt 2))) (.call (.function 13) [(.clone (.generated .binding 3))] false)), (.mk (.bind (.generated .binding 7)) (some (.list (.adt 2))) (.clone (.generated .binding 6))), (.mk (.bind (.generated .binding 8)) (some (.list (.adt 2))) (.block (.mk [(.mk (.bind (.generated .operand 52)) none (.move (.generated .binding 7))), (.mk (.bind (.generated .operand 53)) none (.move (.generated .binding 4)))] (.call (.runtime .appendList) [(.move (.generated .operand 52)), (.move (.generated .operand 53))] false)))), (.mk (.bind (.generated .binding 9)) (some (.list (.adt 2))) (.call (.function 9) [(.construct (.closure 1 14) []), (.construct (.nil (.adt 2)) []), (.clone (.generated .binding 8))] false))] (.succeed (.construct .some [(.construct (.adt 1 0) [(.clone (.generated .binding 9)), (.construct (.none (.pair .nat (.adt 2))) []), (.cond (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 54)), .wild]) (.mk [] (.move (.generated .part 54))))]) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 56)) none (.lit (.nat 3))), (.mk (.bind (.generated .operand 57)) none (.block (.mk [(.mk (.bind (.generated .operand 55)) none (.move (.generated .binding 8)))] (.call (.runtime .lengthList) [(.move (.generated .operand 55))] false))))] (.call (.runtime .natLt) [(.move (.generated .operand 56)), (.move (.generated .operand 57))] false))), (.construct (.adt 3 0) [(.block (.mk [(.mk (.bind (.generated .operand 61)) none (.block (.mk [(.mk (.bind (.generated .holder 60)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 59))]) (.mk [] (.move (.generated .part 59))))]))] (.matchOn (.move (.generated .holder 60)) [(.mk (.adt 3 0 [(.bind (.generated .part 58)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 58))))])))), (.mk (.bind (.generated .operand 62)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 61)), (.move (.generated .operand 62))] true))), (.block (.mk [(.mk (.bind (.generated .operand 67)) none (.block (.mk [(.mk (.bind (.generated .holder 65)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 64))]) (.mk [] (.move (.generated .part 64))))]))] (.matchOn (.move (.generated .holder 65)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 63)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 63))))])))), (.mk (.bind (.generated .operand 68)) none (.call (.function 15) [(.matchOn (.move (.generated .binding 3)) [(.mk (.adt 2 0 [(.bind (.generated .part 66)), .wild]) (.mk [] (.move (.generated .part 66))))])] false))] (.call (.runtime .natAdd) [(.move (.generated .operand 67)), (.move (.generated .operand 68))] true))), (.block (.mk [(.mk (.bind (.generated .operand 73)) none (.block (.mk [(.mk (.bind (.generated .holder 71)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 70))]) (.mk [] (.move (.generated .part 70))))]))] (.matchOn (.move (.generated .holder 71)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 69)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 69))))])))), (.mk (.bind (.generated .operand 74)) none (.block (.mk [(.mk (.bind (.generated .operand 72)) none (.move (.generated .binding 6)))] (.call (.runtime .lengthList) [(.move (.generated .operand 72))] false))))] (.call (.runtime .natAdd) [(.move (.generated .operand 73)), (.move (.generated .operand 74))] true))), (.block (.mk [(.mk (.bind (.generated .operand 78)) none (.block (.mk [(.mk (.bind (.generated .holder 77)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 76))]) (.mk [] (.move (.generated .part 76))))]))] (.matchOn (.move (.generated .holder 77)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 75)), .wild, .wild]) (.mk [] (.move (.generated .part 75))))])))), (.mk (.bind (.generated .operand 79)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 78)), (.move (.generated .operand 79))] true))), (.block (.mk [(.mk (.bind (.generated .operand 83)) none (.block (.mk [(.mk (.bind (.generated .holder 82)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))]))] (.matchOn (.move (.generated .holder 82)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 80)), .wild]) (.mk [] (.move (.generated .part 80))))])))), (.mk (.bind (.generated .operand 84)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 83)), (.move (.generated .operand 84))] true))), (.block (.mk [(.mk (.bind (.generated .operand 89)) none (.block (.mk [(.mk (.bind (.generated .holder 87)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 86))]) (.mk [] (.move (.generated .part 86))))]))] (.matchOn (.move (.generated .holder 87)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 85))]) (.mk [] (.move (.generated .part 85))))])))), (.mk (.bind (.generated .operand 90)) none (.block (.mk [(.mk (.bind (.generated .operand 88)) none (.clone (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 88))] false))))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 89)), (.move (.generated .operand 90))] false) (.mk [(.mk (.bind (.generated .operand 91)) none (.move (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 91))] false)) (.mk [(.mk (.bind (.generated .holder 94)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 93))]) (.mk [] (.move (.generated .part 93))))]))] (.matchOn (.move (.generated .holder 94)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 92))]) (.mk [] (.move (.generated .part 92))))])))))])])])))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.succeed (.construct .some [(.construct (.adt 1 0) [(.move (.generated .binding 4)), (.construct .some [(.pair (.copy (.generated .binding 5)) (.move (.generated .binding 3)))]), (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 29)), .wild]) (.mk [] (.move (.generated .part 29))))]), (.construct (.adt 3 0) [(.block (.mk [(.mk (.bind (.generated .operand 33)) none (.block (.mk [(.mk (.bind (.generated .holder 32)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 31))]) (.mk [] (.move (.generated .part 31))))]))] (.matchOn (.move (.generated .holder 32)) [(.mk (.adt 3 0 [(.bind (.generated .part 30)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 30))))])))), (.mk (.bind (.generated .operand 34)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] true))), (.block (.mk [(.mk (.bind (.generated .holder 37)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 36))]) (.mk [] (.move (.generated .part 36))))]))] (.matchOn (.move (.generated .holder 37)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 35)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 35))))]))), (.block (.mk [(.mk (.bind (.generated .holder 40)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 39))]) (.mk [] (.move (.generated .part 39))))]))] (.matchOn (.move (.generated .holder 40)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 38)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 38))))]))), (.block (.mk [(.mk (.bind (.generated .holder 43)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 42))]) (.mk [] (.move (.generated .part 42))))]))] (.matchOn (.move (.generated .holder 43)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 41)), .wild, .wild]) (.mk [] (.move (.generated .part 41))))]))), (.block (.mk [(.mk (.bind (.generated .operand 47)) none (.block (.mk [(.mk (.bind (.generated .holder 46)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 45))]) (.mk [] (.move (.generated .part 45))))]))] (.matchOn (.move (.generated .holder 46)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 44)), .wild]) (.mk [] (.move (.generated .part 44))))])))), (.mk (.bind (.generated .operand 48)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 47)), (.move (.generated .operand 48))] true))), (.block (.mk [(.mk (.bind (.generated .holder 51)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 50))]) (.mk [] (.move (.generated .part 50))))]))] (.matchOn (.move (.generated .holder 51)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 49))]) (.mk [] (.move (.generated .part 49))))])))])])]))))])))])) (Corr.mCons (Γ' := [(2, (.pair .nat (.adt 2)), none), (1, (.adt 1), (some 1)), (0, .nat, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct (.none (.adt 1)) []))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl (Corr.matchArms (st := (.list (.adt 2))) (U := []) (view := true) (idx := [0, 1]) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 25))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.adt 1), (some 1)), (0, .nat, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct (.none (.adt 1)) []))) (Corr.mCons (Γ' := [(4, (.list (.adt 2)), (some 4)), (3, (.adt 2), (some 3)), (1, (.adt 1), (some 1)), (0, .nat, (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 28)) none (.call (.function 12) [(.copy (.generated .binding 0)), (.matchOn (.clone (.generated .binding 3)) [(.mk (.adt 2 0 [(.bind (.generated .part 27)), .wild]) (.mk [] (.move (.generated .part 27))))])] true))]) (tail := (.matchOn (.move (.generated .holder 28)) [(.mk .none (.mk [(.mk (.bind (.generated .binding 6)) (some (.list (.adt 2))) (.call (.function 13) [(.clone (.generated .binding 3))] false)), (.mk (.bind (.generated .binding 7)) (some (.list (.adt 2))) (.clone (.generated .binding 6))), (.mk (.bind (.generated .binding 8)) (some (.list (.adt 2))) (.block (.mk [(.mk (.bind (.generated .operand 52)) none (.move (.generated .binding 7))), (.mk (.bind (.generated .operand 53)) none (.move (.generated .binding 4)))] (.call (.runtime .appendList) [(.move (.generated .operand 52)), (.move (.generated .operand 53))] false)))), (.mk (.bind (.generated .binding 9)) (some (.list (.adt 2))) (.call (.function 9) [(.construct (.closure 1 14) []), (.construct (.nil (.adt 2)) []), (.clone (.generated .binding 8))] false))] (.succeed (.construct .some [(.construct (.adt 1 0) [(.clone (.generated .binding 9)), (.construct (.none (.pair .nat (.adt 2))) []), (.cond (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 54)), .wild]) (.mk [] (.move (.generated .part 54))))]) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 56)) none (.lit (.nat 3))), (.mk (.bind (.generated .operand 57)) none (.block (.mk [(.mk (.bind (.generated .operand 55)) none (.move (.generated .binding 8)))] (.call (.runtime .lengthList) [(.move (.generated .operand 55))] false))))] (.call (.runtime .natLt) [(.move (.generated .operand 56)), (.move (.generated .operand 57))] false))), (.construct (.adt 3 0) [(.block (.mk [(.mk (.bind (.generated .operand 61)) none (.block (.mk [(.mk (.bind (.generated .holder 60)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 59))]) (.mk [] (.move (.generated .part 59))))]))] (.matchOn (.move (.generated .holder 60)) [(.mk (.adt 3 0 [(.bind (.generated .part 58)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 58))))])))), (.mk (.bind (.generated .operand 62)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 61)), (.move (.generated .operand 62))] true))), (.block (.mk [(.mk (.bind (.generated .operand 67)) none (.block (.mk [(.mk (.bind (.generated .holder 65)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 64))]) (.mk [] (.move (.generated .part 64))))]))] (.matchOn (.move (.generated .holder 65)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 63)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 63))))])))), (.mk (.bind (.generated .operand 68)) none (.call (.function 15) [(.matchOn (.move (.generated .binding 3)) [(.mk (.adt 2 0 [(.bind (.generated .part 66)), .wild]) (.mk [] (.move (.generated .part 66))))])] false))] (.call (.runtime .natAdd) [(.move (.generated .operand 67)), (.move (.generated .operand 68))] true))), (.block (.mk [(.mk (.bind (.generated .operand 73)) none (.block (.mk [(.mk (.bind (.generated .holder 71)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 70))]) (.mk [] (.move (.generated .part 70))))]))] (.matchOn (.move (.generated .holder 71)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 69)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 69))))])))), (.mk (.bind (.generated .operand 74)) none (.block (.mk [(.mk (.bind (.generated .operand 72)) none (.move (.generated .binding 6)))] (.call (.runtime .lengthList) [(.move (.generated .operand 72))] false))))] (.call (.runtime .natAdd) [(.move (.generated .operand 73)), (.move (.generated .operand 74))] true))), (.block (.mk [(.mk (.bind (.generated .operand 78)) none (.block (.mk [(.mk (.bind (.generated .holder 77)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 76))]) (.mk [] (.move (.generated .part 76))))]))] (.matchOn (.move (.generated .holder 77)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 75)), .wild, .wild]) (.mk [] (.move (.generated .part 75))))])))), (.mk (.bind (.generated .operand 79)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 78)), (.move (.generated .operand 79))] true))), (.block (.mk [(.mk (.bind (.generated .operand 83)) none (.block (.mk [(.mk (.bind (.generated .holder 82)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))]))] (.matchOn (.move (.generated .holder 82)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 80)), .wild]) (.mk [] (.move (.generated .part 80))))])))), (.mk (.bind (.generated .operand 84)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 83)), (.move (.generated .operand 84))] true))), (.block (.mk [(.mk (.bind (.generated .operand 89)) none (.block (.mk [(.mk (.bind (.generated .holder 87)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 86))]) (.mk [] (.move (.generated .part 86))))]))] (.matchOn (.move (.generated .holder 87)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 85))]) (.mk [] (.move (.generated .part 85))))])))), (.mk (.bind (.generated .operand 90)) none (.block (.mk [(.mk (.bind (.generated .operand 88)) none (.clone (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 88))] false))))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 89)), (.move (.generated .operand 90))] false) (.mk [(.mk (.bind (.generated .operand 91)) none (.move (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 91))] false)) (.mk [(.mk (.bind (.generated .holder 94)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 93))]) (.mk [] (.move (.generated .part 93))))]))] (.matchOn (.move (.generated .holder 94)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 92))]) (.mk [] (.move (.generated .part 92))))])))))])])])))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.succeed (.construct .some [(.construct (.adt 1 0) [(.move (.generated .binding 4)), (.construct .some [(.pair (.copy (.generated .binding 5)) (.move (.generated .binding 3)))]), (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 29)), .wild]) (.mk [] (.move (.generated .part 29))))]), (.construct (.adt 3 0) [(.block (.mk [(.mk (.bind (.generated .operand 33)) none (.block (.mk [(.mk (.bind (.generated .holder 32)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 31))]) (.mk [] (.move (.generated .part 31))))]))] (.matchOn (.move (.generated .holder 32)) [(.mk (.adt 3 0 [(.bind (.generated .part 30)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 30))))])))), (.mk (.bind (.generated .operand 34)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] true))), (.block (.mk [(.mk (.bind (.generated .holder 37)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 36))]) (.mk [] (.move (.generated .part 36))))]))] (.matchOn (.move (.generated .holder 37)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 35)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 35))))]))), (.block (.mk [(.mk (.bind (.generated .holder 40)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 39))]) (.mk [] (.move (.generated .part 39))))]))] (.matchOn (.move (.generated .holder 40)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 38)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 38))))]))), (.block (.mk [(.mk (.bind (.generated .holder 43)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 42))]) (.mk [] (.move (.generated .part 42))))]))] (.matchOn (.move (.generated .holder 43)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 41)), .wild, .wild]) (.mk [] (.move (.generated .part 41))))]))), (.block (.mk [(.mk (.bind (.generated .operand 47)) none (.block (.mk [(.mk (.bind (.generated .holder 46)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 45))]) (.mk [] (.move (.generated .part 45))))]))] (.matchOn (.move (.generated .holder 46)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 44)), .wild]) (.mk [] (.move (.generated .part 44))))])))), (.mk (.bind (.generated .operand 48)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 47)), (.move (.generated .operand 48))] true))), (.block (.mk [(.mk (.bind (.generated .holder 51)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 50))]) (.mk [] (.move (.generated .part 50))))]))] (.matchOn (.move (.generated .holder 51)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 49))]) (.mk [] (.move (.generated .part 49))))])))])])]))))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.nat, (.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.pair .nat .nat), (.list (.adt 0))]) (rd := (.move (.generated .part 27))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.list (.adt 2)), (some 4)), (3, (.adt 2), (some 3)), (1, (.adt 1), (some 1)), (0, .nat, (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .binding 6)) (some (.list (.adt 2))) (.call (.function 13) [(.clone (.generated .binding 3))] false)), (.mk (.bind (.generated .binding 7)) (some (.list (.adt 2))) (.clone (.generated .binding 6))), (.mk (.bind (.generated .binding 8)) (some (.list (.adt 2))) (.block (.mk [(.mk (.bind (.generated .operand 52)) none (.move (.generated .binding 7))), (.mk (.bind (.generated .operand 53)) none (.move (.generated .binding 4)))] (.call (.runtime .appendList) [(.move (.generated .operand 52)), (.move (.generated .operand 53))] false)))), (.mk (.bind (.generated .binding 9)) (some (.list (.adt 2))) (.call (.function 9) [(.construct (.closure 1 14) []), (.construct (.nil (.adt 2)) []), (.clone (.generated .binding 8))] false))]) (tail := (.succeed (.construct .some [(.construct (.adt 1 0) [(.clone (.generated .binding 9)), (.construct (.none (.pair .nat (.adt 2))) []), (.cond (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 54)), .wild]) (.mk [] (.move (.generated .part 54))))]) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 56)) none (.lit (.nat 3))), (.mk (.bind (.generated .operand 57)) none (.block (.mk [(.mk (.bind (.generated .operand 55)) none (.move (.generated .binding 8)))] (.call (.runtime .lengthList) [(.move (.generated .operand 55))] false))))] (.call (.runtime .natLt) [(.move (.generated .operand 56)), (.move (.generated .operand 57))] false))), (.construct (.adt 3 0) [(.block (.mk [(.mk (.bind (.generated .operand 61)) none (.block (.mk [(.mk (.bind (.generated .holder 60)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 59))]) (.mk [] (.move (.generated .part 59))))]))] (.matchOn (.move (.generated .holder 60)) [(.mk (.adt 3 0 [(.bind (.generated .part 58)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 58))))])))), (.mk (.bind (.generated .operand 62)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 61)), (.move (.generated .operand 62))] true))), (.block (.mk [(.mk (.bind (.generated .operand 67)) none (.block (.mk [(.mk (.bind (.generated .holder 65)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 64))]) (.mk [] (.move (.generated .part 64))))]))] (.matchOn (.move (.generated .holder 65)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 63)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 63))))])))), (.mk (.bind (.generated .operand 68)) none (.call (.function 15) [(.matchOn (.move (.generated .binding 3)) [(.mk (.adt 2 0 [(.bind (.generated .part 66)), .wild]) (.mk [] (.move (.generated .part 66))))])] false))] (.call (.runtime .natAdd) [(.move (.generated .operand 67)), (.move (.generated .operand 68))] true))), (.block (.mk [(.mk (.bind (.generated .operand 73)) none (.block (.mk [(.mk (.bind (.generated .holder 71)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 70))]) (.mk [] (.move (.generated .part 70))))]))] (.matchOn (.move (.generated .holder 71)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 69)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 69))))])))), (.mk (.bind (.generated .operand 74)) none (.block (.mk [(.mk (.bind (.generated .operand 72)) none (.move (.generated .binding 6)))] (.call (.runtime .lengthList) [(.move (.generated .operand 72))] false))))] (.call (.runtime .natAdd) [(.move (.generated .operand 73)), (.move (.generated .operand 74))] true))), (.block (.mk [(.mk (.bind (.generated .operand 78)) none (.block (.mk [(.mk (.bind (.generated .holder 77)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 76))]) (.mk [] (.move (.generated .part 76))))]))] (.matchOn (.move (.generated .holder 77)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 75)), .wild, .wild]) (.mk [] (.move (.generated .part 75))))])))), (.mk (.bind (.generated .operand 79)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 78)), (.move (.generated .operand 79))] true))), (.block (.mk [(.mk (.bind (.generated .operand 83)) none (.block (.mk [(.mk (.bind (.generated .holder 82)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))]))] (.matchOn (.move (.generated .holder 82)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 80)), .wild]) (.mk [] (.move (.generated .part 80))))])))), (.mk (.bind (.generated .operand 84)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 83)), (.move (.generated .operand 84))] true))), (.block (.mk [(.mk (.bind (.generated .operand 89)) none (.block (.mk [(.mk (.bind (.generated .holder 87)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 86))]) (.mk [] (.move (.generated .part 86))))]))] (.matchOn (.move (.generated .holder 87)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 85))]) (.mk [] (.move (.generated .part 85))))])))), (.mk (.bind (.generated .operand 90)) none (.block (.mk [(.mk (.bind (.generated .operand 88)) none (.clone (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 88))] false))))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 89)), (.move (.generated .operand 90))] false) (.mk [(.mk (.bind (.generated .operand 91)) none (.move (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 91))] false)) (.mk [(.mk (.bind (.generated .holder 94)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 93))]) (.mk [] (.move (.generated .part 93))))]))] (.matchOn (.move (.generated .holder 94)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 92))]) (.mk [] (.move (.generated .part 92))))])))))])])]))) (Corr.mCons (Γ' := [(5, .nat, (some 5)), (4, (.list (.adt 2)), (some 4)), (3, (.adt 2), (some 3)), (1, (.adt 1), (some 1)), (0, .nat, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct .some [(.construct (.adt 1 0) [(.move (.generated .binding 4)), (.construct .some [(.pair (.copy (.generated .binding 5)) (.move (.generated .binding 3)))]), (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 29)), .wild]) (.mk [] (.move (.generated .part 29))))]), (.construct (.adt 3 0) [(.block (.mk [(.mk (.bind (.generated .operand 33)) none (.block (.mk [(.mk (.bind (.generated .holder 32)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 31))]) (.mk [] (.move (.generated .part 31))))]))] (.matchOn (.move (.generated .holder 32)) [(.mk (.adt 3 0 [(.bind (.generated .part 30)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 30))))])))), (.mk (.bind (.generated .operand 34)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] true))), (.block (.mk [(.mk (.bind (.generated .holder 37)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 36))]) (.mk [] (.move (.generated .part 36))))]))] (.matchOn (.move (.generated .holder 37)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 35)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 35))))]))), (.block (.mk [(.mk (.bind (.generated .holder 40)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 39))]) (.mk [] (.move (.generated .part 39))))]))] (.matchOn (.move (.generated .holder 40)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 38)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 38))))]))), (.block (.mk [(.mk (.bind (.generated .holder 43)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 42))]) (.mk [] (.move (.generated .part 42))))]))] (.matchOn (.move (.generated .holder 43)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 41)), .wild, .wild]) (.mk [] (.move (.generated .part 41))))]))), (.block (.mk [(.mk (.bind (.generated .operand 47)) none (.block (.mk [(.mk (.bind (.generated .holder 46)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 45))]) (.mk [] (.move (.generated .part 45))))]))] (.matchOn (.move (.generated .holder 46)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 44)), .wild]) (.mk [] (.move (.generated .part 44))))])))), (.mk (.bind (.generated .operand 48)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 47)), (.move (.generated .operand 48))] true))), (.block (.mk [(.mk (.bind (.generated .holder 51)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 50))]) (.mk [] (.move (.generated .part 50))))]))] (.matchOn (.move (.generated .holder 51)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 49))]) (.mk [] (.move (.generated .part 49))))])))])])]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]) (mask := [false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.pair .nat (.adt 2))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lNil))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 29))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 33)) none (.block (.mk [(.mk (.bind (.generated .holder 32)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 31))]) (.mk [] (.move (.generated .part 31))))]))] (.matchOn (.move (.generated .holder 32)) [(.mk (.adt 3 0 [(.bind (.generated .part 30)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 30))))])))), (.mk (.bind (.generated .operand 34)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 32)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 31))]) (.mk [] (.move (.generated .part 31))))]))]) (tail := (.matchOn (.move (.generated .holder 32)) [(.mk (.adt 3 0 [(.bind (.generated .part 30)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 30))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 30))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 31))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 37)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 36))]) (.mk [] (.move (.generated .part 36))))]))]) (tail := (.matchOn (.move (.generated .holder 37)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 35)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 35))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 35))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 36))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 40)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 39))]) (.mk [] (.move (.generated .part 39))))]))]) (tail := (.matchOn (.move (.generated .holder 40)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 38)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 38))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 38))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 39))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 43)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 42))]) (.mk [] (.move (.generated .part 42))))]))]) (tail := (.matchOn (.move (.generated .holder 43)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 41)), .wild, .wild]) (.mk [] (.move (.generated .part 41))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 41))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 42))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 47)) none (.block (.mk [(.mk (.bind (.generated .holder 46)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 45))]) (.mk [] (.move (.generated .part 45))))]))] (.matchOn (.move (.generated .holder 46)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 44)), .wild]) (.mk [] (.move (.generated .part 44))))])))), (.mk (.bind (.generated .operand 48)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 47)), (.move (.generated .operand 48))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 46)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 45))]) (.mk [] (.move (.generated .part 45))))]))]) (tail := (.matchOn (.move (.generated .holder 46)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 44)), .wild]) (.mk [] (.move (.generated .part 44))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 44))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 45))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 51)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 50))]) (.mk [] (.move (.generated .part 50))))]))]) (tail := (.matchOn (.move (.generated .holder 51)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 49))]) (.mk [] (.move (.generated .part 49))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 49))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 50))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))))))) rfl)) (Corr.lNil)))))) rfl)) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.adt 2)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.var rfl rfl) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 52)) none (.move (.generated .binding 7))), (.mk (.bind (.generated .operand 53)) none (.move (.generated .binding 4)))]) (tail := (.call (.runtime .appendList) [(.move (.generated .operand 52)), (.move (.generated .operand 53))] false)) (Corr.prim (ts := [(.list (.adt 2)), (.list (.adt 2))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.list (.adt 2)), (.adt 2)] (.list (.adt 2))), (.list (.adt 2)), (.list (.adt 2))]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := false) (ff := false) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl (Corr.fOfB (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]) (mask := [false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.cond (lc := []) (ce := (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 54)), .wild]) (.mk [] (.move (.generated .part 54))))])) (lk := []) (Corr.fieldRead (ts := [(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 54))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 56)) none (.lit (.nat 3))), (.mk (.bind (.generated .operand 57)) none (.block (.mk [(.mk (.bind (.generated .operand 55)) none (.move (.generated .binding 8)))] (.call (.runtime .lengthList) [(.move (.generated .operand 55))] false))))]) (tb := (.call (.runtime .natLt) [(.move (.generated .operand 56)), (.move (.generated .operand 57))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 55)) none (.move (.generated .binding 8)))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 55))] false)) (Corr.prim (ts := [(.list (.adt 2))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)))) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 61)) none (.block (.mk [(.mk (.bind (.generated .holder 60)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 59))]) (.mk [] (.move (.generated .part 59))))]))] (.matchOn (.move (.generated .holder 60)) [(.mk (.adt 3 0 [(.bind (.generated .part 58)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 58))))])))), (.mk (.bind (.generated .operand 62)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 61)), (.move (.generated .operand 62))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 60)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 59))]) (.mk [] (.move (.generated .part 59))))]))]) (tail := (.matchOn (.move (.generated .holder 60)) [(.mk (.adt 3 0 [(.bind (.generated .part 58)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 58))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 58))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 59))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 67)) none (.block (.mk [(.mk (.bind (.generated .holder 65)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 64))]) (.mk [] (.move (.generated .part 64))))]))] (.matchOn (.move (.generated .holder 65)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 63)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 63))))])))), (.mk (.bind (.generated .operand 68)) none (.call (.function 15) [(.matchOn (.move (.generated .binding 3)) [(.mk (.adt 2 0 [(.bind (.generated .part 66)), .wild]) (.mk [] (.move (.generated .part 66))))])] false))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 67)), (.move (.generated .operand 68))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 65)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 64))]) (.mk [] (.move (.generated .part 64))))]))]) (tail := (.matchOn (.move (.generated .holder 65)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 63)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 63))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 63))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 64))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.pair .nat .nat), (.list (.adt 0))]) (rd := (.move (.generated .part 66))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 73)) none (.block (.mk [(.mk (.bind (.generated .holder 71)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 70))]) (.mk [] (.move (.generated .part 70))))]))] (.matchOn (.move (.generated .holder 71)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 69)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 69))))])))), (.mk (.bind (.generated .operand 74)) none (.block (.mk [(.mk (.bind (.generated .operand 72)) none (.move (.generated .binding 6)))] (.call (.runtime .lengthList) [(.move (.generated .operand 72))] false))))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 73)), (.move (.generated .operand 74))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 71)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 70))]) (.mk [] (.move (.generated .part 70))))]))]) (tail := (.matchOn (.move (.generated .holder 71)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 69)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 69))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 69))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 70))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 72)) none (.move (.generated .binding 6)))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 72))] false)) (Corr.prim (ts := [(.list (.adt 2))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 78)) none (.block (.mk [(.mk (.bind (.generated .holder 77)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 76))]) (.mk [] (.move (.generated .part 76))))]))] (.matchOn (.move (.generated .holder 77)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 75)), .wild, .wild]) (.mk [] (.move (.generated .part 75))))])))), (.mk (.bind (.generated .operand 79)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 78)), (.move (.generated .operand 79))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 77)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 76))]) (.mk [] (.move (.generated .part 76))))]))]) (tail := (.matchOn (.move (.generated .holder 77)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 75)), .wild, .wild]) (.mk [] (.move (.generated .part 75))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 75))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 76))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 83)) none (.block (.mk [(.mk (.bind (.generated .holder 82)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))]))] (.matchOn (.move (.generated .holder 82)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 80)), .wild]) (.mk [] (.move (.generated .part 80))))])))), (.mk (.bind (.generated .operand 84)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 83)), (.move (.generated .operand 84))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 82)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))]))]) (tail := (.matchOn (.move (.generated .holder 82)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 80)), .wild]) (.mk [] (.move (.generated .part 80))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 80))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 81))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 89)) none (.block (.mk [(.mk (.bind (.generated .holder 87)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 86))]) (.mk [] (.move (.generated .part 86))))]))] (.matchOn (.move (.generated .holder 87)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 85))]) (.mk [] (.move (.generated .part 85))))])))), (.mk (.bind (.generated .operand 90)) none (.block (.mk [(.mk (.bind (.generated .operand 88)) none (.clone (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 88))] false))))]) (tail := (.cond (.call (.runtime .natLt) [(.move (.generated .operand 89)), (.move (.generated .operand 90))] false) (.mk [(.mk (.bind (.generated .operand 91)) none (.move (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 91))] false)) (.mk [(.mk (.bind (.generated .holder 94)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 93))]) (.mk [] (.move (.generated .part 93))))]))] (.matchOn (.move (.generated .holder 94)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 92))]) (.mk [] (.move (.generated .part 92))))])))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 89)) none (.block (.mk [(.mk (.bind (.generated .holder 87)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 86))]) (.mk [] (.move (.generated .part 86))))]))] (.matchOn (.move (.generated .holder 87)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 85))]) (.mk [] (.move (.generated .part 85))))])))), (.mk (.bind (.generated .operand 90)) none (.block (.mk [(.mk (.bind (.generated .operand 88)) none (.clone (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 88))] false))))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 89)), (.move (.generated .operand 90))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 87)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 86))]) (.mk [] (.move (.generated .part 86))))]))]) (tail := (.matchOn (.move (.generated .holder 87)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 85))]) (.mk [] (.move (.generated .part 85))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 85))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 86))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 88)) none (.clone (.generated .binding 9)))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 88))] false)) (Corr.prim (ts := [(.list (.adt 2))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 91)) none (.move (.generated .binding 9)))]) (ta := (.call (.runtime .lengthList) [(.move (.generated .operand 91))] false)) (lb := [(.mk (.bind (.generated .holder 94)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 93))]) (.mk [] (.move (.generated .part 93))))]))]) (tb := (.matchOn (.move (.generated .holder 94)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 92))]) (.mk [] (.move (.generated .part 92))))])) (Corr.prim (ts := [(.list (.adt 2))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 92))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 93))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)))) (Corr.lNil)))))))) rfl)) (Corr.lNil)))))) rfl)) (Corr.lNil))) rfl))))))) rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl)) rfl rfl rfl)⟩⟩ + +theorem fun9 : FunOK program krate flags 9 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 95)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 95)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 9) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 96)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 96) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]), [(2, (.list (.adt 2)), (some 2)), (1, (.list (.adt 2)), (some 1)), (0, (.fn [(.list (.adt 2)), (.adt 2)] (.list (.adt 2))), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list (.adt 2))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.adt 2)), (some 2)), (1, (.list (.adt 2)), (some 1)), (0, (.fn [(.list (.adt 2)), (.adt 2)] (.list (.adt 2))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 1))) (Corr.mCons (Γ' := [(4, (.list (.adt 2)), (some 4)), (3, (.adt 2), (some 3)), (2, (.list (.adt 2)), (some 2)), (1, (.list (.adt 2)), (some 1)), (0, (.fn [(.list (.adt 2)), (.adt 2)] (.list (.adt 2))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 9) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 96)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 96) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.fn [(.list (.adt 2)), (.adt 2)] (.list (.adt 2))), (.list (.adt 2)), (.list (.adt 2))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 96)) (some (.fn 1)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 96) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false)) (Corr.apply (ps := [(.list (.adt 2)), (.adt 2)]) (af := false) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ + +theorem fun10 : FunOK program krate flags 10 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 98)) none (.block (.mk [(.mk (.bind (.generated .operand 97)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthList) [(.move (.generated .operand 97))] false)))), (.mk (.bind (.generated .operand 99)) none (.lit (.nat 3)))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 98)), (.move (.generated .operand 99))] false) (.mk [(.mk (.bind (.generated .operand 100)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 101)) none (.construct .cons [(.move (.generated .binding 1)), (.construct (.nil (.adt 2)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 100)), (.move (.generated .operand 101))] false)) (.mk [] (.move (.generated .binding 0)))), [(1, (.adt 2), (some 1)), (0, (.list (.adt 2)), (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 98)) none (.block (.mk [(.mk (.bind (.generated .operand 97)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthList) [(.move (.generated .operand 97))] false)))), (.mk (.bind (.generated .operand 99)) none (.lit (.nat 3)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 98)), (.move (.generated .operand 99))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 97)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 97))] false)) (Corr.prim (ts := [(.list (.adt 2))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 100)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 101)) none (.construct .cons [(.move (.generated .binding 1)), (.construct (.nil (.adt 2)) [])]))]) (ta := (.call (.runtime .appendList) [(.move (.generated .operand 100)), (.move (.generated .operand 101))] false)) (lb := []) (tb := (.move (.generated .binding 0))) (Corr.prim (ts := [(.list (.adt 2)), (.list (.adt 2))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [(.adt 2), (.list (.adt 2))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.var rfl rfl))))⟩⟩ + +theorem fun11 : FunOK program krate flags 11 := + ⟨_, rfl, .inl ⟨_, _, [], (.pair (.copy (.generated .binding 0)) (.lit (.nat 0))), [(0, .nat, (some 0))], rfl, rfl, + (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))))⟩⟩ + +theorem fun12 : FunOK program krate flags 12 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 102)) none (.call (.function 16) [(.copy (.generated .binding 1))] false))], (.matchOn (.move (.generated .holder 102)) [(.mk .none (.mk [] (.succeed (.construct (.none .nat) [])))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.cond (.call (.function 17) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] true) (.mk [] (.succeed (.construct .some [(.copy (.generated .binding 2))]))) (.mk [] (.succeed (.construct (.none .nat) []))))))]), [(1, (.pair .nat .nat), (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.pair .nat .nat), (some 1)), (0, .nat, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct (.none .nat) []))) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, (.pair .nat .nat), (some 1)), (0, .nat, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 17) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] true) (.mk [] (.succeed (.construct .some [(.copy (.generated .binding 2))]))) (.mk [] (.succeed (.construct (.none .nat) []))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 17) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] true)) (lk := []) (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.copy (.generated .binding 2))]))) (lb := []) (tb := (.succeed (.construct (.none .nat) []))) (Corr.fOfB (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl)⟩⟩ + +theorem fun13 : FunOK program krate flags 13 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 18) [(.move (.generated .binding 0))] false), [(0, (.adt 2), (some 0))], rfl, rfl, + (Corr.callOps (ts := [(.adt 2)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun14 : FunOK program krate flags 14 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 104)) none (.block (.mk [(.mk (.bind (.generated .operand 103)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthList) [(.move (.generated .operand 103))] false)))), (.mk (.bind (.generated .operand 105)) none (.lit (.nat 3)))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 104)), (.move (.generated .operand 105))] false) (.mk [(.mk (.bind (.generated .operand 106)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 107)) none (.construct .cons [(.move (.generated .binding 1)), (.construct (.nil (.adt 2)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 106)), (.move (.generated .operand 107))] false)) (.mk [] (.move (.generated .binding 0)))), [(1, (.adt 2), (some 1)), (0, (.list (.adt 2)), (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 104)) none (.block (.mk [(.mk (.bind (.generated .operand 103)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthList) [(.move (.generated .operand 103))] false)))), (.mk (.bind (.generated .operand 105)) none (.lit (.nat 3)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 104)), (.move (.generated .operand 105))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 103)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 103))] false)) (Corr.prim (ts := [(.list (.adt 2))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 106)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 107)) none (.construct .cons [(.move (.generated .binding 1)), (.construct (.nil (.adt 2)) [])]))]) (ta := (.call (.runtime .appendList) [(.move (.generated .operand 106)), (.move (.generated .operand 107))] false)) (lb := []) (tb := (.move (.generated .binding 0))) (Corr.prim (ts := [(.list (.adt 2)), (.list (.adt 2))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [(.adt 2), (.list (.adt 2))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.var rfl rfl))))⟩⟩ + +theorem fun15 : FunOK program krate flags 15 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 108)) none (.call (.function 19) [(.copy (.generated .binding 0))] false))], (.call (.runtime .lengthList) [(.move (.generated .operand 108))] false), [(0, (.pair .nat .nat), (some 0))], rfl, rfl, + (Corr.prim (ts := [(.list .nat)]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun16 : FunOK program krate flags 16 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 110)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 111)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 109))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 109)))))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 110)), (.move (.generated .operand 111))] false) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 112))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 112))))])) (.mk [] (.construct (.none .nat) []))), [(0, (.pair .nat .nat), (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 110)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 111)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 109))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 109)))))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 110)), (.move (.generated .operand 111))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 109))]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 109))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 112))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 112))))])) (lb := []) (tb := (.construct (.none .nat) [])) (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 112))]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 112))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ + +theorem fun17 : FunOK program krate flags 17 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 115)) none (.block (.mk [(.mk (.bind (.generated .operand 113)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 114)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 113)), (.move (.generated .operand 114))] true)))), (.mk (.bind (.generated .operand 116)) none (.copy (.generated .binding 0)))], (.succeed (.call (.runtime .natLe) [(.move (.generated .operand 115)), (.move (.generated .operand 116))] false)), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.fOfB (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 113)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 114)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 113)), (.move (.generated .operand 114))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl))⟩⟩ + +theorem fun18 : FunOK program krate flags 18 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 20) [(.construct (.closure 2 21) [(.clone (.generated .binding 0))]), (.construct (.nil (.adt 2)) []), (.call (.function 19) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [(.bind (.generated .part 117)), .wild]) (.mk [] (.move (.generated .part 117))))])] false)] false), [(0, (.adt 2), (some 0))], rfl, rfl, + (Corr.callOps (ts := [(.fn [(.list (.adt 2)), .nat] (.list (.adt 2))), (.list (.adt 2)), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [(.adt 2)]) (mask := [false]) (af := false) (ff := false) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.pair .nat .nat), (.list (.adt 0))]) (rd := (.move (.generated .part 117))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun19 : FunOK program krate flags 19 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 119)) none (.block (.mk [(.mk (.bind (.generated .binding 1)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 118)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 118))))), (.mk (.bind (.generated .binding 2)) (some (.list .nat)) (.call (.function 22) [(.copy (.generated .binding 1))] false))] (.cond (.call (.function 23) [(.copy (.generated .binding 1)), (.clone (.generated .binding 2))] false) (.mk [] (.construct (.ok (.list .nat) (.pair .bool .bool)) [(.move (.generated .binding 2))])) (.mk [] (.construct (.err (.list .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))]))))))], (.matchOn (.move (.generated .holder 119)) [(.mk (.ok (.bind (.generated .binding 3))) (.mk [] (.move (.generated .binding 3)))), (.mk (.err .wild) (.mk [] (.construct (.nil .nat) [])))]), [(0, (.pair .nat .nat), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.result (.list .nat) (.pair .bool .bool))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.bind (.generated .binding 1)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 118)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 118))))), (.mk (.bind (.generated .binding 2)) (some (.list .nat)) (.call (.function 22) [(.copy (.generated .binding 1))] false))]) (tail := (.cond (.call (.function 23) [(.copy (.generated .binding 1)), (.clone (.generated .binding 2))] false) (.mk [] (.construct (.ok (.list .nat) (.pair .bool .bool)) [(.move (.generated .binding 2))])) (.mk [] (.construct (.err (.list .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))) (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 118)), .wild]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 118))) (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := []) (ce := (.call (.function 23) [(.copy (.generated .binding 1)), (.clone (.generated .binding 2))] false)) (lk := []) (Corr.callOps (ts := [.nat, (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct (.ok (.list .nat) (.pair .bool .bool)) [(.move (.generated .binding 2))])) (lb := []) (tb := (.construct (.err (.list .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])) (Corr.build (ts := [(.list .nat)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl) (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)))))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (0, (.pair .nat .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 3))) (Corr.mCons (Γ' := [(4, (.pair .bool .bool), none), (0, (.pair .nat .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct (.nil .nat) [])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ + +theorem fun20 : FunOK program krate flags 20 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 120)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 120)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 20) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 121)) (some (.fn 2)) (.move (.generated .binding 0)))] (.apply (.generated .callee 121) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]), [(2, (.list .nat), (some 2)), (1, (.list (.adt 2)), (some 1)), (0, (.fn [(.list (.adt 2)), .nat] (.list (.adt 2))), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .nat), (some 2)), (1, (.list (.adt 2)), (some 1)), (0, (.fn [(.list (.adt 2)), .nat] (.list (.adt 2))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 1))) (Corr.mCons (Γ' := [(4, (.list .nat), (some 4)), (3, .nat, (some 3)), (2, (.list .nat), (some 2)), (1, (.list (.adt 2)), (some 1)), (0, (.fn [(.list (.adt 2)), .nat] (.list (.adt 2))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 20) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 121)) (some (.fn 2)) (.move (.generated .binding 0)))] (.apply (.generated .callee 121) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.fn [(.list (.adt 2)), .nat] (.list (.adt 2))), (.list (.adt 2)), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 121)) (some (.fn 2)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 121) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] false)) (Corr.apply (ps := [(.list (.adt 2)), .nat]) (af := false) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ + +theorem fun21 : FunOK program krate flags 21 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 24) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 2))] false), [(2, .nat, (some 2)), (1, (.list (.adt 2)), (some 1)), (0, (.adt 2), (some 0))], rfl, rfl, + (Corr.callOps (ts := [(.adt 2), (.list (.adt 2)), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun22 : FunOK program krate flags 22 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 25) [(.copy (.generated .binding 0))] false), [(0, .nat, (some 0))], rfl, rfl, + (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun23 : FunOK program krate flags 23 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 123)) none (.block (.mk [(.mk (.bind (.generated .operand 122)) none (.move (.generated .binding 1)))] (.call (.runtime .lengthList) [(.move (.generated .operand 122))] false)))), (.mk (.bind (.generated .operand 124)) none (.lit (.nat 4)))], (.call (.runtime .natLe) [(.move (.generated .operand 123)), (.move (.generated .operand 124))] false), [(1, (.list .nat), (some 1)), (0, .nat, none)], rfl, rfl, + (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 122)) none (.move (.generated .binding 1)))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 122))] false)) (Corr.prim (ts := [(.list .nat)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun24 : FunOK program krate flags 24 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 126)) none (.call (.function 26) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [(.bind (.generated .part 125)), .wild]) (.mk [] (.move (.generated .part 125))))]), (.construct (.adt 0 0) [(.copy (.generated .binding 2))])] false))], (.matchOn (.move (.generated .holder 126)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.bind (.generated .binding 3))) (.mk [(.mk (.bind (.generated .operand 130)) none (.move (.generated .binding 1))), (.mk (.bind (.generated .operand 131)) none (.construct .cons [(.construct (.adt 2 0) [(.copy (.generated .binding 3)), (.block (.mk [(.mk (.bind (.generated .operand 128)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 127))]) (.mk [] (.move (.generated .part 127))))])), (.mk (.bind (.generated .operand 129)) none (.construct .cons [(.construct (.adt 0 0) [(.copy (.generated .binding 2))]), (.construct (.nil (.adt 0)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 128)), (.move (.generated .operand 129))] false)))]), (.construct (.nil (.adt 2)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 130)), (.move (.generated .operand 131))] false)))]), [(2, .nat, (some 2)), (1, (.list (.adt 2)), (some 1)), (0, (.adt 2), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option (.pair .nat .nat))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat), (.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.pair .nat .nat), (.list (.adt 0))]) (rd := (.move (.generated .part 125))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, (.list (.adt 2)), (some 1)), (0, (.adt 2), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 1))) (Corr.mCons (Γ' := [(3, (.pair .nat .nat), (some 3)), (2, .nat, (some 2)), (1, (.list (.adt 2)), (some 1)), (0, (.adt 2), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .operand 130)) none (.move (.generated .binding 1))), (.mk (.bind (.generated .operand 131)) none (.construct .cons [(.construct (.adt 2 0) [(.copy (.generated .binding 3)), (.block (.mk [(.mk (.bind (.generated .operand 128)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 127))]) (.mk [] (.move (.generated .part 127))))])), (.mk (.bind (.generated .operand 129)) none (.construct .cons [(.construct (.adt 0 0) [(.copy (.generated .binding 2))]), (.construct (.nil (.adt 0)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 128)), (.move (.generated .operand 129))] false)))]), (.construct (.nil (.adt 2)) [])]))]) (tail := (.call (.runtime .appendList) [(.move (.generated .operand 130)), (.move (.generated .operand 131))] false)) (Corr.mNil) rfl rfl rfl (Corr.prim (ts := [(.list (.adt 2)), (.list (.adt 2))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [(.adt 2), (.list (.adt 2))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.pair .nat .nat), (.list (.adt 0))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 128)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 127))]) (.mk [] (.move (.generated .part 127))))])), (.mk (.bind (.generated .operand 129)) none (.construct .cons [(.construct (.adt 0 0) [(.copy (.generated .binding 2))]), (.construct (.nil (.adt 0)) [])]))]) (tail := (.call (.runtime .appendList) [(.move (.generated .operand 128)), (.move (.generated .operand 129))] false)) (Corr.prim (ts := [(.list (.adt 0)), (.list (.adt 0))]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.pair .nat .nat), (.list (.adt 0))]) (rd := (.move (.generated .part 127))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [(.adt 0), (.list (.adt 0))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ + +theorem fun25 : FunOK program krate flags 25 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 132)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 133)) none (.lit (.nat 10)))] (.call (.runtime .natSub) [(.move (.generated .operand 132)), (.move (.generated .operand 133))] false))), (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 134)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 135)) none (.lit (.nat 20)))] (.call (.runtime .natSub) [(.move (.generated .operand 134)), (.move (.generated .operand 135))] false))), (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 136)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 137)) none (.lit (.nat 30)))] (.call (.runtime .natSub) [(.move (.generated .operand 136)), (.move (.generated .operand 137))] false))), (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 138)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 139)) none (.lit (.nat 50)))] (.call (.runtime .natSub) [(.move (.generated .operand 138)), (.move (.generated .operand 139))] false))), (.construct (.nil .nat) [])])])])]), [(0, .nat, (some 0))], rfl, rfl, + (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 132)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 133)) none (.lit (.nat 10)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 132)), (.move (.generated .operand 133))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 134)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 135)) none (.lit (.nat 20)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 134)), (.move (.generated .operand 135))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 136)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 137)) none (.lit (.nat 30)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 136)), (.move (.generated .operand 137))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 138)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 139)) none (.lit (.nat 50)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 138)), (.move (.generated .operand 139))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)⟩⟩ + +theorem fun26 : FunOK program krate flags 26 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 140)) none (.move (.generated .binding 1)))], (.matchOn (.move (.generated .holder 140)) [(.mk (.adt 0 0 [(.bind (.generated .binding 2))]) (.mk [] (.call (.function 27) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] false)))]), [(1, (.adt 0), (some 1)), (0, (.pair .nat .nat), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.adt 0)) (U := []) (view := false) (idx := [0]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, (.adt 0), (some 1)), (0, (.pair .nat .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.call (.function 27) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.pair .nat .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl)⟩⟩ + +theorem fun27 : FunOK program krate flags 27 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 28) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false) (.mk [] (.construct .some [(.call (.function 29) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false)])) (.mk [] (.construct (.none (.pair .nat .nat)) []))), [(1, .nat, (some 1)), (0, (.pair .nat .nat), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 28) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [(.pair .nat .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 29) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false)])) (lb := []) (tb := (.construct (.none (.pair .nat .nat)) [])) (Corr.build (ts := [(.pair .nat .nat)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ + +theorem fun28 : FunOK program krate flags 28 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 142)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 141))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 141))))), (.mk (.bind (.generated .operand 143)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 142)), (.move (.generated .operand 143))] false) (.mk [(.mk (.bind (.generated .operand 144)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 145)) none (.copy (.generated .binding 1)))] (.call (.runtime .natLt) [(.move (.generated .operand 144)), (.move (.generated .operand 145))] false)) (.mk [] (.lit (.bool false)))), [(1, .nat, (some 1)), (0, (.pair .nat .nat), (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 142)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 141))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 141))))), (.mk (.bind (.generated .operand 143)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 142)), (.move (.generated .operand 143))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 141))]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 141))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 144)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 145)) none (.copy (.generated .binding 1)))]) (ta := (.call (.runtime .natLt) [(.move (.generated .operand 144)), (.move (.generated .operand 145))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ + +theorem fun29 : FunOK program krate flags 29 := + ⟨_, rfl, .inl ⟨_, _, [], (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 146)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 146)))) (.copy (.generated .binding 1))), [(1, .nat, (some 1)), (0, (.pair .nat .nat), (some 0))], rfl, rfl, + (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 146)), .wild]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 146))) (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | 3 => exact fun3 + | 4 => exact fun4 + | 5 => exact fun5 + | 6 => exact fun6 + | 7 => exact fun7 + | 8 => exact fun8 + | 9 => exact fun9 + | 10 => exact fun10 + | 11 => exact fun11 + | 12 => exact fun12 + | 13 => exact fun13 + | 14 => exact fun14 + | 15 => exact fun15 + | 16 => exact fun16 + | 17 => exact fun17 + | 18 => exact fun18 + | 19 => exact fun19 + | 20 => exact fun20 + | 21 => exact fun21 + | 22 => exact fun22 + | 23 => exact fun23 + | 24 => exact fun24 + | 25 => exact fun25 + | 26 => exact fun26 + | 27 => exact fun27 + | 28 => exact fun28 + | 29 => exact fun29 + | _ + 30 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.RustStd diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R7.lean b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R7.lean new file mode 100644 index 000000000..0ab321a10 --- /dev/null +++ b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R7.lean @@ -0,0 +1,200 @@ +import LexLeanPreservation.Core +import LexLeanPreservation.Values +import LexLeanPreservation.Primitives +import LexLeanPreservation.Fixed +import LexLeanPreservation.Keys +import LexLeanPreservation.Templates +import LexLeanPreservation.Validate +import Reasoning.Budget +import Reasoning.Clinic +import Reasoning.Main +import Reasoning.Planner +import Reasoning.Screening +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +set_option linter.unusedVariables false +namespace LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7 + +def __prog : _root_.LexLeanTarget.TargetSyntax.Program := + { adts := [{ constructors := [[], [.nat]] }], functions := [ + { parameters := [0], types := [.nat], result := .nat, + body := (.«match» .nat (.call 1 [(.build .pair (.pair .nat .nat) [(.var 0), (.var 0)])]) [(.arm .ok [1] (.var 1)), (.arm .error [2] (.value .nat (.nat 9)))]) }, + { parameters := [0], types := [(.pair .nat .nat)], result := (.result .nat (.pair .bool .bool)), + body := (.«let» 1 (.pair (.pair .nat .nat) .bool) (.call 2 [(.var 0)]) (.«match» (.result .nat (.pair .bool .bool)) (.second (.var 1)) [(.arm .true [] (.call 3 [(.var 0), (.first (.var 1))])), (.arm .false [] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])]))])) }, + { parameters := [0], types := [(.pair .nat .nat)], result := (.pair (.pair .nat .nat) .bool), + body := (.call 4 [(.closure 5 []), (.prim .natAdd [(.second (.var 0)), (.value .nat (.nat 4))]), (.call 6 [(.var 0)])]) }, + { parameters := [0, 1], types := [(.pair .nat .nat), (.pair .nat .nat)], result := (.result .nat (.pair .bool .bool)), + body := (.«match» (.result .nat (.pair .bool .bool)) (.call 7 [(.var 0), (.var 1)]) [(.arm .some [2] (.build .ok (.result .nat (.pair .bool .bool)) [(.var 2)])), (.arm .none [] (.«match» (.result .nat (.pair .bool .bool)) (.call 8 [(.var 1)]) [(.arm .some [3] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])])])), (.arm .none [] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])])]))]))]) }, + { parameters := [0, 1, 2], types := [(.fn [(.pair .nat .nat)] (.option (.pair .nat .nat))), .nat, (.pair .nat .nat)], result := (.pair (.pair .nat .nat) .bool), + body := (.«match» (.pair (.pair .nat .nat) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.pair .nat .nat) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.pair .nat .nat) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.pair .nat .nat) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 4 [(.var 0), (.var 3), (.var 4)]))]))]) }, + { parameters := [0], types := [(.pair .nat .nat)], result := (.option (.pair .nat .nat)), + body := (.«match» (.option (.pair .nat .nat)) (.call 9 [(.var 0)]) [(.arm .none [] (.build .none (.option (.pair .nat .nat)) [])), (.arm .some [1] (.call 10 [(.var 0), (.var 1)]))]) }, + { parameters := [0], types := [(.pair .nat .nat)], result := (.pair .nat .nat), + body := (.build .pair (.pair .nat .nat) [(.first (.var 0)), (.prim .natAdd [(.second (.var 0)), (.value .nat (.nat 3))])]) }, + { parameters := [0, 1], types := [(.pair .nat .nat), (.pair .nat .nat)], result := (.option .nat), + body := (.«match» (.option .nat) (.call 8 [(.var 1)]) [(.arm .none [] (.build .none (.option .nat) [])), (.arm .some [2] (.cond (.call 11 [(.var 0), (.var 2)]) (.build .some (.option .nat) [(.var 2)]) (.build .none (.option .nat) [])))]) }, + { parameters := [0], types := [(.pair .nat .nat)], result := (.option .nat), + body := (.build .some (.option .nat) [(.second (.var 0))]) }, + { parameters := [0], types := [(.pair .nat .nat)], result := (.option (.adt 0)), + body := (.«match» (.option (.adt 0)) (.cond (.call 12 [(.var 0)]) (.build .some (.option (.adt 0)) [(.build (.adt 0) (.adt 0) [])]) (.build .none (.option (.adt 0)) [])) [(.arm .some [1] (.build .some (.option (.adt 0)) [(.var 1)])), (.arm .none [] (.call 13 [(.closure 14 [(.var 0)]), (.build .none (.option (.adt 0)) []), (.call 15 [(.var 0)])]))]) }, + { parameters := [0, 1], types := [(.pair .nat .nat), (.adt 0)], result := (.option (.pair .nat .nat)), + body := (.«match» (.option (.pair .nat .nat)) (.var 1) [(.arm (.adt 0) [] (.call 16 [(.var 0)])), (.arm (.adt 1) [2] (.call 17 [(.var 0), (.var 2)]))]) }, + { parameters := [0, 1], types := [(.pair .nat .nat), .nat], result := .bool, + body := (.prim .natEq [(.var 1), (.value .nat (.nat 0))]) }, + { parameters := [0], types := [(.pair .nat .nat)], result := .bool, + body := (.prim .natLt [(.value .nat (.nat 2)), (.second (.var 0))]) }, + { parameters := [0, 1, 2], types := [(.fn [(.option (.adt 0)), .nat] (.option (.adt 0))), (.option (.adt 0)), (.list .nat)], result := (.option (.adt 0)), + body := (.«match» (.option (.adt 0)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 13 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, + { parameters := [0, 1, 2], types := [(.pair .nat .nat), (.option (.adt 0)), .nat], result := (.option (.adt 0)), + body := (.«match» (.option (.adt 0)) (.var 1) [(.arm .some [3] (.build .some (.option (.adt 0)) [(.var 3)])), (.arm .none [] (.cond (.call 18 [(.var 0), (.var 2)]) (.build .some (.option (.adt 0)) [(.build (.adt 1) (.adt 0) [(.var 2)])]) (.build .none (.option (.adt 0)) [])))]) }, + { parameters := [0], types := [(.pair .nat .nat)], result := (.list .nat), + body := (.build .cons (.list .nat) [(.value .nat (.nat 2)), (.build .cons (.list .nat) [(.value .nat (.nat 1)), (.build .nil (.list .nat) [])])]) }, + { parameters := [0], types := [(.pair .nat .nat)], result := (.option (.pair .nat .nat)), + body := (.cond (.call 12 [(.var 0)]) (.build .some (.option (.pair .nat .nat)) [(.call 19 [(.var 0)])]) (.build .none (.option (.pair .nat .nat)) [])) }, + { parameters := [0, 1], types := [(.pair .nat .nat), .nat], result := (.option (.pair .nat .nat)), + body := (.cond (.call 18 [(.var 0), (.var 1)]) (.build .some (.option (.pair .nat .nat)) [(.call 20 [(.var 0), (.var 1)])]) (.build .none (.option (.pair .nat .nat)) [])) }, + { parameters := [0, 1], types := [(.pair .nat .nat), .nat], result := .bool, + body := (.cond (.prim .natLe [(.var 1), (.second (.var 0))]) (.prim .natLt [(.value .nat (.nat 0)), (.var 1)]) (.build .false .bool [])) }, + { parameters := [0], types := [(.pair .nat .nat)], result := (.pair .nat .nat), + body := (.build .pair (.pair .nat .nat) [(.first (.var 0)), (.prim .natSub [(.second (.var 0)), (.value .nat (.nat 1))])]) }, + { parameters := [0, 1], types := [(.pair .nat .nat), .nat], result := (.pair .nat .nat), + body := (.build .pair (.pair .nat .nat) [(.first (.var 0)), (.prim .natSub [(.second (.var 0)), (.var 1)])]) }] } + +def __enc_0 : (Reasoning.Budget.Spend.Step Nat) -> _root_.LexLeanTarget.TargetSyntax.Value + | Reasoning.Budget.Spend.Step.Tick => _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [] + | Reasoning.Budget.Spend.Step.Burn __x0 => _root_.LexLeanTarget.TargetSyntax.Value.adt 1 [(_root_.LexLeanTarget.TargetSyntax.Value.nat __x0)] + +def __fits_12 (s : (Prod Nat Nat)) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_12 (s : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 12 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) s)] (_root_.LexLeanPreservation.Rel (__fits_12 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Budget.Tick.guard Nat s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (2 : Nat) (s).2)) + +def __fits_18 (s : (Prod Nat Nat)) (k : Nat) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.ble k (s).2) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) + +theorem __rel_18 (s : (Prod Nat Nat)) (k : Nat) : _root_.LexLeanPreservation.FunRel __prog 18 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) s), (_root_.LexLeanTarget.TargetSyntax.Value.nat k)] (_root_.LexLeanPreservation.Rel (__fits_18 s k) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Budget.Burn.guard Nat s k))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.blt (0 : Nat) k))) (Nat.ble k (s).2) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe k (s).2)) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (0 : Nat) k))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) + +def __fits_14 (_ys : (Prod Nat Nat)) (_yacc : (Option (Reasoning.Budget.Spend.Step Nat))) (_yb : Nat) : Bool := + (Bool.true && ((fun (T : Type) (__a : (Option (Reasoning.Budget.Spend.Step T))) (__k0 : ∀ (_yfound : (Reasoning.Budget.Spend.Step T)), Bool) (__k1 : Bool) => (match __a with | Option.some _yfound => __k0 _yfound | Option.none => __k1 : Bool)) Nat _yacc (fun (_yfound : (Reasoning.Budget.Spend.Step Nat)) => ((Bool.true && Bool.true) && Bool.true)) ((((Bool.true && (Bool.true && Bool.true)) && (__fits_18 (_ys) (_yb))) && (if (Reasoning.Budget.Burn.guard Nat (_ys) (_yb)) then ((((Bool.true && Bool.true) && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true)))))) + +attribute [local irreducible] Reasoning.Budget.Burn.guard in +theorem __rel_14 (_ys : (Prod Nat Nat)) (_yacc : (Option (Reasoning.Budget.Spend.Step Nat))) (_yb : Nat) : _root_.LexLeanPreservation.FunRel __prog 14 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) _ys), ((_root_.LexLeanPreservation.encOption __enc_0) _yacc), (_root_.LexLeanTarget.TargetSyntax.Value.nat _yb)] (_root_.LexLeanPreservation.Rel (__fits_14 _ys _yacc _yb) ((_root_.LexLeanPreservation.encOption __enc_0) (((fun (T : Type) (__a : (Option (Reasoning.Budget.Spend.Step T))) (__k0 : ∀ (_yfound : (Reasoning.Budget.Spend.Step T)), (Option (Reasoning.Budget.Spend.Step Nat))) (__k1 : (Option (Reasoning.Budget.Spend.Step Nat))) => (match __a with | Option.some _yfound => __k0 _yfound | Option.none => __k1 : (Option (Reasoning.Budget.Spend.Step Nat)))) Nat _yacc (fun (_yfound : (Reasoning.Budget.Spend.Step Nat)) => (Option.some (_yfound) : (Option (Reasoning.Budget.Spend.Step Nat)))) ((if (Reasoning.Budget.Burn.guard Nat (_ys) (_yb)) then (Option.some ((Reasoning.Budget.Spend.Step.Burn (_yb) : (Reasoning.Budget.Spend.Step Nat))) : (Option (Reasoning.Budget.Spend.Step Nat))) else (Option.none : (Option (Reasoning.Budget.Spend.Step Nat))))))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_0) (fun (__a : (Option (Reasoning.Budget.Spend.Step Nat))) => ((fun (T : Type) (__a : (Option (Reasoning.Budget.Spend.Step T))) (__k0 : ∀ (_yfound : (Reasoning.Budget.Spend.Step T)), Bool) (__k1 : Bool) => (match __a with | Option.some _yfound => __k0 _yfound | Option.none => __k1 : Bool)) Nat __a (fun (_yfound : (Reasoning.Budget.Spend.Step Nat)) => ((Bool.true && Bool.true) && Bool.true)) ((((Bool.true && (Bool.true && Bool.true)) && (__fits_18 (_ys) (_yb))) && (if (Reasoning.Budget.Burn.guard Nat (_ys) (_yb)) then ((((Bool.true && Bool.true) && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true)))))) (fun (__a : (Option (Reasoning.Budget.Spend.Step Nat))) => (_root_.LexLeanPreservation.encOption __enc_0) ((fun (T : Type) (__a : (Option (Reasoning.Budget.Spend.Step T))) (__k0 : ∀ (_yfound : (Reasoning.Budget.Spend.Step T)), (Option (Reasoning.Budget.Spend.Step Nat))) (__k1 : (Option (Reasoning.Budget.Spend.Step Nat))) => (match __a with | Option.some _yfound => __k0 _yfound | Option.none => __k1 : (Option (Reasoning.Budget.Spend.Step Nat)))) Nat __a (fun (_yfound : (Reasoning.Budget.Spend.Step Nat)) => (Option.some (_yfound) : (Option (Reasoning.Budget.Spend.Step Nat)))) ((if (Reasoning.Budget.Burn.guard Nat (_ys) (_yb)) then (Option.some ((Reasoning.Budget.Spend.Step.Burn (_yb) : (Reasoning.Budget.Spend.Step Nat))) : (Option (Reasoning.Budget.Spend.Step Nat))) else (Option.none : (Option (Reasoning.Budget.Spend.Step Nat))))))) _yacc (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (Option (Reasoning.Budget.Spend.Step Nat))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_0) (if __b then (Option.some ((Reasoning.Budget.Spend.Step.Burn (_yb) : (Reasoning.Budget.Spend.Step Nat))) : (Option (Reasoning.Budget.Spend.Step Nat))) else (Option.none : (Option (Reasoning.Budget.Spend.Step Nat))))) (Reasoning.Budget.Burn.guard Nat (_ys) (_yb)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_18 (_ys) (_yb))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))) + +def __fits_15 (s : (Prod Nat Nat)) : Bool := + ((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) + +theorem __rel_15 (s : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 15 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) s)] (_root_.LexLeanPreservation.Rel (__fits_15 s) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Budget.Burn.candidates Nat s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) + +def __fits_9 (_ys : (Prod Nat Nat)) : Bool := + ((((Bool.true && Bool.true) && (__fits_12 (_ys))) && (if (Reasoning.Budget.Tick.guard Nat (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && ((fun (T : Type) (__a : (Option (Reasoning.Budget.Spend.Step T))) (__k0 : ∀ (_yfound : (Reasoning.Budget.Spend.Step T)), Bool) (__k1 : Bool) => (match __a with | Option.some _yfound => __k0 _yfound | Option.none => __k1 : Bool)) Nat (if (Reasoning.Budget.Tick.guard Nat (_ys)) then (Option.some ((Reasoning.Budget.Spend.Step.Tick : (Reasoning.Budget.Spend.Step Nat))) : (Option (Reasoning.Budget.Spend.Step Nat))) else (Option.none : (Option (Reasoning.Budget.Spend.Step Nat)))) (fun (_yfound : (Reasoning.Budget.Spend.Step Nat)) => ((Bool.true && Bool.true) && Bool.true)) ((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && (((Bool.true && Bool.true) && (__fits_15 (_ys))) && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Option (Reasoning.Budget.Spend.Step Nat))) (__p1 : Nat) => __fits_14 (_ys) __p0 __p1) ((fun (_yacc : (Option (Reasoning.Budget.Spend.Step Nat))) (_yb : Nat) => ((fun (T : Type) (__a : (Option (Reasoning.Budget.Spend.Step T))) (__k0 : ∀ (_yfound : (Reasoning.Budget.Spend.Step T)), (Option (Reasoning.Budget.Spend.Step Nat))) (__k1 : (Option (Reasoning.Budget.Spend.Step Nat))) => (match __a with | Option.some _yfound => __k0 _yfound | Option.none => __k1 : (Option (Reasoning.Budget.Spend.Step Nat)))) Nat _yacc (fun (_yfound : (Reasoning.Budget.Spend.Step Nat)) => (Option.some (_yfound) : (Option (Reasoning.Budget.Spend.Step Nat)))) ((if (Reasoning.Budget.Burn.guard Nat (_ys) (_yb)) then (Option.some ((Reasoning.Budget.Spend.Step.Burn (_yb) : (Reasoning.Budget.Spend.Step Nat))) : (Option (Reasoning.Budget.Spend.Step Nat))) else (Option.none : (Option (Reasoning.Budget.Spend.Step Nat)))))))) ((Option.none : (Option (Reasoning.Budget.Spend.Step Nat)))) ((Reasoning.Budget.Burn.candidates Nat (_ys)))))))) + +attribute [local irreducible] Reasoning.Budget.Burn.candidates Reasoning.Budget.Burn.guard Reasoning.Budget.Tick.guard in +theorem __rel_9 (_ys : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 9 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) _ys)] (_root_.LexLeanPreservation.Rel (__fits_9 _ys) ((_root_.LexLeanPreservation.encOption __enc_0) (Reasoning.Budget.Spend.select Nat _ys))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_0) (fun (__a : (Option (Reasoning.Budget.Spend.Step Nat))) => ((fun (T : Type) (__a : (Option (Reasoning.Budget.Spend.Step T))) (__k0 : ∀ (_yfound : (Reasoning.Budget.Spend.Step T)), Bool) (__k1 : Bool) => (match __a with | Option.some _yfound => __k0 _yfound | Option.none => __k1 : Bool)) Nat __a (fun (_yfound : (Reasoning.Budget.Spend.Step Nat)) => ((Bool.true && Bool.true) && Bool.true)) ((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && (((Bool.true && Bool.true) && (__fits_15 (_ys))) && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Option (Reasoning.Budget.Spend.Step Nat))) (__p1 : Nat) => __fits_14 (_ys) __p0 __p1) ((fun (_yacc : (Option (Reasoning.Budget.Spend.Step Nat))) (_yb : Nat) => ((fun (T : Type) (__a : (Option (Reasoning.Budget.Spend.Step T))) (__k0 : ∀ (_yfound : (Reasoning.Budget.Spend.Step T)), (Option (Reasoning.Budget.Spend.Step Nat))) (__k1 : (Option (Reasoning.Budget.Spend.Step Nat))) => (match __a with | Option.some _yfound => __k0 _yfound | Option.none => __k1 : (Option (Reasoning.Budget.Spend.Step Nat)))) Nat _yacc (fun (_yfound : (Reasoning.Budget.Spend.Step Nat)) => (Option.some (_yfound) : (Option (Reasoning.Budget.Spend.Step Nat)))) ((if (Reasoning.Budget.Burn.guard Nat (_ys) (_yb)) then (Option.some ((Reasoning.Budget.Spend.Step.Burn (_yb) : (Reasoning.Budget.Spend.Step Nat))) : (Option (Reasoning.Budget.Spend.Step Nat))) else (Option.none : (Option (Reasoning.Budget.Spend.Step Nat)))))))) ((Option.none : (Option (Reasoning.Budget.Spend.Step Nat)))) ((Reasoning.Budget.Burn.candidates Nat (_ys)))))))) (fun (__a : (Option (Reasoning.Budget.Spend.Step Nat))) => (_root_.LexLeanPreservation.encOption __enc_0) ((fun (T : Type) (__a : (Option (Reasoning.Budget.Spend.Step T))) (__k0 : ∀ (_yfound : (Reasoning.Budget.Spend.Step T)), (Option (Reasoning.Budget.Spend.Step Nat))) (__k1 : (Option (Reasoning.Budget.Spend.Step Nat))) => (match __a with | Option.some _yfound => __k0 _yfound | Option.none => __k1 : (Option (Reasoning.Budget.Spend.Step Nat)))) Nat __a (fun (_yfound : (Reasoning.Budget.Spend.Step Nat)) => (Option.some (_yfound) : (Option (Reasoning.Budget.Spend.Step Nat)))) ((_root_.LexLeanCollections.listFold ((fun (_yacc : (Option (Reasoning.Budget.Spend.Step Nat))) (_yb : Nat) => ((fun (T : Type) (__a : (Option (Reasoning.Budget.Spend.Step T))) (__k0 : ∀ (_yfound : (Reasoning.Budget.Spend.Step T)), (Option (Reasoning.Budget.Spend.Step Nat))) (__k1 : (Option (Reasoning.Budget.Spend.Step Nat))) => (match __a with | Option.some _yfound => __k0 _yfound | Option.none => __k1 : (Option (Reasoning.Budget.Spend.Step Nat)))) Nat _yacc (fun (_yfound : (Reasoning.Budget.Spend.Step Nat)) => (Option.some (_yfound) : (Option (Reasoning.Budget.Spend.Step Nat)))) ((if (Reasoning.Budget.Burn.guard Nat (_ys) (_yb)) then (Option.some ((Reasoning.Budget.Spend.Step.Burn (_yb) : (Reasoning.Budget.Spend.Step Nat))) : (Option (Reasoning.Budget.Spend.Step Nat))) else (Option.none : (Option (Reasoning.Budget.Spend.Step Nat)))))))) ((Option.none : (Option (Reasoning.Budget.Spend.Step Nat)))) ((Reasoning.Budget.Burn.candidates Nat (_ys))) : (Option (Reasoning.Budget.Spend.Step Nat)))))) (if (Reasoning.Budget.Tick.guard Nat (_ys)) then (Option.some ((Reasoning.Budget.Spend.Step.Tick : (Reasoning.Budget.Spend.Step Nat))) : (Option (Reasoning.Budget.Spend.Step Nat))) else (Option.none : (Option (Reasoning.Budget.Spend.Step Nat)))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_0) (if __b then (Option.some ((Reasoning.Budget.Spend.Step.Tick : (Reasoning.Budget.Spend.Step Nat))) : (Option (Reasoning.Budget.Spend.Step Nat))) else (Option.none : (Option (Reasoning.Budget.Spend.Step Nat))))) (Reasoning.Budget.Tick.guard Nat (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_12 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (fun (__a : (Option (Reasoning.Budget.Spend.Step Nat))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_15 (_ys))) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.nat) (es := (_root_.LexLeanPreservation.encOption __enc_0)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) ((fun (_yacc : (Option (Reasoning.Budget.Spend.Step Nat))) (_yb : Nat) => ((fun (T : Type) (__a : (Option (Reasoning.Budget.Spend.Step T))) (__k0 : ∀ (_yfound : (Reasoning.Budget.Spend.Step T)), (Option (Reasoning.Budget.Spend.Step Nat))) (__k1 : (Option (Reasoning.Budget.Spend.Step Nat))) => (match __a with | Option.some _yfound => __k0 _yfound | Option.none => __k1 : (Option (Reasoning.Budget.Spend.Step Nat)))) Nat _yacc (fun (_yfound : (Reasoning.Budget.Spend.Step Nat)) => (Option.some (_yfound) : (Option (Reasoning.Budget.Spend.Step Nat)))) ((if (Reasoning.Budget.Burn.guard Nat (_ys) (_yb)) then (Option.some ((Reasoning.Budget.Spend.Step.Burn (_yb) : (Reasoning.Budget.Spend.Step Nat))) : (Option (Reasoning.Budget.Spend.Step Nat))) else (Option.none : (Option (Reasoning.Budget.Spend.Step Nat)))))))) (fun (__p0 : (Option (Reasoning.Budget.Spend.Step Nat))) (__p1 : Nat) => __fits_14 (_ys) __p0 __p1) 14 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) _ys)] (fun (__p0 : (Option (Reasoning.Budget.Spend.Step Nat))) (__p1 : Nat) => __rel_14 (_ys) __p0 __p1) (p := __prog) (fi := 13) (ta := .nat) (ts := (.option (.adt 0))) rfl ((Option.none : (Option (Reasoning.Budget.Spend.Step Nat)))) ((Reasoning.Budget.Burn.candidates Nat (_ys))))))))) + +def __fits_19 (s : (Prod Nat Nat)) : Bool := + ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) + +theorem __rel_19 (s : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 19 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) s)] (_root_.LexLeanPreservation.Rel (__fits_19 s) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Budget.Tick.conclusion Nat s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub (s).2 (1 : Nat))) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) + +def __fits_16 (s : (Prod Nat Nat)) : Bool := + (((Bool.true && Bool.true) && (__fits_12 (s))) && (if (Reasoning.Budget.Tick.guard Nat (s)) then ((((Bool.true && Bool.true) && (__fits_19 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Budget.Tick.conclusion Reasoning.Budget.Tick.guard in +theorem __rel_16 (s : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 16 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) s)] (_root_.LexLeanPreservation.Rel (__fits_16 s) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Reasoning.Budget.Tick.apply Nat s))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_19 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (if __b then (Option.some ((Reasoning.Budget.Tick.conclusion Nat (s))) : (Option (Prod Nat Nat))) else (Option.none : (Option (Prod Nat Nat))))) (Reasoning.Budget.Tick.guard Nat (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_12 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_19 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_20 (s : (Prod Nat Nat)) (k : Nat) : Bool := + ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) + +theorem __rel_20 (s : (Prod Nat Nat)) (k : Nat) : _root_.LexLeanPreservation.FunRel __prog 20 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) s), (_root_.LexLeanTarget.TargetSyntax.Value.nat k)] (_root_.LexLeanPreservation.Rel (__fits_20 s k) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Budget.Burn.conclusion Nat s k))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub (s).2 k)) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) + +def __fits_17 (s : (Prod Nat Nat)) (k : Nat) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && (__fits_18 (s) (k))) && (if (Reasoning.Budget.Burn.guard Nat (s) (k)) then ((((Bool.true && (Bool.true && Bool.true)) && (__fits_20 (s) (k))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) + +attribute [local irreducible] Reasoning.Budget.Burn.conclusion Reasoning.Budget.Burn.guard in +theorem __rel_17 (s : (Prod Nat Nat)) (k : Nat) : _root_.LexLeanPreservation.FunRel __prog 17 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) s), (_root_.LexLeanTarget.TargetSyntax.Value.nat k)] (_root_.LexLeanPreservation.Rel (__fits_17 s k) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Reasoning.Budget.Burn.apply Nat s k))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (Bool.true && Bool.true)) && (__fits_20 (s) (k))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (if __b then (Option.some ((Reasoning.Budget.Burn.conclusion Nat (s) (k))) : (Option (Prod Nat Nat))) else (Option.none : (Option (Prod Nat Nat))))) (Reasoning.Budget.Burn.guard Nat (s) (k)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_18 (s) (k))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_20 (s) (k))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_10 (_ys : (Prod Nat Nat)) (_ystep : (Reasoning.Budget.Spend.Step Nat)) : Bool := + (Bool.true && ((fun (T : Type) (__a : (Reasoning.Budget.Spend.Step T)) (__k0 : Bool) (__k1 : ∀ (_yb : Nat), Bool) => (match __a with | Reasoning.Budget.Spend.Step.Tick => __k0 | Reasoning.Budget.Spend.Step.Burn _yb => __k1 _yb : Bool)) Nat _ystep (((Bool.true && Bool.true) && (__fits_16 (_ys)))) (fun (_yb : Nat) => ((Bool.true && (Bool.true && Bool.true)) && (__fits_17 (_ys) (_yb)))))) + +attribute [local irreducible] Reasoning.Budget.Burn.apply Reasoning.Budget.Tick.apply in +theorem __rel_10 (_ys : (Prod Nat Nat)) (_ystep : (Reasoning.Budget.Spend.Step Nat)) : _root_.LexLeanPreservation.FunRel __prog 10 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) _ys), (__enc_0 _ystep)] (_root_.LexLeanPreservation.Rel (__fits_10 _ys _ystep) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Reasoning.Budget.Spend.fire Nat _ys _ystep))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV __enc_0 (fun (__a : (Reasoning.Budget.Spend.Step Nat)) => ((fun (T : Type) (__a : (Reasoning.Budget.Spend.Step T)) (__k0 : Bool) (__k1 : ∀ (_yb : Nat), Bool) => (match __a with | Reasoning.Budget.Spend.Step.Tick => __k0 | Reasoning.Budget.Spend.Step.Burn _yb => __k1 _yb : Bool)) Nat __a (((Bool.true && Bool.true) && (__fits_16 (_ys)))) (fun (_yb : Nat) => ((Bool.true && (Bool.true && Bool.true)) && (__fits_17 (_ys) (_yb)))))) (fun (__a : (Reasoning.Budget.Spend.Step Nat)) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) ((fun (T : Type) (__a : (Reasoning.Budget.Spend.Step T)) (__k0 : (Option (Prod Nat Nat))) (__k1 : ∀ (_yb : Nat), (Option (Prod Nat Nat))) => (match __a with | Reasoning.Budget.Spend.Step.Tick => __k0 | Reasoning.Budget.Spend.Step.Burn _yb => __k1 _yb : (Option (Prod Nat Nat)))) Nat __a ((Reasoning.Budget.Tick.apply Nat (_ys))) (fun (_yb : Nat) => (Reasoning.Budget.Burn.apply Nat (_ys) (_yb))))) _ystep (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (Reasoning.Budget.Spend.Step Nat)) _ => match __a with | Reasoning.Budget.Spend.Step.Tick => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_16 (_ys)))) | Reasoning.Budget.Spend.Step.Burn _yb => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_17 (_ys) (_yb))))))) + +def __fits_5 (_ys : (Prod Nat Nat)) : Bool := + (((Bool.true && Bool.true) && (__fits_9 (_ys))) && ((fun (T : Type) (__a : (Option (Reasoning.Budget.Spend.Step T))) (__k0 : Bool) (__k1 : ∀ (_ystep : (Reasoning.Budget.Spend.Step T)), Bool) => (match __a with | Option.none => __k0 | Option.some _ystep => __k1 _ystep : Bool)) Nat (Reasoning.Budget.Spend.select Nat (_ys)) ((Bool.true && Bool.true)) (fun (_ystep : (Reasoning.Budget.Spend.Step Nat)) => ((Bool.true && (Bool.true && Bool.true)) && (__fits_10 (_ys) (_ystep)))))) + +attribute [local irreducible] Reasoning.Budget.Spend.fire Reasoning.Budget.Spend.select in +theorem __rel_5 (_ys : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 5 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) _ys)] (_root_.LexLeanPreservation.Rel (__fits_5 _ys) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Reasoning.Budget.Spend.next Nat _ys))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_0) (fun (__a : (Option (Reasoning.Budget.Spend.Step Nat))) => ((fun (T : Type) (__a : (Option (Reasoning.Budget.Spend.Step T))) (__k0 : Bool) (__k1 : ∀ (_ystep : (Reasoning.Budget.Spend.Step T)), Bool) => (match __a with | Option.none => __k0 | Option.some _ystep => __k1 _ystep : Bool)) Nat __a ((Bool.true && Bool.true)) (fun (_ystep : (Reasoning.Budget.Spend.Step Nat)) => ((Bool.true && (Bool.true && Bool.true)) && (__fits_10 (_ys) (_ystep)))))) (fun (__a : (Option (Reasoning.Budget.Spend.Step Nat))) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) ((fun (T : Type) (__a : (Option (Reasoning.Budget.Spend.Step T))) (__k0 : (Option (Prod Nat Nat))) (__k1 : ∀ (_ystep : (Reasoning.Budget.Spend.Step T)), (Option (Prod Nat Nat))) => (match __a with | Option.none => __k0 | Option.some _ystep => __k1 _ystep : (Option (Prod Nat Nat)))) Nat __a ((Option.none : (Option (Prod Nat Nat)))) (fun (_ystep : (Reasoning.Budget.Spend.Step Nat)) => (Reasoning.Budget.Spend.fire Nat (_ys) (_ystep))))) (Reasoning.Budget.Spend.select Nat (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_9 (_ys))) (fun (__a : (Option (Reasoning.Budget.Spend.Step Nat))) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) | Option.some _ystep => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_10 (_ys) (_ystep))))))) + +def __fits_6 (x : (Prod Nat Nat)) : Bool := + ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((x).2 + (3 : Nat)) 18446744073709551616)) && Bool.true)) && Bool.true) + +theorem __rel_6 (x : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 6 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) x)] (_root_.LexLeanPreservation.Rel (__fits_6 x) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Budget.Spend.observe Nat x))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (x).2 (3 : Nat))) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) + +def __fits_2 (x : (Prod Nat Nat)) : Bool := + ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((x).2 + (4 : Nat)) 18446744073709551616)) && (((Bool.true && Bool.true) && (__fits_6 (x))) && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : (Prod Nat Nat)) => __fits_5 __p0) ((Reasoning.Budget.Spend.next Nat)) (((x).2 + (4 : Nat))) ((Reasoning.Budget.Spend.observe Nat (x))))) + +attribute [local irreducible] Reasoning.Budget.Spend.observe in +theorem __rel_2 (x : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 2 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) x)] (_root_.LexLeanPreservation.Rel (__fits_2 x) ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) _root_.LexLeanTarget.TargetSyntax.Value.bool) (Reasoning.Budget.Spend.saturate Nat x))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (x).2 (4 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_6 (x))) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterateUntil (es := (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (_root_.LexLeanPreservation.optEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) ((Reasoning.Budget.Spend.next Nat)) (fun (__p0 : (Prod Nat Nat)) => __fits_5 __p0) 5 [] (fun (__p0 : (Prod Nat Nat)) => __rel_5 __p0) (_root_.LexLeanCollections.iterateUntil ((Reasoning.Budget.Spend.next Nat))) (fun _ => rfl) (fun _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (p := __prog) (fi := 4) (ts := (.pair .nat .nat)) rfl (((x).2 + (4 : Nat))) ((Reasoning.Budget.Spend.observe Nat (x))))) + +def __fits_8 (account : (Prod Nat Nat)) : Bool := + ((Bool.true && Bool.true) && Bool.true) + +theorem __rel_8 (account : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 8 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) account)] (_root_.LexLeanPreservation.Rel (__fits_8 account) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Budget.Spend.extract Nat account))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some) + +def __fits_11 (x : (Prod Nat Nat)) (r : Nat) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_11 (x : (Prod Nat Nat)) (r : Nat) : _root_.LexLeanPreservation.FunRel __prog 11 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) x), (_root_.LexLeanTarget.TargetSyntax.Value.nat r)] (_root_.LexLeanPreservation.Rel (__fits_11 x r) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Budget.emptyCheck (Prod Nat Nat) x r))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq r (0 : Nat))) + +def __fits_7 (x : (Prod Nat Nat)) (_ys : (Prod Nat Nat)) : Bool := + (((Bool.true && Bool.true) && (__fits_8 (_ys))) && (match (Reasoning.Budget.Spend.extract Nat (_ys)) with | Option.none => (Bool.true && Bool.true) | Option.some _yv => (((Bool.true && (Bool.true && Bool.true)) && (__fits_11 (x) (_yv))) && (if (Reasoning.Budget.emptyCheck (Prod Nat Nat) (x) (_yv)) then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) + +attribute [local irreducible] Reasoning.Budget.Spend.extract Reasoning.Budget.emptyCheck in +theorem __rel_7 (x : (Prod Nat Nat)) (_ys : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 7 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) x), ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) _ys)] (_root_.LexLeanPreservation.Rel (__fits_7 x _ys) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Budget.Spend.accept Nat x _ys))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Option Nat)) => (match __a with | Option.none => (Bool.true && Bool.true) | Option.some _yv => (((Bool.true && (Bool.true && Bool.true)) && (__fits_11 (x) (_yv))) && (if (Reasoning.Budget.emptyCheck (Prod Nat Nat) (x) (_yv)) then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__a : (Option Nat)) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (match __a with | Option.none => (Option.none : (Option Nat)) | Option.some _yv => (if (Reasoning.Budget.emptyCheck (Prod Nat Nat) (x) (_yv)) then (Option.some (_yv) : (Option Nat)) else (Option.none : (Option Nat))))) (Reasoning.Budget.Spend.extract Nat (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_8 (_ys))) (fun (__a : (Option Nat)) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) | Option.some _yv => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Option.some (_yv) : (Option Nat)) else (Option.none : (Option Nat)))) (Reasoning.Budget.emptyCheck (Prod Nat Nat) (x) (_yv)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_11 (x) (_yv))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))) + +def __fits_3 (x : (Prod Nat Nat)) (_ys : (Prod Nat Nat)) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && (__fits_7 (x) (_ys))) && (match (Reasoning.Budget.Spend.accept Nat (x) (_ys)) with | Option.some _yv => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_8 (_ys))) && (match (Reasoning.Budget.Spend.extract Nat (_ys)) with | Option.some _yv => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) + +attribute [local irreducible] Reasoning.Budget.Spend.accept Reasoning.Budget.Spend.extract in +theorem __rel_3 (x : (Prod Nat Nat)) (_ys : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 3 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) x), ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) _ys)] (_root_.LexLeanPreservation.Rel (__fits_3 x _ys) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Budget.Spend.conclude Nat x _ys))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Option Nat)) => (match __a with | Option.some _yv => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_8 (_ys))) && (match (Reasoning.Budget.Spend.extract Nat (_ys)) with | Option.some _yv => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) (fun (__a : (Option Nat)) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (match __a with | Option.some _yv => (Except.ok (_yv) : (Except (Prod Bool Bool) Nat)) | Option.none => (match (Reasoning.Budget.Spend.extract Nat (_ys)) with | Option.some _yv => (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)) | Option.none => (Except.error (((Bool.false, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat))))) (Reasoning.Budget.Spend.accept Nat (x) (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_7 (x) (_ys))) (fun (__a : (Option Nat)) _ => match __a with | Option.some _yv => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Option Nat)) => (match __a with | Option.some _yv => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__a : (Option Nat)) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (match __a with | Option.some _yv => (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)) | Option.none => (Except.error (((Bool.false, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)))) (Reasoning.Budget.Spend.extract Nat (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_8 (_ys))) (fun (__a : (Option Nat)) _ => match __a with | Option.some _yv => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error))))))))) + +def __fits_1 (x : (Prod Nat Nat)) : Bool := + (((Bool.true && Bool.true) && (__fits_2 (x))) && (let _yfinal : (Prod (Prod Nat Nat) Bool) := (Reasoning.Budget.Spend.saturate Nat (x)); (Bool.true && (match (_yfinal).2 with | Bool.true => ((Bool.true && (Bool.true && Bool.true)) && (__fits_3 (x) ((_yfinal).1))) | Bool.false => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) + +attribute [local irreducible] Reasoning.Budget.Spend.conclude Reasoning.Budget.Spend.saturate in +theorem __rel_1 (x : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 1 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) x)] (_root_.LexLeanPreservation.Rel (__fits_1 x) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Budget.Spend.verdict Nat x))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (let _yfinal : (Prod (Prod Nat Nat) Bool) := (Reasoning.Budget.Spend.saturate Nat (x)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_2 (x))) (_root_.LexLeanPreservation.conv_matchV _root_.LexLeanTarget.TargetSyntax.Value.bool (fun (__a : Bool) => (match __a with | Bool.true => ((Bool.true && (Bool.true && Bool.true)) && (__fits_3 (x) ((_yfinal).1))) | Bool.false => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__a : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (match __a with | Bool.true => (Reasoning.Budget.Spend.conclude Nat (x) ((_yfinal).1)) | Bool.false => (Except.error (((Bool.false, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)))) (_yfinal).2 (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (fun (__a : Bool) _ => match __a with | Bool.true => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil)) (__rel_3 (x) ((_yfinal).1)))) | Bool.false => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)))))) + +def __fits_0 (x : Nat) : Bool := + (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && (__fits_1 ((x, x)))) && (match (Reasoning.Budget.Spend.verdict Nat ((x, x))) with | Except.ok left => Bool.true | Except.error failure => Bool.true)) + +attribute [local irreducible] Reasoning.Budget.Spend.verdict in +theorem __rel_0 (x : Nat) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_0 x) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.spendLeft x))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Except (Prod Bool Bool) Nat)) => (match __a with | Except.ok left => Bool.true | Except.error failure => Bool.true)) (fun (__a : (Except (Prod Bool Bool) Nat)) => _root_.LexLeanTarget.TargetSyntax.Value.nat (match __a with | Except.ok left => left | Except.error failure => (9 : Nat))) (Reasoning.Budget.Spend.verdict Nat ((x, x))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) (__rel_1 ((x, x)))) (fun (__a : (Except (Prod Bool Bool) Nat)) _ => match __a with | Except.ok left => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | Except.error failure => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value)))) + +def denote (x : Nat) : _root_.LexLeanPreservation.Obs := + _root_.cond (__fits_0 x) (_root_.LexLeanPreservation.Obs.value ((_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.spendLeft x)))) _root_.LexLeanPreservation.Obs.overflow + +theorem root (x : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_0 x) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.spendLeft x))) := + _root_.LexLeanPreservation.run_of_funRel (__rel_0 x) + +end LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7 diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R7/Compose/RustStd.lex.tex b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R7/Compose/RustStd.lex.tex new file mode 100644 index 000000000..9f378ffa2 --- /dev/null +++ b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R7/Compose/RustStd.lex.tex @@ -0,0 +1,505 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7, + LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.Compose.RustStd.__wt_0 : @18 := @398 { + all: [LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.Compose.RustStd.__wt_0], + class: false, + generated: false, + policy: exact{axioms: [propext]}, + transparency: semireducible +} +theorem LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.Compose.RustStd.root : @1017 := @1018 { + all: [LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.RustStd.program +@1 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.RustStd.krate +@2 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.RustStd.flags +@3 := Reasoning.Budget.Spend.Step +@4 := Nat +@5 := @3 @4 +@6 := #0 +@8 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.__enc_0 @6 +@9 := LexLeanPreservation.Rust.WT +@10 := LexLeanTarget.TargetSyntax.Ty.adt +@11 := 0 +@12 := @10 @11 +@13 := @9 @0 +@14 := @13 @1 +@15 := @14 @2 +@17 := @15 @8 @12 +@18 := (__v : @5) -> @17 +@19 := fun (__v : @5) => @17 +@20 := LexLeanTarget.TargetSyntax.Value +@21 := LexLeanTarget.TargetSyntax.Ty +@22 := List.nil.{0} +@23 := List.cons.{0} +@24 := @22 @20 +@25 := @22 @21 +@26 := LexLeanTarget.TargetSyntax.Program +@27 := LexLeanPreservation.Rust.RCrate +@28 := LexLeanPreservation.Rust.Flags +@29 := LexLeanPreservation.Rust.WTL +@30 := #2 +@31 := @29 @30 +@32 := #1 +@39 := {p : @26} -> {c : @27} -> {A : @28} -> @31 @32 @6 @24 @25 +@41 := LexLeanPreservation.Rust.wtl_nil @0 +@42 := @29 @0 +@48 := {c : @27} -> {A : @28} -> @42 @32 @6 @24 @25 +@49 := @41 @1 +@50 := @42 @1 +@54 := {A : @28} -> @50 @6 @24 @25 +@55 := @49 @2 +@56 := @50 @2 +@57 := @56 @24 +@58 := @57 @25 +@59 := List.{0} +@60 := @59 @20 +@61 := @59 @21 +@62 := Eq.{1} +@63 := Option.{0} +@64 := @63 @61 +@65 := @62 @64 +@66 := LexLeanPreservation.Rust.adtFields +@67 := #6 +@68 := @66 @67 +@69 := #3 +@72 := @65 (@68 @69 @30) +@73 := Option.some.{0} +@74 := @73 @61 +@75 := @74 @6 +@76 := @72 @75 +@77 := #7 +@79 := @29 @77 @67 +@80 := #5 +@83 := @79 @80 @30 @32 +@84 := #8 +@87 := @9 @84 @77 @67 +@88 := LexLeanTarget.TargetSyntax.Value.adt +@89 := #4 +@91 := @88 @89 @69 +@92 := @87 @91 +@93 := @10 @80 +@103 := {p : @26} -> + {c : @27} -> + {A : @28} -> + {i : @4} -> {k : @4} -> {fs : @60} -> {tys : @61} -> (h : @76) -> (hf : @83) -> @92 @93 +@105 := LexLeanPreservation.Rust.wt_adt @0 +@106 := @66 @0 +@110 := @65 (@106 @69 @30) @75 +@114 := @42 @67 @80 @30 @32 +@126 := {c : @27} -> + {A : @28} -> + {i : @4} -> + {k : @4} -> {fs : @60} -> {tys : @61} -> (h : @110) -> (hf : @114) -> @13 @77 @67 @91 @93 +@127 := @105 @1 +@130 := @50 @80 @30 @32 +@140 := {A : @28} -> + {i : @4} -> {k : @4} -> {fs : @60} -> {tys : @61} -> (h : @110) -> (hf : @130) -> @14 @67 @91 @93 +@141 := @127 @2 +@143 := @56 @30 @32 +@144 := @15 @91 +@151 := {i : @4} -> {k : @4} -> {fs : @60} -> {tys : @61} -> (h : @110) -> (hf : @143) -> @144 @93 +@152 := @141 @11 +@153 := @106 @11 +@162 := {k : @4} -> {fs : @60} -> {tys : @61} -> (h : @65 (@153 @30) @75) -> (hf : @143) -> @144 @12 +@163 := @152 @11 +@164 := @153 @11 +@165 := @65 @164 +@166 := @165 @75 +@167 := @88 @11 +@174 := {fs : @60} -> {tys : @61} -> (h : @166) -> (hf : @143) -> @15 (@167 @69) @12 +@175 := @163 @24 +@176 := @57 @32 +@179 := @15 (@167 @24) @12 +@182 := {tys : @61} -> (h : @166) -> (hf : @176) -> @179 +@183 := @175 @25 +@187 := (h : @165 (@74 @25)) -> (hf : @58) -> @179 +@188 := Eq.refl.{1} +@189 := @188 @64 +@192 := @183 (@189 @164) @55 +@193 := LexLeanTarget.TargetSyntax.Value.nat +@194 := @193 @6 +@195 := LexLeanTarget.TargetSyntax.Ty.nat +@204 := {p : @26} -> {c : @27} -> {A : @28} -> (n : @4) -> @9 @69 @30 @32 @194 @195 +@206 := LexLeanPreservation.Rust.wt_nat @0 +@213 := {c : @27} -> {A : @28} -> (n : @4) -> @13 @30 @32 @194 @195 +@214 := @206 @1 +@219 := {A : @28} -> (n : @4) -> @14 @32 @194 @195 +@220 := @214 @2 +@222 := @15 @194 @195 +@223 := (n : @4) -> @222 +@224 := @220 @6 +@225 := @23 @20 +@227 := @225 @194 @24 +@228 := @23 @21 +@229 := @228 @195 +@230 := @229 @25 +@235 := @9 @67 @80 @89 @69 @30 +@238 := @29 @84 @77 @67 +@240 := @225 @80 @69 +@241 := @238 @240 +@243 := @228 @89 @30 +@253 := {p : @26} -> + {c : @27} -> + {A : @28} -> + {v : @20} -> {t : @21} -> {vs : @60} -> {ts : @61} -> (h : @235) -> (hs : @83) -> @241 @243 +@255 := LexLeanPreservation.Rust.wtl_cons @0 +@271 := {c : @27} -> + {A : @28} -> + {v : @20} -> + {t : @21} -> + {vs : @60} -> {ts : @61} -> (h : @13 @80 @89 @69 @30) -> (hs : @114) -> @42 @77 @67 @240 @243 +@272 := @255 @1 +@285 := {A : @28} -> + {v : @20} -> + {t : @21} -> {vs : @60} -> {ts : @61} -> (h : @14 @89 @69 @30) -> (hs : @130) -> @50 @67 @240 @243 +@286 := @272 @2 +@296 := {v : @20} -> + {t : @21} -> {vs : @60} -> {ts : @61} -> (h : @15 @69 @30) -> (hs : @143) -> @56 @240 @243 +@297 := @286 @194 +@298 := @193 @69 +@299 := @15 @298 +@300 := @299 @30 +@301 := @193 @80 +@302 := @225 @301 +@304 := @56 (@302 @69) +@310 := {t : @21} -> {vs : @60} -> {ts : @61} -> (h : @300) -> (hs : @143) -> @304 @243 +@311 := @297 @195 +@312 := @193 @30 +@314 := @15 @312 @195 +@315 := @193 @89 +@316 := @225 @315 +@318 := @56 (@316 @69) +@319 := @229 @30 +@324 := {vs : @60} -> {ts : @61} -> (h : @314) -> (hs : @143) -> @318 @319 +@325 := @311 @24 +@326 := @193 @32 +@328 := @15 @326 @195 +@330 := @225 @298 @24 +@331 := @56 @330 +@335 := {ts : @61} -> (h : @328) -> (hs : @176) -> @331 @319 +@336 := @325 @25 +@338 := @225 @312 @24 +@339 := @56 @338 +@342 := (h : @222) -> (hs : @58) -> @339 @230 +@343 := @336 @224 +@345 := @225 @326 @24 +@346 := @56 @345 +@347 := @346 @230 +@348 := (hs : @58) -> @347 +@349 := @343 @55 +@351 := @56 @227 @230 +@352 := 1 +@353 := @152 @352 +@354 := @153 @352 +@355 := @65 @354 +@356 := @355 @75 +@357 := @88 @352 +@364 := {fs : @60} -> {tys : @61} -> (h : @356) -> (hf : @143) -> @15 (@357 @69) @12 +@365 := @353 @227 +@372 := {tys : @61} -> (h : @356) -> (hf : @339 @32) -> @15 (@357 @330) @12 +@373 := @365 @230 +@380 := (h : @355 (@74 @230)) -> (hf : @347) -> @15 (@357 @338) @12 +@382 := @373 (@189 @354) +@386 := (hf : @351) -> @15 (@357 @345) @12 +@387 := @382 @349 +@390 := @15 (@357 @227) @12 +@391 := fun (__x0 : @4) => @387 +@398 := fun (__v : @5) => Reasoning.Budget.Spend.Step.casesOn.{0} @4 @19 @6 @192 @391 +@399 := @220 @32 +@402 := Prod.{0, 0} @4 @20 +@406 := Prod.mk.{0, 0} @4 @20 @11 +@407 := @406 @326 +@408 := @22 @402 +@409 := @23 @402 +@411 := @409 @407 @408 +@412 := Bool.true +@413 := LexLeanTarget.TargetSyntax.Function +@414 := LexLeanTarget.TargetSyntax.Program.functions +@415 := @414 @0 +@416 := @22 @4 +@417 := LexLeanTarget.TargetSyntax.Ty.unit +@418 := LexLeanTarget.TargetSyntax.Value.unit +@421 := LexLeanTarget.TargetSyntax.Expr.value @417 @418 +@426 := LexLeanTarget.TargetSyntax.Function.mk @416 @25 @417 @421 +@431 := List.getD.{0} @413 @415 @11 @426 +@435 := fun (__e_n : @4) => LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.RustStd.root @6 @11 +@436 := @286 @326 +@438 := @15 @315 @30 +@439 := @193 @67 +@440 := @225 @439 +@448 := {t : @21} -> {vs : @60} -> {ts : @61} -> (h : @438) -> (hs : @143) -> @56 (@440 @69) @243 +@449 := @436 @195 +@455 := {vs : @60} -> {ts : @61} -> (h : @299 @195) -> (hs : @143) -> @304 @319 +@456 := @449 @24 +@457 := @316 @24 +@458 := @56 @457 +@462 := {ts : @61} -> (h : @314) -> (hs : @176) -> @458 @319 +@463 := @456 @25 +@466 := (h : @328) -> (hs : @58) -> @331 @230 +@468 := @463 @399 @55 +@469 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.denote +@470 := @469 @32 +@471 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.__fits_0 +@472 := @471 @32 +@475 := @193 (Reasoning.Main.spendLeft @32) +@477 := LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.root @32 +@478 := Bool +@479 := Ne.{1} +@480 := LexLeanPreservation.Obs +@481 := @479 @480 +@482 := LexLeanPreservation.Rel +@485 := @481 (@482 @32 @6) +@486 := LexLeanPreservation.Obs.stuck +@489 := (f : @478) -> (v : @20) -> @485 @486 +@491 := LexLeanPreservation.Rust.rel_ne_stuck @472 +@497 := (v : @20) -> @481 (@482 (@471 @30) @6) @486 +@498 := @491 @475 +@502 := @481 (@482 @472 @475) @486 +@503 := @59 @402 +@504 := LexLeanPreservation.Rust.FunSem +@505 := #9 +@511 := (n : @4) -> @504 @505 @84 @77 @6 @67 +@512 := @63 @413 +@513 := @62 @512 +@520 := LexLeanRuntime.index (@59 @413) @413 (LexLeanRuntime.instIndexableList @413) +@524 := @513 (@520 (@414 @505) @67) +@525 := @73 @413 +@526 := @525 @80 +@527 := @524 @526 +@528 := #10 +@532 := @29 @528 @505 @84 @80 +@533 := LexLeanTarget.TargetSyntax.Function.types +@534 := @533 @67 +@535 := @532 @534 +@536 := @63 @503 +@537 := @62 @536 +@538 := LexLeanTarget.TargetSemantics.bindAll +@539 := LexLeanTarget.TargetSyntax.Function.parameters +@544 := @537 (@538 (@539 @77) @67 @408) +@545 := @73 @503 +@546 := @545 @80 +@547 := @544 @546 +@548 := @63 @478 +@549 := @62 @548 +@550 := LexLeanPreservation.Rust.fnFallible +@551 := #11 +@554 := @549 (@550 @551 @505) +@555 := @73 @478 +@556 := @555 @80 +@557 := @554 @556 +@558 := LexLeanPreservation.RunConv +@559 := #13 +@563 := @558 @559 @528 @84 @80 +@565 := @481 @67 @486 +@566 := Exists.{1} +@567 := LexLeanPreservation.Rust.ROut +@568 := @566 @567 +@569 := And +@570 := LexLeanPreservation.Rust.RealizesFn +@574 := @569 (@570 @505 @84 @6) +@575 := LexLeanPreservation.Rust.RCI +@577 := @575 #15 +@578 := LexLeanPreservation.Rust.fnIdent +@579 := @578 @559 +@586 := (hne : @565) -> @568 (fun (ro : @567) => @574 (@577 @579 @551 @6)) +@601 := {p : @26} -> + {c : @27} -> + {A : @28} -> + {f : @4} -> + {fn : @413} -> + {args : @60} -> + {env : @503} -> + {F : @478} -> + {o : @480} -> + (hB : @511) -> + (hfn : @527) -> (hwt : @535) -> (hbind : @547) -> (hF : @557) -> (hA : @563) -> @586 +@603 := LexLeanPreservation.Rust.compose @0 +@604 := @504 @0 +@609 := (n : @4) -> @604 @84 @77 @6 @67 +@610 := @520 @415 +@613 := @513 (@610 @67) @526 +@617 := @42 @505 @84 @80 @534 +@618 := @558 @0 +@621 := @618 @528 @84 @80 +@635 := {c : @27} -> + {A : @28} -> + {f : @4} -> + {fn : @413} -> + {args : @60} -> + {env : @503} -> + {F : @478} -> + {o : @480} -> + (hB : @609) -> + (hfn : @613) -> (hwt : @617) -> (hbind : @547) -> (hF : @557) -> (hA : @621) -> @586 +@636 := @603 @1 +@637 := @604 @1 +@641 := (n : @4) -> @637 @77 @6 @67 +@644 := @50 @84 @80 @534 +@645 := @550 @1 +@648 := @549 (@645 @505) @556 +@649 := @575 @1 +@659 := (hbind : @547) -> + (hF : @648) -> (hA : @621) -> (hne : @565) -> @568 (fun (ro : @567) => @574 (@649 @579 @551 @6)) +@669 := {A : @28} -> + {f : @4} -> + {fn : @413} -> + {args : @60} -> + {env : @503} -> {F : @478} -> {o : @480} -> (hB : @641) -> (hfn : @613) -> (hwt : @644) -> @659 +@670 := @636 @2 +@672 := @637 @2 @6 +@674 := (n : @4) -> @672 @67 +@675 := @56 @80 +@676 := @675 @534 +@685 := {f : @4} -> + {fn : @413} -> + {args : @60} -> + {env : @503} -> {F : @478} -> {o : @480} -> (hB : @674) -> (hfn : @613) -> (hwt : @676) -> @659 +@686 := @670 @11 +@688 := (n : @4) -> @672 @11 +@689 := @610 @11 +@690 := @513 @689 +@691 := @690 @526 +@692 := @645 @11 +@693 := @549 @692 +@694 := @693 @556 +@695 := @618 @11 +@697 := @695 @84 @80 +@699 := @649 (@578 @11) +@707 := (hF : @694) -> (hA : @697) -> (hne : @565) -> @568 (fun (ro : @567) => @574 (@699 @551 @6)) +@716 := {fn : @413} -> + {args : @60} -> + {env : @503} -> + {F : @478} -> {o : @480} -> (hB : @688) -> (hfn : @691) -> (hwt : @676) -> (hbind : @547) -> @707 +@717 := @686 @431 +@719 := @690 (@525 @431) +@720 := @533 @431 +@721 := @675 @720 +@723 := @538 (@539 @431) +@735 := {args : @60} -> + {env : @503} -> + {F : @478} -> + {o : @480} -> + (hB : @688) -> (hfn : @719) -> (hwt : @721) -> (hbind : @537 (@723 @67 @408) @546) -> @707 +@736 := @717 @345 +@737 := @440 @24 +@739 := @56 @737 @720 +@742 := @225 (@193 @77) @24 +@746 := @537 (@723 @742 @408) @546 +@749 := @225 (@193 @505) @24 +@770 := {env : @503} -> + {F : @478} -> + {o : @480} -> + (hB : @688) -> + (hfn : @719) -> + (hwt : @739) -> + (hbind : @746) -> + (hF : @694) -> + (hA : @695 @749 @80) -> + (hne : @565) -> @568 (fun (ro : @567) => @574 (@699 (@225 (@193 #12) @24) @6)) +@771 := @736 @411 +@772 := @302 @24 +@774 := @56 @772 @720 +@782 := @537 (@723 @737 @408) (@545 (@409 (@406 @439) @408)) +@785 := @225 (@193 @84) @24 +@804 := {F : @478} -> + {o : @480} -> + (hB : @688) -> + (hfn : @719) -> + (hwt : @774) -> + (hbind : @782) -> + (hF : @694) -> + (hA : @695 @785 @80) -> + (hne : @565) -> @568 (fun (ro : @567) => @574 (@699 (@225 (@193 @551) @24) @6)) +@805 := @771 @412 +@806 := @458 @720 +@814 := @537 (@723 @772 @408) (@545 (@409 (@406 @301) @408)) +@816 := @693 (@555 @412) +@818 := @695 @742 @80 +@819 := @570 @412 +@838 := {o : @480} -> + (hB : @688) -> + (hfn : @719) -> + (hwt : @806) -> + (hbind : @814) -> + (hF : @816) -> + (hA : @818) -> + (hne : @565) -> @568 (fun (ro : @567) => @569 (@819 @84 @6) (@699 (@225 (@193 @528) @24) @6)) +@839 := @805 @470 +@840 := @331 @720 +@848 := @537 (@723 @457 @408) (@545 (@409 (@406 @315) @408)) +@849 := @695 @737 +@850 := @469 @67 +@851 := @849 @850 +@852 := @469 @77 +@870 := (hB : @688) -> + (hfn : @719) -> + (hwt : @840) -> + (hbind : @848) -> + (hF : @816) -> + (hA : @851) -> + (hne : @481 @852 @486) -> @568 (fun (ro : @567) => @569 (@819 (@469 @505) @6) (@699 @749 @6)) +@871 := @839 @435 +@872 := @339 @720 +@880 := @537 (@723 @330 @408) (@545 (@409 (@406 @298) @408)) +@881 := @695 @772 +@882 := @469 @80 +@900 := (hfn : @719) -> + (hwt : @872) -> + (hbind : @880) -> + (hF : @816) -> + (hA : @881 @882) -> + (hne : @481 @850 @486) -> @568 (fun (ro : @567) => @569 (@819 (@469 @84) @6) (@699 @785 @6)) +@903 := @871 (@188 @512 @689) +@904 := @346 @720 +@912 := @537 (@723 @338 @408) (@545 (@409 (@406 @312) @408)) +@913 := @695 @457 +@914 := @469 @89 +@930 := (hwt : @904) -> + (hbind : @912) -> + (hF : @816) -> + (hA : @913 @914) -> + (hne : @481 @882 @486) -> @568 (fun (ro : @567) => @569 (@819 @852 @6) (@699 @742 @6)) +@931 := @903 @468 +@933 := @723 @345 @408 +@936 := @537 @933 (@545 @411) +@937 := @695 @330 +@938 := @469 @69 +@953 := (hbind : @936) -> + (hF : @816) -> + (hA : @937 @938) -> + (hne : @481 @914 @486) -> @568 (fun (ro : @567) => @569 (@819 @850 @6) (@699 @737 @6)) +@956 := @931 (@188 @536 @933) +@957 := @695 @338 +@958 := @469 @30 +@972 := (hF : @816) -> + (hA : @957 @958) -> + (hne : @481 @938 @486) -> @568 (fun (ro : @567) => @569 (@819 @882 @6) (@699 @772 @6)) +@975 := @956 (@188 @548 @692) +@989 := (hA : @695 @345 @470) -> + (hne : @481 @958 @486) -> @568 (fun (ro : @567) => @569 (@819 @914 @6) (@699 @457 @6)) +@990 := @975 @477 +@1001 := (hne : @481 @470 @486) -> @568 (fun (ro : @567) => @569 (@819 @938 @6) (@699 @330 @6)) +@1002 := @990 @498 +@1008 := @569 (@819 @958 @6) (@699 @338 @6) +@1010 := @568 (fun (ro : @567) => @1008) +@1012 := @568 (fun (__e_ro : @567) => @1008) +@1014 := LexLeanPreservation.Rust.RepresentableL @227 +@1015 := (__e_hrep : @1014) -> @1012 +@1016 := fun (__e_hrep : @1014) => @1002 +@1017 := (x : @4) -> @1015 +@1018 := fun (x : @4) => @1016 +\end{coremodule} +\end{lexlean} diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R7/RustStd.lean b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R7/RustStd.lean new file mode 100644 index 000000000..21c9e0208 --- /dev/null +++ b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R7/RustStd.lean @@ -0,0 +1,198 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [{ constructors := [[], [.nat]] }], functions := [ + { parameters := [0], types := [.nat], result := .nat, + body := (.«match» .nat (.call 1 [(.build .pair (.pair .nat .nat) [(.var 0), (.var 0)])]) [(.arm .ok [1] (.var 1)), (.arm .error [2] (.value .nat (.nat 9)))]) }, + { parameters := [0], types := [(.pair .nat .nat)], result := (.result .nat (.pair .bool .bool)), + body := (.«let» 1 (.pair (.pair .nat .nat) .bool) (.call 2 [(.var 0)]) (.«match» (.result .nat (.pair .bool .bool)) (.second (.var 1)) [(.arm .true [] (.call 3 [(.var 0), (.first (.var 1))])), (.arm .false [] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])]))])) }, + { parameters := [0], types := [(.pair .nat .nat)], result := (.pair (.pair .nat .nat) .bool), + body := (.call 4 [(.closure 5 []), (.prim .natAdd [(.second (.var 0)), (.value .nat (.nat 4))]), (.call 6 [(.var 0)])]) }, + { parameters := [0, 1], types := [(.pair .nat .nat), (.pair .nat .nat)], result := (.result .nat (.pair .bool .bool)), + body := (.«match» (.result .nat (.pair .bool .bool)) (.call 7 [(.var 0), (.var 1)]) [(.arm .some [2] (.build .ok (.result .nat (.pair .bool .bool)) [(.var 2)])), (.arm .none [] (.«match» (.result .nat (.pair .bool .bool)) (.call 8 [(.var 1)]) [(.arm .some [3] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])])])), (.arm .none [] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])])]))]))]) }, + { parameters := [0, 1, 2], types := [(.fn [(.pair .nat .nat)] (.option (.pair .nat .nat))), .nat, (.pair .nat .nat)], result := (.pair (.pair .nat .nat) .bool), + body := (.«match» (.pair (.pair .nat .nat) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.pair .nat .nat) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.pair .nat .nat) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.pair .nat .nat) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 4 [(.var 0), (.var 3), (.var 4)]))]))]) }, + { parameters := [0], types := [(.pair .nat .nat)], result := (.option (.pair .nat .nat)), + body := (.«match» (.option (.pair .nat .nat)) (.call 9 [(.var 0)]) [(.arm .none [] (.build .none (.option (.pair .nat .nat)) [])), (.arm .some [1] (.call 10 [(.var 0), (.var 1)]))]) }, + { parameters := [0], types := [(.pair .nat .nat)], result := (.pair .nat .nat), + body := (.build .pair (.pair .nat .nat) [(.first (.var 0)), (.prim .natAdd [(.second (.var 0)), (.value .nat (.nat 3))])]) }, + { parameters := [0, 1], types := [(.pair .nat .nat), (.pair .nat .nat)], result := (.option .nat), + body := (.«match» (.option .nat) (.call 8 [(.var 1)]) [(.arm .none [] (.build .none (.option .nat) [])), (.arm .some [2] (.cond (.call 11 [(.var 0), (.var 2)]) (.build .some (.option .nat) [(.var 2)]) (.build .none (.option .nat) [])))]) }, + { parameters := [0], types := [(.pair .nat .nat)], result := (.option .nat), + body := (.build .some (.option .nat) [(.second (.var 0))]) }, + { parameters := [0], types := [(.pair .nat .nat)], result := (.option (.adt 0)), + body := (.«match» (.option (.adt 0)) (.cond (.call 12 [(.var 0)]) (.build .some (.option (.adt 0)) [(.build (.adt 0) (.adt 0) [])]) (.build .none (.option (.adt 0)) [])) [(.arm .some [1] (.build .some (.option (.adt 0)) [(.var 1)])), (.arm .none [] (.call 13 [(.closure 14 [(.var 0)]), (.build .none (.option (.adt 0)) []), (.call 15 [(.var 0)])]))]) }, + { parameters := [0, 1], types := [(.pair .nat .nat), (.adt 0)], result := (.option (.pair .nat .nat)), + body := (.«match» (.option (.pair .nat .nat)) (.var 1) [(.arm (.adt 0) [] (.call 16 [(.var 0)])), (.arm (.adt 1) [2] (.call 17 [(.var 0), (.var 2)]))]) }, + { parameters := [0, 1], types := [(.pair .nat .nat), .nat], result := .bool, + body := (.prim .natEq [(.var 1), (.value .nat (.nat 0))]) }, + { parameters := [0], types := [(.pair .nat .nat)], result := .bool, + body := (.prim .natLt [(.value .nat (.nat 2)), (.second (.var 0))]) }, + { parameters := [0, 1, 2], types := [(.fn [(.option (.adt 0)), .nat] (.option (.adt 0))), (.option (.adt 0)), (.list .nat)], result := (.option (.adt 0)), + body := (.«match» (.option (.adt 0)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 13 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, + { parameters := [0, 1, 2], types := [(.pair .nat .nat), (.option (.adt 0)), .nat], result := (.option (.adt 0)), + body := (.«match» (.option (.adt 0)) (.var 1) [(.arm .some [3] (.build .some (.option (.adt 0)) [(.var 3)])), (.arm .none [] (.cond (.call 18 [(.var 0), (.var 2)]) (.build .some (.option (.adt 0)) [(.build (.adt 1) (.adt 0) [(.var 2)])]) (.build .none (.option (.adt 0)) [])))]) }, + { parameters := [0], types := [(.pair .nat .nat)], result := (.list .nat), + body := (.build .cons (.list .nat) [(.value .nat (.nat 2)), (.build .cons (.list .nat) [(.value .nat (.nat 1)), (.build .nil (.list .nat) [])])]) }, + { parameters := [0], types := [(.pair .nat .nat)], result := (.option (.pair .nat .nat)), + body := (.cond (.call 12 [(.var 0)]) (.build .some (.option (.pair .nat .nat)) [(.call 19 [(.var 0)])]) (.build .none (.option (.pair .nat .nat)) [])) }, + { parameters := [0, 1], types := [(.pair .nat .nat), .nat], result := (.option (.pair .nat .nat)), + body := (.cond (.call 18 [(.var 0), (.var 1)]) (.build .some (.option (.pair .nat .nat)) [(.call 20 [(.var 0), (.var 1)])]) (.build .none (.option (.pair .nat .nat)) [])) }, + { parameters := [0, 1], types := [(.pair .nat .nat), .nat], result := .bool, + body := (.cond (.prim .natLe [(.var 1), (.second (.var 0))]) (.prim .natLt [(.value .nat (.nat 0)), (.var 1)]) (.build .false .bool [])) }, + { parameters := [0], types := [(.pair .nat .nat)], result := (.pair .nat .nat), + body := (.build .pair (.pair .nat .nat) [(.first (.var 0)), (.prim .natSub [(.second (.var 0)), (.value .nat (.nat 1))])]) }, + { parameters := [0, 1], types := [(.pair .nat .nat), .nat], result := (.pair .nat .nat), + body := (.build .pair (.pair .nat .nat) [(.first (.var 0)), (.prim .natSub [(.second (.var 0)), (.var 1)])]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.enum (.adt 0) [{ number := 0, fields := [] }, { number := 1, fields := [.nat] }]), + (.enum (.fn 0) [{ number := 5, fields := [] }]), + (.apply 0 [(.pair .nat .nat)] (.option (.pair .nat .nat)) false [{ function := 5, captures := [], functionFallible := false }]), + (.enum (.fn 1) [{ number := 14, fields := [(.pair .nat .nat)] }]), + (.apply 1 [(.option (.adt 0)), .nat] (.option (.adt 0)) false [{ function := 14, captures := [.copy], functionFallible := false }]), + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 1)) none (.call (.function 1) [(.pair (.copy (.generated .binding 0)) (.copy (.generated .binding 0)))] true))] (.matchOn (.move (.generated .holder 1)) [(.mk (.ok (.bind (.generated .binding 1))) (.mk [] (.succeed (.copy (.generated .binding 1))))), (.mk (.err .wild) (.mk [] (.succeed (.lit (.nat 9)))))]))), + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }] (.fallible (.result .nat (.pair .bool .bool))) (.mk [(.mk (.bind (.generated .binding 1)) (some (.pair (.pair .nat .nat) .bool)) (.call (.function 2) [(.copy (.generated .binding 0))] true)), (.mk (.bind (.generated .holder 3)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 2))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 2)))))] (.cond (.move (.generated .holder 3)) (.mk [] (.succeed (.call (.function 3) [(.copy (.generated .binding 0)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 4)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 4))))] false))) (.mk [] (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))])))))), + (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }] (.fallible (.pair (.pair .nat .nat) .bool)) (.mk [] (.succeed (.call (.function 4) [(.construct (.closure 0 5) []), (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 5))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 5))))), (.mk (.bind (.generated .operand 7)) none (.lit (.nat 4)))] (.call (.runtime .natAdd) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] true))), (.call (.function 6) [(.copy (.generated .binding 0))] true)] false)))), + (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }, { pattern := (.bind (.generated .binding 1)), type := (.pair .nat .nat) }] (.result .nat (.pair .bool .bool)) (.mk [(.mk (.bind (.generated .holder 8)) none (.call (.function 7) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 8)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 9)) none (.call (.function 8) [(.copy (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 9)) [(.mk .none (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))]))), (.mk (.some .wild) (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))])))]))), + (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := (.pair .nat .nat) }] (.pair (.pair .nat .nat) .bool) (.mk [(.mk (.bind (.generated .holder 10)) none (.copy (.generated .binding 1)))] (.cond (.isZero (.generated .holder 10)) (.mk [] (.pair (.copy (.generated .binding 2)) (.lit (.bool false)))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 10))), (.mk (.bind (.generated .holder 12)) none (.block (.mk [(.mk (.bind (.generated .callee 11)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 11) [(.copy (.generated .binding 2))] false))))] (.matchOn (.move (.generated .holder 12)) [(.mk .none (.mk [] (.pair (.copy (.generated .binding 2)) (.lit (.bool true))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)))]))))), + (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }] (.option (.pair .nat .nat)) (.mk [(.mk (.bind (.generated .holder 13)) none (.call (.function 9) [(.copy (.generated .binding 0))] false))] (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [] (.construct (.none (.pair .nat .nat)) []))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.call (.function 10) [(.copy (.generated .binding 0)), (.move (.generated .binding 1))] false)))]))), + (.function (.generated .function 6) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }] (.fallible (.pair .nat .nat)) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 14)))) (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 15))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 15))))), (.mk (.bind (.generated .operand 17)) none (.lit (.nat 3)))] (.call (.runtime .natAdd) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] true))))))), + (.function (.generated .function 7) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }, { pattern := (.bind (.generated .binding 1)), type := (.pair .nat .nat) }] (.option .nat) (.mk [(.mk (.bind (.generated .holder 18)) none (.call (.function 8) [(.copy (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 18)) [(.mk .none (.mk [] (.construct (.none .nat) []))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.cond (.call (.function 11) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.mk [] (.construct .some [(.copy (.generated .binding 2))])) (.mk [] (.construct (.none .nat) [])))))]))), + (.function (.generated .function 8) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }] (.option .nat) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 19))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 19))))]))), + (.function (.generated .function 9) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }] (.option (.adt 0)) (.mk [(.mk (.bind (.generated .holder 20)) none (.cond (.call (.function 12) [(.copy (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 0 0) [])])) (.mk [] (.construct (.none (.adt 0)) []))))] (.matchOn (.move (.generated .holder 20)) [(.mk .none (.mk [] (.call (.function 13) [(.construct (.closure 1 14) [(.copy (.generated .binding 0))]), (.construct (.none (.adt 0)) []), (.call (.function 15) [(.copy (.generated .binding 0))] false)] false))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.construct .some [(.move (.generated .binding 1))])))]))), + (.function (.generated .function 10) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 0) }] (.option (.pair .nat .nat)) (.mk [(.mk (.bind (.generated .holder 21)) none (.move (.generated .binding 1)))] (.matchOn (.move (.generated .holder 21)) [(.mk (.adt 0 0 []) (.mk [] (.call (.function 16) [(.copy (.generated .binding 0))] false))), (.mk (.adt 0 1 [(.bind (.generated .binding 2))]) (.mk [] (.call (.function 17) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] false)))]))), + (.function (.generated .function 11) [{ pattern := .wild, type := (.pair .nat .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .operand 22)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 23)) none (.lit (.nat 0)))] (.call (.runtime .natEq) [(.move (.generated .operand 22)), (.move (.generated .operand 23))] false))), + (.function (.generated .function 12) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }] .bool (.mk [(.mk (.bind (.generated .operand 25)) none (.lit (.nat 2))), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 24))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 24)))))] (.call (.runtime .natLt) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))), + (.function (.generated .function 13) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 1) }, { pattern := (.bind (.generated .binding 1)), type := (.option (.adt 0)) }, { pattern := (.bind (.generated .binding 2)), type := (.list .nat) }] (.option (.adt 0)) (.mk [(.mk (.bind (.generated .holder 27)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 27)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 13) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 28)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 28) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]))), + (.function (.generated .function 14) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }, { pattern := (.bind (.generated .binding 1)), type := (.option (.adt 0)) }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.option (.adt 0)) (.mk [(.mk (.bind (.generated .holder 29)) none (.move (.generated .binding 1)))] (.matchOn (.move (.generated .holder 29)) [(.mk .none (.mk [] (.cond (.call (.function 18) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.mk [] (.construct .some [(.construct (.adt 0 1) [(.copy (.generated .binding 2))])])) (.mk [] (.construct (.none (.adt 0)) []))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.construct .some [(.move (.generated .binding 3))])))]))), + (.function (.generated .function 15) [{ pattern := .wild, type := (.pair .nat .nat) }] (.list .nat) (.mk [] (.construct .cons [(.lit (.nat 2)), (.construct .cons [(.lit (.nat 1)), (.construct (.nil .nat) [])])]))), + (.function (.generated .function 16) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }] (.option (.pair .nat .nat)) (.mk [] (.cond (.call (.function 12) [(.copy (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 19) [(.copy (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.pair .nat .nat)) []))))), + (.function (.generated .function 17) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.option (.pair .nat .nat)) (.mk [] (.cond (.call (.function 18) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false) (.mk [] (.construct .some [(.call (.function 20) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false)])) (.mk [] (.construct (.none (.pair .nat .nat)) []))))), + (.function (.generated .function 18) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .operand 31)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 32)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 30))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 30)))))] (.cond (.call (.runtime .natLe) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false) (.mk [(.mk (.bind (.generated .operand 33)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 34)) none (.copy (.generated .binding 1)))] (.call (.runtime .natLt) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false)) (.mk [] (.lit (.bool false)))))), + (.function (.generated .function 19) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }] (.pair .nat .nat) (.mk [] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 35)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 35)))) (.block (.mk [(.mk (.bind (.generated .operand 37)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 36))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 36))))), (.mk (.bind (.generated .operand 38)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 37)), (.move (.generated .operand 38))] false)))))), + (.function (.generated .function 20) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.pair .nat .nat) (.mk [] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 39)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 39)))) (.block (.mk [(.mk (.bind (.generated .operand 41)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 40))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 40))))), (.mk (.bind (.generated .operand 42)) none (.copy (.generated .binding 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 41)), (.move (.generated .operand 42))] false))))))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [(([(.pair .nat .nat)], (.option (.pair .nat .nat))), false), (([(.option (.adt 0)), .nat], (.option (.adt 0))), false)] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.call (.function 1) [(.pair (.copy (.generated .binding 0)) (.copy (.generated .binding 0)))] true))], (.matchOn (.move (.generated .holder 1)) [(.mk (.ok (.bind (.generated .binding 1))) (.mk [] (.succeed (.copy (.generated .binding 1))))), (.mk (.err .wild) (.mk [] (.succeed (.lit (.nat 9)))))]), [(0, .nat, (some 0))], rfl, rfl, + (Corr.matchArms (st := (.result .nat (.pair .bool .bool))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, .nat, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.copy (.generated .binding 1)))) (Corr.mCons (Γ' := [(2, (.pair .bool .bool), none), (0, .nat, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.lit (.nat 9)))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl)))) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some (.pair (.pair .nat .nat) .bool)) (.call (.function 2) [(.copy (.generated .binding 0))] true)), (.mk (.bind (.generated .holder 3)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 2))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 2)))))], (.cond (.move (.generated .holder 3)) (.mk [] (.succeed (.call (.function 3) [(.copy (.generated .binding 0)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 4)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 4))))] false))) (.mk [] (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))])))), [(0, (.pair .nat .nat), (some 0))], rfl, rfl, + (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.matchBool (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 2))]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 2))) (Corr.second (ta := (.pair .nat .nat)) (tb := .bool) (Corr.var rfl rfl) rfl)) rfl rfl (Corr.kIf (la := []) (ta := (.succeed (.call (.function 3) [(.copy (.generated .binding 0)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 4)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 4))))] false))) (lb := []) (tb := (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))) (Corr.fOfB (Corr.callOps (ts := [(.pair .nat .nat), (.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 4)), .wild]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 4))) (Corr.first (ta := (.pair .nat .nat)) (tb := .bool) (Corr.var rfl rfl) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)))))⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [], (.succeed (.call (.function 4) [(.construct (.closure 0 5) []), (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 5))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 5))))), (.mk (.bind (.generated .operand 7)) none (.lit (.nat 4)))] (.call (.runtime .natAdd) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] true))), (.call (.function 6) [(.copy (.generated .binding 0))] true)] false)), [(0, (.pair .nat .nat), (some 0))], rfl, rfl, + (Corr.fOfB (Corr.callOps (ts := [(.fn [(.pair .nat .nat)] (.option (.pair .nat .nat))), .nat, (.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := false) (ff := false) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 6)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 5))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 5))))), (.mk (.bind (.generated .operand 7)) none (.lit (.nat 4)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 5))]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 5))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl))⟩⟩ + +theorem fun3 : FunOK program krate flags 3 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 8)) none (.call (.function 7) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false))], (.matchOn (.move (.generated .holder 8)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 9)) none (.call (.function 8) [(.copy (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 9)) [(.mk .none (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))]))), (.mk (.some .wild) (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))])))]), [(1, (.pair .nat .nat), (some 1)), (0, (.pair .nat .nat), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat), (.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.pair .nat .nat), (some 1)), (0, (.pair .nat .nat), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 9)) none (.call (.function 8) [(.copy (.generated .binding 1))] false))]) (tail := (.matchOn (.move (.generated .holder 9)) [(.mk .none (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))]))), (.mk (.some .wild) (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))])) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, (.pair .nat .nat), (some 1)), (0, (.pair .nat .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.pair .nat .nat), (some 1)), (0, (.pair .nat .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))])) (Corr.mCons (Γ' := [(3, .nat, none), (1, (.pair .nat .nat), (some 1)), (0, (.pair .nat .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)) rfl rfl rfl)) rfl rfl rfl)⟩⟩ + +theorem fun4 : FunOK program krate flags 4 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 10)) none (.copy (.generated .binding 1)))], (.cond (.isZero (.generated .holder 10)) (.mk [] (.pair (.copy (.generated .binding 2)) (.lit (.bool false)))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 10))), (.mk (.bind (.generated .holder 12)) none (.block (.mk [(.mk (.bind (.generated .callee 11)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 11) [(.copy (.generated .binding 2))] false))))] (.matchOn (.move (.generated .holder 12)) [(.mk .none (.mk [] (.pair (.copy (.generated .binding 2)) (.lit (.bool true))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)))]))), [(2, (.pair .nat .nat), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.pair .nat .nat)] (.option (.pair .nat .nat))), (some 0))], rfl, rfl, + (Corr.matchNat (sl := (some 3)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.pair (.copy (.generated .binding 2)) (.lit (.bool false)))) (lb := [(.mk (.bind (.generated .holder 12)) none (.block (.mk [(.mk (.bind (.generated .callee 11)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 11) [(.copy (.generated .binding 2))] false))))]) (tb := (.matchOn (.move (.generated .holder 12)) [(.mk .none (.mk [] (.pair (.copy (.generated .binding 2)) (.lit (.bool true))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)))])) (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))))) (Corr.matchArms (st := (.option (.pair .nat .nat))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 11)) (some (.fn 0)) (.clone (.generated .binding 0)))]) (tail := (.apply (.generated .callee 11) [(.copy (.generated .binding 2))] false)) (Corr.apply (ps := [(.pair .nat .nat)]) (af := false) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (2, (.pair .nat .nat), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.pair .nat .nat)] (.option (.pair .nat .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.pair (.copy (.generated .binding 2)) (.lit (.bool true)))) (Corr.mCons (Γ' := [(4, (.pair .nat .nat), (some 4)), (3, .nat, (some 3)), (2, (.pair .nat .nat), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.pair .nat .nat)] (.option (.pair .nat .nat))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.fn [(.pair .nat .nat)] (.option (.pair .nat .nat))), .nat, (.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))))) rfl rfl rfl)))⟩⟩ + +theorem fun5 : FunOK program krate flags 5 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 13)) none (.call (.function 9) [(.copy (.generated .binding 0))] false))], (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [] (.construct (.none (.pair .nat .nat)) []))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.call (.function 10) [(.copy (.generated .binding 0)), (.move (.generated .binding 1))] false)))]), [(0, (.pair .nat .nat), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option (.adt 0))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(0, (.pair .nat .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none (.pair .nat .nat)) [])) (Corr.mCons (Γ' := [(1, (.adt 0), (some 1)), (0, (.pair .nat .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 10) [(.copy (.generated .binding 0)), (.move (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.pair .nat .nat), (.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun6 : FunOK program krate flags 6 := + ⟨_, rfl, .inl ⟨_, _, [], (.succeed (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 14)))) (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 15))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 15))))), (.mk (.bind (.generated .operand 17)) none (.lit (.nat 3)))] (.call (.runtime .natAdd) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] true))))), [(0, (.pair .nat .nat), (some 0))], rfl, rfl, + (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 14))) (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 16)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 15))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 15))))), (.mk (.bind (.generated .operand 17)) none (.lit (.nat 3)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 15))]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 15))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))⟩⟩ + +theorem fun7 : FunOK program krate flags 7 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 18)) none (.call (.function 8) [(.copy (.generated .binding 1))] false))], (.matchOn (.move (.generated .holder 18)) [(.mk .none (.mk [] (.construct (.none .nat) []))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.cond (.call (.function 11) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.mk [] (.construct .some [(.copy (.generated .binding 2))])) (.mk [] (.construct (.none .nat) [])))))]), [(1, (.pair .nat .nat), (some 1)), (0, (.pair .nat .nat), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.pair .nat .nat), (some 1)), (0, (.pair .nat .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none .nat) [])) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, (.pair .nat .nat), (some 1)), (0, (.pair .nat .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 11) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.mk [] (.construct .some [(.copy (.generated .binding 2))])) (.mk [] (.construct (.none .nat) [])))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 11) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] false)) (lk := []) (Corr.callOps (ts := [(.pair .nat .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.copy (.generated .binding 2))])) (lb := []) (tb := (.construct (.none .nat) [])) (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ + +theorem fun8 : FunOK program krate flags 8 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 19))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 19))))]), [(0, (.pair .nat .nat), (some 0))], rfl, rfl, + (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 19))]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 19))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl)⟩⟩ + +theorem fun9 : FunOK program krate flags 9 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 20)) none (.cond (.call (.function 12) [(.copy (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 0 0) [])])) (.mk [] (.construct (.none (.adt 0)) []))))], (.matchOn (.move (.generated .holder 20)) [(.mk .none (.mk [] (.call (.function 13) [(.construct (.closure 1 14) [(.copy (.generated .binding 0))]), (.construct (.none (.adt 0)) []), (.call (.function 15) [(.copy (.generated .binding 0))] false)] false))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.construct .some [(.move (.generated .binding 1))])))]), [(0, (.pair .nat .nat), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option (.adt 0))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.cond (lc := []) (ce := (.call (.function 12) [(.copy (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 0 0) [])])) (lb := []) (tb := (.construct (.none (.adt 0)) [])) (Corr.build (ts := [(.adt 0)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) (Corr.mCons (Γ' := [(0, (.pair .nat .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 13) [(.construct (.closure 1 14) [(.copy (.generated .binding 0))]), (.construct (.none (.adt 0)) []), (.call (.function 15) [(.copy (.generated .binding 0))] false)] false)) (Corr.mCons (Γ' := [(1, (.adt 0), (some 1)), (0, (.pair .nat .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.move (.generated .binding 1))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.adt 0)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.callOps (ts := [(.fn [(.option (.adt 0)), .nat] (.option (.adt 0))), (.option (.adt 0)), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [(.pair .nat .nat)]) (mask := [false]) (af := false) (ff := false) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl rfl rfl)⟩⟩ + +theorem fun10 : FunOK program krate flags 10 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 21)) none (.move (.generated .binding 1)))], (.matchOn (.move (.generated .holder 21)) [(.mk (.adt 0 0 []) (.mk [] (.call (.function 16) [(.copy (.generated .binding 0))] false))), (.mk (.adt 0 1 [(.bind (.generated .binding 2))]) (.mk [] (.call (.function 17) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] false)))]), [(1, (.adt 0), (some 1)), (0, (.pair .nat .nat), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.adt 0)) (U := []) (view := false) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.adt 0), (some 1)), (0, (.pair .nat .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.call (.function 16) [(.copy (.generated .binding 0))] false)) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, (.adt 0), (some 1)), (0, (.pair .nat .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 17) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.pair .nat .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl rfl rfl)⟩⟩ + +theorem fun11 : FunOK program krate flags 11 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 22)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 23)) none (.lit (.nat 0)))], (.call (.runtime .natEq) [(.move (.generated .operand 22)), (.move (.generated .operand 23))] false), [(1, .nat, (some 1)), (0, (.pair .nat .nat), none)], rfl, rfl, + (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun12 : FunOK program krate flags 12 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 25)) none (.lit (.nat 2))), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 24))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 24)))))], (.call (.runtime .natLt) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false), [(0, (.pair .nat .nat), (some 0))], rfl, rfl, + (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 24))]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 24))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun13 : FunOK program krate flags 13 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 27)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 27)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 13) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 28)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 28) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]), [(2, (.list .nat), (some 2)), (1, (.option (.adt 0)), (some 1)), (0, (.fn [(.option (.adt 0)), .nat] (.option (.adt 0))), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .nat), (some 2)), (1, (.option (.adt 0)), (some 1)), (0, (.fn [(.option (.adt 0)), .nat] (.option (.adt 0))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 1))) (Corr.mCons (Γ' := [(4, (.list .nat), (some 4)), (3, .nat, (some 3)), (2, (.list .nat), (some 2)), (1, (.option (.adt 0)), (some 1)), (0, (.fn [(.option (.adt 0)), .nat] (.option (.adt 0))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 13) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 28)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 28) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.fn [(.option (.adt 0)), .nat] (.option (.adt 0))), (.option (.adt 0)), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 28)) (some (.fn 1)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 28) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] false)) (Corr.apply (ps := [(.option (.adt 0)), .nat]) (af := false) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ + +theorem fun14 : FunOK program krate flags 14 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 29)) none (.move (.generated .binding 1)))], (.matchOn (.move (.generated .holder 29)) [(.mk .none (.mk [] (.cond (.call (.function 18) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.mk [] (.construct .some [(.construct (.adt 0 1) [(.copy (.generated .binding 2))])])) (.mk [] (.construct (.none (.adt 0)) []))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.construct .some [(.move (.generated .binding 3))])))]), [(2, .nat, (some 2)), (1, (.option (.adt 0)), (some 1)), (0, (.pair .nat .nat), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option (.adt 0))) (U := []) (view := false) (idx := [1, 0]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, (.option (.adt 0)), (some 1)), (0, (.pair .nat .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 18) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.mk [] (.construct .some [(.construct (.adt 0 1) [(.copy (.generated .binding 2))])])) (.mk [] (.construct (.none (.adt 0)) [])))) (Corr.mCons (Γ' := [(3, (.adt 0), (some 3)), (2, .nat, (some 2)), (1, (.option (.adt 0)), (some 1)), (0, (.pair .nat .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.move (.generated .binding 3))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.adt 0)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 18) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] false)) (lk := []) (Corr.callOps (ts := [(.pair .nat .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 0 1) [(.copy (.generated .binding 2))])])) (lb := []) (tb := (.construct (.none (.adt 0)) [])) (Corr.build (ts := [(.adt 0)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) rfl rfl rfl)⟩⟩ + +theorem fun15 : FunOK program krate flags 15 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct .cons [(.lit (.nat 2)), (.construct .cons [(.lit (.nat 1)), (.construct (.nil .nat) [])])]), [(0, (.pair .nat .nat), none)], rfl, rfl, + (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)⟩⟩ + +theorem fun16 : FunOK program krate flags 16 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 12) [(.copy (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 19) [(.copy (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.pair .nat .nat)) []))), [(0, (.pair .nat .nat), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 12) [(.copy (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 19) [(.copy (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.pair .nat .nat)) [])) (Corr.build (ts := [(.pair .nat .nat)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ + +theorem fun17 : FunOK program krate flags 17 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 18) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false) (.mk [] (.construct .some [(.call (.function 20) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false)])) (.mk [] (.construct (.none (.pair .nat .nat)) []))), [(1, .nat, (some 1)), (0, (.pair .nat .nat), (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 18) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [(.pair .nat .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 20) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false)])) (lb := []) (tb := (.construct (.none (.pair .nat .nat)) [])) (Corr.build (ts := [(.pair .nat .nat)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ + +theorem fun18 : FunOK program krate flags 18 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 31)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 32)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 30))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 30)))))], (.cond (.call (.runtime .natLe) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false) (.mk [(.mk (.bind (.generated .operand 33)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 34)) none (.copy (.generated .binding 1)))] (.call (.runtime .natLt) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false)) (.mk [] (.lit (.bool false)))), [(1, .nat, (some 1)), (0, (.pair .nat .nat), (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 31)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 32)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 30))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 30)))))]) (ce := (.call (.runtime .natLe) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 30))]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 30))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 33)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 34)) none (.copy (.generated .binding 1)))]) (ta := (.call (.runtime .natLt) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ + +theorem fun19 : FunOK program krate flags 19 := + ⟨_, rfl, .inl ⟨_, _, [], (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 35)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 35)))) (.block (.mk [(.mk (.bind (.generated .operand 37)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 36))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 36))))), (.mk (.bind (.generated .operand 38)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 37)), (.move (.generated .operand 38))] false)))), [(0, (.pair .nat .nat), (some 0))], rfl, rfl, + (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 35)), .wild]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 35))) (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 37)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 36))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 36))))), (.mk (.bind (.generated .operand 38)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 37)), (.move (.generated .operand 38))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 36))]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 36))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))))⟩⟩ + +theorem fun20 : FunOK program krate flags 20 := + ⟨_, rfl, .inl ⟨_, _, [], (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 39)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 39)))) (.block (.mk [(.mk (.bind (.generated .operand 41)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 40))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 40))))), (.mk (.bind (.generated .operand 42)) none (.copy (.generated .binding 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 41)), (.move (.generated .operand 42))] false)))), [(1, .nat, (some 1)), (0, (.pair .nat .nat), (some 0))], rfl, rfl, + (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 39)), .wild]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 39))) (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 41)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 40))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 40))))), (.mk (.bind (.generated .operand 42)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 41)), (.move (.generated .operand 42))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 40))]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 40))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | 3 => exact fun3 + | 4 => exact fun4 + | 5 => exact fun5 + | 6 => exact fun6 + | 7 => exact fun7 + | 8 => exact fun8 + | 9 => exact fun9 + | 10 => exact fun10 + | 11 => exact fun11 + | 12 => exact fun12 + | 13 => exact fun13 + | 14 => exact fun14 + | 15 => exact fun15 + | 16 => exact fun16 + | 17 => exact fun17 + | 18 => exact fun18 + | 19 => exact fun19 + | 20 => exact fun20 + | _ + 21 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.RustStd diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R0.lean b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R0.lean deleted file mode 100644 index b40893d86..000000000 --- a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R0.lean +++ /dev/null @@ -1,391 +0,0 @@ -import LexLeanPreservation.Core -import LexLeanPreservation.Values -import LexLeanPreservation.Primitives -import LexLeanPreservation.Fixed -import LexLeanPreservation.Keys -import LexLeanPreservation.Templates -import LexLeanPreservation.Validate -import Reasoning.Budget -import Reasoning.Clinic -import Reasoning.Main -import Reasoning.Planner -import Reasoning.Screening -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -set_option linter.unusedVariables false -namespace LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0 - -def __prog : _root_.LexLeanTarget.TargetSyntax.Program := - { adts := [{ constructors := [[.nat, .nat, .nat, .nat, .nat, .nat]] }, - { constructors := [[(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]] }, - { constructors := [[], [], [], [], [], [], [], []] }], functions := (( - { parameters := [0, 1, 2, 3, 4, 5], types := [.nat, .nat, .nat, .nat, .nat, .nat], result := .nat, - body := (.«match» .nat (.call 1 [(.build (.adt 0) (.adt 0) [(.var 0), (.var 1), (.var 2), (.var 3), (.var 4), (.var 5)])]) [(.arm .ok [6] (.var 6)), (.arm .error [7] (.value .nat (.nat 9)))]) }) ::( - { parameters := [0], types := [(.adt 0)], result := (.result .nat (.pair .bool .bool)), - body := (.«let» 1 (.pair (.adt 1) .bool) (.call 2 [(.var 0)]) (.«match» (.result .nat (.pair .bool .bool)) (.second (.var 1)) [(.arm .true [] (.call 3 [(.var 0), (.first (.var 1))])), (.arm .false [] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])]))])) }) ::( - { parameters := [0], types := [(.adt 0)], result := (.pair (.adt 1) .bool), - body := (.call 4 [(.closure 5 []), (.value .nat (.nat 11)), (.call 6 [(.var 0)])]) }) ::( - { parameters := [0, 1], types := [(.adt 0), (.adt 1)], result := (.result .nat (.pair .bool .bool)), - body := (.«match» (.result .nat (.pair .bool .bool)) (.call 7 [(.var 0), (.var 1)]) [(.arm .some [2] (.build .ok (.result .nat (.pair .bool .bool)) [(.var 2)])), (.arm .none [] (.«match» (.result .nat (.pair .bool .bool)) (.call 8 [(.var 1)]) [(.arm .some [3] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])])])), (.arm .none [] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])])]))]))]) }) ::( - { parameters := [0, 1, 2], types := [(.fn [(.adt 1)] (.option (.adt 1))), .nat, (.adt 1)], result := (.pair (.adt 1) .bool), - body := (.«match» (.pair (.adt 1) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.adt 1) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.adt 1) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.adt 1) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 4 [(.var 0), (.var 3), (.var 4)]))]))]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.«match» (.option (.adt 1)) (.call 9 [(.var 0)]) [(.arm .none [] (.build .none (.option (.adt 1)) [])), (.arm .some [1] (.call 10 [(.var 0), (.var 1)]))]) }) ::( - { parameters := [0], types := [(.adt 0)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.var 0), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0))]) }) ::( - { parameters := [0, 1], types := [(.adt 0), (.adt 1)], result := (.option .nat), - body := (.«match» (.option .nat) (.call 8 [(.var 1)]) [(.arm .none [] (.build .none (.option .nat) [])), (.arm .some [2] (.cond (.call 11 [(.var 0), (.var 2)]) (.build .some (.option .nat) [(.var 2)]) (.build .none (.option .nat) [])))]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option .nat), - body := (.build .some (.option .nat) [(.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 2)), - body := (.«match» (.option (.adt 2)) (.«match» (.option (.adt 2)) (.«match» (.option (.adt 2)) (.cond (.call 12 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 0) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [1] (.build .some (.option (.adt 2)) [(.var 1)])), (.arm .none [] (.cond (.call 13 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 1) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]) [(.arm .some [2] (.build .some (.option (.adt 2)) [(.var 2)])), (.arm .none [] (.«match» (.option (.adt 2)) (.cond (.call 14 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 2) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [3] (.build .some (.option (.adt 2)) [(.var 3)])), (.arm .none [] (.cond (.call 15 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 3) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]))]) [(.arm .some [4] (.build .some (.option (.adt 2)) [(.var 4)])), (.arm .none [] (.«match» (.option (.adt 2)) (.«match» (.option (.adt 2)) (.cond (.call 16 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 4) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [5] (.build .some (.option (.adt 2)) [(.var 5)])), (.arm .none [] (.cond (.call 17 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 5) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]) [(.arm .some [6] (.build .some (.option (.adt 2)) [(.var 6)])), (.arm .none [] (.«match» (.option (.adt 2)) (.cond (.call 18 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 6) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [7] (.build .some (.option (.adt 2)) [(.var 7)])), (.arm .none [] (.cond (.call 19 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 7) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]))]))]) }) ::( - { parameters := [0, 1], types := [(.adt 1), (.adt 2)], result := (.option (.adt 1)), - body := (.«match» (.option (.adt 1)) (.var 1) [(.arm (.adt 0) [] (.call 20 [(.var 0)])), (.arm (.adt 1) [] (.call 21 [(.var 0)])), (.arm (.adt 2) [] (.call 22 [(.var 0)])), (.arm (.adt 3) [] (.call 23 [(.var 0)])), (.arm (.adt 4) [] (.call 24 [(.var 0)])), (.arm (.adt 5) [] (.call 25 [(.var 0)])), (.arm (.adt 6) [] (.call 26 [(.var 0)])), (.arm (.adt 7) [] (.call 27 [(.var 0)]))]) }) ::( - { parameters := [0, 1], types := [(.adt 0), .nat], result := .bool, - body := (.cond (.prim .natLe [(.var 1), (.value .nat (.nat 3))]) (.cond (.prim .natEq [(.var 1), (.value .nat (.nat 3))]) (.build .true .bool []) (.prim .boolNot [(.cond (.call 28 [(.var 0)]) (.cond (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 1))]) (.cond (.call 29 [(.var 0)]) (.call 30 [(.var 0)]) (.build .false .bool [])) (.build .false .bool [])) (.build .false .bool []))])) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 1), (.value .nat (.nat 0))]) (.call 29 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 2), (.value .nat (.nat 0))]) (.call 30 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 3), (.value .nat (.nat 0))]) (.call 31 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 4), (.value .nat (.nat 0))]) (.call 32 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 0))]) (.prim .natLe [(.value .nat (.nat 2)), (.prim .natAdd [(.prim .natAdd [(.prim .natAdd [(.field (.var 0) 1), (.field (.var 0) 2)]), (.field (.var 0) 3)]), (.field (.var 0) 4)])]) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 0))]) (.cond (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 1))]) (.prim .natEq [(.field (.field (.var 0) 0) 5), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 7), (.value .nat (.nat 0))]) (.cond (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 1))]) (.call 28 [(.field (.var 0) 0)]) (.build .false .bool [])) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natLt [(.field (.var 0) 8), (.value .nat (.nat 3))]) (.cond (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 0))]) (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .true .bool []) (.cond (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 1))]) (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .true .bool []) (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 2))]) (.prim .natEq [(.field (.var 0) 7), (.value .nat (.nat 1))]) (.build .false .bool [])))) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 12 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 33 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 13 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 34 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 14 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 35 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 15 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 36 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 16 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 37 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 17 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 38 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 18 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 39 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 19 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 40 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.prim .natLt [(.field (.var 0) 4), (.value .nat (.nat 90))]) }) ::( - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.prim .natLt [(.value .nat (.nat 380)), (.field (.var 0) 0)]) }) ::( - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.prim .natLt [(.value .nat (.nat 90)), (.field (.var 0) 1)]) }) ::( - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.prim .natLt [(.value .nat (.nat 20)), (.field (.var 0) 2)]) }) ::( - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.prim .natLt [(.value .nat (.nat 12)), (.field (.var 0) 3)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.value .nat (.nat 1)), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.value .nat (.nat 1)), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.value .nat (.nat 1)), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.value .nat (.nat 1)), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.value .nat (.nat 1)), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.value .nat (.nat 1)), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.value .nat (.nat 1)), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.prim .natAdd [(.field (.var 0) 8), (.value .nat (.nat 1))])]) }) ::[]) } - -def __enc_0 (__s : (Reasoning.Clinic.Vitals)) : _root_.LexLeanTarget.TargetSyntax.Value := - _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).temperature), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).heartRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).respiratoryRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).whiteCells), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).systolic), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).infection)] - -def __enc_1 (__s : (Reasoning.Clinic.Chart)) : _root_.LexLeanTarget.TargetSyntax.Value := - _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [(__enc_0 (__s).vitals), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).fever), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).tachycardia), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).tachypnea), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).leukocytosis), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).sirs), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).sepsis), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).shock), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).level)] - -def __enc_2 : (Reasoning.Clinic.Triage.Step) -> _root_.LexLeanTarget.TargetSyntax.Value - | Reasoning.Clinic.Triage.Step.Fever => _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [] - | Reasoning.Clinic.Triage.Step.Tachycardia => _root_.LexLeanTarget.TargetSyntax.Value.adt 1 [] - | Reasoning.Clinic.Triage.Step.Tachypnea => _root_.LexLeanTarget.TargetSyntax.Value.adt 2 [] - | Reasoning.Clinic.Triage.Step.Leukocytosis => _root_.LexLeanTarget.TargetSyntax.Value.adt 3 [] - | Reasoning.Clinic.Triage.Step.Sirs => _root_.LexLeanTarget.TargetSyntax.Value.adt 4 [] - | Reasoning.Clinic.Triage.Step.Sepsis => _root_.LexLeanTarget.TargetSyntax.Value.adt 5 [] - | Reasoning.Clinic.Triage.Step.Shock => _root_.LexLeanTarget.TargetSyntax.Value.adt 6 [] - | Reasoning.Clinic.Triage.Step.Escalate => _root_.LexLeanTarget.TargetSyntax.Value.adt 7 [] - -def __fits_29 (v : (Reasoning.Clinic.Vitals)) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_29 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 29 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_29 v) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.feverish v))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (380 : Nat) (v).temperature)) - -def __fits_12 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).fever (0 : Nat)) then ((Bool.true && Bool.true) && (__fits_29 ((s).vitals))) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.feverish in -theorem __rel_12 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 12 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_12 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Fever.guard s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && (__fits_29 ((s).vitals))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Reasoning.Clinic.feverish ((s).vitals)))) (Nat.beq (s).fever (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).fever (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_29 ((s).vitals)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) - -def __fits_30 (v : (Reasoning.Clinic.Vitals)) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_30 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 30 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_30 v) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.tachycardic v))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (90 : Nat) (v).heartRate)) - -def __fits_13 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).tachycardia (0 : Nat)) then ((Bool.true && Bool.true) && (__fits_30 ((s).vitals))) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.tachycardic in -theorem __rel_13 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 13 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_13 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Tachycardia.guard s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && (__fits_30 ((s).vitals))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Reasoning.Clinic.tachycardic ((s).vitals)))) (Nat.beq (s).tachycardia (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).tachycardia (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_30 ((s).vitals)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) - -def __fits_31 (v : (Reasoning.Clinic.Vitals)) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_31 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 31 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_31 v) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.tachypneic v))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (20 : Nat) (v).respiratoryRate)) - -def __fits_14 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).tachypnea (0 : Nat)) then ((Bool.true && Bool.true) && (__fits_31 ((s).vitals))) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.tachypneic in -theorem __rel_14 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 14 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_14 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Tachypnea.guard s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && (__fits_31 ((s).vitals))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Reasoning.Clinic.tachypneic ((s).vitals)))) (Nat.beq (s).tachypnea (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).tachypnea (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_31 ((s).vitals)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) - -def __fits_32 (v : (Reasoning.Clinic.Vitals)) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_32 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 32 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_32 v) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.leukocytic v))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (12 : Nat) (v).whiteCells)) - -def __fits_15 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).leukocytosis (0 : Nat)) then ((Bool.true && Bool.true) && (__fits_32 ((s).vitals))) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.leukocytic in -theorem __rel_15 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 15 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_15 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Leukocytosis.guard s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && (__fits_32 ((s).vitals))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Reasoning.Clinic.leukocytic ((s).vitals)))) (Nat.beq (s).leukocytosis (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).leukocytosis (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_32 ((s).vitals)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) - -def __fits_16 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sirs (0 : Nat)) then ((Bool.true && (((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((s).fever + (s).tachycardia) 18446744073709551616)) && (Bool.true && Bool.true)) && (Nat.blt (((s).fever + (s).tachycardia) + (s).tachypnea) 18446744073709551616)) && (Bool.true && Bool.true)) && (Nat.blt ((((s).fever + (s).tachycardia) + (s).tachypnea) + (s).leukocytosis) 18446744073709551616)) && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) - -theorem __rel_16 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 16 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_16 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Sirs.guard s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((s).fever + (s).tachycardia) 18446744073709551616)) && (Bool.true && Bool.true)) && (Nat.blt (((s).fever + (s).tachycardia) + (s).tachypnea) 18446744073709551616)) && (Bool.true && Bool.true)) && (Nat.blt ((((s).fever + (s).tachycardia) + (s).tachypnea) + (s).leukocytosis) 18446744073709551616)) && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.ble (2 : Nat) ((((s).fever + (s).tachycardia) + (s).tachypnea) + (s).leukocytosis)))) (Nat.beq (s).sirs (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sirs (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (s).fever (s).tachycardia)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((s).fever + (s).tachycardia) (s).tachypnea)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (((s).fever + (s).tachycardia) + (s).tachypnea) (s).leukocytosis)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe (2 : Nat) ((((s).fever + (s).tachycardia) + (s).tachypnea) + (s).leukocytosis)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) - -def __fits_17 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sepsis (0 : Nat)) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sirs (1 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) - -theorem __rel_17 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 17 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_17 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Sepsis.guard s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sirs (1 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && ((Nat.beq (s).sirs (1 : Nat)) && (Nat.beq ((s).vitals).infection (1 : Nat))))) (Nat.beq (s).sepsis (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sepsis (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.beq ((s).vitals).infection (1 : Nat)))) (Nat.beq (s).sirs (1 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sirs (1 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq ((s).vitals).infection (1 : Nat)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) - -def __fits_28 (v : (Reasoning.Clinic.Vitals)) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_28 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 28 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_28 v) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.hypotensive v))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (v).systolic (90 : Nat))) - -def __fits_18 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).shock (0 : Nat)) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sepsis (1 : Nat)) then ((Bool.true && Bool.true) && (__fits_28 ((s).vitals))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.hypotensive in -theorem __rel_18 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 18 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_18 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Shock.guard s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sepsis (1 : Nat)) then ((Bool.true && Bool.true) && (__fits_28 ((s).vitals))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && ((Nat.beq (s).sepsis (1 : Nat)) && (Reasoning.Clinic.hypotensive ((s).vitals))))) (Nat.beq (s).shock (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).shock (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && (__fits_28 ((s).vitals))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Reasoning.Clinic.hypotensive ((s).vitals)))) (Nat.beq (s).sepsis (1 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sepsis (1 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_28 ((s).vitals)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) - -def __fits_19 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.blt (s).level (3 : Nat)) then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (0 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if ((Nat.beq (s).level (0 : Nat)) && (Nat.beq (s).sirs (1 : Nat))) then (Bool.true && Bool.true) else ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (1 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if ((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (2 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))))))) else (Bool.true && Bool.true))) - -theorem __rel_19 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 19 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_19 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Escalate.guard s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (0 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if ((Nat.beq (s).level (0 : Nat)) && (Nat.beq (s).sirs (1 : Nat))) then (Bool.true && Bool.true) else ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (1 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if ((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (2 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))))))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (((Nat.beq (s).level (0 : Nat)) && (Nat.beq (s).sirs (1 : Nat))) || (((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) || ((Nat.beq (s).level (2 : Nat)) && (Nat.beq (s).shock (1 : Nat))))))) (Nat.blt (s).level (3 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (s).level (3 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (Bool.true && Bool.true) else ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (1 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if ((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (2 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b || (((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) || ((Nat.beq (s).level (2 : Nat)) && (Nat.beq (s).shock (1 : Nat)))))) ((Nat.beq (s).level (0 : Nat)) && (Nat.beq (s).sirs (1 : Nat))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.beq (s).sirs (1 : Nat)))) (Nat.beq (s).level (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).level (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sirs (1 : Nat)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (2 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b || ((Nat.beq (s).level (2 : Nat)) && (Nat.beq (s).shock (1 : Nat))))) ((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.beq (s).sepsis (1 : Nat)))) (Nat.beq (s).level (1 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).level (1 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sepsis (1 : Nat)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.beq (s).shock (1 : Nat)))) (Nat.beq (s).level (2 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).level (2 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).shock (1 : Nat)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))))))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) - -def __fits_9 (_ys : (Reasoning.Clinic.Chart)) : Bool := - ((((((Bool.true && Bool.true) && (__fits_12 (_ys))) && (if (Reasoning.Clinic.Fever.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Fever : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_13 (_ys))) && (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) && (match (match (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Fever : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachycardia : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((Bool.true && Bool.true) && (__fits_14 (_ys))) && (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachypnea : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_15 (_ys))) && (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))) && (match (match (match (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Fever : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachycardia : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (match (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachypnea : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Leukocytosis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((((Bool.true && Bool.true) && (__fits_16 (_ys))) && (if (Reasoning.Clinic.Sirs.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_17 (_ys))) && (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) && (match (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sepsis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((Bool.true && Bool.true) && (__fits_18 (_ys))) && (if (Reasoning.Clinic.Shock.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Shock : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_19 (_ys))) && (if (Reasoning.Clinic.Escalate.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))))) - -attribute [local irreducible] Reasoning.Clinic.Escalate.guard Reasoning.Clinic.Fever.guard Reasoning.Clinic.Leukocytosis.guard Reasoning.Clinic.Sepsis.guard Reasoning.Clinic.Shock.guard Reasoning.Clinic.Sirs.guard Reasoning.Clinic.Tachycardia.guard Reasoning.Clinic.Tachypnea.guard in -theorem __rel_9 (_ys : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 9 [(__enc_1 _ys)] (_root_.LexLeanPreservation.Rel (__fits_9 _ys) ((_root_.LexLeanPreservation.encOption __enc_2) (Reasoning.Clinic.Triage.select _ys))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((((Bool.true && Bool.true) && (__fits_16 (_ys))) && (if (Reasoning.Clinic.Sirs.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_17 (_ys))) && (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) && (match (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sepsis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((Bool.true && Bool.true) && (__fits_18 (_ys))) && (if (Reasoning.Clinic.Shock.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Shock : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_19 (_ys))) && (if (Reasoning.Clinic.Escalate.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_2) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (match (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sepsis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (match (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Shock : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Escalate.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Escalate : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))))))) (match (match (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Fever : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachycardia : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (match (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachypnea : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Leukocytosis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))))) (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((Bool.true && Bool.true) && (__fits_14 (_ys))) && (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachypnea : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_15 (_ys))) && (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_2) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (match (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachypnea : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Leukocytosis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))))) (match (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Fever : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachycardia : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_13 (_ys))) && (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_2) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachycardia : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))))) (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Fever : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Fever : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Fever.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_12 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Tachycardia : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Tachycardia.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_13 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_15 (_ys))) && (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_2) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Leukocytosis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))))) (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachypnea : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Tachypnea : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Tachypnea.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_14 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Leukocytosis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Leukocytosis.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_15 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((Bool.true && Bool.true) && (__fits_18 (_ys))) && (if (Reasoning.Clinic.Shock.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Shock : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_19 (_ys))) && (if (Reasoning.Clinic.Escalate.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_2) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (match (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Shock : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Escalate.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Escalate : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))))) (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sepsis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_17 (_ys))) && (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_2) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sepsis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))))) (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Sirs.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_16 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Sepsis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Sepsis.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_17 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_19 (_ys))) && (if (Reasoning.Clinic.Escalate.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_2) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Escalate.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Escalate : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))))) (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Shock : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Shock : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Shock.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_18 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Escalate : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Escalate.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_19 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))))))))))) - -def __fits_33 (s : (Reasoning.Clinic.Chart)) : Bool := - ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) - -theorem __rel_33 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 33 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_33 s) (__enc_1 (Reasoning.Clinic.Fever.conclusion s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) - -def __fits_20 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && Bool.true) && (__fits_12 (s))) && (if (Reasoning.Clinic.Fever.guard (s)) then ((((Bool.true && Bool.true) && (__fits_33 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.Fever.conclusion Reasoning.Clinic.Fever.guard in -theorem __rel_20 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 20 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_20 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Fever.apply s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_33 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Fever.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Fever.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_12 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_33 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_34 (s : (Reasoning.Clinic.Chart)) : Bool := - ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) - -theorem __rel_34 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 34 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_34 s) (__enc_1 (Reasoning.Clinic.Tachycardia.conclusion s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) - -def __fits_21 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && Bool.true) && (__fits_13 (s))) && (if (Reasoning.Clinic.Tachycardia.guard (s)) then ((((Bool.true && Bool.true) && (__fits_34 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.Tachycardia.conclusion Reasoning.Clinic.Tachycardia.guard in -theorem __rel_21 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 21 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_21 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Tachycardia.apply s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_34 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Tachycardia.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Tachycardia.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_13 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_34 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_35 (s : (Reasoning.Clinic.Chart)) : Bool := - ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) - -theorem __rel_35 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 35 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_35 s) (__enc_1 (Reasoning.Clinic.Tachypnea.conclusion s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) - -def __fits_22 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && Bool.true) && (__fits_14 (s))) && (if (Reasoning.Clinic.Tachypnea.guard (s)) then ((((Bool.true && Bool.true) && (__fits_35 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.Tachypnea.conclusion Reasoning.Clinic.Tachypnea.guard in -theorem __rel_22 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 22 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_22 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Tachypnea.apply s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_35 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Tachypnea.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Tachypnea.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_14 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_35 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_36 (s : (Reasoning.Clinic.Chart)) : Bool := - ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) - -theorem __rel_36 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 36 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_36 s) (__enc_1 (Reasoning.Clinic.Leukocytosis.conclusion s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) - -def __fits_23 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && Bool.true) && (__fits_15 (s))) && (if (Reasoning.Clinic.Leukocytosis.guard (s)) then ((((Bool.true && Bool.true) && (__fits_36 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.Leukocytosis.conclusion Reasoning.Clinic.Leukocytosis.guard in -theorem __rel_23 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 23 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_23 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Leukocytosis.apply s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_36 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Leukocytosis.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Leukocytosis.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_15 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_36 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_37 (s : (Reasoning.Clinic.Chart)) : Bool := - ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) - -theorem __rel_37 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 37 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_37 s) (__enc_1 (Reasoning.Clinic.Sirs.conclusion s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) - -def __fits_24 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && Bool.true) && (__fits_16 (s))) && (if (Reasoning.Clinic.Sirs.guard (s)) then ((((Bool.true && Bool.true) && (__fits_37 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.Sirs.conclusion Reasoning.Clinic.Sirs.guard in -theorem __rel_24 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 24 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_24 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Sirs.apply s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_37 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Sirs.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Sirs.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_16 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_37 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_38 (s : (Reasoning.Clinic.Chart)) : Bool := - ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) - -theorem __rel_38 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 38 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_38 s) (__enc_1 (Reasoning.Clinic.Sepsis.conclusion s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) - -def __fits_25 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && Bool.true) && (__fits_17 (s))) && (if (Reasoning.Clinic.Sepsis.guard (s)) then ((((Bool.true && Bool.true) && (__fits_38 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.Sepsis.conclusion Reasoning.Clinic.Sepsis.guard in -theorem __rel_25 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 25 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_25 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Sepsis.apply s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_38 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Sepsis.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Sepsis.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_17 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_38 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_39 (s : (Reasoning.Clinic.Chart)) : Bool := - ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) - -theorem __rel_39 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 39 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_39 s) (__enc_1 (Reasoning.Clinic.Shock.conclusion s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) - -def __fits_26 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && Bool.true) && (__fits_18 (s))) && (if (Reasoning.Clinic.Shock.guard (s)) then ((((Bool.true && Bool.true) && (__fits_39 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.Shock.conclusion Reasoning.Clinic.Shock.guard in -theorem __rel_26 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 26 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_26 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Shock.apply s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_39 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Shock.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Shock.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_18 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_39 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_40 (s : (Reasoning.Clinic.Chart)) : Bool := - ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((s).level + (1 : Nat)) 18446744073709551616)) && Bool.true))))))))) && Bool.true) - -theorem __rel_40 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 40 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_40 s) (__enc_1 (Reasoning.Clinic.Escalate.conclusion s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (s).level (1 : Nat))) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) - -def __fits_27 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && Bool.true) && (__fits_19 (s))) && (if (Reasoning.Clinic.Escalate.guard (s)) then ((((Bool.true && Bool.true) && (__fits_40 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.Escalate.conclusion Reasoning.Clinic.Escalate.guard in -theorem __rel_27 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 27 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_27 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Escalate.apply s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_40 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Escalate.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Escalate.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_19 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_40 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_10 (_ys : (Reasoning.Clinic.Chart)) (_ystep : (Reasoning.Clinic.Triage.Step)) : Bool := - (Bool.true && (match _ystep with | Reasoning.Clinic.Triage.Step.Fever => ((Bool.true && Bool.true) && (__fits_20 (_ys))) | Reasoning.Clinic.Triage.Step.Tachycardia => ((Bool.true && Bool.true) && (__fits_21 (_ys))) | Reasoning.Clinic.Triage.Step.Tachypnea => ((Bool.true && Bool.true) && (__fits_22 (_ys))) | Reasoning.Clinic.Triage.Step.Leukocytosis => ((Bool.true && Bool.true) && (__fits_23 (_ys))) | Reasoning.Clinic.Triage.Step.Sirs => ((Bool.true && Bool.true) && (__fits_24 (_ys))) | Reasoning.Clinic.Triage.Step.Sepsis => ((Bool.true && Bool.true) && (__fits_25 (_ys))) | Reasoning.Clinic.Triage.Step.Shock => ((Bool.true && Bool.true) && (__fits_26 (_ys))) | Reasoning.Clinic.Triage.Step.Escalate => ((Bool.true && Bool.true) && (__fits_27 (_ys))))) - -attribute [local irreducible] Reasoning.Clinic.Escalate.apply Reasoning.Clinic.Fever.apply Reasoning.Clinic.Leukocytosis.apply Reasoning.Clinic.Sepsis.apply Reasoning.Clinic.Shock.apply Reasoning.Clinic.Sirs.apply Reasoning.Clinic.Tachycardia.apply Reasoning.Clinic.Tachypnea.apply in -theorem __rel_10 (_ys : (Reasoning.Clinic.Chart)) (_ystep : (Reasoning.Clinic.Triage.Step)) : _root_.LexLeanPreservation.FunRel __prog 10 [(__enc_1 _ys), (__enc_2 _ystep)] (_root_.LexLeanPreservation.Rel (__fits_10 _ys _ystep) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Triage.fire _ys _ystep))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV __enc_2 (fun (__a : (Reasoning.Clinic.Triage.Step)) => (match __a with | Reasoning.Clinic.Triage.Step.Fever => ((Bool.true && Bool.true) && (__fits_20 (_ys))) | Reasoning.Clinic.Triage.Step.Tachycardia => ((Bool.true && Bool.true) && (__fits_21 (_ys))) | Reasoning.Clinic.Triage.Step.Tachypnea => ((Bool.true && Bool.true) && (__fits_22 (_ys))) | Reasoning.Clinic.Triage.Step.Leukocytosis => ((Bool.true && Bool.true) && (__fits_23 (_ys))) | Reasoning.Clinic.Triage.Step.Sirs => ((Bool.true && Bool.true) && (__fits_24 (_ys))) | Reasoning.Clinic.Triage.Step.Sepsis => ((Bool.true && Bool.true) && (__fits_25 (_ys))) | Reasoning.Clinic.Triage.Step.Shock => ((Bool.true && Bool.true) && (__fits_26 (_ys))) | Reasoning.Clinic.Triage.Step.Escalate => ((Bool.true && Bool.true) && (__fits_27 (_ys))))) (fun (__a : (Reasoning.Clinic.Triage.Step)) => (_root_.LexLeanPreservation.encOption __enc_1) (match __a with | Reasoning.Clinic.Triage.Step.Fever => (Reasoning.Clinic.Fever.apply (_ys)) | Reasoning.Clinic.Triage.Step.Tachycardia => (Reasoning.Clinic.Tachycardia.apply (_ys)) | Reasoning.Clinic.Triage.Step.Tachypnea => (Reasoning.Clinic.Tachypnea.apply (_ys)) | Reasoning.Clinic.Triage.Step.Leukocytosis => (Reasoning.Clinic.Leukocytosis.apply (_ys)) | Reasoning.Clinic.Triage.Step.Sirs => (Reasoning.Clinic.Sirs.apply (_ys)) | Reasoning.Clinic.Triage.Step.Sepsis => (Reasoning.Clinic.Sepsis.apply (_ys)) | Reasoning.Clinic.Triage.Step.Shock => (Reasoning.Clinic.Shock.apply (_ys)) | Reasoning.Clinic.Triage.Step.Escalate => (Reasoning.Clinic.Escalate.apply (_ys)))) _ystep (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (Reasoning.Clinic.Triage.Step)) _ => match __a with | Reasoning.Clinic.Triage.Step.Fever => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_20 (_ys)))) | Reasoning.Clinic.Triage.Step.Tachycardia => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_21 (_ys))))) | Reasoning.Clinic.Triage.Step.Tachypnea => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_22 (_ys)))))) | Reasoning.Clinic.Triage.Step.Leukocytosis => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_23 (_ys))))))) | Reasoning.Clinic.Triage.Step.Sirs => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_24 (_ys)))))))) | Reasoning.Clinic.Triage.Step.Sepsis => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_25 (_ys))))))))) | Reasoning.Clinic.Triage.Step.Shock => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_26 (_ys)))))))))) | Reasoning.Clinic.Triage.Step.Escalate => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_27 (_ys))))))))))))) - -def __fits_5 (_ys : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && Bool.true) && (__fits_9 (_ys))) && (match (Reasoning.Clinic.Triage.select (_ys)) with | Option.none => (Bool.true && Bool.true) | Option.some _ystep => ((Bool.true && (Bool.true && Bool.true)) && (__fits_10 (_ys) (_ystep))))) - -attribute [local irreducible] Reasoning.Clinic.Triage.fire Reasoning.Clinic.Triage.select in -theorem __rel_5 (_ys : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 5 [(__enc_1 _ys)] (_root_.LexLeanPreservation.Rel (__fits_5 _ys) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Triage.next _ys))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.none => (Bool.true && Bool.true) | Option.some _ystep => ((Bool.true && (Bool.true && Bool.true)) && (__fits_10 (_ys) (_ystep))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_1) (match __a with | Option.none => (Option.none : (Option (Reasoning.Clinic.Chart))) | Option.some _ystep => (Reasoning.Clinic.Triage.fire (_ys) (_ystep)))) (Reasoning.Clinic.Triage.select (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_9 (_ys))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) | Option.some _ystep => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_10 (_ys) (_ystep))))))) - -def __fits_6 (patient : (Reasoning.Clinic.Vitals)) : Bool := - ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) - -theorem __rel_6 (patient : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 6 [(__enc_0 patient)] (_root_.LexLeanPreservation.Rel (__fits_6 patient) (__enc_1 (Reasoning.Clinic.Triage.observe patient))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) - -def __fits_2 (patient : (Reasoning.Clinic.Vitals)) : Bool := - ((Bool.true && (Bool.true && (((Bool.true && Bool.true) && (__fits_6 (patient))) && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : (Reasoning.Clinic.Chart)) => __fits_5 __p0) ((Reasoning.Clinic.Triage.next)) ((11 : Nat)) ((Reasoning.Clinic.Triage.observe (patient))))) - -attribute [local irreducible] Reasoning.Clinic.Triage.observe in -theorem __rel_2 (patient : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 2 [(__enc_0 patient)] (_root_.LexLeanPreservation.Rel (__fits_2 patient) ((_root_.LexLeanPreservation.encPair __enc_1 _root_.LexLeanTarget.TargetSyntax.Value.bool) (Reasoning.Clinic.Triage.saturate patient))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_6 (patient))) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterateUntil (es := __enc_1) (_root_.LexLeanPreservation.optEnc __enc_1) (fun _ => rfl) (_root_.LexLeanPreservation.encPair __enc_1 _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) ((Reasoning.Clinic.Triage.next)) (fun (__p0 : (Reasoning.Clinic.Chart)) => __fits_5 __p0) 5 [] (fun (__p0 : (Reasoning.Clinic.Chart)) => __rel_5 __p0) (_root_.LexLeanCollections.iterateUntil ((Reasoning.Clinic.Triage.next))) (fun _ => rfl) (fun _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (p := __prog) (fi := 4) (ts := (.adt 1)) rfl ((11 : Nat)) ((Reasoning.Clinic.Triage.observe (patient))))) - -def __fits_8 (chart : (Reasoning.Clinic.Chart)) : Bool := - ((Bool.true && Bool.true) && Bool.true) - -theorem __rel_8 (chart : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 8 [(__enc_1 chart)] (_root_.LexLeanPreservation.Rel (__fits_8 chart) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Clinic.Triage.extract chart))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some) - -def __fits_11 (v : (Reasoning.Clinic.Vitals)) (r : Nat) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.ble r (3 : Nat)) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq r (3 : Nat)) then (Bool.true && Bool.true) else (((((Bool.true && Bool.true) && (__fits_28 (v))) && (if (Reasoning.Clinic.hypotensive (v)) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (v).infection (1 : Nat)) then (((Bool.true && Bool.true) && (__fits_29 (v))) && (if (Reasoning.Clinic.feverish (v)) then ((Bool.true && Bool.true) && (__fits_30 (v))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && Bool.true) && Bool.true))) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.feverish Reasoning.Clinic.hypotensive Reasoning.Clinic.tachycardic in -theorem __rel_11 (v : (Reasoning.Clinic.Vitals)) (r : Nat) : _root_.LexLeanPreservation.FunRel __prog 11 [(__enc_0 v), (_root_.LexLeanTarget.TargetSyntax.Value.nat r)] (_root_.LexLeanPreservation.Rel (__fits_11 v r) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.recommendationCheck v r))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq r (3 : Nat)) then (Bool.true && Bool.true) else (((((Bool.true && Bool.true) && (__fits_28 (v))) && (if (Reasoning.Clinic.hypotensive (v)) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (v).infection (1 : Nat)) then (((Bool.true && Bool.true) && (__fits_29 (v))) && (if (Reasoning.Clinic.feverish (v)) then ((Bool.true && Bool.true) && (__fits_30 (v))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && Bool.true) && Bool.true))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && ((Nat.beq r (3 : Nat)) || (!((Reasoning.Clinic.hypotensive (v)) && ((Nat.beq (v).infection (1 : Nat)) && ((Reasoning.Clinic.feverish (v)) && (Reasoning.Clinic.tachycardic (v))))))))) (Nat.ble r (3 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe r (3 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (Bool.true && Bool.true) else (((((Bool.true && Bool.true) && (__fits_28 (v))) && (if (Reasoning.Clinic.hypotensive (v)) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (v).infection (1 : Nat)) then (((Bool.true && Bool.true) && (__fits_29 (v))) && (if (Reasoning.Clinic.feverish (v)) then ((Bool.true && Bool.true) && (__fits_30 (v))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && Bool.true) && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b || (!((Reasoning.Clinic.hypotensive (v)) && ((Nat.beq (v).infection (1 : Nat)) && ((Reasoning.Clinic.feverish (v)) && (Reasoning.Clinic.tachycardic (v)))))))) (Nat.beq r (3 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq r (3 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (v).infection (1 : Nat)) then (((Bool.true && Bool.true) && (__fits_29 (v))) && (if (Reasoning.Clinic.feverish (v)) then ((Bool.true && Bool.true) && (__fits_30 (v))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && ((Nat.beq (v).infection (1 : Nat)) && ((Reasoning.Clinic.feverish (v)) && (Reasoning.Clinic.tachycardic (v)))))) (Reasoning.Clinic.hypotensive (v)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_28 (v))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (((Bool.true && Bool.true) && (__fits_29 (v))) && (if (Reasoning.Clinic.feverish (v)) then ((Bool.true && Bool.true) && (__fits_30 (v))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && ((Reasoning.Clinic.feverish (v)) && (Reasoning.Clinic.tachycardic (v))))) (Nat.beq (v).infection (1 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (v).infection (1 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && (__fits_30 (v))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Reasoning.Clinic.tachycardic (v)))) (Reasoning.Clinic.feverish (v)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_29 (v))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_30 (v)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_boolNot ((Reasoning.Clinic.hypotensive (v)) && ((Nat.beq (v).infection (1 : Nat)) && ((Reasoning.Clinic.feverish (v)) && (Reasoning.Clinic.tachycardic (v)))))))))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) - -def __fits_7 (patient : (Reasoning.Clinic.Vitals)) (_ys : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && Bool.true) && (__fits_8 (_ys))) && (match (Reasoning.Clinic.Triage.extract (_ys)) with | Option.none => (Bool.true && Bool.true) | Option.some _yv => (((Bool.true && (Bool.true && Bool.true)) && (__fits_11 (patient) (_yv))) && (if (Reasoning.Clinic.recommendationCheck (patient) (_yv)) then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) - -attribute [local irreducible] Reasoning.Clinic.Triage.extract Reasoning.Clinic.recommendationCheck in -theorem __rel_7 (patient : (Reasoning.Clinic.Vitals)) (_ys : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 7 [(__enc_0 patient), (__enc_1 _ys)] (_root_.LexLeanPreservation.Rel (__fits_7 patient _ys) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Clinic.Triage.accept patient _ys))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Option Nat)) => (match __a with | Option.none => (Bool.true && Bool.true) | Option.some _yv => (((Bool.true && (Bool.true && Bool.true)) && (__fits_11 (patient) (_yv))) && (if (Reasoning.Clinic.recommendationCheck (patient) (_yv)) then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__a : (Option Nat)) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (match __a with | Option.none => (Option.none : (Option Nat)) | Option.some _yv => (if (Reasoning.Clinic.recommendationCheck (patient) (_yv)) then (Option.some (_yv) : (Option Nat)) else (Option.none : (Option Nat))))) (Reasoning.Clinic.Triage.extract (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_8 (_ys))) (fun (__a : (Option Nat)) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) | Option.some _yv => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Option.some (_yv) : (Option Nat)) else (Option.none : (Option Nat)))) (Reasoning.Clinic.recommendationCheck (patient) (_yv)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_11 (patient) (_yv))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))) - -def __fits_3 (patient : (Reasoning.Clinic.Vitals)) (_ys : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && (__fits_7 (patient) (_ys))) && (match (Reasoning.Clinic.Triage.accept (patient) (_ys)) with | Option.some _yv => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_8 (_ys))) && (match (Reasoning.Clinic.Triage.extract (_ys)) with | Option.some _yv => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) - -attribute [local irreducible] Reasoning.Clinic.Triage.accept Reasoning.Clinic.Triage.extract in -theorem __rel_3 (patient : (Reasoning.Clinic.Vitals)) (_ys : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 3 [(__enc_0 patient), (__enc_1 _ys)] (_root_.LexLeanPreservation.Rel (__fits_3 patient _ys) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Clinic.Triage.conclude patient _ys))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Option Nat)) => (match __a with | Option.some _yv => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_8 (_ys))) && (match (Reasoning.Clinic.Triage.extract (_ys)) with | Option.some _yv => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) (fun (__a : (Option Nat)) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (match __a with | Option.some _yv => (Except.ok (_yv) : (Except (Prod Bool Bool) Nat)) | Option.none => (match (Reasoning.Clinic.Triage.extract (_ys)) with | Option.some _yv => (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)) | Option.none => (Except.error (((Bool.false, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat))))) (Reasoning.Clinic.Triage.accept (patient) (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_7 (patient) (_ys))) (fun (__a : (Option Nat)) _ => match __a with | Option.some _yv => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Option Nat)) => (match __a with | Option.some _yv => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__a : (Option Nat)) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (match __a with | Option.some _yv => (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)) | Option.none => (Except.error (((Bool.false, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)))) (Reasoning.Clinic.Triage.extract (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_8 (_ys))) (fun (__a : (Option Nat)) _ => match __a with | Option.some _yv => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error))))))))) - -def __fits_1 (patient : (Reasoning.Clinic.Vitals)) : Bool := - (((Bool.true && Bool.true) && (__fits_2 (patient))) && (let _yfinal : (Prod (Reasoning.Clinic.Chart) Bool) := (Reasoning.Clinic.Triage.saturate (patient)); (Bool.true && (match (_yfinal).2 with | Bool.true => ((Bool.true && (Bool.true && Bool.true)) && (__fits_3 (patient) ((_yfinal).1))) | Bool.false => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) - -attribute [local irreducible] Reasoning.Clinic.Triage.conclude Reasoning.Clinic.Triage.saturate in -theorem __rel_1 (patient : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 1 [(__enc_0 patient)] (_root_.LexLeanPreservation.Rel (__fits_1 patient) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Clinic.Triage.verdict patient))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (let _yfinal : (Prod (Reasoning.Clinic.Chart) Bool) := (Reasoning.Clinic.Triage.saturate (patient)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_2 (patient))) (_root_.LexLeanPreservation.conv_matchV _root_.LexLeanTarget.TargetSyntax.Value.bool (fun (__a : Bool) => (match __a with | Bool.true => ((Bool.true && (Bool.true && Bool.true)) && (__fits_3 (patient) ((_yfinal).1))) | Bool.false => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__a : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (match __a with | Bool.true => (Reasoning.Clinic.Triage.conclude (patient) ((_yfinal).1)) | Bool.false => (Except.error (((Bool.false, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)))) (_yfinal).2 (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (fun (__a : Bool) _ => match __a with | Bool.true => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil)) (__rel_3 (patient) ((_yfinal).1)))) | Bool.false => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)))))) - -def __fits_0 (temperature : Nat) (heartRate : Nat) (respiratoryRate : Nat) (whiteCells : Nat) (systolic : Nat) (infection : Nat) : Bool := - (((((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true)))))) && Bool.true) && Bool.true) && (__fits_1 (({ temperature := temperature, heartRate := heartRate, respiratoryRate := respiratoryRate, whiteCells := whiteCells, systolic := systolic, infection := infection } : (Reasoning.Clinic.Vitals))))) && (match (Reasoning.Clinic.Triage.verdict (({ temperature := temperature, heartRate := heartRate, respiratoryRate := respiratoryRate, whiteCells := whiteCells, systolic := systolic, infection := infection } : (Reasoning.Clinic.Vitals)))) with | Except.ok level => Bool.true | Except.error failure => Bool.true)) - -attribute [local irreducible] Reasoning.Clinic.Triage.verdict in -theorem __rel_0 (temperature : Nat) (heartRate : Nat) (respiratoryRate : Nat) (whiteCells : Nat) (systolic : Nat) (infection : Nat) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat temperature), (_root_.LexLeanTarget.TargetSyntax.Value.nat heartRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat respiratoryRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat whiteCells), (_root_.LexLeanTarget.TargetSyntax.Value.nat systolic), (_root_.LexLeanTarget.TargetSyntax.Value.nat infection)] (_root_.LexLeanPreservation.Rel (__fits_0 temperature heartRate respiratoryRate whiteCells systolic infection) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.triageLevel temperature heartRate respiratoryRate whiteCells systolic infection))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Except (Prod Bool Bool) Nat)) => (match __a with | Except.ok level => Bool.true | Except.error failure => Bool.true)) (fun (__a : (Except (Prod Bool Bool) Nat)) => _root_.LexLeanTarget.TargetSyntax.Value.nat (match __a with | Except.ok level => level | Except.error failure => (9 : Nat))) (Reasoning.Clinic.Triage.verdict (({ temperature := temperature, heartRate := heartRate, respiratoryRate := respiratoryRate, whiteCells := whiteCells, systolic := systolic, infection := infection } : (Reasoning.Clinic.Vitals)))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)))))) _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) (__rel_1 (({ temperature := temperature, heartRate := heartRate, respiratoryRate := respiratoryRate, whiteCells := whiteCells, systolic := systolic, infection := infection } : (Reasoning.Clinic.Vitals))))) (fun (__a : (Except (Prod Bool Bool) Nat)) _ => match __a with | Except.ok level => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | Except.error failure => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value)))) - -def denote (temperature : Nat) (heartRate : Nat) (respiratoryRate : Nat) (whiteCells : Nat) (systolic : Nat) (infection : Nat) : _root_.LexLeanPreservation.Obs := - _root_.cond (__fits_0 temperature heartRate respiratoryRate whiteCells systolic infection) (_root_.LexLeanPreservation.Obs.value ((_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.triageLevel temperature heartRate respiratoryRate whiteCells systolic infection)))) _root_.LexLeanPreservation.Obs.overflow - -theorem root (temperature : Nat) (heartRate : Nat) (respiratoryRate : Nat) (whiteCells : Nat) (systolic : Nat) (infection : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat temperature), (_root_.LexLeanTarget.TargetSyntax.Value.nat heartRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat respiratoryRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat whiteCells), (_root_.LexLeanTarget.TargetSyntax.Value.nat systolic), (_root_.LexLeanTarget.TargetSyntax.Value.nat infection)] (_root_.LexLeanPreservation.Rel (__fits_0 temperature heartRate respiratoryRate whiteCells systolic infection) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.triageLevel temperature heartRate respiratoryRate whiteCells systolic infection))) := - _root_.LexLeanPreservation.run_of_funRel (__rel_0 temperature heartRate respiratoryRate whiteCells systolic infection) - -end LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0 diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R0/Compose/RustCore.lex.tex b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R0/Compose/RustCore.lex.tex deleted file mode 100644 index 59590d8d1..000000000 --- a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R0/Compose/RustCore.lex.tex +++ /dev/null @@ -1,1341 +0,0 @@ -\begin{lexlean}{RustCore} -\title{Certificate E LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.Compose.RustCore} -\begin{coremodule} -imports [ - LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0, - LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.RustCore, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.Compose.RustCore.__wt_0 : @16 := @716 { - all: [LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.Compose.RustCore.__wt_0], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.Compose.RustCore.__wt_1 : @724 := @1388 { - all: [LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.Compose.RustCore.__wt_1], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.Compose.RustCore.__wt_2 : @1396 := @1631 { - all: [LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.Compose.RustCore.__wt_2], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.Compose.RustCore.root : @2716 := @2717 { - all: [LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.Compose.RustCore.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.RustCore.program -@1 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.RustCore.krate -@2 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.RustCore.flags -@3 := Reasoning.Clinic.Vitals -@4 := #0 -@5 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.__enc_0 -@6 := @5 @4 -@7 := LexLeanPreservation.Rust.WT -@8 := LexLeanTarget.TargetSyntax.Ty.adt -@9 := 0 -@10 := @8 @9 -@11 := @7 @0 -@12 := @11 @1 -@13 := @12 @2 -@16 := (__s : @3) -> @13 @6 @10 -@17 := Reasoning.Clinic.Vitals.temperature -@18 := @17 @4 -@19 := Reasoning.Clinic.Vitals.heartRate -@20 := @19 @4 -@21 := Reasoning.Clinic.Vitals.respiratoryRate -@22 := @21 @4 -@23 := Reasoning.Clinic.Vitals.whiteCells -@24 := @23 @4 -@25 := Reasoning.Clinic.Vitals.systolic -@26 := @25 @4 -@27 := Reasoning.Clinic.Vitals.infection -@28 := @27 @4 -@29 := LexLeanTarget.TargetSyntax.Value.nat -@30 := @29 @18 -@31 := LexLeanTarget.TargetSyntax.Ty.nat -@32 := LexLeanTarget.TargetSyntax.Program -@33 := LexLeanPreservation.Rust.RCrate -@34 := LexLeanPreservation.Rust.Flags -@35 := Nat -@36 := #3 -@37 := @7 @36 -@38 := #2 -@39 := @37 @38 -@40 := #1 -@41 := @39 @40 -@42 := @29 @4 -@48 := {p : @32} -> {c : @33} -> {A : @34} -> (n : @35) -> @41 @42 @31 -@50 := LexLeanPreservation.Rust.wt_nat @0 -@57 := {c : @33} -> {A : @34} -> (n : @35) -> @11 @38 @40 @42 @31 -@58 := @50 @1 -@63 := {A : @34} -> (n : @35) -> @12 @40 @42 @31 -@64 := @58 @2 -@67 := (n : @35) -> @13 @42 @31 -@68 := @64 @18 -@70 := @13 @30 @31 -@71 := @29 @20 -@72 := @64 @20 -@74 := @13 @71 @31 -@75 := @29 @22 -@76 := @64 @22 -@78 := @13 @75 @31 -@79 := @29 @24 -@80 := @64 @24 -@82 := @13 @79 @31 -@83 := @29 @26 -@84 := @64 @26 -@86 := @13 @83 @31 -@87 := @29 @28 -@88 := @64 @28 -@90 := @13 @87 @31 -@91 := LexLeanTarget.TargetSyntax.Value -@92 := LexLeanTarget.TargetSyntax.Ty -@93 := List.nil.{0} -@94 := List.cons.{0} -@95 := @93 @91 -@96 := @94 @91 -@98 := @96 @87 @95 -@100 := @96 @83 @98 -@102 := @96 @79 @100 -@104 := @96 @75 @102 -@106 := @96 @71 @104 -@108 := @96 @30 @106 -@109 := @93 @92 -@110 := @94 @92 -@111 := @110 @31 -@112 := @111 @109 -@113 := @111 @112 -@114 := @111 @113 -@115 := @111 @114 -@116 := @111 @115 -@117 := @111 @116 -@118 := LexLeanPreservation.Rust.WTL -@126 := {p : @32} -> {c : @33} -> {A : @34} -> @118 @38 @40 @4 @95 @109 -@128 := LexLeanPreservation.Rust.wtl_nil @0 -@129 := @118 @0 -@135 := {c : @33} -> {A : @34} -> @129 @40 @4 @95 @109 -@136 := @128 @1 -@137 := @129 @1 -@141 := {A : @34} -> @137 @4 @95 @109 -@142 := @136 @2 -@143 := @137 @2 -@144 := @143 @95 -@145 := @144 @109 -@146 := List.{0} -@147 := @146 @91 -@148 := @146 @92 -@149 := #6 -@150 := @7 @149 -@151 := #5 -@152 := @150 @151 -@153 := #4 -@156 := @152 @153 @36 @38 -@157 := #7 -@162 := @118 @157 @149 @151 @38 @40 -@163 := #8 -@166 := @118 @163 @157 @149 -@168 := @96 @151 @36 -@169 := @166 @168 -@171 := @110 @153 @38 -@181 := {p : @32} -> - {c : @33} -> - {A : @34} -> - {v : @91} -> {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @156) -> (hs : @162) -> @169 @171 -@183 := LexLeanPreservation.Rust.wtl_cons @0 -@187 := @11 @151 @153 @36 @38 -@191 := @129 @149 @151 @38 @40 -@203 := {c : @33} -> - {A : @34} -> - {v : @91} -> - {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @187) -> (hs : @191) -> @129 @157 @149 @168 @171 -@204 := @183 @1 -@207 := @12 @153 @36 @38 -@210 := @137 @151 @38 @40 -@220 := {A : @34} -> - {v : @91} -> - {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @207) -> (hs : @210) -> @137 @149 @168 @171 -@221 := @204 @2 -@223 := @13 @36 @38 -@225 := @143 @38 @40 -@233 := {v : @91} -> - {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @223) -> (hs : @225) -> @143 @168 @171 -@234 := @221 @87 -@236 := @29 (@27 @36) -@249 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @236 @38) -> (hs : @225) -> @143 (@96 (@29 (@27 @151)) @36) @171 -@250 := @234 @31 -@252 := @29 (@27 @38) -@254 := @13 @252 @31 -@259 := @143 (@96 (@29 (@27 @153)) @36) -@260 := @111 @38 -@265 := {vs : @147} -> {ts : @148} -> (h : @254) -> (hs : @225) -> @259 @260 -@266 := @250 @95 -@268 := @29 (@27 @40) -@270 := @13 @268 @31 -@271 := @144 @40 -@273 := @96 @236 @95 -@278 := {ts : @148} -> (h : @270) -> (hs : @271) -> @143 @273 @260 -@279 := @266 @109 -@281 := @96 @252 @95 -@282 := @143 @281 -@285 := (h : @90) -> (hs : @145) -> @282 @112 -@286 := @279 @88 -@288 := @96 @268 @95 -@290 := @143 @288 @112 -@291 := (hs : @145) -> @290 -@292 := @286 @142 -@294 := @143 @98 @112 -@295 := @221 @83 -@297 := @29 (@25 @36) -@310 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @297 @38) -> (hs : @225) -> @143 (@96 (@29 (@25 @151)) @36) @171 -@311 := @295 @31 -@313 := @29 (@25 @38) -@325 := {vs : @147} -> - {ts : @148} -> (h : @13 @313 @31) -> (hs : @225) -> @143 (@96 (@29 (@25 @153)) @36) @260 -@326 := @311 @98 -@328 := @29 (@25 @40) -@330 := @13 @328 @31 -@331 := @282 @40 -@333 := @96 @297 @273 -@338 := {ts : @148} -> (h : @330) -> (hs : @331) -> @143 @333 @260 -@339 := @326 @112 -@341 := @96 @313 @281 -@342 := @143 @341 -@345 := (h : @86) -> (hs : @290) -> @342 @113 -@346 := @339 @84 -@348 := @96 @328 @288 -@350 := @143 @348 @113 -@351 := (hs : @294) -> @350 -@352 := @346 @292 -@354 := @143 @100 @113 -@355 := @221 @79 -@357 := @29 (@23 @36) -@370 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @357 @38) -> (hs : @225) -> @143 (@96 (@29 (@23 @151)) @36) @171 -@371 := @355 @31 -@373 := @29 (@23 @38) -@385 := {vs : @147} -> - {ts : @148} -> (h : @13 @373 @31) -> (hs : @225) -> @143 (@96 (@29 (@23 @153)) @36) @260 -@386 := @371 @100 -@388 := @29 (@23 @40) -@390 := @13 @388 @31 -@391 := @342 @40 -@393 := @96 @357 @333 -@398 := {ts : @148} -> (h : @390) -> (hs : @391) -> @143 @393 @260 -@399 := @386 @113 -@401 := @96 @373 @341 -@402 := @143 @401 -@405 := (h : @82) -> (hs : @350) -> @402 @114 -@406 := @399 @80 -@408 := @96 @388 @348 -@410 := @143 @408 @114 -@411 := (hs : @354) -> @410 -@412 := @406 @352 -@414 := @143 @102 @114 -@415 := @221 @75 -@417 := @29 (@21 @36) -@430 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @417 @38) -> (hs : @225) -> @143 (@96 (@29 (@21 @151)) @36) @171 -@431 := @415 @31 -@433 := @29 (@21 @38) -@445 := {vs : @147} -> - {ts : @148} -> (h : @13 @433 @31) -> (hs : @225) -> @143 (@96 (@29 (@21 @153)) @36) @260 -@446 := @431 @102 -@448 := @29 (@21 @40) -@450 := @13 @448 @31 -@451 := @402 @40 -@453 := @96 @417 @393 -@458 := {ts : @148} -> (h : @450) -> (hs : @451) -> @143 @453 @260 -@459 := @446 @114 -@461 := @96 @433 @401 -@462 := @143 @461 -@465 := (h : @78) -> (hs : @410) -> @462 @115 -@466 := @459 @76 -@468 := @96 @448 @408 -@470 := @143 @468 @115 -@471 := (hs : @414) -> @470 -@472 := @466 @412 -@474 := @143 @104 @115 -@475 := @221 @71 -@477 := @29 (@19 @36) -@490 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @477 @38) -> (hs : @225) -> @143 (@96 (@29 (@19 @151)) @36) @171 -@491 := @475 @31 -@493 := @29 (@19 @38) -@505 := {vs : @147} -> - {ts : @148} -> (h : @13 @493 @31) -> (hs : @225) -> @143 (@96 (@29 (@19 @153)) @36) @260 -@506 := @491 @104 -@508 := @29 (@19 @40) -@510 := @13 @508 @31 -@511 := @462 @40 -@513 := @96 @477 @453 -@518 := {ts : @148} -> (h : @510) -> (hs : @511) -> @143 @513 @260 -@519 := @506 @115 -@521 := @96 @493 @461 -@522 := @143 @521 -@525 := (h : @74) -> (hs : @470) -> @522 @116 -@526 := @519 @72 -@528 := @96 @508 @468 -@530 := @143 @528 @116 -@531 := (hs : @474) -> @530 -@532 := @526 @472 -@534 := @143 @106 @116 -@535 := @221 @30 -@537 := @29 (@17 @36) -@550 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @537 @38) -> (hs : @225) -> @143 (@96 (@29 (@17 @151)) @36) @171 -@551 := @535 @31 -@553 := @29 (@17 @38) -@565 := {vs : @147} -> - {ts : @148} -> (h : @13 @553 @31) -> (hs : @225) -> @143 (@96 (@29 (@17 @153)) @36) @260 -@566 := @551 @106 -@568 := @29 (@17 @40) -@570 := @13 @568 @31 -@571 := @522 @40 -@573 := @96 @537 @513 -@578 := {ts : @148} -> (h : @570) -> (hs : @571) -> @143 @573 @260 -@579 := @566 @116 -@581 := @96 @553 @521 -@582 := @143 @581 -@585 := (h : @70) -> (hs : @530) -> @582 @117 -@586 := @579 @68 -@588 := @96 @568 @528 -@590 := @143 @588 @117 -@591 := (hs : @534) -> @590 -@592 := @586 @532 -@594 := @143 @108 @117 -@595 := Eq.{1} -@596 := Option.{0} -@597 := @596 @148 -@598 := @595 @597 -@599 := LexLeanPreservation.Rust.adtFields -@603 := @598 (@599 @149 @36 @38) -@604 := Option.some.{0} -@605 := @604 @148 -@606 := @605 @4 -@607 := @603 @606 -@610 := @7 @163 @157 @149 -@611 := LexLeanTarget.TargetSyntax.Value.adt -@613 := @611 @153 @36 -@614 := @610 @613 -@615 := @8 @151 -@625 := {p : @32} -> - {c : @33} -> - {A : @34} -> - {i : @35} -> {k : @35} -> {fs : @147} -> {tys : @148} -> (h : @607) -> (hf : @162) -> @614 @615 -@627 := LexLeanPreservation.Rust.wt_adt @0 -@628 := @599 @0 -@632 := @598 (@628 @36 @38) @606 -@644 := {c : @33} -> - {A : @34} -> - {i : @35} -> - {k : @35} -> {fs : @147} -> {tys : @148} -> (h : @632) -> (hf : @191) -> @11 @157 @149 @613 @615 -@645 := @627 @1 -@655 := {A : @34} -> - {i : @35} -> - {k : @35} -> {fs : @147} -> {tys : @148} -> (h : @632) -> (hf : @210) -> @12 @149 @613 @615 -@656 := @645 @2 -@657 := @13 @613 -@664 := {i : @35} -> - {k : @35} -> {fs : @147} -> {tys : @148} -> (h : @632) -> (hf : @225) -> @657 @615 -@665 := @656 @9 -@666 := @628 @9 -@675 := {k : @35} -> - {fs : @147} -> {tys : @148} -> (h : @598 (@666 @38) @606) -> (hf : @225) -> @657 @10 -@676 := @665 @9 -@677 := @666 @9 -@678 := @598 @677 -@679 := @678 @606 -@680 := @611 @9 -@682 := @13 (@680 @36) -@687 := {fs : @147} -> {tys : @148} -> (h : @679) -> (hf : @225) -> @682 @10 -@688 := @676 @108 -@695 := {tys : @148} -> (h : @679) -> (hf : @582 @40) -> @13 (@680 @573) @10 -@696 := @688 @117 -@703 := (h : @678 (@605 @117)) -> (hf : @590) -> @13 (@680 @581) @10 -@704 := Eq.refl.{1} -@705 := @704 @597 -@707 := @696 (@705 @677) -@711 := (hf : @594) -> @13 (@680 @588) @10 -@712 := @707 @592 -@715 := @13 (@680 @108) @10 -@716 := fun (__s : @3) => @712 -@717 := Reasoning.Clinic.Chart -@719 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.__enc_1 @4 -@720 := 1 -@721 := @8 @720 -@724 := (__s : @717) -> @13 @719 @721 -@725 := Reasoning.Clinic.Chart.vitals -@726 := @725 @4 -@727 := Reasoning.Clinic.Chart.fever -@728 := @727 @4 -@729 := Reasoning.Clinic.Chart.tachycardia -@730 := @729 @4 -@731 := Reasoning.Clinic.Chart.tachypnea -@732 := @731 @4 -@733 := Reasoning.Clinic.Chart.leukocytosis -@734 := @733 @4 -@735 := Reasoning.Clinic.Chart.sirs -@736 := @735 @4 -@737 := Reasoning.Clinic.Chart.sepsis -@738 := @737 @4 -@739 := Reasoning.Clinic.Chart.shock -@740 := @739 @4 -@741 := Reasoning.Clinic.Chart.level -@742 := @741 @4 -@743 := @5 @726 -@745 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.Compose.RustCore.__wt_0 @726 -@746 := @29 @728 -@747 := @64 @728 -@749 := @13 @746 @31 -@750 := @29 @730 -@751 := @64 @730 -@753 := @13 @750 @31 -@754 := @29 @732 -@755 := @64 @732 -@757 := @13 @754 @31 -@758 := @29 @734 -@759 := @64 @734 -@761 := @13 @758 @31 -@762 := @29 @736 -@763 := @64 @736 -@765 := @13 @762 @31 -@766 := @29 @738 -@767 := @64 @738 -@769 := @13 @766 @31 -@770 := @29 @740 -@771 := @64 @740 -@773 := @13 @770 @31 -@774 := @29 @742 -@775 := @64 @742 -@777 := @13 @774 @31 -@779 := @96 @774 @95 -@781 := @96 @770 @779 -@783 := @96 @766 @781 -@785 := @96 @762 @783 -@787 := @96 @758 @785 -@789 := @96 @754 @787 -@791 := @96 @750 @789 -@793 := @96 @746 @791 -@795 := @96 @743 @793 -@796 := @111 @117 -@797 := @111 @796 -@798 := @110 @10 -@799 := @798 @797 -@800 := @221 @774 -@802 := @29 (@741 @36) -@815 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @802 @38) -> (hs : @225) -> @143 (@96 (@29 (@741 @151)) @36) @171 -@816 := @800 @31 -@818 := @29 (@741 @38) -@830 := {vs : @147} -> - {ts : @148} -> (h : @13 @818 @31) -> (hs : @225) -> @143 (@96 (@29 (@741 @153)) @36) @260 -@831 := @816 @95 -@833 := @29 (@741 @40) -@835 := @13 @833 @31 -@837 := @96 @802 @95 -@842 := {ts : @148} -> (h : @835) -> (hs : @271) -> @143 @837 @260 -@843 := @831 @109 -@845 := @96 @818 @95 -@846 := @143 @845 -@849 := (h : @777) -> (hs : @145) -> @846 @112 -@850 := @843 @775 -@852 := @96 @833 @95 -@854 := @143 @852 @112 -@855 := (hs : @145) -> @854 -@856 := @850 @142 -@858 := @143 @779 @112 -@859 := @221 @770 -@861 := @29 (@739 @36) -@874 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @861 @38) -> (hs : @225) -> @143 (@96 (@29 (@739 @151)) @36) @171 -@875 := @859 @31 -@877 := @29 (@739 @38) -@889 := {vs : @147} -> - {ts : @148} -> (h : @13 @877 @31) -> (hs : @225) -> @143 (@96 (@29 (@739 @153)) @36) @260 -@890 := @875 @779 -@892 := @29 (@739 @40) -@894 := @13 @892 @31 -@895 := @846 @40 -@897 := @96 @861 @837 -@902 := {ts : @148} -> (h : @894) -> (hs : @895) -> @143 @897 @260 -@903 := @890 @112 -@905 := @96 @877 @845 -@906 := @143 @905 -@909 := (h : @773) -> (hs : @854) -> @906 @113 -@910 := @903 @771 -@912 := @96 @892 @852 -@914 := @143 @912 @113 -@915 := (hs : @858) -> @914 -@916 := @910 @856 -@918 := @143 @781 @113 -@919 := @221 @766 -@921 := @29 (@737 @36) -@934 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @921 @38) -> (hs : @225) -> @143 (@96 (@29 (@737 @151)) @36) @171 -@935 := @919 @31 -@937 := @29 (@737 @38) -@949 := {vs : @147} -> - {ts : @148} -> (h : @13 @937 @31) -> (hs : @225) -> @143 (@96 (@29 (@737 @153)) @36) @260 -@950 := @935 @781 -@952 := @29 (@737 @40) -@954 := @13 @952 @31 -@955 := @906 @40 -@957 := @96 @921 @897 -@962 := {ts : @148} -> (h : @954) -> (hs : @955) -> @143 @957 @260 -@963 := @950 @113 -@965 := @96 @937 @905 -@966 := @143 @965 -@969 := (h : @769) -> (hs : @914) -> @966 @114 -@970 := @963 @767 -@972 := @96 @952 @912 -@974 := @143 @972 @114 -@975 := (hs : @918) -> @974 -@976 := @970 @916 -@978 := @143 @783 @114 -@979 := @221 @762 -@981 := @29 (@735 @36) -@994 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @981 @38) -> (hs : @225) -> @143 (@96 (@29 (@735 @151)) @36) @171 -@995 := @979 @31 -@997 := @29 (@735 @38) -@1009 := {vs : @147} -> - {ts : @148} -> (h : @13 @997 @31) -> (hs : @225) -> @143 (@96 (@29 (@735 @153)) @36) @260 -@1010 := @995 @783 -@1012 := @29 (@735 @40) -@1014 := @13 @1012 @31 -@1015 := @966 @40 -@1017 := @96 @981 @957 -@1022 := {ts : @148} -> (h : @1014) -> (hs : @1015) -> @143 @1017 @260 -@1023 := @1010 @114 -@1025 := @96 @997 @965 -@1026 := @143 @1025 -@1029 := (h : @765) -> (hs : @974) -> @1026 @115 -@1030 := @1023 @763 -@1032 := @96 @1012 @972 -@1034 := @143 @1032 @115 -@1035 := (hs : @978) -> @1034 -@1036 := @1030 @976 -@1038 := @143 @785 @115 -@1039 := @221 @758 -@1041 := @29 (@733 @36) -@1054 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @1041 @38) -> (hs : @225) -> @143 (@96 (@29 (@733 @151)) @36) @171 -@1055 := @1039 @31 -@1057 := @29 (@733 @38) -@1069 := {vs : @147} -> - {ts : @148} -> (h : @13 @1057 @31) -> (hs : @225) -> @143 (@96 (@29 (@733 @153)) @36) @260 -@1070 := @1055 @785 -@1072 := @29 (@733 @40) -@1074 := @13 @1072 @31 -@1075 := @1026 @40 -@1077 := @96 @1041 @1017 -@1082 := {ts : @148} -> (h : @1074) -> (hs : @1075) -> @143 @1077 @260 -@1083 := @1070 @115 -@1085 := @96 @1057 @1025 -@1086 := @143 @1085 -@1089 := (h : @761) -> (hs : @1034) -> @1086 @116 -@1090 := @1083 @759 -@1092 := @96 @1072 @1032 -@1094 := @143 @1092 @116 -@1095 := (hs : @1038) -> @1094 -@1096 := @1090 @1036 -@1098 := @143 @787 @116 -@1099 := @221 @754 -@1101 := @29 (@731 @36) -@1114 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @1101 @38) -> (hs : @225) -> @143 (@96 (@29 (@731 @151)) @36) @171 -@1115 := @1099 @31 -@1117 := @29 (@731 @38) -@1129 := {vs : @147} -> - {ts : @148} -> (h : @13 @1117 @31) -> (hs : @225) -> @143 (@96 (@29 (@731 @153)) @36) @260 -@1130 := @1115 @787 -@1132 := @29 (@731 @40) -@1134 := @13 @1132 @31 -@1135 := @1086 @40 -@1137 := @96 @1101 @1077 -@1142 := {ts : @148} -> (h : @1134) -> (hs : @1135) -> @143 @1137 @260 -@1143 := @1130 @116 -@1145 := @96 @1117 @1085 -@1146 := @143 @1145 -@1149 := (h : @757) -> (hs : @1094) -> @1146 @117 -@1150 := @1143 @755 -@1152 := @96 @1132 @1092 -@1154 := @143 @1152 @117 -@1155 := (hs : @1098) -> @1154 -@1156 := @1150 @1096 -@1158 := @143 @789 @117 -@1159 := @221 @750 -@1161 := @29 (@729 @36) -@1174 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @1161 @38) -> (hs : @225) -> @143 (@96 (@29 (@729 @151)) @36) @171 -@1175 := @1159 @31 -@1177 := @29 (@729 @38) -@1189 := {vs : @147} -> - {ts : @148} -> (h : @13 @1177 @31) -> (hs : @225) -> @143 (@96 (@29 (@729 @153)) @36) @260 -@1190 := @1175 @789 -@1192 := @29 (@729 @40) -@1194 := @13 @1192 @31 -@1195 := @1146 @40 -@1197 := @96 @1161 @1137 -@1202 := {ts : @148} -> (h : @1194) -> (hs : @1195) -> @143 @1197 @260 -@1203 := @1190 @117 -@1205 := @96 @1177 @1145 -@1206 := @143 @1205 -@1209 := (h : @753) -> (hs : @1154) -> @1206 @796 -@1210 := @1203 @751 -@1212 := @96 @1192 @1152 -@1214 := @143 @1212 @796 -@1215 := (hs : @1158) -> @1214 -@1216 := @1210 @1156 -@1218 := @143 @791 @796 -@1219 := @221 @746 -@1221 := @29 (@727 @36) -@1234 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @1221 @38) -> (hs : @225) -> @143 (@96 (@29 (@727 @151)) @36) @171 -@1235 := @1219 @31 -@1237 := @29 (@727 @38) -@1249 := {vs : @147} -> - {ts : @148} -> (h : @13 @1237 @31) -> (hs : @225) -> @143 (@96 (@29 (@727 @153)) @36) @260 -@1250 := @1235 @791 -@1252 := @29 (@727 @40) -@1254 := @13 @1252 @31 -@1255 := @1206 @40 -@1257 := @96 @1221 @1197 -@1262 := {ts : @148} -> (h : @1254) -> (hs : @1255) -> @143 @1257 @260 -@1263 := @1250 @796 -@1265 := @96 @1237 @1205 -@1266 := @143 @1265 -@1269 := (h : @749) -> (hs : @1214) -> @1266 @797 -@1270 := @1263 @747 -@1272 := @96 @1252 @1212 -@1274 := @143 @1272 @797 -@1275 := (hs : @1218) -> @1274 -@1276 := @1270 @1216 -@1278 := @143 @793 @797 -@1279 := @221 @743 -@1281 := @5 (@725 @36) -@1294 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @1281 @38) -> (hs : @225) -> @143 (@96 (@5 (@725 @151)) @36) @171 -@1295 := @1279 @10 -@1297 := @5 (@725 @38) -@1299 := @13 @1297 @10 -@1304 := @143 (@96 (@5 (@725 @153)) @36) -@1305 := @798 @38 -@1310 := {vs : @147} -> {ts : @148} -> (h : @1299) -> (hs : @225) -> @1304 @1305 -@1311 := @1295 @793 -@1313 := @5 (@725 @40) -@1315 := @13 @1313 @10 -@1316 := @1266 @40 -@1318 := @96 @1281 @1257 -@1323 := {ts : @148} -> (h : @1315) -> (hs : @1316) -> @143 @1318 @1305 -@1324 := @1311 @797 -@1326 := @13 @743 @10 -@1328 := @96 @1297 @1265 -@1329 := @143 @1328 -@1332 := (h : @1326) -> (hs : @1274) -> @1329 @799 -@1333 := @1324 @745 -@1335 := @96 @1313 @1272 -@1337 := @143 @1335 @799 -@1338 := (hs : @1278) -> @1337 -@1339 := @1333 @1276 -@1341 := @143 @795 @799 -@1342 := @656 @720 -@1343 := @628 @720 -@1352 := {k : @35} -> - {fs : @147} -> {tys : @148} -> (h : @598 (@1343 @38) @606) -> (hf : @225) -> @657 @721 -@1353 := @1342 @9 -@1354 := @1343 @9 -@1355 := @598 @1354 -@1356 := @1355 @606 -@1361 := {fs : @147} -> {tys : @148} -> (h : @1356) -> (hf : @225) -> @682 @721 -@1362 := @1353 @795 -@1369 := {tys : @148} -> (h : @1356) -> (hf : @1329 @40) -> @13 (@680 @1318) @721 -@1370 := @1362 @799 -@1377 := (h : @1355 (@605 @799)) -> (hf : @1337) -> @13 (@680 @1328) @721 -@1379 := @1370 (@705 @1354) -@1383 := (hf : @1341) -> @13 (@680 @1335) @721 -@1384 := @1379 @1339 -@1387 := @13 (@680 @795) @721 -@1388 := fun (__s : @717) => @1384 -@1389 := Reasoning.Clinic.Triage.Step -@1391 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.__enc_2 @4 -@1392 := 2 -@1393 := @8 @1392 -@1395 := @13 @1391 @1393 -@1396 := (__v : @1389) -> @1395 -@1397 := fun (__v : @1389) => @1395 -@1398 := @656 @1392 -@1399 := @628 @1392 -@1408 := {k : @35} -> - {fs : @147} -> {tys : @148} -> (h : @598 (@1399 @38) @606) -> (hf : @225) -> @657 @1393 -@1409 := @1398 @9 -@1410 := @1399 @9 -@1411 := @598 @1410 -@1412 := @1411 @606 -@1417 := {fs : @147} -> {tys : @148} -> (h : @1412) -> (hf : @225) -> @682 @1393 -@1418 := @1409 @95 -@1421 := @13 (@680 @95) @1393 -@1424 := {tys : @148} -> (h : @1412) -> (hf : @271) -> @1421 -@1425 := @1418 @109 -@1426 := @605 @109 -@1429 := (h : @1411 @1426) -> (hf : @145) -> @1421 -@1432 := @1425 (@705 @1410) @142 -@1433 := @1398 @720 -@1434 := @1399 @720 -@1435 := @598 @1434 -@1436 := @1435 @606 -@1437 := @611 @720 -@1444 := {fs : @147} -> {tys : @148} -> (h : @1436) -> (hf : @225) -> @13 (@1437 @36) @1393 -@1445 := @1433 @95 -@1448 := @13 (@1437 @95) @1393 -@1451 := {tys : @148} -> (h : @1436) -> (hf : @271) -> @1448 -@1452 := @1445 @109 -@1455 := (h : @1435 @1426) -> (hf : @145) -> @1448 -@1458 := @1452 (@705 @1434) @142 -@1459 := @1398 @1392 -@1460 := @1399 @1392 -@1461 := @598 @1460 -@1462 := @1461 @606 -@1463 := @611 @1392 -@1470 := {fs : @147} -> {tys : @148} -> (h : @1462) -> (hf : @225) -> @13 (@1463 @36) @1393 -@1471 := @1459 @95 -@1474 := @13 (@1463 @95) @1393 -@1477 := {tys : @148} -> (h : @1462) -> (hf : @271) -> @1474 -@1478 := @1471 @109 -@1481 := (h : @1461 @1426) -> (hf : @145) -> @1474 -@1484 := @1478 (@705 @1460) @142 -@1485 := 3 -@1486 := @1398 @1485 -@1487 := @1399 @1485 -@1488 := @598 @1487 -@1489 := @1488 @606 -@1490 := @611 @1485 -@1497 := {fs : @147} -> {tys : @148} -> (h : @1489) -> (hf : @225) -> @13 (@1490 @36) @1393 -@1498 := @1486 @95 -@1501 := @13 (@1490 @95) @1393 -@1504 := {tys : @148} -> (h : @1489) -> (hf : @271) -> @1501 -@1505 := @1498 @109 -@1508 := (h : @1488 @1426) -> (hf : @145) -> @1501 -@1511 := @1505 (@705 @1487) @142 -@1512 := 4 -@1513 := @1398 @1512 -@1514 := @1399 @1512 -@1515 := @598 @1514 -@1516 := @1515 @606 -@1517 := @611 @1512 -@1524 := {fs : @147} -> {tys : @148} -> (h : @1516) -> (hf : @225) -> @13 (@1517 @36) @1393 -@1525 := @1513 @95 -@1528 := @13 (@1517 @95) @1393 -@1531 := {tys : @148} -> (h : @1516) -> (hf : @271) -> @1528 -@1532 := @1525 @109 -@1535 := (h : @1515 @1426) -> (hf : @145) -> @1528 -@1538 := @1532 (@705 @1514) @142 -@1539 := 5 -@1540 := @1398 @1539 -@1541 := @1399 @1539 -@1542 := @598 @1541 -@1543 := @1542 @606 -@1544 := @611 @1539 -@1551 := {fs : @147} -> {tys : @148} -> (h : @1543) -> (hf : @225) -> @13 (@1544 @36) @1393 -@1552 := @1540 @95 -@1555 := @13 (@1544 @95) @1393 -@1558 := {tys : @148} -> (h : @1543) -> (hf : @271) -> @1555 -@1559 := @1552 @109 -@1562 := (h : @1542 @1426) -> (hf : @145) -> @1555 -@1565 := @1559 (@705 @1541) @142 -@1566 := 6 -@1567 := @1398 @1566 -@1568 := @1399 @1566 -@1569 := @598 @1568 -@1570 := @1569 @606 -@1571 := @611 @1566 -@1578 := {fs : @147} -> {tys : @148} -> (h : @1570) -> (hf : @225) -> @13 (@1571 @36) @1393 -@1579 := @1567 @95 -@1582 := @13 (@1571 @95) @1393 -@1585 := {tys : @148} -> (h : @1570) -> (hf : @271) -> @1582 -@1586 := @1579 @109 -@1589 := (h : @1569 @1426) -> (hf : @145) -> @1582 -@1592 := @1586 (@705 @1568) @142 -@1593 := 7 -@1594 := @1398 @1593 -@1595 := @1399 @1593 -@1596 := @598 @1595 -@1597 := @1596 @606 -@1598 := @611 @1593 -@1605 := {fs : @147} -> {tys : @148} -> (h : @1597) -> (hf : @225) -> @13 (@1598 @36) @1393 -@1606 := @1594 @95 -@1609 := @13 (@1598 @95) @1393 -@1612 := {tys : @148} -> (h : @1597) -> (hf : @271) -> @1609 -@1613 := @1606 @109 -@1616 := (h : @1596 @1426) -> (hf : @145) -> @1609 -@1619 := @1613 (@705 @1595) @142 -@1631 := fun (__v : @1389) => - Reasoning.Clinic.Triage.Step.casesOn.{0} @1397 @4 @1432 @1458 @1484 @1511 @1538 @1565 @1592 @1619 -@1632 := @29 @149 -@1633 := @64 @149 -@1634 := @13 @1632 -@1635 := @1634 @31 -@1636 := @29 @151 -@1637 := @64 @151 -@1638 := @13 @1636 -@1639 := @1638 @31 -@1640 := @29 @153 -@1641 := @64 @153 -@1642 := @13 @1640 -@1643 := @1642 @31 -@1644 := @29 @36 -@1645 := @64 @36 -@1647 := @13 @1644 @31 -@1648 := @29 @38 -@1649 := @64 @38 -@1651 := @13 @1648 @31 -@1652 := @29 @40 -@1653 := @64 @40 -@1655 := @13 @1652 @31 -@1656 := @96 @1652 -@1657 := @1656 @95 -@1658 := @96 @1648 -@1659 := @1658 @1657 -@1660 := @96 @1644 -@1661 := @1660 @1659 -@1662 := @96 @1640 -@1663 := @1662 @1661 -@1664 := @96 @1636 -@1665 := @1664 @1663 -@1666 := @96 @1632 -@1667 := @1666 @1665 -@1670 := Prod.{0, 0} @35 @91 -@1673 := Prod.mk.{0, 0} @35 @91 -@1674 := @1673 @1539 -@1675 := @1674 @1652 -@1676 := @1673 @1512 -@1677 := @1676 @1648 -@1678 := @1673 @1485 -@1679 := @1678 @1644 -@1680 := @1673 @1392 -@1681 := @1680 @1640 -@1682 := @1673 @720 -@1683 := @1682 @1636 -@1684 := @1673 @9 -@1685 := @1684 @1632 -@1686 := @93 @1670 -@1687 := @94 @1670 -@1689 := @1687 @1685 @1686 -@1691 := @1687 @1683 @1689 -@1693 := @1687 @1681 @1691 -@1695 := @1687 @1679 @1693 -@1697 := @1687 @1677 @1695 -@1699 := @1687 @1675 @1697 -@1700 := Bool.true -@1701 := LexLeanTarget.TargetSyntax.Function -@1702 := LexLeanTarget.TargetSyntax.Program.functions -@1703 := @1702 @0 -@1704 := @93 @35 -@1705 := LexLeanTarget.TargetSyntax.Ty.unit -@1706 := LexLeanTarget.TargetSyntax.Value.unit -@1709 := LexLeanTarget.TargetSyntax.Expr.value @1705 @1706 -@1714 := LexLeanTarget.TargetSyntax.Function.mk @1704 @109 @1705 @1709 -@1719 := List.getD.{0} @1701 @1703 @9 @1714 -@1723 := fun (__e_n : @35) => - LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.RustCore.root @4 @9 -@1724 := @221 @1652 -@1725 := @1642 @38 -@1727 := @143 (@1666 @36) -@1733 := {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @1725) -> (hs : @225) -> @1727 @171 -@1734 := @1724 @31 -@1741 := {vs : @147} -> {ts : @148} -> (h : @1647) -> (hs : @225) -> @143 (@1664 @36) @260 -@1742 := @1734 @95 -@1743 := @1662 @95 -@1748 := {ts : @148} -> (h : @1651) -> (hs : @271) -> @143 @1743 @260 -@1749 := @1742 @109 -@1750 := @1660 @95 -@1751 := @143 @1750 -@1754 := (h : @1655) -> (hs : @145) -> @1751 @112 -@1755 := @1749 @1653 -@1756 := @1658 @95 -@1758 := @143 @1756 @112 -@1759 := (hs : @145) -> @1758 -@1760 := @1755 @142 -@1762 := @143 @1657 @112 -@1763 := @221 @1648 -@1764 := @1638 @38 -@1765 := @29 @157 -@1766 := @96 @1765 -@1768 := @143 (@1766 @36) -@1774 := {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @1764) -> (hs : @225) -> @1768 @171 -@1775 := @1763 @31 -@1780 := {vs : @147} -> {ts : @148} -> (h : @1643) -> (hs : @225) -> @1727 @260 -@1781 := @1775 @1657 -@1782 := @1751 @40 -@1783 := @1664 @1743 -@1788 := {ts : @148} -> (h : @1647) -> (hs : @1782) -> @143 @1783 @260 -@1789 := @1781 @112 -@1790 := @1662 @1750 -@1791 := @143 @1790 -@1794 := (h : @1651) -> (hs : @1758) -> @1791 @113 -@1795 := @1789 @1649 -@1796 := @1660 @1756 -@1798 := @143 @1796 @113 -@1799 := (hs : @1762) -> @1798 -@1800 := @1795 @1760 -@1802 := @143 @1659 @113 -@1803 := @221 @1644 -@1804 := @1634 @38 -@1805 := @29 @163 -@1806 := @96 @1805 -@1808 := @143 (@1806 @36) -@1814 := {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @1804) -> (hs : @225) -> @1808 @171 -@1815 := @1803 @31 -@1820 := {vs : @147} -> {ts : @148} -> (h : @1639) -> (hs : @225) -> @1768 @260 -@1821 := @1815 @1659 -@1822 := @1791 @40 -@1823 := @1666 @1783 -@1828 := {ts : @148} -> (h : @1643) -> (hs : @1822) -> @143 @1823 @260 -@1829 := @1821 @113 -@1830 := @1664 @1790 -@1831 := @143 @1830 -@1834 := (h : @1647) -> (hs : @1798) -> @1831 @114 -@1835 := @1829 @1645 -@1836 := @1662 @1796 -@1838 := @143 @1836 @114 -@1839 := (hs : @1802) -> @1838 -@1840 := @1835 @1800 -@1842 := @143 @1661 @114 -@1843 := @221 @1640 -@1844 := @13 @1765 -@1845 := @1844 @38 -@1846 := #9 -@1847 := @29 @1846 -@1848 := @96 @1847 -@1850 := @143 (@1848 @36) -@1856 := {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @1845) -> (hs : @225) -> @1850 @171 -@1857 := @1843 @31 -@1862 := {vs : @147} -> {ts : @148} -> (h : @1635) -> (hs : @225) -> @1808 @260 -@1863 := @1857 @1661 -@1864 := @1831 @40 -@1865 := @1766 @1823 -@1870 := {ts : @148} -> (h : @1639) -> (hs : @1864) -> @143 @1865 @260 -@1871 := @1863 @114 -@1872 := @1666 @1830 -@1873 := @143 @1872 -@1876 := (h : @1643) -> (hs : @1838) -> @1873 @115 -@1877 := @1871 @1641 -@1878 := @1664 @1836 -@1880 := @143 @1878 @115 -@1881 := (hs : @1842) -> @1880 -@1882 := @1877 @1840 -@1884 := @143 @1663 @115 -@1885 := @221 @1636 -@1886 := @13 @1805 -@1887 := @1886 @38 -@1888 := #10 -@1889 := @29 @1888 -@1890 := @96 @1889 -@1892 := @143 (@1890 @36) -@1898 := {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @1887) -> (hs : @225) -> @1892 @171 -@1899 := @1885 @31 -@1900 := @1844 @31 -@1905 := {vs : @147} -> {ts : @148} -> (h : @1900) -> (hs : @225) -> @1850 @260 -@1906 := @1899 @1663 -@1907 := @1873 @40 -@1908 := @1806 @1865 -@1913 := {ts : @148} -> (h : @1635) -> (hs : @1907) -> @143 @1908 @260 -@1914 := @1906 @115 -@1915 := @1766 @1872 -@1916 := @143 @1915 -@1919 := (h : @1639) -> (hs : @1880) -> @1916 @116 -@1920 := @1914 @1637 -@1921 := @1666 @1878 -@1923 := @143 @1921 @116 -@1924 := (hs : @1884) -> @1923 -@1925 := @1920 @1882 -@1927 := @143 @1665 @116 -@1928 := @221 @1632 -@1930 := @13 @1847 @38 -@1931 := #11 -@1932 := @29 @1931 -@1933 := @96 @1932 -@1941 := {t : @92} -> - {vs : @147} -> {ts : @148} -> (h : @1930) -> (hs : @225) -> @143 (@1933 @36) @171 -@1942 := @1928 @31 -@1948 := {vs : @147} -> {ts : @148} -> (h : @1886 @31) -> (hs : @225) -> @1892 @260 -@1949 := @1942 @1665 -@1950 := @1916 @40 -@1951 := @1848 @1908 -@1952 := @143 @1951 -@1956 := {ts : @148} -> (h : @1900) -> (hs : @1950) -> @1952 @260 -@1957 := @1949 @116 -@1958 := @1806 @1915 -@1959 := @143 @1958 -@1962 := (h : @1635) -> (hs : @1923) -> @1959 @117 -@1963 := @1957 @1633 -@1964 := @1766 @1921 -@1965 := @143 @1964 -@1967 := (hs : @1927) -> @1965 @117 -@1968 := @1963 @1925 -@1969 := @143 @1667 -@1970 := @1969 @117 -@1971 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.denote -@1977 := @1971 @149 @151 @153 @36 @38 @40 -@1978 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.__fits_0 -@1984 := @1978 @149 @151 @153 @36 @38 @40 -@1992 := @29 (Reasoning.Main.triageLevel @149 @151 @153 @36 @38 @40) -@1999 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.root @149 @151 @153 @36 @38 @40 -@2000 := Bool -@2001 := Ne.{1} -@2002 := LexLeanPreservation.Obs -@2003 := @2001 @2002 -@2004 := LexLeanPreservation.Rel -@2007 := @2003 (@2004 @40 @4) -@2008 := LexLeanPreservation.Obs.stuck -@2011 := (f : @2000) -> (v : @91) -> @2007 @2008 -@2013 := LexLeanPreservation.Rust.rel_ne_stuck @1984 -@2024 := (v : @91) -> @2003 (@2004 (@1978 @157 @149 @151 @153 @36 @38) @4) @2008 -@2025 := @2013 @1992 -@2029 := @2003 (@2004 @1984 @1992) @2008 -@2030 := @146 @1670 -@2031 := LexLeanPreservation.Rust.FunSem -@2037 := (n : @35) -> @2031 @1846 @163 @157 @4 @149 -@2038 := @596 @1701 -@2039 := @595 @2038 -@2046 := LexLeanRuntime.index (@146 @1701) @1701 (LexLeanRuntime.instIndexableList @1701) -@2050 := @2039 (@2046 (@1702 @1846) @149) -@2051 := @604 @1701 -@2052 := @2051 @151 -@2053 := @2050 @2052 -@2057 := @118 @1888 @1846 @163 @151 -@2058 := LexLeanTarget.TargetSyntax.Function.types -@2059 := @2058 @149 -@2060 := @2057 @2059 -@2061 := @596 @2030 -@2062 := @595 @2061 -@2063 := LexLeanTarget.TargetSemantics.bindAll -@2064 := LexLeanTarget.TargetSyntax.Function.parameters -@2069 := @2062 (@2063 (@2064 @157) @149 @1686) -@2070 := @604 @2030 -@2071 := @2070 @151 -@2072 := @2069 @2071 -@2073 := @596 @2000 -@2074 := @595 @2073 -@2075 := LexLeanPreservation.Rust.fnFallible -@2078 := @2074 (@2075 @1931 @1846) -@2079 := @604 @2000 -@2080 := @2079 @151 -@2081 := @2078 @2080 -@2082 := LexLeanPreservation.RunConv -@2083 := #13 -@2087 := @2082 @2083 @1888 @163 @151 -@2089 := @2003 @149 @2008 -@2090 := Exists.{1} -@2091 := LexLeanPreservation.Rust.ROut -@2092 := @2090 @2091 -@2093 := And -@2094 := LexLeanPreservation.Rust.RealizesFn -@2098 := @2093 (@2094 @1846 @163 @4) -@2099 := LexLeanPreservation.Rust.RCI -@2100 := #15 -@2101 := @2099 @2100 -@2102 := LexLeanPreservation.Rust.fnIdent -@2103 := @2102 @2083 -@2110 := (hne : @2089) -> @2092 (fun (ro : @2091) => @2098 (@2101 @2103 @1931 @4)) -@2125 := {p : @32} -> - {c : @33} -> - {A : @34} -> - {f : @35} -> - {fn : @1701} -> - {args : @147} -> - {env : @2030} -> - {F : @2000} -> - {o : @2002} -> - (hB : @2037) -> - (hfn : @2053) -> (hwt : @2060) -> (hbind : @2072) -> (hF : @2081) -> (hA : @2087) -> @2110 -@2127 := LexLeanPreservation.Rust.compose @0 -@2128 := @2031 @0 -@2133 := (n : @35) -> @2128 @163 @157 @4 @149 -@2134 := @2046 @1703 -@2137 := @2039 (@2134 @149) @2052 -@2141 := @129 @1846 @163 @151 @2059 -@2142 := @2082 @0 -@2145 := @2142 @1888 @163 @151 -@2159 := {c : @33} -> - {A : @34} -> - {f : @35} -> - {fn : @1701} -> - {args : @147} -> - {env : @2030} -> - {F : @2000} -> - {o : @2002} -> - (hB : @2133) -> - (hfn : @2137) -> (hwt : @2141) -> (hbind : @2072) -> (hF : @2081) -> (hA : @2145) -> @2110 -@2160 := @2127 @1 -@2161 := @2128 @1 -@2165 := (n : @35) -> @2161 @157 @4 @149 -@2168 := @137 @163 @151 @2059 -@2169 := @2075 @1 -@2172 := @2074 (@2169 @1846) @2080 -@2173 := @2099 @1 -@2183 := (hbind : @2072) -> - (hF : @2172) -> - (hA : @2145) -> (hne : @2089) -> @2092 (fun (ro : @2091) => @2098 (@2173 @2103 @1931 @4)) -@2193 := {A : @34} -> - {f : @35} -> - {fn : @1701} -> - {args : @147} -> - {env : @2030} -> - {F : @2000} -> {o : @2002} -> (hB : @2165) -> (hfn : @2137) -> (hwt : @2168) -> @2183 -@2194 := @2160 @2 -@2196 := @2161 @2 @4 -@2198 := (n : @35) -> @2196 @149 -@2199 := @143 @151 -@2200 := @2199 @2059 -@2209 := {f : @35} -> - {fn : @1701} -> - {args : @147} -> - {env : @2030} -> - {F : @2000} -> {o : @2002} -> (hB : @2198) -> (hfn : @2137) -> (hwt : @2200) -> @2183 -@2210 := @2194 @9 -@2212 := (n : @35) -> @2196 @9 -@2213 := @2134 @9 -@2214 := @2039 @2213 -@2215 := @2214 @2052 -@2216 := @2169 @9 -@2217 := @2074 @2216 -@2218 := @2217 @2080 -@2219 := @2142 @9 -@2221 := @2219 @163 @151 -@2223 := @2173 (@2102 @9) -@2231 := (hF : @2218) -> - (hA : @2221) -> (hne : @2089) -> @2092 (fun (ro : @2091) => @2098 (@2223 @1931 @4)) -@2240 := {fn : @1701} -> - {args : @147} -> - {env : @2030} -> - {F : @2000} -> - {o : @2002} -> (hB : @2212) -> (hfn : @2215) -> (hwt : @2200) -> (hbind : @2072) -> @2231 -@2241 := @2210 @1719 -@2243 := @2214 (@2051 @1719) -@2244 := @2058 @1719 -@2245 := @2199 @2244 -@2247 := @2063 (@2064 @1719) -@2259 := {args : @147} -> - {env : @2030} -> - {F : @2000} -> - {o : @2002} -> - (hB : @2212) -> - (hfn : @2243) -> (hwt : @2245) -> (hbind : @2062 (@2247 @149 @1686) @2071) -> @2231 -@2260 := @2241 @1667 -@2266 := @1933 (@1890 (@1848 (@1806 (@1766 (@1666 @95))))) -@2268 := @143 @2266 @2244 -@2269 := #12 -@2271 := @96 (@29 @2269) -@2277 := @2271 (@1933 (@1890 (@1848 (@1806 (@1766 @95))))) -@2281 := @2062 (@2247 @2277 @1686) @2071 -@2282 := #14 -@2284 := @96 (@29 @2282) -@2286 := @96 (@29 @2083) -@2292 := @2284 (@2286 (@2271 (@1933 (@1890 (@1848 @95))))) -@2294 := @2219 @2292 @151 -@2297 := @96 (@29 #17) -@2300 := @96 (@29 #16) -@2302 := @96 (@29 @2100) -@2323 := {env : @2030} -> - {F : @2000} -> - {o : @2002} -> - (hB : @2212) -> - (hfn : @2243) -> - (hwt : @2268) -> - (hbind : @2281) -> - (hF : @2218) -> - (hA : @2294) -> - (hne : @2089) -> - @2092 (fun (ro : @2091) => @2098 (@2223 (@2297 (@2300 (@2302 (@2284 (@2286 (@2271 @95)))))) @4)) -@2324 := @2260 @1699 -@2330 := @1890 (@1848 (@1806 (@1766 (@1666 (@1664 @95))))) -@2332 := @143 @2330 @2244 -@2355 := @2062 - (@2247 @2266 @1686) - (@2070 - (@1687 - (@1674 @1632) - (@1687 - (@1676 @1765) - (@1687 - (@1678 @1805) - (@1687 (@1680 @1847) (@1687 (@1682 @1889) (@1687 (@1684 @1932) @1686))))))) -@2361 := @2286 (@2271 (@1933 (@1890 (@1848 (@1806 @95))))) -@2383 := {F : @2000} -> - {o : @2002} -> - (hB : @2212) -> - (hfn : @2243) -> - (hwt : @2332) -> - (hbind : @2355) -> - (hF : @2218) -> - (hA : @2219 @2361 @151) -> - (hne : @2089) -> - @2092 (fun (ro : @2091) => @2098 (@2223 (@2300 (@2302 (@2284 (@2286 (@2271 (@1933 @95)))))) @4)) -@2384 := @2324 @1700 -@2385 := @1952 @2244 -@2408 := @2062 - (@2247 @2330 @1686) - (@2070 - (@1687 - (@1674 @1636) - (@1687 - (@1676 @1632) - (@1687 - (@1678 @1765) - (@1687 (@1680 @1805) (@1687 (@1682 @1847) (@1687 (@1684 @1889) @1686))))))) -@2410 := @2217 (@2079 @1700) -@2412 := @2219 @2277 @151 -@2413 := @2094 @1700 -@2435 := {o : @2002} -> - (hB : @2212) -> - (hfn : @2243) -> - (hwt : @2385) -> - (hbind : @2408) -> - (hF : @2410) -> - (hA : @2412) -> - (hne : @2089) -> - @2092 - (fun (ro : @2091) => - @2093 (@2413 @163 @4) (@2223 (@2302 (@2284 (@2286 (@2271 (@1933 (@1890 @95)))))) @4)) -@2436 := @2384 @1977 -@2437 := @1959 @2244 -@2460 := @2062 - (@2247 @1951 @1686) - (@2070 - (@1687 - (@1674 @1640) - (@1687 - (@1676 @1636) - (@1687 - (@1678 @1632) - (@1687 (@1680 @1765) (@1687 (@1682 @1805) (@1687 (@1684 @1847) @1686))))))) -@2461 := @2219 @2266 -@2467 := @1971 @1931 @1888 @1846 @163 @157 @149 -@2468 := @2461 @2467 -@2474 := @1971 @2269 @1931 @1888 @1846 @163 @157 -@2497 := (hB : @2212) -> - (hfn : @2243) -> - (hwt : @2437) -> - (hbind : @2460) -> - (hF : @2410) -> - (hA : @2468) -> - (hne : @2003 @2474 @2008) -> - @2092 - (fun (ro : @2091) => - @2093 (@2413 (@1971 @2282 @2083 @2269 @1931 @1888 @1846) @4) (@2223 @2292 @4)) -@2498 := @2436 @1723 -@2499 := @1965 @2244 -@2522 := @2062 - (@2247 @1958 @1686) - (@2070 - (@1687 - (@1674 @1644) - (@1687 - (@1676 @1640) - (@1687 - (@1678 @1636) - (@1687 (@1680 @1632) (@1687 (@1682 @1765) (@1687 (@1684 @1805) @1686))))))) -@2523 := @2219 @2330 -@2529 := @1971 @1888 @1846 @163 @157 @149 @151 -@2552 := (hfn : @2243) -> - (hwt : @2499) -> - (hbind : @2522) -> - (hF : @2410) -> - (hA : @2523 @2529) -> - (hne : @2003 @2467 @2008) -> - @2092 - (fun (ro : @2091) => - @2093 (@2413 (@1971 @2083 @2269 @1931 @1888 @1846 @163) @4) (@2223 @2361 @4)) -@2555 := @2498 (@704 @2038 @2213) -@2556 := @1969 @2244 -@2579 := @2062 - (@2247 @1964 @1686) - (@2070 - (@1687 - (@1674 @1648) - (@1687 - (@1676 @1644) - (@1687 - (@1678 @1640) - (@1687 (@1680 @1636) (@1687 (@1682 @1632) (@1687 (@1684 @1765) @1686))))))) -@2580 := @2219 @1951 -@2586 := @1971 @1846 @163 @157 @149 @151 @153 -@2602 := (hwt : @2556) -> - (hbind : @2579) -> - (hF : @2410) -> - (hA : @2580 @2586) -> - (hne : @2003 @2529 @2008) -> @2092 (fun (ro : @2091) => @2093 (@2413 @2474 @4) (@2223 @2277 @4)) -@2603 := @2555 @1968 -@2605 := @2247 @1667 @1686 -@2608 := @2062 @2605 (@2070 @1699) -@2609 := @2219 @1958 -@2615 := @1971 @163 @157 @149 @151 @153 @36 -@2630 := (hbind : @2608) -> - (hF : @2410) -> - (hA : @2609 @2615) -> - (hne : @2003 @2586 @2008) -> @2092 (fun (ro : @2091) => @2093 (@2413 @2467 @4) (@2223 @2266 @4)) -@2633 := @2603 (@704 @2061 @2605) -@2634 := @2219 @1964 -@2640 := @1971 @157 @149 @151 @153 @36 @38 -@2654 := (hF : @2410) -> - (hA : @2634 @2640) -> - (hne : @2003 @2615 @2008) -> @2092 (fun (ro : @2091) => @2093 (@2413 @2529 @4) (@2223 @2330 @4)) -@2657 := @2633 (@704 @2073 @2216) -@2671 := (hA : @2219 @1667 @1977) -> - (hne : @2003 @2640 @2008) -> @2092 (fun (ro : @2091) => @2093 (@2413 @2586 @4) (@2223 @1951 @4)) -@2672 := @2657 @1999 -@2683 := (hne : @2003 @1977 @2008) -> - @2092 (fun (ro : @2091) => @2093 (@2413 @2615 @4) (@2223 @1958 @4)) -@2684 := @2672 @2025 -@2690 := @2093 (@2413 @2640 @4) (@2223 @1964 @4) -@2692 := @2092 (fun (ro : @2091) => @2690) -@2694 := @2092 (fun (__e_ro : @2091) => @2690) -@2703 := LexLeanPreservation.Rust.RepresentableL - (@1664 (@1662 (@1660 (@1658 (@1656 (@96 @42 @95)))))) -@2704 := (__e_hrep : @2703) -> @2694 -@2705 := fun (__e_hrep : @2703) => @2684 -@2706 := (infection : @35) -> @2704 -@2707 := fun (infection : @35) => @2705 -@2708 := (systolic : @35) -> @2706 -@2709 := fun (systolic : @35) => @2707 -@2710 := (whiteCells : @35) -> @2708 -@2711 := fun (whiteCells : @35) => @2709 -@2712 := (respiratoryRate : @35) -> @2710 -@2713 := fun (respiratoryRate : @35) => @2711 -@2714 := (heartRate : @35) -> @2712 -@2715 := fun (heartRate : @35) => @2713 -@2716 := (temperature : @35) -> @2714 -@2717 := fun (temperature : @35) => @2715 -\end{coremodule} -\end{lexlean} diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R0/RustCore.lean b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R0/RustCore.lean deleted file mode 100644 index 3cdfe7f7d..000000000 --- a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R0/RustCore.lean +++ /dev/null @@ -1,360 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.RustCore -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [{ constructors := [[.nat, .nat, .nat, .nat, .nat, .nat]] }, - { constructors := [[(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]] }, - { constructors := [[], [], [], [], [], [], [], []] }], functions := (( - { parameters := [0, 1, 2, 3, 4, 5], types := [.nat, .nat, .nat, .nat, .nat, .nat], result := .nat, - body := (.«match» .nat (.call 1 [(.build (.adt 0) (.adt 0) [(.var 0), (.var 1), (.var 2), (.var 3), (.var 4), (.var 5)])]) [(.arm .ok [6] (.var 6)), (.arm .error [7] (.value .nat (.nat 9)))]) }) ::( - { parameters := [0], types := [(.adt 0)], result := (.result .nat (.pair .bool .bool)), - body := (.«let» 1 (.pair (.adt 1) .bool) (.call 2 [(.var 0)]) (.«match» (.result .nat (.pair .bool .bool)) (.second (.var 1)) [(.arm .true [] (.call 3 [(.var 0), (.first (.var 1))])), (.arm .false [] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])]))])) }) ::( - { parameters := [0], types := [(.adt 0)], result := (.pair (.adt 1) .bool), - body := (.call 4 [(.closure 5 []), (.value .nat (.nat 11)), (.call 6 [(.var 0)])]) }) ::( - { parameters := [0, 1], types := [(.adt 0), (.adt 1)], result := (.result .nat (.pair .bool .bool)), - body := (.«match» (.result .nat (.pair .bool .bool)) (.call 7 [(.var 0), (.var 1)]) [(.arm .some [2] (.build .ok (.result .nat (.pair .bool .bool)) [(.var 2)])), (.arm .none [] (.«match» (.result .nat (.pair .bool .bool)) (.call 8 [(.var 1)]) [(.arm .some [3] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])])])), (.arm .none [] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])])]))]))]) }) ::( - { parameters := [0, 1, 2], types := [(.fn [(.adt 1)] (.option (.adt 1))), .nat, (.adt 1)], result := (.pair (.adt 1) .bool), - body := (.«match» (.pair (.adt 1) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.adt 1) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.adt 1) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.adt 1) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 4 [(.var 0), (.var 3), (.var 4)]))]))]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.«match» (.option (.adt 1)) (.call 9 [(.var 0)]) [(.arm .none [] (.build .none (.option (.adt 1)) [])), (.arm .some [1] (.call 10 [(.var 0), (.var 1)]))]) }) ::( - { parameters := [0], types := [(.adt 0)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.var 0), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0))]) }) ::( - { parameters := [0, 1], types := [(.adt 0), (.adt 1)], result := (.option .nat), - body := (.«match» (.option .nat) (.call 8 [(.var 1)]) [(.arm .none [] (.build .none (.option .nat) [])), (.arm .some [2] (.cond (.call 11 [(.var 0), (.var 2)]) (.build .some (.option .nat) [(.var 2)]) (.build .none (.option .nat) [])))]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option .nat), - body := (.build .some (.option .nat) [(.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 2)), - body := (.«match» (.option (.adt 2)) (.«match» (.option (.adt 2)) (.«match» (.option (.adt 2)) (.cond (.call 12 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 0) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [1] (.build .some (.option (.adt 2)) [(.var 1)])), (.arm .none [] (.cond (.call 13 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 1) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]) [(.arm .some [2] (.build .some (.option (.adt 2)) [(.var 2)])), (.arm .none [] (.«match» (.option (.adt 2)) (.cond (.call 14 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 2) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [3] (.build .some (.option (.adt 2)) [(.var 3)])), (.arm .none [] (.cond (.call 15 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 3) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]))]) [(.arm .some [4] (.build .some (.option (.adt 2)) [(.var 4)])), (.arm .none [] (.«match» (.option (.adt 2)) (.«match» (.option (.adt 2)) (.cond (.call 16 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 4) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [5] (.build .some (.option (.adt 2)) [(.var 5)])), (.arm .none [] (.cond (.call 17 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 5) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]) [(.arm .some [6] (.build .some (.option (.adt 2)) [(.var 6)])), (.arm .none [] (.«match» (.option (.adt 2)) (.cond (.call 18 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 6) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [7] (.build .some (.option (.adt 2)) [(.var 7)])), (.arm .none [] (.cond (.call 19 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 7) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]))]))]) }) ::( - { parameters := [0, 1], types := [(.adt 1), (.adt 2)], result := (.option (.adt 1)), - body := (.«match» (.option (.adt 1)) (.var 1) [(.arm (.adt 0) [] (.call 20 [(.var 0)])), (.arm (.adt 1) [] (.call 21 [(.var 0)])), (.arm (.adt 2) [] (.call 22 [(.var 0)])), (.arm (.adt 3) [] (.call 23 [(.var 0)])), (.arm (.adt 4) [] (.call 24 [(.var 0)])), (.arm (.adt 5) [] (.call 25 [(.var 0)])), (.arm (.adt 6) [] (.call 26 [(.var 0)])), (.arm (.adt 7) [] (.call 27 [(.var 0)]))]) }) ::( - { parameters := [0, 1], types := [(.adt 0), .nat], result := .bool, - body := (.cond (.prim .natLe [(.var 1), (.value .nat (.nat 3))]) (.cond (.prim .natEq [(.var 1), (.value .nat (.nat 3))]) (.build .true .bool []) (.prim .boolNot [(.cond (.call 28 [(.var 0)]) (.cond (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 1))]) (.cond (.call 29 [(.var 0)]) (.call 30 [(.var 0)]) (.build .false .bool [])) (.build .false .bool [])) (.build .false .bool []))])) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 1), (.value .nat (.nat 0))]) (.call 29 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 2), (.value .nat (.nat 0))]) (.call 30 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 3), (.value .nat (.nat 0))]) (.call 31 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 4), (.value .nat (.nat 0))]) (.call 32 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 0))]) (.prim .natLe [(.value .nat (.nat 2)), (.prim .natAdd [(.prim .natAdd [(.prim .natAdd [(.field (.var 0) 1), (.field (.var 0) 2)]), (.field (.var 0) 3)]), (.field (.var 0) 4)])]) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 0))]) (.cond (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 1))]) (.prim .natEq [(.field (.field (.var 0) 0) 5), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 7), (.value .nat (.nat 0))]) (.cond (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 1))]) (.call 28 [(.field (.var 0) 0)]) (.build .false .bool [])) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natLt [(.field (.var 0) 8), (.value .nat (.nat 3))]) (.cond (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 0))]) (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .true .bool []) (.cond (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 1))]) (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .true .bool []) (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 2))]) (.prim .natEq [(.field (.var 0) 7), (.value .nat (.nat 1))]) (.build .false .bool [])))) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 12 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 33 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 13 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 34 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 14 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 35 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 15 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 36 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 16 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 37 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 17 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 38 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 18 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 39 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 19 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 40 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.prim .natLt [(.field (.var 0) 4), (.value .nat (.nat 90))]) }) ::( - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.prim .natLt [(.value .nat (.nat 380)), (.field (.var 0) 0)]) }) ::( - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.prim .natLt [(.value .nat (.nat 90)), (.field (.var 0) 1)]) }) ::( - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.prim .natLt [(.value .nat (.nat 20)), (.field (.var 0) 2)]) }) ::( - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.prim .natLt [(.value .nat (.nat 12)), (.field (.var 0) 3)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.value .nat (.nat 1)), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.value .nat (.nat 1)), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.value .nat (.nat 1)), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.value .nat (.nat 1)), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.value .nat (.nat 1)), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.value .nat (.nat 1)), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.value .nat (.nat 1)), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.prim .natAdd [(.field (.var 0) 8), (.value .nat (.nat 1))])]) }) ::[]) } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .core, items := ((.enum (.adt 0) [{ number := 0, fields := [.nat, .nat, .nat, .nat, .nat, .nat] }]) :: - (.enum (.adt 1) [{ number := 0, fields := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat] }]) :: - (.enum (.adt 2) [{ number := 0, fields := [] }, { number := 1, fields := [] }, { number := 2, fields := [] }, { number := 3, fields := [] }, { number := 4, fields := [] }, { number := 5, fields := [] }, { number := 6, fields := [] }, { number := 7, fields := [] }]) :: - (.enum (.fn 0) [{ number := 5, fields := [] }]) :: - (.apply 0 [(.adt 1)] (.option (.adt 1)) true [{ function := 5, captures := [], functionFallible := true }]) :: - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := .nat }, { pattern := (.bind (.generated .binding 3)), type := .nat }, { pattern := (.bind (.generated .binding 4)), type := .nat }, { pattern := (.bind (.generated .binding 5)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 1)) none (.call (.function 1) [(.construct (.adt 0 0) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1)), (.copy (.generated .binding 2)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4)), (.copy (.generated .binding 5))])] true))] (.matchOn (.move (.generated .holder 1)) [(.mk (.ok (.bind (.generated .binding 6))) (.mk [] (.succeed (.copy (.generated .binding 6))))), (.mk (.err .wild) (.mk [] (.succeed (.lit (.nat 9)))))]))) :: - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible (.result .nat (.pair .bool .bool))) (.mk [(.mk (.bind (.generated .binding 1)) (some (.pair (.adt 1) .bool)) (.call (.function 2) [(.clone (.generated .binding 0))] true)), (.mk (.bind (.generated .holder 3)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 2))]) none (.move (.generated .binding 1)))] (.move (.generated .part 2)))))] (.cond (.move (.generated .holder 3)) (.mk [] (.succeed (.call (.function 3) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 4)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 4))))] false))) (.mk [] (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))])))))) :: - (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible (.pair (.adt 1) .bool)) (.mk [] (.call (.function 4) [(.construct (.closure 0 5) []), (.lit (.nat 11)), (.call (.function 6) [(.move (.generated .binding 0))] false)] false))) :: - (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 1) }] (.result .nat (.pair .bool .bool)) (.mk [(.mk (.bind (.generated .holder 5)) none (.call (.function 7) [(.move (.generated .binding 0)), (.clone (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 5)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 6)) none (.call (.function 8) [(.move (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 6)) [(.mk .none (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))]))), (.mk (.some .wild) (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))])))]))) :: - (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := (.adt 1) }] (.fallible (.pair (.adt 1) .bool)) (.mk [(.mk (.bind (.generated .holder 7)) none (.copy (.generated .binding 1)))] (.cond (.isZero (.generated .holder 7)) (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 7))), (.mk (.bind (.generated .holder 9)) none (.block (.mk [(.mk (.bind (.generated .callee 8)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 8) [(.clone (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 9)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))]))))) :: - (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.fallible (.option (.adt 1))) (.mk [(.mk (.bind (.generated .holder 10)) none (.call (.function 9) [(.clone (.generated .binding 0))] true))] (.matchOn (.move (.generated .holder 10)) [(.mk .none (.mk [] (.succeed (.construct (.none (.adt 1)) [])))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.call (.function 10) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false)))]))) :: - (.function (.generated .function 6) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.move (.generated .binding 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0))]))) :: - (.function (.generated .function 7) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 1) }] (.option .nat) (.mk [(.mk (.bind (.generated .holder 11)) none (.call (.function 8) [(.move (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 11)) [(.mk .none (.mk [] (.construct (.none .nat) []))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.cond (.call (.function 11) [(.move (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.mk [] (.construct .some [(.copy (.generated .binding 2))])) (.mk [] (.construct (.none .nat) [])))))]))) :: - (.function (.generated .function 8) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.option .nat) (.mk [] (.construct .some [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 12))]) (.mk [] (.move (.generated .part 12))))])]))) :: - (.function (.generated .function 9) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.fallible (.option (.adt 2))) (.mk [(.mk (.bind (.generated .holder 16)) none (.block (.mk [(.mk (.bind (.generated .holder 14)) none (.block (.mk [(.mk (.bind (.generated .holder 13)) none (.cond (.call (.function 12) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 0) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [] (.cond (.call (.function 13) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 1) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.construct .some [(.move (.generated .binding 1))])))]))))] (.matchOn (.move (.generated .holder 14)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 15)) none (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 2) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 15)) [(.mk .none (.mk [] (.cond (.call (.function 15) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 3) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.construct .some [(.move (.generated .binding 3))])))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.construct .some [(.move (.generated .binding 2))])))]))))] (.matchOn (.move (.generated .holder 16)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 18)) none (.block (.mk [(.mk (.bind (.generated .holder 17)) none (.cond (.call (.function 16) [(.clone (.generated .binding 0))] true) (.mk [] (.construct .some [(.construct (.adt 2 4) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 17)) [(.mk .none (.mk [] (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 5) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.construct .some [(.move (.generated .binding 5))])))]))))] (.matchOn (.move (.generated .holder 18)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 19)) none (.cond (.call (.function 18) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 6) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 19)) [(.mk .none (.mk [] (.cond (.call (.function 19) [(.move (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.construct (.adt 2 7) [])]))) (.mk [] (.succeed (.construct (.none (.adt 2)) [])))))), (.mk (.some (.bind (.generated .binding 7))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 7))]))))]))), (.mk (.some (.bind (.generated .binding 6))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 6))]))))]))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 4))]))))]))) :: - (.function (.generated .function 10) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 2) }] (.fallible (.option (.adt 1))) (.mk [(.mk (.bind (.generated .holder 20)) none (.move (.generated .binding 1)))] (.matchOn (.move (.generated .holder 20)) [(.mk (.adt 2 0 []) (.mk [] (.succeed (.call (.function 20) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 1 []) (.mk [] (.succeed (.call (.function 21) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 2 []) (.mk [] (.succeed (.call (.function 22) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 3 []) (.mk [] (.succeed (.call (.function 23) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 4 []) (.mk [] (.call (.function 24) [(.move (.generated .binding 0))] false))), (.mk (.adt 2 5 []) (.mk [] (.succeed (.call (.function 25) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 6 []) (.mk [] (.succeed (.call (.function 26) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 7 []) (.mk [] (.call (.function 27) [(.move (.generated .binding 0))] false)))]))) :: - (.function (.generated .function 11) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .operand 21)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 22)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natLe) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false) (.mk [(.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 24)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 28)) none (.cond (.call (.function 28) [(.clone (.generated .binding 0))] false) (.mk [(.mk (.bind (.generated .operand 26)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 25))]) (.mk [] (.move (.generated .part 25))))])), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] false) (.mk [] (.cond (.call (.function 29) [(.clone (.generated .binding 0))] false) (.mk [] (.call (.function 30) [(.move (.generated .binding 0))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))))] (.call (.runtime .boolNot) [(.move (.generated .operand 28))] false)))) (.mk [] (.lit (.bool false)))))) :: - (.function (.generated .function 12) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .operand 30)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 29)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 29))))])), (.mk (.bind (.generated .operand 31)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] false) (.mk [] (.call (.function 29) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 32)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 32))))])] false)) (.mk [] (.lit (.bool false)))))) :: - (.function (.generated .function 13) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .operand 34)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 33)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 33))))])), (.mk (.bind (.generated .operand 35)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 34)), (.move (.generated .operand 35))] false) (.mk [] (.call (.function 30) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 36)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 36))))])] false)) (.mk [] (.lit (.bool false)))))) :: - (.function (.generated .function 14) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .operand 38)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 37)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 37))))])), (.mk (.bind (.generated .operand 39)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 38)), (.move (.generated .operand 39))] false) (.mk [] (.call (.function 31) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 40)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 40))))])] false)) (.mk [] (.lit (.bool false)))))) :: - (.function (.generated .function 15) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .operand 42)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 41)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 41))))])), (.mk (.bind (.generated .operand 43)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 42)), (.move (.generated .operand 43))] false) (.mk [] (.call (.function 32) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 44)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 44))))])] false)) (.mk [] (.lit (.bool false)))))) :: - (.function (.generated .function 16) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.fallible .bool) (.mk [(.mk (.bind (.generated .operand 46)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 45)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 45))))])), (.mk (.bind (.generated .operand 47)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 46)), (.move (.generated .operand 47))] false) (.mk [(.mk (.bind (.generated .operand 58)) none (.lit (.nat 2))), (.mk (.bind (.generated .operand 59)) none (.block (.mk [(.mk (.bind (.generated .operand 56)) none (.block (.mk [(.mk (.bind (.generated .operand 53)) none (.block (.mk [(.mk (.bind (.generated .operand 50)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 48)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 48))))])), (.mk (.bind (.generated .operand 51)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 49)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 49))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 50)), (.move (.generated .operand 51))] true)))), (.mk (.bind (.generated .operand 54)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 52)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 52))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] true)))), (.mk (.bind (.generated .operand 57)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 55)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 55))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 56)), (.move (.generated .operand 57))] true))))] (.succeed (.call (.runtime .natLe) [(.move (.generated .operand 58)), (.move (.generated .operand 59))] false))) (.mk [] (.succeed (.lit (.bool false))))))) :: - (.function (.generated .function 17) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .operand 61)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 60)), .wild, .wild]) (.mk [] (.move (.generated .part 60))))])), (.mk (.bind (.generated .operand 62)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 61)), (.move (.generated .operand 62))] false) (.mk [(.mk (.bind (.generated .operand 64)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 63)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 63))))])), (.mk (.bind (.generated .operand 65)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 64)), (.move (.generated .operand 65))] false) (.mk [(.mk (.bind (.generated .operand 69)) none (.block (.mk [(.mk (.bind (.generated .holder 68)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 67)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 67))))]))] (.matchOn (.move (.generated .holder 68)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 66))]) (.mk [] (.move (.generated .part 66))))])))), (.mk (.bind (.generated .operand 70)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 69)), (.move (.generated .operand 70))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))))) :: - (.function (.generated .function 18) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .operand 72)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 71)), .wild]) (.mk [] (.move (.generated .part 71))))])), (.mk (.bind (.generated .operand 73)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 72)), (.move (.generated .operand 73))] false) (.mk [(.mk (.bind (.generated .operand 75)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 74)), .wild, .wild]) (.mk [] (.move (.generated .part 74))))])), (.mk (.bind (.generated .operand 76)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 75)), (.move (.generated .operand 76))] false) (.mk [] (.call (.function 28) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 77)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 77))))])] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))))) :: - (.function (.generated .function 19) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .operand 79)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 78))]) (.mk [] (.move (.generated .part 78))))])), (.mk (.bind (.generated .operand 80)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 79)), (.move (.generated .operand 80))] false) (.mk [(.mk (.bind (.generated .operand 82)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))])), (.mk (.bind (.generated .operand 83)) none (.lit (.nat 0)))] (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 82)), (.move (.generated .operand 83))] false) (.mk [(.mk (.bind (.generated .operand 85)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 84)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 84))))])), (.mk (.bind (.generated .operand 86)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 85)), (.move (.generated .operand 86))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 88)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 87))]) (.mk [] (.move (.generated .part 87))))])), (.mk (.bind (.generated .operand 89)) none (.lit (.nat 1)))] (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 88)), (.move (.generated .operand 89))] false) (.mk [(.mk (.bind (.generated .operand 91)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 90)), .wild, .wild]) (.mk [] (.move (.generated .part 90))))])), (.mk (.bind (.generated .operand 92)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 94)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 93))]) (.mk [] (.move (.generated .part 93))))])), (.mk (.bind (.generated .operand 95)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 94)), (.move (.generated .operand 95))] false) (.mk [(.mk (.bind (.generated .operand 97)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 96)), .wild]) (.mk [] (.move (.generated .part 96))))])), (.mk (.bind (.generated .operand 98)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 97)), (.move (.generated .operand 98))] false)) (.mk [] (.lit (.bool false))))))))) (.mk [] (.lit (.bool false)))))) :: - (.function (.generated .function 20) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.option (.adt 1)) (.mk [] (.cond (.call (.function 12) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 33) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))))) :: - (.function (.generated .function 21) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.option (.adt 1)) (.mk [] (.cond (.call (.function 13) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 34) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))))) :: - (.function (.generated .function 22) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.option (.adt 1)) (.mk [] (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 35) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))))) :: - (.function (.generated .function 23) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.option (.adt 1)) (.mk [] (.cond (.call (.function 15) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 36) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))))) :: - (.function (.generated .function 24) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.fallible (.option (.adt 1))) (.mk [] (.cond (.call (.function 16) [(.clone (.generated .binding 0))] true) (.mk [] (.succeed (.construct .some [(.call (.function 37) [(.move (.generated .binding 0))] false)]))) (.mk [] (.succeed (.construct (.none (.adt 1)) [])))))) :: - (.function (.generated .function 25) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.option (.adt 1)) (.mk [] (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 38) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))))) :: - (.function (.generated .function 26) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.option (.adt 1)) (.mk [] (.cond (.call (.function 18) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 39) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))))) :: - (.function (.generated .function 27) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.fallible (.option (.adt 1))) (.mk [] (.cond (.call (.function 19) [(.clone (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.call (.function 40) [(.move (.generated .binding 0))] true)]))) (.mk [] (.succeed (.construct (.none (.adt 1)) [])))))) :: - (.function (.generated .function 28) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .operand 100)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 99)), .wild]) (.mk [] (.move (.generated .part 99))))])), (.mk (.bind (.generated .operand 101)) none (.lit (.nat 90)))] (.call (.runtime .natLt) [(.move (.generated .operand 100)), (.move (.generated .operand 101))] false))) :: - (.function (.generated .function 29) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .operand 103)) none (.lit (.nat 380))), (.mk (.bind (.generated .operand 104)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [(.bind (.generated .part 102)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 102))))]))] (.call (.runtime .natLt) [(.move (.generated .operand 103)), (.move (.generated .operand 104))] false))) :: - (.function (.generated .function 30) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .operand 106)) none (.lit (.nat 90))), (.mk (.bind (.generated .operand 107)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 105)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 105))))]))] (.call (.runtime .natLt) [(.move (.generated .operand 106)), (.move (.generated .operand 107))] false))) :: - (.function (.generated .function 31) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .operand 109)) none (.lit (.nat 20))), (.mk (.bind (.generated .operand 110)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 108)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 108))))]))] (.call (.runtime .natLt) [(.move (.generated .operand 109)), (.move (.generated .operand 110))] false))) :: - (.function (.generated .function 32) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .operand 112)) none (.lit (.nat 12))), (.mk (.bind (.generated .operand 113)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, (.bind (.generated .part 111)), .wild, .wild]) (.mk [] (.move (.generated .part 111))))]))] (.call (.runtime .natLt) [(.move (.generated .operand 112)), (.move (.generated .operand 113))] false))) :: - (.function (.generated .function 33) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 114)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 114))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 115)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 115))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 116)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 116))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 117)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 117))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 118)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 118))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 119)), .wild, .wild]) (.mk [] (.move (.generated .part 119))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 120)), .wild]) (.mk [] (.move (.generated .part 120))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 121))]) (.mk [] (.move (.generated .part 121))))])]))) :: - (.function (.generated .function 34) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 122)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 122))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 123)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 123))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 124)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 124))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 125)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 125))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 126)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 126))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 127)), .wild, .wild]) (.mk [] (.move (.generated .part 127))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 128)), .wild]) (.mk [] (.move (.generated .part 128))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 129))]) (.mk [] (.move (.generated .part 129))))])]))) :: - (.function (.generated .function 35) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 130)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 130))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 131)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 131))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 132)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 132))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 133)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 133))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 134)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 134))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 135)), .wild, .wild]) (.mk [] (.move (.generated .part 135))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 136)), .wild]) (.mk [] (.move (.generated .part 136))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 137))]) (.mk [] (.move (.generated .part 137))))])]))) :: - (.function (.generated .function 36) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 138)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 138))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 139)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 139))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 140)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 140))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 141)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 141))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 142)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 142))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 143)), .wild, .wild]) (.mk [] (.move (.generated .part 143))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 144)), .wild]) (.mk [] (.move (.generated .part 144))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 145))]) (.mk [] (.move (.generated .part 145))))])]))) :: - (.function (.generated .function 37) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 146)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 146))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 147)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 147))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 148)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 148))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 149)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 149))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 150)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 150))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 151)), .wild, .wild]) (.mk [] (.move (.generated .part 151))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 152)), .wild]) (.mk [] (.move (.generated .part 152))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 153))]) (.mk [] (.move (.generated .part 153))))])]))) :: - (.function (.generated .function 38) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 154)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 154))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 155)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 155))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 156)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 156))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 157)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 157))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 158)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 158))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 159)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 159))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 160)), .wild]) (.mk [] (.move (.generated .part 160))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 161))]) (.mk [] (.move (.generated .part 161))))])]))) :: - (.function (.generated .function 39) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 162)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 162))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 163)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 163))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 164)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 164))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 165)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 165))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 166)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 166))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 167)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 167))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 168)), .wild, .wild]) (.mk [] (.move (.generated .part 168))))]), (.lit (.nat 1)), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 169))]) (.mk [] (.move (.generated .part 169))))])]))) :: - (.function (.generated .function 40) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.fallible (.adt 1)) (.mk [] (.succeed (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 170)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 170))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 171)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 171))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 172)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 172))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 173)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 173))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 174)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 174))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 175)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 175))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 176)), .wild, .wild]) (.mk [] (.move (.generated .part 176))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 177)), .wild]) (.mk [] (.move (.generated .part 177))))]), (.block (.mk [(.mk (.bind (.generated .operand 179)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 178))]) (.mk [] (.move (.generated .part 178))))])), (.mk (.bind (.generated .operand 180)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 179)), (.move (.generated .operand 180))] true)))])))) :: - []) } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [(([(.adt 1)], (.option (.adt 1))), true)] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.call (.function 1) [(.construct (.adt 0 0) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1)), (.copy (.generated .binding 2)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4)), (.copy (.generated .binding 5))])] true))], (.matchOn (.move (.generated .holder 1)) [(.mk (.ok (.bind (.generated .binding 6))) (.mk [] (.succeed (.copy (.generated .binding 6))))), (.mk (.err .wild) (.mk [] (.succeed (.lit (.nat 9)))))]), [(5, .nat, (some 5)), (4, .nat, (some 4)), (3, .nat, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.matchArms (st := (.result .nat (.pair .bool .bool))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))))))) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(6, .nat, (some 6)), (5, .nat, (some 5)), (4, .nat, (some 4)), (3, .nat, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, .nat, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.copy (.generated .binding 6)))) (Corr.mCons (Γ' := [(7, (.pair .bool .bool), none), (5, .nat, (some 5)), (4, .nat, (some 4)), (3, .nat, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, .nat, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.lit (.nat 9)))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl)))) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some (.pair (.adt 1) .bool)) (.call (.function 2) [(.clone (.generated .binding 0))] true)), (.mk (.bind (.generated .holder 3)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 2))]) none (.move (.generated .binding 1)))] (.move (.generated .part 2)))))], (.cond (.move (.generated .holder 3)) (.mk [] (.succeed (.call (.function 3) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 4)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 4))))] false))) (.mk [] (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))])))), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.matchBool (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 2))]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 2))) (Corr.second (ta := (.adt 1)) (tb := .bool) (Corr.var rfl rfl) rfl)) rfl rfl (Corr.kIf (la := []) (ta := (.succeed (.call (.function 3) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 4)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 4))))] false))) (lb := []) (tb := (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))) (Corr.fOfB (Corr.callOps (ts := [(.adt 0), (.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 4)), .wild]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 4))) (Corr.first (ta := (.adt 1)) (tb := .bool) (Corr.var rfl rfl) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)))))⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 4) [(.construct (.closure 0 5) []), (.lit (.nat 11)), (.call (.function 6) [(.move (.generated .binding 0))] false)] false), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.callF (ts := [(.fn [(.adt 1)] (.option (.adt 1))), .nat, (.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl)⟩⟩ - -theorem fun3 : FunOK program krate flags 3 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 5)) none (.call (.function 7) [(.move (.generated .binding 0)), (.clone (.generated .binding 1))] false))], (.matchOn (.move (.generated .holder 5)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 6)) none (.call (.function 8) [(.move (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 6)) [(.mk .none (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))]))), (.mk (.some .wild) (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))])))]), [(1, (.adt 1), (some 1)), (0, (.adt 0), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0), (.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.adt 1), (some 1)), (0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 6)) none (.call (.function 8) [(.move (.generated .binding 1))] false))]) (tail := (.matchOn (.move (.generated .holder 6)) [(.mk .none (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))]))), (.mk (.some .wild) (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))])) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, (.adt 1), (some 1)), (0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.adt 1), (some 1)), (0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))])) (Corr.mCons (Γ' := [(3, .nat, none), (1, (.adt 1), (some 1)), (0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)) rfl rfl rfl)) rfl rfl rfl)⟩⟩ - -theorem fun4 : FunOK program krate flags 4 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 7)) none (.copy (.generated .binding 1)))], (.cond (.isZero (.generated .holder 7)) (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 7))), (.mk (.bind (.generated .holder 9)) none (.block (.mk [(.mk (.bind (.generated .callee 8)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 8) [(.clone (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 9)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))]))), [(2, (.adt 1), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.adt 1)] (.option (.adt 1))), (some 0))], rfl, rfl, - (Corr.matchNat (sl := (some 3)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (lb := [(.mk (.bind (.generated .holder 9)) none (.block (.mk [(.mk (.bind (.generated .callee 8)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 8) [(.clone (.generated .binding 2))] true))))]) (tb := (.matchOn (.move (.generated .holder 9)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))])) (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))))) (Corr.matchArms (st := (.option (.adt 1))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 8)) (some (.fn 0)) (.clone (.generated .binding 0)))]) (tail := (.apply (.generated .callee 8) [(.clone (.generated .binding 2))] true)) (Corr.apply (ps := [(.adt 1)]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (2, (.adt 1), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.adt 1)] (.option (.adt 1))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true))))) (Corr.mCons (Γ' := [(4, (.adt 1), (some 4)), (3, .nat, (some 3)), (2, (.adt 1), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.adt 1)] (.option (.adt 1))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.adt 1)] (.option (.adt 1))), .nat, (.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))))))) rfl rfl rfl)))⟩⟩ - -theorem fun5 : FunOK program krate flags 5 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 10)) none (.call (.function 9) [(.clone (.generated .binding 0))] true))], (.matchOn (.move (.generated .holder 10)) [(.mk .none (.mk [] (.succeed (.construct (.none (.adt 1)) [])))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.call (.function 10) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false)))]), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct (.none (.adt 1)) []))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 10) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.adt 1), (.adt 2)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl)⟩⟩ - -theorem fun6 : FunOK program krate flags 6 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.move (.generated .binding 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0))]), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))))))))) rfl)⟩⟩ - -theorem fun7 : FunOK program krate flags 7 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 11)) none (.call (.function 8) [(.move (.generated .binding 1))] false))], (.matchOn (.move (.generated .holder 11)) [(.mk .none (.mk [] (.construct (.none .nat) []))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.cond (.call (.function 11) [(.move (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.mk [] (.construct .some [(.copy (.generated .binding 2))])) (.mk [] (.construct (.none .nat) [])))))]), [(1, (.adt 1), (some 1)), (0, (.adt 0), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.adt 1), (some 1)), (0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none .nat) [])) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, (.adt 1), (some 1)), (0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 11) [(.move (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.mk [] (.construct .some [(.copy (.generated .binding 2))])) (.mk [] (.construct (.none .nat) [])))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 11) [(.move (.generated .binding 0)), (.copy (.generated .binding 2))] false)) (lk := []) (Corr.callOps (ts := [(.adt 0), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.copy (.generated .binding 2))])) (lb := []) (tb := (.construct (.none .nat) [])) (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun8 : FunOK program krate flags 8 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct .some [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 12))]) (.mk [] (.move (.generated .part 12))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 12))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)⟩⟩ - -theorem fun9 : FunOK program krate flags 9 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 16)) none (.block (.mk [(.mk (.bind (.generated .holder 14)) none (.block (.mk [(.mk (.bind (.generated .holder 13)) none (.cond (.call (.function 12) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 0) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [] (.cond (.call (.function 13) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 1) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.construct .some [(.move (.generated .binding 1))])))]))))] (.matchOn (.move (.generated .holder 14)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 15)) none (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 2) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 15)) [(.mk .none (.mk [] (.cond (.call (.function 15) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 3) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.construct .some [(.move (.generated .binding 3))])))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.construct .some [(.move (.generated .binding 2))])))]))))], (.matchOn (.move (.generated .holder 16)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 18)) none (.block (.mk [(.mk (.bind (.generated .holder 17)) none (.cond (.call (.function 16) [(.clone (.generated .binding 0))] true) (.mk [] (.construct .some [(.construct (.adt 2 4) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 17)) [(.mk .none (.mk [] (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 5) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.construct .some [(.move (.generated .binding 5))])))]))))] (.matchOn (.move (.generated .holder 18)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 19)) none (.cond (.call (.function 18) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 6) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 19)) [(.mk .none (.mk [] (.cond (.call (.function 19) [(.move (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.construct (.adt 2 7) [])]))) (.mk [] (.succeed (.construct (.none (.adt 2)) [])))))), (.mk (.some (.bind (.generated .binding 7))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 7))]))))]))), (.mk (.some (.bind (.generated .binding 6))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 6))]))))]))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 4))]))))]), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 14)) none (.block (.mk [(.mk (.bind (.generated .holder 13)) none (.cond (.call (.function 12) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 0) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [] (.cond (.call (.function 13) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 1) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.construct .some [(.move (.generated .binding 1))])))]))))]) (tail := (.matchOn (.move (.generated .holder 14)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 15)) none (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 2) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 15)) [(.mk .none (.mk [] (.cond (.call (.function 15) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 3) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.construct .some [(.move (.generated .binding 3))])))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.construct .some [(.move (.generated .binding 2))])))])) (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 13)) none (.cond (.call (.function 12) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 0) [])])) (.mk [] (.construct (.none (.adt 2)) []))))]) (tail := (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [] (.cond (.call (.function 13) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 1) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.construct .some [(.move (.generated .binding 1))])))])) (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.cond (lc := []) (ce := (.call (.function 12) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 2 0) [])])) (lb := []) (tb := (.construct (.none (.adt 2)) [])) (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 13) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 1) [])])) (.mk [] (.construct (.none (.adt 2)) [])))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.move (.generated .binding 1))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 13) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 2 1) [])])) (lb := []) (tb := (.construct (.none (.adt 2)) [])) (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) rfl rfl rfl)) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 15)) none (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 2) [])])) (.mk [] (.construct (.none (.adt 2)) []))))]) (tail := (.matchOn (.move (.generated .holder 15)) [(.mk .none (.mk [] (.cond (.call (.function 15) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 3) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.construct .some [(.move (.generated .binding 3))])))])) (Corr.mCons (Γ' := [(2, (.adt 2), (some 2)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.move (.generated .binding 2))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.cond (lc := []) (ce := (.call (.function 14) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 2 2) [])])) (lb := []) (tb := (.construct (.none (.adt 2)) [])) (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 15) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 3) [])])) (.mk [] (.construct (.none (.adt 2)) [])))) (Corr.mCons (Γ' := [(3, (.adt 2), (some 3)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.move (.generated .binding 3))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 15) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 2 3) [])])) (lb := []) (tb := (.construct (.none (.adt 2)) [])) (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) rfl rfl rfl)) rfl rfl rfl)) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 18)) none (.block (.mk [(.mk (.bind (.generated .holder 17)) none (.cond (.call (.function 16) [(.clone (.generated .binding 0))] true) (.mk [] (.construct .some [(.construct (.adt 2 4) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 17)) [(.mk .none (.mk [] (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 5) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.construct .some [(.move (.generated .binding 5))])))]))))]) (tail := (.matchOn (.move (.generated .holder 18)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 19)) none (.cond (.call (.function 18) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 6) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 19)) [(.mk .none (.mk [] (.cond (.call (.function 19) [(.move (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.construct (.adt 2 7) [])]))) (.mk [] (.succeed (.construct (.none (.adt 2)) [])))))), (.mk (.some (.bind (.generated .binding 7))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 7))]))))]))), (.mk (.some (.bind (.generated .binding 6))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 6))]))))])) (Corr.mCons (Γ' := [(4, (.adt 2), (some 4)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct .some [(.move (.generated .binding 4))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 17)) none (.cond (.call (.function 16) [(.clone (.generated .binding 0))] true) (.mk [] (.construct .some [(.construct (.adt 2 4) [])])) (.mk [] (.construct (.none (.adt 2)) []))))]) (tail := (.matchOn (.move (.generated .holder 17)) [(.mk .none (.mk [] (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 5) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.construct .some [(.move (.generated .binding 5))])))])) (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.cond (lc := []) (ce := (.call (.function 16) [(.clone (.generated .binding 0))] true)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 2 4) [])])) (lb := []) (tb := (.construct (.none (.adt 2)) [])) (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 5) [])])) (.mk [] (.construct (.none (.adt 2)) [])))) (Corr.mCons (Γ' := [(5, (.adt 2), (some 5)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.move (.generated .binding 5))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 17) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 2 5) [])])) (lb := []) (tb := (.construct (.none (.adt 2)) [])) (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) rfl rfl rfl)) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 19)) none (.cond (.call (.function 18) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 6) [])])) (.mk [] (.construct (.none (.adt 2)) []))))]) (tail := (.matchOn (.move (.generated .holder 19)) [(.mk .none (.mk [] (.cond (.call (.function 19) [(.move (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.construct (.adt 2 7) [])]))) (.mk [] (.succeed (.construct (.none (.adt 2)) [])))))), (.mk (.some (.bind (.generated .binding 7))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 7))]))))])) (Corr.mCons (Γ' := [(6, (.adt 2), (some 6)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct .some [(.move (.generated .binding 6))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.cond (lc := []) (ce := (.call (.function 18) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 2 6) [])])) (lb := []) (tb := (.construct (.none (.adt 2)) [])) (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 19) [(.move (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.construct (.adt 2 7) [])]))) (.mk [] (.succeed (.construct (.none (.adt 2)) []))))) (Corr.mCons (Γ' := [(7, (.adt 2), (some 7)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct .some [(.move (.generated .binding 7))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 19) [(.move (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.construct (.adt 2 7) [])]))) (lb := []) (tb := (.succeed (.construct (.none (.adt 2)) []))) (Corr.fOfB (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))) rfl rfl rfl)) rfl rfl rfl)) rfl rfl rfl)⟩⟩ - -theorem fun10 : FunOK program krate flags 10 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 20)) none (.move (.generated .binding 1)))], (.matchOn (.move (.generated .holder 20)) [(.mk (.adt 2 0 []) (.mk [] (.succeed (.call (.function 20) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 1 []) (.mk [] (.succeed (.call (.function 21) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 2 []) (.mk [] (.succeed (.call (.function 22) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 3 []) (.mk [] (.succeed (.call (.function 23) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 4 []) (.mk [] (.call (.function 24) [(.move (.generated .binding 0))] false))), (.mk (.adt 2 5 []) (.mk [] (.succeed (.call (.function 25) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 6 []) (.mk [] (.succeed (.call (.function 26) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 7 []) (.mk [] (.call (.function 27) [(.move (.generated .binding 0))] false)))]), [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.adt 2)) (U := []) (view := false) (idx := [0, 1, 2, 3, 4, 5, 6, 7]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.call (.function 20) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.call (.function 21) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.succeed (.call (.function 22) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 3) (loads := []) (lets := []) (tail := (.succeed (.call (.function 23) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 4) (loads := []) (lets := []) (tail := (.call (.function 24) [(.move (.generated .binding 0))] false)) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 5) (loads := []) (lets := []) (tail := (.succeed (.call (.function 25) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 6) (loads := []) (lets := []) (tail := (.succeed (.call (.function 26) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 7) (loads := []) (lets := []) (tail := (.call (.function 27) [(.move (.generated .binding 0))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.callF (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl)⟩⟩ - -theorem fun11 : FunOK program krate flags 11 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 21)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 22)) none (.lit (.nat 3)))], (.cond (.call (.runtime .natLe) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false) (.mk [(.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 24)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 28)) none (.cond (.call (.function 28) [(.clone (.generated .binding 0))] false) (.mk [(.mk (.bind (.generated .operand 26)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 25))]) (.mk [] (.move (.generated .part 25))))])), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] false) (.mk [] (.cond (.call (.function 29) [(.clone (.generated .binding 0))] false) (.mk [] (.call (.function 30) [(.move (.generated .binding 0))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))))] (.call (.runtime .boolNot) [(.move (.generated .operand 28))] false)))) (.mk [] (.lit (.bool false)))), [(1, .nat, (some 1)), (0, (.adt 0), (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 21)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 22)) none (.lit (.nat 3)))]) (ce := (.call (.runtime .natLe) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 24)) none (.lit (.nat 3)))]) (ta := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 28)) none (.cond (.call (.function 28) [(.clone (.generated .binding 0))] false) (.mk [(.mk (.bind (.generated .operand 26)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 25))]) (.mk [] (.move (.generated .part 25))))])), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] false) (.mk [] (.cond (.call (.function 29) [(.clone (.generated .binding 0))] false) (.mk [] (.call (.function 30) [(.move (.generated .binding 0))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))))] (.call (.runtime .boolNot) [(.move (.generated .operand 28))] false)))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 24)) none (.lit (.nat 3)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 28)) none (.cond (.call (.function 28) [(.clone (.generated .binding 0))] false) (.mk [(.mk (.bind (.generated .operand 26)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 25))]) (.mk [] (.move (.generated .part 25))))])), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] false) (.mk [] (.cond (.call (.function 29) [(.clone (.generated .binding 0))] false) (.mk [] (.call (.function 30) [(.move (.generated .binding 0))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))))]) (tb := (.call (.runtime .boolNot) [(.move (.generated .operand 28))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.prim (ts := [.bool]) (Corr.opsCons (Corr.eOfBNil (Corr.cond (lc := []) (ce := (.call (.function 28) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 26)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 25))]) (.mk [] (.move (.generated .part 25))))])), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))]) (ta := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] false) (.mk [] (.cond (.call (.function 29) [(.clone (.generated .binding 0))] false) (.mk [] (.call (.function 30) [(.move (.generated .binding 0))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 26)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 25))]) (.mk [] (.move (.generated .part 25))))])), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 25))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 29) [(.clone (.generated .binding 0))] false) (.mk [] (.call (.function 30) [(.move (.generated .binding 0))] false)) (.mk [] (.lit (.bool false))))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := []) (ce := (.call (.function 29) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 30) [(.move (.generated .binding 0))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.bOfE (Corr.buildConst rfl))))) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl))) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ - -theorem fun12 : FunOK program krate flags 12 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 30)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 29)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 29))))])), (.mk (.bind (.generated .operand 31)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] false) (.mk [] (.call (.function 29) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 32)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 32))))])] false)) (.mk [] (.lit (.bool false)))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 30)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 29)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 29))))])), (.mk (.bind (.generated .operand 31)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 29))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 29) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 32)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 32))))])] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 32))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ - -theorem fun13 : FunOK program krate flags 13 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 34)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 33)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 33))))])), (.mk (.bind (.generated .operand 35)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 34)), (.move (.generated .operand 35))] false) (.mk [] (.call (.function 30) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 36)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 36))))])] false)) (.mk [] (.lit (.bool false)))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 34)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 33)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 33))))])), (.mk (.bind (.generated .operand 35)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 34)), (.move (.generated .operand 35))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 33))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 30) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 36)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 36))))])] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 36))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ - -theorem fun14 : FunOK program krate flags 14 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 38)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 37)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 37))))])), (.mk (.bind (.generated .operand 39)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 38)), (.move (.generated .operand 39))] false) (.mk [] (.call (.function 31) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 40)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 40))))])] false)) (.mk [] (.lit (.bool false)))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 38)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 37)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 37))))])), (.mk (.bind (.generated .operand 39)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 38)), (.move (.generated .operand 39))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 37))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 31) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 40)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 40))))])] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 40))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ - -theorem fun15 : FunOK program krate flags 15 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 42)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 41)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 41))))])), (.mk (.bind (.generated .operand 43)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 42)), (.move (.generated .operand 43))] false) (.mk [] (.call (.function 32) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 44)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 44))))])] false)) (.mk [] (.lit (.bool false)))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 42)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 41)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 41))))])), (.mk (.bind (.generated .operand 43)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 42)), (.move (.generated .operand 43))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 41))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 32) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 44)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 44))))])] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 44))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ - -theorem fun16 : FunOK program krate flags 16 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 46)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 45)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 45))))])), (.mk (.bind (.generated .operand 47)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 46)), (.move (.generated .operand 47))] false) (.mk [(.mk (.bind (.generated .operand 58)) none (.lit (.nat 2))), (.mk (.bind (.generated .operand 59)) none (.block (.mk [(.mk (.bind (.generated .operand 56)) none (.block (.mk [(.mk (.bind (.generated .operand 53)) none (.block (.mk [(.mk (.bind (.generated .operand 50)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 48)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 48))))])), (.mk (.bind (.generated .operand 51)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 49)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 49))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 50)), (.move (.generated .operand 51))] true)))), (.mk (.bind (.generated .operand 54)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 52)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 52))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] true)))), (.mk (.bind (.generated .operand 57)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 55)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 55))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 56)), (.move (.generated .operand 57))] true))))] (.succeed (.call (.runtime .natLe) [(.move (.generated .operand 58)), (.move (.generated .operand 59))] false))) (.mk [] (.succeed (.lit (.bool false))))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 46)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 45)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 45))))])), (.mk (.bind (.generated .operand 47)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 46)), (.move (.generated .operand 47))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 45))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 58)) none (.lit (.nat 2))), (.mk (.bind (.generated .operand 59)) none (.block (.mk [(.mk (.bind (.generated .operand 56)) none (.block (.mk [(.mk (.bind (.generated .operand 53)) none (.block (.mk [(.mk (.bind (.generated .operand 50)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 48)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 48))))])), (.mk (.bind (.generated .operand 51)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 49)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 49))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 50)), (.move (.generated .operand 51))] true)))), (.mk (.bind (.generated .operand 54)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 52)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 52))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] true)))), (.mk (.bind (.generated .operand 57)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 55)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 55))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 56)), (.move (.generated .operand 57))] true))))]) (ta := (.succeed (.call (.runtime .natLe) [(.move (.generated .operand 58)), (.move (.generated .operand 59))] false))) (lb := []) (tb := (.succeed (.lit (.bool false)))) (Corr.fOfB (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 56)) none (.block (.mk [(.mk (.bind (.generated .operand 53)) none (.block (.mk [(.mk (.bind (.generated .operand 50)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 48)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 48))))])), (.mk (.bind (.generated .operand 51)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 49)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 49))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 50)), (.move (.generated .operand 51))] true)))), (.mk (.bind (.generated .operand 54)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 52)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 52))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] true)))), (.mk (.bind (.generated .operand 57)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 55)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 55))))]))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 56)), (.move (.generated .operand 57))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 53)) none (.block (.mk [(.mk (.bind (.generated .operand 50)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 48)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 48))))])), (.mk (.bind (.generated .operand 51)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 49)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 49))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 50)), (.move (.generated .operand 51))] true)))), (.mk (.bind (.generated .operand 54)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 52)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 52))))]))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 50)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 48)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 48))))])), (.mk (.bind (.generated .operand 51)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 49)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 49))))]))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 50)), (.move (.generated .operand 51))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 48))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 49))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 52))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 55))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.fOfB (Corr.bOfE (Corr.buildConst rfl)))))⟩⟩ - -theorem fun17 : FunOK program krate flags 17 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 61)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 60)), .wild, .wild]) (.mk [] (.move (.generated .part 60))))])), (.mk (.bind (.generated .operand 62)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 61)), (.move (.generated .operand 62))] false) (.mk [(.mk (.bind (.generated .operand 64)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 63)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 63))))])), (.mk (.bind (.generated .operand 65)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 64)), (.move (.generated .operand 65))] false) (.mk [(.mk (.bind (.generated .operand 69)) none (.block (.mk [(.mk (.bind (.generated .holder 68)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 67)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 67))))]))] (.matchOn (.move (.generated .holder 68)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 66))]) (.mk [] (.move (.generated .part 66))))])))), (.mk (.bind (.generated .operand 70)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 69)), (.move (.generated .operand 70))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 61)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 60)), .wild, .wild]) (.mk [] (.move (.generated .part 60))))])), (.mk (.bind (.generated .operand 62)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 61)), (.move (.generated .operand 62))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 60))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 64)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 63)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 63))))])), (.mk (.bind (.generated .operand 65)) none (.lit (.nat 1)))]) (ta := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 64)), (.move (.generated .operand 65))] false) (.mk [(.mk (.bind (.generated .operand 69)) none (.block (.mk [(.mk (.bind (.generated .holder 68)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 67)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 67))))]))] (.matchOn (.move (.generated .holder 68)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 66))]) (.mk [] (.move (.generated .part 66))))])))), (.mk (.bind (.generated .operand 70)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 69)), (.move (.generated .operand 70))] false)) (.mk [] (.lit (.bool false))))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 64)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 63)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 63))))])), (.mk (.bind (.generated .operand 65)) none (.lit (.nat 1)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 64)), (.move (.generated .operand 65))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 63))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 69)) none (.block (.mk [(.mk (.bind (.generated .holder 68)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 67)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 67))))]))] (.matchOn (.move (.generated .holder 68)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 66))]) (.mk [] (.move (.generated .part 66))))])))), (.mk (.bind (.generated .operand 70)) none (.lit (.nat 1)))]) (ta := (.call (.runtime .natEq) [(.move (.generated .operand 69)), (.move (.generated .operand 70))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 68)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 67)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 67))))]))]) (tail := (.matchOn (.move (.generated .holder 68)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 66))]) (.mk [] (.move (.generated .part 66))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 66))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 67))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ - -theorem fun18 : FunOK program krate flags 18 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 72)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 71)), .wild]) (.mk [] (.move (.generated .part 71))))])), (.mk (.bind (.generated .operand 73)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 72)), (.move (.generated .operand 73))] false) (.mk [(.mk (.bind (.generated .operand 75)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 74)), .wild, .wild]) (.mk [] (.move (.generated .part 74))))])), (.mk (.bind (.generated .operand 76)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 75)), (.move (.generated .operand 76))] false) (.mk [] (.call (.function 28) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 77)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 77))))])] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 72)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 71)), .wild]) (.mk [] (.move (.generated .part 71))))])), (.mk (.bind (.generated .operand 73)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 72)), (.move (.generated .operand 73))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 71))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 75)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 74)), .wild, .wild]) (.mk [] (.move (.generated .part 74))))])), (.mk (.bind (.generated .operand 76)) none (.lit (.nat 1)))]) (ta := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 75)), (.move (.generated .operand 76))] false) (.mk [] (.call (.function 28) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 77)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 77))))])] false)) (.mk [] (.lit (.bool false))))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 75)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 74)), .wild, .wild]) (.mk [] (.move (.generated .part 74))))])), (.mk (.bind (.generated .operand 76)) none (.lit (.nat 1)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 75)), (.move (.generated .operand 76))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 74))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 28) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 77)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 77))))])] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 77))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ - -theorem fun19 : FunOK program krate flags 19 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 79)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 78))]) (.mk [] (.move (.generated .part 78))))])), (.mk (.bind (.generated .operand 80)) none (.lit (.nat 3)))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 79)), (.move (.generated .operand 80))] false) (.mk [(.mk (.bind (.generated .operand 82)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))])), (.mk (.bind (.generated .operand 83)) none (.lit (.nat 0)))] (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 82)), (.move (.generated .operand 83))] false) (.mk [(.mk (.bind (.generated .operand 85)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 84)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 84))))])), (.mk (.bind (.generated .operand 86)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 85)), (.move (.generated .operand 86))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 88)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 87))]) (.mk [] (.move (.generated .part 87))))])), (.mk (.bind (.generated .operand 89)) none (.lit (.nat 1)))] (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 88)), (.move (.generated .operand 89))] false) (.mk [(.mk (.bind (.generated .operand 91)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 90)), .wild, .wild]) (.mk [] (.move (.generated .part 90))))])), (.mk (.bind (.generated .operand 92)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 94)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 93))]) (.mk [] (.move (.generated .part 93))))])), (.mk (.bind (.generated .operand 95)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 94)), (.move (.generated .operand 95))] false) (.mk [(.mk (.bind (.generated .operand 97)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 96)), .wild]) (.mk [] (.move (.generated .part 96))))])), (.mk (.bind (.generated .operand 98)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 97)), (.move (.generated .operand 98))] false)) (.mk [] (.lit (.bool false))))))))) (.mk [] (.lit (.bool false)))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 79)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 78))]) (.mk [] (.move (.generated .part 78))))])), (.mk (.bind (.generated .operand 80)) none (.lit (.nat 3)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 79)), (.move (.generated .operand 80))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 78))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 82)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))])), (.mk (.bind (.generated .operand 83)) none (.lit (.nat 0)))]) (ta := (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 82)), (.move (.generated .operand 83))] false) (.mk [(.mk (.bind (.generated .operand 85)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 84)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 84))))])), (.mk (.bind (.generated .operand 86)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 85)), (.move (.generated .operand 86))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 88)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 87))]) (.mk [] (.move (.generated .part 87))))])), (.mk (.bind (.generated .operand 89)) none (.lit (.nat 1)))] (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 88)), (.move (.generated .operand 89))] false) (.mk [(.mk (.bind (.generated .operand 91)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 90)), .wild, .wild]) (.mk [] (.move (.generated .part 90))))])), (.mk (.bind (.generated .operand 92)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 94)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 93))]) (.mk [] (.move (.generated .part 93))))])), (.mk (.bind (.generated .operand 95)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 94)), (.move (.generated .operand 95))] false) (.mk [(.mk (.bind (.generated .operand 97)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 96)), .wild]) (.mk [] (.move (.generated .part 96))))])), (.mk (.bind (.generated .operand 98)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 97)), (.move (.generated .operand 98))] false)) (.mk [] (.lit (.bool false))))))))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 82)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))])), (.mk (.bind (.generated .operand 83)) none (.lit (.nat 0)))]) (ce := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 82)), (.move (.generated .operand 83))] false) (.mk [(.mk (.bind (.generated .operand 85)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 84)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 84))))])), (.mk (.bind (.generated .operand 86)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 85)), (.move (.generated .operand 86))] false)) (.mk [] (.lit (.bool false))))) (lk := []) (Corr.cond (lc := [(.mk (.bind (.generated .operand 82)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))])), (.mk (.bind (.generated .operand 83)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 82)), (.move (.generated .operand 83))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 81))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 85)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 84)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 84))))])), (.mk (.bind (.generated .operand 86)) none (.lit (.nat 1)))]) (ta := (.call (.runtime .natEq) [(.move (.generated .operand 85)), (.move (.generated .operand 86))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 84))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 88)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 87))]) (.mk [] (.move (.generated .part 87))))])), (.mk (.bind (.generated .operand 89)) none (.lit (.nat 1)))]) (tb := (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 88)), (.move (.generated .operand 89))] false) (.mk [(.mk (.bind (.generated .operand 91)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 90)), .wild, .wild]) (.mk [] (.move (.generated .part 90))))])), (.mk (.bind (.generated .operand 92)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 94)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 93))]) (.mk [] (.move (.generated .part 93))))])), (.mk (.bind (.generated .operand 95)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 94)), (.move (.generated .operand 95))] false) (.mk [(.mk (.bind (.generated .operand 97)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 96)), .wild]) (.mk [] (.move (.generated .part 96))))])), (.mk (.bind (.generated .operand 98)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 97)), (.move (.generated .operand 98))] false)) (.mk [] (.lit (.bool false))))))) (Corr.bOfE (Corr.buildConst rfl)) (Corr.cond (lc := [(.mk (.bind (.generated .operand 88)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 87))]) (.mk [] (.move (.generated .part 87))))])), (.mk (.bind (.generated .operand 89)) none (.lit (.nat 1)))]) (ce := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 88)), (.move (.generated .operand 89))] false) (.mk [(.mk (.bind (.generated .operand 91)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 90)), .wild, .wild]) (.mk [] (.move (.generated .part 90))))])), (.mk (.bind (.generated .operand 92)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] false)) (.mk [] (.lit (.bool false))))) (lk := []) (Corr.cond (lc := [(.mk (.bind (.generated .operand 88)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 87))]) (.mk [] (.move (.generated .part 87))))])), (.mk (.bind (.generated .operand 89)) none (.lit (.nat 1)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 88)), (.move (.generated .operand 89))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 87))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 91)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 90)), .wild, .wild]) (.mk [] (.move (.generated .part 90))))])), (.mk (.bind (.generated .operand 92)) none (.lit (.nat 1)))]) (ta := (.call (.runtime .natEq) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 90))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 94)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 93))]) (.mk [] (.move (.generated .part 93))))])), (.mk (.bind (.generated .operand 95)) none (.lit (.nat 2)))]) (tb := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 94)), (.move (.generated .operand 95))] false) (.mk [(.mk (.bind (.generated .operand 97)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 96)), .wild]) (.mk [] (.move (.generated .part 96))))])), (.mk (.bind (.generated .operand 98)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 97)), (.move (.generated .operand 98))] false)) (.mk [] (.lit (.bool false))))) (Corr.bOfE (Corr.buildConst rfl)) (Corr.cond (lc := [(.mk (.bind (.generated .operand 94)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 93))]) (.mk [] (.move (.generated .part 93))))])), (.mk (.bind (.generated .operand 95)) none (.lit (.nat 2)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 94)), (.move (.generated .operand 95))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 93))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 97)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 96)), .wild]) (.mk [] (.move (.generated .part 96))))])), (.mk (.bind (.generated .operand 98)) none (.lit (.nat 1)))]) (ta := (.call (.runtime .natEq) [(.move (.generated .operand 97)), (.move (.generated .operand 98))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 96))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))))))) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ - -theorem fun20 : FunOK program krate flags 20 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 12) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 33) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 12) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 33) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ - -theorem fun21 : FunOK program krate flags 21 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 13) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 34) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 13) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 34) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ - -theorem fun22 : FunOK program krate flags 22 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 35) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 14) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 35) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ - -theorem fun23 : FunOK program krate flags 23 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 15) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 36) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 15) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 36) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ - -theorem fun24 : FunOK program krate flags 24 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 16) [(.clone (.generated .binding 0))] true) (.mk [] (.succeed (.construct .some [(.call (.function 37) [(.move (.generated .binding 0))] false)]))) (.mk [] (.succeed (.construct (.none (.adt 1)) [])))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 16) [(.clone (.generated .binding 0))] true)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.call (.function 37) [(.move (.generated .binding 0))] false)]))) (lb := []) (tb := (.succeed (.construct (.none (.adt 1)) []))) (Corr.fOfB (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))⟩⟩ - -theorem fun25 : FunOK program krate flags 25 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 38) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 17) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 38) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ - -theorem fun26 : FunOK program krate flags 26 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 18) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 39) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 18) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 39) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ - -theorem fun27 : FunOK program krate flags 27 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 19) [(.clone (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.call (.function 40) [(.move (.generated .binding 0))] true)]))) (.mk [] (.succeed (.construct (.none (.adt 1)) [])))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 19) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.call (.function 40) [(.move (.generated .binding 0))] true)]))) (lb := []) (tb := (.succeed (.construct (.none (.adt 1)) []))) (Corr.fOfB (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))⟩⟩ - -theorem fun28 : FunOK program krate flags 28 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 100)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 99)), .wild]) (.mk [] (.move (.generated .part 99))))])), (.mk (.bind (.generated .operand 101)) none (.lit (.nat 90)))], (.call (.runtime .natLt) [(.move (.generated .operand 100)), (.move (.generated .operand 101))] false), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 99))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun29 : FunOK program krate flags 29 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 103)) none (.lit (.nat 380))), (.mk (.bind (.generated .operand 104)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [(.bind (.generated .part 102)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 102))))]))], (.call (.runtime .natLt) [(.move (.generated .operand 103)), (.move (.generated .operand 104))] false), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 102))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun30 : FunOK program krate flags 30 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 106)) none (.lit (.nat 90))), (.mk (.bind (.generated .operand 107)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 105)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 105))))]))], (.call (.runtime .natLt) [(.move (.generated .operand 106)), (.move (.generated .operand 107))] false), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 105))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun31 : FunOK program krate flags 31 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 109)) none (.lit (.nat 20))), (.mk (.bind (.generated .operand 110)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 108)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 108))))]))], (.call (.runtime .natLt) [(.move (.generated .operand 109)), (.move (.generated .operand 110))] false), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 108))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun32 : FunOK program krate flags 32 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 112)) none (.lit (.nat 12))), (.mk (.bind (.generated .operand 113)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, (.bind (.generated .part 111)), .wild, .wild]) (.mk [] (.move (.generated .part 111))))]))], (.call (.runtime .natLt) [(.move (.generated .operand 112)), (.move (.generated .operand 113))] false), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 111))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun33 : FunOK program krate flags 33 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 114)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 114))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 115)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 115))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 116)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 116))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 117)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 117))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 118)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 118))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 119)), .wild, .wild]) (.mk [] (.move (.generated .part 119))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 120)), .wild]) (.mk [] (.move (.generated .part 120))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 121))]) (.mk [] (.move (.generated .part 121))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 114))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 115))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 116))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 117))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 118))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 119))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 120))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 121))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ - -theorem fun34 : FunOK program krate flags 34 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 122)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 122))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 123)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 123))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 124)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 124))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 125)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 125))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 126)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 126))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 127)), .wild, .wild]) (.mk [] (.move (.generated .part 127))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 128)), .wild]) (.mk [] (.move (.generated .part 128))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 129))]) (.mk [] (.move (.generated .part 129))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 122))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 123))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 124))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 125))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 126))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 127))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 128))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 129))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ - -theorem fun35 : FunOK program krate flags 35 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 130)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 130))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 131)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 131))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 132)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 132))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 133)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 133))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 134)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 134))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 135)), .wild, .wild]) (.mk [] (.move (.generated .part 135))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 136)), .wild]) (.mk [] (.move (.generated .part 136))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 137))]) (.mk [] (.move (.generated .part 137))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 130))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 131))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 132))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 133))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 134))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 135))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 136))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 137))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ - -theorem fun36 : FunOK program krate flags 36 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 138)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 138))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 139)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 139))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 140)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 140))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 141)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 141))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 142)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 142))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 143)), .wild, .wild]) (.mk [] (.move (.generated .part 143))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 144)), .wild]) (.mk [] (.move (.generated .part 144))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 145))]) (.mk [] (.move (.generated .part 145))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 138))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 139))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 140))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 141))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 142))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 143))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 144))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 145))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ - -theorem fun37 : FunOK program krate flags 37 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 146)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 146))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 147)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 147))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 148)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 148))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 149)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 149))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 150)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 150))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 151)), .wild, .wild]) (.mk [] (.move (.generated .part 151))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 152)), .wild]) (.mk [] (.move (.generated .part 152))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 153))]) (.mk [] (.move (.generated .part 153))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 146))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 147))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 148))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 149))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 150))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 151))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 152))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 153))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ - -theorem fun38 : FunOK program krate flags 38 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 154)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 154))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 155)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 155))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 156)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 156))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 157)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 157))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 158)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 158))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 159)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 159))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 160)), .wild]) (.mk [] (.move (.generated .part 160))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 161))]) (.mk [] (.move (.generated .part 161))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 154))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 155))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 156))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 157))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 158))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 159))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 160))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 161))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ - -theorem fun39 : FunOK program krate flags 39 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 162)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 162))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 163)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 163))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 164)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 164))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 165)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 165))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 166)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 166))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 167)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 167))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 168)), .wild, .wild]) (.mk [] (.move (.generated .part 168))))]), (.lit (.nat 1)), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 169))]) (.mk [] (.move (.generated .part 169))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 162))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 163))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 164))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 165))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 166))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 167))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 168))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 169))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ - -theorem fun40 : FunOK program krate flags 40 := - ⟨_, rfl, .inl ⟨_, _, [], (.succeed (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 170)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 170))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 171)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 171))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 172)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 172))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 173)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 173))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 174)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 174))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 175)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 175))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 176)), .wild, .wild]) (.mk [] (.move (.generated .part 176))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 177)), .wild]) (.mk [] (.move (.generated .part 177))))]), (.block (.mk [(.mk (.bind (.generated .operand 179)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 178))]) (.mk [] (.move (.generated .part 178))))])), (.mk (.bind (.generated .operand 180)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 179)), (.move (.generated .operand 180))] true)))])), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.fOfB (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 170))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 171))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 172))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 173))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 174))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 175))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 176))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 177))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 179)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 178))]) (.mk [] (.move (.generated .part 178))))])), (.mk (.bind (.generated .operand 180)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 179)), (.move (.generated .operand 180))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 178))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | 3 => exact fun3 - | 4 => exact fun4 - | 5 => exact fun5 - | 6 => exact fun6 - | 7 => exact fun7 - | 8 => exact fun8 - | 9 => exact fun9 - | 10 => exact fun10 - | 11 => exact fun11 - | 12 => exact fun12 - | 13 => exact fun13 - | 14 => exact fun14 - | 15 => exact fun15 - | 16 => exact fun16 - | 17 => exact fun17 - | 18 => exact fun18 - | 19 => exact fun19 - | 20 => exact fun20 - | 21 => exact fun21 - | 22 => exact fun22 - | 23 => exact fun23 - | 24 => exact fun24 - | 25 => exact fun25 - | 26 => exact fun26 - | 27 => exact fun27 - | 28 => exact fun28 - | 29 => exact fun29 - | 30 => exact fun30 - | 31 => exact fun31 - | 32 => exact fun32 - | 33 => exact fun33 - | 34 => exact fun34 - | 35 => exact fun35 - | 36 => exact fun36 - | 37 => exact fun37 - | 38 => exact fun38 - | 39 => exact fun39 - | 40 => exact fun40 - | _ + 41 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.RustCore diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R1.lean b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R1.lean deleted file mode 100644 index 06cde9558..000000000 --- a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R1.lean +++ /dev/null @@ -1,409 +0,0 @@ -import LexLeanPreservation.Core -import LexLeanPreservation.Values -import LexLeanPreservation.Primitives -import LexLeanPreservation.Fixed -import LexLeanPreservation.Keys -import LexLeanPreservation.Templates -import LexLeanPreservation.Validate -import Reasoning.Budget -import Reasoning.Clinic -import Reasoning.Main -import Reasoning.Planner -import Reasoning.Screening -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -set_option linter.unusedVariables false -namespace LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1 - -def __prog : _root_.LexLeanTarget.TargetSyntax.Program := - { adts := [{ constructors := [[.nat, .nat, .nat, .nat, .nat, .nat]] }, - { constructors := [[(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]] }, - { constructors := [[], [], [], [], [], [], [], []] }], functions := (( - { parameters := [0, 1, 2, 3, 4, 5], types := [.nat, .nat, .nat, .nat, .nat, .nat], result := .nat, - body := (.«match» .nat (.call 1 [(.build (.adt 0) (.adt 0) [(.var 0), (.var 1), (.var 2), (.var 3), (.var 4), (.var 5)])]) [(.arm .ok [6] (.var 6)), (.arm .error [7] (.value .nat (.nat 9)))]) }) ::( - { parameters := [0], types := [(.adt 0)], result := (.result .nat (.pair .bool .bool)), - body := (.call 2 [(.var 0)]) }) ::( - { parameters := [0], types := [(.adt 0)], result := (.result .nat (.pair .bool .bool)), - body := (.call 3 [(.var 0)]) }) ::( - { parameters := [0], types := [(.adt 0)], result := (.result .nat (.pair .bool .bool)), - body := (.«let» 1 (.pair (.adt 1) .bool) (.call 4 [(.var 0)]) (.«match» (.result .nat (.pair .bool .bool)) (.second (.var 1)) [(.arm .true [] (.call 5 [(.var 0), (.first (.var 1))])), (.arm .false [] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])]))])) }) ::( - { parameters := [0], types := [(.adt 0)], result := (.pair (.adt 1) .bool), - body := (.call 6 [(.closure 7 []), (.value .nat (.nat 11)), (.call 8 [(.var 0)])]) }) ::( - { parameters := [0, 1], types := [(.adt 0), (.adt 1)], result := (.result .nat (.pair .bool .bool)), - body := (.«match» (.result .nat (.pair .bool .bool)) (.call 9 [(.var 0), (.var 1)]) [(.arm .some [2] (.build .ok (.result .nat (.pair .bool .bool)) [(.var 2)])), (.arm .none [] (.«match» (.result .nat (.pair .bool .bool)) (.call 10 [(.var 1)]) [(.arm .some [3] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])])])), (.arm .none [] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])])]))]))]) }) ::( - { parameters := [0, 1, 2], types := [(.fn [(.adt 1)] (.option (.adt 1))), .nat, (.adt 1)], result := (.pair (.adt 1) .bool), - body := (.«match» (.pair (.adt 1) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.adt 1) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.adt 1) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.adt 1) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 6 [(.var 0), (.var 3), (.var 4)]))]))]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.«match» (.option (.adt 1)) (.call 11 [(.var 0)]) [(.arm .none [] (.build .none (.option (.adt 1)) [])), (.arm .some [1] (.call 12 [(.var 0), (.var 1)]))]) }) ::( - { parameters := [0], types := [(.adt 0)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.var 0), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0))]) }) ::( - { parameters := [0, 1], types := [(.adt 0), (.adt 1)], result := (.option .nat), - body := (.«match» (.option .nat) (.call 10 [(.var 1)]) [(.arm .none [] (.build .none (.option .nat) [])), (.arm .some [2] (.cond (.call 13 [(.var 0), (.var 2)]) (.build .some (.option .nat) [(.var 2)]) (.build .none (.option .nat) [])))]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option .nat), - body := (.build .some (.option .nat) [(.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 2)), - body := (.«match» (.option (.adt 2)) (.«match» (.option (.adt 2)) (.«match» (.option (.adt 2)) (.cond (.call 14 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 0) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [1] (.build .some (.option (.adt 2)) [(.var 1)])), (.arm .none [] (.cond (.call 15 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 1) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]) [(.arm .some [2] (.build .some (.option (.adt 2)) [(.var 2)])), (.arm .none [] (.«match» (.option (.adt 2)) (.cond (.call 16 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 2) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [3] (.build .some (.option (.adt 2)) [(.var 3)])), (.arm .none [] (.cond (.call 17 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 3) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]))]) [(.arm .some [4] (.build .some (.option (.adt 2)) [(.var 4)])), (.arm .none [] (.«match» (.option (.adt 2)) (.«match» (.option (.adt 2)) (.cond (.call 18 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 4) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [5] (.build .some (.option (.adt 2)) [(.var 5)])), (.arm .none [] (.cond (.call 19 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 5) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]) [(.arm .some [6] (.build .some (.option (.adt 2)) [(.var 6)])), (.arm .none [] (.«match» (.option (.adt 2)) (.cond (.call 20 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 6) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [7] (.build .some (.option (.adt 2)) [(.var 7)])), (.arm .none [] (.cond (.call 21 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 7) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]))]))]) }) ::( - { parameters := [0, 1], types := [(.adt 1), (.adt 2)], result := (.option (.adt 1)), - body := (.«match» (.option (.adt 1)) (.var 1) [(.arm (.adt 0) [] (.call 22 [(.var 0)])), (.arm (.adt 1) [] (.call 23 [(.var 0)])), (.arm (.adt 2) [] (.call 24 [(.var 0)])), (.arm (.adt 3) [] (.call 25 [(.var 0)])), (.arm (.adt 4) [] (.call 26 [(.var 0)])), (.arm (.adt 5) [] (.call 27 [(.var 0)])), (.arm (.adt 6) [] (.call 28 [(.var 0)])), (.arm (.adt 7) [] (.call 29 [(.var 0)]))]) }) ::( - { parameters := [0, 1], types := [(.adt 0), .nat], result := .bool, - body := (.cond (.prim .natLe [(.var 1), (.value .nat (.nat 3))]) (.cond (.prim .natEq [(.var 1), (.value .nat (.nat 3))]) (.build .true .bool []) (.prim .boolNot [(.cond (.call 30 [(.var 0)]) (.cond (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 1))]) (.cond (.call 31 [(.var 0)]) (.call 32 [(.var 0)]) (.build .false .bool [])) (.build .false .bool [])) (.build .false .bool []))])) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 1), (.value .nat (.nat 0))]) (.call 31 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 2), (.value .nat (.nat 0))]) (.call 32 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 3), (.value .nat (.nat 0))]) (.call 33 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 4), (.value .nat (.nat 0))]) (.call 34 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 0))]) (.prim .natLe [(.value .nat (.nat 2)), (.prim .natAdd [(.prim .natAdd [(.prim .natAdd [(.field (.var 0) 1), (.field (.var 0) 2)]), (.field (.var 0) 3)]), (.field (.var 0) 4)])]) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 0))]) (.cond (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 1))]) (.prim .natEq [(.field (.field (.var 0) 0) 5), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 7), (.value .nat (.nat 0))]) (.cond (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 1))]) (.call 30 [(.field (.var 0) 0)]) (.build .false .bool [])) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natLt [(.field (.var 0) 8), (.value .nat (.nat 3))]) (.cond (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 0))]) (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .true .bool []) (.cond (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 1))]) (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .true .bool []) (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 2))]) (.prim .natEq [(.field (.var 0) 7), (.value .nat (.nat 1))]) (.build .false .bool [])))) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 14 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 35 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 15 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 36 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 16 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 37 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 17 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 38 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 18 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 39 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 19 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 40 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 20 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 41 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 21 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 42 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.prim .natLt [(.field (.var 0) 4), (.value .nat (.nat 90))]) }) ::( - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.prim .natLt [(.value .nat (.nat 380)), (.field (.var 0) 0)]) }) ::( - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.prim .natLt [(.value .nat (.nat 90)), (.field (.var 0) 1)]) }) ::( - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.prim .natLt [(.value .nat (.nat 20)), (.field (.var 0) 2)]) }) ::( - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.prim .natLt [(.value .nat (.nat 12)), (.field (.var 0) 3)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.value .nat (.nat 1)), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.value .nat (.nat 1)), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.value .nat (.nat 1)), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.value .nat (.nat 1)), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.value .nat (.nat 1)), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.value .nat (.nat 1)), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.value .nat (.nat 1)), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.prim .natAdd [(.field (.var 0) 8), (.value .nat (.nat 1))])]) }) ::[]) } - -def __enc_0 (__s : (Reasoning.Clinic.Vitals)) : _root_.LexLeanTarget.TargetSyntax.Value := - _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).temperature), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).heartRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).respiratoryRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).whiteCells), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).systolic), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).infection)] - -def __enc_1 (__s : (Reasoning.Clinic.Chart)) : _root_.LexLeanTarget.TargetSyntax.Value := - _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [(__enc_0 (__s).vitals), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).fever), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).tachycardia), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).tachypnea), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).leukocytosis), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).sirs), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).sepsis), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).shock), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).level)] - -def __enc_2 : (Reasoning.Clinic.Triage.Step) -> _root_.LexLeanTarget.TargetSyntax.Value - | Reasoning.Clinic.Triage.Step.Fever => _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [] - | Reasoning.Clinic.Triage.Step.Tachycardia => _root_.LexLeanTarget.TargetSyntax.Value.adt 1 [] - | Reasoning.Clinic.Triage.Step.Tachypnea => _root_.LexLeanTarget.TargetSyntax.Value.adt 2 [] - | Reasoning.Clinic.Triage.Step.Leukocytosis => _root_.LexLeanTarget.TargetSyntax.Value.adt 3 [] - | Reasoning.Clinic.Triage.Step.Sirs => _root_.LexLeanTarget.TargetSyntax.Value.adt 4 [] - | Reasoning.Clinic.Triage.Step.Sepsis => _root_.LexLeanTarget.TargetSyntax.Value.adt 5 [] - | Reasoning.Clinic.Triage.Step.Shock => _root_.LexLeanTarget.TargetSyntax.Value.adt 6 [] - | Reasoning.Clinic.Triage.Step.Escalate => _root_.LexLeanTarget.TargetSyntax.Value.adt 7 [] - -def __fits_31 (v : (Reasoning.Clinic.Vitals)) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_31 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 31 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_31 v) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.feverish v))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (380 : Nat) (v).temperature)) - -def __fits_14 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).fever (0 : Nat)) then ((Bool.true && Bool.true) && (__fits_31 ((s).vitals))) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.feverish in -theorem __rel_14 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 14 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_14 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Fever.guard s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && (__fits_31 ((s).vitals))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Reasoning.Clinic.feverish ((s).vitals)))) (Nat.beq (s).fever (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).fever (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_31 ((s).vitals)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) - -def __fits_32 (v : (Reasoning.Clinic.Vitals)) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_32 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 32 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_32 v) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.tachycardic v))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (90 : Nat) (v).heartRate)) - -def __fits_15 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).tachycardia (0 : Nat)) then ((Bool.true && Bool.true) && (__fits_32 ((s).vitals))) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.tachycardic in -theorem __rel_15 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 15 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_15 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Tachycardia.guard s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && (__fits_32 ((s).vitals))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Reasoning.Clinic.tachycardic ((s).vitals)))) (Nat.beq (s).tachycardia (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).tachycardia (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_32 ((s).vitals)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) - -def __fits_33 (v : (Reasoning.Clinic.Vitals)) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_33 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 33 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_33 v) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.tachypneic v))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (20 : Nat) (v).respiratoryRate)) - -def __fits_16 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).tachypnea (0 : Nat)) then ((Bool.true && Bool.true) && (__fits_33 ((s).vitals))) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.tachypneic in -theorem __rel_16 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 16 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_16 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Tachypnea.guard s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && (__fits_33 ((s).vitals))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Reasoning.Clinic.tachypneic ((s).vitals)))) (Nat.beq (s).tachypnea (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).tachypnea (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_33 ((s).vitals)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) - -def __fits_34 (v : (Reasoning.Clinic.Vitals)) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_34 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 34 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_34 v) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.leukocytic v))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (12 : Nat) (v).whiteCells)) - -def __fits_17 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).leukocytosis (0 : Nat)) then ((Bool.true && Bool.true) && (__fits_34 ((s).vitals))) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.leukocytic in -theorem __rel_17 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 17 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_17 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Leukocytosis.guard s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && (__fits_34 ((s).vitals))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Reasoning.Clinic.leukocytic ((s).vitals)))) (Nat.beq (s).leukocytosis (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).leukocytosis (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_34 ((s).vitals)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) - -def __fits_18 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sirs (0 : Nat)) then ((Bool.true && (((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((s).fever + (s).tachycardia) 18446744073709551616)) && (Bool.true && Bool.true)) && (Nat.blt (((s).fever + (s).tachycardia) + (s).tachypnea) 18446744073709551616)) && (Bool.true && Bool.true)) && (Nat.blt ((((s).fever + (s).tachycardia) + (s).tachypnea) + (s).leukocytosis) 18446744073709551616)) && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) - -theorem __rel_18 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 18 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_18 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Sirs.guard s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((s).fever + (s).tachycardia) 18446744073709551616)) && (Bool.true && Bool.true)) && (Nat.blt (((s).fever + (s).tachycardia) + (s).tachypnea) 18446744073709551616)) && (Bool.true && Bool.true)) && (Nat.blt ((((s).fever + (s).tachycardia) + (s).tachypnea) + (s).leukocytosis) 18446744073709551616)) && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.ble (2 : Nat) ((((s).fever + (s).tachycardia) + (s).tachypnea) + (s).leukocytosis)))) (Nat.beq (s).sirs (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sirs (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (s).fever (s).tachycardia)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((s).fever + (s).tachycardia) (s).tachypnea)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (((s).fever + (s).tachycardia) + (s).tachypnea) (s).leukocytosis)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe (2 : Nat) ((((s).fever + (s).tachycardia) + (s).tachypnea) + (s).leukocytosis)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) - -def __fits_19 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sepsis (0 : Nat)) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sirs (1 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) - -theorem __rel_19 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 19 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_19 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Sepsis.guard s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sirs (1 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && ((Nat.beq (s).sirs (1 : Nat)) && (Nat.beq ((s).vitals).infection (1 : Nat))))) (Nat.beq (s).sepsis (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sepsis (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.beq ((s).vitals).infection (1 : Nat)))) (Nat.beq (s).sirs (1 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sirs (1 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq ((s).vitals).infection (1 : Nat)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) - -def __fits_30 (v : (Reasoning.Clinic.Vitals)) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_30 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 30 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_30 v) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.hypotensive v))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (v).systolic (90 : Nat))) - -def __fits_20 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).shock (0 : Nat)) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sepsis (1 : Nat)) then ((Bool.true && Bool.true) && (__fits_30 ((s).vitals))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.hypotensive in -theorem __rel_20 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 20 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_20 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Shock.guard s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sepsis (1 : Nat)) then ((Bool.true && Bool.true) && (__fits_30 ((s).vitals))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && ((Nat.beq (s).sepsis (1 : Nat)) && (Reasoning.Clinic.hypotensive ((s).vitals))))) (Nat.beq (s).shock (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).shock (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && (__fits_30 ((s).vitals))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Reasoning.Clinic.hypotensive ((s).vitals)))) (Nat.beq (s).sepsis (1 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sepsis (1 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_30 ((s).vitals)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) - -def __fits_21 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.blt (s).level (3 : Nat)) then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (0 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if ((Nat.beq (s).level (0 : Nat)) && (Nat.beq (s).sirs (1 : Nat))) then (Bool.true && Bool.true) else ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (1 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if ((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (2 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))))))) else (Bool.true && Bool.true))) - -theorem __rel_21 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 21 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_21 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Escalate.guard s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (0 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if ((Nat.beq (s).level (0 : Nat)) && (Nat.beq (s).sirs (1 : Nat))) then (Bool.true && Bool.true) else ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (1 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if ((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (2 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))))))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (((Nat.beq (s).level (0 : Nat)) && (Nat.beq (s).sirs (1 : Nat))) || (((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) || ((Nat.beq (s).level (2 : Nat)) && (Nat.beq (s).shock (1 : Nat))))))) (Nat.blt (s).level (3 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (s).level (3 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (Bool.true && Bool.true) else ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (1 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if ((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (2 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b || (((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) || ((Nat.beq (s).level (2 : Nat)) && (Nat.beq (s).shock (1 : Nat)))))) ((Nat.beq (s).level (0 : Nat)) && (Nat.beq (s).sirs (1 : Nat))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.beq (s).sirs (1 : Nat)))) (Nat.beq (s).level (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).level (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sirs (1 : Nat)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (2 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b || ((Nat.beq (s).level (2 : Nat)) && (Nat.beq (s).shock (1 : Nat))))) ((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.beq (s).sepsis (1 : Nat)))) (Nat.beq (s).level (1 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).level (1 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sepsis (1 : Nat)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.beq (s).shock (1 : Nat)))) (Nat.beq (s).level (2 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).level (2 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).shock (1 : Nat)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))))))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) - -def __fits_11 (_ys : (Reasoning.Clinic.Chart)) : Bool := - ((((((Bool.true && Bool.true) && (__fits_14 (_ys))) && (if (Reasoning.Clinic.Fever.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Fever : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_15 (_ys))) && (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) && (match (match (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Fever : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachycardia : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((Bool.true && Bool.true) && (__fits_16 (_ys))) && (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachypnea : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_17 (_ys))) && (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))) && (match (match (match (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Fever : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachycardia : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (match (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachypnea : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Leukocytosis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((((Bool.true && Bool.true) && (__fits_18 (_ys))) && (if (Reasoning.Clinic.Sirs.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_19 (_ys))) && (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) && (match (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sepsis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((Bool.true && Bool.true) && (__fits_20 (_ys))) && (if (Reasoning.Clinic.Shock.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Shock : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_21 (_ys))) && (if (Reasoning.Clinic.Escalate.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))))) - -attribute [local irreducible] Reasoning.Clinic.Escalate.guard Reasoning.Clinic.Fever.guard Reasoning.Clinic.Leukocytosis.guard Reasoning.Clinic.Sepsis.guard Reasoning.Clinic.Shock.guard Reasoning.Clinic.Sirs.guard Reasoning.Clinic.Tachycardia.guard Reasoning.Clinic.Tachypnea.guard in -theorem __rel_11 (_ys : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 11 [(__enc_1 _ys)] (_root_.LexLeanPreservation.Rel (__fits_11 _ys) ((_root_.LexLeanPreservation.encOption __enc_2) (Reasoning.Clinic.Triage.select _ys))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((((Bool.true && Bool.true) && (__fits_18 (_ys))) && (if (Reasoning.Clinic.Sirs.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_19 (_ys))) && (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) && (match (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sepsis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((Bool.true && Bool.true) && (__fits_20 (_ys))) && (if (Reasoning.Clinic.Shock.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Shock : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_21 (_ys))) && (if (Reasoning.Clinic.Escalate.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_2) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (match (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sepsis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (match (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Shock : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Escalate.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Escalate : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))))))) (match (match (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Fever : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachycardia : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (match (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachypnea : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Leukocytosis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))))) (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((Bool.true && Bool.true) && (__fits_16 (_ys))) && (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachypnea : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_17 (_ys))) && (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_2) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (match (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachypnea : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Leukocytosis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))))) (match (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Fever : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachycardia : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_15 (_ys))) && (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_2) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachycardia : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))))) (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Fever : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Fever : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Fever.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_14 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Tachycardia : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Tachycardia.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_15 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_17 (_ys))) && (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_2) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Leukocytosis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))))) (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachypnea : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Tachypnea : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Tachypnea.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_16 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Leukocytosis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Leukocytosis.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_17 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((Bool.true && Bool.true) && (__fits_20 (_ys))) && (if (Reasoning.Clinic.Shock.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Shock : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_21 (_ys))) && (if (Reasoning.Clinic.Escalate.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_2) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (match (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Shock : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Escalate.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Escalate : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))))) (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sepsis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_19 (_ys))) && (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_2) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sepsis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))))) (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Sirs.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_18 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Sepsis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Sepsis.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_19 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_21 (_ys))) && (if (Reasoning.Clinic.Escalate.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_2) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Escalate.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Escalate : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))))) (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Shock : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Shock : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Shock.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_20 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Escalate : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Escalate.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_21 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))))))))))) - -def __fits_35 (s : (Reasoning.Clinic.Chart)) : Bool := - ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) - -theorem __rel_35 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 35 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_35 s) (__enc_1 (Reasoning.Clinic.Fever.conclusion s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) - -def __fits_22 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && Bool.true) && (__fits_14 (s))) && (if (Reasoning.Clinic.Fever.guard (s)) then ((((Bool.true && Bool.true) && (__fits_35 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.Fever.conclusion Reasoning.Clinic.Fever.guard in -theorem __rel_22 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 22 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_22 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Fever.apply s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_35 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Fever.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Fever.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_14 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_35 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_36 (s : (Reasoning.Clinic.Chart)) : Bool := - ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) - -theorem __rel_36 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 36 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_36 s) (__enc_1 (Reasoning.Clinic.Tachycardia.conclusion s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) - -def __fits_23 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && Bool.true) && (__fits_15 (s))) && (if (Reasoning.Clinic.Tachycardia.guard (s)) then ((((Bool.true && Bool.true) && (__fits_36 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.Tachycardia.conclusion Reasoning.Clinic.Tachycardia.guard in -theorem __rel_23 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 23 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_23 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Tachycardia.apply s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_36 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Tachycardia.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Tachycardia.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_15 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_36 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_37 (s : (Reasoning.Clinic.Chart)) : Bool := - ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) - -theorem __rel_37 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 37 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_37 s) (__enc_1 (Reasoning.Clinic.Tachypnea.conclusion s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) - -def __fits_24 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && Bool.true) && (__fits_16 (s))) && (if (Reasoning.Clinic.Tachypnea.guard (s)) then ((((Bool.true && Bool.true) && (__fits_37 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.Tachypnea.conclusion Reasoning.Clinic.Tachypnea.guard in -theorem __rel_24 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 24 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_24 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Tachypnea.apply s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_37 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Tachypnea.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Tachypnea.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_16 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_37 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_38 (s : (Reasoning.Clinic.Chart)) : Bool := - ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) - -theorem __rel_38 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 38 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_38 s) (__enc_1 (Reasoning.Clinic.Leukocytosis.conclusion s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) - -def __fits_25 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && Bool.true) && (__fits_17 (s))) && (if (Reasoning.Clinic.Leukocytosis.guard (s)) then ((((Bool.true && Bool.true) && (__fits_38 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.Leukocytosis.conclusion Reasoning.Clinic.Leukocytosis.guard in -theorem __rel_25 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 25 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_25 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Leukocytosis.apply s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_38 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Leukocytosis.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Leukocytosis.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_17 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_38 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_39 (s : (Reasoning.Clinic.Chart)) : Bool := - ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) - -theorem __rel_39 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 39 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_39 s) (__enc_1 (Reasoning.Clinic.Sirs.conclusion s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) - -def __fits_26 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && Bool.true) && (__fits_18 (s))) && (if (Reasoning.Clinic.Sirs.guard (s)) then ((((Bool.true && Bool.true) && (__fits_39 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.Sirs.conclusion Reasoning.Clinic.Sirs.guard in -theorem __rel_26 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 26 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_26 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Sirs.apply s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_39 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Sirs.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Sirs.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_18 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_39 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_40 (s : (Reasoning.Clinic.Chart)) : Bool := - ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) - -theorem __rel_40 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 40 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_40 s) (__enc_1 (Reasoning.Clinic.Sepsis.conclusion s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) - -def __fits_27 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && Bool.true) && (__fits_19 (s))) && (if (Reasoning.Clinic.Sepsis.guard (s)) then ((((Bool.true && Bool.true) && (__fits_40 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.Sepsis.conclusion Reasoning.Clinic.Sepsis.guard in -theorem __rel_27 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 27 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_27 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Sepsis.apply s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_40 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Sepsis.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Sepsis.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_19 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_40 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_41 (s : (Reasoning.Clinic.Chart)) : Bool := - ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) - -theorem __rel_41 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 41 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_41 s) (__enc_1 (Reasoning.Clinic.Shock.conclusion s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) - -def __fits_28 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && Bool.true) && (__fits_20 (s))) && (if (Reasoning.Clinic.Shock.guard (s)) then ((((Bool.true && Bool.true) && (__fits_41 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.Shock.conclusion Reasoning.Clinic.Shock.guard in -theorem __rel_28 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 28 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_28 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Shock.apply s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_41 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Shock.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Shock.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_20 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_41 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_42 (s : (Reasoning.Clinic.Chart)) : Bool := - ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((s).level + (1 : Nat)) 18446744073709551616)) && Bool.true))))))))) && Bool.true) - -theorem __rel_42 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 42 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_42 s) (__enc_1 (Reasoning.Clinic.Escalate.conclusion s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (s).level (1 : Nat))) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) - -def __fits_29 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && Bool.true) && (__fits_21 (s))) && (if (Reasoning.Clinic.Escalate.guard (s)) then ((((Bool.true && Bool.true) && (__fits_42 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.Escalate.conclusion Reasoning.Clinic.Escalate.guard in -theorem __rel_29 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 29 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_29 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Escalate.apply s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_42 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Escalate.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Escalate.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_21 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_42 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_12 (_ys : (Reasoning.Clinic.Chart)) (_ystep : (Reasoning.Clinic.Triage.Step)) : Bool := - (Bool.true && (match _ystep with | Reasoning.Clinic.Triage.Step.Fever => ((Bool.true && Bool.true) && (__fits_22 (_ys))) | Reasoning.Clinic.Triage.Step.Tachycardia => ((Bool.true && Bool.true) && (__fits_23 (_ys))) | Reasoning.Clinic.Triage.Step.Tachypnea => ((Bool.true && Bool.true) && (__fits_24 (_ys))) | Reasoning.Clinic.Triage.Step.Leukocytosis => ((Bool.true && Bool.true) && (__fits_25 (_ys))) | Reasoning.Clinic.Triage.Step.Sirs => ((Bool.true && Bool.true) && (__fits_26 (_ys))) | Reasoning.Clinic.Triage.Step.Sepsis => ((Bool.true && Bool.true) && (__fits_27 (_ys))) | Reasoning.Clinic.Triage.Step.Shock => ((Bool.true && Bool.true) && (__fits_28 (_ys))) | Reasoning.Clinic.Triage.Step.Escalate => ((Bool.true && Bool.true) && (__fits_29 (_ys))))) - -attribute [local irreducible] Reasoning.Clinic.Escalate.apply Reasoning.Clinic.Fever.apply Reasoning.Clinic.Leukocytosis.apply Reasoning.Clinic.Sepsis.apply Reasoning.Clinic.Shock.apply Reasoning.Clinic.Sirs.apply Reasoning.Clinic.Tachycardia.apply Reasoning.Clinic.Tachypnea.apply in -theorem __rel_12 (_ys : (Reasoning.Clinic.Chart)) (_ystep : (Reasoning.Clinic.Triage.Step)) : _root_.LexLeanPreservation.FunRel __prog 12 [(__enc_1 _ys), (__enc_2 _ystep)] (_root_.LexLeanPreservation.Rel (__fits_12 _ys _ystep) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Triage.fire _ys _ystep))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV __enc_2 (fun (__a : (Reasoning.Clinic.Triage.Step)) => (match __a with | Reasoning.Clinic.Triage.Step.Fever => ((Bool.true && Bool.true) && (__fits_22 (_ys))) | Reasoning.Clinic.Triage.Step.Tachycardia => ((Bool.true && Bool.true) && (__fits_23 (_ys))) | Reasoning.Clinic.Triage.Step.Tachypnea => ((Bool.true && Bool.true) && (__fits_24 (_ys))) | Reasoning.Clinic.Triage.Step.Leukocytosis => ((Bool.true && Bool.true) && (__fits_25 (_ys))) | Reasoning.Clinic.Triage.Step.Sirs => ((Bool.true && Bool.true) && (__fits_26 (_ys))) | Reasoning.Clinic.Triage.Step.Sepsis => ((Bool.true && Bool.true) && (__fits_27 (_ys))) | Reasoning.Clinic.Triage.Step.Shock => ((Bool.true && Bool.true) && (__fits_28 (_ys))) | Reasoning.Clinic.Triage.Step.Escalate => ((Bool.true && Bool.true) && (__fits_29 (_ys))))) (fun (__a : (Reasoning.Clinic.Triage.Step)) => (_root_.LexLeanPreservation.encOption __enc_1) (match __a with | Reasoning.Clinic.Triage.Step.Fever => (Reasoning.Clinic.Fever.apply (_ys)) | Reasoning.Clinic.Triage.Step.Tachycardia => (Reasoning.Clinic.Tachycardia.apply (_ys)) | Reasoning.Clinic.Triage.Step.Tachypnea => (Reasoning.Clinic.Tachypnea.apply (_ys)) | Reasoning.Clinic.Triage.Step.Leukocytosis => (Reasoning.Clinic.Leukocytosis.apply (_ys)) | Reasoning.Clinic.Triage.Step.Sirs => (Reasoning.Clinic.Sirs.apply (_ys)) | Reasoning.Clinic.Triage.Step.Sepsis => (Reasoning.Clinic.Sepsis.apply (_ys)) | Reasoning.Clinic.Triage.Step.Shock => (Reasoning.Clinic.Shock.apply (_ys)) | Reasoning.Clinic.Triage.Step.Escalate => (Reasoning.Clinic.Escalate.apply (_ys)))) _ystep (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (Reasoning.Clinic.Triage.Step)) _ => match __a with | Reasoning.Clinic.Triage.Step.Fever => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_22 (_ys)))) | Reasoning.Clinic.Triage.Step.Tachycardia => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_23 (_ys))))) | Reasoning.Clinic.Triage.Step.Tachypnea => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_24 (_ys)))))) | Reasoning.Clinic.Triage.Step.Leukocytosis => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_25 (_ys))))))) | Reasoning.Clinic.Triage.Step.Sirs => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_26 (_ys)))))))) | Reasoning.Clinic.Triage.Step.Sepsis => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_27 (_ys))))))))) | Reasoning.Clinic.Triage.Step.Shock => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_28 (_ys)))))))))) | Reasoning.Clinic.Triage.Step.Escalate => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_29 (_ys))))))))))))) - -def __fits_7 (_ys : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && Bool.true) && (__fits_11 (_ys))) && (match (Reasoning.Clinic.Triage.select (_ys)) with | Option.none => (Bool.true && Bool.true) | Option.some _ystep => ((Bool.true && (Bool.true && Bool.true)) && (__fits_12 (_ys) (_ystep))))) - -attribute [local irreducible] Reasoning.Clinic.Triage.fire Reasoning.Clinic.Triage.select in -theorem __rel_7 (_ys : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 7 [(__enc_1 _ys)] (_root_.LexLeanPreservation.Rel (__fits_7 _ys) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Triage.next _ys))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.none => (Bool.true && Bool.true) | Option.some _ystep => ((Bool.true && (Bool.true && Bool.true)) && (__fits_12 (_ys) (_ystep))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_1) (match __a with | Option.none => (Option.none : (Option (Reasoning.Clinic.Chart))) | Option.some _ystep => (Reasoning.Clinic.Triage.fire (_ys) (_ystep)))) (Reasoning.Clinic.Triage.select (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_11 (_ys))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) | Option.some _ystep => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_12 (_ys) (_ystep))))))) - -def __fits_8 (patient : (Reasoning.Clinic.Vitals)) : Bool := - ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) - -theorem __rel_8 (patient : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 8 [(__enc_0 patient)] (_root_.LexLeanPreservation.Rel (__fits_8 patient) (__enc_1 (Reasoning.Clinic.Triage.observe patient))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) - -def __fits_4 (patient : (Reasoning.Clinic.Vitals)) : Bool := - ((Bool.true && (Bool.true && (((Bool.true && Bool.true) && (__fits_8 (patient))) && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : (Reasoning.Clinic.Chart)) => __fits_7 __p0) ((Reasoning.Clinic.Triage.next)) ((11 : Nat)) ((Reasoning.Clinic.Triage.observe (patient))))) - -attribute [local irreducible] Reasoning.Clinic.Triage.observe in -theorem __rel_4 (patient : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 4 [(__enc_0 patient)] (_root_.LexLeanPreservation.Rel (__fits_4 patient) ((_root_.LexLeanPreservation.encPair __enc_1 _root_.LexLeanTarget.TargetSyntax.Value.bool) (Reasoning.Clinic.Triage.saturate patient))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_8 (patient))) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterateUntil (es := __enc_1) (_root_.LexLeanPreservation.optEnc __enc_1) (fun _ => rfl) (_root_.LexLeanPreservation.encPair __enc_1 _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) ((Reasoning.Clinic.Triage.next)) (fun (__p0 : (Reasoning.Clinic.Chart)) => __fits_7 __p0) 7 [] (fun (__p0 : (Reasoning.Clinic.Chart)) => __rel_7 __p0) (_root_.LexLeanCollections.iterateUntil ((Reasoning.Clinic.Triage.next))) (fun _ => rfl) (fun _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (p := __prog) (fi := 6) (ts := (.adt 1)) rfl ((11 : Nat)) ((Reasoning.Clinic.Triage.observe (patient))))) - -def __fits_10 (chart : (Reasoning.Clinic.Chart)) : Bool := - ((Bool.true && Bool.true) && Bool.true) - -theorem __rel_10 (chart : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 10 [(__enc_1 chart)] (_root_.LexLeanPreservation.Rel (__fits_10 chart) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Clinic.Triage.extract chart))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some) - -def __fits_13 (v : (Reasoning.Clinic.Vitals)) (r : Nat) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.ble r (3 : Nat)) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq r (3 : Nat)) then (Bool.true && Bool.true) else (((((Bool.true && Bool.true) && (__fits_30 (v))) && (if (Reasoning.Clinic.hypotensive (v)) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (v).infection (1 : Nat)) then (((Bool.true && Bool.true) && (__fits_31 (v))) && (if (Reasoning.Clinic.feverish (v)) then ((Bool.true && Bool.true) && (__fits_32 (v))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && Bool.true) && Bool.true))) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.feverish Reasoning.Clinic.hypotensive Reasoning.Clinic.tachycardic in -theorem __rel_13 (v : (Reasoning.Clinic.Vitals)) (r : Nat) : _root_.LexLeanPreservation.FunRel __prog 13 [(__enc_0 v), (_root_.LexLeanTarget.TargetSyntax.Value.nat r)] (_root_.LexLeanPreservation.Rel (__fits_13 v r) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.recommendationCheck v r))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq r (3 : Nat)) then (Bool.true && Bool.true) else (((((Bool.true && Bool.true) && (__fits_30 (v))) && (if (Reasoning.Clinic.hypotensive (v)) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (v).infection (1 : Nat)) then (((Bool.true && Bool.true) && (__fits_31 (v))) && (if (Reasoning.Clinic.feverish (v)) then ((Bool.true && Bool.true) && (__fits_32 (v))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && Bool.true) && Bool.true))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && ((Nat.beq r (3 : Nat)) || (!((Reasoning.Clinic.hypotensive (v)) && ((Nat.beq (v).infection (1 : Nat)) && ((Reasoning.Clinic.feverish (v)) && (Reasoning.Clinic.tachycardic (v))))))))) (Nat.ble r (3 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe r (3 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (Bool.true && Bool.true) else (((((Bool.true && Bool.true) && (__fits_30 (v))) && (if (Reasoning.Clinic.hypotensive (v)) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (v).infection (1 : Nat)) then (((Bool.true && Bool.true) && (__fits_31 (v))) && (if (Reasoning.Clinic.feverish (v)) then ((Bool.true && Bool.true) && (__fits_32 (v))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && Bool.true) && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b || (!((Reasoning.Clinic.hypotensive (v)) && ((Nat.beq (v).infection (1 : Nat)) && ((Reasoning.Clinic.feverish (v)) && (Reasoning.Clinic.tachycardic (v)))))))) (Nat.beq r (3 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq r (3 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (v).infection (1 : Nat)) then (((Bool.true && Bool.true) && (__fits_31 (v))) && (if (Reasoning.Clinic.feverish (v)) then ((Bool.true && Bool.true) && (__fits_32 (v))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && ((Nat.beq (v).infection (1 : Nat)) && ((Reasoning.Clinic.feverish (v)) && (Reasoning.Clinic.tachycardic (v)))))) (Reasoning.Clinic.hypotensive (v)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_30 (v))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (((Bool.true && Bool.true) && (__fits_31 (v))) && (if (Reasoning.Clinic.feverish (v)) then ((Bool.true && Bool.true) && (__fits_32 (v))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && ((Reasoning.Clinic.feverish (v)) && (Reasoning.Clinic.tachycardic (v))))) (Nat.beq (v).infection (1 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (v).infection (1 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && (__fits_32 (v))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Reasoning.Clinic.tachycardic (v)))) (Reasoning.Clinic.feverish (v)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_31 (v))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_32 (v)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_boolNot ((Reasoning.Clinic.hypotensive (v)) && ((Nat.beq (v).infection (1 : Nat)) && ((Reasoning.Clinic.feverish (v)) && (Reasoning.Clinic.tachycardic (v)))))))))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) - -def __fits_9 (patient : (Reasoning.Clinic.Vitals)) (_ys : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && Bool.true) && (__fits_10 (_ys))) && (match (Reasoning.Clinic.Triage.extract (_ys)) with | Option.none => (Bool.true && Bool.true) | Option.some _yv => (((Bool.true && (Bool.true && Bool.true)) && (__fits_13 (patient) (_yv))) && (if (Reasoning.Clinic.recommendationCheck (patient) (_yv)) then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) - -attribute [local irreducible] Reasoning.Clinic.Triage.extract Reasoning.Clinic.recommendationCheck in -theorem __rel_9 (patient : (Reasoning.Clinic.Vitals)) (_ys : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 9 [(__enc_0 patient), (__enc_1 _ys)] (_root_.LexLeanPreservation.Rel (__fits_9 patient _ys) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Clinic.Triage.accept patient _ys))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Option Nat)) => (match __a with | Option.none => (Bool.true && Bool.true) | Option.some _yv => (((Bool.true && (Bool.true && Bool.true)) && (__fits_13 (patient) (_yv))) && (if (Reasoning.Clinic.recommendationCheck (patient) (_yv)) then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__a : (Option Nat)) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (match __a with | Option.none => (Option.none : (Option Nat)) | Option.some _yv => (if (Reasoning.Clinic.recommendationCheck (patient) (_yv)) then (Option.some (_yv) : (Option Nat)) else (Option.none : (Option Nat))))) (Reasoning.Clinic.Triage.extract (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_10 (_ys))) (fun (__a : (Option Nat)) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) | Option.some _yv => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Option.some (_yv) : (Option Nat)) else (Option.none : (Option Nat)))) (Reasoning.Clinic.recommendationCheck (patient) (_yv)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_13 (patient) (_yv))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))) - -def __fits_5 (patient : (Reasoning.Clinic.Vitals)) (_ys : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && (__fits_9 (patient) (_ys))) && (match (Reasoning.Clinic.Triage.accept (patient) (_ys)) with | Option.some _yv => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_10 (_ys))) && (match (Reasoning.Clinic.Triage.extract (_ys)) with | Option.some _yv => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) - -attribute [local irreducible] Reasoning.Clinic.Triage.accept Reasoning.Clinic.Triage.extract in -theorem __rel_5 (patient : (Reasoning.Clinic.Vitals)) (_ys : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 5 [(__enc_0 patient), (__enc_1 _ys)] (_root_.LexLeanPreservation.Rel (__fits_5 patient _ys) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Clinic.Triage.conclude patient _ys))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Option Nat)) => (match __a with | Option.some _yv => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_10 (_ys))) && (match (Reasoning.Clinic.Triage.extract (_ys)) with | Option.some _yv => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) (fun (__a : (Option Nat)) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (match __a with | Option.some _yv => (Except.ok (_yv) : (Except (Prod Bool Bool) Nat)) | Option.none => (match (Reasoning.Clinic.Triage.extract (_ys)) with | Option.some _yv => (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)) | Option.none => (Except.error (((Bool.false, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat))))) (Reasoning.Clinic.Triage.accept (patient) (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_9 (patient) (_ys))) (fun (__a : (Option Nat)) _ => match __a with | Option.some _yv => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Option Nat)) => (match __a with | Option.some _yv => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__a : (Option Nat)) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (match __a with | Option.some _yv => (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)) | Option.none => (Except.error (((Bool.false, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)))) (Reasoning.Clinic.Triage.extract (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_10 (_ys))) (fun (__a : (Option Nat)) _ => match __a with | Option.some _yv => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error))))))))) - -def __fits_3 (patient : (Reasoning.Clinic.Vitals)) : Bool := - (((Bool.true && Bool.true) && (__fits_4 (patient))) && (let _yfinal : (Prod (Reasoning.Clinic.Chart) Bool) := (Reasoning.Clinic.Triage.saturate (patient)); (Bool.true && (match (_yfinal).2 with | Bool.true => ((Bool.true && (Bool.true && Bool.true)) && (__fits_5 (patient) ((_yfinal).1))) | Bool.false => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) - -attribute [local irreducible] Reasoning.Clinic.Triage.conclude Reasoning.Clinic.Triage.saturate in -theorem __rel_3 (patient : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 3 [(__enc_0 patient)] (_root_.LexLeanPreservation.Rel (__fits_3 patient) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Clinic.Triage.verdict patient))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (let _yfinal : (Prod (Reasoning.Clinic.Chart) Bool) := (Reasoning.Clinic.Triage.saturate (patient)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_4 (patient))) (_root_.LexLeanPreservation.conv_matchV _root_.LexLeanTarget.TargetSyntax.Value.bool (fun (__a : Bool) => (match __a with | Bool.true => ((Bool.true && (Bool.true && Bool.true)) && (__fits_5 (patient) ((_yfinal).1))) | Bool.false => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__a : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (match __a with | Bool.true => (Reasoning.Clinic.Triage.conclude (patient) ((_yfinal).1)) | Bool.false => (Except.error (((Bool.false, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)))) (_yfinal).2 (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (fun (__a : Bool) _ => match __a with | Bool.true => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil)) (__rel_5 (patient) ((_yfinal).1)))) | Bool.false => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)))))) - -def __fits_2 (v : (Reasoning.Clinic.Vitals)) : Bool := - ((Bool.true && Bool.true) && (__fits_3 (v))) - -attribute [local irreducible] Reasoning.Clinic.Triage.verdict in -theorem __rel_2 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 2 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_2 v) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Main.GatewayTriage v))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_3 (v))) - -def __fits_1 (_yinput : (Reasoning.Clinic.Vitals)) : Bool := - ((Bool.true && Bool.true) && (__fits_2 (_yinput))) - -attribute [local irreducible] Reasoning.Main.GatewayTriage in -theorem __rel_1 (_yinput : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 1 [(__enc_0 _yinput)] (_root_.LexLeanPreservation.Rel (__fits_1 _yinput) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Main.GatewayModel _yinput))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_2 (_yinput))) - -def __fits_0 (temperature : Nat) (heartRate : Nat) (respiratoryRate : Nat) (whiteCells : Nat) (systolic : Nat) (infection : Nat) : Bool := - (((((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true)))))) && Bool.true) && Bool.true) && (__fits_1 (({ temperature := temperature, heartRate := heartRate, respiratoryRate := respiratoryRate, whiteCells := whiteCells, systolic := systolic, infection := infection } : (Reasoning.Clinic.Vitals))))) && (match (Reasoning.Main.GatewayModel (({ temperature := temperature, heartRate := heartRate, respiratoryRate := respiratoryRate, whiteCells := whiteCells, systolic := systolic, infection := infection } : (Reasoning.Clinic.Vitals)))) with | Except.ok level => Bool.true | Except.error failure => Bool.true)) - -attribute [local irreducible] Reasoning.Main.GatewayModel in -theorem __rel_0 (temperature : Nat) (heartRate : Nat) (respiratoryRate : Nat) (whiteCells : Nat) (systolic : Nat) (infection : Nat) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat temperature), (_root_.LexLeanTarget.TargetSyntax.Value.nat heartRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat respiratoryRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat whiteCells), (_root_.LexLeanTarget.TargetSyntax.Value.nat systolic), (_root_.LexLeanTarget.TargetSyntax.Value.nat infection)] (_root_.LexLeanPreservation.Rel (__fits_0 temperature heartRate respiratoryRate whiteCells systolic infection) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.gatewayLevel temperature heartRate respiratoryRate whiteCells systolic infection))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Except (Prod Bool Bool) Nat)) => (match __a with | Except.ok level => Bool.true | Except.error failure => Bool.true)) (fun (__a : (Except (Prod Bool Bool) Nat)) => _root_.LexLeanTarget.TargetSyntax.Value.nat (match __a with | Except.ok level => level | Except.error failure => (9 : Nat))) (Reasoning.Main.GatewayModel (({ temperature := temperature, heartRate := heartRate, respiratoryRate := respiratoryRate, whiteCells := whiteCells, systolic := systolic, infection := infection } : (Reasoning.Clinic.Vitals)))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)))))) _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) (__rel_1 (({ temperature := temperature, heartRate := heartRate, respiratoryRate := respiratoryRate, whiteCells := whiteCells, systolic := systolic, infection := infection } : (Reasoning.Clinic.Vitals))))) (fun (__a : (Except (Prod Bool Bool) Nat)) _ => match __a with | Except.ok level => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | Except.error failure => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value)))) - -def denote (temperature : Nat) (heartRate : Nat) (respiratoryRate : Nat) (whiteCells : Nat) (systolic : Nat) (infection : Nat) : _root_.LexLeanPreservation.Obs := - _root_.cond (__fits_0 temperature heartRate respiratoryRate whiteCells systolic infection) (_root_.LexLeanPreservation.Obs.value ((_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.gatewayLevel temperature heartRate respiratoryRate whiteCells systolic infection)))) _root_.LexLeanPreservation.Obs.overflow - -theorem root (temperature : Nat) (heartRate : Nat) (respiratoryRate : Nat) (whiteCells : Nat) (systolic : Nat) (infection : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat temperature), (_root_.LexLeanTarget.TargetSyntax.Value.nat heartRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat respiratoryRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat whiteCells), (_root_.LexLeanTarget.TargetSyntax.Value.nat systolic), (_root_.LexLeanTarget.TargetSyntax.Value.nat infection)] (_root_.LexLeanPreservation.Rel (__fits_0 temperature heartRate respiratoryRate whiteCells systolic infection) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.gatewayLevel temperature heartRate respiratoryRate whiteCells systolic infection))) := - _root_.LexLeanPreservation.run_of_funRel (__rel_0 temperature heartRate respiratoryRate whiteCells systolic infection) - -end LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1 diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R1/Compose/RustCore.lex.tex b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R1/Compose/RustCore.lex.tex deleted file mode 100644 index bfe87fb4a..000000000 --- a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R1/Compose/RustCore.lex.tex +++ /dev/null @@ -1,1341 +0,0 @@ -\begin{lexlean}{RustCore} -\title{Certificate E LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.Compose.RustCore} -\begin{coremodule} -imports [ - LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1, - LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.RustCore, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.Compose.RustCore.__wt_0 : @16 := @716 { - all: [LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.Compose.RustCore.__wt_0], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.Compose.RustCore.__wt_1 : @724 := @1388 { - all: [LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.Compose.RustCore.__wt_1], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.Compose.RustCore.__wt_2 : @1396 := @1631 { - all: [LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.Compose.RustCore.__wt_2], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.Compose.RustCore.root : @2716 := @2717 { - all: [LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.Compose.RustCore.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.RustCore.program -@1 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.RustCore.krate -@2 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.RustCore.flags -@3 := Reasoning.Clinic.Vitals -@4 := #0 -@5 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.__enc_0 -@6 := @5 @4 -@7 := LexLeanPreservation.Rust.WT -@8 := LexLeanTarget.TargetSyntax.Ty.adt -@9 := 0 -@10 := @8 @9 -@11 := @7 @0 -@12 := @11 @1 -@13 := @12 @2 -@16 := (__s : @3) -> @13 @6 @10 -@17 := Reasoning.Clinic.Vitals.temperature -@18 := @17 @4 -@19 := Reasoning.Clinic.Vitals.heartRate -@20 := @19 @4 -@21 := Reasoning.Clinic.Vitals.respiratoryRate -@22 := @21 @4 -@23 := Reasoning.Clinic.Vitals.whiteCells -@24 := @23 @4 -@25 := Reasoning.Clinic.Vitals.systolic -@26 := @25 @4 -@27 := Reasoning.Clinic.Vitals.infection -@28 := @27 @4 -@29 := LexLeanTarget.TargetSyntax.Value.nat -@30 := @29 @18 -@31 := LexLeanTarget.TargetSyntax.Ty.nat -@32 := LexLeanTarget.TargetSyntax.Program -@33 := LexLeanPreservation.Rust.RCrate -@34 := LexLeanPreservation.Rust.Flags -@35 := Nat -@36 := #3 -@37 := @7 @36 -@38 := #2 -@39 := @37 @38 -@40 := #1 -@41 := @39 @40 -@42 := @29 @4 -@48 := {p : @32} -> {c : @33} -> {A : @34} -> (n : @35) -> @41 @42 @31 -@50 := LexLeanPreservation.Rust.wt_nat @0 -@57 := {c : @33} -> {A : @34} -> (n : @35) -> @11 @38 @40 @42 @31 -@58 := @50 @1 -@63 := {A : @34} -> (n : @35) -> @12 @40 @42 @31 -@64 := @58 @2 -@67 := (n : @35) -> @13 @42 @31 -@68 := @64 @18 -@70 := @13 @30 @31 -@71 := @29 @20 -@72 := @64 @20 -@74 := @13 @71 @31 -@75 := @29 @22 -@76 := @64 @22 -@78 := @13 @75 @31 -@79 := @29 @24 -@80 := @64 @24 -@82 := @13 @79 @31 -@83 := @29 @26 -@84 := @64 @26 -@86 := @13 @83 @31 -@87 := @29 @28 -@88 := @64 @28 -@90 := @13 @87 @31 -@91 := LexLeanTarget.TargetSyntax.Value -@92 := LexLeanTarget.TargetSyntax.Ty -@93 := List.nil.{0} -@94 := List.cons.{0} -@95 := @93 @91 -@96 := @94 @91 -@98 := @96 @87 @95 -@100 := @96 @83 @98 -@102 := @96 @79 @100 -@104 := @96 @75 @102 -@106 := @96 @71 @104 -@108 := @96 @30 @106 -@109 := @93 @92 -@110 := @94 @92 -@111 := @110 @31 -@112 := @111 @109 -@113 := @111 @112 -@114 := @111 @113 -@115 := @111 @114 -@116 := @111 @115 -@117 := @111 @116 -@118 := LexLeanPreservation.Rust.WTL -@126 := {p : @32} -> {c : @33} -> {A : @34} -> @118 @38 @40 @4 @95 @109 -@128 := LexLeanPreservation.Rust.wtl_nil @0 -@129 := @118 @0 -@135 := {c : @33} -> {A : @34} -> @129 @40 @4 @95 @109 -@136 := @128 @1 -@137 := @129 @1 -@141 := {A : @34} -> @137 @4 @95 @109 -@142 := @136 @2 -@143 := @137 @2 -@144 := @143 @95 -@145 := @144 @109 -@146 := List.{0} -@147 := @146 @91 -@148 := @146 @92 -@149 := #6 -@150 := @7 @149 -@151 := #5 -@152 := @150 @151 -@153 := #4 -@156 := @152 @153 @36 @38 -@157 := #7 -@162 := @118 @157 @149 @151 @38 @40 -@163 := #8 -@166 := @118 @163 @157 @149 -@168 := @96 @151 @36 -@169 := @166 @168 -@171 := @110 @153 @38 -@181 := {p : @32} -> - {c : @33} -> - {A : @34} -> - {v : @91} -> {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @156) -> (hs : @162) -> @169 @171 -@183 := LexLeanPreservation.Rust.wtl_cons @0 -@187 := @11 @151 @153 @36 @38 -@191 := @129 @149 @151 @38 @40 -@203 := {c : @33} -> - {A : @34} -> - {v : @91} -> - {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @187) -> (hs : @191) -> @129 @157 @149 @168 @171 -@204 := @183 @1 -@207 := @12 @153 @36 @38 -@210 := @137 @151 @38 @40 -@220 := {A : @34} -> - {v : @91} -> - {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @207) -> (hs : @210) -> @137 @149 @168 @171 -@221 := @204 @2 -@223 := @13 @36 @38 -@225 := @143 @38 @40 -@233 := {v : @91} -> - {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @223) -> (hs : @225) -> @143 @168 @171 -@234 := @221 @87 -@236 := @29 (@27 @36) -@249 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @236 @38) -> (hs : @225) -> @143 (@96 (@29 (@27 @151)) @36) @171 -@250 := @234 @31 -@252 := @29 (@27 @38) -@254 := @13 @252 @31 -@259 := @143 (@96 (@29 (@27 @153)) @36) -@260 := @111 @38 -@265 := {vs : @147} -> {ts : @148} -> (h : @254) -> (hs : @225) -> @259 @260 -@266 := @250 @95 -@268 := @29 (@27 @40) -@270 := @13 @268 @31 -@271 := @144 @40 -@273 := @96 @236 @95 -@278 := {ts : @148} -> (h : @270) -> (hs : @271) -> @143 @273 @260 -@279 := @266 @109 -@281 := @96 @252 @95 -@282 := @143 @281 -@285 := (h : @90) -> (hs : @145) -> @282 @112 -@286 := @279 @88 -@288 := @96 @268 @95 -@290 := @143 @288 @112 -@291 := (hs : @145) -> @290 -@292 := @286 @142 -@294 := @143 @98 @112 -@295 := @221 @83 -@297 := @29 (@25 @36) -@310 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @297 @38) -> (hs : @225) -> @143 (@96 (@29 (@25 @151)) @36) @171 -@311 := @295 @31 -@313 := @29 (@25 @38) -@325 := {vs : @147} -> - {ts : @148} -> (h : @13 @313 @31) -> (hs : @225) -> @143 (@96 (@29 (@25 @153)) @36) @260 -@326 := @311 @98 -@328 := @29 (@25 @40) -@330 := @13 @328 @31 -@331 := @282 @40 -@333 := @96 @297 @273 -@338 := {ts : @148} -> (h : @330) -> (hs : @331) -> @143 @333 @260 -@339 := @326 @112 -@341 := @96 @313 @281 -@342 := @143 @341 -@345 := (h : @86) -> (hs : @290) -> @342 @113 -@346 := @339 @84 -@348 := @96 @328 @288 -@350 := @143 @348 @113 -@351 := (hs : @294) -> @350 -@352 := @346 @292 -@354 := @143 @100 @113 -@355 := @221 @79 -@357 := @29 (@23 @36) -@370 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @357 @38) -> (hs : @225) -> @143 (@96 (@29 (@23 @151)) @36) @171 -@371 := @355 @31 -@373 := @29 (@23 @38) -@385 := {vs : @147} -> - {ts : @148} -> (h : @13 @373 @31) -> (hs : @225) -> @143 (@96 (@29 (@23 @153)) @36) @260 -@386 := @371 @100 -@388 := @29 (@23 @40) -@390 := @13 @388 @31 -@391 := @342 @40 -@393 := @96 @357 @333 -@398 := {ts : @148} -> (h : @390) -> (hs : @391) -> @143 @393 @260 -@399 := @386 @113 -@401 := @96 @373 @341 -@402 := @143 @401 -@405 := (h : @82) -> (hs : @350) -> @402 @114 -@406 := @399 @80 -@408 := @96 @388 @348 -@410 := @143 @408 @114 -@411 := (hs : @354) -> @410 -@412 := @406 @352 -@414 := @143 @102 @114 -@415 := @221 @75 -@417 := @29 (@21 @36) -@430 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @417 @38) -> (hs : @225) -> @143 (@96 (@29 (@21 @151)) @36) @171 -@431 := @415 @31 -@433 := @29 (@21 @38) -@445 := {vs : @147} -> - {ts : @148} -> (h : @13 @433 @31) -> (hs : @225) -> @143 (@96 (@29 (@21 @153)) @36) @260 -@446 := @431 @102 -@448 := @29 (@21 @40) -@450 := @13 @448 @31 -@451 := @402 @40 -@453 := @96 @417 @393 -@458 := {ts : @148} -> (h : @450) -> (hs : @451) -> @143 @453 @260 -@459 := @446 @114 -@461 := @96 @433 @401 -@462 := @143 @461 -@465 := (h : @78) -> (hs : @410) -> @462 @115 -@466 := @459 @76 -@468 := @96 @448 @408 -@470 := @143 @468 @115 -@471 := (hs : @414) -> @470 -@472 := @466 @412 -@474 := @143 @104 @115 -@475 := @221 @71 -@477 := @29 (@19 @36) -@490 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @477 @38) -> (hs : @225) -> @143 (@96 (@29 (@19 @151)) @36) @171 -@491 := @475 @31 -@493 := @29 (@19 @38) -@505 := {vs : @147} -> - {ts : @148} -> (h : @13 @493 @31) -> (hs : @225) -> @143 (@96 (@29 (@19 @153)) @36) @260 -@506 := @491 @104 -@508 := @29 (@19 @40) -@510 := @13 @508 @31 -@511 := @462 @40 -@513 := @96 @477 @453 -@518 := {ts : @148} -> (h : @510) -> (hs : @511) -> @143 @513 @260 -@519 := @506 @115 -@521 := @96 @493 @461 -@522 := @143 @521 -@525 := (h : @74) -> (hs : @470) -> @522 @116 -@526 := @519 @72 -@528 := @96 @508 @468 -@530 := @143 @528 @116 -@531 := (hs : @474) -> @530 -@532 := @526 @472 -@534 := @143 @106 @116 -@535 := @221 @30 -@537 := @29 (@17 @36) -@550 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @537 @38) -> (hs : @225) -> @143 (@96 (@29 (@17 @151)) @36) @171 -@551 := @535 @31 -@553 := @29 (@17 @38) -@565 := {vs : @147} -> - {ts : @148} -> (h : @13 @553 @31) -> (hs : @225) -> @143 (@96 (@29 (@17 @153)) @36) @260 -@566 := @551 @106 -@568 := @29 (@17 @40) -@570 := @13 @568 @31 -@571 := @522 @40 -@573 := @96 @537 @513 -@578 := {ts : @148} -> (h : @570) -> (hs : @571) -> @143 @573 @260 -@579 := @566 @116 -@581 := @96 @553 @521 -@582 := @143 @581 -@585 := (h : @70) -> (hs : @530) -> @582 @117 -@586 := @579 @68 -@588 := @96 @568 @528 -@590 := @143 @588 @117 -@591 := (hs : @534) -> @590 -@592 := @586 @532 -@594 := @143 @108 @117 -@595 := Eq.{1} -@596 := Option.{0} -@597 := @596 @148 -@598 := @595 @597 -@599 := LexLeanPreservation.Rust.adtFields -@603 := @598 (@599 @149 @36 @38) -@604 := Option.some.{0} -@605 := @604 @148 -@606 := @605 @4 -@607 := @603 @606 -@610 := @7 @163 @157 @149 -@611 := LexLeanTarget.TargetSyntax.Value.adt -@613 := @611 @153 @36 -@614 := @610 @613 -@615 := @8 @151 -@625 := {p : @32} -> - {c : @33} -> - {A : @34} -> - {i : @35} -> {k : @35} -> {fs : @147} -> {tys : @148} -> (h : @607) -> (hf : @162) -> @614 @615 -@627 := LexLeanPreservation.Rust.wt_adt @0 -@628 := @599 @0 -@632 := @598 (@628 @36 @38) @606 -@644 := {c : @33} -> - {A : @34} -> - {i : @35} -> - {k : @35} -> {fs : @147} -> {tys : @148} -> (h : @632) -> (hf : @191) -> @11 @157 @149 @613 @615 -@645 := @627 @1 -@655 := {A : @34} -> - {i : @35} -> - {k : @35} -> {fs : @147} -> {tys : @148} -> (h : @632) -> (hf : @210) -> @12 @149 @613 @615 -@656 := @645 @2 -@657 := @13 @613 -@664 := {i : @35} -> - {k : @35} -> {fs : @147} -> {tys : @148} -> (h : @632) -> (hf : @225) -> @657 @615 -@665 := @656 @9 -@666 := @628 @9 -@675 := {k : @35} -> - {fs : @147} -> {tys : @148} -> (h : @598 (@666 @38) @606) -> (hf : @225) -> @657 @10 -@676 := @665 @9 -@677 := @666 @9 -@678 := @598 @677 -@679 := @678 @606 -@680 := @611 @9 -@682 := @13 (@680 @36) -@687 := {fs : @147} -> {tys : @148} -> (h : @679) -> (hf : @225) -> @682 @10 -@688 := @676 @108 -@695 := {tys : @148} -> (h : @679) -> (hf : @582 @40) -> @13 (@680 @573) @10 -@696 := @688 @117 -@703 := (h : @678 (@605 @117)) -> (hf : @590) -> @13 (@680 @581) @10 -@704 := Eq.refl.{1} -@705 := @704 @597 -@707 := @696 (@705 @677) -@711 := (hf : @594) -> @13 (@680 @588) @10 -@712 := @707 @592 -@715 := @13 (@680 @108) @10 -@716 := fun (__s : @3) => @712 -@717 := Reasoning.Clinic.Chart -@719 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.__enc_1 @4 -@720 := 1 -@721 := @8 @720 -@724 := (__s : @717) -> @13 @719 @721 -@725 := Reasoning.Clinic.Chart.vitals -@726 := @725 @4 -@727 := Reasoning.Clinic.Chart.fever -@728 := @727 @4 -@729 := Reasoning.Clinic.Chart.tachycardia -@730 := @729 @4 -@731 := Reasoning.Clinic.Chart.tachypnea -@732 := @731 @4 -@733 := Reasoning.Clinic.Chart.leukocytosis -@734 := @733 @4 -@735 := Reasoning.Clinic.Chart.sirs -@736 := @735 @4 -@737 := Reasoning.Clinic.Chart.sepsis -@738 := @737 @4 -@739 := Reasoning.Clinic.Chart.shock -@740 := @739 @4 -@741 := Reasoning.Clinic.Chart.level -@742 := @741 @4 -@743 := @5 @726 -@745 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.Compose.RustCore.__wt_0 @726 -@746 := @29 @728 -@747 := @64 @728 -@749 := @13 @746 @31 -@750 := @29 @730 -@751 := @64 @730 -@753 := @13 @750 @31 -@754 := @29 @732 -@755 := @64 @732 -@757 := @13 @754 @31 -@758 := @29 @734 -@759 := @64 @734 -@761 := @13 @758 @31 -@762 := @29 @736 -@763 := @64 @736 -@765 := @13 @762 @31 -@766 := @29 @738 -@767 := @64 @738 -@769 := @13 @766 @31 -@770 := @29 @740 -@771 := @64 @740 -@773 := @13 @770 @31 -@774 := @29 @742 -@775 := @64 @742 -@777 := @13 @774 @31 -@779 := @96 @774 @95 -@781 := @96 @770 @779 -@783 := @96 @766 @781 -@785 := @96 @762 @783 -@787 := @96 @758 @785 -@789 := @96 @754 @787 -@791 := @96 @750 @789 -@793 := @96 @746 @791 -@795 := @96 @743 @793 -@796 := @111 @117 -@797 := @111 @796 -@798 := @110 @10 -@799 := @798 @797 -@800 := @221 @774 -@802 := @29 (@741 @36) -@815 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @802 @38) -> (hs : @225) -> @143 (@96 (@29 (@741 @151)) @36) @171 -@816 := @800 @31 -@818 := @29 (@741 @38) -@830 := {vs : @147} -> - {ts : @148} -> (h : @13 @818 @31) -> (hs : @225) -> @143 (@96 (@29 (@741 @153)) @36) @260 -@831 := @816 @95 -@833 := @29 (@741 @40) -@835 := @13 @833 @31 -@837 := @96 @802 @95 -@842 := {ts : @148} -> (h : @835) -> (hs : @271) -> @143 @837 @260 -@843 := @831 @109 -@845 := @96 @818 @95 -@846 := @143 @845 -@849 := (h : @777) -> (hs : @145) -> @846 @112 -@850 := @843 @775 -@852 := @96 @833 @95 -@854 := @143 @852 @112 -@855 := (hs : @145) -> @854 -@856 := @850 @142 -@858 := @143 @779 @112 -@859 := @221 @770 -@861 := @29 (@739 @36) -@874 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @861 @38) -> (hs : @225) -> @143 (@96 (@29 (@739 @151)) @36) @171 -@875 := @859 @31 -@877 := @29 (@739 @38) -@889 := {vs : @147} -> - {ts : @148} -> (h : @13 @877 @31) -> (hs : @225) -> @143 (@96 (@29 (@739 @153)) @36) @260 -@890 := @875 @779 -@892 := @29 (@739 @40) -@894 := @13 @892 @31 -@895 := @846 @40 -@897 := @96 @861 @837 -@902 := {ts : @148} -> (h : @894) -> (hs : @895) -> @143 @897 @260 -@903 := @890 @112 -@905 := @96 @877 @845 -@906 := @143 @905 -@909 := (h : @773) -> (hs : @854) -> @906 @113 -@910 := @903 @771 -@912 := @96 @892 @852 -@914 := @143 @912 @113 -@915 := (hs : @858) -> @914 -@916 := @910 @856 -@918 := @143 @781 @113 -@919 := @221 @766 -@921 := @29 (@737 @36) -@934 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @921 @38) -> (hs : @225) -> @143 (@96 (@29 (@737 @151)) @36) @171 -@935 := @919 @31 -@937 := @29 (@737 @38) -@949 := {vs : @147} -> - {ts : @148} -> (h : @13 @937 @31) -> (hs : @225) -> @143 (@96 (@29 (@737 @153)) @36) @260 -@950 := @935 @781 -@952 := @29 (@737 @40) -@954 := @13 @952 @31 -@955 := @906 @40 -@957 := @96 @921 @897 -@962 := {ts : @148} -> (h : @954) -> (hs : @955) -> @143 @957 @260 -@963 := @950 @113 -@965 := @96 @937 @905 -@966 := @143 @965 -@969 := (h : @769) -> (hs : @914) -> @966 @114 -@970 := @963 @767 -@972 := @96 @952 @912 -@974 := @143 @972 @114 -@975 := (hs : @918) -> @974 -@976 := @970 @916 -@978 := @143 @783 @114 -@979 := @221 @762 -@981 := @29 (@735 @36) -@994 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @981 @38) -> (hs : @225) -> @143 (@96 (@29 (@735 @151)) @36) @171 -@995 := @979 @31 -@997 := @29 (@735 @38) -@1009 := {vs : @147} -> - {ts : @148} -> (h : @13 @997 @31) -> (hs : @225) -> @143 (@96 (@29 (@735 @153)) @36) @260 -@1010 := @995 @783 -@1012 := @29 (@735 @40) -@1014 := @13 @1012 @31 -@1015 := @966 @40 -@1017 := @96 @981 @957 -@1022 := {ts : @148} -> (h : @1014) -> (hs : @1015) -> @143 @1017 @260 -@1023 := @1010 @114 -@1025 := @96 @997 @965 -@1026 := @143 @1025 -@1029 := (h : @765) -> (hs : @974) -> @1026 @115 -@1030 := @1023 @763 -@1032 := @96 @1012 @972 -@1034 := @143 @1032 @115 -@1035 := (hs : @978) -> @1034 -@1036 := @1030 @976 -@1038 := @143 @785 @115 -@1039 := @221 @758 -@1041 := @29 (@733 @36) -@1054 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @1041 @38) -> (hs : @225) -> @143 (@96 (@29 (@733 @151)) @36) @171 -@1055 := @1039 @31 -@1057 := @29 (@733 @38) -@1069 := {vs : @147} -> - {ts : @148} -> (h : @13 @1057 @31) -> (hs : @225) -> @143 (@96 (@29 (@733 @153)) @36) @260 -@1070 := @1055 @785 -@1072 := @29 (@733 @40) -@1074 := @13 @1072 @31 -@1075 := @1026 @40 -@1077 := @96 @1041 @1017 -@1082 := {ts : @148} -> (h : @1074) -> (hs : @1075) -> @143 @1077 @260 -@1083 := @1070 @115 -@1085 := @96 @1057 @1025 -@1086 := @143 @1085 -@1089 := (h : @761) -> (hs : @1034) -> @1086 @116 -@1090 := @1083 @759 -@1092 := @96 @1072 @1032 -@1094 := @143 @1092 @116 -@1095 := (hs : @1038) -> @1094 -@1096 := @1090 @1036 -@1098 := @143 @787 @116 -@1099 := @221 @754 -@1101 := @29 (@731 @36) -@1114 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @1101 @38) -> (hs : @225) -> @143 (@96 (@29 (@731 @151)) @36) @171 -@1115 := @1099 @31 -@1117 := @29 (@731 @38) -@1129 := {vs : @147} -> - {ts : @148} -> (h : @13 @1117 @31) -> (hs : @225) -> @143 (@96 (@29 (@731 @153)) @36) @260 -@1130 := @1115 @787 -@1132 := @29 (@731 @40) -@1134 := @13 @1132 @31 -@1135 := @1086 @40 -@1137 := @96 @1101 @1077 -@1142 := {ts : @148} -> (h : @1134) -> (hs : @1135) -> @143 @1137 @260 -@1143 := @1130 @116 -@1145 := @96 @1117 @1085 -@1146 := @143 @1145 -@1149 := (h : @757) -> (hs : @1094) -> @1146 @117 -@1150 := @1143 @755 -@1152 := @96 @1132 @1092 -@1154 := @143 @1152 @117 -@1155 := (hs : @1098) -> @1154 -@1156 := @1150 @1096 -@1158 := @143 @789 @117 -@1159 := @221 @750 -@1161 := @29 (@729 @36) -@1174 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @1161 @38) -> (hs : @225) -> @143 (@96 (@29 (@729 @151)) @36) @171 -@1175 := @1159 @31 -@1177 := @29 (@729 @38) -@1189 := {vs : @147} -> - {ts : @148} -> (h : @13 @1177 @31) -> (hs : @225) -> @143 (@96 (@29 (@729 @153)) @36) @260 -@1190 := @1175 @789 -@1192 := @29 (@729 @40) -@1194 := @13 @1192 @31 -@1195 := @1146 @40 -@1197 := @96 @1161 @1137 -@1202 := {ts : @148} -> (h : @1194) -> (hs : @1195) -> @143 @1197 @260 -@1203 := @1190 @117 -@1205 := @96 @1177 @1145 -@1206 := @143 @1205 -@1209 := (h : @753) -> (hs : @1154) -> @1206 @796 -@1210 := @1203 @751 -@1212 := @96 @1192 @1152 -@1214 := @143 @1212 @796 -@1215 := (hs : @1158) -> @1214 -@1216 := @1210 @1156 -@1218 := @143 @791 @796 -@1219 := @221 @746 -@1221 := @29 (@727 @36) -@1234 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @1221 @38) -> (hs : @225) -> @143 (@96 (@29 (@727 @151)) @36) @171 -@1235 := @1219 @31 -@1237 := @29 (@727 @38) -@1249 := {vs : @147} -> - {ts : @148} -> (h : @13 @1237 @31) -> (hs : @225) -> @143 (@96 (@29 (@727 @153)) @36) @260 -@1250 := @1235 @791 -@1252 := @29 (@727 @40) -@1254 := @13 @1252 @31 -@1255 := @1206 @40 -@1257 := @96 @1221 @1197 -@1262 := {ts : @148} -> (h : @1254) -> (hs : @1255) -> @143 @1257 @260 -@1263 := @1250 @796 -@1265 := @96 @1237 @1205 -@1266 := @143 @1265 -@1269 := (h : @749) -> (hs : @1214) -> @1266 @797 -@1270 := @1263 @747 -@1272 := @96 @1252 @1212 -@1274 := @143 @1272 @797 -@1275 := (hs : @1218) -> @1274 -@1276 := @1270 @1216 -@1278 := @143 @793 @797 -@1279 := @221 @743 -@1281 := @5 (@725 @36) -@1294 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @1281 @38) -> (hs : @225) -> @143 (@96 (@5 (@725 @151)) @36) @171 -@1295 := @1279 @10 -@1297 := @5 (@725 @38) -@1299 := @13 @1297 @10 -@1304 := @143 (@96 (@5 (@725 @153)) @36) -@1305 := @798 @38 -@1310 := {vs : @147} -> {ts : @148} -> (h : @1299) -> (hs : @225) -> @1304 @1305 -@1311 := @1295 @793 -@1313 := @5 (@725 @40) -@1315 := @13 @1313 @10 -@1316 := @1266 @40 -@1318 := @96 @1281 @1257 -@1323 := {ts : @148} -> (h : @1315) -> (hs : @1316) -> @143 @1318 @1305 -@1324 := @1311 @797 -@1326 := @13 @743 @10 -@1328 := @96 @1297 @1265 -@1329 := @143 @1328 -@1332 := (h : @1326) -> (hs : @1274) -> @1329 @799 -@1333 := @1324 @745 -@1335 := @96 @1313 @1272 -@1337 := @143 @1335 @799 -@1338 := (hs : @1278) -> @1337 -@1339 := @1333 @1276 -@1341 := @143 @795 @799 -@1342 := @656 @720 -@1343 := @628 @720 -@1352 := {k : @35} -> - {fs : @147} -> {tys : @148} -> (h : @598 (@1343 @38) @606) -> (hf : @225) -> @657 @721 -@1353 := @1342 @9 -@1354 := @1343 @9 -@1355 := @598 @1354 -@1356 := @1355 @606 -@1361 := {fs : @147} -> {tys : @148} -> (h : @1356) -> (hf : @225) -> @682 @721 -@1362 := @1353 @795 -@1369 := {tys : @148} -> (h : @1356) -> (hf : @1329 @40) -> @13 (@680 @1318) @721 -@1370 := @1362 @799 -@1377 := (h : @1355 (@605 @799)) -> (hf : @1337) -> @13 (@680 @1328) @721 -@1379 := @1370 (@705 @1354) -@1383 := (hf : @1341) -> @13 (@680 @1335) @721 -@1384 := @1379 @1339 -@1387 := @13 (@680 @795) @721 -@1388 := fun (__s : @717) => @1384 -@1389 := Reasoning.Clinic.Triage.Step -@1391 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.__enc_2 @4 -@1392 := 2 -@1393 := @8 @1392 -@1395 := @13 @1391 @1393 -@1396 := (__v : @1389) -> @1395 -@1397 := fun (__v : @1389) => @1395 -@1398 := @656 @1392 -@1399 := @628 @1392 -@1408 := {k : @35} -> - {fs : @147} -> {tys : @148} -> (h : @598 (@1399 @38) @606) -> (hf : @225) -> @657 @1393 -@1409 := @1398 @9 -@1410 := @1399 @9 -@1411 := @598 @1410 -@1412 := @1411 @606 -@1417 := {fs : @147} -> {tys : @148} -> (h : @1412) -> (hf : @225) -> @682 @1393 -@1418 := @1409 @95 -@1421 := @13 (@680 @95) @1393 -@1424 := {tys : @148} -> (h : @1412) -> (hf : @271) -> @1421 -@1425 := @1418 @109 -@1426 := @605 @109 -@1429 := (h : @1411 @1426) -> (hf : @145) -> @1421 -@1432 := @1425 (@705 @1410) @142 -@1433 := @1398 @720 -@1434 := @1399 @720 -@1435 := @598 @1434 -@1436 := @1435 @606 -@1437 := @611 @720 -@1444 := {fs : @147} -> {tys : @148} -> (h : @1436) -> (hf : @225) -> @13 (@1437 @36) @1393 -@1445 := @1433 @95 -@1448 := @13 (@1437 @95) @1393 -@1451 := {tys : @148} -> (h : @1436) -> (hf : @271) -> @1448 -@1452 := @1445 @109 -@1455 := (h : @1435 @1426) -> (hf : @145) -> @1448 -@1458 := @1452 (@705 @1434) @142 -@1459 := @1398 @1392 -@1460 := @1399 @1392 -@1461 := @598 @1460 -@1462 := @1461 @606 -@1463 := @611 @1392 -@1470 := {fs : @147} -> {tys : @148} -> (h : @1462) -> (hf : @225) -> @13 (@1463 @36) @1393 -@1471 := @1459 @95 -@1474 := @13 (@1463 @95) @1393 -@1477 := {tys : @148} -> (h : @1462) -> (hf : @271) -> @1474 -@1478 := @1471 @109 -@1481 := (h : @1461 @1426) -> (hf : @145) -> @1474 -@1484 := @1478 (@705 @1460) @142 -@1485 := 3 -@1486 := @1398 @1485 -@1487 := @1399 @1485 -@1488 := @598 @1487 -@1489 := @1488 @606 -@1490 := @611 @1485 -@1497 := {fs : @147} -> {tys : @148} -> (h : @1489) -> (hf : @225) -> @13 (@1490 @36) @1393 -@1498 := @1486 @95 -@1501 := @13 (@1490 @95) @1393 -@1504 := {tys : @148} -> (h : @1489) -> (hf : @271) -> @1501 -@1505 := @1498 @109 -@1508 := (h : @1488 @1426) -> (hf : @145) -> @1501 -@1511 := @1505 (@705 @1487) @142 -@1512 := 4 -@1513 := @1398 @1512 -@1514 := @1399 @1512 -@1515 := @598 @1514 -@1516 := @1515 @606 -@1517 := @611 @1512 -@1524 := {fs : @147} -> {tys : @148} -> (h : @1516) -> (hf : @225) -> @13 (@1517 @36) @1393 -@1525 := @1513 @95 -@1528 := @13 (@1517 @95) @1393 -@1531 := {tys : @148} -> (h : @1516) -> (hf : @271) -> @1528 -@1532 := @1525 @109 -@1535 := (h : @1515 @1426) -> (hf : @145) -> @1528 -@1538 := @1532 (@705 @1514) @142 -@1539 := 5 -@1540 := @1398 @1539 -@1541 := @1399 @1539 -@1542 := @598 @1541 -@1543 := @1542 @606 -@1544 := @611 @1539 -@1551 := {fs : @147} -> {tys : @148} -> (h : @1543) -> (hf : @225) -> @13 (@1544 @36) @1393 -@1552 := @1540 @95 -@1555 := @13 (@1544 @95) @1393 -@1558 := {tys : @148} -> (h : @1543) -> (hf : @271) -> @1555 -@1559 := @1552 @109 -@1562 := (h : @1542 @1426) -> (hf : @145) -> @1555 -@1565 := @1559 (@705 @1541) @142 -@1566 := 6 -@1567 := @1398 @1566 -@1568 := @1399 @1566 -@1569 := @598 @1568 -@1570 := @1569 @606 -@1571 := @611 @1566 -@1578 := {fs : @147} -> {tys : @148} -> (h : @1570) -> (hf : @225) -> @13 (@1571 @36) @1393 -@1579 := @1567 @95 -@1582 := @13 (@1571 @95) @1393 -@1585 := {tys : @148} -> (h : @1570) -> (hf : @271) -> @1582 -@1586 := @1579 @109 -@1589 := (h : @1569 @1426) -> (hf : @145) -> @1582 -@1592 := @1586 (@705 @1568) @142 -@1593 := 7 -@1594 := @1398 @1593 -@1595 := @1399 @1593 -@1596 := @598 @1595 -@1597 := @1596 @606 -@1598 := @611 @1593 -@1605 := {fs : @147} -> {tys : @148} -> (h : @1597) -> (hf : @225) -> @13 (@1598 @36) @1393 -@1606 := @1594 @95 -@1609 := @13 (@1598 @95) @1393 -@1612 := {tys : @148} -> (h : @1597) -> (hf : @271) -> @1609 -@1613 := @1606 @109 -@1616 := (h : @1596 @1426) -> (hf : @145) -> @1609 -@1619 := @1613 (@705 @1595) @142 -@1631 := fun (__v : @1389) => - Reasoning.Clinic.Triage.Step.casesOn.{0} @1397 @4 @1432 @1458 @1484 @1511 @1538 @1565 @1592 @1619 -@1632 := @29 @149 -@1633 := @64 @149 -@1634 := @13 @1632 -@1635 := @1634 @31 -@1636 := @29 @151 -@1637 := @64 @151 -@1638 := @13 @1636 -@1639 := @1638 @31 -@1640 := @29 @153 -@1641 := @64 @153 -@1642 := @13 @1640 -@1643 := @1642 @31 -@1644 := @29 @36 -@1645 := @64 @36 -@1647 := @13 @1644 @31 -@1648 := @29 @38 -@1649 := @64 @38 -@1651 := @13 @1648 @31 -@1652 := @29 @40 -@1653 := @64 @40 -@1655 := @13 @1652 @31 -@1656 := @96 @1652 -@1657 := @1656 @95 -@1658 := @96 @1648 -@1659 := @1658 @1657 -@1660 := @96 @1644 -@1661 := @1660 @1659 -@1662 := @96 @1640 -@1663 := @1662 @1661 -@1664 := @96 @1636 -@1665 := @1664 @1663 -@1666 := @96 @1632 -@1667 := @1666 @1665 -@1670 := Prod.{0, 0} @35 @91 -@1673 := Prod.mk.{0, 0} @35 @91 -@1674 := @1673 @1539 -@1675 := @1674 @1652 -@1676 := @1673 @1512 -@1677 := @1676 @1648 -@1678 := @1673 @1485 -@1679 := @1678 @1644 -@1680 := @1673 @1392 -@1681 := @1680 @1640 -@1682 := @1673 @720 -@1683 := @1682 @1636 -@1684 := @1673 @9 -@1685 := @1684 @1632 -@1686 := @93 @1670 -@1687 := @94 @1670 -@1689 := @1687 @1685 @1686 -@1691 := @1687 @1683 @1689 -@1693 := @1687 @1681 @1691 -@1695 := @1687 @1679 @1693 -@1697 := @1687 @1677 @1695 -@1699 := @1687 @1675 @1697 -@1700 := Bool.true -@1701 := LexLeanTarget.TargetSyntax.Function -@1702 := LexLeanTarget.TargetSyntax.Program.functions -@1703 := @1702 @0 -@1704 := @93 @35 -@1705 := LexLeanTarget.TargetSyntax.Ty.unit -@1706 := LexLeanTarget.TargetSyntax.Value.unit -@1709 := LexLeanTarget.TargetSyntax.Expr.value @1705 @1706 -@1714 := LexLeanTarget.TargetSyntax.Function.mk @1704 @109 @1705 @1709 -@1719 := List.getD.{0} @1701 @1703 @9 @1714 -@1723 := fun (__e_n : @35) => - LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.RustCore.root @4 @9 -@1724 := @221 @1652 -@1725 := @1642 @38 -@1727 := @143 (@1666 @36) -@1733 := {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @1725) -> (hs : @225) -> @1727 @171 -@1734 := @1724 @31 -@1741 := {vs : @147} -> {ts : @148} -> (h : @1647) -> (hs : @225) -> @143 (@1664 @36) @260 -@1742 := @1734 @95 -@1743 := @1662 @95 -@1748 := {ts : @148} -> (h : @1651) -> (hs : @271) -> @143 @1743 @260 -@1749 := @1742 @109 -@1750 := @1660 @95 -@1751 := @143 @1750 -@1754 := (h : @1655) -> (hs : @145) -> @1751 @112 -@1755 := @1749 @1653 -@1756 := @1658 @95 -@1758 := @143 @1756 @112 -@1759 := (hs : @145) -> @1758 -@1760 := @1755 @142 -@1762 := @143 @1657 @112 -@1763 := @221 @1648 -@1764 := @1638 @38 -@1765 := @29 @157 -@1766 := @96 @1765 -@1768 := @143 (@1766 @36) -@1774 := {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @1764) -> (hs : @225) -> @1768 @171 -@1775 := @1763 @31 -@1780 := {vs : @147} -> {ts : @148} -> (h : @1643) -> (hs : @225) -> @1727 @260 -@1781 := @1775 @1657 -@1782 := @1751 @40 -@1783 := @1664 @1743 -@1788 := {ts : @148} -> (h : @1647) -> (hs : @1782) -> @143 @1783 @260 -@1789 := @1781 @112 -@1790 := @1662 @1750 -@1791 := @143 @1790 -@1794 := (h : @1651) -> (hs : @1758) -> @1791 @113 -@1795 := @1789 @1649 -@1796 := @1660 @1756 -@1798 := @143 @1796 @113 -@1799 := (hs : @1762) -> @1798 -@1800 := @1795 @1760 -@1802 := @143 @1659 @113 -@1803 := @221 @1644 -@1804 := @1634 @38 -@1805 := @29 @163 -@1806 := @96 @1805 -@1808 := @143 (@1806 @36) -@1814 := {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @1804) -> (hs : @225) -> @1808 @171 -@1815 := @1803 @31 -@1820 := {vs : @147} -> {ts : @148} -> (h : @1639) -> (hs : @225) -> @1768 @260 -@1821 := @1815 @1659 -@1822 := @1791 @40 -@1823 := @1666 @1783 -@1828 := {ts : @148} -> (h : @1643) -> (hs : @1822) -> @143 @1823 @260 -@1829 := @1821 @113 -@1830 := @1664 @1790 -@1831 := @143 @1830 -@1834 := (h : @1647) -> (hs : @1798) -> @1831 @114 -@1835 := @1829 @1645 -@1836 := @1662 @1796 -@1838 := @143 @1836 @114 -@1839 := (hs : @1802) -> @1838 -@1840 := @1835 @1800 -@1842 := @143 @1661 @114 -@1843 := @221 @1640 -@1844 := @13 @1765 -@1845 := @1844 @38 -@1846 := #9 -@1847 := @29 @1846 -@1848 := @96 @1847 -@1850 := @143 (@1848 @36) -@1856 := {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @1845) -> (hs : @225) -> @1850 @171 -@1857 := @1843 @31 -@1862 := {vs : @147} -> {ts : @148} -> (h : @1635) -> (hs : @225) -> @1808 @260 -@1863 := @1857 @1661 -@1864 := @1831 @40 -@1865 := @1766 @1823 -@1870 := {ts : @148} -> (h : @1639) -> (hs : @1864) -> @143 @1865 @260 -@1871 := @1863 @114 -@1872 := @1666 @1830 -@1873 := @143 @1872 -@1876 := (h : @1643) -> (hs : @1838) -> @1873 @115 -@1877 := @1871 @1641 -@1878 := @1664 @1836 -@1880 := @143 @1878 @115 -@1881 := (hs : @1842) -> @1880 -@1882 := @1877 @1840 -@1884 := @143 @1663 @115 -@1885 := @221 @1636 -@1886 := @13 @1805 -@1887 := @1886 @38 -@1888 := #10 -@1889 := @29 @1888 -@1890 := @96 @1889 -@1892 := @143 (@1890 @36) -@1898 := {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @1887) -> (hs : @225) -> @1892 @171 -@1899 := @1885 @31 -@1900 := @1844 @31 -@1905 := {vs : @147} -> {ts : @148} -> (h : @1900) -> (hs : @225) -> @1850 @260 -@1906 := @1899 @1663 -@1907 := @1873 @40 -@1908 := @1806 @1865 -@1913 := {ts : @148} -> (h : @1635) -> (hs : @1907) -> @143 @1908 @260 -@1914 := @1906 @115 -@1915 := @1766 @1872 -@1916 := @143 @1915 -@1919 := (h : @1639) -> (hs : @1880) -> @1916 @116 -@1920 := @1914 @1637 -@1921 := @1666 @1878 -@1923 := @143 @1921 @116 -@1924 := (hs : @1884) -> @1923 -@1925 := @1920 @1882 -@1927 := @143 @1665 @116 -@1928 := @221 @1632 -@1930 := @13 @1847 @38 -@1931 := #11 -@1932 := @29 @1931 -@1933 := @96 @1932 -@1941 := {t : @92} -> - {vs : @147} -> {ts : @148} -> (h : @1930) -> (hs : @225) -> @143 (@1933 @36) @171 -@1942 := @1928 @31 -@1948 := {vs : @147} -> {ts : @148} -> (h : @1886 @31) -> (hs : @225) -> @1892 @260 -@1949 := @1942 @1665 -@1950 := @1916 @40 -@1951 := @1848 @1908 -@1952 := @143 @1951 -@1956 := {ts : @148} -> (h : @1900) -> (hs : @1950) -> @1952 @260 -@1957 := @1949 @116 -@1958 := @1806 @1915 -@1959 := @143 @1958 -@1962 := (h : @1635) -> (hs : @1923) -> @1959 @117 -@1963 := @1957 @1633 -@1964 := @1766 @1921 -@1965 := @143 @1964 -@1967 := (hs : @1927) -> @1965 @117 -@1968 := @1963 @1925 -@1969 := @143 @1667 -@1970 := @1969 @117 -@1971 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.denote -@1977 := @1971 @149 @151 @153 @36 @38 @40 -@1978 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.__fits_0 -@1984 := @1978 @149 @151 @153 @36 @38 @40 -@1992 := @29 (Reasoning.Main.gatewayLevel @149 @151 @153 @36 @38 @40) -@1999 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.root @149 @151 @153 @36 @38 @40 -@2000 := Bool -@2001 := Ne.{1} -@2002 := LexLeanPreservation.Obs -@2003 := @2001 @2002 -@2004 := LexLeanPreservation.Rel -@2007 := @2003 (@2004 @40 @4) -@2008 := LexLeanPreservation.Obs.stuck -@2011 := (f : @2000) -> (v : @91) -> @2007 @2008 -@2013 := LexLeanPreservation.Rust.rel_ne_stuck @1984 -@2024 := (v : @91) -> @2003 (@2004 (@1978 @157 @149 @151 @153 @36 @38) @4) @2008 -@2025 := @2013 @1992 -@2029 := @2003 (@2004 @1984 @1992) @2008 -@2030 := @146 @1670 -@2031 := LexLeanPreservation.Rust.FunSem -@2037 := (n : @35) -> @2031 @1846 @163 @157 @4 @149 -@2038 := @596 @1701 -@2039 := @595 @2038 -@2046 := LexLeanRuntime.index (@146 @1701) @1701 (LexLeanRuntime.instIndexableList @1701) -@2050 := @2039 (@2046 (@1702 @1846) @149) -@2051 := @604 @1701 -@2052 := @2051 @151 -@2053 := @2050 @2052 -@2057 := @118 @1888 @1846 @163 @151 -@2058 := LexLeanTarget.TargetSyntax.Function.types -@2059 := @2058 @149 -@2060 := @2057 @2059 -@2061 := @596 @2030 -@2062 := @595 @2061 -@2063 := LexLeanTarget.TargetSemantics.bindAll -@2064 := LexLeanTarget.TargetSyntax.Function.parameters -@2069 := @2062 (@2063 (@2064 @157) @149 @1686) -@2070 := @604 @2030 -@2071 := @2070 @151 -@2072 := @2069 @2071 -@2073 := @596 @2000 -@2074 := @595 @2073 -@2075 := LexLeanPreservation.Rust.fnFallible -@2078 := @2074 (@2075 @1931 @1846) -@2079 := @604 @2000 -@2080 := @2079 @151 -@2081 := @2078 @2080 -@2082 := LexLeanPreservation.RunConv -@2083 := #13 -@2087 := @2082 @2083 @1888 @163 @151 -@2089 := @2003 @149 @2008 -@2090 := Exists.{1} -@2091 := LexLeanPreservation.Rust.ROut -@2092 := @2090 @2091 -@2093 := And -@2094 := LexLeanPreservation.Rust.RealizesFn -@2098 := @2093 (@2094 @1846 @163 @4) -@2099 := LexLeanPreservation.Rust.RCI -@2100 := #15 -@2101 := @2099 @2100 -@2102 := LexLeanPreservation.Rust.fnIdent -@2103 := @2102 @2083 -@2110 := (hne : @2089) -> @2092 (fun (ro : @2091) => @2098 (@2101 @2103 @1931 @4)) -@2125 := {p : @32} -> - {c : @33} -> - {A : @34} -> - {f : @35} -> - {fn : @1701} -> - {args : @147} -> - {env : @2030} -> - {F : @2000} -> - {o : @2002} -> - (hB : @2037) -> - (hfn : @2053) -> (hwt : @2060) -> (hbind : @2072) -> (hF : @2081) -> (hA : @2087) -> @2110 -@2127 := LexLeanPreservation.Rust.compose @0 -@2128 := @2031 @0 -@2133 := (n : @35) -> @2128 @163 @157 @4 @149 -@2134 := @2046 @1703 -@2137 := @2039 (@2134 @149) @2052 -@2141 := @129 @1846 @163 @151 @2059 -@2142 := @2082 @0 -@2145 := @2142 @1888 @163 @151 -@2159 := {c : @33} -> - {A : @34} -> - {f : @35} -> - {fn : @1701} -> - {args : @147} -> - {env : @2030} -> - {F : @2000} -> - {o : @2002} -> - (hB : @2133) -> - (hfn : @2137) -> (hwt : @2141) -> (hbind : @2072) -> (hF : @2081) -> (hA : @2145) -> @2110 -@2160 := @2127 @1 -@2161 := @2128 @1 -@2165 := (n : @35) -> @2161 @157 @4 @149 -@2168 := @137 @163 @151 @2059 -@2169 := @2075 @1 -@2172 := @2074 (@2169 @1846) @2080 -@2173 := @2099 @1 -@2183 := (hbind : @2072) -> - (hF : @2172) -> - (hA : @2145) -> (hne : @2089) -> @2092 (fun (ro : @2091) => @2098 (@2173 @2103 @1931 @4)) -@2193 := {A : @34} -> - {f : @35} -> - {fn : @1701} -> - {args : @147} -> - {env : @2030} -> - {F : @2000} -> {o : @2002} -> (hB : @2165) -> (hfn : @2137) -> (hwt : @2168) -> @2183 -@2194 := @2160 @2 -@2196 := @2161 @2 @4 -@2198 := (n : @35) -> @2196 @149 -@2199 := @143 @151 -@2200 := @2199 @2059 -@2209 := {f : @35} -> - {fn : @1701} -> - {args : @147} -> - {env : @2030} -> - {F : @2000} -> {o : @2002} -> (hB : @2198) -> (hfn : @2137) -> (hwt : @2200) -> @2183 -@2210 := @2194 @9 -@2212 := (n : @35) -> @2196 @9 -@2213 := @2134 @9 -@2214 := @2039 @2213 -@2215 := @2214 @2052 -@2216 := @2169 @9 -@2217 := @2074 @2216 -@2218 := @2217 @2080 -@2219 := @2142 @9 -@2221 := @2219 @163 @151 -@2223 := @2173 (@2102 @9) -@2231 := (hF : @2218) -> - (hA : @2221) -> (hne : @2089) -> @2092 (fun (ro : @2091) => @2098 (@2223 @1931 @4)) -@2240 := {fn : @1701} -> - {args : @147} -> - {env : @2030} -> - {F : @2000} -> - {o : @2002} -> (hB : @2212) -> (hfn : @2215) -> (hwt : @2200) -> (hbind : @2072) -> @2231 -@2241 := @2210 @1719 -@2243 := @2214 (@2051 @1719) -@2244 := @2058 @1719 -@2245 := @2199 @2244 -@2247 := @2063 (@2064 @1719) -@2259 := {args : @147} -> - {env : @2030} -> - {F : @2000} -> - {o : @2002} -> - (hB : @2212) -> - (hfn : @2243) -> (hwt : @2245) -> (hbind : @2062 (@2247 @149 @1686) @2071) -> @2231 -@2260 := @2241 @1667 -@2266 := @1933 (@1890 (@1848 (@1806 (@1766 (@1666 @95))))) -@2268 := @143 @2266 @2244 -@2269 := #12 -@2271 := @96 (@29 @2269) -@2277 := @2271 (@1933 (@1890 (@1848 (@1806 (@1766 @95))))) -@2281 := @2062 (@2247 @2277 @1686) @2071 -@2282 := #14 -@2284 := @96 (@29 @2282) -@2286 := @96 (@29 @2083) -@2292 := @2284 (@2286 (@2271 (@1933 (@1890 (@1848 @95))))) -@2294 := @2219 @2292 @151 -@2297 := @96 (@29 #17) -@2300 := @96 (@29 #16) -@2302 := @96 (@29 @2100) -@2323 := {env : @2030} -> - {F : @2000} -> - {o : @2002} -> - (hB : @2212) -> - (hfn : @2243) -> - (hwt : @2268) -> - (hbind : @2281) -> - (hF : @2218) -> - (hA : @2294) -> - (hne : @2089) -> - @2092 (fun (ro : @2091) => @2098 (@2223 (@2297 (@2300 (@2302 (@2284 (@2286 (@2271 @95)))))) @4)) -@2324 := @2260 @1699 -@2330 := @1890 (@1848 (@1806 (@1766 (@1666 (@1664 @95))))) -@2332 := @143 @2330 @2244 -@2355 := @2062 - (@2247 @2266 @1686) - (@2070 - (@1687 - (@1674 @1632) - (@1687 - (@1676 @1765) - (@1687 - (@1678 @1805) - (@1687 (@1680 @1847) (@1687 (@1682 @1889) (@1687 (@1684 @1932) @1686))))))) -@2361 := @2286 (@2271 (@1933 (@1890 (@1848 (@1806 @95))))) -@2383 := {F : @2000} -> - {o : @2002} -> - (hB : @2212) -> - (hfn : @2243) -> - (hwt : @2332) -> - (hbind : @2355) -> - (hF : @2218) -> - (hA : @2219 @2361 @151) -> - (hne : @2089) -> - @2092 (fun (ro : @2091) => @2098 (@2223 (@2300 (@2302 (@2284 (@2286 (@2271 (@1933 @95)))))) @4)) -@2384 := @2324 @1700 -@2385 := @1952 @2244 -@2408 := @2062 - (@2247 @2330 @1686) - (@2070 - (@1687 - (@1674 @1636) - (@1687 - (@1676 @1632) - (@1687 - (@1678 @1765) - (@1687 (@1680 @1805) (@1687 (@1682 @1847) (@1687 (@1684 @1889) @1686))))))) -@2410 := @2217 (@2079 @1700) -@2412 := @2219 @2277 @151 -@2413 := @2094 @1700 -@2435 := {o : @2002} -> - (hB : @2212) -> - (hfn : @2243) -> - (hwt : @2385) -> - (hbind : @2408) -> - (hF : @2410) -> - (hA : @2412) -> - (hne : @2089) -> - @2092 - (fun (ro : @2091) => - @2093 (@2413 @163 @4) (@2223 (@2302 (@2284 (@2286 (@2271 (@1933 (@1890 @95)))))) @4)) -@2436 := @2384 @1977 -@2437 := @1959 @2244 -@2460 := @2062 - (@2247 @1951 @1686) - (@2070 - (@1687 - (@1674 @1640) - (@1687 - (@1676 @1636) - (@1687 - (@1678 @1632) - (@1687 (@1680 @1765) (@1687 (@1682 @1805) (@1687 (@1684 @1847) @1686))))))) -@2461 := @2219 @2266 -@2467 := @1971 @1931 @1888 @1846 @163 @157 @149 -@2468 := @2461 @2467 -@2474 := @1971 @2269 @1931 @1888 @1846 @163 @157 -@2497 := (hB : @2212) -> - (hfn : @2243) -> - (hwt : @2437) -> - (hbind : @2460) -> - (hF : @2410) -> - (hA : @2468) -> - (hne : @2003 @2474 @2008) -> - @2092 - (fun (ro : @2091) => - @2093 (@2413 (@1971 @2282 @2083 @2269 @1931 @1888 @1846) @4) (@2223 @2292 @4)) -@2498 := @2436 @1723 -@2499 := @1965 @2244 -@2522 := @2062 - (@2247 @1958 @1686) - (@2070 - (@1687 - (@1674 @1644) - (@1687 - (@1676 @1640) - (@1687 - (@1678 @1636) - (@1687 (@1680 @1632) (@1687 (@1682 @1765) (@1687 (@1684 @1805) @1686))))))) -@2523 := @2219 @2330 -@2529 := @1971 @1888 @1846 @163 @157 @149 @151 -@2552 := (hfn : @2243) -> - (hwt : @2499) -> - (hbind : @2522) -> - (hF : @2410) -> - (hA : @2523 @2529) -> - (hne : @2003 @2467 @2008) -> - @2092 - (fun (ro : @2091) => - @2093 (@2413 (@1971 @2083 @2269 @1931 @1888 @1846 @163) @4) (@2223 @2361 @4)) -@2555 := @2498 (@704 @2038 @2213) -@2556 := @1969 @2244 -@2579 := @2062 - (@2247 @1964 @1686) - (@2070 - (@1687 - (@1674 @1648) - (@1687 - (@1676 @1644) - (@1687 - (@1678 @1640) - (@1687 (@1680 @1636) (@1687 (@1682 @1632) (@1687 (@1684 @1765) @1686))))))) -@2580 := @2219 @1951 -@2586 := @1971 @1846 @163 @157 @149 @151 @153 -@2602 := (hwt : @2556) -> - (hbind : @2579) -> - (hF : @2410) -> - (hA : @2580 @2586) -> - (hne : @2003 @2529 @2008) -> @2092 (fun (ro : @2091) => @2093 (@2413 @2474 @4) (@2223 @2277 @4)) -@2603 := @2555 @1968 -@2605 := @2247 @1667 @1686 -@2608 := @2062 @2605 (@2070 @1699) -@2609 := @2219 @1958 -@2615 := @1971 @163 @157 @149 @151 @153 @36 -@2630 := (hbind : @2608) -> - (hF : @2410) -> - (hA : @2609 @2615) -> - (hne : @2003 @2586 @2008) -> @2092 (fun (ro : @2091) => @2093 (@2413 @2467 @4) (@2223 @2266 @4)) -@2633 := @2603 (@704 @2061 @2605) -@2634 := @2219 @1964 -@2640 := @1971 @157 @149 @151 @153 @36 @38 -@2654 := (hF : @2410) -> - (hA : @2634 @2640) -> - (hne : @2003 @2615 @2008) -> @2092 (fun (ro : @2091) => @2093 (@2413 @2529 @4) (@2223 @2330 @4)) -@2657 := @2633 (@704 @2073 @2216) -@2671 := (hA : @2219 @1667 @1977) -> - (hne : @2003 @2640 @2008) -> @2092 (fun (ro : @2091) => @2093 (@2413 @2586 @4) (@2223 @1951 @4)) -@2672 := @2657 @1999 -@2683 := (hne : @2003 @1977 @2008) -> - @2092 (fun (ro : @2091) => @2093 (@2413 @2615 @4) (@2223 @1958 @4)) -@2684 := @2672 @2025 -@2690 := @2093 (@2413 @2640 @4) (@2223 @1964 @4) -@2692 := @2092 (fun (ro : @2091) => @2690) -@2694 := @2092 (fun (__e_ro : @2091) => @2690) -@2703 := LexLeanPreservation.Rust.RepresentableL - (@1664 (@1662 (@1660 (@1658 (@1656 (@96 @42 @95)))))) -@2704 := (__e_hrep : @2703) -> @2694 -@2705 := fun (__e_hrep : @2703) => @2684 -@2706 := (infection : @35) -> @2704 -@2707 := fun (infection : @35) => @2705 -@2708 := (systolic : @35) -> @2706 -@2709 := fun (systolic : @35) => @2707 -@2710 := (whiteCells : @35) -> @2708 -@2711 := fun (whiteCells : @35) => @2709 -@2712 := (respiratoryRate : @35) -> @2710 -@2713 := fun (respiratoryRate : @35) => @2711 -@2714 := (heartRate : @35) -> @2712 -@2715 := fun (heartRate : @35) => @2713 -@2716 := (temperature : @35) -> @2714 -@2717 := fun (temperature : @35) => @2715 -\end{coremodule} -\end{lexlean} diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R1/RustCore.lean b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R1/RustCore.lean deleted file mode 100644 index 247bf8a8e..000000000 --- a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R1/RustCore.lean +++ /dev/null @@ -1,376 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.RustCore -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [{ constructors := [[.nat, .nat, .nat, .nat, .nat, .nat]] }, - { constructors := [[(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]] }, - { constructors := [[], [], [], [], [], [], [], []] }], functions := (( - { parameters := [0, 1, 2, 3, 4, 5], types := [.nat, .nat, .nat, .nat, .nat, .nat], result := .nat, - body := (.«match» .nat (.call 1 [(.build (.adt 0) (.adt 0) [(.var 0), (.var 1), (.var 2), (.var 3), (.var 4), (.var 5)])]) [(.arm .ok [6] (.var 6)), (.arm .error [7] (.value .nat (.nat 9)))]) }) ::( - { parameters := [0], types := [(.adt 0)], result := (.result .nat (.pair .bool .bool)), - body := (.call 2 [(.var 0)]) }) ::( - { parameters := [0], types := [(.adt 0)], result := (.result .nat (.pair .bool .bool)), - body := (.call 3 [(.var 0)]) }) ::( - { parameters := [0], types := [(.adt 0)], result := (.result .nat (.pair .bool .bool)), - body := (.«let» 1 (.pair (.adt 1) .bool) (.call 4 [(.var 0)]) (.«match» (.result .nat (.pair .bool .bool)) (.second (.var 1)) [(.arm .true [] (.call 5 [(.var 0), (.first (.var 1))])), (.arm .false [] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])]))])) }) ::( - { parameters := [0], types := [(.adt 0)], result := (.pair (.adt 1) .bool), - body := (.call 6 [(.closure 7 []), (.value .nat (.nat 11)), (.call 8 [(.var 0)])]) }) ::( - { parameters := [0, 1], types := [(.adt 0), (.adt 1)], result := (.result .nat (.pair .bool .bool)), - body := (.«match» (.result .nat (.pair .bool .bool)) (.call 9 [(.var 0), (.var 1)]) [(.arm .some [2] (.build .ok (.result .nat (.pair .bool .bool)) [(.var 2)])), (.arm .none [] (.«match» (.result .nat (.pair .bool .bool)) (.call 10 [(.var 1)]) [(.arm .some [3] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])])])), (.arm .none [] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])])]))]))]) }) ::( - { parameters := [0, 1, 2], types := [(.fn [(.adt 1)] (.option (.adt 1))), .nat, (.adt 1)], result := (.pair (.adt 1) .bool), - body := (.«match» (.pair (.adt 1) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.adt 1) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.adt 1) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.adt 1) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 6 [(.var 0), (.var 3), (.var 4)]))]))]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.«match» (.option (.adt 1)) (.call 11 [(.var 0)]) [(.arm .none [] (.build .none (.option (.adt 1)) [])), (.arm .some [1] (.call 12 [(.var 0), (.var 1)]))]) }) ::( - { parameters := [0], types := [(.adt 0)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.var 0), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0))]) }) ::( - { parameters := [0, 1], types := [(.adt 0), (.adt 1)], result := (.option .nat), - body := (.«match» (.option .nat) (.call 10 [(.var 1)]) [(.arm .none [] (.build .none (.option .nat) [])), (.arm .some [2] (.cond (.call 13 [(.var 0), (.var 2)]) (.build .some (.option .nat) [(.var 2)]) (.build .none (.option .nat) [])))]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option .nat), - body := (.build .some (.option .nat) [(.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 2)), - body := (.«match» (.option (.adt 2)) (.«match» (.option (.adt 2)) (.«match» (.option (.adt 2)) (.cond (.call 14 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 0) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [1] (.build .some (.option (.adt 2)) [(.var 1)])), (.arm .none [] (.cond (.call 15 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 1) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]) [(.arm .some [2] (.build .some (.option (.adt 2)) [(.var 2)])), (.arm .none [] (.«match» (.option (.adt 2)) (.cond (.call 16 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 2) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [3] (.build .some (.option (.adt 2)) [(.var 3)])), (.arm .none [] (.cond (.call 17 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 3) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]))]) [(.arm .some [4] (.build .some (.option (.adt 2)) [(.var 4)])), (.arm .none [] (.«match» (.option (.adt 2)) (.«match» (.option (.adt 2)) (.cond (.call 18 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 4) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [5] (.build .some (.option (.adt 2)) [(.var 5)])), (.arm .none [] (.cond (.call 19 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 5) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]) [(.arm .some [6] (.build .some (.option (.adt 2)) [(.var 6)])), (.arm .none [] (.«match» (.option (.adt 2)) (.cond (.call 20 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 6) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [7] (.build .some (.option (.adt 2)) [(.var 7)])), (.arm .none [] (.cond (.call 21 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 7) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]))]))]) }) ::( - { parameters := [0, 1], types := [(.adt 1), (.adt 2)], result := (.option (.adt 1)), - body := (.«match» (.option (.adt 1)) (.var 1) [(.arm (.adt 0) [] (.call 22 [(.var 0)])), (.arm (.adt 1) [] (.call 23 [(.var 0)])), (.arm (.adt 2) [] (.call 24 [(.var 0)])), (.arm (.adt 3) [] (.call 25 [(.var 0)])), (.arm (.adt 4) [] (.call 26 [(.var 0)])), (.arm (.adt 5) [] (.call 27 [(.var 0)])), (.arm (.adt 6) [] (.call 28 [(.var 0)])), (.arm (.adt 7) [] (.call 29 [(.var 0)]))]) }) ::( - { parameters := [0, 1], types := [(.adt 0), .nat], result := .bool, - body := (.cond (.prim .natLe [(.var 1), (.value .nat (.nat 3))]) (.cond (.prim .natEq [(.var 1), (.value .nat (.nat 3))]) (.build .true .bool []) (.prim .boolNot [(.cond (.call 30 [(.var 0)]) (.cond (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 1))]) (.cond (.call 31 [(.var 0)]) (.call 32 [(.var 0)]) (.build .false .bool [])) (.build .false .bool [])) (.build .false .bool []))])) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 1), (.value .nat (.nat 0))]) (.call 31 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 2), (.value .nat (.nat 0))]) (.call 32 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 3), (.value .nat (.nat 0))]) (.call 33 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 4), (.value .nat (.nat 0))]) (.call 34 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 0))]) (.prim .natLe [(.value .nat (.nat 2)), (.prim .natAdd [(.prim .natAdd [(.prim .natAdd [(.field (.var 0) 1), (.field (.var 0) 2)]), (.field (.var 0) 3)]), (.field (.var 0) 4)])]) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 0))]) (.cond (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 1))]) (.prim .natEq [(.field (.field (.var 0) 0) 5), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 7), (.value .nat (.nat 0))]) (.cond (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 1))]) (.call 30 [(.field (.var 0) 0)]) (.build .false .bool [])) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natLt [(.field (.var 0) 8), (.value .nat (.nat 3))]) (.cond (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 0))]) (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .true .bool []) (.cond (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 1))]) (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .true .bool []) (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 2))]) (.prim .natEq [(.field (.var 0) 7), (.value .nat (.nat 1))]) (.build .false .bool [])))) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 14 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 35 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 15 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 36 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 16 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 37 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 17 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 38 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 18 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 39 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 19 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 40 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 20 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 41 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 21 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 42 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.prim .natLt [(.field (.var 0) 4), (.value .nat (.nat 90))]) }) ::( - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.prim .natLt [(.value .nat (.nat 380)), (.field (.var 0) 0)]) }) ::( - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.prim .natLt [(.value .nat (.nat 90)), (.field (.var 0) 1)]) }) ::( - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.prim .natLt [(.value .nat (.nat 20)), (.field (.var 0) 2)]) }) ::( - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.prim .natLt [(.value .nat (.nat 12)), (.field (.var 0) 3)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.value .nat (.nat 1)), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.value .nat (.nat 1)), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.value .nat (.nat 1)), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.value .nat (.nat 1)), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.value .nat (.nat 1)), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.value .nat (.nat 1)), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.value .nat (.nat 1)), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.prim .natAdd [(.field (.var 0) 8), (.value .nat (.nat 1))])]) }) ::[]) } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .core, items := ((.enum (.adt 0) [{ number := 0, fields := [.nat, .nat, .nat, .nat, .nat, .nat] }]) :: - (.enum (.adt 1) [{ number := 0, fields := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat] }]) :: - (.enum (.adt 2) [{ number := 0, fields := [] }, { number := 1, fields := [] }, { number := 2, fields := [] }, { number := 3, fields := [] }, { number := 4, fields := [] }, { number := 5, fields := [] }, { number := 6, fields := [] }, { number := 7, fields := [] }]) :: - (.enum (.fn 0) [{ number := 7, fields := [] }]) :: - (.apply 0 [(.adt 1)] (.option (.adt 1)) true [{ function := 7, captures := [], functionFallible := true }]) :: - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := .nat }, { pattern := (.bind (.generated .binding 3)), type := .nat }, { pattern := (.bind (.generated .binding 4)), type := .nat }, { pattern := (.bind (.generated .binding 5)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 1)) none (.call (.function 1) [(.construct (.adt 0 0) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1)), (.copy (.generated .binding 2)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4)), (.copy (.generated .binding 5))])] true))] (.matchOn (.move (.generated .holder 1)) [(.mk (.ok (.bind (.generated .binding 6))) (.mk [] (.succeed (.copy (.generated .binding 6))))), (.mk (.err .wild) (.mk [] (.succeed (.lit (.nat 9)))))]))) :: - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible (.result .nat (.pair .bool .bool))) (.mk [] (.call (.function 2) [(.move (.generated .binding 0))] false))) :: - (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible (.result .nat (.pair .bool .bool))) (.mk [] (.call (.function 3) [(.move (.generated .binding 0))] false))) :: - (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible (.result .nat (.pair .bool .bool))) (.mk [(.mk (.bind (.generated .binding 1)) (some (.pair (.adt 1) .bool)) (.call (.function 4) [(.clone (.generated .binding 0))] true)), (.mk (.bind (.generated .holder 3)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 2))]) none (.move (.generated .binding 1)))] (.move (.generated .part 2)))))] (.cond (.move (.generated .holder 3)) (.mk [] (.succeed (.call (.function 5) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 4)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 4))))] false))) (.mk [] (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))])))))) :: - (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible (.pair (.adt 1) .bool)) (.mk [] (.call (.function 6) [(.construct (.closure 0 7) []), (.lit (.nat 11)), (.call (.function 8) [(.move (.generated .binding 0))] false)] false))) :: - (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 1) }] (.result .nat (.pair .bool .bool)) (.mk [(.mk (.bind (.generated .holder 5)) none (.call (.function 9) [(.move (.generated .binding 0)), (.clone (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 5)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 6)) none (.call (.function 10) [(.move (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 6)) [(.mk .none (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))]))), (.mk (.some .wild) (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))])))]))) :: - (.function (.generated .function 6) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := (.adt 1) }] (.fallible (.pair (.adt 1) .bool)) (.mk [(.mk (.bind (.generated .holder 7)) none (.copy (.generated .binding 1)))] (.cond (.isZero (.generated .holder 7)) (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 7))), (.mk (.bind (.generated .holder 9)) none (.block (.mk [(.mk (.bind (.generated .callee 8)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 8) [(.clone (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 9)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 6) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))]))))) :: - (.function (.generated .function 7) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.fallible (.option (.adt 1))) (.mk [(.mk (.bind (.generated .holder 10)) none (.call (.function 11) [(.clone (.generated .binding 0))] true))] (.matchOn (.move (.generated .holder 10)) [(.mk .none (.mk [] (.succeed (.construct (.none (.adt 1)) [])))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.call (.function 12) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false)))]))) :: - (.function (.generated .function 8) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.move (.generated .binding 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0))]))) :: - (.function (.generated .function 9) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 1) }] (.option .nat) (.mk [(.mk (.bind (.generated .holder 11)) none (.call (.function 10) [(.move (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 11)) [(.mk .none (.mk [] (.construct (.none .nat) []))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.cond (.call (.function 13) [(.move (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.mk [] (.construct .some [(.copy (.generated .binding 2))])) (.mk [] (.construct (.none .nat) [])))))]))) :: - (.function (.generated .function 10) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.option .nat) (.mk [] (.construct .some [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 12))]) (.mk [] (.move (.generated .part 12))))])]))) :: - (.function (.generated .function 11) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.fallible (.option (.adt 2))) (.mk [(.mk (.bind (.generated .holder 16)) none (.block (.mk [(.mk (.bind (.generated .holder 14)) none (.block (.mk [(.mk (.bind (.generated .holder 13)) none (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 0) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [] (.cond (.call (.function 15) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 1) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.construct .some [(.move (.generated .binding 1))])))]))))] (.matchOn (.move (.generated .holder 14)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 15)) none (.cond (.call (.function 16) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 2) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 15)) [(.mk .none (.mk [] (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 3) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.construct .some [(.move (.generated .binding 3))])))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.construct .some [(.move (.generated .binding 2))])))]))))] (.matchOn (.move (.generated .holder 16)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 18)) none (.block (.mk [(.mk (.bind (.generated .holder 17)) none (.cond (.call (.function 18) [(.clone (.generated .binding 0))] true) (.mk [] (.construct .some [(.construct (.adt 2 4) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 17)) [(.mk .none (.mk [] (.cond (.call (.function 19) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 5) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.construct .some [(.move (.generated .binding 5))])))]))))] (.matchOn (.move (.generated .holder 18)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 19)) none (.cond (.call (.function 20) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 6) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 19)) [(.mk .none (.mk [] (.cond (.call (.function 21) [(.move (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.construct (.adt 2 7) [])]))) (.mk [] (.succeed (.construct (.none (.adt 2)) [])))))), (.mk (.some (.bind (.generated .binding 7))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 7))]))))]))), (.mk (.some (.bind (.generated .binding 6))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 6))]))))]))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 4))]))))]))) :: - (.function (.generated .function 12) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 2) }] (.fallible (.option (.adt 1))) (.mk [(.mk (.bind (.generated .holder 20)) none (.move (.generated .binding 1)))] (.matchOn (.move (.generated .holder 20)) [(.mk (.adt 2 0 []) (.mk [] (.succeed (.call (.function 22) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 1 []) (.mk [] (.succeed (.call (.function 23) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 2 []) (.mk [] (.succeed (.call (.function 24) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 3 []) (.mk [] (.succeed (.call (.function 25) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 4 []) (.mk [] (.call (.function 26) [(.move (.generated .binding 0))] false))), (.mk (.adt 2 5 []) (.mk [] (.succeed (.call (.function 27) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 6 []) (.mk [] (.succeed (.call (.function 28) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 7 []) (.mk [] (.call (.function 29) [(.move (.generated .binding 0))] false)))]))) :: - (.function (.generated .function 13) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .operand 21)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 22)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natLe) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false) (.mk [(.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 24)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 28)) none (.cond (.call (.function 30) [(.clone (.generated .binding 0))] false) (.mk [(.mk (.bind (.generated .operand 26)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 25))]) (.mk [] (.move (.generated .part 25))))])), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] false) (.mk [] (.cond (.call (.function 31) [(.clone (.generated .binding 0))] false) (.mk [] (.call (.function 32) [(.move (.generated .binding 0))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))))] (.call (.runtime .boolNot) [(.move (.generated .operand 28))] false)))) (.mk [] (.lit (.bool false)))))) :: - (.function (.generated .function 14) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .operand 30)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 29)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 29))))])), (.mk (.bind (.generated .operand 31)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] false) (.mk [] (.call (.function 31) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 32)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 32))))])] false)) (.mk [] (.lit (.bool false)))))) :: - (.function (.generated .function 15) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .operand 34)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 33)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 33))))])), (.mk (.bind (.generated .operand 35)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 34)), (.move (.generated .operand 35))] false) (.mk [] (.call (.function 32) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 36)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 36))))])] false)) (.mk [] (.lit (.bool false)))))) :: - (.function (.generated .function 16) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .operand 38)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 37)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 37))))])), (.mk (.bind (.generated .operand 39)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 38)), (.move (.generated .operand 39))] false) (.mk [] (.call (.function 33) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 40)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 40))))])] false)) (.mk [] (.lit (.bool false)))))) :: - (.function (.generated .function 17) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .operand 42)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 41)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 41))))])), (.mk (.bind (.generated .operand 43)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 42)), (.move (.generated .operand 43))] false) (.mk [] (.call (.function 34) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 44)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 44))))])] false)) (.mk [] (.lit (.bool false)))))) :: - (.function (.generated .function 18) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.fallible .bool) (.mk [(.mk (.bind (.generated .operand 46)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 45)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 45))))])), (.mk (.bind (.generated .operand 47)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 46)), (.move (.generated .operand 47))] false) (.mk [(.mk (.bind (.generated .operand 58)) none (.lit (.nat 2))), (.mk (.bind (.generated .operand 59)) none (.block (.mk [(.mk (.bind (.generated .operand 56)) none (.block (.mk [(.mk (.bind (.generated .operand 53)) none (.block (.mk [(.mk (.bind (.generated .operand 50)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 48)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 48))))])), (.mk (.bind (.generated .operand 51)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 49)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 49))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 50)), (.move (.generated .operand 51))] true)))), (.mk (.bind (.generated .operand 54)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 52)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 52))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] true)))), (.mk (.bind (.generated .operand 57)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 55)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 55))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 56)), (.move (.generated .operand 57))] true))))] (.succeed (.call (.runtime .natLe) [(.move (.generated .operand 58)), (.move (.generated .operand 59))] false))) (.mk [] (.succeed (.lit (.bool false))))))) :: - (.function (.generated .function 19) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .operand 61)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 60)), .wild, .wild]) (.mk [] (.move (.generated .part 60))))])), (.mk (.bind (.generated .operand 62)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 61)), (.move (.generated .operand 62))] false) (.mk [(.mk (.bind (.generated .operand 64)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 63)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 63))))])), (.mk (.bind (.generated .operand 65)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 64)), (.move (.generated .operand 65))] false) (.mk [(.mk (.bind (.generated .operand 69)) none (.block (.mk [(.mk (.bind (.generated .holder 68)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 67)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 67))))]))] (.matchOn (.move (.generated .holder 68)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 66))]) (.mk [] (.move (.generated .part 66))))])))), (.mk (.bind (.generated .operand 70)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 69)), (.move (.generated .operand 70))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))))) :: - (.function (.generated .function 20) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .operand 72)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 71)), .wild]) (.mk [] (.move (.generated .part 71))))])), (.mk (.bind (.generated .operand 73)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 72)), (.move (.generated .operand 73))] false) (.mk [(.mk (.bind (.generated .operand 75)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 74)), .wild, .wild]) (.mk [] (.move (.generated .part 74))))])), (.mk (.bind (.generated .operand 76)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 75)), (.move (.generated .operand 76))] false) (.mk [] (.call (.function 30) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 77)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 77))))])] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))))) :: - (.function (.generated .function 21) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .operand 79)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 78))]) (.mk [] (.move (.generated .part 78))))])), (.mk (.bind (.generated .operand 80)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 79)), (.move (.generated .operand 80))] false) (.mk [(.mk (.bind (.generated .operand 82)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))])), (.mk (.bind (.generated .operand 83)) none (.lit (.nat 0)))] (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 82)), (.move (.generated .operand 83))] false) (.mk [(.mk (.bind (.generated .operand 85)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 84)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 84))))])), (.mk (.bind (.generated .operand 86)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 85)), (.move (.generated .operand 86))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 88)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 87))]) (.mk [] (.move (.generated .part 87))))])), (.mk (.bind (.generated .operand 89)) none (.lit (.nat 1)))] (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 88)), (.move (.generated .operand 89))] false) (.mk [(.mk (.bind (.generated .operand 91)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 90)), .wild, .wild]) (.mk [] (.move (.generated .part 90))))])), (.mk (.bind (.generated .operand 92)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 94)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 93))]) (.mk [] (.move (.generated .part 93))))])), (.mk (.bind (.generated .operand 95)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 94)), (.move (.generated .operand 95))] false) (.mk [(.mk (.bind (.generated .operand 97)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 96)), .wild]) (.mk [] (.move (.generated .part 96))))])), (.mk (.bind (.generated .operand 98)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 97)), (.move (.generated .operand 98))] false)) (.mk [] (.lit (.bool false))))))))) (.mk [] (.lit (.bool false)))))) :: - (.function (.generated .function 22) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.option (.adt 1)) (.mk [] (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 35) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))))) :: - (.function (.generated .function 23) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.option (.adt 1)) (.mk [] (.cond (.call (.function 15) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 36) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))))) :: - (.function (.generated .function 24) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.option (.adt 1)) (.mk [] (.cond (.call (.function 16) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 37) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))))) :: - (.function (.generated .function 25) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.option (.adt 1)) (.mk [] (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 38) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))))) :: - (.function (.generated .function 26) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.fallible (.option (.adt 1))) (.mk [] (.cond (.call (.function 18) [(.clone (.generated .binding 0))] true) (.mk [] (.succeed (.construct .some [(.call (.function 39) [(.move (.generated .binding 0))] false)]))) (.mk [] (.succeed (.construct (.none (.adt 1)) [])))))) :: - (.function (.generated .function 27) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.option (.adt 1)) (.mk [] (.cond (.call (.function 19) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 40) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))))) :: - (.function (.generated .function 28) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.option (.adt 1)) (.mk [] (.cond (.call (.function 20) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 41) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))))) :: - (.function (.generated .function 29) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.fallible (.option (.adt 1))) (.mk [] (.cond (.call (.function 21) [(.clone (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.call (.function 42) [(.move (.generated .binding 0))] true)]))) (.mk [] (.succeed (.construct (.none (.adt 1)) [])))))) :: - (.function (.generated .function 30) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .operand 100)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 99)), .wild]) (.mk [] (.move (.generated .part 99))))])), (.mk (.bind (.generated .operand 101)) none (.lit (.nat 90)))] (.call (.runtime .natLt) [(.move (.generated .operand 100)), (.move (.generated .operand 101))] false))) :: - (.function (.generated .function 31) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .operand 103)) none (.lit (.nat 380))), (.mk (.bind (.generated .operand 104)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [(.bind (.generated .part 102)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 102))))]))] (.call (.runtime .natLt) [(.move (.generated .operand 103)), (.move (.generated .operand 104))] false))) :: - (.function (.generated .function 32) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .operand 106)) none (.lit (.nat 90))), (.mk (.bind (.generated .operand 107)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 105)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 105))))]))] (.call (.runtime .natLt) [(.move (.generated .operand 106)), (.move (.generated .operand 107))] false))) :: - (.function (.generated .function 33) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .operand 109)) none (.lit (.nat 20))), (.mk (.bind (.generated .operand 110)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 108)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 108))))]))] (.call (.runtime .natLt) [(.move (.generated .operand 109)), (.move (.generated .operand 110))] false))) :: - (.function (.generated .function 34) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .operand 112)) none (.lit (.nat 12))), (.mk (.bind (.generated .operand 113)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, (.bind (.generated .part 111)), .wild, .wild]) (.mk [] (.move (.generated .part 111))))]))] (.call (.runtime .natLt) [(.move (.generated .operand 112)), (.move (.generated .operand 113))] false))) :: - (.function (.generated .function 35) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 114)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 114))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 115)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 115))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 116)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 116))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 117)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 117))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 118)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 118))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 119)), .wild, .wild]) (.mk [] (.move (.generated .part 119))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 120)), .wild]) (.mk [] (.move (.generated .part 120))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 121))]) (.mk [] (.move (.generated .part 121))))])]))) :: - (.function (.generated .function 36) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 122)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 122))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 123)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 123))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 124)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 124))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 125)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 125))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 126)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 126))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 127)), .wild, .wild]) (.mk [] (.move (.generated .part 127))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 128)), .wild]) (.mk [] (.move (.generated .part 128))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 129))]) (.mk [] (.move (.generated .part 129))))])]))) :: - (.function (.generated .function 37) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 130)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 130))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 131)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 131))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 132)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 132))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 133)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 133))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 134)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 134))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 135)), .wild, .wild]) (.mk [] (.move (.generated .part 135))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 136)), .wild]) (.mk [] (.move (.generated .part 136))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 137))]) (.mk [] (.move (.generated .part 137))))])]))) :: - (.function (.generated .function 38) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 138)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 138))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 139)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 139))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 140)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 140))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 141)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 141))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 142)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 142))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 143)), .wild, .wild]) (.mk [] (.move (.generated .part 143))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 144)), .wild]) (.mk [] (.move (.generated .part 144))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 145))]) (.mk [] (.move (.generated .part 145))))])]))) :: - (.function (.generated .function 39) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 146)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 146))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 147)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 147))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 148)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 148))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 149)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 149))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 150)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 150))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 151)), .wild, .wild]) (.mk [] (.move (.generated .part 151))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 152)), .wild]) (.mk [] (.move (.generated .part 152))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 153))]) (.mk [] (.move (.generated .part 153))))])]))) :: - (.function (.generated .function 40) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 154)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 154))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 155)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 155))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 156)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 156))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 157)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 157))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 158)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 158))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 159)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 159))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 160)), .wild]) (.mk [] (.move (.generated .part 160))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 161))]) (.mk [] (.move (.generated .part 161))))])]))) :: - (.function (.generated .function 41) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 162)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 162))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 163)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 163))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 164)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 164))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 165)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 165))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 166)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 166))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 167)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 167))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 168)), .wild, .wild]) (.mk [] (.move (.generated .part 168))))]), (.lit (.nat 1)), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 169))]) (.mk [] (.move (.generated .part 169))))])]))) :: - (.function (.generated .function 42) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.fallible (.adt 1)) (.mk [] (.succeed (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 170)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 170))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 171)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 171))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 172)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 172))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 173)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 173))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 174)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 174))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 175)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 175))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 176)), .wild, .wild]) (.mk [] (.move (.generated .part 176))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 177)), .wild]) (.mk [] (.move (.generated .part 177))))]), (.block (.mk [(.mk (.bind (.generated .operand 179)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 178))]) (.mk [] (.move (.generated .part 178))))])), (.mk (.bind (.generated .operand 180)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 179)), (.move (.generated .operand 180))] true)))])))) :: - []) } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [(([(.adt 1)], (.option (.adt 1))), true)] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.call (.function 1) [(.construct (.adt 0 0) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1)), (.copy (.generated .binding 2)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4)), (.copy (.generated .binding 5))])] true))], (.matchOn (.move (.generated .holder 1)) [(.mk (.ok (.bind (.generated .binding 6))) (.mk [] (.succeed (.copy (.generated .binding 6))))), (.mk (.err .wild) (.mk [] (.succeed (.lit (.nat 9)))))]), [(5, .nat, (some 5)), (4, .nat, (some 4)), (3, .nat, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.matchArms (st := (.result .nat (.pair .bool .bool))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))))))) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(6, .nat, (some 6)), (5, .nat, (some 5)), (4, .nat, (some 4)), (3, .nat, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, .nat, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.copy (.generated .binding 6)))) (Corr.mCons (Γ' := [(7, (.pair .bool .bool), none), (5, .nat, (some 5)), (4, .nat, (some 4)), (3, .nat, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, .nat, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.lit (.nat 9)))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl)))) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 2) [(.move (.generated .binding 0))] false), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.callF (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 3) [(.move (.generated .binding 0))] false), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.callF (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)⟩⟩ - -theorem fun3 : FunOK program krate flags 3 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some (.pair (.adt 1) .bool)) (.call (.function 4) [(.clone (.generated .binding 0))] true)), (.mk (.bind (.generated .holder 3)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 2))]) none (.move (.generated .binding 1)))] (.move (.generated .part 2)))))], (.cond (.move (.generated .holder 3)) (.mk [] (.succeed (.call (.function 5) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 4)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 4))))] false))) (.mk [] (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))])))), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.matchBool (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 2))]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 2))) (Corr.second (ta := (.adt 1)) (tb := .bool) (Corr.var rfl rfl) rfl)) rfl rfl (Corr.kIf (la := []) (ta := (.succeed (.call (.function 5) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 4)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 4))))] false))) (lb := []) (tb := (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))) (Corr.fOfB (Corr.callOps (ts := [(.adt 0), (.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 4)), .wild]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 4))) (Corr.first (ta := (.adt 1)) (tb := .bool) (Corr.var rfl rfl) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)))))⟩⟩ - -theorem fun4 : FunOK program krate flags 4 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 6) [(.construct (.closure 0 7) []), (.lit (.nat 11)), (.call (.function 8) [(.move (.generated .binding 0))] false)] false), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.callF (ts := [(.fn [(.adt 1)] (.option (.adt 1))), .nat, (.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl)⟩⟩ - -theorem fun5 : FunOK program krate flags 5 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 5)) none (.call (.function 9) [(.move (.generated .binding 0)), (.clone (.generated .binding 1))] false))], (.matchOn (.move (.generated .holder 5)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 6)) none (.call (.function 10) [(.move (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 6)) [(.mk .none (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))]))), (.mk (.some .wild) (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))])))]), [(1, (.adt 1), (some 1)), (0, (.adt 0), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0), (.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.adt 1), (some 1)), (0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 6)) none (.call (.function 10) [(.move (.generated .binding 1))] false))]) (tail := (.matchOn (.move (.generated .holder 6)) [(.mk .none (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))]))), (.mk (.some .wild) (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))])) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, (.adt 1), (some 1)), (0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.adt 1), (some 1)), (0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))])) (Corr.mCons (Γ' := [(3, .nat, none), (1, (.adt 1), (some 1)), (0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)) rfl rfl rfl)) rfl rfl rfl)⟩⟩ - -theorem fun6 : FunOK program krate flags 6 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 7)) none (.copy (.generated .binding 1)))], (.cond (.isZero (.generated .holder 7)) (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 7))), (.mk (.bind (.generated .holder 9)) none (.block (.mk [(.mk (.bind (.generated .callee 8)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 8) [(.clone (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 9)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 6) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))]))), [(2, (.adt 1), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.adt 1)] (.option (.adt 1))), (some 0))], rfl, rfl, - (Corr.matchNat (sl := (some 3)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (lb := [(.mk (.bind (.generated .holder 9)) none (.block (.mk [(.mk (.bind (.generated .callee 8)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 8) [(.clone (.generated .binding 2))] true))))]) (tb := (.matchOn (.move (.generated .holder 9)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 6) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))])) (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))))) (Corr.matchArms (st := (.option (.adt 1))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 8)) (some (.fn 0)) (.clone (.generated .binding 0)))]) (tail := (.apply (.generated .callee 8) [(.clone (.generated .binding 2))] true)) (Corr.apply (ps := [(.adt 1)]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (2, (.adt 1), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.adt 1)] (.option (.adt 1))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true))))) (Corr.mCons (Γ' := [(4, (.adt 1), (some 4)), (3, .nat, (some 3)), (2, (.adt 1), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.adt 1)] (.option (.adt 1))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 6) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.adt 1)] (.option (.adt 1))), .nat, (.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))))))) rfl rfl rfl)))⟩⟩ - -theorem fun7 : FunOK program krate flags 7 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 10)) none (.call (.function 11) [(.clone (.generated .binding 0))] true))], (.matchOn (.move (.generated .holder 10)) [(.mk .none (.mk [] (.succeed (.construct (.none (.adt 1)) [])))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.call (.function 12) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false)))]), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct (.none (.adt 1)) []))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 12) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.adt 1), (.adt 2)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl)⟩⟩ - -theorem fun8 : FunOK program krate flags 8 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.move (.generated .binding 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0))]), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))))))))) rfl)⟩⟩ - -theorem fun9 : FunOK program krate flags 9 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 11)) none (.call (.function 10) [(.move (.generated .binding 1))] false))], (.matchOn (.move (.generated .holder 11)) [(.mk .none (.mk [] (.construct (.none .nat) []))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.cond (.call (.function 13) [(.move (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.mk [] (.construct .some [(.copy (.generated .binding 2))])) (.mk [] (.construct (.none .nat) [])))))]), [(1, (.adt 1), (some 1)), (0, (.adt 0), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.adt 1), (some 1)), (0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none .nat) [])) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, (.adt 1), (some 1)), (0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 13) [(.move (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.mk [] (.construct .some [(.copy (.generated .binding 2))])) (.mk [] (.construct (.none .nat) [])))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 13) [(.move (.generated .binding 0)), (.copy (.generated .binding 2))] false)) (lk := []) (Corr.callOps (ts := [(.adt 0), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.copy (.generated .binding 2))])) (lb := []) (tb := (.construct (.none .nat) [])) (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun10 : FunOK program krate flags 10 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct .some [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 12))]) (.mk [] (.move (.generated .part 12))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 12))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)⟩⟩ - -theorem fun11 : FunOK program krate flags 11 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 16)) none (.block (.mk [(.mk (.bind (.generated .holder 14)) none (.block (.mk [(.mk (.bind (.generated .holder 13)) none (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 0) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [] (.cond (.call (.function 15) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 1) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.construct .some [(.move (.generated .binding 1))])))]))))] (.matchOn (.move (.generated .holder 14)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 15)) none (.cond (.call (.function 16) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 2) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 15)) [(.mk .none (.mk [] (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 3) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.construct .some [(.move (.generated .binding 3))])))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.construct .some [(.move (.generated .binding 2))])))]))))], (.matchOn (.move (.generated .holder 16)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 18)) none (.block (.mk [(.mk (.bind (.generated .holder 17)) none (.cond (.call (.function 18) [(.clone (.generated .binding 0))] true) (.mk [] (.construct .some [(.construct (.adt 2 4) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 17)) [(.mk .none (.mk [] (.cond (.call (.function 19) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 5) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.construct .some [(.move (.generated .binding 5))])))]))))] (.matchOn (.move (.generated .holder 18)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 19)) none (.cond (.call (.function 20) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 6) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 19)) [(.mk .none (.mk [] (.cond (.call (.function 21) [(.move (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.construct (.adt 2 7) [])]))) (.mk [] (.succeed (.construct (.none (.adt 2)) [])))))), (.mk (.some (.bind (.generated .binding 7))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 7))]))))]))), (.mk (.some (.bind (.generated .binding 6))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 6))]))))]))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 4))]))))]), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 14)) none (.block (.mk [(.mk (.bind (.generated .holder 13)) none (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 0) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [] (.cond (.call (.function 15) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 1) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.construct .some [(.move (.generated .binding 1))])))]))))]) (tail := (.matchOn (.move (.generated .holder 14)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 15)) none (.cond (.call (.function 16) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 2) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 15)) [(.mk .none (.mk [] (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 3) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.construct .some [(.move (.generated .binding 3))])))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.construct .some [(.move (.generated .binding 2))])))])) (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 13)) none (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 0) [])])) (.mk [] (.construct (.none (.adt 2)) []))))]) (tail := (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [] (.cond (.call (.function 15) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 1) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.construct .some [(.move (.generated .binding 1))])))])) (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.cond (lc := []) (ce := (.call (.function 14) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 2 0) [])])) (lb := []) (tb := (.construct (.none (.adt 2)) [])) (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 15) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 1) [])])) (.mk [] (.construct (.none (.adt 2)) [])))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.move (.generated .binding 1))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 15) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 2 1) [])])) (lb := []) (tb := (.construct (.none (.adt 2)) [])) (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) rfl rfl rfl)) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 15)) none (.cond (.call (.function 16) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 2) [])])) (.mk [] (.construct (.none (.adt 2)) []))))]) (tail := (.matchOn (.move (.generated .holder 15)) [(.mk .none (.mk [] (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 3) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.construct .some [(.move (.generated .binding 3))])))])) (Corr.mCons (Γ' := [(2, (.adt 2), (some 2)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.move (.generated .binding 2))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.cond (lc := []) (ce := (.call (.function 16) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 2 2) [])])) (lb := []) (tb := (.construct (.none (.adt 2)) [])) (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 3) [])])) (.mk [] (.construct (.none (.adt 2)) [])))) (Corr.mCons (Γ' := [(3, (.adt 2), (some 3)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.move (.generated .binding 3))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 17) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 2 3) [])])) (lb := []) (tb := (.construct (.none (.adt 2)) [])) (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) rfl rfl rfl)) rfl rfl rfl)) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 18)) none (.block (.mk [(.mk (.bind (.generated .holder 17)) none (.cond (.call (.function 18) [(.clone (.generated .binding 0))] true) (.mk [] (.construct .some [(.construct (.adt 2 4) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 17)) [(.mk .none (.mk [] (.cond (.call (.function 19) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 5) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.construct .some [(.move (.generated .binding 5))])))]))))]) (tail := (.matchOn (.move (.generated .holder 18)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 19)) none (.cond (.call (.function 20) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 6) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 19)) [(.mk .none (.mk [] (.cond (.call (.function 21) [(.move (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.construct (.adt 2 7) [])]))) (.mk [] (.succeed (.construct (.none (.adt 2)) [])))))), (.mk (.some (.bind (.generated .binding 7))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 7))]))))]))), (.mk (.some (.bind (.generated .binding 6))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 6))]))))])) (Corr.mCons (Γ' := [(4, (.adt 2), (some 4)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct .some [(.move (.generated .binding 4))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 17)) none (.cond (.call (.function 18) [(.clone (.generated .binding 0))] true) (.mk [] (.construct .some [(.construct (.adt 2 4) [])])) (.mk [] (.construct (.none (.adt 2)) []))))]) (tail := (.matchOn (.move (.generated .holder 17)) [(.mk .none (.mk [] (.cond (.call (.function 19) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 5) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.construct .some [(.move (.generated .binding 5))])))])) (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.cond (lc := []) (ce := (.call (.function 18) [(.clone (.generated .binding 0))] true)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 2 4) [])])) (lb := []) (tb := (.construct (.none (.adt 2)) [])) (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 19) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 5) [])])) (.mk [] (.construct (.none (.adt 2)) [])))) (Corr.mCons (Γ' := [(5, (.adt 2), (some 5)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.move (.generated .binding 5))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 19) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 2 5) [])])) (lb := []) (tb := (.construct (.none (.adt 2)) [])) (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) rfl rfl rfl)) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 19)) none (.cond (.call (.function 20) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 6) [])])) (.mk [] (.construct (.none (.adt 2)) []))))]) (tail := (.matchOn (.move (.generated .holder 19)) [(.mk .none (.mk [] (.cond (.call (.function 21) [(.move (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.construct (.adt 2 7) [])]))) (.mk [] (.succeed (.construct (.none (.adt 2)) [])))))), (.mk (.some (.bind (.generated .binding 7))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 7))]))))])) (Corr.mCons (Γ' := [(6, (.adt 2), (some 6)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct .some [(.move (.generated .binding 6))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.cond (lc := []) (ce := (.call (.function 20) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 2 6) [])])) (lb := []) (tb := (.construct (.none (.adt 2)) [])) (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 21) [(.move (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.construct (.adt 2 7) [])]))) (.mk [] (.succeed (.construct (.none (.adt 2)) []))))) (Corr.mCons (Γ' := [(7, (.adt 2), (some 7)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct .some [(.move (.generated .binding 7))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 21) [(.move (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.construct (.adt 2 7) [])]))) (lb := []) (tb := (.succeed (.construct (.none (.adt 2)) []))) (Corr.fOfB (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))) rfl rfl rfl)) rfl rfl rfl)) rfl rfl rfl)⟩⟩ - -theorem fun12 : FunOK program krate flags 12 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 20)) none (.move (.generated .binding 1)))], (.matchOn (.move (.generated .holder 20)) [(.mk (.adt 2 0 []) (.mk [] (.succeed (.call (.function 22) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 1 []) (.mk [] (.succeed (.call (.function 23) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 2 []) (.mk [] (.succeed (.call (.function 24) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 3 []) (.mk [] (.succeed (.call (.function 25) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 4 []) (.mk [] (.call (.function 26) [(.move (.generated .binding 0))] false))), (.mk (.adt 2 5 []) (.mk [] (.succeed (.call (.function 27) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 6 []) (.mk [] (.succeed (.call (.function 28) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 7 []) (.mk [] (.call (.function 29) [(.move (.generated .binding 0))] false)))]), [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.adt 2)) (U := []) (view := false) (idx := [0, 1, 2, 3, 4, 5, 6, 7]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.call (.function 22) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.call (.function 23) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.succeed (.call (.function 24) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 3) (loads := []) (lets := []) (tail := (.succeed (.call (.function 25) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 4) (loads := []) (lets := []) (tail := (.call (.function 26) [(.move (.generated .binding 0))] false)) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 5) (loads := []) (lets := []) (tail := (.succeed (.call (.function 27) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 6) (loads := []) (lets := []) (tail := (.succeed (.call (.function 28) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 7) (loads := []) (lets := []) (tail := (.call (.function 29) [(.move (.generated .binding 0))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.callF (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl)⟩⟩ - -theorem fun13 : FunOK program krate flags 13 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 21)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 22)) none (.lit (.nat 3)))], (.cond (.call (.runtime .natLe) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false) (.mk [(.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 24)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 28)) none (.cond (.call (.function 30) [(.clone (.generated .binding 0))] false) (.mk [(.mk (.bind (.generated .operand 26)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 25))]) (.mk [] (.move (.generated .part 25))))])), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] false) (.mk [] (.cond (.call (.function 31) [(.clone (.generated .binding 0))] false) (.mk [] (.call (.function 32) [(.move (.generated .binding 0))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))))] (.call (.runtime .boolNot) [(.move (.generated .operand 28))] false)))) (.mk [] (.lit (.bool false)))), [(1, .nat, (some 1)), (0, (.adt 0), (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 21)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 22)) none (.lit (.nat 3)))]) (ce := (.call (.runtime .natLe) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 24)) none (.lit (.nat 3)))]) (ta := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 28)) none (.cond (.call (.function 30) [(.clone (.generated .binding 0))] false) (.mk [(.mk (.bind (.generated .operand 26)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 25))]) (.mk [] (.move (.generated .part 25))))])), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] false) (.mk [] (.cond (.call (.function 31) [(.clone (.generated .binding 0))] false) (.mk [] (.call (.function 32) [(.move (.generated .binding 0))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))))] (.call (.runtime .boolNot) [(.move (.generated .operand 28))] false)))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 24)) none (.lit (.nat 3)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 28)) none (.cond (.call (.function 30) [(.clone (.generated .binding 0))] false) (.mk [(.mk (.bind (.generated .operand 26)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 25))]) (.mk [] (.move (.generated .part 25))))])), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] false) (.mk [] (.cond (.call (.function 31) [(.clone (.generated .binding 0))] false) (.mk [] (.call (.function 32) [(.move (.generated .binding 0))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))))]) (tb := (.call (.runtime .boolNot) [(.move (.generated .operand 28))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.prim (ts := [.bool]) (Corr.opsCons (Corr.eOfBNil (Corr.cond (lc := []) (ce := (.call (.function 30) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 26)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 25))]) (.mk [] (.move (.generated .part 25))))])), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))]) (ta := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] false) (.mk [] (.cond (.call (.function 31) [(.clone (.generated .binding 0))] false) (.mk [] (.call (.function 32) [(.move (.generated .binding 0))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 26)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 25))]) (.mk [] (.move (.generated .part 25))))])), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 25))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 31) [(.clone (.generated .binding 0))] false) (.mk [] (.call (.function 32) [(.move (.generated .binding 0))] false)) (.mk [] (.lit (.bool false))))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := []) (ce := (.call (.function 31) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 32) [(.move (.generated .binding 0))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.bOfE (Corr.buildConst rfl))))) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl))) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ - -theorem fun14 : FunOK program krate flags 14 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 30)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 29)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 29))))])), (.mk (.bind (.generated .operand 31)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] false) (.mk [] (.call (.function 31) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 32)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 32))))])] false)) (.mk [] (.lit (.bool false)))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 30)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 29)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 29))))])), (.mk (.bind (.generated .operand 31)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 29))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 31) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 32)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 32))))])] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 32))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ - -theorem fun15 : FunOK program krate flags 15 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 34)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 33)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 33))))])), (.mk (.bind (.generated .operand 35)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 34)), (.move (.generated .operand 35))] false) (.mk [] (.call (.function 32) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 36)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 36))))])] false)) (.mk [] (.lit (.bool false)))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 34)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 33)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 33))))])), (.mk (.bind (.generated .operand 35)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 34)), (.move (.generated .operand 35))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 33))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 32) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 36)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 36))))])] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 36))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ - -theorem fun16 : FunOK program krate flags 16 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 38)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 37)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 37))))])), (.mk (.bind (.generated .operand 39)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 38)), (.move (.generated .operand 39))] false) (.mk [] (.call (.function 33) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 40)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 40))))])] false)) (.mk [] (.lit (.bool false)))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 38)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 37)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 37))))])), (.mk (.bind (.generated .operand 39)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 38)), (.move (.generated .operand 39))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 37))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 33) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 40)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 40))))])] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 40))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ - -theorem fun17 : FunOK program krate flags 17 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 42)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 41)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 41))))])), (.mk (.bind (.generated .operand 43)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 42)), (.move (.generated .operand 43))] false) (.mk [] (.call (.function 34) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 44)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 44))))])] false)) (.mk [] (.lit (.bool false)))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 42)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 41)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 41))))])), (.mk (.bind (.generated .operand 43)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 42)), (.move (.generated .operand 43))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 41))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 34) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 44)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 44))))])] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 44))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ - -theorem fun18 : FunOK program krate flags 18 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 46)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 45)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 45))))])), (.mk (.bind (.generated .operand 47)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 46)), (.move (.generated .operand 47))] false) (.mk [(.mk (.bind (.generated .operand 58)) none (.lit (.nat 2))), (.mk (.bind (.generated .operand 59)) none (.block (.mk [(.mk (.bind (.generated .operand 56)) none (.block (.mk [(.mk (.bind (.generated .operand 53)) none (.block (.mk [(.mk (.bind (.generated .operand 50)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 48)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 48))))])), (.mk (.bind (.generated .operand 51)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 49)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 49))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 50)), (.move (.generated .operand 51))] true)))), (.mk (.bind (.generated .operand 54)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 52)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 52))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] true)))), (.mk (.bind (.generated .operand 57)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 55)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 55))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 56)), (.move (.generated .operand 57))] true))))] (.succeed (.call (.runtime .natLe) [(.move (.generated .operand 58)), (.move (.generated .operand 59))] false))) (.mk [] (.succeed (.lit (.bool false))))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 46)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 45)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 45))))])), (.mk (.bind (.generated .operand 47)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 46)), (.move (.generated .operand 47))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 45))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 58)) none (.lit (.nat 2))), (.mk (.bind (.generated .operand 59)) none (.block (.mk [(.mk (.bind (.generated .operand 56)) none (.block (.mk [(.mk (.bind (.generated .operand 53)) none (.block (.mk [(.mk (.bind (.generated .operand 50)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 48)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 48))))])), (.mk (.bind (.generated .operand 51)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 49)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 49))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 50)), (.move (.generated .operand 51))] true)))), (.mk (.bind (.generated .operand 54)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 52)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 52))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] true)))), (.mk (.bind (.generated .operand 57)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 55)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 55))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 56)), (.move (.generated .operand 57))] true))))]) (ta := (.succeed (.call (.runtime .natLe) [(.move (.generated .operand 58)), (.move (.generated .operand 59))] false))) (lb := []) (tb := (.succeed (.lit (.bool false)))) (Corr.fOfB (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 56)) none (.block (.mk [(.mk (.bind (.generated .operand 53)) none (.block (.mk [(.mk (.bind (.generated .operand 50)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 48)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 48))))])), (.mk (.bind (.generated .operand 51)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 49)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 49))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 50)), (.move (.generated .operand 51))] true)))), (.mk (.bind (.generated .operand 54)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 52)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 52))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] true)))), (.mk (.bind (.generated .operand 57)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 55)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 55))))]))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 56)), (.move (.generated .operand 57))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 53)) none (.block (.mk [(.mk (.bind (.generated .operand 50)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 48)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 48))))])), (.mk (.bind (.generated .operand 51)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 49)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 49))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 50)), (.move (.generated .operand 51))] true)))), (.mk (.bind (.generated .operand 54)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 52)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 52))))]))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 50)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 48)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 48))))])), (.mk (.bind (.generated .operand 51)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 49)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 49))))]))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 50)), (.move (.generated .operand 51))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 48))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 49))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 52))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 55))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.fOfB (Corr.bOfE (Corr.buildConst rfl)))))⟩⟩ - -theorem fun19 : FunOK program krate flags 19 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 61)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 60)), .wild, .wild]) (.mk [] (.move (.generated .part 60))))])), (.mk (.bind (.generated .operand 62)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 61)), (.move (.generated .operand 62))] false) (.mk [(.mk (.bind (.generated .operand 64)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 63)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 63))))])), (.mk (.bind (.generated .operand 65)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 64)), (.move (.generated .operand 65))] false) (.mk [(.mk (.bind (.generated .operand 69)) none (.block (.mk [(.mk (.bind (.generated .holder 68)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 67)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 67))))]))] (.matchOn (.move (.generated .holder 68)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 66))]) (.mk [] (.move (.generated .part 66))))])))), (.mk (.bind (.generated .operand 70)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 69)), (.move (.generated .operand 70))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 61)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 60)), .wild, .wild]) (.mk [] (.move (.generated .part 60))))])), (.mk (.bind (.generated .operand 62)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 61)), (.move (.generated .operand 62))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 60))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 64)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 63)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 63))))])), (.mk (.bind (.generated .operand 65)) none (.lit (.nat 1)))]) (ta := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 64)), (.move (.generated .operand 65))] false) (.mk [(.mk (.bind (.generated .operand 69)) none (.block (.mk [(.mk (.bind (.generated .holder 68)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 67)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 67))))]))] (.matchOn (.move (.generated .holder 68)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 66))]) (.mk [] (.move (.generated .part 66))))])))), (.mk (.bind (.generated .operand 70)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 69)), (.move (.generated .operand 70))] false)) (.mk [] (.lit (.bool false))))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 64)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 63)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 63))))])), (.mk (.bind (.generated .operand 65)) none (.lit (.nat 1)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 64)), (.move (.generated .operand 65))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 63))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 69)) none (.block (.mk [(.mk (.bind (.generated .holder 68)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 67)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 67))))]))] (.matchOn (.move (.generated .holder 68)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 66))]) (.mk [] (.move (.generated .part 66))))])))), (.mk (.bind (.generated .operand 70)) none (.lit (.nat 1)))]) (ta := (.call (.runtime .natEq) [(.move (.generated .operand 69)), (.move (.generated .operand 70))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 68)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 67)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 67))))]))]) (tail := (.matchOn (.move (.generated .holder 68)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 66))]) (.mk [] (.move (.generated .part 66))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 66))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 67))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ - -theorem fun20 : FunOK program krate flags 20 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 72)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 71)), .wild]) (.mk [] (.move (.generated .part 71))))])), (.mk (.bind (.generated .operand 73)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 72)), (.move (.generated .operand 73))] false) (.mk [(.mk (.bind (.generated .operand 75)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 74)), .wild, .wild]) (.mk [] (.move (.generated .part 74))))])), (.mk (.bind (.generated .operand 76)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 75)), (.move (.generated .operand 76))] false) (.mk [] (.call (.function 30) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 77)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 77))))])] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 72)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 71)), .wild]) (.mk [] (.move (.generated .part 71))))])), (.mk (.bind (.generated .operand 73)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 72)), (.move (.generated .operand 73))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 71))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 75)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 74)), .wild, .wild]) (.mk [] (.move (.generated .part 74))))])), (.mk (.bind (.generated .operand 76)) none (.lit (.nat 1)))]) (ta := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 75)), (.move (.generated .operand 76))] false) (.mk [] (.call (.function 30) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 77)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 77))))])] false)) (.mk [] (.lit (.bool false))))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 75)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 74)), .wild, .wild]) (.mk [] (.move (.generated .part 74))))])), (.mk (.bind (.generated .operand 76)) none (.lit (.nat 1)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 75)), (.move (.generated .operand 76))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 74))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 30) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 77)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 77))))])] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 77))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ - -theorem fun21 : FunOK program krate flags 21 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 79)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 78))]) (.mk [] (.move (.generated .part 78))))])), (.mk (.bind (.generated .operand 80)) none (.lit (.nat 3)))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 79)), (.move (.generated .operand 80))] false) (.mk [(.mk (.bind (.generated .operand 82)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))])), (.mk (.bind (.generated .operand 83)) none (.lit (.nat 0)))] (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 82)), (.move (.generated .operand 83))] false) (.mk [(.mk (.bind (.generated .operand 85)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 84)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 84))))])), (.mk (.bind (.generated .operand 86)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 85)), (.move (.generated .operand 86))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 88)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 87))]) (.mk [] (.move (.generated .part 87))))])), (.mk (.bind (.generated .operand 89)) none (.lit (.nat 1)))] (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 88)), (.move (.generated .operand 89))] false) (.mk [(.mk (.bind (.generated .operand 91)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 90)), .wild, .wild]) (.mk [] (.move (.generated .part 90))))])), (.mk (.bind (.generated .operand 92)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 94)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 93))]) (.mk [] (.move (.generated .part 93))))])), (.mk (.bind (.generated .operand 95)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 94)), (.move (.generated .operand 95))] false) (.mk [(.mk (.bind (.generated .operand 97)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 96)), .wild]) (.mk [] (.move (.generated .part 96))))])), (.mk (.bind (.generated .operand 98)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 97)), (.move (.generated .operand 98))] false)) (.mk [] (.lit (.bool false))))))))) (.mk [] (.lit (.bool false)))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 79)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 78))]) (.mk [] (.move (.generated .part 78))))])), (.mk (.bind (.generated .operand 80)) none (.lit (.nat 3)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 79)), (.move (.generated .operand 80))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 78))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 82)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))])), (.mk (.bind (.generated .operand 83)) none (.lit (.nat 0)))]) (ta := (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 82)), (.move (.generated .operand 83))] false) (.mk [(.mk (.bind (.generated .operand 85)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 84)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 84))))])), (.mk (.bind (.generated .operand 86)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 85)), (.move (.generated .operand 86))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 88)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 87))]) (.mk [] (.move (.generated .part 87))))])), (.mk (.bind (.generated .operand 89)) none (.lit (.nat 1)))] (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 88)), (.move (.generated .operand 89))] false) (.mk [(.mk (.bind (.generated .operand 91)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 90)), .wild, .wild]) (.mk [] (.move (.generated .part 90))))])), (.mk (.bind (.generated .operand 92)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 94)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 93))]) (.mk [] (.move (.generated .part 93))))])), (.mk (.bind (.generated .operand 95)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 94)), (.move (.generated .operand 95))] false) (.mk [(.mk (.bind (.generated .operand 97)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 96)), .wild]) (.mk [] (.move (.generated .part 96))))])), (.mk (.bind (.generated .operand 98)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 97)), (.move (.generated .operand 98))] false)) (.mk [] (.lit (.bool false))))))))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 82)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))])), (.mk (.bind (.generated .operand 83)) none (.lit (.nat 0)))]) (ce := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 82)), (.move (.generated .operand 83))] false) (.mk [(.mk (.bind (.generated .operand 85)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 84)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 84))))])), (.mk (.bind (.generated .operand 86)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 85)), (.move (.generated .operand 86))] false)) (.mk [] (.lit (.bool false))))) (lk := []) (Corr.cond (lc := [(.mk (.bind (.generated .operand 82)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))])), (.mk (.bind (.generated .operand 83)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 82)), (.move (.generated .operand 83))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 81))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 85)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 84)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 84))))])), (.mk (.bind (.generated .operand 86)) none (.lit (.nat 1)))]) (ta := (.call (.runtime .natEq) [(.move (.generated .operand 85)), (.move (.generated .operand 86))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 84))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 88)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 87))]) (.mk [] (.move (.generated .part 87))))])), (.mk (.bind (.generated .operand 89)) none (.lit (.nat 1)))]) (tb := (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 88)), (.move (.generated .operand 89))] false) (.mk [(.mk (.bind (.generated .operand 91)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 90)), .wild, .wild]) (.mk [] (.move (.generated .part 90))))])), (.mk (.bind (.generated .operand 92)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 94)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 93))]) (.mk [] (.move (.generated .part 93))))])), (.mk (.bind (.generated .operand 95)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 94)), (.move (.generated .operand 95))] false) (.mk [(.mk (.bind (.generated .operand 97)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 96)), .wild]) (.mk [] (.move (.generated .part 96))))])), (.mk (.bind (.generated .operand 98)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 97)), (.move (.generated .operand 98))] false)) (.mk [] (.lit (.bool false))))))) (Corr.bOfE (Corr.buildConst rfl)) (Corr.cond (lc := [(.mk (.bind (.generated .operand 88)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 87))]) (.mk [] (.move (.generated .part 87))))])), (.mk (.bind (.generated .operand 89)) none (.lit (.nat 1)))]) (ce := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 88)), (.move (.generated .operand 89))] false) (.mk [(.mk (.bind (.generated .operand 91)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 90)), .wild, .wild]) (.mk [] (.move (.generated .part 90))))])), (.mk (.bind (.generated .operand 92)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] false)) (.mk [] (.lit (.bool false))))) (lk := []) (Corr.cond (lc := [(.mk (.bind (.generated .operand 88)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 87))]) (.mk [] (.move (.generated .part 87))))])), (.mk (.bind (.generated .operand 89)) none (.lit (.nat 1)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 88)), (.move (.generated .operand 89))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 87))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 91)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 90)), .wild, .wild]) (.mk [] (.move (.generated .part 90))))])), (.mk (.bind (.generated .operand 92)) none (.lit (.nat 1)))]) (ta := (.call (.runtime .natEq) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 90))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 94)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 93))]) (.mk [] (.move (.generated .part 93))))])), (.mk (.bind (.generated .operand 95)) none (.lit (.nat 2)))]) (tb := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 94)), (.move (.generated .operand 95))] false) (.mk [(.mk (.bind (.generated .operand 97)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 96)), .wild]) (.mk [] (.move (.generated .part 96))))])), (.mk (.bind (.generated .operand 98)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 97)), (.move (.generated .operand 98))] false)) (.mk [] (.lit (.bool false))))) (Corr.bOfE (Corr.buildConst rfl)) (Corr.cond (lc := [(.mk (.bind (.generated .operand 94)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 93))]) (.mk [] (.move (.generated .part 93))))])), (.mk (.bind (.generated .operand 95)) none (.lit (.nat 2)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 94)), (.move (.generated .operand 95))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 93))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 97)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 96)), .wild]) (.mk [] (.move (.generated .part 96))))])), (.mk (.bind (.generated .operand 98)) none (.lit (.nat 1)))]) (ta := (.call (.runtime .natEq) [(.move (.generated .operand 97)), (.move (.generated .operand 98))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 96))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))))))) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ - -theorem fun22 : FunOK program krate flags 22 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 35) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 14) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 35) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ - -theorem fun23 : FunOK program krate flags 23 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 15) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 36) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 15) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 36) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ - -theorem fun24 : FunOK program krate flags 24 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 16) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 37) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 16) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 37) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ - -theorem fun25 : FunOK program krate flags 25 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 38) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 17) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 38) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ - -theorem fun26 : FunOK program krate flags 26 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 18) [(.clone (.generated .binding 0))] true) (.mk [] (.succeed (.construct .some [(.call (.function 39) [(.move (.generated .binding 0))] false)]))) (.mk [] (.succeed (.construct (.none (.adt 1)) [])))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 18) [(.clone (.generated .binding 0))] true)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.call (.function 39) [(.move (.generated .binding 0))] false)]))) (lb := []) (tb := (.succeed (.construct (.none (.adt 1)) []))) (Corr.fOfB (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))⟩⟩ - -theorem fun27 : FunOK program krate flags 27 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 19) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 40) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 19) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 40) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ - -theorem fun28 : FunOK program krate flags 28 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 20) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 41) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 20) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 41) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ - -theorem fun29 : FunOK program krate flags 29 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 21) [(.clone (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.call (.function 42) [(.move (.generated .binding 0))] true)]))) (.mk [] (.succeed (.construct (.none (.adt 1)) [])))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 21) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.call (.function 42) [(.move (.generated .binding 0))] true)]))) (lb := []) (tb := (.succeed (.construct (.none (.adt 1)) []))) (Corr.fOfB (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))⟩⟩ - -theorem fun30 : FunOK program krate flags 30 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 100)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 99)), .wild]) (.mk [] (.move (.generated .part 99))))])), (.mk (.bind (.generated .operand 101)) none (.lit (.nat 90)))], (.call (.runtime .natLt) [(.move (.generated .operand 100)), (.move (.generated .operand 101))] false), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 99))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun31 : FunOK program krate flags 31 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 103)) none (.lit (.nat 380))), (.mk (.bind (.generated .operand 104)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [(.bind (.generated .part 102)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 102))))]))], (.call (.runtime .natLt) [(.move (.generated .operand 103)), (.move (.generated .operand 104))] false), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 102))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun32 : FunOK program krate flags 32 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 106)) none (.lit (.nat 90))), (.mk (.bind (.generated .operand 107)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 105)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 105))))]))], (.call (.runtime .natLt) [(.move (.generated .operand 106)), (.move (.generated .operand 107))] false), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 105))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun33 : FunOK program krate flags 33 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 109)) none (.lit (.nat 20))), (.mk (.bind (.generated .operand 110)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 108)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 108))))]))], (.call (.runtime .natLt) [(.move (.generated .operand 109)), (.move (.generated .operand 110))] false), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 108))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun34 : FunOK program krate flags 34 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 112)) none (.lit (.nat 12))), (.mk (.bind (.generated .operand 113)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, (.bind (.generated .part 111)), .wild, .wild]) (.mk [] (.move (.generated .part 111))))]))], (.call (.runtime .natLt) [(.move (.generated .operand 112)), (.move (.generated .operand 113))] false), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 111))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun35 : FunOK program krate flags 35 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 114)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 114))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 115)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 115))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 116)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 116))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 117)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 117))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 118)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 118))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 119)), .wild, .wild]) (.mk [] (.move (.generated .part 119))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 120)), .wild]) (.mk [] (.move (.generated .part 120))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 121))]) (.mk [] (.move (.generated .part 121))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 114))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 115))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 116))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 117))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 118))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 119))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 120))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 121))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ - -theorem fun36 : FunOK program krate flags 36 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 122)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 122))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 123)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 123))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 124)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 124))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 125)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 125))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 126)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 126))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 127)), .wild, .wild]) (.mk [] (.move (.generated .part 127))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 128)), .wild]) (.mk [] (.move (.generated .part 128))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 129))]) (.mk [] (.move (.generated .part 129))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 122))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 123))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 124))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 125))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 126))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 127))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 128))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 129))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ - -theorem fun37 : FunOK program krate flags 37 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 130)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 130))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 131)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 131))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 132)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 132))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 133)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 133))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 134)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 134))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 135)), .wild, .wild]) (.mk [] (.move (.generated .part 135))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 136)), .wild]) (.mk [] (.move (.generated .part 136))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 137))]) (.mk [] (.move (.generated .part 137))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 130))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 131))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 132))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 133))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 134))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 135))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 136))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 137))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ - -theorem fun38 : FunOK program krate flags 38 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 138)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 138))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 139)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 139))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 140)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 140))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 141)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 141))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 142)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 142))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 143)), .wild, .wild]) (.mk [] (.move (.generated .part 143))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 144)), .wild]) (.mk [] (.move (.generated .part 144))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 145))]) (.mk [] (.move (.generated .part 145))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 138))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 139))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 140))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 141))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 142))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 143))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 144))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 145))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ - -theorem fun39 : FunOK program krate flags 39 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 146)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 146))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 147)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 147))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 148)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 148))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 149)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 149))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 150)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 150))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 151)), .wild, .wild]) (.mk [] (.move (.generated .part 151))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 152)), .wild]) (.mk [] (.move (.generated .part 152))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 153))]) (.mk [] (.move (.generated .part 153))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 146))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 147))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 148))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 149))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 150))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 151))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 152))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 153))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ - -theorem fun40 : FunOK program krate flags 40 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 154)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 154))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 155)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 155))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 156)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 156))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 157)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 157))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 158)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 158))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 159)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 159))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 160)), .wild]) (.mk [] (.move (.generated .part 160))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 161))]) (.mk [] (.move (.generated .part 161))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 154))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 155))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 156))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 157))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 158))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 159))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 160))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 161))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ - -theorem fun41 : FunOK program krate flags 41 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 162)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 162))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 163)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 163))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 164)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 164))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 165)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 165))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 166)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 166))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 167)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 167))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 168)), .wild, .wild]) (.mk [] (.move (.generated .part 168))))]), (.lit (.nat 1)), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 169))]) (.mk [] (.move (.generated .part 169))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 162))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 163))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 164))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 165))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 166))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 167))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 168))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 169))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ - -theorem fun42 : FunOK program krate flags 42 := - ⟨_, rfl, .inl ⟨_, _, [], (.succeed (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 170)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 170))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 171)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 171))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 172)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 172))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 173)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 173))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 174)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 174))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 175)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 175))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 176)), .wild, .wild]) (.mk [] (.move (.generated .part 176))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 177)), .wild]) (.mk [] (.move (.generated .part 177))))]), (.block (.mk [(.mk (.bind (.generated .operand 179)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 178))]) (.mk [] (.move (.generated .part 178))))])), (.mk (.bind (.generated .operand 180)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 179)), (.move (.generated .operand 180))] true)))])), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.fOfB (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 170))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 171))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 172))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 173))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 174))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 175))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 176))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 177))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 179)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 178))]) (.mk [] (.move (.generated .part 178))))])), (.mk (.bind (.generated .operand 180)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 179)), (.move (.generated .operand 180))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 178))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | 3 => exact fun3 - | 4 => exact fun4 - | 5 => exact fun5 - | 6 => exact fun6 - | 7 => exact fun7 - | 8 => exact fun8 - | 9 => exact fun9 - | 10 => exact fun10 - | 11 => exact fun11 - | 12 => exact fun12 - | 13 => exact fun13 - | 14 => exact fun14 - | 15 => exact fun15 - | 16 => exact fun16 - | 17 => exact fun17 - | 18 => exact fun18 - | 19 => exact fun19 - | 20 => exact fun20 - | 21 => exact fun21 - | 22 => exact fun22 - | 23 => exact fun23 - | 24 => exact fun24 - | 25 => exact fun25 - | 26 => exact fun26 - | 27 => exact fun27 - | 28 => exact fun28 - | 29 => exact fun29 - | 30 => exact fun30 - | 31 => exact fun31 - | 32 => exact fun32 - | 33 => exact fun33 - | 34 => exact fun34 - | 35 => exact fun35 - | 36 => exact fun36 - | 37 => exact fun37 - | 38 => exact fun38 - | 39 => exact fun39 - | 40 => exact fun40 - | 41 => exact fun41 - | 42 => exact fun42 - | _ + 43 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.RustCore diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R2.lean b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R2.lean deleted file mode 100644 index 8c1ee9d72..000000000 --- a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R2.lean +++ /dev/null @@ -1,417 +0,0 @@ -import LexLeanPreservation.Core -import LexLeanPreservation.Values -import LexLeanPreservation.Primitives -import LexLeanPreservation.Fixed -import LexLeanPreservation.Keys -import LexLeanPreservation.Templates -import LexLeanPreservation.Validate -import Reasoning.Budget -import Reasoning.Clinic -import Reasoning.Main -import Reasoning.Planner -import Reasoning.Screening -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -set_option linter.unusedVariables false -namespace LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2 - -def __prog : _root_.LexLeanTarget.TargetSyntax.Program := - { adts := [{ constructors := [[.nat, .nat, .nat, .nat, .nat, .nat]] }, - { constructors := [[], [], [], [], [], [], [], []] }, - { constructors := [[(.adt 3), (.list (.adt 1)), (.adt 4)]] }, - { constructors := [[(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]] }, - { constructors := [[.nat, .nat, .nat, .nat, .nat, .nat]] }], functions := (( - { parameters := [0, 1, 2, 3, 4, 5], types := [.nat, .nat, .nat, .nat, .nat, .nat], result := .nat, - body := (.«match» .nat (.call 1 [(.build (.adt 0) (.adt 0) [(.var 0), (.var 1), (.var 2), (.var 3), (.var 4), (.var 5)])]) [(.arm .ok [6] (.prim .length [(.second (.var 6))])), (.arm .error [7] (.value .nat (.nat 0)))]) }) ::( - { parameters := [0], types := [(.adt 0)], result := (.result (.pair .nat (.list (.adt 1))) (.pair .bool .bool)), - body := (.«let» 1 (.pair (.adt 2) .bool) (.call 2 [(.var 0)]) (.«match» (.result (.pair .nat (.list (.adt 1))) (.pair .bool .bool)) (.second (.var 1)) [(.arm .true [] (.«match» (.result (.pair .nat (.list (.adt 1))) (.pair .bool .bool)) (.call 3 [(.var 0), (.field (.first (.var 1)) 0)]) [(.arm .ok [2] (.build .ok (.result (.pair .nat (.list (.adt 1))) (.pair .bool .bool)) [(.build .pair (.pair .nat (.list (.adt 1))) [(.var 2), (.field (.first (.var 1)) 1)])])), (.arm .error [3] (.build .error (.result (.pair .nat (.list (.adt 1))) (.pair .bool .bool)) [(.var 3)]))])), (.arm .false [] (.build .error (.result (.pair .nat (.list (.adt 1))) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])]))])) }) ::( - { parameters := [0], types := [(.adt 0)], result := (.pair (.adt 2) .bool), - body := (.call 4 [(.closure 5 []), (.value .nat (.nat 11)), (.call 6 [(.var 0)])]) }) ::( - { parameters := [0, 1], types := [(.adt 0), (.adt 3)], result := (.result .nat (.pair .bool .bool)), - body := (.«match» (.result .nat (.pair .bool .bool)) (.call 7 [(.var 0), (.var 1)]) [(.arm .some [2] (.build .ok (.result .nat (.pair .bool .bool)) [(.var 2)])), (.arm .none [] (.«match» (.result .nat (.pair .bool .bool)) (.call 8 [(.var 1)]) [(.arm .some [3] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])])])), (.arm .none [] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])])]))]))]) }) ::( - { parameters := [0, 1, 2], types := [(.fn [(.adt 2)] (.option (.adt 2))), .nat, (.adt 2)], result := (.pair (.adt 2) .bool), - body := (.«match» (.pair (.adt 2) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.adt 2) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.adt 2) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.adt 2) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 4 [(.var 0), (.var 3), (.var 4)]))]))]) }) ::( - { parameters := [0], types := [(.adt 2)], result := (.option (.adt 2)), - body := (.«match» (.option (.adt 2)) (.call 9 [(.field (.var 0) 0)]) [(.arm .none [] (.build .none (.option (.adt 2)) [])), (.arm .some [1] (.«match» (.option (.adt 2)) (.call 10 [(.field (.var 0) 0), (.var 1)]) [(.arm .none [] (.build .none (.option (.adt 2)) [])), (.arm .some [2] (.build .some (.option (.adt 2)) [(.build (.adt 0) (.adt 2) [(.var 2), (.prim .append [(.field (.var 0) 1), (.build .cons (.list (.adt 1)) [(.var 1), (.build .nil (.list (.adt 1)) [])])]), (.build (.adt 0) (.adt 4) [(.prim .natAdd [(.field (.field (.var 0) 2) 0), (.value .nat (.nat 1))]), (.prim .natAdd [(.field (.field (.var 0) 2) 1), (.call 11 [(.field (.var 0) 0)])]), (.prim .natAdd [(.field (.field (.var 0) 2) 2), (.value .nat (.nat 1))]), (.field (.field (.var 0) 2) 3), (.field (.field (.var 0) 2) 4), (.field (.field (.var 0) 2) 5)])])]))]))]) }) ::( - { parameters := [0], types := [(.adt 0)], result := (.adt 2), - body := (.build (.adt 0) (.adt 2) [(.call 12 [(.var 0)]), (.build .nil (.list (.adt 1)) []), (.build (.adt 0) (.adt 4) [(.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0))])]) }) ::( - { parameters := [0, 1], types := [(.adt 0), (.adt 3)], result := (.option .nat), - body := (.«match» (.option .nat) (.call 8 [(.var 1)]) [(.arm .none [] (.build .none (.option .nat) [])), (.arm .some [2] (.cond (.call 13 [(.var 0), (.var 2)]) (.build .some (.option .nat) [(.var 2)]) (.build .none (.option .nat) [])))]) }) ::( - { parameters := [0], types := [(.adt 3)], result := (.option .nat), - body := (.build .some (.option .nat) [(.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 3)], result := (.option (.adt 1)), - body := (.«match» (.option (.adt 1)) (.«match» (.option (.adt 1)) (.«match» (.option (.adt 1)) (.cond (.call 14 [(.var 0)]) (.build .some (.option (.adt 1)) [(.build (.adt 0) (.adt 1) [])]) (.build .none (.option (.adt 1)) [])) [(.arm .some [1] (.build .some (.option (.adt 1)) [(.var 1)])), (.arm .none [] (.cond (.call 15 [(.var 0)]) (.build .some (.option (.adt 1)) [(.build (.adt 1) (.adt 1) [])]) (.build .none (.option (.adt 1)) [])))]) [(.arm .some [2] (.build .some (.option (.adt 1)) [(.var 2)])), (.arm .none [] (.«match» (.option (.adt 1)) (.cond (.call 16 [(.var 0)]) (.build .some (.option (.adt 1)) [(.build (.adt 2) (.adt 1) [])]) (.build .none (.option (.adt 1)) [])) [(.arm .some [3] (.build .some (.option (.adt 1)) [(.var 3)])), (.arm .none [] (.cond (.call 17 [(.var 0)]) (.build .some (.option (.adt 1)) [(.build (.adt 3) (.adt 1) [])]) (.build .none (.option (.adt 1)) [])))]))]) [(.arm .some [4] (.build .some (.option (.adt 1)) [(.var 4)])), (.arm .none [] (.«match» (.option (.adt 1)) (.«match» (.option (.adt 1)) (.cond (.call 18 [(.var 0)]) (.build .some (.option (.adt 1)) [(.build (.adt 4) (.adt 1) [])]) (.build .none (.option (.adt 1)) [])) [(.arm .some [5] (.build .some (.option (.adt 1)) [(.var 5)])), (.arm .none [] (.cond (.call 19 [(.var 0)]) (.build .some (.option (.adt 1)) [(.build (.adt 5) (.adt 1) [])]) (.build .none (.option (.adt 1)) [])))]) [(.arm .some [6] (.build .some (.option (.adt 1)) [(.var 6)])), (.arm .none [] (.«match» (.option (.adt 1)) (.cond (.call 20 [(.var 0)]) (.build .some (.option (.adt 1)) [(.build (.adt 6) (.adt 1) [])]) (.build .none (.option (.adt 1)) [])) [(.arm .some [7] (.build .some (.option (.adt 1)) [(.var 7)])), (.arm .none [] (.cond (.call 21 [(.var 0)]) (.build .some (.option (.adt 1)) [(.build (.adt 7) (.adt 1) [])]) (.build .none (.option (.adt 1)) [])))]))]))]) }) ::( - { parameters := [0, 1], types := [(.adt 3), (.adt 1)], result := (.option (.adt 3)), - body := (.«match» (.option (.adt 3)) (.var 1) [(.arm (.adt 0) [] (.call 22 [(.var 0)])), (.arm (.adt 1) [] (.call 23 [(.var 0)])), (.arm (.adt 2) [] (.call 24 [(.var 0)])), (.arm (.adt 3) [] (.call 25 [(.var 0)])), (.arm (.adt 4) [] (.call 26 [(.var 0)])), (.arm (.adt 5) [] (.call 27 [(.var 0)])), (.arm (.adt 6) [] (.call 28 [(.var 0)])), (.arm (.adt 7) [] (.call 29 [(.var 0)]))]) }) ::( - { parameters := [0], types := [(.adt 3)], result := .nat, - body := (.second (.«let» 7 (.pair .bool .nat) (.«let» 3 (.pair .bool .nat) (.«let» 1 (.pair .bool .nat) (.build .pair (.pair .bool .nat) [(.call 14 [(.var 0)]), (.value .nat (.nat 1))]) (.cond (.first (.var 1)) (.var 1) (.«let» 2 (.pair .bool .nat) (.build .pair (.pair .bool .nat) [(.call 15 [(.var 0)]), (.value .nat (.nat 1))]) (.build .pair (.pair .bool .nat) [(.first (.var 2)), (.prim .natAdd [(.second (.var 1)), (.second (.var 2))])])))) (.cond (.first (.var 3)) (.var 3) (.«let» 6 (.pair .bool .nat) (.«let» 4 (.pair .bool .nat) (.build .pair (.pair .bool .nat) [(.call 16 [(.var 0)]), (.value .nat (.nat 1))]) (.cond (.first (.var 4)) (.var 4) (.«let» 5 (.pair .bool .nat) (.build .pair (.pair .bool .nat) [(.call 17 [(.var 0)]), (.value .nat (.nat 1))]) (.build .pair (.pair .bool .nat) [(.first (.var 5)), (.prim .natAdd [(.second (.var 4)), (.second (.var 5))])])))) (.build .pair (.pair .bool .nat) [(.first (.var 6)), (.prim .natAdd [(.second (.var 3)), (.second (.var 6))])])))) (.cond (.first (.var 7)) (.var 7) (.«let» 14 (.pair .bool .nat) (.«let» 10 (.pair .bool .nat) (.«let» 8 (.pair .bool .nat) (.build .pair (.pair .bool .nat) [(.call 18 [(.var 0)]), (.value .nat (.nat 1))]) (.cond (.first (.var 8)) (.var 8) (.«let» 9 (.pair .bool .nat) (.build .pair (.pair .bool .nat) [(.call 19 [(.var 0)]), (.value .nat (.nat 1))]) (.build .pair (.pair .bool .nat) [(.first (.var 9)), (.prim .natAdd [(.second (.var 8)), (.second (.var 9))])])))) (.cond (.first (.var 10)) (.var 10) (.«let» 13 (.pair .bool .nat) (.«let» 11 (.pair .bool .nat) (.build .pair (.pair .bool .nat) [(.call 20 [(.var 0)]), (.value .nat (.nat 1))]) (.cond (.first (.var 11)) (.var 11) (.«let» 12 (.pair .bool .nat) (.build .pair (.pair .bool .nat) [(.call 21 [(.var 0)]), (.value .nat (.nat 1))]) (.build .pair (.pair .bool .nat) [(.first (.var 12)), (.prim .natAdd [(.second (.var 11)), (.second (.var 12))])])))) (.build .pair (.pair .bool .nat) [(.first (.var 13)), (.prim .natAdd [(.second (.var 10)), (.second (.var 13))])])))) (.build .pair (.pair .bool .nat) [(.first (.var 14)), (.prim .natAdd [(.second (.var 7)), (.second (.var 14))])]))))) }) ::( - { parameters := [0], types := [(.adt 0)], result := (.adt 3), - body := (.build (.adt 0) (.adt 3) [(.var 0), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0))]) }) ::( - { parameters := [0, 1], types := [(.adt 0), .nat], result := .bool, - body := (.cond (.prim .natLe [(.var 1), (.value .nat (.nat 3))]) (.cond (.prim .natEq [(.var 1), (.value .nat (.nat 3))]) (.build .true .bool []) (.prim .boolNot [(.cond (.call 30 [(.var 0)]) (.cond (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 1))]) (.cond (.call 31 [(.var 0)]) (.call 32 [(.var 0)]) (.build .false .bool [])) (.build .false .bool [])) (.build .false .bool []))])) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 3)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 1), (.value .nat (.nat 0))]) (.call 31 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 3)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 2), (.value .nat (.nat 0))]) (.call 32 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 3)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 3), (.value .nat (.nat 0))]) (.call 33 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 3)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 4), (.value .nat (.nat 0))]) (.call 34 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 3)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 0))]) (.prim .natLe [(.value .nat (.nat 2)), (.prim .natAdd [(.prim .natAdd [(.prim .natAdd [(.field (.var 0) 1), (.field (.var 0) 2)]), (.field (.var 0) 3)]), (.field (.var 0) 4)])]) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 3)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 0))]) (.cond (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 1))]) (.prim .natEq [(.field (.field (.var 0) 0) 5), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 3)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 7), (.value .nat (.nat 0))]) (.cond (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 1))]) (.call 30 [(.field (.var 0) 0)]) (.build .false .bool [])) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 3)], result := .bool, - body := (.cond (.prim .natLt [(.field (.var 0) 8), (.value .nat (.nat 3))]) (.cond (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 0))]) (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .true .bool []) (.cond (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 1))]) (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .true .bool []) (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 2))]) (.prim .natEq [(.field (.var 0) 7), (.value .nat (.nat 1))]) (.build .false .bool [])))) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 3)], result := (.option (.adt 3)), - body := (.cond (.call 14 [(.var 0)]) (.build .some (.option (.adt 3)) [(.call 35 [(.var 0)])]) (.build .none (.option (.adt 3)) [])) }) ::( - { parameters := [0], types := [(.adt 3)], result := (.option (.adt 3)), - body := (.cond (.call 15 [(.var 0)]) (.build .some (.option (.adt 3)) [(.call 36 [(.var 0)])]) (.build .none (.option (.adt 3)) [])) }) ::( - { parameters := [0], types := [(.adt 3)], result := (.option (.adt 3)), - body := (.cond (.call 16 [(.var 0)]) (.build .some (.option (.adt 3)) [(.call 37 [(.var 0)])]) (.build .none (.option (.adt 3)) [])) }) ::( - { parameters := [0], types := [(.adt 3)], result := (.option (.adt 3)), - body := (.cond (.call 17 [(.var 0)]) (.build .some (.option (.adt 3)) [(.call 38 [(.var 0)])]) (.build .none (.option (.adt 3)) [])) }) ::( - { parameters := [0], types := [(.adt 3)], result := (.option (.adt 3)), - body := (.cond (.call 18 [(.var 0)]) (.build .some (.option (.adt 3)) [(.call 39 [(.var 0)])]) (.build .none (.option (.adt 3)) [])) }) ::( - { parameters := [0], types := [(.adt 3)], result := (.option (.adt 3)), - body := (.cond (.call 19 [(.var 0)]) (.build .some (.option (.adt 3)) [(.call 40 [(.var 0)])]) (.build .none (.option (.adt 3)) [])) }) ::( - { parameters := [0], types := [(.adt 3)], result := (.option (.adt 3)), - body := (.cond (.call 20 [(.var 0)]) (.build .some (.option (.adt 3)) [(.call 41 [(.var 0)])]) (.build .none (.option (.adt 3)) [])) }) ::( - { parameters := [0], types := [(.adt 3)], result := (.option (.adt 3)), - body := (.cond (.call 21 [(.var 0)]) (.build .some (.option (.adt 3)) [(.call 42 [(.var 0)])]) (.build .none (.option (.adt 3)) [])) }) ::( - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.prim .natLt [(.field (.var 0) 4), (.value .nat (.nat 90))]) }) ::( - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.prim .natLt [(.value .nat (.nat 380)), (.field (.var 0) 0)]) }) ::( - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.prim .natLt [(.value .nat (.nat 90)), (.field (.var 0) 1)]) }) ::( - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.prim .natLt [(.value .nat (.nat 20)), (.field (.var 0) 2)]) }) ::( - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.prim .natLt [(.value .nat (.nat 12)), (.field (.var 0) 3)]) }) ::( - { parameters := [0], types := [(.adt 3)], result := (.adt 3), - body := (.build (.adt 0) (.adt 3) [(.field (.var 0) 0), (.value .nat (.nat 1)), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 3)], result := (.adt 3), - body := (.build (.adt 0) (.adt 3) [(.field (.var 0) 0), (.field (.var 0) 1), (.value .nat (.nat 1)), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 3)], result := (.adt 3), - body := (.build (.adt 0) (.adt 3) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.value .nat (.nat 1)), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 3)], result := (.adt 3), - body := (.build (.adt 0) (.adt 3) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.value .nat (.nat 1)), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 3)], result := (.adt 3), - body := (.build (.adt 0) (.adt 3) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.value .nat (.nat 1)), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 3)], result := (.adt 3), - body := (.build (.adt 0) (.adt 3) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.value .nat (.nat 1)), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 3)], result := (.adt 3), - body := (.build (.adt 0) (.adt 3) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.value .nat (.nat 1)), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 3)], result := (.adt 3), - body := (.build (.adt 0) (.adt 3) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.prim .natAdd [(.field (.var 0) 8), (.value .nat (.nat 1))])]) }) ::[]) } - -def __enc_0 (__s : (Reasoning.Clinic.Vitals)) : _root_.LexLeanTarget.TargetSyntax.Value := - _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).temperature), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).heartRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).respiratoryRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).whiteCells), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).systolic), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).infection)] - -def __enc_1 : (Reasoning.Clinic.Triage.Step) -> _root_.LexLeanTarget.TargetSyntax.Value - | Reasoning.Clinic.Triage.Step.Fever => _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [] - | Reasoning.Clinic.Triage.Step.Tachycardia => _root_.LexLeanTarget.TargetSyntax.Value.adt 1 [] - | Reasoning.Clinic.Triage.Step.Tachypnea => _root_.LexLeanTarget.TargetSyntax.Value.adt 2 [] - | Reasoning.Clinic.Triage.Step.Leukocytosis => _root_.LexLeanTarget.TargetSyntax.Value.adt 3 [] - | Reasoning.Clinic.Triage.Step.Sirs => _root_.LexLeanTarget.TargetSyntax.Value.adt 4 [] - | Reasoning.Clinic.Triage.Step.Sepsis => _root_.LexLeanTarget.TargetSyntax.Value.adt 5 [] - | Reasoning.Clinic.Triage.Step.Shock => _root_.LexLeanTarget.TargetSyntax.Value.adt 6 [] - | Reasoning.Clinic.Triage.Step.Escalate => _root_.LexLeanTarget.TargetSyntax.Value.adt 7 [] - -def __enc_3 (__s : (Reasoning.Clinic.Chart)) : _root_.LexLeanTarget.TargetSyntax.Value := - _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [(__enc_0 (__s).vitals), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).fever), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).tachycardia), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).tachypnea), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).leukocytosis), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).sirs), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).sepsis), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).shock), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).level)] - -def __enc_4 (__s : (Reasoning.Clinic.Triage.Ledger)) : _root_.LexLeanTarget.TargetSyntax.Value := - _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).iterations), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).attempts), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).firings), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).expansions), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).verifications), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).frontier)] - -def __enc_2 (__s : (Reasoning.Clinic.Triage.Run)) : _root_.LexLeanTarget.TargetSyntax.Value := - _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [(__enc_3 (__s).state), ((_root_.LexLeanPreservation.encList __enc_1) (__s).trace), (__enc_4 (__s).ledger)] - -def __fits_31 (v : (Reasoning.Clinic.Vitals)) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_31 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 31 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_31 v) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.feverish v))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (380 : Nat) (v).temperature)) - -def __fits_14 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).fever (0 : Nat)) then ((Bool.true && Bool.true) && (__fits_31 ((s).vitals))) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.feverish in -theorem __rel_14 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 14 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_14 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Fever.guard s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && (__fits_31 ((s).vitals))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Reasoning.Clinic.feverish ((s).vitals)))) (Nat.beq (s).fever (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).fever (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_31 ((s).vitals)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) - -def __fits_32 (v : (Reasoning.Clinic.Vitals)) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_32 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 32 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_32 v) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.tachycardic v))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (90 : Nat) (v).heartRate)) - -def __fits_15 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).tachycardia (0 : Nat)) then ((Bool.true && Bool.true) && (__fits_32 ((s).vitals))) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.tachycardic in -theorem __rel_15 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 15 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_15 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Tachycardia.guard s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && (__fits_32 ((s).vitals))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Reasoning.Clinic.tachycardic ((s).vitals)))) (Nat.beq (s).tachycardia (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).tachycardia (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_32 ((s).vitals)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) - -def __fits_33 (v : (Reasoning.Clinic.Vitals)) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_33 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 33 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_33 v) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.tachypneic v))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (20 : Nat) (v).respiratoryRate)) - -def __fits_16 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).tachypnea (0 : Nat)) then ((Bool.true && Bool.true) && (__fits_33 ((s).vitals))) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.tachypneic in -theorem __rel_16 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 16 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_16 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Tachypnea.guard s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && (__fits_33 ((s).vitals))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Reasoning.Clinic.tachypneic ((s).vitals)))) (Nat.beq (s).tachypnea (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).tachypnea (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_33 ((s).vitals)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) - -def __fits_34 (v : (Reasoning.Clinic.Vitals)) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_34 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 34 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_34 v) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.leukocytic v))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (12 : Nat) (v).whiteCells)) - -def __fits_17 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).leukocytosis (0 : Nat)) then ((Bool.true && Bool.true) && (__fits_34 ((s).vitals))) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.leukocytic in -theorem __rel_17 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 17 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_17 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Leukocytosis.guard s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && (__fits_34 ((s).vitals))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Reasoning.Clinic.leukocytic ((s).vitals)))) (Nat.beq (s).leukocytosis (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).leukocytosis (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_34 ((s).vitals)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) - -def __fits_18 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sirs (0 : Nat)) then ((Bool.true && (((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((s).fever + (s).tachycardia) 18446744073709551616)) && (Bool.true && Bool.true)) && (Nat.blt (((s).fever + (s).tachycardia) + (s).tachypnea) 18446744073709551616)) && (Bool.true && Bool.true)) && (Nat.blt ((((s).fever + (s).tachycardia) + (s).tachypnea) + (s).leukocytosis) 18446744073709551616)) && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) - -theorem __rel_18 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 18 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_18 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Sirs.guard s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((s).fever + (s).tachycardia) 18446744073709551616)) && (Bool.true && Bool.true)) && (Nat.blt (((s).fever + (s).tachycardia) + (s).tachypnea) 18446744073709551616)) && (Bool.true && Bool.true)) && (Nat.blt ((((s).fever + (s).tachycardia) + (s).tachypnea) + (s).leukocytosis) 18446744073709551616)) && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.ble (2 : Nat) ((((s).fever + (s).tachycardia) + (s).tachypnea) + (s).leukocytosis)))) (Nat.beq (s).sirs (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sirs (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (s).fever (s).tachycardia)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((s).fever + (s).tachycardia) (s).tachypnea)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (((s).fever + (s).tachycardia) + (s).tachypnea) (s).leukocytosis)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe (2 : Nat) ((((s).fever + (s).tachycardia) + (s).tachypnea) + (s).leukocytosis)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) - -def __fits_19 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sepsis (0 : Nat)) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sirs (1 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) - -theorem __rel_19 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 19 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_19 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Sepsis.guard s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sirs (1 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && ((Nat.beq (s).sirs (1 : Nat)) && (Nat.beq ((s).vitals).infection (1 : Nat))))) (Nat.beq (s).sepsis (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sepsis (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.beq ((s).vitals).infection (1 : Nat)))) (Nat.beq (s).sirs (1 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sirs (1 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq ((s).vitals).infection (1 : Nat)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) - -def __fits_30 (v : (Reasoning.Clinic.Vitals)) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_30 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 30 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_30 v) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.hypotensive v))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (v).systolic (90 : Nat))) - -def __fits_20 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).shock (0 : Nat)) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sepsis (1 : Nat)) then ((Bool.true && Bool.true) && (__fits_30 ((s).vitals))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.hypotensive in -theorem __rel_20 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 20 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_20 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Shock.guard s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sepsis (1 : Nat)) then ((Bool.true && Bool.true) && (__fits_30 ((s).vitals))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && ((Nat.beq (s).sepsis (1 : Nat)) && (Reasoning.Clinic.hypotensive ((s).vitals))))) (Nat.beq (s).shock (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).shock (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && (__fits_30 ((s).vitals))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Reasoning.Clinic.hypotensive ((s).vitals)))) (Nat.beq (s).sepsis (1 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sepsis (1 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_30 ((s).vitals)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) - -def __fits_21 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.blt (s).level (3 : Nat)) then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (0 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if ((Nat.beq (s).level (0 : Nat)) && (Nat.beq (s).sirs (1 : Nat))) then (Bool.true && Bool.true) else ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (1 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if ((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (2 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))))))) else (Bool.true && Bool.true))) - -theorem __rel_21 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 21 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_21 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Escalate.guard s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (0 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if ((Nat.beq (s).level (0 : Nat)) && (Nat.beq (s).sirs (1 : Nat))) then (Bool.true && Bool.true) else ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (1 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if ((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (2 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))))))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (((Nat.beq (s).level (0 : Nat)) && (Nat.beq (s).sirs (1 : Nat))) || (((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) || ((Nat.beq (s).level (2 : Nat)) && (Nat.beq (s).shock (1 : Nat))))))) (Nat.blt (s).level (3 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (s).level (3 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (Bool.true && Bool.true) else ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (1 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if ((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (2 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b || (((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) || ((Nat.beq (s).level (2 : Nat)) && (Nat.beq (s).shock (1 : Nat)))))) ((Nat.beq (s).level (0 : Nat)) && (Nat.beq (s).sirs (1 : Nat))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.beq (s).sirs (1 : Nat)))) (Nat.beq (s).level (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).level (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sirs (1 : Nat)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (2 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b || ((Nat.beq (s).level (2 : Nat)) && (Nat.beq (s).shock (1 : Nat))))) ((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.beq (s).sepsis (1 : Nat)))) (Nat.beq (s).level (1 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).level (1 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sepsis (1 : Nat)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.beq (s).shock (1 : Nat)))) (Nat.beq (s).level (2 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).level (2 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).shock (1 : Nat)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))))))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) - -def __fits_9 (_ys : (Reasoning.Clinic.Chart)) : Bool := - ((((((Bool.true && Bool.true) && (__fits_14 (_ys))) && (if (Reasoning.Clinic.Fever.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Fever : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_15 (_ys))) && (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) && (match (match (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Fever : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachycardia : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((Bool.true && Bool.true) && (__fits_16 (_ys))) && (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachypnea : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_17 (_ys))) && (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))) && (match (match (match (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Fever : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachycardia : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (match (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachypnea : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Leukocytosis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((((Bool.true && Bool.true) && (__fits_18 (_ys))) && (if (Reasoning.Clinic.Sirs.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_19 (_ys))) && (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) && (match (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sepsis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((Bool.true && Bool.true) && (__fits_20 (_ys))) && (if (Reasoning.Clinic.Shock.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Shock : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_21 (_ys))) && (if (Reasoning.Clinic.Escalate.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))))) - -attribute [local irreducible] Reasoning.Clinic.Escalate.guard Reasoning.Clinic.Fever.guard Reasoning.Clinic.Leukocytosis.guard Reasoning.Clinic.Sepsis.guard Reasoning.Clinic.Shock.guard Reasoning.Clinic.Sirs.guard Reasoning.Clinic.Tachycardia.guard Reasoning.Clinic.Tachypnea.guard in -theorem __rel_9 (_ys : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 9 [(__enc_3 _ys)] (_root_.LexLeanPreservation.Rel (__fits_9 _ys) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Triage.select _ys))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_1) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((((Bool.true && Bool.true) && (__fits_18 (_ys))) && (if (Reasoning.Clinic.Sirs.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_19 (_ys))) && (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) && (match (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sepsis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((Bool.true && Bool.true) && (__fits_20 (_ys))) && (if (Reasoning.Clinic.Shock.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Shock : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_21 (_ys))) && (if (Reasoning.Clinic.Escalate.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_1) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (match (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sepsis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (match (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Shock : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Escalate.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Escalate : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))))))) (match (match (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Fever : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachycardia : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (match (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachypnea : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Leukocytosis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))))) (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_1) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((Bool.true && Bool.true) && (__fits_16 (_ys))) && (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachypnea : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_17 (_ys))) && (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_1) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (match (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachypnea : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Leukocytosis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))))) (match (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Fever : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachycardia : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_1) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_15 (_ys))) && (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_1) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachycardia : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))))) (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Fever : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Fever : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Fever.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_14 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Tachycardia : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Tachycardia.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_15 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_1) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_17 (_ys))) && (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_1) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Leukocytosis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))))) (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Tachypnea : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Tachypnea : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Tachypnea.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_16 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Leukocytosis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Leukocytosis.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_17 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_1) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((Bool.true && Bool.true) && (__fits_20 (_ys))) && (if (Reasoning.Clinic.Shock.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Shock : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_21 (_ys))) && (if (Reasoning.Clinic.Escalate.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_1) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (match (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Shock : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Escalate.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Escalate : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))))) (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sepsis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_1) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_19 (_ys))) && (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_1) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sepsis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))))) (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Sirs : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Sirs.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_18 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Sepsis : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Sepsis.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_19 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_1) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_21 (_ys))) && (if (Reasoning.Clinic.Escalate.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_1) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Clinic.Triage.Step))) | Option.none => (if (Reasoning.Clinic.Escalate.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Escalate : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))))) (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Clinic.Triage.Step.Shock : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step)))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Shock : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Shock.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_20 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Triage.Step.Escalate : (Reasoning.Clinic.Triage.Step))) : (Option (Reasoning.Clinic.Triage.Step))) else (Option.none : (Option (Reasoning.Clinic.Triage.Step))))) (Reasoning.Clinic.Escalate.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_21 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))))))))))) - -def __fits_35 (s : (Reasoning.Clinic.Chart)) : Bool := - ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) - -theorem __rel_35 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 35 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_35 s) (__enc_3 (Reasoning.Clinic.Fever.conclusion s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) - -def __fits_22 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && Bool.true) && (__fits_14 (s))) && (if (Reasoning.Clinic.Fever.guard (s)) then ((((Bool.true && Bool.true) && (__fits_35 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.Fever.conclusion Reasoning.Clinic.Fever.guard in -theorem __rel_22 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 22 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_22 s) ((_root_.LexLeanPreservation.encOption __enc_3) (Reasoning.Clinic.Fever.apply s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_35 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_3) (if __b then (Option.some ((Reasoning.Clinic.Fever.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Fever.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_14 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_35 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_36 (s : (Reasoning.Clinic.Chart)) : Bool := - ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) - -theorem __rel_36 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 36 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_36 s) (__enc_3 (Reasoning.Clinic.Tachycardia.conclusion s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) - -def __fits_23 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && Bool.true) && (__fits_15 (s))) && (if (Reasoning.Clinic.Tachycardia.guard (s)) then ((((Bool.true && Bool.true) && (__fits_36 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.Tachycardia.conclusion Reasoning.Clinic.Tachycardia.guard in -theorem __rel_23 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 23 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_23 s) ((_root_.LexLeanPreservation.encOption __enc_3) (Reasoning.Clinic.Tachycardia.apply s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_36 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_3) (if __b then (Option.some ((Reasoning.Clinic.Tachycardia.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Tachycardia.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_15 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_36 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_37 (s : (Reasoning.Clinic.Chart)) : Bool := - ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) - -theorem __rel_37 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 37 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_37 s) (__enc_3 (Reasoning.Clinic.Tachypnea.conclusion s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) - -def __fits_24 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && Bool.true) && (__fits_16 (s))) && (if (Reasoning.Clinic.Tachypnea.guard (s)) then ((((Bool.true && Bool.true) && (__fits_37 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.Tachypnea.conclusion Reasoning.Clinic.Tachypnea.guard in -theorem __rel_24 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 24 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_24 s) ((_root_.LexLeanPreservation.encOption __enc_3) (Reasoning.Clinic.Tachypnea.apply s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_37 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_3) (if __b then (Option.some ((Reasoning.Clinic.Tachypnea.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Tachypnea.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_16 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_37 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_38 (s : (Reasoning.Clinic.Chart)) : Bool := - ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) - -theorem __rel_38 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 38 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_38 s) (__enc_3 (Reasoning.Clinic.Leukocytosis.conclusion s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) - -def __fits_25 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && Bool.true) && (__fits_17 (s))) && (if (Reasoning.Clinic.Leukocytosis.guard (s)) then ((((Bool.true && Bool.true) && (__fits_38 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.Leukocytosis.conclusion Reasoning.Clinic.Leukocytosis.guard in -theorem __rel_25 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 25 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_25 s) ((_root_.LexLeanPreservation.encOption __enc_3) (Reasoning.Clinic.Leukocytosis.apply s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_38 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_3) (if __b then (Option.some ((Reasoning.Clinic.Leukocytosis.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Leukocytosis.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_17 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_38 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_39 (s : (Reasoning.Clinic.Chart)) : Bool := - ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) - -theorem __rel_39 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 39 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_39 s) (__enc_3 (Reasoning.Clinic.Sirs.conclusion s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) - -def __fits_26 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && Bool.true) && (__fits_18 (s))) && (if (Reasoning.Clinic.Sirs.guard (s)) then ((((Bool.true && Bool.true) && (__fits_39 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.Sirs.conclusion Reasoning.Clinic.Sirs.guard in -theorem __rel_26 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 26 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_26 s) ((_root_.LexLeanPreservation.encOption __enc_3) (Reasoning.Clinic.Sirs.apply s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_39 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_3) (if __b then (Option.some ((Reasoning.Clinic.Sirs.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Sirs.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_18 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_39 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_40 (s : (Reasoning.Clinic.Chart)) : Bool := - ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) - -theorem __rel_40 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 40 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_40 s) (__enc_3 (Reasoning.Clinic.Sepsis.conclusion s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) - -def __fits_27 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && Bool.true) && (__fits_19 (s))) && (if (Reasoning.Clinic.Sepsis.guard (s)) then ((((Bool.true && Bool.true) && (__fits_40 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.Sepsis.conclusion Reasoning.Clinic.Sepsis.guard in -theorem __rel_27 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 27 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_27 s) ((_root_.LexLeanPreservation.encOption __enc_3) (Reasoning.Clinic.Sepsis.apply s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_40 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_3) (if __b then (Option.some ((Reasoning.Clinic.Sepsis.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Sepsis.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_19 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_40 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_41 (s : (Reasoning.Clinic.Chart)) : Bool := - ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) - -theorem __rel_41 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 41 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_41 s) (__enc_3 (Reasoning.Clinic.Shock.conclusion s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) - -def __fits_28 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && Bool.true) && (__fits_20 (s))) && (if (Reasoning.Clinic.Shock.guard (s)) then ((((Bool.true && Bool.true) && (__fits_41 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.Shock.conclusion Reasoning.Clinic.Shock.guard in -theorem __rel_28 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 28 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_28 s) ((_root_.LexLeanPreservation.encOption __enc_3) (Reasoning.Clinic.Shock.apply s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_41 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_3) (if __b then (Option.some ((Reasoning.Clinic.Shock.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Shock.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_20 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_41 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_42 (s : (Reasoning.Clinic.Chart)) : Bool := - ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((s).level + (1 : Nat)) 18446744073709551616)) && Bool.true))))))))) && Bool.true) - -theorem __rel_42 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 42 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_42 s) (__enc_3 (Reasoning.Clinic.Escalate.conclusion s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (s).level (1 : Nat))) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) - -def __fits_29 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && Bool.true) && (__fits_21 (s))) && (if (Reasoning.Clinic.Escalate.guard (s)) then ((((Bool.true && Bool.true) && (__fits_42 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.Escalate.conclusion Reasoning.Clinic.Escalate.guard in -theorem __rel_29 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 29 [(__enc_3 s)] (_root_.LexLeanPreservation.Rel (__fits_29 s) ((_root_.LexLeanPreservation.encOption __enc_3) (Reasoning.Clinic.Escalate.apply s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_42 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_3) (if __b then (Option.some ((Reasoning.Clinic.Escalate.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Escalate.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_21 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_42 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_10 (_ys : (Reasoning.Clinic.Chart)) (_ystep : (Reasoning.Clinic.Triage.Step)) : Bool := - (Bool.true && (match _ystep with | Reasoning.Clinic.Triage.Step.Fever => ((Bool.true && Bool.true) && (__fits_22 (_ys))) | Reasoning.Clinic.Triage.Step.Tachycardia => ((Bool.true && Bool.true) && (__fits_23 (_ys))) | Reasoning.Clinic.Triage.Step.Tachypnea => ((Bool.true && Bool.true) && (__fits_24 (_ys))) | Reasoning.Clinic.Triage.Step.Leukocytosis => ((Bool.true && Bool.true) && (__fits_25 (_ys))) | Reasoning.Clinic.Triage.Step.Sirs => ((Bool.true && Bool.true) && (__fits_26 (_ys))) | Reasoning.Clinic.Triage.Step.Sepsis => ((Bool.true && Bool.true) && (__fits_27 (_ys))) | Reasoning.Clinic.Triage.Step.Shock => ((Bool.true && Bool.true) && (__fits_28 (_ys))) | Reasoning.Clinic.Triage.Step.Escalate => ((Bool.true && Bool.true) && (__fits_29 (_ys))))) - -attribute [local irreducible] Reasoning.Clinic.Escalate.apply Reasoning.Clinic.Fever.apply Reasoning.Clinic.Leukocytosis.apply Reasoning.Clinic.Sepsis.apply Reasoning.Clinic.Shock.apply Reasoning.Clinic.Sirs.apply Reasoning.Clinic.Tachycardia.apply Reasoning.Clinic.Tachypnea.apply in -theorem __rel_10 (_ys : (Reasoning.Clinic.Chart)) (_ystep : (Reasoning.Clinic.Triage.Step)) : _root_.LexLeanPreservation.FunRel __prog 10 [(__enc_3 _ys), (__enc_1 _ystep)] (_root_.LexLeanPreservation.Rel (__fits_10 _ys _ystep) ((_root_.LexLeanPreservation.encOption __enc_3) (Reasoning.Clinic.Triage.fire _ys _ystep))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV __enc_1 (fun (__a : (Reasoning.Clinic.Triage.Step)) => (match __a with | Reasoning.Clinic.Triage.Step.Fever => ((Bool.true && Bool.true) && (__fits_22 (_ys))) | Reasoning.Clinic.Triage.Step.Tachycardia => ((Bool.true && Bool.true) && (__fits_23 (_ys))) | Reasoning.Clinic.Triage.Step.Tachypnea => ((Bool.true && Bool.true) && (__fits_24 (_ys))) | Reasoning.Clinic.Triage.Step.Leukocytosis => ((Bool.true && Bool.true) && (__fits_25 (_ys))) | Reasoning.Clinic.Triage.Step.Sirs => ((Bool.true && Bool.true) && (__fits_26 (_ys))) | Reasoning.Clinic.Triage.Step.Sepsis => ((Bool.true && Bool.true) && (__fits_27 (_ys))) | Reasoning.Clinic.Triage.Step.Shock => ((Bool.true && Bool.true) && (__fits_28 (_ys))) | Reasoning.Clinic.Triage.Step.Escalate => ((Bool.true && Bool.true) && (__fits_29 (_ys))))) (fun (__a : (Reasoning.Clinic.Triage.Step)) => (_root_.LexLeanPreservation.encOption __enc_3) (match __a with | Reasoning.Clinic.Triage.Step.Fever => (Reasoning.Clinic.Fever.apply (_ys)) | Reasoning.Clinic.Triage.Step.Tachycardia => (Reasoning.Clinic.Tachycardia.apply (_ys)) | Reasoning.Clinic.Triage.Step.Tachypnea => (Reasoning.Clinic.Tachypnea.apply (_ys)) | Reasoning.Clinic.Triage.Step.Leukocytosis => (Reasoning.Clinic.Leukocytosis.apply (_ys)) | Reasoning.Clinic.Triage.Step.Sirs => (Reasoning.Clinic.Sirs.apply (_ys)) | Reasoning.Clinic.Triage.Step.Sepsis => (Reasoning.Clinic.Sepsis.apply (_ys)) | Reasoning.Clinic.Triage.Step.Shock => (Reasoning.Clinic.Shock.apply (_ys)) | Reasoning.Clinic.Triage.Step.Escalate => (Reasoning.Clinic.Escalate.apply (_ys)))) _ystep (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (Reasoning.Clinic.Triage.Step)) _ => match __a with | Reasoning.Clinic.Triage.Step.Fever => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_22 (_ys)))) | Reasoning.Clinic.Triage.Step.Tachycardia => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_23 (_ys))))) | Reasoning.Clinic.Triage.Step.Tachypnea => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_24 (_ys)))))) | Reasoning.Clinic.Triage.Step.Leukocytosis => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_25 (_ys))))))) | Reasoning.Clinic.Triage.Step.Sirs => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_26 (_ys)))))))) | Reasoning.Clinic.Triage.Step.Sepsis => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_27 (_ys))))))))) | Reasoning.Clinic.Triage.Step.Shock => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_28 (_ys)))))))))) | Reasoning.Clinic.Triage.Step.Escalate => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_29 (_ys))))))))))))) - -def __fits_11 (_ys : (Reasoning.Clinic.Chart)) : Bool := - (((((((Bool.true && Bool.true) && (__fits_14 (_ys))) && (Bool.true && Bool.true)) && Bool.true) && (let _yscan0l : (Prod Bool Nat) := ((Reasoning.Clinic.Fever.guard (_ys)), (1 : Nat)); (Bool.true && (if (_yscan0l).1 then Bool.true else (((((Bool.true && Bool.true) && (__fits_15 (_ys))) && (Bool.true && Bool.true)) && Bool.true) && (let _yscan0r : (Prod Bool Nat) := ((Reasoning.Clinic.Tachycardia.guard (_ys)), (1 : Nat)); ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((_yscan0l).2 + (_yscan0r).2) 18446744073709551616)) && Bool.true)) && Bool.true))))))) && (let _yscan2l : (Prod Bool Nat) := (let _yscan0l : (Prod Bool Nat) := ((Reasoning.Clinic.Fever.guard (_ys)), (1 : Nat)); (if (_yscan0l).1 then _yscan0l else (let _yscan0r : (Prod Bool Nat) := ((Reasoning.Clinic.Tachycardia.guard (_ys)), (1 : Nat)); ((_yscan0r).1, ((_yscan0l).2 + (_yscan0r).2))))); (Bool.true && (if (_yscan2l).1 then Bool.true else ((((((Bool.true && Bool.true) && (__fits_16 (_ys))) && (Bool.true && Bool.true)) && Bool.true) && (let _yscan1l : (Prod Bool Nat) := ((Reasoning.Clinic.Tachypnea.guard (_ys)), (1 : Nat)); (Bool.true && (if (_yscan1l).1 then Bool.true else (((((Bool.true && Bool.true) && (__fits_17 (_ys))) && (Bool.true && Bool.true)) && Bool.true) && (let _yscan1r : (Prod Bool Nat) := ((Reasoning.Clinic.Leukocytosis.guard (_ys)), (1 : Nat)); ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((_yscan1l).2 + (_yscan1r).2) 18446744073709551616)) && Bool.true)) && Bool.true))))))) && (let _yscan2r : (Prod Bool Nat) := (let _yscan1l : (Prod Bool Nat) := ((Reasoning.Clinic.Tachypnea.guard (_ys)), (1 : Nat)); (if (_yscan1l).1 then _yscan1l else (let _yscan1r : (Prod Bool Nat) := ((Reasoning.Clinic.Leukocytosis.guard (_ys)), (1 : Nat)); ((_yscan1r).1, ((_yscan1l).2 + (_yscan1r).2))))); ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((_yscan2l).2 + (_yscan2r).2) 18446744073709551616)) && Bool.true)) && Bool.true))))))) && (let _yscan6l : (Prod Bool Nat) := (let _yscan2l : (Prod Bool Nat) := (let _yscan0l : (Prod Bool Nat) := ((Reasoning.Clinic.Fever.guard (_ys)), (1 : Nat)); (if (_yscan0l).1 then _yscan0l else (let _yscan0r : (Prod Bool Nat) := ((Reasoning.Clinic.Tachycardia.guard (_ys)), (1 : Nat)); ((_yscan0r).1, ((_yscan0l).2 + (_yscan0r).2))))); (if (_yscan2l).1 then _yscan2l else (let _yscan2r : (Prod Bool Nat) := (let _yscan1l : (Prod Bool Nat) := ((Reasoning.Clinic.Tachypnea.guard (_ys)), (1 : Nat)); (if (_yscan1l).1 then _yscan1l else (let _yscan1r : (Prod Bool Nat) := ((Reasoning.Clinic.Leukocytosis.guard (_ys)), (1 : Nat)); ((_yscan1r).1, ((_yscan1l).2 + (_yscan1r).2))))); ((_yscan2r).1, ((_yscan2l).2 + (_yscan2r).2))))); (Bool.true && (if (_yscan6l).1 then Bool.true else (((((((Bool.true && Bool.true) && (__fits_18 (_ys))) && (Bool.true && Bool.true)) && Bool.true) && (let _yscan3l : (Prod Bool Nat) := ((Reasoning.Clinic.Sirs.guard (_ys)), (1 : Nat)); (Bool.true && (if (_yscan3l).1 then Bool.true else (((((Bool.true && Bool.true) && (__fits_19 (_ys))) && (Bool.true && Bool.true)) && Bool.true) && (let _yscan3r : (Prod Bool Nat) := ((Reasoning.Clinic.Sepsis.guard (_ys)), (1 : Nat)); ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((_yscan3l).2 + (_yscan3r).2) 18446744073709551616)) && Bool.true)) && Bool.true))))))) && (let _yscan5l : (Prod Bool Nat) := (let _yscan3l : (Prod Bool Nat) := ((Reasoning.Clinic.Sirs.guard (_ys)), (1 : Nat)); (if (_yscan3l).1 then _yscan3l else (let _yscan3r : (Prod Bool Nat) := ((Reasoning.Clinic.Sepsis.guard (_ys)), (1 : Nat)); ((_yscan3r).1, ((_yscan3l).2 + (_yscan3r).2))))); (Bool.true && (if (_yscan5l).1 then Bool.true else ((((((Bool.true && Bool.true) && (__fits_20 (_ys))) && (Bool.true && Bool.true)) && Bool.true) && (let _yscan4l : (Prod Bool Nat) := ((Reasoning.Clinic.Shock.guard (_ys)), (1 : Nat)); (Bool.true && (if (_yscan4l).1 then Bool.true else (((((Bool.true && Bool.true) && (__fits_21 (_ys))) && (Bool.true && Bool.true)) && Bool.true) && (let _yscan4r : (Prod Bool Nat) := ((Reasoning.Clinic.Escalate.guard (_ys)), (1 : Nat)); ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((_yscan4l).2 + (_yscan4r).2) 18446744073709551616)) && Bool.true)) && Bool.true))))))) && (let _yscan5r : (Prod Bool Nat) := (let _yscan4l : (Prod Bool Nat) := ((Reasoning.Clinic.Shock.guard (_ys)), (1 : Nat)); (if (_yscan4l).1 then _yscan4l else (let _yscan4r : (Prod Bool Nat) := ((Reasoning.Clinic.Escalate.guard (_ys)), (1 : Nat)); ((_yscan4r).1, ((_yscan4l).2 + (_yscan4r).2))))); ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((_yscan5l).2 + (_yscan5r).2) 18446744073709551616)) && Bool.true)) && Bool.true))))))) && (let _yscan6r : (Prod Bool Nat) := (let _yscan5l : (Prod Bool Nat) := (let _yscan3l : (Prod Bool Nat) := ((Reasoning.Clinic.Sirs.guard (_ys)), (1 : Nat)); (if (_yscan3l).1 then _yscan3l else (let _yscan3r : (Prod Bool Nat) := ((Reasoning.Clinic.Sepsis.guard (_ys)), (1 : Nat)); ((_yscan3r).1, ((_yscan3l).2 + (_yscan3r).2))))); (if (_yscan5l).1 then _yscan5l else (let _yscan5r : (Prod Bool Nat) := (let _yscan4l : (Prod Bool Nat) := ((Reasoning.Clinic.Shock.guard (_ys)), (1 : Nat)); (if (_yscan4l).1 then _yscan4l else (let _yscan4r : (Prod Bool Nat) := ((Reasoning.Clinic.Escalate.guard (_ys)), (1 : Nat)); ((_yscan4r).1, ((_yscan4l).2 + (_yscan4r).2))))); ((_yscan5r).1, ((_yscan5l).2 + (_yscan5r).2))))); ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((_yscan6l).2 + (_yscan6r).2) 18446744073709551616)) && Bool.true)) && Bool.true))))))) - -attribute [local irreducible] Reasoning.Clinic.Escalate.guard Reasoning.Clinic.Fever.guard Reasoning.Clinic.Leukocytosis.guard Reasoning.Clinic.Sepsis.guard Reasoning.Clinic.Shock.guard Reasoning.Clinic.Sirs.guard Reasoning.Clinic.Tachycardia.guard Reasoning.Clinic.Tachypnea.guard in -theorem __rel_11 (_ys : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 11 [(__enc_3 _ys)] (_root_.LexLeanPreservation.Rel (__fits_11 _ys) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Clinic.Triage.attempts _ys))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_second (let _yscan6l : (Prod Bool Nat) := (let _yscan2l : (Prod Bool Nat) := (let _yscan0l : (Prod Bool Nat) := ((Reasoning.Clinic.Fever.guard (_ys)), (1 : Nat)); (if (_yscan0l).1 then _yscan0l else (let _yscan0r : (Prod Bool Nat) := ((Reasoning.Clinic.Tachycardia.guard (_ys)), (1 : Nat)); ((_yscan0r).1, ((_yscan0l).2 + (_yscan0r).2))))); (if (_yscan2l).1 then _yscan2l else (let _yscan2r : (Prod Bool Nat) := (let _yscan1l : (Prod Bool Nat) := ((Reasoning.Clinic.Tachypnea.guard (_ys)), (1 : Nat)); (if (_yscan1l).1 then _yscan1l else (let _yscan1r : (Prod Bool Nat) := ((Reasoning.Clinic.Leukocytosis.guard (_ys)), (1 : Nat)); ((_yscan1r).1, ((_yscan1l).2 + (_yscan1r).2))))); ((_yscan2r).1, ((_yscan2l).2 + (_yscan2r).2))))); _root_.LexLeanPreservation.conv_let (let _yscan2l : (Prod Bool Nat) := (let _yscan0l : (Prod Bool Nat) := ((Reasoning.Clinic.Fever.guard (_ys)), (1 : Nat)); (if (_yscan0l).1 then _yscan0l else (let _yscan0r : (Prod Bool Nat) := ((Reasoning.Clinic.Tachycardia.guard (_ys)), (1 : Nat)); ((_yscan0r).1, ((_yscan0l).2 + (_yscan0r).2))))); _root_.LexLeanPreservation.conv_let (let _yscan0l : (Prod Bool Nat) := ((Reasoning.Clinic.Fever.guard (_ys)), (1 : Nat)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_14 (_ys))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else (((((Bool.true && Bool.true) && (__fits_15 (_ys))) && (Bool.true && Bool.true)) && Bool.true) && (let _yscan0r : (Prod Bool Nat) := ((Reasoning.Clinic.Tachycardia.guard (_ys)), (1 : Nat)); ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((_yscan0l).2 + (_yscan0r).2) 18446744073709551616)) && Bool.true)) && Bool.true))))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then _yscan0l else (let _yscan0r : (Prod Bool Nat) := ((Reasoning.Clinic.Tachycardia.guard (_ys)), (1 : Nat)); ((_yscan0r).1, ((_yscan0l).2 + (_yscan0r).2))))) (_yscan0l).1 (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (fun _ => (_root_.LexLeanPreservation.conv_var rfl)) (fun _ => (let _yscan0r : (Prod Bool Nat) := ((Reasoning.Clinic.Tachycardia.guard (_ys)), (1 : Nat)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_15 (_ys))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (_yscan0l).2 (_yscan0r).2)) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else ((((((Bool.true && Bool.true) && (__fits_16 (_ys))) && (Bool.true && Bool.true)) && Bool.true) && (let _yscan1l : (Prod Bool Nat) := ((Reasoning.Clinic.Tachypnea.guard (_ys)), (1 : Nat)); (Bool.true && (if (_yscan1l).1 then Bool.true else (((((Bool.true && Bool.true) && (__fits_17 (_ys))) && (Bool.true && Bool.true)) && Bool.true) && (let _yscan1r : (Prod Bool Nat) := ((Reasoning.Clinic.Leukocytosis.guard (_ys)), (1 : Nat)); ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((_yscan1l).2 + (_yscan1r).2) 18446744073709551616)) && Bool.true)) && Bool.true))))))) && (let _yscan2r : (Prod Bool Nat) := (let _yscan1l : (Prod Bool Nat) := ((Reasoning.Clinic.Tachypnea.guard (_ys)), (1 : Nat)); (if (_yscan1l).1 then _yscan1l else (let _yscan1r : (Prod Bool Nat) := ((Reasoning.Clinic.Leukocytosis.guard (_ys)), (1 : Nat)); ((_yscan1r).1, ((_yscan1l).2 + (_yscan1r).2))))); ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((_yscan2l).2 + (_yscan2r).2) 18446744073709551616)) && Bool.true)) && Bool.true))))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then _yscan2l else (let _yscan2r : (Prod Bool Nat) := (let _yscan1l : (Prod Bool Nat) := ((Reasoning.Clinic.Tachypnea.guard (_ys)), (1 : Nat)); (if (_yscan1l).1 then _yscan1l else (let _yscan1r : (Prod Bool Nat) := ((Reasoning.Clinic.Leukocytosis.guard (_ys)), (1 : Nat)); ((_yscan1r).1, ((_yscan1l).2 + (_yscan1r).2))))); ((_yscan2r).1, ((_yscan2l).2 + (_yscan2r).2))))) (_yscan2l).1 (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (fun _ => (_root_.LexLeanPreservation.conv_var rfl)) (fun _ => (let _yscan2r : (Prod Bool Nat) := (let _yscan1l : (Prod Bool Nat) := ((Reasoning.Clinic.Tachypnea.guard (_ys)), (1 : Nat)); (if (_yscan1l).1 then _yscan1l else (let _yscan1r : (Prod Bool Nat) := ((Reasoning.Clinic.Leukocytosis.guard (_ys)), (1 : Nat)); ((_yscan1r).1, ((_yscan1l).2 + (_yscan1r).2))))); _root_.LexLeanPreservation.conv_let (let _yscan1l : (Prod Bool Nat) := ((Reasoning.Clinic.Tachypnea.guard (_ys)), (1 : Nat)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_16 (_ys))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else (((((Bool.true && Bool.true) && (__fits_17 (_ys))) && (Bool.true && Bool.true)) && Bool.true) && (let _yscan1r : (Prod Bool Nat) := ((Reasoning.Clinic.Leukocytosis.guard (_ys)), (1 : Nat)); ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((_yscan1l).2 + (_yscan1r).2) 18446744073709551616)) && Bool.true)) && Bool.true))))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then _yscan1l else (let _yscan1r : (Prod Bool Nat) := ((Reasoning.Clinic.Leukocytosis.guard (_ys)), (1 : Nat)); ((_yscan1r).1, ((_yscan1l).2 + (_yscan1r).2))))) (_yscan1l).1 (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (fun _ => (_root_.LexLeanPreservation.conv_var rfl)) (fun _ => (let _yscan1r : (Prod Bool Nat) := ((Reasoning.Clinic.Leukocytosis.guard (_ys)), (1 : Nat)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_17 (_ys))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (_yscan1l).2 (_yscan1r).2)) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))))) (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (_yscan2l).2 (_yscan2r).2)) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else (((((((Bool.true && Bool.true) && (__fits_18 (_ys))) && (Bool.true && Bool.true)) && Bool.true) && (let _yscan3l : (Prod Bool Nat) := ((Reasoning.Clinic.Sirs.guard (_ys)), (1 : Nat)); (Bool.true && (if (_yscan3l).1 then Bool.true else (((((Bool.true && Bool.true) && (__fits_19 (_ys))) && (Bool.true && Bool.true)) && Bool.true) && (let _yscan3r : (Prod Bool Nat) := ((Reasoning.Clinic.Sepsis.guard (_ys)), (1 : Nat)); ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((_yscan3l).2 + (_yscan3r).2) 18446744073709551616)) && Bool.true)) && Bool.true))))))) && (let _yscan5l : (Prod Bool Nat) := (let _yscan3l : (Prod Bool Nat) := ((Reasoning.Clinic.Sirs.guard (_ys)), (1 : Nat)); (if (_yscan3l).1 then _yscan3l else (let _yscan3r : (Prod Bool Nat) := ((Reasoning.Clinic.Sepsis.guard (_ys)), (1 : Nat)); ((_yscan3r).1, ((_yscan3l).2 + (_yscan3r).2))))); (Bool.true && (if (_yscan5l).1 then Bool.true else ((((((Bool.true && Bool.true) && (__fits_20 (_ys))) && (Bool.true && Bool.true)) && Bool.true) && (let _yscan4l : (Prod Bool Nat) := ((Reasoning.Clinic.Shock.guard (_ys)), (1 : Nat)); (Bool.true && (if (_yscan4l).1 then Bool.true else (((((Bool.true && Bool.true) && (__fits_21 (_ys))) && (Bool.true && Bool.true)) && Bool.true) && (let _yscan4r : (Prod Bool Nat) := ((Reasoning.Clinic.Escalate.guard (_ys)), (1 : Nat)); ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((_yscan4l).2 + (_yscan4r).2) 18446744073709551616)) && Bool.true)) && Bool.true))))))) && (let _yscan5r : (Prod Bool Nat) := (let _yscan4l : (Prod Bool Nat) := ((Reasoning.Clinic.Shock.guard (_ys)), (1 : Nat)); (if (_yscan4l).1 then _yscan4l else (let _yscan4r : (Prod Bool Nat) := ((Reasoning.Clinic.Escalate.guard (_ys)), (1 : Nat)); ((_yscan4r).1, ((_yscan4l).2 + (_yscan4r).2))))); ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((_yscan5l).2 + (_yscan5r).2) 18446744073709551616)) && Bool.true)) && Bool.true))))))) && (let _yscan6r : (Prod Bool Nat) := (let _yscan5l : (Prod Bool Nat) := (let _yscan3l : (Prod Bool Nat) := ((Reasoning.Clinic.Sirs.guard (_ys)), (1 : Nat)); (if (_yscan3l).1 then _yscan3l else (let _yscan3r : (Prod Bool Nat) := ((Reasoning.Clinic.Sepsis.guard (_ys)), (1 : Nat)); ((_yscan3r).1, ((_yscan3l).2 + (_yscan3r).2))))); (if (_yscan5l).1 then _yscan5l else (let _yscan5r : (Prod Bool Nat) := (let _yscan4l : (Prod Bool Nat) := ((Reasoning.Clinic.Shock.guard (_ys)), (1 : Nat)); (if (_yscan4l).1 then _yscan4l else (let _yscan4r : (Prod Bool Nat) := ((Reasoning.Clinic.Escalate.guard (_ys)), (1 : Nat)); ((_yscan4r).1, ((_yscan4l).2 + (_yscan4r).2))))); ((_yscan5r).1, ((_yscan5l).2 + (_yscan5r).2))))); ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((_yscan6l).2 + (_yscan6r).2) 18446744073709551616)) && Bool.true)) && Bool.true))))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then _yscan6l else (let _yscan6r : (Prod Bool Nat) := (let _yscan5l : (Prod Bool Nat) := (let _yscan3l : (Prod Bool Nat) := ((Reasoning.Clinic.Sirs.guard (_ys)), (1 : Nat)); (if (_yscan3l).1 then _yscan3l else (let _yscan3r : (Prod Bool Nat) := ((Reasoning.Clinic.Sepsis.guard (_ys)), (1 : Nat)); ((_yscan3r).1, ((_yscan3l).2 + (_yscan3r).2))))); (if (_yscan5l).1 then _yscan5l else (let _yscan5r : (Prod Bool Nat) := (let _yscan4l : (Prod Bool Nat) := ((Reasoning.Clinic.Shock.guard (_ys)), (1 : Nat)); (if (_yscan4l).1 then _yscan4l else (let _yscan4r : (Prod Bool Nat) := ((Reasoning.Clinic.Escalate.guard (_ys)), (1 : Nat)); ((_yscan4r).1, ((_yscan4l).2 + (_yscan4r).2))))); ((_yscan5r).1, ((_yscan5l).2 + (_yscan5r).2))))); ((_yscan6r).1, ((_yscan6l).2 + (_yscan6r).2))))) (_yscan6l).1 (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (fun _ => (_root_.LexLeanPreservation.conv_var rfl)) (fun _ => (let _yscan6r : (Prod Bool Nat) := (let _yscan5l : (Prod Bool Nat) := (let _yscan3l : (Prod Bool Nat) := ((Reasoning.Clinic.Sirs.guard (_ys)), (1 : Nat)); (if (_yscan3l).1 then _yscan3l else (let _yscan3r : (Prod Bool Nat) := ((Reasoning.Clinic.Sepsis.guard (_ys)), (1 : Nat)); ((_yscan3r).1, ((_yscan3l).2 + (_yscan3r).2))))); (if (_yscan5l).1 then _yscan5l else (let _yscan5r : (Prod Bool Nat) := (let _yscan4l : (Prod Bool Nat) := ((Reasoning.Clinic.Shock.guard (_ys)), (1 : Nat)); (if (_yscan4l).1 then _yscan4l else (let _yscan4r : (Prod Bool Nat) := ((Reasoning.Clinic.Escalate.guard (_ys)), (1 : Nat)); ((_yscan4r).1, ((_yscan4l).2 + (_yscan4r).2))))); ((_yscan5r).1, ((_yscan5l).2 + (_yscan5r).2))))); _root_.LexLeanPreservation.conv_let (let _yscan5l : (Prod Bool Nat) := (let _yscan3l : (Prod Bool Nat) := ((Reasoning.Clinic.Sirs.guard (_ys)), (1 : Nat)); (if (_yscan3l).1 then _yscan3l else (let _yscan3r : (Prod Bool Nat) := ((Reasoning.Clinic.Sepsis.guard (_ys)), (1 : Nat)); ((_yscan3r).1, ((_yscan3l).2 + (_yscan3r).2))))); _root_.LexLeanPreservation.conv_let (let _yscan3l : (Prod Bool Nat) := ((Reasoning.Clinic.Sirs.guard (_ys)), (1 : Nat)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_18 (_ys))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else (((((Bool.true && Bool.true) && (__fits_19 (_ys))) && (Bool.true && Bool.true)) && Bool.true) && (let _yscan3r : (Prod Bool Nat) := ((Reasoning.Clinic.Sepsis.guard (_ys)), (1 : Nat)); ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((_yscan3l).2 + (_yscan3r).2) 18446744073709551616)) && Bool.true)) && Bool.true))))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then _yscan3l else (let _yscan3r : (Prod Bool Nat) := ((Reasoning.Clinic.Sepsis.guard (_ys)), (1 : Nat)); ((_yscan3r).1, ((_yscan3l).2 + (_yscan3r).2))))) (_yscan3l).1 (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (fun _ => (_root_.LexLeanPreservation.conv_var rfl)) (fun _ => (let _yscan3r : (Prod Bool Nat) := ((Reasoning.Clinic.Sepsis.guard (_ys)), (1 : Nat)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_19 (_ys))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (_yscan3l).2 (_yscan3r).2)) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else ((((((Bool.true && Bool.true) && (__fits_20 (_ys))) && (Bool.true && Bool.true)) && Bool.true) && (let _yscan4l : (Prod Bool Nat) := ((Reasoning.Clinic.Shock.guard (_ys)), (1 : Nat)); (Bool.true && (if (_yscan4l).1 then Bool.true else (((((Bool.true && Bool.true) && (__fits_21 (_ys))) && (Bool.true && Bool.true)) && Bool.true) && (let _yscan4r : (Prod Bool Nat) := ((Reasoning.Clinic.Escalate.guard (_ys)), (1 : Nat)); ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((_yscan4l).2 + (_yscan4r).2) 18446744073709551616)) && Bool.true)) && Bool.true))))))) && (let _yscan5r : (Prod Bool Nat) := (let _yscan4l : (Prod Bool Nat) := ((Reasoning.Clinic.Shock.guard (_ys)), (1 : Nat)); (if (_yscan4l).1 then _yscan4l else (let _yscan4r : (Prod Bool Nat) := ((Reasoning.Clinic.Escalate.guard (_ys)), (1 : Nat)); ((_yscan4r).1, ((_yscan4l).2 + (_yscan4r).2))))); ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((_yscan5l).2 + (_yscan5r).2) 18446744073709551616)) && Bool.true)) && Bool.true))))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then _yscan5l else (let _yscan5r : (Prod Bool Nat) := (let _yscan4l : (Prod Bool Nat) := ((Reasoning.Clinic.Shock.guard (_ys)), (1 : Nat)); (if (_yscan4l).1 then _yscan4l else (let _yscan4r : (Prod Bool Nat) := ((Reasoning.Clinic.Escalate.guard (_ys)), (1 : Nat)); ((_yscan4r).1, ((_yscan4l).2 + (_yscan4r).2))))); ((_yscan5r).1, ((_yscan5l).2 + (_yscan5r).2))))) (_yscan5l).1 (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (fun _ => (_root_.LexLeanPreservation.conv_var rfl)) (fun _ => (let _yscan5r : (Prod Bool Nat) := (let _yscan4l : (Prod Bool Nat) := ((Reasoning.Clinic.Shock.guard (_ys)), (1 : Nat)); (if (_yscan4l).1 then _yscan4l else (let _yscan4r : (Prod Bool Nat) := ((Reasoning.Clinic.Escalate.guard (_ys)), (1 : Nat)); ((_yscan4r).1, ((_yscan4l).2 + (_yscan4r).2))))); _root_.LexLeanPreservation.conv_let (let _yscan4l : (Prod Bool Nat) := ((Reasoning.Clinic.Shock.guard (_ys)), (1 : Nat)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_20 (_ys))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else (((((Bool.true && Bool.true) && (__fits_21 (_ys))) && (Bool.true && Bool.true)) && Bool.true) && (let _yscan4r : (Prod Bool Nat) := ((Reasoning.Clinic.Escalate.guard (_ys)), (1 : Nat)); ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((_yscan4l).2 + (_yscan4r).2) 18446744073709551616)) && Bool.true)) && Bool.true))))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then _yscan4l else (let _yscan4r : (Prod Bool Nat) := ((Reasoning.Clinic.Escalate.guard (_ys)), (1 : Nat)); ((_yscan4r).1, ((_yscan4l).2 + (_yscan4r).2))))) (_yscan4l).1 (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (fun _ => (_root_.LexLeanPreservation.conv_var rfl)) (fun _ => (let _yscan4r : (Prod Bool Nat) := ((Reasoning.Clinic.Escalate.guard (_ys)), (1 : Nat)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_21 (_ys))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (_yscan4l).2 (_yscan4r).2)) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))))) (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (_yscan5l).2 (_yscan5r).2)) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))))) (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (_yscan6l).2 (_yscan6r).2)) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair)))))) - -def __fits_5 (_yr : (Reasoning.Clinic.Triage.Run)) : Bool := - (((Bool.true && Bool.true) && (__fits_9 ((_yr).state))) && (match (Reasoning.Clinic.Triage.select ((_yr).state)) with | Option.none => (Bool.true && Bool.true) | Option.some _ystep => (((Bool.true && (Bool.true && Bool.true)) && (__fits_10 ((_yr).state) (_ystep))) && (match (Reasoning.Clinic.Triage.fire ((_yr).state) (_ystep)) with | Option.none => (Bool.true && Bool.true) | Option.some _yt => ((((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).iterations + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (((Bool.true && Bool.true) && (__fits_11 ((_yr).state))) && Bool.true)) && (Nat.blt (((_yr).ledger).attempts + (Reasoning.Clinic.Triage.attempts ((_yr).state))) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).firings + (1 : Nat)) 18446744073709551616)) && (Bool.true && (Bool.true && (Bool.true && Bool.true)))))) && Bool.true) && Bool.true))) && Bool.true) && Bool.true) && Bool.true))))) - -attribute [local irreducible] Reasoning.Clinic.Triage.attempts Reasoning.Clinic.Triage.fire Reasoning.Clinic.Triage.select in -theorem __rel_5 (_yr : (Reasoning.Clinic.Triage.Run)) : _root_.LexLeanPreservation.FunRel __prog 5 [(__enc_2 _yr)] (_root_.LexLeanPreservation.Rel (__fits_5 _yr) ((_root_.LexLeanPreservation.encOption __enc_2) (Reasoning.Clinic.Triage.step _yr))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_1) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (match __a with | Option.none => (Bool.true && Bool.true) | Option.some _ystep => (((Bool.true && (Bool.true && Bool.true)) && (__fits_10 ((_yr).state) (_ystep))) && (match (Reasoning.Clinic.Triage.fire ((_yr).state) (_ystep)) with | Option.none => (Bool.true && Bool.true) | Option.some _yt => ((((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).iterations + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (((Bool.true && Bool.true) && (__fits_11 ((_yr).state))) && Bool.true)) && (Nat.blt (((_yr).ledger).attempts + (Reasoning.Clinic.Triage.attempts ((_yr).state))) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).firings + (1 : Nat)) 18446744073709551616)) && (Bool.true && (Bool.true && (Bool.true && Bool.true)))))) && Bool.true) && Bool.true))) && Bool.true) && Bool.true) && Bool.true))))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) => (_root_.LexLeanPreservation.encOption __enc_2) (match __a with | Option.none => (Option.none : (Option (Reasoning.Clinic.Triage.Run))) | Option.some _ystep => (match (Reasoning.Clinic.Triage.fire ((_yr).state) (_ystep)) with | Option.none => (Option.none : (Option (Reasoning.Clinic.Triage.Run))) | Option.some _yt => (Option.some (({ state := _yt, trace := (_root_.LexLeanRuntime.append ((_yr).trace) ((_ystep :: ([] : List (Reasoning.Clinic.Triage.Step)))) : (List (Reasoning.Clinic.Triage.Step))), ledger := ({ iterations := (((_yr).ledger).iterations + (1 : Nat)), attempts := (((_yr).ledger).attempts + (Reasoning.Clinic.Triage.attempts ((_yr).state))), firings := (((_yr).ledger).firings + (1 : Nat)), expansions := ((_yr).ledger).expansions, verifications := ((_yr).ledger).verifications, frontier := ((_yr).ledger).frontier } : (Reasoning.Clinic.Triage.Ledger)) } : (Reasoning.Clinic.Triage.Run))) : (Option (Reasoning.Clinic.Triage.Run)))))) (Reasoning.Clinic.Triage.select ((_yr).state)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_9 ((_yr).state))) (fun (__a : (Option (Reasoning.Clinic.Triage.Step))) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) | Option.some _ystep => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_3) (fun (__a : (Option (Reasoning.Clinic.Chart))) => (match __a with | Option.none => (Bool.true && Bool.true) | Option.some _yt => ((((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).iterations + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (((Bool.true && Bool.true) && (__fits_11 ((_yr).state))) && Bool.true)) && (Nat.blt (((_yr).ledger).attempts + (Reasoning.Clinic.Triage.attempts ((_yr).state))) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).firings + (1 : Nat)) 18446744073709551616)) && (Bool.true && (Bool.true && (Bool.true && Bool.true)))))) && Bool.true) && Bool.true))) && Bool.true) && Bool.true) && Bool.true))) (fun (__a : (Option (Reasoning.Clinic.Chart))) => (_root_.LexLeanPreservation.encOption __enc_2) (match __a with | Option.none => (Option.none : (Option (Reasoning.Clinic.Triage.Run))) | Option.some _yt => (Option.some (({ state := _yt, trace := (_root_.LexLeanRuntime.append ((_yr).trace) ((_ystep :: ([] : List (Reasoning.Clinic.Triage.Step)))) : (List (Reasoning.Clinic.Triage.Step))), ledger := ({ iterations := (((_yr).ledger).iterations + (1 : Nat)), attempts := (((_yr).ledger).attempts + (Reasoning.Clinic.Triage.attempts ((_yr).state))), firings := (((_yr).ledger).firings + (1 : Nat)), expansions := ((_yr).ledger).expansions, verifications := ((_yr).ledger).verifications, frontier := ((_yr).ledger).frontier } : (Reasoning.Clinic.Triage.Ledger)) } : (Reasoning.Clinic.Triage.Run))) : (Option (Reasoning.Clinic.Triage.Run))))) (Reasoning.Clinic.Triage.fire ((_yr).state) (_ystep)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_10 ((_yr).state) (_ystep))) (fun (__a : (Option (Reasoning.Clinic.Chart))) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) | Option.some _yt => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc __enc_1) (_yr).trace (_ystep :: ([] : List (Reasoning.Clinic.Triage.Step))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((_yr).ledger).iterations (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_11 ((_yr).state))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((_yr).ledger).attempts (Reasoning.Clinic.Triage.attempts ((_yr).state)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((_yr).ledger).firings (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) _root_.LexLeanPreservation.convL_nil)))))) _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil))) _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some))))))))) - -def __fits_12 (patient : (Reasoning.Clinic.Vitals)) : Bool := - ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) - -theorem __rel_12 (patient : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 12 [(__enc_0 patient)] (_root_.LexLeanPreservation.Rel (__fits_12 patient) (__enc_3 (Reasoning.Clinic.Triage.observe patient))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) - -def __fits_6 (patient : (Reasoning.Clinic.Vitals)) : Bool := - ((((Bool.true && Bool.true) && (__fits_12 (patient))) && ((Bool.true && Bool.true) && (((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true)))))) && Bool.true) && Bool.true))) && Bool.true) - -attribute [local irreducible] Reasoning.Clinic.Triage.observe in -theorem __rel_6 (patient : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 6 [(__enc_0 patient)] (_root_.LexLeanPreservation.Rel (__fits_6 patient) (__enc_2 (Reasoning.Clinic.Triage.start patient))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_12 (patient))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)))))) _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil))) _root_.LexLeanPreservation.construct_adt) - -def __fits_2 (patient : (Reasoning.Clinic.Vitals)) : Bool := - ((Bool.true && (Bool.true && (((Bool.true && Bool.true) && (__fits_6 (patient))) && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : (Reasoning.Clinic.Triage.Run)) => __fits_5 __p0) ((Reasoning.Clinic.Triage.step)) ((11 : Nat)) ((Reasoning.Clinic.Triage.start (patient))))) - -attribute [local irreducible] Reasoning.Clinic.Triage.start in -theorem __rel_2 (patient : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 2 [(__enc_0 patient)] (_root_.LexLeanPreservation.Rel (__fits_2 patient) ((_root_.LexLeanPreservation.encPair __enc_2 _root_.LexLeanTarget.TargetSyntax.Value.bool) (Reasoning.Clinic.Triage.run patient))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_6 (patient))) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterateUntil (es := __enc_2) (_root_.LexLeanPreservation.optEnc __enc_2) (fun _ => rfl) (_root_.LexLeanPreservation.encPair __enc_2 _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) ((Reasoning.Clinic.Triage.step)) (fun (__p0 : (Reasoning.Clinic.Triage.Run)) => __fits_5 __p0) 5 [] (fun (__p0 : (Reasoning.Clinic.Triage.Run)) => __rel_5 __p0) (_root_.LexLeanCollections.iterateUntil ((Reasoning.Clinic.Triage.step))) (fun _ => rfl) (fun _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (p := __prog) (fi := 4) (ts := (.adt 2)) rfl ((11 : Nat)) ((Reasoning.Clinic.Triage.start (patient))))) - -def __fits_8 (chart : (Reasoning.Clinic.Chart)) : Bool := - ((Bool.true && Bool.true) && Bool.true) - -theorem __rel_8 (chart : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 8 [(__enc_3 chart)] (_root_.LexLeanPreservation.Rel (__fits_8 chart) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Clinic.Triage.extract chart))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some) - -def __fits_13 (v : (Reasoning.Clinic.Vitals)) (r : Nat) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.ble r (3 : Nat)) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq r (3 : Nat)) then (Bool.true && Bool.true) else (((((Bool.true && Bool.true) && (__fits_30 (v))) && (if (Reasoning.Clinic.hypotensive (v)) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (v).infection (1 : Nat)) then (((Bool.true && Bool.true) && (__fits_31 (v))) && (if (Reasoning.Clinic.feverish (v)) then ((Bool.true && Bool.true) && (__fits_32 (v))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && Bool.true) && Bool.true))) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.feverish Reasoning.Clinic.hypotensive Reasoning.Clinic.tachycardic in -theorem __rel_13 (v : (Reasoning.Clinic.Vitals)) (r : Nat) : _root_.LexLeanPreservation.FunRel __prog 13 [(__enc_0 v), (_root_.LexLeanTarget.TargetSyntax.Value.nat r)] (_root_.LexLeanPreservation.Rel (__fits_13 v r) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.recommendationCheck v r))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq r (3 : Nat)) then (Bool.true && Bool.true) else (((((Bool.true && Bool.true) && (__fits_30 (v))) && (if (Reasoning.Clinic.hypotensive (v)) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (v).infection (1 : Nat)) then (((Bool.true && Bool.true) && (__fits_31 (v))) && (if (Reasoning.Clinic.feverish (v)) then ((Bool.true && Bool.true) && (__fits_32 (v))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && Bool.true) && Bool.true))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && ((Nat.beq r (3 : Nat)) || (!((Reasoning.Clinic.hypotensive (v)) && ((Nat.beq (v).infection (1 : Nat)) && ((Reasoning.Clinic.feverish (v)) && (Reasoning.Clinic.tachycardic (v))))))))) (Nat.ble r (3 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe r (3 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (Bool.true && Bool.true) else (((((Bool.true && Bool.true) && (__fits_30 (v))) && (if (Reasoning.Clinic.hypotensive (v)) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (v).infection (1 : Nat)) then (((Bool.true && Bool.true) && (__fits_31 (v))) && (if (Reasoning.Clinic.feverish (v)) then ((Bool.true && Bool.true) && (__fits_32 (v))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) && Bool.true) && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b || (!((Reasoning.Clinic.hypotensive (v)) && ((Nat.beq (v).infection (1 : Nat)) && ((Reasoning.Clinic.feverish (v)) && (Reasoning.Clinic.tachycardic (v)))))))) (Nat.beq r (3 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq r (3 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (v).infection (1 : Nat)) then (((Bool.true && Bool.true) && (__fits_31 (v))) && (if (Reasoning.Clinic.feverish (v)) then ((Bool.true && Bool.true) && (__fits_32 (v))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && ((Nat.beq (v).infection (1 : Nat)) && ((Reasoning.Clinic.feverish (v)) && (Reasoning.Clinic.tachycardic (v)))))) (Reasoning.Clinic.hypotensive (v)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_30 (v))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (((Bool.true && Bool.true) && (__fits_31 (v))) && (if (Reasoning.Clinic.feverish (v)) then ((Bool.true && Bool.true) && (__fits_32 (v))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && ((Reasoning.Clinic.feverish (v)) && (Reasoning.Clinic.tachycardic (v))))) (Nat.beq (v).infection (1 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (v).infection (1 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && (__fits_32 (v))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Reasoning.Clinic.tachycardic (v)))) (Reasoning.Clinic.feverish (v)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_31 (v))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_32 (v)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_boolNot ((Reasoning.Clinic.hypotensive (v)) && ((Nat.beq (v).infection (1 : Nat)) && ((Reasoning.Clinic.feverish (v)) && (Reasoning.Clinic.tachycardic (v)))))))))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) - -def __fits_7 (patient : (Reasoning.Clinic.Vitals)) (_ys : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && Bool.true) && (__fits_8 (_ys))) && (match (Reasoning.Clinic.Triage.extract (_ys)) with | Option.none => (Bool.true && Bool.true) | Option.some _yv => (((Bool.true && (Bool.true && Bool.true)) && (__fits_13 (patient) (_yv))) && (if (Reasoning.Clinic.recommendationCheck (patient) (_yv)) then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) - -attribute [local irreducible] Reasoning.Clinic.Triage.extract Reasoning.Clinic.recommendationCheck in -theorem __rel_7 (patient : (Reasoning.Clinic.Vitals)) (_ys : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 7 [(__enc_0 patient), (__enc_3 _ys)] (_root_.LexLeanPreservation.Rel (__fits_7 patient _ys) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Clinic.Triage.accept patient _ys))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Option Nat)) => (match __a with | Option.none => (Bool.true && Bool.true) | Option.some _yv => (((Bool.true && (Bool.true && Bool.true)) && (__fits_13 (patient) (_yv))) && (if (Reasoning.Clinic.recommendationCheck (patient) (_yv)) then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__a : (Option Nat)) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (match __a with | Option.none => (Option.none : (Option Nat)) | Option.some _yv => (if (Reasoning.Clinic.recommendationCheck (patient) (_yv)) then (Option.some (_yv) : (Option Nat)) else (Option.none : (Option Nat))))) (Reasoning.Clinic.Triage.extract (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_8 (_ys))) (fun (__a : (Option Nat)) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) | Option.some _yv => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Option.some (_yv) : (Option Nat)) else (Option.none : (Option Nat)))) (Reasoning.Clinic.recommendationCheck (patient) (_yv)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_13 (patient) (_yv))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))) - -def __fits_3 (patient : (Reasoning.Clinic.Vitals)) (_ys : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && (__fits_7 (patient) (_ys))) && (match (Reasoning.Clinic.Triage.accept (patient) (_ys)) with | Option.some _yv => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_8 (_ys))) && (match (Reasoning.Clinic.Triage.extract (_ys)) with | Option.some _yv => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) - -attribute [local irreducible] Reasoning.Clinic.Triage.accept Reasoning.Clinic.Triage.extract in -theorem __rel_3 (patient : (Reasoning.Clinic.Vitals)) (_ys : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 3 [(__enc_0 patient), (__enc_3 _ys)] (_root_.LexLeanPreservation.Rel (__fits_3 patient _ys) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Clinic.Triage.conclude patient _ys))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Option Nat)) => (match __a with | Option.some _yv => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_8 (_ys))) && (match (Reasoning.Clinic.Triage.extract (_ys)) with | Option.some _yv => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) (fun (__a : (Option Nat)) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (match __a with | Option.some _yv => (Except.ok (_yv) : (Except (Prod Bool Bool) Nat)) | Option.none => (match (Reasoning.Clinic.Triage.extract (_ys)) with | Option.some _yv => (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)) | Option.none => (Except.error (((Bool.false, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat))))) (Reasoning.Clinic.Triage.accept (patient) (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_7 (patient) (_ys))) (fun (__a : (Option Nat)) _ => match __a with | Option.some _yv => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Option Nat)) => (match __a with | Option.some _yv => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__a : (Option Nat)) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (match __a with | Option.some _yv => (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)) | Option.none => (Except.error (((Bool.false, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)))) (Reasoning.Clinic.Triage.extract (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_8 (_ys))) (fun (__a : (Option Nat)) _ => match __a with | Option.some _yv => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error))))))))) - -def __fits_1 (patient : (Reasoning.Clinic.Vitals)) : Bool := - (((Bool.true && Bool.true) && (__fits_2 (patient))) && (let _yfinal : (Prod (Reasoning.Clinic.Triage.Run) Bool) := (Reasoning.Clinic.Triage.run (patient)); (Bool.true && (match (_yfinal).2 with | Bool.true => (((Bool.true && (Bool.true && Bool.true)) && (__fits_3 (patient) (((_yfinal).1).state))) && (match (Reasoning.Clinic.Triage.conclude (patient) (((_yfinal).1).state)) with | Except.ok _yv => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Except.error _ye => ((Bool.true && Bool.true) && Bool.true))) | Bool.false => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) - -attribute [local irreducible] Reasoning.Clinic.Triage.conclude Reasoning.Clinic.Triage.run in -theorem __rel_1 (patient : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 1 [(__enc_0 patient)] (_root_.LexLeanPreservation.Rel (__fits_1 patient) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList __enc_1))) (Reasoning.Clinic.Triage patient))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (let _yfinal : (Prod (Reasoning.Clinic.Triage.Run) Bool) := (Reasoning.Clinic.Triage.run (patient)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_2 (patient))) (_root_.LexLeanPreservation.conv_matchV _root_.LexLeanTarget.TargetSyntax.Value.bool (fun (__a : Bool) => (match __a with | Bool.true => (((Bool.true && (Bool.true && Bool.true)) && (__fits_3 (patient) (((_yfinal).1).state))) && (match (Reasoning.Clinic.Triage.conclude (patient) (((_yfinal).1).state)) with | Except.ok _yv => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Except.error _ye => ((Bool.true && Bool.true) && Bool.true))) | Bool.false => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__a : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList __enc_1))) (match __a with | Bool.true => (match (Reasoning.Clinic.Triage.conclude (patient) (((_yfinal).1).state)) with | Except.ok _yv => (Except.ok ((_yv, ((_yfinal).1).trace)) : (Except (Prod Bool Bool) (Prod Nat (List (Reasoning.Clinic.Triage.Step))))) | Except.error _ye => (Except.error (_ye) : (Except (Prod Bool Bool) (Prod Nat (List (Reasoning.Clinic.Triage.Step)))))) | Bool.false => (Except.error (((Bool.false, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (Prod Nat (List (Reasoning.Clinic.Triage.Step))))))) (_yfinal).2 (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (fun (__a : Bool) _ => match __a with | Bool.true => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Except (Prod Bool Bool) Nat)) => (match __a with | Except.ok _yv => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Except.error _ye => ((Bool.true && Bool.true) && Bool.true))) (fun (__a : (Except (Prod Bool Bool) Nat)) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList __enc_1))) (match __a with | Except.ok _yv => (Except.ok ((_yv, ((_yfinal).1).trace)) : (Except (Prod Bool Bool) (Prod Nat (List (Reasoning.Clinic.Triage.Step))))) | Except.error _ye => (Except.error (_ye) : (Except (Prod Bool Bool) (Prod Nat (List (Reasoning.Clinic.Triage.Step))))))) (Reasoning.Clinic.Triage.conclude (patient) (((_yfinal).1).state)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_3 (patient) (((_yfinal).1).state))) (fun (__a : (Except (Prod Bool Bool) Nat)) _ => match __a with | Except.ok _yv => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok)) | Except.error _ye => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)))))) | Bool.false => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)))))) - -def __fits_0 (temperature : Nat) (heartRate : Nat) (respiratoryRate : Nat) (whiteCells : Nat) (systolic : Nat) (infection : Nat) : Bool := - (((((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true)))))) && Bool.true) && Bool.true) && (__fits_1 (({ temperature := temperature, heartRate := heartRate, respiratoryRate := respiratoryRate, whiteCells := whiteCells, systolic := systolic, infection := infection } : (Reasoning.Clinic.Vitals))))) && (match (Reasoning.Clinic.Triage (({ temperature := temperature, heartRate := heartRate, respiratoryRate := respiratoryRate, whiteCells := whiteCells, systolic := systolic, infection := infection } : (Reasoning.Clinic.Vitals)))) with | Except.ok explained => ((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length ((explained).2) : Nat) 18446744073709551616)) | Except.error failure => Bool.true)) - -attribute [local irreducible] Reasoning.Clinic.Triage in -theorem __rel_0 (temperature : Nat) (heartRate : Nat) (respiratoryRate : Nat) (whiteCells : Nat) (systolic : Nat) (infection : Nat) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat temperature), (_root_.LexLeanTarget.TargetSyntax.Value.nat heartRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat respiratoryRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat whiteCells), (_root_.LexLeanTarget.TargetSyntax.Value.nat systolic), (_root_.LexLeanTarget.TargetSyntax.Value.nat infection)] (_root_.LexLeanPreservation.Rel (__fits_0 temperature heartRate respiratoryRate whiteCells systolic infection) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.triageSteps temperature heartRate respiratoryRate whiteCells systolic infection))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList __enc_1))) (fun (__a : (Except (Prod Bool Bool) (Prod Nat (List (Reasoning.Clinic.Triage.Step))))) => (match __a with | Except.ok explained => ((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length ((explained).2) : Nat) 18446744073709551616)) | Except.error failure => Bool.true)) (fun (__a : (Except (Prod Bool Bool) (Prod Nat (List (Reasoning.Clinic.Triage.Step))))) => _root_.LexLeanTarget.TargetSyntax.Value.nat (match __a with | Except.ok explained => (_root_.LexLeanRuntime.length ((explained).2) : Nat) | Except.error failure => (0 : Nat))) (Reasoning.Clinic.Triage (({ temperature := temperature, heartRate := heartRate, respiratoryRate := respiratoryRate, whiteCells := whiteCells, systolic := systolic, infection := infection } : (Reasoning.Clinic.Vitals)))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)))))) _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) (__rel_1 (({ temperature := temperature, heartRate := heartRate, respiratoryRate := respiratoryRate, whiteCells := whiteCells, systolic := systolic, infection := infection } : (Reasoning.Clinic.Vitals))))) (fun (__a : (Except (Prod Bool Bool) (Prod Nat (List (Reasoning.Clinic.Triage.Step))))) _ => match __a with | Except.ok explained => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc __enc_1) (explained).2))) | Except.error failure => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value)))) - -def denote (temperature : Nat) (heartRate : Nat) (respiratoryRate : Nat) (whiteCells : Nat) (systolic : Nat) (infection : Nat) : _root_.LexLeanPreservation.Obs := - _root_.cond (__fits_0 temperature heartRate respiratoryRate whiteCells systolic infection) (_root_.LexLeanPreservation.Obs.value ((_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.triageSteps temperature heartRate respiratoryRate whiteCells systolic infection)))) _root_.LexLeanPreservation.Obs.overflow - -theorem root (temperature : Nat) (heartRate : Nat) (respiratoryRate : Nat) (whiteCells : Nat) (systolic : Nat) (infection : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat temperature), (_root_.LexLeanTarget.TargetSyntax.Value.nat heartRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat respiratoryRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat whiteCells), (_root_.LexLeanTarget.TargetSyntax.Value.nat systolic), (_root_.LexLeanTarget.TargetSyntax.Value.nat infection)] (_root_.LexLeanPreservation.Rel (__fits_0 temperature heartRate respiratoryRate whiteCells systolic infection) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.triageSteps temperature heartRate respiratoryRate whiteCells systolic infection))) := - _root_.LexLeanPreservation.run_of_funRel (__rel_0 temperature heartRate respiratoryRate whiteCells systolic infection) - -end LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2 diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R2/Compose/RustStd.lex.tex b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R2/Compose/RustStd.lex.tex deleted file mode 100644 index 85152e328..000000000 --- a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R2/Compose/RustStd.lex.tex +++ /dev/null @@ -1,1741 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2, - LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.Compose.RustStd.__wt_0 : @16 := @716 { - all: [LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.Compose.RustStd.__wt_0], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.Compose.RustStd.__wt_1 : @724 := @960 { - all: [LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.Compose.RustStd.__wt_1], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.Compose.RustStd.__wt_3 : @967 := @1631 { - all: [LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.Compose.RustStd.__wt_3], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.Compose.RustStd.__wt_4 : @1638 := @2091 { - all: [LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.Compose.RustStd.__wt_4], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.Compose.RustStd.__wt_2 : @2098 := @2458 { - all: [LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.Compose.RustStd.__wt_2], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.Compose.RustStd.root : @3543 := @3544 { - all: [LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.RustStd.program -@1 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.RustStd.krate -@2 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.RustStd.flags -@3 := Reasoning.Clinic.Vitals -@4 := #0 -@5 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.__enc_0 -@6 := @5 @4 -@7 := LexLeanPreservation.Rust.WT -@8 := LexLeanTarget.TargetSyntax.Ty.adt -@9 := 0 -@10 := @8 @9 -@11 := @7 @0 -@12 := @11 @1 -@13 := @12 @2 -@16 := (__s : @3) -> @13 @6 @10 -@17 := Reasoning.Clinic.Vitals.temperature -@18 := @17 @4 -@19 := Reasoning.Clinic.Vitals.heartRate -@20 := @19 @4 -@21 := Reasoning.Clinic.Vitals.respiratoryRate -@22 := @21 @4 -@23 := Reasoning.Clinic.Vitals.whiteCells -@24 := @23 @4 -@25 := Reasoning.Clinic.Vitals.systolic -@26 := @25 @4 -@27 := Reasoning.Clinic.Vitals.infection -@28 := @27 @4 -@29 := LexLeanTarget.TargetSyntax.Value.nat -@30 := @29 @18 -@31 := LexLeanTarget.TargetSyntax.Ty.nat -@32 := LexLeanTarget.TargetSyntax.Program -@33 := LexLeanPreservation.Rust.RCrate -@34 := LexLeanPreservation.Rust.Flags -@35 := Nat -@36 := #3 -@37 := @7 @36 -@38 := #2 -@39 := @37 @38 -@40 := #1 -@41 := @39 @40 -@42 := @29 @4 -@48 := {p : @32} -> {c : @33} -> {A : @34} -> (n : @35) -> @41 @42 @31 -@50 := LexLeanPreservation.Rust.wt_nat @0 -@57 := {c : @33} -> {A : @34} -> (n : @35) -> @11 @38 @40 @42 @31 -@58 := @50 @1 -@63 := {A : @34} -> (n : @35) -> @12 @40 @42 @31 -@64 := @58 @2 -@67 := (n : @35) -> @13 @42 @31 -@68 := @64 @18 -@70 := @13 @30 @31 -@71 := @29 @20 -@72 := @64 @20 -@74 := @13 @71 @31 -@75 := @29 @22 -@76 := @64 @22 -@78 := @13 @75 @31 -@79 := @29 @24 -@80 := @64 @24 -@82 := @13 @79 @31 -@83 := @29 @26 -@84 := @64 @26 -@86 := @13 @83 @31 -@87 := @29 @28 -@88 := @64 @28 -@90 := @13 @87 @31 -@91 := LexLeanTarget.TargetSyntax.Value -@92 := LexLeanTarget.TargetSyntax.Ty -@93 := List.nil.{0} -@94 := List.cons.{0} -@95 := @93 @91 -@96 := @94 @91 -@98 := @96 @87 @95 -@100 := @96 @83 @98 -@102 := @96 @79 @100 -@104 := @96 @75 @102 -@106 := @96 @71 @104 -@108 := @96 @30 @106 -@109 := @93 @92 -@110 := @94 @92 -@111 := @110 @31 -@112 := @111 @109 -@113 := @111 @112 -@114 := @111 @113 -@115 := @111 @114 -@116 := @111 @115 -@117 := @111 @116 -@118 := LexLeanPreservation.Rust.WTL -@126 := {p : @32} -> {c : @33} -> {A : @34} -> @118 @38 @40 @4 @95 @109 -@128 := LexLeanPreservation.Rust.wtl_nil @0 -@129 := @118 @0 -@135 := {c : @33} -> {A : @34} -> @129 @40 @4 @95 @109 -@136 := @128 @1 -@137 := @129 @1 -@141 := {A : @34} -> @137 @4 @95 @109 -@142 := @136 @2 -@143 := @137 @2 -@144 := @143 @95 -@145 := @144 @109 -@146 := List.{0} -@147 := @146 @91 -@148 := @146 @92 -@149 := #6 -@150 := @7 @149 -@151 := #5 -@152 := @150 @151 -@153 := #4 -@154 := @152 @153 -@156 := @154 @36 @38 -@157 := #7 -@162 := @118 @157 @149 @151 @38 @40 -@163 := #8 -@166 := @118 @163 @157 @149 -@168 := @96 @151 @36 -@169 := @166 @168 -@171 := @110 @153 @38 -@181 := {p : @32} -> - {c : @33} -> - {A : @34} -> - {v : @91} -> {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @156) -> (hs : @162) -> @169 @171 -@183 := LexLeanPreservation.Rust.wtl_cons @0 -@185 := @11 @151 @153 -@187 := @185 @36 @38 -@191 := @129 @149 @151 @38 @40 -@203 := {c : @33} -> - {A : @34} -> - {v : @91} -> - {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @187) -> (hs : @191) -> @129 @157 @149 @168 @171 -@204 := @183 @1 -@205 := @12 @153 -@207 := @205 @36 @38 -@210 := @137 @151 @38 @40 -@220 := {A : @34} -> - {v : @91} -> - {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @207) -> (hs : @210) -> @137 @149 @168 @171 -@221 := @204 @2 -@223 := @13 @36 @38 -@225 := @143 @38 @40 -@233 := {v : @91} -> - {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @223) -> (hs : @225) -> @143 @168 @171 -@234 := @221 @87 -@236 := @29 (@27 @36) -@249 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @236 @38) -> (hs : @225) -> @143 (@96 (@29 (@27 @151)) @36) @171 -@250 := @234 @31 -@252 := @29 (@27 @38) -@254 := @13 @252 @31 -@259 := @143 (@96 (@29 (@27 @153)) @36) -@260 := @111 @38 -@265 := {vs : @147} -> {ts : @148} -> (h : @254) -> (hs : @225) -> @259 @260 -@266 := @250 @95 -@268 := @29 (@27 @40) -@270 := @13 @268 @31 -@271 := @144 @40 -@273 := @96 @236 @95 -@278 := {ts : @148} -> (h : @270) -> (hs : @271) -> @143 @273 @260 -@279 := @266 @109 -@281 := @96 @252 @95 -@282 := @143 @281 -@285 := (h : @90) -> (hs : @145) -> @282 @112 -@286 := @279 @88 -@288 := @96 @268 @95 -@290 := @143 @288 @112 -@291 := (hs : @145) -> @290 -@292 := @286 @142 -@294 := @143 @98 @112 -@295 := @221 @83 -@297 := @29 (@25 @36) -@310 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @297 @38) -> (hs : @225) -> @143 (@96 (@29 (@25 @151)) @36) @171 -@311 := @295 @31 -@313 := @29 (@25 @38) -@325 := {vs : @147} -> - {ts : @148} -> (h : @13 @313 @31) -> (hs : @225) -> @143 (@96 (@29 (@25 @153)) @36) @260 -@326 := @311 @98 -@328 := @29 (@25 @40) -@330 := @13 @328 @31 -@331 := @282 @40 -@333 := @96 @297 @273 -@338 := {ts : @148} -> (h : @330) -> (hs : @331) -> @143 @333 @260 -@339 := @326 @112 -@341 := @96 @313 @281 -@342 := @143 @341 -@345 := (h : @86) -> (hs : @290) -> @342 @113 -@346 := @339 @84 -@348 := @96 @328 @288 -@350 := @143 @348 @113 -@351 := (hs : @294) -> @350 -@352 := @346 @292 -@354 := @143 @100 @113 -@355 := @221 @79 -@357 := @29 (@23 @36) -@370 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @357 @38) -> (hs : @225) -> @143 (@96 (@29 (@23 @151)) @36) @171 -@371 := @355 @31 -@373 := @29 (@23 @38) -@385 := {vs : @147} -> - {ts : @148} -> (h : @13 @373 @31) -> (hs : @225) -> @143 (@96 (@29 (@23 @153)) @36) @260 -@386 := @371 @100 -@388 := @29 (@23 @40) -@390 := @13 @388 @31 -@391 := @342 @40 -@393 := @96 @357 @333 -@398 := {ts : @148} -> (h : @390) -> (hs : @391) -> @143 @393 @260 -@399 := @386 @113 -@401 := @96 @373 @341 -@402 := @143 @401 -@405 := (h : @82) -> (hs : @350) -> @402 @114 -@406 := @399 @80 -@408 := @96 @388 @348 -@410 := @143 @408 @114 -@411 := (hs : @354) -> @410 -@412 := @406 @352 -@414 := @143 @102 @114 -@415 := @221 @75 -@417 := @29 (@21 @36) -@430 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @417 @38) -> (hs : @225) -> @143 (@96 (@29 (@21 @151)) @36) @171 -@431 := @415 @31 -@433 := @29 (@21 @38) -@445 := {vs : @147} -> - {ts : @148} -> (h : @13 @433 @31) -> (hs : @225) -> @143 (@96 (@29 (@21 @153)) @36) @260 -@446 := @431 @102 -@448 := @29 (@21 @40) -@450 := @13 @448 @31 -@451 := @402 @40 -@453 := @96 @417 @393 -@458 := {ts : @148} -> (h : @450) -> (hs : @451) -> @143 @453 @260 -@459 := @446 @114 -@461 := @96 @433 @401 -@462 := @143 @461 -@465 := (h : @78) -> (hs : @410) -> @462 @115 -@466 := @459 @76 -@468 := @96 @448 @408 -@470 := @143 @468 @115 -@471 := (hs : @414) -> @470 -@472 := @466 @412 -@474 := @143 @104 @115 -@475 := @221 @71 -@477 := @29 (@19 @36) -@490 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @477 @38) -> (hs : @225) -> @143 (@96 (@29 (@19 @151)) @36) @171 -@491 := @475 @31 -@493 := @29 (@19 @38) -@505 := {vs : @147} -> - {ts : @148} -> (h : @13 @493 @31) -> (hs : @225) -> @143 (@96 (@29 (@19 @153)) @36) @260 -@506 := @491 @104 -@508 := @29 (@19 @40) -@510 := @13 @508 @31 -@511 := @462 @40 -@513 := @96 @477 @453 -@518 := {ts : @148} -> (h : @510) -> (hs : @511) -> @143 @513 @260 -@519 := @506 @115 -@521 := @96 @493 @461 -@522 := @143 @521 -@525 := (h : @74) -> (hs : @470) -> @522 @116 -@526 := @519 @72 -@528 := @96 @508 @468 -@530 := @143 @528 @116 -@531 := (hs : @474) -> @530 -@532 := @526 @472 -@534 := @143 @106 @116 -@535 := @221 @30 -@537 := @29 (@17 @36) -@550 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @537 @38) -> (hs : @225) -> @143 (@96 (@29 (@17 @151)) @36) @171 -@551 := @535 @31 -@553 := @29 (@17 @38) -@565 := {vs : @147} -> - {ts : @148} -> (h : @13 @553 @31) -> (hs : @225) -> @143 (@96 (@29 (@17 @153)) @36) @260 -@566 := @551 @106 -@568 := @29 (@17 @40) -@570 := @13 @568 @31 -@571 := @522 @40 -@573 := @96 @537 @513 -@578 := {ts : @148} -> (h : @570) -> (hs : @571) -> @143 @573 @260 -@579 := @566 @116 -@581 := @96 @553 @521 -@582 := @143 @581 -@585 := (h : @70) -> (hs : @530) -> @582 @117 -@586 := @579 @68 -@588 := @96 @568 @528 -@590 := @143 @588 @117 -@591 := (hs : @534) -> @590 -@592 := @586 @532 -@594 := @143 @108 @117 -@595 := Eq.{1} -@596 := Option.{0} -@597 := @596 @148 -@598 := @595 @597 -@599 := LexLeanPreservation.Rust.adtFields -@603 := @598 (@599 @149 @36 @38) -@604 := Option.some.{0} -@605 := @604 @148 -@606 := @605 @4 -@607 := @603 @606 -@610 := @7 @163 @157 @149 -@611 := LexLeanTarget.TargetSyntax.Value.adt -@613 := @611 @153 @36 -@614 := @610 @613 -@615 := @8 @151 -@625 := {p : @32} -> - {c : @33} -> - {A : @34} -> - {i : @35} -> {k : @35} -> {fs : @147} -> {tys : @148} -> (h : @607) -> (hf : @162) -> @614 @615 -@627 := LexLeanPreservation.Rust.wt_adt @0 -@628 := @599 @0 -@632 := @598 (@628 @36 @38) @606 -@644 := {c : @33} -> - {A : @34} -> - {i : @35} -> - {k : @35} -> {fs : @147} -> {tys : @148} -> (h : @632) -> (hf : @191) -> @11 @157 @149 @613 @615 -@645 := @627 @1 -@655 := {A : @34} -> - {i : @35} -> - {k : @35} -> {fs : @147} -> {tys : @148} -> (h : @632) -> (hf : @210) -> @12 @149 @613 @615 -@656 := @645 @2 -@657 := @13 @613 -@664 := {i : @35} -> - {k : @35} -> {fs : @147} -> {tys : @148} -> (h : @632) -> (hf : @225) -> @657 @615 -@665 := @656 @9 -@666 := @628 @9 -@675 := {k : @35} -> - {fs : @147} -> {tys : @148} -> (h : @598 (@666 @38) @606) -> (hf : @225) -> @657 @10 -@676 := @665 @9 -@677 := @666 @9 -@678 := @598 @677 -@679 := @678 @606 -@680 := @611 @9 -@682 := @13 (@680 @36) -@687 := {fs : @147} -> {tys : @148} -> (h : @679) -> (hf : @225) -> @682 @10 -@688 := @676 @108 -@695 := {tys : @148} -> (h : @679) -> (hf : @582 @40) -> @13 (@680 @573) @10 -@696 := @688 @117 -@697 := @605 @117 -@703 := (h : @678 @697) -> (hf : @590) -> @13 (@680 @581) @10 -@704 := Eq.refl.{1} -@705 := @704 @597 -@707 := @696 (@705 @677) -@711 := (hf : @594) -> @13 (@680 @588) @10 -@712 := @707 @592 -@715 := @13 (@680 @108) @10 -@716 := fun (__s : @3) => @712 -@717 := Reasoning.Clinic.Triage.Step -@718 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.__enc_1 -@719 := @718 @4 -@720 := 1 -@721 := @8 @720 -@722 := @13 @719 -@723 := @722 @721 -@724 := (__v : @717) -> @723 -@725 := fun (__v : @717) => @723 -@726 := @656 @720 -@727 := @628 @720 -@736 := {k : @35} -> - {fs : @147} -> {tys : @148} -> (h : @598 (@727 @38) @606) -> (hf : @225) -> @657 @721 -@737 := @726 @9 -@738 := @727 @9 -@739 := @598 @738 -@740 := @739 @606 -@745 := {fs : @147} -> {tys : @148} -> (h : @740) -> (hf : @225) -> @682 @721 -@746 := @737 @95 -@749 := @13 (@680 @95) @721 -@752 := {tys : @148} -> (h : @740) -> (hf : @271) -> @749 -@753 := @746 @109 -@754 := @605 @109 -@757 := (h : @739 @754) -> (hf : @145) -> @749 -@760 := @753 (@705 @738) @142 -@761 := @726 @720 -@762 := @727 @720 -@763 := @598 @762 -@764 := @763 @606 -@765 := @611 @720 -@772 := {fs : @147} -> {tys : @148} -> (h : @764) -> (hf : @225) -> @13 (@765 @36) @721 -@773 := @761 @95 -@776 := @13 (@765 @95) @721 -@779 := {tys : @148} -> (h : @764) -> (hf : @271) -> @776 -@780 := @773 @109 -@783 := (h : @763 @754) -> (hf : @145) -> @776 -@786 := @780 (@705 @762) @142 -@787 := 2 -@788 := @726 @787 -@789 := @727 @787 -@790 := @598 @789 -@791 := @790 @606 -@792 := @611 @787 -@799 := {fs : @147} -> {tys : @148} -> (h : @791) -> (hf : @225) -> @13 (@792 @36) @721 -@800 := @788 @95 -@803 := @13 (@792 @95) @721 -@806 := {tys : @148} -> (h : @791) -> (hf : @271) -> @803 -@807 := @800 @109 -@810 := (h : @790 @754) -> (hf : @145) -> @803 -@813 := @807 (@705 @789) @142 -@814 := 3 -@815 := @726 @814 -@816 := @727 @814 -@817 := @598 @816 -@818 := @817 @606 -@819 := @611 @814 -@826 := {fs : @147} -> {tys : @148} -> (h : @818) -> (hf : @225) -> @13 (@819 @36) @721 -@827 := @815 @95 -@830 := @13 (@819 @95) @721 -@833 := {tys : @148} -> (h : @818) -> (hf : @271) -> @830 -@834 := @827 @109 -@837 := (h : @817 @754) -> (hf : @145) -> @830 -@840 := @834 (@705 @816) @142 -@841 := 4 -@842 := @726 @841 -@843 := @727 @841 -@844 := @598 @843 -@845 := @844 @606 -@846 := @611 @841 -@853 := {fs : @147} -> {tys : @148} -> (h : @845) -> (hf : @225) -> @13 (@846 @36) @721 -@854 := @842 @95 -@857 := @13 (@846 @95) @721 -@860 := {tys : @148} -> (h : @845) -> (hf : @271) -> @857 -@861 := @854 @109 -@864 := (h : @844 @754) -> (hf : @145) -> @857 -@867 := @861 (@705 @843) @142 -@868 := 5 -@869 := @726 @868 -@870 := @727 @868 -@871 := @598 @870 -@872 := @871 @606 -@873 := @611 @868 -@880 := {fs : @147} -> {tys : @148} -> (h : @872) -> (hf : @225) -> @13 (@873 @36) @721 -@881 := @869 @95 -@884 := @13 (@873 @95) @721 -@887 := {tys : @148} -> (h : @872) -> (hf : @271) -> @884 -@888 := @881 @109 -@891 := (h : @871 @754) -> (hf : @145) -> @884 -@894 := @888 (@705 @870) @142 -@895 := 6 -@896 := @726 @895 -@897 := @727 @895 -@898 := @598 @897 -@899 := @898 @606 -@900 := @611 @895 -@907 := {fs : @147} -> {tys : @148} -> (h : @899) -> (hf : @225) -> @13 (@900 @36) @721 -@908 := @896 @95 -@911 := @13 (@900 @95) @721 -@914 := {tys : @148} -> (h : @899) -> (hf : @271) -> @911 -@915 := @908 @109 -@918 := (h : @898 @754) -> (hf : @145) -> @911 -@921 := @915 (@705 @897) @142 -@922 := 7 -@923 := @726 @922 -@924 := @727 @922 -@925 := @598 @924 -@926 := @925 @606 -@927 := @611 @922 -@934 := {fs : @147} -> {tys : @148} -> (h : @926) -> (hf : @225) -> @13 (@927 @36) @721 -@935 := @923 @95 -@938 := @13 (@927 @95) @721 -@941 := {tys : @148} -> (h : @926) -> (hf : @271) -> @938 -@942 := @935 @109 -@945 := (h : @925 @754) -> (hf : @145) -> @938 -@948 := @942 (@705 @924) @142 -@960 := fun (__v : @717) => - Reasoning.Clinic.Triage.Step.casesOn.{0} @725 @4 @760 @786 @813 @840 @867 @894 @921 @948 -@961 := Reasoning.Clinic.Chart -@962 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.__enc_3 -@963 := @962 @4 -@964 := @8 @814 -@967 := (__s : @961) -> @13 @963 @964 -@968 := Reasoning.Clinic.Chart.vitals -@969 := @968 @4 -@970 := Reasoning.Clinic.Chart.fever -@971 := @970 @4 -@972 := Reasoning.Clinic.Chart.tachycardia -@973 := @972 @4 -@974 := Reasoning.Clinic.Chart.tachypnea -@975 := @974 @4 -@976 := Reasoning.Clinic.Chart.leukocytosis -@977 := @976 @4 -@978 := Reasoning.Clinic.Chart.sirs -@979 := @978 @4 -@980 := Reasoning.Clinic.Chart.sepsis -@981 := @980 @4 -@982 := Reasoning.Clinic.Chart.shock -@983 := @982 @4 -@984 := Reasoning.Clinic.Chart.level -@985 := @984 @4 -@986 := @5 @969 -@988 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.Compose.RustStd.__wt_0 @969 -@989 := @29 @971 -@990 := @64 @971 -@992 := @13 @989 @31 -@993 := @29 @973 -@994 := @64 @973 -@996 := @13 @993 @31 -@997 := @29 @975 -@998 := @64 @975 -@1000 := @13 @997 @31 -@1001 := @29 @977 -@1002 := @64 @977 -@1004 := @13 @1001 @31 -@1005 := @29 @979 -@1006 := @64 @979 -@1008 := @13 @1005 @31 -@1009 := @29 @981 -@1010 := @64 @981 -@1012 := @13 @1009 @31 -@1013 := @29 @983 -@1014 := @64 @983 -@1016 := @13 @1013 @31 -@1017 := @29 @985 -@1018 := @64 @985 -@1020 := @13 @1017 @31 -@1022 := @96 @1017 @95 -@1024 := @96 @1013 @1022 -@1026 := @96 @1009 @1024 -@1028 := @96 @1005 @1026 -@1030 := @96 @1001 @1028 -@1032 := @96 @997 @1030 -@1034 := @96 @993 @1032 -@1036 := @96 @989 @1034 -@1038 := @96 @986 @1036 -@1039 := @111 @117 -@1040 := @111 @1039 -@1041 := @110 @10 -@1042 := @1041 @1040 -@1043 := @221 @1017 -@1045 := @29 (@984 @36) -@1058 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @1045 @38) -> (hs : @225) -> @143 (@96 (@29 (@984 @151)) @36) @171 -@1059 := @1043 @31 -@1061 := @29 (@984 @38) -@1073 := {vs : @147} -> - {ts : @148} -> (h : @13 @1061 @31) -> (hs : @225) -> @143 (@96 (@29 (@984 @153)) @36) @260 -@1074 := @1059 @95 -@1076 := @29 (@984 @40) -@1078 := @13 @1076 @31 -@1080 := @96 @1045 @95 -@1085 := {ts : @148} -> (h : @1078) -> (hs : @271) -> @143 @1080 @260 -@1086 := @1074 @109 -@1088 := @96 @1061 @95 -@1089 := @143 @1088 -@1092 := (h : @1020) -> (hs : @145) -> @1089 @112 -@1093 := @1086 @1018 -@1095 := @96 @1076 @95 -@1097 := @143 @1095 @112 -@1098 := (hs : @145) -> @1097 -@1099 := @1093 @142 -@1101 := @143 @1022 @112 -@1102 := @221 @1013 -@1104 := @29 (@982 @36) -@1117 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @1104 @38) -> (hs : @225) -> @143 (@96 (@29 (@982 @151)) @36) @171 -@1118 := @1102 @31 -@1120 := @29 (@982 @38) -@1132 := {vs : @147} -> - {ts : @148} -> (h : @13 @1120 @31) -> (hs : @225) -> @143 (@96 (@29 (@982 @153)) @36) @260 -@1133 := @1118 @1022 -@1135 := @29 (@982 @40) -@1137 := @13 @1135 @31 -@1138 := @1089 @40 -@1140 := @96 @1104 @1080 -@1145 := {ts : @148} -> (h : @1137) -> (hs : @1138) -> @143 @1140 @260 -@1146 := @1133 @112 -@1148 := @96 @1120 @1088 -@1149 := @143 @1148 -@1152 := (h : @1016) -> (hs : @1097) -> @1149 @113 -@1153 := @1146 @1014 -@1155 := @96 @1135 @1095 -@1157 := @143 @1155 @113 -@1158 := (hs : @1101) -> @1157 -@1159 := @1153 @1099 -@1161 := @143 @1024 @113 -@1162 := @221 @1009 -@1164 := @29 (@980 @36) -@1177 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @1164 @38) -> (hs : @225) -> @143 (@96 (@29 (@980 @151)) @36) @171 -@1178 := @1162 @31 -@1180 := @29 (@980 @38) -@1192 := {vs : @147} -> - {ts : @148} -> (h : @13 @1180 @31) -> (hs : @225) -> @143 (@96 (@29 (@980 @153)) @36) @260 -@1193 := @1178 @1024 -@1195 := @29 (@980 @40) -@1197 := @13 @1195 @31 -@1198 := @1149 @40 -@1200 := @96 @1164 @1140 -@1205 := {ts : @148} -> (h : @1197) -> (hs : @1198) -> @143 @1200 @260 -@1206 := @1193 @113 -@1208 := @96 @1180 @1148 -@1209 := @143 @1208 -@1212 := (h : @1012) -> (hs : @1157) -> @1209 @114 -@1213 := @1206 @1010 -@1215 := @96 @1195 @1155 -@1217 := @143 @1215 @114 -@1218 := (hs : @1161) -> @1217 -@1219 := @1213 @1159 -@1221 := @143 @1026 @114 -@1222 := @221 @1005 -@1224 := @29 (@978 @36) -@1237 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @1224 @38) -> (hs : @225) -> @143 (@96 (@29 (@978 @151)) @36) @171 -@1238 := @1222 @31 -@1240 := @29 (@978 @38) -@1252 := {vs : @147} -> - {ts : @148} -> (h : @13 @1240 @31) -> (hs : @225) -> @143 (@96 (@29 (@978 @153)) @36) @260 -@1253 := @1238 @1026 -@1255 := @29 (@978 @40) -@1257 := @13 @1255 @31 -@1258 := @1209 @40 -@1260 := @96 @1224 @1200 -@1265 := {ts : @148} -> (h : @1257) -> (hs : @1258) -> @143 @1260 @260 -@1266 := @1253 @114 -@1268 := @96 @1240 @1208 -@1269 := @143 @1268 -@1272 := (h : @1008) -> (hs : @1217) -> @1269 @115 -@1273 := @1266 @1006 -@1275 := @96 @1255 @1215 -@1277 := @143 @1275 @115 -@1278 := (hs : @1221) -> @1277 -@1279 := @1273 @1219 -@1281 := @143 @1028 @115 -@1282 := @221 @1001 -@1284 := @29 (@976 @36) -@1297 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @1284 @38) -> (hs : @225) -> @143 (@96 (@29 (@976 @151)) @36) @171 -@1298 := @1282 @31 -@1300 := @29 (@976 @38) -@1312 := {vs : @147} -> - {ts : @148} -> (h : @13 @1300 @31) -> (hs : @225) -> @143 (@96 (@29 (@976 @153)) @36) @260 -@1313 := @1298 @1028 -@1315 := @29 (@976 @40) -@1317 := @13 @1315 @31 -@1318 := @1269 @40 -@1320 := @96 @1284 @1260 -@1325 := {ts : @148} -> (h : @1317) -> (hs : @1318) -> @143 @1320 @260 -@1326 := @1313 @115 -@1328 := @96 @1300 @1268 -@1329 := @143 @1328 -@1332 := (h : @1004) -> (hs : @1277) -> @1329 @116 -@1333 := @1326 @1002 -@1335 := @96 @1315 @1275 -@1337 := @143 @1335 @116 -@1338 := (hs : @1281) -> @1337 -@1339 := @1333 @1279 -@1341 := @143 @1030 @116 -@1342 := @221 @997 -@1344 := @29 (@974 @36) -@1357 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @1344 @38) -> (hs : @225) -> @143 (@96 (@29 (@974 @151)) @36) @171 -@1358 := @1342 @31 -@1360 := @29 (@974 @38) -@1372 := {vs : @147} -> - {ts : @148} -> (h : @13 @1360 @31) -> (hs : @225) -> @143 (@96 (@29 (@974 @153)) @36) @260 -@1373 := @1358 @1030 -@1375 := @29 (@974 @40) -@1377 := @13 @1375 @31 -@1378 := @1329 @40 -@1380 := @96 @1344 @1320 -@1385 := {ts : @148} -> (h : @1377) -> (hs : @1378) -> @143 @1380 @260 -@1386 := @1373 @116 -@1388 := @96 @1360 @1328 -@1389 := @143 @1388 -@1392 := (h : @1000) -> (hs : @1337) -> @1389 @117 -@1393 := @1386 @998 -@1395 := @96 @1375 @1335 -@1397 := @143 @1395 @117 -@1398 := (hs : @1341) -> @1397 -@1399 := @1393 @1339 -@1401 := @143 @1032 @117 -@1402 := @221 @993 -@1404 := @29 (@972 @36) -@1417 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @1404 @38) -> (hs : @225) -> @143 (@96 (@29 (@972 @151)) @36) @171 -@1418 := @1402 @31 -@1420 := @29 (@972 @38) -@1432 := {vs : @147} -> - {ts : @148} -> (h : @13 @1420 @31) -> (hs : @225) -> @143 (@96 (@29 (@972 @153)) @36) @260 -@1433 := @1418 @1032 -@1435 := @29 (@972 @40) -@1437 := @13 @1435 @31 -@1438 := @1389 @40 -@1440 := @96 @1404 @1380 -@1445 := {ts : @148} -> (h : @1437) -> (hs : @1438) -> @143 @1440 @260 -@1446 := @1433 @117 -@1448 := @96 @1420 @1388 -@1449 := @143 @1448 -@1452 := (h : @996) -> (hs : @1397) -> @1449 @1039 -@1453 := @1446 @994 -@1455 := @96 @1435 @1395 -@1457 := @143 @1455 @1039 -@1458 := (hs : @1401) -> @1457 -@1459 := @1453 @1399 -@1461 := @143 @1034 @1039 -@1462 := @221 @989 -@1464 := @29 (@970 @36) -@1477 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @1464 @38) -> (hs : @225) -> @143 (@96 (@29 (@970 @151)) @36) @171 -@1478 := @1462 @31 -@1480 := @29 (@970 @38) -@1492 := {vs : @147} -> - {ts : @148} -> (h : @13 @1480 @31) -> (hs : @225) -> @143 (@96 (@29 (@970 @153)) @36) @260 -@1493 := @1478 @1034 -@1495 := @29 (@970 @40) -@1497 := @13 @1495 @31 -@1498 := @1449 @40 -@1500 := @96 @1464 @1440 -@1505 := {ts : @148} -> (h : @1497) -> (hs : @1498) -> @143 @1500 @260 -@1506 := @1493 @1039 -@1508 := @96 @1480 @1448 -@1509 := @143 @1508 -@1512 := (h : @992) -> (hs : @1457) -> @1509 @1040 -@1513 := @1506 @990 -@1515 := @96 @1495 @1455 -@1517 := @143 @1515 @1040 -@1518 := (hs : @1461) -> @1517 -@1519 := @1513 @1459 -@1521 := @143 @1036 @1040 -@1522 := @221 @986 -@1524 := @5 (@968 @36) -@1537 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @1524 @38) -> (hs : @225) -> @143 (@96 (@5 (@968 @151)) @36) @171 -@1538 := @1522 @10 -@1540 := @5 (@968 @38) -@1542 := @13 @1540 @10 -@1547 := @143 (@96 (@5 (@968 @153)) @36) -@1548 := @1041 @38 -@1553 := {vs : @147} -> {ts : @148} -> (h : @1542) -> (hs : @225) -> @1547 @1548 -@1554 := @1538 @1036 -@1556 := @5 (@968 @40) -@1558 := @13 @1556 @10 -@1559 := @1509 @40 -@1561 := @96 @1524 @1500 -@1566 := {ts : @148} -> (h : @1558) -> (hs : @1559) -> @143 @1561 @1548 -@1567 := @1554 @1040 -@1569 := @13 @986 @10 -@1571 := @96 @1540 @1508 -@1572 := @143 @1571 -@1575 := (h : @1569) -> (hs : @1517) -> @1572 @1042 -@1576 := @1567 @988 -@1578 := @96 @1556 @1515 -@1580 := @143 @1578 @1042 -@1581 := (hs : @1521) -> @1580 -@1582 := @1576 @1519 -@1584 := @143 @1038 @1042 -@1585 := @656 @814 -@1586 := @628 @814 -@1595 := {k : @35} -> - {fs : @147} -> {tys : @148} -> (h : @598 (@1586 @38) @606) -> (hf : @225) -> @657 @964 -@1596 := @1585 @9 -@1597 := @1586 @9 -@1598 := @598 @1597 -@1599 := @1598 @606 -@1604 := {fs : @147} -> {tys : @148} -> (h : @1599) -> (hf : @225) -> @682 @964 -@1605 := @1596 @1038 -@1612 := {tys : @148} -> (h : @1599) -> (hf : @1572 @40) -> @13 (@680 @1561) @964 -@1613 := @1605 @1042 -@1620 := (h : @1598 (@605 @1042)) -> (hf : @1580) -> @13 (@680 @1571) @964 -@1622 := @1613 (@705 @1597) -@1626 := (hf : @1584) -> @13 (@680 @1578) @964 -@1627 := @1622 @1582 -@1630 := @13 (@680 @1038) @964 -@1631 := fun (__s : @961) => @1627 -@1632 := Reasoning.Clinic.Triage.Ledger -@1633 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.__enc_4 -@1634 := @1633 @4 -@1635 := @8 @841 -@1638 := (__s : @1632) -> @13 @1634 @1635 -@1639 := Reasoning.Clinic.Triage.Ledger.iterations -@1640 := @1639 @4 -@1641 := Reasoning.Clinic.Triage.Ledger.attempts -@1642 := @1641 @4 -@1643 := Reasoning.Clinic.Triage.Ledger.firings -@1644 := @1643 @4 -@1645 := Reasoning.Clinic.Triage.Ledger.expansions -@1646 := @1645 @4 -@1647 := Reasoning.Clinic.Triage.Ledger.verifications -@1648 := @1647 @4 -@1649 := Reasoning.Clinic.Triage.Ledger.frontier -@1650 := @1649 @4 -@1651 := @29 @1640 -@1652 := @64 @1640 -@1654 := @13 @1651 @31 -@1655 := @29 @1642 -@1656 := @64 @1642 -@1658 := @13 @1655 @31 -@1659 := @29 @1644 -@1660 := @64 @1644 -@1662 := @13 @1659 @31 -@1663 := @29 @1646 -@1664 := @64 @1646 -@1666 := @13 @1663 @31 -@1667 := @29 @1648 -@1668 := @64 @1648 -@1670 := @13 @1667 @31 -@1671 := @29 @1650 -@1672 := @64 @1650 -@1674 := @13 @1671 @31 -@1676 := @96 @1671 @95 -@1678 := @96 @1667 @1676 -@1680 := @96 @1663 @1678 -@1682 := @96 @1659 @1680 -@1684 := @96 @1655 @1682 -@1686 := @96 @1651 @1684 -@1687 := @221 @1671 -@1689 := @29 (@1649 @36) -@1702 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @1689 @38) -> (hs : @225) -> @143 (@96 (@29 (@1649 @151)) @36) @171 -@1703 := @1687 @31 -@1705 := @29 (@1649 @38) -@1717 := {vs : @147} -> - {ts : @148} -> (h : @13 @1705 @31) -> (hs : @225) -> @143 (@96 (@29 (@1649 @153)) @36) @260 -@1718 := @1703 @95 -@1720 := @29 (@1649 @40) -@1722 := @13 @1720 @31 -@1724 := @96 @1689 @95 -@1729 := {ts : @148} -> (h : @1722) -> (hs : @271) -> @143 @1724 @260 -@1730 := @1718 @109 -@1732 := @96 @1705 @95 -@1733 := @143 @1732 -@1736 := (h : @1674) -> (hs : @145) -> @1733 @112 -@1737 := @1730 @1672 -@1739 := @96 @1720 @95 -@1741 := @143 @1739 @112 -@1742 := (hs : @145) -> @1741 -@1743 := @1737 @142 -@1745 := @143 @1676 @112 -@1746 := @221 @1667 -@1748 := @29 (@1647 @36) -@1761 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @1748 @38) -> (hs : @225) -> @143 (@96 (@29 (@1647 @151)) @36) @171 -@1762 := @1746 @31 -@1764 := @29 (@1647 @38) -@1776 := {vs : @147} -> - {ts : @148} -> (h : @13 @1764 @31) -> (hs : @225) -> @143 (@96 (@29 (@1647 @153)) @36) @260 -@1777 := @1762 @1676 -@1779 := @29 (@1647 @40) -@1781 := @13 @1779 @31 -@1782 := @1733 @40 -@1784 := @96 @1748 @1724 -@1789 := {ts : @148} -> (h : @1781) -> (hs : @1782) -> @143 @1784 @260 -@1790 := @1777 @112 -@1792 := @96 @1764 @1732 -@1793 := @143 @1792 -@1796 := (h : @1670) -> (hs : @1741) -> @1793 @113 -@1797 := @1790 @1668 -@1799 := @96 @1779 @1739 -@1801 := @143 @1799 @113 -@1802 := (hs : @1745) -> @1801 -@1803 := @1797 @1743 -@1805 := @143 @1678 @113 -@1806 := @221 @1663 -@1808 := @29 (@1645 @36) -@1821 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @1808 @38) -> (hs : @225) -> @143 (@96 (@29 (@1645 @151)) @36) @171 -@1822 := @1806 @31 -@1824 := @29 (@1645 @38) -@1836 := {vs : @147} -> - {ts : @148} -> (h : @13 @1824 @31) -> (hs : @225) -> @143 (@96 (@29 (@1645 @153)) @36) @260 -@1837 := @1822 @1678 -@1839 := @29 (@1645 @40) -@1841 := @13 @1839 @31 -@1842 := @1793 @40 -@1844 := @96 @1808 @1784 -@1849 := {ts : @148} -> (h : @1841) -> (hs : @1842) -> @143 @1844 @260 -@1850 := @1837 @113 -@1852 := @96 @1824 @1792 -@1853 := @143 @1852 -@1856 := (h : @1666) -> (hs : @1801) -> @1853 @114 -@1857 := @1850 @1664 -@1859 := @96 @1839 @1799 -@1861 := @143 @1859 @114 -@1862 := (hs : @1805) -> @1861 -@1863 := @1857 @1803 -@1865 := @143 @1680 @114 -@1866 := @221 @1659 -@1868 := @29 (@1643 @36) -@1881 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @1868 @38) -> (hs : @225) -> @143 (@96 (@29 (@1643 @151)) @36) @171 -@1882 := @1866 @31 -@1884 := @29 (@1643 @38) -@1896 := {vs : @147} -> - {ts : @148} -> (h : @13 @1884 @31) -> (hs : @225) -> @143 (@96 (@29 (@1643 @153)) @36) @260 -@1897 := @1882 @1680 -@1899 := @29 (@1643 @40) -@1901 := @13 @1899 @31 -@1902 := @1853 @40 -@1904 := @96 @1868 @1844 -@1909 := {ts : @148} -> (h : @1901) -> (hs : @1902) -> @143 @1904 @260 -@1910 := @1897 @114 -@1912 := @96 @1884 @1852 -@1913 := @143 @1912 -@1916 := (h : @1662) -> (hs : @1861) -> @1913 @115 -@1917 := @1910 @1660 -@1919 := @96 @1899 @1859 -@1921 := @143 @1919 @115 -@1922 := (hs : @1865) -> @1921 -@1923 := @1917 @1863 -@1925 := @143 @1682 @115 -@1926 := @221 @1655 -@1928 := @29 (@1641 @36) -@1941 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @1928 @38) -> (hs : @225) -> @143 (@96 (@29 (@1641 @151)) @36) @171 -@1942 := @1926 @31 -@1944 := @29 (@1641 @38) -@1956 := {vs : @147} -> - {ts : @148} -> (h : @13 @1944 @31) -> (hs : @225) -> @143 (@96 (@29 (@1641 @153)) @36) @260 -@1957 := @1942 @1682 -@1959 := @29 (@1641 @40) -@1961 := @13 @1959 @31 -@1962 := @1913 @40 -@1964 := @96 @1928 @1904 -@1969 := {ts : @148} -> (h : @1961) -> (hs : @1962) -> @143 @1964 @260 -@1970 := @1957 @115 -@1972 := @96 @1944 @1912 -@1973 := @143 @1972 -@1976 := (h : @1658) -> (hs : @1921) -> @1973 @116 -@1977 := @1970 @1656 -@1979 := @96 @1959 @1919 -@1981 := @143 @1979 @116 -@1982 := (hs : @1925) -> @1981 -@1983 := @1977 @1923 -@1985 := @143 @1684 @116 -@1986 := @221 @1651 -@1988 := @29 (@1639 @36) -@2001 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @1988 @38) -> (hs : @225) -> @143 (@96 (@29 (@1639 @151)) @36) @171 -@2002 := @1986 @31 -@2004 := @29 (@1639 @38) -@2016 := {vs : @147} -> - {ts : @148} -> (h : @13 @2004 @31) -> (hs : @225) -> @143 (@96 (@29 (@1639 @153)) @36) @260 -@2017 := @2002 @1684 -@2019 := @29 (@1639 @40) -@2021 := @13 @2019 @31 -@2022 := @1973 @40 -@2024 := @96 @1988 @1964 -@2029 := {ts : @148} -> (h : @2021) -> (hs : @2022) -> @143 @2024 @260 -@2030 := @2017 @116 -@2032 := @96 @2004 @1972 -@2033 := @143 @2032 -@2036 := (h : @1654) -> (hs : @1981) -> @2033 @117 -@2037 := @2030 @1652 -@2039 := @96 @2019 @1979 -@2041 := @143 @2039 @117 -@2042 := (hs : @1985) -> @2041 -@2043 := @2037 @1983 -@2045 := @143 @1686 @117 -@2046 := @656 @841 -@2047 := @628 @841 -@2056 := {k : @35} -> - {fs : @147} -> {tys : @148} -> (h : @598 (@2047 @38) @606) -> (hf : @225) -> @657 @1635 -@2057 := @2046 @9 -@2058 := @2047 @9 -@2059 := @598 @2058 -@2060 := @2059 @606 -@2065 := {fs : @147} -> {tys : @148} -> (h : @2060) -> (hf : @225) -> @682 @1635 -@2066 := @2057 @1686 -@2073 := {tys : @148} -> (h : @2060) -> (hf : @2033 @40) -> @13 (@680 @2024) @1635 -@2074 := @2066 @117 -@2080 := (h : @2059 @697) -> (hf : @2041) -> @13 (@680 @2032) @1635 -@2082 := @2074 (@705 @2058) -@2086 := (hf : @2045) -> @13 (@680 @2039) @1635 -@2087 := @2082 @2043 -@2090 := @13 (@680 @1686) @1635 -@2091 := fun (__s : @1632) => @2087 -@2092 := Reasoning.Clinic.Triage.Run -@2094 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.__enc_2 @4 -@2095 := @8 @787 -@2098 := (__s : @2092) -> @13 @2094 @2095 -@2099 := Reasoning.Clinic.Triage.Run.state -@2100 := @2099 @4 -@2101 := Reasoning.Clinic.Triage.Run.trace -@2102 := @2101 @4 -@2103 := Reasoning.Clinic.Triage.Run.ledger -@2104 := @2103 @4 -@2105 := @962 @2100 -@2107 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.Compose.RustStd.__wt_3 @2100 -@2108 := LexLeanPreservation.encList -@2109 := @2108 @717 -@2110 := @2109 @718 -@2111 := @2110 @2102 -@2112 := LexLeanTarget.TargetSyntax.Ty.list -@2113 := @2112 @721 -@2116 := fun (__x : @717) => - LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.Compose.RustStd.__wt_1 @4 -@2117 := Sort 1 -@2118 := (a._@._internal._hyg.#0 : @4) -> @91 -@2119 := @38 @4 -@2122 := (x : @38) -> @154 @2119 @40 -@2123 := @146 @36 -@2126 := @7 @157 @149 @151 -@2129 := @2108 @153 @36 @4 -@2130 := @2126 @2129 -@2131 := @2112 @38 -@2140 := {p : @32} -> - {c : @33} -> - {A : @34} -> {α : @2117} -> {e : @2118} -> {t : @92} -> (h : @2122) -> (xs : @2123) -> @2130 @2131 -@2142 := LexLeanPreservation.Rust.wt_encList @0 -@2156 := {c : @33} -> - {A : @34} -> - {α : @2117} -> - {e : @2118} -> - {t : @92} -> (h : (x : @38) -> @185 @2119 @40) -> (xs : @2123) -> @11 @149 @151 @2129 @2131 -@2157 := @2142 @1 -@2169 := {A : @34} -> - {α : @2117} -> - {e : @2118} -> - {t : @92} -> (h : (x : @38) -> @205 @2119 @40) -> (xs : @2123) -> @12 @151 @2129 @2131 -@2170 := @2157 @2 -@2172 := @13 @2119 @40 -@2180 := {α : @2117} -> - {e : @2118} -> {t : @92} -> (h : (x : @38) -> @2172) -> (xs : @2123) -> @13 @2129 @2131 -@2181 := @2170 @717 -@2182 := (a._@._internal._hyg.#0 : @717) -> @91 -@2183 := (x : @717) -> @2172 -@2184 := @146 @717 -@2192 := {e : @2182} -> {t : @92} -> (h : @2183) -> (xs : @2184) -> @13 (@2109 @36 @4) @2131 -@2193 := @2181 @718 -@2195 := (x : @717) -> @722 @40 -@2197 := @13 (@2110 @4) -@2201 := {t : @92} -> (h : @2195) -> (xs : @2184) -> @2197 @2131 -@2202 := @2193 @721 -@2206 := (h : (x : @717) -> @723) -> (xs : @2184) -> @2197 @2113 -@2208 := @2202 @2116 @2102 -@2210 := @13 @2111 @2113 -@2211 := @1633 @2104 -@2213 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.Compose.RustStd.__wt_4 @2104 -@2215 := @96 @2211 @95 -@2217 := @96 @2111 @2215 -@2219 := @96 @2105 @2217 -@2220 := @110 @1635 -@2221 := @2220 @109 -@2222 := @110 @2113 -@2223 := @2222 @2221 -@2224 := @110 @964 -@2225 := @2224 @2223 -@2226 := @221 @2211 -@2228 := @1633 (@2103 @36) -@2241 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @2228 @38) -> (hs : @225) -> @143 (@96 (@1633 (@2103 @151)) @36) @171 -@2242 := @2226 @1635 -@2244 := @1633 (@2103 @38) -@2246 := @13 @2244 @1635 -@2251 := @143 (@96 (@1633 (@2103 @153)) @36) -@2252 := @2220 @38 -@2257 := {vs : @147} -> {ts : @148} -> (h : @2246) -> (hs : @225) -> @2251 @2252 -@2258 := @2242 @95 -@2260 := @1633 (@2103 @40) -@2262 := @13 @2260 @1635 -@2264 := @96 @2228 @95 -@2269 := {ts : @148} -> (h : @2262) -> (hs : @271) -> @143 @2264 @2252 -@2270 := @2258 @109 -@2272 := @13 @2211 @1635 -@2274 := @96 @2244 @95 -@2275 := @143 @2274 -@2278 := (h : @2272) -> (hs : @145) -> @2275 @2221 -@2279 := @2270 @2213 -@2281 := @96 @2260 @95 -@2283 := @143 @2281 @2221 -@2284 := (hs : @145) -> @2283 -@2285 := @2279 @142 -@2287 := @143 @2215 @2221 -@2288 := @221 @2111 -@2290 := @2110 (@2101 @36) -@2303 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @2290 @38) -> (hs : @225) -> @143 (@96 (@2110 (@2101 @151)) @36) @171 -@2304 := @2288 @2113 -@2306 := @2110 (@2101 @38) -@2308 := @13 @2306 @2113 -@2313 := @143 (@96 (@2110 (@2101 @153)) @36) -@2314 := @2222 @38 -@2319 := {vs : @147} -> {ts : @148} -> (h : @2308) -> (hs : @225) -> @2313 @2314 -@2320 := @2304 @2215 -@2322 := @2110 (@2101 @40) -@2324 := @13 @2322 @2113 -@2325 := @2275 @40 -@2327 := @96 @2290 @2264 -@2332 := {ts : @148} -> (h : @2324) -> (hs : @2325) -> @143 @2327 @2314 -@2333 := @2320 @2221 -@2335 := @96 @2306 @2274 -@2336 := @143 @2335 -@2339 := (h : @2210) -> (hs : @2283) -> @2336 @2223 -@2340 := @2333 @2208 -@2342 := @96 @2322 @2281 -@2344 := @143 @2342 @2223 -@2345 := (hs : @2287) -> @2344 -@2346 := @2340 @2285 -@2348 := @143 @2217 @2223 -@2349 := @221 @2105 -@2351 := @962 (@2099 @36) -@2364 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @2351 @38) -> (hs : @225) -> @143 (@96 (@962 (@2099 @151)) @36) @171 -@2365 := @2349 @964 -@2367 := @962 (@2099 @38) -@2369 := @13 @2367 @964 -@2374 := @143 (@96 (@962 (@2099 @153)) @36) -@2375 := @2224 @38 -@2380 := {vs : @147} -> {ts : @148} -> (h : @2369) -> (hs : @225) -> @2374 @2375 -@2381 := @2365 @2217 -@2383 := @962 (@2099 @40) -@2385 := @13 @2383 @964 -@2386 := @2336 @40 -@2388 := @96 @2351 @2327 -@2393 := {ts : @148} -> (h : @2385) -> (hs : @2386) -> @143 @2388 @2375 -@2394 := @2381 @2223 -@2396 := @13 @2105 @964 -@2398 := @96 @2367 @2335 -@2399 := @143 @2398 -@2402 := (h : @2396) -> (hs : @2344) -> @2399 @2225 -@2403 := @2394 @2107 -@2405 := @96 @2383 @2342 -@2407 := @143 @2405 @2225 -@2408 := (hs : @2348) -> @2407 -@2409 := @2403 @2346 -@2411 := @143 @2219 @2225 -@2412 := @656 @787 -@2413 := @628 @787 -@2422 := {k : @35} -> - {fs : @147} -> {tys : @148} -> (h : @598 (@2413 @38) @606) -> (hf : @225) -> @657 @2095 -@2423 := @2412 @9 -@2424 := @2413 @9 -@2425 := @598 @2424 -@2426 := @2425 @606 -@2431 := {fs : @147} -> {tys : @148} -> (h : @2426) -> (hf : @225) -> @682 @2095 -@2432 := @2423 @2219 -@2439 := {tys : @148} -> (h : @2426) -> (hf : @2399 @40) -> @13 (@680 @2388) @2095 -@2440 := @2432 @2225 -@2447 := (h : @2425 (@605 @2225)) -> (hf : @2407) -> @13 (@680 @2398) @2095 -@2449 := @2440 (@705 @2424) -@2453 := (hf : @2411) -> @13 (@680 @2405) @2095 -@2454 := @2449 @2409 -@2457 := @13 (@680 @2219) @2095 -@2458 := fun (__s : @2092) => @2454 -@2459 := @29 @149 -@2460 := @64 @149 -@2461 := @13 @2459 -@2462 := @2461 @31 -@2463 := @29 @151 -@2464 := @64 @151 -@2465 := @13 @2463 -@2466 := @2465 @31 -@2467 := @29 @153 -@2468 := @64 @153 -@2469 := @13 @2467 -@2470 := @2469 @31 -@2471 := @29 @36 -@2472 := @64 @36 -@2474 := @13 @2471 @31 -@2475 := @29 @38 -@2476 := @64 @38 -@2478 := @13 @2475 @31 -@2479 := @29 @40 -@2480 := @64 @40 -@2482 := @13 @2479 @31 -@2483 := @96 @2479 -@2484 := @2483 @95 -@2485 := @96 @2475 -@2486 := @2485 @2484 -@2487 := @96 @2471 -@2488 := @2487 @2486 -@2489 := @96 @2467 -@2490 := @2489 @2488 -@2491 := @96 @2463 -@2492 := @2491 @2490 -@2493 := @96 @2459 -@2494 := @2493 @2492 -@2497 := Prod.{0, 0} @35 @91 -@2500 := Prod.mk.{0, 0} @35 @91 -@2501 := @2500 @868 -@2502 := @2501 @2479 -@2503 := @2500 @841 -@2504 := @2503 @2475 -@2505 := @2500 @814 -@2506 := @2505 @2471 -@2507 := @2500 @787 -@2508 := @2507 @2467 -@2509 := @2500 @720 -@2510 := @2509 @2463 -@2511 := @2500 @9 -@2512 := @2511 @2459 -@2513 := @93 @2497 -@2514 := @94 @2497 -@2516 := @2514 @2512 @2513 -@2518 := @2514 @2510 @2516 -@2520 := @2514 @2508 @2518 -@2522 := @2514 @2506 @2520 -@2524 := @2514 @2504 @2522 -@2526 := @2514 @2502 @2524 -@2527 := Bool.true -@2528 := LexLeanTarget.TargetSyntax.Function -@2529 := LexLeanTarget.TargetSyntax.Program.functions -@2530 := @2529 @0 -@2531 := @93 @35 -@2532 := LexLeanTarget.TargetSyntax.Ty.unit -@2533 := LexLeanTarget.TargetSyntax.Value.unit -@2536 := LexLeanTarget.TargetSyntax.Expr.value @2532 @2533 -@2541 := LexLeanTarget.TargetSyntax.Function.mk @2531 @109 @2532 @2536 -@2546 := List.getD.{0} @2528 @2530 @9 @2541 -@2550 := fun (__e_n : @35) => - LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.RustStd.root @4 @9 -@2551 := @221 @2479 -@2552 := @2469 @38 -@2554 := @143 (@2493 @36) -@2560 := {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @2552) -> (hs : @225) -> @2554 @171 -@2561 := @2551 @31 -@2568 := {vs : @147} -> {ts : @148} -> (h : @2474) -> (hs : @225) -> @143 (@2491 @36) @260 -@2569 := @2561 @95 -@2570 := @2489 @95 -@2575 := {ts : @148} -> (h : @2478) -> (hs : @271) -> @143 @2570 @260 -@2576 := @2569 @109 -@2577 := @2487 @95 -@2578 := @143 @2577 -@2581 := (h : @2482) -> (hs : @145) -> @2578 @112 -@2582 := @2576 @2480 -@2583 := @2485 @95 -@2585 := @143 @2583 @112 -@2586 := (hs : @145) -> @2585 -@2587 := @2582 @142 -@2589 := @143 @2484 @112 -@2590 := @221 @2475 -@2591 := @2465 @38 -@2592 := @29 @157 -@2593 := @96 @2592 -@2595 := @143 (@2593 @36) -@2601 := {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @2591) -> (hs : @225) -> @2595 @171 -@2602 := @2590 @31 -@2607 := {vs : @147} -> {ts : @148} -> (h : @2470) -> (hs : @225) -> @2554 @260 -@2608 := @2602 @2484 -@2609 := @2578 @40 -@2610 := @2491 @2570 -@2615 := {ts : @148} -> (h : @2474) -> (hs : @2609) -> @143 @2610 @260 -@2616 := @2608 @112 -@2617 := @2489 @2577 -@2618 := @143 @2617 -@2621 := (h : @2478) -> (hs : @2585) -> @2618 @113 -@2622 := @2616 @2476 -@2623 := @2487 @2583 -@2625 := @143 @2623 @113 -@2626 := (hs : @2589) -> @2625 -@2627 := @2622 @2587 -@2629 := @143 @2486 @113 -@2630 := @221 @2471 -@2631 := @2461 @38 -@2632 := @29 @163 -@2633 := @96 @2632 -@2635 := @143 (@2633 @36) -@2641 := {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @2631) -> (hs : @225) -> @2635 @171 -@2642 := @2630 @31 -@2647 := {vs : @147} -> {ts : @148} -> (h : @2466) -> (hs : @225) -> @2595 @260 -@2648 := @2642 @2486 -@2649 := @2618 @40 -@2650 := @2493 @2610 -@2655 := {ts : @148} -> (h : @2470) -> (hs : @2649) -> @143 @2650 @260 -@2656 := @2648 @113 -@2657 := @2491 @2617 -@2658 := @143 @2657 -@2661 := (h : @2474) -> (hs : @2625) -> @2658 @114 -@2662 := @2656 @2472 -@2663 := @2489 @2623 -@2665 := @143 @2663 @114 -@2666 := (hs : @2629) -> @2665 -@2667 := @2662 @2627 -@2669 := @143 @2488 @114 -@2670 := @221 @2467 -@2671 := @13 @2592 -@2672 := @2671 @38 -@2673 := #9 -@2674 := @29 @2673 -@2675 := @96 @2674 -@2677 := @143 (@2675 @36) -@2683 := {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @2672) -> (hs : @225) -> @2677 @171 -@2684 := @2670 @31 -@2689 := {vs : @147} -> {ts : @148} -> (h : @2462) -> (hs : @225) -> @2635 @260 -@2690 := @2684 @2488 -@2691 := @2658 @40 -@2692 := @2593 @2650 -@2697 := {ts : @148} -> (h : @2466) -> (hs : @2691) -> @143 @2692 @260 -@2698 := @2690 @114 -@2699 := @2493 @2657 -@2700 := @143 @2699 -@2703 := (h : @2470) -> (hs : @2665) -> @2700 @115 -@2704 := @2698 @2468 -@2705 := @2491 @2663 -@2707 := @143 @2705 @115 -@2708 := (hs : @2669) -> @2707 -@2709 := @2704 @2667 -@2711 := @143 @2490 @115 -@2712 := @221 @2463 -@2713 := @13 @2632 -@2714 := @2713 @38 -@2715 := #10 -@2716 := @29 @2715 -@2717 := @96 @2716 -@2719 := @143 (@2717 @36) -@2725 := {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @2714) -> (hs : @225) -> @2719 @171 -@2726 := @2712 @31 -@2727 := @2671 @31 -@2732 := {vs : @147} -> {ts : @148} -> (h : @2727) -> (hs : @225) -> @2677 @260 -@2733 := @2726 @2490 -@2734 := @2700 @40 -@2735 := @2633 @2692 -@2740 := {ts : @148} -> (h : @2462) -> (hs : @2734) -> @143 @2735 @260 -@2741 := @2733 @115 -@2742 := @2593 @2699 -@2743 := @143 @2742 -@2746 := (h : @2466) -> (hs : @2707) -> @2743 @116 -@2747 := @2741 @2464 -@2748 := @2493 @2705 -@2750 := @143 @2748 @116 -@2751 := (hs : @2711) -> @2750 -@2752 := @2747 @2709 -@2754 := @143 @2492 @116 -@2755 := @221 @2459 -@2757 := @13 @2674 @38 -@2758 := #11 -@2759 := @29 @2758 -@2760 := @96 @2759 -@2768 := {t : @92} -> - {vs : @147} -> {ts : @148} -> (h : @2757) -> (hs : @225) -> @143 (@2760 @36) @171 -@2769 := @2755 @31 -@2775 := {vs : @147} -> {ts : @148} -> (h : @2713 @31) -> (hs : @225) -> @2719 @260 -@2776 := @2769 @2492 -@2777 := @2743 @40 -@2778 := @2675 @2735 -@2779 := @143 @2778 -@2783 := {ts : @148} -> (h : @2727) -> (hs : @2777) -> @2779 @260 -@2784 := @2776 @116 -@2785 := @2633 @2742 -@2786 := @143 @2785 -@2789 := (h : @2462) -> (hs : @2750) -> @2786 @117 -@2790 := @2784 @2460 -@2791 := @2593 @2748 -@2792 := @143 @2791 -@2794 := (hs : @2754) -> @2792 @117 -@2795 := @2790 @2752 -@2796 := @143 @2494 -@2797 := @2796 @117 -@2798 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.denote -@2804 := @2798 @149 @151 @153 @36 @38 @40 -@2805 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.__fits_0 -@2811 := @2805 @149 @151 @153 @36 @38 @40 -@2819 := @29 (Reasoning.Main.triageSteps @149 @151 @153 @36 @38 @40) -@2826 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.root @149 @151 @153 @36 @38 @40 -@2827 := Bool -@2828 := Ne.{1} -@2829 := LexLeanPreservation.Obs -@2830 := @2828 @2829 -@2831 := LexLeanPreservation.Rel -@2834 := @2830 (@2831 @40 @4) -@2835 := LexLeanPreservation.Obs.stuck -@2838 := (f : @2827) -> (v : @91) -> @2834 @2835 -@2840 := LexLeanPreservation.Rust.rel_ne_stuck @2811 -@2851 := (v : @91) -> @2830 (@2831 (@2805 @157 @149 @151 @153 @36 @38) @4) @2835 -@2852 := @2840 @2819 -@2856 := @2830 (@2831 @2811 @2819) @2835 -@2857 := @146 @2497 -@2858 := LexLeanPreservation.Rust.FunSem -@2864 := (n : @35) -> @2858 @2673 @163 @157 @4 @149 -@2865 := @596 @2528 -@2866 := @595 @2865 -@2873 := LexLeanRuntime.index (@146 @2528) @2528 (LexLeanRuntime.instIndexableList @2528) -@2877 := @2866 (@2873 (@2529 @2673) @149) -@2878 := @604 @2528 -@2879 := @2878 @151 -@2880 := @2877 @2879 -@2884 := @118 @2715 @2673 @163 @151 -@2885 := LexLeanTarget.TargetSyntax.Function.types -@2886 := @2885 @149 -@2887 := @2884 @2886 -@2888 := @596 @2857 -@2889 := @595 @2888 -@2890 := LexLeanTarget.TargetSemantics.bindAll -@2891 := LexLeanTarget.TargetSyntax.Function.parameters -@2896 := @2889 (@2890 (@2891 @157) @149 @2513) -@2897 := @604 @2857 -@2898 := @2897 @151 -@2899 := @2896 @2898 -@2900 := @596 @2827 -@2901 := @595 @2900 -@2902 := LexLeanPreservation.Rust.fnFallible -@2905 := @2901 (@2902 @2758 @2673) -@2906 := @604 @2827 -@2907 := @2906 @151 -@2908 := @2905 @2907 -@2909 := LexLeanPreservation.RunConv -@2910 := #13 -@2914 := @2909 @2910 @2715 @163 @151 -@2916 := @2830 @149 @2835 -@2917 := Exists.{1} -@2918 := LexLeanPreservation.Rust.ROut -@2919 := @2917 @2918 -@2920 := And -@2921 := LexLeanPreservation.Rust.RealizesFn -@2925 := @2920 (@2921 @2673 @163 @4) -@2926 := LexLeanPreservation.Rust.RCI -@2927 := #15 -@2928 := @2926 @2927 -@2929 := LexLeanPreservation.Rust.fnIdent -@2930 := @2929 @2910 -@2937 := (hne : @2916) -> @2919 (fun (ro : @2918) => @2925 (@2928 @2930 @2758 @4)) -@2952 := {p : @32} -> - {c : @33} -> - {A : @34} -> - {f : @35} -> - {fn : @2528} -> - {args : @147} -> - {env : @2857} -> - {F : @2827} -> - {o : @2829} -> - (hB : @2864) -> - (hfn : @2880) -> (hwt : @2887) -> (hbind : @2899) -> (hF : @2908) -> (hA : @2914) -> @2937 -@2954 := LexLeanPreservation.Rust.compose @0 -@2955 := @2858 @0 -@2960 := (n : @35) -> @2955 @163 @157 @4 @149 -@2961 := @2873 @2530 -@2964 := @2866 (@2961 @149) @2879 -@2968 := @129 @2673 @163 @151 @2886 -@2969 := @2909 @0 -@2972 := @2969 @2715 @163 @151 -@2986 := {c : @33} -> - {A : @34} -> - {f : @35} -> - {fn : @2528} -> - {args : @147} -> - {env : @2857} -> - {F : @2827} -> - {o : @2829} -> - (hB : @2960) -> - (hfn : @2964) -> (hwt : @2968) -> (hbind : @2899) -> (hF : @2908) -> (hA : @2972) -> @2937 -@2987 := @2954 @1 -@2988 := @2955 @1 -@2992 := (n : @35) -> @2988 @157 @4 @149 -@2995 := @137 @163 @151 @2886 -@2996 := @2902 @1 -@2999 := @2901 (@2996 @2673) @2907 -@3000 := @2926 @1 -@3010 := (hbind : @2899) -> - (hF : @2999) -> - (hA : @2972) -> (hne : @2916) -> @2919 (fun (ro : @2918) => @2925 (@3000 @2930 @2758 @4)) -@3020 := {A : @34} -> - {f : @35} -> - {fn : @2528} -> - {args : @147} -> - {env : @2857} -> - {F : @2827} -> {o : @2829} -> (hB : @2992) -> (hfn : @2964) -> (hwt : @2995) -> @3010 -@3021 := @2987 @2 -@3023 := @2988 @2 @4 -@3025 := (n : @35) -> @3023 @149 -@3026 := @143 @151 -@3027 := @3026 @2886 -@3036 := {f : @35} -> - {fn : @2528} -> - {args : @147} -> - {env : @2857} -> - {F : @2827} -> {o : @2829} -> (hB : @3025) -> (hfn : @2964) -> (hwt : @3027) -> @3010 -@3037 := @3021 @9 -@3039 := (n : @35) -> @3023 @9 -@3040 := @2961 @9 -@3041 := @2866 @3040 -@3042 := @3041 @2879 -@3043 := @2996 @9 -@3044 := @2901 @3043 -@3045 := @3044 @2907 -@3046 := @2969 @9 -@3048 := @3046 @163 @151 -@3050 := @3000 (@2929 @9) -@3058 := (hF : @3045) -> - (hA : @3048) -> (hne : @2916) -> @2919 (fun (ro : @2918) => @2925 (@3050 @2758 @4)) -@3067 := {fn : @2528} -> - {args : @147} -> - {env : @2857} -> - {F : @2827} -> - {o : @2829} -> (hB : @3039) -> (hfn : @3042) -> (hwt : @3027) -> (hbind : @2899) -> @3058 -@3068 := @3037 @2546 -@3070 := @3041 (@2878 @2546) -@3071 := @2885 @2546 -@3072 := @3026 @3071 -@3074 := @2890 (@2891 @2546) -@3086 := {args : @147} -> - {env : @2857} -> - {F : @2827} -> - {o : @2829} -> - (hB : @3039) -> - (hfn : @3070) -> (hwt : @3072) -> (hbind : @2889 (@3074 @149 @2513) @2898) -> @3058 -@3087 := @3068 @2494 -@3093 := @2760 (@2717 (@2675 (@2633 (@2593 (@2493 @95))))) -@3095 := @143 @3093 @3071 -@3096 := #12 -@3098 := @96 (@29 @3096) -@3104 := @3098 (@2760 (@2717 (@2675 (@2633 (@2593 @95))))) -@3108 := @2889 (@3074 @3104 @2513) @2898 -@3109 := #14 -@3111 := @96 (@29 @3109) -@3113 := @96 (@29 @2910) -@3119 := @3111 (@3113 (@3098 (@2760 (@2717 (@2675 @95))))) -@3121 := @3046 @3119 @151 -@3124 := @96 (@29 #17) -@3127 := @96 (@29 #16) -@3129 := @96 (@29 @2927) -@3150 := {env : @2857} -> - {F : @2827} -> - {o : @2829} -> - (hB : @3039) -> - (hfn : @3070) -> - (hwt : @3095) -> - (hbind : @3108) -> - (hF : @3045) -> - (hA : @3121) -> - (hne : @2916) -> - @2919 (fun (ro : @2918) => @2925 (@3050 (@3124 (@3127 (@3129 (@3111 (@3113 (@3098 @95)))))) @4)) -@3151 := @3087 @2526 -@3157 := @2717 (@2675 (@2633 (@2593 (@2493 (@2491 @95))))) -@3159 := @143 @3157 @3071 -@3182 := @2889 - (@3074 @3093 @2513) - (@2897 - (@2514 - (@2501 @2459) - (@2514 - (@2503 @2592) - (@2514 - (@2505 @2632) - (@2514 (@2507 @2674) (@2514 (@2509 @2716) (@2514 (@2511 @2759) @2513))))))) -@3188 := @3113 (@3098 (@2760 (@2717 (@2675 (@2633 @95))))) -@3210 := {F : @2827} -> - {o : @2829} -> - (hB : @3039) -> - (hfn : @3070) -> - (hwt : @3159) -> - (hbind : @3182) -> - (hF : @3045) -> - (hA : @3046 @3188 @151) -> - (hne : @2916) -> - @2919 (fun (ro : @2918) => @2925 (@3050 (@3127 (@3129 (@3111 (@3113 (@3098 (@2760 @95)))))) @4)) -@3211 := @3151 @2527 -@3212 := @2779 @3071 -@3235 := @2889 - (@3074 @3157 @2513) - (@2897 - (@2514 - (@2501 @2463) - (@2514 - (@2503 @2459) - (@2514 - (@2505 @2592) - (@2514 (@2507 @2632) (@2514 (@2509 @2674) (@2514 (@2511 @2716) @2513))))))) -@3237 := @3044 (@2906 @2527) -@3239 := @3046 @3104 @151 -@3240 := @2921 @2527 -@3262 := {o : @2829} -> - (hB : @3039) -> - (hfn : @3070) -> - (hwt : @3212) -> - (hbind : @3235) -> - (hF : @3237) -> - (hA : @3239) -> - (hne : @2916) -> - @2919 - (fun (ro : @2918) => - @2920 (@3240 @163 @4) (@3050 (@3129 (@3111 (@3113 (@3098 (@2760 (@2717 @95)))))) @4)) -@3263 := @3211 @2804 -@3264 := @2786 @3071 -@3287 := @2889 - (@3074 @2778 @2513) - (@2897 - (@2514 - (@2501 @2467) - (@2514 - (@2503 @2463) - (@2514 - (@2505 @2459) - (@2514 (@2507 @2592) (@2514 (@2509 @2632) (@2514 (@2511 @2674) @2513))))))) -@3288 := @3046 @3093 -@3294 := @2798 @2758 @2715 @2673 @163 @157 @149 -@3295 := @3288 @3294 -@3301 := @2798 @3096 @2758 @2715 @2673 @163 @157 -@3324 := (hB : @3039) -> - (hfn : @3070) -> - (hwt : @3264) -> - (hbind : @3287) -> - (hF : @3237) -> - (hA : @3295) -> - (hne : @2830 @3301 @2835) -> - @2919 - (fun (ro : @2918) => - @2920 (@3240 (@2798 @3109 @2910 @3096 @2758 @2715 @2673) @4) (@3050 @3119 @4)) -@3325 := @3263 @2550 -@3326 := @2792 @3071 -@3349 := @2889 - (@3074 @2785 @2513) - (@2897 - (@2514 - (@2501 @2471) - (@2514 - (@2503 @2467) - (@2514 - (@2505 @2463) - (@2514 (@2507 @2459) (@2514 (@2509 @2592) (@2514 (@2511 @2632) @2513))))))) -@3350 := @3046 @3157 -@3356 := @2798 @2715 @2673 @163 @157 @149 @151 -@3379 := (hfn : @3070) -> - (hwt : @3326) -> - (hbind : @3349) -> - (hF : @3237) -> - (hA : @3350 @3356) -> - (hne : @2830 @3294 @2835) -> - @2919 - (fun (ro : @2918) => - @2920 (@3240 (@2798 @2910 @3096 @2758 @2715 @2673 @163) @4) (@3050 @3188 @4)) -@3382 := @3325 (@704 @2865 @3040) -@3383 := @2796 @3071 -@3406 := @2889 - (@3074 @2791 @2513) - (@2897 - (@2514 - (@2501 @2475) - (@2514 - (@2503 @2471) - (@2514 - (@2505 @2467) - (@2514 (@2507 @2463) (@2514 (@2509 @2459) (@2514 (@2511 @2592) @2513))))))) -@3407 := @3046 @2778 -@3413 := @2798 @2673 @163 @157 @149 @151 @153 -@3429 := (hwt : @3383) -> - (hbind : @3406) -> - (hF : @3237) -> - (hA : @3407 @3413) -> - (hne : @2830 @3356 @2835) -> @2919 (fun (ro : @2918) => @2920 (@3240 @3301 @4) (@3050 @3104 @4)) -@3430 := @3382 @2795 -@3432 := @3074 @2494 @2513 -@3435 := @2889 @3432 (@2897 @2526) -@3436 := @3046 @2785 -@3442 := @2798 @163 @157 @149 @151 @153 @36 -@3457 := (hbind : @3435) -> - (hF : @3237) -> - (hA : @3436 @3442) -> - (hne : @2830 @3413 @2835) -> @2919 (fun (ro : @2918) => @2920 (@3240 @3294 @4) (@3050 @3093 @4)) -@3460 := @3430 (@704 @2888 @3432) -@3461 := @3046 @2791 -@3467 := @2798 @157 @149 @151 @153 @36 @38 -@3481 := (hF : @3237) -> - (hA : @3461 @3467) -> - (hne : @2830 @3442 @2835) -> @2919 (fun (ro : @2918) => @2920 (@3240 @3356 @4) (@3050 @3157 @4)) -@3484 := @3460 (@704 @2900 @3043) -@3498 := (hA : @3046 @2494 @2804) -> - (hne : @2830 @3467 @2835) -> @2919 (fun (ro : @2918) => @2920 (@3240 @3413 @4) (@3050 @2778 @4)) -@3499 := @3484 @2826 -@3510 := (hne : @2830 @2804 @2835) -> - @2919 (fun (ro : @2918) => @2920 (@3240 @3442 @4) (@3050 @2785 @4)) -@3511 := @3499 @2852 -@3517 := @2920 (@3240 @3467 @4) (@3050 @2791 @4) -@3519 := @2919 (fun (ro : @2918) => @3517) -@3521 := @2919 (fun (__e_ro : @2918) => @3517) -@3530 := LexLeanPreservation.Rust.RepresentableL - (@2491 (@2489 (@2487 (@2485 (@2483 (@96 @42 @95)))))) -@3531 := (__e_hrep : @3530) -> @3521 -@3532 := fun (__e_hrep : @3530) => @3511 -@3533 := (infection : @35) -> @3531 -@3534 := fun (infection : @35) => @3532 -@3535 := (systolic : @35) -> @3533 -@3536 := fun (systolic : @35) => @3534 -@3537 := (whiteCells : @35) -> @3535 -@3538 := fun (whiteCells : @35) => @3536 -@3539 := (respiratoryRate : @35) -> @3537 -@3540 := fun (respiratoryRate : @35) => @3538 -@3541 := (heartRate : @35) -> @3539 -@3542 := fun (heartRate : @35) => @3540 -@3543 := (temperature : @35) -> @3541 -@3544 := fun (temperature : @35) => @3542 -\end{coremodule} -\end{lexlean} diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R2/RustStd.lean b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R2/RustStd.lean deleted file mode 100644 index ebd704e77..000000000 --- a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R2/RustStd.lean +++ /dev/null @@ -1,380 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [{ constructors := [[.nat, .nat, .nat, .nat, .nat, .nat]] }, - { constructors := [[], [], [], [], [], [], [], []] }, - { constructors := [[(.adt 3), (.list (.adt 1)), (.adt 4)]] }, - { constructors := [[(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]] }, - { constructors := [[.nat, .nat, .nat, .nat, .nat, .nat]] }], functions := (( - { parameters := [0, 1, 2, 3, 4, 5], types := [.nat, .nat, .nat, .nat, .nat, .nat], result := .nat, - body := (.«match» .nat (.call 1 [(.build (.adt 0) (.adt 0) [(.var 0), (.var 1), (.var 2), (.var 3), (.var 4), (.var 5)])]) [(.arm .ok [6] (.prim .length [(.second (.var 6))])), (.arm .error [7] (.value .nat (.nat 0)))]) }) ::( - { parameters := [0], types := [(.adt 0)], result := (.result (.pair .nat (.list (.adt 1))) (.pair .bool .bool)), - body := (.«let» 1 (.pair (.adt 2) .bool) (.call 2 [(.var 0)]) (.«match» (.result (.pair .nat (.list (.adt 1))) (.pair .bool .bool)) (.second (.var 1)) [(.arm .true [] (.«match» (.result (.pair .nat (.list (.adt 1))) (.pair .bool .bool)) (.call 3 [(.var 0), (.field (.first (.var 1)) 0)]) [(.arm .ok [2] (.build .ok (.result (.pair .nat (.list (.adt 1))) (.pair .bool .bool)) [(.build .pair (.pair .nat (.list (.adt 1))) [(.var 2), (.field (.first (.var 1)) 1)])])), (.arm .error [3] (.build .error (.result (.pair .nat (.list (.adt 1))) (.pair .bool .bool)) [(.var 3)]))])), (.arm .false [] (.build .error (.result (.pair .nat (.list (.adt 1))) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])]))])) }) ::( - { parameters := [0], types := [(.adt 0)], result := (.pair (.adt 2) .bool), - body := (.call 4 [(.closure 5 []), (.value .nat (.nat 11)), (.call 6 [(.var 0)])]) }) ::( - { parameters := [0, 1], types := [(.adt 0), (.adt 3)], result := (.result .nat (.pair .bool .bool)), - body := (.«match» (.result .nat (.pair .bool .bool)) (.call 7 [(.var 0), (.var 1)]) [(.arm .some [2] (.build .ok (.result .nat (.pair .bool .bool)) [(.var 2)])), (.arm .none [] (.«match» (.result .nat (.pair .bool .bool)) (.call 8 [(.var 1)]) [(.arm .some [3] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])])])), (.arm .none [] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])])]))]))]) }) ::( - { parameters := [0, 1, 2], types := [(.fn [(.adt 2)] (.option (.adt 2))), .nat, (.adt 2)], result := (.pair (.adt 2) .bool), - body := (.«match» (.pair (.adt 2) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.adt 2) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.adt 2) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.adt 2) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 4 [(.var 0), (.var 3), (.var 4)]))]))]) }) ::( - { parameters := [0], types := [(.adt 2)], result := (.option (.adt 2)), - body := (.«match» (.option (.adt 2)) (.call 9 [(.field (.var 0) 0)]) [(.arm .none [] (.build .none (.option (.adt 2)) [])), (.arm .some [1] (.«match» (.option (.adt 2)) (.call 10 [(.field (.var 0) 0), (.var 1)]) [(.arm .none [] (.build .none (.option (.adt 2)) [])), (.arm .some [2] (.build .some (.option (.adt 2)) [(.build (.adt 0) (.adt 2) [(.var 2), (.prim .append [(.field (.var 0) 1), (.build .cons (.list (.adt 1)) [(.var 1), (.build .nil (.list (.adt 1)) [])])]), (.build (.adt 0) (.adt 4) [(.prim .natAdd [(.field (.field (.var 0) 2) 0), (.value .nat (.nat 1))]), (.prim .natAdd [(.field (.field (.var 0) 2) 1), (.call 11 [(.field (.var 0) 0)])]), (.prim .natAdd [(.field (.field (.var 0) 2) 2), (.value .nat (.nat 1))]), (.field (.field (.var 0) 2) 3), (.field (.field (.var 0) 2) 4), (.field (.field (.var 0) 2) 5)])])]))]))]) }) ::( - { parameters := [0], types := [(.adt 0)], result := (.adt 2), - body := (.build (.adt 0) (.adt 2) [(.call 12 [(.var 0)]), (.build .nil (.list (.adt 1)) []), (.build (.adt 0) (.adt 4) [(.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0))])]) }) ::( - { parameters := [0, 1], types := [(.adt 0), (.adt 3)], result := (.option .nat), - body := (.«match» (.option .nat) (.call 8 [(.var 1)]) [(.arm .none [] (.build .none (.option .nat) [])), (.arm .some [2] (.cond (.call 13 [(.var 0), (.var 2)]) (.build .some (.option .nat) [(.var 2)]) (.build .none (.option .nat) [])))]) }) ::( - { parameters := [0], types := [(.adt 3)], result := (.option .nat), - body := (.build .some (.option .nat) [(.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 3)], result := (.option (.adt 1)), - body := (.«match» (.option (.adt 1)) (.«match» (.option (.adt 1)) (.«match» (.option (.adt 1)) (.cond (.call 14 [(.var 0)]) (.build .some (.option (.adt 1)) [(.build (.adt 0) (.adt 1) [])]) (.build .none (.option (.adt 1)) [])) [(.arm .some [1] (.build .some (.option (.adt 1)) [(.var 1)])), (.arm .none [] (.cond (.call 15 [(.var 0)]) (.build .some (.option (.adt 1)) [(.build (.adt 1) (.adt 1) [])]) (.build .none (.option (.adt 1)) [])))]) [(.arm .some [2] (.build .some (.option (.adt 1)) [(.var 2)])), (.arm .none [] (.«match» (.option (.adt 1)) (.cond (.call 16 [(.var 0)]) (.build .some (.option (.adt 1)) [(.build (.adt 2) (.adt 1) [])]) (.build .none (.option (.adt 1)) [])) [(.arm .some [3] (.build .some (.option (.adt 1)) [(.var 3)])), (.arm .none [] (.cond (.call 17 [(.var 0)]) (.build .some (.option (.adt 1)) [(.build (.adt 3) (.adt 1) [])]) (.build .none (.option (.adt 1)) [])))]))]) [(.arm .some [4] (.build .some (.option (.adt 1)) [(.var 4)])), (.arm .none [] (.«match» (.option (.adt 1)) (.«match» (.option (.adt 1)) (.cond (.call 18 [(.var 0)]) (.build .some (.option (.adt 1)) [(.build (.adt 4) (.adt 1) [])]) (.build .none (.option (.adt 1)) [])) [(.arm .some [5] (.build .some (.option (.adt 1)) [(.var 5)])), (.arm .none [] (.cond (.call 19 [(.var 0)]) (.build .some (.option (.adt 1)) [(.build (.adt 5) (.adt 1) [])]) (.build .none (.option (.adt 1)) [])))]) [(.arm .some [6] (.build .some (.option (.adt 1)) [(.var 6)])), (.arm .none [] (.«match» (.option (.adt 1)) (.cond (.call 20 [(.var 0)]) (.build .some (.option (.adt 1)) [(.build (.adt 6) (.adt 1) [])]) (.build .none (.option (.adt 1)) [])) [(.arm .some [7] (.build .some (.option (.adt 1)) [(.var 7)])), (.arm .none [] (.cond (.call 21 [(.var 0)]) (.build .some (.option (.adt 1)) [(.build (.adt 7) (.adt 1) [])]) (.build .none (.option (.adt 1)) [])))]))]))]) }) ::( - { parameters := [0, 1], types := [(.adt 3), (.adt 1)], result := (.option (.adt 3)), - body := (.«match» (.option (.adt 3)) (.var 1) [(.arm (.adt 0) [] (.call 22 [(.var 0)])), (.arm (.adt 1) [] (.call 23 [(.var 0)])), (.arm (.adt 2) [] (.call 24 [(.var 0)])), (.arm (.adt 3) [] (.call 25 [(.var 0)])), (.arm (.adt 4) [] (.call 26 [(.var 0)])), (.arm (.adt 5) [] (.call 27 [(.var 0)])), (.arm (.adt 6) [] (.call 28 [(.var 0)])), (.arm (.adt 7) [] (.call 29 [(.var 0)]))]) }) ::( - { parameters := [0], types := [(.adt 3)], result := .nat, - body := (.second (.«let» 7 (.pair .bool .nat) (.«let» 3 (.pair .bool .nat) (.«let» 1 (.pair .bool .nat) (.build .pair (.pair .bool .nat) [(.call 14 [(.var 0)]), (.value .nat (.nat 1))]) (.cond (.first (.var 1)) (.var 1) (.«let» 2 (.pair .bool .nat) (.build .pair (.pair .bool .nat) [(.call 15 [(.var 0)]), (.value .nat (.nat 1))]) (.build .pair (.pair .bool .nat) [(.first (.var 2)), (.prim .natAdd [(.second (.var 1)), (.second (.var 2))])])))) (.cond (.first (.var 3)) (.var 3) (.«let» 6 (.pair .bool .nat) (.«let» 4 (.pair .bool .nat) (.build .pair (.pair .bool .nat) [(.call 16 [(.var 0)]), (.value .nat (.nat 1))]) (.cond (.first (.var 4)) (.var 4) (.«let» 5 (.pair .bool .nat) (.build .pair (.pair .bool .nat) [(.call 17 [(.var 0)]), (.value .nat (.nat 1))]) (.build .pair (.pair .bool .nat) [(.first (.var 5)), (.prim .natAdd [(.second (.var 4)), (.second (.var 5))])])))) (.build .pair (.pair .bool .nat) [(.first (.var 6)), (.prim .natAdd [(.second (.var 3)), (.second (.var 6))])])))) (.cond (.first (.var 7)) (.var 7) (.«let» 14 (.pair .bool .nat) (.«let» 10 (.pair .bool .nat) (.«let» 8 (.pair .bool .nat) (.build .pair (.pair .bool .nat) [(.call 18 [(.var 0)]), (.value .nat (.nat 1))]) (.cond (.first (.var 8)) (.var 8) (.«let» 9 (.pair .bool .nat) (.build .pair (.pair .bool .nat) [(.call 19 [(.var 0)]), (.value .nat (.nat 1))]) (.build .pair (.pair .bool .nat) [(.first (.var 9)), (.prim .natAdd [(.second (.var 8)), (.second (.var 9))])])))) (.cond (.first (.var 10)) (.var 10) (.«let» 13 (.pair .bool .nat) (.«let» 11 (.pair .bool .nat) (.build .pair (.pair .bool .nat) [(.call 20 [(.var 0)]), (.value .nat (.nat 1))]) (.cond (.first (.var 11)) (.var 11) (.«let» 12 (.pair .bool .nat) (.build .pair (.pair .bool .nat) [(.call 21 [(.var 0)]), (.value .nat (.nat 1))]) (.build .pair (.pair .bool .nat) [(.first (.var 12)), (.prim .natAdd [(.second (.var 11)), (.second (.var 12))])])))) (.build .pair (.pair .bool .nat) [(.first (.var 13)), (.prim .natAdd [(.second (.var 10)), (.second (.var 13))])])))) (.build .pair (.pair .bool .nat) [(.first (.var 14)), (.prim .natAdd [(.second (.var 7)), (.second (.var 14))])]))))) }) ::( - { parameters := [0], types := [(.adt 0)], result := (.adt 3), - body := (.build (.adt 0) (.adt 3) [(.var 0), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0))]) }) ::( - { parameters := [0, 1], types := [(.adt 0), .nat], result := .bool, - body := (.cond (.prim .natLe [(.var 1), (.value .nat (.nat 3))]) (.cond (.prim .natEq [(.var 1), (.value .nat (.nat 3))]) (.build .true .bool []) (.prim .boolNot [(.cond (.call 30 [(.var 0)]) (.cond (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 1))]) (.cond (.call 31 [(.var 0)]) (.call 32 [(.var 0)]) (.build .false .bool [])) (.build .false .bool [])) (.build .false .bool []))])) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 3)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 1), (.value .nat (.nat 0))]) (.call 31 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 3)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 2), (.value .nat (.nat 0))]) (.call 32 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 3)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 3), (.value .nat (.nat 0))]) (.call 33 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 3)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 4), (.value .nat (.nat 0))]) (.call 34 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 3)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 0))]) (.prim .natLe [(.value .nat (.nat 2)), (.prim .natAdd [(.prim .natAdd [(.prim .natAdd [(.field (.var 0) 1), (.field (.var 0) 2)]), (.field (.var 0) 3)]), (.field (.var 0) 4)])]) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 3)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 0))]) (.cond (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 1))]) (.prim .natEq [(.field (.field (.var 0) 0) 5), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 3)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 7), (.value .nat (.nat 0))]) (.cond (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 1))]) (.call 30 [(.field (.var 0) 0)]) (.build .false .bool [])) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 3)], result := .bool, - body := (.cond (.prim .natLt [(.field (.var 0) 8), (.value .nat (.nat 3))]) (.cond (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 0))]) (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .true .bool []) (.cond (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 1))]) (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .true .bool []) (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 2))]) (.prim .natEq [(.field (.var 0) 7), (.value .nat (.nat 1))]) (.build .false .bool [])))) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 3)], result := (.option (.adt 3)), - body := (.cond (.call 14 [(.var 0)]) (.build .some (.option (.adt 3)) [(.call 35 [(.var 0)])]) (.build .none (.option (.adt 3)) [])) }) ::( - { parameters := [0], types := [(.adt 3)], result := (.option (.adt 3)), - body := (.cond (.call 15 [(.var 0)]) (.build .some (.option (.adt 3)) [(.call 36 [(.var 0)])]) (.build .none (.option (.adt 3)) [])) }) ::( - { parameters := [0], types := [(.adt 3)], result := (.option (.adt 3)), - body := (.cond (.call 16 [(.var 0)]) (.build .some (.option (.adt 3)) [(.call 37 [(.var 0)])]) (.build .none (.option (.adt 3)) [])) }) ::( - { parameters := [0], types := [(.adt 3)], result := (.option (.adt 3)), - body := (.cond (.call 17 [(.var 0)]) (.build .some (.option (.adt 3)) [(.call 38 [(.var 0)])]) (.build .none (.option (.adt 3)) [])) }) ::( - { parameters := [0], types := [(.adt 3)], result := (.option (.adt 3)), - body := (.cond (.call 18 [(.var 0)]) (.build .some (.option (.adt 3)) [(.call 39 [(.var 0)])]) (.build .none (.option (.adt 3)) [])) }) ::( - { parameters := [0], types := [(.adt 3)], result := (.option (.adt 3)), - body := (.cond (.call 19 [(.var 0)]) (.build .some (.option (.adt 3)) [(.call 40 [(.var 0)])]) (.build .none (.option (.adt 3)) [])) }) ::( - { parameters := [0], types := [(.adt 3)], result := (.option (.adt 3)), - body := (.cond (.call 20 [(.var 0)]) (.build .some (.option (.adt 3)) [(.call 41 [(.var 0)])]) (.build .none (.option (.adt 3)) [])) }) ::( - { parameters := [0], types := [(.adt 3)], result := (.option (.adt 3)), - body := (.cond (.call 21 [(.var 0)]) (.build .some (.option (.adt 3)) [(.call 42 [(.var 0)])]) (.build .none (.option (.adt 3)) [])) }) ::( - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.prim .natLt [(.field (.var 0) 4), (.value .nat (.nat 90))]) }) ::( - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.prim .natLt [(.value .nat (.nat 380)), (.field (.var 0) 0)]) }) ::( - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.prim .natLt [(.value .nat (.nat 90)), (.field (.var 0) 1)]) }) ::( - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.prim .natLt [(.value .nat (.nat 20)), (.field (.var 0) 2)]) }) ::( - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.prim .natLt [(.value .nat (.nat 12)), (.field (.var 0) 3)]) }) ::( - { parameters := [0], types := [(.adt 3)], result := (.adt 3), - body := (.build (.adt 0) (.adt 3) [(.field (.var 0) 0), (.value .nat (.nat 1)), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 3)], result := (.adt 3), - body := (.build (.adt 0) (.adt 3) [(.field (.var 0) 0), (.field (.var 0) 1), (.value .nat (.nat 1)), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 3)], result := (.adt 3), - body := (.build (.adt 0) (.adt 3) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.value .nat (.nat 1)), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 3)], result := (.adt 3), - body := (.build (.adt 0) (.adt 3) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.value .nat (.nat 1)), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 3)], result := (.adt 3), - body := (.build (.adt 0) (.adt 3) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.value .nat (.nat 1)), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 3)], result := (.adt 3), - body := (.build (.adt 0) (.adt 3) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.value .nat (.nat 1)), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 3)], result := (.adt 3), - body := (.build (.adt 0) (.adt 3) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.value .nat (.nat 1)), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 3)], result := (.adt 3), - body := (.build (.adt 0) (.adt 3) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.prim .natAdd [(.field (.var 0) 8), (.value .nat (.nat 1))])]) }) ::[]) } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := ((.enum (.adt 0) [{ number := 0, fields := [.nat, .nat, .nat, .nat, .nat, .nat] }]) :: - (.enum (.adt 1) [{ number := 0, fields := [] }, { number := 1, fields := [] }, { number := 2, fields := [] }, { number := 3, fields := [] }, { number := 4, fields := [] }, { number := 5, fields := [] }, { number := 6, fields := [] }, { number := 7, fields := [] }]) :: - (.enum (.adt 2) [{ number := 0, fields := [(.adt 3), (.list (.adt 1)), (.adt 4)] }]) :: - (.enum (.adt 3) [{ number := 0, fields := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat] }]) :: - (.enum (.adt 4) [{ number := 0, fields := [.nat, .nat, .nat, .nat, .nat, .nat] }]) :: - (.enum (.fn 0) [{ number := 5, fields := [] }]) :: - (.apply 0 [(.adt 2)] (.option (.adt 2)) true [{ function := 5, captures := [], functionFallible := true }]) :: - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := .nat }, { pattern := (.bind (.generated .binding 3)), type := .nat }, { pattern := (.bind (.generated .binding 4)), type := .nat }, { pattern := (.bind (.generated .binding 5)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 1)) none (.call (.function 1) [(.construct (.adt 0 0) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1)), (.copy (.generated .binding 2)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4)), (.copy (.generated .binding 5))])] true))] (.matchOn (.move (.generated .holder 1)) [(.mk (.ok (.bind (.generated .binding 6))) (.mk [(.mk (.bind (.generated .operand 3)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 2))]) none (.move (.generated .binding 6)))] (.move (.generated .part 2)))))] (.succeed (.call (.runtime .lengthList) [(.move (.generated .operand 3))] false)))), (.mk (.err .wild) (.mk [] (.succeed (.lit (.nat 0)))))]))) :: - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible (.result (.pair .nat (.list (.adt 1))) (.pair .bool .bool))) (.mk [(.mk (.bind (.generated .binding 1)) (some (.pair (.adt 2) .bool)) (.call (.function 2) [(.clone (.generated .binding 0))] true)), (.mk (.bind (.generated .holder 5)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 4))]) none (.clone (.generated .binding 1)))] (.move (.generated .part 4)))))] (.cond (.move (.generated .holder 5)) (.mk [(.mk (.bind (.generated .holder 9)) none (.call (.function 3) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .holder 8)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 7)), .wild]) none (.clone (.generated .binding 1)))] (.move (.generated .part 7)))))] (.matchOn (.move (.generated .holder 8)) [(.mk (.adt 2 0 [(.bind (.generated .part 6)), .wild, .wild]) (.mk [] (.move (.generated .part 6))))])))] false))] (.matchOn (.move (.generated .holder 9)) [(.mk (.ok (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct (.ok (.pair .nat (.list (.adt 1))) (.pair .bool .bool)) [(.pair (.copy (.generated .binding 2)) (.block (.mk [(.mk (.bind (.generated .holder 12)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 11)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 11)))))] (.matchOn (.move (.generated .holder 12)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 10)), .wild]) (.mk [] (.move (.generated .part 10))))]))))])))), (.mk (.err (.bind (.generated .binding 3))) (.mk [] (.succeed (.construct (.err (.pair .nat (.list (.adt 1))) (.pair .bool .bool)) [(.copy (.generated .binding 3))]))))])) (.mk [] (.succeed (.construct (.err (.pair .nat (.list (.adt 1))) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))])))))) :: - (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible (.pair (.adt 2) .bool)) (.mk [] (.call (.function 4) [(.construct (.closure 0 5) []), (.lit (.nat 11)), (.call (.function 6) [(.move (.generated .binding 0))] false)] false))) :: - (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 3) }] (.result .nat (.pair .bool .bool)) (.mk [(.mk (.bind (.generated .holder 13)) none (.call (.function 7) [(.move (.generated .binding 0)), (.clone (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 14)) none (.call (.function 8) [(.move (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 14)) [(.mk .none (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))]))), (.mk (.some .wild) (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))])))]))) :: - (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := (.adt 2) }] (.fallible (.pair (.adt 2) .bool)) (.mk [(.mk (.bind (.generated .holder 15)) none (.copy (.generated .binding 1)))] (.cond (.isZero (.generated .holder 15)) (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 15))), (.mk (.bind (.generated .holder 17)) none (.block (.mk [(.mk (.bind (.generated .callee 16)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 16) [(.clone (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 17)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))]))))) :: - (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 2) }] (.fallible (.option (.adt 2))) (.mk [(.mk (.bind (.generated .holder 19)) none (.call (.function 9) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [(.bind (.generated .part 18)), .wild, .wild]) (.mk [] (.move (.generated .part 18))))])] true))] (.matchOn (.move (.generated .holder 19)) [(.mk .none (.mk [] (.succeed (.construct (.none (.adt 2)) [])))), (.mk (.some (.bind (.generated .binding 1))) (.mk [(.mk (.bind (.generated .holder 21)) none (.call (.function 10) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [(.bind (.generated .part 20)), .wild, .wild]) (.mk [] (.move (.generated .part 20))))]), (.clone (.generated .binding 1))] true))] (.matchOn (.move (.generated .holder 21)) [(.mk .none (.mk [] (.succeed (.construct (.none (.adt 2)) [])))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct .some [(.construct (.adt 2 0) [(.move (.generated .binding 2)), (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 22)), .wild]) (.mk [] (.move (.generated .part 22))))])), (.mk (.bind (.generated .operand 24)) none (.construct .cons [(.move (.generated .binding 1)), (.construct (.nil (.adt 1)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))), (.construct (.adt 4 0) [(.block (.mk [(.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .holder 27)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 26))]) (.mk [] (.move (.generated .part 26))))]))] (.matchOn (.move (.generated .holder 27)) [(.mk (.adt 4 0 [(.bind (.generated .part 25)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 25))))])))), (.mk (.bind (.generated .operand 29)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 28)), (.move (.generated .operand 29))] true))), (.block (.mk [(.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.bind (.generated .holder 32)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 31))]) (.mk [] (.move (.generated .part 31))))]))] (.matchOn (.move (.generated .holder 32)) [(.mk (.adt 4 0 [.wild, (.bind (.generated .part 30)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 30))))])))), (.mk (.bind (.generated .operand 35)) none (.call (.function 11) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [(.bind (.generated .part 33)), .wild, .wild]) (.mk [] (.move (.generated .part 33))))])] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 34)), (.move (.generated .operand 35))] true))), (.block (.mk [(.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.bind (.generated .holder 38)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 37))]) (.mk [] (.move (.generated .part 37))))]))] (.matchOn (.move (.generated .holder 38)) [(.mk (.adt 4 0 [.wild, .wild, (.bind (.generated .part 36)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 36))))])))), (.mk (.bind (.generated .operand 40)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] true))), (.block (.mk [(.mk (.bind (.generated .holder 43)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 42))]) (.mk [] (.move (.generated .part 42))))]))] (.matchOn (.move (.generated .holder 43)) [(.mk (.adt 4 0 [.wild, .wild, .wild, (.bind (.generated .part 41)), .wild, .wild]) (.mk [] (.move (.generated .part 41))))]))), (.block (.mk [(.mk (.bind (.generated .holder 46)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 45))]) (.mk [] (.move (.generated .part 45))))]))] (.matchOn (.move (.generated .holder 46)) [(.mk (.adt 4 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 44)), .wild]) (.mk [] (.move (.generated .part 44))))]))), (.block (.mk [(.mk (.bind (.generated .holder 49)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 48))]) (.mk [] (.move (.generated .part 48))))]))] (.matchOn (.move (.generated .holder 49)) [(.mk (.adt 4 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 47))]) (.mk [] (.move (.generated .part 47))))])))])])]))))])))]))) :: - (.function (.generated .function 6) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.adt 2) (.mk [] (.construct (.adt 2 0) [(.call (.function 12) [(.move (.generated .binding 0))] false), (.construct (.nil (.adt 1)) []), (.construct (.adt 4 0) [(.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0))])]))) :: - (.function (.generated .function 7) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 3) }] (.option .nat) (.mk [(.mk (.bind (.generated .holder 50)) none (.call (.function 8) [(.move (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 50)) [(.mk .none (.mk [] (.construct (.none .nat) []))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.cond (.call (.function 13) [(.move (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.mk [] (.construct .some [(.copy (.generated .binding 2))])) (.mk [] (.construct (.none .nat) [])))))]))) :: - (.function (.generated .function 8) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] (.option .nat) (.mk [] (.construct .some [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 51))]) (.mk [] (.move (.generated .part 51))))])]))) :: - (.function (.generated .function 9) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] (.fallible (.option (.adt 1))) (.mk [(.mk (.bind (.generated .holder 55)) none (.block (.mk [(.mk (.bind (.generated .holder 53)) none (.block (.mk [(.mk (.bind (.generated .holder 52)) none (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 0) [])])) (.mk [] (.construct (.none (.adt 1)) []))))] (.matchOn (.move (.generated .holder 52)) [(.mk .none (.mk [] (.cond (.call (.function 15) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 1) [])])) (.mk [] (.construct (.none (.adt 1)) []))))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.construct .some [(.move (.generated .binding 1))])))]))))] (.matchOn (.move (.generated .holder 53)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 54)) none (.cond (.call (.function 16) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 2) [])])) (.mk [] (.construct (.none (.adt 1)) []))))] (.matchOn (.move (.generated .holder 54)) [(.mk .none (.mk [] (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 3) [])])) (.mk [] (.construct (.none (.adt 1)) []))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.construct .some [(.move (.generated .binding 3))])))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.construct .some [(.move (.generated .binding 2))])))]))))] (.matchOn (.move (.generated .holder 55)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 57)) none (.block (.mk [(.mk (.bind (.generated .holder 56)) none (.cond (.call (.function 18) [(.clone (.generated .binding 0))] true) (.mk [] (.construct .some [(.construct (.adt 1 4) [])])) (.mk [] (.construct (.none (.adt 1)) []))))] (.matchOn (.move (.generated .holder 56)) [(.mk .none (.mk [] (.cond (.call (.function 19) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 5) [])])) (.mk [] (.construct (.none (.adt 1)) []))))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.construct .some [(.move (.generated .binding 5))])))]))))] (.matchOn (.move (.generated .holder 57)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 58)) none (.cond (.call (.function 20) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 6) [])])) (.mk [] (.construct (.none (.adt 1)) []))))] (.matchOn (.move (.generated .holder 58)) [(.mk .none (.mk [] (.cond (.call (.function 21) [(.move (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.construct (.adt 1 7) [])]))) (.mk [] (.succeed (.construct (.none (.adt 1)) [])))))), (.mk (.some (.bind (.generated .binding 7))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 7))]))))]))), (.mk (.some (.bind (.generated .binding 6))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 6))]))))]))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 4))]))))]))) :: - (.function (.generated .function 10) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 1) }] (.fallible (.option (.adt 3))) (.mk [(.mk (.bind (.generated .holder 59)) none (.move (.generated .binding 1)))] (.matchOn (.move (.generated .holder 59)) [(.mk (.adt 1 0 []) (.mk [] (.succeed (.call (.function 22) [(.move (.generated .binding 0))] false)))), (.mk (.adt 1 1 []) (.mk [] (.succeed (.call (.function 23) [(.move (.generated .binding 0))] false)))), (.mk (.adt 1 2 []) (.mk [] (.succeed (.call (.function 24) [(.move (.generated .binding 0))] false)))), (.mk (.adt 1 3 []) (.mk [] (.succeed (.call (.function 25) [(.move (.generated .binding 0))] false)))), (.mk (.adt 1 4 []) (.mk [] (.call (.function 26) [(.move (.generated .binding 0))] false))), (.mk (.adt 1 5 []) (.mk [] (.succeed (.call (.function 27) [(.move (.generated .binding 0))] false)))), (.mk (.adt 1 6 []) (.mk [] (.succeed (.call (.function 28) [(.move (.generated .binding 0))] false)))), (.mk (.adt 1 7 []) (.mk [] (.call (.function 29) [(.move (.generated .binding 0))] false)))]))) :: - (.function (.generated .function 11) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] (.fallible .nat) (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 60))]) none (.block (.mk [(.mk (.bind (.generated .binding 7)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 3)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 1)) (some (.pair .bool .nat)) (.pair (.call (.function 14) [(.clone (.generated .binding 0))] false) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 61)), .wild]) none (.copy (.generated .binding 1)))] (.cond (.move (.generated .part 61)) (.mk [] (.copy (.generated .binding 1))) (.mk [(.mk (.bind (.generated .binding 2)) (some (.pair .bool .nat)) (.pair (.call (.function 15) [(.clone (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 62)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 62)))) (.block (.mk [(.mk (.bind (.generated .operand 65)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 63))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 63))))), (.mk (.bind (.generated .operand 66)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 64))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 64)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 65)), (.move (.generated .operand 66))] true))))))))), (.mk (.tuple [(.bind (.generated .part 67)), .wild]) none (.copy (.generated .binding 3)))] (.cond (.move (.generated .part 67)) (.mk [] (.copy (.generated .binding 3))) (.mk [(.mk (.bind (.generated .binding 6)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 4)) (some (.pair .bool .nat)) (.pair (.call (.function 16) [(.clone (.generated .binding 0))] false) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 68)), .wild]) none (.copy (.generated .binding 4)))] (.cond (.move (.generated .part 68)) (.mk [] (.copy (.generated .binding 4))) (.mk [(.mk (.bind (.generated .binding 5)) (some (.pair .bool .nat)) (.pair (.call (.function 17) [(.clone (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 69)), .wild]) none (.copy (.generated .binding 5)))] (.move (.generated .part 69)))) (.block (.mk [(.mk (.bind (.generated .operand 72)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 70))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 70))))), (.mk (.bind (.generated .operand 73)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 71))]) none (.copy (.generated .binding 5)))] (.move (.generated .part 71)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 72)), (.move (.generated .operand 73))] true)))))))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 74)), .wild]) none (.copy (.generated .binding 6)))] (.move (.generated .part 74)))) (.block (.mk [(.mk (.bind (.generated .operand 77)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 75))]) none (.copy (.generated .binding 3)))] (.move (.generated .part 75))))), (.mk (.bind (.generated .operand 78)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 76))]) none (.copy (.generated .binding 6)))] (.move (.generated .part 76)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 77)), (.move (.generated .operand 78))] true))))))))), (.mk (.tuple [(.bind (.generated .part 79)), .wild]) none (.copy (.generated .binding 7)))] (.cond (.move (.generated .part 79)) (.mk [] (.copy (.generated .binding 7))) (.mk [(.mk (.bind (.generated .binding 14)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 10)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 8)) (some (.pair .bool .nat)) (.pair (.call (.function 18) [(.clone (.generated .binding 0))] true) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 80)), .wild]) none (.copy (.generated .binding 8)))] (.cond (.move (.generated .part 80)) (.mk [] (.copy (.generated .binding 8))) (.mk [(.mk (.bind (.generated .binding 9)) (some (.pair .bool .nat)) (.pair (.call (.function 19) [(.clone (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 81)), .wild]) none (.copy (.generated .binding 9)))] (.move (.generated .part 81)))) (.block (.mk [(.mk (.bind (.generated .operand 84)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 82))]) none (.copy (.generated .binding 8)))] (.move (.generated .part 82))))), (.mk (.bind (.generated .operand 85)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 83))]) none (.copy (.generated .binding 9)))] (.move (.generated .part 83)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 84)), (.move (.generated .operand 85))] true))))))))), (.mk (.tuple [(.bind (.generated .part 86)), .wild]) none (.copy (.generated .binding 10)))] (.cond (.move (.generated .part 86)) (.mk [] (.copy (.generated .binding 10))) (.mk [(.mk (.bind (.generated .binding 13)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 11)) (some (.pair .bool .nat)) (.pair (.call (.function 20) [(.clone (.generated .binding 0))] false) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 87)), .wild]) none (.copy (.generated .binding 11)))] (.cond (.move (.generated .part 87)) (.mk [] (.copy (.generated .binding 11))) (.mk [(.mk (.bind (.generated .binding 12)) (some (.pair .bool .nat)) (.pair (.call (.function 21) [(.move (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 88)), .wild]) none (.copy (.generated .binding 12)))] (.move (.generated .part 88)))) (.block (.mk [(.mk (.bind (.generated .operand 91)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 89))]) none (.copy (.generated .binding 11)))] (.move (.generated .part 89))))), (.mk (.bind (.generated .operand 92)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 90))]) none (.copy (.generated .binding 12)))] (.move (.generated .part 90)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] true)))))))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 93)), .wild]) none (.copy (.generated .binding 13)))] (.move (.generated .part 93)))) (.block (.mk [(.mk (.bind (.generated .operand 96)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 94))]) none (.copy (.generated .binding 10)))] (.move (.generated .part 94))))), (.mk (.bind (.generated .operand 97)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 95))]) none (.copy (.generated .binding 13)))] (.move (.generated .part 95)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 96)), (.move (.generated .operand 97))] true)))))))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 98)), .wild]) none (.copy (.generated .binding 14)))] (.move (.generated .part 98)))) (.block (.mk [(.mk (.bind (.generated .operand 101)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 99))]) none (.copy (.generated .binding 7)))] (.move (.generated .part 99))))), (.mk (.bind (.generated .operand 102)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 100))]) none (.copy (.generated .binding 14)))] (.move (.generated .part 100)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 101)), (.move (.generated .operand 102))] true)))))))))] (.succeed (.move (.generated .part 60))))) :: - (.function (.generated .function 12) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.adt 3) (.mk [] (.construct (.adt 3 0) [(.move (.generated .binding 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0))]))) :: - (.function (.generated .function 13) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .operand 103)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 104)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natLe) [(.move (.generated .operand 103)), (.move (.generated .operand 104))] false) (.mk [(.mk (.bind (.generated .operand 105)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 106)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 105)), (.move (.generated .operand 106))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 110)) none (.cond (.call (.function 30) [(.clone (.generated .binding 0))] false) (.mk [(.mk (.bind (.generated .operand 108)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 107))]) (.mk [] (.move (.generated .part 107))))])), (.mk (.bind (.generated .operand 109)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 108)), (.move (.generated .operand 109))] false) (.mk [] (.cond (.call (.function 31) [(.clone (.generated .binding 0))] false) (.mk [] (.call (.function 32) [(.move (.generated .binding 0))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))))] (.call (.runtime .boolNot) [(.move (.generated .operand 110))] false)))) (.mk [] (.lit (.bool false)))))) :: - (.function (.generated .function 14) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] .bool (.mk [(.mk (.bind (.generated .operand 112)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 111)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 111))))])), (.mk (.bind (.generated .operand 113)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 112)), (.move (.generated .operand 113))] false) (.mk [] (.call (.function 31) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 114)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 114))))])] false)) (.mk [] (.lit (.bool false)))))) :: - (.function (.generated .function 15) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] .bool (.mk [(.mk (.bind (.generated .operand 116)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 115)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 115))))])), (.mk (.bind (.generated .operand 117)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 116)), (.move (.generated .operand 117))] false) (.mk [] (.call (.function 32) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 118)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 118))))])] false)) (.mk [] (.lit (.bool false)))))) :: - (.function (.generated .function 16) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] .bool (.mk [(.mk (.bind (.generated .operand 120)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 119)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 119))))])), (.mk (.bind (.generated .operand 121)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 120)), (.move (.generated .operand 121))] false) (.mk [] (.call (.function 33) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 122)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 122))))])] false)) (.mk [] (.lit (.bool false)))))) :: - (.function (.generated .function 17) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] .bool (.mk [(.mk (.bind (.generated .operand 124)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 123)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 123))))])), (.mk (.bind (.generated .operand 125)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 124)), (.move (.generated .operand 125))] false) (.mk [] (.call (.function 34) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 126)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 126))))])] false)) (.mk [] (.lit (.bool false)))))) :: - (.function (.generated .function 18) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] (.fallible .bool) (.mk [(.mk (.bind (.generated .operand 128)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 127)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 127))))])), (.mk (.bind (.generated .operand 129)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 128)), (.move (.generated .operand 129))] false) (.mk [(.mk (.bind (.generated .operand 140)) none (.lit (.nat 2))), (.mk (.bind (.generated .operand 141)) none (.block (.mk [(.mk (.bind (.generated .operand 138)) none (.block (.mk [(.mk (.bind (.generated .operand 135)) none (.block (.mk [(.mk (.bind (.generated .operand 132)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 130)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 130))))])), (.mk (.bind (.generated .operand 133)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 131)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 131))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 132)), (.move (.generated .operand 133))] true)))), (.mk (.bind (.generated .operand 136)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 134)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 134))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 135)), (.move (.generated .operand 136))] true)))), (.mk (.bind (.generated .operand 139)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 137)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 137))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 138)), (.move (.generated .operand 139))] true))))] (.succeed (.call (.runtime .natLe) [(.move (.generated .operand 140)), (.move (.generated .operand 141))] false))) (.mk [] (.succeed (.lit (.bool false))))))) :: - (.function (.generated .function 19) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] .bool (.mk [(.mk (.bind (.generated .operand 143)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 142)), .wild, .wild]) (.mk [] (.move (.generated .part 142))))])), (.mk (.bind (.generated .operand 144)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 143)), (.move (.generated .operand 144))] false) (.mk [(.mk (.bind (.generated .operand 146)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 145)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 145))))])), (.mk (.bind (.generated .operand 147)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 146)), (.move (.generated .operand 147))] false) (.mk [(.mk (.bind (.generated .operand 151)) none (.block (.mk [(.mk (.bind (.generated .holder 150)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 149)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 149))))]))] (.matchOn (.move (.generated .holder 150)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 148))]) (.mk [] (.move (.generated .part 148))))])))), (.mk (.bind (.generated .operand 152)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 151)), (.move (.generated .operand 152))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))))) :: - (.function (.generated .function 20) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] .bool (.mk [(.mk (.bind (.generated .operand 154)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 153)), .wild]) (.mk [] (.move (.generated .part 153))))])), (.mk (.bind (.generated .operand 155)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 154)), (.move (.generated .operand 155))] false) (.mk [(.mk (.bind (.generated .operand 157)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 156)), .wild, .wild]) (.mk [] (.move (.generated .part 156))))])), (.mk (.bind (.generated .operand 158)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 157)), (.move (.generated .operand 158))] false) (.mk [] (.call (.function 30) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 159)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 159))))])] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))))) :: - (.function (.generated .function 21) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] .bool (.mk [(.mk (.bind (.generated .operand 161)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 160))]) (.mk [] (.move (.generated .part 160))))])), (.mk (.bind (.generated .operand 162)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 161)), (.move (.generated .operand 162))] false) (.mk [(.mk (.bind (.generated .operand 164)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 163))]) (.mk [] (.move (.generated .part 163))))])), (.mk (.bind (.generated .operand 165)) none (.lit (.nat 0)))] (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 164)), (.move (.generated .operand 165))] false) (.mk [(.mk (.bind (.generated .operand 167)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 166)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 166))))])), (.mk (.bind (.generated .operand 168)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 167)), (.move (.generated .operand 168))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 170)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 169))]) (.mk [] (.move (.generated .part 169))))])), (.mk (.bind (.generated .operand 171)) none (.lit (.nat 1)))] (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 170)), (.move (.generated .operand 171))] false) (.mk [(.mk (.bind (.generated .operand 173)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 172)), .wild, .wild]) (.mk [] (.move (.generated .part 172))))])), (.mk (.bind (.generated .operand 174)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 173)), (.move (.generated .operand 174))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 176)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 175))]) (.mk [] (.move (.generated .part 175))))])), (.mk (.bind (.generated .operand 177)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 176)), (.move (.generated .operand 177))] false) (.mk [(.mk (.bind (.generated .operand 179)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 178)), .wild]) (.mk [] (.move (.generated .part 178))))])), (.mk (.bind (.generated .operand 180)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 179)), (.move (.generated .operand 180))] false)) (.mk [] (.lit (.bool false))))))))) (.mk [] (.lit (.bool false)))))) :: - (.function (.generated .function 22) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] (.option (.adt 3)) (.mk [] (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 35) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 3)) []))))) :: - (.function (.generated .function 23) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] (.option (.adt 3)) (.mk [] (.cond (.call (.function 15) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 36) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 3)) []))))) :: - (.function (.generated .function 24) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] (.option (.adt 3)) (.mk [] (.cond (.call (.function 16) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 37) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 3)) []))))) :: - (.function (.generated .function 25) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] (.option (.adt 3)) (.mk [] (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 38) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 3)) []))))) :: - (.function (.generated .function 26) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] (.fallible (.option (.adt 3))) (.mk [] (.cond (.call (.function 18) [(.clone (.generated .binding 0))] true) (.mk [] (.succeed (.construct .some [(.call (.function 39) [(.move (.generated .binding 0))] false)]))) (.mk [] (.succeed (.construct (.none (.adt 3)) [])))))) :: - (.function (.generated .function 27) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] (.option (.adt 3)) (.mk [] (.cond (.call (.function 19) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 40) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 3)) []))))) :: - (.function (.generated .function 28) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] (.option (.adt 3)) (.mk [] (.cond (.call (.function 20) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 41) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 3)) []))))) :: - (.function (.generated .function 29) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] (.fallible (.option (.adt 3))) (.mk [] (.cond (.call (.function 21) [(.clone (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.call (.function 42) [(.move (.generated .binding 0))] true)]))) (.mk [] (.succeed (.construct (.none (.adt 3)) [])))))) :: - (.function (.generated .function 30) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .operand 182)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 181)), .wild]) (.mk [] (.move (.generated .part 181))))])), (.mk (.bind (.generated .operand 183)) none (.lit (.nat 90)))] (.call (.runtime .natLt) [(.move (.generated .operand 182)), (.move (.generated .operand 183))] false))) :: - (.function (.generated .function 31) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .operand 185)) none (.lit (.nat 380))), (.mk (.bind (.generated .operand 186)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [(.bind (.generated .part 184)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 184))))]))] (.call (.runtime .natLt) [(.move (.generated .operand 185)), (.move (.generated .operand 186))] false))) :: - (.function (.generated .function 32) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .operand 188)) none (.lit (.nat 90))), (.mk (.bind (.generated .operand 189)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 187)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 187))))]))] (.call (.runtime .natLt) [(.move (.generated .operand 188)), (.move (.generated .operand 189))] false))) :: - (.function (.generated .function 33) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .operand 191)) none (.lit (.nat 20))), (.mk (.bind (.generated .operand 192)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 190)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 190))))]))] (.call (.runtime .natLt) [(.move (.generated .operand 191)), (.move (.generated .operand 192))] false))) :: - (.function (.generated .function 34) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .operand 194)) none (.lit (.nat 12))), (.mk (.bind (.generated .operand 195)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, (.bind (.generated .part 193)), .wild, .wild]) (.mk [] (.move (.generated .part 193))))]))] (.call (.runtime .natLt) [(.move (.generated .operand 194)), (.move (.generated .operand 195))] false))) :: - (.function (.generated .function 35) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] (.adt 3) (.mk [] (.construct (.adt 3 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 196)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 196))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 197)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 197))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 198)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 198))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 199)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 199))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 200)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 200))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 201)), .wild, .wild]) (.mk [] (.move (.generated .part 201))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 202)), .wild]) (.mk [] (.move (.generated .part 202))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 203))]) (.mk [] (.move (.generated .part 203))))])]))) :: - (.function (.generated .function 36) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] (.adt 3) (.mk [] (.construct (.adt 3 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 204)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 204))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 205)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 205))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 206)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 206))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 207)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 207))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 208)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 208))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 209)), .wild, .wild]) (.mk [] (.move (.generated .part 209))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 210)), .wild]) (.mk [] (.move (.generated .part 210))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 211))]) (.mk [] (.move (.generated .part 211))))])]))) :: - (.function (.generated .function 37) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] (.adt 3) (.mk [] (.construct (.adt 3 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 212)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 212))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 213)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 213))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 214)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 214))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 215)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 215))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 216)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 216))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 217)), .wild, .wild]) (.mk [] (.move (.generated .part 217))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 218)), .wild]) (.mk [] (.move (.generated .part 218))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 219))]) (.mk [] (.move (.generated .part 219))))])]))) :: - (.function (.generated .function 38) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] (.adt 3) (.mk [] (.construct (.adt 3 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 220)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 220))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 221)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 221))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 222)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 222))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 223)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 223))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 224)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 224))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 225)), .wild, .wild]) (.mk [] (.move (.generated .part 225))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 226)), .wild]) (.mk [] (.move (.generated .part 226))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 227))]) (.mk [] (.move (.generated .part 227))))])]))) :: - (.function (.generated .function 39) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] (.adt 3) (.mk [] (.construct (.adt 3 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 228)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 228))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 229)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 229))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 230)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 230))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 231)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 231))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 232)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 232))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 233)), .wild, .wild]) (.mk [] (.move (.generated .part 233))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 234)), .wild]) (.mk [] (.move (.generated .part 234))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 235))]) (.mk [] (.move (.generated .part 235))))])]))) :: - (.function (.generated .function 40) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] (.adt 3) (.mk [] (.construct (.adt 3 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 236)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 236))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 237)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 237))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 238)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 238))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 239)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 239))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 240)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 240))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 241)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 241))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 242)), .wild]) (.mk [] (.move (.generated .part 242))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 243))]) (.mk [] (.move (.generated .part 243))))])]))) :: - (.function (.generated .function 41) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] (.adt 3) (.mk [] (.construct (.adt 3 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 244)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 244))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 245)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 245))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 246)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 246))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 247)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 247))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 248)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 248))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 249)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 249))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 250)), .wild, .wild]) (.mk [] (.move (.generated .part 250))))]), (.lit (.nat 1)), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 251))]) (.mk [] (.move (.generated .part 251))))])]))) :: - (.function (.generated .function 42) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 3) }] (.fallible (.adt 3)) (.mk [] (.succeed (.construct (.adt 3 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 252)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 252))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 253)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 253))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 254)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 254))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 255)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 255))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 256)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 256))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 257)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 257))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 258)), .wild, .wild]) (.mk [] (.move (.generated .part 258))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 259)), .wild]) (.mk [] (.move (.generated .part 259))))]), (.block (.mk [(.mk (.bind (.generated .operand 261)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 260))]) (.mk [] (.move (.generated .part 260))))])), (.mk (.bind (.generated .operand 262)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 261)), (.move (.generated .operand 262))] true)))])))) :: - []) } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [(([(.adt 2)], (.option (.adt 2))), true)] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.call (.function 1) [(.construct (.adt 0 0) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1)), (.copy (.generated .binding 2)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4)), (.copy (.generated .binding 5))])] true))], (.matchOn (.move (.generated .holder 1)) [(.mk (.ok (.bind (.generated .binding 6))) (.mk [(.mk (.bind (.generated .operand 3)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 2))]) none (.move (.generated .binding 6)))] (.move (.generated .part 2)))))] (.succeed (.call (.runtime .lengthList) [(.move (.generated .operand 3))] false)))), (.mk (.err .wild) (.mk [] (.succeed (.lit (.nat 0)))))]), [(5, .nat, (some 5)), (4, .nat, (some 4)), (3, .nat, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.matchArms (st := (.result (.pair .nat (.list (.adt 1))) (.pair .bool .bool))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))))))) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(6, (.pair .nat (.list (.adt 1))), (some 6)), (5, .nat, (some 5)), (4, .nat, (some 4)), (3, .nat, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, .nat, (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .operand 3)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 2))]) none (.move (.generated .binding 6)))] (.move (.generated .part 2)))))]) (tail := (.succeed (.call (.runtime .lengthList) [(.move (.generated .operand 3))] false))) (Corr.mCons (Γ' := [(7, (.pair .bool .bool), none), (5, .nat, (some 5)), (4, .nat, (some 4)), (3, .nat, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, .nat, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.lit (.nat 0)))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl)))) rfl rfl rfl (Corr.fOfB (Corr.prim (ts := [(.list (.adt 1))]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 2))]) none (.move (.generated .binding 6)))]) (tail := (.move (.generated .part 2))) (Corr.second (ta := .nat) (tb := (.list (.adt 1))) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl))) rfl rfl rfl)⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some (.pair (.adt 2) .bool)) (.call (.function 2) [(.clone (.generated .binding 0))] true)), (.mk (.bind (.generated .holder 5)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 4))]) none (.clone (.generated .binding 1)))] (.move (.generated .part 4)))))], (.cond (.move (.generated .holder 5)) (.mk [(.mk (.bind (.generated .holder 9)) none (.call (.function 3) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .holder 8)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 7)), .wild]) none (.clone (.generated .binding 1)))] (.move (.generated .part 7)))))] (.matchOn (.move (.generated .holder 8)) [(.mk (.adt 2 0 [(.bind (.generated .part 6)), .wild, .wild]) (.mk [] (.move (.generated .part 6))))])))] false))] (.matchOn (.move (.generated .holder 9)) [(.mk (.ok (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct (.ok (.pair .nat (.list (.adt 1))) (.pair .bool .bool)) [(.pair (.copy (.generated .binding 2)) (.block (.mk [(.mk (.bind (.generated .holder 12)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 11)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 11)))))] (.matchOn (.move (.generated .holder 12)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 10)), .wild]) (.mk [] (.move (.generated .part 10))))]))))])))), (.mk (.err (.bind (.generated .binding 3))) (.mk [] (.succeed (.construct (.err (.pair .nat (.list (.adt 1))) (.pair .bool .bool)) [(.copy (.generated .binding 3))]))))])) (.mk [] (.succeed (.construct (.err (.pair .nat (.list (.adt 1))) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))])))), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.matchBool (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 4))]) none (.clone (.generated .binding 1)))]) (tail := (.move (.generated .part 4))) (Corr.second (ta := (.adt 2)) (tb := .bool) (Corr.var rfl rfl) rfl)) rfl rfl (Corr.kIf (la := [(.mk (.bind (.generated .holder 9)) none (.call (.function 3) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .holder 8)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 7)), .wild]) none (.clone (.generated .binding 1)))] (.move (.generated .part 7)))))] (.matchOn (.move (.generated .holder 8)) [(.mk (.adt 2 0 [(.bind (.generated .part 6)), .wild, .wild]) (.mk [] (.move (.generated .part 6))))])))] false))]) (ta := (.matchOn (.move (.generated .holder 9)) [(.mk (.ok (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct (.ok (.pair .nat (.list (.adt 1))) (.pair .bool .bool)) [(.pair (.copy (.generated .binding 2)) (.block (.mk [(.mk (.bind (.generated .holder 12)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 11)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 11)))))] (.matchOn (.move (.generated .holder 12)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 10)), .wild]) (.mk [] (.move (.generated .part 10))))]))))])))), (.mk (.err (.bind (.generated .binding 3))) (.mk [] (.succeed (.construct (.err (.pair .nat (.list (.adt 1))) (.pair .bool .bool)) [(.copy (.generated .binding 3))]))))])) (lb := []) (tb := (.succeed (.construct (.err (.pair .nat (.list (.adt 1))) (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))) (Corr.matchArms (st := (.result .nat (.pair .bool .bool))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0), (.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 8)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 7)), .wild]) none (.clone (.generated .binding 1)))] (.move (.generated .part 7)))))]) (tail := (.matchOn (.move (.generated .holder 8)) [(.mk (.adt 2 0 [(.bind (.generated .part 6)), .wild, .wild]) (.mk [] (.move (.generated .part 6))))])) (Corr.fieldHeld (ts := [(.adt 3), (.list (.adt 1)), (.adt 4)]) (rd := (.move (.generated .part 6))) (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 7)), .wild]) none (.clone (.generated .binding 1)))]) (tail := (.move (.generated .part 7))) (Corr.first (ta := (.adt 2)) (tb := .bool) (Corr.var rfl rfl) rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, (.pair (.adt 2) .bool), (some 1)), (0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct (.ok (.pair .nat (.list (.adt 1))) (.pair .bool .bool)) [(.pair (.copy (.generated .binding 2)) (.block (.mk [(.mk (.bind (.generated .holder 12)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 11)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 11)))))] (.matchOn (.move (.generated .holder 12)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 10)), .wild]) (.mk [] (.move (.generated .part 10))))]))))]))) (Corr.mCons (Γ' := [(3, (.pair .bool .bool), (some 3)), (1, (.pair (.adt 2) .bool), (some 1)), (0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.construct (.err (.pair .nat (.list (.adt 1))) (.pair .bool .bool)) [(.copy (.generated .binding 3))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.pair .nat (.list (.adt 1)))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 12)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 11)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 11)))))]) (tail := (.matchOn (.move (.generated .holder 12)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 10)), .wild]) (.mk [] (.move (.generated .part 10))))])) (Corr.fieldHeld (ts := [(.adt 3), (.list (.adt 1)), (.adt 4)]) (rd := (.move (.generated .part 10))) (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 11)), .wild]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 11))) (Corr.first (ta := (.adt 2)) (tb := .bool) (Corr.var rfl rfl) rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lNil))) rfl))) rfl rfl rfl) (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)))))⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 4) [(.construct (.closure 0 5) []), (.lit (.nat 11)), (.call (.function 6) [(.move (.generated .binding 0))] false)] false), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.callF (ts := [(.fn [(.adt 2)] (.option (.adt 2))), .nat, (.adt 2)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl)⟩⟩ - -theorem fun3 : FunOK program krate flags 3 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 13)) none (.call (.function 7) [(.move (.generated .binding 0)), (.clone (.generated .binding 1))] false))], (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 14)) none (.call (.function 8) [(.move (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 14)) [(.mk .none (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))]))), (.mk (.some .wild) (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))])))]), [(1, (.adt 3), (some 1)), (0, (.adt 0), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0), (.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.adt 3), (some 1)), (0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 14)) none (.call (.function 8) [(.move (.generated .binding 1))] false))]) (tail := (.matchOn (.move (.generated .holder 14)) [(.mk .none (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))]))), (.mk (.some .wild) (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))])) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, (.adt 3), (some 1)), (0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.adt 3), (some 1)), (0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))])) (Corr.mCons (Γ' := [(3, .nat, none), (1, (.adt 3), (some 1)), (0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)) rfl rfl rfl)) rfl rfl rfl)⟩⟩ - -theorem fun4 : FunOK program krate flags 4 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 15)) none (.copy (.generated .binding 1)))], (.cond (.isZero (.generated .holder 15)) (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 15))), (.mk (.bind (.generated .holder 17)) none (.block (.mk [(.mk (.bind (.generated .callee 16)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 16) [(.clone (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 17)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))]))), [(2, (.adt 2), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.adt 2)] (.option (.adt 2))), (some 0))], rfl, rfl, - (Corr.matchNat (sl := (some 3)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (lb := [(.mk (.bind (.generated .holder 17)) none (.block (.mk [(.mk (.bind (.generated .callee 16)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 16) [(.clone (.generated .binding 2))] true))))]) (tb := (.matchOn (.move (.generated .holder 17)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))])) (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))))) (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 16)) (some (.fn 0)) (.clone (.generated .binding 0)))]) (tail := (.apply (.generated .callee 16) [(.clone (.generated .binding 2))] true)) (Corr.apply (ps := [(.adt 2)]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (2, (.adt 2), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.adt 2)] (.option (.adt 2))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true))))) (Corr.mCons (Γ' := [(4, (.adt 2), (some 4)), (3, .nat, (some 3)), (2, (.adt 2), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.adt 2)] (.option (.adt 2))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.adt 2)] (.option (.adt 2))), .nat, (.adt 2)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))))))) rfl rfl rfl)))⟩⟩ - -theorem fun5 : FunOK program krate flags 5 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 19)) none (.call (.function 9) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [(.bind (.generated .part 18)), .wild, .wild]) (.mk [] (.move (.generated .part 18))))])] true))], (.matchOn (.move (.generated .holder 19)) [(.mk .none (.mk [] (.succeed (.construct (.none (.adt 2)) [])))), (.mk (.some (.bind (.generated .binding 1))) (.mk [(.mk (.bind (.generated .holder 21)) none (.call (.function 10) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [(.bind (.generated .part 20)), .wild, .wild]) (.mk [] (.move (.generated .part 20))))]), (.clone (.generated .binding 1))] true))] (.matchOn (.move (.generated .holder 21)) [(.mk .none (.mk [] (.succeed (.construct (.none (.adt 2)) [])))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct .some [(.construct (.adt 2 0) [(.move (.generated .binding 2)), (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 22)), .wild]) (.mk [] (.move (.generated .part 22))))])), (.mk (.bind (.generated .operand 24)) none (.construct .cons [(.move (.generated .binding 1)), (.construct (.nil (.adt 1)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))), (.construct (.adt 4 0) [(.block (.mk [(.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .holder 27)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 26))]) (.mk [] (.move (.generated .part 26))))]))] (.matchOn (.move (.generated .holder 27)) [(.mk (.adt 4 0 [(.bind (.generated .part 25)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 25))))])))), (.mk (.bind (.generated .operand 29)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 28)), (.move (.generated .operand 29))] true))), (.block (.mk [(.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.bind (.generated .holder 32)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 31))]) (.mk [] (.move (.generated .part 31))))]))] (.matchOn (.move (.generated .holder 32)) [(.mk (.adt 4 0 [.wild, (.bind (.generated .part 30)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 30))))])))), (.mk (.bind (.generated .operand 35)) none (.call (.function 11) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [(.bind (.generated .part 33)), .wild, .wild]) (.mk [] (.move (.generated .part 33))))])] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 34)), (.move (.generated .operand 35))] true))), (.block (.mk [(.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.bind (.generated .holder 38)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 37))]) (.mk [] (.move (.generated .part 37))))]))] (.matchOn (.move (.generated .holder 38)) [(.mk (.adt 4 0 [.wild, .wild, (.bind (.generated .part 36)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 36))))])))), (.mk (.bind (.generated .operand 40)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] true))), (.block (.mk [(.mk (.bind (.generated .holder 43)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 42))]) (.mk [] (.move (.generated .part 42))))]))] (.matchOn (.move (.generated .holder 43)) [(.mk (.adt 4 0 [.wild, .wild, .wild, (.bind (.generated .part 41)), .wild, .wild]) (.mk [] (.move (.generated .part 41))))]))), (.block (.mk [(.mk (.bind (.generated .holder 46)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 45))]) (.mk [] (.move (.generated .part 45))))]))] (.matchOn (.move (.generated .holder 46)) [(.mk (.adt 4 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 44)), .wild]) (.mk [] (.move (.generated .part 44))))]))), (.block (.mk [(.mk (.bind (.generated .holder 49)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 48))]) (.mk [] (.move (.generated .part 48))))]))] (.matchOn (.move (.generated .holder 49)) [(.mk (.adt 4 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 47))]) (.mk [] (.move (.generated .part 47))))])))])])]))))])))]), [(0, (.adt 2), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option (.adt 1))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 3), (.list (.adt 1)), (.adt 4)]) (rd := (.move (.generated .part 18))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(0, (.adt 2), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct (.none (.adt 2)) []))) (Corr.mCons (Γ' := [(1, (.adt 1), (some 1)), (0, (.adt 2), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 21)) none (.call (.function 10) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [(.bind (.generated .part 20)), .wild, .wild]) (.mk [] (.move (.generated .part 20))))]), (.clone (.generated .binding 1))] true))]) (tail := (.matchOn (.move (.generated .holder 21)) [(.mk .none (.mk [] (.succeed (.construct (.none (.adt 2)) [])))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct .some [(.construct (.adt 2 0) [(.move (.generated .binding 2)), (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 22)), .wild]) (.mk [] (.move (.generated .part 22))))])), (.mk (.bind (.generated .operand 24)) none (.construct .cons [(.move (.generated .binding 1)), (.construct (.nil (.adt 1)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))), (.construct (.adt 4 0) [(.block (.mk [(.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .holder 27)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 26))]) (.mk [] (.move (.generated .part 26))))]))] (.matchOn (.move (.generated .holder 27)) [(.mk (.adt 4 0 [(.bind (.generated .part 25)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 25))))])))), (.mk (.bind (.generated .operand 29)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 28)), (.move (.generated .operand 29))] true))), (.block (.mk [(.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.bind (.generated .holder 32)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 31))]) (.mk [] (.move (.generated .part 31))))]))] (.matchOn (.move (.generated .holder 32)) [(.mk (.adt 4 0 [.wild, (.bind (.generated .part 30)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 30))))])))), (.mk (.bind (.generated .operand 35)) none (.call (.function 11) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [(.bind (.generated .part 33)), .wild, .wild]) (.mk [] (.move (.generated .part 33))))])] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 34)), (.move (.generated .operand 35))] true))), (.block (.mk [(.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.bind (.generated .holder 38)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 37))]) (.mk [] (.move (.generated .part 37))))]))] (.matchOn (.move (.generated .holder 38)) [(.mk (.adt 4 0 [.wild, .wild, (.bind (.generated .part 36)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 36))))])))), (.mk (.bind (.generated .operand 40)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] true))), (.block (.mk [(.mk (.bind (.generated .holder 43)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 42))]) (.mk [] (.move (.generated .part 42))))]))] (.matchOn (.move (.generated .holder 43)) [(.mk (.adt 4 0 [.wild, .wild, .wild, (.bind (.generated .part 41)), .wild, .wild]) (.mk [] (.move (.generated .part 41))))]))), (.block (.mk [(.mk (.bind (.generated .holder 46)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 45))]) (.mk [] (.move (.generated .part 45))))]))] (.matchOn (.move (.generated .holder 46)) [(.mk (.adt 4 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 44)), .wild]) (.mk [] (.move (.generated .part 44))))]))), (.block (.mk [(.mk (.bind (.generated .holder 49)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 48))]) (.mk [] (.move (.generated .part 48))))]))] (.matchOn (.move (.generated .holder 49)) [(.mk (.adt 4 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 47))]) (.mk [] (.move (.generated .part 47))))])))])])]))))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := (.option (.adt 3))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.adt 3), (.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 3), (.list (.adt 1)), (.adt 4)]) (rd := (.move (.generated .part 20))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.adt 1), (some 1)), (0, (.adt 2), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct (.none (.adt 2)) []))) (Corr.mCons (Γ' := [(2, (.adt 3), (some 2)), (1, (.adt 1), (some 1)), (0, (.adt 2), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.construct .some [(.construct (.adt 2 0) [(.move (.generated .binding 2)), (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 22)), .wild]) (.mk [] (.move (.generated .part 22))))])), (.mk (.bind (.generated .operand 24)) none (.construct .cons [(.move (.generated .binding 1)), (.construct (.nil (.adt 1)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false))), (.construct (.adt 4 0) [(.block (.mk [(.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .holder 27)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 26))]) (.mk [] (.move (.generated .part 26))))]))] (.matchOn (.move (.generated .holder 27)) [(.mk (.adt 4 0 [(.bind (.generated .part 25)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 25))))])))), (.mk (.bind (.generated .operand 29)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 28)), (.move (.generated .operand 29))] true))), (.block (.mk [(.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.bind (.generated .holder 32)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 31))]) (.mk [] (.move (.generated .part 31))))]))] (.matchOn (.move (.generated .holder 32)) [(.mk (.adt 4 0 [.wild, (.bind (.generated .part 30)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 30))))])))), (.mk (.bind (.generated .operand 35)) none (.call (.function 11) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [(.bind (.generated .part 33)), .wild, .wild]) (.mk [] (.move (.generated .part 33))))])] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 34)), (.move (.generated .operand 35))] true))), (.block (.mk [(.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.bind (.generated .holder 38)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 37))]) (.mk [] (.move (.generated .part 37))))]))] (.matchOn (.move (.generated .holder 38)) [(.mk (.adt 4 0 [.wild, .wild, (.bind (.generated .part 36)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 36))))])))), (.mk (.bind (.generated .operand 40)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] true))), (.block (.mk [(.mk (.bind (.generated .holder 43)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 42))]) (.mk [] (.move (.generated .part 42))))]))] (.matchOn (.move (.generated .holder 43)) [(.mk (.adt 4 0 [.wild, .wild, .wild, (.bind (.generated .part 41)), .wild, .wild]) (.mk [] (.move (.generated .part 41))))]))), (.block (.mk [(.mk (.bind (.generated .holder 46)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 45))]) (.mk [] (.move (.generated .part 45))))]))] (.matchOn (.move (.generated .holder 46)) [(.mk (.adt 4 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 44)), .wild]) (.mk [] (.move (.generated .part 44))))]))), (.block (.mk [(.mk (.bind (.generated .holder 49)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 48))]) (.mk [] (.move (.generated .part 48))))]))] (.matchOn (.move (.generated .holder 49)) [(.mk (.adt 4 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 47))]) (.mk [] (.move (.generated .part 47))))])))])])]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.adt 3), (.list (.adt 1)), (.adt 4)]) (mask := [false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 23)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 22)), .wild]) (.mk [] (.move (.generated .part 22))))])), (.mk (.bind (.generated .operand 24)) none (.construct .cons [(.move (.generated .binding 1)), (.construct (.nil (.adt 1)) [])]))]) (tail := (.call (.runtime .appendList) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] false)) (Corr.prim (ts := [(.list (.adt 1)), (.list (.adt 1))]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 3), (.list (.adt 1)), (.adt 4)]) (rd := (.move (.generated .part 22))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [(.adt 1), (.list (.adt 1))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 28)) none (.block (.mk [(.mk (.bind (.generated .holder 27)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 26))]) (.mk [] (.move (.generated .part 26))))]))] (.matchOn (.move (.generated .holder 27)) [(.mk (.adt 4 0 [(.bind (.generated .part 25)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 25))))])))), (.mk (.bind (.generated .operand 29)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 28)), (.move (.generated .operand 29))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 27)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 26))]) (.mk [] (.move (.generated .part 26))))]))]) (tail := (.matchOn (.move (.generated .holder 27)) [(.mk (.adt 4 0 [(.bind (.generated .part 25)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 25))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 25))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 3), (.list (.adt 1)), (.adt 4)]) (rd := (.move (.generated .part 26))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 34)) none (.block (.mk [(.mk (.bind (.generated .holder 32)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 31))]) (.mk [] (.move (.generated .part 31))))]))] (.matchOn (.move (.generated .holder 32)) [(.mk (.adt 4 0 [.wild, (.bind (.generated .part 30)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 30))))])))), (.mk (.bind (.generated .operand 35)) none (.call (.function 11) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [(.bind (.generated .part 33)), .wild, .wild]) (.mk [] (.move (.generated .part 33))))])] true))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 34)), (.move (.generated .operand 35))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 32)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 31))]) (.mk [] (.move (.generated .part 31))))]))]) (tail := (.matchOn (.move (.generated .holder 32)) [(.mk (.adt 4 0 [.wild, (.bind (.generated .part 30)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 30))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 30))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 3), (.list (.adt 1)), (.adt 4)]) (rd := (.move (.generated .part 31))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 3), (.list (.adt 1)), (.adt 4)]) (rd := (.move (.generated .part 33))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.bind (.generated .holder 38)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 37))]) (.mk [] (.move (.generated .part 37))))]))] (.matchOn (.move (.generated .holder 38)) [(.mk (.adt 4 0 [.wild, .wild, (.bind (.generated .part 36)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 36))))])))), (.mk (.bind (.generated .operand 40)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 38)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 37))]) (.mk [] (.move (.generated .part 37))))]))]) (tail := (.matchOn (.move (.generated .holder 38)) [(.mk (.adt 4 0 [.wild, .wild, (.bind (.generated .part 36)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 36))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 36))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 3), (.list (.adt 1)), (.adt 4)]) (rd := (.move (.generated .part 37))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 43)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 42))]) (.mk [] (.move (.generated .part 42))))]))]) (tail := (.matchOn (.move (.generated .holder 43)) [(.mk (.adt 4 0 [.wild, .wild, .wild, (.bind (.generated .part 41)), .wild, .wild]) (.mk [] (.move (.generated .part 41))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 41))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 3), (.list (.adt 1)), (.adt 4)]) (rd := (.move (.generated .part 42))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 46)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 45))]) (.mk [] (.move (.generated .part 45))))]))]) (tail := (.matchOn (.move (.generated .holder 46)) [(.mk (.adt 4 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 44)), .wild]) (.mk [] (.move (.generated .part 44))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 44))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 3), (.list (.adt 1)), (.adt 4)]) (rd := (.move (.generated .part 45))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 49)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, .wild, (.bind (.generated .part 48))]) (.mk [] (.move (.generated .part 48))))]))]) (tail := (.matchOn (.move (.generated .holder 49)) [(.mk (.adt 4 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 47))]) (.mk [] (.move (.generated .part 47))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 47))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 3), (.list (.adt 1)), (.adt 4)]) (rd := (.move (.generated .part 48))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))))))) rfl)) (Corr.lNil))))) rfl)) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl)⟩⟩ - -theorem fun6 : FunOK program krate flags 6 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 2 0) [(.call (.function 12) [(.move (.generated .binding 0))] false), (.construct (.nil (.adt 1)) []), (.construct (.adt 4 0) [(.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0))])]), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.build (ts := [(.adt 3), (.list (.adt 1)), (.adt 4)]) (mask := [false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))))))) rfl)) (Corr.lNil))))) rfl)⟩⟩ - -theorem fun7 : FunOK program krate flags 7 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 50)) none (.call (.function 8) [(.move (.generated .binding 1))] false))], (.matchOn (.move (.generated .holder 50)) [(.mk .none (.mk [] (.construct (.none .nat) []))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.cond (.call (.function 13) [(.move (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.mk [] (.construct .some [(.copy (.generated .binding 2))])) (.mk [] (.construct (.none .nat) [])))))]), [(1, (.adt 3), (some 1)), (0, (.adt 0), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.adt 3), (some 1)), (0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none .nat) [])) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, (.adt 3), (some 1)), (0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 13) [(.move (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.mk [] (.construct .some [(.copy (.generated .binding 2))])) (.mk [] (.construct (.none .nat) [])))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 13) [(.move (.generated .binding 0)), (.copy (.generated .binding 2))] false)) (lk := []) (Corr.callOps (ts := [(.adt 0), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.copy (.generated .binding 2))])) (lb := []) (tb := (.construct (.none .nat) [])) (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun8 : FunOK program krate flags 8 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct .some [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 51))]) (.mk [] (.move (.generated .part 51))))])]), [(0, (.adt 3), (some 0))], rfl, rfl, - (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 51))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)⟩⟩ - -theorem fun9 : FunOK program krate flags 9 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 55)) none (.block (.mk [(.mk (.bind (.generated .holder 53)) none (.block (.mk [(.mk (.bind (.generated .holder 52)) none (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 0) [])])) (.mk [] (.construct (.none (.adt 1)) []))))] (.matchOn (.move (.generated .holder 52)) [(.mk .none (.mk [] (.cond (.call (.function 15) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 1) [])])) (.mk [] (.construct (.none (.adt 1)) []))))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.construct .some [(.move (.generated .binding 1))])))]))))] (.matchOn (.move (.generated .holder 53)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 54)) none (.cond (.call (.function 16) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 2) [])])) (.mk [] (.construct (.none (.adt 1)) []))))] (.matchOn (.move (.generated .holder 54)) [(.mk .none (.mk [] (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 3) [])])) (.mk [] (.construct (.none (.adt 1)) []))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.construct .some [(.move (.generated .binding 3))])))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.construct .some [(.move (.generated .binding 2))])))]))))], (.matchOn (.move (.generated .holder 55)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 57)) none (.block (.mk [(.mk (.bind (.generated .holder 56)) none (.cond (.call (.function 18) [(.clone (.generated .binding 0))] true) (.mk [] (.construct .some [(.construct (.adt 1 4) [])])) (.mk [] (.construct (.none (.adt 1)) []))))] (.matchOn (.move (.generated .holder 56)) [(.mk .none (.mk [] (.cond (.call (.function 19) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 5) [])])) (.mk [] (.construct (.none (.adt 1)) []))))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.construct .some [(.move (.generated .binding 5))])))]))))] (.matchOn (.move (.generated .holder 57)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 58)) none (.cond (.call (.function 20) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 6) [])])) (.mk [] (.construct (.none (.adt 1)) []))))] (.matchOn (.move (.generated .holder 58)) [(.mk .none (.mk [] (.cond (.call (.function 21) [(.move (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.construct (.adt 1 7) [])]))) (.mk [] (.succeed (.construct (.none (.adt 1)) [])))))), (.mk (.some (.bind (.generated .binding 7))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 7))]))))]))), (.mk (.some (.bind (.generated .binding 6))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 6))]))))]))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 4))]))))]), [(0, (.adt 3), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option (.adt 1))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 53)) none (.block (.mk [(.mk (.bind (.generated .holder 52)) none (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 0) [])])) (.mk [] (.construct (.none (.adt 1)) []))))] (.matchOn (.move (.generated .holder 52)) [(.mk .none (.mk [] (.cond (.call (.function 15) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 1) [])])) (.mk [] (.construct (.none (.adt 1)) []))))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.construct .some [(.move (.generated .binding 1))])))]))))]) (tail := (.matchOn (.move (.generated .holder 53)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 54)) none (.cond (.call (.function 16) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 2) [])])) (.mk [] (.construct (.none (.adt 1)) []))))] (.matchOn (.move (.generated .holder 54)) [(.mk .none (.mk [] (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 3) [])])) (.mk [] (.construct (.none (.adt 1)) []))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.construct .some [(.move (.generated .binding 3))])))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.construct .some [(.move (.generated .binding 2))])))])) (Corr.matchArms (st := (.option (.adt 1))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 52)) none (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 0) [])])) (.mk [] (.construct (.none (.adt 1)) []))))]) (tail := (.matchOn (.move (.generated .holder 52)) [(.mk .none (.mk [] (.cond (.call (.function 15) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 1) [])])) (.mk [] (.construct (.none (.adt 1)) []))))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.construct .some [(.move (.generated .binding 1))])))])) (Corr.matchArms (st := (.option (.adt 1))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.cond (lc := []) (ce := (.call (.function 14) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 1 0) [])])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) (Corr.mCons (Γ' := [(0, (.adt 3), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 15) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 1) [])])) (.mk [] (.construct (.none (.adt 1)) [])))) (Corr.mCons (Γ' := [(1, (.adt 1), (some 1)), (0, (.adt 3), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.move (.generated .binding 1))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 15) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 1 1) [])])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) rfl rfl rfl)) (Corr.mCons (Γ' := [(0, (.adt 3), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 54)) none (.cond (.call (.function 16) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 2) [])])) (.mk [] (.construct (.none (.adt 1)) []))))]) (tail := (.matchOn (.move (.generated .holder 54)) [(.mk .none (.mk [] (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 3) [])])) (.mk [] (.construct (.none (.adt 1)) []))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.construct .some [(.move (.generated .binding 3))])))])) (Corr.mCons (Γ' := [(2, (.adt 1), (some 2)), (0, (.adt 3), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.move (.generated .binding 2))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.matchArms (st := (.option (.adt 1))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.cond (lc := []) (ce := (.call (.function 16) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 1 2) [])])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) (Corr.mCons (Γ' := [(0, (.adt 3), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 3) [])])) (.mk [] (.construct (.none (.adt 1)) [])))) (Corr.mCons (Γ' := [(3, (.adt 1), (some 3)), (0, (.adt 3), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.move (.generated .binding 3))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 17) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 1 3) [])])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) rfl rfl rfl)) rfl rfl rfl)) (Corr.mCons (Γ' := [(0, (.adt 3), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 57)) none (.block (.mk [(.mk (.bind (.generated .holder 56)) none (.cond (.call (.function 18) [(.clone (.generated .binding 0))] true) (.mk [] (.construct .some [(.construct (.adt 1 4) [])])) (.mk [] (.construct (.none (.adt 1)) []))))] (.matchOn (.move (.generated .holder 56)) [(.mk .none (.mk [] (.cond (.call (.function 19) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 5) [])])) (.mk [] (.construct (.none (.adt 1)) []))))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.construct .some [(.move (.generated .binding 5))])))]))))]) (tail := (.matchOn (.move (.generated .holder 57)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 58)) none (.cond (.call (.function 20) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 6) [])])) (.mk [] (.construct (.none (.adt 1)) []))))] (.matchOn (.move (.generated .holder 58)) [(.mk .none (.mk [] (.cond (.call (.function 21) [(.move (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.construct (.adt 1 7) [])]))) (.mk [] (.succeed (.construct (.none (.adt 1)) [])))))), (.mk (.some (.bind (.generated .binding 7))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 7))]))))]))), (.mk (.some (.bind (.generated .binding 6))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 6))]))))])) (Corr.mCons (Γ' := [(4, (.adt 1), (some 4)), (0, (.adt 3), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct .some [(.move (.generated .binding 4))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.matchArms (st := (.option (.adt 1))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 56)) none (.cond (.call (.function 18) [(.clone (.generated .binding 0))] true) (.mk [] (.construct .some [(.construct (.adt 1 4) [])])) (.mk [] (.construct (.none (.adt 1)) []))))]) (tail := (.matchOn (.move (.generated .holder 56)) [(.mk .none (.mk [] (.cond (.call (.function 19) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 5) [])])) (.mk [] (.construct (.none (.adt 1)) []))))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.construct .some [(.move (.generated .binding 5))])))])) (Corr.matchArms (st := (.option (.adt 1))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.cond (lc := []) (ce := (.call (.function 18) [(.clone (.generated .binding 0))] true)) (lk := []) (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 1 4) [])])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) (Corr.mCons (Γ' := [(0, (.adt 3), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 19) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 5) [])])) (.mk [] (.construct (.none (.adt 1)) [])))) (Corr.mCons (Γ' := [(5, (.adt 1), (some 5)), (0, (.adt 3), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.move (.generated .binding 5))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 19) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 1 5) [])])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) rfl rfl rfl)) (Corr.mCons (Γ' := [(0, (.adt 3), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 58)) none (.cond (.call (.function 20) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 1 6) [])])) (.mk [] (.construct (.none (.adt 1)) []))))]) (tail := (.matchOn (.move (.generated .holder 58)) [(.mk .none (.mk [] (.cond (.call (.function 21) [(.move (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.construct (.adt 1 7) [])]))) (.mk [] (.succeed (.construct (.none (.adt 1)) [])))))), (.mk (.some (.bind (.generated .binding 7))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 7))]))))])) (Corr.mCons (Γ' := [(6, (.adt 1), (some 6)), (0, (.adt 3), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct .some [(.move (.generated .binding 6))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.matchArms (st := (.option (.adt 1))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.cond (lc := []) (ce := (.call (.function 20) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 1 6) [])])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) (Corr.mCons (Γ' := [(0, (.adt 3), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 21) [(.move (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.construct (.adt 1 7) [])]))) (.mk [] (.succeed (.construct (.none (.adt 1)) []))))) (Corr.mCons (Γ' := [(7, (.adt 1), (some 7)), (0, (.adt 3), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct .some [(.move (.generated .binding 7))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 21) [(.move (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.construct (.adt 1 7) [])]))) (lb := []) (tb := (.succeed (.construct (.none (.adt 1)) []))) (Corr.fOfB (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))) rfl rfl rfl)) rfl rfl rfl)) rfl rfl rfl)⟩⟩ - -theorem fun10 : FunOK program krate flags 10 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 59)) none (.move (.generated .binding 1)))], (.matchOn (.move (.generated .holder 59)) [(.mk (.adt 1 0 []) (.mk [] (.succeed (.call (.function 22) [(.move (.generated .binding 0))] false)))), (.mk (.adt 1 1 []) (.mk [] (.succeed (.call (.function 23) [(.move (.generated .binding 0))] false)))), (.mk (.adt 1 2 []) (.mk [] (.succeed (.call (.function 24) [(.move (.generated .binding 0))] false)))), (.mk (.adt 1 3 []) (.mk [] (.succeed (.call (.function 25) [(.move (.generated .binding 0))] false)))), (.mk (.adt 1 4 []) (.mk [] (.call (.function 26) [(.move (.generated .binding 0))] false))), (.mk (.adt 1 5 []) (.mk [] (.succeed (.call (.function 27) [(.move (.generated .binding 0))] false)))), (.mk (.adt 1 6 []) (.mk [] (.succeed (.call (.function 28) [(.move (.generated .binding 0))] false)))), (.mk (.adt 1 7 []) (.mk [] (.call (.function 29) [(.move (.generated .binding 0))] false)))]), [(1, (.adt 1), (some 1)), (0, (.adt 3), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.adt 1)) (U := []) (view := false) (idx := [0, 1, 2, 3, 4, 5, 6, 7]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.adt 1), (some 1)), (0, (.adt 3), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.call (.function 22) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 1), (some 1)), (0, (.adt 3), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.call (.function 23) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 1), (some 1)), (0, (.adt 3), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.succeed (.call (.function 24) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 1), (some 1)), (0, (.adt 3), (some 0))]) (j := 3) (loads := []) (lets := []) (tail := (.succeed (.call (.function 25) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 1), (some 1)), (0, (.adt 3), (some 0))]) (j := 4) (loads := []) (lets := []) (tail := (.call (.function 26) [(.move (.generated .binding 0))] false)) (Corr.mCons (Γ' := [(1, (.adt 1), (some 1)), (0, (.adt 3), (some 0))]) (j := 5) (loads := []) (lets := []) (tail := (.succeed (.call (.function 27) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 1), (some 1)), (0, (.adt 3), (some 0))]) (j := 6) (loads := []) (lets := []) (tail := (.succeed (.call (.function 28) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 1), (some 1)), (0, (.adt 3), (some 0))]) (j := 7) (loads := []) (lets := []) (tail := (.call (.function 29) [(.move (.generated .binding 0))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.callF (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl)⟩⟩ - -theorem fun11 : FunOK program krate flags 11 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.tuple [.wild, (.bind (.generated .part 60))]) none (.block (.mk [(.mk (.bind (.generated .binding 7)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 3)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 1)) (some (.pair .bool .nat)) (.pair (.call (.function 14) [(.clone (.generated .binding 0))] false) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 61)), .wild]) none (.copy (.generated .binding 1)))] (.cond (.move (.generated .part 61)) (.mk [] (.copy (.generated .binding 1))) (.mk [(.mk (.bind (.generated .binding 2)) (some (.pair .bool .nat)) (.pair (.call (.function 15) [(.clone (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 62)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 62)))) (.block (.mk [(.mk (.bind (.generated .operand 65)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 63))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 63))))), (.mk (.bind (.generated .operand 66)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 64))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 64)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 65)), (.move (.generated .operand 66))] true))))))))), (.mk (.tuple [(.bind (.generated .part 67)), .wild]) none (.copy (.generated .binding 3)))] (.cond (.move (.generated .part 67)) (.mk [] (.copy (.generated .binding 3))) (.mk [(.mk (.bind (.generated .binding 6)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 4)) (some (.pair .bool .nat)) (.pair (.call (.function 16) [(.clone (.generated .binding 0))] false) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 68)), .wild]) none (.copy (.generated .binding 4)))] (.cond (.move (.generated .part 68)) (.mk [] (.copy (.generated .binding 4))) (.mk [(.mk (.bind (.generated .binding 5)) (some (.pair .bool .nat)) (.pair (.call (.function 17) [(.clone (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 69)), .wild]) none (.copy (.generated .binding 5)))] (.move (.generated .part 69)))) (.block (.mk [(.mk (.bind (.generated .operand 72)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 70))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 70))))), (.mk (.bind (.generated .operand 73)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 71))]) none (.copy (.generated .binding 5)))] (.move (.generated .part 71)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 72)), (.move (.generated .operand 73))] true)))))))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 74)), .wild]) none (.copy (.generated .binding 6)))] (.move (.generated .part 74)))) (.block (.mk [(.mk (.bind (.generated .operand 77)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 75))]) none (.copy (.generated .binding 3)))] (.move (.generated .part 75))))), (.mk (.bind (.generated .operand 78)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 76))]) none (.copy (.generated .binding 6)))] (.move (.generated .part 76)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 77)), (.move (.generated .operand 78))] true))))))))), (.mk (.tuple [(.bind (.generated .part 79)), .wild]) none (.copy (.generated .binding 7)))] (.cond (.move (.generated .part 79)) (.mk [] (.copy (.generated .binding 7))) (.mk [(.mk (.bind (.generated .binding 14)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 10)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 8)) (some (.pair .bool .nat)) (.pair (.call (.function 18) [(.clone (.generated .binding 0))] true) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 80)), .wild]) none (.copy (.generated .binding 8)))] (.cond (.move (.generated .part 80)) (.mk [] (.copy (.generated .binding 8))) (.mk [(.mk (.bind (.generated .binding 9)) (some (.pair .bool .nat)) (.pair (.call (.function 19) [(.clone (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 81)), .wild]) none (.copy (.generated .binding 9)))] (.move (.generated .part 81)))) (.block (.mk [(.mk (.bind (.generated .operand 84)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 82))]) none (.copy (.generated .binding 8)))] (.move (.generated .part 82))))), (.mk (.bind (.generated .operand 85)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 83))]) none (.copy (.generated .binding 9)))] (.move (.generated .part 83)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 84)), (.move (.generated .operand 85))] true))))))))), (.mk (.tuple [(.bind (.generated .part 86)), .wild]) none (.copy (.generated .binding 10)))] (.cond (.move (.generated .part 86)) (.mk [] (.copy (.generated .binding 10))) (.mk [(.mk (.bind (.generated .binding 13)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 11)) (some (.pair .bool .nat)) (.pair (.call (.function 20) [(.clone (.generated .binding 0))] false) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 87)), .wild]) none (.copy (.generated .binding 11)))] (.cond (.move (.generated .part 87)) (.mk [] (.copy (.generated .binding 11))) (.mk [(.mk (.bind (.generated .binding 12)) (some (.pair .bool .nat)) (.pair (.call (.function 21) [(.move (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 88)), .wild]) none (.copy (.generated .binding 12)))] (.move (.generated .part 88)))) (.block (.mk [(.mk (.bind (.generated .operand 91)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 89))]) none (.copy (.generated .binding 11)))] (.move (.generated .part 89))))), (.mk (.bind (.generated .operand 92)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 90))]) none (.copy (.generated .binding 12)))] (.move (.generated .part 90)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] true)))))))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 93)), .wild]) none (.copy (.generated .binding 13)))] (.move (.generated .part 93)))) (.block (.mk [(.mk (.bind (.generated .operand 96)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 94))]) none (.copy (.generated .binding 10)))] (.move (.generated .part 94))))), (.mk (.bind (.generated .operand 97)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 95))]) none (.copy (.generated .binding 13)))] (.move (.generated .part 95)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 96)), (.move (.generated .operand 97))] true)))))))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 98)), .wild]) none (.copy (.generated .binding 14)))] (.move (.generated .part 98)))) (.block (.mk [(.mk (.bind (.generated .operand 101)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 99))]) none (.copy (.generated .binding 7)))] (.move (.generated .part 99))))), (.mk (.bind (.generated .operand 102)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 100))]) none (.copy (.generated .binding 14)))] (.move (.generated .part 100)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 101)), (.move (.generated .operand 102))] true)))))))))], (.succeed (.move (.generated .part 60))), [(0, (.adt 3), (some 0))], rfl, rfl, - (Corr.fOfB (Corr.second (ta := .bool) (tb := .nat) (Corr.eOfB (lets := [(.mk (.bind (.generated .binding 7)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 3)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 1)) (some (.pair .bool .nat)) (.pair (.call (.function 14) [(.clone (.generated .binding 0))] false) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 61)), .wild]) none (.copy (.generated .binding 1)))] (.cond (.move (.generated .part 61)) (.mk [] (.copy (.generated .binding 1))) (.mk [(.mk (.bind (.generated .binding 2)) (some (.pair .bool .nat)) (.pair (.call (.function 15) [(.clone (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 62)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 62)))) (.block (.mk [(.mk (.bind (.generated .operand 65)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 63))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 63))))), (.mk (.bind (.generated .operand 66)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 64))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 64)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 65)), (.move (.generated .operand 66))] true))))))))), (.mk (.tuple [(.bind (.generated .part 67)), .wild]) none (.copy (.generated .binding 3)))] (.cond (.move (.generated .part 67)) (.mk [] (.copy (.generated .binding 3))) (.mk [(.mk (.bind (.generated .binding 6)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 4)) (some (.pair .bool .nat)) (.pair (.call (.function 16) [(.clone (.generated .binding 0))] false) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 68)), .wild]) none (.copy (.generated .binding 4)))] (.cond (.move (.generated .part 68)) (.mk [] (.copy (.generated .binding 4))) (.mk [(.mk (.bind (.generated .binding 5)) (some (.pair .bool .nat)) (.pair (.call (.function 17) [(.clone (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 69)), .wild]) none (.copy (.generated .binding 5)))] (.move (.generated .part 69)))) (.block (.mk [(.mk (.bind (.generated .operand 72)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 70))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 70))))), (.mk (.bind (.generated .operand 73)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 71))]) none (.copy (.generated .binding 5)))] (.move (.generated .part 71)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 72)), (.move (.generated .operand 73))] true)))))))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 74)), .wild]) none (.copy (.generated .binding 6)))] (.move (.generated .part 74)))) (.block (.mk [(.mk (.bind (.generated .operand 77)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 75))]) none (.copy (.generated .binding 3)))] (.move (.generated .part 75))))), (.mk (.bind (.generated .operand 78)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 76))]) none (.copy (.generated .binding 6)))] (.move (.generated .part 76)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 77)), (.move (.generated .operand 78))] true))))))))), (.mk (.tuple [(.bind (.generated .part 79)), .wild]) none (.copy (.generated .binding 7)))]) (tail := (.cond (.move (.generated .part 79)) (.mk [] (.copy (.generated .binding 7))) (.mk [(.mk (.bind (.generated .binding 14)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 10)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 8)) (some (.pair .bool .nat)) (.pair (.call (.function 18) [(.clone (.generated .binding 0))] true) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 80)), .wild]) none (.copy (.generated .binding 8)))] (.cond (.move (.generated .part 80)) (.mk [] (.copy (.generated .binding 8))) (.mk [(.mk (.bind (.generated .binding 9)) (some (.pair .bool .nat)) (.pair (.call (.function 19) [(.clone (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 81)), .wild]) none (.copy (.generated .binding 9)))] (.move (.generated .part 81)))) (.block (.mk [(.mk (.bind (.generated .operand 84)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 82))]) none (.copy (.generated .binding 8)))] (.move (.generated .part 82))))), (.mk (.bind (.generated .operand 85)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 83))]) none (.copy (.generated .binding 9)))] (.move (.generated .part 83)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 84)), (.move (.generated .operand 85))] true))))))))), (.mk (.tuple [(.bind (.generated .part 86)), .wild]) none (.copy (.generated .binding 10)))] (.cond (.move (.generated .part 86)) (.mk [] (.copy (.generated .binding 10))) (.mk [(.mk (.bind (.generated .binding 13)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 11)) (some (.pair .bool .nat)) (.pair (.call (.function 20) [(.clone (.generated .binding 0))] false) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 87)), .wild]) none (.copy (.generated .binding 11)))] (.cond (.move (.generated .part 87)) (.mk [] (.copy (.generated .binding 11))) (.mk [(.mk (.bind (.generated .binding 12)) (some (.pair .bool .nat)) (.pair (.call (.function 21) [(.move (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 88)), .wild]) none (.copy (.generated .binding 12)))] (.move (.generated .part 88)))) (.block (.mk [(.mk (.bind (.generated .operand 91)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 89))]) none (.copy (.generated .binding 11)))] (.move (.generated .part 89))))), (.mk (.bind (.generated .operand 92)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 90))]) none (.copy (.generated .binding 12)))] (.move (.generated .part 90)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] true)))))))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 93)), .wild]) none (.copy (.generated .binding 13)))] (.move (.generated .part 93)))) (.block (.mk [(.mk (.bind (.generated .operand 96)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 94))]) none (.copy (.generated .binding 10)))] (.move (.generated .part 94))))), (.mk (.bind (.generated .operand 97)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 95))]) none (.copy (.generated .binding 13)))] (.move (.generated .part 95)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 96)), (.move (.generated .operand 97))] true)))))))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 98)), .wild]) none (.copy (.generated .binding 14)))] (.move (.generated .part 98)))) (.block (.mk [(.mk (.bind (.generated .operand 101)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 99))]) none (.copy (.generated .binding 7)))] (.move (.generated .part 99))))), (.mk (.bind (.generated .operand 102)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 100))]) none (.copy (.generated .binding 14)))] (.move (.generated .part 100)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 101)), (.move (.generated .operand 102))] true))))))) (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .binding 3)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 1)) (some (.pair .bool .nat)) (.pair (.call (.function 14) [(.clone (.generated .binding 0))] false) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 61)), .wild]) none (.copy (.generated .binding 1)))] (.cond (.move (.generated .part 61)) (.mk [] (.copy (.generated .binding 1))) (.mk [(.mk (.bind (.generated .binding 2)) (some (.pair .bool .nat)) (.pair (.call (.function 15) [(.clone (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 62)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 62)))) (.block (.mk [(.mk (.bind (.generated .operand 65)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 63))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 63))))), (.mk (.bind (.generated .operand 66)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 64))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 64)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 65)), (.move (.generated .operand 66))] true))))))))), (.mk (.tuple [(.bind (.generated .part 67)), .wild]) none (.copy (.generated .binding 3)))]) (tail := (.cond (.move (.generated .part 67)) (.mk [] (.copy (.generated .binding 3))) (.mk [(.mk (.bind (.generated .binding 6)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 4)) (some (.pair .bool .nat)) (.pair (.call (.function 16) [(.clone (.generated .binding 0))] false) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 68)), .wild]) none (.copy (.generated .binding 4)))] (.cond (.move (.generated .part 68)) (.mk [] (.copy (.generated .binding 4))) (.mk [(.mk (.bind (.generated .binding 5)) (some (.pair .bool .nat)) (.pair (.call (.function 17) [(.clone (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 69)), .wild]) none (.copy (.generated .binding 5)))] (.move (.generated .part 69)))) (.block (.mk [(.mk (.bind (.generated .operand 72)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 70))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 70))))), (.mk (.bind (.generated .operand 73)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 71))]) none (.copy (.generated .binding 5)))] (.move (.generated .part 71)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 72)), (.move (.generated .operand 73))] true)))))))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 74)), .wild]) none (.copy (.generated .binding 6)))] (.move (.generated .part 74)))) (.block (.mk [(.mk (.bind (.generated .operand 77)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 75))]) none (.copy (.generated .binding 3)))] (.move (.generated .part 75))))), (.mk (.bind (.generated .operand 78)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 76))]) none (.copy (.generated .binding 6)))] (.move (.generated .part 76)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 77)), (.move (.generated .operand 78))] true))))))) (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .binding 1)) (some (.pair .bool .nat)) (.pair (.call (.function 14) [(.clone (.generated .binding 0))] false) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 61)), .wild]) none (.copy (.generated .binding 1)))]) (tail := (.cond (.move (.generated .part 61)) (.mk [] (.copy (.generated .binding 1))) (.mk [(.mk (.bind (.generated .binding 2)) (some (.pair .bool .nat)) (.pair (.call (.function 15) [(.clone (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 62)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 62)))) (.block (.mk [(.mk (.bind (.generated .operand 65)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 63))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 63))))), (.mk (.bind (.generated .operand 66)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 64))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 64)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 65)), (.move (.generated .operand 66))] true))))))) (Corr.letBind (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl (Corr.cond (lc := [(.mk (.tuple [(.bind (.generated .part 61)), .wild]) none (.copy (.generated .binding 1)))]) (ce := (.move (.generated .part 61))) (lk := []) (Corr.first (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl) (Corr.kIf (la := []) (ta := (.copy (.generated .binding 1))) (lb := [(.mk (.bind (.generated .binding 2)) (some (.pair .bool .nat)) (.pair (.call (.function 15) [(.clone (.generated .binding 0))] false) (.lit (.nat 1))))]) (tb := (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 62)), .wild]) none (.copy (.generated .binding 2)))] (.move (.generated .part 62)))) (.block (.mk [(.mk (.bind (.generated .operand 65)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 63))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 63))))), (.mk (.bind (.generated .operand 66)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 64))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 64)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 65)), (.move (.generated .operand 66))] true))))) (Corr.bOfE (Corr.var rfl rfl)) (Corr.letBind (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 62)), .wild]) none (.copy (.generated .binding 2)))]) (tail := (.move (.generated .part 62))) (Corr.first (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 65)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 63))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 63))))), (.mk (.bind (.generated .operand 66)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 64))]) none (.copy (.generated .binding 2)))] (.move (.generated .part 64)))))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 65)), (.move (.generated .operand 66))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 63))]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 63))) (Corr.second (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 64))]) none (.copy (.generated .binding 2)))]) (tail := (.move (.generated .part 64))) (Corr.second (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))))))))) rfl (Corr.cond (lc := [(.mk (.tuple [(.bind (.generated .part 67)), .wild]) none (.copy (.generated .binding 3)))]) (ce := (.move (.generated .part 67))) (lk := []) (Corr.first (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl) (Corr.kIf (la := []) (ta := (.copy (.generated .binding 3))) (lb := [(.mk (.bind (.generated .binding 6)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 4)) (some (.pair .bool .nat)) (.pair (.call (.function 16) [(.clone (.generated .binding 0))] false) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 68)), .wild]) none (.copy (.generated .binding 4)))] (.cond (.move (.generated .part 68)) (.mk [] (.copy (.generated .binding 4))) (.mk [(.mk (.bind (.generated .binding 5)) (some (.pair .bool .nat)) (.pair (.call (.function 17) [(.clone (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 69)), .wild]) none (.copy (.generated .binding 5)))] (.move (.generated .part 69)))) (.block (.mk [(.mk (.bind (.generated .operand 72)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 70))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 70))))), (.mk (.bind (.generated .operand 73)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 71))]) none (.copy (.generated .binding 5)))] (.move (.generated .part 71)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 72)), (.move (.generated .operand 73))] true)))))))))]) (tb := (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 74)), .wild]) none (.copy (.generated .binding 6)))] (.move (.generated .part 74)))) (.block (.mk [(.mk (.bind (.generated .operand 77)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 75))]) none (.copy (.generated .binding 3)))] (.move (.generated .part 75))))), (.mk (.bind (.generated .operand 78)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 76))]) none (.copy (.generated .binding 6)))] (.move (.generated .part 76)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 77)), (.move (.generated .operand 78))] true))))) (Corr.bOfE (Corr.var rfl rfl)) (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .binding 4)) (some (.pair .bool .nat)) (.pair (.call (.function 16) [(.clone (.generated .binding 0))] false) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 68)), .wild]) none (.copy (.generated .binding 4)))]) (tail := (.cond (.move (.generated .part 68)) (.mk [] (.copy (.generated .binding 4))) (.mk [(.mk (.bind (.generated .binding 5)) (some (.pair .bool .nat)) (.pair (.call (.function 17) [(.clone (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 69)), .wild]) none (.copy (.generated .binding 5)))] (.move (.generated .part 69)))) (.block (.mk [(.mk (.bind (.generated .operand 72)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 70))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 70))))), (.mk (.bind (.generated .operand 73)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 71))]) none (.copy (.generated .binding 5)))] (.move (.generated .part 71)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 72)), (.move (.generated .operand 73))] true))))))) (Corr.letBind (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl (Corr.cond (lc := [(.mk (.tuple [(.bind (.generated .part 68)), .wild]) none (.copy (.generated .binding 4)))]) (ce := (.move (.generated .part 68))) (lk := []) (Corr.first (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl) (Corr.kIf (la := []) (ta := (.copy (.generated .binding 4))) (lb := [(.mk (.bind (.generated .binding 5)) (some (.pair .bool .nat)) (.pair (.call (.function 17) [(.clone (.generated .binding 0))] false) (.lit (.nat 1))))]) (tb := (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 69)), .wild]) none (.copy (.generated .binding 5)))] (.move (.generated .part 69)))) (.block (.mk [(.mk (.bind (.generated .operand 72)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 70))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 70))))), (.mk (.bind (.generated .operand 73)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 71))]) none (.copy (.generated .binding 5)))] (.move (.generated .part 71)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 72)), (.move (.generated .operand 73))] true))))) (Corr.bOfE (Corr.var rfl rfl)) (Corr.letBind (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 69)), .wild]) none (.copy (.generated .binding 5)))]) (tail := (.move (.generated .part 69))) (Corr.first (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 72)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 70))]) none (.copy (.generated .binding 4)))] (.move (.generated .part 70))))), (.mk (.bind (.generated .operand 73)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 71))]) none (.copy (.generated .binding 5)))] (.move (.generated .part 71)))))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 72)), (.move (.generated .operand 73))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 70))]) none (.copy (.generated .binding 4)))]) (tail := (.move (.generated .part 70))) (Corr.second (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 71))]) none (.copy (.generated .binding 5)))]) (tail := (.move (.generated .part 71))) (Corr.second (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))))))))) rfl (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 74)), .wild]) none (.copy (.generated .binding 6)))]) (tail := (.move (.generated .part 74))) (Corr.first (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 77)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 75))]) none (.copy (.generated .binding 3)))] (.move (.generated .part 75))))), (.mk (.bind (.generated .operand 78)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 76))]) none (.copy (.generated .binding 6)))] (.move (.generated .part 76)))))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 77)), (.move (.generated .operand 78))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 75))]) none (.copy (.generated .binding 3)))]) (tail := (.move (.generated .part 75))) (Corr.second (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 76))]) none (.copy (.generated .binding 6)))]) (tail := (.move (.generated .part 76))) (Corr.second (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))))))))) rfl (Corr.cond (lc := [(.mk (.tuple [(.bind (.generated .part 79)), .wild]) none (.copy (.generated .binding 7)))]) (ce := (.move (.generated .part 79))) (lk := []) (Corr.first (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl) (Corr.kIf (la := []) (ta := (.copy (.generated .binding 7))) (lb := [(.mk (.bind (.generated .binding 14)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 10)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 8)) (some (.pair .bool .nat)) (.pair (.call (.function 18) [(.clone (.generated .binding 0))] true) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 80)), .wild]) none (.copy (.generated .binding 8)))] (.cond (.move (.generated .part 80)) (.mk [] (.copy (.generated .binding 8))) (.mk [(.mk (.bind (.generated .binding 9)) (some (.pair .bool .nat)) (.pair (.call (.function 19) [(.clone (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 81)), .wild]) none (.copy (.generated .binding 9)))] (.move (.generated .part 81)))) (.block (.mk [(.mk (.bind (.generated .operand 84)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 82))]) none (.copy (.generated .binding 8)))] (.move (.generated .part 82))))), (.mk (.bind (.generated .operand 85)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 83))]) none (.copy (.generated .binding 9)))] (.move (.generated .part 83)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 84)), (.move (.generated .operand 85))] true))))))))), (.mk (.tuple [(.bind (.generated .part 86)), .wild]) none (.copy (.generated .binding 10)))] (.cond (.move (.generated .part 86)) (.mk [] (.copy (.generated .binding 10))) (.mk [(.mk (.bind (.generated .binding 13)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 11)) (some (.pair .bool .nat)) (.pair (.call (.function 20) [(.clone (.generated .binding 0))] false) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 87)), .wild]) none (.copy (.generated .binding 11)))] (.cond (.move (.generated .part 87)) (.mk [] (.copy (.generated .binding 11))) (.mk [(.mk (.bind (.generated .binding 12)) (some (.pair .bool .nat)) (.pair (.call (.function 21) [(.move (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 88)), .wild]) none (.copy (.generated .binding 12)))] (.move (.generated .part 88)))) (.block (.mk [(.mk (.bind (.generated .operand 91)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 89))]) none (.copy (.generated .binding 11)))] (.move (.generated .part 89))))), (.mk (.bind (.generated .operand 92)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 90))]) none (.copy (.generated .binding 12)))] (.move (.generated .part 90)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] true)))))))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 93)), .wild]) none (.copy (.generated .binding 13)))] (.move (.generated .part 93)))) (.block (.mk [(.mk (.bind (.generated .operand 96)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 94))]) none (.copy (.generated .binding 10)))] (.move (.generated .part 94))))), (.mk (.bind (.generated .operand 97)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 95))]) none (.copy (.generated .binding 13)))] (.move (.generated .part 95)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 96)), (.move (.generated .operand 97))] true)))))))))]) (tb := (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 98)), .wild]) none (.copy (.generated .binding 14)))] (.move (.generated .part 98)))) (.block (.mk [(.mk (.bind (.generated .operand 101)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 99))]) none (.copy (.generated .binding 7)))] (.move (.generated .part 99))))), (.mk (.bind (.generated .operand 102)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 100))]) none (.copy (.generated .binding 14)))] (.move (.generated .part 100)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 101)), (.move (.generated .operand 102))] true))))) (Corr.bOfE (Corr.var rfl rfl)) (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .binding 10)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 8)) (some (.pair .bool .nat)) (.pair (.call (.function 18) [(.clone (.generated .binding 0))] true) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 80)), .wild]) none (.copy (.generated .binding 8)))] (.cond (.move (.generated .part 80)) (.mk [] (.copy (.generated .binding 8))) (.mk [(.mk (.bind (.generated .binding 9)) (some (.pair .bool .nat)) (.pair (.call (.function 19) [(.clone (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 81)), .wild]) none (.copy (.generated .binding 9)))] (.move (.generated .part 81)))) (.block (.mk [(.mk (.bind (.generated .operand 84)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 82))]) none (.copy (.generated .binding 8)))] (.move (.generated .part 82))))), (.mk (.bind (.generated .operand 85)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 83))]) none (.copy (.generated .binding 9)))] (.move (.generated .part 83)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 84)), (.move (.generated .operand 85))] true))))))))), (.mk (.tuple [(.bind (.generated .part 86)), .wild]) none (.copy (.generated .binding 10)))]) (tail := (.cond (.move (.generated .part 86)) (.mk [] (.copy (.generated .binding 10))) (.mk [(.mk (.bind (.generated .binding 13)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 11)) (some (.pair .bool .nat)) (.pair (.call (.function 20) [(.clone (.generated .binding 0))] false) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 87)), .wild]) none (.copy (.generated .binding 11)))] (.cond (.move (.generated .part 87)) (.mk [] (.copy (.generated .binding 11))) (.mk [(.mk (.bind (.generated .binding 12)) (some (.pair .bool .nat)) (.pair (.call (.function 21) [(.move (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 88)), .wild]) none (.copy (.generated .binding 12)))] (.move (.generated .part 88)))) (.block (.mk [(.mk (.bind (.generated .operand 91)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 89))]) none (.copy (.generated .binding 11)))] (.move (.generated .part 89))))), (.mk (.bind (.generated .operand 92)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 90))]) none (.copy (.generated .binding 12)))] (.move (.generated .part 90)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] true)))))))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 93)), .wild]) none (.copy (.generated .binding 13)))] (.move (.generated .part 93)))) (.block (.mk [(.mk (.bind (.generated .operand 96)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 94))]) none (.copy (.generated .binding 10)))] (.move (.generated .part 94))))), (.mk (.bind (.generated .operand 97)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 95))]) none (.copy (.generated .binding 13)))] (.move (.generated .part 95)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 96)), (.move (.generated .operand 97))] true))))))) (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .binding 8)) (some (.pair .bool .nat)) (.pair (.call (.function 18) [(.clone (.generated .binding 0))] true) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 80)), .wild]) none (.copy (.generated .binding 8)))]) (tail := (.cond (.move (.generated .part 80)) (.mk [] (.copy (.generated .binding 8))) (.mk [(.mk (.bind (.generated .binding 9)) (some (.pair .bool .nat)) (.pair (.call (.function 19) [(.clone (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 81)), .wild]) none (.copy (.generated .binding 9)))] (.move (.generated .part 81)))) (.block (.mk [(.mk (.bind (.generated .operand 84)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 82))]) none (.copy (.generated .binding 8)))] (.move (.generated .part 82))))), (.mk (.bind (.generated .operand 85)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 83))]) none (.copy (.generated .binding 9)))] (.move (.generated .part 83)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 84)), (.move (.generated .operand 85))] true))))))) (Corr.letBind (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl (Corr.cond (lc := [(.mk (.tuple [(.bind (.generated .part 80)), .wild]) none (.copy (.generated .binding 8)))]) (ce := (.move (.generated .part 80))) (lk := []) (Corr.first (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl) (Corr.kIf (la := []) (ta := (.copy (.generated .binding 8))) (lb := [(.mk (.bind (.generated .binding 9)) (some (.pair .bool .nat)) (.pair (.call (.function 19) [(.clone (.generated .binding 0))] false) (.lit (.nat 1))))]) (tb := (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 81)), .wild]) none (.copy (.generated .binding 9)))] (.move (.generated .part 81)))) (.block (.mk [(.mk (.bind (.generated .operand 84)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 82))]) none (.copy (.generated .binding 8)))] (.move (.generated .part 82))))), (.mk (.bind (.generated .operand 85)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 83))]) none (.copy (.generated .binding 9)))] (.move (.generated .part 83)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 84)), (.move (.generated .operand 85))] true))))) (Corr.bOfE (Corr.var rfl rfl)) (Corr.letBind (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 81)), .wild]) none (.copy (.generated .binding 9)))]) (tail := (.move (.generated .part 81))) (Corr.first (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 84)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 82))]) none (.copy (.generated .binding 8)))] (.move (.generated .part 82))))), (.mk (.bind (.generated .operand 85)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 83))]) none (.copy (.generated .binding 9)))] (.move (.generated .part 83)))))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 84)), (.move (.generated .operand 85))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 82))]) none (.copy (.generated .binding 8)))]) (tail := (.move (.generated .part 82))) (Corr.second (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 83))]) none (.copy (.generated .binding 9)))]) (tail := (.move (.generated .part 83))) (Corr.second (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))))))))) rfl (Corr.cond (lc := [(.mk (.tuple [(.bind (.generated .part 86)), .wild]) none (.copy (.generated .binding 10)))]) (ce := (.move (.generated .part 86))) (lk := []) (Corr.first (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl) (Corr.kIf (la := []) (ta := (.copy (.generated .binding 10))) (lb := [(.mk (.bind (.generated .binding 13)) (some (.pair .bool .nat)) (.block (.mk [(.mk (.bind (.generated .binding 11)) (some (.pair .bool .nat)) (.pair (.call (.function 20) [(.clone (.generated .binding 0))] false) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 87)), .wild]) none (.copy (.generated .binding 11)))] (.cond (.move (.generated .part 87)) (.mk [] (.copy (.generated .binding 11))) (.mk [(.mk (.bind (.generated .binding 12)) (some (.pair .bool .nat)) (.pair (.call (.function 21) [(.move (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 88)), .wild]) none (.copy (.generated .binding 12)))] (.move (.generated .part 88)))) (.block (.mk [(.mk (.bind (.generated .operand 91)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 89))]) none (.copy (.generated .binding 11)))] (.move (.generated .part 89))))), (.mk (.bind (.generated .operand 92)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 90))]) none (.copy (.generated .binding 12)))] (.move (.generated .part 90)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] true)))))))))]) (tb := (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 93)), .wild]) none (.copy (.generated .binding 13)))] (.move (.generated .part 93)))) (.block (.mk [(.mk (.bind (.generated .operand 96)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 94))]) none (.copy (.generated .binding 10)))] (.move (.generated .part 94))))), (.mk (.bind (.generated .operand 97)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 95))]) none (.copy (.generated .binding 13)))] (.move (.generated .part 95)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 96)), (.move (.generated .operand 97))] true))))) (Corr.bOfE (Corr.var rfl rfl)) (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .binding 11)) (some (.pair .bool .nat)) (.pair (.call (.function 20) [(.clone (.generated .binding 0))] false) (.lit (.nat 1)))), (.mk (.tuple [(.bind (.generated .part 87)), .wild]) none (.copy (.generated .binding 11)))]) (tail := (.cond (.move (.generated .part 87)) (.mk [] (.copy (.generated .binding 11))) (.mk [(.mk (.bind (.generated .binding 12)) (some (.pair .bool .nat)) (.pair (.call (.function 21) [(.move (.generated .binding 0))] false) (.lit (.nat 1))))] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 88)), .wild]) none (.copy (.generated .binding 12)))] (.move (.generated .part 88)))) (.block (.mk [(.mk (.bind (.generated .operand 91)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 89))]) none (.copy (.generated .binding 11)))] (.move (.generated .part 89))))), (.mk (.bind (.generated .operand 92)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 90))]) none (.copy (.generated .binding 12)))] (.move (.generated .part 90)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] true))))))) (Corr.letBind (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl (Corr.cond (lc := [(.mk (.tuple [(.bind (.generated .part 87)), .wild]) none (.copy (.generated .binding 11)))]) (ce := (.move (.generated .part 87))) (lk := []) (Corr.first (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl) (Corr.kIf (la := []) (ta := (.copy (.generated .binding 11))) (lb := [(.mk (.bind (.generated .binding 12)) (some (.pair .bool .nat)) (.pair (.call (.function 21) [(.move (.generated .binding 0))] false) (.lit (.nat 1))))]) (tb := (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 88)), .wild]) none (.copy (.generated .binding 12)))] (.move (.generated .part 88)))) (.block (.mk [(.mk (.bind (.generated .operand 91)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 89))]) none (.copy (.generated .binding 11)))] (.move (.generated .part 89))))), (.mk (.bind (.generated .operand 92)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 90))]) none (.copy (.generated .binding 12)))] (.move (.generated .part 90)))))] (.call (.runtime .natAdd) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] true))))) (Corr.bOfE (Corr.var rfl rfl)) (Corr.letBind (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 88)), .wild]) none (.copy (.generated .binding 12)))]) (tail := (.move (.generated .part 88))) (Corr.first (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 91)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 89))]) none (.copy (.generated .binding 11)))] (.move (.generated .part 89))))), (.mk (.bind (.generated .operand 92)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 90))]) none (.copy (.generated .binding 12)))] (.move (.generated .part 90)))))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 89))]) none (.copy (.generated .binding 11)))]) (tail := (.move (.generated .part 89))) (Corr.second (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 90))]) none (.copy (.generated .binding 12)))]) (tail := (.move (.generated .part 90))) (Corr.second (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))))))))) rfl (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 93)), .wild]) none (.copy (.generated .binding 13)))]) (tail := (.move (.generated .part 93))) (Corr.first (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 96)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 94))]) none (.copy (.generated .binding 10)))] (.move (.generated .part 94))))), (.mk (.bind (.generated .operand 97)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 95))]) none (.copy (.generated .binding 13)))] (.move (.generated .part 95)))))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 96)), (.move (.generated .operand 97))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 94))]) none (.copy (.generated .binding 10)))]) (tail := (.move (.generated .part 94))) (Corr.second (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 95))]) none (.copy (.generated .binding 13)))]) (tail := (.move (.generated .part 95))) (Corr.second (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))))))))) rfl (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 98)), .wild]) none (.copy (.generated .binding 14)))]) (tail := (.move (.generated .part 98))) (Corr.first (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 101)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 99))]) none (.copy (.generated .binding 7)))] (.move (.generated .part 99))))), (.mk (.bind (.generated .operand 102)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 100))]) none (.copy (.generated .binding 14)))] (.move (.generated .part 100)))))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 101)), (.move (.generated .operand 102))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 99))]) none (.copy (.generated .binding 7)))]) (tail := (.move (.generated .part 99))) (Corr.second (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 100))]) none (.copy (.generated .binding 14)))]) (tail := (.move (.generated .part 100))) (Corr.second (ta := .bool) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))))))))) rfl))⟩⟩ - -theorem fun12 : FunOK program krate flags 12 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 3 0) [(.move (.generated .binding 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0))]), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))))))))) rfl)⟩⟩ - -theorem fun13 : FunOK program krate flags 13 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 103)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 104)) none (.lit (.nat 3)))], (.cond (.call (.runtime .natLe) [(.move (.generated .operand 103)), (.move (.generated .operand 104))] false) (.mk [(.mk (.bind (.generated .operand 105)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 106)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 105)), (.move (.generated .operand 106))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 110)) none (.cond (.call (.function 30) [(.clone (.generated .binding 0))] false) (.mk [(.mk (.bind (.generated .operand 108)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 107))]) (.mk [] (.move (.generated .part 107))))])), (.mk (.bind (.generated .operand 109)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 108)), (.move (.generated .operand 109))] false) (.mk [] (.cond (.call (.function 31) [(.clone (.generated .binding 0))] false) (.mk [] (.call (.function 32) [(.move (.generated .binding 0))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))))] (.call (.runtime .boolNot) [(.move (.generated .operand 110))] false)))) (.mk [] (.lit (.bool false)))), [(1, .nat, (some 1)), (0, (.adt 0), (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 103)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 104)) none (.lit (.nat 3)))]) (ce := (.call (.runtime .natLe) [(.move (.generated .operand 103)), (.move (.generated .operand 104))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 105)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 106)) none (.lit (.nat 3)))]) (ta := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 105)), (.move (.generated .operand 106))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 110)) none (.cond (.call (.function 30) [(.clone (.generated .binding 0))] false) (.mk [(.mk (.bind (.generated .operand 108)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 107))]) (.mk [] (.move (.generated .part 107))))])), (.mk (.bind (.generated .operand 109)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 108)), (.move (.generated .operand 109))] false) (.mk [] (.cond (.call (.function 31) [(.clone (.generated .binding 0))] false) (.mk [] (.call (.function 32) [(.move (.generated .binding 0))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))))] (.call (.runtime .boolNot) [(.move (.generated .operand 110))] false)))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 105)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 106)) none (.lit (.nat 3)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 105)), (.move (.generated .operand 106))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 110)) none (.cond (.call (.function 30) [(.clone (.generated .binding 0))] false) (.mk [(.mk (.bind (.generated .operand 108)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 107))]) (.mk [] (.move (.generated .part 107))))])), (.mk (.bind (.generated .operand 109)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 108)), (.move (.generated .operand 109))] false) (.mk [] (.cond (.call (.function 31) [(.clone (.generated .binding 0))] false) (.mk [] (.call (.function 32) [(.move (.generated .binding 0))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))))]) (tb := (.call (.runtime .boolNot) [(.move (.generated .operand 110))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.prim (ts := [.bool]) (Corr.opsCons (Corr.eOfBNil (Corr.cond (lc := []) (ce := (.call (.function 30) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 108)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 107))]) (.mk [] (.move (.generated .part 107))))])), (.mk (.bind (.generated .operand 109)) none (.lit (.nat 1)))]) (ta := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 108)), (.move (.generated .operand 109))] false) (.mk [] (.cond (.call (.function 31) [(.clone (.generated .binding 0))] false) (.mk [] (.call (.function 32) [(.move (.generated .binding 0))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false))))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 108)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 107))]) (.mk [] (.move (.generated .part 107))))])), (.mk (.bind (.generated .operand 109)) none (.lit (.nat 1)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 108)), (.move (.generated .operand 109))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 107))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 31) [(.clone (.generated .binding 0))] false) (.mk [] (.call (.function 32) [(.move (.generated .binding 0))] false)) (.mk [] (.lit (.bool false))))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := []) (ce := (.call (.function 31) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 32) [(.move (.generated .binding 0))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.bOfE (Corr.buildConst rfl))))) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl))) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ - -theorem fun14 : FunOK program krate flags 14 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 112)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 111)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 111))))])), (.mk (.bind (.generated .operand 113)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 112)), (.move (.generated .operand 113))] false) (.mk [] (.call (.function 31) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 114)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 114))))])] false)) (.mk [] (.lit (.bool false)))), [(0, (.adt 3), (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 112)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 111)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 111))))])), (.mk (.bind (.generated .operand 113)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 112)), (.move (.generated .operand 113))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 111))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 31) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 114)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 114))))])] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 114))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ - -theorem fun15 : FunOK program krate flags 15 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 116)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 115)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 115))))])), (.mk (.bind (.generated .operand 117)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 116)), (.move (.generated .operand 117))] false) (.mk [] (.call (.function 32) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 118)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 118))))])] false)) (.mk [] (.lit (.bool false)))), [(0, (.adt 3), (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 116)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 115)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 115))))])), (.mk (.bind (.generated .operand 117)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 116)), (.move (.generated .operand 117))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 115))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 32) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 118)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 118))))])] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 118))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ - -theorem fun16 : FunOK program krate flags 16 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 120)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 119)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 119))))])), (.mk (.bind (.generated .operand 121)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 120)), (.move (.generated .operand 121))] false) (.mk [] (.call (.function 33) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 122)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 122))))])] false)) (.mk [] (.lit (.bool false)))), [(0, (.adt 3), (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 120)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 119)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 119))))])), (.mk (.bind (.generated .operand 121)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 120)), (.move (.generated .operand 121))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 119))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 33) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 122)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 122))))])] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 122))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ - -theorem fun17 : FunOK program krate flags 17 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 124)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 123)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 123))))])), (.mk (.bind (.generated .operand 125)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 124)), (.move (.generated .operand 125))] false) (.mk [] (.call (.function 34) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 126)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 126))))])] false)) (.mk [] (.lit (.bool false)))), [(0, (.adt 3), (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 124)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 123)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 123))))])), (.mk (.bind (.generated .operand 125)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 124)), (.move (.generated .operand 125))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 123))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 34) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 126)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 126))))])] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 126))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ - -theorem fun18 : FunOK program krate flags 18 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 128)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 127)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 127))))])), (.mk (.bind (.generated .operand 129)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 128)), (.move (.generated .operand 129))] false) (.mk [(.mk (.bind (.generated .operand 140)) none (.lit (.nat 2))), (.mk (.bind (.generated .operand 141)) none (.block (.mk [(.mk (.bind (.generated .operand 138)) none (.block (.mk [(.mk (.bind (.generated .operand 135)) none (.block (.mk [(.mk (.bind (.generated .operand 132)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 130)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 130))))])), (.mk (.bind (.generated .operand 133)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 131)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 131))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 132)), (.move (.generated .operand 133))] true)))), (.mk (.bind (.generated .operand 136)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 134)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 134))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 135)), (.move (.generated .operand 136))] true)))), (.mk (.bind (.generated .operand 139)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 137)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 137))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 138)), (.move (.generated .operand 139))] true))))] (.succeed (.call (.runtime .natLe) [(.move (.generated .operand 140)), (.move (.generated .operand 141))] false))) (.mk [] (.succeed (.lit (.bool false))))), [(0, (.adt 3), (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 128)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 127)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 127))))])), (.mk (.bind (.generated .operand 129)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 128)), (.move (.generated .operand 129))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 127))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 140)) none (.lit (.nat 2))), (.mk (.bind (.generated .operand 141)) none (.block (.mk [(.mk (.bind (.generated .operand 138)) none (.block (.mk [(.mk (.bind (.generated .operand 135)) none (.block (.mk [(.mk (.bind (.generated .operand 132)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 130)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 130))))])), (.mk (.bind (.generated .operand 133)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 131)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 131))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 132)), (.move (.generated .operand 133))] true)))), (.mk (.bind (.generated .operand 136)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 134)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 134))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 135)), (.move (.generated .operand 136))] true)))), (.mk (.bind (.generated .operand 139)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 137)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 137))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 138)), (.move (.generated .operand 139))] true))))]) (ta := (.succeed (.call (.runtime .natLe) [(.move (.generated .operand 140)), (.move (.generated .operand 141))] false))) (lb := []) (tb := (.succeed (.lit (.bool false)))) (Corr.fOfB (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 138)) none (.block (.mk [(.mk (.bind (.generated .operand 135)) none (.block (.mk [(.mk (.bind (.generated .operand 132)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 130)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 130))))])), (.mk (.bind (.generated .operand 133)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 131)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 131))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 132)), (.move (.generated .operand 133))] true)))), (.mk (.bind (.generated .operand 136)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 134)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 134))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 135)), (.move (.generated .operand 136))] true)))), (.mk (.bind (.generated .operand 139)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 137)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 137))))]))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 138)), (.move (.generated .operand 139))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 135)) none (.block (.mk [(.mk (.bind (.generated .operand 132)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 130)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 130))))])), (.mk (.bind (.generated .operand 133)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 131)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 131))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 132)), (.move (.generated .operand 133))] true)))), (.mk (.bind (.generated .operand 136)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 134)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 134))))]))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 135)), (.move (.generated .operand 136))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 132)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 130)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 130))))])), (.mk (.bind (.generated .operand 133)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 131)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 131))))]))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 132)), (.move (.generated .operand 133))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 130))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 131))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 134))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 137))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.fOfB (Corr.bOfE (Corr.buildConst rfl)))))⟩⟩ - -theorem fun19 : FunOK program krate flags 19 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 143)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 142)), .wild, .wild]) (.mk [] (.move (.generated .part 142))))])), (.mk (.bind (.generated .operand 144)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 143)), (.move (.generated .operand 144))] false) (.mk [(.mk (.bind (.generated .operand 146)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 145)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 145))))])), (.mk (.bind (.generated .operand 147)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 146)), (.move (.generated .operand 147))] false) (.mk [(.mk (.bind (.generated .operand 151)) none (.block (.mk [(.mk (.bind (.generated .holder 150)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 149)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 149))))]))] (.matchOn (.move (.generated .holder 150)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 148))]) (.mk [] (.move (.generated .part 148))))])))), (.mk (.bind (.generated .operand 152)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 151)), (.move (.generated .operand 152))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))), [(0, (.adt 3), (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 143)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 142)), .wild, .wild]) (.mk [] (.move (.generated .part 142))))])), (.mk (.bind (.generated .operand 144)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 143)), (.move (.generated .operand 144))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 142))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 146)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 145)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 145))))])), (.mk (.bind (.generated .operand 147)) none (.lit (.nat 1)))]) (ta := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 146)), (.move (.generated .operand 147))] false) (.mk [(.mk (.bind (.generated .operand 151)) none (.block (.mk [(.mk (.bind (.generated .holder 150)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 149)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 149))))]))] (.matchOn (.move (.generated .holder 150)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 148))]) (.mk [] (.move (.generated .part 148))))])))), (.mk (.bind (.generated .operand 152)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 151)), (.move (.generated .operand 152))] false)) (.mk [] (.lit (.bool false))))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 146)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 145)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 145))))])), (.mk (.bind (.generated .operand 147)) none (.lit (.nat 1)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 146)), (.move (.generated .operand 147))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 145))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 151)) none (.block (.mk [(.mk (.bind (.generated .holder 150)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 149)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 149))))]))] (.matchOn (.move (.generated .holder 150)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 148))]) (.mk [] (.move (.generated .part 148))))])))), (.mk (.bind (.generated .operand 152)) none (.lit (.nat 1)))]) (ta := (.call (.runtime .natEq) [(.move (.generated .operand 151)), (.move (.generated .operand 152))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 150)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 149)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 149))))]))]) (tail := (.matchOn (.move (.generated .holder 150)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 148))]) (.mk [] (.move (.generated .part 148))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 148))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 149))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ - -theorem fun20 : FunOK program krate flags 20 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 154)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 153)), .wild]) (.mk [] (.move (.generated .part 153))))])), (.mk (.bind (.generated .operand 155)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 154)), (.move (.generated .operand 155))] false) (.mk [(.mk (.bind (.generated .operand 157)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 156)), .wild, .wild]) (.mk [] (.move (.generated .part 156))))])), (.mk (.bind (.generated .operand 158)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 157)), (.move (.generated .operand 158))] false) (.mk [] (.call (.function 30) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 159)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 159))))])] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))), [(0, (.adt 3), (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 154)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 153)), .wild]) (.mk [] (.move (.generated .part 153))))])), (.mk (.bind (.generated .operand 155)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 154)), (.move (.generated .operand 155))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 153))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 157)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 156)), .wild, .wild]) (.mk [] (.move (.generated .part 156))))])), (.mk (.bind (.generated .operand 158)) none (.lit (.nat 1)))]) (ta := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 157)), (.move (.generated .operand 158))] false) (.mk [] (.call (.function 30) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 159)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 159))))])] false)) (.mk [] (.lit (.bool false))))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 157)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 156)), .wild, .wild]) (.mk [] (.move (.generated .part 156))))])), (.mk (.bind (.generated .operand 158)) none (.lit (.nat 1)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 157)), (.move (.generated .operand 158))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 156))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 30) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 159)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 159))))])] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 159))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ - -theorem fun21 : FunOK program krate flags 21 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 161)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 160))]) (.mk [] (.move (.generated .part 160))))])), (.mk (.bind (.generated .operand 162)) none (.lit (.nat 3)))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 161)), (.move (.generated .operand 162))] false) (.mk [(.mk (.bind (.generated .operand 164)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 163))]) (.mk [] (.move (.generated .part 163))))])), (.mk (.bind (.generated .operand 165)) none (.lit (.nat 0)))] (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 164)), (.move (.generated .operand 165))] false) (.mk [(.mk (.bind (.generated .operand 167)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 166)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 166))))])), (.mk (.bind (.generated .operand 168)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 167)), (.move (.generated .operand 168))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 170)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 169))]) (.mk [] (.move (.generated .part 169))))])), (.mk (.bind (.generated .operand 171)) none (.lit (.nat 1)))] (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 170)), (.move (.generated .operand 171))] false) (.mk [(.mk (.bind (.generated .operand 173)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 172)), .wild, .wild]) (.mk [] (.move (.generated .part 172))))])), (.mk (.bind (.generated .operand 174)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 173)), (.move (.generated .operand 174))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 176)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 175))]) (.mk [] (.move (.generated .part 175))))])), (.mk (.bind (.generated .operand 177)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 176)), (.move (.generated .operand 177))] false) (.mk [(.mk (.bind (.generated .operand 179)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 178)), .wild]) (.mk [] (.move (.generated .part 178))))])), (.mk (.bind (.generated .operand 180)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 179)), (.move (.generated .operand 180))] false)) (.mk [] (.lit (.bool false))))))))) (.mk [] (.lit (.bool false)))), [(0, (.adt 3), (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 161)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 160))]) (.mk [] (.move (.generated .part 160))))])), (.mk (.bind (.generated .operand 162)) none (.lit (.nat 3)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 161)), (.move (.generated .operand 162))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 160))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 164)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 163))]) (.mk [] (.move (.generated .part 163))))])), (.mk (.bind (.generated .operand 165)) none (.lit (.nat 0)))]) (ta := (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 164)), (.move (.generated .operand 165))] false) (.mk [(.mk (.bind (.generated .operand 167)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 166)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 166))))])), (.mk (.bind (.generated .operand 168)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 167)), (.move (.generated .operand 168))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 170)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 169))]) (.mk [] (.move (.generated .part 169))))])), (.mk (.bind (.generated .operand 171)) none (.lit (.nat 1)))] (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 170)), (.move (.generated .operand 171))] false) (.mk [(.mk (.bind (.generated .operand 173)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 172)), .wild, .wild]) (.mk [] (.move (.generated .part 172))))])), (.mk (.bind (.generated .operand 174)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 173)), (.move (.generated .operand 174))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 176)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 175))]) (.mk [] (.move (.generated .part 175))))])), (.mk (.bind (.generated .operand 177)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 176)), (.move (.generated .operand 177))] false) (.mk [(.mk (.bind (.generated .operand 179)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 178)), .wild]) (.mk [] (.move (.generated .part 178))))])), (.mk (.bind (.generated .operand 180)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 179)), (.move (.generated .operand 180))] false)) (.mk [] (.lit (.bool false))))))))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 164)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 163))]) (.mk [] (.move (.generated .part 163))))])), (.mk (.bind (.generated .operand 165)) none (.lit (.nat 0)))]) (ce := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 164)), (.move (.generated .operand 165))] false) (.mk [(.mk (.bind (.generated .operand 167)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 166)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 166))))])), (.mk (.bind (.generated .operand 168)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 167)), (.move (.generated .operand 168))] false)) (.mk [] (.lit (.bool false))))) (lk := []) (Corr.cond (lc := [(.mk (.bind (.generated .operand 164)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 163))]) (.mk [] (.move (.generated .part 163))))])), (.mk (.bind (.generated .operand 165)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 164)), (.move (.generated .operand 165))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 163))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 167)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 166)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 166))))])), (.mk (.bind (.generated .operand 168)) none (.lit (.nat 1)))]) (ta := (.call (.runtime .natEq) [(.move (.generated .operand 167)), (.move (.generated .operand 168))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 166))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 170)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 169))]) (.mk [] (.move (.generated .part 169))))])), (.mk (.bind (.generated .operand 171)) none (.lit (.nat 1)))]) (tb := (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 170)), (.move (.generated .operand 171))] false) (.mk [(.mk (.bind (.generated .operand 173)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 172)), .wild, .wild]) (.mk [] (.move (.generated .part 172))))])), (.mk (.bind (.generated .operand 174)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 173)), (.move (.generated .operand 174))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 176)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 175))]) (.mk [] (.move (.generated .part 175))))])), (.mk (.bind (.generated .operand 177)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 176)), (.move (.generated .operand 177))] false) (.mk [(.mk (.bind (.generated .operand 179)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 178)), .wild]) (.mk [] (.move (.generated .part 178))))])), (.mk (.bind (.generated .operand 180)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 179)), (.move (.generated .operand 180))] false)) (.mk [] (.lit (.bool false))))))) (Corr.bOfE (Corr.buildConst rfl)) (Corr.cond (lc := [(.mk (.bind (.generated .operand 170)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 169))]) (.mk [] (.move (.generated .part 169))))])), (.mk (.bind (.generated .operand 171)) none (.lit (.nat 1)))]) (ce := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 170)), (.move (.generated .operand 171))] false) (.mk [(.mk (.bind (.generated .operand 173)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 172)), .wild, .wild]) (.mk [] (.move (.generated .part 172))))])), (.mk (.bind (.generated .operand 174)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 173)), (.move (.generated .operand 174))] false)) (.mk [] (.lit (.bool false))))) (lk := []) (Corr.cond (lc := [(.mk (.bind (.generated .operand 170)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 169))]) (.mk [] (.move (.generated .part 169))))])), (.mk (.bind (.generated .operand 171)) none (.lit (.nat 1)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 170)), (.move (.generated .operand 171))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 169))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 173)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 172)), .wild, .wild]) (.mk [] (.move (.generated .part 172))))])), (.mk (.bind (.generated .operand 174)) none (.lit (.nat 1)))]) (ta := (.call (.runtime .natEq) [(.move (.generated .operand 173)), (.move (.generated .operand 174))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 172))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 176)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 175))]) (.mk [] (.move (.generated .part 175))))])), (.mk (.bind (.generated .operand 177)) none (.lit (.nat 2)))]) (tb := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 176)), (.move (.generated .operand 177))] false) (.mk [(.mk (.bind (.generated .operand 179)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 178)), .wild]) (.mk [] (.move (.generated .part 178))))])), (.mk (.bind (.generated .operand 180)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 179)), (.move (.generated .operand 180))] false)) (.mk [] (.lit (.bool false))))) (Corr.bOfE (Corr.buildConst rfl)) (Corr.cond (lc := [(.mk (.bind (.generated .operand 176)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 175))]) (.mk [] (.move (.generated .part 175))))])), (.mk (.bind (.generated .operand 177)) none (.lit (.nat 2)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 176)), (.move (.generated .operand 177))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 175))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 179)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 178)), .wild]) (.mk [] (.move (.generated .part 178))))])), (.mk (.bind (.generated .operand 180)) none (.lit (.nat 1)))]) (ta := (.call (.runtime .natEq) [(.move (.generated .operand 179)), (.move (.generated .operand 180))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 178))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))))))) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ - -theorem fun22 : FunOK program krate flags 22 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 35) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 3)) []))), [(0, (.adt 3), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 14) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 35) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 3)) [])) (Corr.build (ts := [(.adt 3)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ - -theorem fun23 : FunOK program krate flags 23 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 15) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 36) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 3)) []))), [(0, (.adt 3), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 15) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 36) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 3)) [])) (Corr.build (ts := [(.adt 3)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ - -theorem fun24 : FunOK program krate flags 24 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 16) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 37) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 3)) []))), [(0, (.adt 3), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 16) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 37) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 3)) [])) (Corr.build (ts := [(.adt 3)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ - -theorem fun25 : FunOK program krate flags 25 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 38) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 3)) []))), [(0, (.adt 3), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 17) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 38) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 3)) [])) (Corr.build (ts := [(.adt 3)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ - -theorem fun26 : FunOK program krate flags 26 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 18) [(.clone (.generated .binding 0))] true) (.mk [] (.succeed (.construct .some [(.call (.function 39) [(.move (.generated .binding 0))] false)]))) (.mk [] (.succeed (.construct (.none (.adt 3)) [])))), [(0, (.adt 3), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 18) [(.clone (.generated .binding 0))] true)) (lk := []) (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.call (.function 39) [(.move (.generated .binding 0))] false)]))) (lb := []) (tb := (.succeed (.construct (.none (.adt 3)) []))) (Corr.fOfB (Corr.build (ts := [(.adt 3)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))⟩⟩ - -theorem fun27 : FunOK program krate flags 27 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 19) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 40) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 3)) []))), [(0, (.adt 3), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 19) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 40) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 3)) [])) (Corr.build (ts := [(.adt 3)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ - -theorem fun28 : FunOK program krate flags 28 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 20) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 41) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 3)) []))), [(0, (.adt 3), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 20) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 41) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 3)) [])) (Corr.build (ts := [(.adt 3)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ - -theorem fun29 : FunOK program krate flags 29 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 21) [(.clone (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.call (.function 42) [(.move (.generated .binding 0))] true)]))) (.mk [] (.succeed (.construct (.none (.adt 3)) [])))), [(0, (.adt 3), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 21) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.call (.function 42) [(.move (.generated .binding 0))] true)]))) (lb := []) (tb := (.succeed (.construct (.none (.adt 3)) []))) (Corr.fOfB (Corr.build (ts := [(.adt 3)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 3)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))⟩⟩ - -theorem fun30 : FunOK program krate flags 30 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 182)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 181)), .wild]) (.mk [] (.move (.generated .part 181))))])), (.mk (.bind (.generated .operand 183)) none (.lit (.nat 90)))], (.call (.runtime .natLt) [(.move (.generated .operand 182)), (.move (.generated .operand 183))] false), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 181))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun31 : FunOK program krate flags 31 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 185)) none (.lit (.nat 380))), (.mk (.bind (.generated .operand 186)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [(.bind (.generated .part 184)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 184))))]))], (.call (.runtime .natLt) [(.move (.generated .operand 185)), (.move (.generated .operand 186))] false), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 184))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun32 : FunOK program krate flags 32 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 188)) none (.lit (.nat 90))), (.mk (.bind (.generated .operand 189)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 187)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 187))))]))], (.call (.runtime .natLt) [(.move (.generated .operand 188)), (.move (.generated .operand 189))] false), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 187))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun33 : FunOK program krate flags 33 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 191)) none (.lit (.nat 20))), (.mk (.bind (.generated .operand 192)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 190)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 190))))]))], (.call (.runtime .natLt) [(.move (.generated .operand 191)), (.move (.generated .operand 192))] false), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 190))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun34 : FunOK program krate flags 34 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 194)) none (.lit (.nat 12))), (.mk (.bind (.generated .operand 195)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, (.bind (.generated .part 193)), .wild, .wild]) (.mk [] (.move (.generated .part 193))))]))], (.call (.runtime .natLt) [(.move (.generated .operand 194)), (.move (.generated .operand 195))] false), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 193))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun35 : FunOK program krate flags 35 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 3 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 196)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 196))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 197)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 197))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 198)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 198))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 199)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 199))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 200)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 200))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 201)), .wild, .wild]) (.mk [] (.move (.generated .part 201))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 202)), .wild]) (.mk [] (.move (.generated .part 202))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 203))]) (.mk [] (.move (.generated .part 203))))])]), [(0, (.adt 3), (some 0))], rfl, rfl, - (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 196))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 197))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 198))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 199))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 200))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 201))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 202))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 203))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ - -theorem fun36 : FunOK program krate flags 36 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 3 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 204)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 204))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 205)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 205))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 206)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 206))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 207)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 207))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 208)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 208))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 209)), .wild, .wild]) (.mk [] (.move (.generated .part 209))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 210)), .wild]) (.mk [] (.move (.generated .part 210))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 211))]) (.mk [] (.move (.generated .part 211))))])]), [(0, (.adt 3), (some 0))], rfl, rfl, - (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 204))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 205))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 206))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 207))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 208))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 209))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 210))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 211))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ - -theorem fun37 : FunOK program krate flags 37 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 3 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 212)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 212))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 213)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 213))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 214)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 214))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 215)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 215))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 216)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 216))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 217)), .wild, .wild]) (.mk [] (.move (.generated .part 217))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 218)), .wild]) (.mk [] (.move (.generated .part 218))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 219))]) (.mk [] (.move (.generated .part 219))))])]), [(0, (.adt 3), (some 0))], rfl, rfl, - (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 212))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 213))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 214))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 215))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 216))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 217))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 218))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 219))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ - -theorem fun38 : FunOK program krate flags 38 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 3 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 220)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 220))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 221)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 221))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 222)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 222))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 223)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 223))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 224)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 224))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 225)), .wild, .wild]) (.mk [] (.move (.generated .part 225))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 226)), .wild]) (.mk [] (.move (.generated .part 226))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 227))]) (.mk [] (.move (.generated .part 227))))])]), [(0, (.adt 3), (some 0))], rfl, rfl, - (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 220))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 221))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 222))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 223))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 224))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 225))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 226))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 227))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ - -theorem fun39 : FunOK program krate flags 39 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 3 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 228)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 228))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 229)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 229))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 230)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 230))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 231)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 231))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 232)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 232))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 233)), .wild, .wild]) (.mk [] (.move (.generated .part 233))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 234)), .wild]) (.mk [] (.move (.generated .part 234))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 235))]) (.mk [] (.move (.generated .part 235))))])]), [(0, (.adt 3), (some 0))], rfl, rfl, - (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 228))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 229))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 230))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 231))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 232))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 233))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 234))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 235))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ - -theorem fun40 : FunOK program krate flags 40 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 3 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 236)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 236))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 237)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 237))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 238)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 238))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 239)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 239))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 240)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 240))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 241)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 241))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 242)), .wild]) (.mk [] (.move (.generated .part 242))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 243))]) (.mk [] (.move (.generated .part 243))))])]), [(0, (.adt 3), (some 0))], rfl, rfl, - (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 236))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 237))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 238))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 239))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 240))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 241))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 242))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 243))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ - -theorem fun41 : FunOK program krate flags 41 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 3 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 244)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 244))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 245)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 245))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 246)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 246))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 247)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 247))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 248)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 248))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 249)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 249))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 250)), .wild, .wild]) (.mk [] (.move (.generated .part 250))))]), (.lit (.nat 1)), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 251))]) (.mk [] (.move (.generated .part 251))))])]), [(0, (.adt 3), (some 0))], rfl, rfl, - (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 244))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 245))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 246))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 247))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 248))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 249))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 250))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 251))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ - -theorem fun42 : FunOK program krate flags 42 := - ⟨_, rfl, .inl ⟨_, _, [], (.succeed (.construct (.adt 3 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [(.bind (.generated .part 252)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 252))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 253)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 253))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 254)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 254))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 255)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 255))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 256)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 256))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 257)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 257))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 258)), .wild, .wild]) (.mk [] (.move (.generated .part 258))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 259)), .wild]) (.mk [] (.move (.generated .part 259))))]), (.block (.mk [(.mk (.bind (.generated .operand 261)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 260))]) (.mk [] (.move (.generated .part 260))))])), (.mk (.bind (.generated .operand 262)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 261)), (.move (.generated .operand 262))] true)))])), [(0, (.adt 3), (some 0))], rfl, rfl, - (Corr.fOfB (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 252))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 253))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 254))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 255))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 256))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 257))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 258))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 259))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 261)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 260))]) (.mk [] (.move (.generated .part 260))))])), (.mk (.bind (.generated .operand 262)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 261)), (.move (.generated .operand 262))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 260))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | 3 => exact fun3 - | 4 => exact fun4 - | 5 => exact fun5 - | 6 => exact fun6 - | 7 => exact fun7 - | 8 => exact fun8 - | 9 => exact fun9 - | 10 => exact fun10 - | 11 => exact fun11 - | 12 => exact fun12 - | 13 => exact fun13 - | 14 => exact fun14 - | 15 => exact fun15 - | 16 => exact fun16 - | 17 => exact fun17 - | 18 => exact fun18 - | 19 => exact fun19 - | 20 => exact fun20 - | 21 => exact fun21 - | 22 => exact fun22 - | 23 => exact fun23 - | 24 => exact fun24 - | 25 => exact fun25 - | 26 => exact fun26 - | 27 => exact fun27 - | 28 => exact fun28 - | 29 => exact fun29 - | 30 => exact fun30 - | 31 => exact fun31 - | 32 => exact fun32 - | 33 => exact fun33 - | 34 => exact fun34 - | 35 => exact fun35 - | 36 => exact fun36 - | 37 => exact fun37 - | 38 => exact fun38 - | 39 => exact fun39 - | 40 => exact fun40 - | 41 => exact fun41 - | 42 => exact fun42 - | _ + 43 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.RustStd diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R3.lean b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R3.lean deleted file mode 100644 index 6851322ae..000000000 --- a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R3.lean +++ /dev/null @@ -1,349 +0,0 @@ -import LexLeanPreservation.Core -import LexLeanPreservation.Values -import LexLeanPreservation.Primitives -import LexLeanPreservation.Fixed -import LexLeanPreservation.Keys -import LexLeanPreservation.Templates -import LexLeanPreservation.Validate -import Reasoning.Budget -import Reasoning.Clinic -import Reasoning.Main -import Reasoning.Planner -import Reasoning.Screening -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -set_option linter.unusedVariables false -namespace LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3 - -def __prog : _root_.LexLeanTarget.TargetSyntax.Program := - { adts := [{ constructors := [[], [], [.nat]] }, - { constructors := [[(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]] }, - { constructors := [[(.pair .nat .nat), (.list (.adt 0))]] }, - { constructors := [[.nat, .nat, .nat, .nat, .nat, .nat]] }], functions := (( - { parameters := [0], types := [.nat], result := .nat, - body := (.«match» .nat (.call 1 [(.var 0)]) [(.arm .ok [1] (.first (.var 1))), (.arm .error [2] (.value .nat (.nat 9)))]) }) ::( - { parameters := [0], types := [.nat], result := (.result (.pair .nat .nat) (.pair .bool .bool)), - body := (.«match» (.result (.pair .nat .nat) (.pair .bool .bool)) (.call 2 [(.var 0)]) [(.arm .ok [1] (.build .ok (.result (.pair .nat .nat) (.pair .bool .bool)) [(.first (.var 1))])), (.arm .error [2] (.build .error (.result (.pair .nat .nat) (.pair .bool .bool)) [(.var 2)]))]) }) ::( - { parameters := [0], types := [.nat], result := (.result (.pair (.pair .nat .nat) (.list (.adt 0))) (.pair .bool .bool)), - body := (.«let» 1 (.pair (.adt 1) .bool) (.call 3 [(.var 0)]) (.«match» (.result (.pair (.pair .nat .nat) (.list (.adt 0))) (.pair .bool .bool)) (.field (.first (.var 1)) 2) [(.arm .some [2] (.build .ok (.result (.pair (.pair .nat .nat) (.list (.adt 0))) (.pair .bool .bool)) [(.build .pair (.pair (.pair .nat .nat) (.list (.adt 0))) [(.first (.var 2)), (.field (.second (.var 2)) 1)])])), (.arm .none [] (.build .error (.result (.pair (.pair .nat .nat) (.list (.adt 0))) (.pair .bool .bool)) [(.call 4 [(.second (.var 1)), (.field (.first (.var 1)) 3)])]))])) }) ::( - { parameters := [0], types := [.nat], result := (.pair (.adt 1) .bool), - body := (.call 5 [(.closure 6 [(.var 0)]), (.prim .natMul [(.var 0), (.value .nat (.nat 8))]), (.call 7 [(.var 0)])]) }) ::( - { parameters := [0, 1], types := [.bool, .bool], result := (.pair .bool .bool), - body := (.cond (.cond (.var 0) (.prim .boolNot [(.var 1)]) (.build .false .bool [])) (.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])]) (.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])) }) ::( - { parameters := [0, 1, 2], types := [(.fn [(.adt 1)] (.option (.adt 1))), .nat, (.adt 1)], result := (.pair (.adt 1) .bool), - body := (.«match» (.pair (.adt 1) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.adt 1) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.adt 1) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.adt 1) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 5 [(.var 0), (.var 3), (.var 4)]))]))]) }) ::( - { parameters := [0, 1], types := [.nat, (.adt 1)], result := (.option (.adt 1)), - body := (.call 8 [(.var 0), (.var 1)]) }) ::( - { parameters := [0], types := [.nat], result := (.adt 1), - body := (.«let» 1 (.list (.adt 2)) (.call 9 [(.closure 10 [(.var 0)]), (.build .nil (.list (.adt 2)) []), (.build .cons (.list (.adt 2)) [(.build (.adt 0) (.adt 2) [(.call 11 [(.var 0)]), (.build .nil (.list (.adt 0)) [])]), (.build .nil (.list (.adt 2)) [])])]) (.build (.adt 0) (.adt 1) [(.var 1), (.call 12 [(.build .nil (.list (.pair .nat .nat)) []), (.call 11 [(.var 0)])]), (.build .none (.option (.pair (.pair .nat .nat) (.adt 2))) []), (.prim .natLt [(.prim .natAdd [(.var 0), (.var 0)]), (.value .nat (.nat 1))]), (.build (.adt 0) (.adt 3) [(.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.prim .length [(.var 1)])])])) }) ::( - { parameters := [0, 1], types := [.nat, (.adt 1)], result := (.option (.adt 1)), - body := (.«match» (.option (.adt 1)) (.field (.var 1) 2) [(.arm .some [2] (.build .none (.option (.adt 1)) [])), (.arm .none [] (.«match» (.option (.adt 1)) (.field (.var 1) 0) [(.arm .nil [] (.build .none (.option (.adt 1)) [])), (.arm .cons [3, 4] (.«match» (.option (.adt 1)) (.call 13 [(.var 0), (.field (.var 3) 0)]) [(.arm .some [5] (.build .some (.option (.adt 1)) [(.build (.adt 0) (.adt 1) [(.var 4), (.field (.var 1) 1), (.build .some (.option (.pair (.pair .nat .nat) (.adt 2))) [(.build .pair (.pair (.pair .nat .nat) (.adt 2)) [(.var 5), (.var 3)])]), (.field (.var 1) 3), (.build (.adt 0) (.adt 3) [(.prim .natAdd [(.field (.field (.var 1) 4) 0), (.value .nat (.nat 1))]), (.field (.field (.var 1) 4) 1), (.field (.field (.var 1) 4) 2), (.field (.field (.var 1) 4) 3), (.prim .natAdd [(.field (.field (.var 1) 4) 4), (.value .nat (.nat 1))]), (.field (.field (.var 1) 4) 5)])])])), (.arm .none [] (.«let» 6 (.list (.adt 2)) (.call 14 [(.var 3)]) (.«let» 7 (.pair (.list (.adt 2)) (.list (.pair .nat .nat))) (.call 15 [(.field (.var 1) 1), (.var 6)]) (.«let» 8 (.list (.adt 2)) (.prim .append [(.var 4), (.first (.var 7))]) (.«let» 9 (.list (.adt 2)) (.call 9 [(.closure 16 [(.var 0)]), (.build .nil (.list (.adt 2)) []), (.var 8)]) (.build .some (.option (.adt 1)) [(.build (.adt 0) (.adt 1) [(.var 9), (.second (.var 7)), (.build .none (.option (.pair (.pair .nat .nat) (.adt 2))) []), (.cond (.field (.var 1) 3) (.build .true .bool []) (.prim .natLt [(.prim .natAdd [(.var 0), (.var 0)]), (.prim .length [(.var 8)])])), (.build (.adt 0) (.adt 3) [(.prim .natAdd [(.field (.field (.var 1) 4) 0), (.value .nat (.nat 1))]), (.prim .natAdd [(.field (.field (.var 1) 4) 1), (.call 17 [(.field (.var 3) 0)])]), (.prim .natAdd [(.field (.field (.var 1) 4) 2), (.prim .length [(.var 6)])]), (.prim .natAdd [(.field (.field (.var 1) 4) 3), (.value .nat (.nat 1))]), (.prim .natAdd [(.field (.field (.var 1) 4) 4), (.value .nat (.nat 1))]), (.cond (.prim .natLt [(.field (.field (.var 1) 4) 5), (.prim .length [(.var 9)])]) (.prim .length [(.var 9)]) (.field (.field (.var 1) 4) 5))])])]))))))]))]))]) }) ::( - { parameters := [0, 1, 2], types := [(.fn [(.list (.adt 2)), (.adt 2)] (.list (.adt 2))), (.list (.adt 2)), (.list (.adt 2))], result := (.list (.adt 2)), - body := (.«match» (.list (.adt 2)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 9 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }) ::( - { parameters := [0, 1, 2], types := [.nat, (.list (.adt 2)), (.adt 2)], result := (.list (.adt 2)), - body := (.cond (.prim .natLt [(.prim .length [(.var 1)]), (.prim .natAdd [(.var 0), (.var 0)])]) (.prim .append [(.var 1), (.build .cons (.list (.adt 2)) [(.var 2), (.build .nil (.list (.adt 2)) [])])]) (.var 1)) }) ::( - { parameters := [0], types := [.nat], result := (.pair .nat .nat), - body := (.build .pair (.pair .nat .nat) [(.value .nat (.nat 0)), (.value .nat (.nat 0))]) }) ::( - { parameters := [0, 1], types := [(.list (.pair .nat .nat)), (.pair .nat .nat)], result := (.list (.pair .nat .nat)), - body := (.«match» (.list (.pair .nat .nat)) (.var 0) [(.arm .nil [] (.build .cons (.list (.pair .nat .nat)) [(.var 1), (.build .nil (.list (.pair .nat .nat)) [])])), (.arm .cons [2, 3] (.«match» (.list (.pair .nat .nat)) (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .cons (.list (.pair .nat .nat)) [(.var 1), (.var 0)])), (.arm .eq [] (.var 0)), (.arm .gt [] (.build .cons (.list (.pair .nat .nat)) [(.var 2), (.call 12 [(.var 3), (.var 1)])]))]))]) }) ::( - { parameters := [0, 1], types := [.nat, (.pair .nat .nat)], result := (.option (.pair .nat .nat)), - body := (.«match» (.option (.pair .nat .nat)) (.call 18 [(.var 1)]) [(.arm .none [] (.build .none (.option (.pair .nat .nat)) [])), (.arm .some [2] (.cond (.call 19 [(.var 0), (.var 2)]) (.build .some (.option (.pair .nat .nat)) [(.var 2)]) (.build .none (.option (.pair .nat .nat)) [])))]) }) ::( - { parameters := [0], types := [(.adt 2)], result := (.list (.adt 2)), - body := (.prim .append [(.call 20 [(.var 0)]), (.prim .append [(.call 21 [(.var 0)]), (.call 22 [(.var 0)])])]) }) ::( - { parameters := [0, 1], types := [(.list (.pair .nat .nat)), (.list (.adt 2))], result := (.pair (.list (.adt 2)) (.list (.pair .nat .nat))), - body := (.call 23 [(.closure 24 []), (.build .pair (.pair (.list (.adt 2)) (.list (.pair .nat .nat))) [(.build .nil (.list (.adt 2)) []), (.var 0)]), (.var 1)]) }) ::( - { parameters := [0, 1, 2], types := [.nat, (.list (.adt 2)), (.adt 2)], result := (.list (.adt 2)), - body := (.cond (.prim .natLt [(.prim .length [(.var 1)]), (.prim .natAdd [(.var 0), (.var 0)])]) (.prim .append [(.var 1), (.build .cons (.list (.adt 2)) [(.var 2), (.build .nil (.list (.adt 2)) [])])]) (.var 1)) }) ::( - { parameters := [0], types := [(.pair .nat .nat)], result := .nat, - body := (.prim .natAdd [(.value .nat (.nat 1)), (.prim .natAdd [(.value .nat (.nat 1)), (.prim .length [(.call 25 [(.var 0)])])])]) }) ::( - { parameters := [0], types := [(.pair .nat .nat)], result := (.option (.pair .nat .nat)), - body := (.build .some (.option (.pair .nat .nat)) [(.var 0)]) }) ::( - { parameters := [0, 1], types := [.nat, (.pair .nat .nat)], result := .bool, - body := (.cond (.prim .natEq [(.second (.var 1)), (.var 0)]) (.prim .natLe [(.first (.var 1)), (.value .nat (.nat 4))]) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 2)], result := (.list (.adt 2)), - body := (.«match» (.list (.adt 2)) (.call 26 [(.field (.var 0) 0), (.build (.adt 0) (.adt 0) [])]) [(.arm .none [] (.build .nil (.list (.adt 2)) [])), (.arm .some [1] (.build .cons (.list (.adt 2)) [(.build (.adt 0) (.adt 2) [(.var 1), (.prim .append [(.field (.var 0) 1), (.build .cons (.list (.adt 0)) [(.build (.adt 0) (.adt 0) []), (.build .nil (.list (.adt 0)) [])])])]), (.build .nil (.list (.adt 2)) [])]))]) }) ::( - { parameters := [0], types := [(.adt 2)], result := (.list (.adt 2)), - body := (.«match» (.list (.adt 2)) (.call 26 [(.field (.var 0) 0), (.build (.adt 1) (.adt 0) [])]) [(.arm .none [] (.build .nil (.list (.adt 2)) [])), (.arm .some [1] (.build .cons (.list (.adt 2)) [(.build (.adt 0) (.adt 2) [(.var 1), (.prim .append [(.field (.var 0) 1), (.build .cons (.list (.adt 0)) [(.build (.adt 1) (.adt 0) []), (.build .nil (.list (.adt 0)) [])])])]), (.build .nil (.list (.adt 2)) [])]))]) }) ::( - { parameters := [0], types := [(.adt 2)], result := (.list (.adt 2)), - body := (.call 27 [(.closure 28 [(.var 0)]), (.build .nil (.list (.adt 2)) []), (.call 25 [(.field (.var 0) 0)])]) }) ::( - { parameters := [0, 1, 2], types := [(.fn [(.pair (.list (.adt 2)) (.list (.pair .nat .nat))), (.adt 2)] (.pair (.list (.adt 2)) (.list (.pair .nat .nat)))), (.pair (.list (.adt 2)) (.list (.pair .nat .nat))), (.list (.adt 2))], result := (.pair (.list (.adt 2)) (.list (.pair .nat .nat))), - body := (.«match» (.pair (.list (.adt 2)) (.list (.pair .nat .nat))) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 23 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }) ::( - { parameters := [0, 1], types := [(.pair (.list (.adt 2)) (.list (.pair .nat .nat))), (.adt 2)], result := (.pair (.list (.adt 2)) (.list (.pair .nat .nat))), - body := (.cond (.call 29 [(.second (.var 0)), (.field (.var 1) 0)]) (.var 0) (.build .pair (.pair (.list (.adt 2)) (.list (.pair .nat .nat))) [(.prim .append [(.first (.var 0)), (.build .cons (.list (.adt 2)) [(.var 1), (.build .nil (.list (.adt 2)) [])])]), (.call 12 [(.second (.var 0)), (.field (.var 1) 0)])])) }) ::( - { parameters := [0], types := [(.pair .nat .nat)], result := (.list .nat), - body := (.build .cons (.list .nat) [(.value .nat (.nat 1)), (.build .cons (.list .nat) [(.value .nat (.nat 2)), (.build .cons (.list .nat) [(.value .nat (.nat 3)), (.build .nil (.list .nat) [])])])]) }) ::( - { parameters := [0, 1], types := [(.pair .nat .nat), (.adt 0)], result := (.option (.pair .nat .nat)), - body := (.«match» (.option (.pair .nat .nat)) (.var 1) [(.arm (.adt 0) [] (.call 30 [(.var 0)])), (.arm (.adt 1) [] (.call 31 [(.var 0)])), (.arm (.adt 2) [2] (.call 32 [(.var 0), (.var 2)]))]) }) ::( - { parameters := [0, 1, 2], types := [(.fn [(.list (.adt 2)), .nat] (.list (.adt 2))), (.list (.adt 2)), (.list .nat)], result := (.list (.adt 2)), - body := (.«match» (.list (.adt 2)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 27 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }) ::( - { parameters := [0, 1, 2], types := [(.adt 2), (.list (.adt 2)), .nat], result := (.list (.adt 2)), - body := (.call 33 [(.var 0), (.var 1), (.var 2)]) }) ::( - { parameters := [0, 1], types := [(.list (.pair .nat .nat)), (.pair .nat .nat)], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .false .bool [])), (.arm .cons [2, 3] (.«match» .bool (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .false .bool [])), (.arm .eq [] (.build .true .bool [])), (.arm .gt [] (.call 29 [(.var 3), (.var 1)]))]))]) }) ::( - { parameters := [0], types := [(.pair .nat .nat)], result := (.option (.pair .nat .nat)), - body := (.cond (.call 34 [(.var 0)]) (.build .some (.option (.pair .nat .nat)) [(.call 35 [(.var 0)])]) (.build .none (.option (.pair .nat .nat)) [])) }) ::( - { parameters := [0], types := [(.pair .nat .nat)], result := (.option (.pair .nat .nat)), - body := (.cond (.call 36 [(.var 0)]) (.build .some (.option (.pair .nat .nat)) [(.call 37 [(.var 0)])]) (.build .none (.option (.pair .nat .nat)) [])) }) ::( - { parameters := [0, 1], types := [(.pair .nat .nat), .nat], result := (.option (.pair .nat .nat)), - body := (.cond (.call 38 [(.var 0), (.var 1)]) (.build .some (.option (.pair .nat .nat)) [(.call 39 [(.var 0), (.var 1)])]) (.build .none (.option (.pair .nat .nat)) [])) }) ::( - { parameters := [0, 1, 2], types := [(.adt 2), (.list (.adt 2)), .nat], result := (.list (.adt 2)), - body := (.«match» (.list (.adt 2)) (.call 26 [(.field (.var 0) 0), (.build (.adt 2) (.adt 0) [(.var 2)])]) [(.arm .none [] (.var 1)), (.arm .some [3] (.prim .append [(.var 1), (.build .cons (.list (.adt 2)) [(.build (.adt 0) (.adt 2) [(.var 3), (.prim .append [(.field (.var 0) 1), (.build .cons (.list (.adt 0)) [(.build (.adt 2) (.adt 0) [(.var 2)]), (.build .nil (.list (.adt 0)) [])])])]), (.build .nil (.list (.adt 2)) [])])]))]) }) ::( - { parameters := [0], types := [(.pair .nat .nat)], result := .bool, - body := (.cond (.prim .natLt [(.first (.var 0)), (.value .nat (.nat 4))]) (.prim .natLe [(.second (.var 0)), (.value .nat (.nat 3))]) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.pair .nat .nat)], result := (.pair .nat .nat), - body := (.build .pair (.pair .nat .nat) [(.value .nat (.nat 4)), (.second (.var 0))]) }) ::( - { parameters := [0], types := [(.pair .nat .nat)], result := .bool, - body := (.cond (.prim .natLt [(.value .nat (.nat 0)), (.second (.var 0))]) (.prim .natLe [(.first (.var 0)), (.value .nat (.nat 4))]) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.pair .nat .nat)], result := (.pair .nat .nat), - body := (.build .pair (.pair .nat .nat) [(.first (.var 0)), (.value .nat (.nat 0))]) }) ::( - { parameters := [0, 1], types := [(.pair .nat .nat), .nat], result := .bool, - body := (.cond (.prim .natLe [(.var 1), (.first (.var 0))]) (.cond (.prim .natLe [(.prim .natAdd [(.second (.var 0)), (.var 1)]), (.value .nat (.nat 3))]) (.prim .natLe [(.first (.var 0)), (.value .nat (.nat 4))]) (.build .false .bool [])) (.build .false .bool [])) }) ::( - { parameters := [0, 1], types := [(.pair .nat .nat), .nat], result := (.pair .nat .nat), - body := (.build .pair (.pair .nat .nat) [(.prim .natSub [(.first (.var 0)), (.var 1)]), (.prim .natAdd [(.second (.var 0)), (.var 1)])]) }) ::[]) } - -def __enc_0 : (Reasoning.Planner.Plan.Step) -> _root_.LexLeanTarget.TargetSyntax.Value - | Reasoning.Planner.Plan.Step.FillA => _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [] - | Reasoning.Planner.Plan.Step.EmptyB => _root_.LexLeanTarget.TargetSyntax.Value.adt 1 [] - | Reasoning.Planner.Plan.Step.Pour __x0 => _root_.LexLeanTarget.TargetSyntax.Value.adt 2 [(_root_.LexLeanTarget.TargetSyntax.Value.nat __x0)] - -def __enc_2 (__s : (Reasoning.Planner.Plan.Node)) : _root_.LexLeanTarget.TargetSyntax.Value := - _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) (__s).state), ((_root_.LexLeanPreservation.encList __enc_0) (__s).trace)] - -def __enc_3 (__s : (Reasoning.Planner.Plan.Ledger)) : _root_.LexLeanTarget.TargetSyntax.Value := - _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).iterations), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).attempts), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).firings), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).expansions), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).verifications), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).frontier)] - -def __enc_1 (__s : (Reasoning.Planner.Plan.Search)) : _root_.LexLeanTarget.TargetSyntax.Value := - _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [((_root_.LexLeanPreservation.encList __enc_2) (__s).frontier), ((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (__s).visited), ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) __enc_2)) (__s).found), (_root_.LexLeanTarget.TargetSyntax.Value.bool (__s).truncated), (__enc_3 (__s).ledger)] - -def __fits_18 (jugs : (Prod Nat Nat)) : Bool := - ((Bool.true && Bool.true) && Bool.true) - -theorem __rel_18 (jugs : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 18 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) jugs)] (_root_.LexLeanPreservation.Rel (__fits_18 jugs) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Reasoning.Planner.Plan.extract jugs))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some) - -def __fits_19 (target : Nat) (r : (Prod Nat Nat)) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (r).2 target) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) - -theorem __rel_19 (target : Nat) (r : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 19 [(_root_.LexLeanTarget.TargetSyntax.Value.nat target), ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) r)] (_root_.LexLeanPreservation.Rel (__fits_19 target r) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Planner.measuresCheck target r))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.ble (r).1 (4 : Nat)))) (Nat.beq (r).2 target) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (r).2 target)) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe (r).1 (4 : Nat)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) - -def __fits_13 (target : Nat) (_ys : (Prod Nat Nat)) : Bool := - (((Bool.true && Bool.true) && (__fits_18 (_ys))) && (match (Reasoning.Planner.Plan.extract (_ys)) with | Option.none => (Bool.true && Bool.true) | Option.some _yv => (((Bool.true && (Bool.true && Bool.true)) && (__fits_19 (target) (_yv))) && (if (Reasoning.Planner.measuresCheck (target) (_yv)) then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) - -attribute [local irreducible] Reasoning.Planner.Plan.extract Reasoning.Planner.measuresCheck in -theorem __rel_13 (target : Nat) (_ys : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 13 [(_root_.LexLeanTarget.TargetSyntax.Value.nat target), ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) _ys)] (_root_.LexLeanPreservation.Rel (__fits_13 target _ys) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Reasoning.Planner.Plan.accept target _ys))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun (__a : (Option (Prod Nat Nat))) => (match __a with | Option.none => (Bool.true && Bool.true) | Option.some _yv => (((Bool.true && (Bool.true && Bool.true)) && (__fits_19 (target) (_yv))) && (if (Reasoning.Planner.measuresCheck (target) (_yv)) then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__a : (Option (Prod Nat Nat))) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (match __a with | Option.none => (Option.none : (Option (Prod Nat Nat))) | Option.some _yv => (if (Reasoning.Planner.measuresCheck (target) (_yv)) then (Option.some (_yv) : (Option (Prod Nat Nat))) else (Option.none : (Option (Prod Nat Nat)))))) (Reasoning.Planner.Plan.extract (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_18 (_ys))) (fun (__a : (Option (Prod Nat Nat))) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) | Option.some _yv => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (if __b then (Option.some (_yv) : (Option (Prod Nat Nat))) else (Option.none : (Option (Prod Nat Nat))))) (Reasoning.Planner.measuresCheck (target) (_yv)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_19 (target) (_yv))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))) - -def __fits_34 (s : (Prod Nat Nat)) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.blt (s).1 (4 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) - -theorem __rel_34 (s : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 34 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) s)] (_root_.LexLeanPreservation.Rel (__fits_34 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Planner.FillA.guard s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.ble (s).2 (3 : Nat)))) (Nat.blt (s).1 (4 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (s).1 (4 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe (s).2 (3 : Nat)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) - -def __fits_35 (s : (Prod Nat Nat)) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_35 (s : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 35 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) s)] (_root_.LexLeanPreservation.Rel (__fits_35 s) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Planner.FillA.conclusion s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) - -def __fits_30 (s : (Prod Nat Nat)) : Bool := - (((Bool.true && Bool.true) && (__fits_34 (s))) && (if (Reasoning.Planner.FillA.guard (s)) then ((((Bool.true && Bool.true) && (__fits_35 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Planner.FillA.conclusion Reasoning.Planner.FillA.guard in -theorem __rel_30 (s : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 30 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) s)] (_root_.LexLeanPreservation.Rel (__fits_30 s) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Reasoning.Planner.FillA.apply s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_35 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (if __b then (Option.some ((Reasoning.Planner.FillA.conclusion (s))) : (Option (Prod Nat Nat))) else (Option.none : (Option (Prod Nat Nat))))) (Reasoning.Planner.FillA.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_34 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_35 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_36 (s : (Prod Nat Nat)) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.blt (0 : Nat) (s).2) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) - -theorem __rel_36 (s : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 36 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) s)] (_root_.LexLeanPreservation.Rel (__fits_36 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Planner.EmptyB.guard s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.ble (s).1 (4 : Nat)))) (Nat.blt (0 : Nat) (s).2) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (0 : Nat) (s).2)) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe (s).1 (4 : Nat)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) - -def __fits_37 (s : (Prod Nat Nat)) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_37 (s : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 37 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) s)] (_root_.LexLeanPreservation.Rel (__fits_37 s) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Planner.EmptyB.conclusion s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) - -def __fits_31 (s : (Prod Nat Nat)) : Bool := - (((Bool.true && Bool.true) && (__fits_36 (s))) && (if (Reasoning.Planner.EmptyB.guard (s)) then ((((Bool.true && Bool.true) && (__fits_37 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Planner.EmptyB.conclusion Reasoning.Planner.EmptyB.guard in -theorem __rel_31 (s : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 31 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) s)] (_root_.LexLeanPreservation.Rel (__fits_31 s) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Reasoning.Planner.EmptyB.apply s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_37 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (if __b then (Option.some ((Reasoning.Planner.EmptyB.conclusion (s))) : (Option (Prod Nat Nat))) else (Option.none : (Option (Prod Nat Nat))))) (Reasoning.Planner.EmptyB.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_36 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_37 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_38 (s : (Prod Nat Nat)) (k : Nat) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.ble k (s).1) then (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((s).2 + k) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.ble ((s).2 + k) (3 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) - -theorem __rel_38 (s : (Prod Nat Nat)) (k : Nat) : _root_.LexLeanPreservation.FunRel __prog 38 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) s), (_root_.LexLeanTarget.TargetSyntax.Value.nat k)] (_root_.LexLeanPreservation.Rel (__fits_38 s k) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Planner.Pour.guard s k))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((s).2 + k) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.ble ((s).2 + k) (3 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && ((Nat.ble ((s).2 + k) (3 : Nat)) && (Nat.ble (s).1 (4 : Nat))))) (Nat.ble k (s).1) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe k (s).1)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.ble (s).1 (4 : Nat)))) (Nat.ble ((s).2 + k) (3 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (s).2 k)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe ((s).2 + k) (3 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe (s).1 (4 : Nat)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) - -def __fits_39 (s : (Prod Nat Nat)) (k : Nat) : Bool := - ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((s).2 + k) 18446744073709551616)) && Bool.true)) && Bool.true) - -theorem __rel_39 (s : (Prod Nat Nat)) (k : Nat) : _root_.LexLeanPreservation.FunRel __prog 39 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) s), (_root_.LexLeanTarget.TargetSyntax.Value.nat k)] (_root_.LexLeanPreservation.Rel (__fits_39 s k) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Planner.Pour.conclusion s k))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub (s).1 k)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (s).2 k)) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) - -def __fits_32 (s : (Prod Nat Nat)) (k : Nat) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && (__fits_38 (s) (k))) && (if (Reasoning.Planner.Pour.guard (s) (k)) then ((((Bool.true && (Bool.true && Bool.true)) && (__fits_39 (s) (k))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Planner.Pour.conclusion Reasoning.Planner.Pour.guard in -theorem __rel_32 (s : (Prod Nat Nat)) (k : Nat) : _root_.LexLeanPreservation.FunRel __prog 32 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) s), (_root_.LexLeanTarget.TargetSyntax.Value.nat k)] (_root_.LexLeanPreservation.Rel (__fits_32 s k) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Reasoning.Planner.Pour.apply s k))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (Bool.true && Bool.true)) && (__fits_39 (s) (k))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (if __b then (Option.some ((Reasoning.Planner.Pour.conclusion (s) (k))) : (Option (Prod Nat Nat))) else (Option.none : (Option (Prod Nat Nat))))) (Reasoning.Planner.Pour.guard (s) (k)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_38 (s) (k))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_39 (s) (k))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_26 (_ys : (Prod Nat Nat)) (_ystep : (Reasoning.Planner.Plan.Step)) : Bool := - (Bool.true && (match _ystep with | Reasoning.Planner.Plan.Step.FillA => ((Bool.true && Bool.true) && (__fits_30 (_ys))) | Reasoning.Planner.Plan.Step.EmptyB => ((Bool.true && Bool.true) && (__fits_31 (_ys))) | Reasoning.Planner.Plan.Step.Pour _yb => ((Bool.true && (Bool.true && Bool.true)) && (__fits_32 (_ys) (_yb))))) - -attribute [local irreducible] Reasoning.Planner.EmptyB.apply Reasoning.Planner.FillA.apply Reasoning.Planner.Pour.apply in -theorem __rel_26 (_ys : (Prod Nat Nat)) (_ystep : (Reasoning.Planner.Plan.Step)) : _root_.LexLeanPreservation.FunRel __prog 26 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) _ys), (__enc_0 _ystep)] (_root_.LexLeanPreservation.Rel (__fits_26 _ys _ystep) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Reasoning.Planner.Plan.fire _ys _ystep))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV __enc_0 (fun (__a : (Reasoning.Planner.Plan.Step)) => (match __a with | Reasoning.Planner.Plan.Step.FillA => ((Bool.true && Bool.true) && (__fits_30 (_ys))) | Reasoning.Planner.Plan.Step.EmptyB => ((Bool.true && Bool.true) && (__fits_31 (_ys))) | Reasoning.Planner.Plan.Step.Pour _yb => ((Bool.true && (Bool.true && Bool.true)) && (__fits_32 (_ys) (_yb))))) (fun (__a : (Reasoning.Planner.Plan.Step)) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (match __a with | Reasoning.Planner.Plan.Step.FillA => (Reasoning.Planner.FillA.apply (_ys)) | Reasoning.Planner.Plan.Step.EmptyB => (Reasoning.Planner.EmptyB.apply (_ys)) | Reasoning.Planner.Plan.Step.Pour _yb => (Reasoning.Planner.Pour.apply (_ys) (_yb)))) _ystep (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (Reasoning.Planner.Plan.Step)) _ => match __a with | Reasoning.Planner.Plan.Step.FillA => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_30 (_ys)))) | Reasoning.Planner.Plan.Step.EmptyB => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_31 (_ys))))) | Reasoning.Planner.Plan.Step.Pour _yb => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_32 (_ys) (_yb)))))))) - -def __fits_20 (_ynode : (Reasoning.Planner.Plan.Node)) : Bool := - (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && (__fits_26 ((_ynode).state) ((Reasoning.Planner.Plan.Step.FillA : (Reasoning.Planner.Plan.Step))))) && (match (Reasoning.Planner.Plan.fire ((_ynode).state) ((Reasoning.Planner.Plan.Step.FillA : (Reasoning.Planner.Plan.Step)))) with | Option.none => (Bool.true && Bool.true) | Option.some _yt => ((((Bool.true && (((Bool.true && ((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true))) - -attribute [local irreducible] Reasoning.Planner.Plan.fire in -theorem __rel_20 (_ynode : (Reasoning.Planner.Plan.Node)) : _root_.LexLeanPreservation.FunRel __prog 20 [(__enc_2 _ynode)] (_root_.LexLeanPreservation.Rel (__fits_20 _ynode) ((_root_.LexLeanPreservation.encList __enc_2) (Reasoning.Planner.Plan.FillA.successors _ynode))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun (__a : (Option (Prod Nat Nat))) => (match __a with | Option.none => (Bool.true && Bool.true) | Option.some _yt => ((((Bool.true && (((Bool.true && ((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true))) (fun (__a : (Option (Prod Nat Nat))) => (_root_.LexLeanPreservation.encList __enc_2) (match __a with | Option.none => ([] : List (Reasoning.Planner.Plan.Node)) | Option.some _yt => (({ state := _yt, trace := (_root_.LexLeanRuntime.append ((_ynode).trace) (((Reasoning.Planner.Plan.Step.FillA : (Reasoning.Planner.Plan.Step)) :: ([] : List (Reasoning.Planner.Plan.Step)))) : (List (Reasoning.Planner.Plan.Step))) } : (Reasoning.Planner.Plan.Node)) :: ([] : List (Reasoning.Planner.Plan.Node))))) (Reasoning.Planner.Plan.fire ((_ynode).state) ((Reasoning.Planner.Plan.Step.FillA : (Reasoning.Planner.Plan.Step)))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil)) (__rel_26 ((_ynode).state) ((Reasoning.Planner.Plan.Step.FillA : (Reasoning.Planner.Plan.Step))))) (fun (__a : (Option (Prod Nat Nat))) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil)) | Option.some _yt => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc __enc_0) (_ynode).trace ((Reasoning.Planner.Plan.Step.FillA : (Reasoning.Planner.Plan.Step)) :: ([] : List (Reasoning.Planner.Plan.Step))))) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_adt) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons))))) - -def __fits_21 (_ynode : (Reasoning.Planner.Plan.Node)) : Bool := - (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && (__fits_26 ((_ynode).state) ((Reasoning.Planner.Plan.Step.EmptyB : (Reasoning.Planner.Plan.Step))))) && (match (Reasoning.Planner.Plan.fire ((_ynode).state) ((Reasoning.Planner.Plan.Step.EmptyB : (Reasoning.Planner.Plan.Step)))) with | Option.none => (Bool.true && Bool.true) | Option.some _yt => ((((Bool.true && (((Bool.true && ((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true))) - -attribute [local irreducible] Reasoning.Planner.Plan.fire in -theorem __rel_21 (_ynode : (Reasoning.Planner.Plan.Node)) : _root_.LexLeanPreservation.FunRel __prog 21 [(__enc_2 _ynode)] (_root_.LexLeanPreservation.Rel (__fits_21 _ynode) ((_root_.LexLeanPreservation.encList __enc_2) (Reasoning.Planner.Plan.EmptyB.successors _ynode))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun (__a : (Option (Prod Nat Nat))) => (match __a with | Option.none => (Bool.true && Bool.true) | Option.some _yt => ((((Bool.true && (((Bool.true && ((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true))) (fun (__a : (Option (Prod Nat Nat))) => (_root_.LexLeanPreservation.encList __enc_2) (match __a with | Option.none => ([] : List (Reasoning.Planner.Plan.Node)) | Option.some _yt => (({ state := _yt, trace := (_root_.LexLeanRuntime.append ((_ynode).trace) (((Reasoning.Planner.Plan.Step.EmptyB : (Reasoning.Planner.Plan.Step)) :: ([] : List (Reasoning.Planner.Plan.Step)))) : (List (Reasoning.Planner.Plan.Step))) } : (Reasoning.Planner.Plan.Node)) :: ([] : List (Reasoning.Planner.Plan.Node))))) (Reasoning.Planner.Plan.fire ((_ynode).state) ((Reasoning.Planner.Plan.Step.EmptyB : (Reasoning.Planner.Plan.Step)))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil)) (__rel_26 ((_ynode).state) ((Reasoning.Planner.Plan.Step.EmptyB : (Reasoning.Planner.Plan.Step))))) (fun (__a : (Option (Prod Nat Nat))) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil)) | Option.some _yt => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc __enc_0) (_ynode).trace ((Reasoning.Planner.Plan.Step.EmptyB : (Reasoning.Planner.Plan.Step)) :: ([] : List (Reasoning.Planner.Plan.Step))))) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_adt) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons))))) - -def __fits_25 (s : (Prod Nat Nat)) : Bool := - ((Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) - -theorem __rel_25 (s : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 25 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) s)] (_root_.LexLeanPreservation.Rel (__fits_25 s) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Planner.Pour.candidates s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) - -def __fits_33 (_ynode : (Reasoning.Planner.Plan.Node)) (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yb : Nat) : Bool := - (((Bool.true && (((Bool.true && Bool.true) && Bool.true) && Bool.true)) && (__fits_26 ((_ynode).state) ((Reasoning.Planner.Plan.Step.Pour (_yb) : (Reasoning.Planner.Plan.Step))))) && (match (Reasoning.Planner.Plan.fire ((_ynode).state) ((Reasoning.Planner.Plan.Step.Pour (_yb) : (Reasoning.Planner.Plan.Step)))) with | Option.none => Bool.true | Option.some _yt => ((Bool.true && (((((Bool.true && (((Bool.true && (((((Bool.true && Bool.true) && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true))) - -attribute [local irreducible] Reasoning.Planner.Plan.fire in -theorem __rel_33 (_ynode : (Reasoning.Planner.Plan.Node)) (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yb : Nat) : _root_.LexLeanPreservation.FunRel __prog 33 [(__enc_2 _ynode), ((_root_.LexLeanPreservation.encList __enc_2) _yacc), (_root_.LexLeanTarget.TargetSyntax.Value.nat _yb)] (_root_.LexLeanPreservation.Rel (__fits_33 _ynode _yacc _yb) ((_root_.LexLeanPreservation.encList __enc_2) (Reasoning.Planner.Plan.Pour.collect _ynode _yacc _yb))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun (__a : (Option (Prod Nat Nat))) => (match __a with | Option.none => Bool.true | Option.some _yt => ((Bool.true && (((((Bool.true && (((Bool.true && (((((Bool.true && Bool.true) && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true))) (fun (__a : (Option (Prod Nat Nat))) => (_root_.LexLeanPreservation.encList __enc_2) (match __a with | Option.none => _yacc | Option.some _yt => (_root_.LexLeanRuntime.append (_yacc) ((({ state := _yt, trace := (_root_.LexLeanRuntime.append ((_ynode).trace) (((Reasoning.Planner.Plan.Step.Pour (_yb) : (Reasoning.Planner.Plan.Step)) :: ([] : List (Reasoning.Planner.Plan.Step)))) : (List (Reasoning.Planner.Plan.Step))) } : (Reasoning.Planner.Plan.Node)) :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))))) (Reasoning.Planner.Plan.fire ((_ynode).state) ((Reasoning.Planner.Plan.Step.Pour (_yb) : (Reasoning.Planner.Plan.Step)))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil)) (__rel_26 ((_ynode).state) ((Reasoning.Planner.Plan.Step.Pour (_yb) : (Reasoning.Planner.Plan.Step))))) (fun (__a : (Option (Prod Nat Nat))) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | Option.some _yt => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_adt) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc __enc_0) (_ynode).trace ((Reasoning.Planner.Plan.Step.Pour (_yb) : (Reasoning.Planner.Plan.Step)) :: ([] : List (Reasoning.Planner.Plan.Step))))) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_adt) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc __enc_2) _yacc (({ state := _yt, trace := (_root_.LexLeanRuntime.append ((_ynode).trace) (((Reasoning.Planner.Plan.Step.Pour (_yb) : (Reasoning.Planner.Plan.Step)) :: ([] : List (Reasoning.Planner.Plan.Step)))) : (List (Reasoning.Planner.Plan.Step))) } : (Reasoning.Planner.Plan.Node)) :: ([] : List (Reasoning.Planner.Plan.Node))))))))) - -def __fits_28 (_ynode : (Reasoning.Planner.Plan.Node)) (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yb : Nat) : Bool := - ((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_33 (_ynode) (_yacc) (_yb))) - -attribute [local irreducible] Reasoning.Planner.Plan.Pour.collect in -theorem __rel_28 (_ynode : (Reasoning.Planner.Plan.Node)) (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yb : Nat) : _root_.LexLeanPreservation.FunRel __prog 28 [(__enc_2 _ynode), ((_root_.LexLeanPreservation.encList __enc_2) _yacc), (_root_.LexLeanTarget.TargetSyntax.Value.nat _yb)] (_root_.LexLeanPreservation.Rel (__fits_28 _ynode _yacc _yb) ((_root_.LexLeanPreservation.encList __enc_2) ((Reasoning.Planner.Plan.Pour.collect (_ynode) (_yacc) (_yb))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (__rel_33 (_ynode) (_yacc) (_yb))) - -def __fits_22 (_ynode : (Reasoning.Planner.Plan.Node)) : Bool := - (((Bool.true && Bool.true) && ((Bool.true && Bool.true) && (((Bool.true && Bool.true) && (__fits_25 ((_ynode).state))) && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (List (Reasoning.Planner.Plan.Node))) (__p1 : Nat) => __fits_28 (_ynode) __p0 __p1) ((fun (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yb : Nat) => (Reasoning.Planner.Plan.Pour.collect (_ynode) (_yacc) (_yb)))) (([] : List (Reasoning.Planner.Plan.Node))) ((Reasoning.Planner.Pour.candidates ((_ynode).state))))) - -attribute [local irreducible] Reasoning.Planner.Plan.Pour.collect Reasoning.Planner.Pour.candidates in -theorem __rel_22 (_ynode : (Reasoning.Planner.Plan.Node)) : _root_.LexLeanPreservation.FunRel __prog 22 [(__enc_2 _ynode)] (_root_.LexLeanPreservation.Rel (__fits_22 _ynode) ((_root_.LexLeanPreservation.encList __enc_2) (Reasoning.Planner.Plan.Pour.successors _ynode))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_25 ((_ynode).state))) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.nat) (es := (_root_.LexLeanPreservation.encList __enc_2)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) ((fun (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yb : Nat) => (Reasoning.Planner.Plan.Pour.collect (_ynode) (_yacc) (_yb)))) (fun (__p0 : (List (Reasoning.Planner.Plan.Node))) (__p1 : Nat) => __fits_28 (_ynode) __p0 __p1) 28 [(__enc_2 _ynode)] (fun (__p0 : (List (Reasoning.Planner.Plan.Node))) (__p1 : Nat) => __rel_28 (_ynode) __p0 __p1) (p := __prog) (fi := 27) (ta := .nat) (ts := (.list (.adt 2))) rfl (([] : List (Reasoning.Planner.Plan.Node))) ((Reasoning.Planner.Pour.candidates ((_ynode).state))))) - -def __fits_14 (_ynode : (Reasoning.Planner.Plan.Node)) : Bool := - ((((Bool.true && Bool.true) && (__fits_20 (_ynode))) && (((((Bool.true && Bool.true) && (__fits_21 (_ynode))) && (((Bool.true && Bool.true) && (__fits_22 (_ynode))) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) - -attribute [local irreducible] Reasoning.Planner.Plan.EmptyB.successors Reasoning.Planner.Plan.FillA.successors Reasoning.Planner.Plan.Pour.successors in -theorem __rel_14 (_ynode : (Reasoning.Planner.Plan.Node)) : _root_.LexLeanPreservation.FunRel __prog 14 [(__enc_2 _ynode)] (_root_.LexLeanPreservation.Rel (__fits_14 _ynode) ((_root_.LexLeanPreservation.encList __enc_2) (Reasoning.Planner.Plan.successors _ynode))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_20 (_ynode))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_21 (_ynode))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_22 (_ynode))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc __enc_2) (Reasoning.Planner.Plan.EmptyB.successors (_ynode)) (Reasoning.Planner.Plan.Pour.successors (_ynode)))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc __enc_2) (Reasoning.Planner.Plan.FillA.successors (_ynode)) (_root_.LexLeanRuntime.append ((Reasoning.Planner.Plan.EmptyB.successors (_ynode))) ((Reasoning.Planner.Plan.Pour.successors (_ynode))) : (List (Reasoning.Planner.Plan.Node))))) - -def __fits_24 (_yacc : (Prod (List (Reasoning.Planner.Plan.Node)) (List (Prod Nat Nat)))) (_yn : (Reasoning.Planner.Plan.Node)) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanCollections.setContains ((_yacc).2) ((_yn).state) : Bool) then Bool.true else ((((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true))) - -theorem __rel_24 (_yacc : (Prod (List (Reasoning.Planner.Plan.Node)) (List (Prod Nat Nat)))) (_yn : (Reasoning.Planner.Plan.Node)) : _root_.LexLeanPreservation.FunRel __prog 24 [((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList __enc_2) (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat))) _yacc), (__enc_2 _yn)] (_root_.LexLeanPreservation.Rel (__fits_24 _yacc _yn) ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList __enc_2) (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat))) ((if (_root_.LexLeanCollections.setContains ((_yacc).2) ((_yn).state) : Bool) then _yacc else ((_root_.LexLeanRuntime.append ((_yacc).1) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))), (_root_.LexLeanCollections.setInsert ((_yacc).2) ((_yn).state) : (List (Prod Nat Nat)))))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then Bool.true else ((((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList __enc_2) (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat))) (if __b then _yacc else ((_root_.LexLeanRuntime.append ((_yacc).1) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))), (_root_.LexLeanCollections.setInsert ((_yacc).2) ((_yn).state) : (List (Prod Nat Nat)))))) (_root_.LexLeanCollections.setContains ((_yacc).2) ((_yn).state) : Bool) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.tpl_setContains (_root_.LexLeanPreservation.keySpec_pair (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanCollections.Key.compare : (Prod Nat Nat) -> (Prod Nat Nat) -> Ordering) (fun _ _ __h => by simp only [_root_.LexLeanCollections.Key.compare] at __h ⊢; simp only [__h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.Key.compare] at __h ⊢; simp only [__h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.Key.compare] at __h ⊢; simp only [__h])) (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) _root_.LexLeanCollections.containsElement (fun _ => rfl) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.containsElement, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.containsElement, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.containsElement, __h]) (p := __prog) (fi := 29) (tk := (.pair .nat .nat)) rfl ((_yacc).2) ((_yn).state))) (fun _ => (_root_.LexLeanPreservation.conv_var rfl)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc __enc_2) (_yacc).1 (_yn :: ([] : List (Reasoning.Planner.Plan.Node))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.tpl_setInsert (_root_.LexLeanPreservation.keySpec_pair (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanCollections.Key.compare : (Prod Nat Nat) -> (Prod Nat Nat) -> Ordering) (fun _ _ __h => by simp only [_root_.LexLeanCollections.Key.compare] at __h ⊢; simp only [__h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.Key.compare] at __h ⊢; simp only [__h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.Key.compare] at __h ⊢; simp only [__h])) (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) _root_.LexLeanCollections.insertElement (fun _ => rfl) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.insertElement, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.insertElement, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.insertElement, __h]) (p := __prog) (fi := 12) (tk := (.pair .nat .nat)) rfl ((_yacc).2) ((_yn).state))) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))) - -def __fits_15 (_yvisited : (List (Prod Nat Nat))) (_ynodes : (List (Reasoning.Planner.Plan.Node))) : Bool := - ((Bool.true && ((((Bool.true && Bool.true) && (Bool.true && Bool.true)) && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Prod (List (Reasoning.Planner.Plan.Node)) (List (Prod Nat Nat)))) (__p1 : (Reasoning.Planner.Plan.Node)) => __fits_24 __p0 __p1) ((fun (_yacc : (Prod (List (Reasoning.Planner.Plan.Node)) (List (Prod Nat Nat)))) (_yn : (Reasoning.Planner.Plan.Node)) => (if (_root_.LexLeanCollections.setContains ((_yacc).2) ((_yn).state) : Bool) then _yacc else ((_root_.LexLeanRuntime.append ((_yacc).1) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))), (_root_.LexLeanCollections.setInsert ((_yacc).2) ((_yn).state) : (List (Prod Nat Nat))))))) ((([] : List (Reasoning.Planner.Plan.Node)), _yvisited)) (_ynodes))) - -theorem __rel_15 (_yvisited : (List (Prod Nat Nat))) (_ynodes : (List (Reasoning.Planner.Plan.Node))) : _root_.LexLeanPreservation.FunRel __prog 15 [((_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) _yvisited), ((_root_.LexLeanPreservation.encList __enc_2) _ynodes)] (_root_.LexLeanPreservation.Rel (__fits_15 _yvisited _ynodes) ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList __enc_2) (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat))) (Reasoning.Planner.Plan.fresh _yvisited _ynodes))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := __enc_2) (es := (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encList __enc_2) (_root_.LexLeanPreservation.encList (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)))) (_root_.LexLeanPreservation.listEnc __enc_2) (fun _ => rfl) ((fun (_yacc : (Prod (List (Reasoning.Planner.Plan.Node)) (List (Prod Nat Nat)))) (_yn : (Reasoning.Planner.Plan.Node)) => (if (_root_.LexLeanCollections.setContains ((_yacc).2) ((_yn).state) : Bool) then _yacc else ((_root_.LexLeanRuntime.append ((_yacc).1) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))), (_root_.LexLeanCollections.setInsert ((_yacc).2) ((_yn).state) : (List (Prod Nat Nat))))))) (fun (__p0 : (Prod (List (Reasoning.Planner.Plan.Node)) (List (Prod Nat Nat)))) (__p1 : (Reasoning.Planner.Plan.Node)) => __fits_24 __p0 __p1) 24 [] (fun (__p0 : (Prod (List (Reasoning.Planner.Plan.Node)) (List (Prod Nat Nat)))) (__p1 : (Reasoning.Planner.Plan.Node)) => __rel_24 __p0 __p1) (p := __prog) (fi := 23) (ta := (.adt 2)) (ts := (.pair (.list (.adt 2)) (.list (.pair .nat .nat)))) rfl ((([] : List (Reasoning.Planner.Plan.Node)), _yvisited)) (_ynodes))) - -def __fits_16 (target : Nat) (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yn : (Reasoning.Planner.Plan.Node)) : Bool := - (((((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (target + target) 18446744073709551616)) && Bool.true)) && Bool.true) && (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target)) then ((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) else Bool.true)) - -theorem __rel_16 (target : Nat) (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yn : (Reasoning.Planner.Plan.Node)) : _root_.LexLeanPreservation.FunRel __prog 16 [(_root_.LexLeanTarget.TargetSyntax.Value.nat target), ((_root_.LexLeanPreservation.encList __enc_2) _yacc), (__enc_2 _yn)] (_root_.LexLeanPreservation.Rel (__fits_16 target _yacc _yn) ((_root_.LexLeanPreservation.encList __enc_2) ((if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))) else _yacc)))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) else Bool.true)) (fun (__b : Bool) => (_root_.LexLeanPreservation.encList __enc_2) (if __b then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))) else _yacc)) (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc __enc_2) _yacc)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd target target)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc __enc_2) _yacc (_yn :: ([] : List (Reasoning.Planner.Plan.Node)))))) (fun _ => (_root_.LexLeanPreservation.conv_var rfl))) - -def __fits_17 (_ys : (Prod Nat Nat)) : Bool := - ((Bool.true && (((Bool.true && (((((Bool.true && Bool.true) && (__fits_25 (_ys))) && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length ((Reasoning.Planner.Pour.candidates (_ys))) : Nat) 18446744073709551616)) && Bool.true)) && (Nat.blt ((1 : Nat) + (_root_.LexLeanRuntime.length ((Reasoning.Planner.Pour.candidates (_ys))) : Nat)) 18446744073709551616)) && Bool.true)) && (Nat.blt ((1 : Nat) + ((1 : Nat) + (_root_.LexLeanRuntime.length ((Reasoning.Planner.Pour.candidates (_ys))) : Nat))) 18446744073709551616)) - -attribute [local irreducible] Reasoning.Planner.Pour.candidates in -theorem __rel_17 (_ys : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 17 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) _ys)] (_root_.LexLeanPreservation.Rel (__fits_17 _ys) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Planner.Plan.attempts _ys))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_25 (_ys))) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Planner.Pour.candidates (_ys)))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (1 : Nat) (_root_.LexLeanRuntime.length ((Reasoning.Planner.Pour.candidates (_ys))) : Nat))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (1 : Nat) ((1 : Nat) + (_root_.LexLeanRuntime.length ((Reasoning.Planner.Pour.candidates (_ys))) : Nat)))) - -def __fits_8 (target : Nat) (_yr : (Reasoning.Planner.Plan.Search)) : Bool := - (Bool.true && (match (_yr).found with | Option.some _yhit => (Bool.true && Bool.true) | Option.none => (Bool.true && (match (_yr).frontier with | List.nil => (Bool.true && Bool.true) | List.cons _ynode _yrest => (((Bool.true && (Bool.true && Bool.true)) && (__fits_13 (target) ((_ynode).state))) && (match (Reasoning.Planner.Plan.accept (target) ((_ynode).state)) with | Option.some _yv => ((((Bool.true && (Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) && (Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).iterations + (1 : Nat)) 18446744073709551616)) && (Bool.true && (Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).verifications + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true)))))) && Bool.true) && Bool.true))))) && Bool.true) && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_14 (_ynode))) && (let _ysuccessors : (List (Reasoning.Planner.Plan.Node)) := (Reasoning.Planner.Plan.successors (_ynode)); (((Bool.true && (Bool.true && Bool.true)) && (__fits_15 ((_yr).visited) (_ysuccessors))) && (let _yfresh : (Prod (List (Reasoning.Planner.Plan.Node)) (List (Prod Nat Nat))) := (Reasoning.Planner.Plan.fresh ((_yr).visited) (_ysuccessors)); (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (let _yordered : (List (Reasoning.Planner.Plan.Node)) := (_root_.LexLeanRuntime.append (_yrest) ((_yfresh).1) : (List (Reasoning.Planner.Plan.Node))); ((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (List (Reasoning.Planner.Plan.Node))) (__p1 : (Reasoning.Planner.Plan.Node)) => __fits_16 (target) __p0 __p1) ((fun (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yn : (Reasoning.Planner.Plan.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))) else _yacc))) (([] : List (Reasoning.Planner.Plan.Node))) (_yordered))) && (let _ynext : (List (Reasoning.Planner.Plan.Node)) := (_root_.LexLeanCollections.listFold ((fun (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yn : (Reasoning.Planner.Plan.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))) else _yacc))) (([] : List (Reasoning.Planner.Plan.Node))) (_yordered) : (List (Reasoning.Planner.Plan.Node))); ((((Bool.true && (Bool.true && ((Bool.true && Bool.true) && ((Bool.true && (if (_yr).truncated then (Bool.true && Bool.true) else ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (target + target) 18446744073709551616)) && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_yordered) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true))) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).iterations + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (((Bool.true && Bool.true) && (__fits_17 ((_ynode).state))) && Bool.true)) && (Nat.blt (((_yr).ledger).attempts + (Reasoning.Planner.Plan.attempts ((_ynode).state))) 18446744073709551616)) && (((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ysuccessors) : Nat) 18446744073709551616)) && Bool.true)) && (Nat.blt (((_yr).ledger).firings + (_root_.LexLeanRuntime.length (_ysuccessors) : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).expansions + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).verifications + (1 : Nat)) 18446744073709551616)) && ((((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ynext) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true) && (if (Nat.blt ((_yr).ledger).frontier (_root_.LexLeanRuntime.length (_ynext) : Nat)) then ((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ynext) : Nat) 18446744073709551616)) else Bool.true)) && Bool.true)))))) && Bool.true) && Bool.true))))) && Bool.true) && Bool.true) && Bool.true))))))))))))))) - -attribute [local irreducible] Reasoning.Planner.Plan.accept Reasoning.Planner.Plan.attempts Reasoning.Planner.Plan.fresh Reasoning.Planner.Plan.successors in -theorem __rel_8 (target : Nat) (_yr : (Reasoning.Planner.Plan.Search)) : _root_.LexLeanPreservation.FunRel __prog 8 [(_root_.LexLeanTarget.TargetSyntax.Value.nat target), (__enc_1 _yr)] (_root_.LexLeanPreservation.Rel (__fits_8 target _yr) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Planner.Plan.searchStep target _yr))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) __enc_2)) (fun (__a : (Option (Prod (Prod Nat Nat) (Reasoning.Planner.Plan.Node)))) => (match __a with | Option.some _yhit => (Bool.true && Bool.true) | Option.none => (Bool.true && (match (_yr).frontier with | List.nil => (Bool.true && Bool.true) | List.cons _ynode _yrest => (((Bool.true && (Bool.true && Bool.true)) && (__fits_13 (target) ((_ynode).state))) && (match (Reasoning.Planner.Plan.accept (target) ((_ynode).state)) with | Option.some _yv => ((((Bool.true && (Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) && (Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).iterations + (1 : Nat)) 18446744073709551616)) && (Bool.true && (Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).verifications + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true)))))) && Bool.true) && Bool.true))))) && Bool.true) && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_14 (_ynode))) && (let _ysuccessors : (List (Reasoning.Planner.Plan.Node)) := (Reasoning.Planner.Plan.successors (_ynode)); (((Bool.true && (Bool.true && Bool.true)) && (__fits_15 ((_yr).visited) (_ysuccessors))) && (let _yfresh : (Prod (List (Reasoning.Planner.Plan.Node)) (List (Prod Nat Nat))) := (Reasoning.Planner.Plan.fresh ((_yr).visited) (_ysuccessors)); (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (let _yordered : (List (Reasoning.Planner.Plan.Node)) := (_root_.LexLeanRuntime.append (_yrest) ((_yfresh).1) : (List (Reasoning.Planner.Plan.Node))); ((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (List (Reasoning.Planner.Plan.Node))) (__p1 : (Reasoning.Planner.Plan.Node)) => __fits_16 (target) __p0 __p1) ((fun (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yn : (Reasoning.Planner.Plan.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))) else _yacc))) (([] : List (Reasoning.Planner.Plan.Node))) (_yordered))) && (let _ynext : (List (Reasoning.Planner.Plan.Node)) := (_root_.LexLeanCollections.listFold ((fun (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yn : (Reasoning.Planner.Plan.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))) else _yacc))) (([] : List (Reasoning.Planner.Plan.Node))) (_yordered) : (List (Reasoning.Planner.Plan.Node))); ((((Bool.true && (Bool.true && ((Bool.true && Bool.true) && ((Bool.true && (if (_yr).truncated then (Bool.true && Bool.true) else ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (target + target) 18446744073709551616)) && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_yordered) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true))) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).iterations + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (((Bool.true && Bool.true) && (__fits_17 ((_ynode).state))) && Bool.true)) && (Nat.blt (((_yr).ledger).attempts + (Reasoning.Planner.Plan.attempts ((_ynode).state))) 18446744073709551616)) && (((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ysuccessors) : Nat) 18446744073709551616)) && Bool.true)) && (Nat.blt (((_yr).ledger).firings + (_root_.LexLeanRuntime.length (_ysuccessors) : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).expansions + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).verifications + (1 : Nat)) 18446744073709551616)) && ((((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ynext) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true) && (if (Nat.blt ((_yr).ledger).frontier (_root_.LexLeanRuntime.length (_ynext) : Nat)) then ((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ynext) : Nat) 18446744073709551616)) else Bool.true)) && Bool.true)))))) && Bool.true) && Bool.true))))) && Bool.true) && Bool.true) && Bool.true))))))))))))))) (fun (__a : (Option (Prod (Prod Nat Nat) (Reasoning.Planner.Plan.Node)))) => (_root_.LexLeanPreservation.encOption __enc_1) (match __a with | Option.some _yhit => (Option.none : (Option (Reasoning.Planner.Plan.Search))) | Option.none => (match (_yr).frontier with | List.nil => (Option.none : (Option (Reasoning.Planner.Plan.Search))) | List.cons _ynode _yrest => (match (Reasoning.Planner.Plan.accept (target) ((_ynode).state)) with | Option.some _yv => (Option.some (({ frontier := _yrest, visited := (_yr).visited, found := (Option.some ((_yv, _ynode)) : (Option (Prod (Prod Nat Nat) (Reasoning.Planner.Plan.Node)))), truncated := (_yr).truncated, ledger := ({ iterations := (((_yr).ledger).iterations + (1 : Nat)), attempts := ((_yr).ledger).attempts, firings := ((_yr).ledger).firings, expansions := ((_yr).ledger).expansions, verifications := (((_yr).ledger).verifications + (1 : Nat)), frontier := ((_yr).ledger).frontier } : (Reasoning.Planner.Plan.Ledger)) } : (Reasoning.Planner.Plan.Search))) : (Option (Reasoning.Planner.Plan.Search))) | Option.none => (let _ysuccessors : (List (Reasoning.Planner.Plan.Node)) := (Reasoning.Planner.Plan.successors (_ynode)); (let _yfresh : (Prod (List (Reasoning.Planner.Plan.Node)) (List (Prod Nat Nat))) := (Reasoning.Planner.Plan.fresh ((_yr).visited) (_ysuccessors)); (let _yordered : (List (Reasoning.Planner.Plan.Node)) := (_root_.LexLeanRuntime.append (_yrest) ((_yfresh).1) : (List (Reasoning.Planner.Plan.Node))); (let _ynext : (List (Reasoning.Planner.Plan.Node)) := (_root_.LexLeanCollections.listFold ((fun (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yn : (Reasoning.Planner.Plan.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))) else _yacc))) (([] : List (Reasoning.Planner.Plan.Node))) (_yordered) : (List (Reasoning.Planner.Plan.Node))); (Option.some (({ frontier := _ynext, visited := (_yfresh).2, found := (Option.none : (Option (Prod (Prod Nat Nat) (Reasoning.Planner.Plan.Node)))), truncated := ((_yr).truncated || (Nat.blt (target + target) (_root_.LexLeanRuntime.length (_yordered) : Nat))), ledger := ({ iterations := (((_yr).ledger).iterations + (1 : Nat)), attempts := (((_yr).ledger).attempts + (Reasoning.Planner.Plan.attempts ((_ynode).state))), firings := (((_yr).ledger).firings + (_root_.LexLeanRuntime.length (_ysuccessors) : Nat)), expansions := (((_yr).ledger).expansions + (1 : Nat)), verifications := (((_yr).ledger).verifications + (1 : Nat)), frontier := (if (Nat.blt ((_yr).ledger).frontier (_root_.LexLeanRuntime.length (_ynext) : Nat)) then (_root_.LexLeanRuntime.length (_ynext) : Nat) else ((_yr).ledger).frontier) } : (Reasoning.Planner.Plan.Ledger)) } : (Reasoning.Planner.Plan.Search))) : (Option (Reasoning.Planner.Plan.Search))))))))))) (_yr).found (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (fun (__a : (Option (Prod (Prod Nat Nat) (Reasoning.Planner.Plan.Node)))) _ => match __a with | Option.some _yhit => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encList __enc_2) (fun (__a : (List (Reasoning.Planner.Plan.Node))) => (match __a with | List.nil => (Bool.true && Bool.true) | List.cons _ynode _yrest => (((Bool.true && (Bool.true && Bool.true)) && (__fits_13 (target) ((_ynode).state))) && (match (Reasoning.Planner.Plan.accept (target) ((_ynode).state)) with | Option.some _yv => ((((Bool.true && (Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) && (Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).iterations + (1 : Nat)) 18446744073709551616)) && (Bool.true && (Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).verifications + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true)))))) && Bool.true) && Bool.true))))) && Bool.true) && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_14 (_ynode))) && (let _ysuccessors : (List (Reasoning.Planner.Plan.Node)) := (Reasoning.Planner.Plan.successors (_ynode)); (((Bool.true && (Bool.true && Bool.true)) && (__fits_15 ((_yr).visited) (_ysuccessors))) && (let _yfresh : (Prod (List (Reasoning.Planner.Plan.Node)) (List (Prod Nat Nat))) := (Reasoning.Planner.Plan.fresh ((_yr).visited) (_ysuccessors)); (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (let _yordered : (List (Reasoning.Planner.Plan.Node)) := (_root_.LexLeanRuntime.append (_yrest) ((_yfresh).1) : (List (Reasoning.Planner.Plan.Node))); ((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (List (Reasoning.Planner.Plan.Node))) (__p1 : (Reasoning.Planner.Plan.Node)) => __fits_16 (target) __p0 __p1) ((fun (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yn : (Reasoning.Planner.Plan.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))) else _yacc))) (([] : List (Reasoning.Planner.Plan.Node))) (_yordered))) && (let _ynext : (List (Reasoning.Planner.Plan.Node)) := (_root_.LexLeanCollections.listFold ((fun (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yn : (Reasoning.Planner.Plan.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))) else _yacc))) (([] : List (Reasoning.Planner.Plan.Node))) (_yordered) : (List (Reasoning.Planner.Plan.Node))); ((((Bool.true && (Bool.true && ((Bool.true && Bool.true) && ((Bool.true && (if (_yr).truncated then (Bool.true && Bool.true) else ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (target + target) 18446744073709551616)) && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_yordered) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true))) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).iterations + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (((Bool.true && Bool.true) && (__fits_17 ((_ynode).state))) && Bool.true)) && (Nat.blt (((_yr).ledger).attempts + (Reasoning.Planner.Plan.attempts ((_ynode).state))) 18446744073709551616)) && (((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ysuccessors) : Nat) 18446744073709551616)) && Bool.true)) && (Nat.blt (((_yr).ledger).firings + (_root_.LexLeanRuntime.length (_ysuccessors) : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).expansions + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).verifications + (1 : Nat)) 18446744073709551616)) && ((((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ynext) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true) && (if (Nat.blt ((_yr).ledger).frontier (_root_.LexLeanRuntime.length (_ynext) : Nat)) then ((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ynext) : Nat) 18446744073709551616)) else Bool.true)) && Bool.true)))))) && Bool.true) && Bool.true))))) && Bool.true) && Bool.true) && Bool.true))))))))))))) (fun (__a : (List (Reasoning.Planner.Plan.Node))) => (_root_.LexLeanPreservation.encOption __enc_1) (match __a with | List.nil => (Option.none : (Option (Reasoning.Planner.Plan.Search))) | List.cons _ynode _yrest => (match (Reasoning.Planner.Plan.accept (target) ((_ynode).state)) with | Option.some _yv => (Option.some (({ frontier := _yrest, visited := (_yr).visited, found := (Option.some ((_yv, _ynode)) : (Option (Prod (Prod Nat Nat) (Reasoning.Planner.Plan.Node)))), truncated := (_yr).truncated, ledger := ({ iterations := (((_yr).ledger).iterations + (1 : Nat)), attempts := ((_yr).ledger).attempts, firings := ((_yr).ledger).firings, expansions := ((_yr).ledger).expansions, verifications := (((_yr).ledger).verifications + (1 : Nat)), frontier := ((_yr).ledger).frontier } : (Reasoning.Planner.Plan.Ledger)) } : (Reasoning.Planner.Plan.Search))) : (Option (Reasoning.Planner.Plan.Search))) | Option.none => (let _ysuccessors : (List (Reasoning.Planner.Plan.Node)) := (Reasoning.Planner.Plan.successors (_ynode)); (let _yfresh : (Prod (List (Reasoning.Planner.Plan.Node)) (List (Prod Nat Nat))) := (Reasoning.Planner.Plan.fresh ((_yr).visited) (_ysuccessors)); (let _yordered : (List (Reasoning.Planner.Plan.Node)) := (_root_.LexLeanRuntime.append (_yrest) ((_yfresh).1) : (List (Reasoning.Planner.Plan.Node))); (let _ynext : (List (Reasoning.Planner.Plan.Node)) := (_root_.LexLeanCollections.listFold ((fun (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yn : (Reasoning.Planner.Plan.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))) else _yacc))) (([] : List (Reasoning.Planner.Plan.Node))) (_yordered) : (List (Reasoning.Planner.Plan.Node))); (Option.some (({ frontier := _ynext, visited := (_yfresh).2, found := (Option.none : (Option (Prod (Prod Nat Nat) (Reasoning.Planner.Plan.Node)))), truncated := ((_yr).truncated || (Nat.blt (target + target) (_root_.LexLeanRuntime.length (_yordered) : Nat))), ledger := ({ iterations := (((_yr).ledger).iterations + (1 : Nat)), attempts := (((_yr).ledger).attempts + (Reasoning.Planner.Plan.attempts ((_ynode).state))), firings := (((_yr).ledger).firings + (_root_.LexLeanRuntime.length (_ysuccessors) : Nat)), expansions := (((_yr).ledger).expansions + (1 : Nat)), verifications := (((_yr).ledger).verifications + (1 : Nat)), frontier := (if (Nat.blt ((_yr).ledger).frontier (_root_.LexLeanRuntime.length (_ynext) : Nat)) then (_root_.LexLeanRuntime.length (_ynext) : Nat) else ((_yr).ledger).frontier) } : (Reasoning.Planner.Plan.Ledger)) } : (Reasoning.Planner.Plan.Search))) : (Option (Reasoning.Planner.Plan.Search)))))))))) (_yr).frontier (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (fun (__a : (List (Reasoning.Planner.Plan.Node))) _ => match __a with | List.nil => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) | List.cons _ynode _yrest => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun (__a : (Option (Prod Nat Nat))) => (match __a with | Option.some _yv => ((((Bool.true && (Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) && (Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).iterations + (1 : Nat)) 18446744073709551616)) && (Bool.true && (Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).verifications + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true)))))) && Bool.true) && Bool.true))))) && Bool.true) && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_14 (_ynode))) && (let _ysuccessors : (List (Reasoning.Planner.Plan.Node)) := (Reasoning.Planner.Plan.successors (_ynode)); (((Bool.true && (Bool.true && Bool.true)) && (__fits_15 ((_yr).visited) (_ysuccessors))) && (let _yfresh : (Prod (List (Reasoning.Planner.Plan.Node)) (List (Prod Nat Nat))) := (Reasoning.Planner.Plan.fresh ((_yr).visited) (_ysuccessors)); (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (let _yordered : (List (Reasoning.Planner.Plan.Node)) := (_root_.LexLeanRuntime.append (_yrest) ((_yfresh).1) : (List (Reasoning.Planner.Plan.Node))); ((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (List (Reasoning.Planner.Plan.Node))) (__p1 : (Reasoning.Planner.Plan.Node)) => __fits_16 (target) __p0 __p1) ((fun (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yn : (Reasoning.Planner.Plan.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))) else _yacc))) (([] : List (Reasoning.Planner.Plan.Node))) (_yordered))) && (let _ynext : (List (Reasoning.Planner.Plan.Node)) := (_root_.LexLeanCollections.listFold ((fun (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yn : (Reasoning.Planner.Plan.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))) else _yacc))) (([] : List (Reasoning.Planner.Plan.Node))) (_yordered) : (List (Reasoning.Planner.Plan.Node))); ((((Bool.true && (Bool.true && ((Bool.true && Bool.true) && ((Bool.true && (if (_yr).truncated then (Bool.true && Bool.true) else ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (target + target) 18446744073709551616)) && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_yordered) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true))) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).iterations + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (((Bool.true && Bool.true) && (__fits_17 ((_ynode).state))) && Bool.true)) && (Nat.blt (((_yr).ledger).attempts + (Reasoning.Planner.Plan.attempts ((_ynode).state))) 18446744073709551616)) && (((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ysuccessors) : Nat) 18446744073709551616)) && Bool.true)) && (Nat.blt (((_yr).ledger).firings + (_root_.LexLeanRuntime.length (_ysuccessors) : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).expansions + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).verifications + (1 : Nat)) 18446744073709551616)) && ((((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ynext) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true) && (if (Nat.blt ((_yr).ledger).frontier (_root_.LexLeanRuntime.length (_ynext) : Nat)) then ((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ynext) : Nat) 18446744073709551616)) else Bool.true)) && Bool.true)))))) && Bool.true) && Bool.true))))) && Bool.true) && Bool.true) && Bool.true))))))))))) (fun (__a : (Option (Prod Nat Nat))) => (_root_.LexLeanPreservation.encOption __enc_1) (match __a with | Option.some _yv => (Option.some (({ frontier := _yrest, visited := (_yr).visited, found := (Option.some ((_yv, _ynode)) : (Option (Prod (Prod Nat Nat) (Reasoning.Planner.Plan.Node)))), truncated := (_yr).truncated, ledger := ({ iterations := (((_yr).ledger).iterations + (1 : Nat)), attempts := ((_yr).ledger).attempts, firings := ((_yr).ledger).firings, expansions := ((_yr).ledger).expansions, verifications := (((_yr).ledger).verifications + (1 : Nat)), frontier := ((_yr).ledger).frontier } : (Reasoning.Planner.Plan.Ledger)) } : (Reasoning.Planner.Plan.Search))) : (Option (Reasoning.Planner.Plan.Search))) | Option.none => (let _ysuccessors : (List (Reasoning.Planner.Plan.Node)) := (Reasoning.Planner.Plan.successors (_ynode)); (let _yfresh : (Prod (List (Reasoning.Planner.Plan.Node)) (List (Prod Nat Nat))) := (Reasoning.Planner.Plan.fresh ((_yr).visited) (_ysuccessors)); (let _yordered : (List (Reasoning.Planner.Plan.Node)) := (_root_.LexLeanRuntime.append (_yrest) ((_yfresh).1) : (List (Reasoning.Planner.Plan.Node))); (let _ynext : (List (Reasoning.Planner.Plan.Node)) := (_root_.LexLeanCollections.listFold ((fun (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yn : (Reasoning.Planner.Plan.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))) else _yacc))) (([] : List (Reasoning.Planner.Plan.Node))) (_yordered) : (List (Reasoning.Planner.Plan.Node))); (Option.some (({ frontier := _ynext, visited := (_yfresh).2, found := (Option.none : (Option (Prod (Prod Nat Nat) (Reasoning.Planner.Plan.Node)))), truncated := ((_yr).truncated || (Nat.blt (target + target) (_root_.LexLeanRuntime.length (_yordered) : Nat))), ledger := ({ iterations := (((_yr).ledger).iterations + (1 : Nat)), attempts := (((_yr).ledger).attempts + (Reasoning.Planner.Plan.attempts ((_ynode).state))), firings := (((_yr).ledger).firings + (_root_.LexLeanRuntime.length (_ysuccessors) : Nat)), expansions := (((_yr).ledger).expansions + (1 : Nat)), verifications := (((_yr).ledger).verifications + (1 : Nat)), frontier := (if (Nat.blt ((_yr).ledger).frontier (_root_.LexLeanRuntime.length (_ynext) : Nat)) then (_root_.LexLeanRuntime.length (_ynext) : Nat) else ((_yr).ledger).frontier) } : (Reasoning.Planner.Plan.Ledger)) } : (Reasoning.Planner.Plan.Search))) : (Option (Reasoning.Planner.Plan.Search))))))))) (Reasoning.Planner.Plan.accept (target) ((_ynode).state)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_13 (target) ((_ynode).state))) (fun (__a : (Option (Prod Nat Nat))) _ => match __a with | Option.some _yv => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((_yr).ledger).iterations (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((_yr).ledger).verifications (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) _root_.LexLeanPreservation.convL_nil)))))) _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil))))) _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (let _ysuccessors : (List (Reasoning.Planner.Plan.Node)) := (Reasoning.Planner.Plan.successors (_ynode)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_14 (_ynode))) (let _yfresh : (Prod (List (Reasoning.Planner.Plan.Node)) (List (Prod Nat Nat))) := (Reasoning.Planner.Plan.fresh ((_yr).visited) (_ysuccessors)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_15 ((_yr).visited) (_ysuccessors))) (let _yordered : (List (Reasoning.Planner.Plan.Node)) := (_root_.LexLeanRuntime.append (_yrest) ((_yfresh).1) : (List (Reasoning.Planner.Plan.Node))); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc __enc_2) _yrest (_yfresh).1)) (let _ynext : (List (Reasoning.Planner.Plan.Node)) := (_root_.LexLeanCollections.listFold ((fun (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yn : (Reasoning.Planner.Plan.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))) else _yacc))) (([] : List (Reasoning.Planner.Plan.Node))) (_yordered) : (List (Reasoning.Planner.Plan.Node))); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := __enc_2) (es := (_root_.LexLeanPreservation.encList __enc_2)) (_root_.LexLeanPreservation.listEnc __enc_2) (fun _ => rfl) ((fun (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yn : (Reasoning.Planner.Plan.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))) else _yacc))) (fun (__p0 : (List (Reasoning.Planner.Plan.Node))) (__p1 : (Reasoning.Planner.Plan.Node)) => __fits_16 (target) __p0 __p1) 16 [(_root_.LexLeanTarget.TargetSyntax.Value.nat target)] (fun (__p0 : (List (Reasoning.Planner.Plan.Node))) (__p1 : (Reasoning.Planner.Plan.Node)) => __rel_16 (target) __p0 __p1) (p := __prog) (fi := 9) (ta := (.adt 2)) (ts := (.list (.adt 2))) rfl (([] : List (Reasoning.Planner.Plan.Node))) (_yordered))) (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (Bool.true && Bool.true) else ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (target + target) 18446744073709551616)) && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_yordered) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b || (Nat.blt (target + target) (_root_.LexLeanRuntime.length (_yordered) : Nat)))) (_yr).truncated (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd target target)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc __enc_2) _yordered)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (target + target) (_root_.LexLeanRuntime.length (_yordered) : Nat))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((_yr).ledger).iterations (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_17 ((_ynode).state))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((_yr).ledger).attempts (Reasoning.Planner.Plan.attempts ((_ynode).state)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc __enc_2) _ysuccessors)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((_yr).ledger).firings (_root_.LexLeanRuntime.length (_ysuccessors) : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((_yr).ledger).expansions (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((_yr).ledger).verifications (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ynext) : Nat) 18446744073709551616)) else Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (_root_.LexLeanRuntime.length (_ynext) : Nat) else ((_yr).ledger).frontier)) (Nat.blt ((_yr).ledger).frontier (_root_.LexLeanRuntime.length (_ynext) : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc __enc_2) _ynext)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt ((_yr).ledger).frontier (_root_.LexLeanRuntime.length (_ynext) : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc __enc_2) _ynext))) (fun _ => (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl))) _root_.LexLeanPreservation.convL_nil)))))) _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil))))) _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some))))))))))))))))) - -def __fits_6 (target : Nat) (_yr : (Reasoning.Planner.Plan.Search)) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && (__fits_8 (target) (_yr))) - -attribute [local irreducible] Reasoning.Planner.Plan.searchStep in -theorem __rel_6 (target : Nat) (_yr : (Reasoning.Planner.Plan.Search)) : _root_.LexLeanPreservation.FunRel __prog 6 [(_root_.LexLeanTarget.TargetSyntax.Value.nat target), (__enc_1 _yr)] (_root_.LexLeanPreservation.Rel (__fits_6 target _yr) ((_root_.LexLeanPreservation.encOption __enc_1) ((Reasoning.Planner.Plan.searchStep (target) (_yr))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_8 (target) (_yr))) - -def __fits_10 (target : Nat) (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yn : (Reasoning.Planner.Plan.Node)) : Bool := - (((((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (target + target) 18446744073709551616)) && Bool.true)) && Bool.true) && (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target)) then ((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) else Bool.true)) - -theorem __rel_10 (target : Nat) (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yn : (Reasoning.Planner.Plan.Node)) : _root_.LexLeanPreservation.FunRel __prog 10 [(_root_.LexLeanTarget.TargetSyntax.Value.nat target), ((_root_.LexLeanPreservation.encList __enc_2) _yacc), (__enc_2 _yn)] (_root_.LexLeanPreservation.Rel (__fits_10 target _yacc _yn) ((_root_.LexLeanPreservation.encList __enc_2) ((if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))) else _yacc)))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) else Bool.true)) (fun (__b : Bool) => (_root_.LexLeanPreservation.encList __enc_2) (if __b then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))) else _yacc)) (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc __enc_2) _yacc)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd target target)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc __enc_2) _yacc (_yn :: ([] : List (Reasoning.Planner.Plan.Node)))))) (fun _ => (_root_.LexLeanPreservation.conv_var rfl))) - -def __fits_11 (target : Nat) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_11 (target : Nat) : _root_.LexLeanPreservation.FunRel __prog 11 [(_root_.LexLeanTarget.TargetSyntax.Value.nat target)] (_root_.LexLeanPreservation.Rel (__fits_11 target) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Planner.Plan.observe target))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) - -def __fits_7 (target : Nat) : Bool := - ((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && (((((((Bool.true && Bool.true) && (__fits_11 (target))) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (List (Reasoning.Planner.Plan.Node))) (__p1 : (Reasoning.Planner.Plan.Node)) => __fits_10 (target) __p0 __p1) ((fun (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yn : (Reasoning.Planner.Plan.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))) else _yacc))) (([] : List (Reasoning.Planner.Plan.Node))) ((({ state := (Reasoning.Planner.Plan.observe (target)), trace := ([] : List (Reasoning.Planner.Plan.Step)) } : (Reasoning.Planner.Plan.Node)) :: ([] : List (Reasoning.Planner.Plan.Node)))))) && (let _yfirst : (List (Reasoning.Planner.Plan.Node)) := (_root_.LexLeanCollections.listFold ((fun (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yn : (Reasoning.Planner.Plan.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))) else _yacc))) (([] : List (Reasoning.Planner.Plan.Node))) ((({ state := (Reasoning.Planner.Plan.observe (target)), trace := ([] : List (Reasoning.Planner.Plan.Step)) } : (Reasoning.Planner.Plan.Node)) :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))); ((Bool.true && ((((Bool.true && Bool.true) && (((Bool.true && Bool.true) && (__fits_11 (target))) && Bool.true)) && Bool.true) && ((Bool.true && Bool.true) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (target + target) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) && (((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_yfirst) : Nat) 18446744073709551616)) && Bool.true)))))) && Bool.true) && Bool.true))))) && Bool.true))) - -attribute [local irreducible] Reasoning.Planner.Plan.observe in -theorem __rel_7 (target : Nat) : _root_.LexLeanPreservation.FunRel __prog 7 [(_root_.LexLeanTarget.TargetSyntax.Value.nat target)] (_root_.LexLeanPreservation.Rel (__fits_7 target) (__enc_1 (Reasoning.Planner.Plan.start target))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (let _yfirst : (List (Reasoning.Planner.Plan.Node)) := (_root_.LexLeanCollections.listFold ((fun (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yn : (Reasoning.Planner.Plan.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))) else _yacc))) (([] : List (Reasoning.Planner.Plan.Node))) ((({ state := (Reasoning.Planner.Plan.observe (target)), trace := ([] : List (Reasoning.Planner.Plan.Step)) } : (Reasoning.Planner.Plan.Node)) :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_11 (target))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_adt) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := __enc_2) (es := (_root_.LexLeanPreservation.encList __enc_2)) (_root_.LexLeanPreservation.listEnc __enc_2) (fun _ => rfl) ((fun (_yacc : (List (Reasoning.Planner.Plan.Node))) (_yn : (Reasoning.Planner.Plan.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (target + target)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Planner.Plan.Node)))) : (List (Reasoning.Planner.Plan.Node))) else _yacc))) (fun (__p0 : (List (Reasoning.Planner.Plan.Node))) (__p1 : (Reasoning.Planner.Plan.Node)) => __fits_10 (target) __p0 __p1) 10 [(_root_.LexLeanTarget.TargetSyntax.Value.nat target)] (fun (__p0 : (List (Reasoning.Planner.Plan.Node))) (__p1 : (Reasoning.Planner.Plan.Node)) => __rel_10 (target) __p0 __p1) (p := __prog) (fi := 9) (ta := (.adt 2)) (ts := (.list (.adt 2))) rfl (([] : List (Reasoning.Planner.Plan.Node))) ((({ state := (Reasoning.Planner.Plan.observe (target)), trace := ([] : List (Reasoning.Planner.Plan.Step)) } : (Reasoning.Planner.Plan.Node)) :: ([] : List (Reasoning.Planner.Plan.Node)))))) (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_11 (target))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.tpl_setInsert (_root_.LexLeanPreservation.keySpec_pair (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanPreservation.keySpec_nat (_root_.LexLeanCollections.Key.compare : Nat -> Nat -> Ordering) (fun _ _ => rfl)) (_root_.LexLeanCollections.Key.compare : (Prod Nat Nat) -> (Prod Nat Nat) -> Ordering) (fun _ _ __h => by simp only [_root_.LexLeanCollections.Key.compare] at __h ⊢; simp only [__h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.Key.compare] at __h ⊢; simp only [__h]) (fun _ _ __h => by simp only [_root_.LexLeanCollections.Key.compare] at __h ⊢; simp only [__h])) (_root_.LexLeanPreservation.listEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) _root_.LexLeanCollections.insertElement (fun _ => rfl) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.insertElement, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.insertElement, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.insertElement, __h]) (p := __prog) (fi := 12) (tk := (.pair .nat .nat)) rfl (([] : List (Prod Nat Nat))) ((Reasoning.Planner.Plan.observe (target))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd target target)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (target + target) (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc __enc_2) _yfirst)) _root_.LexLeanPreservation.convL_nil)))))) _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil))))) _root_.LexLeanPreservation.construct_adt)) - -def __fits_3 (target : Nat) : Bool := - (((Bool.true && Bool.true) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (_root_.LexLeanRuntime.multiply (target) ((8 : Nat)) : Nat) 18446744073709551616)) && (((Bool.true && Bool.true) && (__fits_7 (target))) && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : (Reasoning.Planner.Plan.Search)) => __fits_6 (target) __p0) ((fun (_yr : (Reasoning.Planner.Plan.Search)) => (Reasoning.Planner.Plan.searchStep (target) (_yr)))) ((_root_.LexLeanRuntime.multiply (target) ((8 : Nat)) : Nat)) ((Reasoning.Planner.Plan.start (target))))) - -attribute [local irreducible] Reasoning.Planner.Plan.searchStep Reasoning.Planner.Plan.start in -theorem __rel_3 (target : Nat) : _root_.LexLeanPreservation.FunRel __prog 3 [(_root_.LexLeanTarget.TargetSyntax.Value.nat target)] (_root_.LexLeanPreservation.Rel (__fits_3 target) ((_root_.LexLeanPreservation.encPair __enc_1 _root_.LexLeanTarget.TargetSyntax.Value.bool) (Reasoning.Planner.Plan.run target))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natMul target (8 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_7 (target))) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterateUntil (es := __enc_1) (_root_.LexLeanPreservation.optEnc __enc_1) (fun _ => rfl) (_root_.LexLeanPreservation.encPair __enc_1 _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) ((fun (_yr : (Reasoning.Planner.Plan.Search)) => (Reasoning.Planner.Plan.searchStep (target) (_yr)))) (fun (__p0 : (Reasoning.Planner.Plan.Search)) => __fits_6 (target) __p0) 6 [(_root_.LexLeanTarget.TargetSyntax.Value.nat target)] (fun (__p0 : (Reasoning.Planner.Plan.Search)) => __rel_6 (target) __p0) (_root_.LexLeanCollections.iterateUntil ((fun (_yr : (Reasoning.Planner.Plan.Search)) => (Reasoning.Planner.Plan.searchStep (target) (_yr))))) (fun _ => rfl) (fun _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (p := __prog) (fi := 5) (ts := (.adt 1)) rfl ((_root_.LexLeanRuntime.multiply (target) ((8 : Nat)) : Nat)) ((Reasoning.Planner.Plan.start (target))))) - -def __fits_4 (_ysaturated : Bool) (_ytruncated : Bool) : Bool := - ((Bool.true && (if _ysaturated then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (if (_ysaturated && (!_ytruncated)) then (((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) else (((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true))) - -theorem __rel_4 (_ysaturated : Bool) (_ytruncated : Bool) : _root_.LexLeanPreservation.FunRel __prog 4 [(_root_.LexLeanTarget.TargetSyntax.Value.bool _ysaturated), (_root_.LexLeanTarget.TargetSyntax.Value.bool _ytruncated)] (_root_.LexLeanPreservation.Rel (__fits_4 _ysaturated _ytruncated) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (Reasoning.Planner.Plan.failure _ysaturated _ytruncated))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) else (((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (if __b then ((Bool.false, Bool.true) : (Prod Bool Bool)) else ((Bool.false, Bool.false) : (Prod Bool Bool)))) (_ysaturated && (!_ytruncated)) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (!_ytruncated))) _ysaturated (_root_.LexLeanPreservation.conv_var rfl) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_boolNot _ytruncated))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))) - -def __fits_2 (target : Nat) : Bool := - (((Bool.true && Bool.true) && (__fits_3 (target))) && (let _yfinal : (Prod (Reasoning.Planner.Plan.Search) Bool) := (Reasoning.Planner.Plan.run (target)); (Bool.true && (match ((_yfinal).1).found with | Option.some _yhit => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => ((((Bool.true && (Bool.true && Bool.true)) && (__fits_4 ((_yfinal).2) (((_yfinal).1).truncated))) && Bool.true) && Bool.true))))) - -attribute [local irreducible] Reasoning.Planner.Plan.failure Reasoning.Planner.Plan.run in -theorem __rel_2 (target : Nat) : _root_.LexLeanPreservation.FunRel __prog 2 [(_root_.LexLeanTarget.TargetSyntax.Value.nat target)] (_root_.LexLeanPreservation.Rel (__fits_2 target) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encList __enc_0))) (Reasoning.Planner.Plan target))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (let _yfinal : (Prod (Reasoning.Planner.Plan.Search) Bool) := (Reasoning.Planner.Plan.run (target)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_3 (target))) (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) __enc_2)) (fun (__a : (Option (Prod (Prod Nat Nat) (Reasoning.Planner.Plan.Node)))) => (match __a with | Option.some _yhit => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => ((((Bool.true && (Bool.true && Bool.true)) && (__fits_4 ((_yfinal).2) (((_yfinal).1).truncated))) && Bool.true) && Bool.true))) (fun (__a : (Option (Prod (Prod Nat Nat) (Reasoning.Planner.Plan.Node)))) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encList __enc_0))) (match __a with | Option.some _yhit => (Except.ok (((_yhit).1, ((_yhit).2).trace)) : (Except (Prod Bool Bool) (Prod (Prod Nat Nat) (List (Reasoning.Planner.Plan.Step))))) | Option.none => (Except.error ((Reasoning.Planner.Plan.failure ((_yfinal).2) (((_yfinal).1).truncated))) : (Except (Prod Bool Bool) (Prod (Prod Nat Nat) (List (Reasoning.Planner.Plan.Step))))))) ((_yfinal).1).found (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) rfl) (fun (__a : (Option (Prod (Prod Nat Nat) (Reasoning.Planner.Plan.Node)))) _ => match __a with | Option.some _yhit => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_4 ((_yfinal).2) (((_yfinal).1).truncated))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)))))) - -def __fits_1 (target : Nat) : Bool := - (((Bool.true && Bool.true) && (__fits_2 (target))) && (match (Reasoning.Planner.Plan (target)) with | Except.ok _yp => ((Bool.true && Bool.true) && Bool.true) | Except.error _ye => ((Bool.true && Bool.true) && Bool.true))) - -attribute [local irreducible] Reasoning.Planner.Plan in -theorem __rel_1 (target : Nat) : _root_.LexLeanPreservation.FunRel __prog 1 [(_root_.LexLeanTarget.TargetSyntax.Value.nat target)] (_root_.LexLeanPreservation.Rel (__fits_1 target) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Reasoning.Planner.Plan.verdict target))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.encList __enc_0))) (fun (__a : (Except (Prod Bool Bool) (Prod (Prod Nat Nat) (List (Reasoning.Planner.Plan.Step))))) => (match __a with | Except.ok _yp => ((Bool.true && Bool.true) && Bool.true) | Except.error _ye => ((Bool.true && Bool.true) && Bool.true))) (fun (__a : (Except (Prod Bool Bool) (Prod (Prod Nat Nat) (List (Reasoning.Planner.Plan.Step))))) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (match __a with | Except.ok _yp => (Except.ok ((_yp).1) : (Except (Prod Bool Bool) (Prod Nat Nat))) | Except.error _ye => (Except.error (_ye) : (Except (Prod Bool Bool) (Prod Nat Nat))))) (Reasoning.Planner.Plan (target)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_2 (target))) (fun (__a : (Except (Prod Bool Bool) (Prod (Prod Nat Nat) (List (Reasoning.Planner.Plan.Step))))) _ => match __a with | Except.ok _yp => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok)) | Except.error _ye => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error))))) - -def __fits_0 (target : Nat) : Bool := - (((Bool.true && Bool.true) && (__fits_1 (target))) && (match (Reasoning.Planner.Plan.verdict (target)) with | Except.ok jugs => Bool.true | Except.error failure => Bool.true)) - -attribute [local irreducible] Reasoning.Planner.Plan.verdict in -theorem __rel_0 (target : Nat) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat target)] (_root_.LexLeanPreservation.Rel (__fits_0 target) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.planLeft target))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun (__a : (Except (Prod Bool Bool) (Prod Nat Nat))) => (match __a with | Except.ok jugs => Bool.true | Except.error failure => Bool.true)) (fun (__a : (Except (Prod Bool Bool) (Prod Nat Nat))) => _root_.LexLeanTarget.TargetSyntax.Value.nat (match __a with | Except.ok jugs => (jugs).1 | Except.error failure => (9 : Nat))) (Reasoning.Planner.Plan.verdict (target)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_1 (target))) (fun (__a : (Except (Prod Bool Bool) (Prod Nat Nat))) _ => match __a with | Except.ok jugs => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl))) | Except.error failure => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value)))) - -def denote (target : Nat) : _root_.LexLeanPreservation.Obs := - _root_.cond (__fits_0 target) (_root_.LexLeanPreservation.Obs.value ((_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.planLeft target)))) _root_.LexLeanPreservation.Obs.overflow - -theorem root (target : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat target)] (_root_.LexLeanPreservation.Rel (__fits_0 target) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.planLeft target))) := - _root_.LexLeanPreservation.run_of_funRel (__rel_0 target) - -end LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3 diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R3/Compose/RustStd.lex.tex b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R3/Compose/RustStd.lex.tex deleted file mode 100644 index 98693afb1..000000000 --- a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R3/Compose/RustStd.lex.tex +++ /dev/null @@ -1,1301 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3, - LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.Compose.RustStd.__wt_0 : @16 := @424 { - all: [LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.Compose.RustStd.__wt_0], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.Compose.RustStd.__wt_2 : @431 := @905 { - all: [LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.Compose.RustStd.__wt_2], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.Compose.RustStd.__wt_3 : @913 := @1372 { - all: [LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.Compose.RustStd.__wt_3], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.Compose.RustStd.__wt_1 : @1379 := @2024 { - all: [LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.Compose.RustStd.__wt_1], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.Compose.RustStd.root : @2637 := @2638 { - all: [LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.RustStd.program -@1 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.RustStd.krate -@2 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.RustStd.flags -@3 := Reasoning.Planner.Plan.Step -@4 := #0 -@5 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.__enc_0 -@6 := @5 @4 -@7 := LexLeanPreservation.Rust.WT -@8 := LexLeanTarget.TargetSyntax.Ty.adt -@9 := 0 -@10 := @8 @9 -@11 := @7 @0 -@12 := @11 @1 -@13 := @12 @2 -@14 := @13 @6 -@15 := @14 @10 -@16 := (__v : @3) -> @15 -@17 := fun (__v : @3) => @15 -@18 := LexLeanTarget.TargetSyntax.Value -@19 := LexLeanTarget.TargetSyntax.Ty -@20 := List.nil.{0} -@21 := List.cons.{0} -@22 := @20 @18 -@23 := @20 @19 -@24 := LexLeanTarget.TargetSyntax.Program -@25 := LexLeanPreservation.Rust.RCrate -@26 := LexLeanPreservation.Rust.Flags -@27 := LexLeanPreservation.Rust.WTL -@28 := #2 -@29 := @27 @28 -@30 := #1 -@37 := {p : @24} -> {c : @25} -> {A : @26} -> @29 @30 @4 @22 @23 -@39 := LexLeanPreservation.Rust.wtl_nil @0 -@40 := @27 @0 -@46 := {c : @25} -> {A : @26} -> @40 @30 @4 @22 @23 -@47 := @39 @1 -@48 := @40 @1 -@52 := {A : @26} -> @48 @4 @22 @23 -@53 := @47 @2 -@54 := @48 @2 -@55 := @54 @22 -@56 := @55 @23 -@57 := Nat -@58 := List.{0} -@59 := @58 @18 -@60 := @58 @19 -@61 := Eq.{1} -@62 := Option.{0} -@63 := @62 @60 -@64 := @61 @63 -@65 := LexLeanPreservation.Rust.adtFields -@66 := #6 -@67 := @65 @66 -@68 := #3 -@71 := @64 (@67 @68 @28) -@72 := Option.some.{0} -@73 := @72 @60 -@74 := @73 @4 -@75 := @71 @74 -@76 := #7 -@78 := @27 @76 @66 -@79 := #5 -@82 := @78 @79 @28 @30 -@83 := #8 -@86 := @7 @83 @76 @66 -@87 := LexLeanTarget.TargetSyntax.Value.adt -@88 := #4 -@90 := @87 @88 @68 -@91 := @86 @90 -@92 := @8 @79 -@102 := {p : @24} -> - {c : @25} -> - {A : @26} -> - {i : @57} -> {k : @57} -> {fs : @59} -> {tys : @60} -> (h : @75) -> (hf : @82) -> @91 @92 -@104 := LexLeanPreservation.Rust.wt_adt @0 -@105 := @65 @0 -@109 := @64 (@105 @68 @28) @74 -@113 := @40 @66 @79 @28 @30 -@125 := {c : @25} -> - {A : @26} -> - {i : @57} -> - {k : @57} -> {fs : @59} -> {tys : @60} -> (h : @109) -> (hf : @113) -> @11 @76 @66 @90 @92 -@126 := @104 @1 -@129 := @48 @79 @28 @30 -@139 := {A : @26} -> - {i : @57} -> - {k : @57} -> {fs : @59} -> {tys : @60} -> (h : @109) -> (hf : @129) -> @12 @66 @90 @92 -@140 := @126 @2 -@142 := @54 @28 @30 -@143 := @13 @90 -@150 := {i : @57} -> {k : @57} -> {fs : @59} -> {tys : @60} -> (h : @109) -> (hf : @142) -> @143 @92 -@151 := @140 @9 -@152 := @105 @9 -@161 := {k : @57} -> - {fs : @59} -> {tys : @60} -> (h : @64 (@152 @28) @74) -> (hf : @142) -> @143 @10 -@162 := @151 @9 -@163 := @152 @9 -@164 := @64 @163 -@165 := @164 @74 -@166 := @87 @9 -@168 := @13 (@166 @68) -@173 := {fs : @59} -> {tys : @60} -> (h : @165) -> (hf : @142) -> @168 @10 -@174 := @162 @22 -@175 := @55 @30 -@178 := @13 (@166 @22) @10 -@181 := {tys : @60} -> (h : @165) -> (hf : @175) -> @178 -@182 := @174 @23 -@183 := @73 @23 -@186 := (h : @164 @183) -> (hf : @56) -> @178 -@187 := Eq.refl.{1} -@188 := @187 @63 -@191 := @182 (@188 @163) @53 -@192 := 1 -@193 := @151 @192 -@194 := @152 @192 -@195 := @64 @194 -@196 := @195 @74 -@197 := @87 @192 -@204 := {fs : @59} -> {tys : @60} -> (h : @196) -> (hf : @142) -> @13 (@197 @68) @10 -@205 := @193 @22 -@208 := @13 (@197 @22) @10 -@211 := {tys : @60} -> (h : @196) -> (hf : @175) -> @208 -@212 := @205 @23 -@215 := (h : @195 @183) -> (hf : @56) -> @208 -@218 := @212 (@188 @194) @53 -@219 := LexLeanTarget.TargetSyntax.Value.nat -@220 := @219 @4 -@221 := LexLeanTarget.TargetSyntax.Ty.nat -@224 := @7 @68 @28 @30 -@230 := {p : @24} -> {c : @25} -> {A : @26} -> (n : @57) -> @224 @220 @221 -@232 := LexLeanPreservation.Rust.wt_nat @0 -@234 := @11 @28 @30 -@239 := {c : @25} -> {A : @26} -> (n : @57) -> @234 @220 @221 -@240 := @232 @1 -@241 := @12 @30 -@245 := {A : @26} -> (n : @57) -> @241 @220 @221 -@246 := @240 @2 -@247 := @13 @220 -@248 := @247 @221 -@249 := (n : @57) -> @248 -@250 := @246 @4 -@251 := @21 @18 -@253 := @251 @220 @22 -@254 := @21 @19 -@255 := @254 @221 -@256 := @255 @23 -@259 := @7 @66 @79 @88 -@261 := @259 @68 @28 -@264 := @27 @83 @76 @66 -@266 := @251 @79 @68 -@267 := @264 @266 -@269 := @254 @88 @28 -@279 := {p : @24} -> - {c : @25} -> - {A : @26} -> - {v : @18} -> {t : @19} -> {vs : @59} -> {ts : @60} -> (h : @261) -> (hs : @82) -> @267 @269 -@281 := LexLeanPreservation.Rust.wtl_cons @0 -@283 := @11 @79 @88 -@297 := {c : @25} -> - {A : @26} -> - {v : @18} -> - {t : @19} -> - {vs : @59} -> {ts : @60} -> (h : @283 @68 @28) -> (hs : @113) -> @40 @76 @66 @266 @269 -@298 := @281 @1 -@299 := @12 @88 -@311 := {A : @26} -> - {v : @18} -> - {t : @19} -> {vs : @59} -> {ts : @60} -> (h : @299 @68 @28) -> (hs : @129) -> @48 @66 @266 @269 -@312 := @298 @2 -@322 := {v : @18} -> - {t : @19} -> {vs : @59} -> {ts : @60} -> (h : @13 @68 @28) -> (hs : @142) -> @54 @266 @269 -@323 := @312 @220 -@324 := @219 @68 -@325 := @13 @324 -@326 := @325 @28 -@327 := @219 @79 -@328 := @251 @327 -@330 := @54 (@328 @68) -@336 := {t : @19} -> {vs : @59} -> {ts : @60} -> (h : @326) -> (hs : @142) -> @330 @269 -@337 := @323 @221 -@338 := @219 @28 -@340 := @13 @338 @221 -@341 := @219 @88 -@342 := @251 @341 -@344 := @54 (@342 @68) -@345 := @255 @28 -@350 := {vs : @59} -> {ts : @60} -> (h : @340) -> (hs : @142) -> @344 @345 -@351 := @337 @22 -@352 := @219 @30 -@354 := @13 @352 @221 -@356 := @251 @324 @22 -@357 := @54 @356 -@361 := {ts : @60} -> (h : @354) -> (hs : @175) -> @357 @345 -@362 := @351 @23 -@364 := @251 @338 @22 -@365 := @54 @364 -@368 := (h : @248) -> (hs : @56) -> @365 @256 -@369 := @362 @250 -@371 := @251 @352 @22 -@372 := @54 @371 -@373 := @372 @256 -@374 := (hs : @56) -> @373 -@375 := @369 @53 -@377 := @54 @253 @256 -@378 := 2 -@379 := @151 @378 -@380 := @152 @378 -@381 := @64 @380 -@382 := @381 @74 -@383 := @87 @378 -@390 := {fs : @59} -> {tys : @60} -> (h : @382) -> (hf : @142) -> @13 (@383 @68) @10 -@391 := @379 @253 -@398 := {tys : @60} -> (h : @382) -> (hf : @365 @30) -> @13 (@383 @356) @10 -@399 := @391 @256 -@406 := (h : @381 (@73 @256)) -> (hf : @373) -> @13 (@383 @364) @10 -@408 := @399 (@188 @380) -@412 := (hf : @377) -> @13 (@383 @371) @10 -@413 := @408 @375 -@416 := @13 (@383 @253) @10 -@417 := fun (__x0 : @57) => @413 -@424 := fun (__v : @3) => Reasoning.Planner.Plan.Step.casesOn.{0} @17 @4 @191 @218 @417 -@425 := Reasoning.Planner.Plan.Node -@426 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.__enc_2 -@427 := @426 @4 -@428 := @8 @378 -@429 := @13 @427 -@430 := @429 @428 -@431 := (__s : @425) -> @430 -@432 := Reasoning.Planner.Plan.Node.state -@433 := @432 @4 -@434 := Reasoning.Planner.Plan.Node.trace -@435 := @434 @4 -@436 := LexLeanPreservation.encPair -@437 := @436 @57 -@438 := @437 @57 -@439 := @438 @219 -@440 := @439 @219 -@441 := @440 @433 -@442 := LexLeanTarget.TargetSyntax.Ty.pair -@443 := @442 @221 -@444 := @443 @221 -@445 := fun (__x : @57) => @250 -@446 := Sort 1 -@447 := (a._@._internal._hyg.#0 : @30) -> @18 -@448 := #9 -@451 := @7 @448 @83 @76 -@452 := @88 @4 -@455 := (x : @79) -> @451 @452 @28 -@456 := #10 -@462 := (x : @79) -> @7 @456 @448 @83 @452 @28 -@463 := Prod.{0, 0} -@465 := @463 @76 @66 -@466 := #11 -@469 := @7 @466 @456 @448 -@474 := @436 @83 @76 @66 @79 @4 -@475 := @469 @474 -@477 := @442 @88 @68 -@490 := {p : @24} -> - {c : @25} -> - {A : @26} -> - {α : @446} -> - {β : @446} -> - {ea : @447} -> - {eb : @447} -> {s : @19} -> {t : @19} -> (ha : @455) -> (hb : @462) -> (x : @465) -> @475 @477 -@492 := LexLeanPreservation.Rust.wt_encPair @0 -@517 := {c : @25} -> - {A : @26} -> - {α : @446} -> - {β : @446} -> - {ea : @447} -> - {eb : @447} -> - {s : @19} -> - {t : @19} -> - (ha : (x : @79) -> @11 @83 @76 @452 @28) -> - (hb : (x : @79) -> @11 @448 @83 @452 @28) -> (x : @465) -> @11 @456 @448 @474 @477 -@518 := @492 @1 -@539 := {A : @26} -> - {α : @446} -> - {β : @446} -> - {ea : @447} -> - {eb : @447} -> - {s : @19} -> - {t : @19} -> - (ha : (x : @79) -> @12 @76 @452 @28) -> - (hb : (x : @79) -> @12 @83 @452 @28) -> (x : @465) -> @12 @448 @474 @477 -@540 := @518 @2 -@542 := @13 @452 @28 -@543 := (x : @79) -> @542 -@554 := {α : @446} -> - {β : @446} -> - {ea : @447} -> - {eb : @447} -> {s : @19} -> {t : @19} -> (ha : @543) -> (hb : @543) -> (x : @465) -> @13 @474 @477 -@555 := @540 @57 -@556 := (a._@._internal._hyg.#0 : @57) -> @18 -@557 := (x : @57) -> @542 -@558 := @463 @57 -@573 := {β : @446} -> - {ea : @556} -> - {eb : @447} -> - {s : @19} -> - {t : @19} -> (ha : @557) -> (hb : @543) -> (x : @558 @66) -> @13 (@437 @76 @66 @79 @4) @477 -@574 := @555 @57 -@575 := @558 @57 -@587 := {ea : @556} -> - {eb : @556} -> - {s : @19} -> {t : @19} -> (ha : @557) -> (hb : @557) -> (x : @575) -> @13 (@438 @66 @79 @4) @477 -@588 := @574 @219 -@590 := (x : @57) -> @247 @28 -@600 := {eb : @556} -> - {s : @19} -> {t : @19} -> (ha : @590) -> (hb : @557) -> (x : @575) -> @13 (@439 @79 @4) @477 -@601 := @588 @219 -@603 := @13 (@440 @4) -@609 := {s : @19} -> {t : @19} -> (ha : @590) -> (hb : @590) -> (x : @575) -> @603 @477 -@610 := @601 @221 -@611 := (x : @57) -> @248 -@617 := {t : @19} -> (ha : @611) -> (hb : @590) -> (x : @575) -> @603 (@443 @68) -@618 := @610 @221 -@620 := (x : @575) -> @603 @444 -@622 := (ha : @611) -> (hb : @611) -> @620 -@624 := @618 @445 @445 -@625 := @624 @433 -@627 := @13 @441 @444 -@628 := LexLeanPreservation.encList -@629 := @628 @3 -@630 := @629 @5 -@631 := @630 @435 -@632 := LexLeanTarget.TargetSyntax.Ty.list -@633 := @632 @10 -@636 := fun (__x : @3) => - LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.Compose.RustStd.__wt_0 @4 -@637 := (a._@._internal._hyg.#0 : @4) -> @18 -@638 := @28 @4 -@641 := (x : @28) -> @259 @638 @30 -@642 := @58 @68 -@645 := @7 @76 @66 @79 -@648 := @628 @88 @68 @4 -@649 := @645 @648 -@650 := @632 @28 -@659 := {p : @24} -> - {c : @25} -> - {A : @26} -> {α : @446} -> {e : @637} -> {t : @19} -> (h : @641) -> (xs : @642) -> @649 @650 -@661 := LexLeanPreservation.Rust.wt_encList @0 -@664 := (x : @28) -> @283 @638 @30 -@666 := @11 @66 @79 -@675 := {c : @25} -> - {A : @26} -> {α : @446} -> {e : @637} -> {t : @19} -> (h : @664) -> (xs : @642) -> @666 @648 @650 -@676 := @661 @1 -@679 := (x : @28) -> @299 @638 @30 -@680 := @12 @79 -@688 := {A : @26} -> - {α : @446} -> {e : @637} -> {t : @19} -> (h : @679) -> (xs : @642) -> @680 @648 @650 -@689 := @676 @2 -@691 := @13 @638 @30 -@692 := (x : @28) -> @691 -@699 := {α : @446} -> {e : @637} -> {t : @19} -> (h : @692) -> (xs : @642) -> @13 @648 @650 -@700 := @689 @3 -@701 := (a._@._internal._hyg.#0 : @3) -> @18 -@702 := (x : @3) -> @691 -@703 := @58 @3 -@711 := {e : @701} -> {t : @19} -> (h : @702) -> (xs : @703) -> @13 (@629 @68 @4) @650 -@712 := @700 @5 -@714 := (x : @3) -> @14 @30 -@716 := @13 (@630 @4) -@720 := {t : @19} -> (h : @714) -> (xs : @703) -> @716 @650 -@721 := @712 @10 -@725 := (h : (x : @3) -> @15) -> (xs : @703) -> @716 @633 -@727 := @721 @636 @435 -@729 := @13 @631 @633 -@731 := @251 @631 @22 -@733 := @251 @441 @731 -@734 := @254 @633 -@735 := @734 @23 -@736 := @254 @444 -@737 := @736 @735 -@738 := @312 @631 -@740 := @630 (@434 @68) -@753 := {t : @19} -> - {vs : @59} -> - {ts : @60} -> (h : @13 @740 @28) -> (hs : @142) -> @54 (@251 (@630 (@434 @79)) @68) @269 -@754 := @738 @633 -@756 := @630 (@434 @28) -@758 := @13 @756 @633 -@763 := @54 (@251 (@630 (@434 @88)) @68) -@764 := @734 @28 -@769 := {vs : @59} -> {ts : @60} -> (h : @758) -> (hs : @142) -> @763 @764 -@770 := @754 @22 -@772 := @630 (@434 @30) -@774 := @13 @772 @633 -@776 := @251 @740 @22 -@781 := {ts : @60} -> (h : @774) -> (hs : @175) -> @54 @776 @764 -@782 := @770 @23 -@784 := @251 @756 @22 -@785 := @54 @784 -@788 := (h : @729) -> (hs : @56) -> @785 @735 -@789 := @782 @727 -@791 := @251 @772 @22 -@793 := @54 @791 @735 -@794 := (hs : @56) -> @793 -@795 := @789 @53 -@797 := @54 @731 @735 -@798 := @312 @441 -@800 := @440 (@432 @68) -@813 := {t : @19} -> - {vs : @59} -> - {ts : @60} -> (h : @13 @800 @28) -> (hs : @142) -> @54 (@251 (@440 (@432 @79)) @68) @269 -@814 := @798 @444 -@816 := @440 (@432 @28) -@818 := @13 @816 @444 -@823 := @54 (@251 (@440 (@432 @88)) @68) -@824 := @736 @28 -@829 := {vs : @59} -> {ts : @60} -> (h : @818) -> (hs : @142) -> @823 @824 -@830 := @814 @731 -@832 := @440 (@432 @30) -@834 := @13 @832 @444 -@835 := @785 @30 -@837 := @251 @800 @776 -@842 := {ts : @60} -> (h : @834) -> (hs : @835) -> @54 @837 @824 -@843 := @830 @735 -@845 := @251 @816 @784 -@846 := @54 @845 -@849 := (h : @627) -> (hs : @793) -> @846 @737 -@850 := @843 @625 -@852 := @251 @832 @791 -@854 := @54 @852 @737 -@855 := (hs : @797) -> @854 -@856 := @850 @795 -@858 := @54 @733 @737 -@859 := @140 @378 -@860 := @105 @378 -@869 := {k : @57} -> - {fs : @59} -> {tys : @60} -> (h : @64 (@860 @28) @74) -> (hf : @142) -> @143 @428 -@870 := @859 @9 -@871 := @860 @9 -@872 := @64 @871 -@873 := @872 @74 -@878 := {fs : @59} -> {tys : @60} -> (h : @873) -> (hf : @142) -> @168 @428 -@879 := @870 @733 -@886 := {tys : @60} -> (h : @873) -> (hf : @846 @30) -> @13 (@166 @837) @428 -@887 := @879 @737 -@894 := (h : @872 (@73 @737)) -> (hf : @854) -> @13 (@166 @845) @428 -@896 := @887 (@188 @871) -@900 := (hf : @858) -> @13 (@166 @852) @428 -@901 := @896 @856 -@904 := @13 (@166 @733) @428 -@905 := fun (__s : @425) => @901 -@906 := Reasoning.Planner.Plan.Ledger -@907 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.__enc_3 -@908 := @907 @4 -@909 := 3 -@910 := @8 @909 -@913 := (__s : @906) -> @13 @908 @910 -@914 := Reasoning.Planner.Plan.Ledger.iterations -@915 := @914 @4 -@916 := Reasoning.Planner.Plan.Ledger.attempts -@917 := @916 @4 -@918 := Reasoning.Planner.Plan.Ledger.firings -@919 := @918 @4 -@920 := Reasoning.Planner.Plan.Ledger.expansions -@921 := @920 @4 -@922 := Reasoning.Planner.Plan.Ledger.verifications -@923 := @922 @4 -@924 := Reasoning.Planner.Plan.Ledger.frontier -@925 := @924 @4 -@926 := @219 @915 -@927 := @246 @915 -@929 := @13 @926 @221 -@930 := @219 @917 -@931 := @246 @917 -@933 := @13 @930 @221 -@934 := @219 @919 -@935 := @246 @919 -@937 := @13 @934 @221 -@938 := @219 @921 -@939 := @246 @921 -@941 := @13 @938 @221 -@942 := @219 @923 -@943 := @246 @923 -@945 := @13 @942 @221 -@946 := @219 @925 -@947 := @246 @925 -@949 := @13 @946 @221 -@951 := @251 @946 @22 -@953 := @251 @942 @951 -@955 := @251 @938 @953 -@957 := @251 @934 @955 -@959 := @251 @930 @957 -@961 := @251 @926 @959 -@962 := @255 @256 -@963 := @255 @962 -@964 := @255 @963 -@965 := @255 @964 -@966 := @255 @965 -@967 := @312 @946 -@969 := @219 (@924 @68) -@982 := {t : @19} -> - {vs : @59} -> - {ts : @60} -> (h : @13 @969 @28) -> (hs : @142) -> @54 (@251 (@219 (@924 @79)) @68) @269 -@983 := @967 @221 -@985 := @219 (@924 @28) -@997 := {vs : @59} -> - {ts : @60} -> (h : @13 @985 @221) -> (hs : @142) -> @54 (@251 (@219 (@924 @88)) @68) @345 -@998 := @983 @22 -@1000 := @219 (@924 @30) -@1002 := @13 @1000 @221 -@1004 := @251 @969 @22 -@1009 := {ts : @60} -> (h : @1002) -> (hs : @175) -> @54 @1004 @345 -@1010 := @998 @23 -@1012 := @251 @985 @22 -@1013 := @54 @1012 -@1016 := (h : @949) -> (hs : @56) -> @1013 @256 -@1017 := @1010 @947 -@1019 := @251 @1000 @22 -@1021 := @54 @1019 @256 -@1022 := (hs : @56) -> @1021 -@1023 := @1017 @53 -@1025 := @54 @951 @256 -@1026 := @312 @942 -@1028 := @219 (@922 @68) -@1041 := {t : @19} -> - {vs : @59} -> - {ts : @60} -> (h : @13 @1028 @28) -> (hs : @142) -> @54 (@251 (@219 (@922 @79)) @68) @269 -@1042 := @1026 @221 -@1044 := @219 (@922 @28) -@1056 := {vs : @59} -> - {ts : @60} -> (h : @13 @1044 @221) -> (hs : @142) -> @54 (@251 (@219 (@922 @88)) @68) @345 -@1057 := @1042 @951 -@1059 := @219 (@922 @30) -@1061 := @13 @1059 @221 -@1062 := @1013 @30 -@1064 := @251 @1028 @1004 -@1069 := {ts : @60} -> (h : @1061) -> (hs : @1062) -> @54 @1064 @345 -@1070 := @1057 @256 -@1072 := @251 @1044 @1012 -@1073 := @54 @1072 -@1076 := (h : @945) -> (hs : @1021) -> @1073 @962 -@1077 := @1070 @943 -@1079 := @251 @1059 @1019 -@1081 := @54 @1079 @962 -@1082 := (hs : @1025) -> @1081 -@1083 := @1077 @1023 -@1085 := @54 @953 @962 -@1086 := @312 @938 -@1088 := @219 (@920 @68) -@1101 := {t : @19} -> - {vs : @59} -> - {ts : @60} -> (h : @13 @1088 @28) -> (hs : @142) -> @54 (@251 (@219 (@920 @79)) @68) @269 -@1102 := @1086 @221 -@1104 := @219 (@920 @28) -@1116 := {vs : @59} -> - {ts : @60} -> (h : @13 @1104 @221) -> (hs : @142) -> @54 (@251 (@219 (@920 @88)) @68) @345 -@1117 := @1102 @953 -@1119 := @219 (@920 @30) -@1121 := @13 @1119 @221 -@1122 := @1073 @30 -@1124 := @251 @1088 @1064 -@1129 := {ts : @60} -> (h : @1121) -> (hs : @1122) -> @54 @1124 @345 -@1130 := @1117 @962 -@1132 := @251 @1104 @1072 -@1133 := @54 @1132 -@1136 := (h : @941) -> (hs : @1081) -> @1133 @963 -@1137 := @1130 @939 -@1139 := @251 @1119 @1079 -@1141 := @54 @1139 @963 -@1142 := (hs : @1085) -> @1141 -@1143 := @1137 @1083 -@1145 := @54 @955 @963 -@1146 := @312 @934 -@1148 := @219 (@918 @68) -@1161 := {t : @19} -> - {vs : @59} -> - {ts : @60} -> (h : @13 @1148 @28) -> (hs : @142) -> @54 (@251 (@219 (@918 @79)) @68) @269 -@1162 := @1146 @221 -@1164 := @219 (@918 @28) -@1176 := {vs : @59} -> - {ts : @60} -> (h : @13 @1164 @221) -> (hs : @142) -> @54 (@251 (@219 (@918 @88)) @68) @345 -@1177 := @1162 @955 -@1179 := @219 (@918 @30) -@1181 := @13 @1179 @221 -@1182 := @1133 @30 -@1184 := @251 @1148 @1124 -@1189 := {ts : @60} -> (h : @1181) -> (hs : @1182) -> @54 @1184 @345 -@1190 := @1177 @963 -@1192 := @251 @1164 @1132 -@1193 := @54 @1192 -@1196 := (h : @937) -> (hs : @1141) -> @1193 @964 -@1197 := @1190 @935 -@1199 := @251 @1179 @1139 -@1201 := @54 @1199 @964 -@1202 := (hs : @1145) -> @1201 -@1203 := @1197 @1143 -@1205 := @54 @957 @964 -@1206 := @312 @930 -@1208 := @219 (@916 @68) -@1221 := {t : @19} -> - {vs : @59} -> - {ts : @60} -> (h : @13 @1208 @28) -> (hs : @142) -> @54 (@251 (@219 (@916 @79)) @68) @269 -@1222 := @1206 @221 -@1224 := @219 (@916 @28) -@1236 := {vs : @59} -> - {ts : @60} -> (h : @13 @1224 @221) -> (hs : @142) -> @54 (@251 (@219 (@916 @88)) @68) @345 -@1237 := @1222 @957 -@1239 := @219 (@916 @30) -@1241 := @13 @1239 @221 -@1242 := @1193 @30 -@1244 := @251 @1208 @1184 -@1249 := {ts : @60} -> (h : @1241) -> (hs : @1242) -> @54 @1244 @345 -@1250 := @1237 @964 -@1252 := @251 @1224 @1192 -@1253 := @54 @1252 -@1256 := (h : @933) -> (hs : @1201) -> @1253 @965 -@1257 := @1250 @931 -@1259 := @251 @1239 @1199 -@1261 := @54 @1259 @965 -@1262 := (hs : @1205) -> @1261 -@1263 := @1257 @1203 -@1265 := @54 @959 @965 -@1266 := @312 @926 -@1268 := @219 (@914 @68) -@1281 := {t : @19} -> - {vs : @59} -> - {ts : @60} -> (h : @13 @1268 @28) -> (hs : @142) -> @54 (@251 (@219 (@914 @79)) @68) @269 -@1282 := @1266 @221 -@1284 := @219 (@914 @28) -@1296 := {vs : @59} -> - {ts : @60} -> (h : @13 @1284 @221) -> (hs : @142) -> @54 (@251 (@219 (@914 @88)) @68) @345 -@1297 := @1282 @959 -@1299 := @219 (@914 @30) -@1301 := @13 @1299 @221 -@1302 := @1253 @30 -@1304 := @251 @1268 @1244 -@1309 := {ts : @60} -> (h : @1301) -> (hs : @1302) -> @54 @1304 @345 -@1310 := @1297 @965 -@1312 := @251 @1284 @1252 -@1313 := @54 @1312 -@1316 := (h : @929) -> (hs : @1261) -> @1313 @966 -@1317 := @1310 @927 -@1319 := @251 @1299 @1259 -@1321 := @54 @1319 @966 -@1322 := (hs : @1265) -> @1321 -@1323 := @1317 @1263 -@1325 := @54 @961 @966 -@1326 := @140 @909 -@1327 := @105 @909 -@1336 := {k : @57} -> - {fs : @59} -> {tys : @60} -> (h : @64 (@1327 @28) @74) -> (hf : @142) -> @143 @910 -@1337 := @1326 @9 -@1338 := @1327 @9 -@1339 := @64 @1338 -@1340 := @1339 @74 -@1345 := {fs : @59} -> {tys : @60} -> (h : @1340) -> (hf : @142) -> @168 @910 -@1346 := @1337 @961 -@1353 := {tys : @60} -> (h : @1340) -> (hf : @1313 @30) -> @13 (@166 @1304) @910 -@1354 := @1346 @966 -@1361 := (h : @1339 (@73 @966)) -> (hf : @1321) -> @13 (@166 @1312) @910 -@1363 := @1354 (@188 @1338) -@1367 := (hf : @1325) -> @13 (@166 @1319) @910 -@1368 := @1363 @1323 -@1371 := @13 (@166 @961) @910 -@1372 := fun (__s : @906) => @1368 -@1373 := Reasoning.Planner.Plan.Search -@1375 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.__enc_1 @4 -@1376 := @8 @192 -@1379 := (__s : @1373) -> @13 @1375 @1376 -@1380 := Reasoning.Planner.Plan.Search.frontier -@1381 := @1380 @4 -@1382 := Reasoning.Planner.Plan.Search.visited -@1383 := @1382 @4 -@1384 := Reasoning.Planner.Plan.Search.found -@1385 := @1384 @4 -@1386 := Reasoning.Planner.Plan.Search.truncated -@1387 := @1386 @4 -@1388 := Reasoning.Planner.Plan.Search.ledger -@1389 := @1388 @4 -@1390 := @628 @425 -@1391 := @1390 @426 -@1392 := @1391 @1381 -@1393 := @632 @428 -@1396 := fun (__x : @425) => - LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.Compose.RustStd.__wt_2 @4 -@1397 := @689 @425 -@1398 := (a._@._internal._hyg.#0 : @425) -> @18 -@1399 := (x : @425) -> @691 -@1400 := @58 @425 -@1408 := {e : @1398} -> {t : @19} -> (h : @1399) -> (xs : @1400) -> @13 (@1390 @68 @4) @650 -@1409 := @1397 @426 -@1411 := (x : @425) -> @429 @30 -@1413 := @13 (@1391 @4) -@1417 := {t : @19} -> (h : @1411) -> (xs : @1400) -> @1413 @650 -@1418 := @1409 @428 -@1419 := (x : @425) -> @430 -@1422 := (h : @1419) -> (xs : @1400) -> @1413 @1393 -@1424 := @1418 @1396 @1381 -@1426 := @13 @1392 @1393 -@1427 := @628 @575 -@1428 := @1427 @440 -@1429 := @1428 @1383 -@1430 := @632 @444 -@1432 := fun (__x : @575) => @624 @4 -@1433 := @689 @575 -@1434 := (a._@._internal._hyg.#0 : @575) -> @18 -@1435 := (x : @575) -> @691 -@1436 := @58 @575 -@1444 := {e : @1434} -> {t : @19} -> (h : @1435) -> (xs : @1436) -> @13 (@1427 @68 @4) @650 -@1445 := @1433 @440 -@1447 := (x : @575) -> @603 @30 -@1449 := @13 (@1428 @4) -@1453 := {t : @19} -> (h : @1447) -> (xs : @1436) -> @1449 @650 -@1454 := @1445 @444 -@1457 := (h : @620) -> (xs : @1436) -> @1449 @1430 -@1459 := @1454 @1432 @1383 -@1461 := @13 @1429 @1430 -@1462 := @463 @575 -@1463 := @1462 @425 -@1464 := @436 @575 -@1465 := @1464 @425 -@1466 := @1465 @440 -@1467 := @1466 @426 -@1468 := LexLeanPreservation.encOption -@1469 := @1468 @1463 -@1470 := @1469 @1467 -@1471 := @1470 @1385 -@1472 := @442 @444 -@1473 := @1472 @428 -@1474 := LexLeanTarget.TargetSyntax.Ty.option -@1475 := @1474 @1473 -@1476 := @540 @575 -@1477 := (x : @575) -> @542 -@1492 := {β : @446} -> - {ea : @1434} -> - {eb : @447} -> - {s : @19} -> - {t : @19} -> (ha : @1477) -> (hb : @543) -> (x : @1462 @66) -> @13 (@1464 @76 @66 @79 @4) @477 -@1493 := @1476 @425 -@1494 := (x : @425) -> @542 -@1506 := {ea : @1434} -> - {eb : @1398} -> - {s : @19} -> - {t : @19} -> (ha : @1477) -> (hb : @1494) -> (x : @1463) -> @13 (@1465 @66 @79 @4) @477 -@1507 := @1493 @440 -@1509 := (x : @575) -> @603 @28 -@1519 := {eb : @1398} -> - {s : @19} -> {t : @19} -> (ha : @1509) -> (hb : @1494) -> (x : @1463) -> @13 (@1466 @79 @4) @477 -@1520 := @1507 @426 -@1522 := (x : @425) -> @429 @28 -@1524 := @13 (@1467 @4) -@1530 := {s : @19} -> {t : @19} -> (ha : @1509) -> (hb : @1522) -> (x : @1463) -> @1524 @477 -@1531 := @1520 @444 -@1537 := {t : @19} -> (ha : @620) -> (hb : @1522) -> (x : @1463) -> @1524 (@1472 @68) -@1538 := @1531 @428 -@1540 := (x : @1463) -> @1524 @1473 -@1542 := (ha : @620) -> (hb : @1419) -> @1540 -@1546 := fun (__x : @1463) => @1538 @1432 @1396 @4 -@1547 := @62 @68 -@1550 := @1468 @88 @68 @4 -@1551 := @645 @1550 -@1552 := @1474 @28 -@1561 := {p : @24} -> - {c : @25} -> - {A : @26} -> {α : @446} -> {e : @637} -> {t : @19} -> (h : @641) -> (o : @1547) -> @1551 @1552 -@1563 := LexLeanPreservation.Rust.wt_encOption @0 -@1572 := {c : @25} -> - {A : @26} -> - {α : @446} -> {e : @637} -> {t : @19} -> (h : @664) -> (o : @1547) -> @666 @1550 @1552 -@1573 := @1563 @1 -@1581 := {A : @26} -> - {α : @446} -> {e : @637} -> {t : @19} -> (h : @679) -> (o : @1547) -> @680 @1550 @1552 -@1582 := @1573 @2 -@1589 := {α : @446} -> {e : @637} -> {t : @19} -> (h : @692) -> (o : @1547) -> @13 @1550 @1552 -@1590 := @1582 @1463 -@1591 := (a._@._internal._hyg.#0 : @1463) -> @18 -@1592 := (x : @1463) -> @691 -@1593 := @62 @1463 -@1601 := {e : @1591} -> {t : @19} -> (h : @1592) -> (o : @1593) -> @13 (@1469 @68 @4) @1552 -@1602 := @1590 @1467 -@1604 := (x : @1463) -> @1524 @30 -@1606 := @13 (@1470 @4) -@1610 := {t : @19} -> (h : @1604) -> (o : @1593) -> @1606 @1552 -@1611 := @1602 @1473 -@1614 := (h : @1540) -> (o : @1593) -> @1606 @1475 -@1616 := @1611 @1546 @1385 -@1618 := @13 @1471 @1475 -@1619 := LexLeanTarget.TargetSyntax.Value.bool -@1620 := @1619 @1387 -@1621 := LexLeanTarget.TargetSyntax.Ty.bool -@1622 := Bool -@1623 := @1619 @4 -@1629 := {p : @24} -> {c : @25} -> {A : @26} -> (b : @1622) -> @224 @1623 @1621 -@1631 := LexLeanPreservation.Rust.wt_bool @0 -@1636 := {c : @25} -> {A : @26} -> (b : @1622) -> @234 @1623 @1621 -@1637 := @1631 @1 -@1641 := {A : @26} -> (b : @1622) -> @241 @1623 @1621 -@1642 := @1637 @2 -@1645 := (b : @1622) -> @13 @1623 @1621 -@1646 := @1642 @1387 -@1648 := @13 @1620 @1621 -@1649 := @907 @1389 -@1651 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.Compose.RustStd.__wt_3 @1389 -@1653 := @251 @1649 @22 -@1655 := @251 @1620 @1653 -@1657 := @251 @1471 @1655 -@1659 := @251 @1429 @1657 -@1661 := @251 @1392 @1659 -@1662 := @254 @910 -@1663 := @1662 @23 -@1664 := @254 @1621 -@1665 := @1664 @1663 -@1666 := @254 @1475 -@1667 := @1666 @1665 -@1668 := @254 @1430 -@1669 := @1668 @1667 -@1670 := @254 @1393 -@1671 := @1670 @1669 -@1672 := @312 @1649 -@1674 := @907 (@1388 @68) -@1687 := {t : @19} -> - {vs : @59} -> - {ts : @60} -> (h : @13 @1674 @28) -> (hs : @142) -> @54 (@251 (@907 (@1388 @79)) @68) @269 -@1688 := @1672 @910 -@1690 := @907 (@1388 @28) -@1692 := @13 @1690 @910 -@1697 := @54 (@251 (@907 (@1388 @88)) @68) -@1698 := @1662 @28 -@1703 := {vs : @59} -> {ts : @60} -> (h : @1692) -> (hs : @142) -> @1697 @1698 -@1704 := @1688 @22 -@1706 := @907 (@1388 @30) -@1708 := @13 @1706 @910 -@1710 := @251 @1674 @22 -@1715 := {ts : @60} -> (h : @1708) -> (hs : @175) -> @54 @1710 @1698 -@1716 := @1704 @23 -@1718 := @13 @1649 @910 -@1720 := @251 @1690 @22 -@1721 := @54 @1720 -@1724 := (h : @1718) -> (hs : @56) -> @1721 @1663 -@1725 := @1716 @1651 -@1727 := @251 @1706 @22 -@1729 := @54 @1727 @1663 -@1730 := (hs : @56) -> @1729 -@1731 := @1725 @53 -@1733 := @54 @1653 @1663 -@1734 := @312 @1620 -@1736 := @1619 (@1386 @68) -@1749 := {t : @19} -> - {vs : @59} -> - {ts : @60} -> (h : @13 @1736 @28) -> (hs : @142) -> @54 (@251 (@1619 (@1386 @79)) @68) @269 -@1750 := @1734 @1621 -@1752 := @1619 (@1386 @28) -@1754 := @13 @1752 @1621 -@1759 := @54 (@251 (@1619 (@1386 @88)) @68) -@1760 := @1664 @28 -@1765 := {vs : @59} -> {ts : @60} -> (h : @1754) -> (hs : @142) -> @1759 @1760 -@1766 := @1750 @1653 -@1768 := @1619 (@1386 @30) -@1770 := @13 @1768 @1621 -@1771 := @1721 @30 -@1773 := @251 @1736 @1710 -@1778 := {ts : @60} -> (h : @1770) -> (hs : @1771) -> @54 @1773 @1760 -@1779 := @1766 @1663 -@1781 := @251 @1752 @1720 -@1782 := @54 @1781 -@1785 := (h : @1648) -> (hs : @1729) -> @1782 @1665 -@1786 := @1779 @1646 -@1788 := @251 @1768 @1727 -@1790 := @54 @1788 @1665 -@1791 := (hs : @1733) -> @1790 -@1792 := @1786 @1731 -@1794 := @54 @1655 @1665 -@1795 := @312 @1471 -@1797 := @1470 (@1384 @68) -@1810 := {t : @19} -> - {vs : @59} -> - {ts : @60} -> (h : @13 @1797 @28) -> (hs : @142) -> @54 (@251 (@1470 (@1384 @79)) @68) @269 -@1811 := @1795 @1475 -@1813 := @1470 (@1384 @28) -@1815 := @13 @1813 @1475 -@1820 := @54 (@251 (@1470 (@1384 @88)) @68) -@1821 := @1666 @28 -@1826 := {vs : @59} -> {ts : @60} -> (h : @1815) -> (hs : @142) -> @1820 @1821 -@1827 := @1811 @1655 -@1829 := @1470 (@1384 @30) -@1831 := @13 @1829 @1475 -@1832 := @1782 @30 -@1834 := @251 @1797 @1773 -@1839 := {ts : @60} -> (h : @1831) -> (hs : @1832) -> @54 @1834 @1821 -@1840 := @1827 @1665 -@1842 := @251 @1813 @1781 -@1843 := @54 @1842 -@1846 := (h : @1618) -> (hs : @1790) -> @1843 @1667 -@1847 := @1840 @1616 -@1849 := @251 @1829 @1788 -@1851 := @54 @1849 @1667 -@1852 := (hs : @1794) -> @1851 -@1853 := @1847 @1792 -@1855 := @54 @1657 @1667 -@1856 := @312 @1429 -@1858 := @1428 (@1382 @68) -@1871 := {t : @19} -> - {vs : @59} -> - {ts : @60} -> (h : @13 @1858 @28) -> (hs : @142) -> @54 (@251 (@1428 (@1382 @79)) @68) @269 -@1872 := @1856 @1430 -@1874 := @1428 (@1382 @28) -@1876 := @13 @1874 @1430 -@1881 := @54 (@251 (@1428 (@1382 @88)) @68) -@1882 := @1668 @28 -@1887 := {vs : @59} -> {ts : @60} -> (h : @1876) -> (hs : @142) -> @1881 @1882 -@1888 := @1872 @1657 -@1890 := @1428 (@1382 @30) -@1892 := @13 @1890 @1430 -@1893 := @1843 @30 -@1895 := @251 @1858 @1834 -@1900 := {ts : @60} -> (h : @1892) -> (hs : @1893) -> @54 @1895 @1882 -@1901 := @1888 @1667 -@1903 := @251 @1874 @1842 -@1904 := @54 @1903 -@1907 := (h : @1461) -> (hs : @1851) -> @1904 @1669 -@1908 := @1901 @1459 -@1910 := @251 @1890 @1849 -@1912 := @54 @1910 @1669 -@1913 := (hs : @1855) -> @1912 -@1914 := @1908 @1853 -@1916 := @54 @1659 @1669 -@1917 := @312 @1392 -@1919 := @1391 (@1380 @68) -@1932 := {t : @19} -> - {vs : @59} -> - {ts : @60} -> (h : @13 @1919 @28) -> (hs : @142) -> @54 (@251 (@1391 (@1380 @79)) @68) @269 -@1933 := @1917 @1393 -@1935 := @1391 (@1380 @28) -@1937 := @13 @1935 @1393 -@1942 := @54 (@251 (@1391 (@1380 @88)) @68) -@1943 := @1670 @28 -@1948 := {vs : @59} -> {ts : @60} -> (h : @1937) -> (hs : @142) -> @1942 @1943 -@1949 := @1933 @1659 -@1951 := @1391 (@1380 @30) -@1953 := @13 @1951 @1393 -@1954 := @1904 @30 -@1956 := @251 @1919 @1895 -@1961 := {ts : @60} -> (h : @1953) -> (hs : @1954) -> @54 @1956 @1943 -@1962 := @1949 @1669 -@1964 := @251 @1935 @1903 -@1965 := @54 @1964 -@1968 := (h : @1426) -> (hs : @1912) -> @1965 @1671 -@1969 := @1962 @1424 -@1971 := @251 @1951 @1910 -@1973 := @54 @1971 @1671 -@1974 := (hs : @1916) -> @1973 -@1975 := @1969 @1914 -@1977 := @54 @1661 @1671 -@1978 := @140 @192 -@1979 := @105 @192 -@1988 := {k : @57} -> - {fs : @59} -> {tys : @60} -> (h : @64 (@1979 @28) @74) -> (hf : @142) -> @143 @1376 -@1989 := @1978 @9 -@1990 := @1979 @9 -@1991 := @64 @1990 -@1992 := @1991 @74 -@1997 := {fs : @59} -> {tys : @60} -> (h : @1992) -> (hf : @142) -> @168 @1376 -@1998 := @1989 @1661 -@2005 := {tys : @60} -> (h : @1992) -> (hf : @1965 @30) -> @13 (@166 @1956) @1376 -@2006 := @1998 @1671 -@2013 := (h : @1991 (@73 @1671)) -> (hf : @1973) -> @13 (@166 @1964) @1376 -@2015 := @2006 (@188 @1990) -@2019 := (hf : @1977) -> @13 (@166 @1971) @1376 -@2020 := @2015 @1975 -@2023 := @13 (@166 @1661) @1376 -@2024 := fun (__s : @1373) => @2020 -@2025 := @246 @30 -@2026 := @558 @18 -@2030 := Prod.mk.{0, 0} @57 @18 @9 -@2031 := @2030 @352 -@2032 := @20 @2026 -@2033 := @21 @2026 -@2035 := @2033 @2031 @2032 -@2036 := Bool.true -@2037 := LexLeanTarget.TargetSyntax.Function -@2038 := LexLeanTarget.TargetSyntax.Program.functions -@2039 := @2038 @0 -@2040 := @20 @57 -@2041 := LexLeanTarget.TargetSyntax.Ty.unit -@2042 := LexLeanTarget.TargetSyntax.Value.unit -@2045 := LexLeanTarget.TargetSyntax.Expr.value @2041 @2042 -@2050 := LexLeanTarget.TargetSyntax.Function.mk @2040 @23 @2041 @2045 -@2055 := List.getD.{0} @2037 @2039 @9 @2050 -@2059 := fun (__e_n : @57) => - LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.RustStd.root @4 @9 -@2060 := @312 @352 -@2062 := @13 @341 @28 -@2063 := @219 @66 -@2064 := @251 @2063 -@2072 := {t : @19} -> {vs : @59} -> {ts : @60} -> (h : @2062) -> (hs : @142) -> @54 (@2064 @68) @269 -@2073 := @2060 @221 -@2079 := {vs : @59} -> {ts : @60} -> (h : @325 @221) -> (hs : @142) -> @330 @345 -@2080 := @2073 @22 -@2081 := @342 @22 -@2082 := @54 @2081 -@2086 := {ts : @60} -> (h : @340) -> (hs : @175) -> @2082 @345 -@2087 := @2080 @23 -@2090 := (h : @354) -> (hs : @56) -> @357 @256 -@2092 := @2087 @2025 @53 -@2093 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.denote -@2094 := @2093 @30 -@2095 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.__fits_0 -@2096 := @2095 @30 -@2099 := @219 (Reasoning.Main.planLeft @30) -@2101 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.root @30 -@2102 := Ne.{1} -@2103 := LexLeanPreservation.Obs -@2104 := @2102 @2103 -@2105 := LexLeanPreservation.Rel -@2108 := @2104 (@2105 @30 @4) -@2109 := LexLeanPreservation.Obs.stuck -@2112 := (f : @1622) -> (v : @18) -> @2108 @2109 -@2114 := LexLeanPreservation.Rust.rel_ne_stuck @2096 -@2120 := (v : @18) -> @2104 (@2105 (@2095 @28) @4) @2109 -@2121 := @2114 @2099 -@2125 := @2104 (@2105 @2096 @2099) @2109 -@2126 := @58 @2026 -@2127 := LexLeanPreservation.Rust.FunSem -@2133 := (n : @57) -> @2127 @448 @83 @76 @4 @66 -@2134 := @62 @2037 -@2135 := @61 @2134 -@2142 := LexLeanRuntime.index (@58 @2037) @2037 (LexLeanRuntime.instIndexableList @2037) -@2146 := @2135 (@2142 (@2038 @448) @66) -@2147 := @72 @2037 -@2148 := @2147 @79 -@2149 := @2146 @2148 -@2153 := @27 @456 @448 @83 @79 -@2154 := LexLeanTarget.TargetSyntax.Function.types -@2155 := @2154 @66 -@2156 := @2153 @2155 -@2157 := @62 @2126 -@2158 := @61 @2157 -@2159 := LexLeanTarget.TargetSemantics.bindAll -@2160 := LexLeanTarget.TargetSyntax.Function.parameters -@2165 := @2158 (@2159 (@2160 @76) @66 @2032) -@2166 := @72 @2126 -@2167 := @2166 @79 -@2168 := @2165 @2167 -@2169 := @62 @1622 -@2170 := @61 @2169 -@2171 := LexLeanPreservation.Rust.fnFallible -@2174 := @2170 (@2171 @466 @448) -@2175 := @72 @1622 -@2176 := @2175 @79 -@2177 := @2174 @2176 -@2178 := LexLeanPreservation.RunConv -@2179 := #13 -@2183 := @2178 @2179 @456 @83 @79 -@2185 := @2104 @66 @2109 -@2186 := Exists.{1} -@2187 := LexLeanPreservation.Rust.ROut -@2188 := @2186 @2187 -@2189 := And -@2190 := LexLeanPreservation.Rust.RealizesFn -@2194 := @2189 (@2190 @448 @83 @4) -@2195 := LexLeanPreservation.Rust.RCI -@2197 := @2195 #15 -@2198 := LexLeanPreservation.Rust.fnIdent -@2199 := @2198 @2179 -@2206 := (hne : @2185) -> @2188 (fun (ro : @2187) => @2194 (@2197 @2199 @466 @4)) -@2221 := {p : @24} -> - {c : @25} -> - {A : @26} -> - {f : @57} -> - {fn : @2037} -> - {args : @59} -> - {env : @2126} -> - {F : @1622} -> - {o : @2103} -> - (hB : @2133) -> - (hfn : @2149) -> (hwt : @2156) -> (hbind : @2168) -> (hF : @2177) -> (hA : @2183) -> @2206 -@2223 := LexLeanPreservation.Rust.compose @0 -@2224 := @2127 @0 -@2229 := (n : @57) -> @2224 @83 @76 @4 @66 -@2230 := @2142 @2039 -@2233 := @2135 (@2230 @66) @2148 -@2237 := @40 @448 @83 @79 @2155 -@2238 := @2178 @0 -@2241 := @2238 @456 @83 @79 -@2255 := {c : @25} -> - {A : @26} -> - {f : @57} -> - {fn : @2037} -> - {args : @59} -> - {env : @2126} -> - {F : @1622} -> - {o : @2103} -> - (hB : @2229) -> - (hfn : @2233) -> (hwt : @2237) -> (hbind : @2168) -> (hF : @2177) -> (hA : @2241) -> @2206 -@2256 := @2223 @1 -@2257 := @2224 @1 -@2261 := (n : @57) -> @2257 @76 @4 @66 -@2264 := @48 @83 @79 @2155 -@2265 := @2171 @1 -@2268 := @2170 (@2265 @448) @2176 -@2269 := @2195 @1 -@2279 := (hbind : @2168) -> - (hF : @2268) -> - (hA : @2241) -> (hne : @2185) -> @2188 (fun (ro : @2187) => @2194 (@2269 @2199 @466 @4)) -@2289 := {A : @26} -> - {f : @57} -> - {fn : @2037} -> - {args : @59} -> - {env : @2126} -> - {F : @1622} -> {o : @2103} -> (hB : @2261) -> (hfn : @2233) -> (hwt : @2264) -> @2279 -@2290 := @2256 @2 -@2292 := @2257 @2 @4 -@2294 := (n : @57) -> @2292 @66 -@2295 := @54 @79 -@2296 := @2295 @2155 -@2305 := {f : @57} -> - {fn : @2037} -> - {args : @59} -> - {env : @2126} -> - {F : @1622} -> {o : @2103} -> (hB : @2294) -> (hfn : @2233) -> (hwt : @2296) -> @2279 -@2306 := @2290 @9 -@2308 := (n : @57) -> @2292 @9 -@2309 := @2230 @9 -@2310 := @2135 @2309 -@2311 := @2310 @2148 -@2312 := @2265 @9 -@2313 := @2170 @2312 -@2314 := @2313 @2176 -@2315 := @2238 @9 -@2317 := @2315 @83 @79 -@2319 := @2269 (@2198 @9) -@2327 := (hF : @2314) -> - (hA : @2317) -> (hne : @2185) -> @2188 (fun (ro : @2187) => @2194 (@2319 @466 @4)) -@2336 := {fn : @2037} -> - {args : @59} -> - {env : @2126} -> - {F : @1622} -> - {o : @2103} -> (hB : @2308) -> (hfn : @2311) -> (hwt : @2296) -> (hbind : @2168) -> @2327 -@2337 := @2306 @2055 -@2339 := @2310 (@2147 @2055) -@2340 := @2154 @2055 -@2341 := @2295 @2340 -@2343 := @2159 (@2160 @2055) -@2355 := {args : @59} -> - {env : @2126} -> - {F : @1622} -> - {o : @2103} -> - (hB : @2308) -> (hfn : @2339) -> (hwt : @2341) -> (hbind : @2158 (@2343 @66 @2032) @2167) -> @2327 -@2356 := @2337 @371 -@2357 := @2064 @22 -@2359 := @54 @2357 @2340 -@2362 := @251 (@219 @76) @22 -@2366 := @2158 (@2343 @2362 @2032) @2167 -@2369 := @251 (@219 @448) @22 -@2390 := {env : @2126} -> - {F : @1622} -> - {o : @2103} -> - (hB : @2308) -> - (hfn : @2339) -> - (hwt : @2359) -> - (hbind : @2366) -> - (hF : @2314) -> - (hA : @2315 @2369 @79) -> - (hne : @2185) -> @2188 (fun (ro : @2187) => @2194 (@2319 (@251 (@219 #12) @22) @4)) -@2391 := @2356 @2035 -@2392 := @328 @22 -@2394 := @54 @2392 @2340 -@2402 := @2158 (@2343 @2357 @2032) (@2166 (@2033 (@2030 @2063) @2032)) -@2405 := @251 (@219 @83) @22 -@2424 := {F : @1622} -> - {o : @2103} -> - (hB : @2308) -> - (hfn : @2339) -> - (hwt : @2394) -> - (hbind : @2402) -> - (hF : @2314) -> - (hA : @2315 @2405 @79) -> - (hne : @2185) -> @2188 (fun (ro : @2187) => @2194 (@2319 (@251 (@219 @466) @22) @4)) -@2425 := @2391 @2036 -@2426 := @2082 @2340 -@2434 := @2158 (@2343 @2392 @2032) (@2166 (@2033 (@2030 @327) @2032)) -@2436 := @2313 (@2175 @2036) -@2438 := @2315 @2362 @79 -@2439 := @2190 @2036 -@2458 := {o : @2103} -> - (hB : @2308) -> - (hfn : @2339) -> - (hwt : @2426) -> - (hbind : @2434) -> - (hF : @2436) -> - (hA : @2438) -> - (hne : @2185) -> - @2188 (fun (ro : @2187) => @2189 (@2439 @83 @4) (@2319 (@251 (@219 @456) @22) @4)) -@2459 := @2425 @2094 -@2460 := @357 @2340 -@2468 := @2158 (@2343 @2081 @2032) (@2166 (@2033 (@2030 @341) @2032)) -@2469 := @2315 @2357 -@2470 := @2093 @66 -@2471 := @2469 @2470 -@2472 := @2093 @76 -@2490 := (hB : @2308) -> - (hfn : @2339) -> - (hwt : @2460) -> - (hbind : @2468) -> - (hF : @2436) -> - (hA : @2471) -> - (hne : @2104 @2472 @2109) -> - @2188 (fun (ro : @2187) => @2189 (@2439 (@2093 @448) @4) (@2319 @2369 @4)) -@2491 := @2459 @2059 -@2492 := @365 @2340 -@2500 := @2158 (@2343 @356 @2032) (@2166 (@2033 (@2030 @324) @2032)) -@2501 := @2315 @2392 -@2502 := @2093 @79 -@2520 := (hfn : @2339) -> - (hwt : @2492) -> - (hbind : @2500) -> - (hF : @2436) -> - (hA : @2501 @2502) -> - (hne : @2104 @2470 @2109) -> - @2188 (fun (ro : @2187) => @2189 (@2439 (@2093 @83) @4) (@2319 @2405 @4)) -@2523 := @2491 (@187 @2134 @2309) -@2524 := @372 @2340 -@2532 := @2158 (@2343 @364 @2032) (@2166 (@2033 (@2030 @338) @2032)) -@2533 := @2315 @2081 -@2534 := @2093 @88 -@2550 := (hwt : @2524) -> - (hbind : @2532) -> - (hF : @2436) -> - (hA : @2533 @2534) -> - (hne : @2104 @2502 @2109) -> @2188 (fun (ro : @2187) => @2189 (@2439 @2472 @4) (@2319 @2362 @4)) -@2551 := @2523 @2092 -@2553 := @2343 @371 @2032 -@2556 := @2158 @2553 (@2166 @2035) -@2557 := @2315 @356 -@2558 := @2093 @68 -@2573 := (hbind : @2556) -> - (hF : @2436) -> - (hA : @2557 @2558) -> - (hne : @2104 @2534 @2109) -> @2188 (fun (ro : @2187) => @2189 (@2439 @2470 @4) (@2319 @2357 @4)) -@2576 := @2551 (@187 @2157 @2553) -@2577 := @2315 @364 -@2578 := @2093 @28 -@2592 := (hF : @2436) -> - (hA : @2577 @2578) -> - (hne : @2104 @2558 @2109) -> @2188 (fun (ro : @2187) => @2189 (@2439 @2502 @4) (@2319 @2392 @4)) -@2595 := @2576 (@187 @2169 @2312) -@2609 := (hA : @2315 @371 @2094) -> - (hne : @2104 @2578 @2109) -> @2188 (fun (ro : @2187) => @2189 (@2439 @2534 @4) (@2319 @2081 @4)) -@2610 := @2595 @2101 -@2621 := (hne : @2104 @2094 @2109) -> - @2188 (fun (ro : @2187) => @2189 (@2439 @2558 @4) (@2319 @356 @4)) -@2622 := @2610 @2121 -@2628 := @2189 (@2439 @2578 @4) (@2319 @364 @4) -@2630 := @2188 (fun (ro : @2187) => @2628) -@2632 := @2188 (fun (__e_ro : @2187) => @2628) -@2634 := LexLeanPreservation.Rust.RepresentableL @253 -@2635 := (__e_hrep : @2634) -> @2632 -@2636 := fun (__e_hrep : @2634) => @2622 -@2637 := (target : @57) -> @2635 -@2638 := fun (target : @57) => @2636 -\end{coremodule} -\end{lexlean} diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R3/RustStd.lean b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R3/RustStd.lean deleted file mode 100644 index 00e5fbb08..000000000 --- a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R3/RustStd.lean +++ /dev/null @@ -1,360 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [{ constructors := [[], [], [.nat]] }, - { constructors := [[(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]] }, - { constructors := [[(.pair .nat .nat), (.list (.adt 0))]] }, - { constructors := [[.nat, .nat, .nat, .nat, .nat, .nat]] }], functions := (( - { parameters := [0], types := [.nat], result := .nat, - body := (.«match» .nat (.call 1 [(.var 0)]) [(.arm .ok [1] (.first (.var 1))), (.arm .error [2] (.value .nat (.nat 9)))]) }) ::( - { parameters := [0], types := [.nat], result := (.result (.pair .nat .nat) (.pair .bool .bool)), - body := (.«match» (.result (.pair .nat .nat) (.pair .bool .bool)) (.call 2 [(.var 0)]) [(.arm .ok [1] (.build .ok (.result (.pair .nat .nat) (.pair .bool .bool)) [(.first (.var 1))])), (.arm .error [2] (.build .error (.result (.pair .nat .nat) (.pair .bool .bool)) [(.var 2)]))]) }) ::( - { parameters := [0], types := [.nat], result := (.result (.pair (.pair .nat .nat) (.list (.adt 0))) (.pair .bool .bool)), - body := (.«let» 1 (.pair (.adt 1) .bool) (.call 3 [(.var 0)]) (.«match» (.result (.pair (.pair .nat .nat) (.list (.adt 0))) (.pair .bool .bool)) (.field (.first (.var 1)) 2) [(.arm .some [2] (.build .ok (.result (.pair (.pair .nat .nat) (.list (.adt 0))) (.pair .bool .bool)) [(.build .pair (.pair (.pair .nat .nat) (.list (.adt 0))) [(.first (.var 2)), (.field (.second (.var 2)) 1)])])), (.arm .none [] (.build .error (.result (.pair (.pair .nat .nat) (.list (.adt 0))) (.pair .bool .bool)) [(.call 4 [(.second (.var 1)), (.field (.first (.var 1)) 3)])]))])) }) ::( - { parameters := [0], types := [.nat], result := (.pair (.adt 1) .bool), - body := (.call 5 [(.closure 6 [(.var 0)]), (.prim .natMul [(.var 0), (.value .nat (.nat 8))]), (.call 7 [(.var 0)])]) }) ::( - { parameters := [0, 1], types := [.bool, .bool], result := (.pair .bool .bool), - body := (.cond (.cond (.var 0) (.prim .boolNot [(.var 1)]) (.build .false .bool [])) (.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])]) (.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])) }) ::( - { parameters := [0, 1, 2], types := [(.fn [(.adt 1)] (.option (.adt 1))), .nat, (.adt 1)], result := (.pair (.adt 1) .bool), - body := (.«match» (.pair (.adt 1) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.adt 1) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.adt 1) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.adt 1) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 5 [(.var 0), (.var 3), (.var 4)]))]))]) }) ::( - { parameters := [0, 1], types := [.nat, (.adt 1)], result := (.option (.adt 1)), - body := (.call 8 [(.var 0), (.var 1)]) }) ::( - { parameters := [0], types := [.nat], result := (.adt 1), - body := (.«let» 1 (.list (.adt 2)) (.call 9 [(.closure 10 [(.var 0)]), (.build .nil (.list (.adt 2)) []), (.build .cons (.list (.adt 2)) [(.build (.adt 0) (.adt 2) [(.call 11 [(.var 0)]), (.build .nil (.list (.adt 0)) [])]), (.build .nil (.list (.adt 2)) [])])]) (.build (.adt 0) (.adt 1) [(.var 1), (.call 12 [(.build .nil (.list (.pair .nat .nat)) []), (.call 11 [(.var 0)])]), (.build .none (.option (.pair (.pair .nat .nat) (.adt 2))) []), (.prim .natLt [(.prim .natAdd [(.var 0), (.var 0)]), (.value .nat (.nat 1))]), (.build (.adt 0) (.adt 3) [(.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.prim .length [(.var 1)])])])) }) ::( - { parameters := [0, 1], types := [.nat, (.adt 1)], result := (.option (.adt 1)), - body := (.«match» (.option (.adt 1)) (.field (.var 1) 2) [(.arm .some [2] (.build .none (.option (.adt 1)) [])), (.arm .none [] (.«match» (.option (.adt 1)) (.field (.var 1) 0) [(.arm .nil [] (.build .none (.option (.adt 1)) [])), (.arm .cons [3, 4] (.«match» (.option (.adt 1)) (.call 13 [(.var 0), (.field (.var 3) 0)]) [(.arm .some [5] (.build .some (.option (.adt 1)) [(.build (.adt 0) (.adt 1) [(.var 4), (.field (.var 1) 1), (.build .some (.option (.pair (.pair .nat .nat) (.adt 2))) [(.build .pair (.pair (.pair .nat .nat) (.adt 2)) [(.var 5), (.var 3)])]), (.field (.var 1) 3), (.build (.adt 0) (.adt 3) [(.prim .natAdd [(.field (.field (.var 1) 4) 0), (.value .nat (.nat 1))]), (.field (.field (.var 1) 4) 1), (.field (.field (.var 1) 4) 2), (.field (.field (.var 1) 4) 3), (.prim .natAdd [(.field (.field (.var 1) 4) 4), (.value .nat (.nat 1))]), (.field (.field (.var 1) 4) 5)])])])), (.arm .none [] (.«let» 6 (.list (.adt 2)) (.call 14 [(.var 3)]) (.«let» 7 (.pair (.list (.adt 2)) (.list (.pair .nat .nat))) (.call 15 [(.field (.var 1) 1), (.var 6)]) (.«let» 8 (.list (.adt 2)) (.prim .append [(.var 4), (.first (.var 7))]) (.«let» 9 (.list (.adt 2)) (.call 9 [(.closure 16 [(.var 0)]), (.build .nil (.list (.adt 2)) []), (.var 8)]) (.build .some (.option (.adt 1)) [(.build (.adt 0) (.adt 1) [(.var 9), (.second (.var 7)), (.build .none (.option (.pair (.pair .nat .nat) (.adt 2))) []), (.cond (.field (.var 1) 3) (.build .true .bool []) (.prim .natLt [(.prim .natAdd [(.var 0), (.var 0)]), (.prim .length [(.var 8)])])), (.build (.adt 0) (.adt 3) [(.prim .natAdd [(.field (.field (.var 1) 4) 0), (.value .nat (.nat 1))]), (.prim .natAdd [(.field (.field (.var 1) 4) 1), (.call 17 [(.field (.var 3) 0)])]), (.prim .natAdd [(.field (.field (.var 1) 4) 2), (.prim .length [(.var 6)])]), (.prim .natAdd [(.field (.field (.var 1) 4) 3), (.value .nat (.nat 1))]), (.prim .natAdd [(.field (.field (.var 1) 4) 4), (.value .nat (.nat 1))]), (.cond (.prim .natLt [(.field (.field (.var 1) 4) 5), (.prim .length [(.var 9)])]) (.prim .length [(.var 9)]) (.field (.field (.var 1) 4) 5))])])]))))))]))]))]) }) ::( - { parameters := [0, 1, 2], types := [(.fn [(.list (.adt 2)), (.adt 2)] (.list (.adt 2))), (.list (.adt 2)), (.list (.adt 2))], result := (.list (.adt 2)), - body := (.«match» (.list (.adt 2)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 9 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }) ::( - { parameters := [0, 1, 2], types := [.nat, (.list (.adt 2)), (.adt 2)], result := (.list (.adt 2)), - body := (.cond (.prim .natLt [(.prim .length [(.var 1)]), (.prim .natAdd [(.var 0), (.var 0)])]) (.prim .append [(.var 1), (.build .cons (.list (.adt 2)) [(.var 2), (.build .nil (.list (.adt 2)) [])])]) (.var 1)) }) ::( - { parameters := [0], types := [.nat], result := (.pair .nat .nat), - body := (.build .pair (.pair .nat .nat) [(.value .nat (.nat 0)), (.value .nat (.nat 0))]) }) ::( - { parameters := [0, 1], types := [(.list (.pair .nat .nat)), (.pair .nat .nat)], result := (.list (.pair .nat .nat)), - body := (.«match» (.list (.pair .nat .nat)) (.var 0) [(.arm .nil [] (.build .cons (.list (.pair .nat .nat)) [(.var 1), (.build .nil (.list (.pair .nat .nat)) [])])), (.arm .cons [2, 3] (.«match» (.list (.pair .nat .nat)) (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .cons (.list (.pair .nat .nat)) [(.var 1), (.var 0)])), (.arm .eq [] (.var 0)), (.arm .gt [] (.build .cons (.list (.pair .nat .nat)) [(.var 2), (.call 12 [(.var 3), (.var 1)])]))]))]) }) ::( - { parameters := [0, 1], types := [.nat, (.pair .nat .nat)], result := (.option (.pair .nat .nat)), - body := (.«match» (.option (.pair .nat .nat)) (.call 18 [(.var 1)]) [(.arm .none [] (.build .none (.option (.pair .nat .nat)) [])), (.arm .some [2] (.cond (.call 19 [(.var 0), (.var 2)]) (.build .some (.option (.pair .nat .nat)) [(.var 2)]) (.build .none (.option (.pair .nat .nat)) [])))]) }) ::( - { parameters := [0], types := [(.adt 2)], result := (.list (.adt 2)), - body := (.prim .append [(.call 20 [(.var 0)]), (.prim .append [(.call 21 [(.var 0)]), (.call 22 [(.var 0)])])]) }) ::( - { parameters := [0, 1], types := [(.list (.pair .nat .nat)), (.list (.adt 2))], result := (.pair (.list (.adt 2)) (.list (.pair .nat .nat))), - body := (.call 23 [(.closure 24 []), (.build .pair (.pair (.list (.adt 2)) (.list (.pair .nat .nat))) [(.build .nil (.list (.adt 2)) []), (.var 0)]), (.var 1)]) }) ::( - { parameters := [0, 1, 2], types := [.nat, (.list (.adt 2)), (.adt 2)], result := (.list (.adt 2)), - body := (.cond (.prim .natLt [(.prim .length [(.var 1)]), (.prim .natAdd [(.var 0), (.var 0)])]) (.prim .append [(.var 1), (.build .cons (.list (.adt 2)) [(.var 2), (.build .nil (.list (.adt 2)) [])])]) (.var 1)) }) ::( - { parameters := [0], types := [(.pair .nat .nat)], result := .nat, - body := (.prim .natAdd [(.value .nat (.nat 1)), (.prim .natAdd [(.value .nat (.nat 1)), (.prim .length [(.call 25 [(.var 0)])])])]) }) ::( - { parameters := [0], types := [(.pair .nat .nat)], result := (.option (.pair .nat .nat)), - body := (.build .some (.option (.pair .nat .nat)) [(.var 0)]) }) ::( - { parameters := [0, 1], types := [.nat, (.pair .nat .nat)], result := .bool, - body := (.cond (.prim .natEq [(.second (.var 1)), (.var 0)]) (.prim .natLe [(.first (.var 1)), (.value .nat (.nat 4))]) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 2)], result := (.list (.adt 2)), - body := (.«match» (.list (.adt 2)) (.call 26 [(.field (.var 0) 0), (.build (.adt 0) (.adt 0) [])]) [(.arm .none [] (.build .nil (.list (.adt 2)) [])), (.arm .some [1] (.build .cons (.list (.adt 2)) [(.build (.adt 0) (.adt 2) [(.var 1), (.prim .append [(.field (.var 0) 1), (.build .cons (.list (.adt 0)) [(.build (.adt 0) (.adt 0) []), (.build .nil (.list (.adt 0)) [])])])]), (.build .nil (.list (.adt 2)) [])]))]) }) ::( - { parameters := [0], types := [(.adt 2)], result := (.list (.adt 2)), - body := (.«match» (.list (.adt 2)) (.call 26 [(.field (.var 0) 0), (.build (.adt 1) (.adt 0) [])]) [(.arm .none [] (.build .nil (.list (.adt 2)) [])), (.arm .some [1] (.build .cons (.list (.adt 2)) [(.build (.adt 0) (.adt 2) [(.var 1), (.prim .append [(.field (.var 0) 1), (.build .cons (.list (.adt 0)) [(.build (.adt 1) (.adt 0) []), (.build .nil (.list (.adt 0)) [])])])]), (.build .nil (.list (.adt 2)) [])]))]) }) ::( - { parameters := [0], types := [(.adt 2)], result := (.list (.adt 2)), - body := (.call 27 [(.closure 28 [(.var 0)]), (.build .nil (.list (.adt 2)) []), (.call 25 [(.field (.var 0) 0)])]) }) ::( - { parameters := [0, 1, 2], types := [(.fn [(.pair (.list (.adt 2)) (.list (.pair .nat .nat))), (.adt 2)] (.pair (.list (.adt 2)) (.list (.pair .nat .nat)))), (.pair (.list (.adt 2)) (.list (.pair .nat .nat))), (.list (.adt 2))], result := (.pair (.list (.adt 2)) (.list (.pair .nat .nat))), - body := (.«match» (.pair (.list (.adt 2)) (.list (.pair .nat .nat))) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 23 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }) ::( - { parameters := [0, 1], types := [(.pair (.list (.adt 2)) (.list (.pair .nat .nat))), (.adt 2)], result := (.pair (.list (.adt 2)) (.list (.pair .nat .nat))), - body := (.cond (.call 29 [(.second (.var 0)), (.field (.var 1) 0)]) (.var 0) (.build .pair (.pair (.list (.adt 2)) (.list (.pair .nat .nat))) [(.prim .append [(.first (.var 0)), (.build .cons (.list (.adt 2)) [(.var 1), (.build .nil (.list (.adt 2)) [])])]), (.call 12 [(.second (.var 0)), (.field (.var 1) 0)])])) }) ::( - { parameters := [0], types := [(.pair .nat .nat)], result := (.list .nat), - body := (.build .cons (.list .nat) [(.value .nat (.nat 1)), (.build .cons (.list .nat) [(.value .nat (.nat 2)), (.build .cons (.list .nat) [(.value .nat (.nat 3)), (.build .nil (.list .nat) [])])])]) }) ::( - { parameters := [0, 1], types := [(.pair .nat .nat), (.adt 0)], result := (.option (.pair .nat .nat)), - body := (.«match» (.option (.pair .nat .nat)) (.var 1) [(.arm (.adt 0) [] (.call 30 [(.var 0)])), (.arm (.adt 1) [] (.call 31 [(.var 0)])), (.arm (.adt 2) [2] (.call 32 [(.var 0), (.var 2)]))]) }) ::( - { parameters := [0, 1, 2], types := [(.fn [(.list (.adt 2)), .nat] (.list (.adt 2))), (.list (.adt 2)), (.list .nat)], result := (.list (.adt 2)), - body := (.«match» (.list (.adt 2)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 27 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }) ::( - { parameters := [0, 1, 2], types := [(.adt 2), (.list (.adt 2)), .nat], result := (.list (.adt 2)), - body := (.call 33 [(.var 0), (.var 1), (.var 2)]) }) ::( - { parameters := [0, 1], types := [(.list (.pair .nat .nat)), (.pair .nat .nat)], result := .bool, - body := (.«match» .bool (.var 0) [(.arm .nil [] (.build .false .bool [])), (.arm .cons [2, 3] (.«match» .bool (.prim .compare [(.var 1), (.var 2)]) [(.arm .lt [] (.build .false .bool [])), (.arm .eq [] (.build .true .bool [])), (.arm .gt [] (.call 29 [(.var 3), (.var 1)]))]))]) }) ::( - { parameters := [0], types := [(.pair .nat .nat)], result := (.option (.pair .nat .nat)), - body := (.cond (.call 34 [(.var 0)]) (.build .some (.option (.pair .nat .nat)) [(.call 35 [(.var 0)])]) (.build .none (.option (.pair .nat .nat)) [])) }) ::( - { parameters := [0], types := [(.pair .nat .nat)], result := (.option (.pair .nat .nat)), - body := (.cond (.call 36 [(.var 0)]) (.build .some (.option (.pair .nat .nat)) [(.call 37 [(.var 0)])]) (.build .none (.option (.pair .nat .nat)) [])) }) ::( - { parameters := [0, 1], types := [(.pair .nat .nat), .nat], result := (.option (.pair .nat .nat)), - body := (.cond (.call 38 [(.var 0), (.var 1)]) (.build .some (.option (.pair .nat .nat)) [(.call 39 [(.var 0), (.var 1)])]) (.build .none (.option (.pair .nat .nat)) [])) }) ::( - { parameters := [0, 1, 2], types := [(.adt 2), (.list (.adt 2)), .nat], result := (.list (.adt 2)), - body := (.«match» (.list (.adt 2)) (.call 26 [(.field (.var 0) 0), (.build (.adt 2) (.adt 0) [(.var 2)])]) [(.arm .none [] (.var 1)), (.arm .some [3] (.prim .append [(.var 1), (.build .cons (.list (.adt 2)) [(.build (.adt 0) (.adt 2) [(.var 3), (.prim .append [(.field (.var 0) 1), (.build .cons (.list (.adt 0)) [(.build (.adt 2) (.adt 0) [(.var 2)]), (.build .nil (.list (.adt 0)) [])])])]), (.build .nil (.list (.adt 2)) [])])]))]) }) ::( - { parameters := [0], types := [(.pair .nat .nat)], result := .bool, - body := (.cond (.prim .natLt [(.first (.var 0)), (.value .nat (.nat 4))]) (.prim .natLe [(.second (.var 0)), (.value .nat (.nat 3))]) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.pair .nat .nat)], result := (.pair .nat .nat), - body := (.build .pair (.pair .nat .nat) [(.value .nat (.nat 4)), (.second (.var 0))]) }) ::( - { parameters := [0], types := [(.pair .nat .nat)], result := .bool, - body := (.cond (.prim .natLt [(.value .nat (.nat 0)), (.second (.var 0))]) (.prim .natLe [(.first (.var 0)), (.value .nat (.nat 4))]) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.pair .nat .nat)], result := (.pair .nat .nat), - body := (.build .pair (.pair .nat .nat) [(.first (.var 0)), (.value .nat (.nat 0))]) }) ::( - { parameters := [0, 1], types := [(.pair .nat .nat), .nat], result := .bool, - body := (.cond (.prim .natLe [(.var 1), (.first (.var 0))]) (.cond (.prim .natLe [(.prim .natAdd [(.second (.var 0)), (.var 1)]), (.value .nat (.nat 3))]) (.prim .natLe [(.first (.var 0)), (.value .nat (.nat 4))]) (.build .false .bool [])) (.build .false .bool [])) }) ::( - { parameters := [0, 1], types := [(.pair .nat .nat), .nat], result := (.pair .nat .nat), - body := (.build .pair (.pair .nat .nat) [(.prim .natSub [(.first (.var 0)), (.var 1)]), (.prim .natAdd [(.second (.var 0)), (.var 1)])]) }) ::[]) } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := ((.enum (.adt 0) [{ number := 0, fields := [] }, { number := 1, fields := [] }, { number := 2, fields := [.nat] }]) :: - (.enum (.adt 1) [{ number := 0, fields := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)] }]) :: - (.enum (.adt 2) [{ number := 0, fields := [(.pair .nat .nat), (.list (.adt 0))] }]) :: - (.enum (.adt 3) [{ number := 0, fields := [.nat, .nat, .nat, .nat, .nat, .nat] }]) :: - (.enum (.fn 0) [{ number := 6, fields := [.nat] }]) :: - (.apply 0 [(.adt 1)] (.option (.adt 1)) true [{ function := 6, captures := [.copy], functionFallible := true }]) :: - (.enum (.fn 1) [{ number := 10, fields := [.nat] }, { number := 16, fields := [.nat] }]) :: - (.apply 1 [(.list (.adt 2)), (.adt 2)] (.list (.adt 2)) true [{ function := 10, captures := [.copy], functionFallible := true }, { function := 16, captures := [.copy], functionFallible := true }]) :: - (.enum (.fn 2) [{ number := 24, fields := [] }]) :: - (.apply 2 [(.pair (.list (.adt 2)) (.list (.pair .nat .nat))), (.adt 2)] (.pair (.list (.adt 2)) (.list (.pair .nat .nat))) false [{ function := 24, captures := [], functionFallible := false }]) :: - (.enum (.fn 3) [{ number := 28, fields := [(.adt 2)] }]) :: - (.apply 3 [(.list (.adt 2)), .nat] (.list (.adt 2)) true [{ function := 28, captures := [.clone], functionFallible := true }]) :: - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 1)) none (.call (.function 1) [(.copy (.generated .binding 0))] true))] (.matchOn (.move (.generated .holder 1)) [(.mk (.ok (.bind (.generated .binding 1))) (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.copy (.generated .binding 1)))] (.succeed (.move (.generated .part 2))))), (.mk (.err .wild) (.mk [] (.succeed (.lit (.nat 9)))))]))) :: - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible (.result (.pair .nat .nat) (.pair .bool .bool))) (.mk [(.mk (.bind (.generated .holder 3)) none (.call (.function 2) [(.copy (.generated .binding 0))] true))] (.matchOn (.move (.generated .holder 3)) [(.mk (.ok (.bind (.generated .binding 1))) (.mk [] (.succeed (.construct (.ok (.pair .nat .nat) (.pair .bool .bool)) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 4)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 4))))])))), (.mk (.err (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.copy (.generated .binding 2))]))))]))) :: - (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible (.result (.pair (.pair .nat .nat) (.list (.adt 0))) (.pair .bool .bool))) (.mk [(.mk (.bind (.generated .binding 1)) (some (.pair (.adt 1) .bool)) (.call (.function 3) [(.copy (.generated .binding 0))] true)), (.mk (.bind (.generated .holder 8)) none (.block (.mk [(.mk (.bind (.generated .holder 7)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 6)), .wild]) none (.clone (.generated .binding 1)))] (.move (.generated .part 6)))))] (.matchOn (.move (.generated .holder 7)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 5)), .wild, .wild]) (.mk [] (.move (.generated .part 5))))]))))] (.matchOn (.move (.generated .holder 8)) [(.mk .none (.mk [] (.succeed (.construct (.err (.pair (.pair .nat .nat) (.list (.adt 0))) (.pair .bool .bool)) [(.call (.function 4) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 13))]) none (.move (.generated .binding 1)))] (.move (.generated .part 13)))), (.block (.mk [(.mk (.bind (.generated .holder 16)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 15)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 15)))))] (.matchOn (.move (.generated .holder 16)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 14)), .wild]) (.mk [] (.move (.generated .part 14))))])))] false)])))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct (.ok (.pair (.pair .nat .nat) (.list (.adt 0))) (.pair .bool .bool)) [(.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 9)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 9)))) (.block (.mk [(.mk (.bind (.generated .holder 12)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 11))]) none (.move (.generated .binding 2)))] (.move (.generated .part 11)))))] (.matchOn (.move (.generated .holder 12)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 10))]) (.mk [] (.move (.generated .part 10))))]))))]))))]))) :: - (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible (.pair (.adt 1) .bool)) (.mk [] (.call (.function 5) [(.construct (.closure 0 6) [(.copy (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 18)) none (.lit (.nat 8)))] (.call (.runtime .natMul) [(.move (.generated .operand 17)), (.move (.generated .operand 18))] true))), (.call (.function 7) [(.copy (.generated .binding 0))] true)] false))) :: - (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := .bool }, { pattern := (.bind (.generated .binding 1)), type := .bool }] (.pair .bool .bool) (.mk [] (.cond (.cond (.copy (.generated .binding 0)) (.mk [(.mk (.bind (.generated .operand 19)) none (.copy (.generated .binding 1)))] (.call (.runtime .boolNot) [(.move (.generated .operand 19))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.pair (.lit (.bool false)) (.lit (.bool true)))) (.mk [] (.pair (.lit (.bool false)) (.lit (.bool false))))))) :: - (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := (.adt 1) }] (.fallible (.pair (.adt 1) .bool)) (.mk [(.mk (.bind (.generated .holder 20)) none (.copy (.generated .binding 1)))] (.cond (.isZero (.generated .holder 20)) (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 20))), (.mk (.bind (.generated .holder 22)) none (.block (.mk [(.mk (.bind (.generated .callee 21)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 21) [(.clone (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 22)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 5) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))]))))) :: - (.function (.generated .function 6) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := (.adt 1) }] (.fallible (.option (.adt 1))) (.mk [] (.call (.function 8) [(.copy (.generated .binding 0)), (.move (.generated .binding 1))] false))) :: - (.function (.generated .function 7) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible (.adt 1)) (.mk [(.mk (.bind (.generated .binding 1)) (some (.list (.adt 2))) (.call (.function 9) [(.construct (.closure 1 10) [(.copy (.generated .binding 0))]), (.construct (.nil (.adt 2)) []), (.construct .cons [(.construct (.adt 2 0) [(.call (.function 11) [(.copy (.generated .binding 0))] false), (.construct (.nil (.adt 0)) [])]), (.construct (.nil (.adt 2)) [])])] true))] (.succeed (.construct (.adt 1 0) [(.clone (.generated .binding 1)), (.call (.function 12) [(.construct (.nil (.pair .nat .nat)) []), (.call (.function 11) [(.copy (.generated .binding 0))] false)] false), (.construct (.none (.pair (.pair .nat .nat) (.adt 2))) []), (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 0)))] (.call (.runtime .natAdd) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] true)))), (.mk (.bind (.generated .operand 26)) none (.lit (.nat 1)))] (.call (.runtime .natLt) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))), (.construct (.adt 3 0) [(.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.move (.generated .binding 1)))] (.call (.runtime .lengthList) [(.move (.generated .operand 27))] false)))])])))) :: - (.function (.generated .function 8) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := (.adt 1) }] (.fallible (.option (.adt 1))) (.mk [(.mk (.bind (.generated .holder 29)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 28)), .wild, .wild]) (.mk [] (.move (.generated .part 28))))]))] (.matchOn (.move (.generated .holder 29)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 31)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [(.bind (.generated .part 30)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 30))))]))] (.matchOn (.uncons (.generated .holder 31)) [(.mk .none (.mk [] (.succeed (.construct (.none (.adt 1)) [])))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [(.mk (.bind (.generated .holder 33)) none (.call (.function 13) [(.copy (.generated .binding 0)), (.matchOn (.clone (.generated .binding 3)) [(.mk (.adt 2 0 [(.bind (.generated .part 32)), .wild]) (.mk [] (.move (.generated .part 32))))])] false))] (.matchOn (.move (.generated .holder 33)) [(.mk .none (.mk [(.mk (.bind (.generated .binding 6)) (some (.list (.adt 2))) (.call (.function 14) [(.clone (.generated .binding 3))] true)), (.mk (.bind (.generated .binding 7)) (some (.pair (.list (.adt 2)) (.list (.pair .nat .nat)))) (.call (.function 15) [(.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 58)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 58))))]), (.clone (.generated .binding 6))] false)), (.mk (.bind (.generated .binding 8)) (some (.list (.adt 2))) (.block (.mk [(.mk (.bind (.generated .operand 60)) none (.move (.generated .binding 4))), (.mk (.bind (.generated .operand 61)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 59)), .wild]) none (.move (.generated .binding 7)))] (.move (.generated .part 59)))))] (.call (.runtime .appendList) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] false)))), (.mk (.bind (.generated .binding 9)) (some (.list (.adt 2))) (.call (.function 9) [(.construct (.closure 1 16) [(.copy (.generated .binding 0))]), (.construct (.nil (.adt 2)) []), (.clone (.generated .binding 8))] true))] (.succeed (.construct .some [(.construct (.adt 1 0) [(.clone (.generated .binding 9)), (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 62))]) none (.move (.generated .binding 7)))] (.move (.generated .part 62)))), (.construct (.none (.pair (.pair .nat .nat) (.adt 2))) []), (.cond (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 63)), .wild]) (.mk [] (.move (.generated .part 63))))]) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 67)) none (.block (.mk [(.mk (.bind (.generated .operand 64)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 65)) none (.copy (.generated .binding 0)))] (.call (.runtime .natAdd) [(.move (.generated .operand 64)), (.move (.generated .operand 65))] true)))), (.mk (.bind (.generated .operand 68)) none (.block (.mk [(.mk (.bind (.generated .operand 66)) none (.move (.generated .binding 8)))] (.call (.runtime .lengthList) [(.move (.generated .operand 66))] false))))] (.call (.runtime .natLt) [(.move (.generated .operand 67)), (.move (.generated .operand 68))] false))), (.construct (.adt 3 0) [(.block (.mk [(.mk (.bind (.generated .operand 72)) none (.block (.mk [(.mk (.bind (.generated .holder 71)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 70))]) (.mk [] (.move (.generated .part 70))))]))] (.matchOn (.move (.generated .holder 71)) [(.mk (.adt 3 0 [(.bind (.generated .part 69)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 69))))])))), (.mk (.bind (.generated .operand 73)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 72)), (.move (.generated .operand 73))] true))), (.block (.mk [(.mk (.bind (.generated .operand 78)) none (.block (.mk [(.mk (.bind (.generated .holder 76)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 75))]) (.mk [] (.move (.generated .part 75))))]))] (.matchOn (.move (.generated .holder 76)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 74)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 74))))])))), (.mk (.bind (.generated .operand 79)) none (.call (.function 17) [(.matchOn (.move (.generated .binding 3)) [(.mk (.adt 2 0 [(.bind (.generated .part 77)), .wild]) (.mk [] (.move (.generated .part 77))))])] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 78)), (.move (.generated .operand 79))] true))), (.block (.mk [(.mk (.bind (.generated .operand 84)) none (.block (.mk [(.mk (.bind (.generated .holder 82)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))]))] (.matchOn (.move (.generated .holder 82)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 80)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 80))))])))), (.mk (.bind (.generated .operand 85)) none (.block (.mk [(.mk (.bind (.generated .operand 83)) none (.move (.generated .binding 6)))] (.call (.runtime .lengthList) [(.move (.generated .operand 83))] false))))] (.call (.runtime .natAdd) [(.move (.generated .operand 84)), (.move (.generated .operand 85))] true))), (.block (.mk [(.mk (.bind (.generated .operand 89)) none (.block (.mk [(.mk (.bind (.generated .holder 88)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 87))]) (.mk [] (.move (.generated .part 87))))]))] (.matchOn (.move (.generated .holder 88)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 86)), .wild, .wild]) (.mk [] (.move (.generated .part 86))))])))), (.mk (.bind (.generated .operand 90)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 89)), (.move (.generated .operand 90))] true))), (.block (.mk [(.mk (.bind (.generated .operand 94)) none (.block (.mk [(.mk (.bind (.generated .holder 93)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 92))]) (.mk [] (.move (.generated .part 92))))]))] (.matchOn (.move (.generated .holder 93)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 91)), .wild]) (.mk [] (.move (.generated .part 91))))])))), (.mk (.bind (.generated .operand 95)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 94)), (.move (.generated .operand 95))] true))), (.block (.mk [(.mk (.bind (.generated .operand 100)) none (.block (.mk [(.mk (.bind (.generated .holder 98)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 97))]) (.mk [] (.move (.generated .part 97))))]))] (.matchOn (.move (.generated .holder 98)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 96))]) (.mk [] (.move (.generated .part 96))))])))), (.mk (.bind (.generated .operand 101)) none (.block (.mk [(.mk (.bind (.generated .operand 99)) none (.clone (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 99))] false))))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 100)), (.move (.generated .operand 101))] false) (.mk [(.mk (.bind (.generated .operand 102)) none (.move (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 102))] false)) (.mk [(.mk (.bind (.generated .holder 105)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 104))]) (.mk [] (.move (.generated .part 104))))]))] (.matchOn (.move (.generated .holder 105)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 103))]) (.mk [] (.move (.generated .part 103))))])))))])])])))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.succeed (.construct .some [(.construct (.adt 1 0) [(.move (.generated .binding 4)), (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 34)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 34))))]), (.construct .some [(.pair (.copy (.generated .binding 5)) (.move (.generated .binding 3)))]), (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 35)), .wild]) (.mk [] (.move (.generated .part 35))))]), (.construct (.adt 3 0) [(.block (.mk [(.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.bind (.generated .holder 38)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 37))]) (.mk [] (.move (.generated .part 37))))]))] (.matchOn (.move (.generated .holder 38)) [(.mk (.adt 3 0 [(.bind (.generated .part 36)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 36))))])))), (.mk (.bind (.generated .operand 40)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] true))), (.block (.mk [(.mk (.bind (.generated .holder 43)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 42))]) (.mk [] (.move (.generated .part 42))))]))] (.matchOn (.move (.generated .holder 43)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 41)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 41))))]))), (.block (.mk [(.mk (.bind (.generated .holder 46)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 45))]) (.mk [] (.move (.generated .part 45))))]))] (.matchOn (.move (.generated .holder 46)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 44)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 44))))]))), (.block (.mk [(.mk (.bind (.generated .holder 49)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 48))]) (.mk [] (.move (.generated .part 48))))]))] (.matchOn (.move (.generated .holder 49)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 47)), .wild, .wild]) (.mk [] (.move (.generated .part 47))))]))), (.block (.mk [(.mk (.bind (.generated .operand 53)) none (.block (.mk [(.mk (.bind (.generated .holder 52)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 51))]) (.mk [] (.move (.generated .part 51))))]))] (.matchOn (.move (.generated .holder 52)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 50)), .wild]) (.mk [] (.move (.generated .part 50))))])))), (.mk (.bind (.generated .operand 54)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] true))), (.block (.mk [(.mk (.bind (.generated .holder 57)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 56))]) (.mk [] (.move (.generated .part 56))))]))] (.matchOn (.move (.generated .holder 57)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 55))]) (.mk [] (.move (.generated .part 55))))])))])])]))))])))]))), (.mk (.some .wild) (.mk [] (.succeed (.construct (.none (.adt 1)) []))))]))) :: - (.function (.generated .function 9) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 1) }, { pattern := (.bind (.generated .binding 1)), type := (.list (.adt 2)) }, { pattern := (.bind (.generated .binding 2)), type := (.list (.adt 2)) }] (.fallible (.list (.adt 2))) (.mk [(.mk (.bind (.generated .holder 106)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 106)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 9) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 107)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 107) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]))) :: - (.function (.generated .function 10) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := (.list (.adt 2)) }, { pattern := (.bind (.generated .binding 2)), type := (.adt 2) }] (.fallible (.list (.adt 2))) (.mk [(.mk (.bind (.generated .operand 111)) none (.block (.mk [(.mk (.bind (.generated .operand 108)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthList) [(.move (.generated .operand 108))] false)))), (.mk (.bind (.generated .operand 112)) none (.block (.mk [(.mk (.bind (.generated .operand 109)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 110)) none (.copy (.generated .binding 0)))] (.call (.runtime .natAdd) [(.move (.generated .operand 109)), (.move (.generated .operand 110))] true))))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 111)), (.move (.generated .operand 112))] false) (.mk [(.mk (.bind (.generated .operand 113)) none (.move (.generated .binding 1))), (.mk (.bind (.generated .operand 114)) none (.construct .cons [(.move (.generated .binding 2)), (.construct (.nil (.adt 2)) [])]))] (.succeed (.call (.runtime .appendList) [(.move (.generated .operand 113)), (.move (.generated .operand 114))] false))) (.mk [] (.succeed (.move (.generated .binding 1))))))) :: - (.function (.generated .function 11) [{ pattern := .wild, type := .nat }] (.pair .nat .nat) (.mk [] (.pair (.lit (.nat 0)) (.lit (.nat 0))))) :: - (.function (.generated .function 12) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat .nat)) }, { pattern := (.bind (.generated .binding 1)), type := (.pair .nat .nat) }] (.list (.pair .nat .nat)) (.mk [(.mk (.bind (.generated .holder 115)) none (.clone (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 115)) [(.mk .none (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil (.pair .nat .nat)) [])]))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 118)) none (.block (.mk [(.mk (.bind (.generated .operand 116)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 117)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 116)), (.move (.generated .operand 117))] false))))] (.matchOn (.move (.generated .holder 118)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 12) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])))]))) :: - (.function (.generated .function 13) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := (.pair .nat .nat) }] (.option (.pair .nat .nat)) (.mk [(.mk (.bind (.generated .holder 119)) none (.call (.function 18) [(.copy (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 119)) [(.mk .none (.mk [] (.construct (.none (.pair .nat .nat)) []))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.cond (.call (.function 19) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.mk [] (.construct .some [(.copy (.generated .binding 2))])) (.mk [] (.construct (.none (.pair .nat .nat)) [])))))]))) :: - (.function (.generated .function 14) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 2) }] (.fallible (.list (.adt 2))) (.mk [(.mk (.bind (.generated .operand 122)) none (.call (.function 20) [(.clone (.generated .binding 0))] true)), (.mk (.bind (.generated .operand 123)) none (.block (.mk [(.mk (.bind (.generated .operand 120)) none (.call (.function 21) [(.clone (.generated .binding 0))] true)), (.mk (.bind (.generated .operand 121)) none (.call (.function 22) [(.move (.generated .binding 0))] true))] (.call (.runtime .appendList) [(.move (.generated .operand 120)), (.move (.generated .operand 121))] false))))] (.succeed (.call (.runtime .appendList) [(.move (.generated .operand 122)), (.move (.generated .operand 123))] false)))) :: - (.function (.generated .function 15) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat .nat)) }, { pattern := (.bind (.generated .binding 1)), type := (.list (.adt 2)) }] (.pair (.list (.adt 2)) (.list (.pair .nat .nat))) (.mk [] (.call (.function 23) [(.construct (.closure 2 24) []), (.pair (.construct (.nil (.adt 2)) []) (.move (.generated .binding 0))), (.move (.generated .binding 1))] false))) :: - (.function (.generated .function 16) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := (.list (.adt 2)) }, { pattern := (.bind (.generated .binding 2)), type := (.adt 2) }] (.fallible (.list (.adt 2))) (.mk [(.mk (.bind (.generated .operand 127)) none (.block (.mk [(.mk (.bind (.generated .operand 124)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthList) [(.move (.generated .operand 124))] false)))), (.mk (.bind (.generated .operand 128)) none (.block (.mk [(.mk (.bind (.generated .operand 125)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 126)) none (.copy (.generated .binding 0)))] (.call (.runtime .natAdd) [(.move (.generated .operand 125)), (.move (.generated .operand 126))] true))))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 127)), (.move (.generated .operand 128))] false) (.mk [(.mk (.bind (.generated .operand 129)) none (.move (.generated .binding 1))), (.mk (.bind (.generated .operand 130)) none (.construct .cons [(.move (.generated .binding 2)), (.construct (.nil (.adt 2)) [])]))] (.succeed (.call (.runtime .appendList) [(.move (.generated .operand 129)), (.move (.generated .operand 130))] false))) (.mk [] (.succeed (.move (.generated .binding 1))))))) :: - (.function (.generated .function 17) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }] (.fallible .nat) (.mk [(.mk (.bind (.generated .operand 134)) none (.lit (.nat 1))), (.mk (.bind (.generated .operand 135)) none (.block (.mk [(.mk (.bind (.generated .operand 132)) none (.lit (.nat 1))), (.mk (.bind (.generated .operand 133)) none (.block (.mk [(.mk (.bind (.generated .operand 131)) none (.call (.function 25) [(.copy (.generated .binding 0))] false))] (.call (.runtime .lengthList) [(.move (.generated .operand 131))] false))))] (.call (.runtime .natAdd) [(.move (.generated .operand 132)), (.move (.generated .operand 133))] true))))] (.call (.runtime .natAdd) [(.move (.generated .operand 134)), (.move (.generated .operand 135))] false))) :: - (.function (.generated .function 18) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }] (.option (.pair .nat .nat)) (.mk [] (.construct .some [(.copy (.generated .binding 0))]))) :: - (.function (.generated .function 19) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := (.pair .nat .nat) }] .bool (.mk [(.mk (.bind (.generated .operand 137)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 136))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 136))))), (.mk (.bind (.generated .operand 138)) none (.copy (.generated .binding 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 137)), (.move (.generated .operand 138))] false) (.mk [(.mk (.bind (.generated .operand 140)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 139)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 139))))), (.mk (.bind (.generated .operand 141)) none (.lit (.nat 4)))] (.call (.runtime .natLe) [(.move (.generated .operand 140)), (.move (.generated .operand 141))] false)) (.mk [] (.lit (.bool false)))))) :: - (.function (.generated .function 20) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 2) }] (.fallible (.list (.adt 2))) (.mk [(.mk (.bind (.generated .holder 143)) none (.call (.function 26) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [(.bind (.generated .part 142)), .wild]) (.mk [] (.move (.generated .part 142))))]), (.construct (.adt 0 0) [])] true))] (.matchOn (.move (.generated .holder 143)) [(.mk .none (.mk [] (.succeed (.construct (.nil (.adt 2)) [])))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.succeed (.construct .cons [(.construct (.adt 2 0) [(.copy (.generated .binding 1)), (.block (.mk [(.mk (.bind (.generated .operand 145)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 144))]) (.mk [] (.move (.generated .part 144))))])), (.mk (.bind (.generated .operand 146)) none (.construct .cons [(.construct (.adt 0 0) []), (.construct (.nil (.adt 0)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 145)), (.move (.generated .operand 146))] false)))]), (.construct (.nil (.adt 2)) [])]))))]))) :: - (.function (.generated .function 21) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 2) }] (.fallible (.list (.adt 2))) (.mk [(.mk (.bind (.generated .holder 148)) none (.call (.function 26) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [(.bind (.generated .part 147)), .wild]) (.mk [] (.move (.generated .part 147))))]), (.construct (.adt 0 1) [])] true))] (.matchOn (.move (.generated .holder 148)) [(.mk .none (.mk [] (.succeed (.construct (.nil (.adt 2)) [])))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.succeed (.construct .cons [(.construct (.adt 2 0) [(.copy (.generated .binding 1)), (.block (.mk [(.mk (.bind (.generated .operand 150)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 149))]) (.mk [] (.move (.generated .part 149))))])), (.mk (.bind (.generated .operand 151)) none (.construct .cons [(.construct (.adt 0 1) []), (.construct (.nil (.adt 0)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 150)), (.move (.generated .operand 151))] false)))]), (.construct (.nil (.adt 2)) [])]))))]))) :: - (.function (.generated .function 22) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 2) }] (.fallible (.list (.adt 2))) (.mk [] (.call (.function 27) [(.construct (.closure 3 28) [(.clone (.generated .binding 0))]), (.construct (.nil (.adt 2)) []), (.call (.function 25) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [(.bind (.generated .part 152)), .wild]) (.mk [] (.move (.generated .part 152))))])] false)] false))) :: - (.function (.generated .function 23) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 2) }, { pattern := (.bind (.generated .binding 1)), type := (.pair (.list (.adt 2)) (.list (.pair .nat .nat))) }, { pattern := (.bind (.generated .binding 2)), type := (.list (.adt 2)) }] (.pair (.list (.adt 2)) (.list (.pair .nat .nat))) (.mk [(.mk (.bind (.generated .holder 153)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 153)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 23) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 154)) (some (.fn 2)) (.move (.generated .binding 0)))] (.apply (.generated .callee 154) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]))) :: - (.function (.generated .function 24) [{ pattern := (.bind (.generated .binding 0)), type := (.pair (.list (.adt 2)) (.list (.pair .nat .nat))) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 2) }] (.pair (.list (.adt 2)) (.list (.pair .nat .nat))) (.mk [] (.cond (.call (.function 29) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 155))]) none (.clone (.generated .binding 0)))] (.move (.generated .part 155)))), (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 2 0 [(.bind (.generated .part 156)), .wild]) (.mk [] (.move (.generated .part 156))))])] false) (.mk [] (.move (.generated .binding 0))) (.mk [] (.pair (.block (.mk [(.mk (.bind (.generated .operand 158)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 157)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 157))))), (.mk (.bind (.generated .operand 159)) none (.construct .cons [(.clone (.generated .binding 1)), (.construct (.nil (.adt 2)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 158)), (.move (.generated .operand 159))] false))) (.call (.function 12) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 160))]) none (.move (.generated .binding 0)))] (.move (.generated .part 160)))), (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 2 0 [(.bind (.generated .part 161)), .wild]) (.mk [] (.move (.generated .part 161))))])] false)))))) :: - (.function (.generated .function 25) [{ pattern := .wild, type := (.pair .nat .nat) }] (.list .nat) (.mk [] (.construct .cons [(.lit (.nat 1)), (.construct .cons [(.lit (.nat 2)), (.construct .cons [(.lit (.nat 3)), (.construct (.nil .nat) [])])])]))) :: - (.function (.generated .function 26) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 0) }] (.fallible (.option (.pair .nat .nat))) (.mk [(.mk (.bind (.generated .holder 162)) none (.move (.generated .binding 1)))] (.matchOn (.move (.generated .holder 162)) [(.mk (.adt 0 0 []) (.mk [] (.succeed (.call (.function 30) [(.copy (.generated .binding 0))] false)))), (.mk (.adt 0 1 []) (.mk [] (.succeed (.call (.function 31) [(.copy (.generated .binding 0))] false)))), (.mk (.adt 0 2 [(.bind (.generated .binding 2))]) (.mk [] (.call (.function 32) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] false)))]))) :: - (.function (.generated .function 27) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 3) }, { pattern := (.bind (.generated .binding 1)), type := (.list (.adt 2)) }, { pattern := (.bind (.generated .binding 2)), type := (.list .nat) }] (.fallible (.list (.adt 2))) (.mk [(.mk (.bind (.generated .holder 163)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 163)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 27) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 164)) (some (.fn 3)) (.move (.generated .binding 0)))] (.apply (.generated .callee 164) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]))) :: - (.function (.generated .function 28) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 2) }, { pattern := (.bind (.generated .binding 1)), type := (.list (.adt 2)) }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.fallible (.list (.adt 2))) (.mk [] (.call (.function 33) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 2))] false))) :: - (.function (.generated .function 29) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.pair .nat .nat)) }, { pattern := (.bind (.generated .binding 1)), type := (.pair .nat .nat) }] .bool (.mk [(.mk (.bind (.generated .holder 165)) none (.move (.generated .binding 0)))] (.matchOn (.uncons (.generated .holder 165)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 168)) none (.block (.mk [(.mk (.bind (.generated .operand 166)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 167)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 166)), (.move (.generated .operand 167))] false))))] (.matchOn (.move (.generated .holder 168)) [(.mk (.ordering .less) (.mk [] (.lit (.bool false)))), (.mk (.ordering .same) (.mk [] (.lit (.bool true)))), (.mk (.ordering .more) (.mk [] (.call (.function 29) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]))) :: - (.function (.generated .function 30) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }] (.option (.pair .nat .nat)) (.mk [] (.cond (.call (.function 34) [(.copy (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 35) [(.copy (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.pair .nat .nat)) []))))) :: - (.function (.generated .function 31) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }] (.option (.pair .nat .nat)) (.mk [] (.cond (.call (.function 36) [(.copy (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 37) [(.copy (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.pair .nat .nat)) []))))) :: - (.function (.generated .function 32) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.option (.pair .nat .nat))) (.mk [] (.cond (.call (.function 38) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] true) (.mk [] (.succeed (.construct .some [(.call (.function 39) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] true)]))) (.mk [] (.succeed (.construct (.none (.pair .nat .nat)) [])))))) :: - (.function (.generated .function 33) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 2) }, { pattern := (.bind (.generated .binding 1)), type := (.list (.adt 2)) }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.fallible (.list (.adt 2))) (.mk [(.mk (.bind (.generated .holder 170)) none (.call (.function 26) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [(.bind (.generated .part 169)), .wild]) (.mk [] (.move (.generated .part 169))))]), (.construct (.adt 0 2) [(.copy (.generated .binding 2))])] true))] (.matchOn (.move (.generated .holder 170)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [(.mk (.bind (.generated .operand 174)) none (.move (.generated .binding 1))), (.mk (.bind (.generated .operand 175)) none (.construct .cons [(.construct (.adt 2 0) [(.copy (.generated .binding 3)), (.block (.mk [(.mk (.bind (.generated .operand 172)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 171))]) (.mk [] (.move (.generated .part 171))))])), (.mk (.bind (.generated .operand 173)) none (.construct .cons [(.construct (.adt 0 2) [(.copy (.generated .binding 2))]), (.construct (.nil (.adt 0)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 172)), (.move (.generated .operand 173))] false)))]), (.construct (.nil (.adt 2)) [])]))] (.succeed (.call (.runtime .appendList) [(.move (.generated .operand 174)), (.move (.generated .operand 175))] false))))]))) :: - (.function (.generated .function 34) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }] .bool (.mk [(.mk (.bind (.generated .operand 177)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 176)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 176))))), (.mk (.bind (.generated .operand 178)) none (.lit (.nat 4)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 177)), (.move (.generated .operand 178))] false) (.mk [(.mk (.bind (.generated .operand 180)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 179))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 179))))), (.mk (.bind (.generated .operand 181)) none (.lit (.nat 3)))] (.call (.runtime .natLe) [(.move (.generated .operand 180)), (.move (.generated .operand 181))] false)) (.mk [] (.lit (.bool false)))))) :: - (.function (.generated .function 35) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }] (.pair .nat .nat) (.mk [] (.pair (.lit (.nat 4)) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 182))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 182))))))) :: - (.function (.generated .function 36) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }] .bool (.mk [(.mk (.bind (.generated .operand 184)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 185)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 183))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 183)))))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 184)), (.move (.generated .operand 185))] false) (.mk [(.mk (.bind (.generated .operand 187)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 186)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 186))))), (.mk (.bind (.generated .operand 188)) none (.lit (.nat 4)))] (.call (.runtime .natLe) [(.move (.generated .operand 187)), (.move (.generated .operand 188))] false)) (.mk [] (.lit (.bool false)))))) :: - (.function (.generated .function 37) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }] (.pair .nat .nat) (.mk [] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 189)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 189)))) (.lit (.nat 0))))) :: - (.function (.generated .function 38) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .bool) (.mk [(.mk (.bind (.generated .operand 191)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 192)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 190)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 190)))))] (.cond (.call (.runtime .natLe) [(.move (.generated .operand 191)), (.move (.generated .operand 192))] false) (.mk [(.mk (.bind (.generated .operand 196)) none (.block (.mk [(.mk (.bind (.generated .operand 194)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 193))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 193))))), (.mk (.bind (.generated .operand 195)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 194)), (.move (.generated .operand 195))] true)))), (.mk (.bind (.generated .operand 197)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natLe) [(.move (.generated .operand 196)), (.move (.generated .operand 197))] false) (.mk [(.mk (.bind (.generated .operand 199)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 198)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 198))))), (.mk (.bind (.generated .operand 200)) none (.lit (.nat 4)))] (.succeed (.call (.runtime .natLe) [(.move (.generated .operand 199)), (.move (.generated .operand 200))] false))) (.mk [] (.succeed (.lit (.bool false)))))) (.mk [] (.succeed (.lit (.bool false))))))) :: - (.function (.generated .function 39) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.pair .nat .nat)) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 202)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 201)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 201))))), (.mk (.bind (.generated .operand 203)) none (.copy (.generated .binding 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 202)), (.move (.generated .operand 203))] false))) (.block (.mk [(.mk (.bind (.generated .operand 205)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 204))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 204))))), (.mk (.bind (.generated .operand 206)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 205)), (.move (.generated .operand 206))] true))))))) :: - []) } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [(([(.adt 1)], (.option (.adt 1))), true), (([(.list (.adt 2)), (.adt 2)], (.list (.adt 2))), true), (([(.pair (.list (.adt 2)) (.list (.pair .nat .nat))), (.adt 2)], (.pair (.list (.adt 2)) (.list (.pair .nat .nat)))), false), (([(.list (.adt 2)), .nat], (.list (.adt 2))), true)] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.call (.function 1) [(.copy (.generated .binding 0))] true))], (.matchOn (.move (.generated .holder 1)) [(.mk (.ok (.bind (.generated .binding 1))) (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.copy (.generated .binding 1)))] (.succeed (.move (.generated .part 2))))), (.mk (.err .wild) (.mk [] (.succeed (.lit (.nat 9)))))]), [(0, .nat, (some 0))], rfl, rfl, - (Corr.matchArms (st := (.result (.pair .nat .nat) (.pair .bool .bool))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.pair .nat .nat), (some 1)), (0, .nat, (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.copy (.generated .binding 1)))]) (tail := (.succeed (.move (.generated .part 2)))) (Corr.mCons (Γ' := [(2, (.pair .bool .bool), none), (0, .nat, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.lit (.nat 9)))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl)))) rfl rfl rfl (Corr.fOfB (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl))) rfl rfl rfl)⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 3)) none (.call (.function 2) [(.copy (.generated .binding 0))] true))], (.matchOn (.move (.generated .holder 3)) [(.mk (.ok (.bind (.generated .binding 1))) (.mk [] (.succeed (.construct (.ok (.pair .nat .nat) (.pair .bool .bool)) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 4)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 4))))])))), (.mk (.err (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.copy (.generated .binding 2))]))))]), [(0, .nat, (some 0))], rfl, rfl, - (Corr.matchArms (st := (.result (.pair (.pair .nat .nat) (.list (.adt 0))) (.pair .bool .bool))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.pair (.pair .nat .nat) (.list (.adt 0))), (some 1)), (0, .nat, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct (.ok (.pair .nat .nat) (.pair .bool .bool)) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 4)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 4))))]))) (Corr.mCons (Γ' := [(2, (.pair .bool .bool), (some 2)), (0, .nat, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.construct (.err (.pair .nat .nat) (.pair .bool .bool)) [(.copy (.generated .binding 2))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.pair .nat .nat)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 4)), .wild]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 4))) (Corr.first (ta := (.pair .nat .nat)) (tb := (.list (.adt 0))) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl))) rfl rfl rfl)⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some (.pair (.adt 1) .bool)) (.call (.function 3) [(.copy (.generated .binding 0))] true)), (.mk (.bind (.generated .holder 8)) none (.block (.mk [(.mk (.bind (.generated .holder 7)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 6)), .wild]) none (.clone (.generated .binding 1)))] (.move (.generated .part 6)))))] (.matchOn (.move (.generated .holder 7)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 5)), .wild, .wild]) (.mk [] (.move (.generated .part 5))))]))))], (.matchOn (.move (.generated .holder 8)) [(.mk .none (.mk [] (.succeed (.construct (.err (.pair (.pair .nat .nat) (.list (.adt 0))) (.pair .bool .bool)) [(.call (.function 4) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 13))]) none (.move (.generated .binding 1)))] (.move (.generated .part 13)))), (.block (.mk [(.mk (.bind (.generated .holder 16)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 15)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 15)))))] (.matchOn (.move (.generated .holder 16)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 14)), .wild]) (.mk [] (.move (.generated .part 14))))])))] false)])))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct (.ok (.pair (.pair .nat .nat) (.list (.adt 0))) (.pair .bool .bool)) [(.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 9)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 9)))) (.block (.mk [(.mk (.bind (.generated .holder 12)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 11))]) none (.move (.generated .binding 2)))] (.move (.generated .part 11)))))] (.matchOn (.move (.generated .holder 12)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 10))]) (.mk [] (.move (.generated .part 10))))]))))]))))]), [(0, .nat, (some 0))], rfl, rfl, - (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.matchArms (st := (.option (.pair (.pair .nat .nat) (.adt 2)))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 7)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 6)), .wild]) none (.clone (.generated .binding 1)))] (.move (.generated .part 6)))))]) (tail := (.matchOn (.move (.generated .holder 7)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 5)), .wild, .wild]) (.mk [] (.move (.generated .part 5))))])) (Corr.fieldHeld (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 5))) (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 6)), .wild]) none (.clone (.generated .binding 1)))]) (tail := (.move (.generated .part 6))) (Corr.first (ta := (.adt 1)) (tb := .bool) (Corr.var rfl rfl) rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.pair (.adt 1) .bool), (some 1)), (0, .nat, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.construct (.err (.pair (.pair .nat .nat) (.list (.adt 0))) (.pair .bool .bool)) [(.call (.function 4) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 13))]) none (.move (.generated .binding 1)))] (.move (.generated .part 13)))), (.block (.mk [(.mk (.bind (.generated .holder 16)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 15)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 15)))))] (.matchOn (.move (.generated .holder 16)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 14)), .wild]) (.mk [] (.move (.generated .part 14))))])))] false)]))) (Corr.mCons (Γ' := [(2, (.pair (.pair .nat .nat) (.adt 2)), (some 2)), (1, (.pair (.adt 1) .bool), (some 1)), (0, .nat, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct (.ok (.pair (.pair .nat .nat) (.list (.adt 0))) (.pair .bool .bool)) [(.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 9)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 9)))) (.block (.mk [(.mk (.bind (.generated .holder 12)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 11))]) none (.move (.generated .binding 2)))] (.move (.generated .part 11)))))] (.matchOn (.move (.generated .holder 12)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 10))]) (.mk [] (.move (.generated .part 10))))]))))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.pair (.pair .nat .nat) (.list (.adt 0)))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 9)), .wild]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 9))) (Corr.first (ta := (.pair .nat .nat)) (tb := (.adt 2)) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 12)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 11))]) none (.move (.generated .binding 2)))] (.move (.generated .part 11)))))]) (tail := (.matchOn (.move (.generated .holder 12)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 10))]) (.mk [] (.move (.generated .part 10))))])) (Corr.fieldHeld (ts := [(.pair .nat .nat), (.list (.adt 0))]) (rd := (.move (.generated .part 10))) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 11))]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 11))) (Corr.second (ta := (.pair .nat .nat)) (tb := (.adt 2)) (Corr.var rfl rfl) rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bool, .bool]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 13))]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 13))) (Corr.second (ta := (.adt 1)) (tb := .bool) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 16)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 15)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 15)))))]) (tail := (.matchOn (.move (.generated .holder 16)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 14)), .wild]) (.mk [] (.move (.generated .part 14))))])) (Corr.fieldHeld (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 14))) (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 15)), .wild]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 15))) (Corr.first (ta := (.adt 1)) (tb := .bool) (Corr.var rfl rfl) rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl))) rfl rfl rfl))⟩⟩ - -theorem fun3 : FunOK program krate flags 3 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 5) [(.construct (.closure 0 6) [(.copy (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 18)) none (.lit (.nat 8)))] (.call (.runtime .natMul) [(.move (.generated .operand 17)), (.move (.generated .operand 18))] true))), (.call (.function 7) [(.copy (.generated .binding 0))] true)] false), [(0, .nat, (some 0))], rfl, rfl, - (Corr.callF (ts := [(.fn [(.adt 1)] (.option (.adt 1))), .nat, (.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [.nat]) (mask := [false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 18)) none (.lit (.nat 8)))]) (tail := (.call (.runtime .natMul) [(.move (.generated .operand 17)), (.move (.generated .operand 18))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl)⟩⟩ - -theorem fun4 : FunOK program krate flags 4 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.cond (.copy (.generated .binding 0)) (.mk [(.mk (.bind (.generated .operand 19)) none (.copy (.generated .binding 1)))] (.call (.runtime .boolNot) [(.move (.generated .operand 19))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.pair (.lit (.bool false)) (.lit (.bool true)))) (.mk [] (.pair (.lit (.bool false)) (.lit (.bool false))))), [(1, .bool, (some 1)), (0, .bool, (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.cond (.copy (.generated .binding 0)) (.mk [(.mk (.bind (.generated .operand 19)) none (.copy (.generated .binding 1)))] (.call (.runtime .boolNot) [(.move (.generated .operand 19))] false)) (.mk [] (.lit (.bool false))))) (lk := []) (Corr.cond (lc := []) (ce := (.copy (.generated .binding 0))) (lk := []) (Corr.bOfE (Corr.var rfl rfl)) (Corr.kIf (la := [(.mk (.bind (.generated .operand 19)) none (.copy (.generated .binding 1)))]) (ta := (.call (.runtime .boolNot) [(.move (.generated .operand 19))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.bool]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.kIf (la := []) (ta := (.pair (.lit (.bool false)) (.lit (.bool true)))) (lb := []) (tb := (.pair (.lit (.bool false)) (.lit (.bool false)))) (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))))) (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))))))⟩⟩ - -theorem fun5 : FunOK program krate flags 5 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 20)) none (.copy (.generated .binding 1)))], (.cond (.isZero (.generated .holder 20)) (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 20))), (.mk (.bind (.generated .holder 22)) none (.block (.mk [(.mk (.bind (.generated .callee 21)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 21) [(.clone (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 22)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 5) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))]))), [(2, (.adt 1), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.adt 1)] (.option (.adt 1))), (some 0))], rfl, rfl, - (Corr.matchNat (sl := (some 3)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (lb := [(.mk (.bind (.generated .holder 22)) none (.block (.mk [(.mk (.bind (.generated .callee 21)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 21) [(.clone (.generated .binding 2))] true))))]) (tb := (.matchOn (.move (.generated .holder 22)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 5) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))])) (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))))) (Corr.matchArms (st := (.option (.adt 1))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 21)) (some (.fn 0)) (.clone (.generated .binding 0)))]) (tail := (.apply (.generated .callee 21) [(.clone (.generated .binding 2))] true)) (Corr.apply (ps := [(.adt 1)]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (2, (.adt 1), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.adt 1)] (.option (.adt 1))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true))))) (Corr.mCons (Γ' := [(4, (.adt 1), (some 4)), (3, .nat, (some 3)), (2, (.adt 1), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.adt 1)] (.option (.adt 1))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 5) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.adt 1)] (.option (.adt 1))), .nat, (.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))))))) rfl rfl rfl)))⟩⟩ - -theorem fun6 : FunOK program krate flags 6 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 8) [(.copy (.generated .binding 0)), (.move (.generated .binding 1))] false), [(1, (.adt 1), (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.callF (ts := [.nat, (.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)⟩⟩ - -theorem fun7 : FunOK program krate flags 7 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some (.list (.adt 2))) (.call (.function 9) [(.construct (.closure 1 10) [(.copy (.generated .binding 0))]), (.construct (.nil (.adt 2)) []), (.construct .cons [(.construct (.adt 2 0) [(.call (.function 11) [(.copy (.generated .binding 0))] false), (.construct (.nil (.adt 0)) [])]), (.construct (.nil (.adt 2)) [])])] true))], (.succeed (.construct (.adt 1 0) [(.clone (.generated .binding 1)), (.call (.function 12) [(.construct (.nil (.pair .nat .nat)) []), (.call (.function 11) [(.copy (.generated .binding 0))] false)] false), (.construct (.none (.pair (.pair .nat .nat) (.adt 2))) []), (.block (.mk [(.mk (.bind (.generated .operand 25)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 0)))] (.call (.runtime .natAdd) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] true)))), (.mk (.bind (.generated .operand 26)) none (.lit (.nat 1)))] (.call (.runtime .natLt) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))), (.construct (.adt 3 0) [(.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.block (.mk [(.mk (.bind (.generated .operand 27)) none (.move (.generated .binding 1)))] (.call (.runtime .lengthList) [(.move (.generated .operand 27))] false)))])])), [(0, .nat, (some 0))], rfl, rfl, - (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.list (.adt 2)), (.adt 2)] (.list (.adt 2))), (.list (.adt 2)), (.list (.adt 2))]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [.nat]) (mask := [false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.adt 2), (.list (.adt 2))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.pair .nat .nat), (.list (.adt 0))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl (Corr.fOfB (Corr.build (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (mask := [false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .nat .nat)), (.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 25)) none (.block (.mk [(.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 0)))] (.call (.runtime .natAdd) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] true)))), (.mk (.bind (.generated .operand 26)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natLt) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 0)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 23)), (.move (.generated .operand 24))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 27)) none (.move (.generated .binding 1)))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 27))] false)) (Corr.prim (ts := [(.list (.adt 2))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))))))) rfl)) (Corr.lNil))))))) rfl)))⟩⟩ - -theorem fun8 : FunOK program krate flags 8 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 29)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 28)), .wild, .wild]) (.mk [] (.move (.generated .part 28))))]))], (.matchOn (.move (.generated .holder 29)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 31)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [(.bind (.generated .part 30)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 30))))]))] (.matchOn (.uncons (.generated .holder 31)) [(.mk .none (.mk [] (.succeed (.construct (.none (.adt 1)) [])))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [(.mk (.bind (.generated .holder 33)) none (.call (.function 13) [(.copy (.generated .binding 0)), (.matchOn (.clone (.generated .binding 3)) [(.mk (.adt 2 0 [(.bind (.generated .part 32)), .wild]) (.mk [] (.move (.generated .part 32))))])] false))] (.matchOn (.move (.generated .holder 33)) [(.mk .none (.mk [(.mk (.bind (.generated .binding 6)) (some (.list (.adt 2))) (.call (.function 14) [(.clone (.generated .binding 3))] true)), (.mk (.bind (.generated .binding 7)) (some (.pair (.list (.adt 2)) (.list (.pair .nat .nat)))) (.call (.function 15) [(.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 58)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 58))))]), (.clone (.generated .binding 6))] false)), (.mk (.bind (.generated .binding 8)) (some (.list (.adt 2))) (.block (.mk [(.mk (.bind (.generated .operand 60)) none (.move (.generated .binding 4))), (.mk (.bind (.generated .operand 61)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 59)), .wild]) none (.move (.generated .binding 7)))] (.move (.generated .part 59)))))] (.call (.runtime .appendList) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] false)))), (.mk (.bind (.generated .binding 9)) (some (.list (.adt 2))) (.call (.function 9) [(.construct (.closure 1 16) [(.copy (.generated .binding 0))]), (.construct (.nil (.adt 2)) []), (.clone (.generated .binding 8))] true))] (.succeed (.construct .some [(.construct (.adt 1 0) [(.clone (.generated .binding 9)), (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 62))]) none (.move (.generated .binding 7)))] (.move (.generated .part 62)))), (.construct (.none (.pair (.pair .nat .nat) (.adt 2))) []), (.cond (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 63)), .wild]) (.mk [] (.move (.generated .part 63))))]) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 67)) none (.block (.mk [(.mk (.bind (.generated .operand 64)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 65)) none (.copy (.generated .binding 0)))] (.call (.runtime .natAdd) [(.move (.generated .operand 64)), (.move (.generated .operand 65))] true)))), (.mk (.bind (.generated .operand 68)) none (.block (.mk [(.mk (.bind (.generated .operand 66)) none (.move (.generated .binding 8)))] (.call (.runtime .lengthList) [(.move (.generated .operand 66))] false))))] (.call (.runtime .natLt) [(.move (.generated .operand 67)), (.move (.generated .operand 68))] false))), (.construct (.adt 3 0) [(.block (.mk [(.mk (.bind (.generated .operand 72)) none (.block (.mk [(.mk (.bind (.generated .holder 71)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 70))]) (.mk [] (.move (.generated .part 70))))]))] (.matchOn (.move (.generated .holder 71)) [(.mk (.adt 3 0 [(.bind (.generated .part 69)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 69))))])))), (.mk (.bind (.generated .operand 73)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 72)), (.move (.generated .operand 73))] true))), (.block (.mk [(.mk (.bind (.generated .operand 78)) none (.block (.mk [(.mk (.bind (.generated .holder 76)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 75))]) (.mk [] (.move (.generated .part 75))))]))] (.matchOn (.move (.generated .holder 76)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 74)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 74))))])))), (.mk (.bind (.generated .operand 79)) none (.call (.function 17) [(.matchOn (.move (.generated .binding 3)) [(.mk (.adt 2 0 [(.bind (.generated .part 77)), .wild]) (.mk [] (.move (.generated .part 77))))])] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 78)), (.move (.generated .operand 79))] true))), (.block (.mk [(.mk (.bind (.generated .operand 84)) none (.block (.mk [(.mk (.bind (.generated .holder 82)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))]))] (.matchOn (.move (.generated .holder 82)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 80)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 80))))])))), (.mk (.bind (.generated .operand 85)) none (.block (.mk [(.mk (.bind (.generated .operand 83)) none (.move (.generated .binding 6)))] (.call (.runtime .lengthList) [(.move (.generated .operand 83))] false))))] (.call (.runtime .natAdd) [(.move (.generated .operand 84)), (.move (.generated .operand 85))] true))), (.block (.mk [(.mk (.bind (.generated .operand 89)) none (.block (.mk [(.mk (.bind (.generated .holder 88)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 87))]) (.mk [] (.move (.generated .part 87))))]))] (.matchOn (.move (.generated .holder 88)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 86)), .wild, .wild]) (.mk [] (.move (.generated .part 86))))])))), (.mk (.bind (.generated .operand 90)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 89)), (.move (.generated .operand 90))] true))), (.block (.mk [(.mk (.bind (.generated .operand 94)) none (.block (.mk [(.mk (.bind (.generated .holder 93)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 92))]) (.mk [] (.move (.generated .part 92))))]))] (.matchOn (.move (.generated .holder 93)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 91)), .wild]) (.mk [] (.move (.generated .part 91))))])))), (.mk (.bind (.generated .operand 95)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 94)), (.move (.generated .operand 95))] true))), (.block (.mk [(.mk (.bind (.generated .operand 100)) none (.block (.mk [(.mk (.bind (.generated .holder 98)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 97))]) (.mk [] (.move (.generated .part 97))))]))] (.matchOn (.move (.generated .holder 98)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 96))]) (.mk [] (.move (.generated .part 96))))])))), (.mk (.bind (.generated .operand 101)) none (.block (.mk [(.mk (.bind (.generated .operand 99)) none (.clone (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 99))] false))))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 100)), (.move (.generated .operand 101))] false) (.mk [(.mk (.bind (.generated .operand 102)) none (.move (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 102))] false)) (.mk [(.mk (.bind (.generated .holder 105)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 104))]) (.mk [] (.move (.generated .part 104))))]))] (.matchOn (.move (.generated .holder 105)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 103))]) (.mk [] (.move (.generated .part 103))))])))))])])])))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.succeed (.construct .some [(.construct (.adt 1 0) [(.move (.generated .binding 4)), (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 34)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 34))))]), (.construct .some [(.pair (.copy (.generated .binding 5)) (.move (.generated .binding 3)))]), (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 35)), .wild]) (.mk [] (.move (.generated .part 35))))]), (.construct (.adt 3 0) [(.block (.mk [(.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.bind (.generated .holder 38)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 37))]) (.mk [] (.move (.generated .part 37))))]))] (.matchOn (.move (.generated .holder 38)) [(.mk (.adt 3 0 [(.bind (.generated .part 36)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 36))))])))), (.mk (.bind (.generated .operand 40)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] true))), (.block (.mk [(.mk (.bind (.generated .holder 43)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 42))]) (.mk [] (.move (.generated .part 42))))]))] (.matchOn (.move (.generated .holder 43)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 41)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 41))))]))), (.block (.mk [(.mk (.bind (.generated .holder 46)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 45))]) (.mk [] (.move (.generated .part 45))))]))] (.matchOn (.move (.generated .holder 46)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 44)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 44))))]))), (.block (.mk [(.mk (.bind (.generated .holder 49)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 48))]) (.mk [] (.move (.generated .part 48))))]))] (.matchOn (.move (.generated .holder 49)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 47)), .wild, .wild]) (.mk [] (.move (.generated .part 47))))]))), (.block (.mk [(.mk (.bind (.generated .operand 53)) none (.block (.mk [(.mk (.bind (.generated .holder 52)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 51))]) (.mk [] (.move (.generated .part 51))))]))] (.matchOn (.move (.generated .holder 52)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 50)), .wild]) (.mk [] (.move (.generated .part 50))))])))), (.mk (.bind (.generated .operand 54)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] true))), (.block (.mk [(.mk (.bind (.generated .holder 57)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 56))]) (.mk [] (.move (.generated .part 56))))]))] (.matchOn (.move (.generated .holder 57)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 55))]) (.mk [] (.move (.generated .part 55))))])))])])]))))])))]))), (.mk (.some .wild) (.mk [] (.succeed (.construct (.none (.adt 1)) []))))]), [(1, (.adt 1), (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option (.pair (.pair .nat .nat) (.adt 2)))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 28))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.adt 1), (some 1)), (0, .nat, (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 31)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [(.bind (.generated .part 30)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 30))))]))]) (tail := (.matchOn (.uncons (.generated .holder 31)) [(.mk .none (.mk [] (.succeed (.construct (.none (.adt 1)) [])))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [(.mk (.bind (.generated .holder 33)) none (.call (.function 13) [(.copy (.generated .binding 0)), (.matchOn (.clone (.generated .binding 3)) [(.mk (.adt 2 0 [(.bind (.generated .part 32)), .wild]) (.mk [] (.move (.generated .part 32))))])] false))] (.matchOn (.move (.generated .holder 33)) [(.mk .none (.mk [(.mk (.bind (.generated .binding 6)) (some (.list (.adt 2))) (.call (.function 14) [(.clone (.generated .binding 3))] true)), (.mk (.bind (.generated .binding 7)) (some (.pair (.list (.adt 2)) (.list (.pair .nat .nat)))) (.call (.function 15) [(.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 58)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 58))))]), (.clone (.generated .binding 6))] false)), (.mk (.bind (.generated .binding 8)) (some (.list (.adt 2))) (.block (.mk [(.mk (.bind (.generated .operand 60)) none (.move (.generated .binding 4))), (.mk (.bind (.generated .operand 61)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 59)), .wild]) none (.move (.generated .binding 7)))] (.move (.generated .part 59)))))] (.call (.runtime .appendList) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] false)))), (.mk (.bind (.generated .binding 9)) (some (.list (.adt 2))) (.call (.function 9) [(.construct (.closure 1 16) [(.copy (.generated .binding 0))]), (.construct (.nil (.adt 2)) []), (.clone (.generated .binding 8))] true))] (.succeed (.construct .some [(.construct (.adt 1 0) [(.clone (.generated .binding 9)), (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 62))]) none (.move (.generated .binding 7)))] (.move (.generated .part 62)))), (.construct (.none (.pair (.pair .nat .nat) (.adt 2))) []), (.cond (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 63)), .wild]) (.mk [] (.move (.generated .part 63))))]) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 67)) none (.block (.mk [(.mk (.bind (.generated .operand 64)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 65)) none (.copy (.generated .binding 0)))] (.call (.runtime .natAdd) [(.move (.generated .operand 64)), (.move (.generated .operand 65))] true)))), (.mk (.bind (.generated .operand 68)) none (.block (.mk [(.mk (.bind (.generated .operand 66)) none (.move (.generated .binding 8)))] (.call (.runtime .lengthList) [(.move (.generated .operand 66))] false))))] (.call (.runtime .natLt) [(.move (.generated .operand 67)), (.move (.generated .operand 68))] false))), (.construct (.adt 3 0) [(.block (.mk [(.mk (.bind (.generated .operand 72)) none (.block (.mk [(.mk (.bind (.generated .holder 71)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 70))]) (.mk [] (.move (.generated .part 70))))]))] (.matchOn (.move (.generated .holder 71)) [(.mk (.adt 3 0 [(.bind (.generated .part 69)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 69))))])))), (.mk (.bind (.generated .operand 73)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 72)), (.move (.generated .operand 73))] true))), (.block (.mk [(.mk (.bind (.generated .operand 78)) none (.block (.mk [(.mk (.bind (.generated .holder 76)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 75))]) (.mk [] (.move (.generated .part 75))))]))] (.matchOn (.move (.generated .holder 76)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 74)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 74))))])))), (.mk (.bind (.generated .operand 79)) none (.call (.function 17) [(.matchOn (.move (.generated .binding 3)) [(.mk (.adt 2 0 [(.bind (.generated .part 77)), .wild]) (.mk [] (.move (.generated .part 77))))])] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 78)), (.move (.generated .operand 79))] true))), (.block (.mk [(.mk (.bind (.generated .operand 84)) none (.block (.mk [(.mk (.bind (.generated .holder 82)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))]))] (.matchOn (.move (.generated .holder 82)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 80)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 80))))])))), (.mk (.bind (.generated .operand 85)) none (.block (.mk [(.mk (.bind (.generated .operand 83)) none (.move (.generated .binding 6)))] (.call (.runtime .lengthList) [(.move (.generated .operand 83))] false))))] (.call (.runtime .natAdd) [(.move (.generated .operand 84)), (.move (.generated .operand 85))] true))), (.block (.mk [(.mk (.bind (.generated .operand 89)) none (.block (.mk [(.mk (.bind (.generated .holder 88)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 87))]) (.mk [] (.move (.generated .part 87))))]))] (.matchOn (.move (.generated .holder 88)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 86)), .wild, .wild]) (.mk [] (.move (.generated .part 86))))])))), (.mk (.bind (.generated .operand 90)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 89)), (.move (.generated .operand 90))] true))), (.block (.mk [(.mk (.bind (.generated .operand 94)) none (.block (.mk [(.mk (.bind (.generated .holder 93)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 92))]) (.mk [] (.move (.generated .part 92))))]))] (.matchOn (.move (.generated .holder 93)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 91)), .wild]) (.mk [] (.move (.generated .part 91))))])))), (.mk (.bind (.generated .operand 95)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 94)), (.move (.generated .operand 95))] true))), (.block (.mk [(.mk (.bind (.generated .operand 100)) none (.block (.mk [(.mk (.bind (.generated .holder 98)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 97))]) (.mk [] (.move (.generated .part 97))))]))] (.matchOn (.move (.generated .holder 98)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 96))]) (.mk [] (.move (.generated .part 96))))])))), (.mk (.bind (.generated .operand 101)) none (.block (.mk [(.mk (.bind (.generated .operand 99)) none (.clone (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 99))] false))))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 100)), (.move (.generated .operand 101))] false) (.mk [(.mk (.bind (.generated .operand 102)) none (.move (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 102))] false)) (.mk [(.mk (.bind (.generated .holder 105)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 104))]) (.mk [] (.move (.generated .part 104))))]))] (.matchOn (.move (.generated .holder 105)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 103))]) (.mk [] (.move (.generated .part 103))))])))))])])])))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.succeed (.construct .some [(.construct (.adt 1 0) [(.move (.generated .binding 4)), (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 34)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 34))))]), (.construct .some [(.pair (.copy (.generated .binding 5)) (.move (.generated .binding 3)))]), (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 35)), .wild]) (.mk [] (.move (.generated .part 35))))]), (.construct (.adt 3 0) [(.block (.mk [(.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.bind (.generated .holder 38)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 37))]) (.mk [] (.move (.generated .part 37))))]))] (.matchOn (.move (.generated .holder 38)) [(.mk (.adt 3 0 [(.bind (.generated .part 36)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 36))))])))), (.mk (.bind (.generated .operand 40)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] true))), (.block (.mk [(.mk (.bind (.generated .holder 43)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 42))]) (.mk [] (.move (.generated .part 42))))]))] (.matchOn (.move (.generated .holder 43)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 41)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 41))))]))), (.block (.mk [(.mk (.bind (.generated .holder 46)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 45))]) (.mk [] (.move (.generated .part 45))))]))] (.matchOn (.move (.generated .holder 46)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 44)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 44))))]))), (.block (.mk [(.mk (.bind (.generated .holder 49)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 48))]) (.mk [] (.move (.generated .part 48))))]))] (.matchOn (.move (.generated .holder 49)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 47)), .wild, .wild]) (.mk [] (.move (.generated .part 47))))]))), (.block (.mk [(.mk (.bind (.generated .operand 53)) none (.block (.mk [(.mk (.bind (.generated .holder 52)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 51))]) (.mk [] (.move (.generated .part 51))))]))] (.matchOn (.move (.generated .holder 52)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 50)), .wild]) (.mk [] (.move (.generated .part 50))))])))), (.mk (.bind (.generated .operand 54)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] true))), (.block (.mk [(.mk (.bind (.generated .holder 57)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 56))]) (.mk [] (.move (.generated .part 56))))]))] (.matchOn (.move (.generated .holder 57)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 55))]) (.mk [] (.move (.generated .part 55))))])))])])]))))])))])) (Corr.mCons (Γ' := [(2, (.pair (.pair .nat .nat) (.adt 2)), none), (1, (.adt 1), (some 1)), (0, .nat, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct (.none (.adt 1)) []))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl (Corr.matchArms (st := (.list (.adt 2))) (U := []) (view := true) (idx := [0, 1]) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 30))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.adt 1), (some 1)), (0, .nat, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct (.none (.adt 1)) []))) (Corr.mCons (Γ' := [(4, (.list (.adt 2)), (some 4)), (3, (.adt 2), (some 3)), (1, (.adt 1), (some 1)), (0, .nat, (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 33)) none (.call (.function 13) [(.copy (.generated .binding 0)), (.matchOn (.clone (.generated .binding 3)) [(.mk (.adt 2 0 [(.bind (.generated .part 32)), .wild]) (.mk [] (.move (.generated .part 32))))])] false))]) (tail := (.matchOn (.move (.generated .holder 33)) [(.mk .none (.mk [(.mk (.bind (.generated .binding 6)) (some (.list (.adt 2))) (.call (.function 14) [(.clone (.generated .binding 3))] true)), (.mk (.bind (.generated .binding 7)) (some (.pair (.list (.adt 2)) (.list (.pair .nat .nat)))) (.call (.function 15) [(.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 58)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 58))))]), (.clone (.generated .binding 6))] false)), (.mk (.bind (.generated .binding 8)) (some (.list (.adt 2))) (.block (.mk [(.mk (.bind (.generated .operand 60)) none (.move (.generated .binding 4))), (.mk (.bind (.generated .operand 61)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 59)), .wild]) none (.move (.generated .binding 7)))] (.move (.generated .part 59)))))] (.call (.runtime .appendList) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] false)))), (.mk (.bind (.generated .binding 9)) (some (.list (.adt 2))) (.call (.function 9) [(.construct (.closure 1 16) [(.copy (.generated .binding 0))]), (.construct (.nil (.adt 2)) []), (.clone (.generated .binding 8))] true))] (.succeed (.construct .some [(.construct (.adt 1 0) [(.clone (.generated .binding 9)), (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 62))]) none (.move (.generated .binding 7)))] (.move (.generated .part 62)))), (.construct (.none (.pair (.pair .nat .nat) (.adt 2))) []), (.cond (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 63)), .wild]) (.mk [] (.move (.generated .part 63))))]) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 67)) none (.block (.mk [(.mk (.bind (.generated .operand 64)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 65)) none (.copy (.generated .binding 0)))] (.call (.runtime .natAdd) [(.move (.generated .operand 64)), (.move (.generated .operand 65))] true)))), (.mk (.bind (.generated .operand 68)) none (.block (.mk [(.mk (.bind (.generated .operand 66)) none (.move (.generated .binding 8)))] (.call (.runtime .lengthList) [(.move (.generated .operand 66))] false))))] (.call (.runtime .natLt) [(.move (.generated .operand 67)), (.move (.generated .operand 68))] false))), (.construct (.adt 3 0) [(.block (.mk [(.mk (.bind (.generated .operand 72)) none (.block (.mk [(.mk (.bind (.generated .holder 71)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 70))]) (.mk [] (.move (.generated .part 70))))]))] (.matchOn (.move (.generated .holder 71)) [(.mk (.adt 3 0 [(.bind (.generated .part 69)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 69))))])))), (.mk (.bind (.generated .operand 73)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 72)), (.move (.generated .operand 73))] true))), (.block (.mk [(.mk (.bind (.generated .operand 78)) none (.block (.mk [(.mk (.bind (.generated .holder 76)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 75))]) (.mk [] (.move (.generated .part 75))))]))] (.matchOn (.move (.generated .holder 76)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 74)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 74))))])))), (.mk (.bind (.generated .operand 79)) none (.call (.function 17) [(.matchOn (.move (.generated .binding 3)) [(.mk (.adt 2 0 [(.bind (.generated .part 77)), .wild]) (.mk [] (.move (.generated .part 77))))])] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 78)), (.move (.generated .operand 79))] true))), (.block (.mk [(.mk (.bind (.generated .operand 84)) none (.block (.mk [(.mk (.bind (.generated .holder 82)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))]))] (.matchOn (.move (.generated .holder 82)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 80)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 80))))])))), (.mk (.bind (.generated .operand 85)) none (.block (.mk [(.mk (.bind (.generated .operand 83)) none (.move (.generated .binding 6)))] (.call (.runtime .lengthList) [(.move (.generated .operand 83))] false))))] (.call (.runtime .natAdd) [(.move (.generated .operand 84)), (.move (.generated .operand 85))] true))), (.block (.mk [(.mk (.bind (.generated .operand 89)) none (.block (.mk [(.mk (.bind (.generated .holder 88)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 87))]) (.mk [] (.move (.generated .part 87))))]))] (.matchOn (.move (.generated .holder 88)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 86)), .wild, .wild]) (.mk [] (.move (.generated .part 86))))])))), (.mk (.bind (.generated .operand 90)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 89)), (.move (.generated .operand 90))] true))), (.block (.mk [(.mk (.bind (.generated .operand 94)) none (.block (.mk [(.mk (.bind (.generated .holder 93)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 92))]) (.mk [] (.move (.generated .part 92))))]))] (.matchOn (.move (.generated .holder 93)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 91)), .wild]) (.mk [] (.move (.generated .part 91))))])))), (.mk (.bind (.generated .operand 95)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 94)), (.move (.generated .operand 95))] true))), (.block (.mk [(.mk (.bind (.generated .operand 100)) none (.block (.mk [(.mk (.bind (.generated .holder 98)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 97))]) (.mk [] (.move (.generated .part 97))))]))] (.matchOn (.move (.generated .holder 98)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 96))]) (.mk [] (.move (.generated .part 96))))])))), (.mk (.bind (.generated .operand 101)) none (.block (.mk [(.mk (.bind (.generated .operand 99)) none (.clone (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 99))] false))))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 100)), (.move (.generated .operand 101))] false) (.mk [(.mk (.bind (.generated .operand 102)) none (.move (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 102))] false)) (.mk [(.mk (.bind (.generated .holder 105)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 104))]) (.mk [] (.move (.generated .part 104))))]))] (.matchOn (.move (.generated .holder 105)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 103))]) (.mk [] (.move (.generated .part 103))))])))))])])])))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.succeed (.construct .some [(.construct (.adt 1 0) [(.move (.generated .binding 4)), (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 34)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 34))))]), (.construct .some [(.pair (.copy (.generated .binding 5)) (.move (.generated .binding 3)))]), (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 35)), .wild]) (.mk [] (.move (.generated .part 35))))]), (.construct (.adt 3 0) [(.block (.mk [(.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.bind (.generated .holder 38)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 37))]) (.mk [] (.move (.generated .part 37))))]))] (.matchOn (.move (.generated .holder 38)) [(.mk (.adt 3 0 [(.bind (.generated .part 36)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 36))))])))), (.mk (.bind (.generated .operand 40)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] true))), (.block (.mk [(.mk (.bind (.generated .holder 43)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 42))]) (.mk [] (.move (.generated .part 42))))]))] (.matchOn (.move (.generated .holder 43)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 41)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 41))))]))), (.block (.mk [(.mk (.bind (.generated .holder 46)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 45))]) (.mk [] (.move (.generated .part 45))))]))] (.matchOn (.move (.generated .holder 46)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 44)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 44))))]))), (.block (.mk [(.mk (.bind (.generated .holder 49)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 48))]) (.mk [] (.move (.generated .part 48))))]))] (.matchOn (.move (.generated .holder 49)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 47)), .wild, .wild]) (.mk [] (.move (.generated .part 47))))]))), (.block (.mk [(.mk (.bind (.generated .operand 53)) none (.block (.mk [(.mk (.bind (.generated .holder 52)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 51))]) (.mk [] (.move (.generated .part 51))))]))] (.matchOn (.move (.generated .holder 52)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 50)), .wild]) (.mk [] (.move (.generated .part 50))))])))), (.mk (.bind (.generated .operand 54)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] true))), (.block (.mk [(.mk (.bind (.generated .holder 57)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 56))]) (.mk [] (.move (.generated .part 56))))]))] (.matchOn (.move (.generated .holder 57)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 55))]) (.mk [] (.move (.generated .part 55))))])))])])]))))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := (.option (.pair .nat .nat))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.nat, (.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.pair .nat .nat), (.list (.adt 0))]) (rd := (.move (.generated .part 32))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.list (.adt 2)), (some 4)), (3, (.adt 2), (some 3)), (1, (.adt 1), (some 1)), (0, .nat, (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .binding 6)) (some (.list (.adt 2))) (.call (.function 14) [(.clone (.generated .binding 3))] true)), (.mk (.bind (.generated .binding 7)) (some (.pair (.list (.adt 2)) (.list (.pair .nat .nat)))) (.call (.function 15) [(.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 58)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 58))))]), (.clone (.generated .binding 6))] false)), (.mk (.bind (.generated .binding 8)) (some (.list (.adt 2))) (.block (.mk [(.mk (.bind (.generated .operand 60)) none (.move (.generated .binding 4))), (.mk (.bind (.generated .operand 61)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 59)), .wild]) none (.move (.generated .binding 7)))] (.move (.generated .part 59)))))] (.call (.runtime .appendList) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] false)))), (.mk (.bind (.generated .binding 9)) (some (.list (.adt 2))) (.call (.function 9) [(.construct (.closure 1 16) [(.copy (.generated .binding 0))]), (.construct (.nil (.adt 2)) []), (.clone (.generated .binding 8))] true))]) (tail := (.succeed (.construct .some [(.construct (.adt 1 0) [(.clone (.generated .binding 9)), (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 62))]) none (.move (.generated .binding 7)))] (.move (.generated .part 62)))), (.construct (.none (.pair (.pair .nat .nat) (.adt 2))) []), (.cond (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 63)), .wild]) (.mk [] (.move (.generated .part 63))))]) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 67)) none (.block (.mk [(.mk (.bind (.generated .operand 64)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 65)) none (.copy (.generated .binding 0)))] (.call (.runtime .natAdd) [(.move (.generated .operand 64)), (.move (.generated .operand 65))] true)))), (.mk (.bind (.generated .operand 68)) none (.block (.mk [(.mk (.bind (.generated .operand 66)) none (.move (.generated .binding 8)))] (.call (.runtime .lengthList) [(.move (.generated .operand 66))] false))))] (.call (.runtime .natLt) [(.move (.generated .operand 67)), (.move (.generated .operand 68))] false))), (.construct (.adt 3 0) [(.block (.mk [(.mk (.bind (.generated .operand 72)) none (.block (.mk [(.mk (.bind (.generated .holder 71)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 70))]) (.mk [] (.move (.generated .part 70))))]))] (.matchOn (.move (.generated .holder 71)) [(.mk (.adt 3 0 [(.bind (.generated .part 69)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 69))))])))), (.mk (.bind (.generated .operand 73)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 72)), (.move (.generated .operand 73))] true))), (.block (.mk [(.mk (.bind (.generated .operand 78)) none (.block (.mk [(.mk (.bind (.generated .holder 76)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 75))]) (.mk [] (.move (.generated .part 75))))]))] (.matchOn (.move (.generated .holder 76)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 74)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 74))))])))), (.mk (.bind (.generated .operand 79)) none (.call (.function 17) [(.matchOn (.move (.generated .binding 3)) [(.mk (.adt 2 0 [(.bind (.generated .part 77)), .wild]) (.mk [] (.move (.generated .part 77))))])] true))] (.call (.runtime .natAdd) [(.move (.generated .operand 78)), (.move (.generated .operand 79))] true))), (.block (.mk [(.mk (.bind (.generated .operand 84)) none (.block (.mk [(.mk (.bind (.generated .holder 82)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))]))] (.matchOn (.move (.generated .holder 82)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 80)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 80))))])))), (.mk (.bind (.generated .operand 85)) none (.block (.mk [(.mk (.bind (.generated .operand 83)) none (.move (.generated .binding 6)))] (.call (.runtime .lengthList) [(.move (.generated .operand 83))] false))))] (.call (.runtime .natAdd) [(.move (.generated .operand 84)), (.move (.generated .operand 85))] true))), (.block (.mk [(.mk (.bind (.generated .operand 89)) none (.block (.mk [(.mk (.bind (.generated .holder 88)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 87))]) (.mk [] (.move (.generated .part 87))))]))] (.matchOn (.move (.generated .holder 88)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 86)), .wild, .wild]) (.mk [] (.move (.generated .part 86))))])))), (.mk (.bind (.generated .operand 90)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 89)), (.move (.generated .operand 90))] true))), (.block (.mk [(.mk (.bind (.generated .operand 94)) none (.block (.mk [(.mk (.bind (.generated .holder 93)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 92))]) (.mk [] (.move (.generated .part 92))))]))] (.matchOn (.move (.generated .holder 93)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 91)), .wild]) (.mk [] (.move (.generated .part 91))))])))), (.mk (.bind (.generated .operand 95)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 94)), (.move (.generated .operand 95))] true))), (.block (.mk [(.mk (.bind (.generated .operand 100)) none (.block (.mk [(.mk (.bind (.generated .holder 98)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 97))]) (.mk [] (.move (.generated .part 97))))]))] (.matchOn (.move (.generated .holder 98)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 96))]) (.mk [] (.move (.generated .part 96))))])))), (.mk (.bind (.generated .operand 101)) none (.block (.mk [(.mk (.bind (.generated .operand 99)) none (.clone (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 99))] false))))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 100)), (.move (.generated .operand 101))] false) (.mk [(.mk (.bind (.generated .operand 102)) none (.move (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 102))] false)) (.mk [(.mk (.bind (.generated .holder 105)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 104))]) (.mk [] (.move (.generated .part 104))))]))] (.matchOn (.move (.generated .holder 105)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 103))]) (.mk [] (.move (.generated .part 103))))])))))])])]))) (Corr.mCons (Γ' := [(5, (.pair .nat .nat), (some 5)), (4, (.list (.adt 2)), (some 4)), (3, (.adt 2), (some 3)), (1, (.adt 1), (some 1)), (0, .nat, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct .some [(.construct (.adt 1 0) [(.move (.generated .binding 4)), (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 34)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 34))))]), (.construct .some [(.pair (.copy (.generated .binding 5)) (.move (.generated .binding 3)))]), (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 35)), .wild]) (.mk [] (.move (.generated .part 35))))]), (.construct (.adt 3 0) [(.block (.mk [(.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.bind (.generated .holder 38)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 37))]) (.mk [] (.move (.generated .part 37))))]))] (.matchOn (.move (.generated .holder 38)) [(.mk (.adt 3 0 [(.bind (.generated .part 36)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 36))))])))), (.mk (.bind (.generated .operand 40)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] true))), (.block (.mk [(.mk (.bind (.generated .holder 43)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 42))]) (.mk [] (.move (.generated .part 42))))]))] (.matchOn (.move (.generated .holder 43)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 41)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 41))))]))), (.block (.mk [(.mk (.bind (.generated .holder 46)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 45))]) (.mk [] (.move (.generated .part 45))))]))] (.matchOn (.move (.generated .holder 46)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 44)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 44))))]))), (.block (.mk [(.mk (.bind (.generated .holder 49)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 48))]) (.mk [] (.move (.generated .part 48))))]))] (.matchOn (.move (.generated .holder 49)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 47)), .wild, .wild]) (.mk [] (.move (.generated .part 47))))]))), (.block (.mk [(.mk (.bind (.generated .operand 53)) none (.block (.mk [(.mk (.bind (.generated .holder 52)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 51))]) (.mk [] (.move (.generated .part 51))))]))] (.matchOn (.move (.generated .holder 52)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 50)), .wild]) (.mk [] (.move (.generated .part 50))))])))), (.mk (.bind (.generated .operand 54)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] true))), (.block (.mk [(.mk (.bind (.generated .holder 57)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 56))]) (.mk [] (.move (.generated .part 56))))]))] (.matchOn (.move (.generated .holder 57)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 55))]) (.mk [] (.move (.generated .part 55))))])))])])]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (mask := [false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 34))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.pair (.pair .nat .nat) (.adt 2))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lNil))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 35))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.bind (.generated .holder 38)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 37))]) (.mk [] (.move (.generated .part 37))))]))] (.matchOn (.move (.generated .holder 38)) [(.mk (.adt 3 0 [(.bind (.generated .part 36)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 36))))])))), (.mk (.bind (.generated .operand 40)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 38)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 37))]) (.mk [] (.move (.generated .part 37))))]))]) (tail := (.matchOn (.move (.generated .holder 38)) [(.mk (.adt 3 0 [(.bind (.generated .part 36)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 36))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 36))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 37))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 43)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 42))]) (.mk [] (.move (.generated .part 42))))]))]) (tail := (.matchOn (.move (.generated .holder 43)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 41)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 41))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 41))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 42))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 46)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 45))]) (.mk [] (.move (.generated .part 45))))]))]) (tail := (.matchOn (.move (.generated .holder 46)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 44)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 44))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 44))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 45))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 49)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 48))]) (.mk [] (.move (.generated .part 48))))]))]) (tail := (.matchOn (.move (.generated .holder 49)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 47)), .wild, .wild]) (.mk [] (.move (.generated .part 47))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 47))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 48))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 53)) none (.block (.mk [(.mk (.bind (.generated .holder 52)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 51))]) (.mk [] (.move (.generated .part 51))))]))] (.matchOn (.move (.generated .holder 52)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 50)), .wild]) (.mk [] (.move (.generated .part 50))))])))), (.mk (.bind (.generated .operand 54)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 53)), (.move (.generated .operand 54))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 52)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 51))]) (.mk [] (.move (.generated .part 51))))]))]) (tail := (.matchOn (.move (.generated .holder 52)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 50)), .wild]) (.mk [] (.move (.generated .part 50))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 50))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 51))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 57)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 56))]) (.mk [] (.move (.generated .part 56))))]))]) (tail := (.matchOn (.move (.generated .holder 57)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 55))]) (.mk [] (.move (.generated .part 55))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 55))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 56))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))))))) rfl)) (Corr.lNil))))))) rfl)) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.adt 2)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .nat .nat)), (.list (.adt 2))]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 58))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 60)) none (.move (.generated .binding 4))), (.mk (.bind (.generated .operand 61)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 59)), .wild]) none (.move (.generated .binding 7)))] (.move (.generated .part 59)))))]) (tail := (.call (.runtime .appendList) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] false)) (Corr.prim (ts := [(.list (.adt 2)), (.list (.adt 2))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 59)), .wild]) none (.move (.generated .binding 7)))]) (tail := (.move (.generated .part 59))) (Corr.first (ta := (.list (.adt 2))) (tb := (.list (.pair .nat .nat))) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.list (.adt 2)), (.adt 2)] (.list (.adt 2))), (.list (.adt 2)), (.list (.adt 2))]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [.nat]) (mask := [false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl (Corr.fOfB (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (mask := [false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 62))]) none (.move (.generated .binding 7)))]) (tail := (.move (.generated .part 62))) (Corr.second (ta := (.list (.adt 2))) (tb := (.list (.pair .nat .nat))) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.cond (lc := []) (ce := (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 63)), .wild]) (.mk [] (.move (.generated .part 63))))])) (lk := []) (Corr.fieldRead (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 63))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 67)) none (.block (.mk [(.mk (.bind (.generated .operand 64)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 65)) none (.copy (.generated .binding 0)))] (.call (.runtime .natAdd) [(.move (.generated .operand 64)), (.move (.generated .operand 65))] true)))), (.mk (.bind (.generated .operand 68)) none (.block (.mk [(.mk (.bind (.generated .operand 66)) none (.move (.generated .binding 8)))] (.call (.runtime .lengthList) [(.move (.generated .operand 66))] false))))]) (tb := (.call (.runtime .natLt) [(.move (.generated .operand 67)), (.move (.generated .operand 68))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 64)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 65)) none (.copy (.generated .binding 0)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 64)), (.move (.generated .operand 65))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 66)) none (.move (.generated .binding 8)))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 66))] false)) (Corr.prim (ts := [(.list (.adt 2))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)))) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 72)) none (.block (.mk [(.mk (.bind (.generated .holder 71)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 70))]) (.mk [] (.move (.generated .part 70))))]))] (.matchOn (.move (.generated .holder 71)) [(.mk (.adt 3 0 [(.bind (.generated .part 69)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 69))))])))), (.mk (.bind (.generated .operand 73)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 72)), (.move (.generated .operand 73))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 71)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 70))]) (.mk [] (.move (.generated .part 70))))]))]) (tail := (.matchOn (.move (.generated .holder 71)) [(.mk (.adt 3 0 [(.bind (.generated .part 69)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 69))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 69))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 70))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 78)) none (.block (.mk [(.mk (.bind (.generated .holder 76)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 75))]) (.mk [] (.move (.generated .part 75))))]))] (.matchOn (.move (.generated .holder 76)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 74)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 74))))])))), (.mk (.bind (.generated .operand 79)) none (.call (.function 17) [(.matchOn (.move (.generated .binding 3)) [(.mk (.adt 2 0 [(.bind (.generated .part 77)), .wild]) (.mk [] (.move (.generated .part 77))))])] true))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 78)), (.move (.generated .operand 79))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 76)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 75))]) (.mk [] (.move (.generated .part 75))))]))]) (tail := (.matchOn (.move (.generated .holder 76)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 74)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 74))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 74))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 75))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.pair .nat .nat), (.list (.adt 0))]) (rd := (.move (.generated .part 77))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 84)) none (.block (.mk [(.mk (.bind (.generated .holder 82)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))]))] (.matchOn (.move (.generated .holder 82)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 80)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 80))))])))), (.mk (.bind (.generated .operand 85)) none (.block (.mk [(.mk (.bind (.generated .operand 83)) none (.move (.generated .binding 6)))] (.call (.runtime .lengthList) [(.move (.generated .operand 83))] false))))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 84)), (.move (.generated .operand 85))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 82)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))]))]) (tail := (.matchOn (.move (.generated .holder 82)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 80)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 80))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 80))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 81))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 83)) none (.move (.generated .binding 6)))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 83))] false)) (Corr.prim (ts := [(.list (.adt 2))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 89)) none (.block (.mk [(.mk (.bind (.generated .holder 88)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 87))]) (.mk [] (.move (.generated .part 87))))]))] (.matchOn (.move (.generated .holder 88)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 86)), .wild, .wild]) (.mk [] (.move (.generated .part 86))))])))), (.mk (.bind (.generated .operand 90)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 89)), (.move (.generated .operand 90))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 88)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 87))]) (.mk [] (.move (.generated .part 87))))]))]) (tail := (.matchOn (.move (.generated .holder 88)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 86)), .wild, .wild]) (.mk [] (.move (.generated .part 86))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 86))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 87))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 94)) none (.block (.mk [(.mk (.bind (.generated .holder 93)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 92))]) (.mk [] (.move (.generated .part 92))))]))] (.matchOn (.move (.generated .holder 93)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 91)), .wild]) (.mk [] (.move (.generated .part 91))))])))), (.mk (.bind (.generated .operand 95)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 94)), (.move (.generated .operand 95))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 93)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 92))]) (.mk [] (.move (.generated .part 92))))]))]) (tail := (.matchOn (.move (.generated .holder 93)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 91)), .wild]) (.mk [] (.move (.generated .part 91))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 91))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 92))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 100)) none (.block (.mk [(.mk (.bind (.generated .holder 98)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 97))]) (.mk [] (.move (.generated .part 97))))]))] (.matchOn (.move (.generated .holder 98)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 96))]) (.mk [] (.move (.generated .part 96))))])))), (.mk (.bind (.generated .operand 101)) none (.block (.mk [(.mk (.bind (.generated .operand 99)) none (.clone (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 99))] false))))]) (tail := (.cond (.call (.runtime .natLt) [(.move (.generated .operand 100)), (.move (.generated .operand 101))] false) (.mk [(.mk (.bind (.generated .operand 102)) none (.move (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 102))] false)) (.mk [(.mk (.bind (.generated .holder 105)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 104))]) (.mk [] (.move (.generated .part 104))))]))] (.matchOn (.move (.generated .holder 105)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 103))]) (.mk [] (.move (.generated .part 103))))])))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 100)) none (.block (.mk [(.mk (.bind (.generated .holder 98)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 97))]) (.mk [] (.move (.generated .part 97))))]))] (.matchOn (.move (.generated .holder 98)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 96))]) (.mk [] (.move (.generated .part 96))))])))), (.mk (.bind (.generated .operand 101)) none (.block (.mk [(.mk (.bind (.generated .operand 99)) none (.clone (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 99))] false))))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 100)), (.move (.generated .operand 101))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 98)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 97))]) (.mk [] (.move (.generated .part 97))))]))]) (tail := (.matchOn (.move (.generated .holder 98)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 96))]) (.mk [] (.move (.generated .part 96))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 96))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 97))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 99)) none (.clone (.generated .binding 9)))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 99))] false)) (Corr.prim (ts := [(.list (.adt 2))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 102)) none (.move (.generated .binding 9)))]) (ta := (.call (.runtime .lengthList) [(.move (.generated .operand 102))] false)) (lb := [(.mk (.bind (.generated .holder 105)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 104))]) (.mk [] (.move (.generated .part 104))))]))]) (tb := (.matchOn (.move (.generated .holder 105)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 103))]) (.mk [] (.move (.generated .part 103))))])) (Corr.prim (ts := [(.list (.adt 2))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 103))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.list (.pair .nat .nat)), (.option (.pair (.pair .nat .nat) (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 104))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)))) (Corr.lNil)))))))) rfl)) (Corr.lNil))))))) rfl)) (Corr.lNil))) rfl))))))) rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl)) rfl rfl rfl)⟩⟩ - -theorem fun9 : FunOK program krate flags 9 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 106)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 106)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 9) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 107)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 107) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]), [(2, (.list (.adt 2)), (some 2)), (1, (.list (.adt 2)), (some 1)), (0, (.fn [(.list (.adt 2)), (.adt 2)] (.list (.adt 2))), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.adt 2))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.adt 2)), (some 2)), (1, (.list (.adt 2)), (some 1)), (0, (.fn [(.list (.adt 2)), (.adt 2)] (.list (.adt 2))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list (.adt 2)), (some 4)), (3, (.adt 2), (some 3)), (2, (.list (.adt 2)), (some 2)), (1, (.list (.adt 2)), (some 1)), (0, (.fn [(.list (.adt 2)), (.adt 2)] (.list (.adt 2))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 9) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 107)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 107) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.list (.adt 2)), (.adt 2)] (.list (.adt 2))), (.list (.adt 2)), (.list (.adt 2))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 107)) (some (.fn 1)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 107) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] true)) (Corr.apply (ps := [(.list (.adt 2)), (.adt 2)]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ - -theorem fun10 : FunOK program krate flags 10 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 111)) none (.block (.mk [(.mk (.bind (.generated .operand 108)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthList) [(.move (.generated .operand 108))] false)))), (.mk (.bind (.generated .operand 112)) none (.block (.mk [(.mk (.bind (.generated .operand 109)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 110)) none (.copy (.generated .binding 0)))] (.call (.runtime .natAdd) [(.move (.generated .operand 109)), (.move (.generated .operand 110))] true))))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 111)), (.move (.generated .operand 112))] false) (.mk [(.mk (.bind (.generated .operand 113)) none (.move (.generated .binding 1))), (.mk (.bind (.generated .operand 114)) none (.construct .cons [(.move (.generated .binding 2)), (.construct (.nil (.adt 2)) [])]))] (.succeed (.call (.runtime .appendList) [(.move (.generated .operand 113)), (.move (.generated .operand 114))] false))) (.mk [] (.succeed (.move (.generated .binding 1))))), [(2, (.adt 2), (some 2)), (1, (.list (.adt 2)), (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 111)) none (.block (.mk [(.mk (.bind (.generated .operand 108)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthList) [(.move (.generated .operand 108))] false)))), (.mk (.bind (.generated .operand 112)) none (.block (.mk [(.mk (.bind (.generated .operand 109)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 110)) none (.copy (.generated .binding 0)))] (.call (.runtime .natAdd) [(.move (.generated .operand 109)), (.move (.generated .operand 110))] true))))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 111)), (.move (.generated .operand 112))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 108)) none (.clone (.generated .binding 1)))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 108))] false)) (Corr.prim (ts := [(.list (.adt 2))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 109)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 110)) none (.copy (.generated .binding 0)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 109)), (.move (.generated .operand 110))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 113)) none (.move (.generated .binding 1))), (.mk (.bind (.generated .operand 114)) none (.construct .cons [(.move (.generated .binding 2)), (.construct (.nil (.adt 2)) [])]))]) (ta := (.succeed (.call (.runtime .appendList) [(.move (.generated .operand 113)), (.move (.generated .operand 114))] false))) (lb := []) (tb := (.succeed (.move (.generated .binding 1)))) (Corr.fOfB (Corr.prim (ts := [(.list (.adt 2)), (.list (.adt 2))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [(.adt 2), (.list (.adt 2))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))))⟩⟩ - -theorem fun11 : FunOK program krate flags 11 := - ⟨_, rfl, .inl ⟨_, _, [], (.pair (.lit (.nat 0)) (.lit (.nat 0))), [(0, .nat, none)], rfl, rfl, - (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))))⟩⟩ - -theorem fun12 : FunOK program krate flags 12 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 115)) none (.clone (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 115)) [(.mk .none (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil (.pair .nat .nat)) [])]))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 118)) none (.block (.mk [(.mk (.bind (.generated .operand 116)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 117)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 116)), (.move (.generated .operand 117))] false))))] (.matchOn (.move (.generated .holder 118)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 12) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])))]), [(1, (.pair .nat .nat), (some 1)), (0, (.list (.pair .nat .nat)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.pair .nat .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.pair .nat .nat), (some 1)), (0, (.list (.pair .nat .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .cons [(.copy (.generated .binding 1)), (.construct (.nil (.pair .nat .nat)) [])])) (Corr.mCons (Γ' := [(3, (.list (.pair .nat .nat)), (some 3)), (2, (.pair .nat .nat), (some 2)), (1, (.pair .nat .nat), (some 1)), (0, (.list (.pair .nat .nat)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 118)) none (.block (.mk [(.mk (.bind (.generated .operand 116)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 117)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 116)), (.move (.generated .operand 117))] false))))]) (tail := (.matchOn (.move (.generated .holder 118)) [(.mk (.ordering .less) (.mk [] (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))]))), (.mk (.ordering .same) (.mk [] (.move (.generated .binding 0)))), (.mk (.ordering .more) (.mk [] (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 12) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 116)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 117)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 116)), (.move (.generated .operand 117))] false)) (Corr.prim (ts := [(.pair .nat .nat), (.pair .nat .nat)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list (.pair .nat .nat)), (some 3)), (2, (.pair .nat .nat), (some 2)), (1, (.pair .nat .nat), (some 1)), (0, (.list (.pair .nat .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .cons [(.copy (.generated .binding 1)), (.move (.generated .binding 0))])) (Corr.mCons (Γ' := [(3, (.list (.pair .nat .nat)), (some 3)), (2, (.pair .nat .nat), (some 2)), (1, (.pair .nat .nat), (some 1)), (0, (.list (.pair .nat .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.move (.generated .binding 0))) (Corr.mCons (Γ' := [(3, (.list (.pair .nat .nat)), (some 3)), (2, (.pair .nat .nat), (some 2)), (1, (.pair .nat .nat), (some 1)), (0, (.list (.pair .nat .nat)), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.construct .cons [(.copy (.generated .binding 2)), (.call (.function 12) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.pair .nat .nat), (.list (.pair .nat .nat))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .nat .nat)), (.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.build (ts := [(.pair .nat .nat), (.list (.pair .nat .nat))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := [(.pair .nat .nat), (.list (.pair .nat .nat))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun13 : FunOK program krate flags 13 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 119)) none (.call (.function 18) [(.copy (.generated .binding 1))] false))], (.matchOn (.move (.generated .holder 119)) [(.mk .none (.mk [] (.construct (.none (.pair .nat .nat)) []))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.cond (.call (.function 19) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.mk [] (.construct .some [(.copy (.generated .binding 2))])) (.mk [] (.construct (.none (.pair .nat .nat)) [])))))]), [(1, (.pair .nat .nat), (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option (.pair .nat .nat))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.pair .nat .nat), (some 1)), (0, .nat, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none (.pair .nat .nat)) [])) (Corr.mCons (Γ' := [(2, (.pair .nat .nat), (some 2)), (1, (.pair .nat .nat), (some 1)), (0, .nat, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 19) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.mk [] (.construct .some [(.copy (.generated .binding 2))])) (.mk [] (.construct (.none (.pair .nat .nat)) [])))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 19) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] false)) (lk := []) (Corr.callOps (ts := [.nat, (.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.copy (.generated .binding 2))])) (lb := []) (tb := (.construct (.none (.pair .nat .nat)) [])) (Corr.build (ts := [(.pair .nat .nat)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun14 : FunOK program krate flags 14 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 122)) none (.call (.function 20) [(.clone (.generated .binding 0))] true)), (.mk (.bind (.generated .operand 123)) none (.block (.mk [(.mk (.bind (.generated .operand 120)) none (.call (.function 21) [(.clone (.generated .binding 0))] true)), (.mk (.bind (.generated .operand 121)) none (.call (.function 22) [(.move (.generated .binding 0))] true))] (.call (.runtime .appendList) [(.move (.generated .operand 120)), (.move (.generated .operand 121))] false))))], (.succeed (.call (.runtime .appendList) [(.move (.generated .operand 122)), (.move (.generated .operand 123))] false)), [(0, (.adt 2), (some 0))], rfl, rfl, - (Corr.fOfB (Corr.prim (ts := [(.list (.adt 2)), (.list (.adt 2))]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 2)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 120)) none (.call (.function 21) [(.clone (.generated .binding 0))] true)), (.mk (.bind (.generated .operand 121)) none (.call (.function 22) [(.move (.generated .binding 0))] true))]) (tail := (.call (.runtime .appendList) [(.move (.generated .operand 120)), (.move (.generated .operand 121))] false)) (Corr.prim (ts := [(.list (.adt 2)), (.list (.adt 2))]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 2)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 2)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl))⟩⟩ - -theorem fun15 : FunOK program krate flags 15 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 23) [(.construct (.closure 2 24) []), (.pair (.construct (.nil (.adt 2)) []) (.move (.generated .binding 0))), (.move (.generated .binding 1))] false), [(1, (.list (.adt 2)), (some 1)), (0, (.list (.pair .nat .nat)), (some 0))], rfl, rfl, - (Corr.callOps (ts := [(.fn [(.pair (.list (.adt 2)) (.list (.pair .nat .nat))), (.adt 2)] (.pair (.list (.adt 2)) (.list (.pair .nat .nat)))), (.pair (.list (.adt 2)) (.list (.pair .nat .nat))), (.list (.adt 2))]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := false) (ff := false) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun16 : FunOK program krate flags 16 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 127)) none (.block (.mk [(.mk (.bind (.generated .operand 124)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthList) [(.move (.generated .operand 124))] false)))), (.mk (.bind (.generated .operand 128)) none (.block (.mk [(.mk (.bind (.generated .operand 125)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 126)) none (.copy (.generated .binding 0)))] (.call (.runtime .natAdd) [(.move (.generated .operand 125)), (.move (.generated .operand 126))] true))))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 127)), (.move (.generated .operand 128))] false) (.mk [(.mk (.bind (.generated .operand 129)) none (.move (.generated .binding 1))), (.mk (.bind (.generated .operand 130)) none (.construct .cons [(.move (.generated .binding 2)), (.construct (.nil (.adt 2)) [])]))] (.succeed (.call (.runtime .appendList) [(.move (.generated .operand 129)), (.move (.generated .operand 130))] false))) (.mk [] (.succeed (.move (.generated .binding 1))))), [(2, (.adt 2), (some 2)), (1, (.list (.adt 2)), (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 127)) none (.block (.mk [(.mk (.bind (.generated .operand 124)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthList) [(.move (.generated .operand 124))] false)))), (.mk (.bind (.generated .operand 128)) none (.block (.mk [(.mk (.bind (.generated .operand 125)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 126)) none (.copy (.generated .binding 0)))] (.call (.runtime .natAdd) [(.move (.generated .operand 125)), (.move (.generated .operand 126))] true))))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 127)), (.move (.generated .operand 128))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 124)) none (.clone (.generated .binding 1)))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 124))] false)) (Corr.prim (ts := [(.list (.adt 2))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 125)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 126)) none (.copy (.generated .binding 0)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 125)), (.move (.generated .operand 126))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 129)) none (.move (.generated .binding 1))), (.mk (.bind (.generated .operand 130)) none (.construct .cons [(.move (.generated .binding 2)), (.construct (.nil (.adt 2)) [])]))]) (ta := (.succeed (.call (.runtime .appendList) [(.move (.generated .operand 129)), (.move (.generated .operand 130))] false))) (lb := []) (tb := (.succeed (.move (.generated .binding 1)))) (Corr.fOfB (Corr.prim (ts := [(.list (.adt 2)), (.list (.adt 2))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [(.adt 2), (.list (.adt 2))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))))⟩⟩ - -theorem fun17 : FunOK program krate flags 17 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 134)) none (.lit (.nat 1))), (.mk (.bind (.generated .operand 135)) none (.block (.mk [(.mk (.bind (.generated .operand 132)) none (.lit (.nat 1))), (.mk (.bind (.generated .operand 133)) none (.block (.mk [(.mk (.bind (.generated .operand 131)) none (.call (.function 25) [(.copy (.generated .binding 0))] false))] (.call (.runtime .lengthList) [(.move (.generated .operand 131))] false))))] (.call (.runtime .natAdd) [(.move (.generated .operand 132)), (.move (.generated .operand 133))] true))))], (.call (.runtime .natAdd) [(.move (.generated .operand 134)), (.move (.generated .operand 135))] false), [(0, (.pair .nat .nat), (some 0))], rfl, rfl, - (Corr.primF (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 132)) none (.lit (.nat 1))), (.mk (.bind (.generated .operand 133)) none (.block (.mk [(.mk (.bind (.generated .operand 131)) none (.call (.function 25) [(.copy (.generated .binding 0))] false))] (.call (.runtime .lengthList) [(.move (.generated .operand 131))] false))))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 132)), (.move (.generated .operand 133))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 131)) none (.call (.function 25) [(.copy (.generated .binding 0))] false))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 131))] false)) (Corr.prim (ts := [(.list .nat)]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun18 : FunOK program krate flags 18 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct .some [(.copy (.generated .binding 0))]), [(0, (.pair .nat .nat), (some 0))], rfl, rfl, - (Corr.build (ts := [(.pair .nat .nat)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)⟩⟩ - -theorem fun19 : FunOK program krate flags 19 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 137)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 136))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 136))))), (.mk (.bind (.generated .operand 138)) none (.copy (.generated .binding 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 137)), (.move (.generated .operand 138))] false) (.mk [(.mk (.bind (.generated .operand 140)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 139)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 139))))), (.mk (.bind (.generated .operand 141)) none (.lit (.nat 4)))] (.call (.runtime .natLe) [(.move (.generated .operand 140)), (.move (.generated .operand 141))] false)) (.mk [] (.lit (.bool false)))), [(1, (.pair .nat .nat), (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 137)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 136))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 136))))), (.mk (.bind (.generated .operand 138)) none (.copy (.generated .binding 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 137)), (.move (.generated .operand 138))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 136))]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 136))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 140)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 139)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 139))))), (.mk (.bind (.generated .operand 141)) none (.lit (.nat 4)))]) (ta := (.call (.runtime .natLe) [(.move (.generated .operand 140)), (.move (.generated .operand 141))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 139)), .wild]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 139))) (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ - -theorem fun20 : FunOK program krate flags 20 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 143)) none (.call (.function 26) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [(.bind (.generated .part 142)), .wild]) (.mk [] (.move (.generated .part 142))))]), (.construct (.adt 0 0) [])] true))], (.matchOn (.move (.generated .holder 143)) [(.mk .none (.mk [] (.succeed (.construct (.nil (.adt 2)) [])))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.succeed (.construct .cons [(.construct (.adt 2 0) [(.copy (.generated .binding 1)), (.block (.mk [(.mk (.bind (.generated .operand 145)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 144))]) (.mk [] (.move (.generated .part 144))))])), (.mk (.bind (.generated .operand 146)) none (.construct .cons [(.construct (.adt 0 0) []), (.construct (.nil (.adt 0)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 145)), (.move (.generated .operand 146))] false)))]), (.construct (.nil (.adt 2)) [])]))))]), [(0, (.adt 2), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option (.pair .nat .nat))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat), (.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.pair .nat .nat), (.list (.adt 0))]) (rd := (.move (.generated .part 142))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(0, (.adt 2), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct (.nil (.adt 2)) []))) (Corr.mCons (Γ' := [(1, (.pair .nat .nat), (some 1)), (0, (.adt 2), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.construct .cons [(.construct (.adt 2 0) [(.copy (.generated .binding 1)), (.block (.mk [(.mk (.bind (.generated .operand 145)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 144))]) (.mk [] (.move (.generated .part 144))))])), (.mk (.bind (.generated .operand 146)) none (.construct .cons [(.construct (.adt 0 0) []), (.construct (.nil (.adt 0)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 145)), (.move (.generated .operand 146))] false)))]), (.construct (.nil (.adt 2)) [])]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.adt 2), (.list (.adt 2))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.pair .nat .nat), (.list (.adt 0))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 145)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 144))]) (.mk [] (.move (.generated .part 144))))])), (.mk (.bind (.generated .operand 146)) none (.construct .cons [(.construct (.adt 0 0) []), (.construct (.nil (.adt 0)) [])]))]) (tail := (.call (.runtime .appendList) [(.move (.generated .operand 145)), (.move (.generated .operand 146))] false)) (Corr.prim (ts := [(.list (.adt 0)), (.list (.adt 0))]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.pair .nat .nat), (.list (.adt 0))]) (rd := (.move (.generated .part 144))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [(.adt 0), (.list (.adt 0))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl))) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl)⟩⟩ - -theorem fun21 : FunOK program krate flags 21 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 148)) none (.call (.function 26) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [(.bind (.generated .part 147)), .wild]) (.mk [] (.move (.generated .part 147))))]), (.construct (.adt 0 1) [])] true))], (.matchOn (.move (.generated .holder 148)) [(.mk .none (.mk [] (.succeed (.construct (.nil (.adt 2)) [])))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.succeed (.construct .cons [(.construct (.adt 2 0) [(.copy (.generated .binding 1)), (.block (.mk [(.mk (.bind (.generated .operand 150)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 149))]) (.mk [] (.move (.generated .part 149))))])), (.mk (.bind (.generated .operand 151)) none (.construct .cons [(.construct (.adt 0 1) []), (.construct (.nil (.adt 0)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 150)), (.move (.generated .operand 151))] false)))]), (.construct (.nil (.adt 2)) [])]))))]), [(0, (.adt 2), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option (.pair .nat .nat))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat), (.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.pair .nat .nat), (.list (.adt 0))]) (rd := (.move (.generated .part 147))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(0, (.adt 2), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct (.nil (.adt 2)) []))) (Corr.mCons (Γ' := [(1, (.pair .nat .nat), (some 1)), (0, (.adt 2), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.construct .cons [(.construct (.adt 2 0) [(.copy (.generated .binding 1)), (.block (.mk [(.mk (.bind (.generated .operand 150)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 149))]) (.mk [] (.move (.generated .part 149))))])), (.mk (.bind (.generated .operand 151)) none (.construct .cons [(.construct (.adt 0 1) []), (.construct (.nil (.adt 0)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 150)), (.move (.generated .operand 151))] false)))]), (.construct (.nil (.adt 2)) [])]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.adt 2), (.list (.adt 2))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.pair .nat .nat), (.list (.adt 0))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 150)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 149))]) (.mk [] (.move (.generated .part 149))))])), (.mk (.bind (.generated .operand 151)) none (.construct .cons [(.construct (.adt 0 1) []), (.construct (.nil (.adt 0)) [])]))]) (tail := (.call (.runtime .appendList) [(.move (.generated .operand 150)), (.move (.generated .operand 151))] false)) (Corr.prim (ts := [(.list (.adt 0)), (.list (.adt 0))]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.pair .nat .nat), (.list (.adt 0))]) (rd := (.move (.generated .part 149))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [(.adt 0), (.list (.adt 0))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl))) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl)⟩⟩ - -theorem fun22 : FunOK program krate flags 22 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 27) [(.construct (.closure 3 28) [(.clone (.generated .binding 0))]), (.construct (.nil (.adt 2)) []), (.call (.function 25) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [(.bind (.generated .part 152)), .wild]) (.mk [] (.move (.generated .part 152))))])] false)] false), [(0, (.adt 2), (some 0))], rfl, rfl, - (Corr.callF (ts := [(.fn [(.list (.adt 2)), .nat] (.list (.adt 2))), (.list (.adt 2)), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [(.adt 2)]) (mask := [false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.pair .nat .nat), (.list (.adt 0))]) (rd := (.move (.generated .part 152))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl)⟩⟩ - -theorem fun23 : FunOK program krate flags 23 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 153)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 153)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 23) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 154)) (some (.fn 2)) (.move (.generated .binding 0)))] (.apply (.generated .callee 154) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]), [(2, (.list (.adt 2)), (some 2)), (1, (.pair (.list (.adt 2)) (.list (.pair .nat .nat))), (some 1)), (0, (.fn [(.pair (.list (.adt 2)) (.list (.pair .nat .nat))), (.adt 2)] (.pair (.list (.adt 2)) (.list (.pair .nat .nat)))), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.adt 2))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.adt 2)), (some 2)), (1, (.pair (.list (.adt 2)) (.list (.pair .nat .nat))), (some 1)), (0, (.fn [(.pair (.list (.adt 2)) (.list (.pair .nat .nat))), (.adt 2)] (.pair (.list (.adt 2)) (.list (.pair .nat .nat)))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 1))) (Corr.mCons (Γ' := [(4, (.list (.adt 2)), (some 4)), (3, (.adt 2), (some 3)), (2, (.list (.adt 2)), (some 2)), (1, (.pair (.list (.adt 2)) (.list (.pair .nat .nat))), (some 1)), (0, (.fn [(.pair (.list (.adt 2)) (.list (.pair .nat .nat))), (.adt 2)] (.pair (.list (.adt 2)) (.list (.pair .nat .nat)))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 23) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 154)) (some (.fn 2)) (.move (.generated .binding 0)))] (.apply (.generated .callee 154) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.fn [(.pair (.list (.adt 2)) (.list (.pair .nat .nat))), (.adt 2)] (.pair (.list (.adt 2)) (.list (.pair .nat .nat)))), (.pair (.list (.adt 2)) (.list (.pair .nat .nat))), (.list (.adt 2))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 154)) (some (.fn 2)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 154) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false)) (Corr.apply (ps := [(.pair (.list (.adt 2)) (.list (.pair .nat .nat))), (.adt 2)]) (af := false) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ - -theorem fun24 : FunOK program krate flags 24 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 29) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 155))]) none (.clone (.generated .binding 0)))] (.move (.generated .part 155)))), (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 2 0 [(.bind (.generated .part 156)), .wild]) (.mk [] (.move (.generated .part 156))))])] false) (.mk [] (.move (.generated .binding 0))) (.mk [] (.pair (.block (.mk [(.mk (.bind (.generated .operand 158)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 157)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 157))))), (.mk (.bind (.generated .operand 159)) none (.construct .cons [(.clone (.generated .binding 1)), (.construct (.nil (.adt 2)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 158)), (.move (.generated .operand 159))] false))) (.call (.function 12) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 160))]) none (.move (.generated .binding 0)))] (.move (.generated .part 160)))), (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 2 0 [(.bind (.generated .part 161)), .wild]) (.mk [] (.move (.generated .part 161))))])] false)))), [(1, (.adt 2), (some 1)), (0, (.pair (.list (.adt 2)) (.list (.pair .nat .nat))), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 29) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 155))]) none (.clone (.generated .binding 0)))] (.move (.generated .part 155)))), (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 2 0 [(.bind (.generated .part 156)), .wild]) (.mk [] (.move (.generated .part 156))))])] false)) (lk := []) (Corr.callOps (ts := [(.list (.pair .nat .nat)), (.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 155))]) none (.clone (.generated .binding 0)))]) (tail := (.move (.generated .part 155))) (Corr.second (ta := (.list (.adt 2))) (tb := (.list (.pair .nat .nat))) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.pair .nat .nat), (.list (.adt 0))]) (rd := (.move (.generated .part 156))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.move (.generated .binding 0))) (lb := []) (tb := (.pair (.block (.mk [(.mk (.bind (.generated .operand 158)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 157)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 157))))), (.mk (.bind (.generated .operand 159)) none (.construct .cons [(.clone (.generated .binding 1)), (.construct (.nil (.adt 2)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 158)), (.move (.generated .operand 159))] false))) (.call (.function 12) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 160))]) none (.move (.generated .binding 0)))] (.move (.generated .part 160)))), (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 2 0 [(.bind (.generated .part 161)), .wild]) (.mk [] (.move (.generated .part 161))))])] false))) (Corr.bOfE (Corr.var rfl rfl)) (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 158)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 157)), .wild]) none (.move (.generated .binding 0)))] (.move (.generated .part 157))))), (.mk (.bind (.generated .operand 159)) none (.construct .cons [(.clone (.generated .binding 1)), (.construct (.nil (.adt 2)) [])]))]) (tail := (.call (.runtime .appendList) [(.move (.generated .operand 158)), (.move (.generated .operand 159))] false)) (Corr.prim (ts := [(.list (.adt 2)), (.list (.adt 2))]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 157)), .wild]) none (.move (.generated .binding 0)))]) (tail := (.move (.generated .part 157))) (Corr.first (ta := (.list (.adt 2))) (tb := (.list (.pair .nat .nat))) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [(.adt 2), (.list (.adt 2))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.list (.pair .nat .nat)), (.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 160))]) none (.move (.generated .binding 0)))]) (tail := (.move (.generated .part 160))) (Corr.second (ta := (.list (.adt 2))) (tb := (.list (.pair .nat .nat))) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.pair .nat .nat), (.list (.adt 0))]) (rd := (.move (.generated .part 161))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil)))))))⟩⟩ - -theorem fun25 : FunOK program krate flags 25 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct .cons [(.lit (.nat 1)), (.construct .cons [(.lit (.nat 2)), (.construct .cons [(.lit (.nat 3)), (.construct (.nil .nat) [])])])]), [(0, (.pair .nat .nat), none)], rfl, rfl, - (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)⟩⟩ - -theorem fun26 : FunOK program krate flags 26 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 162)) none (.move (.generated .binding 1)))], (.matchOn (.move (.generated .holder 162)) [(.mk (.adt 0 0 []) (.mk [] (.succeed (.call (.function 30) [(.copy (.generated .binding 0))] false)))), (.mk (.adt 0 1 []) (.mk [] (.succeed (.call (.function 31) [(.copy (.generated .binding 0))] false)))), (.mk (.adt 0 2 [(.bind (.generated .binding 2))]) (.mk [] (.call (.function 32) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] false)))]), [(1, (.adt 0), (some 1)), (0, (.pair .nat .nat), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.adt 0)) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.adt 0), (some 1)), (0, (.pair .nat .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.call (.function 30) [(.copy (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 0), (some 1)), (0, (.pair .nat .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.call (.function 31) [(.copy (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, (.adt 0), (some 1)), (0, (.pair .nat .nat), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.call (.function 32) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.pair .nat .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl)⟩⟩ - -theorem fun27 : FunOK program krate flags 27 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 163)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 163)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 27) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 164)) (some (.fn 3)) (.move (.generated .binding 0)))] (.apply (.generated .callee 164) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]), [(2, (.list .nat), (some 2)), (1, (.list (.adt 2)), (some 1)), (0, (.fn [(.list (.adt 2)), .nat] (.list (.adt 2))), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .nat), (some 2)), (1, (.list (.adt 2)), (some 1)), (0, (.fn [(.list (.adt 2)), .nat] (.list (.adt 2))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list .nat), (some 4)), (3, .nat, (some 3)), (2, (.list .nat), (some 2)), (1, (.list (.adt 2)), (some 1)), (0, (.fn [(.list (.adt 2)), .nat] (.list (.adt 2))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 27) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 164)) (some (.fn 3)) (.move (.generated .binding 0)))] (.apply (.generated .callee 164) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.list (.adt 2)), .nat] (.list (.adt 2))), (.list (.adt 2)), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 164)) (some (.fn 3)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 164) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true)) (Corr.apply (ps := [(.list (.adt 2)), .nat]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ - -theorem fun28 : FunOK program krate flags 28 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 33) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 2))] false), [(2, .nat, (some 2)), (1, (.list (.adt 2)), (some 1)), (0, (.adt 2), (some 0))], rfl, rfl, - (Corr.callF (ts := [(.adt 2), (.list (.adt 2)), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)⟩⟩ - -theorem fun29 : FunOK program krate flags 29 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 165)) none (.move (.generated .binding 0)))], (.matchOn (.uncons (.generated .holder 165)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.tuple [(.bind (.generated .binding 2)), (.bind (.generated .binding 3))])) (.mk [(.mk (.bind (.generated .holder 168)) none (.block (.mk [(.mk (.bind (.generated .operand 166)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 167)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 166)), (.move (.generated .operand 167))] false))))] (.matchOn (.move (.generated .holder 168)) [(.mk (.ordering .less) (.mk [] (.lit (.bool false)))), (.mk (.ordering .same) (.mk [] (.lit (.bool true)))), (.mk (.ordering .more) (.mk [] (.call (.function 29) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])))]), [(1, (.pair .nat .nat), (some 1)), (0, (.list (.pair .nat .nat)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.pair .nat .nat))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.pair .nat .nat), (some 1)), (0, (.list (.pair .nat .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(3, (.list (.pair .nat .nat)), (some 3)), (2, (.pair .nat .nat), (some 2)), (1, (.pair .nat .nat), (some 1)), (0, (.list (.pair .nat .nat)), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 168)) none (.block (.mk [(.mk (.bind (.generated .operand 166)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 167)) none (.copy (.generated .binding 2)))] (.call (.runtime .compare) [(.move (.generated .operand 166)), (.move (.generated .operand 167))] false))))]) (tail := (.matchOn (.move (.generated .holder 168)) [(.mk (.ordering .less) (.mk [] (.lit (.bool false)))), (.mk (.ordering .same) (.mk [] (.lit (.bool true)))), (.mk (.ordering .more) (.mk [] (.call (.function 29) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := .ordering) (U := []) (view := false) (idx := [0, 1, 2]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 166)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 167)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .compare) [(.move (.generated .operand 166)), (.move (.generated .operand 167))] false)) (Corr.prim (ts := [(.pair .nat .nat), (.pair .nat .nat)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, (.list (.pair .nat .nat)), (some 3)), (2, (.pair .nat .nat), (some 2)), (1, (.pair .nat .nat), (some 1)), (0, (.list (.pair .nat .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(3, (.list (.pair .nat .nat)), (some 3)), (2, (.pair .nat .nat), (some 2)), (1, (.pair .nat .nat), (some 1)), (0, (.list (.pair .nat .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool true))) (Corr.mCons (Γ' := [(3, (.list (.pair .nat .nat)), (some 3)), (2, (.pair .nat .nat), (some 2)), (1, (.pair .nat .nat), (some 1)), (0, (.list (.pair .nat .nat)), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.call (.function 29) [(.move (.generated .binding 3)), (.copy (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.list (.pair .nat .nat)), (.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ - -theorem fun30 : FunOK program krate flags 30 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 34) [(.copy (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 35) [(.copy (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.pair .nat .nat)) []))), [(0, (.pair .nat .nat), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 34) [(.copy (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 35) [(.copy (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.pair .nat .nat)) [])) (Corr.build (ts := [(.pair .nat .nat)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ - -theorem fun31 : FunOK program krate flags 31 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 36) [(.copy (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 37) [(.copy (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.pair .nat .nat)) []))), [(0, (.pair .nat .nat), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 36) [(.copy (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 37) [(.copy (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.pair .nat .nat)) [])) (Corr.build (ts := [(.pair .nat .nat)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ - -theorem fun32 : FunOK program krate flags 32 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 38) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] true) (.mk [] (.succeed (.construct .some [(.call (.function 39) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] true)]))) (.mk [] (.succeed (.construct (.none (.pair .nat .nat)) [])))), [(1, .nat, (some 1)), (0, (.pair .nat .nat), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 38) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] true)) (lk := []) (Corr.callOps (ts := [(.pair .nat .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.call (.function 39) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] true)]))) (lb := []) (tb := (.succeed (.construct (.none (.pair .nat .nat)) []))) (Corr.fOfB (Corr.build (ts := [(.pair .nat .nat)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))⟩⟩ - -theorem fun33 : FunOK program krate flags 33 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 170)) none (.call (.function 26) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [(.bind (.generated .part 169)), .wild]) (.mk [] (.move (.generated .part 169))))]), (.construct (.adt 0 2) [(.copy (.generated .binding 2))])] true))], (.matchOn (.move (.generated .holder 170)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [(.mk (.bind (.generated .operand 174)) none (.move (.generated .binding 1))), (.mk (.bind (.generated .operand 175)) none (.construct .cons [(.construct (.adt 2 0) [(.copy (.generated .binding 3)), (.block (.mk [(.mk (.bind (.generated .operand 172)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 171))]) (.mk [] (.move (.generated .part 171))))])), (.mk (.bind (.generated .operand 173)) none (.construct .cons [(.construct (.adt 0 2) [(.copy (.generated .binding 2))]), (.construct (.nil (.adt 0)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 172)), (.move (.generated .operand 173))] false)))]), (.construct (.nil (.adt 2)) [])]))] (.succeed (.call (.runtime .appendList) [(.move (.generated .operand 174)), (.move (.generated .operand 175))] false))))]), [(2, .nat, (some 2)), (1, (.list (.adt 2)), (some 1)), (0, (.adt 2), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option (.pair .nat .nat))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat), (.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.pair .nat .nat), (.list (.adt 0))]) (rd := (.move (.generated .part 169))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, (.list (.adt 2)), (some 1)), (0, (.adt 2), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 1)))) (Corr.mCons (Γ' := [(3, (.pair .nat .nat), (some 3)), (2, .nat, (some 2)), (1, (.list (.adt 2)), (some 1)), (0, (.adt 2), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .operand 174)) none (.move (.generated .binding 1))), (.mk (.bind (.generated .operand 175)) none (.construct .cons [(.construct (.adt 2 0) [(.copy (.generated .binding 3)), (.block (.mk [(.mk (.bind (.generated .operand 172)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 171))]) (.mk [] (.move (.generated .part 171))))])), (.mk (.bind (.generated .operand 173)) none (.construct .cons [(.construct (.adt 0 2) [(.copy (.generated .binding 2))]), (.construct (.nil (.adt 0)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 172)), (.move (.generated .operand 173))] false)))]), (.construct (.nil (.adt 2)) [])]))]) (tail := (.succeed (.call (.runtime .appendList) [(.move (.generated .operand 174)), (.move (.generated .operand 175))] false))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.prim (ts := [(.list (.adt 2)), (.list (.adt 2))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [(.adt 2), (.list (.adt 2))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.pair .nat .nat), (.list (.adt 0))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 172)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 171))]) (.mk [] (.move (.generated .part 171))))])), (.mk (.bind (.generated .operand 173)) none (.construct .cons [(.construct (.adt 0 2) [(.copy (.generated .binding 2))]), (.construct (.nil (.adt 0)) [])]))]) (tail := (.call (.runtime .appendList) [(.move (.generated .operand 172)), (.move (.generated .operand 173))] false)) (Corr.prim (ts := [(.list (.adt 0)), (.list (.adt 0))]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.pair .nat .nat), (.list (.adt 0))]) (rd := (.move (.generated .part 171))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [(.adt 0), (.list (.adt 0))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ - -theorem fun34 : FunOK program krate flags 34 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 177)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 176)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 176))))), (.mk (.bind (.generated .operand 178)) none (.lit (.nat 4)))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 177)), (.move (.generated .operand 178))] false) (.mk [(.mk (.bind (.generated .operand 180)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 179))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 179))))), (.mk (.bind (.generated .operand 181)) none (.lit (.nat 3)))] (.call (.runtime .natLe) [(.move (.generated .operand 180)), (.move (.generated .operand 181))] false)) (.mk [] (.lit (.bool false)))), [(0, (.pair .nat .nat), (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 177)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 176)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 176))))), (.mk (.bind (.generated .operand 178)) none (.lit (.nat 4)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 177)), (.move (.generated .operand 178))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 176)), .wild]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 176))) (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 180)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 179))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 179))))), (.mk (.bind (.generated .operand 181)) none (.lit (.nat 3)))]) (ta := (.call (.runtime .natLe) [(.move (.generated .operand 180)), (.move (.generated .operand 181))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 179))]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 179))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ - -theorem fun35 : FunOK program krate flags 35 := - ⟨_, rfl, .inl ⟨_, _, [], (.pair (.lit (.nat 4)) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 182))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 182))))), [(0, (.pair .nat .nat), (some 0))], rfl, rfl, - (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 182))]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 182))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lNil)))))⟩⟩ - -theorem fun36 : FunOK program krate flags 36 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 184)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 185)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 183))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 183)))))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 184)), (.move (.generated .operand 185))] false) (.mk [(.mk (.bind (.generated .operand 187)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 186)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 186))))), (.mk (.bind (.generated .operand 188)) none (.lit (.nat 4)))] (.call (.runtime .natLe) [(.move (.generated .operand 187)), (.move (.generated .operand 188))] false)) (.mk [] (.lit (.bool false)))), [(0, (.pair .nat .nat), (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 184)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 185)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 183))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 183)))))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 184)), (.move (.generated .operand 185))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 183))]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 183))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 187)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 186)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 186))))), (.mk (.bind (.generated .operand 188)) none (.lit (.nat 4)))]) (ta := (.call (.runtime .natLe) [(.move (.generated .operand 187)), (.move (.generated .operand 188))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 186)), .wild]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 186))) (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ - -theorem fun37 : FunOK program krate flags 37 := - ⟨_, rfl, .inl ⟨_, _, [], (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 189)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 189)))) (.lit (.nat 0))), [(0, (.pair .nat .nat), (some 0))], rfl, rfl, - (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 189)), .wild]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 189))) (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))))⟩⟩ - -theorem fun38 : FunOK program krate flags 38 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 191)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 192)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 190)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 190)))))], (.cond (.call (.runtime .natLe) [(.move (.generated .operand 191)), (.move (.generated .operand 192))] false) (.mk [(.mk (.bind (.generated .operand 196)) none (.block (.mk [(.mk (.bind (.generated .operand 194)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 193))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 193))))), (.mk (.bind (.generated .operand 195)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 194)), (.move (.generated .operand 195))] true)))), (.mk (.bind (.generated .operand 197)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natLe) [(.move (.generated .operand 196)), (.move (.generated .operand 197))] false) (.mk [(.mk (.bind (.generated .operand 199)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 198)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 198))))), (.mk (.bind (.generated .operand 200)) none (.lit (.nat 4)))] (.succeed (.call (.runtime .natLe) [(.move (.generated .operand 199)), (.move (.generated .operand 200))] false))) (.mk [] (.succeed (.lit (.bool false)))))) (.mk [] (.succeed (.lit (.bool false))))), [(1, .nat, (some 1)), (0, (.pair .nat .nat), (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 191)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 192)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 190)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 190)))))]) (ce := (.call (.runtime .natLe) [(.move (.generated .operand 191)), (.move (.generated .operand 192))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 190)), .wild]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 190))) (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 196)) none (.block (.mk [(.mk (.bind (.generated .operand 194)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 193))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 193))))), (.mk (.bind (.generated .operand 195)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 194)), (.move (.generated .operand 195))] true)))), (.mk (.bind (.generated .operand 197)) none (.lit (.nat 3)))]) (ta := (.cond (.call (.runtime .natLe) [(.move (.generated .operand 196)), (.move (.generated .operand 197))] false) (.mk [(.mk (.bind (.generated .operand 199)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 198)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 198))))), (.mk (.bind (.generated .operand 200)) none (.lit (.nat 4)))] (.succeed (.call (.runtime .natLe) [(.move (.generated .operand 199)), (.move (.generated .operand 200))] false))) (.mk [] (.succeed (.lit (.bool false)))))) (lb := []) (tb := (.succeed (.lit (.bool false)))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 196)) none (.block (.mk [(.mk (.bind (.generated .operand 194)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 193))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 193))))), (.mk (.bind (.generated .operand 195)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 194)), (.move (.generated .operand 195))] true)))), (.mk (.bind (.generated .operand 197)) none (.lit (.nat 3)))]) (ce := (.call (.runtime .natLe) [(.move (.generated .operand 196)), (.move (.generated .operand 197))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 194)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 193))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 193))))), (.mk (.bind (.generated .operand 195)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 194)), (.move (.generated .operand 195))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 193))]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 193))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 199)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 198)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 198))))), (.mk (.bind (.generated .operand 200)) none (.lit (.nat 4)))]) (ta := (.succeed (.call (.runtime .natLe) [(.move (.generated .operand 199)), (.move (.generated .operand 200))] false))) (lb := []) (tb := (.succeed (.lit (.bool false)))) (Corr.fOfB (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 198)), .wild]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 198))) (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.fOfB (Corr.bOfE (Corr.buildConst rfl))))) (Corr.fOfB (Corr.bOfE (Corr.buildConst rfl)))))⟩⟩ - -theorem fun39 : FunOK program krate flags 39 := - ⟨_, rfl, .inl ⟨_, _, [], (.succeed (.pair (.block (.mk [(.mk (.bind (.generated .operand 202)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 201)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 201))))), (.mk (.bind (.generated .operand 203)) none (.copy (.generated .binding 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 202)), (.move (.generated .operand 203))] false))) (.block (.mk [(.mk (.bind (.generated .operand 205)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 204))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 204))))), (.mk (.bind (.generated .operand 206)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 205)), (.move (.generated .operand 206))] true))))), [(1, .nat, (some 1)), (0, (.pair .nat .nat), (some 0))], rfl, rfl, - (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 202)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 201)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 201))))), (.mk (.bind (.generated .operand 203)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 202)), (.move (.generated .operand 203))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 201)), .wild]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 201))) (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 205)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 204))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 204))))), (.mk (.bind (.generated .operand 206)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 205)), (.move (.generated .operand 206))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 204))]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 204))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | 3 => exact fun3 - | 4 => exact fun4 - | 5 => exact fun5 - | 6 => exact fun6 - | 7 => exact fun7 - | 8 => exact fun8 - | 9 => exact fun9 - | 10 => exact fun10 - | 11 => exact fun11 - | 12 => exact fun12 - | 13 => exact fun13 - | 14 => exact fun14 - | 15 => exact fun15 - | 16 => exact fun16 - | 17 => exact fun17 - | 18 => exact fun18 - | 19 => exact fun19 - | 20 => exact fun20 - | 21 => exact fun21 - | 22 => exact fun22 - | 23 => exact fun23 - | 24 => exact fun24 - | 25 => exact fun25 - | 26 => exact fun26 - | 27 => exact fun27 - | 28 => exact fun28 - | 29 => exact fun29 - | 30 => exact fun30 - | 31 => exact fun31 - | 32 => exact fun32 - | 33 => exact fun33 - | 34 => exact fun34 - | 35 => exact fun35 - | 36 => exact fun36 - | 37 => exact fun37 - | 38 => exact fun38 - | 39 => exact fun39 - | _ + 40 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.RustStd diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R4.lean b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R4.lean deleted file mode 100644 index 46fae9ac5..000000000 --- a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R4.lean +++ /dev/null @@ -1,142 +0,0 @@ -import LexLeanPreservation.Core -import LexLeanPreservation.Values -import LexLeanPreservation.Primitives -import LexLeanPreservation.Fixed -import LexLeanPreservation.Keys -import LexLeanPreservation.Templates -import LexLeanPreservation.Validate -import Reasoning.Budget -import Reasoning.Clinic -import Reasoning.Main -import Reasoning.Planner -import Reasoning.Screening -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -set_option linter.unusedVariables false -namespace LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4 - -def __prog : _root_.LexLeanTarget.TargetSyntax.Program := - { adts := [{ constructors := [[(.option .nat), .bool, (.adt 1)]] }, - { constructors := [[.nat, .nat, .nat, .nat, .nat, .nat]] }], functions := [ - { parameters := [0], types := [.nat], result := .nat, - body := (.«match» .nat (.call 1 [(.var 0)]) [(.arm .ok [1] (.var 1)), (.arm .error [2] (.value .nat (.nat 9)))]) }, - { parameters := [0], types := [.nat], result := (.result .nat (.pair .bool .bool)), - body := (.«let» 1 (.adt 0) (.call 2 [(.var 0)]) (.«match» (.result .nat (.pair .bool .bool)) (.field (.var 1) 0) [(.arm .some [2] (.build .ok (.result .nat (.pair .bool .bool)) [(.var 2)])), (.arm .none [] (.build .error (.result .nat (.pair .bool .bool)) [(.call 3 [(.var 1)])]))])) }, - { parameters := [0], types := [.nat], result := (.adt 0), - body := (.call 4 [(.closure 5 [(.var 0)]), (.build (.adt 0) (.adt 0) [(.build .none (.option .nat) []), (.build .false .bool []), (.build (.adt 0) (.adt 1) [(.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0))])]), (.call 6 [(.var 0)])]) }, - { parameters := [0], types := [(.adt 0)], result := (.pair .bool .bool), - body := (.«match» (.pair .bool .bool) (.field (.var 0) 1) [(.arm .true [] (.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])), (.arm .false [] (.«match» (.pair .bool .bool) (.prim .natEq [(.field (.field (.var 0) 2) 4), (.value .nat (.nat 0))]) [(.arm .true [] (.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])])), (.arm .false [] (.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])]))]))]) }, - { parameters := [0, 1, 2], types := [(.fn [(.adt 0), .nat] (.adt 0)), (.adt 0), (.list .nat)], result := (.adt 0), - body := (.«match» (.adt 0) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 4 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, - { parameters := [0, 1, 2], types := [.nat, (.adt 0), .nat], result := (.adt 0), - body := (.call 7 [(.var 0), (.var 1), (.var 2)]) }, - { parameters := [0], types := [.nat], result := (.list .nat), - body := (.«match» (.list .nat) (.«let» 1 .nat (.var 0) (.«let» 2 (.list .nat) (.call 8 [(.var 1)]) (.cond (.call 9 [(.var 1), (.var 2)]) (.build .ok (.result (.list .nat) (.pair .bool .bool)) [(.var 2)]) (.build .error (.result (.list .nat) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])])])))) [(.arm .ok [3] (.var 3)), (.arm .error [4] (.build .nil (.list .nat) []))]) }, - { parameters := [0, 1, 2], types := [.nat, (.adt 0), .nat], result := (.adt 0), - body := (.«match» (.adt 0) (.field (.var 1) 0) [(.arm .some [3] (.var 1)), (.arm .none [] (.«match» (.adt 0) (.prim .natLt [(.field (.field (.var 1) 2) 4), (.value .nat (.nat 3))]) [(.arm .true [] (.build (.adt 0) (.adt 0) [(.call 10 [(.var 0), (.var 2)]), (.field (.var 1) 1), (.build (.adt 0) (.adt 1) [(.prim .natAdd [(.field (.field (.var 1) 2) 0), (.value .nat (.nat 1))]), (.prim .natAdd [(.field (.field (.var 1) 2) 1), (.value .nat (.nat 1))]), (.field (.field (.var 1) 2) 2), (.field (.field (.var 1) 2) 3), (.prim .natAdd [(.field (.field (.var 1) 2) 4), (.value .nat (.nat 1))]), (.field (.field (.var 1) 2) 5)])])), (.arm .false [] (.build (.adt 0) (.adt 0) [(.build .none (.option .nat) []), (.build .true .bool []), (.field (.var 1) 2)]))]))]) }, - { parameters := [0], types := [.nat], result := (.list .nat), - body := (.call 11 [(.var 0)]) }, - { parameters := [0, 1], types := [.nat, (.list .nat)], result := .bool, - body := (.prim .natLe [(.prim .length [(.var 1)]), (.value .nat (.nat 4))]) }, - { parameters := [0, 1], types := [.nat, .nat], result := (.option .nat), - body := (.cond (.call 12 [(.var 0), (.var 1)]) (.build .some (.option .nat) [(.var 1)]) (.build .none (.option .nat) [])) }, - { parameters := [0], types := [.nat], result := (.list .nat), - body := (.build .cons (.list .nat) [(.prim .natSub [(.var 0), (.value .nat (.nat 10))]), (.build .cons (.list .nat) [(.prim .natSub [(.var 0), (.value .nat (.nat 20))]), (.build .cons (.list .nat) [(.prim .natSub [(.var 0), (.value .nat (.nat 30))]), (.build .cons (.list .nat) [(.prim .natSub [(.var 0), (.value .nat (.nat 50))]), (.build .nil (.list .nat) [])])])])]) }, - { parameters := [0, 1], types := [.nat, .nat], result := .bool, - body := (.prim .natLe [(.prim .natAdd [(.var 1), (.var 1)]), (.var 0)]) }] } - -def __enc_1 (__s : (Reasoning.Screening.Dose.Ledger)) : _root_.LexLeanTarget.TargetSyntax.Value := - _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).iterations), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).attempts), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).firings), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).expansions), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).verifications), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).frontier)] - -def __enc_0 (__s : (Reasoning.Screening.Dose.Trial)) : _root_.LexLeanTarget.TargetSyntax.Value := - _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (__s).found), (_root_.LexLeanTarget.TargetSyntax.Value.bool (__s).truncated), (__enc_1 (__s).ledger)] - -def __fits_12 (w : Nat) (r : Nat) : Bool := - ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (r + r) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_12 (w : Nat) (r : Nat) : _root_.LexLeanPreservation.FunRel __prog 12 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w), (_root_.LexLeanTarget.TargetSyntax.Value.nat r)] (_root_.LexLeanPreservation.Rel (__fits_12 w r) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Screening.safeCheck w r))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd r r)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe (r + r) w)) - -def __fits_10 (w : Nat) (_yc : Nat) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && (__fits_12 (w) (_yc))) && (if (Reasoning.Screening.safeCheck (w) (_yc)) then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Screening.safeCheck in -theorem __rel_10 (w : Nat) (_yc : Nat) : _root_.LexLeanPreservation.FunRel __prog 10 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w), (_root_.LexLeanTarget.TargetSyntax.Value.nat _yc)] (_root_.LexLeanPreservation.Rel (__fits_10 w _yc) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Screening.Dose.verify w _yc))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Option.some (_yc) : (Option Nat)) else (Option.none : (Option Nat)))) (Reasoning.Screening.safeCheck (w) (_yc)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_12 (w) (_yc))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_7 (w : Nat) (_yt : (Reasoning.Screening.Dose.Trial)) (_yc : Nat) : Bool := - (Bool.true && (match (_yt).found with | Option.some _yhit => Bool.true | Option.none => (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (match (Nat.blt ((_yt).ledger).verifications (3 : Nat)) with | Bool.true => ((((Bool.true && (Bool.true && Bool.true)) && (__fits_10 (w) (_yc))) && (Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yt).ledger).iterations + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yt).ledger).attempts + (1 : Nat)) 18446744073709551616)) && (Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yt).ledger).verifications + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true)))))) && Bool.true) && Bool.true))) && Bool.true) | Bool.false => (((Bool.true && Bool.true) && ((Bool.true && Bool.true) && (Bool.true && Bool.true))) && Bool.true))))) - -attribute [local irreducible] Reasoning.Screening.Dose.verify in -theorem __rel_7 (w : Nat) (_yt : (Reasoning.Screening.Dose.Trial)) (_yc : Nat) : _root_.LexLeanPreservation.FunRel __prog 7 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w), (__enc_0 _yt), (_root_.LexLeanTarget.TargetSyntax.Value.nat _yc)] (_root_.LexLeanPreservation.Rel (__fits_7 w _yt _yc) (__enc_0 (Reasoning.Screening.Dose.«try» w _yt _yc))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Option Nat)) => (match __a with | Option.some _yhit => Bool.true | Option.none => (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (match (Nat.blt ((_yt).ledger).verifications (3 : Nat)) with | Bool.true => ((((Bool.true && (Bool.true && Bool.true)) && (__fits_10 (w) (_yc))) && (Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yt).ledger).iterations + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yt).ledger).attempts + (1 : Nat)) 18446744073709551616)) && (Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yt).ledger).verifications + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true)))))) && Bool.true) && Bool.true))) && Bool.true) | Bool.false => (((Bool.true && Bool.true) && ((Bool.true && Bool.true) && (Bool.true && Bool.true))) && Bool.true))))) (fun (__a : (Option Nat)) => __enc_0 (match __a with | Option.some _yhit => _yt | Option.none => (match (Nat.blt ((_yt).ledger).verifications (3 : Nat)) with | Bool.true => ({ found := (Reasoning.Screening.Dose.verify (w) (_yc)), truncated := (_yt).truncated, ledger := ({ iterations := (((_yt).ledger).iterations + (1 : Nat)), attempts := (((_yt).ledger).attempts + (1 : Nat)), firings := ((_yt).ledger).firings, expansions := ((_yt).ledger).expansions, verifications := (((_yt).ledger).verifications + (1 : Nat)), frontier := ((_yt).ledger).frontier } : (Reasoning.Screening.Dose.Ledger)) } : (Reasoning.Screening.Dose.Trial)) | Bool.false => ({ found := (Option.none : (Option Nat)), truncated := Bool.true, ledger := (_yt).ledger } : (Reasoning.Screening.Dose.Trial))))) (_yt).found (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (fun (__a : (Option Nat)) _ => match __a with | Option.some _yhit => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV _root_.LexLeanTarget.TargetSyntax.Value.bool (fun (__a : Bool) => (match __a with | Bool.true => ((((Bool.true && (Bool.true && Bool.true)) && (__fits_10 (w) (_yc))) && (Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yt).ledger).iterations + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yt).ledger).attempts + (1 : Nat)) 18446744073709551616)) && (Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yt).ledger).verifications + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true)))))) && Bool.true) && Bool.true))) && Bool.true) | Bool.false => (((Bool.true && Bool.true) && ((Bool.true && Bool.true) && (Bool.true && Bool.true))) && Bool.true))) (fun (__a : Bool) => __enc_0 (match __a with | Bool.true => ({ found := (Reasoning.Screening.Dose.verify (w) (_yc)), truncated := (_yt).truncated, ledger := ({ iterations := (((_yt).ledger).iterations + (1 : Nat)), attempts := (((_yt).ledger).attempts + (1 : Nat)), firings := ((_yt).ledger).firings, expansions := ((_yt).ledger).expansions, verifications := (((_yt).ledger).verifications + (1 : Nat)), frontier := ((_yt).ledger).frontier } : (Reasoning.Screening.Dose.Ledger)) } : (Reasoning.Screening.Dose.Trial)) | Bool.false => ({ found := (Option.none : (Option Nat)), truncated := Bool.true, ledger := (_yt).ledger } : (Reasoning.Screening.Dose.Trial)))) (Nat.blt ((_yt).ledger).verifications (3 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt ((_yt).ledger).verifications (3 : Nat))) (fun (__a : Bool) _ => match __a with | Bool.true => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_10 (w) (_yc))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((_yt).ledger).iterations (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((_yt).ledger).attempts (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((_yt).ledger).verifications (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) _root_.LexLeanPreservation.convL_nil)))))) _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil))) _root_.LexLeanPreservation.construct_adt)) | Bool.false => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))) _root_.LexLeanPreservation.construct_adt))))))))) - -def __fits_5 (w : Nat) (_yt : (Reasoning.Screening.Dose.Trial)) (_yc : Nat) : Bool := - ((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_7 (w) (_yt) (_yc))) - -attribute [local irreducible] Reasoning.Screening.Dose.«try» in -theorem __rel_5 (w : Nat) (_yt : (Reasoning.Screening.Dose.Trial)) (_yc : Nat) : _root_.LexLeanPreservation.FunRel __prog 5 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w), (__enc_0 _yt), (_root_.LexLeanTarget.TargetSyntax.Value.nat _yc)] (_root_.LexLeanPreservation.Rel (__fits_5 w _yt _yc) (__enc_0 ((Reasoning.Screening.Dose.«try» (w) (_yt) (_yc))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (__rel_7 (w) (_yt) (_yc))) - -def __fits_11 (w : Nat) : Bool := - ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) - -theorem __rel_11 (w : Nat) : _root_.LexLeanPreservation.FunRel __prog 11 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w)] (_root_.LexLeanPreservation.Rel (__fits_11 w) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Screening.DoseCandidates w))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub w (10 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub w (20 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub w (30 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub w (50 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) - -def __fits_8 (_yinput : Nat) : Bool := - ((Bool.true && Bool.true) && (__fits_11 (_yinput))) - -attribute [local irreducible] Reasoning.Screening.DoseCandidates in -theorem __rel_8 (_yinput : Nat) : _root_.LexLeanPreservation.FunRel __prog 8 [(_root_.LexLeanTarget.TargetSyntax.Value.nat _yinput)] (_root_.LexLeanPreservation.Rel (__fits_8 _yinput) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Screening.DoseModel _yinput))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_11 (_yinput))) - -def __fits_9 (w : Nat) (doses : (List Nat)) : Bool := - ((((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (doses) : Nat) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_9 (w : Nat) (doses : (List Nat)) : _root_.LexLeanPreservation.FunRel __prog 9 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w), ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) doses)] (_root_.LexLeanPreservation.Rel (__fits_9 w doses) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Screening.shortCheck w doses))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) doses)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe (_root_.LexLeanRuntime.length (doses) : Nat) (4 : Nat))) - -def __fits_6 (w : Nat) : Bool := - ((Bool.true && (let _ychecked1_input : Nat := w; (((Bool.true && Bool.true) && (__fits_8 (_ychecked1_input))) && (let _ychecked1_output : (List Nat) := (Reasoning.Screening.DoseModel (_ychecked1_input)); (((Bool.true && (Bool.true && Bool.true)) && (__fits_9 (_ychecked1_input) (_ychecked1_output))) && (if (Reasoning.Screening.shortCheck (_ychecked1_input) (_ychecked1_output)) then ((Bool.true && Bool.true) && Bool.true) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))))) && (match (let _ychecked1_input : Nat := w; (let _ychecked1_output : (List Nat) := (Reasoning.Screening.DoseModel (_ychecked1_input)); (if (Reasoning.Screening.shortCheck (_ychecked1_input) (_ychecked1_output)) then (Except.ok (_ychecked1_output) : (Except (Prod Bool Bool) (List Nat))) else (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (List Nat)))))) with | Except.ok proposed => Bool.true | Except.error refusal => (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Screening.DoseModel Reasoning.Screening.shortCheck in -theorem __rel_6 (w : Nat) : _root_.LexLeanPreservation.FunRel __prog 6 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w)] (_root_.LexLeanPreservation.Rel (__fits_6 w) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Screening.Dose.candidates w))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun (__a : (Except (Prod Bool Bool) (List Nat))) => (match __a with | Except.ok proposed => Bool.true | Except.error refusal => (Bool.true && Bool.true))) (fun (__a : (Except (Prod Bool Bool) (List Nat))) => (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (match __a with | Except.ok proposed => proposed | Except.error refusal => ([] : List Nat))) (let _ychecked1_input : Nat := w; (let _ychecked1_output : (List Nat) := (Reasoning.Screening.DoseModel (_ychecked1_input)); (if (Reasoning.Screening.shortCheck (_ychecked1_input) (_ychecked1_output)) then (Except.ok (_ychecked1_output) : (Except (Prod Bool Bool) (List Nat))) else (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (List Nat)))))) (let _ychecked1_input : Nat := w; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_var rfl) (let _ychecked1_output : (List Nat) := (Reasoning.Screening.DoseModel (_ychecked1_input)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_8 (_ychecked1_input))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && Bool.true) && Bool.true) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) (if __b then (Except.ok (_ychecked1_output) : (Except (Prod Bool Bool) (List Nat))) else (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (List Nat))))) (Reasoning.Screening.shortCheck (_ychecked1_input) (_ychecked1_output)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_9 (_ychecked1_input) (_ychecked1_output))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error))))) (fun (__a : (Except (Prod Bool Bool) (List Nat))) _ => match __a with | Except.ok proposed => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | Except.error refusal => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil))))) - -def __fits_2 (w : Nat) : Bool := - (((Bool.true && Bool.true) && ((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && (((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true)))))) && Bool.true) && Bool.true))) && Bool.true) && (((Bool.true && Bool.true) && (__fits_6 (w))) && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Reasoning.Screening.Dose.Trial)) (__p1 : Nat) => __fits_5 (w) __p0 __p1) ((fun (_yt : (Reasoning.Screening.Dose.Trial)) (_yc : Nat) => (Reasoning.Screening.Dose.«try» (w) (_yt) (_yc)))) (({ found := (Option.none : (Option Nat)), truncated := Bool.false, ledger := ({ iterations := (0 : Nat), attempts := (0 : Nat), firings := (0 : Nat), expansions := (0 : Nat), verifications := (0 : Nat), frontier := (0 : Nat) } : (Reasoning.Screening.Dose.Ledger)) } : (Reasoning.Screening.Dose.Trial))) ((Reasoning.Screening.Dose.candidates (w))))) - -attribute [local irreducible] Reasoning.Screening.Dose.candidates Reasoning.Screening.Dose.«try» in -theorem __rel_2 (w : Nat) : _root_.LexLeanPreservation.FunRel __prog 2 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w)] (_root_.LexLeanPreservation.Rel (__fits_2 w) (__enc_0 (Reasoning.Screening.Dose.run w))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)))))) _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil))) _root_.LexLeanPreservation.construct_adt) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_6 (w))) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.nat) (es := __enc_0) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) ((fun (_yt : (Reasoning.Screening.Dose.Trial)) (_yc : Nat) => (Reasoning.Screening.Dose.«try» (w) (_yt) (_yc)))) (fun (__p0 : (Reasoning.Screening.Dose.Trial)) (__p1 : Nat) => __fits_5 (w) __p0 __p1) 5 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w)] (fun (__p0 : (Reasoning.Screening.Dose.Trial)) (__p1 : Nat) => __rel_5 (w) __p0 __p1) (p := __prog) (fi := 4) (ta := .nat) (ts := (.adt 0)) rfl (({ found := (Option.none : (Option Nat)), truncated := Bool.false, ledger := ({ iterations := (0 : Nat), attempts := (0 : Nat), firings := (0 : Nat), expansions := (0 : Nat), verifications := (0 : Nat), frontier := (0 : Nat) } : (Reasoning.Screening.Dose.Ledger)) } : (Reasoning.Screening.Dose.Trial))) ((Reasoning.Screening.Dose.candidates (w))))) - -def __fits_3 (_yt : (Reasoning.Screening.Dose.Trial)) : Bool := - (Bool.true && (match (_yt).truncated with | Bool.true => (((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) | Bool.false => (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (match (Nat.beq ((_yt).ledger).verifications (0 : Nat)) with | Bool.true => (((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) | Bool.false => (((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true))))) - -theorem __rel_3 (_yt : (Reasoning.Screening.Dose.Trial)) : _root_.LexLeanPreservation.FunRel __prog 3 [(__enc_0 _yt)] (_root_.LexLeanPreservation.Rel (__fits_3 _yt) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (Reasoning.Screening.Dose.failure _yt))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV _root_.LexLeanTarget.TargetSyntax.Value.bool (fun (__a : Bool) => (match __a with | Bool.true => (((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) | Bool.false => (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (match (Nat.beq ((_yt).ledger).verifications (0 : Nat)) with | Bool.true => (((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) | Bool.false => (((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true))))) (fun (__a : Bool) => (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (match __a with | Bool.true => ((Bool.false, Bool.false) : (Prod Bool Bool)) | Bool.false => (match (Nat.beq ((_yt).ledger).verifications (0 : Nat)) with | Bool.true => ((Bool.false, Bool.true) : (Prod Bool Bool)) | Bool.false => ((Bool.true, Bool.false) : (Prod Bool Bool))))) (_yt).truncated (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (fun (__a : Bool) _ => match __a with | Bool.true => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair)) | Bool.false => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV _root_.LexLeanTarget.TargetSyntax.Value.bool (fun (__a : Bool) => (match __a with | Bool.true => (((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) | Bool.false => (((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true))) (fun (__a : Bool) => (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (match __a with | Bool.true => ((Bool.false, Bool.true) : (Prod Bool Bool)) | Bool.false => ((Bool.true, Bool.false) : (Prod Bool Bool)))) (Nat.beq ((_yt).ledger).verifications (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq ((_yt).ledger).verifications (0 : Nat))) (fun (__a : Bool) _ => match __a with | Bool.true => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair)) | Bool.false => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))))))))) - -def __fits_1 (w : Nat) : Bool := - (((Bool.true && Bool.true) && (__fits_2 (w))) && (let _yfinal : (Reasoning.Screening.Dose.Trial) := (Reasoning.Screening.Dose.run (w)); (Bool.true && (match (_yfinal).found with | Option.some _yv => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((Bool.true && Bool.true) && (__fits_3 (_yfinal))) && Bool.true) && Bool.true))))) - -attribute [local irreducible] Reasoning.Screening.Dose.failure Reasoning.Screening.Dose.run in -theorem __rel_1 (w : Nat) : _root_.LexLeanPreservation.FunRel __prog 1 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w)] (_root_.LexLeanPreservation.Rel (__fits_1 w) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Screening.Dose.verdict w))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (let _yfinal : (Reasoning.Screening.Dose.Trial) := (Reasoning.Screening.Dose.run (w)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_2 (w))) (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Option Nat)) => (match __a with | Option.some _yv => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((Bool.true && Bool.true) && (__fits_3 (_yfinal))) && Bool.true) && Bool.true))) (fun (__a : (Option Nat)) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (match __a with | Option.some _yv => (Except.ok (_yv) : (Except (Prod Bool Bool) Nat)) | Option.none => (Except.error ((Reasoning.Screening.Dose.failure (_yfinal))) : (Except (Prod Bool Bool) Nat)))) (_yfinal).found (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (fun (__a : (Option Nat)) _ => match __a with | Option.some _yv => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_3 (_yfinal))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)))))) - -def __fits_0 (w : Nat) : Bool := - (((Bool.true && Bool.true) && (__fits_1 (w))) && (match (Reasoning.Screening.Dose.verdict (w)) with | Except.ok dose => Bool.true | Except.error failure => Bool.true)) - -attribute [local irreducible] Reasoning.Screening.Dose.verdict in -theorem __rel_0 (w : Nat) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w)] (_root_.LexLeanPreservation.Rel (__fits_0 w) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.doseLevel w))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Except (Prod Bool Bool) Nat)) => (match __a with | Except.ok dose => Bool.true | Except.error failure => Bool.true)) (fun (__a : (Except (Prod Bool Bool) Nat)) => _root_.LexLeanTarget.TargetSyntax.Value.nat (match __a with | Except.ok dose => dose | Except.error failure => (9 : Nat))) (Reasoning.Screening.Dose.verdict (w)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_1 (w))) (fun (__a : (Except (Prod Bool Bool) Nat)) _ => match __a with | Except.ok dose => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | Except.error failure => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value)))) - -def denote (w : Nat) : _root_.LexLeanPreservation.Obs := - _root_.cond (__fits_0 w) (_root_.LexLeanPreservation.Obs.value ((_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.doseLevel w)))) _root_.LexLeanPreservation.Obs.overflow - -theorem root (w : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w)] (_root_.LexLeanPreservation.Rel (__fits_0 w) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.doseLevel w))) := - _root_.LexLeanPreservation.run_of_funRel (__rel_0 w) - -end LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4 diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R4/Compose/RustStd.lex.tex b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R4/Compose/RustStd.lex.tex deleted file mode 100644 index f617b75e0..000000000 --- a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R4/Compose/RustStd.lex.tex +++ /dev/null @@ -1,877 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4, - LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.Compose.RustStd.__wt_1 : @16 := @717 { - all: [LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.Compose.RustStd.__wt_1], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.Compose.RustStd.__wt_0 : @724 := @1108 { - all: [LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.Compose.RustStd.__wt_0], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.Compose.RustStd.root : @1754 := @1755 { - all: [LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.RustStd.program -@1 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.RustStd.krate -@2 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.RustStd.flags -@3 := Reasoning.Screening.Dose.Ledger -@4 := #0 -@5 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.__enc_1 -@6 := @5 @4 -@7 := LexLeanPreservation.Rust.WT -@8 := LexLeanTarget.TargetSyntax.Ty.adt -@9 := 1 -@10 := @8 @9 -@11 := @7 @0 -@12 := @11 @1 -@13 := @12 @2 -@16 := (__s : @3) -> @13 @6 @10 -@17 := Reasoning.Screening.Dose.Ledger.iterations -@18 := @17 @4 -@19 := Reasoning.Screening.Dose.Ledger.attempts -@20 := @19 @4 -@21 := Reasoning.Screening.Dose.Ledger.firings -@22 := @21 @4 -@23 := Reasoning.Screening.Dose.Ledger.expansions -@24 := @23 @4 -@25 := Reasoning.Screening.Dose.Ledger.verifications -@26 := @25 @4 -@27 := Reasoning.Screening.Dose.Ledger.frontier -@28 := @27 @4 -@29 := LexLeanTarget.TargetSyntax.Value.nat -@30 := @29 @18 -@31 := LexLeanTarget.TargetSyntax.Ty.nat -@32 := LexLeanTarget.TargetSyntax.Program -@33 := LexLeanPreservation.Rust.RCrate -@34 := LexLeanPreservation.Rust.Flags -@35 := Nat -@36 := #3 -@37 := @7 @36 -@38 := #2 -@39 := @37 @38 -@40 := #1 -@41 := @39 @40 -@42 := @29 @4 -@48 := {p : @32} -> {c : @33} -> {A : @34} -> (n : @35) -> @41 @42 @31 -@50 := LexLeanPreservation.Rust.wt_nat @0 -@52 := @11 @38 @40 -@57 := {c : @33} -> {A : @34} -> (n : @35) -> @52 @42 @31 -@58 := @50 @1 -@59 := @12 @40 -@63 := {A : @34} -> (n : @35) -> @59 @42 @31 -@64 := @58 @2 -@65 := @13 @42 -@66 := @65 @31 -@67 := (n : @35) -> @66 -@68 := @64 @18 -@70 := @13 @30 @31 -@71 := @29 @20 -@72 := @64 @20 -@74 := @13 @71 @31 -@75 := @29 @22 -@76 := @64 @22 -@78 := @13 @75 @31 -@79 := @29 @24 -@80 := @64 @24 -@82 := @13 @79 @31 -@83 := @29 @26 -@84 := @64 @26 -@86 := @13 @83 @31 -@87 := @29 @28 -@88 := @64 @28 -@90 := @13 @87 @31 -@91 := LexLeanTarget.TargetSyntax.Value -@92 := LexLeanTarget.TargetSyntax.Ty -@93 := List.nil.{0} -@94 := List.cons.{0} -@95 := @93 @91 -@96 := @94 @91 -@98 := @96 @87 @95 -@100 := @96 @83 @98 -@102 := @96 @79 @100 -@104 := @96 @75 @102 -@106 := @96 @71 @104 -@108 := @96 @30 @106 -@109 := @93 @92 -@110 := @94 @92 -@111 := @110 @31 -@112 := @111 @109 -@113 := @111 @112 -@114 := @111 @113 -@115 := @111 @114 -@116 := @111 @115 -@117 := @111 @116 -@118 := LexLeanPreservation.Rust.WTL -@126 := {p : @32} -> {c : @33} -> {A : @34} -> @118 @38 @40 @4 @95 @109 -@128 := LexLeanPreservation.Rust.wtl_nil @0 -@129 := @118 @0 -@135 := {c : @33} -> {A : @34} -> @129 @40 @4 @95 @109 -@136 := @128 @1 -@137 := @129 @1 -@141 := {A : @34} -> @137 @4 @95 @109 -@142 := @136 @2 -@143 := @137 @2 -@144 := @143 @95 -@145 := @144 @109 -@146 := List.{0} -@147 := @146 @91 -@148 := @146 @92 -@149 := #6 -@150 := @7 @149 -@151 := #5 -@152 := @150 @151 -@153 := #4 -@154 := @152 @153 -@156 := @154 @36 @38 -@157 := #7 -@162 := @118 @157 @149 @151 @38 @40 -@163 := #8 -@166 := @118 @163 @157 @149 -@168 := @96 @151 @36 -@169 := @166 @168 -@171 := @110 @153 @38 -@181 := {p : @32} -> - {c : @33} -> - {A : @34} -> - {v : @91} -> {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @156) -> (hs : @162) -> @169 @171 -@183 := LexLeanPreservation.Rust.wtl_cons @0 -@185 := @11 @151 @153 -@187 := @185 @36 @38 -@191 := @129 @149 @151 @38 @40 -@203 := {c : @33} -> - {A : @34} -> - {v : @91} -> - {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @187) -> (hs : @191) -> @129 @157 @149 @168 @171 -@204 := @183 @1 -@205 := @12 @153 -@207 := @205 @36 @38 -@210 := @137 @151 @38 @40 -@220 := {A : @34} -> - {v : @91} -> - {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @207) -> (hs : @210) -> @137 @149 @168 @171 -@221 := @204 @2 -@223 := @13 @36 @38 -@225 := @143 @38 @40 -@233 := {v : @91} -> - {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @223) -> (hs : @225) -> @143 @168 @171 -@234 := @221 @87 -@236 := @29 (@27 @36) -@249 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @236 @38) -> (hs : @225) -> @143 (@96 (@29 (@27 @151)) @36) @171 -@250 := @234 @31 -@252 := @29 (@27 @38) -@254 := @13 @252 @31 -@259 := @143 (@96 (@29 (@27 @153)) @36) -@260 := @111 @38 -@265 := {vs : @147} -> {ts : @148} -> (h : @254) -> (hs : @225) -> @259 @260 -@266 := @250 @95 -@268 := @29 (@27 @40) -@270 := @13 @268 @31 -@271 := @144 @40 -@273 := @96 @236 @95 -@278 := {ts : @148} -> (h : @270) -> (hs : @271) -> @143 @273 @260 -@279 := @266 @109 -@281 := @96 @252 @95 -@282 := @143 @281 -@285 := (h : @90) -> (hs : @145) -> @282 @112 -@286 := @279 @88 -@288 := @96 @268 @95 -@290 := @143 @288 @112 -@291 := (hs : @145) -> @290 -@292 := @286 @142 -@294 := @143 @98 @112 -@295 := @221 @83 -@297 := @29 (@25 @36) -@310 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @297 @38) -> (hs : @225) -> @143 (@96 (@29 (@25 @151)) @36) @171 -@311 := @295 @31 -@313 := @29 (@25 @38) -@325 := {vs : @147} -> - {ts : @148} -> (h : @13 @313 @31) -> (hs : @225) -> @143 (@96 (@29 (@25 @153)) @36) @260 -@326 := @311 @98 -@328 := @29 (@25 @40) -@330 := @13 @328 @31 -@331 := @282 @40 -@333 := @96 @297 @273 -@338 := {ts : @148} -> (h : @330) -> (hs : @331) -> @143 @333 @260 -@339 := @326 @112 -@341 := @96 @313 @281 -@342 := @143 @341 -@345 := (h : @86) -> (hs : @290) -> @342 @113 -@346 := @339 @84 -@348 := @96 @328 @288 -@350 := @143 @348 @113 -@351 := (hs : @294) -> @350 -@352 := @346 @292 -@354 := @143 @100 @113 -@355 := @221 @79 -@357 := @29 (@23 @36) -@370 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @357 @38) -> (hs : @225) -> @143 (@96 (@29 (@23 @151)) @36) @171 -@371 := @355 @31 -@373 := @29 (@23 @38) -@385 := {vs : @147} -> - {ts : @148} -> (h : @13 @373 @31) -> (hs : @225) -> @143 (@96 (@29 (@23 @153)) @36) @260 -@386 := @371 @100 -@388 := @29 (@23 @40) -@390 := @13 @388 @31 -@391 := @342 @40 -@393 := @96 @357 @333 -@398 := {ts : @148} -> (h : @390) -> (hs : @391) -> @143 @393 @260 -@399 := @386 @113 -@401 := @96 @373 @341 -@402 := @143 @401 -@405 := (h : @82) -> (hs : @350) -> @402 @114 -@406 := @399 @80 -@408 := @96 @388 @348 -@410 := @143 @408 @114 -@411 := (hs : @354) -> @410 -@412 := @406 @352 -@414 := @143 @102 @114 -@415 := @221 @75 -@417 := @29 (@21 @36) -@430 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @417 @38) -> (hs : @225) -> @143 (@96 (@29 (@21 @151)) @36) @171 -@431 := @415 @31 -@433 := @29 (@21 @38) -@445 := {vs : @147} -> - {ts : @148} -> (h : @13 @433 @31) -> (hs : @225) -> @143 (@96 (@29 (@21 @153)) @36) @260 -@446 := @431 @102 -@448 := @29 (@21 @40) -@450 := @13 @448 @31 -@451 := @402 @40 -@453 := @96 @417 @393 -@458 := {ts : @148} -> (h : @450) -> (hs : @451) -> @143 @453 @260 -@459 := @446 @114 -@461 := @96 @433 @401 -@462 := @143 @461 -@465 := (h : @78) -> (hs : @410) -> @462 @115 -@466 := @459 @76 -@468 := @96 @448 @408 -@470 := @143 @468 @115 -@471 := (hs : @414) -> @470 -@472 := @466 @412 -@474 := @143 @104 @115 -@475 := @221 @71 -@477 := @29 (@19 @36) -@490 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @477 @38) -> (hs : @225) -> @143 (@96 (@29 (@19 @151)) @36) @171 -@491 := @475 @31 -@493 := @29 (@19 @38) -@505 := {vs : @147} -> - {ts : @148} -> (h : @13 @493 @31) -> (hs : @225) -> @143 (@96 (@29 (@19 @153)) @36) @260 -@506 := @491 @104 -@508 := @29 (@19 @40) -@510 := @13 @508 @31 -@511 := @462 @40 -@513 := @96 @477 @453 -@518 := {ts : @148} -> (h : @510) -> (hs : @511) -> @143 @513 @260 -@519 := @506 @115 -@521 := @96 @493 @461 -@522 := @143 @521 -@525 := (h : @74) -> (hs : @470) -> @522 @116 -@526 := @519 @72 -@528 := @96 @508 @468 -@530 := @143 @528 @116 -@531 := (hs : @474) -> @530 -@532 := @526 @472 -@534 := @143 @106 @116 -@535 := @221 @30 -@537 := @29 (@17 @36) -@550 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @537 @38) -> (hs : @225) -> @143 (@96 (@29 (@17 @151)) @36) @171 -@551 := @535 @31 -@553 := @29 (@17 @38) -@565 := {vs : @147} -> - {ts : @148} -> (h : @13 @553 @31) -> (hs : @225) -> @143 (@96 (@29 (@17 @153)) @36) @260 -@566 := @551 @106 -@568 := @29 (@17 @40) -@570 := @13 @568 @31 -@571 := @522 @40 -@573 := @96 @537 @513 -@578 := {ts : @148} -> (h : @570) -> (hs : @571) -> @143 @573 @260 -@579 := @566 @116 -@581 := @96 @553 @521 -@582 := @143 @581 -@585 := (h : @70) -> (hs : @530) -> @582 @117 -@586 := @579 @68 -@588 := @96 @568 @528 -@590 := @143 @588 @117 -@591 := (hs : @534) -> @590 -@592 := @586 @532 -@594 := @143 @108 @117 -@595 := 0 -@596 := Eq.{1} -@597 := Option.{0} -@598 := @597 @148 -@599 := @596 @598 -@600 := LexLeanPreservation.Rust.adtFields -@604 := @599 (@600 @149 @36 @38) -@605 := Option.some.{0} -@606 := @605 @148 -@607 := @606 @4 -@608 := @604 @607 -@611 := @7 @163 @157 @149 -@612 := LexLeanTarget.TargetSyntax.Value.adt -@614 := @612 @153 @36 -@615 := @611 @614 -@616 := @8 @151 -@626 := {p : @32} -> - {c : @33} -> - {A : @34} -> - {i : @35} -> {k : @35} -> {fs : @147} -> {tys : @148} -> (h : @608) -> (hf : @162) -> @615 @616 -@628 := LexLeanPreservation.Rust.wt_adt @0 -@629 := @600 @0 -@633 := @599 (@629 @36 @38) @607 -@645 := {c : @33} -> - {A : @34} -> - {i : @35} -> - {k : @35} -> {fs : @147} -> {tys : @148} -> (h : @633) -> (hf : @191) -> @11 @157 @149 @614 @616 -@646 := @628 @1 -@656 := {A : @34} -> - {i : @35} -> - {k : @35} -> {fs : @147} -> {tys : @148} -> (h : @633) -> (hf : @210) -> @12 @149 @614 @616 -@657 := @646 @2 -@658 := @13 @614 -@665 := {i : @35} -> - {k : @35} -> {fs : @147} -> {tys : @148} -> (h : @633) -> (hf : @225) -> @658 @616 -@666 := @657 @9 -@667 := @629 @9 -@676 := {k : @35} -> - {fs : @147} -> {tys : @148} -> (h : @599 (@667 @38) @607) -> (hf : @225) -> @658 @10 -@677 := @666 @595 -@678 := @667 @595 -@679 := @599 @678 -@680 := @679 @607 -@681 := @612 @595 -@683 := @13 (@681 @36) -@688 := {fs : @147} -> {tys : @148} -> (h : @680) -> (hf : @225) -> @683 @10 -@689 := @677 @108 -@696 := {tys : @148} -> (h : @680) -> (hf : @582 @40) -> @13 (@681 @573) @10 -@697 := @689 @117 -@704 := (h : @679 (@606 @117)) -> (hf : @590) -> @13 (@681 @581) @10 -@705 := Eq.refl.{1} -@706 := @705 @598 -@708 := @697 (@706 @678) -@712 := (hf : @594) -> @13 (@681 @588) @10 -@713 := @708 @592 -@716 := @13 (@681 @108) @10 -@717 := fun (__s : @3) => @713 -@718 := Reasoning.Screening.Dose.Trial -@720 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.__enc_0 @4 -@721 := @8 @595 -@724 := (__s : @718) -> @13 @720 @721 -@725 := Reasoning.Screening.Dose.Trial.found -@726 := @725 @4 -@727 := Reasoning.Screening.Dose.Trial.truncated -@728 := @727 @4 -@729 := Reasoning.Screening.Dose.Trial.ledger -@730 := @729 @4 -@731 := LexLeanPreservation.encOption -@732 := @731 @35 -@733 := @732 @29 -@734 := @733 @726 -@735 := LexLeanTarget.TargetSyntax.Ty.option -@736 := @735 @31 -@738 := fun (__x : @35) => @64 @4 -@739 := Sort 1 -@740 := (a._@._internal._hyg.#0 : @4) -> @91 -@741 := @38 @4 -@744 := (x : @38) -> @154 @741 @40 -@745 := @597 @36 -@748 := @7 @157 @149 @151 -@751 := @731 @153 @36 @4 -@752 := @748 @751 -@753 := @735 @38 -@762 := {p : @32} -> - {c : @33} -> - {A : @34} -> {α : @739} -> {e : @740} -> {t : @92} -> (h : @744) -> (o : @745) -> @752 @753 -@764 := LexLeanPreservation.Rust.wt_encOption @0 -@778 := {c : @33} -> - {A : @34} -> - {α : @739} -> - {e : @740} -> - {t : @92} -> (h : (x : @38) -> @185 @741 @40) -> (o : @745) -> @11 @149 @151 @751 @753 -@779 := @764 @1 -@791 := {A : @34} -> - {α : @739} -> - {e : @740} -> {t : @92} -> (h : (x : @38) -> @205 @741 @40) -> (o : @745) -> @12 @151 @751 @753 -@792 := @779 @2 -@794 := @13 @741 @40 -@802 := {α : @739} -> - {e : @740} -> {t : @92} -> (h : (x : @38) -> @794) -> (o : @745) -> @13 @751 @753 -@803 := @792 @35 -@804 := (a._@._internal._hyg.#0 : @35) -> @91 -@805 := (x : @35) -> @794 -@806 := @597 @35 -@814 := {e : @804} -> {t : @92} -> (h : @805) -> (o : @806) -> @13 (@732 @36 @4) @753 -@815 := @803 @29 -@817 := (x : @35) -> @65 @40 -@819 := @13 (@733 @4) -@823 := {t : @92} -> (h : @817) -> (o : @806) -> @819 @753 -@824 := @815 @31 -@828 := (h : (x : @35) -> @66) -> (o : @806) -> @819 @736 -@830 := @824 @738 @726 -@832 := @13 @734 @736 -@833 := LexLeanTarget.TargetSyntax.Value.bool -@834 := @833 @728 -@835 := LexLeanTarget.TargetSyntax.Ty.bool -@836 := Bool -@837 := @833 @4 -@843 := {p : @32} -> {c : @33} -> {A : @34} -> (b : @836) -> @41 @837 @835 -@845 := LexLeanPreservation.Rust.wt_bool @0 -@850 := {c : @33} -> {A : @34} -> (b : @836) -> @52 @837 @835 -@851 := @845 @1 -@855 := {A : @34} -> (b : @836) -> @59 @837 @835 -@856 := @851 @2 -@859 := (b : @836) -> @13 @837 @835 -@860 := @856 @728 -@862 := @13 @834 @835 -@863 := @5 @730 -@865 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.Compose.RustStd.__wt_1 @730 -@867 := @96 @863 @95 -@869 := @96 @834 @867 -@871 := @96 @734 @869 -@872 := @110 @10 -@873 := @872 @109 -@874 := @110 @835 -@875 := @874 @873 -@876 := @110 @736 -@877 := @876 @875 -@878 := @221 @863 -@880 := @5 (@729 @36) -@893 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @880 @38) -> (hs : @225) -> @143 (@96 (@5 (@729 @151)) @36) @171 -@894 := @878 @10 -@896 := @5 (@729 @38) -@898 := @13 @896 @10 -@903 := @143 (@96 (@5 (@729 @153)) @36) -@904 := @872 @38 -@909 := {vs : @147} -> {ts : @148} -> (h : @898) -> (hs : @225) -> @903 @904 -@910 := @894 @95 -@912 := @5 (@729 @40) -@914 := @13 @912 @10 -@916 := @96 @880 @95 -@921 := {ts : @148} -> (h : @914) -> (hs : @271) -> @143 @916 @904 -@922 := @910 @109 -@924 := @13 @863 @10 -@926 := @96 @896 @95 -@927 := @143 @926 -@930 := (h : @924) -> (hs : @145) -> @927 @873 -@931 := @922 @865 -@933 := @96 @912 @95 -@935 := @143 @933 @873 -@936 := (hs : @145) -> @935 -@937 := @931 @142 -@939 := @143 @867 @873 -@940 := @221 @834 -@942 := @833 (@727 @36) -@955 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @942 @38) -> (hs : @225) -> @143 (@96 (@833 (@727 @151)) @36) @171 -@956 := @940 @835 -@958 := @833 (@727 @38) -@960 := @13 @958 @835 -@965 := @143 (@96 (@833 (@727 @153)) @36) -@966 := @874 @38 -@971 := {vs : @147} -> {ts : @148} -> (h : @960) -> (hs : @225) -> @965 @966 -@972 := @956 @867 -@974 := @833 (@727 @40) -@976 := @13 @974 @835 -@977 := @927 @40 -@979 := @96 @942 @916 -@984 := {ts : @148} -> (h : @976) -> (hs : @977) -> @143 @979 @966 -@985 := @972 @873 -@987 := @96 @958 @926 -@988 := @143 @987 -@991 := (h : @862) -> (hs : @935) -> @988 @875 -@992 := @985 @860 -@994 := @96 @974 @933 -@996 := @143 @994 @875 -@997 := (hs : @939) -> @996 -@998 := @992 @937 -@1000 := @143 @869 @875 -@1001 := @221 @734 -@1003 := @733 (@725 @36) -@1016 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @1003 @38) -> (hs : @225) -> @143 (@96 (@733 (@725 @151)) @36) @171 -@1017 := @1001 @736 -@1019 := @733 (@725 @38) -@1021 := @13 @1019 @736 -@1026 := @143 (@96 (@733 (@725 @153)) @36) -@1027 := @876 @38 -@1032 := {vs : @147} -> {ts : @148} -> (h : @1021) -> (hs : @225) -> @1026 @1027 -@1033 := @1017 @869 -@1035 := @733 (@725 @40) -@1037 := @13 @1035 @736 -@1038 := @988 @40 -@1040 := @96 @1003 @979 -@1045 := {ts : @148} -> (h : @1037) -> (hs : @1038) -> @143 @1040 @1027 -@1046 := @1033 @875 -@1048 := @96 @1019 @987 -@1049 := @143 @1048 -@1052 := (h : @832) -> (hs : @996) -> @1049 @877 -@1053 := @1046 @830 -@1055 := @96 @1035 @994 -@1057 := @143 @1055 @877 -@1058 := (hs : @1000) -> @1057 -@1059 := @1053 @998 -@1061 := @143 @871 @877 -@1062 := @657 @595 -@1063 := @629 @595 -@1072 := {k : @35} -> - {fs : @147} -> {tys : @148} -> (h : @599 (@1063 @38) @607) -> (hf : @225) -> @658 @721 -@1073 := @1062 @595 -@1074 := @1063 @595 -@1075 := @599 @1074 -@1076 := @1075 @607 -@1081 := {fs : @147} -> {tys : @148} -> (h : @1076) -> (hf : @225) -> @683 @721 -@1082 := @1073 @871 -@1089 := {tys : @148} -> (h : @1076) -> (hf : @1049 @40) -> @13 (@681 @1040) @721 -@1090 := @1082 @877 -@1097 := (h : @1075 (@606 @877)) -> (hf : @1057) -> @13 (@681 @1048) @721 -@1099 := @1090 (@706 @1074) -@1103 := (hf : @1061) -> @13 (@681 @1055) @721 -@1104 := @1099 @1059 -@1107 := @13 (@681 @871) @721 -@1108 := fun (__s : @718) => @1104 -@1109 := @29 @40 -@1110 := @64 @40 -@1112 := @13 @1109 @31 -@1114 := @96 @1109 @95 -@1117 := Prod.{0, 0} @35 @91 -@1121 := Prod.mk.{0, 0} @35 @91 @595 -@1122 := @1121 @1109 -@1123 := @93 @1117 -@1124 := @94 @1117 -@1126 := @1124 @1122 @1123 -@1127 := Bool.true -@1128 := LexLeanTarget.TargetSyntax.Function -@1129 := LexLeanTarget.TargetSyntax.Program.functions -@1130 := @1129 @0 -@1131 := @93 @35 -@1132 := LexLeanTarget.TargetSyntax.Ty.unit -@1133 := LexLeanTarget.TargetSyntax.Value.unit -@1136 := LexLeanTarget.TargetSyntax.Expr.value @1132 @1133 -@1141 := LexLeanTarget.TargetSyntax.Function.mk @1131 @109 @1132 @1136 -@1146 := List.getD.{0} @1128 @1130 @595 @1141 -@1150 := fun (__e_n : @35) => - LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.RustStd.root @4 @595 -@1151 := @221 @1109 -@1152 := @29 @153 -@1154 := @13 @1152 @38 -@1155 := @29 @149 -@1156 := @96 @1155 -@1164 := {t : @92} -> - {vs : @147} -> {ts : @148} -> (h : @1154) -> (hs : @225) -> @143 (@1156 @36) @171 -@1165 := @1151 @31 -@1166 := @29 @36 -@1168 := @13 @1166 @31 -@1169 := @29 @151 -@1170 := @96 @1169 -@1177 := {vs : @147} -> {ts : @148} -> (h : @1168) -> (hs : @225) -> @143 (@1170 @36) @260 -@1178 := @1165 @95 -@1179 := @29 @38 -@1181 := @13 @1179 @31 -@1183 := @96 @1152 @95 -@1184 := @143 @1183 -@1188 := {ts : @148} -> (h : @1181) -> (hs : @271) -> @1184 @260 -@1189 := @1178 @109 -@1191 := @96 @1166 @95 -@1192 := @143 @1191 -@1195 := (h : @1112) -> (hs : @145) -> @1192 @112 -@1196 := @1189 @1110 -@1198 := @96 @1179 @95 -@1199 := @143 @1198 -@1201 := (hs : @145) -> @1199 @112 -@1202 := @1196 @142 -@1203 := @143 @1114 -@1204 := @1203 @112 -@1205 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.denote -@1206 := @1205 @40 -@1207 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.__fits_0 -@1208 := @1207 @40 -@1211 := @29 (Reasoning.Main.doseLevel @40) -@1213 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.root @40 -@1214 := Ne.{1} -@1215 := LexLeanPreservation.Obs -@1216 := @1214 @1215 -@1217 := LexLeanPreservation.Rel -@1220 := @1216 (@1217 @40 @4) -@1221 := LexLeanPreservation.Obs.stuck -@1224 := (f : @836) -> (v : @91) -> @1220 @1221 -@1226 := LexLeanPreservation.Rust.rel_ne_stuck @1208 -@1232 := (v : @91) -> @1216 (@1217 (@1207 @38) @4) @1221 -@1233 := @1226 @1211 -@1237 := @1216 (@1217 @1208 @1211) @1221 -@1238 := @146 @1117 -@1239 := LexLeanPreservation.Rust.FunSem -@1240 := #9 -@1246 := (n : @35) -> @1239 @1240 @163 @157 @4 @149 -@1247 := @597 @1128 -@1248 := @596 @1247 -@1255 := LexLeanRuntime.index (@146 @1128) @1128 (LexLeanRuntime.instIndexableList @1128) -@1259 := @1248 (@1255 (@1129 @1240) @149) -@1260 := @605 @1128 -@1261 := @1260 @151 -@1262 := @1259 @1261 -@1263 := #10 -@1267 := @118 @1263 @1240 @163 @151 -@1268 := LexLeanTarget.TargetSyntax.Function.types -@1269 := @1268 @149 -@1270 := @1267 @1269 -@1271 := @597 @1238 -@1272 := @596 @1271 -@1273 := LexLeanTarget.TargetSemantics.bindAll -@1274 := LexLeanTarget.TargetSyntax.Function.parameters -@1279 := @1272 (@1273 (@1274 @157) @149 @1123) -@1280 := @605 @1238 -@1281 := @1280 @151 -@1282 := @1279 @1281 -@1283 := @597 @836 -@1284 := @596 @1283 -@1285 := LexLeanPreservation.Rust.fnFallible -@1286 := #11 -@1289 := @1284 (@1285 @1286 @1240) -@1290 := @605 @836 -@1291 := @1290 @151 -@1292 := @1289 @1291 -@1293 := LexLeanPreservation.RunConv -@1294 := #13 -@1298 := @1293 @1294 @1263 @163 @151 -@1300 := @1216 @149 @1221 -@1301 := Exists.{1} -@1302 := LexLeanPreservation.Rust.ROut -@1303 := @1301 @1302 -@1304 := And -@1305 := LexLeanPreservation.Rust.RealizesFn -@1309 := @1304 (@1305 @1240 @163 @4) -@1310 := LexLeanPreservation.Rust.RCI -@1312 := @1310 #15 -@1313 := LexLeanPreservation.Rust.fnIdent -@1314 := @1313 @1294 -@1321 := (hne : @1300) -> @1303 (fun (ro : @1302) => @1309 (@1312 @1314 @1286 @4)) -@1336 := {p : @32} -> - {c : @33} -> - {A : @34} -> - {f : @35} -> - {fn : @1128} -> - {args : @147} -> - {env : @1238} -> - {F : @836} -> - {o : @1215} -> - (hB : @1246) -> - (hfn : @1262) -> (hwt : @1270) -> (hbind : @1282) -> (hF : @1292) -> (hA : @1298) -> @1321 -@1338 := LexLeanPreservation.Rust.compose @0 -@1339 := @1239 @0 -@1344 := (n : @35) -> @1339 @163 @157 @4 @149 -@1345 := @1255 @1130 -@1348 := @1248 (@1345 @149) @1261 -@1352 := @129 @1240 @163 @151 @1269 -@1353 := @1293 @0 -@1356 := @1353 @1263 @163 @151 -@1370 := {c : @33} -> - {A : @34} -> - {f : @35} -> - {fn : @1128} -> - {args : @147} -> - {env : @1238} -> - {F : @836} -> - {o : @1215} -> - (hB : @1344) -> - (hfn : @1348) -> (hwt : @1352) -> (hbind : @1282) -> (hF : @1292) -> (hA : @1356) -> @1321 -@1371 := @1338 @1 -@1372 := @1339 @1 -@1376 := (n : @35) -> @1372 @157 @4 @149 -@1379 := @137 @163 @151 @1269 -@1380 := @1285 @1 -@1383 := @1284 (@1380 @1240) @1291 -@1384 := @1310 @1 -@1394 := (hbind : @1282) -> - (hF : @1383) -> - (hA : @1356) -> (hne : @1300) -> @1303 (fun (ro : @1302) => @1309 (@1384 @1314 @1286 @4)) -@1404 := {A : @34} -> - {f : @35} -> - {fn : @1128} -> - {args : @147} -> - {env : @1238} -> - {F : @836} -> {o : @1215} -> (hB : @1376) -> (hfn : @1348) -> (hwt : @1379) -> @1394 -@1405 := @1371 @2 -@1407 := @1372 @2 @4 -@1409 := (n : @35) -> @1407 @149 -@1410 := @143 @151 -@1411 := @1410 @1269 -@1420 := {f : @35} -> - {fn : @1128} -> - {args : @147} -> - {env : @1238} -> - {F : @836} -> {o : @1215} -> (hB : @1409) -> (hfn : @1348) -> (hwt : @1411) -> @1394 -@1421 := @1405 @595 -@1423 := (n : @35) -> @1407 @595 -@1424 := @1345 @595 -@1425 := @1248 @1424 -@1426 := @1425 @1261 -@1427 := @1380 @595 -@1428 := @1284 @1427 -@1429 := @1428 @1291 -@1430 := @1353 @595 -@1432 := @1430 @163 @151 -@1434 := @1384 (@1313 @595) -@1442 := (hF : @1429) -> - (hA : @1432) -> (hne : @1300) -> @1303 (fun (ro : @1302) => @1309 (@1434 @1286 @4)) -@1451 := {fn : @1128} -> - {args : @147} -> - {env : @1238} -> - {F : @836} -> - {o : @1215} -> (hB : @1423) -> (hfn : @1426) -> (hwt : @1411) -> (hbind : @1282) -> @1442 -@1452 := @1421 @1146 -@1454 := @1425 (@1260 @1146) -@1455 := @1268 @1146 -@1456 := @1410 @1455 -@1458 := @1273 (@1274 @1146) -@1470 := {args : @147} -> - {env : @1238} -> - {F : @836} -> - {o : @1215} -> - (hB : @1423) -> - (hfn : @1454) -> (hwt : @1456) -> (hbind : @1272 (@1458 @149 @1123) @1281) -> @1442 -@1471 := @1452 @1114 -@1472 := @1156 @95 -@1474 := @143 @1472 @1455 -@1477 := @96 (@29 @157) @95 -@1481 := @1272 (@1458 @1477 @1123) @1281 -@1484 := @96 (@29 @1240) @95 -@1505 := {env : @1238} -> - {F : @836} -> - {o : @1215} -> - (hB : @1423) -> - (hfn : @1454) -> - (hwt : @1474) -> - (hbind : @1481) -> - (hF : @1429) -> - (hA : @1430 @1484 @151) -> - (hne : @1300) -> @1303 (fun (ro : @1302) => @1309 (@1434 (@96 (@29 #12) @95) @4)) -@1506 := @1471 @1126 -@1507 := @1170 @95 -@1509 := @143 @1507 @1455 -@1517 := @1272 (@1458 @1472 @1123) (@1280 (@1124 (@1121 @1155) @1123)) -@1520 := @96 (@29 @163) @95 -@1539 := {F : @836} -> - {o : @1215} -> - (hB : @1423) -> - (hfn : @1454) -> - (hwt : @1509) -> - (hbind : @1517) -> - (hF : @1429) -> - (hA : @1430 @1520 @151) -> - (hne : @1300) -> @1303 (fun (ro : @1302) => @1309 (@1434 (@96 (@29 @1286) @95) @4)) -@1540 := @1506 @1127 -@1541 := @1184 @1455 -@1549 := @1272 (@1458 @1507 @1123) (@1280 (@1124 (@1121 @1169) @1123)) -@1551 := @1428 (@1290 @1127) -@1553 := @1430 @1477 @151 -@1554 := @1305 @1127 -@1573 := {o : @1215} -> - (hB : @1423) -> - (hfn : @1454) -> - (hwt : @1541) -> - (hbind : @1549) -> - (hF : @1551) -> - (hA : @1553) -> - (hne : @1300) -> - @1303 (fun (ro : @1302) => @1304 (@1554 @163 @4) (@1434 (@96 (@29 @1263) @95) @4)) -@1574 := @1540 @1206 -@1575 := @1192 @1455 -@1583 := @1272 (@1458 @1183 @1123) (@1280 (@1124 (@1121 @1152) @1123)) -@1584 := @1430 @1472 -@1585 := @1205 @149 -@1586 := @1584 @1585 -@1587 := @1205 @157 -@1605 := (hB : @1423) -> - (hfn : @1454) -> - (hwt : @1575) -> - (hbind : @1583) -> - (hF : @1551) -> - (hA : @1586) -> - (hne : @1216 @1587 @1221) -> - @1303 (fun (ro : @1302) => @1304 (@1554 (@1205 @1240) @4) (@1434 @1484 @4)) -@1606 := @1574 @1150 -@1607 := @1199 @1455 -@1615 := @1272 (@1458 @1191 @1123) (@1280 (@1124 (@1121 @1166) @1123)) -@1616 := @1430 @1507 -@1617 := @1205 @151 -@1635 := (hfn : @1454) -> - (hwt : @1607) -> - (hbind : @1615) -> - (hF : @1551) -> - (hA : @1616 @1617) -> - (hne : @1216 @1585 @1221) -> - @1303 (fun (ro : @1302) => @1304 (@1554 (@1205 @163) @4) (@1434 @1520 @4)) -@1638 := @1606 (@705 @1247 @1424) -@1639 := @1203 @1455 -@1647 := @1272 (@1458 @1198 @1123) (@1280 (@1124 (@1121 @1179) @1123)) -@1648 := @1430 @1183 -@1649 := @1205 @153 -@1665 := (hwt : @1639) -> - (hbind : @1647) -> - (hF : @1551) -> - (hA : @1648 @1649) -> - (hne : @1216 @1617 @1221) -> @1303 (fun (ro : @1302) => @1304 (@1554 @1587 @4) (@1434 @1477 @4)) -@1666 := @1638 @1202 -@1668 := @1458 @1114 @1123 -@1671 := @1272 @1668 (@1280 @1126) -@1672 := @1430 @1191 -@1673 := @1205 @36 -@1688 := (hbind : @1671) -> - (hF : @1551) -> - (hA : @1672 @1673) -> - (hne : @1216 @1649 @1221) -> @1303 (fun (ro : @1302) => @1304 (@1554 @1585 @4) (@1434 @1472 @4)) -@1691 := @1666 (@705 @1271 @1668) -@1692 := @1430 @1198 -@1693 := @1205 @38 -@1707 := (hF : @1551) -> - (hA : @1692 @1693) -> - (hne : @1216 @1673 @1221) -> @1303 (fun (ro : @1302) => @1304 (@1554 @1617 @4) (@1434 @1507 @4)) -@1710 := @1691 (@705 @1283 @1427) -@1724 := (hA : @1430 @1114 @1206) -> - (hne : @1216 @1693 @1221) -> @1303 (fun (ro : @1302) => @1304 (@1554 @1649 @4) (@1434 @1183 @4)) -@1725 := @1710 @1213 -@1736 := (hne : @1216 @1206 @1221) -> - @1303 (fun (ro : @1302) => @1304 (@1554 @1673 @4) (@1434 @1191 @4)) -@1737 := @1725 @1233 -@1743 := @1304 (@1554 @1693 @4) (@1434 @1198 @4) -@1745 := @1303 (fun (ro : @1302) => @1743) -@1747 := @1303 (fun (__e_ro : @1302) => @1743) -@1751 := LexLeanPreservation.Rust.RepresentableL (@96 @42 @95) -@1752 := (__e_hrep : @1751) -> @1747 -@1753 := fun (__e_hrep : @1751) => @1737 -@1754 := (w : @35) -> @1752 -@1755 := fun (w : @35) => @1753 -\end{coremodule} -\end{lexlean} diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R4/RustStd.lean b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R4/RustStd.lean deleted file mode 100644 index 793930d38..000000000 --- a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R4/RustStd.lean +++ /dev/null @@ -1,134 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [{ constructors := [[(.option .nat), .bool, (.adt 1)]] }, - { constructors := [[.nat, .nat, .nat, .nat, .nat, .nat]] }], functions := [ - { parameters := [0], types := [.nat], result := .nat, - body := (.«match» .nat (.call 1 [(.var 0)]) [(.arm .ok [1] (.var 1)), (.arm .error [2] (.value .nat (.nat 9)))]) }, - { parameters := [0], types := [.nat], result := (.result .nat (.pair .bool .bool)), - body := (.«let» 1 (.adt 0) (.call 2 [(.var 0)]) (.«match» (.result .nat (.pair .bool .bool)) (.field (.var 1) 0) [(.arm .some [2] (.build .ok (.result .nat (.pair .bool .bool)) [(.var 2)])), (.arm .none [] (.build .error (.result .nat (.pair .bool .bool)) [(.call 3 [(.var 1)])]))])) }, - { parameters := [0], types := [.nat], result := (.adt 0), - body := (.call 4 [(.closure 5 [(.var 0)]), (.build (.adt 0) (.adt 0) [(.build .none (.option .nat) []), (.build .false .bool []), (.build (.adt 0) (.adt 1) [(.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0))])]), (.call 6 [(.var 0)])]) }, - { parameters := [0], types := [(.adt 0)], result := (.pair .bool .bool), - body := (.«match» (.pair .bool .bool) (.field (.var 0) 1) [(.arm .true [] (.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])), (.arm .false [] (.«match» (.pair .bool .bool) (.prim .natEq [(.field (.field (.var 0) 2) 4), (.value .nat (.nat 0))]) [(.arm .true [] (.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])])), (.arm .false [] (.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])]))]))]) }, - { parameters := [0, 1, 2], types := [(.fn [(.adt 0), .nat] (.adt 0)), (.adt 0), (.list .nat)], result := (.adt 0), - body := (.«match» (.adt 0) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 4 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, - { parameters := [0, 1, 2], types := [.nat, (.adt 0), .nat], result := (.adt 0), - body := (.call 7 [(.var 0), (.var 1), (.var 2)]) }, - { parameters := [0], types := [.nat], result := (.list .nat), - body := (.«match» (.list .nat) (.«let» 1 .nat (.var 0) (.«let» 2 (.list .nat) (.call 8 [(.var 1)]) (.cond (.call 9 [(.var 1), (.var 2)]) (.build .ok (.result (.list .nat) (.pair .bool .bool)) [(.var 2)]) (.build .error (.result (.list .nat) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])])])))) [(.arm .ok [3] (.var 3)), (.arm .error [4] (.build .nil (.list .nat) []))]) }, - { parameters := [0, 1, 2], types := [.nat, (.adt 0), .nat], result := (.adt 0), - body := (.«match» (.adt 0) (.field (.var 1) 0) [(.arm .some [3] (.var 1)), (.arm .none [] (.«match» (.adt 0) (.prim .natLt [(.field (.field (.var 1) 2) 4), (.value .nat (.nat 3))]) [(.arm .true [] (.build (.adt 0) (.adt 0) [(.call 10 [(.var 0), (.var 2)]), (.field (.var 1) 1), (.build (.adt 0) (.adt 1) [(.prim .natAdd [(.field (.field (.var 1) 2) 0), (.value .nat (.nat 1))]), (.prim .natAdd [(.field (.field (.var 1) 2) 1), (.value .nat (.nat 1))]), (.field (.field (.var 1) 2) 2), (.field (.field (.var 1) 2) 3), (.prim .natAdd [(.field (.field (.var 1) 2) 4), (.value .nat (.nat 1))]), (.field (.field (.var 1) 2) 5)])])), (.arm .false [] (.build (.adt 0) (.adt 0) [(.build .none (.option .nat) []), (.build .true .bool []), (.field (.var 1) 2)]))]))]) }, - { parameters := [0], types := [.nat], result := (.list .nat), - body := (.call 11 [(.var 0)]) }, - { parameters := [0, 1], types := [.nat, (.list .nat)], result := .bool, - body := (.prim .natLe [(.prim .length [(.var 1)]), (.value .nat (.nat 4))]) }, - { parameters := [0, 1], types := [.nat, .nat], result := (.option .nat), - body := (.cond (.call 12 [(.var 0), (.var 1)]) (.build .some (.option .nat) [(.var 1)]) (.build .none (.option .nat) [])) }, - { parameters := [0], types := [.nat], result := (.list .nat), - body := (.build .cons (.list .nat) [(.prim .natSub [(.var 0), (.value .nat (.nat 10))]), (.build .cons (.list .nat) [(.prim .natSub [(.var 0), (.value .nat (.nat 20))]), (.build .cons (.list .nat) [(.prim .natSub [(.var 0), (.value .nat (.nat 30))]), (.build .cons (.list .nat) [(.prim .natSub [(.var 0), (.value .nat (.nat 50))]), (.build .nil (.list .nat) [])])])])]) }, - { parameters := [0, 1], types := [.nat, .nat], result := .bool, - body := (.prim .natLe [(.prim .natAdd [(.var 1), (.var 1)]), (.var 0)]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.enum (.adt 0) [{ number := 0, fields := [(.option .nat), .bool, (.adt 1)] }]), - (.enum (.adt 1) [{ number := 0, fields := [.nat, .nat, .nat, .nat, .nat, .nat] }]), - (.enum (.fn 0) [{ number := 5, fields := [.nat] }]), - (.apply 0 [(.adt 0), .nat] (.adt 0) true [{ function := 5, captures := [.copy], functionFallible := true }]), - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 1)) none (.call (.function 1) [(.copy (.generated .binding 0))] true))] (.matchOn (.move (.generated .holder 1)) [(.mk (.ok (.bind (.generated .binding 1))) (.mk [] (.succeed (.copy (.generated .binding 1))))), (.mk (.err .wild) (.mk [] (.succeed (.lit (.nat 9)))))]))), - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible (.result .nat (.pair .bool .bool))) (.mk [(.mk (.bind (.generated .binding 1)) (some (.adt 0)) (.call (.function 2) [(.copy (.generated .binding 0))] true)), (.mk (.bind (.generated .holder 3)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [(.bind (.generated .part 2)), .wild, .wild]) (.mk [] (.move (.generated .part 2))))]))] (.matchOn (.move (.generated .holder 3)) [(.mk .none (.mk [] (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.call (.function 3) [(.move (.generated .binding 1))] false)])))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))]))))]))), - (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible (.adt 0)) (.mk [] (.call (.function 4) [(.construct (.closure 0 5) [(.copy (.generated .binding 0))]), (.construct (.adt 0 0) [(.construct (.none .nat) []), (.lit (.bool false)), (.construct (.adt 1 0) [(.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0))])]), (.call (.function 6) [(.copy (.generated .binding 0))] false)] false))), - (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.pair .bool .bool) (.mk [(.mk (.bind (.generated .holder 5)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 4)), .wild]) (.mk [] (.move (.generated .part 4))))]))] (.cond (.move (.generated .holder 5)) (.mk [] (.pair (.lit (.bool false)) (.lit (.bool false)))) (.mk [(.mk (.bind (.generated .holder 11)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.block (.mk [(.mk (.bind (.generated .holder 8)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 7))]) (.mk [] (.move (.generated .part 7))))]))] (.matchOn (.move (.generated .holder 8)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 6)), .wild]) (.mk [] (.move (.generated .part 6))))])))), (.mk (.bind (.generated .operand 10)) none (.lit (.nat 0)))] (.call (.runtime .natEq) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false))))] (.cond (.move (.generated .holder 11)) (.mk [] (.pair (.lit (.bool false)) (.lit (.bool true)))) (.mk [] (.pair (.lit (.bool true)) (.lit (.bool false))))))))), - (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 0) }, { pattern := (.bind (.generated .binding 2)), type := (.list .nat) }] (.fallible (.adt 0)) (.mk [(.mk (.bind (.generated .holder 12)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 12)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 4) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 13)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 13) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]))), - (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := (.adt 0) }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.fallible (.adt 0)) (.mk [] (.call (.function 7) [(.copy (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 2))] false))), - (.function (.generated .function 6) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 14)) none (.block (.mk [(.mk (.bind (.generated .binding 1)) (some .nat) (.copy (.generated .binding 0))), (.mk (.bind (.generated .binding 2)) (some (.list .nat)) (.call (.function 8) [(.copy (.generated .binding 1))] false))] (.cond (.call (.function 9) [(.copy (.generated .binding 1)), (.clone (.generated .binding 2))] false) (.mk [] (.construct (.ok (.list .nat) (.pair .bool .bool)) [(.move (.generated .binding 2))])) (.mk [] (.construct (.err (.list .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))]))))))] (.matchOn (.move (.generated .holder 14)) [(.mk (.ok (.bind (.generated .binding 3))) (.mk [] (.move (.generated .binding 3)))), (.mk (.err .wild) (.mk [] (.construct (.nil .nat) [])))]))), - (.function (.generated .function 7) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := (.adt 0) }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.fallible (.adt 0)) (.mk [(.mk (.bind (.generated .holder 16)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [(.bind (.generated .part 15)), .wild, .wild]) (.mk [] (.move (.generated .part 15))))]))] (.matchOn (.move (.generated .holder 16)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 22)) none (.block (.mk [(.mk (.bind (.generated .operand 20)) none (.block (.mk [(.mk (.bind (.generated .holder 19)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 18))]) (.mk [] (.move (.generated .part 18))))]))] (.matchOn (.move (.generated .holder 19)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 17)), .wild]) (.mk [] (.move (.generated .part 17))))])))), (.mk (.bind (.generated .operand 21)) none (.lit (.nat 3)))] (.call (.runtime .natLt) [(.move (.generated .operand 20)), (.move (.generated .operand 21))] false))))] (.cond (.move (.generated .holder 22)) (.mk [] (.succeed (.construct (.adt 0 0) [(.call (.function 10) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] true), (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 23)), .wild]) (.mk [] (.move (.generated .part 23))))]), (.construct (.adt 1 0) [(.block (.mk [(.mk (.bind (.generated .operand 27)) none (.block (.mk [(.mk (.bind (.generated .holder 26)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 25))]) (.mk [] (.move (.generated .part 25))))]))] (.matchOn (.move (.generated .holder 26)) [(.mk (.adt 1 0 [(.bind (.generated .part 24)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 24))))])))), (.mk (.bind (.generated .operand 28)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] true))), (.block (.mk [(.mk (.bind (.generated .operand 32)) none (.block (.mk [(.mk (.bind (.generated .holder 31)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 30))]) (.mk [] (.move (.generated .part 30))))]))] (.matchOn (.move (.generated .holder 31)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 29)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 29))))])))), (.mk (.bind (.generated .operand 33)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] true))), (.block (.mk [(.mk (.bind (.generated .holder 36)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 35))]) (.mk [] (.move (.generated .part 35))))]))] (.matchOn (.move (.generated .holder 36)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 34)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 34))))]))), (.block (.mk [(.mk (.bind (.generated .holder 39)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 38))]) (.mk [] (.move (.generated .part 38))))]))] (.matchOn (.move (.generated .holder 39)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 37)), .wild, .wild]) (.mk [] (.move (.generated .part 37))))]))), (.block (.mk [(.mk (.bind (.generated .operand 43)) none (.block (.mk [(.mk (.bind (.generated .holder 42)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 41))]) (.mk [] (.move (.generated .part 41))))]))] (.matchOn (.move (.generated .holder 42)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 40)), .wild]) (.mk [] (.move (.generated .part 40))))])))), (.mk (.bind (.generated .operand 44)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] true))), (.block (.mk [(.mk (.bind (.generated .holder 47)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 46))]) (.mk [] (.move (.generated .part 46))))]))] (.matchOn (.move (.generated .holder 47)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 45))]) (.mk [] (.move (.generated .part 45))))])))])]))) (.mk [] (.succeed (.construct (.adt 0 0) [(.construct (.none .nat) []), (.lit (.bool true)), (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 48))]) (.mk [] (.move (.generated .part 48))))])])))))), (.mk (.some .wild) (.mk [] (.succeed (.move (.generated .binding 1)))))]))), - (.function (.generated .function 8) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.list .nat) (.mk [] (.call (.function 11) [(.copy (.generated .binding 0))] false))), - (.function (.generated .function 9) [{ pattern := .wild, type := .nat }, { pattern := (.bind (.generated .binding 1)), type := (.list .nat) }] .bool (.mk [(.mk (.bind (.generated .operand 50)) none (.block (.mk [(.mk (.bind (.generated .operand 49)) none (.move (.generated .binding 1)))] (.call (.runtime .lengthList) [(.move (.generated .operand 49))] false)))), (.mk (.bind (.generated .operand 51)) none (.lit (.nat 4)))] (.call (.runtime .natLe) [(.move (.generated .operand 50)), (.move (.generated .operand 51))] false))), - (.function (.generated .function 10) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible (.option .nat)) (.mk [] (.cond (.call (.function 12) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] true) (.mk [] (.succeed (.construct .some [(.copy (.generated .binding 1))]))) (.mk [] (.succeed (.construct (.none .nat) [])))))), - (.function (.generated .function 11) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.list .nat) (.mk [] (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 52)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 53)) none (.lit (.nat 10)))] (.call (.runtime .natSub) [(.move (.generated .operand 52)), (.move (.generated .operand 53))] false))), (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 54)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 55)) none (.lit (.nat 20)))] (.call (.runtime .natSub) [(.move (.generated .operand 54)), (.move (.generated .operand 55))] false))), (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 56)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 57)) none (.lit (.nat 30)))] (.call (.runtime .natSub) [(.move (.generated .operand 56)), (.move (.generated .operand 57))] false))), (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 58)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 59)) none (.lit (.nat 50)))] (.call (.runtime .natSub) [(.move (.generated .operand 58)), (.move (.generated .operand 59))] false))), (.construct (.nil .nat) [])])])])]))), - (.function (.generated .function 12) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .bool) (.mk [(.mk (.bind (.generated .operand 62)) none (.block (.mk [(.mk (.bind (.generated .operand 60)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 61)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] true)))), (.mk (.bind (.generated .operand 63)) none (.copy (.generated .binding 0)))] (.succeed (.call (.runtime .natLe) [(.move (.generated .operand 62)), (.move (.generated .operand 63))] false))))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [(([(.adt 0), .nat], (.adt 0)), true)] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.call (.function 1) [(.copy (.generated .binding 0))] true))], (.matchOn (.move (.generated .holder 1)) [(.mk (.ok (.bind (.generated .binding 1))) (.mk [] (.succeed (.copy (.generated .binding 1))))), (.mk (.err .wild) (.mk [] (.succeed (.lit (.nat 9)))))]), [(0, .nat, (some 0))], rfl, rfl, - (Corr.matchArms (st := (.result .nat (.pair .bool .bool))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, .nat, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.copy (.generated .binding 1)))) (Corr.mCons (Γ' := [(2, (.pair .bool .bool), none), (0, .nat, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.lit (.nat 9)))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl)))) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some (.adt 0)) (.call (.function 2) [(.copy (.generated .binding 0))] true)), (.mk (.bind (.generated .holder 3)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [(.bind (.generated .part 2)), .wild, .wild]) (.mk [] (.move (.generated .part 2))))]))], (.matchOn (.move (.generated .holder 3)) [(.mk .none (.mk [] (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.call (.function 3) [(.move (.generated .binding 1))] false)])))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))]))))]), [(0, .nat, (some 0))], rfl, rfl, - (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.fieldRead (ts := [(.option .nat), .bool, (.adt 1)]) (rd := (.move (.generated .part 2))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.adt 0), (some 1)), (0, .nat, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.call (.function 3) [(.move (.generated .binding 1))] false)]))) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, (.adt 0), (some 1)), (0, .nat, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl))) rfl rfl rfl))⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 4) [(.construct (.closure 0 5) [(.copy (.generated .binding 0))]), (.construct (.adt 0 0) [(.construct (.none .nat) []), (.lit (.bool false)), (.construct (.adt 1 0) [(.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0))])]), (.call (.function 6) [(.copy (.generated .binding 0))] false)] false), [(0, .nat, (some 0))], rfl, rfl, - (Corr.callF (ts := [(.fn [(.adt 0), .nat] (.adt 0)), (.adt 0), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [.nat]) (mask := [false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.option .nat), .bool, (.adt 1)]) (mask := [false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))))))) rfl)) (Corr.lNil))))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl)⟩⟩ - -theorem fun3 : FunOK program krate flags 3 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 5)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 4)), .wild]) (.mk [] (.move (.generated .part 4))))]))], (.cond (.move (.generated .holder 5)) (.mk [] (.pair (.lit (.bool false)) (.lit (.bool false)))) (.mk [(.mk (.bind (.generated .holder 11)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.block (.mk [(.mk (.bind (.generated .holder 8)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 7))]) (.mk [] (.move (.generated .part 7))))]))] (.matchOn (.move (.generated .holder 8)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 6)), .wild]) (.mk [] (.move (.generated .part 6))))])))), (.mk (.bind (.generated .operand 10)) none (.lit (.nat 0)))] (.call (.runtime .natEq) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false))))] (.cond (.move (.generated .holder 11)) (.mk [] (.pair (.lit (.bool false)) (.lit (.bool true)))) (.mk [] (.pair (.lit (.bool true)) (.lit (.bool false))))))), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.matchBool (Corr.eOfBNil (Corr.fieldRead (ts := [(.option .nat), .bool, (.adt 1)]) (rd := (.move (.generated .part 4))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl (Corr.kIf (la := []) (ta := (.pair (.lit (.bool false)) (.lit (.bool false)))) (lb := [(.mk (.bind (.generated .holder 11)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.block (.mk [(.mk (.bind (.generated .holder 8)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 7))]) (.mk [] (.move (.generated .part 7))))]))] (.matchOn (.move (.generated .holder 8)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 6)), .wild]) (.mk [] (.move (.generated .part 6))))])))), (.mk (.bind (.generated .operand 10)) none (.lit (.nat 0)))] (.call (.runtime .natEq) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false))))]) (tb := (.cond (.move (.generated .holder 11)) (.mk [] (.pair (.lit (.bool false)) (.lit (.bool true)))) (.mk [] (.pair (.lit (.bool true)) (.lit (.bool false)))))) (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))))) (Corr.matchBool (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 9)) none (.block (.mk [(.mk (.bind (.generated .holder 8)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 7))]) (.mk [] (.move (.generated .part 7))))]))] (.matchOn (.move (.generated .holder 8)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 6)), .wild]) (.mk [] (.move (.generated .part 6))))])))), (.mk (.bind (.generated .operand 10)) none (.lit (.nat 0)))]) (tail := (.call (.runtime .natEq) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 8)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 7))]) (.mk [] (.move (.generated .part 7))))]))]) (tail := (.matchOn (.move (.generated .holder 8)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 6)), .wild]) (.mk [] (.move (.generated .part 6))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 6))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.option .nat), .bool, (.adt 1)]) (rd := (.move (.generated .part 7))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl (Corr.kIf (la := []) (ta := (.pair (.lit (.bool false)) (.lit (.bool true)))) (lb := []) (tb := (.pair (.lit (.bool true)) (.lit (.bool false)))) (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))))) (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))))))))⟩⟩ - -theorem fun4 : FunOK program krate flags 4 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 12)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 12)) [(.mk .none (.mk [] (.succeed (.move (.generated .binding 1))))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 4) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 13)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 13) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)))]), [(2, (.list .nat), (some 2)), (1, (.adt 0), (some 1)), (0, (.fn [(.adt 0), .nat] (.adt 0)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .nat), (some 2)), (1, (.adt 0), (some 1)), (0, (.fn [(.adt 0), .nat] (.adt 0)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 1)))) (Corr.mCons (Γ' := [(4, (.list .nat), (some 4)), (3, .nat, (some 3)), (2, (.list .nat), (some 2)), (1, (.adt 0), (some 1)), (0, (.fn [(.adt 0), .nat] (.adt 0)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 4) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 13)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 13) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.adt 0), .nat] (.adt 0)), (.adt 0), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 13)) (some (.fn 0)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 13) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] true)) (Corr.apply (ps := [(.adt 0), .nat]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ - -theorem fun5 : FunOK program krate flags 5 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 7) [(.copy (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 2))] false), [(2, .nat, (some 2)), (1, (.adt 0), (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.callF (ts := [.nat, (.adt 0), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)⟩⟩ - -theorem fun6 : FunOK program krate flags 6 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 14)) none (.block (.mk [(.mk (.bind (.generated .binding 1)) (some .nat) (.copy (.generated .binding 0))), (.mk (.bind (.generated .binding 2)) (some (.list .nat)) (.call (.function 8) [(.copy (.generated .binding 1))] false))] (.cond (.call (.function 9) [(.copy (.generated .binding 1)), (.clone (.generated .binding 2))] false) (.mk [] (.construct (.ok (.list .nat) (.pair .bool .bool)) [(.move (.generated .binding 2))])) (.mk [] (.construct (.err (.list .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))]))))))], (.matchOn (.move (.generated .holder 14)) [(.mk (.ok (.bind (.generated .binding 3))) (.mk [] (.move (.generated .binding 3)))), (.mk (.err .wild) (.mk [] (.construct (.nil .nat) [])))]), [(0, .nat, (some 0))], rfl, rfl, - (Corr.matchArms (st := (.result (.list .nat) (.pair .bool .bool))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.bind (.generated .binding 1)) (some .nat) (.copy (.generated .binding 0))), (.mk (.bind (.generated .binding 2)) (some (.list .nat)) (.call (.function 8) [(.copy (.generated .binding 1))] false))]) (tail := (.cond (.call (.function 9) [(.copy (.generated .binding 1)), (.clone (.generated .binding 2))] false) (.mk [] (.construct (.ok (.list .nat) (.pair .bool .bool)) [(.move (.generated .binding 2))])) (.mk [] (.construct (.err (.list .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))) (Corr.letBind (Corr.var rfl rfl) rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := []) (ce := (.call (.function 9) [(.copy (.generated .binding 1)), (.clone (.generated .binding 2))] false)) (lk := []) (Corr.callOps (ts := [.nat, (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct (.ok (.list .nat) (.pair .bool .bool)) [(.move (.generated .binding 2))])) (lb := []) (tb := (.construct (.err (.list .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])) (Corr.build (ts := [(.list .nat)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl) (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)))))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (0, .nat, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 3))) (Corr.mCons (Γ' := [(4, (.pair .bool .bool), none), (0, .nat, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct (.nil .nat) [])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ - -theorem fun7 : FunOK program krate flags 7 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 16)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [(.bind (.generated .part 15)), .wild, .wild]) (.mk [] (.move (.generated .part 15))))]))], (.matchOn (.move (.generated .holder 16)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 22)) none (.block (.mk [(.mk (.bind (.generated .operand 20)) none (.block (.mk [(.mk (.bind (.generated .holder 19)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 18))]) (.mk [] (.move (.generated .part 18))))]))] (.matchOn (.move (.generated .holder 19)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 17)), .wild]) (.mk [] (.move (.generated .part 17))))])))), (.mk (.bind (.generated .operand 21)) none (.lit (.nat 3)))] (.call (.runtime .natLt) [(.move (.generated .operand 20)), (.move (.generated .operand 21))] false))))] (.cond (.move (.generated .holder 22)) (.mk [] (.succeed (.construct (.adt 0 0) [(.call (.function 10) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] true), (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 23)), .wild]) (.mk [] (.move (.generated .part 23))))]), (.construct (.adt 1 0) [(.block (.mk [(.mk (.bind (.generated .operand 27)) none (.block (.mk [(.mk (.bind (.generated .holder 26)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 25))]) (.mk [] (.move (.generated .part 25))))]))] (.matchOn (.move (.generated .holder 26)) [(.mk (.adt 1 0 [(.bind (.generated .part 24)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 24))))])))), (.mk (.bind (.generated .operand 28)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] true))), (.block (.mk [(.mk (.bind (.generated .operand 32)) none (.block (.mk [(.mk (.bind (.generated .holder 31)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 30))]) (.mk [] (.move (.generated .part 30))))]))] (.matchOn (.move (.generated .holder 31)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 29)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 29))))])))), (.mk (.bind (.generated .operand 33)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] true))), (.block (.mk [(.mk (.bind (.generated .holder 36)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 35))]) (.mk [] (.move (.generated .part 35))))]))] (.matchOn (.move (.generated .holder 36)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 34)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 34))))]))), (.block (.mk [(.mk (.bind (.generated .holder 39)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 38))]) (.mk [] (.move (.generated .part 38))))]))] (.matchOn (.move (.generated .holder 39)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 37)), .wild, .wild]) (.mk [] (.move (.generated .part 37))))]))), (.block (.mk [(.mk (.bind (.generated .operand 43)) none (.block (.mk [(.mk (.bind (.generated .holder 42)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 41))]) (.mk [] (.move (.generated .part 41))))]))] (.matchOn (.move (.generated .holder 42)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 40)), .wild]) (.mk [] (.move (.generated .part 40))))])))), (.mk (.bind (.generated .operand 44)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] true))), (.block (.mk [(.mk (.bind (.generated .holder 47)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 46))]) (.mk [] (.move (.generated .part 46))))]))] (.matchOn (.move (.generated .holder 47)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 45))]) (.mk [] (.move (.generated .part 45))))])))])]))) (.mk [] (.succeed (.construct (.adt 0 0) [(.construct (.none .nat) []), (.lit (.bool true)), (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 48))]) (.mk [] (.move (.generated .part 48))))])])))))), (.mk (.some .wild) (.mk [] (.succeed (.move (.generated .binding 1)))))]), [(2, .nat, (some 2)), (1, (.adt 0), (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.fieldRead (ts := [(.option .nat), .bool, (.adt 1)]) (rd := (.move (.generated .part 15))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, (.adt 0), (some 1)), (0, .nat, (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 22)) none (.block (.mk [(.mk (.bind (.generated .operand 20)) none (.block (.mk [(.mk (.bind (.generated .holder 19)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 18))]) (.mk [] (.move (.generated .part 18))))]))] (.matchOn (.move (.generated .holder 19)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 17)), .wild]) (.mk [] (.move (.generated .part 17))))])))), (.mk (.bind (.generated .operand 21)) none (.lit (.nat 3)))] (.call (.runtime .natLt) [(.move (.generated .operand 20)), (.move (.generated .operand 21))] false))))]) (tail := (.cond (.move (.generated .holder 22)) (.mk [] (.succeed (.construct (.adt 0 0) [(.call (.function 10) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] true), (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 23)), .wild]) (.mk [] (.move (.generated .part 23))))]), (.construct (.adt 1 0) [(.block (.mk [(.mk (.bind (.generated .operand 27)) none (.block (.mk [(.mk (.bind (.generated .holder 26)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 25))]) (.mk [] (.move (.generated .part 25))))]))] (.matchOn (.move (.generated .holder 26)) [(.mk (.adt 1 0 [(.bind (.generated .part 24)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 24))))])))), (.mk (.bind (.generated .operand 28)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] true))), (.block (.mk [(.mk (.bind (.generated .operand 32)) none (.block (.mk [(.mk (.bind (.generated .holder 31)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 30))]) (.mk [] (.move (.generated .part 30))))]))] (.matchOn (.move (.generated .holder 31)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 29)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 29))))])))), (.mk (.bind (.generated .operand 33)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] true))), (.block (.mk [(.mk (.bind (.generated .holder 36)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 35))]) (.mk [] (.move (.generated .part 35))))]))] (.matchOn (.move (.generated .holder 36)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 34)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 34))))]))), (.block (.mk [(.mk (.bind (.generated .holder 39)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 38))]) (.mk [] (.move (.generated .part 38))))]))] (.matchOn (.move (.generated .holder 39)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 37)), .wild, .wild]) (.mk [] (.move (.generated .part 37))))]))), (.block (.mk [(.mk (.bind (.generated .operand 43)) none (.block (.mk [(.mk (.bind (.generated .holder 42)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 41))]) (.mk [] (.move (.generated .part 41))))]))] (.matchOn (.move (.generated .holder 42)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 40)), .wild]) (.mk [] (.move (.generated .part 40))))])))), (.mk (.bind (.generated .operand 44)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] true))), (.block (.mk [(.mk (.bind (.generated .holder 47)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 46))]) (.mk [] (.move (.generated .part 46))))]))] (.matchOn (.move (.generated .holder 47)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 45))]) (.mk [] (.move (.generated .part 45))))])))])]))) (.mk [] (.succeed (.construct (.adt 0 0) [(.construct (.none .nat) []), (.lit (.bool true)), (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 48))]) (.mk [] (.move (.generated .part 48))))])]))))) (Corr.mCons (Γ' := [(3, .nat, none), (2, .nat, (some 2)), (1, (.adt 0), (some 1)), (0, .nat, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.move (.generated .binding 1)))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl (Corr.matchBool (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 20)) none (.block (.mk [(.mk (.bind (.generated .holder 19)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 18))]) (.mk [] (.move (.generated .part 18))))]))] (.matchOn (.move (.generated .holder 19)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 17)), .wild]) (.mk [] (.move (.generated .part 17))))])))), (.mk (.bind (.generated .operand 21)) none (.lit (.nat 3)))]) (tail := (.call (.runtime .natLt) [(.move (.generated .operand 20)), (.move (.generated .operand 21))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 19)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 18))]) (.mk [] (.move (.generated .part 18))))]))]) (tail := (.matchOn (.move (.generated .holder 19)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 17)), .wild]) (.mk [] (.move (.generated .part 17))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 17))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.option .nat), .bool, (.adt 1)]) (rd := (.move (.generated .part 18))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl (Corr.kIf (la := []) (ta := (.succeed (.construct (.adt 0 0) [(.call (.function 10) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] true), (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 23)), .wild]) (.mk [] (.move (.generated .part 23))))]), (.construct (.adt 1 0) [(.block (.mk [(.mk (.bind (.generated .operand 27)) none (.block (.mk [(.mk (.bind (.generated .holder 26)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 25))]) (.mk [] (.move (.generated .part 25))))]))] (.matchOn (.move (.generated .holder 26)) [(.mk (.adt 1 0 [(.bind (.generated .part 24)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 24))))])))), (.mk (.bind (.generated .operand 28)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] true))), (.block (.mk [(.mk (.bind (.generated .operand 32)) none (.block (.mk [(.mk (.bind (.generated .holder 31)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 30))]) (.mk [] (.move (.generated .part 30))))]))] (.matchOn (.move (.generated .holder 31)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 29)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 29))))])))), (.mk (.bind (.generated .operand 33)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] true))), (.block (.mk [(.mk (.bind (.generated .holder 36)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 35))]) (.mk [] (.move (.generated .part 35))))]))] (.matchOn (.move (.generated .holder 36)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 34)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 34))))]))), (.block (.mk [(.mk (.bind (.generated .holder 39)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 38))]) (.mk [] (.move (.generated .part 38))))]))] (.matchOn (.move (.generated .holder 39)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 37)), .wild, .wild]) (.mk [] (.move (.generated .part 37))))]))), (.block (.mk [(.mk (.bind (.generated .operand 43)) none (.block (.mk [(.mk (.bind (.generated .holder 42)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 41))]) (.mk [] (.move (.generated .part 41))))]))] (.matchOn (.move (.generated .holder 42)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 40)), .wild]) (.mk [] (.move (.generated .part 40))))])))), (.mk (.bind (.generated .operand 44)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] true))), (.block (.mk [(.mk (.bind (.generated .holder 47)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 46))]) (.mk [] (.move (.generated .part 46))))]))] (.matchOn (.move (.generated .holder 47)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 45))]) (.mk [] (.move (.generated .part 45))))])))])]))) (lb := []) (tb := (.succeed (.construct (.adt 0 0) [(.construct (.none .nat) []), (.lit (.bool true)), (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 48))]) (.mk [] (.move (.generated .part 48))))])]))) (Corr.fOfB (Corr.build (ts := [(.option .nat), .bool, (.adt 1)]) (mask := [false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.option .nat), .bool, (.adt 1)]) (rd := (.move (.generated .part 23))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 27)) none (.block (.mk [(.mk (.bind (.generated .holder 26)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 25))]) (.mk [] (.move (.generated .part 25))))]))] (.matchOn (.move (.generated .holder 26)) [(.mk (.adt 1 0 [(.bind (.generated .part 24)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 24))))])))), (.mk (.bind (.generated .operand 28)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 26)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 25))]) (.mk [] (.move (.generated .part 25))))]))]) (tail := (.matchOn (.move (.generated .holder 26)) [(.mk (.adt 1 0 [(.bind (.generated .part 24)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 24))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 24))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.option .nat), .bool, (.adt 1)]) (rd := (.move (.generated .part 25))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 32)) none (.block (.mk [(.mk (.bind (.generated .holder 31)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 30))]) (.mk [] (.move (.generated .part 30))))]))] (.matchOn (.move (.generated .holder 31)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 29)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 29))))])))), (.mk (.bind (.generated .operand 33)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 31)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 30))]) (.mk [] (.move (.generated .part 30))))]))]) (tail := (.matchOn (.move (.generated .holder 31)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 29)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 29))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 29))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.option .nat), .bool, (.adt 1)]) (rd := (.move (.generated .part 30))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 36)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 35))]) (.mk [] (.move (.generated .part 35))))]))]) (tail := (.matchOn (.move (.generated .holder 36)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 34)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 34))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 34))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.option .nat), .bool, (.adt 1)]) (rd := (.move (.generated .part 35))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 39)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 38))]) (.mk [] (.move (.generated .part 38))))]))]) (tail := (.matchOn (.move (.generated .holder 39)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 37)), .wild, .wild]) (.mk [] (.move (.generated .part 37))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 37))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.option .nat), .bool, (.adt 1)]) (rd := (.move (.generated .part 38))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 43)) none (.block (.mk [(.mk (.bind (.generated .holder 42)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 41))]) (.mk [] (.move (.generated .part 41))))]))] (.matchOn (.move (.generated .holder 42)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 40)), .wild]) (.mk [] (.move (.generated .part 40))))])))), (.mk (.bind (.generated .operand 44)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 42)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 41))]) (.mk [] (.move (.generated .part 41))))]))]) (tail := (.matchOn (.move (.generated .holder 42)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 40)), .wild]) (.mk [] (.move (.generated .part 40))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 40))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.option .nat), .bool, (.adt 1)]) (rd := (.move (.generated .part 41))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 47)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 46))]) (.mk [] (.move (.generated .part 46))))]))]) (tail := (.matchOn (.move (.generated .holder 47)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 45))]) (.mk [] (.move (.generated .part 45))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 45))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.option .nat), .bool, (.adt 1)]) (rd := (.move (.generated .part 46))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))))))) rfl)) (Corr.lNil))))) rfl)) (Corr.fOfB (Corr.build (ts := [(.option .nat), .bool, (.adt 1)]) (mask := [false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.option .nat), .bool, (.adt 1)]) (rd := (.move (.generated .part 48))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl))))) rfl rfl rfl)⟩⟩ - -theorem fun8 : FunOK program krate flags 8 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 11) [(.copy (.generated .binding 0))] false), [(0, .nat, (some 0))], rfl, rfl, - (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun9 : FunOK program krate flags 9 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 50)) none (.block (.mk [(.mk (.bind (.generated .operand 49)) none (.move (.generated .binding 1)))] (.call (.runtime .lengthList) [(.move (.generated .operand 49))] false)))), (.mk (.bind (.generated .operand 51)) none (.lit (.nat 4)))], (.call (.runtime .natLe) [(.move (.generated .operand 50)), (.move (.generated .operand 51))] false), [(1, (.list .nat), (some 1)), (0, .nat, none)], rfl, rfl, - (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 49)) none (.move (.generated .binding 1)))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 49))] false)) (Corr.prim (ts := [(.list .nat)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun10 : FunOK program krate flags 10 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 12) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] true) (.mk [] (.succeed (.construct .some [(.copy (.generated .binding 1))]))) (.mk [] (.succeed (.construct (.none .nat) [])))), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 12) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] true)) (lk := []) (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.copy (.generated .binding 1))]))) (lb := []) (tb := (.succeed (.construct (.none .nat) []))) (Corr.fOfB (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))⟩⟩ - -theorem fun11 : FunOK program krate flags 11 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 52)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 53)) none (.lit (.nat 10)))] (.call (.runtime .natSub) [(.move (.generated .operand 52)), (.move (.generated .operand 53))] false))), (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 54)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 55)) none (.lit (.nat 20)))] (.call (.runtime .natSub) [(.move (.generated .operand 54)), (.move (.generated .operand 55))] false))), (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 56)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 57)) none (.lit (.nat 30)))] (.call (.runtime .natSub) [(.move (.generated .operand 56)), (.move (.generated .operand 57))] false))), (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 58)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 59)) none (.lit (.nat 50)))] (.call (.runtime .natSub) [(.move (.generated .operand 58)), (.move (.generated .operand 59))] false))), (.construct (.nil .nat) [])])])])]), [(0, .nat, (some 0))], rfl, rfl, - (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 52)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 53)) none (.lit (.nat 10)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 52)), (.move (.generated .operand 53))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 54)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 55)) none (.lit (.nat 20)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 54)), (.move (.generated .operand 55))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 56)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 57)) none (.lit (.nat 30)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 56)), (.move (.generated .operand 57))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 58)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 59)) none (.lit (.nat 50)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 58)), (.move (.generated .operand 59))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)⟩⟩ - -theorem fun12 : FunOK program krate flags 12 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 62)) none (.block (.mk [(.mk (.bind (.generated .operand 60)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 61)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] true)))), (.mk (.bind (.generated .operand 63)) none (.copy (.generated .binding 0)))], (.succeed (.call (.runtime .natLe) [(.move (.generated .operand 62)), (.move (.generated .operand 63))] false)), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.fOfB (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 60)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 61)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | 3 => exact fun3 - | 4 => exact fun4 - | 5 => exact fun5 - | 6 => exact fun6 - | 7 => exact fun7 - | 8 => exact fun8 - | 9 => exact fun9 - | 10 => exact fun10 - | 11 => exact fun11 - | 12 => exact fun12 - | _ + 13 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.RustStd diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R5.lean b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R5.lean deleted file mode 100644 index 2ad2572b4..000000000 --- a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R5.lean +++ /dev/null @@ -1,382 +0,0 @@ -import LexLeanPreservation.Core -import LexLeanPreservation.Values -import LexLeanPreservation.Primitives -import LexLeanPreservation.Fixed -import LexLeanPreservation.Keys -import LexLeanPreservation.Templates -import LexLeanPreservation.Validate -import Reasoning.Budget -import Reasoning.Clinic -import Reasoning.Main -import Reasoning.Planner -import Reasoning.Screening -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -set_option linter.unusedVariables false -namespace LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5 - -def __prog : _root_.LexLeanTarget.TargetSyntax.Program := - { adts := [{ constructors := [[.nat, .nat, .nat, .nat, .nat, .nat]] }, - { constructors := [[(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]] }, - { constructors := [[], [], [], [], [], [], [], []] }], functions := (( - { parameters := [0, 1, 2, 3, 4, 5], types := [.nat, .nat, .nat, .nat, .nat, .nat], result := .nat, - body := (.«match» .nat (.call 1 [(.build (.adt 0) (.adt 0) [(.var 0), (.var 1), (.var 2), (.var 3), (.var 4), (.var 5)])]) [(.arm .ok [6] (.var 6)), (.arm .error [7] (.value .nat (.nat 9)))]) }) ::( - { parameters := [0], types := [(.adt 0)], result := (.result .nat (.pair .bool .bool)), - body := (.«let» 1 (.pair (.adt 1) .bool) (.call 2 [(.var 0)]) (.«match» (.result .nat (.pair .bool .bool)) (.second (.var 1)) [(.arm .true [] (.call 3 [(.var 0), (.first (.var 1))])), (.arm .false [] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])]))])) }) ::( - { parameters := [0], types := [(.adt 0)], result := (.pair (.adt 1) .bool), - body := (.call 4 [(.closure 5 []), (.value .nat (.nat 11)), (.call 6 [(.var 0)])]) }) ::( - { parameters := [0, 1], types := [(.adt 0), (.adt 1)], result := (.result .nat (.pair .bool .bool)), - body := (.«match» (.result .nat (.pair .bool .bool)) (.call 7 [(.var 0), (.var 1)]) [(.arm .some [2] (.build .ok (.result .nat (.pair .bool .bool)) [(.var 2)])), (.arm .none [] (.«match» (.result .nat (.pair .bool .bool)) (.call 8 [(.var 1)]) [(.arm .some [3] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])])])), (.arm .none [] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])])]))]))]) }) ::( - { parameters := [0, 1, 2], types := [(.fn [(.adt 1)] (.option (.adt 1))), .nat, (.adt 1)], result := (.pair (.adt 1) .bool), - body := (.«match» (.pair (.adt 1) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.adt 1) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.adt 1) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.adt 1) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 4 [(.var 0), (.var 3), (.var 4)]))]))]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.«match» (.option (.adt 1)) (.call 9 [(.var 0)]) [(.arm .none [] (.build .none (.option (.adt 1)) [])), (.arm .some [1] (.call 10 [(.var 0), (.var 1)]))]) }) ::( - { parameters := [0], types := [(.adt 0)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.var 0), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0))]) }) ::( - { parameters := [0, 1], types := [(.adt 0), (.adt 1)], result := (.option .nat), - body := (.call 8 [(.var 1)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option .nat), - body := (.build .some (.option .nat) [(.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 2)), - body := (.«match» (.option (.adt 2)) (.«match» (.option (.adt 2)) (.«match» (.option (.adt 2)) (.cond (.call 11 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 0) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [1] (.build .some (.option (.adt 2)) [(.var 1)])), (.arm .none [] (.cond (.call 12 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 1) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]) [(.arm .some [2] (.build .some (.option (.adt 2)) [(.var 2)])), (.arm .none [] (.«match» (.option (.adt 2)) (.cond (.call 13 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 2) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [3] (.build .some (.option (.adt 2)) [(.var 3)])), (.arm .none [] (.cond (.call 14 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 3) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]))]) [(.arm .some [4] (.build .some (.option (.adt 2)) [(.var 4)])), (.arm .none [] (.«match» (.option (.adt 2)) (.«match» (.option (.adt 2)) (.cond (.call 15 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 4) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [5] (.build .some (.option (.adt 2)) [(.var 5)])), (.arm .none [] (.cond (.call 16 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 5) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]) [(.arm .some [6] (.build .some (.option (.adt 2)) [(.var 6)])), (.arm .none [] (.«match» (.option (.adt 2)) (.cond (.call 17 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 6) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [7] (.build .some (.option (.adt 2)) [(.var 7)])), (.arm .none [] (.cond (.call 18 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 7) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]))]))]) }) ::( - { parameters := [0, 1], types := [(.adt 1), (.adt 2)], result := (.option (.adt 1)), - body := (.«match» (.option (.adt 1)) (.var 1) [(.arm (.adt 0) [] (.call 19 [(.var 0)])), (.arm (.adt 1) [] (.call 20 [(.var 0)])), (.arm (.adt 2) [] (.call 21 [(.var 0)])), (.arm (.adt 3) [] (.call 22 [(.var 0)])), (.arm (.adt 4) [] (.call 23 [(.var 0)])), (.arm (.adt 5) [] (.call 24 [(.var 0)])), (.arm (.adt 6) [] (.call 25 [(.var 0)])), (.arm (.adt 7) [] (.call 26 [(.var 0)]))]) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 1), (.value .nat (.nat 0))]) (.call 27 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 2), (.value .nat (.nat 0))]) (.call 28 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 3), (.value .nat (.nat 0))]) (.call 29 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 4), (.value .nat (.nat 0))]) (.call 30 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 0))]) (.prim .natLe [(.value .nat (.nat 2)), (.prim .natAdd [(.prim .natAdd [(.prim .natAdd [(.field (.var 0) 1), (.field (.var 0) 2)]), (.field (.var 0) 3)]), (.field (.var 0) 4)])]) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 0))]) (.cond (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 1))]) (.prim .natEq [(.field (.field (.var 0) 0) 5), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 7), (.value .nat (.nat 0))]) (.cond (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 1))]) (.call 31 [(.field (.var 0) 0)]) (.build .false .bool [])) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natLt [(.field (.var 0) 8), (.value .nat (.nat 3))]) (.cond (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 0))]) (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .true .bool []) (.cond (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 1))]) (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .true .bool []) (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 2))]) (.prim .natEq [(.field (.var 0) 7), (.value .nat (.nat 1))]) (.build .false .bool [])))) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 11 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 32 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 12 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 33 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 13 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 34 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 14 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 35 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 15 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 36 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 16 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 37 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 17 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 38 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 18 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 39 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.prim .natLt [(.value .nat (.nat 380)), (.field (.var 0) 0)]) }) ::( - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.prim .natLt [(.value .nat (.nat 90)), (.field (.var 0) 1)]) }) ::( - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.prim .natLt [(.value .nat (.nat 20)), (.field (.var 0) 2)]) }) ::( - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.prim .natLt [(.value .nat (.nat 12)), (.field (.var 0) 3)]) }) ::( - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.prim .natLt [(.field (.var 0) 4), (.value .nat (.nat 90))]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.value .nat (.nat 1)), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.value .nat (.nat 1)), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.value .nat (.nat 1)), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.value .nat (.nat 1)), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.value .nat (.nat 1)), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.value .nat (.nat 1)), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.value .nat (.nat 1)), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.prim .natAdd [(.field (.var 0) 8), (.value .nat (.nat 1))])]) }) ::[]) } - -def __enc_0 (__s : (Reasoning.Clinic.Vitals)) : _root_.LexLeanTarget.TargetSyntax.Value := - _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).temperature), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).heartRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).respiratoryRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).whiteCells), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).systolic), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).infection)] - -def __enc_1 (__s : (Reasoning.Clinic.Chart)) : _root_.LexLeanTarget.TargetSyntax.Value := - _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [(__enc_0 (__s).vitals), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).fever), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).tachycardia), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).tachypnea), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).leukocytosis), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).sirs), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).sepsis), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).shock), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).level)] - -def __enc_2 : (Reasoning.Main.Grade.Step) -> _root_.LexLeanTarget.TargetSyntax.Value - | Reasoning.Main.Grade.Step.Fever => _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [] - | Reasoning.Main.Grade.Step.Tachycardia => _root_.LexLeanTarget.TargetSyntax.Value.adt 1 [] - | Reasoning.Main.Grade.Step.Tachypnea => _root_.LexLeanTarget.TargetSyntax.Value.adt 2 [] - | Reasoning.Main.Grade.Step.Leukocytosis => _root_.LexLeanTarget.TargetSyntax.Value.adt 3 [] - | Reasoning.Main.Grade.Step.Sirs => _root_.LexLeanTarget.TargetSyntax.Value.adt 4 [] - | Reasoning.Main.Grade.Step.Sepsis => _root_.LexLeanTarget.TargetSyntax.Value.adt 5 [] - | Reasoning.Main.Grade.Step.Shock => _root_.LexLeanTarget.TargetSyntax.Value.adt 6 [] - | Reasoning.Main.Grade.Step.Escalate => _root_.LexLeanTarget.TargetSyntax.Value.adt 7 [] - -def __fits_27 (v : (Reasoning.Clinic.Vitals)) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_27 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 27 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_27 v) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.feverish v))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (380 : Nat) (v).temperature)) - -def __fits_11 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).fever (0 : Nat)) then ((Bool.true && Bool.true) && (__fits_27 ((s).vitals))) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.feverish in -theorem __rel_11 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 11 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_11 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Fever.guard s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && (__fits_27 ((s).vitals))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Reasoning.Clinic.feverish ((s).vitals)))) (Nat.beq (s).fever (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).fever (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_27 ((s).vitals)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) - -def __fits_28 (v : (Reasoning.Clinic.Vitals)) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_28 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 28 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_28 v) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.tachycardic v))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (90 : Nat) (v).heartRate)) - -def __fits_12 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).tachycardia (0 : Nat)) then ((Bool.true && Bool.true) && (__fits_28 ((s).vitals))) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.tachycardic in -theorem __rel_12 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 12 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_12 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Tachycardia.guard s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && (__fits_28 ((s).vitals))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Reasoning.Clinic.tachycardic ((s).vitals)))) (Nat.beq (s).tachycardia (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).tachycardia (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_28 ((s).vitals)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) - -def __fits_29 (v : (Reasoning.Clinic.Vitals)) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_29 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 29 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_29 v) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.tachypneic v))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (20 : Nat) (v).respiratoryRate)) - -def __fits_13 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).tachypnea (0 : Nat)) then ((Bool.true && Bool.true) && (__fits_29 ((s).vitals))) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.tachypneic in -theorem __rel_13 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 13 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_13 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Tachypnea.guard s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && (__fits_29 ((s).vitals))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Reasoning.Clinic.tachypneic ((s).vitals)))) (Nat.beq (s).tachypnea (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).tachypnea (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_29 ((s).vitals)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) - -def __fits_30 (v : (Reasoning.Clinic.Vitals)) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_30 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 30 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_30 v) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.leukocytic v))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (12 : Nat) (v).whiteCells)) - -def __fits_14 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).leukocytosis (0 : Nat)) then ((Bool.true && Bool.true) && (__fits_30 ((s).vitals))) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.leukocytic in -theorem __rel_14 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 14 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_14 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Leukocytosis.guard s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && (__fits_30 ((s).vitals))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Reasoning.Clinic.leukocytic ((s).vitals)))) (Nat.beq (s).leukocytosis (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).leukocytosis (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_30 ((s).vitals)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) - -def __fits_15 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sirs (0 : Nat)) then ((Bool.true && (((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((s).fever + (s).tachycardia) 18446744073709551616)) && (Bool.true && Bool.true)) && (Nat.blt (((s).fever + (s).tachycardia) + (s).tachypnea) 18446744073709551616)) && (Bool.true && Bool.true)) && (Nat.blt ((((s).fever + (s).tachycardia) + (s).tachypnea) + (s).leukocytosis) 18446744073709551616)) && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) - -theorem __rel_15 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 15 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_15 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Sirs.guard s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((s).fever + (s).tachycardia) 18446744073709551616)) && (Bool.true && Bool.true)) && (Nat.blt (((s).fever + (s).tachycardia) + (s).tachypnea) 18446744073709551616)) && (Bool.true && Bool.true)) && (Nat.blt ((((s).fever + (s).tachycardia) + (s).tachypnea) + (s).leukocytosis) 18446744073709551616)) && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.ble (2 : Nat) ((((s).fever + (s).tachycardia) + (s).tachypnea) + (s).leukocytosis)))) (Nat.beq (s).sirs (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sirs (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (s).fever (s).tachycardia)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((s).fever + (s).tachycardia) (s).tachypnea)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (((s).fever + (s).tachycardia) + (s).tachypnea) (s).leukocytosis)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe (2 : Nat) ((((s).fever + (s).tachycardia) + (s).tachypnea) + (s).leukocytosis)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) - -def __fits_16 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sepsis (0 : Nat)) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sirs (1 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) - -theorem __rel_16 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 16 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_16 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Sepsis.guard s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sirs (1 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && ((Nat.beq (s).sirs (1 : Nat)) && (Nat.beq ((s).vitals).infection (1 : Nat))))) (Nat.beq (s).sepsis (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sepsis (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.beq ((s).vitals).infection (1 : Nat)))) (Nat.beq (s).sirs (1 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sirs (1 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq ((s).vitals).infection (1 : Nat)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) - -def __fits_31 (v : (Reasoning.Clinic.Vitals)) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_31 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 31 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_31 v) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.hypotensive v))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (v).systolic (90 : Nat))) - -def __fits_17 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).shock (0 : Nat)) then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sepsis (1 : Nat)) then ((Bool.true && Bool.true) && (__fits_31 ((s).vitals))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.hypotensive in -theorem __rel_17 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 17 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_17 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Shock.guard s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).sepsis (1 : Nat)) then ((Bool.true && Bool.true) && (__fits_31 ((s).vitals))) else (Bool.true && Bool.true))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && ((Nat.beq (s).sepsis (1 : Nat)) && (Reasoning.Clinic.hypotensive ((s).vitals))))) (Nat.beq (s).shock (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).shock (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && (__fits_31 ((s).vitals))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Reasoning.Clinic.hypotensive ((s).vitals)))) (Nat.beq (s).sepsis (1 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sepsis (1 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_31 ((s).vitals)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) - -def __fits_18 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.blt (s).level (3 : Nat)) then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (0 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if ((Nat.beq (s).level (0 : Nat)) && (Nat.beq (s).sirs (1 : Nat))) then (Bool.true && Bool.true) else ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (1 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if ((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (2 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))))))) else (Bool.true && Bool.true))) - -theorem __rel_18 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 18 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_18 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Clinic.Escalate.guard s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (0 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if ((Nat.beq (s).level (0 : Nat)) && (Nat.beq (s).sirs (1 : Nat))) then (Bool.true && Bool.true) else ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (1 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if ((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (2 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))))))) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (((Nat.beq (s).level (0 : Nat)) && (Nat.beq (s).sirs (1 : Nat))) || (((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) || ((Nat.beq (s).level (2 : Nat)) && (Nat.beq (s).shock (1 : Nat))))))) (Nat.blt (s).level (3 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (s).level (3 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (Bool.true && Bool.true) else ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (1 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) && (if ((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (2 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)))))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b || (((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) || ((Nat.beq (s).level (2 : Nat)) && (Nat.beq (s).shock (1 : Nat)))))) ((Nat.beq (s).level (0 : Nat)) && (Nat.beq (s).sirs (1 : Nat))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.beq (s).sirs (1 : Nat)))) (Nat.beq (s).level (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).level (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sirs (1 : Nat)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).level (2 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b || ((Nat.beq (s).level (2 : Nat)) && (Nat.beq (s).shock (1 : Nat))))) ((Nat.beq (s).level (1 : Nat)) && (Nat.beq (s).sepsis (1 : Nat))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.beq (s).sepsis (1 : Nat)))) (Nat.beq (s).level (1 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).level (1 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).sepsis (1 : Nat)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.beq (s).shock (1 : Nat)))) (Nat.beq (s).level (2 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).level (2 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).shock (1 : Nat)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))))))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) - -def __fits_9 (_ys : (Reasoning.Clinic.Chart)) : Bool := - ((((((Bool.true && Bool.true) && (__fits_11 (_ys))) && (if (Reasoning.Clinic.Fever.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Fever : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_12 (_ys))) && (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) && (match (match (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Fever : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Main.Grade.Step))) | Option.none => (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Tachycardia : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step))))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((Bool.true && Bool.true) && (__fits_13 (_ys))) && (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Tachypnea : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_14 (_ys))) && (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))) && (match (match (match (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Fever : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Main.Grade.Step))) | Option.none => (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Tachycardia : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step))))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Main.Grade.Step))) | Option.none => (match (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Tachypnea : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Main.Grade.Step))) | Option.none => (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Leukocytosis : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((((Bool.true && Bool.true) && (__fits_15 (_ys))) && (if (Reasoning.Clinic.Sirs.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Sirs : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_16 (_ys))) && (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) && (match (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Sirs : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Main.Grade.Step))) | Option.none => (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Sepsis : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step))))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((Bool.true && Bool.true) && (__fits_17 (_ys))) && (if (Reasoning.Clinic.Shock.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Shock : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_18 (_ys))) && (if (Reasoning.Clinic.Escalate.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))))) - -attribute [local irreducible] Reasoning.Clinic.Escalate.guard Reasoning.Clinic.Fever.guard Reasoning.Clinic.Leukocytosis.guard Reasoning.Clinic.Sepsis.guard Reasoning.Clinic.Shock.guard Reasoning.Clinic.Sirs.guard Reasoning.Clinic.Tachycardia.guard Reasoning.Clinic.Tachypnea.guard in -theorem __rel_9 (_ys : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 9 [(__enc_1 _ys)] (_root_.LexLeanPreservation.Rel (__fits_9 _ys) ((_root_.LexLeanPreservation.encOption __enc_2) (Reasoning.Main.Grade.select _ys))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Main.Grade.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((((Bool.true && Bool.true) && (__fits_15 (_ys))) && (if (Reasoning.Clinic.Sirs.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Sirs : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_16 (_ys))) && (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) && (match (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Sirs : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Main.Grade.Step))) | Option.none => (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Sepsis : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step))))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((Bool.true && Bool.true) && (__fits_17 (_ys))) && (if (Reasoning.Clinic.Shock.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Shock : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_18 (_ys))) && (if (Reasoning.Clinic.Escalate.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))))) (fun (__a : (Option (Reasoning.Main.Grade.Step))) => (_root_.LexLeanPreservation.encOption __enc_2) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Main.Grade.Step))) | Option.none => (match (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Sirs : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Main.Grade.Step))) | Option.none => (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Sepsis : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step))))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Main.Grade.Step))) | Option.none => (match (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Shock : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Main.Grade.Step))) | Option.none => (if (Reasoning.Clinic.Escalate.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Escalate : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))))))) (match (match (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Fever : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Main.Grade.Step))) | Option.none => (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Tachycardia : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step))))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Main.Grade.Step))) | Option.none => (match (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Tachypnea : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Main.Grade.Step))) | Option.none => (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Leukocytosis : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))))) (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Main.Grade.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((Bool.true && Bool.true) && (__fits_13 (_ys))) && (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Tachypnea : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_14 (_ys))) && (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))) (fun (__a : (Option (Reasoning.Main.Grade.Step))) => (_root_.LexLeanPreservation.encOption __enc_2) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Main.Grade.Step))) | Option.none => (match (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Tachypnea : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Main.Grade.Step))) | Option.none => (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Leukocytosis : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step))))))) (match (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Fever : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Main.Grade.Step))) | Option.none => (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Tachycardia : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step))))) (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Main.Grade.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_12 (_ys))) && (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__a : (Option (Reasoning.Main.Grade.Step))) => (_root_.LexLeanPreservation.encOption __enc_2) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Main.Grade.Step))) | Option.none => (if (Reasoning.Clinic.Tachycardia.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Tachycardia : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))))) (if (Reasoning.Clinic.Fever.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Fever : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Main.Grade.Step.Fever : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step))))) (Reasoning.Clinic.Fever.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_11 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (fun (__a : (Option (Reasoning.Main.Grade.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Main.Grade.Step.Tachycardia : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step))))) (Reasoning.Clinic.Tachycardia.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_12 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))) (fun (__a : (Option (Reasoning.Main.Grade.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Main.Grade.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_14 (_ys))) && (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__a : (Option (Reasoning.Main.Grade.Step))) => (_root_.LexLeanPreservation.encOption __enc_2) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Main.Grade.Step))) | Option.none => (if (Reasoning.Clinic.Leukocytosis.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Leukocytosis : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))))) (if (Reasoning.Clinic.Tachypnea.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Tachypnea : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Main.Grade.Step.Tachypnea : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step))))) (Reasoning.Clinic.Tachypnea.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_13 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (fun (__a : (Option (Reasoning.Main.Grade.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Main.Grade.Step.Leukocytosis : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step))))) (Reasoning.Clinic.Leukocytosis.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_14 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))))))) (fun (__a : (Option (Reasoning.Main.Grade.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Main.Grade.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => ((((Bool.true && Bool.true) && (__fits_17 (_ys))) && (if (Reasoning.Clinic.Shock.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (match (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Shock : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_18 (_ys))) && (if (Reasoning.Clinic.Escalate.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))) (fun (__a : (Option (Reasoning.Main.Grade.Step))) => (_root_.LexLeanPreservation.encOption __enc_2) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Main.Grade.Step))) | Option.none => (match (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Shock : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Main.Grade.Step))) | Option.none => (if (Reasoning.Clinic.Escalate.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Escalate : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step))))))) (match (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Sirs : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Main.Grade.Step))) | Option.none => (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Sepsis : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step))))) (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Main.Grade.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_16 (_ys))) && (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__a : (Option (Reasoning.Main.Grade.Step))) => (_root_.LexLeanPreservation.encOption __enc_2) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Main.Grade.Step))) | Option.none => (if (Reasoning.Clinic.Sepsis.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Sepsis : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))))) (if (Reasoning.Clinic.Sirs.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Sirs : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Main.Grade.Step.Sirs : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step))))) (Reasoning.Clinic.Sirs.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_15 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (fun (__a : (Option (Reasoning.Main.Grade.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Main.Grade.Step.Sepsis : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step))))) (Reasoning.Clinic.Sepsis.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_16 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))) (fun (__a : (Option (Reasoning.Main.Grade.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Main.Grade.Step))) => (match __a with | Option.some _yfound => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_18 (_ys))) && (if (Reasoning.Clinic.Escalate.guard (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__a : (Option (Reasoning.Main.Grade.Step))) => (_root_.LexLeanPreservation.encOption __enc_2) (match __a with | Option.some _yfound => (Option.some (_yfound) : (Option (Reasoning.Main.Grade.Step))) | Option.none => (if (Reasoning.Clinic.Escalate.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Escalate : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))))) (if (Reasoning.Clinic.Shock.guard (_ys)) then (Option.some ((Reasoning.Main.Grade.Step.Shock : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step)))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Main.Grade.Step.Shock : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step))))) (Reasoning.Clinic.Shock.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_17 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (fun (__a : (Option (Reasoning.Main.Grade.Step))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_2) (if __b then (Option.some ((Reasoning.Main.Grade.Step.Escalate : (Reasoning.Main.Grade.Step))) : (Option (Reasoning.Main.Grade.Step))) else (Option.none : (Option (Reasoning.Main.Grade.Step))))) (Reasoning.Clinic.Escalate.guard (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_18 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))))))))))) - -def __fits_32 (s : (Reasoning.Clinic.Chart)) : Bool := - ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) - -theorem __rel_32 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 32 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_32 s) (__enc_1 (Reasoning.Clinic.Fever.conclusion s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) - -def __fits_19 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && Bool.true) && (__fits_11 (s))) && (if (Reasoning.Clinic.Fever.guard (s)) then ((((Bool.true && Bool.true) && (__fits_32 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.Fever.conclusion Reasoning.Clinic.Fever.guard in -theorem __rel_19 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 19 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_19 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Fever.apply s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_32 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Fever.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Fever.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_11 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_32 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_33 (s : (Reasoning.Clinic.Chart)) : Bool := - ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) - -theorem __rel_33 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 33 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_33 s) (__enc_1 (Reasoning.Clinic.Tachycardia.conclusion s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) - -def __fits_20 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && Bool.true) && (__fits_12 (s))) && (if (Reasoning.Clinic.Tachycardia.guard (s)) then ((((Bool.true && Bool.true) && (__fits_33 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.Tachycardia.conclusion Reasoning.Clinic.Tachycardia.guard in -theorem __rel_20 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 20 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_20 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Tachycardia.apply s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_33 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Tachycardia.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Tachycardia.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_12 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_33 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_34 (s : (Reasoning.Clinic.Chart)) : Bool := - ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) - -theorem __rel_34 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 34 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_34 s) (__enc_1 (Reasoning.Clinic.Tachypnea.conclusion s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) - -def __fits_21 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && Bool.true) && (__fits_13 (s))) && (if (Reasoning.Clinic.Tachypnea.guard (s)) then ((((Bool.true && Bool.true) && (__fits_34 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.Tachypnea.conclusion Reasoning.Clinic.Tachypnea.guard in -theorem __rel_21 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 21 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_21 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Tachypnea.apply s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_34 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Tachypnea.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Tachypnea.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_13 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_34 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_35 (s : (Reasoning.Clinic.Chart)) : Bool := - ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) - -theorem __rel_35 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 35 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_35 s) (__enc_1 (Reasoning.Clinic.Leukocytosis.conclusion s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) - -def __fits_22 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && Bool.true) && (__fits_14 (s))) && (if (Reasoning.Clinic.Leukocytosis.guard (s)) then ((((Bool.true && Bool.true) && (__fits_35 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.Leukocytosis.conclusion Reasoning.Clinic.Leukocytosis.guard in -theorem __rel_22 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 22 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_22 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Leukocytosis.apply s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_35 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Leukocytosis.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Leukocytosis.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_14 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_35 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_36 (s : (Reasoning.Clinic.Chart)) : Bool := - ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) - -theorem __rel_36 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 36 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_36 s) (__enc_1 (Reasoning.Clinic.Sirs.conclusion s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) - -def __fits_23 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && Bool.true) && (__fits_15 (s))) && (if (Reasoning.Clinic.Sirs.guard (s)) then ((((Bool.true && Bool.true) && (__fits_36 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.Sirs.conclusion Reasoning.Clinic.Sirs.guard in -theorem __rel_23 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 23 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_23 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Sirs.apply s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_36 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Sirs.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Sirs.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_15 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_36 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_37 (s : (Reasoning.Clinic.Chart)) : Bool := - ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) - -theorem __rel_37 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 37 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_37 s) (__enc_1 (Reasoning.Clinic.Sepsis.conclusion s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) - -def __fits_24 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && Bool.true) && (__fits_16 (s))) && (if (Reasoning.Clinic.Sepsis.guard (s)) then ((((Bool.true && Bool.true) && (__fits_37 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.Sepsis.conclusion Reasoning.Clinic.Sepsis.guard in -theorem __rel_24 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 24 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_24 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Sepsis.apply s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_37 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Sepsis.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Sepsis.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_16 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_37 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_38 (s : (Reasoning.Clinic.Chart)) : Bool := - ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) - -theorem __rel_38 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 38 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_38 s) (__enc_1 (Reasoning.Clinic.Shock.conclusion s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) - -def __fits_25 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && Bool.true) && (__fits_17 (s))) && (if (Reasoning.Clinic.Shock.guard (s)) then ((((Bool.true && Bool.true) && (__fits_38 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.Shock.conclusion Reasoning.Clinic.Shock.guard in -theorem __rel_25 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 25 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_25 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Shock.apply s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_38 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Shock.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Shock.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_17 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_38 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_39 (s : (Reasoning.Clinic.Chart)) : Bool := - ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((s).level + (1 : Nat)) 18446744073709551616)) && Bool.true))))))))) && Bool.true) - -theorem __rel_39 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 39 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_39 s) (__enc_1 (Reasoning.Clinic.Escalate.conclusion s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (s).level (1 : Nat))) _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) - -def __fits_26 (s : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && Bool.true) && (__fits_18 (s))) && (if (Reasoning.Clinic.Escalate.guard (s)) then ((((Bool.true && Bool.true) && (__fits_39 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Clinic.Escalate.conclusion Reasoning.Clinic.Escalate.guard in -theorem __rel_26 (s : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 26 [(__enc_1 s)] (_root_.LexLeanPreservation.Rel (__fits_26 s) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Clinic.Escalate.apply s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_39 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_1) (if __b then (Option.some ((Reasoning.Clinic.Escalate.conclusion (s))) : (Option (Reasoning.Clinic.Chart))) else (Option.none : (Option (Reasoning.Clinic.Chart))))) (Reasoning.Clinic.Escalate.guard (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_18 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_39 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_10 (_ys : (Reasoning.Clinic.Chart)) (_ystep : (Reasoning.Main.Grade.Step)) : Bool := - (Bool.true && (match _ystep with | Reasoning.Main.Grade.Step.Fever => ((Bool.true && Bool.true) && (__fits_19 (_ys))) | Reasoning.Main.Grade.Step.Tachycardia => ((Bool.true && Bool.true) && (__fits_20 (_ys))) | Reasoning.Main.Grade.Step.Tachypnea => ((Bool.true && Bool.true) && (__fits_21 (_ys))) | Reasoning.Main.Grade.Step.Leukocytosis => ((Bool.true && Bool.true) && (__fits_22 (_ys))) | Reasoning.Main.Grade.Step.Sirs => ((Bool.true && Bool.true) && (__fits_23 (_ys))) | Reasoning.Main.Grade.Step.Sepsis => ((Bool.true && Bool.true) && (__fits_24 (_ys))) | Reasoning.Main.Grade.Step.Shock => ((Bool.true && Bool.true) && (__fits_25 (_ys))) | Reasoning.Main.Grade.Step.Escalate => ((Bool.true && Bool.true) && (__fits_26 (_ys))))) - -attribute [local irreducible] Reasoning.Clinic.Escalate.apply Reasoning.Clinic.Fever.apply Reasoning.Clinic.Leukocytosis.apply Reasoning.Clinic.Sepsis.apply Reasoning.Clinic.Shock.apply Reasoning.Clinic.Sirs.apply Reasoning.Clinic.Tachycardia.apply Reasoning.Clinic.Tachypnea.apply in -theorem __rel_10 (_ys : (Reasoning.Clinic.Chart)) (_ystep : (Reasoning.Main.Grade.Step)) : _root_.LexLeanPreservation.FunRel __prog 10 [(__enc_1 _ys), (__enc_2 _ystep)] (_root_.LexLeanPreservation.Rel (__fits_10 _ys _ystep) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Main.Grade.fire _ys _ystep))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV __enc_2 (fun (__a : (Reasoning.Main.Grade.Step)) => (match __a with | Reasoning.Main.Grade.Step.Fever => ((Bool.true && Bool.true) && (__fits_19 (_ys))) | Reasoning.Main.Grade.Step.Tachycardia => ((Bool.true && Bool.true) && (__fits_20 (_ys))) | Reasoning.Main.Grade.Step.Tachypnea => ((Bool.true && Bool.true) && (__fits_21 (_ys))) | Reasoning.Main.Grade.Step.Leukocytosis => ((Bool.true && Bool.true) && (__fits_22 (_ys))) | Reasoning.Main.Grade.Step.Sirs => ((Bool.true && Bool.true) && (__fits_23 (_ys))) | Reasoning.Main.Grade.Step.Sepsis => ((Bool.true && Bool.true) && (__fits_24 (_ys))) | Reasoning.Main.Grade.Step.Shock => ((Bool.true && Bool.true) && (__fits_25 (_ys))) | Reasoning.Main.Grade.Step.Escalate => ((Bool.true && Bool.true) && (__fits_26 (_ys))))) (fun (__a : (Reasoning.Main.Grade.Step)) => (_root_.LexLeanPreservation.encOption __enc_1) (match __a with | Reasoning.Main.Grade.Step.Fever => (Reasoning.Clinic.Fever.apply (_ys)) | Reasoning.Main.Grade.Step.Tachycardia => (Reasoning.Clinic.Tachycardia.apply (_ys)) | Reasoning.Main.Grade.Step.Tachypnea => (Reasoning.Clinic.Tachypnea.apply (_ys)) | Reasoning.Main.Grade.Step.Leukocytosis => (Reasoning.Clinic.Leukocytosis.apply (_ys)) | Reasoning.Main.Grade.Step.Sirs => (Reasoning.Clinic.Sirs.apply (_ys)) | Reasoning.Main.Grade.Step.Sepsis => (Reasoning.Clinic.Sepsis.apply (_ys)) | Reasoning.Main.Grade.Step.Shock => (Reasoning.Clinic.Shock.apply (_ys)) | Reasoning.Main.Grade.Step.Escalate => (Reasoning.Clinic.Escalate.apply (_ys)))) _ystep (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (Reasoning.Main.Grade.Step)) _ => match __a with | Reasoning.Main.Grade.Step.Fever => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_19 (_ys)))) | Reasoning.Main.Grade.Step.Tachycardia => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_20 (_ys))))) | Reasoning.Main.Grade.Step.Tachypnea => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_21 (_ys)))))) | Reasoning.Main.Grade.Step.Leukocytosis => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_22 (_ys))))))) | Reasoning.Main.Grade.Step.Sirs => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_23 (_ys)))))))) | Reasoning.Main.Grade.Step.Sepsis => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_24 (_ys))))))))) | Reasoning.Main.Grade.Step.Shock => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_25 (_ys)))))))))) | Reasoning.Main.Grade.Step.Escalate => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_26 (_ys))))))))))))) - -def __fits_5 (_ys : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && Bool.true) && (__fits_9 (_ys))) && (match (Reasoning.Main.Grade.select (_ys)) with | Option.none => (Bool.true && Bool.true) | Option.some _ystep => ((Bool.true && (Bool.true && Bool.true)) && (__fits_10 (_ys) (_ystep))))) - -attribute [local irreducible] Reasoning.Main.Grade.fire Reasoning.Main.Grade.select in -theorem __rel_5 (_ys : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 5 [(__enc_1 _ys)] (_root_.LexLeanPreservation.Rel (__fits_5 _ys) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Main.Grade.next _ys))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_2) (fun (__a : (Option (Reasoning.Main.Grade.Step))) => (match __a with | Option.none => (Bool.true && Bool.true) | Option.some _ystep => ((Bool.true && (Bool.true && Bool.true)) && (__fits_10 (_ys) (_ystep))))) (fun (__a : (Option (Reasoning.Main.Grade.Step))) => (_root_.LexLeanPreservation.encOption __enc_1) (match __a with | Option.none => (Option.none : (Option (Reasoning.Clinic.Chart))) | Option.some _ystep => (Reasoning.Main.Grade.fire (_ys) (_ystep)))) (Reasoning.Main.Grade.select (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_9 (_ys))) (fun (__a : (Option (Reasoning.Main.Grade.Step))) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) | Option.some _ystep => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_10 (_ys) (_ystep))))))) - -def __fits_6 (v : (Reasoning.Clinic.Vitals)) : Bool := - ((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true))))))))) && Bool.true) - -theorem __rel_6 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 6 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_6 v) (__enc_1 (Reasoning.Main.Grade.observe v))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))))))))) _root_.LexLeanPreservation.construct_adt) - -def __fits_2 (v : (Reasoning.Clinic.Vitals)) : Bool := - ((Bool.true && (Bool.true && (((Bool.true && Bool.true) && (__fits_6 (v))) && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : (Reasoning.Clinic.Chart)) => __fits_5 __p0) ((Reasoning.Main.Grade.next)) ((11 : Nat)) ((Reasoning.Main.Grade.observe (v))))) - -attribute [local irreducible] Reasoning.Main.Grade.observe in -theorem __rel_2 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 2 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_2 v) ((_root_.LexLeanPreservation.encPair __enc_1 _root_.LexLeanTarget.TargetSyntax.Value.bool) (Reasoning.Main.Grade.saturate v))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_6 (v))) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterateUntil (es := __enc_1) (_root_.LexLeanPreservation.optEnc __enc_1) (fun _ => rfl) (_root_.LexLeanPreservation.encPair __enc_1 _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) ((Reasoning.Main.Grade.next)) (fun (__p0 : (Reasoning.Clinic.Chart)) => __fits_5 __p0) 5 [] (fun (__p0 : (Reasoning.Clinic.Chart)) => __rel_5 __p0) (_root_.LexLeanCollections.iterateUntil ((Reasoning.Main.Grade.next))) (fun _ => rfl) (fun _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (p := __prog) (fi := 4) (ts := (.adt 1)) rfl ((11 : Nat)) ((Reasoning.Main.Grade.observe (v))))) - -def __fits_8 (chart : (Reasoning.Clinic.Chart)) : Bool := - ((Bool.true && Bool.true) && Bool.true) - -theorem __rel_8 (chart : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 8 [(__enc_1 chart)] (_root_.LexLeanPreservation.Rel (__fits_8 chart) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Main.Grade.extract chart))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some) - -def __fits_7 (v : (Reasoning.Clinic.Vitals)) (_ys : (Reasoning.Clinic.Chart)) : Bool := - ((Bool.true && Bool.true) && (__fits_8 (_ys))) - -attribute [local irreducible] Reasoning.Main.Grade.extract in -theorem __rel_7 (v : (Reasoning.Clinic.Vitals)) (_ys : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 7 [(__enc_0 v), (__enc_1 _ys)] (_root_.LexLeanPreservation.Rel (__fits_7 v _ys) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Main.Grade.accept v _ys))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_8 (_ys))) - -def __fits_3 (v : (Reasoning.Clinic.Vitals)) (_ys : (Reasoning.Clinic.Chart)) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && (__fits_7 (v) (_ys))) && (match (Reasoning.Main.Grade.accept (v) (_ys)) with | Option.some _yv => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_8 (_ys))) && (match (Reasoning.Main.Grade.extract (_ys)) with | Option.some _yv => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) - -attribute [local irreducible] Reasoning.Main.Grade.accept Reasoning.Main.Grade.extract in -theorem __rel_3 (v : (Reasoning.Clinic.Vitals)) (_ys : (Reasoning.Clinic.Chart)) : _root_.LexLeanPreservation.FunRel __prog 3 [(__enc_0 v), (__enc_1 _ys)] (_root_.LexLeanPreservation.Rel (__fits_3 v _ys) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Main.Grade.conclude v _ys))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Option Nat)) => (match __a with | Option.some _yv => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_8 (_ys))) && (match (Reasoning.Main.Grade.extract (_ys)) with | Option.some _yv => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) (fun (__a : (Option Nat)) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (match __a with | Option.some _yv => (Except.ok (_yv) : (Except (Prod Bool Bool) Nat)) | Option.none => (match (Reasoning.Main.Grade.extract (_ys)) with | Option.some _yv => (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)) | Option.none => (Except.error (((Bool.false, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat))))) (Reasoning.Main.Grade.accept (v) (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_7 (v) (_ys))) (fun (__a : (Option Nat)) _ => match __a with | Option.some _yv => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Option Nat)) => (match __a with | Option.some _yv => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__a : (Option Nat)) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (match __a with | Option.some _yv => (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)) | Option.none => (Except.error (((Bool.false, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)))) (Reasoning.Main.Grade.extract (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_8 (_ys))) (fun (__a : (Option Nat)) _ => match __a with | Option.some _yv => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error))))))))) - -def __fits_1 (v : (Reasoning.Clinic.Vitals)) : Bool := - (((Bool.true && Bool.true) && (__fits_2 (v))) && (let _yfinal : (Prod (Reasoning.Clinic.Chart) Bool) := (Reasoning.Main.Grade.saturate (v)); (Bool.true && (match (_yfinal).2 with | Bool.true => ((Bool.true && (Bool.true && Bool.true)) && (__fits_3 (v) ((_yfinal).1))) | Bool.false => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) - -attribute [local irreducible] Reasoning.Main.Grade.conclude Reasoning.Main.Grade.saturate in -theorem __rel_1 (v : (Reasoning.Clinic.Vitals)) : _root_.LexLeanPreservation.FunRel __prog 1 [(__enc_0 v)] (_root_.LexLeanPreservation.Rel (__fits_1 v) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Main.Grade.verdict v))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (let _yfinal : (Prod (Reasoning.Clinic.Chart) Bool) := (Reasoning.Main.Grade.saturate (v)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_2 (v))) (_root_.LexLeanPreservation.conv_matchV _root_.LexLeanTarget.TargetSyntax.Value.bool (fun (__a : Bool) => (match __a with | Bool.true => ((Bool.true && (Bool.true && Bool.true)) && (__fits_3 (v) ((_yfinal).1))) | Bool.false => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__a : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (match __a with | Bool.true => (Reasoning.Main.Grade.conclude (v) ((_yfinal).1)) | Bool.false => (Except.error (((Bool.false, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)))) (_yfinal).2 (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (fun (__a : Bool) _ => match __a with | Bool.true => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil)) (__rel_3 (v) ((_yfinal).1)))) | Bool.false => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)))))) - -def __fits_0 (temperature : Nat) (heartRate : Nat) (respiratoryRate : Nat) (whiteCells : Nat) (systolic : Nat) (infection : Nat) : Bool := - (((((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true)))))) && Bool.true) && Bool.true) && (__fits_1 (({ temperature := temperature, heartRate := heartRate, respiratoryRate := respiratoryRate, whiteCells := whiteCells, systolic := systolic, infection := infection } : (Reasoning.Clinic.Vitals))))) && (match (Reasoning.Main.Grade.verdict (({ temperature := temperature, heartRate := heartRate, respiratoryRate := respiratoryRate, whiteCells := whiteCells, systolic := systolic, infection := infection } : (Reasoning.Clinic.Vitals)))) with | Except.ok level => Bool.true | Except.error failure => Bool.true)) - -attribute [local irreducible] Reasoning.Main.Grade.verdict in -theorem __rel_0 (temperature : Nat) (heartRate : Nat) (respiratoryRate : Nat) (whiteCells : Nat) (systolic : Nat) (infection : Nat) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat temperature), (_root_.LexLeanTarget.TargetSyntax.Value.nat heartRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat respiratoryRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat whiteCells), (_root_.LexLeanTarget.TargetSyntax.Value.nat systolic), (_root_.LexLeanTarget.TargetSyntax.Value.nat infection)] (_root_.LexLeanPreservation.Rel (__fits_0 temperature heartRate respiratoryRate whiteCells systolic infection) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.gradeLevel temperature heartRate respiratoryRate whiteCells systolic infection))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Except (Prod Bool Bool) Nat)) => (match __a with | Except.ok level => Bool.true | Except.error failure => Bool.true)) (fun (__a : (Except (Prod Bool Bool) Nat)) => _root_.LexLeanTarget.TargetSyntax.Value.nat (match __a with | Except.ok level => level | Except.error failure => (9 : Nat))) (Reasoning.Main.Grade.verdict (({ temperature := temperature, heartRate := heartRate, respiratoryRate := respiratoryRate, whiteCells := whiteCells, systolic := systolic, infection := infection } : (Reasoning.Clinic.Vitals)))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)))))) _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) (__rel_1 (({ temperature := temperature, heartRate := heartRate, respiratoryRate := respiratoryRate, whiteCells := whiteCells, systolic := systolic, infection := infection } : (Reasoning.Clinic.Vitals))))) (fun (__a : (Except (Prod Bool Bool) Nat)) _ => match __a with | Except.ok level => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | Except.error failure => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value)))) - -def denote (temperature : Nat) (heartRate : Nat) (respiratoryRate : Nat) (whiteCells : Nat) (systolic : Nat) (infection : Nat) : _root_.LexLeanPreservation.Obs := - _root_.cond (__fits_0 temperature heartRate respiratoryRate whiteCells systolic infection) (_root_.LexLeanPreservation.Obs.value ((_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.gradeLevel temperature heartRate respiratoryRate whiteCells systolic infection)))) _root_.LexLeanPreservation.Obs.overflow - -theorem root (temperature : Nat) (heartRate : Nat) (respiratoryRate : Nat) (whiteCells : Nat) (systolic : Nat) (infection : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat temperature), (_root_.LexLeanTarget.TargetSyntax.Value.nat heartRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat respiratoryRate), (_root_.LexLeanTarget.TargetSyntax.Value.nat whiteCells), (_root_.LexLeanTarget.TargetSyntax.Value.nat systolic), (_root_.LexLeanTarget.TargetSyntax.Value.nat infection)] (_root_.LexLeanPreservation.Rel (__fits_0 temperature heartRate respiratoryRate whiteCells systolic infection) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.gradeLevel temperature heartRate respiratoryRate whiteCells systolic infection))) := - _root_.LexLeanPreservation.run_of_funRel (__rel_0 temperature heartRate respiratoryRate whiteCells systolic infection) - -end LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5 diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R5/Compose/RustCore.lex.tex b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R5/Compose/RustCore.lex.tex deleted file mode 100644 index 75835e2dc..000000000 --- a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R5/Compose/RustCore.lex.tex +++ /dev/null @@ -1,1341 +0,0 @@ -\begin{lexlean}{RustCore} -\title{Certificate E LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.Compose.RustCore} -\begin{coremodule} -imports [ - LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5, - LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.RustCore, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.Compose.RustCore.__wt_0 : @16 := @716 { - all: [LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.Compose.RustCore.__wt_0], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.Compose.RustCore.__wt_1 : @724 := @1388 { - all: [LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.Compose.RustCore.__wt_1], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.Compose.RustCore.__wt_2 : @1396 := @1631 { - all: [LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.Compose.RustCore.__wt_2], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.Compose.RustCore.root : @2716 := @2717 { - all: [LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.Compose.RustCore.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.RustCore.program -@1 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.RustCore.krate -@2 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.RustCore.flags -@3 := Reasoning.Clinic.Vitals -@4 := #0 -@5 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.__enc_0 -@6 := @5 @4 -@7 := LexLeanPreservation.Rust.WT -@8 := LexLeanTarget.TargetSyntax.Ty.adt -@9 := 0 -@10 := @8 @9 -@11 := @7 @0 -@12 := @11 @1 -@13 := @12 @2 -@16 := (__s : @3) -> @13 @6 @10 -@17 := Reasoning.Clinic.Vitals.temperature -@18 := @17 @4 -@19 := Reasoning.Clinic.Vitals.heartRate -@20 := @19 @4 -@21 := Reasoning.Clinic.Vitals.respiratoryRate -@22 := @21 @4 -@23 := Reasoning.Clinic.Vitals.whiteCells -@24 := @23 @4 -@25 := Reasoning.Clinic.Vitals.systolic -@26 := @25 @4 -@27 := Reasoning.Clinic.Vitals.infection -@28 := @27 @4 -@29 := LexLeanTarget.TargetSyntax.Value.nat -@30 := @29 @18 -@31 := LexLeanTarget.TargetSyntax.Ty.nat -@32 := LexLeanTarget.TargetSyntax.Program -@33 := LexLeanPreservation.Rust.RCrate -@34 := LexLeanPreservation.Rust.Flags -@35 := Nat -@36 := #3 -@37 := @7 @36 -@38 := #2 -@39 := @37 @38 -@40 := #1 -@41 := @39 @40 -@42 := @29 @4 -@48 := {p : @32} -> {c : @33} -> {A : @34} -> (n : @35) -> @41 @42 @31 -@50 := LexLeanPreservation.Rust.wt_nat @0 -@57 := {c : @33} -> {A : @34} -> (n : @35) -> @11 @38 @40 @42 @31 -@58 := @50 @1 -@63 := {A : @34} -> (n : @35) -> @12 @40 @42 @31 -@64 := @58 @2 -@67 := (n : @35) -> @13 @42 @31 -@68 := @64 @18 -@70 := @13 @30 @31 -@71 := @29 @20 -@72 := @64 @20 -@74 := @13 @71 @31 -@75 := @29 @22 -@76 := @64 @22 -@78 := @13 @75 @31 -@79 := @29 @24 -@80 := @64 @24 -@82 := @13 @79 @31 -@83 := @29 @26 -@84 := @64 @26 -@86 := @13 @83 @31 -@87 := @29 @28 -@88 := @64 @28 -@90 := @13 @87 @31 -@91 := LexLeanTarget.TargetSyntax.Value -@92 := LexLeanTarget.TargetSyntax.Ty -@93 := List.nil.{0} -@94 := List.cons.{0} -@95 := @93 @91 -@96 := @94 @91 -@98 := @96 @87 @95 -@100 := @96 @83 @98 -@102 := @96 @79 @100 -@104 := @96 @75 @102 -@106 := @96 @71 @104 -@108 := @96 @30 @106 -@109 := @93 @92 -@110 := @94 @92 -@111 := @110 @31 -@112 := @111 @109 -@113 := @111 @112 -@114 := @111 @113 -@115 := @111 @114 -@116 := @111 @115 -@117 := @111 @116 -@118 := LexLeanPreservation.Rust.WTL -@126 := {p : @32} -> {c : @33} -> {A : @34} -> @118 @38 @40 @4 @95 @109 -@128 := LexLeanPreservation.Rust.wtl_nil @0 -@129 := @118 @0 -@135 := {c : @33} -> {A : @34} -> @129 @40 @4 @95 @109 -@136 := @128 @1 -@137 := @129 @1 -@141 := {A : @34} -> @137 @4 @95 @109 -@142 := @136 @2 -@143 := @137 @2 -@144 := @143 @95 -@145 := @144 @109 -@146 := List.{0} -@147 := @146 @91 -@148 := @146 @92 -@149 := #6 -@150 := @7 @149 -@151 := #5 -@152 := @150 @151 -@153 := #4 -@156 := @152 @153 @36 @38 -@157 := #7 -@162 := @118 @157 @149 @151 @38 @40 -@163 := #8 -@166 := @118 @163 @157 @149 -@168 := @96 @151 @36 -@169 := @166 @168 -@171 := @110 @153 @38 -@181 := {p : @32} -> - {c : @33} -> - {A : @34} -> - {v : @91} -> {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @156) -> (hs : @162) -> @169 @171 -@183 := LexLeanPreservation.Rust.wtl_cons @0 -@187 := @11 @151 @153 @36 @38 -@191 := @129 @149 @151 @38 @40 -@203 := {c : @33} -> - {A : @34} -> - {v : @91} -> - {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @187) -> (hs : @191) -> @129 @157 @149 @168 @171 -@204 := @183 @1 -@207 := @12 @153 @36 @38 -@210 := @137 @151 @38 @40 -@220 := {A : @34} -> - {v : @91} -> - {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @207) -> (hs : @210) -> @137 @149 @168 @171 -@221 := @204 @2 -@223 := @13 @36 @38 -@225 := @143 @38 @40 -@233 := {v : @91} -> - {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @223) -> (hs : @225) -> @143 @168 @171 -@234 := @221 @87 -@236 := @29 (@27 @36) -@249 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @236 @38) -> (hs : @225) -> @143 (@96 (@29 (@27 @151)) @36) @171 -@250 := @234 @31 -@252 := @29 (@27 @38) -@254 := @13 @252 @31 -@259 := @143 (@96 (@29 (@27 @153)) @36) -@260 := @111 @38 -@265 := {vs : @147} -> {ts : @148} -> (h : @254) -> (hs : @225) -> @259 @260 -@266 := @250 @95 -@268 := @29 (@27 @40) -@270 := @13 @268 @31 -@271 := @144 @40 -@273 := @96 @236 @95 -@278 := {ts : @148} -> (h : @270) -> (hs : @271) -> @143 @273 @260 -@279 := @266 @109 -@281 := @96 @252 @95 -@282 := @143 @281 -@285 := (h : @90) -> (hs : @145) -> @282 @112 -@286 := @279 @88 -@288 := @96 @268 @95 -@290 := @143 @288 @112 -@291 := (hs : @145) -> @290 -@292 := @286 @142 -@294 := @143 @98 @112 -@295 := @221 @83 -@297 := @29 (@25 @36) -@310 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @297 @38) -> (hs : @225) -> @143 (@96 (@29 (@25 @151)) @36) @171 -@311 := @295 @31 -@313 := @29 (@25 @38) -@325 := {vs : @147} -> - {ts : @148} -> (h : @13 @313 @31) -> (hs : @225) -> @143 (@96 (@29 (@25 @153)) @36) @260 -@326 := @311 @98 -@328 := @29 (@25 @40) -@330 := @13 @328 @31 -@331 := @282 @40 -@333 := @96 @297 @273 -@338 := {ts : @148} -> (h : @330) -> (hs : @331) -> @143 @333 @260 -@339 := @326 @112 -@341 := @96 @313 @281 -@342 := @143 @341 -@345 := (h : @86) -> (hs : @290) -> @342 @113 -@346 := @339 @84 -@348 := @96 @328 @288 -@350 := @143 @348 @113 -@351 := (hs : @294) -> @350 -@352 := @346 @292 -@354 := @143 @100 @113 -@355 := @221 @79 -@357 := @29 (@23 @36) -@370 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @357 @38) -> (hs : @225) -> @143 (@96 (@29 (@23 @151)) @36) @171 -@371 := @355 @31 -@373 := @29 (@23 @38) -@385 := {vs : @147} -> - {ts : @148} -> (h : @13 @373 @31) -> (hs : @225) -> @143 (@96 (@29 (@23 @153)) @36) @260 -@386 := @371 @100 -@388 := @29 (@23 @40) -@390 := @13 @388 @31 -@391 := @342 @40 -@393 := @96 @357 @333 -@398 := {ts : @148} -> (h : @390) -> (hs : @391) -> @143 @393 @260 -@399 := @386 @113 -@401 := @96 @373 @341 -@402 := @143 @401 -@405 := (h : @82) -> (hs : @350) -> @402 @114 -@406 := @399 @80 -@408 := @96 @388 @348 -@410 := @143 @408 @114 -@411 := (hs : @354) -> @410 -@412 := @406 @352 -@414 := @143 @102 @114 -@415 := @221 @75 -@417 := @29 (@21 @36) -@430 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @417 @38) -> (hs : @225) -> @143 (@96 (@29 (@21 @151)) @36) @171 -@431 := @415 @31 -@433 := @29 (@21 @38) -@445 := {vs : @147} -> - {ts : @148} -> (h : @13 @433 @31) -> (hs : @225) -> @143 (@96 (@29 (@21 @153)) @36) @260 -@446 := @431 @102 -@448 := @29 (@21 @40) -@450 := @13 @448 @31 -@451 := @402 @40 -@453 := @96 @417 @393 -@458 := {ts : @148} -> (h : @450) -> (hs : @451) -> @143 @453 @260 -@459 := @446 @114 -@461 := @96 @433 @401 -@462 := @143 @461 -@465 := (h : @78) -> (hs : @410) -> @462 @115 -@466 := @459 @76 -@468 := @96 @448 @408 -@470 := @143 @468 @115 -@471 := (hs : @414) -> @470 -@472 := @466 @412 -@474 := @143 @104 @115 -@475 := @221 @71 -@477 := @29 (@19 @36) -@490 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @477 @38) -> (hs : @225) -> @143 (@96 (@29 (@19 @151)) @36) @171 -@491 := @475 @31 -@493 := @29 (@19 @38) -@505 := {vs : @147} -> - {ts : @148} -> (h : @13 @493 @31) -> (hs : @225) -> @143 (@96 (@29 (@19 @153)) @36) @260 -@506 := @491 @104 -@508 := @29 (@19 @40) -@510 := @13 @508 @31 -@511 := @462 @40 -@513 := @96 @477 @453 -@518 := {ts : @148} -> (h : @510) -> (hs : @511) -> @143 @513 @260 -@519 := @506 @115 -@521 := @96 @493 @461 -@522 := @143 @521 -@525 := (h : @74) -> (hs : @470) -> @522 @116 -@526 := @519 @72 -@528 := @96 @508 @468 -@530 := @143 @528 @116 -@531 := (hs : @474) -> @530 -@532 := @526 @472 -@534 := @143 @106 @116 -@535 := @221 @30 -@537 := @29 (@17 @36) -@550 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @537 @38) -> (hs : @225) -> @143 (@96 (@29 (@17 @151)) @36) @171 -@551 := @535 @31 -@553 := @29 (@17 @38) -@565 := {vs : @147} -> - {ts : @148} -> (h : @13 @553 @31) -> (hs : @225) -> @143 (@96 (@29 (@17 @153)) @36) @260 -@566 := @551 @106 -@568 := @29 (@17 @40) -@570 := @13 @568 @31 -@571 := @522 @40 -@573 := @96 @537 @513 -@578 := {ts : @148} -> (h : @570) -> (hs : @571) -> @143 @573 @260 -@579 := @566 @116 -@581 := @96 @553 @521 -@582 := @143 @581 -@585 := (h : @70) -> (hs : @530) -> @582 @117 -@586 := @579 @68 -@588 := @96 @568 @528 -@590 := @143 @588 @117 -@591 := (hs : @534) -> @590 -@592 := @586 @532 -@594 := @143 @108 @117 -@595 := Eq.{1} -@596 := Option.{0} -@597 := @596 @148 -@598 := @595 @597 -@599 := LexLeanPreservation.Rust.adtFields -@603 := @598 (@599 @149 @36 @38) -@604 := Option.some.{0} -@605 := @604 @148 -@606 := @605 @4 -@607 := @603 @606 -@610 := @7 @163 @157 @149 -@611 := LexLeanTarget.TargetSyntax.Value.adt -@613 := @611 @153 @36 -@614 := @610 @613 -@615 := @8 @151 -@625 := {p : @32} -> - {c : @33} -> - {A : @34} -> - {i : @35} -> {k : @35} -> {fs : @147} -> {tys : @148} -> (h : @607) -> (hf : @162) -> @614 @615 -@627 := LexLeanPreservation.Rust.wt_adt @0 -@628 := @599 @0 -@632 := @598 (@628 @36 @38) @606 -@644 := {c : @33} -> - {A : @34} -> - {i : @35} -> - {k : @35} -> {fs : @147} -> {tys : @148} -> (h : @632) -> (hf : @191) -> @11 @157 @149 @613 @615 -@645 := @627 @1 -@655 := {A : @34} -> - {i : @35} -> - {k : @35} -> {fs : @147} -> {tys : @148} -> (h : @632) -> (hf : @210) -> @12 @149 @613 @615 -@656 := @645 @2 -@657 := @13 @613 -@664 := {i : @35} -> - {k : @35} -> {fs : @147} -> {tys : @148} -> (h : @632) -> (hf : @225) -> @657 @615 -@665 := @656 @9 -@666 := @628 @9 -@675 := {k : @35} -> - {fs : @147} -> {tys : @148} -> (h : @598 (@666 @38) @606) -> (hf : @225) -> @657 @10 -@676 := @665 @9 -@677 := @666 @9 -@678 := @598 @677 -@679 := @678 @606 -@680 := @611 @9 -@682 := @13 (@680 @36) -@687 := {fs : @147} -> {tys : @148} -> (h : @679) -> (hf : @225) -> @682 @10 -@688 := @676 @108 -@695 := {tys : @148} -> (h : @679) -> (hf : @582 @40) -> @13 (@680 @573) @10 -@696 := @688 @117 -@703 := (h : @678 (@605 @117)) -> (hf : @590) -> @13 (@680 @581) @10 -@704 := Eq.refl.{1} -@705 := @704 @597 -@707 := @696 (@705 @677) -@711 := (hf : @594) -> @13 (@680 @588) @10 -@712 := @707 @592 -@715 := @13 (@680 @108) @10 -@716 := fun (__s : @3) => @712 -@717 := Reasoning.Clinic.Chart -@719 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.__enc_1 @4 -@720 := 1 -@721 := @8 @720 -@724 := (__s : @717) -> @13 @719 @721 -@725 := Reasoning.Clinic.Chart.vitals -@726 := @725 @4 -@727 := Reasoning.Clinic.Chart.fever -@728 := @727 @4 -@729 := Reasoning.Clinic.Chart.tachycardia -@730 := @729 @4 -@731 := Reasoning.Clinic.Chart.tachypnea -@732 := @731 @4 -@733 := Reasoning.Clinic.Chart.leukocytosis -@734 := @733 @4 -@735 := Reasoning.Clinic.Chart.sirs -@736 := @735 @4 -@737 := Reasoning.Clinic.Chart.sepsis -@738 := @737 @4 -@739 := Reasoning.Clinic.Chart.shock -@740 := @739 @4 -@741 := Reasoning.Clinic.Chart.level -@742 := @741 @4 -@743 := @5 @726 -@745 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.Compose.RustCore.__wt_0 @726 -@746 := @29 @728 -@747 := @64 @728 -@749 := @13 @746 @31 -@750 := @29 @730 -@751 := @64 @730 -@753 := @13 @750 @31 -@754 := @29 @732 -@755 := @64 @732 -@757 := @13 @754 @31 -@758 := @29 @734 -@759 := @64 @734 -@761 := @13 @758 @31 -@762 := @29 @736 -@763 := @64 @736 -@765 := @13 @762 @31 -@766 := @29 @738 -@767 := @64 @738 -@769 := @13 @766 @31 -@770 := @29 @740 -@771 := @64 @740 -@773 := @13 @770 @31 -@774 := @29 @742 -@775 := @64 @742 -@777 := @13 @774 @31 -@779 := @96 @774 @95 -@781 := @96 @770 @779 -@783 := @96 @766 @781 -@785 := @96 @762 @783 -@787 := @96 @758 @785 -@789 := @96 @754 @787 -@791 := @96 @750 @789 -@793 := @96 @746 @791 -@795 := @96 @743 @793 -@796 := @111 @117 -@797 := @111 @796 -@798 := @110 @10 -@799 := @798 @797 -@800 := @221 @774 -@802 := @29 (@741 @36) -@815 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @802 @38) -> (hs : @225) -> @143 (@96 (@29 (@741 @151)) @36) @171 -@816 := @800 @31 -@818 := @29 (@741 @38) -@830 := {vs : @147} -> - {ts : @148} -> (h : @13 @818 @31) -> (hs : @225) -> @143 (@96 (@29 (@741 @153)) @36) @260 -@831 := @816 @95 -@833 := @29 (@741 @40) -@835 := @13 @833 @31 -@837 := @96 @802 @95 -@842 := {ts : @148} -> (h : @835) -> (hs : @271) -> @143 @837 @260 -@843 := @831 @109 -@845 := @96 @818 @95 -@846 := @143 @845 -@849 := (h : @777) -> (hs : @145) -> @846 @112 -@850 := @843 @775 -@852 := @96 @833 @95 -@854 := @143 @852 @112 -@855 := (hs : @145) -> @854 -@856 := @850 @142 -@858 := @143 @779 @112 -@859 := @221 @770 -@861 := @29 (@739 @36) -@874 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @861 @38) -> (hs : @225) -> @143 (@96 (@29 (@739 @151)) @36) @171 -@875 := @859 @31 -@877 := @29 (@739 @38) -@889 := {vs : @147} -> - {ts : @148} -> (h : @13 @877 @31) -> (hs : @225) -> @143 (@96 (@29 (@739 @153)) @36) @260 -@890 := @875 @779 -@892 := @29 (@739 @40) -@894 := @13 @892 @31 -@895 := @846 @40 -@897 := @96 @861 @837 -@902 := {ts : @148} -> (h : @894) -> (hs : @895) -> @143 @897 @260 -@903 := @890 @112 -@905 := @96 @877 @845 -@906 := @143 @905 -@909 := (h : @773) -> (hs : @854) -> @906 @113 -@910 := @903 @771 -@912 := @96 @892 @852 -@914 := @143 @912 @113 -@915 := (hs : @858) -> @914 -@916 := @910 @856 -@918 := @143 @781 @113 -@919 := @221 @766 -@921 := @29 (@737 @36) -@934 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @921 @38) -> (hs : @225) -> @143 (@96 (@29 (@737 @151)) @36) @171 -@935 := @919 @31 -@937 := @29 (@737 @38) -@949 := {vs : @147} -> - {ts : @148} -> (h : @13 @937 @31) -> (hs : @225) -> @143 (@96 (@29 (@737 @153)) @36) @260 -@950 := @935 @781 -@952 := @29 (@737 @40) -@954 := @13 @952 @31 -@955 := @906 @40 -@957 := @96 @921 @897 -@962 := {ts : @148} -> (h : @954) -> (hs : @955) -> @143 @957 @260 -@963 := @950 @113 -@965 := @96 @937 @905 -@966 := @143 @965 -@969 := (h : @769) -> (hs : @914) -> @966 @114 -@970 := @963 @767 -@972 := @96 @952 @912 -@974 := @143 @972 @114 -@975 := (hs : @918) -> @974 -@976 := @970 @916 -@978 := @143 @783 @114 -@979 := @221 @762 -@981 := @29 (@735 @36) -@994 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @981 @38) -> (hs : @225) -> @143 (@96 (@29 (@735 @151)) @36) @171 -@995 := @979 @31 -@997 := @29 (@735 @38) -@1009 := {vs : @147} -> - {ts : @148} -> (h : @13 @997 @31) -> (hs : @225) -> @143 (@96 (@29 (@735 @153)) @36) @260 -@1010 := @995 @783 -@1012 := @29 (@735 @40) -@1014 := @13 @1012 @31 -@1015 := @966 @40 -@1017 := @96 @981 @957 -@1022 := {ts : @148} -> (h : @1014) -> (hs : @1015) -> @143 @1017 @260 -@1023 := @1010 @114 -@1025 := @96 @997 @965 -@1026 := @143 @1025 -@1029 := (h : @765) -> (hs : @974) -> @1026 @115 -@1030 := @1023 @763 -@1032 := @96 @1012 @972 -@1034 := @143 @1032 @115 -@1035 := (hs : @978) -> @1034 -@1036 := @1030 @976 -@1038 := @143 @785 @115 -@1039 := @221 @758 -@1041 := @29 (@733 @36) -@1054 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @1041 @38) -> (hs : @225) -> @143 (@96 (@29 (@733 @151)) @36) @171 -@1055 := @1039 @31 -@1057 := @29 (@733 @38) -@1069 := {vs : @147} -> - {ts : @148} -> (h : @13 @1057 @31) -> (hs : @225) -> @143 (@96 (@29 (@733 @153)) @36) @260 -@1070 := @1055 @785 -@1072 := @29 (@733 @40) -@1074 := @13 @1072 @31 -@1075 := @1026 @40 -@1077 := @96 @1041 @1017 -@1082 := {ts : @148} -> (h : @1074) -> (hs : @1075) -> @143 @1077 @260 -@1083 := @1070 @115 -@1085 := @96 @1057 @1025 -@1086 := @143 @1085 -@1089 := (h : @761) -> (hs : @1034) -> @1086 @116 -@1090 := @1083 @759 -@1092 := @96 @1072 @1032 -@1094 := @143 @1092 @116 -@1095 := (hs : @1038) -> @1094 -@1096 := @1090 @1036 -@1098 := @143 @787 @116 -@1099 := @221 @754 -@1101 := @29 (@731 @36) -@1114 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @1101 @38) -> (hs : @225) -> @143 (@96 (@29 (@731 @151)) @36) @171 -@1115 := @1099 @31 -@1117 := @29 (@731 @38) -@1129 := {vs : @147} -> - {ts : @148} -> (h : @13 @1117 @31) -> (hs : @225) -> @143 (@96 (@29 (@731 @153)) @36) @260 -@1130 := @1115 @787 -@1132 := @29 (@731 @40) -@1134 := @13 @1132 @31 -@1135 := @1086 @40 -@1137 := @96 @1101 @1077 -@1142 := {ts : @148} -> (h : @1134) -> (hs : @1135) -> @143 @1137 @260 -@1143 := @1130 @116 -@1145 := @96 @1117 @1085 -@1146 := @143 @1145 -@1149 := (h : @757) -> (hs : @1094) -> @1146 @117 -@1150 := @1143 @755 -@1152 := @96 @1132 @1092 -@1154 := @143 @1152 @117 -@1155 := (hs : @1098) -> @1154 -@1156 := @1150 @1096 -@1158 := @143 @789 @117 -@1159 := @221 @750 -@1161 := @29 (@729 @36) -@1174 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @1161 @38) -> (hs : @225) -> @143 (@96 (@29 (@729 @151)) @36) @171 -@1175 := @1159 @31 -@1177 := @29 (@729 @38) -@1189 := {vs : @147} -> - {ts : @148} -> (h : @13 @1177 @31) -> (hs : @225) -> @143 (@96 (@29 (@729 @153)) @36) @260 -@1190 := @1175 @789 -@1192 := @29 (@729 @40) -@1194 := @13 @1192 @31 -@1195 := @1146 @40 -@1197 := @96 @1161 @1137 -@1202 := {ts : @148} -> (h : @1194) -> (hs : @1195) -> @143 @1197 @260 -@1203 := @1190 @117 -@1205 := @96 @1177 @1145 -@1206 := @143 @1205 -@1209 := (h : @753) -> (hs : @1154) -> @1206 @796 -@1210 := @1203 @751 -@1212 := @96 @1192 @1152 -@1214 := @143 @1212 @796 -@1215 := (hs : @1158) -> @1214 -@1216 := @1210 @1156 -@1218 := @143 @791 @796 -@1219 := @221 @746 -@1221 := @29 (@727 @36) -@1234 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @1221 @38) -> (hs : @225) -> @143 (@96 (@29 (@727 @151)) @36) @171 -@1235 := @1219 @31 -@1237 := @29 (@727 @38) -@1249 := {vs : @147} -> - {ts : @148} -> (h : @13 @1237 @31) -> (hs : @225) -> @143 (@96 (@29 (@727 @153)) @36) @260 -@1250 := @1235 @791 -@1252 := @29 (@727 @40) -@1254 := @13 @1252 @31 -@1255 := @1206 @40 -@1257 := @96 @1221 @1197 -@1262 := {ts : @148} -> (h : @1254) -> (hs : @1255) -> @143 @1257 @260 -@1263 := @1250 @796 -@1265 := @96 @1237 @1205 -@1266 := @143 @1265 -@1269 := (h : @749) -> (hs : @1214) -> @1266 @797 -@1270 := @1263 @747 -@1272 := @96 @1252 @1212 -@1274 := @143 @1272 @797 -@1275 := (hs : @1218) -> @1274 -@1276 := @1270 @1216 -@1278 := @143 @793 @797 -@1279 := @221 @743 -@1281 := @5 (@725 @36) -@1294 := {t : @92} -> - {vs : @147} -> - {ts : @148} -> (h : @13 @1281 @38) -> (hs : @225) -> @143 (@96 (@5 (@725 @151)) @36) @171 -@1295 := @1279 @10 -@1297 := @5 (@725 @38) -@1299 := @13 @1297 @10 -@1304 := @143 (@96 (@5 (@725 @153)) @36) -@1305 := @798 @38 -@1310 := {vs : @147} -> {ts : @148} -> (h : @1299) -> (hs : @225) -> @1304 @1305 -@1311 := @1295 @793 -@1313 := @5 (@725 @40) -@1315 := @13 @1313 @10 -@1316 := @1266 @40 -@1318 := @96 @1281 @1257 -@1323 := {ts : @148} -> (h : @1315) -> (hs : @1316) -> @143 @1318 @1305 -@1324 := @1311 @797 -@1326 := @13 @743 @10 -@1328 := @96 @1297 @1265 -@1329 := @143 @1328 -@1332 := (h : @1326) -> (hs : @1274) -> @1329 @799 -@1333 := @1324 @745 -@1335 := @96 @1313 @1272 -@1337 := @143 @1335 @799 -@1338 := (hs : @1278) -> @1337 -@1339 := @1333 @1276 -@1341 := @143 @795 @799 -@1342 := @656 @720 -@1343 := @628 @720 -@1352 := {k : @35} -> - {fs : @147} -> {tys : @148} -> (h : @598 (@1343 @38) @606) -> (hf : @225) -> @657 @721 -@1353 := @1342 @9 -@1354 := @1343 @9 -@1355 := @598 @1354 -@1356 := @1355 @606 -@1361 := {fs : @147} -> {tys : @148} -> (h : @1356) -> (hf : @225) -> @682 @721 -@1362 := @1353 @795 -@1369 := {tys : @148} -> (h : @1356) -> (hf : @1329 @40) -> @13 (@680 @1318) @721 -@1370 := @1362 @799 -@1377 := (h : @1355 (@605 @799)) -> (hf : @1337) -> @13 (@680 @1328) @721 -@1379 := @1370 (@705 @1354) -@1383 := (hf : @1341) -> @13 (@680 @1335) @721 -@1384 := @1379 @1339 -@1387 := @13 (@680 @795) @721 -@1388 := fun (__s : @717) => @1384 -@1389 := Reasoning.Main.Grade.Step -@1391 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.__enc_2 @4 -@1392 := 2 -@1393 := @8 @1392 -@1395 := @13 @1391 @1393 -@1396 := (__v : @1389) -> @1395 -@1397 := fun (__v : @1389) => @1395 -@1398 := @656 @1392 -@1399 := @628 @1392 -@1408 := {k : @35} -> - {fs : @147} -> {tys : @148} -> (h : @598 (@1399 @38) @606) -> (hf : @225) -> @657 @1393 -@1409 := @1398 @9 -@1410 := @1399 @9 -@1411 := @598 @1410 -@1412 := @1411 @606 -@1417 := {fs : @147} -> {tys : @148} -> (h : @1412) -> (hf : @225) -> @682 @1393 -@1418 := @1409 @95 -@1421 := @13 (@680 @95) @1393 -@1424 := {tys : @148} -> (h : @1412) -> (hf : @271) -> @1421 -@1425 := @1418 @109 -@1426 := @605 @109 -@1429 := (h : @1411 @1426) -> (hf : @145) -> @1421 -@1432 := @1425 (@705 @1410) @142 -@1433 := @1398 @720 -@1434 := @1399 @720 -@1435 := @598 @1434 -@1436 := @1435 @606 -@1437 := @611 @720 -@1444 := {fs : @147} -> {tys : @148} -> (h : @1436) -> (hf : @225) -> @13 (@1437 @36) @1393 -@1445 := @1433 @95 -@1448 := @13 (@1437 @95) @1393 -@1451 := {tys : @148} -> (h : @1436) -> (hf : @271) -> @1448 -@1452 := @1445 @109 -@1455 := (h : @1435 @1426) -> (hf : @145) -> @1448 -@1458 := @1452 (@705 @1434) @142 -@1459 := @1398 @1392 -@1460 := @1399 @1392 -@1461 := @598 @1460 -@1462 := @1461 @606 -@1463 := @611 @1392 -@1470 := {fs : @147} -> {tys : @148} -> (h : @1462) -> (hf : @225) -> @13 (@1463 @36) @1393 -@1471 := @1459 @95 -@1474 := @13 (@1463 @95) @1393 -@1477 := {tys : @148} -> (h : @1462) -> (hf : @271) -> @1474 -@1478 := @1471 @109 -@1481 := (h : @1461 @1426) -> (hf : @145) -> @1474 -@1484 := @1478 (@705 @1460) @142 -@1485 := 3 -@1486 := @1398 @1485 -@1487 := @1399 @1485 -@1488 := @598 @1487 -@1489 := @1488 @606 -@1490 := @611 @1485 -@1497 := {fs : @147} -> {tys : @148} -> (h : @1489) -> (hf : @225) -> @13 (@1490 @36) @1393 -@1498 := @1486 @95 -@1501 := @13 (@1490 @95) @1393 -@1504 := {tys : @148} -> (h : @1489) -> (hf : @271) -> @1501 -@1505 := @1498 @109 -@1508 := (h : @1488 @1426) -> (hf : @145) -> @1501 -@1511 := @1505 (@705 @1487) @142 -@1512 := 4 -@1513 := @1398 @1512 -@1514 := @1399 @1512 -@1515 := @598 @1514 -@1516 := @1515 @606 -@1517 := @611 @1512 -@1524 := {fs : @147} -> {tys : @148} -> (h : @1516) -> (hf : @225) -> @13 (@1517 @36) @1393 -@1525 := @1513 @95 -@1528 := @13 (@1517 @95) @1393 -@1531 := {tys : @148} -> (h : @1516) -> (hf : @271) -> @1528 -@1532 := @1525 @109 -@1535 := (h : @1515 @1426) -> (hf : @145) -> @1528 -@1538 := @1532 (@705 @1514) @142 -@1539 := 5 -@1540 := @1398 @1539 -@1541 := @1399 @1539 -@1542 := @598 @1541 -@1543 := @1542 @606 -@1544 := @611 @1539 -@1551 := {fs : @147} -> {tys : @148} -> (h : @1543) -> (hf : @225) -> @13 (@1544 @36) @1393 -@1552 := @1540 @95 -@1555 := @13 (@1544 @95) @1393 -@1558 := {tys : @148} -> (h : @1543) -> (hf : @271) -> @1555 -@1559 := @1552 @109 -@1562 := (h : @1542 @1426) -> (hf : @145) -> @1555 -@1565 := @1559 (@705 @1541) @142 -@1566 := 6 -@1567 := @1398 @1566 -@1568 := @1399 @1566 -@1569 := @598 @1568 -@1570 := @1569 @606 -@1571 := @611 @1566 -@1578 := {fs : @147} -> {tys : @148} -> (h : @1570) -> (hf : @225) -> @13 (@1571 @36) @1393 -@1579 := @1567 @95 -@1582 := @13 (@1571 @95) @1393 -@1585 := {tys : @148} -> (h : @1570) -> (hf : @271) -> @1582 -@1586 := @1579 @109 -@1589 := (h : @1569 @1426) -> (hf : @145) -> @1582 -@1592 := @1586 (@705 @1568) @142 -@1593 := 7 -@1594 := @1398 @1593 -@1595 := @1399 @1593 -@1596 := @598 @1595 -@1597 := @1596 @606 -@1598 := @611 @1593 -@1605 := {fs : @147} -> {tys : @148} -> (h : @1597) -> (hf : @225) -> @13 (@1598 @36) @1393 -@1606 := @1594 @95 -@1609 := @13 (@1598 @95) @1393 -@1612 := {tys : @148} -> (h : @1597) -> (hf : @271) -> @1609 -@1613 := @1606 @109 -@1616 := (h : @1596 @1426) -> (hf : @145) -> @1609 -@1619 := @1613 (@705 @1595) @142 -@1631 := fun (__v : @1389) => - Reasoning.Main.Grade.Step.casesOn.{0} @1397 @4 @1432 @1458 @1484 @1511 @1538 @1565 @1592 @1619 -@1632 := @29 @149 -@1633 := @64 @149 -@1634 := @13 @1632 -@1635 := @1634 @31 -@1636 := @29 @151 -@1637 := @64 @151 -@1638 := @13 @1636 -@1639 := @1638 @31 -@1640 := @29 @153 -@1641 := @64 @153 -@1642 := @13 @1640 -@1643 := @1642 @31 -@1644 := @29 @36 -@1645 := @64 @36 -@1647 := @13 @1644 @31 -@1648 := @29 @38 -@1649 := @64 @38 -@1651 := @13 @1648 @31 -@1652 := @29 @40 -@1653 := @64 @40 -@1655 := @13 @1652 @31 -@1656 := @96 @1652 -@1657 := @1656 @95 -@1658 := @96 @1648 -@1659 := @1658 @1657 -@1660 := @96 @1644 -@1661 := @1660 @1659 -@1662 := @96 @1640 -@1663 := @1662 @1661 -@1664 := @96 @1636 -@1665 := @1664 @1663 -@1666 := @96 @1632 -@1667 := @1666 @1665 -@1670 := Prod.{0, 0} @35 @91 -@1673 := Prod.mk.{0, 0} @35 @91 -@1674 := @1673 @1539 -@1675 := @1674 @1652 -@1676 := @1673 @1512 -@1677 := @1676 @1648 -@1678 := @1673 @1485 -@1679 := @1678 @1644 -@1680 := @1673 @1392 -@1681 := @1680 @1640 -@1682 := @1673 @720 -@1683 := @1682 @1636 -@1684 := @1673 @9 -@1685 := @1684 @1632 -@1686 := @93 @1670 -@1687 := @94 @1670 -@1689 := @1687 @1685 @1686 -@1691 := @1687 @1683 @1689 -@1693 := @1687 @1681 @1691 -@1695 := @1687 @1679 @1693 -@1697 := @1687 @1677 @1695 -@1699 := @1687 @1675 @1697 -@1700 := Bool.true -@1701 := LexLeanTarget.TargetSyntax.Function -@1702 := LexLeanTarget.TargetSyntax.Program.functions -@1703 := @1702 @0 -@1704 := @93 @35 -@1705 := LexLeanTarget.TargetSyntax.Ty.unit -@1706 := LexLeanTarget.TargetSyntax.Value.unit -@1709 := LexLeanTarget.TargetSyntax.Expr.value @1705 @1706 -@1714 := LexLeanTarget.TargetSyntax.Function.mk @1704 @109 @1705 @1709 -@1719 := List.getD.{0} @1701 @1703 @9 @1714 -@1723 := fun (__e_n : @35) => - LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.RustCore.root @4 @9 -@1724 := @221 @1652 -@1725 := @1642 @38 -@1727 := @143 (@1666 @36) -@1733 := {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @1725) -> (hs : @225) -> @1727 @171 -@1734 := @1724 @31 -@1741 := {vs : @147} -> {ts : @148} -> (h : @1647) -> (hs : @225) -> @143 (@1664 @36) @260 -@1742 := @1734 @95 -@1743 := @1662 @95 -@1748 := {ts : @148} -> (h : @1651) -> (hs : @271) -> @143 @1743 @260 -@1749 := @1742 @109 -@1750 := @1660 @95 -@1751 := @143 @1750 -@1754 := (h : @1655) -> (hs : @145) -> @1751 @112 -@1755 := @1749 @1653 -@1756 := @1658 @95 -@1758 := @143 @1756 @112 -@1759 := (hs : @145) -> @1758 -@1760 := @1755 @142 -@1762 := @143 @1657 @112 -@1763 := @221 @1648 -@1764 := @1638 @38 -@1765 := @29 @157 -@1766 := @96 @1765 -@1768 := @143 (@1766 @36) -@1774 := {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @1764) -> (hs : @225) -> @1768 @171 -@1775 := @1763 @31 -@1780 := {vs : @147} -> {ts : @148} -> (h : @1643) -> (hs : @225) -> @1727 @260 -@1781 := @1775 @1657 -@1782 := @1751 @40 -@1783 := @1664 @1743 -@1788 := {ts : @148} -> (h : @1647) -> (hs : @1782) -> @143 @1783 @260 -@1789 := @1781 @112 -@1790 := @1662 @1750 -@1791 := @143 @1790 -@1794 := (h : @1651) -> (hs : @1758) -> @1791 @113 -@1795 := @1789 @1649 -@1796 := @1660 @1756 -@1798 := @143 @1796 @113 -@1799 := (hs : @1762) -> @1798 -@1800 := @1795 @1760 -@1802 := @143 @1659 @113 -@1803 := @221 @1644 -@1804 := @1634 @38 -@1805 := @29 @163 -@1806 := @96 @1805 -@1808 := @143 (@1806 @36) -@1814 := {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @1804) -> (hs : @225) -> @1808 @171 -@1815 := @1803 @31 -@1820 := {vs : @147} -> {ts : @148} -> (h : @1639) -> (hs : @225) -> @1768 @260 -@1821 := @1815 @1659 -@1822 := @1791 @40 -@1823 := @1666 @1783 -@1828 := {ts : @148} -> (h : @1643) -> (hs : @1822) -> @143 @1823 @260 -@1829 := @1821 @113 -@1830 := @1664 @1790 -@1831 := @143 @1830 -@1834 := (h : @1647) -> (hs : @1798) -> @1831 @114 -@1835 := @1829 @1645 -@1836 := @1662 @1796 -@1838 := @143 @1836 @114 -@1839 := (hs : @1802) -> @1838 -@1840 := @1835 @1800 -@1842 := @143 @1661 @114 -@1843 := @221 @1640 -@1844 := @13 @1765 -@1845 := @1844 @38 -@1846 := #9 -@1847 := @29 @1846 -@1848 := @96 @1847 -@1850 := @143 (@1848 @36) -@1856 := {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @1845) -> (hs : @225) -> @1850 @171 -@1857 := @1843 @31 -@1862 := {vs : @147} -> {ts : @148} -> (h : @1635) -> (hs : @225) -> @1808 @260 -@1863 := @1857 @1661 -@1864 := @1831 @40 -@1865 := @1766 @1823 -@1870 := {ts : @148} -> (h : @1639) -> (hs : @1864) -> @143 @1865 @260 -@1871 := @1863 @114 -@1872 := @1666 @1830 -@1873 := @143 @1872 -@1876 := (h : @1643) -> (hs : @1838) -> @1873 @115 -@1877 := @1871 @1641 -@1878 := @1664 @1836 -@1880 := @143 @1878 @115 -@1881 := (hs : @1842) -> @1880 -@1882 := @1877 @1840 -@1884 := @143 @1663 @115 -@1885 := @221 @1636 -@1886 := @13 @1805 -@1887 := @1886 @38 -@1888 := #10 -@1889 := @29 @1888 -@1890 := @96 @1889 -@1892 := @143 (@1890 @36) -@1898 := {t : @92} -> {vs : @147} -> {ts : @148} -> (h : @1887) -> (hs : @225) -> @1892 @171 -@1899 := @1885 @31 -@1900 := @1844 @31 -@1905 := {vs : @147} -> {ts : @148} -> (h : @1900) -> (hs : @225) -> @1850 @260 -@1906 := @1899 @1663 -@1907 := @1873 @40 -@1908 := @1806 @1865 -@1913 := {ts : @148} -> (h : @1635) -> (hs : @1907) -> @143 @1908 @260 -@1914 := @1906 @115 -@1915 := @1766 @1872 -@1916 := @143 @1915 -@1919 := (h : @1639) -> (hs : @1880) -> @1916 @116 -@1920 := @1914 @1637 -@1921 := @1666 @1878 -@1923 := @143 @1921 @116 -@1924 := (hs : @1884) -> @1923 -@1925 := @1920 @1882 -@1927 := @143 @1665 @116 -@1928 := @221 @1632 -@1930 := @13 @1847 @38 -@1931 := #11 -@1932 := @29 @1931 -@1933 := @96 @1932 -@1941 := {t : @92} -> - {vs : @147} -> {ts : @148} -> (h : @1930) -> (hs : @225) -> @143 (@1933 @36) @171 -@1942 := @1928 @31 -@1948 := {vs : @147} -> {ts : @148} -> (h : @1886 @31) -> (hs : @225) -> @1892 @260 -@1949 := @1942 @1665 -@1950 := @1916 @40 -@1951 := @1848 @1908 -@1952 := @143 @1951 -@1956 := {ts : @148} -> (h : @1900) -> (hs : @1950) -> @1952 @260 -@1957 := @1949 @116 -@1958 := @1806 @1915 -@1959 := @143 @1958 -@1962 := (h : @1635) -> (hs : @1923) -> @1959 @117 -@1963 := @1957 @1633 -@1964 := @1766 @1921 -@1965 := @143 @1964 -@1967 := (hs : @1927) -> @1965 @117 -@1968 := @1963 @1925 -@1969 := @143 @1667 -@1970 := @1969 @117 -@1971 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.denote -@1977 := @1971 @149 @151 @153 @36 @38 @40 -@1978 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.__fits_0 -@1984 := @1978 @149 @151 @153 @36 @38 @40 -@1992 := @29 (Reasoning.Main.gradeLevel @149 @151 @153 @36 @38 @40) -@1999 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.root @149 @151 @153 @36 @38 @40 -@2000 := Bool -@2001 := Ne.{1} -@2002 := LexLeanPreservation.Obs -@2003 := @2001 @2002 -@2004 := LexLeanPreservation.Rel -@2007 := @2003 (@2004 @40 @4) -@2008 := LexLeanPreservation.Obs.stuck -@2011 := (f : @2000) -> (v : @91) -> @2007 @2008 -@2013 := LexLeanPreservation.Rust.rel_ne_stuck @1984 -@2024 := (v : @91) -> @2003 (@2004 (@1978 @157 @149 @151 @153 @36 @38) @4) @2008 -@2025 := @2013 @1992 -@2029 := @2003 (@2004 @1984 @1992) @2008 -@2030 := @146 @1670 -@2031 := LexLeanPreservation.Rust.FunSem -@2037 := (n : @35) -> @2031 @1846 @163 @157 @4 @149 -@2038 := @596 @1701 -@2039 := @595 @2038 -@2046 := LexLeanRuntime.index (@146 @1701) @1701 (LexLeanRuntime.instIndexableList @1701) -@2050 := @2039 (@2046 (@1702 @1846) @149) -@2051 := @604 @1701 -@2052 := @2051 @151 -@2053 := @2050 @2052 -@2057 := @118 @1888 @1846 @163 @151 -@2058 := LexLeanTarget.TargetSyntax.Function.types -@2059 := @2058 @149 -@2060 := @2057 @2059 -@2061 := @596 @2030 -@2062 := @595 @2061 -@2063 := LexLeanTarget.TargetSemantics.bindAll -@2064 := LexLeanTarget.TargetSyntax.Function.parameters -@2069 := @2062 (@2063 (@2064 @157) @149 @1686) -@2070 := @604 @2030 -@2071 := @2070 @151 -@2072 := @2069 @2071 -@2073 := @596 @2000 -@2074 := @595 @2073 -@2075 := LexLeanPreservation.Rust.fnFallible -@2078 := @2074 (@2075 @1931 @1846) -@2079 := @604 @2000 -@2080 := @2079 @151 -@2081 := @2078 @2080 -@2082 := LexLeanPreservation.RunConv -@2083 := #13 -@2087 := @2082 @2083 @1888 @163 @151 -@2089 := @2003 @149 @2008 -@2090 := Exists.{1} -@2091 := LexLeanPreservation.Rust.ROut -@2092 := @2090 @2091 -@2093 := And -@2094 := LexLeanPreservation.Rust.RealizesFn -@2098 := @2093 (@2094 @1846 @163 @4) -@2099 := LexLeanPreservation.Rust.RCI -@2100 := #15 -@2101 := @2099 @2100 -@2102 := LexLeanPreservation.Rust.fnIdent -@2103 := @2102 @2083 -@2110 := (hne : @2089) -> @2092 (fun (ro : @2091) => @2098 (@2101 @2103 @1931 @4)) -@2125 := {p : @32} -> - {c : @33} -> - {A : @34} -> - {f : @35} -> - {fn : @1701} -> - {args : @147} -> - {env : @2030} -> - {F : @2000} -> - {o : @2002} -> - (hB : @2037) -> - (hfn : @2053) -> (hwt : @2060) -> (hbind : @2072) -> (hF : @2081) -> (hA : @2087) -> @2110 -@2127 := LexLeanPreservation.Rust.compose @0 -@2128 := @2031 @0 -@2133 := (n : @35) -> @2128 @163 @157 @4 @149 -@2134 := @2046 @1703 -@2137 := @2039 (@2134 @149) @2052 -@2141 := @129 @1846 @163 @151 @2059 -@2142 := @2082 @0 -@2145 := @2142 @1888 @163 @151 -@2159 := {c : @33} -> - {A : @34} -> - {f : @35} -> - {fn : @1701} -> - {args : @147} -> - {env : @2030} -> - {F : @2000} -> - {o : @2002} -> - (hB : @2133) -> - (hfn : @2137) -> (hwt : @2141) -> (hbind : @2072) -> (hF : @2081) -> (hA : @2145) -> @2110 -@2160 := @2127 @1 -@2161 := @2128 @1 -@2165 := (n : @35) -> @2161 @157 @4 @149 -@2168 := @137 @163 @151 @2059 -@2169 := @2075 @1 -@2172 := @2074 (@2169 @1846) @2080 -@2173 := @2099 @1 -@2183 := (hbind : @2072) -> - (hF : @2172) -> - (hA : @2145) -> (hne : @2089) -> @2092 (fun (ro : @2091) => @2098 (@2173 @2103 @1931 @4)) -@2193 := {A : @34} -> - {f : @35} -> - {fn : @1701} -> - {args : @147} -> - {env : @2030} -> - {F : @2000} -> {o : @2002} -> (hB : @2165) -> (hfn : @2137) -> (hwt : @2168) -> @2183 -@2194 := @2160 @2 -@2196 := @2161 @2 @4 -@2198 := (n : @35) -> @2196 @149 -@2199 := @143 @151 -@2200 := @2199 @2059 -@2209 := {f : @35} -> - {fn : @1701} -> - {args : @147} -> - {env : @2030} -> - {F : @2000} -> {o : @2002} -> (hB : @2198) -> (hfn : @2137) -> (hwt : @2200) -> @2183 -@2210 := @2194 @9 -@2212 := (n : @35) -> @2196 @9 -@2213 := @2134 @9 -@2214 := @2039 @2213 -@2215 := @2214 @2052 -@2216 := @2169 @9 -@2217 := @2074 @2216 -@2218 := @2217 @2080 -@2219 := @2142 @9 -@2221 := @2219 @163 @151 -@2223 := @2173 (@2102 @9) -@2231 := (hF : @2218) -> - (hA : @2221) -> (hne : @2089) -> @2092 (fun (ro : @2091) => @2098 (@2223 @1931 @4)) -@2240 := {fn : @1701} -> - {args : @147} -> - {env : @2030} -> - {F : @2000} -> - {o : @2002} -> (hB : @2212) -> (hfn : @2215) -> (hwt : @2200) -> (hbind : @2072) -> @2231 -@2241 := @2210 @1719 -@2243 := @2214 (@2051 @1719) -@2244 := @2058 @1719 -@2245 := @2199 @2244 -@2247 := @2063 (@2064 @1719) -@2259 := {args : @147} -> - {env : @2030} -> - {F : @2000} -> - {o : @2002} -> - (hB : @2212) -> - (hfn : @2243) -> (hwt : @2245) -> (hbind : @2062 (@2247 @149 @1686) @2071) -> @2231 -@2260 := @2241 @1667 -@2266 := @1933 (@1890 (@1848 (@1806 (@1766 (@1666 @95))))) -@2268 := @143 @2266 @2244 -@2269 := #12 -@2271 := @96 (@29 @2269) -@2277 := @2271 (@1933 (@1890 (@1848 (@1806 (@1766 @95))))) -@2281 := @2062 (@2247 @2277 @1686) @2071 -@2282 := #14 -@2284 := @96 (@29 @2282) -@2286 := @96 (@29 @2083) -@2292 := @2284 (@2286 (@2271 (@1933 (@1890 (@1848 @95))))) -@2294 := @2219 @2292 @151 -@2297 := @96 (@29 #17) -@2300 := @96 (@29 #16) -@2302 := @96 (@29 @2100) -@2323 := {env : @2030} -> - {F : @2000} -> - {o : @2002} -> - (hB : @2212) -> - (hfn : @2243) -> - (hwt : @2268) -> - (hbind : @2281) -> - (hF : @2218) -> - (hA : @2294) -> - (hne : @2089) -> - @2092 (fun (ro : @2091) => @2098 (@2223 (@2297 (@2300 (@2302 (@2284 (@2286 (@2271 @95)))))) @4)) -@2324 := @2260 @1699 -@2330 := @1890 (@1848 (@1806 (@1766 (@1666 (@1664 @95))))) -@2332 := @143 @2330 @2244 -@2355 := @2062 - (@2247 @2266 @1686) - (@2070 - (@1687 - (@1674 @1632) - (@1687 - (@1676 @1765) - (@1687 - (@1678 @1805) - (@1687 (@1680 @1847) (@1687 (@1682 @1889) (@1687 (@1684 @1932) @1686))))))) -@2361 := @2286 (@2271 (@1933 (@1890 (@1848 (@1806 @95))))) -@2383 := {F : @2000} -> - {o : @2002} -> - (hB : @2212) -> - (hfn : @2243) -> - (hwt : @2332) -> - (hbind : @2355) -> - (hF : @2218) -> - (hA : @2219 @2361 @151) -> - (hne : @2089) -> - @2092 (fun (ro : @2091) => @2098 (@2223 (@2300 (@2302 (@2284 (@2286 (@2271 (@1933 @95)))))) @4)) -@2384 := @2324 @1700 -@2385 := @1952 @2244 -@2408 := @2062 - (@2247 @2330 @1686) - (@2070 - (@1687 - (@1674 @1636) - (@1687 - (@1676 @1632) - (@1687 - (@1678 @1765) - (@1687 (@1680 @1805) (@1687 (@1682 @1847) (@1687 (@1684 @1889) @1686))))))) -@2410 := @2217 (@2079 @1700) -@2412 := @2219 @2277 @151 -@2413 := @2094 @1700 -@2435 := {o : @2002} -> - (hB : @2212) -> - (hfn : @2243) -> - (hwt : @2385) -> - (hbind : @2408) -> - (hF : @2410) -> - (hA : @2412) -> - (hne : @2089) -> - @2092 - (fun (ro : @2091) => - @2093 (@2413 @163 @4) (@2223 (@2302 (@2284 (@2286 (@2271 (@1933 (@1890 @95)))))) @4)) -@2436 := @2384 @1977 -@2437 := @1959 @2244 -@2460 := @2062 - (@2247 @1951 @1686) - (@2070 - (@1687 - (@1674 @1640) - (@1687 - (@1676 @1636) - (@1687 - (@1678 @1632) - (@1687 (@1680 @1765) (@1687 (@1682 @1805) (@1687 (@1684 @1847) @1686))))))) -@2461 := @2219 @2266 -@2467 := @1971 @1931 @1888 @1846 @163 @157 @149 -@2468 := @2461 @2467 -@2474 := @1971 @2269 @1931 @1888 @1846 @163 @157 -@2497 := (hB : @2212) -> - (hfn : @2243) -> - (hwt : @2437) -> - (hbind : @2460) -> - (hF : @2410) -> - (hA : @2468) -> - (hne : @2003 @2474 @2008) -> - @2092 - (fun (ro : @2091) => - @2093 (@2413 (@1971 @2282 @2083 @2269 @1931 @1888 @1846) @4) (@2223 @2292 @4)) -@2498 := @2436 @1723 -@2499 := @1965 @2244 -@2522 := @2062 - (@2247 @1958 @1686) - (@2070 - (@1687 - (@1674 @1644) - (@1687 - (@1676 @1640) - (@1687 - (@1678 @1636) - (@1687 (@1680 @1632) (@1687 (@1682 @1765) (@1687 (@1684 @1805) @1686))))))) -@2523 := @2219 @2330 -@2529 := @1971 @1888 @1846 @163 @157 @149 @151 -@2552 := (hfn : @2243) -> - (hwt : @2499) -> - (hbind : @2522) -> - (hF : @2410) -> - (hA : @2523 @2529) -> - (hne : @2003 @2467 @2008) -> - @2092 - (fun (ro : @2091) => - @2093 (@2413 (@1971 @2083 @2269 @1931 @1888 @1846 @163) @4) (@2223 @2361 @4)) -@2555 := @2498 (@704 @2038 @2213) -@2556 := @1969 @2244 -@2579 := @2062 - (@2247 @1964 @1686) - (@2070 - (@1687 - (@1674 @1648) - (@1687 - (@1676 @1644) - (@1687 - (@1678 @1640) - (@1687 (@1680 @1636) (@1687 (@1682 @1632) (@1687 (@1684 @1765) @1686))))))) -@2580 := @2219 @1951 -@2586 := @1971 @1846 @163 @157 @149 @151 @153 -@2602 := (hwt : @2556) -> - (hbind : @2579) -> - (hF : @2410) -> - (hA : @2580 @2586) -> - (hne : @2003 @2529 @2008) -> @2092 (fun (ro : @2091) => @2093 (@2413 @2474 @4) (@2223 @2277 @4)) -@2603 := @2555 @1968 -@2605 := @2247 @1667 @1686 -@2608 := @2062 @2605 (@2070 @1699) -@2609 := @2219 @1958 -@2615 := @1971 @163 @157 @149 @151 @153 @36 -@2630 := (hbind : @2608) -> - (hF : @2410) -> - (hA : @2609 @2615) -> - (hne : @2003 @2586 @2008) -> @2092 (fun (ro : @2091) => @2093 (@2413 @2467 @4) (@2223 @2266 @4)) -@2633 := @2603 (@704 @2061 @2605) -@2634 := @2219 @1964 -@2640 := @1971 @157 @149 @151 @153 @36 @38 -@2654 := (hF : @2410) -> - (hA : @2634 @2640) -> - (hne : @2003 @2615 @2008) -> @2092 (fun (ro : @2091) => @2093 (@2413 @2529 @4) (@2223 @2330 @4)) -@2657 := @2633 (@704 @2073 @2216) -@2671 := (hA : @2219 @1667 @1977) -> - (hne : @2003 @2640 @2008) -> @2092 (fun (ro : @2091) => @2093 (@2413 @2586 @4) (@2223 @1951 @4)) -@2672 := @2657 @1999 -@2683 := (hne : @2003 @1977 @2008) -> - @2092 (fun (ro : @2091) => @2093 (@2413 @2615 @4) (@2223 @1958 @4)) -@2684 := @2672 @2025 -@2690 := @2093 (@2413 @2640 @4) (@2223 @1964 @4) -@2692 := @2092 (fun (ro : @2091) => @2690) -@2694 := @2092 (fun (__e_ro : @2091) => @2690) -@2703 := LexLeanPreservation.Rust.RepresentableL - (@1664 (@1662 (@1660 (@1658 (@1656 (@96 @42 @95)))))) -@2704 := (__e_hrep : @2703) -> @2694 -@2705 := fun (__e_hrep : @2703) => @2684 -@2706 := (infection : @35) -> @2704 -@2707 := fun (infection : @35) => @2705 -@2708 := (systolic : @35) -> @2706 -@2709 := fun (systolic : @35) => @2707 -@2710 := (whiteCells : @35) -> @2708 -@2711 := fun (whiteCells : @35) => @2709 -@2712 := (respiratoryRate : @35) -> @2710 -@2713 := fun (respiratoryRate : @35) => @2711 -@2714 := (heartRate : @35) -> @2712 -@2715 := fun (heartRate : @35) => @2713 -@2716 := (temperature : @35) -> @2714 -@2717 := fun (temperature : @35) => @2715 -\end{coremodule} -\end{lexlean} diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R5/RustCore.lean b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R5/RustCore.lean deleted file mode 100644 index c9d747778..000000000 --- a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R5/RustCore.lean +++ /dev/null @@ -1,352 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.RustCore -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [{ constructors := [[.nat, .nat, .nat, .nat, .nat, .nat]] }, - { constructors := [[(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]] }, - { constructors := [[], [], [], [], [], [], [], []] }], functions := (( - { parameters := [0, 1, 2, 3, 4, 5], types := [.nat, .nat, .nat, .nat, .nat, .nat], result := .nat, - body := (.«match» .nat (.call 1 [(.build (.adt 0) (.adt 0) [(.var 0), (.var 1), (.var 2), (.var 3), (.var 4), (.var 5)])]) [(.arm .ok [6] (.var 6)), (.arm .error [7] (.value .nat (.nat 9)))]) }) ::( - { parameters := [0], types := [(.adt 0)], result := (.result .nat (.pair .bool .bool)), - body := (.«let» 1 (.pair (.adt 1) .bool) (.call 2 [(.var 0)]) (.«match» (.result .nat (.pair .bool .bool)) (.second (.var 1)) [(.arm .true [] (.call 3 [(.var 0), (.first (.var 1))])), (.arm .false [] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])]))])) }) ::( - { parameters := [0], types := [(.adt 0)], result := (.pair (.adt 1) .bool), - body := (.call 4 [(.closure 5 []), (.value .nat (.nat 11)), (.call 6 [(.var 0)])]) }) ::( - { parameters := [0, 1], types := [(.adt 0), (.adt 1)], result := (.result .nat (.pair .bool .bool)), - body := (.«match» (.result .nat (.pair .bool .bool)) (.call 7 [(.var 0), (.var 1)]) [(.arm .some [2] (.build .ok (.result .nat (.pair .bool .bool)) [(.var 2)])), (.arm .none [] (.«match» (.result .nat (.pair .bool .bool)) (.call 8 [(.var 1)]) [(.arm .some [3] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])])])), (.arm .none [] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])])]))]))]) }) ::( - { parameters := [0, 1, 2], types := [(.fn [(.adt 1)] (.option (.adt 1))), .nat, (.adt 1)], result := (.pair (.adt 1) .bool), - body := (.«match» (.pair (.adt 1) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.adt 1) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.adt 1) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.adt 1) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 4 [(.var 0), (.var 3), (.var 4)]))]))]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.«match» (.option (.adt 1)) (.call 9 [(.var 0)]) [(.arm .none [] (.build .none (.option (.adt 1)) [])), (.arm .some [1] (.call 10 [(.var 0), (.var 1)]))]) }) ::( - { parameters := [0], types := [(.adt 0)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.var 0), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0))]) }) ::( - { parameters := [0, 1], types := [(.adt 0), (.adt 1)], result := (.option .nat), - body := (.call 8 [(.var 1)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option .nat), - body := (.build .some (.option .nat) [(.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 2)), - body := (.«match» (.option (.adt 2)) (.«match» (.option (.adt 2)) (.«match» (.option (.adt 2)) (.cond (.call 11 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 0) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [1] (.build .some (.option (.adt 2)) [(.var 1)])), (.arm .none [] (.cond (.call 12 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 1) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]) [(.arm .some [2] (.build .some (.option (.adt 2)) [(.var 2)])), (.arm .none [] (.«match» (.option (.adt 2)) (.cond (.call 13 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 2) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [3] (.build .some (.option (.adt 2)) [(.var 3)])), (.arm .none [] (.cond (.call 14 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 3) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]))]) [(.arm .some [4] (.build .some (.option (.adt 2)) [(.var 4)])), (.arm .none [] (.«match» (.option (.adt 2)) (.«match» (.option (.adt 2)) (.cond (.call 15 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 4) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [5] (.build .some (.option (.adt 2)) [(.var 5)])), (.arm .none [] (.cond (.call 16 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 5) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]) [(.arm .some [6] (.build .some (.option (.adt 2)) [(.var 6)])), (.arm .none [] (.«match» (.option (.adt 2)) (.cond (.call 17 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 6) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])) [(.arm .some [7] (.build .some (.option (.adt 2)) [(.var 7)])), (.arm .none [] (.cond (.call 18 [(.var 0)]) (.build .some (.option (.adt 2)) [(.build (.adt 7) (.adt 2) [])]) (.build .none (.option (.adt 2)) [])))]))]))]) }) ::( - { parameters := [0, 1], types := [(.adt 1), (.adt 2)], result := (.option (.adt 1)), - body := (.«match» (.option (.adt 1)) (.var 1) [(.arm (.adt 0) [] (.call 19 [(.var 0)])), (.arm (.adt 1) [] (.call 20 [(.var 0)])), (.arm (.adt 2) [] (.call 21 [(.var 0)])), (.arm (.adt 3) [] (.call 22 [(.var 0)])), (.arm (.adt 4) [] (.call 23 [(.var 0)])), (.arm (.adt 5) [] (.call 24 [(.var 0)])), (.arm (.adt 6) [] (.call 25 [(.var 0)])), (.arm (.adt 7) [] (.call 26 [(.var 0)]))]) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 1), (.value .nat (.nat 0))]) (.call 27 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 2), (.value .nat (.nat 0))]) (.call 28 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 3), (.value .nat (.nat 0))]) (.call 29 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 4), (.value .nat (.nat 0))]) (.call 30 [(.field (.var 0) 0)]) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 0))]) (.prim .natLe [(.value .nat (.nat 2)), (.prim .natAdd [(.prim .natAdd [(.prim .natAdd [(.field (.var 0) 1), (.field (.var 0) 2)]), (.field (.var 0) 3)]), (.field (.var 0) 4)])]) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 0))]) (.cond (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 1))]) (.prim .natEq [(.field (.field (.var 0) 0) 5), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natEq [(.field (.var 0) 7), (.value .nat (.nat 0))]) (.cond (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 1))]) (.call 31 [(.field (.var 0) 0)]) (.build .false .bool [])) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := .bool, - body := (.cond (.prim .natLt [(.field (.var 0) 8), (.value .nat (.nat 3))]) (.cond (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 0))]) (.prim .natEq [(.field (.var 0) 5), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .true .bool []) (.cond (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 1))]) (.prim .natEq [(.field (.var 0) 6), (.value .nat (.nat 1))]) (.build .false .bool [])) (.build .true .bool []) (.cond (.prim .natEq [(.field (.var 0) 8), (.value .nat (.nat 2))]) (.prim .natEq [(.field (.var 0) 7), (.value .nat (.nat 1))]) (.build .false .bool [])))) (.build .false .bool [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 11 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 32 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 12 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 33 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 13 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 34 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 14 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 35 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 15 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 36 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 16 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 37 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 17 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 38 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.option (.adt 1)), - body := (.cond (.call 18 [(.var 0)]) (.build .some (.option (.adt 1)) [(.call 39 [(.var 0)])]) (.build .none (.option (.adt 1)) [])) }) ::( - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.prim .natLt [(.value .nat (.nat 380)), (.field (.var 0) 0)]) }) ::( - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.prim .natLt [(.value .nat (.nat 90)), (.field (.var 0) 1)]) }) ::( - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.prim .natLt [(.value .nat (.nat 20)), (.field (.var 0) 2)]) }) ::( - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.prim .natLt [(.value .nat (.nat 12)), (.field (.var 0) 3)]) }) ::( - { parameters := [0], types := [(.adt 0)], result := .bool, - body := (.prim .natLt [(.field (.var 0) 4), (.value .nat (.nat 90))]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.value .nat (.nat 1)), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.value .nat (.nat 1)), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.value .nat (.nat 1)), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.value .nat (.nat 1)), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.value .nat (.nat 1)), (.field (.var 0) 6), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.value .nat (.nat 1)), (.field (.var 0) 7), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.value .nat (.nat 1)), (.field (.var 0) 8)]) }) ::( - { parameters := [0], types := [(.adt 1)], result := (.adt 1), - body := (.build (.adt 0) (.adt 1) [(.field (.var 0) 0), (.field (.var 0) 1), (.field (.var 0) 2), (.field (.var 0) 3), (.field (.var 0) 4), (.field (.var 0) 5), (.field (.var 0) 6), (.field (.var 0) 7), (.prim .natAdd [(.field (.var 0) 8), (.value .nat (.nat 1))])]) }) ::[]) } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .core, items := ((.enum (.adt 0) [{ number := 0, fields := [.nat, .nat, .nat, .nat, .nat, .nat] }]) :: - (.enum (.adt 1) [{ number := 0, fields := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat] }]) :: - (.enum (.adt 2) [{ number := 0, fields := [] }, { number := 1, fields := [] }, { number := 2, fields := [] }, { number := 3, fields := [] }, { number := 4, fields := [] }, { number := 5, fields := [] }, { number := 6, fields := [] }, { number := 7, fields := [] }]) :: - (.enum (.fn 0) [{ number := 5, fields := [] }]) :: - (.apply 0 [(.adt 1)] (.option (.adt 1)) true [{ function := 5, captures := [], functionFallible := true }]) :: - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := .nat }, { pattern := (.bind (.generated .binding 3)), type := .nat }, { pattern := (.bind (.generated .binding 4)), type := .nat }, { pattern := (.bind (.generated .binding 5)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 1)) none (.call (.function 1) [(.construct (.adt 0 0) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1)), (.copy (.generated .binding 2)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4)), (.copy (.generated .binding 5))])] true))] (.matchOn (.move (.generated .holder 1)) [(.mk (.ok (.bind (.generated .binding 6))) (.mk [] (.succeed (.copy (.generated .binding 6))))), (.mk (.err .wild) (.mk [] (.succeed (.lit (.nat 9)))))]))) :: - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible (.result .nat (.pair .bool .bool))) (.mk [(.mk (.bind (.generated .binding 1)) (some (.pair (.adt 1) .bool)) (.call (.function 2) [(.clone (.generated .binding 0))] true)), (.mk (.bind (.generated .holder 3)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 2))]) none (.move (.generated .binding 1)))] (.move (.generated .part 2)))))] (.cond (.move (.generated .holder 3)) (.mk [] (.succeed (.call (.function 3) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 4)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 4))))] false))) (.mk [] (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))])))))) :: - (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.fallible (.pair (.adt 1) .bool)) (.mk [] (.call (.function 4) [(.construct (.closure 0 5) []), (.lit (.nat 11)), (.call (.function 6) [(.move (.generated .binding 0))] false)] false))) :: - (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 1) }] (.result .nat (.pair .bool .bool)) (.mk [(.mk (.bind (.generated .holder 5)) none (.call (.function 7) [(.move (.generated .binding 0)), (.clone (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 5)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 6)) none (.call (.function 8) [(.move (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 6)) [(.mk .none (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))]))), (.mk (.some .wild) (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))])))]))) :: - (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := (.adt 1) }] (.fallible (.pair (.adt 1) .bool)) (.mk [(.mk (.bind (.generated .holder 7)) none (.copy (.generated .binding 1)))] (.cond (.isZero (.generated .holder 7)) (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 7))), (.mk (.bind (.generated .holder 9)) none (.block (.mk [(.mk (.bind (.generated .callee 8)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 8) [(.clone (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 9)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))]))))) :: - (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.fallible (.option (.adt 1))) (.mk [(.mk (.bind (.generated .holder 10)) none (.call (.function 9) [(.clone (.generated .binding 0))] true))] (.matchOn (.move (.generated .holder 10)) [(.mk .none (.mk [] (.succeed (.construct (.none (.adt 1)) [])))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.call (.function 10) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false)))]))) :: - (.function (.generated .function 6) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.move (.generated .binding 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0))]))) :: - (.function (.generated .function 7) [{ pattern := .wild, type := (.adt 0) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 1) }] (.option .nat) (.mk [] (.call (.function 8) [(.move (.generated .binding 1))] false))) :: - (.function (.generated .function 8) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.option .nat) (.mk [] (.construct .some [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 11))]) (.mk [] (.move (.generated .part 11))))])]))) :: - (.function (.generated .function 9) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.fallible (.option (.adt 2))) (.mk [(.mk (.bind (.generated .holder 15)) none (.block (.mk [(.mk (.bind (.generated .holder 13)) none (.block (.mk [(.mk (.bind (.generated .holder 12)) none (.cond (.call (.function 11) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 0) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 12)) [(.mk .none (.mk [] (.cond (.call (.function 12) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 1) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.construct .some [(.move (.generated .binding 1))])))]))))] (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 14)) none (.cond (.call (.function 13) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 2) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 14)) [(.mk .none (.mk [] (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 3) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.construct .some [(.move (.generated .binding 3))])))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.construct .some [(.move (.generated .binding 2))])))]))))] (.matchOn (.move (.generated .holder 15)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 17)) none (.block (.mk [(.mk (.bind (.generated .holder 16)) none (.cond (.call (.function 15) [(.clone (.generated .binding 0))] true) (.mk [] (.construct .some [(.construct (.adt 2 4) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 16)) [(.mk .none (.mk [] (.cond (.call (.function 16) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 5) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.construct .some [(.move (.generated .binding 5))])))]))))] (.matchOn (.move (.generated .holder 17)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 18)) none (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 6) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 18)) [(.mk .none (.mk [] (.cond (.call (.function 18) [(.move (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.construct (.adt 2 7) [])]))) (.mk [] (.succeed (.construct (.none (.adt 2)) [])))))), (.mk (.some (.bind (.generated .binding 7))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 7))]))))]))), (.mk (.some (.bind (.generated .binding 6))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 6))]))))]))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 4))]))))]))) :: - (.function (.generated .function 10) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 2) }] (.fallible (.option (.adt 1))) (.mk [(.mk (.bind (.generated .holder 19)) none (.move (.generated .binding 1)))] (.matchOn (.move (.generated .holder 19)) [(.mk (.adt 2 0 []) (.mk [] (.succeed (.call (.function 19) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 1 []) (.mk [] (.succeed (.call (.function 20) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 2 []) (.mk [] (.succeed (.call (.function 21) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 3 []) (.mk [] (.succeed (.call (.function 22) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 4 []) (.mk [] (.call (.function 23) [(.move (.generated .binding 0))] false))), (.mk (.adt 2 5 []) (.mk [] (.succeed (.call (.function 24) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 6 []) (.mk [] (.succeed (.call (.function 25) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 7 []) (.mk [] (.call (.function 26) [(.move (.generated .binding 0))] false)))]))) :: - (.function (.generated .function 11) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .operand 21)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 20)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 20))))])), (.mk (.bind (.generated .operand 22)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false) (.mk [] (.call (.function 27) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 23)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 23))))])] false)) (.mk [] (.lit (.bool false)))))) :: - (.function (.generated .function 12) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .operand 25)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 24)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 24))))])), (.mk (.bind (.generated .operand 26)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false) (.mk [] (.call (.function 28) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 27)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 27))))])] false)) (.mk [] (.lit (.bool false)))))) :: - (.function (.generated .function 13) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .operand 29)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 28)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 28))))])), (.mk (.bind (.generated .operand 30)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false) (.mk [] (.call (.function 29) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 31)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 31))))])] false)) (.mk [] (.lit (.bool false)))))) :: - (.function (.generated .function 14) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .operand 33)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 32)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 32))))])), (.mk (.bind (.generated .operand 34)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false) (.mk [] (.call (.function 30) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 35)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 35))))])] false)) (.mk [] (.lit (.bool false)))))) :: - (.function (.generated .function 15) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.fallible .bool) (.mk [(.mk (.bind (.generated .operand 37)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 36)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 36))))])), (.mk (.bind (.generated .operand 38)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 37)), (.move (.generated .operand 38))] false) (.mk [(.mk (.bind (.generated .operand 49)) none (.lit (.nat 2))), (.mk (.bind (.generated .operand 50)) none (.block (.mk [(.mk (.bind (.generated .operand 47)) none (.block (.mk [(.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.bind (.generated .operand 41)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 39)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 39))))])), (.mk (.bind (.generated .operand 42)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 40)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 40))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 41)), (.move (.generated .operand 42))] true)))), (.mk (.bind (.generated .operand 45)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 43)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 43))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 44)), (.move (.generated .operand 45))] true)))), (.mk (.bind (.generated .operand 48)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 46)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 46))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 47)), (.move (.generated .operand 48))] true))))] (.succeed (.call (.runtime .natLe) [(.move (.generated .operand 49)), (.move (.generated .operand 50))] false))) (.mk [] (.succeed (.lit (.bool false))))))) :: - (.function (.generated .function 16) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .operand 52)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 51)), .wild, .wild]) (.mk [] (.move (.generated .part 51))))])), (.mk (.bind (.generated .operand 53)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 52)), (.move (.generated .operand 53))] false) (.mk [(.mk (.bind (.generated .operand 55)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 54)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 54))))])), (.mk (.bind (.generated .operand 56)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 55)), (.move (.generated .operand 56))] false) (.mk [(.mk (.bind (.generated .operand 60)) none (.block (.mk [(.mk (.bind (.generated .holder 59)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 58)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 58))))]))] (.matchOn (.move (.generated .holder 59)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 57))]) (.mk [] (.move (.generated .part 57))))])))), (.mk (.bind (.generated .operand 61)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))))) :: - (.function (.generated .function 17) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .operand 63)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 62)), .wild]) (.mk [] (.move (.generated .part 62))))])), (.mk (.bind (.generated .operand 64)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 63)), (.move (.generated .operand 64))] false) (.mk [(.mk (.bind (.generated .operand 66)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 65)), .wild, .wild]) (.mk [] (.move (.generated .part 65))))])), (.mk (.bind (.generated .operand 67)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 66)), (.move (.generated .operand 67))] false) (.mk [] (.call (.function 31) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 68)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 68))))])] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))))) :: - (.function (.generated .function 18) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] .bool (.mk [(.mk (.bind (.generated .operand 70)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 69))]) (.mk [] (.move (.generated .part 69))))])), (.mk (.bind (.generated .operand 71)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 70)), (.move (.generated .operand 71))] false) (.mk [(.mk (.bind (.generated .operand 73)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 72))]) (.mk [] (.move (.generated .part 72))))])), (.mk (.bind (.generated .operand 74)) none (.lit (.nat 0)))] (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 73)), (.move (.generated .operand 74))] false) (.mk [(.mk (.bind (.generated .operand 76)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 75)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 75))))])), (.mk (.bind (.generated .operand 77)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 76)), (.move (.generated .operand 77))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 79)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 78))]) (.mk [] (.move (.generated .part 78))))])), (.mk (.bind (.generated .operand 80)) none (.lit (.nat 1)))] (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 79)), (.move (.generated .operand 80))] false) (.mk [(.mk (.bind (.generated .operand 82)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 81)), .wild, .wild]) (.mk [] (.move (.generated .part 81))))])), (.mk (.bind (.generated .operand 83)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 82)), (.move (.generated .operand 83))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 85)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 84))]) (.mk [] (.move (.generated .part 84))))])), (.mk (.bind (.generated .operand 86)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 85)), (.move (.generated .operand 86))] false) (.mk [(.mk (.bind (.generated .operand 88)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 87)), .wild]) (.mk [] (.move (.generated .part 87))))])), (.mk (.bind (.generated .operand 89)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 88)), (.move (.generated .operand 89))] false)) (.mk [] (.lit (.bool false))))))))) (.mk [] (.lit (.bool false)))))) :: - (.function (.generated .function 19) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.option (.adt 1)) (.mk [] (.cond (.call (.function 11) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 32) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))))) :: - (.function (.generated .function 20) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.option (.adt 1)) (.mk [] (.cond (.call (.function 12) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 33) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))))) :: - (.function (.generated .function 21) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.option (.adt 1)) (.mk [] (.cond (.call (.function 13) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 34) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))))) :: - (.function (.generated .function 22) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.option (.adt 1)) (.mk [] (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 35) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))))) :: - (.function (.generated .function 23) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.fallible (.option (.adt 1))) (.mk [] (.cond (.call (.function 15) [(.clone (.generated .binding 0))] true) (.mk [] (.succeed (.construct .some [(.call (.function 36) [(.move (.generated .binding 0))] false)]))) (.mk [] (.succeed (.construct (.none (.adt 1)) [])))))) :: - (.function (.generated .function 24) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.option (.adt 1)) (.mk [] (.cond (.call (.function 16) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 37) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))))) :: - (.function (.generated .function 25) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.option (.adt 1)) (.mk [] (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 38) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))))) :: - (.function (.generated .function 26) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.fallible (.option (.adt 1))) (.mk [] (.cond (.call (.function 18) [(.clone (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.call (.function 39) [(.move (.generated .binding 0))] true)]))) (.mk [] (.succeed (.construct (.none (.adt 1)) [])))))) :: - (.function (.generated .function 27) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .operand 91)) none (.lit (.nat 380))), (.mk (.bind (.generated .operand 92)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [(.bind (.generated .part 90)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 90))))]))] (.call (.runtime .natLt) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] false))) :: - (.function (.generated .function 28) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .operand 94)) none (.lit (.nat 90))), (.mk (.bind (.generated .operand 95)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 93)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 93))))]))] (.call (.runtime .natLt) [(.move (.generated .operand 94)), (.move (.generated .operand 95))] false))) :: - (.function (.generated .function 29) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .operand 97)) none (.lit (.nat 20))), (.mk (.bind (.generated .operand 98)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 96)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 96))))]))] (.call (.runtime .natLt) [(.move (.generated .operand 97)), (.move (.generated .operand 98))] false))) :: - (.function (.generated .function 30) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .operand 100)) none (.lit (.nat 12))), (.mk (.bind (.generated .operand 101)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, (.bind (.generated .part 99)), .wild, .wild]) (.mk [] (.move (.generated .part 99))))]))] (.call (.runtime .natLt) [(.move (.generated .operand 100)), (.move (.generated .operand 101))] false))) :: - (.function (.generated .function 31) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 0) }] .bool (.mk [(.mk (.bind (.generated .operand 103)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 102)), .wild]) (.mk [] (.move (.generated .part 102))))])), (.mk (.bind (.generated .operand 104)) none (.lit (.nat 90)))] (.call (.runtime .natLt) [(.move (.generated .operand 103)), (.move (.generated .operand 104))] false))) :: - (.function (.generated .function 32) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 105)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 105))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 106)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 106))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 107)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 107))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 108)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 108))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 109)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 109))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 110)), .wild, .wild]) (.mk [] (.move (.generated .part 110))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 111)), .wild]) (.mk [] (.move (.generated .part 111))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 112))]) (.mk [] (.move (.generated .part 112))))])]))) :: - (.function (.generated .function 33) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 113)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 113))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 114)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 114))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 115)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 115))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 116)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 116))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 117)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 117))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 118)), .wild, .wild]) (.mk [] (.move (.generated .part 118))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 119)), .wild]) (.mk [] (.move (.generated .part 119))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 120))]) (.mk [] (.move (.generated .part 120))))])]))) :: - (.function (.generated .function 34) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 121)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 121))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 122)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 122))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 123)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 123))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 124)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 124))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 125)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 125))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 126)), .wild, .wild]) (.mk [] (.move (.generated .part 126))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 127)), .wild]) (.mk [] (.move (.generated .part 127))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 128))]) (.mk [] (.move (.generated .part 128))))])]))) :: - (.function (.generated .function 35) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 129)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 129))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 130)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 130))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 131)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 131))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 132)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 132))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 133)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 133))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 134)), .wild, .wild]) (.mk [] (.move (.generated .part 134))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 135)), .wild]) (.mk [] (.move (.generated .part 135))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 136))]) (.mk [] (.move (.generated .part 136))))])]))) :: - (.function (.generated .function 36) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 137)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 137))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 138)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 138))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 139)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 139))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 140)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 140))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 141)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 141))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 142)), .wild, .wild]) (.mk [] (.move (.generated .part 142))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 143)), .wild]) (.mk [] (.move (.generated .part 143))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 144))]) (.mk [] (.move (.generated .part 144))))])]))) :: - (.function (.generated .function 37) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 145)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 145))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 146)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 146))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 147)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 147))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 148)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 148))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 149)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 149))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 150)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 150))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 151)), .wild]) (.mk [] (.move (.generated .part 151))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 152))]) (.mk [] (.move (.generated .part 152))))])]))) :: - (.function (.generated .function 38) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.adt 1) (.mk [] (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 153)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 153))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 154)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 154))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 155)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 155))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 156)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 156))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 157)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 157))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 158)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 158))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 159)), .wild, .wild]) (.mk [] (.move (.generated .part 159))))]), (.lit (.nat 1)), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 160))]) (.mk [] (.move (.generated .part 160))))])]))) :: - (.function (.generated .function 39) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 1) }] (.fallible (.adt 1)) (.mk [] (.succeed (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 161)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 161))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 162)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 162))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 163)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 163))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 164)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 164))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 165)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 165))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 166)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 166))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 167)), .wild, .wild]) (.mk [] (.move (.generated .part 167))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 168)), .wild]) (.mk [] (.move (.generated .part 168))))]), (.block (.mk [(.mk (.bind (.generated .operand 170)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 169))]) (.mk [] (.move (.generated .part 169))))])), (.mk (.bind (.generated .operand 171)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 170)), (.move (.generated .operand 171))] true)))])))) :: - []) } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [(([(.adt 1)], (.option (.adt 1))), true)] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.call (.function 1) [(.construct (.adt 0 0) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1)), (.copy (.generated .binding 2)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4)), (.copy (.generated .binding 5))])] true))], (.matchOn (.move (.generated .holder 1)) [(.mk (.ok (.bind (.generated .binding 6))) (.mk [] (.succeed (.copy (.generated .binding 6))))), (.mk (.err .wild) (.mk [] (.succeed (.lit (.nat 9)))))]), [(5, .nat, (some 5)), (4, .nat, (some 4)), (3, .nat, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.matchArms (st := (.result .nat (.pair .bool .bool))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))))))) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(6, .nat, (some 6)), (5, .nat, (some 5)), (4, .nat, (some 4)), (3, .nat, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, .nat, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.copy (.generated .binding 6)))) (Corr.mCons (Γ' := [(7, (.pair .bool .bool), none), (5, .nat, (some 5)), (4, .nat, (some 4)), (3, .nat, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, .nat, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.lit (.nat 9)))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl)))) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some (.pair (.adt 1) .bool)) (.call (.function 2) [(.clone (.generated .binding 0))] true)), (.mk (.bind (.generated .holder 3)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 2))]) none (.move (.generated .binding 1)))] (.move (.generated .part 2)))))], (.cond (.move (.generated .holder 3)) (.mk [] (.succeed (.call (.function 3) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 4)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 4))))] false))) (.mk [] (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))])))), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.matchBool (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 2))]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 2))) (Corr.second (ta := (.adt 1)) (tb := .bool) (Corr.var rfl rfl) rfl)) rfl rfl (Corr.kIf (la := []) (ta := (.succeed (.call (.function 3) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 4)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 4))))] false))) (lb := []) (tb := (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))) (Corr.fOfB (Corr.callOps (ts := [(.adt 0), (.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 4)), .wild]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 4))) (Corr.first (ta := (.adt 1)) (tb := .bool) (Corr.var rfl rfl) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)))))⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 4) [(.construct (.closure 0 5) []), (.lit (.nat 11)), (.call (.function 6) [(.move (.generated .binding 0))] false)] false), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.callF (ts := [(.fn [(.adt 1)] (.option (.adt 1))), .nat, (.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := true) (ff := true) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl)⟩⟩ - -theorem fun3 : FunOK program krate flags 3 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 5)) none (.call (.function 7) [(.move (.generated .binding 0)), (.clone (.generated .binding 1))] false))], (.matchOn (.move (.generated .holder 5)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 6)) none (.call (.function 8) [(.move (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 6)) [(.mk .none (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))]))), (.mk (.some .wild) (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))])))]), [(1, (.adt 1), (some 1)), (0, (.adt 0), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [(.adt 0), (.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.adt 1), (some 1)), (0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 6)) none (.call (.function 8) [(.move (.generated .binding 1))] false))]) (tail := (.matchOn (.move (.generated .holder 6)) [(.mk .none (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))]))), (.mk (.some .wild) (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))])) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, (.adt 1), (some 1)), (0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.adt 1), (some 1)), (0, (.adt 0), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))])) (Corr.mCons (Γ' := [(3, .nat, none), (1, (.adt 1), (some 1)), (0, (.adt 0), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)) rfl rfl rfl)) rfl rfl rfl)⟩⟩ - -theorem fun4 : FunOK program krate flags 4 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 7)) none (.copy (.generated .binding 1)))], (.cond (.isZero (.generated .holder 7)) (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 7))), (.mk (.bind (.generated .holder 9)) none (.block (.mk [(.mk (.bind (.generated .callee 8)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 8) [(.clone (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 9)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))]))), [(2, (.adt 1), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.adt 1)] (.option (.adt 1))), (some 0))], rfl, rfl, - (Corr.matchNat (sl := (some 3)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (lb := [(.mk (.bind (.generated .holder 9)) none (.block (.mk [(.mk (.bind (.generated .callee 8)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 8) [(.clone (.generated .binding 2))] true))))]) (tb := (.matchOn (.move (.generated .holder 9)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))])) (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))))) (Corr.matchArms (st := (.option (.adt 1))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 8)) (some (.fn 0)) (.clone (.generated .binding 0)))]) (tail := (.apply (.generated .callee 8) [(.clone (.generated .binding 2))] true)) (Corr.apply (ps := [(.adt 1)]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (2, (.adt 1), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.adt 1)] (.option (.adt 1))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true))))) (Corr.mCons (Γ' := [(4, (.adt 1), (some 4)), (3, .nat, (some 3)), (2, (.adt 1), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.adt 1)] (.option (.adt 1))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.adt 1)] (.option (.adt 1))), .nat, (.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))))))) rfl rfl rfl)))⟩⟩ - -theorem fun5 : FunOK program krate flags 5 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 10)) none (.call (.function 9) [(.clone (.generated .binding 0))] true))], (.matchOn (.move (.generated .holder 10)) [(.mk .none (.mk [] (.succeed (.construct (.none (.adt 1)) [])))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.call (.function 10) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false)))]), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct (.none (.adt 1)) []))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 10) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.adt 1), (.adt 2)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl)⟩⟩ - -theorem fun6 : FunOK program krate flags 6 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.move (.generated .binding 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0))]), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))))))))) rfl)⟩⟩ - -theorem fun7 : FunOK program krate flags 7 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 8) [(.move (.generated .binding 1))] false), [(1, (.adt 1), (some 1)), (0, (.adt 0), none)], rfl, rfl, - (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun8 : FunOK program krate flags 8 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct .some [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 11))]) (.mk [] (.move (.generated .part 11))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 11))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)⟩⟩ - -theorem fun9 : FunOK program krate flags 9 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 15)) none (.block (.mk [(.mk (.bind (.generated .holder 13)) none (.block (.mk [(.mk (.bind (.generated .holder 12)) none (.cond (.call (.function 11) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 0) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 12)) [(.mk .none (.mk [] (.cond (.call (.function 12) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 1) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.construct .some [(.move (.generated .binding 1))])))]))))] (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 14)) none (.cond (.call (.function 13) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 2) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 14)) [(.mk .none (.mk [] (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 3) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.construct .some [(.move (.generated .binding 3))])))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.construct .some [(.move (.generated .binding 2))])))]))))], (.matchOn (.move (.generated .holder 15)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 17)) none (.block (.mk [(.mk (.bind (.generated .holder 16)) none (.cond (.call (.function 15) [(.clone (.generated .binding 0))] true) (.mk [] (.construct .some [(.construct (.adt 2 4) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 16)) [(.mk .none (.mk [] (.cond (.call (.function 16) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 5) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.construct .some [(.move (.generated .binding 5))])))]))))] (.matchOn (.move (.generated .holder 17)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 18)) none (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 6) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 18)) [(.mk .none (.mk [] (.cond (.call (.function 18) [(.move (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.construct (.adt 2 7) [])]))) (.mk [] (.succeed (.construct (.none (.adt 2)) [])))))), (.mk (.some (.bind (.generated .binding 7))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 7))]))))]))), (.mk (.some (.bind (.generated .binding 6))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 6))]))))]))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 4))]))))]), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 13)) none (.block (.mk [(.mk (.bind (.generated .holder 12)) none (.cond (.call (.function 11) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 0) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 12)) [(.mk .none (.mk [] (.cond (.call (.function 12) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 1) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.construct .some [(.move (.generated .binding 1))])))]))))]) (tail := (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 14)) none (.cond (.call (.function 13) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 2) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 14)) [(.mk .none (.mk [] (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 3) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.construct .some [(.move (.generated .binding 3))])))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.construct .some [(.move (.generated .binding 2))])))])) (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 12)) none (.cond (.call (.function 11) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 0) [])])) (.mk [] (.construct (.none (.adt 2)) []))))]) (tail := (.matchOn (.move (.generated .holder 12)) [(.mk .none (.mk [] (.cond (.call (.function 12) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 1) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.construct .some [(.move (.generated .binding 1))])))])) (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.cond (lc := []) (ce := (.call (.function 11) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 2 0) [])])) (lb := []) (tb := (.construct (.none (.adt 2)) [])) (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 12) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 1) [])])) (.mk [] (.construct (.none (.adt 2)) [])))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.move (.generated .binding 1))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 12) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 2 1) [])])) (lb := []) (tb := (.construct (.none (.adt 2)) [])) (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) rfl rfl rfl)) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 14)) none (.cond (.call (.function 13) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 2) [])])) (.mk [] (.construct (.none (.adt 2)) []))))]) (tail := (.matchOn (.move (.generated .holder 14)) [(.mk .none (.mk [] (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 3) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.construct .some [(.move (.generated .binding 3))])))])) (Corr.mCons (Γ' := [(2, (.adt 2), (some 2)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.move (.generated .binding 2))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.cond (lc := []) (ce := (.call (.function 13) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 2 2) [])])) (lb := []) (tb := (.construct (.none (.adt 2)) [])) (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 3) [])])) (.mk [] (.construct (.none (.adt 2)) [])))) (Corr.mCons (Γ' := [(3, (.adt 2), (some 3)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.move (.generated .binding 3))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 14) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 2 3) [])])) (lb := []) (tb := (.construct (.none (.adt 2)) [])) (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) rfl rfl rfl)) rfl rfl rfl)) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 17)) none (.block (.mk [(.mk (.bind (.generated .holder 16)) none (.cond (.call (.function 15) [(.clone (.generated .binding 0))] true) (.mk [] (.construct .some [(.construct (.adt 2 4) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 16)) [(.mk .none (.mk [] (.cond (.call (.function 16) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 5) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.construct .some [(.move (.generated .binding 5))])))]))))]) (tail := (.matchOn (.move (.generated .holder 17)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 18)) none (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 6) [])])) (.mk [] (.construct (.none (.adt 2)) []))))] (.matchOn (.move (.generated .holder 18)) [(.mk .none (.mk [] (.cond (.call (.function 18) [(.move (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.construct (.adt 2 7) [])]))) (.mk [] (.succeed (.construct (.none (.adt 2)) [])))))), (.mk (.some (.bind (.generated .binding 7))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 7))]))))]))), (.mk (.some (.bind (.generated .binding 6))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 6))]))))])) (Corr.mCons (Γ' := [(4, (.adt 2), (some 4)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct .some [(.move (.generated .binding 4))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 16)) none (.cond (.call (.function 15) [(.clone (.generated .binding 0))] true) (.mk [] (.construct .some [(.construct (.adt 2 4) [])])) (.mk [] (.construct (.none (.adt 2)) []))))]) (tail := (.matchOn (.move (.generated .holder 16)) [(.mk .none (.mk [] (.cond (.call (.function 16) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 5) [])])) (.mk [] (.construct (.none (.adt 2)) []))))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.construct .some [(.move (.generated .binding 5))])))])) (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.cond (lc := []) (ce := (.call (.function 15) [(.clone (.generated .binding 0))] true)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 2 4) [])])) (lb := []) (tb := (.construct (.none (.adt 2)) [])) (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 16) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 5) [])])) (.mk [] (.construct (.none (.adt 2)) [])))) (Corr.mCons (Γ' := [(5, (.adt 2), (some 5)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.move (.generated .binding 5))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 16) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 2 5) [])])) (lb := []) (tb := (.construct (.none (.adt 2)) [])) (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) rfl rfl rfl)) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 18)) none (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 2 6) [])])) (.mk [] (.construct (.none (.adt 2)) []))))]) (tail := (.matchOn (.move (.generated .holder 18)) [(.mk .none (.mk [] (.cond (.call (.function 18) [(.move (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.construct (.adt 2 7) [])]))) (.mk [] (.succeed (.construct (.none (.adt 2)) [])))))), (.mk (.some (.bind (.generated .binding 7))) (.mk [] (.succeed (.construct .some [(.move (.generated .binding 7))]))))])) (Corr.mCons (Γ' := [(6, (.adt 2), (some 6)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct .some [(.move (.generated .binding 6))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.matchArms (st := (.option (.adt 2))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.cond (lc := []) (ce := (.call (.function 17) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 2 6) [])])) (lb := []) (tb := (.construct (.none (.adt 2)) [])) (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) (Corr.mCons (Γ' := [(0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 18) [(.move (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.construct (.adt 2 7) [])]))) (.mk [] (.succeed (.construct (.none (.adt 2)) []))))) (Corr.mCons (Γ' := [(7, (.adt 2), (some 7)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct .some [(.move (.generated .binding 7))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 18) [(.move (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.construct (.adt 2 7) [])]))) (lb := []) (tb := (.succeed (.construct (.none (.adt 2)) []))) (Corr.fOfB (Corr.build (ts := [(.adt 2)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))) rfl rfl rfl)) rfl rfl rfl)) rfl rfl rfl)⟩⟩ - -theorem fun10 : FunOK program krate flags 10 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 19)) none (.move (.generated .binding 1)))], (.matchOn (.move (.generated .holder 19)) [(.mk (.adt 2 0 []) (.mk [] (.succeed (.call (.function 19) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 1 []) (.mk [] (.succeed (.call (.function 20) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 2 []) (.mk [] (.succeed (.call (.function 21) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 3 []) (.mk [] (.succeed (.call (.function 22) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 4 []) (.mk [] (.call (.function 23) [(.move (.generated .binding 0))] false))), (.mk (.adt 2 5 []) (.mk [] (.succeed (.call (.function 24) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 6 []) (.mk [] (.succeed (.call (.function 25) [(.move (.generated .binding 0))] false)))), (.mk (.adt 2 7 []) (.mk [] (.call (.function 26) [(.move (.generated .binding 0))] false)))]), [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.adt 2)) (U := []) (view := false) (idx := [0, 1, 2, 3, 4, 5, 6, 7]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.call (.function 19) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.call (.function 20) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 2) (loads := []) (lets := []) (tail := (.succeed (.call (.function 21) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 3) (loads := []) (lets := []) (tail := (.succeed (.call (.function 22) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 4) (loads := []) (lets := []) (tail := (.call (.function 23) [(.move (.generated .binding 0))] false)) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 5) (loads := []) (lets := []) (tail := (.succeed (.call (.function 24) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 6) (loads := []) (lets := []) (tail := (.succeed (.call (.function 25) [(.move (.generated .binding 0))] false))) (Corr.mCons (Γ' := [(1, (.adt 2), (some 1)), (0, (.adt 1), (some 0))]) (j := 7) (loads := []) (lets := []) (tail := (.call (.function 26) [(.move (.generated .binding 0))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.callF (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl (Corr.fOfB (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))) rfl rfl rfl)⟩⟩ - -theorem fun11 : FunOK program krate flags 11 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 21)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 20)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 20))))])), (.mk (.bind (.generated .operand 22)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false) (.mk [] (.call (.function 27) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 23)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 23))))])] false)) (.mk [] (.lit (.bool false)))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 21)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 20)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 20))))])), (.mk (.bind (.generated .operand 22)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 21)), (.move (.generated .operand 22))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 20))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 27) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 23)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 23))))])] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 23))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ - -theorem fun12 : FunOK program krate flags 12 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 25)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 24)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 24))))])), (.mk (.bind (.generated .operand 26)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false) (.mk [] (.call (.function 28) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 27)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 27))))])] false)) (.mk [] (.lit (.bool false)))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 25)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 24)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 24))))])), (.mk (.bind (.generated .operand 26)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 24))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 28) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 27)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 27))))])] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 27))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ - -theorem fun13 : FunOK program krate flags 13 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 29)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 28)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 28))))])), (.mk (.bind (.generated .operand 30)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false) (.mk [] (.call (.function 29) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 31)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 31))))])] false)) (.mk [] (.lit (.bool false)))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 29)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 28)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 28))))])), (.mk (.bind (.generated .operand 30)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 28))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 29) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 31)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 31))))])] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 31))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ - -theorem fun14 : FunOK program krate flags 14 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 33)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 32)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 32))))])), (.mk (.bind (.generated .operand 34)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false) (.mk [] (.call (.function 30) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 35)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 35))))])] false)) (.mk [] (.lit (.bool false)))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 33)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 32)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 32))))])), (.mk (.bind (.generated .operand 34)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 32))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 30) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 35)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 35))))])] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 35))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ - -theorem fun15 : FunOK program krate flags 15 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 37)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 36)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 36))))])), (.mk (.bind (.generated .operand 38)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 37)), (.move (.generated .operand 38))] false) (.mk [(.mk (.bind (.generated .operand 49)) none (.lit (.nat 2))), (.mk (.bind (.generated .operand 50)) none (.block (.mk [(.mk (.bind (.generated .operand 47)) none (.block (.mk [(.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.bind (.generated .operand 41)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 39)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 39))))])), (.mk (.bind (.generated .operand 42)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 40)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 40))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 41)), (.move (.generated .operand 42))] true)))), (.mk (.bind (.generated .operand 45)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 43)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 43))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 44)), (.move (.generated .operand 45))] true)))), (.mk (.bind (.generated .operand 48)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 46)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 46))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 47)), (.move (.generated .operand 48))] true))))] (.succeed (.call (.runtime .natLe) [(.move (.generated .operand 49)), (.move (.generated .operand 50))] false))) (.mk [] (.succeed (.lit (.bool false))))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 37)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 36)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 36))))])), (.mk (.bind (.generated .operand 38)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 37)), (.move (.generated .operand 38))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 36))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 49)) none (.lit (.nat 2))), (.mk (.bind (.generated .operand 50)) none (.block (.mk [(.mk (.bind (.generated .operand 47)) none (.block (.mk [(.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.bind (.generated .operand 41)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 39)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 39))))])), (.mk (.bind (.generated .operand 42)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 40)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 40))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 41)), (.move (.generated .operand 42))] true)))), (.mk (.bind (.generated .operand 45)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 43)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 43))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 44)), (.move (.generated .operand 45))] true)))), (.mk (.bind (.generated .operand 48)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 46)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 46))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 47)), (.move (.generated .operand 48))] true))))]) (ta := (.succeed (.call (.runtime .natLe) [(.move (.generated .operand 49)), (.move (.generated .operand 50))] false))) (lb := []) (tb := (.succeed (.lit (.bool false)))) (Corr.fOfB (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 47)) none (.block (.mk [(.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.bind (.generated .operand 41)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 39)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 39))))])), (.mk (.bind (.generated .operand 42)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 40)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 40))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 41)), (.move (.generated .operand 42))] true)))), (.mk (.bind (.generated .operand 45)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 43)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 43))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 44)), (.move (.generated .operand 45))] true)))), (.mk (.bind (.generated .operand 48)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 46)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 46))))]))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 47)), (.move (.generated .operand 48))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 44)) none (.block (.mk [(.mk (.bind (.generated .operand 41)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 39)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 39))))])), (.mk (.bind (.generated .operand 42)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 40)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 40))))]))] (.call (.runtime .natAdd) [(.move (.generated .operand 41)), (.move (.generated .operand 42))] true)))), (.mk (.bind (.generated .operand 45)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 43)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 43))))]))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 44)), (.move (.generated .operand 45))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 41)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 39)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 39))))])), (.mk (.bind (.generated .operand 42)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 40)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 40))))]))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 41)), (.move (.generated .operand 42))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 39))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 40))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 43))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 46))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.fOfB (Corr.bOfE (Corr.buildConst rfl)))))⟩⟩ - -theorem fun16 : FunOK program krate flags 16 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 52)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 51)), .wild, .wild]) (.mk [] (.move (.generated .part 51))))])), (.mk (.bind (.generated .operand 53)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 52)), (.move (.generated .operand 53))] false) (.mk [(.mk (.bind (.generated .operand 55)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 54)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 54))))])), (.mk (.bind (.generated .operand 56)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 55)), (.move (.generated .operand 56))] false) (.mk [(.mk (.bind (.generated .operand 60)) none (.block (.mk [(.mk (.bind (.generated .holder 59)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 58)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 58))))]))] (.matchOn (.move (.generated .holder 59)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 57))]) (.mk [] (.move (.generated .part 57))))])))), (.mk (.bind (.generated .operand 61)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 52)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 51)), .wild, .wild]) (.mk [] (.move (.generated .part 51))))])), (.mk (.bind (.generated .operand 53)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 52)), (.move (.generated .operand 53))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 51))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 55)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 54)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 54))))])), (.mk (.bind (.generated .operand 56)) none (.lit (.nat 1)))]) (ta := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 55)), (.move (.generated .operand 56))] false) (.mk [(.mk (.bind (.generated .operand 60)) none (.block (.mk [(.mk (.bind (.generated .holder 59)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 58)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 58))))]))] (.matchOn (.move (.generated .holder 59)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 57))]) (.mk [] (.move (.generated .part 57))))])))), (.mk (.bind (.generated .operand 61)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] false)) (.mk [] (.lit (.bool false))))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 55)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 54)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 54))))])), (.mk (.bind (.generated .operand 56)) none (.lit (.nat 1)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 55)), (.move (.generated .operand 56))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 54))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 60)) none (.block (.mk [(.mk (.bind (.generated .holder 59)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 58)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 58))))]))] (.matchOn (.move (.generated .holder 59)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 57))]) (.mk [] (.move (.generated .part 57))))])))), (.mk (.bind (.generated .operand 61)) none (.lit (.nat 1)))]) (ta := (.call (.runtime .natEq) [(.move (.generated .operand 60)), (.move (.generated .operand 61))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 59)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 58)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 58))))]))]) (tail := (.matchOn (.move (.generated .holder 59)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 57))]) (.mk [] (.move (.generated .part 57))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 57))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 58))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ - -theorem fun17 : FunOK program krate flags 17 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 63)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 62)), .wild]) (.mk [] (.move (.generated .part 62))))])), (.mk (.bind (.generated .operand 64)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 63)), (.move (.generated .operand 64))] false) (.mk [(.mk (.bind (.generated .operand 66)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 65)), .wild, .wild]) (.mk [] (.move (.generated .part 65))))])), (.mk (.bind (.generated .operand 67)) none (.lit (.nat 1)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 66)), (.move (.generated .operand 67))] false) (.mk [] (.call (.function 31) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 68)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 68))))])] false)) (.mk [] (.lit (.bool false))))) (.mk [] (.lit (.bool false)))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 63)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 62)), .wild]) (.mk [] (.move (.generated .part 62))))])), (.mk (.bind (.generated .operand 64)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 63)), (.move (.generated .operand 64))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 62))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 66)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 65)), .wild, .wild]) (.mk [] (.move (.generated .part 65))))])), (.mk (.bind (.generated .operand 67)) none (.lit (.nat 1)))]) (ta := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 66)), (.move (.generated .operand 67))] false) (.mk [] (.call (.function 31) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 68)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 68))))])] false)) (.mk [] (.lit (.bool false))))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 66)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 65)), .wild, .wild]) (.mk [] (.move (.generated .part 65))))])), (.mk (.bind (.generated .operand 67)) none (.lit (.nat 1)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 66)), (.move (.generated .operand 67))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 65))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 31) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 68)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 68))))])] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.callOps (ts := [(.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 68))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ - -theorem fun18 : FunOK program krate flags 18 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 70)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 69))]) (.mk [] (.move (.generated .part 69))))])), (.mk (.bind (.generated .operand 71)) none (.lit (.nat 3)))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 70)), (.move (.generated .operand 71))] false) (.mk [(.mk (.bind (.generated .operand 73)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 72))]) (.mk [] (.move (.generated .part 72))))])), (.mk (.bind (.generated .operand 74)) none (.lit (.nat 0)))] (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 73)), (.move (.generated .operand 74))] false) (.mk [(.mk (.bind (.generated .operand 76)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 75)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 75))))])), (.mk (.bind (.generated .operand 77)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 76)), (.move (.generated .operand 77))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 79)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 78))]) (.mk [] (.move (.generated .part 78))))])), (.mk (.bind (.generated .operand 80)) none (.lit (.nat 1)))] (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 79)), (.move (.generated .operand 80))] false) (.mk [(.mk (.bind (.generated .operand 82)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 81)), .wild, .wild]) (.mk [] (.move (.generated .part 81))))])), (.mk (.bind (.generated .operand 83)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 82)), (.move (.generated .operand 83))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 85)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 84))]) (.mk [] (.move (.generated .part 84))))])), (.mk (.bind (.generated .operand 86)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 85)), (.move (.generated .operand 86))] false) (.mk [(.mk (.bind (.generated .operand 88)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 87)), .wild]) (.mk [] (.move (.generated .part 87))))])), (.mk (.bind (.generated .operand 89)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 88)), (.move (.generated .operand 89))] false)) (.mk [] (.lit (.bool false))))))))) (.mk [] (.lit (.bool false)))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 70)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 69))]) (.mk [] (.move (.generated .part 69))))])), (.mk (.bind (.generated .operand 71)) none (.lit (.nat 3)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 70)), (.move (.generated .operand 71))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 69))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 73)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 72))]) (.mk [] (.move (.generated .part 72))))])), (.mk (.bind (.generated .operand 74)) none (.lit (.nat 0)))]) (ta := (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 73)), (.move (.generated .operand 74))] false) (.mk [(.mk (.bind (.generated .operand 76)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 75)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 75))))])), (.mk (.bind (.generated .operand 77)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 76)), (.move (.generated .operand 77))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 79)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 78))]) (.mk [] (.move (.generated .part 78))))])), (.mk (.bind (.generated .operand 80)) none (.lit (.nat 1)))] (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 79)), (.move (.generated .operand 80))] false) (.mk [(.mk (.bind (.generated .operand 82)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 81)), .wild, .wild]) (.mk [] (.move (.generated .part 81))))])), (.mk (.bind (.generated .operand 83)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 82)), (.move (.generated .operand 83))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 85)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 84))]) (.mk [] (.move (.generated .part 84))))])), (.mk (.bind (.generated .operand 86)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 85)), (.move (.generated .operand 86))] false) (.mk [(.mk (.bind (.generated .operand 88)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 87)), .wild]) (.mk [] (.move (.generated .part 87))))])), (.mk (.bind (.generated .operand 89)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 88)), (.move (.generated .operand 89))] false)) (.mk [] (.lit (.bool false))))))))) (lb := []) (tb := (.lit (.bool false))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 73)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 72))]) (.mk [] (.move (.generated .part 72))))])), (.mk (.bind (.generated .operand 74)) none (.lit (.nat 0)))]) (ce := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 73)), (.move (.generated .operand 74))] false) (.mk [(.mk (.bind (.generated .operand 76)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 75)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 75))))])), (.mk (.bind (.generated .operand 77)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 76)), (.move (.generated .operand 77))] false)) (.mk [] (.lit (.bool false))))) (lk := []) (Corr.cond (lc := [(.mk (.bind (.generated .operand 73)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 72))]) (.mk [] (.move (.generated .part 72))))])), (.mk (.bind (.generated .operand 74)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 73)), (.move (.generated .operand 74))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 72))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 76)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 75)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 75))))])), (.mk (.bind (.generated .operand 77)) none (.lit (.nat 1)))]) (ta := (.call (.runtime .natEq) [(.move (.generated .operand 76)), (.move (.generated .operand 77))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 75))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 79)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 78))]) (.mk [] (.move (.generated .part 78))))])), (.mk (.bind (.generated .operand 80)) none (.lit (.nat 1)))]) (tb := (.cond (.cond (.call (.runtime .natEq) [(.move (.generated .operand 79)), (.move (.generated .operand 80))] false) (.mk [(.mk (.bind (.generated .operand 82)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 81)), .wild, .wild]) (.mk [] (.move (.generated .part 81))))])), (.mk (.bind (.generated .operand 83)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 82)), (.move (.generated .operand 83))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 85)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 84))]) (.mk [] (.move (.generated .part 84))))])), (.mk (.bind (.generated .operand 86)) none (.lit (.nat 2)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 85)), (.move (.generated .operand 86))] false) (.mk [(.mk (.bind (.generated .operand 88)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 87)), .wild]) (.mk [] (.move (.generated .part 87))))])), (.mk (.bind (.generated .operand 89)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 88)), (.move (.generated .operand 89))] false)) (.mk [] (.lit (.bool false))))))) (Corr.bOfE (Corr.buildConst rfl)) (Corr.cond (lc := [(.mk (.bind (.generated .operand 79)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 78))]) (.mk [] (.move (.generated .part 78))))])), (.mk (.bind (.generated .operand 80)) none (.lit (.nat 1)))]) (ce := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 79)), (.move (.generated .operand 80))] false) (.mk [(.mk (.bind (.generated .operand 82)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 81)), .wild, .wild]) (.mk [] (.move (.generated .part 81))))])), (.mk (.bind (.generated .operand 83)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 82)), (.move (.generated .operand 83))] false)) (.mk [] (.lit (.bool false))))) (lk := []) (Corr.cond (lc := [(.mk (.bind (.generated .operand 79)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 78))]) (.mk [] (.move (.generated .part 78))))])), (.mk (.bind (.generated .operand 80)) none (.lit (.nat 1)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 79)), (.move (.generated .operand 80))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 78))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 82)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 81)), .wild, .wild]) (.mk [] (.move (.generated .part 81))))])), (.mk (.bind (.generated .operand 83)) none (.lit (.nat 1)))]) (ta := (.call (.runtime .natEq) [(.move (.generated .operand 82)), (.move (.generated .operand 83))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 81))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 85)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 84))]) (.mk [] (.move (.generated .part 84))))])), (.mk (.bind (.generated .operand 86)) none (.lit (.nat 2)))]) (tb := (.cond (.call (.runtime .natEq) [(.move (.generated .operand 85)), (.move (.generated .operand 86))] false) (.mk [(.mk (.bind (.generated .operand 88)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 87)), .wild]) (.mk [] (.move (.generated .part 87))))])), (.mk (.bind (.generated .operand 89)) none (.lit (.nat 1)))] (.call (.runtime .natEq) [(.move (.generated .operand 88)), (.move (.generated .operand 89))] false)) (.mk [] (.lit (.bool false))))) (Corr.bOfE (Corr.buildConst rfl)) (Corr.cond (lc := [(.mk (.bind (.generated .operand 85)) none (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 84))]) (.mk [] (.move (.generated .part 84))))])), (.mk (.bind (.generated .operand 86)) none (.lit (.nat 2)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 85)), (.move (.generated .operand 86))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 84))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 88)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 87)), .wild]) (.mk [] (.move (.generated .part 87))))])), (.mk (.bind (.generated .operand 89)) none (.lit (.nat 1)))]) (ta := (.call (.runtime .natEq) [(.move (.generated .operand 88)), (.move (.generated .operand 89))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 87))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))))))) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ - -theorem fun19 : FunOK program krate flags 19 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 11) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 32) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 11) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 32) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ - -theorem fun20 : FunOK program krate flags 20 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 12) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 33) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 12) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 33) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ - -theorem fun21 : FunOK program krate flags 21 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 13) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 34) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 13) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 34) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ - -theorem fun22 : FunOK program krate flags 22 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 14) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 35) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 14) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 35) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ - -theorem fun23 : FunOK program krate flags 23 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 15) [(.clone (.generated .binding 0))] true) (.mk [] (.succeed (.construct .some [(.call (.function 36) [(.move (.generated .binding 0))] false)]))) (.mk [] (.succeed (.construct (.none (.adt 1)) [])))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 15) [(.clone (.generated .binding 0))] true)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.call (.function 36) [(.move (.generated .binding 0))] false)]))) (lb := []) (tb := (.succeed (.construct (.none (.adt 1)) []))) (Corr.fOfB (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))⟩⟩ - -theorem fun24 : FunOK program krate flags 24 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 16) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 37) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 16) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 37) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ - -theorem fun25 : FunOK program krate flags 25 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 17) [(.clone (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 38) [(.move (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.adt 1)) []))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 17) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 38) [(.move (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.adt 1)) [])) (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ - -theorem fun26 : FunOK program krate flags 26 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 18) [(.clone (.generated .binding 0))] false) (.mk [] (.succeed (.construct .some [(.call (.function 39) [(.move (.generated .binding 0))] true)]))) (.mk [] (.succeed (.construct (.none (.adt 1)) [])))), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 18) [(.clone (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.call (.function 39) [(.move (.generated .binding 0))] true)]))) (lb := []) (tb := (.succeed (.construct (.none (.adt 1)) []))) (Corr.fOfB (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))⟩⟩ - -theorem fun27 : FunOK program krate flags 27 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 91)) none (.lit (.nat 380))), (.mk (.bind (.generated .operand 92)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [(.bind (.generated .part 90)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 90))))]))], (.call (.runtime .natLt) [(.move (.generated .operand 91)), (.move (.generated .operand 92))] false), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 90))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun28 : FunOK program krate flags 28 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 94)) none (.lit (.nat 90))), (.mk (.bind (.generated .operand 95)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, (.bind (.generated .part 93)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 93))))]))], (.call (.runtime .natLt) [(.move (.generated .operand 94)), (.move (.generated .operand 95))] false), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 93))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun29 : FunOK program krate flags 29 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 97)) none (.lit (.nat 20))), (.mk (.bind (.generated .operand 98)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, (.bind (.generated .part 96)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 96))))]))], (.call (.runtime .natLt) [(.move (.generated .operand 97)), (.move (.generated .operand 98))] false), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 96))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun30 : FunOK program krate flags 30 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 100)) none (.lit (.nat 12))), (.mk (.bind (.generated .operand 101)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, (.bind (.generated .part 99)), .wild, .wild]) (.mk [] (.move (.generated .part 99))))]))], (.call (.runtime .natLt) [(.move (.generated .operand 100)), (.move (.generated .operand 101))] false), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 99))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun31 : FunOK program krate flags 31 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 103)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 0 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 102)), .wild]) (.mk [] (.move (.generated .part 102))))])), (.mk (.bind (.generated .operand 104)) none (.lit (.nat 90)))], (.call (.runtime .natLt) [(.move (.generated .operand 103)), (.move (.generated .operand 104))] false), [(0, (.adt 0), (some 0))], rfl, rfl, - (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 102))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun32 : FunOK program krate flags 32 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 105)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 105))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 106)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 106))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 107)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 107))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 108)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 108))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 109)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 109))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 110)), .wild, .wild]) (.mk [] (.move (.generated .part 110))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 111)), .wild]) (.mk [] (.move (.generated .part 111))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 112))]) (.mk [] (.move (.generated .part 112))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 105))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 106))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 107))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 108))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 109))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 110))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 111))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 112))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ - -theorem fun33 : FunOK program krate flags 33 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 113)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 113))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 114)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 114))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 115)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 115))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 116)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 116))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 117)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 117))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 118)), .wild, .wild]) (.mk [] (.move (.generated .part 118))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 119)), .wild]) (.mk [] (.move (.generated .part 119))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 120))]) (.mk [] (.move (.generated .part 120))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 113))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 114))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 115))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 116))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 117))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 118))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 119))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 120))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ - -theorem fun34 : FunOK program krate flags 34 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 121)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 121))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 122)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 122))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 123)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 123))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 124)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 124))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 125)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 125))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 126)), .wild, .wild]) (.mk [] (.move (.generated .part 126))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 127)), .wild]) (.mk [] (.move (.generated .part 127))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 128))]) (.mk [] (.move (.generated .part 128))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 121))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 122))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 123))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 124))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 125))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 126))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 127))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 128))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ - -theorem fun35 : FunOK program krate flags 35 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 129)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 129))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 130)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 130))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 131)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 131))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 132)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 132))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 133)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 133))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 134)), .wild, .wild]) (.mk [] (.move (.generated .part 134))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 135)), .wild]) (.mk [] (.move (.generated .part 135))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 136))]) (.mk [] (.move (.generated .part 136))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 129))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 130))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 131))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 132))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 133))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 134))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 135))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 136))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ - -theorem fun36 : FunOK program krate flags 36 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 137)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 137))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 138)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 138))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 139)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 139))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 140)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 140))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 141)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 141))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 142)), .wild, .wild]) (.mk [] (.move (.generated .part 142))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 143)), .wild]) (.mk [] (.move (.generated .part 143))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 144))]) (.mk [] (.move (.generated .part 144))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 137))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 138))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 139))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 140))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 141))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 142))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 143))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 144))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ - -theorem fun37 : FunOK program krate flags 37 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 145)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 145))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 146)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 146))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 147)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 147))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 148)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 148))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 149)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 149))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 150)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 150))))]), (.lit (.nat 1)), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 151)), .wild]) (.mk [] (.move (.generated .part 151))))]), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 152))]) (.mk [] (.move (.generated .part 152))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 145))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 146))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 147))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 148))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 149))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 150))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 151))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 152))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ - -theorem fun38 : FunOK program krate flags 38 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 153)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 153))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 154)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 154))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 155)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 155))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 156)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 156))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 157)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 157))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 158)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 158))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 159)), .wild, .wild]) (.mk [] (.move (.generated .part 159))))]), (.lit (.nat 1)), (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 160))]) (.mk [] (.move (.generated .part 160))))])]), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 153))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 154))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 155))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 156))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 157))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 158))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 159))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 160))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl)⟩⟩ - -theorem fun39 : FunOK program krate flags 39 := - ⟨_, rfl, .inl ⟨_, _, [], (.succeed (.construct (.adt 1 0) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [(.bind (.generated .part 161)), .wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 161))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 162)), .wild, .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 162))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 163)), .wild, .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 163))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 164)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 164))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 165)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 165))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 166)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 166))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 167)), .wild, .wild]) (.mk [] (.move (.generated .part 167))))]), (.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 168)), .wild]) (.mk [] (.move (.generated .part 168))))]), (.block (.mk [(.mk (.bind (.generated .operand 170)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 169))]) (.mk [] (.move (.generated .part 169))))])), (.mk (.bind (.generated .operand 171)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 170)), (.move (.generated .operand 171))] true)))])), [(0, (.adt 1), (some 0))], rfl, rfl, - (Corr.fOfB (Corr.build (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 161))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 162))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 163))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 164))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 165))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 166))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 167))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 168))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 170)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 1 0 [.wild, .wild, .wild, .wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 169))]) (.mk [] (.move (.generated .part 169))))])), (.mk (.bind (.generated .operand 171)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 170)), (.move (.generated .operand 171))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.adt 0), .nat, .nat, .nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 169))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))))))) rfl))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | 3 => exact fun3 - | 4 => exact fun4 - | 5 => exact fun5 - | 6 => exact fun6 - | 7 => exact fun7 - | 8 => exact fun8 - | 9 => exact fun9 - | 10 => exact fun10 - | 11 => exact fun11 - | 12 => exact fun12 - | 13 => exact fun13 - | 14 => exact fun14 - | 15 => exact fun15 - | 16 => exact fun16 - | 17 => exact fun17 - | 18 => exact fun18 - | 19 => exact fun19 - | 20 => exact fun20 - | 21 => exact fun21 - | 22 => exact fun22 - | 23 => exact fun23 - | 24 => exact fun24 - | 25 => exact fun25 - | 26 => exact fun26 - | 27 => exact fun27 - | 28 => exact fun28 - | 29 => exact fun29 - | 30 => exact fun30 - | 31 => exact fun31 - | 32 => exact fun32 - | 33 => exact fun33 - | 34 => exact fun34 - | 35 => exact fun35 - | 36 => exact fun36 - | 37 => exact fun37 - | 38 => exact fun38 - | 39 => exact fun39 - | _ + 40 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.RustCore diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R6.lean b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R6.lean deleted file mode 100644 index 412fa9f75..000000000 --- a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R6.lean +++ /dev/null @@ -1,283 +0,0 @@ -import LexLeanPreservation.Core -import LexLeanPreservation.Values -import LexLeanPreservation.Primitives -import LexLeanPreservation.Fixed -import LexLeanPreservation.Keys -import LexLeanPreservation.Templates -import LexLeanPreservation.Validate -import Reasoning.Budget -import Reasoning.Clinic -import Reasoning.Main -import Reasoning.Planner -import Reasoning.Screening -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -set_option linter.unusedVariables false -namespace LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6 - -def __prog : _root_.LexLeanTarget.TargetSyntax.Program := - { adts := [{ constructors := [[.nat]] }, - { constructors := [[(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]] }, - { constructors := [[(.pair .nat .nat), (.list (.adt 0))]] }, - { constructors := [[.nat, .nat, .nat, .nat, .nat, .nat]] }], functions := [ - { parameters := [0], types := [.nat], result := .nat, - body := (.«match» .nat (.call 1 [(.var 0)]) [(.arm .ok [1] (.var 1)), (.arm .error [2] (.value .nat (.nat 9)))]) }, - { parameters := [0], types := [.nat], result := (.result .nat (.pair .bool .bool)), - body := (.«match» (.result .nat (.pair .bool .bool)) (.call 2 [(.var 0)]) [(.arm .ok [1] (.build .ok (.result .nat (.pair .bool .bool)) [(.first (.var 1))])), (.arm .error [2] (.build .error (.result .nat (.pair .bool .bool)) [(.var 2)]))]) }, - { parameters := [0], types := [.nat], result := (.result (.pair .nat (.list (.adt 0))) (.pair .bool .bool)), - body := (.«let» 1 (.pair (.adt 1) .bool) (.call 3 [(.var 0)]) (.«match» (.result (.pair .nat (.list (.adt 0))) (.pair .bool .bool)) (.field (.first (.var 1)) 1) [(.arm .some [2] (.build .ok (.result (.pair .nat (.list (.adt 0))) (.pair .bool .bool)) [(.build .pair (.pair .nat (.list (.adt 0))) [(.first (.var 2)), (.field (.second (.var 2)) 1)])])), (.arm .none [] (.build .error (.result (.pair .nat (.list (.adt 0))) (.pair .bool .bool)) [(.call 4 [(.second (.var 1)), (.field (.first (.var 1)) 2)])]))])) }, - { parameters := [0], types := [.nat], result := (.pair (.adt 1) .bool), - body := (.call 5 [(.closure 6 [(.var 0)]), (.value .nat (.nat 8)), (.call 7 [(.var 0)])]) }, - { parameters := [0, 1], types := [.bool, .bool], result := (.pair .bool .bool), - body := (.cond (.cond (.var 0) (.prim .boolNot [(.var 1)]) (.build .false .bool [])) (.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])]) (.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])) }, - { parameters := [0, 1, 2], types := [(.fn [(.adt 1)] (.option (.adt 1))), .nat, (.adt 1)], result := (.pair (.adt 1) .bool), - body := (.«match» (.pair (.adt 1) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.adt 1) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.adt 1) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.adt 1) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 5 [(.var 0), (.var 3), (.var 4)]))]))]) }, - { parameters := [0, 1], types := [.nat, (.adt 1)], result := (.option (.adt 1)), - body := (.call 8 [(.var 0), (.var 1)]) }, - { parameters := [0], types := [.nat], result := (.adt 1), - body := (.«let» 1 (.list (.adt 2)) (.call 9 [(.closure 10 []), (.build .nil (.list (.adt 2)) []), (.build .cons (.list (.adt 2)) [(.build (.adt 0) (.adt 2) [(.call 11 [(.var 0)]), (.build .nil (.list (.adt 0)) [])]), (.build .nil (.list (.adt 2)) [])])]) (.build (.adt 0) (.adt 1) [(.var 1), (.build .none (.option (.pair .nat (.adt 2))) []), (.prim .natLt [(.value .nat (.nat 3)), (.value .nat (.nat 1))]), (.build (.adt 0) (.adt 3) [(.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.prim .length [(.var 1)])])])) }, - { parameters := [0, 1], types := [.nat, (.adt 1)], result := (.option (.adt 1)), - body := (.«match» (.option (.adt 1)) (.field (.var 1) 1) [(.arm .some [2] (.build .none (.option (.adt 1)) [])), (.arm .none [] (.«match» (.option (.adt 1)) (.field (.var 1) 0) [(.arm .nil [] (.build .none (.option (.adt 1)) [])), (.arm .cons [3, 4] (.«match» (.option (.adt 1)) (.call 12 [(.var 0), (.field (.var 3) 0)]) [(.arm .some [5] (.build .some (.option (.adt 1)) [(.build (.adt 0) (.adt 1) [(.var 4), (.build .some (.option (.pair .nat (.adt 2))) [(.build .pair (.pair .nat (.adt 2)) [(.var 5), (.var 3)])]), (.field (.var 1) 2), (.build (.adt 0) (.adt 3) [(.prim .natAdd [(.field (.field (.var 1) 3) 0), (.value .nat (.nat 1))]), (.field (.field (.var 1) 3) 1), (.field (.field (.var 1) 3) 2), (.field (.field (.var 1) 3) 3), (.prim .natAdd [(.field (.field (.var 1) 3) 4), (.value .nat (.nat 1))]), (.field (.field (.var 1) 3) 5)])])])), (.arm .none [] (.«let» 6 (.list (.adt 2)) (.call 13 [(.var 3)]) (.«let» 7 (.list (.adt 2)) (.var 6) (.«let» 8 (.list (.adt 2)) (.prim .append [(.var 7), (.var 4)]) (.«let» 9 (.list (.adt 2)) (.call 9 [(.closure 14 []), (.build .nil (.list (.adt 2)) []), (.var 8)]) (.build .some (.option (.adt 1)) [(.build (.adt 0) (.adt 1) [(.var 9), (.build .none (.option (.pair .nat (.adt 2))) []), (.cond (.field (.var 1) 2) (.build .true .bool []) (.prim .natLt [(.value .nat (.nat 3)), (.prim .length [(.var 8)])])), (.build (.adt 0) (.adt 3) [(.prim .natAdd [(.field (.field (.var 1) 3) 0), (.value .nat (.nat 1))]), (.prim .natAdd [(.field (.field (.var 1) 3) 1), (.call 15 [(.field (.var 3) 0)])]), (.prim .natAdd [(.field (.field (.var 1) 3) 2), (.prim .length [(.var 6)])]), (.prim .natAdd [(.field (.field (.var 1) 3) 3), (.value .nat (.nat 1))]), (.prim .natAdd [(.field (.field (.var 1) 3) 4), (.value .nat (.nat 1))]), (.cond (.prim .natLt [(.field (.field (.var 1) 3) 5), (.prim .length [(.var 9)])]) (.prim .length [(.var 9)]) (.field (.field (.var 1) 3) 5))])])]))))))]))]))]) }, - { parameters := [0, 1, 2], types := [(.fn [(.list (.adt 2)), (.adt 2)] (.list (.adt 2))), (.list (.adt 2)), (.list (.adt 2))], result := (.list (.adt 2)), - body := (.«match» (.list (.adt 2)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 9 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, - { parameters := [0, 1], types := [(.list (.adt 2)), (.adt 2)], result := (.list (.adt 2)), - body := (.cond (.prim .natLt [(.prim .length [(.var 0)]), (.value .nat (.nat 3))]) (.prim .append [(.var 0), (.build .cons (.list (.adt 2)) [(.var 1), (.build .nil (.list (.adt 2)) [])])]) (.var 0)) }, - { parameters := [0], types := [.nat], result := (.pair .nat .nat), - body := (.build .pair (.pair .nat .nat) [(.var 0), (.value .nat (.nat 0))]) }, - { parameters := [0, 1], types := [.nat, (.pair .nat .nat)], result := (.option .nat), - body := (.«match» (.option .nat) (.call 16 [(.var 1)]) [(.arm .none [] (.build .none (.option .nat) [])), (.arm .some [2] (.cond (.call 17 [(.var 0), (.var 2)]) (.build .some (.option .nat) [(.var 2)]) (.build .none (.option .nat) [])))]) }, - { parameters := [0], types := [(.adt 2)], result := (.list (.adt 2)), - body := (.call 18 [(.var 0)]) }, - { parameters := [0, 1], types := [(.list (.adt 2)), (.adt 2)], result := (.list (.adt 2)), - body := (.cond (.prim .natLt [(.prim .length [(.var 0)]), (.value .nat (.nat 3))]) (.prim .append [(.var 0), (.build .cons (.list (.adt 2)) [(.var 1), (.build .nil (.list (.adt 2)) [])])]) (.var 0)) }, - { parameters := [0], types := [(.pair .nat .nat)], result := .nat, - body := (.prim .length [(.call 19 [(.var 0)])]) }, - { parameters := [0], types := [(.pair .nat .nat)], result := (.option .nat), - body := (.cond (.prim .natLt [(.value .nat (.nat 0)), (.second (.var 0))]) (.build .some (.option .nat) [(.second (.var 0))]) (.build .none (.option .nat) [])) }, - { parameters := [0, 1], types := [.nat, .nat], result := .bool, - body := (.prim .natLe [(.prim .natAdd [(.var 1), (.var 1)]), (.var 0)]) }, - { parameters := [0], types := [(.adt 2)], result := (.list (.adt 2)), - body := (.call 20 [(.closure 21 [(.var 0)]), (.build .nil (.list (.adt 2)) []), (.call 19 [(.field (.var 0) 0)])]) }, - { parameters := [0], types := [(.pair .nat .nat)], result := (.list .nat), - body := (.«match» (.list .nat) (.«let» 1 .nat (.first (.var 0)) (.«let» 2 (.list .nat) (.call 22 [(.var 1)]) (.cond (.call 23 [(.var 1), (.var 2)]) (.build .ok (.result (.list .nat) (.pair .bool .bool)) [(.var 2)]) (.build .error (.result (.list .nat) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])])])))) [(.arm .ok [3] (.var 3)), (.arm .error [4] (.build .nil (.list .nat) []))]) }, - { parameters := [0, 1, 2], types := [(.fn [(.list (.adt 2)), .nat] (.list (.adt 2))), (.list (.adt 2)), (.list .nat)], result := (.list (.adt 2)), - body := (.«match» (.list (.adt 2)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 20 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, - { parameters := [0, 1, 2], types := [(.adt 2), (.list (.adt 2)), .nat], result := (.list (.adt 2)), - body := (.call 24 [(.var 0), (.var 1), (.var 2)]) }, - { parameters := [0], types := [.nat], result := (.list .nat), - body := (.call 25 [(.var 0)]) }, - { parameters := [0, 1], types := [.nat, (.list .nat)], result := .bool, - body := (.prim .natLe [(.prim .length [(.var 1)]), (.value .nat (.nat 4))]) }, - { parameters := [0, 1, 2], types := [(.adt 2), (.list (.adt 2)), .nat], result := (.list (.adt 2)), - body := (.«match» (.list (.adt 2)) (.call 26 [(.field (.var 0) 0), (.build (.adt 0) (.adt 0) [(.var 2)])]) [(.arm .none [] (.var 1)), (.arm .some [3] (.prim .append [(.var 1), (.build .cons (.list (.adt 2)) [(.build (.adt 0) (.adt 2) [(.var 3), (.prim .append [(.field (.var 0) 1), (.build .cons (.list (.adt 0)) [(.build (.adt 0) (.adt 0) [(.var 2)]), (.build .nil (.list (.adt 0)) [])])])]), (.build .nil (.list (.adt 2)) [])])]))]) }, - { parameters := [0], types := [.nat], result := (.list .nat), - body := (.build .cons (.list .nat) [(.prim .natSub [(.var 0), (.value .nat (.nat 10))]), (.build .cons (.list .nat) [(.prim .natSub [(.var 0), (.value .nat (.nat 20))]), (.build .cons (.list .nat) [(.prim .natSub [(.var 0), (.value .nat (.nat 30))]), (.build .cons (.list .nat) [(.prim .natSub [(.var 0), (.value .nat (.nat 50))]), (.build .nil (.list .nat) [])])])])]) }, - { parameters := [0, 1], types := [(.pair .nat .nat), (.adt 0)], result := (.option (.pair .nat .nat)), - body := (.«match» (.option (.pair .nat .nat)) (.var 1) [(.arm (.adt 0) [2] (.call 27 [(.var 0), (.var 2)]))]) }, - { parameters := [0, 1], types := [(.pair .nat .nat), .nat], result := (.option (.pair .nat .nat)), - body := (.cond (.call 28 [(.var 0), (.var 1)]) (.build .some (.option (.pair .nat .nat)) [(.call 29 [(.var 0), (.var 1)])]) (.build .none (.option (.pair .nat .nat)) [])) }, - { parameters := [0, 1], types := [(.pair .nat .nat), .nat], result := .bool, - body := (.cond (.prim .natEq [(.second (.var 0)), (.value .nat (.nat 0))]) (.prim .natLt [(.value .nat (.nat 0)), (.var 1)]) (.build .false .bool [])) }, - { parameters := [0, 1], types := [(.pair .nat .nat), .nat], result := (.pair .nat .nat), - body := (.build .pair (.pair .nat .nat) [(.first (.var 0)), (.var 1)]) }] } - -def __enc_0 : (Reasoning.Screening.Screen.Step) -> _root_.LexLeanTarget.TargetSyntax.Value - | Reasoning.Screening.Screen.Step.Propose __x0 => _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat __x0)] - -def __enc_2 (__s : (Reasoning.Screening.Screen.Node)) : _root_.LexLeanTarget.TargetSyntax.Value := - _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) (__s).state), ((_root_.LexLeanPreservation.encList __enc_0) (__s).trace)] - -def __enc_3 (__s : (Reasoning.Screening.Screen.Ledger)) : _root_.LexLeanTarget.TargetSyntax.Value := - _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).iterations), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).attempts), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).firings), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).expansions), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).verifications), (_root_.LexLeanTarget.TargetSyntax.Value.nat (__s).frontier)] - -def __enc_1 (__s : (Reasoning.Screening.Screen.Search)) : _root_.LexLeanTarget.TargetSyntax.Value := - _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [((_root_.LexLeanPreservation.encList __enc_2) (__s).frontier), ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat __enc_2)) (__s).found), (_root_.LexLeanTarget.TargetSyntax.Value.bool (__s).truncated), (__enc_3 (__s).ledger)] - -def __fits_16 (pick : (Prod Nat Nat)) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.blt (0 : Nat) (pick).2) then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -theorem __rel_16 (pick : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 16 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) pick)] (_root_.LexLeanPreservation.Rel (__fits_16 pick) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Screening.Screen.extract pick))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Option.some ((pick).2) : (Option Nat)) else (Option.none : (Option Nat)))) (Nat.blt (0 : Nat) (pick).2) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (0 : Nat) (pick).2)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_17 (w : Nat) (r : Nat) : Bool := - ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (r + r) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_17 (w : Nat) (r : Nat) : _root_.LexLeanPreservation.FunRel __prog 17 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w), (_root_.LexLeanTarget.TargetSyntax.Value.nat r)] (_root_.LexLeanPreservation.Rel (__fits_17 w r) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Screening.safeCheck w r))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd r r)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe (r + r) w)) - -def __fits_12 (w : Nat) (_ys : (Prod Nat Nat)) : Bool := - (((Bool.true && Bool.true) && (__fits_16 (_ys))) && (match (Reasoning.Screening.Screen.extract (_ys)) with | Option.none => (Bool.true && Bool.true) | Option.some _yv => (((Bool.true && (Bool.true && Bool.true)) && (__fits_17 (w) (_yv))) && (if (Reasoning.Screening.safeCheck (w) (_yv)) then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) - -attribute [local irreducible] Reasoning.Screening.Screen.extract Reasoning.Screening.safeCheck in -theorem __rel_12 (w : Nat) (_ys : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 12 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w), ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) _ys)] (_root_.LexLeanPreservation.Rel (__fits_12 w _ys) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Screening.Screen.accept w _ys))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Option Nat)) => (match __a with | Option.none => (Bool.true && Bool.true) | Option.some _yv => (((Bool.true && (Bool.true && Bool.true)) && (__fits_17 (w) (_yv))) && (if (Reasoning.Screening.safeCheck (w) (_yv)) then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__a : (Option Nat)) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (match __a with | Option.none => (Option.none : (Option Nat)) | Option.some _yv => (if (Reasoning.Screening.safeCheck (w) (_yv)) then (Option.some (_yv) : (Option Nat)) else (Option.none : (Option Nat))))) (Reasoning.Screening.Screen.extract (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_16 (_ys))) (fun (__a : (Option Nat)) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) | Option.some _yv => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Option.some (_yv) : (Option Nat)) else (Option.none : (Option Nat)))) (Reasoning.Screening.safeCheck (w) (_yv)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_17 (w) (_yv))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))) - -def __fits_25 (w : Nat) : Bool := - ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) - -theorem __rel_25 (w : Nat) : _root_.LexLeanPreservation.FunRel __prog 25 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w)] (_root_.LexLeanPreservation.Rel (__fits_25 w) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Screening.DoseCandidates w))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub w (10 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub w (20 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub w (30 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub w (50 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) - -def __fits_22 (_yinput : Nat) : Bool := - ((Bool.true && Bool.true) && (__fits_25 (_yinput))) - -attribute [local irreducible] Reasoning.Screening.DoseCandidates in -theorem __rel_22 (_yinput : Nat) : _root_.LexLeanPreservation.FunRel __prog 22 [(_root_.LexLeanTarget.TargetSyntax.Value.nat _yinput)] (_root_.LexLeanPreservation.Rel (__fits_22 _yinput) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Screening.DoseModel _yinput))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_25 (_yinput))) - -def __fits_23 (w : Nat) (doses : (List Nat)) : Bool := - ((((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (doses) : Nat) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_23 (w : Nat) (doses : (List Nat)) : _root_.LexLeanPreservation.FunRel __prog 23 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w), ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) doses)] (_root_.LexLeanPreservation.Rel (__fits_23 w doses) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Screening.shortCheck w doses))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) doses)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe (_root_.LexLeanRuntime.length (doses) : Nat) (4 : Nat))) - -def __fits_19 (s : (Prod Nat Nat)) : Bool := - ((Bool.true && (let _ychecked1_input : Nat := (s).1; (((Bool.true && Bool.true) && (__fits_22 (_ychecked1_input))) && (let _ychecked1_output : (List Nat) := (Reasoning.Screening.DoseModel (_ychecked1_input)); (((Bool.true && (Bool.true && Bool.true)) && (__fits_23 (_ychecked1_input) (_ychecked1_output))) && (if (Reasoning.Screening.shortCheck (_ychecked1_input) (_ychecked1_output)) then ((Bool.true && Bool.true) && Bool.true) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))))) && (match (let _ychecked1_input : Nat := (s).1; (let _ychecked1_output : (List Nat) := (Reasoning.Screening.DoseModel (_ychecked1_input)); (if (Reasoning.Screening.shortCheck (_ychecked1_input) (_ychecked1_output)) then (Except.ok (_ychecked1_output) : (Except (Prod Bool Bool) (List Nat))) else (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (List Nat)))))) with | Except.ok proposed => Bool.true | Except.error refusal => (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Screening.DoseModel Reasoning.Screening.shortCheck in -theorem __rel_19 (s : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 19 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) s)] (_root_.LexLeanPreservation.Rel (__fits_19 s) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Screening.Propose.candidates s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun (__a : (Except (Prod Bool Bool) (List Nat))) => (match __a with | Except.ok proposed => Bool.true | Except.error refusal => (Bool.true && Bool.true))) (fun (__a : (Except (Prod Bool Bool) (List Nat))) => (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (match __a with | Except.ok proposed => proposed | Except.error refusal => ([] : List Nat))) (let _ychecked1_input : Nat := (s).1; (let _ychecked1_output : (List Nat) := (Reasoning.Screening.DoseModel (_ychecked1_input)); (if (Reasoning.Screening.shortCheck (_ychecked1_input) (_ychecked1_output)) then (Except.ok (_ychecked1_output) : (Except (Prod Bool Bool) (List Nat))) else (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (List Nat)))))) (let _ychecked1_input : Nat := (s).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (let _ychecked1_output : (List Nat) := (Reasoning.Screening.DoseModel (_ychecked1_input)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_22 (_ychecked1_input))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && Bool.true) && Bool.true) else (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat)) (if __b then (Except.ok (_ychecked1_output) : (Except (Prod Bool Bool) (List Nat))) else (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) (List Nat))))) (Reasoning.Screening.shortCheck (_ychecked1_input) (_ychecked1_output)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_23 (_ychecked1_input) (_ychecked1_output))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error))))) (fun (__a : (Except (Prod Bool Bool) (List Nat))) _ => match __a with | Except.ok proposed => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | Except.error refusal => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil))))) - -def __fits_28 (s : (Prod Nat Nat)) (d : Nat) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.beq (s).2 (0 : Nat)) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) - -theorem __rel_28 (s : (Prod Nat Nat)) (d : Nat) : _root_.LexLeanPreservation.FunRel __prog 28 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) s), (_root_.LexLeanTarget.TargetSyntax.Value.nat d)] (_root_.LexLeanPreservation.Rel (__fits_28 s d) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Screening.Propose.guard s d))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.blt (0 : Nat) d))) (Nat.beq (s).2 (0 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq (s).2 (0 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (0 : Nat) d))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) - -def __fits_29 (s : (Prod Nat Nat)) (d : Nat) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_29 (s : (Prod Nat Nat)) (d : Nat) : _root_.LexLeanPreservation.FunRel __prog 29 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) s), (_root_.LexLeanTarget.TargetSyntax.Value.nat d)] (_root_.LexLeanPreservation.Rel (__fits_29 s d) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Screening.Propose.conclusion s d))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) - -def __fits_27 (s : (Prod Nat Nat)) (d : Nat) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && (__fits_28 (s) (d))) && (if (Reasoning.Screening.Propose.guard (s) (d)) then ((((Bool.true && (Bool.true && Bool.true)) && (__fits_29 (s) (d))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Screening.Propose.conclusion Reasoning.Screening.Propose.guard in -theorem __rel_27 (s : (Prod Nat Nat)) (d : Nat) : _root_.LexLeanPreservation.FunRel __prog 27 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) s), (_root_.LexLeanTarget.TargetSyntax.Value.nat d)] (_root_.LexLeanPreservation.Rel (__fits_27 s d) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Reasoning.Screening.Propose.apply s d))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (Bool.true && Bool.true)) && (__fits_29 (s) (d))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (if __b then (Option.some ((Reasoning.Screening.Propose.conclusion (s) (d))) : (Option (Prod Nat Nat))) else (Option.none : (Option (Prod Nat Nat))))) (Reasoning.Screening.Propose.guard (s) (d)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_28 (s) (d))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_29 (s) (d))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_26 (_ys : (Prod Nat Nat)) (_ystep : (Reasoning.Screening.Screen.Step)) : Bool := - (Bool.true && (match _ystep with | Reasoning.Screening.Screen.Step.Propose _yb => ((Bool.true && (Bool.true && Bool.true)) && (__fits_27 (_ys) (_yb))))) - -attribute [local irreducible] Reasoning.Screening.Propose.apply in -theorem __rel_26 (_ys : (Prod Nat Nat)) (_ystep : (Reasoning.Screening.Screen.Step)) : _root_.LexLeanPreservation.FunRel __prog 26 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) _ys), (__enc_0 _ystep)] (_root_.LexLeanPreservation.Rel (__fits_26 _ys _ystep) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Reasoning.Screening.Screen.fire _ys _ystep))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV __enc_0 (fun (__a : (Reasoning.Screening.Screen.Step)) => (match __a with | Reasoning.Screening.Screen.Step.Propose _yb => ((Bool.true && (Bool.true && Bool.true)) && (__fits_27 (_ys) (_yb))))) (fun (__a : (Reasoning.Screening.Screen.Step)) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (match __a with | Reasoning.Screening.Screen.Step.Propose _yb => (Reasoning.Screening.Propose.apply (_ys) (_yb)))) _ystep (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (Reasoning.Screening.Screen.Step)) _ => match __a with | Reasoning.Screening.Screen.Step.Propose _yb => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_27 (_ys) (_yb)))))) - -def __fits_24 (_ynode : (Reasoning.Screening.Screen.Node)) (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yb : Nat) : Bool := - (((Bool.true && (((Bool.true && Bool.true) && Bool.true) && Bool.true)) && (__fits_26 ((_ynode).state) ((Reasoning.Screening.Screen.Step.Propose (_yb) : (Reasoning.Screening.Screen.Step))))) && (match (Reasoning.Screening.Screen.fire ((_ynode).state) ((Reasoning.Screening.Screen.Step.Propose (_yb) : (Reasoning.Screening.Screen.Step)))) with | Option.none => Bool.true | Option.some _yt => ((Bool.true && (((((Bool.true && (((Bool.true && (((((Bool.true && Bool.true) && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true))) - -attribute [local irreducible] Reasoning.Screening.Screen.fire in -theorem __rel_24 (_ynode : (Reasoning.Screening.Screen.Node)) (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yb : Nat) : _root_.LexLeanPreservation.FunRel __prog 24 [(__enc_2 _ynode), ((_root_.LexLeanPreservation.encList __enc_2) _yacc), (_root_.LexLeanTarget.TargetSyntax.Value.nat _yb)] (_root_.LexLeanPreservation.Rel (__fits_24 _ynode _yacc _yb) ((_root_.LexLeanPreservation.encList __enc_2) (Reasoning.Screening.Screen.Propose.collect _ynode _yacc _yb))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun (__a : (Option (Prod Nat Nat))) => (match __a with | Option.none => Bool.true | Option.some _yt => ((Bool.true && (((((Bool.true && (((Bool.true && (((((Bool.true && Bool.true) && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true))) (fun (__a : (Option (Prod Nat Nat))) => (_root_.LexLeanPreservation.encList __enc_2) (match __a with | Option.none => _yacc | Option.some _yt => (_root_.LexLeanRuntime.append (_yacc) ((({ state := _yt, trace := (_root_.LexLeanRuntime.append ((_ynode).trace) (((Reasoning.Screening.Screen.Step.Propose (_yb) : (Reasoning.Screening.Screen.Step)) :: ([] : List (Reasoning.Screening.Screen.Step)))) : (List (Reasoning.Screening.Screen.Step))) } : (Reasoning.Screening.Screen.Node)) :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))))) (Reasoning.Screening.Screen.fire ((_ynode).state) ((Reasoning.Screening.Screen.Step.Propose (_yb) : (Reasoning.Screening.Screen.Step)))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil)) (__rel_26 ((_ynode).state) ((Reasoning.Screening.Screen.Step.Propose (_yb) : (Reasoning.Screening.Screen.Step))))) (fun (__a : (Option (Prod Nat Nat))) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | Option.some _yt => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_adt) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc __enc_0) (_ynode).trace ((Reasoning.Screening.Screen.Step.Propose (_yb) : (Reasoning.Screening.Screen.Step)) :: ([] : List (Reasoning.Screening.Screen.Step))))) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_adt) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc __enc_2) _yacc (({ state := _yt, trace := (_root_.LexLeanRuntime.append ((_ynode).trace) (((Reasoning.Screening.Screen.Step.Propose (_yb) : (Reasoning.Screening.Screen.Step)) :: ([] : List (Reasoning.Screening.Screen.Step)))) : (List (Reasoning.Screening.Screen.Step))) } : (Reasoning.Screening.Screen.Node)) :: ([] : List (Reasoning.Screening.Screen.Node))))))))) - -def __fits_21 (_ynode : (Reasoning.Screening.Screen.Node)) (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yb : Nat) : Bool := - ((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_24 (_ynode) (_yacc) (_yb))) - -attribute [local irreducible] Reasoning.Screening.Screen.Propose.collect in -theorem __rel_21 (_ynode : (Reasoning.Screening.Screen.Node)) (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yb : Nat) : _root_.LexLeanPreservation.FunRel __prog 21 [(__enc_2 _ynode), ((_root_.LexLeanPreservation.encList __enc_2) _yacc), (_root_.LexLeanTarget.TargetSyntax.Value.nat _yb)] (_root_.LexLeanPreservation.Rel (__fits_21 _ynode _yacc _yb) ((_root_.LexLeanPreservation.encList __enc_2) ((Reasoning.Screening.Screen.Propose.collect (_ynode) (_yacc) (_yb))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (__rel_24 (_ynode) (_yacc) (_yb))) - -def __fits_18 (_ynode : (Reasoning.Screening.Screen.Node)) : Bool := - (((Bool.true && Bool.true) && ((Bool.true && Bool.true) && (((Bool.true && Bool.true) && (__fits_19 ((_ynode).state))) && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (List (Reasoning.Screening.Screen.Node))) (__p1 : Nat) => __fits_21 (_ynode) __p0 __p1) ((fun (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yb : Nat) => (Reasoning.Screening.Screen.Propose.collect (_ynode) (_yacc) (_yb)))) (([] : List (Reasoning.Screening.Screen.Node))) ((Reasoning.Screening.Propose.candidates ((_ynode).state))))) - -attribute [local irreducible] Reasoning.Screening.Propose.candidates Reasoning.Screening.Screen.Propose.collect in -theorem __rel_18 (_ynode : (Reasoning.Screening.Screen.Node)) : _root_.LexLeanPreservation.FunRel __prog 18 [(__enc_2 _ynode)] (_root_.LexLeanPreservation.Rel (__fits_18 _ynode) ((_root_.LexLeanPreservation.encList __enc_2) (Reasoning.Screening.Screen.Propose.successors _ynode))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_19 ((_ynode).state))) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.nat) (es := (_root_.LexLeanPreservation.encList __enc_2)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) ((fun (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yb : Nat) => (Reasoning.Screening.Screen.Propose.collect (_ynode) (_yacc) (_yb)))) (fun (__p0 : (List (Reasoning.Screening.Screen.Node))) (__p1 : Nat) => __fits_21 (_ynode) __p0 __p1) 21 [(__enc_2 _ynode)] (fun (__p0 : (List (Reasoning.Screening.Screen.Node))) (__p1 : Nat) => __rel_21 (_ynode) __p0 __p1) (p := __prog) (fi := 20) (ta := .nat) (ts := (.list (.adt 2))) rfl (([] : List (Reasoning.Screening.Screen.Node))) ((Reasoning.Screening.Propose.candidates ((_ynode).state))))) - -def __fits_13 (_ynode : (Reasoning.Screening.Screen.Node)) : Bool := - ((Bool.true && Bool.true) && (__fits_18 (_ynode))) - -attribute [local irreducible] Reasoning.Screening.Screen.Propose.successors in -theorem __rel_13 (_ynode : (Reasoning.Screening.Screen.Node)) : _root_.LexLeanPreservation.FunRel __prog 13 [(__enc_2 _ynode)] (_root_.LexLeanPreservation.Rel (__fits_13 _ynode) ((_root_.LexLeanPreservation.encList __enc_2) (Reasoning.Screening.Screen.successors _ynode))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_18 (_ynode))) - -def __fits_14 (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yn : (Reasoning.Screening.Screen.Node)) : Bool := - (((((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat)) then ((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) else Bool.true)) - -theorem __rel_14 (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yn : (Reasoning.Screening.Screen.Node)) : _root_.LexLeanPreservation.FunRel __prog 14 [((_root_.LexLeanPreservation.encList __enc_2) _yacc), (__enc_2 _yn)] (_root_.LexLeanPreservation.Rel (__fits_14 _yacc _yn) ((_root_.LexLeanPreservation.encList __enc_2) ((if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))) else _yacc)))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) else Bool.true)) (fun (__b : Bool) => (_root_.LexLeanPreservation.encList __enc_2) (if __b then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))) else _yacc)) (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc __enc_2) _yacc)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc __enc_2) _yacc (_yn :: ([] : List (Reasoning.Screening.Screen.Node)))))) (fun _ => (_root_.LexLeanPreservation.conv_var rfl))) - -def __fits_15 (_ys : (Prod Nat Nat)) : Bool := - ((((Bool.true && Bool.true) && (__fits_19 (_ys))) && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length ((Reasoning.Screening.Propose.candidates (_ys))) : Nat) 18446744073709551616)) - -attribute [local irreducible] Reasoning.Screening.Propose.candidates in -theorem __rel_15 (_ys : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 15 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) _ys)] (_root_.LexLeanPreservation.Rel (__fits_15 _ys) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Screening.Screen.attempts _ys))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_19 (_ys))) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Screening.Propose.candidates (_ys)))) - -def __fits_8 (w : Nat) (_yr : (Reasoning.Screening.Screen.Search)) : Bool := - (Bool.true && (match (_yr).found with | Option.some _yhit => (Bool.true && Bool.true) | Option.none => (Bool.true && (match (_yr).frontier with | List.nil => (Bool.true && Bool.true) | List.cons _ynode _yrest => (((Bool.true && (Bool.true && Bool.true)) && (__fits_12 (w) ((_ynode).state))) && (match (Reasoning.Screening.Screen.accept (w) ((_ynode).state)) with | Option.some _yv => ((((Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) && (Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).iterations + (1 : Nat)) 18446744073709551616)) && (Bool.true && (Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).verifications + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true)))))) && Bool.true) && Bool.true)))) && Bool.true) && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_13 (_ynode))) && (let _ysuccessors : (List (Reasoning.Screening.Screen.Node)) := (Reasoning.Screening.Screen.successors (_ynode)); (Bool.true && (let _yfresh : (List (Reasoning.Screening.Screen.Node)) := _ysuccessors; (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (let _yordered : (List (Reasoning.Screening.Screen.Node)) := (_root_.LexLeanRuntime.append (_yfresh) (_yrest) : (List (Reasoning.Screening.Screen.Node))); (((Bool.true && ((Bool.true && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (List (Reasoning.Screening.Screen.Node))) (__p1 : (Reasoning.Screening.Screen.Node)) => __fits_14 __p0 __p1) ((fun (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yn : (Reasoning.Screening.Screen.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))) else _yacc))) (([] : List (Reasoning.Screening.Screen.Node))) (_yordered))) && (let _ynext : (List (Reasoning.Screening.Screen.Node)) := (_root_.LexLeanCollections.listFold ((fun (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yn : (Reasoning.Screening.Screen.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))) else _yacc))) (([] : List (Reasoning.Screening.Screen.Node))) (_yordered) : (List (Reasoning.Screening.Screen.Node))); ((((Bool.true && ((Bool.true && Bool.true) && ((Bool.true && (if (_yr).truncated then (Bool.true && Bool.true) else ((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_yordered) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true))) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).iterations + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (((Bool.true && Bool.true) && (__fits_15 ((_ynode).state))) && Bool.true)) && (Nat.blt (((_yr).ledger).attempts + (Reasoning.Screening.Screen.attempts ((_ynode).state))) 18446744073709551616)) && (((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ysuccessors) : Nat) 18446744073709551616)) && Bool.true)) && (Nat.blt (((_yr).ledger).firings + (_root_.LexLeanRuntime.length (_ysuccessors) : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).expansions + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).verifications + (1 : Nat)) 18446744073709551616)) && ((((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ynext) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true) && (if (Nat.blt ((_yr).ledger).frontier (_root_.LexLeanRuntime.length (_ynext) : Nat)) then ((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ynext) : Nat) 18446744073709551616)) else Bool.true)) && Bool.true)))))) && Bool.true) && Bool.true)))) && Bool.true) && Bool.true) && Bool.true))))))))))))))) - -attribute [local irreducible] Reasoning.Screening.Screen.accept Reasoning.Screening.Screen.attempts Reasoning.Screening.Screen.successors in -theorem __rel_8 (w : Nat) (_yr : (Reasoning.Screening.Screen.Search)) : _root_.LexLeanPreservation.FunRel __prog 8 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w), (__enc_1 _yr)] (_root_.LexLeanPreservation.Rel (__fits_8 w _yr) ((_root_.LexLeanPreservation.encOption __enc_1) (Reasoning.Screening.Screen.searchStep w _yr))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat __enc_2)) (fun (__a : (Option (Prod Nat (Reasoning.Screening.Screen.Node)))) => (match __a with | Option.some _yhit => (Bool.true && Bool.true) | Option.none => (Bool.true && (match (_yr).frontier with | List.nil => (Bool.true && Bool.true) | List.cons _ynode _yrest => (((Bool.true && (Bool.true && Bool.true)) && (__fits_12 (w) ((_ynode).state))) && (match (Reasoning.Screening.Screen.accept (w) ((_ynode).state)) with | Option.some _yv => ((((Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) && (Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).iterations + (1 : Nat)) 18446744073709551616)) && (Bool.true && (Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).verifications + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true)))))) && Bool.true) && Bool.true)))) && Bool.true) && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_13 (_ynode))) && (let _ysuccessors : (List (Reasoning.Screening.Screen.Node)) := (Reasoning.Screening.Screen.successors (_ynode)); (Bool.true && (let _yfresh : (List (Reasoning.Screening.Screen.Node)) := _ysuccessors; (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (let _yordered : (List (Reasoning.Screening.Screen.Node)) := (_root_.LexLeanRuntime.append (_yfresh) (_yrest) : (List (Reasoning.Screening.Screen.Node))); (((Bool.true && ((Bool.true && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (List (Reasoning.Screening.Screen.Node))) (__p1 : (Reasoning.Screening.Screen.Node)) => __fits_14 __p0 __p1) ((fun (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yn : (Reasoning.Screening.Screen.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))) else _yacc))) (([] : List (Reasoning.Screening.Screen.Node))) (_yordered))) && (let _ynext : (List (Reasoning.Screening.Screen.Node)) := (_root_.LexLeanCollections.listFold ((fun (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yn : (Reasoning.Screening.Screen.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))) else _yacc))) (([] : List (Reasoning.Screening.Screen.Node))) (_yordered) : (List (Reasoning.Screening.Screen.Node))); ((((Bool.true && ((Bool.true && Bool.true) && ((Bool.true && (if (_yr).truncated then (Bool.true && Bool.true) else ((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_yordered) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true))) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).iterations + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (((Bool.true && Bool.true) && (__fits_15 ((_ynode).state))) && Bool.true)) && (Nat.blt (((_yr).ledger).attempts + (Reasoning.Screening.Screen.attempts ((_ynode).state))) 18446744073709551616)) && (((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ysuccessors) : Nat) 18446744073709551616)) && Bool.true)) && (Nat.blt (((_yr).ledger).firings + (_root_.LexLeanRuntime.length (_ysuccessors) : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).expansions + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).verifications + (1 : Nat)) 18446744073709551616)) && ((((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ynext) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true) && (if (Nat.blt ((_yr).ledger).frontier (_root_.LexLeanRuntime.length (_ynext) : Nat)) then ((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ynext) : Nat) 18446744073709551616)) else Bool.true)) && Bool.true)))))) && Bool.true) && Bool.true)))) && Bool.true) && Bool.true) && Bool.true))))))))))))))) (fun (__a : (Option (Prod Nat (Reasoning.Screening.Screen.Node)))) => (_root_.LexLeanPreservation.encOption __enc_1) (match __a with | Option.some _yhit => (Option.none : (Option (Reasoning.Screening.Screen.Search))) | Option.none => (match (_yr).frontier with | List.nil => (Option.none : (Option (Reasoning.Screening.Screen.Search))) | List.cons _ynode _yrest => (match (Reasoning.Screening.Screen.accept (w) ((_ynode).state)) with | Option.some _yv => (Option.some (({ frontier := _yrest, found := (Option.some ((_yv, _ynode)) : (Option (Prod Nat (Reasoning.Screening.Screen.Node)))), truncated := (_yr).truncated, ledger := ({ iterations := (((_yr).ledger).iterations + (1 : Nat)), attempts := ((_yr).ledger).attempts, firings := ((_yr).ledger).firings, expansions := ((_yr).ledger).expansions, verifications := (((_yr).ledger).verifications + (1 : Nat)), frontier := ((_yr).ledger).frontier } : (Reasoning.Screening.Screen.Ledger)) } : (Reasoning.Screening.Screen.Search))) : (Option (Reasoning.Screening.Screen.Search))) | Option.none => (let _ysuccessors : (List (Reasoning.Screening.Screen.Node)) := (Reasoning.Screening.Screen.successors (_ynode)); (let _yfresh : (List (Reasoning.Screening.Screen.Node)) := _ysuccessors; (let _yordered : (List (Reasoning.Screening.Screen.Node)) := (_root_.LexLeanRuntime.append (_yfresh) (_yrest) : (List (Reasoning.Screening.Screen.Node))); (let _ynext : (List (Reasoning.Screening.Screen.Node)) := (_root_.LexLeanCollections.listFold ((fun (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yn : (Reasoning.Screening.Screen.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))) else _yacc))) (([] : List (Reasoning.Screening.Screen.Node))) (_yordered) : (List (Reasoning.Screening.Screen.Node))); (Option.some (({ frontier := _ynext, found := (Option.none : (Option (Prod Nat (Reasoning.Screening.Screen.Node)))), truncated := ((_yr).truncated || (Nat.blt (3 : Nat) (_root_.LexLeanRuntime.length (_yordered) : Nat))), ledger := ({ iterations := (((_yr).ledger).iterations + (1 : Nat)), attempts := (((_yr).ledger).attempts + (Reasoning.Screening.Screen.attempts ((_ynode).state))), firings := (((_yr).ledger).firings + (_root_.LexLeanRuntime.length (_ysuccessors) : Nat)), expansions := (((_yr).ledger).expansions + (1 : Nat)), verifications := (((_yr).ledger).verifications + (1 : Nat)), frontier := (if (Nat.blt ((_yr).ledger).frontier (_root_.LexLeanRuntime.length (_ynext) : Nat)) then (_root_.LexLeanRuntime.length (_ynext) : Nat) else ((_yr).ledger).frontier) } : (Reasoning.Screening.Screen.Ledger)) } : (Reasoning.Screening.Screen.Search))) : (Option (Reasoning.Screening.Screen.Search))))))))))) (_yr).found (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (fun (__a : (Option (Prod Nat (Reasoning.Screening.Screen.Node)))) _ => match __a with | Option.some _yhit => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encList __enc_2) (fun (__a : (List (Reasoning.Screening.Screen.Node))) => (match __a with | List.nil => (Bool.true && Bool.true) | List.cons _ynode _yrest => (((Bool.true && (Bool.true && Bool.true)) && (__fits_12 (w) ((_ynode).state))) && (match (Reasoning.Screening.Screen.accept (w) ((_ynode).state)) with | Option.some _yv => ((((Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) && (Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).iterations + (1 : Nat)) 18446744073709551616)) && (Bool.true && (Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).verifications + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true)))))) && Bool.true) && Bool.true)))) && Bool.true) && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_13 (_ynode))) && (let _ysuccessors : (List (Reasoning.Screening.Screen.Node)) := (Reasoning.Screening.Screen.successors (_ynode)); (Bool.true && (let _yfresh : (List (Reasoning.Screening.Screen.Node)) := _ysuccessors; (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (let _yordered : (List (Reasoning.Screening.Screen.Node)) := (_root_.LexLeanRuntime.append (_yfresh) (_yrest) : (List (Reasoning.Screening.Screen.Node))); (((Bool.true && ((Bool.true && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (List (Reasoning.Screening.Screen.Node))) (__p1 : (Reasoning.Screening.Screen.Node)) => __fits_14 __p0 __p1) ((fun (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yn : (Reasoning.Screening.Screen.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))) else _yacc))) (([] : List (Reasoning.Screening.Screen.Node))) (_yordered))) && (let _ynext : (List (Reasoning.Screening.Screen.Node)) := (_root_.LexLeanCollections.listFold ((fun (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yn : (Reasoning.Screening.Screen.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))) else _yacc))) (([] : List (Reasoning.Screening.Screen.Node))) (_yordered) : (List (Reasoning.Screening.Screen.Node))); ((((Bool.true && ((Bool.true && Bool.true) && ((Bool.true && (if (_yr).truncated then (Bool.true && Bool.true) else ((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_yordered) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true))) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).iterations + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (((Bool.true && Bool.true) && (__fits_15 ((_ynode).state))) && Bool.true)) && (Nat.blt (((_yr).ledger).attempts + (Reasoning.Screening.Screen.attempts ((_ynode).state))) 18446744073709551616)) && (((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ysuccessors) : Nat) 18446744073709551616)) && Bool.true)) && (Nat.blt (((_yr).ledger).firings + (_root_.LexLeanRuntime.length (_ysuccessors) : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).expansions + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).verifications + (1 : Nat)) 18446744073709551616)) && ((((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ynext) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true) && (if (Nat.blt ((_yr).ledger).frontier (_root_.LexLeanRuntime.length (_ynext) : Nat)) then ((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ynext) : Nat) 18446744073709551616)) else Bool.true)) && Bool.true)))))) && Bool.true) && Bool.true)))) && Bool.true) && Bool.true) && Bool.true))))))))))))) (fun (__a : (List (Reasoning.Screening.Screen.Node))) => (_root_.LexLeanPreservation.encOption __enc_1) (match __a with | List.nil => (Option.none : (Option (Reasoning.Screening.Screen.Search))) | List.cons _ynode _yrest => (match (Reasoning.Screening.Screen.accept (w) ((_ynode).state)) with | Option.some _yv => (Option.some (({ frontier := _yrest, found := (Option.some ((_yv, _ynode)) : (Option (Prod Nat (Reasoning.Screening.Screen.Node)))), truncated := (_yr).truncated, ledger := ({ iterations := (((_yr).ledger).iterations + (1 : Nat)), attempts := ((_yr).ledger).attempts, firings := ((_yr).ledger).firings, expansions := ((_yr).ledger).expansions, verifications := (((_yr).ledger).verifications + (1 : Nat)), frontier := ((_yr).ledger).frontier } : (Reasoning.Screening.Screen.Ledger)) } : (Reasoning.Screening.Screen.Search))) : (Option (Reasoning.Screening.Screen.Search))) | Option.none => (let _ysuccessors : (List (Reasoning.Screening.Screen.Node)) := (Reasoning.Screening.Screen.successors (_ynode)); (let _yfresh : (List (Reasoning.Screening.Screen.Node)) := _ysuccessors; (let _yordered : (List (Reasoning.Screening.Screen.Node)) := (_root_.LexLeanRuntime.append (_yfresh) (_yrest) : (List (Reasoning.Screening.Screen.Node))); (let _ynext : (List (Reasoning.Screening.Screen.Node)) := (_root_.LexLeanCollections.listFold ((fun (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yn : (Reasoning.Screening.Screen.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))) else _yacc))) (([] : List (Reasoning.Screening.Screen.Node))) (_yordered) : (List (Reasoning.Screening.Screen.Node))); (Option.some (({ frontier := _ynext, found := (Option.none : (Option (Prod Nat (Reasoning.Screening.Screen.Node)))), truncated := ((_yr).truncated || (Nat.blt (3 : Nat) (_root_.LexLeanRuntime.length (_yordered) : Nat))), ledger := ({ iterations := (((_yr).ledger).iterations + (1 : Nat)), attempts := (((_yr).ledger).attempts + (Reasoning.Screening.Screen.attempts ((_ynode).state))), firings := (((_yr).ledger).firings + (_root_.LexLeanRuntime.length (_ysuccessors) : Nat)), expansions := (((_yr).ledger).expansions + (1 : Nat)), verifications := (((_yr).ledger).verifications + (1 : Nat)), frontier := (if (Nat.blt ((_yr).ledger).frontier (_root_.LexLeanRuntime.length (_ynext) : Nat)) then (_root_.LexLeanRuntime.length (_ynext) : Nat) else ((_yr).ledger).frontier) } : (Reasoning.Screening.Screen.Ledger)) } : (Reasoning.Screening.Screen.Search))) : (Option (Reasoning.Screening.Screen.Search)))))))))) (_yr).frontier (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (fun (__a : (List (Reasoning.Screening.Screen.Node))) _ => match __a with | List.nil => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) | List.cons _ynode _yrest => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Option Nat)) => (match __a with | Option.some _yv => ((((Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) && (Bool.true && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).iterations + (1 : Nat)) 18446744073709551616)) && (Bool.true && (Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).verifications + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true)))))) && Bool.true) && Bool.true)))) && Bool.true) && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_13 (_ynode))) && (let _ysuccessors : (List (Reasoning.Screening.Screen.Node)) := (Reasoning.Screening.Screen.successors (_ynode)); (Bool.true && (let _yfresh : (List (Reasoning.Screening.Screen.Node)) := _ysuccessors; (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (let _yordered : (List (Reasoning.Screening.Screen.Node)) := (_root_.LexLeanRuntime.append (_yfresh) (_yrest) : (List (Reasoning.Screening.Screen.Node))); (((Bool.true && ((Bool.true && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (List (Reasoning.Screening.Screen.Node))) (__p1 : (Reasoning.Screening.Screen.Node)) => __fits_14 __p0 __p1) ((fun (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yn : (Reasoning.Screening.Screen.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))) else _yacc))) (([] : List (Reasoning.Screening.Screen.Node))) (_yordered))) && (let _ynext : (List (Reasoning.Screening.Screen.Node)) := (_root_.LexLeanCollections.listFold ((fun (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yn : (Reasoning.Screening.Screen.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))) else _yacc))) (([] : List (Reasoning.Screening.Screen.Node))) (_yordered) : (List (Reasoning.Screening.Screen.Node))); ((((Bool.true && ((Bool.true && Bool.true) && ((Bool.true && (if (_yr).truncated then (Bool.true && Bool.true) else ((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_yordered) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true))) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).iterations + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (((Bool.true && Bool.true) && (__fits_15 ((_ynode).state))) && Bool.true)) && (Nat.blt (((_yr).ledger).attempts + (Reasoning.Screening.Screen.attempts ((_ynode).state))) 18446744073709551616)) && (((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ysuccessors) : Nat) 18446744073709551616)) && Bool.true)) && (Nat.blt (((_yr).ledger).firings + (_root_.LexLeanRuntime.length (_ysuccessors) : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).expansions + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (((_yr).ledger).verifications + (1 : Nat)) 18446744073709551616)) && ((((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ynext) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true) && (if (Nat.blt ((_yr).ledger).frontier (_root_.LexLeanRuntime.length (_ynext) : Nat)) then ((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ynext) : Nat) 18446744073709551616)) else Bool.true)) && Bool.true)))))) && Bool.true) && Bool.true)))) && Bool.true) && Bool.true) && Bool.true))))))))))) (fun (__a : (Option Nat)) => (_root_.LexLeanPreservation.encOption __enc_1) (match __a with | Option.some _yv => (Option.some (({ frontier := _yrest, found := (Option.some ((_yv, _ynode)) : (Option (Prod Nat (Reasoning.Screening.Screen.Node)))), truncated := (_yr).truncated, ledger := ({ iterations := (((_yr).ledger).iterations + (1 : Nat)), attempts := ((_yr).ledger).attempts, firings := ((_yr).ledger).firings, expansions := ((_yr).ledger).expansions, verifications := (((_yr).ledger).verifications + (1 : Nat)), frontier := ((_yr).ledger).frontier } : (Reasoning.Screening.Screen.Ledger)) } : (Reasoning.Screening.Screen.Search))) : (Option (Reasoning.Screening.Screen.Search))) | Option.none => (let _ysuccessors : (List (Reasoning.Screening.Screen.Node)) := (Reasoning.Screening.Screen.successors (_ynode)); (let _yfresh : (List (Reasoning.Screening.Screen.Node)) := _ysuccessors; (let _yordered : (List (Reasoning.Screening.Screen.Node)) := (_root_.LexLeanRuntime.append (_yfresh) (_yrest) : (List (Reasoning.Screening.Screen.Node))); (let _ynext : (List (Reasoning.Screening.Screen.Node)) := (_root_.LexLeanCollections.listFold ((fun (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yn : (Reasoning.Screening.Screen.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))) else _yacc))) (([] : List (Reasoning.Screening.Screen.Node))) (_yordered) : (List (Reasoning.Screening.Screen.Node))); (Option.some (({ frontier := _ynext, found := (Option.none : (Option (Prod Nat (Reasoning.Screening.Screen.Node)))), truncated := ((_yr).truncated || (Nat.blt (3 : Nat) (_root_.LexLeanRuntime.length (_yordered) : Nat))), ledger := ({ iterations := (((_yr).ledger).iterations + (1 : Nat)), attempts := (((_yr).ledger).attempts + (Reasoning.Screening.Screen.attempts ((_ynode).state))), firings := (((_yr).ledger).firings + (_root_.LexLeanRuntime.length (_ysuccessors) : Nat)), expansions := (((_yr).ledger).expansions + (1 : Nat)), verifications := (((_yr).ledger).verifications + (1 : Nat)), frontier := (if (Nat.blt ((_yr).ledger).frontier (_root_.LexLeanRuntime.length (_ynext) : Nat)) then (_root_.LexLeanRuntime.length (_ynext) : Nat) else ((_yr).ledger).frontier) } : (Reasoning.Screening.Screen.Ledger)) } : (Reasoning.Screening.Screen.Search))) : (Option (Reasoning.Screening.Screen.Search))))))))) (Reasoning.Screening.Screen.accept (w) ((_ynode).state)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_12 (w) ((_ynode).state))) (fun (__a : (Option Nat)) _ => match __a with | Option.some _yv => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((_yr).ledger).iterations (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((_yr).ledger).verifications (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) _root_.LexLeanPreservation.convL_nil)))))) _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil)))) _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (let _ysuccessors : (List (Reasoning.Screening.Screen.Node)) := (Reasoning.Screening.Screen.successors (_ynode)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_13 (_ynode))) (let _yfresh : (List (Reasoning.Screening.Screen.Node)) := _ysuccessors; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_var rfl) (let _yordered : (List (Reasoning.Screening.Screen.Node)) := (_root_.LexLeanRuntime.append (_yfresh) (_yrest) : (List (Reasoning.Screening.Screen.Node))); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc __enc_2) _yfresh _yrest)) (let _ynext : (List (Reasoning.Screening.Screen.Node)) := (_root_.LexLeanCollections.listFold ((fun (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yn : (Reasoning.Screening.Screen.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))) else _yacc))) (([] : List (Reasoning.Screening.Screen.Node))) (_yordered) : (List (Reasoning.Screening.Screen.Node))); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := __enc_2) (es := (_root_.LexLeanPreservation.encList __enc_2)) (_root_.LexLeanPreservation.listEnc __enc_2) (fun _ => rfl) ((fun (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yn : (Reasoning.Screening.Screen.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))) else _yacc))) (fun (__p0 : (List (Reasoning.Screening.Screen.Node))) (__p1 : (Reasoning.Screening.Screen.Node)) => __fits_14 __p0 __p1) 14 [] (fun (__p0 : (List (Reasoning.Screening.Screen.Node))) (__p1 : (Reasoning.Screening.Screen.Node)) => __rel_14 __p0 __p1) (p := __prog) (fi := 9) (ta := (.adt 2)) (ts := (.list (.adt 2))) rfl (([] : List (Reasoning.Screening.Screen.Node))) (_yordered))) (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (Bool.true && Bool.true) else ((Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_yordered) : Nat) 18446744073709551616)) && Bool.true)) && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b || (Nat.blt (3 : Nat) (_root_.LexLeanRuntime.length (_yordered) : Nat)))) (_yr).truncated (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc __enc_2) _yordered)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (3 : Nat) (_root_.LexLeanRuntime.length (_yordered) : Nat))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((_yr).ledger).iterations (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) _root_.LexLeanPreservation.convL_nil) (__rel_15 ((_ynode).state))) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((_yr).ledger).attempts (Reasoning.Screening.Screen.attempts ((_ynode).state)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc __enc_2) _ysuccessors)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((_yr).ledger).firings (_root_.LexLeanRuntime.length (_ysuccessors) : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((_yr).ledger).expansions (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd ((_yr).ledger).verifications (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_ynext) : Nat) 18446744073709551616)) else Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.nat (if __b then (_root_.LexLeanRuntime.length (_ynext) : Nat) else ((_yr).ledger).frontier)) (Nat.blt ((_yr).ledger).frontier (_root_.LexLeanRuntime.length (_ynext) : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc __enc_2) _ynext)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt ((_yr).ledger).frontier (_root_.LexLeanRuntime.length (_ynext) : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc __enc_2) _ynext))) (fun _ => (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_var rfl) rfl) rfl))) _root_.LexLeanPreservation.convL_nil)))))) _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil)))) _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some))))))))))))))))) - -def __fits_6 (w : Nat) (_yr : (Reasoning.Screening.Screen.Search)) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && (__fits_8 (w) (_yr))) - -attribute [local irreducible] Reasoning.Screening.Screen.searchStep in -theorem __rel_6 (w : Nat) (_yr : (Reasoning.Screening.Screen.Search)) : _root_.LexLeanPreservation.FunRel __prog 6 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w), (__enc_1 _yr)] (_root_.LexLeanPreservation.Rel (__fits_6 w _yr) ((_root_.LexLeanPreservation.encOption __enc_1) ((Reasoning.Screening.Screen.searchStep (w) (_yr))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_8 (w) (_yr))) - -def __fits_10 (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yn : (Reasoning.Screening.Screen.Node)) : Bool := - (((((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat)) then ((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) else Bool.true)) - -theorem __rel_10 (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yn : (Reasoning.Screening.Screen.Node)) : _root_.LexLeanPreservation.FunRel __prog 10 [((_root_.LexLeanPreservation.encList __enc_2) _yacc), (__enc_2 _yn)] (_root_.LexLeanPreservation.Rel (__fits_10 _yacc _yn) ((_root_.LexLeanPreservation.encList __enc_2) ((if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))) else _yacc)))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) else Bool.true)) (fun (__b : Bool) => (_root_.LexLeanPreservation.encList __enc_2) (if __b then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))) else _yacc)) (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc __enc_2) _yacc)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat))) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_list (_root_.LexLeanPreservation.listEnc __enc_2) _yacc (_yn :: ([] : List (Reasoning.Screening.Screen.Node)))))) (fun _ => (_root_.LexLeanPreservation.conv_var rfl))) - -def __fits_11 (w : Nat) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_11 (w : Nat) : _root_.LexLeanPreservation.FunRel __prog 11 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w)] (_root_.LexLeanPreservation.Rel (__fits_11 w) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Screening.Screen.observe w))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) - -def __fits_7 (w : Nat) : Bool := - (((Bool.true && ((Bool.true && Bool.true) && (((((((Bool.true && Bool.true) && (__fits_11 (w))) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (List (Reasoning.Screening.Screen.Node))) (__p1 : (Reasoning.Screening.Screen.Node)) => __fits_10 __p0 __p1) ((fun (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yn : (Reasoning.Screening.Screen.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))) else _yacc))) (([] : List (Reasoning.Screening.Screen.Node))) ((({ state := (Reasoning.Screening.Screen.observe (w)), trace := ([] : List (Reasoning.Screening.Screen.Step)) } : (Reasoning.Screening.Screen.Node)) :: ([] : List (Reasoning.Screening.Screen.Node)))))) && (let _yfirst : (List (Reasoning.Screening.Screen.Node)) := (_root_.LexLeanCollections.listFold ((fun (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yn : (Reasoning.Screening.Screen.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))) else _yacc))) (([] : List (Reasoning.Screening.Screen.Node))) ((({ state := (Reasoning.Screening.Screen.observe (w)), trace := ([] : List (Reasoning.Screening.Screen.Step)) } : (Reasoning.Screening.Screen.Node)) :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))); ((Bool.true && ((Bool.true && Bool.true) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (((Bool.true && (Bool.true && (Bool.true && (Bool.true && (Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (_yfirst) : Nat) 18446744073709551616)) && Bool.true)))))) && Bool.true) && Bool.true)))) && Bool.true))) - -attribute [local irreducible] Reasoning.Screening.Screen.observe in -theorem __rel_7 (w : Nat) : _root_.LexLeanPreservation.FunRel __prog 7 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w)] (_root_.LexLeanPreservation.Rel (__fits_7 w) (__enc_1 (Reasoning.Screening.Screen.start w))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (let _yfirst : (List (Reasoning.Screening.Screen.Node)) := (_root_.LexLeanCollections.listFold ((fun (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yn : (Reasoning.Screening.Screen.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))) else _yacc))) (([] : List (Reasoning.Screening.Screen.Node))) ((({ state := (Reasoning.Screening.Screen.observe (w)), trace := ([] : List (Reasoning.Screening.Screen.Step)) } : (Reasoning.Screening.Screen.Node)) :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_11 (w))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_adt) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := __enc_2) (es := (_root_.LexLeanPreservation.encList __enc_2)) (_root_.LexLeanPreservation.listEnc __enc_2) (fun _ => rfl) ((fun (_yacc : (List (Reasoning.Screening.Screen.Node))) (_yn : (Reasoning.Screening.Screen.Node)) => (if (Nat.blt (_root_.LexLeanRuntime.length (_yacc) : Nat) (3 : Nat)) then (_root_.LexLeanRuntime.append (_yacc) ((_yn :: ([] : List (Reasoning.Screening.Screen.Node)))) : (List (Reasoning.Screening.Screen.Node))) else _yacc))) (fun (__p0 : (List (Reasoning.Screening.Screen.Node))) (__p1 : (Reasoning.Screening.Screen.Node)) => __fits_10 __p0 __p1) 10 [] (fun (__p0 : (List (Reasoning.Screening.Screen.Node))) (__p1 : (Reasoning.Screening.Screen.Node)) => __rel_10 __p0 __p1) (p := __prog) (fi := 9) (ta := (.adt 2)) (ts := (.list (.adt 2))) rfl (([] : List (Reasoning.Screening.Screen.Node))) ((({ state := (Reasoning.Screening.Screen.observe (w)), trace := ([] : List (Reasoning.Screening.Screen.Step)) } : (Reasoning.Screening.Screen.Node)) :: ([] : List (Reasoning.Screening.Screen.Node)))))) (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (3 : Nat) (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_list (_root_.LexLeanPreservation.listEnc __enc_2) _yfirst)) _root_.LexLeanPreservation.convL_nil)))))) _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil)))) _root_.LexLeanPreservation.construct_adt)) - -def __fits_3 (w : Nat) : Bool := - (((Bool.true && Bool.true) && (Bool.true && (((Bool.true && Bool.true) && (__fits_7 (w))) && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : (Reasoning.Screening.Screen.Search)) => __fits_6 (w) __p0) ((fun (_yr : (Reasoning.Screening.Screen.Search)) => (Reasoning.Screening.Screen.searchStep (w) (_yr)))) ((8 : Nat)) ((Reasoning.Screening.Screen.start (w))))) - -attribute [local irreducible] Reasoning.Screening.Screen.searchStep Reasoning.Screening.Screen.start in -theorem __rel_3 (w : Nat) : _root_.LexLeanPreservation.FunRel __prog 3 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w)] (_root_.LexLeanPreservation.Rel (__fits_3 w) ((_root_.LexLeanPreservation.encPair __enc_1 _root_.LexLeanTarget.TargetSyntax.Value.bool) (Reasoning.Screening.Screen.run w))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_7 (w))) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterateUntil (es := __enc_1) (_root_.LexLeanPreservation.optEnc __enc_1) (fun _ => rfl) (_root_.LexLeanPreservation.encPair __enc_1 _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) ((fun (_yr : (Reasoning.Screening.Screen.Search)) => (Reasoning.Screening.Screen.searchStep (w) (_yr)))) (fun (__p0 : (Reasoning.Screening.Screen.Search)) => __fits_6 (w) __p0) 6 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w)] (fun (__p0 : (Reasoning.Screening.Screen.Search)) => __rel_6 (w) __p0) (_root_.LexLeanCollections.iterateUntil ((fun (_yr : (Reasoning.Screening.Screen.Search)) => (Reasoning.Screening.Screen.searchStep (w) (_yr))))) (fun _ => rfl) (fun _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (p := __prog) (fi := 5) (ts := (.adt 1)) rfl ((8 : Nat)) ((Reasoning.Screening.Screen.start (w))))) - -def __fits_4 (_ysaturated : Bool) (_ytruncated : Bool) : Bool := - ((Bool.true && (if _ysaturated then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && (if (_ysaturated && (!_ytruncated)) then (((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) else (((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true))) - -theorem __rel_4 (_ysaturated : Bool) (_ytruncated : Bool) : _root_.LexLeanPreservation.FunRel __prog 4 [(_root_.LexLeanTarget.TargetSyntax.Value.bool _ysaturated), (_root_.LexLeanTarget.TargetSyntax.Value.bool _ytruncated)] (_root_.LexLeanPreservation.Rel (__fits_4 _ysaturated _ytruncated) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (Reasoning.Screening.Screen.failure _ysaturated _ytruncated))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) else (((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (if __b then ((Bool.false, Bool.true) : (Prod Bool Bool)) else ((Bool.false, Bool.false) : (Prod Bool Bool)))) (_ysaturated && (!_ytruncated)) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (!_ytruncated))) _ysaturated (_root_.LexLeanPreservation.conv_var rfl) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_boolNot _ytruncated))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair))) - -def __fits_2 (w : Nat) : Bool := - (((Bool.true && Bool.true) && (__fits_3 (w))) && (let _yfinal : (Prod (Reasoning.Screening.Screen.Search) Bool) := (Reasoning.Screening.Screen.run (w)); (Bool.true && (match ((_yfinal).1).found with | Option.some _yhit => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => ((((Bool.true && (Bool.true && Bool.true)) && (__fits_4 ((_yfinal).2) (((_yfinal).1).truncated))) && Bool.true) && Bool.true))))) - -attribute [local irreducible] Reasoning.Screening.Screen.failure Reasoning.Screening.Screen.run in -theorem __rel_2 (w : Nat) : _root_.LexLeanPreservation.FunRel __prog 2 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w)] (_root_.LexLeanPreservation.Rel (__fits_2 w) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList __enc_0))) (Reasoning.Screening.Screen w))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (let _yfinal : (Prod (Reasoning.Screening.Screen.Search) Bool) := (Reasoning.Screening.Screen.run (w)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_3 (w))) (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat __enc_2)) (fun (__a : (Option (Prod Nat (Reasoning.Screening.Screen.Node)))) => (match __a with | Option.some _yhit => ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => ((((Bool.true && (Bool.true && Bool.true)) && (__fits_4 ((_yfinal).2) (((_yfinal).1).truncated))) && Bool.true) && Bool.true))) (fun (__a : (Option (Prod Nat (Reasoning.Screening.Screen.Node)))) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList __enc_0))) (match __a with | Option.some _yhit => (Except.ok (((_yhit).1, ((_yhit).2).trace)) : (Except (Prod Bool Bool) (Prod Nat (List (Reasoning.Screening.Screen.Step))))) | Option.none => (Except.error ((Reasoning.Screening.Screen.failure ((_yfinal).2) (((_yfinal).1).truncated))) : (Except (Prod Bool Bool) (Prod Nat (List (Reasoning.Screening.Screen.Step))))))) ((_yfinal).1).found (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) rfl) (fun (__a : (Option (Prod Nat (Reasoning.Screening.Screen.Node)))) _ => match __a with | Option.some _yhit => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_field (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_4 ((_yfinal).2) (((_yfinal).1).truncated))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)))))) - -def __fits_1 (w : Nat) : Bool := - (((Bool.true && Bool.true) && (__fits_2 (w))) && (match (Reasoning.Screening.Screen (w)) with | Except.ok _yp => ((Bool.true && Bool.true) && Bool.true) | Except.error _ye => ((Bool.true && Bool.true) && Bool.true))) - -attribute [local irreducible] Reasoning.Screening.Screen in -theorem __rel_1 (w : Nat) : _root_.LexLeanPreservation.FunRel __prog 1 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w)] (_root_.LexLeanPreservation.Rel (__fits_1 w) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Screening.Screen.verdict w))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList __enc_0))) (fun (__a : (Except (Prod Bool Bool) (Prod Nat (List (Reasoning.Screening.Screen.Step))))) => (match __a with | Except.ok _yp => ((Bool.true && Bool.true) && Bool.true) | Except.error _ye => ((Bool.true && Bool.true) && Bool.true))) (fun (__a : (Except (Prod Bool Bool) (Prod Nat (List (Reasoning.Screening.Screen.Step))))) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (match __a with | Except.ok _yp => (Except.ok ((_yp).1) : (Except (Prod Bool Bool) Nat)) | Except.error _ye => (Except.error (_ye) : (Except (Prod Bool Bool) Nat)))) (Reasoning.Screening.Screen (w)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_2 (w))) (fun (__a : (Except (Prod Bool Bool) (Prod Nat (List (Reasoning.Screening.Screen.Step))))) _ => match __a with | Except.ok _yp => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok)) | Except.error _ye => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error))))) - -def __fits_0 (w : Nat) : Bool := - (((Bool.true && Bool.true) && (__fits_1 (w))) && (match (Reasoning.Screening.Screen.verdict (w)) with | Except.ok dose => Bool.true | Except.error failure => Bool.true)) - -attribute [local irreducible] Reasoning.Screening.Screen.verdict in -theorem __rel_0 (w : Nat) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w)] (_root_.LexLeanPreservation.Rel (__fits_0 w) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.screenDose w))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Except (Prod Bool Bool) Nat)) => (match __a with | Except.ok dose => Bool.true | Except.error failure => Bool.true)) (fun (__a : (Except (Prod Bool Bool) Nat)) => _root_.LexLeanTarget.TargetSyntax.Value.nat (match __a with | Except.ok dose => dose | Except.error failure => (9 : Nat))) (Reasoning.Screening.Screen.verdict (w)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_1 (w))) (fun (__a : (Except (Prod Bool Bool) Nat)) _ => match __a with | Except.ok dose => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | Except.error failure => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value)))) - -def denote (w : Nat) : _root_.LexLeanPreservation.Obs := - _root_.cond (__fits_0 w) (_root_.LexLeanPreservation.Obs.value ((_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.screenDose w)))) _root_.LexLeanPreservation.Obs.overflow - -theorem root (w : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat w)] (_root_.LexLeanPreservation.Rel (__fits_0 w) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.screenDose w))) := - _root_.LexLeanPreservation.run_of_funRel (__rel_0 w) - -end LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6 diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R6/Compose/RustStd.lex.tex b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R6/Compose/RustStd.lex.tex deleted file mode 100644 index b53dbc238..000000000 --- a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R6/Compose/RustStd.lex.tex +++ /dev/null @@ -1,1218 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6, - LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.Compose.RustStd.__wt_0 : @16 := @367 { - all: [LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.Compose.RustStd.__wt_0], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.Compose.RustStd.__wt_2 : @375 := @849 { - all: [LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.Compose.RustStd.__wt_2], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.Compose.RustStd.__wt_3 : @857 := @1316 { - all: [LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.Compose.RustStd.__wt_3], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.Compose.RustStd.__wt_1 : @1324 := @1844 { - all: [LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.Compose.RustStd.__wt_1], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.Compose.RustStd.root : @2457 := @2458 { - all: [LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.RustStd.program -@1 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.RustStd.krate -@2 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.RustStd.flags -@3 := Reasoning.Screening.Screen.Step -@4 := #0 -@5 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.__enc_0 -@6 := @5 @4 -@7 := LexLeanPreservation.Rust.WT -@8 := LexLeanTarget.TargetSyntax.Ty.adt -@9 := 0 -@10 := @8 @9 -@11 := @7 @0 -@12 := @11 @1 -@13 := @12 @2 -@14 := @13 @6 -@15 := @14 @10 -@16 := (__v : @3) -> @15 -@17 := fun (__v : @3) => @15 -@18 := LexLeanTarget.TargetSyntax.Value.nat -@19 := @18 @4 -@20 := LexLeanTarget.TargetSyntax.Ty.nat -@21 := LexLeanTarget.TargetSyntax.Program -@22 := LexLeanPreservation.Rust.RCrate -@23 := LexLeanPreservation.Rust.Flags -@24 := Nat -@25 := #3 -@26 := @7 @25 -@27 := #2 -@28 := @26 @27 -@29 := #1 -@30 := @28 @29 -@36 := {p : @21} -> {c : @22} -> {A : @23} -> (n : @24) -> @30 @19 @20 -@38 := LexLeanPreservation.Rust.wt_nat @0 -@40 := @11 @27 @29 -@45 := {c : @22} -> {A : @23} -> (n : @24) -> @40 @19 @20 -@46 := @38 @1 -@47 := @12 @29 -@51 := {A : @23} -> (n : @24) -> @47 @19 @20 -@52 := @46 @2 -@53 := @13 @19 -@54 := @53 @20 -@55 := (n : @24) -> @54 -@56 := @52 @4 -@57 := LexLeanTarget.TargetSyntax.Value -@58 := LexLeanTarget.TargetSyntax.Ty -@59 := List.nil.{0} -@60 := List.cons.{0} -@61 := @59 @57 -@62 := @60 @57 -@64 := @62 @19 @61 -@65 := @59 @58 -@66 := @60 @58 -@67 := @66 @20 -@68 := @67 @65 -@69 := LexLeanPreservation.Rust.WTL -@77 := {p : @21} -> {c : @22} -> {A : @23} -> @69 @27 @29 @4 @61 @65 -@79 := LexLeanPreservation.Rust.wtl_nil @0 -@80 := @69 @0 -@86 := {c : @22} -> {A : @23} -> @80 @29 @4 @61 @65 -@87 := @79 @1 -@88 := @80 @1 -@92 := {A : @23} -> @88 @4 @61 @65 -@93 := @87 @2 -@94 := @88 @2 -@95 := @94 @61 -@96 := @95 @65 -@97 := List.{0} -@98 := @97 @57 -@99 := @97 @58 -@100 := #6 -@101 := @7 @100 -@102 := #5 -@103 := @101 @102 -@104 := #4 -@105 := @103 @104 -@107 := @105 @25 @27 -@108 := #7 -@113 := @69 @108 @100 @102 @27 @29 -@114 := #8 -@117 := @69 @114 @108 @100 -@119 := @62 @102 @25 -@120 := @117 @119 -@122 := @66 @104 @27 -@132 := {p : @21} -> - {c : @22} -> - {A : @23} -> - {v : @57} -> {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @107) -> (hs : @113) -> @120 @122 -@134 := LexLeanPreservation.Rust.wtl_cons @0 -@136 := @11 @102 @104 -@138 := @136 @25 @27 -@142 := @80 @100 @102 @27 @29 -@154 := {c : @22} -> - {A : @23} -> - {v : @57} -> - {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @138) -> (hs : @142) -> @80 @108 @100 @119 @122 -@155 := @134 @1 -@156 := @12 @104 -@158 := @156 @25 @27 -@161 := @88 @102 @27 @29 -@171 := {A : @23} -> - {v : @57} -> - {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @158) -> (hs : @161) -> @88 @100 @119 @122 -@172 := @155 @2 -@174 := @13 @25 @27 -@176 := @94 @27 @29 -@184 := {v : @57} -> - {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @174) -> (hs : @176) -> @94 @119 @122 -@185 := @172 @19 -@186 := @18 @25 -@187 := @13 @186 -@188 := @187 @27 -@189 := @18 @102 -@190 := @62 @189 -@192 := @94 (@190 @25) -@198 := {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @188) -> (hs : @176) -> @192 @122 -@199 := @185 @20 -@200 := @18 @27 -@202 := @13 @200 @20 -@203 := @18 @104 -@204 := @62 @203 -@206 := @94 (@204 @25) -@207 := @67 @27 -@212 := {vs : @98} -> {ts : @99} -> (h : @202) -> (hs : @176) -> @206 @207 -@213 := @199 @61 -@214 := @18 @29 -@216 := @13 @214 @20 -@217 := @95 @29 -@219 := @62 @186 @61 -@220 := @94 @219 -@224 := {ts : @99} -> (h : @216) -> (hs : @217) -> @220 @207 -@225 := @213 @65 -@227 := @62 @200 @61 -@228 := @94 @227 -@231 := (h : @54) -> (hs : @96) -> @228 @68 -@232 := @225 @56 -@234 := @62 @214 @61 -@235 := @94 @234 -@236 := @235 @68 -@237 := (hs : @96) -> @236 -@238 := @232 @93 -@240 := @94 @64 @68 -@241 := Eq.{1} -@242 := Option.{0} -@243 := @242 @99 -@244 := @241 @243 -@245 := LexLeanPreservation.Rust.adtFields -@249 := @244 (@245 @100 @25 @27) -@250 := Option.some.{0} -@251 := @250 @99 -@252 := @251 @4 -@253 := @249 @252 -@256 := @7 @114 @108 @100 -@257 := LexLeanTarget.TargetSyntax.Value.adt -@259 := @257 @104 @25 -@260 := @256 @259 -@261 := @8 @102 -@271 := {p : @21} -> - {c : @22} -> - {A : @23} -> - {i : @24} -> {k : @24} -> {fs : @98} -> {tys : @99} -> (h : @253) -> (hf : @113) -> @260 @261 -@273 := LexLeanPreservation.Rust.wt_adt @0 -@274 := @245 @0 -@278 := @244 (@274 @25 @27) @252 -@290 := {c : @22} -> - {A : @23} -> - {i : @24} -> - {k : @24} -> {fs : @98} -> {tys : @99} -> (h : @278) -> (hf : @142) -> @11 @108 @100 @259 @261 -@291 := @273 @1 -@301 := {A : @23} -> - {i : @24} -> - {k : @24} -> {fs : @98} -> {tys : @99} -> (h : @278) -> (hf : @161) -> @12 @100 @259 @261 -@302 := @291 @2 -@303 := @13 @259 -@310 := {i : @24} -> - {k : @24} -> {fs : @98} -> {tys : @99} -> (h : @278) -> (hf : @176) -> @303 @261 -@311 := @302 @9 -@312 := @274 @9 -@321 := {k : @24} -> - {fs : @98} -> {tys : @99} -> (h : @244 (@312 @27) @252) -> (hf : @176) -> @303 @10 -@322 := @311 @9 -@323 := @312 @9 -@324 := @244 @323 -@325 := @324 @252 -@326 := @257 @9 -@328 := @13 (@326 @25) -@333 := {fs : @98} -> {tys : @99} -> (h : @325) -> (hf : @176) -> @328 @10 -@334 := @322 @64 -@341 := {tys : @99} -> (h : @325) -> (hf : @228 @29) -> @13 (@326 @219) @10 -@342 := @334 @68 -@349 := (h : @324 (@251 @68)) -> (hf : @236) -> @13 (@326 @227) @10 -@350 := Eq.refl.{1} -@351 := @350 @243 -@353 := @342 (@351 @323) -@357 := (hf : @240) -> @13 (@326 @234) @10 -@358 := @353 @238 -@361 := @13 (@326 @64) @10 -@362 := fun (__x0 : @24) => @358 -@367 := fun (__v : @3) => Reasoning.Screening.Screen.Step.casesOn.{0} @17 @4 @362 -@368 := Reasoning.Screening.Screen.Node -@369 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.__enc_2 -@370 := @369 @4 -@371 := 2 -@372 := @8 @371 -@373 := @13 @370 -@374 := @373 @372 -@375 := (__s : @368) -> @374 -@376 := Reasoning.Screening.Screen.Node.state -@377 := @376 @4 -@378 := Reasoning.Screening.Screen.Node.trace -@379 := @378 @4 -@380 := LexLeanPreservation.encPair -@381 := @380 @24 -@382 := @381 @24 -@383 := @382 @18 -@384 := @383 @18 -@385 := @384 @377 -@386 := LexLeanTarget.TargetSyntax.Ty.pair -@387 := @386 @20 -@388 := @387 @20 -@389 := fun (__x : @24) => @56 -@390 := Sort 1 -@391 := (a._@._internal._hyg.#0 : @29) -> @57 -@392 := #9 -@395 := @7 @392 @114 @108 -@396 := @104 @4 -@399 := (x : @102) -> @395 @396 @27 -@400 := #10 -@406 := (x : @102) -> @7 @400 @392 @114 @396 @27 -@407 := Prod.{0, 0} -@409 := @407 @108 @100 -@410 := #11 -@413 := @7 @410 @400 @392 -@418 := @380 @114 @108 @100 @102 @4 -@419 := @413 @418 -@421 := @386 @104 @25 -@434 := {p : @21} -> - {c : @22} -> - {A : @23} -> - {α : @390} -> - {β : @390} -> - {ea : @391} -> - {eb : @391} -> {s : @58} -> {t : @58} -> (ha : @399) -> (hb : @406) -> (x : @409) -> @419 @421 -@436 := LexLeanPreservation.Rust.wt_encPair @0 -@461 := {c : @22} -> - {A : @23} -> - {α : @390} -> - {β : @390} -> - {ea : @391} -> - {eb : @391} -> - {s : @58} -> - {t : @58} -> - (ha : (x : @102) -> @11 @114 @108 @396 @27) -> - (hb : (x : @102) -> @11 @392 @114 @396 @27) -> (x : @409) -> @11 @400 @392 @418 @421 -@462 := @436 @1 -@483 := {A : @23} -> - {α : @390} -> - {β : @390} -> - {ea : @391} -> - {eb : @391} -> - {s : @58} -> - {t : @58} -> - (ha : (x : @102) -> @12 @108 @396 @27) -> - (hb : (x : @102) -> @12 @114 @396 @27) -> (x : @409) -> @12 @392 @418 @421 -@484 := @462 @2 -@486 := @13 @396 @27 -@487 := (x : @102) -> @486 -@498 := {α : @390} -> - {β : @390} -> - {ea : @391} -> - {eb : @391} -> {s : @58} -> {t : @58} -> (ha : @487) -> (hb : @487) -> (x : @409) -> @13 @418 @421 -@499 := @484 @24 -@500 := (a._@._internal._hyg.#0 : @24) -> @57 -@501 := (x : @24) -> @486 -@502 := @407 @24 -@517 := {β : @390} -> - {ea : @500} -> - {eb : @391} -> - {s : @58} -> - {t : @58} -> (ha : @501) -> (hb : @487) -> (x : @502 @100) -> @13 (@381 @108 @100 @102 @4) @421 -@518 := @499 @24 -@519 := @502 @24 -@531 := {ea : @500} -> - {eb : @500} -> - {s : @58} -> {t : @58} -> (ha : @501) -> (hb : @501) -> (x : @519) -> @13 (@382 @100 @102 @4) @421 -@532 := @518 @18 -@534 := (x : @24) -> @53 @27 -@544 := {eb : @500} -> - {s : @58} -> {t : @58} -> (ha : @534) -> (hb : @501) -> (x : @519) -> @13 (@383 @102 @4) @421 -@545 := @532 @18 -@547 := @13 (@384 @4) -@553 := {s : @58} -> {t : @58} -> (ha : @534) -> (hb : @534) -> (x : @519) -> @547 @421 -@554 := @545 @20 -@555 := (x : @24) -> @54 -@556 := @387 @25 -@561 := {t : @58} -> (ha : @555) -> (hb : @534) -> (x : @519) -> @547 @556 -@562 := @554 @20 -@566 := (ha : @555) -> (hb : @555) -> (x : @519) -> @547 @388 -@569 := @562 @389 @389 @377 -@571 := @13 @385 @388 -@572 := LexLeanPreservation.encList -@573 := @572 @3 -@574 := @573 @5 -@575 := @574 @379 -@576 := LexLeanTarget.TargetSyntax.Ty.list -@577 := @576 @10 -@580 := fun (__x : @3) => - LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.Compose.RustStd.__wt_0 @4 -@581 := (a._@._internal._hyg.#0 : @4) -> @57 -@582 := @27 @4 -@585 := (x : @27) -> @105 @582 @29 -@586 := @97 @25 -@589 := @7 @108 @100 @102 -@592 := @572 @104 @25 @4 -@593 := @589 @592 -@594 := @576 @27 -@603 := {p : @21} -> - {c : @22} -> - {A : @23} -> {α : @390} -> {e : @581} -> {t : @58} -> (h : @585) -> (xs : @586) -> @593 @594 -@605 := LexLeanPreservation.Rust.wt_encList @0 -@608 := (x : @27) -> @136 @582 @29 -@610 := @11 @100 @102 -@619 := {c : @22} -> - {A : @23} -> {α : @390} -> {e : @581} -> {t : @58} -> (h : @608) -> (xs : @586) -> @610 @592 @594 -@620 := @605 @1 -@623 := (x : @27) -> @156 @582 @29 -@624 := @12 @102 -@632 := {A : @23} -> - {α : @390} -> {e : @581} -> {t : @58} -> (h : @623) -> (xs : @586) -> @624 @592 @594 -@633 := @620 @2 -@635 := @13 @582 @29 -@636 := (x : @27) -> @635 -@643 := {α : @390} -> {e : @581} -> {t : @58} -> (h : @636) -> (xs : @586) -> @13 @592 @594 -@644 := @633 @3 -@645 := (a._@._internal._hyg.#0 : @3) -> @57 -@646 := (x : @3) -> @635 -@647 := @97 @3 -@655 := {e : @645} -> {t : @58} -> (h : @646) -> (xs : @647) -> @13 (@573 @25 @4) @594 -@656 := @644 @5 -@658 := (x : @3) -> @14 @29 -@660 := @13 (@574 @4) -@664 := {t : @58} -> (h : @658) -> (xs : @647) -> @660 @594 -@665 := @656 @10 -@669 := (h : (x : @3) -> @15) -> (xs : @647) -> @660 @577 -@671 := @665 @580 @379 -@673 := @13 @575 @577 -@675 := @62 @575 @61 -@677 := @62 @385 @675 -@678 := @66 @577 -@679 := @678 @65 -@680 := @66 @388 -@681 := @680 @679 -@682 := @172 @575 -@684 := @574 (@378 @25) -@697 := {t : @58} -> - {vs : @98} -> - {ts : @99} -> (h : @13 @684 @27) -> (hs : @176) -> @94 (@62 (@574 (@378 @102)) @25) @122 -@698 := @682 @577 -@700 := @574 (@378 @27) -@702 := @13 @700 @577 -@707 := @94 (@62 (@574 (@378 @104)) @25) -@708 := @678 @27 -@713 := {vs : @98} -> {ts : @99} -> (h : @702) -> (hs : @176) -> @707 @708 -@714 := @698 @61 -@716 := @574 (@378 @29) -@718 := @13 @716 @577 -@720 := @62 @684 @61 -@725 := {ts : @99} -> (h : @718) -> (hs : @217) -> @94 @720 @708 -@726 := @714 @65 -@728 := @62 @700 @61 -@729 := @94 @728 -@732 := (h : @673) -> (hs : @96) -> @729 @679 -@733 := @726 @671 -@735 := @62 @716 @61 -@737 := @94 @735 @679 -@738 := (hs : @96) -> @737 -@739 := @733 @93 -@741 := @94 @675 @679 -@742 := @172 @385 -@744 := @384 (@376 @25) -@757 := {t : @58} -> - {vs : @98} -> - {ts : @99} -> (h : @13 @744 @27) -> (hs : @176) -> @94 (@62 (@384 (@376 @102)) @25) @122 -@758 := @742 @388 -@760 := @384 (@376 @27) -@762 := @13 @760 @388 -@767 := @94 (@62 (@384 (@376 @104)) @25) -@768 := @680 @27 -@773 := {vs : @98} -> {ts : @99} -> (h : @762) -> (hs : @176) -> @767 @768 -@774 := @758 @675 -@776 := @384 (@376 @29) -@778 := @13 @776 @388 -@779 := @729 @29 -@781 := @62 @744 @720 -@786 := {ts : @99} -> (h : @778) -> (hs : @779) -> @94 @781 @768 -@787 := @774 @679 -@789 := @62 @760 @728 -@790 := @94 @789 -@793 := (h : @571) -> (hs : @737) -> @790 @681 -@794 := @787 @569 -@796 := @62 @776 @735 -@798 := @94 @796 @681 -@799 := (hs : @741) -> @798 -@800 := @794 @739 -@802 := @94 @677 @681 -@803 := @302 @371 -@804 := @274 @371 -@813 := {k : @24} -> - {fs : @98} -> {tys : @99} -> (h : @244 (@804 @27) @252) -> (hf : @176) -> @303 @372 -@814 := @803 @9 -@815 := @804 @9 -@816 := @244 @815 -@817 := @816 @252 -@822 := {fs : @98} -> {tys : @99} -> (h : @817) -> (hf : @176) -> @328 @372 -@823 := @814 @677 -@830 := {tys : @99} -> (h : @817) -> (hf : @790 @29) -> @13 (@326 @781) @372 -@831 := @823 @681 -@838 := (h : @816 (@251 @681)) -> (hf : @798) -> @13 (@326 @789) @372 -@840 := @831 (@351 @815) -@844 := (hf : @802) -> @13 (@326 @796) @372 -@845 := @840 @800 -@848 := @13 (@326 @677) @372 -@849 := fun (__s : @368) => @845 -@850 := Reasoning.Screening.Screen.Ledger -@851 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.__enc_3 -@852 := @851 @4 -@853 := 3 -@854 := @8 @853 -@857 := (__s : @850) -> @13 @852 @854 -@858 := Reasoning.Screening.Screen.Ledger.iterations -@859 := @858 @4 -@860 := Reasoning.Screening.Screen.Ledger.attempts -@861 := @860 @4 -@862 := Reasoning.Screening.Screen.Ledger.firings -@863 := @862 @4 -@864 := Reasoning.Screening.Screen.Ledger.expansions -@865 := @864 @4 -@866 := Reasoning.Screening.Screen.Ledger.verifications -@867 := @866 @4 -@868 := Reasoning.Screening.Screen.Ledger.frontier -@869 := @868 @4 -@870 := @18 @859 -@871 := @52 @859 -@873 := @13 @870 @20 -@874 := @18 @861 -@875 := @52 @861 -@877 := @13 @874 @20 -@878 := @18 @863 -@879 := @52 @863 -@881 := @13 @878 @20 -@882 := @18 @865 -@883 := @52 @865 -@885 := @13 @882 @20 -@886 := @18 @867 -@887 := @52 @867 -@889 := @13 @886 @20 -@890 := @18 @869 -@891 := @52 @869 -@893 := @13 @890 @20 -@895 := @62 @890 @61 -@897 := @62 @886 @895 -@899 := @62 @882 @897 -@901 := @62 @878 @899 -@903 := @62 @874 @901 -@905 := @62 @870 @903 -@906 := @67 @68 -@907 := @67 @906 -@908 := @67 @907 -@909 := @67 @908 -@910 := @67 @909 -@911 := @172 @890 -@913 := @18 (@868 @25) -@926 := {t : @58} -> - {vs : @98} -> - {ts : @99} -> (h : @13 @913 @27) -> (hs : @176) -> @94 (@62 (@18 (@868 @102)) @25) @122 -@927 := @911 @20 -@929 := @18 (@868 @27) -@941 := {vs : @98} -> - {ts : @99} -> (h : @13 @929 @20) -> (hs : @176) -> @94 (@62 (@18 (@868 @104)) @25) @207 -@942 := @927 @61 -@944 := @18 (@868 @29) -@946 := @13 @944 @20 -@948 := @62 @913 @61 -@953 := {ts : @99} -> (h : @946) -> (hs : @217) -> @94 @948 @207 -@954 := @942 @65 -@956 := @62 @929 @61 -@957 := @94 @956 -@960 := (h : @893) -> (hs : @96) -> @957 @68 -@961 := @954 @891 -@963 := @62 @944 @61 -@965 := @94 @963 @68 -@966 := (hs : @96) -> @965 -@967 := @961 @93 -@969 := @94 @895 @68 -@970 := @172 @886 -@972 := @18 (@866 @25) -@985 := {t : @58} -> - {vs : @98} -> - {ts : @99} -> (h : @13 @972 @27) -> (hs : @176) -> @94 (@62 (@18 (@866 @102)) @25) @122 -@986 := @970 @20 -@988 := @18 (@866 @27) -@1000 := {vs : @98} -> - {ts : @99} -> (h : @13 @988 @20) -> (hs : @176) -> @94 (@62 (@18 (@866 @104)) @25) @207 -@1001 := @986 @895 -@1003 := @18 (@866 @29) -@1005 := @13 @1003 @20 -@1006 := @957 @29 -@1008 := @62 @972 @948 -@1013 := {ts : @99} -> (h : @1005) -> (hs : @1006) -> @94 @1008 @207 -@1014 := @1001 @68 -@1016 := @62 @988 @956 -@1017 := @94 @1016 -@1020 := (h : @889) -> (hs : @965) -> @1017 @906 -@1021 := @1014 @887 -@1023 := @62 @1003 @963 -@1025 := @94 @1023 @906 -@1026 := (hs : @969) -> @1025 -@1027 := @1021 @967 -@1029 := @94 @897 @906 -@1030 := @172 @882 -@1032 := @18 (@864 @25) -@1045 := {t : @58} -> - {vs : @98} -> - {ts : @99} -> (h : @13 @1032 @27) -> (hs : @176) -> @94 (@62 (@18 (@864 @102)) @25) @122 -@1046 := @1030 @20 -@1048 := @18 (@864 @27) -@1060 := {vs : @98} -> - {ts : @99} -> (h : @13 @1048 @20) -> (hs : @176) -> @94 (@62 (@18 (@864 @104)) @25) @207 -@1061 := @1046 @897 -@1063 := @18 (@864 @29) -@1065 := @13 @1063 @20 -@1066 := @1017 @29 -@1068 := @62 @1032 @1008 -@1073 := {ts : @99} -> (h : @1065) -> (hs : @1066) -> @94 @1068 @207 -@1074 := @1061 @906 -@1076 := @62 @1048 @1016 -@1077 := @94 @1076 -@1080 := (h : @885) -> (hs : @1025) -> @1077 @907 -@1081 := @1074 @883 -@1083 := @62 @1063 @1023 -@1085 := @94 @1083 @907 -@1086 := (hs : @1029) -> @1085 -@1087 := @1081 @1027 -@1089 := @94 @899 @907 -@1090 := @172 @878 -@1092 := @18 (@862 @25) -@1105 := {t : @58} -> - {vs : @98} -> - {ts : @99} -> (h : @13 @1092 @27) -> (hs : @176) -> @94 (@62 (@18 (@862 @102)) @25) @122 -@1106 := @1090 @20 -@1108 := @18 (@862 @27) -@1120 := {vs : @98} -> - {ts : @99} -> (h : @13 @1108 @20) -> (hs : @176) -> @94 (@62 (@18 (@862 @104)) @25) @207 -@1121 := @1106 @899 -@1123 := @18 (@862 @29) -@1125 := @13 @1123 @20 -@1126 := @1077 @29 -@1128 := @62 @1092 @1068 -@1133 := {ts : @99} -> (h : @1125) -> (hs : @1126) -> @94 @1128 @207 -@1134 := @1121 @907 -@1136 := @62 @1108 @1076 -@1137 := @94 @1136 -@1140 := (h : @881) -> (hs : @1085) -> @1137 @908 -@1141 := @1134 @879 -@1143 := @62 @1123 @1083 -@1145 := @94 @1143 @908 -@1146 := (hs : @1089) -> @1145 -@1147 := @1141 @1087 -@1149 := @94 @901 @908 -@1150 := @172 @874 -@1152 := @18 (@860 @25) -@1165 := {t : @58} -> - {vs : @98} -> - {ts : @99} -> (h : @13 @1152 @27) -> (hs : @176) -> @94 (@62 (@18 (@860 @102)) @25) @122 -@1166 := @1150 @20 -@1168 := @18 (@860 @27) -@1180 := {vs : @98} -> - {ts : @99} -> (h : @13 @1168 @20) -> (hs : @176) -> @94 (@62 (@18 (@860 @104)) @25) @207 -@1181 := @1166 @901 -@1183 := @18 (@860 @29) -@1185 := @13 @1183 @20 -@1186 := @1137 @29 -@1188 := @62 @1152 @1128 -@1193 := {ts : @99} -> (h : @1185) -> (hs : @1186) -> @94 @1188 @207 -@1194 := @1181 @908 -@1196 := @62 @1168 @1136 -@1197 := @94 @1196 -@1200 := (h : @877) -> (hs : @1145) -> @1197 @909 -@1201 := @1194 @875 -@1203 := @62 @1183 @1143 -@1205 := @94 @1203 @909 -@1206 := (hs : @1149) -> @1205 -@1207 := @1201 @1147 -@1209 := @94 @903 @909 -@1210 := @172 @870 -@1212 := @18 (@858 @25) -@1225 := {t : @58} -> - {vs : @98} -> - {ts : @99} -> (h : @13 @1212 @27) -> (hs : @176) -> @94 (@62 (@18 (@858 @102)) @25) @122 -@1226 := @1210 @20 -@1228 := @18 (@858 @27) -@1240 := {vs : @98} -> - {ts : @99} -> (h : @13 @1228 @20) -> (hs : @176) -> @94 (@62 (@18 (@858 @104)) @25) @207 -@1241 := @1226 @903 -@1243 := @18 (@858 @29) -@1245 := @13 @1243 @20 -@1246 := @1197 @29 -@1248 := @62 @1212 @1188 -@1253 := {ts : @99} -> (h : @1245) -> (hs : @1246) -> @94 @1248 @207 -@1254 := @1241 @909 -@1256 := @62 @1228 @1196 -@1257 := @94 @1256 -@1260 := (h : @873) -> (hs : @1205) -> @1257 @910 -@1261 := @1254 @871 -@1263 := @62 @1243 @1203 -@1265 := @94 @1263 @910 -@1266 := (hs : @1209) -> @1265 -@1267 := @1261 @1207 -@1269 := @94 @905 @910 -@1270 := @302 @853 -@1271 := @274 @853 -@1280 := {k : @24} -> - {fs : @98} -> {tys : @99} -> (h : @244 (@1271 @27) @252) -> (hf : @176) -> @303 @854 -@1281 := @1270 @9 -@1282 := @1271 @9 -@1283 := @244 @1282 -@1284 := @1283 @252 -@1289 := {fs : @98} -> {tys : @99} -> (h : @1284) -> (hf : @176) -> @328 @854 -@1290 := @1281 @905 -@1297 := {tys : @99} -> (h : @1284) -> (hf : @1257 @29) -> @13 (@326 @1248) @854 -@1298 := @1290 @910 -@1305 := (h : @1283 (@251 @910)) -> (hf : @1265) -> @13 (@326 @1256) @854 -@1307 := @1298 (@351 @1282) -@1311 := (hf : @1269) -> @13 (@326 @1263) @854 -@1312 := @1307 @1267 -@1315 := @13 (@326 @905) @854 -@1316 := fun (__s : @850) => @1312 -@1317 := Reasoning.Screening.Screen.Search -@1319 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.__enc_1 @4 -@1320 := 1 -@1321 := @8 @1320 -@1324 := (__s : @1317) -> @13 @1319 @1321 -@1325 := Reasoning.Screening.Screen.Search.frontier -@1326 := @1325 @4 -@1327 := Reasoning.Screening.Screen.Search.found -@1328 := @1327 @4 -@1329 := Reasoning.Screening.Screen.Search.truncated -@1330 := @1329 @4 -@1331 := Reasoning.Screening.Screen.Search.ledger -@1332 := @1331 @4 -@1333 := @572 @368 -@1334 := @1333 @369 -@1335 := @1334 @1326 -@1336 := @576 @372 -@1339 := fun (__x : @368) => - LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.Compose.RustStd.__wt_2 @4 -@1340 := @633 @368 -@1341 := (a._@._internal._hyg.#0 : @368) -> @57 -@1342 := (x : @368) -> @635 -@1343 := @97 @368 -@1351 := {e : @1341} -> {t : @58} -> (h : @1342) -> (xs : @1343) -> @13 (@1333 @25 @4) @594 -@1352 := @1340 @369 -@1354 := (x : @368) -> @373 @29 -@1356 := @13 (@1334 @4) -@1360 := {t : @58} -> (h : @1354) -> (xs : @1343) -> @1356 @594 -@1361 := @1352 @372 -@1362 := (x : @368) -> @374 -@1365 := (h : @1362) -> (xs : @1343) -> @1356 @1336 -@1367 := @1361 @1339 @1326 -@1369 := @13 @1335 @1336 -@1370 := @502 @368 -@1371 := @381 @368 -@1372 := @1371 @18 -@1373 := @1372 @369 -@1374 := LexLeanPreservation.encOption -@1375 := @1374 @1370 -@1376 := @1375 @1373 -@1377 := @1376 @1328 -@1378 := @387 @372 -@1379 := LexLeanTarget.TargetSyntax.Ty.option -@1380 := @1379 @1378 -@1381 := @499 @368 -@1382 := (x : @368) -> @486 -@1394 := {ea : @500} -> - {eb : @1341} -> - {s : @58} -> - {t : @58} -> (ha : @501) -> (hb : @1382) -> (x : @1370) -> @13 (@1371 @100 @102 @4) @421 -@1395 := @1381 @18 -@1405 := {eb : @1341} -> - {s : @58} -> {t : @58} -> (ha : @534) -> (hb : @1382) -> (x : @1370) -> @13 (@1372 @102 @4) @421 -@1406 := @1395 @369 -@1408 := (x : @368) -> @373 @27 -@1410 := @13 (@1373 @4) -@1416 := {s : @58} -> {t : @58} -> (ha : @534) -> (hb : @1408) -> (x : @1370) -> @1410 @421 -@1417 := @1406 @20 -@1422 := {t : @58} -> (ha : @555) -> (hb : @1408) -> (x : @1370) -> @1410 @556 -@1423 := @1417 @372 -@1425 := (x : @1370) -> @1410 @1378 -@1427 := (ha : @555) -> (hb : @1362) -> @1425 -@1431 := fun (__x : @1370) => @1423 @389 @1339 @4 -@1432 := @242 @25 -@1435 := @1374 @104 @25 @4 -@1436 := @589 @1435 -@1437 := @1379 @27 -@1446 := {p : @21} -> - {c : @22} -> - {A : @23} -> {α : @390} -> {e : @581} -> {t : @58} -> (h : @585) -> (o : @1432) -> @1436 @1437 -@1448 := LexLeanPreservation.Rust.wt_encOption @0 -@1457 := {c : @22} -> - {A : @23} -> - {α : @390} -> {e : @581} -> {t : @58} -> (h : @608) -> (o : @1432) -> @610 @1435 @1437 -@1458 := @1448 @1 -@1466 := {A : @23} -> - {α : @390} -> {e : @581} -> {t : @58} -> (h : @623) -> (o : @1432) -> @624 @1435 @1437 -@1467 := @1458 @2 -@1474 := {α : @390} -> {e : @581} -> {t : @58} -> (h : @636) -> (o : @1432) -> @13 @1435 @1437 -@1475 := @1467 @1370 -@1476 := (a._@._internal._hyg.#0 : @1370) -> @57 -@1477 := (x : @1370) -> @635 -@1478 := @242 @1370 -@1486 := {e : @1476} -> {t : @58} -> (h : @1477) -> (o : @1478) -> @13 (@1375 @25 @4) @1437 -@1487 := @1475 @1373 -@1489 := (x : @1370) -> @1410 @29 -@1491 := @13 (@1376 @4) -@1495 := {t : @58} -> (h : @1489) -> (o : @1478) -> @1491 @1437 -@1496 := @1487 @1378 -@1499 := (h : @1425) -> (o : @1478) -> @1491 @1380 -@1501 := @1496 @1431 @1328 -@1503 := @13 @1377 @1380 -@1504 := LexLeanTarget.TargetSyntax.Value.bool -@1505 := @1504 @1330 -@1506 := LexLeanTarget.TargetSyntax.Ty.bool -@1507 := Bool -@1508 := @1504 @4 -@1514 := {p : @21} -> {c : @22} -> {A : @23} -> (b : @1507) -> @30 @1508 @1506 -@1516 := LexLeanPreservation.Rust.wt_bool @0 -@1521 := {c : @22} -> {A : @23} -> (b : @1507) -> @40 @1508 @1506 -@1522 := @1516 @1 -@1526 := {A : @23} -> (b : @1507) -> @47 @1508 @1506 -@1527 := @1522 @2 -@1530 := (b : @1507) -> @13 @1508 @1506 -@1531 := @1527 @1330 -@1533 := @13 @1505 @1506 -@1534 := @851 @1332 -@1536 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.Compose.RustStd.__wt_3 @1332 -@1538 := @62 @1534 @61 -@1540 := @62 @1505 @1538 -@1542 := @62 @1377 @1540 -@1544 := @62 @1335 @1542 -@1545 := @66 @854 -@1546 := @1545 @65 -@1547 := @66 @1506 -@1548 := @1547 @1546 -@1549 := @66 @1380 -@1550 := @1549 @1548 -@1551 := @66 @1336 -@1552 := @1551 @1550 -@1553 := @172 @1534 -@1555 := @851 (@1331 @25) -@1568 := {t : @58} -> - {vs : @98} -> - {ts : @99} -> (h : @13 @1555 @27) -> (hs : @176) -> @94 (@62 (@851 (@1331 @102)) @25) @122 -@1569 := @1553 @854 -@1571 := @851 (@1331 @27) -@1573 := @13 @1571 @854 -@1578 := @94 (@62 (@851 (@1331 @104)) @25) -@1579 := @1545 @27 -@1584 := {vs : @98} -> {ts : @99} -> (h : @1573) -> (hs : @176) -> @1578 @1579 -@1585 := @1569 @61 -@1587 := @851 (@1331 @29) -@1589 := @13 @1587 @854 -@1591 := @62 @1555 @61 -@1596 := {ts : @99} -> (h : @1589) -> (hs : @217) -> @94 @1591 @1579 -@1597 := @1585 @65 -@1599 := @13 @1534 @854 -@1601 := @62 @1571 @61 -@1602 := @94 @1601 -@1605 := (h : @1599) -> (hs : @96) -> @1602 @1546 -@1606 := @1597 @1536 -@1608 := @62 @1587 @61 -@1610 := @94 @1608 @1546 -@1611 := (hs : @96) -> @1610 -@1612 := @1606 @93 -@1614 := @94 @1538 @1546 -@1615 := @172 @1505 -@1617 := @1504 (@1329 @25) -@1630 := {t : @58} -> - {vs : @98} -> - {ts : @99} -> (h : @13 @1617 @27) -> (hs : @176) -> @94 (@62 (@1504 (@1329 @102)) @25) @122 -@1631 := @1615 @1506 -@1633 := @1504 (@1329 @27) -@1635 := @13 @1633 @1506 -@1640 := @94 (@62 (@1504 (@1329 @104)) @25) -@1641 := @1547 @27 -@1646 := {vs : @98} -> {ts : @99} -> (h : @1635) -> (hs : @176) -> @1640 @1641 -@1647 := @1631 @1538 -@1649 := @1504 (@1329 @29) -@1651 := @13 @1649 @1506 -@1652 := @1602 @29 -@1654 := @62 @1617 @1591 -@1659 := {ts : @99} -> (h : @1651) -> (hs : @1652) -> @94 @1654 @1641 -@1660 := @1647 @1546 -@1662 := @62 @1633 @1601 -@1663 := @94 @1662 -@1666 := (h : @1533) -> (hs : @1610) -> @1663 @1548 -@1667 := @1660 @1531 -@1669 := @62 @1649 @1608 -@1671 := @94 @1669 @1548 -@1672 := (hs : @1614) -> @1671 -@1673 := @1667 @1612 -@1675 := @94 @1540 @1548 -@1676 := @172 @1377 -@1678 := @1376 (@1327 @25) -@1691 := {t : @58} -> - {vs : @98} -> - {ts : @99} -> (h : @13 @1678 @27) -> (hs : @176) -> @94 (@62 (@1376 (@1327 @102)) @25) @122 -@1692 := @1676 @1380 -@1694 := @1376 (@1327 @27) -@1696 := @13 @1694 @1380 -@1701 := @94 (@62 (@1376 (@1327 @104)) @25) -@1702 := @1549 @27 -@1707 := {vs : @98} -> {ts : @99} -> (h : @1696) -> (hs : @176) -> @1701 @1702 -@1708 := @1692 @1540 -@1710 := @1376 (@1327 @29) -@1712 := @13 @1710 @1380 -@1713 := @1663 @29 -@1715 := @62 @1678 @1654 -@1720 := {ts : @99} -> (h : @1712) -> (hs : @1713) -> @94 @1715 @1702 -@1721 := @1708 @1548 -@1723 := @62 @1694 @1662 -@1724 := @94 @1723 -@1727 := (h : @1503) -> (hs : @1671) -> @1724 @1550 -@1728 := @1721 @1501 -@1730 := @62 @1710 @1669 -@1732 := @94 @1730 @1550 -@1733 := (hs : @1675) -> @1732 -@1734 := @1728 @1673 -@1736 := @94 @1542 @1550 -@1737 := @172 @1335 -@1739 := @1334 (@1325 @25) -@1752 := {t : @58} -> - {vs : @98} -> - {ts : @99} -> (h : @13 @1739 @27) -> (hs : @176) -> @94 (@62 (@1334 (@1325 @102)) @25) @122 -@1753 := @1737 @1336 -@1755 := @1334 (@1325 @27) -@1757 := @13 @1755 @1336 -@1762 := @94 (@62 (@1334 (@1325 @104)) @25) -@1763 := @1551 @27 -@1768 := {vs : @98} -> {ts : @99} -> (h : @1757) -> (hs : @176) -> @1762 @1763 -@1769 := @1753 @1542 -@1771 := @1334 (@1325 @29) -@1773 := @13 @1771 @1336 -@1774 := @1724 @29 -@1776 := @62 @1739 @1715 -@1781 := {ts : @99} -> (h : @1773) -> (hs : @1774) -> @94 @1776 @1763 -@1782 := @1769 @1550 -@1784 := @62 @1755 @1723 -@1785 := @94 @1784 -@1788 := (h : @1369) -> (hs : @1732) -> @1785 @1552 -@1789 := @1782 @1367 -@1791 := @62 @1771 @1730 -@1793 := @94 @1791 @1552 -@1794 := (hs : @1736) -> @1793 -@1795 := @1789 @1734 -@1797 := @94 @1544 @1552 -@1798 := @302 @1320 -@1799 := @274 @1320 -@1808 := {k : @24} -> - {fs : @98} -> {tys : @99} -> (h : @244 (@1799 @27) @252) -> (hf : @176) -> @303 @1321 -@1809 := @1798 @9 -@1810 := @1799 @9 -@1811 := @244 @1810 -@1812 := @1811 @252 -@1817 := {fs : @98} -> {tys : @99} -> (h : @1812) -> (hf : @176) -> @328 @1321 -@1818 := @1809 @1544 -@1825 := {tys : @99} -> (h : @1812) -> (hf : @1785 @29) -> @13 (@326 @1776) @1321 -@1826 := @1818 @1552 -@1833 := (h : @1811 (@251 @1552)) -> (hf : @1793) -> @13 (@326 @1784) @1321 -@1835 := @1826 (@351 @1810) -@1839 := (hf : @1797) -> @13 (@326 @1791) @1321 -@1840 := @1835 @1795 -@1843 := @13 (@326 @1544) @1321 -@1844 := fun (__s : @1317) => @1840 -@1845 := @52 @29 -@1846 := @502 @57 -@1850 := Prod.mk.{0, 0} @24 @57 @9 -@1851 := @1850 @214 -@1852 := @59 @1846 -@1853 := @60 @1846 -@1855 := @1853 @1851 @1852 -@1856 := Bool.true -@1857 := LexLeanTarget.TargetSyntax.Function -@1858 := LexLeanTarget.TargetSyntax.Program.functions -@1859 := @1858 @0 -@1860 := @59 @24 -@1861 := LexLeanTarget.TargetSyntax.Ty.unit -@1862 := LexLeanTarget.TargetSyntax.Value.unit -@1865 := LexLeanTarget.TargetSyntax.Expr.value @1861 @1862 -@1870 := LexLeanTarget.TargetSyntax.Function.mk @1860 @65 @1861 @1865 -@1875 := List.getD.{0} @1857 @1859 @9 @1870 -@1879 := fun (__e_n : @24) => - LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.RustStd.root @4 @9 -@1880 := @172 @214 -@1882 := @13 @203 @27 -@1883 := @18 @100 -@1884 := @62 @1883 -@1892 := {t : @58} -> {vs : @98} -> {ts : @99} -> (h : @1882) -> (hs : @176) -> @94 (@1884 @25) @122 -@1893 := @1880 @20 -@1899 := {vs : @98} -> {ts : @99} -> (h : @187 @20) -> (hs : @176) -> @192 @207 -@1900 := @1893 @61 -@1901 := @204 @61 -@1902 := @94 @1901 -@1906 := {ts : @99} -> (h : @202) -> (hs : @217) -> @1902 @207 -@1907 := @1900 @65 -@1910 := (h : @216) -> (hs : @96) -> @220 @68 -@1912 := @1907 @1845 @93 -@1913 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.denote -@1914 := @1913 @29 -@1915 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.__fits_0 -@1916 := @1915 @29 -@1919 := @18 (Reasoning.Main.screenDose @29) -@1921 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.root @29 -@1922 := Ne.{1} -@1923 := LexLeanPreservation.Obs -@1924 := @1922 @1923 -@1925 := LexLeanPreservation.Rel -@1928 := @1924 (@1925 @29 @4) -@1929 := LexLeanPreservation.Obs.stuck -@1932 := (f : @1507) -> (v : @57) -> @1928 @1929 -@1934 := LexLeanPreservation.Rust.rel_ne_stuck @1916 -@1940 := (v : @57) -> @1924 (@1925 (@1915 @27) @4) @1929 -@1941 := @1934 @1919 -@1945 := @1924 (@1925 @1916 @1919) @1929 -@1946 := @97 @1846 -@1947 := LexLeanPreservation.Rust.FunSem -@1953 := (n : @24) -> @1947 @392 @114 @108 @4 @100 -@1954 := @242 @1857 -@1955 := @241 @1954 -@1962 := LexLeanRuntime.index (@97 @1857) @1857 (LexLeanRuntime.instIndexableList @1857) -@1966 := @1955 (@1962 (@1858 @392) @100) -@1967 := @250 @1857 -@1968 := @1967 @102 -@1969 := @1966 @1968 -@1973 := @69 @400 @392 @114 @102 -@1974 := LexLeanTarget.TargetSyntax.Function.types -@1975 := @1974 @100 -@1976 := @1973 @1975 -@1977 := @242 @1946 -@1978 := @241 @1977 -@1979 := LexLeanTarget.TargetSemantics.bindAll -@1980 := LexLeanTarget.TargetSyntax.Function.parameters -@1985 := @1978 (@1979 (@1980 @108) @100 @1852) -@1986 := @250 @1946 -@1987 := @1986 @102 -@1988 := @1985 @1987 -@1989 := @242 @1507 -@1990 := @241 @1989 -@1991 := LexLeanPreservation.Rust.fnFallible -@1994 := @1990 (@1991 @410 @392) -@1995 := @250 @1507 -@1996 := @1995 @102 -@1997 := @1994 @1996 -@1998 := LexLeanPreservation.RunConv -@1999 := #13 -@2003 := @1998 @1999 @400 @114 @102 -@2005 := @1924 @100 @1929 -@2006 := Exists.{1} -@2007 := LexLeanPreservation.Rust.ROut -@2008 := @2006 @2007 -@2009 := And -@2010 := LexLeanPreservation.Rust.RealizesFn -@2014 := @2009 (@2010 @392 @114 @4) -@2015 := LexLeanPreservation.Rust.RCI -@2017 := @2015 #15 -@2018 := LexLeanPreservation.Rust.fnIdent -@2019 := @2018 @1999 -@2026 := (hne : @2005) -> @2008 (fun (ro : @2007) => @2014 (@2017 @2019 @410 @4)) -@2041 := {p : @21} -> - {c : @22} -> - {A : @23} -> - {f : @24} -> - {fn : @1857} -> - {args : @98} -> - {env : @1946} -> - {F : @1507} -> - {o : @1923} -> - (hB : @1953) -> - (hfn : @1969) -> (hwt : @1976) -> (hbind : @1988) -> (hF : @1997) -> (hA : @2003) -> @2026 -@2043 := LexLeanPreservation.Rust.compose @0 -@2044 := @1947 @0 -@2049 := (n : @24) -> @2044 @114 @108 @4 @100 -@2050 := @1962 @1859 -@2053 := @1955 (@2050 @100) @1968 -@2057 := @80 @392 @114 @102 @1975 -@2058 := @1998 @0 -@2061 := @2058 @400 @114 @102 -@2075 := {c : @22} -> - {A : @23} -> - {f : @24} -> - {fn : @1857} -> - {args : @98} -> - {env : @1946} -> - {F : @1507} -> - {o : @1923} -> - (hB : @2049) -> - (hfn : @2053) -> (hwt : @2057) -> (hbind : @1988) -> (hF : @1997) -> (hA : @2061) -> @2026 -@2076 := @2043 @1 -@2077 := @2044 @1 -@2081 := (n : @24) -> @2077 @108 @4 @100 -@2084 := @88 @114 @102 @1975 -@2085 := @1991 @1 -@2088 := @1990 (@2085 @392) @1996 -@2089 := @2015 @1 -@2099 := (hbind : @1988) -> - (hF : @2088) -> - (hA : @2061) -> (hne : @2005) -> @2008 (fun (ro : @2007) => @2014 (@2089 @2019 @410 @4)) -@2109 := {A : @23} -> - {f : @24} -> - {fn : @1857} -> - {args : @98} -> - {env : @1946} -> - {F : @1507} -> {o : @1923} -> (hB : @2081) -> (hfn : @2053) -> (hwt : @2084) -> @2099 -@2110 := @2076 @2 -@2112 := @2077 @2 @4 -@2114 := (n : @24) -> @2112 @100 -@2115 := @94 @102 -@2116 := @2115 @1975 -@2125 := {f : @24} -> - {fn : @1857} -> - {args : @98} -> - {env : @1946} -> - {F : @1507} -> {o : @1923} -> (hB : @2114) -> (hfn : @2053) -> (hwt : @2116) -> @2099 -@2126 := @2110 @9 -@2128 := (n : @24) -> @2112 @9 -@2129 := @2050 @9 -@2130 := @1955 @2129 -@2131 := @2130 @1968 -@2132 := @2085 @9 -@2133 := @1990 @2132 -@2134 := @2133 @1996 -@2135 := @2058 @9 -@2137 := @2135 @114 @102 -@2139 := @2089 (@2018 @9) -@2147 := (hF : @2134) -> - (hA : @2137) -> (hne : @2005) -> @2008 (fun (ro : @2007) => @2014 (@2139 @410 @4)) -@2156 := {fn : @1857} -> - {args : @98} -> - {env : @1946} -> - {F : @1507} -> - {o : @1923} -> (hB : @2128) -> (hfn : @2131) -> (hwt : @2116) -> (hbind : @1988) -> @2147 -@2157 := @2126 @1875 -@2159 := @2130 (@1967 @1875) -@2160 := @1974 @1875 -@2161 := @2115 @2160 -@2163 := @1979 (@1980 @1875) -@2175 := {args : @98} -> - {env : @1946} -> - {F : @1507} -> - {o : @1923} -> - (hB : @2128) -> - (hfn : @2159) -> (hwt : @2161) -> (hbind : @1978 (@2163 @100 @1852) @1987) -> @2147 -@2176 := @2157 @234 -@2177 := @1884 @61 -@2179 := @94 @2177 @2160 -@2182 := @62 (@18 @108) @61 -@2186 := @1978 (@2163 @2182 @1852) @1987 -@2189 := @62 (@18 @392) @61 -@2210 := {env : @1946} -> - {F : @1507} -> - {o : @1923} -> - (hB : @2128) -> - (hfn : @2159) -> - (hwt : @2179) -> - (hbind : @2186) -> - (hF : @2134) -> - (hA : @2135 @2189 @102) -> - (hne : @2005) -> @2008 (fun (ro : @2007) => @2014 (@2139 (@62 (@18 #12) @61) @4)) -@2211 := @2176 @1855 -@2212 := @190 @61 -@2214 := @94 @2212 @2160 -@2222 := @1978 (@2163 @2177 @1852) (@1986 (@1853 (@1850 @1883) @1852)) -@2225 := @62 (@18 @114) @61 -@2244 := {F : @1507} -> - {o : @1923} -> - (hB : @2128) -> - (hfn : @2159) -> - (hwt : @2214) -> - (hbind : @2222) -> - (hF : @2134) -> - (hA : @2135 @2225 @102) -> - (hne : @2005) -> @2008 (fun (ro : @2007) => @2014 (@2139 (@62 (@18 @410) @61) @4)) -@2245 := @2211 @1856 -@2246 := @1902 @2160 -@2254 := @1978 (@2163 @2212 @1852) (@1986 (@1853 (@1850 @189) @1852)) -@2256 := @2133 (@1995 @1856) -@2258 := @2135 @2182 @102 -@2259 := @2010 @1856 -@2278 := {o : @1923} -> - (hB : @2128) -> - (hfn : @2159) -> - (hwt : @2246) -> - (hbind : @2254) -> - (hF : @2256) -> - (hA : @2258) -> - (hne : @2005) -> @2008 (fun (ro : @2007) => @2009 (@2259 @114 @4) (@2139 (@62 (@18 @400) @61) @4)) -@2279 := @2245 @1914 -@2280 := @220 @2160 -@2288 := @1978 (@2163 @1901 @1852) (@1986 (@1853 (@1850 @203) @1852)) -@2289 := @2135 @2177 -@2290 := @1913 @100 -@2291 := @2289 @2290 -@2292 := @1913 @108 -@2310 := (hB : @2128) -> - (hfn : @2159) -> - (hwt : @2280) -> - (hbind : @2288) -> - (hF : @2256) -> - (hA : @2291) -> - (hne : @1924 @2292 @1929) -> - @2008 (fun (ro : @2007) => @2009 (@2259 (@1913 @392) @4) (@2139 @2189 @4)) -@2311 := @2279 @1879 -@2312 := @228 @2160 -@2320 := @1978 (@2163 @219 @1852) (@1986 (@1853 (@1850 @186) @1852)) -@2321 := @2135 @2212 -@2322 := @1913 @102 -@2340 := (hfn : @2159) -> - (hwt : @2312) -> - (hbind : @2320) -> - (hF : @2256) -> - (hA : @2321 @2322) -> - (hne : @1924 @2290 @1929) -> - @2008 (fun (ro : @2007) => @2009 (@2259 (@1913 @114) @4) (@2139 @2225 @4)) -@2343 := @2311 (@350 @1954 @2129) -@2344 := @235 @2160 -@2352 := @1978 (@2163 @227 @1852) (@1986 (@1853 (@1850 @200) @1852)) -@2353 := @2135 @1901 -@2354 := @1913 @104 -@2370 := (hwt : @2344) -> - (hbind : @2352) -> - (hF : @2256) -> - (hA : @2353 @2354) -> - (hne : @1924 @2322 @1929) -> @2008 (fun (ro : @2007) => @2009 (@2259 @2292 @4) (@2139 @2182 @4)) -@2371 := @2343 @1912 -@2373 := @2163 @234 @1852 -@2376 := @1978 @2373 (@1986 @1855) -@2377 := @2135 @219 -@2378 := @1913 @25 -@2393 := (hbind : @2376) -> - (hF : @2256) -> - (hA : @2377 @2378) -> - (hne : @1924 @2354 @1929) -> @2008 (fun (ro : @2007) => @2009 (@2259 @2290 @4) (@2139 @2177 @4)) -@2396 := @2371 (@350 @1977 @2373) -@2397 := @2135 @227 -@2398 := @1913 @27 -@2412 := (hF : @2256) -> - (hA : @2397 @2398) -> - (hne : @1924 @2378 @1929) -> @2008 (fun (ro : @2007) => @2009 (@2259 @2322 @4) (@2139 @2212 @4)) -@2415 := @2396 (@350 @1989 @2132) -@2429 := (hA : @2135 @234 @1914) -> - (hne : @1924 @2398 @1929) -> @2008 (fun (ro : @2007) => @2009 (@2259 @2354 @4) (@2139 @1901 @4)) -@2430 := @2415 @1921 -@2441 := (hne : @1924 @1914 @1929) -> - @2008 (fun (ro : @2007) => @2009 (@2259 @2378 @4) (@2139 @219 @4)) -@2442 := @2430 @1941 -@2448 := @2009 (@2259 @2398 @4) (@2139 @227 @4) -@2450 := @2008 (fun (ro : @2007) => @2448) -@2452 := @2008 (fun (__e_ro : @2007) => @2448) -@2454 := LexLeanPreservation.Rust.RepresentableL @64 -@2455 := (__e_hrep : @2454) -> @2452 -@2456 := fun (__e_hrep : @2454) => @2442 -@2457 := (w : @24) -> @2455 -@2458 := fun (w : @24) => @2456 -\end{coremodule} -\end{lexlean} diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R6/RustStd.lean b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R6/RustStd.lean deleted file mode 100644 index 9c08a94d4..000000000 --- a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R6/RustStd.lean +++ /dev/null @@ -1,278 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [{ constructors := [[.nat]] }, - { constructors := [[(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]] }, - { constructors := [[(.pair .nat .nat), (.list (.adt 0))]] }, - { constructors := [[.nat, .nat, .nat, .nat, .nat, .nat]] }], functions := [ - { parameters := [0], types := [.nat], result := .nat, - body := (.«match» .nat (.call 1 [(.var 0)]) [(.arm .ok [1] (.var 1)), (.arm .error [2] (.value .nat (.nat 9)))]) }, - { parameters := [0], types := [.nat], result := (.result .nat (.pair .bool .bool)), - body := (.«match» (.result .nat (.pair .bool .bool)) (.call 2 [(.var 0)]) [(.arm .ok [1] (.build .ok (.result .nat (.pair .bool .bool)) [(.first (.var 1))])), (.arm .error [2] (.build .error (.result .nat (.pair .bool .bool)) [(.var 2)]))]) }, - { parameters := [0], types := [.nat], result := (.result (.pair .nat (.list (.adt 0))) (.pair .bool .bool)), - body := (.«let» 1 (.pair (.adt 1) .bool) (.call 3 [(.var 0)]) (.«match» (.result (.pair .nat (.list (.adt 0))) (.pair .bool .bool)) (.field (.first (.var 1)) 1) [(.arm .some [2] (.build .ok (.result (.pair .nat (.list (.adt 0))) (.pair .bool .bool)) [(.build .pair (.pair .nat (.list (.adt 0))) [(.first (.var 2)), (.field (.second (.var 2)) 1)])])), (.arm .none [] (.build .error (.result (.pair .nat (.list (.adt 0))) (.pair .bool .bool)) [(.call 4 [(.second (.var 1)), (.field (.first (.var 1)) 2)])]))])) }, - { parameters := [0], types := [.nat], result := (.pair (.adt 1) .bool), - body := (.call 5 [(.closure 6 [(.var 0)]), (.value .nat (.nat 8)), (.call 7 [(.var 0)])]) }, - { parameters := [0, 1], types := [.bool, .bool], result := (.pair .bool .bool), - body := (.cond (.cond (.var 0) (.prim .boolNot [(.var 1)]) (.build .false .bool [])) (.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])]) (.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])) }, - { parameters := [0, 1, 2], types := [(.fn [(.adt 1)] (.option (.adt 1))), .nat, (.adt 1)], result := (.pair (.adt 1) .bool), - body := (.«match» (.pair (.adt 1) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.adt 1) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.adt 1) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.adt 1) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 5 [(.var 0), (.var 3), (.var 4)]))]))]) }, - { parameters := [0, 1], types := [.nat, (.adt 1)], result := (.option (.adt 1)), - body := (.call 8 [(.var 0), (.var 1)]) }, - { parameters := [0], types := [.nat], result := (.adt 1), - body := (.«let» 1 (.list (.adt 2)) (.call 9 [(.closure 10 []), (.build .nil (.list (.adt 2)) []), (.build .cons (.list (.adt 2)) [(.build (.adt 0) (.adt 2) [(.call 11 [(.var 0)]), (.build .nil (.list (.adt 0)) [])]), (.build .nil (.list (.adt 2)) [])])]) (.build (.adt 0) (.adt 1) [(.var 1), (.build .none (.option (.pair .nat (.adt 2))) []), (.prim .natLt [(.value .nat (.nat 3)), (.value .nat (.nat 1))]), (.build (.adt 0) (.adt 3) [(.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.value .nat (.nat 0)), (.prim .length [(.var 1)])])])) }, - { parameters := [0, 1], types := [.nat, (.adt 1)], result := (.option (.adt 1)), - body := (.«match» (.option (.adt 1)) (.field (.var 1) 1) [(.arm .some [2] (.build .none (.option (.adt 1)) [])), (.arm .none [] (.«match» (.option (.adt 1)) (.field (.var 1) 0) [(.arm .nil [] (.build .none (.option (.adt 1)) [])), (.arm .cons [3, 4] (.«match» (.option (.adt 1)) (.call 12 [(.var 0), (.field (.var 3) 0)]) [(.arm .some [5] (.build .some (.option (.adt 1)) [(.build (.adt 0) (.adt 1) [(.var 4), (.build .some (.option (.pair .nat (.adt 2))) [(.build .pair (.pair .nat (.adt 2)) [(.var 5), (.var 3)])]), (.field (.var 1) 2), (.build (.adt 0) (.adt 3) [(.prim .natAdd [(.field (.field (.var 1) 3) 0), (.value .nat (.nat 1))]), (.field (.field (.var 1) 3) 1), (.field (.field (.var 1) 3) 2), (.field (.field (.var 1) 3) 3), (.prim .natAdd [(.field (.field (.var 1) 3) 4), (.value .nat (.nat 1))]), (.field (.field (.var 1) 3) 5)])])])), (.arm .none [] (.«let» 6 (.list (.adt 2)) (.call 13 [(.var 3)]) (.«let» 7 (.list (.adt 2)) (.var 6) (.«let» 8 (.list (.adt 2)) (.prim .append [(.var 7), (.var 4)]) (.«let» 9 (.list (.adt 2)) (.call 9 [(.closure 14 []), (.build .nil (.list (.adt 2)) []), (.var 8)]) (.build .some (.option (.adt 1)) [(.build (.adt 0) (.adt 1) [(.var 9), (.build .none (.option (.pair .nat (.adt 2))) []), (.cond (.field (.var 1) 2) (.build .true .bool []) (.prim .natLt [(.value .nat (.nat 3)), (.prim .length [(.var 8)])])), (.build (.adt 0) (.adt 3) [(.prim .natAdd [(.field (.field (.var 1) 3) 0), (.value .nat (.nat 1))]), (.prim .natAdd [(.field (.field (.var 1) 3) 1), (.call 15 [(.field (.var 3) 0)])]), (.prim .natAdd [(.field (.field (.var 1) 3) 2), (.prim .length [(.var 6)])]), (.prim .natAdd [(.field (.field (.var 1) 3) 3), (.value .nat (.nat 1))]), (.prim .natAdd [(.field (.field (.var 1) 3) 4), (.value .nat (.nat 1))]), (.cond (.prim .natLt [(.field (.field (.var 1) 3) 5), (.prim .length [(.var 9)])]) (.prim .length [(.var 9)]) (.field (.field (.var 1) 3) 5))])])]))))))]))]))]) }, - { parameters := [0, 1, 2], types := [(.fn [(.list (.adt 2)), (.adt 2)] (.list (.adt 2))), (.list (.adt 2)), (.list (.adt 2))], result := (.list (.adt 2)), - body := (.«match» (.list (.adt 2)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 9 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, - { parameters := [0, 1], types := [(.list (.adt 2)), (.adt 2)], result := (.list (.adt 2)), - body := (.cond (.prim .natLt [(.prim .length [(.var 0)]), (.value .nat (.nat 3))]) (.prim .append [(.var 0), (.build .cons (.list (.adt 2)) [(.var 1), (.build .nil (.list (.adt 2)) [])])]) (.var 0)) }, - { parameters := [0], types := [.nat], result := (.pair .nat .nat), - body := (.build .pair (.pair .nat .nat) [(.var 0), (.value .nat (.nat 0))]) }, - { parameters := [0, 1], types := [.nat, (.pair .nat .nat)], result := (.option .nat), - body := (.«match» (.option .nat) (.call 16 [(.var 1)]) [(.arm .none [] (.build .none (.option .nat) [])), (.arm .some [2] (.cond (.call 17 [(.var 0), (.var 2)]) (.build .some (.option .nat) [(.var 2)]) (.build .none (.option .nat) [])))]) }, - { parameters := [0], types := [(.adt 2)], result := (.list (.adt 2)), - body := (.call 18 [(.var 0)]) }, - { parameters := [0, 1], types := [(.list (.adt 2)), (.adt 2)], result := (.list (.adt 2)), - body := (.cond (.prim .natLt [(.prim .length [(.var 0)]), (.value .nat (.nat 3))]) (.prim .append [(.var 0), (.build .cons (.list (.adt 2)) [(.var 1), (.build .nil (.list (.adt 2)) [])])]) (.var 0)) }, - { parameters := [0], types := [(.pair .nat .nat)], result := .nat, - body := (.prim .length [(.call 19 [(.var 0)])]) }, - { parameters := [0], types := [(.pair .nat .nat)], result := (.option .nat), - body := (.cond (.prim .natLt [(.value .nat (.nat 0)), (.second (.var 0))]) (.build .some (.option .nat) [(.second (.var 0))]) (.build .none (.option .nat) [])) }, - { parameters := [0, 1], types := [.nat, .nat], result := .bool, - body := (.prim .natLe [(.prim .natAdd [(.var 1), (.var 1)]), (.var 0)]) }, - { parameters := [0], types := [(.adt 2)], result := (.list (.adt 2)), - body := (.call 20 [(.closure 21 [(.var 0)]), (.build .nil (.list (.adt 2)) []), (.call 19 [(.field (.var 0) 0)])]) }, - { parameters := [0], types := [(.pair .nat .nat)], result := (.list .nat), - body := (.«match» (.list .nat) (.«let» 1 .nat (.first (.var 0)) (.«let» 2 (.list .nat) (.call 22 [(.var 1)]) (.cond (.call 23 [(.var 1), (.var 2)]) (.build .ok (.result (.list .nat) (.pair .bool .bool)) [(.var 2)]) (.build .error (.result (.list .nat) (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])])])))) [(.arm .ok [3] (.var 3)), (.arm .error [4] (.build .nil (.list .nat) []))]) }, - { parameters := [0, 1, 2], types := [(.fn [(.list (.adt 2)), .nat] (.list (.adt 2))), (.list (.adt 2)), (.list .nat)], result := (.list (.adt 2)), - body := (.«match» (.list (.adt 2)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 20 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, - { parameters := [0, 1, 2], types := [(.adt 2), (.list (.adt 2)), .nat], result := (.list (.adt 2)), - body := (.call 24 [(.var 0), (.var 1), (.var 2)]) }, - { parameters := [0], types := [.nat], result := (.list .nat), - body := (.call 25 [(.var 0)]) }, - { parameters := [0, 1], types := [.nat, (.list .nat)], result := .bool, - body := (.prim .natLe [(.prim .length [(.var 1)]), (.value .nat (.nat 4))]) }, - { parameters := [0, 1, 2], types := [(.adt 2), (.list (.adt 2)), .nat], result := (.list (.adt 2)), - body := (.«match» (.list (.adt 2)) (.call 26 [(.field (.var 0) 0), (.build (.adt 0) (.adt 0) [(.var 2)])]) [(.arm .none [] (.var 1)), (.arm .some [3] (.prim .append [(.var 1), (.build .cons (.list (.adt 2)) [(.build (.adt 0) (.adt 2) [(.var 3), (.prim .append [(.field (.var 0) 1), (.build .cons (.list (.adt 0)) [(.build (.adt 0) (.adt 0) [(.var 2)]), (.build .nil (.list (.adt 0)) [])])])]), (.build .nil (.list (.adt 2)) [])])]))]) }, - { parameters := [0], types := [.nat], result := (.list .nat), - body := (.build .cons (.list .nat) [(.prim .natSub [(.var 0), (.value .nat (.nat 10))]), (.build .cons (.list .nat) [(.prim .natSub [(.var 0), (.value .nat (.nat 20))]), (.build .cons (.list .nat) [(.prim .natSub [(.var 0), (.value .nat (.nat 30))]), (.build .cons (.list .nat) [(.prim .natSub [(.var 0), (.value .nat (.nat 50))]), (.build .nil (.list .nat) [])])])])]) }, - { parameters := [0, 1], types := [(.pair .nat .nat), (.adt 0)], result := (.option (.pair .nat .nat)), - body := (.«match» (.option (.pair .nat .nat)) (.var 1) [(.arm (.adt 0) [2] (.call 27 [(.var 0), (.var 2)]))]) }, - { parameters := [0, 1], types := [(.pair .nat .nat), .nat], result := (.option (.pair .nat .nat)), - body := (.cond (.call 28 [(.var 0), (.var 1)]) (.build .some (.option (.pair .nat .nat)) [(.call 29 [(.var 0), (.var 1)])]) (.build .none (.option (.pair .nat .nat)) [])) }, - { parameters := [0, 1], types := [(.pair .nat .nat), .nat], result := .bool, - body := (.cond (.prim .natEq [(.second (.var 0)), (.value .nat (.nat 0))]) (.prim .natLt [(.value .nat (.nat 0)), (.var 1)]) (.build .false .bool [])) }, - { parameters := [0, 1], types := [(.pair .nat .nat), .nat], result := (.pair .nat .nat), - body := (.build .pair (.pair .nat .nat) [(.first (.var 0)), (.var 1)]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := ((.enum (.adt 0) [{ number := 0, fields := [.nat] }]) :: - (.enum (.adt 1) [{ number := 0, fields := [(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)] }]) :: - (.enum (.adt 2) [{ number := 0, fields := [(.pair .nat .nat), (.list (.adt 0))] }]) :: - (.enum (.adt 3) [{ number := 0, fields := [.nat, .nat, .nat, .nat, .nat, .nat] }]) :: - (.enum (.fn 0) [{ number := 6, fields := [.nat] }]) :: - (.apply 0 [(.adt 1)] (.option (.adt 1)) true [{ function := 6, captures := [.copy], functionFallible := true }]) :: - (.enum (.fn 1) [{ number := 10, fields := [] }, { number := 14, fields := [] }]) :: - (.apply 1 [(.list (.adt 2)), (.adt 2)] (.list (.adt 2)) false [{ function := 10, captures := [], functionFallible := false }, { function := 14, captures := [], functionFallible := false }]) :: - (.enum (.fn 2) [{ number := 21, fields := [(.adt 2)] }]) :: - (.apply 2 [(.list (.adt 2)), .nat] (.list (.adt 2)) false [{ function := 21, captures := [.clone], functionFallible := false }]) :: - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 1)) none (.call (.function 1) [(.copy (.generated .binding 0))] true))] (.matchOn (.move (.generated .holder 1)) [(.mk (.ok (.bind (.generated .binding 1))) (.mk [] (.succeed (.copy (.generated .binding 1))))), (.mk (.err .wild) (.mk [] (.succeed (.lit (.nat 9)))))]))) :: - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible (.result .nat (.pair .bool .bool))) (.mk [(.mk (.bind (.generated .holder 2)) none (.call (.function 2) [(.copy (.generated .binding 0))] true))] (.matchOn (.move (.generated .holder 2)) [(.mk (.ok (.bind (.generated .binding 1))) (.mk [] (.succeed (.construct (.ok .nat (.pair .bool .bool)) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 3))))])))), (.mk (.err (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))]))))]))) :: - (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible (.result (.pair .nat (.list (.adt 0))) (.pair .bool .bool))) (.mk [(.mk (.bind (.generated .binding 1)) (some (.pair (.adt 1) .bool)) (.call (.function 3) [(.copy (.generated .binding 0))] true)), (.mk (.bind (.generated .holder 7)) none (.block (.mk [(.mk (.bind (.generated .holder 6)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 5)), .wild]) none (.clone (.generated .binding 1)))] (.move (.generated .part 5)))))] (.matchOn (.move (.generated .holder 6)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 4)), .wild, .wild]) (.mk [] (.move (.generated .part 4))))]))))] (.matchOn (.move (.generated .holder 7)) [(.mk .none (.mk [] (.succeed (.construct (.err (.pair .nat (.list (.adt 0))) (.pair .bool .bool)) [(.call (.function 4) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 12))]) none (.move (.generated .binding 1)))] (.move (.generated .part 12)))), (.block (.mk [(.mk (.bind (.generated .holder 15)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 14)))))] (.matchOn (.move (.generated .holder 15)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 13)), .wild]) (.mk [] (.move (.generated .part 13))))])))] false)])))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct (.ok (.pair .nat (.list (.adt 0))) (.pair .bool .bool)) [(.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 8)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 8)))) (.block (.mk [(.mk (.bind (.generated .holder 11)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 10))]) none (.move (.generated .binding 2)))] (.move (.generated .part 10)))))] (.matchOn (.move (.generated .holder 11)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 9))]) (.mk [] (.move (.generated .part 9))))]))))]))))]))) :: - (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible (.pair (.adt 1) .bool)) (.mk [] (.call (.function 5) [(.construct (.closure 0 6) [(.copy (.generated .binding 0))]), (.lit (.nat 8)), (.call (.function 7) [(.copy (.generated .binding 0))] false)] false))) :: - (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := .bool }, { pattern := (.bind (.generated .binding 1)), type := .bool }] (.pair .bool .bool) (.mk [] (.cond (.cond (.copy (.generated .binding 0)) (.mk [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 1)))] (.call (.runtime .boolNot) [(.move (.generated .operand 16))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.pair (.lit (.bool false)) (.lit (.bool true)))) (.mk [] (.pair (.lit (.bool false)) (.lit (.bool false))))))) :: - (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := (.adt 1) }] (.fallible (.pair (.adt 1) .bool)) (.mk [(.mk (.bind (.generated .holder 17)) none (.copy (.generated .binding 1)))] (.cond (.isZero (.generated .holder 17)) (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 17))), (.mk (.bind (.generated .holder 19)) none (.block (.mk [(.mk (.bind (.generated .callee 18)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 18) [(.clone (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 19)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 5) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))]))))) :: - (.function (.generated .function 6) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := (.adt 1) }] (.fallible (.option (.adt 1))) (.mk [] (.call (.function 8) [(.copy (.generated .binding 0)), (.move (.generated .binding 1))] false))) :: - (.function (.generated .function 7) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.adt 1) (.mk [(.mk (.bind (.generated .binding 1)) (some (.list (.adt 2))) (.call (.function 9) [(.construct (.closure 1 10) []), (.construct (.nil (.adt 2)) []), (.construct .cons [(.construct (.adt 2 0) [(.call (.function 11) [(.copy (.generated .binding 0))] false), (.construct (.nil (.adt 0)) [])]), (.construct (.nil (.adt 2)) [])])] false))] (.construct (.adt 1 0) [(.clone (.generated .binding 1)), (.construct (.none (.pair .nat (.adt 2))) []), (.block (.mk [(.mk (.bind (.generated .operand 20)) none (.lit (.nat 3))), (.mk (.bind (.generated .operand 21)) none (.lit (.nat 1)))] (.call (.runtime .natLt) [(.move (.generated .operand 20)), (.move (.generated .operand 21))] false))), (.construct (.adt 3 0) [(.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.block (.mk [(.mk (.bind (.generated .operand 22)) none (.move (.generated .binding 1)))] (.call (.runtime .lengthList) [(.move (.generated .operand 22))] false)))])]))) :: - (.function (.generated .function 8) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := (.adt 1) }] (.fallible (.option (.adt 1))) (.mk [(.mk (.bind (.generated .holder 24)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 23)), .wild, .wild]) (.mk [] (.move (.generated .part 23))))]))] (.matchOn (.move (.generated .holder 24)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 26)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [(.bind (.generated .part 25)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 25))))]))] (.matchOn (.uncons (.generated .holder 26)) [(.mk .none (.mk [] (.succeed (.construct (.none (.adt 1)) [])))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [(.mk (.bind (.generated .holder 28)) none (.call (.function 12) [(.copy (.generated .binding 0)), (.matchOn (.clone (.generated .binding 3)) [(.mk (.adt 2 0 [(.bind (.generated .part 27)), .wild]) (.mk [] (.move (.generated .part 27))))])] true))] (.matchOn (.move (.generated .holder 28)) [(.mk .none (.mk [(.mk (.bind (.generated .binding 6)) (some (.list (.adt 2))) (.call (.function 13) [(.clone (.generated .binding 3))] false)), (.mk (.bind (.generated .binding 7)) (some (.list (.adt 2))) (.clone (.generated .binding 6))), (.mk (.bind (.generated .binding 8)) (some (.list (.adt 2))) (.block (.mk [(.mk (.bind (.generated .operand 52)) none (.move (.generated .binding 7))), (.mk (.bind (.generated .operand 53)) none (.move (.generated .binding 4)))] (.call (.runtime .appendList) [(.move (.generated .operand 52)), (.move (.generated .operand 53))] false)))), (.mk (.bind (.generated .binding 9)) (some (.list (.adt 2))) (.call (.function 9) [(.construct (.closure 1 14) []), (.construct (.nil (.adt 2)) []), (.clone (.generated .binding 8))] false))] (.succeed (.construct .some [(.construct (.adt 1 0) [(.clone (.generated .binding 9)), (.construct (.none (.pair .nat (.adt 2))) []), (.cond (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 54)), .wild]) (.mk [] (.move (.generated .part 54))))]) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 56)) none (.lit (.nat 3))), (.mk (.bind (.generated .operand 57)) none (.block (.mk [(.mk (.bind (.generated .operand 55)) none (.move (.generated .binding 8)))] (.call (.runtime .lengthList) [(.move (.generated .operand 55))] false))))] (.call (.runtime .natLt) [(.move (.generated .operand 56)), (.move (.generated .operand 57))] false))), (.construct (.adt 3 0) [(.block (.mk [(.mk (.bind (.generated .operand 61)) none (.block (.mk [(.mk (.bind (.generated .holder 60)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 59))]) (.mk [] (.move (.generated .part 59))))]))] (.matchOn (.move (.generated .holder 60)) [(.mk (.adt 3 0 [(.bind (.generated .part 58)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 58))))])))), (.mk (.bind (.generated .operand 62)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 61)), (.move (.generated .operand 62))] true))), (.block (.mk [(.mk (.bind (.generated .operand 67)) none (.block (.mk [(.mk (.bind (.generated .holder 65)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 64))]) (.mk [] (.move (.generated .part 64))))]))] (.matchOn (.move (.generated .holder 65)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 63)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 63))))])))), (.mk (.bind (.generated .operand 68)) none (.call (.function 15) [(.matchOn (.move (.generated .binding 3)) [(.mk (.adt 2 0 [(.bind (.generated .part 66)), .wild]) (.mk [] (.move (.generated .part 66))))])] false))] (.call (.runtime .natAdd) [(.move (.generated .operand 67)), (.move (.generated .operand 68))] true))), (.block (.mk [(.mk (.bind (.generated .operand 73)) none (.block (.mk [(.mk (.bind (.generated .holder 71)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 70))]) (.mk [] (.move (.generated .part 70))))]))] (.matchOn (.move (.generated .holder 71)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 69)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 69))))])))), (.mk (.bind (.generated .operand 74)) none (.block (.mk [(.mk (.bind (.generated .operand 72)) none (.move (.generated .binding 6)))] (.call (.runtime .lengthList) [(.move (.generated .operand 72))] false))))] (.call (.runtime .natAdd) [(.move (.generated .operand 73)), (.move (.generated .operand 74))] true))), (.block (.mk [(.mk (.bind (.generated .operand 78)) none (.block (.mk [(.mk (.bind (.generated .holder 77)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 76))]) (.mk [] (.move (.generated .part 76))))]))] (.matchOn (.move (.generated .holder 77)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 75)), .wild, .wild]) (.mk [] (.move (.generated .part 75))))])))), (.mk (.bind (.generated .operand 79)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 78)), (.move (.generated .operand 79))] true))), (.block (.mk [(.mk (.bind (.generated .operand 83)) none (.block (.mk [(.mk (.bind (.generated .holder 82)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))]))] (.matchOn (.move (.generated .holder 82)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 80)), .wild]) (.mk [] (.move (.generated .part 80))))])))), (.mk (.bind (.generated .operand 84)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 83)), (.move (.generated .operand 84))] true))), (.block (.mk [(.mk (.bind (.generated .operand 89)) none (.block (.mk [(.mk (.bind (.generated .holder 87)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 86))]) (.mk [] (.move (.generated .part 86))))]))] (.matchOn (.move (.generated .holder 87)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 85))]) (.mk [] (.move (.generated .part 85))))])))), (.mk (.bind (.generated .operand 90)) none (.block (.mk [(.mk (.bind (.generated .operand 88)) none (.clone (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 88))] false))))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 89)), (.move (.generated .operand 90))] false) (.mk [(.mk (.bind (.generated .operand 91)) none (.move (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 91))] false)) (.mk [(.mk (.bind (.generated .holder 94)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 93))]) (.mk [] (.move (.generated .part 93))))]))] (.matchOn (.move (.generated .holder 94)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 92))]) (.mk [] (.move (.generated .part 92))))])))))])])])))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.succeed (.construct .some [(.construct (.adt 1 0) [(.move (.generated .binding 4)), (.construct .some [(.pair (.copy (.generated .binding 5)) (.move (.generated .binding 3)))]), (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 29)), .wild]) (.mk [] (.move (.generated .part 29))))]), (.construct (.adt 3 0) [(.block (.mk [(.mk (.bind (.generated .operand 33)) none (.block (.mk [(.mk (.bind (.generated .holder 32)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 31))]) (.mk [] (.move (.generated .part 31))))]))] (.matchOn (.move (.generated .holder 32)) [(.mk (.adt 3 0 [(.bind (.generated .part 30)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 30))))])))), (.mk (.bind (.generated .operand 34)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] true))), (.block (.mk [(.mk (.bind (.generated .holder 37)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 36))]) (.mk [] (.move (.generated .part 36))))]))] (.matchOn (.move (.generated .holder 37)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 35)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 35))))]))), (.block (.mk [(.mk (.bind (.generated .holder 40)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 39))]) (.mk [] (.move (.generated .part 39))))]))] (.matchOn (.move (.generated .holder 40)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 38)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 38))))]))), (.block (.mk [(.mk (.bind (.generated .holder 43)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 42))]) (.mk [] (.move (.generated .part 42))))]))] (.matchOn (.move (.generated .holder 43)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 41)), .wild, .wild]) (.mk [] (.move (.generated .part 41))))]))), (.block (.mk [(.mk (.bind (.generated .operand 47)) none (.block (.mk [(.mk (.bind (.generated .holder 46)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 45))]) (.mk [] (.move (.generated .part 45))))]))] (.matchOn (.move (.generated .holder 46)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 44)), .wild]) (.mk [] (.move (.generated .part 44))))])))), (.mk (.bind (.generated .operand 48)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 47)), (.move (.generated .operand 48))] true))), (.block (.mk [(.mk (.bind (.generated .holder 51)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 50))]) (.mk [] (.move (.generated .part 50))))]))] (.matchOn (.move (.generated .holder 51)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 49))]) (.mk [] (.move (.generated .part 49))))])))])])]))))])))]))), (.mk (.some .wild) (.mk [] (.succeed (.construct (.none (.adt 1)) []))))]))) :: - (.function (.generated .function 9) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 1) }, { pattern := (.bind (.generated .binding 1)), type := (.list (.adt 2)) }, { pattern := (.bind (.generated .binding 2)), type := (.list (.adt 2)) }] (.list (.adt 2)) (.mk [(.mk (.bind (.generated .holder 95)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 95)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 9) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 96)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 96) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]))) :: - (.function (.generated .function 10) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.adt 2)) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 2) }] (.list (.adt 2)) (.mk [(.mk (.bind (.generated .operand 98)) none (.block (.mk [(.mk (.bind (.generated .operand 97)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthList) [(.move (.generated .operand 97))] false)))), (.mk (.bind (.generated .operand 99)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 98)), (.move (.generated .operand 99))] false) (.mk [(.mk (.bind (.generated .operand 100)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 101)) none (.construct .cons [(.move (.generated .binding 1)), (.construct (.nil (.adt 2)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 100)), (.move (.generated .operand 101))] false)) (.mk [] (.move (.generated .binding 0)))))) :: - (.function (.generated .function 11) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.pair .nat .nat) (.mk [] (.pair (.copy (.generated .binding 0)) (.lit (.nat 0))))) :: - (.function (.generated .function 12) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := (.pair .nat .nat) }] (.fallible (.option .nat)) (.mk [(.mk (.bind (.generated .holder 102)) none (.call (.function 16) [(.copy (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 102)) [(.mk .none (.mk [] (.succeed (.construct (.none .nat) [])))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.cond (.call (.function 17) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] true) (.mk [] (.succeed (.construct .some [(.copy (.generated .binding 2))]))) (.mk [] (.succeed (.construct (.none .nat) []))))))]))) :: - (.function (.generated .function 13) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 2) }] (.list (.adt 2)) (.mk [] (.call (.function 18) [(.move (.generated .binding 0))] false))) :: - (.function (.generated .function 14) [{ pattern := (.bind (.generated .binding 0)), type := (.list (.adt 2)) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 2) }] (.list (.adt 2)) (.mk [(.mk (.bind (.generated .operand 104)) none (.block (.mk [(.mk (.bind (.generated .operand 103)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthList) [(.move (.generated .operand 103))] false)))), (.mk (.bind (.generated .operand 105)) none (.lit (.nat 3)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 104)), (.move (.generated .operand 105))] false) (.mk [(.mk (.bind (.generated .operand 106)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 107)) none (.construct .cons [(.move (.generated .binding 1)), (.construct (.nil (.adt 2)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 106)), (.move (.generated .operand 107))] false)) (.mk [] (.move (.generated .binding 0)))))) :: - (.function (.generated .function 15) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }] .nat (.mk [(.mk (.bind (.generated .operand 108)) none (.call (.function 19) [(.copy (.generated .binding 0))] false))] (.call (.runtime .lengthList) [(.move (.generated .operand 108))] false))) :: - (.function (.generated .function 16) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }] (.option .nat) (.mk [(.mk (.bind (.generated .operand 110)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 111)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 109))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 109)))))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 110)), (.move (.generated .operand 111))] false) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 112))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 112))))])) (.mk [] (.construct (.none .nat) []))))) :: - (.function (.generated .function 17) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .bool) (.mk [(.mk (.bind (.generated .operand 115)) none (.block (.mk [(.mk (.bind (.generated .operand 113)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 114)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 113)), (.move (.generated .operand 114))] true)))), (.mk (.bind (.generated .operand 116)) none (.copy (.generated .binding 0)))] (.succeed (.call (.runtime .natLe) [(.move (.generated .operand 115)), (.move (.generated .operand 116))] false)))) :: - (.function (.generated .function 18) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 2) }] (.list (.adt 2)) (.mk [] (.call (.function 20) [(.construct (.closure 2 21) [(.clone (.generated .binding 0))]), (.construct (.nil (.adt 2)) []), (.call (.function 19) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [(.bind (.generated .part 117)), .wild]) (.mk [] (.move (.generated .part 117))))])] false)] false))) :: - (.function (.generated .function 19) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }] (.list .nat) (.mk [(.mk (.bind (.generated .holder 119)) none (.block (.mk [(.mk (.bind (.generated .binding 1)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 118)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 118))))), (.mk (.bind (.generated .binding 2)) (some (.list .nat)) (.call (.function 22) [(.copy (.generated .binding 1))] false))] (.cond (.call (.function 23) [(.copy (.generated .binding 1)), (.clone (.generated .binding 2))] false) (.mk [] (.construct (.ok (.list .nat) (.pair .bool .bool)) [(.move (.generated .binding 2))])) (.mk [] (.construct (.err (.list .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))]))))))] (.matchOn (.move (.generated .holder 119)) [(.mk (.ok (.bind (.generated .binding 3))) (.mk [] (.move (.generated .binding 3)))), (.mk (.err .wild) (.mk [] (.construct (.nil .nat) [])))]))) :: - (.function (.generated .function 20) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 2) }, { pattern := (.bind (.generated .binding 1)), type := (.list (.adt 2)) }, { pattern := (.bind (.generated .binding 2)), type := (.list .nat) }] (.list (.adt 2)) (.mk [(.mk (.bind (.generated .holder 120)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 120)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 20) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 121)) (some (.fn 2)) (.move (.generated .binding 0)))] (.apply (.generated .callee 121) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]))) :: - (.function (.generated .function 21) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 2) }, { pattern := (.bind (.generated .binding 1)), type := (.list (.adt 2)) }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.list (.adt 2)) (.mk [] (.call (.function 24) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 2))] false))) :: - (.function (.generated .function 22) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.list .nat) (.mk [] (.call (.function 25) [(.copy (.generated .binding 0))] false))) :: - (.function (.generated .function 23) [{ pattern := .wild, type := .nat }, { pattern := (.bind (.generated .binding 1)), type := (.list .nat) }] .bool (.mk [(.mk (.bind (.generated .operand 123)) none (.block (.mk [(.mk (.bind (.generated .operand 122)) none (.move (.generated .binding 1)))] (.call (.runtime .lengthList) [(.move (.generated .operand 122))] false)))), (.mk (.bind (.generated .operand 124)) none (.lit (.nat 4)))] (.call (.runtime .natLe) [(.move (.generated .operand 123)), (.move (.generated .operand 124))] false))) :: - (.function (.generated .function 24) [{ pattern := (.bind (.generated .binding 0)), type := (.adt 2) }, { pattern := (.bind (.generated .binding 1)), type := (.list (.adt 2)) }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.list (.adt 2)) (.mk [(.mk (.bind (.generated .holder 126)) none (.call (.function 26) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [(.bind (.generated .part 125)), .wild]) (.mk [] (.move (.generated .part 125))))]), (.construct (.adt 0 0) [(.copy (.generated .binding 2))])] false))] (.matchOn (.move (.generated .holder 126)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.bind (.generated .binding 3))) (.mk [(.mk (.bind (.generated .operand 130)) none (.move (.generated .binding 1))), (.mk (.bind (.generated .operand 131)) none (.construct .cons [(.construct (.adt 2 0) [(.copy (.generated .binding 3)), (.block (.mk [(.mk (.bind (.generated .operand 128)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 127))]) (.mk [] (.move (.generated .part 127))))])), (.mk (.bind (.generated .operand 129)) none (.construct .cons [(.construct (.adt 0 0) [(.copy (.generated .binding 2))]), (.construct (.nil (.adt 0)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 128)), (.move (.generated .operand 129))] false)))]), (.construct (.nil (.adt 2)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 130)), (.move (.generated .operand 131))] false)))]))) :: - (.function (.generated .function 25) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.list .nat) (.mk [] (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 132)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 133)) none (.lit (.nat 10)))] (.call (.runtime .natSub) [(.move (.generated .operand 132)), (.move (.generated .operand 133))] false))), (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 134)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 135)) none (.lit (.nat 20)))] (.call (.runtime .natSub) [(.move (.generated .operand 134)), (.move (.generated .operand 135))] false))), (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 136)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 137)) none (.lit (.nat 30)))] (.call (.runtime .natSub) [(.move (.generated .operand 136)), (.move (.generated .operand 137))] false))), (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 138)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 139)) none (.lit (.nat 50)))] (.call (.runtime .natSub) [(.move (.generated .operand 138)), (.move (.generated .operand 139))] false))), (.construct (.nil .nat) [])])])])]))) :: - (.function (.generated .function 26) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 0) }] (.option (.pair .nat .nat)) (.mk [(.mk (.bind (.generated .holder 140)) none (.move (.generated .binding 1)))] (.matchOn (.move (.generated .holder 140)) [(.mk (.adt 0 0 [(.bind (.generated .binding 2))]) (.mk [] (.call (.function 27) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] false)))]))) :: - (.function (.generated .function 27) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.option (.pair .nat .nat)) (.mk [] (.cond (.call (.function 28) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false) (.mk [] (.construct .some [(.call (.function 29) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false)])) (.mk [] (.construct (.none (.pair .nat .nat)) []))))) :: - (.function (.generated .function 28) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .operand 142)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 141))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 141))))), (.mk (.bind (.generated .operand 143)) none (.lit (.nat 0)))] (.cond (.call (.runtime .natEq) [(.move (.generated .operand 142)), (.move (.generated .operand 143))] false) (.mk [(.mk (.bind (.generated .operand 144)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 145)) none (.copy (.generated .binding 1)))] (.call (.runtime .natLt) [(.move (.generated .operand 144)), (.move (.generated .operand 145))] false)) (.mk [] (.lit (.bool false)))))) :: - (.function (.generated .function 29) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.pair .nat .nat) (.mk [] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 146)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 146)))) (.copy (.generated .binding 1))))) :: - []) } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [(([(.adt 1)], (.option (.adt 1))), true), (([(.list (.adt 2)), (.adt 2)], (.list (.adt 2))), false), (([(.list (.adt 2)), .nat], (.list (.adt 2))), false)] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.call (.function 1) [(.copy (.generated .binding 0))] true))], (.matchOn (.move (.generated .holder 1)) [(.mk (.ok (.bind (.generated .binding 1))) (.mk [] (.succeed (.copy (.generated .binding 1))))), (.mk (.err .wild) (.mk [] (.succeed (.lit (.nat 9)))))]), [(0, .nat, (some 0))], rfl, rfl, - (Corr.matchArms (st := (.result .nat (.pair .bool .bool))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, .nat, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.copy (.generated .binding 1)))) (Corr.mCons (Γ' := [(2, (.pair .bool .bool), none), (0, .nat, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.lit (.nat 9)))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl)))) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 2)) none (.call (.function 2) [(.copy (.generated .binding 0))] true))], (.matchOn (.move (.generated .holder 2)) [(.mk (.ok (.bind (.generated .binding 1))) (.mk [] (.succeed (.construct (.ok .nat (.pair .bool .bool)) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 3))))])))), (.mk (.err (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))]))))]), [(0, .nat, (some 0))], rfl, rfl, - (Corr.matchArms (st := (.result (.pair .nat (.list (.adt 0))) (.pair .bool .bool))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.pair .nat (.list (.adt 0))), (some 1)), (0, .nat, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct (.ok .nat (.pair .bool .bool)) [(.block (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 3))))]))) (Corr.mCons (Γ' := [(2, (.pair .bool .bool), (some 2)), (0, .nat, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 3))) (Corr.first (ta := .nat) (tb := (.list (.adt 0))) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl))) rfl rfl rfl)⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some (.pair (.adt 1) .bool)) (.call (.function 3) [(.copy (.generated .binding 0))] true)), (.mk (.bind (.generated .holder 7)) none (.block (.mk [(.mk (.bind (.generated .holder 6)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 5)), .wild]) none (.clone (.generated .binding 1)))] (.move (.generated .part 5)))))] (.matchOn (.move (.generated .holder 6)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 4)), .wild, .wild]) (.mk [] (.move (.generated .part 4))))]))))], (.matchOn (.move (.generated .holder 7)) [(.mk .none (.mk [] (.succeed (.construct (.err (.pair .nat (.list (.adt 0))) (.pair .bool .bool)) [(.call (.function 4) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 12))]) none (.move (.generated .binding 1)))] (.move (.generated .part 12)))), (.block (.mk [(.mk (.bind (.generated .holder 15)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 14)))))] (.matchOn (.move (.generated .holder 15)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 13)), .wild]) (.mk [] (.move (.generated .part 13))))])))] false)])))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.succeed (.construct (.ok (.pair .nat (.list (.adt 0))) (.pair .bool .bool)) [(.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 8)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 8)))) (.block (.mk [(.mk (.bind (.generated .holder 11)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 10))]) none (.move (.generated .binding 2)))] (.move (.generated .part 10)))))] (.matchOn (.move (.generated .holder 11)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 9))]) (.mk [] (.move (.generated .part 9))))]))))]))))]), [(0, .nat, (some 0))], rfl, rfl, - (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.matchArms (st := (.option (.pair .nat (.adt 2)))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 6)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 5)), .wild]) none (.clone (.generated .binding 1)))] (.move (.generated .part 5)))))]) (tail := (.matchOn (.move (.generated .holder 6)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 4)), .wild, .wild]) (.mk [] (.move (.generated .part 4))))])) (Corr.fieldHeld (ts := [(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 4))) (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 5)), .wild]) none (.clone (.generated .binding 1)))]) (tail := (.move (.generated .part 5))) (Corr.first (ta := (.adt 1)) (tb := .bool) (Corr.var rfl rfl) rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.pair (.adt 1) .bool), (some 1)), (0, .nat, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.construct (.err (.pair .nat (.list (.adt 0))) (.pair .bool .bool)) [(.call (.function 4) [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 12))]) none (.move (.generated .binding 1)))] (.move (.generated .part 12)))), (.block (.mk [(.mk (.bind (.generated .holder 15)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 14)))))] (.matchOn (.move (.generated .holder 15)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 13)), .wild]) (.mk [] (.move (.generated .part 13))))])))] false)]))) (Corr.mCons (Γ' := [(2, (.pair .nat (.adt 2)), (some 2)), (1, (.pair (.adt 1) .bool), (some 1)), (0, .nat, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct (.ok (.pair .nat (.list (.adt 0))) (.pair .bool .bool)) [(.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 8)), .wild]) none (.move (.generated .binding 2)))] (.move (.generated .part 8)))) (.block (.mk [(.mk (.bind (.generated .holder 11)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 10))]) none (.move (.generated .binding 2)))] (.move (.generated .part 10)))))] (.matchOn (.move (.generated .holder 11)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 9))]) (.mk [] (.move (.generated .part 9))))]))))]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.pair .nat (.list (.adt 0)))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 8)), .wild]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 8))) (Corr.first (ta := .nat) (tb := (.adt 2)) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 11)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 10))]) none (.move (.generated .binding 2)))] (.move (.generated .part 10)))))]) (tail := (.matchOn (.move (.generated .holder 11)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 9))]) (.mk [] (.move (.generated .part 9))))])) (Corr.fieldHeld (ts := [(.pair .nat .nat), (.list (.adt 0))]) (rd := (.move (.generated .part 9))) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 10))]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 10))) (Corr.second (ta := .nat) (tb := (.adt 2)) (Corr.var rfl rfl) rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bool, .bool]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 12))]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 12))) (Corr.second (ta := (.adt 1)) (tb := .bool) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 15)) none (.block (.mk [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.move (.generated .binding 1)))] (.move (.generated .part 14)))))]) (tail := (.matchOn (.move (.generated .holder 15)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 13)), .wild]) (.mk [] (.move (.generated .part 13))))])) (Corr.fieldHeld (ts := [(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 13))) (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 14))) (Corr.first (ta := (.adt 1)) (tb := .bool) (Corr.var rfl rfl) rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl))) rfl rfl rfl))⟩⟩ - -theorem fun3 : FunOK program krate flags 3 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 5) [(.construct (.closure 0 6) [(.copy (.generated .binding 0))]), (.lit (.nat 8)), (.call (.function 7) [(.copy (.generated .binding 0))] false)] false), [(0, .nat, (some 0))], rfl, rfl, - (Corr.callF (ts := [(.fn [(.adt 1)] (.option (.adt 1))), .nat, (.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [.nat]) (mask := [false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl)⟩⟩ - -theorem fun4 : FunOK program krate flags 4 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.cond (.copy (.generated .binding 0)) (.mk [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 1)))] (.call (.runtime .boolNot) [(.move (.generated .operand 16))] false)) (.mk [] (.lit (.bool false)))) (.mk [] (.pair (.lit (.bool false)) (.lit (.bool true)))) (.mk [] (.pair (.lit (.bool false)) (.lit (.bool false))))), [(1, .bool, (some 1)), (0, .bool, (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.cond (.copy (.generated .binding 0)) (.mk [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 1)))] (.call (.runtime .boolNot) [(.move (.generated .operand 16))] false)) (.mk [] (.lit (.bool false))))) (lk := []) (Corr.cond (lc := []) (ce := (.copy (.generated .binding 0))) (lk := []) (Corr.bOfE (Corr.var rfl rfl)) (Corr.kIf (la := [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 1)))]) (ta := (.call (.runtime .boolNot) [(.move (.generated .operand 16))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.bool]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl)))) (Corr.kIf (la := []) (ta := (.pair (.lit (.bool false)) (.lit (.bool true)))) (lb := []) (tb := (.pair (.lit (.bool false)) (.lit (.bool false)))) (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))))) (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))))))⟩⟩ - -theorem fun5 : FunOK program krate flags 5 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 17)) none (.copy (.generated .binding 1)))], (.cond (.isZero (.generated .holder 17)) (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 17))), (.mk (.bind (.generated .holder 19)) none (.block (.mk [(.mk (.bind (.generated .callee 18)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 18) [(.clone (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 19)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 5) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))]))), [(2, (.adt 1), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.adt 1)] (.option (.adt 1))), (some 0))], rfl, rfl, - (Corr.matchNat (sl := (some 3)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (lb := [(.mk (.bind (.generated .holder 19)) none (.block (.mk [(.mk (.bind (.generated .callee 18)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 18) [(.clone (.generated .binding 2))] true))))]) (tb := (.matchOn (.move (.generated .holder 19)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 5) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))])) (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))))) (Corr.matchArms (st := (.option (.adt 1))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 18)) (some (.fn 0)) (.clone (.generated .binding 0)))]) (tail := (.apply (.generated .callee 18) [(.clone (.generated .binding 2))] true)) (Corr.apply (ps := [(.adt 1)]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (2, (.adt 1), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.adt 1)] (.option (.adt 1))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true))))) (Corr.mCons (Γ' := [(4, (.adt 1), (some 4)), (3, .nat, (some 3)), (2, (.adt 1), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.adt 1)] (.option (.adt 1))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 5) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.adt 1)] (.option (.adt 1))), .nat, (.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))))))) rfl rfl rfl)))⟩⟩ - -theorem fun6 : FunOK program krate flags 6 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 8) [(.copy (.generated .binding 0)), (.move (.generated .binding 1))] false), [(1, (.adt 1), (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.callF (ts := [.nat, (.adt 1)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)⟩⟩ - -theorem fun7 : FunOK program krate flags 7 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some (.list (.adt 2))) (.call (.function 9) [(.construct (.closure 1 10) []), (.construct (.nil (.adt 2)) []), (.construct .cons [(.construct (.adt 2 0) [(.call (.function 11) [(.copy (.generated .binding 0))] false), (.construct (.nil (.adt 0)) [])]), (.construct (.nil (.adt 2)) [])])] false))], (.construct (.adt 1 0) [(.clone (.generated .binding 1)), (.construct (.none (.pair .nat (.adt 2))) []), (.block (.mk [(.mk (.bind (.generated .operand 20)) none (.lit (.nat 3))), (.mk (.bind (.generated .operand 21)) none (.lit (.nat 1)))] (.call (.runtime .natLt) [(.move (.generated .operand 20)), (.move (.generated .operand 21))] false))), (.construct (.adt 3 0) [(.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.lit (.nat 0)), (.block (.mk [(.mk (.bind (.generated .operand 22)) none (.move (.generated .binding 1)))] (.call (.runtime .lengthList) [(.move (.generated .operand 22))] false)))])]), [(0, .nat, (some 0))], rfl, rfl, - (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.list (.adt 2)), (.adt 2)] (.list (.adt 2))), (.list (.adt 2)), (.list (.adt 2))]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := false) (ff := false) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.adt 2), (.list (.adt 2))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.pair .nat .nat), (.list (.adt 0))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl (Corr.build (ts := [(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]) (mask := [false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 20)) none (.lit (.nat 3))), (.mk (.bind (.generated .operand 21)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natLt) [(.move (.generated .operand 20)), (.move (.generated .operand 21))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 22)) none (.move (.generated .binding 1)))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 22))] false)) (Corr.prim (ts := [(.list (.adt 2))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))))))) rfl)) (Corr.lNil)))))) rfl))⟩⟩ - -theorem fun8 : FunOK program krate flags 8 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 24)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, (.bind (.generated .part 23)), .wild, .wild]) (.mk [] (.move (.generated .part 23))))]))], (.matchOn (.move (.generated .holder 24)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 26)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [(.bind (.generated .part 25)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 25))))]))] (.matchOn (.uncons (.generated .holder 26)) [(.mk .none (.mk [] (.succeed (.construct (.none (.adt 1)) [])))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [(.mk (.bind (.generated .holder 28)) none (.call (.function 12) [(.copy (.generated .binding 0)), (.matchOn (.clone (.generated .binding 3)) [(.mk (.adt 2 0 [(.bind (.generated .part 27)), .wild]) (.mk [] (.move (.generated .part 27))))])] true))] (.matchOn (.move (.generated .holder 28)) [(.mk .none (.mk [(.mk (.bind (.generated .binding 6)) (some (.list (.adt 2))) (.call (.function 13) [(.clone (.generated .binding 3))] false)), (.mk (.bind (.generated .binding 7)) (some (.list (.adt 2))) (.clone (.generated .binding 6))), (.mk (.bind (.generated .binding 8)) (some (.list (.adt 2))) (.block (.mk [(.mk (.bind (.generated .operand 52)) none (.move (.generated .binding 7))), (.mk (.bind (.generated .operand 53)) none (.move (.generated .binding 4)))] (.call (.runtime .appendList) [(.move (.generated .operand 52)), (.move (.generated .operand 53))] false)))), (.mk (.bind (.generated .binding 9)) (some (.list (.adt 2))) (.call (.function 9) [(.construct (.closure 1 14) []), (.construct (.nil (.adt 2)) []), (.clone (.generated .binding 8))] false))] (.succeed (.construct .some [(.construct (.adt 1 0) [(.clone (.generated .binding 9)), (.construct (.none (.pair .nat (.adt 2))) []), (.cond (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 54)), .wild]) (.mk [] (.move (.generated .part 54))))]) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 56)) none (.lit (.nat 3))), (.mk (.bind (.generated .operand 57)) none (.block (.mk [(.mk (.bind (.generated .operand 55)) none (.move (.generated .binding 8)))] (.call (.runtime .lengthList) [(.move (.generated .operand 55))] false))))] (.call (.runtime .natLt) [(.move (.generated .operand 56)), (.move (.generated .operand 57))] false))), (.construct (.adt 3 0) [(.block (.mk [(.mk (.bind (.generated .operand 61)) none (.block (.mk [(.mk (.bind (.generated .holder 60)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 59))]) (.mk [] (.move (.generated .part 59))))]))] (.matchOn (.move (.generated .holder 60)) [(.mk (.adt 3 0 [(.bind (.generated .part 58)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 58))))])))), (.mk (.bind (.generated .operand 62)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 61)), (.move (.generated .operand 62))] true))), (.block (.mk [(.mk (.bind (.generated .operand 67)) none (.block (.mk [(.mk (.bind (.generated .holder 65)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 64))]) (.mk [] (.move (.generated .part 64))))]))] (.matchOn (.move (.generated .holder 65)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 63)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 63))))])))), (.mk (.bind (.generated .operand 68)) none (.call (.function 15) [(.matchOn (.move (.generated .binding 3)) [(.mk (.adt 2 0 [(.bind (.generated .part 66)), .wild]) (.mk [] (.move (.generated .part 66))))])] false))] (.call (.runtime .natAdd) [(.move (.generated .operand 67)), (.move (.generated .operand 68))] true))), (.block (.mk [(.mk (.bind (.generated .operand 73)) none (.block (.mk [(.mk (.bind (.generated .holder 71)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 70))]) (.mk [] (.move (.generated .part 70))))]))] (.matchOn (.move (.generated .holder 71)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 69)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 69))))])))), (.mk (.bind (.generated .operand 74)) none (.block (.mk [(.mk (.bind (.generated .operand 72)) none (.move (.generated .binding 6)))] (.call (.runtime .lengthList) [(.move (.generated .operand 72))] false))))] (.call (.runtime .natAdd) [(.move (.generated .operand 73)), (.move (.generated .operand 74))] true))), (.block (.mk [(.mk (.bind (.generated .operand 78)) none (.block (.mk [(.mk (.bind (.generated .holder 77)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 76))]) (.mk [] (.move (.generated .part 76))))]))] (.matchOn (.move (.generated .holder 77)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 75)), .wild, .wild]) (.mk [] (.move (.generated .part 75))))])))), (.mk (.bind (.generated .operand 79)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 78)), (.move (.generated .operand 79))] true))), (.block (.mk [(.mk (.bind (.generated .operand 83)) none (.block (.mk [(.mk (.bind (.generated .holder 82)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))]))] (.matchOn (.move (.generated .holder 82)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 80)), .wild]) (.mk [] (.move (.generated .part 80))))])))), (.mk (.bind (.generated .operand 84)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 83)), (.move (.generated .operand 84))] true))), (.block (.mk [(.mk (.bind (.generated .operand 89)) none (.block (.mk [(.mk (.bind (.generated .holder 87)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 86))]) (.mk [] (.move (.generated .part 86))))]))] (.matchOn (.move (.generated .holder 87)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 85))]) (.mk [] (.move (.generated .part 85))))])))), (.mk (.bind (.generated .operand 90)) none (.block (.mk [(.mk (.bind (.generated .operand 88)) none (.clone (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 88))] false))))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 89)), (.move (.generated .operand 90))] false) (.mk [(.mk (.bind (.generated .operand 91)) none (.move (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 91))] false)) (.mk [(.mk (.bind (.generated .holder 94)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 93))]) (.mk [] (.move (.generated .part 93))))]))] (.matchOn (.move (.generated .holder 94)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 92))]) (.mk [] (.move (.generated .part 92))))])))))])])])))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.succeed (.construct .some [(.construct (.adt 1 0) [(.move (.generated .binding 4)), (.construct .some [(.pair (.copy (.generated .binding 5)) (.move (.generated .binding 3)))]), (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 29)), .wild]) (.mk [] (.move (.generated .part 29))))]), (.construct (.adt 3 0) [(.block (.mk [(.mk (.bind (.generated .operand 33)) none (.block (.mk [(.mk (.bind (.generated .holder 32)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 31))]) (.mk [] (.move (.generated .part 31))))]))] (.matchOn (.move (.generated .holder 32)) [(.mk (.adt 3 0 [(.bind (.generated .part 30)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 30))))])))), (.mk (.bind (.generated .operand 34)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] true))), (.block (.mk [(.mk (.bind (.generated .holder 37)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 36))]) (.mk [] (.move (.generated .part 36))))]))] (.matchOn (.move (.generated .holder 37)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 35)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 35))))]))), (.block (.mk [(.mk (.bind (.generated .holder 40)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 39))]) (.mk [] (.move (.generated .part 39))))]))] (.matchOn (.move (.generated .holder 40)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 38)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 38))))]))), (.block (.mk [(.mk (.bind (.generated .holder 43)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 42))]) (.mk [] (.move (.generated .part 42))))]))] (.matchOn (.move (.generated .holder 43)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 41)), .wild, .wild]) (.mk [] (.move (.generated .part 41))))]))), (.block (.mk [(.mk (.bind (.generated .operand 47)) none (.block (.mk [(.mk (.bind (.generated .holder 46)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 45))]) (.mk [] (.move (.generated .part 45))))]))] (.matchOn (.move (.generated .holder 46)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 44)), .wild]) (.mk [] (.move (.generated .part 44))))])))), (.mk (.bind (.generated .operand 48)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 47)), (.move (.generated .operand 48))] true))), (.block (.mk [(.mk (.bind (.generated .holder 51)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 50))]) (.mk [] (.move (.generated .part 50))))]))] (.matchOn (.move (.generated .holder 51)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 49))]) (.mk [] (.move (.generated .part 49))))])))])])]))))])))]))), (.mk (.some .wild) (.mk [] (.succeed (.construct (.none (.adt 1)) []))))]), [(1, (.adt 1), (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option (.pair .nat (.adt 2)))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 23))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.adt 1), (some 1)), (0, .nat, (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 26)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [(.bind (.generated .part 25)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 25))))]))]) (tail := (.matchOn (.uncons (.generated .holder 26)) [(.mk .none (.mk [] (.succeed (.construct (.none (.adt 1)) [])))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [(.mk (.bind (.generated .holder 28)) none (.call (.function 12) [(.copy (.generated .binding 0)), (.matchOn (.clone (.generated .binding 3)) [(.mk (.adt 2 0 [(.bind (.generated .part 27)), .wild]) (.mk [] (.move (.generated .part 27))))])] true))] (.matchOn (.move (.generated .holder 28)) [(.mk .none (.mk [(.mk (.bind (.generated .binding 6)) (some (.list (.adt 2))) (.call (.function 13) [(.clone (.generated .binding 3))] false)), (.mk (.bind (.generated .binding 7)) (some (.list (.adt 2))) (.clone (.generated .binding 6))), (.mk (.bind (.generated .binding 8)) (some (.list (.adt 2))) (.block (.mk [(.mk (.bind (.generated .operand 52)) none (.move (.generated .binding 7))), (.mk (.bind (.generated .operand 53)) none (.move (.generated .binding 4)))] (.call (.runtime .appendList) [(.move (.generated .operand 52)), (.move (.generated .operand 53))] false)))), (.mk (.bind (.generated .binding 9)) (some (.list (.adt 2))) (.call (.function 9) [(.construct (.closure 1 14) []), (.construct (.nil (.adt 2)) []), (.clone (.generated .binding 8))] false))] (.succeed (.construct .some [(.construct (.adt 1 0) [(.clone (.generated .binding 9)), (.construct (.none (.pair .nat (.adt 2))) []), (.cond (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 54)), .wild]) (.mk [] (.move (.generated .part 54))))]) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 56)) none (.lit (.nat 3))), (.mk (.bind (.generated .operand 57)) none (.block (.mk [(.mk (.bind (.generated .operand 55)) none (.move (.generated .binding 8)))] (.call (.runtime .lengthList) [(.move (.generated .operand 55))] false))))] (.call (.runtime .natLt) [(.move (.generated .operand 56)), (.move (.generated .operand 57))] false))), (.construct (.adt 3 0) [(.block (.mk [(.mk (.bind (.generated .operand 61)) none (.block (.mk [(.mk (.bind (.generated .holder 60)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 59))]) (.mk [] (.move (.generated .part 59))))]))] (.matchOn (.move (.generated .holder 60)) [(.mk (.adt 3 0 [(.bind (.generated .part 58)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 58))))])))), (.mk (.bind (.generated .operand 62)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 61)), (.move (.generated .operand 62))] true))), (.block (.mk [(.mk (.bind (.generated .operand 67)) none (.block (.mk [(.mk (.bind (.generated .holder 65)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 64))]) (.mk [] (.move (.generated .part 64))))]))] (.matchOn (.move (.generated .holder 65)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 63)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 63))))])))), (.mk (.bind (.generated .operand 68)) none (.call (.function 15) [(.matchOn (.move (.generated .binding 3)) [(.mk (.adt 2 0 [(.bind (.generated .part 66)), .wild]) (.mk [] (.move (.generated .part 66))))])] false))] (.call (.runtime .natAdd) [(.move (.generated .operand 67)), (.move (.generated .operand 68))] true))), (.block (.mk [(.mk (.bind (.generated .operand 73)) none (.block (.mk [(.mk (.bind (.generated .holder 71)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 70))]) (.mk [] (.move (.generated .part 70))))]))] (.matchOn (.move (.generated .holder 71)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 69)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 69))))])))), (.mk (.bind (.generated .operand 74)) none (.block (.mk [(.mk (.bind (.generated .operand 72)) none (.move (.generated .binding 6)))] (.call (.runtime .lengthList) [(.move (.generated .operand 72))] false))))] (.call (.runtime .natAdd) [(.move (.generated .operand 73)), (.move (.generated .operand 74))] true))), (.block (.mk [(.mk (.bind (.generated .operand 78)) none (.block (.mk [(.mk (.bind (.generated .holder 77)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 76))]) (.mk [] (.move (.generated .part 76))))]))] (.matchOn (.move (.generated .holder 77)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 75)), .wild, .wild]) (.mk [] (.move (.generated .part 75))))])))), (.mk (.bind (.generated .operand 79)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 78)), (.move (.generated .operand 79))] true))), (.block (.mk [(.mk (.bind (.generated .operand 83)) none (.block (.mk [(.mk (.bind (.generated .holder 82)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))]))] (.matchOn (.move (.generated .holder 82)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 80)), .wild]) (.mk [] (.move (.generated .part 80))))])))), (.mk (.bind (.generated .operand 84)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 83)), (.move (.generated .operand 84))] true))), (.block (.mk [(.mk (.bind (.generated .operand 89)) none (.block (.mk [(.mk (.bind (.generated .holder 87)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 86))]) (.mk [] (.move (.generated .part 86))))]))] (.matchOn (.move (.generated .holder 87)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 85))]) (.mk [] (.move (.generated .part 85))))])))), (.mk (.bind (.generated .operand 90)) none (.block (.mk [(.mk (.bind (.generated .operand 88)) none (.clone (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 88))] false))))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 89)), (.move (.generated .operand 90))] false) (.mk [(.mk (.bind (.generated .operand 91)) none (.move (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 91))] false)) (.mk [(.mk (.bind (.generated .holder 94)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 93))]) (.mk [] (.move (.generated .part 93))))]))] (.matchOn (.move (.generated .holder 94)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 92))]) (.mk [] (.move (.generated .part 92))))])))))])])])))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.succeed (.construct .some [(.construct (.adt 1 0) [(.move (.generated .binding 4)), (.construct .some [(.pair (.copy (.generated .binding 5)) (.move (.generated .binding 3)))]), (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 29)), .wild]) (.mk [] (.move (.generated .part 29))))]), (.construct (.adt 3 0) [(.block (.mk [(.mk (.bind (.generated .operand 33)) none (.block (.mk [(.mk (.bind (.generated .holder 32)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 31))]) (.mk [] (.move (.generated .part 31))))]))] (.matchOn (.move (.generated .holder 32)) [(.mk (.adt 3 0 [(.bind (.generated .part 30)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 30))))])))), (.mk (.bind (.generated .operand 34)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] true))), (.block (.mk [(.mk (.bind (.generated .holder 37)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 36))]) (.mk [] (.move (.generated .part 36))))]))] (.matchOn (.move (.generated .holder 37)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 35)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 35))))]))), (.block (.mk [(.mk (.bind (.generated .holder 40)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 39))]) (.mk [] (.move (.generated .part 39))))]))] (.matchOn (.move (.generated .holder 40)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 38)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 38))))]))), (.block (.mk [(.mk (.bind (.generated .holder 43)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 42))]) (.mk [] (.move (.generated .part 42))))]))] (.matchOn (.move (.generated .holder 43)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 41)), .wild, .wild]) (.mk [] (.move (.generated .part 41))))]))), (.block (.mk [(.mk (.bind (.generated .operand 47)) none (.block (.mk [(.mk (.bind (.generated .holder 46)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 45))]) (.mk [] (.move (.generated .part 45))))]))] (.matchOn (.move (.generated .holder 46)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 44)), .wild]) (.mk [] (.move (.generated .part 44))))])))), (.mk (.bind (.generated .operand 48)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 47)), (.move (.generated .operand 48))] true))), (.block (.mk [(.mk (.bind (.generated .holder 51)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 50))]) (.mk [] (.move (.generated .part 50))))]))] (.matchOn (.move (.generated .holder 51)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 49))]) (.mk [] (.move (.generated .part 49))))])))])])]))))])))])) (Corr.mCons (Γ' := [(2, (.pair .nat (.adt 2)), none), (1, (.adt 1), (some 1)), (0, .nat, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct (.none (.adt 1)) []))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl (Corr.matchArms (st := (.list (.adt 2))) (U := []) (view := true) (idx := [0, 1]) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 25))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.adt 1), (some 1)), (0, .nat, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct (.none (.adt 1)) []))) (Corr.mCons (Γ' := [(4, (.list (.adt 2)), (some 4)), (3, (.adt 2), (some 3)), (1, (.adt 1), (some 1)), (0, .nat, (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 28)) none (.call (.function 12) [(.copy (.generated .binding 0)), (.matchOn (.clone (.generated .binding 3)) [(.mk (.adt 2 0 [(.bind (.generated .part 27)), .wild]) (.mk [] (.move (.generated .part 27))))])] true))]) (tail := (.matchOn (.move (.generated .holder 28)) [(.mk .none (.mk [(.mk (.bind (.generated .binding 6)) (some (.list (.adt 2))) (.call (.function 13) [(.clone (.generated .binding 3))] false)), (.mk (.bind (.generated .binding 7)) (some (.list (.adt 2))) (.clone (.generated .binding 6))), (.mk (.bind (.generated .binding 8)) (some (.list (.adt 2))) (.block (.mk [(.mk (.bind (.generated .operand 52)) none (.move (.generated .binding 7))), (.mk (.bind (.generated .operand 53)) none (.move (.generated .binding 4)))] (.call (.runtime .appendList) [(.move (.generated .operand 52)), (.move (.generated .operand 53))] false)))), (.mk (.bind (.generated .binding 9)) (some (.list (.adt 2))) (.call (.function 9) [(.construct (.closure 1 14) []), (.construct (.nil (.adt 2)) []), (.clone (.generated .binding 8))] false))] (.succeed (.construct .some [(.construct (.adt 1 0) [(.clone (.generated .binding 9)), (.construct (.none (.pair .nat (.adt 2))) []), (.cond (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 54)), .wild]) (.mk [] (.move (.generated .part 54))))]) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 56)) none (.lit (.nat 3))), (.mk (.bind (.generated .operand 57)) none (.block (.mk [(.mk (.bind (.generated .operand 55)) none (.move (.generated .binding 8)))] (.call (.runtime .lengthList) [(.move (.generated .operand 55))] false))))] (.call (.runtime .natLt) [(.move (.generated .operand 56)), (.move (.generated .operand 57))] false))), (.construct (.adt 3 0) [(.block (.mk [(.mk (.bind (.generated .operand 61)) none (.block (.mk [(.mk (.bind (.generated .holder 60)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 59))]) (.mk [] (.move (.generated .part 59))))]))] (.matchOn (.move (.generated .holder 60)) [(.mk (.adt 3 0 [(.bind (.generated .part 58)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 58))))])))), (.mk (.bind (.generated .operand 62)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 61)), (.move (.generated .operand 62))] true))), (.block (.mk [(.mk (.bind (.generated .operand 67)) none (.block (.mk [(.mk (.bind (.generated .holder 65)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 64))]) (.mk [] (.move (.generated .part 64))))]))] (.matchOn (.move (.generated .holder 65)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 63)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 63))))])))), (.mk (.bind (.generated .operand 68)) none (.call (.function 15) [(.matchOn (.move (.generated .binding 3)) [(.mk (.adt 2 0 [(.bind (.generated .part 66)), .wild]) (.mk [] (.move (.generated .part 66))))])] false))] (.call (.runtime .natAdd) [(.move (.generated .operand 67)), (.move (.generated .operand 68))] true))), (.block (.mk [(.mk (.bind (.generated .operand 73)) none (.block (.mk [(.mk (.bind (.generated .holder 71)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 70))]) (.mk [] (.move (.generated .part 70))))]))] (.matchOn (.move (.generated .holder 71)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 69)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 69))))])))), (.mk (.bind (.generated .operand 74)) none (.block (.mk [(.mk (.bind (.generated .operand 72)) none (.move (.generated .binding 6)))] (.call (.runtime .lengthList) [(.move (.generated .operand 72))] false))))] (.call (.runtime .natAdd) [(.move (.generated .operand 73)), (.move (.generated .operand 74))] true))), (.block (.mk [(.mk (.bind (.generated .operand 78)) none (.block (.mk [(.mk (.bind (.generated .holder 77)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 76))]) (.mk [] (.move (.generated .part 76))))]))] (.matchOn (.move (.generated .holder 77)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 75)), .wild, .wild]) (.mk [] (.move (.generated .part 75))))])))), (.mk (.bind (.generated .operand 79)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 78)), (.move (.generated .operand 79))] true))), (.block (.mk [(.mk (.bind (.generated .operand 83)) none (.block (.mk [(.mk (.bind (.generated .holder 82)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))]))] (.matchOn (.move (.generated .holder 82)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 80)), .wild]) (.mk [] (.move (.generated .part 80))))])))), (.mk (.bind (.generated .operand 84)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 83)), (.move (.generated .operand 84))] true))), (.block (.mk [(.mk (.bind (.generated .operand 89)) none (.block (.mk [(.mk (.bind (.generated .holder 87)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 86))]) (.mk [] (.move (.generated .part 86))))]))] (.matchOn (.move (.generated .holder 87)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 85))]) (.mk [] (.move (.generated .part 85))))])))), (.mk (.bind (.generated .operand 90)) none (.block (.mk [(.mk (.bind (.generated .operand 88)) none (.clone (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 88))] false))))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 89)), (.move (.generated .operand 90))] false) (.mk [(.mk (.bind (.generated .operand 91)) none (.move (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 91))] false)) (.mk [(.mk (.bind (.generated .holder 94)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 93))]) (.mk [] (.move (.generated .part 93))))]))] (.matchOn (.move (.generated .holder 94)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 92))]) (.mk [] (.move (.generated .part 92))))])))))])])])))), (.mk (.some (.bind (.generated .binding 5))) (.mk [] (.succeed (.construct .some [(.construct (.adt 1 0) [(.move (.generated .binding 4)), (.construct .some [(.pair (.copy (.generated .binding 5)) (.move (.generated .binding 3)))]), (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 29)), .wild]) (.mk [] (.move (.generated .part 29))))]), (.construct (.adt 3 0) [(.block (.mk [(.mk (.bind (.generated .operand 33)) none (.block (.mk [(.mk (.bind (.generated .holder 32)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 31))]) (.mk [] (.move (.generated .part 31))))]))] (.matchOn (.move (.generated .holder 32)) [(.mk (.adt 3 0 [(.bind (.generated .part 30)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 30))))])))), (.mk (.bind (.generated .operand 34)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] true))), (.block (.mk [(.mk (.bind (.generated .holder 37)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 36))]) (.mk [] (.move (.generated .part 36))))]))] (.matchOn (.move (.generated .holder 37)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 35)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 35))))]))), (.block (.mk [(.mk (.bind (.generated .holder 40)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 39))]) (.mk [] (.move (.generated .part 39))))]))] (.matchOn (.move (.generated .holder 40)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 38)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 38))))]))), (.block (.mk [(.mk (.bind (.generated .holder 43)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 42))]) (.mk [] (.move (.generated .part 42))))]))] (.matchOn (.move (.generated .holder 43)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 41)), .wild, .wild]) (.mk [] (.move (.generated .part 41))))]))), (.block (.mk [(.mk (.bind (.generated .operand 47)) none (.block (.mk [(.mk (.bind (.generated .holder 46)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 45))]) (.mk [] (.move (.generated .part 45))))]))] (.matchOn (.move (.generated .holder 46)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 44)), .wild]) (.mk [] (.move (.generated .part 44))))])))), (.mk (.bind (.generated .operand 48)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 47)), (.move (.generated .operand 48))] true))), (.block (.mk [(.mk (.bind (.generated .holder 51)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 50))]) (.mk [] (.move (.generated .part 50))))]))] (.matchOn (.move (.generated .holder 51)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 49))]) (.mk [] (.move (.generated .part 49))))])))])])]))))])) (Corr.mNil) rfl rfl rfl (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.nat, (.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.pair .nat .nat), (.list (.adt 0))]) (rd := (.move (.generated .part 27))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.list (.adt 2)), (some 4)), (3, (.adt 2), (some 3)), (1, (.adt 1), (some 1)), (0, .nat, (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .binding 6)) (some (.list (.adt 2))) (.call (.function 13) [(.clone (.generated .binding 3))] false)), (.mk (.bind (.generated .binding 7)) (some (.list (.adt 2))) (.clone (.generated .binding 6))), (.mk (.bind (.generated .binding 8)) (some (.list (.adt 2))) (.block (.mk [(.mk (.bind (.generated .operand 52)) none (.move (.generated .binding 7))), (.mk (.bind (.generated .operand 53)) none (.move (.generated .binding 4)))] (.call (.runtime .appendList) [(.move (.generated .operand 52)), (.move (.generated .operand 53))] false)))), (.mk (.bind (.generated .binding 9)) (some (.list (.adt 2))) (.call (.function 9) [(.construct (.closure 1 14) []), (.construct (.nil (.adt 2)) []), (.clone (.generated .binding 8))] false))]) (tail := (.succeed (.construct .some [(.construct (.adt 1 0) [(.clone (.generated .binding 9)), (.construct (.none (.pair .nat (.adt 2))) []), (.cond (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 54)), .wild]) (.mk [] (.move (.generated .part 54))))]) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 56)) none (.lit (.nat 3))), (.mk (.bind (.generated .operand 57)) none (.block (.mk [(.mk (.bind (.generated .operand 55)) none (.move (.generated .binding 8)))] (.call (.runtime .lengthList) [(.move (.generated .operand 55))] false))))] (.call (.runtime .natLt) [(.move (.generated .operand 56)), (.move (.generated .operand 57))] false))), (.construct (.adt 3 0) [(.block (.mk [(.mk (.bind (.generated .operand 61)) none (.block (.mk [(.mk (.bind (.generated .holder 60)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 59))]) (.mk [] (.move (.generated .part 59))))]))] (.matchOn (.move (.generated .holder 60)) [(.mk (.adt 3 0 [(.bind (.generated .part 58)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 58))))])))), (.mk (.bind (.generated .operand 62)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 61)), (.move (.generated .operand 62))] true))), (.block (.mk [(.mk (.bind (.generated .operand 67)) none (.block (.mk [(.mk (.bind (.generated .holder 65)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 64))]) (.mk [] (.move (.generated .part 64))))]))] (.matchOn (.move (.generated .holder 65)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 63)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 63))))])))), (.mk (.bind (.generated .operand 68)) none (.call (.function 15) [(.matchOn (.move (.generated .binding 3)) [(.mk (.adt 2 0 [(.bind (.generated .part 66)), .wild]) (.mk [] (.move (.generated .part 66))))])] false))] (.call (.runtime .natAdd) [(.move (.generated .operand 67)), (.move (.generated .operand 68))] true))), (.block (.mk [(.mk (.bind (.generated .operand 73)) none (.block (.mk [(.mk (.bind (.generated .holder 71)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 70))]) (.mk [] (.move (.generated .part 70))))]))] (.matchOn (.move (.generated .holder 71)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 69)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 69))))])))), (.mk (.bind (.generated .operand 74)) none (.block (.mk [(.mk (.bind (.generated .operand 72)) none (.move (.generated .binding 6)))] (.call (.runtime .lengthList) [(.move (.generated .operand 72))] false))))] (.call (.runtime .natAdd) [(.move (.generated .operand 73)), (.move (.generated .operand 74))] true))), (.block (.mk [(.mk (.bind (.generated .operand 78)) none (.block (.mk [(.mk (.bind (.generated .holder 77)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 76))]) (.mk [] (.move (.generated .part 76))))]))] (.matchOn (.move (.generated .holder 77)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 75)), .wild, .wild]) (.mk [] (.move (.generated .part 75))))])))), (.mk (.bind (.generated .operand 79)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 78)), (.move (.generated .operand 79))] true))), (.block (.mk [(.mk (.bind (.generated .operand 83)) none (.block (.mk [(.mk (.bind (.generated .holder 82)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))]))] (.matchOn (.move (.generated .holder 82)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 80)), .wild]) (.mk [] (.move (.generated .part 80))))])))), (.mk (.bind (.generated .operand 84)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 83)), (.move (.generated .operand 84))] true))), (.block (.mk [(.mk (.bind (.generated .operand 89)) none (.block (.mk [(.mk (.bind (.generated .holder 87)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 86))]) (.mk [] (.move (.generated .part 86))))]))] (.matchOn (.move (.generated .holder 87)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 85))]) (.mk [] (.move (.generated .part 85))))])))), (.mk (.bind (.generated .operand 90)) none (.block (.mk [(.mk (.bind (.generated .operand 88)) none (.clone (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 88))] false))))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 89)), (.move (.generated .operand 90))] false) (.mk [(.mk (.bind (.generated .operand 91)) none (.move (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 91))] false)) (.mk [(.mk (.bind (.generated .holder 94)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 93))]) (.mk [] (.move (.generated .part 93))))]))] (.matchOn (.move (.generated .holder 94)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 92))]) (.mk [] (.move (.generated .part 92))))])))))])])]))) (Corr.mCons (Γ' := [(5, .nat, (some 5)), (4, (.list (.adt 2)), (some 4)), (3, (.adt 2), (some 3)), (1, (.adt 1), (some 1)), (0, .nat, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct .some [(.construct (.adt 1 0) [(.move (.generated .binding 4)), (.construct .some [(.pair (.copy (.generated .binding 5)) (.move (.generated .binding 3)))]), (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 29)), .wild]) (.mk [] (.move (.generated .part 29))))]), (.construct (.adt 3 0) [(.block (.mk [(.mk (.bind (.generated .operand 33)) none (.block (.mk [(.mk (.bind (.generated .holder 32)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 31))]) (.mk [] (.move (.generated .part 31))))]))] (.matchOn (.move (.generated .holder 32)) [(.mk (.adt 3 0 [(.bind (.generated .part 30)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 30))))])))), (.mk (.bind (.generated .operand 34)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] true))), (.block (.mk [(.mk (.bind (.generated .holder 37)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 36))]) (.mk [] (.move (.generated .part 36))))]))] (.matchOn (.move (.generated .holder 37)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 35)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 35))))]))), (.block (.mk [(.mk (.bind (.generated .holder 40)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 39))]) (.mk [] (.move (.generated .part 39))))]))] (.matchOn (.move (.generated .holder 40)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 38)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 38))))]))), (.block (.mk [(.mk (.bind (.generated .holder 43)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 42))]) (.mk [] (.move (.generated .part 42))))]))] (.matchOn (.move (.generated .holder 43)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 41)), .wild, .wild]) (.mk [] (.move (.generated .part 41))))]))), (.block (.mk [(.mk (.bind (.generated .operand 47)) none (.block (.mk [(.mk (.bind (.generated .holder 46)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 45))]) (.mk [] (.move (.generated .part 45))))]))] (.matchOn (.move (.generated .holder 46)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 44)), .wild]) (.mk [] (.move (.generated .part 44))))])))), (.mk (.bind (.generated .operand 48)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 47)), (.move (.generated .operand 48))] true))), (.block (.mk [(.mk (.bind (.generated .holder 51)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 50))]) (.mk [] (.move (.generated .part 50))))]))] (.matchOn (.move (.generated .holder 51)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 49))]) (.mk [] (.move (.generated .part 49))))])))])])]))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]) (mask := [false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.pair .nat (.adt 2))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lNil))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 29))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 33)) none (.block (.mk [(.mk (.bind (.generated .holder 32)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 31))]) (.mk [] (.move (.generated .part 31))))]))] (.matchOn (.move (.generated .holder 32)) [(.mk (.adt 3 0 [(.bind (.generated .part 30)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 30))))])))), (.mk (.bind (.generated .operand 34)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 32)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 31))]) (.mk [] (.move (.generated .part 31))))]))]) (tail := (.matchOn (.move (.generated .holder 32)) [(.mk (.adt 3 0 [(.bind (.generated .part 30)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 30))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 30))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 31))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 37)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 36))]) (.mk [] (.move (.generated .part 36))))]))]) (tail := (.matchOn (.move (.generated .holder 37)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 35)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 35))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 35))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 36))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 40)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 39))]) (.mk [] (.move (.generated .part 39))))]))]) (tail := (.matchOn (.move (.generated .holder 40)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 38)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 38))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 38))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 39))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 43)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 42))]) (.mk [] (.move (.generated .part 42))))]))]) (tail := (.matchOn (.move (.generated .holder 43)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 41)), .wild, .wild]) (.mk [] (.move (.generated .part 41))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 41))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 42))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 47)) none (.block (.mk [(.mk (.bind (.generated .holder 46)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 45))]) (.mk [] (.move (.generated .part 45))))]))] (.matchOn (.move (.generated .holder 46)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 44)), .wild]) (.mk [] (.move (.generated .part 44))))])))), (.mk (.bind (.generated .operand 48)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 47)), (.move (.generated .operand 48))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 46)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 45))]) (.mk [] (.move (.generated .part 45))))]))]) (tail := (.matchOn (.move (.generated .holder 46)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 44)), .wild]) (.mk [] (.move (.generated .part 44))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 44))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 45))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 51)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 50))]) (.mk [] (.move (.generated .part 50))))]))]) (tail := (.matchOn (.move (.generated .holder 51)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 49))]) (.mk [] (.move (.generated .part 49))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 49))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 50))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))))))) rfl)) (Corr.lNil)))))) rfl)) (Corr.lNil))) rfl))) rfl rfl rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.adt 2)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.var rfl rfl) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 52)) none (.move (.generated .binding 7))), (.mk (.bind (.generated .operand 53)) none (.move (.generated .binding 4)))]) (tail := (.call (.runtime .appendList) [(.move (.generated .operand 52)), (.move (.generated .operand 53))] false)) (Corr.prim (ts := [(.list (.adt 2)), (.list (.adt 2))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.list (.adt 2)), (.adt 2)] (.list (.adt 2))), (.list (.adt 2)), (.list (.adt 2))]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := false) (ff := false) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl (Corr.fOfB (Corr.build (ts := [(.adt 1)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]) (mask := [false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.cond (lc := []) (ce := (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, (.bind (.generated .part 54)), .wild]) (.mk [] (.move (.generated .part 54))))])) (lk := []) (Corr.fieldRead (ts := [(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 54))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 56)) none (.lit (.nat 3))), (.mk (.bind (.generated .operand 57)) none (.block (.mk [(.mk (.bind (.generated .operand 55)) none (.move (.generated .binding 8)))] (.call (.runtime .lengthList) [(.move (.generated .operand 55))] false))))]) (tb := (.call (.runtime .natLt) [(.move (.generated .operand 56)), (.move (.generated .operand 57))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 55)) none (.move (.generated .binding 8)))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 55))] false)) (Corr.prim (ts := [(.list (.adt 2))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)))) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (mask := [false, false, false, false, false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 61)) none (.block (.mk [(.mk (.bind (.generated .holder 60)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 59))]) (.mk [] (.move (.generated .part 59))))]))] (.matchOn (.move (.generated .holder 60)) [(.mk (.adt 3 0 [(.bind (.generated .part 58)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 58))))])))), (.mk (.bind (.generated .operand 62)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 61)), (.move (.generated .operand 62))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 60)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 59))]) (.mk [] (.move (.generated .part 59))))]))]) (tail := (.matchOn (.move (.generated .holder 60)) [(.mk (.adt 3 0 [(.bind (.generated .part 58)), .wild, .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 58))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 58))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 59))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 67)) none (.block (.mk [(.mk (.bind (.generated .holder 65)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 64))]) (.mk [] (.move (.generated .part 64))))]))] (.matchOn (.move (.generated .holder 65)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 63)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 63))))])))), (.mk (.bind (.generated .operand 68)) none (.call (.function 15) [(.matchOn (.move (.generated .binding 3)) [(.mk (.adt 2 0 [(.bind (.generated .part 66)), .wild]) (.mk [] (.move (.generated .part 66))))])] false))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 67)), (.move (.generated .operand 68))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 65)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 64))]) (.mk [] (.move (.generated .part 64))))]))]) (tail := (.matchOn (.move (.generated .holder 65)) [(.mk (.adt 3 0 [.wild, (.bind (.generated .part 63)), .wild, .wild, .wild, .wild]) (.mk [] (.move (.generated .part 63))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 63))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 64))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.pair .nat .nat), (.list (.adt 0))]) (rd := (.move (.generated .part 66))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 73)) none (.block (.mk [(.mk (.bind (.generated .holder 71)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 70))]) (.mk [] (.move (.generated .part 70))))]))] (.matchOn (.move (.generated .holder 71)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 69)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 69))))])))), (.mk (.bind (.generated .operand 74)) none (.block (.mk [(.mk (.bind (.generated .operand 72)) none (.move (.generated .binding 6)))] (.call (.runtime .lengthList) [(.move (.generated .operand 72))] false))))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 73)), (.move (.generated .operand 74))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 71)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 70))]) (.mk [] (.move (.generated .part 70))))]))]) (tail := (.matchOn (.move (.generated .holder 71)) [(.mk (.adt 3 0 [.wild, .wild, (.bind (.generated .part 69)), .wild, .wild, .wild]) (.mk [] (.move (.generated .part 69))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 69))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 70))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 72)) none (.move (.generated .binding 6)))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 72))] false)) (Corr.prim (ts := [(.list (.adt 2))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 78)) none (.block (.mk [(.mk (.bind (.generated .holder 77)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 76))]) (.mk [] (.move (.generated .part 76))))]))] (.matchOn (.move (.generated .holder 77)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 75)), .wild, .wild]) (.mk [] (.move (.generated .part 75))))])))), (.mk (.bind (.generated .operand 79)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 78)), (.move (.generated .operand 79))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 77)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 76))]) (.mk [] (.move (.generated .part 76))))]))]) (tail := (.matchOn (.move (.generated .holder 77)) [(.mk (.adt 3 0 [.wild, .wild, .wild, (.bind (.generated .part 75)), .wild, .wild]) (.mk [] (.move (.generated .part 75))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 75))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 76))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 83)) none (.block (.mk [(.mk (.bind (.generated .holder 82)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))]))] (.matchOn (.move (.generated .holder 82)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 80)), .wild]) (.mk [] (.move (.generated .part 80))))])))), (.mk (.bind (.generated .operand 84)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 83)), (.move (.generated .operand 84))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 82)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 81))]) (.mk [] (.move (.generated .part 81))))]))]) (tail := (.matchOn (.move (.generated .holder 82)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, (.bind (.generated .part 80)), .wild]) (.mk [] (.move (.generated .part 80))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 80))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 81))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 89)) none (.block (.mk [(.mk (.bind (.generated .holder 87)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 86))]) (.mk [] (.move (.generated .part 86))))]))] (.matchOn (.move (.generated .holder 87)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 85))]) (.mk [] (.move (.generated .part 85))))])))), (.mk (.bind (.generated .operand 90)) none (.block (.mk [(.mk (.bind (.generated .operand 88)) none (.clone (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 88))] false))))]) (tail := (.cond (.call (.runtime .natLt) [(.move (.generated .operand 89)), (.move (.generated .operand 90))] false) (.mk [(.mk (.bind (.generated .operand 91)) none (.move (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 91))] false)) (.mk [(.mk (.bind (.generated .holder 94)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 93))]) (.mk [] (.move (.generated .part 93))))]))] (.matchOn (.move (.generated .holder 94)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 92))]) (.mk [] (.move (.generated .part 92))))])))) (Corr.cond (lc := [(.mk (.bind (.generated .operand 89)) none (.block (.mk [(.mk (.bind (.generated .holder 87)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 86))]) (.mk [] (.move (.generated .part 86))))]))] (.matchOn (.move (.generated .holder 87)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 85))]) (.mk [] (.move (.generated .part 85))))])))), (.mk (.bind (.generated .operand 90)) none (.block (.mk [(.mk (.bind (.generated .operand 88)) none (.clone (.generated .binding 9)))] (.call (.runtime .lengthList) [(.move (.generated .operand 88))] false))))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 89)), (.move (.generated .operand 90))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .holder 87)) none (.matchOn (.clone (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 86))]) (.mk [] (.move (.generated .part 86))))]))]) (tail := (.matchOn (.move (.generated .holder 87)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 85))]) (.mk [] (.move (.generated .part 85))))])) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 85))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 86))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 88)) none (.clone (.generated .binding 9)))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 88))] false)) (Corr.prim (ts := [(.list (.adt 2))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 91)) none (.move (.generated .binding 9)))]) (ta := (.call (.runtime .lengthList) [(.move (.generated .operand 91))] false)) (lb := [(.mk (.bind (.generated .holder 94)) none (.matchOn (.move (.generated .binding 1)) [(.mk (.adt 1 0 [.wild, .wild, .wild, (.bind (.generated .part 93))]) (.mk [] (.move (.generated .part 93))))]))]) (tb := (.matchOn (.move (.generated .holder 94)) [(.mk (.adt 3 0 [.wild, .wild, .wild, .wild, .wild, (.bind (.generated .part 92))]) (.mk [] (.move (.generated .part 92))))])) (Corr.prim (ts := [(.list (.adt 2))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.fieldHeld (ts := [.nat, .nat, .nat, .nat, .nat, .nat]) (rd := (.move (.generated .part 92))) (Corr.eOfBNil (Corr.fieldRead (ts := [(.list (.adt 2)), (.option (.pair .nat (.adt 2))), .bool, (.adt 3)]) (rd := (.move (.generated .part 93))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl rfl rfl rfl rfl)))) (Corr.lNil)))))))) rfl)) (Corr.lNil)))))) rfl)) (Corr.lNil))) rfl))))))) rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl)) rfl rfl rfl)⟩⟩ - -theorem fun9 : FunOK program krate flags 9 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 95)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 95)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 9) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 96)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 96) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]), [(2, (.list (.adt 2)), (some 2)), (1, (.list (.adt 2)), (some 1)), (0, (.fn [(.list (.adt 2)), (.adt 2)] (.list (.adt 2))), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list (.adt 2))) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list (.adt 2)), (some 2)), (1, (.list (.adt 2)), (some 1)), (0, (.fn [(.list (.adt 2)), (.adt 2)] (.list (.adt 2))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 1))) (Corr.mCons (Γ' := [(4, (.list (.adt 2)), (some 4)), (3, (.adt 2), (some 3)), (2, (.list (.adt 2)), (some 2)), (1, (.list (.adt 2)), (some 1)), (0, (.fn [(.list (.adt 2)), (.adt 2)] (.list (.adt 2))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 9) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 96)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 96) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.fn [(.list (.adt 2)), (.adt 2)] (.list (.adt 2))), (.list (.adt 2)), (.list (.adt 2))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 96)) (some (.fn 1)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 96) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false)) (Corr.apply (ps := [(.list (.adt 2)), (.adt 2)]) (af := false) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ - -theorem fun10 : FunOK program krate flags 10 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 98)) none (.block (.mk [(.mk (.bind (.generated .operand 97)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthList) [(.move (.generated .operand 97))] false)))), (.mk (.bind (.generated .operand 99)) none (.lit (.nat 3)))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 98)), (.move (.generated .operand 99))] false) (.mk [(.mk (.bind (.generated .operand 100)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 101)) none (.construct .cons [(.move (.generated .binding 1)), (.construct (.nil (.adt 2)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 100)), (.move (.generated .operand 101))] false)) (.mk [] (.move (.generated .binding 0)))), [(1, (.adt 2), (some 1)), (0, (.list (.adt 2)), (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 98)) none (.block (.mk [(.mk (.bind (.generated .operand 97)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthList) [(.move (.generated .operand 97))] false)))), (.mk (.bind (.generated .operand 99)) none (.lit (.nat 3)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 98)), (.move (.generated .operand 99))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 97)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 97))] false)) (Corr.prim (ts := [(.list (.adt 2))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 100)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 101)) none (.construct .cons [(.move (.generated .binding 1)), (.construct (.nil (.adt 2)) [])]))]) (ta := (.call (.runtime .appendList) [(.move (.generated .operand 100)), (.move (.generated .operand 101))] false)) (lb := []) (tb := (.move (.generated .binding 0))) (Corr.prim (ts := [(.list (.adt 2)), (.list (.adt 2))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [(.adt 2), (.list (.adt 2))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.var rfl rfl))))⟩⟩ - -theorem fun11 : FunOK program krate flags 11 := - ⟨_, rfl, .inl ⟨_, _, [], (.pair (.copy (.generated .binding 0)) (.lit (.nat 0))), [(0, .nat, (some 0))], rfl, rfl, - (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))))⟩⟩ - -theorem fun12 : FunOK program krate flags 12 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 102)) none (.call (.function 16) [(.copy (.generated .binding 1))] false))], (.matchOn (.move (.generated .holder 102)) [(.mk .none (.mk [] (.succeed (.construct (.none .nat) [])))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.cond (.call (.function 17) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] true) (.mk [] (.succeed (.construct .some [(.copy (.generated .binding 2))]))) (.mk [] (.succeed (.construct (.none .nat) []))))))]), [(1, (.pair .nat .nat), (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.pair .nat .nat), (some 1)), (0, .nat, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.construct (.none .nat) []))) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, (.pair .nat .nat), (some 1)), (0, .nat, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 17) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] true) (.mk [] (.succeed (.construct .some [(.copy (.generated .binding 2))]))) (.mk [] (.succeed (.construct (.none .nat) []))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 17) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] true)) (lk := []) (Corr.callOps (ts := [.nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.copy (.generated .binding 2))]))) (lb := []) (tb := (.succeed (.construct (.none .nat) []))) (Corr.fOfB (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl)⟩⟩ - -theorem fun13 : FunOK program krate flags 13 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 18) [(.move (.generated .binding 0))] false), [(0, (.adt 2), (some 0))], rfl, rfl, - (Corr.callOps (ts := [(.adt 2)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun14 : FunOK program krate flags 14 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 104)) none (.block (.mk [(.mk (.bind (.generated .operand 103)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthList) [(.move (.generated .operand 103))] false)))), (.mk (.bind (.generated .operand 105)) none (.lit (.nat 3)))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 104)), (.move (.generated .operand 105))] false) (.mk [(.mk (.bind (.generated .operand 106)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 107)) none (.construct .cons [(.move (.generated .binding 1)), (.construct (.nil (.adt 2)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 106)), (.move (.generated .operand 107))] false)) (.mk [] (.move (.generated .binding 0)))), [(1, (.adt 2), (some 1)), (0, (.list (.adt 2)), (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 104)) none (.block (.mk [(.mk (.bind (.generated .operand 103)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthList) [(.move (.generated .operand 103))] false)))), (.mk (.bind (.generated .operand 105)) none (.lit (.nat 3)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 104)), (.move (.generated .operand 105))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 103)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 103))] false)) (Corr.prim (ts := [(.list (.adt 2))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 106)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 107)) none (.construct .cons [(.move (.generated .binding 1)), (.construct (.nil (.adt 2)) [])]))]) (ta := (.call (.runtime .appendList) [(.move (.generated .operand 106)), (.move (.generated .operand 107))] false)) (lb := []) (tb := (.move (.generated .binding 0))) (Corr.prim (ts := [(.list (.adt 2)), (.list (.adt 2))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [(.adt 2), (.list (.adt 2))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.var rfl rfl))))⟩⟩ - -theorem fun15 : FunOK program krate flags 15 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 108)) none (.call (.function 19) [(.copy (.generated .binding 0))] false))], (.call (.runtime .lengthList) [(.move (.generated .operand 108))] false), [(0, (.pair .nat .nat), (some 0))], rfl, rfl, - (Corr.prim (ts := [(.list .nat)]) (Corr.opsCons (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun16 : FunOK program krate flags 16 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 110)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 111)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 109))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 109)))))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 110)), (.move (.generated .operand 111))] false) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 112))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 112))))])) (.mk [] (.construct (.none .nat) []))), [(0, (.pair .nat .nat), (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 110)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 111)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 109))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 109)))))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 110)), (.move (.generated .operand 111))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 109))]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 109))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 112))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 112))))])) (lb := []) (tb := (.construct (.none .nat) [])) (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 112))]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 112))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ - -theorem fun17 : FunOK program krate flags 17 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 115)) none (.block (.mk [(.mk (.bind (.generated .operand 113)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 114)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 113)), (.move (.generated .operand 114))] true)))), (.mk (.bind (.generated .operand 116)) none (.copy (.generated .binding 0)))], (.succeed (.call (.runtime .natLe) [(.move (.generated .operand 115)), (.move (.generated .operand 116))] false)), [(1, .nat, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.fOfB (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 113)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 114)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 113)), (.move (.generated .operand 114))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl))⟩⟩ - -theorem fun18 : FunOK program krate flags 18 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 20) [(.construct (.closure 2 21) [(.clone (.generated .binding 0))]), (.construct (.nil (.adt 2)) []), (.call (.function 19) [(.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [(.bind (.generated .part 117)), .wild]) (.mk [] (.move (.generated .part 117))))])] false)] false), [(0, (.adt 2), (some 0))], rfl, rfl, - (Corr.callOps (ts := [(.fn [(.list (.adt 2)), .nat] (.list (.adt 2))), (.list (.adt 2)), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [(.adt 2)]) (mask := [false]) (af := false) (ff := false) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.pair .nat .nat), (.list (.adt 0))]) (rd := (.move (.generated .part 117))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun19 : FunOK program krate flags 19 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 119)) none (.block (.mk [(.mk (.bind (.generated .binding 1)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 118)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 118))))), (.mk (.bind (.generated .binding 2)) (some (.list .nat)) (.call (.function 22) [(.copy (.generated .binding 1))] false))] (.cond (.call (.function 23) [(.copy (.generated .binding 1)), (.clone (.generated .binding 2))] false) (.mk [] (.construct (.ok (.list .nat) (.pair .bool .bool)) [(.move (.generated .binding 2))])) (.mk [] (.construct (.err (.list .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))]))))))], (.matchOn (.move (.generated .holder 119)) [(.mk (.ok (.bind (.generated .binding 3))) (.mk [] (.move (.generated .binding 3)))), (.mk (.err .wild) (.mk [] (.construct (.nil .nat) [])))]), [(0, (.pair .nat .nat), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.result (.list .nat) (.pair .bool .bool))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.bind (.generated .binding 1)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 118)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 118))))), (.mk (.bind (.generated .binding 2)) (some (.list .nat)) (.call (.function 22) [(.copy (.generated .binding 1))] false))]) (tail := (.cond (.call (.function 23) [(.copy (.generated .binding 1)), (.clone (.generated .binding 2))] false) (.mk [] (.construct (.ok (.list .nat) (.pair .bool .bool)) [(.move (.generated .binding 2))])) (.mk [] (.construct (.err (.list .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))) (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 118)), .wild]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 118))) (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := []) (ce := (.call (.function 23) [(.copy (.generated .binding 1)), (.clone (.generated .binding 2))] false)) (lk := []) (Corr.callOps (ts := [.nat, (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct (.ok (.list .nat) (.pair .bool .bool)) [(.move (.generated .binding 2))])) (lb := []) (tb := (.construct (.err (.list .nat) (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])) (Corr.build (ts := [(.list .nat)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl) (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)))))) (Corr.mCons (Γ' := [(3, (.list .nat), (some 3)), (0, (.pair .nat .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 3))) (Corr.mCons (Γ' := [(4, (.pair .bool .bool), none), (0, (.pair .nat .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct (.nil .nat) [])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ - -theorem fun20 : FunOK program krate flags 20 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 120)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 120)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 20) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 121)) (some (.fn 2)) (.move (.generated .binding 0)))] (.apply (.generated .callee 121) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]), [(2, (.list .nat), (some 2)), (1, (.list (.adt 2)), (some 1)), (0, (.fn [(.list (.adt 2)), .nat] (.list (.adt 2))), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .nat), (some 2)), (1, (.list (.adt 2)), (some 1)), (0, (.fn [(.list (.adt 2)), .nat] (.list (.adt 2))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 1))) (Corr.mCons (Γ' := [(4, (.list .nat), (some 4)), (3, .nat, (some 3)), (2, (.list .nat), (some 2)), (1, (.list (.adt 2)), (some 1)), (0, (.fn [(.list (.adt 2)), .nat] (.list (.adt 2))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 20) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 121)) (some (.fn 2)) (.move (.generated .binding 0)))] (.apply (.generated .callee 121) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.fn [(.list (.adt 2)), .nat] (.list (.adt 2))), (.list (.adt 2)), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 121)) (some (.fn 2)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 121) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] false)) (Corr.apply (ps := [(.list (.adt 2)), .nat]) (af := false) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ - -theorem fun21 : FunOK program krate flags 21 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 24) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 2))] false), [(2, .nat, (some 2)), (1, (.list (.adt 2)), (some 1)), (0, (.adt 2), (some 0))], rfl, rfl, - (Corr.callOps (ts := [(.adt 2), (.list (.adt 2)), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun22 : FunOK program krate flags 22 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 25) [(.copy (.generated .binding 0))] false), [(0, .nat, (some 0))], rfl, rfl, - (Corr.callOps (ts := [.nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun23 : FunOK program krate flags 23 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 123)) none (.block (.mk [(.mk (.bind (.generated .operand 122)) none (.move (.generated .binding 1)))] (.call (.runtime .lengthList) [(.move (.generated .operand 122))] false)))), (.mk (.bind (.generated .operand 124)) none (.lit (.nat 4)))], (.call (.runtime .natLe) [(.move (.generated .operand 123)), (.move (.generated .operand 124))] false), [(1, (.list .nat), (some 1)), (0, .nat, none)], rfl, rfl, - (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 122)) none (.move (.generated .binding 1)))]) (tail := (.call (.runtime .lengthList) [(.move (.generated .operand 122))] false)) (Corr.prim (ts := [(.list .nat)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun24 : FunOK program krate flags 24 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 126)) none (.call (.function 26) [(.matchOn (.clone (.generated .binding 0)) [(.mk (.adt 2 0 [(.bind (.generated .part 125)), .wild]) (.mk [] (.move (.generated .part 125))))]), (.construct (.adt 0 0) [(.copy (.generated .binding 2))])] false))], (.matchOn (.move (.generated .holder 126)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.bind (.generated .binding 3))) (.mk [(.mk (.bind (.generated .operand 130)) none (.move (.generated .binding 1))), (.mk (.bind (.generated .operand 131)) none (.construct .cons [(.construct (.adt 2 0) [(.copy (.generated .binding 3)), (.block (.mk [(.mk (.bind (.generated .operand 128)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 127))]) (.mk [] (.move (.generated .part 127))))])), (.mk (.bind (.generated .operand 129)) none (.construct .cons [(.construct (.adt 0 0) [(.copy (.generated .binding 2))]), (.construct (.nil (.adt 0)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 128)), (.move (.generated .operand 129))] false)))]), (.construct (.nil (.adt 2)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 130)), (.move (.generated .operand 131))] false)))]), [(2, .nat, (some 2)), (1, (.list (.adt 2)), (some 1)), (0, (.adt 2), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option (.pair .nat .nat))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat), (.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.pair .nat .nat), (.list (.adt 0))]) (rd := (.move (.generated .part 125))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, (.list (.adt 2)), (some 1)), (0, (.adt 2), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 1))) (Corr.mCons (Γ' := [(3, (.pair .nat .nat), (some 3)), (2, .nat, (some 2)), (1, (.list (.adt 2)), (some 1)), (0, (.adt 2), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .operand 130)) none (.move (.generated .binding 1))), (.mk (.bind (.generated .operand 131)) none (.construct .cons [(.construct (.adt 2 0) [(.copy (.generated .binding 3)), (.block (.mk [(.mk (.bind (.generated .operand 128)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 127))]) (.mk [] (.move (.generated .part 127))))])), (.mk (.bind (.generated .operand 129)) none (.construct .cons [(.construct (.adt 0 0) [(.copy (.generated .binding 2))]), (.construct (.nil (.adt 0)) [])]))] (.call (.runtime .appendList) [(.move (.generated .operand 128)), (.move (.generated .operand 129))] false)))]), (.construct (.nil (.adt 2)) [])]))]) (tail := (.call (.runtime .appendList) [(.move (.generated .operand 130)), (.move (.generated .operand 131))] false)) (Corr.mNil) rfl rfl rfl (Corr.prim (ts := [(.list (.adt 2)), (.list (.adt 2))]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [(.adt 2), (.list (.adt 2))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [(.pair .nat .nat), (.list (.adt 0))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 128)) none (.matchOn (.move (.generated .binding 0)) [(.mk (.adt 2 0 [.wild, (.bind (.generated .part 127))]) (.mk [] (.move (.generated .part 127))))])), (.mk (.bind (.generated .operand 129)) none (.construct .cons [(.construct (.adt 0 0) [(.copy (.generated .binding 2))]), (.construct (.nil (.adt 0)) [])]))]) (tail := (.call (.runtime .appendList) [(.move (.generated .operand 128)), (.move (.generated .operand 129))] false)) (Corr.prim (ts := [(.list (.adt 0)), (.list (.adt 0))]) (Corr.opsCons (Corr.eOfBNil (Corr.fieldRead (ts := [(.pair .nat .nat), (.list (.adt 0))]) (rd := (.move (.generated .part 127))) (Corr.var rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.eOfBNil (Corr.build (ts := [(.adt 0), (.list (.adt 0))]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ - -theorem fun25 : FunOK program krate flags 25 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 132)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 133)) none (.lit (.nat 10)))] (.call (.runtime .natSub) [(.move (.generated .operand 132)), (.move (.generated .operand 133))] false))), (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 134)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 135)) none (.lit (.nat 20)))] (.call (.runtime .natSub) [(.move (.generated .operand 134)), (.move (.generated .operand 135))] false))), (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 136)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 137)) none (.lit (.nat 30)))] (.call (.runtime .natSub) [(.move (.generated .operand 136)), (.move (.generated .operand 137))] false))), (.construct .cons [(.block (.mk [(.mk (.bind (.generated .operand 138)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 139)) none (.lit (.nat 50)))] (.call (.runtime .natSub) [(.move (.generated .operand 138)), (.move (.generated .operand 139))] false))), (.construct (.nil .nat) [])])])])]), [(0, .nat, (some 0))], rfl, rfl, - (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 132)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 133)) none (.lit (.nat 10)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 132)), (.move (.generated .operand 133))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 134)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 135)) none (.lit (.nat 20)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 134)), (.move (.generated .operand 135))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 136)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 137)) none (.lit (.nat 30)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 136)), (.move (.generated .operand 137))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 138)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 139)) none (.lit (.nat 50)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 138)), (.move (.generated .operand 139))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)⟩⟩ - -theorem fun26 : FunOK program krate flags 26 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 140)) none (.move (.generated .binding 1)))], (.matchOn (.move (.generated .holder 140)) [(.mk (.adt 0 0 [(.bind (.generated .binding 2))]) (.mk [] (.call (.function 27) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] false)))]), [(1, (.adt 0), (some 1)), (0, (.pair .nat .nat), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.adt 0)) (U := []) (view := false) (idx := [0]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, (.adt 0), (some 1)), (0, (.pair .nat .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.call (.function 27) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.pair .nat .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl)⟩⟩ - -theorem fun27 : FunOK program krate flags 27 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 28) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false) (.mk [] (.construct .some [(.call (.function 29) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false)])) (.mk [] (.construct (.none (.pair .nat .nat)) []))), [(1, .nat, (some 1)), (0, (.pair .nat .nat), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 28) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [(.pair .nat .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 29) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false)])) (lb := []) (tb := (.construct (.none (.pair .nat .nat)) [])) (Corr.build (ts := [(.pair .nat .nat)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ - -theorem fun28 : FunOK program krate flags 28 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 142)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 141))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 141))))), (.mk (.bind (.generated .operand 143)) none (.lit (.nat 0)))], (.cond (.call (.runtime .natEq) [(.move (.generated .operand 142)), (.move (.generated .operand 143))] false) (.mk [(.mk (.bind (.generated .operand 144)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 145)) none (.copy (.generated .binding 1)))] (.call (.runtime .natLt) [(.move (.generated .operand 144)), (.move (.generated .operand 145))] false)) (.mk [] (.lit (.bool false)))), [(1, .nat, (some 1)), (0, (.pair .nat .nat), (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 142)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 141))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 141))))), (.mk (.bind (.generated .operand 143)) none (.lit (.nat 0)))]) (ce := (.call (.runtime .natEq) [(.move (.generated .operand 142)), (.move (.generated .operand 143))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 141))]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 141))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 144)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 145)) none (.copy (.generated .binding 1)))]) (ta := (.call (.runtime .natLt) [(.move (.generated .operand 144)), (.move (.generated .operand 145))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ - -theorem fun29 : FunOK program krate flags 29 := - ⟨_, rfl, .inl ⟨_, _, [], (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 146)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 146)))) (.copy (.generated .binding 1))), [(1, .nat, (some 1)), (0, (.pair .nat .nat), (some 0))], rfl, rfl, - (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 146)), .wild]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 146))) (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | 3 => exact fun3 - | 4 => exact fun4 - | 5 => exact fun5 - | 6 => exact fun6 - | 7 => exact fun7 - | 8 => exact fun8 - | 9 => exact fun9 - | 10 => exact fun10 - | 11 => exact fun11 - | 12 => exact fun12 - | 13 => exact fun13 - | 14 => exact fun14 - | 15 => exact fun15 - | 16 => exact fun16 - | 17 => exact fun17 - | 18 => exact fun18 - | 19 => exact fun19 - | 20 => exact fun20 - | 21 => exact fun21 - | 22 => exact fun22 - | 23 => exact fun23 - | 24 => exact fun24 - | 25 => exact fun25 - | 26 => exact fun26 - | 27 => exact fun27 - | 28 => exact fun28 - | 29 => exact fun29 - | _ + 30 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.RustStd diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R7.lean b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R7.lean deleted file mode 100644 index a571dbbde..000000000 --- a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R7.lean +++ /dev/null @@ -1,200 +0,0 @@ -import LexLeanPreservation.Core -import LexLeanPreservation.Values -import LexLeanPreservation.Primitives -import LexLeanPreservation.Fixed -import LexLeanPreservation.Keys -import LexLeanPreservation.Templates -import LexLeanPreservation.Validate -import Reasoning.Budget -import Reasoning.Clinic -import Reasoning.Main -import Reasoning.Planner -import Reasoning.Screening -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -set_option linter.unusedVariables false -namespace LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7 - -def __prog : _root_.LexLeanTarget.TargetSyntax.Program := - { adts := [{ constructors := [[], [.nat]] }], functions := [ - { parameters := [0], types := [.nat], result := .nat, - body := (.«match» .nat (.call 1 [(.build .pair (.pair .nat .nat) [(.var 0), (.var 0)])]) [(.arm .ok [1] (.var 1)), (.arm .error [2] (.value .nat (.nat 9)))]) }, - { parameters := [0], types := [(.pair .nat .nat)], result := (.result .nat (.pair .bool .bool)), - body := (.«let» 1 (.pair (.pair .nat .nat) .bool) (.call 2 [(.var 0)]) (.«match» (.result .nat (.pair .bool .bool)) (.second (.var 1)) [(.arm .true [] (.call 3 [(.var 0), (.first (.var 1))])), (.arm .false [] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])]))])) }, - { parameters := [0], types := [(.pair .nat .nat)], result := (.pair (.pair .nat .nat) .bool), - body := (.call 4 [(.closure 5 []), (.prim .natAdd [(.second (.var 0)), (.value .nat (.nat 4))]), (.call 6 [(.var 0)])]) }, - { parameters := [0, 1], types := [(.pair .nat .nat), (.pair .nat .nat)], result := (.result .nat (.pair .bool .bool)), - body := (.«match» (.result .nat (.pair .bool .bool)) (.call 7 [(.var 0), (.var 1)]) [(.arm .some [2] (.build .ok (.result .nat (.pair .bool .bool)) [(.var 2)])), (.arm .none [] (.«match» (.result .nat (.pair .bool .bool)) (.call 8 [(.var 1)]) [(.arm .some [3] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])])])), (.arm .none [] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])])]))]))]) }, - { parameters := [0, 1, 2], types := [(.fn [(.pair .nat .nat)] (.option (.pair .nat .nat))), .nat, (.pair .nat .nat)], result := (.pair (.pair .nat .nat) .bool), - body := (.«match» (.pair (.pair .nat .nat) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.pair .nat .nat) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.pair .nat .nat) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.pair .nat .nat) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 4 [(.var 0), (.var 3), (.var 4)]))]))]) }, - { parameters := [0], types := [(.pair .nat .nat)], result := (.option (.pair .nat .nat)), - body := (.«match» (.option (.pair .nat .nat)) (.call 9 [(.var 0)]) [(.arm .none [] (.build .none (.option (.pair .nat .nat)) [])), (.arm .some [1] (.call 10 [(.var 0), (.var 1)]))]) }, - { parameters := [0], types := [(.pair .nat .nat)], result := (.pair .nat .nat), - body := (.build .pair (.pair .nat .nat) [(.first (.var 0)), (.prim .natAdd [(.second (.var 0)), (.value .nat (.nat 3))])]) }, - { parameters := [0, 1], types := [(.pair .nat .nat), (.pair .nat .nat)], result := (.option .nat), - body := (.«match» (.option .nat) (.call 8 [(.var 1)]) [(.arm .none [] (.build .none (.option .nat) [])), (.arm .some [2] (.cond (.call 11 [(.var 0), (.var 2)]) (.build .some (.option .nat) [(.var 2)]) (.build .none (.option .nat) [])))]) }, - { parameters := [0], types := [(.pair .nat .nat)], result := (.option .nat), - body := (.build .some (.option .nat) [(.second (.var 0))]) }, - { parameters := [0], types := [(.pair .nat .nat)], result := (.option (.adt 0)), - body := (.«match» (.option (.adt 0)) (.cond (.call 12 [(.var 0)]) (.build .some (.option (.adt 0)) [(.build (.adt 0) (.adt 0) [])]) (.build .none (.option (.adt 0)) [])) [(.arm .some [1] (.build .some (.option (.adt 0)) [(.var 1)])), (.arm .none [] (.call 13 [(.closure 14 [(.var 0)]), (.build .none (.option (.adt 0)) []), (.call 15 [(.var 0)])]))]) }, - { parameters := [0, 1], types := [(.pair .nat .nat), (.adt 0)], result := (.option (.pair .nat .nat)), - body := (.«match» (.option (.pair .nat .nat)) (.var 1) [(.arm (.adt 0) [] (.call 16 [(.var 0)])), (.arm (.adt 1) [2] (.call 17 [(.var 0), (.var 2)]))]) }, - { parameters := [0, 1], types := [(.pair .nat .nat), .nat], result := .bool, - body := (.prim .natEq [(.var 1), (.value .nat (.nat 0))]) }, - { parameters := [0], types := [(.pair .nat .nat)], result := .bool, - body := (.prim .natLt [(.value .nat (.nat 2)), (.second (.var 0))]) }, - { parameters := [0, 1, 2], types := [(.fn [(.option (.adt 0)), .nat] (.option (.adt 0))), (.option (.adt 0)), (.list .nat)], result := (.option (.adt 0)), - body := (.«match» (.option (.adt 0)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 13 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, - { parameters := [0, 1, 2], types := [(.pair .nat .nat), (.option (.adt 0)), .nat], result := (.option (.adt 0)), - body := (.«match» (.option (.adt 0)) (.var 1) [(.arm .some [3] (.build .some (.option (.adt 0)) [(.var 3)])), (.arm .none [] (.cond (.call 18 [(.var 0), (.var 2)]) (.build .some (.option (.adt 0)) [(.build (.adt 1) (.adt 0) [(.var 2)])]) (.build .none (.option (.adt 0)) [])))]) }, - { parameters := [0], types := [(.pair .nat .nat)], result := (.list .nat), - body := (.build .cons (.list .nat) [(.value .nat (.nat 2)), (.build .cons (.list .nat) [(.value .nat (.nat 1)), (.build .nil (.list .nat) [])])]) }, - { parameters := [0], types := [(.pair .nat .nat)], result := (.option (.pair .nat .nat)), - body := (.cond (.call 12 [(.var 0)]) (.build .some (.option (.pair .nat .nat)) [(.call 19 [(.var 0)])]) (.build .none (.option (.pair .nat .nat)) [])) }, - { parameters := [0, 1], types := [(.pair .nat .nat), .nat], result := (.option (.pair .nat .nat)), - body := (.cond (.call 18 [(.var 0), (.var 1)]) (.build .some (.option (.pair .nat .nat)) [(.call 20 [(.var 0), (.var 1)])]) (.build .none (.option (.pair .nat .nat)) [])) }, - { parameters := [0, 1], types := [(.pair .nat .nat), .nat], result := .bool, - body := (.cond (.prim .natLe [(.var 1), (.second (.var 0))]) (.prim .natLt [(.value .nat (.nat 0)), (.var 1)]) (.build .false .bool [])) }, - { parameters := [0], types := [(.pair .nat .nat)], result := (.pair .nat .nat), - body := (.build .pair (.pair .nat .nat) [(.first (.var 0)), (.prim .natSub [(.second (.var 0)), (.value .nat (.nat 1))])]) }, - { parameters := [0, 1], types := [(.pair .nat .nat), .nat], result := (.pair .nat .nat), - body := (.build .pair (.pair .nat .nat) [(.first (.var 0)), (.prim .natSub [(.second (.var 0)), (.var 1)])]) }] } - -def __enc_0 : (Reasoning.Budget.Spend.Step Nat) -> _root_.LexLeanTarget.TargetSyntax.Value - | Reasoning.Budget.Spend.Step.Tick => _root_.LexLeanTarget.TargetSyntax.Value.adt 0 [] - | Reasoning.Budget.Spend.Step.Burn __x0 => _root_.LexLeanTarget.TargetSyntax.Value.adt 1 [(_root_.LexLeanTarget.TargetSyntax.Value.nat __x0)] - -def __fits_12 (s : (Prod Nat Nat)) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_12 (s : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 12 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) s)] (_root_.LexLeanPreservation.Rel (__fits_12 s) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Budget.Tick.guard Nat s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (2 : Nat) (s).2)) - -def __fits_18 (s : (Prod Nat Nat)) (k : Nat) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.ble k (s).2) then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true))) - -theorem __rel_18 (s : (Prod Nat Nat)) (k : Nat) : _root_.LexLeanPreservation.FunRel __prog 18 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) s), (_root_.LexLeanTarget.TargetSyntax.Value.nat k)] (_root_.LexLeanPreservation.Rel (__fits_18 s k) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Budget.Burn.guard Nat s k))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then ((Bool.true && (Bool.true && Bool.true)) && Bool.true) else (Bool.true && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b && (Nat.blt (0 : Nat) k))) (Nat.ble k (s).2) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe k (s).2)) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (0 : Nat) k))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))) - -def __fits_14 (_ys : (Prod Nat Nat)) (_yacc : (Option (Reasoning.Budget.Spend.Step Nat))) (_yb : Nat) : Bool := - (Bool.true && ((fun (T : Type) (__a : (Option (Reasoning.Budget.Spend.Step T))) (__k0 : ∀ (_yfound : (Reasoning.Budget.Spend.Step T)), Bool) (__k1 : Bool) => (match __a with | Option.some _yfound => __k0 _yfound | Option.none => __k1 : Bool)) Nat _yacc (fun (_yfound : (Reasoning.Budget.Spend.Step Nat)) => ((Bool.true && Bool.true) && Bool.true)) ((((Bool.true && (Bool.true && Bool.true)) && (__fits_18 (_ys) (_yb))) && (if (Reasoning.Budget.Burn.guard Nat (_ys) (_yb)) then ((((Bool.true && Bool.true) && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true)))))) - -attribute [local irreducible] Reasoning.Budget.Burn.guard in -theorem __rel_14 (_ys : (Prod Nat Nat)) (_yacc : (Option (Reasoning.Budget.Spend.Step Nat))) (_yb : Nat) : _root_.LexLeanPreservation.FunRel __prog 14 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) _ys), ((_root_.LexLeanPreservation.encOption __enc_0) _yacc), (_root_.LexLeanTarget.TargetSyntax.Value.nat _yb)] (_root_.LexLeanPreservation.Rel (__fits_14 _ys _yacc _yb) ((_root_.LexLeanPreservation.encOption __enc_0) (((fun (T : Type) (__a : (Option (Reasoning.Budget.Spend.Step T))) (__k0 : ∀ (_yfound : (Reasoning.Budget.Spend.Step T)), (Option (Reasoning.Budget.Spend.Step Nat))) (__k1 : (Option (Reasoning.Budget.Spend.Step Nat))) => (match __a with | Option.some _yfound => __k0 _yfound | Option.none => __k1 : (Option (Reasoning.Budget.Spend.Step Nat)))) Nat _yacc (fun (_yfound : (Reasoning.Budget.Spend.Step Nat)) => (Option.some (_yfound) : (Option (Reasoning.Budget.Spend.Step Nat)))) ((if (Reasoning.Budget.Burn.guard Nat (_ys) (_yb)) then (Option.some ((Reasoning.Budget.Spend.Step.Burn (_yb) : (Reasoning.Budget.Spend.Step Nat))) : (Option (Reasoning.Budget.Spend.Step Nat))) else (Option.none : (Option (Reasoning.Budget.Spend.Step Nat))))))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_0) (fun (__a : (Option (Reasoning.Budget.Spend.Step Nat))) => ((fun (T : Type) (__a : (Option (Reasoning.Budget.Spend.Step T))) (__k0 : ∀ (_yfound : (Reasoning.Budget.Spend.Step T)), Bool) (__k1 : Bool) => (match __a with | Option.some _yfound => __k0 _yfound | Option.none => __k1 : Bool)) Nat __a (fun (_yfound : (Reasoning.Budget.Spend.Step Nat)) => ((Bool.true && Bool.true) && Bool.true)) ((((Bool.true && (Bool.true && Bool.true)) && (__fits_18 (_ys) (_yb))) && (if (Reasoning.Budget.Burn.guard Nat (_ys) (_yb)) then ((((Bool.true && Bool.true) && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true)))))) (fun (__a : (Option (Reasoning.Budget.Spend.Step Nat))) => (_root_.LexLeanPreservation.encOption __enc_0) ((fun (T : Type) (__a : (Option (Reasoning.Budget.Spend.Step T))) (__k0 : ∀ (_yfound : (Reasoning.Budget.Spend.Step T)), (Option (Reasoning.Budget.Spend.Step Nat))) (__k1 : (Option (Reasoning.Budget.Spend.Step Nat))) => (match __a with | Option.some _yfound => __k0 _yfound | Option.none => __k1 : (Option (Reasoning.Budget.Spend.Step Nat)))) Nat __a (fun (_yfound : (Reasoning.Budget.Spend.Step Nat)) => (Option.some (_yfound) : (Option (Reasoning.Budget.Spend.Step Nat)))) ((if (Reasoning.Budget.Burn.guard Nat (_ys) (_yb)) then (Option.some ((Reasoning.Budget.Spend.Step.Burn (_yb) : (Reasoning.Budget.Spend.Step Nat))) : (Option (Reasoning.Budget.Spend.Step Nat))) else (Option.none : (Option (Reasoning.Budget.Spend.Step Nat))))))) _yacc (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (Option (Reasoning.Budget.Spend.Step Nat))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_0) (if __b then (Option.some ((Reasoning.Budget.Spend.Step.Burn (_yb) : (Reasoning.Budget.Spend.Step Nat))) : (Option (Reasoning.Budget.Spend.Step Nat))) else (Option.none : (Option (Reasoning.Budget.Spend.Step Nat))))) (Reasoning.Budget.Burn.guard Nat (_ys) (_yb)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_18 (_ys) (_yb))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))) - -def __fits_15 (s : (Prod Nat Nat)) : Bool := - ((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) - -theorem __rel_15 (s : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 15 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) s)] (_root_.LexLeanPreservation.Rel (__fits_15 s) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Budget.Burn.candidates Nat s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) - -def __fits_9 (_ys : (Prod Nat Nat)) : Bool := - ((((Bool.true && Bool.true) && (__fits_12 (_ys))) && (if (Reasoning.Budget.Tick.guard Nat (_ys)) then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) && ((fun (T : Type) (__a : (Option (Reasoning.Budget.Spend.Step T))) (__k0 : ∀ (_yfound : (Reasoning.Budget.Spend.Step T)), Bool) (__k1 : Bool) => (match __a with | Option.some _yfound => __k0 _yfound | Option.none => __k1 : Bool)) Nat (if (Reasoning.Budget.Tick.guard Nat (_ys)) then (Option.some ((Reasoning.Budget.Spend.Step.Tick : (Reasoning.Budget.Spend.Step Nat))) : (Option (Reasoning.Budget.Spend.Step Nat))) else (Option.none : (Option (Reasoning.Budget.Spend.Step Nat)))) (fun (_yfound : (Reasoning.Budget.Spend.Step Nat)) => ((Bool.true && Bool.true) && Bool.true)) ((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && (((Bool.true && Bool.true) && (__fits_15 (_ys))) && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Option (Reasoning.Budget.Spend.Step Nat))) (__p1 : Nat) => __fits_14 (_ys) __p0 __p1) ((fun (_yacc : (Option (Reasoning.Budget.Spend.Step Nat))) (_yb : Nat) => ((fun (T : Type) (__a : (Option (Reasoning.Budget.Spend.Step T))) (__k0 : ∀ (_yfound : (Reasoning.Budget.Spend.Step T)), (Option (Reasoning.Budget.Spend.Step Nat))) (__k1 : (Option (Reasoning.Budget.Spend.Step Nat))) => (match __a with | Option.some _yfound => __k0 _yfound | Option.none => __k1 : (Option (Reasoning.Budget.Spend.Step Nat)))) Nat _yacc (fun (_yfound : (Reasoning.Budget.Spend.Step Nat)) => (Option.some (_yfound) : (Option (Reasoning.Budget.Spend.Step Nat)))) ((if (Reasoning.Budget.Burn.guard Nat (_ys) (_yb)) then (Option.some ((Reasoning.Budget.Spend.Step.Burn (_yb) : (Reasoning.Budget.Spend.Step Nat))) : (Option (Reasoning.Budget.Spend.Step Nat))) else (Option.none : (Option (Reasoning.Budget.Spend.Step Nat)))))))) ((Option.none : (Option (Reasoning.Budget.Spend.Step Nat)))) ((Reasoning.Budget.Burn.candidates Nat (_ys)))))))) - -attribute [local irreducible] Reasoning.Budget.Burn.candidates Reasoning.Budget.Burn.guard Reasoning.Budget.Tick.guard in -theorem __rel_9 (_ys : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 9 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) _ys)] (_root_.LexLeanPreservation.Rel (__fits_9 _ys) ((_root_.LexLeanPreservation.encOption __enc_0) (Reasoning.Budget.Spend.select Nat _ys))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_0) (fun (__a : (Option (Reasoning.Budget.Spend.Step Nat))) => ((fun (T : Type) (__a : (Option (Reasoning.Budget.Spend.Step T))) (__k0 : ∀ (_yfound : (Reasoning.Budget.Spend.Step T)), Bool) (__k1 : Bool) => (match __a with | Option.some _yfound => __k0 _yfound | Option.none => __k1 : Bool)) Nat __a (fun (_yfound : (Reasoning.Budget.Spend.Step Nat)) => ((Bool.true && Bool.true) && Bool.true)) ((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && (((Bool.true && Bool.true) && (__fits_15 (_ys))) && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Option (Reasoning.Budget.Spend.Step Nat))) (__p1 : Nat) => __fits_14 (_ys) __p0 __p1) ((fun (_yacc : (Option (Reasoning.Budget.Spend.Step Nat))) (_yb : Nat) => ((fun (T : Type) (__a : (Option (Reasoning.Budget.Spend.Step T))) (__k0 : ∀ (_yfound : (Reasoning.Budget.Spend.Step T)), (Option (Reasoning.Budget.Spend.Step Nat))) (__k1 : (Option (Reasoning.Budget.Spend.Step Nat))) => (match __a with | Option.some _yfound => __k0 _yfound | Option.none => __k1 : (Option (Reasoning.Budget.Spend.Step Nat)))) Nat _yacc (fun (_yfound : (Reasoning.Budget.Spend.Step Nat)) => (Option.some (_yfound) : (Option (Reasoning.Budget.Spend.Step Nat)))) ((if (Reasoning.Budget.Burn.guard Nat (_ys) (_yb)) then (Option.some ((Reasoning.Budget.Spend.Step.Burn (_yb) : (Reasoning.Budget.Spend.Step Nat))) : (Option (Reasoning.Budget.Spend.Step Nat))) else (Option.none : (Option (Reasoning.Budget.Spend.Step Nat)))))))) ((Option.none : (Option (Reasoning.Budget.Spend.Step Nat)))) ((Reasoning.Budget.Burn.candidates Nat (_ys)))))))) (fun (__a : (Option (Reasoning.Budget.Spend.Step Nat))) => (_root_.LexLeanPreservation.encOption __enc_0) ((fun (T : Type) (__a : (Option (Reasoning.Budget.Spend.Step T))) (__k0 : ∀ (_yfound : (Reasoning.Budget.Spend.Step T)), (Option (Reasoning.Budget.Spend.Step Nat))) (__k1 : (Option (Reasoning.Budget.Spend.Step Nat))) => (match __a with | Option.some _yfound => __k0 _yfound | Option.none => __k1 : (Option (Reasoning.Budget.Spend.Step Nat)))) Nat __a (fun (_yfound : (Reasoning.Budget.Spend.Step Nat)) => (Option.some (_yfound) : (Option (Reasoning.Budget.Spend.Step Nat)))) ((_root_.LexLeanCollections.listFold ((fun (_yacc : (Option (Reasoning.Budget.Spend.Step Nat))) (_yb : Nat) => ((fun (T : Type) (__a : (Option (Reasoning.Budget.Spend.Step T))) (__k0 : ∀ (_yfound : (Reasoning.Budget.Spend.Step T)), (Option (Reasoning.Budget.Spend.Step Nat))) (__k1 : (Option (Reasoning.Budget.Spend.Step Nat))) => (match __a with | Option.some _yfound => __k0 _yfound | Option.none => __k1 : (Option (Reasoning.Budget.Spend.Step Nat)))) Nat _yacc (fun (_yfound : (Reasoning.Budget.Spend.Step Nat)) => (Option.some (_yfound) : (Option (Reasoning.Budget.Spend.Step Nat)))) ((if (Reasoning.Budget.Burn.guard Nat (_ys) (_yb)) then (Option.some ((Reasoning.Budget.Spend.Step.Burn (_yb) : (Reasoning.Budget.Spend.Step Nat))) : (Option (Reasoning.Budget.Spend.Step Nat))) else (Option.none : (Option (Reasoning.Budget.Spend.Step Nat)))))))) ((Option.none : (Option (Reasoning.Budget.Spend.Step Nat)))) ((Reasoning.Budget.Burn.candidates Nat (_ys))) : (Option (Reasoning.Budget.Spend.Step Nat)))))) (if (Reasoning.Budget.Tick.guard Nat (_ys)) then (Option.some ((Reasoning.Budget.Spend.Step.Tick : (Reasoning.Budget.Spend.Step Nat))) : (Option (Reasoning.Budget.Spend.Step Nat))) else (Option.none : (Option (Reasoning.Budget.Spend.Step Nat)))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption __enc_0) (if __b then (Option.some ((Reasoning.Budget.Spend.Step.Tick : (Reasoning.Budget.Spend.Step Nat))) : (Option (Reasoning.Budget.Spend.Step Nat))) else (Option.none : (Option (Reasoning.Budget.Spend.Step Nat))))) (Reasoning.Budget.Tick.guard Nat (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_12 (_ys))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_adt) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) (fun (__a : (Option (Reasoning.Budget.Spend.Step Nat))) _ => match __a with | Option.some _yfound => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_15 (_ys))) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.nat) (es := (_root_.LexLeanPreservation.encOption __enc_0)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) ((fun (_yacc : (Option (Reasoning.Budget.Spend.Step Nat))) (_yb : Nat) => ((fun (T : Type) (__a : (Option (Reasoning.Budget.Spend.Step T))) (__k0 : ∀ (_yfound : (Reasoning.Budget.Spend.Step T)), (Option (Reasoning.Budget.Spend.Step Nat))) (__k1 : (Option (Reasoning.Budget.Spend.Step Nat))) => (match __a with | Option.some _yfound => __k0 _yfound | Option.none => __k1 : (Option (Reasoning.Budget.Spend.Step Nat)))) Nat _yacc (fun (_yfound : (Reasoning.Budget.Spend.Step Nat)) => (Option.some (_yfound) : (Option (Reasoning.Budget.Spend.Step Nat)))) ((if (Reasoning.Budget.Burn.guard Nat (_ys) (_yb)) then (Option.some ((Reasoning.Budget.Spend.Step.Burn (_yb) : (Reasoning.Budget.Spend.Step Nat))) : (Option (Reasoning.Budget.Spend.Step Nat))) else (Option.none : (Option (Reasoning.Budget.Spend.Step Nat)))))))) (fun (__p0 : (Option (Reasoning.Budget.Spend.Step Nat))) (__p1 : Nat) => __fits_14 (_ys) __p0 __p1) 14 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) _ys)] (fun (__p0 : (Option (Reasoning.Budget.Spend.Step Nat))) (__p1 : Nat) => __rel_14 (_ys) __p0 __p1) (p := __prog) (fi := 13) (ta := .nat) (ts := (.option (.adt 0))) rfl ((Option.none : (Option (Reasoning.Budget.Spend.Step Nat)))) ((Reasoning.Budget.Burn.candidates Nat (_ys))))))))) - -def __fits_19 (s : (Prod Nat Nat)) : Bool := - ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) - -theorem __rel_19 (s : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 19 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) s)] (_root_.LexLeanPreservation.Rel (__fits_19 s) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Budget.Tick.conclusion Nat s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub (s).2 (1 : Nat))) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) - -def __fits_16 (s : (Prod Nat Nat)) : Bool := - (((Bool.true && Bool.true) && (__fits_12 (s))) && (if (Reasoning.Budget.Tick.guard Nat (s)) then ((((Bool.true && Bool.true) && (__fits_19 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Budget.Tick.conclusion Reasoning.Budget.Tick.guard in -theorem __rel_16 (s : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 16 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) s)] (_root_.LexLeanPreservation.Rel (__fits_16 s) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Reasoning.Budget.Tick.apply Nat s))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && Bool.true) && (__fits_19 (s))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (if __b then (Option.some ((Reasoning.Budget.Tick.conclusion Nat (s))) : (Option (Prod Nat Nat))) else (Option.none : (Option (Prod Nat Nat))))) (Reasoning.Budget.Tick.guard Nat (s)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_12 (s))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_19 (s))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_20 (s : (Prod Nat Nat)) (k : Nat) : Bool := - ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) - -theorem __rel_20 (s : (Prod Nat Nat)) (k : Nat) : _root_.LexLeanPreservation.FunRel __prog 20 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) s), (_root_.LexLeanTarget.TargetSyntax.Value.nat k)] (_root_.LexLeanPreservation.Rel (__fits_20 s k) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Budget.Burn.conclusion Nat s k))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub (s).2 k)) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) - -def __fits_17 (s : (Prod Nat Nat)) (k : Nat) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && (__fits_18 (s) (k))) && (if (Reasoning.Budget.Burn.guard Nat (s) (k)) then ((((Bool.true && (Bool.true && Bool.true)) && (__fits_20 (s) (k))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) - -attribute [local irreducible] Reasoning.Budget.Burn.conclusion Reasoning.Budget.Burn.guard in -theorem __rel_17 (s : (Prod Nat Nat)) (k : Nat) : _root_.LexLeanPreservation.FunRel __prog 17 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) s), (_root_.LexLeanTarget.TargetSyntax.Value.nat k)] (_root_.LexLeanPreservation.Rel (__fits_17 s k) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Reasoning.Budget.Burn.apply Nat s k))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (Bool.true && Bool.true)) && (__fits_20 (s) (k))) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (if __b then (Option.some ((Reasoning.Budget.Burn.conclusion Nat (s) (k))) : (Option (Prod Nat Nat))) else (Option.none : (Option (Prod Nat Nat))))) (Reasoning.Budget.Burn.guard Nat (s) (k)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_18 (s) (k))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_20 (s) (k))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_10 (_ys : (Prod Nat Nat)) (_ystep : (Reasoning.Budget.Spend.Step Nat)) : Bool := - (Bool.true && ((fun (T : Type) (__a : (Reasoning.Budget.Spend.Step T)) (__k0 : Bool) (__k1 : ∀ (_yb : Nat), Bool) => (match __a with | Reasoning.Budget.Spend.Step.Tick => __k0 | Reasoning.Budget.Spend.Step.Burn _yb => __k1 _yb : Bool)) Nat _ystep (((Bool.true && Bool.true) && (__fits_16 (_ys)))) (fun (_yb : Nat) => ((Bool.true && (Bool.true && Bool.true)) && (__fits_17 (_ys) (_yb)))))) - -attribute [local irreducible] Reasoning.Budget.Burn.apply Reasoning.Budget.Tick.apply in -theorem __rel_10 (_ys : (Prod Nat Nat)) (_ystep : (Reasoning.Budget.Spend.Step Nat)) : _root_.LexLeanPreservation.FunRel __prog 10 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) _ys), (__enc_0 _ystep)] (_root_.LexLeanPreservation.Rel (__fits_10 _ys _ystep) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Reasoning.Budget.Spend.fire Nat _ys _ystep))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV __enc_0 (fun (__a : (Reasoning.Budget.Spend.Step Nat)) => ((fun (T : Type) (__a : (Reasoning.Budget.Spend.Step T)) (__k0 : Bool) (__k1 : ∀ (_yb : Nat), Bool) => (match __a with | Reasoning.Budget.Spend.Step.Tick => __k0 | Reasoning.Budget.Spend.Step.Burn _yb => __k1 _yb : Bool)) Nat __a (((Bool.true && Bool.true) && (__fits_16 (_ys)))) (fun (_yb : Nat) => ((Bool.true && (Bool.true && Bool.true)) && (__fits_17 (_ys) (_yb)))))) (fun (__a : (Reasoning.Budget.Spend.Step Nat)) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) ((fun (T : Type) (__a : (Reasoning.Budget.Spend.Step T)) (__k0 : (Option (Prod Nat Nat))) (__k1 : ∀ (_yb : Nat), (Option (Prod Nat Nat))) => (match __a with | Reasoning.Budget.Spend.Step.Tick => __k0 | Reasoning.Budget.Spend.Step.Burn _yb => __k1 _yb : (Option (Prod Nat Nat)))) Nat __a ((Reasoning.Budget.Tick.apply Nat (_ys))) (fun (_yb : Nat) => (Reasoning.Budget.Burn.apply Nat (_ys) (_yb))))) _ystep (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (Reasoning.Budget.Spend.Step Nat)) _ => match __a with | Reasoning.Budget.Spend.Step.Tick => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_16 (_ys)))) | Reasoning.Budget.Spend.Step.Burn _yb => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_17 (_ys) (_yb))))))) - -def __fits_5 (_ys : (Prod Nat Nat)) : Bool := - (((Bool.true && Bool.true) && (__fits_9 (_ys))) && ((fun (T : Type) (__a : (Option (Reasoning.Budget.Spend.Step T))) (__k0 : Bool) (__k1 : ∀ (_ystep : (Reasoning.Budget.Spend.Step T)), Bool) => (match __a with | Option.none => __k0 | Option.some _ystep => __k1 _ystep : Bool)) Nat (Reasoning.Budget.Spend.select Nat (_ys)) ((Bool.true && Bool.true)) (fun (_ystep : (Reasoning.Budget.Spend.Step Nat)) => ((Bool.true && (Bool.true && Bool.true)) && (__fits_10 (_ys) (_ystep)))))) - -attribute [local irreducible] Reasoning.Budget.Spend.fire Reasoning.Budget.Spend.select in -theorem __rel_5 (_ys : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 5 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) _ys)] (_root_.LexLeanPreservation.Rel (__fits_5 _ys) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (Reasoning.Budget.Spend.next Nat _ys))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption __enc_0) (fun (__a : (Option (Reasoning.Budget.Spend.Step Nat))) => ((fun (T : Type) (__a : (Option (Reasoning.Budget.Spend.Step T))) (__k0 : Bool) (__k1 : ∀ (_ystep : (Reasoning.Budget.Spend.Step T)), Bool) => (match __a with | Option.none => __k0 | Option.some _ystep => __k1 _ystep : Bool)) Nat __a ((Bool.true && Bool.true)) (fun (_ystep : (Reasoning.Budget.Spend.Step Nat)) => ((Bool.true && (Bool.true && Bool.true)) && (__fits_10 (_ys) (_ystep)))))) (fun (__a : (Option (Reasoning.Budget.Spend.Step Nat))) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) ((fun (T : Type) (__a : (Option (Reasoning.Budget.Spend.Step T))) (__k0 : (Option (Prod Nat Nat))) (__k1 : ∀ (_ystep : (Reasoning.Budget.Spend.Step T)), (Option (Prod Nat Nat))) => (match __a with | Option.none => __k0 | Option.some _ystep => __k1 _ystep : (Option (Prod Nat Nat)))) Nat __a ((Option.none : (Option (Prod Nat Nat)))) (fun (_ystep : (Reasoning.Budget.Spend.Step Nat)) => (Reasoning.Budget.Spend.fire Nat (_ys) (_ystep))))) (Reasoning.Budget.Spend.select Nat (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_9 (_ys))) (fun (__a : (Option (Reasoning.Budget.Spend.Step Nat))) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) | Option.some _ystep => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_10 (_ys) (_ystep))))))) - -def __fits_6 (x : (Prod Nat Nat)) : Bool := - ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((x).2 + (3 : Nat)) 18446744073709551616)) && Bool.true)) && Bool.true) - -theorem __rel_6 (x : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 6 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) x)] (_root_.LexLeanPreservation.Rel (__fits_6 x) ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Budget.Spend.observe Nat x))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (x).2 (3 : Nat))) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) - -def __fits_2 (x : (Prod Nat Nat)) : Bool := - ((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt ((x).2 + (4 : Nat)) 18446744073709551616)) && (((Bool.true && Bool.true) && (__fits_6 (x))) && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : (Prod Nat Nat)) => __fits_5 __p0) ((Reasoning.Budget.Spend.next Nat)) (((x).2 + (4 : Nat))) ((Reasoning.Budget.Spend.observe Nat (x))))) - -attribute [local irreducible] Reasoning.Budget.Spend.observe in -theorem __rel_2 (x : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 2 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) x)] (_root_.LexLeanPreservation.Rel (__fits_2 x) ((_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) _root_.LexLeanTarget.TargetSyntax.Value.bool) (Reasoning.Budget.Spend.saturate Nat x))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd (x).2 (4 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_6 (x))) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterateUntil (es := (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (_root_.LexLeanPreservation.optEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat)) (fun _ => rfl) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) ((Reasoning.Budget.Spend.next Nat)) (fun (__p0 : (Prod Nat Nat)) => __fits_5 __p0) 5 [] (fun (__p0 : (Prod Nat Nat)) => __rel_5 __p0) (_root_.LexLeanCollections.iterateUntil ((Reasoning.Budget.Spend.next Nat))) (fun _ => rfl) (fun _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (p := __prog) (fi := 4) (ts := (.pair .nat .nat)) rfl (((x).2 + (4 : Nat))) ((Reasoning.Budget.Spend.observe Nat (x))))) - -def __fits_8 (account : (Prod Nat Nat)) : Bool := - ((Bool.true && Bool.true) && Bool.true) - -theorem __rel_8 (account : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 8 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) account)] (_root_.LexLeanPreservation.Rel (__fits_8 account) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Budget.Spend.extract Nat account))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some) - -def __fits_11 (x : (Prod Nat Nat)) (r : Nat) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_11 (x : (Prod Nat Nat)) (r : Nat) : _root_.LexLeanPreservation.FunRel __prog 11 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) x), (_root_.LexLeanTarget.TargetSyntax.Value.nat r)] (_root_.LexLeanPreservation.Rel (__fits_11 x r) (_root_.LexLeanTarget.TargetSyntax.Value.bool (Reasoning.Budget.emptyCheck (Prod Nat Nat) x r))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natEq r (0 : Nat))) - -def __fits_7 (x : (Prod Nat Nat)) (_ys : (Prod Nat Nat)) : Bool := - (((Bool.true && Bool.true) && (__fits_8 (_ys))) && (match (Reasoning.Budget.Spend.extract Nat (_ys)) with | Option.none => (Bool.true && Bool.true) | Option.some _yv => (((Bool.true && (Bool.true && Bool.true)) && (__fits_11 (x) (_yv))) && (if (Reasoning.Budget.emptyCheck (Prod Nat Nat) (x) (_yv)) then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) - -attribute [local irreducible] Reasoning.Budget.Spend.extract Reasoning.Budget.emptyCheck in -theorem __rel_7 (x : (Prod Nat Nat)) (_ys : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 7 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) x), ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) _ys)] (_root_.LexLeanPreservation.Rel (__fits_7 x _ys) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Budget.Spend.accept Nat x _ys))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Option Nat)) => (match __a with | Option.none => (Bool.true && Bool.true) | Option.some _yv => (((Bool.true && (Bool.true && Bool.true)) && (__fits_11 (x) (_yv))) && (if (Reasoning.Budget.emptyCheck (Prod Nat Nat) (x) (_yv)) then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__a : (Option Nat)) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (match __a with | Option.none => (Option.none : (Option Nat)) | Option.some _yv => (if (Reasoning.Budget.emptyCheck (Prod Nat Nat) (x) (_yv)) then (Option.some (_yv) : (Option Nat)) else (Option.none : (Option Nat))))) (Reasoning.Budget.Spend.extract Nat (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_8 (_ys))) (fun (__a : (Option Nat)) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) | Option.some _yv => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Option.some (_yv) : (Option Nat)) else (Option.none : (Option Nat)))) (Reasoning.Budget.emptyCheck (Prod Nat Nat) (x) (_yv)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_11 (x) (_yv))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))))) - -def __fits_3 (x : (Prod Nat Nat)) (_ys : (Prod Nat Nat)) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && (__fits_7 (x) (_ys))) && (match (Reasoning.Budget.Spend.accept Nat (x) (_ys)) with | Option.some _yv => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_8 (_ys))) && (match (Reasoning.Budget.Spend.extract Nat (_ys)) with | Option.some _yv => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) - -attribute [local irreducible] Reasoning.Budget.Spend.accept Reasoning.Budget.Spend.extract in -theorem __rel_3 (x : (Prod Nat Nat)) (_ys : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 3 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) x), ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) _ys)] (_root_.LexLeanPreservation.Rel (__fits_3 x _ys) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Budget.Spend.conclude Nat x _ys))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Option Nat)) => (match __a with | Option.some _yv => ((Bool.true && Bool.true) && Bool.true) | Option.none => (((Bool.true && Bool.true) && (__fits_8 (_ys))) && (match (Reasoning.Budget.Spend.extract Nat (_ys)) with | Option.some _yv => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) (fun (__a : (Option Nat)) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (match __a with | Option.some _yv => (Except.ok (_yv) : (Except (Prod Bool Bool) Nat)) | Option.none => (match (Reasoning.Budget.Spend.extract Nat (_ys)) with | Option.some _yv => (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)) | Option.none => (Except.error (((Bool.false, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat))))) (Reasoning.Budget.Spend.accept Nat (x) (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_7 (x) (_ys))) (fun (__a : (Option Nat)) _ => match __a with | Option.some _yv => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_ok)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Option Nat)) => (match __a with | Option.some _yv => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) | Option.none => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__a : (Option Nat)) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (match __a with | Option.some _yv => (Except.error (((Bool.true, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)) | Option.none => (Except.error (((Bool.false, Bool.true) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)))) (Reasoning.Budget.Spend.extract Nat (_ys)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_8 (_ys))) (fun (__a : (Option Nat)) _ => match __a with | Option.some _yv => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error))))))))) - -def __fits_1 (x : (Prod Nat Nat)) : Bool := - (((Bool.true && Bool.true) && (__fits_2 (x))) && (let _yfinal : (Prod (Prod Nat Nat) Bool) := (Reasoning.Budget.Spend.saturate Nat (x)); (Bool.true && (match (_yfinal).2 with | Bool.true => ((Bool.true && (Bool.true && Bool.true)) && (__fits_3 (x) ((_yfinal).1))) | Bool.false => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))))) - -attribute [local irreducible] Reasoning.Budget.Spend.conclude Reasoning.Budget.Spend.saturate in -theorem __rel_1 (x : (Prod Nat Nat)) : _root_.LexLeanPreservation.FunRel __prog 1 [((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.nat) x)] (_root_.LexLeanPreservation.Rel (__fits_1 x) ((_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (Reasoning.Budget.Spend.verdict Nat x))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (let _yfinal : (Prod (Prod Nat Nat) Bool) := (Reasoning.Budget.Spend.saturate Nat (x)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_2 (x))) (_root_.LexLeanPreservation.conv_matchV _root_.LexLeanTarget.TargetSyntax.Value.bool (fun (__a : Bool) => (match __a with | Bool.true => ((Bool.true && (Bool.true && Bool.true)) && (__fits_3 (x) ((_yfinal).1))) | Bool.false => (((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__a : Bool) => (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (match __a with | Bool.true => (Reasoning.Budget.Spend.conclude Nat (x) ((_yfinal).1)) | Bool.false => (Except.error (((Bool.false, Bool.false) : (Prod Bool Bool))) : (Except (Prod Bool Bool) Nat)))) (_yfinal).2 (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl)) (fun (__a : Bool) _ => match __a with | Bool.true => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) _root_.LexLeanPreservation.convL_nil)) (__rel_3 (x) ((_yfinal).1)))) | Bool.false => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_error)))))) - -def __fits_0 (x : Nat) : Bool := - (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && (__fits_1 ((x, x)))) && (match (Reasoning.Budget.Spend.verdict Nat ((x, x))) with | Except.ok left => Bool.true | Except.error failure => Bool.true)) - -attribute [local irreducible] Reasoning.Budget.Spend.verdict in -theorem __rel_0 (x : Nat) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_0 x) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.spendLeft x))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encExcept (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.bool _root_.LexLeanTarget.TargetSyntax.Value.bool) _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun (__a : (Except (Prod Bool Bool) Nat)) => (match __a with | Except.ok left => Bool.true | Except.error failure => Bool.true)) (fun (__a : (Except (Prod Bool Bool) Nat)) => _root_.LexLeanTarget.TargetSyntax.Value.nat (match __a with | Except.ok left => left | Except.error failure => (9 : Nat))) (Reasoning.Budget.Spend.verdict Nat ((x, x))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) (__rel_1 ((x, x)))) (fun (__a : (Except (Prod Bool Bool) Nat)) _ => match __a with | Except.ok left => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | Except.error failure => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value)))) - -def denote (x : Nat) : _root_.LexLeanPreservation.Obs := - _root_.cond (__fits_0 x) (_root_.LexLeanPreservation.Obs.value ((_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.spendLeft x)))) _root_.LexLeanPreservation.Obs.overflow - -theorem root (x : Nat) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.nat x)] (_root_.LexLeanPreservation.Rel (__fits_0 x) (_root_.LexLeanTarget.TargetSyntax.Value.nat (Reasoning.Main.spendLeft x))) := - _root_.LexLeanPreservation.run_of_funRel (__rel_0 x) - -end LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7 diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R7/Compose/RustStd.lex.tex b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R7/Compose/RustStd.lex.tex deleted file mode 100644 index 17317d901..000000000 --- a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R7/Compose/RustStd.lex.tex +++ /dev/null @@ -1,505 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7, - LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.Compose.RustStd.__wt_0 : @18 := @398 { - all: [LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.Compose.RustStd.__wt_0], - class: false, - generated: false, - policy: exact{axioms: [propext]}, - transparency: semireducible -} -theorem LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.Compose.RustStd.root : @1017 := @1018 { - all: [LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.RustStd.program -@1 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.RustStd.krate -@2 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.RustStd.flags -@3 := Reasoning.Budget.Spend.Step -@4 := Nat -@5 := @3 @4 -@6 := #0 -@8 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.__enc_0 @6 -@9 := LexLeanPreservation.Rust.WT -@10 := LexLeanTarget.TargetSyntax.Ty.adt -@11 := 0 -@12 := @10 @11 -@13 := @9 @0 -@14 := @13 @1 -@15 := @14 @2 -@17 := @15 @8 @12 -@18 := (__v : @5) -> @17 -@19 := fun (__v : @5) => @17 -@20 := LexLeanTarget.TargetSyntax.Value -@21 := LexLeanTarget.TargetSyntax.Ty -@22 := List.nil.{0} -@23 := List.cons.{0} -@24 := @22 @20 -@25 := @22 @21 -@26 := LexLeanTarget.TargetSyntax.Program -@27 := LexLeanPreservation.Rust.RCrate -@28 := LexLeanPreservation.Rust.Flags -@29 := LexLeanPreservation.Rust.WTL -@30 := #2 -@31 := @29 @30 -@32 := #1 -@39 := {p : @26} -> {c : @27} -> {A : @28} -> @31 @32 @6 @24 @25 -@41 := LexLeanPreservation.Rust.wtl_nil @0 -@42 := @29 @0 -@48 := {c : @27} -> {A : @28} -> @42 @32 @6 @24 @25 -@49 := @41 @1 -@50 := @42 @1 -@54 := {A : @28} -> @50 @6 @24 @25 -@55 := @49 @2 -@56 := @50 @2 -@57 := @56 @24 -@58 := @57 @25 -@59 := List.{0} -@60 := @59 @20 -@61 := @59 @21 -@62 := Eq.{1} -@63 := Option.{0} -@64 := @63 @61 -@65 := @62 @64 -@66 := LexLeanPreservation.Rust.adtFields -@67 := #6 -@68 := @66 @67 -@69 := #3 -@72 := @65 (@68 @69 @30) -@73 := Option.some.{0} -@74 := @73 @61 -@75 := @74 @6 -@76 := @72 @75 -@77 := #7 -@79 := @29 @77 @67 -@80 := #5 -@83 := @79 @80 @30 @32 -@84 := #8 -@87 := @9 @84 @77 @67 -@88 := LexLeanTarget.TargetSyntax.Value.adt -@89 := #4 -@91 := @88 @89 @69 -@92 := @87 @91 -@93 := @10 @80 -@103 := {p : @26} -> - {c : @27} -> - {A : @28} -> - {i : @4} -> {k : @4} -> {fs : @60} -> {tys : @61} -> (h : @76) -> (hf : @83) -> @92 @93 -@105 := LexLeanPreservation.Rust.wt_adt @0 -@106 := @66 @0 -@110 := @65 (@106 @69 @30) @75 -@114 := @42 @67 @80 @30 @32 -@126 := {c : @27} -> - {A : @28} -> - {i : @4} -> - {k : @4} -> {fs : @60} -> {tys : @61} -> (h : @110) -> (hf : @114) -> @13 @77 @67 @91 @93 -@127 := @105 @1 -@130 := @50 @80 @30 @32 -@140 := {A : @28} -> - {i : @4} -> {k : @4} -> {fs : @60} -> {tys : @61} -> (h : @110) -> (hf : @130) -> @14 @67 @91 @93 -@141 := @127 @2 -@143 := @56 @30 @32 -@144 := @15 @91 -@151 := {i : @4} -> {k : @4} -> {fs : @60} -> {tys : @61} -> (h : @110) -> (hf : @143) -> @144 @93 -@152 := @141 @11 -@153 := @106 @11 -@162 := {k : @4} -> {fs : @60} -> {tys : @61} -> (h : @65 (@153 @30) @75) -> (hf : @143) -> @144 @12 -@163 := @152 @11 -@164 := @153 @11 -@165 := @65 @164 -@166 := @165 @75 -@167 := @88 @11 -@174 := {fs : @60} -> {tys : @61} -> (h : @166) -> (hf : @143) -> @15 (@167 @69) @12 -@175 := @163 @24 -@176 := @57 @32 -@179 := @15 (@167 @24) @12 -@182 := {tys : @61} -> (h : @166) -> (hf : @176) -> @179 -@183 := @175 @25 -@187 := (h : @165 (@74 @25)) -> (hf : @58) -> @179 -@188 := Eq.refl.{1} -@189 := @188 @64 -@192 := @183 (@189 @164) @55 -@193 := LexLeanTarget.TargetSyntax.Value.nat -@194 := @193 @6 -@195 := LexLeanTarget.TargetSyntax.Ty.nat -@204 := {p : @26} -> {c : @27} -> {A : @28} -> (n : @4) -> @9 @69 @30 @32 @194 @195 -@206 := LexLeanPreservation.Rust.wt_nat @0 -@213 := {c : @27} -> {A : @28} -> (n : @4) -> @13 @30 @32 @194 @195 -@214 := @206 @1 -@219 := {A : @28} -> (n : @4) -> @14 @32 @194 @195 -@220 := @214 @2 -@222 := @15 @194 @195 -@223 := (n : @4) -> @222 -@224 := @220 @6 -@225 := @23 @20 -@227 := @225 @194 @24 -@228 := @23 @21 -@229 := @228 @195 -@230 := @229 @25 -@235 := @9 @67 @80 @89 @69 @30 -@238 := @29 @84 @77 @67 -@240 := @225 @80 @69 -@241 := @238 @240 -@243 := @228 @89 @30 -@253 := {p : @26} -> - {c : @27} -> - {A : @28} -> - {v : @20} -> {t : @21} -> {vs : @60} -> {ts : @61} -> (h : @235) -> (hs : @83) -> @241 @243 -@255 := LexLeanPreservation.Rust.wtl_cons @0 -@271 := {c : @27} -> - {A : @28} -> - {v : @20} -> - {t : @21} -> - {vs : @60} -> {ts : @61} -> (h : @13 @80 @89 @69 @30) -> (hs : @114) -> @42 @77 @67 @240 @243 -@272 := @255 @1 -@285 := {A : @28} -> - {v : @20} -> - {t : @21} -> {vs : @60} -> {ts : @61} -> (h : @14 @89 @69 @30) -> (hs : @130) -> @50 @67 @240 @243 -@286 := @272 @2 -@296 := {v : @20} -> - {t : @21} -> {vs : @60} -> {ts : @61} -> (h : @15 @69 @30) -> (hs : @143) -> @56 @240 @243 -@297 := @286 @194 -@298 := @193 @69 -@299 := @15 @298 -@300 := @299 @30 -@301 := @193 @80 -@302 := @225 @301 -@304 := @56 (@302 @69) -@310 := {t : @21} -> {vs : @60} -> {ts : @61} -> (h : @300) -> (hs : @143) -> @304 @243 -@311 := @297 @195 -@312 := @193 @30 -@314 := @15 @312 @195 -@315 := @193 @89 -@316 := @225 @315 -@318 := @56 (@316 @69) -@319 := @229 @30 -@324 := {vs : @60} -> {ts : @61} -> (h : @314) -> (hs : @143) -> @318 @319 -@325 := @311 @24 -@326 := @193 @32 -@328 := @15 @326 @195 -@330 := @225 @298 @24 -@331 := @56 @330 -@335 := {ts : @61} -> (h : @328) -> (hs : @176) -> @331 @319 -@336 := @325 @25 -@338 := @225 @312 @24 -@339 := @56 @338 -@342 := (h : @222) -> (hs : @58) -> @339 @230 -@343 := @336 @224 -@345 := @225 @326 @24 -@346 := @56 @345 -@347 := @346 @230 -@348 := (hs : @58) -> @347 -@349 := @343 @55 -@351 := @56 @227 @230 -@352 := 1 -@353 := @152 @352 -@354 := @153 @352 -@355 := @65 @354 -@356 := @355 @75 -@357 := @88 @352 -@364 := {fs : @60} -> {tys : @61} -> (h : @356) -> (hf : @143) -> @15 (@357 @69) @12 -@365 := @353 @227 -@372 := {tys : @61} -> (h : @356) -> (hf : @339 @32) -> @15 (@357 @330) @12 -@373 := @365 @230 -@380 := (h : @355 (@74 @230)) -> (hf : @347) -> @15 (@357 @338) @12 -@382 := @373 (@189 @354) -@386 := (hf : @351) -> @15 (@357 @345) @12 -@387 := @382 @349 -@390 := @15 (@357 @227) @12 -@391 := fun (__x0 : @4) => @387 -@398 := fun (__v : @5) => Reasoning.Budget.Spend.Step.casesOn.{0} @4 @19 @6 @192 @391 -@399 := @220 @32 -@402 := Prod.{0, 0} @4 @20 -@406 := Prod.mk.{0, 0} @4 @20 @11 -@407 := @406 @326 -@408 := @22 @402 -@409 := @23 @402 -@411 := @409 @407 @408 -@412 := Bool.true -@413 := LexLeanTarget.TargetSyntax.Function -@414 := LexLeanTarget.TargetSyntax.Program.functions -@415 := @414 @0 -@416 := @22 @4 -@417 := LexLeanTarget.TargetSyntax.Ty.unit -@418 := LexLeanTarget.TargetSyntax.Value.unit -@421 := LexLeanTarget.TargetSyntax.Expr.value @417 @418 -@426 := LexLeanTarget.TargetSyntax.Function.mk @416 @25 @417 @421 -@431 := List.getD.{0} @413 @415 @11 @426 -@435 := fun (__e_n : @4) => LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.RustStd.root @6 @11 -@436 := @286 @326 -@438 := @15 @315 @30 -@439 := @193 @67 -@440 := @225 @439 -@448 := {t : @21} -> {vs : @60} -> {ts : @61} -> (h : @438) -> (hs : @143) -> @56 (@440 @69) @243 -@449 := @436 @195 -@455 := {vs : @60} -> {ts : @61} -> (h : @299 @195) -> (hs : @143) -> @304 @319 -@456 := @449 @24 -@457 := @316 @24 -@458 := @56 @457 -@462 := {ts : @61} -> (h : @314) -> (hs : @176) -> @458 @319 -@463 := @456 @25 -@466 := (h : @328) -> (hs : @58) -> @331 @230 -@468 := @463 @399 @55 -@469 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.denote -@470 := @469 @32 -@471 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.__fits_0 -@472 := @471 @32 -@475 := @193 (Reasoning.Main.spendLeft @32) -@477 := LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.root @32 -@478 := Bool -@479 := Ne.{1} -@480 := LexLeanPreservation.Obs -@481 := @479 @480 -@482 := LexLeanPreservation.Rel -@485 := @481 (@482 @32 @6) -@486 := LexLeanPreservation.Obs.stuck -@489 := (f : @478) -> (v : @20) -> @485 @486 -@491 := LexLeanPreservation.Rust.rel_ne_stuck @472 -@497 := (v : @20) -> @481 (@482 (@471 @30) @6) @486 -@498 := @491 @475 -@502 := @481 (@482 @472 @475) @486 -@503 := @59 @402 -@504 := LexLeanPreservation.Rust.FunSem -@505 := #9 -@511 := (n : @4) -> @504 @505 @84 @77 @6 @67 -@512 := @63 @413 -@513 := @62 @512 -@520 := LexLeanRuntime.index (@59 @413) @413 (LexLeanRuntime.instIndexableList @413) -@524 := @513 (@520 (@414 @505) @67) -@525 := @73 @413 -@526 := @525 @80 -@527 := @524 @526 -@528 := #10 -@532 := @29 @528 @505 @84 @80 -@533 := LexLeanTarget.TargetSyntax.Function.types -@534 := @533 @67 -@535 := @532 @534 -@536 := @63 @503 -@537 := @62 @536 -@538 := LexLeanTarget.TargetSemantics.bindAll -@539 := LexLeanTarget.TargetSyntax.Function.parameters -@544 := @537 (@538 (@539 @77) @67 @408) -@545 := @73 @503 -@546 := @545 @80 -@547 := @544 @546 -@548 := @63 @478 -@549 := @62 @548 -@550 := LexLeanPreservation.Rust.fnFallible -@551 := #11 -@554 := @549 (@550 @551 @505) -@555 := @73 @478 -@556 := @555 @80 -@557 := @554 @556 -@558 := LexLeanPreservation.RunConv -@559 := #13 -@563 := @558 @559 @528 @84 @80 -@565 := @481 @67 @486 -@566 := Exists.{1} -@567 := LexLeanPreservation.Rust.ROut -@568 := @566 @567 -@569 := And -@570 := LexLeanPreservation.Rust.RealizesFn -@574 := @569 (@570 @505 @84 @6) -@575 := LexLeanPreservation.Rust.RCI -@577 := @575 #15 -@578 := LexLeanPreservation.Rust.fnIdent -@579 := @578 @559 -@586 := (hne : @565) -> @568 (fun (ro : @567) => @574 (@577 @579 @551 @6)) -@601 := {p : @26} -> - {c : @27} -> - {A : @28} -> - {f : @4} -> - {fn : @413} -> - {args : @60} -> - {env : @503} -> - {F : @478} -> - {o : @480} -> - (hB : @511) -> - (hfn : @527) -> (hwt : @535) -> (hbind : @547) -> (hF : @557) -> (hA : @563) -> @586 -@603 := LexLeanPreservation.Rust.compose @0 -@604 := @504 @0 -@609 := (n : @4) -> @604 @84 @77 @6 @67 -@610 := @520 @415 -@613 := @513 (@610 @67) @526 -@617 := @42 @505 @84 @80 @534 -@618 := @558 @0 -@621 := @618 @528 @84 @80 -@635 := {c : @27} -> - {A : @28} -> - {f : @4} -> - {fn : @413} -> - {args : @60} -> - {env : @503} -> - {F : @478} -> - {o : @480} -> - (hB : @609) -> - (hfn : @613) -> (hwt : @617) -> (hbind : @547) -> (hF : @557) -> (hA : @621) -> @586 -@636 := @603 @1 -@637 := @604 @1 -@641 := (n : @4) -> @637 @77 @6 @67 -@644 := @50 @84 @80 @534 -@645 := @550 @1 -@648 := @549 (@645 @505) @556 -@649 := @575 @1 -@659 := (hbind : @547) -> - (hF : @648) -> (hA : @621) -> (hne : @565) -> @568 (fun (ro : @567) => @574 (@649 @579 @551 @6)) -@669 := {A : @28} -> - {f : @4} -> - {fn : @413} -> - {args : @60} -> - {env : @503} -> {F : @478} -> {o : @480} -> (hB : @641) -> (hfn : @613) -> (hwt : @644) -> @659 -@670 := @636 @2 -@672 := @637 @2 @6 -@674 := (n : @4) -> @672 @67 -@675 := @56 @80 -@676 := @675 @534 -@685 := {f : @4} -> - {fn : @413} -> - {args : @60} -> - {env : @503} -> {F : @478} -> {o : @480} -> (hB : @674) -> (hfn : @613) -> (hwt : @676) -> @659 -@686 := @670 @11 -@688 := (n : @4) -> @672 @11 -@689 := @610 @11 -@690 := @513 @689 -@691 := @690 @526 -@692 := @645 @11 -@693 := @549 @692 -@694 := @693 @556 -@695 := @618 @11 -@697 := @695 @84 @80 -@699 := @649 (@578 @11) -@707 := (hF : @694) -> (hA : @697) -> (hne : @565) -> @568 (fun (ro : @567) => @574 (@699 @551 @6)) -@716 := {fn : @413} -> - {args : @60} -> - {env : @503} -> - {F : @478} -> {o : @480} -> (hB : @688) -> (hfn : @691) -> (hwt : @676) -> (hbind : @547) -> @707 -@717 := @686 @431 -@719 := @690 (@525 @431) -@720 := @533 @431 -@721 := @675 @720 -@723 := @538 (@539 @431) -@735 := {args : @60} -> - {env : @503} -> - {F : @478} -> - {o : @480} -> - (hB : @688) -> (hfn : @719) -> (hwt : @721) -> (hbind : @537 (@723 @67 @408) @546) -> @707 -@736 := @717 @345 -@737 := @440 @24 -@739 := @56 @737 @720 -@742 := @225 (@193 @77) @24 -@746 := @537 (@723 @742 @408) @546 -@749 := @225 (@193 @505) @24 -@770 := {env : @503} -> - {F : @478} -> - {o : @480} -> - (hB : @688) -> - (hfn : @719) -> - (hwt : @739) -> - (hbind : @746) -> - (hF : @694) -> - (hA : @695 @749 @80) -> - (hne : @565) -> @568 (fun (ro : @567) => @574 (@699 (@225 (@193 #12) @24) @6)) -@771 := @736 @411 -@772 := @302 @24 -@774 := @56 @772 @720 -@782 := @537 (@723 @737 @408) (@545 (@409 (@406 @439) @408)) -@785 := @225 (@193 @84) @24 -@804 := {F : @478} -> - {o : @480} -> - (hB : @688) -> - (hfn : @719) -> - (hwt : @774) -> - (hbind : @782) -> - (hF : @694) -> - (hA : @695 @785 @80) -> - (hne : @565) -> @568 (fun (ro : @567) => @574 (@699 (@225 (@193 @551) @24) @6)) -@805 := @771 @412 -@806 := @458 @720 -@814 := @537 (@723 @772 @408) (@545 (@409 (@406 @301) @408)) -@816 := @693 (@555 @412) -@818 := @695 @742 @80 -@819 := @570 @412 -@838 := {o : @480} -> - (hB : @688) -> - (hfn : @719) -> - (hwt : @806) -> - (hbind : @814) -> - (hF : @816) -> - (hA : @818) -> - (hne : @565) -> @568 (fun (ro : @567) => @569 (@819 @84 @6) (@699 (@225 (@193 @528) @24) @6)) -@839 := @805 @470 -@840 := @331 @720 -@848 := @537 (@723 @457 @408) (@545 (@409 (@406 @315) @408)) -@849 := @695 @737 -@850 := @469 @67 -@851 := @849 @850 -@852 := @469 @77 -@870 := (hB : @688) -> - (hfn : @719) -> - (hwt : @840) -> - (hbind : @848) -> - (hF : @816) -> - (hA : @851) -> - (hne : @481 @852 @486) -> @568 (fun (ro : @567) => @569 (@819 (@469 @505) @6) (@699 @749 @6)) -@871 := @839 @435 -@872 := @339 @720 -@880 := @537 (@723 @330 @408) (@545 (@409 (@406 @298) @408)) -@881 := @695 @772 -@882 := @469 @80 -@900 := (hfn : @719) -> - (hwt : @872) -> - (hbind : @880) -> - (hF : @816) -> - (hA : @881 @882) -> - (hne : @481 @850 @486) -> @568 (fun (ro : @567) => @569 (@819 (@469 @84) @6) (@699 @785 @6)) -@903 := @871 (@188 @512 @689) -@904 := @346 @720 -@912 := @537 (@723 @338 @408) (@545 (@409 (@406 @312) @408)) -@913 := @695 @457 -@914 := @469 @89 -@930 := (hwt : @904) -> - (hbind : @912) -> - (hF : @816) -> - (hA : @913 @914) -> - (hne : @481 @882 @486) -> @568 (fun (ro : @567) => @569 (@819 @852 @6) (@699 @742 @6)) -@931 := @903 @468 -@933 := @723 @345 @408 -@936 := @537 @933 (@545 @411) -@937 := @695 @330 -@938 := @469 @69 -@953 := (hbind : @936) -> - (hF : @816) -> - (hA : @937 @938) -> - (hne : @481 @914 @486) -> @568 (fun (ro : @567) => @569 (@819 @850 @6) (@699 @737 @6)) -@956 := @931 (@188 @536 @933) -@957 := @695 @338 -@958 := @469 @30 -@972 := (hF : @816) -> - (hA : @957 @958) -> - (hne : @481 @938 @486) -> @568 (fun (ro : @567) => @569 (@819 @882 @6) (@699 @772 @6)) -@975 := @956 (@188 @548 @692) -@989 := (hA : @695 @345 @470) -> - (hne : @481 @958 @486) -> @568 (fun (ro : @567) => @569 (@819 @914 @6) (@699 @457 @6)) -@990 := @975 @477 -@1001 := (hne : @481 @470 @486) -> @568 (fun (ro : @567) => @569 (@819 @938 @6) (@699 @330 @6)) -@1002 := @990 @498 -@1008 := @569 (@819 @958 @6) (@699 @338 @6) -@1010 := @568 (fun (ro : @567) => @1008) -@1012 := @568 (fun (__e_ro : @567) => @1008) -@1014 := LexLeanPreservation.Rust.RepresentableL @227 -@1015 := (__e_hrep : @1014) -> @1012 -@1016 := fun (__e_hrep : @1014) => @1002 -@1017 := (x : @4) -> @1015 -@1018 := fun (x : @4) => @1016 -\end{coremodule} -\end{lexlean} diff --git a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R7/RustStd.lean b/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R7/RustStd.lean deleted file mode 100644 index 077bc85f5..000000000 --- a/examples/reasoning/expected/verify/preserve/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R7/RustStd.lean +++ /dev/null @@ -1,198 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [{ constructors := [[], [.nat]] }], functions := [ - { parameters := [0], types := [.nat], result := .nat, - body := (.«match» .nat (.call 1 [(.build .pair (.pair .nat .nat) [(.var 0), (.var 0)])]) [(.arm .ok [1] (.var 1)), (.arm .error [2] (.value .nat (.nat 9)))]) }, - { parameters := [0], types := [(.pair .nat .nat)], result := (.result .nat (.pair .bool .bool)), - body := (.«let» 1 (.pair (.pair .nat .nat) .bool) (.call 2 [(.var 0)]) (.«match» (.result .nat (.pair .bool .bool)) (.second (.var 1)) [(.arm .true [] (.call 3 [(.var 0), (.first (.var 1))])), (.arm .false [] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .false .bool [])])]))])) }, - { parameters := [0], types := [(.pair .nat .nat)], result := (.pair (.pair .nat .nat) .bool), - body := (.call 4 [(.closure 5 []), (.prim .natAdd [(.second (.var 0)), (.value .nat (.nat 4))]), (.call 6 [(.var 0)])]) }, - { parameters := [0, 1], types := [(.pair .nat .nat), (.pair .nat .nat)], result := (.result .nat (.pair .bool .bool)), - body := (.«match» (.result .nat (.pair .bool .bool)) (.call 7 [(.var 0), (.var 1)]) [(.arm .some [2] (.build .ok (.result .nat (.pair .bool .bool)) [(.var 2)])), (.arm .none [] (.«match» (.result .nat (.pair .bool .bool)) (.call 8 [(.var 1)]) [(.arm .some [3] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .true .bool []), (.build .false .bool [])])])), (.arm .none [] (.build .error (.result .nat (.pair .bool .bool)) [(.build .pair (.pair .bool .bool) [(.build .false .bool []), (.build .true .bool [])])]))]))]) }, - { parameters := [0, 1, 2], types := [(.fn [(.pair .nat .nat)] (.option (.pair .nat .nat))), .nat, (.pair .nat .nat)], result := (.pair (.pair .nat .nat) .bool), - body := (.«match» (.pair (.pair .nat .nat) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.pair .nat .nat) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.pair .nat .nat) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.pair .nat .nat) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 4 [(.var 0), (.var 3), (.var 4)]))]))]) }, - { parameters := [0], types := [(.pair .nat .nat)], result := (.option (.pair .nat .nat)), - body := (.«match» (.option (.pair .nat .nat)) (.call 9 [(.var 0)]) [(.arm .none [] (.build .none (.option (.pair .nat .nat)) [])), (.arm .some [1] (.call 10 [(.var 0), (.var 1)]))]) }, - { parameters := [0], types := [(.pair .nat .nat)], result := (.pair .nat .nat), - body := (.build .pair (.pair .nat .nat) [(.first (.var 0)), (.prim .natAdd [(.second (.var 0)), (.value .nat (.nat 3))])]) }, - { parameters := [0, 1], types := [(.pair .nat .nat), (.pair .nat .nat)], result := (.option .nat), - body := (.«match» (.option .nat) (.call 8 [(.var 1)]) [(.arm .none [] (.build .none (.option .nat) [])), (.arm .some [2] (.cond (.call 11 [(.var 0), (.var 2)]) (.build .some (.option .nat) [(.var 2)]) (.build .none (.option .nat) [])))]) }, - { parameters := [0], types := [(.pair .nat .nat)], result := (.option .nat), - body := (.build .some (.option .nat) [(.second (.var 0))]) }, - { parameters := [0], types := [(.pair .nat .nat)], result := (.option (.adt 0)), - body := (.«match» (.option (.adt 0)) (.cond (.call 12 [(.var 0)]) (.build .some (.option (.adt 0)) [(.build (.adt 0) (.adt 0) [])]) (.build .none (.option (.adt 0)) [])) [(.arm .some [1] (.build .some (.option (.adt 0)) [(.var 1)])), (.arm .none [] (.call 13 [(.closure 14 [(.var 0)]), (.build .none (.option (.adt 0)) []), (.call 15 [(.var 0)])]))]) }, - { parameters := [0, 1], types := [(.pair .nat .nat), (.adt 0)], result := (.option (.pair .nat .nat)), - body := (.«match» (.option (.pair .nat .nat)) (.var 1) [(.arm (.adt 0) [] (.call 16 [(.var 0)])), (.arm (.adt 1) [2] (.call 17 [(.var 0), (.var 2)]))]) }, - { parameters := [0, 1], types := [(.pair .nat .nat), .nat], result := .bool, - body := (.prim .natEq [(.var 1), (.value .nat (.nat 0))]) }, - { parameters := [0], types := [(.pair .nat .nat)], result := .bool, - body := (.prim .natLt [(.value .nat (.nat 2)), (.second (.var 0))]) }, - { parameters := [0, 1, 2], types := [(.fn [(.option (.adt 0)), .nat] (.option (.adt 0))), (.option (.adt 0)), (.list .nat)], result := (.option (.adt 0)), - body := (.«match» (.option (.adt 0)) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 13 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, - { parameters := [0, 1, 2], types := [(.pair .nat .nat), (.option (.adt 0)), .nat], result := (.option (.adt 0)), - body := (.«match» (.option (.adt 0)) (.var 1) [(.arm .some [3] (.build .some (.option (.adt 0)) [(.var 3)])), (.arm .none [] (.cond (.call 18 [(.var 0), (.var 2)]) (.build .some (.option (.adt 0)) [(.build (.adt 1) (.adt 0) [(.var 2)])]) (.build .none (.option (.adt 0)) [])))]) }, - { parameters := [0], types := [(.pair .nat .nat)], result := (.list .nat), - body := (.build .cons (.list .nat) [(.value .nat (.nat 2)), (.build .cons (.list .nat) [(.value .nat (.nat 1)), (.build .nil (.list .nat) [])])]) }, - { parameters := [0], types := [(.pair .nat .nat)], result := (.option (.pair .nat .nat)), - body := (.cond (.call 12 [(.var 0)]) (.build .some (.option (.pair .nat .nat)) [(.call 19 [(.var 0)])]) (.build .none (.option (.pair .nat .nat)) [])) }, - { parameters := [0, 1], types := [(.pair .nat .nat), .nat], result := (.option (.pair .nat .nat)), - body := (.cond (.call 18 [(.var 0), (.var 1)]) (.build .some (.option (.pair .nat .nat)) [(.call 20 [(.var 0), (.var 1)])]) (.build .none (.option (.pair .nat .nat)) [])) }, - { parameters := [0, 1], types := [(.pair .nat .nat), .nat], result := .bool, - body := (.cond (.prim .natLe [(.var 1), (.second (.var 0))]) (.prim .natLt [(.value .nat (.nat 0)), (.var 1)]) (.build .false .bool [])) }, - { parameters := [0], types := [(.pair .nat .nat)], result := (.pair .nat .nat), - body := (.build .pair (.pair .nat .nat) [(.first (.var 0)), (.prim .natSub [(.second (.var 0)), (.value .nat (.nat 1))])]) }, - { parameters := [0, 1], types := [(.pair .nat .nat), .nat], result := (.pair .nat .nat), - body := (.build .pair (.pair .nat .nat) [(.first (.var 0)), (.prim .natSub [(.second (.var 0)), (.var 1)])]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.enum (.adt 0) [{ number := 0, fields := [] }, { number := 1, fields := [.nat] }]), - (.enum (.fn 0) [{ number := 5, fields := [] }]), - (.apply 0 [(.pair .nat .nat)] (.option (.pair .nat .nat)) false [{ function := 5, captures := [], functionFallible := false }]), - (.enum (.fn 1) [{ number := 14, fields := [(.pair .nat .nat)] }]), - (.apply 1 [(.option (.adt 0)), .nat] (.option (.adt 0)) false [{ function := 14, captures := [.copy], functionFallible := false }]), - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .nat }] (.fallible .nat) (.mk [(.mk (.bind (.generated .holder 1)) none (.call (.function 1) [(.pair (.copy (.generated .binding 0)) (.copy (.generated .binding 0)))] true))] (.matchOn (.move (.generated .holder 1)) [(.mk (.ok (.bind (.generated .binding 1))) (.mk [] (.succeed (.copy (.generated .binding 1))))), (.mk (.err .wild) (.mk [] (.succeed (.lit (.nat 9)))))]))), - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }] (.fallible (.result .nat (.pair .bool .bool))) (.mk [(.mk (.bind (.generated .binding 1)) (some (.pair (.pair .nat .nat) .bool)) (.call (.function 2) [(.copy (.generated .binding 0))] true)), (.mk (.bind (.generated .holder 3)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 2))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 2)))))] (.cond (.move (.generated .holder 3)) (.mk [] (.succeed (.call (.function 3) [(.copy (.generated .binding 0)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 4)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 4))))] false))) (.mk [] (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))])))))), - (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }] (.fallible (.pair (.pair .nat .nat) .bool)) (.mk [] (.succeed (.call (.function 4) [(.construct (.closure 0 5) []), (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 5))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 5))))), (.mk (.bind (.generated .operand 7)) none (.lit (.nat 4)))] (.call (.runtime .natAdd) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] true))), (.call (.function 6) [(.copy (.generated .binding 0))] true)] false)))), - (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }, { pattern := (.bind (.generated .binding 1)), type := (.pair .nat .nat) }] (.result .nat (.pair .bool .bool)) (.mk [(.mk (.bind (.generated .holder 8)) none (.call (.function 7) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 8)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 9)) none (.call (.function 8) [(.copy (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 9)) [(.mk .none (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))]))), (.mk (.some .wild) (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))])))]))), - (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := (.pair .nat .nat) }] (.pair (.pair .nat .nat) .bool) (.mk [(.mk (.bind (.generated .holder 10)) none (.copy (.generated .binding 1)))] (.cond (.isZero (.generated .holder 10)) (.mk [] (.pair (.copy (.generated .binding 2)) (.lit (.bool false)))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 10))), (.mk (.bind (.generated .holder 12)) none (.block (.mk [(.mk (.bind (.generated .callee 11)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 11) [(.copy (.generated .binding 2))] false))))] (.matchOn (.move (.generated .holder 12)) [(.mk .none (.mk [] (.pair (.copy (.generated .binding 2)) (.lit (.bool true))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)))]))))), - (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }] (.option (.pair .nat .nat)) (.mk [(.mk (.bind (.generated .holder 13)) none (.call (.function 9) [(.copy (.generated .binding 0))] false))] (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [] (.construct (.none (.pair .nat .nat)) []))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.call (.function 10) [(.copy (.generated .binding 0)), (.move (.generated .binding 1))] false)))]))), - (.function (.generated .function 6) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }] (.fallible (.pair .nat .nat)) (.mk [] (.succeed (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 14)))) (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 15))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 15))))), (.mk (.bind (.generated .operand 17)) none (.lit (.nat 3)))] (.call (.runtime .natAdd) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] true))))))), - (.function (.generated .function 7) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }, { pattern := (.bind (.generated .binding 1)), type := (.pair .nat .nat) }] (.option .nat) (.mk [(.mk (.bind (.generated .holder 18)) none (.call (.function 8) [(.copy (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 18)) [(.mk .none (.mk [] (.construct (.none .nat) []))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.cond (.call (.function 11) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.mk [] (.construct .some [(.copy (.generated .binding 2))])) (.mk [] (.construct (.none .nat) [])))))]))), - (.function (.generated .function 8) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }] (.option .nat) (.mk [] (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 19))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 19))))]))), - (.function (.generated .function 9) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }] (.option (.adt 0)) (.mk [(.mk (.bind (.generated .holder 20)) none (.cond (.call (.function 12) [(.copy (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 0 0) [])])) (.mk [] (.construct (.none (.adt 0)) []))))] (.matchOn (.move (.generated .holder 20)) [(.mk .none (.mk [] (.call (.function 13) [(.construct (.closure 1 14) [(.copy (.generated .binding 0))]), (.construct (.none (.adt 0)) []), (.call (.function 15) [(.copy (.generated .binding 0))] false)] false))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.construct .some [(.move (.generated .binding 1))])))]))), - (.function (.generated .function 10) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }, { pattern := (.bind (.generated .binding 1)), type := (.adt 0) }] (.option (.pair .nat .nat)) (.mk [(.mk (.bind (.generated .holder 21)) none (.move (.generated .binding 1)))] (.matchOn (.move (.generated .holder 21)) [(.mk (.adt 0 0 []) (.mk [] (.call (.function 16) [(.copy (.generated .binding 0))] false))), (.mk (.adt 0 1 [(.bind (.generated .binding 2))]) (.mk [] (.call (.function 17) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] false)))]))), - (.function (.generated .function 11) [{ pattern := .wild, type := (.pair .nat .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .operand 22)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 23)) none (.lit (.nat 0)))] (.call (.runtime .natEq) [(.move (.generated .operand 22)), (.move (.generated .operand 23))] false))), - (.function (.generated .function 12) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }] .bool (.mk [(.mk (.bind (.generated .operand 25)) none (.lit (.nat 2))), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 24))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 24)))))] (.call (.runtime .natLt) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))), - (.function (.generated .function 13) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 1) }, { pattern := (.bind (.generated .binding 1)), type := (.option (.adt 0)) }, { pattern := (.bind (.generated .binding 2)), type := (.list .nat) }] (.option (.adt 0)) (.mk [(.mk (.bind (.generated .holder 27)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 27)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 13) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 28)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 28) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]))), - (.function (.generated .function 14) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }, { pattern := (.bind (.generated .binding 1)), type := (.option (.adt 0)) }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.option (.adt 0)) (.mk [(.mk (.bind (.generated .holder 29)) none (.move (.generated .binding 1)))] (.matchOn (.move (.generated .holder 29)) [(.mk .none (.mk [] (.cond (.call (.function 18) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.mk [] (.construct .some [(.construct (.adt 0 1) [(.copy (.generated .binding 2))])])) (.mk [] (.construct (.none (.adt 0)) []))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.construct .some [(.move (.generated .binding 3))])))]))), - (.function (.generated .function 15) [{ pattern := .wild, type := (.pair .nat .nat) }] (.list .nat) (.mk [] (.construct .cons [(.lit (.nat 2)), (.construct .cons [(.lit (.nat 1)), (.construct (.nil .nat) [])])]))), - (.function (.generated .function 16) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }] (.option (.pair .nat .nat)) (.mk [] (.cond (.call (.function 12) [(.copy (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 19) [(.copy (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.pair .nat .nat)) []))))), - (.function (.generated .function 17) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.option (.pair .nat .nat)) (.mk [] (.cond (.call (.function 18) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false) (.mk [] (.construct .some [(.call (.function 20) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false)])) (.mk [] (.construct (.none (.pair .nat .nat)) []))))), - (.function (.generated .function 18) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .operand 31)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 32)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 30))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 30)))))] (.cond (.call (.runtime .natLe) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false) (.mk [(.mk (.bind (.generated .operand 33)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 34)) none (.copy (.generated .binding 1)))] (.call (.runtime .natLt) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false)) (.mk [] (.lit (.bool false)))))), - (.function (.generated .function 19) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }] (.pair .nat .nat) (.mk [] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 35)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 35)))) (.block (.mk [(.mk (.bind (.generated .operand 37)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 36))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 36))))), (.mk (.bind (.generated .operand 38)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 37)), (.move (.generated .operand 38))] false)))))), - (.function (.generated .function 20) [{ pattern := (.bind (.generated .binding 0)), type := (.pair .nat .nat) }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.pair .nat .nat) (.mk [] (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 39)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 39)))) (.block (.mk [(.mk (.bind (.generated .operand 41)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 40))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 40))))), (.mk (.bind (.generated .operand 42)) none (.copy (.generated .binding 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 41)), (.move (.generated .operand 42))] false))))))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [(([(.pair .nat .nat)], (.option (.pair .nat .nat))), false), (([(.option (.adt 0)), .nat], (.option (.adt 0))), false)] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.call (.function 1) [(.pair (.copy (.generated .binding 0)) (.copy (.generated .binding 0)))] true))], (.matchOn (.move (.generated .holder 1)) [(.mk (.ok (.bind (.generated .binding 1))) (.mk [] (.succeed (.copy (.generated .binding 1))))), (.mk (.err .wild) (.mk [] (.succeed (.lit (.nat 9)))))]), [(0, .nat, (some 0))], rfl, rfl, - (Corr.matchArms (st := (.result .nat (.pair .bool .bool))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, .nat, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.copy (.generated .binding 1)))) (Corr.mCons (Γ' := [(2, (.pair .bool .bool), none), (0, .nat, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.lit (.nat 9)))) (Corr.mNil) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.value rfl rfl)))) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.var rfl rfl)))) rfl rfl rfl)⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some (.pair (.pair .nat .nat) .bool)) (.call (.function 2) [(.copy (.generated .binding 0))] true)), (.mk (.bind (.generated .holder 3)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 2))]) none (.copy (.generated .binding 1)))] (.move (.generated .part 2)))))], (.cond (.move (.generated .holder 3)) (.mk [] (.succeed (.call (.function 3) [(.copy (.generated .binding 0)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 4)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 4))))] false))) (.mk [] (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))])))), [(0, (.pair .nat .nat), (some 0))], rfl, rfl, - (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.matchBool (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 2))]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 2))) (Corr.second (ta := (.pair .nat .nat)) (tb := .bool) (Corr.var rfl rfl) rfl)) rfl rfl (Corr.kIf (la := []) (ta := (.succeed (.call (.function 3) [(.copy (.generated .binding 0)), (.block (.mk [(.mk (.tuple [(.bind (.generated .part 4)), .wild]) none (.copy (.generated .binding 1)))] (.move (.generated .part 4))))] false))) (lb := []) (tb := (.succeed (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool false)))]))) (Corr.fOfB (Corr.callOps (ts := [(.pair .nat .nat), (.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 4)), .wild]) none (.copy (.generated .binding 1)))]) (tail := (.move (.generated .part 4))) (Corr.first (ta := (.pair .nat .nat)) (tb := .bool) (Corr.var rfl rfl) rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.fOfB (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)))))⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [], (.succeed (.call (.function 4) [(.construct (.closure 0 5) []), (.block (.mk [(.mk (.bind (.generated .operand 6)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 5))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 5))))), (.mk (.bind (.generated .operand 7)) none (.lit (.nat 4)))] (.call (.runtime .natAdd) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] true))), (.call (.function 6) [(.copy (.generated .binding 0))] true)] false)), [(0, (.pair .nat .nat), (some 0))], rfl, rfl, - (Corr.fOfB (Corr.callOps (ts := [(.fn [(.pair .nat .nat)] (.option (.pair .nat .nat))), .nat, (.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := false) (ff := false) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 6)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 5))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 5))))), (.mk (.bind (.generated .operand 7)) none (.lit (.nat 4)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 5))]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 5))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl))⟩⟩ - -theorem fun3 : FunOK program krate flags 3 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 8)) none (.call (.function 7) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false))], (.matchOn (.move (.generated .holder 8)) [(.mk .none (.mk [(.mk (.bind (.generated .holder 9)) none (.call (.function 8) [(.copy (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 9)) [(.mk .none (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))]))), (.mk (.some .wild) (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))]))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))])))]), [(1, (.pair .nat .nat), (some 1)), (0, (.pair .nat .nat), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat), (.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.pair .nat .nat), (some 1)), (0, (.pair .nat .nat), (some 0))]) (j := 1) (loads := []) (lets := [(.mk (.bind (.generated .holder 9)) none (.call (.function 8) [(.copy (.generated .binding 1))] false))]) (tail := (.matchOn (.move (.generated .holder 9)) [(.mk .none (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))]))), (.mk (.some .wild) (.mk [] (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])))])) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, (.pair .nat .nat), (some 1)), (0, (.pair .nat .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.ok .nat (.pair .bool .bool)) [(.copy (.generated .binding 2))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.pair .nat .nat), (some 1)), (0, (.pair .nat .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool false)) (.lit (.bool true)))])) (Corr.mCons (Γ' := [(3, .nat, none), (1, (.pair .nat .nat), (some 1)), (0, (.pair .nat .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.err .nat (.pair .bool .bool)) [(.pair (.lit (.bool true)) (.lit (.bool false)))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.build (ts := [(.pair .bool .bool)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.buildConst rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))) (Corr.lNil))) rfl)) rfl rfl rfl)) rfl rfl rfl)⟩⟩ - -theorem fun4 : FunOK program krate flags 4 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 10)) none (.copy (.generated .binding 1)))], (.cond (.isZero (.generated .holder 10)) (.mk [] (.pair (.copy (.generated .binding 2)) (.lit (.bool false)))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 10))), (.mk (.bind (.generated .holder 12)) none (.block (.mk [(.mk (.bind (.generated .callee 11)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 11) [(.copy (.generated .binding 2))] false))))] (.matchOn (.move (.generated .holder 12)) [(.mk .none (.mk [] (.pair (.copy (.generated .binding 2)) (.lit (.bool true))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)))]))), [(2, (.pair .nat .nat), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.pair .nat .nat)] (.option (.pair .nat .nat))), (some 0))], rfl, rfl, - (Corr.matchNat (sl := (some 3)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.pair (.copy (.generated .binding 2)) (.lit (.bool false)))) (lb := [(.mk (.bind (.generated .holder 12)) none (.block (.mk [(.mk (.bind (.generated .callee 11)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 11) [(.copy (.generated .binding 2))] false))))]) (tb := (.matchOn (.move (.generated .holder 12)) [(.mk .none (.mk [] (.pair (.copy (.generated .binding 2)) (.lit (.bool true))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)))])) (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))))) (Corr.matchArms (st := (.option (.pair .nat .nat))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 11)) (some (.fn 0)) (.clone (.generated .binding 0)))]) (tail := (.apply (.generated .callee 11) [(.copy (.generated .binding 2))] false)) (Corr.apply (ps := [(.pair .nat .nat)]) (af := false) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (2, (.pair .nat .nat), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.pair .nat .nat)] (.option (.pair .nat .nat))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.pair (.copy (.generated .binding 2)) (.lit (.bool true)))) (Corr.mCons (Γ' := [(4, (.pair .nat .nat), (some 4)), (3, .nat, (some 3)), (2, (.pair .nat .nat), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.pair .nat .nat)] (.option (.pair .nat .nat))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.fn [(.pair .nat .nat)] (.option (.pair .nat .nat))), .nat, (.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))))) rfl rfl rfl)))⟩⟩ - -theorem fun5 : FunOK program krate flags 5 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 13)) none (.call (.function 9) [(.copy (.generated .binding 0))] false))], (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [] (.construct (.none (.pair .nat .nat)) []))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.call (.function 10) [(.copy (.generated .binding 0)), (.move (.generated .binding 1))] false)))]), [(0, (.pair .nat .nat), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option (.adt 0))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(0, (.pair .nat .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none (.pair .nat .nat)) [])) (Corr.mCons (Γ' := [(1, (.adt 0), (some 1)), (0, (.pair .nat .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 10) [(.copy (.generated .binding 0)), (.move (.generated .binding 1))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.pair .nat .nat), (.adt 0)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun6 : FunOK program krate flags 6 := - ⟨_, rfl, .inl ⟨_, _, [], (.succeed (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 14)))) (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 15))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 15))))), (.mk (.bind (.generated .operand 17)) none (.lit (.nat 3)))] (.call (.runtime .natAdd) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] true))))), [(0, (.pair .nat .nat), (some 0))], rfl, rfl, - (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 14)), .wild]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 14))) (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 16)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 15))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 15))))), (.mk (.bind (.generated .operand 17)) none (.lit (.nat 3)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 15))]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 15))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))))⟩⟩ - -theorem fun7 : FunOK program krate flags 7 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 18)) none (.call (.function 8) [(.copy (.generated .binding 1))] false))], (.matchOn (.move (.generated .holder 18)) [(.mk .none (.mk [] (.construct (.none .nat) []))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.cond (.call (.function 11) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.mk [] (.construct .some [(.copy (.generated .binding 2))])) (.mk [] (.construct (.none .nat) [])))))]), [(1, (.pair .nat .nat), (some 1)), (0, (.pair .nat .nat), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, (.pair .nat .nat), (some 1)), (0, (.pair .nat .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct (.none .nat) [])) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, (.pair .nat .nat), (some 1)), (0, (.pair .nat .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 11) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.mk [] (.construct .some [(.copy (.generated .binding 2))])) (.mk [] (.construct (.none .nat) [])))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 11) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] false)) (lk := []) (Corr.callOps (ts := [(.pair .nat .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.copy (.generated .binding 2))])) (lb := []) (tb := (.construct (.none .nat) [])) (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) rfl rfl rfl (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) rfl rfl rfl)⟩⟩ - -theorem fun8 : FunOK program krate flags 8 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct .some [(.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 19))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 19))))]), [(0, (.pair .nat .nat), (some 0))], rfl, rfl, - (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 19))]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 19))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lNil))) rfl)⟩⟩ - -theorem fun9 : FunOK program krate flags 9 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 20)) none (.cond (.call (.function 12) [(.copy (.generated .binding 0))] false) (.mk [] (.construct .some [(.construct (.adt 0 0) [])])) (.mk [] (.construct (.none (.adt 0)) []))))], (.matchOn (.move (.generated .holder 20)) [(.mk .none (.mk [] (.call (.function 13) [(.construct (.closure 1 14) [(.copy (.generated .binding 0))]), (.construct (.none (.adt 0)) []), (.call (.function 15) [(.copy (.generated .binding 0))] false)] false))), (.mk (.some (.bind (.generated .binding 1))) (.mk [] (.construct .some [(.move (.generated .binding 1))])))]), [(0, (.pair .nat .nat), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option (.adt 0))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.cond (lc := []) (ce := (.call (.function 12) [(.copy (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 0 0) [])])) (lb := []) (tb := (.construct (.none (.adt 0)) [])) (Corr.build (ts := [(.adt 0)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) (Corr.mCons (Γ' := [(0, (.pair .nat .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 13) [(.construct (.closure 1 14) [(.copy (.generated .binding 0))]), (.construct (.none (.adt 0)) []), (.call (.function 15) [(.copy (.generated .binding 0))] false)] false)) (Corr.mCons (Γ' := [(1, (.adt 0), (some 1)), (0, (.pair .nat .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.move (.generated .binding 1))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.adt 0)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.callOps (ts := [(.fn [(.option (.adt 0)), .nat] (.option (.adt 0))), (.option (.adt 0)), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [(.pair .nat .nat)]) (mask := [false]) (af := false) (ff := false) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl rfl rfl)⟩⟩ - -theorem fun10 : FunOK program krate flags 10 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 21)) none (.move (.generated .binding 1)))], (.matchOn (.move (.generated .holder 21)) [(.mk (.adt 0 0 []) (.mk [] (.call (.function 16) [(.copy (.generated .binding 0))] false))), (.mk (.adt 0 1 [(.bind (.generated .binding 2))]) (.mk [] (.call (.function 17) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] false)))]), [(1, (.adt 0), (some 1)), (0, (.pair .nat .nat), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.adt 0)) (U := []) (view := false) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(1, (.adt 0), (some 1)), (0, (.pair .nat .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.call (.function 16) [(.copy (.generated .binding 0))] false)) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, (.adt 0), (some 1)), (0, (.pair .nat .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 17) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.pair .nat .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl rfl rfl)⟩⟩ - -theorem fun11 : FunOK program krate flags 11 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 22)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 23)) none (.lit (.nat 0)))], (.call (.runtime .natEq) [(.move (.generated .operand 22)), (.move (.generated .operand 23))] false), [(1, .nat, (some 1)), (0, (.pair .nat .nat), none)], rfl, rfl, - (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun12 : FunOK program krate flags 12 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 25)) none (.lit (.nat 2))), (.mk (.bind (.generated .operand 26)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 24))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 24)))))], (.call (.runtime .natLt) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false), [(0, (.pair .nat .nat), (some 0))], rfl, rfl, - (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 24))]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 24))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun13 : FunOK program krate flags 13 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 27)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 27)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 13) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 28)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 28) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]), [(2, (.list .nat), (some 2)), (1, (.option (.adt 0)), (some 1)), (0, (.fn [(.option (.adt 0)), .nat] (.option (.adt 0))), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .nat)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .nat), (some 2)), (1, (.option (.adt 0)), (some 1)), (0, (.fn [(.option (.adt 0)), .nat] (.option (.adt 0))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 1))) (Corr.mCons (Γ' := [(4, (.list .nat), (some 4)), (3, .nat, (some 3)), (2, (.list .nat), (some 2)), (1, (.option (.adt 0)), (some 1)), (0, (.fn [(.option (.adt 0)), .nat] (.option (.adt 0))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 13) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 28)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 28) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.fn [(.option (.adt 0)), .nat] (.option (.adt 0))), (.option (.adt 0)), (.list .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 28)) (some (.fn 1)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 28) [(.move (.generated .binding 1)), (.copy (.generated .binding 3))] false)) (Corr.apply (ps := [(.option (.adt 0)), .nat]) (af := false) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ - -theorem fun14 : FunOK program krate flags 14 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 29)) none (.move (.generated .binding 1)))], (.matchOn (.move (.generated .holder 29)) [(.mk .none (.mk [] (.cond (.call (.function 18) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.mk [] (.construct .some [(.construct (.adt 0 1) [(.copy (.generated .binding 2))])])) (.mk [] (.construct (.none (.adt 0)) []))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.construct .some [(.move (.generated .binding 3))])))]), [(2, .nat, (some 2)), (1, (.option (.adt 0)), (some 1)), (0, (.pair .nat .nat), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option (.adt 0))) (U := []) (view := false) (idx := [1, 0]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, (.option (.adt 0)), (some 1)), (0, (.pair .nat .nat), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.cond (.call (.function 18) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] false) (.mk [] (.construct .some [(.construct (.adt 0 1) [(.copy (.generated .binding 2))])])) (.mk [] (.construct (.none (.adt 0)) [])))) (Corr.mCons (Γ' := [(3, (.adt 0), (some 3)), (2, .nat, (some 2)), (1, (.option (.adt 0)), (some 1)), (0, (.pair .nat .nat), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.move (.generated .binding 3))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [(.adt 0)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.cond (lc := []) (ce := (.call (.function 18) [(.copy (.generated .binding 0)), (.copy (.generated .binding 2))] false)) (lk := []) (Corr.callOps (ts := [(.pair .nat .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.construct (.adt 0 1) [(.copy (.generated .binding 2))])])) (lb := []) (tb := (.construct (.none (.adt 0)) [])) (Corr.build (ts := [(.adt 0)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) rfl rfl rfl)⟩⟩ - -theorem fun15 : FunOK program krate flags 15 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct .cons [(.lit (.nat 2)), (.construct .cons [(.lit (.nat 1)), (.construct (.nil .nat) [])])]), [(0, (.pair .nat .nat), none)], rfl, rfl, - (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.nat, (.list .nat)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil)))) rfl)⟩⟩ - -theorem fun16 : FunOK program krate flags 16 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 12) [(.copy (.generated .binding 0))] false) (.mk [] (.construct .some [(.call (.function 19) [(.copy (.generated .binding 0))] false)])) (.mk [] (.construct (.none (.pair .nat .nat)) []))), [(0, (.pair .nat .nat), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 12) [(.copy (.generated .binding 0))] false)) (lk := []) (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 19) [(.copy (.generated .binding 0))] false)])) (lb := []) (tb := (.construct (.none (.pair .nat .nat)) [])) (Corr.build (ts := [(.pair .nat .nat)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ - -theorem fun17 : FunOK program krate flags 17 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 18) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false) (.mk [] (.construct .some [(.call (.function 20) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false)])) (.mk [] (.construct (.none (.pair .nat .nat)) []))), [(1, .nat, (some 1)), (0, (.pair .nat .nat), (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 18) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false)) (lk := []) (Corr.callOps (ts := [(.pair .nat .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.call (.function 20) [(.copy (.generated .binding 0)), (.copy (.generated .binding 1))] false)])) (lb := []) (tb := (.construct (.none (.pair .nat .nat)) [])) (Corr.build (ts := [(.pair .nat .nat)]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [(.pair .nat .nat), .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ - -theorem fun18 : FunOK program krate flags 18 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 31)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 32)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 30))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 30)))))], (.cond (.call (.runtime .natLe) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false) (.mk [(.mk (.bind (.generated .operand 33)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 34)) none (.copy (.generated .binding 1)))] (.call (.runtime .natLt) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false)) (.mk [] (.lit (.bool false)))), [(1, .nat, (some 1)), (0, (.pair .nat .nat), (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 31)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 32)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 30))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 30)))))]) (ce := (.call (.runtime .natLe) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 30))]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 30))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .operand 33)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 34)) none (.copy (.generated .binding 1)))]) (ta := (.call (.runtime .natLt) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false)) (lb := []) (tb := (.lit (.bool false))) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))⟩⟩ - -theorem fun19 : FunOK program krate flags 19 := - ⟨_, rfl, .inl ⟨_, _, [], (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 35)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 35)))) (.block (.mk [(.mk (.bind (.generated .operand 37)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 36))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 36))))), (.mk (.bind (.generated .operand 38)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 37)), (.move (.generated .operand 38))] false)))), [(0, (.pair .nat .nat), (some 0))], rfl, rfl, - (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 35)), .wild]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 35))) (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 37)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 36))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 36))))), (.mk (.bind (.generated .operand 38)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 37)), (.move (.generated .operand 38))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 36))]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 36))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))))⟩⟩ - -theorem fun20 : FunOK program krate flags 20 := - ⟨_, rfl, .inl ⟨_, _, [], (.pair (.block (.mk [(.mk (.tuple [(.bind (.generated .part 39)), .wild]) none (.copy (.generated .binding 0)))] (.move (.generated .part 39)))) (.block (.mk [(.mk (.bind (.generated .operand 41)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 40))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 40))))), (.mk (.bind (.generated .operand 42)) none (.copy (.generated .binding 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 41)), (.move (.generated .operand 42))] false)))), [(1, .nat, (some 1)), (0, (.pair .nat .nat), (some 0))], rfl, rfl, - (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 39)), .wild]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 39))) (Corr.first (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 41)) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 40))]) none (.copy (.generated .binding 0)))] (.move (.generated .part 40))))), (.mk (.bind (.generated .operand 42)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 41)), (.move (.generated .operand 42))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 40))]) none (.copy (.generated .binding 0)))]) (tail := (.move (.generated .part 40))) (Corr.second (ta := .nat) (tb := .nat) (Corr.var rfl rfl) rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | 3 => exact fun3 - | 4 => exact fun4 - | 5 => exact fun5 - | 6 => exact fun6 - | 7 => exact fun7 - | 8 => exact fun8 - | 9 => exact fun9 - | 10 => exact fun10 - | 11 => exact fun11 - | 12 => exact fun12 - | 13 => exact fun13 - | 14 => exact fun14 - | 15 => exact fun15 - | 16 => exact fun16 - | 17 => exact fun17 - | 18 => exact fun18 - | 19 => exact fun19 - | 20 => exact fun20 - | _ + 21 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.RustStd diff --git a/examples/reasoning/expected/verify/preserve/audit.txt b/examples/reasoning/expected/verify/preserve/audit.txt index 60c30237c..d77d46704 100644 --- a/examples/reasoning/expected/verify/preserve/audit.txt +++ b/examples/reasoning/expected/verify/preserve/audit.txt @@ -7737,87 +7737,87 @@ 'LexLeanPreservation.encOption.eq_2' does not depend on any axioms 'LexLeanPreservation.encPair.eq_1' does not depend on any axioms 'LexLeanPreservation.encUnit.eq_1' does not depend on any axioms -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.RustCore.root' depends on axioms: [propext, +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.RustCore.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.RustCore.root' depends on axioms: [propext, +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.RustCore.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.RustCore.root' depends on axioms: [propext, +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.RustCore.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.Compose.RustCore.root' depends on axioms: [propext, +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.Compose.RustCore.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.Compose.RustCore.root' depends on axioms: [propext, +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.Compose.RustCore.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.Compose.RustCore.root' depends on axioms: [propext, +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.Compose.RustCore.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.Compose.RustCore.__wt_0' depends on axioms: [propext] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.Compose.RustCore.__wt_1' depends on axioms: [propext] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.Compose.RustCore.__wt_2' depends on axioms: [propext] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.Compose.RustCore.__wt_0' depends on axioms: [propext] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.Compose.RustCore.__wt_1' depends on axioms: [propext] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.Compose.RustCore.__wt_2' depends on axioms: [propext] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.Compose.RustStd.__wt_0' depends on axioms: [propext] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.Compose.RustStd.__wt_1' depends on axioms: [propext] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.Compose.RustStd.__wt_3' depends on axioms: [propext] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.Compose.RustStd.__wt_4' depends on axioms: [propext] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.Compose.RustStd.__wt_2' depends on axioms: [propext] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.Compose.RustStd.__wt_0' depends on axioms: [propext] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.Compose.RustStd.__wt_2' depends on axioms: [propext] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.Compose.RustStd.__wt_3' depends on axioms: [propext] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.Compose.RustStd.__wt_1' depends on axioms: [propext] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.Compose.RustStd.__wt_1' depends on axioms: [propext] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.Compose.RustStd.__wt_0' depends on axioms: [propext] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.Compose.RustCore.__wt_0' depends on axioms: [propext] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.Compose.RustCore.__wt_1' depends on axioms: [propext] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.Compose.RustCore.__wt_2' depends on axioms: [propext] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.Compose.RustStd.__wt_0' depends on axioms: [propext] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.Compose.RustStd.__wt_2' depends on axioms: [propext] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.Compose.RustStd.__wt_3' depends on axioms: [propext] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.Compose.RustStd.__wt_1' depends on axioms: [propext] -'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.Compose.RustStd.__wt_0' depends on axioms: [propext] +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.Compose.RustCore.__wt_0' depends on axioms: [propext] +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.Compose.RustCore.__wt_1' depends on axioms: [propext] +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.Compose.RustCore.__wt_2' depends on axioms: [propext] +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.Compose.RustCore.__wt_0' depends on axioms: [propext] +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.Compose.RustCore.__wt_1' depends on axioms: [propext] +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.Compose.RustCore.__wt_2' depends on axioms: [propext] +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.Compose.RustStd.__wt_0' depends on axioms: [propext] +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.Compose.RustStd.__wt_1' depends on axioms: [propext] +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.Compose.RustStd.__wt_3' depends on axioms: [propext] +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.Compose.RustStd.__wt_4' depends on axioms: [propext] +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.Compose.RustStd.__wt_2' depends on axioms: [propext] +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.Compose.RustStd.__wt_0' depends on axioms: [propext] +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.Compose.RustStd.__wt_2' depends on axioms: [propext] +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.Compose.RustStd.__wt_3' depends on axioms: [propext] +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.Compose.RustStd.__wt_1' depends on axioms: [propext] +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.Compose.RustStd.__wt_1' depends on axioms: [propext] +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.Compose.RustStd.__wt_0' depends on axioms: [propext] +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.Compose.RustCore.__wt_0' depends on axioms: [propext] +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.Compose.RustCore.__wt_1' depends on axioms: [propext] +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.Compose.RustCore.__wt_2' depends on axioms: [propext] +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.Compose.RustStd.__wt_0' depends on axioms: [propext] +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.Compose.RustStd.__wt_2' depends on axioms: [propext] +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.Compose.RustStd.__wt_3' depends on axioms: [propext] +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.Compose.RustStd.__wt_1' depends on axioms: [propext] +'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.Compose.RustStd.__wt_0' depends on axioms: [propext] -- statement vocabulary inductive LexLeanPreservation.Obs : Type number of parameters: 0 diff --git a/examples/reasoning/expected/verify/preserve/preservation.json b/examples/reasoning/expected/verify/preserve/preservation.json index 3a68f8ab5..7ecfeefa0 100644 --- a/examples/reasoning/expected/verify/preserve/preservation.json +++ b/examples/reasoning/expected/verify/preserve/preservation.json @@ -1 +1 @@ -{"library":{"axioms":["Classical.choice","Quot.sound","propext"],"registry_sha256":"02de6e4be5a6ae43997bacd3713ea587693b8ac66da4aef567463a535a076ff3"},"roots":[{"byte_length":141533,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0","program":{"byte_length":36186,"sha256":"3f39f0a6f1b7639eb1a021d09aa351a8a51cde520fe0d8fcb48317283f1e3d63"},"renderings":[{"byte_length":187486,"composed":{"byte_length":40145,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.Compose.RustCore","sha256":"a2c0301da210dab60d6803fb6577b079cc7b0312a48216f638bdc6db10742466","theorem":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.Compose.RustCore.root"},"crate":{"byte_length":25957,"sha256":"373227b883bed3b90092ff7c99c97a8a2479213d7c773852355fff7648beaf0e"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.RustCore","sha256":"d6b552e9ea64409ee280d5238150eb4ef9c7a4fbb4dfec223eb691be18900176","target":"rust-core","theorem":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.RustCore.root"}],"root":"Reasoning.Main.triageLevel","sha256":"e251d9992ef5291f7e5d639a420026776c9828a97ac3f438265ba2df07af2422","targets":["rust-core"],"theorem":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.root"},{"byte_length":143432,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1","program":{"byte_length":36679,"sha256":"9e2f7386e9b0f0c3f8861e9e54bba15353cc8c7b465664f5e992b8210e83815f"},"renderings":[{"byte_length":188860,"composed":{"byte_length":40146,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.Compose.RustCore","sha256":"67e19566c699345d6b60eb67e0959b0da41b47a4ec61b9c1644a67afc9197d94","theorem":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.Compose.RustCore.root"},"crate":{"byte_length":26098,"sha256":"ac88de1419f5c1f6ed9e589a800cfc4afcf42b55c77f46b29c439164d44f68c7"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.RustCore","sha256":"fc3fcbef23fc687eacb7d0ff49fe1ff57083f05ecebaaee69aa5eedfaba3fee8","target":"rust-core","theorem":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.RustCore.root"}],"root":"Reasoning.Main.gatewayLevel","sha256":"f1c4fc5c40775945cd40145dcc66683d73f9f3d361e8d22abd85cf201e290a64","targets":["rust-core"],"theorem":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.root"},{"byte_length":189369,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2","program":{"byte_length":47876,"sha256":"2a46e167d6afdf96fd1c4ed4ddd462c30eb1ab849e08b0847f3c4aa87ab5fd0a"},"renderings":[{"byte_length":283431,"composed":{"byte_length":52908,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.Compose.RustStd","sha256":"bcfd58fdb6ba76f2ad1e6755b0ddd53cf3bb033b1d9bbef578319f9d66802afb","theorem":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.Compose.RustStd.root"},"crate":{"byte_length":45349,"sha256":"5cdcbdf73202f418deae91f5ed3daf71e8457190441c122784ee1fa157a61251"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.RustStd","sha256":"1f5ca143f0433a7a8e40dcc86279bbd48fea424d7083dc8c11f2e20a4048a3a1","target":"rust-std","theorem":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.RustStd.root"}],"root":"Reasoning.Main.triageSteps","sha256":"daff208b855acde6eae0e01133edfb1a6140cb0b8ddb70fe8c1db4d684d62b4f","targets":["rust-std"],"theorem":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.root"},{"byte_length":153403,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3","program":{"byte_length":41744,"sha256":"9a5f37cae3bc362991271aa26ace2db53c7ca9c38618a34455fbc70882ae476d"},"renderings":[{"byte_length":230142,"composed":{"byte_length":40309,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.Compose.RustStd","sha256":"b8580d10ad0021ffa286fb659a6a527093f491a2829cb5d2e274edf552910b82","theorem":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.Compose.RustStd.root"},"crate":{"byte_length":39550,"sha256":"b66e8320820654694b9a745a745a90017dcfa9a7713e85d44d8257fd7d3d9c51"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.RustStd","sha256":"d132a127844445892e0a098f5aa86677b57be20556cba2d00e0dd47f25c05b82","target":"rust-std","theorem":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.RustStd.root"}],"root":"Reasoning.Main.planLeft","sha256":"393401ac128d692455975eef5765a53bf9bf446ce2360eee91f43a247d09a900","targets":["rust-std"],"theorem":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.root"},{"byte_length":42541,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4","program":{"byte_length":11798,"sha256":"3a65f411f6eb41c898bd2f895719b295fbc8afaefc20212dfc8e111f582a3db5"},"renderings":[{"byte_length":62656,"composed":{"byte_length":26344,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.Compose.RustStd","sha256":"cf932715eb80ae8de2cb66f88e54d54e86d373bf9e0ded534418ec355d47ea76","theorem":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.Compose.RustStd.root"},"crate":{"byte_length":20147,"sha256":"7ffb7b92f94e45432a616d2778e61294d980f58e03d30392ae519e3002aaa41b"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.RustStd","sha256":"220b1ad8412bb6f6f16c4725d8aeebdb2c26727bdc55069ebaa179dd023fa11a","target":"rust-std","theorem":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.RustStd.root"}],"root":"Reasoning.Main.doseLevel","sha256":"6f0ff3838fed7fd5983279be7a2feb844d9c4dc493167c6226c859e3ad4bcda5","targets":["rust-std"],"theorem":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.root"},{"byte_length":130194,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5","program":{"byte_length":33983,"sha256":"96c393acd11d0f45f881f960db3eba8734d1115aa71b0b73b3e73d13f08a0488"},"renderings":[{"byte_length":175999,"composed":{"byte_length":40138,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.Compose.RustCore","sha256":"c1792bb58d9131a2500fa32081accbc4210ace88d3da5d200014105b0b60f4b1","theorem":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.Compose.RustCore.root"},"crate":{"byte_length":24856,"sha256":"e759aefcfa353eb5202d08cc08c7dcc378cd0994d8be42bca802c174d340d28d"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.RustCore","sha256":"5cdfa0bc29cc62617b372939fc535b119e5feb540bdd1339754a8f2b39ee1b39","target":"rust-core","theorem":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.RustCore.root"}],"root":"Reasoning.Main.gradeLevel","sha256":"bf749ace929f36f8b2e44415812731d34c075dbf7e447e8990a8555a879d7c1b","targets":["rust-core"],"theorem":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.root"},{"byte_length":115327,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6","program":{"byte_length":28344,"sha256":"8c9c2a16fb25398ae97777f69e934175246b5e37acece648c6661c6f3dfc7282"},"renderings":[{"byte_length":164251,"composed":{"byte_length":37686,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.Compose.RustStd","sha256":"ff497ce3a362480e715eb99221f55974d6e54e20b7e8317ec22fa264538a3957","theorem":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.Compose.RustStd.root"},"crate":{"byte_length":32915,"sha256":"224dabc5daa77c8128eb9d49f2dcd528155354328a75b0129ec1818f247b918c"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.RustStd","sha256":"5a2b0e79a485ab69286f85baf018d32e69ccaa6bc60cfc8029938e46dadf59b5","target":"rust-std","theorem":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.RustStd.root"}],"root":"Reasoning.Main.screenDose","sha256":"99dafd6b2949d8ed162f59eac1582098e4919f2e05bea897d20a44c48774726e","targets":["rust-std"],"theorem":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.root"},{"byte_length":60908,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7","program":{"byte_length":16614,"sha256":"bf95bba329a7f73d9a7036f8fd91df829a4b615b2c3a7249c9998238687ecfee"},"renderings":[{"byte_length":57695,"composed":{"byte_length":15068,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.Compose.RustStd","sha256":"83d2570feae86addb42a386840096221896957032e05971e73b9ece1ba272bb6","theorem":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.Compose.RustStd.root"},"crate":{"byte_length":18308,"sha256":"2d2db53b580aa55f9a76a185cbcde3ca8a0689b2607c2f3fc11e2b94fb89ac8d"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.RustStd","sha256":"410f6b0dd5af6a88fab4852a92df79b4114e81936e80869cf67bc8844f388af2","target":"rust-std","theorem":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.RustStd.root"}],"root":"Reasoning.Main.spendLeft","sha256":"f9bf011aa76fa33f4f10a97bab173de85b689587f6b139cca3cbfe533185e5d9","targets":["rust-std"],"theorem":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.root"}],"spec":"lexlean/preservation/1"} +{"library":{"axioms":["Classical.choice","Quot.sound","propext"],"registry_sha256":"02de6e4be5a6ae43997bacd3713ea587693b8ac66da4aef567463a535a076ff3"},"roots":[{"byte_length":141533,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0","program":{"byte_length":36186,"sha256":"3f39f0a6f1b7639eb1a021d09aa351a8a51cde520fe0d8fcb48317283f1e3d63"},"renderings":[{"byte_length":187486,"composed":{"byte_length":40145,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.Compose.RustCore","sha256":"b089a1743ecee9d7b1dfe372daf429f59cba6039f376e65d010ca5cc4ca6abd7","theorem":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.Compose.RustCore.root"},"crate":{"byte_length":25957,"sha256":"373227b883bed3b90092ff7c99c97a8a2479213d7c773852355fff7648beaf0e"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.RustCore","sha256":"129c8839b8251bbc66dd2fa21a346bbead890fc844b16f7324ff6afcbd089ff5","target":"rust-core","theorem":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.RustCore.root"}],"root":"Reasoning.Main.triageLevel","sha256":"6d931edd65201a0687e0d78d1935c15a346a7d38943f596025f833150152d7cf","targets":["rust-core"],"theorem":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.root"},{"byte_length":143432,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1","program":{"byte_length":36679,"sha256":"9e2f7386e9b0f0c3f8861e9e54bba15353cc8c7b465664f5e992b8210e83815f"},"renderings":[{"byte_length":188860,"composed":{"byte_length":40146,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.Compose.RustCore","sha256":"529947bc5a38deff9a87d8bc5a14383855185160ed44ade11e5aeae2419fa8e6","theorem":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.Compose.RustCore.root"},"crate":{"byte_length":26098,"sha256":"ac88de1419f5c1f6ed9e589a800cfc4afcf42b55c77f46b29c439164d44f68c7"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.RustCore","sha256":"19893039d5fbbeedc9f52e6a164ce1e6446b70f10c4039045d9906fbbdad306d","target":"rust-core","theorem":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.RustCore.root"}],"root":"Reasoning.Main.gatewayLevel","sha256":"7834c82cee2acd672cff509252b95bec2f0f12ff46884943a9c1f625ac2e7fcc","targets":["rust-core"],"theorem":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.root"},{"byte_length":189369,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2","program":{"byte_length":47876,"sha256":"2a46e167d6afdf96fd1c4ed4ddd462c30eb1ab849e08b0847f3c4aa87ab5fd0a"},"renderings":[{"byte_length":283431,"composed":{"byte_length":52908,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.Compose.RustStd","sha256":"b14901ef3cd58d847ce5dca6168fec407abae9497aa9113721741e3954ab5ae6","theorem":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.Compose.RustStd.root"},"crate":{"byte_length":45349,"sha256":"5cdcbdf73202f418deae91f5ed3daf71e8457190441c122784ee1fa157a61251"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.RustStd","sha256":"afbfe76986b0d469e5614fc48b306b1b26876f07199c3fb4ac2385b5c6082636","target":"rust-std","theorem":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.RustStd.root"}],"root":"Reasoning.Main.triageSteps","sha256":"76b25d48d9d1edf0cbae68c88841332997feb4b2d655bec0054cf1b4592c5231","targets":["rust-std"],"theorem":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.root"},{"byte_length":153403,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3","program":{"byte_length":41744,"sha256":"9a5f37cae3bc362991271aa26ace2db53c7ca9c38618a34455fbc70882ae476d"},"renderings":[{"byte_length":230142,"composed":{"byte_length":40309,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.Compose.RustStd","sha256":"6eefd5fba3b0d4021345822c01b5d51301032e936850b4604b2e325039b5cb4a","theorem":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.Compose.RustStd.root"},"crate":{"byte_length":39550,"sha256":"b66e8320820654694b9a745a745a90017dcfa9a7713e85d44d8257fd7d3d9c51"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.RustStd","sha256":"a306162189011986ef2c90b655188604a4112124f22f90dfb033defec3becd7d","target":"rust-std","theorem":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.RustStd.root"}],"root":"Reasoning.Main.planLeft","sha256":"6c9228c8b3b6744b319409c747139a28c5af163655e40a7e74da158020a8844f","targets":["rust-std"],"theorem":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.root"},{"byte_length":42541,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4","program":{"byte_length":11798,"sha256":"3a65f411f6eb41c898bd2f895719b295fbc8afaefc20212dfc8e111f582a3db5"},"renderings":[{"byte_length":62656,"composed":{"byte_length":26344,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.Compose.RustStd","sha256":"4541e31eaede4d4a7f573e96b126f70e4c4a8a97140f4e4194587b37885c0ccf","theorem":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.Compose.RustStd.root"},"crate":{"byte_length":20147,"sha256":"7ffb7b92f94e45432a616d2778e61294d980f58e03d30392ae519e3002aaa41b"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.RustStd","sha256":"96681239481935f504de7b225ea8444892d518d4d862adf73e45e7fc5a0263cf","target":"rust-std","theorem":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.RustStd.root"}],"root":"Reasoning.Main.doseLevel","sha256":"bcd79a067840f7ddc0d73b32e8838d2608b92cdc73aea1252299a4455e51afaf","targets":["rust-std"],"theorem":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.root"},{"byte_length":130194,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5","program":{"byte_length":33983,"sha256":"96c393acd11d0f45f881f960db3eba8734d1115aa71b0b73b3e73d13f08a0488"},"renderings":[{"byte_length":175999,"composed":{"byte_length":40138,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.Compose.RustCore","sha256":"d53300edefaa8d26841182eba15b664ea2187c4a3885b14d5cf540cc7fb2dbe7","theorem":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.Compose.RustCore.root"},"crate":{"byte_length":24856,"sha256":"e759aefcfa353eb5202d08cc08c7dcc378cd0994d8be42bca802c174d340d28d"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.RustCore","sha256":"a7ed2c277148fd809c9d5d4bb56dd331b0207321a62559580939dcc7d6188ddd","target":"rust-core","theorem":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.RustCore.root"}],"root":"Reasoning.Main.gradeLevel","sha256":"f22a6d765489283fa3e793eea7cec2b0489cf27495ad01023e80b258dda6187f","targets":["rust-core"],"theorem":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.root"},{"byte_length":115327,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6","program":{"byte_length":28344,"sha256":"8c9c2a16fb25398ae97777f69e934175246b5e37acece648c6661c6f3dfc7282"},"renderings":[{"byte_length":164251,"composed":{"byte_length":37686,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.Compose.RustStd","sha256":"b539432d995d0bbcf9302ce8327f8d3d8ba845b52d242b9ac45293f36c596042","theorem":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.Compose.RustStd.root"},"crate":{"byte_length":32915,"sha256":"224dabc5daa77c8128eb9d49f2dcd528155354328a75b0129ec1818f247b918c"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.RustStd","sha256":"5d1d9f62e2792847747ff765814ae09c7be0983d364c5d612f147aef75e8902e","target":"rust-std","theorem":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.RustStd.root"}],"root":"Reasoning.Main.screenDose","sha256":"5dfd49f7e2dd83f51809de21adeaedbd6a8eba782c0bc569b8d1a066e914c698","targets":["rust-std"],"theorem":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.root"},{"byte_length":60908,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7","program":{"byte_length":16614,"sha256":"bf95bba329a7f73d9a7036f8fd91df829a4b615b2c3a7249c9998238687ecfee"},"renderings":[{"byte_length":57695,"composed":{"byte_length":15068,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.Compose.RustStd","sha256":"7ed552224ba31baed07621950405e64028d1d6fc8293ac958f6262a526e3ae14","theorem":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.Compose.RustStd.root"},"crate":{"byte_length":18308,"sha256":"2d2db53b580aa55f9a76a185cbcde3ca8a0689b2607c2f3fc11e2b94fb89ac8d"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.RustStd","sha256":"76d8befc3d155bc5f8c31abfe93e925d7a8bce5dc47470ba0ca7bfcb33a9f618","target":"rust-std","theorem":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.RustStd.root"}],"root":"Reasoning.Main.spendLeft","sha256":"5e5b338db6fc83467192cc3661ae644f6892e2c35f2445b3d4bdd164a0b7a985","targets":["rust-std"],"theorem":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.root"}],"spec":"lexlean/preservation/1"} diff --git a/examples/reasoning/expected/verify/probe/LexLeanProbe.P7b45b58d681c076cfd69727310b65f3f.lean b/examples/reasoning/expected/verify/probe/LexLeanProbe.P02b315b69b8881ec6f91f78f9b12c608.lean similarity index 100% rename from examples/reasoning/expected/verify/probe/LexLeanProbe.P7b45b58d681c076cfd69727310b65f3f.lean rename to examples/reasoning/expected/verify/probe/LexLeanProbe.P02b315b69b8881ec6f91f78f9b12c608.lean diff --git a/examples/reasoning/expected/verify/probe/process.json b/examples/reasoning/expected/verify/probe/process.json index e14ea9ef8..1216aaa4c 100644 --- a/examples/reasoning/expected/verify/probe/process.json +++ b/examples/reasoning/expected/verify/probe/process.json @@ -1 +1 @@ -{"argv":["env","lean","$STAGING/probe/LexLeanProbe.P7b45b58d681c076cfd69727310b65f3f.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanProbe.P7b45b58d681c076cfd69727310b65f3f","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} +{"argv":["env","lean","$STAGING/probe/LexLeanProbe.P02b315b69b8881ec6f91f78f9b12c608.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanProbe.P02b315b69b8881ec6f91f78f9b12c608","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.Compose.RustCore.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.Compose.RustCore.json new file mode 100644 index 000000000..098b97db7 --- /dev/null +++ b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.Compose.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.Compose.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.RustCore.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.RustCore.json new file mode 100644 index 000000000..13ef2e0f4 --- /dev/null +++ b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.json new file mode 100644 index 000000000..8880a3355 --- /dev/null +++ b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.Compose.RustCore.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.Compose.RustCore.json new file mode 100644 index 000000000..47b59b2b5 --- /dev/null +++ b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.Compose.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.Compose.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.RustCore.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.RustCore.json new file mode 100644 index 000000000..d69078f1e --- /dev/null +++ b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.json new file mode 100644 index 000000000..29bda675a --- /dev/null +++ b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.Compose.RustStd.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.Compose.RustStd.json new file mode 100644 index 000000000..e04b1e379 --- /dev/null +++ b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.RustStd.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.RustStd.json new file mode 100644 index 000000000..16f582ad6 --- /dev/null +++ b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.json new file mode 100644 index 000000000..ab53d107a --- /dev/null +++ b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.Compose.RustStd.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.Compose.RustStd.json new file mode 100644 index 000000000..1146b3f34 --- /dev/null +++ b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.RustStd.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.RustStd.json new file mode 100644 index 000000000..12fe79e27 --- /dev/null +++ b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.json new file mode 100644 index 000000000..094c6de1e --- /dev/null +++ b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.Compose.RustStd.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.Compose.RustStd.json new file mode 100644 index 000000000..8903687f6 --- /dev/null +++ b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.RustStd.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.RustStd.json new file mode 100644 index 000000000..2d9843094 --- /dev/null +++ b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.json new file mode 100644 index 000000000..e206c1cb5 --- /dev/null +++ b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.Compose.RustCore.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.Compose.RustCore.json new file mode 100644 index 000000000..c0bc45f93 --- /dev/null +++ b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.Compose.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.Compose.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.RustCore.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.RustCore.json new file mode 100644 index 000000000..f868587fe --- /dev/null +++ b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.json new file mode 100644 index 000000000..cbfa005e6 --- /dev/null +++ b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.Compose.RustStd.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.Compose.RustStd.json new file mode 100644 index 000000000..74182dad8 --- /dev/null +++ b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.RustStd.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.RustStd.json new file mode 100644 index 000000000..652200608 --- /dev/null +++ b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.json new file mode 100644 index 000000000..8f1fd30be --- /dev/null +++ b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.Compose.RustStd.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.Compose.RustStd.json new file mode 100644 index 000000000..d8443528a --- /dev/null +++ b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.RustStd.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.RustStd.json new file mode 100644 index 000000000..43e2391e4 --- /dev/null +++ b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.json new file mode 100644 index 000000000..780a3ff52 --- /dev/null +++ b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.Compose.RustCore.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.Compose.RustCore.json deleted file mode 100644 index a67cd3ee4..000000000 --- a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.Compose.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.Compose.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.RustCore.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.RustCore.json deleted file mode 100644 index 1ef37e986..000000000 --- a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.json deleted file mode 100644 index 2444c2cc6..000000000 --- a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.Compose.RustCore.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.Compose.RustCore.json deleted file mode 100644 index 496283d50..000000000 --- a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.Compose.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.Compose.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.RustCore.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.RustCore.json deleted file mode 100644 index 18d720c9e..000000000 --- a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.json deleted file mode 100644 index d911e017d..000000000 --- a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.Compose.RustStd.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.Compose.RustStd.json deleted file mode 100644 index 9211f1fb1..000000000 --- a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.RustStd.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.RustStd.json deleted file mode 100644 index a1482de10..000000000 --- a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.json deleted file mode 100644 index 3b620d78e..000000000 --- a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.Compose.RustStd.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.Compose.RustStd.json deleted file mode 100644 index 1b215d593..000000000 --- a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.RustStd.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.RustStd.json deleted file mode 100644 index bccf0faec..000000000 --- a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.json deleted file mode 100644 index d83a6bf0f..000000000 --- a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.Compose.RustStd.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.Compose.RustStd.json deleted file mode 100644 index 9d5e159d5..000000000 --- a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.RustStd.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.RustStd.json deleted file mode 100644 index 135978343..000000000 --- a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.json deleted file mode 100644 index 5cbddad88..000000000 --- a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.Compose.RustCore.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.Compose.RustCore.json deleted file mode 100644 index c218ebba3..000000000 --- a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.Compose.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.Compose.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.RustCore.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.RustCore.json deleted file mode 100644 index 95a96a15e..000000000 --- a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.RustCore"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.json deleted file mode 100644 index 7128fba45..000000000 --- a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.Compose.RustStd.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.Compose.RustStd.json deleted file mode 100644 index d9d4d708c..000000000 --- a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.RustStd.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.RustStd.json deleted file mode 100644 index 4b2223648..000000000 --- a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.json deleted file mode 100644 index b2677f2d7..000000000 --- a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.Compose.RustStd.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.Compose.RustStd.json deleted file mode 100644 index 195c0699c..000000000 --- a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.RustStd.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.RustStd.json deleted file mode 100644 index 0a13ff000..000000000 --- a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.json b/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.json deleted file mode 100644 index 048d58fbf..000000000 --- a/examples/reasoning/expected/verify/process/leanchecker/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.Audit.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.Audit.json index 24b2f415b..99ee76c4d 100644 --- a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.Audit.json +++ b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.Audit.json @@ -1 +1 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","$STAGING/preserve-src/LexLeanPreserve/Audit.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Audit","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanPreservation.Obs' does not depend on any axioms\n'LexLeanPreservation.obs.match_1' does not depend on any axioms\n'LexLeanPreservation.obs' does not depend on any axioms\n'LexLeanPreservation.Conv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ConvA' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ObsL' does not depend on any axioms\n'LexLeanPreservation.obsL.match_1' does not depend on any axioms\n'LexLeanPreservation.obsL' does not depend on any axioms\n'LexLeanPreservation.ConvL' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.FunRel' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Obs._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.Obs._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.Obs.casesOn' does not depend on any axioms\n'LexLeanPreservation.Obs.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.Obs.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Obs.ctorElim' does not depend on any axioms\n'LexLeanPreservation.Obs.overflow.elim' does not depend on any axioms\n'LexLeanPreservation.Obs.stuck.elim' does not depend on any axioms\n'LexLeanPreservation.Obs.value.elim' does not depend on any axioms\n'LexLeanPreservation.Obs.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.Obs.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Obs.overflow.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Obs.recOn' does not depend on any axioms\n'LexLeanPreservation.Obs.stuck.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Obs.value.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Obs.value.inj' does not depend on any axioms\n'LexLeanPreservation.Obs.value.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Obs.value.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ObsL._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.ObsL._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.ObsL.casesOn' does not depend on any axioms\n'LexLeanPreservation.ObsL.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.ObsL.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.ObsL.ctorElim' does not depend on any axioms\n'LexLeanPreservation.ObsL.overflow.elim' does not depend on any axioms\n'LexLeanPreservation.ObsL.stuck.elim' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.elim' does not depend on any axioms\n'LexLeanPreservation.ObsL.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.ObsL.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ObsL.overflow.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ObsL.recOn' does not depend on any axioms\n'LexLeanPreservation.ObsL.stuck.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.inj' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.injEq' depends on axioms: [propext]\n'LexLeanPreservation.ObsL.values.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rel' does not depend on any axioms\n'LexLeanPreservation.Rel.eq_1' does not depend on any axioms\n'LexLeanPreservation.RelL' does not depend on any axioms\n'LexLeanPreservation.RelL.eq_1' does not depend on any axioms\n'LexLeanPreservation.RunConv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.addSteps_ne' does not depend on any axioms\n'LexLeanPreservation.chargeResult_ne' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.stable.match_1_16' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_18' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_20' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_22' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_24' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_26' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.eval.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.stable' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.evalArms_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs_ne' does not depend on any axioms\n'LexLeanPreservation.convA_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.eval_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs_addSteps' does not depend on any axioms\n'LexLeanPreservation.convA_hit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.convA_miss' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.evalList_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obsL_ne' does not depend on any axioms\n'LexLeanPreservation.convL_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.convL_cons._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.convL_cons._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.convL_cons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.convL_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_apply._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_apply._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_apply._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_apply' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_build' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_call._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_call._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_call' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_closure' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_cond._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_cond._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_field' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_first' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_let._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_let._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_let' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_match._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_match._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_match' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_matchV' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs_chargeResult' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_prim' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_second' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_var' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.funRel_intro' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs.eq_1' does not depend on any axioms\n'LexLeanPreservation.obs.eq_2' does not depend on any axioms\n'LexLeanPreservation.obs.eq_3' does not depend on any axioms\n'LexLeanPreservation.obs.eq_4' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_1' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_2' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_3' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_4' does not depend on any axioms\n'LexLeanPreservation.run_of_funRel' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.run.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ListEnc' does not depend on any axioms\n'LexLeanPreservation.ListEnc._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.ListEnc._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.ListEnc.casesOn' does not depend on any axioms\n'LexLeanPreservation.ListEnc.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.ListEnc.elem' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items' does not depend on any axioms\n'LexLeanPreservation.ListEnc.enc' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_cons' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_eq.match_1_1' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_nil' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_eq._f' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_eq' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.ListEnc.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.ListEnc.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk.inj' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk.injEq' depends on axioms: [propext]\n'LexLeanPreservation.ListEnc.mk.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ListEnc.recOn' does not depend on any axioms\n'LexLeanPreservation.OptEnc' does not depend on any axioms\n'LexLeanPreservation.OptEnc._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.OptEnc._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.OptEnc.casesOn' does not depend on any axioms\n'LexLeanPreservation.OptEnc.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.OptEnc.elem' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc_none' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc_some' does not depend on any axioms\n'LexLeanPreservation.encOption.match_1' does not depend on any axioms\n'LexLeanPreservation.encOption' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc_map' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.OptEnc.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.OptEnc.noConfusion' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk.noConfusion' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk.inj' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk.injEq' depends on axioms: [propext]\n'LexLeanPreservation.OptEnc.mk.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.OptEnc.recOn' does not depend on any axioms\n'LexLeanPreservation.construct_adt' does not depend on any axioms\n'LexLeanPreservation.construct_cons' does not depend on any axioms\n'LexLeanPreservation.construct_error' does not depend on any axioms\n'LexLeanPreservation.construct_false' does not depend on any axioms\n'LexLeanPreservation.construct_nil' does not depend on any axioms\n'LexLeanPreservation.construct_none' does not depend on any axioms\n'LexLeanPreservation.construct_ok' does not depend on any axioms\n'LexLeanPreservation.construct_pair' does not depend on any axioms\n'LexLeanPreservation.construct_some' does not depend on any axioms\n'LexLeanPreservation.construct_succ' does not depend on any axioms\n'LexLeanPreservation.construct_true' does not depend on any axioms\n'LexLeanPreservation.construct_unit' does not depend on any axioms\n'LexLeanPreservation.construct_zero' does not depend on any axioms\n'LexLeanPreservation.encExcept.match_1' does not depend on any axioms\n'LexLeanPreservation.encExcept' does not depend on any axioms\n'LexLeanPreservation.encList' does not depend on any axioms\n'LexLeanPreservation.encOrdering.match_1' does not depend on any axioms\n'LexLeanPreservation.encOrdering' does not depend on any axioms\n'LexLeanPreservation.encPair' does not depend on any axioms\n'LexLeanPreservation.encUnit' does not depend on any axioms\n'LexLeanPreservation.listEnc._proof_1' does not depend on any axioms\n'LexLeanPreservation.listEnc._proof_2' does not depend on any axioms\n'LexLeanPreservation.listEnc' does not depend on any axioms\n'LexLeanPreservation.optEnc._proof_1' does not depend on any axioms\n'LexLeanPreservation.optEnc._proof_2' does not depend on any axioms\n'LexLeanPreservation.optEnc' does not depend on any axioms\n'LexLeanPreservation.bytes_empty' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.bytes_one' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.bytes_zero' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.encOrdering.eq_1' does not depend on any axioms\n'LexLeanPreservation.encOrdering.eq_2' does not depend on any axioms\n'LexLeanPreservation.encOrdering.eq_3' does not depend on any axioms\n'LexLeanPreservation.fromOrdering_encOrdering' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.fromStrings_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.fromStrings_map._f' does not depend on any axioms\n'LexLeanPreservation.fromStrings_map' does not depend on any axioms\n'LexLeanPreservation.intFits' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.listIndex_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.listIndex_map._f' does not depend on any axioms\n'LexLeanPreservation.listIndex_map' does not depend on any axioms\n'LexLeanPreservation.listIndex_unique.match_1_1' does not depend on any axioms\n'LexLeanPreservation.listIndex_unique._f' does not depend on any axioms\n'LexLeanPreservation.listIndex_unique' does not depend on any axioms\n'LexLeanPreservation.obs_intResult' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.obs_natResult' does not depend on any axioms\n'LexLeanPreservation.prim_append_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_append_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_boolNot' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_compareBytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_bool' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_nat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_ordering' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_string' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_index_bytes.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_index_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_index_list.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_index_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intMul' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intNeg' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intQuot' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intRem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intSub' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_join.match_1_1' does not depend on any axioms\n'LexLeanPreservation.toStrings_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.toStrings_map.match_1_3' does not depend on any axioms\n'LexLeanPreservation.toStrings_map._f' does not depend on any axioms\n'LexLeanPreservation.toStrings_map' does not depend on any axioms\n'LexLeanPreservation.prim_join' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_length_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_length_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_length_string' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natAdd' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natEq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natLe' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natLt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natMul' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natQuot' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natRem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natSub' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_slice_bytes.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_slice_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_slice_list.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_slice_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_splitExact.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_splitExact' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_utf8Decode.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_utf8Decode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_utf8Encode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.compareBytes.eq_1' depends on axioms: [propext]\n'LexLeanRuntime.equal.eq_1' does not depend on any axioms\n'LexLeanRuntime.length.eq_1' does not depend on any axioms\n'LexLeanRuntime.slice.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromOrdering.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.checkedMultiplyWith.match_1' does not depend on any axioms\n'LexLeanPreservation.checkedMultiplyWith' does not depend on any axioms\n'LexLeanPreservation.checkedQuotientWith' does not depend on any axioms\n'LexLeanPreservation.decimalFits.match_1' does not depend on any axioms\n'LexLeanPreservation.decimalFits' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.divideStep' does not depend on any axioms\n'LexLeanPreservation.divide_unique.match_1_1' does not depend on any axioms\n'LexLeanPreservation.divide_unique._f' does not depend on any axioms\n'LexLeanPreservation.divide_unique' does not depend on any axioms\n'LexLeanPreservation.multiplyStep' does not depend on any axioms\n'LexLeanPreservation.multiply_unique.match_1_1' does not depend on any axioms\n'LexLeanPreservation.multiply_unique._f' does not depend on any axioms\n'LexLeanPreservation.multiply_unique' does not depend on any axioms\n'LexLeanPreservation.prim_bitAnd_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i64.match_1_2' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_int' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_int.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_int' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ordOf.match_1' does not depend on any axioms\n'LexLeanPreservation.ordOf' does not depend on any axioms\n'LexLeanPreservation.KeySpec' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.mk._flat_ctor' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.recOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.spec' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.compareCodes_eq.match_1_1' does not depend on any axioms\n'LexLeanPreservation.compareCodes_eq._f' depends on axioms: [propext]\n'LexLeanPreservation.compareCodes_eq' depends on axioms: [propext]\n'LexLeanPreservation.compareCodes_swap.match_1_1' does not depend on any axioms\n'LexLeanPreservation.compareCodes_swap._f' depends on axioms: [propext]\n'LexLeanPreservation.compareCodes_swap' depends on axioms: [propext]\n'LexLeanPreservation.lessThanE' does not depend on any axioms\n'LexLeanPreservation.prim_compare_key.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_compare_key' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_lessThan' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.orderOf_insert' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.orderBool.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.keySpec_bool' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI16.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI32.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI64.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI8.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderInt.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_int' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderNat.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_nat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.keySpec_pair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderString.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.keySpec_string' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU16.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU32.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU64.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU8.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanCollections.compareCodes._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_2' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_3' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_4' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_def' depends on axioms: [propext]\n'LexLeanCollections.insertEntry.eq_1' does not depend on any axioms\n'LexLeanCollections.insertEntry.eq_2' does not depend on any axioms\n'LexLeanCollections.insertEntry.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.compareValue.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_18' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_20' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_22' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_23' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_24' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_25' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_26' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_27' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_28' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_29' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_30' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_31' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_33' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_34' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_35' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_36' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_37' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_38' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_39' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_40' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_41' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_42' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_43' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_44' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_45' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_46' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_47' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_48' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_49' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_50' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_51' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_52' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_53' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_54' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_55' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_56' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_57' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_58' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_59' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_60' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_61' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_62' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_63' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_65' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_66' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_67' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_68' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_69' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_70' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_71' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_72' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_73' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_74' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_75' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_76' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_77' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_78' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_79' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_80' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_81' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_82' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_83' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_84' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_85' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_86' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_87' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_88' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_89' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_90' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_91' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_92' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_93' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_94' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_95' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_96' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_97' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_98' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_99' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Conv.bool_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Conv.fits_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.FunRel.fits_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ListEnc.enc.eq_1' does not depend on any axioms\n'LexLeanPreservation.ListEnc.enc_cons' does not depend on any axioms\n'LexLeanPreservation.ListEnc.enc_nil' does not depend on any axioms\n'LexLeanPreservation.LookOps' does not depend on any axioms\n'LexLeanPreservation.LookOps.casesOn' does not depend on any axioms\n'LexLeanPreservation.LookOps.l0' does not depend on any axioms\n'LexLeanPreservation.LookOps.leq' does not depend on any axioms\n'LexLeanPreservation.LookOps.lgt' does not depend on any axioms\n'LexLeanPreservation.LookOps.llt' does not depend on any axioms\n'LexLeanPreservation.LookOps.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.LookOps.recOn' does not depend on any axioms\n'LexLeanPreservation.SetOps' does not depend on any axioms\n'LexLeanPreservation.SetOps.c0' does not depend on any axioms\n'LexLeanPreservation.SetOps.casesOn' does not depend on any axioms\n'LexLeanPreservation.SetOps.ceq' does not depend on any axioms\n'LexLeanPreservation.SetOps.cgt' does not depend on any axioms\n'LexLeanPreservation.SetOps.clt' does not depend on any axioms\n'LexLeanPreservation.SetOps.i0' does not depend on any axioms\n'LexLeanPreservation.SetOps.ieq' does not depend on any axioms\n'LexLeanPreservation.SetOps.igt' does not depend on any axioms\n'LexLeanPreservation.SetOps.ilt' does not depend on any axioms\n'LexLeanPreservation.SetOps.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.SetOps.r0' does not depend on any axioms\n'LexLeanPreservation.SetOps.recOn' does not depend on any axioms\n'LexLeanPreservation.SetOps.req' does not depend on any axioms\n'LexLeanPreservation.SetOps.rgt' does not depend on any axioms\n'LexLeanPreservation.SetOps.rlt' does not depend on any axioms\n'LexLeanPreservation.TopoOps' does not depend on any axioms\n'LexLeanPreservation.TopoOps.casesOn' does not depend on any axioms\n'LexLeanPreservation.TopoOps.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.TopoOps.recOn' does not depend on any axioms\n'LexLeanPreservation.TopoOps.s_next' does not depend on any axioms\n'LexLeanPreservation.TopoOps.s_nil' does not depend on any axioms\n'LexLeanPreservation.TopoOps.s_stuck' does not depend on any axioms\n'LexLeanPreservation.TopoOps.z_cons' does not depend on any axioms\n'LexLeanPreservation.TopoOps.z_nil' does not depend on any axioms\n'LexLeanPreservation.Tpl.boolE' does not depend on any axioms\n'LexLeanPreservation.Tpl.byOrder' does not depend on any axioms\n'LexLeanPreservation.Tpl.cns' does not depend on any axioms\n'LexLeanPreservation.Tpl.fn' does not depend on any axioms\n'LexLeanPreservation.Tpl.lst' does not depend on any axioms\n'LexLeanPreservation.Tpl.v' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphInnerFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.pr' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphNodesFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.natOne' does not depend on any axioms\n'LexLeanPreservation.Tpl.nl' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphReachableFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphSuccessorsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphTopologicalFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.iterateFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.iterateUntilFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.listFoldFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapContainsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapFoldFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapInsertFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapLookupFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapProjectFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapRemoveFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reachFrontierFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reachIntoFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reachRoundsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reverseFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setContainsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setFilterFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setInsertFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setRemoveFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setUnionFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoFinished' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoReadyFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoRoundsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoUnreachedFn' does not depend on any axioms\n'LexLeanPreservation.blt_succ_fits._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.blt_succ_fits' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_cond_false' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_cond_true' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.enc_elem' does not depend on any axioms\n'LexLeanPreservation.enc_entry' does not depend on any axioms\n'LexLeanPreservation.foldFits.match_1' does not depend on any axioms\n'LexLeanPreservation.foldFits._f' does not depend on any axioms\n'LexLeanPreservation.foldFits' does not depend on any axioms\n'LexLeanPreservation.foldFits._sunfold' does not depend on any axioms\n'LexLeanPreservation.foldFits._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.foldFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.foldFits.eq_2' does not depend on any axioms\n'LexLeanPreservation.foldFits.eq_def' does not depend on any axioms\n'LexLeanPreservation.graphFits' does not depend on any axioms\n'LexLeanPreservation.graphFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.iterateFits.match_1' does not depend on any axioms\n'LexLeanPreservation.iterateFits._f' does not depend on any axioms\n'LexLeanPreservation.iterateFits' does not depend on any axioms\n'LexLeanPreservation.iterateFits._sunfold' does not depend on any axioms\n'LexLeanPreservation.iterateFits._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.iterateFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.iterateFits.eq_2' does not depend on any axioms\n'LexLeanPreservation.iterateFits.eq_def' does not depend on any axioms\n'LexLeanPreservation.length_eq' does not depend on any axioms\n'LexLeanPreservation.prim_compare_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.reachNext' does not depend on any axioms\n'LexLeanPreservation.tpl_graphInner.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setInsert.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setInsert._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setInsert' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphInner._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphInner' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphNodes.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_graphNodes._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphNodes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapLookup.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapLookup._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapLookup' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphSuccessors' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachFrontier.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_reachInto.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setContains.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setContains._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setContains' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachInto._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachInto' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachFrontier._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachFrontier' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachRounds.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setUnion.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setUnion._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setUnion' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachRounds._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachRounds' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphReachable' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reverse.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_reverse._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reverse' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setRemove.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setRemove._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setRemove' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoReady.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_topoUnreached.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_topoUnreached._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoUnreached' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoReady._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoReady' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoRounds.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_topoRounds._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoRounds' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphTopological' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterate.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_iterate._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterate' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterateUntil.match_1_1' does not depend on any axioms\n'LexLeanPreservation.untilFits.match_1' does not depend on any axioms\n'LexLeanPreservation.untilFits._f' does not depend on any axioms\n'LexLeanPreservation.untilFits' does not depend on any axioms\n'LexLeanPreservation.tpl_iterateUntil._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterateUntil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_listFold.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_listFold._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_listFold' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapContains' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapFold.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapFold._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapFold' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapInsert.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapInsert._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapInsert' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapKeys.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapKeys._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapKeys' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapRemove.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapRemove._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapRemove' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapValues.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapValues._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapValues' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setDifference.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setDifference._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setDifference' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setIntersection.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setIntersection._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setIntersection' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.untilFits._sunfold' does not depend on any axioms\n'LexLeanPreservation.untilFits._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.untilFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.untilFits.eq_2' does not depend on any axioms\n'LexLeanPreservation.untilFits.eq_def' does not depend on any axioms\n'LexLeanPreservation.validExcept.match_1' does not depend on any axioms\n'LexLeanPreservation.InvExcept' does not depend on any axioms\n'LexLeanPreservation.InvList' does not depend on any axioms\n'LexLeanPreservation.InvList.eq_1' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.match_1' does not depend on any axioms\n'LexLeanPreservation.StrictAsc._f' does not depend on any axioms\n'LexLeanPreservation.StrictAsc' does not depend on any axioms\n'LexLeanPreservation.InvMap' does not depend on any axioms\n'LexLeanPreservation.validOption.match_1' does not depend on any axioms\n'LexLeanPreservation.InvOption' does not depend on any axioms\n'LexLeanPreservation.InvOption.eq_1' does not depend on any axioms\n'LexLeanPreservation.InvOption.eq_2' does not depend on any axioms\n'LexLeanPreservation.InvPair' does not depend on any axioms\n'LexLeanPreservation.InvSet' does not depend on any axioms\n'LexLeanPreservation.StrictAsc._sunfold' does not depend on any axioms\n'LexLeanPreservation.StrictAsc._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_1' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_2' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_3' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_def' does not depend on any axioms\n'LexLeanPreservation.Tpl.validListFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validMapFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validOptionFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validPairFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validResultFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validSetFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validTrueFn' does not depend on any axioms\n'LexLeanPreservation.ascMap.match_1' does not depend on any axioms\n'LexLeanPreservation.lessB.match_1' does not depend on any axioms\n'LexLeanPreservation.lessB' does not depend on any axioms\n'LexLeanPreservation.ascMap._f' does not depend on any axioms\n'LexLeanPreservation.ascMap' does not depend on any axioms\n'LexLeanPreservation.ascMap._sunfold' does not depend on any axioms\n'LexLeanPreservation.ascMap._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_1' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_2' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_3' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_def' does not depend on any axioms\n'LexLeanPreservation.ascMap_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.lessB_iff' depends on axioms: [propext]\n'LexLeanPreservation.ascMap_iff._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.ascMap_iff' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.ascMap_inv' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.ascSet._f' does not depend on any axioms\n'LexLeanPreservation.ascSet' does not depend on any axioms\n'LexLeanPreservation.ascSet._sunfold' does not depend on any axioms\n'LexLeanPreservation.ascSet._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_1' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_2' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_3' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_def' does not depend on any axioms\n'LexLeanPreservation.ascSet_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.ascSet_iff._f' depends on axioms: [propext]\n'LexLeanPreservation.ascSet_iff' depends on axioms: [propext]\n'LexLeanPreservation.ascSet_inv' depends on axioms: [propext]\n'LexLeanPreservation.condAnd_iff' depends on axioms: [propext]\n'LexLeanPreservation.invList_eqs.match_1_1' does not depend on any axioms\n'LexLeanPreservation.invList_eqs._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.invList_eqs' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.lessB.eq_1' does not depend on any axioms\n'LexLeanPreservation.lessB_eq' depends on axioms: [propext]\n'LexLeanPreservation.lessB_gt' depends on axioms: [propext]\n'LexLeanPreservation.lessB_lt' depends on axioms: [propext]\n'LexLeanPreservation.someObs.match_1' does not depend on any axioms\n'LexLeanPreservation.someObs' does not depend on any axioms\n'LexLeanPreservation.tpl_validList.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validList.match_1' does not depend on any axioms\n'LexLeanPreservation.validList._f' does not depend on any axioms\n'LexLeanPreservation.validList' does not depend on any axioms\n'LexLeanPreservation.tpl_validList' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validMap.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_validMap._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validMap' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validOption.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validOption' does not depend on any axioms\n'LexLeanPreservation.tpl_validOption' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validPair.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validPair' does not depend on any axioms\n'LexLeanPreservation.tpl_validPair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validResult.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validExcept' does not depend on any axioms\n'LexLeanPreservation.tpl_validResult' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validSet.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_validSet._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validSet' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validTrue' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.trueIff' does not depend on any axioms\n'LexLeanPreservation.validExcept_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validExcept_inv' does not depend on any axioms\n'LexLeanPreservation.validList._sunfold' does not depend on any axioms\n'LexLeanPreservation.validList._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.validList.eq_1' does not depend on any axioms\n'LexLeanPreservation.validList.eq_2' does not depend on any axioms\n'LexLeanPreservation.validList.eq_def' does not depend on any axioms\n'LexLeanPreservation.validList_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validList_iff._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.validList_iff' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.validList_inv' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.validOption.eq_1' does not depend on any axioms\n'LexLeanPreservation.validOption.eq_2' does not depend on any axioms\n'LexLeanPreservation.validOption_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validOption_inv' depends on axioms: [propext]\n'LexLeanPreservation.validPair_inv' depends on axioms: [propext]\n'LexLeanPreservation.validTrue_inv' does not depend on any axioms\n'LexLeanPreservation.Rust.Ctx' does not depend on any axioms\n'LexLeanPreservation.Rust.Flags' does not depend on any axioms\n'LexLeanPreservation.Rust.RCrate' does not depend on any axioms\n'LexLeanPreservation.Rust.RIdent' does not depend on any axioms\n'LexLeanPreservation.Rust.WT._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.adtFields' depends on axioms: [propext]\n'LexLeanTarget.TargetSyntax.IntKind.ofNat' does not depend on any axioms\n'LexLeanTarget.TargetSyntax.IntKind.ofNat_ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Rust.instDecidableEqIntKind_lexLeanPreservation._proof_1' does not depend on any axioms\n'LexLeanPreservation.Rust.instDecidableEqIntKind_lexLeanPreservation._proof_2' does not depend on any axioms\n'LexLeanPreservation.Rust.instDecidableEqIntKind_lexLeanPreservation' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flagOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fnIdent' does not depend on any axioms\n'LexLeanPreservation.Rust.fnFallible' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.inert._f' does not depend on any axioms\n'LexLeanPreservation.Rust.inert' does not depend on any axioms\n'LexLeanPreservation.Rust.WT._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.WTAll._f' does not depend on any axioms\n'LexLeanPreservation.Rust.WTL.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctxLookup.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup._f' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup' does not depend on any axioms\n'LexLeanPreservation.Rust.local_' does not depend on any axioms\n'LexLeanPreservation.Rust.EnvRel' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ROut' does not depend on any axioms\n'LexLeanPreservation.Rust.Halt' does not depend on any axioms\n'LexLeanPreservation.Rust.REnv' does not depend on any axioms\n'LexLeanPreservation.Rust.RExpr' does not depend on any axioms\n'LexLeanPreservation.Rust.RC' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RLet' does not depend on any axioms\n'LexLeanPreservation.Rust.LetsOK' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.append' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.below' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.below.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.brecOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.recOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.append_left' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.append_right' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.below' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.below.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.brecOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.recOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RBlock' does not depend on any axioms\n'LexLeanPreservation.Rust.dispatched_ne' does not depend on any axioms\n'LexLeanPreservation.Rust.finished_ne' does not depend on any axioms\n'LexLeanPreservation.Rust.returned_ne' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_24' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_26' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_28' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_30' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_32' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_34' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_36' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.eval.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_22' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.invoke.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.stable' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.reval_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCB' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.block' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCA' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.revalBlock_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCB.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCI' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.invoke_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCI.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCL' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.revalList_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCL.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.WTAll' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.block_of_lets' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.block_of_raise' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.ctxLookup._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup_slot._simp_1_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotFree' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup_slot' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_cons_other' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sameIdent_self' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_cons_self' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sameIdent_local' depends on axioms: [propext]\n'LexLeanPreservation.Rust.envRel_bind' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.envRel_extra' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.envRel_ghost' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sameIdent_kind' depends on axioms: [propext]\n'LexLeanPreservation.Rust.envRel_temp' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.listIndex_eq.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.listIndex_eq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.listIndex_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.index_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.inert._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.inert._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_nil.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_raise_head.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcl_raise_head.match_1_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcl_raise_head' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_raise_tail' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.revalArms_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.slotFree.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sunfold' depends on axioms: [propext]\n'LexLeanTarget.RustSemantics.eval.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_18' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_20' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.invoke.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.invoke.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.kindNumber.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.lookup.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.lookup.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.lookup.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.lookup.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.lookup.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.lookup.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd' does not depend on any axioms\n'LexLeanPreservation.Rust.isTemp._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isTemp.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isTemp' depends on axioms: [propext]\n'LexLeanPreservation.Rust.letsBind.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds._f' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds._f' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind._f' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind' does not depend on any axioms\n'LexLeanPreservation.Rust.tempFresh' does not depend on any axioms\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.foldN.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.flatB._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep.match_7' does not depend on any axioms\n'LexLeanPreservation.Rust.foldStep' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldB' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats._f' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats' does not depend on any axioms\n'LexLeanPreservation.Rust.okBlock' does not depend on any axioms\n'LexLeanPreservation.Rust.partRead._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Kind.casesOn' does not depend on any axioms\n'LexLeanPreservation.Rust.elseCtx.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.elseCtx' does not depend on any axioms\n'LexLeanPreservation.Rust.elseLets.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.elseLets' does not depend on any axioms\n'LexLeanPreservation.Rust.heldOK.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.heldOK' does not depend on any axioms\n'LexLeanPreservation.Rust.negateR._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.negateR._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.negateR.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.negateR' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_5' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_7' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_9' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identBoxed' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal' does not depend on any axioms\n'LexLeanPreservation.Rust.isWild._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.unboxOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotOK.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocal' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armShape.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.armShape' does not depend on any axioms\n'LexLeanPreservation.Rust.otherArms.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.otherArms' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.noClosure.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.noClosure._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh' depends on axioms: [propext]\n'LexLeanPreservation.Rust.covered' depends on axioms: [propext]\n'LexLeanPreservation.Rust.scrut' does not depend on any axioms\n'LexLeanPreservation.Rust.validU.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.validU' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotOK' does not depend on any axioms\n'LexLeanPreservation.Rust.ctorOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identsDistinct.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct._f' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct' does not depend on any axioms\n'LexLeanPreservation.Rust.litOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArg._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.match_6' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArg.match_8' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArg' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArgs._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildTail.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildsArm.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildsArm' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.itemOK.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemOK' does not depend on any axioms\n'LexLeanPreservation.Rust.itemTyped.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemTyped.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf' does not depend on any axioms\n'LexLeanPreservation.Rust.itemTyped' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_9' does not depend on any axioms\n'LexLeanPreservation.Rust.isFixed._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped' depends on axioms: [propext]\n'LexLeanPreservation.Rust.primTyped' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.litValues._f' does not depend on any axioms\n'LexLeanPreservation.Rust.litValue' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.typedLitAll._f' does not depend on any axioms\n'LexLeanPreservation.Rust.typedLits.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Corr' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.below' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.below.casesOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.brecOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.casesOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.recOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.FunOK' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.CrateOK' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Fresh' does not depend on any axioms\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn' depends on axioms: [propext]\n'LexLeanPreservation.Rust.FunSem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Kind._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.casesOn' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ctorElim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.b.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.e.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.k.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.l.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.m.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.ops.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.recOn' does not depend on any axioms\n'LexLeanPreservation.Rust.KPre.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.KPre' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Kind.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.ctorElim' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Kind.nat.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.plain.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.plain.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.recOn' does not depend on any axioms\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesM.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.RealizesM' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Sem.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.viewVal._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Sem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.foldN._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identsDistinct._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_10' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_11' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_12' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_13' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_14' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_6' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_7' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_8' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.litValues' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue._sunfold' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.litValue._unsafe_rec' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues._sunfold' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.paramCtx._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patsBinds' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.patLocals._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patsBinds._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArgs._sunfold' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs._unsafe_rec' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.typedLitAll' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.typedLits._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_of_inert.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_of_inert.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_of_inert._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_of_inert' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_of_inert._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_of_inert' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Halt.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.LetsRaise.halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.block_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.boxed' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesM.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesM.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_bytes_inv' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_list_inv' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_string_inv' depends on axioms: [propext]\n'LexLeanPreservation.Rust.takes_of_typed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.allWidth_of.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_eq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_eq._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.tysBeq_eq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq_eq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.wt_fixed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.allWidth_of._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.allWidth_of' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.width_of_typed.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.width_of_typed.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.width_of_typed.match_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.width_of_typed' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.accepts_of_typed' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_apply' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtl_append.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_append._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_append' depends on axioms: [propext]\n'LexLeanPreservation.Rust.apply_result' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.bindPattern_shape.match_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.bindPattern_shape._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.bindPatterns_shape._simp_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindPatterns_shape.match_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.bindPatterns_shape._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.bindPattern_shape' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.bindPatterns_shape' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms_spec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_4' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_6' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_7' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.boolArms_eval' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.boxWith.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_100' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_102' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_96' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_98' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_function' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.call_result' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.const_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.convert_args.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.convert_args' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_append_fresh' depends on axioms: [propext]\n'LexLeanPreservation.Rust.envRel_fresh' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_not._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_cond.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.itemResult.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.eval_match' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fixedTyped.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_18' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_19' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_20' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_21' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_22' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_23' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_24' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_25' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_26' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_27' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_28' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_29' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_30' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_31' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_32' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_33' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_34' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_35' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_36' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_37' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_38' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_39' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_40' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_41' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_42' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_43' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_44' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_45' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_46' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_47' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_48' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_49' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_50' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_51' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_52' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_53' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_54' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_55' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_56' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_57' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_58' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_59' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_60' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_61' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN_sound.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.split_last.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.split_last._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.split_last' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep_spec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcb_nil_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_nomatch.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcb_cons_nomatch' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_stop' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_prefix' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_flat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_read_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_cons_same' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcb_fold_last' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldStep_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldN_sound._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldN_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldB_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldN.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_append' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_bind._simp_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_bind' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotFree_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_weaken' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_elseCtx' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_temp._simp_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_temp' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fromStrings_wt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fromStrings_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fromStrings_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.hasWidth_i16' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_i32' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_i64' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_i8' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u16' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u32' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u64' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u8' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.heldOK.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.heldOK.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.isFixed._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.isSeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.isTemp._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.itemOK.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemOperands_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.itemResult' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.kpre_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_pred._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_pred.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_pred' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.kpre_else' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.kpre_then' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_of_lets' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_b_rcb' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.k_branch' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_cond_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_isZero_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_lit_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate_halt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_negate_halt.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_nonZero_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_23' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_25' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_27' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_29' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_31' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_33' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_35' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_37' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_39' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_41' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_43' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_45' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_47' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_49' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_51' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_not_inv.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_not_inv.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_not_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.k_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_read.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_read' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.kpre_held' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.letsBind.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.letsOK_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.letsOK_shape' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.litValue._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_4' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_def' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_5' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.eq_def' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.lit_branch' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.lookup_through._simp_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.lookup_through' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms_spec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms_eval' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.obsL_evalList_zero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.obs_eval_zero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.oneOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf_halt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.param_env.match_1_1' depends on axioms: [propext]\n'LexLeanTarget.TargetSemantics.bindAll.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.param_env._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.param_env' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.patBinds.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_10' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_6' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_7' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_8' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.primTyped.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_apply_halt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_apply_halt.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_apply_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_call_halt.match_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_runtime' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_construct' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct_halt.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct_halt.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_isZero.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_isZero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_lit.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_lit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue._simp_10' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue._simp_9' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue.match_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_pair.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_pair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_litValues.match_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rcl_litValues._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_nonZero.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_nonZero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_pair_halt_left' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_pair_halt_right' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_widen.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_widen' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_widen_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_11' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_7' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_litValues' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_nil_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_single_halt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_single_halt.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_single_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_widen_one' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.readOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizesL_halt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizesL_haltL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizes_halt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizesM_overflow' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizes_oneOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.runItem_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.runItem_succ' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_applyGen.match_1_13' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen.match_1_15' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen.match_1_28' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_apply' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_applyF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_bOfE' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_build.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_build.match_1_99' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_build' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildConst' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildPair.match_1_101' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_97' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_99' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildSucc.match_1_129' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSucc.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSucc' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildSuccF.match_1_101' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSuccF.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSuccF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_callF.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callF.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_callOps.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callOps.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callOps' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_closure.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.wtl_length.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_length._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_length' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_closure' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_cond.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_cond.match_1_11' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_condId.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_condId' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_eOfB' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_eOfBFold' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_eOfBNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_fOfB' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_unit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_fUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kHeld' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kLit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kId' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kIf' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kNeg' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kSame' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_lCons.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons.match_1_17' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons.match_1_19' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_lNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_letBind.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letBind.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letBind' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_letWild.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letWild.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letWild' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBool._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchHolder.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchHolder.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchHolder' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBool' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBoolId._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBoolId.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchBoolId' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchNat._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchNat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchUnit._proof_1_386' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchUnit.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchUnit.match_1_387' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsCons._simp_1_13' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsCons.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons.match_1_14' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons.match_1_16' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsOfL' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_29' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_31' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_ops_box.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_ops_box.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_ops_box.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_ops_box' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_part._sparseCasesOn_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_part.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_part.match_1_14' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_part.match_1_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_part' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_part._sparseCasesOn_1_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_prim.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_prim.match_1_38' does not depend on any axioms\n'LexLeanPreservation.Rust.wtAll_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wtAll_iff._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.wtAll_iff' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_append' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_bitwise' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_checked' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_convert' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_decode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_encode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_fixedTyped.match_1_67' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_format' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_index' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_join' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_parse' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_shift' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.slice_eq' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_slice' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_split' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_unary' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtl_one.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_one' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_three.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_three' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_two.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_two' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_fixedTyped' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_prim' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_prim' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_primF.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF.match_1_7' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_primWiden.match_1_108' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_110' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_112' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_114' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_116' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.typedLitAll_wt.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit_wt.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits_wt.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_var' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_varUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_zero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.shapeOf.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_10' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_11' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_12' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_13' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_14' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_6' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_7' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_8' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.tempFresh.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_12.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_13.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_14.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.allWidth.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.allWidth.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.allWidth.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_100' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_101' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_102' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_103' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_104' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_105' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_106' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_107' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_108' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_109' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_110' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_111' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_112' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_113' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_114' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_115' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_116' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_117' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_118' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_119' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_120' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_121' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_122' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_123' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_124' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_125' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_126' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_127' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_128' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_129' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_130' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_131' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_132' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_133' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_134' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_135' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_136' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_137' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_138' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_139' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_140' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_141' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_142' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_143' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_144' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_145' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_146' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_147' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_148' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_149' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_150' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_151' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_152' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_153' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_154' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_155' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_156' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_157' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_158' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_159' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_160' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_161' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_162' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_163' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_164' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_165' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_166' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_167' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_168' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_169' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_170' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_171' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_172' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_173' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_174' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_175' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_176' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_177' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_178' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_179' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_180' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_181' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_182' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_183' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_184' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_185' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_186' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_51' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_52' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_53' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_54' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_55' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_56' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_57' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_58' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_59' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_60' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_61' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_62' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_63' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_64' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_65' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_66' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_67' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_68' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_69' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_70' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_71' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_72' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_73' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_74' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_75' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_76' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_77' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_78' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_79' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_80' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_81' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_82' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_83' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_84' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_85' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_86' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_87' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_88' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_89' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_90' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_91' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_92' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_93' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_94' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_95' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_96' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_97' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_98' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_99' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_100' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_101' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_102' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_103' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_104' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_105' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_106' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_107' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_108' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_109' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_110' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_111' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_112' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_113' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_114' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_115' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_116' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_117' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_118' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_119' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_120' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_121' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_122' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_123' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_124' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_125' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_126' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_127' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_128' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_129' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_130' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_131' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_132' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_133' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_134' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_135' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_136' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_137' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_138' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_139' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_140' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_141' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_142' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_143' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_144' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_145' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_146' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_147' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_148' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_149' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_150' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_151' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_152' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_153' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_154' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_155' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_156' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_157' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_158' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_159' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_160' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_161' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_162' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_163' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_164' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_165' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_166' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_167' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_168' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_169' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_170' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_171' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_172' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_173' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_174' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_175' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_176' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_177' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_178' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_179' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_180' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_181' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_182' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_183' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_184' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_51' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_52' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_53' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_54' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_55' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_56' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_57' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_58' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_59' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_60' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_61' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_62' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_63' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_64' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_65' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_66' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_67' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_68' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_69' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_70' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_71' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_72' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_73' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_74' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_75' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_76' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_77' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_78' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_79' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_80' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_81' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_82' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_83' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_84' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_85' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_86' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_87' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_88' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_89' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_90' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_91' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_92' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_93' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_94' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_95' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_96' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_97' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_98' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_99' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemAccepts.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemAccepts.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.literal.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_10' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_11' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_12' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_13' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_14' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_15' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_3' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_4' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_5' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_6' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_7' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_8' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_9' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.propagated.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.returned.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_10' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_11' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_12' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_13' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_14' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_15' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_16' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_17' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_18' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_19' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_20' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_21' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_22' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_23' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_24' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_25' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_26' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_27' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_28' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_29' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_30' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_31' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_32' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_33' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_34' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_35' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_36' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_37' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_38' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_39' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_40' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_41' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_42' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_43' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_44' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_45' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_46' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_47' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_48' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_49' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_5' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_50' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_51' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_52' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_53' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_54' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_55' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_56' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_57' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_58' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_59' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_6' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_60' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_61' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_62' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_63' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_64' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_65' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_66' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_67' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_68' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_69' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_7' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_70' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_71' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_72' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_73' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_74' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_75' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_76' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_77' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_78' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_79' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_8' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_80' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_81' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_82' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_83' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_9' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_10' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_100' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_101' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_102' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_103' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_104' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_105' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_106' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_107' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_108' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_109' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_11' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_110' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_111' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_112' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_113' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_114' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_115' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_116' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_117' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_118' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_119' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_12' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_120' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_121' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_122' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_123' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_124' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_125' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_126' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_127' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_128' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_129' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_13' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_130' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_131' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_132' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_133' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_134' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_135' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_136' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_137' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_138' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_139' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_14' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_140' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_141' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_142' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_143' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_144' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_145' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_146' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_147' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_148' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_149' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_15' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_150' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_151' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_152' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_153' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_154' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_155' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_156' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_157' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_158' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_159' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_16' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_160' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_161' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_162' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_163' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_164' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_165' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_166' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_167' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_168' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_169' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_17' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_170' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_171' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_172' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_173' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_174' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_175' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_176' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_177' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_178' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_179' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_18' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_180' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_181' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_182' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_183' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_184' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_185' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_186' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_187' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_188' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_189' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_19' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_190' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_191' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_192' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_193' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_194' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_195' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_196' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_197' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_198' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_199' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_20' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_200' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_201' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_202' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_203' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_204' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_205' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_206' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_207' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_208' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_209' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_21' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_210' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_211' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_212' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_213' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_214' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_215' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_216' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_217' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_218' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_219' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_22' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_220' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_221' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_222' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_223' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_224' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_225' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_226' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_227' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_228' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_229' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_23' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_230' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_231' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_232' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_233' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_234' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_235' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_236' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_237' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_238' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_239' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_24' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_240' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_241' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_242' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_243' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_244' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_245' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_246' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_247' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_248' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_249' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_25' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_250' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_251' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_252' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_253' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_254' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_255' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_256' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_257' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_258' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_259' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_26' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_260' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_261' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_262' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_263' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_264' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_265' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_266' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_267' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_268' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_269' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_27' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_270' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_271' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_272' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_273' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_274' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_275' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_276' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_277' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_278' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_279' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_28' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_280' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_281' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_282' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_283' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_284' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_285' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_286' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_287' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_288' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_289' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_29' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_290' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_291' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_292' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_293' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_294' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_295' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_296' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_297' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_298' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_299' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_30' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_300' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_301' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_302' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_303' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_304' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_305' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_306' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_307' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_308' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_309' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_31' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_310' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_311' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_312' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_313' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_314' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_315' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_316' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_317' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_318' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_319' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_32' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_320' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_321' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_322' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_323' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_324' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_325' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_326' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_327' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_328' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_329' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_33' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_330' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_331' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_332' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_333' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_334' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_335' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_336' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_337' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_338' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_339' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_34' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_340' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_341' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_342' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_343' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_344' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_345' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_346' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_347' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_348' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_349' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_35' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_350' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_351' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_352' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_353' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_354' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_355' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_356' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_357' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_358' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_359' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_36' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_360' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_361' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_362' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_363' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_364' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_365' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_366' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_367' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_368' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_369' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_37' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_370' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_38' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_39' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_40' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_41' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_42' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_43' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_44' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_45' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_46' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_47' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_48' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_49' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_5' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_50' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_51' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_52' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_53' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_54' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_55' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_56' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_57' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_58' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_59' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_6' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_60' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_61' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_62' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_63' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_64' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_65' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_66' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_67' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_68' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_69' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_7' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_70' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_71' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_72' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_73' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_74' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_75' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_76' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_77' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_78' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_79' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_8' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_80' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_81' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_82' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_83' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_84' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_85' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_86' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_87' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_88' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_89' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_9' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_90' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_91' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_92' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_93' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_94' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_95' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_96' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_97' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_98' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_99' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromStrings.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromStrings.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromStrings.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.primitive.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1000' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1001' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1002' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1003' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1004' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1005' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1006' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1007' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1008' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1009' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1010' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1011' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1012' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1013' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1014' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1015' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1016' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1017' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1018' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1019' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1020' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1021' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1022' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1023' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1024' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1025' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1026' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1027' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1028' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1029' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1030' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1031' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1032' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1033' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1034' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1035' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1036' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1037' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1038' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1039' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1040' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1041' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1042' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1043' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1044' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1045' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1046' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1047' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1048' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1049' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1050' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1051' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1052' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1053' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1054' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1055' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1056' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1057' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1058' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1059' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1060' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1061' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1062' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1063' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1064' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1065' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1066' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1067' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1068' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1069' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1070' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1071' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1072' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1073' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1074' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1075' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1076' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1077' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1078' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1079' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1080' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1081' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1082' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1083' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1084' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1085' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1086' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1087' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1088' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1089' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1090' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1091' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1092' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1093' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1094' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1095' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1096' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1097' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1098' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1099' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1426' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1427' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1428' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1429' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1430' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1431' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1432' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1433' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1434' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1435' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1436' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1437' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1438' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1439' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1440' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1441' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1442' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1443' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1444' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1445' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1446' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1447' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1448' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1449' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1450' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1451' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1452' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1453' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1454' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1455' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1456' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1457' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1458' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1459' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1460' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1461' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1462' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1463' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1464' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1465' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1466' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1467' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1468' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1469' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1470' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1471' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1472' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1473' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1474' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1475' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1476' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1477' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1478' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1479' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1480' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1481' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1482' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1483' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1484' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1485' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1486' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1487' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1488' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1489' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1490' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1491' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1492' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1493' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1494' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1495' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1496' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1497' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1498' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1499' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1500' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1501' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1502' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1503' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1504' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1505' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1506' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1507' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1508' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1509' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1510' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1511' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1512' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1513' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1514' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1515' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1516' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1517' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1518' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1519' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1520' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1521' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1522' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1523' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1524' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1525' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1526' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1527' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1528' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1529' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1530' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1531' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1532' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1533' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1534' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1535' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1536' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1537' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1538' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1539' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1540' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1541' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1542' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1543' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1544' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1545' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1546' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1547' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1548' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1549' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1550' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1551' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1552' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1553' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1554' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1555' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1556' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1557' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1558' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1559' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1560' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1561' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1562' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1563' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1564' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1565' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1566' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1567' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1568' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1569' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1570' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1571' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1572' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1573' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1574' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1575' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1576' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1577' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1578' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1579' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1580' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1581' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1582' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1583' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1584' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1585' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1586' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1587' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1588' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1589' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1590' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1591' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1592' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1593' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1594' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1595' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1596' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1597' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1598' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1599' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1600' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1601' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1602' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1603' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1604' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1605' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1606' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1607' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1608' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1609' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1610' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1611' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1612' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1613' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1614' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1615' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1616' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1617' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1618' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1619' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1620' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1621' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1622' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1623' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1624' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1625' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1626' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1627' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1628' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1629' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1630' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1631' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1632' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1633' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1634' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1635' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1636' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1637' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1638' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1639' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1640' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1641' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1642' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1643' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1644' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1645' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1646' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1647' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1648' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1649' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1650' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1651' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1652' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1653' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1654' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1655' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1656' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1657' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1658' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1659' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1660' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1661' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1662' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1663' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1664' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1665' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1666' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1667' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1668' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1669' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1670' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1671' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1672' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1673' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1674' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1675' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1676' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1677' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1678' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1679' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1680' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1681' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1682' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1683' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1684' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1685' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1686' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1687' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1688' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1689' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1690' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1691' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1692' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1693' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1694' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1695' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1696' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1697' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1698' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1699' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1700' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1701' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1702' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1703' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1704' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1705' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1706' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1707' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1708' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1709' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1710' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1711' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1712' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1713' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1714' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1715' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1716' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1717' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1718' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1719' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1720' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1721' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1722' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1723' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1724' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1725' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1726' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1727' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1728' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1729' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1730' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1731' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1732' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1733' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1734' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1735' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1736' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1737' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1738' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1739' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1740' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1741' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1742' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1743' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1744' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1745' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1746' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1747' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1748' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1749' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1750' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1751' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1752' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1753' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1754' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1755' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1756' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1757' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1758' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1759' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1760' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1761' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1762' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1763' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1764' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1765' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1766' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1767' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1768' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1769' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1770' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1771' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1772' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1773' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1774' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1775' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1776' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1777' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1778' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1779' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1780' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1781' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1782' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1783' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1784' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1785' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1786' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1787' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1788' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1789' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1790' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1791' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1792' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1793' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1794' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1795' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1796' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1797' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1798' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1799' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_18' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1800' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1801' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1802' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1803' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1804' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1805' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1806' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1807' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1808' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1809' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1810' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1811' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1812' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1813' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1814' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1815' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1816' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1817' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1818' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1819' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1820' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1821' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1822' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1823' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1824' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1825' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1826' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1827' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1828' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1829' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1830' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1831' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1832' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1833' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1834' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1835' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1836' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1837' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1838' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1839' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1840' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1841' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1842' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1843' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1844' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1845' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1846' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1847' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1848' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1849' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1850' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1851' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1852' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1853' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1854' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1855' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1856' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1857' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1858' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1859' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1860' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1861' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1862' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1863' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1864' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1865' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1866' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1867' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1868' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1869' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1870' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1871' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1872' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1873' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1874' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1875' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1876' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1877' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1878' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1879' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1880' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1881' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1882' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1883' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1884' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1885' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1886' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1887' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1888' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1889' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1890' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1891' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1892' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1893' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1894' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1895' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1896' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1897' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1898' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1899' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1900' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1901' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1902' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1903' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1904' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1905' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1906' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1907' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1908' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1909' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1910' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1911' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1912' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1913' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1914' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1915' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1916' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1917' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1918' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1919' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1920' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1921' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1922' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1923' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1924' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1925' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1926' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1927' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1928' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1929' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1930' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1931' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1932' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1933' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1934' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1935' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1936' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1937' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1938' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1939' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1940' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1941' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1942' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1943' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1944' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1945' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1946' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1947' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1948' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1949' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1950' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1951' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1952' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1953' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1954' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1955' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1956' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1957' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1958' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1959' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1960' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1961' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1962' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1963' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1964' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1965' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1966' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1967' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1968' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1969' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1970' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1971' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1972' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1973' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1974' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1975' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1976' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1977' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1978' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1979' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1980' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1981' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1982' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1983' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1984' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1985' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1986' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1987' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1988' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1989' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1990' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1991' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1992' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1993' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1994' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1995' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1996' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1997' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1998' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1999' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_20' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2000' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2001' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2002' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2003' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2004' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2005' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2006' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2007' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2008' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2009' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2010' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2011' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2012' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2013' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2014' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2015' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2016' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2017' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2018' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2019' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2020' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2021' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2022' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2023' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2024' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2025' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2026' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2027' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2028' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2029' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2030' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2031' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2032' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2033' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2034' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2035' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2036' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2037' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2038' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2039' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2040' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2041' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2042' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2043' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2044' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2045' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2046' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2047' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2048' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2049' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2050' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2051' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2052' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2053' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2054' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2055' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2056' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2057' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2058' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2059' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2060' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2061' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2062' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2063' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2064' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2065' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2066' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2067' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2068' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2069' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2070' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2071' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2072' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2073' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2074' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2075' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2076' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2077' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2078' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2079' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2080' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2081' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2082' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2083' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2084' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2085' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2086' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2087' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2088' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2089' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2090' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2091' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2092' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2093' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2094' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2095' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2096' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2097' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2098' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2099' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_22' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_23' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_24' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2426' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2427' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2428' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2429' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2430' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2431' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2432' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2433' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2434' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2435' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2436' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2437' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2438' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2439' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2440' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2441' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2442' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2443' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2444' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2445' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2446' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2447' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2448' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2449' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2450' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2451' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2452' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2453' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2454' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2455' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2456' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2457' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2458' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2459' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2460' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2461' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2462' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2463' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2464' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2465' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2466' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2467' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2468' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2469' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2470' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2471' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2472' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2473' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2474' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2475' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2476' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2477' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2478' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2479' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2480' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2481' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2482' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2483' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2484' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2485' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2486' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2487' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2488' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2489' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2490' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2491' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2492' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2493' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2494' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2495' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2496' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2497' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2498' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2499' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_25' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2500' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2501' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2502' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2503' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2504' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2505' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2506' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2507' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2508' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2509' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2510' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2511' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2512' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2513' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2514' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2515' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2516' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2517' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2518' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2519' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2520' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2521' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2522' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2523' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2524' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2525' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2526' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2527' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2528' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2529' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2530' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2531' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2532' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2533' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2534' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2535' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2536' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2537' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2538' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2539' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2540' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2541' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2542' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2543' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2544' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2545' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2546' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2547' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2548' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2549' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2550' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2551' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2552' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2553' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2554' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2555' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2556' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2557' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2558' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2559' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2560' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2561' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2562' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2563' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2564' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2565' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2566' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2567' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2568' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2569' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2570' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2571' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2572' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2573' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2574' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2575' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2576' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2577' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2578' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2579' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2580' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2581' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2582' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2583' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2584' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2585' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2586' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2587' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2588' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2589' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2590' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2591' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2592' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2593' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2594' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2595' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2596' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2597' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2598' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2599' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_26' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2600' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2601' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2602' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2603' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2604' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2605' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2606' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2607' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2608' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2609' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2610' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2611' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2612' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2613' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2614' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2615' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2616' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2617' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2618' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2619' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2620' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2621' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2622' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2623' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2624' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2625' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2626' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2627' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2628' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2629' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2630' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2631' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2632' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2633' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2634' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2635' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2636' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2637' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2638' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2639' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2640' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2641' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2642' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2643' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2644' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2645' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2646' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2647' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2648' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2649' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2650' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2651' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2652' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2653' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2654' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2655' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2656' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2657' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2658' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2659' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2660' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2661' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2662' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2663' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2664' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2665' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2666' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2667' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2668' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2669' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2670' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2671' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2672' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2673' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2674' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2675' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2676' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2677' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2678' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2679' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2680' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2681' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2682' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2683' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2684' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2685' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2686' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2687' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2688' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2689' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2690' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2691' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2692' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2693' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2694' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2695' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2696' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2697' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2698' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2699' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_27' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2700' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2701' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2702' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2703' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2704' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2705' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2706' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2707' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2708' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2709' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2710' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2711' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2712' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2713' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2714' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2715' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2716' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2717' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2718' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2719' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2720' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2721' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2722' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2723' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2724' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2725' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2726' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2727' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2728' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2729' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2730' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2731' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2732' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2733' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2734' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2735' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2736' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2737' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2738' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2739' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2740' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2741' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2742' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2743' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2744' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2745' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2746' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2747' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2748' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2749' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2750' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2751' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2752' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2753' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2754' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2755' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2756' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2757' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2758' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2759' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2760' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2761' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2762' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2763' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2764' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2765' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2766' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2767' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2768' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2769' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2770' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2771' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2772' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2773' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2774' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2775' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2776' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2777' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2778' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2779' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2780' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2781' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2782' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2783' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2784' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2785' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2786' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2787' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2788' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2789' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2790' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2791' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2792' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2793' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2794' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2795' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2796' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2797' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2798' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2799' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_28' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2800' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2801' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2802' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2803' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2804' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2805' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2806' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2807' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2808' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2809' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2810' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2811' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2812' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2813' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2814' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2815' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2816' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2817' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2818' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2819' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2820' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2821' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2822' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2823' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2824' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2825' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2826' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2827' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2828' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2829' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2830' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2831' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2832' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2833' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2834' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2835' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2836' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2837' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2838' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2839' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2840' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2841' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2842' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2843' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2844' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2845' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2846' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2847' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2848' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2849' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2850' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2851' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2852' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2853' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2854' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2855' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2856' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2857' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2858' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2859' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2860' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2861' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2862' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2863' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2864' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2865' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2866' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2867' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2868' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2869' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2870' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2871' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2872' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2873' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2874' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2875' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2876' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2877' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2878' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2879' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2880' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2881' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2882' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2883' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2884' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2885' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2886' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2887' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2888' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2889' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2890' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2891' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2892' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2893' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2894' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2895' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2896' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2897' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2898' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2899' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_29' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2900' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2901' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2902' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2903' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2904' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2905' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2906' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2907' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2908' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2909' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2910' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2911' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2912' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2913' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2914' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2915' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2916' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2917' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2918' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2919' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2920' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2921' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2922' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2923' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2924' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2925' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2926' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2927' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2928' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2929' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2930' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2931' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2932' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2933' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2934' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2935' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2936' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2937' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2938' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2939' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2940' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2941' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2942' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2943' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2944' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2945' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2946' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2947' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2948' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2949' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2950' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2951' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2952' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2953' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2954' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2955' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2956' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2957' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2958' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2959' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2960' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2961' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2962' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2963' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2964' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2965' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2966' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2967' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2968' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2969' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2970' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2971' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2972' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2973' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2974' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2975' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2976' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2977' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2978' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2979' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2980' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2981' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2982' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2983' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2984' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2985' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2986' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2987' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2988' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2989' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2990' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2991' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2992' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2993' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2994' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2995' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2996' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2997' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2998' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2999' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_30' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3000' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3001' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3002' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3003' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3004' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3005' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3006' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3007' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3008' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3009' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3010' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3011' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3012' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3013' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3014' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3015' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3016' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3017' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3018' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3019' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3020' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3021' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3022' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3023' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3024' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3025' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3026' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3027' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3028' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3029' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3030' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3031' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3032' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3033' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3034' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3035' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3036' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3037' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3038' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3039' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3040' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3041' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3042' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3043' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3044' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3045' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3046' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3047' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3048' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3049' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3050' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3051' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3052' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3053' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3054' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3055' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3056' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3057' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3058' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3059' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3060' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3061' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3062' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3063' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3064' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3065' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3066' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3067' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3068' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3069' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3070' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3071' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3072' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3073' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3074' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3075' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3076' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3077' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3078' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3079' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3080' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3081' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3082' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3083' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3084' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3085' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3086' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3087' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3088' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3089' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3090' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3091' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3092' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3093' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3094' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3095' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3096' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3097' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3098' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3099' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_31' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_33' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_34' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_35' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_36' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_37' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_38' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_39' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_40' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_41' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_42' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_426' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_427' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_428' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_429' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_43' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_430' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_431' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_432' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_433' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_434' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_435' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_436' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_437' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_438' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_439' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_44' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_440' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_441' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_442' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_443' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_444' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_445' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_446' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_447' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_448' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_449' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_45' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_450' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_451' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_452' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_453' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_454' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_455' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_456' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_457' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_458' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_459' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_46' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_460' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_461' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_462' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_463' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_464' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_465' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_466' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_467' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_468' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_469' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_47' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_470' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_471' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_472' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_473' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_474' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_475' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_476' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_477' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_478' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_479' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_48' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_480' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_481' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_482' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_483' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_484' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_485' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_486' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_487' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_488' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_489' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_49' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_490' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_491' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_492' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_493' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_494' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_495' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_496' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_497' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_498' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_499' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_50' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_500' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_501' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_502' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_503' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_504' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_505' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_506' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_507' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_508' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_509' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_51' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_510' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_511' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_512' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_513' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_514' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_515' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_516' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_517' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_518' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_519' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_52' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_520' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_521' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_522' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_523' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_524' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_525' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_526' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_527' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_528' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_529' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_53' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_530' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_531' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_532' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_533' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_534' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_535' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_536' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_537' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_538' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_539' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_54' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_540' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_541' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_542' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_543' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_544' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_545' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_546' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_547' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_548' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_549' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_55' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_550' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_551' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_552' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_553' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_554' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_555' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_556' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_557' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_558' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_559' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_56' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_560' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_561' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_562' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_563' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_564' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_565' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_566' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_567' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_568' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_569' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_57' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_570' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_571' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_572' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_573' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_574' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_575' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_576' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_577' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_578' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_579' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_58' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_580' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_581' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_582' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_583' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_584' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_585' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_586' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_587' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_588' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_589' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_59' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_590' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_591' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_592' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_593' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_594' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_595' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_596' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_597' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_598' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_599' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_60' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_600' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_601' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_602' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_603' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_604' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_605' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_606' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_607' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_608' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_609' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_61' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_610' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_611' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_612' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_613' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_614' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_615' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_616' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_617' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_618' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_619' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_62' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_620' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_621' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_622' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_623' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_624' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_625' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_626' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_627' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_628' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_629' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_63' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_630' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_631' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_632' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_633' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_634' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_635' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_636' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_637' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_638' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_639' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_640' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_641' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_642' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_643' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_644' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_645' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_646' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_647' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_648' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_649' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_65' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_650' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_651' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_652' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_653' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_654' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_655' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_656' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_657' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_658' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_659' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_66' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_660' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_661' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_662' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_663' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_664' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_665' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_666' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_667' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_668' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_669' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_67' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_670' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_671' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_672' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_673' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_674' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_675' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_676' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_677' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_678' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_679' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_68' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_680' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_681' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_682' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_683' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_684' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_685' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_686' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_687' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_688' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_689' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_69' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_690' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_691' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_692' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_693' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_694' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_695' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_696' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_697' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_698' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_699' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_70' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_700' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_701' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_702' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_703' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_704' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_705' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_706' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_707' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_708' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_709' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_71' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_710' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_711' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_712' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_713' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_714' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_715' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_716' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_717' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_718' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_719' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_72' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_720' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_721' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_722' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_723' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_724' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_725' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_726' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_727' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_728' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_729' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_73' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_730' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_731' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_732' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_733' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_734' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_735' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_736' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_737' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_738' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_739' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_74' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_740' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_741' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_742' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_743' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_744' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_745' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_746' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_747' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_748' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_749' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_75' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_750' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_751' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_752' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_753' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_754' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_755' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_756' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_757' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_758' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_759' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_76' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_760' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_761' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_762' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_763' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_764' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_765' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_766' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_767' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_768' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_769' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_77' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_770' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_771' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_772' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_773' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_774' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_775' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_776' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_777' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_778' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_779' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_78' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_780' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_781' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_782' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_783' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_784' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_785' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_786' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_787' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_788' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_789' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_79' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_790' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_791' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_792' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_793' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_794' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_795' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_796' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_797' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_798' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_799' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_80' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_800' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_801' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_802' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_803' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_804' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_805' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_806' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_807' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_808' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_809' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_81' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_810' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_811' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_812' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_813' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_814' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_815' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_816' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_817' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_818' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_819' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_82' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_820' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_821' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_822' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_823' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_824' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_825' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_826' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_827' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_828' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_829' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_83' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_830' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_831' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_832' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_833' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_834' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_835' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_836' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_837' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_838' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_839' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_84' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_840' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_841' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_842' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_843' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_844' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_845' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_846' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_847' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_848' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_849' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_85' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_850' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_851' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_852' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_853' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_854' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_855' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_856' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_857' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_858' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_859' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_86' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_860' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_861' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_862' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_863' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_864' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_865' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_866' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_867' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_868' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_869' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_87' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_870' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_871' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_872' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_873' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_874' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_875' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_876' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_877' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_878' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_879' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_88' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_880' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_881' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_882' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_883' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_884' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_885' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_886' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_887' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_888' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_889' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_89' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_890' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_891' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_892' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_893' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_894' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_895' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_896' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_897' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_898' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_899' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_90' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_900' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_901' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_902' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_903' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_904' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_905' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_906' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_907' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_908' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_909' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_91' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_910' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_911' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_912' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_913' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_914' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_915' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_916' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_917' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_918' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_919' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_92' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_920' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_921' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_922' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_923' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_924' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_925' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_926' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_927' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_928' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_929' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_93' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_930' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_931' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_932' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_933' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_934' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_935' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_936' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_937' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_938' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_939' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_94' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_940' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_941' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_942' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_943' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_944' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_945' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_946' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_947' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_948' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_949' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_95' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_950' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_951' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_952' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_953' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_954' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_955' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_956' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_957' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_958' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_959' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_96' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_960' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_961' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_962' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_963' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_964' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_965' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_966' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_967' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_968' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_969' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_97' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_970' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_971' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_972' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_973' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_974' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_975' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_976' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_977' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_978' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_979' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_98' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_980' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_981' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_982' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_983' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_984' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_985' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_986' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_987' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_988' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_989' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_99' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_990' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_991' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_992' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_993' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_994' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_995' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_996' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_997' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_998' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_999' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.adtFields.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_12.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_13.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_12.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat_outer' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.boxedOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.boxedOne.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.boxedOne' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bp_entries._simp_1_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.simplePat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bp_entries.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.entriesOf._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bp_entries._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.bp_entries' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.directPat_cons._simp_1_4' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.identBoxed_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identLocal_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf_spec' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_cons' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_len.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_len._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_len' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_loads._simp_1_27' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_loads._simp_1_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_loads.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none._simp_1_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none._simp_1_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rlookup_append' depends on axioms: [propext]\n'LexLeanPreservation.Rust.same_boxed_boxed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_boxed_none' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_local_none._simp_1_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_local_none._simp_1_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_local_none.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.same_local_local' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_local_none._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_local_none' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_boxed_local' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rlookup_local_boxed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rlookup_local_single' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_loads._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.directPat_loads' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_boxed_some._simp_1_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_some._simp_1_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_some.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_some._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.entries_boxed_some' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.envRel_locals' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fields_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindPatterns_single' depends on axioms: [propext]\n'LexLeanPreservation.Rust.outer_bind' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.paramCtx_length.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_length._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_length' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.bindOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOne.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.covered.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.covered_mem._simp_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.wt_uninh._simp_10' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.covered_mem' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.ctorOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.destruct_canon' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq_refl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.destruct_excl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.directPat.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_lookup.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_none_of._simp_1_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_none_of.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sameIdent_iff' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_none_of._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_none_of' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.identsDistinct.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.entries_lookup._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_lookup' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.eval_field.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.eval_field._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_field.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_field' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats_none._simp_1_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats_none.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats_none._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats_none' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats_some._simp_1_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats_some.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats_some._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats_some' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_partRead' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.tyBeq_unit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.field_out' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.findArm_some.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.findArm_some._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.findArm_some' depends on axioms: [propext]\n'LexLeanPreservation.Rust.findDispatch_some.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.findDispatch_some._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.findDispatch_some' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_ext' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identBoxed.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identBoxed.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.isWild._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.okBlock.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.otherArms.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.otherArms_mem._simp_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.otherArms_mem' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.outer_miss' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.outer_view' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_ext.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_ext._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_ext' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_fresh.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_fresh._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_fresh' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocal.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_matchOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_matchOn_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_uncons.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_uncons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_scrut' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rca_hit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rca_miss' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_det' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_rebuild.match_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_eq_of_same' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg_rc' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_rebuild._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_rebuild' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.readOf_rc' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.realizesM_value' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArg_simple' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_def' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs_simple.match_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs_simple._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs_simple' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_14.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuild_rca._simp_1_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuild_rca.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_value._simp_1_21' depends on axioms: [propext]\n'LexLeanPreservation.Rust.single_rebuild' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_rca._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_rca' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuildsArm.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_nil' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_fieldGen._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_fieldGen.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_fieldGen.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.wtl_get.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_get._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_get' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_fieldGen' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_fieldHeld' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_fieldRead' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_mCons._simp_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_mCons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_mNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchArms._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.tyBeq_refl.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq_refl._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.tysBeq_refl.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tysBeq_refl._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_refl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.tysBeq_refl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.uninh_of_inert.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.uninh_of_inert._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh_of_inert' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_uninh.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_uninh._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtl_uninh.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_uninh._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_uninh' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.taken_arm' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchArms' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchPair._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchPair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchRebuilt._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchRebuilt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchRebuilt.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchRebuilt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.simplePat.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.validU.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_uninh' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.findArm.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findArm.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findArm.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_5' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_6' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_7' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_8' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.fl_of' does not depend on any axioms\n'LexLeanPreservation.Rust.fnFallible.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of._simp_1_14' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.funSem_of.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_12' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.isTemp.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isTemp.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.item_ne' depends on axioms: [propext]\n'LexLeanPreservation.Rust.kind_ne' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sound._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sound._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.simulate' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Representable._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Representable.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Representable._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.RepresentableL._f' does not depend on any axioms\n'LexLeanPreservation.Rust.Representable' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Representable._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.Representable._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.compose' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rel_ne_stuck' depends on axioms: [propext]\n'LexLeanPreservation.Rust.repL_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.repL_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.runItem_abort_infallible' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtAll_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wtAll_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_map._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_map' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_adt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_bool' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_bytes' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encExcept.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_encExcept' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_list' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encList' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encOption.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_encOption' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encOrdering' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encPair' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encUnit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_errorV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i32' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i64' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_int' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_listEnc' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_nat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_noneV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_okV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_optEnc.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_someV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_optEnc' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_ordering' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_pairV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_string' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u32' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u64' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_unitValue' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_nil' depends on axioms: [propext]\n'LexLeanPreservation.encExcept.eq_1' does not depend on any axioms\n'LexLeanPreservation.encExcept.eq_2' does not depend on any axioms\n'LexLeanPreservation.encOption.eq_1' does not depend on any axioms\n'LexLeanPreservation.encOption.eq_2' does not depend on any axioms\n'LexLeanPreservation.encPair.eq_1' does not depend on any axioms\n'LexLeanPreservation.encUnit.eq_1' does not depend on any axioms\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.Compose.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.Compose.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.Compose.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.Compose.RustCore.__wt_0' depends on axioms: [propext]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.Compose.RustCore.__wt_1' depends on axioms: [propext]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.Compose.RustCore.__wt_2' depends on axioms: [propext]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.Compose.RustCore.__wt_0' depends on axioms: [propext]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.Compose.RustCore.__wt_1' depends on axioms: [propext]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.Compose.RustCore.__wt_2' depends on axioms: [propext]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.Compose.RustStd.__wt_0' depends on axioms: [propext]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.Compose.RustStd.__wt_1' depends on axioms: [propext]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.Compose.RustStd.__wt_3' depends on axioms: [propext]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.Compose.RustStd.__wt_4' depends on axioms: [propext]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.Compose.RustStd.__wt_2' depends on axioms: [propext]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.Compose.RustStd.__wt_0' depends on axioms: [propext]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.Compose.RustStd.__wt_2' depends on axioms: [propext]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.Compose.RustStd.__wt_3' depends on axioms: [propext]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.Compose.RustStd.__wt_1' depends on axioms: [propext]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.Compose.RustStd.__wt_1' depends on axioms: [propext]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.Compose.RustStd.__wt_0' depends on axioms: [propext]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.Compose.RustCore.__wt_0' depends on axioms: [propext]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.Compose.RustCore.__wt_1' depends on axioms: [propext]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.Compose.RustCore.__wt_2' depends on axioms: [propext]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.Compose.RustStd.__wt_0' depends on axioms: [propext]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.Compose.RustStd.__wt_2' depends on axioms: [propext]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.Compose.RustStd.__wt_3' depends on axioms: [propext]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.Compose.RustStd.__wt_1' depends on axioms: [propext]\n'LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.Compose.RustStd.__wt_0' depends on axioms: [propext]\n-- statement vocabulary\ninductive LexLeanPreservation.Obs : Type\nnumber of parameters: 0\nconstructors:\nLexLeanPreservation.Obs.value : LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs\nLexLeanPreservation.Obs.overflow : LexLeanPreservation.Obs\nLexLeanPreservation.Obs.stuck : LexLeanPreservation.Obs\ndef LexLeanPreservation.Rel : Bool → LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs :=\nfun fits v => bif fits then LexLeanPreservation.Obs.value v else LexLeanPreservation.Obs.overflow\ndef LexLeanPreservation.Conv : LexLeanTarget.TargetSyntax.Program →\n List (Nat × LexLeanTarget.TargetSyntax.Value) → LexLeanTarget.TargetSyntax.Expr → LexLeanPreservation.Obs → Prop :=\nfun p env e o => ∃ n, LexLeanPreservation.obs (LexLeanTarget.TargetSemantics.eval n p env e) = some o\ndef LexLeanPreservation.FunRel : LexLeanTarget.TargetSyntax.Program →\n Nat → List LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs → Prop :=\nfun p f args o =>\n ∃ fn,\n LexLeanRuntime.index p.functions f = some fn ∧\n ∃ env,\n LexLeanTarget.TargetSemantics.bindAll fn.parameters args [] = some env ∧\n LexLeanPreservation.Conv p env fn.body o\ndef LexLeanPreservation.RunConv : LexLeanTarget.TargetSyntax.Program →\n Nat → List LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs → Prop :=\nfun p entry args o => ∃ n, LexLeanPreservation.obs (LexLeanTarget.TargetSemantics.run n p entry args) = some o\ndef LexLeanPreservation.Rust.WT : LexLeanTarget.TargetSyntax.Program →\n LexLeanPreservation.Rust.RCrate →\n LexLeanPreservation.Rust.Flags → LexLeanTarget.TargetSyntax.Value → LexLeanTarget.TargetSyntax.Ty → Prop :=\nfun p c A x x_1 =>\n x.brecOn (LexLeanPreservation.Rust.WT._f p c A)\n (fun t f => ⟨LexLeanPreservation.Rust.WTL._f p c A t f, LexLeanPreservation.Rust.WTAll._f p c A t f⟩) x_1\ndef LexLeanPreservation.Rust.WTL : LexLeanTarget.TargetSyntax.Program →\n LexLeanPreservation.Rust.RCrate →\n LexLeanPreservation.Rust.Flags →\n List LexLeanTarget.TargetSyntax.Value → List LexLeanTarget.TargetSyntax.Ty → Prop :=\nfun p c A x x_1 =>\n (LexLeanTarget.TargetSyntax.Value.brecOn_1 x (LexLeanPreservation.Rust.WT._f p c A) fun t f =>\n ⟨LexLeanPreservation.Rust.WTL._f p c A t f, LexLeanPreservation.Rust.WTAll._f p c A t f⟩).1\n x_1\ndef LexLeanPreservation.Rust.fnIdent : Nat → LexLeanPreservation.Rust.RIdent :=\nfun f => LexLeanTarget.RustSyntax.Ident.generated LexLeanTarget.RustSyntax.IdentKind.function f\ndef LexLeanPreservation.Rust.fnFallible : LexLeanPreservation.Rust.RCrate → Nat → Option Bool :=\nfun c f =>\n Option.map (fun fn => LexLeanTarget.RustSemantics.fallibleType fn.snd.fst)\n (LexLeanTarget.RustSemantics.findFunction c.items (LexLeanPreservation.Rust.fnIdent f))\ndef LexLeanPreservation.Rust.RCI : LexLeanPreservation.Rust.RCrate →\n LexLeanPreservation.Rust.RIdent → List LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Rust.ROut → Prop :=\nfun c f args o =>\n o ≠ LexLeanTarget.RustSemantics.ROutcome.exhausted ∧ ∃ n, LexLeanTarget.RustSemantics.invoke n c f args = o\ndef LexLeanPreservation.Rust.Realizes : Bool → LexLeanPreservation.Obs → LexLeanPreservation.Rust.ROut → Prop :=\nfun fl x x_1 =>\n match x, x_1 with\n | LexLeanPreservation.Obs.value v, LexLeanTarget.RustSemantics.ROutcome.value w => w = v\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.raise => fl = true\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.abort => True\n | x, x_2 => False\ndef LexLeanPreservation.Rust.RealizesFn : Bool → LexLeanPreservation.Obs → LexLeanPreservation.Rust.ROut → Prop :=\nfun fallible x x_1 =>\n match x, x_1 with\n | LexLeanPreservation.Obs.value v, LexLeanTarget.RustSemantics.ROutcome.value w => w = bif fallible then v.ok else v\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.value w =>\n fallible = true ∧ w = LexLeanTarget.TargetSyntax.Value.unit.error\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.abort => True\n | x, x_2 => False\ndef LexLeanPreservation.Rust.FunSem : LexLeanTarget.TargetSyntax.Program →\n LexLeanPreservation.Rust.RCrate → LexLeanPreservation.Rust.Flags → Nat → Nat → Prop :=\nfun p c A n f =>\n ∀ (fn : LexLeanTarget.TargetSyntax.Function) (args : List LexLeanTarget.TargetSyntax.Value)\n (env : List (Nat × LexLeanTarget.TargetSyntax.Value)) (F : Bool),\n LexLeanRuntime.index p.functions f = some fn →\n LexLeanPreservation.Rust.WTL p c A args fn.types →\n LexLeanTarget.TargetSemantics.bindAll fn.parameters args [] = some env →\n LexLeanPreservation.Rust.fnFallible c f = some F →\n ∀ (o : LexLeanPreservation.Obs),\n LexLeanPreservation.obs (LexLeanTarget.TargetSemantics.eval n p env fn.body) = some o →\n o ≠ LexLeanPreservation.Obs.stuck →\n (∀ (v : LexLeanTarget.TargetSyntax.Value),\n o = LexLeanPreservation.Obs.value v → LexLeanPreservation.Rust.WT p c A v fn.result) ∧\n ∃ ro,\n LexLeanPreservation.Rust.RealizesFn F o ro ∧\n LexLeanPreservation.Rust.RCI c (LexLeanPreservation.Rust.fnIdent f) args ro\ndef LexLeanPreservation.someObs : LexLeanPreservation.Obs → LexLeanPreservation.Obs :=\nfun x =>\n match x with\n | LexLeanPreservation.Obs.value v => LexLeanPreservation.Obs.value v.some\n | LexLeanPreservation.Obs.overflow => LexLeanPreservation.Obs.overflow\n | LexLeanPreservation.Obs.stuck => LexLeanPreservation.Obs.stuck\ndef LexLeanPreservation.Rust.Representable : LexLeanTarget.TargetSyntax.Value → Prop :=\nfun x => x.brecOn LexLeanPreservation.Rust.Representable._f LexLeanPreservation.Rust.RepresentableL._f\ndef LexLeanPreservation.Rust.RepresentableL : List LexLeanTarget.TargetSyntax.Value → Prop :=\nfun x =>\n LexLeanTarget.TargetSyntax.Value.brecOn_1 x LexLeanPreservation.Rust.Representable._f\n LexLeanPreservation.Rust.RepresentableL._f\nLexLeanPreservation.Rust.runItem_abort_infallible : ∀ (profile : LexLeanTarget.RustSyntax.Profile)\n (item : LexLeanTarget.RustSyntax.Item) (values : List LexLeanTarget.TargetSyntax.Value),\n LexLeanTarget.RustSemantics.runItem profile item values = LexLeanTarget.RustSemantics.ROutcome.abort →\n LexLeanTarget.RustSemantics.itemFallible item = false\n","stdout_sha256":"7c47fa4c01a1a6db3a11d32c7ab86849804a5d67eecf706a6db243d8f0be8297","tool":"lean"} +{"argv":["env","lean","-R","$STAGING/preserve-src","$STAGING/preserve-src/LexLeanPreserve/Audit.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Audit","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanPreservation.Obs' does not depend on any axioms\n'LexLeanPreservation.obs.match_1' does not depend on any axioms\n'LexLeanPreservation.obs' does not depend on any axioms\n'LexLeanPreservation.Conv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ConvA' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ObsL' does not depend on any axioms\n'LexLeanPreservation.obsL.match_1' does not depend on any axioms\n'LexLeanPreservation.obsL' does not depend on any axioms\n'LexLeanPreservation.ConvL' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.FunRel' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Obs._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.Obs._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.Obs.casesOn' does not depend on any axioms\n'LexLeanPreservation.Obs.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.Obs.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Obs.ctorElim' does not depend on any axioms\n'LexLeanPreservation.Obs.overflow.elim' does not depend on any axioms\n'LexLeanPreservation.Obs.stuck.elim' does not depend on any axioms\n'LexLeanPreservation.Obs.value.elim' does not depend on any axioms\n'LexLeanPreservation.Obs.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.Obs.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Obs.overflow.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Obs.recOn' does not depend on any axioms\n'LexLeanPreservation.Obs.stuck.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Obs.value.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Obs.value.inj' does not depend on any axioms\n'LexLeanPreservation.Obs.value.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Obs.value.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ObsL._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.ObsL._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.ObsL.casesOn' does not depend on any axioms\n'LexLeanPreservation.ObsL.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.ObsL.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.ObsL.ctorElim' does not depend on any axioms\n'LexLeanPreservation.ObsL.overflow.elim' does not depend on any axioms\n'LexLeanPreservation.ObsL.stuck.elim' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.elim' does not depend on any axioms\n'LexLeanPreservation.ObsL.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.ObsL.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ObsL.overflow.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ObsL.recOn' does not depend on any axioms\n'LexLeanPreservation.ObsL.stuck.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.inj' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.injEq' depends on axioms: [propext]\n'LexLeanPreservation.ObsL.values.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rel' does not depend on any axioms\n'LexLeanPreservation.Rel.eq_1' does not depend on any axioms\n'LexLeanPreservation.RelL' does not depend on any axioms\n'LexLeanPreservation.RelL.eq_1' does not depend on any axioms\n'LexLeanPreservation.RunConv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.addSteps_ne' does not depend on any axioms\n'LexLeanPreservation.chargeResult_ne' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.stable.match_1_16' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_18' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_20' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_22' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_24' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_26' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.eval.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.stable' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.evalArms_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs_ne' does not depend on any axioms\n'LexLeanPreservation.convA_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.eval_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs_addSteps' does not depend on any axioms\n'LexLeanPreservation.convA_hit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.convA_miss' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.evalList_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obsL_ne' does not depend on any axioms\n'LexLeanPreservation.convL_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.convL_cons._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.convL_cons._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.convL_cons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.convL_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_apply._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_apply._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_apply._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_apply' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_build' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_call._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_call._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_call' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_closure' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_cond._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_cond._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_field' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_first' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_let._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_let._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_let' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_match._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_match._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_match' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_matchV' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs_chargeResult' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_prim' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_second' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_var' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.funRel_intro' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs.eq_1' does not depend on any axioms\n'LexLeanPreservation.obs.eq_2' does not depend on any axioms\n'LexLeanPreservation.obs.eq_3' does not depend on any axioms\n'LexLeanPreservation.obs.eq_4' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_1' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_2' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_3' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_4' does not depend on any axioms\n'LexLeanPreservation.run_of_funRel' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.run.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ListEnc' does not depend on any axioms\n'LexLeanPreservation.ListEnc._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.ListEnc._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.ListEnc.casesOn' does not depend on any axioms\n'LexLeanPreservation.ListEnc.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.ListEnc.elem' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items' does not depend on any axioms\n'LexLeanPreservation.ListEnc.enc' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_cons' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_eq.match_1_1' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_nil' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_eq._f' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_eq' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.ListEnc.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.ListEnc.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk.inj' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk.injEq' depends on axioms: [propext]\n'LexLeanPreservation.ListEnc.mk.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ListEnc.recOn' does not depend on any axioms\n'LexLeanPreservation.OptEnc' does not depend on any axioms\n'LexLeanPreservation.OptEnc._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.OptEnc._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.OptEnc.casesOn' does not depend on any axioms\n'LexLeanPreservation.OptEnc.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.OptEnc.elem' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc_none' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc_some' does not depend on any axioms\n'LexLeanPreservation.encOption.match_1' does not depend on any axioms\n'LexLeanPreservation.encOption' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc_map' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.OptEnc.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.OptEnc.noConfusion' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk.noConfusion' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk.inj' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk.injEq' depends on axioms: [propext]\n'LexLeanPreservation.OptEnc.mk.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.OptEnc.recOn' does not depend on any axioms\n'LexLeanPreservation.construct_adt' does not depend on any axioms\n'LexLeanPreservation.construct_cons' does not depend on any axioms\n'LexLeanPreservation.construct_error' does not depend on any axioms\n'LexLeanPreservation.construct_false' does not depend on any axioms\n'LexLeanPreservation.construct_nil' does not depend on any axioms\n'LexLeanPreservation.construct_none' does not depend on any axioms\n'LexLeanPreservation.construct_ok' does not depend on any axioms\n'LexLeanPreservation.construct_pair' does not depend on any axioms\n'LexLeanPreservation.construct_some' does not depend on any axioms\n'LexLeanPreservation.construct_succ' does not depend on any axioms\n'LexLeanPreservation.construct_true' does not depend on any axioms\n'LexLeanPreservation.construct_unit' does not depend on any axioms\n'LexLeanPreservation.construct_zero' does not depend on any axioms\n'LexLeanPreservation.encExcept.match_1' does not depend on any axioms\n'LexLeanPreservation.encExcept' does not depend on any axioms\n'LexLeanPreservation.encList' does not depend on any axioms\n'LexLeanPreservation.encOrdering.match_1' does not depend on any axioms\n'LexLeanPreservation.encOrdering' does not depend on any axioms\n'LexLeanPreservation.encPair' does not depend on any axioms\n'LexLeanPreservation.encUnit' does not depend on any axioms\n'LexLeanPreservation.listEnc._proof_1' does not depend on any axioms\n'LexLeanPreservation.listEnc._proof_2' does not depend on any axioms\n'LexLeanPreservation.listEnc' does not depend on any axioms\n'LexLeanPreservation.optEnc._proof_1' does not depend on any axioms\n'LexLeanPreservation.optEnc._proof_2' does not depend on any axioms\n'LexLeanPreservation.optEnc' does not depend on any axioms\n'LexLeanPreservation.bytes_empty' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.bytes_one' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.bytes_zero' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.encOrdering.eq_1' does not depend on any axioms\n'LexLeanPreservation.encOrdering.eq_2' does not depend on any axioms\n'LexLeanPreservation.encOrdering.eq_3' does not depend on any axioms\n'LexLeanPreservation.fromOrdering_encOrdering' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.fromStrings_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.fromStrings_map._f' does not depend on any axioms\n'LexLeanPreservation.fromStrings_map' does not depend on any axioms\n'LexLeanPreservation.intFits' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.listIndex_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.listIndex_map._f' does not depend on any axioms\n'LexLeanPreservation.listIndex_map' does not depend on any axioms\n'LexLeanPreservation.listIndex_unique.match_1_1' does not depend on any axioms\n'LexLeanPreservation.listIndex_unique._f' does not depend on any axioms\n'LexLeanPreservation.listIndex_unique' does not depend on any axioms\n'LexLeanPreservation.obs_intResult' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.obs_natResult' does not depend on any axioms\n'LexLeanPreservation.prim_append_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_append_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_boolNot' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_compareBytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_bool' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_nat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_ordering' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_string' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_index_bytes.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_index_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_index_list.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_index_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intMul' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intNeg' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intQuot' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intRem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intSub' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_join.match_1_1' does not depend on any axioms\n'LexLeanPreservation.toStrings_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.toStrings_map.match_1_3' does not depend on any axioms\n'LexLeanPreservation.toStrings_map._f' does not depend on any axioms\n'LexLeanPreservation.toStrings_map' does not depend on any axioms\n'LexLeanPreservation.prim_join' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_length_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_length_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_length_string' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natAdd' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natEq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natLe' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natLt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natMul' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natQuot' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natRem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natSub' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_slice_bytes.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_slice_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_slice_list.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_slice_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_splitExact.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_splitExact' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_utf8Decode.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_utf8Decode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_utf8Encode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.compareBytes.eq_1' depends on axioms: [propext]\n'LexLeanRuntime.equal.eq_1' does not depend on any axioms\n'LexLeanRuntime.length.eq_1' does not depend on any axioms\n'LexLeanRuntime.slice.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromOrdering.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.checkedMultiplyWith.match_1' does not depend on any axioms\n'LexLeanPreservation.checkedMultiplyWith' does not depend on any axioms\n'LexLeanPreservation.checkedQuotientWith' does not depend on any axioms\n'LexLeanPreservation.decimalFits.match_1' does not depend on any axioms\n'LexLeanPreservation.decimalFits' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.divideStep' does not depend on any axioms\n'LexLeanPreservation.divide_unique.match_1_1' does not depend on any axioms\n'LexLeanPreservation.divide_unique._f' does not depend on any axioms\n'LexLeanPreservation.divide_unique' does not depend on any axioms\n'LexLeanPreservation.multiplyStep' does not depend on any axioms\n'LexLeanPreservation.multiply_unique.match_1_1' does not depend on any axioms\n'LexLeanPreservation.multiply_unique._f' does not depend on any axioms\n'LexLeanPreservation.multiply_unique' does not depend on any axioms\n'LexLeanPreservation.prim_bitAnd_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i64.match_1_2' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_int' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_int.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_int' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ordOf.match_1' does not depend on any axioms\n'LexLeanPreservation.ordOf' does not depend on any axioms\n'LexLeanPreservation.KeySpec' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.mk._flat_ctor' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.recOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.spec' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.compareCodes_eq.match_1_1' does not depend on any axioms\n'LexLeanPreservation.compareCodes_eq._f' depends on axioms: [propext]\n'LexLeanPreservation.compareCodes_eq' depends on axioms: [propext]\n'LexLeanPreservation.compareCodes_swap.match_1_1' does not depend on any axioms\n'LexLeanPreservation.compareCodes_swap._f' depends on axioms: [propext]\n'LexLeanPreservation.compareCodes_swap' depends on axioms: [propext]\n'LexLeanPreservation.lessThanE' does not depend on any axioms\n'LexLeanPreservation.prim_compare_key.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_compare_key' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_lessThan' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.orderOf_insert' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.orderBool.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.keySpec_bool' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI16.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI32.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI64.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI8.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderInt.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_int' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderNat.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_nat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.keySpec_pair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderString.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.keySpec_string' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU16.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU32.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU64.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU8.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanCollections.compareCodes._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_2' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_3' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_4' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_def' depends on axioms: [propext]\n'LexLeanCollections.insertEntry.eq_1' does not depend on any axioms\n'LexLeanCollections.insertEntry.eq_2' does not depend on any axioms\n'LexLeanCollections.insertEntry.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.compareValue.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_18' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_20' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_22' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_23' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_24' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_25' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_26' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_27' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_28' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_29' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_30' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_31' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_33' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_34' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_35' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_36' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_37' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_38' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_39' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_40' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_41' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_42' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_43' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_44' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_45' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_46' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_47' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_48' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_49' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_50' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_51' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_52' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_53' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_54' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_55' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_56' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_57' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_58' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_59' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_60' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_61' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_62' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_63' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_65' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_66' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_67' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_68' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_69' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_70' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_71' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_72' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_73' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_74' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_75' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_76' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_77' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_78' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_79' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_80' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_81' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_82' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_83' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_84' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_85' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_86' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_87' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_88' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_89' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_90' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_91' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_92' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_93' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_94' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_95' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_96' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_97' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_98' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_99' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Conv.bool_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Conv.fits_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.FunRel.fits_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ListEnc.enc.eq_1' does not depend on any axioms\n'LexLeanPreservation.ListEnc.enc_cons' does not depend on any axioms\n'LexLeanPreservation.ListEnc.enc_nil' does not depend on any axioms\n'LexLeanPreservation.LookOps' does not depend on any axioms\n'LexLeanPreservation.LookOps.casesOn' does not depend on any axioms\n'LexLeanPreservation.LookOps.l0' does not depend on any axioms\n'LexLeanPreservation.LookOps.leq' does not depend on any axioms\n'LexLeanPreservation.LookOps.lgt' does not depend on any axioms\n'LexLeanPreservation.LookOps.llt' does not depend on any axioms\n'LexLeanPreservation.LookOps.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.LookOps.recOn' does not depend on any axioms\n'LexLeanPreservation.SetOps' does not depend on any axioms\n'LexLeanPreservation.SetOps.c0' does not depend on any axioms\n'LexLeanPreservation.SetOps.casesOn' does not depend on any axioms\n'LexLeanPreservation.SetOps.ceq' does not depend on any axioms\n'LexLeanPreservation.SetOps.cgt' does not depend on any axioms\n'LexLeanPreservation.SetOps.clt' does not depend on any axioms\n'LexLeanPreservation.SetOps.i0' does not depend on any axioms\n'LexLeanPreservation.SetOps.ieq' does not depend on any axioms\n'LexLeanPreservation.SetOps.igt' does not depend on any axioms\n'LexLeanPreservation.SetOps.ilt' does not depend on any axioms\n'LexLeanPreservation.SetOps.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.SetOps.r0' does not depend on any axioms\n'LexLeanPreservation.SetOps.recOn' does not depend on any axioms\n'LexLeanPreservation.SetOps.req' does not depend on any axioms\n'LexLeanPreservation.SetOps.rgt' does not depend on any axioms\n'LexLeanPreservation.SetOps.rlt' does not depend on any axioms\n'LexLeanPreservation.TopoOps' does not depend on any axioms\n'LexLeanPreservation.TopoOps.casesOn' does not depend on any axioms\n'LexLeanPreservation.TopoOps.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.TopoOps.recOn' does not depend on any axioms\n'LexLeanPreservation.TopoOps.s_next' does not depend on any axioms\n'LexLeanPreservation.TopoOps.s_nil' does not depend on any axioms\n'LexLeanPreservation.TopoOps.s_stuck' does not depend on any axioms\n'LexLeanPreservation.TopoOps.z_cons' does not depend on any axioms\n'LexLeanPreservation.TopoOps.z_nil' does not depend on any axioms\n'LexLeanPreservation.Tpl.boolE' does not depend on any axioms\n'LexLeanPreservation.Tpl.byOrder' does not depend on any axioms\n'LexLeanPreservation.Tpl.cns' does not depend on any axioms\n'LexLeanPreservation.Tpl.fn' does not depend on any axioms\n'LexLeanPreservation.Tpl.lst' does not depend on any axioms\n'LexLeanPreservation.Tpl.v' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphInnerFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.pr' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphNodesFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.natOne' does not depend on any axioms\n'LexLeanPreservation.Tpl.nl' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphReachableFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphSuccessorsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphTopologicalFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.iterateFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.iterateUntilFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.listFoldFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapContainsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapFoldFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapInsertFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapLookupFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapProjectFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapRemoveFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reachFrontierFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reachIntoFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reachRoundsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reverseFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setContainsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setFilterFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setInsertFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setRemoveFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setUnionFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoFinished' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoReadyFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoRoundsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoUnreachedFn' does not depend on any axioms\n'LexLeanPreservation.blt_succ_fits._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.blt_succ_fits' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_cond_false' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_cond_true' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.enc_elem' does not depend on any axioms\n'LexLeanPreservation.enc_entry' does not depend on any axioms\n'LexLeanPreservation.foldFits.match_1' does not depend on any axioms\n'LexLeanPreservation.foldFits._f' does not depend on any axioms\n'LexLeanPreservation.foldFits' does not depend on any axioms\n'LexLeanPreservation.foldFits._sunfold' does not depend on any axioms\n'LexLeanPreservation.foldFits._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.foldFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.foldFits.eq_2' does not depend on any axioms\n'LexLeanPreservation.foldFits.eq_def' does not depend on any axioms\n'LexLeanPreservation.graphFits' does not depend on any axioms\n'LexLeanPreservation.graphFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.iterateFits.match_1' does not depend on any axioms\n'LexLeanPreservation.iterateFits._f' does not depend on any axioms\n'LexLeanPreservation.iterateFits' does not depend on any axioms\n'LexLeanPreservation.iterateFits._sunfold' does not depend on any axioms\n'LexLeanPreservation.iterateFits._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.iterateFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.iterateFits.eq_2' does not depend on any axioms\n'LexLeanPreservation.iterateFits.eq_def' does not depend on any axioms\n'LexLeanPreservation.length_eq' does not depend on any axioms\n'LexLeanPreservation.prim_compare_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.reachNext' does not depend on any axioms\n'LexLeanPreservation.tpl_graphInner.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setInsert.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setInsert._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setInsert' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphInner._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphInner' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphNodes.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_graphNodes._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphNodes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapLookup.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapLookup._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapLookup' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphSuccessors' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachFrontier.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_reachInto.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setContains.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setContains._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setContains' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachInto._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachInto' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachFrontier._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachFrontier' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachRounds.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setUnion.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setUnion._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setUnion' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachRounds._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachRounds' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphReachable' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reverse.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_reverse._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reverse' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setRemove.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setRemove._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setRemove' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoReady.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_topoUnreached.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_topoUnreached._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoUnreached' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoReady._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoReady' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoRounds.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_topoRounds._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoRounds' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphTopological' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterate.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_iterate._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterate' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterateUntil.match_1_1' does not depend on any axioms\n'LexLeanPreservation.untilFits.match_1' does not depend on any axioms\n'LexLeanPreservation.untilFits._f' does not depend on any axioms\n'LexLeanPreservation.untilFits' does not depend on any axioms\n'LexLeanPreservation.tpl_iterateUntil._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterateUntil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_listFold.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_listFold._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_listFold' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapContains' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapFold.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapFold._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapFold' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapInsert.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapInsert._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapInsert' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapKeys.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapKeys._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapKeys' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapRemove.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapRemove._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapRemove' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapValues.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapValues._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapValues' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setDifference.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setDifference._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setDifference' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setIntersection.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setIntersection._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setIntersection' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.untilFits._sunfold' does not depend on any axioms\n'LexLeanPreservation.untilFits._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.untilFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.untilFits.eq_2' does not depend on any axioms\n'LexLeanPreservation.untilFits.eq_def' does not depend on any axioms\n'LexLeanPreservation.validExcept.match_1' does not depend on any axioms\n'LexLeanPreservation.InvExcept' does not depend on any axioms\n'LexLeanPreservation.InvList' does not depend on any axioms\n'LexLeanPreservation.InvList.eq_1' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.match_1' does not depend on any axioms\n'LexLeanPreservation.StrictAsc._f' does not depend on any axioms\n'LexLeanPreservation.StrictAsc' does not depend on any axioms\n'LexLeanPreservation.InvMap' does not depend on any axioms\n'LexLeanPreservation.validOption.match_1' does not depend on any axioms\n'LexLeanPreservation.InvOption' does not depend on any axioms\n'LexLeanPreservation.InvOption.eq_1' does not depend on any axioms\n'LexLeanPreservation.InvOption.eq_2' does not depend on any axioms\n'LexLeanPreservation.InvPair' does not depend on any axioms\n'LexLeanPreservation.InvSet' does not depend on any axioms\n'LexLeanPreservation.StrictAsc._sunfold' does not depend on any axioms\n'LexLeanPreservation.StrictAsc._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_1' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_2' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_3' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_def' does not depend on any axioms\n'LexLeanPreservation.Tpl.validListFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validMapFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validOptionFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validPairFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validResultFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validSetFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validTrueFn' does not depend on any axioms\n'LexLeanPreservation.ascMap.match_1' does not depend on any axioms\n'LexLeanPreservation.lessB.match_1' does not depend on any axioms\n'LexLeanPreservation.lessB' does not depend on any axioms\n'LexLeanPreservation.ascMap._f' does not depend on any axioms\n'LexLeanPreservation.ascMap' does not depend on any axioms\n'LexLeanPreservation.ascMap._sunfold' does not depend on any axioms\n'LexLeanPreservation.ascMap._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_1' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_2' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_3' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_def' does not depend on any axioms\n'LexLeanPreservation.ascMap_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.lessB_iff' depends on axioms: [propext]\n'LexLeanPreservation.ascMap_iff._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.ascMap_iff' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.ascMap_inv' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.ascSet._f' does not depend on any axioms\n'LexLeanPreservation.ascSet' does not depend on any axioms\n'LexLeanPreservation.ascSet._sunfold' does not depend on any axioms\n'LexLeanPreservation.ascSet._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_1' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_2' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_3' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_def' does not depend on any axioms\n'LexLeanPreservation.ascSet_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.ascSet_iff._f' depends on axioms: [propext]\n'LexLeanPreservation.ascSet_iff' depends on axioms: [propext]\n'LexLeanPreservation.ascSet_inv' depends on axioms: [propext]\n'LexLeanPreservation.condAnd_iff' depends on axioms: [propext]\n'LexLeanPreservation.invList_eqs.match_1_1' does not depend on any axioms\n'LexLeanPreservation.invList_eqs._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.invList_eqs' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.lessB.eq_1' does not depend on any axioms\n'LexLeanPreservation.lessB_eq' depends on axioms: [propext]\n'LexLeanPreservation.lessB_gt' depends on axioms: [propext]\n'LexLeanPreservation.lessB_lt' depends on axioms: [propext]\n'LexLeanPreservation.someObs.match_1' does not depend on any axioms\n'LexLeanPreservation.someObs' does not depend on any axioms\n'LexLeanPreservation.tpl_validList.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validList.match_1' does not depend on any axioms\n'LexLeanPreservation.validList._f' does not depend on any axioms\n'LexLeanPreservation.validList' does not depend on any axioms\n'LexLeanPreservation.tpl_validList' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validMap.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_validMap._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validMap' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validOption.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validOption' does not depend on any axioms\n'LexLeanPreservation.tpl_validOption' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validPair.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validPair' does not depend on any axioms\n'LexLeanPreservation.tpl_validPair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validResult.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validExcept' does not depend on any axioms\n'LexLeanPreservation.tpl_validResult' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validSet.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_validSet._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validSet' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validTrue' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.trueIff' does not depend on any axioms\n'LexLeanPreservation.validExcept_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validExcept_inv' does not depend on any axioms\n'LexLeanPreservation.validList._sunfold' does not depend on any axioms\n'LexLeanPreservation.validList._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.validList.eq_1' does not depend on any axioms\n'LexLeanPreservation.validList.eq_2' does not depend on any axioms\n'LexLeanPreservation.validList.eq_def' does not depend on any axioms\n'LexLeanPreservation.validList_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validList_iff._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.validList_iff' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.validList_inv' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.validOption.eq_1' does not depend on any axioms\n'LexLeanPreservation.validOption.eq_2' does not depend on any axioms\n'LexLeanPreservation.validOption_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validOption_inv' depends on axioms: [propext]\n'LexLeanPreservation.validPair_inv' depends on axioms: [propext]\n'LexLeanPreservation.validTrue_inv' does not depend on any axioms\n'LexLeanPreservation.Rust.Ctx' does not depend on any axioms\n'LexLeanPreservation.Rust.Flags' does not depend on any axioms\n'LexLeanPreservation.Rust.RCrate' does not depend on any axioms\n'LexLeanPreservation.Rust.RIdent' does not depend on any axioms\n'LexLeanPreservation.Rust.WT._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.adtFields' depends on axioms: [propext]\n'LexLeanTarget.TargetSyntax.IntKind.ofNat' does not depend on any axioms\n'LexLeanTarget.TargetSyntax.IntKind.ofNat_ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Rust.instDecidableEqIntKind_lexLeanPreservation._proof_1' does not depend on any axioms\n'LexLeanPreservation.Rust.instDecidableEqIntKind_lexLeanPreservation._proof_2' does not depend on any axioms\n'LexLeanPreservation.Rust.instDecidableEqIntKind_lexLeanPreservation' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flagOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fnIdent' does not depend on any axioms\n'LexLeanPreservation.Rust.fnFallible' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.inert._f' does not depend on any axioms\n'LexLeanPreservation.Rust.inert' does not depend on any axioms\n'LexLeanPreservation.Rust.WT._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.WTAll._f' does not depend on any axioms\n'LexLeanPreservation.Rust.WTL.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctxLookup.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup._f' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup' does not depend on any axioms\n'LexLeanPreservation.Rust.local_' does not depend on any axioms\n'LexLeanPreservation.Rust.EnvRel' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ROut' does not depend on any axioms\n'LexLeanPreservation.Rust.Halt' does not depend on any axioms\n'LexLeanPreservation.Rust.REnv' does not depend on any axioms\n'LexLeanPreservation.Rust.RExpr' does not depend on any axioms\n'LexLeanPreservation.Rust.RC' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RLet' does not depend on any axioms\n'LexLeanPreservation.Rust.LetsOK' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.append' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.below' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.below.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.brecOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.recOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.append_left' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.append_right' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.below' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.below.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.brecOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.recOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RBlock' does not depend on any axioms\n'LexLeanPreservation.Rust.dispatched_ne' does not depend on any axioms\n'LexLeanPreservation.Rust.finished_ne' does not depend on any axioms\n'LexLeanPreservation.Rust.returned_ne' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_24' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_26' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_28' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_30' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_32' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_34' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_36' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.eval.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_22' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.invoke.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.stable' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.reval_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCB' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.block' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCA' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.revalBlock_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCB.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCI' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.invoke_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCI.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCL' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.revalList_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCL.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.WTAll' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.block_of_lets' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.block_of_raise' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.ctxLookup._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup_slot._simp_1_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotFree' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup_slot' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_cons_other' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sameIdent_self' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_cons_self' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sameIdent_local' depends on axioms: [propext]\n'LexLeanPreservation.Rust.envRel_bind' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.envRel_extra' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.envRel_ghost' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sameIdent_kind' depends on axioms: [propext]\n'LexLeanPreservation.Rust.envRel_temp' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.listIndex_eq.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.listIndex_eq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.listIndex_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.index_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.inert._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.inert._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_nil.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_raise_head.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcl_raise_head.match_1_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcl_raise_head' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_raise_tail' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.revalArms_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.slotFree.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sunfold' depends on axioms: [propext]\n'LexLeanTarget.RustSemantics.eval.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_18' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_20' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.invoke.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.invoke.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.kindNumber.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.lookup.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.lookup.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.lookup.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.lookup.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.lookup.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.lookup.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd' does not depend on any axioms\n'LexLeanPreservation.Rust.isTemp._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isTemp.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isTemp' depends on axioms: [propext]\n'LexLeanPreservation.Rust.letsBind.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds._f' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds._f' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind._f' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind' does not depend on any axioms\n'LexLeanPreservation.Rust.tempFresh' does not depend on any axioms\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.foldN.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.flatB._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep.match_7' does not depend on any axioms\n'LexLeanPreservation.Rust.foldStep' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldB' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats._f' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats' does not depend on any axioms\n'LexLeanPreservation.Rust.okBlock' does not depend on any axioms\n'LexLeanPreservation.Rust.partRead._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Kind.casesOn' does not depend on any axioms\n'LexLeanPreservation.Rust.elseCtx.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.elseCtx' does not depend on any axioms\n'LexLeanPreservation.Rust.elseLets.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.elseLets' does not depend on any axioms\n'LexLeanPreservation.Rust.heldOK.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.heldOK' does not depend on any axioms\n'LexLeanPreservation.Rust.negateR._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.negateR._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.negateR.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.negateR' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_5' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_7' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_9' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identBoxed' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal' does not depend on any axioms\n'LexLeanPreservation.Rust.isWild._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.unboxOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotOK.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocal' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armShape.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.armShape' does not depend on any axioms\n'LexLeanPreservation.Rust.otherArms.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.otherArms' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.noClosure.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.noClosure._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh' depends on axioms: [propext]\n'LexLeanPreservation.Rust.covered' depends on axioms: [propext]\n'LexLeanPreservation.Rust.scrut' does not depend on any axioms\n'LexLeanPreservation.Rust.validU.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.validU' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotOK' does not depend on any axioms\n'LexLeanPreservation.Rust.ctorOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identsDistinct.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct._f' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct' does not depend on any axioms\n'LexLeanPreservation.Rust.litOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArg._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.match_6' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArg.match_8' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArg' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArgs._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildTail.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildsArm.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildsArm' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.itemOK.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemOK' does not depend on any axioms\n'LexLeanPreservation.Rust.itemTyped.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemTyped.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf' does not depend on any axioms\n'LexLeanPreservation.Rust.itemTyped' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_9' does not depend on any axioms\n'LexLeanPreservation.Rust.isFixed._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped' depends on axioms: [propext]\n'LexLeanPreservation.Rust.primTyped' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.litValues._f' does not depend on any axioms\n'LexLeanPreservation.Rust.litValue' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.typedLitAll._f' does not depend on any axioms\n'LexLeanPreservation.Rust.typedLits.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Corr' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.below' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.below.casesOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.brecOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.casesOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.recOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.FunOK' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.CrateOK' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Fresh' does not depend on any axioms\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn' depends on axioms: [propext]\n'LexLeanPreservation.Rust.FunSem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Kind._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.casesOn' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ctorElim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.b.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.e.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.k.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.l.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.m.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.ops.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.recOn' does not depend on any axioms\n'LexLeanPreservation.Rust.KPre.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.KPre' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Kind.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.ctorElim' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Kind.nat.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.plain.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.plain.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.recOn' does not depend on any axioms\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesM.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.RealizesM' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Sem.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.viewVal._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Sem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.foldN._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identsDistinct._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_10' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_11' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_12' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_13' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_14' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_6' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_7' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_8' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.litValues' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue._sunfold' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.litValue._unsafe_rec' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues._sunfold' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.paramCtx._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patsBinds' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.patLocals._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patsBinds._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArgs._sunfold' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs._unsafe_rec' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.typedLitAll' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.typedLits._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_of_inert.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_of_inert.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_of_inert._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_of_inert' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_of_inert._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_of_inert' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Halt.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.LetsRaise.halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.block_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.boxed' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesM.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesM.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_bytes_inv' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_list_inv' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_string_inv' depends on axioms: [propext]\n'LexLeanPreservation.Rust.takes_of_typed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.allWidth_of.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_eq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_eq._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.tysBeq_eq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq_eq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.wt_fixed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.allWidth_of._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.allWidth_of' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.width_of_typed.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.width_of_typed.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.width_of_typed.match_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.width_of_typed' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.accepts_of_typed' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_apply' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtl_append.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_append._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_append' depends on axioms: [propext]\n'LexLeanPreservation.Rust.apply_result' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.bindPattern_shape.match_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.bindPattern_shape._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.bindPatterns_shape._simp_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindPatterns_shape.match_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.bindPatterns_shape._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.bindPattern_shape' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.bindPatterns_shape' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms_spec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_4' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_6' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_7' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.boolArms_eval' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.boxWith.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_100' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_102' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_96' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_98' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_function' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.call_result' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.const_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.convert_args.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.convert_args' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_append_fresh' depends on axioms: [propext]\n'LexLeanPreservation.Rust.envRel_fresh' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_not._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_cond.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.itemResult.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.eval_match' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fixedTyped.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_18' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_19' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_20' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_21' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_22' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_23' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_24' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_25' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_26' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_27' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_28' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_29' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_30' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_31' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_32' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_33' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_34' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_35' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_36' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_37' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_38' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_39' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_40' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_41' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_42' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_43' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_44' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_45' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_46' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_47' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_48' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_49' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_50' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_51' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_52' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_53' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_54' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_55' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_56' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_57' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_58' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_59' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_60' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_61' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN_sound.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.split_last.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.split_last._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.split_last' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep_spec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcb_nil_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_nomatch.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcb_cons_nomatch' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_stop' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_prefix' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_flat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_read_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_cons_same' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcb_fold_last' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldStep_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldN_sound._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldN_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldB_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldN.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_append' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_bind._simp_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_bind' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotFree_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_weaken' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_elseCtx' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_temp._simp_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_temp' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fromStrings_wt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fromStrings_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fromStrings_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.hasWidth_i16' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_i32' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_i64' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_i8' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u16' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u32' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u64' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u8' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.heldOK.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.heldOK.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.isFixed._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.isSeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.isTemp._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.itemOK.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemOperands_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.itemResult' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.kpre_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_pred._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_pred.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_pred' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.kpre_else' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.kpre_then' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_of_lets' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_b_rcb' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.k_branch' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_cond_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_isZero_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_lit_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate_halt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_negate_halt.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_nonZero_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_23' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_25' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_27' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_29' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_31' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_33' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_35' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_37' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_39' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_41' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_43' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_45' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_47' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_49' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_51' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_not_inv.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_not_inv.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_not_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.k_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_read.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_read' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.kpre_held' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.letsBind.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.letsOK_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.letsOK_shape' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.litValue._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_4' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_def' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_5' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.eq_def' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.lit_branch' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.lookup_through._simp_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.lookup_through' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms_spec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms_eval' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.obsL_evalList_zero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.obs_eval_zero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.oneOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf_halt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.param_env.match_1_1' depends on axioms: [propext]\n'LexLeanTarget.TargetSemantics.bindAll.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.param_env._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.param_env' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.patBinds.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_10' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_6' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_7' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_8' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.primTyped.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_apply_halt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_apply_halt.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_apply_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_call_halt.match_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_runtime' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_construct' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct_halt.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct_halt.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_isZero.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_isZero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_lit.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_lit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue._simp_10' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue._simp_9' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue.match_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_pair.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_pair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_litValues.match_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rcl_litValues._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_nonZero.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_nonZero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_pair_halt_left' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_pair_halt_right' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_widen.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_widen' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_widen_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_11' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_7' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_litValues' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_nil_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_single_halt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_single_halt.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_single_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_widen_one' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.readOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizesL_halt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizesL_haltL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizes_halt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizesM_overflow' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizes_oneOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.runItem_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.runItem_succ' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_applyGen.match_1_13' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen.match_1_15' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen.match_1_28' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_apply' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_applyF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_bOfE' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_build.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_build.match_1_99' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_build' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildConst' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildPair.match_1_101' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_97' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_99' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildSucc.match_1_129' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSucc.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSucc' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildSuccF.match_1_101' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSuccF.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSuccF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_callF.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callF.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_callOps.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callOps.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callOps' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_closure.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.wtl_length.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_length._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_length' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_closure' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_cond.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_cond.match_1_11' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_condId.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_condId' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_eOfB' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_eOfBFold' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_eOfBNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_fOfB' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_unit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_fUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kHeld' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kLit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kId' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kIf' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kNeg' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kSame' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_lCons.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons.match_1_17' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons.match_1_19' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_lNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_letBind.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letBind.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letBind' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_letWild.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letWild.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letWild' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBool._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchHolder.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchHolder.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchHolder' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBool' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBoolId._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBoolId.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchBoolId' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchNat._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchNat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchUnit._proof_1_386' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchUnit.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchUnit.match_1_387' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsCons._simp_1_13' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsCons.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons.match_1_14' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons.match_1_16' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsOfL' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_29' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_31' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_ops_box.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_ops_box.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_ops_box.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_ops_box' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_part._sparseCasesOn_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_part.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_part.match_1_14' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_part.match_1_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_part' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_part._sparseCasesOn_1_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_prim.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_prim.match_1_38' does not depend on any axioms\n'LexLeanPreservation.Rust.wtAll_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wtAll_iff._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.wtAll_iff' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_append' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_bitwise' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_checked' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_convert' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_decode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_encode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_fixedTyped.match_1_67' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_format' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_index' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_join' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_parse' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_shift' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.slice_eq' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_slice' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_split' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_unary' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtl_one.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_one' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_three.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_three' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_two.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_two' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_fixedTyped' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_prim' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_prim' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_primF.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF.match_1_7' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_primWiden.match_1_108' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_110' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_112' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_114' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_116' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.typedLitAll_wt.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit_wt.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits_wt.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_var' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_varUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_zero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.shapeOf.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_10' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_11' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_12' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_13' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_14' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_6' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_7' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_8' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.tempFresh.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_12.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_13.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_14.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.allWidth.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.allWidth.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.allWidth.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_100' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_101' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_102' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_103' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_104' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_105' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_106' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_107' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_108' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_109' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_110' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_111' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_112' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_113' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_114' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_115' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_116' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_117' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_118' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_119' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_120' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_121' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_122' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_123' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_124' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_125' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_126' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_127' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_128' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_129' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_130' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_131' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_132' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_133' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_134' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_135' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_136' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_137' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_138' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_139' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_140' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_141' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_142' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_143' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_144' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_145' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_146' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_147' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_148' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_149' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_150' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_151' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_152' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_153' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_154' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_155' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_156' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_157' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_158' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_159' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_160' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_161' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_162' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_163' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_164' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_165' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_166' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_167' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_168' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_169' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_170' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_171' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_172' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_173' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_174' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_175' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_176' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_177' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_178' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_179' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_180' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_181' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_182' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_183' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_184' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_185' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_186' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_51' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_52' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_53' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_54' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_55' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_56' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_57' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_58' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_59' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_60' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_61' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_62' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_63' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_64' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_65' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_66' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_67' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_68' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_69' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_70' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_71' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_72' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_73' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_74' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_75' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_76' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_77' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_78' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_79' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_80' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_81' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_82' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_83' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_84' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_85' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_86' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_87' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_88' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_89' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_90' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_91' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_92' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_93' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_94' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_95' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_96' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_97' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_98' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_99' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_100' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_101' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_102' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_103' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_104' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_105' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_106' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_107' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_108' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_109' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_110' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_111' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_112' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_113' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_114' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_115' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_116' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_117' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_118' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_119' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_120' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_121' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_122' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_123' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_124' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_125' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_126' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_127' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_128' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_129' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_130' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_131' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_132' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_133' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_134' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_135' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_136' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_137' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_138' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_139' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_140' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_141' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_142' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_143' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_144' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_145' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_146' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_147' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_148' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_149' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_150' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_151' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_152' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_153' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_154' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_155' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_156' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_157' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_158' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_159' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_160' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_161' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_162' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_163' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_164' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_165' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_166' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_167' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_168' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_169' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_170' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_171' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_172' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_173' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_174' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_175' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_176' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_177' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_178' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_179' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_180' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_181' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_182' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_183' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_184' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_51' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_52' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_53' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_54' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_55' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_56' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_57' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_58' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_59' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_60' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_61' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_62' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_63' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_64' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_65' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_66' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_67' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_68' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_69' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_70' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_71' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_72' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_73' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_74' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_75' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_76' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_77' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_78' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_79' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_80' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_81' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_82' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_83' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_84' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_85' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_86' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_87' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_88' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_89' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_90' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_91' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_92' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_93' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_94' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_95' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_96' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_97' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_98' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_99' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemAccepts.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemAccepts.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.literal.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_10' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_11' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_12' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_13' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_14' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_15' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_3' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_4' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_5' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_6' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_7' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_8' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_9' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.propagated.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.returned.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_10' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_11' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_12' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_13' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_14' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_15' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_16' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_17' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_18' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_19' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_20' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_21' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_22' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_23' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_24' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_25' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_26' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_27' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_28' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_29' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_30' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_31' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_32' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_33' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_34' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_35' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_36' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_37' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_38' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_39' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_40' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_41' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_42' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_43' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_44' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_45' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_46' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_47' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_48' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_49' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_5' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_50' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_51' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_52' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_53' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_54' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_55' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_56' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_57' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_58' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_59' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_6' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_60' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_61' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_62' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_63' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_64' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_65' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_66' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_67' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_68' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_69' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_7' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_70' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_71' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_72' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_73' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_74' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_75' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_76' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_77' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_78' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_79' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_8' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_80' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_81' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_82' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_83' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_9' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_10' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_100' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_101' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_102' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_103' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_104' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_105' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_106' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_107' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_108' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_109' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_11' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_110' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_111' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_112' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_113' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_114' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_115' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_116' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_117' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_118' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_119' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_12' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_120' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_121' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_122' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_123' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_124' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_125' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_126' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_127' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_128' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_129' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_13' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_130' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_131' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_132' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_133' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_134' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_135' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_136' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_137' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_138' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_139' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_14' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_140' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_141' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_142' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_143' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_144' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_145' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_146' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_147' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_148' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_149' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_15' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_150' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_151' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_152' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_153' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_154' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_155' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_156' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_157' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_158' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_159' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_16' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_160' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_161' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_162' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_163' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_164' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_165' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_166' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_167' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_168' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_169' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_17' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_170' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_171' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_172' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_173' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_174' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_175' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_176' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_177' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_178' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_179' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_18' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_180' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_181' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_182' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_183' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_184' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_185' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_186' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_187' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_188' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_189' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_19' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_190' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_191' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_192' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_193' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_194' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_195' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_196' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_197' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_198' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_199' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_20' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_200' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_201' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_202' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_203' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_204' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_205' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_206' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_207' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_208' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_209' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_21' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_210' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_211' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_212' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_213' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_214' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_215' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_216' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_217' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_218' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_219' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_22' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_220' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_221' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_222' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_223' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_224' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_225' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_226' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_227' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_228' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_229' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_23' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_230' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_231' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_232' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_233' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_234' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_235' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_236' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_237' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_238' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_239' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_24' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_240' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_241' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_242' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_243' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_244' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_245' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_246' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_247' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_248' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_249' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_25' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_250' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_251' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_252' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_253' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_254' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_255' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_256' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_257' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_258' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_259' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_26' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_260' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_261' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_262' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_263' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_264' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_265' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_266' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_267' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_268' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_269' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_27' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_270' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_271' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_272' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_273' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_274' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_275' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_276' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_277' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_278' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_279' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_28' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_280' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_281' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_282' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_283' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_284' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_285' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_286' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_287' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_288' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_289' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_29' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_290' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_291' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_292' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_293' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_294' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_295' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_296' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_297' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_298' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_299' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_30' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_300' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_301' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_302' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_303' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_304' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_305' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_306' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_307' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_308' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_309' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_31' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_310' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_311' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_312' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_313' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_314' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_315' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_316' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_317' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_318' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_319' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_32' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_320' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_321' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_322' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_323' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_324' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_325' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_326' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_327' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_328' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_329' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_33' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_330' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_331' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_332' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_333' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_334' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_335' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_336' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_337' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_338' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_339' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_34' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_340' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_341' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_342' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_343' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_344' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_345' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_346' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_347' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_348' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_349' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_35' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_350' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_351' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_352' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_353' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_354' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_355' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_356' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_357' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_358' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_359' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_36' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_360' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_361' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_362' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_363' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_364' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_365' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_366' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_367' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_368' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_369' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_37' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_370' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_38' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_39' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_40' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_41' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_42' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_43' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_44' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_45' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_46' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_47' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_48' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_49' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_5' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_50' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_51' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_52' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_53' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_54' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_55' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_56' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_57' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_58' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_59' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_6' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_60' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_61' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_62' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_63' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_64' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_65' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_66' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_67' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_68' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_69' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_7' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_70' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_71' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_72' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_73' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_74' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_75' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_76' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_77' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_78' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_79' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_8' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_80' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_81' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_82' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_83' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_84' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_85' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_86' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_87' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_88' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_89' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_9' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_90' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_91' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_92' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_93' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_94' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_95' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_96' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_97' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_98' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_99' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromStrings.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromStrings.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromStrings.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.primitive.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1000' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1001' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1002' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1003' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1004' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1005' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1006' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1007' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1008' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1009' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1010' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1011' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1012' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1013' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1014' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1015' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1016' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1017' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1018' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1019' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1020' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1021' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1022' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1023' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1024' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1025' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1026' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1027' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1028' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1029' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1030' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1031' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1032' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1033' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1034' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1035' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1036' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1037' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1038' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1039' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1040' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1041' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1042' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1043' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1044' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1045' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1046' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1047' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1048' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1049' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1050' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1051' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1052' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1053' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1054' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1055' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1056' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1057' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1058' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1059' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1060' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1061' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1062' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1063' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1064' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1065' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1066' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1067' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1068' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1069' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1070' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1071' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1072' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1073' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1074' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1075' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1076' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1077' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1078' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1079' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1080' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1081' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1082' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1083' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1084' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1085' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1086' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1087' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1088' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1089' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1090' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1091' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1092' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1093' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1094' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1095' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1096' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1097' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1098' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1099' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1426' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1427' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1428' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1429' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1430' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1431' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1432' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1433' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1434' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1435' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1436' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1437' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1438' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1439' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1440' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1441' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1442' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1443' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1444' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1445' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1446' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1447' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1448' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1449' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1450' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1451' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1452' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1453' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1454' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1455' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1456' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1457' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1458' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1459' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1460' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1461' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1462' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1463' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1464' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1465' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1466' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1467' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1468' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1469' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1470' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1471' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1472' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1473' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1474' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1475' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1476' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1477' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1478' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1479' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1480' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1481' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1482' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1483' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1484' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1485' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1486' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1487' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1488' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1489' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1490' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1491' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1492' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1493' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1494' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1495' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1496' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1497' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1498' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1499' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1500' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1501' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1502' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1503' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1504' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1505' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1506' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1507' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1508' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1509' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1510' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1511' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1512' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1513' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1514' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1515' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1516' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1517' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1518' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1519' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1520' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1521' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1522' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1523' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1524' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1525' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1526' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1527' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1528' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1529' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1530' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1531' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1532' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1533' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1534' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1535' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1536' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1537' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1538' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1539' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1540' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1541' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1542' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1543' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1544' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1545' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1546' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1547' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1548' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1549' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1550' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1551' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1552' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1553' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1554' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1555' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1556' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1557' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1558' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1559' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1560' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1561' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1562' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1563' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1564' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1565' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1566' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1567' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1568' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1569' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1570' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1571' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1572' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1573' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1574' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1575' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1576' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1577' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1578' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1579' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1580' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1581' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1582' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1583' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1584' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1585' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1586' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1587' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1588' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1589' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1590' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1591' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1592' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1593' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1594' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1595' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1596' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1597' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1598' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1599' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1600' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1601' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1602' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1603' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1604' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1605' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1606' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1607' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1608' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1609' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1610' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1611' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1612' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1613' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1614' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1615' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1616' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1617' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1618' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1619' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1620' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1621' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1622' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1623' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1624' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1625' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1626' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1627' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1628' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1629' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1630' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1631' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1632' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1633' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1634' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1635' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1636' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1637' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1638' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1639' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1640' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1641' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1642' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1643' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1644' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1645' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1646' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1647' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1648' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1649' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1650' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1651' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1652' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1653' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1654' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1655' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1656' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1657' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1658' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1659' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1660' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1661' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1662' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1663' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1664' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1665' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1666' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1667' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1668' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1669' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1670' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1671' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1672' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1673' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1674' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1675' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1676' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1677' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1678' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1679' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1680' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1681' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1682' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1683' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1684' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1685' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1686' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1687' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1688' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1689' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1690' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1691' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1692' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1693' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1694' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1695' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1696' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1697' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1698' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1699' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1700' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1701' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1702' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1703' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1704' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1705' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1706' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1707' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1708' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1709' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1710' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1711' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1712' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1713' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1714' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1715' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1716' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1717' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1718' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1719' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1720' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1721' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1722' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1723' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1724' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1725' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1726' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1727' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1728' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1729' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1730' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1731' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1732' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1733' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1734' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1735' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1736' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1737' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1738' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1739' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1740' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1741' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1742' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1743' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1744' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1745' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1746' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1747' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1748' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1749' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1750' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1751' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1752' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1753' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1754' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1755' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1756' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1757' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1758' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1759' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1760' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1761' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1762' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1763' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1764' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1765' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1766' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1767' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1768' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1769' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1770' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1771' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1772' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1773' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1774' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1775' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1776' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1777' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1778' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1779' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1780' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1781' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1782' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1783' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1784' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1785' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1786' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1787' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1788' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1789' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1790' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1791' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1792' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1793' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1794' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1795' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1796' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1797' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1798' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1799' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_18' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1800' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1801' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1802' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1803' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1804' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1805' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1806' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1807' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1808' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1809' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1810' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1811' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1812' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1813' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1814' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1815' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1816' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1817' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1818' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1819' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1820' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1821' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1822' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1823' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1824' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1825' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1826' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1827' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1828' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1829' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1830' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1831' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1832' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1833' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1834' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1835' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1836' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1837' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1838' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1839' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1840' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1841' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1842' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1843' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1844' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1845' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1846' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1847' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1848' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1849' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1850' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1851' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1852' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1853' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1854' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1855' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1856' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1857' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1858' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1859' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1860' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1861' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1862' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1863' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1864' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1865' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1866' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1867' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1868' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1869' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1870' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1871' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1872' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1873' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1874' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1875' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1876' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1877' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1878' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1879' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1880' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1881' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1882' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1883' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1884' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1885' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1886' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1887' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1888' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1889' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1890' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1891' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1892' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1893' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1894' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1895' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1896' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1897' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1898' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1899' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1900' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1901' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1902' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1903' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1904' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1905' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1906' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1907' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1908' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1909' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1910' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1911' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1912' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1913' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1914' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1915' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1916' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1917' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1918' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1919' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1920' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1921' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1922' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1923' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1924' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1925' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1926' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1927' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1928' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1929' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1930' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1931' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1932' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1933' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1934' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1935' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1936' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1937' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1938' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1939' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1940' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1941' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1942' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1943' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1944' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1945' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1946' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1947' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1948' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1949' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1950' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1951' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1952' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1953' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1954' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1955' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1956' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1957' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1958' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1959' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1960' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1961' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1962' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1963' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1964' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1965' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1966' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1967' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1968' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1969' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1970' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1971' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1972' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1973' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1974' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1975' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1976' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1977' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1978' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1979' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1980' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1981' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1982' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1983' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1984' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1985' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1986' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1987' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1988' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1989' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1990' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1991' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1992' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1993' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1994' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1995' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1996' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1997' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1998' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1999' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_20' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2000' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2001' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2002' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2003' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2004' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2005' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2006' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2007' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2008' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2009' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2010' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2011' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2012' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2013' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2014' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2015' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2016' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2017' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2018' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2019' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2020' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2021' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2022' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2023' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2024' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2025' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2026' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2027' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2028' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2029' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2030' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2031' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2032' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2033' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2034' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2035' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2036' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2037' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2038' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2039' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2040' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2041' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2042' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2043' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2044' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2045' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2046' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2047' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2048' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2049' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2050' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2051' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2052' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2053' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2054' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2055' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2056' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2057' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2058' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2059' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2060' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2061' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2062' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2063' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2064' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2065' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2066' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2067' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2068' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2069' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2070' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2071' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2072' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2073' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2074' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2075' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2076' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2077' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2078' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2079' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2080' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2081' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2082' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2083' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2084' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2085' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2086' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2087' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2088' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2089' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2090' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2091' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2092' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2093' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2094' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2095' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2096' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2097' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2098' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2099' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_22' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_23' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_24' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2426' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2427' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2428' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2429' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2430' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2431' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2432' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2433' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2434' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2435' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2436' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2437' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2438' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2439' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2440' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2441' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2442' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2443' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2444' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2445' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2446' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2447' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2448' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2449' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2450' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2451' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2452' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2453' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2454' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2455' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2456' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2457' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2458' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2459' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2460' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2461' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2462' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2463' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2464' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2465' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2466' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2467' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2468' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2469' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2470' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2471' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2472' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2473' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2474' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2475' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2476' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2477' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2478' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2479' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2480' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2481' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2482' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2483' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2484' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2485' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2486' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2487' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2488' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2489' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2490' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2491' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2492' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2493' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2494' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2495' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2496' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2497' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2498' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2499' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_25' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2500' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2501' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2502' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2503' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2504' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2505' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2506' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2507' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2508' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2509' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2510' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2511' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2512' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2513' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2514' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2515' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2516' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2517' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2518' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2519' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2520' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2521' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2522' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2523' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2524' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2525' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2526' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2527' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2528' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2529' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2530' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2531' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2532' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2533' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2534' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2535' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2536' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2537' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2538' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2539' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2540' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2541' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2542' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2543' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2544' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2545' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2546' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2547' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2548' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2549' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2550' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2551' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2552' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2553' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2554' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2555' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2556' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2557' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2558' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2559' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2560' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2561' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2562' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2563' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2564' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2565' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2566' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2567' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2568' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2569' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2570' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2571' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2572' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2573' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2574' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2575' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2576' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2577' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2578' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2579' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2580' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2581' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2582' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2583' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2584' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2585' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2586' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2587' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2588' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2589' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2590' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2591' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2592' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2593' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2594' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2595' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2596' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2597' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2598' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2599' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_26' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2600' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2601' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2602' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2603' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2604' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2605' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2606' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2607' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2608' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2609' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2610' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2611' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2612' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2613' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2614' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2615' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2616' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2617' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2618' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2619' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2620' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2621' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2622' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2623' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2624' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2625' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2626' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2627' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2628' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2629' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2630' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2631' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2632' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2633' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2634' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2635' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2636' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2637' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2638' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2639' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2640' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2641' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2642' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2643' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2644' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2645' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2646' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2647' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2648' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2649' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2650' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2651' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2652' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2653' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2654' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2655' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2656' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2657' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2658' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2659' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2660' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2661' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2662' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2663' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2664' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2665' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2666' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2667' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2668' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2669' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2670' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2671' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2672' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2673' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2674' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2675' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2676' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2677' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2678' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2679' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2680' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2681' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2682' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2683' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2684' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2685' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2686' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2687' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2688' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2689' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2690' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2691' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2692' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2693' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2694' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2695' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2696' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2697' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2698' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2699' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_27' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2700' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2701' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2702' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2703' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2704' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2705' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2706' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2707' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2708' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2709' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2710' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2711' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2712' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2713' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2714' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2715' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2716' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2717' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2718' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2719' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2720' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2721' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2722' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2723' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2724' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2725' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2726' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2727' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2728' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2729' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2730' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2731' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2732' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2733' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2734' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2735' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2736' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2737' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2738' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2739' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2740' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2741' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2742' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2743' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2744' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2745' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2746' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2747' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2748' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2749' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2750' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2751' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2752' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2753' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2754' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2755' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2756' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2757' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2758' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2759' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2760' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2761' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2762' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2763' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2764' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2765' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2766' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2767' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2768' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2769' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2770' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2771' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2772' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2773' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2774' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2775' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2776' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2777' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2778' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2779' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2780' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2781' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2782' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2783' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2784' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2785' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2786' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2787' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2788' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2789' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2790' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2791' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2792' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2793' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2794' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2795' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2796' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2797' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2798' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2799' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_28' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2800' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2801' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2802' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2803' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2804' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2805' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2806' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2807' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2808' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2809' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2810' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2811' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2812' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2813' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2814' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2815' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2816' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2817' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2818' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2819' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2820' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2821' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2822' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2823' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2824' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2825' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2826' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2827' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2828' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2829' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2830' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2831' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2832' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2833' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2834' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2835' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2836' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2837' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2838' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2839' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2840' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2841' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2842' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2843' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2844' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2845' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2846' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2847' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2848' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2849' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2850' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2851' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2852' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2853' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2854' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2855' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2856' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2857' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2858' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2859' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2860' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2861' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2862' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2863' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2864' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2865' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2866' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2867' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2868' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2869' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2870' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2871' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2872' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2873' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2874' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2875' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2876' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2877' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2878' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2879' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2880' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2881' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2882' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2883' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2884' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2885' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2886' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2887' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2888' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2889' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2890' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2891' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2892' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2893' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2894' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2895' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2896' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2897' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2898' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2899' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_29' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2900' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2901' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2902' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2903' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2904' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2905' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2906' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2907' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2908' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2909' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2910' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2911' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2912' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2913' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2914' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2915' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2916' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2917' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2918' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2919' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2920' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2921' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2922' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2923' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2924' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2925' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2926' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2927' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2928' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2929' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2930' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2931' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2932' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2933' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2934' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2935' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2936' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2937' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2938' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2939' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2940' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2941' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2942' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2943' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2944' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2945' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2946' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2947' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2948' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2949' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2950' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2951' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2952' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2953' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2954' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2955' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2956' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2957' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2958' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2959' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2960' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2961' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2962' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2963' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2964' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2965' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2966' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2967' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2968' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2969' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2970' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2971' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2972' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2973' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2974' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2975' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2976' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2977' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2978' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2979' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2980' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2981' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2982' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2983' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2984' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2985' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2986' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2987' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2988' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2989' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2990' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2991' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2992' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2993' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2994' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2995' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2996' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2997' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2998' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2999' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_30' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3000' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3001' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3002' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3003' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3004' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3005' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3006' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3007' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3008' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3009' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3010' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3011' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3012' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3013' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3014' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3015' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3016' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3017' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3018' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3019' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3020' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3021' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3022' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3023' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3024' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3025' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3026' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3027' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3028' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3029' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3030' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3031' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3032' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3033' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3034' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3035' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3036' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3037' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3038' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3039' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3040' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3041' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3042' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3043' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3044' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3045' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3046' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3047' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3048' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3049' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3050' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3051' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3052' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3053' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3054' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3055' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3056' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3057' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3058' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3059' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3060' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3061' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3062' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3063' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3064' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3065' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3066' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3067' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3068' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3069' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3070' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3071' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3072' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3073' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3074' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3075' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3076' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3077' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3078' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3079' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3080' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3081' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3082' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3083' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3084' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3085' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3086' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3087' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3088' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3089' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3090' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3091' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3092' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3093' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3094' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3095' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3096' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3097' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3098' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3099' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_31' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_33' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_34' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_35' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_36' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_37' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_38' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_39' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_40' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_41' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_42' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_426' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_427' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_428' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_429' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_43' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_430' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_431' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_432' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_433' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_434' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_435' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_436' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_437' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_438' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_439' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_44' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_440' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_441' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_442' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_443' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_444' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_445' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_446' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_447' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_448' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_449' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_45' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_450' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_451' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_452' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_453' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_454' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_455' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_456' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_457' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_458' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_459' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_46' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_460' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_461' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_462' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_463' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_464' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_465' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_466' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_467' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_468' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_469' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_47' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_470' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_471' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_472' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_473' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_474' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_475' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_476' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_477' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_478' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_479' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_48' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_480' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_481' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_482' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_483' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_484' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_485' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_486' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_487' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_488' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_489' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_49' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_490' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_491' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_492' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_493' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_494' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_495' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_496' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_497' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_498' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_499' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_50' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_500' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_501' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_502' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_503' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_504' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_505' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_506' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_507' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_508' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_509' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_51' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_510' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_511' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_512' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_513' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_514' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_515' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_516' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_517' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_518' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_519' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_52' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_520' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_521' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_522' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_523' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_524' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_525' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_526' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_527' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_528' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_529' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_53' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_530' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_531' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_532' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_533' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_534' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_535' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_536' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_537' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_538' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_539' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_54' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_540' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_541' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_542' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_543' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_544' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_545' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_546' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_547' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_548' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_549' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_55' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_550' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_551' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_552' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_553' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_554' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_555' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_556' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_557' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_558' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_559' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_56' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_560' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_561' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_562' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_563' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_564' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_565' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_566' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_567' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_568' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_569' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_57' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_570' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_571' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_572' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_573' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_574' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_575' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_576' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_577' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_578' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_579' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_58' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_580' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_581' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_582' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_583' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_584' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_585' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_586' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_587' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_588' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_589' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_59' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_590' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_591' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_592' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_593' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_594' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_595' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_596' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_597' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_598' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_599' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_60' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_600' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_601' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_602' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_603' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_604' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_605' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_606' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_607' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_608' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_609' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_61' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_610' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_611' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_612' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_613' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_614' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_615' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_616' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_617' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_618' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_619' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_62' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_620' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_621' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_622' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_623' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_624' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_625' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_626' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_627' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_628' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_629' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_63' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_630' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_631' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_632' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_633' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_634' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_635' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_636' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_637' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_638' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_639' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_640' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_641' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_642' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_643' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_644' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_645' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_646' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_647' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_648' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_649' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_65' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_650' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_651' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_652' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_653' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_654' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_655' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_656' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_657' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_658' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_659' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_66' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_660' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_661' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_662' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_663' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_664' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_665' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_666' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_667' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_668' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_669' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_67' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_670' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_671' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_672' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_673' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_674' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_675' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_676' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_677' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_678' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_679' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_68' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_680' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_681' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_682' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_683' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_684' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_685' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_686' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_687' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_688' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_689' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_69' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_690' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_691' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_692' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_693' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_694' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_695' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_696' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_697' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_698' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_699' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_70' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_700' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_701' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_702' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_703' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_704' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_705' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_706' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_707' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_708' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_709' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_71' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_710' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_711' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_712' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_713' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_714' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_715' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_716' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_717' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_718' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_719' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_72' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_720' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_721' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_722' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_723' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_724' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_725' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_726' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_727' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_728' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_729' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_73' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_730' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_731' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_732' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_733' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_734' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_735' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_736' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_737' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_738' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_739' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_74' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_740' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_741' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_742' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_743' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_744' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_745' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_746' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_747' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_748' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_749' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_75' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_750' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_751' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_752' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_753' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_754' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_755' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_756' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_757' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_758' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_759' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_76' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_760' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_761' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_762' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_763' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_764' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_765' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_766' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_767' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_768' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_769' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_77' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_770' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_771' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_772' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_773' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_774' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_775' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_776' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_777' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_778' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_779' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_78' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_780' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_781' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_782' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_783' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_784' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_785' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_786' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_787' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_788' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_789' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_79' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_790' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_791' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_792' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_793' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_794' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_795' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_796' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_797' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_798' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_799' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_80' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_800' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_801' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_802' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_803' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_804' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_805' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_806' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_807' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_808' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_809' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_81' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_810' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_811' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_812' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_813' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_814' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_815' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_816' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_817' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_818' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_819' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_82' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_820' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_821' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_822' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_823' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_824' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_825' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_826' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_827' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_828' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_829' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_83' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_830' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_831' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_832' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_833' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_834' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_835' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_836' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_837' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_838' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_839' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_84' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_840' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_841' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_842' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_843' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_844' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_845' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_846' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_847' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_848' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_849' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_85' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_850' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_851' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_852' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_853' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_854' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_855' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_856' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_857' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_858' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_859' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_86' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_860' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_861' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_862' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_863' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_864' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_865' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_866' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_867' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_868' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_869' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_87' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_870' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_871' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_872' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_873' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_874' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_875' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_876' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_877' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_878' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_879' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_88' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_880' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_881' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_882' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_883' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_884' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_885' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_886' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_887' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_888' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_889' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_89' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_890' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_891' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_892' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_893' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_894' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_895' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_896' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_897' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_898' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_899' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_90' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_900' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_901' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_902' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_903' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_904' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_905' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_906' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_907' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_908' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_909' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_91' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_910' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_911' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_912' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_913' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_914' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_915' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_916' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_917' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_918' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_919' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_92' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_920' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_921' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_922' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_923' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_924' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_925' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_926' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_927' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_928' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_929' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_93' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_930' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_931' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_932' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_933' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_934' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_935' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_936' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_937' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_938' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_939' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_94' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_940' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_941' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_942' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_943' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_944' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_945' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_946' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_947' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_948' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_949' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_95' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_950' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_951' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_952' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_953' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_954' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_955' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_956' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_957' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_958' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_959' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_96' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_960' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_961' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_962' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_963' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_964' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_965' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_966' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_967' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_968' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_969' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_97' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_970' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_971' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_972' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_973' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_974' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_975' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_976' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_977' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_978' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_979' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_98' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_980' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_981' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_982' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_983' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_984' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_985' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_986' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_987' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_988' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_989' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_99' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_990' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_991' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_992' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_993' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_994' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_995' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_996' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_997' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_998' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_999' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.adtFields.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_12.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_13.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_12.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat_outer' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.boxedOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.boxedOne.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.boxedOne' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bp_entries._simp_1_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.simplePat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bp_entries.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.entriesOf._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bp_entries._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.bp_entries' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.directPat_cons._simp_1_4' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.identBoxed_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identLocal_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf_spec' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_cons' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_len.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_len._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_len' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_loads._simp_1_27' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_loads._simp_1_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_loads.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none._simp_1_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none._simp_1_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rlookup_append' depends on axioms: [propext]\n'LexLeanPreservation.Rust.same_boxed_boxed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_boxed_none' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_local_none._simp_1_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_local_none._simp_1_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_local_none.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.same_local_local' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_local_none._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_local_none' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_boxed_local' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rlookup_local_boxed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rlookup_local_single' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_loads._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.directPat_loads' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_boxed_some._simp_1_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_some._simp_1_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_some.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_some._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.entries_boxed_some' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.envRel_locals' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fields_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindPatterns_single' depends on axioms: [propext]\n'LexLeanPreservation.Rust.outer_bind' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.paramCtx_length.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_length._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_length' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.bindOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOne.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.covered.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.covered_mem._simp_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.wt_uninh._simp_10' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.covered_mem' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.ctorOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.destruct_canon' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq_refl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.destruct_excl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.directPat.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_lookup.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_none_of._simp_1_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_none_of.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sameIdent_iff' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_none_of._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_none_of' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.identsDistinct.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.entries_lookup._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_lookup' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.eval_field.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.eval_field._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_field.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_field' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats_none._simp_1_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats_none.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats_none._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats_none' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats_some._simp_1_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats_some.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats_some._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats_some' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_partRead' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.tyBeq_unit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.field_out' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.findArm_some.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.findArm_some._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.findArm_some' depends on axioms: [propext]\n'LexLeanPreservation.Rust.findDispatch_some.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.findDispatch_some._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.findDispatch_some' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_ext' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identBoxed.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identBoxed.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.isWild._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.okBlock.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.otherArms.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.otherArms_mem._simp_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.otherArms_mem' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.outer_miss' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.outer_view' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_ext.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_ext._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_ext' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_fresh.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_fresh._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_fresh' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocal.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_matchOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_matchOn_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_uncons.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_uncons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_scrut' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rca_hit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rca_miss' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_det' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_rebuild.match_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_eq_of_same' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg_rc' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_rebuild._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_rebuild' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.readOf_rc' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.realizesM_value' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArg_simple' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_def' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs_simple.match_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs_simple._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs_simple' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_14.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuild_rca._simp_1_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuild_rca.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_value._simp_1_21' depends on axioms: [propext]\n'LexLeanPreservation.Rust.single_rebuild' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_rca._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_rca' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuildsArm.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_nil' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_fieldGen._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_fieldGen.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_fieldGen.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.wtl_get.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_get._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_get' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_fieldGen' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_fieldHeld' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_fieldRead' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_mCons._simp_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_mCons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_mNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchArms._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.tyBeq_refl.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq_refl._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.tysBeq_refl.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tysBeq_refl._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_refl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.tysBeq_refl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.uninh_of_inert.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.uninh_of_inert._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh_of_inert' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_uninh.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_uninh._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtl_uninh.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_uninh._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_uninh' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.taken_arm' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchArms' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchPair._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchPair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchRebuilt._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchRebuilt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchRebuilt.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchRebuilt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.simplePat.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.validU.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_uninh' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.findArm.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findArm.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findArm.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_5' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_6' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_7' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_8' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.fl_of' does not depend on any axioms\n'LexLeanPreservation.Rust.fnFallible.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of._simp_1_14' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.funSem_of.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_12' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.isTemp.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isTemp.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.item_ne' depends on axioms: [propext]\n'LexLeanPreservation.Rust.kind_ne' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sound._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sound._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.simulate' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Representable._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Representable.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Representable._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.RepresentableL._f' does not depend on any axioms\n'LexLeanPreservation.Rust.Representable' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Representable._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.Representable._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.compose' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rel_ne_stuck' depends on axioms: [propext]\n'LexLeanPreservation.Rust.repL_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.repL_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.runItem_abort_infallible' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtAll_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wtAll_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_map._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_map' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_adt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_bool' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_bytes' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encExcept.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_encExcept' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_list' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encList' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encOption.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_encOption' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encOrdering' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encPair' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encUnit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_errorV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i32' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i64' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_int' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_listEnc' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_nat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_noneV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_okV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_optEnc.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_someV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_optEnc' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_ordering' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_pairV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_string' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u32' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u64' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_unitValue' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_nil' depends on axioms: [propext]\n'LexLeanPreservation.encExcept.eq_1' does not depend on any axioms\n'LexLeanPreservation.encExcept.eq_2' does not depend on any axioms\n'LexLeanPreservation.encOption.eq_1' does not depend on any axioms\n'LexLeanPreservation.encOption.eq_2' does not depend on any axioms\n'LexLeanPreservation.encPair.eq_1' does not depend on any axioms\n'LexLeanPreservation.encUnit.eq_1' does not depend on any axioms\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.Compose.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.Compose.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.Compose.RustCore.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.Compose.RustCore.__wt_0' depends on axioms: [propext]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.Compose.RustCore.__wt_1' depends on axioms: [propext]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.Compose.RustCore.__wt_2' depends on axioms: [propext]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.Compose.RustCore.__wt_0' depends on axioms: [propext]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.Compose.RustCore.__wt_1' depends on axioms: [propext]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.Compose.RustCore.__wt_2' depends on axioms: [propext]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.Compose.RustStd.__wt_0' depends on axioms: [propext]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.Compose.RustStd.__wt_1' depends on axioms: [propext]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.Compose.RustStd.__wt_3' depends on axioms: [propext]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.Compose.RustStd.__wt_4' depends on axioms: [propext]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.Compose.RustStd.__wt_2' depends on axioms: [propext]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.Compose.RustStd.__wt_0' depends on axioms: [propext]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.Compose.RustStd.__wt_2' depends on axioms: [propext]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.Compose.RustStd.__wt_3' depends on axioms: [propext]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.Compose.RustStd.__wt_1' depends on axioms: [propext]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.Compose.RustStd.__wt_1' depends on axioms: [propext]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.Compose.RustStd.__wt_0' depends on axioms: [propext]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.Compose.RustCore.__wt_0' depends on axioms: [propext]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.Compose.RustCore.__wt_1' depends on axioms: [propext]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.Compose.RustCore.__wt_2' depends on axioms: [propext]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.Compose.RustStd.__wt_0' depends on axioms: [propext]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.Compose.RustStd.__wt_2' depends on axioms: [propext]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.Compose.RustStd.__wt_3' depends on axioms: [propext]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.Compose.RustStd.__wt_1' depends on axioms: [propext]\n'LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.Compose.RustStd.__wt_0' depends on axioms: [propext]\n-- statement vocabulary\ninductive LexLeanPreservation.Obs : Type\nnumber of parameters: 0\nconstructors:\nLexLeanPreservation.Obs.value : LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs\nLexLeanPreservation.Obs.overflow : LexLeanPreservation.Obs\nLexLeanPreservation.Obs.stuck : LexLeanPreservation.Obs\ndef LexLeanPreservation.Rel : Bool → LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs :=\nfun fits v => bif fits then LexLeanPreservation.Obs.value v else LexLeanPreservation.Obs.overflow\ndef LexLeanPreservation.Conv : LexLeanTarget.TargetSyntax.Program →\n List (Nat × LexLeanTarget.TargetSyntax.Value) → LexLeanTarget.TargetSyntax.Expr → LexLeanPreservation.Obs → Prop :=\nfun p env e o => ∃ n, LexLeanPreservation.obs (LexLeanTarget.TargetSemantics.eval n p env e) = some o\ndef LexLeanPreservation.FunRel : LexLeanTarget.TargetSyntax.Program →\n Nat → List LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs → Prop :=\nfun p f args o =>\n ∃ fn,\n LexLeanRuntime.index p.functions f = some fn ∧\n ∃ env,\n LexLeanTarget.TargetSemantics.bindAll fn.parameters args [] = some env ∧\n LexLeanPreservation.Conv p env fn.body o\ndef LexLeanPreservation.RunConv : LexLeanTarget.TargetSyntax.Program →\n Nat → List LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs → Prop :=\nfun p entry args o => ∃ n, LexLeanPreservation.obs (LexLeanTarget.TargetSemantics.run n p entry args) = some o\ndef LexLeanPreservation.Rust.WT : LexLeanTarget.TargetSyntax.Program →\n LexLeanPreservation.Rust.RCrate →\n LexLeanPreservation.Rust.Flags → LexLeanTarget.TargetSyntax.Value → LexLeanTarget.TargetSyntax.Ty → Prop :=\nfun p c A x x_1 =>\n x.brecOn (LexLeanPreservation.Rust.WT._f p c A)\n (fun t f => ⟨LexLeanPreservation.Rust.WTL._f p c A t f, LexLeanPreservation.Rust.WTAll._f p c A t f⟩) x_1\ndef LexLeanPreservation.Rust.WTL : LexLeanTarget.TargetSyntax.Program →\n LexLeanPreservation.Rust.RCrate →\n LexLeanPreservation.Rust.Flags →\n List LexLeanTarget.TargetSyntax.Value → List LexLeanTarget.TargetSyntax.Ty → Prop :=\nfun p c A x x_1 =>\n (LexLeanTarget.TargetSyntax.Value.brecOn_1 x (LexLeanPreservation.Rust.WT._f p c A) fun t f =>\n ⟨LexLeanPreservation.Rust.WTL._f p c A t f, LexLeanPreservation.Rust.WTAll._f p c A t f⟩).1\n x_1\ndef LexLeanPreservation.Rust.fnIdent : Nat → LexLeanPreservation.Rust.RIdent :=\nfun f => LexLeanTarget.RustSyntax.Ident.generated LexLeanTarget.RustSyntax.IdentKind.function f\ndef LexLeanPreservation.Rust.fnFallible : LexLeanPreservation.Rust.RCrate → Nat → Option Bool :=\nfun c f =>\n Option.map (fun fn => LexLeanTarget.RustSemantics.fallibleType fn.snd.fst)\n (LexLeanTarget.RustSemantics.findFunction c.items (LexLeanPreservation.Rust.fnIdent f))\ndef LexLeanPreservation.Rust.RCI : LexLeanPreservation.Rust.RCrate →\n LexLeanPreservation.Rust.RIdent → List LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Rust.ROut → Prop :=\nfun c f args o =>\n o ≠ LexLeanTarget.RustSemantics.ROutcome.exhausted ∧ ∃ n, LexLeanTarget.RustSemantics.invoke n c f args = o\ndef LexLeanPreservation.Rust.Realizes : Bool → LexLeanPreservation.Obs → LexLeanPreservation.Rust.ROut → Prop :=\nfun fl x x_1 =>\n match x, x_1 with\n | LexLeanPreservation.Obs.value v, LexLeanTarget.RustSemantics.ROutcome.value w => w = v\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.raise => fl = true\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.abort => True\n | x, x_2 => False\ndef LexLeanPreservation.Rust.RealizesFn : Bool → LexLeanPreservation.Obs → LexLeanPreservation.Rust.ROut → Prop :=\nfun fallible x x_1 =>\n match x, x_1 with\n | LexLeanPreservation.Obs.value v, LexLeanTarget.RustSemantics.ROutcome.value w => w = bif fallible then v.ok else v\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.value w =>\n fallible = true ∧ w = LexLeanTarget.TargetSyntax.Value.unit.error\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.abort => True\n | x, x_2 => False\ndef LexLeanPreservation.Rust.FunSem : LexLeanTarget.TargetSyntax.Program →\n LexLeanPreservation.Rust.RCrate → LexLeanPreservation.Rust.Flags → Nat → Nat → Prop :=\nfun p c A n f =>\n ∀ (fn : LexLeanTarget.TargetSyntax.Function) (args : List LexLeanTarget.TargetSyntax.Value)\n (env : List (Nat × LexLeanTarget.TargetSyntax.Value)) (F : Bool),\n LexLeanRuntime.index p.functions f = some fn →\n LexLeanPreservation.Rust.WTL p c A args fn.types →\n LexLeanTarget.TargetSemantics.bindAll fn.parameters args [] = some env →\n LexLeanPreservation.Rust.fnFallible c f = some F →\n ∀ (o : LexLeanPreservation.Obs),\n LexLeanPreservation.obs (LexLeanTarget.TargetSemantics.eval n p env fn.body) = some o →\n o ≠ LexLeanPreservation.Obs.stuck →\n (∀ (v : LexLeanTarget.TargetSyntax.Value),\n o = LexLeanPreservation.Obs.value v → LexLeanPreservation.Rust.WT p c A v fn.result) ∧\n ∃ ro,\n LexLeanPreservation.Rust.RealizesFn F o ro ∧\n LexLeanPreservation.Rust.RCI c (LexLeanPreservation.Rust.fnIdent f) args ro\ndef LexLeanPreservation.someObs : LexLeanPreservation.Obs → LexLeanPreservation.Obs :=\nfun x =>\n match x with\n | LexLeanPreservation.Obs.value v => LexLeanPreservation.Obs.value v.some\n | LexLeanPreservation.Obs.overflow => LexLeanPreservation.Obs.overflow\n | LexLeanPreservation.Obs.stuck => LexLeanPreservation.Obs.stuck\ndef LexLeanPreservation.Rust.Representable : LexLeanTarget.TargetSyntax.Value → Prop :=\nfun x => x.brecOn LexLeanPreservation.Rust.Representable._f LexLeanPreservation.Rust.RepresentableL._f\ndef LexLeanPreservation.Rust.RepresentableL : List LexLeanTarget.TargetSyntax.Value → Prop :=\nfun x =>\n LexLeanTarget.TargetSyntax.Value.brecOn_1 x LexLeanPreservation.Rust.Representable._f\n LexLeanPreservation.Rust.RepresentableL._f\nLexLeanPreservation.Rust.runItem_abort_infallible : ∀ (profile : LexLeanTarget.RustSyntax.Profile)\n (item : LexLeanTarget.RustSyntax.Item) (values : List LexLeanTarget.TargetSyntax.Value),\n LexLeanTarget.RustSemantics.runItem profile item values = LexLeanTarget.RustSemantics.ROutcome.abort →\n LexLeanTarget.RustSemantics.itemFallible item = false\n","stdout_sha256":"026749d82ce4aa383351e2ae3e4c64b890d92b8689cb61f9e869bf20c7e401a9","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.Compose.RustCore.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.Compose.RustCore.json new file mode 100644 index 000000000..dd74493e6 --- /dev/null +++ b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.Compose.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R0/Compose/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R0/Compose/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.RustCore.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.RustCore.json new file mode 100644 index 000000000..f43b718b4 --- /dev/null +++ b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R0/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R0/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.json new file mode 100644 index 000000000..4d95737c4 --- /dev/null +++ b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R0.olean","$STAGING/preserve-src/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R0.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R0","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.Compose.RustCore.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.Compose.RustCore.json new file mode 100644 index 000000000..f128aa611 --- /dev/null +++ b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.Compose.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R1/Compose/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R1/Compose/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.RustCore.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.RustCore.json new file mode 100644 index 000000000..c53a337e0 --- /dev/null +++ b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R1/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R1/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.json new file mode 100644 index 000000000..77aad317d --- /dev/null +++ b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R1.olean","$STAGING/preserve-src/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R1.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R1","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.Compose.RustStd.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.Compose.RustStd.json new file mode 100644 index 000000000..1257f7f74 --- /dev/null +++ b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R2/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R2/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.RustStd.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.RustStd.json new file mode 100644 index 000000000..dc02d542b --- /dev/null +++ b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R2/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R2/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.json new file mode 100644 index 000000000..736edce7b --- /dev/null +++ b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R2.olean","$STAGING/preserve-src/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R2.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R2","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.Compose.RustStd.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.Compose.RustStd.json new file mode 100644 index 000000000..48e5ee084 --- /dev/null +++ b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R3/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R3/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.RustStd.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.RustStd.json new file mode 100644 index 000000000..c3d71932c --- /dev/null +++ b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R3/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R3/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.json new file mode 100644 index 000000000..7de2799da --- /dev/null +++ b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R3.olean","$STAGING/preserve-src/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R3.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R3","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.Compose.RustStd.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.Compose.RustStd.json new file mode 100644 index 000000000..60df568e5 --- /dev/null +++ b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R4/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R4/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.RustStd.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.RustStd.json new file mode 100644 index 000000000..28d7d3f8d --- /dev/null +++ b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R4/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R4/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.json new file mode 100644 index 000000000..d04847389 --- /dev/null +++ b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R4.olean","$STAGING/preserve-src/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R4.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R4","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.Compose.RustCore.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.Compose.RustCore.json new file mode 100644 index 000000000..d97bd345c --- /dev/null +++ b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.Compose.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R5/Compose/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R5/Compose/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.RustCore.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.RustCore.json new file mode 100644 index 000000000..d98df0439 --- /dev/null +++ b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.RustCore.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R5/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R5/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.json new file mode 100644 index 000000000..d80a55f71 --- /dev/null +++ b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R5.olean","$STAGING/preserve-src/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R5.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R5","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.Compose.RustStd.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.Compose.RustStd.json new file mode 100644 index 000000000..26656434f --- /dev/null +++ b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R6/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R6/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.RustStd.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.RustStd.json new file mode 100644 index 000000000..98e919499 --- /dev/null +++ b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R6/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R6/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.json new file mode 100644 index 000000000..754105252 --- /dev/null +++ b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R6.olean","$STAGING/preserve-src/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R6.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R6","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.Compose.RustStd.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.Compose.RustStd.json new file mode 100644 index 000000000..3999bcd41 --- /dev/null +++ b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R7/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R7/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.RustStd.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.RustStd.json new file mode 100644 index 000000000..8fc9a7579 --- /dev/null +++ b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R7/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R7/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.json new file mode 100644 index 000000000..5a822a4fe --- /dev/null +++ b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R7.olean","$STAGING/preserve-src/LexLeanPreserve/C02b315b69b8881ec6f91f78f9b12c608/R7.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C02b315b69b8881ec6f91f78f9b12c608.R7","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.Compose.RustCore.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.Compose.RustCore.json deleted file mode 100644 index 728b929d0..000000000 --- a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.Compose.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R0/Compose/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R0/Compose/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.RustCore.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.RustCore.json deleted file mode 100644 index ee925f2a1..000000000 --- a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R0/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R0/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.json deleted file mode 100644 index ac2bf15f4..000000000 --- a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R0.olean","$STAGING/preserve-src/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R0.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R0","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.Compose.RustCore.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.Compose.RustCore.json deleted file mode 100644 index 36ee3028d..000000000 --- a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.Compose.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R1/Compose/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R1/Compose/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.RustCore.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.RustCore.json deleted file mode 100644 index a48606b4b..000000000 --- a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R1/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R1/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.json deleted file mode 100644 index 827a446a5..000000000 --- a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R1.olean","$STAGING/preserve-src/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R1.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R1","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.Compose.RustStd.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.Compose.RustStd.json deleted file mode 100644 index be7aef3bb..000000000 --- a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R2/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R2/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.RustStd.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.RustStd.json deleted file mode 100644 index 715f237b4..000000000 --- a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R2/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R2/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.json deleted file mode 100644 index 5b38add1c..000000000 --- a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R2.olean","$STAGING/preserve-src/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R2.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R2","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.Compose.RustStd.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.Compose.RustStd.json deleted file mode 100644 index 01b8c10cd..000000000 --- a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R3/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R3/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.RustStd.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.RustStd.json deleted file mode 100644 index 9cbd12390..000000000 --- a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R3/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R3/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.json deleted file mode 100644 index d8cb7b171..000000000 --- a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R3.olean","$STAGING/preserve-src/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R3.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R3","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.Compose.RustStd.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.Compose.RustStd.json deleted file mode 100644 index 5b8770eea..000000000 --- a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R4/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R4/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.RustStd.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.RustStd.json deleted file mode 100644 index 8922ff500..000000000 --- a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R4/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R4/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.json deleted file mode 100644 index 768374708..000000000 --- a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R4.olean","$STAGING/preserve-src/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R4.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R4","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.Compose.RustCore.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.Compose.RustCore.json deleted file mode 100644 index 913dc7f9a..000000000 --- a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.Compose.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R5/Compose/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R5/Compose/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.Compose.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.RustCore.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.RustCore.json deleted file mode 100644 index a59657ac2..000000000 --- a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.RustCore.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R5/RustCore.olean","$STAGING/preserve-src/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R5/RustCore.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.RustCore","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.json deleted file mode 100644 index f63026e60..000000000 --- a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R5.olean","$STAGING/preserve-src/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R5.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R5","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.Compose.RustStd.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.Compose.RustStd.json deleted file mode 100644 index 678d683e7..000000000 --- a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R6/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R6/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.RustStd.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.RustStd.json deleted file mode 100644 index 29f8c7463..000000000 --- a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R6/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R6/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.json deleted file mode 100644 index 1bfb331e8..000000000 --- a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R6.olean","$STAGING/preserve-src/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R6.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R6","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.Compose.RustStd.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.Compose.RustStd.json deleted file mode 100644 index 4815ab8c6..000000000 --- a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R7/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R7/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.RustStd.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.RustStd.json deleted file mode 100644 index c7256d1b4..000000000 --- a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R7/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R7/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.json b/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.json deleted file mode 100644 index 2cda6d584..000000000 --- a/examples/reasoning/expected/verify/process/preserve/LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R7.olean","$STAGING/preserve-src/LexLeanPreserve/C7b45b58d681c076cfd69727310b65f3f/R7.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C7b45b58d681c076cfd69727310b65f3f.R7","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/reasoning/lexlean.lock b/examples/reasoning/lexlean.lock index 3d30e1a9d..b885c1e88 100644 --- a/examples/reasoning/lexlean.lock +++ b/examples/reasoning/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "254deddb728df2532affa57ca92fefae0324c34d616c713273d63bd4cccbb2bf" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/examples/recursion/expected/build/manifest.json b/examples/recursion/expected/build/manifest.json index fc83244c8..0d7d5769f 100644 --- a/examples/recursion/expected/build/manifest.json +++ b/examples/recursion/expected/build/manifest.json @@ -1 +1 @@ -{"build_id":"33460eecaeb5b7f44bb132875535087f12233636373d66b5581d457ad89a7d1c","compiler":{"semantics_id":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","version":"0.3.0"},"inputs":[{"byte_length":2684,"kind":"lexicon","path":"embedded","sha256":"3bc0fb09d706ffa7d5a1363302ea87c049acc7c7dcafde63c62682620c11be9b"},{"byte_length":14885,"kind":"lexicon","path":"embedded","sha256":"e0db021e01b91d651c43921d66f6b0023c8efbf17cac2ec53192ce5305e4e1ac"},{"byte_length":36197,"kind":"lexicon","path":"embedded","sha256":"827317cae68c162f3a96c8a8de4e53ab348e7d3724fd2b834fa85ecde1a1b392"},{"byte_length":1597,"kind":"lock","path":"lexlean.lock","sha256":"38059195c40d8b2d04ddc4fb83d944ef4ad4b474a851be2fb8989a1bb7659c56"},{"byte_length":640,"kind":"project-config","path":"lexlean.toml","sha256":"b8201330ef8609d8f53e24e2fa367697675b98d69ba844d6a75adffe84a88319"},{"byte_length":12276,"kind":"source","path":"src/Main.lex.tex","sha256":"621026825ab06b16f9a9216cb265b5789461525445908563bfcad4d5d42429cc"},{"byte_length":861,"kind":"source","path":"src/Syntax.lex.tex","sha256":"4d2d6d5cc65ee405c5b0fe2732babae4d496f16a4e054ac334d2abfa69152dd0"}],"language":"1.2","lean_toolchain":"leanprover/lean4:v4.32.1","modules":[{"lean_module":"Recursion.Main","module":"Main","source_path":"src/Main.lex.tex"},{"lean_module":"Recursion.Syntax","module":"Syntax","source_path":"src/Syntax.lex.tex"}],"outputs":[{"byte_length":16931,"kind":"coverage","path":"coverage/Recursion/Main.coverage.json","sha256":"c13cea825261ba24cbd8c97926de1526197431862fc4056b10d22c1a07fc50e3"},{"byte_length":7661,"kind":"coverage","path":"coverage/Recursion/Syntax.coverage.json","sha256":"ae25a6b2719475a6be93ea19b2c06d5cab04e4e113d84484061047fc72acd3c0"},{"byte_length":35346,"kind":"lean","path":"modules/Recursion/Main.lean","sha256":"8d70ac7dc493644bf6f756c9eb58a607b62dcd1540e2a7928ef2dac66d70f21d"},{"byte_length":622,"kind":"lean","path":"modules/Recursion/Syntax.lean","sha256":"56aa3cba170de2a0b3a833c67a218d72162956271df211c97d7357234a7eb0b1"},{"byte_length":10602,"kind":"lexicon-closure","path":"lexicons/Main.closure.json","sha256":"727110f90daff26a2e5eb8069fcefecd5790c1264f5d6d4b2ef57db1c2bfb867"},{"byte_length":10604,"kind":"lexicon-closure","path":"lexicons/Syntax.closure.json","sha256":"37a0e650d18d332b85cdcc97c6e3a86ffc1dbb591bace0b323fc8bf535336f8b"},{"byte_length":12708,"kind":"map","path":"maps/Recursion/Main.map.json","sha256":"c35e5e7b5a6b680dcab6d2361e294f194ef7e515f2d013ca6abd35e876672fdb"},{"byte_length":2282,"kind":"map","path":"maps/Recursion/Syntax.map.json","sha256":"351a872da45d20a18829070fb5b959d84cb52c9caf9c2ac0ac0bf733696e3396"},{"byte_length":17821,"kind":"tex","path":"modules/Recursion/Main.tex","sha256":"765d086267d45138f4fb9de710ccbe74ba93a4c46f3c19c24d382e209b4b4672"},{"byte_length":1093,"kind":"tex","path":"modules/Recursion/Syntax.tex","sha256":"24391ae507ff036ad50cbece531289a033ddff326046c24e85c3968beb127bea"}],"project":"recursion","selection":["Main","Syntax"],"semantic_id":"fca4cff7cd9d7d680879d32a7e810d91c6e198c93439d128535481c2ae7ad87d","source_id":"62841407e4d24dbc405b6385f58d291e6ddcd3f2a35fd992a8b58630e43a3912","spec":"lexlean/build-manifest/1"} +{"build_id":"187d63003b0a36a92f2bb7e9a33dc541316bc207979ef046bd60f48993161564","compiler":{"semantics_id":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","version":"0.3.0"},"inputs":[{"byte_length":2684,"kind":"lexicon","path":"embedded","sha256":"3bc0fb09d706ffa7d5a1363302ea87c049acc7c7dcafde63c62682620c11be9b"},{"byte_length":14885,"kind":"lexicon","path":"embedded","sha256":"e0db021e01b91d651c43921d66f6b0023c8efbf17cac2ec53192ce5305e4e1ac"},{"byte_length":36197,"kind":"lexicon","path":"embedded","sha256":"827317cae68c162f3a96c8a8de4e53ab348e7d3724fd2b834fa85ecde1a1b392"},{"byte_length":1597,"kind":"lock","path":"lexlean.lock","sha256":"3ecb9e05a43173093430ad18ab3d49698c874ca01b1bcd7c47c3de7cb5fccd69"},{"byte_length":640,"kind":"project-config","path":"lexlean.toml","sha256":"b8201330ef8609d8f53e24e2fa367697675b98d69ba844d6a75adffe84a88319"},{"byte_length":12276,"kind":"source","path":"src/Main.lex.tex","sha256":"621026825ab06b16f9a9216cb265b5789461525445908563bfcad4d5d42429cc"},{"byte_length":861,"kind":"source","path":"src/Syntax.lex.tex","sha256":"4d2d6d5cc65ee405c5b0fe2732babae4d496f16a4e054ac334d2abfa69152dd0"}],"language":"1.2","lean_toolchain":"leanprover/lean4:v4.32.1","modules":[{"lean_module":"Recursion.Main","module":"Main","source_path":"src/Main.lex.tex"},{"lean_module":"Recursion.Syntax","module":"Syntax","source_path":"src/Syntax.lex.tex"}],"outputs":[{"byte_length":16931,"kind":"coverage","path":"coverage/Recursion/Main.coverage.json","sha256":"c13cea825261ba24cbd8c97926de1526197431862fc4056b10d22c1a07fc50e3"},{"byte_length":7661,"kind":"coverage","path":"coverage/Recursion/Syntax.coverage.json","sha256":"ae25a6b2719475a6be93ea19b2c06d5cab04e4e113d84484061047fc72acd3c0"},{"byte_length":35346,"kind":"lean","path":"modules/Recursion/Main.lean","sha256":"8d70ac7dc493644bf6f756c9eb58a607b62dcd1540e2a7928ef2dac66d70f21d"},{"byte_length":622,"kind":"lean","path":"modules/Recursion/Syntax.lean","sha256":"56aa3cba170de2a0b3a833c67a218d72162956271df211c97d7357234a7eb0b1"},{"byte_length":10602,"kind":"lexicon-closure","path":"lexicons/Main.closure.json","sha256":"727110f90daff26a2e5eb8069fcefecd5790c1264f5d6d4b2ef57db1c2bfb867"},{"byte_length":10604,"kind":"lexicon-closure","path":"lexicons/Syntax.closure.json","sha256":"37a0e650d18d332b85cdcc97c6e3a86ffc1dbb591bace0b323fc8bf535336f8b"},{"byte_length":12708,"kind":"map","path":"maps/Recursion/Main.map.json","sha256":"776ee3429450e1b018d70941553601b4e79e542c0b0c31e990072cb0911ef478"},{"byte_length":2282,"kind":"map","path":"maps/Recursion/Syntax.map.json","sha256":"d731a2c7d51432762ae3041039f9bbe5f772d55f6e70f522a844c48ffe05d28f"},{"byte_length":17821,"kind":"tex","path":"modules/Recursion/Main.tex","sha256":"765d086267d45138f4fb9de710ccbe74ba93a4c46f3c19c24d382e209b4b4672"},{"byte_length":1093,"kind":"tex","path":"modules/Recursion/Syntax.tex","sha256":"24391ae507ff036ad50cbece531289a033ddff326046c24e85c3968beb127bea"}],"project":"recursion","selection":["Main","Syntax"],"semantic_id":"d478905735ed8adb7e0e1e617ced36dbb99b24d527400467981dfe38faea5841","source_id":"2f0ffdf34707ae74d9ea7bde2e298a2515e325f54a1de20fa2301e60a4e6656a","spec":"lexlean/build-manifest/1"} diff --git a/examples/recursion/expected/build/maps/Recursion/Main.map.json b/examples/recursion/expected/build/maps/Recursion/Main.map.json index d86400b84..5dc40435d 100644 --- a/examples/recursion/expected/build/maps/Recursion/Main.map.json +++ b/examples/recursion/expected/build/maps/Recursion/Main.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/Recursion/Main.lean"},{"id":1,"kind":"tex","path":"modules/Recursion/Main.tex"}],"mappings":[{"artifact":0,"gen_end":300,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":12276,"src_start":0},{"artifact":0,"gen_end":518,"gen_start":300,"node":1,"role":"declaration","source":0,"src_end":396,"src_start":135},{"artifact":0,"gen_end":765,"gen_start":518,"node":2,"role":"declaration","source":0,"src_end":703,"src_start":398},{"artifact":0,"gen_end":1132,"gen_start":765,"node":3,"role":"declaration","source":0,"src_end":1092,"src_start":705},{"artifact":0,"gen_end":1365,"gen_start":1132,"node":4,"role":"declaration","source":0,"src_end":1375,"src_start":1094},{"artifact":0,"gen_end":1666,"gen_start":1365,"node":5,"role":"declaration","source":0,"src_end":1869,"src_start":1377},{"artifact":0,"gen_end":1833,"gen_start":1666,"node":6,"role":"declaration","source":0,"src_end":2076,"src_start":1871},{"artifact":0,"gen_end":1998,"gen_start":1833,"node":7,"role":"declaration","source":0,"src_end":2284,"src_start":2078},{"artifact":0,"gen_end":5081,"gen_start":1998,"node":8,"role":"declaration","source":0,"src_end":2515,"src_start":2286},{"artifact":0,"gen_end":5494,"gen_start":5081,"node":9,"role":"declaration","source":0,"src_end":2805,"src_start":2517},{"artifact":0,"gen_end":8614,"gen_start":5494,"node":10,"role":"declaration","source":0,"src_end":3065,"src_start":2807},{"artifact":0,"gen_end":9129,"gen_start":8614,"node":11,"role":"declaration","source":0,"src_end":3398,"src_start":3067},{"artifact":0,"gen_end":12310,"gen_start":9129,"node":12,"role":"declaration","source":0,"src_end":3705,"src_start":3400},{"artifact":0,"gen_end":12857,"gen_start":12310,"node":13,"role":"declaration","source":0,"src_end":4042,"src_start":3707},{"artifact":0,"gen_end":13155,"gen_start":12857,"node":14,"role":"declaration","source":0,"src_end":4339,"src_start":4044},{"artifact":0,"gen_end":13461,"gen_start":13155,"node":15,"role":"declaration","source":0,"src_end":4646,"src_start":4341},{"artifact":0,"gen_end":13527,"gen_start":13461,"node":16,"role":"declaration","source":0,"src_end":4740,"src_start":4648},{"artifact":0,"gen_end":13599,"gen_start":13527,"node":17,"role":"declaration","source":0,"src_end":4881,"src_start":4742},{"artifact":0,"gen_end":13674,"gen_start":13599,"node":18,"role":"declaration","source":0,"src_end":5025,"src_start":4883},{"artifact":0,"gen_end":13746,"gen_start":13674,"node":19,"role":"declaration","source":0,"src_end":5164,"src_start":5027},{"artifact":0,"gen_end":13958,"gen_start":13746,"node":20,"role":"declaration","source":0,"src_end":5429,"src_start":5166},{"artifact":0,"gen_end":17187,"gen_start":13958,"node":21,"role":"declaration","source":0,"src_end":5791,"src_start":5431},{"artifact":0,"gen_end":20539,"gen_start":17187,"node":22,"role":"declaration","source":0,"src_end":6267,"src_start":5793},{"artifact":0,"gen_end":21432,"gen_start":20539,"node":23,"role":"declaration","source":0,"src_end":6889,"src_start":6269},{"artifact":0,"gen_end":21677,"gen_start":21432,"node":24,"role":"declaration","source":0,"src_end":7181,"src_start":6891},{"artifact":0,"gen_end":24987,"gen_start":21677,"node":25,"role":"declaration","source":0,"src_end":7621,"src_start":7183},{"artifact":0,"gen_end":25744,"gen_start":24987,"node":26,"role":"declaration","source":0,"src_end":8130,"src_start":7623},{"artifact":0,"gen_end":25977,"gen_start":25744,"node":27,"role":"declaration","source":0,"src_end":8410,"src_start":8132},{"artifact":0,"gen_end":27070,"gen_start":25977,"node":28,"role":"declaration","source":0,"src_end":9533,"src_start":8412},{"artifact":0,"gen_end":27363,"gen_start":27070,"node":29,"role":"declaration","source":0,"src_end":9869,"src_start":9535},{"artifact":0,"gen_end":27752,"gen_start":27363,"node":30,"role":"declaration","source":0,"src_end":10494,"src_start":9871},{"artifact":0,"gen_end":28363,"gen_start":27752,"node":31,"role":"declaration","source":0,"src_end":11051,"src_start":10496},{"artifact":0,"gen_end":31414,"gen_start":28363,"node":32,"role":"declaration","source":0,"src_end":11266,"src_start":11053},{"artifact":0,"gen_end":34541,"gen_start":31414,"node":33,"role":"declaration","source":0,"src_end":11529,"src_start":11268},{"artifact":0,"gen_end":34889,"gen_start":34541,"node":34,"role":"declaration","source":0,"src_end":11810,"src_start":11531},{"artifact":0,"gen_end":35266,"gen_start":34889,"node":35,"role":"declaration","source":0,"src_end":12109,"src_start":11812},{"artifact":0,"gen_end":35326,"gen_start":35266,"node":36,"role":"declaration","source":0,"src_end":12240,"src_start":12111},{"artifact":0,"gen_end":35346,"gen_start":35326,"node":0,"role":"declaration","source":0,"src_end":12276,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":37,"role":"declaration","source":0,"src_end":12276,"src_start":0},{"artifact":1,"gen_end":624,"gen_start":134,"node":38,"role":"declaration","source":0,"src_end":396,"src_start":135},{"artifact":1,"gen_end":1143,"gen_start":624,"node":39,"role":"declaration","source":0,"src_end":703,"src_start":398},{"artifact":1,"gen_end":1746,"gen_start":1143,"node":40,"role":"declaration","source":0,"src_end":1092,"src_start":705},{"artifact":1,"gen_end":2223,"gen_start":1746,"node":41,"role":"declaration","source":0,"src_end":1375,"src_start":1094},{"artifact":1,"gen_end":2765,"gen_start":2223,"node":42,"role":"declaration","source":0,"src_end":1869,"src_start":1377},{"artifact":1,"gen_end":3165,"gen_start":2765,"node":43,"role":"declaration","source":0,"src_end":2076,"src_start":1871},{"artifact":1,"gen_end":3566,"gen_start":3165,"node":44,"role":"declaration","source":0,"src_end":2284,"src_start":2078},{"artifact":1,"gen_end":3908,"gen_start":3566,"node":45,"role":"declaration","source":0,"src_end":2515,"src_start":2286},{"artifact":1,"gen_end":4410,"gen_start":3908,"node":46,"role":"declaration","source":0,"src_end":2805,"src_start":2517},{"artifact":1,"gen_end":4790,"gen_start":4410,"node":47,"role":"declaration","source":0,"src_end":3065,"src_start":2807},{"artifact":1,"gen_end":5389,"gen_start":4790,"node":48,"role":"declaration","source":0,"src_end":3398,"src_start":3067},{"artifact":1,"gen_end":5830,"gen_start":5389,"node":49,"role":"declaration","source":0,"src_end":3705,"src_start":3400},{"artifact":1,"gen_end":6390,"gen_start":5830,"node":50,"role":"declaration","source":0,"src_end":4042,"src_start":3707},{"artifact":1,"gen_end":6798,"gen_start":6390,"node":51,"role":"declaration","source":0,"src_end":4339,"src_start":4044},{"artifact":1,"gen_end":7214,"gen_start":6798,"node":52,"role":"declaration","source":0,"src_end":4646,"src_start":4341},{"artifact":1,"gen_end":7388,"gen_start":7214,"node":53,"role":"declaration","source":0,"src_end":4740,"src_start":4648},{"artifact":1,"gen_end":7590,"gen_start":7388,"node":54,"role":"declaration","source":0,"src_end":4881,"src_start":4742},{"artifact":1,"gen_end":7796,"gen_start":7590,"node":55,"role":"declaration","source":0,"src_end":5025,"src_start":4883},{"artifact":1,"gen_end":7998,"gen_start":7796,"node":56,"role":"declaration","source":0,"src_end":5164,"src_start":5027},{"artifact":1,"gen_end":8407,"gen_start":7998,"node":57,"role":"declaration","source":0,"src_end":5429,"src_start":5166},{"artifact":1,"gen_end":8875,"gen_start":8407,"node":58,"role":"declaration","source":0,"src_end":5791,"src_start":5431},{"artifact":1,"gen_end":9466,"gen_start":8875,"node":59,"role":"declaration","source":0,"src_end":6267,"src_start":5793},{"artifact":1,"gen_end":10390,"gen_start":9466,"node":60,"role":"declaration","source":0,"src_end":6889,"src_start":6269},{"artifact":1,"gen_end":10765,"gen_start":10390,"node":61,"role":"declaration","source":0,"src_end":7181,"src_start":6891},{"artifact":1,"gen_end":11314,"gen_start":10765,"node":62,"role":"declaration","source":0,"src_end":7621,"src_start":7183},{"artifact":1,"gen_end":12104,"gen_start":11314,"node":63,"role":"declaration","source":0,"src_end":8130,"src_start":7623},{"artifact":1,"gen_end":12467,"gen_start":12104,"node":64,"role":"declaration","source":0,"src_end":8410,"src_start":8132},{"artifact":1,"gen_end":13865,"gen_start":12467,"node":65,"role":"declaration","source":0,"src_end":9533,"src_start":8412},{"artifact":1,"gen_end":14464,"gen_start":13865,"node":66,"role":"declaration","source":0,"src_end":9869,"src_start":9535},{"artifact":1,"gen_end":15155,"gen_start":14464,"node":67,"role":"declaration","source":0,"src_end":10494,"src_start":9871},{"artifact":1,"gen_end":15876,"gen_start":15155,"node":68,"role":"declaration","source":0,"src_end":11051,"src_start":10496},{"artifact":1,"gen_end":16188,"gen_start":15876,"node":69,"role":"declaration","source":0,"src_end":11266,"src_start":11053},{"artifact":1,"gen_end":16576,"gen_start":16188,"node":70,"role":"declaration","source":0,"src_end":11529,"src_start":11268},{"artifact":1,"gen_end":17080,"gen_start":16576,"node":71,"role":"declaration","source":0,"src_end":11810,"src_start":11531},{"artifact":1,"gen_end":17616,"gen_start":17080,"node":72,"role":"declaration","source":0,"src_end":12109,"src_start":11812},{"artifact":1,"gen_end":17806,"gen_start":17616,"node":73,"role":"declaration","source":0,"src_end":12240,"src_start":12111},{"artifact":1,"gen_end":17821,"gen_start":17806,"node":37,"role":"declaration","source":0,"src_end":12276,"src_start":0}],"module":"Main","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-latex-module"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"},{"id":40,"kind":"semantic-declaration"},{"id":41,"kind":"semantic-declaration"},{"id":42,"kind":"semantic-declaration"},{"id":43,"kind":"semantic-declaration"},{"id":44,"kind":"semantic-declaration"},{"id":45,"kind":"semantic-declaration"},{"id":46,"kind":"semantic-declaration"},{"id":47,"kind":"semantic-declaration"},{"id":48,"kind":"semantic-declaration"},{"id":49,"kind":"semantic-declaration"},{"id":50,"kind":"semantic-declaration"},{"id":51,"kind":"semantic-declaration"},{"id":52,"kind":"semantic-declaration"},{"id":53,"kind":"semantic-declaration"},{"id":54,"kind":"semantic-declaration"},{"id":55,"kind":"semantic-declaration"},{"id":56,"kind":"semantic-declaration"},{"id":57,"kind":"semantic-declaration"},{"id":58,"kind":"semantic-declaration"},{"id":59,"kind":"semantic-declaration"},{"id":60,"kind":"semantic-declaration"},{"id":61,"kind":"semantic-declaration"},{"id":62,"kind":"semantic-declaration"},{"id":63,"kind":"semantic-declaration"},{"id":64,"kind":"semantic-declaration"},{"id":65,"kind":"semantic-declaration"},{"id":66,"kind":"semantic-declaration"},{"id":67,"kind":"semantic-declaration"},{"id":68,"kind":"semantic-declaration"},{"id":69,"kind":"semantic-declaration"},{"id":70,"kind":"semantic-declaration"},{"id":71,"kind":"semantic-declaration"},{"id":72,"kind":"semantic-declaration"},{"id":73,"kind":"semantic-declaration"}],"semantic_id":"fca4cff7cd9d7d680879d32a7e810d91c6e198c93439d128535481c2ae7ad87d","source_id":"62841407e4d24dbc405b6385f58d291e6ddcd3f2a35fd992a8b58630e43a3912","sources":[{"id":0,"kind":"file","path":"src/Main.lex.tex","sha256":"621026825ab06b16f9a9216cb265b5789461525445908563bfcad4d5d42429cc"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/Recursion/Main.lean"},{"id":1,"kind":"tex","path":"modules/Recursion/Main.tex"}],"mappings":[{"artifact":0,"gen_end":300,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":12276,"src_start":0},{"artifact":0,"gen_end":518,"gen_start":300,"node":1,"role":"declaration","source":0,"src_end":396,"src_start":135},{"artifact":0,"gen_end":765,"gen_start":518,"node":2,"role":"declaration","source":0,"src_end":703,"src_start":398},{"artifact":0,"gen_end":1132,"gen_start":765,"node":3,"role":"declaration","source":0,"src_end":1092,"src_start":705},{"artifact":0,"gen_end":1365,"gen_start":1132,"node":4,"role":"declaration","source":0,"src_end":1375,"src_start":1094},{"artifact":0,"gen_end":1666,"gen_start":1365,"node":5,"role":"declaration","source":0,"src_end":1869,"src_start":1377},{"artifact":0,"gen_end":1833,"gen_start":1666,"node":6,"role":"declaration","source":0,"src_end":2076,"src_start":1871},{"artifact":0,"gen_end":1998,"gen_start":1833,"node":7,"role":"declaration","source":0,"src_end":2284,"src_start":2078},{"artifact":0,"gen_end":5081,"gen_start":1998,"node":8,"role":"declaration","source":0,"src_end":2515,"src_start":2286},{"artifact":0,"gen_end":5494,"gen_start":5081,"node":9,"role":"declaration","source":0,"src_end":2805,"src_start":2517},{"artifact":0,"gen_end":8614,"gen_start":5494,"node":10,"role":"declaration","source":0,"src_end":3065,"src_start":2807},{"artifact":0,"gen_end":9129,"gen_start":8614,"node":11,"role":"declaration","source":0,"src_end":3398,"src_start":3067},{"artifact":0,"gen_end":12310,"gen_start":9129,"node":12,"role":"declaration","source":0,"src_end":3705,"src_start":3400},{"artifact":0,"gen_end":12857,"gen_start":12310,"node":13,"role":"declaration","source":0,"src_end":4042,"src_start":3707},{"artifact":0,"gen_end":13155,"gen_start":12857,"node":14,"role":"declaration","source":0,"src_end":4339,"src_start":4044},{"artifact":0,"gen_end":13461,"gen_start":13155,"node":15,"role":"declaration","source":0,"src_end":4646,"src_start":4341},{"artifact":0,"gen_end":13527,"gen_start":13461,"node":16,"role":"declaration","source":0,"src_end":4740,"src_start":4648},{"artifact":0,"gen_end":13599,"gen_start":13527,"node":17,"role":"declaration","source":0,"src_end":4881,"src_start":4742},{"artifact":0,"gen_end":13674,"gen_start":13599,"node":18,"role":"declaration","source":0,"src_end":5025,"src_start":4883},{"artifact":0,"gen_end":13746,"gen_start":13674,"node":19,"role":"declaration","source":0,"src_end":5164,"src_start":5027},{"artifact":0,"gen_end":13958,"gen_start":13746,"node":20,"role":"declaration","source":0,"src_end":5429,"src_start":5166},{"artifact":0,"gen_end":17187,"gen_start":13958,"node":21,"role":"declaration","source":0,"src_end":5791,"src_start":5431},{"artifact":0,"gen_end":20539,"gen_start":17187,"node":22,"role":"declaration","source":0,"src_end":6267,"src_start":5793},{"artifact":0,"gen_end":21432,"gen_start":20539,"node":23,"role":"declaration","source":0,"src_end":6889,"src_start":6269},{"artifact":0,"gen_end":21677,"gen_start":21432,"node":24,"role":"declaration","source":0,"src_end":7181,"src_start":6891},{"artifact":0,"gen_end":24987,"gen_start":21677,"node":25,"role":"declaration","source":0,"src_end":7621,"src_start":7183},{"artifact":0,"gen_end":25744,"gen_start":24987,"node":26,"role":"declaration","source":0,"src_end":8130,"src_start":7623},{"artifact":0,"gen_end":25977,"gen_start":25744,"node":27,"role":"declaration","source":0,"src_end":8410,"src_start":8132},{"artifact":0,"gen_end":27070,"gen_start":25977,"node":28,"role":"declaration","source":0,"src_end":9533,"src_start":8412},{"artifact":0,"gen_end":27363,"gen_start":27070,"node":29,"role":"declaration","source":0,"src_end":9869,"src_start":9535},{"artifact":0,"gen_end":27752,"gen_start":27363,"node":30,"role":"declaration","source":0,"src_end":10494,"src_start":9871},{"artifact":0,"gen_end":28363,"gen_start":27752,"node":31,"role":"declaration","source":0,"src_end":11051,"src_start":10496},{"artifact":0,"gen_end":31414,"gen_start":28363,"node":32,"role":"declaration","source":0,"src_end":11266,"src_start":11053},{"artifact":0,"gen_end":34541,"gen_start":31414,"node":33,"role":"declaration","source":0,"src_end":11529,"src_start":11268},{"artifact":0,"gen_end":34889,"gen_start":34541,"node":34,"role":"declaration","source":0,"src_end":11810,"src_start":11531},{"artifact":0,"gen_end":35266,"gen_start":34889,"node":35,"role":"declaration","source":0,"src_end":12109,"src_start":11812},{"artifact":0,"gen_end":35326,"gen_start":35266,"node":36,"role":"declaration","source":0,"src_end":12240,"src_start":12111},{"artifact":0,"gen_end":35346,"gen_start":35326,"node":0,"role":"declaration","source":0,"src_end":12276,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":37,"role":"declaration","source":0,"src_end":12276,"src_start":0},{"artifact":1,"gen_end":624,"gen_start":134,"node":38,"role":"declaration","source":0,"src_end":396,"src_start":135},{"artifact":1,"gen_end":1143,"gen_start":624,"node":39,"role":"declaration","source":0,"src_end":703,"src_start":398},{"artifact":1,"gen_end":1746,"gen_start":1143,"node":40,"role":"declaration","source":0,"src_end":1092,"src_start":705},{"artifact":1,"gen_end":2223,"gen_start":1746,"node":41,"role":"declaration","source":0,"src_end":1375,"src_start":1094},{"artifact":1,"gen_end":2765,"gen_start":2223,"node":42,"role":"declaration","source":0,"src_end":1869,"src_start":1377},{"artifact":1,"gen_end":3165,"gen_start":2765,"node":43,"role":"declaration","source":0,"src_end":2076,"src_start":1871},{"artifact":1,"gen_end":3566,"gen_start":3165,"node":44,"role":"declaration","source":0,"src_end":2284,"src_start":2078},{"artifact":1,"gen_end":3908,"gen_start":3566,"node":45,"role":"declaration","source":0,"src_end":2515,"src_start":2286},{"artifact":1,"gen_end":4410,"gen_start":3908,"node":46,"role":"declaration","source":0,"src_end":2805,"src_start":2517},{"artifact":1,"gen_end":4790,"gen_start":4410,"node":47,"role":"declaration","source":0,"src_end":3065,"src_start":2807},{"artifact":1,"gen_end":5389,"gen_start":4790,"node":48,"role":"declaration","source":0,"src_end":3398,"src_start":3067},{"artifact":1,"gen_end":5830,"gen_start":5389,"node":49,"role":"declaration","source":0,"src_end":3705,"src_start":3400},{"artifact":1,"gen_end":6390,"gen_start":5830,"node":50,"role":"declaration","source":0,"src_end":4042,"src_start":3707},{"artifact":1,"gen_end":6798,"gen_start":6390,"node":51,"role":"declaration","source":0,"src_end":4339,"src_start":4044},{"artifact":1,"gen_end":7214,"gen_start":6798,"node":52,"role":"declaration","source":0,"src_end":4646,"src_start":4341},{"artifact":1,"gen_end":7388,"gen_start":7214,"node":53,"role":"declaration","source":0,"src_end":4740,"src_start":4648},{"artifact":1,"gen_end":7590,"gen_start":7388,"node":54,"role":"declaration","source":0,"src_end":4881,"src_start":4742},{"artifact":1,"gen_end":7796,"gen_start":7590,"node":55,"role":"declaration","source":0,"src_end":5025,"src_start":4883},{"artifact":1,"gen_end":7998,"gen_start":7796,"node":56,"role":"declaration","source":0,"src_end":5164,"src_start":5027},{"artifact":1,"gen_end":8407,"gen_start":7998,"node":57,"role":"declaration","source":0,"src_end":5429,"src_start":5166},{"artifact":1,"gen_end":8875,"gen_start":8407,"node":58,"role":"declaration","source":0,"src_end":5791,"src_start":5431},{"artifact":1,"gen_end":9466,"gen_start":8875,"node":59,"role":"declaration","source":0,"src_end":6267,"src_start":5793},{"artifact":1,"gen_end":10390,"gen_start":9466,"node":60,"role":"declaration","source":0,"src_end":6889,"src_start":6269},{"artifact":1,"gen_end":10765,"gen_start":10390,"node":61,"role":"declaration","source":0,"src_end":7181,"src_start":6891},{"artifact":1,"gen_end":11314,"gen_start":10765,"node":62,"role":"declaration","source":0,"src_end":7621,"src_start":7183},{"artifact":1,"gen_end":12104,"gen_start":11314,"node":63,"role":"declaration","source":0,"src_end":8130,"src_start":7623},{"artifact":1,"gen_end":12467,"gen_start":12104,"node":64,"role":"declaration","source":0,"src_end":8410,"src_start":8132},{"artifact":1,"gen_end":13865,"gen_start":12467,"node":65,"role":"declaration","source":0,"src_end":9533,"src_start":8412},{"artifact":1,"gen_end":14464,"gen_start":13865,"node":66,"role":"declaration","source":0,"src_end":9869,"src_start":9535},{"artifact":1,"gen_end":15155,"gen_start":14464,"node":67,"role":"declaration","source":0,"src_end":10494,"src_start":9871},{"artifact":1,"gen_end":15876,"gen_start":15155,"node":68,"role":"declaration","source":0,"src_end":11051,"src_start":10496},{"artifact":1,"gen_end":16188,"gen_start":15876,"node":69,"role":"declaration","source":0,"src_end":11266,"src_start":11053},{"artifact":1,"gen_end":16576,"gen_start":16188,"node":70,"role":"declaration","source":0,"src_end":11529,"src_start":11268},{"artifact":1,"gen_end":17080,"gen_start":16576,"node":71,"role":"declaration","source":0,"src_end":11810,"src_start":11531},{"artifact":1,"gen_end":17616,"gen_start":17080,"node":72,"role":"declaration","source":0,"src_end":12109,"src_start":11812},{"artifact":1,"gen_end":17806,"gen_start":17616,"node":73,"role":"declaration","source":0,"src_end":12240,"src_start":12111},{"artifact":1,"gen_end":17821,"gen_start":17806,"node":37,"role":"declaration","source":0,"src_end":12276,"src_start":0}],"module":"Main","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-latex-module"},{"id":38,"kind":"semantic-declaration"},{"id":39,"kind":"semantic-declaration"},{"id":40,"kind":"semantic-declaration"},{"id":41,"kind":"semantic-declaration"},{"id":42,"kind":"semantic-declaration"},{"id":43,"kind":"semantic-declaration"},{"id":44,"kind":"semantic-declaration"},{"id":45,"kind":"semantic-declaration"},{"id":46,"kind":"semantic-declaration"},{"id":47,"kind":"semantic-declaration"},{"id":48,"kind":"semantic-declaration"},{"id":49,"kind":"semantic-declaration"},{"id":50,"kind":"semantic-declaration"},{"id":51,"kind":"semantic-declaration"},{"id":52,"kind":"semantic-declaration"},{"id":53,"kind":"semantic-declaration"},{"id":54,"kind":"semantic-declaration"},{"id":55,"kind":"semantic-declaration"},{"id":56,"kind":"semantic-declaration"},{"id":57,"kind":"semantic-declaration"},{"id":58,"kind":"semantic-declaration"},{"id":59,"kind":"semantic-declaration"},{"id":60,"kind":"semantic-declaration"},{"id":61,"kind":"semantic-declaration"},{"id":62,"kind":"semantic-declaration"},{"id":63,"kind":"semantic-declaration"},{"id":64,"kind":"semantic-declaration"},{"id":65,"kind":"semantic-declaration"},{"id":66,"kind":"semantic-declaration"},{"id":67,"kind":"semantic-declaration"},{"id":68,"kind":"semantic-declaration"},{"id":69,"kind":"semantic-declaration"},{"id":70,"kind":"semantic-declaration"},{"id":71,"kind":"semantic-declaration"},{"id":72,"kind":"semantic-declaration"},{"id":73,"kind":"semantic-declaration"}],"semantic_id":"d478905735ed8adb7e0e1e617ced36dbb99b24d527400467981dfe38faea5841","source_id":"2f0ffdf34707ae74d9ea7bde2e298a2515e325f54a1de20fa2301e60a4e6656a","sources":[{"id":0,"kind":"file","path":"src/Main.lex.tex","sha256":"621026825ab06b16f9a9216cb265b5789461525445908563bfcad4d5d42429cc"}],"spec":"lexlean/source-map/1"} diff --git a/examples/recursion/expected/build/maps/Recursion/Syntax.map.json b/examples/recursion/expected/build/maps/Recursion/Syntax.map.json index da0e29a47..d85522290 100644 --- a/examples/recursion/expected/build/maps/Recursion/Syntax.map.json +++ b/examples/recursion/expected/build/maps/Recursion/Syntax.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/Recursion/Syntax.lean"},{"id":1,"kind":"tex","path":"modules/Recursion/Syntax.tex"}],"mappings":[{"artifact":0,"gen_end":199,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":861,"src_start":0},{"artifact":0,"gen_end":287,"gen_start":199,"node":1,"role":"declaration","source":0,"src_end":255,"src_start":115},{"artifact":0,"gen_end":415,"gen_start":287,"node":2,"role":"declaration","source":0,"src_end":487,"src_start":257},{"artifact":0,"gen_end":518,"gen_start":415,"node":3,"role":"declaration","source":0,"src_end":671,"src_start":489},{"artifact":0,"gen_end":600,"gen_start":518,"node":4,"role":"declaration","source":0,"src_end":825,"src_start":673},{"artifact":0,"gen_end":622,"gen_start":600,"node":0,"role":"declaration","source":0,"src_end":861,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":5,"role":"declaration","source":0,"src_end":861,"src_start":0},{"artifact":1,"gen_end":328,"gen_start":134,"node":6,"role":"declaration","source":0,"src_end":255,"src_start":115},{"artifact":1,"gen_end":637,"gen_start":328,"node":7,"role":"declaration","source":0,"src_end":487,"src_start":257},{"artifact":1,"gen_end":886,"gen_start":637,"node":8,"role":"declaration","source":0,"src_end":671,"src_start":489},{"artifact":1,"gen_end":1078,"gen_start":886,"node":9,"role":"declaration","source":0,"src_end":825,"src_start":673},{"artifact":1,"gen_end":1093,"gen_start":1078,"node":5,"role":"declaration","source":0,"src_end":861,"src_start":0}],"module":"Syntax","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-latex-module"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"}],"semantic_id":"fca4cff7cd9d7d680879d32a7e810d91c6e198c93439d128535481c2ae7ad87d","source_id":"62841407e4d24dbc405b6385f58d291e6ddcd3f2a35fd992a8b58630e43a3912","sources":[{"id":0,"kind":"file","path":"src/Syntax.lex.tex","sha256":"4d2d6d5cc65ee405c5b0fe2732babae4d496f16a4e054ac334d2abfa69152dd0"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/Recursion/Syntax.lean"},{"id":1,"kind":"tex","path":"modules/Recursion/Syntax.tex"}],"mappings":[{"artifact":0,"gen_end":199,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":861,"src_start":0},{"artifact":0,"gen_end":287,"gen_start":199,"node":1,"role":"declaration","source":0,"src_end":255,"src_start":115},{"artifact":0,"gen_end":415,"gen_start":287,"node":2,"role":"declaration","source":0,"src_end":487,"src_start":257},{"artifact":0,"gen_end":518,"gen_start":415,"node":3,"role":"declaration","source":0,"src_end":671,"src_start":489},{"artifact":0,"gen_end":600,"gen_start":518,"node":4,"role":"declaration","source":0,"src_end":825,"src_start":673},{"artifact":0,"gen_end":622,"gen_start":600,"node":0,"role":"declaration","source":0,"src_end":861,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":5,"role":"declaration","source":0,"src_end":861,"src_start":0},{"artifact":1,"gen_end":328,"gen_start":134,"node":6,"role":"declaration","source":0,"src_end":255,"src_start":115},{"artifact":1,"gen_end":637,"gen_start":328,"node":7,"role":"declaration","source":0,"src_end":487,"src_start":257},{"artifact":1,"gen_end":886,"gen_start":637,"node":8,"role":"declaration","source":0,"src_end":671,"src_start":489},{"artifact":1,"gen_end":1078,"gen_start":886,"node":9,"role":"declaration","source":0,"src_end":825,"src_start":673},{"artifact":1,"gen_end":1093,"gen_start":1078,"node":5,"role":"declaration","source":0,"src_end":861,"src_start":0}],"module":"Syntax","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-latex-module"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"}],"semantic_id":"d478905735ed8adb7e0e1e617ced36dbb99b24d527400467981dfe38faea5841","source_id":"2f0ffdf34707ae74d9ea7bde2e298a2515e325f54a1de20fa2301e60a4e6656a","sources":[{"id":0,"kind":"file","path":"src/Syntax.lex.tex","sha256":"4d2d6d5cc65ee405c5b0fe2732babae4d496f16a4e054ac334d2abfa69152dd0"}],"spec":"lexlean/source-map/1"} diff --git a/examples/recursion/expected/verify/audit/LexLeanAudit.Afca4cff7cd9d7d680879d32a7e810d91.LexLeanRuntime.Collections.lean b/examples/recursion/expected/verify/audit/LexLeanAudit.Ad478905735ed8adb7e0e1e617ced36db.LexLeanRuntime.Collections.lean similarity index 100% rename from examples/recursion/expected/verify/audit/LexLeanAudit.Afca4cff7cd9d7d680879d32a7e810d91.LexLeanRuntime.Collections.lean rename to examples/recursion/expected/verify/audit/LexLeanAudit.Ad478905735ed8adb7e0e1e617ced36db.LexLeanRuntime.Collections.lean diff --git a/examples/recursion/expected/verify/audit/LexLeanAudit.Ad478905735ed8adb7e0e1e617ced36db.LexLeanRuntime.Collections.process.json b/examples/recursion/expected/verify/audit/LexLeanAudit.Ad478905735ed8adb7e0e1e617ced36db.LexLeanRuntime.Collections.process.json new file mode 100644 index 000000000..b8e1531a7 --- /dev/null +++ b/examples/recursion/expected/verify/audit/LexLeanAudit.Ad478905735ed8adb7e0e1e617ced36db.LexLeanRuntime.Collections.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ad478905735ed8adb7e0e1e617ced36db.LexLeanRuntime.Collections.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ad478905735ed8adb7e0e1e617ced36db.LexLeanRuntime.Collections","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanCollections.Key' does not depend on any axioms\n'LexLeanCollections.Key.casesOn' does not depend on any axioms\n'LexLeanCollections.Key.compare' does not depend on any axioms\n'LexLeanCollections.Key.ctorIdx' does not depend on any axioms\n'LexLeanCollections.Key.mk._flat_ctor' does not depend on any axioms\n'LexLeanCollections.Key.mk.noConfusion' does not depend on any axioms\n'LexLeanCollections.Key.noConfusion' does not depend on any axioms\n'LexLeanCollections.Key.noConfusionType' does not depend on any axioms\n'LexLeanCollections.Key.recOn' does not depend on any axioms\n'LexLeanCollections.compareCodes' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._f' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._sunfold' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._unsafe_rec' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.match_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.match_4' does not depend on any axioms\n'LexLeanCollections.containsElement' does not depend on any axioms\n'LexLeanCollections.containsElement._f' does not depend on any axioms\n'LexLeanCollections.containsElement._sunfold' does not depend on any axioms\n'LexLeanCollections.containsElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.graphNodes' does not depend on any axioms\n'LexLeanCollections.graphReachable' depends on axioms: [propext]\n'LexLeanCollections.graphSuccessors' does not depend on any axioms\n'LexLeanCollections.graphTopological' does not depend on any axioms\n'LexLeanCollections.insertElement' does not depend on any axioms\n'LexLeanCollections.insertElement._f' does not depend on any axioms\n'LexLeanCollections.insertElement._sunfold' does not depend on any axioms\n'LexLeanCollections.insertElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.insertElement.match_1' does not depend on any axioms\n'LexLeanCollections.insertEntry' does not depend on any axioms\n'LexLeanCollections.insertEntry._f' does not depend on any axioms\n'LexLeanCollections.insertEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.insertEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.insertEntry.match_1' does not depend on any axioms\n'LexLeanCollections.insertEntry.match_3' does not depend on any axioms\n'LexLeanCollections.instKeyBool' depends on axioms: [propext]\n'LexLeanCollections.instKeyInt' does not depend on any axioms\n'LexLeanCollections.instKeyInt16' does not depend on any axioms\n'LexLeanCollections.instKeyInt32' does not depend on any axioms\n'LexLeanCollections.instKeyInt64' does not depend on any axioms\n'LexLeanCollections.instKeyInt8' does not depend on any axioms\n'LexLeanCollections.instKeyNat' does not depend on any axioms\n'LexLeanCollections.instKeyProd' depends on axioms: [propext]\n'LexLeanCollections.instKeyString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanCollections.instKeyUInt16' does not depend on any axioms\n'LexLeanCollections.instKeyUInt32' does not depend on any axioms\n'LexLeanCollections.instKeyUInt64' does not depend on any axioms\n'LexLeanCollections.instKeyUInt8' does not depend on any axioms\n'LexLeanCollections.iterate' does not depend on any axioms\n'LexLeanCollections.iterate._f' does not depend on any axioms\n'LexLeanCollections.iterate._sunfold' does not depend on any axioms\n'LexLeanCollections.iterate._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.iterate.match_1' does not depend on any axioms\n'LexLeanCollections.iterateUntil' does not depend on any axioms\n'LexLeanCollections.iterateUntil._f' does not depend on any axioms\n'LexLeanCollections.iterateUntil._sunfold' does not depend on any axioms\n'LexLeanCollections.iterateUntil._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.iterateUntil.match_1' does not depend on any axioms\n'LexLeanCollections.lessThan' depends on axioms: [propext]\n'LexLeanCollections.lessThan._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.lessThan.match_1' depends on axioms: [propext]\n'LexLeanCollections.listFold' does not depend on any axioms\n'LexLeanCollections.lookupEntry' does not depend on any axioms\n'LexLeanCollections.lookupEntry._f' does not depend on any axioms\n'LexLeanCollections.lookupEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.lookupEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.mapContains' does not depend on any axioms\n'LexLeanCollections.mapEntries' does not depend on any axioms\n'LexLeanCollections.mapFold' does not depend on any axioms\n'LexLeanCollections.mapInsert' does not depend on any axioms\n'LexLeanCollections.mapKeys' does not depend on any axioms\n'LexLeanCollections.mapLookup' does not depend on any axioms\n'LexLeanCollections.mapRemove' does not depend on any axioms\n'LexLeanCollections.mapSize' does not depend on any axioms\n'LexLeanCollections.mapValues' does not depend on any axioms\n'LexLeanCollections.reachableFrom' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._f' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._sunfold' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._unsafe_rec' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom.match_1' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom.match_4' does not depend on any axioms\n'LexLeanCollections.removeElement' does not depend on any axioms\n'LexLeanCollections.removeElement._f' does not depend on any axioms\n'LexLeanCollections.removeElement._sunfold' does not depend on any axioms\n'LexLeanCollections.removeElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.removeEntry' does not depend on any axioms\n'LexLeanCollections.removeEntry._f' does not depend on any axioms\n'LexLeanCollections.removeEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.removeEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.setContains' does not depend on any axioms\n'LexLeanCollections.setDifference' does not depend on any axioms\n'LexLeanCollections.setElements' does not depend on any axioms\n'LexLeanCollections.setFold' does not depend on any axioms\n'LexLeanCollections.setInsert' does not depend on any axioms\n'LexLeanCollections.setIntersection' does not depend on any axioms\n'LexLeanCollections.setRemove' does not depend on any axioms\n'LexLeanCollections.setSize' does not depend on any axioms\n'LexLeanCollections.setUnion' does not depend on any axioms\n'LexLeanCollections.topological' does not depend on any axioms\n'LexLeanCollections.topological._f' does not depend on any axioms\n'LexLeanCollections.topological._sunfold' does not depend on any axioms\n'LexLeanCollections.topological._unsafe_rec' does not depend on any axioms\n","stdout_sha256":"b75acc0e99e23684c3cc876eacbfc93f47161cfee8a7440df17fa45f321c8c6a","tool":"lean"} diff --git a/examples/recursion/expected/verify/audit/LexLeanAudit.Afca4cff7cd9d7d680879d32a7e810d91.LexLeanRuntime.Laws.lean b/examples/recursion/expected/verify/audit/LexLeanAudit.Ad478905735ed8adb7e0e1e617ced36db.LexLeanRuntime.Laws.lean similarity index 100% rename from examples/recursion/expected/verify/audit/LexLeanAudit.Afca4cff7cd9d7d680879d32a7e810d91.LexLeanRuntime.Laws.lean rename to examples/recursion/expected/verify/audit/LexLeanAudit.Ad478905735ed8adb7e0e1e617ced36db.LexLeanRuntime.Laws.lean diff --git a/examples/recursion/expected/verify/audit/LexLeanAudit.Ad478905735ed8adb7e0e1e617ced36db.LexLeanRuntime.Laws.process.json b/examples/recursion/expected/verify/audit/LexLeanAudit.Ad478905735ed8adb7e0e1e617ced36db.LexLeanRuntime.Laws.process.json new file mode 100644 index 000000000..17201a665 --- /dev/null +++ b/examples/recursion/expected/verify/audit/LexLeanAudit.Ad478905735ed8adb7e0e1e617ced36db.LexLeanRuntime.Laws.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ad478905735ed8adb7e0e1e617ced36db.LexLeanRuntime.Laws.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ad478905735ed8adb7e0e1e617ced36db.LexLeanRuntime.Laws","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanCollections.lessThan._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanCollections.lessThan.eq_1' depends on axioms: [propext]\n'LexLeanCollections.listFold.eq_1' does not depend on any axioms\n'LexLeanLaws.append_list' does not depend on any axioms\n'LexLeanLaws.length_list' does not depend on any axioms\n'LexLeanLaws.lessThan_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int16' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int32' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int64' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int8' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_nat' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint16' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint32' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint64' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint8' depends on axioms: [propext]\n'LexLeanLaws.listFold_add_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_add_int_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_add_nat' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_add_nat_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_append' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_cons' does not depend on any axioms\n'LexLeanLaws.listFold_extend' depends on axioms: [propext]\n'LexLeanLaws.listFold_fusion' does not depend on any axioms\n'LexLeanLaws.listFold_nil' does not depend on any axioms\n'LexLeanLaws.listFold_pair' does not depend on any axioms\n'LexLeanLaws.listFold_prepend' depends on axioms: [propext]\n'LexLeanLaws.listFold_sub_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_sub_int_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.mapEntries_self' does not depend on any axioms\n'LexLeanLaws.mapFold_listFold' does not depend on any axioms\n'LexLeanLaws.mapSize_length' does not depend on any axioms\n'LexLeanLaws.quotient_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.quotient_nat' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.remainder_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.remainder_nat' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.setElements_self' does not depend on any axioms\n'LexLeanLaws.setFold_listFold' does not depend on any axioms\n'LexLeanLaws.setSize_length' does not depend on any axioms\n'LexLeanLaws.sumInt' does not depend on any axioms\n'LexLeanLaws.sumInt._f' does not depend on any axioms\n'LexLeanLaws.sumInt._sunfold' does not depend on any axioms\n'LexLeanLaws.sumInt._unsafe_rec' does not depend on any axioms\n'LexLeanLaws.sumInt.eq_1' does not depend on any axioms\n'LexLeanLaws.sumInt.eq_2' does not depend on any axioms\n'LexLeanLaws.sumInt.eq_def' does not depend on any axioms\n'LexLeanLaws.sumInt_add' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_append' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_cons' does not depend on any axioms\n'LexLeanLaws.sumInt_const' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_mul' depends on axioms: [propext]\n'LexLeanLaws.sumInt_mul_right' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_mul_self' depends on axioms: [propext]\n'LexLeanLaws.sumInt_neg' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_neg_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_nil' does not depend on any axioms\n'LexLeanLaws.sumInt_perm' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_reverse' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_sub' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat' does not depend on any axioms\n'LexLeanLaws.sumNat._f' does not depend on any axioms\n'LexLeanLaws.sumNat._sunfold' does not depend on any axioms\n'LexLeanLaws.sumNat._unsafe_rec' does not depend on any axioms\n'LexLeanLaws.sumNat.eq_1' does not depend on any axioms\n'LexLeanLaws.sumNat.eq_2' does not depend on any axioms\n'LexLeanLaws.sumNat.eq_def' does not depend on any axioms\n'LexLeanLaws.sumNat.match_1' does not depend on any axioms\n'LexLeanLaws.sumNat_add' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_append' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_cons' does not depend on any axioms\n'LexLeanLaws.sumNat_const' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_mul' does not depend on any axioms\n'LexLeanLaws.sumNat_mul_right' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_mul_self' does not depend on any axioms\n'LexLeanLaws.sumNat_nil' does not depend on any axioms\n'LexLeanLaws.sumNat_perm' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_reverse' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.tdiv_ediv' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.tmod_emod' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.quotient.eq_1' does not depend on any axioms\n'LexLeanRuntime.remainder.eq_1' does not depend on any axioms\n","stdout_sha256":"a4ba2d39c9cdfd5e40c41c5ccf4726d937fd192fc042b74bb56cc0651e28919e","tool":"lean"} diff --git a/examples/recursion/expected/verify/audit/LexLeanAudit.Afca4cff7cd9d7d680879d32a7e810d91.LexLeanRuntime.Portable.lean b/examples/recursion/expected/verify/audit/LexLeanAudit.Ad478905735ed8adb7e0e1e617ced36db.LexLeanRuntime.Portable.lean similarity index 100% rename from examples/recursion/expected/verify/audit/LexLeanAudit.Afca4cff7cd9d7d680879d32a7e810d91.LexLeanRuntime.Portable.lean rename to examples/recursion/expected/verify/audit/LexLeanAudit.Ad478905735ed8adb7e0e1e617ced36db.LexLeanRuntime.Portable.lean diff --git a/examples/recursion/expected/verify/audit/LexLeanAudit.Ad478905735ed8adb7e0e1e617ced36db.LexLeanRuntime.Portable.process.json b/examples/recursion/expected/verify/audit/LexLeanAudit.Ad478905735ed8adb7e0e1e617ced36db.LexLeanRuntime.Portable.process.json new file mode 100644 index 000000000..106025825 --- /dev/null +++ b/examples/recursion/expected/verify/audit/LexLeanAudit.Ad478905735ed8adb7e0e1e617ced36db.LexLeanRuntime.Portable.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ad478905735ed8adb7e0e1e617ced36db.LexLeanRuntime.Portable.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ad478905735ed8adb7e0e1e617ced36db.LexLeanRuntime.Portable","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanRuntime.Appendable' does not depend on any axioms\n'LexLeanRuntime.Appendable.append' does not depend on any axioms\n'LexLeanRuntime.Appendable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Appendable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Appendable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Appendable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Appendable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Appendable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Appendable.recOn' does not depend on any axioms\n'LexLeanRuntime.Decimal' does not depend on any axioms\n'LexLeanRuntime.Decimal.casesOn' does not depend on any axioms\n'LexLeanRuntime.Decimal.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Decimal.format' does not depend on any axioms\n'LexLeanRuntime.Decimal.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Decimal.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Decimal.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Decimal.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Decimal.parse' does not depend on any axioms\n'LexLeanRuntime.Decimal.recOn' does not depend on any axioms\n'LexLeanRuntime.Fixed' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitAnd' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitNot' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitOr' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitXor' does not depend on any axioms\n'LexLeanRuntime.Fixed.casesOn' does not depend on any axioms\n'LexLeanRuntime.Fixed.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Fixed.fromInt' does not depend on any axioms\n'LexLeanRuntime.Fixed.maximum' does not depend on any axioms\n'LexLeanRuntime.Fixed.minimum' does not depend on any axioms\n'LexLeanRuntime.Fixed.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Fixed.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Fixed.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Fixed.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Fixed.recOn' does not depend on any axioms\n'LexLeanRuntime.Fixed.shiftLeft' does not depend on any axioms\n'LexLeanRuntime.Fixed.shiftRight' does not depend on any axioms\n'LexLeanRuntime.Fixed.toToMathInt' does not depend on any axioms\n'LexLeanRuntime.Indexable' does not depend on any axioms\n'LexLeanRuntime.Indexable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Indexable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Indexable.index' does not depend on any axioms\n'LexLeanRuntime.Indexable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Indexable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Indexable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Indexable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Indexable.recOn' does not depend on any axioms\n'LexLeanRuntime.Lengthable' does not depend on any axioms\n'LexLeanRuntime.Lengthable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Lengthable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Lengthable.length' does not depend on any axioms\n'LexLeanRuntime.Lengthable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Lengthable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Lengthable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Lengthable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Lengthable.recOn' does not depend on any axioms\n'LexLeanRuntime.Quotient' does not depend on any axioms\n'LexLeanRuntime.Quotient.casesOn' does not depend on any axioms\n'LexLeanRuntime.Quotient.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Quotient.isZero' does not depend on any axioms\n'LexLeanRuntime.Quotient.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Quotient.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Quotient.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Quotient.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Quotient.quotient' does not depend on any axioms\n'LexLeanRuntime.Quotient.recOn' does not depend on any axioms\n'LexLeanRuntime.Quotient.remainder' does not depend on any axioms\n'LexLeanRuntime.Sliceable' does not depend on any axioms\n'LexLeanRuntime.Sliceable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Sliceable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Sliceable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Sliceable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Sliceable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Sliceable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Sliceable.recOn' does not depend on any axioms\n'LexLeanRuntime.Sliceable.slice' does not depend on any axioms\n'LexLeanRuntime.ToMathInt' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.casesOn' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.noConfusion' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.recOn' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.toInt' does not depend on any axioms\n'LexLeanRuntime.append' does not depend on any axioms\n'LexLeanRuntime.bitAnd' does not depend on any axioms\n'LexLeanRuntime.bitNot' does not depend on any axioms\n'LexLeanRuntime.bitOr' does not depend on any axioms\n'LexLeanRuntime.bitXor' does not depend on any axioms\n'LexLeanRuntime.checkedAdd' does not depend on any axioms\n'LexLeanRuntime.checkedAddInt64' does not depend on any axioms\n'LexLeanRuntime.checkedConvert' does not depend on any axioms\n'LexLeanRuntime.checkedFromInt' does not depend on any axioms\n'LexLeanRuntime.checkedMultiply' does not depend on any axioms\n'LexLeanRuntime.checkedMultiplyInt64' does not depend on any axioms\n'LexLeanRuntime.checkedMultiplyInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.checkedNegate' does not depend on any axioms\n'LexLeanRuntime.checkedNegateInt64' does not depend on any axioms\n'LexLeanRuntime.checkedQuotient' does not depend on any axioms\n'LexLeanRuntime.checkedQuotientInt64' does not depend on any axioms\n'LexLeanRuntime.checkedSubtract' does not depend on any axioms\n'LexLeanRuntime.checkedSubtractInt64' does not depend on any axioms\n'LexLeanRuntime.compareBytes' depends on axioms: [propext]\n'LexLeanRuntime.divideMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._f' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._sunfold' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.equal' does not depend on any axioms\n'LexLeanRuntime.formatDecimal' does not depend on any axioms\n'LexLeanRuntime.index' does not depend on any axioms\n'LexLeanRuntime.instAppendableByteArray' does not depend on any axioms\n'LexLeanRuntime.instAppendableList' does not depend on any axioms\n'LexLeanRuntime.instDecimalInt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instDecimalInt.match_1' does not depend on any axioms\n'LexLeanRuntime.instDecimalOfFixedOfToString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instFixedInt16' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt32' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt64' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt8' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt16' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt32' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt64' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt8' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instIndexableByteArrayUInt8' does not depend on any axioms\n'LexLeanRuntime.instIndexableList' does not depend on any axioms\n'LexLeanRuntime.instLengthableByteArray' does not depend on any axioms\n'LexLeanRuntime.instLengthableList' does not depend on any axioms\n'LexLeanRuntime.instLengthableString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instQuotientInt' does not depend on any axioms\n'LexLeanRuntime.instQuotientNat' does not depend on any axioms\n'LexLeanRuntime.instSliceableByteArray' does not depend on any axioms\n'LexLeanRuntime.instSliceableList' does not depend on any axioms\n'LexLeanRuntime.instToMathIntInt' does not depend on any axioms\n'LexLeanRuntime.join' depends on axioms: [propext]\n'LexLeanRuntime.length' does not depend on any axioms\n'LexLeanRuntime.listIndex' does not depend on any axioms\n'LexLeanRuntime.listIndex._f' does not depend on any axioms\n'LexLeanRuntime.listIndex._sunfold' does not depend on any axioms\n'LexLeanRuntime.listIndex._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.listIndex.match_1' does not depend on any axioms\n'LexLeanRuntime.magnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.multiply' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._f' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._sunfold' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.negate' does not depend on any axioms\n'LexLeanRuntime.parseDecimal' does not depend on any axioms\n'LexLeanRuntime.quotient' does not depend on any axioms\n'LexLeanRuntime.remainder' does not depend on any axioms\n'LexLeanRuntime.shiftLeft' does not depend on any axioms\n'LexLeanRuntime.shiftRight' does not depend on any axioms\n'LexLeanRuntime.signedMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.slice' does not depend on any axioms\n'LexLeanRuntime.splitExact' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.subtract' does not depend on any axioms\n'LexLeanRuntime.utf8Decode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.utf8Encode' does not depend on any axioms\n","stdout_sha256":"73fea1d9e9e9f0a2f1363b9f284eeeb9e434430e9fa910260b9526bad864641e","tool":"lean"} diff --git a/examples/recursion/expected/verify/audit/LexLeanAudit.Afca4cff7cd9d7d680879d32a7e810d91.Recursion.Main.lean b/examples/recursion/expected/verify/audit/LexLeanAudit.Ad478905735ed8adb7e0e1e617ced36db.Recursion.Main.lean similarity index 100% rename from examples/recursion/expected/verify/audit/LexLeanAudit.Afca4cff7cd9d7d680879d32a7e810d91.Recursion.Main.lean rename to examples/recursion/expected/verify/audit/LexLeanAudit.Ad478905735ed8adb7e0e1e617ced36db.Recursion.Main.lean diff --git a/examples/recursion/expected/verify/audit/LexLeanAudit.Ad478905735ed8adb7e0e1e617ced36db.Recursion.Main.process.json b/examples/recursion/expected/verify/audit/LexLeanAudit.Ad478905735ed8adb7e0e1e617ced36db.Recursion.Main.process.json new file mode 100644 index 000000000..9f2259c2e --- /dev/null +++ b/examples/recursion/expected/verify/audit/LexLeanAudit.Ad478905735ed8adb7e0e1e617ced36db.Recursion.Main.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ad478905735ed8adb7e0e1e617ced36db.Recursion.Main.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ad478905735ed8adb7e0e1e617ced36db.Recursion.Main","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Recursion.Main.countdown' depends on axioms: [propext, Quot.sound]\n'Recursion.Main.countdown_decreases' depends on axioms: [propext, Quot.sound]\n'Recursion.Main.countdown_nine' depends on axioms: [propext, Quot.sound]\n'Recursion.Main.exprSize' does not depend on any axioms\n'Recursion.Main.expression_size' does not depend on any axioms\n'Recursion.Main.foldExpr' does not depend on any axioms\n'Recursion.Main.foldStatement' does not depend on any axioms\n'Recursion.Main.foldStatements' does not depend on any axioms\n'Recursion.Main.folding_sample' does not depend on any axioms\n'Recursion.Main.forestSize' does not depend on any axioms\n'Recursion.Main.isEven' does not depend on any axioms\n'Recursion.Main.isOdd' does not depend on any axioms\n'Recursion.Main.ping' depends on axioms: [propext, Quot.sound]\n'Recursion.Main.ping_seven' depends on axioms: [propext, Quot.sound]\n'Recursion.Main.ping_to_pong' depends on axioms: [propext, Quot.sound]\n'Recursion.Main.pong' depends on axioms: [propext, Quot.sound]\n'Recursion.Main.pong_to_ping' depends on axioms: [propext, Quot.sound]\n'Recursion.Main.prune' depends on axioms: [propext, Quot.sound]\n'Recursion.Main.prune_plus' depends on axioms: [propext, Quot.sound]\n'Recursion.Main.prune_result' depends on axioms: [propext, Quot.sound]\n'Recursion.Main.reassociate' depends on axioms: [propext, Quot.sound]\n'Recursion.Main.reassociate_literal' depends on axioms: [propext, Quot.sound]\n'Recursion.Main.reassociate_plus' depends on axioms: [propext, Quot.sound]\n'Recursion.Main.reassociate_weight' depends on axioms: [propext, Quot.sound]\n'Recursion.Main.reduce' depends on axioms: [propext, Quot.sound]\n'Recursion.Main.reduce_decreases' depends on axioms: [propext, Quot.sound]\n'Recursion.Main.reduce_twenty_three' depends on axioms: [propext, Quot.sound]\n'Recursion.Main.roseSize' does not depend on any axioms\n'Recursion.Main.rose_size' does not depend on any axioms\n'Recursion.Main.search' depends on axioms: [propext, Quot.sound]\n'Recursion.Main.search_decreases' depends on axioms: [propext, Quot.sound]\n'Recursion.Main.search_first' depends on axioms: [propext, Quot.sound]\n'Recursion.Main.statementSize' does not depend on any axioms\n'Recursion.Main.statementsSize' does not depend on any axioms\n'Recursion.Main.ten_is_even' does not depend on any axioms\n'Recursion.Main.weight' does not depend on any axioms\n","stdout_sha256":"f0c4e41ed308143236fb35a4287b2e6cf4fcc374313d2db6925bf81cee735602","tool":"lean"} diff --git a/examples/recursion/expected/verify/audit/LexLeanAudit.Afca4cff7cd9d7d680879d32a7e810d91.Recursion.Syntax.lean b/examples/recursion/expected/verify/audit/LexLeanAudit.Ad478905735ed8adb7e0e1e617ced36db.Recursion.Syntax.lean similarity index 100% rename from examples/recursion/expected/verify/audit/LexLeanAudit.Afca4cff7cd9d7d680879d32a7e810d91.Recursion.Syntax.lean rename to examples/recursion/expected/verify/audit/LexLeanAudit.Ad478905735ed8adb7e0e1e617ced36db.Recursion.Syntax.lean diff --git a/examples/recursion/expected/verify/audit/LexLeanAudit.Ad478905735ed8adb7e0e1e617ced36db.Recursion.Syntax.process.json b/examples/recursion/expected/verify/audit/LexLeanAudit.Ad478905735ed8adb7e0e1e617ced36db.Recursion.Syntax.process.json new file mode 100644 index 000000000..507122cd8 --- /dev/null +++ b/examples/recursion/expected/verify/audit/LexLeanAudit.Ad478905735ed8adb7e0e1e617ced36db.Recursion.Syntax.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Ad478905735ed8adb7e0e1e617ced36db.Recursion.Syntax.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Ad478905735ed8adb7e0e1e617ced36db.Recursion.Syntax","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Recursion.Syntax.Expr' does not depend on any axioms\n'Recursion.Syntax.Rose' does not depend on any axioms\n'Recursion.Syntax.Stmt' does not depend on any axioms\n'Recursion.Syntax.Term' does not depend on any axioms\n","stdout_sha256":"59c34faf221d3617692f5b38aa55c8d27450f65f8daa542168e23f3a02fad8f8","tool":"lean"} diff --git a/examples/recursion/expected/verify/audit/LexLeanAudit.Afca4cff7cd9d7d680879d32a7e810d91.LexLeanRuntime.Collections.process.json b/examples/recursion/expected/verify/audit/LexLeanAudit.Afca4cff7cd9d7d680879d32a7e810d91.LexLeanRuntime.Collections.process.json deleted file mode 100644 index fefa765d3..000000000 --- a/examples/recursion/expected/verify/audit/LexLeanAudit.Afca4cff7cd9d7d680879d32a7e810d91.LexLeanRuntime.Collections.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Afca4cff7cd9d7d680879d32a7e810d91.LexLeanRuntime.Collections.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Afca4cff7cd9d7d680879d32a7e810d91.LexLeanRuntime.Collections","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanCollections.Key' does not depend on any axioms\n'LexLeanCollections.Key.casesOn' does not depend on any axioms\n'LexLeanCollections.Key.compare' does not depend on any axioms\n'LexLeanCollections.Key.ctorIdx' does not depend on any axioms\n'LexLeanCollections.Key.mk._flat_ctor' does not depend on any axioms\n'LexLeanCollections.Key.mk.noConfusion' does not depend on any axioms\n'LexLeanCollections.Key.noConfusion' does not depend on any axioms\n'LexLeanCollections.Key.noConfusionType' does not depend on any axioms\n'LexLeanCollections.Key.recOn' does not depend on any axioms\n'LexLeanCollections.compareCodes' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._f' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._sunfold' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._unsafe_rec' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.match_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.match_4' does not depend on any axioms\n'LexLeanCollections.containsElement' does not depend on any axioms\n'LexLeanCollections.containsElement._f' does not depend on any axioms\n'LexLeanCollections.containsElement._sunfold' does not depend on any axioms\n'LexLeanCollections.containsElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.graphNodes' does not depend on any axioms\n'LexLeanCollections.graphReachable' depends on axioms: [propext]\n'LexLeanCollections.graphSuccessors' does not depend on any axioms\n'LexLeanCollections.graphTopological' does not depend on any axioms\n'LexLeanCollections.insertElement' does not depend on any axioms\n'LexLeanCollections.insertElement._f' does not depend on any axioms\n'LexLeanCollections.insertElement._sunfold' does not depend on any axioms\n'LexLeanCollections.insertElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.insertElement.match_1' does not depend on any axioms\n'LexLeanCollections.insertEntry' does not depend on any axioms\n'LexLeanCollections.insertEntry._f' does not depend on any axioms\n'LexLeanCollections.insertEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.insertEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.insertEntry.match_1' does not depend on any axioms\n'LexLeanCollections.insertEntry.match_3' does not depend on any axioms\n'LexLeanCollections.instKeyBool' depends on axioms: [propext]\n'LexLeanCollections.instKeyInt' does not depend on any axioms\n'LexLeanCollections.instKeyInt16' does not depend on any axioms\n'LexLeanCollections.instKeyInt32' does not depend on any axioms\n'LexLeanCollections.instKeyInt64' does not depend on any axioms\n'LexLeanCollections.instKeyInt8' does not depend on any axioms\n'LexLeanCollections.instKeyNat' does not depend on any axioms\n'LexLeanCollections.instKeyProd' depends on axioms: [propext]\n'LexLeanCollections.instKeyString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanCollections.instKeyUInt16' does not depend on any axioms\n'LexLeanCollections.instKeyUInt32' does not depend on any axioms\n'LexLeanCollections.instKeyUInt64' does not depend on any axioms\n'LexLeanCollections.instKeyUInt8' does not depend on any axioms\n'LexLeanCollections.iterate' does not depend on any axioms\n'LexLeanCollections.iterate._f' does not depend on any axioms\n'LexLeanCollections.iterate._sunfold' does not depend on any axioms\n'LexLeanCollections.iterate._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.iterate.match_1' does not depend on any axioms\n'LexLeanCollections.iterateUntil' does not depend on any axioms\n'LexLeanCollections.iterateUntil._f' does not depend on any axioms\n'LexLeanCollections.iterateUntil._sunfold' does not depend on any axioms\n'LexLeanCollections.iterateUntil._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.iterateUntil.match_1' does not depend on any axioms\n'LexLeanCollections.lessThan' depends on axioms: [propext]\n'LexLeanCollections.lessThan._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.lessThan.match_1' depends on axioms: [propext]\n'LexLeanCollections.listFold' does not depend on any axioms\n'LexLeanCollections.lookupEntry' does not depend on any axioms\n'LexLeanCollections.lookupEntry._f' does not depend on any axioms\n'LexLeanCollections.lookupEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.lookupEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.mapContains' does not depend on any axioms\n'LexLeanCollections.mapEntries' does not depend on any axioms\n'LexLeanCollections.mapFold' does not depend on any axioms\n'LexLeanCollections.mapInsert' does not depend on any axioms\n'LexLeanCollections.mapKeys' does not depend on any axioms\n'LexLeanCollections.mapLookup' does not depend on any axioms\n'LexLeanCollections.mapRemove' does not depend on any axioms\n'LexLeanCollections.mapSize' does not depend on any axioms\n'LexLeanCollections.mapValues' does not depend on any axioms\n'LexLeanCollections.reachableFrom' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._f' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._sunfold' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._unsafe_rec' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom.match_1' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom.match_4' does not depend on any axioms\n'LexLeanCollections.removeElement' does not depend on any axioms\n'LexLeanCollections.removeElement._f' does not depend on any axioms\n'LexLeanCollections.removeElement._sunfold' does not depend on any axioms\n'LexLeanCollections.removeElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.removeEntry' does not depend on any axioms\n'LexLeanCollections.removeEntry._f' does not depend on any axioms\n'LexLeanCollections.removeEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.removeEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.setContains' does not depend on any axioms\n'LexLeanCollections.setDifference' does not depend on any axioms\n'LexLeanCollections.setElements' does not depend on any axioms\n'LexLeanCollections.setFold' does not depend on any axioms\n'LexLeanCollections.setInsert' does not depend on any axioms\n'LexLeanCollections.setIntersection' does not depend on any axioms\n'LexLeanCollections.setRemove' does not depend on any axioms\n'LexLeanCollections.setSize' does not depend on any axioms\n'LexLeanCollections.setUnion' does not depend on any axioms\n'LexLeanCollections.topological' does not depend on any axioms\n'LexLeanCollections.topological._f' does not depend on any axioms\n'LexLeanCollections.topological._sunfold' does not depend on any axioms\n'LexLeanCollections.topological._unsafe_rec' does not depend on any axioms\n","stdout_sha256":"b75acc0e99e23684c3cc876eacbfc93f47161cfee8a7440df17fa45f321c8c6a","tool":"lean"} diff --git a/examples/recursion/expected/verify/audit/LexLeanAudit.Afca4cff7cd9d7d680879d32a7e810d91.LexLeanRuntime.Laws.process.json b/examples/recursion/expected/verify/audit/LexLeanAudit.Afca4cff7cd9d7d680879d32a7e810d91.LexLeanRuntime.Laws.process.json deleted file mode 100644 index 400aaf7b4..000000000 --- a/examples/recursion/expected/verify/audit/LexLeanAudit.Afca4cff7cd9d7d680879d32a7e810d91.LexLeanRuntime.Laws.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Afca4cff7cd9d7d680879d32a7e810d91.LexLeanRuntime.Laws.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Afca4cff7cd9d7d680879d32a7e810d91.LexLeanRuntime.Laws","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanCollections.lessThan._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanCollections.lessThan.eq_1' depends on axioms: [propext]\n'LexLeanCollections.listFold.eq_1' does not depend on any axioms\n'LexLeanLaws.append_list' does not depend on any axioms\n'LexLeanLaws.length_list' does not depend on any axioms\n'LexLeanLaws.lessThan_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int16' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int32' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int64' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_int8' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.lessThan_nat' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint16' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint32' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint64' depends on axioms: [propext]\n'LexLeanLaws.lessThan_uint8' depends on axioms: [propext]\n'LexLeanLaws.listFold_add_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_add_int_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_add_nat' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_add_nat_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_append' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_cons' does not depend on any axioms\n'LexLeanLaws.listFold_extend' depends on axioms: [propext]\n'LexLeanLaws.listFold_fusion' does not depend on any axioms\n'LexLeanLaws.listFold_nil' does not depend on any axioms\n'LexLeanLaws.listFold_pair' does not depend on any axioms\n'LexLeanLaws.listFold_prepend' depends on axioms: [propext]\n'LexLeanLaws.listFold_sub_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.listFold_sub_int_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.mapEntries_self' does not depend on any axioms\n'LexLeanLaws.mapFold_listFold' does not depend on any axioms\n'LexLeanLaws.mapSize_length' does not depend on any axioms\n'LexLeanLaws.quotient_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.quotient_nat' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.remainder_int' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.remainder_nat' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.setElements_self' does not depend on any axioms\n'LexLeanLaws.setFold_listFold' does not depend on any axioms\n'LexLeanLaws.setSize_length' does not depend on any axioms\n'LexLeanLaws.sumInt' does not depend on any axioms\n'LexLeanLaws.sumInt._f' does not depend on any axioms\n'LexLeanLaws.sumInt._sunfold' does not depend on any axioms\n'LexLeanLaws.sumInt._unsafe_rec' does not depend on any axioms\n'LexLeanLaws.sumInt.eq_1' does not depend on any axioms\n'LexLeanLaws.sumInt.eq_2' does not depend on any axioms\n'LexLeanLaws.sumInt.eq_def' does not depend on any axioms\n'LexLeanLaws.sumInt_add' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_append' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_cons' does not depend on any axioms\n'LexLeanLaws.sumInt_const' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_mul' depends on axioms: [propext]\n'LexLeanLaws.sumInt_mul_right' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_mul_self' depends on axioms: [propext]\n'LexLeanLaws.sumInt_neg' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_neg_self' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_nil' does not depend on any axioms\n'LexLeanLaws.sumInt_perm' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_reverse' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumInt_sub' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat' does not depend on any axioms\n'LexLeanLaws.sumNat._f' does not depend on any axioms\n'LexLeanLaws.sumNat._sunfold' does not depend on any axioms\n'LexLeanLaws.sumNat._unsafe_rec' does not depend on any axioms\n'LexLeanLaws.sumNat.eq_1' does not depend on any axioms\n'LexLeanLaws.sumNat.eq_2' does not depend on any axioms\n'LexLeanLaws.sumNat.eq_def' does not depend on any axioms\n'LexLeanLaws.sumNat.match_1' does not depend on any axioms\n'LexLeanLaws.sumNat_add' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_append' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_cons' does not depend on any axioms\n'LexLeanLaws.sumNat_const' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_mul' does not depend on any axioms\n'LexLeanLaws.sumNat_mul_right' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_mul_self' does not depend on any axioms\n'LexLeanLaws.sumNat_nil' does not depend on any axioms\n'LexLeanLaws.sumNat_perm' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.sumNat_reverse' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.tdiv_ediv' depends on axioms: [propext, Quot.sound]\n'LexLeanLaws.tmod_emod' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.quotient.eq_1' does not depend on any axioms\n'LexLeanRuntime.remainder.eq_1' does not depend on any axioms\n","stdout_sha256":"a4ba2d39c9cdfd5e40c41c5ccf4726d937fd192fc042b74bb56cc0651e28919e","tool":"lean"} diff --git a/examples/recursion/expected/verify/audit/LexLeanAudit.Afca4cff7cd9d7d680879d32a7e810d91.LexLeanRuntime.Portable.process.json b/examples/recursion/expected/verify/audit/LexLeanAudit.Afca4cff7cd9d7d680879d32a7e810d91.LexLeanRuntime.Portable.process.json deleted file mode 100644 index 2689d391b..000000000 --- a/examples/recursion/expected/verify/audit/LexLeanAudit.Afca4cff7cd9d7d680879d32a7e810d91.LexLeanRuntime.Portable.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Afca4cff7cd9d7d680879d32a7e810d91.LexLeanRuntime.Portable.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Afca4cff7cd9d7d680879d32a7e810d91.LexLeanRuntime.Portable","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanRuntime.Appendable' does not depend on any axioms\n'LexLeanRuntime.Appendable.append' does not depend on any axioms\n'LexLeanRuntime.Appendable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Appendable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Appendable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Appendable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Appendable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Appendable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Appendable.recOn' does not depend on any axioms\n'LexLeanRuntime.Decimal' does not depend on any axioms\n'LexLeanRuntime.Decimal.casesOn' does not depend on any axioms\n'LexLeanRuntime.Decimal.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Decimal.format' does not depend on any axioms\n'LexLeanRuntime.Decimal.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Decimal.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Decimal.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Decimal.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Decimal.parse' does not depend on any axioms\n'LexLeanRuntime.Decimal.recOn' does not depend on any axioms\n'LexLeanRuntime.Fixed' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitAnd' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitNot' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitOr' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitXor' does not depend on any axioms\n'LexLeanRuntime.Fixed.casesOn' does not depend on any axioms\n'LexLeanRuntime.Fixed.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Fixed.fromInt' does not depend on any axioms\n'LexLeanRuntime.Fixed.maximum' does not depend on any axioms\n'LexLeanRuntime.Fixed.minimum' does not depend on any axioms\n'LexLeanRuntime.Fixed.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Fixed.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Fixed.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Fixed.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Fixed.recOn' does not depend on any axioms\n'LexLeanRuntime.Fixed.shiftLeft' does not depend on any axioms\n'LexLeanRuntime.Fixed.shiftRight' does not depend on any axioms\n'LexLeanRuntime.Fixed.toToMathInt' does not depend on any axioms\n'LexLeanRuntime.Indexable' does not depend on any axioms\n'LexLeanRuntime.Indexable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Indexable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Indexable.index' does not depend on any axioms\n'LexLeanRuntime.Indexable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Indexable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Indexable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Indexable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Indexable.recOn' does not depend on any axioms\n'LexLeanRuntime.Lengthable' does not depend on any axioms\n'LexLeanRuntime.Lengthable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Lengthable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Lengthable.length' does not depend on any axioms\n'LexLeanRuntime.Lengthable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Lengthable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Lengthable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Lengthable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Lengthable.recOn' does not depend on any axioms\n'LexLeanRuntime.Quotient' does not depend on any axioms\n'LexLeanRuntime.Quotient.casesOn' does not depend on any axioms\n'LexLeanRuntime.Quotient.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Quotient.isZero' does not depend on any axioms\n'LexLeanRuntime.Quotient.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Quotient.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Quotient.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Quotient.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Quotient.quotient' does not depend on any axioms\n'LexLeanRuntime.Quotient.recOn' does not depend on any axioms\n'LexLeanRuntime.Quotient.remainder' does not depend on any axioms\n'LexLeanRuntime.Sliceable' does not depend on any axioms\n'LexLeanRuntime.Sliceable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Sliceable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Sliceable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Sliceable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Sliceable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Sliceable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Sliceable.recOn' does not depend on any axioms\n'LexLeanRuntime.Sliceable.slice' does not depend on any axioms\n'LexLeanRuntime.ToMathInt' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.casesOn' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.noConfusion' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.recOn' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.toInt' does not depend on any axioms\n'LexLeanRuntime.append' does not depend on any axioms\n'LexLeanRuntime.bitAnd' does not depend on any axioms\n'LexLeanRuntime.bitNot' does not depend on any axioms\n'LexLeanRuntime.bitOr' does not depend on any axioms\n'LexLeanRuntime.bitXor' does not depend on any axioms\n'LexLeanRuntime.checkedAdd' does not depend on any axioms\n'LexLeanRuntime.checkedAddInt64' does not depend on any axioms\n'LexLeanRuntime.checkedConvert' does not depend on any axioms\n'LexLeanRuntime.checkedFromInt' does not depend on any axioms\n'LexLeanRuntime.checkedMultiply' does not depend on any axioms\n'LexLeanRuntime.checkedMultiplyInt64' does not depend on any axioms\n'LexLeanRuntime.checkedMultiplyInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.checkedNegate' does not depend on any axioms\n'LexLeanRuntime.checkedNegateInt64' does not depend on any axioms\n'LexLeanRuntime.checkedQuotient' does not depend on any axioms\n'LexLeanRuntime.checkedQuotientInt64' does not depend on any axioms\n'LexLeanRuntime.checkedSubtract' does not depend on any axioms\n'LexLeanRuntime.checkedSubtractInt64' does not depend on any axioms\n'LexLeanRuntime.compareBytes' depends on axioms: [propext]\n'LexLeanRuntime.divideMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._f' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._sunfold' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.equal' does not depend on any axioms\n'LexLeanRuntime.formatDecimal' does not depend on any axioms\n'LexLeanRuntime.index' does not depend on any axioms\n'LexLeanRuntime.instAppendableByteArray' does not depend on any axioms\n'LexLeanRuntime.instAppendableList' does not depend on any axioms\n'LexLeanRuntime.instDecimalInt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instDecimalInt.match_1' does not depend on any axioms\n'LexLeanRuntime.instDecimalOfFixedOfToString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instFixedInt16' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt32' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt64' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt8' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt16' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt32' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt64' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt8' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instIndexableByteArrayUInt8' does not depend on any axioms\n'LexLeanRuntime.instIndexableList' does not depend on any axioms\n'LexLeanRuntime.instLengthableByteArray' does not depend on any axioms\n'LexLeanRuntime.instLengthableList' does not depend on any axioms\n'LexLeanRuntime.instLengthableString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instQuotientInt' does not depend on any axioms\n'LexLeanRuntime.instQuotientNat' does not depend on any axioms\n'LexLeanRuntime.instSliceableByteArray' does not depend on any axioms\n'LexLeanRuntime.instSliceableList' does not depend on any axioms\n'LexLeanRuntime.instToMathIntInt' does not depend on any axioms\n'LexLeanRuntime.join' depends on axioms: [propext]\n'LexLeanRuntime.length' does not depend on any axioms\n'LexLeanRuntime.listIndex' does not depend on any axioms\n'LexLeanRuntime.listIndex._f' does not depend on any axioms\n'LexLeanRuntime.listIndex._sunfold' does not depend on any axioms\n'LexLeanRuntime.listIndex._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.listIndex.match_1' does not depend on any axioms\n'LexLeanRuntime.magnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.multiply' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._f' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._sunfold' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.negate' does not depend on any axioms\n'LexLeanRuntime.parseDecimal' does not depend on any axioms\n'LexLeanRuntime.quotient' does not depend on any axioms\n'LexLeanRuntime.remainder' does not depend on any axioms\n'LexLeanRuntime.shiftLeft' does not depend on any axioms\n'LexLeanRuntime.shiftRight' does not depend on any axioms\n'LexLeanRuntime.signedMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.slice' does not depend on any axioms\n'LexLeanRuntime.splitExact' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.subtract' does not depend on any axioms\n'LexLeanRuntime.utf8Decode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.utf8Encode' does not depend on any axioms\n","stdout_sha256":"73fea1d9e9e9f0a2f1363b9f284eeeb9e434430e9fa910260b9526bad864641e","tool":"lean"} diff --git a/examples/recursion/expected/verify/audit/LexLeanAudit.Afca4cff7cd9d7d680879d32a7e810d91.Recursion.Main.process.json b/examples/recursion/expected/verify/audit/LexLeanAudit.Afca4cff7cd9d7d680879d32a7e810d91.Recursion.Main.process.json deleted file mode 100644 index 7eeaeb6e9..000000000 --- a/examples/recursion/expected/verify/audit/LexLeanAudit.Afca4cff7cd9d7d680879d32a7e810d91.Recursion.Main.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Afca4cff7cd9d7d680879d32a7e810d91.Recursion.Main.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Afca4cff7cd9d7d680879d32a7e810d91.Recursion.Main","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Recursion.Main.countdown' depends on axioms: [propext, Quot.sound]\n'Recursion.Main.countdown_decreases' depends on axioms: [propext, Quot.sound]\n'Recursion.Main.countdown_nine' depends on axioms: [propext, Quot.sound]\n'Recursion.Main.exprSize' does not depend on any axioms\n'Recursion.Main.expression_size' does not depend on any axioms\n'Recursion.Main.foldExpr' does not depend on any axioms\n'Recursion.Main.foldStatement' does not depend on any axioms\n'Recursion.Main.foldStatements' does not depend on any axioms\n'Recursion.Main.folding_sample' does not depend on any axioms\n'Recursion.Main.forestSize' does not depend on any axioms\n'Recursion.Main.isEven' does not depend on any axioms\n'Recursion.Main.isOdd' does not depend on any axioms\n'Recursion.Main.ping' depends on axioms: [propext, Quot.sound]\n'Recursion.Main.ping_seven' depends on axioms: [propext, Quot.sound]\n'Recursion.Main.ping_to_pong' depends on axioms: [propext, Quot.sound]\n'Recursion.Main.pong' depends on axioms: [propext, Quot.sound]\n'Recursion.Main.pong_to_ping' depends on axioms: [propext, Quot.sound]\n'Recursion.Main.prune' depends on axioms: [propext, Quot.sound]\n'Recursion.Main.prune_plus' depends on axioms: [propext, Quot.sound]\n'Recursion.Main.prune_result' depends on axioms: [propext, Quot.sound]\n'Recursion.Main.reassociate' depends on axioms: [propext, Quot.sound]\n'Recursion.Main.reassociate_literal' depends on axioms: [propext, Quot.sound]\n'Recursion.Main.reassociate_plus' depends on axioms: [propext, Quot.sound]\n'Recursion.Main.reassociate_weight' depends on axioms: [propext, Quot.sound]\n'Recursion.Main.reduce' depends on axioms: [propext, Quot.sound]\n'Recursion.Main.reduce_decreases' depends on axioms: [propext, Quot.sound]\n'Recursion.Main.reduce_twenty_three' depends on axioms: [propext, Quot.sound]\n'Recursion.Main.roseSize' does not depend on any axioms\n'Recursion.Main.rose_size' does not depend on any axioms\n'Recursion.Main.search' depends on axioms: [propext, Quot.sound]\n'Recursion.Main.search_decreases' depends on axioms: [propext, Quot.sound]\n'Recursion.Main.search_first' depends on axioms: [propext, Quot.sound]\n'Recursion.Main.statementSize' does not depend on any axioms\n'Recursion.Main.statementsSize' does not depend on any axioms\n'Recursion.Main.ten_is_even' does not depend on any axioms\n'Recursion.Main.weight' does not depend on any axioms\n","stdout_sha256":"f0c4e41ed308143236fb35a4287b2e6cf4fcc374313d2db6925bf81cee735602","tool":"lean"} diff --git a/examples/recursion/expected/verify/audit/LexLeanAudit.Afca4cff7cd9d7d680879d32a7e810d91.Recursion.Syntax.process.json b/examples/recursion/expected/verify/audit/LexLeanAudit.Afca4cff7cd9d7d680879d32a7e810d91.Recursion.Syntax.process.json deleted file mode 100644 index 3ae6ba1ad..000000000 --- a/examples/recursion/expected/verify/audit/LexLeanAudit.Afca4cff7cd9d7d680879d32a7e810d91.Recursion.Syntax.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Afca4cff7cd9d7d680879d32a7e810d91.Recursion.Syntax.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Afca4cff7cd9d7d680879d32a7e810d91.Recursion.Syntax","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'Recursion.Syntax.Expr' does not depend on any axioms\n'Recursion.Syntax.Rose' does not depend on any axioms\n'Recursion.Syntax.Stmt' does not depend on any axioms\n'Recursion.Syntax.Term' does not depend on any axioms\n","stdout_sha256":"59c34faf221d3617692f5b38aa55c8d27450f65f8daa542168e23f3a02fad8f8","tool":"lean"} diff --git a/examples/recursion/expected/verify/probe/LexLeanProbe.Pfca4cff7cd9d7d680879d32a7e810d91.lean b/examples/recursion/expected/verify/probe/LexLeanProbe.Pd478905735ed8adb7e0e1e617ced36db.lean similarity index 100% rename from examples/recursion/expected/verify/probe/LexLeanProbe.Pfca4cff7cd9d7d680879d32a7e810d91.lean rename to examples/recursion/expected/verify/probe/LexLeanProbe.Pd478905735ed8adb7e0e1e617ced36db.lean diff --git a/examples/recursion/expected/verify/probe/process.json b/examples/recursion/expected/verify/probe/process.json index a643b8000..b1b7a2a4e 100644 --- a/examples/recursion/expected/verify/probe/process.json +++ b/examples/recursion/expected/verify/probe/process.json @@ -1 +1 @@ -{"argv":["env","lean","$STAGING/probe/LexLeanProbe.Pfca4cff7cd9d7d680879d32a7e810d91.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanProbe.Pfca4cff7cd9d7d680879d32a7e810d91","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} +{"argv":["env","lean","$STAGING/probe/LexLeanProbe.Pd478905735ed8adb7e0e1e617ced36db.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanProbe.Pd478905735ed8adb7e0e1e617ced36db","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/recursion/lexlean.lock b/examples/recursion/lexlean.lock index 0d99d2501..0f2208fb3 100644 --- a/examples/recursion/lexlean.lock +++ b/examples/recursion/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "b8201330ef8609d8f53e24e2fa367697675b98d69ba844d6a75adffe84a88319" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/examples/recursive-data/expected/build/manifest.json b/examples/recursive-data/expected/build/manifest.json index c00b24e28..b91d11e82 100644 --- a/examples/recursive-data/expected/build/manifest.json +++ b/examples/recursive-data/expected/build/manifest.json @@ -1 +1 @@ -{"build_id":"eb4dd30a97e75979a8032532bdb5b65c812f19188cd012c9aee0e4e996244441","compiler":{"semantics_id":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","version":"0.3.0"},"inputs":[{"byte_length":2684,"kind":"lexicon","path":"embedded","sha256":"3bc0fb09d706ffa7d5a1363302ea87c049acc7c7dcafde63c62682620c11be9b"},{"byte_length":14885,"kind":"lexicon","path":"embedded","sha256":"e0db021e01b91d651c43921d66f6b0023c8efbf17cac2ec53192ce5305e4e1ac"},{"byte_length":36197,"kind":"lexicon","path":"embedded","sha256":"827317cae68c162f3a96c8a8de4e53ab348e7d3724fd2b834fa85ecde1a1b392"},{"byte_length":1597,"kind":"lock","path":"lexlean.lock","sha256":"0816c513dbc26209c0d3b2daffa0d8ee8aa9b3f618a09fa41afcadea63f53317"},{"byte_length":649,"kind":"project-config","path":"lexlean.toml","sha256":"80db82abec1dcb95e34e18635f4b202b28e8653cf44949647692cd16549adf5e"},{"byte_length":3465,"kind":"source","path":"src/Main.lex.tex","sha256":"b30ab3d9e9a24ce422d32f01d402437e2ca3777275093328e70cae556f5f1e2b"},{"byte_length":1569,"kind":"source","path":"src/Types.lex.tex","sha256":"9a5066adc4be3255299b80f0d5e548876ba12b325a8894c9ae09772c6b8c5d98"}],"language":"1.2","lean_toolchain":"leanprover/lean4:v4.32.1","modules":[{"lean_module":"RecursiveData.Main","module":"Main","source_path":"src/Main.lex.tex"},{"lean_module":"RecursiveData.Types","module":"Types","source_path":"src/Types.lex.tex"}],"outputs":[{"byte_length":11452,"kind":"coverage","path":"coverage/RecursiveData/Main.coverage.json","sha256":"381b7f0711c441b2073817ad599aefaa5251512d2c0c15163d4589f226a8c216"},{"byte_length":8709,"kind":"coverage","path":"coverage/RecursiveData/Types.coverage.json","sha256":"53bf5e13d86e57408b56f4072fb836a09a48c3baa3920151c680dd10ce79c2aa"},{"byte_length":2994,"kind":"lean","path":"modules/RecursiveData/Main.lean","sha256":"5b2e0441117ee0aae63c7a6b77693aadda58593c18ec31406c537c67f1b0ef57"},{"byte_length":1060,"kind":"lean","path":"modules/RecursiveData/Types.lean","sha256":"d2b39360b50d9c45e42f266146ba0eb32220d1f5a98bdc51d28ce384a21d508e"},{"byte_length":10602,"kind":"lexicon-closure","path":"lexicons/Main.closure.json","sha256":"727110f90daff26a2e5eb8069fcefecd5790c1264f5d6d4b2ef57db1c2bfb867"},{"byte_length":10603,"kind":"lexicon-closure","path":"lexicons/Types.closure.json","sha256":"340585fd2c4c6277fb7214262beee52046db9b165cb6290c4b160f1e4ddc118c"},{"byte_length":6160,"kind":"map","path":"maps/RecursiveData/Main.map.json","sha256":"dd635f79cee7df1f154c742528416f8debef5a321354ddf4c11433ea9eecd3f2"},{"byte_length":3571,"kind":"map","path":"maps/RecursiveData/Types.map.json","sha256":"6e83ed349ac6c275e17d84b591ebca36e64bfe96c350c1ee4b139d4c08608f12"},{"byte_length":5103,"kind":"tex","path":"modules/RecursiveData/Main.tex","sha256":"5b7381fbe633721cc513cd66a7b19d07138eb2fbad21b72f41b9a35917c4c5b9"},{"byte_length":2183,"kind":"tex","path":"modules/RecursiveData/Types.tex","sha256":"8ac0c2997937026e5b703458fc16cdef181c85aeb6f3d640a7ad89e4d4125736"}],"project":"recursive-data","selection":["Main","Types"],"semantic_id":"2c35ce90452a8eb92de5f1e3f4d239477d4a49c142aa5e130b45e5c073a84bbc","source_id":"a29a7cf6fb921623ad50bab99d796986a7c61a566498d459e2c735eaf790ac93","spec":"lexlean/build-manifest/1"} +{"build_id":"c771e297a3f40b7fed775dbf921fd2871fbfc783c632586bd17246da38d569e3","compiler":{"semantics_id":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","version":"0.3.0"},"inputs":[{"byte_length":2684,"kind":"lexicon","path":"embedded","sha256":"3bc0fb09d706ffa7d5a1363302ea87c049acc7c7dcafde63c62682620c11be9b"},{"byte_length":14885,"kind":"lexicon","path":"embedded","sha256":"e0db021e01b91d651c43921d66f6b0023c8efbf17cac2ec53192ce5305e4e1ac"},{"byte_length":36197,"kind":"lexicon","path":"embedded","sha256":"827317cae68c162f3a96c8a8de4e53ab348e7d3724fd2b834fa85ecde1a1b392"},{"byte_length":1597,"kind":"lock","path":"lexlean.lock","sha256":"66d7f4e6fe32482bbb94801dc8b9a667d2824900674b3fe2ab56caa28380c994"},{"byte_length":649,"kind":"project-config","path":"lexlean.toml","sha256":"80db82abec1dcb95e34e18635f4b202b28e8653cf44949647692cd16549adf5e"},{"byte_length":3465,"kind":"source","path":"src/Main.lex.tex","sha256":"b30ab3d9e9a24ce422d32f01d402437e2ca3777275093328e70cae556f5f1e2b"},{"byte_length":1569,"kind":"source","path":"src/Types.lex.tex","sha256":"9a5066adc4be3255299b80f0d5e548876ba12b325a8894c9ae09772c6b8c5d98"}],"language":"1.2","lean_toolchain":"leanprover/lean4:v4.32.1","modules":[{"lean_module":"RecursiveData.Main","module":"Main","source_path":"src/Main.lex.tex"},{"lean_module":"RecursiveData.Types","module":"Types","source_path":"src/Types.lex.tex"}],"outputs":[{"byte_length":11452,"kind":"coverage","path":"coverage/RecursiveData/Main.coverage.json","sha256":"381b7f0711c441b2073817ad599aefaa5251512d2c0c15163d4589f226a8c216"},{"byte_length":8709,"kind":"coverage","path":"coverage/RecursiveData/Types.coverage.json","sha256":"53bf5e13d86e57408b56f4072fb836a09a48c3baa3920151c680dd10ce79c2aa"},{"byte_length":2994,"kind":"lean","path":"modules/RecursiveData/Main.lean","sha256":"5b2e0441117ee0aae63c7a6b77693aadda58593c18ec31406c537c67f1b0ef57"},{"byte_length":1060,"kind":"lean","path":"modules/RecursiveData/Types.lean","sha256":"d2b39360b50d9c45e42f266146ba0eb32220d1f5a98bdc51d28ce384a21d508e"},{"byte_length":10602,"kind":"lexicon-closure","path":"lexicons/Main.closure.json","sha256":"727110f90daff26a2e5eb8069fcefecd5790c1264f5d6d4b2ef57db1c2bfb867"},{"byte_length":10603,"kind":"lexicon-closure","path":"lexicons/Types.closure.json","sha256":"340585fd2c4c6277fb7214262beee52046db9b165cb6290c4b160f1e4ddc118c"},{"byte_length":6160,"kind":"map","path":"maps/RecursiveData/Main.map.json","sha256":"04ea0bea73f4a2b4acbc05c155cbdccf4fd8f16d220ed7e69d1c0e51c88f94be"},{"byte_length":3571,"kind":"map","path":"maps/RecursiveData/Types.map.json","sha256":"ce701a6b91de053d7329a18cf1ae6c104f001dc02157e26c4734da3d37fda743"},{"byte_length":5103,"kind":"tex","path":"modules/RecursiveData/Main.tex","sha256":"5b7381fbe633721cc513cd66a7b19d07138eb2fbad21b72f41b9a35917c4c5b9"},{"byte_length":2183,"kind":"tex","path":"modules/RecursiveData/Types.tex","sha256":"8ac0c2997937026e5b703458fc16cdef181c85aeb6f3d640a7ad89e4d4125736"}],"project":"recursive-data","selection":["Main","Types"],"semantic_id":"6a8a70f31374da43548df5adbfe486007a9f58fbf8eb4ac9fbfca129bdcd3584","source_id":"ff1d26eb8dffe0a57d91999992fea9dda2753754a6e9e4e03af56805999996c7","spec":"lexlean/build-manifest/1"} diff --git a/examples/recursive-data/expected/build/maps/RecursiveData/Main.map.json b/examples/recursive-data/expected/build/maps/RecursiveData/Main.map.json index 4cbf26da1..0b1ce6ffa 100644 --- a/examples/recursive-data/expected/build/maps/RecursiveData/Main.map.json +++ b/examples/recursive-data/expected/build/maps/RecursiveData/Main.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/RecursiveData/Main.lean"},{"id":1,"kind":"tex","path":"modules/RecursiveData/Main.tex"}],"mappings":[{"artifact":0,"gen_end":235,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":3465,"src_start":0},{"artifact":0,"gen_end":447,"gen_start":235,"node":1,"role":"declaration","source":0,"src_end":385,"src_start":134},{"artifact":0,"gen_end":744,"gen_start":447,"node":2,"role":"declaration","source":0,"src_end":700,"src_start":387},{"artifact":0,"gen_end":979,"gen_start":744,"node":3,"role":"declaration","source":0,"src_end":944,"src_start":702},{"artifact":0,"gen_end":1057,"gen_start":979,"node":4,"role":"declaration","source":0,"src_end":1062,"src_start":946},{"artifact":0,"gen_end":1344,"gen_start":1057,"node":5,"role":"declaration","source":0,"src_end":1552,"src_start":1064},{"artifact":0,"gen_end":1492,"gen_start":1344,"node":6,"role":"declaration","source":0,"src_end":1707,"src_start":1554},{"artifact":0,"gen_end":1632,"gen_start":1492,"node":7,"role":"declaration","source":0,"src_end":1868,"src_start":1709},{"artifact":0,"gen_end":1874,"gen_start":1632,"node":8,"role":"declaration","source":0,"src_end":2121,"src_start":1870},{"artifact":0,"gen_end":2140,"gen_start":1874,"node":9,"role":"declaration","source":0,"src_end":2378,"src_start":2123},{"artifact":0,"gen_end":2359,"gen_start":2140,"node":10,"role":"declaration","source":0,"src_end":2587,"src_start":2380},{"artifact":0,"gen_end":2465,"gen_start":2359,"node":11,"role":"declaration","source":0,"src_end":2745,"src_start":2589},{"artifact":0,"gen_end":2567,"gen_start":2465,"node":12,"role":"declaration","source":0,"src_end":2873,"src_start":2747},{"artifact":0,"gen_end":2691,"gen_start":2567,"node":13,"role":"declaration","source":0,"src_end":3016,"src_start":2875},{"artifact":0,"gen_end":2768,"gen_start":2691,"node":14,"role":"declaration","source":0,"src_end":3143,"src_start":3018},{"artifact":0,"gen_end":2830,"gen_start":2768,"node":15,"role":"declaration","source":0,"src_end":3241,"src_start":3145},{"artifact":0,"gen_end":2970,"gen_start":2830,"node":16,"role":"declaration","source":0,"src_end":3429,"src_start":3243},{"artifact":0,"gen_end":2994,"gen_start":2970,"node":0,"role":"declaration","source":0,"src_end":3465,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":17,"role":"declaration","source":0,"src_end":3465,"src_start":0},{"artifact":1,"gen_end":543,"gen_start":134,"node":18,"role":"declaration","source":0,"src_end":385,"src_start":134},{"artifact":1,"gen_end":1036,"gen_start":543,"node":19,"role":"declaration","source":0,"src_end":700,"src_start":387},{"artifact":1,"gen_end":1417,"gen_start":1036,"node":20,"role":"declaration","source":0,"src_end":944,"src_start":702},{"artifact":1,"gen_end":1603,"gen_start":1417,"node":21,"role":"declaration","source":0,"src_end":1062,"src_start":946},{"artifact":1,"gen_end":1880,"gen_start":1603,"node":22,"role":"declaration","source":0,"src_end":1552,"src_start":1064},{"artifact":1,"gen_end":2211,"gen_start":1880,"node":23,"role":"declaration","source":0,"src_end":1707,"src_start":1554},{"artifact":1,"gen_end":2461,"gen_start":2211,"node":24,"role":"declaration","source":0,"src_end":1868,"src_start":1709},{"artifact":1,"gen_end":2890,"gen_start":2461,"node":25,"role":"declaration","source":0,"src_end":2121,"src_start":1870},{"artifact":1,"gen_end":3268,"gen_start":2890,"node":26,"role":"declaration","source":0,"src_end":2378,"src_start":2123},{"artifact":1,"gen_end":3670,"gen_start":3268,"node":27,"role":"declaration","source":0,"src_end":2587,"src_start":2380},{"artifact":1,"gen_end":3886,"gen_start":3670,"node":28,"role":"declaration","source":0,"src_end":2745,"src_start":2589},{"artifact":1,"gen_end":4170,"gen_start":3886,"node":29,"role":"declaration","source":0,"src_end":2873,"src_start":2747},{"artifact":1,"gen_end":4476,"gen_start":4170,"node":30,"role":"declaration","source":0,"src_end":3016,"src_start":2875},{"artifact":1,"gen_end":4664,"gen_start":4476,"node":31,"role":"declaration","source":0,"src_end":3143,"src_start":3018},{"artifact":1,"gen_end":4836,"gen_start":4664,"node":32,"role":"declaration","source":0,"src_end":3241,"src_start":3145},{"artifact":1,"gen_end":5088,"gen_start":4836,"node":33,"role":"declaration","source":0,"src_end":3429,"src_start":3243},{"artifact":1,"gen_end":5103,"gen_start":5088,"node":17,"role":"declaration","source":0,"src_end":3465,"src_start":0}],"module":"Main","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-latex-module"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"}],"semantic_id":"2c35ce90452a8eb92de5f1e3f4d239477d4a49c142aa5e130b45e5c073a84bbc","source_id":"a29a7cf6fb921623ad50bab99d796986a7c61a566498d459e2c735eaf790ac93","sources":[{"id":0,"kind":"file","path":"src/Main.lex.tex","sha256":"b30ab3d9e9a24ce422d32f01d402437e2ca3777275093328e70cae556f5f1e2b"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/RecursiveData/Main.lean"},{"id":1,"kind":"tex","path":"modules/RecursiveData/Main.tex"}],"mappings":[{"artifact":0,"gen_end":235,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":3465,"src_start":0},{"artifact":0,"gen_end":447,"gen_start":235,"node":1,"role":"declaration","source":0,"src_end":385,"src_start":134},{"artifact":0,"gen_end":744,"gen_start":447,"node":2,"role":"declaration","source":0,"src_end":700,"src_start":387},{"artifact":0,"gen_end":979,"gen_start":744,"node":3,"role":"declaration","source":0,"src_end":944,"src_start":702},{"artifact":0,"gen_end":1057,"gen_start":979,"node":4,"role":"declaration","source":0,"src_end":1062,"src_start":946},{"artifact":0,"gen_end":1344,"gen_start":1057,"node":5,"role":"declaration","source":0,"src_end":1552,"src_start":1064},{"artifact":0,"gen_end":1492,"gen_start":1344,"node":6,"role":"declaration","source":0,"src_end":1707,"src_start":1554},{"artifact":0,"gen_end":1632,"gen_start":1492,"node":7,"role":"declaration","source":0,"src_end":1868,"src_start":1709},{"artifact":0,"gen_end":1874,"gen_start":1632,"node":8,"role":"declaration","source":0,"src_end":2121,"src_start":1870},{"artifact":0,"gen_end":2140,"gen_start":1874,"node":9,"role":"declaration","source":0,"src_end":2378,"src_start":2123},{"artifact":0,"gen_end":2359,"gen_start":2140,"node":10,"role":"declaration","source":0,"src_end":2587,"src_start":2380},{"artifact":0,"gen_end":2465,"gen_start":2359,"node":11,"role":"declaration","source":0,"src_end":2745,"src_start":2589},{"artifact":0,"gen_end":2567,"gen_start":2465,"node":12,"role":"declaration","source":0,"src_end":2873,"src_start":2747},{"artifact":0,"gen_end":2691,"gen_start":2567,"node":13,"role":"declaration","source":0,"src_end":3016,"src_start":2875},{"artifact":0,"gen_end":2768,"gen_start":2691,"node":14,"role":"declaration","source":0,"src_end":3143,"src_start":3018},{"artifact":0,"gen_end":2830,"gen_start":2768,"node":15,"role":"declaration","source":0,"src_end":3241,"src_start":3145},{"artifact":0,"gen_end":2970,"gen_start":2830,"node":16,"role":"declaration","source":0,"src_end":3429,"src_start":3243},{"artifact":0,"gen_end":2994,"gen_start":2970,"node":0,"role":"declaration","source":0,"src_end":3465,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":17,"role":"declaration","source":0,"src_end":3465,"src_start":0},{"artifact":1,"gen_end":543,"gen_start":134,"node":18,"role":"declaration","source":0,"src_end":385,"src_start":134},{"artifact":1,"gen_end":1036,"gen_start":543,"node":19,"role":"declaration","source":0,"src_end":700,"src_start":387},{"artifact":1,"gen_end":1417,"gen_start":1036,"node":20,"role":"declaration","source":0,"src_end":944,"src_start":702},{"artifact":1,"gen_end":1603,"gen_start":1417,"node":21,"role":"declaration","source":0,"src_end":1062,"src_start":946},{"artifact":1,"gen_end":1880,"gen_start":1603,"node":22,"role":"declaration","source":0,"src_end":1552,"src_start":1064},{"artifact":1,"gen_end":2211,"gen_start":1880,"node":23,"role":"declaration","source":0,"src_end":1707,"src_start":1554},{"artifact":1,"gen_end":2461,"gen_start":2211,"node":24,"role":"declaration","source":0,"src_end":1868,"src_start":1709},{"artifact":1,"gen_end":2890,"gen_start":2461,"node":25,"role":"declaration","source":0,"src_end":2121,"src_start":1870},{"artifact":1,"gen_end":3268,"gen_start":2890,"node":26,"role":"declaration","source":0,"src_end":2378,"src_start":2123},{"artifact":1,"gen_end":3670,"gen_start":3268,"node":27,"role":"declaration","source":0,"src_end":2587,"src_start":2380},{"artifact":1,"gen_end":3886,"gen_start":3670,"node":28,"role":"declaration","source":0,"src_end":2745,"src_start":2589},{"artifact":1,"gen_end":4170,"gen_start":3886,"node":29,"role":"declaration","source":0,"src_end":2873,"src_start":2747},{"artifact":1,"gen_end":4476,"gen_start":4170,"node":30,"role":"declaration","source":0,"src_end":3016,"src_start":2875},{"artifact":1,"gen_end":4664,"gen_start":4476,"node":31,"role":"declaration","source":0,"src_end":3143,"src_start":3018},{"artifact":1,"gen_end":4836,"gen_start":4664,"node":32,"role":"declaration","source":0,"src_end":3241,"src_start":3145},{"artifact":1,"gen_end":5088,"gen_start":4836,"node":33,"role":"declaration","source":0,"src_end":3429,"src_start":3243},{"artifact":1,"gen_end":5103,"gen_start":5088,"node":17,"role":"declaration","source":0,"src_end":3465,"src_start":0}],"module":"Main","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-latex-module"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-declaration"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"}],"semantic_id":"6a8a70f31374da43548df5adbfe486007a9f58fbf8eb4ac9fbfca129bdcd3584","source_id":"ff1d26eb8dffe0a57d91999992fea9dda2753754a6e9e4e03af56805999996c7","sources":[{"id":0,"kind":"file","path":"src/Main.lex.tex","sha256":"b30ab3d9e9a24ce422d32f01d402437e2ca3777275093328e70cae556f5f1e2b"}],"spec":"lexlean/source-map/1"} diff --git a/examples/recursive-data/expected/build/maps/RecursiveData/Types.map.json b/examples/recursive-data/expected/build/maps/RecursiveData/Types.map.json index d29024b50..3a735af36 100644 --- a/examples/recursive-data/expected/build/maps/RecursiveData/Types.map.json +++ b/examples/recursive-data/expected/build/maps/RecursiveData/Types.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/RecursiveData/Types.lean"},{"id":1,"kind":"tex","path":"modules/RecursiveData/Types.tex"}],"mappings":[{"artifact":0,"gen_end":202,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":1569,"src_start":0},{"artifact":0,"gen_end":310,"gen_start":202,"node":1,"role":"declaration","source":0,"src_end":299,"src_start":114},{"artifact":0,"gen_end":398,"gen_start":310,"node":2,"role":"declaration","source":0,"src_end":441,"src_start":301},{"artifact":0,"gen_end":526,"gen_start":398,"node":3,"role":"declaration","source":0,"src_end":673,"src_start":443},{"artifact":0,"gen_end":629,"gen_start":526,"node":4,"role":"declaration","source":0,"src_end":857,"src_start":675},{"artifact":0,"gen_end":721,"gen_start":629,"node":5,"role":"declaration","source":0,"src_end":1014,"src_start":859},{"artifact":0,"gen_end":830,"gen_start":721,"node":6,"role":"declaration","source":0,"src_end":1208,"src_start":1016},{"artifact":0,"gen_end":942,"gen_start":830,"node":7,"role":"declaration","source":0,"src_end":1381,"src_start":1210},{"artifact":0,"gen_end":1035,"gen_start":942,"node":8,"role":"declaration","source":0,"src_end":1533,"src_start":1383},{"artifact":0,"gen_end":1060,"gen_start":1035,"node":0,"role":"declaration","source":0,"src_end":1569,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":9,"role":"declaration","source":0,"src_end":1569,"src_start":0},{"artifact":1,"gen_end":388,"gen_start":134,"node":10,"role":"declaration","source":0,"src_end":299,"src_start":114},{"artifact":1,"gen_end":582,"gen_start":388,"node":11,"role":"declaration","source":0,"src_end":441,"src_start":301},{"artifact":1,"gen_end":891,"gen_start":582,"node":12,"role":"declaration","source":0,"src_end":673,"src_start":443},{"artifact":1,"gen_end":1140,"gen_start":891,"node":13,"role":"declaration","source":0,"src_end":857,"src_start":675},{"artifact":1,"gen_end":1376,"gen_start":1140,"node":14,"role":"declaration","source":0,"src_end":1014,"src_start":859},{"artifact":1,"gen_end":1677,"gen_start":1376,"node":15,"role":"declaration","source":0,"src_end":1208,"src_start":1016},{"artifact":1,"gen_end":1930,"gen_start":1677,"node":16,"role":"declaration","source":0,"src_end":1381,"src_start":1210},{"artifact":1,"gen_end":2168,"gen_start":1930,"node":17,"role":"declaration","source":0,"src_end":1533,"src_start":1383},{"artifact":1,"gen_end":2183,"gen_start":2168,"node":9,"role":"declaration","source":0,"src_end":1569,"src_start":0}],"module":"Types","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-latex-module"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"}],"semantic_id":"2c35ce90452a8eb92de5f1e3f4d239477d4a49c142aa5e130b45e5c073a84bbc","source_id":"a29a7cf6fb921623ad50bab99d796986a7c61a566498d459e2c735eaf790ac93","sources":[{"id":0,"kind":"file","path":"src/Types.lex.tex","sha256":"9a5066adc4be3255299b80f0d5e548876ba12b325a8894c9ae09772c6b8c5d98"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/RecursiveData/Types.lean"},{"id":1,"kind":"tex","path":"modules/RecursiveData/Types.tex"}],"mappings":[{"artifact":0,"gen_end":202,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":1569,"src_start":0},{"artifact":0,"gen_end":310,"gen_start":202,"node":1,"role":"declaration","source":0,"src_end":299,"src_start":114},{"artifact":0,"gen_end":398,"gen_start":310,"node":2,"role":"declaration","source":0,"src_end":441,"src_start":301},{"artifact":0,"gen_end":526,"gen_start":398,"node":3,"role":"declaration","source":0,"src_end":673,"src_start":443},{"artifact":0,"gen_end":629,"gen_start":526,"node":4,"role":"declaration","source":0,"src_end":857,"src_start":675},{"artifact":0,"gen_end":721,"gen_start":629,"node":5,"role":"declaration","source":0,"src_end":1014,"src_start":859},{"artifact":0,"gen_end":830,"gen_start":721,"node":6,"role":"declaration","source":0,"src_end":1208,"src_start":1016},{"artifact":0,"gen_end":942,"gen_start":830,"node":7,"role":"declaration","source":0,"src_end":1381,"src_start":1210},{"artifact":0,"gen_end":1035,"gen_start":942,"node":8,"role":"declaration","source":0,"src_end":1533,"src_start":1383},{"artifact":0,"gen_end":1060,"gen_start":1035,"node":0,"role":"declaration","source":0,"src_end":1569,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":9,"role":"declaration","source":0,"src_end":1569,"src_start":0},{"artifact":1,"gen_end":388,"gen_start":134,"node":10,"role":"declaration","source":0,"src_end":299,"src_start":114},{"artifact":1,"gen_end":582,"gen_start":388,"node":11,"role":"declaration","source":0,"src_end":441,"src_start":301},{"artifact":1,"gen_end":891,"gen_start":582,"node":12,"role":"declaration","source":0,"src_end":673,"src_start":443},{"artifact":1,"gen_end":1140,"gen_start":891,"node":13,"role":"declaration","source":0,"src_end":857,"src_start":675},{"artifact":1,"gen_end":1376,"gen_start":1140,"node":14,"role":"declaration","source":0,"src_end":1014,"src_start":859},{"artifact":1,"gen_end":1677,"gen_start":1376,"node":15,"role":"declaration","source":0,"src_end":1208,"src_start":1016},{"artifact":1,"gen_end":1930,"gen_start":1677,"node":16,"role":"declaration","source":0,"src_end":1381,"src_start":1210},{"artifact":1,"gen_end":2168,"gen_start":1930,"node":17,"role":"declaration","source":0,"src_end":1533,"src_start":1383},{"artifact":1,"gen_end":2183,"gen_start":2168,"node":9,"role":"declaration","source":0,"src_end":1569,"src_start":0}],"module":"Types","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-latex-module"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"}],"semantic_id":"6a8a70f31374da43548df5adbfe486007a9f58fbf8eb4ac9fbfca129bdcd3584","source_id":"ff1d26eb8dffe0a57d91999992fea9dda2753754a6e9e4e03af56805999996c7","sources":[{"id":0,"kind":"file","path":"src/Types.lex.tex","sha256":"9a5066adc4be3255299b80f0d5e548876ba12b325a8894c9ae09772c6b8c5d98"}],"spec":"lexlean/source-map/1"} diff --git a/examples/recursive-data/expected/verify/audit/LexLeanAudit.A2c35ce90452a8eb92de5f1e3f4d23947.RecursiveData.Main.process.json b/examples/recursive-data/expected/verify/audit/LexLeanAudit.A2c35ce90452a8eb92de5f1e3f4d23947.RecursiveData.Main.process.json deleted file mode 100644 index d6d2b53ad..000000000 --- a/examples/recursive-data/expected/verify/audit/LexLeanAudit.A2c35ce90452a8eb92de5f1e3f4d23947.RecursiveData.Main.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A2c35ce90452a8eb92de5f1e3f4d23947.RecursiveData.Main.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A2c35ce90452a8eb92de5f1e3f4d23947.RecursiveData.Main","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'RecursiveData.Main.block_is_not_literal' does not depend on any axioms\n'RecursiveData.Main.isLiteral' does not depend on any axioms\n'RecursiveData.Main.located_row' does not depend on any axioms\n'RecursiveData.Main.mirror' does not depend on any axioms\n'RecursiveData.Main.mirror_involutive' depends on axioms: [propext]\n'RecursiveData.Main.outcomeOrZero' does not depend on any axioms\n'RecursiveData.Main.roseLabel' does not depend on any axioms\n'RecursiveData.Main.rose_label' does not depend on any axioms\n'RecursiveData.Main.sampleTree' does not depend on any axioms\n'RecursiveData.Main.sample_tree_size' does not depend on any axioms\n'RecursiveData.Main.success_value' does not depend on any axioms\n'RecursiveData.Main.sumPair' does not depend on any axioms\n'RecursiveData.Main.sum_pair' does not depend on any axioms\n'RecursiveData.Main.swap' does not depend on any axioms\n'RecursiveData.Main.swap_twice_first' does not depend on any axioms\n'RecursiveData.Main.treeSize' does not depend on any axioms\n","stdout_sha256":"3b07c25caeee31d0f08e31121ae52eadc6a742879b13dfe318cc5f6d24387205","tool":"lean"} diff --git a/examples/recursive-data/expected/verify/audit/LexLeanAudit.A2c35ce90452a8eb92de5f1e3f4d23947.RecursiveData.Types.process.json b/examples/recursive-data/expected/verify/audit/LexLeanAudit.A2c35ce90452a8eb92de5f1e3f4d23947.RecursiveData.Types.process.json deleted file mode 100644 index 7bf95729a..000000000 --- a/examples/recursive-data/expected/verify/audit/LexLeanAudit.A2c35ce90452a8eb92de5f1e3f4d23947.RecursiveData.Types.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A2c35ce90452a8eb92de5f1e3f4d23947.RecursiveData.Types.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A2c35ce90452a8eb92de5f1e3f4d23947.RecursiveData.Types","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'RecursiveData.Types.Branches' does not depend on any axioms\n'RecursiveData.Types.Expr' does not depend on any axioms\n'RecursiveData.Types.Located' does not depend on any axioms\n'RecursiveData.Types.Node' does not depend on any axioms\n'RecursiveData.Types.Outcome' does not depend on any axioms\n'RecursiveData.Types.Rose' does not depend on any axioms\n'RecursiveData.Types.Stmt' does not depend on any axioms\n'RecursiveData.Types.Tree' does not depend on any axioms\n","stdout_sha256":"0b199ad5cc4dded808f275b6dadb975abd7a0fb028eaeb1b25c6595c1af8f28b","tool":"lean"} diff --git a/examples/recursive-data/expected/verify/audit/LexLeanAudit.A2c35ce90452a8eb92de5f1e3f4d23947.RecursiveData.Main.lean b/examples/recursive-data/expected/verify/audit/LexLeanAudit.A6a8a70f31374da43548df5adbfe48600.RecursiveData.Main.lean similarity index 100% rename from examples/recursive-data/expected/verify/audit/LexLeanAudit.A2c35ce90452a8eb92de5f1e3f4d23947.RecursiveData.Main.lean rename to examples/recursive-data/expected/verify/audit/LexLeanAudit.A6a8a70f31374da43548df5adbfe48600.RecursiveData.Main.lean diff --git a/examples/recursive-data/expected/verify/audit/LexLeanAudit.A6a8a70f31374da43548df5adbfe48600.RecursiveData.Main.process.json b/examples/recursive-data/expected/verify/audit/LexLeanAudit.A6a8a70f31374da43548df5adbfe48600.RecursiveData.Main.process.json new file mode 100644 index 000000000..527017642 --- /dev/null +++ b/examples/recursive-data/expected/verify/audit/LexLeanAudit.A6a8a70f31374da43548df5adbfe48600.RecursiveData.Main.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A6a8a70f31374da43548df5adbfe48600.RecursiveData.Main.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A6a8a70f31374da43548df5adbfe48600.RecursiveData.Main","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'RecursiveData.Main.block_is_not_literal' does not depend on any axioms\n'RecursiveData.Main.isLiteral' does not depend on any axioms\n'RecursiveData.Main.located_row' does not depend on any axioms\n'RecursiveData.Main.mirror' does not depend on any axioms\n'RecursiveData.Main.mirror_involutive' depends on axioms: [propext]\n'RecursiveData.Main.outcomeOrZero' does not depend on any axioms\n'RecursiveData.Main.roseLabel' does not depend on any axioms\n'RecursiveData.Main.rose_label' does not depend on any axioms\n'RecursiveData.Main.sampleTree' does not depend on any axioms\n'RecursiveData.Main.sample_tree_size' does not depend on any axioms\n'RecursiveData.Main.success_value' does not depend on any axioms\n'RecursiveData.Main.sumPair' does not depend on any axioms\n'RecursiveData.Main.sum_pair' does not depend on any axioms\n'RecursiveData.Main.swap' does not depend on any axioms\n'RecursiveData.Main.swap_twice_first' does not depend on any axioms\n'RecursiveData.Main.treeSize' does not depend on any axioms\n","stdout_sha256":"3b07c25caeee31d0f08e31121ae52eadc6a742879b13dfe318cc5f6d24387205","tool":"lean"} diff --git a/examples/recursive-data/expected/verify/audit/LexLeanAudit.A2c35ce90452a8eb92de5f1e3f4d23947.RecursiveData.Types.lean b/examples/recursive-data/expected/verify/audit/LexLeanAudit.A6a8a70f31374da43548df5adbfe48600.RecursiveData.Types.lean similarity index 100% rename from examples/recursive-data/expected/verify/audit/LexLeanAudit.A2c35ce90452a8eb92de5f1e3f4d23947.RecursiveData.Types.lean rename to examples/recursive-data/expected/verify/audit/LexLeanAudit.A6a8a70f31374da43548df5adbfe48600.RecursiveData.Types.lean diff --git a/examples/recursive-data/expected/verify/audit/LexLeanAudit.A6a8a70f31374da43548df5adbfe48600.RecursiveData.Types.process.json b/examples/recursive-data/expected/verify/audit/LexLeanAudit.A6a8a70f31374da43548df5adbfe48600.RecursiveData.Types.process.json new file mode 100644 index 000000000..922405163 --- /dev/null +++ b/examples/recursive-data/expected/verify/audit/LexLeanAudit.A6a8a70f31374da43548df5adbfe48600.RecursiveData.Types.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A6a8a70f31374da43548df5adbfe48600.RecursiveData.Types.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A6a8a70f31374da43548df5adbfe48600.RecursiveData.Types","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'RecursiveData.Types.Branches' does not depend on any axioms\n'RecursiveData.Types.Expr' does not depend on any axioms\n'RecursiveData.Types.Located' does not depend on any axioms\n'RecursiveData.Types.Node' does not depend on any axioms\n'RecursiveData.Types.Outcome' does not depend on any axioms\n'RecursiveData.Types.Rose' does not depend on any axioms\n'RecursiveData.Types.Stmt' does not depend on any axioms\n'RecursiveData.Types.Tree' does not depend on any axioms\n","stdout_sha256":"0b199ad5cc4dded808f275b6dadb975abd7a0fb028eaeb1b25c6595c1af8f28b","tool":"lean"} diff --git a/examples/recursive-data/expected/verify/probe/LexLeanProbe.P2c35ce90452a8eb92de5f1e3f4d23947.lean b/examples/recursive-data/expected/verify/probe/LexLeanProbe.P6a8a70f31374da43548df5adbfe48600.lean similarity index 100% rename from examples/recursive-data/expected/verify/probe/LexLeanProbe.P2c35ce90452a8eb92de5f1e3f4d23947.lean rename to examples/recursive-data/expected/verify/probe/LexLeanProbe.P6a8a70f31374da43548df5adbfe48600.lean diff --git a/examples/recursive-data/expected/verify/probe/process.json b/examples/recursive-data/expected/verify/probe/process.json index e7b38aed1..d7ab78a74 100644 --- a/examples/recursive-data/expected/verify/probe/process.json +++ b/examples/recursive-data/expected/verify/probe/process.json @@ -1 +1 @@ -{"argv":["env","lean","$STAGING/probe/LexLeanProbe.P2c35ce90452a8eb92de5f1e3f4d23947.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanProbe.P2c35ce90452a8eb92de5f1e3f4d23947","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} +{"argv":["env","lean","$STAGING/probe/LexLeanProbe.P6a8a70f31374da43548df5adbfe48600.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanProbe.P6a8a70f31374da43548df5adbfe48600","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/examples/recursive-data/lexlean.lock b/examples/recursive-data/lexlean.lock index 6d8c47119..1522b955f 100644 --- a/examples/recursive-data/lexlean.lock +++ b/examples/recursive-data/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "80db82abec1dcb95e34e18635f4b202b28e8653cf44949647692cd16549adf5e" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/features/suites/packages.feature b/features/suites/packages.feature new file mode 100644 index 000000000..d89aa6e73 --- /dev/null +++ b/features/suites/packages.feature @@ -0,0 +1,31 @@ +Feature: packages + + Source packages: a project imports the modules of a locked, content-addressed package of its workspace (§10.5). + + @PK-01 @build + Scenario: A language-1.2 project that declares a source package by its identifier, version, kind `path`, and the member directory a `lexlean-workspace.toml` lists locks it by the tree digest of its manifest and source files, its manifest digest, its version, its module prefix, and its own packages, and the configuration and the lock read back to the bytes written; a project without a source package keeps its bytes, and a package of another kind, a source package in another language, a changed byte or version (LLC0105), an undeclared package (LLC0106), a module prefix claimed twice (LLC0107), a project or a package outside the workspace (LLC0108), a path that escapes it, and a symlink (LLS8001) are each refused with the named code. + Given a workspace of an importing project and a package, and the lock that pins the package + When the configuration and the lock are written, read back, and locked again, and the package, the workspace, and the configuration are each edited in the six ways the statement names + Then the bytes read back equal the bytes written, and a project without a source package locks to the bytes it locked to before + And each edit is refused with the code the statement names, naming the package and both digests for a changed byte or version + + @PK-02 @build + Scenario: A module of a project imports only modules of its own project and modules of the packages the project declares, and a module of a package only modules of itself and of the packages its own manifest declares: a package module is a module of the importing project under its own module prefix, a module of a package the project does not declare fails with LLR3009, and an import cycle through a package fails with LLR3003. + Given an importing project, a package, and a package that imports a second package + When the project is checked, then with the import of the second package moved to the project, then with a module importing a package it does not declare, then with a cycle through the package + Then the closure links, and each package module is a module of the project under the package's module prefix + And the undeclared import fails with LLR3009 and the cycle with LLR3003 + + @PK-03 @build + Scenario: An importing project builds and verifies under the pinned Lean offline, and its package modules are generated, elaborated, replayed with `leanchecker`, and audited for their exact axioms under the package's module prefix with the package as their origin in the records; the source ID of the project changes with the pins, and no file of the package is written by `fmt`, `build`, or `verify`. + Given an importing project and a package beside it in a workspace + When the project is formatted, built, and verified with the pinned Lean, and again with one byte of the package changed + Then the verification records name the package modules under its prefix with the package as their origin, the exact axioms of each declaration are audited, and no file of the package changed + And the changed byte is refused before any Lean process runs + + @PK-04 @build + Scenario: A production root of the importing project whose closure reaches a definition of a package certifies and exports over that closure as it does for a definition of its own module, the `production:` roots of a package are not roots of the importing project, and the importer publishes no certificate of the package's own. + Given an importing project with a production root that applies a definition of a package whose own modules declare production roots + When the project is checked, built, and its root is certified and exported with the pinned Lean + Then the root's closure includes the package definition and the export is the package of that closure + And no root of the package is a root of the importing project and the export holds no certificate of the package's own roots diff --git a/model/errors.toml b/model/errors.toml index 0d9f6d202..ee9b5122e 100644 --- a/model/errors.toml +++ b/model/errors.toml @@ -98,6 +98,34 @@ exit = 2 title = "Duplicate module or case-folded path collision" statement = "Duplicate module or case-folded path collision." +[[error]] +code = "LLC0105" +class = "cli-configuration" +exit = 2 +title = "Source package is not the package the lock pins" +statement = "A source package's version, source, module prefix, manifest digest, tree digest, or declared packages differ from the lock's row, naming the package and both digests." + +[[error]] +code = "LLC0106" +class = "cli-configuration" +exit = 2 +title = "Source package undeclared or declared with two sources" +statement = "The lock pins a source package the project does not declare, or one identifier names two sources in the closure." + +[[error]] +code = "LLC0107" +class = "cli-configuration" +exit = 2 +title = "Module prefix claimed by two sources" +statement = "A module prefix is claimed by the project and a source package, or by two source packages, equal or one beneath the other, or an import names a module both the project and a package provide." + +[[error]] +code = "LLC0108" +class = "cli-configuration" +exit = 2 +title = "Source package outside the workspace rule" +statement = "A project that declares a source package is outside any workspace or is not a member of it, a package is not a member of the workspace, or the workspace file or a package is malformed." + [[error]] code = "LLC0201" class = "cli-configuration" @@ -294,6 +322,13 @@ exit = 1 title = "Model artifact bytes violate the declared schema, type, or role" statement = "Model artifact bytes violate the declared schema, type, or role." +[[error]] +code = "LLR3009" +class = "language" +exit = 1 +title = "Import of a module of a source package the importing scope does not declare" +statement = "A module imports a module of a source package that the project, or the package the module belongs to, does not declare." + [[error]] code = "LLS8001" class = "security-limit" diff --git a/model/ids.toml b/model/ids.toml index 67f8c8810..658e7c96c 100644 --- a/model/ids.toml +++ b/model/ids.toml @@ -2372,6 +2372,30 @@ level = "build" suite = "bootstrap" statement = "The axiom-output parser of SPEC.md §22.5 is language-1.2 source in the `bootstrap/` project: `parseAuditOutput` and the closed Lean-name check `isClosedLeanName` are production roots eligible for `rust-std` with exactly their declared effects; the parser's lowered program under the calculus evaluator agrees with the Rust parser `verify::axiom` on the result, the rejection message, and the attributed declaration for every committed golden vector (accepted, accepted-wrapped, and rejected); both roots' rendered `rust-std` packages under the pinned rustc agree with the Rust oracle on a large seeded corpus of generated, wrapped, and mutated audit outputs with no disagreement; a planted defect in the source is detected; and the certified packages the production export publishes for the project are the committed ones." +[[id]] +id = "PK-01" +level = "build" +suite = "packages" +statement = "A language-1.2 project that declares a source package by its identifier, version, kind `path`, and the member directory a `lexlean-workspace.toml` lists locks it by the tree digest of its manifest and source files, its manifest digest, its version, its module prefix, and its own packages, and the configuration and the lock read back to the bytes written; a project without a source package keeps its bytes, and a package of another kind, a source package in another language, a changed byte or version (LLC0105), an undeclared package (LLC0106), a module prefix claimed twice (LLC0107), a project or a package outside the workspace (LLC0108), a path that escapes it, and a symlink (LLS8001) are each refused with the named code." + +[[id]] +id = "PK-02" +level = "build" +suite = "packages" +statement = "A module of a project imports only modules of its own project and modules of the packages the project declares, and a module of a package only modules of itself and of the packages its own manifest declares: a package module is a module of the importing project under its own module prefix, a module of a package the project does not declare fails with LLR3009, and an import cycle through a package fails with LLR3003." + +[[id]] +id = "PK-03" +level = "build" +suite = "packages" +statement = "An importing project builds and verifies under the pinned Lean offline, and its package modules are generated, elaborated, replayed with `leanchecker`, and audited for their exact axioms under the package's module prefix with the package as their origin in the records; the source ID of the project changes with the pins, and no file of the package is written by `fmt`, `build`, or `verify`." + +[[id]] +id = "PK-04" +level = "build" +suite = "packages" +statement = "A production root of the importing project whose closure reaches a definition of a package certifies and exports over that closure as it does for a definition of its own module, the `production:` roots of a package are not roots of the importing project, and the importer publishes no certificate of the package's own." + [[id]] id = "LM-01" level = "build" diff --git a/schemas/attestation-v2.schema.json b/schemas/attestation-v2.schema.json index ae35f67b7..90622e1bb 100644 --- a/schemas/attestation-v2.schema.json +++ b/schemas/attestation-v2.schema.json @@ -1 +1 @@ -{"$id":"https://github.com/afflom/lexlean/schemas/attestation-v2.schema.json","$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"attestation_id":{"pattern":"^[0-9a-f]{64}$","type":"string"},"build_id":{"pattern":"^[0-9a-f]{64}$","type":"string"},"build_manifest":{"additionalProperties":false,"properties":{"byte_length":{"minimum":0,"type":"integer"},"sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"}},"required":["byte_length","sha256"],"type":"object"},"compiler_input":{"additionalProperties":false,"properties":{"byte_length":{"minimum":1,"type":"integer"},"sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"}},"required":["byte_length","sha256"],"type":"object"},"declarations":{"items":{"additionalProperties":false,"properties":{"name":{"minLength":1,"type":"string"},"observed":{"items":{"minLength":1,"type":"string"},"type":"array"},"policy":{"additionalProperties":false,"properties":{"axioms":{"items":{"minLength":1,"type":"string"},"type":"array"},"kind":{"enum":["none","allow","exact"]}},"required":["axioms","kind"],"type":"object"},"result":{"const":"ok"}},"required":["name","observed","policy","result"],"type":"object"},"type":"array"},"host":{"additionalProperties":false,"properties":{"arch":{"minLength":1,"type":"string"},"os":{"minLength":1,"type":"string"}},"required":["arch","os"],"type":"object"},"lake_workspace":{"items":{"additionalProperties":false,"properties":{"path":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"}},"required":["path","sha256"],"type":"object"},"type":"array"},"lexlean":{"additionalProperties":false,"properties":{"compiler_semantics":{"pattern":"^[0-9a-f]{64}$","type":"string"},"executable_sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"},"version":{"minLength":1,"type":"string"}},"required":["compiler_semantics","executable_sha256","version"],"type":"object"},"oleans":{"items":{"additionalProperties":false,"properties":{"byte_length":{"minimum":0,"type":"integer"},"module":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"}},"required":["byte_length","module","sha256"],"type":"object"},"type":"array"},"pdf":{"items":{"additionalProperties":false,"properties":{"byte_length":{"minimum":0,"type":"integer"},"compile":{"additionalProperties":false,"properties":{"argv":{"items":{"type":"string"},"type":"array"},"executable_sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"},"exit_code":{"type":"integer"},"module":{"minLength":1,"type":"string"},"stderr":{"type":"string"},"stderr_sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"},"stdout":{"type":"string"},"stdout_sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"},"tool":{"enum":["lean","lake","leanchecker","pdf"]}},"required":["argv","executable_sha256","exit_code","stderr","stderr_sha256","stdout","stdout_sha256","tool"],"type":"object"},"module":{"minLength":1,"type":"string"},"pdf_sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"},"recipe_id":{"pattern":"^[0-9a-f]{64}$","type":"string"},"version":{"additionalProperties":false,"properties":{"argv":{"items":{"type":"string"},"type":"array"},"executable_sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"},"exit_code":{"type":"integer"},"module":{"minLength":1,"type":"string"},"stderr":{"type":"string"},"stderr_sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"},"stdout":{"type":"string"},"stdout_sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"},"tool":{"enum":["lean","lake","leanchecker","pdf"]}},"required":["argv","executable_sha256","exit_code","stderr","stderr_sha256","stdout","stdout_sha256","tool"],"type":"object"}},"required":["byte_length","compile","module","pdf_sha256","recipe_id","version"],"type":"object"},"type":"array"},"preservation":{"additionalProperties":false,"properties":{"byte_length":{"minimum":1,"type":"integer"},"sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"}},"required":["byte_length","sha256"],"type":"object"},"processes":{"items":{"additionalProperties":false,"properties":{"argv":{"items":{"type":"string"},"type":"array"},"executable_sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"},"exit_code":{"type":"integer"},"module":{"minLength":1,"type":"string"},"stderr":{"type":"string"},"stderr_sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"},"stdout":{"type":"string"},"stdout_sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"},"tool":{"enum":["lean","lake","leanchecker","pdf"]}},"required":["argv","executable_sha256","exit_code","stderr","stderr_sha256","stdout","stdout_sha256","tool"],"type":"object"},"type":"array"},"semantic_id":{"pattern":"^[0-9a-f]{64}$","type":"string"},"source_id":{"pattern":"^[0-9a-f]{64}$","type":"string"},"spec":{"const":"lexlean/attestation/2"},"status":{"const":"verified"},"toolchain":{"additionalProperties":false,"properties":{"lake":{"additionalProperties":false,"properties":{"executable_sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"},"version_output":{"type":"string"}},"required":["executable_sha256","version_output"],"type":"object"},"lean":{"additionalProperties":false,"properties":{"executable_sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"},"version_output":{"type":"string"}},"required":["executable_sha256","version_output"],"type":"object"},"leanchecker":{"additionalProperties":false,"properties":{"executable_sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"},"version_output":{"type":"string"}},"required":["executable_sha256","version_output"],"type":"object"}},"required":["lake","lean","leanchecker"],"type":"object"}},"required":["attestation_id","build_id","build_manifest","declarations","host","lake_workspace","lexlean","oleans","processes","semantic_id","source_id","spec","status","toolchain"],"title":"LexLean language-1.2 verification attestation (SPEC.md §22.9)","type":"object"} +{"$id":"https://github.com/afflom/lexlean/schemas/attestation-v2.schema.json","$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"attestation_id":{"pattern":"^[0-9a-f]{64}$","type":"string"},"build_id":{"pattern":"^[0-9a-f]{64}$","type":"string"},"build_manifest":{"additionalProperties":false,"properties":{"byte_length":{"minimum":0,"type":"integer"},"sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"}},"required":["byte_length","sha256"],"type":"object"},"compiler_input":{"additionalProperties":false,"properties":{"byte_length":{"minimum":1,"type":"integer"},"sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"}},"required":["byte_length","sha256"],"type":"object"},"declarations":{"items":{"additionalProperties":false,"properties":{"name":{"minLength":1,"type":"string"},"observed":{"items":{"minLength":1,"type":"string"},"type":"array"},"policy":{"additionalProperties":false,"properties":{"axioms":{"items":{"minLength":1,"type":"string"},"type":"array"},"kind":{"enum":["none","allow","exact"]}},"required":["axioms","kind"],"type":"object"},"result":{"const":"ok"}},"required":["name","observed","policy","result"],"type":"object"},"type":"array"},"host":{"additionalProperties":false,"properties":{"arch":{"minLength":1,"type":"string"},"os":{"minLength":1,"type":"string"}},"required":["arch","os"],"type":"object"},"lake_workspace":{"items":{"additionalProperties":false,"properties":{"path":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"}},"required":["path","sha256"],"type":"object"},"type":"array"},"lexlean":{"additionalProperties":false,"properties":{"compiler_semantics":{"pattern":"^[0-9a-f]{64}$","type":"string"},"executable_sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"},"version":{"minLength":1,"type":"string"}},"required":["compiler_semantics","executable_sha256","version"],"type":"object"},"oleans":{"items":{"additionalProperties":false,"properties":{"byte_length":{"minimum":0,"type":"integer"},"module":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"}},"required":["byte_length","module","sha256"],"type":"object"},"type":"array"},"origins":{"additionalProperties":{"minLength":1,"type":"string"},"type":"object"},"pdf":{"items":{"additionalProperties":false,"properties":{"byte_length":{"minimum":0,"type":"integer"},"compile":{"additionalProperties":false,"properties":{"argv":{"items":{"type":"string"},"type":"array"},"executable_sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"},"exit_code":{"type":"integer"},"module":{"minLength":1,"type":"string"},"stderr":{"type":"string"},"stderr_sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"},"stdout":{"type":"string"},"stdout_sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"},"tool":{"enum":["lean","lake","leanchecker","pdf"]}},"required":["argv","executable_sha256","exit_code","stderr","stderr_sha256","stdout","stdout_sha256","tool"],"type":"object"},"module":{"minLength":1,"type":"string"},"pdf_sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"},"recipe_id":{"pattern":"^[0-9a-f]{64}$","type":"string"},"version":{"additionalProperties":false,"properties":{"argv":{"items":{"type":"string"},"type":"array"},"executable_sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"},"exit_code":{"type":"integer"},"module":{"minLength":1,"type":"string"},"stderr":{"type":"string"},"stderr_sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"},"stdout":{"type":"string"},"stdout_sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"},"tool":{"enum":["lean","lake","leanchecker","pdf"]}},"required":["argv","executable_sha256","exit_code","stderr","stderr_sha256","stdout","stdout_sha256","tool"],"type":"object"}},"required":["byte_length","compile","module","pdf_sha256","recipe_id","version"],"type":"object"},"type":"array"},"preservation":{"additionalProperties":false,"properties":{"byte_length":{"minimum":1,"type":"integer"},"sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"}},"required":["byte_length","sha256"],"type":"object"},"processes":{"items":{"additionalProperties":false,"properties":{"argv":{"items":{"type":"string"},"type":"array"},"executable_sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"},"exit_code":{"type":"integer"},"module":{"minLength":1,"type":"string"},"stderr":{"type":"string"},"stderr_sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"},"stdout":{"type":"string"},"stdout_sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"},"tool":{"enum":["lean","lake","leanchecker","pdf"]}},"required":["argv","executable_sha256","exit_code","stderr","stderr_sha256","stdout","stdout_sha256","tool"],"type":"object"},"type":"array"},"semantic_id":{"pattern":"^[0-9a-f]{64}$","type":"string"},"source_id":{"pattern":"^[0-9a-f]{64}$","type":"string"},"spec":{"const":"lexlean/attestation/2"},"status":{"const":"verified"},"toolchain":{"additionalProperties":false,"properties":{"lake":{"additionalProperties":false,"properties":{"executable_sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"},"version_output":{"type":"string"}},"required":["executable_sha256","version_output"],"type":"object"},"lean":{"additionalProperties":false,"properties":{"executable_sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"},"version_output":{"type":"string"}},"required":["executable_sha256","version_output"],"type":"object"},"leanchecker":{"additionalProperties":false,"properties":{"executable_sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"},"version_output":{"type":"string"}},"required":["executable_sha256","version_output"],"type":"object"}},"required":["lake","lean","leanchecker"],"type":"object"}},"required":["attestation_id","build_id","build_manifest","declarations","host","lake_workspace","lexlean","oleans","processes","semantic_id","source_id","spec","status","toolchain"],"title":"LexLean language-1.2 verification attestation (SPEC.md §22.9)","type":"object"} diff --git a/schemas/build-manifest-v2.schema.json b/schemas/build-manifest-v2.schema.json index 60230cca0..330c54312 100644 --- a/schemas/build-manifest-v2.schema.json +++ b/schemas/build-manifest-v2.schema.json @@ -1 +1 @@ -{"$id":"https://github.com/afflom/lexlean/schemas/build-manifest-v2.schema.json","$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"build_id":{"pattern":"^[0-9a-f]{64}$","type":"string"},"compiler":{"additionalProperties":false,"properties":{"semantics_id":{"pattern":"^[0-9a-f]{64}$","type":"string"},"version":{"minLength":1,"type":"string"}},"required":["semantics_id","version"],"type":"object"},"inputs":{"items":{"additionalProperties":false,"properties":{"byte_length":{"minimum":0,"type":"integer"},"kind":{"minLength":1,"type":"string"},"path":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"}},"required":["byte_length","kind","path","sha256"],"type":"object"},"type":"array"},"language":{"enum":["1.1","1.2"]},"lean_toolchain":{"const":"leanprover/lean4:v4.32.1"},"modules":{"items":{"additionalProperties":false,"properties":{"lean_module":{"minLength":1,"type":"string"},"module":{"minLength":1,"type":"string"},"source_path":{"minLength":1,"type":"string"}},"required":["lean_module","module","source_path"],"type":"object"},"type":"array"},"outputs":{"items":{"additionalProperties":false,"properties":{"byte_length":{"minimum":0,"type":"integer"},"kind":{"minLength":1,"type":"string"},"path":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"}},"required":["byte_length","kind","path","sha256"],"type":"object"},"type":"array"},"project":{"minLength":1,"type":"string"},"selection":{"items":{"minLength":1,"type":"string"},"type":"array"},"semantic_id":{"pattern":"^[0-9a-f]{64}$","type":"string"},"source_id":{"pattern":"^[0-9a-f]{64}$","type":"string"},"spec":{"const":"lexlean/build-manifest/1"}},"required":["build_id","compiler","inputs","language","lean_toolchain","modules","outputs","project","selection","semantic_id","source_id","spec"],"title":"LexLean build manifest for languages 1.1 and 1.2 (SPEC.md §21.6)","type":"object"} +{"$id":"https://github.com/afflom/lexlean/schemas/build-manifest-v2.schema.json","$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"build_id":{"pattern":"^[0-9a-f]{64}$","type":"string"},"compiler":{"additionalProperties":false,"properties":{"semantics_id":{"pattern":"^[0-9a-f]{64}$","type":"string"},"version":{"minLength":1,"type":"string"}},"required":["semantics_id","version"],"type":"object"},"inputs":{"items":{"additionalProperties":false,"properties":{"byte_length":{"minimum":0,"type":"integer"},"kind":{"minLength":1,"type":"string"},"path":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"}},"required":["byte_length","kind","path","sha256"],"type":"object"},"type":"array"},"language":{"enum":["1.1","1.2"]},"lean_toolchain":{"const":"leanprover/lean4:v4.32.1"},"modules":{"items":{"additionalProperties":false,"properties":{"lean_module":{"minLength":1,"type":"string"},"module":{"minLength":1,"type":"string"},"origin":{"minLength":1,"type":"string"},"source_path":{"minLength":1,"type":"string"}},"required":["lean_module","module","source_path"],"type":"object"},"type":"array"},"outputs":{"items":{"additionalProperties":false,"properties":{"byte_length":{"minimum":0,"type":"integer"},"kind":{"minLength":1,"type":"string"},"path":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"}},"required":["byte_length","kind","path","sha256"],"type":"object"},"type":"array"},"project":{"minLength":1,"type":"string"},"selection":{"items":{"minLength":1,"type":"string"},"type":"array"},"semantic_id":{"pattern":"^[0-9a-f]{64}$","type":"string"},"source_id":{"pattern":"^[0-9a-f]{64}$","type":"string"},"spec":{"const":"lexlean/build-manifest/1"}},"required":["build_id","compiler","inputs","language","lean_toolchain","modules","outputs","project","selection","semantic_id","source_id","spec"],"title":"LexLean build manifest for languages 1.1 and 1.2 (SPEC.md §21.6)","type":"object"} diff --git a/schemas/lock-v2.schema.json b/schemas/lock-v2.schema.json index 863b87df4..3c708f7e2 100644 --- a/schemas/lock-v2.schema.json +++ b/schemas/lock-v2.schema.json @@ -1 +1 @@ -{"$id":"https://github.com/afflom/lexlean/schemas/lock-v2.schema.json","$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"compiler_semantics":{"pattern":"^[0-9a-f]{64}$","type":"string"},"language":{"const":"1.2"},"lean_toolchain":{"const":"leanprover/lean4:v4.32.1"},"package":{"items":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"imports":{"items":{"minLength":1,"type":"string"},"type":"array"},"kind":{"enum":["builtin","path","git"]},"manifest_sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"},"revision":{"minLength":1,"type":"string"},"source":{"minLength":1,"type":"string"},"tree_sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"},"version":{"minLength":1,"type":"string"}},"required":["id","imports","kind","manifest_sha256","revision","source","tree_sha256","version"],"type":"object"},"type":"array"},"pdf":{"additionalProperties":false,"properties":{"compile_argv":{"items":{"type":"string"},"type":"array"},"output":{"minLength":1,"type":"string"},"program":{"minLength":1,"type":"string"},"program_sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"},"resource":{"items":{"additionalProperties":false,"properties":{"path":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"}},"required":["path","sha256"],"type":"object"},"type":"array"},"version_argv":{"items":{"type":"string"},"type":"array"},"version_stdout_sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"}},"required":["compile_argv","output","program","program_sha256","resource","version_argv","version_stdout_sha256"],"type":"object"},"project_config_sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"},"spec":{"const":"lexlean/lock/2"},"workspace_file":{"items":{"additionalProperties":false,"properties":{"path":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"}},"required":["path","sha256"],"type":"object"},"type":"array"}},"required":["compiler_semantics","language","lean_toolchain","package","project_config_sha256","spec","workspace_file"],"title":"LexLean lock file lexlean.lock v2 (SPEC.md §11)","type":"object"} +{"$id":"https://github.com/afflom/lexlean/schemas/lock-v2.schema.json","$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"compiler_semantics":{"pattern":"^[0-9a-f]{64}$","type":"string"},"language":{"const":"1.2"},"lean_toolchain":{"const":"leanprover/lean4:v4.32.1"},"package":{"items":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"imports":{"items":{"minLength":1,"type":"string"},"type":"array"},"kind":{"enum":["builtin","path","git"]},"manifest_sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"},"revision":{"minLength":1,"type":"string"},"source":{"minLength":1,"type":"string"},"tree_sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"},"version":{"minLength":1,"type":"string"}},"required":["id","imports","kind","manifest_sha256","revision","source","tree_sha256","version"],"type":"object"},"type":"array"},"pdf":{"additionalProperties":false,"properties":{"compile_argv":{"items":{"type":"string"},"type":"array"},"output":{"minLength":1,"type":"string"},"program":{"minLength":1,"type":"string"},"program_sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"},"resource":{"items":{"additionalProperties":false,"properties":{"path":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"}},"required":["path","sha256"],"type":"object"},"type":"array"},"version_argv":{"items":{"type":"string"},"type":"array"},"version_stdout_sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"}},"required":["compile_argv","output","program","program_sha256","resource","version_argv","version_stdout_sha256"],"type":"object"},"project_config_sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"},"source_package":{"items":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"imports":{"items":{"minLength":1,"type":"string"},"type":"array"},"kind":{"const":"path"},"manifest_sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"},"module_prefix":{"minLength":1,"type":"string"},"source":{"minLength":1,"type":"string"},"tree_sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"},"version":{"minLength":1,"type":"string"}},"required":["id","imports","kind","manifest_sha256","module_prefix","source","tree_sha256","version"],"type":"object"},"type":"array"},"spec":{"const":"lexlean/lock/2"},"workspace_file":{"items":{"additionalProperties":false,"properties":{"path":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"}},"required":["path","sha256"],"type":"object"},"type":"array"}},"required":["compiler_semantics","language","lean_toolchain","package","project_config_sha256","spec","workspace_file"],"title":"LexLean lock file lexlean.lock v2 (SPEC.md §11)","type":"object"} diff --git a/schemas/project-v2.schema.json b/schemas/project-v2.schema.json index 7912dec0a..534f07da2 100644 --- a/schemas/project-v2.schema.json +++ b/schemas/project-v2.schema.json @@ -1 +1 @@ -{"$id":"https://github.com/afflom/lexlean/schemas/project-v2.schema.json","$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"artifact_source":{"items":{"additionalProperties":false,"properties":{"path":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"}},"required":["path","sha256"],"type":"object"},"type":"array"},"build_root":{"minLength":1,"type":"string"},"entrypoints":{"items":{"minLength":1,"type":"string"},"minItems":1,"type":"array"},"language":{"enum":["1.1","1.2"]},"lean_toolchain":{"const":"leanprover/lean4:v4.32.1"},"lean_workspace":{"minLength":1,"type":"string"},"lexicon_source":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"builtin"},"package":{"minLength":1,"type":"string"}},"required":["kind","package"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"path"},"package":{"minLength":1,"type":"string"},"path":{"minLength":1,"type":"string"}},"required":["kind","package","path"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"git"},"package":{"minLength":1,"type":"string"},"revision":{"pattern":"^[0-9a-f]{40}$","type":"string"},"subdirectory":{"minLength":1,"type":"string"},"url":{"minLength":1,"type":"string"}},"required":["kind","package","revision","subdirectory","url"],"type":"object"}]},"type":"array"},"limits":{"additionalProperties":false,"properties":{"child_timeout_ms":{"minimum":1,"type":"integer"},"max_child_output_bytes":{"minimum":1,"type":"integer"},"max_diagnostics":{"minimum":1,"type":"integer"},"max_file_bytes":{"minimum":1,"type":"integer"},"max_import_depth":{"minimum":1,"type":"integer"},"max_ir_nodes":{"minimum":1,"type":"integer"},"max_parse_states":{"minimum":1,"type":"integer"},"max_primitive_atoms":{"minimum":1,"type":"integer"},"max_scope_depth":{"minimum":1,"type":"integer"},"max_token_lattice_edges":{"minimum":1,"type":"integer"},"max_total_source_bytes":{"minimum":1,"type":"integer"}},"required":["child_timeout_ms","max_child_output_bytes","max_diagnostics","max_file_bytes","max_import_depth","max_ir_nodes","max_parse_states","max_primitive_atoms","max_scope_depth","max_token_lattice_edges","max_total_source_bytes"],"type":"object"},"lockfile":{"minLength":1,"type":"string"},"module_prefix":{"pattern":"^[A-Z][A-Za-z0-9_]*(\\.[A-Z][A-Za-z0-9_]*)*$","type":"string"},"name":{"pattern":"^[a-z][a-z0-9-]{0,62}$","type":"string"},"pdf":{"additionalProperties":false,"properties":{"compile_argv":{"items":{"type":"string"},"type":"array"},"mode":{"const":"external"},"output":{"minLength":1,"type":"string"},"program":{"minLength":1,"type":"string"},"program_sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"},"resources":{"items":{"minLength":1,"type":"string"},"type":"array"},"version_argv":{"items":{"type":"string"},"type":"array"},"version_stdout_sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"}},"required":["compile_argv","mode","output","program","program_sha256","resources","version_argv","version_stdout_sha256"],"type":"object"},"source_roots":{"items":{"minLength":1,"type":"string"},"minItems":1,"type":"array"},"spec":{"const":"lexlean/project/1"}},"required":["build_root","entrypoints","language","lean_toolchain","lean_workspace","lexicon_source","limits","lockfile","module_prefix","name","source_roots","spec"],"title":"LexLean project file lexlean.toml for languages 1.1 and 1.2 (SPEC.md §10.1)","type":"object"} +{"$id":"https://github.com/afflom/lexlean/schemas/project-v2.schema.json","$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"artifact_source":{"items":{"additionalProperties":false,"properties":{"path":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"}},"required":["path","sha256"],"type":"object"},"type":"array"},"build_root":{"minLength":1,"type":"string"},"entrypoints":{"items":{"minLength":1,"type":"string"},"minItems":1,"type":"array"},"language":{"enum":["1.1","1.2"]},"lean_toolchain":{"const":"leanprover/lean4:v4.32.1"},"lean_workspace":{"minLength":1,"type":"string"},"lexicon_source":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"builtin"},"package":{"minLength":1,"type":"string"}},"required":["kind","package"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"path"},"package":{"minLength":1,"type":"string"},"path":{"minLength":1,"type":"string"}},"required":["kind","package","path"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"git"},"package":{"minLength":1,"type":"string"},"revision":{"pattern":"^[0-9a-f]{40}$","type":"string"},"subdirectory":{"minLength":1,"type":"string"},"url":{"minLength":1,"type":"string"}},"required":["kind","package","revision","subdirectory","url"],"type":"object"}]},"type":"array"},"limits":{"additionalProperties":false,"properties":{"child_timeout_ms":{"minimum":1,"type":"integer"},"max_child_output_bytes":{"minimum":1,"type":"integer"},"max_diagnostics":{"minimum":1,"type":"integer"},"max_file_bytes":{"minimum":1,"type":"integer"},"max_import_depth":{"minimum":1,"type":"integer"},"max_ir_nodes":{"minimum":1,"type":"integer"},"max_parse_states":{"minimum":1,"type":"integer"},"max_primitive_atoms":{"minimum":1,"type":"integer"},"max_scope_depth":{"minimum":1,"type":"integer"},"max_token_lattice_edges":{"minimum":1,"type":"integer"},"max_total_source_bytes":{"minimum":1,"type":"integer"}},"required":["child_timeout_ms","max_child_output_bytes","max_diagnostics","max_file_bytes","max_import_depth","max_ir_nodes","max_parse_states","max_primitive_atoms","max_scope_depth","max_token_lattice_edges","max_total_source_bytes"],"type":"object"},"lockfile":{"minLength":1,"type":"string"},"module_prefix":{"pattern":"^[A-Z][A-Za-z0-9_]*(\\.[A-Z][A-Za-z0-9_]*)*$","type":"string"},"name":{"pattern":"^[a-z][a-z0-9-]{0,62}$","type":"string"},"pdf":{"additionalProperties":false,"properties":{"compile_argv":{"items":{"type":"string"},"type":"array"},"mode":{"const":"external"},"output":{"minLength":1,"type":"string"},"program":{"minLength":1,"type":"string"},"program_sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"},"resources":{"items":{"minLength":1,"type":"string"},"type":"array"},"version_argv":{"items":{"type":"string"},"type":"array"},"version_stdout_sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"}},"required":["compile_argv","mode","output","program","program_sha256","resources","version_argv","version_stdout_sha256"],"type":"object"},"source_package":{"items":{"additionalProperties":false,"properties":{"kind":{"const":"path"},"package":{"pattern":"^[a-z][a-z0-9-]{0,62}$","type":"string"},"path":{"minLength":1,"type":"string"},"version":{"pattern":"^[A-Za-z0-9][A-Za-z0-9.+-]{0,63}$","type":"string"}},"required":["kind","package","path","version"],"type":"object"},"type":"array"},"source_roots":{"items":{"minLength":1,"type":"string"},"minItems":1,"type":"array"},"spec":{"const":"lexlean/project/1"}},"required":["build_root","entrypoints","language","lean_toolchain","lean_workspace","lexicon_source","limits","lockfile","module_prefix","name","source_roots","spec"],"title":"LexLean project file lexlean.toml for languages 1.1 and 1.2 (SPEC.md §10.1)","type":"object"} diff --git a/schemas/semantic-snapshot-v2.schema.json b/schemas/semantic-snapshot-v2.schema.json index b3aad1008..c860817d2 100644 --- a/schemas/semantic-snapshot-v2.schema.json +++ b/schemas/semantic-snapshot-v2.schema.json @@ -1 +1 @@ -{"$defs":{"axiomPolicy":{"additionalProperties":false,"properties":{"axioms":{"items":{"type":"string"},"type":"array","uniqueItems":true},"kind":{"enum":["allow","exact","none"]}},"required":["axioms","kind"],"type":"object"},"crossCheck":{"additionalProperties":false,"properties":{"name":{"minLength":1,"type":"string"},"proof":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"theorem"},"theorem":{"$ref":"#/$defs/elaboration_member"},"type_arguments":{"items":{"$ref":"#/$defs/elaboration_type"},"type":"array"}},"required":["kind","theorem","type_arguments"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"decide"}},"required":["kind"],"type":"object"}]},"statement":{"oneOf":[{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/elaboration_term"},"type":"array"},"helper":{"minLength":1,"type":"string"},"kind":{"const":"helper"}},"required":["arguments","helper","kind"],"type":"object"},{"additionalProperties":false,"properties":{"artifact":{"$ref":"#/$defs/elaboration_name"},"element":{"enum":["int16","int32","int64","int8","uint16","uint32","uint64","uint8"]},"kind":{"const":"tensor"},"shape":{"items":{"minimum":1,"type":"integer"},"minItems":1,"type":"array"}},"required":["artifact","element","kind","shape"],"type":"object"},{"additionalProperties":false,"properties":{"artifact":{"$ref":"#/$defs/elaboration_name"},"kind":{"const":"lines"}},"required":["artifact","kind"],"type":"object"},{"additionalProperties":false,"properties":{"artifact":{"$ref":"#/$defs/elaboration_name"},"kind":{"const":"bytes"}},"required":["artifact","kind"],"type":"object"}]},"type_parameters":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array"}},"required":["name","proof","statement","type_parameters"],"type":"object"},"declaration":{"additionalProperties":false,"properties":{"alpha_id":{"$ref":"#/$defs/digest"},"axiom_policy":{"$ref":"#/$defs/axiomPolicy"},"elaboration":{"$ref":"#/$defs/elaboration"},"kind":{"enum":["abbrev","artifact","class","constructor","contract","corollary","definition","evidence","inductive","inference_rule","instance","lemma","logic","model","predicatedefinition","realization","reasoner","recursor","structure","termdefinition","theorem","typedefinition","verifier"]},"lean_name":{"minLength":1,"type":"string"},"linked_ir":{"$ref":"#/$defs/semanticValue"},"logical_id":{"minLength":1,"type":"string"},"origin":{"$ref":"#/$defs/origin"}},"required":["axiom_policy","kind","lean_name","linked_ir","logical_id"],"type":"object"},"digest":{"pattern":"^[0-9a-f]{64}$","type":"string"},"elaboration":{"additionalProperties":false,"properties":{"alpha_ids":{"additionalProperties":{"$ref":"#/$defs/digest"},"type":"object"},"cross_checks":{"items":{"$ref":"#/$defs/crossCheck"},"type":"array"},"declarations":{"items":{"$ref":"#/$defs/elaboration_declaration"},"type":"array"},"obligations":{"items":{"$ref":"#/$defs/obligation"},"type":"array"},"required_checks":{"items":{"enum":["input_invariant","output_invariant","postcondition","precondition"]},"type":"array"},"theorems":{"items":{"$ref":"#/$defs/generatedTheorem"},"type":"array"}},"required":["alpha_ids","cross_checks","declarations","obligations","required_checks"],"type":"object"},"elaboration_artifactSchema":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"bytes"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"element":{"enum":["int16","int32","int64","int8","uint16","uint32","uint64","uint8"]},"kind":{"const":"int_tensor"},"shape":{"items":{"minimum":1,"type":"integer"},"minItems":1,"type":"array"}},"required":["element","kind","shape"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"utf8_lines"}},"required":["kind"],"type":"object"}]},"elaboration_assignment":{"additionalProperties":false,"properties":{"field":{"$ref":"#/$defs/elaboration_name"},"value":{"$ref":"#/$defs/elaboration_term"}},"required":["field","value"],"type":"object"},"elaboration_branch":{"additionalProperties":false,"properties":{"binders":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true},"body":{"$ref":"#/$defs/elaboration_term"},"constructor":{"$ref":"#/$defs/elaboration_member"}},"required":["binders","body","constructor"],"type":"object"},"elaboration_claim":{"oneOf":[{"additionalProperties":false,"properties":{"agreements":{"minimum":0,"type":"integer"},"comparison":{"$ref":"#/$defs/elaboration_member"},"comparison_sound":{"$ref":"#/$defs/elaboration_member"},"dataset":{"$ref":"#/$defs/elaboration_member"},"examples":{"minimum":0,"type":"integer"},"kind":{"const":"dataset_agreement"},"theorem":{"$ref":"#/$defs/elaboration_member"}},"required":["agreements","comparison","comparison_sound","dataset","examples","kind","theorem"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"equivalent_to"},"reference":{"$ref":"#/$defs/elaboration_modelUse"},"theorem":{"$ref":"#/$defs/elaboration_member"}},"required":["kind","reference","theorem"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"initial_invariant"},"theorem":{"$ref":"#/$defs/elaboration_member"}},"required":["kind","theorem"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"preserves_invariant"},"theorem":{"$ref":"#/$defs/elaboration_member"}},"required":["kind","theorem"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"satisfies_contract"},"theorem":{"$ref":"#/$defs/elaboration_member"}},"required":["kind","theorem"],"type":"object"}]},"elaboration_compositeForm":{"oneOf":[{"additionalProperties":false,"properties":{"junctions":{"items":{"$ref":"#/$defs/elaboration_compositeJunction"},"minItems":1,"type":"array"},"kind":{"const":"sequence"},"stages":{"items":{"$ref":"#/$defs/elaboration_modelUse"},"minItems":2,"type":"array"}},"required":["junctions","kind","stages"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"fanout"},"left":{"$ref":"#/$defs/elaboration_modelUse"},"right":{"$ref":"#/$defs/elaboration_modelUse"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"product"},"left":{"$ref":"#/$defs/elaboration_modelUse"},"right":{"$ref":"#/$defs/elaboration_modelUse"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"else":{"$ref":"#/$defs/elaboration_modelUse"},"guard":{"$ref":"#/$defs/elaboration_term"},"kind":{"const":"branch"},"then":{"$ref":"#/$defs/elaboration_modelUse"}},"required":["else","guard","kind","then"],"type":"object"},{"additionalProperties":false,"properties":{"junction":{"$ref":"#/$defs/elaboration_compositeJunction"},"kind":{"const":"scan"},"stage":{"$ref":"#/$defs/elaboration_modelUse"}},"required":["junction","kind","stage"],"type":"object"}]},"elaboration_compositeJunction":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"unconditional"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/elaboration_member"},"kind":{"const":"proved"}},"required":["evidence","kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"checked"}},"required":["kind"],"type":"object"}]},"elaboration_constructor":{"additionalProperties":false,"properties":{"fields":{"items":{"$ref":"#/$defs/elaboration_type"},"type":"array"},"name":{"$ref":"#/$defs/elaboration_name"}},"required":["fields","name"],"type":"object"},"elaboration_contractState":{"additionalProperties":false,"properties":{"name":{"$ref":"#/$defs/elaboration_name"},"next":{"$ref":"#/$defs/elaboration_name"},"type":{"$ref":"#/$defs/elaboration_type"}},"required":["name","next","type"],"type":"object"},"elaboration_contractValidator":{"additionalProperties":false,"properties":{"complete":{"$ref":"#/$defs/elaboration_member"},"predicate":{"enum":["invariant","postcondition","precondition"]},"sound":{"$ref":"#/$defs/elaboration_member"},"validator":{"$ref":"#/$defs/elaboration_member"}},"required":["predicate","sound","validator"],"type":"object"},"elaboration_declaration":{"oneOf":[{"additionalProperties":false,"properties":{"fields":{"items":{"$ref":"#/$defs/elaboration_field"},"minItems":1,"type":"array"},"kind":{"const":"structure"},"name":{"$ref":"#/$defs/elaboration_name"},"parameters":{"items":{"$ref":"#/$defs/elaboration_parameter"},"type":"array"},"type_parameters":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true}},"required":["fields","kind","name","parameters","type_parameters"],"type":"object"},{"additionalProperties":false,"properties":{"fields":{"items":{"$ref":"#/$defs/elaboration_field"},"minItems":1,"type":"array"},"kind":{"const":"class"},"name":{"$ref":"#/$defs/elaboration_name"},"parameters":{"items":{"$ref":"#/$defs/elaboration_parameter"},"type":"array"},"type_parameters":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true}},"required":["fields","kind","name","parameters","type_parameters"],"type":"object"},{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/elaboration_type"},"type":"array"},"class":{"$ref":"#/$defs/elaboration_member"},"fields":{"items":{"$ref":"#/$defs/elaboration_assignment"},"minItems":1,"type":"array"},"kind":{"const":"instance"},"name":{"$ref":"#/$defs/elaboration_name"},"priority":{"const":1000}},"required":["arguments","class","fields","kind","name","priority"],"type":"object"},{"additionalProperties":false,"properties":{"constructors":{"items":{"$ref":"#/$defs/elaboration_constructor"},"minItems":1,"type":"array"},"kind":{"const":"inductive"},"mutual":{"$ref":"#/$defs/elaboration_name"},"name":{"$ref":"#/$defs/elaboration_name"},"parameters":{"items":{"$ref":"#/$defs/elaboration_parameter"},"type":"array"},"type_parameters":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true}},"required":["constructors","kind","name","parameters","type_parameters"],"type":"object"},{"additionalProperties":false,"properties":{"axioms":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true},"body":{"$ref":"#/$defs/elaboration_term"},"executable":{"type":"boolean"},"kind":{"const":"definition"},"mutual":{"$ref":"#/$defs/elaboration_name"},"name":{"$ref":"#/$defs/elaboration_name"},"parameters":{"items":{"$ref":"#/$defs/elaboration_parameter"},"type":"array"},"production":{"$ref":"#/$defs/elaboration_production"},"recursive_argument":{"$ref":"#/$defs/elaboration_name"},"result":{"$ref":"#/$defs/elaboration_type"},"termination":{"additionalProperties":false,"properties":{"evidence":{"items":{"$ref":"#/$defs/elaboration_member"},"minItems":1,"type":"array"},"measure":{"$ref":"#/$defs/elaboration_term"}},"required":["evidence","measure"],"type":"object"},"type_parameters":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true}},"required":["body","kind","name","parameters","result"],"type":"object"},{"additionalProperties":false,"properties":{"axioms":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true},"kind":{"const":"theorem"},"name":{"$ref":"#/$defs/elaboration_name"},"parameters":{"items":{"$ref":"#/$defs/elaboration_parameter"},"type":"array"},"proof":{"$ref":"#/$defs/elaboration_proof"},"statement":{"$ref":"#/$defs/elaboration_term"},"type_parameters":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true}},"required":["kind","name","parameters","proof","statement"],"type":"object"},{"additionalProperties":false,"properties":{"axioms":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true},"kind":{"const":"artifact"},"length":{"minimum":0,"type":"integer"},"name":{"$ref":"#/$defs/elaboration_name"},"role":{"enum":["binary","dataset","parameters","table","vocabulary"]},"schema":{"$ref":"#/$defs/elaboration_artifactSchema"},"sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"},"type":{"$ref":"#/$defs/elaboration_type"}},"required":["kind","length","name","role","schema","sha256","type"],"type":"object"},{"additionalProperties":false,"properties":{"axioms":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true},"input":{"$ref":"#/$defs/elaboration_modelBinder"},"invariant":{"$ref":"#/$defs/elaboration_member"},"kind":{"const":"contract"},"name":{"$ref":"#/$defs/elaboration_name"},"output":{"$ref":"#/$defs/elaboration_modelBinder"},"postcondition":{"$ref":"#/$defs/elaboration_member"},"precondition":{"$ref":"#/$defs/elaboration_member"},"state":{"$ref":"#/$defs/elaboration_contractState"},"type_parameters":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true},"validators":{"items":{"$ref":"#/$defs/elaboration_contractValidator"},"type":"array"}},"required":["input","kind","name","output"],"type":"object"},{"additionalProperties":false,"properties":{"axioms":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true},"descriptor":{"$ref":"#/$defs/elaboration_descriptor"},"executable":{"type":"boolean"},"input":{"$ref":"#/$defs/elaboration_modelBinder"},"kind":{"const":"realization"},"name":{"$ref":"#/$defs/elaboration_name"},"output":{"$ref":"#/$defs/elaboration_type"},"state":{"$ref":"#/$defs/elaboration_realizationState"},"type_parameters":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true}},"required":["descriptor","input","kind","name","output"],"type":"object"},{"additionalProperties":false,"properties":{"axioms":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true},"claims":{"items":{"$ref":"#/$defs/elaboration_claim"},"minItems":1,"type":"array"},"contract":{"$ref":"#/$defs/elaboration_modelUse"},"kind":{"const":"evidence"},"name":{"$ref":"#/$defs/elaboration_name"},"realization":{"$ref":"#/$defs/elaboration_modelUse"},"type_parameters":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true}},"required":["claims","contract","kind","name","realization"],"type":"object"},{"additionalProperties":false,"properties":{"axioms":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true},"contract":{"$ref":"#/$defs/elaboration_modelUse"},"entry":{"items":{"$ref":"#/$defs/elaboration_member"},"type":"array"},"evidence":{"items":{"$ref":"#/$defs/elaboration_modelUse"},"type":"array"},"kind":{"const":"model"},"name":{"$ref":"#/$defs/elaboration_name"},"realization":{"$ref":"#/$defs/elaboration_modelUse"},"type_parameters":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true}},"required":["contract","kind","name","realization"],"type":"object"},{"additionalProperties":false,"properties":{"axioms":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true},"invariant":{"$ref":"#/$defs/elaboration_logicInvariant"},"kind":{"const":"logic"},"name":{"$ref":"#/$defs/elaboration_name"},"ranking":{"$ref":"#/$defs/elaboration_member"},"relation":{"$ref":"#/$defs/elaboration_member"},"state":{"$ref":"#/$defs/elaboration_contractState"},"type_parameters":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true}},"required":["kind","name","relation","state"],"type":"object"},{"additionalProperties":false,"properties":{"axioms":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true},"binding":{"$ref":"#/$defs/elaboration_ruleBinding"},"conclusion":{"$ref":"#/$defs/elaboration_term"},"executable":{"type":"boolean"},"guard":{"$ref":"#/$defs/elaboration_term"},"kind":{"const":"inference_rule"},"logic":{"$ref":"#/$defs/elaboration_modelUse"},"name":{"$ref":"#/$defs/elaboration_name"},"progress":{"$ref":"#/$defs/elaboration_member"},"soundness":{"$ref":"#/$defs/elaboration_member"},"type_parameters":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true}},"required":["conclusion","guard","kind","logic","name","soundness"],"type":"object"},{"additionalProperties":false,"properties":{"axioms":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true},"candidate":{"$ref":"#/$defs/elaboration_modelBinder"},"check":{"$ref":"#/$defs/elaboration_member"},"complete":{"$ref":"#/$defs/elaboration_member"},"kind":{"const":"verifier"},"name":{"$ref":"#/$defs/elaboration_name"},"sound":{"$ref":"#/$defs/elaboration_member"},"specification":{"$ref":"#/$defs/elaboration_member"},"subject":{"$ref":"#/$defs/elaboration_modelBinder"},"type_parameters":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true}},"required":["candidate","check","kind","name","sound","specification","subject"],"type":"object"},{"additionalProperties":false,"properties":{"answer":{"$ref":"#/$defs/elaboration_reasoningAnswer"},"axioms":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true},"claims":{"items":{"$ref":"#/$defs/elaboration_reasoningClaim"},"type":"array"},"executable":{"type":"boolean"},"kind":{"const":"reasoner"},"logic":{"$ref":"#/$defs/elaboration_modelUse"},"name":{"$ref":"#/$defs/elaboration_name"},"observation":{"$ref":"#/$defs/elaboration_modelBinder"},"observe":{"$ref":"#/$defs/elaboration_term"},"rules":{"items":{"$ref":"#/$defs/elaboration_modelUse"},"type":"array"},"strategy":{"$ref":"#/$defs/elaboration_reasoningStrategy"},"type_parameters":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true},"verifier":{"$ref":"#/$defs/elaboration_modelUse"}},"required":["kind","name","observation","rules","strategy","verifier"],"type":"object"}]},"elaboration_descriptor":{"oneOf":[{"additionalProperties":false,"properties":{"body":{"$ref":"#/$defs/elaboration_term"},"kind":{"const":"deterministic"}},"required":["body","kind"],"type":"object"},{"additionalProperties":false,"properties":{"default":{"$ref":"#/$defs/elaboration_term"},"kind":{"const":"rule"},"rules":{"items":{"$ref":"#/$defs/elaboration_realizationRule"},"minItems":1,"type":"array"}},"required":["default","kind","rules"],"type":"object"},{"additionalProperties":false,"properties":{"bias":{"$ref":"#/$defs/elaboration_member"},"features":{"$ref":"#/$defs/elaboration_term"},"kind":{"const":"statistical"},"labels":{"items":{"$ref":"#/$defs/elaboration_term"},"minItems":1,"type":"array"},"scheme":{"const":"linear_scoring"},"weights":{"$ref":"#/$defs/elaboration_member"},"width":{"minimum":1,"type":"integer"},"width_evidence":{"$ref":"#/$defs/elaboration_member"}},"required":["bias","features","kind","labels","scheme","weights","width","width_evidence"],"type":"object"},{"additionalProperties":false,"properties":{"architecture":{"const":"integer_feedforward"},"decoder":{"$ref":"#/$defs/elaboration_neuralDecoder"},"encoder":{"$ref":"#/$defs/elaboration_term"},"kind":{"const":"neural"},"layers":{"items":{"$ref":"#/$defs/elaboration_neuralLayer"},"minItems":1,"type":"array"},"width":{"minimum":1,"type":"integer"},"width_evidence":{"$ref":"#/$defs/elaboration_member"}},"required":["architecture","decoder","encoder","kind","layers","width","width_evidence"],"type":"object"},{"additionalProperties":false,"properties":{"form":{"$ref":"#/$defs/elaboration_compositeForm"},"kind":{"const":"composite"}},"required":["form","kind"],"type":"object"}]},"elaboration_field":{"additionalProperties":false,"properties":{"name":{"$ref":"#/$defs/elaboration_name"},"type":{"$ref":"#/$defs/elaboration_type"}},"required":["name","type"],"type":"object"},"elaboration_logicInvariant":{"additionalProperties":false,"properties":{"predicate":{"$ref":"#/$defs/elaboration_member"},"preserves":{"$ref":"#/$defs/elaboration_member"}},"required":["predicate","preserves"],"type":"object"},"elaboration_member":{"additionalProperties":false,"properties":{"module":{"$ref":"#/$defs/elaboration_name"},"name":{"$ref":"#/$defs/elaboration_name"}},"required":["name"],"type":"object"},"elaboration_modelBinder":{"additionalProperties":false,"properties":{"name":{"$ref":"#/$defs/elaboration_name"},"type":{"$ref":"#/$defs/elaboration_type"}},"required":["name","type"],"type":"object"},"elaboration_modelUse":{"additionalProperties":false,"properties":{"member":{"$ref":"#/$defs/elaboration_member"},"type_arguments":{"items":{"$ref":"#/$defs/elaboration_type"},"type":"array"}},"required":["member"],"type":"object"},"elaboration_name":{"description":"A name inside an elaboration. Besides every source spelling it admits the reserved spelling with two leading underscores, which only generated binders use; linking rejects it in every source module, and the source semantic_name excludes it.","pattern":"^(__)?[A-Za-z][A-Za-z0-9_]*(\\.(__)?[A-Za-z][A-Za-z0-9_]*)*$","type":"string"},"elaboration_neuralDecoder":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"argmax"},"labels":{"items":{"$ref":"#/$defs/elaboration_term"},"minItems":1,"type":"array"}},"required":["kind","labels"],"type":"object"},{"additionalProperties":false,"properties":{"binder":{"$ref":"#/$defs/elaboration_name"},"body":{"$ref":"#/$defs/elaboration_term"},"kind":{"const":"function"}},"required":["binder","body","kind"],"type":"object"}]},"elaboration_neuralLayer":{"oneOf":[{"additionalProperties":false,"properties":{"bias":{"$ref":"#/$defs/elaboration_member"},"inputs":{"minimum":1,"type":"integer"},"kind":{"const":"dense"},"outputs":{"minimum":1,"type":"integer"},"weights":{"$ref":"#/$defs/elaboration_member"}},"required":["bias","inputs","kind","outputs","weights"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"relu"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"requantize"},"maximum":{"oneOf":[{"const":"0"},{"pattern":"^[1-9][0-9]*$","type":"string"},{"pattern":"^-[1-9][0-9]*$","type":"string"}]},"minimum":{"oneOf":[{"const":"0"},{"pattern":"^[1-9][0-9]*$","type":"string"},{"pattern":"^-[1-9][0-9]*$","type":"string"}]},"shift":{"maximum":4096,"minimum":0,"type":"integer"}},"required":["kind","maximum","minimum","shift"],"type":"object"}]},"elaboration_parameter":{"additionalProperties":false,"properties":{"name":{"$ref":"#/$defs/elaboration_name"},"type":{"$ref":"#/$defs/elaboration_type"}},"required":["name","type"],"type":"object"},"elaboration_production":{"additionalProperties":false,"properties":{"effects":{"items":{"enum":["allocation","overflow","recursion"]},"type":"array","uniqueItems":true},"targets":{"items":{"enum":["rust-core","rust-std"]},"minItems":1,"type":"array","uniqueItems":true}},"required":["effects","targets"],"type":"object"},"elaboration_proof":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"reflexivity"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"decide"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"definitions":{"items":{"$ref":"#/$defs/elaboration_member"},"minItems":1,"type":"array","uniqueItems":true},"kind":{"const":"simplify"}},"required":["definitions","kind"],"type":"object"},{"additionalProperties":false,"properties":{"branches":{"items":{"$ref":"#/$defs/elaboration_proof"},"minItems":1,"type":"array"},"kind":{"const":"constructor"}},"required":["branches","kind"],"type":"object"},{"additionalProperties":false,"properties":{"branches":{"items":{"$ref":"#/$defs/elaboration_proofBranch"},"minItems":1,"type":"array"},"kind":{"const":"cases"},"scrutinee":{"$ref":"#/$defs/elaboration_name"}},"required":["branches","kind","scrutinee"],"type":"object"},{"additionalProperties":false,"properties":{"branches":{"items":{"$ref":"#/$defs/elaboration_proofBranch"},"minItems":1,"type":"array"},"generalizing":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true},"kind":{"const":"induction"},"scrutinee":{"$ref":"#/$defs/elaboration_name"}},"required":["branches","kind","scrutinee"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"congruence"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"boolean_reflection"},"reflection":{"$ref":"#/$defs/elaboration_reflection"}},"required":["kind","reflection"],"type":"object"},{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/elaboration_term"},"type":"array"},"kind":{"const":"law"},"name":{"$ref":"#/$defs/elaboration_name"},"premises":{"items":{"$ref":"#/$defs/elaboration_member"},"type":"array"},"type_arguments":{"items":{"$ref":"#/$defs/elaboration_type"},"type":"array"}},"required":["arguments","kind","name"],"type":"object"},{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/elaboration_term"},"type":"array"},"kind":{"const":"apply"},"theorem":{"$ref":"#/$defs/elaboration_member"},"type_arguments":{"items":{"$ref":"#/$defs/elaboration_type"},"type":"array"}},"required":["arguments","kind","theorem"],"type":"object"},{"additionalProperties":false,"properties":{"definitions":{"items":{"$ref":"#/$defs/elaboration_member"},"minItems":1,"type":"array","uniqueItems":true},"kind":{"const":"linear_arithmetic"}},"required":["kind"],"type":"object"}]},"elaboration_proofBranch":{"additionalProperties":false,"properties":{"binders":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true},"constructor":{"$ref":"#/$defs/elaboration_name"},"proof":{"$ref":"#/$defs/elaboration_proof"}},"required":["binders","constructor","proof"],"type":"object"},"elaboration_realizationRule":{"additionalProperties":false,"properties":{"action":{"$ref":"#/$defs/elaboration_term"},"guard":{"$ref":"#/$defs/elaboration_term"},"name":{"$ref":"#/$defs/elaboration_name"}},"required":["action","guard","name"],"type":"object"},"elaboration_realizationState":{"additionalProperties":false,"properties":{"initial":{"$ref":"#/$defs/elaboration_term"},"name":{"$ref":"#/$defs/elaboration_name"},"type":{"$ref":"#/$defs/elaboration_type"}},"required":["initial","name","type"],"type":"object"},"elaboration_reasoningAnswer":{"additionalProperties":false,"properties":{"name":{"$ref":"#/$defs/elaboration_name"},"type":{"$ref":"#/$defs/elaboration_type"},"value":{"$ref":"#/$defs/elaboration_term"}},"required":["name","type","value"],"type":"object"},"elaboration_reasoningClaim":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"answer_correct"},"theorem":{"$ref":"#/$defs/elaboration_member"}},"required":["kind","theorem"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"initial_invariant"},"theorem":{"$ref":"#/$defs/elaboration_member"}},"required":["kind","theorem"],"type":"object"},{"additionalProperties":false,"properties":{"initial":{"$ref":"#/$defs/elaboration_member"},"kind":{"const":"observation_invariant"},"predicate":{"$ref":"#/$defs/elaboration_member"},"preserved":{"$ref":"#/$defs/elaboration_member"}},"required":["initial","kind","predicate","preserved"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"terminates"},"theorem":{"$ref":"#/$defs/elaboration_member"}},"required":["kind","theorem"],"type":"object"}]},"elaboration_reasoningStrategy":{"oneOf":[{"additionalProperties":false,"properties":{"fuel":{"$ref":"#/$defs/elaboration_term"},"kind":{"const":"forward"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"budget":{"$ref":"#/$defs/elaboration_term"},"generator":{"$ref":"#/$defs/elaboration_term"},"kind":{"const":"generate_and_verify"}},"required":["generator","kind"],"type":"object"},{"additionalProperties":false,"properties":{"deduplicate":{"type":"boolean"},"frontier":{"$ref":"#/$defs/elaboration_term"},"fuel":{"$ref":"#/$defs/elaboration_term"},"kind":{"const":"search"},"order":{"enum":["breadth_first","depth_first"]}},"required":["kind","order"],"type":"object"}]},"elaboration_reflection":{"oneOf":[{"additionalProperties":false,"properties":{"boolean_definition":{"$ref":"#/$defs/elaboration_member"},"comparison":{"$ref":"#/$defs/elaboration_reflectionComparison"},"kind":{"const":"list"},"parameter":{"$ref":"#/$defs/elaboration_name"},"proposition_definition":{"$ref":"#/$defs/elaboration_member"},"values":{"$ref":"#/$defs/elaboration_name"}},"required":["boolean_definition","comparison","kind","parameter","proposition_definition","values"],"type":"object"},{"additionalProperties":false,"properties":{"boolean_definition":{"$ref":"#/$defs/elaboration_member"},"fields":{"items":{"$ref":"#/$defs/elaboration_reflectionField"},"minItems":1,"type":"array"},"kind":{"const":"record"},"proposition_definition":{"$ref":"#/$defs/elaboration_member"},"record":{"$ref":"#/$defs/elaboration_name"}},"required":["boolean_definition","fields","kind","proposition_definition","record"],"type":"object"}]},"elaboration_reflectionComparison":{"enum":["nat_beq","nat_blt"]},"elaboration_reflectionField":{"additionalProperties":false,"properties":{"expected":{"oneOf":[{"const":"0"},{"pattern":"^[1-9][0-9]*$","type":"string"}]},"field":{"$ref":"#/$defs/elaboration_name"}},"required":["expected","field"],"type":"object"},"elaboration_ruleBinding":{"additionalProperties":false,"properties":{"candidates":{"$ref":"#/$defs/elaboration_term"},"name":{"$ref":"#/$defs/elaboration_name"},"type":{"$ref":"#/$defs/elaboration_type"}},"required":["candidates","name","type"],"type":"object"},"elaboration_term":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"var"},"name":{"$ref":"#/$defs/elaboration_name"}},"required":["kind","name"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"nat"},"value":{"oneOf":[{"const":"0"},{"pattern":"^[1-9][0-9]*$","type":"string"}]}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"bool"},"value":{"type":"boolean"}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"integer"},"representation":{"enum":["int","int8","int16","int32","int64"]},"value":{"oneOf":[{"const":"0"},{"pattern":"^[1-9][0-9]*$","type":"string"},{"pattern":"^-[1-9][0-9]*$","type":"string"}]}},"required":["kind","representation","value"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"integer"},"representation":{"enum":["uint8","uint16","uint32","uint64"]},"value":{"oneOf":[{"const":"0"},{"pattern":"^[1-9][0-9]*$","type":"string"}]}},"required":["kind","representation","value"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"string"},"value":{"type":"string"}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"hex":{"pattern":"^([0-9a-f]{2})*$","type":"string"},"kind":{"const":"bytes"}},"required":["hex","kind"],"type":"object"},{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/elaboration_term"},"type":"array"},"kind":{"const":"primitive"},"operation":{"enum":["append","bit_and","bit_not","bit_or","bit_xor","checked_add","checked_convert","checked_multiply","checked_negate","checked_quotient","checked_subtract","compare_bytes","equal","format_decimal","graph_reachable","graph_successors","graph_topological","index","iterate","iterate_until","join","length","less_than","list_fold","map_contains","map_entries","map_fold","map_insert","map_keys","map_lookup","map_remove","map_size","map_values","multiply","negate","parse_decimal","quotient","remainder","set_contains","set_difference","set_elements","set_fold","set_insert","set_intersection","set_remove","set_size","set_union","shift_left","shift_right","slice","split_exact","subtract","utf8_decode","utf8_encode"]},"result":{"$ref":"#/$defs/elaboration_type"}},"required":["arguments","kind","operation","result"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"unit"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"element":{"$ref":"#/$defs/elaboration_type"},"kind":{"const":"nil"}},"required":["element","kind"],"type":"object"},{"additionalProperties":false,"properties":{"head":{"$ref":"#/$defs/elaboration_term"},"kind":{"const":"cons"},"tail":{"$ref":"#/$defs/elaboration_term"}},"required":["head","kind","tail"],"type":"object"},{"additionalProperties":false,"properties":{"fields":{"items":{"$ref":"#/$defs/elaboration_assignment"},"type":"array"},"kind":{"const":"record"},"type":{"$ref":"#/$defs/elaboration_member"},"type_arguments":{"items":{"$ref":"#/$defs/elaboration_type"},"type":"array"}},"required":["fields","kind","type"],"type":"object"},{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/elaboration_term"},"type":"array"},"constructor":{"$ref":"#/$defs/elaboration_member"},"kind":{"const":"constructor"},"type_arguments":{"items":{"$ref":"#/$defs/elaboration_type"},"type":"array"}},"required":["arguments","constructor","kind"],"type":"object"},{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/elaboration_type"},"type":"array"},"class":{"$ref":"#/$defs/elaboration_member"},"kind":{"const":"instance_value"},"resolved":{"$ref":"#/$defs/elaboration_member"}},"required":["arguments","class","kind","resolved"],"type":"object"},{"additionalProperties":false,"properties":{"field":{"$ref":"#/$defs/elaboration_name"},"kind":{"const":"project"},"value":{"$ref":"#/$defs/elaboration_term"}},"required":["field","kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/elaboration_term"},"type":"array"},"function":{"$ref":"#/$defs/elaboration_member"},"kind":{"const":"call"},"type_arguments":{"items":{"$ref":"#/$defs/elaboration_type"},"type":"array"}},"required":["arguments","function","kind"],"type":"object"},{"additionalProperties":false,"properties":{"condition":{"$ref":"#/$defs/elaboration_term"},"else_value":{"$ref":"#/$defs/elaboration_term"},"kind":{"const":"if"},"then_value":{"$ref":"#/$defs/elaboration_term"}},"required":["condition","else_value","kind","then_value"],"type":"object"},{"additionalProperties":false,"properties":{"branches":{"items":{"$ref":"#/$defs/elaboration_branch"},"minItems":1,"type":"array"},"kind":{"const":"match"},"scrutinee":{"$ref":"#/$defs/elaboration_term"}},"required":["branches","kind","scrutinee"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"eq"},"left":{"$ref":"#/$defs/elaboration_term"},"right":{"$ref":"#/$defs/elaboration_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"le"},"left":{"$ref":"#/$defs/elaboration_term"},"right":{"$ref":"#/$defs/elaboration_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"lt"},"left":{"$ref":"#/$defs/elaboration_term"},"right":{"$ref":"#/$defs/elaboration_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"add"},"left":{"$ref":"#/$defs/elaboration_term"},"right":{"$ref":"#/$defs/elaboration_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"beq"},"left":{"$ref":"#/$defs/elaboration_term"},"right":{"$ref":"#/$defs/elaboration_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"ble"},"left":{"$ref":"#/$defs/elaboration_term"},"right":{"$ref":"#/$defs/elaboration_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"blt"},"left":{"$ref":"#/$defs/elaboration_term"},"right":{"$ref":"#/$defs/elaboration_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"and"},"left":{"$ref":"#/$defs/elaboration_term"},"right":{"$ref":"#/$defs/elaboration_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"or"},"left":{"$ref":"#/$defs/elaboration_term"},"right":{"$ref":"#/$defs/elaboration_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"iff"},"left":{"$ref":"#/$defs/elaboration_term"},"right":{"$ref":"#/$defs/elaboration_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"conclusion":{"$ref":"#/$defs/elaboration_term"},"kind":{"const":"implies"},"premise":{"$ref":"#/$defs/elaboration_term"}},"required":["conclusion","kind","premise"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"not"},"value":{"$ref":"#/$defs/elaboration_term"}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"binder":{"$ref":"#/$defs/elaboration_parameter"},"body":{"$ref":"#/$defs/elaboration_term"},"kind":{"const":"forall"}},"required":["binder","body","kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"prop_and"},"left":{"$ref":"#/$defs/elaboration_term"},"right":{"$ref":"#/$defs/elaboration_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"binder":{"$ref":"#/$defs/elaboration_parameter"},"body":{"$ref":"#/$defs/elaboration_term"},"kind":{"const":"let"},"value":{"$ref":"#/$defs/elaboration_term"}},"required":["binder","body","kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"pair"},"left":{"$ref":"#/$defs/elaboration_term"},"right":{"$ref":"#/$defs/elaboration_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"first"},"value":{"$ref":"#/$defs/elaboration_term"}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"second"},"value":{"$ref":"#/$defs/elaboration_term"}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"body":{"$ref":"#/$defs/elaboration_term"},"captures":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true},"kind":{"const":"lambda"},"parameters":{"items":{"$ref":"#/$defs/elaboration_parameter"},"minItems":1,"type":"array"}},"required":["body","captures","kind","parameters"],"type":"object"},{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/elaboration_term"},"minItems":1,"type":"array"},"function":{"$ref":"#/$defs/elaboration_term"},"kind":{"const":"apply"}},"required":["arguments","function","kind"],"type":"object"},{"additionalProperties":false,"properties":{"function":{"$ref":"#/$defs/elaboration_member"},"kind":{"const":"function_ref"},"type_arguments":{"items":{"$ref":"#/$defs/elaboration_type"},"type":"array"}},"required":["function","kind"],"type":"object"},{"additionalProperties":false,"properties":{"entries":{"items":{"additionalProperties":false,"properties":{"key":{"$ref":"#/$defs/elaboration_term"},"value":{"$ref":"#/$defs/elaboration_term"}},"required":["key","value"],"type":"object"},"type":"array"},"key":{"$ref":"#/$defs/elaboration_type"},"kind":{"const":"map_literal"},"value":{"$ref":"#/$defs/elaboration_type"}},"required":["entries","key","kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"element":{"$ref":"#/$defs/elaboration_type"},"elements":{"items":{"$ref":"#/$defs/elaboration_term"},"type":"array"},"kind":{"const":"set_literal"}},"required":["element","elements","kind"],"type":"object"},{"additionalProperties":false,"properties":{"edges":{"items":{"additionalProperties":false,"properties":{"source":{"$ref":"#/$defs/elaboration_term"},"target":{"$ref":"#/$defs/elaboration_term"}},"required":["source","target"],"type":"object"},"type":"array"},"kind":{"const":"graph_literal"},"node":{"$ref":"#/$defs/elaboration_type"},"nodes":{"items":{"$ref":"#/$defs/elaboration_term"},"type":"array"}},"required":["edges","kind","node","nodes"],"type":"object"},{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/elaboration_term"},"type":"array"},"checks":{"items":{"enum":["input_invariant","output_invariant","postcondition","precondition"]},"type":"array","uniqueItems":true},"kind":{"const":"checked_apply"},"model":{"$ref":"#/$defs/elaboration_member"},"type_arguments":{"items":{"$ref":"#/$defs/elaboration_type"},"type":"array"}},"required":["arguments","checks","kind","model"],"type":"object"}]},"elaboration_type":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"enum":["bool","bytes","int","int8","int16","int32","int64","nat","ordering","prop","string","type","uint8","uint16","uint32","uint64","unit"]}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"parameter"},"name":{"$ref":"#/$defs/elaboration_name"}},"required":["kind","name"],"type":"object"},{"additionalProperties":false,"properties":{"element":{"$ref":"#/$defs/elaboration_type"},"kind":{"const":"list"}},"required":["element","kind"],"type":"object"},{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/elaboration_type"},"type":"array"},"kind":{"const":"named"},"member":{"$ref":"#/$defs/elaboration_member"}},"required":["arguments","kind","member"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"option"},"value":{"$ref":"#/$defs/elaboration_type"}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"error":{"$ref":"#/$defs/elaboration_type"},"kind":{"const":"result"},"ok":{"$ref":"#/$defs/elaboration_type"}},"required":["error","kind","ok"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"product"},"left":{"$ref":"#/$defs/elaboration_type"},"right":{"$ref":"#/$defs/elaboration_type"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"function"},"parameters":{"items":{"$ref":"#/$defs/elaboration_type"},"minItems":1,"type":"array"},"result":{"$ref":"#/$defs/elaboration_type"}},"required":["kind","parameters","result"],"type":"object"},{"additionalProperties":false,"properties":{"key":{"$ref":"#/$defs/elaboration_type"},"kind":{"const":"map"},"value":{"$ref":"#/$defs/elaboration_type"}},"required":["key","kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"element":{"$ref":"#/$defs/elaboration_type"},"kind":{"const":"set"}},"required":["element","kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"contract_violation"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"reasoning_failure"}},"required":["kind"],"type":"object"}]},"formula":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"term"},"term":{"$ref":"#/$defs/elaboration_term"}},"required":["kind","term"],"type":"object"},{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/elaboration_term"},"type":"array"},"helper":{"enum":["all","complete","preserves","reaches","search_ok","sound","star"]},"kind":{"const":"helper"}},"required":["arguments","helper","kind"],"type":"object"},{"additionalProperties":false,"properties":{"conclusion":{"$ref":"#/$defs/formula"},"kind":{"const":"implies"},"premise":{"$ref":"#/$defs/formula"}},"required":["conclusion","kind","premise"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"true"}},"required":["kind"],"type":"object"}]},"generatedTheorem":{"additionalProperties":false,"properties":{"name":{"minLength":1,"type":"string"},"parameters":{"items":{"$ref":"#/$defs/elaboration_parameter"},"type":"array"},"statement":{"$ref":"#/$defs/formula"},"template":{"enum":["accept_sound","conclude_accept","conclude_sound","explained_forward","explained_generate","explained_search","extend","fire_cases","next_progress","next_sound","replay_fire","replay_sound","run_invariant","search_count","search_growth","search_peak","search_step","step_count","step_none","step_some","step_trace","successors_bound","successors_free","term","try_count","try_sound","unfold","verdict_forward","verdict_generate","verdict_search","verify_sound"]},"type_parameters":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array"}},"required":["name","parameters","statement","template","type_parameters"],"type":"object"},"module":{"additionalProperties":false,"properties":{"core":{"$ref":"#/$defs/semanticValue"},"declarations":{"items":{"$ref":"#/$defs/declaration"},"type":"array"},"glossary":{"items":{"type":"string"},"type":"array"},"imports":{"items":{"type":"string"},"type":"array"},"lean_module":{"minLength":1,"type":"string"},"linked_ir":{"$ref":"#/$defs/semanticValue"},"name":{"minLength":1,"type":"string"},"semantic":{"$ref":"#/$defs/semanticModule"},"source":{"$ref":"#/$defs/source"},"visible_packages":{"items":{"type":"string"},"type":"array"}},"required":["declarations","glossary","imports","lean_module","linked_ir","name","source","visible_packages"],"type":"object"},"obligation":{"additionalProperties":false,"properties":{"parameters":{"items":{"$ref":"#/$defs/elaboration_parameter"},"type":"array"},"role":{"minLength":1,"type":"string"},"statement":{"$ref":"#/$defs/elaboration_term"},"theorem":{"$ref":"#/$defs/elaboration_member"},"type_parameters":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array"}},"required":["parameters","role","statement","theorem","type_parameters"],"type":"object"},"origin":{"additionalProperties":false,"properties":{"proof":{"$ref":"#/$defs/range"},"proof_steps":{"items":{"$ref":"#/$defs/range"},"type":"array"},"sentence":{"$ref":"#/$defs/range"},"whole":{"$ref":"#/$defs/range"}},"required":["proof_steps","sentence","whole"],"type":"object"},"range":{"additionalProperties":false,"properties":{"end":{"minimum":0,"type":"integer"},"start":{"minimum":0,"type":"integer"}},"required":["end","start"],"type":"object"},"semanticModule":{"additionalProperties":false,"properties":{"declarations":{"items":{"$ref":"#/$defs/semantic_declaration"},"minItems":1,"type":"array"},"spec":{"const":"lexlean/semantic-module/2"}},"required":["declarations","spec"],"type":"object"},"semanticValue":{"oneOf":[{"type":"boolean"},{"type":"integer"},{"type":"string"},{"items":{"$ref":"#/$defs/semanticValue"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/semanticValue"},"type":"object"}]},"semantic_artifactSchema":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"bytes"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"element":{"enum":["int16","int32","int64","int8","uint16","uint32","uint64","uint8"]},"kind":{"const":"int_tensor"},"shape":{"items":{"minimum":1,"type":"integer"},"minItems":1,"type":"array"}},"required":["element","kind","shape"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"utf8_lines"}},"required":["kind"],"type":"object"}]},"semantic_assignment":{"additionalProperties":false,"properties":{"field":{"$ref":"#/$defs/semantic_name"},"value":{"$ref":"#/$defs/semantic_term"}},"required":["field","value"],"type":"object"},"semantic_branch":{"additionalProperties":false,"properties":{"binders":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true},"body":{"$ref":"#/$defs/semantic_term"},"constructor":{"$ref":"#/$defs/semantic_member"}},"required":["binders","body","constructor"],"type":"object"},"semantic_claim":{"oneOf":[{"additionalProperties":false,"properties":{"agreements":{"minimum":0,"type":"integer"},"comparison":{"$ref":"#/$defs/semantic_member"},"comparison_sound":{"$ref":"#/$defs/semantic_member"},"dataset":{"$ref":"#/$defs/semantic_member"},"examples":{"minimum":0,"type":"integer"},"kind":{"const":"dataset_agreement"},"theorem":{"$ref":"#/$defs/semantic_member"}},"required":["agreements","comparison","comparison_sound","dataset","examples","kind","theorem"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"equivalent_to"},"reference":{"$ref":"#/$defs/semantic_modelUse"},"theorem":{"$ref":"#/$defs/semantic_member"}},"required":["kind","reference","theorem"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"initial_invariant"},"theorem":{"$ref":"#/$defs/semantic_member"}},"required":["kind","theorem"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"preserves_invariant"},"theorem":{"$ref":"#/$defs/semantic_member"}},"required":["kind","theorem"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"satisfies_contract"},"theorem":{"$ref":"#/$defs/semantic_member"}},"required":["kind","theorem"],"type":"object"}]},"semantic_compositeForm":{"oneOf":[{"additionalProperties":false,"properties":{"junctions":{"items":{"$ref":"#/$defs/semantic_compositeJunction"},"minItems":1,"type":"array"},"kind":{"const":"sequence"},"stages":{"items":{"$ref":"#/$defs/semantic_modelUse"},"minItems":2,"type":"array"}},"required":["junctions","kind","stages"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"fanout"},"left":{"$ref":"#/$defs/semantic_modelUse"},"right":{"$ref":"#/$defs/semantic_modelUse"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"product"},"left":{"$ref":"#/$defs/semantic_modelUse"},"right":{"$ref":"#/$defs/semantic_modelUse"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"else":{"$ref":"#/$defs/semantic_modelUse"},"guard":{"$ref":"#/$defs/semantic_term"},"kind":{"const":"branch"},"then":{"$ref":"#/$defs/semantic_modelUse"}},"required":["else","guard","kind","then"],"type":"object"},{"additionalProperties":false,"properties":{"junction":{"$ref":"#/$defs/semantic_compositeJunction"},"kind":{"const":"scan"},"stage":{"$ref":"#/$defs/semantic_modelUse"}},"required":["junction","kind","stage"],"type":"object"}]},"semantic_compositeJunction":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"unconditional"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/semantic_member"},"kind":{"const":"proved"}},"required":["evidence","kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"checked"}},"required":["kind"],"type":"object"}]},"semantic_constructor":{"additionalProperties":false,"properties":{"fields":{"items":{"$ref":"#/$defs/semantic_type"},"type":"array"},"name":{"$ref":"#/$defs/semantic_name"}},"required":["fields","name"],"type":"object"},"semantic_contractState":{"additionalProperties":false,"properties":{"name":{"$ref":"#/$defs/semantic_name"},"next":{"$ref":"#/$defs/semantic_name"},"type":{"$ref":"#/$defs/semantic_type"}},"required":["name","next","type"],"type":"object"},"semantic_contractValidator":{"additionalProperties":false,"properties":{"complete":{"$ref":"#/$defs/semantic_member"},"predicate":{"enum":["invariant","postcondition","precondition"]},"sound":{"$ref":"#/$defs/semantic_member"},"validator":{"$ref":"#/$defs/semantic_member"}},"required":["predicate","sound","validator"],"type":"object"},"semantic_declaration":{"oneOf":[{"additionalProperties":false,"properties":{"fields":{"items":{"$ref":"#/$defs/semantic_field"},"minItems":1,"type":"array"},"kind":{"const":"structure"},"name":{"$ref":"#/$defs/semantic_name"},"parameters":{"items":{"$ref":"#/$defs/semantic_parameter"},"type":"array"},"type_parameters":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true}},"required":["fields","kind","name","parameters","type_parameters"],"type":"object"},{"additionalProperties":false,"properties":{"fields":{"items":{"$ref":"#/$defs/semantic_field"},"minItems":1,"type":"array"},"kind":{"const":"class"},"name":{"$ref":"#/$defs/semantic_name"},"parameters":{"items":{"$ref":"#/$defs/semantic_parameter"},"type":"array"},"type_parameters":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true}},"required":["fields","kind","name","parameters","type_parameters"],"type":"object"},{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/semantic_type"},"type":"array"},"class":{"$ref":"#/$defs/semantic_member"},"fields":{"items":{"$ref":"#/$defs/semantic_assignment"},"minItems":1,"type":"array"},"kind":{"const":"instance"},"name":{"$ref":"#/$defs/semantic_name"},"priority":{"const":1000}},"required":["arguments","class","fields","kind","name","priority"],"type":"object"},{"additionalProperties":false,"properties":{"constructors":{"items":{"$ref":"#/$defs/semantic_constructor"},"minItems":1,"type":"array"},"kind":{"const":"inductive"},"mutual":{"$ref":"#/$defs/semantic_name"},"name":{"$ref":"#/$defs/semantic_name"},"parameters":{"items":{"$ref":"#/$defs/semantic_parameter"},"type":"array"},"type_parameters":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true}},"required":["constructors","kind","name","parameters","type_parameters"],"type":"object"},{"additionalProperties":false,"properties":{"axioms":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true},"body":{"$ref":"#/$defs/semantic_term"},"executable":{"type":"boolean"},"kind":{"const":"definition"},"mutual":{"$ref":"#/$defs/semantic_name"},"name":{"$ref":"#/$defs/semantic_name"},"parameters":{"items":{"$ref":"#/$defs/semantic_parameter"},"type":"array"},"production":{"$ref":"#/$defs/semantic_production"},"recursive_argument":{"$ref":"#/$defs/semantic_name"},"result":{"$ref":"#/$defs/semantic_type"},"termination":{"additionalProperties":false,"properties":{"evidence":{"items":{"$ref":"#/$defs/semantic_member"},"minItems":1,"type":"array"},"measure":{"$ref":"#/$defs/semantic_term"}},"required":["evidence","measure"],"type":"object"},"type_parameters":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true}},"required":["body","kind","name","parameters","result"],"type":"object"},{"additionalProperties":false,"properties":{"axioms":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true},"kind":{"const":"theorem"},"name":{"$ref":"#/$defs/semantic_name"},"parameters":{"items":{"$ref":"#/$defs/semantic_parameter"},"type":"array"},"proof":{"$ref":"#/$defs/semantic_proof"},"statement":{"$ref":"#/$defs/semantic_term"},"type_parameters":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true}},"required":["kind","name","parameters","proof","statement"],"type":"object"},{"additionalProperties":false,"properties":{"axioms":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true},"kind":{"const":"artifact"},"length":{"minimum":0,"type":"integer"},"name":{"$ref":"#/$defs/semantic_name"},"role":{"enum":["binary","dataset","parameters","table","vocabulary"]},"schema":{"$ref":"#/$defs/semantic_artifactSchema"},"sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"},"type":{"$ref":"#/$defs/semantic_type"}},"required":["kind","length","name","role","schema","sha256","type"],"type":"object"},{"additionalProperties":false,"properties":{"axioms":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true},"input":{"$ref":"#/$defs/semantic_modelBinder"},"invariant":{"$ref":"#/$defs/semantic_member"},"kind":{"const":"contract"},"name":{"$ref":"#/$defs/semantic_name"},"output":{"$ref":"#/$defs/semantic_modelBinder"},"postcondition":{"$ref":"#/$defs/semantic_member"},"precondition":{"$ref":"#/$defs/semantic_member"},"state":{"$ref":"#/$defs/semantic_contractState"},"type_parameters":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true},"validators":{"items":{"$ref":"#/$defs/semantic_contractValidator"},"type":"array"}},"required":["input","kind","name","output"],"type":"object"},{"additionalProperties":false,"properties":{"axioms":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true},"descriptor":{"$ref":"#/$defs/semantic_descriptor"},"executable":{"type":"boolean"},"input":{"$ref":"#/$defs/semantic_modelBinder"},"kind":{"const":"realization"},"name":{"$ref":"#/$defs/semantic_name"},"output":{"$ref":"#/$defs/semantic_type"},"state":{"$ref":"#/$defs/semantic_realizationState"},"type_parameters":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true}},"required":["descriptor","input","kind","name","output"],"type":"object"},{"additionalProperties":false,"properties":{"axioms":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true},"claims":{"items":{"$ref":"#/$defs/semantic_claim"},"minItems":1,"type":"array"},"contract":{"$ref":"#/$defs/semantic_modelUse"},"kind":{"const":"evidence"},"name":{"$ref":"#/$defs/semantic_name"},"realization":{"$ref":"#/$defs/semantic_modelUse"},"type_parameters":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true}},"required":["claims","contract","kind","name","realization"],"type":"object"},{"additionalProperties":false,"properties":{"axioms":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true},"contract":{"$ref":"#/$defs/semantic_modelUse"},"entry":{"items":{"$ref":"#/$defs/semantic_member"},"type":"array"},"evidence":{"items":{"$ref":"#/$defs/semantic_modelUse"},"type":"array"},"kind":{"const":"model"},"name":{"$ref":"#/$defs/semantic_name"},"realization":{"$ref":"#/$defs/semantic_modelUse"},"type_parameters":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true}},"required":["contract","kind","name","realization"],"type":"object"},{"additionalProperties":false,"properties":{"axioms":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true},"invariant":{"$ref":"#/$defs/semantic_logicInvariant"},"kind":{"const":"logic"},"name":{"$ref":"#/$defs/semantic_name"},"ranking":{"$ref":"#/$defs/semantic_member"},"relation":{"$ref":"#/$defs/semantic_member"},"state":{"$ref":"#/$defs/semantic_contractState"},"type_parameters":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true}},"required":["kind","name","relation","state"],"type":"object"},{"additionalProperties":false,"properties":{"axioms":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true},"binding":{"$ref":"#/$defs/semantic_ruleBinding"},"conclusion":{"$ref":"#/$defs/semantic_term"},"executable":{"type":"boolean"},"guard":{"$ref":"#/$defs/semantic_term"},"kind":{"const":"inference_rule"},"logic":{"$ref":"#/$defs/semantic_modelUse"},"name":{"$ref":"#/$defs/semantic_name"},"progress":{"$ref":"#/$defs/semantic_member"},"soundness":{"$ref":"#/$defs/semantic_member"},"type_parameters":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true}},"required":["conclusion","guard","kind","logic","name","soundness"],"type":"object"},{"additionalProperties":false,"properties":{"axioms":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true},"candidate":{"$ref":"#/$defs/semantic_modelBinder"},"check":{"$ref":"#/$defs/semantic_member"},"complete":{"$ref":"#/$defs/semantic_member"},"kind":{"const":"verifier"},"name":{"$ref":"#/$defs/semantic_name"},"sound":{"$ref":"#/$defs/semantic_member"},"specification":{"$ref":"#/$defs/semantic_member"},"subject":{"$ref":"#/$defs/semantic_modelBinder"},"type_parameters":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true}},"required":["candidate","check","kind","name","sound","specification","subject"],"type":"object"},{"additionalProperties":false,"properties":{"answer":{"$ref":"#/$defs/semantic_reasoningAnswer"},"axioms":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true},"claims":{"items":{"$ref":"#/$defs/semantic_reasoningClaim"},"type":"array"},"executable":{"type":"boolean"},"kind":{"const":"reasoner"},"logic":{"$ref":"#/$defs/semantic_modelUse"},"name":{"$ref":"#/$defs/semantic_name"},"observation":{"$ref":"#/$defs/semantic_modelBinder"},"observe":{"$ref":"#/$defs/semantic_term"},"rules":{"items":{"$ref":"#/$defs/semantic_modelUse"},"type":"array"},"strategy":{"$ref":"#/$defs/semantic_reasoningStrategy"},"type_parameters":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true},"verifier":{"$ref":"#/$defs/semantic_modelUse"}},"required":["kind","name","observation","rules","strategy","verifier"],"type":"object"}]},"semantic_descriptor":{"oneOf":[{"additionalProperties":false,"properties":{"body":{"$ref":"#/$defs/semantic_term"},"kind":{"const":"deterministic"}},"required":["body","kind"],"type":"object"},{"additionalProperties":false,"properties":{"default":{"$ref":"#/$defs/semantic_term"},"kind":{"const":"rule"},"rules":{"items":{"$ref":"#/$defs/semantic_realizationRule"},"minItems":1,"type":"array"}},"required":["default","kind","rules"],"type":"object"},{"additionalProperties":false,"properties":{"bias":{"$ref":"#/$defs/semantic_member"},"features":{"$ref":"#/$defs/semantic_term"},"kind":{"const":"statistical"},"labels":{"items":{"$ref":"#/$defs/semantic_term"},"minItems":1,"type":"array"},"scheme":{"const":"linear_scoring"},"weights":{"$ref":"#/$defs/semantic_member"},"width":{"minimum":1,"type":"integer"},"width_evidence":{"$ref":"#/$defs/semantic_member"}},"required":["bias","features","kind","labels","scheme","weights","width","width_evidence"],"type":"object"},{"additionalProperties":false,"properties":{"architecture":{"const":"integer_feedforward"},"decoder":{"$ref":"#/$defs/semantic_neuralDecoder"},"encoder":{"$ref":"#/$defs/semantic_term"},"kind":{"const":"neural"},"layers":{"items":{"$ref":"#/$defs/semantic_neuralLayer"},"minItems":1,"type":"array"},"width":{"minimum":1,"type":"integer"},"width_evidence":{"$ref":"#/$defs/semantic_member"}},"required":["architecture","decoder","encoder","kind","layers","width","width_evidence"],"type":"object"},{"additionalProperties":false,"properties":{"form":{"$ref":"#/$defs/semantic_compositeForm"},"kind":{"const":"composite"}},"required":["form","kind"],"type":"object"}]},"semantic_field":{"additionalProperties":false,"properties":{"name":{"$ref":"#/$defs/semantic_name"},"type":{"$ref":"#/$defs/semantic_type"}},"required":["name","type"],"type":"object"},"semantic_logicInvariant":{"additionalProperties":false,"properties":{"predicate":{"$ref":"#/$defs/semantic_member"},"preserves":{"$ref":"#/$defs/semantic_member"}},"required":["predicate","preserves"],"type":"object"},"semantic_member":{"additionalProperties":false,"properties":{"module":{"$ref":"#/$defs/semantic_name"},"name":{"$ref":"#/$defs/semantic_name"}},"required":["name"],"type":"object"},"semantic_modelBinder":{"additionalProperties":false,"properties":{"name":{"$ref":"#/$defs/semantic_name"},"type":{"$ref":"#/$defs/semantic_type"}},"required":["name","type"],"type":"object"},"semantic_modelUse":{"additionalProperties":false,"properties":{"member":{"$ref":"#/$defs/semantic_member"},"type_arguments":{"items":{"$ref":"#/$defs/semantic_type"},"type":"array"}},"required":["member"],"type":"object"},"semantic_name":{"pattern":"^[A-Za-z][A-Za-z0-9_]*(\\.[A-Za-z][A-Za-z0-9_]*)*$","type":"string"},"semantic_neuralDecoder":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"argmax"},"labels":{"items":{"$ref":"#/$defs/semantic_term"},"minItems":1,"type":"array"}},"required":["kind","labels"],"type":"object"},{"additionalProperties":false,"properties":{"binder":{"$ref":"#/$defs/semantic_name"},"body":{"$ref":"#/$defs/semantic_term"},"kind":{"const":"function"}},"required":["binder","body","kind"],"type":"object"}]},"semantic_neuralLayer":{"oneOf":[{"additionalProperties":false,"properties":{"bias":{"$ref":"#/$defs/semantic_member"},"inputs":{"minimum":1,"type":"integer"},"kind":{"const":"dense"},"outputs":{"minimum":1,"type":"integer"},"weights":{"$ref":"#/$defs/semantic_member"}},"required":["bias","inputs","kind","outputs","weights"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"relu"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"requantize"},"maximum":{"oneOf":[{"const":"0"},{"pattern":"^[1-9][0-9]*$","type":"string"},{"pattern":"^-[1-9][0-9]*$","type":"string"}]},"minimum":{"oneOf":[{"const":"0"},{"pattern":"^[1-9][0-9]*$","type":"string"},{"pattern":"^-[1-9][0-9]*$","type":"string"}]},"shift":{"maximum":4096,"minimum":0,"type":"integer"}},"required":["kind","maximum","minimum","shift"],"type":"object"}]},"semantic_parameter":{"additionalProperties":false,"properties":{"name":{"$ref":"#/$defs/semantic_name"},"type":{"$ref":"#/$defs/semantic_type"}},"required":["name","type"],"type":"object"},"semantic_production":{"additionalProperties":false,"properties":{"effects":{"items":{"enum":["allocation","overflow","recursion"]},"type":"array","uniqueItems":true},"targets":{"items":{"enum":["rust-core","rust-std"]},"minItems":1,"type":"array","uniqueItems":true}},"required":["effects","targets"],"type":"object"},"semantic_proof":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"reflexivity"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"decide"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"definitions":{"items":{"$ref":"#/$defs/semantic_member"},"minItems":1,"type":"array","uniqueItems":true},"kind":{"const":"simplify"}},"required":["definitions","kind"],"type":"object"},{"additionalProperties":false,"properties":{"branches":{"items":{"$ref":"#/$defs/semantic_proof"},"minItems":1,"type":"array"},"kind":{"const":"constructor"}},"required":["branches","kind"],"type":"object"},{"additionalProperties":false,"properties":{"branches":{"items":{"$ref":"#/$defs/semantic_proofBranch"},"minItems":1,"type":"array"},"kind":{"const":"cases"},"scrutinee":{"$ref":"#/$defs/semantic_name"}},"required":["branches","kind","scrutinee"],"type":"object"},{"additionalProperties":false,"properties":{"branches":{"items":{"$ref":"#/$defs/semantic_proofBranch"},"minItems":1,"type":"array"},"generalizing":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true},"kind":{"const":"induction"},"scrutinee":{"$ref":"#/$defs/semantic_name"}},"required":["branches","kind","scrutinee"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"congruence"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"boolean_reflection"},"reflection":{"$ref":"#/$defs/semantic_reflection"}},"required":["kind","reflection"],"type":"object"},{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/semantic_term"},"type":"array"},"kind":{"const":"law"},"name":{"$ref":"#/$defs/semantic_name"},"premises":{"items":{"$ref":"#/$defs/semantic_member"},"type":"array"},"type_arguments":{"items":{"$ref":"#/$defs/semantic_type"},"type":"array"}},"required":["arguments","kind","name"],"type":"object"},{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/semantic_term"},"type":"array"},"kind":{"const":"apply"},"theorem":{"$ref":"#/$defs/semantic_member"},"type_arguments":{"items":{"$ref":"#/$defs/semantic_type"},"type":"array"}},"required":["arguments","kind","theorem"],"type":"object"},{"additionalProperties":false,"properties":{"definitions":{"items":{"$ref":"#/$defs/semantic_member"},"minItems":1,"type":"array","uniqueItems":true},"kind":{"const":"linear_arithmetic"}},"required":["kind"],"type":"object"}]},"semantic_proofBranch":{"additionalProperties":false,"properties":{"binders":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true},"constructor":{"$ref":"#/$defs/semantic_name"},"proof":{"$ref":"#/$defs/semantic_proof"}},"required":["binders","constructor","proof"],"type":"object"},"semantic_realizationRule":{"additionalProperties":false,"properties":{"action":{"$ref":"#/$defs/semantic_term"},"guard":{"$ref":"#/$defs/semantic_term"},"name":{"$ref":"#/$defs/semantic_name"}},"required":["action","guard","name"],"type":"object"},"semantic_realizationState":{"additionalProperties":false,"properties":{"initial":{"$ref":"#/$defs/semantic_term"},"name":{"$ref":"#/$defs/semantic_name"},"type":{"$ref":"#/$defs/semantic_type"}},"required":["initial","name","type"],"type":"object"},"semantic_reasoningAnswer":{"additionalProperties":false,"properties":{"name":{"$ref":"#/$defs/semantic_name"},"type":{"$ref":"#/$defs/semantic_type"},"value":{"$ref":"#/$defs/semantic_term"}},"required":["name","type","value"],"type":"object"},"semantic_reasoningClaim":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"answer_correct"},"theorem":{"$ref":"#/$defs/semantic_member"}},"required":["kind","theorem"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"initial_invariant"},"theorem":{"$ref":"#/$defs/semantic_member"}},"required":["kind","theorem"],"type":"object"},{"additionalProperties":false,"properties":{"initial":{"$ref":"#/$defs/semantic_member"},"kind":{"const":"observation_invariant"},"predicate":{"$ref":"#/$defs/semantic_member"},"preserved":{"$ref":"#/$defs/semantic_member"}},"required":["initial","kind","predicate","preserved"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"terminates"},"theorem":{"$ref":"#/$defs/semantic_member"}},"required":["kind","theorem"],"type":"object"}]},"semantic_reasoningStrategy":{"oneOf":[{"additionalProperties":false,"properties":{"fuel":{"$ref":"#/$defs/semantic_term"},"kind":{"const":"forward"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"budget":{"$ref":"#/$defs/semantic_term"},"generator":{"$ref":"#/$defs/semantic_term"},"kind":{"const":"generate_and_verify"}},"required":["generator","kind"],"type":"object"},{"additionalProperties":false,"properties":{"deduplicate":{"type":"boolean"},"frontier":{"$ref":"#/$defs/semantic_term"},"fuel":{"$ref":"#/$defs/semantic_term"},"kind":{"const":"search"},"order":{"enum":["breadth_first","depth_first"]}},"required":["kind","order"],"type":"object"}]},"semantic_reflection":{"oneOf":[{"additionalProperties":false,"properties":{"boolean_definition":{"$ref":"#/$defs/semantic_member"},"comparison":{"$ref":"#/$defs/semantic_reflectionComparison"},"kind":{"const":"list"},"parameter":{"$ref":"#/$defs/semantic_name"},"proposition_definition":{"$ref":"#/$defs/semantic_member"},"values":{"$ref":"#/$defs/semantic_name"}},"required":["boolean_definition","comparison","kind","parameter","proposition_definition","values"],"type":"object"},{"additionalProperties":false,"properties":{"boolean_definition":{"$ref":"#/$defs/semantic_member"},"fields":{"items":{"$ref":"#/$defs/semantic_reflectionField"},"minItems":1,"type":"array"},"kind":{"const":"record"},"proposition_definition":{"$ref":"#/$defs/semantic_member"},"record":{"$ref":"#/$defs/semantic_name"}},"required":["boolean_definition","fields","kind","proposition_definition","record"],"type":"object"}]},"semantic_reflectionComparison":{"enum":["nat_beq","nat_blt"]},"semantic_reflectionField":{"additionalProperties":false,"properties":{"expected":{"oneOf":[{"const":"0"},{"pattern":"^[1-9][0-9]*$","type":"string"}]},"field":{"$ref":"#/$defs/semantic_name"}},"required":["expected","field"],"type":"object"},"semantic_ruleBinding":{"additionalProperties":false,"properties":{"candidates":{"$ref":"#/$defs/semantic_term"},"name":{"$ref":"#/$defs/semantic_name"},"type":{"$ref":"#/$defs/semantic_type"}},"required":["candidates","name","type"],"type":"object"},"semantic_term":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"var"},"name":{"$ref":"#/$defs/semantic_name"}},"required":["kind","name"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"nat"},"value":{"oneOf":[{"const":"0"},{"pattern":"^[1-9][0-9]*$","type":"string"}]}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"bool"},"value":{"type":"boolean"}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"integer"},"representation":{"enum":["int","int8","int16","int32","int64"]},"value":{"oneOf":[{"const":"0"},{"pattern":"^[1-9][0-9]*$","type":"string"},{"pattern":"^-[1-9][0-9]*$","type":"string"}]}},"required":["kind","representation","value"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"integer"},"representation":{"enum":["uint8","uint16","uint32","uint64"]},"value":{"oneOf":[{"const":"0"},{"pattern":"^[1-9][0-9]*$","type":"string"}]}},"required":["kind","representation","value"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"string"},"value":{"type":"string"}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"hex":{"pattern":"^([0-9a-f]{2})*$","type":"string"},"kind":{"const":"bytes"}},"required":["hex","kind"],"type":"object"},{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/semantic_term"},"type":"array"},"kind":{"const":"primitive"},"operation":{"enum":["append","bit_and","bit_not","bit_or","bit_xor","checked_add","checked_convert","checked_multiply","checked_negate","checked_quotient","checked_subtract","compare_bytes","equal","format_decimal","graph_reachable","graph_successors","graph_topological","index","iterate","iterate_until","join","length","less_than","list_fold","map_contains","map_entries","map_fold","map_insert","map_keys","map_lookup","map_remove","map_size","map_values","multiply","negate","parse_decimal","quotient","remainder","set_contains","set_difference","set_elements","set_fold","set_insert","set_intersection","set_remove","set_size","set_union","shift_left","shift_right","slice","split_exact","subtract","utf8_decode","utf8_encode"]},"result":{"$ref":"#/$defs/semantic_type"}},"required":["arguments","kind","operation","result"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"unit"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"element":{"$ref":"#/$defs/semantic_type"},"kind":{"const":"nil"}},"required":["element","kind"],"type":"object"},{"additionalProperties":false,"properties":{"head":{"$ref":"#/$defs/semantic_term"},"kind":{"const":"cons"},"tail":{"$ref":"#/$defs/semantic_term"}},"required":["head","kind","tail"],"type":"object"},{"additionalProperties":false,"properties":{"fields":{"items":{"$ref":"#/$defs/semantic_assignment"},"type":"array"},"kind":{"const":"record"},"type":{"$ref":"#/$defs/semantic_member"},"type_arguments":{"items":{"$ref":"#/$defs/semantic_type"},"type":"array"}},"required":["fields","kind","type"],"type":"object"},{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/semantic_term"},"type":"array"},"constructor":{"$ref":"#/$defs/semantic_member"},"kind":{"const":"constructor"},"type_arguments":{"items":{"$ref":"#/$defs/semantic_type"},"type":"array"}},"required":["arguments","constructor","kind"],"type":"object"},{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/semantic_type"},"type":"array"},"class":{"$ref":"#/$defs/semantic_member"},"kind":{"const":"instance_value"},"resolved":{"$ref":"#/$defs/semantic_member"}},"required":["arguments","class","kind","resolved"],"type":"object"},{"additionalProperties":false,"properties":{"field":{"$ref":"#/$defs/semantic_name"},"kind":{"const":"project"},"value":{"$ref":"#/$defs/semantic_term"}},"required":["field","kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/semantic_term"},"type":"array"},"function":{"$ref":"#/$defs/semantic_member"},"kind":{"const":"call"},"type_arguments":{"items":{"$ref":"#/$defs/semantic_type"},"type":"array"}},"required":["arguments","function","kind"],"type":"object"},{"additionalProperties":false,"properties":{"condition":{"$ref":"#/$defs/semantic_term"},"else_value":{"$ref":"#/$defs/semantic_term"},"kind":{"const":"if"},"then_value":{"$ref":"#/$defs/semantic_term"}},"required":["condition","else_value","kind","then_value"],"type":"object"},{"additionalProperties":false,"properties":{"branches":{"items":{"$ref":"#/$defs/semantic_branch"},"minItems":1,"type":"array"},"kind":{"const":"match"},"scrutinee":{"$ref":"#/$defs/semantic_term"}},"required":["branches","kind","scrutinee"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"eq"},"left":{"$ref":"#/$defs/semantic_term"},"right":{"$ref":"#/$defs/semantic_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"le"},"left":{"$ref":"#/$defs/semantic_term"},"right":{"$ref":"#/$defs/semantic_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"lt"},"left":{"$ref":"#/$defs/semantic_term"},"right":{"$ref":"#/$defs/semantic_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"add"},"left":{"$ref":"#/$defs/semantic_term"},"right":{"$ref":"#/$defs/semantic_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"beq"},"left":{"$ref":"#/$defs/semantic_term"},"right":{"$ref":"#/$defs/semantic_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"ble"},"left":{"$ref":"#/$defs/semantic_term"},"right":{"$ref":"#/$defs/semantic_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"blt"},"left":{"$ref":"#/$defs/semantic_term"},"right":{"$ref":"#/$defs/semantic_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"and"},"left":{"$ref":"#/$defs/semantic_term"},"right":{"$ref":"#/$defs/semantic_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"or"},"left":{"$ref":"#/$defs/semantic_term"},"right":{"$ref":"#/$defs/semantic_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"iff"},"left":{"$ref":"#/$defs/semantic_term"},"right":{"$ref":"#/$defs/semantic_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"conclusion":{"$ref":"#/$defs/semantic_term"},"kind":{"const":"implies"},"premise":{"$ref":"#/$defs/semantic_term"}},"required":["conclusion","kind","premise"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"not"},"value":{"$ref":"#/$defs/semantic_term"}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"binder":{"$ref":"#/$defs/semantic_parameter"},"body":{"$ref":"#/$defs/semantic_term"},"kind":{"const":"forall"}},"required":["binder","body","kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"prop_and"},"left":{"$ref":"#/$defs/semantic_term"},"right":{"$ref":"#/$defs/semantic_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"binder":{"$ref":"#/$defs/semantic_parameter"},"body":{"$ref":"#/$defs/semantic_term"},"kind":{"const":"let"},"value":{"$ref":"#/$defs/semantic_term"}},"required":["binder","body","kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"pair"},"left":{"$ref":"#/$defs/semantic_term"},"right":{"$ref":"#/$defs/semantic_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"first"},"value":{"$ref":"#/$defs/semantic_term"}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"second"},"value":{"$ref":"#/$defs/semantic_term"}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"body":{"$ref":"#/$defs/semantic_term"},"captures":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true},"kind":{"const":"lambda"},"parameters":{"items":{"$ref":"#/$defs/semantic_parameter"},"minItems":1,"type":"array"}},"required":["body","captures","kind","parameters"],"type":"object"},{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/semantic_term"},"minItems":1,"type":"array"},"function":{"$ref":"#/$defs/semantic_term"},"kind":{"const":"apply"}},"required":["arguments","function","kind"],"type":"object"},{"additionalProperties":false,"properties":{"function":{"$ref":"#/$defs/semantic_member"},"kind":{"const":"function_ref"},"type_arguments":{"items":{"$ref":"#/$defs/semantic_type"},"type":"array"}},"required":["function","kind"],"type":"object"},{"additionalProperties":false,"properties":{"entries":{"items":{"additionalProperties":false,"properties":{"key":{"$ref":"#/$defs/semantic_term"},"value":{"$ref":"#/$defs/semantic_term"}},"required":["key","value"],"type":"object"},"type":"array"},"key":{"$ref":"#/$defs/semantic_type"},"kind":{"const":"map_literal"},"value":{"$ref":"#/$defs/semantic_type"}},"required":["entries","key","kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"element":{"$ref":"#/$defs/semantic_type"},"elements":{"items":{"$ref":"#/$defs/semantic_term"},"type":"array"},"kind":{"const":"set_literal"}},"required":["element","elements","kind"],"type":"object"},{"additionalProperties":false,"properties":{"edges":{"items":{"additionalProperties":false,"properties":{"source":{"$ref":"#/$defs/semantic_term"},"target":{"$ref":"#/$defs/semantic_term"}},"required":["source","target"],"type":"object"},"type":"array"},"kind":{"const":"graph_literal"},"node":{"$ref":"#/$defs/semantic_type"},"nodes":{"items":{"$ref":"#/$defs/semantic_term"},"type":"array"}},"required":["edges","kind","node","nodes"],"type":"object"},{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/semantic_term"},"type":"array"},"checks":{"items":{"enum":["input_invariant","output_invariant","postcondition","precondition"]},"type":"array","uniqueItems":true},"kind":{"const":"checked_apply"},"model":{"$ref":"#/$defs/semantic_member"},"type_arguments":{"items":{"$ref":"#/$defs/semantic_type"},"type":"array"}},"required":["arguments","checks","kind","model"],"type":"object"}]},"semantic_type":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"enum":["bool","bytes","int","int8","int16","int32","int64","nat","ordering","prop","string","type","uint8","uint16","uint32","uint64","unit"]}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"parameter"},"name":{"$ref":"#/$defs/semantic_name"}},"required":["kind","name"],"type":"object"},{"additionalProperties":false,"properties":{"element":{"$ref":"#/$defs/semantic_type"},"kind":{"const":"list"}},"required":["element","kind"],"type":"object"},{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/semantic_type"},"type":"array"},"kind":{"const":"named"},"member":{"$ref":"#/$defs/semantic_member"}},"required":["arguments","kind","member"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"option"},"value":{"$ref":"#/$defs/semantic_type"}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"error":{"$ref":"#/$defs/semantic_type"},"kind":{"const":"result"},"ok":{"$ref":"#/$defs/semantic_type"}},"required":["error","kind","ok"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"product"},"left":{"$ref":"#/$defs/semantic_type"},"right":{"$ref":"#/$defs/semantic_type"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"function"},"parameters":{"items":{"$ref":"#/$defs/semantic_type"},"minItems":1,"type":"array"},"result":{"$ref":"#/$defs/semantic_type"}},"required":["kind","parameters","result"],"type":"object"},{"additionalProperties":false,"properties":{"key":{"$ref":"#/$defs/semantic_type"},"kind":{"const":"map"},"value":{"$ref":"#/$defs/semantic_type"}},"required":["key","kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"element":{"$ref":"#/$defs/semantic_type"},"kind":{"const":"set"}},"required":["element","kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"contract_violation"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"reasoning_failure"}},"required":["kind"],"type":"object"}]},"source":{"additionalProperties":false,"properties":{"path":{"minLength":1,"type":"string"},"sha256":{"$ref":"#/$defs/digest"}},"required":["path","sha256"],"type":"object"}},"$id":"https://github.com/afflom/lexlean/schemas/semantic-snapshot-v2.schema.json","$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"compiler_semantics_id":{"$ref":"#/$defs/digest"},"language":{"const":"1.2"},"lexicon_closure":{"$ref":"#/$defs/semanticValue"},"modules":{"items":{"$ref":"#/$defs/module"},"type":"array"},"semantic_id":{"$ref":"#/$defs/digest"},"source_id":{"$ref":"#/$defs/digest"},"spec":{"const":"lexlean/semantic-snapshot/2"}},"required":["compiler_semantics_id","language","lexicon_closure","modules","semantic_id","source_id","spec"],"title":"LexLean language-1.2 semantic snapshot","type":"object"} +{"$defs":{"axiomPolicy":{"additionalProperties":false,"properties":{"axioms":{"items":{"type":"string"},"type":"array","uniqueItems":true},"kind":{"enum":["allow","exact","none"]}},"required":["axioms","kind"],"type":"object"},"crossCheck":{"additionalProperties":false,"properties":{"name":{"minLength":1,"type":"string"},"proof":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"theorem"},"theorem":{"$ref":"#/$defs/elaboration_member"},"type_arguments":{"items":{"$ref":"#/$defs/elaboration_type"},"type":"array"}},"required":["kind","theorem","type_arguments"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"decide"}},"required":["kind"],"type":"object"}]},"statement":{"oneOf":[{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/elaboration_term"},"type":"array"},"helper":{"minLength":1,"type":"string"},"kind":{"const":"helper"}},"required":["arguments","helper","kind"],"type":"object"},{"additionalProperties":false,"properties":{"artifact":{"$ref":"#/$defs/elaboration_name"},"element":{"enum":["int16","int32","int64","int8","uint16","uint32","uint64","uint8"]},"kind":{"const":"tensor"},"shape":{"items":{"minimum":1,"type":"integer"},"minItems":1,"type":"array"}},"required":["artifact","element","kind","shape"],"type":"object"},{"additionalProperties":false,"properties":{"artifact":{"$ref":"#/$defs/elaboration_name"},"kind":{"const":"lines"}},"required":["artifact","kind"],"type":"object"},{"additionalProperties":false,"properties":{"artifact":{"$ref":"#/$defs/elaboration_name"},"kind":{"const":"bytes"}},"required":["artifact","kind"],"type":"object"}]},"type_parameters":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array"}},"required":["name","proof","statement","type_parameters"],"type":"object"},"declaration":{"additionalProperties":false,"properties":{"alpha_id":{"$ref":"#/$defs/digest"},"axiom_policy":{"$ref":"#/$defs/axiomPolicy"},"elaboration":{"$ref":"#/$defs/elaboration"},"kind":{"enum":["abbrev","artifact","class","constructor","contract","corollary","definition","evidence","inductive","inference_rule","instance","lemma","logic","model","predicatedefinition","realization","reasoner","recursor","structure","termdefinition","theorem","typedefinition","verifier"]},"lean_name":{"minLength":1,"type":"string"},"linked_ir":{"$ref":"#/$defs/semanticValue"},"logical_id":{"minLength":1,"type":"string"},"origin":{"$ref":"#/$defs/origin"}},"required":["axiom_policy","kind","lean_name","linked_ir","logical_id"],"type":"object"},"digest":{"pattern":"^[0-9a-f]{64}$","type":"string"},"elaboration":{"additionalProperties":false,"properties":{"alpha_ids":{"additionalProperties":{"$ref":"#/$defs/digest"},"type":"object"},"cross_checks":{"items":{"$ref":"#/$defs/crossCheck"},"type":"array"},"declarations":{"items":{"$ref":"#/$defs/elaboration_declaration"},"type":"array"},"obligations":{"items":{"$ref":"#/$defs/obligation"},"type":"array"},"required_checks":{"items":{"enum":["input_invariant","output_invariant","postcondition","precondition"]},"type":"array"},"theorems":{"items":{"$ref":"#/$defs/generatedTheorem"},"type":"array"}},"required":["alpha_ids","cross_checks","declarations","obligations","required_checks"],"type":"object"},"elaboration_artifactSchema":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"bytes"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"element":{"enum":["int16","int32","int64","int8","uint16","uint32","uint64","uint8"]},"kind":{"const":"int_tensor"},"shape":{"items":{"minimum":1,"type":"integer"},"minItems":1,"type":"array"}},"required":["element","kind","shape"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"utf8_lines"}},"required":["kind"],"type":"object"}]},"elaboration_assignment":{"additionalProperties":false,"properties":{"field":{"$ref":"#/$defs/elaboration_name"},"value":{"$ref":"#/$defs/elaboration_term"}},"required":["field","value"],"type":"object"},"elaboration_branch":{"additionalProperties":false,"properties":{"binders":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true},"body":{"$ref":"#/$defs/elaboration_term"},"constructor":{"$ref":"#/$defs/elaboration_member"}},"required":["binders","body","constructor"],"type":"object"},"elaboration_claim":{"oneOf":[{"additionalProperties":false,"properties":{"agreements":{"minimum":0,"type":"integer"},"comparison":{"$ref":"#/$defs/elaboration_member"},"comparison_sound":{"$ref":"#/$defs/elaboration_member"},"dataset":{"$ref":"#/$defs/elaboration_member"},"examples":{"minimum":0,"type":"integer"},"kind":{"const":"dataset_agreement"},"theorem":{"$ref":"#/$defs/elaboration_member"}},"required":["agreements","comparison","comparison_sound","dataset","examples","kind","theorem"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"equivalent_to"},"reference":{"$ref":"#/$defs/elaboration_modelUse"},"theorem":{"$ref":"#/$defs/elaboration_member"}},"required":["kind","reference","theorem"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"initial_invariant"},"theorem":{"$ref":"#/$defs/elaboration_member"}},"required":["kind","theorem"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"preserves_invariant"},"theorem":{"$ref":"#/$defs/elaboration_member"}},"required":["kind","theorem"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"satisfies_contract"},"theorem":{"$ref":"#/$defs/elaboration_member"}},"required":["kind","theorem"],"type":"object"}]},"elaboration_compositeForm":{"oneOf":[{"additionalProperties":false,"properties":{"junctions":{"items":{"$ref":"#/$defs/elaboration_compositeJunction"},"minItems":1,"type":"array"},"kind":{"const":"sequence"},"stages":{"items":{"$ref":"#/$defs/elaboration_modelUse"},"minItems":2,"type":"array"}},"required":["junctions","kind","stages"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"fanout"},"left":{"$ref":"#/$defs/elaboration_modelUse"},"right":{"$ref":"#/$defs/elaboration_modelUse"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"product"},"left":{"$ref":"#/$defs/elaboration_modelUse"},"right":{"$ref":"#/$defs/elaboration_modelUse"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"else":{"$ref":"#/$defs/elaboration_modelUse"},"guard":{"$ref":"#/$defs/elaboration_term"},"kind":{"const":"branch"},"then":{"$ref":"#/$defs/elaboration_modelUse"}},"required":["else","guard","kind","then"],"type":"object"},{"additionalProperties":false,"properties":{"junction":{"$ref":"#/$defs/elaboration_compositeJunction"},"kind":{"const":"scan"},"stage":{"$ref":"#/$defs/elaboration_modelUse"}},"required":["junction","kind","stage"],"type":"object"}]},"elaboration_compositeJunction":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"unconditional"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/elaboration_member"},"kind":{"const":"proved"}},"required":["evidence","kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"checked"}},"required":["kind"],"type":"object"}]},"elaboration_constructor":{"additionalProperties":false,"properties":{"fields":{"items":{"$ref":"#/$defs/elaboration_type"},"type":"array"},"name":{"$ref":"#/$defs/elaboration_name"}},"required":["fields","name"],"type":"object"},"elaboration_contractState":{"additionalProperties":false,"properties":{"name":{"$ref":"#/$defs/elaboration_name"},"next":{"$ref":"#/$defs/elaboration_name"},"type":{"$ref":"#/$defs/elaboration_type"}},"required":["name","next","type"],"type":"object"},"elaboration_contractValidator":{"additionalProperties":false,"properties":{"complete":{"$ref":"#/$defs/elaboration_member"},"predicate":{"enum":["invariant","postcondition","precondition"]},"sound":{"$ref":"#/$defs/elaboration_member"},"validator":{"$ref":"#/$defs/elaboration_member"}},"required":["predicate","sound","validator"],"type":"object"},"elaboration_declaration":{"oneOf":[{"additionalProperties":false,"properties":{"fields":{"items":{"$ref":"#/$defs/elaboration_field"},"minItems":1,"type":"array"},"kind":{"const":"structure"},"name":{"$ref":"#/$defs/elaboration_name"},"parameters":{"items":{"$ref":"#/$defs/elaboration_parameter"},"type":"array"},"type_parameters":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true}},"required":["fields","kind","name","parameters","type_parameters"],"type":"object"},{"additionalProperties":false,"properties":{"fields":{"items":{"$ref":"#/$defs/elaboration_field"},"minItems":1,"type":"array"},"kind":{"const":"class"},"name":{"$ref":"#/$defs/elaboration_name"},"parameters":{"items":{"$ref":"#/$defs/elaboration_parameter"},"type":"array"},"type_parameters":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true}},"required":["fields","kind","name","parameters","type_parameters"],"type":"object"},{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/elaboration_type"},"type":"array"},"class":{"$ref":"#/$defs/elaboration_member"},"fields":{"items":{"$ref":"#/$defs/elaboration_assignment"},"minItems":1,"type":"array"},"kind":{"const":"instance"},"name":{"$ref":"#/$defs/elaboration_name"},"priority":{"const":1000}},"required":["arguments","class","fields","kind","name","priority"],"type":"object"},{"additionalProperties":false,"properties":{"constructors":{"items":{"$ref":"#/$defs/elaboration_constructor"},"minItems":1,"type":"array"},"kind":{"const":"inductive"},"mutual":{"$ref":"#/$defs/elaboration_name"},"name":{"$ref":"#/$defs/elaboration_name"},"parameters":{"items":{"$ref":"#/$defs/elaboration_parameter"},"type":"array"},"type_parameters":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true}},"required":["constructors","kind","name","parameters","type_parameters"],"type":"object"},{"additionalProperties":false,"properties":{"axioms":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true},"body":{"$ref":"#/$defs/elaboration_term"},"executable":{"type":"boolean"},"kind":{"const":"definition"},"mutual":{"$ref":"#/$defs/elaboration_name"},"name":{"$ref":"#/$defs/elaboration_name"},"parameters":{"items":{"$ref":"#/$defs/elaboration_parameter"},"type":"array"},"production":{"$ref":"#/$defs/elaboration_production"},"recursive_argument":{"$ref":"#/$defs/elaboration_name"},"result":{"$ref":"#/$defs/elaboration_type"},"termination":{"additionalProperties":false,"properties":{"evidence":{"items":{"$ref":"#/$defs/elaboration_member"},"minItems":1,"type":"array"},"measure":{"$ref":"#/$defs/elaboration_term"}},"required":["evidence","measure"],"type":"object"},"type_parameters":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true}},"required":["body","kind","name","parameters","result"],"type":"object"},{"additionalProperties":false,"properties":{"axioms":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true},"kind":{"const":"theorem"},"name":{"$ref":"#/$defs/elaboration_name"},"parameters":{"items":{"$ref":"#/$defs/elaboration_parameter"},"type":"array"},"proof":{"$ref":"#/$defs/elaboration_proof"},"statement":{"$ref":"#/$defs/elaboration_term"},"type_parameters":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true}},"required":["kind","name","parameters","proof","statement"],"type":"object"},{"additionalProperties":false,"properties":{"axioms":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true},"kind":{"const":"artifact"},"length":{"minimum":0,"type":"integer"},"name":{"$ref":"#/$defs/elaboration_name"},"role":{"enum":["binary","dataset","parameters","table","vocabulary"]},"schema":{"$ref":"#/$defs/elaboration_artifactSchema"},"sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"},"type":{"$ref":"#/$defs/elaboration_type"}},"required":["kind","length","name","role","schema","sha256","type"],"type":"object"},{"additionalProperties":false,"properties":{"axioms":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true},"input":{"$ref":"#/$defs/elaboration_modelBinder"},"invariant":{"$ref":"#/$defs/elaboration_member"},"kind":{"const":"contract"},"name":{"$ref":"#/$defs/elaboration_name"},"output":{"$ref":"#/$defs/elaboration_modelBinder"},"postcondition":{"$ref":"#/$defs/elaboration_member"},"precondition":{"$ref":"#/$defs/elaboration_member"},"state":{"$ref":"#/$defs/elaboration_contractState"},"type_parameters":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true},"validators":{"items":{"$ref":"#/$defs/elaboration_contractValidator"},"type":"array"}},"required":["input","kind","name","output"],"type":"object"},{"additionalProperties":false,"properties":{"axioms":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true},"descriptor":{"$ref":"#/$defs/elaboration_descriptor"},"executable":{"type":"boolean"},"input":{"$ref":"#/$defs/elaboration_modelBinder"},"kind":{"const":"realization"},"name":{"$ref":"#/$defs/elaboration_name"},"output":{"$ref":"#/$defs/elaboration_type"},"state":{"$ref":"#/$defs/elaboration_realizationState"},"type_parameters":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true}},"required":["descriptor","input","kind","name","output"],"type":"object"},{"additionalProperties":false,"properties":{"axioms":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true},"claims":{"items":{"$ref":"#/$defs/elaboration_claim"},"minItems":1,"type":"array"},"contract":{"$ref":"#/$defs/elaboration_modelUse"},"kind":{"const":"evidence"},"name":{"$ref":"#/$defs/elaboration_name"},"realization":{"$ref":"#/$defs/elaboration_modelUse"},"type_parameters":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true}},"required":["claims","contract","kind","name","realization"],"type":"object"},{"additionalProperties":false,"properties":{"axioms":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true},"contract":{"$ref":"#/$defs/elaboration_modelUse"},"entry":{"items":{"$ref":"#/$defs/elaboration_member"},"type":"array"},"evidence":{"items":{"$ref":"#/$defs/elaboration_modelUse"},"type":"array"},"kind":{"const":"model"},"name":{"$ref":"#/$defs/elaboration_name"},"realization":{"$ref":"#/$defs/elaboration_modelUse"},"type_parameters":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true}},"required":["contract","kind","name","realization"],"type":"object"},{"additionalProperties":false,"properties":{"axioms":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true},"invariant":{"$ref":"#/$defs/elaboration_logicInvariant"},"kind":{"const":"logic"},"name":{"$ref":"#/$defs/elaboration_name"},"ranking":{"$ref":"#/$defs/elaboration_member"},"relation":{"$ref":"#/$defs/elaboration_member"},"state":{"$ref":"#/$defs/elaboration_contractState"},"type_parameters":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true}},"required":["kind","name","relation","state"],"type":"object"},{"additionalProperties":false,"properties":{"axioms":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true},"binding":{"$ref":"#/$defs/elaboration_ruleBinding"},"conclusion":{"$ref":"#/$defs/elaboration_term"},"executable":{"type":"boolean"},"guard":{"$ref":"#/$defs/elaboration_term"},"kind":{"const":"inference_rule"},"logic":{"$ref":"#/$defs/elaboration_modelUse"},"name":{"$ref":"#/$defs/elaboration_name"},"progress":{"$ref":"#/$defs/elaboration_member"},"soundness":{"$ref":"#/$defs/elaboration_member"},"type_parameters":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true}},"required":["conclusion","guard","kind","logic","name","soundness"],"type":"object"},{"additionalProperties":false,"properties":{"axioms":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true},"candidate":{"$ref":"#/$defs/elaboration_modelBinder"},"check":{"$ref":"#/$defs/elaboration_member"},"complete":{"$ref":"#/$defs/elaboration_member"},"kind":{"const":"verifier"},"name":{"$ref":"#/$defs/elaboration_name"},"sound":{"$ref":"#/$defs/elaboration_member"},"specification":{"$ref":"#/$defs/elaboration_member"},"subject":{"$ref":"#/$defs/elaboration_modelBinder"},"type_parameters":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true}},"required":["candidate","check","kind","name","sound","specification","subject"],"type":"object"},{"additionalProperties":false,"properties":{"answer":{"$ref":"#/$defs/elaboration_reasoningAnswer"},"axioms":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true},"claims":{"items":{"$ref":"#/$defs/elaboration_reasoningClaim"},"type":"array"},"executable":{"type":"boolean"},"kind":{"const":"reasoner"},"logic":{"$ref":"#/$defs/elaboration_modelUse"},"name":{"$ref":"#/$defs/elaboration_name"},"observation":{"$ref":"#/$defs/elaboration_modelBinder"},"observe":{"$ref":"#/$defs/elaboration_term"},"rules":{"items":{"$ref":"#/$defs/elaboration_modelUse"},"type":"array"},"strategy":{"$ref":"#/$defs/elaboration_reasoningStrategy"},"type_parameters":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true},"verifier":{"$ref":"#/$defs/elaboration_modelUse"}},"required":["kind","name","observation","rules","strategy","verifier"],"type":"object"}]},"elaboration_descriptor":{"oneOf":[{"additionalProperties":false,"properties":{"body":{"$ref":"#/$defs/elaboration_term"},"kind":{"const":"deterministic"}},"required":["body","kind"],"type":"object"},{"additionalProperties":false,"properties":{"default":{"$ref":"#/$defs/elaboration_term"},"kind":{"const":"rule"},"rules":{"items":{"$ref":"#/$defs/elaboration_realizationRule"},"minItems":1,"type":"array"}},"required":["default","kind","rules"],"type":"object"},{"additionalProperties":false,"properties":{"bias":{"$ref":"#/$defs/elaboration_member"},"features":{"$ref":"#/$defs/elaboration_term"},"kind":{"const":"statistical"},"labels":{"items":{"$ref":"#/$defs/elaboration_term"},"minItems":1,"type":"array"},"scheme":{"const":"linear_scoring"},"weights":{"$ref":"#/$defs/elaboration_member"},"width":{"minimum":1,"type":"integer"},"width_evidence":{"$ref":"#/$defs/elaboration_member"}},"required":["bias","features","kind","labels","scheme","weights","width","width_evidence"],"type":"object"},{"additionalProperties":false,"properties":{"architecture":{"const":"integer_feedforward"},"decoder":{"$ref":"#/$defs/elaboration_neuralDecoder"},"encoder":{"$ref":"#/$defs/elaboration_term"},"kind":{"const":"neural"},"layers":{"items":{"$ref":"#/$defs/elaboration_neuralLayer"},"minItems":1,"type":"array"},"width":{"minimum":1,"type":"integer"},"width_evidence":{"$ref":"#/$defs/elaboration_member"}},"required":["architecture","decoder","encoder","kind","layers","width","width_evidence"],"type":"object"},{"additionalProperties":false,"properties":{"form":{"$ref":"#/$defs/elaboration_compositeForm"},"kind":{"const":"composite"}},"required":["form","kind"],"type":"object"}]},"elaboration_field":{"additionalProperties":false,"properties":{"name":{"$ref":"#/$defs/elaboration_name"},"type":{"$ref":"#/$defs/elaboration_type"}},"required":["name","type"],"type":"object"},"elaboration_logicInvariant":{"additionalProperties":false,"properties":{"predicate":{"$ref":"#/$defs/elaboration_member"},"preserves":{"$ref":"#/$defs/elaboration_member"}},"required":["predicate","preserves"],"type":"object"},"elaboration_member":{"additionalProperties":false,"properties":{"module":{"$ref":"#/$defs/elaboration_name"},"name":{"$ref":"#/$defs/elaboration_name"}},"required":["name"],"type":"object"},"elaboration_modelBinder":{"additionalProperties":false,"properties":{"name":{"$ref":"#/$defs/elaboration_name"},"type":{"$ref":"#/$defs/elaboration_type"}},"required":["name","type"],"type":"object"},"elaboration_modelUse":{"additionalProperties":false,"properties":{"member":{"$ref":"#/$defs/elaboration_member"},"type_arguments":{"items":{"$ref":"#/$defs/elaboration_type"},"type":"array"}},"required":["member"],"type":"object"},"elaboration_name":{"description":"A name inside an elaboration. Besides every source spelling it admits the reserved spelling with two leading underscores, which only generated binders use; linking rejects it in every source module, and the source semantic_name excludes it.","pattern":"^(__)?[A-Za-z][A-Za-z0-9_]*(\\.(__)?[A-Za-z][A-Za-z0-9_]*)*$","type":"string"},"elaboration_neuralDecoder":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"argmax"},"labels":{"items":{"$ref":"#/$defs/elaboration_term"},"minItems":1,"type":"array"}},"required":["kind","labels"],"type":"object"},{"additionalProperties":false,"properties":{"binder":{"$ref":"#/$defs/elaboration_name"},"body":{"$ref":"#/$defs/elaboration_term"},"kind":{"const":"function"}},"required":["binder","body","kind"],"type":"object"}]},"elaboration_neuralLayer":{"oneOf":[{"additionalProperties":false,"properties":{"bias":{"$ref":"#/$defs/elaboration_member"},"inputs":{"minimum":1,"type":"integer"},"kind":{"const":"dense"},"outputs":{"minimum":1,"type":"integer"},"weights":{"$ref":"#/$defs/elaboration_member"}},"required":["bias","inputs","kind","outputs","weights"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"relu"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"requantize"},"maximum":{"oneOf":[{"const":"0"},{"pattern":"^[1-9][0-9]*$","type":"string"},{"pattern":"^-[1-9][0-9]*$","type":"string"}]},"minimum":{"oneOf":[{"const":"0"},{"pattern":"^[1-9][0-9]*$","type":"string"},{"pattern":"^-[1-9][0-9]*$","type":"string"}]},"shift":{"maximum":4096,"minimum":0,"type":"integer"}},"required":["kind","maximum","minimum","shift"],"type":"object"}]},"elaboration_parameter":{"additionalProperties":false,"properties":{"name":{"$ref":"#/$defs/elaboration_name"},"type":{"$ref":"#/$defs/elaboration_type"}},"required":["name","type"],"type":"object"},"elaboration_production":{"additionalProperties":false,"properties":{"effects":{"items":{"enum":["allocation","overflow","recursion"]},"type":"array","uniqueItems":true},"targets":{"items":{"enum":["rust-core","rust-std"]},"minItems":1,"type":"array","uniqueItems":true}},"required":["effects","targets"],"type":"object"},"elaboration_proof":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"reflexivity"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"decide"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"definitions":{"items":{"$ref":"#/$defs/elaboration_member"},"minItems":1,"type":"array","uniqueItems":true},"kind":{"const":"simplify"}},"required":["definitions","kind"],"type":"object"},{"additionalProperties":false,"properties":{"branches":{"items":{"$ref":"#/$defs/elaboration_proof"},"minItems":1,"type":"array"},"kind":{"const":"constructor"}},"required":["branches","kind"],"type":"object"},{"additionalProperties":false,"properties":{"branches":{"items":{"$ref":"#/$defs/elaboration_proofBranch"},"minItems":1,"type":"array"},"kind":{"const":"cases"},"scrutinee":{"$ref":"#/$defs/elaboration_name"}},"required":["branches","kind","scrutinee"],"type":"object"},{"additionalProperties":false,"properties":{"branches":{"items":{"$ref":"#/$defs/elaboration_proofBranch"},"minItems":1,"type":"array"},"generalizing":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true},"kind":{"const":"induction"},"scrutinee":{"$ref":"#/$defs/elaboration_name"}},"required":["branches","kind","scrutinee"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"congruence"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"boolean_reflection"},"reflection":{"$ref":"#/$defs/elaboration_reflection"}},"required":["kind","reflection"],"type":"object"},{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/elaboration_term"},"type":"array"},"kind":{"const":"law"},"name":{"$ref":"#/$defs/elaboration_name"},"premises":{"items":{"$ref":"#/$defs/elaboration_member"},"type":"array"},"type_arguments":{"items":{"$ref":"#/$defs/elaboration_type"},"type":"array"}},"required":["arguments","kind","name"],"type":"object"},{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/elaboration_term"},"type":"array"},"kind":{"const":"apply"},"theorem":{"$ref":"#/$defs/elaboration_member"},"type_arguments":{"items":{"$ref":"#/$defs/elaboration_type"},"type":"array"}},"required":["arguments","kind","theorem"],"type":"object"},{"additionalProperties":false,"properties":{"definitions":{"items":{"$ref":"#/$defs/elaboration_member"},"minItems":1,"type":"array","uniqueItems":true},"kind":{"const":"linear_arithmetic"}},"required":["kind"],"type":"object"}]},"elaboration_proofBranch":{"additionalProperties":false,"properties":{"binders":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true},"constructor":{"$ref":"#/$defs/elaboration_name"},"proof":{"$ref":"#/$defs/elaboration_proof"}},"required":["binders","constructor","proof"],"type":"object"},"elaboration_realizationRule":{"additionalProperties":false,"properties":{"action":{"$ref":"#/$defs/elaboration_term"},"guard":{"$ref":"#/$defs/elaboration_term"},"name":{"$ref":"#/$defs/elaboration_name"}},"required":["action","guard","name"],"type":"object"},"elaboration_realizationState":{"additionalProperties":false,"properties":{"initial":{"$ref":"#/$defs/elaboration_term"},"name":{"$ref":"#/$defs/elaboration_name"},"type":{"$ref":"#/$defs/elaboration_type"}},"required":["initial","name","type"],"type":"object"},"elaboration_reasoningAnswer":{"additionalProperties":false,"properties":{"name":{"$ref":"#/$defs/elaboration_name"},"type":{"$ref":"#/$defs/elaboration_type"},"value":{"$ref":"#/$defs/elaboration_term"}},"required":["name","type","value"],"type":"object"},"elaboration_reasoningClaim":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"answer_correct"},"theorem":{"$ref":"#/$defs/elaboration_member"}},"required":["kind","theorem"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"initial_invariant"},"theorem":{"$ref":"#/$defs/elaboration_member"}},"required":["kind","theorem"],"type":"object"},{"additionalProperties":false,"properties":{"initial":{"$ref":"#/$defs/elaboration_member"},"kind":{"const":"observation_invariant"},"predicate":{"$ref":"#/$defs/elaboration_member"},"preserved":{"$ref":"#/$defs/elaboration_member"}},"required":["initial","kind","predicate","preserved"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"terminates"},"theorem":{"$ref":"#/$defs/elaboration_member"}},"required":["kind","theorem"],"type":"object"}]},"elaboration_reasoningStrategy":{"oneOf":[{"additionalProperties":false,"properties":{"fuel":{"$ref":"#/$defs/elaboration_term"},"kind":{"const":"forward"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"budget":{"$ref":"#/$defs/elaboration_term"},"generator":{"$ref":"#/$defs/elaboration_term"},"kind":{"const":"generate_and_verify"}},"required":["generator","kind"],"type":"object"},{"additionalProperties":false,"properties":{"deduplicate":{"type":"boolean"},"frontier":{"$ref":"#/$defs/elaboration_term"},"fuel":{"$ref":"#/$defs/elaboration_term"},"kind":{"const":"search"},"order":{"enum":["breadth_first","depth_first"]}},"required":["kind","order"],"type":"object"}]},"elaboration_reflection":{"oneOf":[{"additionalProperties":false,"properties":{"boolean_definition":{"$ref":"#/$defs/elaboration_member"},"comparison":{"$ref":"#/$defs/elaboration_reflectionComparison"},"kind":{"const":"list"},"parameter":{"$ref":"#/$defs/elaboration_name"},"proposition_definition":{"$ref":"#/$defs/elaboration_member"},"values":{"$ref":"#/$defs/elaboration_name"}},"required":["boolean_definition","comparison","kind","parameter","proposition_definition","values"],"type":"object"},{"additionalProperties":false,"properties":{"boolean_definition":{"$ref":"#/$defs/elaboration_member"},"fields":{"items":{"$ref":"#/$defs/elaboration_reflectionField"},"minItems":1,"type":"array"},"kind":{"const":"record"},"proposition_definition":{"$ref":"#/$defs/elaboration_member"},"record":{"$ref":"#/$defs/elaboration_name"}},"required":["boolean_definition","fields","kind","proposition_definition","record"],"type":"object"}]},"elaboration_reflectionComparison":{"enum":["nat_beq","nat_blt"]},"elaboration_reflectionField":{"additionalProperties":false,"properties":{"expected":{"oneOf":[{"const":"0"},{"pattern":"^[1-9][0-9]*$","type":"string"}]},"field":{"$ref":"#/$defs/elaboration_name"}},"required":["expected","field"],"type":"object"},"elaboration_ruleBinding":{"additionalProperties":false,"properties":{"candidates":{"$ref":"#/$defs/elaboration_term"},"name":{"$ref":"#/$defs/elaboration_name"},"type":{"$ref":"#/$defs/elaboration_type"}},"required":["candidates","name","type"],"type":"object"},"elaboration_term":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"var"},"name":{"$ref":"#/$defs/elaboration_name"}},"required":["kind","name"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"nat"},"value":{"oneOf":[{"const":"0"},{"pattern":"^[1-9][0-9]*$","type":"string"}]}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"bool"},"value":{"type":"boolean"}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"integer"},"representation":{"enum":["int","int8","int16","int32","int64"]},"value":{"oneOf":[{"const":"0"},{"pattern":"^[1-9][0-9]*$","type":"string"},{"pattern":"^-[1-9][0-9]*$","type":"string"}]}},"required":["kind","representation","value"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"integer"},"representation":{"enum":["uint8","uint16","uint32","uint64"]},"value":{"oneOf":[{"const":"0"},{"pattern":"^[1-9][0-9]*$","type":"string"}]}},"required":["kind","representation","value"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"string"},"value":{"type":"string"}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"hex":{"pattern":"^([0-9a-f]{2})*$","type":"string"},"kind":{"const":"bytes"}},"required":["hex","kind"],"type":"object"},{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/elaboration_term"},"type":"array"},"kind":{"const":"primitive"},"operation":{"enum":["append","bit_and","bit_not","bit_or","bit_xor","checked_add","checked_convert","checked_multiply","checked_negate","checked_quotient","checked_subtract","compare_bytes","equal","format_decimal","graph_reachable","graph_successors","graph_topological","index","iterate","iterate_until","join","length","less_than","list_fold","map_contains","map_entries","map_fold","map_insert","map_keys","map_lookup","map_remove","map_size","map_values","multiply","negate","parse_decimal","quotient","remainder","set_contains","set_difference","set_elements","set_fold","set_insert","set_intersection","set_remove","set_size","set_union","shift_left","shift_right","slice","split_exact","subtract","utf8_decode","utf8_encode"]},"result":{"$ref":"#/$defs/elaboration_type"}},"required":["arguments","kind","operation","result"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"unit"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"element":{"$ref":"#/$defs/elaboration_type"},"kind":{"const":"nil"}},"required":["element","kind"],"type":"object"},{"additionalProperties":false,"properties":{"head":{"$ref":"#/$defs/elaboration_term"},"kind":{"const":"cons"},"tail":{"$ref":"#/$defs/elaboration_term"}},"required":["head","kind","tail"],"type":"object"},{"additionalProperties":false,"properties":{"fields":{"items":{"$ref":"#/$defs/elaboration_assignment"},"type":"array"},"kind":{"const":"record"},"type":{"$ref":"#/$defs/elaboration_member"},"type_arguments":{"items":{"$ref":"#/$defs/elaboration_type"},"type":"array"}},"required":["fields","kind","type"],"type":"object"},{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/elaboration_term"},"type":"array"},"constructor":{"$ref":"#/$defs/elaboration_member"},"kind":{"const":"constructor"},"type_arguments":{"items":{"$ref":"#/$defs/elaboration_type"},"type":"array"}},"required":["arguments","constructor","kind"],"type":"object"},{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/elaboration_type"},"type":"array"},"class":{"$ref":"#/$defs/elaboration_member"},"kind":{"const":"instance_value"},"resolved":{"$ref":"#/$defs/elaboration_member"}},"required":["arguments","class","kind","resolved"],"type":"object"},{"additionalProperties":false,"properties":{"field":{"$ref":"#/$defs/elaboration_name"},"kind":{"const":"project"},"value":{"$ref":"#/$defs/elaboration_term"}},"required":["field","kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/elaboration_term"},"type":"array"},"function":{"$ref":"#/$defs/elaboration_member"},"kind":{"const":"call"},"type_arguments":{"items":{"$ref":"#/$defs/elaboration_type"},"type":"array"}},"required":["arguments","function","kind"],"type":"object"},{"additionalProperties":false,"properties":{"condition":{"$ref":"#/$defs/elaboration_term"},"else_value":{"$ref":"#/$defs/elaboration_term"},"kind":{"const":"if"},"then_value":{"$ref":"#/$defs/elaboration_term"}},"required":["condition","else_value","kind","then_value"],"type":"object"},{"additionalProperties":false,"properties":{"branches":{"items":{"$ref":"#/$defs/elaboration_branch"},"minItems":1,"type":"array"},"kind":{"const":"match"},"scrutinee":{"$ref":"#/$defs/elaboration_term"}},"required":["branches","kind","scrutinee"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"eq"},"left":{"$ref":"#/$defs/elaboration_term"},"right":{"$ref":"#/$defs/elaboration_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"le"},"left":{"$ref":"#/$defs/elaboration_term"},"right":{"$ref":"#/$defs/elaboration_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"lt"},"left":{"$ref":"#/$defs/elaboration_term"},"right":{"$ref":"#/$defs/elaboration_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"add"},"left":{"$ref":"#/$defs/elaboration_term"},"right":{"$ref":"#/$defs/elaboration_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"beq"},"left":{"$ref":"#/$defs/elaboration_term"},"right":{"$ref":"#/$defs/elaboration_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"ble"},"left":{"$ref":"#/$defs/elaboration_term"},"right":{"$ref":"#/$defs/elaboration_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"blt"},"left":{"$ref":"#/$defs/elaboration_term"},"right":{"$ref":"#/$defs/elaboration_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"and"},"left":{"$ref":"#/$defs/elaboration_term"},"right":{"$ref":"#/$defs/elaboration_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"or"},"left":{"$ref":"#/$defs/elaboration_term"},"right":{"$ref":"#/$defs/elaboration_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"iff"},"left":{"$ref":"#/$defs/elaboration_term"},"right":{"$ref":"#/$defs/elaboration_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"conclusion":{"$ref":"#/$defs/elaboration_term"},"kind":{"const":"implies"},"premise":{"$ref":"#/$defs/elaboration_term"}},"required":["conclusion","kind","premise"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"not"},"value":{"$ref":"#/$defs/elaboration_term"}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"binder":{"$ref":"#/$defs/elaboration_parameter"},"body":{"$ref":"#/$defs/elaboration_term"},"kind":{"const":"forall"}},"required":["binder","body","kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"prop_and"},"left":{"$ref":"#/$defs/elaboration_term"},"right":{"$ref":"#/$defs/elaboration_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"binder":{"$ref":"#/$defs/elaboration_parameter"},"body":{"$ref":"#/$defs/elaboration_term"},"kind":{"const":"let"},"value":{"$ref":"#/$defs/elaboration_term"}},"required":["binder","body","kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"pair"},"left":{"$ref":"#/$defs/elaboration_term"},"right":{"$ref":"#/$defs/elaboration_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"first"},"value":{"$ref":"#/$defs/elaboration_term"}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"second"},"value":{"$ref":"#/$defs/elaboration_term"}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"body":{"$ref":"#/$defs/elaboration_term"},"captures":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array","uniqueItems":true},"kind":{"const":"lambda"},"parameters":{"items":{"$ref":"#/$defs/elaboration_parameter"},"minItems":1,"type":"array"}},"required":["body","captures","kind","parameters"],"type":"object"},{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/elaboration_term"},"minItems":1,"type":"array"},"function":{"$ref":"#/$defs/elaboration_term"},"kind":{"const":"apply"}},"required":["arguments","function","kind"],"type":"object"},{"additionalProperties":false,"properties":{"function":{"$ref":"#/$defs/elaboration_member"},"kind":{"const":"function_ref"},"type_arguments":{"items":{"$ref":"#/$defs/elaboration_type"},"type":"array"}},"required":["function","kind"],"type":"object"},{"additionalProperties":false,"properties":{"entries":{"items":{"additionalProperties":false,"properties":{"key":{"$ref":"#/$defs/elaboration_term"},"value":{"$ref":"#/$defs/elaboration_term"}},"required":["key","value"],"type":"object"},"type":"array"},"key":{"$ref":"#/$defs/elaboration_type"},"kind":{"const":"map_literal"},"value":{"$ref":"#/$defs/elaboration_type"}},"required":["entries","key","kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"element":{"$ref":"#/$defs/elaboration_type"},"elements":{"items":{"$ref":"#/$defs/elaboration_term"},"type":"array"},"kind":{"const":"set_literal"}},"required":["element","elements","kind"],"type":"object"},{"additionalProperties":false,"properties":{"edges":{"items":{"additionalProperties":false,"properties":{"source":{"$ref":"#/$defs/elaboration_term"},"target":{"$ref":"#/$defs/elaboration_term"}},"required":["source","target"],"type":"object"},"type":"array"},"kind":{"const":"graph_literal"},"node":{"$ref":"#/$defs/elaboration_type"},"nodes":{"items":{"$ref":"#/$defs/elaboration_term"},"type":"array"}},"required":["edges","kind","node","nodes"],"type":"object"},{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/elaboration_term"},"type":"array"},"checks":{"items":{"enum":["input_invariant","output_invariant","postcondition","precondition"]},"type":"array","uniqueItems":true},"kind":{"const":"checked_apply"},"model":{"$ref":"#/$defs/elaboration_member"},"type_arguments":{"items":{"$ref":"#/$defs/elaboration_type"},"type":"array"}},"required":["arguments","checks","kind","model"],"type":"object"}]},"elaboration_type":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"enum":["bool","bytes","int","int8","int16","int32","int64","nat","ordering","prop","string","type","uint8","uint16","uint32","uint64","unit"]}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"parameter"},"name":{"$ref":"#/$defs/elaboration_name"}},"required":["kind","name"],"type":"object"},{"additionalProperties":false,"properties":{"element":{"$ref":"#/$defs/elaboration_type"},"kind":{"const":"list"}},"required":["element","kind"],"type":"object"},{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/elaboration_type"},"type":"array"},"kind":{"const":"named"},"member":{"$ref":"#/$defs/elaboration_member"}},"required":["arguments","kind","member"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"option"},"value":{"$ref":"#/$defs/elaboration_type"}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"error":{"$ref":"#/$defs/elaboration_type"},"kind":{"const":"result"},"ok":{"$ref":"#/$defs/elaboration_type"}},"required":["error","kind","ok"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"product"},"left":{"$ref":"#/$defs/elaboration_type"},"right":{"$ref":"#/$defs/elaboration_type"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"function"},"parameters":{"items":{"$ref":"#/$defs/elaboration_type"},"minItems":1,"type":"array"},"result":{"$ref":"#/$defs/elaboration_type"}},"required":["kind","parameters","result"],"type":"object"},{"additionalProperties":false,"properties":{"key":{"$ref":"#/$defs/elaboration_type"},"kind":{"const":"map"},"value":{"$ref":"#/$defs/elaboration_type"}},"required":["key","kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"element":{"$ref":"#/$defs/elaboration_type"},"kind":{"const":"set"}},"required":["element","kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"contract_violation"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"reasoning_failure"}},"required":["kind"],"type":"object"}]},"formula":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"term"},"term":{"$ref":"#/$defs/elaboration_term"}},"required":["kind","term"],"type":"object"},{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/elaboration_term"},"type":"array"},"helper":{"enum":["all","complete","preserves","reaches","search_ok","sound","star"]},"kind":{"const":"helper"}},"required":["arguments","helper","kind"],"type":"object"},{"additionalProperties":false,"properties":{"conclusion":{"$ref":"#/$defs/formula"},"kind":{"const":"implies"},"premise":{"$ref":"#/$defs/formula"}},"required":["conclusion","kind","premise"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"true"}},"required":["kind"],"type":"object"}]},"generatedTheorem":{"additionalProperties":false,"properties":{"name":{"minLength":1,"type":"string"},"parameters":{"items":{"$ref":"#/$defs/elaboration_parameter"},"type":"array"},"statement":{"$ref":"#/$defs/formula"},"template":{"enum":["accept_sound","conclude_accept","conclude_sound","explained_forward","explained_generate","explained_search","extend","fire_cases","next_progress","next_sound","replay_fire","replay_sound","run_invariant","search_count","search_growth","search_peak","search_step","step_count","step_none","step_some","step_trace","successors_bound","successors_free","term","try_count","try_sound","unfold","verdict_forward","verdict_generate","verdict_search","verify_sound"]},"type_parameters":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array"}},"required":["name","parameters","statement","template","type_parameters"],"type":"object"},"module":{"additionalProperties":false,"properties":{"core":{"$ref":"#/$defs/semanticValue"},"declarations":{"items":{"$ref":"#/$defs/declaration"},"type":"array"},"glossary":{"items":{"type":"string"},"type":"array"},"imports":{"items":{"type":"string"},"type":"array"},"lean_module":{"minLength":1,"type":"string"},"linked_ir":{"$ref":"#/$defs/semanticValue"},"name":{"minLength":1,"type":"string"},"origin":{"minLength":1,"type":"string"},"semantic":{"$ref":"#/$defs/semanticModule"},"source":{"$ref":"#/$defs/source"},"visible_packages":{"items":{"type":"string"},"type":"array"}},"required":["declarations","glossary","imports","lean_module","linked_ir","name","source","visible_packages"],"type":"object"},"obligation":{"additionalProperties":false,"properties":{"parameters":{"items":{"$ref":"#/$defs/elaboration_parameter"},"type":"array"},"role":{"minLength":1,"type":"string"},"statement":{"$ref":"#/$defs/elaboration_term"},"theorem":{"$ref":"#/$defs/elaboration_member"},"type_parameters":{"items":{"$ref":"#/$defs/elaboration_name"},"type":"array"}},"required":["parameters","role","statement","theorem","type_parameters"],"type":"object"},"origin":{"additionalProperties":false,"properties":{"proof":{"$ref":"#/$defs/range"},"proof_steps":{"items":{"$ref":"#/$defs/range"},"type":"array"},"sentence":{"$ref":"#/$defs/range"},"whole":{"$ref":"#/$defs/range"}},"required":["proof_steps","sentence","whole"],"type":"object"},"range":{"additionalProperties":false,"properties":{"end":{"minimum":0,"type":"integer"},"start":{"minimum":0,"type":"integer"}},"required":["end","start"],"type":"object"},"semanticModule":{"additionalProperties":false,"properties":{"declarations":{"items":{"$ref":"#/$defs/semantic_declaration"},"minItems":1,"type":"array"},"spec":{"const":"lexlean/semantic-module/2"}},"required":["declarations","spec"],"type":"object"},"semanticValue":{"oneOf":[{"type":"boolean"},{"type":"integer"},{"type":"string"},{"items":{"$ref":"#/$defs/semanticValue"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/semanticValue"},"type":"object"}]},"semantic_artifactSchema":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"bytes"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"element":{"enum":["int16","int32","int64","int8","uint16","uint32","uint64","uint8"]},"kind":{"const":"int_tensor"},"shape":{"items":{"minimum":1,"type":"integer"},"minItems":1,"type":"array"}},"required":["element","kind","shape"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"utf8_lines"}},"required":["kind"],"type":"object"}]},"semantic_assignment":{"additionalProperties":false,"properties":{"field":{"$ref":"#/$defs/semantic_name"},"value":{"$ref":"#/$defs/semantic_term"}},"required":["field","value"],"type":"object"},"semantic_branch":{"additionalProperties":false,"properties":{"binders":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true},"body":{"$ref":"#/$defs/semantic_term"},"constructor":{"$ref":"#/$defs/semantic_member"}},"required":["binders","body","constructor"],"type":"object"},"semantic_claim":{"oneOf":[{"additionalProperties":false,"properties":{"agreements":{"minimum":0,"type":"integer"},"comparison":{"$ref":"#/$defs/semantic_member"},"comparison_sound":{"$ref":"#/$defs/semantic_member"},"dataset":{"$ref":"#/$defs/semantic_member"},"examples":{"minimum":0,"type":"integer"},"kind":{"const":"dataset_agreement"},"theorem":{"$ref":"#/$defs/semantic_member"}},"required":["agreements","comparison","comparison_sound","dataset","examples","kind","theorem"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"equivalent_to"},"reference":{"$ref":"#/$defs/semantic_modelUse"},"theorem":{"$ref":"#/$defs/semantic_member"}},"required":["kind","reference","theorem"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"initial_invariant"},"theorem":{"$ref":"#/$defs/semantic_member"}},"required":["kind","theorem"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"preserves_invariant"},"theorem":{"$ref":"#/$defs/semantic_member"}},"required":["kind","theorem"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"satisfies_contract"},"theorem":{"$ref":"#/$defs/semantic_member"}},"required":["kind","theorem"],"type":"object"}]},"semantic_compositeForm":{"oneOf":[{"additionalProperties":false,"properties":{"junctions":{"items":{"$ref":"#/$defs/semantic_compositeJunction"},"minItems":1,"type":"array"},"kind":{"const":"sequence"},"stages":{"items":{"$ref":"#/$defs/semantic_modelUse"},"minItems":2,"type":"array"}},"required":["junctions","kind","stages"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"fanout"},"left":{"$ref":"#/$defs/semantic_modelUse"},"right":{"$ref":"#/$defs/semantic_modelUse"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"product"},"left":{"$ref":"#/$defs/semantic_modelUse"},"right":{"$ref":"#/$defs/semantic_modelUse"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"else":{"$ref":"#/$defs/semantic_modelUse"},"guard":{"$ref":"#/$defs/semantic_term"},"kind":{"const":"branch"},"then":{"$ref":"#/$defs/semantic_modelUse"}},"required":["else","guard","kind","then"],"type":"object"},{"additionalProperties":false,"properties":{"junction":{"$ref":"#/$defs/semantic_compositeJunction"},"kind":{"const":"scan"},"stage":{"$ref":"#/$defs/semantic_modelUse"}},"required":["junction","kind","stage"],"type":"object"}]},"semantic_compositeJunction":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"unconditional"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/semantic_member"},"kind":{"const":"proved"}},"required":["evidence","kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"checked"}},"required":["kind"],"type":"object"}]},"semantic_constructor":{"additionalProperties":false,"properties":{"fields":{"items":{"$ref":"#/$defs/semantic_type"},"type":"array"},"name":{"$ref":"#/$defs/semantic_name"}},"required":["fields","name"],"type":"object"},"semantic_contractState":{"additionalProperties":false,"properties":{"name":{"$ref":"#/$defs/semantic_name"},"next":{"$ref":"#/$defs/semantic_name"},"type":{"$ref":"#/$defs/semantic_type"}},"required":["name","next","type"],"type":"object"},"semantic_contractValidator":{"additionalProperties":false,"properties":{"complete":{"$ref":"#/$defs/semantic_member"},"predicate":{"enum":["invariant","postcondition","precondition"]},"sound":{"$ref":"#/$defs/semantic_member"},"validator":{"$ref":"#/$defs/semantic_member"}},"required":["predicate","sound","validator"],"type":"object"},"semantic_declaration":{"oneOf":[{"additionalProperties":false,"properties":{"fields":{"items":{"$ref":"#/$defs/semantic_field"},"minItems":1,"type":"array"},"kind":{"const":"structure"},"name":{"$ref":"#/$defs/semantic_name"},"parameters":{"items":{"$ref":"#/$defs/semantic_parameter"},"type":"array"},"type_parameters":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true}},"required":["fields","kind","name","parameters","type_parameters"],"type":"object"},{"additionalProperties":false,"properties":{"fields":{"items":{"$ref":"#/$defs/semantic_field"},"minItems":1,"type":"array"},"kind":{"const":"class"},"name":{"$ref":"#/$defs/semantic_name"},"parameters":{"items":{"$ref":"#/$defs/semantic_parameter"},"type":"array"},"type_parameters":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true}},"required":["fields","kind","name","parameters","type_parameters"],"type":"object"},{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/semantic_type"},"type":"array"},"class":{"$ref":"#/$defs/semantic_member"},"fields":{"items":{"$ref":"#/$defs/semantic_assignment"},"minItems":1,"type":"array"},"kind":{"const":"instance"},"name":{"$ref":"#/$defs/semantic_name"},"priority":{"const":1000}},"required":["arguments","class","fields","kind","name","priority"],"type":"object"},{"additionalProperties":false,"properties":{"constructors":{"items":{"$ref":"#/$defs/semantic_constructor"},"minItems":1,"type":"array"},"kind":{"const":"inductive"},"mutual":{"$ref":"#/$defs/semantic_name"},"name":{"$ref":"#/$defs/semantic_name"},"parameters":{"items":{"$ref":"#/$defs/semantic_parameter"},"type":"array"},"type_parameters":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true}},"required":["constructors","kind","name","parameters","type_parameters"],"type":"object"},{"additionalProperties":false,"properties":{"axioms":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true},"body":{"$ref":"#/$defs/semantic_term"},"executable":{"type":"boolean"},"kind":{"const":"definition"},"mutual":{"$ref":"#/$defs/semantic_name"},"name":{"$ref":"#/$defs/semantic_name"},"parameters":{"items":{"$ref":"#/$defs/semantic_parameter"},"type":"array"},"production":{"$ref":"#/$defs/semantic_production"},"recursive_argument":{"$ref":"#/$defs/semantic_name"},"result":{"$ref":"#/$defs/semantic_type"},"termination":{"additionalProperties":false,"properties":{"evidence":{"items":{"$ref":"#/$defs/semantic_member"},"minItems":1,"type":"array"},"measure":{"$ref":"#/$defs/semantic_term"}},"required":["evidence","measure"],"type":"object"},"type_parameters":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true}},"required":["body","kind","name","parameters","result"],"type":"object"},{"additionalProperties":false,"properties":{"axioms":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true},"kind":{"const":"theorem"},"name":{"$ref":"#/$defs/semantic_name"},"parameters":{"items":{"$ref":"#/$defs/semantic_parameter"},"type":"array"},"proof":{"$ref":"#/$defs/semantic_proof"},"statement":{"$ref":"#/$defs/semantic_term"},"type_parameters":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true}},"required":["kind","name","parameters","proof","statement"],"type":"object"},{"additionalProperties":false,"properties":{"axioms":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true},"kind":{"const":"artifact"},"length":{"minimum":0,"type":"integer"},"name":{"$ref":"#/$defs/semantic_name"},"role":{"enum":["binary","dataset","parameters","table","vocabulary"]},"schema":{"$ref":"#/$defs/semantic_artifactSchema"},"sha256":{"pattern":"^[0-9a-f]{64}$","type":"string"},"type":{"$ref":"#/$defs/semantic_type"}},"required":["kind","length","name","role","schema","sha256","type"],"type":"object"},{"additionalProperties":false,"properties":{"axioms":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true},"input":{"$ref":"#/$defs/semantic_modelBinder"},"invariant":{"$ref":"#/$defs/semantic_member"},"kind":{"const":"contract"},"name":{"$ref":"#/$defs/semantic_name"},"output":{"$ref":"#/$defs/semantic_modelBinder"},"postcondition":{"$ref":"#/$defs/semantic_member"},"precondition":{"$ref":"#/$defs/semantic_member"},"state":{"$ref":"#/$defs/semantic_contractState"},"type_parameters":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true},"validators":{"items":{"$ref":"#/$defs/semantic_contractValidator"},"type":"array"}},"required":["input","kind","name","output"],"type":"object"},{"additionalProperties":false,"properties":{"axioms":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true},"descriptor":{"$ref":"#/$defs/semantic_descriptor"},"executable":{"type":"boolean"},"input":{"$ref":"#/$defs/semantic_modelBinder"},"kind":{"const":"realization"},"name":{"$ref":"#/$defs/semantic_name"},"output":{"$ref":"#/$defs/semantic_type"},"state":{"$ref":"#/$defs/semantic_realizationState"},"type_parameters":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true}},"required":["descriptor","input","kind","name","output"],"type":"object"},{"additionalProperties":false,"properties":{"axioms":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true},"claims":{"items":{"$ref":"#/$defs/semantic_claim"},"minItems":1,"type":"array"},"contract":{"$ref":"#/$defs/semantic_modelUse"},"kind":{"const":"evidence"},"name":{"$ref":"#/$defs/semantic_name"},"realization":{"$ref":"#/$defs/semantic_modelUse"},"type_parameters":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true}},"required":["claims","contract","kind","name","realization"],"type":"object"},{"additionalProperties":false,"properties":{"axioms":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true},"contract":{"$ref":"#/$defs/semantic_modelUse"},"entry":{"items":{"$ref":"#/$defs/semantic_member"},"type":"array"},"evidence":{"items":{"$ref":"#/$defs/semantic_modelUse"},"type":"array"},"kind":{"const":"model"},"name":{"$ref":"#/$defs/semantic_name"},"realization":{"$ref":"#/$defs/semantic_modelUse"},"type_parameters":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true}},"required":["contract","kind","name","realization"],"type":"object"},{"additionalProperties":false,"properties":{"axioms":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true},"invariant":{"$ref":"#/$defs/semantic_logicInvariant"},"kind":{"const":"logic"},"name":{"$ref":"#/$defs/semantic_name"},"ranking":{"$ref":"#/$defs/semantic_member"},"relation":{"$ref":"#/$defs/semantic_member"},"state":{"$ref":"#/$defs/semantic_contractState"},"type_parameters":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true}},"required":["kind","name","relation","state"],"type":"object"},{"additionalProperties":false,"properties":{"axioms":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true},"binding":{"$ref":"#/$defs/semantic_ruleBinding"},"conclusion":{"$ref":"#/$defs/semantic_term"},"executable":{"type":"boolean"},"guard":{"$ref":"#/$defs/semantic_term"},"kind":{"const":"inference_rule"},"logic":{"$ref":"#/$defs/semantic_modelUse"},"name":{"$ref":"#/$defs/semantic_name"},"progress":{"$ref":"#/$defs/semantic_member"},"soundness":{"$ref":"#/$defs/semantic_member"},"type_parameters":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true}},"required":["conclusion","guard","kind","logic","name","soundness"],"type":"object"},{"additionalProperties":false,"properties":{"axioms":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true},"candidate":{"$ref":"#/$defs/semantic_modelBinder"},"check":{"$ref":"#/$defs/semantic_member"},"complete":{"$ref":"#/$defs/semantic_member"},"kind":{"const":"verifier"},"name":{"$ref":"#/$defs/semantic_name"},"sound":{"$ref":"#/$defs/semantic_member"},"specification":{"$ref":"#/$defs/semantic_member"},"subject":{"$ref":"#/$defs/semantic_modelBinder"},"type_parameters":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true}},"required":["candidate","check","kind","name","sound","specification","subject"],"type":"object"},{"additionalProperties":false,"properties":{"answer":{"$ref":"#/$defs/semantic_reasoningAnswer"},"axioms":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true},"claims":{"items":{"$ref":"#/$defs/semantic_reasoningClaim"},"type":"array"},"executable":{"type":"boolean"},"kind":{"const":"reasoner"},"logic":{"$ref":"#/$defs/semantic_modelUse"},"name":{"$ref":"#/$defs/semantic_name"},"observation":{"$ref":"#/$defs/semantic_modelBinder"},"observe":{"$ref":"#/$defs/semantic_term"},"rules":{"items":{"$ref":"#/$defs/semantic_modelUse"},"type":"array"},"strategy":{"$ref":"#/$defs/semantic_reasoningStrategy"},"type_parameters":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true},"verifier":{"$ref":"#/$defs/semantic_modelUse"}},"required":["kind","name","observation","rules","strategy","verifier"],"type":"object"}]},"semantic_descriptor":{"oneOf":[{"additionalProperties":false,"properties":{"body":{"$ref":"#/$defs/semantic_term"},"kind":{"const":"deterministic"}},"required":["body","kind"],"type":"object"},{"additionalProperties":false,"properties":{"default":{"$ref":"#/$defs/semantic_term"},"kind":{"const":"rule"},"rules":{"items":{"$ref":"#/$defs/semantic_realizationRule"},"minItems":1,"type":"array"}},"required":["default","kind","rules"],"type":"object"},{"additionalProperties":false,"properties":{"bias":{"$ref":"#/$defs/semantic_member"},"features":{"$ref":"#/$defs/semantic_term"},"kind":{"const":"statistical"},"labels":{"items":{"$ref":"#/$defs/semantic_term"},"minItems":1,"type":"array"},"scheme":{"const":"linear_scoring"},"weights":{"$ref":"#/$defs/semantic_member"},"width":{"minimum":1,"type":"integer"},"width_evidence":{"$ref":"#/$defs/semantic_member"}},"required":["bias","features","kind","labels","scheme","weights","width","width_evidence"],"type":"object"},{"additionalProperties":false,"properties":{"architecture":{"const":"integer_feedforward"},"decoder":{"$ref":"#/$defs/semantic_neuralDecoder"},"encoder":{"$ref":"#/$defs/semantic_term"},"kind":{"const":"neural"},"layers":{"items":{"$ref":"#/$defs/semantic_neuralLayer"},"minItems":1,"type":"array"},"width":{"minimum":1,"type":"integer"},"width_evidence":{"$ref":"#/$defs/semantic_member"}},"required":["architecture","decoder","encoder","kind","layers","width","width_evidence"],"type":"object"},{"additionalProperties":false,"properties":{"form":{"$ref":"#/$defs/semantic_compositeForm"},"kind":{"const":"composite"}},"required":["form","kind"],"type":"object"}]},"semantic_field":{"additionalProperties":false,"properties":{"name":{"$ref":"#/$defs/semantic_name"},"type":{"$ref":"#/$defs/semantic_type"}},"required":["name","type"],"type":"object"},"semantic_logicInvariant":{"additionalProperties":false,"properties":{"predicate":{"$ref":"#/$defs/semantic_member"},"preserves":{"$ref":"#/$defs/semantic_member"}},"required":["predicate","preserves"],"type":"object"},"semantic_member":{"additionalProperties":false,"properties":{"module":{"$ref":"#/$defs/semantic_name"},"name":{"$ref":"#/$defs/semantic_name"}},"required":["name"],"type":"object"},"semantic_modelBinder":{"additionalProperties":false,"properties":{"name":{"$ref":"#/$defs/semantic_name"},"type":{"$ref":"#/$defs/semantic_type"}},"required":["name","type"],"type":"object"},"semantic_modelUse":{"additionalProperties":false,"properties":{"member":{"$ref":"#/$defs/semantic_member"},"type_arguments":{"items":{"$ref":"#/$defs/semantic_type"},"type":"array"}},"required":["member"],"type":"object"},"semantic_name":{"pattern":"^[A-Za-z][A-Za-z0-9_]*(\\.[A-Za-z][A-Za-z0-9_]*)*$","type":"string"},"semantic_neuralDecoder":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"argmax"},"labels":{"items":{"$ref":"#/$defs/semantic_term"},"minItems":1,"type":"array"}},"required":["kind","labels"],"type":"object"},{"additionalProperties":false,"properties":{"binder":{"$ref":"#/$defs/semantic_name"},"body":{"$ref":"#/$defs/semantic_term"},"kind":{"const":"function"}},"required":["binder","body","kind"],"type":"object"}]},"semantic_neuralLayer":{"oneOf":[{"additionalProperties":false,"properties":{"bias":{"$ref":"#/$defs/semantic_member"},"inputs":{"minimum":1,"type":"integer"},"kind":{"const":"dense"},"outputs":{"minimum":1,"type":"integer"},"weights":{"$ref":"#/$defs/semantic_member"}},"required":["bias","inputs","kind","outputs","weights"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"relu"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"requantize"},"maximum":{"oneOf":[{"const":"0"},{"pattern":"^[1-9][0-9]*$","type":"string"},{"pattern":"^-[1-9][0-9]*$","type":"string"}]},"minimum":{"oneOf":[{"const":"0"},{"pattern":"^[1-9][0-9]*$","type":"string"},{"pattern":"^-[1-9][0-9]*$","type":"string"}]},"shift":{"maximum":4096,"minimum":0,"type":"integer"}},"required":["kind","maximum","minimum","shift"],"type":"object"}]},"semantic_parameter":{"additionalProperties":false,"properties":{"name":{"$ref":"#/$defs/semantic_name"},"type":{"$ref":"#/$defs/semantic_type"}},"required":["name","type"],"type":"object"},"semantic_production":{"additionalProperties":false,"properties":{"effects":{"items":{"enum":["allocation","overflow","recursion"]},"type":"array","uniqueItems":true},"targets":{"items":{"enum":["rust-core","rust-std"]},"minItems":1,"type":"array","uniqueItems":true}},"required":["effects","targets"],"type":"object"},"semantic_proof":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"reflexivity"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"decide"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"definitions":{"items":{"$ref":"#/$defs/semantic_member"},"minItems":1,"type":"array","uniqueItems":true},"kind":{"const":"simplify"}},"required":["definitions","kind"],"type":"object"},{"additionalProperties":false,"properties":{"branches":{"items":{"$ref":"#/$defs/semantic_proof"},"minItems":1,"type":"array"},"kind":{"const":"constructor"}},"required":["branches","kind"],"type":"object"},{"additionalProperties":false,"properties":{"branches":{"items":{"$ref":"#/$defs/semantic_proofBranch"},"minItems":1,"type":"array"},"kind":{"const":"cases"},"scrutinee":{"$ref":"#/$defs/semantic_name"}},"required":["branches","kind","scrutinee"],"type":"object"},{"additionalProperties":false,"properties":{"branches":{"items":{"$ref":"#/$defs/semantic_proofBranch"},"minItems":1,"type":"array"},"generalizing":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true},"kind":{"const":"induction"},"scrutinee":{"$ref":"#/$defs/semantic_name"}},"required":["branches","kind","scrutinee"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"congruence"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"boolean_reflection"},"reflection":{"$ref":"#/$defs/semantic_reflection"}},"required":["kind","reflection"],"type":"object"},{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/semantic_term"},"type":"array"},"kind":{"const":"law"},"name":{"$ref":"#/$defs/semantic_name"},"premises":{"items":{"$ref":"#/$defs/semantic_member"},"type":"array"},"type_arguments":{"items":{"$ref":"#/$defs/semantic_type"},"type":"array"}},"required":["arguments","kind","name"],"type":"object"},{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/semantic_term"},"type":"array"},"kind":{"const":"apply"},"theorem":{"$ref":"#/$defs/semantic_member"},"type_arguments":{"items":{"$ref":"#/$defs/semantic_type"},"type":"array"}},"required":["arguments","kind","theorem"],"type":"object"},{"additionalProperties":false,"properties":{"definitions":{"items":{"$ref":"#/$defs/semantic_member"},"minItems":1,"type":"array","uniqueItems":true},"kind":{"const":"linear_arithmetic"}},"required":["kind"],"type":"object"}]},"semantic_proofBranch":{"additionalProperties":false,"properties":{"binders":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true},"constructor":{"$ref":"#/$defs/semantic_name"},"proof":{"$ref":"#/$defs/semantic_proof"}},"required":["binders","constructor","proof"],"type":"object"},"semantic_realizationRule":{"additionalProperties":false,"properties":{"action":{"$ref":"#/$defs/semantic_term"},"guard":{"$ref":"#/$defs/semantic_term"},"name":{"$ref":"#/$defs/semantic_name"}},"required":["action","guard","name"],"type":"object"},"semantic_realizationState":{"additionalProperties":false,"properties":{"initial":{"$ref":"#/$defs/semantic_term"},"name":{"$ref":"#/$defs/semantic_name"},"type":{"$ref":"#/$defs/semantic_type"}},"required":["initial","name","type"],"type":"object"},"semantic_reasoningAnswer":{"additionalProperties":false,"properties":{"name":{"$ref":"#/$defs/semantic_name"},"type":{"$ref":"#/$defs/semantic_type"},"value":{"$ref":"#/$defs/semantic_term"}},"required":["name","type","value"],"type":"object"},"semantic_reasoningClaim":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"answer_correct"},"theorem":{"$ref":"#/$defs/semantic_member"}},"required":["kind","theorem"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"initial_invariant"},"theorem":{"$ref":"#/$defs/semantic_member"}},"required":["kind","theorem"],"type":"object"},{"additionalProperties":false,"properties":{"initial":{"$ref":"#/$defs/semantic_member"},"kind":{"const":"observation_invariant"},"predicate":{"$ref":"#/$defs/semantic_member"},"preserved":{"$ref":"#/$defs/semantic_member"}},"required":["initial","kind","predicate","preserved"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"terminates"},"theorem":{"$ref":"#/$defs/semantic_member"}},"required":["kind","theorem"],"type":"object"}]},"semantic_reasoningStrategy":{"oneOf":[{"additionalProperties":false,"properties":{"fuel":{"$ref":"#/$defs/semantic_term"},"kind":{"const":"forward"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"budget":{"$ref":"#/$defs/semantic_term"},"generator":{"$ref":"#/$defs/semantic_term"},"kind":{"const":"generate_and_verify"}},"required":["generator","kind"],"type":"object"},{"additionalProperties":false,"properties":{"deduplicate":{"type":"boolean"},"frontier":{"$ref":"#/$defs/semantic_term"},"fuel":{"$ref":"#/$defs/semantic_term"},"kind":{"const":"search"},"order":{"enum":["breadth_first","depth_first"]}},"required":["kind","order"],"type":"object"}]},"semantic_reflection":{"oneOf":[{"additionalProperties":false,"properties":{"boolean_definition":{"$ref":"#/$defs/semantic_member"},"comparison":{"$ref":"#/$defs/semantic_reflectionComparison"},"kind":{"const":"list"},"parameter":{"$ref":"#/$defs/semantic_name"},"proposition_definition":{"$ref":"#/$defs/semantic_member"},"values":{"$ref":"#/$defs/semantic_name"}},"required":["boolean_definition","comparison","kind","parameter","proposition_definition","values"],"type":"object"},{"additionalProperties":false,"properties":{"boolean_definition":{"$ref":"#/$defs/semantic_member"},"fields":{"items":{"$ref":"#/$defs/semantic_reflectionField"},"minItems":1,"type":"array"},"kind":{"const":"record"},"proposition_definition":{"$ref":"#/$defs/semantic_member"},"record":{"$ref":"#/$defs/semantic_name"}},"required":["boolean_definition","fields","kind","proposition_definition","record"],"type":"object"}]},"semantic_reflectionComparison":{"enum":["nat_beq","nat_blt"]},"semantic_reflectionField":{"additionalProperties":false,"properties":{"expected":{"oneOf":[{"const":"0"},{"pattern":"^[1-9][0-9]*$","type":"string"}]},"field":{"$ref":"#/$defs/semantic_name"}},"required":["expected","field"],"type":"object"},"semantic_ruleBinding":{"additionalProperties":false,"properties":{"candidates":{"$ref":"#/$defs/semantic_term"},"name":{"$ref":"#/$defs/semantic_name"},"type":{"$ref":"#/$defs/semantic_type"}},"required":["candidates","name","type"],"type":"object"},"semantic_term":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"var"},"name":{"$ref":"#/$defs/semantic_name"}},"required":["kind","name"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"nat"},"value":{"oneOf":[{"const":"0"},{"pattern":"^[1-9][0-9]*$","type":"string"}]}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"bool"},"value":{"type":"boolean"}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"integer"},"representation":{"enum":["int","int8","int16","int32","int64"]},"value":{"oneOf":[{"const":"0"},{"pattern":"^[1-9][0-9]*$","type":"string"},{"pattern":"^-[1-9][0-9]*$","type":"string"}]}},"required":["kind","representation","value"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"integer"},"representation":{"enum":["uint8","uint16","uint32","uint64"]},"value":{"oneOf":[{"const":"0"},{"pattern":"^[1-9][0-9]*$","type":"string"}]}},"required":["kind","representation","value"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"string"},"value":{"type":"string"}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"hex":{"pattern":"^([0-9a-f]{2})*$","type":"string"},"kind":{"const":"bytes"}},"required":["hex","kind"],"type":"object"},{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/semantic_term"},"type":"array"},"kind":{"const":"primitive"},"operation":{"enum":["append","bit_and","bit_not","bit_or","bit_xor","checked_add","checked_convert","checked_multiply","checked_negate","checked_quotient","checked_subtract","compare_bytes","equal","format_decimal","graph_reachable","graph_successors","graph_topological","index","iterate","iterate_until","join","length","less_than","list_fold","map_contains","map_entries","map_fold","map_insert","map_keys","map_lookup","map_remove","map_size","map_values","multiply","negate","parse_decimal","quotient","remainder","set_contains","set_difference","set_elements","set_fold","set_insert","set_intersection","set_remove","set_size","set_union","shift_left","shift_right","slice","split_exact","subtract","utf8_decode","utf8_encode"]},"result":{"$ref":"#/$defs/semantic_type"}},"required":["arguments","kind","operation","result"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"unit"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"element":{"$ref":"#/$defs/semantic_type"},"kind":{"const":"nil"}},"required":["element","kind"],"type":"object"},{"additionalProperties":false,"properties":{"head":{"$ref":"#/$defs/semantic_term"},"kind":{"const":"cons"},"tail":{"$ref":"#/$defs/semantic_term"}},"required":["head","kind","tail"],"type":"object"},{"additionalProperties":false,"properties":{"fields":{"items":{"$ref":"#/$defs/semantic_assignment"},"type":"array"},"kind":{"const":"record"},"type":{"$ref":"#/$defs/semantic_member"},"type_arguments":{"items":{"$ref":"#/$defs/semantic_type"},"type":"array"}},"required":["fields","kind","type"],"type":"object"},{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/semantic_term"},"type":"array"},"constructor":{"$ref":"#/$defs/semantic_member"},"kind":{"const":"constructor"},"type_arguments":{"items":{"$ref":"#/$defs/semantic_type"},"type":"array"}},"required":["arguments","constructor","kind"],"type":"object"},{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/semantic_type"},"type":"array"},"class":{"$ref":"#/$defs/semantic_member"},"kind":{"const":"instance_value"},"resolved":{"$ref":"#/$defs/semantic_member"}},"required":["arguments","class","kind","resolved"],"type":"object"},{"additionalProperties":false,"properties":{"field":{"$ref":"#/$defs/semantic_name"},"kind":{"const":"project"},"value":{"$ref":"#/$defs/semantic_term"}},"required":["field","kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/semantic_term"},"type":"array"},"function":{"$ref":"#/$defs/semantic_member"},"kind":{"const":"call"},"type_arguments":{"items":{"$ref":"#/$defs/semantic_type"},"type":"array"}},"required":["arguments","function","kind"],"type":"object"},{"additionalProperties":false,"properties":{"condition":{"$ref":"#/$defs/semantic_term"},"else_value":{"$ref":"#/$defs/semantic_term"},"kind":{"const":"if"},"then_value":{"$ref":"#/$defs/semantic_term"}},"required":["condition","else_value","kind","then_value"],"type":"object"},{"additionalProperties":false,"properties":{"branches":{"items":{"$ref":"#/$defs/semantic_branch"},"minItems":1,"type":"array"},"kind":{"const":"match"},"scrutinee":{"$ref":"#/$defs/semantic_term"}},"required":["branches","kind","scrutinee"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"eq"},"left":{"$ref":"#/$defs/semantic_term"},"right":{"$ref":"#/$defs/semantic_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"le"},"left":{"$ref":"#/$defs/semantic_term"},"right":{"$ref":"#/$defs/semantic_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"lt"},"left":{"$ref":"#/$defs/semantic_term"},"right":{"$ref":"#/$defs/semantic_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"add"},"left":{"$ref":"#/$defs/semantic_term"},"right":{"$ref":"#/$defs/semantic_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"beq"},"left":{"$ref":"#/$defs/semantic_term"},"right":{"$ref":"#/$defs/semantic_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"ble"},"left":{"$ref":"#/$defs/semantic_term"},"right":{"$ref":"#/$defs/semantic_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"blt"},"left":{"$ref":"#/$defs/semantic_term"},"right":{"$ref":"#/$defs/semantic_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"and"},"left":{"$ref":"#/$defs/semantic_term"},"right":{"$ref":"#/$defs/semantic_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"or"},"left":{"$ref":"#/$defs/semantic_term"},"right":{"$ref":"#/$defs/semantic_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"iff"},"left":{"$ref":"#/$defs/semantic_term"},"right":{"$ref":"#/$defs/semantic_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"conclusion":{"$ref":"#/$defs/semantic_term"},"kind":{"const":"implies"},"premise":{"$ref":"#/$defs/semantic_term"}},"required":["conclusion","kind","premise"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"not"},"value":{"$ref":"#/$defs/semantic_term"}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"binder":{"$ref":"#/$defs/semantic_parameter"},"body":{"$ref":"#/$defs/semantic_term"},"kind":{"const":"forall"}},"required":["binder","body","kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"prop_and"},"left":{"$ref":"#/$defs/semantic_term"},"right":{"$ref":"#/$defs/semantic_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"binder":{"$ref":"#/$defs/semantic_parameter"},"body":{"$ref":"#/$defs/semantic_term"},"kind":{"const":"let"},"value":{"$ref":"#/$defs/semantic_term"}},"required":["binder","body","kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"pair"},"left":{"$ref":"#/$defs/semantic_term"},"right":{"$ref":"#/$defs/semantic_term"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"first"},"value":{"$ref":"#/$defs/semantic_term"}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"second"},"value":{"$ref":"#/$defs/semantic_term"}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"body":{"$ref":"#/$defs/semantic_term"},"captures":{"items":{"$ref":"#/$defs/semantic_name"},"type":"array","uniqueItems":true},"kind":{"const":"lambda"},"parameters":{"items":{"$ref":"#/$defs/semantic_parameter"},"minItems":1,"type":"array"}},"required":["body","captures","kind","parameters"],"type":"object"},{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/semantic_term"},"minItems":1,"type":"array"},"function":{"$ref":"#/$defs/semantic_term"},"kind":{"const":"apply"}},"required":["arguments","function","kind"],"type":"object"},{"additionalProperties":false,"properties":{"function":{"$ref":"#/$defs/semantic_member"},"kind":{"const":"function_ref"},"type_arguments":{"items":{"$ref":"#/$defs/semantic_type"},"type":"array"}},"required":["function","kind"],"type":"object"},{"additionalProperties":false,"properties":{"entries":{"items":{"additionalProperties":false,"properties":{"key":{"$ref":"#/$defs/semantic_term"},"value":{"$ref":"#/$defs/semantic_term"}},"required":["key","value"],"type":"object"},"type":"array"},"key":{"$ref":"#/$defs/semantic_type"},"kind":{"const":"map_literal"},"value":{"$ref":"#/$defs/semantic_type"}},"required":["entries","key","kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"element":{"$ref":"#/$defs/semantic_type"},"elements":{"items":{"$ref":"#/$defs/semantic_term"},"type":"array"},"kind":{"const":"set_literal"}},"required":["element","elements","kind"],"type":"object"},{"additionalProperties":false,"properties":{"edges":{"items":{"additionalProperties":false,"properties":{"source":{"$ref":"#/$defs/semantic_term"},"target":{"$ref":"#/$defs/semantic_term"}},"required":["source","target"],"type":"object"},"type":"array"},"kind":{"const":"graph_literal"},"node":{"$ref":"#/$defs/semantic_type"},"nodes":{"items":{"$ref":"#/$defs/semantic_term"},"type":"array"}},"required":["edges","kind","node","nodes"],"type":"object"},{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/semantic_term"},"type":"array"},"checks":{"items":{"enum":["input_invariant","output_invariant","postcondition","precondition"]},"type":"array","uniqueItems":true},"kind":{"const":"checked_apply"},"model":{"$ref":"#/$defs/semantic_member"},"type_arguments":{"items":{"$ref":"#/$defs/semantic_type"},"type":"array"}},"required":["arguments","checks","kind","model"],"type":"object"}]},"semantic_type":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"enum":["bool","bytes","int","int8","int16","int32","int64","nat","ordering","prop","string","type","uint8","uint16","uint32","uint64","unit"]}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"parameter"},"name":{"$ref":"#/$defs/semantic_name"}},"required":["kind","name"],"type":"object"},{"additionalProperties":false,"properties":{"element":{"$ref":"#/$defs/semantic_type"},"kind":{"const":"list"}},"required":["element","kind"],"type":"object"},{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/semantic_type"},"type":"array"},"kind":{"const":"named"},"member":{"$ref":"#/$defs/semantic_member"}},"required":["arguments","kind","member"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"option"},"value":{"$ref":"#/$defs/semantic_type"}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"error":{"$ref":"#/$defs/semantic_type"},"kind":{"const":"result"},"ok":{"$ref":"#/$defs/semantic_type"}},"required":["error","kind","ok"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"product"},"left":{"$ref":"#/$defs/semantic_type"},"right":{"$ref":"#/$defs/semantic_type"}},"required":["kind","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"function"},"parameters":{"items":{"$ref":"#/$defs/semantic_type"},"minItems":1,"type":"array"},"result":{"$ref":"#/$defs/semantic_type"}},"required":["kind","parameters","result"],"type":"object"},{"additionalProperties":false,"properties":{"key":{"$ref":"#/$defs/semantic_type"},"kind":{"const":"map"},"value":{"$ref":"#/$defs/semantic_type"}},"required":["key","kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"element":{"$ref":"#/$defs/semantic_type"},"kind":{"const":"set"}},"required":["element","kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"contract_violation"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"reasoning_failure"}},"required":["kind"],"type":"object"}]},"source":{"additionalProperties":false,"properties":{"path":{"minLength":1,"type":"string"},"sha256":{"$ref":"#/$defs/digest"}},"required":["path","sha256"],"type":"object"}},"$id":"https://github.com/afflom/lexlean/schemas/semantic-snapshot-v2.schema.json","$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"compiler_semantics_id":{"$ref":"#/$defs/digest"},"language":{"const":"1.2"},"lexicon_closure":{"$ref":"#/$defs/semanticValue"},"modules":{"items":{"$ref":"#/$defs/module"},"type":"array"},"semantic_id":{"$ref":"#/$defs/digest"},"source_id":{"$ref":"#/$defs/digest"},"spec":{"const":"lexlean/semantic-snapshot/2"}},"required":["compiler_semantics_id","language","lexicon_closure","modules","semantic_id","source_id","spec"],"title":"LexLean language-1.2 semantic snapshot","type":"object"} diff --git a/stdlib/expected/build/manifest.json b/stdlib/expected/build/manifest.json index 778a9e880..9cddae075 100644 --- a/stdlib/expected/build/manifest.json +++ b/stdlib/expected/build/manifest.json @@ -1 +1 @@ -{"build_id":"df8fe88c3f08d7e203fc2060c3b0162c14fcf9dd390e2739776c0281c77cc12f","compiler":{"semantics_id":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","version":"0.3.0"},"inputs":[{"byte_length":2684,"kind":"lexicon","path":"embedded","sha256":"3bc0fb09d706ffa7d5a1363302ea87c049acc7c7dcafde63c62682620c11be9b"},{"byte_length":14885,"kind":"lexicon","path":"embedded","sha256":"e0db021e01b91d651c43921d66f6b0023c8efbf17cac2ec53192ce5305e4e1ac"},{"byte_length":36197,"kind":"lexicon","path":"embedded","sha256":"827317cae68c162f3a96c8a8de4e53ab348e7d3724fd2b834fa85ecde1a1b392"},{"byte_length":1597,"kind":"lock","path":"lexlean.lock","sha256":"91d61637d04070d9f07908addffe7ae93d00d1be9ea69a000b7636ab569da158"},{"byte_length":638,"kind":"project-config","path":"lexlean.toml","sha256":"e7fcfa884a8d0dcabfa2292f1bca96a530b17e56a96f4f68ff7eac749ba2b0c4"},{"byte_length":8081,"kind":"source","path":"src/Text.lex.tex","sha256":"57c487328b200f710abcf7ca1e0daf1086d31c32f668fba6e7f5dc1a2e4a1eca"}],"language":"1.2","lean_toolchain":"leanprover/lean4:v4.32.1","modules":[{"lean_module":"LexLeanStd.Text","module":"Text","source_path":"src/Text.lex.tex"}],"outputs":[{"byte_length":11380,"kind":"coverage","path":"coverage/LexLeanStd/Text.coverage.json","sha256":"56012da65c0236693084aec3c621eb772b1716d1045e47584d272c1bad490fe7"},{"byte_length":7428,"kind":"lean","path":"modules/LexLeanStd/Text.lean","sha256":"aa728aceefa15f78b7431bed5a20e300f1a3e80ec3de8293481622aa150b2d8c"},{"byte_length":10602,"kind":"lexicon-closure","path":"lexicons/Text.closure.json","sha256":"1ad76d0ba0c5e4c958f3593285ad434936f9745f4c422cdd592be86889c16500"},{"byte_length":6807,"kind":"map","path":"maps/LexLeanStd/Text.map.json","sha256":"1d941f329fd2685394ad83d2484920a9e3aaa21af88b6b75d6f2d407d7b87957"},{"byte_length":32401,"kind":"production-eligibility","path":"production/LexLeanStd/Text.eligibility.json","sha256":"4b54b63c69a2686e1642b74588d6f9cd880011b85fba5e63e44deaf4fb278631"},{"byte_length":13276,"kind":"tex","path":"modules/LexLeanStd/Text.tex","sha256":"612cb8192fa44088c7fd3b13e8d654e5388b08d3159ee15c183c42b02c7cdc96"}],"project":"stdlib","selection":["Text"],"semantic_id":"5bfc6ad2db2940a1b7735f1309be47dcc4b5143d58cd00cbd6745311cf1f27ee","source_id":"14354f2c3524a80a10b7c1338779f4f79e6d021dfb76b0ae62d9b45e4f9953f6","spec":"lexlean/build-manifest/1"} +{"build_id":"3dd442906f5d082b4857220a3e414510146f50b559d39a7dc00e3bd175137230","compiler":{"semantics_id":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","version":"0.3.0"},"inputs":[{"byte_length":2684,"kind":"lexicon","path":"embedded","sha256":"3bc0fb09d706ffa7d5a1363302ea87c049acc7c7dcafde63c62682620c11be9b"},{"byte_length":14885,"kind":"lexicon","path":"embedded","sha256":"e0db021e01b91d651c43921d66f6b0023c8efbf17cac2ec53192ce5305e4e1ac"},{"byte_length":36197,"kind":"lexicon","path":"embedded","sha256":"827317cae68c162f3a96c8a8de4e53ab348e7d3724fd2b834fa85ecde1a1b392"},{"byte_length":1597,"kind":"lock","path":"lexlean.lock","sha256":"f93d180b4ee7a28b214e7ec14d944b2a9f726829ed2b2d6c8151a150bc2b65fb"},{"byte_length":638,"kind":"project-config","path":"lexlean.toml","sha256":"e7fcfa884a8d0dcabfa2292f1bca96a530b17e56a96f4f68ff7eac749ba2b0c4"},{"byte_length":8081,"kind":"source","path":"src/Text.lex.tex","sha256":"57c487328b200f710abcf7ca1e0daf1086d31c32f668fba6e7f5dc1a2e4a1eca"}],"language":"1.2","lean_toolchain":"leanprover/lean4:v4.32.1","modules":[{"lean_module":"LexLeanStd.Text","module":"Text","source_path":"src/Text.lex.tex"}],"outputs":[{"byte_length":11380,"kind":"coverage","path":"coverage/LexLeanStd/Text.coverage.json","sha256":"56012da65c0236693084aec3c621eb772b1716d1045e47584d272c1bad490fe7"},{"byte_length":7428,"kind":"lean","path":"modules/LexLeanStd/Text.lean","sha256":"aa728aceefa15f78b7431bed5a20e300f1a3e80ec3de8293481622aa150b2d8c"},{"byte_length":10602,"kind":"lexicon-closure","path":"lexicons/Text.closure.json","sha256":"1ad76d0ba0c5e4c958f3593285ad434936f9745f4c422cdd592be86889c16500"},{"byte_length":6807,"kind":"map","path":"maps/LexLeanStd/Text.map.json","sha256":"035a06d48d355126facebaa67ff8f658dffc38a0de945f867ecb25d026bc0d9e"},{"byte_length":32401,"kind":"production-eligibility","path":"production/LexLeanStd/Text.eligibility.json","sha256":"4b54b63c69a2686e1642b74588d6f9cd880011b85fba5e63e44deaf4fb278631"},{"byte_length":13276,"kind":"tex","path":"modules/LexLeanStd/Text.tex","sha256":"612cb8192fa44088c7fd3b13e8d654e5388b08d3159ee15c183c42b02c7cdc96"}],"project":"stdlib","selection":["Text"],"semantic_id":"f6fd2434413f885eb97b3577e92c070677f6cd19f86ace77b5a60247639270b1","source_id":"9ff8eb447d5ddb42a8de0d84f3b266107db99d6641e3944452e0b9091cdbb357","spec":"lexlean/build-manifest/1"} diff --git a/stdlib/expected/build/maps/LexLeanStd/Text.map.json b/stdlib/expected/build/maps/LexLeanStd/Text.map.json index 7b1356df1..1a14ac74b 100644 --- a/stdlib/expected/build/maps/LexLeanStd/Text.map.json +++ b/stdlib/expected/build/maps/LexLeanStd/Text.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/LexLeanStd/Text.lean"},{"id":1,"kind":"tex","path":"modules/LexLeanStd/Text.tex"}],"mappings":[{"artifact":0,"gen_end":277,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":8081,"src_start":0},{"artifact":0,"gen_end":611,"gen_start":277,"node":1,"role":"declaration","source":0,"src_end":426,"src_start":113},{"artifact":0,"gen_end":760,"gen_start":611,"node":2,"role":"declaration","source":0,"src_end":607,"src_start":428},{"artifact":0,"gen_end":940,"gen_start":760,"node":3,"role":"declaration","source":0,"src_end":834,"src_start":609},{"artifact":0,"gen_end":1181,"gen_start":940,"node":4,"role":"declaration","source":0,"src_end":1085,"src_start":836},{"artifact":0,"gen_end":1482,"gen_start":1181,"node":5,"role":"declaration","source":0,"src_end":1433,"src_start":1087},{"artifact":0,"gen_end":1948,"gen_start":1482,"node":6,"role":"declaration","source":0,"src_end":1924,"src_start":1435},{"artifact":0,"gen_end":2384,"gen_start":1948,"node":7,"role":"declaration","source":0,"src_end":2353,"src_start":1926},{"artifact":0,"gen_end":2696,"gen_start":2384,"node":8,"role":"declaration","source":0,"src_end":2718,"src_start":2355},{"artifact":0,"gen_end":2932,"gen_start":2696,"node":9,"role":"declaration","source":0,"src_end":3046,"src_start":2720},{"artifact":0,"gen_end":3177,"gen_start":2932,"node":10,"role":"declaration","source":0,"src_end":3293,"src_start":3048},{"artifact":0,"gen_end":3835,"gen_start":3177,"node":11,"role":"declaration","source":0,"src_end":4060,"src_start":3295},{"artifact":0,"gen_end":4452,"gen_start":3835,"node":12,"role":"declaration","source":0,"src_end":4720,"src_start":4062},{"artifact":0,"gen_end":4667,"gen_start":4452,"node":13,"role":"declaration","source":0,"src_end":4932,"src_start":4722},{"artifact":0,"gen_end":5315,"gen_start":4667,"node":14,"role":"declaration","source":0,"src_end":5690,"src_start":4934},{"artifact":0,"gen_end":5998,"gen_start":5315,"node":15,"role":"declaration","source":0,"src_end":6395,"src_start":5692},{"artifact":0,"gen_end":6505,"gen_start":5998,"node":16,"role":"declaration","source":0,"src_end":6993,"src_start":6397},{"artifact":0,"gen_end":6819,"gen_start":6505,"node":17,"role":"declaration","source":0,"src_end":7305,"src_start":6995},{"artifact":0,"gen_end":7407,"gen_start":6819,"node":18,"role":"declaration","source":0,"src_end":8045,"src_start":7307},{"artifact":0,"gen_end":7428,"gen_start":7407,"node":0,"role":"declaration","source":0,"src_end":8081,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":19,"role":"declaration","source":0,"src_end":8081,"src_start":0},{"artifact":1,"gen_end":715,"gen_start":134,"node":20,"role":"declaration","source":0,"src_end":426,"src_start":113},{"artifact":1,"gen_end":1111,"gen_start":715,"node":21,"role":"declaration","source":0,"src_end":607,"src_start":428},{"artifact":1,"gen_end":1538,"gen_start":1111,"node":22,"role":"declaration","source":0,"src_end":834,"src_start":609},{"artifact":1,"gen_end":2027,"gen_start":1538,"node":23,"role":"declaration","source":0,"src_end":1085,"src_start":836},{"artifact":1,"gen_end":2711,"gen_start":2027,"node":24,"role":"declaration","source":0,"src_end":1433,"src_start":1087},{"artifact":1,"gen_end":3524,"gen_start":2711,"node":25,"role":"declaration","source":0,"src_end":1924,"src_start":1435},{"artifact":1,"gen_end":4331,"gen_start":3524,"node":26,"role":"declaration","source":0,"src_end":2353,"src_start":1926},{"artifact":1,"gen_end":5009,"gen_start":4331,"node":27,"role":"declaration","source":0,"src_end":2718,"src_start":2355},{"artifact":1,"gen_end":5649,"gen_start":5009,"node":28,"role":"declaration","source":0,"src_end":3046,"src_start":2720},{"artifact":1,"gen_end":6222,"gen_start":5649,"node":29,"role":"declaration","source":0,"src_end":3293,"src_start":3048},{"artifact":1,"gen_end":7127,"gen_start":6222,"node":30,"role":"declaration","source":0,"src_end":4060,"src_start":3295},{"artifact":1,"gen_end":8201,"gen_start":7127,"node":31,"role":"declaration","source":0,"src_end":4720,"src_start":4062},{"artifact":1,"gen_end":8664,"gen_start":8201,"node":32,"role":"declaration","source":0,"src_end":4932,"src_start":4722},{"artifact":1,"gen_end":9559,"gen_start":8664,"node":33,"role":"declaration","source":0,"src_end":5690,"src_start":4934},{"artifact":1,"gen_end":10688,"gen_start":9559,"node":34,"role":"declaration","source":0,"src_end":6395,"src_start":5692},{"artifact":1,"gen_end":11642,"gen_start":10688,"node":35,"role":"declaration","source":0,"src_end":6993,"src_start":6397},{"artifact":1,"gen_end":12203,"gen_start":11642,"node":36,"role":"declaration","source":0,"src_end":7305,"src_start":6995},{"artifact":1,"gen_end":13261,"gen_start":12203,"node":37,"role":"declaration","source":0,"src_end":8045,"src_start":7307},{"artifact":1,"gen_end":13276,"gen_start":13261,"node":19,"role":"declaration","source":0,"src_end":8081,"src_start":0}],"module":"Text","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-latex-module"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"}],"semantic_id":"5bfc6ad2db2940a1b7735f1309be47dcc4b5143d58cd00cbd6745311cf1f27ee","source_id":"14354f2c3524a80a10b7c1338779f4f79e6d021dfb76b0ae62d9b45e4f9953f6","sources":[{"id":0,"kind":"file","path":"src/Text.lex.tex","sha256":"57c487328b200f710abcf7ca1e0daf1086d31c32f668fba6e7f5dc1a2e4a1eca"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/LexLeanStd/Text.lean"},{"id":1,"kind":"tex","path":"modules/LexLeanStd/Text.tex"}],"mappings":[{"artifact":0,"gen_end":277,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":8081,"src_start":0},{"artifact":0,"gen_end":611,"gen_start":277,"node":1,"role":"declaration","source":0,"src_end":426,"src_start":113},{"artifact":0,"gen_end":760,"gen_start":611,"node":2,"role":"declaration","source":0,"src_end":607,"src_start":428},{"artifact":0,"gen_end":940,"gen_start":760,"node":3,"role":"declaration","source":0,"src_end":834,"src_start":609},{"artifact":0,"gen_end":1181,"gen_start":940,"node":4,"role":"declaration","source":0,"src_end":1085,"src_start":836},{"artifact":0,"gen_end":1482,"gen_start":1181,"node":5,"role":"declaration","source":0,"src_end":1433,"src_start":1087},{"artifact":0,"gen_end":1948,"gen_start":1482,"node":6,"role":"declaration","source":0,"src_end":1924,"src_start":1435},{"artifact":0,"gen_end":2384,"gen_start":1948,"node":7,"role":"declaration","source":0,"src_end":2353,"src_start":1926},{"artifact":0,"gen_end":2696,"gen_start":2384,"node":8,"role":"declaration","source":0,"src_end":2718,"src_start":2355},{"artifact":0,"gen_end":2932,"gen_start":2696,"node":9,"role":"declaration","source":0,"src_end":3046,"src_start":2720},{"artifact":0,"gen_end":3177,"gen_start":2932,"node":10,"role":"declaration","source":0,"src_end":3293,"src_start":3048},{"artifact":0,"gen_end":3835,"gen_start":3177,"node":11,"role":"declaration","source":0,"src_end":4060,"src_start":3295},{"artifact":0,"gen_end":4452,"gen_start":3835,"node":12,"role":"declaration","source":0,"src_end":4720,"src_start":4062},{"artifact":0,"gen_end":4667,"gen_start":4452,"node":13,"role":"declaration","source":0,"src_end":4932,"src_start":4722},{"artifact":0,"gen_end":5315,"gen_start":4667,"node":14,"role":"declaration","source":0,"src_end":5690,"src_start":4934},{"artifact":0,"gen_end":5998,"gen_start":5315,"node":15,"role":"declaration","source":0,"src_end":6395,"src_start":5692},{"artifact":0,"gen_end":6505,"gen_start":5998,"node":16,"role":"declaration","source":0,"src_end":6993,"src_start":6397},{"artifact":0,"gen_end":6819,"gen_start":6505,"node":17,"role":"declaration","source":0,"src_end":7305,"src_start":6995},{"artifact":0,"gen_end":7407,"gen_start":6819,"node":18,"role":"declaration","source":0,"src_end":8045,"src_start":7307},{"artifact":0,"gen_end":7428,"gen_start":7407,"node":0,"role":"declaration","source":0,"src_end":8081,"src_start":0},{"artifact":1,"gen_end":134,"gen_start":0,"node":19,"role":"declaration","source":0,"src_end":8081,"src_start":0},{"artifact":1,"gen_end":715,"gen_start":134,"node":20,"role":"declaration","source":0,"src_end":426,"src_start":113},{"artifact":1,"gen_end":1111,"gen_start":715,"node":21,"role":"declaration","source":0,"src_end":607,"src_start":428},{"artifact":1,"gen_end":1538,"gen_start":1111,"node":22,"role":"declaration","source":0,"src_end":834,"src_start":609},{"artifact":1,"gen_end":2027,"gen_start":1538,"node":23,"role":"declaration","source":0,"src_end":1085,"src_start":836},{"artifact":1,"gen_end":2711,"gen_start":2027,"node":24,"role":"declaration","source":0,"src_end":1433,"src_start":1087},{"artifact":1,"gen_end":3524,"gen_start":2711,"node":25,"role":"declaration","source":0,"src_end":1924,"src_start":1435},{"artifact":1,"gen_end":4331,"gen_start":3524,"node":26,"role":"declaration","source":0,"src_end":2353,"src_start":1926},{"artifact":1,"gen_end":5009,"gen_start":4331,"node":27,"role":"declaration","source":0,"src_end":2718,"src_start":2355},{"artifact":1,"gen_end":5649,"gen_start":5009,"node":28,"role":"declaration","source":0,"src_end":3046,"src_start":2720},{"artifact":1,"gen_end":6222,"gen_start":5649,"node":29,"role":"declaration","source":0,"src_end":3293,"src_start":3048},{"artifact":1,"gen_end":7127,"gen_start":6222,"node":30,"role":"declaration","source":0,"src_end":4060,"src_start":3295},{"artifact":1,"gen_end":8201,"gen_start":7127,"node":31,"role":"declaration","source":0,"src_end":4720,"src_start":4062},{"artifact":1,"gen_end":8664,"gen_start":8201,"node":32,"role":"declaration","source":0,"src_end":4932,"src_start":4722},{"artifact":1,"gen_end":9559,"gen_start":8664,"node":33,"role":"declaration","source":0,"src_end":5690,"src_start":4934},{"artifact":1,"gen_end":10688,"gen_start":9559,"node":34,"role":"declaration","source":0,"src_end":6395,"src_start":5692},{"artifact":1,"gen_end":11642,"gen_start":10688,"node":35,"role":"declaration","source":0,"src_end":6993,"src_start":6397},{"artifact":1,"gen_end":12203,"gen_start":11642,"node":36,"role":"declaration","source":0,"src_end":7305,"src_start":6995},{"artifact":1,"gen_end":13261,"gen_start":12203,"node":37,"role":"declaration","source":0,"src_end":8045,"src_start":7307},{"artifact":1,"gen_end":13276,"gen_start":13261,"node":19,"role":"declaration","source":0,"src_end":8081,"src_start":0}],"module":"Text","nodes":[{"id":0,"kind":"semantic-lean-module"},{"id":1,"kind":"semantic-declaration"},{"id":2,"kind":"semantic-declaration"},{"id":3,"kind":"semantic-declaration"},{"id":4,"kind":"semantic-declaration"},{"id":5,"kind":"semantic-declaration"},{"id":6,"kind":"semantic-declaration"},{"id":7,"kind":"semantic-declaration"},{"id":8,"kind":"semantic-declaration"},{"id":9,"kind":"semantic-declaration"},{"id":10,"kind":"semantic-declaration"},{"id":11,"kind":"semantic-declaration"},{"id":12,"kind":"semantic-declaration"},{"id":13,"kind":"semantic-declaration"},{"id":14,"kind":"semantic-declaration"},{"id":15,"kind":"semantic-declaration"},{"id":16,"kind":"semantic-declaration"},{"id":17,"kind":"semantic-declaration"},{"id":18,"kind":"semantic-declaration"},{"id":19,"kind":"semantic-latex-module"},{"id":20,"kind":"semantic-declaration"},{"id":21,"kind":"semantic-declaration"},{"id":22,"kind":"semantic-declaration"},{"id":23,"kind":"semantic-declaration"},{"id":24,"kind":"semantic-declaration"},{"id":25,"kind":"semantic-declaration"},{"id":26,"kind":"semantic-declaration"},{"id":27,"kind":"semantic-declaration"},{"id":28,"kind":"semantic-declaration"},{"id":29,"kind":"semantic-declaration"},{"id":30,"kind":"semantic-declaration"},{"id":31,"kind":"semantic-declaration"},{"id":32,"kind":"semantic-declaration"},{"id":33,"kind":"semantic-declaration"},{"id":34,"kind":"semantic-declaration"},{"id":35,"kind":"semantic-declaration"},{"id":36,"kind":"semantic-declaration"},{"id":37,"kind":"semantic-declaration"}],"semantic_id":"f6fd2434413f885eb97b3577e92c070677f6cd19f86ace77b5a60247639270b1","source_id":"9ff8eb447d5ddb42a8de0d84f3b266107db99d6641e3944452e0b9091cdbb357","sources":[{"id":0,"kind":"file","path":"src/Text.lex.tex","sha256":"57c487328b200f710abcf7ca1e0daf1086d31c32f668fba6e7f5dc1a2e4a1eca"}],"spec":"lexlean/source-map/1"} diff --git a/stdlib/expected/verify/audit/LexLeanAudit.A5bfc6ad2db2940a1b7735f1309be47dc.LexLeanRuntime.Collections.process.json b/stdlib/expected/verify/audit/LexLeanAudit.A5bfc6ad2db2940a1b7735f1309be47dc.LexLeanRuntime.Collections.process.json deleted file mode 100644 index 1c132e5a7..000000000 --- a/stdlib/expected/verify/audit/LexLeanAudit.A5bfc6ad2db2940a1b7735f1309be47dc.LexLeanRuntime.Collections.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A5bfc6ad2db2940a1b7735f1309be47dc.LexLeanRuntime.Collections.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A5bfc6ad2db2940a1b7735f1309be47dc.LexLeanRuntime.Collections","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanCollections.Key' does not depend on any axioms\n'LexLeanCollections.Key.casesOn' does not depend on any axioms\n'LexLeanCollections.Key.compare' does not depend on any axioms\n'LexLeanCollections.Key.ctorIdx' does not depend on any axioms\n'LexLeanCollections.Key.mk._flat_ctor' does not depend on any axioms\n'LexLeanCollections.Key.mk.noConfusion' does not depend on any axioms\n'LexLeanCollections.Key.noConfusion' does not depend on any axioms\n'LexLeanCollections.Key.noConfusionType' does not depend on any axioms\n'LexLeanCollections.Key.recOn' does not depend on any axioms\n'LexLeanCollections.compareCodes' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._f' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._sunfold' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._unsafe_rec' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.match_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.match_4' does not depend on any axioms\n'LexLeanCollections.containsElement' does not depend on any axioms\n'LexLeanCollections.containsElement._f' does not depend on any axioms\n'LexLeanCollections.containsElement._sunfold' does not depend on any axioms\n'LexLeanCollections.containsElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.graphNodes' does not depend on any axioms\n'LexLeanCollections.graphReachable' depends on axioms: [propext]\n'LexLeanCollections.graphSuccessors' does not depend on any axioms\n'LexLeanCollections.graphTopological' does not depend on any axioms\n'LexLeanCollections.insertElement' does not depend on any axioms\n'LexLeanCollections.insertElement._f' does not depend on any axioms\n'LexLeanCollections.insertElement._sunfold' does not depend on any axioms\n'LexLeanCollections.insertElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.insertElement.match_1' does not depend on any axioms\n'LexLeanCollections.insertEntry' does not depend on any axioms\n'LexLeanCollections.insertEntry._f' does not depend on any axioms\n'LexLeanCollections.insertEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.insertEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.insertEntry.match_1' does not depend on any axioms\n'LexLeanCollections.insertEntry.match_3' does not depend on any axioms\n'LexLeanCollections.instKeyBool' depends on axioms: [propext]\n'LexLeanCollections.instKeyInt' does not depend on any axioms\n'LexLeanCollections.instKeyInt16' does not depend on any axioms\n'LexLeanCollections.instKeyInt32' does not depend on any axioms\n'LexLeanCollections.instKeyInt64' does not depend on any axioms\n'LexLeanCollections.instKeyInt8' does not depend on any axioms\n'LexLeanCollections.instKeyNat' does not depend on any axioms\n'LexLeanCollections.instKeyProd' depends on axioms: [propext]\n'LexLeanCollections.instKeyString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanCollections.instKeyUInt16' does not depend on any axioms\n'LexLeanCollections.instKeyUInt32' does not depend on any axioms\n'LexLeanCollections.instKeyUInt64' does not depend on any axioms\n'LexLeanCollections.instKeyUInt8' does not depend on any axioms\n'LexLeanCollections.iterate' does not depend on any axioms\n'LexLeanCollections.iterate._f' does not depend on any axioms\n'LexLeanCollections.iterate._sunfold' does not depend on any axioms\n'LexLeanCollections.iterate._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.iterate.match_1' does not depend on any axioms\n'LexLeanCollections.iterateUntil' does not depend on any axioms\n'LexLeanCollections.iterateUntil._f' does not depend on any axioms\n'LexLeanCollections.iterateUntil._sunfold' does not depend on any axioms\n'LexLeanCollections.iterateUntil._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.iterateUntil.match_1' does not depend on any axioms\n'LexLeanCollections.lessThan' depends on axioms: [propext]\n'LexLeanCollections.lessThan._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.lessThan.match_1' depends on axioms: [propext]\n'LexLeanCollections.listFold' does not depend on any axioms\n'LexLeanCollections.lookupEntry' does not depend on any axioms\n'LexLeanCollections.lookupEntry._f' does not depend on any axioms\n'LexLeanCollections.lookupEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.lookupEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.mapContains' does not depend on any axioms\n'LexLeanCollections.mapEntries' does not depend on any axioms\n'LexLeanCollections.mapFold' does not depend on any axioms\n'LexLeanCollections.mapInsert' does not depend on any axioms\n'LexLeanCollections.mapKeys' does not depend on any axioms\n'LexLeanCollections.mapLookup' does not depend on any axioms\n'LexLeanCollections.mapRemove' does not depend on any axioms\n'LexLeanCollections.mapSize' does not depend on any axioms\n'LexLeanCollections.mapValues' does not depend on any axioms\n'LexLeanCollections.reachableFrom' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._f' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._sunfold' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._unsafe_rec' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom.match_1' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom.match_4' does not depend on any axioms\n'LexLeanCollections.removeElement' does not depend on any axioms\n'LexLeanCollections.removeElement._f' does not depend on any axioms\n'LexLeanCollections.removeElement._sunfold' does not depend on any axioms\n'LexLeanCollections.removeElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.removeEntry' does not depend on any axioms\n'LexLeanCollections.removeEntry._f' does not depend on any axioms\n'LexLeanCollections.removeEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.removeEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.setContains' does not depend on any axioms\n'LexLeanCollections.setDifference' does not depend on any axioms\n'LexLeanCollections.setElements' does not depend on any axioms\n'LexLeanCollections.setFold' does not depend on any axioms\n'LexLeanCollections.setInsert' does not depend on any axioms\n'LexLeanCollections.setIntersection' does not depend on any axioms\n'LexLeanCollections.setRemove' does not depend on any axioms\n'LexLeanCollections.setSize' does not depend on any axioms\n'LexLeanCollections.setUnion' does not depend on any axioms\n'LexLeanCollections.topological' does not depend on any axioms\n'LexLeanCollections.topological._f' does not depend on any axioms\n'LexLeanCollections.topological._sunfold' does not depend on any axioms\n'LexLeanCollections.topological._unsafe_rec' does not depend on any axioms\n","stdout_sha256":"b75acc0e99e23684c3cc876eacbfc93f47161cfee8a7440df17fa45f321c8c6a","tool":"lean"} diff --git a/stdlib/expected/verify/audit/LexLeanAudit.A5bfc6ad2db2940a1b7735f1309be47dc.LexLeanRuntime.Portable.process.json b/stdlib/expected/verify/audit/LexLeanAudit.A5bfc6ad2db2940a1b7735f1309be47dc.LexLeanRuntime.Portable.process.json deleted file mode 100644 index a28833831..000000000 --- a/stdlib/expected/verify/audit/LexLeanAudit.A5bfc6ad2db2940a1b7735f1309be47dc.LexLeanRuntime.Portable.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A5bfc6ad2db2940a1b7735f1309be47dc.LexLeanRuntime.Portable.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A5bfc6ad2db2940a1b7735f1309be47dc.LexLeanRuntime.Portable","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanRuntime.Appendable' does not depend on any axioms\n'LexLeanRuntime.Appendable.append' does not depend on any axioms\n'LexLeanRuntime.Appendable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Appendable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Appendable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Appendable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Appendable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Appendable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Appendable.recOn' does not depend on any axioms\n'LexLeanRuntime.Decimal' does not depend on any axioms\n'LexLeanRuntime.Decimal.casesOn' does not depend on any axioms\n'LexLeanRuntime.Decimal.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Decimal.format' does not depend on any axioms\n'LexLeanRuntime.Decimal.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Decimal.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Decimal.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Decimal.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Decimal.parse' does not depend on any axioms\n'LexLeanRuntime.Decimal.recOn' does not depend on any axioms\n'LexLeanRuntime.Fixed' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitAnd' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitNot' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitOr' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitXor' does not depend on any axioms\n'LexLeanRuntime.Fixed.casesOn' does not depend on any axioms\n'LexLeanRuntime.Fixed.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Fixed.fromInt' does not depend on any axioms\n'LexLeanRuntime.Fixed.maximum' does not depend on any axioms\n'LexLeanRuntime.Fixed.minimum' does not depend on any axioms\n'LexLeanRuntime.Fixed.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Fixed.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Fixed.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Fixed.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Fixed.recOn' does not depend on any axioms\n'LexLeanRuntime.Fixed.shiftLeft' does not depend on any axioms\n'LexLeanRuntime.Fixed.shiftRight' does not depend on any axioms\n'LexLeanRuntime.Fixed.toToMathInt' does not depend on any axioms\n'LexLeanRuntime.Indexable' does not depend on any axioms\n'LexLeanRuntime.Indexable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Indexable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Indexable.index' does not depend on any axioms\n'LexLeanRuntime.Indexable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Indexable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Indexable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Indexable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Indexable.recOn' does not depend on any axioms\n'LexLeanRuntime.Lengthable' does not depend on any axioms\n'LexLeanRuntime.Lengthable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Lengthable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Lengthable.length' does not depend on any axioms\n'LexLeanRuntime.Lengthable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Lengthable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Lengthable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Lengthable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Lengthable.recOn' does not depend on any axioms\n'LexLeanRuntime.Quotient' does not depend on any axioms\n'LexLeanRuntime.Quotient.casesOn' does not depend on any axioms\n'LexLeanRuntime.Quotient.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Quotient.isZero' does not depend on any axioms\n'LexLeanRuntime.Quotient.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Quotient.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Quotient.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Quotient.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Quotient.quotient' does not depend on any axioms\n'LexLeanRuntime.Quotient.recOn' does not depend on any axioms\n'LexLeanRuntime.Quotient.remainder' does not depend on any axioms\n'LexLeanRuntime.Sliceable' does not depend on any axioms\n'LexLeanRuntime.Sliceable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Sliceable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Sliceable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Sliceable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Sliceable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Sliceable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Sliceable.recOn' does not depend on any axioms\n'LexLeanRuntime.Sliceable.slice' does not depend on any axioms\n'LexLeanRuntime.ToMathInt' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.casesOn' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.noConfusion' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.recOn' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.toInt' does not depend on any axioms\n'LexLeanRuntime.append' does not depend on any axioms\n'LexLeanRuntime.bitAnd' does not depend on any axioms\n'LexLeanRuntime.bitNot' does not depend on any axioms\n'LexLeanRuntime.bitOr' does not depend on any axioms\n'LexLeanRuntime.bitXor' does not depend on any axioms\n'LexLeanRuntime.checkedAdd' does not depend on any axioms\n'LexLeanRuntime.checkedAddInt64' does not depend on any axioms\n'LexLeanRuntime.checkedConvert' does not depend on any axioms\n'LexLeanRuntime.checkedFromInt' does not depend on any axioms\n'LexLeanRuntime.checkedMultiply' does not depend on any axioms\n'LexLeanRuntime.checkedMultiplyInt64' does not depend on any axioms\n'LexLeanRuntime.checkedMultiplyInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.checkedNegate' does not depend on any axioms\n'LexLeanRuntime.checkedNegateInt64' does not depend on any axioms\n'LexLeanRuntime.checkedQuotient' does not depend on any axioms\n'LexLeanRuntime.checkedQuotientInt64' does not depend on any axioms\n'LexLeanRuntime.checkedSubtract' does not depend on any axioms\n'LexLeanRuntime.checkedSubtractInt64' does not depend on any axioms\n'LexLeanRuntime.compareBytes' depends on axioms: [propext]\n'LexLeanRuntime.divideMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._f' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._sunfold' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.equal' does not depend on any axioms\n'LexLeanRuntime.formatDecimal' does not depend on any axioms\n'LexLeanRuntime.index' does not depend on any axioms\n'LexLeanRuntime.instAppendableByteArray' does not depend on any axioms\n'LexLeanRuntime.instAppendableList' does not depend on any axioms\n'LexLeanRuntime.instDecimalInt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instDecimalInt.match_1' does not depend on any axioms\n'LexLeanRuntime.instDecimalOfFixedOfToString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instFixedInt16' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt32' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt64' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt8' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt16' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt32' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt64' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt8' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instIndexableByteArrayUInt8' does not depend on any axioms\n'LexLeanRuntime.instIndexableList' does not depend on any axioms\n'LexLeanRuntime.instLengthableByteArray' does not depend on any axioms\n'LexLeanRuntime.instLengthableList' does not depend on any axioms\n'LexLeanRuntime.instLengthableString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instQuotientInt' does not depend on any axioms\n'LexLeanRuntime.instQuotientNat' does not depend on any axioms\n'LexLeanRuntime.instSliceableByteArray' does not depend on any axioms\n'LexLeanRuntime.instSliceableList' does not depend on any axioms\n'LexLeanRuntime.instToMathIntInt' does not depend on any axioms\n'LexLeanRuntime.join' depends on axioms: [propext]\n'LexLeanRuntime.length' does not depend on any axioms\n'LexLeanRuntime.listIndex' does not depend on any axioms\n'LexLeanRuntime.listIndex._f' does not depend on any axioms\n'LexLeanRuntime.listIndex._sunfold' does not depend on any axioms\n'LexLeanRuntime.listIndex._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.listIndex.match_1' does not depend on any axioms\n'LexLeanRuntime.magnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.multiply' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._f' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._sunfold' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.negate' does not depend on any axioms\n'LexLeanRuntime.parseDecimal' does not depend on any axioms\n'LexLeanRuntime.quotient' does not depend on any axioms\n'LexLeanRuntime.remainder' does not depend on any axioms\n'LexLeanRuntime.shiftLeft' does not depend on any axioms\n'LexLeanRuntime.shiftRight' does not depend on any axioms\n'LexLeanRuntime.signedMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.slice' does not depend on any axioms\n'LexLeanRuntime.splitExact' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.subtract' does not depend on any axioms\n'LexLeanRuntime.utf8Decode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.utf8Encode' does not depend on any axioms\n","stdout_sha256":"73fea1d9e9e9f0a2f1363b9f284eeeb9e434430e9fa910260b9526bad864641e","tool":"lean"} diff --git a/stdlib/expected/verify/audit/LexLeanAudit.A5bfc6ad2db2940a1b7735f1309be47dc.LexLeanStd.Text.process.json b/stdlib/expected/verify/audit/LexLeanAudit.A5bfc6ad2db2940a1b7735f1309be47dc.LexLeanStd.Text.process.json deleted file mode 100644 index 46ebd1828..000000000 --- a/stdlib/expected/verify/audit/LexLeanAudit.A5bfc6ad2db2940a1b7735f1309be47dc.LexLeanStd.Text.process.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","$STAGING/audit/LexLeanAudit.A5bfc6ad2db2940a1b7735f1309be47dc.LexLeanStd.Text.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.A5bfc6ad2db2940a1b7735f1309be47dc.LexLeanStd.Text","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanStd.Text.byteAt' does not depend on any axioms\n'LexLeanStd.Text.chomp' does not depend on any axioms\n'LexLeanStd.Text.endsWith' does not depend on any axioms\n'LexLeanStd.Text.find' does not depend on any axioms\n'LexLeanStd.Text.isSpace' does not depend on any axioms\n'LexLeanStd.Text.joinWith' does not depend on any axioms\n'LexLeanStd.Text.lineStep' does not depend on any axioms\n'LexLeanStd.Text.lines' does not depend on any axioms\n'LexLeanStd.Text.matchAt' does not depend on any axioms\n'LexLeanStd.Text.reverse' does not depend on any axioms\n'LexLeanStd.Text.sliceOr' does not depend on any axioms\n'LexLeanStd.Text.spaceAt' does not depend on any axioms\n'LexLeanStd.Text.splitOn' does not depend on any axioms\n'LexLeanStd.Text.splitStep' does not depend on any axioms\n'LexLeanStd.Text.startsWith' does not depend on any axioms\n'LexLeanStd.Text.trim' does not depend on any axioms\n'LexLeanStd.Text.trimEnd' does not depend on any axioms\n'LexLeanStd.Text.trimStart' does not depend on any axioms\n","stdout_sha256":"7d0d170dc8609025273db5f55bfa751ad62c100aa8693fd9fbafa3d1782b3751","tool":"lean"} diff --git a/stdlib/expected/verify/audit/LexLeanAudit.A5bfc6ad2db2940a1b7735f1309be47dc.LexLeanRuntime.Collections.lean b/stdlib/expected/verify/audit/LexLeanAudit.Af6fd2434413f885eb97b3577e92c0706.LexLeanRuntime.Collections.lean similarity index 100% rename from stdlib/expected/verify/audit/LexLeanAudit.A5bfc6ad2db2940a1b7735f1309be47dc.LexLeanRuntime.Collections.lean rename to stdlib/expected/verify/audit/LexLeanAudit.Af6fd2434413f885eb97b3577e92c0706.LexLeanRuntime.Collections.lean diff --git a/stdlib/expected/verify/audit/LexLeanAudit.Af6fd2434413f885eb97b3577e92c0706.LexLeanRuntime.Collections.process.json b/stdlib/expected/verify/audit/LexLeanAudit.Af6fd2434413f885eb97b3577e92c0706.LexLeanRuntime.Collections.process.json new file mode 100644 index 000000000..6e9a75190 --- /dev/null +++ b/stdlib/expected/verify/audit/LexLeanAudit.Af6fd2434413f885eb97b3577e92c0706.LexLeanRuntime.Collections.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Af6fd2434413f885eb97b3577e92c0706.LexLeanRuntime.Collections.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Af6fd2434413f885eb97b3577e92c0706.LexLeanRuntime.Collections","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanCollections.Key' does not depend on any axioms\n'LexLeanCollections.Key.casesOn' does not depend on any axioms\n'LexLeanCollections.Key.compare' does not depend on any axioms\n'LexLeanCollections.Key.ctorIdx' does not depend on any axioms\n'LexLeanCollections.Key.mk._flat_ctor' does not depend on any axioms\n'LexLeanCollections.Key.mk.noConfusion' does not depend on any axioms\n'LexLeanCollections.Key.noConfusion' does not depend on any axioms\n'LexLeanCollections.Key.noConfusionType' does not depend on any axioms\n'LexLeanCollections.Key.recOn' does not depend on any axioms\n'LexLeanCollections.compareCodes' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._f' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._sunfold' depends on axioms: [propext]\n'LexLeanCollections.compareCodes._unsafe_rec' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.match_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.match_4' does not depend on any axioms\n'LexLeanCollections.containsElement' does not depend on any axioms\n'LexLeanCollections.containsElement._f' does not depend on any axioms\n'LexLeanCollections.containsElement._sunfold' does not depend on any axioms\n'LexLeanCollections.containsElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.graphNodes' does not depend on any axioms\n'LexLeanCollections.graphReachable' depends on axioms: [propext]\n'LexLeanCollections.graphSuccessors' does not depend on any axioms\n'LexLeanCollections.graphTopological' does not depend on any axioms\n'LexLeanCollections.insertElement' does not depend on any axioms\n'LexLeanCollections.insertElement._f' does not depend on any axioms\n'LexLeanCollections.insertElement._sunfold' does not depend on any axioms\n'LexLeanCollections.insertElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.insertElement.match_1' does not depend on any axioms\n'LexLeanCollections.insertEntry' does not depend on any axioms\n'LexLeanCollections.insertEntry._f' does not depend on any axioms\n'LexLeanCollections.insertEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.insertEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.insertEntry.match_1' does not depend on any axioms\n'LexLeanCollections.insertEntry.match_3' does not depend on any axioms\n'LexLeanCollections.instKeyBool' depends on axioms: [propext]\n'LexLeanCollections.instKeyInt' does not depend on any axioms\n'LexLeanCollections.instKeyInt16' does not depend on any axioms\n'LexLeanCollections.instKeyInt32' does not depend on any axioms\n'LexLeanCollections.instKeyInt64' does not depend on any axioms\n'LexLeanCollections.instKeyInt8' does not depend on any axioms\n'LexLeanCollections.instKeyNat' does not depend on any axioms\n'LexLeanCollections.instKeyProd' depends on axioms: [propext]\n'LexLeanCollections.instKeyString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanCollections.instKeyUInt16' does not depend on any axioms\n'LexLeanCollections.instKeyUInt32' does not depend on any axioms\n'LexLeanCollections.instKeyUInt64' does not depend on any axioms\n'LexLeanCollections.instKeyUInt8' does not depend on any axioms\n'LexLeanCollections.iterate' does not depend on any axioms\n'LexLeanCollections.iterate._f' does not depend on any axioms\n'LexLeanCollections.iterate._sunfold' does not depend on any axioms\n'LexLeanCollections.iterate._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.iterate.match_1' does not depend on any axioms\n'LexLeanCollections.iterateUntil' does not depend on any axioms\n'LexLeanCollections.iterateUntil._f' does not depend on any axioms\n'LexLeanCollections.iterateUntil._sunfold' does not depend on any axioms\n'LexLeanCollections.iterateUntil._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.iterateUntil.match_1' does not depend on any axioms\n'LexLeanCollections.lessThan' depends on axioms: [propext]\n'LexLeanCollections.lessThan._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.lessThan.match_1' depends on axioms: [propext]\n'LexLeanCollections.listFold' does not depend on any axioms\n'LexLeanCollections.lookupEntry' does not depend on any axioms\n'LexLeanCollections.lookupEntry._f' does not depend on any axioms\n'LexLeanCollections.lookupEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.lookupEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.mapContains' does not depend on any axioms\n'LexLeanCollections.mapEntries' does not depend on any axioms\n'LexLeanCollections.mapFold' does not depend on any axioms\n'LexLeanCollections.mapInsert' does not depend on any axioms\n'LexLeanCollections.mapKeys' does not depend on any axioms\n'LexLeanCollections.mapLookup' does not depend on any axioms\n'LexLeanCollections.mapRemove' does not depend on any axioms\n'LexLeanCollections.mapSize' does not depend on any axioms\n'LexLeanCollections.mapValues' does not depend on any axioms\n'LexLeanCollections.reachableFrom' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._f' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._sunfold' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom._unsafe_rec' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom.match_1' depends on axioms: [propext]\n'LexLeanCollections.reachableFrom.match_4' does not depend on any axioms\n'LexLeanCollections.removeElement' does not depend on any axioms\n'LexLeanCollections.removeElement._f' does not depend on any axioms\n'LexLeanCollections.removeElement._sunfold' does not depend on any axioms\n'LexLeanCollections.removeElement._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.removeEntry' does not depend on any axioms\n'LexLeanCollections.removeEntry._f' does not depend on any axioms\n'LexLeanCollections.removeEntry._sunfold' does not depend on any axioms\n'LexLeanCollections.removeEntry._unsafe_rec' does not depend on any axioms\n'LexLeanCollections.setContains' does not depend on any axioms\n'LexLeanCollections.setDifference' does not depend on any axioms\n'LexLeanCollections.setElements' does not depend on any axioms\n'LexLeanCollections.setFold' does not depend on any axioms\n'LexLeanCollections.setInsert' does not depend on any axioms\n'LexLeanCollections.setIntersection' does not depend on any axioms\n'LexLeanCollections.setRemove' does not depend on any axioms\n'LexLeanCollections.setSize' does not depend on any axioms\n'LexLeanCollections.setUnion' does not depend on any axioms\n'LexLeanCollections.topological' does not depend on any axioms\n'LexLeanCollections.topological._f' does not depend on any axioms\n'LexLeanCollections.topological._sunfold' does not depend on any axioms\n'LexLeanCollections.topological._unsafe_rec' does not depend on any axioms\n","stdout_sha256":"b75acc0e99e23684c3cc876eacbfc93f47161cfee8a7440df17fa45f321c8c6a","tool":"lean"} diff --git a/stdlib/expected/verify/audit/LexLeanAudit.A5bfc6ad2db2940a1b7735f1309be47dc.LexLeanRuntime.Portable.lean b/stdlib/expected/verify/audit/LexLeanAudit.Af6fd2434413f885eb97b3577e92c0706.LexLeanRuntime.Portable.lean similarity index 100% rename from stdlib/expected/verify/audit/LexLeanAudit.A5bfc6ad2db2940a1b7735f1309be47dc.LexLeanRuntime.Portable.lean rename to stdlib/expected/verify/audit/LexLeanAudit.Af6fd2434413f885eb97b3577e92c0706.LexLeanRuntime.Portable.lean diff --git a/stdlib/expected/verify/audit/LexLeanAudit.Af6fd2434413f885eb97b3577e92c0706.LexLeanRuntime.Portable.process.json b/stdlib/expected/verify/audit/LexLeanAudit.Af6fd2434413f885eb97b3577e92c0706.LexLeanRuntime.Portable.process.json new file mode 100644 index 000000000..a74bd20a7 --- /dev/null +++ b/stdlib/expected/verify/audit/LexLeanAudit.Af6fd2434413f885eb97b3577e92c0706.LexLeanRuntime.Portable.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Af6fd2434413f885eb97b3577e92c0706.LexLeanRuntime.Portable.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Af6fd2434413f885eb97b3577e92c0706.LexLeanRuntime.Portable","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanRuntime.Appendable' does not depend on any axioms\n'LexLeanRuntime.Appendable.append' does not depend on any axioms\n'LexLeanRuntime.Appendable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Appendable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Appendable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Appendable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Appendable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Appendable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Appendable.recOn' does not depend on any axioms\n'LexLeanRuntime.Decimal' does not depend on any axioms\n'LexLeanRuntime.Decimal.casesOn' does not depend on any axioms\n'LexLeanRuntime.Decimal.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Decimal.format' does not depend on any axioms\n'LexLeanRuntime.Decimal.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Decimal.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Decimal.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Decimal.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Decimal.parse' does not depend on any axioms\n'LexLeanRuntime.Decimal.recOn' does not depend on any axioms\n'LexLeanRuntime.Fixed' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitAnd' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitNot' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitOr' does not depend on any axioms\n'LexLeanRuntime.Fixed.bitXor' does not depend on any axioms\n'LexLeanRuntime.Fixed.casesOn' does not depend on any axioms\n'LexLeanRuntime.Fixed.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Fixed.fromInt' does not depend on any axioms\n'LexLeanRuntime.Fixed.maximum' does not depend on any axioms\n'LexLeanRuntime.Fixed.minimum' does not depend on any axioms\n'LexLeanRuntime.Fixed.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Fixed.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Fixed.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Fixed.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Fixed.recOn' does not depend on any axioms\n'LexLeanRuntime.Fixed.shiftLeft' does not depend on any axioms\n'LexLeanRuntime.Fixed.shiftRight' does not depend on any axioms\n'LexLeanRuntime.Fixed.toToMathInt' does not depend on any axioms\n'LexLeanRuntime.Indexable' does not depend on any axioms\n'LexLeanRuntime.Indexable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Indexable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Indexable.index' does not depend on any axioms\n'LexLeanRuntime.Indexable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Indexable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Indexable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Indexable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Indexable.recOn' does not depend on any axioms\n'LexLeanRuntime.Lengthable' does not depend on any axioms\n'LexLeanRuntime.Lengthable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Lengthable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Lengthable.length' does not depend on any axioms\n'LexLeanRuntime.Lengthable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Lengthable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Lengthable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Lengthable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Lengthable.recOn' does not depend on any axioms\n'LexLeanRuntime.Quotient' does not depend on any axioms\n'LexLeanRuntime.Quotient.casesOn' does not depend on any axioms\n'LexLeanRuntime.Quotient.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Quotient.isZero' does not depend on any axioms\n'LexLeanRuntime.Quotient.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Quotient.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Quotient.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Quotient.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Quotient.quotient' does not depend on any axioms\n'LexLeanRuntime.Quotient.recOn' does not depend on any axioms\n'LexLeanRuntime.Quotient.remainder' does not depend on any axioms\n'LexLeanRuntime.Sliceable' does not depend on any axioms\n'LexLeanRuntime.Sliceable.casesOn' does not depend on any axioms\n'LexLeanRuntime.Sliceable.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.Sliceable.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.Sliceable.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Sliceable.noConfusion' does not depend on any axioms\n'LexLeanRuntime.Sliceable.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.Sliceable.recOn' does not depend on any axioms\n'LexLeanRuntime.Sliceable.slice' does not depend on any axioms\n'LexLeanRuntime.ToMathInt' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.casesOn' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.ctorIdx' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.mk._flat_ctor' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.mk.noConfusion' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.noConfusion' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.noConfusionType' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.recOn' does not depend on any axioms\n'LexLeanRuntime.ToMathInt.toInt' does not depend on any axioms\n'LexLeanRuntime.append' does not depend on any axioms\n'LexLeanRuntime.bitAnd' does not depend on any axioms\n'LexLeanRuntime.bitNot' does not depend on any axioms\n'LexLeanRuntime.bitOr' does not depend on any axioms\n'LexLeanRuntime.bitXor' does not depend on any axioms\n'LexLeanRuntime.checkedAdd' does not depend on any axioms\n'LexLeanRuntime.checkedAddInt64' does not depend on any axioms\n'LexLeanRuntime.checkedConvert' does not depend on any axioms\n'LexLeanRuntime.checkedFromInt' does not depend on any axioms\n'LexLeanRuntime.checkedMultiply' does not depend on any axioms\n'LexLeanRuntime.checkedMultiplyInt64' does not depend on any axioms\n'LexLeanRuntime.checkedMultiplyInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.checkedNegate' does not depend on any axioms\n'LexLeanRuntime.checkedNegateInt64' does not depend on any axioms\n'LexLeanRuntime.checkedQuotient' does not depend on any axioms\n'LexLeanRuntime.checkedQuotientInt64' does not depend on any axioms\n'LexLeanRuntime.checkedSubtract' does not depend on any axioms\n'LexLeanRuntime.checkedSubtractInt64' does not depend on any axioms\n'LexLeanRuntime.compareBytes' depends on axioms: [propext]\n'LexLeanRuntime.divideMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._f' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._sunfold' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.divideMagnitudeInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.equal' does not depend on any axioms\n'LexLeanRuntime.formatDecimal' does not depend on any axioms\n'LexLeanRuntime.index' does not depend on any axioms\n'LexLeanRuntime.instAppendableByteArray' does not depend on any axioms\n'LexLeanRuntime.instAppendableList' does not depend on any axioms\n'LexLeanRuntime.instDecimalInt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instDecimalInt.match_1' does not depend on any axioms\n'LexLeanRuntime.instDecimalOfFixedOfToString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instFixedInt16' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt32' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt64' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedInt8' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt16' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt32' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt64' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instFixedUInt8' depends on axioms: [propext, Quot.sound]\n'LexLeanRuntime.instIndexableByteArrayUInt8' does not depend on any axioms\n'LexLeanRuntime.instIndexableList' does not depend on any axioms\n'LexLeanRuntime.instLengthableByteArray' does not depend on any axioms\n'LexLeanRuntime.instLengthableList' does not depend on any axioms\n'LexLeanRuntime.instLengthableString' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.instQuotientInt' does not depend on any axioms\n'LexLeanRuntime.instQuotientNat' does not depend on any axioms\n'LexLeanRuntime.instSliceableByteArray' does not depend on any axioms\n'LexLeanRuntime.instSliceableList' does not depend on any axioms\n'LexLeanRuntime.instToMathIntInt' does not depend on any axioms\n'LexLeanRuntime.join' depends on axioms: [propext]\n'LexLeanRuntime.length' does not depend on any axioms\n'LexLeanRuntime.listIndex' does not depend on any axioms\n'LexLeanRuntime.listIndex._f' does not depend on any axioms\n'LexLeanRuntime.listIndex._sunfold' does not depend on any axioms\n'LexLeanRuntime.listIndex._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.listIndex.match_1' does not depend on any axioms\n'LexLeanRuntime.magnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.multiply' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._f' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._sunfold' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64._unsafe_rec' does not depend on any axioms\n'LexLeanRuntime.multiplyMagnitudeInt64.match_1' does not depend on any axioms\n'LexLeanRuntime.negate' does not depend on any axioms\n'LexLeanRuntime.parseDecimal' does not depend on any axioms\n'LexLeanRuntime.quotient' does not depend on any axioms\n'LexLeanRuntime.remainder' does not depend on any axioms\n'LexLeanRuntime.shiftLeft' does not depend on any axioms\n'LexLeanRuntime.shiftRight' does not depend on any axioms\n'LexLeanRuntime.signedMagnitudeInt64' does not depend on any axioms\n'LexLeanRuntime.slice' does not depend on any axioms\n'LexLeanRuntime.splitExact' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.subtract' does not depend on any axioms\n'LexLeanRuntime.utf8Decode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.utf8Encode' does not depend on any axioms\n","stdout_sha256":"73fea1d9e9e9f0a2f1363b9f284eeeb9e434430e9fa910260b9526bad864641e","tool":"lean"} diff --git a/stdlib/expected/verify/audit/LexLeanAudit.A5bfc6ad2db2940a1b7735f1309be47dc.LexLeanStd.Text.lean b/stdlib/expected/verify/audit/LexLeanAudit.Af6fd2434413f885eb97b3577e92c0706.LexLeanStd.Text.lean similarity index 100% rename from stdlib/expected/verify/audit/LexLeanAudit.A5bfc6ad2db2940a1b7735f1309be47dc.LexLeanStd.Text.lean rename to stdlib/expected/verify/audit/LexLeanAudit.Af6fd2434413f885eb97b3577e92c0706.LexLeanStd.Text.lean diff --git a/stdlib/expected/verify/audit/LexLeanAudit.Af6fd2434413f885eb97b3577e92c0706.LexLeanStd.Text.process.json b/stdlib/expected/verify/audit/LexLeanAudit.Af6fd2434413f885eb97b3577e92c0706.LexLeanStd.Text.process.json new file mode 100644 index 000000000..851b2bc77 --- /dev/null +++ b/stdlib/expected/verify/audit/LexLeanAudit.Af6fd2434413f885eb97b3577e92c0706.LexLeanStd.Text.process.json @@ -0,0 +1 @@ +{"argv":["env","lean","$STAGING/audit/LexLeanAudit.Af6fd2434413f885eb97b3577e92c0706.LexLeanStd.Text.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanAudit.Af6fd2434413f885eb97b3577e92c0706.LexLeanStd.Text","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanStd.Text.byteAt' does not depend on any axioms\n'LexLeanStd.Text.chomp' does not depend on any axioms\n'LexLeanStd.Text.endsWith' does not depend on any axioms\n'LexLeanStd.Text.find' does not depend on any axioms\n'LexLeanStd.Text.isSpace' does not depend on any axioms\n'LexLeanStd.Text.joinWith' does not depend on any axioms\n'LexLeanStd.Text.lineStep' does not depend on any axioms\n'LexLeanStd.Text.lines' does not depend on any axioms\n'LexLeanStd.Text.matchAt' does not depend on any axioms\n'LexLeanStd.Text.reverse' does not depend on any axioms\n'LexLeanStd.Text.sliceOr' does not depend on any axioms\n'LexLeanStd.Text.spaceAt' does not depend on any axioms\n'LexLeanStd.Text.splitOn' does not depend on any axioms\n'LexLeanStd.Text.splitStep' does not depend on any axioms\n'LexLeanStd.Text.startsWith' does not depend on any axioms\n'LexLeanStd.Text.trim' does not depend on any axioms\n'LexLeanStd.Text.trimEnd' does not depend on any axioms\n'LexLeanStd.Text.trimStart' does not depend on any axioms\n","stdout_sha256":"7d0d170dc8609025273db5f55bfa751ad62c100aa8693fd9fbafa3d1782b3751","tool":"lean"} diff --git a/stdlib/expected/verify/extract/LexLeanExtract.X5bfc6ad2db2940a1b7735f1309be47dc.lean b/stdlib/expected/verify/extract/LexLeanExtract.Xf6fd2434413f885eb97b3577e92c0706.lean similarity index 100% rename from stdlib/expected/verify/extract/LexLeanExtract.X5bfc6ad2db2940a1b7735f1309be47dc.lean rename to stdlib/expected/verify/extract/LexLeanExtract.Xf6fd2434413f885eb97b3577e92c0706.lean diff --git a/stdlib/expected/verify/extract/process.json b/stdlib/expected/verify/extract/process.json index 2c03323c0..0daf975ec 100644 --- a/stdlib/expected/verify/extract/process.json +++ b/stdlib/expected/verify/extract/process.json @@ -1 +1 @@ -{"argv":["env","lean","$STAGING/extract/LexLeanExtract.X5bfc6ad2db2940a1b7735f1309be47dc.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanExtract.X5bfc6ad2db2940a1b7735f1309be47dc","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"{\"spec\":\"lexlean/lcnf-extraction/2\",\"lean\":{\"version\":\"4.32.1\",\"githash\":\"f054605aea4b840552cca2e725580bffd1e1b704\"},\"roots\":[\"LexLeanStd.Text.startsWith\",\"LexLeanStd.Text.endsWith\",\"LexLeanStd.Text.trim\",\"LexLeanStd.Text.splitOn\",\"LexLeanStd.Text.lines\",\"LexLeanStd.Text.joinWith\",\"LexLeanStd.Text.find\"],\"constants\":[{\"name\":\"LexLeanCollections.iterateUntil\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Nat\",\"Option\",\"Prod\",\"Nat.brecOn\",\"LexLeanCollections.iterateUntil._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}}}}},\"parameters\":[{\"id\":\"_uniq.65\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.68\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]}},\"borrow\":false},{\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.79\",\"parameters\":[{\"id\":\"_uniq.76\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"},{\"kind\":\"fvar\",\"id\":\"_uniq.77\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.78\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.79\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.121\",\"parameters\":[{\"id\":\"_uniq.91\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.92\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.101\",\"parameters\":[{\"id\":\"_uniq.98\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.92\"},{\"kind\":\"fvar\",\"id\":\"_uniq.99\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.100\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.101\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.106\",\"parameters\":[{\"id\":\"_uniq.104\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.68\"},{\"kind\":\"fvar\",\"id\":\"_uniq.91\"},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.105\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.106\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.68\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"discriminant\":\"_uniq.115\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.102\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.116\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.117\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.118\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.107\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.118\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.119\"}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.121\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Nat\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"discriminant\":\"_uniq.69\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Nat.zero\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.128\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.80\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.128\"}}},{\"kind\":\"constructor\",\"constructor\":\"Nat.succ\",\"parameters\":[{\"id\":\"_uniq.129\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.130\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.122\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.129\"},{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.130\"}}}]}}}}}},\"uses\":[\"Bool\",\"Nat\",\"Option\",\"PUnit\",\"Prod\",\"Bool.false\",\"Bool.true\",\"LexLeanCollections.iterateUntil\",\"Nat.succ\",\"Nat.zero\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.listFold\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"List.foldl\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":2}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}}},\"parameters\":[{\"id\":\"_uniq.53\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}}},\"borrow\":false},{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},\"borrow\":false},{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},\"value\":{\"kind\":\"const\",\"name\":\"List.foldl\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.64\"}}},\"uses\":[\"List\",\"List.foldl\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.Appendable\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.Appendable.mk\",\"parameters\":1,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"bvar\",\"index\":2}}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}}}}]}},{\"name\":\"LexLeanRuntime.Indexable\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":2,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.Indexable.mk\",\"parameters\":2,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]}}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2},{\"kind\":\"bvar\",\"index\":1}]}}}}}]}},{\"name\":\"LexLeanRuntime.Lengthable\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.Lengthable.mk\",\"parameters\":1,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}}}}]}},{\"name\":\"LexLeanRuntime.Sliceable\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.Sliceable.mk\",\"parameters\":1,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}}}}]}},{\"name\":\"LexLeanRuntime.append\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.Appendable.append\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}},\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"borrow\":false},{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"borrow\":false},{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Appendable\",\"index\":0,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.39\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.40\"}}}},\"uses\":[\"LexLeanRuntime.Appendable\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.equal\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"BEq\",\"BEq.beq\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}}}},\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"borrow\":false},{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},\"borrow\":false},{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"BEq\",\"index\":0,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.25\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.26\"}}}},\"uses\":[\"BEq\",\"Bool\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.index\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"LexLeanRuntime.Indexable\",\"LexLeanRuntime.Indexable.index\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1},{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}}},\"parameters\":[{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"borrow\":false},{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},\"borrow\":false},{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Indexable\",\"index\":0,\"value\":\"_uniq.26\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.34\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.35\"}}}},\"uses\":[\"Nat\",\"Option\",\"LexLeanRuntime.Indexable\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instAppendableByteArray\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"ByteArray.append\",\"LexLeanRuntime.Appendable.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.1\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.fastAppend\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.2\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.1\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.2\"}}}},\"uses\":[\"ByteArray\",\"ByteArray.fastAppend\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.Appendable.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instIndexableByteArrayUInt8\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Array\",\"ByteArray\",\"Nat\",\"UInt8\",\"instLTNat\",\"Array.instGetElem?NatLtSize\",\"Array.size\",\"ByteArray.data\",\"GetElem?.getElem?\",\"LT.lt\",\"LexLeanRuntime.Indexable.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.59\",\"parameters\":[{\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"GetElem?\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Array.instGetElem?NatLtSize\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"GetElem?\",\"index\":1,\"value\":\"_uniq.9\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.data\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.58\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.60\"}}}},\"uses\":[\"Array\",\"ByteArray\",\"GetElem?\",\"Nat\",\"Option\",\"UInt8\",\"Array.instGetElem?NatLtSize\",\"ByteArray.data\",\"LexLeanRuntime.Indexable\",\"LexLeanRuntime.Indexable.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"ByteArray.size\",\"LexLeanRuntime.Lengthable.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.1\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.size\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.5\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.1\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.5\"}}}},\"uses\":[\"ByteArray\",\"Nat\",\"ByteArray.size\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.Lengthable.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instSliceableByteArray\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Nat\",\"Option\",\"instAddNat\",\"instHAdd\",\"instLENat\",\"ite\",\"ByteArray.extract\",\"ByteArray.size\",\"HAdd.hAdd\",\"LE.le\",\"Nat.decLe\",\"Option.none\",\"Option.some\",\"LexLeanRuntime.Sliceable.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.33\",\"parameters\":[{\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.23\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.size\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.decLe\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.26\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.28\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.extract\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}}}}]}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.39\"}}}},\"uses\":[\"Add\",\"ByteArray\",\"Decidable\",\"HAdd\",\"Nat\",\"Option\",\"instAddNat\",\"instHAdd\",\"ByteArray.extract\",\"ByteArray.size\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.Sliceable\",\"Nat.decLe\",\"Option.none\",\"Option.some\",\"LexLeanRuntime.Sliceable.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.length\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.Lengthable.length\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}}},\"parameters\":[{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Lengthable\",\"index\":0,\"value\":\"_uniq.16\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.18\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.19\"}}}},\"uses\":[\"Nat\",\"LexLeanRuntime.Lengthable\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.slice\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"LexLeanRuntime.Sliceable\",\"LexLeanRuntime.Sliceable.slice\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":4}]}}}}}},\"parameters\":[{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"borrow\":false},{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},\"borrow\":false},{\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]}}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Sliceable\",\"index\":0,\"value\":\"_uniq.24\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.28\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.29\"}}}},\"uses\":[\"Nat\",\"Option\",\"LexLeanRuntime.Sliceable\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.subtract\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Sub\",\"instHSub\",\"HSub.hSub\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}},\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"borrow\":false},{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"borrow\":false},{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HSub\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instHSub\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HSub\",\"index\":0,\"value\":\"_uniq.39\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}}}},\"uses\":[\"HSub\",\"Sub\",\"instHSub\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.iterate.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Nat.casesOn\",\"Nat.succ\",\"OfNat.ofNat\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.iterateUntil._f\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Nat.below\",\"Nat.succ\",\"OfNat.ofNat\",\"Prod.mk\",\"LexLeanCollections.iterate.match_1\",\"LexLeanCollections.iterateUntil.match_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.iterateUntil.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Appendable.append\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Appendable\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Appendable.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Indexable.index\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Indexable\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Indexable.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Lengthable.length\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Lengthable\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Lengthable.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Sliceable.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Sliceable.slice\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Sliceable\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanStd.Text.byteAt\",\"kind\":\"definition\",\"module\":\"LexLeanStd.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Nat\",\"UInt8\",\"LexLeanRuntime.index\",\"LexLeanRuntime.instIndexableByteArrayUInt8\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instIndexableByteArrayUInt8\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.index\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.14\"}}}},\"uses\":[\"ByteArray\",\"Nat\",\"Option\",\"UInt8\",\"LexLeanRuntime.Indexable\",\"LexLeanRuntime.index\",\"LexLeanRuntime.instIndexableByteArrayUInt8\"]},\"inductive\":null},{\"name\":\"LexLeanStd.Text.chomp\",\"kind\":\"definition\",\"module\":\"LexLeanStd.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Nat\",\"UInt8\",\"instDecidableEqBool\",\"instOfNatNat\",\"instSubNat\",\"ite\",\"Bool.true\",\"ByteArray.mk\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"List.cons\",\"List.nil\",\"List.toArray\",\"OfNat.ofNat\",\"UInt8.instOfNat\",\"LexLeanStd.Text.endsWith\",\"LexLeanStd.Text.sliceOr\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"13\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.19\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.toArray\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanStd.Text.endsWith\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"discriminant\":\"_uniq.27\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.9\"}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.31\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.37\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanStd.Text.sliceOr\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.40\"}}}}}}}}}}}}}]}}}}}}}}}}}},\"uses\":[\"Array\",\"Bool\",\"ByteArray\",\"Decidable\",\"List\",\"Nat\",\"OfNat\",\"Sub\",\"UInt8\",\"instDecidableEqBool\",\"instOfNatNat\",\"instSubNat\",\"Bool.true\",\"ByteArray.mk\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"List.cons\",\"List.nil\",\"List.toArray\",\"UInt8.instOfNat\",\"LexLeanStd.Text.endsWith\",\"LexLeanStd.Text.sliceOr\"]},\"inductive\":null},{\"name\":\"LexLeanStd.Text.endsWith\",\"kind\":\"definition\",\"module\":\"LexLeanStd.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Nat\",\"Option\",\"Unit\",\"instDecidableEqBool\",\"instSubNat\",\"ite\",\"Bool.false\",\"Bool.true\",\"ByteArray.instBEq\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.instSliceableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.slice\",\"LexLeanRuntime.subtract\",\"Nat.ble\",\"LexLeanStd.Text.sliceOr.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.40\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.42\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.43\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.52\"},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.54\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.56\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.57\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.66\",\"parameters\":[{\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.instBEq\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.65\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.66\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.73\",\"parameters\":[{\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.72\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.73\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instSliceableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.slice\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.82\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.85\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.74\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.86\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.87\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.67\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.89\"}}}]}}}}}}}}}}]}}}}}}}}}},\"uses\":[\"BEq\",\"Bool\",\"ByteArray\",\"Decidable\",\"Nat\",\"Option\",\"PUnit\",\"Sub\",\"instDecidableEqBool\",\"instSubNat\",\"Bool.false\",\"Bool.true\",\"ByteArray.instBEq\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.Sliceable\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.instSliceableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.slice\",\"LexLeanRuntime.subtract\",\"Nat.ble\",\"Option.none\",\"Option.some\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanStd.Text.find\",\"kind\":\"definition\",\"module\":\"LexLeanStd.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Nat\",\"Option\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"ite\",\"Bool.true\",\"HAdd.hAdd\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"Nat.blt\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Prod.fst\",\"LexLeanStd.Text.matchAt\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.36\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.38\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.96\",\"parameters\":[{\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanStd.Text.matchAt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.52\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.53\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.63\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.80\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.81\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.82\"},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.83\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.84\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.85\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.86\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.87\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.88\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.80\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.89\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.90\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.91\"}}}}}}}]}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.93\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.94\"}}}]}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.97\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.98\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.100\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.101\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.99\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.102\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.104\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.105\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.96\"},{\"kind\":\"fvar\",\"id\":\"_uniq.103\"},{\"kind\":\"fvar\",\"id\":\"_uniq.106\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.107\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.108\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.118\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanStd.Text.matchAt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.109\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.120\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.118\"},{\"kind\":\"fvar\",\"id\":\"_uniq.119\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.120\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.121\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.122\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.123\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.124\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.109\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.124\"}}}]}}}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Add\",\"Bool\",\"ByteArray\",\"Decidable\",\"HAdd\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"Nat.blt\",\"Option.none\",\"Option.some\",\"LexLeanStd.Text.matchAt\"]},\"inductive\":null},{\"name\":\"LexLeanStd.Text.isSpace\",\"kind\":\"definition\",\"module\":\"LexLeanStd.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"UInt8\",\"instBEqOfDecidableEq\",\"instDecidableEqUInt8\",\"Bool.or\",\"LexLeanRuntime.equal\",\"OfNat.ofNat\",\"UInt8.instOfNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.54\",\"parameters\":[{\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.53\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.54\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.92\",\"parameters\":[{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.54\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.75\",\"parameters\":[{\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqUInt8\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.69\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"13\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.72\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.70\"},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.74\"}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.75\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqUInt8\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"12\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.84\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.82\"},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"},{\"kind\":\"fvar\",\"id\":\"_uniq.85\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.86\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.76\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.87\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.88\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.64\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.89\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.90\"}}}}]}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.92\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.54\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.110\",\"parameters\":[{\"id\":\"_uniq.103\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqUInt8\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"10\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.106\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.107\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.105\"},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.109\"}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.111\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.110\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.54\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.128\",\"parameters\":[{\"id\":\"_uniq.121\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqUInt8\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.122\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.124\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"9\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.124\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.125\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.127\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.123\"},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"},{\"kind\":\"fvar\",\"id\":\"_uniq.126\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.127\"}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.129\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.128\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqUInt8\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.135\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.134\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"32\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.137\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.136\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.138\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.137\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.139\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.135\"},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"},{\"kind\":\"fvar\",\"id\":\"_uniq.138\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.162\",\"parameters\":[{\"id\":\"_uniq.144\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.155\",\"parameters\":[{\"id\":\"_uniq.149\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.149\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.150\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.151\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.93\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.150\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.151\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.152\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.153\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.55\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.152\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.153\"}}}}]}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.158\",\"parameters\":[{\"id\":\"_uniq.156\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.157\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.111\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.156\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.155\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.157\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.161\",\"parameters\":[{\"id\":\"_uniq.159\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.160\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.101\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.159\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.155\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.160\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.144\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.145\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.158\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.145\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.147\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.161\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.147\"}]}}}]}}}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.165\",\"parameters\":[{\"id\":\"_uniq.163\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.164\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.129\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.163\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.162\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.164\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.168\",\"parameters\":[{\"id\":\"_uniq.166\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.167\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.119\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.166\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.162\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.167\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.139\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.140\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.165\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.140\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.142\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.168\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.142\"}]}}}]}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"BEq\",\"Bool\",\"Decidable\",\"Nat\",\"OfNat\",\"PUnit\",\"UInt8\",\"instBEqOfDecidableEq\",\"instDecidableEqUInt8\",\"Bool.false\",\"Bool.true\",\"LexLeanRuntime.equal\",\"UInt8.instOfNat\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanStd.Text.joinWith\",\"kind\":\"definition\",\"module\":\"LexLeanStd.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"List\",\"Option\",\"UInt8\",\"Unit\",\"ByteArray.mk\",\"LexLeanCollections.listFold\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableByteArray\",\"List.nil\",\"List.toArray\",\"Option.none\",\"Option.some\",\"LexLeanStd.Text.joinWith.match_1\",\"LexLeanStd.Text.sliceOr.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.55\",\"parameters\":[{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.54\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.55\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.64\",\"parameters\":[{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.toArray\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.63\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.64\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.112\",\"parameters\":[{\"id\":\"_uniq.79\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.80\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.88\",\"parameters\":[{\"id\":\"_uniq.86\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.87\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.88\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.98\",\"parameters\":[{\"id\":\"_uniq.93\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.94\"},{\"kind\":\"fvar\",\"id\":\"_uniq.93\"},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.94\"},{\"kind\":\"fvar\",\"id\":\"_uniq.95\"},{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.96\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.97\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.98\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.79\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.89\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.107\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.108\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.109\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.110\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.99\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.109\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.110\"}}}]}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.113\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.112\"},{\"kind\":\"fvar\",\"id\":\"_uniq.113\"},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"discriminant\":\"_uniq.114\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.115\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.116\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.117\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.118\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.117\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.118\"}}}]}}}}}}}}},\"uses\":[\"Array\",\"ByteArray\",\"List\",\"Option\",\"PUnit\",\"UInt8\",\"ByteArray.mk\",\"LexLeanCollections.listFold\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableByteArray\",\"List.nil\",\"List.toArray\",\"Option.none\",\"Option.some\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanStd.Text.lineStep\",\"kind\":\"definition\",\"module\":\"LexLeanStd.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"List\",\"Nat\",\"Option\",\"Prod\",\"UInt8\",\"Unit\",\"instAddNat\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instDecidableEqUInt8\",\"instHAdd\",\"instOfNatNat\",\"instSubNat\",\"ite\",\"Bool.true\",\"HAdd.hAdd\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.subtract\",\"List.cons\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"UInt8.instOfNat\",\"LexLeanStd.Text.byteAt\",\"LexLeanStd.Text.chomp\",\"LexLeanStd.Text.sliceOr\",\"LexLeanStd.Text.spaceAt.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}}},\"parameters\":[{\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.43\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.49\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.43\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.51\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.52\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.51\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.54\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.106\",\"parameters\":[{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqUInt8\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"10\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.72\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.73\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.71\"},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"discriminant\":\"_uniq.77\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.78\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.79\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.80\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.82\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.83\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.81\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.85\"},{\"kind\":\"fvar\",\"id\":\"_uniq.86\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.88\"}}}}}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.89\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.90\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.91\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.93\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.94\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.92\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.95\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.97\"},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanStd.Text.sliceOr\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.98\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanStd.Text.chomp\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.99\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.100\"},{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.96\"},{\"kind\":\"fvar\",\"id\":\"_uniq.101\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.96\"},{\"kind\":\"fvar\",\"id\":\"_uniq.102\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.104\"}}}}}}}}}}}}}}}}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.106\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.113\",\"parameters\":[{\"id\":\"_uniq.111\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.112\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.113\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanStd.Text.byteAt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"discriminant\":\"_uniq.122\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.124\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.114\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.123\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.124\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.125\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.107\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.125\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.126\"}}}]}}}}}}}}}}}}}},\"uses\":[\"Add\",\"BEq\",\"Bool\",\"ByteArray\",\"Decidable\",\"HAdd\",\"List\",\"Nat\",\"OfNat\",\"Option\",\"PUnit\",\"Prod\",\"Sub\",\"UInt8\",\"instAddNat\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instDecidableEqUInt8\",\"instHAdd\",\"instOfNatNat\",\"instSubNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.subtract\",\"List.cons\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"UInt8.instOfNat\",\"Unit.unit\",\"LexLeanStd.Text.byteAt\",\"LexLeanStd.Text.chomp\",\"LexLeanStd.Text.sliceOr\"]},\"inductive\":null},{\"name\":\"LexLeanStd.Text.lines\",\"kind\":\"definition\",\"module\":\"LexLeanStd.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"List\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"instOfNatNat\",\"instSubNat\",\"ite\",\"Bool.true\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"List.cons\",\"List.nil\",\"Nat.blt\",\"OfNat.ofNat\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"LexLeanStd.Text.lineStep\",\"LexLeanStd.Text.reverse\",\"LexLeanStd.Text.sliceOr\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.28\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.33\",\"parameters\":[{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanStd.Text.lineStep\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.32\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.35\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.40\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.41\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.42\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.43\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.44\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.43\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.46\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.58\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanStd.Text.reverse\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.60\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanStd.Text.sliceOr\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanStd.Text.reverse\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.66\"}}}}}}}]}}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Decidable\",\"List\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"Sub\",\"instDecidableEqBool\",\"instOfNatNat\",\"instSubNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"List.cons\",\"List.nil\",\"Nat.blt\",\"Prod.mk\",\"LexLeanStd.Text.lineStep\",\"LexLeanStd.Text.reverse\",\"LexLeanStd.Text.sliceOr\"]},\"inductive\":null},{\"name\":\"LexLeanStd.Text.matchAt\",\"kind\":\"definition\",\"module\":\"LexLeanStd.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Nat\",\"Option\",\"Unit\",\"Bool.false\",\"ByteArray.instBEq\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.instSliceableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.slice\",\"LexLeanStd.Text.sliceOr.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}}},\"parameters\":[{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.47\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.instBEq\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.46\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.47\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.54\",\"parameters\":[{\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.53\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.54\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instSliceableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.slice\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"},{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.66\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.55\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.68\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.48\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.69\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.70\"}}}]}}}}}}}}}},\"uses\":[\"BEq\",\"Bool\",\"ByteArray\",\"Nat\",\"Option\",\"PUnit\",\"Bool.false\",\"ByteArray.instBEq\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.Sliceable\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.instSliceableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.slice\",\"Option.none\",\"Option.some\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanStd.Text.reverse\",\"kind\":\"definition\",\"module\":\"LexLeanStd.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"List\",\"LexLeanCollections.listFold\",\"List.cons\",\"List.nil\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.14\",\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.13\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.16\"}}}}},\"uses\":[\"ByteArray\",\"List\",\"LexLeanCollections.listFold\",\"List.cons\",\"List.nil\"]},\"inductive\":null},{\"name\":\"LexLeanStd.Text.sliceOr\",\"kind\":\"definition\",\"module\":\"LexLeanStd.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Nat\",\"Option\",\"UInt8\",\"Unit\",\"ByteArray.mk\",\"LexLeanRuntime.instSliceableByteArray\",\"LexLeanRuntime.slice\",\"List.nil\",\"List.toArray\",\"LexLeanStd.Text.sliceOr.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}}},\"parameters\":[{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.45\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.44\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.45\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.54\",\"parameters\":[{\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.toArray\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.53\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.54\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instSliceableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.slice\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"discriminant\":\"_uniq.64\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.55\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.66\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.46\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.68\"}}}]}}}}}}}},\"uses\":[\"Array\",\"ByteArray\",\"List\",\"Nat\",\"Option\",\"PUnit\",\"UInt8\",\"ByteArray.mk\",\"LexLeanRuntime.Sliceable\",\"LexLeanRuntime.instSliceableByteArray\",\"LexLeanRuntime.slice\",\"List.nil\",\"List.toArray\",\"Option.none\",\"Option.some\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanStd.Text.spaceAt\",\"kind\":\"definition\",\"module\":\"LexLeanStd.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Nat\",\"Option\",\"UInt8\",\"Unit\",\"Bool.false\",\"LexLeanStd.Text.byteAt\",\"LexLeanStd.Text.isSpace\",\"LexLeanStd.Text.spaceAt.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.39\",\"parameters\":[{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanStd.Text.isSpace\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.38\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.39\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.46\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.45\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.46\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanStd.Text.byteAt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.55\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.47\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.40\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.59\"}}}]}}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Nat\",\"Option\",\"PUnit\",\"UInt8\",\"Bool.false\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"LexLeanStd.Text.byteAt\",\"LexLeanStd.Text.isSpace\"]},\"inductive\":null},{\"name\":\"LexLeanStd.Text.splitOn\",\"kind\":\"definition\",\"module\":\"LexLeanStd.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"List\",\"Nat\",\"Prod\",\"UInt8\",\"instOfNatNat\",\"instSubNat\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"List.cons\",\"List.nil\",\"OfNat.ofNat\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"LexLeanStd.Text.reverse\",\"LexLeanStd.Text.sliceOr\",\"LexLeanStd.Text.splitStep\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.27\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.32\",\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanStd.Text.splitStep\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.34\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.39\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.40\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.41\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.42\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.43\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanStd.Text.sliceOr\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.42\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanStd.Text.reverse\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.50\"}}}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"List\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"Sub\",\"UInt8\",\"instOfNatNat\",\"instSubNat\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"List.cons\",\"List.nil\",\"Prod.mk\",\"LexLeanStd.Text.reverse\",\"LexLeanStd.Text.sliceOr\",\"LexLeanStd.Text.splitStep\"]},\"inductive\":null},{\"name\":\"LexLeanStd.Text.splitStep\",\"kind\":\"definition\",\"module\":\"LexLeanStd.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"List\",\"Nat\",\"Option\",\"Prod\",\"UInt8\",\"Unit\",\"instAddNat\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instDecidableEqUInt8\",\"instHAdd\",\"instOfNatNat\",\"instSubNat\",\"ite\",\"Bool.true\",\"HAdd.hAdd\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.subtract\",\"List.cons\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"LexLeanStd.Text.byteAt\",\"LexLeanStd.Text.sliceOr\",\"LexLeanStd.Text.spaceAt.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}}}},\"parameters\":[{\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.50\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.50\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.58\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.59\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.58\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.61\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.109\",\"parameters\":[{\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqUInt8\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.77\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.78\"},{\"kind\":\"fvar\",\"id\":\"_uniq.66\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.79\"},{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"discriminant\":\"_uniq.81\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.82\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.83\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.84\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.86\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.87\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.85\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.89\"},{\"kind\":\"fvar\",\"id\":\"_uniq.90\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.91\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.92\"}}}}}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.93\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.94\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.95\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.97\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.98\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.96\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.99\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.101\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanStd.Text.sliceOr\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.48\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.102\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.103\"},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.100\"},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.100\"},{\"kind\":\"fvar\",\"id\":\"_uniq.105\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.106\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.107\"}}}}}}}}}}}}}}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.110\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.109\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.116\",\"parameters\":[{\"id\":\"_uniq.114\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.115\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.116\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanStd.Text.byteAt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.48\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"discriminant\":\"_uniq.125\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.127\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.117\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.126\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.127\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.128\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.129\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.110\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.128\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.129\"}}}]}}}}}}}}}}}}}},\"uses\":[\"Add\",\"BEq\",\"Bool\",\"ByteArray\",\"Decidable\",\"HAdd\",\"List\",\"Nat\",\"OfNat\",\"Option\",\"PUnit\",\"Prod\",\"Sub\",\"UInt8\",\"instAddNat\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instDecidableEqUInt8\",\"instHAdd\",\"instOfNatNat\",\"instSubNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.subtract\",\"List.cons\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"Unit.unit\",\"LexLeanStd.Text.byteAt\",\"LexLeanStd.Text.sliceOr\"]},\"inductive\":null},{\"name\":\"LexLeanStd.Text.startsWith\",\"kind\":\"definition\",\"module\":\"LexLeanStd.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Nat\",\"Option\",\"Unit\",\"instOfNatNat\",\"Bool.false\",\"ByteArray.instBEq\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.instSliceableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.slice\",\"OfNat.ofNat\",\"LexLeanStd.Text.sliceOr.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.40\",\"parameters\":[{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.instBEq\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.39\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.40\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.47\",\"parameters\":[{\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.46\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.47\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instSliceableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.58\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.slice\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.62\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.48\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.64\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.41\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.66\"}}}]}}}}}}}}}}}}},\"uses\":[\"BEq\",\"Bool\",\"ByteArray\",\"Nat\",\"OfNat\",\"Option\",\"PUnit\",\"instOfNatNat\",\"Bool.false\",\"ByteArray.instBEq\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.Sliceable\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.instSliceableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.slice\",\"Option.none\",\"Option.some\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanStd.Text.trim\",\"kind\":\"definition\",\"module\":\"LexLeanStd.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Nat\",\"instSubNat\",\"LexLeanRuntime.subtract\",\"LexLeanStd.Text.sliceOr\",\"LexLeanStd.Text.trimEnd\",\"LexLeanStd.Text.trimStart\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanStd.Text.trimEnd\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.15\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanStd.Text.trimStart\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.17\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanStd.Text.sliceOr\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.21\"}}}}}}}}},\"uses\":[\"ByteArray\",\"Nat\",\"Sub\",\"instSubNat\",\"LexLeanRuntime.subtract\",\"LexLeanStd.Text.sliceOr\",\"LexLeanStd.Text.trimEnd\",\"LexLeanStd.Text.trimStart\"]},\"inductive\":null},{\"name\":\"LexLeanStd.Text.trimEnd\",\"kind\":\"definition\",\"module\":\"LexLeanStd.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Nat\",\"Option\",\"instDecidableEqBool\",\"instOfNatNat\",\"instSubNat\",\"ite\",\"Bool.true\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"Nat.blt\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Prod.fst\",\"LexLeanStd.Text.spaceAt\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.54\",\"parameters\":[{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.25\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.29\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.43\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanStd.Text.spaceAt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.46\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.47\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.48\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.49\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.50\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.51\"}}}]}}}}}}}}}]}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.57\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.58\"}}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Decidable\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"Sub\",\"instDecidableEqBool\",\"instOfNatNat\",\"instSubNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"Nat.blt\",\"Option.none\",\"Option.some\",\"LexLeanStd.Text.spaceAt\"]},\"inductive\":null},{\"name\":\"LexLeanStd.Text.trimStart\",\"kind\":\"definition\",\"module\":\"LexLeanStd.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Nat\",\"Option\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"ite\",\"Bool.true\",\"HAdd.hAdd\",\"LexLeanCollections.iterateUntil\",\"Nat.blt\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Prod.fst\",\"LexLeanStd.Text.spaceAt\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.59\",\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.32\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.34\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanStd.Text.spaceAt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.44\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.45\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.46\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.47\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.48\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.50\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.53\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.51\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.56\"}}}}}}}}}}]}}}}]}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.61\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.63\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.64\"}}}}}}}},\"uses\":[\"Add\",\"Bool\",\"ByteArray\",\"Decidable\",\"HAdd\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanCollections.iterateUntil\",\"Nat.blt\",\"Option.none\",\"Option.some\",\"LexLeanStd.Text.spaceAt\"]},\"inductive\":null},{\"name\":\"LexLeanStd.Text.joinWith.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanStd.Text\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanStd.Text.sliceOr.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanStd.Text\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanStd.Text.spaceAt.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanStd.Text\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Option\",\"UInt8\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null}],\"externals\":[{\"name\":\"Add\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Array\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"BEq\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Bool\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"ByteArray\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Decidable\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"GetElem?\",\"kind\":\"inductive\",\"module\":\"Init.GetElem\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"HAdd\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"HSub\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"List\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Nat\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"OfNat\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Option\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"PUnit\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Prod\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Sub\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"UInt8\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"instAddNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instBEqOfDecidableEq\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instDecidableEqBool\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instDecidableEqUInt8\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instHAdd\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instHSub\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instOfNatNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instSubNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Array.instGetElem?NatLtSize\",\"kind\":\"definition\",\"module\":\"Init.GetElem\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Bool.false\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Bool\"},{\"name\":\"Bool.true\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Bool\"},{\"name\":\"ByteArray.data\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"ByteArray.extract\",\"kind\":\"definition\",\"module\":\"Init.Data.ByteArray.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"ByteArray.fastAppend\",\"kind\":\"definition\",\"module\":\"Init.Data.ByteArray.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"ByteArray.instBEq\",\"kind\":\"definition\",\"module\":\"Init.Data.ByteArray.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"ByteArray.mk\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":true,\"inductive_type\":\"ByteArray\"},{\"name\":\"ByteArray.size\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Decidable.isFalse\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Decidable\"},{\"name\":\"Decidable.isTrue\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Decidable\"},{\"name\":\"List.cons\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"List\"},{\"name\":\"List.foldl\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"List.nil\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"List\"},{\"name\":\"List.toArray\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.ble\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.blt\",\"kind\":\"definition\",\"module\":\"Init.Data.Nat.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.decLe\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.succ\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Nat\"},{\"name\":\"Nat.zero\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Nat\"},{\"name\":\"Option.none\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Option\"},{\"name\":\"Option.some\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Option\"},{\"name\":\"Prod.mk\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Prod\"},{\"name\":\"UInt8.instOfNat\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.BasicAux\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Unit.unit\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true}]}\n","stdout_sha256":"fbd831ab2f1b732386c68cc6e61810df6cc71d4cb8500118007439491f5d6988","tool":"lean"} +{"argv":["env","lean","$STAGING/extract/LexLeanExtract.Xf6fd2434413f885eb97b3577e92c0706.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanExtract.Xf6fd2434413f885eb97b3577e92c0706","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"{\"spec\":\"lexlean/lcnf-extraction/2\",\"lean\":{\"version\":\"4.32.1\",\"githash\":\"f054605aea4b840552cca2e725580bffd1e1b704\"},\"roots\":[\"LexLeanStd.Text.startsWith\",\"LexLeanStd.Text.endsWith\",\"LexLeanStd.Text.trim\",\"LexLeanStd.Text.splitOn\",\"LexLeanStd.Text.lines\",\"LexLeanStd.Text.joinWith\",\"LexLeanStd.Text.find\"],\"constants\":[{\"name\":\"LexLeanCollections.iterateUntil\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"Nat\",\"Option\",\"Prod\",\"Nat.brecOn\",\"LexLeanCollections.iterateUntil._f\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}}}}},\"parameters\":[{\"id\":\"_uniq.65\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.68\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]}},\"borrow\":false},{\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.70\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.79\",\"parameters\":[{\"id\":\"_uniq.76\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"},{\"kind\":\"fvar\",\"id\":\"_uniq.77\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.78\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.79\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.121\",\"parameters\":[{\"id\":\"_uniq.91\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.92\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.101\",\"parameters\":[{\"id\":\"_uniq.98\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.92\"},{\"kind\":\"fvar\",\"id\":\"_uniq.99\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.100\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.101\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.106\",\"parameters\":[{\"id\":\"_uniq.104\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.68\"},{\"kind\":\"fvar\",\"id\":\"_uniq.91\"},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.105\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.106\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.68\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.92\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"discriminant\":\"_uniq.115\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.102\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.116\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.117\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.118\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.107\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.118\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.119\"}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]}}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.121\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Nat\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"discriminant\":\"_uniq.69\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Nat.zero\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.128\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.80\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.128\"}}},{\"kind\":\"constructor\",\"constructor\":\"Nat.succ\",\"parameters\":[{\"id\":\"_uniq.129\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.130\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.122\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.129\"},{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.130\"}}}]}}}}}},\"uses\":[\"Bool\",\"Nat\",\"Option\",\"PUnit\",\"Prod\",\"Bool.false\",\"Bool.true\",\"LexLeanCollections.iterateUntil\",\"Nat.succ\",\"Nat.zero\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.listFold\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"List\",\"List.foldl\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":2}}},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}}},\"parameters\":[{\"id\":\"_uniq.53\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}}},\"borrow\":false},{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},\"borrow\":false},{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},\"value\":{\"kind\":\"const\",\"name\":\"List.foldl\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}},{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.64\"}}},\"uses\":[\"List\",\"List.foldl\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.Appendable\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.Appendable.mk\",\"parameters\":1,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"bvar\",\"index\":2}}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}}}}]}},{\"name\":\"LexLeanRuntime.Indexable\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":2,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.Indexable.mk\",\"parameters\":2,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2}]}}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":2},{\"kind\":\"bvar\",\"index\":1}]}}}}}]}},{\"name\":\"LexLeanRuntime.Lengthable\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.Lengthable.mk\",\"parameters\":1,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}}}}]}},{\"name\":\"LexLeanRuntime.Sliceable\",\"kind\":\"inductive\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":{\"parameters\":1,\"indices\":0,\"recursive\":false,\"constructors\":[{\"name\":\"LexLeanRuntime.Sliceable.mk\",\"parameters\":1,\"fields\":1,\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":0},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1}]}}}}]}},{\"name\":\"LexLeanRuntime.append\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.Appendable.append\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}},\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"borrow\":false},{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"borrow\":false},{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Appendable\",\"index\":0,\"value\":\"_uniq.30\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.39\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.40\"}}}},\"uses\":[\"LexLeanRuntime.Appendable\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.equal\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"BEq\",\"BEq.beq\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}}}},\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"borrow\":false},{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},\"borrow\":false},{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"BEq\",\"index\":0,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.25\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.26\"}}}},\"uses\":[\"BEq\",\"Bool\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.index\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"LexLeanRuntime.Indexable\",\"LexLeanRuntime.Indexable.index\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":1},{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":3}]}}}}}},\"parameters\":[{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"borrow\":false},{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},\"borrow\":false},{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Indexable\",\"index\":0,\"value\":\"_uniq.26\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.34\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.35\"}}}},\"uses\":[\"Nat\",\"Option\",\"LexLeanRuntime.Indexable\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instAppendableByteArray\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"ByteArray.append\",\"LexLeanRuntime.Appendable.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.1\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.fastAppend\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.2\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.1\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.2\"}}}},\"uses\":[\"ByteArray\",\"ByteArray.fastAppend\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.Appendable.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instIndexableByteArrayUInt8\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Array\",\"ByteArray\",\"Nat\",\"UInt8\",\"instLTNat\",\"Array.instGetElem?NatLtSize\",\"Array.size\",\"ByteArray.data\",\"GetElem?.getElem?\",\"LT.lt\",\"LexLeanRuntime.Indexable.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.59\",\"parameters\":[{\"id\":\"_uniq.7\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.8\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.9\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"GetElem?\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Array.instGetElem?NatLtSize\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"GetElem?\",\"index\":1,\"value\":\"_uniq.9\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.data\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.7\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.58\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.60\"}}}},\"uses\":[\"Array\",\"ByteArray\",\"GetElem?\",\"Nat\",\"Option\",\"UInt8\",\"Array.instGetElem?NatLtSize\",\"ByteArray.data\",\"LexLeanRuntime.Indexable\",\"LexLeanRuntime.Indexable.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"ByteArray.size\",\"LexLeanRuntime.Lengthable.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.1\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"borrowed\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.size\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.5\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.1\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.5\"}}}},\"uses\":[\"ByteArray\",\"Nat\",\"ByteArray.size\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.Lengthable.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.instSliceableByteArray\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Nat\",\"Option\",\"instAddNat\",\"instHAdd\",\"instLENat\",\"ite\",\"ByteArray.extract\",\"ByteArray.size\",\"HAdd.hAdd\",\"LE.le\",\"Nat.decLe\",\"Option.none\",\"Option.some\",\"LexLeanRuntime.Sliceable.mk\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"parameters\":[],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.33\",\"parameters\":[{\"id\":\"_uniq.10\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.22\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.23\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.size\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.10\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.decLe\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"},{\"kind\":\"fvar\",\"id\":\"_uniq.25\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.26\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.28\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.extract\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.10\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}}}}]}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.39\"}}}},\"uses\":[\"Add\",\"ByteArray\",\"Decidable\",\"HAdd\",\"Nat\",\"Option\",\"instAddNat\",\"instHAdd\",\"ByteArray.extract\",\"ByteArray.size\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.Sliceable\",\"Nat.decLe\",\"Option.none\",\"Option.some\",\"LexLeanRuntime.Sliceable.mk\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.length\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.Lengthable.length\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}}},\"parameters\":[{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"borrow\":false},{\"id\":\"_uniq.17\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Lengthable\",\"index\":0,\"value\":\"_uniq.16\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.18\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.17\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.19\"}}}},\"uses\":[\"Nat\",\"LexLeanRuntime.Lengthable\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.slice\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"LexLeanRuntime.Sliceable\",\"LexLeanRuntime.Sliceable.slice\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":4}]}}}}}},\"parameters\":[{\"id\":\"_uniq.23\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.24\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"borrow\":false},{\"id\":\"_uniq.25\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},\"borrow\":false},{\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.23\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]}}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"LexLeanRuntime.Sliceable\",\"index\":0,\"value\":\"_uniq.24\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.28\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.29\"}}}},\"uses\":[\"Nat\",\"Option\",\"LexLeanRuntime.Sliceable\"]},\"inductive\":null},{\"name\":\"LexLeanRuntime.subtract\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Sub\",\"instHSub\",\"HSub.hSub\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"sort\",\"level\":\"1\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"bvar\",\"index\":0}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":1},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"bvar\",\"index\":2},\"codomain\":{\"kind\":\"bvar\",\"index\":3}}}}},\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"sort\",\"level\":\"1\"},\"borrow\":false},{\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"borrow\":false},{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"borrow\":false},{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HSub\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instHSub\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"codomain\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HSub\",\"index\":0,\"value\":\"_uniq.39\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}}}},\"uses\":[\"HSub\",\"Sub\",\"instHSub\"]},\"inductive\":null},{\"name\":\"LexLeanCollections.iterate.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Nat\",\"instOfNatNat\",\"Nat.casesOn\",\"Nat.succ\",\"OfNat.ofNat\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.iterateUntil._f\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":true,\"kernel_uses\":[\"Bool\",\"Nat\",\"Option\",\"Prod\",\"Unit\",\"instOfNatNat\",\"Bool.false\",\"Bool.true\",\"Nat.below\",\"Nat.succ\",\"OfNat.ofNat\",\"Prod.mk\",\"LexLeanCollections.iterate.match_1\",\"LexLeanCollections.iterateUntil.match_1\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanCollections.iterateUntil.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Collections\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Appendable.append\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Appendable\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Appendable.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Indexable.index\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Indexable\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Indexable.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Lengthable.length\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Lengthable\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Lengthable.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Sliceable.mk\",\"kind\":\"constructor\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"kernel_uses\":[],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanRuntime.Sliceable.slice\",\"kind\":\"definition\",\"module\":\"LexLeanRuntime.Portable\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"LexLeanRuntime.Sliceable\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanStd.Text.byteAt\",\"kind\":\"definition\",\"module\":\"LexLeanStd.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Nat\",\"UInt8\",\"LexLeanRuntime.index\",\"LexLeanRuntime.instIndexableByteArrayUInt8\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Indexable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instIndexableByteArrayUInt8\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.14\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.index\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.14\"}}}},\"uses\":[\"ByteArray\",\"Nat\",\"Option\",\"UInt8\",\"LexLeanRuntime.Indexable\",\"LexLeanRuntime.index\",\"LexLeanRuntime.instIndexableByteArrayUInt8\"]},\"inductive\":null},{\"name\":\"LexLeanStd.Text.chomp\",\"kind\":\"definition\",\"module\":\"LexLeanStd.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Nat\",\"UInt8\",\"instDecidableEqBool\",\"instOfNatNat\",\"instSubNat\",\"ite\",\"Bool.true\",\"ByteArray.mk\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"List.cons\",\"List.nil\",\"List.toArray\",\"OfNat.ofNat\",\"UInt8.instOfNat\",\"LexLeanStd.Text.endsWith\",\"LexLeanStd.Text.sliceOr\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.9\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"13\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.19\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.22\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.23\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.toArray\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.23\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanStd.Text.endsWith\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.25\"},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"discriminant\":\"_uniq.27\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.28\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"return\",\"id\":\"_uniq.9\"}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.29\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.31\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.34\"},{\"kind\":\"fvar\",\"id\":\"_uniq.9\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.37\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanStd.Text.sliceOr\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.9\"},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.40\"}}}}}}}}}}}}}]}}}}}}}}}}}},\"uses\":[\"Array\",\"Bool\",\"ByteArray\",\"Decidable\",\"List\",\"Nat\",\"OfNat\",\"Sub\",\"UInt8\",\"instDecidableEqBool\",\"instOfNatNat\",\"instSubNat\",\"Bool.true\",\"ByteArray.mk\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"List.cons\",\"List.nil\",\"List.toArray\",\"UInt8.instOfNat\",\"LexLeanStd.Text.endsWith\",\"LexLeanStd.Text.sliceOr\"]},\"inductive\":null},{\"name\":\"LexLeanStd.Text.endsWith\",\"kind\":\"definition\",\"module\":\"LexLeanStd.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Nat\",\"Option\",\"Unit\",\"instDecidableEqBool\",\"instSubNat\",\"ite\",\"Bool.false\",\"Bool.true\",\"ByteArray.instBEq\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.instSliceableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.slice\",\"LexLeanRuntime.subtract\",\"Nat.ble\",\"LexLeanStd.Text.sliceOr.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.40\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.42\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.ble\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.43\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.52\"},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.54\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.55\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.56\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.57\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.66\",\"parameters\":[{\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.instBEq\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.65\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.66\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.73\",\"parameters\":[{\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.72\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.73\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instSliceableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.83\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.slice\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.82\"},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"},{\"kind\":\"fvar\",\"id\":\"_uniq.43\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.85\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.74\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.86\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.87\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.67\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.89\"}}}]}}}}}}}}}}]}}}}}}}}}},\"uses\":[\"BEq\",\"Bool\",\"ByteArray\",\"Decidable\",\"Nat\",\"Option\",\"PUnit\",\"Sub\",\"instDecidableEqBool\",\"instSubNat\",\"Bool.false\",\"Bool.true\",\"ByteArray.instBEq\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.Sliceable\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.instSliceableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.slice\",\"LexLeanRuntime.subtract\",\"Nat.ble\",\"Option.none\",\"Option.some\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanStd.Text.find\",\"kind\":\"definition\",\"module\":\"LexLeanStd.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Nat\",\"Option\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"ite\",\"Bool.true\",\"HAdd.hAdd\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"Nat.blt\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Prod.fst\",\"LexLeanStd.Text.matchAt\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.36\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.38\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.96\",\"parameters\":[{\"id\":\"_uniq.41\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanStd.Text.matchAt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.52\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.53\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.63\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.80\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.81\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.82\"},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.83\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.84\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.85\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.86\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.87\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.88\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.80\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.89\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.90\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.91\"}}}}}}}]}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.93\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.94\"}}}]}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.97\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.98\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.100\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.101\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.99\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.102\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.104\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.105\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.96\"},{\"kind\":\"fvar\",\"id\":\"_uniq.103\"},{\"kind\":\"fvar\",\"id\":\"_uniq.106\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.107\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.108\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.118\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanStd.Text.matchAt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"},{\"kind\":\"fvar\",\"id\":\"_uniq.109\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.120\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.118\"},{\"kind\":\"fvar\",\"id\":\"_uniq.119\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.120\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.121\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.122\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.123\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.124\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.109\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.124\"}}}]}}}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Add\",\"Bool\",\"ByteArray\",\"Decidable\",\"HAdd\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"Nat.blt\",\"Option.none\",\"Option.some\",\"LexLeanStd.Text.matchAt\"]},\"inductive\":null},{\"name\":\"LexLeanStd.Text.isSpace\",\"kind\":\"definition\",\"module\":\"LexLeanStd.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"UInt8\",\"instBEqOfDecidableEq\",\"instDecidableEqUInt8\",\"Bool.or\",\"LexLeanRuntime.equal\",\"OfNat.ofNat\",\"UInt8.instOfNat\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.54\",\"parameters\":[{\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.53\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.54\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.92\",\"parameters\":[{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.54\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.75\",\"parameters\":[{\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.69\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqUInt8\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.69\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"13\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.71\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.72\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.70\"},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"},{\"kind\":\"fvar\",\"id\":\"_uniq.73\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.74\"}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.75\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqUInt8\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.81\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"12\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.83\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.84\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.82\"},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"},{\"kind\":\"fvar\",\"id\":\"_uniq.85\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.86\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.76\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.87\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.88\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.64\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.89\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.90\"}}}}]}}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.92\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.54\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.110\",\"parameters\":[{\"id\":\"_uniq.103\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqUInt8\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"10\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.106\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.107\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.109\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.105\"},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"},{\"kind\":\"fvar\",\"id\":\"_uniq.108\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.109\"}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.111\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.110\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.119\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.54\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.128\",\"parameters\":[{\"id\":\"_uniq.121\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqUInt8\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.122\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.124\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"9\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.124\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.125\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.127\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.123\"},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"},{\"kind\":\"fvar\",\"id\":\"_uniq.126\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.127\"}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.129\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.128\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.134\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqUInt8\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.135\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.134\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.136\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"32\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.137\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.136\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.138\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.137\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.139\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.135\"},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"},{\"kind\":\"fvar\",\"id\":\"_uniq.138\"}]},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.162\",\"parameters\":[{\"id\":\"_uniq.144\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.155\",\"parameters\":[{\"id\":\"_uniq.149\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.149\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.150\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.151\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.93\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.150\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.151\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.152\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.153\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.55\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.152\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.153\"}}}}]}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.158\",\"parameters\":[{\"id\":\"_uniq.156\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.157\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.111\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.156\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.155\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.157\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.161\",\"parameters\":[{\"id\":\"_uniq.159\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.160\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.101\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.159\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.155\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.160\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.144\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.145\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.158\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.145\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.147\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.161\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.147\"}]}}}]}}}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.165\",\"parameters\":[{\"id\":\"_uniq.163\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.164\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.129\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.163\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.162\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.164\"}]}}},\"body\":{\"kind\":\"join\",\"declaration\":{\"id\":\"_uniq.168\",\"parameters\":[{\"id\":\"_uniq.166\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.167\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.119\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.166\"}]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.162\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.167\"}]}}},\"body\":{\"kind\":\"cases\",\"type_name\":\"Bool\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.139\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Bool.false\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.140\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.165\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.140\"}]}}},{\"kind\":\"constructor\",\"constructor\":\"Bool.true\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.142\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"jump\",\"target\":\"_uniq.168\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.142\"}]}}}]}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"BEq\",\"Bool\",\"Decidable\",\"Nat\",\"OfNat\",\"PUnit\",\"UInt8\",\"instBEqOfDecidableEq\",\"instDecidableEqUInt8\",\"Bool.false\",\"Bool.true\",\"LexLeanRuntime.equal\",\"UInt8.instOfNat\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanStd.Text.joinWith\",\"kind\":\"definition\",\"module\":\"LexLeanStd.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"List\",\"Option\",\"UInt8\",\"Unit\",\"ByteArray.mk\",\"LexLeanCollections.listFold\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableByteArray\",\"List.nil\",\"List.toArray\",\"Option.none\",\"Option.some\",\"LexLeanStd.Text.joinWith.match_1\",\"LexLeanStd.Text.sliceOr.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.55\",\"parameters\":[{\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.54\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.55\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.64\",\"parameters\":[{\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.toArray\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.63\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.64\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.112\",\"parameters\":[{\"id\":\"_uniq.79\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.80\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}}},\"value\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.88\",\"parameters\":[{\"id\":\"_uniq.86\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.87\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.88\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.98\",\"parameters\":[{\"id\":\"_uniq.93\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Appendable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instAppendableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.94\"},{\"kind\":\"fvar\",\"id\":\"_uniq.93\"},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.append\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.94\"},{\"kind\":\"fvar\",\"id\":\"_uniq.95\"},{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.96\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.97\"}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.98\",\"arguments\":[]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.79\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.108\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.89\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.107\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.108\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.109\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.110\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.99\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.109\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.110\"}}}]}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.113\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.112\"},{\"kind\":\"fvar\",\"id\":\"_uniq.113\"},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"discriminant\":\"_uniq.114\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.116\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.65\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.115\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.116\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.117\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.118\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.117\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.118\"}}}]}}}}}}}}},\"uses\":[\"Array\",\"ByteArray\",\"List\",\"Option\",\"PUnit\",\"UInt8\",\"ByteArray.mk\",\"LexLeanCollections.listFold\",\"LexLeanRuntime.Appendable\",\"LexLeanRuntime.append\",\"LexLeanRuntime.instAppendableByteArray\",\"List.nil\",\"List.toArray\",\"Option.none\",\"Option.some\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanStd.Text.lineStep\",\"kind\":\"definition\",\"module\":\"LexLeanStd.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"List\",\"Nat\",\"Option\",\"Prod\",\"UInt8\",\"Unit\",\"instAddNat\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instDecidableEqUInt8\",\"instHAdd\",\"instOfNatNat\",\"instSubNat\",\"ite\",\"Bool.true\",\"HAdd.hAdd\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.subtract\",\"List.cons\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"UInt8.instOfNat\",\"LexLeanStd.Text.byteAt\",\"LexLeanStd.Text.chomp\",\"LexLeanStd.Text.sliceOr\",\"LexLeanStd.Text.spaceAt.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}}},\"parameters\":[{\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.43\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.49\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.43\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.51\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.52\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.51\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.54\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.106\",\"parameters\":[{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqUInt8\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.71\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.70\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.72\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"10\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.73\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"UInt8.instOfNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.72\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.74\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.73\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.75\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.71\"},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.74\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.76\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.75\"},{\"kind\":\"fvar\",\"id\":\"_uniq.76\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"discriminant\":\"_uniq.77\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.78\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.79\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.80\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.82\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.82\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.83\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.81\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.84\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.85\"},{\"kind\":\"fvar\",\"id\":\"_uniq.86\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.87\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.88\"}}}}}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.89\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.90\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.91\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.93\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.93\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.94\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.92\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.95\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.97\"},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanStd.Text.sliceOr\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"},{\"kind\":\"fvar\",\"id\":\"_uniq.53\"},{\"kind\":\"fvar\",\"id\":\"_uniq.98\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanStd.Text.chomp\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.99\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.100\"},{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.96\"},{\"kind\":\"fvar\",\"id\":\"_uniq.101\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.96\"},{\"kind\":\"fvar\",\"id\":\"_uniq.102\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.103\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.104\"}}}}}}}}}}}}}}}}}]}}}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.106\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.113\",\"parameters\":[{\"id\":\"_uniq.111\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.112\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.112\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.114\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.113\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.122\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanStd.Text.byteAt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"},{\"kind\":\"fvar\",\"id\":\"_uniq.50\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"discriminant\":\"_uniq.122\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.123\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.124\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.114\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.123\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.124\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.125\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.107\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.125\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.126\"}}}]}}}}}}}}}}}}}},\"uses\":[\"Add\",\"BEq\",\"Bool\",\"ByteArray\",\"Decidable\",\"HAdd\",\"List\",\"Nat\",\"OfNat\",\"Option\",\"PUnit\",\"Prod\",\"Sub\",\"UInt8\",\"instAddNat\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instDecidableEqUInt8\",\"instHAdd\",\"instOfNatNat\",\"instSubNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.subtract\",\"List.cons\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"UInt8.instOfNat\",\"Unit.unit\",\"LexLeanStd.Text.byteAt\",\"LexLeanStd.Text.chomp\",\"LexLeanStd.Text.sliceOr\"]},\"inductive\":null},{\"name\":\"LexLeanStd.Text.lines\",\"kind\":\"definition\",\"module\":\"LexLeanStd.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"List\",\"Nat\",\"Prod\",\"instDecidableEqBool\",\"instOfNatNat\",\"instSubNat\",\"ite\",\"Bool.true\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"List.cons\",\"List.nil\",\"Nat.blt\",\"OfNat.ofNat\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"LexLeanStd.Text.lineStep\",\"LexLeanStd.Text.reverse\",\"LexLeanStd.Text.sliceOr\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.28\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.33\",\"parameters\":[{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanStd.Text.lineStep\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.32\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.34\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.35\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.33\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.39\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.40\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.41\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.42\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.43\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.44\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.43\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.46\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"discriminant\":\"_uniq.58\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.59\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanStd.Text.reverse\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.60\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.61\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"},{\"kind\":\"fvar\",\"id\":\"_uniq.29\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanStd.Text.sliceOr\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanStd.Text.reverse\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.66\"}}}}}}}]}}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Decidable\",\"List\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"Sub\",\"instDecidableEqBool\",\"instOfNatNat\",\"instSubNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"List.cons\",\"List.nil\",\"Nat.blt\",\"Prod.mk\",\"LexLeanStd.Text.lineStep\",\"LexLeanStd.Text.reverse\",\"LexLeanStd.Text.sliceOr\"]},\"inductive\":null},{\"name\":\"LexLeanStd.Text.matchAt\",\"kind\":\"definition\",\"module\":\"LexLeanStd.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Nat\",\"Option\",\"Unit\",\"Bool.false\",\"ByteArray.instBEq\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.instSliceableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.slice\",\"LexLeanStd.Text.sliceOr.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}}},\"parameters\":[{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.47\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.instBEq\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.46\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.47\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.54\",\"parameters\":[{\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.53\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.54\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instSliceableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.64\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.slice\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"},{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.66\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.55\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.68\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.69\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.70\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.48\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.69\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.70\"}}}]}}}}}}}}}},\"uses\":[\"BEq\",\"Bool\",\"ByteArray\",\"Nat\",\"Option\",\"PUnit\",\"Bool.false\",\"ByteArray.instBEq\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.Sliceable\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.instSliceableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.slice\",\"Option.none\",\"Option.some\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanStd.Text.reverse\",\"kind\":\"definition\",\"module\":\"LexLeanStd.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"List\",\"LexLeanCollections.listFold\",\"List.cons\",\"List.nil\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},\"parameters\":[{\"id\":\"_uniq.8\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.14\",\"parameters\":[{\"id\":\"_uniq.11\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"borrow\":false},{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.13\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.11\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.13\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.listFold\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.14\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.8\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.16\"}}}}},\"uses\":[\"ByteArray\",\"List\",\"LexLeanCollections.listFold\",\"List.cons\",\"List.nil\"]},\"inductive\":null},{\"name\":\"LexLeanStd.Text.sliceOr\",\"kind\":\"definition\",\"module\":\"LexLeanStd.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Nat\",\"Option\",\"UInt8\",\"Unit\",\"ByteArray.mk\",\"LexLeanRuntime.instSliceableByteArray\",\"LexLeanRuntime.slice\",\"List.nil\",\"List.toArray\",\"LexLeanStd.Text.sliceOr.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}}},\"parameters\":[{\"id\":\"_uniq.36\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.45\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"value\":{\"kind\":\"return\",\"id\":\"_uniq.44\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.45\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.54\",\"parameters\":[{\"id\":\"_uniq.50\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Array\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.toArray\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.51\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.mk\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.53\"}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.54\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instSliceableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.slice\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.63\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"discriminant\":\"_uniq.64\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.55\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.66\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.67\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.68\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.46\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.67\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.68\"}}}]}}}}}}}},\"uses\":[\"Array\",\"ByteArray\",\"List\",\"Nat\",\"Option\",\"PUnit\",\"UInt8\",\"ByteArray.mk\",\"LexLeanRuntime.Sliceable\",\"LexLeanRuntime.instSliceableByteArray\",\"LexLeanRuntime.slice\",\"List.nil\",\"List.toArray\",\"Option.none\",\"Option.some\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanStd.Text.spaceAt\",\"kind\":\"definition\",\"module\":\"LexLeanStd.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Nat\",\"Option\",\"UInt8\",\"Unit\",\"Bool.false\",\"LexLeanStd.Text.byteAt\",\"LexLeanStd.Text.isSpace\",\"LexLeanStd.Text.spaceAt.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.39\",\"parameters\":[{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanStd.Text.isSpace\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.38\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.39\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.46\",\"parameters\":[{\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.45\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.46\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanStd.Text.byteAt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.55\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.47\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.57\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.40\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.58\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.59\"}}}]}}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Nat\",\"Option\",\"PUnit\",\"UInt8\",\"Bool.false\",\"Option.none\",\"Option.some\",\"Unit.unit\",\"LexLeanStd.Text.byteAt\",\"LexLeanStd.Text.isSpace\"]},\"inductive\":null},{\"name\":\"LexLeanStd.Text.splitOn\",\"kind\":\"definition\",\"module\":\"LexLeanStd.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"List\",\"Nat\",\"Prod\",\"UInt8\",\"instOfNatNat\",\"instSubNat\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"List.cons\",\"List.nil\",\"OfNat.ofNat\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"LexLeanStd.Text.reverse\",\"LexLeanStd.Text.sliceOr\",\"LexLeanStd.Text.splitStep\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}}},\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.22\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.27\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.32\",\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanStd.Text.splitStep\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.22\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.33\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.33\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.35\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.34\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.36\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.nil\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.37\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.36\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.35\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.32\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.40\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.39\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.40\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.41\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.42\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.43\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanStd.Text.sliceOr\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"},{\"kind\":\"fvar\",\"id\":\"_uniq.46\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.42\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.47\"},{\"kind\":\"fvar\",\"id\":\"_uniq.48\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanStd.Text.reverse\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.50\"}}}}}}}}}}}}}}}}}}}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"List\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"Sub\",\"UInt8\",\"instOfNatNat\",\"instSubNat\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"List.cons\",\"List.nil\",\"Prod.mk\",\"LexLeanStd.Text.reverse\",\"LexLeanStd.Text.sliceOr\",\"LexLeanStd.Text.splitStep\"]},\"inductive\":null},{\"name\":\"LexLeanStd.Text.splitStep\",\"kind\":\"definition\",\"module\":\"LexLeanStd.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"List\",\"Nat\",\"Option\",\"Prod\",\"UInt8\",\"Unit\",\"instAddNat\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instDecidableEqUInt8\",\"instHAdd\",\"instOfNatNat\",\"instSubNat\",\"ite\",\"Bool.true\",\"HAdd.hAdd\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.subtract\",\"List.cons\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Prod.fst\",\"Prod.mk\",\"Prod.snd\",\"LexLeanStd.Text.byteAt\",\"LexLeanStd.Text.sliceOr\",\"LexLeanStd.Text.spaceAt.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}}}},\"parameters\":[{\"id\":\"_uniq.48\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.49\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.50\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.56\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.50\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.58\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.59\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":1,\"value\":\"_uniq.58\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.61\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.109\",\"parameters\":[{\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.77\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]}}},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqUInt8\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.78\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instBEqOfDecidableEq\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.77\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.79\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.78\"},{\"kind\":\"fvar\",\"id\":\"_uniq.66\"},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.80\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.81\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.79\"},{\"kind\":\"fvar\",\"id\":\"_uniq.80\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"discriminant\":\"_uniq.81\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.82\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.83\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.84\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.83\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.85\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.84\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.86\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.87\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.86\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.88\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.87\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.89\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.85\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.88\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.90\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.91\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.89\"},{\"kind\":\"fvar\",\"id\":\"_uniq.90\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.92\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.91\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.92\"}}}}}}}}}}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.93\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.94\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.95\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.94\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.96\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.95\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.97\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.98\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.97\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.99\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.98\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.100\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.96\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.99\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.101\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.102\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.101\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.103\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanStd.Text.sliceOr\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.48\"},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.102\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.104\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"List.cons\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.103\"},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.105\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.100\"},{\"kind\":\"fvar\",\"id\":\"_uniq.104\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.106\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Prod.mk\",\"levels\":[\"0\",\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.100\"},{\"kind\":\"fvar\",\"id\":\"_uniq.105\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.107\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}},{\"kind\":\"fvar\",\"id\":\"_uniq.106\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.107\"}}}}}}}}}}}}}}}}]}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.110\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.109\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.116\",\"parameters\":[{\"id\":\"_uniq.114\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.115\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.115\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.117\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.116\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.125\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanStd.Text.byteAt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.48\"},{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"discriminant\":\"_uniq.125\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.126\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.127\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.117\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.126\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.127\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.128\",\"type\":{\"kind\":\"const\",\"name\":\"UInt8\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.129\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"List\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]}]}]}]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.110\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.128\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.129\"}}}]}}}}}}}}}}}}}},\"uses\":[\"Add\",\"BEq\",\"Bool\",\"ByteArray\",\"Decidable\",\"HAdd\",\"List\",\"Nat\",\"OfNat\",\"Option\",\"PUnit\",\"Prod\",\"Sub\",\"UInt8\",\"instAddNat\",\"instBEqOfDecidableEq\",\"instDecidableEqBool\",\"instDecidableEqUInt8\",\"instHAdd\",\"instOfNatNat\",\"instSubNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.subtract\",\"List.cons\",\"Option.none\",\"Option.some\",\"Prod.mk\",\"Unit.unit\",\"LexLeanStd.Text.byteAt\",\"LexLeanStd.Text.sliceOr\"]},\"inductive\":null},{\"name\":\"LexLeanStd.Text.startsWith\",\"kind\":\"definition\",\"module\":\"LexLeanStd.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Nat\",\"Option\",\"Unit\",\"instOfNatNat\",\"Bool.false\",\"ByteArray.instBEq\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.instSliceableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.slice\",\"OfNat.ofNat\",\"LexLeanStd.Text.sliceOr.match_1\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.40\",\"parameters\":[{\"id\":\"_uniq.37\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.38\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"BEq\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"ByteArray.instBEq\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.39\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.equal\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.38\"},{\"kind\":\"fvar\",\"id\":\"_uniq.37\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.39\"}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.40\",\"arguments\":[]},\"body\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.47\",\"parameters\":[{\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.false\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.46\"}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.48\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"codomain\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.47\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Sliceable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instSliceableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.57\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.59\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.58\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.60\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.slice\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.61\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Option\",\"result_type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"discriminant\":\"_uniq.62\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Option.none\",\"parameters\":[],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"const\",\"name\":\"PUnit\",\"levels\":[\"1\"]},\"value\":{\"kind\":\"const\",\"name\":\"Unit.unit\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.48\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.63\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.64\"}}}},{\"kind\":\"constructor\",\"constructor\":\"Option.some\",\"parameters\":[{\"id\":\"_uniq.65\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.66\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.41\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.65\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.66\"}}}]}}}}}}}}}}}}},\"uses\":[\"BEq\",\"Bool\",\"ByteArray\",\"Nat\",\"OfNat\",\"Option\",\"PUnit\",\"instOfNatNat\",\"Bool.false\",\"ByteArray.instBEq\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.Sliceable\",\"LexLeanRuntime.equal\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.instSliceableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.slice\",\"Option.none\",\"Option.some\",\"Unit.unit\"]},\"inductive\":null},{\"name\":\"LexLeanStd.Text.trim\",\"kind\":\"definition\",\"module\":\"LexLeanStd.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Nat\",\"instSubNat\",\"LexLeanRuntime.subtract\",\"LexLeanStd.Text.sliceOr\",\"LexLeanStd.Text.trimEnd\",\"LexLeanStd.Text.trimStart\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.12\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"let\",\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanStd.Text.trimEnd\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.16\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.15\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.17\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanStd.Text.trimStart\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.17\",\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.19\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.20\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.16\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanStd.Text.sliceOr\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.12\"},{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.20\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.21\"}}}}}}}}},\"uses\":[\"ByteArray\",\"Nat\",\"Sub\",\"instSubNat\",\"LexLeanRuntime.subtract\",\"LexLeanStd.Text.sliceOr\",\"LexLeanStd.Text.trimEnd\",\"LexLeanStd.Text.trimStart\"]},\"inductive\":null},{\"name\":\"LexLeanStd.Text.trimEnd\",\"kind\":\"definition\",\"module\":\"LexLeanStd.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Nat\",\"Option\",\"instDecidableEqBool\",\"instOfNatNat\",\"instSubNat\",\"ite\",\"Bool.true\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"Nat.blt\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Prod.fst\",\"LexLeanStd.Text.spaceAt\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},\"parameters\":[{\"id\":\"_uniq.13\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.54\",\"parameters\":[{\"id\":\"_uniq.15\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.24\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.25\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.24\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.26\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.25\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.27\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.26\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.28\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.29\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.27\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.29\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.30\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.31\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.32\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.41\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Sub\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instSubNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.42\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.43\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.42\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.43\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.subtract\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.41\"},{\"kind\":\"fvar\",\"id\":\"_uniq.15\"},{\"kind\":\"fvar\",\"id\":\"_uniq.44\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.46\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanStd.Text.spaceAt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.13\"},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.46\"},{\"kind\":\"fvar\",\"id\":\"_uniq.28\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.47\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.48\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.49\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.50\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.45\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.51\"}}}]}}}}}}}}}]}}}}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.Lengthable\",\"levels\":[]},\"arguments\":[{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.instLengthableByteArray\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanRuntime.length\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.55\"},{\"kind\":\"fvar\",\"id\":\"_uniq.13\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.57\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"},{\"kind\":\"fvar\",\"id\":\"_uniq.56\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.58\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.57\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.58\"}}}}}}},\"uses\":[\"Bool\",\"ByteArray\",\"Decidable\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"Sub\",\"instDecidableEqBool\",\"instOfNatNat\",\"instSubNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanCollections.iterateUntil\",\"LexLeanRuntime.Lengthable\",\"LexLeanRuntime.instLengthableByteArray\",\"LexLeanRuntime.length\",\"LexLeanRuntime.subtract\",\"Nat.blt\",\"Option.none\",\"Option.some\",\"LexLeanStd.Text.spaceAt\"]},\"inductive\":null},{\"name\":\"LexLeanStd.Text.trimStart\",\"kind\":\"definition\",\"module\":\"LexLeanStd.Text\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Bool\",\"ByteArray\",\"Eq\",\"Nat\",\"Option\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"ite\",\"Bool.true\",\"HAdd.hAdd\",\"LexLeanCollections.iterateUntil\",\"Nat.blt\",\"OfNat.ofNat\",\"Option.none\",\"Option.some\",\"Prod.fst\",\"LexLeanStd.Text.spaceAt\"],\"declaration\":{\"safe\":true,\"level_parameters\":[],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"parameters\":[{\"id\":\"_uniq.18\",\"type\":{\"kind\":\"const\",\"name\":\"ByteArray\",\"levels\":[]},\"borrow\":false},{\"id\":\"_uniq.19\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"value\":{\"kind\":\"code\",\"code\":{\"kind\":\"fun\",\"declaration\":{\"id\":\"_uniq.59\",\"parameters\":[{\"id\":\"_uniq.21\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"borrow\":false}],\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]}},\"value\":{\"kind\":\"let\",\"id\":\"_uniq.30\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Nat.blt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.31\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"Bool.true\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.32\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.30\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.32\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.33\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.34\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.34\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.35\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.44\",\"type\":{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanStd.Text.spaceAt\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.18\"},{\"kind\":\"fvar\",\"id\":\"_uniq.21\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.45\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Decidable\",\"levels\":[]},\"arguments\":[{\"kind\":\"erased\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instDecidableEqBool\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.44\"},{\"kind\":\"fvar\",\"id\":\"_uniq.31\"}]},\"body\":{\"kind\":\"cases\",\"type_name\":\"Decidable\",\"result_type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"discriminant\":\"_uniq.45\",\"alternatives\":[{\"kind\":\"constructor\",\"constructor\":\"Decidable.isFalse\",\"parameters\":[{\"id\":\"_uniq.46\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.47\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.none\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.47\"}}},{\"kind\":\"constructor\",\"constructor\":\"Decidable.isTrue\",\"parameters\":[{\"id\":\"_uniq.48\",\"type\":{\"kind\":\"erased\"},\"borrow\":false}],\"code\":{\"kind\":\"let\",\"id\":\"_uniq.49\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Add\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instAddNat\",\"levels\":[],\"arguments\":[]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.50\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"HAdd\",\"levels\":[\"0\",\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"instHAdd\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.49\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.51\",\"type\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"arrow\",\"domain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"codomain\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}}},\"value\":{\"kind\":\"projection\",\"type_name\":\"HAdd\",\"index\":0,\"value\":\"_uniq.50\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.52\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"1\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.53\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.52\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.54\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.53\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.55\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"apply\",\"function\":\"_uniq.51\",\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.21\"},{\"kind\":\"fvar\",\"id\":\"_uniq.54\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.56\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Option\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"Option.some\",\"levels\":[\"0\"],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.55\"}]},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.56\"}}}}}}}}}}]}}}}]}}}}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.60\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"literal\",\"literal\":{\"kind\":\"nat\",\"value\":\"0\"}},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.61\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"OfNat\",\"levels\":[\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"any\"}]},\"value\":{\"kind\":\"const\",\"name\":\"instOfNatNat\",\"levels\":[],\"arguments\":[{\"kind\":\"fvar\",\"id\":\"_uniq.60\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.62\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"OfNat\",\"index\":0,\"value\":\"_uniq.61\"},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.63\",\"type\":{\"kind\":\"app\",\"head\":{\"kind\":\"const\",\"name\":\"Prod\",\"levels\":[\"0\",\"0\"]},\"arguments\":[{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},{\"kind\":\"const\",\"name\":\"Bool\",\"levels\":[]}]},\"value\":{\"kind\":\"const\",\"name\":\"LexLeanCollections.iterateUntil\",\"levels\":[],\"arguments\":[{\"kind\":\"type\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]}},{\"kind\":\"fvar\",\"id\":\"_uniq.59\"},{\"kind\":\"fvar\",\"id\":\"_uniq.19\"},{\"kind\":\"fvar\",\"id\":\"_uniq.62\"}]},\"body\":{\"kind\":\"let\",\"id\":\"_uniq.64\",\"type\":{\"kind\":\"const\",\"name\":\"Nat\",\"levels\":[]},\"value\":{\"kind\":\"projection\",\"type_name\":\"Prod\",\"index\":0,\"value\":\"_uniq.63\"},\"body\":{\"kind\":\"return\",\"id\":\"_uniq.64\"}}}}}}}},\"uses\":[\"Add\",\"Bool\",\"ByteArray\",\"Decidable\",\"HAdd\",\"Nat\",\"OfNat\",\"Option\",\"Prod\",\"instAddNat\",\"instDecidableEqBool\",\"instHAdd\",\"instOfNatNat\",\"Bool.true\",\"Decidable.isFalse\",\"Decidable.isTrue\",\"LexLeanCollections.iterateUntil\",\"Nat.blt\",\"Option.none\",\"Option.some\",\"LexLeanStd.Text.spaceAt\"]},\"inductive\":null},{\"name\":\"LexLeanStd.Text.joinWith.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanStd.Text\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanStd.Text.sliceOr.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanStd.Text\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"ByteArray\",\"Option\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null},{\"name\":\"LexLeanStd.Text.spaceAt.match_1\",\"kind\":\"definition\",\"module\":\"LexLeanStd.Text\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"definition\",\"internal\":false,\"kernel_uses\":[\"Option\",\"UInt8\",\"Unit\",\"Option.casesOn\",\"Option.none\",\"Option.some\",\"Unit.unit\"],\"declaration\":null,\"inductive\":null}],\"externals\":[{\"name\":\"Add\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Array\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"BEq\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Bool\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"ByteArray\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Decidable\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"GetElem?\",\"kind\":\"inductive\",\"module\":\"Init.GetElem\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"HAdd\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"HSub\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"List\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Nat\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"OfNat\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Option\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"PUnit\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Prod\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"Sub\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"UInt8\",\"kind\":\"inductive\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"inductive\",\"internal\":false,\"compiled\":false},{\"name\":\"instAddNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instBEqOfDecidableEq\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instDecidableEqBool\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instDecidableEqUInt8\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instHAdd\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instHSub\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instOfNatNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"instSubNat\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Array.instGetElem?NatLtSize\",\"kind\":\"definition\",\"module\":\"Init.GetElem\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Bool.false\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Bool\"},{\"name\":\"Bool.true\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Bool\"},{\"name\":\"ByteArray.data\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"ByteArray.extract\",\"kind\":\"definition\",\"module\":\"Init.Data.ByteArray.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"ByteArray.fastAppend\",\"kind\":\"definition\",\"module\":\"Init.Data.ByteArray.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"ByteArray.instBEq\",\"kind\":\"definition\",\"module\":\"Init.Data.ByteArray.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"ByteArray.mk\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":true,\"inductive_type\":\"ByteArray\"},{\"name\":\"ByteArray.size\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Decidable.isFalse\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Decidable\"},{\"name\":\"Decidable.isTrue\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Decidable\"},{\"name\":\"List.cons\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"List\"},{\"name\":\"List.foldl\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"List.nil\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"List\"},{\"name\":\"List.toArray\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.ble\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.blt\",\"kind\":\"definition\",\"module\":\"Init.Data.Nat.Basic\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.decLe\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Nat.succ\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Nat\"},{\"name\":\"Nat.zero\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Nat\"},{\"name\":\"Option.none\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Option\"},{\"name\":\"Option.some\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Option\"},{\"name\":\"Prod.mk\",\"kind\":\"constructor\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":false,\"original_kind\":\"constructor\",\"internal\":false,\"compiled\":false,\"inductive_type\":\"Prod\"},{\"name\":\"UInt8.instOfNat\",\"kind\":\"definition\",\"module\":\"Init.Data.UInt.BasicAux\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true},{\"name\":\"Unit.unit\",\"kind\":\"definition\",\"module\":\"Init.Prelude\",\"computable\":true,\"generates_code\":true,\"original_kind\":\"definition\",\"internal\":false,\"compiled\":true}]}\n","stdout_sha256":"fbd831ab2f1b732386c68cc6e61810df6cc71d4cb8500118007439491f5d6988","tool":"lean"} diff --git a/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R0.lean b/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R0.lean deleted file mode 100644 index 3da19ec4e..000000000 --- a/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R0.lean +++ /dev/null @@ -1,33 +0,0 @@ -import LexLeanPreservation.Core -import LexLeanPreservation.Values -import LexLeanPreservation.Primitives -import LexLeanPreservation.Fixed -import LexLeanPreservation.Keys -import LexLeanPreservation.Templates -import LexLeanPreservation.Validate -import LexLeanStd.Text -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -set_option linter.unusedVariables false -namespace LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0 - -def __prog : _root_.LexLeanTarget.TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1], types := [.bytes, .bytes], result := .bool, - body := (.«match» .bool (.prim .slice [(.var 0), (.value .nat (.nat 0)), (.prim .length [(.var 1)])]) [(.arm .some [2] (.prim .equal [(.var 2), (.var 1)])), (.arm .none [] (.build .false .bool []))]) }] } - -def __fits_0 (subject : ByteArray) («prefix» : ByteArray) : Bool := - (((Bool.true && (Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length («prefix») : Nat) 18446744073709551616)) && Bool.true))) && Bool.true) && (match (_root_.LexLeanRuntime.slice (subject) ((0 : Nat)) ((_root_.LexLeanRuntime.length («prefix») : Nat)) : (Option ByteArray)) with | Option.some head => ((Bool.true && (Bool.true && Bool.true)) && Bool.true) | Option.none => (Bool.true && Bool.true))) - -theorem __rel_0 (subject : ByteArray) («prefix» : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.bytes «prefix»)] (_root_.LexLeanPreservation.Rel (__fits_0 subject «prefix») (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanStd.Text.startsWith subject «prefix»))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.some head => ((Bool.true && (Bool.true && Bool.true)) && Bool.true) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option ByteArray)) => _root_.LexLeanTarget.TargetSyntax.Value.bool (match __a with | Option.some head => (_root_.LexLeanRuntime.equal (head) («prefix») : Bool) | Option.none => Bool.false)) (_root_.LexLeanRuntime.slice (subject) ((0 : Nat)) ((_root_.LexLeanRuntime.length («prefix») : Nat)) : (Option ByteArray)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes «prefix»)) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.prim_slice_bytes subject (0 : Nat) (_root_.LexLeanRuntime.length («prefix») : Nat))) (fun (__a : (Option ByteArray)) _ => match __a with | Option.some head => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_bytes head «prefix»))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))))) - -def denote (subject : ByteArray) («prefix» : ByteArray) : _root_.LexLeanPreservation.Obs := - _root_.cond (__fits_0 subject «prefix») (_root_.LexLeanPreservation.Obs.value ((_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanStd.Text.startsWith subject «prefix»)))) _root_.LexLeanPreservation.Obs.overflow - -theorem root (subject : ByteArray) («prefix» : ByteArray) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.bytes «prefix»)] (_root_.LexLeanPreservation.Rel (__fits_0 subject «prefix») (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanStd.Text.startsWith subject «prefix»))) := - _root_.LexLeanPreservation.run_of_funRel (__rel_0 subject «prefix») - -end LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0 diff --git a/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R0/Compose/RustStd.lex.tex b/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R0/Compose/RustStd.lex.tex deleted file mode 100644 index d255d19bb..000000000 --- a/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R0/Compose/RustStd.lex.tex +++ /dev/null @@ -1,464 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0, - LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.Compose.RustStd.root : @916 := @917 { - all: [LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.RustStd.program -@1 := LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.RustStd.krate -@2 := LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.RustStd.flags -@3 := ByteArray -@4 := #2 -@5 := LexLeanTarget.TargetSyntax.Value.bytes -@6 := @5 @4 -@7 := LexLeanTarget.TargetSyntax.Ty.bytes -@8 := LexLeanTarget.TargetSyntax.Program -@9 := LexLeanPreservation.Rust.RCrate -@10 := LexLeanPreservation.Rust.Flags -@11 := LexLeanPreservation.Rust.WT -@12 := #3 -@14 := @11 @12 @4 -@15 := #1 -@16 := @14 @15 -@17 := #0 -@18 := @5 @17 -@24 := {p : @8} -> {c : @9} -> {A : @10} -> (b : @3) -> @16 @18 @7 -@26 := LexLeanPreservation.Rust.wt_bytes @0 -@27 := @11 @0 -@34 := {c : @9} -> {A : @10} -> (b : @3) -> @27 @4 @15 @18 @7 -@35 := @26 @1 -@36 := @27 @1 -@41 := {A : @10} -> (b : @3) -> @36 @15 @18 @7 -@42 := @35 @2 -@43 := @36 @2 -@46 := (b : @3) -> @43 @18 @7 -@47 := @42 @4 -@49 := @43 @6 @7 -@50 := @5 @15 -@51 := @42 @15 -@53 := @43 @50 @7 -@54 := LexLeanTarget.TargetSyntax.Value -@55 := List.nil.{0} -@56 := List.cons.{0} -@57 := @55 @54 -@58 := @56 @54 -@59 := @58 @50 -@60 := @59 @57 -@61 := @58 @6 -@62 := @61 @60 -@63 := Nat -@66 := Prod.{0, 0} @63 @54 -@67 := 1 -@70 := Prod.mk.{0, 0} @63 @54 -@71 := @70 @67 -@72 := @71 @50 -@73 := 0 -@74 := @70 @73 -@75 := @74 @6 -@76 := @55 @66 -@77 := @56 @66 -@79 := @77 @75 @76 -@81 := @77 @72 @79 -@82 := Bool.false -@83 := LexLeanTarget.TargetSyntax.Function -@84 := LexLeanTarget.TargetSyntax.Program.functions -@85 := @84 @0 -@86 := LexLeanTarget.TargetSyntax.Ty -@87 := @55 @63 -@88 := @55 @86 -@89 := LexLeanTarget.TargetSyntax.Ty.unit -@90 := LexLeanTarget.TargetSyntax.Value.unit -@93 := LexLeanTarget.TargetSyntax.Expr.value @89 @90 -@98 := LexLeanTarget.TargetSyntax.Function.mk @87 @88 @89 @93 -@103 := List.getD.{0} @83 @85 @73 @98 -@107 := fun (__e_n : @63) => - LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.RustStd.root @17 @73 -@108 := LexLeanPreservation.Rust.WTL -@116 := {p : @8} -> {c : @9} -> {A : @10} -> @108 @4 @15 @17 @57 @88 -@118 := LexLeanPreservation.Rust.wtl_nil @0 -@119 := @108 @0 -@125 := {c : @9} -> {A : @10} -> @119 @15 @17 @57 @88 -@126 := @118 @1 -@127 := @119 @1 -@131 := {A : @10} -> @127 @17 @57 @88 -@132 := @126 @2 -@133 := @127 @2 -@134 := @133 @57 -@135 := @134 @88 -@136 := List.{0} -@137 := @136 @54 -@138 := @136 @86 -@139 := #6 -@140 := @11 @139 -@141 := #5 -@142 := @140 @141 -@143 := #4 -@146 := @142 @143 @12 @4 -@147 := #7 -@152 := @108 @147 @139 @141 @4 @15 -@153 := #8 -@156 := @108 @153 @147 @139 -@158 := @58 @141 @12 -@159 := @156 @158 -@160 := @56 @86 -@162 := @160 @143 @4 -@172 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {v : @54} -> {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @146) -> (hs : @152) -> @159 @162 -@174 := LexLeanPreservation.Rust.wtl_cons @0 -@194 := {c : @9} -> - {A : @10} -> - {v : @54} -> - {t : @86} -> - {vs : @137} -> - {ts : @138} -> - (h : @27 @141 @143 @12 @4) -> (hs : @119 @139 @141 @4 @15) -> @119 @147 @139 @158 @162 -@195 := @174 @1 -@211 := {A : @10} -> - {v : @54} -> - {t : @86} -> - {vs : @137} -> - {ts : @138} -> (h : @36 @143 @12 @4) -> (hs : @127 @141 @4 @15) -> @127 @139 @158 @162 -@212 := @195 @2 -@214 := @43 @12 @4 -@216 := @133 @4 @15 -@224 := {v : @54} -> - {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @214) -> (hs : @216) -> @133 @158 @162 -@225 := @212 @50 -@226 := @5 @143 -@227 := @43 @226 -@228 := @227 @4 -@229 := @5 @139 -@230 := @58 @229 -@232 := @133 (@230 @12) -@238 := {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @228) -> (hs : @216) -> @232 @162 -@239 := @225 @7 -@240 := @5 @12 -@242 := @43 @240 @7 -@243 := @5 @141 -@244 := @58 @243 -@246 := @133 (@244 @12) -@247 := @160 @7 -@248 := @247 @4 -@253 := {vs : @137} -> {ts : @138} -> (h : @242) -> (hs : @216) -> @246 @248 -@254 := @239 @57 -@255 := @134 @15 -@256 := @58 @226 -@257 := @256 @57 -@262 := {ts : @138} -> (h : @49) -> (hs : @255) -> @133 @257 @248 -@263 := @254 @88 -@264 := @58 @240 -@265 := @264 @57 -@266 := @133 @265 -@267 := @247 @88 -@270 := (h : @53) -> (hs : @135) -> @266 @267 -@271 := @263 @51 -@272 := @61 @57 -@274 := @133 @272 @267 -@275 := (hs : @135) -> @274 -@276 := @271 @132 -@278 := @133 @60 @267 -@279 := @212 @6 -@281 := @43 @243 @4 -@282 := @5 @147 -@283 := @58 @282 -@291 := {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @281) -> (hs : @216) -> @133 (@283 @12) @162 -@292 := @279 @7 -@298 := {vs : @137} -> {ts : @138} -> (h : @227 @7) -> (hs : @216) -> @232 @248 -@299 := @292 @60 -@300 := @266 @15 -@301 := @244 @257 -@302 := @133 @301 -@306 := {ts : @138} -> (h : @242) -> (hs : @300) -> @302 @248 -@307 := @299 @267 -@308 := @256 @265 -@309 := @133 @308 -@310 := @247 @267 -@313 := (h : @49) -> (hs : @274) -> @309 @310 -@314 := @307 @47 -@315 := @264 @272 -@316 := @133 @315 -@318 := (hs : @278) -> @316 @310 -@319 := @314 @276 -@320 := @133 @62 -@321 := @320 @310 -@322 := LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.denote -@324 := @322 @4 @15 -@325 := LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.__fits_0 -@327 := @325 @4 @15 -@330 := LexLeanStd.Text.startsWith @4 @15 -@332 := LexLeanTarget.TargetSyntax.Value.bool @330 -@335 := LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.root @4 @15 -@336 := Bool -@337 := Ne.{1} -@338 := LexLeanPreservation.Obs -@339 := @337 @338 -@340 := LexLeanPreservation.Rel -@343 := @339 (@340 @15 @17) -@344 := LexLeanPreservation.Obs.stuck -@347 := (f : @336) -> (v : @54) -> @343 @344 -@349 := LexLeanPreservation.Rust.rel_ne_stuck @327 -@356 := (v : @54) -> @339 (@340 (@325 @12 @4) @17) @344 -@357 := @349 @332 -@361 := @339 (@340 @327 @332) @344 -@362 := @136 @66 -@363 := LexLeanPreservation.Rust.FunSem -@364 := #9 -@370 := (n : @63) -> @363 @364 @153 @147 @17 @139 -@371 := Eq.{1} -@372 := Option.{0} -@373 := @372 @83 -@374 := @371 @373 -@381 := LexLeanRuntime.index (@136 @83) @83 (LexLeanRuntime.instIndexableList @83) -@385 := @374 (@381 (@84 @364) @139) -@386 := Option.some.{0} -@387 := @386 @83 -@388 := @387 @141 -@389 := @385 @388 -@390 := #10 -@394 := @108 @390 @364 @153 @141 -@395 := LexLeanTarget.TargetSyntax.Function.types -@396 := @395 @139 -@397 := @394 @396 -@398 := @372 @362 -@399 := @371 @398 -@400 := LexLeanTarget.TargetSemantics.bindAll -@401 := LexLeanTarget.TargetSyntax.Function.parameters -@406 := @399 (@400 (@401 @147) @139 @76) -@407 := @386 @362 -@408 := @407 @141 -@409 := @406 @408 -@410 := @372 @336 -@411 := @371 @410 -@412 := LexLeanPreservation.Rust.fnFallible -@413 := #11 -@416 := @411 (@412 @413 @364) -@417 := @386 @336 -@418 := @417 @141 -@419 := @416 @418 -@420 := LexLeanPreservation.RunConv -@421 := #13 -@425 := @420 @421 @390 @153 @141 -@427 := @339 @139 @344 -@428 := Exists.{1} -@429 := LexLeanPreservation.Rust.ROut -@430 := @428 @429 -@431 := And -@432 := LexLeanPreservation.Rust.RealizesFn -@436 := @431 (@432 @364 @153 @17) -@437 := LexLeanPreservation.Rust.RCI -@439 := @437 #15 -@440 := LexLeanPreservation.Rust.fnIdent -@441 := @440 @421 -@448 := (hne : @427) -> @430 (fun (ro : @429) => @436 (@439 @441 @413 @17)) -@463 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {f : @63} -> - {fn : @83} -> - {args : @137} -> - {env : @362} -> - {F : @336} -> - {o : @338} -> - (hB : @370) -> - (hfn : @389) -> (hwt : @397) -> (hbind : @409) -> (hF : @419) -> (hA : @425) -> @448 -@465 := LexLeanPreservation.Rust.compose @0 -@466 := @363 @0 -@471 := (n : @63) -> @466 @153 @147 @17 @139 -@472 := @381 @85 -@475 := @374 (@472 @139) @388 -@479 := @119 @364 @153 @141 @396 -@480 := @420 @0 -@483 := @480 @390 @153 @141 -@497 := {c : @9} -> - {A : @10} -> - {f : @63} -> - {fn : @83} -> - {args : @137} -> - {env : @362} -> - {F : @336} -> - {o : @338} -> - (hB : @471) -> - (hfn : @475) -> (hwt : @479) -> (hbind : @409) -> (hF : @419) -> (hA : @483) -> @448 -@498 := @465 @1 -@499 := @466 @1 -@503 := (n : @63) -> @499 @147 @17 @139 -@506 := @127 @153 @141 @396 -@507 := @412 @1 -@510 := @411 (@507 @364) @418 -@511 := @437 @1 -@521 := (hbind : @409) -> - (hF : @510) -> (hA : @483) -> (hne : @427) -> @430 (fun (ro : @429) => @436 (@511 @441 @413 @17)) -@531 := {A : @10} -> - {f : @63} -> - {fn : @83} -> - {args : @137} -> - {env : @362} -> {F : @336} -> {o : @338} -> (hB : @503) -> (hfn : @475) -> (hwt : @506) -> @521 -@532 := @498 @2 -@534 := @499 @2 @17 -@536 := (n : @63) -> @534 @139 -@537 := @133 @141 -@538 := @537 @396 -@547 := {f : @63} -> - {fn : @83} -> - {args : @137} -> - {env : @362} -> {F : @336} -> {o : @338} -> (hB : @536) -> (hfn : @475) -> (hwt : @538) -> @521 -@548 := @532 @73 -@550 := (n : @63) -> @534 @73 -@551 := @472 @73 -@552 := @374 @551 -@553 := @552 @388 -@554 := @507 @73 -@555 := @411 @554 -@556 := @555 @418 -@557 := @480 @73 -@559 := @557 @153 @141 -@561 := @511 (@440 @73) -@569 := (hF : @556) -> (hA : @559) -> (hne : @427) -> @430 (fun (ro : @429) => @436 (@561 @413 @17)) -@578 := {fn : @83} -> - {args : @137} -> - {env : @362} -> - {F : @336} -> {o : @338} -> (hB : @550) -> (hfn : @553) -> (hwt : @538) -> (hbind : @409) -> @569 -@579 := @548 @103 -@581 := @552 (@387 @103) -@582 := @395 @103 -@583 := @537 @582 -@585 := @400 (@401 @103) -@597 := {args : @137} -> - {env : @362} -> - {F : @336} -> - {o : @338} -> - (hB : @550) -> (hfn : @581) -> (hwt : @583) -> (hbind : @399 (@585 @139 @76) @408) -> @569 -@598 := @579 @62 -@600 := @283 (@230 @57) -@602 := @133 @600 @582 -@604 := @58 (@5 @153) -@606 := @604 (@283 @57) -@610 := @399 (@585 @606 @76) @408 -@612 := @58 (@5 @390) -@614 := @58 (@5 @364) -@616 := @612 (@614 @57) -@618 := @557 @616 @141 -@620 := @58 (@5 @421) -@623 := @58 (@5 #12) -@640 := {env : @362} -> - {F : @336} -> - {o : @338} -> - (hB : @550) -> - (hfn : @581) -> - (hwt : @602) -> - (hbind : @610) -> - (hF : @556) -> - (hA : @618) -> (hne : @427) -> @430 (fun (ro : @429) => @436 (@561 (@620 (@623 @57)) @17)) -@641 := @598 @81 -@643 := @230 (@244 @57) -@645 := @133 @643 @582 -@656 := @399 (@585 @600 @76) (@407 (@77 (@71 @229) (@77 (@74 @282) @76))) -@658 := @614 (@604 @57) -@660 := @557 @658 @141 -@662 := @58 (@5 @413) -@678 := {F : @336} -> - {o : @338} -> - (hB : @550) -> - (hfn : @581) -> - (hwt : @645) -> - (hbind : @656) -> - (hF : @556) -> - (hA : @660) -> (hne : @427) -> @430 (fun (ro : @429) => @436 (@561 (@623 (@662 @57)) @17)) -@679 := @641 @82 -@680 := @302 @582 -@691 := @399 (@585 @643 @76) (@407 (@77 (@71 @243) (@77 (@74 @229) @76))) -@693 := @555 (@417 @82) -@695 := @557 @606 @141 -@696 := @432 @82 -@714 := {o : @338} -> - (hB : @550) -> - (hfn : @581) -> - (hwt : @680) -> - (hbind : @691) -> - (hF : @693) -> - (hA : @695) -> - (hne : @427) -> @430 (fun (ro : @429) => @431 (@696 @153 @17) (@561 (@662 (@612 @57)) @17)) -@715 := @679 @324 -@716 := @309 @582 -@727 := @399 (@585 @301 @76) (@407 (@77 (@71 @226) (@77 (@74 @243) @76))) -@728 := @557 @600 -@730 := @322 @147 @139 -@731 := @728 @730 -@733 := @322 @153 @147 -@752 := (hB : @550) -> - (hfn : @581) -> - (hwt : @716) -> - (hbind : @727) -> - (hF : @693) -> - (hA : @731) -> - (hne : @339 @733 @344) -> - @430 (fun (ro : @429) => @431 (@696 (@322 @390 @364) @17) (@561 @616 @17)) -@753 := @715 @107 -@754 := @316 @582 -@765 := @399 (@585 @308 @76) (@407 (@77 (@71 @240) (@77 (@74 @226) @76))) -@766 := @557 @643 -@768 := @322 @139 @141 -@787 := (hfn : @581) -> - (hwt : @754) -> - (hbind : @765) -> - (hF : @693) -> - (hA : @766 @768) -> - (hne : @339 @730 @344) -> - @430 (fun (ro : @429) => @431 (@696 (@322 @364 @153) @17) (@561 @658 @17)) -@788 := Eq.refl.{1} -@791 := @753 (@788 @373 @551) -@792 := @320 @582 -@803 := @399 (@585 @315 @76) (@407 (@77 (@71 @6) (@77 (@74 @240) @76))) -@804 := @557 @301 -@806 := @322 @141 @143 -@822 := (hwt : @792) -> - (hbind : @803) -> - (hF : @693) -> - (hA : @804 @806) -> - (hne : @339 @768 @344) -> @430 (fun (ro : @429) => @431 (@696 @733 @17) (@561 @606 @17)) -@823 := @791 @319 -@825 := @585 @62 @76 -@828 := @399 @825 (@407 @81) -@829 := @557 @308 -@831 := @322 @143 @12 -@846 := (hbind : @828) -> - (hF : @693) -> - (hA : @829 @831) -> - (hne : @339 @806 @344) -> @430 (fun (ro : @429) => @431 (@696 @730 @17) (@561 @600 @17)) -@849 := @823 (@788 @398 @825) -@850 := @557 @315 -@852 := @322 @12 @4 -@866 := (hF : @693) -> - (hA : @850 @852) -> - (hne : @339 @831 @344) -> @430 (fun (ro : @429) => @431 (@696 @768 @17) (@561 @643 @17)) -@869 := @849 (@788 @410 @554) -@883 := (hA : @557 @62 @324) -> - (hne : @339 @852 @344) -> @430 (fun (ro : @429) => @431 (@696 @806 @17) (@561 @301 @17)) -@884 := @869 @335 -@895 := (hne : @339 @324 @344) -> @430 (fun (ro : @429) => @431 (@696 @831 @17) (@561 @308 @17)) -@896 := @884 @357 -@902 := @431 (@696 @852 @17) (@561 @315 @17) -@904 := @430 (fun (ro : @429) => @902) -@906 := @430 (fun (__e_ro : @429) => @902) -@911 := LexLeanPreservation.Rust.RepresentableL (@59 (@58 @18 @57)) -@912 := (__e_hrep : @911) -> @906 -@913 := fun (__e_hrep : @911) => @896 -@914 := (prefix : @3) -> @912 -@915 := fun (prefix : @3) => @913 -@916 := (subject : @3) -> @914 -@917 := fun (subject : @3) => @915 -\end{coremodule} -\end{lexlean} diff --git a/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R0/RustStd.lean b/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R0/RustStd.lean deleted file mode 100644 index 4c1c26df3..000000000 --- a/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R0/RustStd.lean +++ /dev/null @@ -1,33 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1], types := [.bytes, .bytes], result := .bool, - body := (.«match» .bool (.prim .slice [(.var 0), (.value .nat (.nat 0)), (.prim .length [(.var 1)])]) [(.arm .some [2] (.prim .equal [(.var 2), (.var 1)])), (.arm .none [] (.build .false .bool []))]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] .bool (.mk [(.mk (.bind (.generated .holder 5)) none (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 3)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 1))] false))))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 2)), (.move (.generated .operand 3)), (.move (.generated .operand 4))] false))))] (.matchOn (.move (.generated .holder 5)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.bind (.generated .binding 2))) (.mk [(.mk (.bind (.generated .operand 6)) none (.move (.generated .binding 2))), (.mk (.bind (.generated .operand 7)) none (.move (.generated .binding 1)))] (.call (.runtime .equal) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false)))])))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 5)) none (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 3)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 1))] false))))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 2)), (.move (.generated .operand 3)), (.move (.generated .operand 4))] false))))], (.matchOn (.move (.generated .holder 5)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.bind (.generated .binding 2))) (.mk [(.mk (.bind (.generated .operand 6)) none (.move (.generated .binding 2))), (.mk (.bind (.generated .operand 7)) none (.move (.generated .binding 1)))] (.call (.runtime .equal) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false)))]), [(1, .bytes, (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 2)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 3)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 1))] false))))]) (tail := (.call (.runtime .sliceBytes) [(.move (.generated .operand 2)), (.move (.generated .operand 3)), (.move (.generated .operand 4))] false)) (Corr.prim (ts := [.bytes, .nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 1)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 1))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(2, .bytes, (some 2)), (1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .operand 6)) none (.move (.generated .binding 2))), (.mk (.bind (.generated .operand 7)) none (.move (.generated .binding 1)))]) (tail := (.call (.runtime .equal) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false)) (Corr.mNil) rfl rfl rfl (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | _ + 1 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.RustStd diff --git a/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R1.lean b/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R1.lean deleted file mode 100644 index a191ace59..000000000 --- a/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R1.lean +++ /dev/null @@ -1,33 +0,0 @@ -import LexLeanPreservation.Core -import LexLeanPreservation.Values -import LexLeanPreservation.Primitives -import LexLeanPreservation.Fixed -import LexLeanPreservation.Keys -import LexLeanPreservation.Templates -import LexLeanPreservation.Validate -import LexLeanStd.Text -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -set_option linter.unusedVariables false -namespace LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1 - -def __prog : _root_.LexLeanTarget.TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1], types := [.bytes, .bytes], result := .bool, - body := (.«let» 2 .nat (.prim .length [(.var 0)]) (.«let» 3 .nat (.prim .length [(.var 1)]) (.cond (.prim .natLe [(.var 3), (.var 2)]) (.«match» .bool (.prim .slice [(.var 0), (.prim .natSub [(.var 2), (.var 3)]), (.var 3)]) [(.arm .some [4] (.prim .equal [(.var 4), (.var 1)])), (.arm .none [] (.build .false .bool []))]) (.build .false .bool [])))) }] } - -def __fits_0 (subject : ByteArray) (suffix : ByteArray) : Bool := - (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (subject) : Nat) 18446744073709551616)) && (let total : Nat := (_root_.LexLeanRuntime.length (subject) : Nat); (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (suffix) : Nat) 18446744073709551616)) && (let size : Nat := (_root_.LexLeanRuntime.length (suffix) : Nat); (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.ble size total) then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (Bool.true && Bool.true))) && Bool.true) && (match (_root_.LexLeanRuntime.slice (subject) ((_root_.LexLeanRuntime.subtract (total) (size) : Nat)) (size) : (Option ByteArray)) with | Option.some tail => ((Bool.true && (Bool.true && Bool.true)) && Bool.true) | Option.none => (Bool.true && Bool.true))) else (Bool.true && Bool.true))))))) - -theorem __rel_0 (subject : ByteArray) (suffix : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.bytes suffix)] (_root_.LexLeanPreservation.Rel (__fits_0 subject suffix) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanStd.Text.endsWith subject suffix))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (let total : Nat := (_root_.LexLeanRuntime.length (subject) : Nat); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes subject)) (let size : Nat := (_root_.LexLeanRuntime.length (suffix) : Nat); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes suffix)) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (Bool.true && Bool.true))) && Bool.true) && (match (_root_.LexLeanRuntime.slice (subject) ((_root_.LexLeanRuntime.subtract (total) (size) : Nat)) (size) : (Option ByteArray)) with | Option.some tail => ((Bool.true && (Bool.true && Bool.true)) && Bool.true) | Option.none => (Bool.true && Bool.true))) else (Bool.true && Bool.true))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then (match (_root_.LexLeanRuntime.slice (subject) ((_root_.LexLeanRuntime.subtract (total) (size) : Nat)) (size) : (Option ByteArray)) with | Option.some tail => (_root_.LexLeanRuntime.equal (tail) (suffix) : Bool) | Option.none => Bool.false) else Bool.false)) (Nat.ble size total) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe size total)) (fun _ => (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.some tail => ((Bool.true && (Bool.true && Bool.true)) && Bool.true) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option ByteArray)) => _root_.LexLeanTarget.TargetSyntax.Value.bool (match __a with | Option.some tail => (_root_.LexLeanRuntime.equal (tail) (suffix) : Bool) | Option.none => Bool.false)) (_root_.LexLeanRuntime.slice (subject) ((_root_.LexLeanRuntime.subtract (total) (size) : Nat)) (size) : (Option ByteArray)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub total size)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.prim_slice_bytes subject (_root_.LexLeanRuntime.subtract (total) (size) : Nat) size)) (fun (__a : (Option ByteArray)) _ => match __a with | Option.some tail => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_bytes tail suffix))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))))) - -def denote (subject : ByteArray) (suffix : ByteArray) : _root_.LexLeanPreservation.Obs := - _root_.cond (__fits_0 subject suffix) (_root_.LexLeanPreservation.Obs.value ((_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanStd.Text.endsWith subject suffix)))) _root_.LexLeanPreservation.Obs.overflow - -theorem root (subject : ByteArray) (suffix : ByteArray) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.bytes suffix)] (_root_.LexLeanPreservation.Rel (__fits_0 subject suffix) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanStd.Text.endsWith subject suffix))) := - _root_.LexLeanPreservation.run_of_funRel (__rel_0 subject suffix) - -end LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1 diff --git a/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R1/Compose/RustStd.lex.tex b/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R1/Compose/RustStd.lex.tex deleted file mode 100644 index 78c69ee32..000000000 --- a/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R1/Compose/RustStd.lex.tex +++ /dev/null @@ -1,464 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1, - LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.Compose.RustStd.root : @916 := @917 { - all: [LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.RustStd.program -@1 := LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.RustStd.krate -@2 := LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.RustStd.flags -@3 := ByteArray -@4 := #2 -@5 := LexLeanTarget.TargetSyntax.Value.bytes -@6 := @5 @4 -@7 := LexLeanTarget.TargetSyntax.Ty.bytes -@8 := LexLeanTarget.TargetSyntax.Program -@9 := LexLeanPreservation.Rust.RCrate -@10 := LexLeanPreservation.Rust.Flags -@11 := LexLeanPreservation.Rust.WT -@12 := #3 -@14 := @11 @12 @4 -@15 := #1 -@16 := @14 @15 -@17 := #0 -@18 := @5 @17 -@24 := {p : @8} -> {c : @9} -> {A : @10} -> (b : @3) -> @16 @18 @7 -@26 := LexLeanPreservation.Rust.wt_bytes @0 -@27 := @11 @0 -@34 := {c : @9} -> {A : @10} -> (b : @3) -> @27 @4 @15 @18 @7 -@35 := @26 @1 -@36 := @27 @1 -@41 := {A : @10} -> (b : @3) -> @36 @15 @18 @7 -@42 := @35 @2 -@43 := @36 @2 -@46 := (b : @3) -> @43 @18 @7 -@47 := @42 @4 -@49 := @43 @6 @7 -@50 := @5 @15 -@51 := @42 @15 -@53 := @43 @50 @7 -@54 := LexLeanTarget.TargetSyntax.Value -@55 := List.nil.{0} -@56 := List.cons.{0} -@57 := @55 @54 -@58 := @56 @54 -@59 := @58 @50 -@60 := @59 @57 -@61 := @58 @6 -@62 := @61 @60 -@63 := Nat -@66 := Prod.{0, 0} @63 @54 -@67 := 1 -@70 := Prod.mk.{0, 0} @63 @54 -@71 := @70 @67 -@72 := @71 @50 -@73 := 0 -@74 := @70 @73 -@75 := @74 @6 -@76 := @55 @66 -@77 := @56 @66 -@79 := @77 @75 @76 -@81 := @77 @72 @79 -@82 := Bool.false -@83 := LexLeanTarget.TargetSyntax.Function -@84 := LexLeanTarget.TargetSyntax.Program.functions -@85 := @84 @0 -@86 := LexLeanTarget.TargetSyntax.Ty -@87 := @55 @63 -@88 := @55 @86 -@89 := LexLeanTarget.TargetSyntax.Ty.unit -@90 := LexLeanTarget.TargetSyntax.Value.unit -@93 := LexLeanTarget.TargetSyntax.Expr.value @89 @90 -@98 := LexLeanTarget.TargetSyntax.Function.mk @87 @88 @89 @93 -@103 := List.getD.{0} @83 @85 @73 @98 -@107 := fun (__e_n : @63) => - LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.RustStd.root @17 @73 -@108 := LexLeanPreservation.Rust.WTL -@116 := {p : @8} -> {c : @9} -> {A : @10} -> @108 @4 @15 @17 @57 @88 -@118 := LexLeanPreservation.Rust.wtl_nil @0 -@119 := @108 @0 -@125 := {c : @9} -> {A : @10} -> @119 @15 @17 @57 @88 -@126 := @118 @1 -@127 := @119 @1 -@131 := {A : @10} -> @127 @17 @57 @88 -@132 := @126 @2 -@133 := @127 @2 -@134 := @133 @57 -@135 := @134 @88 -@136 := List.{0} -@137 := @136 @54 -@138 := @136 @86 -@139 := #6 -@140 := @11 @139 -@141 := #5 -@142 := @140 @141 -@143 := #4 -@146 := @142 @143 @12 @4 -@147 := #7 -@152 := @108 @147 @139 @141 @4 @15 -@153 := #8 -@156 := @108 @153 @147 @139 -@158 := @58 @141 @12 -@159 := @156 @158 -@160 := @56 @86 -@162 := @160 @143 @4 -@172 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {v : @54} -> {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @146) -> (hs : @152) -> @159 @162 -@174 := LexLeanPreservation.Rust.wtl_cons @0 -@194 := {c : @9} -> - {A : @10} -> - {v : @54} -> - {t : @86} -> - {vs : @137} -> - {ts : @138} -> - (h : @27 @141 @143 @12 @4) -> (hs : @119 @139 @141 @4 @15) -> @119 @147 @139 @158 @162 -@195 := @174 @1 -@211 := {A : @10} -> - {v : @54} -> - {t : @86} -> - {vs : @137} -> - {ts : @138} -> (h : @36 @143 @12 @4) -> (hs : @127 @141 @4 @15) -> @127 @139 @158 @162 -@212 := @195 @2 -@214 := @43 @12 @4 -@216 := @133 @4 @15 -@224 := {v : @54} -> - {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @214) -> (hs : @216) -> @133 @158 @162 -@225 := @212 @50 -@226 := @5 @143 -@227 := @43 @226 -@228 := @227 @4 -@229 := @5 @139 -@230 := @58 @229 -@232 := @133 (@230 @12) -@238 := {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @228) -> (hs : @216) -> @232 @162 -@239 := @225 @7 -@240 := @5 @12 -@242 := @43 @240 @7 -@243 := @5 @141 -@244 := @58 @243 -@246 := @133 (@244 @12) -@247 := @160 @7 -@248 := @247 @4 -@253 := {vs : @137} -> {ts : @138} -> (h : @242) -> (hs : @216) -> @246 @248 -@254 := @239 @57 -@255 := @134 @15 -@256 := @58 @226 -@257 := @256 @57 -@262 := {ts : @138} -> (h : @49) -> (hs : @255) -> @133 @257 @248 -@263 := @254 @88 -@264 := @58 @240 -@265 := @264 @57 -@266 := @133 @265 -@267 := @247 @88 -@270 := (h : @53) -> (hs : @135) -> @266 @267 -@271 := @263 @51 -@272 := @61 @57 -@274 := @133 @272 @267 -@275 := (hs : @135) -> @274 -@276 := @271 @132 -@278 := @133 @60 @267 -@279 := @212 @6 -@281 := @43 @243 @4 -@282 := @5 @147 -@283 := @58 @282 -@291 := {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @281) -> (hs : @216) -> @133 (@283 @12) @162 -@292 := @279 @7 -@298 := {vs : @137} -> {ts : @138} -> (h : @227 @7) -> (hs : @216) -> @232 @248 -@299 := @292 @60 -@300 := @266 @15 -@301 := @244 @257 -@302 := @133 @301 -@306 := {ts : @138} -> (h : @242) -> (hs : @300) -> @302 @248 -@307 := @299 @267 -@308 := @256 @265 -@309 := @133 @308 -@310 := @247 @267 -@313 := (h : @49) -> (hs : @274) -> @309 @310 -@314 := @307 @47 -@315 := @264 @272 -@316 := @133 @315 -@318 := (hs : @278) -> @316 @310 -@319 := @314 @276 -@320 := @133 @62 -@321 := @320 @310 -@322 := LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.denote -@324 := @322 @4 @15 -@325 := LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.__fits_0 -@327 := @325 @4 @15 -@330 := LexLeanStd.Text.endsWith @4 @15 -@332 := LexLeanTarget.TargetSyntax.Value.bool @330 -@335 := LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.root @4 @15 -@336 := Bool -@337 := Ne.{1} -@338 := LexLeanPreservation.Obs -@339 := @337 @338 -@340 := LexLeanPreservation.Rel -@343 := @339 (@340 @15 @17) -@344 := LexLeanPreservation.Obs.stuck -@347 := (f : @336) -> (v : @54) -> @343 @344 -@349 := LexLeanPreservation.Rust.rel_ne_stuck @327 -@356 := (v : @54) -> @339 (@340 (@325 @12 @4) @17) @344 -@357 := @349 @332 -@361 := @339 (@340 @327 @332) @344 -@362 := @136 @66 -@363 := LexLeanPreservation.Rust.FunSem -@364 := #9 -@370 := (n : @63) -> @363 @364 @153 @147 @17 @139 -@371 := Eq.{1} -@372 := Option.{0} -@373 := @372 @83 -@374 := @371 @373 -@381 := LexLeanRuntime.index (@136 @83) @83 (LexLeanRuntime.instIndexableList @83) -@385 := @374 (@381 (@84 @364) @139) -@386 := Option.some.{0} -@387 := @386 @83 -@388 := @387 @141 -@389 := @385 @388 -@390 := #10 -@394 := @108 @390 @364 @153 @141 -@395 := LexLeanTarget.TargetSyntax.Function.types -@396 := @395 @139 -@397 := @394 @396 -@398 := @372 @362 -@399 := @371 @398 -@400 := LexLeanTarget.TargetSemantics.bindAll -@401 := LexLeanTarget.TargetSyntax.Function.parameters -@406 := @399 (@400 (@401 @147) @139 @76) -@407 := @386 @362 -@408 := @407 @141 -@409 := @406 @408 -@410 := @372 @336 -@411 := @371 @410 -@412 := LexLeanPreservation.Rust.fnFallible -@413 := #11 -@416 := @411 (@412 @413 @364) -@417 := @386 @336 -@418 := @417 @141 -@419 := @416 @418 -@420 := LexLeanPreservation.RunConv -@421 := #13 -@425 := @420 @421 @390 @153 @141 -@427 := @339 @139 @344 -@428 := Exists.{1} -@429 := LexLeanPreservation.Rust.ROut -@430 := @428 @429 -@431 := And -@432 := LexLeanPreservation.Rust.RealizesFn -@436 := @431 (@432 @364 @153 @17) -@437 := LexLeanPreservation.Rust.RCI -@439 := @437 #15 -@440 := LexLeanPreservation.Rust.fnIdent -@441 := @440 @421 -@448 := (hne : @427) -> @430 (fun (ro : @429) => @436 (@439 @441 @413 @17)) -@463 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {f : @63} -> - {fn : @83} -> - {args : @137} -> - {env : @362} -> - {F : @336} -> - {o : @338} -> - (hB : @370) -> - (hfn : @389) -> (hwt : @397) -> (hbind : @409) -> (hF : @419) -> (hA : @425) -> @448 -@465 := LexLeanPreservation.Rust.compose @0 -@466 := @363 @0 -@471 := (n : @63) -> @466 @153 @147 @17 @139 -@472 := @381 @85 -@475 := @374 (@472 @139) @388 -@479 := @119 @364 @153 @141 @396 -@480 := @420 @0 -@483 := @480 @390 @153 @141 -@497 := {c : @9} -> - {A : @10} -> - {f : @63} -> - {fn : @83} -> - {args : @137} -> - {env : @362} -> - {F : @336} -> - {o : @338} -> - (hB : @471) -> - (hfn : @475) -> (hwt : @479) -> (hbind : @409) -> (hF : @419) -> (hA : @483) -> @448 -@498 := @465 @1 -@499 := @466 @1 -@503 := (n : @63) -> @499 @147 @17 @139 -@506 := @127 @153 @141 @396 -@507 := @412 @1 -@510 := @411 (@507 @364) @418 -@511 := @437 @1 -@521 := (hbind : @409) -> - (hF : @510) -> (hA : @483) -> (hne : @427) -> @430 (fun (ro : @429) => @436 (@511 @441 @413 @17)) -@531 := {A : @10} -> - {f : @63} -> - {fn : @83} -> - {args : @137} -> - {env : @362} -> {F : @336} -> {o : @338} -> (hB : @503) -> (hfn : @475) -> (hwt : @506) -> @521 -@532 := @498 @2 -@534 := @499 @2 @17 -@536 := (n : @63) -> @534 @139 -@537 := @133 @141 -@538 := @537 @396 -@547 := {f : @63} -> - {fn : @83} -> - {args : @137} -> - {env : @362} -> {F : @336} -> {o : @338} -> (hB : @536) -> (hfn : @475) -> (hwt : @538) -> @521 -@548 := @532 @73 -@550 := (n : @63) -> @534 @73 -@551 := @472 @73 -@552 := @374 @551 -@553 := @552 @388 -@554 := @507 @73 -@555 := @411 @554 -@556 := @555 @418 -@557 := @480 @73 -@559 := @557 @153 @141 -@561 := @511 (@440 @73) -@569 := (hF : @556) -> (hA : @559) -> (hne : @427) -> @430 (fun (ro : @429) => @436 (@561 @413 @17)) -@578 := {fn : @83} -> - {args : @137} -> - {env : @362} -> - {F : @336} -> {o : @338} -> (hB : @550) -> (hfn : @553) -> (hwt : @538) -> (hbind : @409) -> @569 -@579 := @548 @103 -@581 := @552 (@387 @103) -@582 := @395 @103 -@583 := @537 @582 -@585 := @400 (@401 @103) -@597 := {args : @137} -> - {env : @362} -> - {F : @336} -> - {o : @338} -> - (hB : @550) -> (hfn : @581) -> (hwt : @583) -> (hbind : @399 (@585 @139 @76) @408) -> @569 -@598 := @579 @62 -@600 := @283 (@230 @57) -@602 := @133 @600 @582 -@604 := @58 (@5 @153) -@606 := @604 (@283 @57) -@610 := @399 (@585 @606 @76) @408 -@612 := @58 (@5 @390) -@614 := @58 (@5 @364) -@616 := @612 (@614 @57) -@618 := @557 @616 @141 -@620 := @58 (@5 @421) -@623 := @58 (@5 #12) -@640 := {env : @362} -> - {F : @336} -> - {o : @338} -> - (hB : @550) -> - (hfn : @581) -> - (hwt : @602) -> - (hbind : @610) -> - (hF : @556) -> - (hA : @618) -> (hne : @427) -> @430 (fun (ro : @429) => @436 (@561 (@620 (@623 @57)) @17)) -@641 := @598 @81 -@643 := @230 (@244 @57) -@645 := @133 @643 @582 -@656 := @399 (@585 @600 @76) (@407 (@77 (@71 @229) (@77 (@74 @282) @76))) -@658 := @614 (@604 @57) -@660 := @557 @658 @141 -@662 := @58 (@5 @413) -@678 := {F : @336} -> - {o : @338} -> - (hB : @550) -> - (hfn : @581) -> - (hwt : @645) -> - (hbind : @656) -> - (hF : @556) -> - (hA : @660) -> (hne : @427) -> @430 (fun (ro : @429) => @436 (@561 (@623 (@662 @57)) @17)) -@679 := @641 @82 -@680 := @302 @582 -@691 := @399 (@585 @643 @76) (@407 (@77 (@71 @243) (@77 (@74 @229) @76))) -@693 := @555 (@417 @82) -@695 := @557 @606 @141 -@696 := @432 @82 -@714 := {o : @338} -> - (hB : @550) -> - (hfn : @581) -> - (hwt : @680) -> - (hbind : @691) -> - (hF : @693) -> - (hA : @695) -> - (hne : @427) -> @430 (fun (ro : @429) => @431 (@696 @153 @17) (@561 (@662 (@612 @57)) @17)) -@715 := @679 @324 -@716 := @309 @582 -@727 := @399 (@585 @301 @76) (@407 (@77 (@71 @226) (@77 (@74 @243) @76))) -@728 := @557 @600 -@730 := @322 @147 @139 -@731 := @728 @730 -@733 := @322 @153 @147 -@752 := (hB : @550) -> - (hfn : @581) -> - (hwt : @716) -> - (hbind : @727) -> - (hF : @693) -> - (hA : @731) -> - (hne : @339 @733 @344) -> - @430 (fun (ro : @429) => @431 (@696 (@322 @390 @364) @17) (@561 @616 @17)) -@753 := @715 @107 -@754 := @316 @582 -@765 := @399 (@585 @308 @76) (@407 (@77 (@71 @240) (@77 (@74 @226) @76))) -@766 := @557 @643 -@768 := @322 @139 @141 -@787 := (hfn : @581) -> - (hwt : @754) -> - (hbind : @765) -> - (hF : @693) -> - (hA : @766 @768) -> - (hne : @339 @730 @344) -> - @430 (fun (ro : @429) => @431 (@696 (@322 @364 @153) @17) (@561 @658 @17)) -@788 := Eq.refl.{1} -@791 := @753 (@788 @373 @551) -@792 := @320 @582 -@803 := @399 (@585 @315 @76) (@407 (@77 (@71 @6) (@77 (@74 @240) @76))) -@804 := @557 @301 -@806 := @322 @141 @143 -@822 := (hwt : @792) -> - (hbind : @803) -> - (hF : @693) -> - (hA : @804 @806) -> - (hne : @339 @768 @344) -> @430 (fun (ro : @429) => @431 (@696 @733 @17) (@561 @606 @17)) -@823 := @791 @319 -@825 := @585 @62 @76 -@828 := @399 @825 (@407 @81) -@829 := @557 @308 -@831 := @322 @143 @12 -@846 := (hbind : @828) -> - (hF : @693) -> - (hA : @829 @831) -> - (hne : @339 @806 @344) -> @430 (fun (ro : @429) => @431 (@696 @730 @17) (@561 @600 @17)) -@849 := @823 (@788 @398 @825) -@850 := @557 @315 -@852 := @322 @12 @4 -@866 := (hF : @693) -> - (hA : @850 @852) -> - (hne : @339 @831 @344) -> @430 (fun (ro : @429) => @431 (@696 @768 @17) (@561 @643 @17)) -@869 := @849 (@788 @410 @554) -@883 := (hA : @557 @62 @324) -> - (hne : @339 @852 @344) -> @430 (fun (ro : @429) => @431 (@696 @806 @17) (@561 @301 @17)) -@884 := @869 @335 -@895 := (hne : @339 @324 @344) -> @430 (fun (ro : @429) => @431 (@696 @831 @17) (@561 @308 @17)) -@896 := @884 @357 -@902 := @431 (@696 @852 @17) (@561 @315 @17) -@904 := @430 (fun (ro : @429) => @902) -@906 := @430 (fun (__e_ro : @429) => @902) -@911 := LexLeanPreservation.Rust.RepresentableL (@59 (@58 @18 @57)) -@912 := (__e_hrep : @911) -> @906 -@913 := fun (__e_hrep : @911) => @896 -@914 := (suffix : @3) -> @912 -@915 := fun (suffix : @3) => @913 -@916 := (subject : @3) -> @914 -@917 := fun (subject : @3) => @915 -\end{coremodule} -\end{lexlean} diff --git a/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R1/RustStd.lean b/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R1/RustStd.lean deleted file mode 100644 index 0fdc74d6b..000000000 --- a/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R1/RustStd.lean +++ /dev/null @@ -1,33 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1], types := [.bytes, .bytes], result := .bool, - body := (.«let» 2 .nat (.prim .length [(.var 0)]) (.«let» 3 .nat (.prim .length [(.var 1)]) (.cond (.prim .natLe [(.var 3), (.var 2)]) (.«match» .bool (.prim .slice [(.var 0), (.prim .natSub [(.var 2), (.var 3)]), (.var 3)]) [(.arm .some [4] (.prim .equal [(.var 4), (.var 1)])), (.arm .none [] (.build .false .bool []))]) (.build .false .bool [])))) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] .bool (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 1))] false)))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 2))] false)))), (.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 2)))] (.cond (.call (.runtime .natLe) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false) (.mk [(.mk (.bind (.generated .holder 10)) none (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 8)) none (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false)))), (.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 3)))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 7)), (.move (.generated .operand 8)), (.move (.generated .operand 9))] false))))] (.matchOn (.move (.generated .holder 10)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.bind (.generated .binding 4))) (.mk [(.mk (.bind (.generated .operand 11)) none (.move (.generated .binding 4))), (.mk (.bind (.generated .operand 12)) none (.move (.generated .binding 1)))] (.call (.runtime .equal) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false)))])) (.mk [] (.lit (.bool false))))))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 1))] false)))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 2))] false)))), (.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 2)))], (.cond (.call (.runtime .natLe) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false) (.mk [(.mk (.bind (.generated .holder 10)) none (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 8)) none (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false)))), (.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 3)))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 7)), (.move (.generated .operand 8)), (.move (.generated .operand 9))] false))))] (.matchOn (.move (.generated .holder 10)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.bind (.generated .binding 4))) (.mk [(.mk (.bind (.generated .operand 11)) none (.move (.generated .binding 4))), (.mk (.bind (.generated .operand 12)) none (.move (.generated .binding 1)))] (.call (.runtime .equal) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false)))])) (.mk [] (.lit (.bool false)))), [(1, .bytes, (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 1))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 2)) none (.clone (.generated .binding 1)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 2))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 2)))]) (ce := (.call (.runtime .natLe) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .holder 10)) none (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 8)) none (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false)))), (.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 3)))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 7)), (.move (.generated .operand 8)), (.move (.generated .operand 9))] false))))]) (ta := (.matchOn (.move (.generated .holder 10)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.bind (.generated .binding 4))) (.mk [(.mk (.bind (.generated .operand 11)) none (.move (.generated .binding 4))), (.mk (.bind (.generated .operand 12)) none (.move (.generated .binding 1)))] (.call (.runtime .equal) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false)))])) (lb := []) (tb := (.lit (.bool false))) (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 7)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 8)) none (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false)))), (.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 3)))]) (tail := (.call (.runtime .sliceBytes) [(.move (.generated .operand 7)), (.move (.generated .operand 8)), (.move (.generated .operand 9))] false)) (Corr.prim (ts := [.bytes, .nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 3)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (2, .nat, (some 2)), (1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, .bytes, (some 4)), (3, .nat, (some 3)), (2, .nat, (some 2)), (1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .operand 11)) none (.move (.generated .binding 4))), (.mk (.bind (.generated .operand 12)) none (.move (.generated .binding 1)))]) (tail := (.call (.runtime .equal) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false)) (Corr.mNil) rfl rfl rfl (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | _ + 1 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.RustStd diff --git a/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R2.lean b/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R2.lean deleted file mode 100644 index 4f87c9214..000000000 --- a/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R2.lean +++ /dev/null @@ -1,105 +0,0 @@ -import LexLeanPreservation.Core -import LexLeanPreservation.Values -import LexLeanPreservation.Primitives -import LexLeanPreservation.Fixed -import LexLeanPreservation.Keys -import LexLeanPreservation.Templates -import LexLeanPreservation.Validate -import LexLeanStd.Text -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -set_option linter.unusedVariables false -namespace LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2 - -def __prog : _root_.LexLeanTarget.TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0], types := [.bytes], result := .bytes, - body := (.«let» 1 .nat (.call 1 [(.var 0)]) (.«let» 2 .nat (.call 2 [(.var 0), (.var 1)]) (.call 3 [(.var 0), (.var 2), (.prim .natSub [(.var 1), (.var 2)])]))) }, - { parameters := [0], types := [.bytes], result := .nat, - body := (.first (.call 4 [(.closure 5 [(.var 0)]), (.prim .length [(.var 0)]), (.prim .length [(.var 0)])])) }, - { parameters := [0, 1], types := [.bytes, .nat], result := .nat, - body := (.first (.call 4 [(.closure 6 [(.var 1), (.var 0)]), (.var 1), (.value .nat (.nat 0))])) }, - { parameters := [0, 1, 2], types := [.bytes, .nat, .nat], result := .bytes, - body := (.«match» .bytes (.prim .slice [(.var 0), (.var 1), (.var 2)]) [(.arm .some [3] (.var 3)), (.arm .none [] (.value .bytes (.bytes (ByteArray.mk #[]))))]) }, - { parameters := [0, 1, 2], types := [(.fn [.nat] (.option .nat)), .nat, .nat], result := (.pair .nat .bool), - body := (.«match» (.pair .nat .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair .nat .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair .nat .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair .nat .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 4 [(.var 0), (.var 3), (.var 4)]))]))]) }, - { parameters := [0, 1], types := [.bytes, .nat], result := (.option .nat), - body := (.cond (.prim .natLt [(.value .nat (.nat 0)), (.var 1)]) (.cond (.call 7 [(.var 0), (.prim .natSub [(.var 1), (.value .nat (.nat 1))])]) (.build .some (.option .nat) [(.prim .natSub [(.var 1), (.value .nat (.nat 1))])]) (.build .none (.option .nat) [])) (.build .none (.option .nat) [])) }, - { parameters := [0, 1, 2], types := [.nat, .bytes, .nat], result := (.option .nat), - body := (.cond (.prim .natLt [(.var 2), (.var 0)]) (.cond (.call 7 [(.var 1), (.var 2)]) (.build .some (.option .nat) [(.prim .natAdd [(.var 2), (.value .nat (.nat 1))])]) (.build .none (.option .nat) [])) (.build .none (.option .nat) [])) }, - { parameters := [0, 1], types := [.bytes, .nat], result := .bool, - body := (.«match» .bool (.call 8 [(.var 0), (.var 1)]) [(.arm .some [2] (.call 9 [(.var 2)])), (.arm .none [] (.build .false .bool []))]) }, - { parameters := [0, 1], types := [.bytes, .nat], result := (.option (.fixed .u8)), - body := (.prim .index [(.var 0), (.var 1)]) }, - { parameters := [0], types := [(.fixed .u8)], result := .bool, - body := (.cond (.cond (.cond (.prim .equal [(.var 0), (.value (.fixed .u8) (.u8 32))]) (.build .true .bool []) (.prim .equal [(.var 0), (.value (.fixed .u8) (.u8 9))])) (.build .true .bool []) (.prim .equal [(.var 0), (.value (.fixed .u8) (.u8 10))])) (.build .true .bool []) (.cond (.prim .equal [(.var 0), (.value (.fixed .u8) (.u8 12))]) (.build .true .bool []) (.prim .equal [(.var 0), (.value (.fixed .u8) (.u8 13))]))) }] } - -def __fits_8 (subject : ByteArray) (position : Nat) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_8 (subject : ByteArray) (position : Nat) : _root_.LexLeanPreservation.FunRel __prog 8 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat position)] (_root_.LexLeanPreservation.Rel (__fits_8 subject position) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u8) (LexLeanStd.Text.byteAt subject position))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_index_bytes subject position)) - -def __fits_9 (byte : UInt8) : Bool := - (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal (byte) ((32 : UInt8)) : Bool) then (Bool.true && Bool.true) else ((Bool.true && (Bool.true && Bool.true)) && Bool.true))) && (if ((_root_.LexLeanRuntime.equal (byte) ((32 : UInt8)) : Bool) || (_root_.LexLeanRuntime.equal (byte) ((9 : UInt8)) : Bool)) then (Bool.true && Bool.true) else ((Bool.true && (Bool.true && Bool.true)) && Bool.true))) && (if (((_root_.LexLeanRuntime.equal (byte) ((32 : UInt8)) : Bool) || (_root_.LexLeanRuntime.equal (byte) ((9 : UInt8)) : Bool)) || (_root_.LexLeanRuntime.equal (byte) ((10 : UInt8)) : Bool)) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal (byte) ((12 : UInt8)) : Bool) then (Bool.true && Bool.true) else ((Bool.true && (Bool.true && Bool.true)) && Bool.true))))) - -theorem __rel_9 (byte : UInt8) : _root_.LexLeanPreservation.FunRel __prog 9 [(_root_.LexLeanTarget.TargetSyntax.Value.u8 byte)] (_root_.LexLeanPreservation.Rel (__fits_9 byte) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanStd.Text.isSpace byte))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal (byte) ((12 : UInt8)) : Bool) then (Bool.true && Bool.true) else ((Bool.true && (Bool.true && Bool.true)) && Bool.true)))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b || ((_root_.LexLeanRuntime.equal (byte) ((12 : UInt8)) : Bool) || (_root_.LexLeanRuntime.equal (byte) ((13 : UInt8)) : Bool)))) (((_root_.LexLeanRuntime.equal (byte) ((32 : UInt8)) : Bool) || (_root_.LexLeanRuntime.equal (byte) ((9 : UInt8)) : Bool)) || (_root_.LexLeanRuntime.equal (byte) ((10 : UInt8)) : Bool)) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (Bool.true && Bool.true) else ((Bool.true && (Bool.true && Bool.true)) && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b || (_root_.LexLeanRuntime.equal (byte) ((10 : UInt8)) : Bool))) ((_root_.LexLeanRuntime.equal (byte) ((32 : UInt8)) : Bool) || (_root_.LexLeanRuntime.equal (byte) ((9 : UInt8)) : Bool)) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (Bool.true && Bool.true) else ((Bool.true && (Bool.true && Bool.true)) && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b || (_root_.LexLeanRuntime.equal (byte) ((9 : UInt8)) : Bool))) (_root_.LexLeanRuntime.equal (byte) ((32 : UInt8)) : Bool) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_u8 byte (32 : UInt8))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_u8 byte (9 : UInt8))))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_u8 byte (10 : UInt8))))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (Bool.true && Bool.true) else ((Bool.true && (Bool.true && Bool.true)) && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b || (_root_.LexLeanRuntime.equal (byte) ((13 : UInt8)) : Bool))) (_root_.LexLeanRuntime.equal (byte) ((12 : UInt8)) : Bool) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_u8 byte (12 : UInt8))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_u8 byte (13 : UInt8))))))) - -def __fits_7 (subject : ByteArray) (position : Nat) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && (__fits_8 (subject) (position))) && (match (LexLeanStd.Text.byteAt (subject) (position)) with | Option.some byte => ((Bool.true && Bool.true) && (__fits_9 (byte))) | Option.none => (Bool.true && Bool.true))) - -attribute [local irreducible] LexLeanStd.Text.byteAt LexLeanStd.Text.isSpace in -theorem __rel_7 (subject : ByteArray) (position : Nat) : _root_.LexLeanPreservation.FunRel __prog 7 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat position)] (_root_.LexLeanPreservation.Rel (__fits_7 subject position) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanStd.Text.spaceAt subject position))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u8) (fun (__a : (Option UInt8)) => (match __a with | Option.some byte => ((Bool.true && Bool.true) && (__fits_9 (byte))) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option UInt8)) => _root_.LexLeanTarget.TargetSyntax.Value.bool (match __a with | Option.some byte => (LexLeanStd.Text.isSpace (byte)) | Option.none => Bool.false)) (LexLeanStd.Text.byteAt (subject) (position)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_8 (subject) (position))) (fun (__a : (Option UInt8)) _ => match __a with | Option.some byte => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_9 (byte)))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))))) - -def __fits_5 (subject : ByteArray) («end» : Nat) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.blt (0 : Nat) «end») then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && (__fits_7 (subject) ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat)))) && (if (LexLeanStd.Text.spaceAt (subject) ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat))) then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) - -attribute [local irreducible] LexLeanStd.Text.spaceAt in -theorem __rel_5 (subject : ByteArray) («end» : Nat) : _root_.LexLeanPreservation.FunRel __prog 5 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat «end»)] (_root_.LexLeanPreservation.Rel (__fits_5 subject «end») ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) ((if (Nat.blt (0 : Nat) «end») then (if (LexLeanStd.Text.spaceAt (subject) ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat))) then (Option.some ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat)) : (Option Nat)) else (Option.none : (Option Nat))) else (Option.none : (Option Nat)))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && (__fits_7 (subject) ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat)))) && (if (LexLeanStd.Text.spaceAt (subject) ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat))) then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (if (LexLeanStd.Text.spaceAt (subject) ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat))) then (Option.some ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat)) : (Option Nat)) else (Option.none : (Option Nat))) else (Option.none : (Option Nat)))) (Nat.blt (0 : Nat) «end») (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (0 : Nat) «end»)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Option.some ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat)) : (Option Nat)) else (Option.none : (Option Nat)))) (LexLeanStd.Text.spaceAt (subject) ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub «end» (1 : Nat))) _root_.LexLeanPreservation.convL_nil)) (__rel_7 (subject) ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat)))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub «end» (1 : Nat))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_1 (subject : ByteArray) : Bool := - (((Bool.true && Bool.true) && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (subject) : Nat) 18446744073709551616)) && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (subject) : Nat) 18446744073709551616)) && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : Nat) => __fits_5 (subject) __p0) ((fun («end» : Nat) => (if (Nat.blt (0 : Nat) «end») then (if (LexLeanStd.Text.spaceAt (subject) ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat))) then (Option.some ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat)) : (Option Nat)) else (Option.none : (Option Nat))) else (Option.none : (Option Nat))))) ((_root_.LexLeanRuntime.length (subject) : Nat)) ((_root_.LexLeanRuntime.length (subject) : Nat)))) - -attribute [local irreducible] LexLeanStd.Text.spaceAt in -theorem __rel_1 (subject : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 1 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject)] (_root_.LexLeanPreservation.Rel (__fits_1 subject) (_root_.LexLeanTarget.TargetSyntax.Value.nat (LexLeanStd.Text.trimEnd subject))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes subject)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes subject)) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterateUntil (es := _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.optEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) ((fun («end» : Nat) => (if (Nat.blt (0 : Nat) «end») then (if (LexLeanStd.Text.spaceAt (subject) ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat))) then (Option.some ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat)) : (Option Nat)) else (Option.none : (Option Nat))) else (Option.none : (Option Nat))))) (fun (__p0 : Nat) => __fits_5 (subject) __p0) 5 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject)] (fun (__p0 : Nat) => __rel_5 (subject) __p0) (_root_.LexLeanCollections.iterateUntil ((fun («end» : Nat) => (if (Nat.blt (0 : Nat) «end») then (if (LexLeanStd.Text.spaceAt (subject) ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat))) then (Option.some ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat)) : (Option Nat)) else (Option.none : (Option Nat))) else (Option.none : (Option Nat)))))) (fun _ => rfl) (fun _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (p := __prog) (fi := 4) (ts := .nat) rfl ((_root_.LexLeanRuntime.length (subject) : Nat)) ((_root_.LexLeanRuntime.length (subject) : Nat))))) - -def __fits_6 («end» : Nat) (subject : ByteArray) (start : Nat) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.blt start «end») then (((Bool.true && (Bool.true && Bool.true)) && (__fits_7 (subject) (start))) && (if (LexLeanStd.Text.spaceAt (subject) (start)) then ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (start + (1 : Nat)) 18446744073709551616)) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) - -attribute [local irreducible] LexLeanStd.Text.spaceAt in -theorem __rel_6 («end» : Nat) (subject : ByteArray) (start : Nat) : _root_.LexLeanPreservation.FunRel __prog 6 [(_root_.LexLeanTarget.TargetSyntax.Value.nat «end»), (_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat start)] (_root_.LexLeanPreservation.Rel (__fits_6 «end» subject start) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) ((if (Nat.blt start «end») then (if (LexLeanStd.Text.spaceAt (subject) (start)) then (Option.some ((start + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat))) else (Option.none : (Option Nat)))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (Bool.true && Bool.true)) && (__fits_7 (subject) (start))) && (if (LexLeanStd.Text.spaceAt (subject) (start)) then ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (start + (1 : Nat)) 18446744073709551616)) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (if (LexLeanStd.Text.spaceAt (subject) (start)) then (Option.some ((start + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat))) else (Option.none : (Option Nat)))) (Nat.blt start «end») (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt start «end»)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (start + (1 : Nat)) 18446744073709551616)) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Option.some ((start + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat)))) (LexLeanStd.Text.spaceAt (subject) (start)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_7 (subject) (start))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd start (1 : Nat))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) - -def __fits_2 (subject : ByteArray) («end» : Nat) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && (Bool.true && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : Nat) => __fits_6 («end») (subject) __p0) ((fun (start : Nat) => (if (Nat.blt start «end») then (if (LexLeanStd.Text.spaceAt (subject) (start)) then (Option.some ((start + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat))) else (Option.none : (Option Nat))))) («end») ((0 : Nat)))) - -attribute [local irreducible] LexLeanStd.Text.spaceAt in -theorem __rel_2 (subject : ByteArray) («end» : Nat) : _root_.LexLeanPreservation.FunRel __prog 2 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat «end»)] (_root_.LexLeanPreservation.Rel (__fits_2 subject «end») (_root_.LexLeanTarget.TargetSyntax.Value.nat (LexLeanStd.Text.trimStart subject «end»))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterateUntil (es := _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.optEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) ((fun (start : Nat) => (if (Nat.blt start «end») then (if (LexLeanStd.Text.spaceAt (subject) (start)) then (Option.some ((start + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat))) else (Option.none : (Option Nat))))) (fun (__p0 : Nat) => __fits_6 («end») (subject) __p0) 6 [(_root_.LexLeanTarget.TargetSyntax.Value.nat «end»), (_root_.LexLeanTarget.TargetSyntax.Value.bytes subject)] (fun (__p0 : Nat) => __rel_6 («end») (subject) __p0) (_root_.LexLeanCollections.iterateUntil ((fun (start : Nat) => (if (Nat.blt start «end») then (if (LexLeanStd.Text.spaceAt (subject) (start)) then (Option.some ((start + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat))) else (Option.none : (Option Nat)))))) (fun _ => rfl) (fun _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (p := __prog) (fi := 4) (ts := .nat) rfl («end») ((0 : Nat))))) - -def __fits_3 (subject : ByteArray) (start : Nat) (count : Nat) : Bool := - (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && Bool.true) && (match (_root_.LexLeanRuntime.slice (subject) (start) (count) : (Option ByteArray)) with | Option.some piece => Bool.true | Option.none => Bool.true)) - -theorem __rel_3 (subject : ByteArray) (start : Nat) (count : Nat) : _root_.LexLeanPreservation.FunRel __prog 3 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat start), (_root_.LexLeanTarget.TargetSyntax.Value.nat count)] (_root_.LexLeanPreservation.Rel (__fits_3 subject start count) (_root_.LexLeanTarget.TargetSyntax.Value.bytes (LexLeanStd.Text.sliceOr subject start count))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.some piece => Bool.true | Option.none => Bool.true)) (fun (__a : (Option ByteArray)) => _root_.LexLeanTarget.TargetSyntax.Value.bytes (match __a with | Option.some piece => piece | Option.none => (ByteArray.mk #[]))) (_root_.LexLeanRuntime.slice (subject) (start) (count) : (Option ByteArray)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.prim_slice_bytes subject start count)) (fun (__a : (Option ByteArray)) _ => match __a with | Option.some piece => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value)))) - -def __fits_0 (subject : ByteArray) : Bool := - (((Bool.true && Bool.true) && (__fits_1 (subject))) && (let «end» : Nat := (LexLeanStd.Text.trimEnd (subject)); (((Bool.true && (Bool.true && Bool.true)) && (__fits_2 (subject) («end»))) && (let start : Nat := (LexLeanStd.Text.trimStart (subject) («end»)); ((Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_3 (subject) (start) ((_root_.LexLeanRuntime.subtract («end») (start) : Nat)))))))) - -attribute [local irreducible] LexLeanStd.Text.sliceOr LexLeanStd.Text.trimEnd LexLeanStd.Text.trimStart in -theorem __rel_0 (subject : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject)] (_root_.LexLeanPreservation.Rel (__fits_0 subject) (_root_.LexLeanTarget.TargetSyntax.Value.bytes (LexLeanStd.Text.trim subject))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (let «end» : Nat := (LexLeanStd.Text.trimEnd (subject)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_1 (subject))) (let start : Nat := (LexLeanStd.Text.trimStart (subject) («end»)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_2 (subject) («end»))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub «end» start)) _root_.LexLeanPreservation.convL_nil))) (__rel_3 (subject) (start) ((_root_.LexLeanRuntime.subtract («end») (start) : Nat)))))) - -def denote (subject : ByteArray) : _root_.LexLeanPreservation.Obs := - _root_.cond (__fits_0 subject) (_root_.LexLeanPreservation.Obs.value ((_root_.LexLeanTarget.TargetSyntax.Value.bytes (LexLeanStd.Text.trim subject)))) _root_.LexLeanPreservation.Obs.overflow - -theorem root (subject : ByteArray) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject)] (_root_.LexLeanPreservation.Rel (__fits_0 subject) (_root_.LexLeanTarget.TargetSyntax.Value.bytes (LexLeanStd.Text.trim subject))) := - _root_.LexLeanPreservation.run_of_funRel (__rel_0 subject) - -end LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2 diff --git a/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R2/Compose/RustStd.lex.tex b/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R2/Compose/RustStd.lex.tex deleted file mode 100644 index 293a60c00..000000000 --- a/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R2/Compose/RustStd.lex.tex +++ /dev/null @@ -1,418 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2, - LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.Compose.RustStd.root : @826 := @827 { - all: [LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.RustStd.program -@1 := LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.RustStd.krate -@2 := LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.RustStd.flags -@3 := ByteArray -@4 := #1 -@5 := LexLeanTarget.TargetSyntax.Value.bytes -@6 := @5 @4 -@7 := LexLeanTarget.TargetSyntax.Ty.bytes -@8 := LexLeanTarget.TargetSyntax.Program -@9 := LexLeanPreservation.Rust.RCrate -@10 := LexLeanPreservation.Rust.Flags -@11 := LexLeanPreservation.Rust.WT -@12 := #3 -@13 := @11 @12 -@14 := #2 -@16 := @13 @14 @4 -@17 := #0 -@18 := @5 @17 -@24 := {p : @8} -> {c : @9} -> {A : @10} -> (b : @3) -> @16 @18 @7 -@26 := LexLeanPreservation.Rust.wt_bytes @0 -@27 := @11 @0 -@34 := {c : @9} -> {A : @10} -> (b : @3) -> @27 @14 @4 @18 @7 -@35 := @26 @1 -@36 := @27 @1 -@41 := {A : @10} -> (b : @3) -> @36 @4 @18 @7 -@42 := @35 @2 -@43 := @36 @2 -@46 := (b : @3) -> @43 @18 @7 -@47 := @42 @4 -@49 := @43 @6 @7 -@50 := LexLeanTarget.TargetSyntax.Value -@51 := List.nil.{0} -@52 := List.cons.{0} -@53 := @51 @50 -@54 := @52 @50 -@56 := @54 @6 @53 -@57 := Nat -@60 := Prod.{0, 0} @57 @50 -@61 := 0 -@65 := Prod.mk.{0, 0} @57 @50 @61 -@66 := @65 @6 -@67 := @51 @60 -@68 := @52 @60 -@70 := @68 @66 @67 -@71 := Bool.true -@72 := LexLeanTarget.TargetSyntax.Function -@73 := LexLeanTarget.TargetSyntax.Program.functions -@74 := @73 @0 -@75 := LexLeanTarget.TargetSyntax.Ty -@76 := @51 @57 -@77 := @51 @75 -@78 := LexLeanTarget.TargetSyntax.Ty.unit -@79 := LexLeanTarget.TargetSyntax.Value.unit -@82 := LexLeanTarget.TargetSyntax.Expr.value @78 @79 -@87 := LexLeanTarget.TargetSyntax.Function.mk @76 @77 @78 @82 -@92 := List.getD.{0} @72 @74 @61 @87 -@96 := fun (__e_n : @57) => - LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.RustStd.root @17 @61 -@97 := LexLeanPreservation.Rust.WTL -@105 := {p : @8} -> {c : @9} -> {A : @10} -> @97 @14 @4 @17 @53 @77 -@107 := LexLeanPreservation.Rust.wtl_nil @0 -@108 := @97 @0 -@114 := {c : @9} -> {A : @10} -> @108 @4 @17 @53 @77 -@115 := @107 @1 -@116 := @108 @1 -@120 := {A : @10} -> @116 @17 @53 @77 -@121 := @115 @2 -@122 := @116 @2 -@123 := @122 @53 -@124 := @123 @77 -@125 := List.{0} -@126 := @125 @50 -@127 := @125 @75 -@128 := #6 -@129 := @11 @128 -@130 := #5 -@131 := @129 @130 -@132 := #4 -@135 := @131 @132 @12 @14 -@136 := #7 -@141 := @97 @136 @128 @130 @14 @4 -@142 := #8 -@145 := @97 @142 @136 @128 -@147 := @54 @130 @12 -@148 := @145 @147 -@149 := @52 @75 -@151 := @149 @132 @14 -@161 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {v : @50} -> {t : @75} -> {vs : @126} -> {ts : @127} -> (h : @135) -> (hs : @141) -> @148 @151 -@163 := LexLeanPreservation.Rust.wtl_cons @0 -@183 := {c : @9} -> - {A : @10} -> - {v : @50} -> - {t : @75} -> - {vs : @126} -> - {ts : @127} -> - (h : @27 @130 @132 @12 @14) -> (hs : @108 @128 @130 @14 @4) -> @108 @136 @128 @147 @151 -@184 := @163 @1 -@200 := {A : @10} -> - {v : @50} -> - {t : @75} -> - {vs : @126} -> - {ts : @127} -> (h : @36 @132 @12 @14) -> (hs : @116 @130 @14 @4) -> @116 @128 @147 @151 -@201 := @184 @2 -@203 := @43 @12 @14 -@205 := @122 @14 @4 -@213 := {v : @50} -> - {t : @75} -> {vs : @126} -> {ts : @127} -> (h : @203) -> (hs : @205) -> @122 @147 @151 -@214 := @201 @6 -@215 := @5 @132 -@217 := @43 @215 @14 -@218 := @5 @128 -@219 := @54 @218 -@227 := {t : @75} -> {vs : @126} -> {ts : @127} -> (h : @217) -> (hs : @205) -> @122 (@219 @12) @151 -@228 := @214 @7 -@229 := @5 @12 -@231 := @43 @229 @7 -@232 := @5 @130 -@233 := @54 @232 -@235 := @122 (@233 @12) -@236 := @149 @7 -@237 := @236 @14 -@242 := {vs : @126} -> {ts : @127} -> (h : @231) -> (hs : @205) -> @235 @237 -@243 := @228 @53 -@244 := @5 @14 -@246 := @43 @244 @7 -@247 := @123 @4 -@249 := @54 @215 @53 -@250 := @122 @249 -@254 := {ts : @127} -> (h : @246) -> (hs : @247) -> @250 @237 -@255 := @243 @77 -@257 := @54 @229 @53 -@258 := @122 @257 -@259 := @236 @77 -@262 := (h : @49) -> (hs : @124) -> @258 @259 -@263 := @255 @47 -@265 := @54 @244 @53 -@266 := @122 @265 -@268 := (hs : @124) -> @266 @259 -@269 := @263 @121 -@270 := @122 @56 -@271 := @270 @259 -@272 := LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.denote -@273 := @272 @4 -@274 := LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.__fits_0 -@275 := @274 @4 -@278 := @5 (LexLeanStd.Text.trim @4) -@280 := LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.root @4 -@281 := Bool -@282 := Ne.{1} -@283 := LexLeanPreservation.Obs -@284 := @282 @283 -@285 := LexLeanPreservation.Rel -@288 := @284 (@285 @4 @17) -@289 := LexLeanPreservation.Obs.stuck -@292 := (f : @281) -> (v : @50) -> @288 @289 -@294 := LexLeanPreservation.Rust.rel_ne_stuck @275 -@300 := (v : @50) -> @284 (@285 (@274 @14) @17) @289 -@301 := @294 @278 -@305 := @284 (@285 @275 @278) @289 -@306 := @125 @60 -@307 := LexLeanPreservation.Rust.FunSem -@308 := #9 -@314 := (n : @57) -> @307 @308 @142 @136 @17 @128 -@315 := Eq.{1} -@316 := Option.{0} -@317 := @316 @72 -@318 := @315 @317 -@325 := LexLeanRuntime.index (@125 @72) @72 (LexLeanRuntime.instIndexableList @72) -@329 := @318 (@325 (@73 @308) @128) -@330 := Option.some.{0} -@331 := @330 @72 -@332 := @331 @130 -@333 := @329 @332 -@334 := #10 -@338 := @97 @334 @308 @142 @130 -@339 := LexLeanTarget.TargetSyntax.Function.types -@340 := @339 @128 -@341 := @338 @340 -@342 := @316 @306 -@343 := @315 @342 -@344 := LexLeanTarget.TargetSemantics.bindAll -@345 := LexLeanTarget.TargetSyntax.Function.parameters -@350 := @343 (@344 (@345 @136) @128 @67) -@351 := @330 @306 -@352 := @351 @130 -@353 := @350 @352 -@354 := @316 @281 -@355 := @315 @354 -@356 := LexLeanPreservation.Rust.fnFallible -@357 := #11 -@360 := @355 (@356 @357 @308) -@361 := @330 @281 -@362 := @361 @130 -@363 := @360 @362 -@364 := LexLeanPreservation.RunConv -@365 := #13 -@369 := @364 @365 @334 @142 @130 -@371 := @284 @128 @289 -@372 := Exists.{1} -@373 := LexLeanPreservation.Rust.ROut -@374 := @372 @373 -@375 := And -@376 := LexLeanPreservation.Rust.RealizesFn -@380 := @375 (@376 @308 @142 @17) -@381 := LexLeanPreservation.Rust.RCI -@383 := @381 #15 -@384 := LexLeanPreservation.Rust.fnIdent -@385 := @384 @365 -@392 := (hne : @371) -> @374 (fun (ro : @373) => @380 (@383 @385 @357 @17)) -@407 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {f : @57} -> - {fn : @72} -> - {args : @126} -> - {env : @306} -> - {F : @281} -> - {o : @283} -> - (hB : @314) -> - (hfn : @333) -> (hwt : @341) -> (hbind : @353) -> (hF : @363) -> (hA : @369) -> @392 -@409 := LexLeanPreservation.Rust.compose @0 -@410 := @307 @0 -@415 := (n : @57) -> @410 @142 @136 @17 @128 -@416 := @325 @74 -@419 := @318 (@416 @128) @332 -@423 := @108 @308 @142 @130 @340 -@424 := @364 @0 -@427 := @424 @334 @142 @130 -@441 := {c : @9} -> - {A : @10} -> - {f : @57} -> - {fn : @72} -> - {args : @126} -> - {env : @306} -> - {F : @281} -> - {o : @283} -> - (hB : @415) -> - (hfn : @419) -> (hwt : @423) -> (hbind : @353) -> (hF : @363) -> (hA : @427) -> @392 -@442 := @409 @1 -@443 := @410 @1 -@447 := (n : @57) -> @443 @136 @17 @128 -@450 := @116 @142 @130 @340 -@451 := @356 @1 -@454 := @355 (@451 @308) @362 -@455 := @381 @1 -@465 := (hbind : @353) -> - (hF : @454) -> (hA : @427) -> (hne : @371) -> @374 (fun (ro : @373) => @380 (@455 @385 @357 @17)) -@475 := {A : @10} -> - {f : @57} -> - {fn : @72} -> - {args : @126} -> - {env : @306} -> {F : @281} -> {o : @283} -> (hB : @447) -> (hfn : @419) -> (hwt : @450) -> @465 -@476 := @442 @2 -@478 := @443 @2 @17 -@480 := (n : @57) -> @478 @128 -@481 := @122 @130 -@482 := @481 @340 -@491 := {f : @57} -> - {fn : @72} -> - {args : @126} -> - {env : @306} -> {F : @281} -> {o : @283} -> (hB : @480) -> (hfn : @419) -> (hwt : @482) -> @465 -@492 := @476 @61 -@494 := (n : @57) -> @478 @61 -@495 := @416 @61 -@496 := @318 @495 -@497 := @496 @332 -@498 := @451 @61 -@499 := @355 @498 -@500 := @499 @362 -@501 := @424 @61 -@503 := @501 @142 @130 -@505 := @455 (@384 @61) -@513 := (hF : @500) -> (hA : @503) -> (hne : @371) -> @374 (fun (ro : @373) => @380 (@505 @357 @17)) -@522 := {fn : @72} -> - {args : @126} -> - {env : @306} -> - {F : @281} -> {o : @283} -> (hB : @494) -> (hfn : @497) -> (hwt : @482) -> (hbind : @353) -> @513 -@523 := @492 @92 -@525 := @496 (@331 @92) -@526 := @339 @92 -@527 := @481 @526 -@529 := @344 (@345 @92) -@541 := {args : @126} -> - {env : @306} -> - {F : @281} -> - {o : @283} -> - (hB : @494) -> (hfn : @525) -> (hwt : @527) -> (hbind : @343 (@529 @128 @67) @352) -> @513 -@542 := @523 @56 -@543 := @219 @53 -@545 := @122 @543 @526 -@548 := @54 (@5 @136) @53 -@552 := @343 (@529 @548 @67) @352 -@555 := @54 (@5 @308) @53 -@576 := {env : @306} -> - {F : @281} -> - {o : @283} -> - (hB : @494) -> - (hfn : @525) -> - (hwt : @545) -> - (hbind : @552) -> - (hF : @500) -> - (hA : @501 @555 @130) -> - (hne : @371) -> @374 (fun (ro : @373) => @380 (@505 (@54 (@5 #12) @53) @17)) -@577 := @542 @70 -@578 := @233 @53 -@580 := @122 @578 @526 -@588 := @343 (@529 @543 @67) (@351 (@68 (@65 @218) @67)) -@591 := @54 (@5 @142) @53 -@610 := {F : @281} -> - {o : @283} -> - (hB : @494) -> - (hfn : @525) -> - (hwt : @580) -> - (hbind : @588) -> - (hF : @500) -> - (hA : @501 @591 @130) -> - (hne : @371) -> @374 (fun (ro : @373) => @380 (@505 (@54 (@5 @357) @53) @17)) -@611 := @577 @71 -@612 := @250 @526 -@620 := @343 (@529 @578 @67) (@351 (@68 (@65 @232) @67)) -@622 := @499 (@361 @71) -@624 := @501 @548 @130 -@625 := @376 @71 -@644 := {o : @283} -> - (hB : @494) -> - (hfn : @525) -> - (hwt : @612) -> - (hbind : @620) -> - (hF : @622) -> - (hA : @624) -> - (hne : @371) -> @374 (fun (ro : @373) => @375 (@625 @142 @17) (@505 (@54 (@5 @334) @53) @17)) -@645 := @611 @273 -@646 := @258 @526 -@654 := @343 (@529 @249 @67) (@351 (@68 (@65 @215) @67)) -@655 := @501 @543 -@656 := @272 @128 -@657 := @655 @656 -@658 := @272 @136 -@676 := (hB : @494) -> - (hfn : @525) -> - (hwt : @646) -> - (hbind : @654) -> - (hF : @622) -> - (hA : @657) -> - (hne : @284 @658 @289) -> @374 (fun (ro : @373) => @375 (@625 (@272 @308) @17) (@505 @555 @17)) -@677 := @645 @96 -@678 := @266 @526 -@686 := @343 (@529 @257 @67) (@351 (@68 (@65 @229) @67)) -@687 := @501 @578 -@688 := @272 @130 -@706 := (hfn : @525) -> - (hwt : @678) -> - (hbind : @686) -> - (hF : @622) -> - (hA : @687 @688) -> - (hne : @284 @656 @289) -> @374 (fun (ro : @373) => @375 (@625 (@272 @142) @17) (@505 @591 @17)) -@707 := Eq.refl.{1} -@710 := @677 (@707 @317 @495) -@711 := @270 @526 -@719 := @343 (@529 @265 @67) (@351 (@68 (@65 @244) @67)) -@720 := @501 @249 -@721 := @272 @132 -@737 := (hwt : @711) -> - (hbind : @719) -> - (hF : @622) -> - (hA : @720 @721) -> - (hne : @284 @688 @289) -> @374 (fun (ro : @373) => @375 (@625 @658 @17) (@505 @548 @17)) -@738 := @710 @269 -@740 := @529 @56 @67 -@743 := @343 @740 (@351 @70) -@744 := @501 @257 -@745 := @272 @12 -@760 := (hbind : @743) -> - (hF : @622) -> - (hA : @744 @745) -> - (hne : @284 @721 @289) -> @374 (fun (ro : @373) => @375 (@625 @656 @17) (@505 @543 @17)) -@763 := @738 (@707 @342 @740) -@764 := @501 @265 -@765 := @272 @14 -@779 := (hF : @622) -> - (hA : @764 @765) -> - (hne : @284 @745 @289) -> @374 (fun (ro : @373) => @375 (@625 @688 @17) (@505 @578 @17)) -@782 := @763 (@707 @354 @498) -@796 := (hA : @501 @56 @273) -> - (hne : @284 @765 @289) -> @374 (fun (ro : @373) => @375 (@625 @721 @17) (@505 @249 @17)) -@797 := @782 @280 -@808 := (hne : @284 @273 @289) -> @374 (fun (ro : @373) => @375 (@625 @745 @17) (@505 @257 @17)) -@809 := @797 @301 -@815 := @375 (@625 @765 @17) (@505 @265 @17) -@817 := @374 (fun (ro : @373) => @815) -@819 := @374 (fun (__e_ro : @373) => @815) -@823 := LexLeanPreservation.Rust.RepresentableL (@54 @18 @53) -@824 := (__e_hrep : @823) -> @819 -@825 := fun (__e_hrep : @823) => @809 -@826 := (subject : @3) -> @824 -@827 := fun (subject : @3) => @825 -\end{coremodule} -\end{lexlean} diff --git a/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R2/RustStd.lean b/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R2/RustStd.lean deleted file mode 100644 index 553fabe02..000000000 --- a/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R2/RustStd.lean +++ /dev/null @@ -1,107 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0], types := [.bytes], result := .bytes, - body := (.«let» 1 .nat (.call 1 [(.var 0)]) (.«let» 2 .nat (.call 2 [(.var 0), (.var 1)]) (.call 3 [(.var 0), (.var 2), (.prim .natSub [(.var 1), (.var 2)])]))) }, - { parameters := [0], types := [.bytes], result := .nat, - body := (.first (.call 4 [(.closure 5 [(.var 0)]), (.prim .length [(.var 0)]), (.prim .length [(.var 0)])])) }, - { parameters := [0, 1], types := [.bytes, .nat], result := .nat, - body := (.first (.call 4 [(.closure 6 [(.var 1), (.var 0)]), (.var 1), (.value .nat (.nat 0))])) }, - { parameters := [0, 1, 2], types := [.bytes, .nat, .nat], result := .bytes, - body := (.«match» .bytes (.prim .slice [(.var 0), (.var 1), (.var 2)]) [(.arm .some [3] (.var 3)), (.arm .none [] (.value .bytes (.bytes (ByteArray.mk #[]))))]) }, - { parameters := [0, 1, 2], types := [(.fn [.nat] (.option .nat)), .nat, .nat], result := (.pair .nat .bool), - body := (.«match» (.pair .nat .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair .nat .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair .nat .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair .nat .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 4 [(.var 0), (.var 3), (.var 4)]))]))]) }, - { parameters := [0, 1], types := [.bytes, .nat], result := (.option .nat), - body := (.cond (.prim .natLt [(.value .nat (.nat 0)), (.var 1)]) (.cond (.call 7 [(.var 0), (.prim .natSub [(.var 1), (.value .nat (.nat 1))])]) (.build .some (.option .nat) [(.prim .natSub [(.var 1), (.value .nat (.nat 1))])]) (.build .none (.option .nat) [])) (.build .none (.option .nat) [])) }, - { parameters := [0, 1, 2], types := [.nat, .bytes, .nat], result := (.option .nat), - body := (.cond (.prim .natLt [(.var 2), (.var 0)]) (.cond (.call 7 [(.var 1), (.var 2)]) (.build .some (.option .nat) [(.prim .natAdd [(.var 2), (.value .nat (.nat 1))])]) (.build .none (.option .nat) [])) (.build .none (.option .nat) [])) }, - { parameters := [0, 1], types := [.bytes, .nat], result := .bool, - body := (.«match» .bool (.call 8 [(.var 0), (.var 1)]) [(.arm .some [2] (.call 9 [(.var 2)])), (.arm .none [] (.build .false .bool []))]) }, - { parameters := [0, 1], types := [.bytes, .nat], result := (.option (.fixed .u8)), - body := (.prim .index [(.var 0), (.var 1)]) }, - { parameters := [0], types := [(.fixed .u8)], result := .bool, - body := (.cond (.cond (.cond (.prim .equal [(.var 0), (.value (.fixed .u8) (.u8 32))]) (.build .true .bool []) (.prim .equal [(.var 0), (.value (.fixed .u8) (.u8 9))])) (.build .true .bool []) (.prim .equal [(.var 0), (.value (.fixed .u8) (.u8 10))])) (.build .true .bool []) (.cond (.prim .equal [(.var 0), (.value (.fixed .u8) (.u8 12))]) (.build .true .bool []) (.prim .equal [(.var 0), (.value (.fixed .u8) (.u8 13))]))) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.enum (.fn 0) [{ number := 5, fields := [.bytes] }, { number := 6, fields := [.nat, .bytes] }]), - (.apply 0 [.nat] (.option .nat) true [{ function := 5, captures := [.clone], functionFallible := false }, { function := 6, captures := [.copy, .clone], functionFallible := true }]), - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] (.fallible .bytes) (.mk [(.mk (.bind (.generated .binding 1)) (some .nat) (.call (.function 1) [(.clone (.generated .binding 0))] true)), (.mk (.bind (.generated .binding 2)) (some .nat) (.call (.function 2) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1))] true))] (.succeed (.call (.function 3) [(.move (.generated .binding 0)), (.copy (.generated .binding 2)), (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 2)))] (.call (.runtime .natSub) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false)))] false)))), - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] (.fallible .nat) (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.call (.function 4) [(.construct (.closure 0 5) [(.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 4)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 4))] false))), (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 5))] false)))] true))] (.succeed (.move (.generated .part 3))))), - (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .nat) (.mk [(.mk (.tuple [(.bind (.generated .part 6)), .wild]) none (.call (.function 4) [(.construct (.closure 0 6) [(.copy (.generated .binding 1)), (.move (.generated .binding 0))]), (.copy (.generated .binding 1)), (.lit (.nat 0))] true))] (.succeed (.move (.generated .part 6))))), - (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := .nat }] .bytes (.mk [(.mk (.bind (.generated .holder 10)) none (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 2)))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 7)), (.move (.generated .operand 8)), (.move (.generated .operand 9))] false))))] (.matchOn (.move (.generated .holder 10)) [(.mk .none (.mk [] (.lit (.bytes (ByteArray.mk #[]))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.move (.generated .binding 3))))]))), - (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.fallible (.pair .nat .bool)) (.mk [(.mk (.bind (.generated .holder 11)) none (.copy (.generated .binding 1)))] (.cond (.isZero (.generated .holder 11)) (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 11))), (.mk (.bind (.generated .holder 13)) none (.block (.mk [(.mk (.bind (.generated .callee 12)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 12) [(.copy (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)))]))))), - (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.option .nat) (.mk [(.mk (.bind (.generated .operand 14)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false) (.mk [] (.cond (.call (.function 7) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 17)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false)))] false) (.mk [] (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 18)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 19)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false)))])) (.mk [] (.construct (.none .nat) [])))) (.mk [] (.construct (.none .nat) []))))), - (.function (.generated .function 6) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .bytes }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.fallible (.option .nat)) (.mk [(.mk (.bind (.generated .operand 20)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 21)) none (.copy (.generated .binding 0)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 20)), (.move (.generated .operand 21))] false) (.mk [] (.cond (.call (.function 7) [(.move (.generated .binding 1)), (.copy (.generated .binding 2))] false) (.mk [] (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 22)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 23)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 22)), (.move (.generated .operand 23))] true)))]))) (.mk [] (.succeed (.construct (.none .nat) []))))) (.mk [] (.succeed (.construct (.none .nat) [])))))), - (.function (.generated .function 7) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .holder 24)) none (.call (.function 8) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 24)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.call (.function 9) [(.copy (.generated .binding 2))] false)))]))), - (.function (.generated .function 8) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.option (.fixed .u8)) (.mk [(.mk (.bind (.generated .operand 25)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 1)))] (.call (.runtime .indexBytes) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))), - (.function (.generated .function 9) [{ pattern := (.bind (.generated .binding 0)), type := (.fixed .u8) }] .bool (.mk [(.mk (.bind (.generated .operand 27)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 28)) none (.lit (.fixed .u8 32)))] (.cond (.cond (.cond (.call (.runtime .equal) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 29)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 30)) none (.lit (.fixed .u8 9)))] (.call (.runtime .equal) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 31)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 32)) none (.lit (.fixed .u8 10)))] (.call (.runtime .equal) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 33)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 34)) none (.lit (.fixed .u8 12)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 35)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 36)) none (.lit (.fixed .u8 13)))] (.call (.runtime .equal) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false)))))))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [(([.nat], (.option .nat)), true)] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some .nat) (.call (.function 1) [(.clone (.generated .binding 0))] true)), (.mk (.bind (.generated .binding 2)) (some .nat) (.call (.function 2) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1))] true))], (.succeed (.call (.function 3) [(.move (.generated .binding 0)), (.copy (.generated .binding 2)), (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 2)))] (.call (.runtime .natSub) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false)))] false)), [(0, .bytes, (some 0))], rfl, rfl, - (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl (Corr.fOfB (Corr.callOps (ts := [.bytes, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl))))⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.call (.function 4) [(.construct (.closure 0 5) [(.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 4)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 4))] false))), (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 5))] false)))] true))], (.succeed (.move (.generated .part 3))), [(0, .bytes, (some 0))], rfl, rfl, - (Corr.fOfB (Corr.first (ta := .nat) (tb := .bool) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [.nat] (.option .nat)), .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [.bytes]) (mask := [false]) (af := true) (ff := false) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 4)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 4))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 5)) none (.move (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 5))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl))⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.tuple [(.bind (.generated .part 6)), .wild]) none (.call (.function 4) [(.construct (.closure 0 6) [(.copy (.generated .binding 1)), (.move (.generated .binding 0))]), (.copy (.generated .binding 1)), (.lit (.nat 0))] true))], (.succeed (.move (.generated .part 6))), [(1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.fOfB (Corr.first (ta := .nat) (tb := .bool) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [.nat] (.option .nat)), .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [.nat, .bytes]) (mask := [false, false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl))⟩⟩ - -theorem fun3 : FunOK program krate flags 3 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 10)) none (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 2)))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 7)), (.move (.generated .operand 8)), (.move (.generated .operand 9))] false))))], (.matchOn (.move (.generated .holder 10)) [(.mk .none (.mk [] (.lit (.bytes (ByteArray.mk #[]))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.move (.generated .binding 3))))]), [(2, .nat, (some 2)), (1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 7)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .sliceBytes) [(.move (.generated .operand 7)), (.move (.generated .operand 8)), (.move (.generated .operand 9))] false)) (Corr.prim (ts := [.bytes, .nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, .nat, (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bytes (ByteArray.mk #[])))) (Corr.mCons (Γ' := [(3, .bytes, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 3))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.bOfE (Corr.value rfl rfl))) rfl rfl rfl)⟩⟩ - -theorem fun4 : FunOK program krate flags 4 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 11)) none (.copy (.generated .binding 1)))], (.cond (.isZero (.generated .holder 11)) (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 11))), (.mk (.bind (.generated .holder 13)) none (.block (.mk [(.mk (.bind (.generated .callee 12)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 12) [(.copy (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)))]))), [(2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat] (.option .nat)), (some 0))], rfl, rfl, - (Corr.matchNat (sl := (some 3)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool false))))) (lb := [(.mk (.bind (.generated .holder 13)) none (.block (.mk [(.mk (.bind (.generated .callee 12)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 12) [(.copy (.generated .binding 2))] true))))]) (tb := (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)))])) (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))))) (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 12)) (some (.fn 0)) (.clone (.generated .binding 0)))]) (tail := (.apply (.generated .callee 12) [(.copy (.generated .binding 2))] true)) (Corr.apply (ps := [.nat]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat] (.option .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true))))) (Corr.mCons (Γ' := [(4, .nat, (some 4)), (3, .nat, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat] (.option .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [.nat] (.option .nat)), .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))))))) rfl rfl rfl)))⟩⟩ - -theorem fun5 : FunOK program krate flags 5 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 14)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1)))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false) (.mk [] (.cond (.call (.function 7) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 17)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false)))] false) (.mk [] (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 18)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 19)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false)))])) (.mk [] (.construct (.none .nat) [])))) (.mk [] (.construct (.none .nat) []))), [(1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 14)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 7) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 17)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false)))] false) (.mk [] (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 18)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 19)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false)))])) (.mk [] (.construct (.none .nat) [])))) (lb := []) (tb := (.construct (.none .nat) [])) (Corr.cond (lc := []) (ce := (.call (.function 7) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 17)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false)))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 17)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 18)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 19)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false)))])) (lb := []) (tb := (.construct (.none .nat) [])) (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 18)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 19)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ - -theorem fun6 : FunOK program krate flags 6 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 20)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 21)) none (.copy (.generated .binding 0)))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 20)), (.move (.generated .operand 21))] false) (.mk [] (.cond (.call (.function 7) [(.move (.generated .binding 1)), (.copy (.generated .binding 2))] false) (.mk [] (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 22)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 23)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 22)), (.move (.generated .operand 23))] true)))]))) (.mk [] (.succeed (.construct (.none .nat) []))))) (.mk [] (.succeed (.construct (.none .nat) [])))), [(2, .nat, (some 2)), (1, .bytes, (some 1)), (0, .nat, (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 20)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 21)) none (.copy (.generated .binding 0)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 20)), (.move (.generated .operand 21))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 7) [(.move (.generated .binding 1)), (.copy (.generated .binding 2))] false) (.mk [] (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 22)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 23)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 22)), (.move (.generated .operand 23))] true)))]))) (.mk [] (.succeed (.construct (.none .nat) []))))) (lb := []) (tb := (.succeed (.construct (.none .nat) []))) (Corr.cond (lc := []) (ce := (.call (.function 7) [(.move (.generated .binding 1)), (.copy (.generated .binding 2))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 22)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 23)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 22)), (.move (.generated .operand 23))] true)))]))) (lb := []) (tb := (.succeed (.construct (.none .nat) []))) (Corr.fOfB (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 22)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 23)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 22)), (.move (.generated .operand 23))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))⟩⟩ - -theorem fun7 : FunOK program krate flags 7 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 24)) none (.call (.function 8) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false))], (.matchOn (.move (.generated .holder 24)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.call (.function 9) [(.copy (.generated .binding 2))] false)))]), [(1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option (.fixed .u8))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(2, (.fixed .u8), (some 2)), (1, .nat, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.call (.function 9) [(.copy (.generated .binding 2))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ - -theorem fun8 : FunOK program krate flags 8 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 25)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 1)))], (.call (.runtime .indexBytes) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false), [(1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.prim (ts := [.bytes, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun9 : FunOK program krate flags 9 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 27)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 28)) none (.lit (.fixed .u8 32)))], (.cond (.cond (.cond (.call (.runtime .equal) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 29)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 30)) none (.lit (.fixed .u8 9)))] (.call (.runtime .equal) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 31)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 32)) none (.lit (.fixed .u8 10)))] (.call (.runtime .equal) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 33)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 34)) none (.lit (.fixed .u8 12)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 35)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 36)) none (.lit (.fixed .u8 13)))] (.call (.runtime .equal) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false))))), [(0, (.fixed .u8), (some 0))], rfl, rfl, - (Corr.cond (lc := [(.mk (.bind (.generated .operand 27)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 28)) none (.lit (.fixed .u8 32)))]) (ce := (.cond (.cond (.call (.runtime .equal) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 29)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 30)) none (.lit (.fixed .u8 9)))] (.call (.runtime .equal) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 31)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 32)) none (.lit (.fixed .u8 10)))] (.call (.runtime .equal) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false)))) (lk := []) (Corr.cond (lc := [(.mk (.bind (.generated .operand 27)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 28)) none (.lit (.fixed .u8 32)))]) (ce := (.cond (.call (.runtime .equal) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 29)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 30)) none (.lit (.fixed .u8 9)))] (.call (.runtime .equal) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false)))) (lk := []) (Corr.cond (lc := [(.mk (.bind (.generated .operand 27)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 28)) none (.lit (.fixed .u8 32)))]) (ce := (.call (.runtime .equal) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false)) (lk := []) (Corr.prim (ts := [(.fixed .u8), (.fixed .u8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 29)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 30)) none (.lit (.fixed .u8 9)))]) (tb := (.call (.runtime .equal) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.prim (ts := [(.fixed .u8), (.fixed .u8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl))) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 31)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 32)) none (.lit (.fixed .u8 10)))]) (tb := (.call (.runtime .equal) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.prim (ts := [(.fixed .u8), (.fixed .u8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl))) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 33)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 34)) none (.lit (.fixed .u8 12)))]) (tb := (.cond (.call (.runtime .equal) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 35)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 36)) none (.lit (.fixed .u8 13)))] (.call (.runtime .equal) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false)))) (Corr.bOfE (Corr.buildConst rfl)) (Corr.cond (lc := [(.mk (.bind (.generated .operand 33)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 34)) none (.lit (.fixed .u8 12)))]) (ce := (.call (.runtime .equal) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false)) (lk := []) (Corr.prim (ts := [(.fixed .u8), (.fixed .u8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 35)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 36)) none (.lit (.fixed .u8 13)))]) (tb := (.call (.runtime .equal) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.prim (ts := [(.fixed .u8), (.fixed .u8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)))))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | 3 => exact fun3 - | 4 => exact fun4 - | 5 => exact fun5 - | 6 => exact fun6 - | 7 => exact fun7 - | 8 => exact fun8 - | 9 => exact fun9 - | _ + 10 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.RustStd diff --git a/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R3.lean b/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R3.lean deleted file mode 100644 index 032270123..000000000 --- a/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R3.lean +++ /dev/null @@ -1,88 +0,0 @@ -import LexLeanPreservation.Core -import LexLeanPreservation.Values -import LexLeanPreservation.Primitives -import LexLeanPreservation.Fixed -import LexLeanPreservation.Keys -import LexLeanPreservation.Templates -import LexLeanPreservation.Validate -import LexLeanStd.Text -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -set_option linter.unusedVariables false -namespace LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3 - -def __prog : _root_.LexLeanTarget.TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1], types := [.bytes, (.fixed .u8)], result := (.list .bytes), - body := (.«let» 2 .nat (.prim .length [(.var 0)]) (.«let» 3 (.pair .nat (.pair .nat (.list .bytes))) (.first (.call 1 [(.closure 2 [(.var 1), (.var 0)]), (.var 2), (.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.value .nat (.nat 0)), (.build .pair (.pair .nat (.list .bytes)) [(.value .nat (.nat 0)), (.build .nil (.list .bytes) [])])])])) (.«let» 4 .nat (.first (.second (.var 3))) (.call 3 [(.build .cons (.list .bytes) [(.call 4 [(.var 0), (.var 4), (.prim .natSub [(.var 2), (.var 4)])]), (.second (.second (.var 3)))])])))) }, - { parameters := [0, 1, 2], types := [(.fn [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes))))), .nat, (.pair .nat (.pair .nat (.list .bytes)))], result := (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool), - body := (.«match» (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 1 [(.var 0), (.var 3), (.var 4)]))]))]) }, - { parameters := [0, 1, 2], types := [(.fixed .u8), .bytes, (.pair .nat (.pair .nat (.list .bytes)))], result := (.option (.pair .nat (.pair .nat (.list .bytes)))), - body := (.call 5 [(.var 1), (.var 0), (.var 2)]) }, - { parameters := [0], types := [(.list .bytes)], result := (.list .bytes), - body := (.call 6 [(.closure 7 []), (.build .nil (.list .bytes) []), (.var 0)]) }, - { parameters := [0, 1, 2], types := [.bytes, .nat, .nat], result := .bytes, - body := (.«match» .bytes (.prim .slice [(.var 0), (.var 1), (.var 2)]) [(.arm .some [3] (.var 3)), (.arm .none [] (.value .bytes (.bytes (ByteArray.mk #[]))))]) }, - { parameters := [0, 1, 2], types := [.bytes, (.fixed .u8), (.pair .nat (.pair .nat (.list .bytes)))], result := (.option (.pair .nat (.pair .nat (.list .bytes)))), - body := (.«let» 3 .nat (.first (.var 2)) (.«let» 4 .nat (.first (.second (.var 2))) (.«let» 5 (.list .bytes) (.second (.second (.var 2))) (.«match» (.option (.pair .nat (.pair .nat (.list .bytes)))) (.call 8 [(.var 0), (.var 3)]) [(.arm .some [6] (.cond (.prim .equal [(.var 6), (.var 1)]) (.build .some (.option (.pair .nat (.pair .nat (.list .bytes)))) [(.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.prim .natAdd [(.var 3), (.value .nat (.nat 1))]), (.build .pair (.pair .nat (.list .bytes)) [(.prim .natAdd [(.var 3), (.value .nat (.nat 1))]), (.build .cons (.list .bytes) [(.call 4 [(.var 0), (.var 4), (.prim .natSub [(.var 3), (.var 4)])]), (.var 5)])])])]) (.build .some (.option (.pair .nat (.pair .nat (.list .bytes)))) [(.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.prim .natAdd [(.var 3), (.value .nat (.nat 1))]), (.build .pair (.pair .nat (.list .bytes)) [(.var 4), (.var 5)])])]))), (.arm .none [] (.build .none (.option (.pair .nat (.pair .nat (.list .bytes)))) []))])))) }, - { parameters := [0, 1, 2], types := [(.fn [(.list .bytes), .bytes] (.list .bytes)), (.list .bytes), (.list .bytes)], result := (.list .bytes), - body := (.«match» (.list .bytes) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 6 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, - { parameters := [0, 1], types := [(.list .bytes), .bytes], result := (.list .bytes), - body := (.build .cons (.list .bytes) [(.var 1), (.var 0)]) }, - { parameters := [0, 1], types := [.bytes, .nat], result := (.option (.fixed .u8)), - body := (.prim .index [(.var 0), (.var 1)]) }] } - -def __fits_4 (subject : ByteArray) (start : Nat) (count : Nat) : Bool := - (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && Bool.true) && (match (_root_.LexLeanRuntime.slice (subject) (start) (count) : (Option ByteArray)) with | Option.some piece => Bool.true | Option.none => Bool.true)) - -theorem __rel_4 (subject : ByteArray) (start : Nat) (count : Nat) : _root_.LexLeanPreservation.FunRel __prog 4 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat start), (_root_.LexLeanTarget.TargetSyntax.Value.nat count)] (_root_.LexLeanPreservation.Rel (__fits_4 subject start count) (_root_.LexLeanTarget.TargetSyntax.Value.bytes (LexLeanStd.Text.sliceOr subject start count))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.some piece => Bool.true | Option.none => Bool.true)) (fun (__a : (Option ByteArray)) => _root_.LexLeanTarget.TargetSyntax.Value.bytes (match __a with | Option.some piece => piece | Option.none => (ByteArray.mk #[]))) (_root_.LexLeanRuntime.slice (subject) (start) (count) : (Option ByteArray)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.prim_slice_bytes subject start count)) (fun (__a : (Option ByteArray)) _ => match __a with | Option.some piece => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value)))) - -def __fits_8 (subject : ByteArray) (position : Nat) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_8 (subject : ByteArray) (position : Nat) : _root_.LexLeanPreservation.FunRel __prog 8 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat position)] (_root_.LexLeanPreservation.Rel (__fits_8 subject position) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u8) (LexLeanStd.Text.byteAt subject position))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_index_bytes subject position)) - -def __fits_5 (subject : ByteArray) (delimiter : UInt8) (state : (Prod Nat (Prod Nat (List ByteArray)))) : Bool := - (Bool.true && (let position : Nat := (state).1; (Bool.true && (let start : Nat := ((state).2).1; (Bool.true && (let pieces : (List ByteArray) := ((state).2).2; (((Bool.true && (Bool.true && Bool.true)) && (__fits_8 (subject) (position))) && (match (LexLeanStd.Text.byteAt (subject) (position)) with | Option.some byte => (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal (byte) (delimiter) : Bool) then ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_4 (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))) && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) | Option.none => (Bool.true && Bool.true))))))))) - -attribute [local irreducible] LexLeanStd.Text.byteAt LexLeanStd.Text.sliceOr in -theorem __rel_5 (subject : ByteArray) (delimiter : UInt8) (state : (Prod Nat (Prod Nat (List ByteArray)))) : _root_.LexLeanPreservation.FunRel __prog 5 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.u8 delimiter), ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) state)] (_root_.LexLeanPreservation.Rel (__fits_5 subject delimiter state) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (LexLeanStd.Text.splitStep subject delimiter state))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (let position : Nat := (state).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (let start : Nat := ((state).2).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl))) (let pieces : (List ByteArray) := ((state).2).2; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl))) (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u8) (fun (__a : (Option UInt8)) => (match __a with | Option.some byte => (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal (byte) (delimiter) : Bool) then ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_4 (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))) && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option UInt8)) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (match __a with | Option.some byte => (if (_root_.LexLeanRuntime.equal (byte) (delimiter) : Bool) then (Option.some (((position + (1 : Nat)), ((position + (1 : Nat)), ((LexLeanStd.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat))) :: pieces)))) : (Option (Prod Nat (Prod Nat (List ByteArray))))) else (Option.some (((position + (1 : Nat)), (start, pieces))) : (Option (Prod Nat (Prod Nat (List ByteArray)))))) | Option.none => (Option.none : (Option (Prod Nat (Prod Nat (List ByteArray))))))) (LexLeanStd.Text.byteAt (subject) (position)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_8 (subject) (position))) (fun (__a : (Option UInt8)) _ => match __a with | Option.some byte => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_4 (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))) && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (if __b then (Option.some (((position + (1 : Nat)), ((position + (1 : Nat)), ((LexLeanStd.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat))) :: pieces)))) : (Option (Prod Nat (Prod Nat (List ByteArray))))) else (Option.some (((position + (1 : Nat)), (start, pieces))) : (Option (Prod Nat (Prod Nat (List ByteArray))))))) (_root_.LexLeanRuntime.equal (byte) (delimiter) : Bool) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_u8 byte delimiter)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub position start)) _root_.LexLeanPreservation.convL_nil))) (__rel_4 (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)))))))) - -def __fits_2 (delimiter : UInt8) (subject : ByteArray) (state : (Prod Nat (Prod Nat (List ByteArray)))) : Bool := - ((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_5 (subject) (delimiter) (state))) - -attribute [local irreducible] LexLeanStd.Text.splitStep in -theorem __rel_2 (delimiter : UInt8) (subject : ByteArray) (state : (Prod Nat (Prod Nat (List ByteArray)))) : _root_.LexLeanPreservation.FunRel __prog 2 [(_root_.LexLeanTarget.TargetSyntax.Value.u8 delimiter), (_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) state)] (_root_.LexLeanPreservation.Rel (__fits_2 delimiter subject state) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) ((LexLeanStd.Text.splitStep (subject) (delimiter) (state))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (__rel_5 (subject) (delimiter) (state))) - -def __fits_7 (reversed : (List ByteArray)) (piece : ByteArray) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_7 (reversed : (List ByteArray)) (piece : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 7 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) reversed), (_root_.LexLeanTarget.TargetSyntax.Value.bytes piece)] (_root_.LexLeanPreservation.Rel (__fits_7 reversed piece) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) ((piece :: reversed)))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) - -def __fits_3 (pieces : (List ByteArray)) : Bool := - ((Bool.true && ((Bool.true && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (List ByteArray)) (__p1 : ByteArray) => __fits_7 __p0 __p1) ((fun (reversed : (List ByteArray)) (piece : ByteArray) => (piece :: reversed))) (([] : List ByteArray)) (pieces))) - -theorem __rel_3 (pieces : (List ByteArray)) : _root_.LexLeanPreservation.FunRel __prog 3 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) pieces)] (_root_.LexLeanPreservation.Rel (__fits_3 pieces) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) (LexLeanStd.Text.reverse pieces))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.bytes) (es := (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun _ => rfl) ((fun (reversed : (List ByteArray)) (piece : ByteArray) => (piece :: reversed))) (fun (__p0 : (List ByteArray)) (__p1 : ByteArray) => __fits_7 __p0 __p1) 7 [] (fun (__p0 : (List ByteArray)) (__p1 : ByteArray) => __rel_7 __p0 __p1) (p := __prog) (fi := 6) (ta := .bytes) (ts := (.list .bytes)) rfl (([] : List ByteArray)) (pieces))) - -def __fits_0 (subject : ByteArray) (delimiter : UInt8) : Bool := - (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (subject) : Nat) 18446744073709551616)) && (let total : Nat := (_root_.LexLeanRuntime.length (subject) : Nat); ((((Bool.true && (Bool.true && Bool.true)) && (Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : (Prod Nat (Prod Nat (List ByteArray)))) => __fits_2 (delimiter) (subject) __p0) ((fun (state : (Prod Nat (Prod Nat (List ByteArray)))) => (LexLeanStd.Text.splitStep (subject) (delimiter) (state)))) (total) (((0 : Nat), ((0 : Nat), ([] : List ByteArray)))))) && (let final : (Prod Nat (Prod Nat (List ByteArray))) := ((_root_.LexLeanCollections.iterateUntil ((fun (state : (Prod Nat (Prod Nat (List ByteArray)))) => (LexLeanStd.Text.splitStep (subject) (delimiter) (state)))) (total) (((0 : Nat), ((0 : Nat), ([] : List ByteArray)))) : (Prod (Prod Nat (Prod Nat (List ByteArray))) Bool))).1; (Bool.true && (let start : Nat := ((final).2).1; ((((((Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_4 (subject) (start) ((_root_.LexLeanRuntime.subtract (total) (start) : Nat)))) && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && (__fits_3 (((LexLeanStd.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (total) (start) : Nat))) :: ((final).2).2)))))))))) - -attribute [local irreducible] LexLeanStd.Text.reverse LexLeanStd.Text.sliceOr LexLeanStd.Text.splitStep in -theorem __rel_0 (subject : ByteArray) (delimiter : UInt8) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.u8 delimiter)] (_root_.LexLeanPreservation.Rel (__fits_0 subject delimiter) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) (LexLeanStd.Text.splitOn subject delimiter))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (let total : Nat := (_root_.LexLeanRuntime.length (subject) : Nat); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes subject)) (let final : (Prod Nat (Prod Nat (List ByteArray))) := ((_root_.LexLeanCollections.iterateUntil ((fun (state : (Prod Nat (Prod Nat (List ByteArray)))) => (LexLeanStd.Text.splitStep (subject) (delimiter) (state)))) (total) (((0 : Nat), ((0 : Nat), ([] : List ByteArray)))) : (Prod (Prod Nat (Prod Nat (List ByteArray))) Bool))).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterateUntil (es := (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (_root_.LexLeanPreservation.optEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (fun _ => rfl) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) ((fun (state : (Prod Nat (Prod Nat (List ByteArray)))) => (LexLeanStd.Text.splitStep (subject) (delimiter) (state)))) (fun (__p0 : (Prod Nat (Prod Nat (List ByteArray)))) => __fits_2 (delimiter) (subject) __p0) 2 [(_root_.LexLeanTarget.TargetSyntax.Value.u8 delimiter), (_root_.LexLeanTarget.TargetSyntax.Value.bytes subject)] (fun (__p0 : (Prod Nat (Prod Nat (List ByteArray)))) => __rel_2 (delimiter) (subject) __p0) (_root_.LexLeanCollections.iterateUntil ((fun (state : (Prod Nat (Prod Nat (List ByteArray)))) => (LexLeanStd.Text.splitStep (subject) (delimiter) (state))))) (fun _ => rfl) (fun _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (p := __prog) (fi := 1) (ts := (.pair .nat (.pair .nat (.list .bytes)))) rfl (total) (((0 : Nat), ((0 : Nat), ([] : List ByteArray))))))) (let start : Nat := ((final).2).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub total start)) _root_.LexLeanPreservation.convL_nil))) (__rel_4 (subject) (start) ((_root_.LexLeanRuntime.subtract (total) (start) : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl))) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil) (__rel_3 (((LexLeanStd.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (total) (start) : Nat))) :: ((final).2).2))))))) - -def denote (subject : ByteArray) (delimiter : UInt8) : _root_.LexLeanPreservation.Obs := - _root_.cond (__fits_0 subject delimiter) (_root_.LexLeanPreservation.Obs.value (((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) (LexLeanStd.Text.splitOn subject delimiter)))) _root_.LexLeanPreservation.Obs.overflow - -theorem root (subject : ByteArray) (delimiter : UInt8) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.u8 delimiter)] (_root_.LexLeanPreservation.Rel (__fits_0 subject delimiter) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) (LexLeanStd.Text.splitOn subject delimiter))) := - _root_.LexLeanPreservation.run_of_funRel (__rel_0 subject delimiter) - -end LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3 diff --git a/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R3/Compose/RustStd.lex.tex b/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R3/Compose/RustStd.lex.tex deleted file mode 100644 index 7c7682b0f..000000000 --- a/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R3/Compose/RustStd.lex.tex +++ /dev/null @@ -1,486 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3, - LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.Compose.RustStd.root : @979 := @980 { - all: [LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.RustStd.program -@1 := LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.RustStd.krate -@2 := LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.RustStd.flags -@3 := ByteArray -@4 := #2 -@5 := LexLeanTarget.TargetSyntax.Value.bytes -@6 := @5 @4 -@7 := LexLeanTarget.TargetSyntax.Ty.bytes -@8 := LexLeanTarget.TargetSyntax.Program -@9 := LexLeanPreservation.Rust.RCrate -@10 := LexLeanPreservation.Rust.Flags -@11 := LexLeanPreservation.Rust.WT -@12 := #3 -@14 := @11 @12 @4 -@15 := #1 -@16 := @14 @15 -@17 := #0 -@18 := @5 @17 -@24 := {p : @8} -> {c : @9} -> {A : @10} -> (b : @3) -> @16 @18 @7 -@26 := LexLeanPreservation.Rust.wt_bytes @0 -@27 := @11 @0 -@29 := @27 @4 @15 -@34 := {c : @9} -> {A : @10} -> (b : @3) -> @29 @18 @7 -@35 := @26 @1 -@36 := @27 @1 -@37 := @36 @15 -@41 := {A : @10} -> (b : @3) -> @37 @18 @7 -@42 := @35 @2 -@43 := @36 @2 -@46 := (b : @3) -> @43 @18 @7 -@47 := @42 @4 -@49 := @43 @6 @7 -@50 := UInt8 -@51 := LexLeanTarget.TargetSyntax.Value.u8 -@52 := @51 @15 -@55 := LexLeanTarget.TargetSyntax.Ty.fixed LexLeanTarget.TargetSyntax.IntKind.u8 -@56 := @51 @17 -@62 := {p : @8} -> {c : @9} -> {A : @10} -> (x : @50) -> @16 @56 @55 -@64 := LexLeanPreservation.Rust.wt_u8 @0 -@69 := {c : @9} -> {A : @10} -> (x : @50) -> @29 @56 @55 -@70 := @64 @1 -@74 := {A : @10} -> (x : @50) -> @37 @56 @55 -@75 := @70 @2 -@78 := (x : @50) -> @43 @56 @55 -@79 := @75 @15 -@81 := @43 @52 @55 -@82 := LexLeanTarget.TargetSyntax.Value -@83 := List.nil.{0} -@84 := List.cons.{0} -@85 := @83 @82 -@86 := @84 @82 -@88 := @86 @52 @85 -@90 := @86 @6 @88 -@91 := Nat -@94 := Prod.{0, 0} @91 @82 -@95 := 1 -@98 := Prod.mk.{0, 0} @91 @82 -@99 := @98 @95 -@100 := @99 @52 -@101 := 0 -@102 := @98 @101 -@103 := @102 @6 -@104 := @83 @94 -@105 := @84 @94 -@107 := @105 @103 @104 -@109 := @105 @100 @107 -@110 := Bool.true -@111 := LexLeanTarget.TargetSyntax.Function -@112 := LexLeanTarget.TargetSyntax.Program.functions -@113 := @112 @0 -@114 := LexLeanTarget.TargetSyntax.Ty -@115 := @83 @91 -@116 := @83 @114 -@117 := LexLeanTarget.TargetSyntax.Ty.unit -@118 := LexLeanTarget.TargetSyntax.Value.unit -@121 := LexLeanTarget.TargetSyntax.Expr.value @117 @118 -@126 := LexLeanTarget.TargetSyntax.Function.mk @115 @116 @117 @121 -@131 := List.getD.{0} @111 @113 @101 @126 -@135 := fun (__e_n : @91) => - LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.RustStd.root @17 @101 -@136 := LexLeanPreservation.Rust.WTL -@144 := {p : @8} -> {c : @9} -> {A : @10} -> @136 @4 @15 @17 @85 @116 -@146 := LexLeanPreservation.Rust.wtl_nil @0 -@147 := @136 @0 -@153 := {c : @9} -> {A : @10} -> @147 @15 @17 @85 @116 -@154 := @146 @1 -@155 := @147 @1 -@159 := {A : @10} -> @155 @17 @85 @116 -@160 := @154 @2 -@161 := @155 @2 -@162 := @161 @85 -@163 := @162 @116 -@164 := List.{0} -@165 := @164 @82 -@166 := @164 @114 -@167 := #6 -@168 := @11 @167 -@169 := #5 -@170 := @168 @169 -@171 := #4 -@174 := @170 @171 @12 @4 -@175 := #7 -@180 := @136 @175 @167 @169 @4 @15 -@181 := #8 -@184 := @136 @181 @175 @167 -@186 := @86 @169 @12 -@187 := @184 @186 -@188 := @84 @114 -@190 := @188 @171 @4 -@200 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {v : @82} -> {t : @114} -> {vs : @165} -> {ts : @166} -> (h : @174) -> (hs : @180) -> @187 @190 -@202 := LexLeanPreservation.Rust.wtl_cons @0 -@222 := {c : @9} -> - {A : @10} -> - {v : @82} -> - {t : @114} -> - {vs : @165} -> - {ts : @166} -> - (h : @27 @169 @171 @12 @4) -> (hs : @147 @167 @169 @4 @15) -> @147 @175 @167 @186 @190 -@223 := @202 @1 -@239 := {A : @10} -> - {v : @82} -> - {t : @114} -> - {vs : @165} -> - {ts : @166} -> (h : @36 @171 @12 @4) -> (hs : @155 @169 @4 @15) -> @155 @167 @186 @190 -@240 := @223 @2 -@242 := @43 @12 @4 -@244 := @161 @4 @15 -@252 := {v : @82} -> - {t : @114} -> {vs : @165} -> {ts : @166} -> (h : @242) -> (hs : @244) -> @161 @186 @190 -@253 := @240 @52 -@254 := @51 @171 -@256 := @43 @254 @4 -@257 := @51 @167 -@258 := @86 @257 -@266 := {t : @114} -> - {vs : @165} -> {ts : @166} -> (h : @256) -> (hs : @244) -> @161 (@258 @12) @190 -@267 := @253 @55 -@268 := @51 @12 -@270 := @43 @268 @55 -@271 := @51 @169 -@272 := @86 @271 -@274 := @161 (@272 @12) -@275 := @188 @55 -@276 := @275 @4 -@281 := {vs : @165} -> {ts : @166} -> (h : @270) -> (hs : @244) -> @274 @276 -@282 := @267 @85 -@283 := @51 @4 -@285 := @43 @283 @55 -@286 := @162 @15 -@288 := @86 @254 @85 -@293 := {ts : @166} -> (h : @285) -> (hs : @286) -> @161 @288 @276 -@294 := @282 @116 -@296 := @86 @268 @85 -@297 := @161 @296 -@298 := @275 @116 -@301 := (h : @81) -> (hs : @163) -> @297 @298 -@302 := @294 @79 -@304 := @86 @283 @85 -@306 := @161 @304 @298 -@307 := (hs : @163) -> @306 -@308 := @302 @160 -@310 := @161 @88 @298 -@311 := @240 @6 -@312 := @5 @169 -@314 := @43 @312 @4 -@315 := @5 @175 -@316 := @86 @315 -@324 := {t : @114} -> - {vs : @165} -> {ts : @166} -> (h : @314) -> (hs : @244) -> @161 (@316 @12) @190 -@325 := @311 @7 -@326 := @5 @171 -@328 := @43 @326 @7 -@329 := @5 @167 -@330 := @86 @329 -@332 := @161 (@330 @12) -@333 := @188 @7 -@334 := @333 @4 -@339 := {vs : @165} -> {ts : @166} -> (h : @328) -> (hs : @244) -> @332 @334 -@340 := @325 @88 -@341 := @5 @12 -@343 := @43 @341 @7 -@344 := @297 @15 -@346 := @86 @312 @288 -@347 := @161 @346 -@351 := {ts : @166} -> (h : @343) -> (hs : @344) -> @347 @334 -@352 := @340 @298 -@354 := @86 @326 @296 -@355 := @161 @354 -@356 := @333 @298 -@359 := (h : @49) -> (hs : @306) -> @355 @356 -@360 := @352 @47 -@362 := @86 @341 @304 -@363 := @161 @362 -@365 := (hs : @310) -> @363 @356 -@366 := @360 @308 -@367 := @161 @90 -@368 := @367 @356 -@369 := LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.denote -@371 := @369 @4 @15 -@372 := LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.__fits_0 -@374 := @372 @4 @15 -@377 := LexLeanStd.Text.splitOn @4 @15 -@381 := LexLeanPreservation.encList @3 @5 @377 -@384 := LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.root @4 @15 -@385 := Bool -@386 := Ne.{1} -@387 := LexLeanPreservation.Obs -@388 := @386 @387 -@389 := LexLeanPreservation.Rel -@392 := @388 (@389 @15 @17) -@393 := LexLeanPreservation.Obs.stuck -@396 := (f : @385) -> (v : @82) -> @392 @393 -@398 := LexLeanPreservation.Rust.rel_ne_stuck @374 -@405 := (v : @82) -> @388 (@389 (@372 @12 @4) @17) @393 -@406 := @398 @381 -@410 := @388 (@389 @374 @381) @393 -@411 := @164 @94 -@412 := LexLeanPreservation.Rust.FunSem -@413 := #9 -@419 := (n : @91) -> @412 @413 @181 @175 @17 @167 -@420 := Eq.{1} -@421 := Option.{0} -@422 := @421 @111 -@423 := @420 @422 -@430 := LexLeanRuntime.index (@164 @111) @111 (LexLeanRuntime.instIndexableList @111) -@434 := @423 (@430 (@112 @413) @167) -@435 := Option.some.{0} -@436 := @435 @111 -@437 := @436 @169 -@438 := @434 @437 -@439 := #10 -@443 := @136 @439 @413 @181 @169 -@444 := LexLeanTarget.TargetSyntax.Function.types -@445 := @444 @167 -@446 := @443 @445 -@447 := @421 @411 -@448 := @420 @447 -@449 := LexLeanTarget.TargetSemantics.bindAll -@450 := LexLeanTarget.TargetSyntax.Function.parameters -@455 := @448 (@449 (@450 @175) @167 @104) -@456 := @435 @411 -@457 := @456 @169 -@458 := @455 @457 -@459 := @421 @385 -@460 := @420 @459 -@461 := LexLeanPreservation.Rust.fnFallible -@462 := #11 -@465 := @460 (@461 @462 @413) -@466 := @435 @385 -@467 := @466 @169 -@468 := @465 @467 -@469 := LexLeanPreservation.RunConv -@470 := #13 -@474 := @469 @470 @439 @181 @169 -@476 := @388 @167 @393 -@477 := Exists.{1} -@478 := LexLeanPreservation.Rust.ROut -@479 := @477 @478 -@480 := And -@481 := LexLeanPreservation.Rust.RealizesFn -@485 := @480 (@481 @413 @181 @17) -@486 := LexLeanPreservation.Rust.RCI -@488 := @486 #15 -@489 := LexLeanPreservation.Rust.fnIdent -@490 := @489 @470 -@497 := (hne : @476) -> @479 (fun (ro : @478) => @485 (@488 @490 @462 @17)) -@512 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {f : @91} -> - {fn : @111} -> - {args : @165} -> - {env : @411} -> - {F : @385} -> - {o : @387} -> - (hB : @419) -> - (hfn : @438) -> (hwt : @446) -> (hbind : @458) -> (hF : @468) -> (hA : @474) -> @497 -@514 := LexLeanPreservation.Rust.compose @0 -@515 := @412 @0 -@520 := (n : @91) -> @515 @181 @175 @17 @167 -@521 := @430 @113 -@524 := @423 (@521 @167) @437 -@528 := @147 @413 @181 @169 @445 -@529 := @469 @0 -@532 := @529 @439 @181 @169 -@546 := {c : @9} -> - {A : @10} -> - {f : @91} -> - {fn : @111} -> - {args : @165} -> - {env : @411} -> - {F : @385} -> - {o : @387} -> - (hB : @520) -> - (hfn : @524) -> (hwt : @528) -> (hbind : @458) -> (hF : @468) -> (hA : @532) -> @497 -@547 := @514 @1 -@548 := @515 @1 -@552 := (n : @91) -> @548 @175 @17 @167 -@555 := @155 @181 @169 @445 -@556 := @461 @1 -@559 := @460 (@556 @413) @467 -@560 := @486 @1 -@570 := (hbind : @458) -> - (hF : @559) -> (hA : @532) -> (hne : @476) -> @479 (fun (ro : @478) => @485 (@560 @490 @462 @17)) -@580 := {A : @10} -> - {f : @91} -> - {fn : @111} -> - {args : @165} -> - {env : @411} -> {F : @385} -> {o : @387} -> (hB : @552) -> (hfn : @524) -> (hwt : @555) -> @570 -@581 := @547 @2 -@583 := @548 @2 @17 -@585 := (n : @91) -> @583 @167 -@586 := @161 @169 -@587 := @586 @445 -@596 := {f : @91} -> - {fn : @111} -> - {args : @165} -> - {env : @411} -> {F : @385} -> {o : @387} -> (hB : @585) -> (hfn : @524) -> (hwt : @587) -> @570 -@597 := @581 @101 -@599 := (n : @91) -> @583 @101 -@600 := @521 @101 -@601 := @423 @600 -@602 := @601 @437 -@603 := @556 @101 -@604 := @460 @603 -@605 := @604 @467 -@606 := @529 @101 -@608 := @606 @181 @169 -@610 := @560 (@489 @101) -@618 := (hF : @605) -> (hA : @608) -> (hne : @476) -> @479 (fun (ro : @478) => @485 (@610 @462 @17)) -@627 := {fn : @111} -> - {args : @165} -> - {env : @411} -> - {F : @385} -> {o : @387} -> (hB : @599) -> (hfn : @602) -> (hwt : @587) -> (hbind : @458) -> @618 -@628 := @597 @131 -@630 := @601 (@436 @131) -@631 := @444 @131 -@632 := @586 @631 -@634 := @449 (@450 @131) -@646 := {args : @165} -> - {env : @411} -> - {F : @385} -> - {o : @387} -> - (hB : @599) -> (hfn : @630) -> (hwt : @632) -> (hbind : @448 (@634 @167 @104) @457) -> @618 -@647 := @628 @90 -@649 := @316 (@258 @85) -@651 := @161 @649 @631 -@657 := @86 (@5 @181) (@86 (@51 @175) @85) -@661 := @448 (@634 @657 @104) @457 -@667 := @86 (@5 @439) (@86 (@51 @413) @85) -@669 := @606 @667 @169 -@671 := @86 (@5 @470) -@672 := #12 -@691 := {env : @411} -> - {F : @385} -> - {o : @387} -> - (hB : @599) -> - (hfn : @630) -> - (hwt : @651) -> - (hbind : @661) -> - (hF : @605) -> - (hA : @669) -> - (hne : @476) -> @479 (fun (ro : @478) => @485 (@610 (@671 (@86 (@51 @672) @85)) @17)) -@692 := @647 @109 -@694 := @330 (@272 @85) -@696 := @161 @694 @631 -@707 := @448 (@634 @649 @104) (@456 (@105 (@99 @257) (@105 (@102 @315) @104))) -@713 := @86 (@5 @413) (@86 (@51 @181) @85) -@735 := {F : @385} -> - {o : @387} -> - (hB : @599) -> - (hfn : @630) -> - (hwt : @696) -> - (hbind : @707) -> - (hF : @605) -> - (hA : @606 @713 @169) -> - (hne : @476) -> @479 (fun (ro : @478) => @485 (@610 (@86 (@5 @672) (@86 (@51 @462) @85)) @17)) -@736 := @692 @110 -@737 := @347 @631 -@748 := @448 (@634 @694 @104) (@456 (@105 (@99 @271) (@105 (@102 @329) @104))) -@750 := @604 (@466 @110) -@752 := @606 @657 @169 -@753 := @481 @110 -@775 := {o : @387} -> - (hB : @599) -> - (hfn : @630) -> - (hwt : @737) -> - (hbind : @748) -> - (hF : @750) -> - (hA : @752) -> - (hne : @476) -> - @479 (fun (ro : @478) => @480 (@753 @181 @17) (@610 (@86 (@5 @462) (@86 (@51 @439) @85)) @17)) -@776 := @736 @371 -@777 := @355 @631 -@788 := @448 (@634 @346 @104) (@456 (@105 (@99 @254) (@105 (@102 @312) @104))) -@789 := @606 @649 -@791 := @369 @175 @167 -@792 := @789 @791 -@794 := @369 @181 @175 -@813 := (hB : @599) -> - (hfn : @630) -> - (hwt : @777) -> - (hbind : @788) -> - (hF : @750) -> - (hA : @792) -> - (hne : @388 @794 @393) -> - @479 (fun (ro : @478) => @480 (@753 (@369 @439 @413) @17) (@610 @667 @17)) -@814 := @776 @135 -@815 := @363 @631 -@826 := @448 (@634 @354 @104) (@456 (@105 (@99 @268) (@105 (@102 @326) @104))) -@827 := @606 @694 -@829 := @369 @167 @169 -@848 := (hfn : @630) -> - (hwt : @815) -> - (hbind : @826) -> - (hF : @750) -> - (hA : @827 @829) -> - (hne : @388 @791 @393) -> - @479 (fun (ro : @478) => @480 (@753 (@369 @413 @181) @17) (@610 @713 @17)) -@849 := Eq.refl.{1} -@852 := @814 (@849 @422 @600) -@853 := @367 @631 -@864 := @448 (@634 @362 @104) (@456 (@105 (@99 @283) (@105 (@102 @341) @104))) -@865 := @606 @346 -@867 := @369 @169 @171 -@883 := (hwt : @853) -> - (hbind : @864) -> - (hF : @750) -> - (hA : @865 @867) -> - (hne : @388 @829 @393) -> @479 (fun (ro : @478) => @480 (@753 @794 @17) (@610 @657 @17)) -@884 := @852 @366 -@886 := @634 @90 @104 -@889 := @448 @886 (@456 @109) -@890 := @606 @354 -@892 := @369 @171 @12 -@907 := (hbind : @889) -> - (hF : @750) -> - (hA : @890 @892) -> - (hne : @388 @867 @393) -> @479 (fun (ro : @478) => @480 (@753 @791 @17) (@610 @649 @17)) -@910 := @884 (@849 @447 @886) -@911 := @606 @362 -@913 := @369 @12 @4 -@927 := (hF : @750) -> - (hA : @911 @913) -> - (hne : @388 @892 @393) -> @479 (fun (ro : @478) => @480 (@753 @829 @17) (@610 @694 @17)) -@930 := @910 (@849 @459 @603) -@944 := (hA : @606 @90 @371) -> - (hne : @388 @913 @393) -> @479 (fun (ro : @478) => @480 (@753 @867 @17) (@610 @346 @17)) -@945 := @930 @384 -@956 := (hne : @388 @371 @393) -> @479 (fun (ro : @478) => @480 (@753 @892 @17) (@610 @354 @17)) -@957 := @945 @406 -@963 := @480 (@753 @913 @17) (@610 @362 @17) -@965 := @479 (fun (ro : @478) => @963) -@967 := @479 (fun (__e_ro : @478) => @963) -@968 := LexLeanPreservation.Rust.RepresentableL -@969 := @5 @15 -@971 := @86 @56 @85 -@974 := @968 (@86 @969 @971) -@975 := (__e_hrep : @974) -> @967 -@976 := fun (__e_hrep : @974) => @957 -@977 := (delimiter : @50) -> @975 -@978 := fun (delimiter : @50) => @976 -@979 := (subject : @3) -> @977 -@980 := fun (subject : @3) => @978 -\end{coremodule} -\end{lexlean} diff --git a/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R3/RustStd.lean b/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R3/RustStd.lean deleted file mode 100644 index a04bfa1f3..000000000 --- a/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R3/RustStd.lean +++ /dev/null @@ -1,101 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1], types := [.bytes, (.fixed .u8)], result := (.list .bytes), - body := (.«let» 2 .nat (.prim .length [(.var 0)]) (.«let» 3 (.pair .nat (.pair .nat (.list .bytes))) (.first (.call 1 [(.closure 2 [(.var 1), (.var 0)]), (.var 2), (.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.value .nat (.nat 0)), (.build .pair (.pair .nat (.list .bytes)) [(.value .nat (.nat 0)), (.build .nil (.list .bytes) [])])])])) (.«let» 4 .nat (.first (.second (.var 3))) (.call 3 [(.build .cons (.list .bytes) [(.call 4 [(.var 0), (.var 4), (.prim .natSub [(.var 2), (.var 4)])]), (.second (.second (.var 3)))])])))) }, - { parameters := [0, 1, 2], types := [(.fn [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes))))), .nat, (.pair .nat (.pair .nat (.list .bytes)))], result := (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool), - body := (.«match» (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 1 [(.var 0), (.var 3), (.var 4)]))]))]) }, - { parameters := [0, 1, 2], types := [(.fixed .u8), .bytes, (.pair .nat (.pair .nat (.list .bytes)))], result := (.option (.pair .nat (.pair .nat (.list .bytes)))), - body := (.call 5 [(.var 1), (.var 0), (.var 2)]) }, - { parameters := [0], types := [(.list .bytes)], result := (.list .bytes), - body := (.call 6 [(.closure 7 []), (.build .nil (.list .bytes) []), (.var 0)]) }, - { parameters := [0, 1, 2], types := [.bytes, .nat, .nat], result := .bytes, - body := (.«match» .bytes (.prim .slice [(.var 0), (.var 1), (.var 2)]) [(.arm .some [3] (.var 3)), (.arm .none [] (.value .bytes (.bytes (ByteArray.mk #[]))))]) }, - { parameters := [0, 1, 2], types := [.bytes, (.fixed .u8), (.pair .nat (.pair .nat (.list .bytes)))], result := (.option (.pair .nat (.pair .nat (.list .bytes)))), - body := (.«let» 3 .nat (.first (.var 2)) (.«let» 4 .nat (.first (.second (.var 2))) (.«let» 5 (.list .bytes) (.second (.second (.var 2))) (.«match» (.option (.pair .nat (.pair .nat (.list .bytes)))) (.call 8 [(.var 0), (.var 3)]) [(.arm .some [6] (.cond (.prim .equal [(.var 6), (.var 1)]) (.build .some (.option (.pair .nat (.pair .nat (.list .bytes)))) [(.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.prim .natAdd [(.var 3), (.value .nat (.nat 1))]), (.build .pair (.pair .nat (.list .bytes)) [(.prim .natAdd [(.var 3), (.value .nat (.nat 1))]), (.build .cons (.list .bytes) [(.call 4 [(.var 0), (.var 4), (.prim .natSub [(.var 3), (.var 4)])]), (.var 5)])])])]) (.build .some (.option (.pair .nat (.pair .nat (.list .bytes)))) [(.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.prim .natAdd [(.var 3), (.value .nat (.nat 1))]), (.build .pair (.pair .nat (.list .bytes)) [(.var 4), (.var 5)])])]))), (.arm .none [] (.build .none (.option (.pair .nat (.pair .nat (.list .bytes)))) []))])))) }, - { parameters := [0, 1, 2], types := [(.fn [(.list .bytes), .bytes] (.list .bytes)), (.list .bytes), (.list .bytes)], result := (.list .bytes), - body := (.«match» (.list .bytes) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 6 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, - { parameters := [0, 1], types := [(.list .bytes), .bytes], result := (.list .bytes), - body := (.build .cons (.list .bytes) [(.var 1), (.var 0)]) }, - { parameters := [0, 1], types := [.bytes, .nat], result := (.option (.fixed .u8)), - body := (.prim .index [(.var 0), (.var 1)]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.enum (.fn 0) [{ number := 2, fields := [(.fixed .u8), .bytes] }]), - (.apply 0 [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes)))) true [{ function := 2, captures := [.copy, .clone], functionFallible := true }]), - (.enum (.fn 1) [{ number := 7, fields := [] }]), - (.apply 1 [(.list .bytes), .bytes] (.list .bytes) false [{ function := 7, captures := [], functionFallible := false }]), - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := (.fixed .u8) }] (.fallible (.list .bytes)) (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 1))] false)))), (.mk (.bind (.generated .binding 3)) (some (.pair .nat (.pair .nat (.list .bytes)))) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.call (.function 1) [(.construct (.closure 0 2) [(.copy (.generated .binding 1)), (.clone (.generated .binding 0))]), (.copy (.generated .binding 2)), (.pair (.lit (.nat 0)) (.pair (.lit (.nat 0)) (.construct (.nil .bytes) [])))] true))] (.move (.generated .part 2))))), (.mk (.bind (.generated .binding 4)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 4))]) none (.clone (.generated .binding 3)))] (.move (.generated .part 4)))))] (.move (.generated .part 3)))))] (.succeed (.call (.function 3) [(.construct .cons [(.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 4)), (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 4)))] (.call (.runtime .natSub) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false)))] false), (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 7))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 8))]) none (.move (.generated .binding 3)))] (.move (.generated .part 8)))))] (.move (.generated .part 7))))])] false)))), - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := (.pair .nat (.pair .nat (.list .bytes))) }] (.fallible (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool)) (.mk [(.mk (.bind (.generated .holder 9)) none (.copy (.generated .binding 1)))] (.cond (.isZero (.generated .holder 9)) (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 9))), (.mk (.bind (.generated .holder 11)) none (.block (.mk [(.mk (.bind (.generated .callee 10)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 10) [(.clone (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 11)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 1) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))]))))), - (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := (.fixed .u8) }, { pattern := (.bind (.generated .binding 1)), type := .bytes }, { pattern := (.bind (.generated .binding 2)), type := (.pair .nat (.pair .nat (.list .bytes))) }] (.fallible (.option (.pair .nat (.pair .nat (.list .bytes))))) (.mk [] (.call (.function 5) [(.move (.generated .binding 1)), (.copy (.generated .binding 0)), (.move (.generated .binding 2))] false))), - (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.list .bytes) }] (.list .bytes) (.mk [] (.call (.function 6) [(.construct (.closure 1 7) []), (.construct (.nil .bytes) []), (.move (.generated .binding 0))] false))), - (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := .nat }] .bytes (.mk [(.mk (.bind (.generated .holder 15)) none (.block (.mk [(.mk (.bind (.generated .operand 12)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 2)))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 12)), (.move (.generated .operand 13)), (.move (.generated .operand 14))] false))))] (.matchOn (.move (.generated .holder 15)) [(.mk .none (.mk [] (.lit (.bytes (ByteArray.mk #[]))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.move (.generated .binding 3))))]))), - (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := (.fixed .u8) }, { pattern := (.bind (.generated .binding 2)), type := (.pair .nat (.pair .nat (.list .bytes))) }] (.fallible (.option (.pair .nat (.pair .nat (.list .bytes))))) (.mk [(.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 16)), .wild]) none (.clone (.generated .binding 2)))] (.move (.generated .part 16))))), (.mk (.bind (.generated .binding 4)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 17)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 18))]) none (.clone (.generated .binding 2)))] (.move (.generated .part 18)))))] (.move (.generated .part 17))))), (.mk (.bind (.generated .binding 5)) (some (.list .bytes)) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 19))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 20))]) none (.move (.generated .binding 2)))] (.move (.generated .part 20)))))] (.move (.generated .part 19))))), (.mk (.bind (.generated .holder 21)) none (.call (.function 8) [(.clone (.generated .binding 0)), (.copy (.generated .binding 3))] false))] (.matchOn (.move (.generated .holder 21)) [(.mk .none (.mk [] (.succeed (.construct (.none (.pair .nat (.pair .nat (.list .bytes)))) [])))), (.mk (.some (.bind (.generated .binding 6))) (.mk [(.mk (.bind (.generated .operand 22)) none (.copy (.generated .binding 6))), (.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 1)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 22)), (.move (.generated .operand 23))] false) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 25)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 24)), (.move (.generated .operand 25))] true))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] true))) (.construct .cons [(.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 4)), (.block (.mk [(.mk (.bind (.generated .operand 28)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 29)) none (.copy (.generated .binding 4)))] (.call (.runtime .natSub) [(.move (.generated .operand 28)), (.move (.generated .operand 29))] false)))] false), (.move (.generated .binding 5))])))]))) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 30)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 31)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] true))) (.pair (.copy (.generated .binding 4)) (.move (.generated .binding 5))))]))))))]))), - (.function (.generated .function 6) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 1) }, { pattern := (.bind (.generated .binding 1)), type := (.list .bytes) }, { pattern := (.bind (.generated .binding 2)), type := (.list .bytes) }] (.list .bytes) (.mk [(.mk (.bind (.generated .holder 32)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 32)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 6) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 33)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 33) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]))), - (.function (.generated .function 7) [{ pattern := (.bind (.generated .binding 0)), type := (.list .bytes) }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] (.list .bytes) (.mk [] (.construct .cons [(.move (.generated .binding 1)), (.move (.generated .binding 0))]))), - (.function (.generated .function 8) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.option (.fixed .u8)) (.mk [(.mk (.bind (.generated .operand 34)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 35)) none (.copy (.generated .binding 1)))] (.call (.runtime .indexBytes) [(.move (.generated .operand 34)), (.move (.generated .operand 35))] false)))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [(([(.pair .nat (.pair .nat (.list .bytes)))], (.option (.pair .nat (.pair .nat (.list .bytes))))), true), (([(.list .bytes), .bytes], (.list .bytes)), false)] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 1))] false)))), (.mk (.bind (.generated .binding 3)) (some (.pair .nat (.pair .nat (.list .bytes)))) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.call (.function 1) [(.construct (.closure 0 2) [(.copy (.generated .binding 1)), (.clone (.generated .binding 0))]), (.copy (.generated .binding 2)), (.pair (.lit (.nat 0)) (.pair (.lit (.nat 0)) (.construct (.nil .bytes) [])))] true))] (.move (.generated .part 2))))), (.mk (.bind (.generated .binding 4)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 4))]) none (.clone (.generated .binding 3)))] (.move (.generated .part 4)))))] (.move (.generated .part 3)))))], (.succeed (.call (.function 3) [(.construct .cons [(.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 4)), (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 4)))] (.call (.runtime .natSub) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false)))] false), (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 7))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 8))]) none (.move (.generated .binding 3)))] (.move (.generated .part 8)))))] (.move (.generated .part 7))))])] false)), [(1, (.fixed .u8), (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 1))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.call (.function 1) [(.construct (.closure 0 2) [(.copy (.generated .binding 1)), (.clone (.generated .binding 0))]), (.copy (.generated .binding 2)), (.pair (.lit (.nat 0)) (.pair (.lit (.nat 0)) (.construct (.nil .bytes) [])))] true))]) (tail := (.move (.generated .part 2))) (Corr.first (ta := (.pair .nat (.pair .nat (.list .bytes)))) (tb := .bool) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes))))), .nat, (.pair .nat (.pair .nat (.list .bytes)))]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [(.fixed .u8), .bytes]) (mask := [false, false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 4))]) none (.clone (.generated .binding 3)))] (.move (.generated .part 4)))))]) (tail := (.move (.generated .part 3))) (Corr.first (ta := .nat) (tb := (.list .bytes)) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 4))]) none (.clone (.generated .binding 3)))]) (tail := (.move (.generated .part 4))) (Corr.second (ta := .nat) (tb := (.pair .nat (.list .bytes))) (Corr.var rfl rfl) rfl)) rfl)) rfl (Corr.fOfB (Corr.callOps (ts := [(.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.bytes, (.list .bytes)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 4)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 7))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 8))]) none (.move (.generated .binding 3)))] (.move (.generated .part 8)))))]) (tail := (.move (.generated .part 7))) (Corr.second (ta := .nat) (tb := (.list .bytes)) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 8))]) none (.move (.generated .binding 3)))]) (tail := (.move (.generated .part 8))) (Corr.second (ta := .nat) (tb := (.pair .nat (.list .bytes))) (Corr.var rfl rfl) rfl)) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)))))⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 9)) none (.copy (.generated .binding 1)))], (.cond (.isZero (.generated .holder 9)) (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 9))), (.mk (.bind (.generated .holder 11)) none (.block (.mk [(.mk (.bind (.generated .callee 10)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 10) [(.clone (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 11)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 1) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))]))), [(2, (.pair .nat (.pair .nat (.list .bytes))), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes))))), (some 0))], rfl, rfl, - (Corr.matchNat (sl := (some 3)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (lb := [(.mk (.bind (.generated .holder 11)) none (.block (.mk [(.mk (.bind (.generated .callee 10)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 10) [(.clone (.generated .binding 2))] true))))]) (tb := (.matchOn (.move (.generated .holder 11)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 1) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))])) (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))))) (Corr.matchArms (st := (.option (.pair .nat (.pair .nat (.list .bytes))))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 10)) (some (.fn 0)) (.clone (.generated .binding 0)))]) (tail := (.apply (.generated .callee 10) [(.clone (.generated .binding 2))] true)) (Corr.apply (ps := [(.pair .nat (.pair .nat (.list .bytes)))]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (2, (.pair .nat (.pair .nat (.list .bytes))), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes))))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true))))) (Corr.mCons (Γ' := [(4, (.pair .nat (.pair .nat (.list .bytes))), (some 4)), (3, .nat, (some 3)), (2, (.pair .nat (.pair .nat (.list .bytes))), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes))))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 1) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes))))), .nat, (.pair .nat (.pair .nat (.list .bytes)))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))))))) rfl rfl rfl)))⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 5) [(.move (.generated .binding 1)), (.copy (.generated .binding 0)), (.move (.generated .binding 2))] false), [(2, (.pair .nat (.pair .nat (.list .bytes))), (some 2)), (1, .bytes, (some 1)), (0, (.fixed .u8), (some 0))], rfl, rfl, - (Corr.callF (ts := [.bytes, (.fixed .u8), (.pair .nat (.pair .nat (.list .bytes)))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)⟩⟩ - -theorem fun3 : FunOK program krate flags 3 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 6) [(.construct (.closure 1 7) []), (.construct (.nil .bytes) []), (.move (.generated .binding 0))] false), [(0, (.list .bytes), (some 0))], rfl, rfl, - (Corr.callOps (ts := [(.fn [(.list .bytes), .bytes] (.list .bytes)), (.list .bytes), (.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := false) (ff := false) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun4 : FunOK program krate flags 4 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 15)) none (.block (.mk [(.mk (.bind (.generated .operand 12)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 2)))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 12)), (.move (.generated .operand 13)), (.move (.generated .operand 14))] false))))], (.matchOn (.move (.generated .holder 15)) [(.mk .none (.mk [] (.lit (.bytes (ByteArray.mk #[]))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.move (.generated .binding 3))))]), [(2, .nat, (some 2)), (1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 12)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .sliceBytes) [(.move (.generated .operand 12)), (.move (.generated .operand 13)), (.move (.generated .operand 14))] false)) (Corr.prim (ts := [.bytes, .nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, .nat, (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bytes (ByteArray.mk #[])))) (Corr.mCons (Γ' := [(3, .bytes, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 3))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.bOfE (Corr.value rfl rfl))) rfl rfl rfl)⟩⟩ - -theorem fun5 : FunOK program krate flags 5 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 16)), .wild]) none (.clone (.generated .binding 2)))] (.move (.generated .part 16))))), (.mk (.bind (.generated .binding 4)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 17)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 18))]) none (.clone (.generated .binding 2)))] (.move (.generated .part 18)))))] (.move (.generated .part 17))))), (.mk (.bind (.generated .binding 5)) (some (.list .bytes)) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 19))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 20))]) none (.move (.generated .binding 2)))] (.move (.generated .part 20)))))] (.move (.generated .part 19))))), (.mk (.bind (.generated .holder 21)) none (.call (.function 8) [(.clone (.generated .binding 0)), (.copy (.generated .binding 3))] false))], (.matchOn (.move (.generated .holder 21)) [(.mk .none (.mk [] (.succeed (.construct (.none (.pair .nat (.pair .nat (.list .bytes)))) [])))), (.mk (.some (.bind (.generated .binding 6))) (.mk [(.mk (.bind (.generated .operand 22)) none (.copy (.generated .binding 6))), (.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 1)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 22)), (.move (.generated .operand 23))] false) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 25)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 24)), (.move (.generated .operand 25))] true))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] true))) (.construct .cons [(.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 4)), (.block (.mk [(.mk (.bind (.generated .operand 28)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 29)) none (.copy (.generated .binding 4)))] (.call (.runtime .natSub) [(.move (.generated .operand 28)), (.move (.generated .operand 29))] false)))] false), (.move (.generated .binding 5))])))]))) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 30)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 31)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] true))) (.pair (.copy (.generated .binding 4)) (.move (.generated .binding 5))))]))))))]), [(2, (.pair .nat (.pair .nat (.list .bytes))), (some 2)), (1, (.fixed .u8), (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 16)), .wild]) none (.clone (.generated .binding 2)))]) (tail := (.move (.generated .part 16))) (Corr.first (ta := .nat) (tb := (.pair .nat (.list .bytes))) (Corr.var rfl rfl) rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 17)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 18))]) none (.clone (.generated .binding 2)))] (.move (.generated .part 18)))))]) (tail := (.move (.generated .part 17))) (Corr.first (ta := .nat) (tb := (.list .bytes)) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 18))]) none (.clone (.generated .binding 2)))]) (tail := (.move (.generated .part 18))) (Corr.second (ta := .nat) (tb := (.pair .nat (.list .bytes))) (Corr.var rfl rfl) rfl)) rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 19))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 20))]) none (.move (.generated .binding 2)))] (.move (.generated .part 20)))))]) (tail := (.move (.generated .part 19))) (Corr.second (ta := .nat) (tb := (.list .bytes)) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 20))]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 20))) (Corr.second (ta := .nat) (tb := (.pair .nat (.list .bytes))) (Corr.var rfl rfl) rfl)) rfl)) rfl (Corr.matchArms (st := (.option (.fixed .u8))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(5, (.list .bytes), (some 5)), (4, .nat, (some 4)), (3, .nat, (some 3)), (2, (.pair .nat (.pair .nat (.list .bytes))), (some 2)), (1, (.fixed .u8), (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.construct (.none (.pair .nat (.pair .nat (.list .bytes)))) []))) (Corr.mCons (Γ' := [(6, (.fixed .u8), (some 6)), (5, (.list .bytes), (some 5)), (4, .nat, (some 4)), (3, .nat, (some 3)), (2, (.pair .nat (.pair .nat (.list .bytes))), (some 2)), (1, (.fixed .u8), (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .operand 22)) none (.copy (.generated .binding 6))), (.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 1)))]) (tail := (.cond (.call (.runtime .equal) [(.move (.generated .operand 22)), (.move (.generated .operand 23))] false) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 25)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 24)), (.move (.generated .operand 25))] true))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] true))) (.construct .cons [(.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 4)), (.block (.mk [(.mk (.bind (.generated .operand 28)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 29)) none (.copy (.generated .binding 4)))] (.call (.runtime .natSub) [(.move (.generated .operand 28)), (.move (.generated .operand 29))] false)))] false), (.move (.generated .binding 5))])))]))) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 30)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 31)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] true))) (.pair (.copy (.generated .binding 4)) (.move (.generated .binding 5))))]))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .operand 22)) none (.copy (.generated .binding 6))), (.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 1)))]) (ce := (.call (.runtime .equal) [(.move (.generated .operand 22)), (.move (.generated .operand 23))] false)) (lk := []) (Corr.prim (ts := [(.fixed .u8), (.fixed .u8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 25)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 24)), (.move (.generated .operand 25))] true))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] true))) (.construct .cons [(.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 4)), (.block (.mk [(.mk (.bind (.generated .operand 28)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 29)) none (.copy (.generated .binding 4)))] (.call (.runtime .natSub) [(.move (.generated .operand 28)), (.move (.generated .operand 29))] false)))] false), (.move (.generated .binding 5))])))]))) (lb := []) (tb := (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 30)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 31)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] true))) (.pair (.copy (.generated .binding 4)) (.move (.generated .binding 5))))]))) (Corr.fOfB (Corr.build (ts := [(.pair .nat (.pair .nat (.list .bytes)))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 25)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 24)), (.move (.generated .operand 25))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.bytes, (.list .bytes)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 28)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 29)) none (.copy (.generated .binding 4)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 28)), (.move (.generated .operand 29))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := [(.pair .nat (.pair .nat (.list .bytes)))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 30)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 31)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil))) rfl))))) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl))))⟩⟩ - -theorem fun6 : FunOK program krate flags 6 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 32)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 32)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 6) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 33)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 33) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]), [(2, (.list .bytes), (some 2)), (1, (.list .bytes), (some 1)), (0, (.fn [(.list .bytes), .bytes] (.list .bytes)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .bytes)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .bytes), (some 2)), (1, (.list .bytes), (some 1)), (0, (.fn [(.list .bytes), .bytes] (.list .bytes)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 1))) (Corr.mCons (Γ' := [(4, (.list .bytes), (some 4)), (3, .bytes, (some 3)), (2, (.list .bytes), (some 2)), (1, (.list .bytes), (some 1)), (0, (.fn [(.list .bytes), .bytes] (.list .bytes)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 6) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 33)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 33) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.fn [(.list .bytes), .bytes] (.list .bytes)), (.list .bytes), (.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 33)) (some (.fn 1)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 33) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false)) (Corr.apply (ps := [(.list .bytes), .bytes]) (af := false) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ - -theorem fun7 : FunOK program krate flags 7 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct .cons [(.move (.generated .binding 1)), (.move (.generated .binding 0))]), [(1, .bytes, (some 1)), (0, (.list .bytes), (some 0))], rfl, rfl, - (Corr.build (ts := [.bytes, (.list .bytes)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)⟩⟩ - -theorem fun8 : FunOK program krate flags 8 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 34)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 35)) none (.copy (.generated .binding 1)))], (.call (.runtime .indexBytes) [(.move (.generated .operand 34)), (.move (.generated .operand 35))] false), [(1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.prim (ts := [.bytes, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | 3 => exact fun3 - | 4 => exact fun4 - | 5 => exact fun5 - | 6 => exact fun6 - | 7 => exact fun7 - | 8 => exact fun8 - | _ + 9 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.RustStd diff --git a/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R4.lean b/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R4.lean deleted file mode 100644 index fdb451660..000000000 --- a/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R4.lean +++ /dev/null @@ -1,105 +0,0 @@ -import LexLeanPreservation.Core -import LexLeanPreservation.Values -import LexLeanPreservation.Primitives -import LexLeanPreservation.Fixed -import LexLeanPreservation.Keys -import LexLeanPreservation.Templates -import LexLeanPreservation.Validate -import LexLeanStd.Text -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -set_option linter.unusedVariables false -namespace LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4 - -def __prog : _root_.LexLeanTarget.TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0], types := [.bytes], result := (.list .bytes), - body := (.«let» 1 .nat (.prim .length [(.var 0)]) (.«let» 2 (.pair .nat (.pair .nat (.list .bytes))) (.first (.call 1 [(.closure 2 [(.var 0)]), (.var 1), (.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.value .nat (.nat 0)), (.build .pair (.pair .nat (.list .bytes)) [(.value .nat (.nat 0)), (.build .nil (.list .bytes) [])])])])) (.«let» 3 .nat (.first (.second (.var 2))) (.«let» 4 (.list .bytes) (.second (.second (.var 2))) (.cond (.prim .natLt [(.var 3), (.var 1)]) (.call 3 [(.build .cons (.list .bytes) [(.call 4 [(.var 0), (.var 3), (.prim .natSub [(.var 1), (.var 3)])]), (.var 4)])]) (.call 3 [(.var 4)])))))) }, - { parameters := [0, 1, 2], types := [(.fn [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes))))), .nat, (.pair .nat (.pair .nat (.list .bytes)))], result := (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool), - body := (.«match» (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 1 [(.var 0), (.var 3), (.var 4)]))]))]) }, - { parameters := [0, 1], types := [.bytes, (.pair .nat (.pair .nat (.list .bytes)))], result := (.option (.pair .nat (.pair .nat (.list .bytes)))), - body := (.call 5 [(.var 0), (.var 1)]) }, - { parameters := [0], types := [(.list .bytes)], result := (.list .bytes), - body := (.call 6 [(.closure 7 []), (.build .nil (.list .bytes) []), (.var 0)]) }, - { parameters := [0, 1, 2], types := [.bytes, .nat, .nat], result := .bytes, - body := (.«match» .bytes (.prim .slice [(.var 0), (.var 1), (.var 2)]) [(.arm .some [3] (.var 3)), (.arm .none [] (.value .bytes (.bytes (ByteArray.mk #[]))))]) }, - { parameters := [0, 1], types := [.bytes, (.pair .nat (.pair .nat (.list .bytes)))], result := (.option (.pair .nat (.pair .nat (.list .bytes)))), - body := (.«let» 2 .nat (.first (.var 1)) (.«let» 3 .nat (.first (.second (.var 1))) (.«let» 4 (.list .bytes) (.second (.second (.var 1))) (.«match» (.option (.pair .nat (.pair .nat (.list .bytes)))) (.call 8 [(.var 0), (.var 2)]) [(.arm .some [5] (.cond (.prim .equal [(.var 5), (.value (.fixed .u8) (.u8 10))]) (.build .some (.option (.pair .nat (.pair .nat (.list .bytes)))) [(.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.prim .natAdd [(.var 2), (.value .nat (.nat 1))]), (.build .pair (.pair .nat (.list .bytes)) [(.prim .natAdd [(.var 2), (.value .nat (.nat 1))]), (.build .cons (.list .bytes) [(.call 9 [(.call 4 [(.var 0), (.var 3), (.prim .natSub [(.var 2), (.var 3)])])]), (.var 4)])])])]) (.build .some (.option (.pair .nat (.pair .nat (.list .bytes)))) [(.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.prim .natAdd [(.var 2), (.value .nat (.nat 1))]), (.build .pair (.pair .nat (.list .bytes)) [(.var 3), (.var 4)])])]))), (.arm .none [] (.build .none (.option (.pair .nat (.pair .nat (.list .bytes)))) []))])))) }, - { parameters := [0, 1, 2], types := [(.fn [(.list .bytes), .bytes] (.list .bytes)), (.list .bytes), (.list .bytes)], result := (.list .bytes), - body := (.«match» (.list .bytes) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 6 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, - { parameters := [0, 1], types := [(.list .bytes), .bytes], result := (.list .bytes), - body := (.build .cons (.list .bytes) [(.var 1), (.var 0)]) }, - { parameters := [0, 1], types := [.bytes, .nat], result := (.option (.fixed .u8)), - body := (.prim .index [(.var 0), (.var 1)]) }, - { parameters := [0], types := [.bytes], result := .bytes, - body := (.cond (.call 10 [(.var 0), (.value .bytes (.bytes (ByteArray.mk #[13])))]) (.call 4 [(.var 0), (.value .nat (.nat 0)), (.prim .natSub [(.prim .length [(.var 0)]), (.value .nat (.nat 1))])]) (.var 0)) }, - { parameters := [0, 1], types := [.bytes, .bytes], result := .bool, - body := (.«let» 2 .nat (.prim .length [(.var 0)]) (.«let» 3 .nat (.prim .length [(.var 1)]) (.cond (.prim .natLe [(.var 3), (.var 2)]) (.«match» .bool (.prim .slice [(.var 0), (.prim .natSub [(.var 2), (.var 3)]), (.var 3)]) [(.arm .some [4] (.prim .equal [(.var 4), (.var 1)])), (.arm .none [] (.build .false .bool []))]) (.build .false .bool [])))) }] } - -def __fits_4 (subject : ByteArray) (start : Nat) (count : Nat) : Bool := - (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && Bool.true) && (match (_root_.LexLeanRuntime.slice (subject) (start) (count) : (Option ByteArray)) with | Option.some piece => Bool.true | Option.none => Bool.true)) - -theorem __rel_4 (subject : ByteArray) (start : Nat) (count : Nat) : _root_.LexLeanPreservation.FunRel __prog 4 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat start), (_root_.LexLeanTarget.TargetSyntax.Value.nat count)] (_root_.LexLeanPreservation.Rel (__fits_4 subject start count) (_root_.LexLeanTarget.TargetSyntax.Value.bytes (LexLeanStd.Text.sliceOr subject start count))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.some piece => Bool.true | Option.none => Bool.true)) (fun (__a : (Option ByteArray)) => _root_.LexLeanTarget.TargetSyntax.Value.bytes (match __a with | Option.some piece => piece | Option.none => (ByteArray.mk #[]))) (_root_.LexLeanRuntime.slice (subject) (start) (count) : (Option ByteArray)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.prim_slice_bytes subject start count)) (fun (__a : (Option ByteArray)) _ => match __a with | Option.some piece => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value)))) - -def __fits_8 (subject : ByteArray) (position : Nat) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_8 (subject : ByteArray) (position : Nat) : _root_.LexLeanPreservation.FunRel __prog 8 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat position)] (_root_.LexLeanPreservation.Rel (__fits_8 subject position) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u8) (LexLeanStd.Text.byteAt subject position))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_index_bytes subject position)) - -def __fits_10 (subject : ByteArray) (suffix : ByteArray) : Bool := - (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (subject) : Nat) 18446744073709551616)) && (let total : Nat := (_root_.LexLeanRuntime.length (subject) : Nat); (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (suffix) : Nat) 18446744073709551616)) && (let size : Nat := (_root_.LexLeanRuntime.length (suffix) : Nat); (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.ble size total) then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (Bool.true && Bool.true))) && Bool.true) && (match (_root_.LexLeanRuntime.slice (subject) ((_root_.LexLeanRuntime.subtract (total) (size) : Nat)) (size) : (Option ByteArray)) with | Option.some tail => ((Bool.true && (Bool.true && Bool.true)) && Bool.true) | Option.none => (Bool.true && Bool.true))) else (Bool.true && Bool.true))))))) - -theorem __rel_10 (subject : ByteArray) (suffix : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 10 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.bytes suffix)] (_root_.LexLeanPreservation.Rel (__fits_10 subject suffix) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanStd.Text.endsWith subject suffix))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (let total : Nat := (_root_.LexLeanRuntime.length (subject) : Nat); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes subject)) (let size : Nat := (_root_.LexLeanRuntime.length (suffix) : Nat); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes suffix)) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (Bool.true && Bool.true))) && Bool.true) && (match (_root_.LexLeanRuntime.slice (subject) ((_root_.LexLeanRuntime.subtract (total) (size) : Nat)) (size) : (Option ByteArray)) with | Option.some tail => ((Bool.true && (Bool.true && Bool.true)) && Bool.true) | Option.none => (Bool.true && Bool.true))) else (Bool.true && Bool.true))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then (match (_root_.LexLeanRuntime.slice (subject) ((_root_.LexLeanRuntime.subtract (total) (size) : Nat)) (size) : (Option ByteArray)) with | Option.some tail => (_root_.LexLeanRuntime.equal (tail) (suffix) : Bool) | Option.none => Bool.false) else Bool.false)) (Nat.ble size total) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe size total)) (fun _ => (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.some tail => ((Bool.true && (Bool.true && Bool.true)) && Bool.true) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option ByteArray)) => _root_.LexLeanTarget.TargetSyntax.Value.bool (match __a with | Option.some tail => (_root_.LexLeanRuntime.equal (tail) (suffix) : Bool) | Option.none => Bool.false)) (_root_.LexLeanRuntime.slice (subject) ((_root_.LexLeanRuntime.subtract (total) (size) : Nat)) (size) : (Option ByteArray)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub total size)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.prim_slice_bytes subject (_root_.LexLeanRuntime.subtract (total) (size) : Nat) size)) (fun (__a : (Option ByteArray)) _ => match __a with | Option.some tail => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_bytes tail suffix))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))))) - -def __fits_9 (line : ByteArray) : Bool := - (((Bool.true && (Bool.true && Bool.true)) && (__fits_10 (line) ((ByteArray.mk #[13])))) && (if (LexLeanStd.Text.endsWith (line) ((ByteArray.mk #[13]))) then ((Bool.true && (Bool.true && (((((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (line) : Nat) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_4 (line) ((0 : Nat)) ((_root_.LexLeanRuntime.subtract ((_root_.LexLeanRuntime.length (line) : Nat)) ((1 : Nat)) : Nat)))) else Bool.true)) - -attribute [local irreducible] LexLeanStd.Text.endsWith LexLeanStd.Text.sliceOr in -theorem __rel_9 (line : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 9 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes line)] (_root_.LexLeanPreservation.Rel (__fits_9 line) (_root_.LexLeanTarget.TargetSyntax.Value.bytes (LexLeanStd.Text.chomp line))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && (Bool.true && (((((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (line) : Nat) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_4 (line) ((0 : Nat)) ((_root_.LexLeanRuntime.subtract ((_root_.LexLeanRuntime.length (line) : Nat)) ((1 : Nat)) : Nat)))) else Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bytes (if __b then (LexLeanStd.Text.sliceOr (line) ((0 : Nat)) ((_root_.LexLeanRuntime.subtract ((_root_.LexLeanRuntime.length (line) : Nat)) ((1 : Nat)) : Nat))) else line)) (LexLeanStd.Text.endsWith (line) ((ByteArray.mk #[13]))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_10 (line) ((ByteArray.mk #[13])))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes line)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub (_root_.LexLeanRuntime.length (line) : Nat) (1 : Nat))) _root_.LexLeanPreservation.convL_nil))) (__rel_4 (line) ((0 : Nat)) ((_root_.LexLeanRuntime.subtract ((_root_.LexLeanRuntime.length (line) : Nat)) ((1 : Nat)) : Nat))))) (fun _ => (_root_.LexLeanPreservation.conv_var rfl))) - -def __fits_5 (subject : ByteArray) (state : (Prod Nat (Prod Nat (List ByteArray)))) : Bool := - (Bool.true && (let position : Nat := (state).1; (Bool.true && (let start : Nat := ((state).2).1; (Bool.true && (let pieces : (List ByteArray) := ((state).2).2; (((Bool.true && (Bool.true && Bool.true)) && (__fits_8 (subject) (position))) && (match (LexLeanStd.Text.byteAt (subject) (position)) with | Option.some byte => (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal (byte) ((10 : UInt8)) : Bool) then ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((((Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_4 (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))) && Bool.true) && (__fits_9 ((LexLeanStd.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))))) && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) | Option.none => (Bool.true && Bool.true))))))))) - -attribute [local irreducible] LexLeanStd.Text.byteAt LexLeanStd.Text.chomp LexLeanStd.Text.sliceOr in -theorem __rel_5 (subject : ByteArray) (state : (Prod Nat (Prod Nat (List ByteArray)))) : _root_.LexLeanPreservation.FunRel __prog 5 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) state)] (_root_.LexLeanPreservation.Rel (__fits_5 subject state) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (LexLeanStd.Text.lineStep subject state))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (let position : Nat := (state).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (let start : Nat := ((state).2).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl))) (let pieces : (List ByteArray) := ((state).2).2; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl))) (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u8) (fun (__a : (Option UInt8)) => (match __a with | Option.some byte => (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal (byte) ((10 : UInt8)) : Bool) then ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((((Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_4 (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))) && Bool.true) && (__fits_9 ((LexLeanStd.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))))) && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option UInt8)) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (match __a with | Option.some byte => (if (_root_.LexLeanRuntime.equal (byte) ((10 : UInt8)) : Bool) then (Option.some (((position + (1 : Nat)), ((position + (1 : Nat)), ((LexLeanStd.Text.chomp ((LexLeanStd.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat))))) :: pieces)))) : (Option (Prod Nat (Prod Nat (List ByteArray))))) else (Option.some (((position + (1 : Nat)), (start, pieces))) : (Option (Prod Nat (Prod Nat (List ByteArray)))))) | Option.none => (Option.none : (Option (Prod Nat (Prod Nat (List ByteArray))))))) (LexLeanStd.Text.byteAt (subject) (position)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_8 (subject) (position))) (fun (__a : (Option UInt8)) _ => match __a with | Option.some byte => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((((Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_4 (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))) && Bool.true) && (__fits_9 ((LexLeanStd.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))))) && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (if __b then (Option.some (((position + (1 : Nat)), ((position + (1 : Nat)), ((LexLeanStd.Text.chomp ((LexLeanStd.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat))))) :: pieces)))) : (Option (Prod Nat (Prod Nat (List ByteArray))))) else (Option.some (((position + (1 : Nat)), (start, pieces))) : (Option (Prod Nat (Prod Nat (List ByteArray))))))) (_root_.LexLeanRuntime.equal (byte) ((10 : UInt8)) : Bool) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_u8 byte (10 : UInt8))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub position start)) _root_.LexLeanPreservation.convL_nil))) (__rel_4 (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))) _root_.LexLeanPreservation.convL_nil) (__rel_9 ((LexLeanStd.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)))))))) - -def __fits_2 (subject : ByteArray) (state : (Prod Nat (Prod Nat (List ByteArray)))) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && (__fits_5 (subject) (state))) - -attribute [local irreducible] LexLeanStd.Text.lineStep in -theorem __rel_2 (subject : ByteArray) (state : (Prod Nat (Prod Nat (List ByteArray)))) : _root_.LexLeanPreservation.FunRel __prog 2 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) state)] (_root_.LexLeanPreservation.Rel (__fits_2 subject state) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) ((LexLeanStd.Text.lineStep (subject) (state))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_5 (subject) (state))) - -def __fits_7 (reversed : (List ByteArray)) (piece : ByteArray) : Bool := - ((Bool.true && (Bool.true && Bool.true)) && Bool.true) - -theorem __rel_7 (reversed : (List ByteArray)) (piece : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 7 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) reversed), (_root_.LexLeanTarget.TargetSyntax.Value.bytes piece)] (_root_.LexLeanPreservation.Rel (__fits_7 reversed piece) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) ((piece :: reversed)))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) - -def __fits_3 (pieces : (List ByteArray)) : Bool := - ((Bool.true && ((Bool.true && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (List ByteArray)) (__p1 : ByteArray) => __fits_7 __p0 __p1) ((fun (reversed : (List ByteArray)) (piece : ByteArray) => (piece :: reversed))) (([] : List ByteArray)) (pieces))) - -theorem __rel_3 (pieces : (List ByteArray)) : _root_.LexLeanPreservation.FunRel __prog 3 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) pieces)] (_root_.LexLeanPreservation.Rel (__fits_3 pieces) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) (LexLeanStd.Text.reverse pieces))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.bytes) (es := (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun _ => rfl) ((fun (reversed : (List ByteArray)) (piece : ByteArray) => (piece :: reversed))) (fun (__p0 : (List ByteArray)) (__p1 : ByteArray) => __fits_7 __p0 __p1) 7 [] (fun (__p0 : (List ByteArray)) (__p1 : ByteArray) => __rel_7 __p0 __p1) (p := __prog) (fi := 6) (ta := .bytes) (ts := (.list .bytes)) rfl (([] : List ByteArray)) (pieces))) - -def __fits_0 (subject : ByteArray) : Bool := - (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (subject) : Nat) 18446744073709551616)) && (let total : Nat := (_root_.LexLeanRuntime.length (subject) : Nat); ((((Bool.true && Bool.true) && (Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : (Prod Nat (Prod Nat (List ByteArray)))) => __fits_2 (subject) __p0) ((fun (state : (Prod Nat (Prod Nat (List ByteArray)))) => (LexLeanStd.Text.lineStep (subject) (state)))) (total) (((0 : Nat), ((0 : Nat), ([] : List ByteArray)))))) && (let final : (Prod Nat (Prod Nat (List ByteArray))) := ((_root_.LexLeanCollections.iterateUntil ((fun (state : (Prod Nat (Prod Nat (List ByteArray)))) => (LexLeanStd.Text.lineStep (subject) (state)))) (total) (((0 : Nat), ((0 : Nat), ([] : List ByteArray)))) : (Prod (Prod Nat (Prod Nat (List ByteArray))) Bool))).1; (Bool.true && (let start : Nat := ((final).2).1; (Bool.true && (let pieces : (List ByteArray) := ((final).2).2; (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.blt start total) then ((((((Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_4 (subject) (start) ((_root_.LexLeanRuntime.subtract (total) (start) : Nat)))) && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && (__fits_3 (((LexLeanStd.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (total) (start) : Nat))) :: pieces)))) else ((Bool.true && Bool.true) && (__fits_3 (pieces))))))))))))) - -attribute [local irreducible] LexLeanStd.Text.lineStep LexLeanStd.Text.reverse LexLeanStd.Text.sliceOr in -theorem __rel_0 (subject : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject)] (_root_.LexLeanPreservation.Rel (__fits_0 subject) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) (LexLeanStd.Text.lines subject))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (let total : Nat := (_root_.LexLeanRuntime.length (subject) : Nat); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes subject)) (let final : (Prod Nat (Prod Nat (List ByteArray))) := ((_root_.LexLeanCollections.iterateUntil ((fun (state : (Prod Nat (Prod Nat (List ByteArray)))) => (LexLeanStd.Text.lineStep (subject) (state)))) (total) (((0 : Nat), ((0 : Nat), ([] : List ByteArray)))) : (Prod (Prod Nat (Prod Nat (List ByteArray))) Bool))).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterateUntil (es := (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (_root_.LexLeanPreservation.optEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (fun _ => rfl) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) ((fun (state : (Prod Nat (Prod Nat (List ByteArray)))) => (LexLeanStd.Text.lineStep (subject) (state)))) (fun (__p0 : (Prod Nat (Prod Nat (List ByteArray)))) => __fits_2 (subject) __p0) 2 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject)] (fun (__p0 : (Prod Nat (Prod Nat (List ByteArray)))) => __rel_2 (subject) __p0) (_root_.LexLeanCollections.iterateUntil ((fun (state : (Prod Nat (Prod Nat (List ByteArray)))) => (LexLeanStd.Text.lineStep (subject) (state))))) (fun _ => rfl) (fun _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (p := __prog) (fi := 1) (ts := (.pair .nat (.pair .nat (.list .bytes)))) rfl (total) (((0 : Nat), ((0 : Nat), ([] : List ByteArray))))))) (let start : Nat := ((final).2).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl))) (let pieces : (List ByteArray) := ((final).2).2; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((((Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_4 (subject) (start) ((_root_.LexLeanRuntime.subtract (total) (start) : Nat)))) && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && (__fits_3 (((LexLeanStd.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (total) (start) : Nat))) :: pieces)))) else ((Bool.true && Bool.true) && (__fits_3 (pieces))))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) (if __b then (LexLeanStd.Text.reverse (((LexLeanStd.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (total) (start) : Nat))) :: pieces))) else (LexLeanStd.Text.reverse (pieces)))) (Nat.blt start total) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt start total)) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub total start)) _root_.LexLeanPreservation.convL_nil))) (__rel_4 (subject) (start) ((_root_.LexLeanRuntime.subtract (total) (start) : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil) (__rel_3 (((LexLeanStd.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (total) (start) : Nat))) :: pieces))))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_3 (pieces))))))))) - -def denote (subject : ByteArray) : _root_.LexLeanPreservation.Obs := - _root_.cond (__fits_0 subject) (_root_.LexLeanPreservation.Obs.value (((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) (LexLeanStd.Text.lines subject)))) _root_.LexLeanPreservation.Obs.overflow - -theorem root (subject : ByteArray) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject)] (_root_.LexLeanPreservation.Rel (__fits_0 subject) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) (LexLeanStd.Text.lines subject))) := - _root_.LexLeanPreservation.run_of_funRel (__rel_0 subject) - -end LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4 diff --git a/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R4/Compose/RustStd.lex.tex b/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R4/Compose/RustStd.lex.tex deleted file mode 100644 index 158e25055..000000000 --- a/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R4/Compose/RustStd.lex.tex +++ /dev/null @@ -1,419 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4, - LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.Compose.RustStd.root : @829 := @830 { - all: [LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.RustStd.program -@1 := LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.RustStd.krate -@2 := LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.RustStd.flags -@3 := ByteArray -@4 := #1 -@5 := LexLeanTarget.TargetSyntax.Value.bytes -@6 := @5 @4 -@7 := LexLeanTarget.TargetSyntax.Ty.bytes -@8 := LexLeanTarget.TargetSyntax.Program -@9 := LexLeanPreservation.Rust.RCrate -@10 := LexLeanPreservation.Rust.Flags -@11 := LexLeanPreservation.Rust.WT -@12 := #3 -@13 := @11 @12 -@14 := #2 -@16 := @13 @14 @4 -@17 := #0 -@18 := @5 @17 -@24 := {p : @8} -> {c : @9} -> {A : @10} -> (b : @3) -> @16 @18 @7 -@26 := LexLeanPreservation.Rust.wt_bytes @0 -@27 := @11 @0 -@34 := {c : @9} -> {A : @10} -> (b : @3) -> @27 @14 @4 @18 @7 -@35 := @26 @1 -@36 := @27 @1 -@41 := {A : @10} -> (b : @3) -> @36 @4 @18 @7 -@42 := @35 @2 -@43 := @36 @2 -@46 := (b : @3) -> @43 @18 @7 -@47 := @42 @4 -@49 := @43 @6 @7 -@50 := LexLeanTarget.TargetSyntax.Value -@51 := List.nil.{0} -@52 := List.cons.{0} -@53 := @51 @50 -@54 := @52 @50 -@56 := @54 @6 @53 -@57 := Nat -@60 := Prod.{0, 0} @57 @50 -@61 := 0 -@65 := Prod.mk.{0, 0} @57 @50 @61 -@66 := @65 @6 -@67 := @51 @60 -@68 := @52 @60 -@70 := @68 @66 @67 -@71 := Bool.true -@72 := LexLeanTarget.TargetSyntax.Function -@73 := LexLeanTarget.TargetSyntax.Program.functions -@74 := @73 @0 -@75 := LexLeanTarget.TargetSyntax.Ty -@76 := @51 @57 -@77 := @51 @75 -@78 := LexLeanTarget.TargetSyntax.Ty.unit -@79 := LexLeanTarget.TargetSyntax.Value.unit -@82 := LexLeanTarget.TargetSyntax.Expr.value @78 @79 -@87 := LexLeanTarget.TargetSyntax.Function.mk @76 @77 @78 @82 -@92 := List.getD.{0} @72 @74 @61 @87 -@96 := fun (__e_n : @57) => - LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.RustStd.root @17 @61 -@97 := LexLeanPreservation.Rust.WTL -@105 := {p : @8} -> {c : @9} -> {A : @10} -> @97 @14 @4 @17 @53 @77 -@107 := LexLeanPreservation.Rust.wtl_nil @0 -@108 := @97 @0 -@114 := {c : @9} -> {A : @10} -> @108 @4 @17 @53 @77 -@115 := @107 @1 -@116 := @108 @1 -@120 := {A : @10} -> @116 @17 @53 @77 -@121 := @115 @2 -@122 := @116 @2 -@123 := @122 @53 -@124 := @123 @77 -@125 := List.{0} -@126 := @125 @50 -@127 := @125 @75 -@128 := #6 -@129 := @11 @128 -@130 := #5 -@131 := @129 @130 -@132 := #4 -@135 := @131 @132 @12 @14 -@136 := #7 -@141 := @97 @136 @128 @130 @14 @4 -@142 := #8 -@145 := @97 @142 @136 @128 -@147 := @54 @130 @12 -@148 := @145 @147 -@149 := @52 @75 -@151 := @149 @132 @14 -@161 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {v : @50} -> {t : @75} -> {vs : @126} -> {ts : @127} -> (h : @135) -> (hs : @141) -> @148 @151 -@163 := LexLeanPreservation.Rust.wtl_cons @0 -@183 := {c : @9} -> - {A : @10} -> - {v : @50} -> - {t : @75} -> - {vs : @126} -> - {ts : @127} -> - (h : @27 @130 @132 @12 @14) -> (hs : @108 @128 @130 @14 @4) -> @108 @136 @128 @147 @151 -@184 := @163 @1 -@200 := {A : @10} -> - {v : @50} -> - {t : @75} -> - {vs : @126} -> - {ts : @127} -> (h : @36 @132 @12 @14) -> (hs : @116 @130 @14 @4) -> @116 @128 @147 @151 -@201 := @184 @2 -@203 := @43 @12 @14 -@205 := @122 @14 @4 -@213 := {v : @50} -> - {t : @75} -> {vs : @126} -> {ts : @127} -> (h : @203) -> (hs : @205) -> @122 @147 @151 -@214 := @201 @6 -@215 := @5 @132 -@217 := @43 @215 @14 -@218 := @5 @128 -@219 := @54 @218 -@227 := {t : @75} -> {vs : @126} -> {ts : @127} -> (h : @217) -> (hs : @205) -> @122 (@219 @12) @151 -@228 := @214 @7 -@229 := @5 @12 -@231 := @43 @229 @7 -@232 := @5 @130 -@233 := @54 @232 -@235 := @122 (@233 @12) -@236 := @149 @7 -@237 := @236 @14 -@242 := {vs : @126} -> {ts : @127} -> (h : @231) -> (hs : @205) -> @235 @237 -@243 := @228 @53 -@244 := @5 @14 -@246 := @43 @244 @7 -@247 := @123 @4 -@249 := @54 @215 @53 -@250 := @122 @249 -@254 := {ts : @127} -> (h : @246) -> (hs : @247) -> @250 @237 -@255 := @243 @77 -@257 := @54 @229 @53 -@258 := @122 @257 -@259 := @236 @77 -@262 := (h : @49) -> (hs : @124) -> @258 @259 -@263 := @255 @47 -@265 := @54 @244 @53 -@266 := @122 @265 -@268 := (hs : @124) -> @266 @259 -@269 := @263 @121 -@270 := @122 @56 -@271 := @270 @259 -@272 := LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.denote -@273 := @272 @4 -@274 := LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.__fits_0 -@275 := @274 @4 -@277 := LexLeanStd.Text.lines @4 -@281 := LexLeanPreservation.encList @3 @5 @277 -@283 := LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.root @4 -@284 := Bool -@285 := Ne.{1} -@286 := LexLeanPreservation.Obs -@287 := @285 @286 -@288 := LexLeanPreservation.Rel -@291 := @287 (@288 @4 @17) -@292 := LexLeanPreservation.Obs.stuck -@295 := (f : @284) -> (v : @50) -> @291 @292 -@297 := LexLeanPreservation.Rust.rel_ne_stuck @275 -@303 := (v : @50) -> @287 (@288 (@274 @14) @17) @292 -@304 := @297 @281 -@308 := @287 (@288 @275 @281) @292 -@309 := @125 @60 -@310 := LexLeanPreservation.Rust.FunSem -@311 := #9 -@317 := (n : @57) -> @310 @311 @142 @136 @17 @128 -@318 := Eq.{1} -@319 := Option.{0} -@320 := @319 @72 -@321 := @318 @320 -@328 := LexLeanRuntime.index (@125 @72) @72 (LexLeanRuntime.instIndexableList @72) -@332 := @321 (@328 (@73 @311) @128) -@333 := Option.some.{0} -@334 := @333 @72 -@335 := @334 @130 -@336 := @332 @335 -@337 := #10 -@341 := @97 @337 @311 @142 @130 -@342 := LexLeanTarget.TargetSyntax.Function.types -@343 := @342 @128 -@344 := @341 @343 -@345 := @319 @309 -@346 := @318 @345 -@347 := LexLeanTarget.TargetSemantics.bindAll -@348 := LexLeanTarget.TargetSyntax.Function.parameters -@353 := @346 (@347 (@348 @136) @128 @67) -@354 := @333 @309 -@355 := @354 @130 -@356 := @353 @355 -@357 := @319 @284 -@358 := @318 @357 -@359 := LexLeanPreservation.Rust.fnFallible -@360 := #11 -@363 := @358 (@359 @360 @311) -@364 := @333 @284 -@365 := @364 @130 -@366 := @363 @365 -@367 := LexLeanPreservation.RunConv -@368 := #13 -@372 := @367 @368 @337 @142 @130 -@374 := @287 @128 @292 -@375 := Exists.{1} -@376 := LexLeanPreservation.Rust.ROut -@377 := @375 @376 -@378 := And -@379 := LexLeanPreservation.Rust.RealizesFn -@383 := @378 (@379 @311 @142 @17) -@384 := LexLeanPreservation.Rust.RCI -@386 := @384 #15 -@387 := LexLeanPreservation.Rust.fnIdent -@388 := @387 @368 -@395 := (hne : @374) -> @377 (fun (ro : @376) => @383 (@386 @388 @360 @17)) -@410 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {f : @57} -> - {fn : @72} -> - {args : @126} -> - {env : @309} -> - {F : @284} -> - {o : @286} -> - (hB : @317) -> - (hfn : @336) -> (hwt : @344) -> (hbind : @356) -> (hF : @366) -> (hA : @372) -> @395 -@412 := LexLeanPreservation.Rust.compose @0 -@413 := @310 @0 -@418 := (n : @57) -> @413 @142 @136 @17 @128 -@419 := @328 @74 -@422 := @321 (@419 @128) @335 -@426 := @108 @311 @142 @130 @343 -@427 := @367 @0 -@430 := @427 @337 @142 @130 -@444 := {c : @9} -> - {A : @10} -> - {f : @57} -> - {fn : @72} -> - {args : @126} -> - {env : @309} -> - {F : @284} -> - {o : @286} -> - (hB : @418) -> - (hfn : @422) -> (hwt : @426) -> (hbind : @356) -> (hF : @366) -> (hA : @430) -> @395 -@445 := @412 @1 -@446 := @413 @1 -@450 := (n : @57) -> @446 @136 @17 @128 -@453 := @116 @142 @130 @343 -@454 := @359 @1 -@457 := @358 (@454 @311) @365 -@458 := @384 @1 -@468 := (hbind : @356) -> - (hF : @457) -> (hA : @430) -> (hne : @374) -> @377 (fun (ro : @376) => @383 (@458 @388 @360 @17)) -@478 := {A : @10} -> - {f : @57} -> - {fn : @72} -> - {args : @126} -> - {env : @309} -> {F : @284} -> {o : @286} -> (hB : @450) -> (hfn : @422) -> (hwt : @453) -> @468 -@479 := @445 @2 -@481 := @446 @2 @17 -@483 := (n : @57) -> @481 @128 -@484 := @122 @130 -@485 := @484 @343 -@494 := {f : @57} -> - {fn : @72} -> - {args : @126} -> - {env : @309} -> {F : @284} -> {o : @286} -> (hB : @483) -> (hfn : @422) -> (hwt : @485) -> @468 -@495 := @479 @61 -@497 := (n : @57) -> @481 @61 -@498 := @419 @61 -@499 := @321 @498 -@500 := @499 @335 -@501 := @454 @61 -@502 := @358 @501 -@503 := @502 @365 -@504 := @427 @61 -@506 := @504 @142 @130 -@508 := @458 (@387 @61) -@516 := (hF : @503) -> (hA : @506) -> (hne : @374) -> @377 (fun (ro : @376) => @383 (@508 @360 @17)) -@525 := {fn : @72} -> - {args : @126} -> - {env : @309} -> - {F : @284} -> {o : @286} -> (hB : @497) -> (hfn : @500) -> (hwt : @485) -> (hbind : @356) -> @516 -@526 := @495 @92 -@528 := @499 (@334 @92) -@529 := @342 @92 -@530 := @484 @529 -@532 := @347 (@348 @92) -@544 := {args : @126} -> - {env : @309} -> - {F : @284} -> - {o : @286} -> - (hB : @497) -> (hfn : @528) -> (hwt : @530) -> (hbind : @346 (@532 @128 @67) @355) -> @516 -@545 := @526 @56 -@546 := @219 @53 -@548 := @122 @546 @529 -@551 := @54 (@5 @136) @53 -@555 := @346 (@532 @551 @67) @355 -@558 := @54 (@5 @311) @53 -@579 := {env : @309} -> - {F : @284} -> - {o : @286} -> - (hB : @497) -> - (hfn : @528) -> - (hwt : @548) -> - (hbind : @555) -> - (hF : @503) -> - (hA : @504 @558 @130) -> - (hne : @374) -> @377 (fun (ro : @376) => @383 (@508 (@54 (@5 #12) @53) @17)) -@580 := @545 @70 -@581 := @233 @53 -@583 := @122 @581 @529 -@591 := @346 (@532 @546 @67) (@354 (@68 (@65 @218) @67)) -@594 := @54 (@5 @142) @53 -@613 := {F : @284} -> - {o : @286} -> - (hB : @497) -> - (hfn : @528) -> - (hwt : @583) -> - (hbind : @591) -> - (hF : @503) -> - (hA : @504 @594 @130) -> - (hne : @374) -> @377 (fun (ro : @376) => @383 (@508 (@54 (@5 @360) @53) @17)) -@614 := @580 @71 -@615 := @250 @529 -@623 := @346 (@532 @581 @67) (@354 (@68 (@65 @232) @67)) -@625 := @502 (@364 @71) -@627 := @504 @551 @130 -@628 := @379 @71 -@647 := {o : @286} -> - (hB : @497) -> - (hfn : @528) -> - (hwt : @615) -> - (hbind : @623) -> - (hF : @625) -> - (hA : @627) -> - (hne : @374) -> @377 (fun (ro : @376) => @378 (@628 @142 @17) (@508 (@54 (@5 @337) @53) @17)) -@648 := @614 @273 -@649 := @258 @529 -@657 := @346 (@532 @249 @67) (@354 (@68 (@65 @215) @67)) -@658 := @504 @546 -@659 := @272 @128 -@660 := @658 @659 -@661 := @272 @136 -@679 := (hB : @497) -> - (hfn : @528) -> - (hwt : @649) -> - (hbind : @657) -> - (hF : @625) -> - (hA : @660) -> - (hne : @287 @661 @292) -> @377 (fun (ro : @376) => @378 (@628 (@272 @311) @17) (@508 @558 @17)) -@680 := @648 @96 -@681 := @266 @529 -@689 := @346 (@532 @257 @67) (@354 (@68 (@65 @229) @67)) -@690 := @504 @581 -@691 := @272 @130 -@709 := (hfn : @528) -> - (hwt : @681) -> - (hbind : @689) -> - (hF : @625) -> - (hA : @690 @691) -> - (hne : @287 @659 @292) -> @377 (fun (ro : @376) => @378 (@628 (@272 @142) @17) (@508 @594 @17)) -@710 := Eq.refl.{1} -@713 := @680 (@710 @320 @498) -@714 := @270 @529 -@722 := @346 (@532 @265 @67) (@354 (@68 (@65 @244) @67)) -@723 := @504 @249 -@724 := @272 @132 -@740 := (hwt : @714) -> - (hbind : @722) -> - (hF : @625) -> - (hA : @723 @724) -> - (hne : @287 @691 @292) -> @377 (fun (ro : @376) => @378 (@628 @661 @17) (@508 @551 @17)) -@741 := @713 @269 -@743 := @532 @56 @67 -@746 := @346 @743 (@354 @70) -@747 := @504 @257 -@748 := @272 @12 -@763 := (hbind : @746) -> - (hF : @625) -> - (hA : @747 @748) -> - (hne : @287 @724 @292) -> @377 (fun (ro : @376) => @378 (@628 @659 @17) (@508 @546 @17)) -@766 := @741 (@710 @345 @743) -@767 := @504 @265 -@768 := @272 @14 -@782 := (hF : @625) -> - (hA : @767 @768) -> - (hne : @287 @748 @292) -> @377 (fun (ro : @376) => @378 (@628 @691 @17) (@508 @581 @17)) -@785 := @766 (@710 @357 @501) -@799 := (hA : @504 @56 @273) -> - (hne : @287 @768 @292) -> @377 (fun (ro : @376) => @378 (@628 @724 @17) (@508 @249 @17)) -@800 := @785 @283 -@811 := (hne : @287 @273 @292) -> @377 (fun (ro : @376) => @378 (@628 @748 @17) (@508 @257 @17)) -@812 := @800 @304 -@818 := @378 (@628 @768 @17) (@508 @265 @17) -@820 := @377 (fun (ro : @376) => @818) -@822 := @377 (fun (__e_ro : @376) => @818) -@826 := LexLeanPreservation.Rust.RepresentableL (@54 @18 @53) -@827 := (__e_hrep : @826) -> @822 -@828 := fun (__e_hrep : @826) => @812 -@829 := (subject : @3) -> @827 -@830 := fun (subject : @3) => @828 -\end{coremodule} -\end{lexlean} diff --git a/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R4/RustStd.lean b/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R4/RustStd.lean deleted file mode 100644 index a96b1dfd9..000000000 --- a/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R4/RustStd.lean +++ /dev/null @@ -1,117 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0], types := [.bytes], result := (.list .bytes), - body := (.«let» 1 .nat (.prim .length [(.var 0)]) (.«let» 2 (.pair .nat (.pair .nat (.list .bytes))) (.first (.call 1 [(.closure 2 [(.var 0)]), (.var 1), (.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.value .nat (.nat 0)), (.build .pair (.pair .nat (.list .bytes)) [(.value .nat (.nat 0)), (.build .nil (.list .bytes) [])])])])) (.«let» 3 .nat (.first (.second (.var 2))) (.«let» 4 (.list .bytes) (.second (.second (.var 2))) (.cond (.prim .natLt [(.var 3), (.var 1)]) (.call 3 [(.build .cons (.list .bytes) [(.call 4 [(.var 0), (.var 3), (.prim .natSub [(.var 1), (.var 3)])]), (.var 4)])]) (.call 3 [(.var 4)])))))) }, - { parameters := [0, 1, 2], types := [(.fn [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes))))), .nat, (.pair .nat (.pair .nat (.list .bytes)))], result := (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool), - body := (.«match» (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 1 [(.var 0), (.var 3), (.var 4)]))]))]) }, - { parameters := [0, 1], types := [.bytes, (.pair .nat (.pair .nat (.list .bytes)))], result := (.option (.pair .nat (.pair .nat (.list .bytes)))), - body := (.call 5 [(.var 0), (.var 1)]) }, - { parameters := [0], types := [(.list .bytes)], result := (.list .bytes), - body := (.call 6 [(.closure 7 []), (.build .nil (.list .bytes) []), (.var 0)]) }, - { parameters := [0, 1, 2], types := [.bytes, .nat, .nat], result := .bytes, - body := (.«match» .bytes (.prim .slice [(.var 0), (.var 1), (.var 2)]) [(.arm .some [3] (.var 3)), (.arm .none [] (.value .bytes (.bytes (ByteArray.mk #[]))))]) }, - { parameters := [0, 1], types := [.bytes, (.pair .nat (.pair .nat (.list .bytes)))], result := (.option (.pair .nat (.pair .nat (.list .bytes)))), - body := (.«let» 2 .nat (.first (.var 1)) (.«let» 3 .nat (.first (.second (.var 1))) (.«let» 4 (.list .bytes) (.second (.second (.var 1))) (.«match» (.option (.pair .nat (.pair .nat (.list .bytes)))) (.call 8 [(.var 0), (.var 2)]) [(.arm .some [5] (.cond (.prim .equal [(.var 5), (.value (.fixed .u8) (.u8 10))]) (.build .some (.option (.pair .nat (.pair .nat (.list .bytes)))) [(.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.prim .natAdd [(.var 2), (.value .nat (.nat 1))]), (.build .pair (.pair .nat (.list .bytes)) [(.prim .natAdd [(.var 2), (.value .nat (.nat 1))]), (.build .cons (.list .bytes) [(.call 9 [(.call 4 [(.var 0), (.var 3), (.prim .natSub [(.var 2), (.var 3)])])]), (.var 4)])])])]) (.build .some (.option (.pair .nat (.pair .nat (.list .bytes)))) [(.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.prim .natAdd [(.var 2), (.value .nat (.nat 1))]), (.build .pair (.pair .nat (.list .bytes)) [(.var 3), (.var 4)])])]))), (.arm .none [] (.build .none (.option (.pair .nat (.pair .nat (.list .bytes)))) []))])))) }, - { parameters := [0, 1, 2], types := [(.fn [(.list .bytes), .bytes] (.list .bytes)), (.list .bytes), (.list .bytes)], result := (.list .bytes), - body := (.«match» (.list .bytes) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 6 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, - { parameters := [0, 1], types := [(.list .bytes), .bytes], result := (.list .bytes), - body := (.build .cons (.list .bytes) [(.var 1), (.var 0)]) }, - { parameters := [0, 1], types := [.bytes, .nat], result := (.option (.fixed .u8)), - body := (.prim .index [(.var 0), (.var 1)]) }, - { parameters := [0], types := [.bytes], result := .bytes, - body := (.cond (.call 10 [(.var 0), (.value .bytes (.bytes (ByteArray.mk #[13])))]) (.call 4 [(.var 0), (.value .nat (.nat 0)), (.prim .natSub [(.prim .length [(.var 0)]), (.value .nat (.nat 1))])]) (.var 0)) }, - { parameters := [0, 1], types := [.bytes, .bytes], result := .bool, - body := (.«let» 2 .nat (.prim .length [(.var 0)]) (.«let» 3 .nat (.prim .length [(.var 1)]) (.cond (.prim .natLe [(.var 3), (.var 2)]) (.«match» .bool (.prim .slice [(.var 0), (.prim .natSub [(.var 2), (.var 3)]), (.var 3)]) [(.arm .some [4] (.prim .equal [(.var 4), (.var 1)])), (.arm .none [] (.build .false .bool []))]) (.build .false .bool [])))) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.enum (.fn 0) [{ number := 2, fields := [.bytes] }]), - (.apply 0 [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes)))) true [{ function := 2, captures := [.clone], functionFallible := true }]), - (.enum (.fn 1) [{ number := 7, fields := [] }]), - (.apply 1 [(.list .bytes), .bytes] (.list .bytes) false [{ function := 7, captures := [], functionFallible := false }]), - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] (.fallible (.list .bytes)) (.mk [(.mk (.bind (.generated .binding 1)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 1))] false)))), (.mk (.bind (.generated .binding 2)) (some (.pair .nat (.pair .nat (.list .bytes)))) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.call (.function 1) [(.construct (.closure 0 2) [(.clone (.generated .binding 0))]), (.copy (.generated .binding 1)), (.pair (.lit (.nat 0)) (.pair (.lit (.nat 0)) (.construct (.nil .bytes) [])))] true))] (.move (.generated .part 2))))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 4))]) none (.clone (.generated .binding 2)))] (.move (.generated .part 4)))))] (.move (.generated .part 3))))), (.mk (.bind (.generated .binding 4)) (some (.list .bytes)) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 5))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 6))]) none (.move (.generated .binding 2)))] (.move (.generated .part 6)))))] (.move (.generated .part 5))))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false) (.mk [] (.succeed (.call (.function 3) [(.construct .cons [(.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false)))] false), (.move (.generated .binding 4))])] false))) (.mk [] (.succeed (.call (.function 3) [(.move (.generated .binding 4))] false)))))), - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := (.pair .nat (.pair .nat (.list .bytes))) }] (.fallible (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool)) (.mk [(.mk (.bind (.generated .holder 11)) none (.copy (.generated .binding 1)))] (.cond (.isZero (.generated .holder 11)) (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 11))), (.mk (.bind (.generated .holder 13)) none (.block (.mk [(.mk (.bind (.generated .callee 12)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 12) [(.clone (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 1) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))]))))), - (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := (.pair .nat (.pair .nat (.list .bytes))) }] (.fallible (.option (.pair .nat (.pair .nat (.list .bytes))))) (.mk [] (.call (.function 5) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false))), - (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.list .bytes) }] (.list .bytes) (.mk [] (.call (.function 6) [(.construct (.closure 1 7) []), (.construct (.nil .bytes) []), (.move (.generated .binding 0))] false))), - (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := .nat }] .bytes (.mk [(.mk (.bind (.generated .holder 17)) none (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 2)))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 14)), (.move (.generated .operand 15)), (.move (.generated .operand 16))] false))))] (.matchOn (.move (.generated .holder 17)) [(.mk .none (.mk [] (.lit (.bytes (ByteArray.mk #[]))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.move (.generated .binding 3))))]))), - (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := (.pair .nat (.pair .nat (.list .bytes))) }] (.fallible (.option (.pair .nat (.pair .nat (.list .bytes))))) (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 18)), .wild]) none (.clone (.generated .binding 1)))] (.move (.generated .part 18))))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 19)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 20))]) none (.clone (.generated .binding 1)))] (.move (.generated .part 20)))))] (.move (.generated .part 19))))), (.mk (.bind (.generated .binding 4)) (some (.list .bytes)) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 21))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 22))]) none (.move (.generated .binding 1)))] (.move (.generated .part 22)))))] (.move (.generated .part 21))))), (.mk (.bind (.generated .holder 23)) none (.call (.function 8) [(.clone (.generated .binding 0)), (.copy (.generated .binding 2))] false))] (.matchOn (.move (.generated .holder 23)) [(.mk .none (.mk [] (.succeed (.construct (.none (.pair .nat (.pair .nat (.list .bytes)))) [])))), (.mk (.some (.bind (.generated .binding 5))) (.mk [(.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 5))), (.mk (.bind (.generated .operand 25)) none (.lit (.fixed .u8 10)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 24)), (.move (.generated .operand 25))] false) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] true))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 28)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 29)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 28)), (.move (.generated .operand 29))] true))) (.construct .cons [(.call (.function 9) [(.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.block (.mk [(.mk (.bind (.generated .operand 30)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 31)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] false)))] false)] false), (.move (.generated .binding 4))])))]))) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 33)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] true))) (.pair (.copy (.generated .binding 3)) (.move (.generated .binding 4))))]))))))]))), - (.function (.generated .function 6) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 1) }, { pattern := (.bind (.generated .binding 1)), type := (.list .bytes) }, { pattern := (.bind (.generated .binding 2)), type := (.list .bytes) }] (.list .bytes) (.mk [(.mk (.bind (.generated .holder 34)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 34)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 6) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 35)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 35) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]))), - (.function (.generated .function 7) [{ pattern := (.bind (.generated .binding 0)), type := (.list .bytes) }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] (.list .bytes) (.mk [] (.construct .cons [(.move (.generated .binding 1)), (.move (.generated .binding 0))]))), - (.function (.generated .function 8) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.option (.fixed .u8)) (.mk [(.mk (.bind (.generated .operand 36)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 37)) none (.copy (.generated .binding 1)))] (.call (.runtime .indexBytes) [(.move (.generated .operand 36)), (.move (.generated .operand 37))] false))), - (.function (.generated .function 9) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] .bytes (.mk [] (.cond (.call (.function 10) [(.clone (.generated .binding 0)), (.lit (.bytes (ByteArray.mk #[13])))] false) (.mk [] (.call (.function 4) [(.clone (.generated .binding 0)), (.lit (.nat 0)), (.block (.mk [(.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.bind (.generated .operand 38)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 38))] false)))), (.mk (.bind (.generated .operand 40)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] false)))] false)) (.mk [] (.move (.generated .binding 0)))))), - (.function (.generated .function 10) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] .bool (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 41)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 41))] false)))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 42)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 42))] false)))), (.mk (.bind (.generated .operand 43)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 44)) none (.copy (.generated .binding 2)))] (.cond (.call (.runtime .natLe) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] false) (.mk [(.mk (.bind (.generated .holder 50)) none (.block (.mk [(.mk (.bind (.generated .operand 47)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 48)) none (.block (.mk [(.mk (.bind (.generated .operand 45)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 46)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 45)), (.move (.generated .operand 46))] false)))), (.mk (.bind (.generated .operand 49)) none (.copy (.generated .binding 3)))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 47)), (.move (.generated .operand 48)), (.move (.generated .operand 49))] false))))] (.matchOn (.move (.generated .holder 50)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.bind (.generated .binding 4))) (.mk [(.mk (.bind (.generated .operand 51)) none (.move (.generated .binding 4))), (.mk (.bind (.generated .operand 52)) none (.move (.generated .binding 1)))] (.call (.runtime .equal) [(.move (.generated .operand 51)), (.move (.generated .operand 52))] false)))])) (.mk [] (.lit (.bool false))))))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [(([(.pair .nat (.pair .nat (.list .bytes)))], (.option (.pair .nat (.pair .nat (.list .bytes))))), true), (([(.list .bytes), .bytes], (.list .bytes)), false)] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 1))] false)))), (.mk (.bind (.generated .binding 2)) (some (.pair .nat (.pair .nat (.list .bytes)))) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.call (.function 1) [(.construct (.closure 0 2) [(.clone (.generated .binding 0))]), (.copy (.generated .binding 1)), (.pair (.lit (.nat 0)) (.pair (.lit (.nat 0)) (.construct (.nil .bytes) [])))] true))] (.move (.generated .part 2))))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 4))]) none (.clone (.generated .binding 2)))] (.move (.generated .part 4)))))] (.move (.generated .part 3))))), (.mk (.bind (.generated .binding 4)) (some (.list .bytes)) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 5))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 6))]) none (.move (.generated .binding 2)))] (.move (.generated .part 6)))))] (.move (.generated .part 5))))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1)))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false) (.mk [] (.succeed (.call (.function 3) [(.construct .cons [(.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false)))] false), (.move (.generated .binding 4))])] false))) (.mk [] (.succeed (.call (.function 3) [(.move (.generated .binding 4))] false)))), [(0, .bytes, (some 0))], rfl, rfl, - (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 1))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.call (.function 1) [(.construct (.closure 0 2) [(.clone (.generated .binding 0))]), (.copy (.generated .binding 1)), (.pair (.lit (.nat 0)) (.pair (.lit (.nat 0)) (.construct (.nil .bytes) [])))] true))]) (tail := (.move (.generated .part 2))) (Corr.first (ta := (.pair .nat (.pair .nat (.list .bytes)))) (tb := .bool) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes))))), .nat, (.pair .nat (.pair .nat (.list .bytes)))]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [.bytes]) (mask := [false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 4))]) none (.clone (.generated .binding 2)))] (.move (.generated .part 4)))))]) (tail := (.move (.generated .part 3))) (Corr.first (ta := .nat) (tb := (.list .bytes)) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 4))]) none (.clone (.generated .binding 2)))]) (tail := (.move (.generated .part 4))) (Corr.second (ta := .nat) (tb := (.pair .nat (.list .bytes))) (Corr.var rfl rfl) rfl)) rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 5))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 6))]) none (.move (.generated .binding 2)))] (.move (.generated .part 6)))))]) (tail := (.move (.generated .part 5))) (Corr.second (ta := .nat) (tb := (.list .bytes)) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 6))]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 6))) (Corr.second (ta := .nat) (tb := (.pair .nat (.list .bytes))) (Corr.var rfl rfl) rfl)) rfl)) rfl (Corr.cond (lc := [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.call (.function 3) [(.construct .cons [(.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false)))] false), (.move (.generated .binding 4))])] false))) (lb := []) (tb := (.succeed (.call (.function 3) [(.move (.generated .binding 4))] false))) (Corr.fOfB (Corr.callOps (ts := [(.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.bytes, (.list .bytes)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 3)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.fOfB (Corr.callOps (ts := [(.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))))))))⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 11)) none (.copy (.generated .binding 1)))], (.cond (.isZero (.generated .holder 11)) (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 11))), (.mk (.bind (.generated .holder 13)) none (.block (.mk [(.mk (.bind (.generated .callee 12)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 12) [(.clone (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 1) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))]))), [(2, (.pair .nat (.pair .nat (.list .bytes))), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes))))), (some 0))], rfl, rfl, - (Corr.matchNat (sl := (some 3)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (lb := [(.mk (.bind (.generated .holder 13)) none (.block (.mk [(.mk (.bind (.generated .callee 12)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 12) [(.clone (.generated .binding 2))] true))))]) (tb := (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 1) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))])) (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))))) (Corr.matchArms (st := (.option (.pair .nat (.pair .nat (.list .bytes))))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 12)) (some (.fn 0)) (.clone (.generated .binding 0)))]) (tail := (.apply (.generated .callee 12) [(.clone (.generated .binding 2))] true)) (Corr.apply (ps := [(.pair .nat (.pair .nat (.list .bytes)))]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (2, (.pair .nat (.pair .nat (.list .bytes))), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes))))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true))))) (Corr.mCons (Γ' := [(4, (.pair .nat (.pair .nat (.list .bytes))), (some 4)), (3, .nat, (some 3)), (2, (.pair .nat (.pair .nat (.list .bytes))), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes))))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 1) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes))))), .nat, (.pair .nat (.pair .nat (.list .bytes)))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))))))) rfl rfl rfl)))⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 5) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false), [(1, (.pair .nat (.pair .nat (.list .bytes))), (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.callF (ts := [.bytes, (.pair .nat (.pair .nat (.list .bytes)))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)⟩⟩ - -theorem fun3 : FunOK program krate flags 3 := - ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 6) [(.construct (.closure 1 7) []), (.construct (.nil .bytes) []), (.move (.generated .binding 0))] false), [(0, (.list .bytes), (some 0))], rfl, rfl, - (Corr.callOps (ts := [(.fn [(.list .bytes), .bytes] (.list .bytes)), (.list .bytes), (.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := false) (ff := false) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun4 : FunOK program krate flags 4 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 17)) none (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 2)))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 14)), (.move (.generated .operand 15)), (.move (.generated .operand 16))] false))))], (.matchOn (.move (.generated .holder 17)) [(.mk .none (.mk [] (.lit (.bytes (ByteArray.mk #[]))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.move (.generated .binding 3))))]), [(2, .nat, (some 2)), (1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 14)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .sliceBytes) [(.move (.generated .operand 14)), (.move (.generated .operand 15)), (.move (.generated .operand 16))] false)) (Corr.prim (ts := [.bytes, .nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, .nat, (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bytes (ByteArray.mk #[])))) (Corr.mCons (Γ' := [(3, .bytes, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 3))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.bOfE (Corr.value rfl rfl))) rfl rfl rfl)⟩⟩ - -theorem fun5 : FunOK program krate flags 5 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 18)), .wild]) none (.clone (.generated .binding 1)))] (.move (.generated .part 18))))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 19)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 20))]) none (.clone (.generated .binding 1)))] (.move (.generated .part 20)))))] (.move (.generated .part 19))))), (.mk (.bind (.generated .binding 4)) (some (.list .bytes)) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 21))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 22))]) none (.move (.generated .binding 1)))] (.move (.generated .part 22)))))] (.move (.generated .part 21))))), (.mk (.bind (.generated .holder 23)) none (.call (.function 8) [(.clone (.generated .binding 0)), (.copy (.generated .binding 2))] false))], (.matchOn (.move (.generated .holder 23)) [(.mk .none (.mk [] (.succeed (.construct (.none (.pair .nat (.pair .nat (.list .bytes)))) [])))), (.mk (.some (.bind (.generated .binding 5))) (.mk [(.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 5))), (.mk (.bind (.generated .operand 25)) none (.lit (.fixed .u8 10)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 24)), (.move (.generated .operand 25))] false) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] true))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 28)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 29)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 28)), (.move (.generated .operand 29))] true))) (.construct .cons [(.call (.function 9) [(.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.block (.mk [(.mk (.bind (.generated .operand 30)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 31)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] false)))] false)] false), (.move (.generated .binding 4))])))]))) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 33)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] true))) (.pair (.copy (.generated .binding 3)) (.move (.generated .binding 4))))]))))))]), [(1, (.pair .nat (.pair .nat (.list .bytes))), (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 18)), .wild]) none (.clone (.generated .binding 1)))]) (tail := (.move (.generated .part 18))) (Corr.first (ta := .nat) (tb := (.pair .nat (.list .bytes))) (Corr.var rfl rfl) rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 19)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 20))]) none (.clone (.generated .binding 1)))] (.move (.generated .part 20)))))]) (tail := (.move (.generated .part 19))) (Corr.first (ta := .nat) (tb := (.list .bytes)) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 20))]) none (.clone (.generated .binding 1)))]) (tail := (.move (.generated .part 20))) (Corr.second (ta := .nat) (tb := (.pair .nat (.list .bytes))) (Corr.var rfl rfl) rfl)) rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 21))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 22))]) none (.move (.generated .binding 1)))] (.move (.generated .part 22)))))]) (tail := (.move (.generated .part 21))) (Corr.second (ta := .nat) (tb := (.list .bytes)) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 22))]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 22))) (Corr.second (ta := .nat) (tb := (.pair .nat (.list .bytes))) (Corr.var rfl rfl) rfl)) rfl)) rfl (Corr.matchArms (st := (.option (.fixed .u8))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.list .bytes), (some 4)), (3, .nat, (some 3)), (2, .nat, (some 2)), (1, (.pair .nat (.pair .nat (.list .bytes))), (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.construct (.none (.pair .nat (.pair .nat (.list .bytes)))) []))) (Corr.mCons (Γ' := [(5, (.fixed .u8), (some 5)), (4, (.list .bytes), (some 4)), (3, .nat, (some 3)), (2, .nat, (some 2)), (1, (.pair .nat (.pair .nat (.list .bytes))), (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 5))), (.mk (.bind (.generated .operand 25)) none (.lit (.fixed .u8 10)))]) (tail := (.cond (.call (.runtime .equal) [(.move (.generated .operand 24)), (.move (.generated .operand 25))] false) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] true))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 28)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 29)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 28)), (.move (.generated .operand 29))] true))) (.construct .cons [(.call (.function 9) [(.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.block (.mk [(.mk (.bind (.generated .operand 30)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 31)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] false)))] false)] false), (.move (.generated .binding 4))])))]))) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 33)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] true))) (.pair (.copy (.generated .binding 3)) (.move (.generated .binding 4))))]))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 5))), (.mk (.bind (.generated .operand 25)) none (.lit (.fixed .u8 10)))]) (ce := (.call (.runtime .equal) [(.move (.generated .operand 24)), (.move (.generated .operand 25))] false)) (lk := []) (Corr.prim (ts := [(.fixed .u8), (.fixed .u8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] true))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 28)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 29)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 28)), (.move (.generated .operand 29))] true))) (.construct .cons [(.call (.function 9) [(.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.block (.mk [(.mk (.bind (.generated .operand 30)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 31)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] false)))] false)] false), (.move (.generated .binding 4))])))]))) (lb := []) (tb := (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 33)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] true))) (.pair (.copy (.generated .binding 3)) (.move (.generated .binding 4))))]))) (Corr.fOfB (Corr.build (ts := [(.pair .nat (.pair .nat (.list .bytes)))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 28)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 29)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 28)), (.move (.generated .operand 29))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.bytes, (.list .bytes)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 30)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 31)) none (.copy (.generated .binding 3)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := [(.pair .nat (.pair .nat (.list .bytes)))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 33)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil))) rfl))))) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl))))⟩⟩ - -theorem fun6 : FunOK program krate flags 6 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 34)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 34)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 6) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 35)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 35) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]), [(2, (.list .bytes), (some 2)), (1, (.list .bytes), (some 1)), (0, (.fn [(.list .bytes), .bytes] (.list .bytes)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .bytes)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .bytes), (some 2)), (1, (.list .bytes), (some 1)), (0, (.fn [(.list .bytes), .bytes] (.list .bytes)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 1))) (Corr.mCons (Γ' := [(4, (.list .bytes), (some 4)), (3, .bytes, (some 3)), (2, (.list .bytes), (some 2)), (1, (.list .bytes), (some 1)), (0, (.fn [(.list .bytes), .bytes] (.list .bytes)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 6) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 35)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 35) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.fn [(.list .bytes), .bytes] (.list .bytes)), (.list .bytes), (.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 35)) (some (.fn 1)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 35) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false)) (Corr.apply (ps := [(.list .bytes), .bytes]) (af := false) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ - -theorem fun7 : FunOK program krate flags 7 := - ⟨_, rfl, .inl ⟨_, _, [], (.construct .cons [(.move (.generated .binding 1)), (.move (.generated .binding 0))]), [(1, .bytes, (some 1)), (0, (.list .bytes), (some 0))], rfl, rfl, - (Corr.build (ts := [.bytes, (.list .bytes)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)⟩⟩ - -theorem fun8 : FunOK program krate flags 8 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 36)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 37)) none (.copy (.generated .binding 1)))], (.call (.runtime .indexBytes) [(.move (.generated .operand 36)), (.move (.generated .operand 37))] false), [(1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.prim (ts := [.bytes, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ - -theorem fun9 : FunOK program krate flags 9 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 10) [(.clone (.generated .binding 0)), (.lit (.bytes (ByteArray.mk #[13])))] false) (.mk [] (.call (.function 4) [(.clone (.generated .binding 0)), (.lit (.nat 0)), (.block (.mk [(.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.bind (.generated .operand 38)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 38))] false)))), (.mk (.bind (.generated .operand 40)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] false)))] false)) (.mk [] (.move (.generated .binding 0)))), [(0, .bytes, (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 10) [(.clone (.generated .binding 0)), (.lit (.bytes (ByteArray.mk #[13])))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 4) [(.clone (.generated .binding 0)), (.lit (.nat 0)), (.block (.mk [(.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.bind (.generated .operand 38)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 38))] false)))), (.mk (.bind (.generated .operand 40)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] false)))] false)) (lb := []) (tb := (.move (.generated .binding 0))) (Corr.callOps (ts := [.bytes, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.bind (.generated .operand 38)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 38))] false)))), (.mk (.bind (.generated .operand 40)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 38)) none (.move (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 38))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.var rfl rfl))))⟩⟩ - -theorem fun10 : FunOK program krate flags 10 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 41)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 41))] false)))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 42)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 42))] false)))), (.mk (.bind (.generated .operand 43)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 44)) none (.copy (.generated .binding 2)))], (.cond (.call (.runtime .natLe) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] false) (.mk [(.mk (.bind (.generated .holder 50)) none (.block (.mk [(.mk (.bind (.generated .operand 47)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 48)) none (.block (.mk [(.mk (.bind (.generated .operand 45)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 46)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 45)), (.move (.generated .operand 46))] false)))), (.mk (.bind (.generated .operand 49)) none (.copy (.generated .binding 3)))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 47)), (.move (.generated .operand 48)), (.move (.generated .operand 49))] false))))] (.matchOn (.move (.generated .holder 50)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.bind (.generated .binding 4))) (.mk [(.mk (.bind (.generated .operand 51)) none (.move (.generated .binding 4))), (.mk (.bind (.generated .operand 52)) none (.move (.generated .binding 1)))] (.call (.runtime .equal) [(.move (.generated .operand 51)), (.move (.generated .operand 52))] false)))])) (.mk [] (.lit (.bool false)))), [(1, .bytes, (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 41)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 41))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 42)) none (.clone (.generated .binding 1)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 42))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := [(.mk (.bind (.generated .operand 43)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 44)) none (.copy (.generated .binding 2)))]) (ce := (.call (.runtime .natLe) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .holder 50)) none (.block (.mk [(.mk (.bind (.generated .operand 47)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 48)) none (.block (.mk [(.mk (.bind (.generated .operand 45)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 46)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 45)), (.move (.generated .operand 46))] false)))), (.mk (.bind (.generated .operand 49)) none (.copy (.generated .binding 3)))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 47)), (.move (.generated .operand 48)), (.move (.generated .operand 49))] false))))]) (ta := (.matchOn (.move (.generated .holder 50)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.bind (.generated .binding 4))) (.mk [(.mk (.bind (.generated .operand 51)) none (.move (.generated .binding 4))), (.mk (.bind (.generated .operand 52)) none (.move (.generated .binding 1)))] (.call (.runtime .equal) [(.move (.generated .operand 51)), (.move (.generated .operand 52))] false)))])) (lb := []) (tb := (.lit (.bool false))) (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 47)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 48)) none (.block (.mk [(.mk (.bind (.generated .operand 45)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 46)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 45)), (.move (.generated .operand 46))] false)))), (.mk (.bind (.generated .operand 49)) none (.copy (.generated .binding 3)))]) (tail := (.call (.runtime .sliceBytes) [(.move (.generated .operand 47)), (.move (.generated .operand 48)), (.move (.generated .operand 49))] false)) (Corr.prim (ts := [.bytes, .nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 45)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 46)) none (.copy (.generated .binding 3)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 45)), (.move (.generated .operand 46))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (2, .nat, (some 2)), (1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, .bytes, (some 4)), (3, .nat, (some 3)), (2, .nat, (some 2)), (1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .operand 51)) none (.move (.generated .binding 4))), (.mk (.bind (.generated .operand 52)) none (.move (.generated .binding 1)))]) (tail := (.call (.runtime .equal) [(.move (.generated .operand 51)), (.move (.generated .operand 52))] false)) (Corr.mNil) rfl rfl rfl (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))))⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | 3 => exact fun3 - | 4 => exact fun4 - | 5 => exact fun5 - | 6 => exact fun6 - | 7 => exact fun7 - | 8 => exact fun8 - | 9 => exact fun9 - | 10 => exact fun10 - | _ + 11 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.RustStd diff --git a/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R5.lean b/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R5.lean deleted file mode 100644 index f8ef8912c..000000000 --- a/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R5.lean +++ /dev/null @@ -1,43 +0,0 @@ -import LexLeanPreservation.Core -import LexLeanPreservation.Values -import LexLeanPreservation.Primitives -import LexLeanPreservation.Fixed -import LexLeanPreservation.Keys -import LexLeanPreservation.Templates -import LexLeanPreservation.Validate -import LexLeanStd.Text -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -set_option linter.unusedVariables false -namespace LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5 - -def __prog : _root_.LexLeanTarget.TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1], types := [(.list .bytes), .bytes], result := .bytes, - body := (.«match» .bytes (.call 1 [(.closure 2 [(.var 1)]), (.build .none (.option .bytes) []), (.var 0)]) [(.arm .some [2] (.var 2)), (.arm .none [] (.value .bytes (.bytes (ByteArray.mk #[]))))]) }, - { parameters := [0, 1, 2], types := [(.fn [(.option .bytes), .bytes] (.option .bytes)), (.option .bytes), (.list .bytes)], result := (.option .bytes), - body := (.«match» (.option .bytes) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 1 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, - { parameters := [0, 1, 2], types := [.bytes, (.option .bytes), .bytes], result := (.option .bytes), - body := (.«match» (.option .bytes) (.var 1) [(.arm .none [] (.build .some (.option .bytes) [(.var 2)])), (.arm .some [3] (.build .some (.option .bytes) [(.prim .append [(.prim .append [(.var 3), (.var 0)]), (.var 2)])]))]) }] } - -def __fits_2 (separator : ByteArray) (joined : (Option ByteArray)) (piece : ByteArray) : Bool := - (Bool.true && (match joined with | Option.none => ((Bool.true && Bool.true) && Bool.true) | Option.some sofar => ((((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) - -theorem __rel_2 (separator : ByteArray) (joined : (Option ByteArray)) (piece : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 2 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes separator), ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) joined), (_root_.LexLeanTarget.TargetSyntax.Value.bytes piece)] (_root_.LexLeanPreservation.Rel (__fits_2 separator joined piece) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) ((match joined with | Option.none => (Option.some (piece) : (Option ByteArray)) | Option.some sofar => (Option.some ((_root_.LexLeanRuntime.append ((_root_.LexLeanRuntime.append (sofar) (separator) : ByteArray)) (piece) : ByteArray)) : (Option ByteArray)))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.none => ((Bool.true && Bool.true) && Bool.true) | Option.some sofar => ((((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__a : (Option ByteArray)) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (match __a with | Option.none => (Option.some (piece) : (Option ByteArray)) | Option.some sofar => (Option.some ((_root_.LexLeanRuntime.append ((_root_.LexLeanRuntime.append (sofar) (separator) : ByteArray)) (piece) : ByteArray)) : (Option ByteArray)))) joined (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (Option ByteArray)) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.some sofar => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_bytes sofar separator)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_bytes (_root_.LexLeanRuntime.append (sofar) (separator) : ByteArray) piece)) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some))))) - -def __fits_0 (pieces : (List ByteArray)) (separator : ByteArray) : Bool := - ((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Option ByteArray)) (__p1 : ByteArray) => __fits_2 (separator) __p0 __p1) ((fun (joined : (Option ByteArray)) (piece : ByteArray) => (match joined with | Option.none => (Option.some (piece) : (Option ByteArray)) | Option.some sofar => (Option.some ((_root_.LexLeanRuntime.append ((_root_.LexLeanRuntime.append (sofar) (separator) : ByteArray)) (piece) : ByteArray)) : (Option ByteArray))))) ((Option.none : (Option ByteArray))) (pieces))) && (match (_root_.LexLeanCollections.listFold ((fun (joined : (Option ByteArray)) (piece : ByteArray) => (match joined with | Option.none => (Option.some (piece) : (Option ByteArray)) | Option.some sofar => (Option.some ((_root_.LexLeanRuntime.append ((_root_.LexLeanRuntime.append (sofar) (separator) : ByteArray)) (piece) : ByteArray)) : (Option ByteArray))))) ((Option.none : (Option ByteArray))) (pieces) : (Option ByteArray)) with | Option.some joined => Bool.true | Option.none => Bool.true)) - -theorem __rel_0 (pieces : (List ByteArray)) (separator : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 0 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) pieces), (_root_.LexLeanTarget.TargetSyntax.Value.bytes separator)] (_root_.LexLeanPreservation.Rel (__fits_0 pieces separator) (_root_.LexLeanTarget.TargetSyntax.Value.bytes (LexLeanStd.Text.joinWith pieces separator))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.some joined => Bool.true | Option.none => Bool.true)) (fun (__a : (Option ByteArray)) => _root_.LexLeanTarget.TargetSyntax.Value.bytes (match __a with | Option.some joined => joined | Option.none => (ByteArray.mk #[]))) (_root_.LexLeanCollections.listFold ((fun (joined : (Option ByteArray)) (piece : ByteArray) => (match joined with | Option.none => (Option.some (piece) : (Option ByteArray)) | Option.some sofar => (Option.some ((_root_.LexLeanRuntime.append ((_root_.LexLeanRuntime.append (sofar) (separator) : ByteArray)) (piece) : ByteArray)) : (Option ByteArray))))) ((Option.none : (Option ByteArray))) (pieces) : (Option ByteArray)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.bytes) (es := (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun _ => rfl) ((fun (joined : (Option ByteArray)) (piece : ByteArray) => (match joined with | Option.none => (Option.some (piece) : (Option ByteArray)) | Option.some sofar => (Option.some ((_root_.LexLeanRuntime.append ((_root_.LexLeanRuntime.append (sofar) (separator) : ByteArray)) (piece) : ByteArray)) : (Option ByteArray))))) (fun (__p0 : (Option ByteArray)) (__p1 : ByteArray) => __fits_2 (separator) __p0 __p1) 2 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes separator)] (fun (__p0 : (Option ByteArray)) (__p1 : ByteArray) => __rel_2 (separator) __p0 __p1) (p := __prog) (fi := 1) (ta := .bytes) (ts := (.option .bytes)) rfl ((Option.none : (Option ByteArray))) (pieces))) (fun (__a : (Option ByteArray)) _ => match __a with | Option.some joined => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value)))) - -def denote (pieces : (List ByteArray)) (separator : ByteArray) : _root_.LexLeanPreservation.Obs := - _root_.cond (__fits_0 pieces separator) (_root_.LexLeanPreservation.Obs.value ((_root_.LexLeanTarget.TargetSyntax.Value.bytes (LexLeanStd.Text.joinWith pieces separator)))) _root_.LexLeanPreservation.Obs.overflow - -theorem root (pieces : (List ByteArray)) (separator : ByteArray) : _root_.LexLeanPreservation.RunConv __prog 0 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) pieces), (_root_.LexLeanTarget.TargetSyntax.Value.bytes separator)] (_root_.LexLeanPreservation.Rel (__fits_0 pieces separator) (_root_.LexLeanTarget.TargetSyntax.Value.bytes (LexLeanStd.Text.joinWith pieces separator))) := - _root_.LexLeanPreservation.run_of_funRel (__rel_0 pieces separator) - -end LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5 diff --git a/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R5/Compose/RustStd.lex.tex b/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R5/Compose/RustStd.lex.tex deleted file mode 100644 index d1956bdd9..000000000 --- a/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R5/Compose/RustStd.lex.tex +++ /dev/null @@ -1,513 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5, - LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.Compose.RustStd.root : @1046 := @1047 { - all: [LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.RustStd.program -@1 := LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.RustStd.krate -@2 := LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.RustStd.flags -@3 := ByteArray -@4 := List.{0} -@5 := @4 @3 -@6 := #2 -@7 := LexLeanTarget.TargetSyntax.Value.bytes -@8 := LexLeanPreservation.encList -@9 := @8 @3 -@10 := @9 @7 -@11 := @10 @6 -@12 := LexLeanTarget.TargetSyntax.Ty.bytes -@13 := LexLeanTarget.TargetSyntax.Ty.list -@14 := @13 @12 -@15 := #0 -@16 := LexLeanTarget.TargetSyntax.Program -@17 := LexLeanPreservation.Rust.RCrate -@18 := LexLeanPreservation.Rust.Flags -@19 := LexLeanPreservation.Rust.WT -@20 := #3 -@22 := @19 @20 @6 -@23 := #1 -@24 := @22 @23 -@25 := @7 @15 -@31 := {p : @16} -> {c : @17} -> {A : @18} -> (b : @3) -> @24 @25 @12 -@33 := LexLeanPreservation.Rust.wt_bytes @0 -@34 := @19 @0 -@41 := {c : @17} -> {A : @18} -> (b : @3) -> @34 @6 @23 @25 @12 -@42 := @33 @1 -@43 := @34 @1 -@48 := {A : @18} -> (b : @3) -> @43 @23 @25 @12 -@49 := @42 @2 -@50 := @43 @2 -@51 := @50 @25 -@52 := @51 @12 -@53 := (b : @3) -> @52 -@55 := fun (__x : @3) => @49 @15 -@56 := Sort 1 -@57 := LexLeanTarget.TargetSyntax.Value -@58 := (a._@._internal._hyg.#0 : @15) -> @57 -@59 := LexLeanTarget.TargetSyntax.Ty -@60 := #6 -@61 := @19 @60 -@62 := #5 -@63 := @61 @62 -@64 := #4 -@65 := @63 @64 -@66 := @6 @15 -@69 := (x : @6) -> @65 @66 @23 -@70 := @4 @20 -@71 := #7 -@74 := @19 @71 @60 @62 -@77 := @8 @64 @20 @15 -@78 := @74 @77 -@79 := @13 @6 -@88 := {p : @16} -> - {c : @17} -> - {A : @18} -> {α : @56} -> {e : @58} -> {t : @59} -> (h : @69) -> (xs : @70) -> @78 @79 -@90 := LexLeanPreservation.Rust.wt_encList @0 -@92 := @34 @62 @64 -@106 := {c : @17} -> - {A : @18} -> - {α : @56} -> - {e : @58} -> {t : @59} -> (h : (x : @6) -> @92 @66 @23) -> (xs : @70) -> @34 @60 @62 @77 @79 -@107 := @90 @1 -@108 := @43 @64 -@120 := {A : @18} -> - {α : @56} -> - {e : @58} -> {t : @59} -> (h : (x : @6) -> @108 @66 @23) -> (xs : @70) -> @43 @62 @77 @79 -@121 := @107 @2 -@123 := @50 @66 @23 -@131 := {α : @56} -> {e : @58} -> {t : @59} -> (h : (x : @6) -> @123) -> (xs : @70) -> @50 @77 @79 -@132 := @121 @3 -@142 := {e : (a._@._internal._hyg.#0 : @3) -> @57} -> - {t : @59} -> (h : (x : @3) -> @123) -> (xs : @5) -> @50 (@9 @20 @15) @79 -@143 := @132 @7 -@145 := (x : @3) -> @51 @23 -@147 := @50 (@10 @15) -@151 := {t : @59} -> (h : @145) -> (xs : @5) -> @147 @79 -@152 := @143 @12 -@156 := (h : (x : @3) -> @52) -> (xs : @5) -> @147 @14 -@158 := @152 @55 @6 -@160 := @50 @11 @14 -@161 := @7 @23 -@162 := @49 @23 -@164 := @50 @161 @12 -@165 := List.nil.{0} -@166 := List.cons.{0} -@167 := @165 @57 -@168 := @166 @57 -@170 := @168 @161 @167 -@172 := @168 @11 @170 -@173 := Nat -@176 := Prod.{0, 0} @173 @57 -@177 := 1 -@180 := Prod.mk.{0, 0} @173 @57 -@181 := @180 @177 -@182 := @181 @161 -@183 := 0 -@184 := @180 @183 -@185 := @184 @11 -@186 := @165 @176 -@187 := @166 @176 -@189 := @187 @185 @186 -@191 := @187 @182 @189 -@192 := Bool.false -@193 := LexLeanTarget.TargetSyntax.Function -@194 := LexLeanTarget.TargetSyntax.Program.functions -@195 := @194 @0 -@196 := @165 @173 -@197 := @165 @59 -@198 := LexLeanTarget.TargetSyntax.Ty.unit -@199 := LexLeanTarget.TargetSyntax.Value.unit -@202 := LexLeanTarget.TargetSyntax.Expr.value @198 @199 -@207 := LexLeanTarget.TargetSyntax.Function.mk @196 @197 @198 @202 -@212 := List.getD.{0} @193 @195 @183 @207 -@216 := fun (__e_n : @173) => - LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.RustStd.root @15 @183 -@217 := LexLeanPreservation.Rust.WTL -@225 := {p : @16} -> {c : @17} -> {A : @18} -> @217 @6 @23 @15 @167 @197 -@227 := LexLeanPreservation.Rust.wtl_nil @0 -@228 := @217 @0 -@234 := {c : @17} -> {A : @18} -> @228 @23 @15 @167 @197 -@235 := @227 @1 -@236 := @228 @1 -@240 := {A : @18} -> @236 @15 @167 @197 -@241 := @235 @2 -@242 := @236 @2 -@243 := @242 @167 -@244 := @243 @197 -@245 := @4 @57 -@246 := @4 @59 -@248 := @65 @20 @6 -@253 := @217 @71 @60 @62 @6 @23 -@254 := #8 -@257 := @217 @254 @71 @60 -@259 := @168 @62 @20 -@260 := @257 @259 -@261 := @166 @59 -@263 := @261 @64 @6 -@273 := {p : @16} -> - {c : @17} -> - {A : @18} -> - {v : @57} -> {t : @59} -> {vs : @245} -> {ts : @246} -> (h : @248) -> (hs : @253) -> @260 @263 -@275 := LexLeanPreservation.Rust.wtl_cons @0 -@293 := {c : @17} -> - {A : @18} -> - {v : @57} -> - {t : @59} -> - {vs : @245} -> - {ts : @246} -> (h : @92 @20 @6) -> (hs : @228 @60 @62 @6 @23) -> @228 @71 @60 @259 @263 -@294 := @275 @1 -@309 := {A : @18} -> - {v : @57} -> - {t : @59} -> - {vs : @245} -> {ts : @246} -> (h : @108 @20 @6) -> (hs : @236 @62 @6 @23) -> @236 @60 @259 @263 -@310 := @294 @2 -@312 := @50 @20 @6 -@314 := @242 @6 @23 -@322 := {v : @57} -> - {t : @59} -> {vs : @245} -> {ts : @246} -> (h : @312) -> (hs : @314) -> @242 @259 @263 -@323 := @310 @161 -@324 := @7 @64 -@326 := @50 @324 @6 -@327 := @7 @60 -@328 := @168 @327 -@336 := {t : @59} -> {vs : @245} -> {ts : @246} -> (h : @326) -> (hs : @314) -> @242 (@328 @20) @263 -@337 := @323 @12 -@338 := @7 @20 -@340 := @50 @338 @12 -@341 := @7 @62 -@342 := @168 @341 -@344 := @242 (@342 @20) -@345 := @261 @12 -@346 := @345 @6 -@351 := {vs : @245} -> {ts : @246} -> (h : @340) -> (hs : @314) -> @344 @346 -@352 := @337 @167 -@353 := @7 @6 -@355 := @50 @353 @12 -@356 := @243 @23 -@358 := @168 @324 @167 -@363 := {ts : @246} -> (h : @355) -> (hs : @356) -> @242 @358 @346 -@364 := @352 @197 -@366 := @168 @338 @167 -@367 := @242 @366 -@368 := @345 @197 -@371 := (h : @164) -> (hs : @244) -> @367 @368 -@372 := @364 @162 -@374 := @168 @353 @167 -@376 := @242 @374 @368 -@377 := (hs : @244) -> @376 -@378 := @372 @241 -@380 := @242 @170 @368 -@381 := @310 @11 -@382 := @10 @62 -@384 := @50 @382 @6 -@385 := @10 @71 -@386 := @168 @385 -@394 := {t : @59} -> {vs : @245} -> {ts : @246} -> (h : @384) -> (hs : @314) -> @242 (@386 @20) @263 -@395 := @381 @14 -@396 := @10 @64 -@398 := @50 @396 @14 -@399 := @10 @60 -@400 := @168 @399 -@402 := @242 (@400 @20) -@403 := @261 @14 -@404 := @403 @6 -@409 := {vs : @245} -> {ts : @246} -> (h : @398) -> (hs : @314) -> @402 @404 -@410 := @395 @170 -@411 := @10 @20 -@413 := @50 @411 @14 -@414 := @367 @23 -@416 := @168 @382 @358 -@417 := @242 @416 -@421 := {ts : @246} -> (h : @413) -> (hs : @414) -> @417 @404 -@422 := @410 @368 -@424 := @168 @396 @366 -@425 := @242 @424 -@426 := @403 @368 -@429 := (h : @160) -> (hs : @376) -> @425 @426 -@430 := @422 @158 -@432 := @168 @411 @374 -@433 := @242 @432 -@435 := (hs : @380) -> @433 @426 -@436 := @430 @378 -@437 := @242 @172 -@438 := @437 @426 -@439 := LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.denote -@441 := @439 @6 @23 -@442 := LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.__fits_0 -@444 := @442 @6 @23 -@448 := @7 (LexLeanStd.Text.joinWith @6 @23) -@451 := LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.root @6 @23 -@452 := Bool -@453 := Ne.{1} -@454 := LexLeanPreservation.Obs -@455 := @453 @454 -@456 := LexLeanPreservation.Rel -@459 := @455 (@456 @23 @15) -@460 := LexLeanPreservation.Obs.stuck -@463 := (f : @452) -> (v : @57) -> @459 @460 -@465 := LexLeanPreservation.Rust.rel_ne_stuck @444 -@472 := (v : @57) -> @455 (@456 (@442 @20 @6) @15) @460 -@473 := @465 @448 -@477 := @455 (@456 @444 @448) @460 -@478 := @4 @176 -@479 := LexLeanPreservation.Rust.FunSem -@480 := #9 -@486 := (n : @173) -> @479 @480 @254 @71 @15 @60 -@487 := Eq.{1} -@488 := Option.{0} -@489 := @488 @193 -@490 := @487 @489 -@497 := LexLeanRuntime.index (@4 @193) @193 (LexLeanRuntime.instIndexableList @193) -@501 := @490 (@497 (@194 @480) @60) -@502 := Option.some.{0} -@503 := @502 @193 -@504 := @503 @62 -@505 := @501 @504 -@506 := #10 -@510 := @217 @506 @480 @254 @62 -@511 := LexLeanTarget.TargetSyntax.Function.types -@512 := @511 @60 -@513 := @510 @512 -@514 := @488 @478 -@515 := @487 @514 -@516 := LexLeanTarget.TargetSemantics.bindAll -@517 := LexLeanTarget.TargetSyntax.Function.parameters -@522 := @515 (@516 (@517 @71) @60 @186) -@523 := @502 @478 -@524 := @523 @62 -@525 := @522 @524 -@526 := @488 @452 -@527 := @487 @526 -@528 := LexLeanPreservation.Rust.fnFallible -@529 := #11 -@532 := @527 (@528 @529 @480) -@533 := @502 @452 -@534 := @533 @62 -@535 := @532 @534 -@536 := LexLeanPreservation.RunConv -@537 := #13 -@541 := @536 @537 @506 @254 @62 -@543 := @455 @60 @460 -@544 := Exists.{1} -@545 := LexLeanPreservation.Rust.ROut -@546 := @544 @545 -@547 := And -@548 := LexLeanPreservation.Rust.RealizesFn -@552 := @547 (@548 @480 @254 @15) -@553 := LexLeanPreservation.Rust.RCI -@555 := @553 #15 -@556 := LexLeanPreservation.Rust.fnIdent -@557 := @556 @537 -@564 := (hne : @543) -> @546 (fun (ro : @545) => @552 (@555 @557 @529 @15)) -@579 := {p : @16} -> - {c : @17} -> - {A : @18} -> - {f : @173} -> - {fn : @193} -> - {args : @245} -> - {env : @478} -> - {F : @452} -> - {o : @454} -> - (hB : @486) -> - (hfn : @505) -> (hwt : @513) -> (hbind : @525) -> (hF : @535) -> (hA : @541) -> @564 -@581 := LexLeanPreservation.Rust.compose @0 -@582 := @479 @0 -@587 := (n : @173) -> @582 @254 @71 @15 @60 -@588 := @497 @195 -@591 := @490 (@588 @60) @504 -@595 := @228 @480 @254 @62 @512 -@596 := @536 @0 -@599 := @596 @506 @254 @62 -@613 := {c : @17} -> - {A : @18} -> - {f : @173} -> - {fn : @193} -> - {args : @245} -> - {env : @478} -> - {F : @452} -> - {o : @454} -> - (hB : @587) -> - (hfn : @591) -> (hwt : @595) -> (hbind : @525) -> (hF : @535) -> (hA : @599) -> @564 -@614 := @581 @1 -@615 := @582 @1 -@619 := (n : @173) -> @615 @71 @15 @60 -@622 := @236 @254 @62 @512 -@623 := @528 @1 -@626 := @527 (@623 @480) @534 -@627 := @553 @1 -@637 := (hbind : @525) -> - (hF : @626) -> (hA : @599) -> (hne : @543) -> @546 (fun (ro : @545) => @552 (@627 @557 @529 @15)) -@647 := {A : @18} -> - {f : @173} -> - {fn : @193} -> - {args : @245} -> - {env : @478} -> {F : @452} -> {o : @454} -> (hB : @619) -> (hfn : @591) -> (hwt : @622) -> @637 -@648 := @614 @2 -@650 := @615 @2 @15 -@652 := (n : @173) -> @650 @60 -@653 := @242 @62 -@654 := @653 @512 -@663 := {f : @173} -> - {fn : @193} -> - {args : @245} -> - {env : @478} -> {F : @452} -> {o : @454} -> (hB : @652) -> (hfn : @591) -> (hwt : @654) -> @637 -@664 := @648 @183 -@666 := (n : @173) -> @650 @183 -@667 := @588 @183 -@668 := @490 @667 -@669 := @668 @504 -@670 := @623 @183 -@671 := @527 @670 -@672 := @671 @534 -@673 := @596 @183 -@675 := @673 @254 @62 -@677 := @627 (@556 @183) -@685 := (hF : @672) -> (hA : @675) -> (hne : @543) -> @546 (fun (ro : @545) => @552 (@677 @529 @15)) -@694 := {fn : @193} -> - {args : @245} -> - {env : @478} -> - {F : @452} -> {o : @454} -> (hB : @666) -> (hfn : @669) -> (hwt : @654) -> (hbind : @525) -> @685 -@695 := @664 @212 -@697 := @668 (@503 @212) -@698 := @511 @212 -@699 := @653 @698 -@701 := @516 (@517 @212) -@713 := {args : @245} -> - {env : @478} -> - {F : @452} -> - {o : @454} -> - (hB : @666) -> (hfn : @697) -> (hwt : @699) -> (hbind : @515 (@701 @60 @186) @524) -> @685 -@714 := @695 @172 -@716 := @386 (@328 @167) -@718 := @242 @716 @698 -@724 := @168 (@10 @254) (@168 (@7 @71) @167) -@728 := @515 (@701 @724 @186) @524 -@734 := @168 (@10 @506) (@168 (@7 @480) @167) -@736 := @673 @734 @62 -@738 := @168 (@10 @537) -@739 := #12 -@758 := {env : @478} -> - {F : @452} -> - {o : @454} -> - (hB : @666) -> - (hfn : @697) -> - (hwt : @718) -> - (hbind : @728) -> - (hF : @672) -> - (hA : @736) -> - (hne : @543) -> @546 (fun (ro : @545) => @552 (@677 (@738 (@168 (@7 @739) @167)) @15)) -@759 := @714 @191 -@761 := @400 (@342 @167) -@763 := @242 @761 @698 -@774 := @515 (@701 @716 @186) (@523 (@187 (@181 @327) (@187 (@184 @385) @186))) -@780 := @168 (@10 @480) (@168 (@7 @254) @167) -@802 := {F : @452} -> - {o : @454} -> - (hB : @666) -> - (hfn : @697) -> - (hwt : @763) -> - (hbind : @774) -> - (hF : @672) -> - (hA : @673 @780 @62) -> - (hne : @543) -> @546 (fun (ro : @545) => @552 (@677 (@168 (@10 @739) (@168 (@7 @529) @167)) @15)) -@803 := @759 @192 -@804 := @417 @698 -@815 := @515 (@701 @761 @186) (@523 (@187 (@181 @341) (@187 (@184 @399) @186))) -@817 := @671 (@533 @192) -@819 := @673 @724 @62 -@820 := @548 @192 -@842 := {o : @454} -> - (hB : @666) -> - (hfn : @697) -> - (hwt : @804) -> - (hbind : @815) -> - (hF : @817) -> - (hA : @819) -> - (hne : @543) -> - @546 (fun (ro : @545) => @547 (@820 @254 @15) (@677 (@168 (@10 @529) (@168 (@7 @506) @167)) @15)) -@843 := @803 @441 -@844 := @425 @698 -@855 := @515 (@701 @416 @186) (@523 (@187 (@181 @324) (@187 (@184 @382) @186))) -@856 := @673 @716 -@858 := @439 @71 @60 -@859 := @856 @858 -@861 := @439 @254 @71 -@880 := (hB : @666) -> - (hfn : @697) -> - (hwt : @844) -> - (hbind : @855) -> - (hF : @817) -> - (hA : @859) -> - (hne : @455 @861 @460) -> - @546 (fun (ro : @545) => @547 (@820 (@439 @506 @480) @15) (@677 @734 @15)) -@881 := @843 @216 -@882 := @433 @698 -@893 := @515 (@701 @424 @186) (@523 (@187 (@181 @338) (@187 (@184 @396) @186))) -@894 := @673 @761 -@896 := @439 @60 @62 -@915 := (hfn : @697) -> - (hwt : @882) -> - (hbind : @893) -> - (hF : @817) -> - (hA : @894 @896) -> - (hne : @455 @858 @460) -> - @546 (fun (ro : @545) => @547 (@820 (@439 @480 @254) @15) (@677 @780 @15)) -@916 := Eq.refl.{1} -@919 := @881 (@916 @489 @667) -@920 := @437 @698 -@931 := @515 (@701 @432 @186) (@523 (@187 (@181 @353) (@187 (@184 @411) @186))) -@932 := @673 @416 -@934 := @439 @62 @64 -@950 := (hwt : @920) -> - (hbind : @931) -> - (hF : @817) -> - (hA : @932 @934) -> - (hne : @455 @896 @460) -> @546 (fun (ro : @545) => @547 (@820 @861 @15) (@677 @724 @15)) -@951 := @919 @436 -@953 := @701 @172 @186 -@956 := @515 @953 (@523 @191) -@957 := @673 @424 -@959 := @439 @64 @20 -@974 := (hbind : @956) -> - (hF : @817) -> - (hA : @957 @959) -> - (hne : @455 @934 @460) -> @546 (fun (ro : @545) => @547 (@820 @858 @15) (@677 @716 @15)) -@977 := @951 (@916 @514 @953) -@978 := @673 @432 -@980 := @439 @20 @6 -@994 := (hF : @817) -> - (hA : @978 @980) -> - (hne : @455 @959 @460) -> @546 (fun (ro : @545) => @547 (@820 @896 @15) (@677 @761 @15)) -@997 := @977 (@916 @526 @670) -@1011 := (hA : @673 @172 @441) -> - (hne : @455 @980 @460) -> @546 (fun (ro : @545) => @547 (@820 @934 @15) (@677 @416 @15)) -@1012 := @997 @451 -@1023 := (hne : @455 @441 @460) -> @546 (fun (ro : @545) => @547 (@820 @959 @15) (@677 @424 @15)) -@1024 := @1012 @473 -@1030 := @547 (@820 @980 @15) (@677 @432 @15) -@1032 := @546 (fun (ro : @545) => @1030) -@1034 := @546 (fun (__e_ro : @545) => @1030) -@1035 := LexLeanPreservation.Rust.RepresentableL -@1036 := @10 @23 -@1038 := @168 @25 @167 -@1041 := @1035 (@168 @1036 @1038) -@1042 := (__e_hrep : @1041) -> @1034 -@1043 := fun (__e_hrep : @1041) => @1024 -@1044 := (separator : @3) -> @1042 -@1045 := fun (separator : @3) => @1043 -@1046 := (pieces : @5) -> @1044 -@1047 := fun (pieces : @5) => @1045 -\end{coremodule} -\end{lexlean} diff --git a/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R5/RustStd.lean b/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R5/RustStd.lean deleted file mode 100644 index af823ea50..000000000 --- a/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R5/RustStd.lean +++ /dev/null @@ -1,51 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1], types := [(.list .bytes), .bytes], result := .bytes, - body := (.«match» .bytes (.call 1 [(.closure 2 [(.var 1)]), (.build .none (.option .bytes) []), (.var 0)]) [(.arm .some [2] (.var 2)), (.arm .none [] (.value .bytes (.bytes (ByteArray.mk #[]))))]) }, - { parameters := [0, 1, 2], types := [(.fn [(.option .bytes), .bytes] (.option .bytes)), (.option .bytes), (.list .bytes)], result := (.option .bytes), - body := (.«match» (.option .bytes) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 1 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, - { parameters := [0, 1, 2], types := [.bytes, (.option .bytes), .bytes], result := (.option .bytes), - body := (.«match» (.option .bytes) (.var 1) [(.arm .none [] (.build .some (.option .bytes) [(.var 2)])), (.arm .some [3] (.build .some (.option .bytes) [(.prim .append [(.prim .append [(.var 3), (.var 0)]), (.var 2)])]))]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.enum (.fn 0) [{ number := 2, fields := [.bytes] }]), - (.apply 0 [(.option .bytes), .bytes] (.option .bytes) false [{ function := 2, captures := [.clone], functionFallible := false }]), - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.list .bytes) }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] .bytes (.mk [(.mk (.bind (.generated .holder 1)) none (.call (.function 1) [(.construct (.closure 0 2) [(.move (.generated .binding 1))]), (.construct (.none .bytes) []), (.move (.generated .binding 0))] false))] (.matchOn (.move (.generated .holder 1)) [(.mk .none (.mk [] (.lit (.bytes (ByteArray.mk #[]))))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.move (.generated .binding 2))))]))), - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := (.option .bytes) }, { pattern := (.bind (.generated .binding 2)), type := (.list .bytes) }] (.option .bytes) (.mk [(.mk (.bind (.generated .holder 2)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 2)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 1) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 3)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 3) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]))), - (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := (.option .bytes) }, { pattern := (.bind (.generated .binding 2)), type := .bytes }] (.option .bytes) (.mk [(.mk (.bind (.generated .holder 4)) none (.move (.generated .binding 1)))] (.matchOn (.move (.generated .holder 4)) [(.mk .none (.mk [] (.construct .some [(.move (.generated .binding 2))]))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 7)) none (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.move (.generated .binding 3))), (.mk (.bind (.generated .operand 6)) none (.move (.generated .binding 0)))] (.call (.runtime .appendBytes) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false)))), (.mk (.bind (.generated .operand 8)) none (.move (.generated .binding 2)))] (.call (.runtime .appendBytes) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false)))])))])))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [(([(.option .bytes), .bytes], (.option .bytes)), false)] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.call (.function 1) [(.construct (.closure 0 2) [(.move (.generated .binding 1))]), (.construct (.none .bytes) []), (.move (.generated .binding 0))] false))], (.matchOn (.move (.generated .holder 1)) [(.mk .none (.mk [] (.lit (.bytes (ByteArray.mk #[]))))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.move (.generated .binding 2))))]), [(1, .bytes, (some 1)), (0, (.list .bytes), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.option .bytes), .bytes] (.option .bytes)), (.option .bytes), (.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [.bytes]) (mask := [false]) (af := false) (ff := false) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, .bytes, (some 1)), (0, (.list .bytes), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bytes (ByteArray.mk #[])))) (Corr.mCons (Γ' := [(2, .bytes, (some 2)), (1, .bytes, (some 1)), (0, (.list .bytes), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 2))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.bOfE (Corr.value rfl rfl))) rfl rfl rfl)⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 2)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 2)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 1) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 3)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 3) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]), [(2, (.list .bytes), (some 2)), (1, (.option .bytes), (some 1)), (0, (.fn [(.option .bytes), .bytes] (.option .bytes)), (some 0))], rfl, rfl, - (Corr.matchArms (st := (.list .bytes)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .bytes), (some 2)), (1, (.option .bytes), (some 1)), (0, (.fn [(.option .bytes), .bytes] (.option .bytes)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 1))) (Corr.mCons (Γ' := [(4, (.list .bytes), (some 4)), (3, .bytes, (some 3)), (2, (.list .bytes), (some 2)), (1, (.option .bytes), (some 1)), (0, (.fn [(.option .bytes), .bytes] (.option .bytes)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 1) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 3)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 3) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.fn [(.option .bytes), .bytes] (.option .bytes)), (.option .bytes), (.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 3)) (some (.fn 0)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 3) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false)) (Corr.apply (ps := [(.option .bytes), .bytes]) (af := false) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 4)) none (.move (.generated .binding 1)))], (.matchOn (.move (.generated .holder 4)) [(.mk .none (.mk [] (.construct .some [(.move (.generated .binding 2))]))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 7)) none (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.move (.generated .binding 3))), (.mk (.bind (.generated .operand 6)) none (.move (.generated .binding 0)))] (.call (.runtime .appendBytes) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false)))), (.mk (.bind (.generated .operand 8)) none (.move (.generated .binding 2)))] (.call (.runtime .appendBytes) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false)))])))]), [(2, .bytes, (some 2)), (1, (.option .bytes), (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, .bytes, (some 2)), (1, (.option .bytes), (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.move (.generated .binding 2))])) (Corr.mCons (Γ' := [(3, .bytes, (some 3)), (2, .bytes, (some 2)), (1, (.option .bytes), (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 7)) none (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.move (.generated .binding 3))), (.mk (.bind (.generated .operand 6)) none (.move (.generated .binding 0)))] (.call (.runtime .appendBytes) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false)))), (.mk (.bind (.generated .operand 8)) none (.move (.generated .binding 2)))] (.call (.runtime .appendBytes) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false)))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [.bytes]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 7)) none (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.move (.generated .binding 3))), (.mk (.bind (.generated .operand 6)) none (.move (.generated .binding 0)))] (.call (.runtime .appendBytes) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false)))), (.mk (.bind (.generated .operand 8)) none (.move (.generated .binding 2)))]) (tail := (.call (.runtime .appendBytes) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 5)) none (.move (.generated .binding 3))), (.mk (.bind (.generated .operand 6)) none (.move (.generated .binding 0)))]) (tail := (.call (.runtime .appendBytes) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.build (ts := [.bytes]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl)⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | _ + 3 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.RustStd diff --git a/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R6.lean b/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R6.lean deleted file mode 100644 index b24bb5d84..000000000 --- a/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R6.lean +++ /dev/null @@ -1,53 +0,0 @@ -import LexLeanPreservation.Core -import LexLeanPreservation.Values -import LexLeanPreservation.Primitives -import LexLeanPreservation.Fixed -import LexLeanPreservation.Keys -import LexLeanPreservation.Templates -import LexLeanPreservation.Validate -import LexLeanStd.Text -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -set_option linter.unusedVariables false -namespace LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6 - -def __prog : _root_.LexLeanTarget.TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1], types := [.bytes, .bytes], result := (.option .nat), - body := (.«let» 2 .nat (.prim .length [(.var 0)]) (.«let» 3 .nat (.prim .length [(.var 1)]) (.«let» 4 .nat (.first (.call 1 [(.closure 2 [(.var 1), (.var 3), (.var 0), (.var 2)]), (.prim .natAdd [(.var 2), (.value .nat (.nat 1))]), (.value .nat (.nat 0))])) (.cond (.call 3 [(.var 0), (.var 1), (.var 4)]) (.build .some (.option .nat) [(.var 4)]) (.build .none (.option .nat) []))))) }, - { parameters := [0, 1, 2], types := [(.fn [.nat] (.option .nat)), .nat, .nat], result := (.pair .nat .bool), - body := (.«match» (.pair .nat .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair .nat .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair .nat .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair .nat .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 1 [(.var 0), (.var 3), (.var 4)]))]))]) }, - { parameters := [0, 1, 2, 3, 4], types := [.bytes, .nat, .bytes, .nat, .nat], result := (.option .nat), - body := (.cond (.call 3 [(.var 2), (.var 0), (.var 4)]) (.build .none (.option .nat) []) (.cond (.prim .natLt [(.prim .natAdd [(.var 4), (.var 1)]), (.var 3)]) (.build .some (.option .nat) [(.prim .natAdd [(.var 4), (.value .nat (.nat 1))])]) (.build .none (.option .nat) []))) }, - { parameters := [0, 1, 2], types := [.bytes, .bytes, .nat], result := .bool, - body := (.«match» .bool (.prim .slice [(.var 0), (.var 2), (.prim .length [(.var 1)])]) [(.arm .some [3] (.prim .equal [(.var 3), (.var 1)])), (.arm .none [] (.build .false .bool []))]) }] } - -def __fits_3 (subject : ByteArray) (needle : ByteArray) (position : Nat) : Bool := - (((Bool.true && (Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (needle) : Nat) 18446744073709551616)) && Bool.true))) && Bool.true) && (match (_root_.LexLeanRuntime.slice (subject) (position) ((_root_.LexLeanRuntime.length (needle) : Nat)) : (Option ByteArray)) with | Option.some window => ((Bool.true && (Bool.true && Bool.true)) && Bool.true) | Option.none => (Bool.true && Bool.true))) - -theorem __rel_3 (subject : ByteArray) (needle : ByteArray) (position : Nat) : _root_.LexLeanPreservation.FunRel __prog 3 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.bytes needle), (_root_.LexLeanTarget.TargetSyntax.Value.nat position)] (_root_.LexLeanPreservation.Rel (__fits_3 subject needle position) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanStd.Text.matchAt subject needle position))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.some window => ((Bool.true && (Bool.true && Bool.true)) && Bool.true) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option ByteArray)) => _root_.LexLeanTarget.TargetSyntax.Value.bool (match __a with | Option.some window => (_root_.LexLeanRuntime.equal (window) (needle) : Bool) | Option.none => Bool.false)) (_root_.LexLeanRuntime.slice (subject) (position) ((_root_.LexLeanRuntime.length (needle) : Nat)) : (Option ByteArray)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes needle)) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.prim_slice_bytes subject position (_root_.LexLeanRuntime.length (needle) : Nat))) (fun (__a : (Option ByteArray)) _ => match __a with | Option.some window => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_bytes window needle))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))))) - -def __fits_2 (needle : ByteArray) (size : Nat) (subject : ByteArray) (total : Nat) (position : Nat) : Bool := - (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_3 (subject) (needle) (position))) && (if (LexLeanStd.Text.matchAt (subject) (needle) (position)) then (Bool.true && Bool.true) else (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + size) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.blt (position + size) total) then ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) - -attribute [local irreducible] LexLeanStd.Text.matchAt in -theorem __rel_2 (needle : ByteArray) (size : Nat) (subject : ByteArray) (total : Nat) (position : Nat) : _root_.LexLeanPreservation.FunRel __prog 2 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes needle), (_root_.LexLeanTarget.TargetSyntax.Value.nat size), (_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat total), (_root_.LexLeanTarget.TargetSyntax.Value.nat position)] (_root_.LexLeanPreservation.Rel (__fits_2 needle size subject total position) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) ((if (LexLeanStd.Text.matchAt (subject) (needle) (position)) then (Option.none : (Option Nat)) else (if (Nat.blt (position + size) total) then (Option.some ((position + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat))))))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + size) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.blt (position + size) total) then ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Option.none : (Option Nat)) else (if (Nat.blt (position + size) total) then (Option.some ((position + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat))))) (LexLeanStd.Text.matchAt (subject) (needle) (position)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (__rel_3 (subject) (needle) (position))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Option.some ((position + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat)))) (Nat.blt (position + size) total) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position size)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (position + size) total)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (1 : Nat))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))) - -def __fits_0 (subject : ByteArray) (needle : ByteArray) : Bool := - (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (subject) : Nat) 18446744073709551616)) && (let total : Nat := (_root_.LexLeanRuntime.length (subject) : Nat); (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (needle) : Nat) 18446744073709551616)) && (let size : Nat := (_root_.LexLeanRuntime.length (needle) : Nat); ((((Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true)))) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (total + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : Nat) => __fits_2 (needle) (size) (subject) (total) __p0) ((fun (position : Nat) => (if (LexLeanStd.Text.matchAt (subject) (needle) (position)) then (Option.none : (Option Nat)) else (if (Nat.blt (position + size) total) then (Option.some ((position + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat)))))) ((total + (1 : Nat))) ((0 : Nat)))) && (let position : Nat := ((_root_.LexLeanCollections.iterateUntil ((fun (position : Nat) => (if (LexLeanStd.Text.matchAt (subject) (needle) (position)) then (Option.none : (Option Nat)) else (if (Nat.blt (position + size) total) then (Option.some ((position + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat)))))) ((total + (1 : Nat))) ((0 : Nat)) : (Prod Nat Bool))).1; (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_3 (subject) (needle) (position))) && (if (LexLeanStd.Text.matchAt (subject) (needle) (position)) then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))))) - -attribute [local irreducible] LexLeanStd.Text.matchAt in -theorem __rel_0 (subject : ByteArray) (needle : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.bytes needle)] (_root_.LexLeanPreservation.Rel (__fits_0 subject needle) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (LexLeanStd.Text.find subject needle))) := - _root_.LexLeanPreservation.funRel_intro rfl rfl (let total : Nat := (_root_.LexLeanRuntime.length (subject) : Nat); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes subject)) (let size : Nat := (_root_.LexLeanRuntime.length (needle) : Nat); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes needle)) (let position : Nat := ((_root_.LexLeanCollections.iterateUntil ((fun (position : Nat) => (if (LexLeanStd.Text.matchAt (subject) (needle) (position)) then (Option.none : (Option Nat)) else (if (Nat.blt (position + size) total) then (Option.some ((position + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat)))))) ((total + (1 : Nat))) ((0 : Nat)) : (Prod Nat Bool))).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd total (1 : Nat))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterateUntil (es := _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.optEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) ((fun (position : Nat) => (if (LexLeanStd.Text.matchAt (subject) (needle) (position)) then (Option.none : (Option Nat)) else (if (Nat.blt (position + size) total) then (Option.some ((position + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat)))))) (fun (__p0 : Nat) => __fits_2 (needle) (size) (subject) (total) __p0) 2 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes needle), (_root_.LexLeanTarget.TargetSyntax.Value.nat size), (_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat total)] (fun (__p0 : Nat) => __rel_2 (needle) (size) (subject) (total) __p0) (_root_.LexLeanCollections.iterateUntil ((fun (position : Nat) => (if (LexLeanStd.Text.matchAt (subject) (needle) (position)) then (Option.none : (Option Nat)) else (if (Nat.blt (position + size) total) then (Option.some ((position + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat))))))) (fun _ => rfl) (fun _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (p := __prog) (fi := 1) (ts := .nat) rfl ((total + (1 : Nat))) ((0 : Nat))))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Option.some (position) : (Option Nat)) else (Option.none : (Option Nat)))) (LexLeanStd.Text.matchAt (subject) (needle) (position)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (__rel_3 (subject) (needle) (position))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)))))) - -def denote (subject : ByteArray) (needle : ByteArray) : _root_.LexLeanPreservation.Obs := - _root_.cond (__fits_0 subject needle) (_root_.LexLeanPreservation.Obs.value (((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (LexLeanStd.Text.find subject needle)))) _root_.LexLeanPreservation.Obs.overflow - -theorem root (subject : ByteArray) (needle : ByteArray) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.bytes needle)] (_root_.LexLeanPreservation.Rel (__fits_0 subject needle) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (LexLeanStd.Text.find subject needle))) := - _root_.LexLeanPreservation.run_of_funRel (__rel_0 subject needle) - -end LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6 diff --git a/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R6/Compose/RustStd.lex.tex b/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R6/Compose/RustStd.lex.tex deleted file mode 100644 index 2fabe8930..000000000 --- a/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R6/Compose/RustStd.lex.tex +++ /dev/null @@ -1,465 +0,0 @@ -\begin{lexlean}{RustStd} -\title{Certificate E LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.Compose.RustStd} -\begin{coremodule} -imports [ - LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6, - LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.RustStd, - LexLeanPreservation.Compose -] - -theorem LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.Compose.RustStd.root : @919 := @920 { - all: [LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.Compose.RustStd.root], - class: false, - generated: false, - policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, - transparency: semireducible -} - -@0 := LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.RustStd.program -@1 := LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.RustStd.krate -@2 := LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.RustStd.flags -@3 := ByteArray -@4 := #2 -@5 := LexLeanTarget.TargetSyntax.Value.bytes -@6 := @5 @4 -@7 := LexLeanTarget.TargetSyntax.Ty.bytes -@8 := LexLeanTarget.TargetSyntax.Program -@9 := LexLeanPreservation.Rust.RCrate -@10 := LexLeanPreservation.Rust.Flags -@11 := LexLeanPreservation.Rust.WT -@12 := #3 -@14 := @11 @12 @4 -@15 := #1 -@16 := @14 @15 -@17 := #0 -@18 := @5 @17 -@24 := {p : @8} -> {c : @9} -> {A : @10} -> (b : @3) -> @16 @18 @7 -@26 := LexLeanPreservation.Rust.wt_bytes @0 -@27 := @11 @0 -@34 := {c : @9} -> {A : @10} -> (b : @3) -> @27 @4 @15 @18 @7 -@35 := @26 @1 -@36 := @27 @1 -@41 := {A : @10} -> (b : @3) -> @36 @15 @18 @7 -@42 := @35 @2 -@43 := @36 @2 -@46 := (b : @3) -> @43 @18 @7 -@47 := @42 @4 -@49 := @43 @6 @7 -@50 := @5 @15 -@51 := @42 @15 -@53 := @43 @50 @7 -@54 := LexLeanTarget.TargetSyntax.Value -@55 := List.nil.{0} -@56 := List.cons.{0} -@57 := @55 @54 -@58 := @56 @54 -@59 := @58 @50 -@60 := @59 @57 -@61 := @58 @6 -@62 := @61 @60 -@63 := Nat -@66 := Prod.{0, 0} @63 @54 -@67 := 1 -@70 := Prod.mk.{0, 0} @63 @54 -@71 := @70 @67 -@72 := @71 @50 -@73 := 0 -@74 := @70 @73 -@75 := @74 @6 -@76 := @55 @66 -@77 := @56 @66 -@79 := @77 @75 @76 -@81 := @77 @72 @79 -@82 := Bool.true -@83 := LexLeanTarget.TargetSyntax.Function -@84 := LexLeanTarget.TargetSyntax.Program.functions -@85 := @84 @0 -@86 := LexLeanTarget.TargetSyntax.Ty -@87 := @55 @63 -@88 := @55 @86 -@89 := LexLeanTarget.TargetSyntax.Ty.unit -@90 := LexLeanTarget.TargetSyntax.Value.unit -@93 := LexLeanTarget.TargetSyntax.Expr.value @89 @90 -@98 := LexLeanTarget.TargetSyntax.Function.mk @87 @88 @89 @93 -@103 := List.getD.{0} @83 @85 @73 @98 -@107 := fun (__e_n : @63) => - LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.RustStd.root @17 @73 -@108 := LexLeanPreservation.Rust.WTL -@116 := {p : @8} -> {c : @9} -> {A : @10} -> @108 @4 @15 @17 @57 @88 -@118 := LexLeanPreservation.Rust.wtl_nil @0 -@119 := @108 @0 -@125 := {c : @9} -> {A : @10} -> @119 @15 @17 @57 @88 -@126 := @118 @1 -@127 := @119 @1 -@131 := {A : @10} -> @127 @17 @57 @88 -@132 := @126 @2 -@133 := @127 @2 -@134 := @133 @57 -@135 := @134 @88 -@136 := List.{0} -@137 := @136 @54 -@138 := @136 @86 -@139 := #6 -@140 := @11 @139 -@141 := #5 -@142 := @140 @141 -@143 := #4 -@146 := @142 @143 @12 @4 -@147 := #7 -@152 := @108 @147 @139 @141 @4 @15 -@153 := #8 -@156 := @108 @153 @147 @139 -@158 := @58 @141 @12 -@159 := @156 @158 -@160 := @56 @86 -@162 := @160 @143 @4 -@172 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {v : @54} -> {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @146) -> (hs : @152) -> @159 @162 -@174 := LexLeanPreservation.Rust.wtl_cons @0 -@194 := {c : @9} -> - {A : @10} -> - {v : @54} -> - {t : @86} -> - {vs : @137} -> - {ts : @138} -> - (h : @27 @141 @143 @12 @4) -> (hs : @119 @139 @141 @4 @15) -> @119 @147 @139 @158 @162 -@195 := @174 @1 -@211 := {A : @10} -> - {v : @54} -> - {t : @86} -> - {vs : @137} -> - {ts : @138} -> (h : @36 @143 @12 @4) -> (hs : @127 @141 @4 @15) -> @127 @139 @158 @162 -@212 := @195 @2 -@214 := @43 @12 @4 -@216 := @133 @4 @15 -@224 := {v : @54} -> - {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @214) -> (hs : @216) -> @133 @158 @162 -@225 := @212 @50 -@226 := @5 @143 -@227 := @43 @226 -@228 := @227 @4 -@229 := @5 @139 -@230 := @58 @229 -@232 := @133 (@230 @12) -@238 := {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @228) -> (hs : @216) -> @232 @162 -@239 := @225 @7 -@240 := @5 @12 -@242 := @43 @240 @7 -@243 := @5 @141 -@244 := @58 @243 -@246 := @133 (@244 @12) -@247 := @160 @7 -@248 := @247 @4 -@253 := {vs : @137} -> {ts : @138} -> (h : @242) -> (hs : @216) -> @246 @248 -@254 := @239 @57 -@255 := @134 @15 -@256 := @58 @226 -@257 := @256 @57 -@262 := {ts : @138} -> (h : @49) -> (hs : @255) -> @133 @257 @248 -@263 := @254 @88 -@264 := @58 @240 -@265 := @264 @57 -@266 := @133 @265 -@267 := @247 @88 -@270 := (h : @53) -> (hs : @135) -> @266 @267 -@271 := @263 @51 -@272 := @61 @57 -@274 := @133 @272 @267 -@275 := (hs : @135) -> @274 -@276 := @271 @132 -@278 := @133 @60 @267 -@279 := @212 @6 -@281 := @43 @243 @4 -@282 := @5 @147 -@283 := @58 @282 -@291 := {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @281) -> (hs : @216) -> @133 (@283 @12) @162 -@292 := @279 @7 -@298 := {vs : @137} -> {ts : @138} -> (h : @227 @7) -> (hs : @216) -> @232 @248 -@299 := @292 @60 -@300 := @266 @15 -@301 := @244 @257 -@302 := @133 @301 -@306 := {ts : @138} -> (h : @242) -> (hs : @300) -> @302 @248 -@307 := @299 @267 -@308 := @256 @265 -@309 := @133 @308 -@310 := @247 @267 -@313 := (h : @49) -> (hs : @274) -> @309 @310 -@314 := @307 @47 -@315 := @264 @272 -@316 := @133 @315 -@318 := (hs : @278) -> @316 @310 -@319 := @314 @276 -@320 := @133 @62 -@321 := @320 @310 -@322 := LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.denote -@324 := @322 @4 @15 -@325 := LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.__fits_0 -@327 := @325 @4 @15 -@330 := LexLeanStd.Text.find @4 @15 -@331 := LexLeanTarget.TargetSyntax.Value.nat -@335 := LexLeanPreservation.encOption @63 @331 @330 -@338 := LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.root @4 @15 -@339 := Bool -@340 := Ne.{1} -@341 := LexLeanPreservation.Obs -@342 := @340 @341 -@343 := LexLeanPreservation.Rel -@346 := @342 (@343 @15 @17) -@347 := LexLeanPreservation.Obs.stuck -@350 := (f : @339) -> (v : @54) -> @346 @347 -@352 := LexLeanPreservation.Rust.rel_ne_stuck @327 -@359 := (v : @54) -> @342 (@343 (@325 @12 @4) @17) @347 -@360 := @352 @335 -@364 := @342 (@343 @327 @335) @347 -@365 := @136 @66 -@366 := LexLeanPreservation.Rust.FunSem -@367 := #9 -@373 := (n : @63) -> @366 @367 @153 @147 @17 @139 -@374 := Eq.{1} -@375 := Option.{0} -@376 := @375 @83 -@377 := @374 @376 -@384 := LexLeanRuntime.index (@136 @83) @83 (LexLeanRuntime.instIndexableList @83) -@388 := @377 (@384 (@84 @367) @139) -@389 := Option.some.{0} -@390 := @389 @83 -@391 := @390 @141 -@392 := @388 @391 -@393 := #10 -@397 := @108 @393 @367 @153 @141 -@398 := LexLeanTarget.TargetSyntax.Function.types -@399 := @398 @139 -@400 := @397 @399 -@401 := @375 @365 -@402 := @374 @401 -@403 := LexLeanTarget.TargetSemantics.bindAll -@404 := LexLeanTarget.TargetSyntax.Function.parameters -@409 := @402 (@403 (@404 @147) @139 @76) -@410 := @389 @365 -@411 := @410 @141 -@412 := @409 @411 -@413 := @375 @339 -@414 := @374 @413 -@415 := LexLeanPreservation.Rust.fnFallible -@416 := #11 -@419 := @414 (@415 @416 @367) -@420 := @389 @339 -@421 := @420 @141 -@422 := @419 @421 -@423 := LexLeanPreservation.RunConv -@424 := #13 -@428 := @423 @424 @393 @153 @141 -@430 := @342 @139 @347 -@431 := Exists.{1} -@432 := LexLeanPreservation.Rust.ROut -@433 := @431 @432 -@434 := And -@435 := LexLeanPreservation.Rust.RealizesFn -@439 := @434 (@435 @367 @153 @17) -@440 := LexLeanPreservation.Rust.RCI -@442 := @440 #15 -@443 := LexLeanPreservation.Rust.fnIdent -@444 := @443 @424 -@451 := (hne : @430) -> @433 (fun (ro : @432) => @439 (@442 @444 @416 @17)) -@466 := {p : @8} -> - {c : @9} -> - {A : @10} -> - {f : @63} -> - {fn : @83} -> - {args : @137} -> - {env : @365} -> - {F : @339} -> - {o : @341} -> - (hB : @373) -> - (hfn : @392) -> (hwt : @400) -> (hbind : @412) -> (hF : @422) -> (hA : @428) -> @451 -@468 := LexLeanPreservation.Rust.compose @0 -@469 := @366 @0 -@474 := (n : @63) -> @469 @153 @147 @17 @139 -@475 := @384 @85 -@478 := @377 (@475 @139) @391 -@482 := @119 @367 @153 @141 @399 -@483 := @423 @0 -@486 := @483 @393 @153 @141 -@500 := {c : @9} -> - {A : @10} -> - {f : @63} -> - {fn : @83} -> - {args : @137} -> - {env : @365} -> - {F : @339} -> - {o : @341} -> - (hB : @474) -> - (hfn : @478) -> (hwt : @482) -> (hbind : @412) -> (hF : @422) -> (hA : @486) -> @451 -@501 := @468 @1 -@502 := @469 @1 -@506 := (n : @63) -> @502 @147 @17 @139 -@509 := @127 @153 @141 @399 -@510 := @415 @1 -@513 := @414 (@510 @367) @421 -@514 := @440 @1 -@524 := (hbind : @412) -> - (hF : @513) -> (hA : @486) -> (hne : @430) -> @433 (fun (ro : @432) => @439 (@514 @444 @416 @17)) -@534 := {A : @10} -> - {f : @63} -> - {fn : @83} -> - {args : @137} -> - {env : @365} -> {F : @339} -> {o : @341} -> (hB : @506) -> (hfn : @478) -> (hwt : @509) -> @524 -@535 := @501 @2 -@537 := @502 @2 @17 -@539 := (n : @63) -> @537 @139 -@540 := @133 @141 -@541 := @540 @399 -@550 := {f : @63} -> - {fn : @83} -> - {args : @137} -> - {env : @365} -> {F : @339} -> {o : @341} -> (hB : @539) -> (hfn : @478) -> (hwt : @541) -> @524 -@551 := @535 @73 -@553 := (n : @63) -> @537 @73 -@554 := @475 @73 -@555 := @377 @554 -@556 := @555 @391 -@557 := @510 @73 -@558 := @414 @557 -@559 := @558 @421 -@560 := @483 @73 -@562 := @560 @153 @141 -@564 := @514 (@443 @73) -@572 := (hF : @559) -> (hA : @562) -> (hne : @430) -> @433 (fun (ro : @432) => @439 (@564 @416 @17)) -@581 := {fn : @83} -> - {args : @137} -> - {env : @365} -> - {F : @339} -> {o : @341} -> (hB : @553) -> (hfn : @556) -> (hwt : @541) -> (hbind : @412) -> @572 -@582 := @551 @103 -@584 := @555 (@390 @103) -@585 := @398 @103 -@586 := @540 @585 -@588 := @403 (@404 @103) -@600 := {args : @137} -> - {env : @365} -> - {F : @339} -> - {o : @341} -> - (hB : @553) -> (hfn : @584) -> (hwt : @586) -> (hbind : @402 (@588 @139 @76) @411) -> @572 -@601 := @582 @62 -@603 := @283 (@230 @57) -@605 := @133 @603 @585 -@607 := @58 (@5 @153) -@609 := @607 (@283 @57) -@613 := @402 (@588 @609 @76) @411 -@615 := @58 (@5 @393) -@617 := @58 (@5 @367) -@619 := @615 (@617 @57) -@621 := @560 @619 @141 -@623 := @58 (@5 @424) -@626 := @58 (@5 #12) -@643 := {env : @365} -> - {F : @339} -> - {o : @341} -> - (hB : @553) -> - (hfn : @584) -> - (hwt : @605) -> - (hbind : @613) -> - (hF : @559) -> - (hA : @621) -> (hne : @430) -> @433 (fun (ro : @432) => @439 (@564 (@623 (@626 @57)) @17)) -@644 := @601 @81 -@646 := @230 (@244 @57) -@648 := @133 @646 @585 -@659 := @402 (@588 @603 @76) (@410 (@77 (@71 @229) (@77 (@74 @282) @76))) -@661 := @617 (@607 @57) -@663 := @560 @661 @141 -@665 := @58 (@5 @416) -@681 := {F : @339} -> - {o : @341} -> - (hB : @553) -> - (hfn : @584) -> - (hwt : @648) -> - (hbind : @659) -> - (hF : @559) -> - (hA : @663) -> (hne : @430) -> @433 (fun (ro : @432) => @439 (@564 (@626 (@665 @57)) @17)) -@682 := @644 @82 -@683 := @302 @585 -@694 := @402 (@588 @646 @76) (@410 (@77 (@71 @243) (@77 (@74 @229) @76))) -@696 := @558 (@420 @82) -@698 := @560 @609 @141 -@699 := @435 @82 -@717 := {o : @341} -> - (hB : @553) -> - (hfn : @584) -> - (hwt : @683) -> - (hbind : @694) -> - (hF : @696) -> - (hA : @698) -> - (hne : @430) -> @433 (fun (ro : @432) => @434 (@699 @153 @17) (@564 (@665 (@615 @57)) @17)) -@718 := @682 @324 -@719 := @309 @585 -@730 := @402 (@588 @301 @76) (@410 (@77 (@71 @226) (@77 (@74 @243) @76))) -@731 := @560 @603 -@733 := @322 @147 @139 -@734 := @731 @733 -@736 := @322 @153 @147 -@755 := (hB : @553) -> - (hfn : @584) -> - (hwt : @719) -> - (hbind : @730) -> - (hF : @696) -> - (hA : @734) -> - (hne : @342 @736 @347) -> - @433 (fun (ro : @432) => @434 (@699 (@322 @393 @367) @17) (@564 @619 @17)) -@756 := @718 @107 -@757 := @316 @585 -@768 := @402 (@588 @308 @76) (@410 (@77 (@71 @240) (@77 (@74 @226) @76))) -@769 := @560 @646 -@771 := @322 @139 @141 -@790 := (hfn : @584) -> - (hwt : @757) -> - (hbind : @768) -> - (hF : @696) -> - (hA : @769 @771) -> - (hne : @342 @733 @347) -> - @433 (fun (ro : @432) => @434 (@699 (@322 @367 @153) @17) (@564 @661 @17)) -@791 := Eq.refl.{1} -@794 := @756 (@791 @376 @554) -@795 := @320 @585 -@806 := @402 (@588 @315 @76) (@410 (@77 (@71 @6) (@77 (@74 @240) @76))) -@807 := @560 @301 -@809 := @322 @141 @143 -@825 := (hwt : @795) -> - (hbind : @806) -> - (hF : @696) -> - (hA : @807 @809) -> - (hne : @342 @771 @347) -> @433 (fun (ro : @432) => @434 (@699 @736 @17) (@564 @609 @17)) -@826 := @794 @319 -@828 := @588 @62 @76 -@831 := @402 @828 (@410 @81) -@832 := @560 @308 -@834 := @322 @143 @12 -@849 := (hbind : @831) -> - (hF : @696) -> - (hA : @832 @834) -> - (hne : @342 @809 @347) -> @433 (fun (ro : @432) => @434 (@699 @733 @17) (@564 @603 @17)) -@852 := @826 (@791 @401 @828) -@853 := @560 @315 -@855 := @322 @12 @4 -@869 := (hF : @696) -> - (hA : @853 @855) -> - (hne : @342 @834 @347) -> @433 (fun (ro : @432) => @434 (@699 @771 @17) (@564 @646 @17)) -@872 := @852 (@791 @413 @557) -@886 := (hA : @560 @62 @324) -> - (hne : @342 @855 @347) -> @433 (fun (ro : @432) => @434 (@699 @809 @17) (@564 @301 @17)) -@887 := @872 @338 -@898 := (hne : @342 @324 @347) -> @433 (fun (ro : @432) => @434 (@699 @834 @17) (@564 @308 @17)) -@899 := @887 @360 -@905 := @434 (@699 @855 @17) (@564 @315 @17) -@907 := @433 (fun (ro : @432) => @905) -@909 := @433 (fun (__e_ro : @432) => @905) -@914 := LexLeanPreservation.Rust.RepresentableL (@59 (@58 @18 @57)) -@915 := (__e_hrep : @914) -> @909 -@916 := fun (__e_hrep : @914) => @899 -@917 := (needle : @3) -> @915 -@918 := fun (needle : @3) => @916 -@919 := (subject : @3) -> @917 -@920 := fun (subject : @3) => @918 -\end{coremodule} -\end{lexlean} diff --git a/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R6/RustStd.lean b/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R6/RustStd.lean deleted file mode 100644 index d259d9dfc..000000000 --- a/stdlib/expected/verify/preserve/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R6/RustStd.lean +++ /dev/null @@ -1,59 +0,0 @@ -import LexLeanPreservation.RustSound -set_option autoImplicit false -set_option maxRecDepth 100000 -set_option maxHeartbeats 0 -set_option synthInstance.maxHeartbeats 0 -namespace LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.RustStd -open LexLeanTarget LexLeanPreservation.Rust - -noncomputable def program : TargetSyntax.Program := - { adts := [], functions := [ - { parameters := [0, 1], types := [.bytes, .bytes], result := (.option .nat), - body := (.«let» 2 .nat (.prim .length [(.var 0)]) (.«let» 3 .nat (.prim .length [(.var 1)]) (.«let» 4 .nat (.first (.call 1 [(.closure 2 [(.var 1), (.var 3), (.var 0), (.var 2)]), (.prim .natAdd [(.var 2), (.value .nat (.nat 1))]), (.value .nat (.nat 0))])) (.cond (.call 3 [(.var 0), (.var 1), (.var 4)]) (.build .some (.option .nat) [(.var 4)]) (.build .none (.option .nat) []))))) }, - { parameters := [0, 1, 2], types := [(.fn [.nat] (.option .nat)), .nat, .nat], result := (.pair .nat .bool), - body := (.«match» (.pair .nat .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair .nat .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair .nat .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair .nat .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 1 [(.var 0), (.var 3), (.var 4)]))]))]) }, - { parameters := [0, 1, 2, 3, 4], types := [.bytes, .nat, .bytes, .nat, .nat], result := (.option .nat), - body := (.cond (.call 3 [(.var 2), (.var 0), (.var 4)]) (.build .none (.option .nat) []) (.cond (.prim .natLt [(.prim .natAdd [(.var 4), (.var 1)]), (.var 3)]) (.build .some (.option .nat) [(.prim .natAdd [(.var 4), (.value .nat (.nat 1))])]) (.build .none (.option .nat) []))) }, - { parameters := [0, 1, 2], types := [.bytes, .bytes, .nat], result := .bool, - body := (.«match» .bool (.prim .slice [(.var 0), (.var 2), (.prim .length [(.var 1)])]) [(.arm .some [3] (.prim .equal [(.var 3), (.var 1)])), (.arm .none [] (.build .false .bool []))]) }] } - -noncomputable def krate : RustSyntax.Crate := - ({ profile := .std, items := [ - (.enum (.fn 0) [{ number := 2, fields := [.bytes, .nat, .bytes, .nat] }]), - (.apply 0 [.nat] (.option .nat) true [{ function := 2, captures := [.clone, .copy, .clone, .copy], functionFallible := true }]), - (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] (.fallible (.option .nat)) (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 1))] false)))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 2))] false)))), (.mk (.bind (.generated .binding 4)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.call (.function 1) [(.construct (.closure 0 2) [(.clone (.generated .binding 1)), (.copy (.generated .binding 3)), (.clone (.generated .binding 0)), (.copy (.generated .binding 2))]), (.block (.mk [(.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 5)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] true))), (.lit (.nat 0))] true))] (.move (.generated .part 3)))))] (.cond (.call (.function 3) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 4))] false) (.mk [] (.succeed (.construct .some [(.copy (.generated .binding 4))]))) (.mk [] (.succeed (.construct (.none .nat) [])))))), - (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.fallible (.pair .nat .bool)) (.mk [(.mk (.bind (.generated .holder 6)) none (.copy (.generated .binding 1)))] (.cond (.isZero (.generated .holder 6)) (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 6))), (.mk (.bind (.generated .holder 8)) none (.block (.mk [(.mk (.bind (.generated .callee 7)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 7) [(.copy (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 8)) [(.mk .none (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 1) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)))]))))), - (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := .bytes }, { pattern := (.bind (.generated .binding 3)), type := .nat }, { pattern := (.bind (.generated .binding 4)), type := .nat }] (.fallible (.option .nat)) (.mk [] (.cond (.call (.function 3) [(.move (.generated .binding 2)), (.move (.generated .binding 0)), (.copy (.generated .binding 4))] false) (.mk [] (.succeed (.construct (.none .nat) []))) (.mk [(.mk (.bind (.generated .operand 11)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] true)))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 3)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false) (.mk [] (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 14)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 13)), (.move (.generated .operand 14))] true)))]))) (.mk [] (.succeed (.construct (.none .nat) [])))))))), - (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .bytes }, { pattern := (.bind (.generated .binding 2)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .holder 19)) none (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 18)) none (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 15))] false))))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 16)), (.move (.generated .operand 17)), (.move (.generated .operand 18))] false))))] (.matchOn (.move (.generated .holder 19)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.bind (.generated .binding 3))) (.mk [(.mk (.bind (.generated .operand 20)) none (.move (.generated .binding 3))), (.mk (.bind (.generated .operand 21)) none (.move (.generated .binding 1)))] (.call (.runtime .equal) [(.move (.generated .operand 20)), (.move (.generated .operand 21))] false)))])))] } : LexLeanTarget.RustSyntax.Crate) - -def flags : Flags := [(([.nat], (.option .nat)), true)] - -theorem fun0 : FunOK program krate flags 0 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 1))] false)))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 2))] false)))), (.mk (.bind (.generated .binding 4)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.call (.function 1) [(.construct (.closure 0 2) [(.clone (.generated .binding 1)), (.copy (.generated .binding 3)), (.clone (.generated .binding 0)), (.copy (.generated .binding 2))]), (.block (.mk [(.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 5)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] true))), (.lit (.nat 0))] true))] (.move (.generated .part 3)))))], (.cond (.call (.function 3) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 4))] false) (.mk [] (.succeed (.construct .some [(.copy (.generated .binding 4))]))) (.mk [] (.succeed (.construct (.none .nat) [])))), [(1, .bytes, (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 1))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 2)) none (.clone (.generated .binding 1)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 2))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.call (.function 1) [(.construct (.closure 0 2) [(.clone (.generated .binding 1)), (.copy (.generated .binding 3)), (.clone (.generated .binding 0)), (.copy (.generated .binding 2))]), (.block (.mk [(.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 5)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] true))), (.lit (.nat 0))] true))]) (tail := (.move (.generated .part 3))) (Corr.first (ta := .nat) (tb := .bool) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [.nat] (.option .nat)), .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [.bytes, .nat, .bytes, .nat]) (mask := [false, false, false, false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 5)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl)) rfl (Corr.cond (lc := []) (ce := (.call (.function 3) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 4))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.copy (.generated .binding 4))]))) (lb := []) (tb := (.succeed (.construct (.none .nat) []))) (Corr.fOfB (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))))))⟩⟩ - -theorem fun1 : FunOK program krate flags 1 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 6)) none (.copy (.generated .binding 1)))], (.cond (.isZero (.generated .holder 6)) (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 6))), (.mk (.bind (.generated .holder 8)) none (.block (.mk [(.mk (.bind (.generated .callee 7)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 7) [(.copy (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 8)) [(.mk .none (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 1) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)))]))), [(2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat] (.option .nat)), (some 0))], rfl, rfl, - (Corr.matchNat (sl := (some 3)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool false))))) (lb := [(.mk (.bind (.generated .holder 8)) none (.block (.mk [(.mk (.bind (.generated .callee 7)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 7) [(.copy (.generated .binding 2))] true))))]) (tb := (.matchOn (.move (.generated .holder 8)) [(.mk .none (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 1) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)))])) (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))))) (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 7)) (some (.fn 0)) (.clone (.generated .binding 0)))]) (tail := (.apply (.generated .callee 7) [(.copy (.generated .binding 2))] true)) (Corr.apply (ps := [.nat]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat] (.option .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true))))) (Corr.mCons (Γ' := [(4, .nat, (some 4)), (3, .nat, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat] (.option .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 1) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [.nat] (.option .nat)), .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))))))) rfl rfl rfl)))⟩⟩ - -theorem fun2 : FunOK program krate flags 2 := - ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 3) [(.move (.generated .binding 2)), (.move (.generated .binding 0)), (.copy (.generated .binding 4))] false) (.mk [] (.succeed (.construct (.none .nat) []))) (.mk [(.mk (.bind (.generated .operand 11)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] true)))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 3)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false) (.mk [] (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 14)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 13)), (.move (.generated .operand 14))] true)))]))) (.mk [] (.succeed (.construct (.none .nat) [])))))), [(4, .nat, (some 4)), (3, .nat, (some 3)), (2, .bytes, (some 2)), (1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.cond (lc := []) (ce := (.call (.function 3) [(.move (.generated .binding 2)), (.move (.generated .binding 0)), (.copy (.generated .binding 4))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct (.none .nat) []))) (lb := [(.mk (.bind (.generated .operand 11)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] true)))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 3)))]) (tb := (.cond (.call (.runtime .natLt) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false) (.mk [] (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 14)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 13)), (.move (.generated .operand 14))] true)))]))) (.mk [] (.succeed (.construct (.none .nat) []))))) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.cond (lc := [(.mk (.bind (.generated .operand 11)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] true)))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 3)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 14)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 13)), (.move (.generated .operand 14))] true)))]))) (lb := []) (tb := (.succeed (.construct (.none .nat) []))) (Corr.fOfB (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 14)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 13)), (.move (.generated .operand 14))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))))⟩⟩ - -theorem fun3 : FunOK program krate flags 3 := - ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 19)) none (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 18)) none (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 15))] false))))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 16)), (.move (.generated .operand 17)), (.move (.generated .operand 18))] false))))], (.matchOn (.move (.generated .holder 19)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.bind (.generated .binding 3))) (.mk [(.mk (.bind (.generated .operand 20)) none (.move (.generated .binding 3))), (.mk (.bind (.generated .operand 21)) none (.move (.generated .binding 1)))] (.call (.runtime .equal) [(.move (.generated .operand 20)), (.move (.generated .operand 21))] false)))]), [(2, .nat, (some 2)), (1, .bytes, (some 1)), (0, .bytes, (some 0))], rfl, rfl, - (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 16)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 18)) none (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 15))] false))))]) (tail := (.call (.runtime .sliceBytes) [(.move (.generated .operand 16)), (.move (.generated .operand 17)), (.move (.generated .operand 18))] false)) (Corr.prim (ts := [.bytes, .nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 15)) none (.clone (.generated .binding 1)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 15))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(3, .bytes, (some 3)), (2, .nat, (some 2)), (1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .operand 20)) none (.move (.generated .binding 3))), (.mk (.bind (.generated .operand 21)) none (.move (.generated .binding 1)))]) (tail := (.call (.runtime .equal) [(.move (.generated .operand 20)), (.move (.generated .operand 21))] false)) (Corr.mNil) rfl rfl rfl (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ - -theorem crate_ok : CrateOK program krate flags := by - intro f fn h - match f with - | 0 => exact fun0 - | 1 => exact fun1 - | 2 => exact fun2 - | 3 => exact fun3 - | _ + 4 => simp [program, index_eq] at h - -/-- Every function of the program is simulated by its rendering. -/ -theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f - -end LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.RustStd diff --git a/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R0.lean b/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R0.lean new file mode 100644 index 000000000..ca1dd97d6 --- /dev/null +++ b/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R0.lean @@ -0,0 +1,33 @@ +import LexLeanPreservation.Core +import LexLeanPreservation.Values +import LexLeanPreservation.Primitives +import LexLeanPreservation.Fixed +import LexLeanPreservation.Keys +import LexLeanPreservation.Templates +import LexLeanPreservation.Validate +import LexLeanStd.Text +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +set_option linter.unusedVariables false +namespace LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0 + +def __prog : _root_.LexLeanTarget.TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1], types := [.bytes, .bytes], result := .bool, + body := (.«match» .bool (.prim .slice [(.var 0), (.value .nat (.nat 0)), (.prim .length [(.var 1)])]) [(.arm .some [2] (.prim .equal [(.var 2), (.var 1)])), (.arm .none [] (.build .false .bool []))]) }] } + +def __fits_0 (subject : ByteArray) («prefix» : ByteArray) : Bool := + (((Bool.true && (Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length («prefix») : Nat) 18446744073709551616)) && Bool.true))) && Bool.true) && (match (_root_.LexLeanRuntime.slice (subject) ((0 : Nat)) ((_root_.LexLeanRuntime.length («prefix») : Nat)) : (Option ByteArray)) with | Option.some head => ((Bool.true && (Bool.true && Bool.true)) && Bool.true) | Option.none => (Bool.true && Bool.true))) + +theorem __rel_0 (subject : ByteArray) («prefix» : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.bytes «prefix»)] (_root_.LexLeanPreservation.Rel (__fits_0 subject «prefix») (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanStd.Text.startsWith subject «prefix»))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.some head => ((Bool.true && (Bool.true && Bool.true)) && Bool.true) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option ByteArray)) => _root_.LexLeanTarget.TargetSyntax.Value.bool (match __a with | Option.some head => (_root_.LexLeanRuntime.equal (head) («prefix») : Bool) | Option.none => Bool.false)) (_root_.LexLeanRuntime.slice (subject) ((0 : Nat)) ((_root_.LexLeanRuntime.length («prefix») : Nat)) : (Option ByteArray)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes «prefix»)) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.prim_slice_bytes subject (0 : Nat) (_root_.LexLeanRuntime.length («prefix») : Nat))) (fun (__a : (Option ByteArray)) _ => match __a with | Option.some head => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_bytes head «prefix»))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))))) + +def denote (subject : ByteArray) («prefix» : ByteArray) : _root_.LexLeanPreservation.Obs := + _root_.cond (__fits_0 subject «prefix») (_root_.LexLeanPreservation.Obs.value ((_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanStd.Text.startsWith subject «prefix»)))) _root_.LexLeanPreservation.Obs.overflow + +theorem root (subject : ByteArray) («prefix» : ByteArray) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.bytes «prefix»)] (_root_.LexLeanPreservation.Rel (__fits_0 subject «prefix») (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanStd.Text.startsWith subject «prefix»))) := + _root_.LexLeanPreservation.run_of_funRel (__rel_0 subject «prefix») + +end LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0 diff --git a/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R0/Compose/RustStd.lex.tex b/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R0/Compose/RustStd.lex.tex new file mode 100644 index 000000000..26a96019b --- /dev/null +++ b/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R0/Compose/RustStd.lex.tex @@ -0,0 +1,464 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0, + LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.Compose.RustStd.root : @916 := @917 { + all: [LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.RustStd.program +@1 := LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.RustStd.krate +@2 := LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.RustStd.flags +@3 := ByteArray +@4 := #2 +@5 := LexLeanTarget.TargetSyntax.Value.bytes +@6 := @5 @4 +@7 := LexLeanTarget.TargetSyntax.Ty.bytes +@8 := LexLeanTarget.TargetSyntax.Program +@9 := LexLeanPreservation.Rust.RCrate +@10 := LexLeanPreservation.Rust.Flags +@11 := LexLeanPreservation.Rust.WT +@12 := #3 +@14 := @11 @12 @4 +@15 := #1 +@16 := @14 @15 +@17 := #0 +@18 := @5 @17 +@24 := {p : @8} -> {c : @9} -> {A : @10} -> (b : @3) -> @16 @18 @7 +@26 := LexLeanPreservation.Rust.wt_bytes @0 +@27 := @11 @0 +@34 := {c : @9} -> {A : @10} -> (b : @3) -> @27 @4 @15 @18 @7 +@35 := @26 @1 +@36 := @27 @1 +@41 := {A : @10} -> (b : @3) -> @36 @15 @18 @7 +@42 := @35 @2 +@43 := @36 @2 +@46 := (b : @3) -> @43 @18 @7 +@47 := @42 @4 +@49 := @43 @6 @7 +@50 := @5 @15 +@51 := @42 @15 +@53 := @43 @50 @7 +@54 := LexLeanTarget.TargetSyntax.Value +@55 := List.nil.{0} +@56 := List.cons.{0} +@57 := @55 @54 +@58 := @56 @54 +@59 := @58 @50 +@60 := @59 @57 +@61 := @58 @6 +@62 := @61 @60 +@63 := Nat +@66 := Prod.{0, 0} @63 @54 +@67 := 1 +@70 := Prod.mk.{0, 0} @63 @54 +@71 := @70 @67 +@72 := @71 @50 +@73 := 0 +@74 := @70 @73 +@75 := @74 @6 +@76 := @55 @66 +@77 := @56 @66 +@79 := @77 @75 @76 +@81 := @77 @72 @79 +@82 := Bool.false +@83 := LexLeanTarget.TargetSyntax.Function +@84 := LexLeanTarget.TargetSyntax.Program.functions +@85 := @84 @0 +@86 := LexLeanTarget.TargetSyntax.Ty +@87 := @55 @63 +@88 := @55 @86 +@89 := LexLeanTarget.TargetSyntax.Ty.unit +@90 := LexLeanTarget.TargetSyntax.Value.unit +@93 := LexLeanTarget.TargetSyntax.Expr.value @89 @90 +@98 := LexLeanTarget.TargetSyntax.Function.mk @87 @88 @89 @93 +@103 := List.getD.{0} @83 @85 @73 @98 +@107 := fun (__e_n : @63) => + LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.RustStd.root @17 @73 +@108 := LexLeanPreservation.Rust.WTL +@116 := {p : @8} -> {c : @9} -> {A : @10} -> @108 @4 @15 @17 @57 @88 +@118 := LexLeanPreservation.Rust.wtl_nil @0 +@119 := @108 @0 +@125 := {c : @9} -> {A : @10} -> @119 @15 @17 @57 @88 +@126 := @118 @1 +@127 := @119 @1 +@131 := {A : @10} -> @127 @17 @57 @88 +@132 := @126 @2 +@133 := @127 @2 +@134 := @133 @57 +@135 := @134 @88 +@136 := List.{0} +@137 := @136 @54 +@138 := @136 @86 +@139 := #6 +@140 := @11 @139 +@141 := #5 +@142 := @140 @141 +@143 := #4 +@146 := @142 @143 @12 @4 +@147 := #7 +@152 := @108 @147 @139 @141 @4 @15 +@153 := #8 +@156 := @108 @153 @147 @139 +@158 := @58 @141 @12 +@159 := @156 @158 +@160 := @56 @86 +@162 := @160 @143 @4 +@172 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {v : @54} -> {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @146) -> (hs : @152) -> @159 @162 +@174 := LexLeanPreservation.Rust.wtl_cons @0 +@194 := {c : @9} -> + {A : @10} -> + {v : @54} -> + {t : @86} -> + {vs : @137} -> + {ts : @138} -> + (h : @27 @141 @143 @12 @4) -> (hs : @119 @139 @141 @4 @15) -> @119 @147 @139 @158 @162 +@195 := @174 @1 +@211 := {A : @10} -> + {v : @54} -> + {t : @86} -> + {vs : @137} -> + {ts : @138} -> (h : @36 @143 @12 @4) -> (hs : @127 @141 @4 @15) -> @127 @139 @158 @162 +@212 := @195 @2 +@214 := @43 @12 @4 +@216 := @133 @4 @15 +@224 := {v : @54} -> + {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @214) -> (hs : @216) -> @133 @158 @162 +@225 := @212 @50 +@226 := @5 @143 +@227 := @43 @226 +@228 := @227 @4 +@229 := @5 @139 +@230 := @58 @229 +@232 := @133 (@230 @12) +@238 := {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @228) -> (hs : @216) -> @232 @162 +@239 := @225 @7 +@240 := @5 @12 +@242 := @43 @240 @7 +@243 := @5 @141 +@244 := @58 @243 +@246 := @133 (@244 @12) +@247 := @160 @7 +@248 := @247 @4 +@253 := {vs : @137} -> {ts : @138} -> (h : @242) -> (hs : @216) -> @246 @248 +@254 := @239 @57 +@255 := @134 @15 +@256 := @58 @226 +@257 := @256 @57 +@262 := {ts : @138} -> (h : @49) -> (hs : @255) -> @133 @257 @248 +@263 := @254 @88 +@264 := @58 @240 +@265 := @264 @57 +@266 := @133 @265 +@267 := @247 @88 +@270 := (h : @53) -> (hs : @135) -> @266 @267 +@271 := @263 @51 +@272 := @61 @57 +@274 := @133 @272 @267 +@275 := (hs : @135) -> @274 +@276 := @271 @132 +@278 := @133 @60 @267 +@279 := @212 @6 +@281 := @43 @243 @4 +@282 := @5 @147 +@283 := @58 @282 +@291 := {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @281) -> (hs : @216) -> @133 (@283 @12) @162 +@292 := @279 @7 +@298 := {vs : @137} -> {ts : @138} -> (h : @227 @7) -> (hs : @216) -> @232 @248 +@299 := @292 @60 +@300 := @266 @15 +@301 := @244 @257 +@302 := @133 @301 +@306 := {ts : @138} -> (h : @242) -> (hs : @300) -> @302 @248 +@307 := @299 @267 +@308 := @256 @265 +@309 := @133 @308 +@310 := @247 @267 +@313 := (h : @49) -> (hs : @274) -> @309 @310 +@314 := @307 @47 +@315 := @264 @272 +@316 := @133 @315 +@318 := (hs : @278) -> @316 @310 +@319 := @314 @276 +@320 := @133 @62 +@321 := @320 @310 +@322 := LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.denote +@324 := @322 @4 @15 +@325 := LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.__fits_0 +@327 := @325 @4 @15 +@330 := LexLeanStd.Text.startsWith @4 @15 +@332 := LexLeanTarget.TargetSyntax.Value.bool @330 +@335 := LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.root @4 @15 +@336 := Bool +@337 := Ne.{1} +@338 := LexLeanPreservation.Obs +@339 := @337 @338 +@340 := LexLeanPreservation.Rel +@343 := @339 (@340 @15 @17) +@344 := LexLeanPreservation.Obs.stuck +@347 := (f : @336) -> (v : @54) -> @343 @344 +@349 := LexLeanPreservation.Rust.rel_ne_stuck @327 +@356 := (v : @54) -> @339 (@340 (@325 @12 @4) @17) @344 +@357 := @349 @332 +@361 := @339 (@340 @327 @332) @344 +@362 := @136 @66 +@363 := LexLeanPreservation.Rust.FunSem +@364 := #9 +@370 := (n : @63) -> @363 @364 @153 @147 @17 @139 +@371 := Eq.{1} +@372 := Option.{0} +@373 := @372 @83 +@374 := @371 @373 +@381 := LexLeanRuntime.index (@136 @83) @83 (LexLeanRuntime.instIndexableList @83) +@385 := @374 (@381 (@84 @364) @139) +@386 := Option.some.{0} +@387 := @386 @83 +@388 := @387 @141 +@389 := @385 @388 +@390 := #10 +@394 := @108 @390 @364 @153 @141 +@395 := LexLeanTarget.TargetSyntax.Function.types +@396 := @395 @139 +@397 := @394 @396 +@398 := @372 @362 +@399 := @371 @398 +@400 := LexLeanTarget.TargetSemantics.bindAll +@401 := LexLeanTarget.TargetSyntax.Function.parameters +@406 := @399 (@400 (@401 @147) @139 @76) +@407 := @386 @362 +@408 := @407 @141 +@409 := @406 @408 +@410 := @372 @336 +@411 := @371 @410 +@412 := LexLeanPreservation.Rust.fnFallible +@413 := #11 +@416 := @411 (@412 @413 @364) +@417 := @386 @336 +@418 := @417 @141 +@419 := @416 @418 +@420 := LexLeanPreservation.RunConv +@421 := #13 +@425 := @420 @421 @390 @153 @141 +@427 := @339 @139 @344 +@428 := Exists.{1} +@429 := LexLeanPreservation.Rust.ROut +@430 := @428 @429 +@431 := And +@432 := LexLeanPreservation.Rust.RealizesFn +@436 := @431 (@432 @364 @153 @17) +@437 := LexLeanPreservation.Rust.RCI +@439 := @437 #15 +@440 := LexLeanPreservation.Rust.fnIdent +@441 := @440 @421 +@448 := (hne : @427) -> @430 (fun (ro : @429) => @436 (@439 @441 @413 @17)) +@463 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {f : @63} -> + {fn : @83} -> + {args : @137} -> + {env : @362} -> + {F : @336} -> + {o : @338} -> + (hB : @370) -> + (hfn : @389) -> (hwt : @397) -> (hbind : @409) -> (hF : @419) -> (hA : @425) -> @448 +@465 := LexLeanPreservation.Rust.compose @0 +@466 := @363 @0 +@471 := (n : @63) -> @466 @153 @147 @17 @139 +@472 := @381 @85 +@475 := @374 (@472 @139) @388 +@479 := @119 @364 @153 @141 @396 +@480 := @420 @0 +@483 := @480 @390 @153 @141 +@497 := {c : @9} -> + {A : @10} -> + {f : @63} -> + {fn : @83} -> + {args : @137} -> + {env : @362} -> + {F : @336} -> + {o : @338} -> + (hB : @471) -> + (hfn : @475) -> (hwt : @479) -> (hbind : @409) -> (hF : @419) -> (hA : @483) -> @448 +@498 := @465 @1 +@499 := @466 @1 +@503 := (n : @63) -> @499 @147 @17 @139 +@506 := @127 @153 @141 @396 +@507 := @412 @1 +@510 := @411 (@507 @364) @418 +@511 := @437 @1 +@521 := (hbind : @409) -> + (hF : @510) -> (hA : @483) -> (hne : @427) -> @430 (fun (ro : @429) => @436 (@511 @441 @413 @17)) +@531 := {A : @10} -> + {f : @63} -> + {fn : @83} -> + {args : @137} -> + {env : @362} -> {F : @336} -> {o : @338} -> (hB : @503) -> (hfn : @475) -> (hwt : @506) -> @521 +@532 := @498 @2 +@534 := @499 @2 @17 +@536 := (n : @63) -> @534 @139 +@537 := @133 @141 +@538 := @537 @396 +@547 := {f : @63} -> + {fn : @83} -> + {args : @137} -> + {env : @362} -> {F : @336} -> {o : @338} -> (hB : @536) -> (hfn : @475) -> (hwt : @538) -> @521 +@548 := @532 @73 +@550 := (n : @63) -> @534 @73 +@551 := @472 @73 +@552 := @374 @551 +@553 := @552 @388 +@554 := @507 @73 +@555 := @411 @554 +@556 := @555 @418 +@557 := @480 @73 +@559 := @557 @153 @141 +@561 := @511 (@440 @73) +@569 := (hF : @556) -> (hA : @559) -> (hne : @427) -> @430 (fun (ro : @429) => @436 (@561 @413 @17)) +@578 := {fn : @83} -> + {args : @137} -> + {env : @362} -> + {F : @336} -> {o : @338} -> (hB : @550) -> (hfn : @553) -> (hwt : @538) -> (hbind : @409) -> @569 +@579 := @548 @103 +@581 := @552 (@387 @103) +@582 := @395 @103 +@583 := @537 @582 +@585 := @400 (@401 @103) +@597 := {args : @137} -> + {env : @362} -> + {F : @336} -> + {o : @338} -> + (hB : @550) -> (hfn : @581) -> (hwt : @583) -> (hbind : @399 (@585 @139 @76) @408) -> @569 +@598 := @579 @62 +@600 := @283 (@230 @57) +@602 := @133 @600 @582 +@604 := @58 (@5 @153) +@606 := @604 (@283 @57) +@610 := @399 (@585 @606 @76) @408 +@612 := @58 (@5 @390) +@614 := @58 (@5 @364) +@616 := @612 (@614 @57) +@618 := @557 @616 @141 +@620 := @58 (@5 @421) +@623 := @58 (@5 #12) +@640 := {env : @362} -> + {F : @336} -> + {o : @338} -> + (hB : @550) -> + (hfn : @581) -> + (hwt : @602) -> + (hbind : @610) -> + (hF : @556) -> + (hA : @618) -> (hne : @427) -> @430 (fun (ro : @429) => @436 (@561 (@620 (@623 @57)) @17)) +@641 := @598 @81 +@643 := @230 (@244 @57) +@645 := @133 @643 @582 +@656 := @399 (@585 @600 @76) (@407 (@77 (@71 @229) (@77 (@74 @282) @76))) +@658 := @614 (@604 @57) +@660 := @557 @658 @141 +@662 := @58 (@5 @413) +@678 := {F : @336} -> + {o : @338} -> + (hB : @550) -> + (hfn : @581) -> + (hwt : @645) -> + (hbind : @656) -> + (hF : @556) -> + (hA : @660) -> (hne : @427) -> @430 (fun (ro : @429) => @436 (@561 (@623 (@662 @57)) @17)) +@679 := @641 @82 +@680 := @302 @582 +@691 := @399 (@585 @643 @76) (@407 (@77 (@71 @243) (@77 (@74 @229) @76))) +@693 := @555 (@417 @82) +@695 := @557 @606 @141 +@696 := @432 @82 +@714 := {o : @338} -> + (hB : @550) -> + (hfn : @581) -> + (hwt : @680) -> + (hbind : @691) -> + (hF : @693) -> + (hA : @695) -> + (hne : @427) -> @430 (fun (ro : @429) => @431 (@696 @153 @17) (@561 (@662 (@612 @57)) @17)) +@715 := @679 @324 +@716 := @309 @582 +@727 := @399 (@585 @301 @76) (@407 (@77 (@71 @226) (@77 (@74 @243) @76))) +@728 := @557 @600 +@730 := @322 @147 @139 +@731 := @728 @730 +@733 := @322 @153 @147 +@752 := (hB : @550) -> + (hfn : @581) -> + (hwt : @716) -> + (hbind : @727) -> + (hF : @693) -> + (hA : @731) -> + (hne : @339 @733 @344) -> + @430 (fun (ro : @429) => @431 (@696 (@322 @390 @364) @17) (@561 @616 @17)) +@753 := @715 @107 +@754 := @316 @582 +@765 := @399 (@585 @308 @76) (@407 (@77 (@71 @240) (@77 (@74 @226) @76))) +@766 := @557 @643 +@768 := @322 @139 @141 +@787 := (hfn : @581) -> + (hwt : @754) -> + (hbind : @765) -> + (hF : @693) -> + (hA : @766 @768) -> + (hne : @339 @730 @344) -> + @430 (fun (ro : @429) => @431 (@696 (@322 @364 @153) @17) (@561 @658 @17)) +@788 := Eq.refl.{1} +@791 := @753 (@788 @373 @551) +@792 := @320 @582 +@803 := @399 (@585 @315 @76) (@407 (@77 (@71 @6) (@77 (@74 @240) @76))) +@804 := @557 @301 +@806 := @322 @141 @143 +@822 := (hwt : @792) -> + (hbind : @803) -> + (hF : @693) -> + (hA : @804 @806) -> + (hne : @339 @768 @344) -> @430 (fun (ro : @429) => @431 (@696 @733 @17) (@561 @606 @17)) +@823 := @791 @319 +@825 := @585 @62 @76 +@828 := @399 @825 (@407 @81) +@829 := @557 @308 +@831 := @322 @143 @12 +@846 := (hbind : @828) -> + (hF : @693) -> + (hA : @829 @831) -> + (hne : @339 @806 @344) -> @430 (fun (ro : @429) => @431 (@696 @730 @17) (@561 @600 @17)) +@849 := @823 (@788 @398 @825) +@850 := @557 @315 +@852 := @322 @12 @4 +@866 := (hF : @693) -> + (hA : @850 @852) -> + (hne : @339 @831 @344) -> @430 (fun (ro : @429) => @431 (@696 @768 @17) (@561 @643 @17)) +@869 := @849 (@788 @410 @554) +@883 := (hA : @557 @62 @324) -> + (hne : @339 @852 @344) -> @430 (fun (ro : @429) => @431 (@696 @806 @17) (@561 @301 @17)) +@884 := @869 @335 +@895 := (hne : @339 @324 @344) -> @430 (fun (ro : @429) => @431 (@696 @831 @17) (@561 @308 @17)) +@896 := @884 @357 +@902 := @431 (@696 @852 @17) (@561 @315 @17) +@904 := @430 (fun (ro : @429) => @902) +@906 := @430 (fun (__e_ro : @429) => @902) +@911 := LexLeanPreservation.Rust.RepresentableL (@59 (@58 @18 @57)) +@912 := (__e_hrep : @911) -> @906 +@913 := fun (__e_hrep : @911) => @896 +@914 := (prefix : @3) -> @912 +@915 := fun (prefix : @3) => @913 +@916 := (subject : @3) -> @914 +@917 := fun (subject : @3) => @915 +\end{coremodule} +\end{lexlean} diff --git a/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R0/RustStd.lean b/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R0/RustStd.lean new file mode 100644 index 000000000..fccf1852a --- /dev/null +++ b/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R0/RustStd.lean @@ -0,0 +1,33 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1], types := [.bytes, .bytes], result := .bool, + body := (.«match» .bool (.prim .slice [(.var 0), (.value .nat (.nat 0)), (.prim .length [(.var 1)])]) [(.arm .some [2] (.prim .equal [(.var 2), (.var 1)])), (.arm .none [] (.build .false .bool []))]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] .bool (.mk [(.mk (.bind (.generated .holder 5)) none (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 3)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 1))] false))))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 2)), (.move (.generated .operand 3)), (.move (.generated .operand 4))] false))))] (.matchOn (.move (.generated .holder 5)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.bind (.generated .binding 2))) (.mk [(.mk (.bind (.generated .operand 6)) none (.move (.generated .binding 2))), (.mk (.bind (.generated .operand 7)) none (.move (.generated .binding 1)))] (.call (.runtime .equal) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false)))])))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 5)) none (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 3)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 1))] false))))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 2)), (.move (.generated .operand 3)), (.move (.generated .operand 4))] false))))], (.matchOn (.move (.generated .holder 5)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.bind (.generated .binding 2))) (.mk [(.mk (.bind (.generated .operand 6)) none (.move (.generated .binding 2))), (.mk (.bind (.generated .operand 7)) none (.move (.generated .binding 1)))] (.call (.runtime .equal) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false)))]), [(1, .bytes, (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 2)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 3)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 4)) none (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 1))] false))))]) (tail := (.call (.runtime .sliceBytes) [(.move (.generated .operand 2)), (.move (.generated .operand 3)), (.move (.generated .operand 4))] false)) (Corr.prim (ts := [.bytes, .nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 1)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 1))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(2, .bytes, (some 2)), (1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .operand 6)) none (.move (.generated .binding 2))), (.mk (.bind (.generated .operand 7)) none (.move (.generated .binding 1)))]) (tail := (.call (.runtime .equal) [(.move (.generated .operand 6)), (.move (.generated .operand 7))] false)) (Corr.mNil) rfl rfl rfl (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | _ + 1 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.RustStd diff --git a/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R1.lean b/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R1.lean new file mode 100644 index 000000000..f2ad32497 --- /dev/null +++ b/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R1.lean @@ -0,0 +1,33 @@ +import LexLeanPreservation.Core +import LexLeanPreservation.Values +import LexLeanPreservation.Primitives +import LexLeanPreservation.Fixed +import LexLeanPreservation.Keys +import LexLeanPreservation.Templates +import LexLeanPreservation.Validate +import LexLeanStd.Text +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +set_option linter.unusedVariables false +namespace LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1 + +def __prog : _root_.LexLeanTarget.TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1], types := [.bytes, .bytes], result := .bool, + body := (.«let» 2 .nat (.prim .length [(.var 0)]) (.«let» 3 .nat (.prim .length [(.var 1)]) (.cond (.prim .natLe [(.var 3), (.var 2)]) (.«match» .bool (.prim .slice [(.var 0), (.prim .natSub [(.var 2), (.var 3)]), (.var 3)]) [(.arm .some [4] (.prim .equal [(.var 4), (.var 1)])), (.arm .none [] (.build .false .bool []))]) (.build .false .bool [])))) }] } + +def __fits_0 (subject : ByteArray) (suffix : ByteArray) : Bool := + (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (subject) : Nat) 18446744073709551616)) && (let total : Nat := (_root_.LexLeanRuntime.length (subject) : Nat); (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (suffix) : Nat) 18446744073709551616)) && (let size : Nat := (_root_.LexLeanRuntime.length (suffix) : Nat); (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.ble size total) then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (Bool.true && Bool.true))) && Bool.true) && (match (_root_.LexLeanRuntime.slice (subject) ((_root_.LexLeanRuntime.subtract (total) (size) : Nat)) (size) : (Option ByteArray)) with | Option.some tail => ((Bool.true && (Bool.true && Bool.true)) && Bool.true) | Option.none => (Bool.true && Bool.true))) else (Bool.true && Bool.true))))))) + +theorem __rel_0 (subject : ByteArray) (suffix : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.bytes suffix)] (_root_.LexLeanPreservation.Rel (__fits_0 subject suffix) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanStd.Text.endsWith subject suffix))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (let total : Nat := (_root_.LexLeanRuntime.length (subject) : Nat); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes subject)) (let size : Nat := (_root_.LexLeanRuntime.length (suffix) : Nat); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes suffix)) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (Bool.true && Bool.true))) && Bool.true) && (match (_root_.LexLeanRuntime.slice (subject) ((_root_.LexLeanRuntime.subtract (total) (size) : Nat)) (size) : (Option ByteArray)) with | Option.some tail => ((Bool.true && (Bool.true && Bool.true)) && Bool.true) | Option.none => (Bool.true && Bool.true))) else (Bool.true && Bool.true))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then (match (_root_.LexLeanRuntime.slice (subject) ((_root_.LexLeanRuntime.subtract (total) (size) : Nat)) (size) : (Option ByteArray)) with | Option.some tail => (_root_.LexLeanRuntime.equal (tail) (suffix) : Bool) | Option.none => Bool.false) else Bool.false)) (Nat.ble size total) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe size total)) (fun _ => (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.some tail => ((Bool.true && (Bool.true && Bool.true)) && Bool.true) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option ByteArray)) => _root_.LexLeanTarget.TargetSyntax.Value.bool (match __a with | Option.some tail => (_root_.LexLeanRuntime.equal (tail) (suffix) : Bool) | Option.none => Bool.false)) (_root_.LexLeanRuntime.slice (subject) ((_root_.LexLeanRuntime.subtract (total) (size) : Nat)) (size) : (Option ByteArray)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub total size)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.prim_slice_bytes subject (_root_.LexLeanRuntime.subtract (total) (size) : Nat) size)) (fun (__a : (Option ByteArray)) _ => match __a with | Option.some tail => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_bytes tail suffix))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))))) + +def denote (subject : ByteArray) (suffix : ByteArray) : _root_.LexLeanPreservation.Obs := + _root_.cond (__fits_0 subject suffix) (_root_.LexLeanPreservation.Obs.value ((_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanStd.Text.endsWith subject suffix)))) _root_.LexLeanPreservation.Obs.overflow + +theorem root (subject : ByteArray) (suffix : ByteArray) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.bytes suffix)] (_root_.LexLeanPreservation.Rel (__fits_0 subject suffix) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanStd.Text.endsWith subject suffix))) := + _root_.LexLeanPreservation.run_of_funRel (__rel_0 subject suffix) + +end LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1 diff --git a/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R1/Compose/RustStd.lex.tex b/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R1/Compose/RustStd.lex.tex new file mode 100644 index 000000000..781f2e253 --- /dev/null +++ b/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R1/Compose/RustStd.lex.tex @@ -0,0 +1,464 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1, + LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.Compose.RustStd.root : @916 := @917 { + all: [LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.RustStd.program +@1 := LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.RustStd.krate +@2 := LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.RustStd.flags +@3 := ByteArray +@4 := #2 +@5 := LexLeanTarget.TargetSyntax.Value.bytes +@6 := @5 @4 +@7 := LexLeanTarget.TargetSyntax.Ty.bytes +@8 := LexLeanTarget.TargetSyntax.Program +@9 := LexLeanPreservation.Rust.RCrate +@10 := LexLeanPreservation.Rust.Flags +@11 := LexLeanPreservation.Rust.WT +@12 := #3 +@14 := @11 @12 @4 +@15 := #1 +@16 := @14 @15 +@17 := #0 +@18 := @5 @17 +@24 := {p : @8} -> {c : @9} -> {A : @10} -> (b : @3) -> @16 @18 @7 +@26 := LexLeanPreservation.Rust.wt_bytes @0 +@27 := @11 @0 +@34 := {c : @9} -> {A : @10} -> (b : @3) -> @27 @4 @15 @18 @7 +@35 := @26 @1 +@36 := @27 @1 +@41 := {A : @10} -> (b : @3) -> @36 @15 @18 @7 +@42 := @35 @2 +@43 := @36 @2 +@46 := (b : @3) -> @43 @18 @7 +@47 := @42 @4 +@49 := @43 @6 @7 +@50 := @5 @15 +@51 := @42 @15 +@53 := @43 @50 @7 +@54 := LexLeanTarget.TargetSyntax.Value +@55 := List.nil.{0} +@56 := List.cons.{0} +@57 := @55 @54 +@58 := @56 @54 +@59 := @58 @50 +@60 := @59 @57 +@61 := @58 @6 +@62 := @61 @60 +@63 := Nat +@66 := Prod.{0, 0} @63 @54 +@67 := 1 +@70 := Prod.mk.{0, 0} @63 @54 +@71 := @70 @67 +@72 := @71 @50 +@73 := 0 +@74 := @70 @73 +@75 := @74 @6 +@76 := @55 @66 +@77 := @56 @66 +@79 := @77 @75 @76 +@81 := @77 @72 @79 +@82 := Bool.false +@83 := LexLeanTarget.TargetSyntax.Function +@84 := LexLeanTarget.TargetSyntax.Program.functions +@85 := @84 @0 +@86 := LexLeanTarget.TargetSyntax.Ty +@87 := @55 @63 +@88 := @55 @86 +@89 := LexLeanTarget.TargetSyntax.Ty.unit +@90 := LexLeanTarget.TargetSyntax.Value.unit +@93 := LexLeanTarget.TargetSyntax.Expr.value @89 @90 +@98 := LexLeanTarget.TargetSyntax.Function.mk @87 @88 @89 @93 +@103 := List.getD.{0} @83 @85 @73 @98 +@107 := fun (__e_n : @63) => + LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.RustStd.root @17 @73 +@108 := LexLeanPreservation.Rust.WTL +@116 := {p : @8} -> {c : @9} -> {A : @10} -> @108 @4 @15 @17 @57 @88 +@118 := LexLeanPreservation.Rust.wtl_nil @0 +@119 := @108 @0 +@125 := {c : @9} -> {A : @10} -> @119 @15 @17 @57 @88 +@126 := @118 @1 +@127 := @119 @1 +@131 := {A : @10} -> @127 @17 @57 @88 +@132 := @126 @2 +@133 := @127 @2 +@134 := @133 @57 +@135 := @134 @88 +@136 := List.{0} +@137 := @136 @54 +@138 := @136 @86 +@139 := #6 +@140 := @11 @139 +@141 := #5 +@142 := @140 @141 +@143 := #4 +@146 := @142 @143 @12 @4 +@147 := #7 +@152 := @108 @147 @139 @141 @4 @15 +@153 := #8 +@156 := @108 @153 @147 @139 +@158 := @58 @141 @12 +@159 := @156 @158 +@160 := @56 @86 +@162 := @160 @143 @4 +@172 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {v : @54} -> {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @146) -> (hs : @152) -> @159 @162 +@174 := LexLeanPreservation.Rust.wtl_cons @0 +@194 := {c : @9} -> + {A : @10} -> + {v : @54} -> + {t : @86} -> + {vs : @137} -> + {ts : @138} -> + (h : @27 @141 @143 @12 @4) -> (hs : @119 @139 @141 @4 @15) -> @119 @147 @139 @158 @162 +@195 := @174 @1 +@211 := {A : @10} -> + {v : @54} -> + {t : @86} -> + {vs : @137} -> + {ts : @138} -> (h : @36 @143 @12 @4) -> (hs : @127 @141 @4 @15) -> @127 @139 @158 @162 +@212 := @195 @2 +@214 := @43 @12 @4 +@216 := @133 @4 @15 +@224 := {v : @54} -> + {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @214) -> (hs : @216) -> @133 @158 @162 +@225 := @212 @50 +@226 := @5 @143 +@227 := @43 @226 +@228 := @227 @4 +@229 := @5 @139 +@230 := @58 @229 +@232 := @133 (@230 @12) +@238 := {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @228) -> (hs : @216) -> @232 @162 +@239 := @225 @7 +@240 := @5 @12 +@242 := @43 @240 @7 +@243 := @5 @141 +@244 := @58 @243 +@246 := @133 (@244 @12) +@247 := @160 @7 +@248 := @247 @4 +@253 := {vs : @137} -> {ts : @138} -> (h : @242) -> (hs : @216) -> @246 @248 +@254 := @239 @57 +@255 := @134 @15 +@256 := @58 @226 +@257 := @256 @57 +@262 := {ts : @138} -> (h : @49) -> (hs : @255) -> @133 @257 @248 +@263 := @254 @88 +@264 := @58 @240 +@265 := @264 @57 +@266 := @133 @265 +@267 := @247 @88 +@270 := (h : @53) -> (hs : @135) -> @266 @267 +@271 := @263 @51 +@272 := @61 @57 +@274 := @133 @272 @267 +@275 := (hs : @135) -> @274 +@276 := @271 @132 +@278 := @133 @60 @267 +@279 := @212 @6 +@281 := @43 @243 @4 +@282 := @5 @147 +@283 := @58 @282 +@291 := {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @281) -> (hs : @216) -> @133 (@283 @12) @162 +@292 := @279 @7 +@298 := {vs : @137} -> {ts : @138} -> (h : @227 @7) -> (hs : @216) -> @232 @248 +@299 := @292 @60 +@300 := @266 @15 +@301 := @244 @257 +@302 := @133 @301 +@306 := {ts : @138} -> (h : @242) -> (hs : @300) -> @302 @248 +@307 := @299 @267 +@308 := @256 @265 +@309 := @133 @308 +@310 := @247 @267 +@313 := (h : @49) -> (hs : @274) -> @309 @310 +@314 := @307 @47 +@315 := @264 @272 +@316 := @133 @315 +@318 := (hs : @278) -> @316 @310 +@319 := @314 @276 +@320 := @133 @62 +@321 := @320 @310 +@322 := LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.denote +@324 := @322 @4 @15 +@325 := LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.__fits_0 +@327 := @325 @4 @15 +@330 := LexLeanStd.Text.endsWith @4 @15 +@332 := LexLeanTarget.TargetSyntax.Value.bool @330 +@335 := LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.root @4 @15 +@336 := Bool +@337 := Ne.{1} +@338 := LexLeanPreservation.Obs +@339 := @337 @338 +@340 := LexLeanPreservation.Rel +@343 := @339 (@340 @15 @17) +@344 := LexLeanPreservation.Obs.stuck +@347 := (f : @336) -> (v : @54) -> @343 @344 +@349 := LexLeanPreservation.Rust.rel_ne_stuck @327 +@356 := (v : @54) -> @339 (@340 (@325 @12 @4) @17) @344 +@357 := @349 @332 +@361 := @339 (@340 @327 @332) @344 +@362 := @136 @66 +@363 := LexLeanPreservation.Rust.FunSem +@364 := #9 +@370 := (n : @63) -> @363 @364 @153 @147 @17 @139 +@371 := Eq.{1} +@372 := Option.{0} +@373 := @372 @83 +@374 := @371 @373 +@381 := LexLeanRuntime.index (@136 @83) @83 (LexLeanRuntime.instIndexableList @83) +@385 := @374 (@381 (@84 @364) @139) +@386 := Option.some.{0} +@387 := @386 @83 +@388 := @387 @141 +@389 := @385 @388 +@390 := #10 +@394 := @108 @390 @364 @153 @141 +@395 := LexLeanTarget.TargetSyntax.Function.types +@396 := @395 @139 +@397 := @394 @396 +@398 := @372 @362 +@399 := @371 @398 +@400 := LexLeanTarget.TargetSemantics.bindAll +@401 := LexLeanTarget.TargetSyntax.Function.parameters +@406 := @399 (@400 (@401 @147) @139 @76) +@407 := @386 @362 +@408 := @407 @141 +@409 := @406 @408 +@410 := @372 @336 +@411 := @371 @410 +@412 := LexLeanPreservation.Rust.fnFallible +@413 := #11 +@416 := @411 (@412 @413 @364) +@417 := @386 @336 +@418 := @417 @141 +@419 := @416 @418 +@420 := LexLeanPreservation.RunConv +@421 := #13 +@425 := @420 @421 @390 @153 @141 +@427 := @339 @139 @344 +@428 := Exists.{1} +@429 := LexLeanPreservation.Rust.ROut +@430 := @428 @429 +@431 := And +@432 := LexLeanPreservation.Rust.RealizesFn +@436 := @431 (@432 @364 @153 @17) +@437 := LexLeanPreservation.Rust.RCI +@439 := @437 #15 +@440 := LexLeanPreservation.Rust.fnIdent +@441 := @440 @421 +@448 := (hne : @427) -> @430 (fun (ro : @429) => @436 (@439 @441 @413 @17)) +@463 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {f : @63} -> + {fn : @83} -> + {args : @137} -> + {env : @362} -> + {F : @336} -> + {o : @338} -> + (hB : @370) -> + (hfn : @389) -> (hwt : @397) -> (hbind : @409) -> (hF : @419) -> (hA : @425) -> @448 +@465 := LexLeanPreservation.Rust.compose @0 +@466 := @363 @0 +@471 := (n : @63) -> @466 @153 @147 @17 @139 +@472 := @381 @85 +@475 := @374 (@472 @139) @388 +@479 := @119 @364 @153 @141 @396 +@480 := @420 @0 +@483 := @480 @390 @153 @141 +@497 := {c : @9} -> + {A : @10} -> + {f : @63} -> + {fn : @83} -> + {args : @137} -> + {env : @362} -> + {F : @336} -> + {o : @338} -> + (hB : @471) -> + (hfn : @475) -> (hwt : @479) -> (hbind : @409) -> (hF : @419) -> (hA : @483) -> @448 +@498 := @465 @1 +@499 := @466 @1 +@503 := (n : @63) -> @499 @147 @17 @139 +@506 := @127 @153 @141 @396 +@507 := @412 @1 +@510 := @411 (@507 @364) @418 +@511 := @437 @1 +@521 := (hbind : @409) -> + (hF : @510) -> (hA : @483) -> (hne : @427) -> @430 (fun (ro : @429) => @436 (@511 @441 @413 @17)) +@531 := {A : @10} -> + {f : @63} -> + {fn : @83} -> + {args : @137} -> + {env : @362} -> {F : @336} -> {o : @338} -> (hB : @503) -> (hfn : @475) -> (hwt : @506) -> @521 +@532 := @498 @2 +@534 := @499 @2 @17 +@536 := (n : @63) -> @534 @139 +@537 := @133 @141 +@538 := @537 @396 +@547 := {f : @63} -> + {fn : @83} -> + {args : @137} -> + {env : @362} -> {F : @336} -> {o : @338} -> (hB : @536) -> (hfn : @475) -> (hwt : @538) -> @521 +@548 := @532 @73 +@550 := (n : @63) -> @534 @73 +@551 := @472 @73 +@552 := @374 @551 +@553 := @552 @388 +@554 := @507 @73 +@555 := @411 @554 +@556 := @555 @418 +@557 := @480 @73 +@559 := @557 @153 @141 +@561 := @511 (@440 @73) +@569 := (hF : @556) -> (hA : @559) -> (hne : @427) -> @430 (fun (ro : @429) => @436 (@561 @413 @17)) +@578 := {fn : @83} -> + {args : @137} -> + {env : @362} -> + {F : @336} -> {o : @338} -> (hB : @550) -> (hfn : @553) -> (hwt : @538) -> (hbind : @409) -> @569 +@579 := @548 @103 +@581 := @552 (@387 @103) +@582 := @395 @103 +@583 := @537 @582 +@585 := @400 (@401 @103) +@597 := {args : @137} -> + {env : @362} -> + {F : @336} -> + {o : @338} -> + (hB : @550) -> (hfn : @581) -> (hwt : @583) -> (hbind : @399 (@585 @139 @76) @408) -> @569 +@598 := @579 @62 +@600 := @283 (@230 @57) +@602 := @133 @600 @582 +@604 := @58 (@5 @153) +@606 := @604 (@283 @57) +@610 := @399 (@585 @606 @76) @408 +@612 := @58 (@5 @390) +@614 := @58 (@5 @364) +@616 := @612 (@614 @57) +@618 := @557 @616 @141 +@620 := @58 (@5 @421) +@623 := @58 (@5 #12) +@640 := {env : @362} -> + {F : @336} -> + {o : @338} -> + (hB : @550) -> + (hfn : @581) -> + (hwt : @602) -> + (hbind : @610) -> + (hF : @556) -> + (hA : @618) -> (hne : @427) -> @430 (fun (ro : @429) => @436 (@561 (@620 (@623 @57)) @17)) +@641 := @598 @81 +@643 := @230 (@244 @57) +@645 := @133 @643 @582 +@656 := @399 (@585 @600 @76) (@407 (@77 (@71 @229) (@77 (@74 @282) @76))) +@658 := @614 (@604 @57) +@660 := @557 @658 @141 +@662 := @58 (@5 @413) +@678 := {F : @336} -> + {o : @338} -> + (hB : @550) -> + (hfn : @581) -> + (hwt : @645) -> + (hbind : @656) -> + (hF : @556) -> + (hA : @660) -> (hne : @427) -> @430 (fun (ro : @429) => @436 (@561 (@623 (@662 @57)) @17)) +@679 := @641 @82 +@680 := @302 @582 +@691 := @399 (@585 @643 @76) (@407 (@77 (@71 @243) (@77 (@74 @229) @76))) +@693 := @555 (@417 @82) +@695 := @557 @606 @141 +@696 := @432 @82 +@714 := {o : @338} -> + (hB : @550) -> + (hfn : @581) -> + (hwt : @680) -> + (hbind : @691) -> + (hF : @693) -> + (hA : @695) -> + (hne : @427) -> @430 (fun (ro : @429) => @431 (@696 @153 @17) (@561 (@662 (@612 @57)) @17)) +@715 := @679 @324 +@716 := @309 @582 +@727 := @399 (@585 @301 @76) (@407 (@77 (@71 @226) (@77 (@74 @243) @76))) +@728 := @557 @600 +@730 := @322 @147 @139 +@731 := @728 @730 +@733 := @322 @153 @147 +@752 := (hB : @550) -> + (hfn : @581) -> + (hwt : @716) -> + (hbind : @727) -> + (hF : @693) -> + (hA : @731) -> + (hne : @339 @733 @344) -> + @430 (fun (ro : @429) => @431 (@696 (@322 @390 @364) @17) (@561 @616 @17)) +@753 := @715 @107 +@754 := @316 @582 +@765 := @399 (@585 @308 @76) (@407 (@77 (@71 @240) (@77 (@74 @226) @76))) +@766 := @557 @643 +@768 := @322 @139 @141 +@787 := (hfn : @581) -> + (hwt : @754) -> + (hbind : @765) -> + (hF : @693) -> + (hA : @766 @768) -> + (hne : @339 @730 @344) -> + @430 (fun (ro : @429) => @431 (@696 (@322 @364 @153) @17) (@561 @658 @17)) +@788 := Eq.refl.{1} +@791 := @753 (@788 @373 @551) +@792 := @320 @582 +@803 := @399 (@585 @315 @76) (@407 (@77 (@71 @6) (@77 (@74 @240) @76))) +@804 := @557 @301 +@806 := @322 @141 @143 +@822 := (hwt : @792) -> + (hbind : @803) -> + (hF : @693) -> + (hA : @804 @806) -> + (hne : @339 @768 @344) -> @430 (fun (ro : @429) => @431 (@696 @733 @17) (@561 @606 @17)) +@823 := @791 @319 +@825 := @585 @62 @76 +@828 := @399 @825 (@407 @81) +@829 := @557 @308 +@831 := @322 @143 @12 +@846 := (hbind : @828) -> + (hF : @693) -> + (hA : @829 @831) -> + (hne : @339 @806 @344) -> @430 (fun (ro : @429) => @431 (@696 @730 @17) (@561 @600 @17)) +@849 := @823 (@788 @398 @825) +@850 := @557 @315 +@852 := @322 @12 @4 +@866 := (hF : @693) -> + (hA : @850 @852) -> + (hne : @339 @831 @344) -> @430 (fun (ro : @429) => @431 (@696 @768 @17) (@561 @643 @17)) +@869 := @849 (@788 @410 @554) +@883 := (hA : @557 @62 @324) -> + (hne : @339 @852 @344) -> @430 (fun (ro : @429) => @431 (@696 @806 @17) (@561 @301 @17)) +@884 := @869 @335 +@895 := (hne : @339 @324 @344) -> @430 (fun (ro : @429) => @431 (@696 @831 @17) (@561 @308 @17)) +@896 := @884 @357 +@902 := @431 (@696 @852 @17) (@561 @315 @17) +@904 := @430 (fun (ro : @429) => @902) +@906 := @430 (fun (__e_ro : @429) => @902) +@911 := LexLeanPreservation.Rust.RepresentableL (@59 (@58 @18 @57)) +@912 := (__e_hrep : @911) -> @906 +@913 := fun (__e_hrep : @911) => @896 +@914 := (suffix : @3) -> @912 +@915 := fun (suffix : @3) => @913 +@916 := (subject : @3) -> @914 +@917 := fun (subject : @3) => @915 +\end{coremodule} +\end{lexlean} diff --git a/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R1/RustStd.lean b/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R1/RustStd.lean new file mode 100644 index 000000000..3def2d16d --- /dev/null +++ b/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R1/RustStd.lean @@ -0,0 +1,33 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1], types := [.bytes, .bytes], result := .bool, + body := (.«let» 2 .nat (.prim .length [(.var 0)]) (.«let» 3 .nat (.prim .length [(.var 1)]) (.cond (.prim .natLe [(.var 3), (.var 2)]) (.«match» .bool (.prim .slice [(.var 0), (.prim .natSub [(.var 2), (.var 3)]), (.var 3)]) [(.arm .some [4] (.prim .equal [(.var 4), (.var 1)])), (.arm .none [] (.build .false .bool []))]) (.build .false .bool [])))) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] .bool (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 1))] false)))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 2))] false)))), (.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 2)))] (.cond (.call (.runtime .natLe) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false) (.mk [(.mk (.bind (.generated .holder 10)) none (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 8)) none (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false)))), (.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 3)))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 7)), (.move (.generated .operand 8)), (.move (.generated .operand 9))] false))))] (.matchOn (.move (.generated .holder 10)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.bind (.generated .binding 4))) (.mk [(.mk (.bind (.generated .operand 11)) none (.move (.generated .binding 4))), (.mk (.bind (.generated .operand 12)) none (.move (.generated .binding 1)))] (.call (.runtime .equal) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false)))])) (.mk [] (.lit (.bool false))))))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 1))] false)))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 2))] false)))), (.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 2)))], (.cond (.call (.runtime .natLe) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false) (.mk [(.mk (.bind (.generated .holder 10)) none (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 8)) none (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false)))), (.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 3)))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 7)), (.move (.generated .operand 8)), (.move (.generated .operand 9))] false))))] (.matchOn (.move (.generated .holder 10)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.bind (.generated .binding 4))) (.mk [(.mk (.bind (.generated .operand 11)) none (.move (.generated .binding 4))), (.mk (.bind (.generated .operand 12)) none (.move (.generated .binding 1)))] (.call (.runtime .equal) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false)))])) (.mk [] (.lit (.bool false)))), [(1, .bytes, (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 1))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 2)) none (.clone (.generated .binding 1)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 2))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := [(.mk (.bind (.generated .operand 3)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 2)))]) (ce := (.call (.runtime .natLe) [(.move (.generated .operand 3)), (.move (.generated .operand 4))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .holder 10)) none (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 8)) none (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false)))), (.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 3)))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 7)), (.move (.generated .operand 8)), (.move (.generated .operand 9))] false))))]) (ta := (.matchOn (.move (.generated .holder 10)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.bind (.generated .binding 4))) (.mk [(.mk (.bind (.generated .operand 11)) none (.move (.generated .binding 4))), (.mk (.bind (.generated .operand 12)) none (.move (.generated .binding 1)))] (.call (.runtime .equal) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false)))])) (lb := []) (tb := (.lit (.bool false))) (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 7)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 8)) none (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false)))), (.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 3)))]) (tail := (.call (.runtime .sliceBytes) [(.move (.generated .operand 7)), (.move (.generated .operand 8)), (.move (.generated .operand 9))] false)) (Corr.prim (ts := [.bytes, .nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 3)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (2, .nat, (some 2)), (1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, .bytes, (some 4)), (3, .nat, (some 3)), (2, .nat, (some 2)), (1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .operand 11)) none (.move (.generated .binding 4))), (.mk (.bind (.generated .operand 12)) none (.move (.generated .binding 1)))]) (tail := (.call (.runtime .equal) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false)) (Corr.mNil) rfl rfl rfl (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | _ + 1 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.RustStd diff --git a/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R2.lean b/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R2.lean new file mode 100644 index 000000000..e62f457c1 --- /dev/null +++ b/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R2.lean @@ -0,0 +1,105 @@ +import LexLeanPreservation.Core +import LexLeanPreservation.Values +import LexLeanPreservation.Primitives +import LexLeanPreservation.Fixed +import LexLeanPreservation.Keys +import LexLeanPreservation.Templates +import LexLeanPreservation.Validate +import LexLeanStd.Text +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +set_option linter.unusedVariables false +namespace LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2 + +def __prog : _root_.LexLeanTarget.TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0], types := [.bytes], result := .bytes, + body := (.«let» 1 .nat (.call 1 [(.var 0)]) (.«let» 2 .nat (.call 2 [(.var 0), (.var 1)]) (.call 3 [(.var 0), (.var 2), (.prim .natSub [(.var 1), (.var 2)])]))) }, + { parameters := [0], types := [.bytes], result := .nat, + body := (.first (.call 4 [(.closure 5 [(.var 0)]), (.prim .length [(.var 0)]), (.prim .length [(.var 0)])])) }, + { parameters := [0, 1], types := [.bytes, .nat], result := .nat, + body := (.first (.call 4 [(.closure 6 [(.var 1), (.var 0)]), (.var 1), (.value .nat (.nat 0))])) }, + { parameters := [0, 1, 2], types := [.bytes, .nat, .nat], result := .bytes, + body := (.«match» .bytes (.prim .slice [(.var 0), (.var 1), (.var 2)]) [(.arm .some [3] (.var 3)), (.arm .none [] (.value .bytes (.bytes (ByteArray.mk #[]))))]) }, + { parameters := [0, 1, 2], types := [(.fn [.nat] (.option .nat)), .nat, .nat], result := (.pair .nat .bool), + body := (.«match» (.pair .nat .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair .nat .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair .nat .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair .nat .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 4 [(.var 0), (.var 3), (.var 4)]))]))]) }, + { parameters := [0, 1], types := [.bytes, .nat], result := (.option .nat), + body := (.cond (.prim .natLt [(.value .nat (.nat 0)), (.var 1)]) (.cond (.call 7 [(.var 0), (.prim .natSub [(.var 1), (.value .nat (.nat 1))])]) (.build .some (.option .nat) [(.prim .natSub [(.var 1), (.value .nat (.nat 1))])]) (.build .none (.option .nat) [])) (.build .none (.option .nat) [])) }, + { parameters := [0, 1, 2], types := [.nat, .bytes, .nat], result := (.option .nat), + body := (.cond (.prim .natLt [(.var 2), (.var 0)]) (.cond (.call 7 [(.var 1), (.var 2)]) (.build .some (.option .nat) [(.prim .natAdd [(.var 2), (.value .nat (.nat 1))])]) (.build .none (.option .nat) [])) (.build .none (.option .nat) [])) }, + { parameters := [0, 1], types := [.bytes, .nat], result := .bool, + body := (.«match» .bool (.call 8 [(.var 0), (.var 1)]) [(.arm .some [2] (.call 9 [(.var 2)])), (.arm .none [] (.build .false .bool []))]) }, + { parameters := [0, 1], types := [.bytes, .nat], result := (.option (.fixed .u8)), + body := (.prim .index [(.var 0), (.var 1)]) }, + { parameters := [0], types := [(.fixed .u8)], result := .bool, + body := (.cond (.cond (.cond (.prim .equal [(.var 0), (.value (.fixed .u8) (.u8 32))]) (.build .true .bool []) (.prim .equal [(.var 0), (.value (.fixed .u8) (.u8 9))])) (.build .true .bool []) (.prim .equal [(.var 0), (.value (.fixed .u8) (.u8 10))])) (.build .true .bool []) (.cond (.prim .equal [(.var 0), (.value (.fixed .u8) (.u8 12))]) (.build .true .bool []) (.prim .equal [(.var 0), (.value (.fixed .u8) (.u8 13))]))) }] } + +def __fits_8 (subject : ByteArray) (position : Nat) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_8 (subject : ByteArray) (position : Nat) : _root_.LexLeanPreservation.FunRel __prog 8 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat position)] (_root_.LexLeanPreservation.Rel (__fits_8 subject position) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u8) (LexLeanStd.Text.byteAt subject position))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_index_bytes subject position)) + +def __fits_9 (byte : UInt8) : Bool := + (((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal (byte) ((32 : UInt8)) : Bool) then (Bool.true && Bool.true) else ((Bool.true && (Bool.true && Bool.true)) && Bool.true))) && (if ((_root_.LexLeanRuntime.equal (byte) ((32 : UInt8)) : Bool) || (_root_.LexLeanRuntime.equal (byte) ((9 : UInt8)) : Bool)) then (Bool.true && Bool.true) else ((Bool.true && (Bool.true && Bool.true)) && Bool.true))) && (if (((_root_.LexLeanRuntime.equal (byte) ((32 : UInt8)) : Bool) || (_root_.LexLeanRuntime.equal (byte) ((9 : UInt8)) : Bool)) || (_root_.LexLeanRuntime.equal (byte) ((10 : UInt8)) : Bool)) then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal (byte) ((12 : UInt8)) : Bool) then (Bool.true && Bool.true) else ((Bool.true && (Bool.true && Bool.true)) && Bool.true))))) + +theorem __rel_9 (byte : UInt8) : _root_.LexLeanPreservation.FunRel __prog 9 [(_root_.LexLeanTarget.TargetSyntax.Value.u8 byte)] (_root_.LexLeanPreservation.Rel (__fits_9 byte) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanStd.Text.isSpace byte))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (Bool.true && Bool.true) else (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal (byte) ((12 : UInt8)) : Bool) then (Bool.true && Bool.true) else ((Bool.true && (Bool.true && Bool.true)) && Bool.true)))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b || ((_root_.LexLeanRuntime.equal (byte) ((12 : UInt8)) : Bool) || (_root_.LexLeanRuntime.equal (byte) ((13 : UInt8)) : Bool)))) (((_root_.LexLeanRuntime.equal (byte) ((32 : UInt8)) : Bool) || (_root_.LexLeanRuntime.equal (byte) ((9 : UInt8)) : Bool)) || (_root_.LexLeanRuntime.equal (byte) ((10 : UInt8)) : Bool)) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (Bool.true && Bool.true) else ((Bool.true && (Bool.true && Bool.true)) && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b || (_root_.LexLeanRuntime.equal (byte) ((10 : UInt8)) : Bool))) ((_root_.LexLeanRuntime.equal (byte) ((32 : UInt8)) : Bool) || (_root_.LexLeanRuntime.equal (byte) ((9 : UInt8)) : Bool)) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (Bool.true && Bool.true) else ((Bool.true && (Bool.true && Bool.true)) && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b || (_root_.LexLeanRuntime.equal (byte) ((9 : UInt8)) : Bool))) (_root_.LexLeanRuntime.equal (byte) ((32 : UInt8)) : Bool) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_u8 byte (32 : UInt8))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_u8 byte (9 : UInt8))))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_u8 byte (10 : UInt8))))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => if __b then (Bool.true && Bool.true) else ((Bool.true && (Bool.true && Bool.true)) && Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (__b || (_root_.LexLeanRuntime.equal (byte) ((13 : UInt8)) : Bool))) (_root_.LexLeanRuntime.equal (byte) ((12 : UInt8)) : Bool) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_u8 byte (12 : UInt8))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_true)) (fun _ => (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_u8 byte (13 : UInt8))))))) + +def __fits_7 (subject : ByteArray) (position : Nat) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && (__fits_8 (subject) (position))) && (match (LexLeanStd.Text.byteAt (subject) (position)) with | Option.some byte => ((Bool.true && Bool.true) && (__fits_9 (byte))) | Option.none => (Bool.true && Bool.true))) + +attribute [local irreducible] LexLeanStd.Text.byteAt LexLeanStd.Text.isSpace in +theorem __rel_7 (subject : ByteArray) (position : Nat) : _root_.LexLeanPreservation.FunRel __prog 7 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat position)] (_root_.LexLeanPreservation.Rel (__fits_7 subject position) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanStd.Text.spaceAt subject position))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u8) (fun (__a : (Option UInt8)) => (match __a with | Option.some byte => ((Bool.true && Bool.true) && (__fits_9 (byte))) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option UInt8)) => _root_.LexLeanTarget.TargetSyntax.Value.bool (match __a with | Option.some byte => (LexLeanStd.Text.isSpace (byte)) | Option.none => Bool.false)) (LexLeanStd.Text.byteAt (subject) (position)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_8 (subject) (position))) (fun (__a : (Option UInt8)) _ => match __a with | Option.some byte => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_9 (byte)))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))))) + +def __fits_5 (subject : ByteArray) («end» : Nat) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.blt (0 : Nat) «end») then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && (__fits_7 (subject) ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat)))) && (if (LexLeanStd.Text.spaceAt (subject) ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat))) then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) + +attribute [local irreducible] LexLeanStd.Text.spaceAt in +theorem __rel_5 (subject : ByteArray) («end» : Nat) : _root_.LexLeanPreservation.FunRel __prog 5 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat «end»)] (_root_.LexLeanPreservation.Rel (__fits_5 subject «end») ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) ((if (Nat.blt (0 : Nat) «end») then (if (LexLeanStd.Text.spaceAt (subject) ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat))) then (Option.some ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat)) : (Option Nat)) else (Option.none : (Option Nat))) else (Option.none : (Option Nat)))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && (__fits_7 (subject) ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat)))) && (if (LexLeanStd.Text.spaceAt (subject) ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat))) then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (if (LexLeanStd.Text.spaceAt (subject) ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat))) then (Option.some ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat)) : (Option Nat)) else (Option.none : (Option Nat))) else (Option.none : (Option Nat)))) (Nat.blt (0 : Nat) «end») (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (0 : Nat) «end»)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Option.some ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat)) : (Option Nat)) else (Option.none : (Option Nat)))) (LexLeanStd.Text.spaceAt (subject) ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub «end» (1 : Nat))) _root_.LexLeanPreservation.convL_nil)) (__rel_7 (subject) ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat)))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub «end» (1 : Nat))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_1 (subject : ByteArray) : Bool := + (((Bool.true && Bool.true) && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (subject) : Nat) 18446744073709551616)) && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (subject) : Nat) 18446744073709551616)) && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : Nat) => __fits_5 (subject) __p0) ((fun («end» : Nat) => (if (Nat.blt (0 : Nat) «end») then (if (LexLeanStd.Text.spaceAt (subject) ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat))) then (Option.some ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat)) : (Option Nat)) else (Option.none : (Option Nat))) else (Option.none : (Option Nat))))) ((_root_.LexLeanRuntime.length (subject) : Nat)) ((_root_.LexLeanRuntime.length (subject) : Nat)))) + +attribute [local irreducible] LexLeanStd.Text.spaceAt in +theorem __rel_1 (subject : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 1 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject)] (_root_.LexLeanPreservation.Rel (__fits_1 subject) (_root_.LexLeanTarget.TargetSyntax.Value.nat (LexLeanStd.Text.trimEnd subject))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes subject)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes subject)) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterateUntil (es := _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.optEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) ((fun («end» : Nat) => (if (Nat.blt (0 : Nat) «end») then (if (LexLeanStd.Text.spaceAt (subject) ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat))) then (Option.some ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat)) : (Option Nat)) else (Option.none : (Option Nat))) else (Option.none : (Option Nat))))) (fun (__p0 : Nat) => __fits_5 (subject) __p0) 5 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject)] (fun (__p0 : Nat) => __rel_5 (subject) __p0) (_root_.LexLeanCollections.iterateUntil ((fun («end» : Nat) => (if (Nat.blt (0 : Nat) «end») then (if (LexLeanStd.Text.spaceAt (subject) ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat))) then (Option.some ((_root_.LexLeanRuntime.subtract («end») ((1 : Nat)) : Nat)) : (Option Nat)) else (Option.none : (Option Nat))) else (Option.none : (Option Nat)))))) (fun _ => rfl) (fun _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (p := __prog) (fi := 4) (ts := .nat) rfl ((_root_.LexLeanRuntime.length (subject) : Nat)) ((_root_.LexLeanRuntime.length (subject) : Nat))))) + +def __fits_6 («end» : Nat) (subject : ByteArray) (start : Nat) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.blt start «end») then (((Bool.true && (Bool.true && Bool.true)) && (__fits_7 (subject) (start))) && (if (LexLeanStd.Text.spaceAt (subject) (start)) then ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (start + (1 : Nat)) 18446744073709551616)) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) + +attribute [local irreducible] LexLeanStd.Text.spaceAt in +theorem __rel_6 («end» : Nat) (subject : ByteArray) (start : Nat) : _root_.LexLeanPreservation.FunRel __prog 6 [(_root_.LexLeanTarget.TargetSyntax.Value.nat «end»), (_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat start)] (_root_.LexLeanPreservation.Rel (__fits_6 «end» subject start) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) ((if (Nat.blt start «end») then (if (LexLeanStd.Text.spaceAt (subject) (start)) then (Option.some ((start + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat))) else (Option.none : (Option Nat)))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (Bool.true && Bool.true)) && (__fits_7 (subject) (start))) && (if (LexLeanStd.Text.spaceAt (subject) (start)) then ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (start + (1 : Nat)) 18446744073709551616)) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (if (LexLeanStd.Text.spaceAt (subject) (start)) then (Option.some ((start + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat))) else (Option.none : (Option Nat)))) (Nat.blt start «end») (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt start «end»)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (start + (1 : Nat)) 18446744073709551616)) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Option.some ((start + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat)))) (LexLeanStd.Text.spaceAt (subject) (start)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_7 (subject) (start))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd start (1 : Nat))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))) + +def __fits_2 (subject : ByteArray) («end» : Nat) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && (Bool.true && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : Nat) => __fits_6 («end») (subject) __p0) ((fun (start : Nat) => (if (Nat.blt start «end») then (if (LexLeanStd.Text.spaceAt (subject) (start)) then (Option.some ((start + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat))) else (Option.none : (Option Nat))))) («end») ((0 : Nat)))) + +attribute [local irreducible] LexLeanStd.Text.spaceAt in +theorem __rel_2 (subject : ByteArray) («end» : Nat) : _root_.LexLeanPreservation.FunRel __prog 2 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat «end»)] (_root_.LexLeanPreservation.Rel (__fits_2 subject «end») (_root_.LexLeanTarget.TargetSyntax.Value.nat (LexLeanStd.Text.trimStart subject «end»))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterateUntil (es := _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.optEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) ((fun (start : Nat) => (if (Nat.blt start «end») then (if (LexLeanStd.Text.spaceAt (subject) (start)) then (Option.some ((start + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat))) else (Option.none : (Option Nat))))) (fun (__p0 : Nat) => __fits_6 («end») (subject) __p0) 6 [(_root_.LexLeanTarget.TargetSyntax.Value.nat «end»), (_root_.LexLeanTarget.TargetSyntax.Value.bytes subject)] (fun (__p0 : Nat) => __rel_6 («end») (subject) __p0) (_root_.LexLeanCollections.iterateUntil ((fun (start : Nat) => (if (Nat.blt start «end») then (if (LexLeanStd.Text.spaceAt (subject) (start)) then (Option.some ((start + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat))) else (Option.none : (Option Nat)))))) (fun _ => rfl) (fun _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (p := __prog) (fi := 4) (ts := .nat) rfl («end») ((0 : Nat))))) + +def __fits_3 (subject : ByteArray) (start : Nat) (count : Nat) : Bool := + (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && Bool.true) && (match (_root_.LexLeanRuntime.slice (subject) (start) (count) : (Option ByteArray)) with | Option.some piece => Bool.true | Option.none => Bool.true)) + +theorem __rel_3 (subject : ByteArray) (start : Nat) (count : Nat) : _root_.LexLeanPreservation.FunRel __prog 3 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat start), (_root_.LexLeanTarget.TargetSyntax.Value.nat count)] (_root_.LexLeanPreservation.Rel (__fits_3 subject start count) (_root_.LexLeanTarget.TargetSyntax.Value.bytes (LexLeanStd.Text.sliceOr subject start count))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.some piece => Bool.true | Option.none => Bool.true)) (fun (__a : (Option ByteArray)) => _root_.LexLeanTarget.TargetSyntax.Value.bytes (match __a with | Option.some piece => piece | Option.none => (ByteArray.mk #[]))) (_root_.LexLeanRuntime.slice (subject) (start) (count) : (Option ByteArray)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.prim_slice_bytes subject start count)) (fun (__a : (Option ByteArray)) _ => match __a with | Option.some piece => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value)))) + +def __fits_0 (subject : ByteArray) : Bool := + (((Bool.true && Bool.true) && (__fits_1 (subject))) && (let «end» : Nat := (LexLeanStd.Text.trimEnd (subject)); (((Bool.true && (Bool.true && Bool.true)) && (__fits_2 (subject) («end»))) && (let start : Nat := (LexLeanStd.Text.trimStart (subject) («end»)); ((Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_3 (subject) (start) ((_root_.LexLeanRuntime.subtract («end») (start) : Nat)))))))) + +attribute [local irreducible] LexLeanStd.Text.sliceOr LexLeanStd.Text.trimEnd LexLeanStd.Text.trimStart in +theorem __rel_0 (subject : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject)] (_root_.LexLeanPreservation.Rel (__fits_0 subject) (_root_.LexLeanTarget.TargetSyntax.Value.bytes (LexLeanStd.Text.trim subject))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (let «end» : Nat := (LexLeanStd.Text.trimEnd (subject)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_1 (subject))) (let start : Nat := (LexLeanStd.Text.trimStart (subject) («end»)); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_2 (subject) («end»))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub «end» start)) _root_.LexLeanPreservation.convL_nil))) (__rel_3 (subject) (start) ((_root_.LexLeanRuntime.subtract («end») (start) : Nat)))))) + +def denote (subject : ByteArray) : _root_.LexLeanPreservation.Obs := + _root_.cond (__fits_0 subject) (_root_.LexLeanPreservation.Obs.value ((_root_.LexLeanTarget.TargetSyntax.Value.bytes (LexLeanStd.Text.trim subject)))) _root_.LexLeanPreservation.Obs.overflow + +theorem root (subject : ByteArray) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject)] (_root_.LexLeanPreservation.Rel (__fits_0 subject) (_root_.LexLeanTarget.TargetSyntax.Value.bytes (LexLeanStd.Text.trim subject))) := + _root_.LexLeanPreservation.run_of_funRel (__rel_0 subject) + +end LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2 diff --git a/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R2/Compose/RustStd.lex.tex b/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R2/Compose/RustStd.lex.tex new file mode 100644 index 000000000..65d0129e0 --- /dev/null +++ b/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R2/Compose/RustStd.lex.tex @@ -0,0 +1,418 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2, + LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.Compose.RustStd.root : @826 := @827 { + all: [LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.RustStd.program +@1 := LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.RustStd.krate +@2 := LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.RustStd.flags +@3 := ByteArray +@4 := #1 +@5 := LexLeanTarget.TargetSyntax.Value.bytes +@6 := @5 @4 +@7 := LexLeanTarget.TargetSyntax.Ty.bytes +@8 := LexLeanTarget.TargetSyntax.Program +@9 := LexLeanPreservation.Rust.RCrate +@10 := LexLeanPreservation.Rust.Flags +@11 := LexLeanPreservation.Rust.WT +@12 := #3 +@13 := @11 @12 +@14 := #2 +@16 := @13 @14 @4 +@17 := #0 +@18 := @5 @17 +@24 := {p : @8} -> {c : @9} -> {A : @10} -> (b : @3) -> @16 @18 @7 +@26 := LexLeanPreservation.Rust.wt_bytes @0 +@27 := @11 @0 +@34 := {c : @9} -> {A : @10} -> (b : @3) -> @27 @14 @4 @18 @7 +@35 := @26 @1 +@36 := @27 @1 +@41 := {A : @10} -> (b : @3) -> @36 @4 @18 @7 +@42 := @35 @2 +@43 := @36 @2 +@46 := (b : @3) -> @43 @18 @7 +@47 := @42 @4 +@49 := @43 @6 @7 +@50 := LexLeanTarget.TargetSyntax.Value +@51 := List.nil.{0} +@52 := List.cons.{0} +@53 := @51 @50 +@54 := @52 @50 +@56 := @54 @6 @53 +@57 := Nat +@60 := Prod.{0, 0} @57 @50 +@61 := 0 +@65 := Prod.mk.{0, 0} @57 @50 @61 +@66 := @65 @6 +@67 := @51 @60 +@68 := @52 @60 +@70 := @68 @66 @67 +@71 := Bool.true +@72 := LexLeanTarget.TargetSyntax.Function +@73 := LexLeanTarget.TargetSyntax.Program.functions +@74 := @73 @0 +@75 := LexLeanTarget.TargetSyntax.Ty +@76 := @51 @57 +@77 := @51 @75 +@78 := LexLeanTarget.TargetSyntax.Ty.unit +@79 := LexLeanTarget.TargetSyntax.Value.unit +@82 := LexLeanTarget.TargetSyntax.Expr.value @78 @79 +@87 := LexLeanTarget.TargetSyntax.Function.mk @76 @77 @78 @82 +@92 := List.getD.{0} @72 @74 @61 @87 +@96 := fun (__e_n : @57) => + LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.RustStd.root @17 @61 +@97 := LexLeanPreservation.Rust.WTL +@105 := {p : @8} -> {c : @9} -> {A : @10} -> @97 @14 @4 @17 @53 @77 +@107 := LexLeanPreservation.Rust.wtl_nil @0 +@108 := @97 @0 +@114 := {c : @9} -> {A : @10} -> @108 @4 @17 @53 @77 +@115 := @107 @1 +@116 := @108 @1 +@120 := {A : @10} -> @116 @17 @53 @77 +@121 := @115 @2 +@122 := @116 @2 +@123 := @122 @53 +@124 := @123 @77 +@125 := List.{0} +@126 := @125 @50 +@127 := @125 @75 +@128 := #6 +@129 := @11 @128 +@130 := #5 +@131 := @129 @130 +@132 := #4 +@135 := @131 @132 @12 @14 +@136 := #7 +@141 := @97 @136 @128 @130 @14 @4 +@142 := #8 +@145 := @97 @142 @136 @128 +@147 := @54 @130 @12 +@148 := @145 @147 +@149 := @52 @75 +@151 := @149 @132 @14 +@161 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {v : @50} -> {t : @75} -> {vs : @126} -> {ts : @127} -> (h : @135) -> (hs : @141) -> @148 @151 +@163 := LexLeanPreservation.Rust.wtl_cons @0 +@183 := {c : @9} -> + {A : @10} -> + {v : @50} -> + {t : @75} -> + {vs : @126} -> + {ts : @127} -> + (h : @27 @130 @132 @12 @14) -> (hs : @108 @128 @130 @14 @4) -> @108 @136 @128 @147 @151 +@184 := @163 @1 +@200 := {A : @10} -> + {v : @50} -> + {t : @75} -> + {vs : @126} -> + {ts : @127} -> (h : @36 @132 @12 @14) -> (hs : @116 @130 @14 @4) -> @116 @128 @147 @151 +@201 := @184 @2 +@203 := @43 @12 @14 +@205 := @122 @14 @4 +@213 := {v : @50} -> + {t : @75} -> {vs : @126} -> {ts : @127} -> (h : @203) -> (hs : @205) -> @122 @147 @151 +@214 := @201 @6 +@215 := @5 @132 +@217 := @43 @215 @14 +@218 := @5 @128 +@219 := @54 @218 +@227 := {t : @75} -> {vs : @126} -> {ts : @127} -> (h : @217) -> (hs : @205) -> @122 (@219 @12) @151 +@228 := @214 @7 +@229 := @5 @12 +@231 := @43 @229 @7 +@232 := @5 @130 +@233 := @54 @232 +@235 := @122 (@233 @12) +@236 := @149 @7 +@237 := @236 @14 +@242 := {vs : @126} -> {ts : @127} -> (h : @231) -> (hs : @205) -> @235 @237 +@243 := @228 @53 +@244 := @5 @14 +@246 := @43 @244 @7 +@247 := @123 @4 +@249 := @54 @215 @53 +@250 := @122 @249 +@254 := {ts : @127} -> (h : @246) -> (hs : @247) -> @250 @237 +@255 := @243 @77 +@257 := @54 @229 @53 +@258 := @122 @257 +@259 := @236 @77 +@262 := (h : @49) -> (hs : @124) -> @258 @259 +@263 := @255 @47 +@265 := @54 @244 @53 +@266 := @122 @265 +@268 := (hs : @124) -> @266 @259 +@269 := @263 @121 +@270 := @122 @56 +@271 := @270 @259 +@272 := LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.denote +@273 := @272 @4 +@274 := LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.__fits_0 +@275 := @274 @4 +@278 := @5 (LexLeanStd.Text.trim @4) +@280 := LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.root @4 +@281 := Bool +@282 := Ne.{1} +@283 := LexLeanPreservation.Obs +@284 := @282 @283 +@285 := LexLeanPreservation.Rel +@288 := @284 (@285 @4 @17) +@289 := LexLeanPreservation.Obs.stuck +@292 := (f : @281) -> (v : @50) -> @288 @289 +@294 := LexLeanPreservation.Rust.rel_ne_stuck @275 +@300 := (v : @50) -> @284 (@285 (@274 @14) @17) @289 +@301 := @294 @278 +@305 := @284 (@285 @275 @278) @289 +@306 := @125 @60 +@307 := LexLeanPreservation.Rust.FunSem +@308 := #9 +@314 := (n : @57) -> @307 @308 @142 @136 @17 @128 +@315 := Eq.{1} +@316 := Option.{0} +@317 := @316 @72 +@318 := @315 @317 +@325 := LexLeanRuntime.index (@125 @72) @72 (LexLeanRuntime.instIndexableList @72) +@329 := @318 (@325 (@73 @308) @128) +@330 := Option.some.{0} +@331 := @330 @72 +@332 := @331 @130 +@333 := @329 @332 +@334 := #10 +@338 := @97 @334 @308 @142 @130 +@339 := LexLeanTarget.TargetSyntax.Function.types +@340 := @339 @128 +@341 := @338 @340 +@342 := @316 @306 +@343 := @315 @342 +@344 := LexLeanTarget.TargetSemantics.bindAll +@345 := LexLeanTarget.TargetSyntax.Function.parameters +@350 := @343 (@344 (@345 @136) @128 @67) +@351 := @330 @306 +@352 := @351 @130 +@353 := @350 @352 +@354 := @316 @281 +@355 := @315 @354 +@356 := LexLeanPreservation.Rust.fnFallible +@357 := #11 +@360 := @355 (@356 @357 @308) +@361 := @330 @281 +@362 := @361 @130 +@363 := @360 @362 +@364 := LexLeanPreservation.RunConv +@365 := #13 +@369 := @364 @365 @334 @142 @130 +@371 := @284 @128 @289 +@372 := Exists.{1} +@373 := LexLeanPreservation.Rust.ROut +@374 := @372 @373 +@375 := And +@376 := LexLeanPreservation.Rust.RealizesFn +@380 := @375 (@376 @308 @142 @17) +@381 := LexLeanPreservation.Rust.RCI +@383 := @381 #15 +@384 := LexLeanPreservation.Rust.fnIdent +@385 := @384 @365 +@392 := (hne : @371) -> @374 (fun (ro : @373) => @380 (@383 @385 @357 @17)) +@407 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {f : @57} -> + {fn : @72} -> + {args : @126} -> + {env : @306} -> + {F : @281} -> + {o : @283} -> + (hB : @314) -> + (hfn : @333) -> (hwt : @341) -> (hbind : @353) -> (hF : @363) -> (hA : @369) -> @392 +@409 := LexLeanPreservation.Rust.compose @0 +@410 := @307 @0 +@415 := (n : @57) -> @410 @142 @136 @17 @128 +@416 := @325 @74 +@419 := @318 (@416 @128) @332 +@423 := @108 @308 @142 @130 @340 +@424 := @364 @0 +@427 := @424 @334 @142 @130 +@441 := {c : @9} -> + {A : @10} -> + {f : @57} -> + {fn : @72} -> + {args : @126} -> + {env : @306} -> + {F : @281} -> + {o : @283} -> + (hB : @415) -> + (hfn : @419) -> (hwt : @423) -> (hbind : @353) -> (hF : @363) -> (hA : @427) -> @392 +@442 := @409 @1 +@443 := @410 @1 +@447 := (n : @57) -> @443 @136 @17 @128 +@450 := @116 @142 @130 @340 +@451 := @356 @1 +@454 := @355 (@451 @308) @362 +@455 := @381 @1 +@465 := (hbind : @353) -> + (hF : @454) -> (hA : @427) -> (hne : @371) -> @374 (fun (ro : @373) => @380 (@455 @385 @357 @17)) +@475 := {A : @10} -> + {f : @57} -> + {fn : @72} -> + {args : @126} -> + {env : @306} -> {F : @281} -> {o : @283} -> (hB : @447) -> (hfn : @419) -> (hwt : @450) -> @465 +@476 := @442 @2 +@478 := @443 @2 @17 +@480 := (n : @57) -> @478 @128 +@481 := @122 @130 +@482 := @481 @340 +@491 := {f : @57} -> + {fn : @72} -> + {args : @126} -> + {env : @306} -> {F : @281} -> {o : @283} -> (hB : @480) -> (hfn : @419) -> (hwt : @482) -> @465 +@492 := @476 @61 +@494 := (n : @57) -> @478 @61 +@495 := @416 @61 +@496 := @318 @495 +@497 := @496 @332 +@498 := @451 @61 +@499 := @355 @498 +@500 := @499 @362 +@501 := @424 @61 +@503 := @501 @142 @130 +@505 := @455 (@384 @61) +@513 := (hF : @500) -> (hA : @503) -> (hne : @371) -> @374 (fun (ro : @373) => @380 (@505 @357 @17)) +@522 := {fn : @72} -> + {args : @126} -> + {env : @306} -> + {F : @281} -> {o : @283} -> (hB : @494) -> (hfn : @497) -> (hwt : @482) -> (hbind : @353) -> @513 +@523 := @492 @92 +@525 := @496 (@331 @92) +@526 := @339 @92 +@527 := @481 @526 +@529 := @344 (@345 @92) +@541 := {args : @126} -> + {env : @306} -> + {F : @281} -> + {o : @283} -> + (hB : @494) -> (hfn : @525) -> (hwt : @527) -> (hbind : @343 (@529 @128 @67) @352) -> @513 +@542 := @523 @56 +@543 := @219 @53 +@545 := @122 @543 @526 +@548 := @54 (@5 @136) @53 +@552 := @343 (@529 @548 @67) @352 +@555 := @54 (@5 @308) @53 +@576 := {env : @306} -> + {F : @281} -> + {o : @283} -> + (hB : @494) -> + (hfn : @525) -> + (hwt : @545) -> + (hbind : @552) -> + (hF : @500) -> + (hA : @501 @555 @130) -> + (hne : @371) -> @374 (fun (ro : @373) => @380 (@505 (@54 (@5 #12) @53) @17)) +@577 := @542 @70 +@578 := @233 @53 +@580 := @122 @578 @526 +@588 := @343 (@529 @543 @67) (@351 (@68 (@65 @218) @67)) +@591 := @54 (@5 @142) @53 +@610 := {F : @281} -> + {o : @283} -> + (hB : @494) -> + (hfn : @525) -> + (hwt : @580) -> + (hbind : @588) -> + (hF : @500) -> + (hA : @501 @591 @130) -> + (hne : @371) -> @374 (fun (ro : @373) => @380 (@505 (@54 (@5 @357) @53) @17)) +@611 := @577 @71 +@612 := @250 @526 +@620 := @343 (@529 @578 @67) (@351 (@68 (@65 @232) @67)) +@622 := @499 (@361 @71) +@624 := @501 @548 @130 +@625 := @376 @71 +@644 := {o : @283} -> + (hB : @494) -> + (hfn : @525) -> + (hwt : @612) -> + (hbind : @620) -> + (hF : @622) -> + (hA : @624) -> + (hne : @371) -> @374 (fun (ro : @373) => @375 (@625 @142 @17) (@505 (@54 (@5 @334) @53) @17)) +@645 := @611 @273 +@646 := @258 @526 +@654 := @343 (@529 @249 @67) (@351 (@68 (@65 @215) @67)) +@655 := @501 @543 +@656 := @272 @128 +@657 := @655 @656 +@658 := @272 @136 +@676 := (hB : @494) -> + (hfn : @525) -> + (hwt : @646) -> + (hbind : @654) -> + (hF : @622) -> + (hA : @657) -> + (hne : @284 @658 @289) -> @374 (fun (ro : @373) => @375 (@625 (@272 @308) @17) (@505 @555 @17)) +@677 := @645 @96 +@678 := @266 @526 +@686 := @343 (@529 @257 @67) (@351 (@68 (@65 @229) @67)) +@687 := @501 @578 +@688 := @272 @130 +@706 := (hfn : @525) -> + (hwt : @678) -> + (hbind : @686) -> + (hF : @622) -> + (hA : @687 @688) -> + (hne : @284 @656 @289) -> @374 (fun (ro : @373) => @375 (@625 (@272 @142) @17) (@505 @591 @17)) +@707 := Eq.refl.{1} +@710 := @677 (@707 @317 @495) +@711 := @270 @526 +@719 := @343 (@529 @265 @67) (@351 (@68 (@65 @244) @67)) +@720 := @501 @249 +@721 := @272 @132 +@737 := (hwt : @711) -> + (hbind : @719) -> + (hF : @622) -> + (hA : @720 @721) -> + (hne : @284 @688 @289) -> @374 (fun (ro : @373) => @375 (@625 @658 @17) (@505 @548 @17)) +@738 := @710 @269 +@740 := @529 @56 @67 +@743 := @343 @740 (@351 @70) +@744 := @501 @257 +@745 := @272 @12 +@760 := (hbind : @743) -> + (hF : @622) -> + (hA : @744 @745) -> + (hne : @284 @721 @289) -> @374 (fun (ro : @373) => @375 (@625 @656 @17) (@505 @543 @17)) +@763 := @738 (@707 @342 @740) +@764 := @501 @265 +@765 := @272 @14 +@779 := (hF : @622) -> + (hA : @764 @765) -> + (hne : @284 @745 @289) -> @374 (fun (ro : @373) => @375 (@625 @688 @17) (@505 @578 @17)) +@782 := @763 (@707 @354 @498) +@796 := (hA : @501 @56 @273) -> + (hne : @284 @765 @289) -> @374 (fun (ro : @373) => @375 (@625 @721 @17) (@505 @249 @17)) +@797 := @782 @280 +@808 := (hne : @284 @273 @289) -> @374 (fun (ro : @373) => @375 (@625 @745 @17) (@505 @257 @17)) +@809 := @797 @301 +@815 := @375 (@625 @765 @17) (@505 @265 @17) +@817 := @374 (fun (ro : @373) => @815) +@819 := @374 (fun (__e_ro : @373) => @815) +@823 := LexLeanPreservation.Rust.RepresentableL (@54 @18 @53) +@824 := (__e_hrep : @823) -> @819 +@825 := fun (__e_hrep : @823) => @809 +@826 := (subject : @3) -> @824 +@827 := fun (subject : @3) => @825 +\end{coremodule} +\end{lexlean} diff --git a/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R2/RustStd.lean b/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R2/RustStd.lean new file mode 100644 index 000000000..3ce36ff6c --- /dev/null +++ b/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R2/RustStd.lean @@ -0,0 +1,107 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0], types := [.bytes], result := .bytes, + body := (.«let» 1 .nat (.call 1 [(.var 0)]) (.«let» 2 .nat (.call 2 [(.var 0), (.var 1)]) (.call 3 [(.var 0), (.var 2), (.prim .natSub [(.var 1), (.var 2)])]))) }, + { parameters := [0], types := [.bytes], result := .nat, + body := (.first (.call 4 [(.closure 5 [(.var 0)]), (.prim .length [(.var 0)]), (.prim .length [(.var 0)])])) }, + { parameters := [0, 1], types := [.bytes, .nat], result := .nat, + body := (.first (.call 4 [(.closure 6 [(.var 1), (.var 0)]), (.var 1), (.value .nat (.nat 0))])) }, + { parameters := [0, 1, 2], types := [.bytes, .nat, .nat], result := .bytes, + body := (.«match» .bytes (.prim .slice [(.var 0), (.var 1), (.var 2)]) [(.arm .some [3] (.var 3)), (.arm .none [] (.value .bytes (.bytes (ByteArray.mk #[]))))]) }, + { parameters := [0, 1, 2], types := [(.fn [.nat] (.option .nat)), .nat, .nat], result := (.pair .nat .bool), + body := (.«match» (.pair .nat .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair .nat .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair .nat .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair .nat .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 4 [(.var 0), (.var 3), (.var 4)]))]))]) }, + { parameters := [0, 1], types := [.bytes, .nat], result := (.option .nat), + body := (.cond (.prim .natLt [(.value .nat (.nat 0)), (.var 1)]) (.cond (.call 7 [(.var 0), (.prim .natSub [(.var 1), (.value .nat (.nat 1))])]) (.build .some (.option .nat) [(.prim .natSub [(.var 1), (.value .nat (.nat 1))])]) (.build .none (.option .nat) [])) (.build .none (.option .nat) [])) }, + { parameters := [0, 1, 2], types := [.nat, .bytes, .nat], result := (.option .nat), + body := (.cond (.prim .natLt [(.var 2), (.var 0)]) (.cond (.call 7 [(.var 1), (.var 2)]) (.build .some (.option .nat) [(.prim .natAdd [(.var 2), (.value .nat (.nat 1))])]) (.build .none (.option .nat) [])) (.build .none (.option .nat) [])) }, + { parameters := [0, 1], types := [.bytes, .nat], result := .bool, + body := (.«match» .bool (.call 8 [(.var 0), (.var 1)]) [(.arm .some [2] (.call 9 [(.var 2)])), (.arm .none [] (.build .false .bool []))]) }, + { parameters := [0, 1], types := [.bytes, .nat], result := (.option (.fixed .u8)), + body := (.prim .index [(.var 0), (.var 1)]) }, + { parameters := [0], types := [(.fixed .u8)], result := .bool, + body := (.cond (.cond (.cond (.prim .equal [(.var 0), (.value (.fixed .u8) (.u8 32))]) (.build .true .bool []) (.prim .equal [(.var 0), (.value (.fixed .u8) (.u8 9))])) (.build .true .bool []) (.prim .equal [(.var 0), (.value (.fixed .u8) (.u8 10))])) (.build .true .bool []) (.cond (.prim .equal [(.var 0), (.value (.fixed .u8) (.u8 12))]) (.build .true .bool []) (.prim .equal [(.var 0), (.value (.fixed .u8) (.u8 13))]))) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.enum (.fn 0) [{ number := 5, fields := [.bytes] }, { number := 6, fields := [.nat, .bytes] }]), + (.apply 0 [.nat] (.option .nat) true [{ function := 5, captures := [.clone], functionFallible := false }, { function := 6, captures := [.copy, .clone], functionFallible := true }]), + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] (.fallible .bytes) (.mk [(.mk (.bind (.generated .binding 1)) (some .nat) (.call (.function 1) [(.clone (.generated .binding 0))] true)), (.mk (.bind (.generated .binding 2)) (some .nat) (.call (.function 2) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1))] true))] (.succeed (.call (.function 3) [(.move (.generated .binding 0)), (.copy (.generated .binding 2)), (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 2)))] (.call (.runtime .natSub) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false)))] false)))), + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] (.fallible .nat) (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.call (.function 4) [(.construct (.closure 0 5) [(.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 4)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 4))] false))), (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 5))] false)))] true))] (.succeed (.move (.generated .part 3))))), + (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.fallible .nat) (.mk [(.mk (.tuple [(.bind (.generated .part 6)), .wild]) none (.call (.function 4) [(.construct (.closure 0 6) [(.copy (.generated .binding 1)), (.move (.generated .binding 0))]), (.copy (.generated .binding 1)), (.lit (.nat 0))] true))] (.succeed (.move (.generated .part 6))))), + (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := .nat }] .bytes (.mk [(.mk (.bind (.generated .holder 10)) none (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 2)))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 7)), (.move (.generated .operand 8)), (.move (.generated .operand 9))] false))))] (.matchOn (.move (.generated .holder 10)) [(.mk .none (.mk [] (.lit (.bytes (ByteArray.mk #[]))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.move (.generated .binding 3))))]))), + (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.fallible (.pair .nat .bool)) (.mk [(.mk (.bind (.generated .holder 11)) none (.copy (.generated .binding 1)))] (.cond (.isZero (.generated .holder 11)) (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 11))), (.mk (.bind (.generated .holder 13)) none (.block (.mk [(.mk (.bind (.generated .callee 12)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 12) [(.copy (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)))]))))), + (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.option .nat) (.mk [(.mk (.bind (.generated .operand 14)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false) (.mk [] (.cond (.call (.function 7) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 17)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false)))] false) (.mk [] (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 18)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 19)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false)))])) (.mk [] (.construct (.none .nat) [])))) (.mk [] (.construct (.none .nat) []))))), + (.function (.generated .function 6) [{ pattern := (.bind (.generated .binding 0)), type := .nat }, { pattern := (.bind (.generated .binding 1)), type := .bytes }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.fallible (.option .nat)) (.mk [(.mk (.bind (.generated .operand 20)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 21)) none (.copy (.generated .binding 0)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 20)), (.move (.generated .operand 21))] false) (.mk [] (.cond (.call (.function 7) [(.move (.generated .binding 1)), (.copy (.generated .binding 2))] false) (.mk [] (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 22)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 23)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 22)), (.move (.generated .operand 23))] true)))]))) (.mk [] (.succeed (.construct (.none .nat) []))))) (.mk [] (.succeed (.construct (.none .nat) [])))))), + (.function (.generated .function 7) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .holder 24)) none (.call (.function 8) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false))] (.matchOn (.move (.generated .holder 24)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.call (.function 9) [(.copy (.generated .binding 2))] false)))]))), + (.function (.generated .function 8) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.option (.fixed .u8)) (.mk [(.mk (.bind (.generated .operand 25)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 1)))] (.call (.runtime .indexBytes) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false))), + (.function (.generated .function 9) [{ pattern := (.bind (.generated .binding 0)), type := (.fixed .u8) }] .bool (.mk [(.mk (.bind (.generated .operand 27)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 28)) none (.lit (.fixed .u8 32)))] (.cond (.cond (.cond (.call (.runtime .equal) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 29)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 30)) none (.lit (.fixed .u8 9)))] (.call (.runtime .equal) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 31)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 32)) none (.lit (.fixed .u8 10)))] (.call (.runtime .equal) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 33)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 34)) none (.lit (.fixed .u8 12)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 35)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 36)) none (.lit (.fixed .u8 13)))] (.call (.runtime .equal) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false)))))))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [(([.nat], (.option .nat)), true)] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some .nat) (.call (.function 1) [(.clone (.generated .binding 0))] true)), (.mk (.bind (.generated .binding 2)) (some .nat) (.call (.function 2) [(.clone (.generated .binding 0)), (.copy (.generated .binding 1))] true))], (.succeed (.call (.function 3) [(.move (.generated .binding 0)), (.copy (.generated .binding 2)), (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 2)))] (.call (.runtime .natSub) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false)))] false)), [(0, .bytes, (some 0))], rfl, rfl, + (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) rfl (Corr.fOfB (Corr.callOps (ts := [.bytes, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 2)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 1)), (.move (.generated .operand 2))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl))))⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.call (.function 4) [(.construct (.closure 0 5) [(.clone (.generated .binding 0))]), (.block (.mk [(.mk (.bind (.generated .operand 4)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 4))] false))), (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 5))] false)))] true))], (.succeed (.move (.generated .part 3))), [(0, .bytes, (some 0))], rfl, rfl, + (Corr.fOfB (Corr.first (ta := .nat) (tb := .bool) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [.nat] (.option .nat)), .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [.bytes]) (mask := [false]) (af := true) (ff := false) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 4)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 4))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 5)) none (.move (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 5))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl))⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.tuple [(.bind (.generated .part 6)), .wild]) none (.call (.function 4) [(.construct (.closure 0 6) [(.copy (.generated .binding 1)), (.move (.generated .binding 0))]), (.copy (.generated .binding 1)), (.lit (.nat 0))] true))], (.succeed (.move (.generated .part 6))), [(1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.fOfB (Corr.first (ta := .nat) (tb := .bool) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [.nat] (.option .nat)), .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [.nat, .bytes]) (mask := [false, false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl))⟩⟩ + +theorem fun3 : FunOK program krate flags 3 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 10)) none (.block (.mk [(.mk (.bind (.generated .operand 7)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 2)))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 7)), (.move (.generated .operand 8)), (.move (.generated .operand 9))] false))))], (.matchOn (.move (.generated .holder 10)) [(.mk .none (.mk [] (.lit (.bytes (ByteArray.mk #[]))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.move (.generated .binding 3))))]), [(2, .nat, (some 2)), (1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 7)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .sliceBytes) [(.move (.generated .operand 7)), (.move (.generated .operand 8)), (.move (.generated .operand 9))] false)) (Corr.prim (ts := [.bytes, .nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, .nat, (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bytes (ByteArray.mk #[])))) (Corr.mCons (Γ' := [(3, .bytes, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 3))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.bOfE (Corr.value rfl rfl))) rfl rfl rfl)⟩⟩ + +theorem fun4 : FunOK program krate flags 4 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 11)) none (.copy (.generated .binding 1)))], (.cond (.isZero (.generated .holder 11)) (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 11))), (.mk (.bind (.generated .holder 13)) none (.block (.mk [(.mk (.bind (.generated .callee 12)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 12) [(.copy (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)))]))), [(2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat] (.option .nat)), (some 0))], rfl, rfl, + (Corr.matchNat (sl := (some 3)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool false))))) (lb := [(.mk (.bind (.generated .holder 13)) none (.block (.mk [(.mk (.bind (.generated .callee 12)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 12) [(.copy (.generated .binding 2))] true))))]) (tb := (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)))])) (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))))) (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 12)) (some (.fn 0)) (.clone (.generated .binding 0)))]) (tail := (.apply (.generated .callee 12) [(.copy (.generated .binding 2))] true)) (Corr.apply (ps := [.nat]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat] (.option .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true))))) (Corr.mCons (Γ' := [(4, .nat, (some 4)), (3, .nat, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat] (.option .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [.nat] (.option .nat)), .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))))))) rfl rfl rfl)))⟩⟩ + +theorem fun5 : FunOK program krate flags 5 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 14)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1)))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false) (.mk [] (.cond (.call (.function 7) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 17)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false)))] false) (.mk [] (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 18)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 19)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false)))])) (.mk [] (.construct (.none .nat) [])))) (.mk [] (.construct (.none .nat) []))), [(1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 14)) none (.lit (.nat 0))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 14)), (.move (.generated .operand 15))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 7) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 17)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false)))] false) (.mk [] (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 18)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 19)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false)))])) (.mk [] (.construct (.none .nat) [])))) (lb := []) (tb := (.construct (.none .nat) [])) (Corr.cond (lc := []) (ce := (.call (.function 7) [(.move (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 17)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false)))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 17)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 16)), (.move (.generated .operand 17))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 18)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 19)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false)))])) (lb := []) (tb := (.construct (.none .nat) [])) (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 18)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 19)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 18)), (.move (.generated .operand 19))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))⟩⟩ + +theorem fun6 : FunOK program krate flags 6 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 20)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 21)) none (.copy (.generated .binding 0)))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 20)), (.move (.generated .operand 21))] false) (.mk [] (.cond (.call (.function 7) [(.move (.generated .binding 1)), (.copy (.generated .binding 2))] false) (.mk [] (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 22)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 23)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 22)), (.move (.generated .operand 23))] true)))]))) (.mk [] (.succeed (.construct (.none .nat) []))))) (.mk [] (.succeed (.construct (.none .nat) [])))), [(2, .nat, (some 2)), (1, .bytes, (some 1)), (0, .nat, (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 20)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 21)) none (.copy (.generated .binding 0)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 20)), (.move (.generated .operand 21))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.cond (.call (.function 7) [(.move (.generated .binding 1)), (.copy (.generated .binding 2))] false) (.mk [] (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 22)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 23)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 22)), (.move (.generated .operand 23))] true)))]))) (.mk [] (.succeed (.construct (.none .nat) []))))) (lb := []) (tb := (.succeed (.construct (.none .nat) []))) (Corr.cond (lc := []) (ce := (.call (.function 7) [(.move (.generated .binding 1)), (.copy (.generated .binding 2))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 22)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 23)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 22)), (.move (.generated .operand 23))] true)))]))) (lb := []) (tb := (.succeed (.construct (.none .nat) []))) (Corr.fOfB (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 22)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 23)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 22)), (.move (.generated .operand 23))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))⟩⟩ + +theorem fun7 : FunOK program krate flags 7 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 24)) none (.call (.function 8) [(.move (.generated .binding 0)), (.copy (.generated .binding 1))] false))], (.matchOn (.move (.generated .holder 24)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.call (.function 9) [(.copy (.generated .binding 2))] false)))]), [(1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option (.fixed .u8))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, .nat, (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(2, (.fixed .u8), (some 2)), (1, .nat, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.call (.function 9) [(.copy (.generated .binding 2))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.fixed .u8)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ + +theorem fun8 : FunOK program krate flags 8 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 25)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 1)))], (.call (.runtime .indexBytes) [(.move (.generated .operand 25)), (.move (.generated .operand 26))] false), [(1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.prim (ts := [.bytes, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun9 : FunOK program krate flags 9 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 27)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 28)) none (.lit (.fixed .u8 32)))], (.cond (.cond (.cond (.call (.runtime .equal) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 29)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 30)) none (.lit (.fixed .u8 9)))] (.call (.runtime .equal) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 31)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 32)) none (.lit (.fixed .u8 10)))] (.call (.runtime .equal) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 33)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 34)) none (.lit (.fixed .u8 12)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 35)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 36)) none (.lit (.fixed .u8 13)))] (.call (.runtime .equal) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false))))), [(0, (.fixed .u8), (some 0))], rfl, rfl, + (Corr.cond (lc := [(.mk (.bind (.generated .operand 27)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 28)) none (.lit (.fixed .u8 32)))]) (ce := (.cond (.cond (.call (.runtime .equal) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 29)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 30)) none (.lit (.fixed .u8 9)))] (.call (.runtime .equal) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false))) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 31)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 32)) none (.lit (.fixed .u8 10)))] (.call (.runtime .equal) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false)))) (lk := []) (Corr.cond (lc := [(.mk (.bind (.generated .operand 27)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 28)) none (.lit (.fixed .u8 32)))]) (ce := (.cond (.call (.runtime .equal) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 29)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 30)) none (.lit (.fixed .u8 9)))] (.call (.runtime .equal) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false)))) (lk := []) (Corr.cond (lc := [(.mk (.bind (.generated .operand 27)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 28)) none (.lit (.fixed .u8 32)))]) (ce := (.call (.runtime .equal) [(.move (.generated .operand 27)), (.move (.generated .operand 28))] false)) (lk := []) (Corr.prim (ts := [(.fixed .u8), (.fixed .u8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 29)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 30)) none (.lit (.fixed .u8 9)))]) (tb := (.call (.runtime .equal) [(.move (.generated .operand 29)), (.move (.generated .operand 30))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.prim (ts := [(.fixed .u8), (.fixed .u8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl))) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 31)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 32)) none (.lit (.fixed .u8 10)))]) (tb := (.call (.runtime .equal) [(.move (.generated .operand 31)), (.move (.generated .operand 32))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.prim (ts := [(.fixed .u8), (.fixed .u8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl))) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 33)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 34)) none (.lit (.fixed .u8 12)))]) (tb := (.cond (.call (.runtime .equal) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false) (.mk [] (.lit (.bool true))) (.mk [(.mk (.bind (.generated .operand 35)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 36)) none (.lit (.fixed .u8 13)))] (.call (.runtime .equal) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false)))) (Corr.bOfE (Corr.buildConst rfl)) (Corr.cond (lc := [(.mk (.bind (.generated .operand 33)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 34)) none (.lit (.fixed .u8 12)))]) (ce := (.call (.runtime .equal) [(.move (.generated .operand 33)), (.move (.generated .operand 34))] false)) (lk := []) (Corr.prim (ts := [(.fixed .u8), (.fixed .u8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.lit (.bool true))) (lb := [(.mk (.bind (.generated .operand 35)) none (.copy (.generated .binding 0))), (.mk (.bind (.generated .operand 36)) none (.lit (.fixed .u8 13)))]) (tb := (.call (.runtime .equal) [(.move (.generated .operand 35)), (.move (.generated .operand 36))] false)) (Corr.bOfE (Corr.buildConst rfl)) (Corr.prim (ts := [(.fixed .u8), (.fixed .u8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)))))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | 3 => exact fun3 + | 4 => exact fun4 + | 5 => exact fun5 + | 6 => exact fun6 + | 7 => exact fun7 + | 8 => exact fun8 + | 9 => exact fun9 + | _ + 10 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.RustStd diff --git a/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R3.lean b/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R3.lean new file mode 100644 index 000000000..d42ab4b81 --- /dev/null +++ b/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R3.lean @@ -0,0 +1,88 @@ +import LexLeanPreservation.Core +import LexLeanPreservation.Values +import LexLeanPreservation.Primitives +import LexLeanPreservation.Fixed +import LexLeanPreservation.Keys +import LexLeanPreservation.Templates +import LexLeanPreservation.Validate +import LexLeanStd.Text +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +set_option linter.unusedVariables false +namespace LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3 + +def __prog : _root_.LexLeanTarget.TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1], types := [.bytes, (.fixed .u8)], result := (.list .bytes), + body := (.«let» 2 .nat (.prim .length [(.var 0)]) (.«let» 3 (.pair .nat (.pair .nat (.list .bytes))) (.first (.call 1 [(.closure 2 [(.var 1), (.var 0)]), (.var 2), (.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.value .nat (.nat 0)), (.build .pair (.pair .nat (.list .bytes)) [(.value .nat (.nat 0)), (.build .nil (.list .bytes) [])])])])) (.«let» 4 .nat (.first (.second (.var 3))) (.call 3 [(.build .cons (.list .bytes) [(.call 4 [(.var 0), (.var 4), (.prim .natSub [(.var 2), (.var 4)])]), (.second (.second (.var 3)))])])))) }, + { parameters := [0, 1, 2], types := [(.fn [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes))))), .nat, (.pair .nat (.pair .nat (.list .bytes)))], result := (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool), + body := (.«match» (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 1 [(.var 0), (.var 3), (.var 4)]))]))]) }, + { parameters := [0, 1, 2], types := [(.fixed .u8), .bytes, (.pair .nat (.pair .nat (.list .bytes)))], result := (.option (.pair .nat (.pair .nat (.list .bytes)))), + body := (.call 5 [(.var 1), (.var 0), (.var 2)]) }, + { parameters := [0], types := [(.list .bytes)], result := (.list .bytes), + body := (.call 6 [(.closure 7 []), (.build .nil (.list .bytes) []), (.var 0)]) }, + { parameters := [0, 1, 2], types := [.bytes, .nat, .nat], result := .bytes, + body := (.«match» .bytes (.prim .slice [(.var 0), (.var 1), (.var 2)]) [(.arm .some [3] (.var 3)), (.arm .none [] (.value .bytes (.bytes (ByteArray.mk #[]))))]) }, + { parameters := [0, 1, 2], types := [.bytes, (.fixed .u8), (.pair .nat (.pair .nat (.list .bytes)))], result := (.option (.pair .nat (.pair .nat (.list .bytes)))), + body := (.«let» 3 .nat (.first (.var 2)) (.«let» 4 .nat (.first (.second (.var 2))) (.«let» 5 (.list .bytes) (.second (.second (.var 2))) (.«match» (.option (.pair .nat (.pair .nat (.list .bytes)))) (.call 8 [(.var 0), (.var 3)]) [(.arm .some [6] (.cond (.prim .equal [(.var 6), (.var 1)]) (.build .some (.option (.pair .nat (.pair .nat (.list .bytes)))) [(.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.prim .natAdd [(.var 3), (.value .nat (.nat 1))]), (.build .pair (.pair .nat (.list .bytes)) [(.prim .natAdd [(.var 3), (.value .nat (.nat 1))]), (.build .cons (.list .bytes) [(.call 4 [(.var 0), (.var 4), (.prim .natSub [(.var 3), (.var 4)])]), (.var 5)])])])]) (.build .some (.option (.pair .nat (.pair .nat (.list .bytes)))) [(.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.prim .natAdd [(.var 3), (.value .nat (.nat 1))]), (.build .pair (.pair .nat (.list .bytes)) [(.var 4), (.var 5)])])]))), (.arm .none [] (.build .none (.option (.pair .nat (.pair .nat (.list .bytes)))) []))])))) }, + { parameters := [0, 1, 2], types := [(.fn [(.list .bytes), .bytes] (.list .bytes)), (.list .bytes), (.list .bytes)], result := (.list .bytes), + body := (.«match» (.list .bytes) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 6 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, + { parameters := [0, 1], types := [(.list .bytes), .bytes], result := (.list .bytes), + body := (.build .cons (.list .bytes) [(.var 1), (.var 0)]) }, + { parameters := [0, 1], types := [.bytes, .nat], result := (.option (.fixed .u8)), + body := (.prim .index [(.var 0), (.var 1)]) }] } + +def __fits_4 (subject : ByteArray) (start : Nat) (count : Nat) : Bool := + (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && Bool.true) && (match (_root_.LexLeanRuntime.slice (subject) (start) (count) : (Option ByteArray)) with | Option.some piece => Bool.true | Option.none => Bool.true)) + +theorem __rel_4 (subject : ByteArray) (start : Nat) (count : Nat) : _root_.LexLeanPreservation.FunRel __prog 4 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat start), (_root_.LexLeanTarget.TargetSyntax.Value.nat count)] (_root_.LexLeanPreservation.Rel (__fits_4 subject start count) (_root_.LexLeanTarget.TargetSyntax.Value.bytes (LexLeanStd.Text.sliceOr subject start count))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.some piece => Bool.true | Option.none => Bool.true)) (fun (__a : (Option ByteArray)) => _root_.LexLeanTarget.TargetSyntax.Value.bytes (match __a with | Option.some piece => piece | Option.none => (ByteArray.mk #[]))) (_root_.LexLeanRuntime.slice (subject) (start) (count) : (Option ByteArray)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.prim_slice_bytes subject start count)) (fun (__a : (Option ByteArray)) _ => match __a with | Option.some piece => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value)))) + +def __fits_8 (subject : ByteArray) (position : Nat) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_8 (subject : ByteArray) (position : Nat) : _root_.LexLeanPreservation.FunRel __prog 8 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat position)] (_root_.LexLeanPreservation.Rel (__fits_8 subject position) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u8) (LexLeanStd.Text.byteAt subject position))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_index_bytes subject position)) + +def __fits_5 (subject : ByteArray) (delimiter : UInt8) (state : (Prod Nat (Prod Nat (List ByteArray)))) : Bool := + (Bool.true && (let position : Nat := (state).1; (Bool.true && (let start : Nat := ((state).2).1; (Bool.true && (let pieces : (List ByteArray) := ((state).2).2; (((Bool.true && (Bool.true && Bool.true)) && (__fits_8 (subject) (position))) && (match (LexLeanStd.Text.byteAt (subject) (position)) with | Option.some byte => (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal (byte) (delimiter) : Bool) then ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_4 (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))) && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) | Option.none => (Bool.true && Bool.true))))))))) + +attribute [local irreducible] LexLeanStd.Text.byteAt LexLeanStd.Text.sliceOr in +theorem __rel_5 (subject : ByteArray) (delimiter : UInt8) (state : (Prod Nat (Prod Nat (List ByteArray)))) : _root_.LexLeanPreservation.FunRel __prog 5 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.u8 delimiter), ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) state)] (_root_.LexLeanPreservation.Rel (__fits_5 subject delimiter state) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (LexLeanStd.Text.splitStep subject delimiter state))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (let position : Nat := (state).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (let start : Nat := ((state).2).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl))) (let pieces : (List ByteArray) := ((state).2).2; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl))) (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u8) (fun (__a : (Option UInt8)) => (match __a with | Option.some byte => (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal (byte) (delimiter) : Bool) then ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_4 (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))) && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option UInt8)) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (match __a with | Option.some byte => (if (_root_.LexLeanRuntime.equal (byte) (delimiter) : Bool) then (Option.some (((position + (1 : Nat)), ((position + (1 : Nat)), ((LexLeanStd.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat))) :: pieces)))) : (Option (Prod Nat (Prod Nat (List ByteArray))))) else (Option.some (((position + (1 : Nat)), (start, pieces))) : (Option (Prod Nat (Prod Nat (List ByteArray)))))) | Option.none => (Option.none : (Option (Prod Nat (Prod Nat (List ByteArray))))))) (LexLeanStd.Text.byteAt (subject) (position)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_8 (subject) (position))) (fun (__a : (Option UInt8)) _ => match __a with | Option.some byte => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_4 (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))) && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (if __b then (Option.some (((position + (1 : Nat)), ((position + (1 : Nat)), ((LexLeanStd.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat))) :: pieces)))) : (Option (Prod Nat (Prod Nat (List ByteArray))))) else (Option.some (((position + (1 : Nat)), (start, pieces))) : (Option (Prod Nat (Prod Nat (List ByteArray))))))) (_root_.LexLeanRuntime.equal (byte) (delimiter) : Bool) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_u8 byte delimiter)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub position start)) _root_.LexLeanPreservation.convL_nil))) (__rel_4 (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)))))))) + +def __fits_2 (delimiter : UInt8) (subject : ByteArray) (state : (Prod Nat (Prod Nat (List ByteArray)))) : Bool := + ((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_5 (subject) (delimiter) (state))) + +attribute [local irreducible] LexLeanStd.Text.splitStep in +theorem __rel_2 (delimiter : UInt8) (subject : ByteArray) (state : (Prod Nat (Prod Nat (List ByteArray)))) : _root_.LexLeanPreservation.FunRel __prog 2 [(_root_.LexLeanTarget.TargetSyntax.Value.u8 delimiter), (_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) state)] (_root_.LexLeanPreservation.Rel (__fits_2 delimiter subject state) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) ((LexLeanStd.Text.splitStep (subject) (delimiter) (state))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (__rel_5 (subject) (delimiter) (state))) + +def __fits_7 (reversed : (List ByteArray)) (piece : ByteArray) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_7 (reversed : (List ByteArray)) (piece : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 7 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) reversed), (_root_.LexLeanTarget.TargetSyntax.Value.bytes piece)] (_root_.LexLeanPreservation.Rel (__fits_7 reversed piece) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) ((piece :: reversed)))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) + +def __fits_3 (pieces : (List ByteArray)) : Bool := + ((Bool.true && ((Bool.true && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (List ByteArray)) (__p1 : ByteArray) => __fits_7 __p0 __p1) ((fun (reversed : (List ByteArray)) (piece : ByteArray) => (piece :: reversed))) (([] : List ByteArray)) (pieces))) + +theorem __rel_3 (pieces : (List ByteArray)) : _root_.LexLeanPreservation.FunRel __prog 3 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) pieces)] (_root_.LexLeanPreservation.Rel (__fits_3 pieces) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) (LexLeanStd.Text.reverse pieces))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.bytes) (es := (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun _ => rfl) ((fun (reversed : (List ByteArray)) (piece : ByteArray) => (piece :: reversed))) (fun (__p0 : (List ByteArray)) (__p1 : ByteArray) => __fits_7 __p0 __p1) 7 [] (fun (__p0 : (List ByteArray)) (__p1 : ByteArray) => __rel_7 __p0 __p1) (p := __prog) (fi := 6) (ta := .bytes) (ts := (.list .bytes)) rfl (([] : List ByteArray)) (pieces))) + +def __fits_0 (subject : ByteArray) (delimiter : UInt8) : Bool := + (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (subject) : Nat) 18446744073709551616)) && (let total : Nat := (_root_.LexLeanRuntime.length (subject) : Nat); ((((Bool.true && (Bool.true && Bool.true)) && (Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : (Prod Nat (Prod Nat (List ByteArray)))) => __fits_2 (delimiter) (subject) __p0) ((fun (state : (Prod Nat (Prod Nat (List ByteArray)))) => (LexLeanStd.Text.splitStep (subject) (delimiter) (state)))) (total) (((0 : Nat), ((0 : Nat), ([] : List ByteArray)))))) && (let final : (Prod Nat (Prod Nat (List ByteArray))) := ((_root_.LexLeanCollections.iterateUntil ((fun (state : (Prod Nat (Prod Nat (List ByteArray)))) => (LexLeanStd.Text.splitStep (subject) (delimiter) (state)))) (total) (((0 : Nat), ((0 : Nat), ([] : List ByteArray)))) : (Prod (Prod Nat (Prod Nat (List ByteArray))) Bool))).1; (Bool.true && (let start : Nat := ((final).2).1; ((((((Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_4 (subject) (start) ((_root_.LexLeanRuntime.subtract (total) (start) : Nat)))) && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && (__fits_3 (((LexLeanStd.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (total) (start) : Nat))) :: ((final).2).2)))))))))) + +attribute [local irreducible] LexLeanStd.Text.reverse LexLeanStd.Text.sliceOr LexLeanStd.Text.splitStep in +theorem __rel_0 (subject : ByteArray) (delimiter : UInt8) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.u8 delimiter)] (_root_.LexLeanPreservation.Rel (__fits_0 subject delimiter) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) (LexLeanStd.Text.splitOn subject delimiter))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (let total : Nat := (_root_.LexLeanRuntime.length (subject) : Nat); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes subject)) (let final : (Prod Nat (Prod Nat (List ByteArray))) := ((_root_.LexLeanCollections.iterateUntil ((fun (state : (Prod Nat (Prod Nat (List ByteArray)))) => (LexLeanStd.Text.splitStep (subject) (delimiter) (state)))) (total) (((0 : Nat), ((0 : Nat), ([] : List ByteArray)))) : (Prod (Prod Nat (Prod Nat (List ByteArray))) Bool))).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterateUntil (es := (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (_root_.LexLeanPreservation.optEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (fun _ => rfl) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) ((fun (state : (Prod Nat (Prod Nat (List ByteArray)))) => (LexLeanStd.Text.splitStep (subject) (delimiter) (state)))) (fun (__p0 : (Prod Nat (Prod Nat (List ByteArray)))) => __fits_2 (delimiter) (subject) __p0) 2 [(_root_.LexLeanTarget.TargetSyntax.Value.u8 delimiter), (_root_.LexLeanTarget.TargetSyntax.Value.bytes subject)] (fun (__p0 : (Prod Nat (Prod Nat (List ByteArray)))) => __rel_2 (delimiter) (subject) __p0) (_root_.LexLeanCollections.iterateUntil ((fun (state : (Prod Nat (Prod Nat (List ByteArray)))) => (LexLeanStd.Text.splitStep (subject) (delimiter) (state))))) (fun _ => rfl) (fun _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (p := __prog) (fi := 1) (ts := (.pair .nat (.pair .nat (.list .bytes)))) rfl (total) (((0 : Nat), ((0 : Nat), ([] : List ByteArray))))))) (let start : Nat := ((final).2).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub total start)) _root_.LexLeanPreservation.convL_nil))) (__rel_4 (subject) (start) ((_root_.LexLeanRuntime.subtract (total) (start) : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl))) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil) (__rel_3 (((LexLeanStd.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (total) (start) : Nat))) :: ((final).2).2))))))) + +def denote (subject : ByteArray) (delimiter : UInt8) : _root_.LexLeanPreservation.Obs := + _root_.cond (__fits_0 subject delimiter) (_root_.LexLeanPreservation.Obs.value (((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) (LexLeanStd.Text.splitOn subject delimiter)))) _root_.LexLeanPreservation.Obs.overflow + +theorem root (subject : ByteArray) (delimiter : UInt8) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.u8 delimiter)] (_root_.LexLeanPreservation.Rel (__fits_0 subject delimiter) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) (LexLeanStd.Text.splitOn subject delimiter))) := + _root_.LexLeanPreservation.run_of_funRel (__rel_0 subject delimiter) + +end LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3 diff --git a/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R3/Compose/RustStd.lex.tex b/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R3/Compose/RustStd.lex.tex new file mode 100644 index 000000000..8320c48c9 --- /dev/null +++ b/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R3/Compose/RustStd.lex.tex @@ -0,0 +1,486 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3, + LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.Compose.RustStd.root : @979 := @980 { + all: [LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.RustStd.program +@1 := LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.RustStd.krate +@2 := LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.RustStd.flags +@3 := ByteArray +@4 := #2 +@5 := LexLeanTarget.TargetSyntax.Value.bytes +@6 := @5 @4 +@7 := LexLeanTarget.TargetSyntax.Ty.bytes +@8 := LexLeanTarget.TargetSyntax.Program +@9 := LexLeanPreservation.Rust.RCrate +@10 := LexLeanPreservation.Rust.Flags +@11 := LexLeanPreservation.Rust.WT +@12 := #3 +@14 := @11 @12 @4 +@15 := #1 +@16 := @14 @15 +@17 := #0 +@18 := @5 @17 +@24 := {p : @8} -> {c : @9} -> {A : @10} -> (b : @3) -> @16 @18 @7 +@26 := LexLeanPreservation.Rust.wt_bytes @0 +@27 := @11 @0 +@29 := @27 @4 @15 +@34 := {c : @9} -> {A : @10} -> (b : @3) -> @29 @18 @7 +@35 := @26 @1 +@36 := @27 @1 +@37 := @36 @15 +@41 := {A : @10} -> (b : @3) -> @37 @18 @7 +@42 := @35 @2 +@43 := @36 @2 +@46 := (b : @3) -> @43 @18 @7 +@47 := @42 @4 +@49 := @43 @6 @7 +@50 := UInt8 +@51 := LexLeanTarget.TargetSyntax.Value.u8 +@52 := @51 @15 +@55 := LexLeanTarget.TargetSyntax.Ty.fixed LexLeanTarget.TargetSyntax.IntKind.u8 +@56 := @51 @17 +@62 := {p : @8} -> {c : @9} -> {A : @10} -> (x : @50) -> @16 @56 @55 +@64 := LexLeanPreservation.Rust.wt_u8 @0 +@69 := {c : @9} -> {A : @10} -> (x : @50) -> @29 @56 @55 +@70 := @64 @1 +@74 := {A : @10} -> (x : @50) -> @37 @56 @55 +@75 := @70 @2 +@78 := (x : @50) -> @43 @56 @55 +@79 := @75 @15 +@81 := @43 @52 @55 +@82 := LexLeanTarget.TargetSyntax.Value +@83 := List.nil.{0} +@84 := List.cons.{0} +@85 := @83 @82 +@86 := @84 @82 +@88 := @86 @52 @85 +@90 := @86 @6 @88 +@91 := Nat +@94 := Prod.{0, 0} @91 @82 +@95 := 1 +@98 := Prod.mk.{0, 0} @91 @82 +@99 := @98 @95 +@100 := @99 @52 +@101 := 0 +@102 := @98 @101 +@103 := @102 @6 +@104 := @83 @94 +@105 := @84 @94 +@107 := @105 @103 @104 +@109 := @105 @100 @107 +@110 := Bool.true +@111 := LexLeanTarget.TargetSyntax.Function +@112 := LexLeanTarget.TargetSyntax.Program.functions +@113 := @112 @0 +@114 := LexLeanTarget.TargetSyntax.Ty +@115 := @83 @91 +@116 := @83 @114 +@117 := LexLeanTarget.TargetSyntax.Ty.unit +@118 := LexLeanTarget.TargetSyntax.Value.unit +@121 := LexLeanTarget.TargetSyntax.Expr.value @117 @118 +@126 := LexLeanTarget.TargetSyntax.Function.mk @115 @116 @117 @121 +@131 := List.getD.{0} @111 @113 @101 @126 +@135 := fun (__e_n : @91) => + LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.RustStd.root @17 @101 +@136 := LexLeanPreservation.Rust.WTL +@144 := {p : @8} -> {c : @9} -> {A : @10} -> @136 @4 @15 @17 @85 @116 +@146 := LexLeanPreservation.Rust.wtl_nil @0 +@147 := @136 @0 +@153 := {c : @9} -> {A : @10} -> @147 @15 @17 @85 @116 +@154 := @146 @1 +@155 := @147 @1 +@159 := {A : @10} -> @155 @17 @85 @116 +@160 := @154 @2 +@161 := @155 @2 +@162 := @161 @85 +@163 := @162 @116 +@164 := List.{0} +@165 := @164 @82 +@166 := @164 @114 +@167 := #6 +@168 := @11 @167 +@169 := #5 +@170 := @168 @169 +@171 := #4 +@174 := @170 @171 @12 @4 +@175 := #7 +@180 := @136 @175 @167 @169 @4 @15 +@181 := #8 +@184 := @136 @181 @175 @167 +@186 := @86 @169 @12 +@187 := @184 @186 +@188 := @84 @114 +@190 := @188 @171 @4 +@200 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {v : @82} -> {t : @114} -> {vs : @165} -> {ts : @166} -> (h : @174) -> (hs : @180) -> @187 @190 +@202 := LexLeanPreservation.Rust.wtl_cons @0 +@222 := {c : @9} -> + {A : @10} -> + {v : @82} -> + {t : @114} -> + {vs : @165} -> + {ts : @166} -> + (h : @27 @169 @171 @12 @4) -> (hs : @147 @167 @169 @4 @15) -> @147 @175 @167 @186 @190 +@223 := @202 @1 +@239 := {A : @10} -> + {v : @82} -> + {t : @114} -> + {vs : @165} -> + {ts : @166} -> (h : @36 @171 @12 @4) -> (hs : @155 @169 @4 @15) -> @155 @167 @186 @190 +@240 := @223 @2 +@242 := @43 @12 @4 +@244 := @161 @4 @15 +@252 := {v : @82} -> + {t : @114} -> {vs : @165} -> {ts : @166} -> (h : @242) -> (hs : @244) -> @161 @186 @190 +@253 := @240 @52 +@254 := @51 @171 +@256 := @43 @254 @4 +@257 := @51 @167 +@258 := @86 @257 +@266 := {t : @114} -> + {vs : @165} -> {ts : @166} -> (h : @256) -> (hs : @244) -> @161 (@258 @12) @190 +@267 := @253 @55 +@268 := @51 @12 +@270 := @43 @268 @55 +@271 := @51 @169 +@272 := @86 @271 +@274 := @161 (@272 @12) +@275 := @188 @55 +@276 := @275 @4 +@281 := {vs : @165} -> {ts : @166} -> (h : @270) -> (hs : @244) -> @274 @276 +@282 := @267 @85 +@283 := @51 @4 +@285 := @43 @283 @55 +@286 := @162 @15 +@288 := @86 @254 @85 +@293 := {ts : @166} -> (h : @285) -> (hs : @286) -> @161 @288 @276 +@294 := @282 @116 +@296 := @86 @268 @85 +@297 := @161 @296 +@298 := @275 @116 +@301 := (h : @81) -> (hs : @163) -> @297 @298 +@302 := @294 @79 +@304 := @86 @283 @85 +@306 := @161 @304 @298 +@307 := (hs : @163) -> @306 +@308 := @302 @160 +@310 := @161 @88 @298 +@311 := @240 @6 +@312 := @5 @169 +@314 := @43 @312 @4 +@315 := @5 @175 +@316 := @86 @315 +@324 := {t : @114} -> + {vs : @165} -> {ts : @166} -> (h : @314) -> (hs : @244) -> @161 (@316 @12) @190 +@325 := @311 @7 +@326 := @5 @171 +@328 := @43 @326 @7 +@329 := @5 @167 +@330 := @86 @329 +@332 := @161 (@330 @12) +@333 := @188 @7 +@334 := @333 @4 +@339 := {vs : @165} -> {ts : @166} -> (h : @328) -> (hs : @244) -> @332 @334 +@340 := @325 @88 +@341 := @5 @12 +@343 := @43 @341 @7 +@344 := @297 @15 +@346 := @86 @312 @288 +@347 := @161 @346 +@351 := {ts : @166} -> (h : @343) -> (hs : @344) -> @347 @334 +@352 := @340 @298 +@354 := @86 @326 @296 +@355 := @161 @354 +@356 := @333 @298 +@359 := (h : @49) -> (hs : @306) -> @355 @356 +@360 := @352 @47 +@362 := @86 @341 @304 +@363 := @161 @362 +@365 := (hs : @310) -> @363 @356 +@366 := @360 @308 +@367 := @161 @90 +@368 := @367 @356 +@369 := LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.denote +@371 := @369 @4 @15 +@372 := LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.__fits_0 +@374 := @372 @4 @15 +@377 := LexLeanStd.Text.splitOn @4 @15 +@381 := LexLeanPreservation.encList @3 @5 @377 +@384 := LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.root @4 @15 +@385 := Bool +@386 := Ne.{1} +@387 := LexLeanPreservation.Obs +@388 := @386 @387 +@389 := LexLeanPreservation.Rel +@392 := @388 (@389 @15 @17) +@393 := LexLeanPreservation.Obs.stuck +@396 := (f : @385) -> (v : @82) -> @392 @393 +@398 := LexLeanPreservation.Rust.rel_ne_stuck @374 +@405 := (v : @82) -> @388 (@389 (@372 @12 @4) @17) @393 +@406 := @398 @381 +@410 := @388 (@389 @374 @381) @393 +@411 := @164 @94 +@412 := LexLeanPreservation.Rust.FunSem +@413 := #9 +@419 := (n : @91) -> @412 @413 @181 @175 @17 @167 +@420 := Eq.{1} +@421 := Option.{0} +@422 := @421 @111 +@423 := @420 @422 +@430 := LexLeanRuntime.index (@164 @111) @111 (LexLeanRuntime.instIndexableList @111) +@434 := @423 (@430 (@112 @413) @167) +@435 := Option.some.{0} +@436 := @435 @111 +@437 := @436 @169 +@438 := @434 @437 +@439 := #10 +@443 := @136 @439 @413 @181 @169 +@444 := LexLeanTarget.TargetSyntax.Function.types +@445 := @444 @167 +@446 := @443 @445 +@447 := @421 @411 +@448 := @420 @447 +@449 := LexLeanTarget.TargetSemantics.bindAll +@450 := LexLeanTarget.TargetSyntax.Function.parameters +@455 := @448 (@449 (@450 @175) @167 @104) +@456 := @435 @411 +@457 := @456 @169 +@458 := @455 @457 +@459 := @421 @385 +@460 := @420 @459 +@461 := LexLeanPreservation.Rust.fnFallible +@462 := #11 +@465 := @460 (@461 @462 @413) +@466 := @435 @385 +@467 := @466 @169 +@468 := @465 @467 +@469 := LexLeanPreservation.RunConv +@470 := #13 +@474 := @469 @470 @439 @181 @169 +@476 := @388 @167 @393 +@477 := Exists.{1} +@478 := LexLeanPreservation.Rust.ROut +@479 := @477 @478 +@480 := And +@481 := LexLeanPreservation.Rust.RealizesFn +@485 := @480 (@481 @413 @181 @17) +@486 := LexLeanPreservation.Rust.RCI +@488 := @486 #15 +@489 := LexLeanPreservation.Rust.fnIdent +@490 := @489 @470 +@497 := (hne : @476) -> @479 (fun (ro : @478) => @485 (@488 @490 @462 @17)) +@512 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {f : @91} -> + {fn : @111} -> + {args : @165} -> + {env : @411} -> + {F : @385} -> + {o : @387} -> + (hB : @419) -> + (hfn : @438) -> (hwt : @446) -> (hbind : @458) -> (hF : @468) -> (hA : @474) -> @497 +@514 := LexLeanPreservation.Rust.compose @0 +@515 := @412 @0 +@520 := (n : @91) -> @515 @181 @175 @17 @167 +@521 := @430 @113 +@524 := @423 (@521 @167) @437 +@528 := @147 @413 @181 @169 @445 +@529 := @469 @0 +@532 := @529 @439 @181 @169 +@546 := {c : @9} -> + {A : @10} -> + {f : @91} -> + {fn : @111} -> + {args : @165} -> + {env : @411} -> + {F : @385} -> + {o : @387} -> + (hB : @520) -> + (hfn : @524) -> (hwt : @528) -> (hbind : @458) -> (hF : @468) -> (hA : @532) -> @497 +@547 := @514 @1 +@548 := @515 @1 +@552 := (n : @91) -> @548 @175 @17 @167 +@555 := @155 @181 @169 @445 +@556 := @461 @1 +@559 := @460 (@556 @413) @467 +@560 := @486 @1 +@570 := (hbind : @458) -> + (hF : @559) -> (hA : @532) -> (hne : @476) -> @479 (fun (ro : @478) => @485 (@560 @490 @462 @17)) +@580 := {A : @10} -> + {f : @91} -> + {fn : @111} -> + {args : @165} -> + {env : @411} -> {F : @385} -> {o : @387} -> (hB : @552) -> (hfn : @524) -> (hwt : @555) -> @570 +@581 := @547 @2 +@583 := @548 @2 @17 +@585 := (n : @91) -> @583 @167 +@586 := @161 @169 +@587 := @586 @445 +@596 := {f : @91} -> + {fn : @111} -> + {args : @165} -> + {env : @411} -> {F : @385} -> {o : @387} -> (hB : @585) -> (hfn : @524) -> (hwt : @587) -> @570 +@597 := @581 @101 +@599 := (n : @91) -> @583 @101 +@600 := @521 @101 +@601 := @423 @600 +@602 := @601 @437 +@603 := @556 @101 +@604 := @460 @603 +@605 := @604 @467 +@606 := @529 @101 +@608 := @606 @181 @169 +@610 := @560 (@489 @101) +@618 := (hF : @605) -> (hA : @608) -> (hne : @476) -> @479 (fun (ro : @478) => @485 (@610 @462 @17)) +@627 := {fn : @111} -> + {args : @165} -> + {env : @411} -> + {F : @385} -> {o : @387} -> (hB : @599) -> (hfn : @602) -> (hwt : @587) -> (hbind : @458) -> @618 +@628 := @597 @131 +@630 := @601 (@436 @131) +@631 := @444 @131 +@632 := @586 @631 +@634 := @449 (@450 @131) +@646 := {args : @165} -> + {env : @411} -> + {F : @385} -> + {o : @387} -> + (hB : @599) -> (hfn : @630) -> (hwt : @632) -> (hbind : @448 (@634 @167 @104) @457) -> @618 +@647 := @628 @90 +@649 := @316 (@258 @85) +@651 := @161 @649 @631 +@657 := @86 (@5 @181) (@86 (@51 @175) @85) +@661 := @448 (@634 @657 @104) @457 +@667 := @86 (@5 @439) (@86 (@51 @413) @85) +@669 := @606 @667 @169 +@671 := @86 (@5 @470) +@672 := #12 +@691 := {env : @411} -> + {F : @385} -> + {o : @387} -> + (hB : @599) -> + (hfn : @630) -> + (hwt : @651) -> + (hbind : @661) -> + (hF : @605) -> + (hA : @669) -> + (hne : @476) -> @479 (fun (ro : @478) => @485 (@610 (@671 (@86 (@51 @672) @85)) @17)) +@692 := @647 @109 +@694 := @330 (@272 @85) +@696 := @161 @694 @631 +@707 := @448 (@634 @649 @104) (@456 (@105 (@99 @257) (@105 (@102 @315) @104))) +@713 := @86 (@5 @413) (@86 (@51 @181) @85) +@735 := {F : @385} -> + {o : @387} -> + (hB : @599) -> + (hfn : @630) -> + (hwt : @696) -> + (hbind : @707) -> + (hF : @605) -> + (hA : @606 @713 @169) -> + (hne : @476) -> @479 (fun (ro : @478) => @485 (@610 (@86 (@5 @672) (@86 (@51 @462) @85)) @17)) +@736 := @692 @110 +@737 := @347 @631 +@748 := @448 (@634 @694 @104) (@456 (@105 (@99 @271) (@105 (@102 @329) @104))) +@750 := @604 (@466 @110) +@752 := @606 @657 @169 +@753 := @481 @110 +@775 := {o : @387} -> + (hB : @599) -> + (hfn : @630) -> + (hwt : @737) -> + (hbind : @748) -> + (hF : @750) -> + (hA : @752) -> + (hne : @476) -> + @479 (fun (ro : @478) => @480 (@753 @181 @17) (@610 (@86 (@5 @462) (@86 (@51 @439) @85)) @17)) +@776 := @736 @371 +@777 := @355 @631 +@788 := @448 (@634 @346 @104) (@456 (@105 (@99 @254) (@105 (@102 @312) @104))) +@789 := @606 @649 +@791 := @369 @175 @167 +@792 := @789 @791 +@794 := @369 @181 @175 +@813 := (hB : @599) -> + (hfn : @630) -> + (hwt : @777) -> + (hbind : @788) -> + (hF : @750) -> + (hA : @792) -> + (hne : @388 @794 @393) -> + @479 (fun (ro : @478) => @480 (@753 (@369 @439 @413) @17) (@610 @667 @17)) +@814 := @776 @135 +@815 := @363 @631 +@826 := @448 (@634 @354 @104) (@456 (@105 (@99 @268) (@105 (@102 @326) @104))) +@827 := @606 @694 +@829 := @369 @167 @169 +@848 := (hfn : @630) -> + (hwt : @815) -> + (hbind : @826) -> + (hF : @750) -> + (hA : @827 @829) -> + (hne : @388 @791 @393) -> + @479 (fun (ro : @478) => @480 (@753 (@369 @413 @181) @17) (@610 @713 @17)) +@849 := Eq.refl.{1} +@852 := @814 (@849 @422 @600) +@853 := @367 @631 +@864 := @448 (@634 @362 @104) (@456 (@105 (@99 @283) (@105 (@102 @341) @104))) +@865 := @606 @346 +@867 := @369 @169 @171 +@883 := (hwt : @853) -> + (hbind : @864) -> + (hF : @750) -> + (hA : @865 @867) -> + (hne : @388 @829 @393) -> @479 (fun (ro : @478) => @480 (@753 @794 @17) (@610 @657 @17)) +@884 := @852 @366 +@886 := @634 @90 @104 +@889 := @448 @886 (@456 @109) +@890 := @606 @354 +@892 := @369 @171 @12 +@907 := (hbind : @889) -> + (hF : @750) -> + (hA : @890 @892) -> + (hne : @388 @867 @393) -> @479 (fun (ro : @478) => @480 (@753 @791 @17) (@610 @649 @17)) +@910 := @884 (@849 @447 @886) +@911 := @606 @362 +@913 := @369 @12 @4 +@927 := (hF : @750) -> + (hA : @911 @913) -> + (hne : @388 @892 @393) -> @479 (fun (ro : @478) => @480 (@753 @829 @17) (@610 @694 @17)) +@930 := @910 (@849 @459 @603) +@944 := (hA : @606 @90 @371) -> + (hne : @388 @913 @393) -> @479 (fun (ro : @478) => @480 (@753 @867 @17) (@610 @346 @17)) +@945 := @930 @384 +@956 := (hne : @388 @371 @393) -> @479 (fun (ro : @478) => @480 (@753 @892 @17) (@610 @354 @17)) +@957 := @945 @406 +@963 := @480 (@753 @913 @17) (@610 @362 @17) +@965 := @479 (fun (ro : @478) => @963) +@967 := @479 (fun (__e_ro : @478) => @963) +@968 := LexLeanPreservation.Rust.RepresentableL +@969 := @5 @15 +@971 := @86 @56 @85 +@974 := @968 (@86 @969 @971) +@975 := (__e_hrep : @974) -> @967 +@976 := fun (__e_hrep : @974) => @957 +@977 := (delimiter : @50) -> @975 +@978 := fun (delimiter : @50) => @976 +@979 := (subject : @3) -> @977 +@980 := fun (subject : @3) => @978 +\end{coremodule} +\end{lexlean} diff --git a/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R3/RustStd.lean b/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R3/RustStd.lean new file mode 100644 index 000000000..38faf3b98 --- /dev/null +++ b/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R3/RustStd.lean @@ -0,0 +1,101 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1], types := [.bytes, (.fixed .u8)], result := (.list .bytes), + body := (.«let» 2 .nat (.prim .length [(.var 0)]) (.«let» 3 (.pair .nat (.pair .nat (.list .bytes))) (.first (.call 1 [(.closure 2 [(.var 1), (.var 0)]), (.var 2), (.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.value .nat (.nat 0)), (.build .pair (.pair .nat (.list .bytes)) [(.value .nat (.nat 0)), (.build .nil (.list .bytes) [])])])])) (.«let» 4 .nat (.first (.second (.var 3))) (.call 3 [(.build .cons (.list .bytes) [(.call 4 [(.var 0), (.var 4), (.prim .natSub [(.var 2), (.var 4)])]), (.second (.second (.var 3)))])])))) }, + { parameters := [0, 1, 2], types := [(.fn [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes))))), .nat, (.pair .nat (.pair .nat (.list .bytes)))], result := (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool), + body := (.«match» (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 1 [(.var 0), (.var 3), (.var 4)]))]))]) }, + { parameters := [0, 1, 2], types := [(.fixed .u8), .bytes, (.pair .nat (.pair .nat (.list .bytes)))], result := (.option (.pair .nat (.pair .nat (.list .bytes)))), + body := (.call 5 [(.var 1), (.var 0), (.var 2)]) }, + { parameters := [0], types := [(.list .bytes)], result := (.list .bytes), + body := (.call 6 [(.closure 7 []), (.build .nil (.list .bytes) []), (.var 0)]) }, + { parameters := [0, 1, 2], types := [.bytes, .nat, .nat], result := .bytes, + body := (.«match» .bytes (.prim .slice [(.var 0), (.var 1), (.var 2)]) [(.arm .some [3] (.var 3)), (.arm .none [] (.value .bytes (.bytes (ByteArray.mk #[]))))]) }, + { parameters := [0, 1, 2], types := [.bytes, (.fixed .u8), (.pair .nat (.pair .nat (.list .bytes)))], result := (.option (.pair .nat (.pair .nat (.list .bytes)))), + body := (.«let» 3 .nat (.first (.var 2)) (.«let» 4 .nat (.first (.second (.var 2))) (.«let» 5 (.list .bytes) (.second (.second (.var 2))) (.«match» (.option (.pair .nat (.pair .nat (.list .bytes)))) (.call 8 [(.var 0), (.var 3)]) [(.arm .some [6] (.cond (.prim .equal [(.var 6), (.var 1)]) (.build .some (.option (.pair .nat (.pair .nat (.list .bytes)))) [(.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.prim .natAdd [(.var 3), (.value .nat (.nat 1))]), (.build .pair (.pair .nat (.list .bytes)) [(.prim .natAdd [(.var 3), (.value .nat (.nat 1))]), (.build .cons (.list .bytes) [(.call 4 [(.var 0), (.var 4), (.prim .natSub [(.var 3), (.var 4)])]), (.var 5)])])])]) (.build .some (.option (.pair .nat (.pair .nat (.list .bytes)))) [(.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.prim .natAdd [(.var 3), (.value .nat (.nat 1))]), (.build .pair (.pair .nat (.list .bytes)) [(.var 4), (.var 5)])])]))), (.arm .none [] (.build .none (.option (.pair .nat (.pair .nat (.list .bytes)))) []))])))) }, + { parameters := [0, 1, 2], types := [(.fn [(.list .bytes), .bytes] (.list .bytes)), (.list .bytes), (.list .bytes)], result := (.list .bytes), + body := (.«match» (.list .bytes) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 6 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, + { parameters := [0, 1], types := [(.list .bytes), .bytes], result := (.list .bytes), + body := (.build .cons (.list .bytes) [(.var 1), (.var 0)]) }, + { parameters := [0, 1], types := [.bytes, .nat], result := (.option (.fixed .u8)), + body := (.prim .index [(.var 0), (.var 1)]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.enum (.fn 0) [{ number := 2, fields := [(.fixed .u8), .bytes] }]), + (.apply 0 [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes)))) true [{ function := 2, captures := [.copy, .clone], functionFallible := true }]), + (.enum (.fn 1) [{ number := 7, fields := [] }]), + (.apply 1 [(.list .bytes), .bytes] (.list .bytes) false [{ function := 7, captures := [], functionFallible := false }]), + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := (.fixed .u8) }] (.fallible (.list .bytes)) (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 1))] false)))), (.mk (.bind (.generated .binding 3)) (some (.pair .nat (.pair .nat (.list .bytes)))) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.call (.function 1) [(.construct (.closure 0 2) [(.copy (.generated .binding 1)), (.clone (.generated .binding 0))]), (.copy (.generated .binding 2)), (.pair (.lit (.nat 0)) (.pair (.lit (.nat 0)) (.construct (.nil .bytes) [])))] true))] (.move (.generated .part 2))))), (.mk (.bind (.generated .binding 4)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 4))]) none (.clone (.generated .binding 3)))] (.move (.generated .part 4)))))] (.move (.generated .part 3)))))] (.succeed (.call (.function 3) [(.construct .cons [(.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 4)), (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 4)))] (.call (.runtime .natSub) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false)))] false), (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 7))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 8))]) none (.move (.generated .binding 3)))] (.move (.generated .part 8)))))] (.move (.generated .part 7))))])] false)))), + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := (.pair .nat (.pair .nat (.list .bytes))) }] (.fallible (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool)) (.mk [(.mk (.bind (.generated .holder 9)) none (.copy (.generated .binding 1)))] (.cond (.isZero (.generated .holder 9)) (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 9))), (.mk (.bind (.generated .holder 11)) none (.block (.mk [(.mk (.bind (.generated .callee 10)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 10) [(.clone (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 11)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 1) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))]))))), + (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := (.fixed .u8) }, { pattern := (.bind (.generated .binding 1)), type := .bytes }, { pattern := (.bind (.generated .binding 2)), type := (.pair .nat (.pair .nat (.list .bytes))) }] (.fallible (.option (.pair .nat (.pair .nat (.list .bytes))))) (.mk [] (.call (.function 5) [(.move (.generated .binding 1)), (.copy (.generated .binding 0)), (.move (.generated .binding 2))] false))), + (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.list .bytes) }] (.list .bytes) (.mk [] (.call (.function 6) [(.construct (.closure 1 7) []), (.construct (.nil .bytes) []), (.move (.generated .binding 0))] false))), + (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := .nat }] .bytes (.mk [(.mk (.bind (.generated .holder 15)) none (.block (.mk [(.mk (.bind (.generated .operand 12)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 2)))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 12)), (.move (.generated .operand 13)), (.move (.generated .operand 14))] false))))] (.matchOn (.move (.generated .holder 15)) [(.mk .none (.mk [] (.lit (.bytes (ByteArray.mk #[]))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.move (.generated .binding 3))))]))), + (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := (.fixed .u8) }, { pattern := (.bind (.generated .binding 2)), type := (.pair .nat (.pair .nat (.list .bytes))) }] (.fallible (.option (.pair .nat (.pair .nat (.list .bytes))))) (.mk [(.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 16)), .wild]) none (.clone (.generated .binding 2)))] (.move (.generated .part 16))))), (.mk (.bind (.generated .binding 4)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 17)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 18))]) none (.clone (.generated .binding 2)))] (.move (.generated .part 18)))))] (.move (.generated .part 17))))), (.mk (.bind (.generated .binding 5)) (some (.list .bytes)) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 19))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 20))]) none (.move (.generated .binding 2)))] (.move (.generated .part 20)))))] (.move (.generated .part 19))))), (.mk (.bind (.generated .holder 21)) none (.call (.function 8) [(.clone (.generated .binding 0)), (.copy (.generated .binding 3))] false))] (.matchOn (.move (.generated .holder 21)) [(.mk .none (.mk [] (.succeed (.construct (.none (.pair .nat (.pair .nat (.list .bytes)))) [])))), (.mk (.some (.bind (.generated .binding 6))) (.mk [(.mk (.bind (.generated .operand 22)) none (.copy (.generated .binding 6))), (.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 1)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 22)), (.move (.generated .operand 23))] false) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 25)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 24)), (.move (.generated .operand 25))] true))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] true))) (.construct .cons [(.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 4)), (.block (.mk [(.mk (.bind (.generated .operand 28)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 29)) none (.copy (.generated .binding 4)))] (.call (.runtime .natSub) [(.move (.generated .operand 28)), (.move (.generated .operand 29))] false)))] false), (.move (.generated .binding 5))])))]))) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 30)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 31)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] true))) (.pair (.copy (.generated .binding 4)) (.move (.generated .binding 5))))]))))))]))), + (.function (.generated .function 6) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 1) }, { pattern := (.bind (.generated .binding 1)), type := (.list .bytes) }, { pattern := (.bind (.generated .binding 2)), type := (.list .bytes) }] (.list .bytes) (.mk [(.mk (.bind (.generated .holder 32)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 32)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 6) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 33)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 33) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]))), + (.function (.generated .function 7) [{ pattern := (.bind (.generated .binding 0)), type := (.list .bytes) }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] (.list .bytes) (.mk [] (.construct .cons [(.move (.generated .binding 1)), (.move (.generated .binding 0))]))), + (.function (.generated .function 8) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.option (.fixed .u8)) (.mk [(.mk (.bind (.generated .operand 34)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 35)) none (.copy (.generated .binding 1)))] (.call (.runtime .indexBytes) [(.move (.generated .operand 34)), (.move (.generated .operand 35))] false)))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [(([(.pair .nat (.pair .nat (.list .bytes)))], (.option (.pair .nat (.pair .nat (.list .bytes))))), true), (([(.list .bytes), .bytes], (.list .bytes)), false)] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 1))] false)))), (.mk (.bind (.generated .binding 3)) (some (.pair .nat (.pair .nat (.list .bytes)))) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.call (.function 1) [(.construct (.closure 0 2) [(.copy (.generated .binding 1)), (.clone (.generated .binding 0))]), (.copy (.generated .binding 2)), (.pair (.lit (.nat 0)) (.pair (.lit (.nat 0)) (.construct (.nil .bytes) [])))] true))] (.move (.generated .part 2))))), (.mk (.bind (.generated .binding 4)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 4))]) none (.clone (.generated .binding 3)))] (.move (.generated .part 4)))))] (.move (.generated .part 3)))))], (.succeed (.call (.function 3) [(.construct .cons [(.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 4)), (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 4)))] (.call (.runtime .natSub) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false)))] false), (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 7))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 8))]) none (.move (.generated .binding 3)))] (.move (.generated .part 8)))))] (.move (.generated .part 7))))])] false)), [(1, (.fixed .u8), (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 1))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.call (.function 1) [(.construct (.closure 0 2) [(.copy (.generated .binding 1)), (.clone (.generated .binding 0))]), (.copy (.generated .binding 2)), (.pair (.lit (.nat 0)) (.pair (.lit (.nat 0)) (.construct (.nil .bytes) [])))] true))]) (tail := (.move (.generated .part 2))) (Corr.first (ta := (.pair .nat (.pair .nat (.list .bytes)))) (tb := .bool) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes))))), .nat, (.pair .nat (.pair .nat (.list .bytes)))]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [(.fixed .u8), .bytes]) (mask := [false, false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 4))]) none (.clone (.generated .binding 3)))] (.move (.generated .part 4)))))]) (tail := (.move (.generated .part 3))) (Corr.first (ta := .nat) (tb := (.list .bytes)) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 4))]) none (.clone (.generated .binding 3)))]) (tail := (.move (.generated .part 4))) (Corr.second (ta := .nat) (tb := (.pair .nat (.list .bytes))) (Corr.var rfl rfl) rfl)) rfl)) rfl (Corr.fOfB (Corr.callOps (ts := [(.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.bytes, (.list .bytes)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 5)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 6)) none (.copy (.generated .binding 4)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 7))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 8))]) none (.move (.generated .binding 3)))] (.move (.generated .part 8)))))]) (tail := (.move (.generated .part 7))) (Corr.second (ta := .nat) (tb := (.list .bytes)) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 8))]) none (.move (.generated .binding 3)))]) (tail := (.move (.generated .part 8))) (Corr.second (ta := .nat) (tb := (.pair .nat (.list .bytes))) (Corr.var rfl rfl) rfl)) rfl)) (Corr.lNil)))) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)))))⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 9)) none (.copy (.generated .binding 1)))], (.cond (.isZero (.generated .holder 9)) (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 9))), (.mk (.bind (.generated .holder 11)) none (.block (.mk [(.mk (.bind (.generated .callee 10)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 10) [(.clone (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 11)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 1) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))]))), [(2, (.pair .nat (.pair .nat (.list .bytes))), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes))))), (some 0))], rfl, rfl, + (Corr.matchNat (sl := (some 3)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (lb := [(.mk (.bind (.generated .holder 11)) none (.block (.mk [(.mk (.bind (.generated .callee 10)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 10) [(.clone (.generated .binding 2))] true))))]) (tb := (.matchOn (.move (.generated .holder 11)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 1) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))])) (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))))) (Corr.matchArms (st := (.option (.pair .nat (.pair .nat (.list .bytes))))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 10)) (some (.fn 0)) (.clone (.generated .binding 0)))]) (tail := (.apply (.generated .callee 10) [(.clone (.generated .binding 2))] true)) (Corr.apply (ps := [(.pair .nat (.pair .nat (.list .bytes)))]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (2, (.pair .nat (.pair .nat (.list .bytes))), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes))))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true))))) (Corr.mCons (Γ' := [(4, (.pair .nat (.pair .nat (.list .bytes))), (some 4)), (3, .nat, (some 3)), (2, (.pair .nat (.pair .nat (.list .bytes))), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes))))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 1) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes))))), .nat, (.pair .nat (.pair .nat (.list .bytes)))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))))))) rfl rfl rfl)))⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 5) [(.move (.generated .binding 1)), (.copy (.generated .binding 0)), (.move (.generated .binding 2))] false), [(2, (.pair .nat (.pair .nat (.list .bytes))), (some 2)), (1, .bytes, (some 1)), (0, (.fixed .u8), (some 0))], rfl, rfl, + (Corr.callF (ts := [.bytes, (.fixed .u8), (.pair .nat (.pair .nat (.list .bytes)))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)⟩⟩ + +theorem fun3 : FunOK program krate flags 3 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 6) [(.construct (.closure 1 7) []), (.construct (.nil .bytes) []), (.move (.generated .binding 0))] false), [(0, (.list .bytes), (some 0))], rfl, rfl, + (Corr.callOps (ts := [(.fn [(.list .bytes), .bytes] (.list .bytes)), (.list .bytes), (.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := false) (ff := false) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun4 : FunOK program krate flags 4 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 15)) none (.block (.mk [(.mk (.bind (.generated .operand 12)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 2)))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 12)), (.move (.generated .operand 13)), (.move (.generated .operand 14))] false))))], (.matchOn (.move (.generated .holder 15)) [(.mk .none (.mk [] (.lit (.bytes (ByteArray.mk #[]))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.move (.generated .binding 3))))]), [(2, .nat, (some 2)), (1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 12)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 14)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .sliceBytes) [(.move (.generated .operand 12)), (.move (.generated .operand 13)), (.move (.generated .operand 14))] false)) (Corr.prim (ts := [.bytes, .nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, .nat, (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bytes (ByteArray.mk #[])))) (Corr.mCons (Γ' := [(3, .bytes, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 3))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.bOfE (Corr.value rfl rfl))) rfl rfl rfl)⟩⟩ + +theorem fun5 : FunOK program krate flags 5 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 16)), .wild]) none (.clone (.generated .binding 2)))] (.move (.generated .part 16))))), (.mk (.bind (.generated .binding 4)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 17)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 18))]) none (.clone (.generated .binding 2)))] (.move (.generated .part 18)))))] (.move (.generated .part 17))))), (.mk (.bind (.generated .binding 5)) (some (.list .bytes)) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 19))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 20))]) none (.move (.generated .binding 2)))] (.move (.generated .part 20)))))] (.move (.generated .part 19))))), (.mk (.bind (.generated .holder 21)) none (.call (.function 8) [(.clone (.generated .binding 0)), (.copy (.generated .binding 3))] false))], (.matchOn (.move (.generated .holder 21)) [(.mk .none (.mk [] (.succeed (.construct (.none (.pair .nat (.pair .nat (.list .bytes)))) [])))), (.mk (.some (.bind (.generated .binding 6))) (.mk [(.mk (.bind (.generated .operand 22)) none (.copy (.generated .binding 6))), (.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 1)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 22)), (.move (.generated .operand 23))] false) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 25)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 24)), (.move (.generated .operand 25))] true))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] true))) (.construct .cons [(.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 4)), (.block (.mk [(.mk (.bind (.generated .operand 28)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 29)) none (.copy (.generated .binding 4)))] (.call (.runtime .natSub) [(.move (.generated .operand 28)), (.move (.generated .operand 29))] false)))] false), (.move (.generated .binding 5))])))]))) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 30)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 31)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] true))) (.pair (.copy (.generated .binding 4)) (.move (.generated .binding 5))))]))))))]), [(2, (.pair .nat (.pair .nat (.list .bytes))), (some 2)), (1, (.fixed .u8), (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 16)), .wild]) none (.clone (.generated .binding 2)))]) (tail := (.move (.generated .part 16))) (Corr.first (ta := .nat) (tb := (.pair .nat (.list .bytes))) (Corr.var rfl rfl) rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 17)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 18))]) none (.clone (.generated .binding 2)))] (.move (.generated .part 18)))))]) (tail := (.move (.generated .part 17))) (Corr.first (ta := .nat) (tb := (.list .bytes)) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 18))]) none (.clone (.generated .binding 2)))]) (tail := (.move (.generated .part 18))) (Corr.second (ta := .nat) (tb := (.pair .nat (.list .bytes))) (Corr.var rfl rfl) rfl)) rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 19))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 20))]) none (.move (.generated .binding 2)))] (.move (.generated .part 20)))))]) (tail := (.move (.generated .part 19))) (Corr.second (ta := .nat) (tb := (.list .bytes)) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 20))]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 20))) (Corr.second (ta := .nat) (tb := (.pair .nat (.list .bytes))) (Corr.var rfl rfl) rfl)) rfl)) rfl (Corr.matchArms (st := (.option (.fixed .u8))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(5, (.list .bytes), (some 5)), (4, .nat, (some 4)), (3, .nat, (some 3)), (2, (.pair .nat (.pair .nat (.list .bytes))), (some 2)), (1, (.fixed .u8), (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.construct (.none (.pair .nat (.pair .nat (.list .bytes)))) []))) (Corr.mCons (Γ' := [(6, (.fixed .u8), (some 6)), (5, (.list .bytes), (some 5)), (4, .nat, (some 4)), (3, .nat, (some 3)), (2, (.pair .nat (.pair .nat (.list .bytes))), (some 2)), (1, (.fixed .u8), (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .operand 22)) none (.copy (.generated .binding 6))), (.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 1)))]) (tail := (.cond (.call (.runtime .equal) [(.move (.generated .operand 22)), (.move (.generated .operand 23))] false) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 25)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 24)), (.move (.generated .operand 25))] true))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] true))) (.construct .cons [(.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 4)), (.block (.mk [(.mk (.bind (.generated .operand 28)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 29)) none (.copy (.generated .binding 4)))] (.call (.runtime .natSub) [(.move (.generated .operand 28)), (.move (.generated .operand 29))] false)))] false), (.move (.generated .binding 5))])))]))) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 30)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 31)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] true))) (.pair (.copy (.generated .binding 4)) (.move (.generated .binding 5))))]))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .operand 22)) none (.copy (.generated .binding 6))), (.mk (.bind (.generated .operand 23)) none (.copy (.generated .binding 1)))]) (ce := (.call (.runtime .equal) [(.move (.generated .operand 22)), (.move (.generated .operand 23))] false)) (lk := []) (Corr.prim (ts := [(.fixed .u8), (.fixed .u8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 25)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 24)), (.move (.generated .operand 25))] true))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] true))) (.construct .cons [(.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 4)), (.block (.mk [(.mk (.bind (.generated .operand 28)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 29)) none (.copy (.generated .binding 4)))] (.call (.runtime .natSub) [(.move (.generated .operand 28)), (.move (.generated .operand 29))] false)))] false), (.move (.generated .binding 5))])))]))) (lb := []) (tb := (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 30)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 31)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] true))) (.pair (.copy (.generated .binding 4)) (.move (.generated .binding 5))))]))) (Corr.fOfB (Corr.build (ts := [(.pair .nat (.pair .nat (.list .bytes)))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 25)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 24)), (.move (.generated .operand 25))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.bytes, (.list .bytes)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 28)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 29)) none (.copy (.generated .binding 4)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 28)), (.move (.generated .operand 29))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := [(.pair .nat (.pair .nat (.list .bytes)))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 30)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 31)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil))) rfl))))) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl))))⟩⟩ + +theorem fun6 : FunOK program krate flags 6 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 32)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 32)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 6) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 33)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 33) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]), [(2, (.list .bytes), (some 2)), (1, (.list .bytes), (some 1)), (0, (.fn [(.list .bytes), .bytes] (.list .bytes)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .bytes)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .bytes), (some 2)), (1, (.list .bytes), (some 1)), (0, (.fn [(.list .bytes), .bytes] (.list .bytes)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 1))) (Corr.mCons (Γ' := [(4, (.list .bytes), (some 4)), (3, .bytes, (some 3)), (2, (.list .bytes), (some 2)), (1, (.list .bytes), (some 1)), (0, (.fn [(.list .bytes), .bytes] (.list .bytes)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 6) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 33)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 33) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.fn [(.list .bytes), .bytes] (.list .bytes)), (.list .bytes), (.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 33)) (some (.fn 1)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 33) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false)) (Corr.apply (ps := [(.list .bytes), .bytes]) (af := false) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ + +theorem fun7 : FunOK program krate flags 7 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct .cons [(.move (.generated .binding 1)), (.move (.generated .binding 0))]), [(1, .bytes, (some 1)), (0, (.list .bytes), (some 0))], rfl, rfl, + (Corr.build (ts := [.bytes, (.list .bytes)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)⟩⟩ + +theorem fun8 : FunOK program krate flags 8 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 34)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 35)) none (.copy (.generated .binding 1)))], (.call (.runtime .indexBytes) [(.move (.generated .operand 34)), (.move (.generated .operand 35))] false), [(1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.prim (ts := [.bytes, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | 3 => exact fun3 + | 4 => exact fun4 + | 5 => exact fun5 + | 6 => exact fun6 + | 7 => exact fun7 + | 8 => exact fun8 + | _ + 9 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.RustStd diff --git a/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R4.lean b/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R4.lean new file mode 100644 index 000000000..d92fdfe57 --- /dev/null +++ b/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R4.lean @@ -0,0 +1,105 @@ +import LexLeanPreservation.Core +import LexLeanPreservation.Values +import LexLeanPreservation.Primitives +import LexLeanPreservation.Fixed +import LexLeanPreservation.Keys +import LexLeanPreservation.Templates +import LexLeanPreservation.Validate +import LexLeanStd.Text +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +set_option linter.unusedVariables false +namespace LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4 + +def __prog : _root_.LexLeanTarget.TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0], types := [.bytes], result := (.list .bytes), + body := (.«let» 1 .nat (.prim .length [(.var 0)]) (.«let» 2 (.pair .nat (.pair .nat (.list .bytes))) (.first (.call 1 [(.closure 2 [(.var 0)]), (.var 1), (.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.value .nat (.nat 0)), (.build .pair (.pair .nat (.list .bytes)) [(.value .nat (.nat 0)), (.build .nil (.list .bytes) [])])])])) (.«let» 3 .nat (.first (.second (.var 2))) (.«let» 4 (.list .bytes) (.second (.second (.var 2))) (.cond (.prim .natLt [(.var 3), (.var 1)]) (.call 3 [(.build .cons (.list .bytes) [(.call 4 [(.var 0), (.var 3), (.prim .natSub [(.var 1), (.var 3)])]), (.var 4)])]) (.call 3 [(.var 4)])))))) }, + { parameters := [0, 1, 2], types := [(.fn [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes))))), .nat, (.pair .nat (.pair .nat (.list .bytes)))], result := (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool), + body := (.«match» (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 1 [(.var 0), (.var 3), (.var 4)]))]))]) }, + { parameters := [0, 1], types := [.bytes, (.pair .nat (.pair .nat (.list .bytes)))], result := (.option (.pair .nat (.pair .nat (.list .bytes)))), + body := (.call 5 [(.var 0), (.var 1)]) }, + { parameters := [0], types := [(.list .bytes)], result := (.list .bytes), + body := (.call 6 [(.closure 7 []), (.build .nil (.list .bytes) []), (.var 0)]) }, + { parameters := [0, 1, 2], types := [.bytes, .nat, .nat], result := .bytes, + body := (.«match» .bytes (.prim .slice [(.var 0), (.var 1), (.var 2)]) [(.arm .some [3] (.var 3)), (.arm .none [] (.value .bytes (.bytes (ByteArray.mk #[]))))]) }, + { parameters := [0, 1], types := [.bytes, (.pair .nat (.pair .nat (.list .bytes)))], result := (.option (.pair .nat (.pair .nat (.list .bytes)))), + body := (.«let» 2 .nat (.first (.var 1)) (.«let» 3 .nat (.first (.second (.var 1))) (.«let» 4 (.list .bytes) (.second (.second (.var 1))) (.«match» (.option (.pair .nat (.pair .nat (.list .bytes)))) (.call 8 [(.var 0), (.var 2)]) [(.arm .some [5] (.cond (.prim .equal [(.var 5), (.value (.fixed .u8) (.u8 10))]) (.build .some (.option (.pair .nat (.pair .nat (.list .bytes)))) [(.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.prim .natAdd [(.var 2), (.value .nat (.nat 1))]), (.build .pair (.pair .nat (.list .bytes)) [(.prim .natAdd [(.var 2), (.value .nat (.nat 1))]), (.build .cons (.list .bytes) [(.call 9 [(.call 4 [(.var 0), (.var 3), (.prim .natSub [(.var 2), (.var 3)])])]), (.var 4)])])])]) (.build .some (.option (.pair .nat (.pair .nat (.list .bytes)))) [(.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.prim .natAdd [(.var 2), (.value .nat (.nat 1))]), (.build .pair (.pair .nat (.list .bytes)) [(.var 3), (.var 4)])])]))), (.arm .none [] (.build .none (.option (.pair .nat (.pair .nat (.list .bytes)))) []))])))) }, + { parameters := [0, 1, 2], types := [(.fn [(.list .bytes), .bytes] (.list .bytes)), (.list .bytes), (.list .bytes)], result := (.list .bytes), + body := (.«match» (.list .bytes) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 6 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, + { parameters := [0, 1], types := [(.list .bytes), .bytes], result := (.list .bytes), + body := (.build .cons (.list .bytes) [(.var 1), (.var 0)]) }, + { parameters := [0, 1], types := [.bytes, .nat], result := (.option (.fixed .u8)), + body := (.prim .index [(.var 0), (.var 1)]) }, + { parameters := [0], types := [.bytes], result := .bytes, + body := (.cond (.call 10 [(.var 0), (.value .bytes (.bytes (ByteArray.mk #[13])))]) (.call 4 [(.var 0), (.value .nat (.nat 0)), (.prim .natSub [(.prim .length [(.var 0)]), (.value .nat (.nat 1))])]) (.var 0)) }, + { parameters := [0, 1], types := [.bytes, .bytes], result := .bool, + body := (.«let» 2 .nat (.prim .length [(.var 0)]) (.«let» 3 .nat (.prim .length [(.var 1)]) (.cond (.prim .natLe [(.var 3), (.var 2)]) (.«match» .bool (.prim .slice [(.var 0), (.prim .natSub [(.var 2), (.var 3)]), (.var 3)]) [(.arm .some [4] (.prim .equal [(.var 4), (.var 1)])), (.arm .none [] (.build .false .bool []))]) (.build .false .bool [])))) }] } + +def __fits_4 (subject : ByteArray) (start : Nat) (count : Nat) : Bool := + (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && Bool.true) && (match (_root_.LexLeanRuntime.slice (subject) (start) (count) : (Option ByteArray)) with | Option.some piece => Bool.true | Option.none => Bool.true)) + +theorem __rel_4 (subject : ByteArray) (start : Nat) (count : Nat) : _root_.LexLeanPreservation.FunRel __prog 4 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat start), (_root_.LexLeanTarget.TargetSyntax.Value.nat count)] (_root_.LexLeanPreservation.Rel (__fits_4 subject start count) (_root_.LexLeanTarget.TargetSyntax.Value.bytes (LexLeanStd.Text.sliceOr subject start count))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.some piece => Bool.true | Option.none => Bool.true)) (fun (__a : (Option ByteArray)) => _root_.LexLeanTarget.TargetSyntax.Value.bytes (match __a with | Option.some piece => piece | Option.none => (ByteArray.mk #[]))) (_root_.LexLeanRuntime.slice (subject) (start) (count) : (Option ByteArray)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.prim_slice_bytes subject start count)) (fun (__a : (Option ByteArray)) _ => match __a with | Option.some piece => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value)))) + +def __fits_8 (subject : ByteArray) (position : Nat) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_8 (subject : ByteArray) (position : Nat) : _root_.LexLeanPreservation.FunRel __prog 8 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat position)] (_root_.LexLeanPreservation.Rel (__fits_8 subject position) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u8) (LexLeanStd.Text.byteAt subject position))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_index_bytes subject position)) + +def __fits_10 (subject : ByteArray) (suffix : ByteArray) : Bool := + (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (subject) : Nat) 18446744073709551616)) && (let total : Nat := (_root_.LexLeanRuntime.length (subject) : Nat); (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (suffix) : Nat) 18446744073709551616)) && (let size : Nat := (_root_.LexLeanRuntime.length (suffix) : Nat); (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.ble size total) then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (Bool.true && Bool.true))) && Bool.true) && (match (_root_.LexLeanRuntime.slice (subject) ((_root_.LexLeanRuntime.subtract (total) (size) : Nat)) (size) : (Option ByteArray)) with | Option.some tail => ((Bool.true && (Bool.true && Bool.true)) && Bool.true) | Option.none => (Bool.true && Bool.true))) else (Bool.true && Bool.true))))))) + +theorem __rel_10 (subject : ByteArray) (suffix : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 10 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.bytes suffix)] (_root_.LexLeanPreservation.Rel (__fits_10 subject suffix) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanStd.Text.endsWith subject suffix))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (let total : Nat := (_root_.LexLeanRuntime.length (subject) : Nat); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes subject)) (let size : Nat := (_root_.LexLeanRuntime.length (suffix) : Nat); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes suffix)) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (((Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (Bool.true && Bool.true))) && Bool.true) && (match (_root_.LexLeanRuntime.slice (subject) ((_root_.LexLeanRuntime.subtract (total) (size) : Nat)) (size) : (Option ByteArray)) with | Option.some tail => ((Bool.true && (Bool.true && Bool.true)) && Bool.true) | Option.none => (Bool.true && Bool.true))) else (Bool.true && Bool.true))) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bool (if __b then (match (_root_.LexLeanRuntime.slice (subject) ((_root_.LexLeanRuntime.subtract (total) (size) : Nat)) (size) : (Option ByteArray)) with | Option.some tail => (_root_.LexLeanRuntime.equal (tail) (suffix) : Bool) | Option.none => Bool.false) else Bool.false)) (Nat.ble size total) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLe size total)) (fun _ => (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.some tail => ((Bool.true && (Bool.true && Bool.true)) && Bool.true) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option ByteArray)) => _root_.LexLeanTarget.TargetSyntax.Value.bool (match __a with | Option.some tail => (_root_.LexLeanRuntime.equal (tail) (suffix) : Bool) | Option.none => Bool.false)) (_root_.LexLeanRuntime.slice (subject) ((_root_.LexLeanRuntime.subtract (total) (size) : Nat)) (size) : (Option ByteArray)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub total size)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.prim_slice_bytes subject (_root_.LexLeanRuntime.subtract (total) (size) : Nat) size)) (fun (__a : (Option ByteArray)) _ => match __a with | Option.some tail => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_bytes tail suffix))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false)))))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))))) + +def __fits_9 (line : ByteArray) : Bool := + (((Bool.true && (Bool.true && Bool.true)) && (__fits_10 (line) ((ByteArray.mk #[13])))) && (if (LexLeanStd.Text.endsWith (line) ((ByteArray.mk #[13]))) then ((Bool.true && (Bool.true && (((((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (line) : Nat) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_4 (line) ((0 : Nat)) ((_root_.LexLeanRuntime.subtract ((_root_.LexLeanRuntime.length (line) : Nat)) ((1 : Nat)) : Nat)))) else Bool.true)) + +attribute [local irreducible] LexLeanStd.Text.endsWith LexLeanStd.Text.sliceOr in +theorem __rel_9 (line : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 9 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes line)] (_root_.LexLeanPreservation.Rel (__fits_9 line) (_root_.LexLeanTarget.TargetSyntax.Value.bytes (LexLeanStd.Text.chomp line))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && (Bool.true && (((((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (line) : Nat) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_4 (line) ((0 : Nat)) ((_root_.LexLeanRuntime.subtract ((_root_.LexLeanRuntime.length (line) : Nat)) ((1 : Nat)) : Nat)))) else Bool.true)) (fun (__b : Bool) => _root_.LexLeanTarget.TargetSyntax.Value.bytes (if __b then (LexLeanStd.Text.sliceOr (line) ((0 : Nat)) ((_root_.LexLeanRuntime.subtract ((_root_.LexLeanRuntime.length (line) : Nat)) ((1 : Nat)) : Nat))) else line)) (LexLeanStd.Text.endsWith (line) ((ByteArray.mk #[13]))) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (__rel_10 (line) ((ByteArray.mk #[13])))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes line)) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub (_root_.LexLeanRuntime.length (line) : Nat) (1 : Nat))) _root_.LexLeanPreservation.convL_nil))) (__rel_4 (line) ((0 : Nat)) ((_root_.LexLeanRuntime.subtract ((_root_.LexLeanRuntime.length (line) : Nat)) ((1 : Nat)) : Nat))))) (fun _ => (_root_.LexLeanPreservation.conv_var rfl))) + +def __fits_5 (subject : ByteArray) (state : (Prod Nat (Prod Nat (List ByteArray)))) : Bool := + (Bool.true && (let position : Nat := (state).1; (Bool.true && (let start : Nat := ((state).2).1; (Bool.true && (let pieces : (List ByteArray) := ((state).2).2; (((Bool.true && (Bool.true && Bool.true)) && (__fits_8 (subject) (position))) && (match (LexLeanStd.Text.byteAt (subject) (position)) with | Option.some byte => (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal (byte) ((10 : UInt8)) : Bool) then ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((((Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_4 (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))) && Bool.true) && (__fits_9 ((LexLeanStd.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))))) && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) | Option.none => (Bool.true && Bool.true))))))))) + +attribute [local irreducible] LexLeanStd.Text.byteAt LexLeanStd.Text.chomp LexLeanStd.Text.sliceOr in +theorem __rel_5 (subject : ByteArray) (state : (Prod Nat (Prod Nat (List ByteArray)))) : _root_.LexLeanPreservation.FunRel __prog 5 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) state)] (_root_.LexLeanPreservation.Rel (__fits_5 subject state) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (LexLeanStd.Text.lineStep subject state))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (let position : Nat := (state).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_var rfl)) (let start : Nat := ((state).2).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl))) (let pieces : (List ByteArray) := ((state).2).2; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl))) (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.u8) (fun (__a : (Option UInt8)) => (match __a with | Option.some byte => (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (_root_.LexLeanRuntime.equal (byte) ((10 : UInt8)) : Bool) then ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((((Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_4 (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))) && Bool.true) && (__fits_9 ((LexLeanStd.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))))) && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option UInt8)) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (match __a with | Option.some byte => (if (_root_.LexLeanRuntime.equal (byte) ((10 : UInt8)) : Bool) then (Option.some (((position + (1 : Nat)), ((position + (1 : Nat)), ((LexLeanStd.Text.chomp ((LexLeanStd.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat))))) :: pieces)))) : (Option (Prod Nat (Prod Nat (List ByteArray))))) else (Option.some (((position + (1 : Nat)), (start, pieces))) : (Option (Prod Nat (Prod Nat (List ByteArray)))))) | Option.none => (Option.none : (Option (Prod Nat (Prod Nat (List ByteArray))))))) (LexLeanStd.Text.byteAt (subject) (position)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_8 (subject) (position))) (fun (__a : (Option UInt8)) _ => match __a with | Option.some byte => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((((((Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_4 (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))) && Bool.true) && (__fits_9 ((LexLeanStd.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))))) && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true) else ((((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (if __b then (Option.some (((position + (1 : Nat)), ((position + (1 : Nat)), ((LexLeanStd.Text.chomp ((LexLeanStd.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat))))) :: pieces)))) : (Option (Prod Nat (Prod Nat (List ByteArray))))) else (Option.some (((position + (1 : Nat)), (start, pieces))) : (Option (Prod Nat (Prod Nat (List ByteArray))))))) (_root_.LexLeanRuntime.equal (byte) ((10 : UInt8)) : Bool) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_u8 byte (10 : UInt8))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub position start)) _root_.LexLeanPreservation.convL_nil))) (__rel_4 (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))) _root_.LexLeanPreservation.convL_nil) (__rel_9 ((LexLeanStd.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (position) (start) : Nat)))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (1 : Nat))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)))))))) + +def __fits_2 (subject : ByteArray) (state : (Prod Nat (Prod Nat (List ByteArray)))) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && (__fits_5 (subject) (state))) + +attribute [local irreducible] LexLeanStd.Text.lineStep in +theorem __rel_2 (subject : ByteArray) (state : (Prod Nat (Prod Nat (List ByteArray)))) : _root_.LexLeanPreservation.FunRel __prog 2 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), ((_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) state)] (_root_.LexLeanPreservation.Rel (__fits_2 subject state) ((_root_.LexLeanPreservation.encOption (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) ((LexLeanStd.Text.lineStep (subject) (state))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (__rel_5 (subject) (state))) + +def __fits_7 (reversed : (List ByteArray)) (piece : ByteArray) : Bool := + ((Bool.true && (Bool.true && Bool.true)) && Bool.true) + +theorem __rel_7 (reversed : (List ByteArray)) (piece : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 7 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) reversed), (_root_.LexLeanTarget.TargetSyntax.Value.bytes piece)] (_root_.LexLeanPreservation.Rel (__fits_7 reversed piece) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) ((piece :: reversed)))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) + +def __fits_3 (pieces : (List ByteArray)) : Bool := + ((Bool.true && ((Bool.true && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (List ByteArray)) (__p1 : ByteArray) => __fits_7 __p0 __p1) ((fun (reversed : (List ByteArray)) (piece : ByteArray) => (piece :: reversed))) (([] : List ByteArray)) (pieces))) + +theorem __rel_3 (pieces : (List ByteArray)) : _root_.LexLeanPreservation.FunRel __prog 3 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) pieces)] (_root_.LexLeanPreservation.Rel (__fits_3 pieces) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) (LexLeanStd.Text.reverse pieces))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.bytes) (es := (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun _ => rfl) ((fun (reversed : (List ByteArray)) (piece : ByteArray) => (piece :: reversed))) (fun (__p0 : (List ByteArray)) (__p1 : ByteArray) => __fits_7 __p0 __p1) 7 [] (fun (__p0 : (List ByteArray)) (__p1 : ByteArray) => __rel_7 __p0 __p1) (p := __prog) (fi := 6) (ta := .bytes) (ts := (.list .bytes)) rfl (([] : List ByteArray)) (pieces))) + +def __fits_0 (subject : ByteArray) : Bool := + (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (subject) : Nat) 18446744073709551616)) && (let total : Nat := (_root_.LexLeanRuntime.length (subject) : Nat); ((((Bool.true && Bool.true) && (Bool.true && (((Bool.true && (((Bool.true && ((Bool.true && Bool.true) && Bool.true)) && Bool.true) && Bool.true)) && Bool.true) && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : (Prod Nat (Prod Nat (List ByteArray)))) => __fits_2 (subject) __p0) ((fun (state : (Prod Nat (Prod Nat (List ByteArray)))) => (LexLeanStd.Text.lineStep (subject) (state)))) (total) (((0 : Nat), ((0 : Nat), ([] : List ByteArray)))))) && (let final : (Prod Nat (Prod Nat (List ByteArray))) := ((_root_.LexLeanCollections.iterateUntil ((fun (state : (Prod Nat (Prod Nat (List ByteArray)))) => (LexLeanStd.Text.lineStep (subject) (state)))) (total) (((0 : Nat), ((0 : Nat), ([] : List ByteArray)))) : (Prod (Prod Nat (Prod Nat (List ByteArray))) Bool))).1; (Bool.true && (let start : Nat := ((final).2).1; (Bool.true && (let pieces : (List ByteArray) := ((final).2).2; (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.blt start total) then ((((((Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_4 (subject) (start) ((_root_.LexLeanRuntime.subtract (total) (start) : Nat)))) && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && (__fits_3 (((LexLeanStd.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (total) (start) : Nat))) :: pieces)))) else ((Bool.true && Bool.true) && (__fits_3 (pieces))))))))))))) + +attribute [local irreducible] LexLeanStd.Text.lineStep LexLeanStd.Text.reverse LexLeanStd.Text.sliceOr in +theorem __rel_0 (subject : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject)] (_root_.LexLeanPreservation.Rel (__fits_0 subject) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) (LexLeanStd.Text.lines subject))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (let total : Nat := (_root_.LexLeanRuntime.length (subject) : Nat); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes subject)) (let final : (Prod Nat (Prod Nat (List ByteArray))) := ((_root_.LexLeanCollections.iterateUntil ((fun (state : (Prod Nat (Prod Nat (List ByteArray)))) => (LexLeanStd.Text.lineStep (subject) (state)))) (total) (((0 : Nat), ((0 : Nat), ([] : List ByteArray)))) : (Prod (Prod Nat (Prod Nat (List ByteArray))) Bool))).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_nil) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_pair) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterateUntil (es := (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (_root_.LexLeanPreservation.optEnc (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes)))) (fun _ => rfl) (_root_.LexLeanPreservation.encPair (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes))) _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) ((fun (state : (Prod Nat (Prod Nat (List ByteArray)))) => (LexLeanStd.Text.lineStep (subject) (state)))) (fun (__p0 : (Prod Nat (Prod Nat (List ByteArray)))) => __fits_2 (subject) __p0) 2 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject)] (fun (__p0 : (Prod Nat (Prod Nat (List ByteArray)))) => __rel_2 (subject) __p0) (_root_.LexLeanCollections.iterateUntil ((fun (state : (Prod Nat (Prod Nat (List ByteArray)))) => (LexLeanStd.Text.lineStep (subject) (state))))) (fun _ => rfl) (fun _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (p := __prog) (fi := 1) (ts := (.pair .nat (.pair .nat (.list .bytes)))) rfl (total) (((0 : Nat), ((0 : Nat), ([] : List ByteArray))))))) (let start : Nat := ((final).2).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl))) (let pieces : (List ByteArray) := ((final).2).2; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_second (_root_.LexLeanPreservation.conv_var rfl))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((((Bool.true && (Bool.true && (((Bool.true && (Bool.true && Bool.true)) && Bool.true) && Bool.true))) && (__fits_4 (subject) (start) ((_root_.LexLeanRuntime.subtract (total) (start) : Nat)))) && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && (__fits_3 (((LexLeanStd.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (total) (start) : Nat))) :: pieces)))) else ((Bool.true && Bool.true) && (__fits_3 (pieces))))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) (if __b then (LexLeanStd.Text.reverse (((LexLeanStd.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (total) (start) : Nat))) :: pieces))) else (LexLeanStd.Text.reverse (pieces)))) (Nat.blt start total) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt start total)) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natSub total start)) _root_.LexLeanPreservation.convL_nil))) (__rel_4 (subject) (start) ((_root_.LexLeanRuntime.subtract (total) (start) : Nat)))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) _root_.LexLeanPreservation.construct_cons) _root_.LexLeanPreservation.convL_nil) (__rel_3 (((LexLeanStd.Text.sliceOr (subject) (start) ((_root_.LexLeanRuntime.subtract (total) (start) : Nat))) :: pieces))))) (fun _ => (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (__rel_3 (pieces))))))))) + +def denote (subject : ByteArray) : _root_.LexLeanPreservation.Obs := + _root_.cond (__fits_0 subject) (_root_.LexLeanPreservation.Obs.value (((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) (LexLeanStd.Text.lines subject)))) _root_.LexLeanPreservation.Obs.overflow + +theorem root (subject : ByteArray) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject)] (_root_.LexLeanPreservation.Rel (__fits_0 subject) ((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) (LexLeanStd.Text.lines subject))) := + _root_.LexLeanPreservation.run_of_funRel (__rel_0 subject) + +end LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4 diff --git a/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R4/Compose/RustStd.lex.tex b/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R4/Compose/RustStd.lex.tex new file mode 100644 index 000000000..01d2a88ec --- /dev/null +++ b/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R4/Compose/RustStd.lex.tex @@ -0,0 +1,419 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4, + LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.Compose.RustStd.root : @829 := @830 { + all: [LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.RustStd.program +@1 := LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.RustStd.krate +@2 := LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.RustStd.flags +@3 := ByteArray +@4 := #1 +@5 := LexLeanTarget.TargetSyntax.Value.bytes +@6 := @5 @4 +@7 := LexLeanTarget.TargetSyntax.Ty.bytes +@8 := LexLeanTarget.TargetSyntax.Program +@9 := LexLeanPreservation.Rust.RCrate +@10 := LexLeanPreservation.Rust.Flags +@11 := LexLeanPreservation.Rust.WT +@12 := #3 +@13 := @11 @12 +@14 := #2 +@16 := @13 @14 @4 +@17 := #0 +@18 := @5 @17 +@24 := {p : @8} -> {c : @9} -> {A : @10} -> (b : @3) -> @16 @18 @7 +@26 := LexLeanPreservation.Rust.wt_bytes @0 +@27 := @11 @0 +@34 := {c : @9} -> {A : @10} -> (b : @3) -> @27 @14 @4 @18 @7 +@35 := @26 @1 +@36 := @27 @1 +@41 := {A : @10} -> (b : @3) -> @36 @4 @18 @7 +@42 := @35 @2 +@43 := @36 @2 +@46 := (b : @3) -> @43 @18 @7 +@47 := @42 @4 +@49 := @43 @6 @7 +@50 := LexLeanTarget.TargetSyntax.Value +@51 := List.nil.{0} +@52 := List.cons.{0} +@53 := @51 @50 +@54 := @52 @50 +@56 := @54 @6 @53 +@57 := Nat +@60 := Prod.{0, 0} @57 @50 +@61 := 0 +@65 := Prod.mk.{0, 0} @57 @50 @61 +@66 := @65 @6 +@67 := @51 @60 +@68 := @52 @60 +@70 := @68 @66 @67 +@71 := Bool.true +@72 := LexLeanTarget.TargetSyntax.Function +@73 := LexLeanTarget.TargetSyntax.Program.functions +@74 := @73 @0 +@75 := LexLeanTarget.TargetSyntax.Ty +@76 := @51 @57 +@77 := @51 @75 +@78 := LexLeanTarget.TargetSyntax.Ty.unit +@79 := LexLeanTarget.TargetSyntax.Value.unit +@82 := LexLeanTarget.TargetSyntax.Expr.value @78 @79 +@87 := LexLeanTarget.TargetSyntax.Function.mk @76 @77 @78 @82 +@92 := List.getD.{0} @72 @74 @61 @87 +@96 := fun (__e_n : @57) => + LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.RustStd.root @17 @61 +@97 := LexLeanPreservation.Rust.WTL +@105 := {p : @8} -> {c : @9} -> {A : @10} -> @97 @14 @4 @17 @53 @77 +@107 := LexLeanPreservation.Rust.wtl_nil @0 +@108 := @97 @0 +@114 := {c : @9} -> {A : @10} -> @108 @4 @17 @53 @77 +@115 := @107 @1 +@116 := @108 @1 +@120 := {A : @10} -> @116 @17 @53 @77 +@121 := @115 @2 +@122 := @116 @2 +@123 := @122 @53 +@124 := @123 @77 +@125 := List.{0} +@126 := @125 @50 +@127 := @125 @75 +@128 := #6 +@129 := @11 @128 +@130 := #5 +@131 := @129 @130 +@132 := #4 +@135 := @131 @132 @12 @14 +@136 := #7 +@141 := @97 @136 @128 @130 @14 @4 +@142 := #8 +@145 := @97 @142 @136 @128 +@147 := @54 @130 @12 +@148 := @145 @147 +@149 := @52 @75 +@151 := @149 @132 @14 +@161 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {v : @50} -> {t : @75} -> {vs : @126} -> {ts : @127} -> (h : @135) -> (hs : @141) -> @148 @151 +@163 := LexLeanPreservation.Rust.wtl_cons @0 +@183 := {c : @9} -> + {A : @10} -> + {v : @50} -> + {t : @75} -> + {vs : @126} -> + {ts : @127} -> + (h : @27 @130 @132 @12 @14) -> (hs : @108 @128 @130 @14 @4) -> @108 @136 @128 @147 @151 +@184 := @163 @1 +@200 := {A : @10} -> + {v : @50} -> + {t : @75} -> + {vs : @126} -> + {ts : @127} -> (h : @36 @132 @12 @14) -> (hs : @116 @130 @14 @4) -> @116 @128 @147 @151 +@201 := @184 @2 +@203 := @43 @12 @14 +@205 := @122 @14 @4 +@213 := {v : @50} -> + {t : @75} -> {vs : @126} -> {ts : @127} -> (h : @203) -> (hs : @205) -> @122 @147 @151 +@214 := @201 @6 +@215 := @5 @132 +@217 := @43 @215 @14 +@218 := @5 @128 +@219 := @54 @218 +@227 := {t : @75} -> {vs : @126} -> {ts : @127} -> (h : @217) -> (hs : @205) -> @122 (@219 @12) @151 +@228 := @214 @7 +@229 := @5 @12 +@231 := @43 @229 @7 +@232 := @5 @130 +@233 := @54 @232 +@235 := @122 (@233 @12) +@236 := @149 @7 +@237 := @236 @14 +@242 := {vs : @126} -> {ts : @127} -> (h : @231) -> (hs : @205) -> @235 @237 +@243 := @228 @53 +@244 := @5 @14 +@246 := @43 @244 @7 +@247 := @123 @4 +@249 := @54 @215 @53 +@250 := @122 @249 +@254 := {ts : @127} -> (h : @246) -> (hs : @247) -> @250 @237 +@255 := @243 @77 +@257 := @54 @229 @53 +@258 := @122 @257 +@259 := @236 @77 +@262 := (h : @49) -> (hs : @124) -> @258 @259 +@263 := @255 @47 +@265 := @54 @244 @53 +@266 := @122 @265 +@268 := (hs : @124) -> @266 @259 +@269 := @263 @121 +@270 := @122 @56 +@271 := @270 @259 +@272 := LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.denote +@273 := @272 @4 +@274 := LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.__fits_0 +@275 := @274 @4 +@277 := LexLeanStd.Text.lines @4 +@281 := LexLeanPreservation.encList @3 @5 @277 +@283 := LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.root @4 +@284 := Bool +@285 := Ne.{1} +@286 := LexLeanPreservation.Obs +@287 := @285 @286 +@288 := LexLeanPreservation.Rel +@291 := @287 (@288 @4 @17) +@292 := LexLeanPreservation.Obs.stuck +@295 := (f : @284) -> (v : @50) -> @291 @292 +@297 := LexLeanPreservation.Rust.rel_ne_stuck @275 +@303 := (v : @50) -> @287 (@288 (@274 @14) @17) @292 +@304 := @297 @281 +@308 := @287 (@288 @275 @281) @292 +@309 := @125 @60 +@310 := LexLeanPreservation.Rust.FunSem +@311 := #9 +@317 := (n : @57) -> @310 @311 @142 @136 @17 @128 +@318 := Eq.{1} +@319 := Option.{0} +@320 := @319 @72 +@321 := @318 @320 +@328 := LexLeanRuntime.index (@125 @72) @72 (LexLeanRuntime.instIndexableList @72) +@332 := @321 (@328 (@73 @311) @128) +@333 := Option.some.{0} +@334 := @333 @72 +@335 := @334 @130 +@336 := @332 @335 +@337 := #10 +@341 := @97 @337 @311 @142 @130 +@342 := LexLeanTarget.TargetSyntax.Function.types +@343 := @342 @128 +@344 := @341 @343 +@345 := @319 @309 +@346 := @318 @345 +@347 := LexLeanTarget.TargetSemantics.bindAll +@348 := LexLeanTarget.TargetSyntax.Function.parameters +@353 := @346 (@347 (@348 @136) @128 @67) +@354 := @333 @309 +@355 := @354 @130 +@356 := @353 @355 +@357 := @319 @284 +@358 := @318 @357 +@359 := LexLeanPreservation.Rust.fnFallible +@360 := #11 +@363 := @358 (@359 @360 @311) +@364 := @333 @284 +@365 := @364 @130 +@366 := @363 @365 +@367 := LexLeanPreservation.RunConv +@368 := #13 +@372 := @367 @368 @337 @142 @130 +@374 := @287 @128 @292 +@375 := Exists.{1} +@376 := LexLeanPreservation.Rust.ROut +@377 := @375 @376 +@378 := And +@379 := LexLeanPreservation.Rust.RealizesFn +@383 := @378 (@379 @311 @142 @17) +@384 := LexLeanPreservation.Rust.RCI +@386 := @384 #15 +@387 := LexLeanPreservation.Rust.fnIdent +@388 := @387 @368 +@395 := (hne : @374) -> @377 (fun (ro : @376) => @383 (@386 @388 @360 @17)) +@410 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {f : @57} -> + {fn : @72} -> + {args : @126} -> + {env : @309} -> + {F : @284} -> + {o : @286} -> + (hB : @317) -> + (hfn : @336) -> (hwt : @344) -> (hbind : @356) -> (hF : @366) -> (hA : @372) -> @395 +@412 := LexLeanPreservation.Rust.compose @0 +@413 := @310 @0 +@418 := (n : @57) -> @413 @142 @136 @17 @128 +@419 := @328 @74 +@422 := @321 (@419 @128) @335 +@426 := @108 @311 @142 @130 @343 +@427 := @367 @0 +@430 := @427 @337 @142 @130 +@444 := {c : @9} -> + {A : @10} -> + {f : @57} -> + {fn : @72} -> + {args : @126} -> + {env : @309} -> + {F : @284} -> + {o : @286} -> + (hB : @418) -> + (hfn : @422) -> (hwt : @426) -> (hbind : @356) -> (hF : @366) -> (hA : @430) -> @395 +@445 := @412 @1 +@446 := @413 @1 +@450 := (n : @57) -> @446 @136 @17 @128 +@453 := @116 @142 @130 @343 +@454 := @359 @1 +@457 := @358 (@454 @311) @365 +@458 := @384 @1 +@468 := (hbind : @356) -> + (hF : @457) -> (hA : @430) -> (hne : @374) -> @377 (fun (ro : @376) => @383 (@458 @388 @360 @17)) +@478 := {A : @10} -> + {f : @57} -> + {fn : @72} -> + {args : @126} -> + {env : @309} -> {F : @284} -> {o : @286} -> (hB : @450) -> (hfn : @422) -> (hwt : @453) -> @468 +@479 := @445 @2 +@481 := @446 @2 @17 +@483 := (n : @57) -> @481 @128 +@484 := @122 @130 +@485 := @484 @343 +@494 := {f : @57} -> + {fn : @72} -> + {args : @126} -> + {env : @309} -> {F : @284} -> {o : @286} -> (hB : @483) -> (hfn : @422) -> (hwt : @485) -> @468 +@495 := @479 @61 +@497 := (n : @57) -> @481 @61 +@498 := @419 @61 +@499 := @321 @498 +@500 := @499 @335 +@501 := @454 @61 +@502 := @358 @501 +@503 := @502 @365 +@504 := @427 @61 +@506 := @504 @142 @130 +@508 := @458 (@387 @61) +@516 := (hF : @503) -> (hA : @506) -> (hne : @374) -> @377 (fun (ro : @376) => @383 (@508 @360 @17)) +@525 := {fn : @72} -> + {args : @126} -> + {env : @309} -> + {F : @284} -> {o : @286} -> (hB : @497) -> (hfn : @500) -> (hwt : @485) -> (hbind : @356) -> @516 +@526 := @495 @92 +@528 := @499 (@334 @92) +@529 := @342 @92 +@530 := @484 @529 +@532 := @347 (@348 @92) +@544 := {args : @126} -> + {env : @309} -> + {F : @284} -> + {o : @286} -> + (hB : @497) -> (hfn : @528) -> (hwt : @530) -> (hbind : @346 (@532 @128 @67) @355) -> @516 +@545 := @526 @56 +@546 := @219 @53 +@548 := @122 @546 @529 +@551 := @54 (@5 @136) @53 +@555 := @346 (@532 @551 @67) @355 +@558 := @54 (@5 @311) @53 +@579 := {env : @309} -> + {F : @284} -> + {o : @286} -> + (hB : @497) -> + (hfn : @528) -> + (hwt : @548) -> + (hbind : @555) -> + (hF : @503) -> + (hA : @504 @558 @130) -> + (hne : @374) -> @377 (fun (ro : @376) => @383 (@508 (@54 (@5 #12) @53) @17)) +@580 := @545 @70 +@581 := @233 @53 +@583 := @122 @581 @529 +@591 := @346 (@532 @546 @67) (@354 (@68 (@65 @218) @67)) +@594 := @54 (@5 @142) @53 +@613 := {F : @284} -> + {o : @286} -> + (hB : @497) -> + (hfn : @528) -> + (hwt : @583) -> + (hbind : @591) -> + (hF : @503) -> + (hA : @504 @594 @130) -> + (hne : @374) -> @377 (fun (ro : @376) => @383 (@508 (@54 (@5 @360) @53) @17)) +@614 := @580 @71 +@615 := @250 @529 +@623 := @346 (@532 @581 @67) (@354 (@68 (@65 @232) @67)) +@625 := @502 (@364 @71) +@627 := @504 @551 @130 +@628 := @379 @71 +@647 := {o : @286} -> + (hB : @497) -> + (hfn : @528) -> + (hwt : @615) -> + (hbind : @623) -> + (hF : @625) -> + (hA : @627) -> + (hne : @374) -> @377 (fun (ro : @376) => @378 (@628 @142 @17) (@508 (@54 (@5 @337) @53) @17)) +@648 := @614 @273 +@649 := @258 @529 +@657 := @346 (@532 @249 @67) (@354 (@68 (@65 @215) @67)) +@658 := @504 @546 +@659 := @272 @128 +@660 := @658 @659 +@661 := @272 @136 +@679 := (hB : @497) -> + (hfn : @528) -> + (hwt : @649) -> + (hbind : @657) -> + (hF : @625) -> + (hA : @660) -> + (hne : @287 @661 @292) -> @377 (fun (ro : @376) => @378 (@628 (@272 @311) @17) (@508 @558 @17)) +@680 := @648 @96 +@681 := @266 @529 +@689 := @346 (@532 @257 @67) (@354 (@68 (@65 @229) @67)) +@690 := @504 @581 +@691 := @272 @130 +@709 := (hfn : @528) -> + (hwt : @681) -> + (hbind : @689) -> + (hF : @625) -> + (hA : @690 @691) -> + (hne : @287 @659 @292) -> @377 (fun (ro : @376) => @378 (@628 (@272 @142) @17) (@508 @594 @17)) +@710 := Eq.refl.{1} +@713 := @680 (@710 @320 @498) +@714 := @270 @529 +@722 := @346 (@532 @265 @67) (@354 (@68 (@65 @244) @67)) +@723 := @504 @249 +@724 := @272 @132 +@740 := (hwt : @714) -> + (hbind : @722) -> + (hF : @625) -> + (hA : @723 @724) -> + (hne : @287 @691 @292) -> @377 (fun (ro : @376) => @378 (@628 @661 @17) (@508 @551 @17)) +@741 := @713 @269 +@743 := @532 @56 @67 +@746 := @346 @743 (@354 @70) +@747 := @504 @257 +@748 := @272 @12 +@763 := (hbind : @746) -> + (hF : @625) -> + (hA : @747 @748) -> + (hne : @287 @724 @292) -> @377 (fun (ro : @376) => @378 (@628 @659 @17) (@508 @546 @17)) +@766 := @741 (@710 @345 @743) +@767 := @504 @265 +@768 := @272 @14 +@782 := (hF : @625) -> + (hA : @767 @768) -> + (hne : @287 @748 @292) -> @377 (fun (ro : @376) => @378 (@628 @691 @17) (@508 @581 @17)) +@785 := @766 (@710 @357 @501) +@799 := (hA : @504 @56 @273) -> + (hne : @287 @768 @292) -> @377 (fun (ro : @376) => @378 (@628 @724 @17) (@508 @249 @17)) +@800 := @785 @283 +@811 := (hne : @287 @273 @292) -> @377 (fun (ro : @376) => @378 (@628 @748 @17) (@508 @257 @17)) +@812 := @800 @304 +@818 := @378 (@628 @768 @17) (@508 @265 @17) +@820 := @377 (fun (ro : @376) => @818) +@822 := @377 (fun (__e_ro : @376) => @818) +@826 := LexLeanPreservation.Rust.RepresentableL (@54 @18 @53) +@827 := (__e_hrep : @826) -> @822 +@828 := fun (__e_hrep : @826) => @812 +@829 := (subject : @3) -> @827 +@830 := fun (subject : @3) => @828 +\end{coremodule} +\end{lexlean} diff --git a/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R4/RustStd.lean b/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R4/RustStd.lean new file mode 100644 index 000000000..3658c6761 --- /dev/null +++ b/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R4/RustStd.lean @@ -0,0 +1,117 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0], types := [.bytes], result := (.list .bytes), + body := (.«let» 1 .nat (.prim .length [(.var 0)]) (.«let» 2 (.pair .nat (.pair .nat (.list .bytes))) (.first (.call 1 [(.closure 2 [(.var 0)]), (.var 1), (.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.value .nat (.nat 0)), (.build .pair (.pair .nat (.list .bytes)) [(.value .nat (.nat 0)), (.build .nil (.list .bytes) [])])])])) (.«let» 3 .nat (.first (.second (.var 2))) (.«let» 4 (.list .bytes) (.second (.second (.var 2))) (.cond (.prim .natLt [(.var 3), (.var 1)]) (.call 3 [(.build .cons (.list .bytes) [(.call 4 [(.var 0), (.var 3), (.prim .natSub [(.var 1), (.var 3)])]), (.var 4)])]) (.call 3 [(.var 4)])))))) }, + { parameters := [0, 1, 2], types := [(.fn [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes))))), .nat, (.pair .nat (.pair .nat (.list .bytes)))], result := (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool), + body := (.«match» (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 1 [(.var 0), (.var 3), (.var 4)]))]))]) }, + { parameters := [0, 1], types := [.bytes, (.pair .nat (.pair .nat (.list .bytes)))], result := (.option (.pair .nat (.pair .nat (.list .bytes)))), + body := (.call 5 [(.var 0), (.var 1)]) }, + { parameters := [0], types := [(.list .bytes)], result := (.list .bytes), + body := (.call 6 [(.closure 7 []), (.build .nil (.list .bytes) []), (.var 0)]) }, + { parameters := [0, 1, 2], types := [.bytes, .nat, .nat], result := .bytes, + body := (.«match» .bytes (.prim .slice [(.var 0), (.var 1), (.var 2)]) [(.arm .some [3] (.var 3)), (.arm .none [] (.value .bytes (.bytes (ByteArray.mk #[]))))]) }, + { parameters := [0, 1], types := [.bytes, (.pair .nat (.pair .nat (.list .bytes)))], result := (.option (.pair .nat (.pair .nat (.list .bytes)))), + body := (.«let» 2 .nat (.first (.var 1)) (.«let» 3 .nat (.first (.second (.var 1))) (.«let» 4 (.list .bytes) (.second (.second (.var 1))) (.«match» (.option (.pair .nat (.pair .nat (.list .bytes)))) (.call 8 [(.var 0), (.var 2)]) [(.arm .some [5] (.cond (.prim .equal [(.var 5), (.value (.fixed .u8) (.u8 10))]) (.build .some (.option (.pair .nat (.pair .nat (.list .bytes)))) [(.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.prim .natAdd [(.var 2), (.value .nat (.nat 1))]), (.build .pair (.pair .nat (.list .bytes)) [(.prim .natAdd [(.var 2), (.value .nat (.nat 1))]), (.build .cons (.list .bytes) [(.call 9 [(.call 4 [(.var 0), (.var 3), (.prim .natSub [(.var 2), (.var 3)])])]), (.var 4)])])])]) (.build .some (.option (.pair .nat (.pair .nat (.list .bytes)))) [(.build .pair (.pair .nat (.pair .nat (.list .bytes))) [(.prim .natAdd [(.var 2), (.value .nat (.nat 1))]), (.build .pair (.pair .nat (.list .bytes)) [(.var 3), (.var 4)])])]))), (.arm .none [] (.build .none (.option (.pair .nat (.pair .nat (.list .bytes)))) []))])))) }, + { parameters := [0, 1, 2], types := [(.fn [(.list .bytes), .bytes] (.list .bytes)), (.list .bytes), (.list .bytes)], result := (.list .bytes), + body := (.«match» (.list .bytes) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 6 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, + { parameters := [0, 1], types := [(.list .bytes), .bytes], result := (.list .bytes), + body := (.build .cons (.list .bytes) [(.var 1), (.var 0)]) }, + { parameters := [0, 1], types := [.bytes, .nat], result := (.option (.fixed .u8)), + body := (.prim .index [(.var 0), (.var 1)]) }, + { parameters := [0], types := [.bytes], result := .bytes, + body := (.cond (.call 10 [(.var 0), (.value .bytes (.bytes (ByteArray.mk #[13])))]) (.call 4 [(.var 0), (.value .nat (.nat 0)), (.prim .natSub [(.prim .length [(.var 0)]), (.value .nat (.nat 1))])]) (.var 0)) }, + { parameters := [0, 1], types := [.bytes, .bytes], result := .bool, + body := (.«let» 2 .nat (.prim .length [(.var 0)]) (.«let» 3 .nat (.prim .length [(.var 1)]) (.cond (.prim .natLe [(.var 3), (.var 2)]) (.«match» .bool (.prim .slice [(.var 0), (.prim .natSub [(.var 2), (.var 3)]), (.var 3)]) [(.arm .some [4] (.prim .equal [(.var 4), (.var 1)])), (.arm .none [] (.build .false .bool []))]) (.build .false .bool [])))) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.enum (.fn 0) [{ number := 2, fields := [.bytes] }]), + (.apply 0 [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes)))) true [{ function := 2, captures := [.clone], functionFallible := true }]), + (.enum (.fn 1) [{ number := 7, fields := [] }]), + (.apply 1 [(.list .bytes), .bytes] (.list .bytes) false [{ function := 7, captures := [], functionFallible := false }]), + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] (.fallible (.list .bytes)) (.mk [(.mk (.bind (.generated .binding 1)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 1))] false)))), (.mk (.bind (.generated .binding 2)) (some (.pair .nat (.pair .nat (.list .bytes)))) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.call (.function 1) [(.construct (.closure 0 2) [(.clone (.generated .binding 0))]), (.copy (.generated .binding 1)), (.pair (.lit (.nat 0)) (.pair (.lit (.nat 0)) (.construct (.nil .bytes) [])))] true))] (.move (.generated .part 2))))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 4))]) none (.clone (.generated .binding 2)))] (.move (.generated .part 4)))))] (.move (.generated .part 3))))), (.mk (.bind (.generated .binding 4)) (some (.list .bytes)) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 5))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 6))]) none (.move (.generated .binding 2)))] (.move (.generated .part 6)))))] (.move (.generated .part 5))))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false) (.mk [] (.succeed (.call (.function 3) [(.construct .cons [(.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false)))] false), (.move (.generated .binding 4))])] false))) (.mk [] (.succeed (.call (.function 3) [(.move (.generated .binding 4))] false)))))), + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := (.pair .nat (.pair .nat (.list .bytes))) }] (.fallible (.pair (.pair .nat (.pair .nat (.list .bytes))) .bool)) (.mk [(.mk (.bind (.generated .holder 11)) none (.copy (.generated .binding 1)))] (.cond (.isZero (.generated .holder 11)) (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 11))), (.mk (.bind (.generated .holder 13)) none (.block (.mk [(.mk (.bind (.generated .callee 12)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 12) [(.clone (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 1) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))]))))), + (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := (.pair .nat (.pair .nat (.list .bytes))) }] (.fallible (.option (.pair .nat (.pair .nat (.list .bytes))))) (.mk [] (.call (.function 5) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false))), + (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := (.list .bytes) }] (.list .bytes) (.mk [] (.call (.function 6) [(.construct (.closure 1 7) []), (.construct (.nil .bytes) []), (.move (.generated .binding 0))] false))), + (.function (.generated .function 4) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := .nat }] .bytes (.mk [(.mk (.bind (.generated .holder 17)) none (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 2)))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 14)), (.move (.generated .operand 15)), (.move (.generated .operand 16))] false))))] (.matchOn (.move (.generated .holder 17)) [(.mk .none (.mk [] (.lit (.bytes (ByteArray.mk #[]))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.move (.generated .binding 3))))]))), + (.function (.generated .function 5) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := (.pair .nat (.pair .nat (.list .bytes))) }] (.fallible (.option (.pair .nat (.pair .nat (.list .bytes))))) (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 18)), .wild]) none (.clone (.generated .binding 1)))] (.move (.generated .part 18))))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 19)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 20))]) none (.clone (.generated .binding 1)))] (.move (.generated .part 20)))))] (.move (.generated .part 19))))), (.mk (.bind (.generated .binding 4)) (some (.list .bytes)) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 21))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 22))]) none (.move (.generated .binding 1)))] (.move (.generated .part 22)))))] (.move (.generated .part 21))))), (.mk (.bind (.generated .holder 23)) none (.call (.function 8) [(.clone (.generated .binding 0)), (.copy (.generated .binding 2))] false))] (.matchOn (.move (.generated .holder 23)) [(.mk .none (.mk [] (.succeed (.construct (.none (.pair .nat (.pair .nat (.list .bytes)))) [])))), (.mk (.some (.bind (.generated .binding 5))) (.mk [(.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 5))), (.mk (.bind (.generated .operand 25)) none (.lit (.fixed .u8 10)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 24)), (.move (.generated .operand 25))] false) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] true))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 28)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 29)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 28)), (.move (.generated .operand 29))] true))) (.construct .cons [(.call (.function 9) [(.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.block (.mk [(.mk (.bind (.generated .operand 30)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 31)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] false)))] false)] false), (.move (.generated .binding 4))])))]))) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 33)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] true))) (.pair (.copy (.generated .binding 3)) (.move (.generated .binding 4))))]))))))]))), + (.function (.generated .function 6) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 1) }, { pattern := (.bind (.generated .binding 1)), type := (.list .bytes) }, { pattern := (.bind (.generated .binding 2)), type := (.list .bytes) }] (.list .bytes) (.mk [(.mk (.bind (.generated .holder 34)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 34)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 6) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 35)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 35) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]))), + (.function (.generated .function 7) [{ pattern := (.bind (.generated .binding 0)), type := (.list .bytes) }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] (.list .bytes) (.mk [] (.construct .cons [(.move (.generated .binding 1)), (.move (.generated .binding 0))]))), + (.function (.generated .function 8) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }] (.option (.fixed .u8)) (.mk [(.mk (.bind (.generated .operand 36)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 37)) none (.copy (.generated .binding 1)))] (.call (.runtime .indexBytes) [(.move (.generated .operand 36)), (.move (.generated .operand 37))] false))), + (.function (.generated .function 9) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }] .bytes (.mk [] (.cond (.call (.function 10) [(.clone (.generated .binding 0)), (.lit (.bytes (ByteArray.mk #[13])))] false) (.mk [] (.call (.function 4) [(.clone (.generated .binding 0)), (.lit (.nat 0)), (.block (.mk [(.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.bind (.generated .operand 38)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 38))] false)))), (.mk (.bind (.generated .operand 40)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] false)))] false)) (.mk [] (.move (.generated .binding 0)))))), + (.function (.generated .function 10) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] .bool (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 41)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 41))] false)))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 42)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 42))] false)))), (.mk (.bind (.generated .operand 43)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 44)) none (.copy (.generated .binding 2)))] (.cond (.call (.runtime .natLe) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] false) (.mk [(.mk (.bind (.generated .holder 50)) none (.block (.mk [(.mk (.bind (.generated .operand 47)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 48)) none (.block (.mk [(.mk (.bind (.generated .operand 45)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 46)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 45)), (.move (.generated .operand 46))] false)))), (.mk (.bind (.generated .operand 49)) none (.copy (.generated .binding 3)))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 47)), (.move (.generated .operand 48)), (.move (.generated .operand 49))] false))))] (.matchOn (.move (.generated .holder 50)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.bind (.generated .binding 4))) (.mk [(.mk (.bind (.generated .operand 51)) none (.move (.generated .binding 4))), (.mk (.bind (.generated .operand 52)) none (.move (.generated .binding 1)))] (.call (.runtime .equal) [(.move (.generated .operand 51)), (.move (.generated .operand 52))] false)))])) (.mk [] (.lit (.bool false))))))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [(([(.pair .nat (.pair .nat (.list .bytes)))], (.option (.pair .nat (.pair .nat (.list .bytes))))), true), (([(.list .bytes), .bytes], (.list .bytes)), false)] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 1)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 1))] false)))), (.mk (.bind (.generated .binding 2)) (some (.pair .nat (.pair .nat (.list .bytes)))) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.call (.function 1) [(.construct (.closure 0 2) [(.clone (.generated .binding 0))]), (.copy (.generated .binding 1)), (.pair (.lit (.nat 0)) (.pair (.lit (.nat 0)) (.construct (.nil .bytes) [])))] true))] (.move (.generated .part 2))))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 4))]) none (.clone (.generated .binding 2)))] (.move (.generated .part 4)))))] (.move (.generated .part 3))))), (.mk (.bind (.generated .binding 4)) (some (.list .bytes)) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 5))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 6))]) none (.move (.generated .binding 2)))] (.move (.generated .part 6)))))] (.move (.generated .part 5))))), (.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1)))], (.cond (.call (.runtime .natLt) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false) (.mk [] (.succeed (.call (.function 3) [(.construct .cons [(.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false)))] false), (.move (.generated .binding 4))])] false))) (.mk [] (.succeed (.call (.function 3) [(.move (.generated .binding 4))] false)))), [(0, .bytes, (some 0))], rfl, rfl, + (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 1))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 2)), .wild]) none (.call (.function 1) [(.construct (.closure 0 2) [(.clone (.generated .binding 0))]), (.copy (.generated .binding 1)), (.pair (.lit (.nat 0)) (.pair (.lit (.nat 0)) (.construct (.nil .bytes) [])))] true))]) (tail := (.move (.generated .part 2))) (Corr.first (ta := (.pair .nat (.pair .nat (.list .bytes)))) (tb := .bool) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes))))), .nat, (.pair .nat (.pair .nat (.list .bytes)))]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [.bytes]) (mask := [false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 4))]) none (.clone (.generated .binding 2)))] (.move (.generated .part 4)))))]) (tail := (.move (.generated .part 3))) (Corr.first (ta := .nat) (tb := (.list .bytes)) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 4))]) none (.clone (.generated .binding 2)))]) (tail := (.move (.generated .part 4))) (Corr.second (ta := .nat) (tb := (.pair .nat (.list .bytes))) (Corr.var rfl rfl) rfl)) rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 5))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 6))]) none (.move (.generated .binding 2)))] (.move (.generated .part 6)))))]) (tail := (.move (.generated .part 5))) (Corr.second (ta := .nat) (tb := (.list .bytes)) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 6))]) none (.move (.generated .binding 2)))]) (tail := (.move (.generated .part 6))) (Corr.second (ta := .nat) (tb := (.pair .nat (.list .bytes))) (Corr.var rfl rfl) rfl)) rfl)) rfl (Corr.cond (lc := [(.mk (.bind (.generated .operand 7)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 8)) none (.copy (.generated .binding 1)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.call (.function 3) [(.construct .cons [(.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false)))] false), (.move (.generated .binding 4))])] false))) (lb := []) (tb := (.succeed (.call (.function 3) [(.move (.generated .binding 4))] false))) (Corr.fOfB (Corr.callOps (ts := [(.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.bytes, (.list .bytes)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 3)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.fOfB (Corr.callOps (ts := [(.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl))))))))⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 11)) none (.copy (.generated .binding 1)))], (.cond (.isZero (.generated .holder 11)) (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 11))), (.mk (.bind (.generated .holder 13)) none (.block (.mk [(.mk (.bind (.generated .callee 12)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 12) [(.clone (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 1) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))]))), [(2, (.pair .nat (.pair .nat (.list .bytes))), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes))))), (some 0))], rfl, rfl, + (Corr.matchNat (sl := (some 3)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool false))))) (lb := [(.mk (.bind (.generated .holder 13)) none (.block (.mk [(.mk (.bind (.generated .callee 12)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 12) [(.clone (.generated .binding 2))] true))))]) (tb := (.matchOn (.move (.generated .holder 13)) [(.mk .none (.mk [] (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 1) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)))])) (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))))) (Corr.matchArms (st := (.option (.pair .nat (.pair .nat (.list .bytes))))) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 12)) (some (.fn 0)) (.clone (.generated .binding 0)))]) (tail := (.apply (.generated .callee 12) [(.clone (.generated .binding 2))] true)) (Corr.apply (ps := [(.pair .nat (.pair .nat (.list .bytes)))]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (2, (.pair .nat (.pair .nat (.list .bytes))), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes))))), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.pair (.move (.generated .binding 2)) (.lit (.bool true))))) (Corr.mCons (Γ' := [(4, (.pair .nat (.pair .nat (.list .bytes))), (some 4)), (3, .nat, (some 3)), (2, (.pair .nat (.pair .nat (.list .bytes))), (some 2)), (1, .nat, (some 1)), (0, (.fn [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes))))), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 1) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [(.pair .nat (.pair .nat (.list .bytes)))] (.option (.pair .nat (.pair .nat (.list .bytes))))), .nat, (.pair .nat (.pair .nat (.list .bytes)))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))))))) rfl rfl rfl)))⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 5) [(.move (.generated .binding 0)), (.move (.generated .binding 1))] false), [(1, (.pair .nat (.pair .nat (.list .bytes))), (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.callF (ts := [.bytes, (.pair .nat (.pair .nat (.list .bytes)))]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)⟩⟩ + +theorem fun3 : FunOK program krate flags 3 := + ⟨_, rfl, .inl ⟨_, _, [], (.call (.function 6) [(.construct (.closure 1 7) []), (.construct (.nil .bytes) []), (.move (.generated .binding 0))] false), [(0, (.list .bytes), (some 0))], rfl, rfl, + (Corr.callOps (ts := [(.fn [(.list .bytes), .bytes] (.list .bytes)), (.list .bytes), (.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := []) (mask := []) (af := false) (ff := false) (Corr.opsNil) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun4 : FunOK program krate flags 4 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 17)) none (.block (.mk [(.mk (.bind (.generated .operand 14)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 2)))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 14)), (.move (.generated .operand 15)), (.move (.generated .operand 16))] false))))], (.matchOn (.move (.generated .holder 17)) [(.mk .none (.mk [] (.lit (.bytes (ByteArray.mk #[]))))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.move (.generated .binding 3))))]), [(2, .nat, (some 2)), (1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 14)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 15)) none (.copy (.generated .binding 1))), (.mk (.bind (.generated .operand 16)) none (.copy (.generated .binding 2)))]) (tail := (.call (.runtime .sliceBytes) [(.move (.generated .operand 14)), (.move (.generated .operand 15)), (.move (.generated .operand 16))] false)) (Corr.prim (ts := [.bytes, .nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, .nat, (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bytes (ByteArray.mk #[])))) (Corr.mCons (Γ' := [(3, .bytes, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 3))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.bOfE (Corr.value rfl rfl))) rfl rfl rfl)⟩⟩ + +theorem fun5 : FunOK program krate flags 5 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 18)), .wild]) none (.clone (.generated .binding 1)))] (.move (.generated .part 18))))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 19)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 20))]) none (.clone (.generated .binding 1)))] (.move (.generated .part 20)))))] (.move (.generated .part 19))))), (.mk (.bind (.generated .binding 4)) (some (.list .bytes)) (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 21))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 22))]) none (.move (.generated .binding 1)))] (.move (.generated .part 22)))))] (.move (.generated .part 21))))), (.mk (.bind (.generated .holder 23)) none (.call (.function 8) [(.clone (.generated .binding 0)), (.copy (.generated .binding 2))] false))], (.matchOn (.move (.generated .holder 23)) [(.mk .none (.mk [] (.succeed (.construct (.none (.pair .nat (.pair .nat (.list .bytes)))) [])))), (.mk (.some (.bind (.generated .binding 5))) (.mk [(.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 5))), (.mk (.bind (.generated .operand 25)) none (.lit (.fixed .u8 10)))] (.cond (.call (.runtime .equal) [(.move (.generated .operand 24)), (.move (.generated .operand 25))] false) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] true))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 28)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 29)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 28)), (.move (.generated .operand 29))] true))) (.construct .cons [(.call (.function 9) [(.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.block (.mk [(.mk (.bind (.generated .operand 30)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 31)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] false)))] false)] false), (.move (.generated .binding 4))])))]))) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 33)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] true))) (.pair (.copy (.generated .binding 3)) (.move (.generated .binding 4))))]))))))]), [(1, (.pair .nat (.pair .nat (.list .bytes))), (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 18)), .wild]) none (.clone (.generated .binding 1)))]) (tail := (.move (.generated .part 18))) (Corr.first (ta := .nat) (tb := (.pair .nat (.list .bytes))) (Corr.var rfl rfl) rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 19)), .wild]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 20))]) none (.clone (.generated .binding 1)))] (.move (.generated .part 20)))))]) (tail := (.move (.generated .part 19))) (Corr.first (ta := .nat) (tb := (.list .bytes)) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 20))]) none (.clone (.generated .binding 1)))]) (tail := (.move (.generated .part 20))) (Corr.second (ta := .nat) (tb := (.pair .nat (.list .bytes))) (Corr.var rfl rfl) rfl)) rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 21))]) none (.block (.mk [(.mk (.tuple [.wild, (.bind (.generated .part 22))]) none (.move (.generated .binding 1)))] (.move (.generated .part 22)))))]) (tail := (.move (.generated .part 21))) (Corr.second (ta := .nat) (tb := (.list .bytes)) (Corr.eOfB (lets := [(.mk (.tuple [.wild, (.bind (.generated .part 22))]) none (.move (.generated .binding 1)))]) (tail := (.move (.generated .part 22))) (Corr.second (ta := .nat) (tb := (.pair .nat (.list .bytes))) (Corr.var rfl rfl) rfl)) rfl)) rfl (Corr.matchArms (st := (.option (.fixed .u8))) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(4, (.list .bytes), (some 4)), (3, .nat, (some 3)), (2, .nat, (some 2)), (1, (.pair .nat (.pair .nat (.list .bytes))), (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.succeed (.construct (.none (.pair .nat (.pair .nat (.list .bytes)))) []))) (Corr.mCons (Γ' := [(5, (.fixed .u8), (some 5)), (4, (.list .bytes), (some 4)), (3, .nat, (some 3)), (2, .nat, (some 2)), (1, (.pair .nat (.pair .nat (.list .bytes))), (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 5))), (.mk (.bind (.generated .operand 25)) none (.lit (.fixed .u8 10)))]) (tail := (.cond (.call (.runtime .equal) [(.move (.generated .operand 24)), (.move (.generated .operand 25))] false) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] true))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 28)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 29)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 28)), (.move (.generated .operand 29))] true))) (.construct .cons [(.call (.function 9) [(.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.block (.mk [(.mk (.bind (.generated .operand 30)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 31)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] false)))] false)] false), (.move (.generated .binding 4))])))]))) (.mk [] (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 33)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] true))) (.pair (.copy (.generated .binding 3)) (.move (.generated .binding 4))))]))))) (Corr.mNil) rfl rfl rfl (Corr.cond (lc := [(.mk (.bind (.generated .operand 24)) none (.copy (.generated .binding 5))), (.mk (.bind (.generated .operand 25)) none (.lit (.fixed .u8 10)))]) (ce := (.call (.runtime .equal) [(.move (.generated .operand 24)), (.move (.generated .operand 25))] false)) (lk := []) (Corr.prim (ts := [(.fixed .u8), (.fixed .u8)]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] true))) (.pair (.block (.mk [(.mk (.bind (.generated .operand 28)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 29)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 28)), (.move (.generated .operand 29))] true))) (.construct .cons [(.call (.function 9) [(.call (.function 4) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.block (.mk [(.mk (.bind (.generated .operand 30)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 31)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] false)))] false)] false), (.move (.generated .binding 4))])))]))) (lb := []) (tb := (.succeed (.construct .some [(.pair (.block (.mk [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 33)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] true))) (.pair (.copy (.generated .binding 3)) (.move (.generated .binding 4))))]))) (Corr.fOfB (Corr.build (ts := [(.pair .nat (.pair .nat (.list .bytes)))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 26)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 27)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 26)), (.move (.generated .operand 27))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 28)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 29)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 28)), (.move (.generated .operand 29))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := [.bytes, (.list .bytes)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.callOps (ts := [.bytes, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 30)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 31)) none (.copy (.generated .binding 3)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 30)), (.move (.generated .operand 31))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := [(.pair .nat (.pair .nat (.list .bytes)))]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 32)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 33)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 32)), (.move (.generated .operand 33))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) (Corr.lNil)))) (Corr.lNil))) rfl))))) rfl rfl rfl (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))) rfl rfl rfl))))⟩⟩ + +theorem fun6 : FunOK program krate flags 6 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 34)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 34)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 6) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 35)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 35) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]), [(2, (.list .bytes), (some 2)), (1, (.list .bytes), (some 1)), (0, (.fn [(.list .bytes), .bytes] (.list .bytes)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .bytes)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .bytes), (some 2)), (1, (.list .bytes), (some 1)), (0, (.fn [(.list .bytes), .bytes] (.list .bytes)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 1))) (Corr.mCons (Γ' := [(4, (.list .bytes), (some 4)), (3, .bytes, (some 3)), (2, (.list .bytes), (some 2)), (1, (.list .bytes), (some 1)), (0, (.fn [(.list .bytes), .bytes] (.list .bytes)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 6) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 35)) (some (.fn 1)) (.move (.generated .binding 0)))] (.apply (.generated .callee 35) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.fn [(.list .bytes), .bytes] (.list .bytes)), (.list .bytes), (.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 35)) (some (.fn 1)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 35) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false)) (Corr.apply (ps := [(.list .bytes), .bytes]) (af := false) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ + +theorem fun7 : FunOK program krate flags 7 := + ⟨_, rfl, .inl ⟨_, _, [], (.construct .cons [(.move (.generated .binding 1)), (.move (.generated .binding 0))]), [(1, .bytes, (some 1)), (0, (.list .bytes), (some 0))], rfl, rfl, + (Corr.build (ts := [.bytes, (.list .bytes)]) (mask := [false, false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl)⟩⟩ + +theorem fun8 : FunOK program krate flags 8 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .operand 36)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 37)) none (.copy (.generated .binding 1)))], (.call (.runtime .indexBytes) [(.move (.generated .operand 36)), (.move (.generated .operand 37))] false), [(1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.prim (ts := [.bytes, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)⟩⟩ + +theorem fun9 : FunOK program krate flags 9 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 10) [(.clone (.generated .binding 0)), (.lit (.bytes (ByteArray.mk #[13])))] false) (.mk [] (.call (.function 4) [(.clone (.generated .binding 0)), (.lit (.nat 0)), (.block (.mk [(.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.bind (.generated .operand 38)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 38))] false)))), (.mk (.bind (.generated .operand 40)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] false)))] false)) (.mk [] (.move (.generated .binding 0)))), [(0, .bytes, (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 10) [(.clone (.generated .binding 0)), (.lit (.bytes (ByteArray.mk #[13])))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .bytes]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.call (.function 4) [(.clone (.generated .binding 0)), (.lit (.nat 0)), (.block (.mk [(.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.bind (.generated .operand 38)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 38))] false)))), (.mk (.bind (.generated .operand 40)) none (.lit (.nat 1)))] (.call (.runtime .natSub) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] false)))] false)) (lb := []) (tb := (.move (.generated .binding 0))) (Corr.callOps (ts := [.bytes, .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.value rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 39)) none (.block (.mk [(.mk (.bind (.generated .operand 38)) none (.move (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 38))] false)))), (.mk (.bind (.generated .operand 40)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 39)), (.move (.generated .operand 40))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 38)) none (.move (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 38))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.bOfE (Corr.var rfl rfl))))⟩⟩ + +theorem fun10 : FunOK program krate flags 10 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 41)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 41))] false)))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 42)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 42))] false)))), (.mk (.bind (.generated .operand 43)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 44)) none (.copy (.generated .binding 2)))], (.cond (.call (.runtime .natLe) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] false) (.mk [(.mk (.bind (.generated .holder 50)) none (.block (.mk [(.mk (.bind (.generated .operand 47)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 48)) none (.block (.mk [(.mk (.bind (.generated .operand 45)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 46)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 45)), (.move (.generated .operand 46))] false)))), (.mk (.bind (.generated .operand 49)) none (.copy (.generated .binding 3)))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 47)), (.move (.generated .operand 48)), (.move (.generated .operand 49))] false))))] (.matchOn (.move (.generated .holder 50)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.bind (.generated .binding 4))) (.mk [(.mk (.bind (.generated .operand 51)) none (.move (.generated .binding 4))), (.mk (.bind (.generated .operand 52)) none (.move (.generated .binding 1)))] (.call (.runtime .equal) [(.move (.generated .operand 51)), (.move (.generated .operand 52))] false)))])) (.mk [] (.lit (.bool false)))), [(1, .bytes, (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 41)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 41))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 42)) none (.clone (.generated .binding 1)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 42))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.cond (lc := [(.mk (.bind (.generated .operand 43)) none (.copy (.generated .binding 3))), (.mk (.bind (.generated .operand 44)) none (.copy (.generated .binding 2)))]) (ce := (.call (.runtime .natLe) [(.move (.generated .operand 43)), (.move (.generated .operand 44))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := [(.mk (.bind (.generated .holder 50)) none (.block (.mk [(.mk (.bind (.generated .operand 47)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 48)) none (.block (.mk [(.mk (.bind (.generated .operand 45)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 46)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 45)), (.move (.generated .operand 46))] false)))), (.mk (.bind (.generated .operand 49)) none (.copy (.generated .binding 3)))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 47)), (.move (.generated .operand 48)), (.move (.generated .operand 49))] false))))]) (ta := (.matchOn (.move (.generated .holder 50)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.bind (.generated .binding 4))) (.mk [(.mk (.bind (.generated .operand 51)) none (.move (.generated .binding 4))), (.mk (.bind (.generated .operand 52)) none (.move (.generated .binding 1)))] (.call (.runtime .equal) [(.move (.generated .operand 51)), (.move (.generated .operand 52))] false)))])) (lb := []) (tb := (.lit (.bool false))) (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 47)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 48)) none (.block (.mk [(.mk (.bind (.generated .operand 45)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 46)) none (.copy (.generated .binding 3)))] (.call (.runtime .natSub) [(.move (.generated .operand 45)), (.move (.generated .operand 46))] false)))), (.mk (.bind (.generated .operand 49)) none (.copy (.generated .binding 3)))]) (tail := (.call (.runtime .sliceBytes) [(.move (.generated .operand 47)), (.move (.generated .operand 48)), (.move (.generated .operand 49))] false)) (Corr.prim (ts := [.bytes, .nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 45)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 46)) none (.copy (.generated .binding 3)))]) (tail := (.call (.runtime .natSub) [(.move (.generated .operand 45)), (.move (.generated .operand 46))] false)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (2, .nat, (some 2)), (1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(4, .bytes, (some 4)), (3, .nat, (some 3)), (2, .nat, (some 2)), (1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .operand 51)) none (.move (.generated .binding 4))), (.mk (.bind (.generated .operand 52)) none (.move (.generated .binding 1)))]) (tail := (.call (.runtime .equal) [(.move (.generated .operand 51)), (.move (.generated .operand 52))] false)) (Corr.mNil) rfl rfl rfl (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl) (Corr.bOfE (Corr.buildConst rfl))))))⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | 3 => exact fun3 + | 4 => exact fun4 + | 5 => exact fun5 + | 6 => exact fun6 + | 7 => exact fun7 + | 8 => exact fun8 + | 9 => exact fun9 + | 10 => exact fun10 + | _ + 11 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.RustStd diff --git a/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R5.lean b/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R5.lean new file mode 100644 index 000000000..b93bfb543 --- /dev/null +++ b/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R5.lean @@ -0,0 +1,43 @@ +import LexLeanPreservation.Core +import LexLeanPreservation.Values +import LexLeanPreservation.Primitives +import LexLeanPreservation.Fixed +import LexLeanPreservation.Keys +import LexLeanPreservation.Templates +import LexLeanPreservation.Validate +import LexLeanStd.Text +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +set_option linter.unusedVariables false +namespace LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5 + +def __prog : _root_.LexLeanTarget.TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1], types := [(.list .bytes), .bytes], result := .bytes, + body := (.«match» .bytes (.call 1 [(.closure 2 [(.var 1)]), (.build .none (.option .bytes) []), (.var 0)]) [(.arm .some [2] (.var 2)), (.arm .none [] (.value .bytes (.bytes (ByteArray.mk #[]))))]) }, + { parameters := [0, 1, 2], types := [(.fn [(.option .bytes), .bytes] (.option .bytes)), (.option .bytes), (.list .bytes)], result := (.option .bytes), + body := (.«match» (.option .bytes) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 1 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, + { parameters := [0, 1, 2], types := [.bytes, (.option .bytes), .bytes], result := (.option .bytes), + body := (.«match» (.option .bytes) (.var 1) [(.arm .none [] (.build .some (.option .bytes) [(.var 2)])), (.arm .some [3] (.build .some (.option .bytes) [(.prim .append [(.prim .append [(.var 3), (.var 0)]), (.var 2)])]))]) }] } + +def __fits_2 (separator : ByteArray) (joined : (Option ByteArray)) (piece : ByteArray) : Bool := + (Bool.true && (match joined with | Option.none => ((Bool.true && Bool.true) && Bool.true) | Option.some sofar => ((((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) + +theorem __rel_2 (separator : ByteArray) (joined : (Option ByteArray)) (piece : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 2 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes separator), ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) joined), (_root_.LexLeanTarget.TargetSyntax.Value.bytes piece)] (_root_.LexLeanPreservation.Rel (__fits_2 separator joined piece) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) ((match joined with | Option.none => (Option.some (piece) : (Option ByteArray)) | Option.some sofar => (Option.some ((_root_.LexLeanRuntime.append ((_root_.LexLeanRuntime.append (sofar) (separator) : ByteArray)) (piece) : ByteArray)) : (Option ByteArray)))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.none => ((Bool.true && Bool.true) && Bool.true) | Option.some sofar => ((((((Bool.true && (Bool.true && Bool.true)) && Bool.true) && (Bool.true && Bool.true)) && Bool.true) && Bool.true) && Bool.true))) (fun (__a : (Option ByteArray)) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (match __a with | Option.none => (Option.some (piece) : (Option ByteArray)) | Option.some sofar => (Option.some ((_root_.LexLeanRuntime.append ((_root_.LexLeanRuntime.append (sofar) (separator) : ByteArray)) (piece) : ByteArray)) : (Option ByteArray)))) joined (_root_.LexLeanPreservation.conv_var rfl) (fun (__a : (Option ByteArray)) _ => match __a with | Option.none => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) | Option.some sofar => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_bytes sofar separator)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_append_bytes (_root_.LexLeanRuntime.append (sofar) (separator) : ByteArray) piece)) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some))))) + +def __fits_0 (pieces : (List ByteArray)) (separator : ByteArray) : Bool := + ((((Bool.true && Bool.true) && ((Bool.true && Bool.true) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.foldFits (fun (__p0 : (Option ByteArray)) (__p1 : ByteArray) => __fits_2 (separator) __p0 __p1) ((fun (joined : (Option ByteArray)) (piece : ByteArray) => (match joined with | Option.none => (Option.some (piece) : (Option ByteArray)) | Option.some sofar => (Option.some ((_root_.LexLeanRuntime.append ((_root_.LexLeanRuntime.append (sofar) (separator) : ByteArray)) (piece) : ByteArray)) : (Option ByteArray))))) ((Option.none : (Option ByteArray))) (pieces))) && (match (_root_.LexLeanCollections.listFold ((fun (joined : (Option ByteArray)) (piece : ByteArray) => (match joined with | Option.none => (Option.some (piece) : (Option ByteArray)) | Option.some sofar => (Option.some ((_root_.LexLeanRuntime.append ((_root_.LexLeanRuntime.append (sofar) (separator) : ByteArray)) (piece) : ByteArray)) : (Option ByteArray))))) ((Option.none : (Option ByteArray))) (pieces) : (Option ByteArray)) with | Option.some joined => Bool.true | Option.none => Bool.true)) + +theorem __rel_0 (pieces : (List ByteArray)) (separator : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 0 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) pieces), (_root_.LexLeanTarget.TargetSyntax.Value.bytes separator)] (_root_.LexLeanPreservation.Rel (__fits_0 pieces separator) (_root_.LexLeanTarget.TargetSyntax.Value.bytes (LexLeanStd.Text.joinWith pieces separator))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.some joined => Bool.true | Option.none => Bool.true)) (fun (__a : (Option ByteArray)) => _root_.LexLeanTarget.TargetSyntax.Value.bytes (match __a with | Option.some joined => joined | Option.none => (ByteArray.mk #[]))) (_root_.LexLeanCollections.listFold ((fun (joined : (Option ByteArray)) (piece : ByteArray) => (match joined with | Option.none => (Option.some (piece) : (Option ByteArray)) | Option.some sofar => (Option.some ((_root_.LexLeanRuntime.append ((_root_.LexLeanRuntime.append (sofar) (separator) : ByteArray)) (piece) : ByteArray)) : (Option ByteArray))))) ((Option.none : (Option ByteArray))) (pieces) : (Option ByteArray)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_listFold (ea := _root_.LexLeanTarget.TargetSyntax.Value.bytes) (es := (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes)) (_root_.LexLeanPreservation.listEnc _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun _ => rfl) ((fun (joined : (Option ByteArray)) (piece : ByteArray) => (match joined with | Option.none => (Option.some (piece) : (Option ByteArray)) | Option.some sofar => (Option.some ((_root_.LexLeanRuntime.append ((_root_.LexLeanRuntime.append (sofar) (separator) : ByteArray)) (piece) : ByteArray)) : (Option ByteArray))))) (fun (__p0 : (Option ByteArray)) (__p1 : ByteArray) => __fits_2 (separator) __p0 __p1) 2 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes separator)] (fun (__p0 : (Option ByteArray)) (__p1 : ByteArray) => __rel_2 (separator) __p0 __p1) (p := __prog) (fi := 1) (ta := .bytes) (ts := (.option .bytes)) rfl ((Option.none : (Option ByteArray))) (pieces))) (fun (__a : (Option ByteArray)) _ => match __a with | Option.some joined => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_var rfl)) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl _root_.LexLeanPreservation.conv_value)))) + +def denote (pieces : (List ByteArray)) (separator : ByteArray) : _root_.LexLeanPreservation.Obs := + _root_.cond (__fits_0 pieces separator) (_root_.LexLeanPreservation.Obs.value ((_root_.LexLeanTarget.TargetSyntax.Value.bytes (LexLeanStd.Text.joinWith pieces separator)))) _root_.LexLeanPreservation.Obs.overflow + +theorem root (pieces : (List ByteArray)) (separator : ByteArray) : _root_.LexLeanPreservation.RunConv __prog 0 [((_root_.LexLeanPreservation.encList _root_.LexLeanTarget.TargetSyntax.Value.bytes) pieces), (_root_.LexLeanTarget.TargetSyntax.Value.bytes separator)] (_root_.LexLeanPreservation.Rel (__fits_0 pieces separator) (_root_.LexLeanTarget.TargetSyntax.Value.bytes (LexLeanStd.Text.joinWith pieces separator))) := + _root_.LexLeanPreservation.run_of_funRel (__rel_0 pieces separator) + +end LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5 diff --git a/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R5/Compose/RustStd.lex.tex b/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R5/Compose/RustStd.lex.tex new file mode 100644 index 000000000..2edcf9b7a --- /dev/null +++ b/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R5/Compose/RustStd.lex.tex @@ -0,0 +1,513 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5, + LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.Compose.RustStd.root : @1046 := @1047 { + all: [LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.RustStd.program +@1 := LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.RustStd.krate +@2 := LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.RustStd.flags +@3 := ByteArray +@4 := List.{0} +@5 := @4 @3 +@6 := #2 +@7 := LexLeanTarget.TargetSyntax.Value.bytes +@8 := LexLeanPreservation.encList +@9 := @8 @3 +@10 := @9 @7 +@11 := @10 @6 +@12 := LexLeanTarget.TargetSyntax.Ty.bytes +@13 := LexLeanTarget.TargetSyntax.Ty.list +@14 := @13 @12 +@15 := #0 +@16 := LexLeanTarget.TargetSyntax.Program +@17 := LexLeanPreservation.Rust.RCrate +@18 := LexLeanPreservation.Rust.Flags +@19 := LexLeanPreservation.Rust.WT +@20 := #3 +@22 := @19 @20 @6 +@23 := #1 +@24 := @22 @23 +@25 := @7 @15 +@31 := {p : @16} -> {c : @17} -> {A : @18} -> (b : @3) -> @24 @25 @12 +@33 := LexLeanPreservation.Rust.wt_bytes @0 +@34 := @19 @0 +@41 := {c : @17} -> {A : @18} -> (b : @3) -> @34 @6 @23 @25 @12 +@42 := @33 @1 +@43 := @34 @1 +@48 := {A : @18} -> (b : @3) -> @43 @23 @25 @12 +@49 := @42 @2 +@50 := @43 @2 +@51 := @50 @25 +@52 := @51 @12 +@53 := (b : @3) -> @52 +@55 := fun (__x : @3) => @49 @15 +@56 := Sort 1 +@57 := LexLeanTarget.TargetSyntax.Value +@58 := (a._@._internal._hyg.#0 : @15) -> @57 +@59 := LexLeanTarget.TargetSyntax.Ty +@60 := #6 +@61 := @19 @60 +@62 := #5 +@63 := @61 @62 +@64 := #4 +@65 := @63 @64 +@66 := @6 @15 +@69 := (x : @6) -> @65 @66 @23 +@70 := @4 @20 +@71 := #7 +@74 := @19 @71 @60 @62 +@77 := @8 @64 @20 @15 +@78 := @74 @77 +@79 := @13 @6 +@88 := {p : @16} -> + {c : @17} -> + {A : @18} -> {α : @56} -> {e : @58} -> {t : @59} -> (h : @69) -> (xs : @70) -> @78 @79 +@90 := LexLeanPreservation.Rust.wt_encList @0 +@92 := @34 @62 @64 +@106 := {c : @17} -> + {A : @18} -> + {α : @56} -> + {e : @58} -> {t : @59} -> (h : (x : @6) -> @92 @66 @23) -> (xs : @70) -> @34 @60 @62 @77 @79 +@107 := @90 @1 +@108 := @43 @64 +@120 := {A : @18} -> + {α : @56} -> + {e : @58} -> {t : @59} -> (h : (x : @6) -> @108 @66 @23) -> (xs : @70) -> @43 @62 @77 @79 +@121 := @107 @2 +@123 := @50 @66 @23 +@131 := {α : @56} -> {e : @58} -> {t : @59} -> (h : (x : @6) -> @123) -> (xs : @70) -> @50 @77 @79 +@132 := @121 @3 +@142 := {e : (a._@._internal._hyg.#0 : @3) -> @57} -> + {t : @59} -> (h : (x : @3) -> @123) -> (xs : @5) -> @50 (@9 @20 @15) @79 +@143 := @132 @7 +@145 := (x : @3) -> @51 @23 +@147 := @50 (@10 @15) +@151 := {t : @59} -> (h : @145) -> (xs : @5) -> @147 @79 +@152 := @143 @12 +@156 := (h : (x : @3) -> @52) -> (xs : @5) -> @147 @14 +@158 := @152 @55 @6 +@160 := @50 @11 @14 +@161 := @7 @23 +@162 := @49 @23 +@164 := @50 @161 @12 +@165 := List.nil.{0} +@166 := List.cons.{0} +@167 := @165 @57 +@168 := @166 @57 +@170 := @168 @161 @167 +@172 := @168 @11 @170 +@173 := Nat +@176 := Prod.{0, 0} @173 @57 +@177 := 1 +@180 := Prod.mk.{0, 0} @173 @57 +@181 := @180 @177 +@182 := @181 @161 +@183 := 0 +@184 := @180 @183 +@185 := @184 @11 +@186 := @165 @176 +@187 := @166 @176 +@189 := @187 @185 @186 +@191 := @187 @182 @189 +@192 := Bool.false +@193 := LexLeanTarget.TargetSyntax.Function +@194 := LexLeanTarget.TargetSyntax.Program.functions +@195 := @194 @0 +@196 := @165 @173 +@197 := @165 @59 +@198 := LexLeanTarget.TargetSyntax.Ty.unit +@199 := LexLeanTarget.TargetSyntax.Value.unit +@202 := LexLeanTarget.TargetSyntax.Expr.value @198 @199 +@207 := LexLeanTarget.TargetSyntax.Function.mk @196 @197 @198 @202 +@212 := List.getD.{0} @193 @195 @183 @207 +@216 := fun (__e_n : @173) => + LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.RustStd.root @15 @183 +@217 := LexLeanPreservation.Rust.WTL +@225 := {p : @16} -> {c : @17} -> {A : @18} -> @217 @6 @23 @15 @167 @197 +@227 := LexLeanPreservation.Rust.wtl_nil @0 +@228 := @217 @0 +@234 := {c : @17} -> {A : @18} -> @228 @23 @15 @167 @197 +@235 := @227 @1 +@236 := @228 @1 +@240 := {A : @18} -> @236 @15 @167 @197 +@241 := @235 @2 +@242 := @236 @2 +@243 := @242 @167 +@244 := @243 @197 +@245 := @4 @57 +@246 := @4 @59 +@248 := @65 @20 @6 +@253 := @217 @71 @60 @62 @6 @23 +@254 := #8 +@257 := @217 @254 @71 @60 +@259 := @168 @62 @20 +@260 := @257 @259 +@261 := @166 @59 +@263 := @261 @64 @6 +@273 := {p : @16} -> + {c : @17} -> + {A : @18} -> + {v : @57} -> {t : @59} -> {vs : @245} -> {ts : @246} -> (h : @248) -> (hs : @253) -> @260 @263 +@275 := LexLeanPreservation.Rust.wtl_cons @0 +@293 := {c : @17} -> + {A : @18} -> + {v : @57} -> + {t : @59} -> + {vs : @245} -> + {ts : @246} -> (h : @92 @20 @6) -> (hs : @228 @60 @62 @6 @23) -> @228 @71 @60 @259 @263 +@294 := @275 @1 +@309 := {A : @18} -> + {v : @57} -> + {t : @59} -> + {vs : @245} -> {ts : @246} -> (h : @108 @20 @6) -> (hs : @236 @62 @6 @23) -> @236 @60 @259 @263 +@310 := @294 @2 +@312 := @50 @20 @6 +@314 := @242 @6 @23 +@322 := {v : @57} -> + {t : @59} -> {vs : @245} -> {ts : @246} -> (h : @312) -> (hs : @314) -> @242 @259 @263 +@323 := @310 @161 +@324 := @7 @64 +@326 := @50 @324 @6 +@327 := @7 @60 +@328 := @168 @327 +@336 := {t : @59} -> {vs : @245} -> {ts : @246} -> (h : @326) -> (hs : @314) -> @242 (@328 @20) @263 +@337 := @323 @12 +@338 := @7 @20 +@340 := @50 @338 @12 +@341 := @7 @62 +@342 := @168 @341 +@344 := @242 (@342 @20) +@345 := @261 @12 +@346 := @345 @6 +@351 := {vs : @245} -> {ts : @246} -> (h : @340) -> (hs : @314) -> @344 @346 +@352 := @337 @167 +@353 := @7 @6 +@355 := @50 @353 @12 +@356 := @243 @23 +@358 := @168 @324 @167 +@363 := {ts : @246} -> (h : @355) -> (hs : @356) -> @242 @358 @346 +@364 := @352 @197 +@366 := @168 @338 @167 +@367 := @242 @366 +@368 := @345 @197 +@371 := (h : @164) -> (hs : @244) -> @367 @368 +@372 := @364 @162 +@374 := @168 @353 @167 +@376 := @242 @374 @368 +@377 := (hs : @244) -> @376 +@378 := @372 @241 +@380 := @242 @170 @368 +@381 := @310 @11 +@382 := @10 @62 +@384 := @50 @382 @6 +@385 := @10 @71 +@386 := @168 @385 +@394 := {t : @59} -> {vs : @245} -> {ts : @246} -> (h : @384) -> (hs : @314) -> @242 (@386 @20) @263 +@395 := @381 @14 +@396 := @10 @64 +@398 := @50 @396 @14 +@399 := @10 @60 +@400 := @168 @399 +@402 := @242 (@400 @20) +@403 := @261 @14 +@404 := @403 @6 +@409 := {vs : @245} -> {ts : @246} -> (h : @398) -> (hs : @314) -> @402 @404 +@410 := @395 @170 +@411 := @10 @20 +@413 := @50 @411 @14 +@414 := @367 @23 +@416 := @168 @382 @358 +@417 := @242 @416 +@421 := {ts : @246} -> (h : @413) -> (hs : @414) -> @417 @404 +@422 := @410 @368 +@424 := @168 @396 @366 +@425 := @242 @424 +@426 := @403 @368 +@429 := (h : @160) -> (hs : @376) -> @425 @426 +@430 := @422 @158 +@432 := @168 @411 @374 +@433 := @242 @432 +@435 := (hs : @380) -> @433 @426 +@436 := @430 @378 +@437 := @242 @172 +@438 := @437 @426 +@439 := LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.denote +@441 := @439 @6 @23 +@442 := LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.__fits_0 +@444 := @442 @6 @23 +@448 := @7 (LexLeanStd.Text.joinWith @6 @23) +@451 := LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.root @6 @23 +@452 := Bool +@453 := Ne.{1} +@454 := LexLeanPreservation.Obs +@455 := @453 @454 +@456 := LexLeanPreservation.Rel +@459 := @455 (@456 @23 @15) +@460 := LexLeanPreservation.Obs.stuck +@463 := (f : @452) -> (v : @57) -> @459 @460 +@465 := LexLeanPreservation.Rust.rel_ne_stuck @444 +@472 := (v : @57) -> @455 (@456 (@442 @20 @6) @15) @460 +@473 := @465 @448 +@477 := @455 (@456 @444 @448) @460 +@478 := @4 @176 +@479 := LexLeanPreservation.Rust.FunSem +@480 := #9 +@486 := (n : @173) -> @479 @480 @254 @71 @15 @60 +@487 := Eq.{1} +@488 := Option.{0} +@489 := @488 @193 +@490 := @487 @489 +@497 := LexLeanRuntime.index (@4 @193) @193 (LexLeanRuntime.instIndexableList @193) +@501 := @490 (@497 (@194 @480) @60) +@502 := Option.some.{0} +@503 := @502 @193 +@504 := @503 @62 +@505 := @501 @504 +@506 := #10 +@510 := @217 @506 @480 @254 @62 +@511 := LexLeanTarget.TargetSyntax.Function.types +@512 := @511 @60 +@513 := @510 @512 +@514 := @488 @478 +@515 := @487 @514 +@516 := LexLeanTarget.TargetSemantics.bindAll +@517 := LexLeanTarget.TargetSyntax.Function.parameters +@522 := @515 (@516 (@517 @71) @60 @186) +@523 := @502 @478 +@524 := @523 @62 +@525 := @522 @524 +@526 := @488 @452 +@527 := @487 @526 +@528 := LexLeanPreservation.Rust.fnFallible +@529 := #11 +@532 := @527 (@528 @529 @480) +@533 := @502 @452 +@534 := @533 @62 +@535 := @532 @534 +@536 := LexLeanPreservation.RunConv +@537 := #13 +@541 := @536 @537 @506 @254 @62 +@543 := @455 @60 @460 +@544 := Exists.{1} +@545 := LexLeanPreservation.Rust.ROut +@546 := @544 @545 +@547 := And +@548 := LexLeanPreservation.Rust.RealizesFn +@552 := @547 (@548 @480 @254 @15) +@553 := LexLeanPreservation.Rust.RCI +@555 := @553 #15 +@556 := LexLeanPreservation.Rust.fnIdent +@557 := @556 @537 +@564 := (hne : @543) -> @546 (fun (ro : @545) => @552 (@555 @557 @529 @15)) +@579 := {p : @16} -> + {c : @17} -> + {A : @18} -> + {f : @173} -> + {fn : @193} -> + {args : @245} -> + {env : @478} -> + {F : @452} -> + {o : @454} -> + (hB : @486) -> + (hfn : @505) -> (hwt : @513) -> (hbind : @525) -> (hF : @535) -> (hA : @541) -> @564 +@581 := LexLeanPreservation.Rust.compose @0 +@582 := @479 @0 +@587 := (n : @173) -> @582 @254 @71 @15 @60 +@588 := @497 @195 +@591 := @490 (@588 @60) @504 +@595 := @228 @480 @254 @62 @512 +@596 := @536 @0 +@599 := @596 @506 @254 @62 +@613 := {c : @17} -> + {A : @18} -> + {f : @173} -> + {fn : @193} -> + {args : @245} -> + {env : @478} -> + {F : @452} -> + {o : @454} -> + (hB : @587) -> + (hfn : @591) -> (hwt : @595) -> (hbind : @525) -> (hF : @535) -> (hA : @599) -> @564 +@614 := @581 @1 +@615 := @582 @1 +@619 := (n : @173) -> @615 @71 @15 @60 +@622 := @236 @254 @62 @512 +@623 := @528 @1 +@626 := @527 (@623 @480) @534 +@627 := @553 @1 +@637 := (hbind : @525) -> + (hF : @626) -> (hA : @599) -> (hne : @543) -> @546 (fun (ro : @545) => @552 (@627 @557 @529 @15)) +@647 := {A : @18} -> + {f : @173} -> + {fn : @193} -> + {args : @245} -> + {env : @478} -> {F : @452} -> {o : @454} -> (hB : @619) -> (hfn : @591) -> (hwt : @622) -> @637 +@648 := @614 @2 +@650 := @615 @2 @15 +@652 := (n : @173) -> @650 @60 +@653 := @242 @62 +@654 := @653 @512 +@663 := {f : @173} -> + {fn : @193} -> + {args : @245} -> + {env : @478} -> {F : @452} -> {o : @454} -> (hB : @652) -> (hfn : @591) -> (hwt : @654) -> @637 +@664 := @648 @183 +@666 := (n : @173) -> @650 @183 +@667 := @588 @183 +@668 := @490 @667 +@669 := @668 @504 +@670 := @623 @183 +@671 := @527 @670 +@672 := @671 @534 +@673 := @596 @183 +@675 := @673 @254 @62 +@677 := @627 (@556 @183) +@685 := (hF : @672) -> (hA : @675) -> (hne : @543) -> @546 (fun (ro : @545) => @552 (@677 @529 @15)) +@694 := {fn : @193} -> + {args : @245} -> + {env : @478} -> + {F : @452} -> {o : @454} -> (hB : @666) -> (hfn : @669) -> (hwt : @654) -> (hbind : @525) -> @685 +@695 := @664 @212 +@697 := @668 (@503 @212) +@698 := @511 @212 +@699 := @653 @698 +@701 := @516 (@517 @212) +@713 := {args : @245} -> + {env : @478} -> + {F : @452} -> + {o : @454} -> + (hB : @666) -> (hfn : @697) -> (hwt : @699) -> (hbind : @515 (@701 @60 @186) @524) -> @685 +@714 := @695 @172 +@716 := @386 (@328 @167) +@718 := @242 @716 @698 +@724 := @168 (@10 @254) (@168 (@7 @71) @167) +@728 := @515 (@701 @724 @186) @524 +@734 := @168 (@10 @506) (@168 (@7 @480) @167) +@736 := @673 @734 @62 +@738 := @168 (@10 @537) +@739 := #12 +@758 := {env : @478} -> + {F : @452} -> + {o : @454} -> + (hB : @666) -> + (hfn : @697) -> + (hwt : @718) -> + (hbind : @728) -> + (hF : @672) -> + (hA : @736) -> + (hne : @543) -> @546 (fun (ro : @545) => @552 (@677 (@738 (@168 (@7 @739) @167)) @15)) +@759 := @714 @191 +@761 := @400 (@342 @167) +@763 := @242 @761 @698 +@774 := @515 (@701 @716 @186) (@523 (@187 (@181 @327) (@187 (@184 @385) @186))) +@780 := @168 (@10 @480) (@168 (@7 @254) @167) +@802 := {F : @452} -> + {o : @454} -> + (hB : @666) -> + (hfn : @697) -> + (hwt : @763) -> + (hbind : @774) -> + (hF : @672) -> + (hA : @673 @780 @62) -> + (hne : @543) -> @546 (fun (ro : @545) => @552 (@677 (@168 (@10 @739) (@168 (@7 @529) @167)) @15)) +@803 := @759 @192 +@804 := @417 @698 +@815 := @515 (@701 @761 @186) (@523 (@187 (@181 @341) (@187 (@184 @399) @186))) +@817 := @671 (@533 @192) +@819 := @673 @724 @62 +@820 := @548 @192 +@842 := {o : @454} -> + (hB : @666) -> + (hfn : @697) -> + (hwt : @804) -> + (hbind : @815) -> + (hF : @817) -> + (hA : @819) -> + (hne : @543) -> + @546 (fun (ro : @545) => @547 (@820 @254 @15) (@677 (@168 (@10 @529) (@168 (@7 @506) @167)) @15)) +@843 := @803 @441 +@844 := @425 @698 +@855 := @515 (@701 @416 @186) (@523 (@187 (@181 @324) (@187 (@184 @382) @186))) +@856 := @673 @716 +@858 := @439 @71 @60 +@859 := @856 @858 +@861 := @439 @254 @71 +@880 := (hB : @666) -> + (hfn : @697) -> + (hwt : @844) -> + (hbind : @855) -> + (hF : @817) -> + (hA : @859) -> + (hne : @455 @861 @460) -> + @546 (fun (ro : @545) => @547 (@820 (@439 @506 @480) @15) (@677 @734 @15)) +@881 := @843 @216 +@882 := @433 @698 +@893 := @515 (@701 @424 @186) (@523 (@187 (@181 @338) (@187 (@184 @396) @186))) +@894 := @673 @761 +@896 := @439 @60 @62 +@915 := (hfn : @697) -> + (hwt : @882) -> + (hbind : @893) -> + (hF : @817) -> + (hA : @894 @896) -> + (hne : @455 @858 @460) -> + @546 (fun (ro : @545) => @547 (@820 (@439 @480 @254) @15) (@677 @780 @15)) +@916 := Eq.refl.{1} +@919 := @881 (@916 @489 @667) +@920 := @437 @698 +@931 := @515 (@701 @432 @186) (@523 (@187 (@181 @353) (@187 (@184 @411) @186))) +@932 := @673 @416 +@934 := @439 @62 @64 +@950 := (hwt : @920) -> + (hbind : @931) -> + (hF : @817) -> + (hA : @932 @934) -> + (hne : @455 @896 @460) -> @546 (fun (ro : @545) => @547 (@820 @861 @15) (@677 @724 @15)) +@951 := @919 @436 +@953 := @701 @172 @186 +@956 := @515 @953 (@523 @191) +@957 := @673 @424 +@959 := @439 @64 @20 +@974 := (hbind : @956) -> + (hF : @817) -> + (hA : @957 @959) -> + (hne : @455 @934 @460) -> @546 (fun (ro : @545) => @547 (@820 @858 @15) (@677 @716 @15)) +@977 := @951 (@916 @514 @953) +@978 := @673 @432 +@980 := @439 @20 @6 +@994 := (hF : @817) -> + (hA : @978 @980) -> + (hne : @455 @959 @460) -> @546 (fun (ro : @545) => @547 (@820 @896 @15) (@677 @761 @15)) +@997 := @977 (@916 @526 @670) +@1011 := (hA : @673 @172 @441) -> + (hne : @455 @980 @460) -> @546 (fun (ro : @545) => @547 (@820 @934 @15) (@677 @416 @15)) +@1012 := @997 @451 +@1023 := (hne : @455 @441 @460) -> @546 (fun (ro : @545) => @547 (@820 @959 @15) (@677 @424 @15)) +@1024 := @1012 @473 +@1030 := @547 (@820 @980 @15) (@677 @432 @15) +@1032 := @546 (fun (ro : @545) => @1030) +@1034 := @546 (fun (__e_ro : @545) => @1030) +@1035 := LexLeanPreservation.Rust.RepresentableL +@1036 := @10 @23 +@1038 := @168 @25 @167 +@1041 := @1035 (@168 @1036 @1038) +@1042 := (__e_hrep : @1041) -> @1034 +@1043 := fun (__e_hrep : @1041) => @1024 +@1044 := (separator : @3) -> @1042 +@1045 := fun (separator : @3) => @1043 +@1046 := (pieces : @5) -> @1044 +@1047 := fun (pieces : @5) => @1045 +\end{coremodule} +\end{lexlean} diff --git a/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R5/RustStd.lean b/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R5/RustStd.lean new file mode 100644 index 000000000..5a3af47a0 --- /dev/null +++ b/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R5/RustStd.lean @@ -0,0 +1,51 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1], types := [(.list .bytes), .bytes], result := .bytes, + body := (.«match» .bytes (.call 1 [(.closure 2 [(.var 1)]), (.build .none (.option .bytes) []), (.var 0)]) [(.arm .some [2] (.var 2)), (.arm .none [] (.value .bytes (.bytes (ByteArray.mk #[]))))]) }, + { parameters := [0, 1, 2], types := [(.fn [(.option .bytes), .bytes] (.option .bytes)), (.option .bytes), (.list .bytes)], result := (.option .bytes), + body := (.«match» (.option .bytes) (.var 2) [(.arm .nil [] (.var 1)), (.arm .cons [3, 4] (.call 1 [(.var 0), (.apply (.var 0) [(.var 1), (.var 3)]), (.var 4)]))]) }, + { parameters := [0, 1, 2], types := [.bytes, (.option .bytes), .bytes], result := (.option .bytes), + body := (.«match» (.option .bytes) (.var 1) [(.arm .none [] (.build .some (.option .bytes) [(.var 2)])), (.arm .some [3] (.build .some (.option .bytes) [(.prim .append [(.prim .append [(.var 3), (.var 0)]), (.var 2)])]))]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.enum (.fn 0) [{ number := 2, fields := [.bytes] }]), + (.apply 0 [(.option .bytes), .bytes] (.option .bytes) false [{ function := 2, captures := [.clone], functionFallible := false }]), + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := (.list .bytes) }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] .bytes (.mk [(.mk (.bind (.generated .holder 1)) none (.call (.function 1) [(.construct (.closure 0 2) [(.move (.generated .binding 1))]), (.construct (.none .bytes) []), (.move (.generated .binding 0))] false))] (.matchOn (.move (.generated .holder 1)) [(.mk .none (.mk [] (.lit (.bytes (ByteArray.mk #[]))))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.move (.generated .binding 2))))]))), + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := (.option .bytes) }, { pattern := (.bind (.generated .binding 2)), type := (.list .bytes) }] (.option .bytes) (.mk [(.mk (.bind (.generated .holder 2)) none (.move (.generated .binding 2)))] (.matchOn (.uncons (.generated .holder 2)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 1) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 3)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 3) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]))), + (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := (.option .bytes) }, { pattern := (.bind (.generated .binding 2)), type := .bytes }] (.option .bytes) (.mk [(.mk (.bind (.generated .holder 4)) none (.move (.generated .binding 1)))] (.matchOn (.move (.generated .holder 4)) [(.mk .none (.mk [] (.construct .some [(.move (.generated .binding 2))]))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 7)) none (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.move (.generated .binding 3))), (.mk (.bind (.generated .operand 6)) none (.move (.generated .binding 0)))] (.call (.runtime .appendBytes) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false)))), (.mk (.bind (.generated .operand 8)) none (.move (.generated .binding 2)))] (.call (.runtime .appendBytes) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false)))])))])))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [(([(.option .bytes), .bytes], (.option .bytes)), false)] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 1)) none (.call (.function 1) [(.construct (.closure 0 2) [(.move (.generated .binding 1))]), (.construct (.none .bytes) []), (.move (.generated .binding 0))] false))], (.matchOn (.move (.generated .holder 1)) [(.mk .none (.mk [] (.lit (.bytes (ByteArray.mk #[]))))), (.mk (.some (.bind (.generated .binding 2))) (.mk [] (.move (.generated .binding 2))))]), [(1, .bytes, (some 1)), (0, (.list .bytes), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [(.option .bytes), .bytes] (.option .bytes)), (.option .bytes), (.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [.bytes]) (mask := [false]) (af := false) (ff := false) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfBNil (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(1, .bytes, (some 1)), (0, (.list .bytes), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bytes (ByteArray.mk #[])))) (Corr.mCons (Γ' := [(2, .bytes, (some 2)), (1, .bytes, (some 1)), (0, (.list .bytes), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 2))) (Corr.mNil) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl (Corr.bOfE (Corr.value rfl rfl))) rfl rfl rfl)⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 2)) none (.move (.generated .binding 2)))], (.matchOn (.uncons (.generated .holder 2)) [(.mk .none (.mk [] (.move (.generated .binding 1)))), (.mk (.some (.tuple [(.bind (.generated .binding 3)), (.bind (.generated .binding 4))])) (.mk [] (.call (.function 1) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 3)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 3) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)))]), [(2, (.list .bytes), (some 2)), (1, (.option .bytes), (some 1)), (0, (.fn [(.option .bytes), .bytes] (.option .bytes)), (some 0))], rfl, rfl, + (Corr.matchArms (st := (.list .bytes)) (U := []) (view := true) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, (.list .bytes), (some 2)), (1, (.option .bytes), (some 1)), (0, (.fn [(.option .bytes), .bytes] (.option .bytes)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.move (.generated .binding 1))) (Corr.mCons (Γ' := [(4, (.list .bytes), (some 4)), (3, .bytes, (some 3)), (2, (.list .bytes), (some 2)), (1, (.option .bytes), (some 1)), (0, (.fn [(.option .bytes), .bytes] (.option .bytes)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 1) [(.clone (.generated .binding 0)), (.block (.mk [(.mk (.bind (.generated .callee 3)) (some (.fn 0)) (.move (.generated .binding 0)))] (.apply (.generated .callee 3) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false))), (.move (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callOps (ts := [(.fn [(.option .bytes), .bytes] (.option .bytes)), (.option .bytes), (.list .bytes)]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 3)) (some (.fn 0)) (.move (.generated .binding 0)))]) (tail := (.apply (.generated .callee 3) [(.move (.generated .binding 1)), (.move (.generated .binding 3))] false)) (Corr.apply (ps := [(.option .bytes), .bytes]) (af := false) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))) rfl rfl rfl rfl)) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.var rfl rfl))) rfl rfl rfl)⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 4)) none (.move (.generated .binding 1)))], (.matchOn (.move (.generated .holder 4)) [(.mk .none (.mk [] (.construct .some [(.move (.generated .binding 2))]))), (.mk (.some (.bind (.generated .binding 3))) (.mk [] (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 7)) none (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.move (.generated .binding 3))), (.mk (.bind (.generated .operand 6)) none (.move (.generated .binding 0)))] (.call (.runtime .appendBytes) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false)))), (.mk (.bind (.generated .operand 8)) none (.move (.generated .binding 2)))] (.call (.runtime .appendBytes) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false)))])))]), [(2, .bytes, (some 2)), (1, (.option .bytes), (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [0, 1]) (Corr.var rfl rfl) (Corr.mCons (Γ' := [(2, .bytes, (some 2)), (1, (.option .bytes), (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.construct .some [(.move (.generated .binding 2))])) (Corr.mCons (Γ' := [(3, .bytes, (some 3)), (2, .bytes, (some 2)), (1, (.option .bytes), (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 7)) none (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.move (.generated .binding 3))), (.mk (.bind (.generated .operand 6)) none (.move (.generated .binding 0)))] (.call (.runtime .appendBytes) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false)))), (.mk (.bind (.generated .operand 8)) none (.move (.generated .binding 2)))] (.call (.runtime .appendBytes) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false)))])) (Corr.mNil) rfl rfl rfl (Corr.build (ts := [.bytes]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 7)) none (.block (.mk [(.mk (.bind (.generated .operand 5)) none (.move (.generated .binding 3))), (.mk (.bind (.generated .operand 6)) none (.move (.generated .binding 0)))] (.call (.runtime .appendBytes) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false)))), (.mk (.bind (.generated .operand 8)) none (.move (.generated .binding 2)))]) (tail := (.call (.runtime .appendBytes) [(.move (.generated .operand 7)), (.move (.generated .operand 8))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 5)) none (.move (.generated .binding 3))), (.mk (.bind (.generated .operand 6)) none (.move (.generated .binding 0)))]) (tail := (.call (.runtime .appendBytes) [(.move (.generated .operand 5)), (.move (.generated .operand 6))] false)) (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) rfl rfl rfl (Corr.build (ts := [.bytes]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) rfl rfl rfl)⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | _ + 3 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.RustStd diff --git a/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R6.lean b/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R6.lean new file mode 100644 index 000000000..7e48fbb84 --- /dev/null +++ b/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R6.lean @@ -0,0 +1,53 @@ +import LexLeanPreservation.Core +import LexLeanPreservation.Values +import LexLeanPreservation.Primitives +import LexLeanPreservation.Fixed +import LexLeanPreservation.Keys +import LexLeanPreservation.Templates +import LexLeanPreservation.Validate +import LexLeanStd.Text +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +set_option linter.unusedVariables false +namespace LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6 + +def __prog : _root_.LexLeanTarget.TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1], types := [.bytes, .bytes], result := (.option .nat), + body := (.«let» 2 .nat (.prim .length [(.var 0)]) (.«let» 3 .nat (.prim .length [(.var 1)]) (.«let» 4 .nat (.first (.call 1 [(.closure 2 [(.var 1), (.var 3), (.var 0), (.var 2)]), (.prim .natAdd [(.var 2), (.value .nat (.nat 1))]), (.value .nat (.nat 0))])) (.cond (.call 3 [(.var 0), (.var 1), (.var 4)]) (.build .some (.option .nat) [(.var 4)]) (.build .none (.option .nat) []))))) }, + { parameters := [0, 1, 2], types := [(.fn [.nat] (.option .nat)), .nat, .nat], result := (.pair .nat .bool), + body := (.«match» (.pair .nat .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair .nat .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair .nat .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair .nat .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 1 [(.var 0), (.var 3), (.var 4)]))]))]) }, + { parameters := [0, 1, 2, 3, 4], types := [.bytes, .nat, .bytes, .nat, .nat], result := (.option .nat), + body := (.cond (.call 3 [(.var 2), (.var 0), (.var 4)]) (.build .none (.option .nat) []) (.cond (.prim .natLt [(.prim .natAdd [(.var 4), (.var 1)]), (.var 3)]) (.build .some (.option .nat) [(.prim .natAdd [(.var 4), (.value .nat (.nat 1))])]) (.build .none (.option .nat) []))) }, + { parameters := [0, 1, 2], types := [.bytes, .bytes, .nat], result := .bool, + body := (.«match» .bool (.prim .slice [(.var 0), (.var 2), (.prim .length [(.var 1)])]) [(.arm .some [3] (.prim .equal [(.var 3), (.var 1)])), (.arm .none [] (.build .false .bool []))]) }] } + +def __fits_3 (subject : ByteArray) (needle : ByteArray) (position : Nat) : Bool := + (((Bool.true && (Bool.true && (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (needle) : Nat) 18446744073709551616)) && Bool.true))) && Bool.true) && (match (_root_.LexLeanRuntime.slice (subject) (position) ((_root_.LexLeanRuntime.length (needle) : Nat)) : (Option ByteArray)) with | Option.some window => ((Bool.true && (Bool.true && Bool.true)) && Bool.true) | Option.none => (Bool.true && Bool.true))) + +theorem __rel_3 (subject : ByteArray) (needle : ByteArray) (position : Nat) : _root_.LexLeanPreservation.FunRel __prog 3 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.bytes needle), (_root_.LexLeanTarget.TargetSyntax.Value.nat position)] (_root_.LexLeanPreservation.Rel (__fits_3 subject needle position) (_root_.LexLeanTarget.TargetSyntax.Value.bool (LexLeanStd.Text.matchAt subject needle position))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_matchV (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.bytes) (fun (__a : (Option ByteArray)) => (match __a with | Option.some window => ((Bool.true && (Bool.true && Bool.true)) && Bool.true) | Option.none => (Bool.true && Bool.true))) (fun (__a : (Option ByteArray)) => _root_.LexLeanTarget.TargetSyntax.Value.bool (match __a with | Option.some window => (_root_.LexLeanRuntime.equal (window) (needle) : Bool) | Option.none => Bool.false)) (_root_.LexLeanRuntime.slice (subject) (position) ((_root_.LexLeanRuntime.length (needle) : Nat)) : (Option ByteArray)) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes needle)) _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.prim_slice_bytes subject position (_root_.LexLeanRuntime.length (needle) : Nat))) (fun (__a : (Option ByteArray)) _ => match __a with | Option.some window => (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_equal_bytes window needle))) | Option.none => (_root_.LexLeanPreservation.convA_miss rfl (_root_.LexLeanPreservation.convA_hit rfl rfl (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_false))))) + +def __fits_2 (needle : ByteArray) (size : Nat) (subject : ByteArray) (total : Nat) (position : Nat) : Bool := + (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_3 (subject) (needle) (position))) && (if (LexLeanStd.Text.matchAt (subject) (needle) (position)) then (Bool.true && Bool.true) else (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + size) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.blt (position + size) total) then ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) + +attribute [local irreducible] LexLeanStd.Text.matchAt in +theorem __rel_2 (needle : ByteArray) (size : Nat) (subject : ByteArray) (total : Nat) (position : Nat) : _root_.LexLeanPreservation.FunRel __prog 2 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes needle), (_root_.LexLeanTarget.TargetSyntax.Value.nat size), (_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat total), (_root_.LexLeanTarget.TargetSyntax.Value.nat position)] (_root_.LexLeanPreservation.Rel (__fits_2 needle size subject total position) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) ((if (LexLeanStd.Text.matchAt (subject) (needle) (position)) then (Option.none : (Option Nat)) else (if (Nat.blt (position + size) total) then (Option.some ((position + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat))))))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then (Bool.true && Bool.true) else (((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + size) 18446744073709551616)) && (Bool.true && Bool.true)) && Bool.true) && (if (Nat.blt (position + size) total) then ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && Bool.true) && Bool.true) else (Bool.true && Bool.true))))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Option.none : (Option Nat)) else (if (Nat.blt (position + size) total) then (Option.some ((position + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat))))) (LexLeanStd.Text.matchAt (subject) (needle) (position)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (__rel_3 (subject) (needle) (position))) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)) (fun _ => (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (position + (1 : Nat)) 18446744073709551616)) && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Option.some ((position + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat)))) (Nat.blt (position + size) total) (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position size)) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natLt (position + size) total)) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd position (1 : Nat))) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none))))) + +def __fits_0 (subject : ByteArray) (needle : ByteArray) : Bool := + (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (subject) : Nat) 18446744073709551616)) && (let total : Nat := (_root_.LexLeanRuntime.length (subject) : Nat); (((Bool.true && Bool.true) && (Nat.blt (_root_.LexLeanRuntime.length (needle) : Nat) 18446744073709551616)) && (let size : Nat := (_root_.LexLeanRuntime.length (needle) : Nat); ((((Bool.true && (Bool.true && (Bool.true && (Bool.true && Bool.true)))) && (((Bool.true && (Bool.true && Bool.true)) && (Nat.blt (total + (1 : Nat)) 18446744073709551616)) && (Bool.true && Bool.true))) && (_root_.LexLeanPreservation.untilFits (fun (__p0 : Nat) => __fits_2 (needle) (size) (subject) (total) __p0) ((fun (position : Nat) => (if (LexLeanStd.Text.matchAt (subject) (needle) (position)) then (Option.none : (Option Nat)) else (if (Nat.blt (position + size) total) then (Option.some ((position + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat)))))) ((total + (1 : Nat))) ((0 : Nat)))) && (let position : Nat := ((_root_.LexLeanCollections.iterateUntil ((fun (position : Nat) => (if (LexLeanStd.Text.matchAt (subject) (needle) (position)) then (Option.none : (Option Nat)) else (if (Nat.blt (position + size) total) then (Option.some ((position + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat)))))) ((total + (1 : Nat))) ((0 : Nat)) : (Prod Nat Bool))).1; (((Bool.true && (Bool.true && (Bool.true && Bool.true))) && (__fits_3 (subject) (needle) (position))) && (if (LexLeanStd.Text.matchAt (subject) (needle) (position)) then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))))))))) + +attribute [local irreducible] LexLeanStd.Text.matchAt in +theorem __rel_0 (subject : ByteArray) (needle : ByteArray) : _root_.LexLeanPreservation.FunRel __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.bytes needle)] (_root_.LexLeanPreservation.Rel (__fits_0 subject needle) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (LexLeanStd.Text.find subject needle))) := + _root_.LexLeanPreservation.funRel_intro rfl rfl (let total : Nat := (_root_.LexLeanRuntime.length (subject) : Nat); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes subject)) (let size : Nat := (_root_.LexLeanRuntime.length (needle) : Nat); _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) (_root_.LexLeanPreservation.prim_length_bytes needle)) (let position : Nat := ((_root_.LexLeanCollections.iterateUntil ((fun (position : Nat) => (if (LexLeanStd.Text.matchAt (subject) (needle) (position)) then (Option.none : (Option Nat)) else (if (Nat.blt (position + size) total) then (Option.some ((position + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat)))))) ((total + (1 : Nat))) ((0 : Nat)) : (Prod Nat Bool))).1; _root_.LexLeanPreservation.conv_let (_root_.LexLeanPreservation.conv_first (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_closure (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))))) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_prim (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil)) (_root_.LexLeanPreservation.prim_natAdd total (1 : Nat))) (_root_.LexLeanPreservation.convL_cons _root_.LexLeanPreservation.conv_value _root_.LexLeanPreservation.convL_nil))) (_root_.LexLeanPreservation.tpl_iterateUntil (es := _root_.LexLeanTarget.TargetSyntax.Value.nat) (_root_.LexLeanPreservation.optEnc _root_.LexLeanTarget.TargetSyntax.Value.nat) (fun _ => rfl) (_root_.LexLeanPreservation.encPair _root_.LexLeanTarget.TargetSyntax.Value.nat _root_.LexLeanTarget.TargetSyntax.Value.bool) (fun _ => rfl) ((fun (position : Nat) => (if (LexLeanStd.Text.matchAt (subject) (needle) (position)) then (Option.none : (Option Nat)) else (if (Nat.blt (position + size) total) then (Option.some ((position + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat)))))) (fun (__p0 : Nat) => __fits_2 (needle) (size) (subject) (total) __p0) 2 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes needle), (_root_.LexLeanTarget.TargetSyntax.Value.nat size), (_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.nat total)] (fun (__p0 : Nat) => __rel_2 (needle) (size) (subject) (total) __p0) (_root_.LexLeanCollections.iterateUntil ((fun (position : Nat) => (if (LexLeanStd.Text.matchAt (subject) (needle) (position)) then (Option.none : (Option Nat)) else (if (Nat.blt (position + size) total) then (Option.some ((position + (1 : Nat))) : (Option Nat)) else (Option.none : (Option Nat))))))) (fun _ => rfl) (fun _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (fun _ _ _ __h => by simp only [_root_.LexLeanCollections.iterateUntil, __h]) (p := __prog) (fi := 1) (ts := .nat) rfl ((total + (1 : Nat))) ((0 : Nat))))) (_root_.LexLeanPreservation.conv_cond (fun (__b : Bool) => (if __b then ((Bool.true && Bool.true) && Bool.true) else (Bool.true && Bool.true))) (fun (__b : Bool) => (_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (if __b then (Option.some (position) : (Option Nat)) else (Option.none : (Option Nat)))) (LexLeanStd.Text.matchAt (subject) (needle) (position)) (_root_.LexLeanPreservation.conv_call (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil))) (__rel_3 (subject) (needle) (position))) (fun _ => (_root_.LexLeanPreservation.conv_build (_root_.LexLeanPreservation.convL_cons (_root_.LexLeanPreservation.conv_var rfl) _root_.LexLeanPreservation.convL_nil) _root_.LexLeanPreservation.construct_some)) (fun _ => (_root_.LexLeanPreservation.conv_build _root_.LexLeanPreservation.convL_nil _root_.LexLeanPreservation.construct_none)))))) + +def denote (subject : ByteArray) (needle : ByteArray) : _root_.LexLeanPreservation.Obs := + _root_.cond (__fits_0 subject needle) (_root_.LexLeanPreservation.Obs.value (((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (LexLeanStd.Text.find subject needle)))) _root_.LexLeanPreservation.Obs.overflow + +theorem root (subject : ByteArray) (needle : ByteArray) : _root_.LexLeanPreservation.RunConv __prog 0 [(_root_.LexLeanTarget.TargetSyntax.Value.bytes subject), (_root_.LexLeanTarget.TargetSyntax.Value.bytes needle)] (_root_.LexLeanPreservation.Rel (__fits_0 subject needle) ((_root_.LexLeanPreservation.encOption _root_.LexLeanTarget.TargetSyntax.Value.nat) (LexLeanStd.Text.find subject needle))) := + _root_.LexLeanPreservation.run_of_funRel (__rel_0 subject needle) + +end LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6 diff --git a/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R6/Compose/RustStd.lex.tex b/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R6/Compose/RustStd.lex.tex new file mode 100644 index 000000000..55ab5ba49 --- /dev/null +++ b/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R6/Compose/RustStd.lex.tex @@ -0,0 +1,465 @@ +\begin{lexlean}{RustStd} +\title{Certificate E LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.Compose.RustStd} +\begin{coremodule} +imports [ + LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6, + LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.RustStd, + LexLeanPreservation.Compose +] + +theorem LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.Compose.RustStd.root : @919 := @920 { + all: [LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.Compose.RustStd.root], + class: false, + generated: false, + policy: exact{axioms: [Classical.choice, Quot.sound, propext]}, + transparency: semireducible +} + +@0 := LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.RustStd.program +@1 := LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.RustStd.krate +@2 := LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.RustStd.flags +@3 := ByteArray +@4 := #2 +@5 := LexLeanTarget.TargetSyntax.Value.bytes +@6 := @5 @4 +@7 := LexLeanTarget.TargetSyntax.Ty.bytes +@8 := LexLeanTarget.TargetSyntax.Program +@9 := LexLeanPreservation.Rust.RCrate +@10 := LexLeanPreservation.Rust.Flags +@11 := LexLeanPreservation.Rust.WT +@12 := #3 +@14 := @11 @12 @4 +@15 := #1 +@16 := @14 @15 +@17 := #0 +@18 := @5 @17 +@24 := {p : @8} -> {c : @9} -> {A : @10} -> (b : @3) -> @16 @18 @7 +@26 := LexLeanPreservation.Rust.wt_bytes @0 +@27 := @11 @0 +@34 := {c : @9} -> {A : @10} -> (b : @3) -> @27 @4 @15 @18 @7 +@35 := @26 @1 +@36 := @27 @1 +@41 := {A : @10} -> (b : @3) -> @36 @15 @18 @7 +@42 := @35 @2 +@43 := @36 @2 +@46 := (b : @3) -> @43 @18 @7 +@47 := @42 @4 +@49 := @43 @6 @7 +@50 := @5 @15 +@51 := @42 @15 +@53 := @43 @50 @7 +@54 := LexLeanTarget.TargetSyntax.Value +@55 := List.nil.{0} +@56 := List.cons.{0} +@57 := @55 @54 +@58 := @56 @54 +@59 := @58 @50 +@60 := @59 @57 +@61 := @58 @6 +@62 := @61 @60 +@63 := Nat +@66 := Prod.{0, 0} @63 @54 +@67 := 1 +@70 := Prod.mk.{0, 0} @63 @54 +@71 := @70 @67 +@72 := @71 @50 +@73 := 0 +@74 := @70 @73 +@75 := @74 @6 +@76 := @55 @66 +@77 := @56 @66 +@79 := @77 @75 @76 +@81 := @77 @72 @79 +@82 := Bool.true +@83 := LexLeanTarget.TargetSyntax.Function +@84 := LexLeanTarget.TargetSyntax.Program.functions +@85 := @84 @0 +@86 := LexLeanTarget.TargetSyntax.Ty +@87 := @55 @63 +@88 := @55 @86 +@89 := LexLeanTarget.TargetSyntax.Ty.unit +@90 := LexLeanTarget.TargetSyntax.Value.unit +@93 := LexLeanTarget.TargetSyntax.Expr.value @89 @90 +@98 := LexLeanTarget.TargetSyntax.Function.mk @87 @88 @89 @93 +@103 := List.getD.{0} @83 @85 @73 @98 +@107 := fun (__e_n : @63) => + LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.RustStd.root @17 @73 +@108 := LexLeanPreservation.Rust.WTL +@116 := {p : @8} -> {c : @9} -> {A : @10} -> @108 @4 @15 @17 @57 @88 +@118 := LexLeanPreservation.Rust.wtl_nil @0 +@119 := @108 @0 +@125 := {c : @9} -> {A : @10} -> @119 @15 @17 @57 @88 +@126 := @118 @1 +@127 := @119 @1 +@131 := {A : @10} -> @127 @17 @57 @88 +@132 := @126 @2 +@133 := @127 @2 +@134 := @133 @57 +@135 := @134 @88 +@136 := List.{0} +@137 := @136 @54 +@138 := @136 @86 +@139 := #6 +@140 := @11 @139 +@141 := #5 +@142 := @140 @141 +@143 := #4 +@146 := @142 @143 @12 @4 +@147 := #7 +@152 := @108 @147 @139 @141 @4 @15 +@153 := #8 +@156 := @108 @153 @147 @139 +@158 := @58 @141 @12 +@159 := @156 @158 +@160 := @56 @86 +@162 := @160 @143 @4 +@172 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {v : @54} -> {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @146) -> (hs : @152) -> @159 @162 +@174 := LexLeanPreservation.Rust.wtl_cons @0 +@194 := {c : @9} -> + {A : @10} -> + {v : @54} -> + {t : @86} -> + {vs : @137} -> + {ts : @138} -> + (h : @27 @141 @143 @12 @4) -> (hs : @119 @139 @141 @4 @15) -> @119 @147 @139 @158 @162 +@195 := @174 @1 +@211 := {A : @10} -> + {v : @54} -> + {t : @86} -> + {vs : @137} -> + {ts : @138} -> (h : @36 @143 @12 @4) -> (hs : @127 @141 @4 @15) -> @127 @139 @158 @162 +@212 := @195 @2 +@214 := @43 @12 @4 +@216 := @133 @4 @15 +@224 := {v : @54} -> + {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @214) -> (hs : @216) -> @133 @158 @162 +@225 := @212 @50 +@226 := @5 @143 +@227 := @43 @226 +@228 := @227 @4 +@229 := @5 @139 +@230 := @58 @229 +@232 := @133 (@230 @12) +@238 := {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @228) -> (hs : @216) -> @232 @162 +@239 := @225 @7 +@240 := @5 @12 +@242 := @43 @240 @7 +@243 := @5 @141 +@244 := @58 @243 +@246 := @133 (@244 @12) +@247 := @160 @7 +@248 := @247 @4 +@253 := {vs : @137} -> {ts : @138} -> (h : @242) -> (hs : @216) -> @246 @248 +@254 := @239 @57 +@255 := @134 @15 +@256 := @58 @226 +@257 := @256 @57 +@262 := {ts : @138} -> (h : @49) -> (hs : @255) -> @133 @257 @248 +@263 := @254 @88 +@264 := @58 @240 +@265 := @264 @57 +@266 := @133 @265 +@267 := @247 @88 +@270 := (h : @53) -> (hs : @135) -> @266 @267 +@271 := @263 @51 +@272 := @61 @57 +@274 := @133 @272 @267 +@275 := (hs : @135) -> @274 +@276 := @271 @132 +@278 := @133 @60 @267 +@279 := @212 @6 +@281 := @43 @243 @4 +@282 := @5 @147 +@283 := @58 @282 +@291 := {t : @86} -> {vs : @137} -> {ts : @138} -> (h : @281) -> (hs : @216) -> @133 (@283 @12) @162 +@292 := @279 @7 +@298 := {vs : @137} -> {ts : @138} -> (h : @227 @7) -> (hs : @216) -> @232 @248 +@299 := @292 @60 +@300 := @266 @15 +@301 := @244 @257 +@302 := @133 @301 +@306 := {ts : @138} -> (h : @242) -> (hs : @300) -> @302 @248 +@307 := @299 @267 +@308 := @256 @265 +@309 := @133 @308 +@310 := @247 @267 +@313 := (h : @49) -> (hs : @274) -> @309 @310 +@314 := @307 @47 +@315 := @264 @272 +@316 := @133 @315 +@318 := (hs : @278) -> @316 @310 +@319 := @314 @276 +@320 := @133 @62 +@321 := @320 @310 +@322 := LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.denote +@324 := @322 @4 @15 +@325 := LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.__fits_0 +@327 := @325 @4 @15 +@330 := LexLeanStd.Text.find @4 @15 +@331 := LexLeanTarget.TargetSyntax.Value.nat +@335 := LexLeanPreservation.encOption @63 @331 @330 +@338 := LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.root @4 @15 +@339 := Bool +@340 := Ne.{1} +@341 := LexLeanPreservation.Obs +@342 := @340 @341 +@343 := LexLeanPreservation.Rel +@346 := @342 (@343 @15 @17) +@347 := LexLeanPreservation.Obs.stuck +@350 := (f : @339) -> (v : @54) -> @346 @347 +@352 := LexLeanPreservation.Rust.rel_ne_stuck @327 +@359 := (v : @54) -> @342 (@343 (@325 @12 @4) @17) @347 +@360 := @352 @335 +@364 := @342 (@343 @327 @335) @347 +@365 := @136 @66 +@366 := LexLeanPreservation.Rust.FunSem +@367 := #9 +@373 := (n : @63) -> @366 @367 @153 @147 @17 @139 +@374 := Eq.{1} +@375 := Option.{0} +@376 := @375 @83 +@377 := @374 @376 +@384 := LexLeanRuntime.index (@136 @83) @83 (LexLeanRuntime.instIndexableList @83) +@388 := @377 (@384 (@84 @367) @139) +@389 := Option.some.{0} +@390 := @389 @83 +@391 := @390 @141 +@392 := @388 @391 +@393 := #10 +@397 := @108 @393 @367 @153 @141 +@398 := LexLeanTarget.TargetSyntax.Function.types +@399 := @398 @139 +@400 := @397 @399 +@401 := @375 @365 +@402 := @374 @401 +@403 := LexLeanTarget.TargetSemantics.bindAll +@404 := LexLeanTarget.TargetSyntax.Function.parameters +@409 := @402 (@403 (@404 @147) @139 @76) +@410 := @389 @365 +@411 := @410 @141 +@412 := @409 @411 +@413 := @375 @339 +@414 := @374 @413 +@415 := LexLeanPreservation.Rust.fnFallible +@416 := #11 +@419 := @414 (@415 @416 @367) +@420 := @389 @339 +@421 := @420 @141 +@422 := @419 @421 +@423 := LexLeanPreservation.RunConv +@424 := #13 +@428 := @423 @424 @393 @153 @141 +@430 := @342 @139 @347 +@431 := Exists.{1} +@432 := LexLeanPreservation.Rust.ROut +@433 := @431 @432 +@434 := And +@435 := LexLeanPreservation.Rust.RealizesFn +@439 := @434 (@435 @367 @153 @17) +@440 := LexLeanPreservation.Rust.RCI +@442 := @440 #15 +@443 := LexLeanPreservation.Rust.fnIdent +@444 := @443 @424 +@451 := (hne : @430) -> @433 (fun (ro : @432) => @439 (@442 @444 @416 @17)) +@466 := {p : @8} -> + {c : @9} -> + {A : @10} -> + {f : @63} -> + {fn : @83} -> + {args : @137} -> + {env : @365} -> + {F : @339} -> + {o : @341} -> + (hB : @373) -> + (hfn : @392) -> (hwt : @400) -> (hbind : @412) -> (hF : @422) -> (hA : @428) -> @451 +@468 := LexLeanPreservation.Rust.compose @0 +@469 := @366 @0 +@474 := (n : @63) -> @469 @153 @147 @17 @139 +@475 := @384 @85 +@478 := @377 (@475 @139) @391 +@482 := @119 @367 @153 @141 @399 +@483 := @423 @0 +@486 := @483 @393 @153 @141 +@500 := {c : @9} -> + {A : @10} -> + {f : @63} -> + {fn : @83} -> + {args : @137} -> + {env : @365} -> + {F : @339} -> + {o : @341} -> + (hB : @474) -> + (hfn : @478) -> (hwt : @482) -> (hbind : @412) -> (hF : @422) -> (hA : @486) -> @451 +@501 := @468 @1 +@502 := @469 @1 +@506 := (n : @63) -> @502 @147 @17 @139 +@509 := @127 @153 @141 @399 +@510 := @415 @1 +@513 := @414 (@510 @367) @421 +@514 := @440 @1 +@524 := (hbind : @412) -> + (hF : @513) -> (hA : @486) -> (hne : @430) -> @433 (fun (ro : @432) => @439 (@514 @444 @416 @17)) +@534 := {A : @10} -> + {f : @63} -> + {fn : @83} -> + {args : @137} -> + {env : @365} -> {F : @339} -> {o : @341} -> (hB : @506) -> (hfn : @478) -> (hwt : @509) -> @524 +@535 := @501 @2 +@537 := @502 @2 @17 +@539 := (n : @63) -> @537 @139 +@540 := @133 @141 +@541 := @540 @399 +@550 := {f : @63} -> + {fn : @83} -> + {args : @137} -> + {env : @365} -> {F : @339} -> {o : @341} -> (hB : @539) -> (hfn : @478) -> (hwt : @541) -> @524 +@551 := @535 @73 +@553 := (n : @63) -> @537 @73 +@554 := @475 @73 +@555 := @377 @554 +@556 := @555 @391 +@557 := @510 @73 +@558 := @414 @557 +@559 := @558 @421 +@560 := @483 @73 +@562 := @560 @153 @141 +@564 := @514 (@443 @73) +@572 := (hF : @559) -> (hA : @562) -> (hne : @430) -> @433 (fun (ro : @432) => @439 (@564 @416 @17)) +@581 := {fn : @83} -> + {args : @137} -> + {env : @365} -> + {F : @339} -> {o : @341} -> (hB : @553) -> (hfn : @556) -> (hwt : @541) -> (hbind : @412) -> @572 +@582 := @551 @103 +@584 := @555 (@390 @103) +@585 := @398 @103 +@586 := @540 @585 +@588 := @403 (@404 @103) +@600 := {args : @137} -> + {env : @365} -> + {F : @339} -> + {o : @341} -> + (hB : @553) -> (hfn : @584) -> (hwt : @586) -> (hbind : @402 (@588 @139 @76) @411) -> @572 +@601 := @582 @62 +@603 := @283 (@230 @57) +@605 := @133 @603 @585 +@607 := @58 (@5 @153) +@609 := @607 (@283 @57) +@613 := @402 (@588 @609 @76) @411 +@615 := @58 (@5 @393) +@617 := @58 (@5 @367) +@619 := @615 (@617 @57) +@621 := @560 @619 @141 +@623 := @58 (@5 @424) +@626 := @58 (@5 #12) +@643 := {env : @365} -> + {F : @339} -> + {o : @341} -> + (hB : @553) -> + (hfn : @584) -> + (hwt : @605) -> + (hbind : @613) -> + (hF : @559) -> + (hA : @621) -> (hne : @430) -> @433 (fun (ro : @432) => @439 (@564 (@623 (@626 @57)) @17)) +@644 := @601 @81 +@646 := @230 (@244 @57) +@648 := @133 @646 @585 +@659 := @402 (@588 @603 @76) (@410 (@77 (@71 @229) (@77 (@74 @282) @76))) +@661 := @617 (@607 @57) +@663 := @560 @661 @141 +@665 := @58 (@5 @416) +@681 := {F : @339} -> + {o : @341} -> + (hB : @553) -> + (hfn : @584) -> + (hwt : @648) -> + (hbind : @659) -> + (hF : @559) -> + (hA : @663) -> (hne : @430) -> @433 (fun (ro : @432) => @439 (@564 (@626 (@665 @57)) @17)) +@682 := @644 @82 +@683 := @302 @585 +@694 := @402 (@588 @646 @76) (@410 (@77 (@71 @243) (@77 (@74 @229) @76))) +@696 := @558 (@420 @82) +@698 := @560 @609 @141 +@699 := @435 @82 +@717 := {o : @341} -> + (hB : @553) -> + (hfn : @584) -> + (hwt : @683) -> + (hbind : @694) -> + (hF : @696) -> + (hA : @698) -> + (hne : @430) -> @433 (fun (ro : @432) => @434 (@699 @153 @17) (@564 (@665 (@615 @57)) @17)) +@718 := @682 @324 +@719 := @309 @585 +@730 := @402 (@588 @301 @76) (@410 (@77 (@71 @226) (@77 (@74 @243) @76))) +@731 := @560 @603 +@733 := @322 @147 @139 +@734 := @731 @733 +@736 := @322 @153 @147 +@755 := (hB : @553) -> + (hfn : @584) -> + (hwt : @719) -> + (hbind : @730) -> + (hF : @696) -> + (hA : @734) -> + (hne : @342 @736 @347) -> + @433 (fun (ro : @432) => @434 (@699 (@322 @393 @367) @17) (@564 @619 @17)) +@756 := @718 @107 +@757 := @316 @585 +@768 := @402 (@588 @308 @76) (@410 (@77 (@71 @240) (@77 (@74 @226) @76))) +@769 := @560 @646 +@771 := @322 @139 @141 +@790 := (hfn : @584) -> + (hwt : @757) -> + (hbind : @768) -> + (hF : @696) -> + (hA : @769 @771) -> + (hne : @342 @733 @347) -> + @433 (fun (ro : @432) => @434 (@699 (@322 @367 @153) @17) (@564 @661 @17)) +@791 := Eq.refl.{1} +@794 := @756 (@791 @376 @554) +@795 := @320 @585 +@806 := @402 (@588 @315 @76) (@410 (@77 (@71 @6) (@77 (@74 @240) @76))) +@807 := @560 @301 +@809 := @322 @141 @143 +@825 := (hwt : @795) -> + (hbind : @806) -> + (hF : @696) -> + (hA : @807 @809) -> + (hne : @342 @771 @347) -> @433 (fun (ro : @432) => @434 (@699 @736 @17) (@564 @609 @17)) +@826 := @794 @319 +@828 := @588 @62 @76 +@831 := @402 @828 (@410 @81) +@832 := @560 @308 +@834 := @322 @143 @12 +@849 := (hbind : @831) -> + (hF : @696) -> + (hA : @832 @834) -> + (hne : @342 @809 @347) -> @433 (fun (ro : @432) => @434 (@699 @733 @17) (@564 @603 @17)) +@852 := @826 (@791 @401 @828) +@853 := @560 @315 +@855 := @322 @12 @4 +@869 := (hF : @696) -> + (hA : @853 @855) -> + (hne : @342 @834 @347) -> @433 (fun (ro : @432) => @434 (@699 @771 @17) (@564 @646 @17)) +@872 := @852 (@791 @413 @557) +@886 := (hA : @560 @62 @324) -> + (hne : @342 @855 @347) -> @433 (fun (ro : @432) => @434 (@699 @809 @17) (@564 @301 @17)) +@887 := @872 @338 +@898 := (hne : @342 @324 @347) -> @433 (fun (ro : @432) => @434 (@699 @834 @17) (@564 @308 @17)) +@899 := @887 @360 +@905 := @434 (@699 @855 @17) (@564 @315 @17) +@907 := @433 (fun (ro : @432) => @905) +@909 := @433 (fun (__e_ro : @432) => @905) +@914 := LexLeanPreservation.Rust.RepresentableL (@59 (@58 @18 @57)) +@915 := (__e_hrep : @914) -> @909 +@916 := fun (__e_hrep : @914) => @899 +@917 := (needle : @3) -> @915 +@918 := fun (needle : @3) => @916 +@919 := (subject : @3) -> @917 +@920 := fun (subject : @3) => @918 +\end{coremodule} +\end{lexlean} diff --git a/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R6/RustStd.lean b/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R6/RustStd.lean new file mode 100644 index 000000000..68003ab83 --- /dev/null +++ b/stdlib/expected/verify/preserve/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R6/RustStd.lean @@ -0,0 +1,59 @@ +import LexLeanPreservation.RustSound +set_option autoImplicit false +set_option maxRecDepth 100000 +set_option maxHeartbeats 0 +set_option synthInstance.maxHeartbeats 0 +namespace LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.RustStd +open LexLeanTarget LexLeanPreservation.Rust + +noncomputable def program : TargetSyntax.Program := + { adts := [], functions := [ + { parameters := [0, 1], types := [.bytes, .bytes], result := (.option .nat), + body := (.«let» 2 .nat (.prim .length [(.var 0)]) (.«let» 3 .nat (.prim .length [(.var 1)]) (.«let» 4 .nat (.first (.call 1 [(.closure 2 [(.var 1), (.var 3), (.var 0), (.var 2)]), (.prim .natAdd [(.var 2), (.value .nat (.nat 1))]), (.value .nat (.nat 0))])) (.cond (.call 3 [(.var 0), (.var 1), (.var 4)]) (.build .some (.option .nat) [(.var 4)]) (.build .none (.option .nat) []))))) }, + { parameters := [0, 1, 2], types := [(.fn [.nat] (.option .nat)), .nat, .nat], result := (.pair .nat .bool), + body := (.«match» (.pair .nat .bool) (.var 1) [(.arm .zero [] (.build .pair (.pair .nat .bool) [(.var 2), (.build .false .bool [])])), (.arm .succ [3] (.«match» (.pair .nat .bool) (.apply (.var 0) [(.var 2)]) [(.arm .none [] (.build .pair (.pair .nat .bool) [(.var 2), (.build .true .bool [])])), (.arm .some [4] (.call 1 [(.var 0), (.var 3), (.var 4)]))]))]) }, + { parameters := [0, 1, 2, 3, 4], types := [.bytes, .nat, .bytes, .nat, .nat], result := (.option .nat), + body := (.cond (.call 3 [(.var 2), (.var 0), (.var 4)]) (.build .none (.option .nat) []) (.cond (.prim .natLt [(.prim .natAdd [(.var 4), (.var 1)]), (.var 3)]) (.build .some (.option .nat) [(.prim .natAdd [(.var 4), (.value .nat (.nat 1))])]) (.build .none (.option .nat) []))) }, + { parameters := [0, 1, 2], types := [.bytes, .bytes, .nat], result := .bool, + body := (.«match» .bool (.prim .slice [(.var 0), (.var 2), (.prim .length [(.var 1)])]) [(.arm .some [3] (.prim .equal [(.var 3), (.var 1)])), (.arm .none [] (.build .false .bool []))]) }] } + +noncomputable def krate : RustSyntax.Crate := + ({ profile := .std, items := [ + (.enum (.fn 0) [{ number := 2, fields := [.bytes, .nat, .bytes, .nat] }]), + (.apply 0 [.nat] (.option .nat) true [{ function := 2, captures := [.clone, .copy, .clone, .copy], functionFallible := true }]), + (.function (.generated .function 0) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .bytes }] (.fallible (.option .nat)) (.mk [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 1))] false)))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 2))] false)))), (.mk (.bind (.generated .binding 4)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.call (.function 1) [(.construct (.closure 0 2) [(.clone (.generated .binding 1)), (.copy (.generated .binding 3)), (.clone (.generated .binding 0)), (.copy (.generated .binding 2))]), (.block (.mk [(.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 5)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] true))), (.lit (.nat 0))] true))] (.move (.generated .part 3)))))] (.cond (.call (.function 3) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 4))] false) (.mk [] (.succeed (.construct .some [(.copy (.generated .binding 4))]))) (.mk [] (.succeed (.construct (.none .nat) [])))))), + (.function (.generated .function 1) [{ pattern := (.bind (.generated .binding 0)), type := (.fn 0) }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := .nat }] (.fallible (.pair .nat .bool)) (.mk [(.mk (.bind (.generated .holder 6)) none (.copy (.generated .binding 1)))] (.cond (.isZero (.generated .holder 6)) (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 6))), (.mk (.bind (.generated .holder 8)) none (.block (.mk [(.mk (.bind (.generated .callee 7)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 7) [(.copy (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 8)) [(.mk .none (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 1) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)))]))))), + (.function (.generated .function 2) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .nat }, { pattern := (.bind (.generated .binding 2)), type := .bytes }, { pattern := (.bind (.generated .binding 3)), type := .nat }, { pattern := (.bind (.generated .binding 4)), type := .nat }] (.fallible (.option .nat)) (.mk [] (.cond (.call (.function 3) [(.move (.generated .binding 2)), (.move (.generated .binding 0)), (.copy (.generated .binding 4))] false) (.mk [] (.succeed (.construct (.none .nat) []))) (.mk [(.mk (.bind (.generated .operand 11)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] true)))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 3)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false) (.mk [] (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 14)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 13)), (.move (.generated .operand 14))] true)))]))) (.mk [] (.succeed (.construct (.none .nat) [])))))))), + (.function (.generated .function 3) [{ pattern := (.bind (.generated .binding 0)), type := .bytes }, { pattern := (.bind (.generated .binding 1)), type := .bytes }, { pattern := (.bind (.generated .binding 2)), type := .nat }] .bool (.mk [(.mk (.bind (.generated .holder 19)) none (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 18)) none (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 15))] false))))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 16)), (.move (.generated .operand 17)), (.move (.generated .operand 18))] false))))] (.matchOn (.move (.generated .holder 19)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.bind (.generated .binding 3))) (.mk [(.mk (.bind (.generated .operand 20)) none (.move (.generated .binding 3))), (.mk (.bind (.generated .operand 21)) none (.move (.generated .binding 1)))] (.call (.runtime .equal) [(.move (.generated .operand 20)), (.move (.generated .operand 21))] false)))])))] } : LexLeanTarget.RustSyntax.Crate) + +def flags : Flags := [(([.nat], (.option .nat)), true)] + +theorem fun0 : FunOK program krate flags 0 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .binding 2)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 1))] false)))), (.mk (.bind (.generated .binding 3)) (some .nat) (.block (.mk [(.mk (.bind (.generated .operand 2)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 2))] false)))), (.mk (.bind (.generated .binding 4)) (some .nat) (.block (.mk [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.call (.function 1) [(.construct (.closure 0 2) [(.clone (.generated .binding 1)), (.copy (.generated .binding 3)), (.clone (.generated .binding 0)), (.copy (.generated .binding 2))]), (.block (.mk [(.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 5)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] true))), (.lit (.nat 0))] true))] (.move (.generated .part 3)))))], (.cond (.call (.function 3) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 4))] false) (.mk [] (.succeed (.construct .some [(.copy (.generated .binding 4))]))) (.mk [] (.succeed (.construct (.none .nat) [])))), [(1, .bytes, (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 1)) none (.clone (.generated .binding 0)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 1))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 2)) none (.clone (.generated .binding 1)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 2))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl (Corr.letBind (Corr.eOfB (lets := [(.mk (.tuple [(.bind (.generated .part 3)), .wild]) none (.call (.function 1) [(.construct (.closure 0 2) [(.clone (.generated .binding 1)), (.copy (.generated .binding 3)), (.clone (.generated .binding 0)), (.copy (.generated .binding 2))]), (.block (.mk [(.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 5)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] true))), (.lit (.nat 0))] true))]) (tail := (.move (.generated .part 3))) (Corr.first (ta := .nat) (tb := .bool) (Corr.eOfBNil (Corr.callOps (ts := [(.fn [.nat] (.option .nat)), .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.eOfBNil (Corr.closure (caps := [.bytes, .nat, .bytes, .nat]) (mask := [false, false, false, false]) (af := true) (ff := true) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil)))))) rfl rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 4)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 5)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 4)), (.move (.generated .operand 5))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lCons (Corr.value rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl)) rfl)) rfl (Corr.cond (lc := []) (ce := (.call (.function 3) [(.move (.generated .binding 0)), (.move (.generated .binding 1)), (.copy (.generated .binding 4))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.copy (.generated .binding 4))]))) (lb := []) (tb := (.succeed (.construct (.none .nat) []))) (Corr.fOfB (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)))))))⟩⟩ + +theorem fun1 : FunOK program krate flags 1 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 6)) none (.copy (.generated .binding 1)))], (.cond (.isZero (.generated .holder 6)) (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool false))))) (.mk [(.mk (.bind (.generated .binding 3)) none (.predecessor (.generated .holder 6))), (.mk (.bind (.generated .holder 8)) none (.block (.mk [(.mk (.bind (.generated .callee 7)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 7) [(.copy (.generated .binding 2))] true))))] (.matchOn (.move (.generated .holder 8)) [(.mk .none (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 1) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)))]))), [(2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat] (.option .nat)), (some 0))], rfl, rfl, + (Corr.matchNat (sl := (some 3)) (Corr.var rfl rfl) rfl rfl rfl (Corr.kIf (la := []) (ta := (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool false))))) (lb := [(.mk (.bind (.generated .holder 8)) none (.block (.mk [(.mk (.bind (.generated .callee 7)) (some (.fn 0)) (.clone (.generated .binding 0)))] (.apply (.generated .callee 7) [(.copy (.generated .binding 2))] true))))]) (tb := (.matchOn (.move (.generated .holder 8)) [(.mk .none (.mk [] (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true)))))), (.mk (.some (.bind (.generated .binding 4))) (.mk [] (.call (.function 1) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)))])) (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil)))))) (Corr.matchArms (st := (.option .nat)) (U := []) (view := false) (idx := [0, 1]) (Corr.eOfB (lets := [(.mk (.bind (.generated .callee 7)) (some (.fn 0)) (.clone (.generated .binding 0)))]) (tail := (.apply (.generated .callee 7) [(.copy (.generated .binding 2))] true)) (Corr.apply (ps := [.nat]) (af := true) (Corr.var rfl rfl) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))) rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(3, .nat, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat] (.option .nat)), (some 0))]) (j := 0) (loads := []) (lets := []) (tail := (.succeed (.pair (.copy (.generated .binding 2)) (.lit (.bool true))))) (Corr.mCons (Γ' := [(4, .nat, (some 4)), (3, .nat, (some 3)), (2, .nat, (some 2)), (1, .nat, (some 1)), (0, (.fn [.nat] (.option .nat)), (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.call (.function 1) [(.move (.generated .binding 0)), (.copy (.generated .binding 3)), (.copy (.generated .binding 4))] false)) (Corr.mNil) rfl rfl rfl (Corr.callF (ts := [(.fn [.nat] (.option .nat)), .nat, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl)) rfl rfl rfl (Corr.fOfB (Corr.bOfE (Corr.buildPair (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.buildConst rfl) (Corr.lNil))))))) rfl rfl rfl)))⟩⟩ + +theorem fun2 : FunOK program krate flags 2 := + ⟨_, rfl, .inl ⟨_, _, [], (.cond (.call (.function 3) [(.move (.generated .binding 2)), (.move (.generated .binding 0)), (.copy (.generated .binding 4))] false) (.mk [] (.succeed (.construct (.none .nat) []))) (.mk [(.mk (.bind (.generated .operand 11)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] true)))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 3)))] (.cond (.call (.runtime .natLt) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false) (.mk [] (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 14)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 13)), (.move (.generated .operand 14))] true)))]))) (.mk [] (.succeed (.construct (.none .nat) [])))))), [(4, .nat, (some 4)), (3, .nat, (some 3)), (2, .bytes, (some 2)), (1, .nat, (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.cond (lc := []) (ce := (.call (.function 3) [(.move (.generated .binding 2)), (.move (.generated .binding 0)), (.copy (.generated .binding 4))] false)) (lk := []) (Corr.callOps (ts := [.bytes, .bytes, .nat]) (Corr.opsOfL (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lCons (Corr.var rfl rfl) (Corr.lNil))))) rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct (.none .nat) []))) (lb := [(.mk (.bind (.generated .operand 11)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] true)))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 3)))]) (tb := (.cond (.call (.runtime .natLt) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false) (.mk [] (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 14)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 13)), (.move (.generated .operand 14))] true)))]))) (.mk [] (.succeed (.construct (.none .nat) []))))) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl)) (Corr.cond (lc := [(.mk (.bind (.generated .operand 11)) none (.block (.mk [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] true)))), (.mk (.bind (.generated .operand 12)) none (.copy (.generated .binding 3)))]) (ce := (.call (.runtime .natLt) [(.move (.generated .operand 11)), (.move (.generated .operand 12))] false)) (lk := []) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 9)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 10)) none (.copy (.generated .binding 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 9)), (.move (.generated .operand 10))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl) (Corr.kIf (la := []) (ta := (.succeed (.construct .some [(.block (.mk [(.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 14)) none (.lit (.nat 1)))] (.call (.runtime .natAdd) [(.move (.generated .operand 13)), (.move (.generated .operand 14))] true)))]))) (lb := []) (tb := (.succeed (.construct (.none .nat) []))) (Corr.fOfB (Corr.build (ts := [.nat]) (mask := [false]) (Corr.opsOfL (Corr.lCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 13)) none (.copy (.generated .binding 4))), (.mk (.bind (.generated .operand 14)) none (.lit (.nat 1)))]) (tail := (.call (.runtime .natAdd) [(.move (.generated .operand 13)), (.move (.generated .operand 14))] true)) (Corr.prim (ts := [.nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.value rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.lNil))) rfl)) (Corr.fOfB (Corr.build (ts := []) (mask := []) (Corr.opsNil) rfl))))))⟩⟩ + +theorem fun3 : FunOK program krate flags 3 := + ⟨_, rfl, .inl ⟨_, _, [(.mk (.bind (.generated .holder 19)) none (.block (.mk [(.mk (.bind (.generated .operand 16)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 18)) none (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 15))] false))))] (.call (.runtime .sliceBytes) [(.move (.generated .operand 16)), (.move (.generated .operand 17)), (.move (.generated .operand 18))] false))))], (.matchOn (.move (.generated .holder 19)) [(.mk .none (.mk [] (.lit (.bool false)))), (.mk (.some (.bind (.generated .binding 3))) (.mk [(.mk (.bind (.generated .operand 20)) none (.move (.generated .binding 3))), (.mk (.bind (.generated .operand 21)) none (.move (.generated .binding 1)))] (.call (.runtime .equal) [(.move (.generated .operand 20)), (.move (.generated .operand 21))] false)))]), [(2, .nat, (some 2)), (1, .bytes, (some 1)), (0, .bytes, (some 0))], rfl, rfl, + (Corr.matchArms (st := (.option .bytes)) (U := []) (view := false) (idx := [1, 0]) (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 16)) none (.move (.generated .binding 0))), (.mk (.bind (.generated .operand 17)) none (.copy (.generated .binding 2))), (.mk (.bind (.generated .operand 18)) none (.block (.mk [(.mk (.bind (.generated .operand 15)) none (.clone (.generated .binding 1)))] (.call (.runtime .lengthBytes) [(.move (.generated .operand 15))] false))))]) (tail := (.call (.runtime .sliceBytes) [(.move (.generated .operand 16)), (.move (.generated .operand 17)), (.move (.generated .operand 18))] false)) (Corr.prim (ts := [.bytes, .nat, .nat]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.eOfB (lets := [(.mk (.bind (.generated .operand 15)) none (.clone (.generated .binding 1)))]) (tail := (.call (.runtime .lengthBytes) [(.move (.generated .operand 15))] false)) (Corr.prim (ts := [.bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) (Corr.mCons (Γ' := [(2, .nat, (some 2)), (1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 1) (loads := []) (lets := []) (tail := (.lit (.bool false))) (Corr.mCons (Γ' := [(3, .bytes, (some 3)), (2, .nat, (some 2)), (1, .bytes, (some 1)), (0, .bytes, (some 0))]) (j := 0) (loads := []) (lets := [(.mk (.bind (.generated .operand 20)) none (.move (.generated .binding 3))), (.mk (.bind (.generated .operand 21)) none (.move (.generated .binding 1)))]) (tail := (.call (.runtime .equal) [(.move (.generated .operand 20)), (.move (.generated .operand 21))] false)) (Corr.mNil) rfl rfl rfl (Corr.prim (ts := [.bytes, .bytes]) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) (Corr.opsNil) rfl rfl) rfl rfl) rfl rfl rfl rfl rfl rfl)) rfl rfl rfl (Corr.bOfE (Corr.buildConst rfl))) rfl rfl rfl)⟩⟩ + +theorem crate_ok : CrateOK program krate flags := by + intro f fn h + match f with + | 0 => exact fun0 + | 1 => exact fun1 + | 2 => exact fun2 + | 3 => exact fun3 + | _ + 4 => simp [program, index_eq] at h + +/-- Every function of the program is simulated by its rendering. -/ +theorem root : ∀ n f, FunSem program krate flags n f := fun n f => simulate crate_ok n f + +end LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.RustStd diff --git a/stdlib/expected/verify/preserve/audit.txt b/stdlib/expected/verify/preserve/audit.txt index 8dd98bb95..47787b060 100644 --- a/stdlib/expected/verify/preserve/audit.txt +++ b/stdlib/expected/verify/preserve/audit.txt @@ -7737,53 +7737,53 @@ 'LexLeanPreservation.encOption.eq_2' does not depend on any axioms 'LexLeanPreservation.encPair.eq_1' does not depend on any axioms 'LexLeanPreservation.encUnit.eq_1' does not depend on any axioms -'LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.root' depends on axioms: [propext, Classical.choice, Quot.sound] +'LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -'LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.Compose.RustStd.root' depends on axioms: [propext, +'LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.Compose.RustStd.root' depends on axioms: [propext, Classical.choice, Quot.sound] -- statement vocabulary diff --git a/stdlib/expected/verify/preserve/preservation.json b/stdlib/expected/verify/preserve/preservation.json index f859874f9..9cbad0fea 100644 --- a/stdlib/expected/verify/preserve/preservation.json +++ b/stdlib/expected/verify/preserve/preservation.json @@ -1 +1 @@ -{"library":{"axioms":["Classical.choice","Quot.sound","propext"],"registry_sha256":"02de6e4be5a6ae43997bacd3713ea587693b8ac66da4aef567463a535a076ff3"},"roots":[{"byte_length":4532,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0","program":{"byte_length":735,"sha256":"1b124ea56028fd1442abdae2335001fd8074f4ded5f7e2fdfb72349b8cbee66f"},"renderings":[{"byte_length":5198,"composed":{"byte_length":13297,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.Compose.RustStd","sha256":"2bdc933620d3620d0fc3dc4635acd70e147b67fcd1f459cb6385d48cc63e6959","theorem":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.Compose.RustStd.root"},"crate":{"byte_length":13187,"sha256":"ecbb884548b529d7e84909723ca7a81a4faf337126be517c3cfa81827316dc4f"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.RustStd","sha256":"c53f00c43c4ef46835781f18561013894d0d9be6655834cba12fe799d15780f7","target":"rust-std","theorem":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.RustStd.root"}],"root":"LexLeanStd.Text.startsWith","sha256":"b64ee490ff995cf99230bae61dbe8c012617cf03c0d5dccf36475ffe983dbe32","targets":["rust-std"],"theorem":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.root"},{"byte_length":7029,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1","program":{"byte_length":1240,"sha256":"2e8cee85b376065a6078160fa53fd52c7a2f6aa31eb349462fb499ef41683e7f"},"renderings":[{"byte_length":9638,"composed":{"byte_length":13295,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.Compose.RustStd","sha256":"e6c17f4fe90303ad27c624727caf367cd98b60fd90888ad18f3835bfbafcff60","theorem":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.Compose.RustStd.root"},"crate":{"byte_length":13540,"sha256":"19d453bddf0fcdb46b45f5a3be483fa281f67e29cfd7888fa747dfc44a7350b1"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.RustStd","sha256":"a4b90d0da28d3acfafa0ac2d1ec3de23a461110b4c31abfe075bb0c81cf31d0f","target":"rust-std","theorem":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.RustStd.root"}],"root":"LexLeanStd.Text.endsWith","sha256":"1b02a0ecf3f09bdd6d64da127c5f51453fd68d360af0e05413c1f6554e539f23","targets":["rust-std"],"theorem":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.root"},{"byte_length":31004,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2","program":{"byte_length":7351,"sha256":"9a47374cdeea9e3296ff6a7908b312ddf5a3243176f7652b57d8fbe92eac8455"},"renderings":[{"byte_length":37513,"composed":{"byte_length":12066,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.Compose.RustStd","sha256":"553487714fc340ccb866fe40464b304135d53f3fcd46411ca4ff001de72d2177","theorem":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.Compose.RustStd.root"},"crate":{"byte_length":15976,"sha256":"682968e0ba898d7ddd56862ff4f443cb9918653229002af6c18a4c31df0a007c"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.RustStd","sha256":"c413721f0d6454a827df2d9f6e66d1b956ef7c92cca8d1cfb15d55483cfffcee","target":"rust-std","theorem":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.RustStd.root"}],"root":"LexLeanStd.Text.trim","sha256":"b52a74bd74d96637d23cd387dc173face7e021c84f63baae440a17e9502f0104","targets":["rust-std"],"theorem":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.root"},{"byte_length":30155,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3","program":{"byte_length":10335,"sha256":"338fb203721ebdf49131b19350509614a5e1e84758f7a82903c48bbc472d8dc3"},"renderings":[{"byte_length":41781,"composed":{"byte_length":14062,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.Compose.RustStd","sha256":"2353ce1e79b7bc52a8aa458ffd33028453a0c21838d96a9c527146bef2f96614","theorem":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.Compose.RustStd.root"},"crate":{"byte_length":16698,"sha256":"e7f7355f576d9a156f1a77d9659f9a15f11bc2d2764284bdbde923db1853fc6f"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.RustStd","sha256":"830562095f667d1473a0cfd611af2c90291af8d0b4468c5bb9c63f9f94a887d9","target":"rust-std","theorem":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.RustStd.root"}],"root":"LexLeanStd.Text.splitOn","sha256":"2bbf89e0dec713488afbba73b8801f49323e149c5b015dba6deaa907b59369e6","targets":["rust-std"],"theorem":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.root"},{"byte_length":40549,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4","program":{"byte_length":12480,"sha256":"841e8e419e8f4303b2680c83d2a7229758e0bfa0204159d69e4a9ed5e30fb1ea"},"renderings":[{"byte_length":56039,"composed":{"byte_length":12109,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.Compose.RustStd","sha256":"ff0f4a425553072daf795370e00c678278f2ad99b33aa33daa993a1597be3b83","theorem":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.Compose.RustStd.root"},"crate":{"byte_length":17906,"sha256":"4ea4e572ad6fca908ee188267f4b1f7ca812087ee75b178dd81932fdc7c99ae9"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.RustStd","sha256":"6dc1b6d83656c7c6900e339c55c5151d804514feac9934cf37ae7695a4f440e1","target":"rust-std","theorem":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.RustStd.root"}],"root":"LexLeanStd.Text.lines","sha256":"3dabe9135fb78d47c886b0fb240fc71b64dc3d0143c0883d633f2e7fd5631168","targets":["rust-std"],"theorem":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.root"},{"byte_length":9823,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5","program":{"byte_length":2224,"sha256":"96422dc4f1829feeb2a75f4c45d41bdd503b091eabab116da5cadc270be9752a"},"renderings":[{"byte_length":11921,"composed":{"byte_length":14998,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.Compose.RustStd","sha256":"a5fac8cb6d6358086da41dfb85f806261d8e2297848d73da761a34e82e33706b","theorem":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.Compose.RustStd.root"},"crate":{"byte_length":13992,"sha256":"539c1cc369fa726faf19d46f599ba91d3735bb6ce3ae1f6a9154eea8e86ae9a8"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.RustStd","sha256":"da8d78eff4d6c5e0471696a0bc5aa14e8ddbaefaf26eaa8b83054fd660ad34cb","target":"rust-std","theorem":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.RustStd.root"}],"root":"LexLeanStd.Text.joinWith","sha256":"a097d695ee2679a5bdbc18a37971101c785a50a72bd9b0c57eb37abd15440eeb","targets":["rust-std"],"theorem":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.root"},{"byte_length":17309,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6","program":{"byte_length":4379,"sha256":"2313c3ad3e05e24d6b6ceb3617928e0fcbc7caab758cb085cefc5ca51fb5e178"},"renderings":[{"byte_length":23324,"composed":{"byte_length":13336,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.Compose.RustStd","sha256":"fbac6066b70e4db07c4cc88bc68b6a8526feb50bc29252121bff341eea70ee7b","theorem":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.Compose.RustStd.root"},"crate":{"byte_length":14897,"sha256":"67e641527ec2d8c918047395e0b99d352b8270a3ef51124149af1a42548661d2"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.RustStd","sha256":"56a8161a65c6a1c280703afc2463761aad1f5511fdfd9a390dd4f5aac348c415","target":"rust-std","theorem":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.RustStd.root"}],"root":"LexLeanStd.Text.find","sha256":"96cc2c1d317b67c90d7e372ee4ba70ac93825e9863c6d199841c0cb113ef774d","targets":["rust-std"],"theorem":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.root"}],"spec":"lexlean/preservation/1"} +{"library":{"axioms":["Classical.choice","Quot.sound","propext"],"registry_sha256":"02de6e4be5a6ae43997bacd3713ea587693b8ac66da4aef567463a535a076ff3"},"roots":[{"byte_length":4532,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0","program":{"byte_length":735,"sha256":"1b124ea56028fd1442abdae2335001fd8074f4ded5f7e2fdfb72349b8cbee66f"},"renderings":[{"byte_length":5198,"composed":{"byte_length":13297,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.Compose.RustStd","sha256":"c011e229c3f2ee9ca57ed101a5d687b086456d34adf6506fe868e6e695f635df","theorem":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.Compose.RustStd.root"},"crate":{"byte_length":13187,"sha256":"ecbb884548b529d7e84909723ca7a81a4faf337126be517c3cfa81827316dc4f"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.RustStd","sha256":"518e018ac6183b75e497378a0888668b6e97b58ac3d288c692c001a5c5d1c3f7","target":"rust-std","theorem":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.RustStd.root"}],"root":"LexLeanStd.Text.startsWith","sha256":"db5df81486e22cb6479d944737e401f2309abcf8a5919e271e0b15ac52774e50","targets":["rust-std"],"theorem":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.root"},{"byte_length":7029,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1","program":{"byte_length":1240,"sha256":"2e8cee85b376065a6078160fa53fd52c7a2f6aa31eb349462fb499ef41683e7f"},"renderings":[{"byte_length":9638,"composed":{"byte_length":13295,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.Compose.RustStd","sha256":"f45de915712947556d7653d87d65d1e9ce56e364de53244556f7dc3d9bb82873","theorem":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.Compose.RustStd.root"},"crate":{"byte_length":13540,"sha256":"19d453bddf0fcdb46b45f5a3be483fa281f67e29cfd7888fa747dfc44a7350b1"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.RustStd","sha256":"2771ff020e685e063506464232d065727baccc3acac977d7a22f56288db174e8","target":"rust-std","theorem":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.RustStd.root"}],"root":"LexLeanStd.Text.endsWith","sha256":"82276f437dfdcdf2a93c3d565e7fd6108c92509efd3e6969d1e54ae08d48ef49","targets":["rust-std"],"theorem":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.root"},{"byte_length":31004,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2","program":{"byte_length":7351,"sha256":"9a47374cdeea9e3296ff6a7908b312ddf5a3243176f7652b57d8fbe92eac8455"},"renderings":[{"byte_length":37513,"composed":{"byte_length":12066,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.Compose.RustStd","sha256":"e257edcceb6081d9e8ff6183bcbed1d3862e10247ab0ae40044c14ac92800b8d","theorem":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.Compose.RustStd.root"},"crate":{"byte_length":15976,"sha256":"682968e0ba898d7ddd56862ff4f443cb9918653229002af6c18a4c31df0a007c"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.RustStd","sha256":"baf50eeec82c5fed4d855479961ba0276cd61bf8416ac4da696704b372834059","target":"rust-std","theorem":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.RustStd.root"}],"root":"LexLeanStd.Text.trim","sha256":"c2da3fcb73bda0f501fee3f000956fc90b6e8915f21ea9b68bc54a34ca0e958c","targets":["rust-std"],"theorem":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.root"},{"byte_length":30155,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3","program":{"byte_length":10335,"sha256":"338fb203721ebdf49131b19350509614a5e1e84758f7a82903c48bbc472d8dc3"},"renderings":[{"byte_length":41781,"composed":{"byte_length":14062,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.Compose.RustStd","sha256":"97ea05fb8cac84383bb777e091dfd6ed8adc180704b73ba8035d19d22351c4ce","theorem":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.Compose.RustStd.root"},"crate":{"byte_length":16698,"sha256":"e7f7355f576d9a156f1a77d9659f9a15f11bc2d2764284bdbde923db1853fc6f"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.RustStd","sha256":"0c8ad5a69fd2e9fe02814b9ba71c4b70c5451e4446d033f091dca76d3504490d","target":"rust-std","theorem":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.RustStd.root"}],"root":"LexLeanStd.Text.splitOn","sha256":"b0f75a4538c200f1c75bf88df29f0ff8111016f945e13a90f42627756a6dc095","targets":["rust-std"],"theorem":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.root"},{"byte_length":40549,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4","program":{"byte_length":12480,"sha256":"841e8e419e8f4303b2680c83d2a7229758e0bfa0204159d69e4a9ed5e30fb1ea"},"renderings":[{"byte_length":56039,"composed":{"byte_length":12109,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.Compose.RustStd","sha256":"a3f486b7f4c4d32a286e4f97aa2dead4616231f31203e9411665f23e971489ce","theorem":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.Compose.RustStd.root"},"crate":{"byte_length":17906,"sha256":"4ea4e572ad6fca908ee188267f4b1f7ca812087ee75b178dd81932fdc7c99ae9"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.RustStd","sha256":"a2e416e6c2bb49b35d32be911ae159669532b44ffb5ce86434d32bcf4261f07a","target":"rust-std","theorem":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.RustStd.root"}],"root":"LexLeanStd.Text.lines","sha256":"723913dae06e8b8ad93f4917e8d0870287d0255ad08db19b6d7264d79f5f2f65","targets":["rust-std"],"theorem":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.root"},{"byte_length":9823,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5","program":{"byte_length":2224,"sha256":"96422dc4f1829feeb2a75f4c45d41bdd503b091eabab116da5cadc270be9752a"},"renderings":[{"byte_length":11921,"composed":{"byte_length":14998,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.Compose.RustStd","sha256":"530c2af7658c6abe7ca0860d61f9d2937a6aaf1da2b9746f3184d07e60f97700","theorem":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.Compose.RustStd.root"},"crate":{"byte_length":13992,"sha256":"539c1cc369fa726faf19d46f599ba91d3735bb6ce3ae1f6a9154eea8e86ae9a8"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.RustStd","sha256":"f1cd19fd82f5e0b8dd87e412c2045ed477a5278808e03b3119d232920564f543","target":"rust-std","theorem":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.RustStd.root"}],"root":"LexLeanStd.Text.joinWith","sha256":"b37af28d9a713741b3135b314dbecb59320531baadb1f2942c0f1d06e18665f0","targets":["rust-std"],"theorem":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.root"},{"byte_length":17309,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6","program":{"byte_length":4379,"sha256":"2313c3ad3e05e24d6b6ceb3617928e0fcbc7caab758cb085cefc5ca51fb5e178"},"renderings":[{"byte_length":23324,"composed":{"byte_length":13336,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.Compose.RustStd","sha256":"c5e346c4c2afb6277446451683c51871c6cc63bf76cfed82c4aa0fba5f3983df","theorem":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.Compose.RustStd.root"},"crate":{"byte_length":14897,"sha256":"67e641527ec2d8c918047395e0b99d352b8270a3ef51124149af1a42548661d2"},"entry":{"function":0,"symbol":"f0"},"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.RustStd","sha256":"0bff6fde2b1a81d541357d4855e9a5ca792607329f0570d691dac7f142b2e69f","target":"rust-std","theorem":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.RustStd.root"}],"root":"LexLeanStd.Text.find","sha256":"d3575be4612b4d5cd8513e74ca728ef4a2a165d99a081d3b132a723d3e6d10a6","targets":["rust-std"],"theorem":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.root"}],"spec":"lexlean/preservation/1"} diff --git a/stdlib/expected/verify/probe/LexLeanProbe.P5bfc6ad2db2940a1b7735f1309be47dc.lean b/stdlib/expected/verify/probe/LexLeanProbe.Pf6fd2434413f885eb97b3577e92c0706.lean similarity index 100% rename from stdlib/expected/verify/probe/LexLeanProbe.P5bfc6ad2db2940a1b7735f1309be47dc.lean rename to stdlib/expected/verify/probe/LexLeanProbe.Pf6fd2434413f885eb97b3577e92c0706.lean diff --git a/stdlib/expected/verify/probe/process.json b/stdlib/expected/verify/probe/process.json index daf0eb131..99385102c 100644 --- a/stdlib/expected/verify/probe/process.json +++ b/stdlib/expected/verify/probe/process.json @@ -1 +1 @@ -{"argv":["env","lean","$STAGING/probe/LexLeanProbe.P5bfc6ad2db2940a1b7735f1309be47dc.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanProbe.P5bfc6ad2db2940a1b7735f1309be47dc","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} +{"argv":["env","lean","$STAGING/probe/LexLeanProbe.Pf6fd2434413f885eb97b3577e92c0706.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanProbe.Pf6fd2434413f885eb97b3577e92c0706","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.Compose.RustStd.json b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.Compose.RustStd.json deleted file mode 100644 index 6f1f47a1b..000000000 --- a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.RustStd.json b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.RustStd.json deleted file mode 100644 index 97077d9d6..000000000 --- a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.json b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.json deleted file mode 100644 index fd8dd2663..000000000 --- a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.Compose.RustStd.json b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.Compose.RustStd.json deleted file mode 100644 index 8768e9f63..000000000 --- a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.RustStd.json b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.RustStd.json deleted file mode 100644 index 5bd64d760..000000000 --- a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.json b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.json deleted file mode 100644 index e8ff03675..000000000 --- a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.Compose.RustStd.json b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.Compose.RustStd.json deleted file mode 100644 index 027d449a4..000000000 --- a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.RustStd.json b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.RustStd.json deleted file mode 100644 index 37ca84e7a..000000000 --- a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.json b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.json deleted file mode 100644 index c2b2a6f1a..000000000 --- a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.Compose.RustStd.json b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.Compose.RustStd.json deleted file mode 100644 index 87f97e105..000000000 --- a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.RustStd.json b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.RustStd.json deleted file mode 100644 index 69f3274be..000000000 --- a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.json b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.json deleted file mode 100644 index f8efb02d9..000000000 --- a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.Compose.RustStd.json b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.Compose.RustStd.json deleted file mode 100644 index 795225b28..000000000 --- a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.RustStd.json b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.RustStd.json deleted file mode 100644 index 65ac7c670..000000000 --- a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.json b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.json deleted file mode 100644 index ac25fe22c..000000000 --- a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.Compose.RustStd.json b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.Compose.RustStd.json deleted file mode 100644 index 22ae4b2de..000000000 --- a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.RustStd.json b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.RustStd.json deleted file mode 100644 index 13bd245cb..000000000 --- a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.json b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.json deleted file mode 100644 index ce74a66d1..000000000 --- a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.Compose.RustStd.json b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.Compose.RustStd.json deleted file mode 100644 index 57161976f..000000000 --- a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.RustStd.json b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.RustStd.json deleted file mode 100644 index f5dcaa0fc..000000000 --- a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.json b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.json deleted file mode 100644 index f22250120..000000000 --- a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.Compose.RustStd.json b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.Compose.RustStd.json new file mode 100644 index 000000000..178a6c81b --- /dev/null +++ b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.RustStd.json b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.RustStd.json new file mode 100644 index 000000000..bb126a5e3 --- /dev/null +++ b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.json b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.json new file mode 100644 index 000000000..57d14cb3c --- /dev/null +++ b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.Compose.RustStd.json b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.Compose.RustStd.json new file mode 100644 index 000000000..13c93b901 --- /dev/null +++ b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.RustStd.json b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.RustStd.json new file mode 100644 index 000000000..abc0b1851 --- /dev/null +++ b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.json b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.json new file mode 100644 index 000000000..ce1fc48d5 --- /dev/null +++ b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.Compose.RustStd.json b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.Compose.RustStd.json new file mode 100644 index 000000000..e2e24baaa --- /dev/null +++ b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.RustStd.json b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.RustStd.json new file mode 100644 index 000000000..c2b94f34a --- /dev/null +++ b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.json b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.json new file mode 100644 index 000000000..10196f8e7 --- /dev/null +++ b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.Compose.RustStd.json b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.Compose.RustStd.json new file mode 100644 index 000000000..5be8224f7 --- /dev/null +++ b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.RustStd.json b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.RustStd.json new file mode 100644 index 000000000..a2389828b --- /dev/null +++ b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.json b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.json new file mode 100644 index 000000000..ee58c12eb --- /dev/null +++ b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.Compose.RustStd.json b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.Compose.RustStd.json new file mode 100644 index 000000000..d2f0b5935 --- /dev/null +++ b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.RustStd.json b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.RustStd.json new file mode 100644 index 000000000..b669750d9 --- /dev/null +++ b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.json b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.json new file mode 100644 index 000000000..0f60f44d8 --- /dev/null +++ b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.Compose.RustStd.json b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.Compose.RustStd.json new file mode 100644 index 000000000..5ce611cb0 --- /dev/null +++ b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.RustStd.json b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.RustStd.json new file mode 100644 index 000000000..a3ad2376b --- /dev/null +++ b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.json b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.json new file mode 100644 index 000000000..7a30851ce --- /dev/null +++ b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.Compose.RustStd.json b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.Compose.RustStd.json new file mode 100644 index 000000000..20baed3ac --- /dev/null +++ b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.Compose.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.RustStd.json b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.RustStd.json new file mode 100644 index 000000000..3ef79d7aa --- /dev/null +++ b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.RustStd"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.json b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.json new file mode 100644 index 000000000..aa148a77c --- /dev/null +++ b/stdlib/expected/verify/process/leanchecker/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.json @@ -0,0 +1 @@ +{"argv":["env","$TOOLCHAIN/bin/leanchecker","LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"leanchecker"} diff --git a/stdlib/expected/verify/process/preserve/LexLeanPreserve.Audit.json b/stdlib/expected/verify/process/preserve/LexLeanPreserve.Audit.json index 6d565b063..7fdf0f100 100644 --- a/stdlib/expected/verify/process/preserve/LexLeanPreserve.Audit.json +++ b/stdlib/expected/verify/process/preserve/LexLeanPreserve.Audit.json @@ -1 +1 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","$STAGING/preserve-src/LexLeanPreserve/Audit.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Audit","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanPreservation.Obs' does not depend on any axioms\n'LexLeanPreservation.obs.match_1' does not depend on any axioms\n'LexLeanPreservation.obs' does not depend on any axioms\n'LexLeanPreservation.Conv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ConvA' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ObsL' does not depend on any axioms\n'LexLeanPreservation.obsL.match_1' does not depend on any axioms\n'LexLeanPreservation.obsL' does not depend on any axioms\n'LexLeanPreservation.ConvL' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.FunRel' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Obs._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.Obs._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.Obs.casesOn' does not depend on any axioms\n'LexLeanPreservation.Obs.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.Obs.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Obs.ctorElim' does not depend on any axioms\n'LexLeanPreservation.Obs.overflow.elim' does not depend on any axioms\n'LexLeanPreservation.Obs.stuck.elim' does not depend on any axioms\n'LexLeanPreservation.Obs.value.elim' does not depend on any axioms\n'LexLeanPreservation.Obs.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.Obs.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Obs.overflow.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Obs.recOn' does not depend on any axioms\n'LexLeanPreservation.Obs.stuck.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Obs.value.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Obs.value.inj' does not depend on any axioms\n'LexLeanPreservation.Obs.value.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Obs.value.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ObsL._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.ObsL._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.ObsL.casesOn' does not depend on any axioms\n'LexLeanPreservation.ObsL.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.ObsL.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.ObsL.ctorElim' does not depend on any axioms\n'LexLeanPreservation.ObsL.overflow.elim' does not depend on any axioms\n'LexLeanPreservation.ObsL.stuck.elim' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.elim' does not depend on any axioms\n'LexLeanPreservation.ObsL.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.ObsL.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ObsL.overflow.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ObsL.recOn' does not depend on any axioms\n'LexLeanPreservation.ObsL.stuck.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.inj' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.injEq' depends on axioms: [propext]\n'LexLeanPreservation.ObsL.values.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rel' does not depend on any axioms\n'LexLeanPreservation.Rel.eq_1' does not depend on any axioms\n'LexLeanPreservation.RelL' does not depend on any axioms\n'LexLeanPreservation.RelL.eq_1' does not depend on any axioms\n'LexLeanPreservation.RunConv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.addSteps_ne' does not depend on any axioms\n'LexLeanPreservation.chargeResult_ne' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.stable.match_1_16' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_18' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_20' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_22' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_24' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_26' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.eval.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.stable' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.evalArms_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs_ne' does not depend on any axioms\n'LexLeanPreservation.convA_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.eval_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs_addSteps' does not depend on any axioms\n'LexLeanPreservation.convA_hit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.convA_miss' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.evalList_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obsL_ne' does not depend on any axioms\n'LexLeanPreservation.convL_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.convL_cons._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.convL_cons._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.convL_cons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.convL_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_apply._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_apply._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_apply._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_apply' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_build' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_call._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_call._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_call' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_closure' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_cond._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_cond._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_field' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_first' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_let._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_let._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_let' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_match._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_match._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_match' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_matchV' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs_chargeResult' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_prim' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_second' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_var' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.funRel_intro' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs.eq_1' does not depend on any axioms\n'LexLeanPreservation.obs.eq_2' does not depend on any axioms\n'LexLeanPreservation.obs.eq_3' does not depend on any axioms\n'LexLeanPreservation.obs.eq_4' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_1' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_2' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_3' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_4' does not depend on any axioms\n'LexLeanPreservation.run_of_funRel' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.run.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ListEnc' does not depend on any axioms\n'LexLeanPreservation.ListEnc._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.ListEnc._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.ListEnc.casesOn' does not depend on any axioms\n'LexLeanPreservation.ListEnc.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.ListEnc.elem' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items' does not depend on any axioms\n'LexLeanPreservation.ListEnc.enc' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_cons' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_eq.match_1_1' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_nil' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_eq._f' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_eq' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.ListEnc.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.ListEnc.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk.inj' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk.injEq' depends on axioms: [propext]\n'LexLeanPreservation.ListEnc.mk.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ListEnc.recOn' does not depend on any axioms\n'LexLeanPreservation.OptEnc' does not depend on any axioms\n'LexLeanPreservation.OptEnc._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.OptEnc._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.OptEnc.casesOn' does not depend on any axioms\n'LexLeanPreservation.OptEnc.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.OptEnc.elem' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc_none' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc_some' does not depend on any axioms\n'LexLeanPreservation.encOption.match_1' does not depend on any axioms\n'LexLeanPreservation.encOption' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc_map' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.OptEnc.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.OptEnc.noConfusion' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk.noConfusion' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk.inj' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk.injEq' depends on axioms: [propext]\n'LexLeanPreservation.OptEnc.mk.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.OptEnc.recOn' does not depend on any axioms\n'LexLeanPreservation.construct_adt' does not depend on any axioms\n'LexLeanPreservation.construct_cons' does not depend on any axioms\n'LexLeanPreservation.construct_error' does not depend on any axioms\n'LexLeanPreservation.construct_false' does not depend on any axioms\n'LexLeanPreservation.construct_nil' does not depend on any axioms\n'LexLeanPreservation.construct_none' does not depend on any axioms\n'LexLeanPreservation.construct_ok' does not depend on any axioms\n'LexLeanPreservation.construct_pair' does not depend on any axioms\n'LexLeanPreservation.construct_some' does not depend on any axioms\n'LexLeanPreservation.construct_succ' does not depend on any axioms\n'LexLeanPreservation.construct_true' does not depend on any axioms\n'LexLeanPreservation.construct_unit' does not depend on any axioms\n'LexLeanPreservation.construct_zero' does not depend on any axioms\n'LexLeanPreservation.encExcept.match_1' does not depend on any axioms\n'LexLeanPreservation.encExcept' does not depend on any axioms\n'LexLeanPreservation.encList' does not depend on any axioms\n'LexLeanPreservation.encOrdering.match_1' does not depend on any axioms\n'LexLeanPreservation.encOrdering' does not depend on any axioms\n'LexLeanPreservation.encPair' does not depend on any axioms\n'LexLeanPreservation.encUnit' does not depend on any axioms\n'LexLeanPreservation.listEnc._proof_1' does not depend on any axioms\n'LexLeanPreservation.listEnc._proof_2' does not depend on any axioms\n'LexLeanPreservation.listEnc' does not depend on any axioms\n'LexLeanPreservation.optEnc._proof_1' does not depend on any axioms\n'LexLeanPreservation.optEnc._proof_2' does not depend on any axioms\n'LexLeanPreservation.optEnc' does not depend on any axioms\n'LexLeanPreservation.bytes_empty' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.bytes_one' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.bytes_zero' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.encOrdering.eq_1' does not depend on any axioms\n'LexLeanPreservation.encOrdering.eq_2' does not depend on any axioms\n'LexLeanPreservation.encOrdering.eq_3' does not depend on any axioms\n'LexLeanPreservation.fromOrdering_encOrdering' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.fromStrings_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.fromStrings_map._f' does not depend on any axioms\n'LexLeanPreservation.fromStrings_map' does not depend on any axioms\n'LexLeanPreservation.intFits' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.listIndex_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.listIndex_map._f' does not depend on any axioms\n'LexLeanPreservation.listIndex_map' does not depend on any axioms\n'LexLeanPreservation.listIndex_unique.match_1_1' does not depend on any axioms\n'LexLeanPreservation.listIndex_unique._f' does not depend on any axioms\n'LexLeanPreservation.listIndex_unique' does not depend on any axioms\n'LexLeanPreservation.obs_intResult' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.obs_natResult' does not depend on any axioms\n'LexLeanPreservation.prim_append_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_append_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_boolNot' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_compareBytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_bool' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_nat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_ordering' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_string' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_index_bytes.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_index_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_index_list.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_index_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intMul' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intNeg' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intQuot' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intRem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intSub' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_join.match_1_1' does not depend on any axioms\n'LexLeanPreservation.toStrings_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.toStrings_map.match_1_3' does not depend on any axioms\n'LexLeanPreservation.toStrings_map._f' does not depend on any axioms\n'LexLeanPreservation.toStrings_map' does not depend on any axioms\n'LexLeanPreservation.prim_join' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_length_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_length_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_length_string' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natAdd' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natEq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natLe' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natLt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natMul' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natQuot' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natRem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natSub' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_slice_bytes.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_slice_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_slice_list.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_slice_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_splitExact.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_splitExact' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_utf8Decode.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_utf8Decode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_utf8Encode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.compareBytes.eq_1' depends on axioms: [propext]\n'LexLeanRuntime.equal.eq_1' does not depend on any axioms\n'LexLeanRuntime.length.eq_1' does not depend on any axioms\n'LexLeanRuntime.slice.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromOrdering.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.checkedMultiplyWith.match_1' does not depend on any axioms\n'LexLeanPreservation.checkedMultiplyWith' does not depend on any axioms\n'LexLeanPreservation.checkedQuotientWith' does not depend on any axioms\n'LexLeanPreservation.decimalFits.match_1' does not depend on any axioms\n'LexLeanPreservation.decimalFits' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.divideStep' does not depend on any axioms\n'LexLeanPreservation.divide_unique.match_1_1' does not depend on any axioms\n'LexLeanPreservation.divide_unique._f' does not depend on any axioms\n'LexLeanPreservation.divide_unique' does not depend on any axioms\n'LexLeanPreservation.multiplyStep' does not depend on any axioms\n'LexLeanPreservation.multiply_unique.match_1_1' does not depend on any axioms\n'LexLeanPreservation.multiply_unique._f' does not depend on any axioms\n'LexLeanPreservation.multiply_unique' does not depend on any axioms\n'LexLeanPreservation.prim_bitAnd_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i64.match_1_2' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_int' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_int.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_int' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ordOf.match_1' does not depend on any axioms\n'LexLeanPreservation.ordOf' does not depend on any axioms\n'LexLeanPreservation.KeySpec' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.mk._flat_ctor' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.recOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.spec' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.compareCodes_eq.match_1_1' does not depend on any axioms\n'LexLeanPreservation.compareCodes_eq._f' depends on axioms: [propext]\n'LexLeanPreservation.compareCodes_eq' depends on axioms: [propext]\n'LexLeanPreservation.compareCodes_swap.match_1_1' does not depend on any axioms\n'LexLeanPreservation.compareCodes_swap._f' depends on axioms: [propext]\n'LexLeanPreservation.compareCodes_swap' depends on axioms: [propext]\n'LexLeanPreservation.lessThanE' does not depend on any axioms\n'LexLeanPreservation.prim_compare_key.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_compare_key' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_lessThan' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.orderOf_insert' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.orderBool.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.keySpec_bool' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI16.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI32.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI64.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI8.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderInt.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_int' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderNat.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_nat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.keySpec_pair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderString.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.keySpec_string' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU16.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU32.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU64.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU8.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanCollections.compareCodes._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_2' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_3' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_4' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_def' depends on axioms: [propext]\n'LexLeanCollections.insertEntry.eq_1' does not depend on any axioms\n'LexLeanCollections.insertEntry.eq_2' does not depend on any axioms\n'LexLeanCollections.insertEntry.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.compareValue.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_18' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_20' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_22' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_23' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_24' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_25' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_26' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_27' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_28' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_29' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_30' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_31' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_33' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_34' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_35' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_36' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_37' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_38' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_39' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_40' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_41' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_42' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_43' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_44' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_45' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_46' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_47' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_48' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_49' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_50' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_51' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_52' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_53' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_54' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_55' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_56' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_57' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_58' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_59' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_60' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_61' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_62' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_63' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_65' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_66' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_67' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_68' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_69' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_70' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_71' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_72' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_73' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_74' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_75' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_76' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_77' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_78' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_79' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_80' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_81' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_82' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_83' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_84' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_85' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_86' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_87' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_88' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_89' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_90' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_91' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_92' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_93' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_94' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_95' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_96' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_97' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_98' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_99' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Conv.bool_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Conv.fits_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.FunRel.fits_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ListEnc.enc.eq_1' does not depend on any axioms\n'LexLeanPreservation.ListEnc.enc_cons' does not depend on any axioms\n'LexLeanPreservation.ListEnc.enc_nil' does not depend on any axioms\n'LexLeanPreservation.LookOps' does not depend on any axioms\n'LexLeanPreservation.LookOps.casesOn' does not depend on any axioms\n'LexLeanPreservation.LookOps.l0' does not depend on any axioms\n'LexLeanPreservation.LookOps.leq' does not depend on any axioms\n'LexLeanPreservation.LookOps.lgt' does not depend on any axioms\n'LexLeanPreservation.LookOps.llt' does not depend on any axioms\n'LexLeanPreservation.LookOps.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.LookOps.recOn' does not depend on any axioms\n'LexLeanPreservation.SetOps' does not depend on any axioms\n'LexLeanPreservation.SetOps.c0' does not depend on any axioms\n'LexLeanPreservation.SetOps.casesOn' does not depend on any axioms\n'LexLeanPreservation.SetOps.ceq' does not depend on any axioms\n'LexLeanPreservation.SetOps.cgt' does not depend on any axioms\n'LexLeanPreservation.SetOps.clt' does not depend on any axioms\n'LexLeanPreservation.SetOps.i0' does not depend on any axioms\n'LexLeanPreservation.SetOps.ieq' does not depend on any axioms\n'LexLeanPreservation.SetOps.igt' does not depend on any axioms\n'LexLeanPreservation.SetOps.ilt' does not depend on any axioms\n'LexLeanPreservation.SetOps.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.SetOps.r0' does not depend on any axioms\n'LexLeanPreservation.SetOps.recOn' does not depend on any axioms\n'LexLeanPreservation.SetOps.req' does not depend on any axioms\n'LexLeanPreservation.SetOps.rgt' does not depend on any axioms\n'LexLeanPreservation.SetOps.rlt' does not depend on any axioms\n'LexLeanPreservation.TopoOps' does not depend on any axioms\n'LexLeanPreservation.TopoOps.casesOn' does not depend on any axioms\n'LexLeanPreservation.TopoOps.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.TopoOps.recOn' does not depend on any axioms\n'LexLeanPreservation.TopoOps.s_next' does not depend on any axioms\n'LexLeanPreservation.TopoOps.s_nil' does not depend on any axioms\n'LexLeanPreservation.TopoOps.s_stuck' does not depend on any axioms\n'LexLeanPreservation.TopoOps.z_cons' does not depend on any axioms\n'LexLeanPreservation.TopoOps.z_nil' does not depend on any axioms\n'LexLeanPreservation.Tpl.boolE' does not depend on any axioms\n'LexLeanPreservation.Tpl.byOrder' does not depend on any axioms\n'LexLeanPreservation.Tpl.cns' does not depend on any axioms\n'LexLeanPreservation.Tpl.fn' does not depend on any axioms\n'LexLeanPreservation.Tpl.lst' does not depend on any axioms\n'LexLeanPreservation.Tpl.v' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphInnerFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.pr' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphNodesFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.natOne' does not depend on any axioms\n'LexLeanPreservation.Tpl.nl' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphReachableFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphSuccessorsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphTopologicalFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.iterateFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.iterateUntilFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.listFoldFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapContainsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapFoldFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapInsertFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapLookupFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapProjectFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapRemoveFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reachFrontierFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reachIntoFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reachRoundsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reverseFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setContainsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setFilterFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setInsertFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setRemoveFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setUnionFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoFinished' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoReadyFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoRoundsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoUnreachedFn' does not depend on any axioms\n'LexLeanPreservation.blt_succ_fits._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.blt_succ_fits' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_cond_false' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_cond_true' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.enc_elem' does not depend on any axioms\n'LexLeanPreservation.enc_entry' does not depend on any axioms\n'LexLeanPreservation.foldFits.match_1' does not depend on any axioms\n'LexLeanPreservation.foldFits._f' does not depend on any axioms\n'LexLeanPreservation.foldFits' does not depend on any axioms\n'LexLeanPreservation.foldFits._sunfold' does not depend on any axioms\n'LexLeanPreservation.foldFits._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.foldFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.foldFits.eq_2' does not depend on any axioms\n'LexLeanPreservation.foldFits.eq_def' does not depend on any axioms\n'LexLeanPreservation.graphFits' does not depend on any axioms\n'LexLeanPreservation.graphFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.iterateFits.match_1' does not depend on any axioms\n'LexLeanPreservation.iterateFits._f' does not depend on any axioms\n'LexLeanPreservation.iterateFits' does not depend on any axioms\n'LexLeanPreservation.iterateFits._sunfold' does not depend on any axioms\n'LexLeanPreservation.iterateFits._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.iterateFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.iterateFits.eq_2' does not depend on any axioms\n'LexLeanPreservation.iterateFits.eq_def' does not depend on any axioms\n'LexLeanPreservation.length_eq' does not depend on any axioms\n'LexLeanPreservation.prim_compare_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.reachNext' does not depend on any axioms\n'LexLeanPreservation.tpl_graphInner.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setInsert.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setInsert._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setInsert' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphInner._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphInner' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphNodes.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_graphNodes._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphNodes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapLookup.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapLookup._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapLookup' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphSuccessors' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachFrontier.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_reachInto.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setContains.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setContains._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setContains' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachInto._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachInto' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachFrontier._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachFrontier' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachRounds.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setUnion.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setUnion._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setUnion' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachRounds._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachRounds' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphReachable' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reverse.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_reverse._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reverse' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setRemove.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setRemove._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setRemove' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoReady.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_topoUnreached.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_topoUnreached._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoUnreached' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoReady._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoReady' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoRounds.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_topoRounds._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoRounds' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphTopological' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterate.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_iterate._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterate' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterateUntil.match_1_1' does not depend on any axioms\n'LexLeanPreservation.untilFits.match_1' does not depend on any axioms\n'LexLeanPreservation.untilFits._f' does not depend on any axioms\n'LexLeanPreservation.untilFits' does not depend on any axioms\n'LexLeanPreservation.tpl_iterateUntil._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterateUntil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_listFold.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_listFold._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_listFold' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapContains' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapFold.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapFold._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapFold' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapInsert.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapInsert._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapInsert' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapKeys.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapKeys._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapKeys' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapRemove.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapRemove._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapRemove' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapValues.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapValues._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapValues' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setDifference.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setDifference._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setDifference' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setIntersection.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setIntersection._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setIntersection' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.untilFits._sunfold' does not depend on any axioms\n'LexLeanPreservation.untilFits._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.untilFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.untilFits.eq_2' does not depend on any axioms\n'LexLeanPreservation.untilFits.eq_def' does not depend on any axioms\n'LexLeanPreservation.validExcept.match_1' does not depend on any axioms\n'LexLeanPreservation.InvExcept' does not depend on any axioms\n'LexLeanPreservation.InvList' does not depend on any axioms\n'LexLeanPreservation.InvList.eq_1' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.match_1' does not depend on any axioms\n'LexLeanPreservation.StrictAsc._f' does not depend on any axioms\n'LexLeanPreservation.StrictAsc' does not depend on any axioms\n'LexLeanPreservation.InvMap' does not depend on any axioms\n'LexLeanPreservation.validOption.match_1' does not depend on any axioms\n'LexLeanPreservation.InvOption' does not depend on any axioms\n'LexLeanPreservation.InvOption.eq_1' does not depend on any axioms\n'LexLeanPreservation.InvOption.eq_2' does not depend on any axioms\n'LexLeanPreservation.InvPair' does not depend on any axioms\n'LexLeanPreservation.InvSet' does not depend on any axioms\n'LexLeanPreservation.StrictAsc._sunfold' does not depend on any axioms\n'LexLeanPreservation.StrictAsc._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_1' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_2' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_3' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_def' does not depend on any axioms\n'LexLeanPreservation.Tpl.validListFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validMapFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validOptionFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validPairFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validResultFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validSetFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validTrueFn' does not depend on any axioms\n'LexLeanPreservation.ascMap.match_1' does not depend on any axioms\n'LexLeanPreservation.lessB.match_1' does not depend on any axioms\n'LexLeanPreservation.lessB' does not depend on any axioms\n'LexLeanPreservation.ascMap._f' does not depend on any axioms\n'LexLeanPreservation.ascMap' does not depend on any axioms\n'LexLeanPreservation.ascMap._sunfold' does not depend on any axioms\n'LexLeanPreservation.ascMap._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_1' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_2' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_3' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_def' does not depend on any axioms\n'LexLeanPreservation.ascMap_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.lessB_iff' depends on axioms: [propext]\n'LexLeanPreservation.ascMap_iff._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.ascMap_iff' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.ascMap_inv' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.ascSet._f' does not depend on any axioms\n'LexLeanPreservation.ascSet' does not depend on any axioms\n'LexLeanPreservation.ascSet._sunfold' does not depend on any axioms\n'LexLeanPreservation.ascSet._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_1' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_2' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_3' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_def' does not depend on any axioms\n'LexLeanPreservation.ascSet_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.ascSet_iff._f' depends on axioms: [propext]\n'LexLeanPreservation.ascSet_iff' depends on axioms: [propext]\n'LexLeanPreservation.ascSet_inv' depends on axioms: [propext]\n'LexLeanPreservation.condAnd_iff' depends on axioms: [propext]\n'LexLeanPreservation.invList_eqs.match_1_1' does not depend on any axioms\n'LexLeanPreservation.invList_eqs._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.invList_eqs' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.lessB.eq_1' does not depend on any axioms\n'LexLeanPreservation.lessB_eq' depends on axioms: [propext]\n'LexLeanPreservation.lessB_gt' depends on axioms: [propext]\n'LexLeanPreservation.lessB_lt' depends on axioms: [propext]\n'LexLeanPreservation.someObs.match_1' does not depend on any axioms\n'LexLeanPreservation.someObs' does not depend on any axioms\n'LexLeanPreservation.tpl_validList.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validList.match_1' does not depend on any axioms\n'LexLeanPreservation.validList._f' does not depend on any axioms\n'LexLeanPreservation.validList' does not depend on any axioms\n'LexLeanPreservation.tpl_validList' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validMap.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_validMap._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validMap' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validOption.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validOption' does not depend on any axioms\n'LexLeanPreservation.tpl_validOption' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validPair.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validPair' does not depend on any axioms\n'LexLeanPreservation.tpl_validPair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validResult.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validExcept' does not depend on any axioms\n'LexLeanPreservation.tpl_validResult' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validSet.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_validSet._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validSet' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validTrue' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.trueIff' does not depend on any axioms\n'LexLeanPreservation.validExcept_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validExcept_inv' does not depend on any axioms\n'LexLeanPreservation.validList._sunfold' does not depend on any axioms\n'LexLeanPreservation.validList._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.validList.eq_1' does not depend on any axioms\n'LexLeanPreservation.validList.eq_2' does not depend on any axioms\n'LexLeanPreservation.validList.eq_def' does not depend on any axioms\n'LexLeanPreservation.validList_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validList_iff._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.validList_iff' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.validList_inv' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.validOption.eq_1' does not depend on any axioms\n'LexLeanPreservation.validOption.eq_2' does not depend on any axioms\n'LexLeanPreservation.validOption_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validOption_inv' depends on axioms: [propext]\n'LexLeanPreservation.validPair_inv' depends on axioms: [propext]\n'LexLeanPreservation.validTrue_inv' does not depend on any axioms\n'LexLeanPreservation.Rust.Ctx' does not depend on any axioms\n'LexLeanPreservation.Rust.Flags' does not depend on any axioms\n'LexLeanPreservation.Rust.RCrate' does not depend on any axioms\n'LexLeanPreservation.Rust.RIdent' does not depend on any axioms\n'LexLeanPreservation.Rust.WT._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.adtFields' depends on axioms: [propext]\n'LexLeanTarget.TargetSyntax.IntKind.ofNat' does not depend on any axioms\n'LexLeanTarget.TargetSyntax.IntKind.ofNat_ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Rust.instDecidableEqIntKind_lexLeanPreservation._proof_1' does not depend on any axioms\n'LexLeanPreservation.Rust.instDecidableEqIntKind_lexLeanPreservation._proof_2' does not depend on any axioms\n'LexLeanPreservation.Rust.instDecidableEqIntKind_lexLeanPreservation' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flagOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fnIdent' does not depend on any axioms\n'LexLeanPreservation.Rust.fnFallible' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.inert._f' does not depend on any axioms\n'LexLeanPreservation.Rust.inert' does not depend on any axioms\n'LexLeanPreservation.Rust.WT._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.WTAll._f' does not depend on any axioms\n'LexLeanPreservation.Rust.WTL.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctxLookup.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup._f' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup' does not depend on any axioms\n'LexLeanPreservation.Rust.local_' does not depend on any axioms\n'LexLeanPreservation.Rust.EnvRel' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ROut' does not depend on any axioms\n'LexLeanPreservation.Rust.Halt' does not depend on any axioms\n'LexLeanPreservation.Rust.REnv' does not depend on any axioms\n'LexLeanPreservation.Rust.RExpr' does not depend on any axioms\n'LexLeanPreservation.Rust.RC' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RLet' does not depend on any axioms\n'LexLeanPreservation.Rust.LetsOK' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.append' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.below' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.below.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.brecOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.recOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.append_left' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.append_right' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.below' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.below.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.brecOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.recOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RBlock' does not depend on any axioms\n'LexLeanPreservation.Rust.dispatched_ne' does not depend on any axioms\n'LexLeanPreservation.Rust.finished_ne' does not depend on any axioms\n'LexLeanPreservation.Rust.returned_ne' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_24' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_26' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_28' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_30' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_32' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_34' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_36' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.eval.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_22' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.invoke.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.stable' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.reval_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCB' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.block' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCA' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.revalBlock_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCB.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCI' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.invoke_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCI.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCL' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.revalList_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCL.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.WTAll' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.block_of_lets' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.block_of_raise' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.ctxLookup._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup_slot._simp_1_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotFree' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup_slot' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_cons_other' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sameIdent_self' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_cons_self' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sameIdent_local' depends on axioms: [propext]\n'LexLeanPreservation.Rust.envRel_bind' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.envRel_extra' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.envRel_ghost' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sameIdent_kind' depends on axioms: [propext]\n'LexLeanPreservation.Rust.envRel_temp' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.listIndex_eq.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.listIndex_eq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.listIndex_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.index_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.inert._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.inert._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_nil.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_raise_head.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcl_raise_head.match_1_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcl_raise_head' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_raise_tail' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.revalArms_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.slotFree.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sunfold' depends on axioms: [propext]\n'LexLeanTarget.RustSemantics.eval.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_18' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_20' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.invoke.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.invoke.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.kindNumber.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.lookup.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.lookup.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.lookup.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.lookup.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.lookup.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.lookup.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd' does not depend on any axioms\n'LexLeanPreservation.Rust.isTemp._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isTemp.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isTemp' depends on axioms: [propext]\n'LexLeanPreservation.Rust.letsBind.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds._f' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds._f' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind._f' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind' does not depend on any axioms\n'LexLeanPreservation.Rust.tempFresh' does not depend on any axioms\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.foldN.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.flatB._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep.match_7' does not depend on any axioms\n'LexLeanPreservation.Rust.foldStep' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldB' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats._f' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats' does not depend on any axioms\n'LexLeanPreservation.Rust.okBlock' does not depend on any axioms\n'LexLeanPreservation.Rust.partRead._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Kind.casesOn' does not depend on any axioms\n'LexLeanPreservation.Rust.elseCtx.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.elseCtx' does not depend on any axioms\n'LexLeanPreservation.Rust.elseLets.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.elseLets' does not depend on any axioms\n'LexLeanPreservation.Rust.heldOK.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.heldOK' does not depend on any axioms\n'LexLeanPreservation.Rust.negateR._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.negateR._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.negateR.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.negateR' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_5' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_7' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_9' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identBoxed' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal' does not depend on any axioms\n'LexLeanPreservation.Rust.isWild._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.unboxOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotOK.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocal' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armShape.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.armShape' does not depend on any axioms\n'LexLeanPreservation.Rust.otherArms.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.otherArms' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.noClosure.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.noClosure._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh' depends on axioms: [propext]\n'LexLeanPreservation.Rust.covered' depends on axioms: [propext]\n'LexLeanPreservation.Rust.scrut' does not depend on any axioms\n'LexLeanPreservation.Rust.validU.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.validU' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotOK' does not depend on any axioms\n'LexLeanPreservation.Rust.ctorOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identsDistinct.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct._f' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct' does not depend on any axioms\n'LexLeanPreservation.Rust.litOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArg._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.match_6' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArg.match_8' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArg' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArgs._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildTail.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildsArm.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildsArm' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.itemOK.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemOK' does not depend on any axioms\n'LexLeanPreservation.Rust.itemTyped.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemTyped.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf' does not depend on any axioms\n'LexLeanPreservation.Rust.itemTyped' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_9' does not depend on any axioms\n'LexLeanPreservation.Rust.isFixed._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped' depends on axioms: [propext]\n'LexLeanPreservation.Rust.primTyped' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.litValues._f' does not depend on any axioms\n'LexLeanPreservation.Rust.litValue' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.typedLitAll._f' does not depend on any axioms\n'LexLeanPreservation.Rust.typedLits.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Corr' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.below' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.below.casesOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.brecOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.casesOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.recOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.FunOK' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.CrateOK' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Fresh' does not depend on any axioms\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn' depends on axioms: [propext]\n'LexLeanPreservation.Rust.FunSem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Kind._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.casesOn' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ctorElim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.b.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.e.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.k.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.l.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.m.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.ops.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.recOn' does not depend on any axioms\n'LexLeanPreservation.Rust.KPre.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.KPre' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Kind.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.ctorElim' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Kind.nat.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.plain.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.plain.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.recOn' does not depend on any axioms\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesM.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.RealizesM' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Sem.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.viewVal._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Sem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.foldN._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identsDistinct._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_10' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_11' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_12' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_13' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_14' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_6' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_7' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_8' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.litValues' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue._sunfold' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.litValue._unsafe_rec' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues._sunfold' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.paramCtx._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patsBinds' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.patLocals._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patsBinds._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArgs._sunfold' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs._unsafe_rec' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.typedLitAll' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.typedLits._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_of_inert.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_of_inert.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_of_inert._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_of_inert' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_of_inert._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_of_inert' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Halt.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.LetsRaise.halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.block_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.boxed' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesM.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesM.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_bytes_inv' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_list_inv' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_string_inv' depends on axioms: [propext]\n'LexLeanPreservation.Rust.takes_of_typed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.allWidth_of.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_eq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_eq._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.tysBeq_eq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq_eq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.wt_fixed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.allWidth_of._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.allWidth_of' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.width_of_typed.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.width_of_typed.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.width_of_typed.match_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.width_of_typed' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.accepts_of_typed' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_apply' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtl_append.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_append._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_append' depends on axioms: [propext]\n'LexLeanPreservation.Rust.apply_result' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.bindPattern_shape.match_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.bindPattern_shape._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.bindPatterns_shape._simp_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindPatterns_shape.match_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.bindPatterns_shape._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.bindPattern_shape' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.bindPatterns_shape' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms_spec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_4' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_6' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_7' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.boolArms_eval' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.boxWith.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_100' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_102' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_96' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_98' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_function' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.call_result' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.const_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.convert_args.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.convert_args' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_append_fresh' depends on axioms: [propext]\n'LexLeanPreservation.Rust.envRel_fresh' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_not._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_cond.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.itemResult.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.eval_match' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fixedTyped.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_18' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_19' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_20' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_21' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_22' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_23' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_24' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_25' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_26' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_27' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_28' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_29' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_30' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_31' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_32' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_33' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_34' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_35' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_36' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_37' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_38' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_39' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_40' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_41' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_42' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_43' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_44' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_45' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_46' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_47' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_48' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_49' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_50' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_51' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_52' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_53' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_54' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_55' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_56' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_57' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_58' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_59' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_60' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_61' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN_sound.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.split_last.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.split_last._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.split_last' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep_spec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcb_nil_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_nomatch.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcb_cons_nomatch' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_stop' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_prefix' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_flat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_read_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_cons_same' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcb_fold_last' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldStep_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldN_sound._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldN_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldB_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldN.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_append' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_bind._simp_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_bind' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotFree_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_weaken' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_elseCtx' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_temp._simp_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_temp' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fromStrings_wt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fromStrings_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fromStrings_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.hasWidth_i16' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_i32' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_i64' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_i8' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u16' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u32' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u64' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u8' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.heldOK.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.heldOK.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.isFixed._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.isSeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.isTemp._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.itemOK.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemOperands_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.itemResult' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.kpre_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_pred._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_pred.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_pred' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.kpre_else' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.kpre_then' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_of_lets' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_b_rcb' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.k_branch' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_cond_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_isZero_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_lit_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate_halt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_negate_halt.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_nonZero_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_23' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_25' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_27' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_29' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_31' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_33' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_35' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_37' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_39' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_41' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_43' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_45' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_47' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_49' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_51' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_not_inv.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_not_inv.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_not_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.k_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_read.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_read' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.kpre_held' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.letsBind.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.letsOK_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.letsOK_shape' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.litValue._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_4' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_def' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_5' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.eq_def' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.lit_branch' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.lookup_through._simp_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.lookup_through' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms_spec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms_eval' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.obsL_evalList_zero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.obs_eval_zero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.oneOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf_halt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.param_env.match_1_1' depends on axioms: [propext]\n'LexLeanTarget.TargetSemantics.bindAll.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.param_env._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.param_env' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.patBinds.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_10' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_6' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_7' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_8' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.primTyped.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_apply_halt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_apply_halt.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_apply_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_call_halt.match_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_runtime' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_construct' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct_halt.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct_halt.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_isZero.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_isZero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_lit.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_lit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue._simp_10' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue._simp_9' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue.match_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_pair.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_pair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_litValues.match_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rcl_litValues._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_nonZero.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_nonZero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_pair_halt_left' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_pair_halt_right' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_widen.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_widen' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_widen_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_11' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_7' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_litValues' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_nil_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_single_halt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_single_halt.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_single_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_widen_one' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.readOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizesL_halt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizesL_haltL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizes_halt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizesM_overflow' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizes_oneOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.runItem_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.runItem_succ' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_applyGen.match_1_13' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen.match_1_15' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen.match_1_28' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_apply' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_applyF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_bOfE' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_build.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_build.match_1_99' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_build' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildConst' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildPair.match_1_101' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_97' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_99' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildSucc.match_1_129' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSucc.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSucc' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildSuccF.match_1_101' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSuccF.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSuccF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_callF.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callF.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_callOps.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callOps.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callOps' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_closure.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.wtl_length.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_length._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_length' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_closure' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_cond.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_cond.match_1_11' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_condId.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_condId' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_eOfB' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_eOfBFold' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_eOfBNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_fOfB' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_unit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_fUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kHeld' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kLit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kId' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kIf' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kNeg' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kSame' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_lCons.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons.match_1_17' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons.match_1_19' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_lNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_letBind.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letBind.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letBind' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_letWild.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letWild.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letWild' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBool._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchHolder.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchHolder.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchHolder' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBool' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBoolId._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBoolId.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchBoolId' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchNat._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchNat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchUnit._proof_1_386' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchUnit.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchUnit.match_1_387' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsCons._simp_1_13' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsCons.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons.match_1_14' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons.match_1_16' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsOfL' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_29' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_31' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_ops_box.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_ops_box.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_ops_box.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_ops_box' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_part._sparseCasesOn_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_part.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_part.match_1_14' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_part.match_1_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_part' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_part._sparseCasesOn_1_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_prim.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_prim.match_1_38' does not depend on any axioms\n'LexLeanPreservation.Rust.wtAll_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wtAll_iff._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.wtAll_iff' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_append' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_bitwise' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_checked' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_convert' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_decode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_encode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_fixedTyped.match_1_67' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_format' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_index' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_join' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_parse' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_shift' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.slice_eq' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_slice' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_split' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_unary' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtl_one.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_one' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_three.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_three' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_two.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_two' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_fixedTyped' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_prim' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_prim' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_primF.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF.match_1_7' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_primWiden.match_1_108' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_110' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_112' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_114' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_116' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.typedLitAll_wt.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit_wt.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits_wt.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_var' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_varUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_zero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.shapeOf.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_10' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_11' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_12' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_13' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_14' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_6' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_7' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_8' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.tempFresh.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_12.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_13.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_14.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.allWidth.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.allWidth.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.allWidth.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_100' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_101' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_102' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_103' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_104' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_105' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_106' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_107' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_108' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_109' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_110' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_111' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_112' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_113' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_114' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_115' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_116' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_117' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_118' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_119' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_120' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_121' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_122' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_123' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_124' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_125' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_126' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_127' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_128' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_129' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_130' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_131' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_132' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_133' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_134' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_135' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_136' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_137' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_138' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_139' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_140' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_141' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_142' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_143' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_144' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_145' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_146' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_147' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_148' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_149' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_150' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_151' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_152' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_153' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_154' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_155' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_156' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_157' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_158' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_159' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_160' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_161' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_162' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_163' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_164' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_165' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_166' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_167' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_168' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_169' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_170' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_171' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_172' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_173' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_174' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_175' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_176' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_177' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_178' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_179' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_180' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_181' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_182' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_183' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_184' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_185' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_186' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_51' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_52' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_53' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_54' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_55' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_56' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_57' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_58' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_59' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_60' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_61' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_62' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_63' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_64' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_65' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_66' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_67' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_68' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_69' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_70' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_71' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_72' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_73' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_74' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_75' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_76' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_77' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_78' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_79' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_80' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_81' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_82' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_83' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_84' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_85' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_86' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_87' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_88' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_89' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_90' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_91' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_92' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_93' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_94' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_95' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_96' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_97' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_98' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_99' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_100' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_101' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_102' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_103' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_104' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_105' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_106' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_107' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_108' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_109' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_110' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_111' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_112' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_113' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_114' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_115' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_116' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_117' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_118' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_119' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_120' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_121' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_122' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_123' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_124' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_125' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_126' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_127' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_128' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_129' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_130' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_131' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_132' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_133' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_134' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_135' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_136' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_137' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_138' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_139' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_140' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_141' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_142' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_143' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_144' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_145' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_146' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_147' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_148' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_149' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_150' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_151' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_152' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_153' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_154' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_155' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_156' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_157' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_158' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_159' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_160' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_161' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_162' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_163' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_164' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_165' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_166' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_167' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_168' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_169' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_170' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_171' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_172' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_173' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_174' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_175' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_176' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_177' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_178' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_179' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_180' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_181' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_182' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_183' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_184' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_51' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_52' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_53' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_54' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_55' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_56' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_57' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_58' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_59' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_60' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_61' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_62' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_63' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_64' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_65' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_66' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_67' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_68' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_69' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_70' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_71' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_72' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_73' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_74' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_75' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_76' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_77' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_78' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_79' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_80' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_81' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_82' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_83' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_84' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_85' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_86' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_87' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_88' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_89' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_90' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_91' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_92' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_93' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_94' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_95' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_96' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_97' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_98' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_99' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemAccepts.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemAccepts.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.literal.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_10' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_11' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_12' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_13' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_14' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_15' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_3' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_4' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_5' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_6' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_7' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_8' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_9' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.propagated.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.returned.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_10' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_11' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_12' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_13' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_14' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_15' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_16' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_17' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_18' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_19' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_20' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_21' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_22' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_23' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_24' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_25' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_26' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_27' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_28' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_29' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_30' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_31' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_32' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_33' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_34' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_35' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_36' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_37' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_38' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_39' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_40' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_41' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_42' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_43' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_44' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_45' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_46' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_47' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_48' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_49' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_5' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_50' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_51' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_52' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_53' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_54' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_55' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_56' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_57' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_58' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_59' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_6' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_60' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_61' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_62' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_63' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_64' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_65' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_66' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_67' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_68' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_69' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_7' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_70' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_71' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_72' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_73' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_74' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_75' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_76' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_77' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_78' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_79' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_8' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_80' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_81' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_82' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_83' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_9' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_10' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_100' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_101' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_102' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_103' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_104' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_105' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_106' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_107' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_108' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_109' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_11' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_110' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_111' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_112' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_113' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_114' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_115' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_116' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_117' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_118' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_119' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_12' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_120' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_121' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_122' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_123' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_124' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_125' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_126' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_127' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_128' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_129' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_13' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_130' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_131' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_132' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_133' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_134' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_135' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_136' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_137' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_138' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_139' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_14' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_140' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_141' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_142' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_143' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_144' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_145' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_146' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_147' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_148' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_149' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_15' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_150' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_151' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_152' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_153' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_154' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_155' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_156' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_157' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_158' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_159' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_16' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_160' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_161' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_162' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_163' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_164' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_165' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_166' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_167' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_168' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_169' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_17' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_170' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_171' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_172' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_173' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_174' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_175' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_176' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_177' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_178' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_179' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_18' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_180' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_181' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_182' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_183' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_184' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_185' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_186' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_187' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_188' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_189' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_19' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_190' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_191' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_192' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_193' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_194' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_195' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_196' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_197' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_198' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_199' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_20' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_200' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_201' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_202' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_203' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_204' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_205' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_206' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_207' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_208' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_209' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_21' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_210' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_211' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_212' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_213' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_214' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_215' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_216' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_217' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_218' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_219' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_22' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_220' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_221' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_222' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_223' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_224' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_225' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_226' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_227' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_228' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_229' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_23' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_230' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_231' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_232' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_233' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_234' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_235' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_236' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_237' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_238' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_239' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_24' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_240' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_241' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_242' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_243' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_244' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_245' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_246' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_247' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_248' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_249' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_25' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_250' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_251' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_252' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_253' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_254' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_255' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_256' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_257' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_258' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_259' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_26' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_260' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_261' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_262' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_263' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_264' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_265' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_266' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_267' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_268' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_269' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_27' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_270' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_271' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_272' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_273' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_274' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_275' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_276' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_277' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_278' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_279' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_28' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_280' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_281' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_282' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_283' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_284' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_285' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_286' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_287' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_288' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_289' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_29' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_290' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_291' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_292' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_293' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_294' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_295' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_296' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_297' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_298' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_299' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_30' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_300' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_301' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_302' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_303' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_304' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_305' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_306' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_307' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_308' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_309' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_31' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_310' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_311' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_312' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_313' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_314' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_315' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_316' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_317' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_318' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_319' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_32' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_320' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_321' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_322' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_323' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_324' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_325' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_326' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_327' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_328' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_329' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_33' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_330' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_331' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_332' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_333' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_334' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_335' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_336' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_337' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_338' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_339' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_34' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_340' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_341' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_342' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_343' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_344' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_345' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_346' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_347' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_348' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_349' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_35' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_350' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_351' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_352' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_353' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_354' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_355' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_356' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_357' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_358' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_359' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_36' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_360' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_361' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_362' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_363' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_364' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_365' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_366' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_367' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_368' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_369' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_37' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_370' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_38' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_39' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_40' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_41' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_42' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_43' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_44' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_45' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_46' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_47' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_48' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_49' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_5' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_50' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_51' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_52' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_53' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_54' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_55' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_56' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_57' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_58' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_59' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_6' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_60' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_61' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_62' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_63' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_64' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_65' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_66' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_67' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_68' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_69' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_7' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_70' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_71' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_72' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_73' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_74' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_75' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_76' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_77' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_78' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_79' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_8' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_80' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_81' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_82' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_83' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_84' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_85' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_86' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_87' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_88' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_89' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_9' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_90' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_91' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_92' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_93' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_94' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_95' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_96' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_97' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_98' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_99' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromStrings.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromStrings.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromStrings.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.primitive.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1000' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1001' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1002' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1003' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1004' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1005' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1006' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1007' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1008' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1009' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1010' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1011' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1012' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1013' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1014' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1015' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1016' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1017' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1018' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1019' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1020' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1021' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1022' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1023' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1024' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1025' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1026' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1027' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1028' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1029' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1030' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1031' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1032' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1033' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1034' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1035' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1036' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1037' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1038' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1039' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1040' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1041' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1042' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1043' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1044' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1045' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1046' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1047' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1048' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1049' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1050' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1051' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1052' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1053' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1054' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1055' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1056' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1057' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1058' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1059' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1060' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1061' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1062' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1063' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1064' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1065' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1066' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1067' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1068' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1069' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1070' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1071' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1072' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1073' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1074' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1075' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1076' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1077' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1078' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1079' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1080' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1081' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1082' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1083' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1084' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1085' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1086' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1087' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1088' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1089' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1090' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1091' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1092' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1093' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1094' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1095' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1096' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1097' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1098' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1099' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1426' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1427' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1428' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1429' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1430' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1431' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1432' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1433' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1434' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1435' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1436' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1437' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1438' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1439' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1440' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1441' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1442' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1443' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1444' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1445' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1446' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1447' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1448' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1449' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1450' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1451' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1452' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1453' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1454' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1455' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1456' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1457' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1458' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1459' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1460' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1461' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1462' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1463' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1464' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1465' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1466' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1467' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1468' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1469' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1470' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1471' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1472' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1473' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1474' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1475' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1476' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1477' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1478' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1479' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1480' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1481' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1482' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1483' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1484' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1485' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1486' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1487' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1488' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1489' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1490' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1491' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1492' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1493' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1494' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1495' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1496' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1497' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1498' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1499' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1500' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1501' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1502' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1503' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1504' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1505' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1506' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1507' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1508' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1509' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1510' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1511' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1512' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1513' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1514' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1515' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1516' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1517' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1518' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1519' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1520' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1521' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1522' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1523' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1524' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1525' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1526' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1527' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1528' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1529' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1530' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1531' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1532' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1533' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1534' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1535' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1536' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1537' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1538' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1539' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1540' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1541' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1542' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1543' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1544' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1545' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1546' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1547' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1548' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1549' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1550' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1551' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1552' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1553' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1554' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1555' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1556' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1557' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1558' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1559' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1560' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1561' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1562' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1563' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1564' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1565' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1566' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1567' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1568' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1569' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1570' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1571' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1572' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1573' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1574' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1575' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1576' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1577' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1578' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1579' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1580' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1581' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1582' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1583' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1584' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1585' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1586' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1587' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1588' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1589' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1590' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1591' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1592' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1593' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1594' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1595' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1596' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1597' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1598' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1599' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1600' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1601' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1602' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1603' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1604' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1605' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1606' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1607' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1608' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1609' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1610' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1611' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1612' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1613' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1614' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1615' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1616' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1617' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1618' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1619' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1620' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1621' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1622' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1623' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1624' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1625' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1626' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1627' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1628' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1629' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1630' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1631' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1632' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1633' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1634' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1635' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1636' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1637' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1638' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1639' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1640' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1641' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1642' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1643' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1644' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1645' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1646' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1647' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1648' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1649' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1650' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1651' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1652' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1653' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1654' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1655' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1656' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1657' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1658' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1659' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1660' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1661' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1662' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1663' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1664' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1665' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1666' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1667' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1668' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1669' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1670' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1671' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1672' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1673' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1674' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1675' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1676' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1677' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1678' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1679' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1680' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1681' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1682' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1683' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1684' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1685' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1686' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1687' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1688' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1689' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1690' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1691' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1692' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1693' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1694' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1695' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1696' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1697' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1698' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1699' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1700' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1701' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1702' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1703' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1704' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1705' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1706' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1707' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1708' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1709' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1710' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1711' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1712' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1713' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1714' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1715' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1716' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1717' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1718' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1719' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1720' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1721' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1722' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1723' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1724' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1725' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1726' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1727' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1728' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1729' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1730' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1731' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1732' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1733' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1734' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1735' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1736' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1737' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1738' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1739' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1740' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1741' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1742' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1743' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1744' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1745' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1746' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1747' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1748' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1749' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1750' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1751' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1752' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1753' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1754' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1755' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1756' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1757' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1758' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1759' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1760' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1761' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1762' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1763' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1764' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1765' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1766' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1767' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1768' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1769' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1770' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1771' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1772' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1773' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1774' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1775' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1776' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1777' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1778' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1779' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1780' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1781' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1782' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1783' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1784' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1785' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1786' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1787' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1788' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1789' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1790' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1791' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1792' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1793' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1794' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1795' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1796' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1797' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1798' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1799' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_18' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1800' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1801' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1802' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1803' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1804' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1805' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1806' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1807' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1808' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1809' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1810' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1811' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1812' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1813' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1814' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1815' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1816' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1817' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1818' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1819' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1820' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1821' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1822' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1823' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1824' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1825' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1826' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1827' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1828' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1829' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1830' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1831' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1832' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1833' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1834' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1835' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1836' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1837' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1838' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1839' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1840' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1841' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1842' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1843' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1844' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1845' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1846' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1847' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1848' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1849' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1850' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1851' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1852' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1853' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1854' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1855' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1856' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1857' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1858' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1859' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1860' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1861' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1862' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1863' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1864' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1865' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1866' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1867' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1868' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1869' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1870' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1871' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1872' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1873' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1874' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1875' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1876' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1877' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1878' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1879' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1880' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1881' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1882' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1883' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1884' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1885' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1886' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1887' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1888' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1889' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1890' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1891' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1892' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1893' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1894' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1895' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1896' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1897' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1898' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1899' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1900' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1901' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1902' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1903' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1904' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1905' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1906' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1907' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1908' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1909' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1910' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1911' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1912' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1913' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1914' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1915' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1916' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1917' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1918' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1919' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1920' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1921' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1922' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1923' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1924' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1925' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1926' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1927' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1928' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1929' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1930' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1931' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1932' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1933' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1934' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1935' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1936' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1937' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1938' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1939' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1940' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1941' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1942' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1943' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1944' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1945' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1946' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1947' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1948' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1949' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1950' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1951' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1952' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1953' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1954' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1955' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1956' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1957' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1958' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1959' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1960' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1961' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1962' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1963' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1964' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1965' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1966' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1967' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1968' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1969' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1970' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1971' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1972' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1973' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1974' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1975' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1976' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1977' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1978' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1979' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1980' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1981' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1982' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1983' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1984' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1985' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1986' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1987' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1988' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1989' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1990' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1991' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1992' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1993' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1994' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1995' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1996' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1997' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1998' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1999' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_20' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2000' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2001' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2002' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2003' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2004' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2005' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2006' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2007' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2008' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2009' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2010' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2011' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2012' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2013' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2014' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2015' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2016' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2017' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2018' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2019' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2020' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2021' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2022' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2023' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2024' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2025' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2026' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2027' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2028' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2029' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2030' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2031' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2032' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2033' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2034' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2035' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2036' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2037' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2038' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2039' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2040' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2041' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2042' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2043' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2044' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2045' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2046' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2047' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2048' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2049' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2050' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2051' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2052' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2053' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2054' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2055' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2056' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2057' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2058' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2059' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2060' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2061' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2062' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2063' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2064' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2065' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2066' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2067' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2068' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2069' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2070' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2071' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2072' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2073' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2074' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2075' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2076' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2077' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2078' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2079' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2080' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2081' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2082' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2083' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2084' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2085' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2086' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2087' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2088' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2089' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2090' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2091' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2092' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2093' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2094' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2095' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2096' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2097' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2098' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2099' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_22' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_23' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_24' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2426' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2427' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2428' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2429' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2430' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2431' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2432' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2433' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2434' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2435' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2436' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2437' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2438' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2439' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2440' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2441' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2442' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2443' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2444' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2445' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2446' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2447' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2448' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2449' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2450' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2451' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2452' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2453' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2454' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2455' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2456' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2457' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2458' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2459' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2460' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2461' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2462' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2463' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2464' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2465' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2466' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2467' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2468' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2469' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2470' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2471' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2472' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2473' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2474' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2475' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2476' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2477' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2478' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2479' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2480' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2481' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2482' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2483' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2484' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2485' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2486' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2487' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2488' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2489' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2490' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2491' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2492' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2493' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2494' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2495' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2496' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2497' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2498' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2499' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_25' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2500' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2501' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2502' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2503' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2504' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2505' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2506' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2507' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2508' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2509' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2510' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2511' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2512' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2513' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2514' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2515' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2516' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2517' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2518' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2519' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2520' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2521' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2522' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2523' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2524' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2525' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2526' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2527' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2528' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2529' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2530' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2531' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2532' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2533' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2534' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2535' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2536' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2537' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2538' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2539' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2540' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2541' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2542' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2543' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2544' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2545' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2546' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2547' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2548' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2549' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2550' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2551' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2552' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2553' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2554' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2555' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2556' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2557' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2558' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2559' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2560' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2561' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2562' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2563' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2564' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2565' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2566' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2567' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2568' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2569' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2570' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2571' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2572' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2573' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2574' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2575' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2576' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2577' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2578' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2579' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2580' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2581' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2582' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2583' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2584' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2585' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2586' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2587' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2588' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2589' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2590' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2591' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2592' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2593' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2594' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2595' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2596' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2597' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2598' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2599' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_26' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2600' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2601' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2602' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2603' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2604' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2605' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2606' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2607' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2608' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2609' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2610' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2611' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2612' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2613' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2614' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2615' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2616' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2617' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2618' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2619' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2620' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2621' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2622' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2623' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2624' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2625' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2626' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2627' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2628' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2629' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2630' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2631' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2632' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2633' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2634' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2635' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2636' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2637' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2638' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2639' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2640' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2641' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2642' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2643' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2644' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2645' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2646' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2647' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2648' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2649' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2650' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2651' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2652' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2653' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2654' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2655' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2656' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2657' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2658' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2659' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2660' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2661' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2662' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2663' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2664' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2665' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2666' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2667' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2668' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2669' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2670' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2671' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2672' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2673' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2674' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2675' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2676' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2677' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2678' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2679' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2680' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2681' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2682' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2683' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2684' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2685' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2686' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2687' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2688' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2689' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2690' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2691' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2692' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2693' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2694' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2695' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2696' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2697' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2698' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2699' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_27' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2700' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2701' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2702' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2703' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2704' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2705' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2706' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2707' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2708' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2709' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2710' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2711' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2712' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2713' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2714' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2715' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2716' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2717' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2718' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2719' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2720' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2721' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2722' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2723' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2724' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2725' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2726' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2727' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2728' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2729' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2730' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2731' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2732' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2733' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2734' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2735' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2736' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2737' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2738' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2739' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2740' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2741' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2742' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2743' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2744' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2745' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2746' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2747' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2748' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2749' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2750' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2751' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2752' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2753' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2754' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2755' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2756' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2757' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2758' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2759' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2760' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2761' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2762' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2763' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2764' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2765' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2766' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2767' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2768' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2769' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2770' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2771' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2772' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2773' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2774' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2775' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2776' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2777' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2778' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2779' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2780' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2781' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2782' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2783' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2784' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2785' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2786' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2787' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2788' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2789' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2790' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2791' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2792' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2793' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2794' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2795' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2796' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2797' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2798' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2799' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_28' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2800' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2801' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2802' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2803' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2804' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2805' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2806' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2807' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2808' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2809' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2810' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2811' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2812' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2813' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2814' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2815' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2816' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2817' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2818' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2819' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2820' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2821' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2822' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2823' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2824' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2825' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2826' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2827' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2828' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2829' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2830' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2831' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2832' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2833' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2834' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2835' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2836' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2837' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2838' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2839' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2840' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2841' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2842' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2843' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2844' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2845' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2846' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2847' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2848' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2849' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2850' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2851' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2852' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2853' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2854' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2855' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2856' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2857' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2858' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2859' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2860' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2861' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2862' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2863' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2864' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2865' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2866' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2867' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2868' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2869' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2870' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2871' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2872' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2873' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2874' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2875' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2876' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2877' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2878' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2879' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2880' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2881' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2882' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2883' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2884' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2885' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2886' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2887' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2888' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2889' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2890' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2891' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2892' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2893' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2894' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2895' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2896' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2897' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2898' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2899' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_29' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2900' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2901' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2902' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2903' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2904' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2905' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2906' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2907' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2908' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2909' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2910' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2911' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2912' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2913' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2914' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2915' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2916' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2917' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2918' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2919' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2920' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2921' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2922' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2923' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2924' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2925' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2926' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2927' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2928' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2929' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2930' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2931' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2932' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2933' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2934' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2935' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2936' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2937' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2938' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2939' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2940' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2941' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2942' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2943' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2944' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2945' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2946' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2947' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2948' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2949' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2950' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2951' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2952' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2953' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2954' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2955' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2956' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2957' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2958' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2959' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2960' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2961' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2962' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2963' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2964' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2965' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2966' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2967' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2968' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2969' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2970' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2971' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2972' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2973' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2974' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2975' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2976' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2977' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2978' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2979' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2980' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2981' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2982' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2983' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2984' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2985' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2986' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2987' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2988' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2989' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2990' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2991' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2992' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2993' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2994' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2995' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2996' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2997' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2998' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2999' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_30' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3000' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3001' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3002' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3003' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3004' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3005' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3006' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3007' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3008' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3009' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3010' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3011' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3012' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3013' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3014' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3015' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3016' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3017' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3018' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3019' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3020' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3021' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3022' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3023' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3024' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3025' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3026' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3027' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3028' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3029' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3030' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3031' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3032' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3033' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3034' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3035' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3036' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3037' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3038' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3039' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3040' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3041' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3042' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3043' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3044' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3045' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3046' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3047' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3048' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3049' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3050' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3051' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3052' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3053' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3054' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3055' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3056' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3057' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3058' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3059' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3060' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3061' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3062' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3063' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3064' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3065' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3066' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3067' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3068' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3069' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3070' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3071' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3072' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3073' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3074' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3075' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3076' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3077' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3078' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3079' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3080' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3081' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3082' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3083' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3084' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3085' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3086' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3087' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3088' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3089' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3090' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3091' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3092' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3093' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3094' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3095' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3096' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3097' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3098' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3099' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_31' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_33' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_34' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_35' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_36' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_37' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_38' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_39' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_40' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_41' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_42' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_426' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_427' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_428' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_429' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_43' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_430' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_431' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_432' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_433' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_434' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_435' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_436' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_437' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_438' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_439' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_44' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_440' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_441' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_442' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_443' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_444' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_445' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_446' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_447' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_448' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_449' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_45' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_450' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_451' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_452' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_453' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_454' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_455' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_456' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_457' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_458' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_459' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_46' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_460' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_461' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_462' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_463' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_464' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_465' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_466' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_467' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_468' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_469' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_47' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_470' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_471' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_472' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_473' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_474' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_475' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_476' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_477' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_478' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_479' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_48' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_480' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_481' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_482' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_483' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_484' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_485' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_486' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_487' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_488' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_489' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_49' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_490' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_491' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_492' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_493' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_494' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_495' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_496' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_497' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_498' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_499' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_50' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_500' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_501' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_502' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_503' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_504' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_505' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_506' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_507' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_508' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_509' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_51' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_510' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_511' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_512' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_513' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_514' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_515' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_516' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_517' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_518' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_519' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_52' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_520' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_521' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_522' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_523' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_524' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_525' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_526' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_527' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_528' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_529' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_53' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_530' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_531' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_532' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_533' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_534' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_535' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_536' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_537' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_538' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_539' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_54' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_540' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_541' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_542' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_543' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_544' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_545' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_546' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_547' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_548' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_549' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_55' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_550' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_551' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_552' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_553' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_554' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_555' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_556' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_557' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_558' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_559' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_56' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_560' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_561' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_562' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_563' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_564' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_565' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_566' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_567' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_568' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_569' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_57' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_570' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_571' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_572' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_573' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_574' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_575' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_576' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_577' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_578' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_579' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_58' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_580' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_581' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_582' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_583' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_584' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_585' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_586' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_587' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_588' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_589' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_59' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_590' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_591' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_592' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_593' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_594' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_595' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_596' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_597' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_598' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_599' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_60' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_600' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_601' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_602' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_603' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_604' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_605' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_606' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_607' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_608' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_609' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_61' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_610' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_611' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_612' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_613' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_614' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_615' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_616' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_617' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_618' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_619' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_62' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_620' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_621' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_622' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_623' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_624' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_625' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_626' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_627' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_628' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_629' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_63' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_630' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_631' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_632' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_633' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_634' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_635' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_636' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_637' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_638' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_639' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_640' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_641' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_642' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_643' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_644' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_645' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_646' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_647' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_648' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_649' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_65' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_650' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_651' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_652' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_653' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_654' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_655' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_656' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_657' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_658' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_659' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_66' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_660' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_661' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_662' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_663' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_664' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_665' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_666' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_667' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_668' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_669' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_67' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_670' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_671' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_672' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_673' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_674' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_675' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_676' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_677' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_678' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_679' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_68' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_680' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_681' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_682' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_683' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_684' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_685' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_686' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_687' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_688' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_689' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_69' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_690' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_691' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_692' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_693' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_694' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_695' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_696' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_697' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_698' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_699' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_70' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_700' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_701' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_702' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_703' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_704' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_705' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_706' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_707' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_708' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_709' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_71' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_710' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_711' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_712' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_713' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_714' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_715' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_716' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_717' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_718' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_719' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_72' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_720' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_721' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_722' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_723' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_724' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_725' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_726' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_727' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_728' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_729' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_73' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_730' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_731' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_732' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_733' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_734' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_735' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_736' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_737' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_738' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_739' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_74' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_740' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_741' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_742' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_743' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_744' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_745' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_746' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_747' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_748' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_749' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_75' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_750' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_751' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_752' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_753' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_754' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_755' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_756' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_757' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_758' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_759' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_76' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_760' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_761' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_762' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_763' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_764' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_765' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_766' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_767' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_768' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_769' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_77' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_770' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_771' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_772' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_773' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_774' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_775' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_776' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_777' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_778' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_779' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_78' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_780' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_781' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_782' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_783' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_784' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_785' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_786' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_787' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_788' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_789' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_79' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_790' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_791' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_792' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_793' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_794' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_795' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_796' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_797' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_798' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_799' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_80' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_800' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_801' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_802' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_803' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_804' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_805' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_806' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_807' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_808' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_809' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_81' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_810' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_811' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_812' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_813' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_814' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_815' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_816' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_817' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_818' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_819' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_82' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_820' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_821' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_822' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_823' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_824' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_825' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_826' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_827' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_828' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_829' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_83' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_830' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_831' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_832' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_833' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_834' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_835' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_836' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_837' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_838' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_839' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_84' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_840' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_841' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_842' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_843' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_844' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_845' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_846' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_847' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_848' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_849' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_85' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_850' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_851' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_852' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_853' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_854' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_855' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_856' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_857' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_858' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_859' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_86' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_860' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_861' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_862' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_863' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_864' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_865' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_866' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_867' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_868' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_869' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_87' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_870' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_871' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_872' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_873' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_874' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_875' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_876' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_877' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_878' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_879' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_88' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_880' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_881' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_882' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_883' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_884' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_885' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_886' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_887' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_888' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_889' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_89' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_890' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_891' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_892' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_893' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_894' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_895' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_896' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_897' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_898' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_899' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_90' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_900' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_901' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_902' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_903' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_904' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_905' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_906' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_907' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_908' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_909' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_91' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_910' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_911' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_912' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_913' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_914' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_915' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_916' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_917' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_918' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_919' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_92' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_920' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_921' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_922' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_923' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_924' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_925' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_926' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_927' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_928' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_929' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_93' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_930' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_931' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_932' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_933' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_934' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_935' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_936' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_937' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_938' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_939' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_94' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_940' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_941' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_942' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_943' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_944' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_945' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_946' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_947' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_948' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_949' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_95' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_950' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_951' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_952' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_953' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_954' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_955' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_956' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_957' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_958' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_959' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_96' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_960' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_961' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_962' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_963' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_964' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_965' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_966' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_967' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_968' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_969' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_97' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_970' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_971' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_972' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_973' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_974' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_975' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_976' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_977' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_978' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_979' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_98' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_980' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_981' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_982' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_983' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_984' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_985' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_986' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_987' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_988' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_989' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_99' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_990' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_991' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_992' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_993' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_994' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_995' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_996' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_997' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_998' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_999' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.adtFields.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_12.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_13.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_12.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat_outer' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.boxedOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.boxedOne.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.boxedOne' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bp_entries._simp_1_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.simplePat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bp_entries.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.entriesOf._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bp_entries._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.bp_entries' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.directPat_cons._simp_1_4' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.identBoxed_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identLocal_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf_spec' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_cons' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_len.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_len._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_len' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_loads._simp_1_27' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_loads._simp_1_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_loads.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none._simp_1_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none._simp_1_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rlookup_append' depends on axioms: [propext]\n'LexLeanPreservation.Rust.same_boxed_boxed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_boxed_none' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_local_none._simp_1_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_local_none._simp_1_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_local_none.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.same_local_local' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_local_none._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_local_none' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_boxed_local' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rlookup_local_boxed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rlookup_local_single' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_loads._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.directPat_loads' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_boxed_some._simp_1_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_some._simp_1_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_some.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_some._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.entries_boxed_some' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.envRel_locals' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fields_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindPatterns_single' depends on axioms: [propext]\n'LexLeanPreservation.Rust.outer_bind' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.paramCtx_length.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_length._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_length' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.bindOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOne.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.covered.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.covered_mem._simp_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.wt_uninh._simp_10' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.covered_mem' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.ctorOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.destruct_canon' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq_refl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.destruct_excl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.directPat.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_lookup.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_none_of._simp_1_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_none_of.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sameIdent_iff' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_none_of._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_none_of' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.identsDistinct.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.entries_lookup._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_lookup' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.eval_field.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.eval_field._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_field.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_field' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats_none._simp_1_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats_none.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats_none._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats_none' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats_some._simp_1_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats_some.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats_some._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats_some' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_partRead' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.tyBeq_unit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.field_out' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.findArm_some.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.findArm_some._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.findArm_some' depends on axioms: [propext]\n'LexLeanPreservation.Rust.findDispatch_some.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.findDispatch_some._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.findDispatch_some' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_ext' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identBoxed.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identBoxed.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.isWild._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.okBlock.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.otherArms.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.otherArms_mem._simp_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.otherArms_mem' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.outer_miss' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.outer_view' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_ext.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_ext._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_ext' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_fresh.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_fresh._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_fresh' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocal.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_matchOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_matchOn_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_uncons.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_uncons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_scrut' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rca_hit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rca_miss' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_det' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_rebuild.match_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_eq_of_same' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg_rc' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_rebuild._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_rebuild' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.readOf_rc' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.realizesM_value' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArg_simple' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_def' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs_simple.match_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs_simple._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs_simple' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_14.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuild_rca._simp_1_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuild_rca.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_value._simp_1_21' depends on axioms: [propext]\n'LexLeanPreservation.Rust.single_rebuild' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_rca._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_rca' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuildsArm.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_nil' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_fieldGen._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_fieldGen.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_fieldGen.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.wtl_get.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_get._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_get' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_fieldGen' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_fieldHeld' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_fieldRead' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_mCons._simp_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_mCons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_mNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchArms._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.tyBeq_refl.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq_refl._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.tysBeq_refl.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tysBeq_refl._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_refl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.tysBeq_refl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.uninh_of_inert.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.uninh_of_inert._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh_of_inert' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_uninh.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_uninh._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtl_uninh.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_uninh._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_uninh' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.taken_arm' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchArms' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchPair._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchPair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchRebuilt._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchRebuilt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchRebuilt.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchRebuilt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.simplePat.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.validU.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_uninh' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.findArm.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findArm.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findArm.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_5' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_6' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_7' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_8' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.fl_of' does not depend on any axioms\n'LexLeanPreservation.Rust.fnFallible.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of._simp_1_14' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.funSem_of.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_12' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.isTemp.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isTemp.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.item_ne' depends on axioms: [propext]\n'LexLeanPreservation.Rust.kind_ne' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sound._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sound._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.simulate' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Representable._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Representable.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Representable._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.RepresentableL._f' does not depend on any axioms\n'LexLeanPreservation.Rust.Representable' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Representable._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.Representable._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.compose' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rel_ne_stuck' depends on axioms: [propext]\n'LexLeanPreservation.Rust.repL_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.repL_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.runItem_abort_infallible' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtAll_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wtAll_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_map._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_map' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_adt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_bool' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_bytes' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encExcept.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_encExcept' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_list' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encList' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encOption.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_encOption' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encOrdering' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encPair' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encUnit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_errorV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i32' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i64' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_int' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_listEnc' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_nat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_noneV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_okV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_optEnc.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_someV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_optEnc' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_ordering' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_pairV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_string' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u32' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u64' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_unitValue' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_nil' depends on axioms: [propext]\n'LexLeanPreservation.encExcept.eq_1' does not depend on any axioms\n'LexLeanPreservation.encExcept.eq_2' does not depend on any axioms\n'LexLeanPreservation.encOption.eq_1' does not depend on any axioms\n'LexLeanPreservation.encOption.eq_2' does not depend on any axioms\n'LexLeanPreservation.encPair.eq_1' does not depend on any axioms\n'LexLeanPreservation.encUnit.eq_1' does not depend on any axioms\n'LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n-- statement vocabulary\ninductive LexLeanPreservation.Obs : Type\nnumber of parameters: 0\nconstructors:\nLexLeanPreservation.Obs.value : LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs\nLexLeanPreservation.Obs.overflow : LexLeanPreservation.Obs\nLexLeanPreservation.Obs.stuck : LexLeanPreservation.Obs\ndef LexLeanPreservation.Rel : Bool → LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs :=\nfun fits v => bif fits then LexLeanPreservation.Obs.value v else LexLeanPreservation.Obs.overflow\ndef LexLeanPreservation.Conv : LexLeanTarget.TargetSyntax.Program →\n List (Nat × LexLeanTarget.TargetSyntax.Value) → LexLeanTarget.TargetSyntax.Expr → LexLeanPreservation.Obs → Prop :=\nfun p env e o => ∃ n, LexLeanPreservation.obs (LexLeanTarget.TargetSemantics.eval n p env e) = some o\ndef LexLeanPreservation.FunRel : LexLeanTarget.TargetSyntax.Program →\n Nat → List LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs → Prop :=\nfun p f args o =>\n ∃ fn,\n LexLeanRuntime.index p.functions f = some fn ∧\n ∃ env,\n LexLeanTarget.TargetSemantics.bindAll fn.parameters args [] = some env ∧\n LexLeanPreservation.Conv p env fn.body o\ndef LexLeanPreservation.RunConv : LexLeanTarget.TargetSyntax.Program →\n Nat → List LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs → Prop :=\nfun p entry args o => ∃ n, LexLeanPreservation.obs (LexLeanTarget.TargetSemantics.run n p entry args) = some o\ndef LexLeanPreservation.Rust.WT : LexLeanTarget.TargetSyntax.Program →\n LexLeanPreservation.Rust.RCrate →\n LexLeanPreservation.Rust.Flags → LexLeanTarget.TargetSyntax.Value → LexLeanTarget.TargetSyntax.Ty → Prop :=\nfun p c A x x_1 =>\n x.brecOn (LexLeanPreservation.Rust.WT._f p c A)\n (fun t f => ⟨LexLeanPreservation.Rust.WTL._f p c A t f, LexLeanPreservation.Rust.WTAll._f p c A t f⟩) x_1\ndef LexLeanPreservation.Rust.WTL : LexLeanTarget.TargetSyntax.Program →\n LexLeanPreservation.Rust.RCrate →\n LexLeanPreservation.Rust.Flags →\n List LexLeanTarget.TargetSyntax.Value → List LexLeanTarget.TargetSyntax.Ty → Prop :=\nfun p c A x x_1 =>\n (LexLeanTarget.TargetSyntax.Value.brecOn_1 x (LexLeanPreservation.Rust.WT._f p c A) fun t f =>\n ⟨LexLeanPreservation.Rust.WTL._f p c A t f, LexLeanPreservation.Rust.WTAll._f p c A t f⟩).1\n x_1\ndef LexLeanPreservation.Rust.fnIdent : Nat → LexLeanPreservation.Rust.RIdent :=\nfun f => LexLeanTarget.RustSyntax.Ident.generated LexLeanTarget.RustSyntax.IdentKind.function f\ndef LexLeanPreservation.Rust.fnFallible : LexLeanPreservation.Rust.RCrate → Nat → Option Bool :=\nfun c f =>\n Option.map (fun fn => LexLeanTarget.RustSemantics.fallibleType fn.snd.fst)\n (LexLeanTarget.RustSemantics.findFunction c.items (LexLeanPreservation.Rust.fnIdent f))\ndef LexLeanPreservation.Rust.RCI : LexLeanPreservation.Rust.RCrate →\n LexLeanPreservation.Rust.RIdent → List LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Rust.ROut → Prop :=\nfun c f args o =>\n o ≠ LexLeanTarget.RustSemantics.ROutcome.exhausted ∧ ∃ n, LexLeanTarget.RustSemantics.invoke n c f args = o\ndef LexLeanPreservation.Rust.Realizes : Bool → LexLeanPreservation.Obs → LexLeanPreservation.Rust.ROut → Prop :=\nfun fl x x_1 =>\n match x, x_1 with\n | LexLeanPreservation.Obs.value v, LexLeanTarget.RustSemantics.ROutcome.value w => w = v\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.raise => fl = true\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.abort => True\n | x, x_2 => False\ndef LexLeanPreservation.Rust.RealizesFn : Bool → LexLeanPreservation.Obs → LexLeanPreservation.Rust.ROut → Prop :=\nfun fallible x x_1 =>\n match x, x_1 with\n | LexLeanPreservation.Obs.value v, LexLeanTarget.RustSemantics.ROutcome.value w => w = bif fallible then v.ok else v\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.value w =>\n fallible = true ∧ w = LexLeanTarget.TargetSyntax.Value.unit.error\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.abort => True\n | x, x_2 => False\ndef LexLeanPreservation.Rust.FunSem : LexLeanTarget.TargetSyntax.Program →\n LexLeanPreservation.Rust.RCrate → LexLeanPreservation.Rust.Flags → Nat → Nat → Prop :=\nfun p c A n f =>\n ∀ (fn : LexLeanTarget.TargetSyntax.Function) (args : List LexLeanTarget.TargetSyntax.Value)\n (env : List (Nat × LexLeanTarget.TargetSyntax.Value)) (F : Bool),\n LexLeanRuntime.index p.functions f = some fn →\n LexLeanPreservation.Rust.WTL p c A args fn.types →\n LexLeanTarget.TargetSemantics.bindAll fn.parameters args [] = some env →\n LexLeanPreservation.Rust.fnFallible c f = some F →\n ∀ (o : LexLeanPreservation.Obs),\n LexLeanPreservation.obs (LexLeanTarget.TargetSemantics.eval n p env fn.body) = some o →\n o ≠ LexLeanPreservation.Obs.stuck →\n (∀ (v : LexLeanTarget.TargetSyntax.Value),\n o = LexLeanPreservation.Obs.value v → LexLeanPreservation.Rust.WT p c A v fn.result) ∧\n ∃ ro,\n LexLeanPreservation.Rust.RealizesFn F o ro ∧\n LexLeanPreservation.Rust.RCI c (LexLeanPreservation.Rust.fnIdent f) args ro\ndef LexLeanPreservation.someObs : LexLeanPreservation.Obs → LexLeanPreservation.Obs :=\nfun x =>\n match x with\n | LexLeanPreservation.Obs.value v => LexLeanPreservation.Obs.value v.some\n | LexLeanPreservation.Obs.overflow => LexLeanPreservation.Obs.overflow\n | LexLeanPreservation.Obs.stuck => LexLeanPreservation.Obs.stuck\ndef LexLeanPreservation.Rust.Representable : LexLeanTarget.TargetSyntax.Value → Prop :=\nfun x => x.brecOn LexLeanPreservation.Rust.Representable._f LexLeanPreservation.Rust.RepresentableL._f\ndef LexLeanPreservation.Rust.RepresentableL : List LexLeanTarget.TargetSyntax.Value → Prop :=\nfun x =>\n LexLeanTarget.TargetSyntax.Value.brecOn_1 x LexLeanPreservation.Rust.Representable._f\n LexLeanPreservation.Rust.RepresentableL._f\nLexLeanPreservation.Rust.runItem_abort_infallible : ∀ (profile : LexLeanTarget.RustSyntax.Profile)\n (item : LexLeanTarget.RustSyntax.Item) (values : List LexLeanTarget.TargetSyntax.Value),\n LexLeanTarget.RustSemantics.runItem profile item values = LexLeanTarget.RustSemantics.ROutcome.abort →\n LexLeanTarget.RustSemantics.itemFallible item = false\n","stdout_sha256":"4de95c12e7eaaeff267cf066492be69b0bbd7bd87f0e5539e96c7f3ad347d329","tool":"lean"} +{"argv":["env","lean","-R","$STAGING/preserve-src","$STAGING/preserve-src/LexLeanPreserve/Audit.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Audit","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"'LexLeanPreservation.Obs' does not depend on any axioms\n'LexLeanPreservation.obs.match_1' does not depend on any axioms\n'LexLeanPreservation.obs' does not depend on any axioms\n'LexLeanPreservation.Conv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ConvA' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ObsL' does not depend on any axioms\n'LexLeanPreservation.obsL.match_1' does not depend on any axioms\n'LexLeanPreservation.obsL' does not depend on any axioms\n'LexLeanPreservation.ConvL' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.FunRel' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Obs._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.Obs._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.Obs.casesOn' does not depend on any axioms\n'LexLeanPreservation.Obs.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.Obs.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Obs.ctorElim' does not depend on any axioms\n'LexLeanPreservation.Obs.overflow.elim' does not depend on any axioms\n'LexLeanPreservation.Obs.stuck.elim' does not depend on any axioms\n'LexLeanPreservation.Obs.value.elim' does not depend on any axioms\n'LexLeanPreservation.Obs.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.Obs.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Obs.overflow.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Obs.recOn' does not depend on any axioms\n'LexLeanPreservation.Obs.stuck.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Obs.value.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Obs.value.inj' does not depend on any axioms\n'LexLeanPreservation.Obs.value.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Obs.value.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ObsL._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.ObsL._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.ObsL.casesOn' does not depend on any axioms\n'LexLeanPreservation.ObsL.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.ObsL.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.ObsL.ctorElim' does not depend on any axioms\n'LexLeanPreservation.ObsL.overflow.elim' does not depend on any axioms\n'LexLeanPreservation.ObsL.stuck.elim' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.elim' does not depend on any axioms\n'LexLeanPreservation.ObsL.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.ObsL.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ObsL.overflow.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ObsL.recOn' does not depend on any axioms\n'LexLeanPreservation.ObsL.stuck.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.inj' does not depend on any axioms\n'LexLeanPreservation.ObsL.values.injEq' depends on axioms: [propext]\n'LexLeanPreservation.ObsL.values.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rel' does not depend on any axioms\n'LexLeanPreservation.Rel.eq_1' does not depend on any axioms\n'LexLeanPreservation.RelL' does not depend on any axioms\n'LexLeanPreservation.RelL.eq_1' does not depend on any axioms\n'LexLeanPreservation.RunConv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.addSteps_ne' does not depend on any axioms\n'LexLeanPreservation.chargeResult_ne' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.stable.match_1_16' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_18' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_20' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_22' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_24' does not depend on any axioms\n'LexLeanPreservation.stable.match_1_26' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.eval.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.stable' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.evalArms_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs_ne' does not depend on any axioms\n'LexLeanPreservation.convA_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.eval_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs_addSteps' does not depend on any axioms\n'LexLeanPreservation.convA_hit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.convA_miss' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.evalList_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obsL_ne' does not depend on any axioms\n'LexLeanPreservation.convL_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.convL_cons._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.convL_cons._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.convL_cons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.convL_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_apply._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_apply._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_apply._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_apply' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_build' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_call._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_call._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_call' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_closure' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_cond._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_cond._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_field' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_first' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_let._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_let._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_let' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_match._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_match._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_match' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_matchV' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs_chargeResult' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_prim' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_second' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_var' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.funRel_intro' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.obs.eq_1' does not depend on any axioms\n'LexLeanPreservation.obs.eq_2' does not depend on any axioms\n'LexLeanPreservation.obs.eq_3' does not depend on any axioms\n'LexLeanPreservation.obs.eq_4' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_1' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_2' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_3' does not depend on any axioms\n'LexLeanPreservation.obsL.eq_4' does not depend on any axioms\n'LexLeanPreservation.run_of_funRel' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.eval.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalArms.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.evalList.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.run.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ListEnc' does not depend on any axioms\n'LexLeanPreservation.ListEnc._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.ListEnc._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.ListEnc.casesOn' does not depend on any axioms\n'LexLeanPreservation.ListEnc.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.ListEnc.elem' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items' does not depend on any axioms\n'LexLeanPreservation.ListEnc.enc' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_cons' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_eq.match_1_1' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_nil' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_eq._f' does not depend on any axioms\n'LexLeanPreservation.ListEnc.items_eq' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.ListEnc.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.ListEnc.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk.noConfusion' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk.inj' does not depend on any axioms\n'LexLeanPreservation.ListEnc.mk.injEq' depends on axioms: [propext]\n'LexLeanPreservation.ListEnc.mk.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.ListEnc.recOn' does not depend on any axioms\n'LexLeanPreservation.OptEnc' does not depend on any axioms\n'LexLeanPreservation.OptEnc._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.OptEnc._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.OptEnc.casesOn' does not depend on any axioms\n'LexLeanPreservation.OptEnc.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.OptEnc.elem' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc_none' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc_some' does not depend on any axioms\n'LexLeanPreservation.encOption.match_1' does not depend on any axioms\n'LexLeanPreservation.encOption' does not depend on any axioms\n'LexLeanPreservation.OptEnc.enc_map' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.OptEnc.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.OptEnc.noConfusion' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk.noConfusion' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk.inj' does not depend on any axioms\n'LexLeanPreservation.OptEnc.mk.injEq' depends on axioms: [propext]\n'LexLeanPreservation.OptEnc.mk.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.OptEnc.recOn' does not depend on any axioms\n'LexLeanPreservation.construct_adt' does not depend on any axioms\n'LexLeanPreservation.construct_cons' does not depend on any axioms\n'LexLeanPreservation.construct_error' does not depend on any axioms\n'LexLeanPreservation.construct_false' does not depend on any axioms\n'LexLeanPreservation.construct_nil' does not depend on any axioms\n'LexLeanPreservation.construct_none' does not depend on any axioms\n'LexLeanPreservation.construct_ok' does not depend on any axioms\n'LexLeanPreservation.construct_pair' does not depend on any axioms\n'LexLeanPreservation.construct_some' does not depend on any axioms\n'LexLeanPreservation.construct_succ' does not depend on any axioms\n'LexLeanPreservation.construct_true' does not depend on any axioms\n'LexLeanPreservation.construct_unit' does not depend on any axioms\n'LexLeanPreservation.construct_zero' does not depend on any axioms\n'LexLeanPreservation.encExcept.match_1' does not depend on any axioms\n'LexLeanPreservation.encExcept' does not depend on any axioms\n'LexLeanPreservation.encList' does not depend on any axioms\n'LexLeanPreservation.encOrdering.match_1' does not depend on any axioms\n'LexLeanPreservation.encOrdering' does not depend on any axioms\n'LexLeanPreservation.encPair' does not depend on any axioms\n'LexLeanPreservation.encUnit' does not depend on any axioms\n'LexLeanPreservation.listEnc._proof_1' does not depend on any axioms\n'LexLeanPreservation.listEnc._proof_2' does not depend on any axioms\n'LexLeanPreservation.listEnc' does not depend on any axioms\n'LexLeanPreservation.optEnc._proof_1' does not depend on any axioms\n'LexLeanPreservation.optEnc._proof_2' does not depend on any axioms\n'LexLeanPreservation.optEnc' does not depend on any axioms\n'LexLeanPreservation.bytes_empty' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.bytes_one' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.bytes_zero' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.encOrdering.eq_1' does not depend on any axioms\n'LexLeanPreservation.encOrdering.eq_2' does not depend on any axioms\n'LexLeanPreservation.encOrdering.eq_3' does not depend on any axioms\n'LexLeanPreservation.fromOrdering_encOrdering' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.fromStrings_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.fromStrings_map._f' does not depend on any axioms\n'LexLeanPreservation.fromStrings_map' does not depend on any axioms\n'LexLeanPreservation.intFits' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.listIndex_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.listIndex_map._f' does not depend on any axioms\n'LexLeanPreservation.listIndex_map' does not depend on any axioms\n'LexLeanPreservation.listIndex_unique.match_1_1' does not depend on any axioms\n'LexLeanPreservation.listIndex_unique._f' does not depend on any axioms\n'LexLeanPreservation.listIndex_unique' does not depend on any axioms\n'LexLeanPreservation.obs_intResult' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.obs_natResult' does not depend on any axioms\n'LexLeanPreservation.prim_append_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_append_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_boolNot' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_compareBytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_bool' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_nat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_ordering' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_string' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_index_bytes.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_index_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_index_list.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_index_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intMul' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intNeg' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intQuot' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intRem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_intSub' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_join.match_1_1' does not depend on any axioms\n'LexLeanPreservation.toStrings_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.toStrings_map.match_1_3' does not depend on any axioms\n'LexLeanPreservation.toStrings_map._f' does not depend on any axioms\n'LexLeanPreservation.toStrings_map' does not depend on any axioms\n'LexLeanPreservation.prim_join' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_length_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_length_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_length_string' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natAdd' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natEq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natLe' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natLt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natMul' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natQuot' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natRem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_natSub' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_slice_bytes.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_slice_bytes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_slice_list.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_slice_list' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_splitExact.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_splitExact' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_utf8Decode.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_utf8Decode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_utf8Encode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanRuntime.compareBytes.eq_1' depends on axioms: [propext]\n'LexLeanRuntime.equal.eq_1' does not depend on any axioms\n'LexLeanRuntime.length.eq_1' does not depend on any axioms\n'LexLeanRuntime.slice.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromOrdering.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.checkedMultiplyWith.match_1' does not depend on any axioms\n'LexLeanPreservation.checkedMultiplyWith' does not depend on any axioms\n'LexLeanPreservation.checkedQuotientWith' does not depend on any axioms\n'LexLeanPreservation.decimalFits.match_1' does not depend on any axioms\n'LexLeanPreservation.decimalFits' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.divideStep' does not depend on any axioms\n'LexLeanPreservation.divide_unique.match_1_1' does not depend on any axioms\n'LexLeanPreservation.divide_unique._f' does not depend on any axioms\n'LexLeanPreservation.divide_unique' does not depend on any axioms\n'LexLeanPreservation.multiplyStep' does not depend on any axioms\n'LexLeanPreservation.multiply_unique.match_1_1' does not depend on any axioms\n'LexLeanPreservation.multiply_unique._f' does not depend on any axioms\n'LexLeanPreservation.multiply_unique' does not depend on any axioms\n'LexLeanPreservation.prim_bitAnd_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitAnd_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitNot_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitOr_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_bitXor_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedAdd_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedAdd_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i64.match_1_2' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedMul_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedMul_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedNeg_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedNeg_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedQuot_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedQuot_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_checkedSub_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_checkedSub_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i16_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i16_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i32_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i32_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i64_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i64_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_i8_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_i8_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_int_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_int_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u16_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u16_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u32_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u32_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u64_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u64_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_convert_u8_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_convert_u8_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_equal_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_int' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_formatDecimal_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_int.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_int' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_parseDecimal_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_parseDecimal_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftLeft_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftLeft_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_i8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u16.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u32.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u64.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.prim_shiftRight_u8.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_shiftRight_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ordOf.match_1' does not depend on any axioms\n'LexLeanPreservation.ordOf' does not depend on any axioms\n'LexLeanPreservation.KeySpec' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.mk._flat_ctor' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.recOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.KeySpec.spec' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.compareCodes_eq.match_1_1' does not depend on any axioms\n'LexLeanPreservation.compareCodes_eq._f' depends on axioms: [propext]\n'LexLeanPreservation.compareCodes_eq' depends on axioms: [propext]\n'LexLeanPreservation.compareCodes_swap.match_1_1' does not depend on any axioms\n'LexLeanPreservation.compareCodes_swap._f' depends on axioms: [propext]\n'LexLeanPreservation.compareCodes_swap' depends on axioms: [propext]\n'LexLeanPreservation.lessThanE' does not depend on any axioms\n'LexLeanPreservation.prim_compare_key.match_1_1' does not depend on any axioms\n'LexLeanPreservation.prim_compare_key' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_lessThan' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.orderOf_insert' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.orderBool.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.keySpec_bool' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI16.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI32.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI64.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderI8.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_i8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderInt.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_int' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderNat.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_nat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.keySpec_pair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderString.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.keySpec_string' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU16.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU32.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU64.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.orderU8.eq_1' does not depend on any axioms\n'LexLeanPreservation.keySpec_u8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanCollections.compareCodes._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_1' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_2' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_3' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_4' depends on axioms: [propext]\n'LexLeanCollections.compareCodes.eq_def' depends on axioms: [propext]\n'LexLeanCollections.insertEntry.eq_1' does not depend on any axioms\n'LexLeanCollections.insertEntry.eq_2' does not depend on any axioms\n'LexLeanCollections.insertEntry.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.compareValue.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_18' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_20' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_22' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_23' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_24' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_25' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_26' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_27' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_28' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_29' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_30' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_31' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_33' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_34' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_35' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_36' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_37' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_38' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_39' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_40' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_41' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_42' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_43' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_44' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_45' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_46' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_47' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_48' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_49' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_50' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_51' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_52' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_53' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_54' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_55' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_56' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_57' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_58' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_59' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_60' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_61' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_62' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_63' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_65' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_66' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_67' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_68' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_69' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_70' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_71' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_72' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_73' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_74' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_75' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_76' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_77' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_78' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_79' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_80' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_81' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_82' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_83' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_84' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_85' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_86' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_87' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_88' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_89' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_90' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_91' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_92' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_93' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_94' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_95' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_96' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_97' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_98' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_99' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.compareValue.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Conv.bool_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Conv.fits_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.FunRel.fits_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.ListEnc.enc.eq_1' does not depend on any axioms\n'LexLeanPreservation.ListEnc.enc_cons' does not depend on any axioms\n'LexLeanPreservation.ListEnc.enc_nil' does not depend on any axioms\n'LexLeanPreservation.LookOps' does not depend on any axioms\n'LexLeanPreservation.LookOps.casesOn' does not depend on any axioms\n'LexLeanPreservation.LookOps.l0' does not depend on any axioms\n'LexLeanPreservation.LookOps.leq' does not depend on any axioms\n'LexLeanPreservation.LookOps.lgt' does not depend on any axioms\n'LexLeanPreservation.LookOps.llt' does not depend on any axioms\n'LexLeanPreservation.LookOps.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.LookOps.recOn' does not depend on any axioms\n'LexLeanPreservation.SetOps' does not depend on any axioms\n'LexLeanPreservation.SetOps.c0' does not depend on any axioms\n'LexLeanPreservation.SetOps.casesOn' does not depend on any axioms\n'LexLeanPreservation.SetOps.ceq' does not depend on any axioms\n'LexLeanPreservation.SetOps.cgt' does not depend on any axioms\n'LexLeanPreservation.SetOps.clt' does not depend on any axioms\n'LexLeanPreservation.SetOps.i0' does not depend on any axioms\n'LexLeanPreservation.SetOps.ieq' does not depend on any axioms\n'LexLeanPreservation.SetOps.igt' does not depend on any axioms\n'LexLeanPreservation.SetOps.ilt' does not depend on any axioms\n'LexLeanPreservation.SetOps.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.SetOps.r0' does not depend on any axioms\n'LexLeanPreservation.SetOps.recOn' does not depend on any axioms\n'LexLeanPreservation.SetOps.req' does not depend on any axioms\n'LexLeanPreservation.SetOps.rgt' does not depend on any axioms\n'LexLeanPreservation.SetOps.rlt' does not depend on any axioms\n'LexLeanPreservation.TopoOps' does not depend on any axioms\n'LexLeanPreservation.TopoOps.casesOn' does not depend on any axioms\n'LexLeanPreservation.TopoOps.mk._flat_ctor' does not depend on any axioms\n'LexLeanPreservation.TopoOps.recOn' does not depend on any axioms\n'LexLeanPreservation.TopoOps.s_next' does not depend on any axioms\n'LexLeanPreservation.TopoOps.s_nil' does not depend on any axioms\n'LexLeanPreservation.TopoOps.s_stuck' does not depend on any axioms\n'LexLeanPreservation.TopoOps.z_cons' does not depend on any axioms\n'LexLeanPreservation.TopoOps.z_nil' does not depend on any axioms\n'LexLeanPreservation.Tpl.boolE' does not depend on any axioms\n'LexLeanPreservation.Tpl.byOrder' does not depend on any axioms\n'LexLeanPreservation.Tpl.cns' does not depend on any axioms\n'LexLeanPreservation.Tpl.fn' does not depend on any axioms\n'LexLeanPreservation.Tpl.lst' does not depend on any axioms\n'LexLeanPreservation.Tpl.v' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphInnerFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.pr' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphNodesFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.natOne' does not depend on any axioms\n'LexLeanPreservation.Tpl.nl' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphReachableFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphSuccessorsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.graphTopologicalFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.iterateFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.iterateUntilFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.listFoldFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapContainsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapFoldFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapInsertFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapLookupFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapProjectFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.mapRemoveFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reachFrontierFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reachIntoFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reachRoundsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.reverseFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setContainsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setFilterFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setInsertFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setRemoveFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.setUnionFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoFinished' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoReadyFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoRoundsFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.topoUnreachedFn' does not depend on any axioms\n'LexLeanPreservation.blt_succ_fits._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.blt_succ_fits' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.conv_cond_false' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.conv_cond_true' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.enc_elem' does not depend on any axioms\n'LexLeanPreservation.enc_entry' does not depend on any axioms\n'LexLeanPreservation.foldFits.match_1' does not depend on any axioms\n'LexLeanPreservation.foldFits._f' does not depend on any axioms\n'LexLeanPreservation.foldFits' does not depend on any axioms\n'LexLeanPreservation.foldFits._sunfold' does not depend on any axioms\n'LexLeanPreservation.foldFits._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.foldFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.foldFits.eq_2' does not depend on any axioms\n'LexLeanPreservation.foldFits.eq_def' does not depend on any axioms\n'LexLeanPreservation.graphFits' does not depend on any axioms\n'LexLeanPreservation.graphFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.iterateFits.match_1' does not depend on any axioms\n'LexLeanPreservation.iterateFits._f' does not depend on any axioms\n'LexLeanPreservation.iterateFits' does not depend on any axioms\n'LexLeanPreservation.iterateFits._sunfold' does not depend on any axioms\n'LexLeanPreservation.iterateFits._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.iterateFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.iterateFits.eq_2' does not depend on any axioms\n'LexLeanPreservation.iterateFits.eq_def' does not depend on any axioms\n'LexLeanPreservation.length_eq' does not depend on any axioms\n'LexLeanPreservation.prim_compare_at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.reachNext' does not depend on any axioms\n'LexLeanPreservation.tpl_graphInner.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setInsert.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setInsert._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setInsert' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphInner._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphInner' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphNodes.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_graphNodes._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphNodes' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapLookup.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapLookup._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapLookup' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphSuccessors' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachFrontier.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_reachInto.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setContains.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setContains._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setContains' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachInto._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachInto' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachFrontier._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachFrontier' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachRounds.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setUnion.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setUnion._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setUnion' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachRounds._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reachRounds' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphReachable' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reverse.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_reverse._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_reverse' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setRemove.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setRemove._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setRemove' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoReady.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_topoUnreached.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_topoUnreached._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoUnreached' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoReady._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoReady' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoRounds.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_topoRounds._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_topoRounds' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_graphTopological' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterate.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_iterate._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterate' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterateUntil.match_1_1' does not depend on any axioms\n'LexLeanPreservation.untilFits.match_1' does not depend on any axioms\n'LexLeanPreservation.untilFits._f' does not depend on any axioms\n'LexLeanPreservation.untilFits' does not depend on any axioms\n'LexLeanPreservation.tpl_iterateUntil._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_iterateUntil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_listFold.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_listFold._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_listFold' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapContains' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapFold.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapFold._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapFold' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapInsert.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapInsert._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapInsert' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapKeys.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapKeys._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapKeys' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapRemove.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapRemove._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapRemove' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapValues.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_mapValues._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_mapValues' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setDifference.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setDifference._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setDifference' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setIntersection.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_setIntersection._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_setIntersection' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.untilFits._sunfold' does not depend on any axioms\n'LexLeanPreservation.untilFits._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.untilFits.eq_1' does not depend on any axioms\n'LexLeanPreservation.untilFits.eq_2' does not depend on any axioms\n'LexLeanPreservation.untilFits.eq_def' does not depend on any axioms\n'LexLeanPreservation.validExcept.match_1' does not depend on any axioms\n'LexLeanPreservation.InvExcept' does not depend on any axioms\n'LexLeanPreservation.InvList' does not depend on any axioms\n'LexLeanPreservation.InvList.eq_1' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.match_1' does not depend on any axioms\n'LexLeanPreservation.StrictAsc._f' does not depend on any axioms\n'LexLeanPreservation.StrictAsc' does not depend on any axioms\n'LexLeanPreservation.InvMap' does not depend on any axioms\n'LexLeanPreservation.validOption.match_1' does not depend on any axioms\n'LexLeanPreservation.InvOption' does not depend on any axioms\n'LexLeanPreservation.InvOption.eq_1' does not depend on any axioms\n'LexLeanPreservation.InvOption.eq_2' does not depend on any axioms\n'LexLeanPreservation.InvPair' does not depend on any axioms\n'LexLeanPreservation.InvSet' does not depend on any axioms\n'LexLeanPreservation.StrictAsc._sunfold' does not depend on any axioms\n'LexLeanPreservation.StrictAsc._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_1' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_2' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_3' does not depend on any axioms\n'LexLeanPreservation.StrictAsc.eq_def' does not depend on any axioms\n'LexLeanPreservation.Tpl.validListFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validMapFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validOptionFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validPairFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validResultFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validSetFn' does not depend on any axioms\n'LexLeanPreservation.Tpl.validTrueFn' does not depend on any axioms\n'LexLeanPreservation.ascMap.match_1' does not depend on any axioms\n'LexLeanPreservation.lessB.match_1' does not depend on any axioms\n'LexLeanPreservation.lessB' does not depend on any axioms\n'LexLeanPreservation.ascMap._f' does not depend on any axioms\n'LexLeanPreservation.ascMap' does not depend on any axioms\n'LexLeanPreservation.ascMap._sunfold' does not depend on any axioms\n'LexLeanPreservation.ascMap._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_1' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_2' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_3' does not depend on any axioms\n'LexLeanPreservation.ascMap.eq_def' does not depend on any axioms\n'LexLeanPreservation.ascMap_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.lessB_iff' depends on axioms: [propext]\n'LexLeanPreservation.ascMap_iff._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.ascMap_iff' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.ascMap_inv' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.ascSet._f' does not depend on any axioms\n'LexLeanPreservation.ascSet' does not depend on any axioms\n'LexLeanPreservation.ascSet._sunfold' does not depend on any axioms\n'LexLeanPreservation.ascSet._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_1' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_2' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_3' does not depend on any axioms\n'LexLeanPreservation.ascSet.eq_def' does not depend on any axioms\n'LexLeanPreservation.ascSet_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.ascSet_iff._f' depends on axioms: [propext]\n'LexLeanPreservation.ascSet_iff' depends on axioms: [propext]\n'LexLeanPreservation.ascSet_inv' depends on axioms: [propext]\n'LexLeanPreservation.condAnd_iff' depends on axioms: [propext]\n'LexLeanPreservation.invList_eqs.match_1_1' does not depend on any axioms\n'LexLeanPreservation.invList_eqs._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.invList_eqs' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.lessB.eq_1' does not depend on any axioms\n'LexLeanPreservation.lessB_eq' depends on axioms: [propext]\n'LexLeanPreservation.lessB_gt' depends on axioms: [propext]\n'LexLeanPreservation.lessB_lt' depends on axioms: [propext]\n'LexLeanPreservation.someObs.match_1' does not depend on any axioms\n'LexLeanPreservation.someObs' does not depend on any axioms\n'LexLeanPreservation.tpl_validList.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validList.match_1' does not depend on any axioms\n'LexLeanPreservation.validList._f' does not depend on any axioms\n'LexLeanPreservation.validList' does not depend on any axioms\n'LexLeanPreservation.tpl_validList' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validMap.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_validMap._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validMap' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validOption.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validOption' does not depend on any axioms\n'LexLeanPreservation.tpl_validOption' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validPair.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validPair' does not depend on any axioms\n'LexLeanPreservation.tpl_validPair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validResult.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validExcept' does not depend on any axioms\n'LexLeanPreservation.tpl_validResult' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validSet.match_1_1' does not depend on any axioms\n'LexLeanPreservation.tpl_validSet._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validSet' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.tpl_validTrue' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.trueIff' does not depend on any axioms\n'LexLeanPreservation.validExcept_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validExcept_inv' does not depend on any axioms\n'LexLeanPreservation.validList._sunfold' does not depend on any axioms\n'LexLeanPreservation.validList._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.validList.eq_1' does not depend on any axioms\n'LexLeanPreservation.validList.eq_2' does not depend on any axioms\n'LexLeanPreservation.validList.eq_def' does not depend on any axioms\n'LexLeanPreservation.validList_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validList_iff._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.validList_iff' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.validList_inv' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.validOption.eq_1' does not depend on any axioms\n'LexLeanPreservation.validOption.eq_2' does not depend on any axioms\n'LexLeanPreservation.validOption_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.validOption_inv' depends on axioms: [propext]\n'LexLeanPreservation.validPair_inv' depends on axioms: [propext]\n'LexLeanPreservation.validTrue_inv' does not depend on any axioms\n'LexLeanPreservation.Rust.Ctx' does not depend on any axioms\n'LexLeanPreservation.Rust.Flags' does not depend on any axioms\n'LexLeanPreservation.Rust.RCrate' does not depend on any axioms\n'LexLeanPreservation.Rust.RIdent' does not depend on any axioms\n'LexLeanPreservation.Rust.WT._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.adtFields' depends on axioms: [propext]\n'LexLeanTarget.TargetSyntax.IntKind.ofNat' does not depend on any axioms\n'LexLeanTarget.TargetSyntax.IntKind.ofNat_ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Rust.instDecidableEqIntKind_lexLeanPreservation._proof_1' does not depend on any axioms\n'LexLeanPreservation.Rust.instDecidableEqIntKind_lexLeanPreservation._proof_2' does not depend on any axioms\n'LexLeanPreservation.Rust.instDecidableEqIntKind_lexLeanPreservation' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flagOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fnIdent' does not depend on any axioms\n'LexLeanPreservation.Rust.fnFallible' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.inert._f' does not depend on any axioms\n'LexLeanPreservation.Rust.inert' does not depend on any axioms\n'LexLeanPreservation.Rust.WT._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.WTAll._f' does not depend on any axioms\n'LexLeanPreservation.Rust.WTL.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctxLookup.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup._f' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup' does not depend on any axioms\n'LexLeanPreservation.Rust.local_' does not depend on any axioms\n'LexLeanPreservation.Rust.EnvRel' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ROut' does not depend on any axioms\n'LexLeanPreservation.Rust.Halt' does not depend on any axioms\n'LexLeanPreservation.Rust.REnv' does not depend on any axioms\n'LexLeanPreservation.Rust.RExpr' does not depend on any axioms\n'LexLeanPreservation.Rust.RC' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RLet' does not depend on any axioms\n'LexLeanPreservation.Rust.LetsOK' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.append' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.below' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.below.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.brecOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsOK.recOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.append_left' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.append_right' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.below' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.below.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.brecOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.casesOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.LetsRaise.recOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RBlock' does not depend on any axioms\n'LexLeanPreservation.Rust.dispatched_ne' does not depend on any axioms\n'LexLeanPreservation.Rust.finished_ne' does not depend on any axioms\n'LexLeanPreservation.Rust.returned_ne' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_24' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_26' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_28' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_30' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_32' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_34' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_36' does not depend on any axioms\n'LexLeanPreservation.Rust.stable.match_1_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.eval.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_22' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.invoke.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.stable' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.reval_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCB' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.block' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCA' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.revalBlock_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCB.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCI' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.invoke_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCI.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCL' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.revalList_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RCL.at' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.WTAll' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.block_of_lets' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.block_of_raise' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.ctxLookup._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup_slot._simp_1_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotFree' does not depend on any axioms\n'LexLeanPreservation.Rust.ctxLookup_slot' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_cons_other' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sameIdent_self' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_cons_self' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sameIdent_local' depends on axioms: [propext]\n'LexLeanPreservation.Rust.envRel_bind' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.envRel_extra' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.envRel_ghost' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sameIdent_kind' depends on axioms: [propext]\n'LexLeanPreservation.Rust.envRel_temp' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.listIndex_eq.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.listIndex_eq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.listIndex_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.index_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.inert._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.inert._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_nil.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_raise_head.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcl_raise_head.match_1_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcl_raise_head' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_raise_tail' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.revalArms_le' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.slotFree.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sunfold' depends on axioms: [propext]\n'LexLeanTarget.RustSemantics.eval.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_18' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_20' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.eval.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalArms.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalBlock.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.evalList.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.invoke.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.invoke.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.kindNumber.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.kindNumber.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.lookup.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.lookup.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.lookup.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.sameIdent.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.lookup.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.lookup.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.lookup.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd' does not depend on any axioms\n'LexLeanPreservation.Rust.isTemp._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isTemp.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isTemp' depends on axioms: [propext]\n'LexLeanPreservation.Rust.letsBind.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds._f' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds._f' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind._f' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind' does not depend on any axioms\n'LexLeanPreservation.Rust.tempFresh' does not depend on any axioms\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.foldN.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.flatB._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep.match_7' does not depend on any axioms\n'LexLeanPreservation.Rust.foldStep' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldB' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats._f' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats' does not depend on any axioms\n'LexLeanPreservation.Rust.okBlock' does not depend on any axioms\n'LexLeanPreservation.Rust.partRead._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Kind.casesOn' does not depend on any axioms\n'LexLeanPreservation.Rust.elseCtx.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.elseCtx' does not depend on any axioms\n'LexLeanPreservation.Rust.elseLets.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.elseLets' does not depend on any axioms\n'LexLeanPreservation.Rust.heldOK.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.heldOK' does not depend on any axioms\n'LexLeanPreservation.Rust.negateR._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.negateR._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.negateR.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.negateR' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_5' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_7' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat.match_9' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identBoxed' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal' does not depend on any axioms\n'LexLeanPreservation.Rust.isWild._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.unboxOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotOK.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.directPat._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocal' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armShape.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.armShape' does not depend on any axioms\n'LexLeanPreservation.Rust.otherArms.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.otherArms' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.noClosure.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.noClosure._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh' depends on axioms: [propext]\n'LexLeanPreservation.Rust.covered' depends on axioms: [propext]\n'LexLeanPreservation.Rust.scrut' does not depend on any axioms\n'LexLeanPreservation.Rust.validU.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.validU' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotOK' does not depend on any axioms\n'LexLeanPreservation.Rust.ctorOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identsDistinct.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct._f' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct' does not depend on any axioms\n'LexLeanPreservation.Rust.litOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArg._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.match_6' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArg.match_8' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArg' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArgs._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildTail.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail.match_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildsArm.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildsArm' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.itemOK.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemOK' does not depend on any axioms\n'LexLeanPreservation.Rust.itemTyped.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemTyped.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf' does not depend on any axioms\n'LexLeanPreservation.Rust.itemTyped' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.match_9' does not depend on any axioms\n'LexLeanPreservation.Rust.isFixed._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped' depends on axioms: [propext]\n'LexLeanPreservation.Rust.primTyped' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.litValues._f' does not depend on any axioms\n'LexLeanPreservation.Rust.litValue' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.typedLitAll._f' does not depend on any axioms\n'LexLeanPreservation.Rust.typedLits.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Corr' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.below' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.below.casesOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.brecOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.casesOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Corr.recOn' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.FunOK' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.CrateOK' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.Fresh' does not depend on any axioms\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn' depends on axioms: [propext]\n'LexLeanPreservation.Rust.FunSem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Kind._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd._sizeOf_1' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd._sizeOf_inst' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.casesOn' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ctorElim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.b.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.b.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.e.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.e.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.k.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.k.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.l.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.l.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.m.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.m.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.ops.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Jd.ops.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Jd.recOn' does not depend on any axioms\n'LexLeanPreservation.Rust.KPre.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.KPre' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Kind.ctorElimType' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.ctorIdx' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.ctorElim' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.noConfusionType' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.noConfusion' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.inj' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.nat.injEq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Kind.nat.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.plain.elim' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.plain.sizeOf_spec' does not depend on any axioms\n'LexLeanPreservation.Rust.Kind.recOn' does not depend on any axioms\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesM.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.RealizesM' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Sem.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.viewVal._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Sem' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WT.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTAll.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.foldN._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identsDistinct._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_10' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_11' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_12' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_13' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_14' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_6' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_7' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_8' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.inert.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.litValues' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue._sunfold' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.litValue._unsafe_rec' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues._sunfold' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.paramCtx._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patsBinds' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.patLocals._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patsBinds._sunfold' does not depend on any axioms\n'LexLeanPreservation.Rust.rebuildArgs._sunfold' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs._unsafe_rec' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.typedLitAll' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.typedLits._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_of_inert.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_of_inert.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_of_inert._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_of_inert' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_of_inert._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_of_inert' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Halt.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.LetsRaise.halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.block_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.RC.boxed' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Realizes.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesF.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesFn.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesL.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesM.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RealizesM.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.WTL.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_bytes_inv' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_list_inv' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_string_inv' depends on axioms: [propext]\n'LexLeanPreservation.Rust.takes_of_typed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.allWidth_of.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_eq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_eq._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.tysBeq_eq.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq_eq._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.wt_fixed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.allWidth_of._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.allWidth_of' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.width_of_typed.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.width_of_typed.match_3' does not depend on any axioms\n'LexLeanPreservation.Rust.width_of_typed.match_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.width_of_typed' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.accepts_of_typed' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_apply' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtl_append.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_append._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_append' depends on axioms: [propext]\n'LexLeanPreservation.Rust.apply_result' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.bindPattern_shape.match_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.bindPattern_shape._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.bindPatterns_shape._simp_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindPatterns_shape.match_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.bindPatterns_shape._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.bindPattern_shape' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.bindPatterns_shape' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boolArms_spec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_4' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_6' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._proof_1_7' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.evalArms_find' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.boolArms_eval' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.boxWith.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxWith.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.elemOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.buildShape.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_100' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_102' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_96' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound.match_1_98' depends on axioms: [propext]\n'LexLeanPreservation.Rust.build_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_function' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.call_result' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.constShape.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.const_sound' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.convert_args.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.convert_args' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_append_fresh' depends on axioms: [propext]\n'LexLeanPreservation.Rust.envRel_fresh' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_not._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_cond.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.itemResult.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.eval_match' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fixedTyped.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_18' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_19' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_20' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_21' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_22' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_23' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_24' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_25' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_26' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_27' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_28' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_29' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_30' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_31' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_32' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_33' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_34' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_35' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_36' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_37' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_38' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_39' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_40' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_41' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_42' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_43' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_44' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_45' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_46' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_47' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_48' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_49' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_50' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_51' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_52' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_53' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_54' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_55' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_56' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_57' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_58' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_59' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_60' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_61' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fixedTyped.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.flatB.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN_sound.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.split_last.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.split_last._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.split_last' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep_spec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcb_nil_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv.match_1_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_nomatch.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcb_cons_nomatch' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_stop' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_cons_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_prefix' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_flat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_read_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_cons_same' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rcb_fold_last' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldStep_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldN_sound._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldN_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldB_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.foldN.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldN.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_append' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_bind._simp_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_bind' depends on axioms: [propext]\n'LexLeanPreservation.Rust.slotFree_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_weaken' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_elseCtx' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_temp._simp_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_temp' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fromStrings_wt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fromStrings_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fromStrings_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.haltL.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.hasWidth_i16' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_i32' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_i64' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_i8' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u16' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u32' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u64' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.hasWidth_u8' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.heldOK.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.heldOK.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.isFixed._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isFixed_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.isSeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isSeq_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.isTemp._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.itemOK.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemOperands_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.itemResult' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.itemResult.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.kpre_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_pred._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_pred.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_pred' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.kpre_else' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.kpre_then' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_of_lets' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_b_rcb' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.k_branch' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_cond_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_isZero_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_lit_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate_halt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_negate_halt.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_nonZero_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_23' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_25' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_27' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_29' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_31' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_33' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_35' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_37' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_39' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_41' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_43' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_45' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_47' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_49' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_51' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not.match_1_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_not_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_not_inv.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_not_inv.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_not_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.k_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_read.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_read' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.kpre_held' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.letsBind.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.letsBind.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.letsOK_nil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.letsOK_shape' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.litValue._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litValue.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_4' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_def' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValue.eq_5' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.litValues.eq_def' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.lit_branch' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.lookup_through._simp_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.lookup_through' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms_spec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.natArms_eval' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.obsL_evalList_zero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.obs_eval_zero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.oneOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.oneOf_halt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.param_env.match_1_1' depends on axioms: [propext]\n'LexLeanTarget.TargetSemantics.bindAll.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.param_env._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.param_env' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.patBinds.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_10' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_6' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_7' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_8' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.patBinds.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.patsBinds.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.primTyped.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_apply_halt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_apply_halt.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_apply_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_call_halt.match_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_call_runtime' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_construct' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct_halt.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct_halt.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_construct_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_isZero.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_isZero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_lit.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_lit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue._simp_10' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue._simp_9' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue.match_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rc_pair.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_pair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_litValues.match_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rcl_litValues._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_litValue' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_nonZero.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_nonZero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_negate' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_pair_halt_left' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_pair_halt_right' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed.match_1_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_succeed' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_widen.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rc_widen' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_widen_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_boxWith.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_11' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_7' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_cons_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_boxWith' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_litValues' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_nil_inv' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_single_halt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_single_halt.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.rcl_single_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_widen_one' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.readOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.readOf.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizesL_halt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizesL_haltL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizes_halt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizesM_overflow' depends on axioms: [propext]\n'LexLeanPreservation.Rust.realizes_oneOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.runItem_eq' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.runItem_succ' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_applyGen.match_1_13' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen.match_1_15' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen.match_1_28' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_applyGen' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_apply' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_applyF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_bOfE' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_build.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_build.match_1_99' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_build' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildConst' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildPair.match_1_101' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_97' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair.match_1_99' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildPair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildSucc.match_1_129' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSucc.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSucc' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_buildSuccF.match_1_101' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSuccF.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_buildSuccF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_callF.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callF.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_callOps.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callOps.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_callOps' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_closure.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_closure.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.wtl_length.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_length._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_length' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_closure' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_cond.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_cond.match_1_11' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_cond' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_condId.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_condId' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_eOfB' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_eOfBFold' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_eOfBNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_fOfB' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_unit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_fUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kHeld' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kLit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kId' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kIf' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kNeg' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_kSame' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_lCons.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons.match_1_17' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons.match_1_19' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_lCons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_lNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_letBind.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letBind.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letBind' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_letWild.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letWild.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_letWild' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBool._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchHolder.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchHolder.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchHolder' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBool' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBoolId._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchBoolId.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchBoolId' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchNat._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchNat' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchUnit._proof_1_386' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchUnit.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchUnit.match_1_387' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsCons._simp_1_13' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsCons.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons.match_1_14' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons.match_1_16' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsCons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsOfL' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_29' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit.match_1_31' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_opsUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_ops_box.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_ops_box.match_1_3' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_ops_box.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_ops_box' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_part._sparseCasesOn_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_part.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_part.match_1_14' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_part.match_1_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_part' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_part._sparseCasesOn_1_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_prim.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_prim.match_1_38' does not depend on any axioms\n'LexLeanPreservation.Rust.wtAll_iff.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wtAll_iff._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.wtAll_iff' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_def' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_append' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_bitwise' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_checked' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_convert' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_decode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_encode' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_fixedTyped.match_1_67' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_format' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_index' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_join' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_parse' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_shift' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.slice_eq' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_slice' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_split' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_unary' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtl_one.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_one' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_three.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_three' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_two.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_two' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_fixedTyped' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wt_prim' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_prim' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_primF.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF.match_1_5' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF.match_1_7' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF.match_1_9' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primF' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_primWiden.match_1_108' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_110' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_112' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_114' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_116' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_primWiden' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.typedLitAll_wt.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit_wt.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits_wt.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits_wt._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_var' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_varUnit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_zero' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.shapeOf.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_10' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_11' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_12' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_13' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_14' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_5' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_6' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_7' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_8' does not depend on any axioms\n'LexLeanPreservation.Rust.shapeOf.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.tempFresh.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_12.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_13.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_14.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLit.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLitAll_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.typedLits_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tysBeq_eq' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.allWidth.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.allWidth.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.allWidth.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_100' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_101' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_102' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_103' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_104' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_105' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_106' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_107' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_108' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_109' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_110' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_111' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_112' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_113' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_114' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_115' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_116' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_117' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_118' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_119' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_120' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_121' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_122' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_123' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_124' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_125' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_126' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_127' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_128' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_129' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_130' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_131' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_132' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_133' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_134' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_135' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_136' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_137' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_138' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_139' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_140' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_141' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_142' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_143' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_144' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_145' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_146' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_147' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_148' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_149' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_150' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_151' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_152' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_153' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_154' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_155' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_156' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_157' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_158' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_159' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_160' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_161' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_162' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_163' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_164' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_165' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_166' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_167' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_168' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_169' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_170' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_171' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_172' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_173' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_174' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_175' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_176' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_177' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_178' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_179' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_180' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_181' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_182' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_183' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_184' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_185' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_186' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_51' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_52' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_53' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_54' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_55' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_56' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_57' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_58' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_59' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_60' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_61' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_62' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_63' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_64' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_65' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_66' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_67' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_68' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_69' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_70' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_71' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_72' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_73' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_74' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_75' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_76' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_77' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_78' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_79' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_80' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_81' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_82' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_83' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_84' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_85' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_86' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_87' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_88' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_89' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_90' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_91' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_92' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_93' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_94' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_95' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_96' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_97' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_98' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_99' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPattern.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.bindPatterns.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.dispatched.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_100' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_101' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_102' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_103' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_104' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_105' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_106' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_107' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_108' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_109' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_110' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_111' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_112' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_113' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_114' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_115' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_116' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_117' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_118' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_119' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_120' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_121' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_122' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_123' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_124' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_125' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_126' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_127' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_128' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_129' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_130' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_131' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_132' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_133' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_134' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_135' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_136' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_137' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_138' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_139' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_140' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_141' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_142' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_143' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_144' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_145' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_146' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_147' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_148' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_149' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_150' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_151' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_152' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_153' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_154' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_155' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_156' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_157' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_158' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_159' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_160' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_161' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_162' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_163' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_164' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_165' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_166' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_167' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_168' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_169' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_170' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_171' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_172' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_173' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_174' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_175' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_176' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_177' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_178' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_179' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_180' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_181' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_182' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_183' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_184' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_51' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_52' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_53' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_54' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_55' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_56' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_57' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_58' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_59' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_60' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_61' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_62' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_63' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_64' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_65' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_66' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_67' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_68' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_69' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_70' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_71' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_72' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_73' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_74' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_75' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_76' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_77' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_78' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_79' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_80' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_81' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_82' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_83' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_84' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_85' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_86' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_87' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_88' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_89' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_90' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_91' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_92' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_93' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_94' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_95' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_96' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_97' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_98' does not depend on any axioms\n'LexLeanTarget.RustSemantics.hasWidth.eq_99' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isBytes.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isList.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.isString.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemAccepts.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemAccepts.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemFallible.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemHeap.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemOperands.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemPrimitive.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemTakes.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_28' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_29' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_30' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_31' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_32' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_33' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_34' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_35' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_36' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_37' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_38' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_39' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_40' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_41' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_42' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_43' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_44' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_45' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_46' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_47' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_48' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_49' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_50' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.itemWidth.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.literal.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_10' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_11' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_12' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_13' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_14' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_15' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_3' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_4' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_5' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_6' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_7' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_8' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.literal.eq_9' depends on axioms: [propext, Quot.sound]\n'LexLeanTarget.RustSemantics.propagated.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_10' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_11' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_12' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_13' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_14' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_15' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_16' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_17' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_18' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_19' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_20' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_21' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_22' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_23' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_24' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_25' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_26' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_27' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_5' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_6' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_7' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_8' does not depend on any axioms\n'LexLeanTarget.RustSemantics.propagated.eq_9' does not depend on any axioms\n'LexLeanTarget.RustSemantics.returned.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.bindAll.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_10' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_11' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_12' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_13' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_14' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_15' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_16' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_17' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_18' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_19' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_20' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_21' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_22' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_23' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_24' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_25' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_26' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_27' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_28' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_29' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_30' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_31' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_32' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_33' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_34' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_35' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_36' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_37' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_38' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_39' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_40' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_41' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_42' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_43' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_44' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_45' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_46' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_47' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_48' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_49' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_5' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_50' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_51' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_52' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_53' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_54' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_55' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_56' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_57' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_58' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_59' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_6' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_60' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_61' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_62' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_63' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_64' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_65' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_66' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_67' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_68' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_69' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_7' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_70' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_71' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_72' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_73' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_74' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_75' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_76' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_77' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_78' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_79' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_8' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_80' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_81' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_82' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_83' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.construct.eq_9' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_10' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_100' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_101' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_102' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_103' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_104' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_105' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_106' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_107' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_108' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_109' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_11' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_110' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_111' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_112' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_113' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_114' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_115' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_116' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_117' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_118' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_119' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_12' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_120' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_121' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_122' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_123' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_124' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_125' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_126' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_127' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_128' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_129' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_13' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_130' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_131' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_132' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_133' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_134' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_135' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_136' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_137' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_138' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_139' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_14' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_140' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_141' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_142' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_143' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_144' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_145' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_146' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_147' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_148' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_149' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_15' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_150' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_151' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_152' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_153' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_154' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_155' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_156' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_157' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_158' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_159' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_16' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_160' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_161' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_162' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_163' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_164' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_165' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_166' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_167' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_168' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_169' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_17' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_170' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_171' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_172' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_173' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_174' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_175' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_176' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_177' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_178' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_179' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_18' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_180' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_181' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_182' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_183' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_184' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_185' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_186' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_187' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_188' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_189' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_19' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_190' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_191' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_192' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_193' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_194' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_195' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_196' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_197' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_198' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_199' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_20' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_200' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_201' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_202' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_203' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_204' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_205' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_206' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_207' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_208' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_209' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_21' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_210' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_211' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_212' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_213' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_214' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_215' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_216' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_217' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_218' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_219' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_22' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_220' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_221' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_222' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_223' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_224' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_225' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_226' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_227' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_228' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_229' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_23' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_230' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_231' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_232' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_233' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_234' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_235' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_236' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_237' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_238' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_239' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_24' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_240' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_241' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_242' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_243' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_244' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_245' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_246' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_247' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_248' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_249' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_25' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_250' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_251' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_252' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_253' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_254' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_255' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_256' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_257' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_258' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_259' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_26' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_260' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_261' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_262' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_263' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_264' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_265' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_266' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_267' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_268' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_269' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_27' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_270' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_271' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_272' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_273' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_274' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_275' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_276' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_277' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_278' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_279' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_28' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_280' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_281' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_282' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_283' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_284' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_285' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_286' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_287' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_288' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_289' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_29' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_290' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_291' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_292' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_293' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_294' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_295' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_296' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_297' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_298' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_299' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_30' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_300' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_301' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_302' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_303' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_304' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_305' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_306' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_307' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_308' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_309' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_31' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_310' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_311' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_312' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_313' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_314' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_315' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_316' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_317' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_318' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_319' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_32' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_320' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_321' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_322' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_323' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_324' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_325' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_326' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_327' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_328' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_329' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_33' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_330' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_331' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_332' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_333' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_334' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_335' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_336' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_337' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_338' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_339' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_34' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_340' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_341' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_342' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_343' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_344' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_345' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_346' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_347' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_348' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_349' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_35' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_350' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_351' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_352' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_353' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_354' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_355' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_356' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_357' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_358' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_359' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_36' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_360' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_361' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_362' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_363' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_364' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_365' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_366' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_367' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_368' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_369' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_37' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_370' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_38' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_39' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_40' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_41' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_42' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_43' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_44' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_45' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_46' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_47' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_48' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_49' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_5' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_50' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_51' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_52' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_53' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_54' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_55' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_56' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_57' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_58' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_59' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_6' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_60' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_61' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_62' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_63' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_64' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_65' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_66' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_67' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_68' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_69' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_7' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_70' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_71' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_72' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_73' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_74' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_75' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_76' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_77' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_78' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_79' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_8' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_80' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_81' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_82' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_83' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_84' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_85' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_86' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_87' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_88' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_89' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_9' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_90' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_91' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_92' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_93' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_94' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_95' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_96' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_97' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_98' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.destruct.eq_99' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromStrings.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromStrings.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.fromStrings.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.primitive.eq_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_10' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1000' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1001' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1002' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1003' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1004' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1005' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1006' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1007' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1008' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1009' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1010' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1011' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1012' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1013' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1014' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1015' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1016' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1017' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1018' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1019' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1020' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1021' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1022' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1023' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1024' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1025' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1026' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1027' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1028' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1029' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1030' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1031' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1032' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1033' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1034' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1035' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1036' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1037' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1038' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1039' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1040' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1041' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1042' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1043' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1044' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1045' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1046' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1047' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1048' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1049' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1050' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1051' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1052' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1053' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1054' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1055' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1056' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1057' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1058' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1059' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1060' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1061' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1062' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1063' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1064' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1065' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1066' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1067' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1068' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1069' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1070' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1071' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1072' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1073' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1074' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1075' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1076' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1077' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1078' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1079' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1080' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1081' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1082' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1083' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1084' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1085' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1086' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1087' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1088' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1089' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1090' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1091' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1092' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1093' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1094' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1095' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1096' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1097' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1098' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1099' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_11' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_12' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_13' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_14' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1426' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1427' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1428' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1429' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1430' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1431' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1432' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1433' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1434' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1435' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1436' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1437' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1438' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1439' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1440' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1441' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1442' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1443' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1444' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1445' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1446' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1447' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1448' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1449' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1450' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1451' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1452' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1453' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1454' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1455' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1456' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1457' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1458' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1459' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1460' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1461' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1462' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1463' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1464' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1465' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1466' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1467' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1468' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1469' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1470' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1471' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1472' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1473' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1474' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1475' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1476' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1477' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1478' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1479' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1480' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1481' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1482' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1483' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1484' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1485' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1486' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1487' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1488' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1489' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1490' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1491' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1492' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1493' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1494' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1495' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1496' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1497' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1498' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1499' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_15' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1500' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1501' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1502' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1503' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1504' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1505' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1506' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1507' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1508' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1509' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1510' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1511' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1512' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1513' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1514' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1515' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1516' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1517' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1518' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1519' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1520' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1521' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1522' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1523' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1524' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1525' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1526' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1527' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1528' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1529' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1530' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1531' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1532' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1533' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1534' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1535' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1536' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1537' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1538' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1539' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1540' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1541' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1542' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1543' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1544' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1545' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1546' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1547' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1548' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1549' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1550' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1551' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1552' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1553' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1554' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1555' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1556' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1557' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1558' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1559' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1560' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1561' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1562' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1563' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1564' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1565' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1566' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1567' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1568' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1569' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1570' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1571' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1572' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1573' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1574' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1575' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1576' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1577' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1578' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1579' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1580' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1581' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1582' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1583' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1584' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1585' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1586' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1587' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1588' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1589' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1590' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1591' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1592' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1593' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1594' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1595' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1596' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1597' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1598' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1599' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_16' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1600' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1601' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1602' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1603' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1604' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1605' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1606' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1607' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1608' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1609' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1610' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1611' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1612' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1613' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1614' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1615' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1616' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1617' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1618' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1619' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1620' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1621' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1622' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1623' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1624' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1625' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1626' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1627' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1628' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1629' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1630' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1631' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1632' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1633' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1634' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1635' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1636' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1637' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1638' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1639' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1640' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1641' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1642' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1643' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1644' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1645' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1646' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1647' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1648' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1649' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1650' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1651' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1652' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1653' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1654' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1655' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1656' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1657' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1658' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1659' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1660' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1661' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1662' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1663' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1664' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1665' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1666' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1667' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1668' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1669' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1670' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1671' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1672' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1673' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1674' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1675' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1676' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1677' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1678' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1679' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1680' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1681' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1682' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1683' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1684' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1685' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1686' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1687' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1688' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1689' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1690' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1691' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1692' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1693' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1694' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1695' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1696' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1697' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1698' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1699' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_17' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1700' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1701' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1702' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1703' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1704' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1705' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1706' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1707' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1708' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1709' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1710' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1711' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1712' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1713' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1714' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1715' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1716' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1717' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1718' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1719' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1720' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1721' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1722' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1723' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1724' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1725' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1726' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1727' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1728' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1729' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1730' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1731' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1732' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1733' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1734' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1735' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1736' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1737' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1738' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1739' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1740' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1741' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1742' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1743' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1744' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1745' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1746' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1747' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1748' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1749' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1750' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1751' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1752' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1753' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1754' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1755' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1756' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1757' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1758' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1759' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1760' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1761' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1762' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1763' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1764' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1765' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1766' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1767' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1768' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1769' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1770' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1771' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1772' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1773' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1774' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1775' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1776' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1777' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1778' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1779' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1780' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1781' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1782' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1783' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1784' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1785' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1786' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1787' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1788' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1789' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1790' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1791' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1792' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1793' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1794' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1795' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1796' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1797' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1798' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1799' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_18' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1800' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1801' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1802' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1803' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1804' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1805' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1806' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1807' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1808' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1809' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1810' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1811' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1812' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1813' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1814' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1815' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1816' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1817' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1818' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1819' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1820' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1821' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1822' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1823' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1824' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1825' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1826' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1827' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1828' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1829' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1830' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1831' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1832' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1833' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1834' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1835' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1836' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1837' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1838' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1839' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1840' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1841' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1842' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1843' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1844' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1845' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1846' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1847' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1848' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1849' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1850' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1851' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1852' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1853' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1854' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1855' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1856' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1857' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1858' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1859' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1860' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1861' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1862' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1863' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1864' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1865' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1866' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1867' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1868' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1869' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1870' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1871' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1872' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1873' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1874' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1875' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1876' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1877' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1878' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1879' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1880' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1881' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1882' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1883' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1884' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1885' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1886' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1887' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1888' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1889' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1890' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1891' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1892' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1893' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1894' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1895' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1896' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1897' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1898' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1899' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_19' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1900' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1901' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1902' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1903' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1904' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1905' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1906' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1907' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1908' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1909' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1910' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1911' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1912' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1913' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1914' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1915' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1916' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1917' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1918' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1919' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1920' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1921' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1922' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1923' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1924' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1925' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1926' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1927' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1928' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1929' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1930' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1931' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1932' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1933' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1934' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1935' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1936' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1937' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1938' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1939' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1940' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1941' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1942' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1943' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1944' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1945' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1946' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1947' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1948' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1949' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1950' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1951' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1952' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1953' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1954' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1955' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1956' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1957' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1958' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1959' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1960' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1961' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1962' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1963' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1964' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1965' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1966' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1967' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1968' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1969' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1970' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1971' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1972' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1973' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1974' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1975' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1976' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1977' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1978' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1979' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1980' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1981' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1982' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1983' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1984' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1985' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1986' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1987' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1988' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1989' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1990' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1991' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1992' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1993' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1994' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1995' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1996' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1997' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1998' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_1999' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_20' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2000' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2001' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2002' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2003' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2004' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2005' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2006' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2007' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2008' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2009' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2010' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2011' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2012' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2013' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2014' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2015' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2016' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2017' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2018' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2019' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2020' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2021' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2022' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2023' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2024' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2025' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2026' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2027' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2028' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2029' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2030' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2031' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2032' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2033' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2034' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2035' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2036' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2037' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2038' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2039' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2040' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2041' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2042' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2043' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2044' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2045' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2046' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2047' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2048' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2049' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2050' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2051' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2052' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2053' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2054' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2055' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2056' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2057' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2058' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2059' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2060' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2061' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2062' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2063' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2064' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2065' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2066' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2067' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2068' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2069' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2070' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2071' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2072' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2073' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2074' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2075' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2076' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2077' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2078' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2079' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2080' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2081' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2082' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2083' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2084' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2085' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2086' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2087' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2088' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2089' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2090' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2091' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2092' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2093' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2094' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2095' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2096' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2097' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2098' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2099' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_21' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_22' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_23' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_24' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2426' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2427' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2428' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2429' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2430' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2431' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2432' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2433' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2434' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2435' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2436' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2437' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2438' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2439' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2440' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2441' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2442' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2443' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2444' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2445' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2446' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2447' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2448' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2449' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2450' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2451' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2452' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2453' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2454' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2455' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2456' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2457' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2458' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2459' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2460' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2461' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2462' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2463' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2464' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2465' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2466' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2467' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2468' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2469' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2470' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2471' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2472' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2473' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2474' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2475' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2476' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2477' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2478' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2479' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2480' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2481' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2482' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2483' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2484' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2485' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2486' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2487' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2488' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2489' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2490' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2491' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2492' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2493' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2494' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2495' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2496' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2497' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2498' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2499' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_25' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2500' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2501' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2502' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2503' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2504' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2505' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2506' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2507' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2508' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2509' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2510' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2511' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2512' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2513' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2514' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2515' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2516' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2517' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2518' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2519' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2520' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2521' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2522' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2523' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2524' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2525' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2526' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2527' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2528' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2529' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2530' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2531' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2532' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2533' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2534' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2535' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2536' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2537' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2538' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2539' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2540' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2541' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2542' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2543' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2544' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2545' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2546' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2547' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2548' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2549' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2550' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2551' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2552' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2553' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2554' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2555' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2556' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2557' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2558' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2559' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2560' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2561' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2562' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2563' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2564' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2565' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2566' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2567' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2568' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2569' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2570' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2571' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2572' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2573' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2574' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2575' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2576' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2577' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2578' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2579' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2580' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2581' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2582' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2583' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2584' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2585' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2586' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2587' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2588' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2589' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2590' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2591' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2592' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2593' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2594' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2595' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2596' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2597' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2598' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2599' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_26' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2600' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2601' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2602' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2603' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2604' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2605' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2606' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2607' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2608' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2609' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2610' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2611' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2612' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2613' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2614' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2615' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2616' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2617' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2618' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2619' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2620' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2621' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2622' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2623' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2624' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2625' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2626' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2627' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2628' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2629' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2630' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2631' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2632' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2633' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2634' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2635' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2636' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2637' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2638' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2639' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2640' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2641' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2642' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2643' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2644' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2645' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2646' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2647' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2648' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2649' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2650' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2651' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2652' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2653' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2654' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2655' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2656' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2657' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2658' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2659' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2660' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2661' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2662' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2663' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2664' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2665' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2666' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2667' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2668' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2669' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2670' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2671' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2672' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2673' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2674' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2675' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2676' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2677' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2678' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2679' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2680' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2681' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2682' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2683' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2684' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2685' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2686' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2687' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2688' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2689' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2690' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2691' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2692' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2693' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2694' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2695' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2696' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2697' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2698' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2699' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_27' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2700' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2701' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2702' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2703' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2704' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2705' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2706' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2707' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2708' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2709' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2710' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2711' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2712' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2713' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2714' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2715' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2716' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2717' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2718' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2719' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2720' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2721' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2722' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2723' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2724' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2725' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2726' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2727' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2728' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2729' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2730' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2731' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2732' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2733' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2734' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2735' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2736' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2737' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2738' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2739' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2740' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2741' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2742' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2743' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2744' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2745' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2746' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2747' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2748' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2749' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2750' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2751' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2752' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2753' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2754' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2755' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2756' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2757' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2758' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2759' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2760' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2761' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2762' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2763' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2764' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2765' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2766' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2767' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2768' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2769' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2770' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2771' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2772' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2773' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2774' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2775' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2776' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2777' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2778' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2779' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2780' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2781' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2782' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2783' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2784' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2785' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2786' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2787' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2788' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2789' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2790' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2791' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2792' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2793' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2794' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2795' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2796' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2797' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2798' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2799' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_28' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2800' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2801' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2802' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2803' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2804' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2805' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2806' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2807' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2808' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2809' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2810' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2811' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2812' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2813' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2814' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2815' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2816' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2817' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2818' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2819' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2820' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2821' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2822' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2823' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2824' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2825' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2826' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2827' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2828' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2829' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2830' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2831' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2832' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2833' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2834' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2835' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2836' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2837' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2838' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2839' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2840' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2841' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2842' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2843' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2844' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2845' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2846' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2847' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2848' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2849' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2850' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2851' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2852' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2853' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2854' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2855' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2856' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2857' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2858' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2859' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2860' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2861' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2862' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2863' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2864' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2865' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2866' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2867' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2868' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2869' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2870' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2871' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2872' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2873' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2874' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2875' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2876' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2877' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2878' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2879' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2880' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2881' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2882' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2883' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2884' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2885' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2886' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2887' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2888' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2889' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2890' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2891' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2892' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2893' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2894' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2895' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2896' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2897' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2898' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2899' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_29' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2900' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2901' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2902' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2903' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2904' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2905' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2906' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2907' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2908' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2909' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2910' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2911' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2912' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2913' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2914' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2915' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2916' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2917' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2918' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2919' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2920' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2921' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2922' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2923' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2924' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2925' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2926' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2927' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2928' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2929' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2930' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2931' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2932' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2933' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2934' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2935' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2936' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2937' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2938' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2939' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2940' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2941' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2942' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2943' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2944' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2945' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2946' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2947' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2948' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2949' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2950' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2951' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2952' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2953' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2954' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2955' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2956' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2957' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2958' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2959' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2960' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2961' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2962' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2963' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2964' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2965' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2966' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2967' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2968' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2969' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2970' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2971' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2972' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2973' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2974' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2975' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2976' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2977' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2978' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2979' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2980' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2981' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2982' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2983' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2984' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2985' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2986' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2987' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2988' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2989' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2990' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2991' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2992' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2993' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2994' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2995' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2996' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2997' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2998' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_2999' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_30' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3000' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3001' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3002' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3003' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3004' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3005' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3006' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3007' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3008' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3009' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3010' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3011' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3012' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3013' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3014' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3015' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3016' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3017' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3018' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3019' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3020' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3021' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3022' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3023' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3024' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3025' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3026' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3027' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3028' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3029' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3030' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3031' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3032' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3033' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3034' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3035' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3036' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3037' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3038' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3039' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3040' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3041' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3042' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3043' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3044' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3045' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3046' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3047' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3048' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3049' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3050' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3051' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3052' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3053' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3054' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3055' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3056' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3057' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3058' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3059' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3060' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3061' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3062' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3063' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3064' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3065' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3066' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3067' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3068' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3069' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3070' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3071' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3072' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3073' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3074' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3075' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3076' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3077' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3078' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3079' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3080' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3081' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3082' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3083' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3084' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3085' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3086' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3087' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3088' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3089' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3090' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3091' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3092' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3093' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3094' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3095' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3096' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3097' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3098' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3099' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_31' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3100' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3101' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3102' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3103' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3104' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3105' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3106' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3107' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3108' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3109' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3110' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3111' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3112' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3113' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3114' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3115' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3116' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3117' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3118' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3119' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3120' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3121' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3122' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3123' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3124' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3125' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3126' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3127' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3128' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3129' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3130' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3131' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3132' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3133' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3134' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3135' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3136' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3137' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3138' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3139' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3140' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3141' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3142' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3143' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3144' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3145' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3146' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3147' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3148' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3149' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3150' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3151' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3152' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3153' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3154' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3155' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3156' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3157' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3158' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3159' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3160' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3161' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3162' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3163' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3164' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3165' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3166' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3167' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3168' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3169' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3170' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3171' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3172' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3173' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3174' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3175' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3176' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3177' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3178' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3179' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3180' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3181' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3182' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3183' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3184' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3185' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3186' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3187' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3188' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3189' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3190' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3191' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3192' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3193' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3194' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3195' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3196' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3197' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3198' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3199' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_32' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3200' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3201' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3202' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3203' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3204' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3205' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3206' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3207' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3208' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3209' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3210' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3211' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3212' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3213' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3214' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3215' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3216' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3217' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3218' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3219' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3220' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3221' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3222' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3223' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3224' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3225' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3226' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3227' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3228' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3229' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3230' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3231' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3232' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3233' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3234' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3235' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3236' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3237' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3238' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3239' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3240' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3241' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3242' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3243' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3244' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3245' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3246' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3247' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3248' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3249' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3250' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3251' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3252' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3253' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3254' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3255' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3256' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3257' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3258' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3259' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3260' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3261' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3262' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3263' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3264' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3265' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3266' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3267' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3268' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3269' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3270' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3271' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3272' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3273' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3274' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3275' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3276' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3277' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3278' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3279' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3280' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3281' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3282' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3283' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3284' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3285' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3286' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3287' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3288' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3289' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3290' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3291' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3292' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3293' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3294' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3295' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3296' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3297' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3298' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3299' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_33' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3300' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3301' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3302' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3303' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3304' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3305' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3306' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3307' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3308' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3309' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3310' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3311' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3312' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3313' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3314' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3315' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3316' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3317' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3318' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3319' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3320' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3321' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3322' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3323' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3324' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3325' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3326' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3327' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3328' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3329' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3330' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3331' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3332' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3333' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_334' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_335' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_336' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_337' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_338' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_339' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_34' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_340' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_341' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_342' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_3425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_343' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_344' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_345' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_346' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_347' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_348' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_349' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_35' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_350' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_351' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_352' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_353' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_354' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_355' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_356' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_357' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_358' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_359' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_36' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_360' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_361' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_362' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_363' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_364' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_365' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_366' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_367' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_368' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_369' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_37' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_370' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_371' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_372' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_373' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_374' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_375' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_376' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_377' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_378' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_379' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_38' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_380' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_381' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_382' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_383' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_384' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_385' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_386' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_387' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_388' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_389' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_39' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_390' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_391' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_392' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_393' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_394' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_395' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_396' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_397' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_398' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_399' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_4' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_40' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_400' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_401' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_402' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_403' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_404' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_405' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_406' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_407' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_408' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_409' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_41' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_410' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_411' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_412' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_413' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_414' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_415' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_416' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_417' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_418' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_419' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_42' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_420' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_421' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_422' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_423' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_424' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_425' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_426' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_427' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_428' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_429' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_43' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_430' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_431' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_432' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_433' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_434' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_435' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_436' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_437' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_438' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_439' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_44' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_440' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_441' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_442' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_443' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_444' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_445' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_446' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_447' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_448' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_449' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_45' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_450' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_451' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_452' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_453' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_454' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_455' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_456' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_457' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_458' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_459' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_46' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_460' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_461' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_462' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_463' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_464' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_465' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_466' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_467' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_468' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_469' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_47' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_470' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_471' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_472' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_473' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_474' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_475' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_476' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_477' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_478' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_479' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_48' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_480' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_481' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_482' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_483' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_484' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_485' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_486' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_487' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_488' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_489' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_49' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_490' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_491' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_492' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_493' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_494' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_495' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_496' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_497' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_498' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_499' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_5' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_50' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_500' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_501' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_502' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_503' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_504' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_505' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_506' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_507' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_508' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_509' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_51' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_510' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_511' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_512' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_513' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_514' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_515' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_516' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_517' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_518' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_519' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_52' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_520' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_521' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_522' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_523' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_524' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_525' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_526' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_527' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_528' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_529' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_53' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_530' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_531' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_532' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_533' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_534' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_535' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_536' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_537' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_538' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_539' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_54' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_540' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_541' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_542' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_543' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_544' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_545' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_546' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_547' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_548' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_549' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_55' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_550' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_551' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_552' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_553' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_554' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_555' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_556' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_557' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_558' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_559' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_56' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_560' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_561' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_562' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_563' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_564' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_565' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_566' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_567' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_568' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_569' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_57' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_570' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_571' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_572' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_573' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_574' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_575' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_576' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_577' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_578' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_579' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_58' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_580' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_581' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_582' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_583' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_584' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_585' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_586' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_587' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_588' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_589' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_59' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_590' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_591' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_592' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_593' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_594' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_595' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_596' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_597' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_598' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_599' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_6' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_60' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_600' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_601' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_602' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_603' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_604' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_605' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_606' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_607' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_608' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_609' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_61' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_610' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_611' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_612' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_613' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_614' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_615' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_616' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_617' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_618' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_619' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_62' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_620' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_621' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_622' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_623' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_624' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_625' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_626' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_627' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_628' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_629' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_63' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_630' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_631' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_632' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_633' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_634' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_635' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_636' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_637' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_638' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_639' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_64' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_640' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_641' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_642' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_643' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_644' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_645' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_646' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_647' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_648' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_649' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_65' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_650' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_651' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_652' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_653' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_654' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_655' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_656' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_657' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_658' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_659' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_66' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_660' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_661' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_662' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_663' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_664' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_665' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_666' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_667' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_668' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_669' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_67' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_670' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_671' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_672' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_673' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_674' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_675' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_676' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_677' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_678' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_679' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_68' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_680' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_681' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_682' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_683' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_684' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_685' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_686' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_687' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_688' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_689' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_69' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_690' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_691' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_692' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_693' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_694' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_695' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_696' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_697' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_698' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_699' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_7' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_70' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_700' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_701' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_702' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_703' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_704' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_705' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_706' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_707' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_708' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_709' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_71' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_710' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_711' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_712' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_713' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_714' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_715' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_716' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_717' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_718' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_719' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_72' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_720' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_721' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_722' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_723' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_724' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_725' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_726' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_727' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_728' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_729' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_73' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_730' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_731' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_732' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_733' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_734' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_735' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_736' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_737' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_738' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_739' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_74' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_740' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_741' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_742' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_743' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_744' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_745' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_746' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_747' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_748' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_749' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_75' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_750' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_751' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_752' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_753' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_754' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_755' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_756' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_757' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_758' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_759' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_76' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_760' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_761' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_762' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_763' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_764' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_765' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_766' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_767' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_768' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_769' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_77' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_770' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_771' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_772' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_773' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_774' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_775' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_776' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_777' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_778' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_779' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_78' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_780' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_781' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_782' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_783' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_784' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_785' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_786' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_787' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_788' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_789' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_79' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_790' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_791' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_792' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_793' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_794' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_795' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_796' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_797' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_798' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_799' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_8' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_80' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_800' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_801' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_802' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_803' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_804' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_805' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_806' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_807' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_808' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_809' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_81' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_810' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_811' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_812' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_813' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_814' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_815' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_816' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_817' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_818' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_819' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_82' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_820' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_821' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_822' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_823' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_824' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_825' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_826' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_827' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_828' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_829' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_83' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_830' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_831' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_832' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_833' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_834' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_835' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_836' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_837' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_838' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_839' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_84' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_840' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_841' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_842' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_843' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_844' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_845' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_846' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_847' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_848' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_849' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_85' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_850' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_851' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_852' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_853' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_854' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_855' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_856' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_857' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_858' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_859' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_86' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_860' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_861' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_862' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_863' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_864' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_865' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_866' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_867' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_868' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_869' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_87' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_870' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_871' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_872' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_873' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_874' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_875' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_876' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_877' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_878' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_879' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_88' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_880' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_881' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_882' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_883' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_884' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_885' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_886' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_887' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_888' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_889' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_89' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_890' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_891' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_892' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_893' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_894' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_895' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_896' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_897' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_898' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_899' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_9' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_90' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_900' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_901' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_902' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_903' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_904' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_905' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_906' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_907' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_908' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_909' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_91' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_910' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_911' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_912' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_913' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_914' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_915' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_916' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_917' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_918' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_919' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_92' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_920' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_921' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_922' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_923' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_924' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_925' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_926' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_927' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_928' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_929' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_93' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_930' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_931' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_932' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_933' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_934' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_935' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_936' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_937' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_938' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_939' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_94' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_940' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_941' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_942' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_943' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_944' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_945' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_946' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_947' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_948' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_949' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_95' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_950' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_951' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_952' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_953' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_954' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_955' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_956' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_957' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_958' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_959' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_96' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_960' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_961' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_962' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_963' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_964' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_965' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_966' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_967' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_968' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_969' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_97' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_970' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_971' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_972' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_973' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_974' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_975' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_976' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_977' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_978' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_979' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_98' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_980' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_981' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_982' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_983' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_984' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_985' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_986' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_987' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_988' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_989' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_99' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_990' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_991' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_992' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_993' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_994' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_995' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_996' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_997' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_998' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.TargetSemantics.primitive.eq_999' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.adtFields.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_12.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_13.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_12.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armOuter.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat_outer' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.boxedOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.boxedOne.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.boxedOne' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bp_entries._simp_1_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.simplePat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bp_entries.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.entriesOf._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bp_entries._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.bp_entries' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.directPat_cons._simp_1_4' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.identBoxed_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identLocal_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf_spec' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_cons' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_len.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_len._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_len' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.directPat_loads._simp_1_27' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_loads._simp_1_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_loads.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none._simp_1_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none._simp_1_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rlookup_append' depends on axioms: [propext]\n'LexLeanPreservation.Rust.same_boxed_boxed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_none._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_boxed_none' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_local_none._simp_1_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_local_none._simp_1_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_local_none.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.same_local_local' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_local_none._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_local_none' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_boxed_local' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rlookup_local_boxed' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rlookup_local_single' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat_loads._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.directPat_loads' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_boxed_some._simp_1_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_some._simp_1_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_some.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_boxed_some._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.entries_boxed_some' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.envRel_locals' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fields_wt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindPatterns_single' depends on axioms: [propext]\n'LexLeanPreservation.Rust.outer_bind' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.paramCtx_length.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_length._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_length' depends on axioms: [propext]\n'LexLeanPreservation.Rust.armPat_sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.bindOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.bindOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOf.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.boxedOne.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.canon.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.covered.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.covered_mem._simp_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.wt_uninh._simp_10' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.covered_mem' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.ctorOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.ctorOf_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.destruct_canon' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq_refl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.destruct_excl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.directPat.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.directPat.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entriesOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_lookup.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_none_of._simp_1_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_none_of.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sameIdent_iff' depends on axioms: [propext]\n'LexLeanPreservation.Rust.entries_none_of._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_none_of' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.identsDistinct.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.entries_lookup._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.entries_lookup' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.eval_field.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.eval_field._sparseCasesOn_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_field.match_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.eval_field' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_3' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_4' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats_none._simp_1_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats_none.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.fieldPats_none._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats_none' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats_some._simp_1_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats_some.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fieldPats_some._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.fieldPats_some' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_partRead' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.tyBeq_unit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.field_out' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.findArm_some.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.findArm_some._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.findArm_some' depends on axioms: [propext]\n'LexLeanPreservation.Rust.findDispatch_some.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.findDispatch_some._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.findDispatch_some' depends on axioms: [propext]\n'LexLeanPreservation.Rust.foldStep._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.fresh_ext' depends on axioms: [propext]\n'LexLeanPreservation.Rust.identBoxed.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identBoxed.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identLocal.eq_2' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.identsDistinct.eq_def' does not depend on any axioms\n'LexLeanPreservation.Rust.isWild._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isWild.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.litOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.loadOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.noClosure.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.okBlock.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.otherArms.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.otherArms_mem._simp_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.otherArms_mem' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.outer_miss' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.outer_view' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_ext.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_ext._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_ext' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_fresh.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_fresh._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.paramCtx_fresh' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.partRead.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocal.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.patLocals.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_matchOn' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_matchOn_halt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_uncons.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rc_uncons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rc_scrut' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rca_hit' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rca_miss' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcb_det' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_rebuild.match_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_eq_of_same' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg_rc' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_rebuild._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rcl_rebuild' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.readOf_rc' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.realizesM_value' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildArg.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArg_simple' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_def' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs.eq_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs_simple.match_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs_simple._f' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildArgs_simple' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_14.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuildTail._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuild_rca._simp_1_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.rebuild_rca.match_1_1' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_value._simp_1_21' depends on axioms: [propext]\n'LexLeanPreservation.Rust.single_rebuild' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_value' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_rca._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuild_rca' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rebuildsArm.eq_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.rlookup_nil' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_fieldGen._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_fieldGen.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_fieldGen.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.wtl_get.match_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_get._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_get' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_fieldGen' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_fieldHeld' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_fieldRead' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_mCons._simp_1_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sem_mCons' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_mNil' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchArms._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.tyBeq_refl.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tyBeq_refl._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.tysBeq_refl.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.tysBeq_refl._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.tyBeq_refl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.tysBeq_refl' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.uninh_of_inert.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.uninh_of_inert._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh_of_inert' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_uninh.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_uninh._f' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtl_uninh.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_uninh._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_uninh' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.taken_arm' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchArms' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchPair._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchPair' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchRebuilt._proof_1_3' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sem_matchRebuilt.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchRebuilt.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.sem_matchRebuilt' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_10.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_11.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_2.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_3.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_4.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_5.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_6.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_7.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_8.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq._sparseCasesOn_9.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeBeq.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_10' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_11' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_12' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_13' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_14' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_15' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_17' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_6' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_7' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.shapeFields.eq_9' depends on axioms: [propext]\n'LexLeanPreservation.Rust.simplePat.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.unboxOf.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_def' depends on axioms: [propext]\n'LexLeanPreservation.Rust.uninh.eq_5' depends on axioms: [propext]\n'LexLeanPreservation.Rust.validU.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_3' depends on axioms: [propext]\n'LexLeanPreservation.Rust.viewVal.eq_4' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_uninh' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanTarget.RustSemantics.findArm.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findArm.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findArm.eq_def' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_1' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_2' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_3' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_4' does not depend on any axioms\n'LexLeanTarget.RustSemantics.findDispatch.eq_def' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_1' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_2' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_3' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_4' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_5' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_6' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_7' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_8' does not depend on any axioms\n'LexLeanTarget.TargetSemantics.sameOrder.eq_9' does not depend on any axioms\n'LexLeanPreservation.Rust.fl_of' does not depend on any axioms\n'LexLeanPreservation.Rust.fnFallible.eq_1' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of._simp_1_14' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.funSem_of.match_1_10' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_12' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_2' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_4' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_6' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of.match_1_8' does not depend on any axioms\n'LexLeanPreservation.Rust.funSem_of' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.isTemp.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.isTemp.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.item_ne' depends on axioms: [propext]\n'LexLeanPreservation.Rust.kind_ne' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem._sparseCasesOn_1.else_eq' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem.eq_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.plainItem.eq_2' depends on axioms: [propext]\n'LexLeanPreservation.Rust.sound._proof_1_1' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sound._proof_1_2' depends on axioms: [propext, Quot.sound]\n'LexLeanPreservation.Rust.sound' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.simulate' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.Representable._sparseCasesOn_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Representable.match_1' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Representable._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL.match_1' does not depend on any axioms\n'LexLeanPreservation.Rust.RepresentableL._f' does not depend on any axioms\n'LexLeanPreservation.Rust.Representable' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL' depends on axioms: [propext]\n'LexLeanPreservation.Rust.Representable._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL._unsafe_rec' does not depend on any axioms\n'LexLeanPreservation.Rust.Representable._unsafe_rec' depends on axioms: [propext]\n'LexLeanPreservation.Rust.RepresentableL._sunfold' depends on axioms: [propext]\n'LexLeanPreservation.Rust.compose' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.rel_ne_stuck' depends on axioms: [propext]\n'LexLeanPreservation.Rust.repL_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.repL_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.runItem_abort_infallible' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreservation.Rust.wtAll_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_map.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wtAll_nil' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_map._f' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtAll_map' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_adt' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_bool' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_bytes' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encExcept.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_encExcept' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_list' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encList' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encOption.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_encOption' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encOrdering' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encPair' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_encUnit' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_errorV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i32' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i64' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_i8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_int' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_listEnc' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_nat' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_noneV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_okV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_optEnc.match_1_1' does not depend on any axioms\n'LexLeanPreservation.Rust.wt_someV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_optEnc' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_ordering' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_pairV' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_string' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u16' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u32' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u64' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_u8' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wt_unitValue' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_cons' depends on axioms: [propext]\n'LexLeanPreservation.Rust.wtl_nil' depends on axioms: [propext]\n'LexLeanPreservation.encExcept.eq_1' does not depend on any axioms\n'LexLeanPreservation.encExcept.eq_2' does not depend on any axioms\n'LexLeanPreservation.encOption.eq_1' does not depend on any axioms\n'LexLeanPreservation.encOption.eq_2' does not depend on any axioms\n'LexLeanPreservation.encPair.eq_1' does not depend on any axioms\n'LexLeanPreservation.encUnit.eq_1' does not depend on any axioms\n'LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.root' depends on axioms: [propext, Classical.choice, Quot.sound]\n'LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n'LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.Compose.RustStd.root' depends on axioms: [propext,\n Classical.choice,\n Quot.sound]\n-- statement vocabulary\ninductive LexLeanPreservation.Obs : Type\nnumber of parameters: 0\nconstructors:\nLexLeanPreservation.Obs.value : LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs\nLexLeanPreservation.Obs.overflow : LexLeanPreservation.Obs\nLexLeanPreservation.Obs.stuck : LexLeanPreservation.Obs\ndef LexLeanPreservation.Rel : Bool → LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs :=\nfun fits v => bif fits then LexLeanPreservation.Obs.value v else LexLeanPreservation.Obs.overflow\ndef LexLeanPreservation.Conv : LexLeanTarget.TargetSyntax.Program →\n List (Nat × LexLeanTarget.TargetSyntax.Value) → LexLeanTarget.TargetSyntax.Expr → LexLeanPreservation.Obs → Prop :=\nfun p env e o => ∃ n, LexLeanPreservation.obs (LexLeanTarget.TargetSemantics.eval n p env e) = some o\ndef LexLeanPreservation.FunRel : LexLeanTarget.TargetSyntax.Program →\n Nat → List LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs → Prop :=\nfun p f args o =>\n ∃ fn,\n LexLeanRuntime.index p.functions f = some fn ∧\n ∃ env,\n LexLeanTarget.TargetSemantics.bindAll fn.parameters args [] = some env ∧\n LexLeanPreservation.Conv p env fn.body o\ndef LexLeanPreservation.RunConv : LexLeanTarget.TargetSyntax.Program →\n Nat → List LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Obs → Prop :=\nfun p entry args o => ∃ n, LexLeanPreservation.obs (LexLeanTarget.TargetSemantics.run n p entry args) = some o\ndef LexLeanPreservation.Rust.WT : LexLeanTarget.TargetSyntax.Program →\n LexLeanPreservation.Rust.RCrate →\n LexLeanPreservation.Rust.Flags → LexLeanTarget.TargetSyntax.Value → LexLeanTarget.TargetSyntax.Ty → Prop :=\nfun p c A x x_1 =>\n x.brecOn (LexLeanPreservation.Rust.WT._f p c A)\n (fun t f => ⟨LexLeanPreservation.Rust.WTL._f p c A t f, LexLeanPreservation.Rust.WTAll._f p c A t f⟩) x_1\ndef LexLeanPreservation.Rust.WTL : LexLeanTarget.TargetSyntax.Program →\n LexLeanPreservation.Rust.RCrate →\n LexLeanPreservation.Rust.Flags →\n List LexLeanTarget.TargetSyntax.Value → List LexLeanTarget.TargetSyntax.Ty → Prop :=\nfun p c A x x_1 =>\n (LexLeanTarget.TargetSyntax.Value.brecOn_1 x (LexLeanPreservation.Rust.WT._f p c A) fun t f =>\n ⟨LexLeanPreservation.Rust.WTL._f p c A t f, LexLeanPreservation.Rust.WTAll._f p c A t f⟩).1\n x_1\ndef LexLeanPreservation.Rust.fnIdent : Nat → LexLeanPreservation.Rust.RIdent :=\nfun f => LexLeanTarget.RustSyntax.Ident.generated LexLeanTarget.RustSyntax.IdentKind.function f\ndef LexLeanPreservation.Rust.fnFallible : LexLeanPreservation.Rust.RCrate → Nat → Option Bool :=\nfun c f =>\n Option.map (fun fn => LexLeanTarget.RustSemantics.fallibleType fn.snd.fst)\n (LexLeanTarget.RustSemantics.findFunction c.items (LexLeanPreservation.Rust.fnIdent f))\ndef LexLeanPreservation.Rust.RCI : LexLeanPreservation.Rust.RCrate →\n LexLeanPreservation.Rust.RIdent → List LexLeanTarget.TargetSyntax.Value → LexLeanPreservation.Rust.ROut → Prop :=\nfun c f args o =>\n o ≠ LexLeanTarget.RustSemantics.ROutcome.exhausted ∧ ∃ n, LexLeanTarget.RustSemantics.invoke n c f args = o\ndef LexLeanPreservation.Rust.Realizes : Bool → LexLeanPreservation.Obs → LexLeanPreservation.Rust.ROut → Prop :=\nfun fl x x_1 =>\n match x, x_1 with\n | LexLeanPreservation.Obs.value v, LexLeanTarget.RustSemantics.ROutcome.value w => w = v\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.raise => fl = true\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.abort => True\n | x, x_2 => False\ndef LexLeanPreservation.Rust.RealizesFn : Bool → LexLeanPreservation.Obs → LexLeanPreservation.Rust.ROut → Prop :=\nfun fallible x x_1 =>\n match x, x_1 with\n | LexLeanPreservation.Obs.value v, LexLeanTarget.RustSemantics.ROutcome.value w => w = bif fallible then v.ok else v\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.value w =>\n fallible = true ∧ w = LexLeanTarget.TargetSyntax.Value.unit.error\n | LexLeanPreservation.Obs.overflow, LexLeanTarget.RustSemantics.ROutcome.abort => True\n | x, x_2 => False\ndef LexLeanPreservation.Rust.FunSem : LexLeanTarget.TargetSyntax.Program →\n LexLeanPreservation.Rust.RCrate → LexLeanPreservation.Rust.Flags → Nat → Nat → Prop :=\nfun p c A n f =>\n ∀ (fn : LexLeanTarget.TargetSyntax.Function) (args : List LexLeanTarget.TargetSyntax.Value)\n (env : List (Nat × LexLeanTarget.TargetSyntax.Value)) (F : Bool),\n LexLeanRuntime.index p.functions f = some fn →\n LexLeanPreservation.Rust.WTL p c A args fn.types →\n LexLeanTarget.TargetSemantics.bindAll fn.parameters args [] = some env →\n LexLeanPreservation.Rust.fnFallible c f = some F →\n ∀ (o : LexLeanPreservation.Obs),\n LexLeanPreservation.obs (LexLeanTarget.TargetSemantics.eval n p env fn.body) = some o →\n o ≠ LexLeanPreservation.Obs.stuck →\n (∀ (v : LexLeanTarget.TargetSyntax.Value),\n o = LexLeanPreservation.Obs.value v → LexLeanPreservation.Rust.WT p c A v fn.result) ∧\n ∃ ro,\n LexLeanPreservation.Rust.RealizesFn F o ro ∧\n LexLeanPreservation.Rust.RCI c (LexLeanPreservation.Rust.fnIdent f) args ro\ndef LexLeanPreservation.someObs : LexLeanPreservation.Obs → LexLeanPreservation.Obs :=\nfun x =>\n match x with\n | LexLeanPreservation.Obs.value v => LexLeanPreservation.Obs.value v.some\n | LexLeanPreservation.Obs.overflow => LexLeanPreservation.Obs.overflow\n | LexLeanPreservation.Obs.stuck => LexLeanPreservation.Obs.stuck\ndef LexLeanPreservation.Rust.Representable : LexLeanTarget.TargetSyntax.Value → Prop :=\nfun x => x.brecOn LexLeanPreservation.Rust.Representable._f LexLeanPreservation.Rust.RepresentableL._f\ndef LexLeanPreservation.Rust.RepresentableL : List LexLeanTarget.TargetSyntax.Value → Prop :=\nfun x =>\n LexLeanTarget.TargetSyntax.Value.brecOn_1 x LexLeanPreservation.Rust.Representable._f\n LexLeanPreservation.Rust.RepresentableL._f\nLexLeanPreservation.Rust.runItem_abort_infallible : ∀ (profile : LexLeanTarget.RustSyntax.Profile)\n (item : LexLeanTarget.RustSyntax.Item) (values : List LexLeanTarget.TargetSyntax.Value),\n LexLeanTarget.RustSemantics.runItem profile item values = LexLeanTarget.RustSemantics.ROutcome.abort →\n LexLeanTarget.RustSemantics.itemFallible item = false\n","stdout_sha256":"533b2c450cac3e595b71c9b8c9ed4d95073ce958a955b6fd2ee5ce1d5d38ff06","tool":"lean"} diff --git a/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.Compose.RustStd.json b/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.Compose.RustStd.json deleted file mode 100644 index 820a76673..000000000 --- a/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R0/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R0/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.RustStd.json b/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.RustStd.json deleted file mode 100644 index ce06d3eb8..000000000 --- a/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R0/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R0/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.json b/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.json deleted file mode 100644 index d3dc808f9..000000000 --- a/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R0.olean","$STAGING/preserve-src/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R0.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R0","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.Compose.RustStd.json b/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.Compose.RustStd.json deleted file mode 100644 index 97042ff7a..000000000 --- a/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R1/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R1/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.RustStd.json b/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.RustStd.json deleted file mode 100644 index a970af413..000000000 --- a/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R1/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R1/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.json b/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.json deleted file mode 100644 index 05c3c0fbc..000000000 --- a/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R1.olean","$STAGING/preserve-src/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R1.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R1","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.Compose.RustStd.json b/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.Compose.RustStd.json deleted file mode 100644 index a47243a97..000000000 --- a/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R2/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R2/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.RustStd.json b/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.RustStd.json deleted file mode 100644 index 5ae941a8b..000000000 --- a/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R2/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R2/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.json b/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.json deleted file mode 100644 index 3e04bb746..000000000 --- a/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R2.olean","$STAGING/preserve-src/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R2.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R2","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.Compose.RustStd.json b/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.Compose.RustStd.json deleted file mode 100644 index 24f41ca1a..000000000 --- a/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R3/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R3/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.RustStd.json b/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.RustStd.json deleted file mode 100644 index b018b012f..000000000 --- a/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R3/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R3/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.json b/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.json deleted file mode 100644 index 125dcc515..000000000 --- a/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R3.olean","$STAGING/preserve-src/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R3.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R3","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.Compose.RustStd.json b/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.Compose.RustStd.json deleted file mode 100644 index 6e99666d2..000000000 --- a/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R4/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R4/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.RustStd.json b/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.RustStd.json deleted file mode 100644 index 842b74f8b..000000000 --- a/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R4/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R4/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.json b/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.json deleted file mode 100644 index 5577d5788..000000000 --- a/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R4.olean","$STAGING/preserve-src/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R4.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R4","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.Compose.RustStd.json b/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.Compose.RustStd.json deleted file mode 100644 index 44c3e49da..000000000 --- a/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R5/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R5/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.RustStd.json b/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.RustStd.json deleted file mode 100644 index 08e1e1a0f..000000000 --- a/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R5/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R5/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.json b/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.json deleted file mode 100644 index 2cbdb2be3..000000000 --- a/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R5.olean","$STAGING/preserve-src/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R5.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R5","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.Compose.RustStd.json b/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.Compose.RustStd.json deleted file mode 100644 index 036ffb70e..000000000 --- a/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.Compose.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R6/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R6/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.RustStd.json b/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.RustStd.json deleted file mode 100644 index 5b61a9596..000000000 --- a/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.RustStd.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R6/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R6/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.json b/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.json deleted file mode 100644 index 9c8a8f5eb..000000000 --- a/stdlib/expected/verify/process/preserve/LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6.json +++ /dev/null @@ -1 +0,0 @@ -{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R6.olean","$STAGING/preserve-src/LexLeanPreserve/C5bfc6ad2db2940a1b7735f1309be47dc/R6.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.C5bfc6ad2db2940a1b7735f1309be47dc.R6","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.Compose.RustStd.json b/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.Compose.RustStd.json new file mode 100644 index 000000000..ef428edac --- /dev/null +++ b/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R0/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R0/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.RustStd.json b/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.RustStd.json new file mode 100644 index 000000000..496e92e8c --- /dev/null +++ b/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R0/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R0/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.json b/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.json new file mode 100644 index 000000000..f93f6df26 --- /dev/null +++ b/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R0.olean","$STAGING/preserve-src/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R0.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R0","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.Compose.RustStd.json b/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.Compose.RustStd.json new file mode 100644 index 000000000..5af9a4f78 --- /dev/null +++ b/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R1/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R1/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.RustStd.json b/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.RustStd.json new file mode 100644 index 000000000..3b861bb54 --- /dev/null +++ b/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R1/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R1/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.json b/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.json new file mode 100644 index 000000000..3e96cbfd6 --- /dev/null +++ b/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R1.olean","$STAGING/preserve-src/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R1.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R1","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.Compose.RustStd.json b/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.Compose.RustStd.json new file mode 100644 index 000000000..c3352ea2d --- /dev/null +++ b/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R2/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R2/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.RustStd.json b/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.RustStd.json new file mode 100644 index 000000000..191ee58a1 --- /dev/null +++ b/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R2/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R2/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.json b/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.json new file mode 100644 index 000000000..dde7829d0 --- /dev/null +++ b/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R2.olean","$STAGING/preserve-src/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R2.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R2","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.Compose.RustStd.json b/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.Compose.RustStd.json new file mode 100644 index 000000000..2e4d76f1a --- /dev/null +++ b/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R3/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R3/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.RustStd.json b/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.RustStd.json new file mode 100644 index 000000000..54d943e7a --- /dev/null +++ b/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R3/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R3/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.json b/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.json new file mode 100644 index 000000000..384e977d9 --- /dev/null +++ b/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R3.olean","$STAGING/preserve-src/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R3.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R3","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.Compose.RustStd.json b/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.Compose.RustStd.json new file mode 100644 index 000000000..80a67ae49 --- /dev/null +++ b/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R4/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R4/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.RustStd.json b/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.RustStd.json new file mode 100644 index 000000000..331a745ff --- /dev/null +++ b/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R4/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R4/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.json b/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.json new file mode 100644 index 000000000..821e47f94 --- /dev/null +++ b/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R4.olean","$STAGING/preserve-src/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R4.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R4","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.Compose.RustStd.json b/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.Compose.RustStd.json new file mode 100644 index 000000000..4b049940e --- /dev/null +++ b/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R5/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R5/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.RustStd.json b/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.RustStd.json new file mode 100644 index 000000000..49de03e4d --- /dev/null +++ b/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R5/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R5/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.json b/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.json new file mode 100644 index 000000000..0ee4945e6 --- /dev/null +++ b/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R5.olean","$STAGING/preserve-src/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R5.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R5","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.Compose.RustStd.json b/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.Compose.RustStd.json new file mode 100644 index 000000000..60670caa9 --- /dev/null +++ b/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.Compose.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R6/Compose/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R6/Compose/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.Compose.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.RustStd.json b/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.RustStd.json new file mode 100644 index 000000000..1c012ad1f --- /dev/null +++ b/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.RustStd.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R6/RustStd.olean","$STAGING/preserve-src/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R6/RustStd.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.RustStd","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.json b/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.json new file mode 100644 index 000000000..168d7e7ab --- /dev/null +++ b/stdlib/expected/verify/process/preserve/LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6.json @@ -0,0 +1 @@ +{"argv":["env","lean","-R","$STAGING/preserve-src","-o","$STAGING/preserve-oleans/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R6.olean","$STAGING/preserve-src/LexLeanPreserve/Cf6fd2434413f885eb97b3577e92c0706/R6.lean"],"executable_sha256":"$EXECUTABLE_SHA256","exit_code":0,"module":"LexLeanPreserve.Cf6fd2434413f885eb97b3577e92c0706.R6","stderr":"\n","stderr_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","stdout":"\n","stdout_sha256":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tool":"lean"} diff --git a/stdlib/lexlean.lock b/stdlib/lexlean.lock index de65617eb..4b1424628 100644 --- a/stdlib/lexlean.lock +++ b/stdlib/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "e7fcfa884a8d0dcabfa2292f1bca96a530b17e56a96f4f68ff7eac749ba2b0c4" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/application-arity/project/lexlean.lock b/tests/negative/application-arity/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/application-arity/project/lexlean.lock +++ b/tests/negative/application-arity/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/application-non-function/project/lexlean.lock b/tests/negative/application-non-function/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/application-non-function/project/lexlean.lock +++ b/tests/negative/application-non-function/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/binder-bool-literal-name/project/lexlean.lock b/tests/negative/binder-bool-literal-name/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/binder-bool-literal-name/project/lexlean.lock +++ b/tests/negative/binder-bool-literal-name/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/binder-capture/project/lexlean.lock b/tests/negative/binder-capture/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/binder-capture/project/lexlean.lock +++ b/tests/negative/binder-capture/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/binder-pattern-constructor-name/project/lexlean.lock b/tests/negative/binder-pattern-constructor-name/project/lexlean.lock index b9fb33cfa..a421bd3b9 100644 --- a/tests/negative/binder-pattern-constructor-name/project/lexlean.lock +++ b/tests/negative/binder-pattern-constructor-name/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "81ee2a9ef8c129bd8d1d2c5a002526675b1f2cbabb784a33bbb447892bd48c9f" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/certificate-b-rejected/expected/command.json b/tests/negative/certificate-b-rejected/expected/command.json index 3b561be08..15c21fc42 100644 --- a/tests/negative/certificate-b-rejected/expected/command.json +++ b/tests/negative/certificate-b-rejected/expected/command.json @@ -1 +1 @@ -{"artifacts":[],"command":"verify","diagnostics":[{"causes":[],"code":"LLV7015","help":[],"labels":[],"message":"certificate B: `LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.RustCore` was rejected in `fun2` of root `Production.Main.quadruple`: error: Application type mismatch: The argument\n rfl\nhas type\n ?m.157 = ?m.157\nbut is expected to have type\n RustSemantics.itemFallible RustSyntax.Item.natSub = true\nin the application\n Corr.primF (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) Corr.opsNil rfl rfl) rfl rfl) ?m.147 rfl\n rfl rfl rfl rfl\n","notes":[],"primary":{"byte_end":0,"byte_start":0,"column_end":1,"column_start":1,"line_end":1,"line_start":1,"path":"lexlean.toml"},"severity":"error","spec":"lexlean/diagnostic/1"}],"exit_code":1,"modules":[],"spec":"lexlean/command-result/1","success":false} +{"artifacts":[],"command":"verify","diagnostics":[{"causes":[],"code":"LLV7015","help":[],"labels":[],"message":"certificate B: `LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.RustCore` was rejected in `fun2` of root `Production.Main.quadruple`: error: Application type mismatch: The argument\n rfl\nhas type\n ?m.157 = ?m.157\nbut is expected to have type\n RustSemantics.itemFallible RustSyntax.Item.natSub = true\nin the application\n Corr.primF (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) Corr.opsNil rfl rfl) rfl rfl) ?m.147 rfl\n rfl rfl rfl rfl\n","notes":[],"primary":{"byte_end":0,"byte_start":0,"column_end":1,"column_start":1,"line_end":1,"line_start":1,"path":"lexlean.toml"},"severity":"error","spec":"lexlean/diagnostic/1"}],"exit_code":1,"modules":[],"spec":"lexlean/command-result/1","success":false} diff --git a/tests/negative/certificate-b-rejected/expected/diagnostics.json b/tests/negative/certificate-b-rejected/expected/diagnostics.json index 1501ee0ef..6805e3ac9 100644 --- a/tests/negative/certificate-b-rejected/expected/diagnostics.json +++ b/tests/negative/certificate-b-rejected/expected/diagnostics.json @@ -1 +1 @@ -[{"causes":[],"code":"LLV7015","help":[],"labels":[],"message":"certificate B: `LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2.RustCore` was rejected in `fun2` of root `Production.Main.quadruple`: error: Application type mismatch: The argument\n rfl\nhas type\n ?m.157 = ?m.157\nbut is expected to have type\n RustSemantics.itemFallible RustSyntax.Item.natSub = true\nin the application\n Corr.primF (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) Corr.opsNil rfl rfl) rfl rfl) ?m.147 rfl\n rfl rfl rfl rfl\n","notes":[],"primary":{"byte_end":0,"byte_start":0,"column_end":1,"column_start":1,"line_end":1,"line_start":1,"path":"lexlean.toml"},"severity":"error","spec":"lexlean/diagnostic/1"}] +[{"causes":[],"code":"LLV7015","help":[],"labels":[],"message":"certificate B: `LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2.RustCore` was rejected in `fun2` of root `Production.Main.quadruple`: error: Application type mismatch: The argument\n rfl\nhas type\n ?m.157 = ?m.157\nbut is expected to have type\n RustSemantics.itemFallible RustSyntax.Item.natSub = true\nin the application\n Corr.primF (Corr.opsCons (Corr.var rfl rfl) (Corr.opsCons (Corr.var rfl rfl) Corr.opsNil rfl rfl) rfl rfl) ?m.147 rfl\n rfl rfl rfl rfl\n","notes":[],"primary":{"byte_end":0,"byte_start":0,"column_end":1,"column_start":1,"line_end":1,"line_start":1,"path":"lexlean.toml"},"severity":"error","spec":"lexlean/diagnostic/1"}] diff --git a/tests/negative/certificate-b-rejected/project/lexlean.lock b/tests/negative/certificate-b-rejected/project/lexlean.lock index d4a5c808a..17bc4d068 100644 --- a/tests/negative/certificate-b-rejected/project/lexlean.lock +++ b/tests/negative/certificate-b-rejected/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6f85e3c598ebbd2209c3ad5533caeb0ac2558d009e9863ec732435267e89972e" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/certificate-e-rejected/expected/command.json b/tests/negative/certificate-e-rejected/expected/command.json index 380dd7106..bd245f9b9 100644 --- a/tests/negative/certificate-e-rejected/expected/command.json +++ b/tests/negative/certificate-e-rejected/expected/command.json @@ -1 +1 @@ -{"artifacts":[],"command":"verify","diagnostics":[{"causes":[],"code":"LLV7016","help":[],"labels":[],"message":"certificate E: `LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.Compose.RustCore` was rejected in `root` of root `Production.Main.checkedSum`: error: native core declaration 'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.Compose.RustCore.root':\n (kernel) application type mismatch\n LexLeanPreservation.Rust.compose (fun __e_n => RustCore.root __e_n 0)\n (Eq.refl (LexLeanRuntime.index RustCore.program.functions 0))\n (LexLeanPreservation.Rust.wtl_cons (LexLeanPreservation.Rust.wt_u32 left)\n (LexLeanPreservation.Rust.wtl_cons (LexLeanPreservation.Rust.wt_u32 right) LexLeanPreservation.Rust.wtl_nil))\n (Eq.refl\n (LexLeanTarget.TargetSemantics.bindAll\n (RustCore.program.functions.getD 0\n { parameters := [], types := [], result := LexLeanTarget.TargetSyntax.Ty.unit,\n body :=\n LexLeanTarget.TargetSyntax.Expr.value LexLeanTarget.TargetSyntax.Ty.unit","notes":[],"primary":{"byte_end":0,"byte_start":0,"column_end":1,"column_start":1,"line_end":1,"line_start":1,"path":"lexlean.toml"},"severity":"error","spec":"lexlean/diagnostic/1"}],"exit_code":1,"modules":[],"spec":"lexlean/command-result/1","success":false} +{"artifacts":[],"command":"verify","diagnostics":[{"causes":[],"code":"LLV7016","help":[],"labels":[],"message":"certificate E: `LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.Compose.RustCore` was rejected in `root` of root `Production.Main.checkedSum`: error: native core declaration 'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.Compose.RustCore.root':\n (kernel) application type mismatch\n LexLeanPreservation.Rust.compose (fun __e_n => RustCore.root __e_n 0)\n (Eq.refl (LexLeanRuntime.index RustCore.program.functions 0))\n (LexLeanPreservation.Rust.wtl_cons (LexLeanPreservation.Rust.wt_u32 left)\n (LexLeanPreservation.Rust.wtl_cons (LexLeanPreservation.Rust.wt_u32 right) LexLeanPreservation.Rust.wtl_nil))\n (Eq.refl\n (LexLeanTarget.TargetSemantics.bindAll\n (RustCore.program.functions.getD 0\n { parameters := [], types := [], result := LexLeanTarget.TargetSyntax.Ty.unit,\n body :=\n LexLeanTarget.TargetSyntax.Expr.value LexLeanTarget.TargetSyntax.Ty.unit","notes":[],"primary":{"byte_end":0,"byte_start":0,"column_end":1,"column_start":1,"line_end":1,"line_start":1,"path":"lexlean.toml"},"severity":"error","spec":"lexlean/diagnostic/1"}],"exit_code":1,"modules":[],"spec":"lexlean/command-result/1","success":false} diff --git a/tests/negative/certificate-e-rejected/expected/diagnostics.json b/tests/negative/certificate-e-rejected/expected/diagnostics.json index c270396e1..deef6b393 100644 --- a/tests/negative/certificate-e-rejected/expected/diagnostics.json +++ b/tests/negative/certificate-e-rejected/expected/diagnostics.json @@ -1 +1 @@ -[{"causes":[],"code":"LLV7016","help":[],"labels":[],"message":"certificate E: `LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.Compose.RustCore` was rejected in `root` of root `Production.Main.checkedSum`: error: native core declaration 'LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R0.Compose.RustCore.root':\n (kernel) application type mismatch\n LexLeanPreservation.Rust.compose (fun __e_n => RustCore.root __e_n 0)\n (Eq.refl (LexLeanRuntime.index RustCore.program.functions 0))\n (LexLeanPreservation.Rust.wtl_cons (LexLeanPreservation.Rust.wt_u32 left)\n (LexLeanPreservation.Rust.wtl_cons (LexLeanPreservation.Rust.wt_u32 right) LexLeanPreservation.Rust.wtl_nil))\n (Eq.refl\n (LexLeanTarget.TargetSemantics.bindAll\n (RustCore.program.functions.getD 0\n { parameters := [], types := [], result := LexLeanTarget.TargetSyntax.Ty.unit,\n body :=\n LexLeanTarget.TargetSyntax.Expr.value LexLeanTarget.TargetSyntax.Ty.unit","notes":[],"primary":{"byte_end":0,"byte_start":0,"column_end":1,"column_start":1,"line_end":1,"line_start":1,"path":"lexlean.toml"},"severity":"error","spec":"lexlean/diagnostic/1"}] +[{"causes":[],"code":"LLV7016","help":[],"labels":[],"message":"certificate E: `LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.Compose.RustCore` was rejected in `root` of root `Production.Main.checkedSum`: error: native core declaration 'LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R0.Compose.RustCore.root':\n (kernel) application type mismatch\n LexLeanPreservation.Rust.compose (fun __e_n => RustCore.root __e_n 0)\n (Eq.refl (LexLeanRuntime.index RustCore.program.functions 0))\n (LexLeanPreservation.Rust.wtl_cons (LexLeanPreservation.Rust.wt_u32 left)\n (LexLeanPreservation.Rust.wtl_cons (LexLeanPreservation.Rust.wt_u32 right) LexLeanPreservation.Rust.wtl_nil))\n (Eq.refl\n (LexLeanTarget.TargetSemantics.bindAll\n (RustCore.program.functions.getD 0\n { parameters := [], types := [], result := LexLeanTarget.TargetSyntax.Ty.unit,\n body :=\n LexLeanTarget.TargetSyntax.Expr.value LexLeanTarget.TargetSyntax.Ty.unit","notes":[],"primary":{"byte_end":0,"byte_start":0,"column_end":1,"column_start":1,"line_end":1,"line_start":1,"path":"lexlean.toml"},"severity":"error","spec":"lexlean/diagnostic/1"}] diff --git a/tests/negative/certificate-e-rejected/project/lexlean.lock b/tests/negative/certificate-e-rejected/project/lexlean.lock index d4a5c808a..17bc4d068 100644 --- a/tests/negative/certificate-e-rejected/project/lexlean.lock +++ b/tests/negative/certificate-e-rejected/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6f85e3c598ebbd2209c3ad5533caeb0ac2558d009e9863ec732435267e89972e" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/certificate-generation-limit/project/lexlean.lock b/tests/negative/certificate-generation-limit/project/lexlean.lock index d4a5c808a..17bc4d068 100644 --- a/tests/negative/certificate-generation-limit/project/lexlean.lock +++ b/tests/negative/certificate-generation-limit/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6f85e3c598ebbd2209c3ad5533caeb0ac2558d009e9863ec732435267e89972e" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/certificate-heartbeat-rejected/expected/command.json b/tests/negative/certificate-heartbeat-rejected/expected/command.json index 0432d2fa0..ce35ae3a0 100644 --- a/tests/negative/certificate-heartbeat-rejected/expected/command.json +++ b/tests/negative/certificate-heartbeat-rejected/expected/command.json @@ -1 +1 @@ -{"artifacts":[],"command":"verify","diagnostics":[{"causes":[],"code":"LLV7013","help":[],"labels":[],"message":"certificate A: `LexLeanPreserve.C52af23b9c4ffcfaac904d5bd28c047b5.R0` was rejected in `__prog` of root `Production.Main.total`: error: (deterministic) timeout at `isDefEq`, maximum number of heartbeats (1) has been reached\n\nNote: Use `set_option maxHeartbeats ` to set the limit.\n\nHint: Additional diagnostic information may be available using the `set_option diagnostics true` command.\n$STAGING/preserve-src/LexLeanPreserve/C52af23b9c4ffcfaac904d5bd28c047b5/R0.lean:25:30: error: (deterministic) timeout at `isDefEq`, maximum number of heartbeats (1) has been reached\n\nNote: Use `set_option maxHeartbeats ` to set the limit.\n\nHint: Additional diagnostic information may be available using the `set_option diagnostics true` command.\n$STAGING/preserve-src/LexLeanPreserve/C52af23b9c4ffcfaac904d5bd28c047b5/R0.lean:28:33: error: (deterministic) timeout at `isDefEq`, maximum number of heartbeats (1) has been reached\n","notes":[],"primary":{"byte_end":0,"byte_start":0,"column_end":1,"column_start":1,"line_end":1,"line_start":1,"path":"lexlean.toml"},"severity":"error","spec":"lexlean/diagnostic/1"}],"exit_code":1,"modules":[],"spec":"lexlean/command-result/1","success":false} +{"artifacts":[],"command":"verify","diagnostics":[{"causes":[],"code":"LLV7013","help":[],"labels":[],"message":"certificate A: `LexLeanPreserve.C5a8aecb66d2051046750612dda1e97aa.R0` was rejected in `__prog` of root `Production.Main.total`: error: (deterministic) timeout at `isDefEq`, maximum number of heartbeats (1) has been reached\n\nNote: Use `set_option maxHeartbeats ` to set the limit.\n\nHint: Additional diagnostic information may be available using the `set_option diagnostics true` command.\n$STAGING/preserve-src/LexLeanPreserve/C5a8aecb66d2051046750612dda1e97aa/R0.lean:25:30: error: (deterministic) timeout at `isDefEq`, maximum number of heartbeats (1) has been reached\n\nNote: Use `set_option maxHeartbeats ` to set the limit.\n\nHint: Additional diagnostic information may be available using the `set_option diagnostics true` command.\n$STAGING/preserve-src/LexLeanPreserve/C5a8aecb66d2051046750612dda1e97aa/R0.lean:28:33: error: (deterministic) timeout at `isDefEq`, maximum number of heartbeats (1) has been reached\n","notes":[],"primary":{"byte_end":0,"byte_start":0,"column_end":1,"column_start":1,"line_end":1,"line_start":1,"path":"lexlean.toml"},"severity":"error","spec":"lexlean/diagnostic/1"}],"exit_code":1,"modules":[],"spec":"lexlean/command-result/1","success":false} diff --git a/tests/negative/certificate-heartbeat-rejected/expected/diagnostics.json b/tests/negative/certificate-heartbeat-rejected/expected/diagnostics.json index 41e753f2a..87d635b62 100644 --- a/tests/negative/certificate-heartbeat-rejected/expected/diagnostics.json +++ b/tests/negative/certificate-heartbeat-rejected/expected/diagnostics.json @@ -1 +1 @@ -[{"causes":[],"code":"LLV7013","help":[],"labels":[],"message":"certificate A: `LexLeanPreserve.C52af23b9c4ffcfaac904d5bd28c047b5.R0` was rejected in `__prog` of root `Production.Main.total`: error: (deterministic) timeout at `isDefEq`, maximum number of heartbeats (1) has been reached\n\nNote: Use `set_option maxHeartbeats ` to set the limit.\n\nHint: Additional diagnostic information may be available using the `set_option diagnostics true` command.\n$STAGING/preserve-src/LexLeanPreserve/C52af23b9c4ffcfaac904d5bd28c047b5/R0.lean:25:30: error: (deterministic) timeout at `isDefEq`, maximum number of heartbeats (1) has been reached\n\nNote: Use `set_option maxHeartbeats ` to set the limit.\n\nHint: Additional diagnostic information may be available using the `set_option diagnostics true` command.\n$STAGING/preserve-src/LexLeanPreserve/C52af23b9c4ffcfaac904d5bd28c047b5/R0.lean:28:33: error: (deterministic) timeout at `isDefEq`, maximum number of heartbeats (1) has been reached\n","notes":[],"primary":{"byte_end":0,"byte_start":0,"column_end":1,"column_start":1,"line_end":1,"line_start":1,"path":"lexlean.toml"},"severity":"error","spec":"lexlean/diagnostic/1"}] +[{"causes":[],"code":"LLV7013","help":[],"labels":[],"message":"certificate A: `LexLeanPreserve.C5a8aecb66d2051046750612dda1e97aa.R0` was rejected in `__prog` of root `Production.Main.total`: error: (deterministic) timeout at `isDefEq`, maximum number of heartbeats (1) has been reached\n\nNote: Use `set_option maxHeartbeats ` to set the limit.\n\nHint: Additional diagnostic information may be available using the `set_option diagnostics true` command.\n$STAGING/preserve-src/LexLeanPreserve/C5a8aecb66d2051046750612dda1e97aa/R0.lean:25:30: error: (deterministic) timeout at `isDefEq`, maximum number of heartbeats (1) has been reached\n\nNote: Use `set_option maxHeartbeats ` to set the limit.\n\nHint: Additional diagnostic information may be available using the `set_option diagnostics true` command.\n$STAGING/preserve-src/LexLeanPreserve/C5a8aecb66d2051046750612dda1e97aa/R0.lean:28:33: error: (deterministic) timeout at `isDefEq`, maximum number of heartbeats (1) has been reached\n","notes":[],"primary":{"byte_end":0,"byte_start":0,"column_end":1,"column_start":1,"line_end":1,"line_start":1,"path":"lexlean.toml"},"severity":"error","spec":"lexlean/diagnostic/1"}] diff --git a/tests/negative/certificate-heartbeat-rejected/project/lexlean.lock b/tests/negative/certificate-heartbeat-rejected/project/lexlean.lock index d4a5c808a..17bc4d068 100644 --- a/tests/negative/certificate-heartbeat-rejected/project/lexlean.lock +++ b/tests/negative/certificate-heartbeat-rejected/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6f85e3c598ebbd2209c3ad5533caeb0ac2558d009e9863ec732435267e89972e" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/certificate-rejected/expected/command.json b/tests/negative/certificate-rejected/expected/command.json index ece60aa39..e658edb14 100644 --- a/tests/negative/certificate-rejected/expected/command.json +++ b/tests/negative/certificate-rejected/expected/command.json @@ -1 +1 @@ -{"artifacts":[],"command":"verify","diagnostics":[{"causes":[],"code":"LLV7013","help":[],"labels":[],"message":"certificate A: `LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2` was rejected in `__rel_2` of root `Production.Main.quadruple`: error: Application type mismatch: The argument\n LexLeanPreservation.prim_natAdd number number\nhas type\n LexLeanPreservation.obs\n (LexLeanTarget.TargetSemantics.primitive LexLeanTarget.TargetSyntax.Prim.natAdd\n [LexLeanTarget.TargetSyntax.Value.nat number, LexLeanTarget.TargetSyntax.Value.nat number]) =\n some\n (LexLeanPreservation.Rel ((number + number).blt 18446744073709551616)\n (LexLeanTarget.TargetSyntax.Value.nat (number + number)))\nbut is expected to have type\n LexLeanPreservation.obs\n (LexLeanTarget.TargetSemantics.primitive LexLeanTarget.TargetSyntax.Prim.natSub","notes":[],"primary":{"byte_end":0,"byte_start":0,"column_end":1,"column_start":1,"line_end":1,"line_start":1,"path":"lexlean.toml"},"severity":"error","spec":"lexlean/diagnostic/1"}],"exit_code":1,"modules":[],"spec":"lexlean/command-result/1","success":false} +{"artifacts":[],"command":"verify","diagnostics":[{"causes":[],"code":"LLV7013","help":[],"labels":[],"message":"certificate A: `LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2` was rejected in `__rel_2` of root `Production.Main.quadruple`: error: Application type mismatch: The argument\n LexLeanPreservation.prim_natAdd number number\nhas type\n LexLeanPreservation.obs\n (LexLeanTarget.TargetSemantics.primitive LexLeanTarget.TargetSyntax.Prim.natAdd\n [LexLeanTarget.TargetSyntax.Value.nat number, LexLeanTarget.TargetSyntax.Value.nat number]) =\n some\n (LexLeanPreservation.Rel ((number + number).blt 18446744073709551616)\n (LexLeanTarget.TargetSyntax.Value.nat (number + number)))\nbut is expected to have type\n LexLeanPreservation.obs\n (LexLeanTarget.TargetSemantics.primitive LexLeanTarget.TargetSyntax.Prim.natSub","notes":[],"primary":{"byte_end":0,"byte_start":0,"column_end":1,"column_start":1,"line_end":1,"line_start":1,"path":"lexlean.toml"},"severity":"error","spec":"lexlean/diagnostic/1"}],"exit_code":1,"modules":[],"spec":"lexlean/command-result/1","success":false} diff --git a/tests/negative/certificate-rejected/expected/diagnostics.json b/tests/negative/certificate-rejected/expected/diagnostics.json index 9406a3a6b..f70711acb 100644 --- a/tests/negative/certificate-rejected/expected/diagnostics.json +++ b/tests/negative/certificate-rejected/expected/diagnostics.json @@ -1 +1 @@ -[{"causes":[],"code":"LLV7013","help":[],"labels":[],"message":"certificate A: `LexLeanPreserve.Cecf58505f4e2844618eff0bdc9a2ce9d.R2` was rejected in `__rel_2` of root `Production.Main.quadruple`: error: Application type mismatch: The argument\n LexLeanPreservation.prim_natAdd number number\nhas type\n LexLeanPreservation.obs\n (LexLeanTarget.TargetSemantics.primitive LexLeanTarget.TargetSyntax.Prim.natAdd\n [LexLeanTarget.TargetSyntax.Value.nat number, LexLeanTarget.TargetSyntax.Value.nat number]) =\n some\n (LexLeanPreservation.Rel ((number + number).blt 18446744073709551616)\n (LexLeanTarget.TargetSyntax.Value.nat (number + number)))\nbut is expected to have type\n LexLeanPreservation.obs\n (LexLeanTarget.TargetSemantics.primitive LexLeanTarget.TargetSyntax.Prim.natSub","notes":[],"primary":{"byte_end":0,"byte_start":0,"column_end":1,"column_start":1,"line_end":1,"line_start":1,"path":"lexlean.toml"},"severity":"error","spec":"lexlean/diagnostic/1"}] +[{"causes":[],"code":"LLV7013","help":[],"labels":[],"message":"certificate A: `LexLeanPreserve.Cf5a58e441acc8b93ded11826c51cc7c8.R2` was rejected in `__rel_2` of root `Production.Main.quadruple`: error: Application type mismatch: The argument\n LexLeanPreservation.prim_natAdd number number\nhas type\n LexLeanPreservation.obs\n (LexLeanTarget.TargetSemantics.primitive LexLeanTarget.TargetSyntax.Prim.natAdd\n [LexLeanTarget.TargetSyntax.Value.nat number, LexLeanTarget.TargetSyntax.Value.nat number]) =\n some\n (LexLeanPreservation.Rel ((number + number).blt 18446744073709551616)\n (LexLeanTarget.TargetSyntax.Value.nat (number + number)))\nbut is expected to have type\n LexLeanPreservation.obs\n (LexLeanTarget.TargetSemantics.primitive LexLeanTarget.TargetSyntax.Prim.natSub","notes":[],"primary":{"byte_end":0,"byte_start":0,"column_end":1,"column_start":1,"line_end":1,"line_start":1,"path":"lexlean.toml"},"severity":"error","spec":"lexlean/diagnostic/1"}] diff --git a/tests/negative/certificate-rejected/project/lexlean.lock b/tests/negative/certificate-rejected/project/lexlean.lock index d4a5c808a..17bc4d068 100644 --- a/tests/negative/certificate-rejected/project/lexlean.lock +++ b/tests/negative/certificate-rejected/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6f85e3c598ebbd2209c3ad5533caeb0ac2558d009e9863ec732435267e89972e" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/certificate-resource-exhausted/expected/command.json b/tests/negative/certificate-resource-exhausted/expected/command.json index 7efa5ae15..6f440e241 100644 --- a/tests/negative/certificate-resource-exhausted/expected/command.json +++ b/tests/negative/certificate-resource-exhausted/expected/command.json @@ -1 +1 @@ -{"artifacts":[],"command":"verify","diagnostics":[{"causes":[],"code":"LLS8002","help":[],"labels":[],"message":"the pinned Lean exhausted a resource checking `LexLeanPreserve.C52af23b9c4ffcfaac904d5bd28c047b5.R0` (maximum number of heartbeats): the generated module is 66000 bytes, at least a quarter of max_file_bytes 131072, and is beyond what the machine checks","notes":[],"primary":{"byte_end":0,"byte_start":0,"column_end":1,"column_start":1,"line_end":1,"line_start":1,"path":"lexlean.toml"},"severity":"error","spec":"lexlean/diagnostic/1"}],"exit_code":4,"modules":[],"spec":"lexlean/command-result/1","success":false} +{"artifacts":[],"command":"verify","diagnostics":[{"causes":[],"code":"LLS8002","help":[],"labels":[],"message":"the pinned Lean exhausted a resource checking `LexLeanPreserve.C5a8aecb66d2051046750612dda1e97aa.R0` (maximum number of heartbeats): the generated module is 66000 bytes, at least a quarter of max_file_bytes 131072, and is beyond what the machine checks","notes":[],"primary":{"byte_end":0,"byte_start":0,"column_end":1,"column_start":1,"line_end":1,"line_start":1,"path":"lexlean.toml"},"severity":"error","spec":"lexlean/diagnostic/1"}],"exit_code":4,"modules":[],"spec":"lexlean/command-result/1","success":false} diff --git a/tests/negative/certificate-resource-exhausted/expected/diagnostics.json b/tests/negative/certificate-resource-exhausted/expected/diagnostics.json index b21603713..8c9f4e6c6 100644 --- a/tests/negative/certificate-resource-exhausted/expected/diagnostics.json +++ b/tests/negative/certificate-resource-exhausted/expected/diagnostics.json @@ -1 +1 @@ -[{"causes":[],"code":"LLS8002","help":[],"labels":[],"message":"the pinned Lean exhausted a resource checking `LexLeanPreserve.C52af23b9c4ffcfaac904d5bd28c047b5.R0` (maximum number of heartbeats): the generated module is 66000 bytes, at least a quarter of max_file_bytes 131072, and is beyond what the machine checks","notes":[],"primary":{"byte_end":0,"byte_start":0,"column_end":1,"column_start":1,"line_end":1,"line_start":1,"path":"lexlean.toml"},"severity":"error","spec":"lexlean/diagnostic/1"}] +[{"causes":[],"code":"LLS8002","help":[],"labels":[],"message":"the pinned Lean exhausted a resource checking `LexLeanPreserve.C5a8aecb66d2051046750612dda1e97aa.R0` (maximum number of heartbeats): the generated module is 66000 bytes, at least a quarter of max_file_bytes 131072, and is beyond what the machine checks","notes":[],"primary":{"byte_end":0,"byte_start":0,"column_end":1,"column_start":1,"line_end":1,"line_start":1,"path":"lexlean.toml"},"severity":"error","spec":"lexlean/diagnostic/1"}] diff --git a/tests/negative/certificate-resource-exhausted/project/lexlean.lock b/tests/negative/certificate-resource-exhausted/project/lexlean.lock index 45728b159..e486d6424 100644 --- a/tests/negative/certificate-resource-exhausted/project/lexlean.lock +++ b/tests/negative/certificate-resource-exhausted/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "743b4fe5ccb7b0dcae4d1ddf7fed292c41f3bd01521f10a3295978ac215364cd" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/certificate-size-limit/project/lexlean.lock b/tests/negative/certificate-size-limit/project/lexlean.lock index d4a5c808a..17bc4d068 100644 --- a/tests/negative/certificate-size-limit/project/lexlean.lock +++ b/tests/negative/certificate-size-limit/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6f85e3c598ebbd2209c3ad5533caeb0ac2558d009e9863ec732435267e89972e" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/certificates-total-limit/project/lexlean.lock b/tests/negative/certificates-total-limit/project/lexlean.lock index 3ac5b219e..561ded858 100644 --- a/tests/negative/certificates-total-limit/project/lexlean.lock +++ b/tests/negative/certificates-total-limit/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "19396dab32e876e6744d5feb41043ceae6961ae8b3e677fc770b3b09fcdbc8ad" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/collection-duplicate-key/project/lexlean.lock b/tests/negative/collection-duplicate-key/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/collection-duplicate-key/project/lexlean.lock +++ b/tests/negative/collection-duplicate-key/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/collection-fold-type-mismatch/project/lexlean.lock b/tests/negative/collection-fold-type-mismatch/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/collection-fold-type-mismatch/project/lexlean.lock +++ b/tests/negative/collection-fold-type-mismatch/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/collection-literal-limit/project/lexlean.lock b/tests/negative/collection-literal-limit/project/lexlean.lock index 2467821c0..9ee531197 100644 --- a/tests/negative/collection-literal-limit/project/lexlean.lock +++ b/tests/negative/collection-literal-limit/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "86eb9da7c6c50be25511dfe1cbf99f5e0ac82b411c2ed9b5b4e6c94924af2253" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/collection-noncanonical-key/project/lexlean.lock b/tests/negative/collection-noncanonical-key/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/collection-noncanonical-key/project/lexlean.lock +++ b/tests/negative/collection-noncanonical-key/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/collection-nonliteral-key/project/lexlean.lock b/tests/negative/collection-nonliteral-key/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/collection-nonliteral-key/project/lexlean.lock +++ b/tests/negative/collection-nonliteral-key/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/collection-out-of-range-key/project/lexlean.lock b/tests/negative/collection-out-of-range-key/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/collection-out-of-range-key/project/lexlean.lock +++ b/tests/negative/collection-out-of-range-key/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/collection-unbounded-iteration/project/lexlean.lock b/tests/negative/collection-unbounded-iteration/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/collection-unbounded-iteration/project/lexlean.lock +++ b/tests/negative/collection-unbounded-iteration/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/collection-unordered-key/project/lexlean.lock b/tests/negative/collection-unordered-key/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/collection-unordered-key/project/lexlean.lock +++ b/tests/negative/collection-unordered-key/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/cross-version-glossary/project/lexlean.lock b/tests/negative/cross-version-glossary/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/cross-version-glossary/project/lexlean.lock +++ b/tests/negative/cross-version-glossary/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/declaration-lean-name/project/lexlean.lock b/tests/negative/declaration-lean-name/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/declaration-lean-name/project/lexlean.lock +++ b/tests/negative/declaration-lean-name/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/eligibility-report-limit/project/lexlean.lock b/tests/negative/eligibility-report-limit/project/lexlean.lock index 8e800fdfc..ff2519a77 100644 --- a/tests/negative/eligibility-report-limit/project/lexlean.lock +++ b/tests/negative/eligibility-report-limit/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "4ee6bfc173aeabc83ab13796f4cb664adf8561fcffafa32bc39ba3006e24eda9" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/eligibility-reports-total-limit/project/lexlean.lock b/tests/negative/eligibility-reports-total-limit/project/lexlean.lock index 8e800fdfc..ff2519a77 100644 --- a/tests/negative/eligibility-reports-total-limit/project/lexlean.lock +++ b/tests/negative/eligibility-reports-total-limit/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "4ee6bfc173aeabc83ab13796f4cb664adf8561fcffafa32bc39ba3006e24eda9" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/escaping-closure-in-data/project/lexlean.lock b/tests/negative/escaping-closure-in-data/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/escaping-closure-in-data/project/lexlean.lock +++ b/tests/negative/escaping-closure-in-data/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/escaping-closure-parameter/project/lexlean.lock b/tests/negative/escaping-closure-parameter/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/escaping-closure-parameter/project/lexlean.lock +++ b/tests/negative/escaping-closure-parameter/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/escaping-closure-structure/project/lexlean.lock b/tests/negative/escaping-closure-structure/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/escaping-closure-structure/project/lexlean.lock +++ b/tests/negative/escaping-closure-structure/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/escaping-closure/project/lexlean.lock b/tests/negative/escaping-closure/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/escaping-closure/project/lexlean.lock +++ b/tests/negative/escaping-closure/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/executable-calls-formal/project/lexlean.lock b/tests/negative/executable-calls-formal/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/executable-calls-formal/project/lexlean.lock +++ b/tests/negative/executable-calls-formal/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/extraction-authority-drift/project/lexlean.lock b/tests/negative/extraction-authority-drift/project/lexlean.lock index d4a5c808a..17bc4d068 100644 --- a/tests/negative/extraction-authority-drift/project/lexlean.lock +++ b/tests/negative/extraction-authority-drift/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6f85e3c598ebbd2209c3ad5533caeb0ac2558d009e9863ec732435267e89972e" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/extraction-rejected/project/lexlean.lock b/tests/negative/extraction-rejected/project/lexlean.lock index d4a5c808a..17bc4d068 100644 --- a/tests/negative/extraction-rejected/project/lexlean.lock +++ b/tests/negative/extraction-rejected/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6f85e3c598ebbd2209c3ad5533caeb0ac2558d009e9863ec732435267e89972e" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/extraction-uncompiled-external/project/lexlean.lock b/tests/negative/extraction-uncompiled-external/project/lexlean.lock index d4a5c808a..17bc4d068 100644 --- a/tests/negative/extraction-uncompiled-external/project/lexlean.lock +++ b/tests/negative/extraction-uncompiled-external/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6f85e3c598ebbd2209c3ad5533caeb0ac2558d009e9863ec732435267e89972e" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/graph-duplicate-edge/project/lexlean.lock b/tests/negative/graph-duplicate-edge/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/graph-duplicate-edge/project/lexlean.lock +++ b/tests/negative/graph-duplicate-edge/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/graph-invalid-reference/project/lexlean.lock b/tests/negative/graph-invalid-reference/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/graph-invalid-reference/project/lexlean.lock +++ b/tests/negative/graph-invalid-reference/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/lambda-capture-extra/project/lexlean.lock b/tests/negative/lambda-capture-extra/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/lambda-capture-extra/project/lexlean.lock +++ b/tests/negative/lambda-capture-extra/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/lambda-capture-missing/project/lexlean.lock b/tests/negative/lambda-capture-missing/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/lambda-capture-missing/project/lexlean.lock +++ b/tests/negative/lambda-capture-missing/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/lambda-type-mismatch/project/lexlean.lock b/tests/negative/lambda-type-mismatch/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/lambda-type-mismatch/project/lexlean.lock +++ b/tests/negative/lambda-type-mismatch/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/lock-schema-language-mismatch/project/lexlean.lock b/tests/negative/lock-schema-language-mismatch/project/lexlean.lock index d6bc854eb..0a10d7d0d 100644 --- a/tests/negative/lock-schema-language-mismatch/project/lexlean.lock +++ b/tests/negative/lock-schema-language-mismatch/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/1" language = "1.2" -compiler_semantics = "961282f94afc09dbbe84cdae395d5b36b6d57c559e4e5ef73d6a1935cb104e90" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/lowering-size-limit/project/lexlean.lock b/tests/negative/lowering-size-limit/project/lexlean.lock index d4a5c808a..17bc4d068 100644 --- a/tests/negative/lowering-size-limit/project/lexlean.lock +++ b/tests/negative/lowering-size-limit/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6f85e3c598ebbd2209c3ad5533caeb0ac2558d009e9863ec732435267e89972e" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/member-generated-name/project/lexlean.lock b/tests/negative/member-generated-name/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/member-generated-name/project/lexlean.lock +++ b/tests/negative/member-generated-name/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/model-artifact-decode-budget/project/lexlean.lock b/tests/negative/model-artifact-decode-budget/project/lexlean.lock index 55d3dbf2b..ea9da4e4b 100644 --- a/tests/negative/model-artifact-decode-budget/project/lexlean.lock +++ b/tests/negative/model-artifact-decode-budget/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "97224c1005c098cfb00c28986caa7733eb43fd183f038947ba92d676edede581" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/model-artifact-digest-mismatch/project/lexlean.lock b/tests/negative/model-artifact-digest-mismatch/project/lexlean.lock index b0fb84dc4..defbe78b3 100644 --- a/tests/negative/model-artifact-digest-mismatch/project/lexlean.lock +++ b/tests/negative/model-artifact-digest-mismatch/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "b54079b5034756fab196e0130add7e969e214992398790a256fbcb3d866fdab4" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/model-artifact-invalid-utf8/project/lexlean.lock b/tests/negative/model-artifact-invalid-utf8/project/lexlean.lock index 540f6c6f3..273dc5949 100644 --- a/tests/negative/model-artifact-invalid-utf8/project/lexlean.lock +++ b/tests/negative/model-artifact-invalid-utf8/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "7407260b337f63f50bc003afdc8e09e578096041ae6365e5b1f39d0dc3d8e093" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/model-artifact-length-mismatch/project/lexlean.lock b/tests/negative/model-artifact-length-mismatch/project/lexlean.lock index b0fb84dc4..defbe78b3 100644 --- a/tests/negative/model-artifact-length-mismatch/project/lexlean.lock +++ b/tests/negative/model-artifact-length-mismatch/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "b54079b5034756fab196e0130add7e969e214992398790a256fbcb3d866fdab4" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/model-artifact-missing/project/lexlean.lock b/tests/negative/model-artifact-missing/project/lexlean.lock index b0fb84dc4..defbe78b3 100644 --- a/tests/negative/model-artifact-missing/project/lexlean.lock +++ b/tests/negative/model-artifact-missing/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "b54079b5034756fab196e0130add7e969e214992398790a256fbcb3d866fdab4" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/model-artifact-over-limit/project/lexlean.lock b/tests/negative/model-artifact-over-limit/project/lexlean.lock index 2f92c82fe..b9f06a398 100644 --- a/tests/negative/model-artifact-over-limit/project/lexlean.lock +++ b/tests/negative/model-artifact-over-limit/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6b2d40a11356013ad4366b900361329faecae628242794cbc0d2ba8a54ff7d4c" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/model-artifact-rank-overflow/project/lexlean.lock b/tests/negative/model-artifact-rank-overflow/project/lexlean.lock index a573a05b0..4424e0add 100644 --- a/tests/negative/model-artifact-rank-overflow/project/lexlean.lock +++ b/tests/negative/model-artifact-rank-overflow/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "9f0dd9fc1743c1e5be95b546a6d77274f7fd5ffc95c0920b73cfe4e007b47fe0" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/model-artifact-role-violation/project/lexlean.lock b/tests/negative/model-artifact-role-violation/project/lexlean.lock index b0fb84dc4..defbe78b3 100644 --- a/tests/negative/model-artifact-role-violation/project/lexlean.lock +++ b/tests/negative/model-artifact-role-violation/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "b54079b5034756fab196e0130add7e969e214992398790a256fbcb3d866fdab4" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/model-artifact-schema-violation/project/lexlean.lock b/tests/negative/model-artifact-schema-violation/project/lexlean.lock index b0fb84dc4..defbe78b3 100644 --- a/tests/negative/model-artifact-schema-violation/project/lexlean.lock +++ b/tests/negative/model-artifact-schema-violation/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "b54079b5034756fab196e0130add7e969e214992398790a256fbcb3d866fdab4" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/model-artifact-shape-mismatch/project/lexlean.lock b/tests/negative/model-artifact-shape-mismatch/project/lexlean.lock index f772a676a..433508a49 100644 --- a/tests/negative/model-artifact-shape-mismatch/project/lexlean.lock +++ b/tests/negative/model-artifact-shape-mismatch/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "797fc89000759a8c6c5448f9e54c39a3aec904374930f6a1eff32e33044037dd" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/model-artifact-symlink/project/lexlean.lock b/tests/negative/model-artifact-symlink/project/lexlean.lock index b0fb84dc4..defbe78b3 100644 --- a/tests/negative/model-artifact-symlink/project/lexlean.lock +++ b/tests/negative/model-artifact-symlink/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "b54079b5034756fab196e0130add7e969e214992398790a256fbcb3d866fdab4" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/model-artifact-unconfigured/project/lexlean.lock b/tests/negative/model-artifact-unconfigured/project/lexlean.lock index 77f0e12cd..99b0a7a65 100644 --- a/tests/negative/model-artifact-unconfigured/project/lexlean.lock +++ b/tests/negative/model-artifact-unconfigured/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "65c0ab6015ada3b098320b5f26ffc6f4a2ceb464a9641e6532a1493110a3c566" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/model-check-without-validator/project/lexlean.lock b/tests/negative/model-check-without-validator/project/lexlean.lock index 77f0e12cd..99b0a7a65 100644 --- a/tests/negative/model-check-without-validator/project/lexlean.lock +++ b/tests/negative/model-check-without-validator/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "65c0ab6015ada3b098320b5f26ffc6f4a2ceb464a9641e6532a1493110a3c566" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/model-composition-forged-junction/project/lexlean.lock b/tests/negative/model-composition-forged-junction/project/lexlean.lock index 77f0e12cd..99b0a7a65 100644 --- a/tests/negative/model-composition-forged-junction/project/lexlean.lock +++ b/tests/negative/model-composition-forged-junction/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "65c0ab6015ada3b098320b5f26ffc6f4a2ceb464a9641e6532a1493110a3c566" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/model-composition-missing-junction/project/lexlean.lock b/tests/negative/model-composition-missing-junction/project/lexlean.lock index 77f0e12cd..99b0a7a65 100644 --- a/tests/negative/model-composition-missing-junction/project/lexlean.lock +++ b/tests/negative/model-composition-missing-junction/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "65c0ab6015ada3b098320b5f26ffc6f4a2ceb464a9641e6532a1493110a3c566" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/model-composition-type-mismatch/project/lexlean.lock b/tests/negative/model-composition-type-mismatch/project/lexlean.lock index 77f0e12cd..99b0a7a65 100644 --- a/tests/negative/model-composition-type-mismatch/project/lexlean.lock +++ b/tests/negative/model-composition-type-mismatch/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "65c0ab6015ada3b098320b5f26ffc6f4a2ceb464a9641e6532a1493110a3c566" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/model-contract-realization-mismatch/project/lexlean.lock b/tests/negative/model-contract-realization-mismatch/project/lexlean.lock index 77f0e12cd..99b0a7a65 100644 --- a/tests/negative/model-contract-realization-mismatch/project/lexlean.lock +++ b/tests/negative/model-contract-realization-mismatch/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "65c0ab6015ada3b098320b5f26ffc6f4a2ceb464a9641e6532a1493110a3c566" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/model-encoder-width-forged/project/lexlean.lock b/tests/negative/model-encoder-width-forged/project/lexlean.lock index f772a676a..433508a49 100644 --- a/tests/negative/model-encoder-width-forged/project/lexlean.lock +++ b/tests/negative/model-encoder-width-forged/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "797fc89000759a8c6c5448f9e54c39a3aec904374930f6a1eff32e33044037dd" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/model-false-evidence/project/lexlean.lock b/tests/negative/model-false-evidence/project/lexlean.lock index 77f0e12cd..99b0a7a65 100644 --- a/tests/negative/model-false-evidence/project/lexlean.lock +++ b/tests/negative/model-false-evidence/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "65c0ab6015ada3b098320b5f26ffc6f4a2ceb464a9641e6532a1493110a3c566" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/model-float-descriptor/project/lexlean.lock b/tests/negative/model-float-descriptor/project/lexlean.lock index b0fb84dc4..defbe78b3 100644 --- a/tests/negative/model-float-descriptor/project/lexlean.lock +++ b/tests/negative/model-float-descriptor/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "b54079b5034756fab196e0130add7e969e214992398790a256fbcb3d866fdab4" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/model-foreign-evidence/project/lexlean.lock b/tests/negative/model-foreign-evidence/project/lexlean.lock index 77f0e12cd..99b0a7a65 100644 --- a/tests/negative/model-foreign-evidence/project/lexlean.lock +++ b/tests/negative/model-foreign-evidence/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "65c0ab6015ada3b098320b5f26ffc6f4a2ceb464a9641e6532a1493110a3c566" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/model-forged-evidence/project/lexlean.lock b/tests/negative/model-forged-evidence/project/lexlean.lock index 77f0e12cd..99b0a7a65 100644 --- a/tests/negative/model-forged-evidence/project/lexlean.lock +++ b/tests/negative/model-forged-evidence/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "65c0ab6015ada3b098320b5f26ffc6f4a2ceb464a9641e6532a1493110a3c566" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/model-missing-entry/project/lexlean.lock b/tests/negative/model-missing-entry/project/lexlean.lock index 77f0e12cd..99b0a7a65 100644 --- a/tests/negative/model-missing-entry/project/lexlean.lock +++ b/tests/negative/model-missing-entry/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "65c0ab6015ada3b098320b5f26ffc6f4a2ceb464a9641e6532a1493110a3c566" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/model-opaque-member/project/lexlean.lock b/tests/negative/model-opaque-member/project/lexlean.lock index 77f0e12cd..99b0a7a65 100644 --- a/tests/negative/model-opaque-member/project/lexlean.lock +++ b/tests/negative/model-opaque-member/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "65c0ab6015ada3b098320b5f26ffc6f4a2ceb464a9641e6532a1493110a3c566" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/model-predicate-signature/project/lexlean.lock b/tests/negative/model-predicate-signature/project/lexlean.lock index 77f0e12cd..99b0a7a65 100644 --- a/tests/negative/model-predicate-signature/project/lexlean.lock +++ b/tests/negative/model-predicate-signature/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "65c0ab6015ada3b098320b5f26ffc6f4a2ceb464a9641e6532a1493110a3c566" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/model-realization-bypass/project/lexlean.lock b/tests/negative/model-realization-bypass/project/lexlean.lock index 77f0e12cd..99b0a7a65 100644 --- a/tests/negative/model-realization-bypass/project/lexlean.lock +++ b/tests/negative/model-realization-bypass/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "65c0ab6015ada3b098320b5f26ffc6f4a2ceb464a9641e6532a1493110a3c566" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/model-unregistered-claim/project/lexlean.lock b/tests/negative/model-unregistered-claim/project/lexlean.lock index 77f0e12cd..99b0a7a65 100644 --- a/tests/negative/model-unregistered-claim/project/lexlean.lock +++ b/tests/negative/model-unregistered-claim/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "65c0ab6015ada3b098320b5f26ffc6f4a2ceb464a9641e6532a1493110a3c566" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/model-unvalidated-boundary/project/lexlean.lock b/tests/negative/model-unvalidated-boundary/project/lexlean.lock index 77f0e12cd..99b0a7a65 100644 --- a/tests/negative/model-unvalidated-boundary/project/lexlean.lock +++ b/tests/negative/model-unvalidated-boundary/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "65c0ab6015ada3b098320b5f26ffc6f4a2ceb464a9641e6532a1493110a3c566" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/model-unvalidated-postcondition/project/lexlean.lock b/tests/negative/model-unvalidated-postcondition/project/lexlean.lock index 77f0e12cd..99b0a7a65 100644 --- a/tests/negative/model-unvalidated-postcondition/project/lexlean.lock +++ b/tests/negative/model-unvalidated-postcondition/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "65c0ab6015ada3b098320b5f26ffc6f4a2ceb464a9641e6532a1493110a3c566" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/model-vacuous-claim/project/lexlean.lock b/tests/negative/model-vacuous-claim/project/lexlean.lock index 77f0e12cd..99b0a7a65 100644 --- a/tests/negative/model-vacuous-claim/project/lexlean.lock +++ b/tests/negative/model-vacuous-claim/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "65c0ab6015ada3b098320b5f26ffc6f4a2ceb464a9641e6532a1493110a3c566" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/model-validator-unsound-statement/project/lexlean.lock b/tests/negative/model-validator-unsound-statement/project/lexlean.lock index 77f0e12cd..99b0a7a65 100644 --- a/tests/negative/model-validator-unsound-statement/project/lexlean.lock +++ b/tests/negative/model-validator-unsound-statement/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "65c0ab6015ada3b098320b5f26ffc6f4a2ceb464a9641e6532a1493110a3c566" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/module-name-dotted-first/project/lexlean.lock b/tests/negative/module-name-dotted-first/project/lexlean.lock index d539fed4d..05e8b55c9 100644 --- a/tests/negative/module-name-dotted-first/project/lexlean.lock +++ b/tests/negative/module-name-dotted-first/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "95276aad5a2f8e56451e0155187ce36290918ff47f8b6a315a4f65c3bfef9e71" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/module-name-dotted-last/project/lexlean.lock b/tests/negative/module-name-dotted-last/project/lexlean.lock index e3292348c..d93419227 100644 --- a/tests/negative/module-name-dotted-last/project/lexlean.lock +++ b/tests/negative/module-name-dotted-last/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "931ec0afb0a76b983ac4c428c862444a84cf5503f5dd3674b7f95f86e20d955e" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/module-name-lean-namespace/project/lexlean.lock b/tests/negative/module-name-lean-namespace/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/module-name-lean-namespace/project/lexlean.lock +++ b/tests/negative/module-name-lean-namespace/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/module-prefix-target-production/project/lexlean.lock b/tests/negative/module-prefix-target-production/project/lexlean.lock index fb75275ed..5e1f9c441 100644 --- a/tests/negative/module-prefix-target-production/project/lexlean.lock +++ b/tests/negative/module-prefix-target-production/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "d4ba5893c2a056d009d9df7131d82f1a6f3a560659e43ded292d44b5d050ee2b" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/mutual-group-noncontiguous/project/lexlean.lock b/tests/negative/mutual-group-noncontiguous/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/mutual-group-noncontiguous/project/lexlean.lock +++ b/tests/negative/mutual-group-noncontiguous/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/mutual-label-shared/project/lexlean.lock b/tests/negative/mutual-label-shared/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/mutual-label-shared/project/lexlean.lock +++ b/tests/negative/mutual-label-shared/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/polymorphic-ambiguity/project/lexlean.lock b/tests/negative/polymorphic-ambiguity/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/polymorphic-ambiguity/project/lexlean.lock +++ b/tests/negative/polymorphic-ambiguity/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/polymorphic-recursion/project/lexlean.lock b/tests/negative/polymorphic-recursion/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/polymorphic-recursion/project/lexlean.lock +++ b/tests/negative/polymorphic-recursion/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/preservation-drift/project/lexlean.lock b/tests/negative/preservation-drift/project/lexlean.lock index d4a5c808a..17bc4d068 100644 --- a/tests/negative/preservation-drift/project/lexlean.lock +++ b/tests/negative/preservation-drift/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6f85e3c598ebbd2209c3ad5533caeb0ac2558d009e9863ec732435267e89972e" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/production-effect-mismatch/project/lexlean.lock b/tests/negative/production-effect-mismatch/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/production-effect-mismatch/project/lexlean.lock +++ b/tests/negative/production-effect-mismatch/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/production-formal-only-dependency/project/lexlean.lock b/tests/negative/production-formal-only-dependency/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/production-formal-only-dependency/project/lexlean.lock +++ b/tests/negative/production-formal-only-dependency/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/production-hidden-dependency/project/lexlean.lock b/tests/negative/production-hidden-dependency/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/production-hidden-dependency/project/lexlean.lock +++ b/tests/negative/production-hidden-dependency/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/production-higher-order-escape/project/lexlean.lock b/tests/negative/production-higher-order-escape/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/production-higher-order-escape/project/lexlean.lock +++ b/tests/negative/production-higher-order-escape/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/production-literal-width/project/lexlean.lock b/tests/negative/production-literal-width/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/production-literal-width/project/lexlean.lock +++ b/tests/negative/production-literal-width/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/production-named-type-boundary/project/lexlean.lock b/tests/negative/production-named-type-boundary/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/production-named-type-boundary/project/lexlean.lock +++ b/tests/negative/production-named-type-boundary/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/production-phantom-type-parameter/project/lexlean.lock b/tests/negative/production-phantom-type-parameter/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/production-phantom-type-parameter/project/lexlean.lock +++ b/tests/negative/production-phantom-type-parameter/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/production-polymorphic-root/project/lexlean.lock b/tests/negative/production-polymorphic-root/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/production-polymorphic-root/project/lexlean.lock +++ b/tests/negative/production-polymorphic-root/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/production-root-not-executable/project/lexlean.lock b/tests/negative/production-root-not-executable/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/production-root-not-executable/project/lexlean.lock +++ b/tests/negative/production-root-not-executable/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/production-runtime-incompatible-type/project/lexlean.lock b/tests/negative/production-runtime-incompatible-type/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/production-runtime-incompatible-type/project/lexlean.lock +++ b/tests/negative/production-runtime-incompatible-type/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/production-unbounded-type/project/lexlean.lock b/tests/negative/production-unbounded-type/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/production-unbounded-type/project/lexlean.lock +++ b/tests/negative/production-unbounded-type/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/production-universe-boundary/project/lexlean.lock b/tests/negative/production-universe-boundary/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/production-universe-boundary/project/lexlean.lock +++ b/tests/negative/production-universe-boundary/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/production-unknown-target/project/lexlean.lock b/tests/negative/production-unknown-target/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/production-unknown-target/project/lexlean.lock +++ b/tests/negative/production-unknown-target/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-accept-bypass-alias/project/lexlean.lock b/tests/negative/reasoning-accept-bypass-alias/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-accept-bypass-alias/project/lexlean.lock +++ b/tests/negative/reasoning-accept-bypass-alias/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-accept-bypass-invariant/project/lexlean.lock b/tests/negative/reasoning-accept-bypass-invariant/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-accept-bypass-invariant/project/lexlean.lock +++ b/tests/negative/reasoning-accept-bypass-invariant/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-accept-bypass-observation/project/lexlean.lock b/tests/negative/reasoning-accept-bypass-observation/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-accept-bypass-observation/project/lexlean.lock +++ b/tests/negative/reasoning-accept-bypass-observation/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-accept-bypass-ref/project/lexlean.lock b/tests/negative/reasoning-accept-bypass-ref/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-accept-bypass-ref/project/lexlean.lock +++ b/tests/negative/reasoning-accept-bypass-ref/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-answer-correct-inexact/project/lexlean.lock b/tests/negative/reasoning-answer-correct-inexact/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-answer-correct-inexact/project/lexlean.lock +++ b/tests/negative/reasoning-answer-correct-inexact/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-answer-correct-unsorted/project/lexlean.lock b/tests/negative/reasoning-answer-correct-unsorted/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-answer-correct-unsorted/project/lexlean.lock +++ b/tests/negative/reasoning-answer-correct-unsorted/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-answer-invariant-without-initial/project/lexlean.lock b/tests/negative/reasoning-answer-invariant-without-initial/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-answer-invariant-without-initial/project/lexlean.lock +++ b/tests/negative/reasoning-answer-invariant-without-initial/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-answer-type/project/lexlean.lock b/tests/negative/reasoning-answer-type/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-answer-type/project/lexlean.lock +++ b/tests/negative/reasoning-answer-type/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-binder-reserved/project/lexlean.lock b/tests/negative/reasoning-binder-reserved/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-binder-reserved/project/lexlean.lock +++ b/tests/negative/reasoning-binder-reserved/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-budget-not-nat/project/lexlean.lock b/tests/negative/reasoning-budget-not-nat/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-budget-not-nat/project/lexlean.lock +++ b/tests/negative/reasoning-budget-not-nat/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-claims-duplicate/project/lexlean.lock b/tests/negative/reasoning-claims-duplicate/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-claims-duplicate/project/lexlean.lock +++ b/tests/negative/reasoning-claims-duplicate/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-claims-unsorted/project/lexlean.lock b/tests/negative/reasoning-claims-unsorted/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-claims-unsorted/project/lexlean.lock +++ b/tests/negative/reasoning-claims-unsorted/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-conclude-bypass-invariant/project/lexlean.lock b/tests/negative/reasoning-conclude-bypass-invariant/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-conclude-bypass-invariant/project/lexlean.lock +++ b/tests/negative/reasoning-conclude-bypass-invariant/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-conclude-bypass-observation/project/lexlean.lock b/tests/negative/reasoning-conclude-bypass-observation/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-conclude-bypass-observation/project/lexlean.lock +++ b/tests/negative/reasoning-conclude-bypass-observation/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-deduplicate-unordered-state/project/lexlean.lock b/tests/negative/reasoning-deduplicate-unordered-state/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-deduplicate-unordered-state/project/lexlean.lock +++ b/tests/negative/reasoning-deduplicate-unordered-state/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-duplicate-rule/project/lexlean.lock b/tests/negative/reasoning-duplicate-rule/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-duplicate-rule/project/lexlean.lock +++ b/tests/negative/reasoning-duplicate-rule/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-elaboration-over-limit/project/lexlean.lock b/tests/negative/reasoning-elaboration-over-limit/project/lexlean.lock index b10ab74a0..639d2edf0 100644 --- a/tests/negative/reasoning-elaboration-over-limit/project/lexlean.lock +++ b/tests/negative/reasoning-elaboration-over-limit/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "32962ccccc0e0504497383fdd12cf9f1e761305e58c22fa64cc3776c5fad8c16" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-extract-bypass-alias/project/lexlean.lock b/tests/negative/reasoning-extract-bypass-alias/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-extract-bypass-alias/project/lexlean.lock +++ b/tests/negative/reasoning-extract-bypass-alias/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-extract-bypass-branch/project/lexlean.lock b/tests/negative/reasoning-extract-bypass-branch/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-extract-bypass-branch/project/lexlean.lock +++ b/tests/negative/reasoning-extract-bypass-branch/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-extract-bypass-invariant/project/lexlean.lock b/tests/negative/reasoning-extract-bypass-invariant/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-extract-bypass-invariant/project/lexlean.lock +++ b/tests/negative/reasoning-extract-bypass-invariant/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-extract-bypass-reasoner/project/lexlean.lock b/tests/negative/reasoning-extract-bypass-reasoner/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-extract-bypass-reasoner/project/lexlean.lock +++ b/tests/negative/reasoning-extract-bypass-reasoner/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-extract-bypass-ref/project/lexlean.lock b/tests/negative/reasoning-extract-bypass-ref/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-extract-bypass-ref/project/lexlean.lock +++ b/tests/negative/reasoning-extract-bypass-ref/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-false-answer-correct/project/lexlean.lock b/tests/negative/reasoning-false-answer-correct/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-false-answer-correct/project/lexlean.lock +++ b/tests/negative/reasoning-false-answer-correct/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-false-invariant-answer-correct/project/lexlean.lock b/tests/negative/reasoning-false-invariant-answer-correct/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-false-invariant-answer-correct/project/lexlean.lock +++ b/tests/negative/reasoning-false-invariant-answer-correct/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-false-observation-answer-correct/project/lexlean.lock b/tests/negative/reasoning-false-observation-answer-correct/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-false-observation-answer-correct/project/lexlean.lock +++ b/tests/negative/reasoning-false-observation-answer-correct/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-forged-trace/project/lexlean.lock b/tests/negative/reasoning-forged-trace/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-forged-trace/project/lexlean.lock +++ b/tests/negative/reasoning-forged-trace/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-formal-rule/project/lexlean.lock b/tests/negative/reasoning-formal-rule/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-formal-rule/project/lexlean.lock +++ b/tests/negative/reasoning-formal-rule/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-forward-without-fuel/project/lexlean.lock b/tests/negative/reasoning-forward-without-fuel/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-forward-without-fuel/project/lexlean.lock +++ b/tests/negative/reasoning-forward-without-fuel/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-frontier-not-nat/project/lexlean.lock b/tests/negative/reasoning-frontier-not-nat/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-frontier-not-nat/project/lexlean.lock +++ b/tests/negative/reasoning-frontier-not-nat/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-fuel-bound-inexact/project/lexlean.lock b/tests/negative/reasoning-fuel-bound-inexact/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-fuel-bound-inexact/project/lexlean.lock +++ b/tests/negative/reasoning-fuel-bound-inexact/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-fuel-not-nat/project/lexlean.lock b/tests/negative/reasoning-fuel-not-nat/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-fuel-not-nat/project/lexlean.lock +++ b/tests/negative/reasoning-fuel-not-nat/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-generate-claims/project/lexlean.lock b/tests/negative/reasoning-generate-claims/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-generate-claims/project/lexlean.lock +++ b/tests/negative/reasoning-generate-claims/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-generate-subject-mismatch/project/lexlean.lock b/tests/negative/reasoning-generate-subject-mismatch/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-generate-subject-mismatch/project/lexlean.lock +++ b/tests/negative/reasoning-generate-subject-mismatch/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-generate-with-logic/project/lexlean.lock b/tests/negative/reasoning-generate-with-logic/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-generate-with-logic/project/lexlean.lock +++ b/tests/negative/reasoning-generate-with-logic/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-generate-with-rules/project/lexlean.lock b/tests/negative/reasoning-generate-with-rules/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-generate-with-rules/project/lexlean.lock +++ b/tests/negative/reasoning-generate-with-rules/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-generate-without-budget/project/lexlean.lock b/tests/negative/reasoning-generate-without-budget/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-generate-without-budget/project/lexlean.lock +++ b/tests/negative/reasoning-generate-without-budget/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-generator-type/project/lexlean.lock b/tests/negative/reasoning-generator-type/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-generator-type/project/lexlean.lock +++ b/tests/negative/reasoning-generator-type/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-inconsistent-verifier/project/lexlean.lock b/tests/negative/reasoning-inconsistent-verifier/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-inconsistent-verifier/project/lexlean.lock +++ b/tests/negative/reasoning-inconsistent-verifier/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-initial-inexact/project/lexlean.lock b/tests/negative/reasoning-initial-inexact/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-initial-inexact/project/lexlean.lock +++ b/tests/negative/reasoning-initial-inexact/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-initial-without-invariant/project/lexlean.lock b/tests/negative/reasoning-initial-without-invariant/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-initial-without-invariant/project/lexlean.lock +++ b/tests/negative/reasoning-initial-without-invariant/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-insufficient-fuel/project/lexlean.lock b/tests/negative/reasoning-insufficient-fuel/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-insufficient-fuel/project/lexlean.lock +++ b/tests/negative/reasoning-insufficient-fuel/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-interface-rebound/project/lexlean.lock b/tests/negative/reasoning-interface-rebound/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-interface-rebound/project/lexlean.lock +++ b/tests/negative/reasoning-interface-rebound/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-invalid-rule-application/project/lexlean.lock b/tests/negative/reasoning-invalid-rule-application/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-invalid-rule-application/project/lexlean.lock +++ b/tests/negative/reasoning-invalid-rule-application/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-invariant-signature/project/lexlean.lock b/tests/negative/reasoning-invariant-signature/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-invariant-signature/project/lexlean.lock +++ b/tests/negative/reasoning-invariant-signature/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-invariant-unpreserved/project/lexlean.lock b/tests/negative/reasoning-invariant-unpreserved/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-invariant-unpreserved/project/lexlean.lock +++ b/tests/negative/reasoning-invariant-unpreserved/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-logic-type-parameters/project/lexlean.lock b/tests/negative/reasoning-logic-type-parameters/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-logic-type-parameters/project/lexlean.lock +++ b/tests/negative/reasoning-logic-type-parameters/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-no-rules/project/lexlean.lock b/tests/negative/reasoning-no-rules/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-no-rules/project/lexlean.lock +++ b/tests/negative/reasoning-no-rules/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-nonterminating-rule/project/lexlean.lock b/tests/negative/reasoning-nonterminating-rule/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-nonterminating-rule/project/lexlean.lock +++ b/tests/negative/reasoning-nonterminating-rule/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-observation-initial-inexact/project/lexlean.lock b/tests/negative/reasoning-observation-initial-inexact/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-observation-initial-inexact/project/lexlean.lock +++ b/tests/negative/reasoning-observation-initial-inexact/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-observation-invariant-signature/project/lexlean.lock b/tests/negative/reasoning-observation-invariant-signature/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-observation-invariant-signature/project/lexlean.lock +++ b/tests/negative/reasoning-observation-invariant-signature/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-observation-preserved-inexact/project/lexlean.lock b/tests/negative/reasoning-observation-preserved-inexact/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-observation-preserved-inexact/project/lexlean.lock +++ b/tests/negative/reasoning-observation-preserved-inexact/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-observation-type/project/lexlean.lock b/tests/negative/reasoning-observation-type/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-observation-type/project/lexlean.lock +++ b/tests/negative/reasoning-observation-type/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-observation-unsorted/project/lexlean.lock b/tests/negative/reasoning-observation-unsorted/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-observation-unsorted/project/lexlean.lock +++ b/tests/negative/reasoning-observation-unsorted/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-opaque-member/project/lexlean.lock b/tests/negative/reasoning-opaque-member/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-opaque-member/project/lexlean.lock +++ b/tests/negative/reasoning-opaque-member/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-progress-without-ranking/project/lexlean.lock b/tests/negative/reasoning-progress-without-ranking/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-progress-without-ranking/project/lexlean.lock +++ b/tests/negative/reasoning-progress-without-ranking/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-ranking-signature/project/lexlean.lock b/tests/negative/reasoning-ranking-signature/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-ranking-signature/project/lexlean.lock +++ b/tests/negative/reasoning-ranking-signature/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-reasoner-rule-type-arguments/project/lexlean.lock b/tests/negative/reasoning-reasoner-rule-type-arguments/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-reasoner-rule-type-arguments/project/lexlean.lock +++ b/tests/negative/reasoning-reasoner-rule-type-arguments/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-relation-not-definition/project/lexlean.lock b/tests/negative/reasoning-relation-not-definition/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-relation-not-definition/project/lexlean.lock +++ b/tests/negative/reasoning-relation-not-definition/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-relation-signature/project/lexlean.lock b/tests/negative/reasoning-relation-signature/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-relation-signature/project/lexlean.lock +++ b/tests/negative/reasoning-relation-signature/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-reserved-declaration-name/project/lexlean.lock b/tests/negative/reasoning-reserved-declaration-name/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-reserved-declaration-name/project/lexlean.lock +++ b/tests/negative/reasoning-reserved-declaration-name/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-reserved-declaration-namespace/project/lexlean.lock b/tests/negative/reasoning-reserved-declaration-namespace/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-reserved-declaration-namespace/project/lexlean.lock +++ b/tests/negative/reasoning-reserved-declaration-namespace/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-rule-bypass-alias/project/lexlean.lock b/tests/negative/reasoning-rule-bypass-alias/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-rule-bypass-alias/project/lexlean.lock +++ b/tests/negative/reasoning-rule-bypass-alias/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-rule-bypass-branch/project/lexlean.lock b/tests/negative/reasoning-rule-bypass-branch/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-rule-bypass-branch/project/lexlean.lock +++ b/tests/negative/reasoning-rule-bypass-branch/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-rule-bypass-generator/project/lexlean.lock b/tests/negative/reasoning-rule-bypass-generator/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-rule-bypass-generator/project/lexlean.lock +++ b/tests/negative/reasoning-rule-bypass-generator/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-rule-bypass-guard/project/lexlean.lock b/tests/negative/reasoning-rule-bypass-guard/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-rule-bypass-guard/project/lexlean.lock +++ b/tests/negative/reasoning-rule-bypass-guard/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-rule-bypass-iterate/project/lexlean.lock b/tests/negative/reasoning-rule-bypass-iterate/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-rule-bypass-iterate/project/lexlean.lock +++ b/tests/negative/reasoning-rule-bypass-iterate/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-rule-bypass-lambda/project/lexlean.lock b/tests/negative/reasoning-rule-bypass-lambda/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-rule-bypass-lambda/project/lexlean.lock +++ b/tests/negative/reasoning-rule-bypass-lambda/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-rule-bypass-observe/project/lexlean.lock b/tests/negative/reasoning-rule-bypass-observe/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-rule-bypass-observe/project/lexlean.lock +++ b/tests/negative/reasoning-rule-bypass-observe/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-rule-bypass-ref/project/lexlean.lock b/tests/negative/reasoning-rule-bypass-ref/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-rule-bypass-ref/project/lexlean.lock +++ b/tests/negative/reasoning-rule-bypass-ref/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-rule-bypass/project/lexlean.lock b/tests/negative/reasoning-rule-bypass/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-rule-bypass/project/lexlean.lock +++ b/tests/negative/reasoning-rule-bypass/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-rule-candidates-type/project/lexlean.lock b/tests/negative/reasoning-rule-candidates-type/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-rule-candidates-type/project/lexlean.lock +++ b/tests/negative/reasoning-rule-candidates-type/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-rule-conclusion-type/project/lexlean.lock b/tests/negative/reasoning-rule-conclusion-type/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-rule-conclusion-type/project/lexlean.lock +++ b/tests/negative/reasoning-rule-conclusion-type/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-rule-foreign-logic/project/lexlean.lock b/tests/negative/reasoning-rule-foreign-logic/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-rule-foreign-logic/project/lexlean.lock +++ b/tests/negative/reasoning-rule-foreign-logic/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-rule-guard-type/project/lexlean.lock b/tests/negative/reasoning-rule-guard-type/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-rule-guard-type/project/lexlean.lock +++ b/tests/negative/reasoning-rule-guard-type/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-rule-progress-inexact/project/lexlean.lock b/tests/negative/reasoning-rule-progress-inexact/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-rule-progress-inexact/project/lexlean.lock +++ b/tests/negative/reasoning-rule-progress-inexact/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-rule-soundness-inexact/project/lexlean.lock b/tests/negative/reasoning-rule-soundness-inexact/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-rule-soundness-inexact/project/lexlean.lock +++ b/tests/negative/reasoning-rule-soundness-inexact/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-rule-type-arguments/project/lexlean.lock b/tests/negative/reasoning-rule-type-arguments/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-rule-type-arguments/project/lexlean.lock +++ b/tests/negative/reasoning-rule-type-arguments/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-rule-unknown-logic/project/lexlean.lock b/tests/negative/reasoning-rule-unknown-logic/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-rule-unknown-logic/project/lexlean.lock +++ b/tests/negative/reasoning-rule-unknown-logic/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-rules-without-logic/project/lexlean.lock b/tests/negative/reasoning-rules-without-logic/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-rules-without-logic/project/lexlean.lock +++ b/tests/negative/reasoning-rules-without-logic/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-search-accept-bypass-invariant/project/lexlean.lock b/tests/negative/reasoning-search-accept-bypass-invariant/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-search-accept-bypass-invariant/project/lexlean.lock +++ b/tests/negative/reasoning-search-accept-bypass-invariant/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-search-step-bypass-invariant/project/lexlean.lock b/tests/negative/reasoning-search-step-bypass-invariant/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-search-step-bypass-invariant/project/lexlean.lock +++ b/tests/negative/reasoning-search-step-bypass-invariant/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-search-without-frontier/project/lexlean.lock b/tests/negative/reasoning-search-without-frontier/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-search-without-frontier/project/lexlean.lock +++ b/tests/negative/reasoning-search-without-frontier/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-specification-signature/project/lexlean.lock b/tests/negative/reasoning-specification-signature/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-specification-signature/project/lexlean.lock +++ b/tests/negative/reasoning-specification-signature/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-terminates-without-initial/project/lexlean.lock b/tests/negative/reasoning-terminates-without-initial/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-terminates-without-initial/project/lexlean.lock +++ b/tests/negative/reasoning-terminates-without-initial/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-terminates-without-progress/project/lexlean.lock b/tests/negative/reasoning-terminates-without-progress/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-terminates-without-progress/project/lexlean.lock +++ b/tests/negative/reasoning-terminates-without-progress/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-terminates-without-ranking/project/lexlean.lock b/tests/negative/reasoning-terminates-without-ranking/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-terminates-without-ranking/project/lexlean.lock +++ b/tests/negative/reasoning-terminates-without-ranking/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-terminating-search/project/lexlean.lock b/tests/negative/reasoning-terminating-search/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-terminating-search/project/lexlean.lock +++ b/tests/negative/reasoning-terminating-search/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-unknown-rule/project/lexlean.lock b/tests/negative/reasoning-unknown-rule/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-unknown-rule/project/lexlean.lock +++ b/tests/negative/reasoning-unknown-rule/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-unknown-verifier/project/lexlean.lock b/tests/negative/reasoning-unknown-verifier/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-unknown-verifier/project/lexlean.lock +++ b/tests/negative/reasoning-unknown-verifier/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-unregistered-claim/project/lexlean.lock b/tests/negative/reasoning-unregistered-claim/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-unregistered-claim/project/lexlean.lock +++ b/tests/negative/reasoning-unregistered-claim/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-unregistered-strategy/project/lexlean.lock b/tests/negative/reasoning-unregistered-strategy/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-unregistered-strategy/project/lexlean.lock +++ b/tests/negative/reasoning-unregistered-strategy/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-unverified-answer/project/lexlean.lock b/tests/negative/reasoning-unverified-answer/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-unverified-answer/project/lexlean.lock +++ b/tests/negative/reasoning-unverified-answer/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-verifier-formal-check/project/lexlean.lock b/tests/negative/reasoning-verifier-formal-check/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-verifier-formal-check/project/lexlean.lock +++ b/tests/negative/reasoning-verifier-formal-check/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-verifier-inexact/project/lexlean.lock b/tests/negative/reasoning-verifier-inexact/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-verifier-inexact/project/lexlean.lock +++ b/tests/negative/reasoning-verifier-inexact/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-verifier-signature/project/lexlean.lock b/tests/negative/reasoning-verifier-signature/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-verifier-signature/project/lexlean.lock +++ b/tests/negative/reasoning-verifier-signature/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-verifier-subject-mismatch/project/lexlean.lock b/tests/negative/reasoning-verifier-subject-mismatch/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-verifier-subject-mismatch/project/lexlean.lock +++ b/tests/negative/reasoning-verifier-subject-mismatch/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-verifier-type-mismatch/project/lexlean.lock b/tests/negative/reasoning-verifier-type-mismatch/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-verifier-type-mismatch/project/lexlean.lock +++ b/tests/negative/reasoning-verifier-type-mismatch/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/reasoning-zero-frontier/project/lexlean.lock b/tests/negative/reasoning-zero-frontier/project/lexlean.lock index 7fe7f6b52..d29791309 100644 --- a/tests/negative/reasoning-zero-frontier/project/lexlean.lock +++ b/tests/negative/reasoning-zero-frontier/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "24f5f4a1f57fe4c2752462146b8ec7e3366004cd8e459a2ad079867ba9f67827" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/recursion-cyclic-measure/project/lexlean.lock b/tests/negative/recursion-cyclic-measure/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/recursion-cyclic-measure/project/lexlean.lock +++ b/tests/negative/recursion-cyclic-measure/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/recursion-evidence-omits-match/project/lexlean.lock b/tests/negative/recursion-evidence-omits-match/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/recursion-evidence-omits-match/project/lexlean.lock +++ b/tests/negative/recursion-evidence-omits-match/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/recursion-false-evidence/project/lexlean.lock b/tests/negative/recursion-false-evidence/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/recursion-false-evidence/project/lexlean.lock +++ b/tests/negative/recursion-false-evidence/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/recursion-forged-evidence/project/lexlean.lock b/tests/negative/recursion-forged-evidence/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/recursion-forged-evidence/project/lexlean.lock +++ b/tests/negative/recursion-forged-evidence/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/recursion-member-under-lambda/project/lexlean.lock b/tests/negative/recursion-member-under-lambda/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/recursion-member-under-lambda/project/lexlean.lock +++ b/tests/negative/recursion-member-under-lambda/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/recursion-missing-case/project/lexlean.lock b/tests/negative/recursion-missing-case/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/recursion-missing-case/project/lexlean.lock +++ b/tests/negative/recursion-missing-case/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/recursion-missing-evidence/project/lexlean.lock b/tests/negative/recursion-missing-evidence/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/recursion-missing-evidence/project/lexlean.lock +++ b/tests/negative/recursion-missing-evidence/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/recursion-mixed-families/project/lexlean.lock b/tests/negative/recursion-mixed-families/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/recursion-mixed-families/project/lexlean.lock +++ b/tests/negative/recursion-mixed-families/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/recursion-mutual-cyclic-measure/project/lexlean.lock b/tests/negative/recursion-mutual-cyclic-measure/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/recursion-mutual-cyclic-measure/project/lexlean.lock +++ b/tests/negative/recursion-mutual-cyclic-measure/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/recursion-mutual-disconnected/project/lexlean.lock b/tests/negative/recursion-mutual-disconnected/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/recursion-mutual-disconnected/project/lexlean.lock +++ b/tests/negative/recursion-mutual-disconnected/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/recursion-mutual-member-without-call/project/lexlean.lock b/tests/negative/recursion-mutual-member-without-call/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/recursion-mutual-member-without-call/project/lexlean.lock +++ b/tests/negative/recursion-mutual-member-without-call/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/recursion-mutual-mixed/project/lexlean.lock b/tests/negative/recursion-mutual-mixed/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/recursion-mutual-mixed/project/lexlean.lock +++ b/tests/negative/recursion-mutual-mixed/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/recursion-nondecreasing/project/lexlean.lock b/tests/negative/recursion-nondecreasing/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/recursion-nondecreasing/project/lexlean.lock +++ b/tests/negative/recursion-nondecreasing/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/recursion-under-lambda/project/lexlean.lock b/tests/negative/recursion-under-lambda/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/recursion-under-lambda/project/lexlean.lock +++ b/tests/negative/recursion-under-lambda/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/recursion-well-founded-reference/project/lexlean.lock b/tests/negative/recursion-well-founded-reference/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/recursion-well-founded-reference/project/lexlean.lock +++ b/tests/negative/recursion-well-founded-reference/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/recursion-wrong-argument/project/lexlean.lock b/tests/negative/recursion-wrong-argument/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/recursion-wrong-argument/project/lexlean.lock +++ b/tests/negative/recursion-wrong-argument/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/recursive-constructor-mismatch/project/lexlean.lock b/tests/negative/recursive-constructor-mismatch/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/recursive-constructor-mismatch/project/lexlean.lock +++ b/tests/negative/recursive-constructor-mismatch/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/recursive-match-foreign-constructor/project/lexlean.lock b/tests/negative/recursive-match-foreign-constructor/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/recursive-match-foreign-constructor/project/lexlean.lock +++ b/tests/negative/recursive-match-foreign-constructor/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/recursive-mutual-uninhabited/project/lexlean.lock b/tests/negative/recursive-mutual-uninhabited/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/recursive-mutual-uninhabited/project/lexlean.lock +++ b/tests/negative/recursive-mutual-uninhabited/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/recursive-structure/project/lexlean.lock b/tests/negative/recursive-structure/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/recursive-structure/project/lexlean.lock +++ b/tests/negative/recursive-structure/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/recursive-type-arguments/project/lexlean.lock b/tests/negative/recursive-type-arguments/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/recursive-type-arguments/project/lexlean.lock +++ b/tests/negative/recursive-type-arguments/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/recursive-type-forward/project/lexlean.lock b/tests/negative/recursive-type-forward/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/recursive-type-forward/project/lexlean.lock +++ b/tests/negative/recursive-type-forward/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/recursive-type-nonuniform/project/lexlean.lock b/tests/negative/recursive-type-nonuniform/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/recursive-type-nonuniform/project/lexlean.lock +++ b/tests/negative/recursive-type-nonuniform/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/recursive-type-positivity/project/lexlean.lock b/tests/negative/recursive-type-positivity/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/recursive-type-positivity/project/lexlean.lock +++ b/tests/negative/recursive-type-positivity/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/recursive-type-uninhabited/project/lexlean.lock b/tests/negative/recursive-type-uninhabited/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/recursive-type-uninhabited/project/lexlean.lock +++ b/tests/negative/recursive-type-uninhabited/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/semantic-module-v1-under-1.2/project/lexlean.lock b/tests/negative/semantic-module-v1-under-1.2/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/semantic-module-v1-under-1.2/project/lexlean.lock +++ b/tests/negative/semantic-module-v1-under-1.2/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/type-argument-universe/project/lexlean.lock b/tests/negative/type-argument-universe/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/type-argument-universe/project/lexlean.lock +++ b/tests/negative/type-argument-universe/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/negative/type-parameter-capture/project/lexlean.lock b/tests/negative/type-parameter-capture/project/lexlean.lock index f326b4b18..a84849b34 100644 --- a/tests/negative/type-parameter-capture/project/lexlean.lock +++ b/tests/negative/type-parameter-capture/project/lexlean.lock @@ -1,6 +1,6 @@ spec = "lexlean/lock/2" language = "1.2" -compiler_semantics = "7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0" +compiler_semantics = "91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a" project_config_sha256 = "6bb823538ff0c18b80a9851c1cc936cf70dc31ce0625cb1a2211c1f30d91411d" lean_toolchain = "leanprover/lean4:v4.32.1" diff --git a/tests/packages/workspace/app/lake-manifest.json b/tests/packages/workspace/app/lake-manifest.json new file mode 100644 index 000000000..ac5f80ca4 --- /dev/null +++ b/tests/packages/workspace/app/lake-manifest.json @@ -0,0 +1,6 @@ +{"version": "1.2.0", + "packagesDir": ".lake/packages", + "packages": [], + "name": "app_host", + "lakeDir": ".lake", + "fixedToolchain": false} diff --git a/tests/packages/workspace/app/lakefile.toml b/tests/packages/workspace/app/lakefile.toml new file mode 100644 index 000000000..80fc48e91 --- /dev/null +++ b/tests/packages/workspace/app/lakefile.toml @@ -0,0 +1,2 @@ +name = "app_host" +version = "0.1.0" diff --git a/tests/packages/workspace/app/lean-toolchain b/tests/packages/workspace/app/lean-toolchain new file mode 100644 index 000000000..2b61957be --- /dev/null +++ b/tests/packages/workspace/app/lean-toolchain @@ -0,0 +1 @@ +leanprover/lean4:v4.32.1 diff --git a/tests/packages/workspace/app/lexlean.toml b/tests/packages/workspace/app/lexlean.toml new file mode 100644 index 000000000..30208af48 --- /dev/null +++ b/tests/packages/workspace/app/lexlean.toml @@ -0,0 +1,33 @@ +spec = "lexlean/project/1" +name = "app" +language = "1.2" +module_prefix = "PkgApp" +source_roots = ["src"] +entrypoints = ["src/Main.lex.tex"] +build_root = ".lexlean" +lockfile = "lexlean.lock" +lean_workspace = "." +lean_toolchain = "leanprover/lean4:v4.32.1" + +[[lexicon_source]] +package = "lexlean.std.nat" +kind = "builtin" + +[[source_package]] +package = "lib" +version = "1.0.0" +kind = "path" +path = "lib" + +[limits] +max_file_bytes = 4194304 +max_total_source_bytes = 67108864 +max_primitive_atoms = 2000000 +max_token_lattice_edges = 4000000 +max_parse_states = 4000000 +max_ir_nodes = 2000000 +max_scope_depth = 1024 +max_import_depth = 128 +max_diagnostics = 256 +max_child_output_bytes = 16777216 +child_timeout_ms = 300000 diff --git a/tests/packages/workspace/app/src/Main.lex.tex b/tests/packages/workspace/app/src/Main.lex.tex new file mode 100644 index 000000000..d17bbdda7 --- /dev/null +++ b/tests/packages/workspace/app/src/Main.lex.tex @@ -0,0 +1,17 @@ +\begin{lexlean}{Main} +\useglossary{lexlean.std.nat@1.2.0} +\importmodule{PkgLib.Util} +\title{Natural number addition} +\begin{semanticmodule} +definition{ + name: appValue, + parameters: [n : Nat], + result: Nat, + body: (PkgLib.Util::quadPlusOne n), + executable: true, + production: {effects: [overflow], targets: [rust-core, rust-std]} +} + +theorem{name: app_value_two, parameters: [], statement: ((appValue 2) = 9), proof: reflexivity{}} +\end{semanticmodule} +\end{lexlean} diff --git a/tests/packages/workspace/base/lake-manifest.json b/tests/packages/workspace/base/lake-manifest.json new file mode 100644 index 000000000..3d4f66162 --- /dev/null +++ b/tests/packages/workspace/base/lake-manifest.json @@ -0,0 +1,6 @@ +{"version": "1.2.0", + "packagesDir": ".lake/packages", + "packages": [], + "name": "base_host", + "lakeDir": ".lake", + "fixedToolchain": false} diff --git a/tests/packages/workspace/base/lakefile.toml b/tests/packages/workspace/base/lakefile.toml new file mode 100644 index 000000000..e5c34d0aa --- /dev/null +++ b/tests/packages/workspace/base/lakefile.toml @@ -0,0 +1,2 @@ +name = "base_host" +version = "0.1.0" diff --git a/tests/packages/workspace/base/lean-toolchain b/tests/packages/workspace/base/lean-toolchain new file mode 100644 index 000000000..2b61957be --- /dev/null +++ b/tests/packages/workspace/base/lean-toolchain @@ -0,0 +1 @@ +leanprover/lean4:v4.32.1 diff --git a/tests/packages/workspace/base/lexlean.toml b/tests/packages/workspace/base/lexlean.toml new file mode 100644 index 000000000..21ef63d10 --- /dev/null +++ b/tests/packages/workspace/base/lexlean.toml @@ -0,0 +1,27 @@ +spec = "lexlean/project/1" +name = "base" +language = "1.2" +module_prefix = "PkgBase" +source_roots = ["src"] +entrypoints = ["src/Core.lex.tex"] +build_root = ".lexlean" +lockfile = "lexlean.lock" +lean_workspace = "." +lean_toolchain = "leanprover/lean4:v4.32.1" + +[[lexicon_source]] +package = "lexlean.std.nat" +kind = "builtin" + +[limits] +max_file_bytes = 4194304 +max_total_source_bytes = 67108864 +max_primitive_atoms = 2000000 +max_token_lattice_edges = 4000000 +max_parse_states = 4000000 +max_ir_nodes = 2000000 +max_scope_depth = 1024 +max_import_depth = 128 +max_diagnostics = 256 +max_child_output_bytes = 16777216 +child_timeout_ms = 300000 diff --git a/tests/packages/workspace/base/src/Core.lex.tex b/tests/packages/workspace/base/src/Core.lex.tex new file mode 100644 index 000000000..fd4fd17a6 --- /dev/null +++ b/tests/packages/workspace/base/src/Core.lex.tex @@ -0,0 +1,16 @@ +\begin{lexlean}{Core} +\useglossary{lexlean.std.nat@1.2.0} +\title{Natural number addition} +\begin{semanticmodule} +definition{ + name: twice, + parameters: [n : Nat], + result: Nat, + body: (n + n), + executable: true, + production: {effects: [overflow], targets: [rust-core, rust-std]} +} + +theorem{name: twice_two, parameters: [], statement: ((twice 2) = 4), proof: reflexivity{}} +\end{semanticmodule} +\end{lexlean} diff --git a/tests/packages/workspace/lexlean-workspace.toml b/tests/packages/workspace/lexlean-workspace.toml new file mode 100644 index 000000000..0ef978bad --- /dev/null +++ b/tests/packages/workspace/lexlean-workspace.toml @@ -0,0 +1,2 @@ +spec = "lexlean/workspace/1" +members = ["app", "base", "lib"] diff --git a/tests/packages/workspace/lib/lake-manifest.json b/tests/packages/workspace/lib/lake-manifest.json new file mode 100644 index 000000000..2e464cab9 --- /dev/null +++ b/tests/packages/workspace/lib/lake-manifest.json @@ -0,0 +1,6 @@ +{"version": "1.2.0", + "packagesDir": ".lake/packages", + "packages": [], + "name": "lib_host", + "lakeDir": ".lake", + "fixedToolchain": false} diff --git a/tests/packages/workspace/lib/lakefile.toml b/tests/packages/workspace/lib/lakefile.toml new file mode 100644 index 000000000..892711688 --- /dev/null +++ b/tests/packages/workspace/lib/lakefile.toml @@ -0,0 +1,2 @@ +name = "lib_host" +version = "0.1.0" diff --git a/tests/packages/workspace/lib/lean-toolchain b/tests/packages/workspace/lib/lean-toolchain new file mode 100644 index 000000000..2b61957be --- /dev/null +++ b/tests/packages/workspace/lib/lean-toolchain @@ -0,0 +1 @@ +leanprover/lean4:v4.32.1 diff --git a/tests/packages/workspace/lib/lexlean.toml b/tests/packages/workspace/lib/lexlean.toml new file mode 100644 index 000000000..4212c4e7c --- /dev/null +++ b/tests/packages/workspace/lib/lexlean.toml @@ -0,0 +1,33 @@ +spec = "lexlean/project/1" +name = "lib" +language = "1.2" +module_prefix = "PkgLib" +source_roots = ["src"] +entrypoints = ["src/Util.lex.tex"] +build_root = ".lexlean" +lockfile = "lexlean.lock" +lean_workspace = "." +lean_toolchain = "leanprover/lean4:v4.32.1" + +[[lexicon_source]] +package = "lexlean.std.nat" +kind = "builtin" + +[[source_package]] +package = "base" +version = "1.0.0" +kind = "path" +path = "base" + +[limits] +max_file_bytes = 4194304 +max_total_source_bytes = 67108864 +max_primitive_atoms = 2000000 +max_token_lattice_edges = 4000000 +max_parse_states = 4000000 +max_ir_nodes = 2000000 +max_scope_depth = 1024 +max_import_depth = 128 +max_diagnostics = 256 +max_child_output_bytes = 16777216 +child_timeout_ms = 300000 diff --git a/tests/packages/workspace/lib/src/Shapes.lex.tex b/tests/packages/workspace/lib/src/Shapes.lex.tex new file mode 100644 index 000000000..c7f046174 --- /dev/null +++ b/tests/packages/workspace/lib/src/Shapes.lex.tex @@ -0,0 +1,14 @@ +\begin{lexlean}{Shapes} +\useglossary{lexlean.std.nat@1.2.0} +\importmodule{PkgBase.Core} +\title{Natural number addition} +\begin{semanticmodule} +definition{ + name: quad, + parameters: [n : Nat], + result: Nat, + body: (PkgBase.Core::twice (PkgBase.Core::twice n)), + executable: true +} +\end{semanticmodule} +\end{lexlean} diff --git a/tests/packages/workspace/lib/src/Util.lex.tex b/tests/packages/workspace/lib/src/Util.lex.tex new file mode 100644 index 000000000..9deb76d83 --- /dev/null +++ b/tests/packages/workspace/lib/src/Util.lex.tex @@ -0,0 +1,22 @@ +\begin{lexlean}{Util} +\useglossary{lexlean.std.nat@1.2.0} +\importmodule{Shapes} +\title{Natural number addition} +\begin{semanticmodule} +definition{ + name: quadPlusOne, + parameters: [n : Nat], + result: Nat, + body: ((Shapes::quad n) + 1), + executable: true, + production: {effects: [overflow], targets: [rust-core, rust-std]} +} + +theorem{ + name: quad_plus_one_two, + parameters: [], + statement: ((quadPlusOne 2) = 9), + proof: reflexivity{} +} +\end{semanticmodule} +\end{lexlean} diff --git a/tests/production-export/bootstrap/packages/rust-std/is_closed_lean_name/package.json b/tests/production-export/bootstrap/packages/rust-std/is_closed_lean_name/package.json index bc807221c..9a6e75a13 100644 --- a/tests/production-export/bootstrap/packages/rust-std/is_closed_lean_name/package.json +++ b/tests/production-export/bootstrap/packages/rust-std/is_closed_lean_name/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"is_closed_lean_name","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"kind":"second","value":{"kind":"first","value":{"function":1,"kind":"call","operands":[{"captures":[{"kind":"var","name":0}],"function":2,"kind":"closure"},{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}]}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"bytes"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},{"kind":"nat"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"bytes"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"second","value":{"kind":"var","name":1}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":1}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"function":5,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":1}},{"kind":"var","name":2}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":4,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"first","value":{"kind":"var","name":1}}]},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"bytes"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"index"}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"types":[{"kind":"bytes"},{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"46"}}],"operation":{"kind":"equal"}},"else_branch":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":1}]},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},"kind":"cond","then_branch":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":1}]},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},"kind":"cond","then_branch":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"fixed","width":"u8"}]},{"body":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"65"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"90"}}]},"else_branch":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"97"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"122"}}]},"else_branch":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"95"}}],"operation":{"kind":"equal"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"fixed","width":"u8"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"48"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"57"}}]},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"63"}}],"operation":{"kind":"equal"}},"else_branch":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"39"}}],"operation":{"kind":"equal"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"fixed","width":"u8"}]},{"body":{"arms":[{"binders":[3],"body":{"arms":[{"binders":[4],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":0}],"operation":{"kind":"checked_sub"}},"type":{"kind":"bool"}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_sub"}},"type":{"kind":"bool"}},"parameters":[0,1,2],"result":{"kind":"bool"},"types":[{"kind":"fixed","width":"u8"},{"kind":"fixed","width":"u8"},{"kind":"fixed","width":"u8"}]}],"spec":"lexlean/target-program/1"},"sources":["adb40bbfc73b1dc6b7a95dab0c348a2752ede8bc8cffbc4bfb49bce333d9aceb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"is_closed_lean_name","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"kind":"second","value":{"kind":"first","value":{"function":1,"kind":"call","operands":[{"captures":[{"kind":"var","name":0}],"function":2,"kind":"closure"},{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}]}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"bytes"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},{"kind":"nat"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"bytes"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"second","value":{"kind":"var","name":1}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":1}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"function":5,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":1}},{"kind":"var","name":2}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":4,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"first","value":{"kind":"var","name":1}}]},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"bytes"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"index"}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"types":[{"kind":"bytes"},{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"46"}}],"operation":{"kind":"equal"}},"else_branch":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":1}]},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},"kind":"cond","then_branch":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":1}]},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},"kind":"cond","then_branch":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"fixed","width":"u8"}]},{"body":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"65"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"90"}}]},"else_branch":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"97"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"122"}}]},"else_branch":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"95"}}],"operation":{"kind":"equal"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"fixed","width":"u8"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"48"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"57"}}]},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"63"}}],"operation":{"kind":"equal"}},"else_branch":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"39"}}],"operation":{"kind":"equal"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"fixed","width":"u8"}]},{"body":{"arms":[{"binders":[3],"body":{"arms":[{"binders":[4],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":0}],"operation":{"kind":"checked_sub"}},"type":{"kind":"bool"}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_sub"}},"type":{"kind":"bool"}},"parameters":[0,1,2],"result":{"kind":"bool"},"types":[{"kind":"fixed","width":"u8"},{"kind":"fixed","width":"u8"},{"kind":"fixed","width":"u8"}]}],"spec":"lexlean/target-program/1"},"sources":["5ba510b7049a3e59c5f1ffb1f0a6611dd35ecbdb9904f2d3213052229b253f48"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/bootstrap/packages/rust-std/is_closed_lean_name/provenance.json b/tests/production-export/bootstrap/packages/rust-std/is_closed_lean_name/provenance.json index 727bb0f8c..ac459ee11 100644 --- a/tests/production-export/bootstrap/packages/rust-std/is_closed_lean_name/provenance.json +++ b/tests/production-export/bootstrap/packages/rust-std/is_closed_lean_name/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"db6c409513536a098e42c8eb670502c59d8e535f0d767a3bba391a04526306e1","src/lib.rs":"2d0cbaacd46e3c30b7222bca6c20676ba67a79e6bd6b2ab4b1a7775ad8c9ce28"},"name":"is_closed_lean_name","profile":"rust-std","program":"730de4e60a1096efe498df077205f9916491d21aa78c6f1a197a1898349209f2","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["adb40bbfc73b1dc6b7a95dab0c348a2752ede8bc8cffbc4bfb49bce333d9aceb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"db6c409513536a098e42c8eb670502c59d8e535f0d767a3bba391a04526306e1","src/lib.rs":"2d0cbaacd46e3c30b7222bca6c20676ba67a79e6bd6b2ab4b1a7775ad8c9ce28"},"name":"is_closed_lean_name","profile":"rust-std","program":"730de4e60a1096efe498df077205f9916491d21aa78c6f1a197a1898349209f2","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["5ba510b7049a3e59c5f1ffb1f0a6611dd35ecbdb9904f2d3213052229b253f48"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/bootstrap/packages/rust-std/parse_audit_output/package.json b/tests/production-export/bootstrap/packages/rust-std/parse_audit_output/package.json index 3a6690208..a6f4b2907 100644 --- a/tests/production-export/bootstrap/packages/rust-std/parse_audit_output/package.json +++ b/tests/production-export/bootstrap/packages/rust-std/parse_audit_output/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"parse_audit_output","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"bytes"},{"kind":"option","value":{"kind":"bytes"}}]]},{"constructors":[[{"element":{"index":2,"kind":"adt"},"kind":"list"},{"element":{"kind":"bytes"},"kind":"list"}],[{"element":{"index":2,"kind":"adt"},"kind":"list"},{"element":{"kind":"bytes"},"kind":"list"},{"kind":"bytes"},{"kind":"option","value":{"kind":"bytes"}}],[{"index":0,"kind":"adt"}]]},{"constructors":[[{"kind":"bytes"},{"element":{"kind":"bytes"},"kind":"list"},{"kind":"option","value":{"kind":"bytes"}}]]}],"functions":[{"body":{"function":1,"kind":"call","operands":[{"function":2,"kind":"call","operands":[{"captures":[],"function":3,"kind":"closure"},{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":2,"kind":"adt"},"kind":"list"}},{"kind":"var","name":1}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},{"function":4,"kind":"call","operands":[{"kind":"var","name":0}]}]},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}},"types":[{"kind":"bytes"},{"element":{"kind":"bytes"},"kind":"list"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"error"},"type":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}},"shape":{"constructor":2,"kind":"adt"}},{"binders":[3,4,5,6],"body":{"function":5,"kind":"call","operands":[{"function":6,"kind":"call","operands":[{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"unterminated axiom payload: "}}]},{"kind":"var","name":5}]},{"kind":"var","name":6}]},"shape":{"constructor":1,"kind":"adt"}},{"binders":[7,8],"body":{"body":{"condition":{"kind":"prim","operands":[{"function":10,"kind":"call","operands":[{"kind":"var","name":7}]},{"function":9,"kind":"call","operands":[{"kind":"var","name":1}]}],"operation":{"kind":"nat_eq"}},"else_branch":{"kind":"var","name":9},"kind":"cond","then_branch":{"function":11,"kind":"call","operands":[{"captures":[],"function":12,"kind":"closure"},{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}],"shape":{"kind":"ok"},"type":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}},{"function":13,"kind":"call","operands":[{"kind":"var","name":7}]}]}},"bound":{"function":5,"kind":"call","operands":[{"function":6,"kind":"call","operands":[{"function":6,"kind":"call","operands":[{"function":6,"kind":"call","operands":[{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"expected "}}]},{"function":8,"kind":"call","operands":[{"function":9,"kind":"call","operands":[{"kind":"var","name":1}]}]}]},{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":" audit records, found "}}]}]},{"function":8,"kind":"call","operands":[{"function":10,"kind":"call","operands":[{"kind":"var","name":7}]}]}]},{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"bytes"}}}]},"kind":"let","name":9,"type":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}},"shape":{"constructor":0,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}},"parameters":[0,1],"result":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}},"types":[{"index":1,"kind":"adt"},{"element":{"kind":"bytes"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"index":1,"kind":"adt"}},"parameters":[0,1,2],"result":{"index":1,"kind":"adt"},"types":[{"kind":"fn","parameters":[{"index":1,"kind":"adt"},{"kind":"bytes"}],"result":{"index":1,"kind":"adt"}},{"index":1,"kind":"adt"},{"element":{"kind":"bytes"},"kind":"list"}]},{"body":{"function":14,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"},{"kind":"bytes"}]},{"body":{"body":{"body":{"body":{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"var","name":1}],"operation":{"kind":"nat_lt"}},"else_branch":{"function":17,"kind":"call","operands":[{"kind":"var","name":4}]},"kind":"cond","then_branch":{"function":17,"kind":"call","operands":[{"kind":"build","operands":[{"function":18,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"operation":{"kind":"nat_sub"}}]},{"kind":"var","name":4}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bytes"},"kind":"list"}}]}},"bound":{"kind":"second","value":{"kind":"second","value":{"kind":"var","name":2}}},"kind":"let","name":4,"type":{"element":{"kind":"bytes"},"kind":"list"}},"bound":{"kind":"first","value":{"kind":"second","value":{"kind":"var","name":2}}},"kind":"let","name":3,"type":{"kind":"nat"}},"bound":{"kind":"first","value":{"function":15,"kind":"call","operands":[{"captures":[{"kind":"var","name":0}],"function":16,"kind":"closure"},{"kind":"var","name":1},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"bytes"},"kind":"list"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}]}},"kind":"let","name":2,"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},"kind":"let","name":1,"type":{"kind":"nat"}},"parameters":[0],"result":{"element":{"kind":"bytes"},"kind":"list"},"types":[{"kind":"bytes"}]},{"body":{"kind":"build","operands":[{"function":19,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]}],"shape":{"kind":"error"},"type":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}},"parameters":[0,1],"result":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}},"types":[{"kind":"bytes"},{"kind":"option","value":{"kind":"bytes"}}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"append"}},"parameters":[0,1],"result":{"kind":"bytes"},"types":[{"kind":"bytes"},{"kind":"bytes"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"utf8_encode"}},"parameters":[0],"result":{"kind":"bytes"},"types":[{"kind":"string"}]},{"body":{"body":{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"kind":"var","name":2},"kind":"cond","then_branch":{"kind":"var","name":1}},"bound":{"function":20,"kind":"call","operands":[{"kind":"prim","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"10000000000000000000"}}]},{"kind":"prim","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1000000000000000000"}}]},{"kind":"prim","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"100000000000000000"}}]},{"kind":"prim","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"10000000000000000"}}]},{"kind":"prim","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1000000000000000"}}]},{"kind":"prim","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"100000000000000"}}]},{"kind":"prim","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"10000000000000"}}]},{"kind":"prim","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1000000000000"}}]},{"kind":"prim","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"100000000000"}}]},{"kind":"prim","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"10000000000"}}]},{"kind":"prim","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1000000000"}}]},{"kind":"prim","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"100000000"}}]},{"kind":"prim","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"10000000"}}]},{"kind":"prim","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1000000"}}]},{"kind":"prim","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"100000"}}]},{"kind":"prim","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"10000"}}]},{"kind":"prim","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1000"}}]},{"kind":"prim","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"100"}}]},{"kind":"prim","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"10"}}]},{"function":21,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}]}],"operation":{"kind":"append"}}],"operation":{"kind":"append"}}],"operation":{"kind":"append"}}],"operation":{"kind":"append"}}],"operation":{"kind":"append"}}],"operation":{"kind":"append"}}],"operation":{"kind":"append"}}],"operation":{"kind":"append"}}],"operation":{"kind":"append"}}],"operation":{"kind":"append"}}],"operation":{"kind":"append"}}],"operation":{"kind":"append"}}],"operation":{"kind":"append"}}],"operation":{"kind":"append"}}],"operation":{"kind":"append"}}],"operation":{"kind":"append"}}],"operation":{"kind":"append"}}],"operation":{"kind":"append"}}],"operation":{"kind":"append"}}]},"kind":"let","name":2,"type":{"kind":"bytes"}},"bound":{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"0"}}]},"kind":"let","name":1,"type":{"kind":"bytes"}},"parameters":[0],"result":{"kind":"bytes"},"types":[{"kind":"nat"}]},{"body":{"function":22,"kind":"call","operands":[{"captures":[],"function":23,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"var","name":0}]},"parameters":[0],"result":{"kind":"nat"},"types":[{"element":{"kind":"bytes"},"kind":"list"}]},{"body":{"function":24,"kind":"call","operands":[{"captures":[],"function":25,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"var","name":0}]},"parameters":[0],"result":{"kind":"nat"},"types":[{"element":{"index":2,"kind":"adt"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":11,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}},"parameters":[0,1,2],"result":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}},"types":[{"kind":"fn","parameters":[{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}},{"index":2,"kind":"adt"}],"result":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}},{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}},{"element":{"index":2,"kind":"adt"},"kind":"list"}]},{"body":{"function":26,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}},"types":[{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}},{"index":2,"kind":"adt"}]},{"body":{"function":27,"kind":"call","operands":[{"captures":[],"function":28,"kind":"closure"},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":2,"kind":"adt"},"kind":"list"}},{"kind":"var","name":0}]},"parameters":[0],"result":{"element":{"index":2,"kind":"adt"},"kind":"list"},"types":[{"element":{"index":2,"kind":"adt"},"kind":"list"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"var","name":0},"shape":{"constructor":2,"kind":"adt"}},{"binders":[3,4,5,6],"body":{"arms":[{"binders":[7],"body":{"function":30,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":4},{"function":6,"kind":"call","operands":[{"function":6,"kind":"call","operands":[{"kind":"var","name":5},{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":" "}}]}]},{"kind":"var","name":7}]},{"kind":"var","name":6}]},"shape":{"kind":"some"}},{"binders":[],"body":{"function":31,"kind":"call","operands":[{"function":6,"kind":"call","operands":[{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"unterminated axiom payload: "}}]},{"kind":"var","name":5}]},{"kind":"var","name":6}]},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":29,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"index":1,"kind":"adt"}},"shape":{"constructor":1,"kind":"adt"}},{"binders":[8,9],"body":{"condition":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"prim","operands":[{"function":32,"kind":"call","operands":[{"kind":"var","name":1}]}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"arms":[{"binders":[10],"body":{"function":30,"kind":"call","operands":[{"kind":"var","name":8},{"kind":"var","name":9},{"kind":"var","name":10},{"function":34,"kind":"call","operands":[{"kind":"var","name":9}]}]},"shape":{"kind":"some"}},{"binders":[],"body":{"function":31,"kind":"call","operands":[{"function":6,"kind":"call","operands":[{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"unrecognized audit line: "}}]},{"function":32,"kind":"call","operands":[{"kind":"var","name":1}]}]},{"function":34,"kind":"call","operands":[{"kind":"var","name":9}]}]},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":33,"kind":"call","operands":[{"function":32,"kind":"call","operands":[{"kind":"var","name":1}]}]},"type":{"index":1,"kind":"adt"}},"kind":"cond","then_branch":{"kind":"var","name":0}},"shape":{"constructor":0,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"index":1,"kind":"adt"}},"parameters":[0,1],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"},{"kind":"bytes"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":15,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}},{"kind":"nat"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}]},{"body":{"function":35,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"types":[{"kind":"bytes"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}]},{"body":{"function":36,"kind":"call","operands":[{"captures":[],"function":37,"kind":"closure"},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"bytes"},"kind":"list"}},{"kind":"var","name":0}]},"parameters":[0],"result":{"element":{"kind":"bytes"},"kind":"list"},"types":[{"element":{"kind":"bytes"},"kind":"list"}]},{"body":{"arms":[{"binders":[3],"body":{"kind":"var","name":3},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"","kind":"bytes"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"slice"}},"type":{"kind":"bytes"}},"parameters":[0,1,2],"result":{"kind":"bytes"},"types":[{"kind":"bytes"},{"kind":"nat"},{"kind":"nat"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},"parameters":[0,1],"result":{"index":0,"kind":"adt"},"types":[{"kind":"bytes"},{"kind":"option","value":{"kind":"bytes"}}]},{"body":{"body":{"function":18,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},{"kind":"var","name":1}],"operation":{"kind":"nat_sub"}}]},"bound":{"kind":"first","value":{"function":38,"kind":"call","operands":[{"captures":[{"kind":"var","name":0}],"function":39,"kind":"closure"},{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}]}},"kind":"let","name":1,"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"bytes"},"types":[{"kind":"bytes"}]},{"body":{"function":18,"kind":"call","operands":[{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"0123456789"}}]},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"10"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}]},"parameters":[0,1],"result":{"kind":"bytes"},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":22,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"nat"}},"parameters":[0,1,2],"result":{"kind":"nat"},"types":[{"kind":"fn","parameters":[{"kind":"nat"},{"kind":"bytes"}],"result":{"kind":"nat"}},{"kind":"nat"},{"element":{"kind":"bytes"},"kind":"list"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"bytes"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":24,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"nat"}},"parameters":[0,1,2],"result":{"kind":"nat"},"types":[{"kind":"fn","parameters":[{"kind":"nat"},{"index":2,"kind":"adt"}],"result":{"kind":"nat"}},{"kind":"nat"},{"element":{"index":2,"kind":"adt"},"kind":"list"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"index":2,"kind":"adt"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"var","name":0},"shape":{"kind":"error"}},{"binders":[3],"body":{"body":{"body":{"body":{"condition":{"kind":"prim","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":1}},{"kind":"var","name":5}],"operation":{"kind":"equal"}},"else_branch":{"kind":"var","name":7},"kind":"cond","then_branch":{"arms":[{"binders":[8],"body":{"kind":"build","operands":[{"kind":"var","name":8}],"shape":{"kind":"ok"},"type":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"var","name":6},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":41,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":1}},{"index":1,"kind":"field","value":{"kind":"var","name":1}},{"kind":"var","name":3}]},"type":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}}},"bound":{"function":5,"kind":"call","operands":[{"function":6,"kind":"call","operands":[{"function":6,"kind":"call","operands":[{"function":6,"kind":"call","operands":[{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"expected a record for "}}]},{"function":40,"kind":"call","operands":[{"kind":"var","name":5}]}]},{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":", found "}}]}]},{"function":40,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":1}}]}]},{"kind":"build","operands":[{"kind":"var","name":5}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"bytes"}}}]},"kind":"let","name":7,"type":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}},"bound":{"function":5,"kind":"call","operands":[{"function":6,"kind":"call","operands":[{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"duplicate record for "}}]},{"function":40,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":1}}]}]},{"kind":"build","operands":[{"kind":"var","name":5}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"bytes"}}}]},"kind":"let","name":6,"type":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}},"bound":{"arms":[{"binders":[4],"body":{"kind":"var","name":4},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"","kind":"bytes"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"index":2,"kind":"field","value":{"kind":"var","name":1}},"type":{"kind":"bytes"}},"kind":"let","name":5,"type":{"kind":"bytes"}},"shape":{"kind":"ok"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}},"parameters":[0,1],"result":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}},"types":[{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}},{"index":2,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":27,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"element":{"index":2,"kind":"adt"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"index":2,"kind":"adt"},"kind":"list"},"types":[{"kind":"fn","parameters":[{"element":{"index":2,"kind":"adt"},"kind":"list"},{"index":2,"kind":"adt"}],"result":{"element":{"index":2,"kind":"adt"},"kind":"list"}},{"element":{"index":2,"kind":"adt"},"kind":"list"},{"element":{"index":2,"kind":"adt"},"kind":"list"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"index":2,"kind":"adt"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"index":2,"kind":"adt"},"kind":"list"},"types":[{"element":{"index":2,"kind":"adt"},"kind":"list"},{"index":2,"kind":"adt"}]},{"body":{"body":{"condition":{"function":42,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"bytes"}}},"kind":"cond","then_branch":{"condition":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"bytes"}}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"bytes"}}}}},"bound":{"function":32,"kind":"call","operands":[{"kind":"var","name":0}]},"kind":"let","name":1,"type":{"kind":"bytes"}},"parameters":[0],"result":{"kind":"option","value":{"kind":"bytes"}},"types":[{"kind":"bytes"}]},{"body":{"condition":{"function":43,"kind":"call","operands":[{"kind":"var","name":2}]},"else_branch":{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":2},{"kind":"var","name":3}],"shape":{"constructor":1,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"kind":"cond","then_branch":{"arms":[{"binders":[4],"body":{"function":31,"kind":"call","operands":[{"kind":"var","name":4},{"kind":"var","name":3}]},"shape":{"kind":"error"}},{"binders":[5],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"first","value":{"kind":"var","name":5}},{"kind":"second","value":{"kind":"var","name":5}},{"kind":"var","name":3}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"index":2,"kind":"adt"},"kind":"list"}},{"function":45,"kind":"call","operands":[{"kind":"var","name":1}]}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"shape":{"kind":"ok"}}],"kind":"match","scrutinee":{"function":44,"kind":"call","operands":[{"kind":"var","name":2}]},"type":{"index":1,"kind":"adt"}}},"parameters":[0,1,2,3],"result":{"index":1,"kind":"adt"},"types":[{"element":{"index":2,"kind":"adt"},"kind":"list"},{"element":{"kind":"bytes"},"kind":"list"},{"kind":"bytes"},{"kind":"option","value":{"kind":"bytes"}}]},{"body":{"kind":"build","operands":[{"function":19,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]}],"shape":{"constructor":2,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0,1],"result":{"index":1,"kind":"adt"},"types":[{"kind":"bytes"},{"kind":"option","value":{"kind":"bytes"}}]},{"body":{"body":{"body":{"function":18,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":1}],"operation":{"kind":"nat_sub"}}]},"bound":{"function":47,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"kind":"let","name":2,"type":{"kind":"nat"}},"bound":{"function":46,"kind":"call","operands":[{"kind":"var","name":0}]},"kind":"let","name":1,"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"bytes"},"types":[{"kind":"bytes"}]},{"body":{"condition":{"function":48,"kind":"call","operands":[{"kind":"var","name":0},{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"'"}}]}]},"else_branch":{"arms":[{"binders":[1],"body":{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"bytes"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"function":50,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":49,"kind":"call","operands":[{"kind":"var","name":0},{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"info: "}}]}]},"type":{"kind":"option","value":{"kind":"bytes"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":0}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"bytes"}}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"bytes"}},"types":[{"kind":"bytes"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"bytes"}}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"bytes"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"kind":"bytes"}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"bytes"}},"types":[{"element":{"kind":"bytes"},"kind":"list"}]},{"body":{"body":{"body":{"body":{"arms":[{"binders":[5],"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":5},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"10"}}],"operation":{"kind":"equal"}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"build","operands":[{"kind":"var","name":3},{"kind":"var","name":4}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"build","operands":[{"function":52,"kind":"call","operands":[{"function":18,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":3}],"operation":{"kind":"nat_sub"}}]}]},{"kind":"var","name":4}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bytes"},"kind":"list"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":51,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}},"bound":{"kind":"second","value":{"kind":"second","value":{"kind":"var","name":1}}},"kind":"let","name":4,"type":{"element":{"kind":"bytes"},"kind":"list"}},"bound":{"kind":"first","value":{"kind":"second","value":{"kind":"var","name":1}}},"kind":"let","name":3,"type":{"kind":"nat"}},"bound":{"kind":"first","value":{"kind":"var","name":1}},"kind":"let","name":2,"type":{"kind":"nat"}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"types":[{"kind":"bytes"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":36,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"element":{"kind":"bytes"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"kind":"bytes"},"kind":"list"},"types":[{"kind":"fn","parameters":[{"element":{"kind":"bytes"},"kind":"list"},{"kind":"bytes"}],"result":{"element":{"kind":"bytes"},"kind":"list"}},{"element":{"kind":"bytes"},"kind":"list"},{"element":{"kind":"bytes"},"kind":"list"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bytes"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"bytes"},"kind":"list"},"types":[{"element":{"kind":"bytes"},"kind":"list"},{"kind":"bytes"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":38,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"option","value":{"kind":"nat"}}},{"kind":"nat"},{"kind":"nat"}]},{"body":{"function":53,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"bytes"},{"kind":"nat"}]},{"body":{"function":6,"kind":"call","operands":[{"function":6,"kind":"call","operands":[{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"`"}}]},{"kind":"var","name":0}]},{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"`"}}]}]},"parameters":[0],"result":{"kind":"bytes"},"types":[{"kind":"bytes"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"first","value":{"kind":"var","name":3}}],"operation":{"kind":"equal"}},"else_branch":{"condition":{"function":54,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"first","value":{"kind":"var","name":3}}]},"else_branch":{"arms":[{"binders":[5],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":3},{"kind":"var","name":5}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":41,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":4}]},"type":{"kind":"option","value":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}}},{"kind":"build","operands":[{"kind":"var","name":3},{"kind":"var","name":4}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"option","value":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}},"parameters":[0,1,2],"result":{"kind":"option","value":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}},"types":[{"kind":"bytes"},{"element":{"kind":"bytes"},"kind":"list"},{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"function":55,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}]}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"bytes"}]},{"body":{"arms":[{"binders":[1],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"some"}},{"binders":[],"body":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":56,"kind":"call","operands":[{"kind":"var","name":0},{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":" does not depend on any axioms"}}]}]},"type":{"kind":"bool"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":56,"kind":"call","operands":[{"kind":"var","name":0},{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"]"}}]}]},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"bytes"}]},{"body":{"arms":[{"binders":[],"body":{"function":57,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"kind":"none"}},{"binders":[1],"body":{"arms":[{"binders":[2],"body":{"body":{"body":{"condition":{"function":61,"kind":"call","operands":[{"kind":"var","name":2}]},"else_branch":{"kind":"var","name":4},"kind":"cond","then_branch":{"kind":"var","name":3}},"bound":{"function":59,"kind":"call","operands":[{"function":60,"kind":"call","operands":[{"kind":"var","name":2}]}]},"kind":"let","name":4,"type":{"error":{"kind":"bytes"},"kind":"result","ok":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"bound":{"function":58,"kind":"call","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"bytes"},"kind":"list"}}]},"kind":"let","name":3,"type":{"error":{"kind":"bytes"},"kind":"result","ok":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"shape":{"kind":"some"}},{"binders":[],"body":{"arms":[{"binders":[5],"body":{"function":62,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":5}]},"shape":{"kind":"some"}},{"binders":[],"body":{"function":57,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":56,"kind":"call","operands":[{"kind":"var","name":1},{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"]"}}]}]},"type":{"error":{"kind":"bytes"},"kind":"result","ok":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":56,"kind":"call","operands":[{"kind":"var","name":1},{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"' does not depend on any axioms"}}]}]},"type":{"error":{"kind":"bytes"},"kind":"result","ok":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":49,"kind":"call","operands":[{"kind":"var","name":0},{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"'"}}]}]},"type":{"error":{"kind":"bytes"},"kind":"result","ok":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"parameters":[0],"result":{"error":{"kind":"bytes"},"kind":"result","ok":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}}},"types":[{"kind":"bytes"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"bytes"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"kind":"var","name":2},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"bytes"},"kind":"list"}},"parameters":[0],"result":{"element":{"kind":"bytes"},"kind":"list"},"types":[{"element":{"kind":"bytes"},"kind":"list"}]},{"body":{"kind":"first","value":{"function":38,"kind":"call","operands":[{"captures":[{"kind":"var","name":0}],"function":63,"kind":"closure"},{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}]}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"bytes"}]},{"body":{"kind":"first","value":{"function":38,"kind":"call","operands":[{"captures":[{"kind":"var","name":1},{"kind":"var","name":0}],"function":64,"kind":"closure"},{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}}]}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"bytes"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":1}],"operation":{"kind":"equal"}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}}],"operation":{"kind":"slice"}},"type":{"kind":"bool"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"kind":"bytes"},{"kind":"bytes"}]},{"body":{"condition":{"function":48,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"bytes"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":18,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_sub"}}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"bytes"}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"bytes"}},"types":[{"kind":"bytes"},{"kind":"bytes"}]},{"body":{"arms":[{"binders":[1],"body":{"arms":[{"binders":[2],"body":{"arms":[{"binders":[3],"body":{"body":{"body":{"body":{"body":{"condition":{"function":67,"kind":"call","operands":[{"kind":"var","name":4}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"bytes"}}},"kind":"cond","then_branch":{"kind":"var","name":7}},"bound":{"function":66,"kind":"call","operands":[{"kind":"var","name":5},{"kind":"var","name":6}]},"kind":"let","name":7,"type":{"kind":"option","value":{"kind":"bytes"}}},"bound":{"kind":"second","value":{"kind":"var","name":3}},"kind":"let","name":6,"type":{"kind":"bytes"}},"bound":{"kind":"first","value":{"kind":"var","name":3}},"kind":"let","name":5,"type":{"kind":"bytes"}},"bound":{"kind":"first","value":{"kind":"var","name":2}},"kind":"let","name":4,"type":{"kind":"bytes"}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"bytes"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":65,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":2}},{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":":"}}]}]},"type":{"kind":"option","value":{"kind":"bytes"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"bytes"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":65,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":1}},{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":":"}}]}]},"type":{"kind":"option","value":{"kind":"bytes"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"bytes"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":65,"kind":"call","operands":[{"kind":"var","name":0},{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":":"}}]}]},"type":{"kind":"option","value":{"kind":"bytes"}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"bytes"}},"types":[{"kind":"bytes"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"index"}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"types":[{"kind":"bytes"},{"kind":"nat"}]},{"body":{"condition":{"function":68,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"0d","kind":"bytes"}}]},"else_branch":{"kind":"var","name":0},"kind":"cond","then_branch":{"function":18,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_sub"}}]}},"parameters":[0],"result":{"kind":"bytes"},"types":[{"kind":"bytes"}]},{"body":{"condition":{"function":69,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"48"}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"bytes"},{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"compare_bytes"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"","kind":"bytes"}},{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"01","kind":"bytes"}}],"operation":{"kind":"compare_bytes"}}],"operation":{"kind":"equal"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"kind":"bytes"},{"kind":"bytes"}]},{"body":{"condition":{"condition":{"function":70,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"9"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"13"}}]},"else_branch":{"condition":{"function":69,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"32"}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"else_branch":{"condition":{"function":69,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"194"}}]},"else_branch":{"condition":{"function":69,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"225"}}]},"else_branch":{"condition":{"function":69,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"226"}}]},"else_branch":{"condition":{"function":69,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"227"}}]},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"kind":"cond","then_branch":{"condition":{"condition":{"function":69,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"128"}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"condition":{"function":69,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_add"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"128"}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}}},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}}},"kind":"cond","then_branch":{"condition":{"function":69,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"128"}}]},"else_branch":{"condition":{"condition":{"function":69,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"129"}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"condition":{"function":69,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_add"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"159"}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}}},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}},"kind":"cond","then_branch":{"condition":{"condition":{"function":70,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_add"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"128"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"138"}}]},"else_branch":{"condition":{"function":69,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_add"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"168"}}]},"else_branch":{"condition":{"function":69,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_add"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"169"}}]},"else_branch":{"condition":{"function":69,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_add"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"175"}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}}}},"kind":"cond","then_branch":{"condition":{"condition":{"function":69,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"154"}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"condition":{"function":69,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_add"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"128"}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}}},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}}},"kind":"cond","then_branch":{"condition":{"condition":{"function":69,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"133"}}]},"else_branch":{"condition":{"function":69,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"160"}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"bytes"},{"kind":"nat"}]},{"body":{"condition":{"function":68,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"bytes"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":18,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_sub"}}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"bytes"}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"bytes"}},"types":[{"kind":"bytes"},{"kind":"bytes"}]},{"body":{"function":59,"kind":"call","operands":[{"function":6,"kind":"call","operands":[{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"unrecognized axiom payload: "}}]},{"kind":"var","name":0}]}]},"parameters":[0],"result":{"error":{"kind":"bytes"},"kind":"result","ok":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}}},"types":[{"kind":"bytes"}]},{"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}],"shape":{"kind":"ok"},"type":{"error":{"kind":"bytes"},"kind":"result","ok":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"parameters":[0,1],"result":{"error":{"kind":"bytes"},"kind":"result","ok":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}}},"types":[{"kind":"bytes"},{"element":{"kind":"bytes"},"kind":"list"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":0}],"shape":{"kind":"error"},"type":{"error":{"kind":"bytes"},"kind":"result","ok":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"parameters":[0],"result":{"error":{"kind":"bytes"},"kind":"result","ok":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}}},"types":[{"kind":"bytes"}]},{"body":{"function":6,"kind":"call","operands":[{"function":40,"kind":"call","operands":[{"kind":"var","name":0}]},{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":" is not a Lean name"}}]}]},"parameters":[0],"result":{"kind":"bytes"},"types":[{"kind":"bytes"}]},{"body":{"kind":"prim","operands":[{"kind":"second","value":{"kind":"first","value":{"function":71,"kind":"call","operands":[{"captures":[{"kind":"var","name":0}],"function":72,"kind":"closure"},{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}]}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"bytes"}]},{"body":{"arms":[{"binders":[2],"body":{"body":{"body":{"body":{"body":{"condition":{"function":61,"kind":"call","operands":[{"kind":"var","name":3}]},"else_branch":{"kind":"var","name":6},"kind":"cond","then_branch":{"kind":"var","name":5}},"bound":{"function":59,"kind":"call","operands":[{"function":60,"kind":"call","operands":[{"kind":"var","name":3}]}]},"kind":"let","name":6,"type":{"error":{"kind":"bytes"},"kind":"result","ok":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"bound":{"function":74,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":4}]},"kind":"let","name":5,"type":{"error":{"kind":"bytes"},"kind":"result","ok":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"bound":{"kind":"second","value":{"kind":"var","name":2}},"kind":"let","name":4,"type":{"kind":"bytes"}},"bound":{"kind":"first","value":{"kind":"var","name":2}},"kind":"let","name":3,"type":{"kind":"bytes"}},"shape":{"kind":"some"}},{"binders":[],"body":{"function":57,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":73,"kind":"call","operands":[{"kind":"var","name":1},{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"' depends on axioms: ["}}]}]},"type":{"error":{"kind":"bytes"},"kind":"result","ok":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"parameters":[0,1],"result":{"error":{"kind":"bytes"},"kind":"result","ok":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}}},"types":[{"kind":"bytes"},{"kind":"bytes"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"function":55,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"function":55,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]}],"operation":{"kind":"nat_add"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"bytes"},{"kind":"nat"}]},{"body":{"condition":{"condition":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"function":75,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"var","name":2}]}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"function":75,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"var","name":2}]}],"operation":{"kind":"nat_add"}},{"kind":"var","name":2}],"operation":{"kind":"nat_le"}}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"function":75,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"var","name":2}]}],"operation":{"kind":"nat_sub"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"parameters":[0,1,2],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"nat"},{"kind":"bytes"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"function":18,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"var","name":2}]},{"function":18,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_sub"}}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bytes"},"right":{"kind":"bytes"}}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"bytes"},"right":{"kind":"bytes"}}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"bytes"},"right":{"kind":"bytes"}}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":76,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"bytes"},"right":{"kind":"bytes"}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"bytes"},"right":{"kind":"bytes"}}},"types":[{"kind":"bytes"},{"kind":"bytes"}]},{"body":{"arms":[{"binders":[2],"body":{"body":{"body":{"arms":[{"binders":[5],"body":{"body":{"body":{"body":{"condition":{"function":67,"kind":"call","operands":[{"kind":"var","name":3}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"bytes"}}},"kind":"cond","then_branch":{"condition":{"function":67,"kind":"call","operands":[{"kind":"var","name":4}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"bytes"}}},"kind":"cond","then_branch":{"condition":{"function":67,"kind":"call","operands":[{"kind":"var","name":6}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"bytes"}}},"kind":"cond","then_branch":{"kind":"var","name":8}}}},"bound":{"function":77,"kind":"call","operands":[{"kind":"var","name":7}]},"kind":"let","name":8,"type":{"kind":"option","value":{"kind":"bytes"}}},"bound":{"kind":"second","value":{"kind":"var","name":5}},"kind":"let","name":7,"type":{"kind":"bytes"}},"bound":{"kind":"first","value":{"kind":"var","name":5}},"kind":"let","name":6,"type":{"kind":"bytes"}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"bytes"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":65,"kind":"call","operands":[{"kind":"var","name":1},{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":":"}}]}]},"type":{"kind":"option","value":{"kind":"bytes"}}},"bound":{"kind":"second","value":{"kind":"var","name":2}},"kind":"let","name":4,"type":{"kind":"bytes"}},"bound":{"kind":"first","value":{"kind":"var","name":2}},"kind":"let","name":3,"type":{"kind":"bytes"}},"shape":{"kind":"some"}},{"binders":[],"body":{"body":{"condition":{"function":67,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"bytes"}}},"kind":"cond","then_branch":{"kind":"var","name":9}},"bound":{"function":77,"kind":"call","operands":[{"kind":"var","name":1}]},"kind":"let","name":9,"type":{"kind":"option","value":{"kind":"bytes"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":65,"kind":"call","operands":[{"kind":"var","name":0},{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"-"}}]}]},"type":{"kind":"option","value":{"kind":"bytes"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"bytes"}},"types":[{"kind":"bytes"},{"kind":"bytes"}]},{"body":{"function":78,"kind":"call","operands":[{"function":32,"kind":"call","operands":[{"kind":"var","name":0}]}]},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"bytes"}]},{"body":{"body":{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"var","name":2}],"operation":{"kind":"nat_le"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"arms":[{"binders":[4],"body":{"kind":"prim","operands":[{"kind":"var","name":4},{"kind":"var","name":1}],"operation":{"kind":"equal"}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":3}],"operation":{"kind":"nat_sub"}},{"kind":"var","name":3}],"operation":{"kind":"slice"}},"type":{"kind":"bool"}}},"bound":{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}},"kind":"let","name":3,"type":{"kind":"nat"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},"kind":"let","name":2,"type":{"kind":"nat"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"kind":"bytes"},{"kind":"bytes"}]},{"body":{"arms":[{"binders":[3],"body":{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"var","name":2}],"operation":{"kind":"equal"}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":51,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"kind":"bool"}},"parameters":[0,1,2],"result":{"kind":"bool"},"types":[{"kind":"bytes"},{"kind":"nat"},{"kind":"fixed","width":"u8"}]},{"body":{"arms":[{"binders":[4],"body":{"function":79,"kind":"call","operands":[{"kind":"var","name":4},{"kind":"var","name":2},{"kind":"var","name":3}]},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":51,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"kind":"bool"}},"parameters":[0,1,2,3],"result":{"kind":"bool"},"types":[{"kind":"bytes"},{"kind":"nat"},{"kind":"fixed","width":"u8"},{"kind":"fixed","width":"u8"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":71,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},{"kind":"nat"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"function":80,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"bytes"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"body":{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":3}],"operation":{"kind":"nat_lt"}},"else_branch":{"body":{"condition":{"function":82,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":4}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"bytes"},"right":{"kind":"bytes"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"function":18,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"var","name":4}]},{"function":18,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":4},{"kind":"var","name":3}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"prim","operands":[{"kind":"var","name":4},{"kind":"var","name":3}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_sub"}}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bytes"},"right":{"kind":"bytes"}}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"bytes"},"right":{"kind":"bytes"}}}}},"bound":{"kind":"first","value":{"function":38,"kind":"call","operands":[{"captures":[{"kind":"var","name":1},{"kind":"var","name":0}],"function":81,"kind":"closure"},{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":3}],"operation":{"kind":"nat_sub"}}]}},"kind":"let","name":4,"type":{"kind":"nat"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"bytes"},"right":{"kind":"bytes"}}}}},"bound":{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}},"kind":"let","name":3,"type":{"kind":"nat"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},"kind":"let","name":2,"type":{"kind":"nat"}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"bytes"},"right":{"kind":"bytes"}}},"types":[{"kind":"bytes"},{"kind":"bytes"}]},{"body":{"arms":[{"binders":[2],"body":{"function":59,"kind":"call","operands":[{"kind":"var","name":2}]},"shape":{"kind":"error"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"function":59,"kind":"call","operands":[{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"an axiom list cannot be empty"}}]}]},"shape":{"kind":"nil"}},{"binders":[4,5],"body":{"function":58,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":3},"type":{"error":{"kind":"bytes"},"kind":"result","ok":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"shape":{"kind":"ok"}}],"kind":"match","scrutinee":{"function":83,"kind":"call","operands":[{"captures":[],"function":84,"kind":"closure"},{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"bytes"},"kind":"list"}}],"shape":{"kind":"ok"},"type":{"error":{"kind":"bytes"},"kind":"result","ok":{"element":{"kind":"bytes"},"kind":"list"}}},{"function":85,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"44"}}]}]},"type":{"error":{"kind":"bytes"},"kind":"result","ok":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"parameters":[0,1],"result":{"error":{"kind":"bytes"},"kind":"result","ok":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}}},"types":[{"kind":"bytes"},{"kind":"bytes"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"condition":{"kind":"prim","operands":[{"function":55,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_sub"}}]},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"condition":{"condition":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"var","name":1}],"operation":{"kind":"nat_le"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"prim","operands":[{"function":55,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_sub"}}]},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_eq"}}},"else_branch":{"condition":{"condition":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}},{"kind":"var","name":1}],"operation":{"kind":"nat_le"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"prim","operands":[{"function":55,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_sub"}}]},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_eq"}}},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"bytes"},{"kind":"nat"}]},{"body":{"body":{"body":{"body":{"condition":{"function":82,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":4}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":4}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"bound":{"kind":"first","value":{"function":38,"kind":"call","operands":[{"captures":[{"kind":"var","name":1},{"kind":"var","name":3},{"kind":"var","name":0},{"kind":"var","name":2}],"function":86,"kind":"closure"},{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}]}},"kind":"let","name":4,"type":{"kind":"nat"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}},"kind":"let","name":3,"type":{"kind":"nat"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},"kind":"let","name":2,"type":{"kind":"nat"}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"bytes"},{"kind":"bytes"}]},{"body":{"arms":[{"binders":[1],"body":{"function":49,"kind":"call","operands":[{"kind":"var","name":1},{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"info: "}}]}]},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"bytes"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":49,"kind":"call","operands":[{"kind":"var","name":0},{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":" "}}]}]},"type":{"kind":"option","value":{"kind":"bytes"}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"bytes"}},"types":[{"kind":"bytes"}]},{"body":{"body":{"body":{"condition":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"prim","operands":[{"kind":"var","name":2}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"condition":{"function":88,"kind":"call","operands":[{"kind":"var","name":2}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"var","name":3}}},"bound":{"function":87,"kind":"call","operands":[{"function":20,"kind":"call","operands":[{"kind":"var","name":2}]}]},"kind":"let","name":3,"type":{"kind":"bool"}},"bound":{"arms":[{"binders":[1],"body":{"kind":"var","name":1},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":49,"kind":"call","operands":[{"kind":"var","name":0},{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"+"}}]}]},"type":{"kind":"bytes"}},"kind":"let","name":2,"type":{"kind":"bytes"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"bytes"}]},{"body":{"arms":[{"binders":[3],"body":{"arms":[{"binders":[4],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":0}],"operation":{"kind":"checked_sub"}},"type":{"kind":"bool"}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_sub"}},"type":{"kind":"bool"}},"parameters":[0,1,2],"result":{"kind":"bool"},"types":[{"kind":"fixed","width":"u8"},{"kind":"fixed","width":"u8"},{"kind":"fixed","width":"u8"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"second","value":{"kind":"var","name":1}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":1}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"function":89,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":1}},{"kind":"var","name":2}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":51,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"first","value":{"kind":"var","name":1}}]},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"bytes"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"function":90,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"var","name":0},{"kind":"var","name":2}]},"parameters":[0,1,2],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"bytes"},{"kind":"bytes"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[3],"body":{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"var","name":1}],"operation":{"kind":"equal"}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}}],"operation":{"kind":"slice"}},"type":{"kind":"bool"}},"parameters":[0,1,2],"result":{"kind":"bool"},"types":[{"kind":"bytes"},{"kind":"bytes"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":83,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"error":{"kind":"bytes"},"kind":"result","ok":{"element":{"kind":"bytes"},"kind":"list"}}},"parameters":[0,1,2],"result":{"error":{"kind":"bytes"},"kind":"result","ok":{"element":{"kind":"bytes"},"kind":"list"}},"types":[{"kind":"fn","parameters":[{"error":{"kind":"bytes"},"kind":"result","ok":{"element":{"kind":"bytes"},"kind":"list"}},{"kind":"bytes"}],"result":{"error":{"kind":"bytes"},"kind":"result","ok":{"element":{"kind":"bytes"},"kind":"list"}}},{"error":{"kind":"bytes"},"kind":"result","ok":{"element":{"kind":"bytes"},"kind":"list"}},{"element":{"kind":"bytes"},"kind":"list"}]},{"body":{"function":91,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"error":{"kind":"bytes"},"kind":"result","ok":{"element":{"kind":"bytes"},"kind":"list"}},"types":[{"error":{"kind":"bytes"},"kind":"result","ok":{"element":{"kind":"bytes"},"kind":"list"}},{"kind":"bytes"}]},{"body":{"body":{"body":{"body":{"function":17,"kind":"call","operands":[{"kind":"build","operands":[{"function":18,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":4},{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":4}],"operation":{"kind":"nat_sub"}}]},{"kind":"second","value":{"kind":"second","value":{"kind":"var","name":3}}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bytes"},"kind":"list"}}]},"bound":{"kind":"first","value":{"kind":"second","value":{"kind":"var","name":3}}},"kind":"let","name":4,"type":{"kind":"nat"}},"bound":{"kind":"first","value":{"function":15,"kind":"call","operands":[{"captures":[{"kind":"var","name":1},{"kind":"var","name":0}],"function":92,"kind":"closure"},{"kind":"var","name":2},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"bytes"},"kind":"list"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}]}},"kind":"let","name":3,"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},"kind":"let","name":2,"type":{"kind":"nat"}},"parameters":[0,1],"result":{"element":{"kind":"bytes"},"kind":"list"},"types":[{"kind":"bytes"},{"kind":"fixed","width":"u8"}]},{"body":{"condition":{"function":82,"kind":"call","operands":[{"kind":"var","name":2},{"kind":"var","name":0},{"kind":"var","name":4}]},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":4},{"kind":"var","name":1}],"operation":{"kind":"nat_add"}},{"kind":"var","name":3}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":4},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}}},"parameters":[0,1,2,3,4],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"bytes"},{"kind":"nat"},{"kind":"bytes"},{"kind":"nat"},{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"20"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"20"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"18446744073709551615"}}]}],"operation":{"kind":"compare_bytes"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"01","kind":"bytes"}},{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"00","kind":"bytes"}}],"operation":{"kind":"compare_bytes"}}],"operation":{"kind":"equal"}}],"operation":{"kind":"bool_not"}}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"bytes"}]},{"body":{"kind":"prim","operands":[{"kind":"first","value":{"function":38,"kind":"call","operands":[{"captures":[{"kind":"var","name":0}],"function":93,"kind":"closure"},{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}]}},{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_eq"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"bytes"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"46"}}],"operation":{"kind":"equal"}},"else_branch":{"condition":{"function":94,"kind":"call","operands":[{"kind":"var","name":1}]},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},"kind":"cond","then_branch":{"condition":{"function":95,"kind":"call","operands":[{"kind":"var","name":1}]},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},"kind":"cond","then_branch":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"fixed","width":"u8"}]},{"body":{"condition":{"function":82,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":2}]},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"var","name":2}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_sub"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}}},"parameters":[0,1,2],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"bytes"},{"kind":"bytes"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"var","name":0},"shape":{"kind":"error"}},{"binders":[3],"body":{"body":{"condition":{"function":61,"kind":"call","operands":[{"kind":"var","name":4}]},"else_branch":{"kind":"build","operands":[{"function":60,"kind":"call","operands":[{"kind":"var","name":4}]}],"shape":{"kind":"error"},"type":{"error":{"kind":"bytes"},"kind":"result","ok":{"element":{"kind":"bytes"},"kind":"list"}}},"kind":"cond","then_branch":{"arms":[{"binders":[5],"body":{"kind":"build","operands":[{"kind":"var","name":5}],"shape":{"kind":"ok"},"type":{"error":{"kind":"bytes"},"kind":"result","ok":{"element":{"kind":"bytes"},"kind":"list"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[{"function":6,"kind":"call","operands":[{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"duplicate axiom name "}}]},{"function":40,"kind":"call","operands":[{"kind":"var","name":4}]}]}],"shape":{"kind":"error"},"type":{"error":{"kind":"bytes"},"kind":"result","ok":{"element":{"kind":"bytes"},"kind":"list"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":96,"kind":"call","operands":[{"kind":"var","name":4},{"kind":"var","name":3}]},"type":{"error":{"kind":"bytes"},"kind":"result","ok":{"element":{"kind":"bytes"},"kind":"list"}}}},"bound":{"function":32,"kind":"call","operands":[{"kind":"var","name":1}]},"kind":"let","name":4,"type":{"kind":"bytes"}},"shape":{"kind":"ok"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"error":{"kind":"bytes"},"kind":"result","ok":{"element":{"kind":"bytes"},"kind":"list"}}},"parameters":[0,1],"result":{"error":{"kind":"bytes"},"kind":"result","ok":{"element":{"kind":"bytes"},"kind":"list"}},"types":[{"error":{"kind":"bytes"},"kind":"result","ok":{"element":{"kind":"bytes"},"kind":"list"}},{"kind":"bytes"}]},{"body":{"function":97,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"var","name":0},{"kind":"var","name":2}]},"parameters":[0,1,2],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"types":[{"kind":"fixed","width":"u8"},{"kind":"bytes"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}]},{"body":{"function":98,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"bytes"},{"kind":"nat"}]},{"body":{"condition":{"function":79,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"65"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"90"}}]},"else_branch":{"condition":{"function":79,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"97"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"122"}}]},"else_branch":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"95"}}],"operation":{"kind":"equal"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"fixed","width":"u8"}]},{"body":{"condition":{"function":94,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":79,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"48"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"57"}}]},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"63"}}],"operation":{"kind":"equal"}},"else_branch":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"39"}}],"operation":{"kind":"equal"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"fixed","width":"u8"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"bytes"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bytes"},"kind":"list"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"bytes"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2}],"operation":{"kind":"equal"}},"else_branch":{"condition":{"function":54,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"else_branch":{"arms":[{"binders":[4],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"var","name":4}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bytes"},"kind":"list"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"bytes"},"kind":"list"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"bytes"},"kind":"list"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":96,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3}]},"type":{"kind":"option","value":{"element":{"kind":"bytes"},"kind":"list"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"var","name":3}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bytes"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bytes"},"kind":"list"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"bytes"},"kind":"list"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"bytes"},"kind":"list"}}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"element":{"kind":"bytes"},"kind":"list"}}},"parameters":[0,1],"result":{"kind":"option","value":{"element":{"kind":"bytes"},"kind":"list"}},"types":[{"kind":"bytes"},{"element":{"kind":"bytes"},"kind":"list"}]},{"body":{"body":{"body":{"body":{"arms":[{"binders":[6],"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":6},{"kind":"var","name":1}],"operation":{"kind":"equal"}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"build","operands":[{"kind":"var","name":4},{"kind":"var","name":5}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"build","operands":[{"function":18,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":4},{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"var","name":4}],"operation":{"kind":"nat_sub"}}]},{"kind":"var","name":5}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bytes"},"kind":"list"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":51,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3}]},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}},"bound":{"kind":"second","value":{"kind":"second","value":{"kind":"var","name":2}}},"kind":"let","name":5,"type":{"element":{"kind":"bytes"},"kind":"list"}},"bound":{"kind":"first","value":{"kind":"second","value":{"kind":"var","name":2}}},"kind":"let","name":4,"type":{"kind":"nat"}},"bound":{"kind":"first","value":{"kind":"var","name":2}},"kind":"let","name":3,"type":{"kind":"nat"}},"parameters":[0,1,2],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"types":[{"kind":"bytes"},{"kind":"fixed","width":"u8"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}]},{"body":{"condition":{"function":70,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"48"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"57"}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"bytes"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["adb40bbfc73b1dc6b7a95dab0c348a2752ede8bc8cffbc4bfb49bce333d9aceb"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"parse_audit_output","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"bytes"},{"kind":"option","value":{"kind":"bytes"}}]]},{"constructors":[[{"element":{"index":2,"kind":"adt"},"kind":"list"},{"element":{"kind":"bytes"},"kind":"list"}],[{"element":{"index":2,"kind":"adt"},"kind":"list"},{"element":{"kind":"bytes"},"kind":"list"},{"kind":"bytes"},{"kind":"option","value":{"kind":"bytes"}}],[{"index":0,"kind":"adt"}]]},{"constructors":[[{"kind":"bytes"},{"element":{"kind":"bytes"},"kind":"list"},{"kind":"option","value":{"kind":"bytes"}}]]}],"functions":[{"body":{"function":1,"kind":"call","operands":[{"function":2,"kind":"call","operands":[{"captures":[],"function":3,"kind":"closure"},{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":2,"kind":"adt"},"kind":"list"}},{"kind":"var","name":1}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},{"function":4,"kind":"call","operands":[{"kind":"var","name":0}]}]},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}},"types":[{"kind":"bytes"},{"element":{"kind":"bytes"},"kind":"list"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"error"},"type":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}},"shape":{"constructor":2,"kind":"adt"}},{"binders":[3,4,5,6],"body":{"function":5,"kind":"call","operands":[{"function":6,"kind":"call","operands":[{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"unterminated axiom payload: "}}]},{"kind":"var","name":5}]},{"kind":"var","name":6}]},"shape":{"constructor":1,"kind":"adt"}},{"binders":[7,8],"body":{"body":{"condition":{"kind":"prim","operands":[{"function":10,"kind":"call","operands":[{"kind":"var","name":7}]},{"function":9,"kind":"call","operands":[{"kind":"var","name":1}]}],"operation":{"kind":"nat_eq"}},"else_branch":{"kind":"var","name":9},"kind":"cond","then_branch":{"function":11,"kind":"call","operands":[{"captures":[],"function":12,"kind":"closure"},{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}],"shape":{"kind":"ok"},"type":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}},{"function":13,"kind":"call","operands":[{"kind":"var","name":7}]}]}},"bound":{"function":5,"kind":"call","operands":[{"function":6,"kind":"call","operands":[{"function":6,"kind":"call","operands":[{"function":6,"kind":"call","operands":[{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"expected "}}]},{"function":8,"kind":"call","operands":[{"function":9,"kind":"call","operands":[{"kind":"var","name":1}]}]}]},{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":" audit records, found "}}]}]},{"function":8,"kind":"call","operands":[{"function":10,"kind":"call","operands":[{"kind":"var","name":7}]}]}]},{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"bytes"}}}]},"kind":"let","name":9,"type":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}},"shape":{"constructor":0,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}},"parameters":[0,1],"result":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}},"types":[{"index":1,"kind":"adt"},{"element":{"kind":"bytes"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"index":1,"kind":"adt"}},"parameters":[0,1,2],"result":{"index":1,"kind":"adt"},"types":[{"kind":"fn","parameters":[{"index":1,"kind":"adt"},{"kind":"bytes"}],"result":{"index":1,"kind":"adt"}},{"index":1,"kind":"adt"},{"element":{"kind":"bytes"},"kind":"list"}]},{"body":{"function":14,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"},{"kind":"bytes"}]},{"body":{"body":{"body":{"body":{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"var","name":1}],"operation":{"kind":"nat_lt"}},"else_branch":{"function":17,"kind":"call","operands":[{"kind":"var","name":4}]},"kind":"cond","then_branch":{"function":17,"kind":"call","operands":[{"kind":"build","operands":[{"function":18,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"operation":{"kind":"nat_sub"}}]},{"kind":"var","name":4}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bytes"},"kind":"list"}}]}},"bound":{"kind":"second","value":{"kind":"second","value":{"kind":"var","name":2}}},"kind":"let","name":4,"type":{"element":{"kind":"bytes"},"kind":"list"}},"bound":{"kind":"first","value":{"kind":"second","value":{"kind":"var","name":2}}},"kind":"let","name":3,"type":{"kind":"nat"}},"bound":{"kind":"first","value":{"function":15,"kind":"call","operands":[{"captures":[{"kind":"var","name":0}],"function":16,"kind":"closure"},{"kind":"var","name":1},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"bytes"},"kind":"list"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}]}},"kind":"let","name":2,"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},"kind":"let","name":1,"type":{"kind":"nat"}},"parameters":[0],"result":{"element":{"kind":"bytes"},"kind":"list"},"types":[{"kind":"bytes"}]},{"body":{"kind":"build","operands":[{"function":19,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]}],"shape":{"kind":"error"},"type":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}},"parameters":[0,1],"result":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}},"types":[{"kind":"bytes"},{"kind":"option","value":{"kind":"bytes"}}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"append"}},"parameters":[0,1],"result":{"kind":"bytes"},"types":[{"kind":"bytes"},{"kind":"bytes"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"utf8_encode"}},"parameters":[0],"result":{"kind":"bytes"},"types":[{"kind":"string"}]},{"body":{"body":{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"kind":"var","name":2},"kind":"cond","then_branch":{"kind":"var","name":1}},"bound":{"function":20,"kind":"call","operands":[{"kind":"prim","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"10000000000000000000"}}]},{"kind":"prim","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1000000000000000000"}}]},{"kind":"prim","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"100000000000000000"}}]},{"kind":"prim","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"10000000000000000"}}]},{"kind":"prim","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1000000000000000"}}]},{"kind":"prim","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"100000000000000"}}]},{"kind":"prim","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"10000000000000"}}]},{"kind":"prim","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1000000000000"}}]},{"kind":"prim","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"100000000000"}}]},{"kind":"prim","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"10000000000"}}]},{"kind":"prim","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1000000000"}}]},{"kind":"prim","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"100000000"}}]},{"kind":"prim","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"10000000"}}]},{"kind":"prim","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1000000"}}]},{"kind":"prim","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"100000"}}]},{"kind":"prim","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"10000"}}]},{"kind":"prim","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1000"}}]},{"kind":"prim","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"100"}}]},{"kind":"prim","operands":[{"function":21,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"10"}}]},{"function":21,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}]}],"operation":{"kind":"append"}}],"operation":{"kind":"append"}}],"operation":{"kind":"append"}}],"operation":{"kind":"append"}}],"operation":{"kind":"append"}}],"operation":{"kind":"append"}}],"operation":{"kind":"append"}}],"operation":{"kind":"append"}}],"operation":{"kind":"append"}}],"operation":{"kind":"append"}}],"operation":{"kind":"append"}}],"operation":{"kind":"append"}}],"operation":{"kind":"append"}}],"operation":{"kind":"append"}}],"operation":{"kind":"append"}}],"operation":{"kind":"append"}}],"operation":{"kind":"append"}}],"operation":{"kind":"append"}}],"operation":{"kind":"append"}}]},"kind":"let","name":2,"type":{"kind":"bytes"}},"bound":{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"0"}}]},"kind":"let","name":1,"type":{"kind":"bytes"}},"parameters":[0],"result":{"kind":"bytes"},"types":[{"kind":"nat"}]},{"body":{"function":22,"kind":"call","operands":[{"captures":[],"function":23,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"var","name":0}]},"parameters":[0],"result":{"kind":"nat"},"types":[{"element":{"kind":"bytes"},"kind":"list"}]},{"body":{"function":24,"kind":"call","operands":[{"captures":[],"function":25,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"var","name":0}]},"parameters":[0],"result":{"kind":"nat"},"types":[{"element":{"index":2,"kind":"adt"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":11,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}},"parameters":[0,1,2],"result":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}},"types":[{"kind":"fn","parameters":[{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}},{"index":2,"kind":"adt"}],"result":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}},{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}},{"element":{"index":2,"kind":"adt"},"kind":"list"}]},{"body":{"function":26,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}},"types":[{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}},{"index":2,"kind":"adt"}]},{"body":{"function":27,"kind":"call","operands":[{"captures":[],"function":28,"kind":"closure"},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":2,"kind":"adt"},"kind":"list"}},{"kind":"var","name":0}]},"parameters":[0],"result":{"element":{"index":2,"kind":"adt"},"kind":"list"},"types":[{"element":{"index":2,"kind":"adt"},"kind":"list"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"var","name":0},"shape":{"constructor":2,"kind":"adt"}},{"binders":[3,4,5,6],"body":{"arms":[{"binders":[7],"body":{"function":30,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":4},{"function":6,"kind":"call","operands":[{"function":6,"kind":"call","operands":[{"kind":"var","name":5},{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":" "}}]}]},{"kind":"var","name":7}]},{"kind":"var","name":6}]},"shape":{"kind":"some"}},{"binders":[],"body":{"function":31,"kind":"call","operands":[{"function":6,"kind":"call","operands":[{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"unterminated axiom payload: "}}]},{"kind":"var","name":5}]},{"kind":"var","name":6}]},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":29,"kind":"call","operands":[{"kind":"var","name":1}]},"type":{"index":1,"kind":"adt"}},"shape":{"constructor":1,"kind":"adt"}},{"binders":[8,9],"body":{"condition":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"prim","operands":[{"function":32,"kind":"call","operands":[{"kind":"var","name":1}]}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"arms":[{"binders":[10],"body":{"function":30,"kind":"call","operands":[{"kind":"var","name":8},{"kind":"var","name":9},{"kind":"var","name":10},{"function":34,"kind":"call","operands":[{"kind":"var","name":9}]}]},"shape":{"kind":"some"}},{"binders":[],"body":{"function":31,"kind":"call","operands":[{"function":6,"kind":"call","operands":[{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"unrecognized audit line: "}}]},{"function":32,"kind":"call","operands":[{"kind":"var","name":1}]}]},{"function":34,"kind":"call","operands":[{"kind":"var","name":9}]}]},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":33,"kind":"call","operands":[{"function":32,"kind":"call","operands":[{"kind":"var","name":1}]}]},"type":{"index":1,"kind":"adt"}},"kind":"cond","then_branch":{"kind":"var","name":0}},"shape":{"constructor":0,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"index":1,"kind":"adt"}},"parameters":[0,1],"result":{"index":1,"kind":"adt"},"types":[{"index":1,"kind":"adt"},{"kind":"bytes"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":15,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}},{"kind":"nat"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}]},{"body":{"function":35,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"types":[{"kind":"bytes"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}]},{"body":{"function":36,"kind":"call","operands":[{"captures":[],"function":37,"kind":"closure"},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"bytes"},"kind":"list"}},{"kind":"var","name":0}]},"parameters":[0],"result":{"element":{"kind":"bytes"},"kind":"list"},"types":[{"element":{"kind":"bytes"},"kind":"list"}]},{"body":{"arms":[{"binders":[3],"body":{"kind":"var","name":3},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"","kind":"bytes"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"slice"}},"type":{"kind":"bytes"}},"parameters":[0,1,2],"result":{"kind":"bytes"},"types":[{"kind":"bytes"},{"kind":"nat"},{"kind":"nat"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},"parameters":[0,1],"result":{"index":0,"kind":"adt"},"types":[{"kind":"bytes"},{"kind":"option","value":{"kind":"bytes"}}]},{"body":{"body":{"function":18,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},{"kind":"var","name":1}],"operation":{"kind":"nat_sub"}}]},"bound":{"kind":"first","value":{"function":38,"kind":"call","operands":[{"captures":[{"kind":"var","name":0}],"function":39,"kind":"closure"},{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}]}},"kind":"let","name":1,"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"bytes"},"types":[{"kind":"bytes"}]},{"body":{"function":18,"kind":"call","operands":[{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"0123456789"}}]},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_quot"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"10"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}]},"parameters":[0,1],"result":{"kind":"bytes"},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":22,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"nat"}},"parameters":[0,1,2],"result":{"kind":"nat"},"types":[{"kind":"fn","parameters":[{"kind":"nat"},{"kind":"bytes"}],"result":{"kind":"nat"}},{"kind":"nat"},{"element":{"kind":"bytes"},"kind":"list"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"bytes"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":24,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"nat"}},"parameters":[0,1,2],"result":{"kind":"nat"},"types":[{"kind":"fn","parameters":[{"kind":"nat"},{"index":2,"kind":"adt"}],"result":{"kind":"nat"}},{"kind":"nat"},{"element":{"index":2,"kind":"adt"},"kind":"list"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"index":2,"kind":"adt"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"var","name":0},"shape":{"kind":"error"}},{"binders":[3],"body":{"body":{"body":{"body":{"condition":{"kind":"prim","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":1}},{"kind":"var","name":5}],"operation":{"kind":"equal"}},"else_branch":{"kind":"var","name":7},"kind":"cond","then_branch":{"arms":[{"binders":[8],"body":{"kind":"build","operands":[{"kind":"var","name":8}],"shape":{"kind":"ok"},"type":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"var","name":6},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":41,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":1}},{"index":1,"kind":"field","value":{"kind":"var","name":1}},{"kind":"var","name":3}]},"type":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}}},"bound":{"function":5,"kind":"call","operands":[{"function":6,"kind":"call","operands":[{"function":6,"kind":"call","operands":[{"function":6,"kind":"call","operands":[{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"expected a record for "}}]},{"function":40,"kind":"call","operands":[{"kind":"var","name":5}]}]},{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":", found "}}]}]},{"function":40,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":1}}]}]},{"kind":"build","operands":[{"kind":"var","name":5}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"bytes"}}}]},"kind":"let","name":7,"type":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}},"bound":{"function":5,"kind":"call","operands":[{"function":6,"kind":"call","operands":[{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"duplicate record for "}}]},{"function":40,"kind":"call","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":1}}]}]},{"kind":"build","operands":[{"kind":"var","name":5}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"bytes"}}}]},"kind":"let","name":6,"type":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}},"bound":{"arms":[{"binders":[4],"body":{"kind":"var","name":4},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"","kind":"bytes"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"index":2,"kind":"field","value":{"kind":"var","name":1}},"type":{"kind":"bytes"}},"kind":"let","name":5,"type":{"kind":"bytes"}},"shape":{"kind":"ok"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}},"parameters":[0,1],"result":{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}},"types":[{"error":{"index":0,"kind":"adt"},"kind":"result","ok":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}},{"index":2,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":27,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"element":{"index":2,"kind":"adt"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"index":2,"kind":"adt"},"kind":"list"},"types":[{"kind":"fn","parameters":[{"element":{"index":2,"kind":"adt"},"kind":"list"},{"index":2,"kind":"adt"}],"result":{"element":{"index":2,"kind":"adt"},"kind":"list"}},{"element":{"index":2,"kind":"adt"},"kind":"list"},{"element":{"index":2,"kind":"adt"},"kind":"list"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"index":2,"kind":"adt"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"index":2,"kind":"adt"},"kind":"list"},"types":[{"element":{"index":2,"kind":"adt"},"kind":"list"},{"index":2,"kind":"adt"}]},{"body":{"body":{"condition":{"function":42,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"bytes"}}},"kind":"cond","then_branch":{"condition":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"bytes"}}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"bytes"}}}}},"bound":{"function":32,"kind":"call","operands":[{"kind":"var","name":0}]},"kind":"let","name":1,"type":{"kind":"bytes"}},"parameters":[0],"result":{"kind":"option","value":{"kind":"bytes"}},"types":[{"kind":"bytes"}]},{"body":{"condition":{"function":43,"kind":"call","operands":[{"kind":"var","name":2}]},"else_branch":{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":2},{"kind":"var","name":3}],"shape":{"constructor":1,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"kind":"cond","then_branch":{"arms":[{"binders":[4],"body":{"function":31,"kind":"call","operands":[{"kind":"var","name":4},{"kind":"var","name":3}]},"shape":{"kind":"error"}},{"binders":[5],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"first","value":{"kind":"var","name":5}},{"kind":"second","value":{"kind":"var","name":5}},{"kind":"var","name":3}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"index":2,"kind":"adt"},"kind":"list"}},{"function":45,"kind":"call","operands":[{"kind":"var","name":1}]}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"shape":{"kind":"ok"}}],"kind":"match","scrutinee":{"function":44,"kind":"call","operands":[{"kind":"var","name":2}]},"type":{"index":1,"kind":"adt"}}},"parameters":[0,1,2,3],"result":{"index":1,"kind":"adt"},"types":[{"element":{"index":2,"kind":"adt"},"kind":"list"},{"element":{"kind":"bytes"},"kind":"list"},{"kind":"bytes"},{"kind":"option","value":{"kind":"bytes"}}]},{"body":{"kind":"build","operands":[{"function":19,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]}],"shape":{"constructor":2,"kind":"adt"},"type":{"index":1,"kind":"adt"}},"parameters":[0,1],"result":{"index":1,"kind":"adt"},"types":[{"kind":"bytes"},{"kind":"option","value":{"kind":"bytes"}}]},{"body":{"body":{"body":{"function":18,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":1}],"operation":{"kind":"nat_sub"}}]},"bound":{"function":47,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"kind":"let","name":2,"type":{"kind":"nat"}},"bound":{"function":46,"kind":"call","operands":[{"kind":"var","name":0}]},"kind":"let","name":1,"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"bytes"},"types":[{"kind":"bytes"}]},{"body":{"condition":{"function":48,"kind":"call","operands":[{"kind":"var","name":0},{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"'"}}]}]},"else_branch":{"arms":[{"binders":[1],"body":{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"bytes"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"function":50,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":49,"kind":"call","operands":[{"kind":"var","name":0},{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"info: "}}]}]},"type":{"kind":"option","value":{"kind":"bytes"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":0}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"bytes"}}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"bytes"}},"types":[{"kind":"bytes"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"bytes"}}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"bytes"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"kind":"bytes"}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"bytes"}},"types":[{"element":{"kind":"bytes"},"kind":"list"}]},{"body":{"body":{"body":{"body":{"arms":[{"binders":[5],"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":5},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"10"}}],"operation":{"kind":"equal"}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"build","operands":[{"kind":"var","name":3},{"kind":"var","name":4}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"build","operands":[{"function":52,"kind":"call","operands":[{"function":18,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":3}],"operation":{"kind":"nat_sub"}}]}]},{"kind":"var","name":4}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bytes"},"kind":"list"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":51,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}},"bound":{"kind":"second","value":{"kind":"second","value":{"kind":"var","name":1}}},"kind":"let","name":4,"type":{"element":{"kind":"bytes"},"kind":"list"}},"bound":{"kind":"first","value":{"kind":"second","value":{"kind":"var","name":1}}},"kind":"let","name":3,"type":{"kind":"nat"}},"bound":{"kind":"first","value":{"kind":"var","name":1}},"kind":"let","name":2,"type":{"kind":"nat"}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"types":[{"kind":"bytes"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":36,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"element":{"kind":"bytes"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"kind":"bytes"},"kind":"list"},"types":[{"kind":"fn","parameters":[{"element":{"kind":"bytes"},"kind":"list"},{"kind":"bytes"}],"result":{"element":{"kind":"bytes"},"kind":"list"}},{"element":{"kind":"bytes"},"kind":"list"},{"element":{"kind":"bytes"},"kind":"list"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bytes"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"bytes"},"kind":"list"},"types":[{"element":{"kind":"bytes"},"kind":"list"},{"kind":"bytes"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":38,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"option","value":{"kind":"nat"}}},{"kind":"nat"},{"kind":"nat"}]},{"body":{"function":53,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"bytes"},{"kind":"nat"}]},{"body":{"function":6,"kind":"call","operands":[{"function":6,"kind":"call","operands":[{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"`"}}]},{"kind":"var","name":0}]},{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"`"}}]}]},"parameters":[0],"result":{"kind":"bytes"},"types":[{"kind":"bytes"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"first","value":{"kind":"var","name":3}}],"operation":{"kind":"equal"}},"else_branch":{"condition":{"function":54,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"first","value":{"kind":"var","name":3}}]},"else_branch":{"arms":[{"binders":[5],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":3},{"kind":"var","name":5}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":41,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":4}]},"type":{"kind":"option","value":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}}},{"kind":"build","operands":[{"kind":"var","name":3},{"kind":"var","name":4}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"option","value":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}}},"parameters":[0,1,2],"result":{"kind":"option","value":{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}},"types":[{"kind":"bytes"},{"element":{"kind":"bytes"},"kind":"list"},{"element":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}},"kind":"list"}]},{"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"function":55,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}]}],"operation":{"kind":"nat_lt"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"bytes"}]},{"body":{"arms":[{"binders":[1],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"some"}},{"binders":[],"body":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":56,"kind":"call","operands":[{"kind":"var","name":0},{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":" does not depend on any axioms"}}]}]},"type":{"kind":"bool"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":56,"kind":"call","operands":[{"kind":"var","name":0},{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"]"}}]}]},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"bytes"}]},{"body":{"arms":[{"binders":[],"body":{"function":57,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"kind":"none"}},{"binders":[1],"body":{"arms":[{"binders":[2],"body":{"body":{"body":{"condition":{"function":61,"kind":"call","operands":[{"kind":"var","name":2}]},"else_branch":{"kind":"var","name":4},"kind":"cond","then_branch":{"kind":"var","name":3}},"bound":{"function":59,"kind":"call","operands":[{"function":60,"kind":"call","operands":[{"kind":"var","name":2}]}]},"kind":"let","name":4,"type":{"error":{"kind":"bytes"},"kind":"result","ok":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"bound":{"function":58,"kind":"call","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"bytes"},"kind":"list"}}]},"kind":"let","name":3,"type":{"error":{"kind":"bytes"},"kind":"result","ok":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"shape":{"kind":"some"}},{"binders":[],"body":{"arms":[{"binders":[5],"body":{"function":62,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":5}]},"shape":{"kind":"some"}},{"binders":[],"body":{"function":57,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":56,"kind":"call","operands":[{"kind":"var","name":1},{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"]"}}]}]},"type":{"error":{"kind":"bytes"},"kind":"result","ok":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":56,"kind":"call","operands":[{"kind":"var","name":1},{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"' does not depend on any axioms"}}]}]},"type":{"error":{"kind":"bytes"},"kind":"result","ok":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":49,"kind":"call","operands":[{"kind":"var","name":0},{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"'"}}]}]},"type":{"error":{"kind":"bytes"},"kind":"result","ok":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"parameters":[0],"result":{"error":{"kind":"bytes"},"kind":"result","ok":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}}},"types":[{"kind":"bytes"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"bytes"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"kind":"var","name":2},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"bytes"},"kind":"list"}},"parameters":[0],"result":{"element":{"kind":"bytes"},"kind":"list"},"types":[{"element":{"kind":"bytes"},"kind":"list"}]},{"body":{"kind":"first","value":{"function":38,"kind":"call","operands":[{"captures":[{"kind":"var","name":0}],"function":63,"kind":"closure"},{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}]}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"bytes"}]},{"body":{"kind":"first","value":{"function":38,"kind":"call","operands":[{"captures":[{"kind":"var","name":1},{"kind":"var","name":0}],"function":64,"kind":"closure"},{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}}]}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"bytes"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":1}],"operation":{"kind":"equal"}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}}],"operation":{"kind":"slice"}},"type":{"kind":"bool"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"kind":"bytes"},{"kind":"bytes"}]},{"body":{"condition":{"function":48,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"bytes"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":18,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_sub"}}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"bytes"}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"bytes"}},"types":[{"kind":"bytes"},{"kind":"bytes"}]},{"body":{"arms":[{"binders":[1],"body":{"arms":[{"binders":[2],"body":{"arms":[{"binders":[3],"body":{"body":{"body":{"body":{"body":{"condition":{"function":67,"kind":"call","operands":[{"kind":"var","name":4}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"bytes"}}},"kind":"cond","then_branch":{"kind":"var","name":7}},"bound":{"function":66,"kind":"call","operands":[{"kind":"var","name":5},{"kind":"var","name":6}]},"kind":"let","name":7,"type":{"kind":"option","value":{"kind":"bytes"}}},"bound":{"kind":"second","value":{"kind":"var","name":3}},"kind":"let","name":6,"type":{"kind":"bytes"}},"bound":{"kind":"first","value":{"kind":"var","name":3}},"kind":"let","name":5,"type":{"kind":"bytes"}},"bound":{"kind":"first","value":{"kind":"var","name":2}},"kind":"let","name":4,"type":{"kind":"bytes"}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"bytes"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":65,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":2}},{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":":"}}]}]},"type":{"kind":"option","value":{"kind":"bytes"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"bytes"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":65,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":1}},{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":":"}}]}]},"type":{"kind":"option","value":{"kind":"bytes"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"bytes"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":65,"kind":"call","operands":[{"kind":"var","name":0},{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":":"}}]}]},"type":{"kind":"option","value":{"kind":"bytes"}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"bytes"}},"types":[{"kind":"bytes"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"index"}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"types":[{"kind":"bytes"},{"kind":"nat"}]},{"body":{"condition":{"function":68,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"0d","kind":"bytes"}}]},"else_branch":{"kind":"var","name":0},"kind":"cond","then_branch":{"function":18,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_sub"}}]}},"parameters":[0],"result":{"kind":"bytes"},"types":[{"kind":"bytes"}]},{"body":{"condition":{"function":69,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"48"}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"bytes"},{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"compare_bytes"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"","kind":"bytes"}},{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"01","kind":"bytes"}}],"operation":{"kind":"compare_bytes"}}],"operation":{"kind":"equal"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"kind":"bytes"},{"kind":"bytes"}]},{"body":{"condition":{"condition":{"function":70,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"9"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"13"}}]},"else_branch":{"condition":{"function":69,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"32"}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"else_branch":{"condition":{"function":69,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"194"}}]},"else_branch":{"condition":{"function":69,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"225"}}]},"else_branch":{"condition":{"function":69,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"226"}}]},"else_branch":{"condition":{"function":69,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"227"}}]},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"kind":"cond","then_branch":{"condition":{"condition":{"function":69,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"128"}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"condition":{"function":69,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_add"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"128"}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}}},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}}},"kind":"cond","then_branch":{"condition":{"function":69,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"128"}}]},"else_branch":{"condition":{"condition":{"function":69,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"129"}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"condition":{"function":69,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_add"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"159"}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}}},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}},"kind":"cond","then_branch":{"condition":{"condition":{"function":70,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_add"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"128"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"138"}}]},"else_branch":{"condition":{"function":69,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_add"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"168"}}]},"else_branch":{"condition":{"function":69,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_add"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"169"}}]},"else_branch":{"condition":{"function":69,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_add"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"175"}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}}}},"kind":"cond","then_branch":{"condition":{"condition":{"function":69,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"154"}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"condition":{"function":69,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_add"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"128"}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}}},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}}},"kind":"cond","then_branch":{"condition":{"condition":{"function":69,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"133"}}]},"else_branch":{"condition":{"function":69,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"160"}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"bytes"},{"kind":"nat"}]},{"body":{"condition":{"function":68,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"bytes"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":18,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_sub"}}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"bytes"}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"bytes"}},"types":[{"kind":"bytes"},{"kind":"bytes"}]},{"body":{"function":59,"kind":"call","operands":[{"function":6,"kind":"call","operands":[{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"unrecognized axiom payload: "}}]},{"kind":"var","name":0}]}]},"parameters":[0],"result":{"error":{"kind":"bytes"},"kind":"result","ok":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}}},"types":[{"kind":"bytes"}]},{"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}],"shape":{"kind":"ok"},"type":{"error":{"kind":"bytes"},"kind":"result","ok":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"parameters":[0,1],"result":{"error":{"kind":"bytes"},"kind":"result","ok":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}}},"types":[{"kind":"bytes"},{"element":{"kind":"bytes"},"kind":"list"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":0}],"shape":{"kind":"error"},"type":{"error":{"kind":"bytes"},"kind":"result","ok":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"parameters":[0],"result":{"error":{"kind":"bytes"},"kind":"result","ok":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}}},"types":[{"kind":"bytes"}]},{"body":{"function":6,"kind":"call","operands":[{"function":40,"kind":"call","operands":[{"kind":"var","name":0}]},{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":" is not a Lean name"}}]}]},"parameters":[0],"result":{"kind":"bytes"},"types":[{"kind":"bytes"}]},{"body":{"kind":"prim","operands":[{"kind":"second","value":{"kind":"first","value":{"function":71,"kind":"call","operands":[{"captures":[{"kind":"var","name":0}],"function":72,"kind":"closure"},{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}]}}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"bytes"}]},{"body":{"arms":[{"binders":[2],"body":{"body":{"body":{"body":{"body":{"condition":{"function":61,"kind":"call","operands":[{"kind":"var","name":3}]},"else_branch":{"kind":"var","name":6},"kind":"cond","then_branch":{"kind":"var","name":5}},"bound":{"function":59,"kind":"call","operands":[{"function":60,"kind":"call","operands":[{"kind":"var","name":3}]}]},"kind":"let","name":6,"type":{"error":{"kind":"bytes"},"kind":"result","ok":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"bound":{"function":74,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":4}]},"kind":"let","name":5,"type":{"error":{"kind":"bytes"},"kind":"result","ok":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"bound":{"kind":"second","value":{"kind":"var","name":2}},"kind":"let","name":4,"type":{"kind":"bytes"}},"bound":{"kind":"first","value":{"kind":"var","name":2}},"kind":"let","name":3,"type":{"kind":"bytes"}},"shape":{"kind":"some"}},{"binders":[],"body":{"function":57,"kind":"call","operands":[{"kind":"var","name":0}]},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":73,"kind":"call","operands":[{"kind":"var","name":1},{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"' depends on axioms: ["}}]}]},"type":{"error":{"kind":"bytes"},"kind":"result","ok":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"parameters":[0,1],"result":{"error":{"kind":"bytes"},"kind":"result","ok":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}}},"types":[{"kind":"bytes"},{"kind":"bytes"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"function":55,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"function":55,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]}],"operation":{"kind":"nat_add"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"bytes"},{"kind":"nat"}]},{"body":{"condition":{"condition":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"function":75,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"var","name":2}]}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"function":75,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"var","name":2}]}],"operation":{"kind":"nat_add"}},{"kind":"var","name":2}],"operation":{"kind":"nat_le"}}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"function":75,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"var","name":2}]}],"operation":{"kind":"nat_sub"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"parameters":[0,1,2],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"nat"},{"kind":"bytes"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"function":18,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"var","name":2}]},{"function":18,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_sub"}}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bytes"},"right":{"kind":"bytes"}}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"bytes"},"right":{"kind":"bytes"}}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"bytes"},"right":{"kind":"bytes"}}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":76,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"bytes"},"right":{"kind":"bytes"}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"bytes"},"right":{"kind":"bytes"}}},"types":[{"kind":"bytes"},{"kind":"bytes"}]},{"body":{"arms":[{"binders":[2],"body":{"body":{"body":{"arms":[{"binders":[5],"body":{"body":{"body":{"body":{"condition":{"function":67,"kind":"call","operands":[{"kind":"var","name":3}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"bytes"}}},"kind":"cond","then_branch":{"condition":{"function":67,"kind":"call","operands":[{"kind":"var","name":4}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"bytes"}}},"kind":"cond","then_branch":{"condition":{"function":67,"kind":"call","operands":[{"kind":"var","name":6}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"bytes"}}},"kind":"cond","then_branch":{"kind":"var","name":8}}}},"bound":{"function":77,"kind":"call","operands":[{"kind":"var","name":7}]},"kind":"let","name":8,"type":{"kind":"option","value":{"kind":"bytes"}}},"bound":{"kind":"second","value":{"kind":"var","name":5}},"kind":"let","name":7,"type":{"kind":"bytes"}},"bound":{"kind":"first","value":{"kind":"var","name":5}},"kind":"let","name":6,"type":{"kind":"bytes"}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"bytes"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":65,"kind":"call","operands":[{"kind":"var","name":1},{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":":"}}]}]},"type":{"kind":"option","value":{"kind":"bytes"}}},"bound":{"kind":"second","value":{"kind":"var","name":2}},"kind":"let","name":4,"type":{"kind":"bytes"}},"bound":{"kind":"first","value":{"kind":"var","name":2}},"kind":"let","name":3,"type":{"kind":"bytes"}},"shape":{"kind":"some"}},{"binders":[],"body":{"body":{"condition":{"function":67,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"bytes"}}},"kind":"cond","then_branch":{"kind":"var","name":9}},"bound":{"function":77,"kind":"call","operands":[{"kind":"var","name":1}]},"kind":"let","name":9,"type":{"kind":"option","value":{"kind":"bytes"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":65,"kind":"call","operands":[{"kind":"var","name":0},{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"-"}}]}]},"type":{"kind":"option","value":{"kind":"bytes"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"bytes"}},"types":[{"kind":"bytes"},{"kind":"bytes"}]},{"body":{"function":78,"kind":"call","operands":[{"function":32,"kind":"call","operands":[{"kind":"var","name":0}]}]},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"bytes"}]},{"body":{"body":{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"var","name":2}],"operation":{"kind":"nat_le"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"arms":[{"binders":[4],"body":{"kind":"prim","operands":[{"kind":"var","name":4},{"kind":"var","name":1}],"operation":{"kind":"equal"}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":3}],"operation":{"kind":"nat_sub"}},{"kind":"var","name":3}],"operation":{"kind":"slice"}},"type":{"kind":"bool"}}},"bound":{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}},"kind":"let","name":3,"type":{"kind":"nat"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},"kind":"let","name":2,"type":{"kind":"nat"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"kind":"bytes"},{"kind":"bytes"}]},{"body":{"arms":[{"binders":[3],"body":{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"var","name":2}],"operation":{"kind":"equal"}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":51,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"kind":"bool"}},"parameters":[0,1,2],"result":{"kind":"bool"},"types":[{"kind":"bytes"},{"kind":"nat"},{"kind":"fixed","width":"u8"}]},{"body":{"arms":[{"binders":[4],"body":{"function":79,"kind":"call","operands":[{"kind":"var","name":4},{"kind":"var","name":2},{"kind":"var","name":3}]},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":51,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"kind":"bool"}},"parameters":[0,1,2,3],"result":{"kind":"bool"},"types":[{"kind":"bytes"},{"kind":"nat"},{"kind":"fixed","width":"u8"},{"kind":"fixed","width":"u8"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":71,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},{"kind":"nat"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"function":80,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"bytes"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"body":{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":3}],"operation":{"kind":"nat_lt"}},"else_branch":{"body":{"condition":{"function":82,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":4}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"bytes"},"right":{"kind":"bytes"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"function":18,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"var","name":4}]},{"function":18,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":4},{"kind":"var","name":3}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"prim","operands":[{"kind":"var","name":4},{"kind":"var","name":3}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_sub"}}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bytes"},"right":{"kind":"bytes"}}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"bytes"},"right":{"kind":"bytes"}}}}},"bound":{"kind":"first","value":{"function":38,"kind":"call","operands":[{"captures":[{"kind":"var","name":1},{"kind":"var","name":0}],"function":81,"kind":"closure"},{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":3}],"operation":{"kind":"nat_sub"}}]}},"kind":"let","name":4,"type":{"kind":"nat"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"bytes"},"right":{"kind":"bytes"}}}}},"bound":{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}},"kind":"let","name":3,"type":{"kind":"nat"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},"kind":"let","name":2,"type":{"kind":"nat"}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"bytes"},"right":{"kind":"bytes"}}},"types":[{"kind":"bytes"},{"kind":"bytes"}]},{"body":{"arms":[{"binders":[2],"body":{"function":59,"kind":"call","operands":[{"kind":"var","name":2}]},"shape":{"kind":"error"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"function":59,"kind":"call","operands":[{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"an axiom list cannot be empty"}}]}]},"shape":{"kind":"nil"}},{"binders":[4,5],"body":{"function":58,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":3},"type":{"error":{"kind":"bytes"},"kind":"result","ok":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"shape":{"kind":"ok"}}],"kind":"match","scrutinee":{"function":83,"kind":"call","operands":[{"captures":[],"function":84,"kind":"closure"},{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"bytes"},"kind":"list"}}],"shape":{"kind":"ok"},"type":{"error":{"kind":"bytes"},"kind":"result","ok":{"element":{"kind":"bytes"},"kind":"list"}}},{"function":85,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"44"}}]}]},"type":{"error":{"kind":"bytes"},"kind":"result","ok":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"parameters":[0,1],"result":{"error":{"kind":"bytes"},"kind":"result","ok":{"kind":"pair","left":{"kind":"bytes"},"right":{"element":{"kind":"bytes"},"kind":"list"}}},"types":[{"kind":"bytes"},{"kind":"bytes"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"condition":{"kind":"prim","operands":[{"function":55,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_sub"}}]},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"condition":{"condition":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"var","name":1}],"operation":{"kind":"nat_le"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"prim","operands":[{"function":55,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_sub"}}]},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_eq"}}},"else_branch":{"condition":{"condition":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}},{"kind":"var","name":1}],"operation":{"kind":"nat_le"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"prim","operands":[{"function":55,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_sub"}}]},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_eq"}}},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"bytes"},{"kind":"nat"}]},{"body":{"body":{"body":{"body":{"condition":{"function":82,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":4}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":4}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"bound":{"kind":"first","value":{"function":38,"kind":"call","operands":[{"captures":[{"kind":"var","name":1},{"kind":"var","name":3},{"kind":"var","name":0},{"kind":"var","name":2}],"function":86,"kind":"closure"},{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}]}},"kind":"let","name":4,"type":{"kind":"nat"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}},"kind":"let","name":3,"type":{"kind":"nat"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},"kind":"let","name":2,"type":{"kind":"nat"}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"bytes"},{"kind":"bytes"}]},{"body":{"arms":[{"binders":[1],"body":{"function":49,"kind":"call","operands":[{"kind":"var","name":1},{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"info: "}}]}]},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"bytes"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":49,"kind":"call","operands":[{"kind":"var","name":0},{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":" "}}]}]},"type":{"kind":"option","value":{"kind":"bytes"}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"bytes"}},"types":[{"kind":"bytes"}]},{"body":{"body":{"body":{"condition":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"prim","operands":[{"kind":"var","name":2}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"condition":{"function":88,"kind":"call","operands":[{"kind":"var","name":2}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"var","name":3}}},"bound":{"function":87,"kind":"call","operands":[{"function":20,"kind":"call","operands":[{"kind":"var","name":2}]}]},"kind":"let","name":3,"type":{"kind":"bool"}},"bound":{"arms":[{"binders":[1],"body":{"kind":"var","name":1},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":49,"kind":"call","operands":[{"kind":"var","name":0},{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"+"}}]}]},"type":{"kind":"bytes"}},"kind":"let","name":2,"type":{"kind":"bytes"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"bytes"}]},{"body":{"arms":[{"binders":[3],"body":{"arms":[{"binders":[4],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":0}],"operation":{"kind":"checked_sub"}},"type":{"kind":"bool"}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_sub"}},"type":{"kind":"bool"}},"parameters":[0,1,2],"result":{"kind":"bool"},"types":[{"kind":"fixed","width":"u8"},{"kind":"fixed","width":"u8"},{"kind":"fixed","width":"u8"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"second","value":{"kind":"var","name":1}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"arms":[{"binders":[2],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":1}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"function":89,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":1}},{"kind":"var","name":2}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":51,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"first","value":{"kind":"var","name":1}}]},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"bytes"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}]},{"body":{"function":90,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"var","name":0},{"kind":"var","name":2}]},"parameters":[0,1,2],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"bytes"},{"kind":"bytes"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[3],"body":{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"var","name":1}],"operation":{"kind":"equal"}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}}],"operation":{"kind":"slice"}},"type":{"kind":"bool"}},"parameters":[0,1,2],"result":{"kind":"bool"},"types":[{"kind":"bytes"},{"kind":"bytes"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":83,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"error":{"kind":"bytes"},"kind":"result","ok":{"element":{"kind":"bytes"},"kind":"list"}}},"parameters":[0,1,2],"result":{"error":{"kind":"bytes"},"kind":"result","ok":{"element":{"kind":"bytes"},"kind":"list"}},"types":[{"kind":"fn","parameters":[{"error":{"kind":"bytes"},"kind":"result","ok":{"element":{"kind":"bytes"},"kind":"list"}},{"kind":"bytes"}],"result":{"error":{"kind":"bytes"},"kind":"result","ok":{"element":{"kind":"bytes"},"kind":"list"}}},{"error":{"kind":"bytes"},"kind":"result","ok":{"element":{"kind":"bytes"},"kind":"list"}},{"element":{"kind":"bytes"},"kind":"list"}]},{"body":{"function":91,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"error":{"kind":"bytes"},"kind":"result","ok":{"element":{"kind":"bytes"},"kind":"list"}},"types":[{"error":{"kind":"bytes"},"kind":"result","ok":{"element":{"kind":"bytes"},"kind":"list"}},{"kind":"bytes"}]},{"body":{"body":{"body":{"body":{"function":17,"kind":"call","operands":[{"kind":"build","operands":[{"function":18,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":4},{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":4}],"operation":{"kind":"nat_sub"}}]},{"kind":"second","value":{"kind":"second","value":{"kind":"var","name":3}}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bytes"},"kind":"list"}}]},"bound":{"kind":"first","value":{"kind":"second","value":{"kind":"var","name":3}}},"kind":"let","name":4,"type":{"kind":"nat"}},"bound":{"kind":"first","value":{"function":15,"kind":"call","operands":[{"captures":[{"kind":"var","name":1},{"kind":"var","name":0}],"function":92,"kind":"closure"},{"kind":"var","name":2},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"bytes"},"kind":"list"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}]}},"kind":"let","name":3,"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},"kind":"let","name":2,"type":{"kind":"nat"}},"parameters":[0,1],"result":{"element":{"kind":"bytes"},"kind":"list"},"types":[{"kind":"bytes"},{"kind":"fixed","width":"u8"}]},{"body":{"condition":{"function":82,"kind":"call","operands":[{"kind":"var","name":2},{"kind":"var","name":0},{"kind":"var","name":4}]},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":4},{"kind":"var","name":1}],"operation":{"kind":"nat_add"}},{"kind":"var","name":3}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":4},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}}},"parameters":[0,1,2,3,4],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"bytes"},{"kind":"nat"},{"kind":"bytes"},{"kind":"nat"},{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"20"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"20"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"18446744073709551615"}}]}],"operation":{"kind":"compare_bytes"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"01","kind":"bytes"}},{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"00","kind":"bytes"}}],"operation":{"kind":"compare_bytes"}}],"operation":{"kind":"equal"}}],"operation":{"kind":"bool_not"}}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"bytes"}]},{"body":{"kind":"prim","operands":[{"kind":"first","value":{"function":38,"kind":"call","operands":[{"captures":[{"kind":"var","name":0}],"function":93,"kind":"closure"},{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}]}},{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_eq"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"bytes"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"46"}}],"operation":{"kind":"equal"}},"else_branch":{"condition":{"function":94,"kind":"call","operands":[{"kind":"var","name":1}]},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},"kind":"cond","then_branch":{"condition":{"function":95,"kind":"call","operands":[{"kind":"var","name":1}]},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},"kind":"cond","then_branch":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"fixed","width":"u8"}]},{"body":{"condition":{"function":82,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":2}]},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"var","name":2}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_sub"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}}},"parameters":[0,1,2],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"bytes"},{"kind":"bytes"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[2],"body":{"kind":"var","name":0},"shape":{"kind":"error"}},{"binders":[3],"body":{"body":{"condition":{"function":61,"kind":"call","operands":[{"kind":"var","name":4}]},"else_branch":{"kind":"build","operands":[{"function":60,"kind":"call","operands":[{"kind":"var","name":4}]}],"shape":{"kind":"error"},"type":{"error":{"kind":"bytes"},"kind":"result","ok":{"element":{"kind":"bytes"},"kind":"list"}}},"kind":"cond","then_branch":{"arms":[{"binders":[5],"body":{"kind":"build","operands":[{"kind":"var","name":5}],"shape":{"kind":"ok"},"type":{"error":{"kind":"bytes"},"kind":"result","ok":{"element":{"kind":"bytes"},"kind":"list"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[{"function":6,"kind":"call","operands":[{"function":7,"kind":"call","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"duplicate axiom name "}}]},{"function":40,"kind":"call","operands":[{"kind":"var","name":4}]}]}],"shape":{"kind":"error"},"type":{"error":{"kind":"bytes"},"kind":"result","ok":{"element":{"kind":"bytes"},"kind":"list"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":96,"kind":"call","operands":[{"kind":"var","name":4},{"kind":"var","name":3}]},"type":{"error":{"kind":"bytes"},"kind":"result","ok":{"element":{"kind":"bytes"},"kind":"list"}}}},"bound":{"function":32,"kind":"call","operands":[{"kind":"var","name":1}]},"kind":"let","name":4,"type":{"kind":"bytes"}},"shape":{"kind":"ok"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"error":{"kind":"bytes"},"kind":"result","ok":{"element":{"kind":"bytes"},"kind":"list"}}},"parameters":[0,1],"result":{"error":{"kind":"bytes"},"kind":"result","ok":{"element":{"kind":"bytes"},"kind":"list"}},"types":[{"error":{"kind":"bytes"},"kind":"result","ok":{"element":{"kind":"bytes"},"kind":"list"}},{"kind":"bytes"}]},{"body":{"function":97,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"var","name":0},{"kind":"var","name":2}]},"parameters":[0,1,2],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"types":[{"kind":"fixed","width":"u8"},{"kind":"bytes"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}]},{"body":{"function":98,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"bytes"},{"kind":"nat"}]},{"body":{"condition":{"function":79,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"65"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"90"}}]},"else_branch":{"condition":{"function":79,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"97"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"122"}}]},"else_branch":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"95"}}],"operation":{"kind":"equal"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"fixed","width":"u8"}]},{"body":{"condition":{"function":94,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"condition":{"function":79,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"48"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"57"}}]},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"63"}}],"operation":{"kind":"equal"}},"else_branch":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"39"}}],"operation":{"kind":"equal"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"fixed","width":"u8"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"bytes"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bytes"},"kind":"list"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"bytes"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2}],"operation":{"kind":"equal"}},"else_branch":{"condition":{"function":54,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"else_branch":{"arms":[{"binders":[4],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"var","name":4}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bytes"},"kind":"list"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"bytes"},"kind":"list"}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"bytes"},"kind":"list"}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":96,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3}]},"type":{"kind":"option","value":{"element":{"kind":"bytes"},"kind":"list"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"var","name":3}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bytes"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bytes"},"kind":"list"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"bytes"},"kind":"list"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"bytes"},"kind":"list"}}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"element":{"kind":"bytes"},"kind":"list"}}},"parameters":[0,1],"result":{"kind":"option","value":{"element":{"kind":"bytes"},"kind":"list"}},"types":[{"kind":"bytes"},{"element":{"kind":"bytes"},"kind":"list"}]},{"body":{"body":{"body":{"body":{"arms":[{"binders":[6],"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":6},{"kind":"var","name":1}],"operation":{"kind":"equal"}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"build","operands":[{"kind":"var","name":4},{"kind":"var","name":5}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"build","operands":[{"function":18,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":4},{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"var","name":4}],"operation":{"kind":"nat_sub"}}]},{"kind":"var","name":5}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bytes"},"kind":"list"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":51,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3}]},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}},"bound":{"kind":"second","value":{"kind":"second","value":{"kind":"var","name":2}}},"kind":"let","name":5,"type":{"element":{"kind":"bytes"},"kind":"list"}},"bound":{"kind":"first","value":{"kind":"second","value":{"kind":"var","name":2}}},"kind":"let","name":4,"type":{"kind":"nat"}},"bound":{"kind":"first","value":{"kind":"var","name":2}},"kind":"let","name":3,"type":{"kind":"nat"}},"parameters":[0,1,2],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"types":[{"kind":"bytes"},{"kind":"fixed","width":"u8"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}]},{"body":{"condition":{"function":70,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"48"}},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"57"}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"bytes"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["5ba510b7049a3e59c5f1ffb1f0a6611dd35ecbdb9904f2d3213052229b253f48"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/bootstrap/packages/rust-std/parse_audit_output/provenance.json b/tests/production-export/bootstrap/packages/rust-std/parse_audit_output/provenance.json index 3027659e1..45d4b8569 100644 --- a/tests/production-export/bootstrap/packages/rust-std/parse_audit_output/provenance.json +++ b/tests/production-export/bootstrap/packages/rust-std/parse_audit_output/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"3749ba61adbd9860c5e44e0d360637f984f5f53e471383285a44ea9b476828ac","src/lib.rs":"750867c70a608915dbc1dd0648b81ae04f2c15727e9f6355a4604d00c44d9e5b"},"name":"parse_audit_output","profile":"rust-std","program":"c494532214aa6b635eeb3efaed879328a4f5370efdc9d5079105c177d5f4ede8","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["adb40bbfc73b1dc6b7a95dab0c348a2752ede8bc8cffbc4bfb49bce333d9aceb"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"3749ba61adbd9860c5e44e0d360637f984f5f53e471383285a44ea9b476828ac","src/lib.rs":"750867c70a608915dbc1dd0648b81ae04f2c15727e9f6355a4604d00c44d9e5b"},"name":"parse_audit_output","profile":"rust-std","program":"c494532214aa6b635eeb3efaed879328a4f5370efdc9d5079105c177d5f4ede8","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["5ba510b7049a3e59c5f1ffb1f0a6611dd35ecbdb9904f2d3213052229b253f48"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-core/bits/package.json b/tests/production-export/production-coverage/packages/rust-core/bits/package.json index 64f8b2411..591e31b2a 100644 --- a/tests/production-export/production-coverage/packages/rust-core/bits/package.json +++ b/tests/production-export/production-coverage/packages/rust-core/bits/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"bits","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_xor"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"bit_not"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"3"}}],"operation":{"kind":"shift_right"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"equal"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"bool"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"bool"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"bool"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"bool"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"bool"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"bool"}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"bool"}}}}}}},"types":[{"kind":"fixed","width":"u16"},{"kind":"fixed","width":"u16"},{"kind":"fixed","width":"u32"}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"bits","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_xor"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"bit_not"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"3"}}],"operation":{"kind":"shift_right"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"equal"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"bool"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"bool"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"bool"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"bool"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"bool"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"bool"}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"bool"}}}}}}},"types":[{"kind":"fixed","width":"u16"},{"kind":"fixed","width":"u16"},{"kind":"fixed","width":"u32"}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-core/bits/provenance.json b/tests/production-export/production-coverage/packages/rust-core/bits/provenance.json index 2d27f015f..1560ab705 100644 --- a/tests/production-export/production-coverage/packages/rust-core/bits/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-core/bits/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"fbd9afdc5b19669c491fb8be9e6f9578e6715f7244aa0adb013ad42263077a4d","src/lib.rs":"49c793ee46756c6d514289abbdd0cd8d2dd62bac8312bc2a1c90ff74d7a8fa4c"},"name":"bits","profile":"rust-core","program":"9ed3cf1ba1de6ddfd0c865acea0ee413b21ac44fb1d556e8eac704b552c3d018","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"fbd9afdc5b19669c491fb8be9e6f9578e6715f7244aa0adb013ad42263077a4d","src/lib.rs":"49c793ee46756c6d514289abbdd0cd8d2dd62bac8312bc2a1c90ff74d7a8fa4c"},"name":"bits","profile":"rust-core","program":"9ed3cf1ba1de6ddfd0c865acea0ee413b21ac44fb1d556e8eac704b552c3d018","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-core/builders/package.json b/tests/production-export/production-coverage/packages/rust-core/builders/package.json index f4ab0926b..e026271b7 100644 --- a/tests/production-export/production-coverage/packages/rust-core/builders/package.json +++ b/tests/production-export/production-coverage/packages/rust-core/builders/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"builders","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":0}],"shape":{"kind":"succ"},"type":{"kind":"nat"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}}],"shape":{"kind":"error"},"type":{"error":{"kind":"unit"},"kind":"result","ok":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"zero"},"type":{"kind":"nat"}}],"shape":{"kind":"ok"},"type":{"error":{"kind":"unit"},"kind":"result","ok":{"kind":"nat"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"error":{"kind":"unit"},"kind":"result","ok":{"kind":"nat"}}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"error":{"kind":"unit"},"kind":"result","ok":{"kind":"nat"}}},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"builders","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":0}],"shape":{"kind":"succ"},"type":{"kind":"nat"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}}],"shape":{"kind":"error"},"type":{"error":{"kind":"unit"},"kind":"result","ok":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"zero"},"type":{"kind":"nat"}}],"shape":{"kind":"ok"},"type":{"error":{"kind":"unit"},"kind":"result","ok":{"kind":"nat"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"error":{"kind":"unit"},"kind":"result","ok":{"kind":"nat"}}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"error":{"kind":"unit"},"kind":"result","ok":{"kind":"nat"}}},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-core/builders/provenance.json b/tests/production-export/production-coverage/packages/rust-core/builders/provenance.json index b49fcdd57..2e1ede3bb 100644 --- a/tests/production-export/production-coverage/packages/rust-core/builders/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-core/builders/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"fafa24144f14cc940ca1e3c16043130877f447f6beb7975029ea5e9cfd45cff4","src/lib.rs":"7801814468d34df54faeffe9207e61324bba1d83e29d113ead27eb9195312b87"},"name":"builders","profile":"rust-core","program":"234deee526474348f12566f97e315f4a79becf0607138d82ae06f555a4d3f2db","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"fafa24144f14cc940ca1e3c16043130877f447f6beb7975029ea5e9cfd45cff4","src/lib.rs":"7801814468d34df54faeffe9207e61324bba1d83e29d113ead27eb9195312b87"},"name":"builders","profile":"rust-core","program":"234deee526474348f12566f97e315f4a79becf0607138d82ae06f555a4d3f2db","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-core/conversions/package.json b/tests/production-export/production-coverage/packages/rust-core/conversions/package.json index 58a6e1259..0d7e6781a 100644 --- a/tests/production-export/production-coverage/packages/rust-core/conversions/package.json +++ b/tests/production-export/production-coverage/packages/rust-core/conversions/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"conversions","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"convert","target":"u16"}},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"convert","target":"i64"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"option","value":{"kind":"fixed","width":"i64"}}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"option","value":{"kind":"fixed","width":"i64"}}},"types":[{"kind":"int"},{"kind":"fixed","width":"i8"}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"conversions","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"convert","target":"u16"}},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"convert","target":"i64"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"option","value":{"kind":"fixed","width":"i64"}}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"option","value":{"kind":"fixed","width":"i64"}}},"types":[{"kind":"int"},{"kind":"fixed","width":"i8"}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-core/conversions/provenance.json b/tests/production-export/production-coverage/packages/rust-core/conversions/provenance.json index 4f3a8ae6d..f1e0491ad 100644 --- a/tests/production-export/production-coverage/packages/rust-core/conversions/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-core/conversions/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"fa3523bd7088be5264998e9685661cde4aa5d182d6f8dd083cb5130c7f1fe39b","src/lib.rs":"3ea51441d8082bca46bcb3c8e2caba9345a5408ce677292a985f169d6661994a"},"name":"conversions","profile":"rust-core","program":"6227207e0bebaa6609e8bfedfaffb83e7fcb5e8c11d9ed9caaa35fb65b35766f","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"fa3523bd7088be5264998e9685661cde4aa5d182d6f8dd083cb5130c7f1fe39b","src/lib.rs":"3ea51441d8082bca46bcb3c8e2caba9345a5408ce677292a985f169d6661994a"},"name":"conversions","profile":"rust-core","program":"6227207e0bebaa6609e8bfedfaffb83e7fcb5e8c11d9ed9caaa35fb65b35766f","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-core/fixed_middle/package.json b/tests/production-export/production-coverage/packages/rust-core/fixed_middle/package.json index 3035c1af1..fb33cd28a 100644 --- a/tests/production-export/production-coverage/packages/rust-core/fixed_middle/package.json +++ b/tests/production-export/production-coverage/packages/rust-core/fixed_middle/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"fixed_middle","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":0}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"i32"},"value":{"kind":"i32","value":"-7"}}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"convert","target":"i32"}},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"i32"},"value":{"kind":"i32","value":"3"}}],"operation":{"kind":"equal"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"bool"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"bool"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"bool"}}}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"bool"}}}},"types":[{"kind":"fixed","width":"i16"},{"kind":"fixed","width":"i32"}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"fixed_middle","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":0}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"i32"},"value":{"kind":"i32","value":"-7"}}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"convert","target":"i32"}},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"i32"},"value":{"kind":"i32","value":"3"}}],"operation":{"kind":"equal"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"bool"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"bool"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"bool"}}}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"bool"}}}},"types":[{"kind":"fixed","width":"i16"},{"kind":"fixed","width":"i32"}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-core/fixed_middle/provenance.json b/tests/production-export/production-coverage/packages/rust-core/fixed_middle/provenance.json index 798c38924..6d96a1159 100644 --- a/tests/production-export/production-coverage/packages/rust-core/fixed_middle/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-core/fixed_middle/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"70d81e8cefb299340d3a62dc48f2c63bec855c62563bffbbb15981b963bf8764","src/lib.rs":"f308cdfc8f1d2fa043a39c472851858aeec0fa24616abc115e3194e5eea42ccc"},"name":"fixed_middle","profile":"rust-core","program":"c5c4a8ee12a3a426500bb6c4e82af761e1af447511bd597e1bc5dce63970ddaf","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"70d81e8cefb299340d3a62dc48f2c63bec855c62563bffbbb15981b963bf8764","src/lib.rs":"f308cdfc8f1d2fa043a39c472851858aeec0fa24616abc115e3194e5eea42ccc"},"name":"fixed_middle","profile":"rust-core","program":"c5c4a8ee12a3a426500bb6c4e82af761e1af447511bd597e1bc5dce63970ddaf","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-core/fixed_small/package.json b/tests/production-export/production-coverage/packages/rust-core/fixed_small/package.json index ea123fe24..c67a0d45d 100644 --- a/tests/production-export/production-coverage/packages/rust-core/fixed_small/package.json +++ b/tests/production-export/production-coverage/packages/rust-core/fixed_small/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"fixed_small","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_quot"}},{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"checked_neg"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"option","value":{"kind":"fixed","width":"i8"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"option","value":{"kind":"fixed","width":"i8"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"option","value":{"kind":"fixed","width":"i8"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"option","value":{"kind":"fixed","width":"i8"}}}}}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"option","value":{"kind":"fixed","width":"i8"}}}}}},"types":[{"kind":"fixed","width":"i8"},{"kind":"fixed","width":"i8"}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"fixed_small","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_quot"}},{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"checked_neg"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"option","value":{"kind":"fixed","width":"i8"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"option","value":{"kind":"fixed","width":"i8"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"option","value":{"kind":"fixed","width":"i8"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"option","value":{"kind":"fixed","width":"i8"}}}}}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"option","value":{"kind":"fixed","width":"i8"}}}}}},"types":[{"kind":"fixed","width":"i8"},{"kind":"fixed","width":"i8"}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-core/fixed_small/provenance.json b/tests/production-export/production-coverage/packages/rust-core/fixed_small/provenance.json index b818f313b..2d39a4c4d 100644 --- a/tests/production-export/production-coverage/packages/rust-core/fixed_small/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-core/fixed_small/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"ce31af3f31d522467497872c4f9ca4a03022315e9de1c0f4e00f2ee5f92ef058","src/lib.rs":"d077e1a08c789158986baece65130b95ed7a95a670d2c90f551977d2135f1df3"},"name":"fixed_small","profile":"rust-core","program":"ef7c0ba20d049db4524a6ec6561a20d86bd33230f60e21dc733706135be42f2d","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"ce31af3f31d522467497872c4f9ca4a03022315e9de1c0f4e00f2ee5f92ef058","src/lib.rs":"d077e1a08c789158986baece65130b95ed7a95a670d2c90f551977d2135f1df3"},"name":"fixed_small","profile":"rust-core","program":"ef7c0ba20d049db4524a6ec6561a20d86bd33230f60e21dc733706135be42f2d","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-core/fixed_wide/package.json b/tests/production-export/production-coverage/packages/rust-core/fixed_wide/package.json index 1639aadae..a6c1cc31d 100644 --- a/tests/production-export/production-coverage/packages/rust-core/fixed_wide/package.json +++ b/tests/production-export/production-coverage/packages/rust-core/fixed_wide/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"fixed_wide","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"checked_neg"}},{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"fixed","width":"u64"},"value":{"kind":"u64","value":"1"}}],"operation":{"kind":"checked_add"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"option","value":{"kind":"fixed","width":"u64"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"option","value":{"kind":"fixed","width":"u64"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"option","value":{"kind":"fixed","width":"u64"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"option","value":{"kind":"fixed","width":"u64"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"option","value":{"kind":"fixed","width":"u64"}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"option","value":{"kind":"fixed","width":"u64"}}}}}}},"types":[{"kind":"fixed","width":"i64"},{"kind":"fixed","width":"i64"},{"kind":"fixed","width":"u64"}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"fixed_wide","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"checked_neg"}},{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"fixed","width":"u64"},"value":{"kind":"u64","value":"1"}}],"operation":{"kind":"checked_add"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"option","value":{"kind":"fixed","width":"u64"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"option","value":{"kind":"fixed","width":"u64"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"option","value":{"kind":"fixed","width":"u64"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"option","value":{"kind":"fixed","width":"u64"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"option","value":{"kind":"fixed","width":"u64"}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"option","value":{"kind":"fixed","width":"u64"}}}}}}},"types":[{"kind":"fixed","width":"i64"},{"kind":"fixed","width":"i64"},{"kind":"fixed","width":"u64"}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-core/fixed_wide/provenance.json b/tests/production-export/production-coverage/packages/rust-core/fixed_wide/provenance.json index c5810e9ff..088be5567 100644 --- a/tests/production-export/production-coverage/packages/rust-core/fixed_wide/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-core/fixed_wide/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"2f1666bc680f131b93f6a000603f0f2798622e79f6fac14abd8a5e0d7341fdae","src/lib.rs":"f0f0a8c0cad1a71dd63fb172c31c1d60db20313104463a6f150afca4d891cd40"},"name":"fixed_wide","profile":"rust-core","program":"046e9276a504b885d2582f97b9c4fb34281d09496a6f649c6c147f6361e56c8d","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"2f1666bc680f131b93f6a000603f0f2798622e79f6fac14abd8a5e0d7341fdae","src/lib.rs":"f0f0a8c0cad1a71dd63fb172c31c1d60db20313104463a6f150afca4d891cd40"},"name":"fixed_wide","profile":"rust-core","program":"046e9276a504b885d2582f97b9c4fb34281d09496a6f649c6c147f6361e56c8d","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-core/higher/package.json b/tests/production-export/production-coverage/packages/rust-core/higher/package.json index fa33c9da1..47e4ba40e 100644 --- a/tests/production-export/production-coverage/packages/rust-core/higher/package.json +++ b/tests/production-export/production-coverage/packages/rust-core/higher/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"higher","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"body":{"kind":"prim","operands":[{"function":1,"kind":"call","operands":[{"captures":[{"kind":"var","name":2},{"kind":"var","name":1}],"function":2,"kind":"closure"},{"kind":"var","name":0}]},{"kind":"prim","operands":[{"kind":"apply","operands":[{"kind":"var","name":0}],"target":{"captures":[{"kind":"var","name":2}],"function":3,"kind":"closure"}},{"function":1,"kind":"call","operands":[{"captures":[],"function":4,"kind":"closure"},{"kind":"var","name":1}]}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_add"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},"kind":"let","name":2,"type":{"kind":"nat"}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"kind":"apply","operands":[{"kind":"apply","operands":[{"kind":"var","name":1}],"target":{"kind":"var","name":0}}],"target":{"kind":"var","name":0}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":0}],"operation":{"kind":"nat_mul"}},{"kind":"var","name":1}],"operation":{"kind":"nat_add"}},"parameters":[0,1,2],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"operation":{"kind":"nat_sub"}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":0}],"operation":{"kind":"nat_add"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"higher","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"body":{"kind":"prim","operands":[{"function":1,"kind":"call","operands":[{"captures":[{"kind":"var","name":2},{"kind":"var","name":1}],"function":2,"kind":"closure"},{"kind":"var","name":0}]},{"kind":"prim","operands":[{"kind":"apply","operands":[{"kind":"var","name":0}],"target":{"captures":[{"kind":"var","name":2}],"function":3,"kind":"closure"}},{"function":1,"kind":"call","operands":[{"captures":[],"function":4,"kind":"closure"},{"kind":"var","name":1}]}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_add"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},"kind":"let","name":2,"type":{"kind":"nat"}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"kind":"apply","operands":[{"kind":"apply","operands":[{"kind":"var","name":1}],"target":{"kind":"var","name":0}}],"target":{"kind":"var","name":0}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":0}],"operation":{"kind":"nat_mul"}},{"kind":"var","name":1}],"operation":{"kind":"nat_add"}},"parameters":[0,1,2],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"operation":{"kind":"nat_sub"}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":0}],"operation":{"kind":"nat_add"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-core/higher/provenance.json b/tests/production-export/production-coverage/packages/rust-core/higher/provenance.json index 0dbfd49b6..3fed31937 100644 --- a/tests/production-export/production-coverage/packages/rust-core/higher/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-core/higher/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"a9965766740afeb45706683c1c941095c32f92781e171be35737261a61b8a24a","src/lib.rs":"265af29f14586a0343afb425c4918da3c6055dbaf73b24cfc610a027da1e0809"},"name":"higher","profile":"rust-core","program":"b9a631ceb72fc1536c7c26c88ce17cb71084492929763dc601a2e579e3b15596","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"a9965766740afeb45706683c1c941095c32f92781e171be35737261a61b8a24a","src/lib.rs":"265af29f14586a0343afb425c4918da3c6055dbaf73b24cfc610a027da1e0809"},"name":"higher","profile":"rust-core","program":"b9a631ceb72fc1536c7c26c88ce17cb71084492929763dc601a2e579e3b15596","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-core/int_ops/package.json b/tests/production-export/production-coverage/packages/rust-core/int_ops/package.json index 025754fac..ddd86506f 100644 --- a/tests/production-export/production-coverage/packages/rust-core/int_ops/package.json +++ b/tests/production-export/production-coverage/packages/rust-core/int_ops/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"int_ops","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-3"}}],"operation":{"kind":"int_mul"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"1"}}],"operation":{"kind":"int_quot"}},{"kind":"var","name":1},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"0"}}],"operation":{"kind":"int_rem"}}],"operation":{"kind":"int_neg"}}],"operation":{"kind":"int_sub"}},"parameters":[0,1],"result":{"kind":"int"},"types":[{"kind":"int"},{"kind":"int"}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"int_ops","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-3"}}],"operation":{"kind":"int_mul"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"1"}}],"operation":{"kind":"int_quot"}},{"kind":"var","name":1},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"0"}}],"operation":{"kind":"int_rem"}}],"operation":{"kind":"int_neg"}}],"operation":{"kind":"int_sub"}},"parameters":[0,1],"result":{"kind":"int"},"types":[{"kind":"int"},{"kind":"int"}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-core/int_ops/provenance.json b/tests/production-export/production-coverage/packages/rust-core/int_ops/provenance.json index 87a6bee08..f23b3866c 100644 --- a/tests/production-export/production-coverage/packages/rust-core/int_ops/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-core/int_ops/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"fc1efbb5b6ec479184b12aceea00af517df40c0ba110f9c286361df08f0b2142","src/lib.rs":"7502713652008d39229ab08441a2904fb8426cd37d4c20285e519730fdc22593"},"name":"int_ops","profile":"rust-core","program":"6f167a8d46f8923a927e311666264729d573c3b8593155abef2114631b1b0283","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"fc1efbb5b6ec479184b12aceea00af517df40c0ba110f9c286361df08f0b2142","src/lib.rs":"7502713652008d39229ab08441a2904fb8426cd37d4c20285e519730fdc22593"},"name":"int_ops","profile":"rust-core","program":"6f167a8d46f8923a927e311666264729d573c3b8593155abef2114631b1b0283","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-core/nat_ops/package.json b/tests/production-export/production-coverage/packages/rust-core/nat_ops/package.json index 89547dcab..6ba4a7503 100644 --- a/tests/production-export/production-coverage/packages/rust-core/nat_ops/package.json +++ b/tests/production-export/production-coverage/packages/rust-core/nat_ops/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"nat_ops","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"body":{"body":{"condition":{"condition":{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"condition":{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_le"}},"else_branch":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"nat_lt"}}],"operation":{"kind":"bool_not"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}}},"else_branch":{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":3}],"operation":{"kind":"nat_mul"}},"kind":"cond","then_branch":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"nat_sub"}},{"kind":"var","name":3}],"operation":{"kind":"nat_add"}}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},"kind":"let","name":3,"type":{"kind":"nat"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"7"}}],"operation":{"kind":"nat_quot"}},"kind":"let","name":2,"type":{"kind":"nat"}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"nat_ops","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"body":{"body":{"condition":{"condition":{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"condition":{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_le"}},"else_branch":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"nat_lt"}}],"operation":{"kind":"bool_not"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}}},"else_branch":{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":3}],"operation":{"kind":"nat_mul"}},"kind":"cond","then_branch":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"nat_sub"}},{"kind":"var","name":3}],"operation":{"kind":"nat_add"}}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},"kind":"let","name":3,"type":{"kind":"nat"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"7"}}],"operation":{"kind":"nat_quot"}},"kind":"let","name":2,"type":{"kind":"nat"}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-core/nat_ops/provenance.json b/tests/production-export/production-coverage/packages/rust-core/nat_ops/provenance.json index b3ca56044..f1e3a94a7 100644 --- a/tests/production-export/production-coverage/packages/rust-core/nat_ops/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-core/nat_ops/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"59cd8633f12e3fac8ffcf39b00cfe0eae72e66af298eab94fb7a158d60c11ef2","src/lib.rs":"ec5552329b8cb6b83bf136310a623cb1e7489cfafb2a21b230cfc4f8447c51fa"},"name":"nat_ops","profile":"rust-core","program":"7327b0d3e0e2b92c9e324f0b8f38bf8b9a4866af1fab582ce3cb3471b3faac1f","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"59cd8633f12e3fac8ffcf39b00cfe0eae72e66af298eab94fb7a158d60c11ef2","src/lib.rs":"ec5552329b8cb6b83bf136310a623cb1e7489cfafb2a21b230cfc4f8447c51fa"},"name":"nat_ops","profile":"rust-core","program":"7327b0d3e0e2b92c9e324f0b8f38bf8b9a4866af1fab582ce3cb3471b3faac1f","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-core/options/package.json b/tests/production-export/production-coverage/packages/rust-core/options/package.json index a81bc50c6..871505b38 100644 --- a/tests/production-export/production-coverage/packages/rust-core/options/package.json +++ b/tests/production-export/production-coverage/packages/rust-core/options/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"options","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"none"}},{"binders":[2],"body":{"kind":"var","name":2},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},{"arms":[{"binders":[3],"body":{"kind":"var","name":3},"shape":{"kind":"ok"}},{"binders":[4],"body":{"condition":{"kind":"var","name":4},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},"shape":{"kind":"error"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"nat"}}],"operation":{"kind":"nat_add"}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"option","value":{"kind":"nat"}},{"error":{"kind":"bool"},"kind":"result","ok":{"kind":"nat"}}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"options","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"none"}},{"binders":[2],"body":{"kind":"var","name":2},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},{"arms":[{"binders":[3],"body":{"kind":"var","name":3},"shape":{"kind":"ok"}},{"binders":[4],"body":{"condition":{"kind":"var","name":4},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},"shape":{"kind":"error"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"nat"}}],"operation":{"kind":"nat_add"}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"option","value":{"kind":"nat"}},{"error":{"kind":"bool"},"kind":"result","ok":{"kind":"nat"}}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-core/options/provenance.json b/tests/production-export/production-coverage/packages/rust-core/options/provenance.json index 909d5de19..4a7930e93 100644 --- a/tests/production-export/production-coverage/packages/rust-core/options/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-core/options/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"7f0fac10f04b56539a18ecadc9ac9f95f1ceb9be06a3738695181aa3b6a2e9fd","src/lib.rs":"f77a8889a2639195af038d018a863c9a79f14db51278952d1da5ce206bd668eb"},"name":"options","profile":"rust-core","program":"1817e8488f6542ec7a9c65ee73a26b9b2ce35ef18dad904d897c9dded6e3cbf9","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"7f0fac10f04b56539a18ecadc9ac9f95f1ceb9be06a3738695181aa3b6a2e9fd","src/lib.rs":"f77a8889a2639195af038d018a863c9a79f14db51278952d1da5ce206bd668eb"},"name":"options","profile":"rust-core","program":"1817e8488f6542ec7a9c65ee73a26b9b2ce35ef18dad904d897c9dded6e3cbf9","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-core/pairs/package.json b/tests/production-export/production-coverage/packages/rust-core/pairs/package.json index cf3606421..9d11f9f05 100644 --- a/tests/production-export/production-coverage/packages/rust-core/pairs/package.json +++ b/tests/production-export/production-coverage/packages/rust-core/pairs/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own"]}],"name":"pairs","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":0}},{"kind":"first","value":{"kind":"var","name":0}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"nat"}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own"]}],"name":"pairs","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":0}},{"kind":"first","value":{"kind":"var","name":0}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"nat"}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-core/pairs/provenance.json b/tests/production-export/production-coverage/packages/rust-core/pairs/provenance.json index 33943c599..76abaa2c9 100644 --- a/tests/production-export/production-coverage/packages/rust-core/pairs/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-core/pairs/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"a3dd557c4339d106e7e177364f68702e05259c1cdf7bcc15c6c3801657acecac","src/lib.rs":"a9910a7ac532e077a17ffd14206ae6375907126e8ab304cecd17ee1ba5ab1085"},"name":"pairs","profile":"rust-core","program":"7d925a72d07005baaa5a9371f60e52199072e49139630af3348972394ef0539f","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"a3dd557c4339d106e7e177364f68702e05259c1cdf7bcc15c6c3801657acecac","src/lib.rs":"a9910a7ac532e077a17ffd14206ae6375907126e8ab304cecd17ee1ba5ab1085"},"name":"pairs","profile":"rust-core","program":"7d925a72d07005baaa5a9371f60e52199072e49139630af3348972394ef0539f","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-core/parity/package.json b/tests/production-export/production-coverage/packages/rust-core/parity/package.json index b643274ea..fb7bc6d21 100644 --- a/tests/production-export/production-coverage/packages/rust-core/parity/package.json +++ b/tests/production-export/production-coverage/packages/rust-core/parity/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own"]}],"name":"parity","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":1}]},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":1}]},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own"]}],"name":"parity","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":1}]},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":1}]},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-core/parity/provenance.json b/tests/production-export/production-coverage/packages/rust-core/parity/provenance.json index bb4119951..b42fae4d1 100644 --- a/tests/production-export/production-coverage/packages/rust-core/parity/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-core/parity/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"6eec599d19aab86b6e6c59ee909f6f5478461263e25000e7bc26f67766ef73df","src/lib.rs":"4dfb8beb700c9adbe0abd49585b4691238db30689d7c0edfbe4601268210a8a5"},"name":"parity","profile":"rust-core","program":"d80d8fa87a73970b99d0429236be199dba9bdbb4207a8c64505ec3f999bc2775","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"6eec599d19aab86b6e6c59ee909f6f5478461263e25000e7bc26f67766ef73df","src/lib.rs":"4dfb8beb700c9adbe0abd49585b4691238db30689d7c0edfbe4601268210a8a5"},"name":"parity","profile":"rust-core","program":"d80d8fa87a73970b99d0429236be199dba9bdbb4207a8c64505ec3f999bc2775","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-core/records/package.json b/tests/production-export/production-coverage/packages/rust-core/records/package.json index 72ffc95d5..59e1222bd 100644 --- a/tests/production-export/production-coverage/packages/rust-core/records/package.json +++ b/tests/production-export/production-coverage/packages/rust-core/records/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"records","profile":"rust-core","program":{"adts":[{"constructors":[[{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[{"kind":"nat"},{"kind":"nat"}]]}],"functions":[{"body":{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":2}},{"index":1,"kind":"field","value":{"function":1,"kind":"call","operands":[]}}],"operation":{"kind":"nat_add"}},{"function":2,"kind":"call","operands":[{"kind":"build","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":2}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"bound":{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},"kind":"let","name":2,"type":{"index":0,"kind":"adt"}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}},"parameters":[],"result":{"index":2,"kind":"adt"},"types":[]},{"body":{"index":0,"kind":"field","value":{"kind":"var","name":0}},"parameters":[0],"result":{"kind":"nat"},"types":[{"index":1,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"records","profile":"rust-core","program":{"adts":[{"constructors":[[{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[{"kind":"nat"},{"kind":"nat"}]]}],"functions":[{"body":{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":2}},{"index":1,"kind":"field","value":{"function":1,"kind":"call","operands":[]}}],"operation":{"kind":"nat_add"}},{"function":2,"kind":"call","operands":[{"kind":"build","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":2}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"bound":{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},"kind":"let","name":2,"type":{"index":0,"kind":"adt"}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}},"parameters":[],"result":{"index":2,"kind":"adt"},"types":[]},{"body":{"index":0,"kind":"field","value":{"kind":"var","name":0}},"parameters":[0],"result":{"kind":"nat"},"types":[{"index":1,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-core/records/provenance.json b/tests/production-export/production-coverage/packages/rust-core/records/provenance.json index 2038bc055..37aa73772 100644 --- a/tests/production-export/production-coverage/packages/rust-core/records/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-core/records/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"75a1f2726772f72e4e3d6999f4a2e57d1b02c3dfada582fcf741f36a7e68aab8","src/lib.rs":"75717c93f7eb083027fd65ec26fa8633f3b7d2f89c29fca9ce3e3cc7cc676429"},"name":"records","profile":"rust-core","program":"f6c459c7f8163810d05bc43460cd394578f415d182096e2ad51dae6252d4f656","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"75a1f2726772f72e4e3d6999f4a2e57d1b02c3dfada582fcf741f36a7e68aab8","src/lib.rs":"75717c93f7eb083027fd65ec26fa8633f3b7d2f89c29fca9ce3e3cc7cc676429"},"name":"records","profile":"rust-core","program":"f6c459c7f8163810d05bc43460cd394578f415d182096e2ad51dae6252d4f656","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-core/shapes/package.json b/tests/production-export/production-coverage/packages/rust-core/shapes/package.json index 02313167a..320d9ce4a 100644 --- a/tests/production-export/production-coverage/packages/rust-core/shapes/package.json +++ b/tests/production-export/production-coverage/packages/rust-core/shapes/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"shapes","profile":"rust-core","program":{"adts":[{"constructors":[[{"kind":"nat"}],[{"kind":"nat"},{"kind":"nat"}],[]]}],"functions":[{"body":{"kind":"prim","operands":[{"function":1,"kind":"call","operands":[{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"shape":{"constructor":1,"kind":"adt"},"type":{"index":0,"kind":"adt"}}]},{"kind":"prim","operands":[{"function":1,"kind":"call","operands":[{"kind":"build","operands":[{"kind":"var","name":0}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}}]},{"function":1,"kind":"call","operands":[{"kind":"build","operands":[],"shape":{"constructor":2,"kind":"adt"},"type":{"index":0,"kind":"adt"}}]}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_add"}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[1],"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":1}],"operation":{"kind":"nat_mul"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_mul"}},"shape":{"constructor":0,"kind":"adt"}},{"binders":[2,3],"body":{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":3}],"operation":{"kind":"nat_mul"}},"shape":{"constructor":1,"kind":"adt"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"constructor":2,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"index":0,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"shapes","profile":"rust-core","program":{"adts":[{"constructors":[[{"kind":"nat"}],[{"kind":"nat"},{"kind":"nat"}],[]]}],"functions":[{"body":{"kind":"prim","operands":[{"function":1,"kind":"call","operands":[{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"shape":{"constructor":1,"kind":"adt"},"type":{"index":0,"kind":"adt"}}]},{"kind":"prim","operands":[{"function":1,"kind":"call","operands":[{"kind":"build","operands":[{"kind":"var","name":0}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}}]},{"function":1,"kind":"call","operands":[{"kind":"build","operands":[],"shape":{"constructor":2,"kind":"adt"},"type":{"index":0,"kind":"adt"}}]}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_add"}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[1],"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":1}],"operation":{"kind":"nat_mul"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_mul"}},"shape":{"constructor":0,"kind":"adt"}},{"binders":[2,3],"body":{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":3}],"operation":{"kind":"nat_mul"}},"shape":{"constructor":1,"kind":"adt"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"constructor":2,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"index":0,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-core/shapes/provenance.json b/tests/production-export/production-coverage/packages/rust-core/shapes/provenance.json index 76c3dec51..81c63b93c 100644 --- a/tests/production-export/production-coverage/packages/rust-core/shapes/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-core/shapes/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"9f2da6540473eb8c30328ec5522a3a0d931e34392c6720ac9842e96878fa8fd5","src/lib.rs":"cf488904e65fcc775e3ab609f6586188eef2038d7821c5e303effdb5cfc3033d"},"name":"shapes","profile":"rust-core","program":"05293367c4a6e86e29d41974b883426e97957fbbc411382de01e1da3e41879c8","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"9f2da6540473eb8c30328ec5522a3a0d931e34392c6720ac9842e96878fa8fd5","src/lib.rs":"cf488904e65fcc775e3ab609f6586188eef2038d7821c5e303effdb5cfc3033d"},"name":"shapes","profile":"rust-core","program":"05293367c4a6e86e29d41974b883426e97957fbbc411382de01e1da3e41879c8","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-core/well_founded/package.json b/tests/production-export/production-coverage/packages/rust-core/well_founded/package.json index cce7cb29e..961d2ae69 100644 --- a/tests/production-export/production-coverage/packages/rust-core/well_founded/package.json +++ b/tests/production-export/production-coverage/packages/rust-core/well_founded/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"well_founded","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}]},{"kind":"build","operands":[{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"var","name":1}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"function":1,"kind":"call","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_sub"}},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}]},"kind":"cond","then_branch":{"kind":"var","name":1}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"nat_lt"}},"else_branch":{"function":2,"kind":"call","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"nat_sub"}},{"kind":"var","name":1}]},"kind":"cond","then_branch":{"kind":"var","name":0}},"kind":"cond","then_branch":{"kind":"var","name":0}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"var","name":2},"kind":"cond","then_branch":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":1}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}},"else_branch":{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"var","name":2}]},"kind":"cond","then_branch":{"kind":"var","name":1}}},"parameters":[0,1,2],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"well_founded","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}]},{"kind":"build","operands":[{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"var","name":1}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"function":1,"kind":"call","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_sub"}},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}]},"kind":"cond","then_branch":{"kind":"var","name":1}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"nat_lt"}},"else_branch":{"function":2,"kind":"call","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"nat_sub"}},{"kind":"var","name":1}]},"kind":"cond","then_branch":{"kind":"var","name":0}},"kind":"cond","then_branch":{"kind":"var","name":0}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"var","name":2},"kind":"cond","then_branch":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":1}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}},"else_branch":{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"var","name":2}]},"kind":"cond","then_branch":{"kind":"var","name":1}}},"parameters":[0,1,2],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-core/well_founded/provenance.json b/tests/production-export/production-coverage/packages/rust-core/well_founded/provenance.json index 9905e751d..8c1997d29 100644 --- a/tests/production-export/production-coverage/packages/rust-core/well_founded/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-core/well_founded/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"0c780ccff965ccc10faa78b2714b324aa2f72bb88aedc1f0632079faded0b0d8","src/lib.rs":"0c41a66fccc35c507f10b37bae86e81f68d0076d3468125efc9f2d8a347e7812"},"name":"well_founded","profile":"rust-core","program":"a30548452b5811cfc83abdc547d7e93bbdfaf6ae193442225eed19b212b84e5d","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"0c780ccff965ccc10faa78b2714b324aa2f72bb88aedc1f0632079faded0b0d8","src/lib.rs":"0c41a66fccc35c507f10b37bae86e81f68d0076d3468125efc9f2d8a347e7812"},"name":"well_founded","profile":"rust-core","program":"a30548452b5811cfc83abdc547d7e93bbdfaf6ae193442225eed19b212b84e5d","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/bits/package.json b/tests/production-export/production-coverage/packages/rust-std/bits/package.json index 54b69e29e..84ae132d7 100644 --- a/tests/production-export/production-coverage/packages/rust-std/bits/package.json +++ b/tests/production-export/production-coverage/packages/rust-std/bits/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"bits","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_xor"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"bit_not"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"3"}}],"operation":{"kind":"shift_right"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"equal"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"bool"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"bool"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"bool"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"bool"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"bool"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"bool"}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"bool"}}}}}}},"types":[{"kind":"fixed","width":"u16"},{"kind":"fixed","width":"u16"},{"kind":"fixed","width":"u32"}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"bits","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_and"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_or"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"bit_xor"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"bit_not"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2}],"operation":{"kind":"shift_left"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"3"}}],"operation":{"kind":"shift_right"}},{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"equal"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"bool"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"bool"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"bool"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"bool"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"bool"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"bool"}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"fixed","width":"u16"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"bool"}}}}}}},"types":[{"kind":"fixed","width":"u16"},{"kind":"fixed","width":"u16"},{"kind":"fixed","width":"u32"}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/bits/provenance.json b/tests/production-export/production-coverage/packages/rust-std/bits/provenance.json index 35fd11628..484e5380e 100644 --- a/tests/production-export/production-coverage/packages/rust-std/bits/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-std/bits/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"fbd9afdc5b19669c491fb8be9e6f9578e6715f7244aa0adb013ad42263077a4d","src/lib.rs":"28f88d34b240232107b4bdff8b086a3acbbb23df63a5535f4cf58f5f33a920ec"},"name":"bits","profile":"rust-std","program":"9ed3cf1ba1de6ddfd0c865acea0ee413b21ac44fb1d556e8eac704b552c3d018","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"fbd9afdc5b19669c491fb8be9e6f9578e6715f7244aa0adb013ad42263077a4d","src/lib.rs":"28f88d34b240232107b4bdff8b086a3acbbb23df63a5535f4cf58f5f33a920ec"},"name":"bits","profile":"rust-std","program":"9ed3cf1ba1de6ddfd0c865acea0ee413b21ac44fb1d556e8eac704b552c3d018","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/builders/package.json b/tests/production-export/production-coverage/packages/rust-std/builders/package.json index 4a2873a26..92a22e0b8 100644 --- a/tests/production-export/production-coverage/packages/rust-std/builders/package.json +++ b/tests/production-export/production-coverage/packages/rust-std/builders/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"builders","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":0}],"shape":{"kind":"succ"},"type":{"kind":"nat"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}}],"shape":{"kind":"error"},"type":{"error":{"kind":"unit"},"kind":"result","ok":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"zero"},"type":{"kind":"nat"}}],"shape":{"kind":"ok"},"type":{"error":{"kind":"unit"},"kind":"result","ok":{"kind":"nat"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"error":{"kind":"unit"},"kind":"result","ok":{"kind":"nat"}}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"error":{"kind":"unit"},"kind":"result","ok":{"kind":"nat"}}},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"builders","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":0}],"shape":{"kind":"succ"},"type":{"kind":"nat"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"unit"},"type":{"kind":"unit"}}],"shape":{"kind":"error"},"type":{"error":{"kind":"unit"},"kind":"result","ok":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"kind":"zero"},"type":{"kind":"nat"}}],"shape":{"kind":"ok"},"type":{"error":{"kind":"unit"},"kind":"result","ok":{"kind":"nat"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"error":{"kind":"unit"},"kind":"result","ok":{"kind":"nat"}}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"error":{"kind":"unit"},"kind":"result","ok":{"kind":"nat"}}},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/builders/provenance.json b/tests/production-export/production-coverage/packages/rust-std/builders/provenance.json index 289612fd7..98dd2152b 100644 --- a/tests/production-export/production-coverage/packages/rust-std/builders/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-std/builders/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"fafa24144f14cc940ca1e3c16043130877f447f6beb7975029ea5e9cfd45cff4","src/lib.rs":"d575ec9360acf95c825535ad667a3ef6d906d216d3d52331f3118010c1bada5b"},"name":"builders","profile":"rust-std","program":"234deee526474348f12566f97e315f4a79becf0607138d82ae06f555a4d3f2db","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"fafa24144f14cc940ca1e3c16043130877f447f6beb7975029ea5e9cfd45cff4","src/lib.rs":"d575ec9360acf95c825535ad667a3ef6d906d216d3d52331f3118010c1bada5b"},"name":"builders","profile":"rust-std","program":"234deee526474348f12566f97e315f4a79becf0607138d82ae06f555a4d3f2db","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/conversions/package.json b/tests/production-export/production-coverage/packages/rust-std/conversions/package.json index d16960554..f291dda20 100644 --- a/tests/production-export/production-coverage/packages/rust-std/conversions/package.json +++ b/tests/production-export/production-coverage/packages/rust-std/conversions/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"conversions","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"convert","target":"u16"}},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"convert","target":"i64"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"option","value":{"kind":"fixed","width":"i64"}}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"option","value":{"kind":"fixed","width":"i64"}}},"types":[{"kind":"int"},{"kind":"fixed","width":"i8"}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"conversions","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"convert","target":"u16"}},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"convert","target":"i64"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"option","value":{"kind":"fixed","width":"i64"}}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u16"}},"right":{"kind":"option","value":{"kind":"fixed","width":"i64"}}},"types":[{"kind":"int"},{"kind":"fixed","width":"i8"}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/conversions/provenance.json b/tests/production-export/production-coverage/packages/rust-std/conversions/provenance.json index 9a710ae89..92949b4eb 100644 --- a/tests/production-export/production-coverage/packages/rust-std/conversions/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-std/conversions/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"fa3523bd7088be5264998e9685661cde4aa5d182d6f8dd083cb5130c7f1fe39b","src/lib.rs":"e0c05cf69833c7f43a18b493542e586f3a0dcb6c30c80ac934a4086c4e3fe1e3"},"name":"conversions","profile":"rust-std","program":"6227207e0bebaa6609e8bfedfaffb83e7fcb5e8c11d9ed9caaa35fb65b35766f","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"fa3523bd7088be5264998e9685661cde4aa5d182d6f8dd083cb5130c7f1fe39b","src/lib.rs":"e0c05cf69833c7f43a18b493542e586f3a0dcb6c30c80ac934a4086c4e3fe1e3"},"name":"conversions","profile":"rust-std","program":"6227207e0bebaa6609e8bfedfaffb83e7fcb5e8c11d9ed9caaa35fb65b35766f","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/decimals/package.json b/tests/production-export/production-coverage/packages/rust-std/decimals/package.json index 97193a1b8..36cc23a60 100644 --- a/tests/production-export/production-coverage/packages/rust-std/decimals/package.json +++ b/tests/production-export/production-coverage/packages/rust-std/decimals/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"decimals","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"parse_decimal","target":{"kind":"int"}}},{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"parse_decimal","target":{"kind":"fixed","width":"u32"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"int"}},"right":{"kind":"option","value":{"kind":"fixed","width":"u32"}}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"int"}},"right":{"kind":"option","value":{"kind":"fixed","width":"u32"}}},"types":[{"kind":"string"}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"decimals","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"parse_decimal","target":{"kind":"int"}}},{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"parse_decimal","target":{"kind":"fixed","width":"u32"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"int"}},"right":{"kind":"option","value":{"kind":"fixed","width":"u32"}}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"int"}},"right":{"kind":"option","value":{"kind":"fixed","width":"u32"}}},"types":[{"kind":"string"}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/decimals/provenance.json b/tests/production-export/production-coverage/packages/rust-std/decimals/provenance.json index 9fbbad95f..c4b2d5f87 100644 --- a/tests/production-export/production-coverage/packages/rust-std/decimals/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-std/decimals/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"38d68167a4f0b5b10417a9133b3afe780fe8449f038b8124bd97a75578a12b14","src/lib.rs":"1efe2b4f6015da3f7e5ecb18aedf10d5484ac770d347f87d1b9f08d3022d47cc"},"name":"decimals","profile":"rust-std","program":"6fc888e3f1e9cf5a37f9f68cc01d1a1ff94cc30a552b384155cb811a9d13a526","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"38d68167a4f0b5b10417a9133b3afe780fe8449f038b8124bd97a75578a12b14","src/lib.rs":"1efe2b4f6015da3f7e5ecb18aedf10d5484ac770d347f87d1b9f08d3022d47cc"},"name":"decimals","profile":"rust-std","program":"6fc888e3f1e9cf5a37f9f68cc01d1a1ff94cc30a552b384155cb811a9d13a526","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/fixed_middle/package.json b/tests/production-export/production-coverage/packages/rust-std/fixed_middle/package.json index f7af4cdbf..09af746d3 100644 --- a/tests/production-export/production-coverage/packages/rust-std/fixed_middle/package.json +++ b/tests/production-export/production-coverage/packages/rust-std/fixed_middle/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"fixed_middle","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":0}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"i32"},"value":{"kind":"i32","value":"-7"}}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"convert","target":"i32"}},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"i32"},"value":{"kind":"i32","value":"3"}}],"operation":{"kind":"equal"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"bool"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"bool"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"bool"}}}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"bool"}}}},"types":[{"kind":"fixed","width":"i16"},{"kind":"fixed","width":"i32"}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"fixed_middle","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":0}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"i32"},"value":{"kind":"i32","value":"-7"}}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"convert","target":"i32"}},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"i32"},"value":{"kind":"i32","value":"3"}}],"operation":{"kind":"equal"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"bool"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"bool"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"bool"}}}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i16"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i32"}},"right":{"kind":"bool"}}}},"types":[{"kind":"fixed","width":"i16"},{"kind":"fixed","width":"i32"}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/fixed_middle/provenance.json b/tests/production-export/production-coverage/packages/rust-std/fixed_middle/provenance.json index cf58099f9..5a0b45dba 100644 --- a/tests/production-export/production-coverage/packages/rust-std/fixed_middle/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-std/fixed_middle/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"70d81e8cefb299340d3a62dc48f2c63bec855c62563bffbbb15981b963bf8764","src/lib.rs":"e3d95cef121ebfda14217535b6bc27db8a10f8de4660094bc76d6657e4ae05b8"},"name":"fixed_middle","profile":"rust-std","program":"c5c4a8ee12a3a426500bb6c4e82af761e1af447511bd597e1bc5dce63970ddaf","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"70d81e8cefb299340d3a62dc48f2c63bec855c62563bffbbb15981b963bf8764","src/lib.rs":"e3d95cef121ebfda14217535b6bc27db8a10f8de4660094bc76d6657e4ae05b8"},"name":"fixed_middle","profile":"rust-std","program":"c5c4a8ee12a3a426500bb6c4e82af761e1af447511bd597e1bc5dce63970ddaf","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/fixed_small/package.json b/tests/production-export/production-coverage/packages/rust-std/fixed_small/package.json index 5ad134719..9ea7be092 100644 --- a/tests/production-export/production-coverage/packages/rust-std/fixed_small/package.json +++ b/tests/production-export/production-coverage/packages/rust-std/fixed_small/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"fixed_small","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_quot"}},{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"checked_neg"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"option","value":{"kind":"fixed","width":"i8"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"option","value":{"kind":"fixed","width":"i8"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"option","value":{"kind":"fixed","width":"i8"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"option","value":{"kind":"fixed","width":"i8"}}}}}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"option","value":{"kind":"fixed","width":"i8"}}}}}},"types":[{"kind":"fixed","width":"i8"},{"kind":"fixed","width":"i8"}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"fixed_small","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_quot"}},{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"checked_neg"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"option","value":{"kind":"fixed","width":"i8"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"option","value":{"kind":"fixed","width":"i8"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"option","value":{"kind":"fixed","width":"i8"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"option","value":{"kind":"fixed","width":"i8"}}}}}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i8"}},"right":{"kind":"option","value":{"kind":"fixed","width":"i8"}}}}}},"types":[{"kind":"fixed","width":"i8"},{"kind":"fixed","width":"i8"}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/fixed_small/provenance.json b/tests/production-export/production-coverage/packages/rust-std/fixed_small/provenance.json index 8ad3c2c26..e1c7cd9f5 100644 --- a/tests/production-export/production-coverage/packages/rust-std/fixed_small/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-std/fixed_small/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"ce31af3f31d522467497872c4f9ca4a03022315e9de1c0f4e00f2ee5f92ef058","src/lib.rs":"490ea341ab742d6e0889c4b8f12dc1910ec57426bd74e728143e658b2f77f2ff"},"name":"fixed_small","profile":"rust-std","program":"ef7c0ba20d049db4524a6ec6561a20d86bd33230f60e21dc733706135be42f2d","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"ce31af3f31d522467497872c4f9ca4a03022315e9de1c0f4e00f2ee5f92ef058","src/lib.rs":"490ea341ab742d6e0889c4b8f12dc1910ec57426bd74e728143e658b2f77f2ff"},"name":"fixed_small","profile":"rust-std","program":"ef7c0ba20d049db4524a6ec6561a20d86bd33230f60e21dc733706135be42f2d","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/fixed_wide/package.json b/tests/production-export/production-coverage/packages/rust-std/fixed_wide/package.json index 055e6fe2f..4a479e65e 100644 --- a/tests/production-export/production-coverage/packages/rust-std/fixed_wide/package.json +++ b/tests/production-export/production-coverage/packages/rust-std/fixed_wide/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"fixed_wide","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"checked_neg"}},{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"fixed","width":"u64"},"value":{"kind":"u64","value":"1"}}],"operation":{"kind":"checked_add"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"option","value":{"kind":"fixed","width":"u64"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"option","value":{"kind":"fixed","width":"u64"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"option","value":{"kind":"fixed","width":"u64"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"option","value":{"kind":"fixed","width":"u64"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"option","value":{"kind":"fixed","width":"u64"}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"option","value":{"kind":"fixed","width":"u64"}}}}}}},"types":[{"kind":"fixed","width":"i64"},{"kind":"fixed","width":"i64"},{"kind":"fixed","width":"u64"}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own","own"]}],"name":"fixed_wide","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_sub"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_mul"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_quot"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"checked_neg"}},{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"fixed","width":"u64"},"value":{"kind":"u64","value":"1"}}],"operation":{"kind":"checked_add"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"option","value":{"kind":"fixed","width":"u64"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"option","value":{"kind":"fixed","width":"u64"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"option","value":{"kind":"fixed","width":"u64"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"option","value":{"kind":"fixed","width":"u64"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"option","value":{"kind":"fixed","width":"u64"}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"i64"}},"right":{"kind":"option","value":{"kind":"fixed","width":"u64"}}}}}}},"types":[{"kind":"fixed","width":"i64"},{"kind":"fixed","width":"i64"},{"kind":"fixed","width":"u64"}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/fixed_wide/provenance.json b/tests/production-export/production-coverage/packages/rust-std/fixed_wide/provenance.json index 68f328473..75d6cf56e 100644 --- a/tests/production-export/production-coverage/packages/rust-std/fixed_wide/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-std/fixed_wide/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"2f1666bc680f131b93f6a000603f0f2798622e79f6fac14abd8a5e0d7341fdae","src/lib.rs":"d602a7c44b2c87b7592f08c7680096462d33a7f0a94fe2f2f75217c3a4dd503d"},"name":"fixed_wide","profile":"rust-std","program":"046e9276a504b885d2582f97b9c4fb34281d09496a6f649c6c147f6361e56c8d","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"2f1666bc680f131b93f6a000603f0f2798622e79f6fac14abd8a5e0d7341fdae","src/lib.rs":"d602a7c44b2c87b7592f08c7680096462d33a7f0a94fe2f2f75217c3a4dd503d"},"name":"fixed_wide","profile":"rust-std","program":"046e9276a504b885d2582f97b9c4fb34281d09496a6f649c6c147f6361e56c8d","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/folds/package.json b/tests/production-export/production-coverage/packages/rust-std/folds/package.json index a046ec310..5f9b5c983 100644 --- a/tests/production-export/production-coverage/packages/rust-std/folds/package.json +++ b/tests/production-export/production-coverage/packages/rust-std/folds/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":6,"name":"run","parameters":["own","own"]}],"name":"folds","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"captures":[],"function":2,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"var","name":0}]},{"function":3,"kind":"call","operands":[{"captures":[],"function":4,"kind":"closure"},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"5"}},{"kind":"var","name":1}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"int"}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"int"}},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"int"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"nat"}},"parameters":[0,1,2],"result":{"kind":"nat"},"types":[{"kind":"fn","parameters":[{"kind":"nat"},{"kind":"nat"}],"result":{"kind":"nat"}},{"kind":"nat"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"nat_add"}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"int"}},"parameters":[0,1,2],"result":{"kind":"int"},"types":[{"kind":"fn","parameters":[{"kind":"int"},{"kind":"int"}],"result":{"kind":"int"}},{"kind":"int"},{"element":{"kind":"int"},"kind":"list"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"int_sub"}},"parameters":[0,1],"result":{"kind":"int"},"types":[{"kind":"int"},{"kind":"int"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"function":5,"kind":"call","operands":[{"kind":"var","name":2}]}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"element":{"kind":"int"},"kind":"list"}]},{"body":{"condition":{"function":5,"kind":"call","operands":[{"kind":"var","name":1}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"int"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":0,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"int"}}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"int"}}},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"int"},"kind":"list"}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":6,"name":"run","parameters":["own","own"]}],"name":"folds","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"captures":[],"function":2,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"var","name":0}]},{"function":3,"kind":"call","operands":[{"captures":[],"function":4,"kind":"closure"},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"5"}},{"kind":"var","name":1}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"int"}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"int"}},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"int"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"nat"}},"parameters":[0,1,2],"result":{"kind":"nat"},"types":[{"kind":"fn","parameters":[{"kind":"nat"},{"kind":"nat"}],"result":{"kind":"nat"}},{"kind":"nat"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"nat_add"}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"int"}},"parameters":[0,1,2],"result":{"kind":"int"},"types":[{"kind":"fn","parameters":[{"kind":"int"},{"kind":"int"}],"result":{"kind":"int"}},{"kind":"int"},{"element":{"kind":"int"},"kind":"list"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"int_sub"}},"parameters":[0,1],"result":{"kind":"int"},"types":[{"kind":"int"},{"kind":"int"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"function":5,"kind":"call","operands":[{"kind":"var","name":2}]}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"element":{"kind":"int"},"kind":"list"}]},{"body":{"condition":{"function":5,"kind":"call","operands":[{"kind":"var","name":1}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"int"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":0,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"int"}}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"int"}}},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"int"},"kind":"list"}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/folds/provenance.json b/tests/production-export/production-coverage/packages/rust-std/folds/provenance.json index 1b464c73c..1b77ebd01 100644 --- a/tests/production-export/production-coverage/packages/rust-std/folds/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-std/folds/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":6,"name":"run"}],"files":{"Cargo.toml":"21833df3c31669fee6a4dcbc88ec818bce79c0448e84ea927707c0794b480598","src/lib.rs":"c43ae91ecd04414637c50ee825458c0c0116fb91077a54dd6b337b6314ddc6c9"},"name":"folds","profile":"rust-std","program":"48b1d22aff3beb88a3f286056475ac74e9a357ff9dc339c89b802249153cebbd","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":6,"name":"run"}],"files":{"Cargo.toml":"21833df3c31669fee6a4dcbc88ec818bce79c0448e84ea927707c0794b480598","src/lib.rs":"c43ae91ecd04414637c50ee825458c0c0116fb91077a54dd6b337b6314ddc6c9"},"name":"folds","profile":"rust-std","program":"48b1d22aff3beb88a3f286056475ac74e9a357ff9dc339c89b802249153cebbd","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/formats/package.json b/tests/production-export/production-coverage/packages/rust-std/formats/package.json index 58316d6f5..7391a2751 100644 --- a/tests/production-export/production-coverage/packages/rust-std/formats/package.json +++ b/tests/production-export/production-coverage/packages/rust-std/formats/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"formats","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"format_decimal"}},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"format_decimal"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"string"}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"string"}},"types":[{"kind":"int"},{"kind":"fixed","width":"i8"}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"formats","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"format_decimal"}},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"format_decimal"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"string"}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"string"}},"types":[{"kind":"int"},{"kind":"fixed","width":"i8"}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/formats/provenance.json b/tests/production-export/production-coverage/packages/rust-std/formats/provenance.json index 74c055c85..a5998e82c 100644 --- a/tests/production-export/production-coverage/packages/rust-std/formats/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-std/formats/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"e54fd5976089487c24262a84ee4c52b4e352aee3ea4cbf903b03f3beb32b2388","src/lib.rs":"080123c4076700aba965da9cdb74c7592689b3abacb9e1e3ff4bea12fa83e7c0"},"name":"formats","profile":"rust-std","program":"a2d6d8d674af0354e10f236b2b6dcab2579a6ff9db94b3a696fb2c0679df7372","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"e54fd5976089487c24262a84ee4c52b4e352aee3ea4cbf903b03f3beb32b2388","src/lib.rs":"080123c4076700aba965da9cdb74c7592689b3abacb9e1e3ff4bea12fa83e7c0"},"name":"formats","profile":"rust-std","program":"a2d6d8d674af0354e10f236b2b6dcab2579a6ff9db94b3a696fb2c0679df7372","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/graphs/package.json b/tests/production-export/production-coverage/packages/rust-std/graphs/package.json index 907c32442..2780faf44 100644 --- a/tests/production-export/production-coverage/packages/rust-std/graphs/package.json +++ b/tests/production-export/production-coverage/packages/rust-std/graphs/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":30,"name":"run","parameters":["own","own"]}],"name":"graphs","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},{"kind":"build","operands":[{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},{"function":16,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}},"parameters":[0,1],"result":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"none"}},{"binders":[2],"body":{"kind":"var","name":2},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":2}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"parameters":[0,1],"result":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"function":4,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"prim","operands":[{"function":13,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}]}],"operation":{"kind":"length"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}]},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":3},"shape":{"kind":"zero"}},{"binders":[4],"body":{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":3},"shape":{"kind":"nil"}},{"binders":[6,7],"body":{"function":4,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":4},{"kind":"var","name":5},{"function":11,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":5}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":5},"type":{"element":{"kind":"nat"},"kind":"list"}},"bound":{"function":5,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}]},"kind":"let","name":5,"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1,2,3],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"},{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":3},"shape":{"kind":"nil"}},{"binders":[4,5],"body":{"function":5,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":5},{"function":6,"kind":"call","operands":[{"kind":"var","name":1},{"function":7,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":4}]},{"kind":"var","name":3}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1,2,3],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":2},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":6,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":4},{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3}]},"else_branch":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":2},{"kind":"var","name":3}]},"else_branch":{"function":10,"kind":"call","operands":[{"kind":"var","name":2},{"kind":"var","name":3}]},"kind":"cond","then_branch":{"kind":"var","name":2}},"kind":"cond","then_branch":{"kind":"var","name":2}}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"none"}},{"binders":[2],"body":{"kind":"var","name":2},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":8,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":2}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":8,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"parameters":[0,1],"result":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":9,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":10,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":11,"kind":"call","operands":[{"function":12,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},{"kind":"var","name":3}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":12,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":13,"kind":"call","operands":[{"kind":"var","name":3},{"function":14,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":2}},{"function":15,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}]}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":14,"kind":"call","operands":[{"kind":"var","name":3},{"function":15,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"var","name":2}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":15,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"body":{"function":17,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}]},"bound":{"function":21,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}]},"kind":"let","name":1,"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0],"result":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"function":20,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[4,5],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"zero"}},{"binders":[6],"body":{"arms":[{"binders":[],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"function":20,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[7,8],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[9,10],"body":{"function":17,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":6},{"function":27,"kind":"call","operands":[{"kind":"var","name":2},{"kind":"var","name":9}]},{"kind":"build","operands":[{"kind":"var","name":9},{"kind":"var","name":3}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"function":18,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2},{"kind":"var","name":2}]},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"parameters":[0,1,2,3],"result":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"},{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"function":19,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":1}]},"else_branch":{"function":18,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":4}]},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":3},{"function":18,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":4}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"function":26,"kind":"call","operands":[{"function":24,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3}]},{"kind":"var","name":1}]},"else_branch":{"function":19,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":4}]},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}},"parameters":[0,1,2],"result":{"kind":"bool"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":20,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"var","name":1}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":21,"kind":"call","operands":[{"kind":"var","name":3},{"function":22,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":2}},{"function":23,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}]}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":22,"kind":"call","operands":[{"kind":"var","name":3},{"function":23,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"var","name":2}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":23,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"none"}},{"binders":[2],"body":{"kind":"var","name":2},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":25,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":2}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":25,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"parameters":[0,1],"result":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":26,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":3},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":27,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"condition":{"function":29,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":1}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":1}},{"kind":"first","value":{"kind":"var","name":3}}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"function":28,"kind":"call","operands":[{"kind":"var","name":2}]}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"function":29,"kind":"call","operands":[{"kind":"var","name":2}]}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"condition":{"function":28,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":0,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":30,"name":"run","parameters":["own","own"]}],"name":"graphs","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},{"kind":"build","operands":[{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},{"function":16,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}},"parameters":[0,1],"result":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"none"}},{"binders":[2],"body":{"kind":"var","name":2},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":2}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"parameters":[0,1],"result":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"function":4,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"prim","operands":[{"function":13,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}]}],"operation":{"kind":"length"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}]},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":3},"shape":{"kind":"zero"}},{"binders":[4],"body":{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":3},"shape":{"kind":"nil"}},{"binders":[6,7],"body":{"function":4,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":4},{"kind":"var","name":5},{"function":11,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":5}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":5},"type":{"element":{"kind":"nat"},"kind":"list"}},"bound":{"function":5,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}]},"kind":"let","name":5,"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1,2,3],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"},{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":3},"shape":{"kind":"nil"}},{"binders":[4,5],"body":{"function":5,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":5},{"function":6,"kind":"call","operands":[{"kind":"var","name":1},{"function":7,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":4}]},{"kind":"var","name":3}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1,2,3],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":2},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":6,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":4},{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3}]},"else_branch":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":2},{"kind":"var","name":3}]},"else_branch":{"function":10,"kind":"call","operands":[{"kind":"var","name":2},{"kind":"var","name":3}]},"kind":"cond","then_branch":{"kind":"var","name":2}},"kind":"cond","then_branch":{"kind":"var","name":2}}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"none"}},{"binders":[2],"body":{"kind":"var","name":2},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":8,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":2}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":8,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"parameters":[0,1],"result":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":9,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":10,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":11,"kind":"call","operands":[{"function":12,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},{"kind":"var","name":3}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":12,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":13,"kind":"call","operands":[{"kind":"var","name":3},{"function":14,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":2}},{"function":15,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}]}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":14,"kind":"call","operands":[{"kind":"var","name":3},{"function":15,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"var","name":2}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":15,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"body":{"function":17,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}]},"bound":{"function":21,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}]},"kind":"let","name":1,"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0],"result":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"function":20,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[4,5],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"zero"}},{"binders":[6],"body":{"arms":[{"binders":[],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"function":20,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[7,8],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[9,10],"body":{"function":17,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":6},{"function":27,"kind":"call","operands":[{"kind":"var","name":2},{"kind":"var","name":9}]},{"kind":"build","operands":[{"kind":"var","name":9},{"kind":"var","name":3}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"function":18,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2},{"kind":"var","name":2}]},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"parameters":[0,1,2,3],"result":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"},{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"function":19,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":1}]},"else_branch":{"function":18,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":4}]},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":3},{"function":18,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":4}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"function":26,"kind":"call","operands":[{"function":24,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3}]},{"kind":"var","name":1}]},"else_branch":{"function":19,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":4}]},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}},"parameters":[0,1,2],"result":{"kind":"bool"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":20,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"var","name":1}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":21,"kind":"call","operands":[{"kind":"var","name":3},{"function":22,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":2}},{"function":23,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}]}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":22,"kind":"call","operands":[{"kind":"var","name":3},{"function":23,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"var","name":2}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":23,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"none"}},{"binders":[2],"body":{"kind":"var","name":2},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":25,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":2}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":25,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}},"parameters":[0,1],"result":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":26,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":3},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":27,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"condition":{"function":29,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":1}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":1}},{"kind":"first","value":{"kind":"var","name":3}}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"function":28,"kind":"call","operands":[{"kind":"var","name":2}]}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"function":29,"kind":"call","operands":[{"kind":"var","name":2}]}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"condition":{"function":28,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":0,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}}}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/graphs/provenance.json b/tests/production-export/production-coverage/packages/rust-std/graphs/provenance.json index d1f62ebcb..7c4cbbb9b 100644 --- a/tests/production-export/production-coverage/packages/rust-std/graphs/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-std/graphs/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":30,"name":"run"}],"files":{"Cargo.toml":"006bdd268983be958dbe85a51c271f1e7315257d78cce3ed57743b23cd195944","src/lib.rs":"72489cde84069bf6e34c53e43d3b6de78cc4f5e3f9e9117fbd964ae31f85bde7"},"name":"graphs","profile":"rust-std","program":"54b3c6a08367cfc9abac0716d282f9bfd50bcfffd1c1c0a5693bf6e6407145e2","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":30,"name":"run"}],"files":{"Cargo.toml":"006bdd268983be958dbe85a51c271f1e7315257d78cce3ed57743b23cd195944","src/lib.rs":"72489cde84069bf6e34c53e43d3b6de78cc4f5e3f9e9117fbd964ae31f85bde7"},"name":"graphs","profile":"rust-std","program":"54b3c6a08367cfc9abac0716d282f9bfd50bcfffd1c1c0a5693bf6e6407145e2","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/grove_root/package.json b/tests/production-export/production-coverage/packages/rust-std/grove_root/package.json index 0b30073e1..a460ae043 100644 --- a/tests/production-export/production-coverage/packages/rust-std/grove_root/package.json +++ b/tests/production-export/production-coverage/packages/rust-std/grove_root/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":18,"name":"run","parameters":["own","own","own","own"]}],"name":"grove_root","profile":"rust-std","program":{"adts":[{"constructors":[[{"element":{"kind":"nat"},"kind":"list"},{"element":{"index":0,"kind":"adt"},"kind":"list"},{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"int"}},"kind":"list"},{"kind":"option","value":{"index":0,"kind":"adt"}},{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"index":0,"kind":"adt"}},"kind":"list"}],[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"int"}},"kind":"list"}],[{"error":{"kind":"nat"},"kind":"result","ok":{"index":0,"kind":"adt"}}]]},{"constructors":[[{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"int"}},"kind":"list"},{"kind":"string"}]]}],"functions":[{"body":{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"var","name":3}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"element":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"kind":"list"},"kind":"list"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"element":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"kind":"list"},"kind":"list"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"element":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"kind":"list"},"kind":"list"}}}}},"parameters":[0,1,2,3],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"element":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"kind":"list"},"kind":"list"}}}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"},{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},{"element":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"kind":"list"},"kind":"list"}]},{"body":{"arms":[{"binders":[1,2,3,4,5],"body":{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}},"shape":{"constructor":0,"kind":"adt"}},{"binders":[6],"body":{"kind":"prim","operands":[{"kind":"var","name":6}],"operation":{"kind":"length"}},"shape":{"constructor":1,"kind":"adt"}},{"binders":[7],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"constructor":2,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"index":0,"kind":"adt"}]},{"body":{"arms":[{"binders":[1,2,3,4,5],"body":{"condition":{"function":3,"kind":"call","operands":[{"kind":"var","name":1}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"condition":{"function":4,"kind":"call","operands":[{"kind":"var","name":2}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"condition":{"function":5,"kind":"call","operands":[{"kind":"var","name":3}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":4}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":5}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}}}}}},"shape":{"constructor":0,"kind":"adt"}},{"binders":[6],"body":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":6}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"shape":{"constructor":1,"kind":"adt"}},{"binders":[7],"body":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":7}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"shape":{"constructor":2,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"function":3,"kind":"call","operands":[{"kind":"var","name":2}]}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"condition":{"function":2,"kind":"call","operands":[{"kind":"var","name":1}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"function":4,"kind":"call","operands":[{"kind":"var","name":2}]}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"element":{"index":0,"kind":"adt"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":1}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":1}},{"kind":"first","value":{"kind":"var","name":3}}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"function":5,"kind":"call","operands":[{"kind":"var","name":2}]}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"int"}},"kind":"list"}]},{"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"int"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"none"}},{"binders":[1],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":1}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"option","value":{"index":0,"kind":"adt"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":1}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"function":8,"kind":"call","operands":[{"kind":"var","name":2}]}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"index":0,"kind":"adt"}},"kind":"list"}]},{"body":{"condition":{"function":10,"kind":"call","operands":[{"kind":"first","value":{"kind":"var","name":0}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"function":2,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":0}}]}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"index":0,"kind":"adt"}}]},{"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":1}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":1}},{"kind":"first","value":{"kind":"var","name":3}}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"function":11,"kind":"call","operands":[{"kind":"var","name":2}]}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"int"}},"kind":"list"}]},{"body":{"arms":[{"binders":[1],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":1}]},"shape":{"kind":"ok"}},{"binders":[2],"body":{"function":10,"kind":"call","operands":[{"kind":"var","name":2}]},"shape":{"kind":"error"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"error":{"kind":"nat"},"kind":"result","ok":{"index":0,"kind":"adt"}}]},{"body":{"arms":[{"binders":[1,2],"body":{"condition":{"function":5,"kind":"call","operands":[{"kind":"var","name":1}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"shape":{"constructor":0,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"none"}},{"binders":[1],"body":{"function":3,"kind":"call","operands":[{"kind":"var","name":1}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"condition":{"function":16,"kind":"call","operands":[{"kind":"var","name":1}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"function":15,"kind":"call","operands":[{"kind":"var","name":2}]}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"element":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"kind":"list"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"condition":{"function":17,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":1}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":1}},{"kind":"first","value":{"kind":"var","name":3}}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"function":16,"kind":"call","operands":[{"kind":"var","name":2}]}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"kind":"list"}]},{"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"bool"}]},{"body":{"condition":{"function":2,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"element":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"kind":"list"},"kind":"list"}}}}}},"kind":"cond","then_branch":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":1}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"element":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"kind":"list"},"kind":"list"}}}}}},"kind":"cond","then_branch":{"condition":{"function":14,"kind":"call","operands":[{"kind":"var","name":2}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"element":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"kind":"list"},"kind":"list"}}}}}},"kind":"cond","then_branch":{"condition":{"function":15,"kind":"call","operands":[{"kind":"var","name":3}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"element":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"kind":"list"},"kind":"list"}}}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":0,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":2},{"kind":"var","name":3}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"element":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"kind":"list"},"kind":"list"}}}}}}}}}},"parameters":[0,1,2,3],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"element":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"kind":"list"},"kind":"list"}}}}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"},{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},{"element":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"kind":"list"},"kind":"list"}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":18,"name":"run","parameters":["own","own","own","own"]}],"name":"grove_root","profile":"rust-std","program":{"adts":[{"constructors":[[{"element":{"kind":"nat"},"kind":"list"},{"element":{"index":0,"kind":"adt"},"kind":"list"},{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"int"}},"kind":"list"},{"kind":"option","value":{"index":0,"kind":"adt"}},{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"index":0,"kind":"adt"}},"kind":"list"}],[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"int"}},"kind":"list"}],[{"error":{"kind":"nat"},"kind":"result","ok":{"index":0,"kind":"adt"}}]]},{"constructors":[[{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"int"}},"kind":"list"},{"kind":"string"}]]}],"functions":[{"body":{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"var","name":3}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"element":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"kind":"list"},"kind":"list"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"element":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"kind":"list"},"kind":"list"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"element":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"kind":"list"},"kind":"list"}}}}},"parameters":[0,1,2,3],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"element":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"kind":"list"},"kind":"list"}}}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"},{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},{"element":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"kind":"list"},"kind":"list"}]},{"body":{"arms":[{"binders":[1,2,3,4,5],"body":{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}},"shape":{"constructor":0,"kind":"adt"}},{"binders":[6],"body":{"kind":"prim","operands":[{"kind":"var","name":6}],"operation":{"kind":"length"}},"shape":{"constructor":1,"kind":"adt"}},{"binders":[7],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"constructor":2,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"index":0,"kind":"adt"}]},{"body":{"arms":[{"binders":[1,2,3,4,5],"body":{"condition":{"function":3,"kind":"call","operands":[{"kind":"var","name":1}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"condition":{"function":4,"kind":"call","operands":[{"kind":"var","name":2}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"condition":{"function":5,"kind":"call","operands":[{"kind":"var","name":3}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":4}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":5}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}}}}}},"shape":{"constructor":0,"kind":"adt"}},{"binders":[6],"body":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":6}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"shape":{"constructor":1,"kind":"adt"}},{"binders":[7],"body":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":7}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"shape":{"constructor":2,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":0,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"function":3,"kind":"call","operands":[{"kind":"var","name":2}]}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"condition":{"function":2,"kind":"call","operands":[{"kind":"var","name":1}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"function":4,"kind":"call","operands":[{"kind":"var","name":2}]}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"element":{"index":0,"kind":"adt"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":1}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":1}},{"kind":"first","value":{"kind":"var","name":3}}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"function":5,"kind":"call","operands":[{"kind":"var","name":2}]}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"int"}},"kind":"list"}]},{"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"int"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"none"}},{"binders":[1],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":1}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"option","value":{"index":0,"kind":"adt"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":1}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"function":8,"kind":"call","operands":[{"kind":"var","name":2}]}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"index":0,"kind":"adt"}},"kind":"list"}]},{"body":{"condition":{"function":10,"kind":"call","operands":[{"kind":"first","value":{"kind":"var","name":0}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"function":2,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":0}}]}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"index":0,"kind":"adt"}}]},{"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":1}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":1}},{"kind":"first","value":{"kind":"var","name":3}}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"function":11,"kind":"call","operands":[{"kind":"var","name":2}]}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"int"}},"kind":"list"}]},{"body":{"arms":[{"binders":[1],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":1}]},"shape":{"kind":"ok"}},{"binders":[2],"body":{"function":10,"kind":"call","operands":[{"kind":"var","name":2}]},"shape":{"kind":"error"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"error":{"kind":"nat"},"kind":"result","ok":{"index":0,"kind":"adt"}}]},{"body":{"arms":[{"binders":[1,2],"body":{"condition":{"function":5,"kind":"call","operands":[{"kind":"var","name":1}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"shape":{"constructor":0,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"index":1,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"none"}},{"binders":[1],"body":{"function":3,"kind":"call","operands":[{"kind":"var","name":1}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"condition":{"function":16,"kind":"call","operands":[{"kind":"var","name":1}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"function":15,"kind":"call","operands":[{"kind":"var","name":2}]}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"element":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"kind":"list"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"condition":{"function":17,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":1}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":1}},{"kind":"first","value":{"kind":"var","name":3}}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"function":16,"kind":"call","operands":[{"kind":"var","name":2}]}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"kind":"list"}]},{"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"bool"}]},{"body":{"condition":{"function":2,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"element":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"kind":"list"},"kind":"list"}}}}}},"kind":"cond","then_branch":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":1}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"element":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"kind":"list"},"kind":"list"}}}}}},"kind":"cond","then_branch":{"condition":{"function":14,"kind":"call","operands":[{"kind":"var","name":2}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"element":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"kind":"list"},"kind":"list"}}}}}},"kind":"cond","then_branch":{"condition":{"function":15,"kind":"call","operands":[{"kind":"var","name":3}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"element":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"kind":"list"},"kind":"list"}}}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":0,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":2},{"kind":"var","name":3}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"element":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"kind":"list"},"kind":"list"}}}}}}}}}},"parameters":[0,1,2,3],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"index":1,"kind":"adt"},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"element":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"kind":"list"},"kind":"list"}}}}},"types":[{"index":0,"kind":"adt"},{"index":1,"kind":"adt"},{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},{"element":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"kind":"list"},"kind":"list"}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/grove_root/provenance.json b/tests/production-export/production-coverage/packages/rust-std/grove_root/provenance.json index 9e6a5fd6a..a051121b0 100644 --- a/tests/production-export/production-coverage/packages/rust-std/grove_root/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-std/grove_root/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":18,"name":"run"}],"files":{"Cargo.toml":"cd5f821f98d8f9d0bb49b5e40dbd8213040d1eb56f5ad4d42ca594defb94fafc","src/lib.rs":"f2b1845fe3adad6812c4b57175cd599d4080bdcf865efbce9d06f9c19f6c9706"},"name":"grove_root","profile":"rust-std","program":"1aadfc9ba4fd60d7060d145ef97656e0bca23924ec77e487808d5faae1ada33d","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":18,"name":"run"}],"files":{"Cargo.toml":"cd5f821f98d8f9d0bb49b5e40dbd8213040d1eb56f5ad4d42ca594defb94fafc","src/lib.rs":"f2b1845fe3adad6812c4b57175cd599d4080bdcf865efbce9d06f9c19f6c9706"},"name":"grove_root","profile":"rust-std","program":"1aadfc9ba4fd60d7060d145ef97656e0bca23924ec77e487808d5faae1ada33d","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/higher/package.json b/tests/production-export/production-coverage/packages/rust-std/higher/package.json index 75e082c3a..8b1ae6846 100644 --- a/tests/production-export/production-coverage/packages/rust-std/higher/package.json +++ b/tests/production-export/production-coverage/packages/rust-std/higher/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"higher","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"body":{"kind":"prim","operands":[{"function":1,"kind":"call","operands":[{"captures":[{"kind":"var","name":2},{"kind":"var","name":1}],"function":2,"kind":"closure"},{"kind":"var","name":0}]},{"kind":"prim","operands":[{"kind":"apply","operands":[{"kind":"var","name":0}],"target":{"captures":[{"kind":"var","name":2}],"function":3,"kind":"closure"}},{"function":1,"kind":"call","operands":[{"captures":[],"function":4,"kind":"closure"},{"kind":"var","name":1}]}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_add"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},"kind":"let","name":2,"type":{"kind":"nat"}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"kind":"apply","operands":[{"kind":"apply","operands":[{"kind":"var","name":1}],"target":{"kind":"var","name":0}}],"target":{"kind":"var","name":0}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":0}],"operation":{"kind":"nat_mul"}},{"kind":"var","name":1}],"operation":{"kind":"nat_add"}},"parameters":[0,1,2],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"operation":{"kind":"nat_sub"}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":0}],"operation":{"kind":"nat_add"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"higher","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"body":{"kind":"prim","operands":[{"function":1,"kind":"call","operands":[{"captures":[{"kind":"var","name":2},{"kind":"var","name":1}],"function":2,"kind":"closure"},{"kind":"var","name":0}]},{"kind":"prim","operands":[{"kind":"apply","operands":[{"kind":"var","name":0}],"target":{"captures":[{"kind":"var","name":2}],"function":3,"kind":"closure"}},{"function":1,"kind":"call","operands":[{"captures":[],"function":4,"kind":"closure"},{"kind":"var","name":1}]}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_add"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},"kind":"let","name":2,"type":{"kind":"nat"}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"kind":"apply","operands":[{"kind":"apply","operands":[{"kind":"var","name":1}],"target":{"kind":"var","name":0}}],"target":{"kind":"var","name":0}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":0}],"operation":{"kind":"nat_mul"}},{"kind":"var","name":1}],"operation":{"kind":"nat_add"}},"parameters":[0,1,2],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"operation":{"kind":"nat_sub"}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":0}],"operation":{"kind":"nat_add"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/higher/provenance.json b/tests/production-export/production-coverage/packages/rust-std/higher/provenance.json index c177a0d83..c32d3c3c7 100644 --- a/tests/production-export/production-coverage/packages/rust-std/higher/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-std/higher/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"a9965766740afeb45706683c1c941095c32f92781e171be35737261a61b8a24a","src/lib.rs":"f82da2f587585cce5a6abd616213045aa57aaee2228a787f540c6b664160238a"},"name":"higher","profile":"rust-std","program":"b9a631ceb72fc1536c7c26c88ce17cb71084492929763dc601a2e579e3b15596","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"a9965766740afeb45706683c1c941095c32f92781e171be35737261a61b8a24a","src/lib.rs":"f82da2f587585cce5a6abd616213045aa57aaee2228a787f540c6b664160238a"},"name":"higher","profile":"rust-std","program":"b9a631ceb72fc1536c7c26c88ce17cb71084492929763dc601a2e579e3b15596","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/int_ops/package.json b/tests/production-export/production-coverage/packages/rust-std/int_ops/package.json index 02922a207..d09dcdfbc 100644 --- a/tests/production-export/production-coverage/packages/rust-std/int_ops/package.json +++ b/tests/production-export/production-coverage/packages/rust-std/int_ops/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"int_ops","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-3"}}],"operation":{"kind":"int_mul"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"1"}}],"operation":{"kind":"int_quot"}},{"kind":"var","name":1},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"0"}}],"operation":{"kind":"int_rem"}}],"operation":{"kind":"int_neg"}}],"operation":{"kind":"int_sub"}},"parameters":[0,1],"result":{"kind":"int"},"types":[{"kind":"int"},{"kind":"int"}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"int_ops","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"-3"}}],"operation":{"kind":"int_mul"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"1"}}],"operation":{"kind":"int_quot"}},{"kind":"var","name":1},{"kind":"value","type":{"kind":"int"},"value":{"kind":"int","value":"0"}}],"operation":{"kind":"int_rem"}}],"operation":{"kind":"int_neg"}}],"operation":{"kind":"int_sub"}},"parameters":[0,1],"result":{"kind":"int"},"types":[{"kind":"int"},{"kind":"int"}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/int_ops/provenance.json b/tests/production-export/production-coverage/packages/rust-std/int_ops/provenance.json index c11d705cb..7b09ed0c1 100644 --- a/tests/production-export/production-coverage/packages/rust-std/int_ops/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-std/int_ops/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"fc1efbb5b6ec479184b12aceea00af517df40c0ba110f9c286361df08f0b2142","src/lib.rs":"ca5bbe334ad23a550d260ec243a6be249a61f249e733bb1433d582487d85c287"},"name":"int_ops","profile":"rust-std","program":"6f167a8d46f8923a927e311666264729d573c3b8593155abef2114631b1b0283","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"fc1efbb5b6ec479184b12aceea00af517df40c0ba110f9c286361df08f0b2142","src/lib.rs":"ca5bbe334ad23a550d260ec243a6be249a61f249e733bb1433d582487d85c287"},"name":"int_ops","profile":"rust-std","program":"6f167a8d46f8923a927e311666264729d573c3b8593155abef2114631b1b0283","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/iterations/package.json b/tests/production-export/production-coverage/packages/rust-std/iterations/package.json index fb05e6fd6..1ca101018 100644 --- a/tests/production-export/production-coverage/packages/rust-std/iterations/package.json +++ b/tests/production-export/production-coverage/packages/rust-std/iterations/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"iterations","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"captures":[],"function":2,"kind":"closure"},{"kind":"var","name":0},{"kind":"var","name":1}]},{"function":3,"kind":"call","operands":[{"captures":[],"function":4,"kind":"closure"},{"kind":"var","name":0},{"kind":"var","name":1}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":2},"shape":{"kind":"zero"}},{"binders":[3],"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}}]},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"nat"}},"parameters":[0,1,2],"result":{"kind":"nat"},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"nat"}},{"kind":"nat"},{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"option","value":{"kind":"nat"}}},{"kind":"nat"},{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"10"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_add"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"iterations","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"captures":[],"function":2,"kind":"closure"},{"kind":"var","name":0},{"kind":"var","name":1}]},{"function":3,"kind":"call","operands":[{"captures":[],"function":4,"kind":"closure"},{"kind":"var","name":0},{"kind":"var","name":1}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":2},"shape":{"kind":"zero"}},{"binders":[3],"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}}]},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"nat"}},"parameters":[0,1,2],"result":{"kind":"nat"},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"nat"}},{"kind":"nat"},{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"option","value":{"kind":"nat"}}},{"kind":"nat"},{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"10"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_add"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/iterations/provenance.json b/tests/production-export/production-coverage/packages/rust-std/iterations/provenance.json index 74a2bd395..54fe9f3a0 100644 --- a/tests/production-export/production-coverage/packages/rust-std/iterations/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-std/iterations/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"30538a8c312a4083ac5aaaa7ae38d9ab7689cd5c311aafa494a6add82a0481d2","src/lib.rs":"0a86c1df2c70a18f50c6d51d8d31e7efc17b44a7f90e7ea754acbd0782ce8364"},"name":"iterations","profile":"rust-std","program":"17fa1f466a5d992c3b54152d0a758cd23d38d1b2fda1ef5693cc06700cabe223","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"30538a8c312a4083ac5aaaa7ae38d9ab7689cd5c311aafa494a6add82a0481d2","src/lib.rs":"0a86c1df2c70a18f50c6d51d8d31e7efc17b44a7f90e7ea754acbd0782ce8364"},"name":"iterations","profile":"rust-std","program":"17fa1f466a5d992c3b54152d0a758cd23d38d1b2fda1ef5693cc06700cabe223","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/key_types/package.json b/tests/production-export/production-coverage/packages/rust-std/key_types/package.json index b5a1b4ac0..2914bd257 100644 --- a/tests/production-export/production-coverage/packages/rust-std/key_types/package.json +++ b/tests/production-export/production-coverage/packages/rust-std/key_types/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":13,"name":"run","parameters":["own","own","own","own","own","own","own","own","own","own"]}],"name":"key_types","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},{"kind":"build","operands":[{"function":2,"kind":"call","operands":[{"kind":"var","name":2},{"kind":"var","name":3}]},{"kind":"build","operands":[{"function":3,"kind":"call","operands":[{"kind":"var","name":4},{"kind":"var","name":5}]},{"kind":"build","operands":[{"function":4,"kind":"call","operands":[{"kind":"var","name":6},{"kind":"var","name":7}]},{"function":5,"kind":"call","operands":[{"kind":"var","name":8},{"kind":"var","name":9}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"option","value":{"kind":"nat"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"option","value":{"kind":"nat"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"option","value":{"kind":"nat"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"bool"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"option","value":{"kind":"nat"}}}}}}},"parameters":[0,1,2,3,4,5,6,7,8,9],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"bool"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"option","value":{"kind":"nat"}}}}}},"types":[{"element":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"right":{"kind":"bool"}},"kind":"list"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},{"element":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"fixed","width":"i8"},{"element":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"bool"},{"element":{"kind":"pair","left":{"kind":"int"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"int"},{"element":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"fixed","width":"u64"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"bool"}}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"bool"}}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":2}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"bool"}}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"kind":"option","value":{"kind":"bool"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"kind":"bool"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"bool"}},"types":[{"element":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"right":{"kind":"bool"}},"kind":"list"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":2}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"element":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"fixed","width":"i8"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":2}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":3,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"element":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"bool"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":2}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":4,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"element":{"kind":"pair","left":{"kind":"int"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"int"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":2}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":5,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"element":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"fixed","width":"u64"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"condition":{"function":7,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":1}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":1}},{"kind":"first","value":{"kind":"var","name":3}}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"function":6,"kind":"call","operands":[{"kind":"var","name":2}]}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"element":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"right":{"kind":"bool"}},"kind":"list"}]},{"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"bool"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"condition":{"function":9,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":1}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":1}},{"kind":"first","value":{"kind":"var","name":3}}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"function":8,"kind":"call","operands":[{"kind":"var","name":2}]}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"element":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"nat"}},"kind":"list"}]},{"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"condition":{"function":9,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":1}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":1}},{"kind":"first","value":{"kind":"var","name":3}}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"function":10,"kind":"call","operands":[{"kind":"var","name":2}]}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"element":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"nat"}},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"condition":{"function":9,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":1}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":1}},{"kind":"first","value":{"kind":"var","name":3}}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"function":11,"kind":"call","operands":[{"kind":"var","name":2}]}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"element":{"kind":"pair","left":{"kind":"int"},"right":{"kind":"nat"}},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"condition":{"function":9,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":1}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":1}},{"kind":"first","value":{"kind":"var","name":3}}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"function":12,"kind":"call","operands":[{"kind":"var","name":2}]}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"element":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"nat"}},"kind":"list"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"option","value":{"kind":"bool"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"option","value":{"kind":"nat"}}}}}}}},"kind":"cond","then_branch":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":2}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"option","value":{"kind":"bool"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"option","value":{"kind":"nat"}}}}}}}},"kind":"cond","then_branch":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":4}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"option","value":{"kind":"bool"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"option","value":{"kind":"nat"}}}}}}}},"kind":"cond","then_branch":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":6}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"option","value":{"kind":"bool"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"option","value":{"kind":"nat"}}}}}}}},"kind":"cond","then_branch":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":8}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"option","value":{"kind":"bool"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"option","value":{"kind":"nat"}}}}}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":0,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":2},{"kind":"var","name":3},{"kind":"var","name":4},{"kind":"var","name":5},{"kind":"var","name":6},{"kind":"var","name":7},{"kind":"var","name":8},{"kind":"var","name":9}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"option","value":{"kind":"bool"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"option","value":{"kind":"nat"}}}}}}}}}}}}},"parameters":[0,1,2,3,4,5,6,7,8,9],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"option","value":{"kind":"bool"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"option","value":{"kind":"nat"}}}}}}},"types":[{"element":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"right":{"kind":"bool"}},"kind":"list"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},{"element":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"fixed","width":"i8"},{"element":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"bool"},{"element":{"kind":"pair","left":{"kind":"int"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"int"},{"element":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"fixed","width":"u64"}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":13,"name":"run","parameters":["own","own","own","own","own","own","own","own","own","own"]}],"name":"key_types","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},{"kind":"build","operands":[{"function":2,"kind":"call","operands":[{"kind":"var","name":2},{"kind":"var","name":3}]},{"kind":"build","operands":[{"function":3,"kind":"call","operands":[{"kind":"var","name":4},{"kind":"var","name":5}]},{"kind":"build","operands":[{"function":4,"kind":"call","operands":[{"kind":"var","name":6},{"kind":"var","name":7}]},{"function":5,"kind":"call","operands":[{"kind":"var","name":8},{"kind":"var","name":9}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"option","value":{"kind":"nat"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"option","value":{"kind":"nat"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"option","value":{"kind":"nat"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"bool"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"option","value":{"kind":"nat"}}}}}}},"parameters":[0,1,2,3,4,5,6,7,8,9],"result":{"kind":"pair","left":{"kind":"option","value":{"kind":"bool"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"option","value":{"kind":"nat"}}}}}},"types":[{"element":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"right":{"kind":"bool"}},"kind":"list"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},{"element":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"fixed","width":"i8"},{"element":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"bool"},{"element":{"kind":"pair","left":{"kind":"int"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"int"},{"element":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"fixed","width":"u64"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"bool"}}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"bool"}}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":2}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"bool"}}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"kind":"option","value":{"kind":"bool"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"kind":"bool"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"bool"}},"types":[{"element":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"right":{"kind":"bool"}},"kind":"list"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":2}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"element":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"fixed","width":"i8"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":2}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":3,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"element":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"bool"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":2}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":4,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"element":{"kind":"pair","left":{"kind":"int"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"int"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":2}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":5,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"element":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"fixed","width":"u64"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"condition":{"function":7,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":1}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":1}},{"kind":"first","value":{"kind":"var","name":3}}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"function":6,"kind":"call","operands":[{"kind":"var","name":2}]}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"element":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"right":{"kind":"bool"}},"kind":"list"}]},{"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"bool"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"condition":{"function":9,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":1}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":1}},{"kind":"first","value":{"kind":"var","name":3}}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"function":8,"kind":"call","operands":[{"kind":"var","name":2}]}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"element":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"nat"}},"kind":"list"}]},{"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"condition":{"function":9,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":1}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":1}},{"kind":"first","value":{"kind":"var","name":3}}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"function":10,"kind":"call","operands":[{"kind":"var","name":2}]}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"element":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"nat"}},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"condition":{"function":9,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":1}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":1}},{"kind":"first","value":{"kind":"var","name":3}}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"function":11,"kind":"call","operands":[{"kind":"var","name":2}]}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"element":{"kind":"pair","left":{"kind":"int"},"right":{"kind":"nat"}},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"condition":{"function":9,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":1}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":1}},{"kind":"first","value":{"kind":"var","name":3}}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"function":12,"kind":"call","operands":[{"kind":"var","name":2}]}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"element":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"nat"}},"kind":"list"}]},{"body":{"condition":{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"option","value":{"kind":"bool"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"option","value":{"kind":"nat"}}}}}}}},"kind":"cond","then_branch":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":2}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"option","value":{"kind":"bool"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"option","value":{"kind":"nat"}}}}}}}},"kind":"cond","then_branch":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":4}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"option","value":{"kind":"bool"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"option","value":{"kind":"nat"}}}}}}}},"kind":"cond","then_branch":{"condition":{"function":11,"kind":"call","operands":[{"kind":"var","name":6}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"option","value":{"kind":"bool"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"option","value":{"kind":"nat"}}}}}}}},"kind":"cond","then_branch":{"condition":{"function":12,"kind":"call","operands":[{"kind":"var","name":8}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"option","value":{"kind":"bool"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"option","value":{"kind":"nat"}}}}}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":0,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":2},{"kind":"var","name":3},{"kind":"var","name":4},{"kind":"var","name":5},{"kind":"var","name":6},{"kind":"var","name":7},{"kind":"var","name":8},{"kind":"var","name":9}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"option","value":{"kind":"bool"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"option","value":{"kind":"nat"}}}}}}}}}}}}},"parameters":[0,1,2,3,4,5,6,7,8,9],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"option","value":{"kind":"bool"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"option","value":{"kind":"nat"}}}}}}},"types":[{"element":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},"right":{"kind":"bool"}},"kind":"list"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"string"}},{"element":{"kind":"pair","left":{"kind":"fixed","width":"i8"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"fixed","width":"i8"},{"element":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"bool"},{"element":{"kind":"pair","left":{"kind":"int"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"int"},{"element":{"kind":"pair","left":{"kind":"fixed","width":"u64"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"fixed","width":"u64"}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/key_types/provenance.json b/tests/production-export/production-coverage/packages/rust-std/key_types/provenance.json index 915669757..182b6c28f 100644 --- a/tests/production-export/production-coverage/packages/rust-std/key_types/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-std/key_types/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":13,"name":"run"}],"files":{"Cargo.toml":"9cecbb64ae81b051d99238533458e614535b89a97d68038a37dc146d7b713075","src/lib.rs":"2e7d46426b92417e89c52e95a2a86b5428d20cc33310d05167864a748ffc79e6"},"name":"key_types","profile":"rust-std","program":"fc3e6614b68e0f0cf2e4fcd7831a0a8ac5a84ade2a42c08eabcd0d2ddc8abe3f","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":13,"name":"run"}],"files":{"Cargo.toml":"9cecbb64ae81b051d99238533458e614535b89a97d68038a37dc146d7b713075","src/lib.rs":"2e7d46426b92417e89c52e95a2a86b5428d20cc33310d05167864a748ffc79e6"},"name":"key_types","profile":"rust-std","program":"fc3e6614b68e0f0cf2e4fcd7831a0a8ac5a84ade2a42c08eabcd0d2ddc8abe3f","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/literals/package.json b/tests/production-export/production-coverage/packages/rust-std/literals/package.json index 83152a3d9..783a2a8b8 100644 --- a/tests/production-export/production-coverage/packages/rust-std/literals/package.json +++ b/tests/production-export/production-coverage/packages/rust-std/literals/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"literals","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"a"}},{"kind":"var","name":0}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}}},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"b"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}}},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"}}}},"parameters":[0,1],"result":{"kind":"pair","left":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"}}},"types":[{"kind":"nat"},{"kind":"string"}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"literals","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"a"}},{"kind":"var","name":0}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}}},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"b"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}}},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"}}}},"parameters":[0,1],"result":{"kind":"pair","left":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}},"kind":"list"}}},"types":[{"kind":"nat"},{"kind":"string"}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/literals/provenance.json b/tests/production-export/production-coverage/packages/rust-std/literals/provenance.json index 3de1bb440..04b78a490 100644 --- a/tests/production-export/production-coverage/packages/rust-std/literals/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-std/literals/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"d50f03397a2a5fa453e54d825b4cc78390b490b4973fe40536246e21fa86ef38","src/lib.rs":"5b9440cfbe529b300f326669cd3186d65d2fd758984e30598c0c2ec62f448784"},"name":"literals","profile":"rust-std","program":"c7a7def9b6c20967b79d34ac878ad3bd945e7e8a5f7ba59728f515c9495f8d2c","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"d50f03397a2a5fa453e54d825b4cc78390b490b4973fe40536246e21fa86ef38","src/lib.rs":"5b9440cfbe529b300f326669cd3186d65d2fd758984e30598c0c2ec62f448784"},"name":"literals","profile":"rust-std","program":"c7a7def9b6c20967b79d34ac878ad3bd945e7e8a5f7ba59728f515c9495f8d2c","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/map_folding/package.json b/tests/production-export/production-coverage/packages/rust-std/map_folding/package.json index d5f425d74..08b001ef8 100644 --- a/tests/production-export/production-coverage/packages/rust-std/map_folding/package.json +++ b/tests/production-export/production-coverage/packages/rust-std/map_folding/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":5,"name":"run","parameters":["own","own"]}],"name":"map_folding","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"captures":[{"kind":"var","name":1}],"function":2,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"var","name":0}]},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":3}},{"kind":"second","value":{"kind":"var","name":3}}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"nat"}},"parameters":[0,1,2],"result":{"kind":"nat"},"types":[{"kind":"fn","parameters":[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}],"result":{"kind":"nat"}},{"kind":"nat"},{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"var","name":0}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_add"}},"parameters":[0,1,2,3],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"condition":{"function":4,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":1}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":1}},{"kind":"first","value":{"kind":"var","name":3}}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"function":3,"kind":"call","operands":[{"kind":"var","name":2}]}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}]},{"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"nat"}]},{"body":{"condition":{"function":3,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":0,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":5,"name":"run","parameters":["own","own"]}],"name":"map_folding","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"captures":[{"kind":"var","name":1}],"function":2,"kind":"closure"},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"var","name":0}]},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":3}},{"kind":"second","value":{"kind":"var","name":3}}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"nat"}},"parameters":[0,1,2],"result":{"kind":"nat"},"types":[{"kind":"fn","parameters":[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}],"result":{"kind":"nat"}},{"kind":"nat"},{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}]},{"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"nat_add"}},{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"var","name":0}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_add"}},"parameters":[0,1,2,3],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"condition":{"function":4,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":1}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":1}},{"kind":"first","value":{"kind":"var","name":3}}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"function":3,"kind":"call","operands":[{"kind":"var","name":2}]}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"}]},{"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"nat"}]},{"body":{"condition":{"function":3,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":0,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"element":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/map_folding/provenance.json b/tests/production-export/production-coverage/packages/rust-std/map_folding/provenance.json index 55076e4f5..8d2fbdaa3 100644 --- a/tests/production-export/production-coverage/packages/rust-std/map_folding/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-std/map_folding/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":5,"name":"run"}],"files":{"Cargo.toml":"e20682f7e1258bfdb39c7012f02acd610ed6215570067732977bd5a1e9318152","src/lib.rs":"478e0a5ef288094018bf4e4b4dd4e8ea02a890c41253fef33c194130fecb119d"},"name":"map_folding","profile":"rust-std","program":"db2b0f171e75cff8b9931bc693e039342501c8d43f2d2a653bd29728fe777dc1","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":5,"name":"run"}],"files":{"Cargo.toml":"e20682f7e1258bfdb39c7012f02acd610ed6215570067732977bd5a1e9318152","src/lib.rs":"478e0a5ef288094018bf4e4b4dd4e8ea02a890c41253fef33c194130fecb119d"},"name":"map_folding","profile":"rust-std","program":"db2b0f171e75cff8b9931bc693e039342501c8d43f2d2a653bd29728fe777dc1","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/map_ops/package.json b/tests/production-export/production-coverage/packages/rust-std/map_ops/package.json index a4a398001..981f1bcdf 100644 --- a/tests/production-export/production-coverage/packages/rust-std/map_ops/package.json +++ b/tests/production-export/production-coverage/packages/rust-std/map_ops/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":10,"name":"run","parameters":["own","own","own"]}],"name":"map_ops","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":2}]},{"kind":"build","operands":[{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},{"kind":"build","operands":[{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},{"kind":"build","operands":[{"function":4,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},{"kind":"build","operands":[{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},{"kind":"build","operands":[{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},{"kind":"var","name":0}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"string"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"element":{"kind":"string"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"element":{"kind":"string"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"element":{"kind":"string"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"element":{"kind":"string"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"element":{"kind":"string"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}}}}}}}},"types":[{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"string"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}}},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}}},{"kind":"var","name":4}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":3},{"function":1,"kind":"call","operands":[{"kind":"var","name":4},{"kind":"var","name":1},{"kind":"var","name":2}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":3}}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"string"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":3},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":2,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"string"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":2}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":3,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"string"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"none"}},{"binders":[2],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":5,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"kind":"bool"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"string"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":2}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":5,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"string"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"string"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"kind":"build","operands":[{"kind":"first","value":{"kind":"var","name":1}},{"function":6,"kind":"call","operands":[{"kind":"var","name":2}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"string"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"string"},"kind":"list"}},"parameters":[0],"result":{"element":{"kind":"string"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":1}},{"function":7,"kind":"call","operands":[{"kind":"var","name":2}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"condition":{"function":9,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":1}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":1}},{"kind":"first","value":{"kind":"var","name":3}}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"function":8,"kind":"call","operands":[{"kind":"var","name":2}]}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}]},{"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"nat"}]},{"body":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"element":{"kind":"string"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}}}}}}}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":0,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":2}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"element":{"kind":"string"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}}}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"option","value":{"kind":"pair","left":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"element":{"kind":"string"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}}}}}}}}},"types":[{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"string"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":10,"name":"run","parameters":["own","own","own"]}],"name":"map_ops","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":2}]},{"kind":"build","operands":[{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},{"kind":"build","operands":[{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},{"kind":"build","operands":[{"function":4,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},{"kind":"build","operands":[{"function":6,"kind":"call","operands":[{"kind":"var","name":0}]},{"kind":"build","operands":[{"function":7,"kind":"call","operands":[{"kind":"var","name":0}]},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},{"kind":"var","name":0}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"string"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"element":{"kind":"string"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"element":{"kind":"string"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"element":{"kind":"string"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"element":{"kind":"string"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"element":{"kind":"string"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}}}}}}}},"types":[{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"string"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}}},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}}},{"kind":"var","name":4}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":3},{"function":1,"kind":"call","operands":[{"kind":"var","name":4},{"kind":"var","name":1},{"kind":"var","name":2}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":3}}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"string"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":3},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":2,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"string"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":2}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":3,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"string"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"none"}},{"binders":[2],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":5,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"kind":"bool"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"string"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":2}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":5,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"kind":"option","value":{"kind":"nat"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"kind":"nat"}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"string"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"string"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"kind":"build","operands":[{"kind":"first","value":{"kind":"var","name":1}},{"function":6,"kind":"call","operands":[{"kind":"var","name":2}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"string"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"string"},"kind":"list"}},"parameters":[0],"result":{"element":{"kind":"string"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":1}},{"function":7,"kind":"call","operands":[{"kind":"var","name":2}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"condition":{"function":9,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":1}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":1}},{"kind":"first","value":{"kind":"var","name":3}}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"function":8,"kind":"call","operands":[{"kind":"var","name":2}]}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}]},{"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"nat"}]},{"body":{"condition":{"function":8,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"element":{"kind":"string"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}}}}}}}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":0,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":2}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"element":{"kind":"string"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}}}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"option","value":{"kind":"pair","left":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"element":{"kind":"string"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"}}}}}}}}},"types":[{"element":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"nat"}},"kind":"list"},{"kind":"string"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/map_ops/provenance.json b/tests/production-export/production-coverage/packages/rust-std/map_ops/provenance.json index e799985f2..b45cd534c 100644 --- a/tests/production-export/production-coverage/packages/rust-std/map_ops/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-std/map_ops/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":10,"name":"run"}],"files":{"Cargo.toml":"adebd8e382f9c7ef2503c46c04e30f3fa80125dba1bb356f1ae0361d4958dac4","src/lib.rs":"74e57de6fc14045e08ffa6efec190aafbb5404429d63778b4a7b9509dc75170e"},"name":"map_ops","profile":"rust-std","program":"befbd0f6a81345584eccc0e352073fcc65d585f2ff9b002aad0cfac26a5a426f","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":10,"name":"run"}],"files":{"Cargo.toml":"adebd8e382f9c7ef2503c46c04e30f3fa80125dba1bb356f1ae0361d4958dac4","src/lib.rs":"74e57de6fc14045e08ffa6efec190aafbb5404429d63778b4a7b9509dc75170e"},"name":"map_ops","profile":"rust-std","program":"befbd0f6a81345584eccc0e352073fcc65d585f2ff9b002aad0cfac26a5a426f","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/mapped/package.json b/tests/production-export/production-coverage/packages/rust-std/mapped/package.json index 4e68e3285..ed488bc93 100644 --- a/tests/production-export/production-coverage/packages/rust-std/mapped/package.json +++ b/tests/production-export/production-coverage/packages/rust-std/mapped/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own"]}],"name":"mapped","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"captures":[],"function":2,"kind":"closure"},{"kind":"var","name":0}]},"parameters":[0],"result":{"element":{"kind":"bool"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"bool"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"kind":"build","operands":[{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"element":{"kind":"bool"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"bool"},"kind":"list"},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"bool"}},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"function":3,"kind":"call","operands":[{"kind":"var","name":1}]},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":1}]},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own"]}],"name":"mapped","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"captures":[],"function":2,"kind":"closure"},{"kind":"var","name":0}]},"parameters":[0],"result":{"element":{"kind":"bool"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"bool"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"kind":"build","operands":[{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bool"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"element":{"kind":"bool"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"bool"},"kind":"list"},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"bool"}},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"function":3,"kind":"call","operands":[{"kind":"var","name":1}]},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":1}]},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/mapped/provenance.json b/tests/production-export/production-coverage/packages/rust-std/mapped/provenance.json index 261d7e121..b7fb944a2 100644 --- a/tests/production-export/production-coverage/packages/rust-std/mapped/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-std/mapped/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"74d20143e44a79d9f19bf361224c94504bf0af1c0270595f0d3e089ac3edee9c","src/lib.rs":"6d08d4eef8ef893a1e44d7791e0dc20b8145982029ce00ae2141bb9b8001ce05"},"name":"mapped","profile":"rust-std","program":"83625b33701e16e8f1014fd8a942ea0ac67a87cefb2ef0f93321f9dbc4bbe943","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"74d20143e44a79d9f19bf361224c94504bf0af1c0270595f0d3e089ac3edee9c","src/lib.rs":"6d08d4eef8ef893a1e44d7791e0dc20b8145982029ce00ae2141bb9b8001ce05"},"name":"mapped","profile":"rust-std","program":"83625b33701e16e8f1014fd8a942ea0ac67a87cefb2ef0f93321f9dbc4bbe943","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/nat_ops/package.json b/tests/production-export/production-coverage/packages/rust-std/nat_ops/package.json index 90975b140..a46bf657b 100644 --- a/tests/production-export/production-coverage/packages/rust-std/nat_ops/package.json +++ b/tests/production-export/production-coverage/packages/rust-std/nat_ops/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"nat_ops","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"body":{"body":{"condition":{"condition":{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"condition":{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_le"}},"else_branch":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"nat_lt"}}],"operation":{"kind":"bool_not"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}}},"else_branch":{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":3}],"operation":{"kind":"nat_mul"}},"kind":"cond","then_branch":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"nat_sub"}},{"kind":"var","name":3}],"operation":{"kind":"nat_add"}}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},"kind":"let","name":3,"type":{"kind":"nat"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"7"}}],"operation":{"kind":"nat_quot"}},"kind":"let","name":2,"type":{"kind":"nat"}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"nat_ops","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"body":{"body":{"condition":{"condition":{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"condition":{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_le"}},"else_branch":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"nat_lt"}}],"operation":{"kind":"bool_not"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}}},"else_branch":{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":3}],"operation":{"kind":"nat_mul"}},"kind":"cond","then_branch":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"nat_sub"}},{"kind":"var","name":3}],"operation":{"kind":"nat_add"}}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_rem"}},"kind":"let","name":3,"type":{"kind":"nat"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"7"}}],"operation":{"kind":"nat_quot"}},"kind":"let","name":2,"type":{"kind":"nat"}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/nat_ops/provenance.json b/tests/production-export/production-coverage/packages/rust-std/nat_ops/provenance.json index 40b8e2975..93e5c3fd2 100644 --- a/tests/production-export/production-coverage/packages/rust-std/nat_ops/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-std/nat_ops/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"59cd8633f12e3fac8ffcf39b00cfe0eae72e66af298eab94fb7a158d60c11ef2","src/lib.rs":"5f05eb70ed8f42dc70c25bc003d949c109c60e5f9cacdcdd12a2b392d931ca7c"},"name":"nat_ops","profile":"rust-std","program":"7327b0d3e0e2b92c9e324f0b8f38bf8b9a4866af1fab582ce3cb3471b3faac1f","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"59cd8633f12e3fac8ffcf39b00cfe0eae72e66af298eab94fb7a158d60c11ef2","src/lib.rs":"5f05eb70ed8f42dc70c25bc003d949c109c60e5f9cacdcdd12a2b392d931ca7c"},"name":"nat_ops","profile":"rust-std","program":"7327b0d3e0e2b92c9e324f0b8f38bf8b9a4866af1fab582ce3cb3471b3faac1f","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/options/package.json b/tests/production-export/production-coverage/packages/rust-std/options/package.json index 6c213f938..a77290807 100644 --- a/tests/production-export/production-coverage/packages/rust-std/options/package.json +++ b/tests/production-export/production-coverage/packages/rust-std/options/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"options","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"none"}},{"binders":[2],"body":{"kind":"var","name":2},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},{"arms":[{"binders":[3],"body":{"kind":"var","name":3},"shape":{"kind":"ok"}},{"binders":[4],"body":{"condition":{"kind":"var","name":4},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},"shape":{"kind":"error"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"nat"}}],"operation":{"kind":"nat_add"}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"option","value":{"kind":"nat"}},{"error":{"kind":"bool"},"kind":"result","ok":{"kind":"nat"}}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"options","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"none"}},{"binders":[2],"body":{"kind":"var","name":2},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},{"arms":[{"binders":[3],"body":{"kind":"var","name":3},"shape":{"kind":"ok"}},{"binders":[4],"body":{"condition":{"kind":"var","name":4},"else_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},"kind":"cond","then_branch":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}},"shape":{"kind":"error"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"nat"}}],"operation":{"kind":"nat_add"}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"option","value":{"kind":"nat"}},{"error":{"kind":"bool"},"kind":"result","ok":{"kind":"nat"}}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/options/provenance.json b/tests/production-export/production-coverage/packages/rust-std/options/provenance.json index dc42c936e..917387b8c 100644 --- a/tests/production-export/production-coverage/packages/rust-std/options/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-std/options/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"7f0fac10f04b56539a18ecadc9ac9f95f1ceb9be06a3738695181aa3b6a2e9fd","src/lib.rs":"f4911d06380e55018526f1c48f5de31724916e3ebc587a7934519d70cf02bfb7"},"name":"options","profile":"rust-std","program":"1817e8488f6542ec7a9c65ee73a26b9b2ce35ef18dad904d897c9dded6e3cbf9","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"7f0fac10f04b56539a18ecadc9ac9f95f1ceb9be06a3738695181aa3b6a2e9fd","src/lib.rs":"f4911d06380e55018526f1c48f5de31724916e3ebc587a7934519d70cf02bfb7"},"name":"options","profile":"rust-std","program":"1817e8488f6542ec7a9c65ee73a26b9b2ce35ef18dad904d897c9dded6e3cbf9","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/pairs/package.json b/tests/production-export/production-coverage/packages/rust-std/pairs/package.json index b0fea514f..d5669b938 100644 --- a/tests/production-export/production-coverage/packages/rust-std/pairs/package.json +++ b/tests/production-export/production-coverage/packages/rust-std/pairs/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own"]}],"name":"pairs","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":0}},{"kind":"first","value":{"kind":"var","name":0}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"nat"}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own"]}],"name":"pairs","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":0}},{"kind":"first","value":{"kind":"var","name":0}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"nat"}}},"parameters":[0],"result":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"nat"}},"types":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/pairs/provenance.json b/tests/production-export/production-coverage/packages/rust-std/pairs/provenance.json index 8371e3508..e16be0bcb 100644 --- a/tests/production-export/production-coverage/packages/rust-std/pairs/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-std/pairs/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"a3dd557c4339d106e7e177364f68702e05259c1cdf7bcc15c6c3801657acecac","src/lib.rs":"23479ab66c4b197434b8b1193fdb3ab0c4ad64e05eda32f3f34a6d2a117dc842"},"name":"pairs","profile":"rust-std","program":"7d925a72d07005baaa5a9371f60e52199072e49139630af3348972394ef0539f","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"a3dd557c4339d106e7e177364f68702e05259c1cdf7bcc15c6c3801657acecac","src/lib.rs":"23479ab66c4b197434b8b1193fdb3ab0c4ad64e05eda32f3f34a6d2a117dc842"},"name":"pairs","profile":"rust-std","program":"7d925a72d07005baaa5a9371f60e52199072e49139630af3348972394ef0539f","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/parity/package.json b/tests/production-export/production-coverage/packages/rust-std/parity/package.json index d773a4d48..217058b8d 100644 --- a/tests/production-export/production-coverage/packages/rust-std/parity/package.json +++ b/tests/production-export/production-coverage/packages/rust-std/parity/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own"]}],"name":"parity","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":1}]},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":1}]},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own"]}],"name":"parity","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":1}]},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"zero"}},{"binders":[1],"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":1}]},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/parity/provenance.json b/tests/production-export/production-coverage/packages/rust-std/parity/provenance.json index 38a9fc20b..0141e1425 100644 --- a/tests/production-export/production-coverage/packages/rust-std/parity/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-std/parity/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"6eec599d19aab86b6e6c59ee909f6f5478461263e25000e7bc26f67766ef73df","src/lib.rs":"ee4df1540df0d5da7ff6c5b6892f04280f4e6353416665713ae22eb49034238e"},"name":"parity","profile":"rust-std","program":"d80d8fa87a73970b99d0429236be199dba9bdbb4207a8c64505ec3f999bc2775","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"6eec599d19aab86b6e6c59ee909f6f5478461263e25000e7bc26f67766ef73df","src/lib.rs":"ee4df1540df0d5da7ff6c5b6892f04280f4e6353416665713ae22eb49034238e"},"name":"parity","profile":"rust-std","program":"d80d8fa87a73970b99d0429236be199dba9bdbb4207a8c64505ec3f999bc2775","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/records/package.json b/tests/production-export/production-coverage/packages/rust-std/records/package.json index 8a4c1eb0a..632b39af8 100644 --- a/tests/production-export/production-coverage/packages/rust-std/records/package.json +++ b/tests/production-export/production-coverage/packages/rust-std/records/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"records","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[{"kind":"nat"},{"kind":"nat"}]]}],"functions":[{"body":{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":2}},{"index":1,"kind":"field","value":{"function":1,"kind":"call","operands":[]}}],"operation":{"kind":"nat_add"}},{"function":2,"kind":"call","operands":[{"kind":"build","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":2}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"bound":{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},"kind":"let","name":2,"type":{"index":0,"kind":"adt"}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}},"parameters":[],"result":{"index":2,"kind":"adt"},"types":[]},{"body":{"index":0,"kind":"field","value":{"kind":"var","name":0}},"parameters":[0],"result":{"kind":"nat"},"types":[{"index":1,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"records","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[{"kind":"nat"},{"kind":"nat"}]]},{"constructors":[[{"kind":"nat"},{"kind":"nat"}]]}],"functions":[{"body":{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"index":0,"kind":"field","value":{"kind":"var","name":2}},{"index":1,"kind":"field","value":{"function":1,"kind":"call","operands":[]}}],"operation":{"kind":"nat_add"}},{"function":2,"kind":"call","operands":[{"kind":"build","operands":[{"index":1,"kind":"field","value":{"kind":"var","name":2}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":1,"kind":"adt"}}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"bound":{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},"kind":"let","name":2,"type":{"index":0,"kind":"adt"}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":2,"kind":"adt"}},"parameters":[],"result":{"index":2,"kind":"adt"},"types":[]},{"body":{"index":0,"kind":"field","value":{"kind":"var","name":0}},"parameters":[0],"result":{"kind":"nat"},"types":[{"index":1,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/records/provenance.json b/tests/production-export/production-coverage/packages/rust-std/records/provenance.json index ac0ef2eee..5a0c5e034 100644 --- a/tests/production-export/production-coverage/packages/rust-std/records/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-std/records/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"75a1f2726772f72e4e3d6999f4a2e57d1b02c3dfada582fcf741f36a7e68aab8","src/lib.rs":"606a29cf73c0c31afe69443d0c19db59767e93145d66f86c8509216927a9893f"},"name":"records","profile":"rust-std","program":"f6c459c7f8163810d05bc43460cd394578f415d182096e2ad51dae6252d4f656","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"75a1f2726772f72e4e3d6999f4a2e57d1b02c3dfada582fcf741f36a7e68aab8","src/lib.rs":"606a29cf73c0c31afe69443d0c19db59767e93145d66f86c8509216927a9893f"},"name":"records","profile":"rust-std","program":"f6c459c7f8163810d05bc43460cd394578f415d182096e2ad51dae6252d4f656","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/rewrite/package.json b/tests/production-export/production-coverage/packages/rust-std/rewrite/package.json index 6d7f43114..ee4080cd5 100644 --- a/tests/production-export/production-coverage/packages/rust-std/rewrite/package.json +++ b/tests/production-export/production-coverage/packages/rust-std/rewrite/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own"]}],"name":"rewrite","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"nat"}],[{"index":0,"kind":"adt"},{"index":0,"kind":"adt"}]]}],"functions":[{"body":{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},{"function":2,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":0,"kind":"adt"},"right":{"index":0,"kind":"adt"}}},"parameters":[0],"result":{"kind":"pair","left":{"index":0,"kind":"adt"},"right":{"index":0,"kind":"adt"}},"types":[{"index":0,"kind":"adt"}]},{"body":{"arms":[{"binders":[1],"body":{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},"shape":{"constructor":0,"kind":"adt"}},{"binders":[2,3],"body":{"arms":[{"binders":[4],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":4}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},{"function":1,"kind":"call","operands":[{"kind":"var","name":3}]}],"shape":{"constructor":1,"kind":"adt"},"type":{"index":0,"kind":"adt"}},"shape":{"constructor":0,"kind":"adt"}},{"binders":[5,6],"body":{"function":1,"kind":"call","operands":[{"kind":"build","operands":[{"kind":"var","name":5},{"kind":"build","operands":[{"kind":"var","name":6},{"kind":"var","name":3}],"shape":{"constructor":1,"kind":"adt"},"type":{"index":0,"kind":"adt"}}],"shape":{"constructor":1,"kind":"adt"},"type":{"index":0,"kind":"adt"}}]},"shape":{"constructor":1,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"index":0,"kind":"adt"}},"shape":{"constructor":1,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"index":0,"kind":"adt"}},"parameters":[0],"result":{"index":0,"kind":"adt"},"types":[{"index":0,"kind":"adt"}]},{"body":{"arms":[{"binders":[1],"body":{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},"shape":{"constructor":0,"kind":"adt"}},{"binders":[2,3],"body":{"arms":[{"binders":[4],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":3}]},"shape":{"constructor":0,"kind":"adt"}},{"binders":[5,6],"body":{"function":2,"kind":"call","operands":[{"kind":"build","operands":[{"kind":"var","name":5},{"kind":"var","name":3}],"shape":{"constructor":1,"kind":"adt"},"type":{"index":0,"kind":"adt"}}]},"shape":{"constructor":1,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"index":0,"kind":"adt"}},"shape":{"constructor":1,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"index":0,"kind":"adt"}},"parameters":[0],"result":{"index":0,"kind":"adt"},"types":[{"index":0,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own"]}],"name":"rewrite","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"nat"}],[{"index":0,"kind":"adt"},{"index":0,"kind":"adt"}]]}],"functions":[{"body":{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},{"function":2,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"index":0,"kind":"adt"},"right":{"index":0,"kind":"adt"}}},"parameters":[0],"result":{"kind":"pair","left":{"index":0,"kind":"adt"},"right":{"index":0,"kind":"adt"}},"types":[{"index":0,"kind":"adt"}]},{"body":{"arms":[{"binders":[1],"body":{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},"shape":{"constructor":0,"kind":"adt"}},{"binders":[2,3],"body":{"arms":[{"binders":[4],"body":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"var","name":4}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},{"function":1,"kind":"call","operands":[{"kind":"var","name":3}]}],"shape":{"constructor":1,"kind":"adt"},"type":{"index":0,"kind":"adt"}},"shape":{"constructor":0,"kind":"adt"}},{"binders":[5,6],"body":{"function":1,"kind":"call","operands":[{"kind":"build","operands":[{"kind":"var","name":5},{"kind":"build","operands":[{"kind":"var","name":6},{"kind":"var","name":3}],"shape":{"constructor":1,"kind":"adt"},"type":{"index":0,"kind":"adt"}}],"shape":{"constructor":1,"kind":"adt"},"type":{"index":0,"kind":"adt"}}]},"shape":{"constructor":1,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"index":0,"kind":"adt"}},"shape":{"constructor":1,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"index":0,"kind":"adt"}},"parameters":[0],"result":{"index":0,"kind":"adt"},"types":[{"index":0,"kind":"adt"}]},{"body":{"arms":[{"binders":[1],"body":{"kind":"build","operands":[{"kind":"var","name":1}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},"shape":{"constructor":0,"kind":"adt"}},{"binders":[2,3],"body":{"arms":[{"binders":[4],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":3}]},"shape":{"constructor":0,"kind":"adt"}},{"binders":[5,6],"body":{"function":2,"kind":"call","operands":[{"kind":"build","operands":[{"kind":"var","name":5},{"kind":"var","name":3}],"shape":{"constructor":1,"kind":"adt"},"type":{"index":0,"kind":"adt"}}]},"shape":{"constructor":1,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"index":0,"kind":"adt"}},"shape":{"constructor":1,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"index":0,"kind":"adt"}},"parameters":[0],"result":{"index":0,"kind":"adt"},"types":[{"index":0,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/rewrite/provenance.json b/tests/production-export/production-coverage/packages/rust-std/rewrite/provenance.json index eb4764f6b..783a2adcc 100644 --- a/tests/production-export/production-coverage/packages/rust-std/rewrite/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-std/rewrite/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"385a04bfd361768612fff077142ae59ca5552088bdc4df6d2c920d7079d5b569","src/lib.rs":"b5db01a7608d311f4b632fa5cc1d0bfacd05b2be85c939bf570ade65ba6b66b7"},"name":"rewrite","profile":"rust-std","program":"696084d3a568dde72c41261e20eb3e6dfc3055d9f56ddb2a9980a5b1eb061f89","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"385a04bfd361768612fff077142ae59ca5552088bdc4df6d2c920d7079d5b569","src/lib.rs":"b5db01a7608d311f4b632fa5cc1d0bfacd05b2be85c939bf570ade65ba6b66b7"},"name":"rewrite","profile":"rust-std","program":"696084d3a568dde72c41261e20eb3e6dfc3055d9f56ddb2a9980a5b1eb061f89","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/rose_total/package.json b/tests/production-export/production-coverage/packages/rust-std/rose_total/package.json index f37ca0074..7e15c7c22 100644 --- a/tests/production-export/production-coverage/packages/rust-std/rose_total/package.json +++ b/tests/production-export/production-coverage/packages/rust-std/rose_total/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"rose_total","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"nat"},{"element":{"index":0,"kind":"adt"},"kind":"list"}]]}],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}}]},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]},{"body":{"arms":[{"binders":[1,2],"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"function":2,"kind":"call","operands":[{"kind":"var","name":2}]}],"operation":{"kind":"nat_add"}},"shape":{"constructor":0,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"index":0,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"kind":"prim","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":1}]},{"function":2,"kind":"call","operands":[{"kind":"var","name":2}]}],"operation":{"kind":"nat_add"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"element":{"index":0,"kind":"adt"},"kind":"list"}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"rose_total","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"nat"},{"element":{"index":0,"kind":"adt"},"kind":"list"}]]}],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"index":0,"kind":"adt"},"kind":"list"}}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}}]},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]},{"body":{"arms":[{"binders":[1,2],"body":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"function":2,"kind":"call","operands":[{"kind":"var","name":2}]}],"operation":{"kind":"nat_add"}},"shape":{"constructor":0,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"index":0,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"kind":"prim","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":1}]},{"function":2,"kind":"call","operands":[{"kind":"var","name":2}]}],"operation":{"kind":"nat_add"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"element":{"index":0,"kind":"adt"},"kind":"list"}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/rose_total/provenance.json b/tests/production-export/production-coverage/packages/rust-std/rose_total/provenance.json index f7ed98f61..7cc4132c7 100644 --- a/tests/production-export/production-coverage/packages/rust-std/rose_total/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-std/rose_total/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"c0dc72188af676095b448d956e1239b374cac42b1af2de7e858291cbf5383863","src/lib.rs":"eb06a93dae2396dc20bd68830ea3f1742d699edfbbd07eac4dcd62ce7ee7db6d"},"name":"rose_total","profile":"rust-std","program":"023b87970dcc71c4e8be45aa676e75b9db5753e3da5f8ac416891d595dca8b41","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"c0dc72188af676095b448d956e1239b374cac42b1af2de7e858291cbf5383863","src/lib.rs":"eb06a93dae2396dc20bd68830ea3f1742d699edfbbd07eac4dcd62ce7ee7db6d"},"name":"rose_total","profile":"rust-std","program":"023b87970dcc71c4e8be45aa676e75b9db5753e3da5f8ac416891d595dca8b41","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/sequences/package.json b/tests/production-export/production-coverage/packages/rust-std/sequences/package.json index ae2aa68ee..4fef81153 100644 --- a/tests/production-export/production-coverage/packages/rust-std/sequences/package.json +++ b/tests/production-export/production-coverage/packages/rust-std/sequences/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own","own"]}],"name":"sequences","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"operation":{"kind":"append"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"0a","kind":"bytes"}}],"operation":{"kind":"append"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2}],"operation":{"kind":"index"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"index"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"slice"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"var","name":2}],"operation":{"kind":"slice"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"","kind":"bytes"}}],"operation":{"kind":"equal"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"equal"}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"operation":{"kind":"equal"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"bytes"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"bytes"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"bytes"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"bytes"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"bytes"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bytes"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"bytes"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"bytes"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"bytes"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"bytes"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"bytes"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}}}}}}},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"bytes"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own","own"]}],"name":"sequences","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"operation":{"kind":"append"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"0a","kind":"bytes"}}],"operation":{"kind":"append"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}}],"operation":{"kind":"nat_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2}],"operation":{"kind":"index"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"index"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"slice"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"var","name":2}],"operation":{"kind":"slice"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"","kind":"bytes"}}],"operation":{"kind":"equal"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"equal"}},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"operation":{"kind":"equal"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"bytes"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"bytes"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"bytes"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"bytes"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"bytes"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bytes"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"bytes"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"bytes"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"bytes"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"bytes"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"nat"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"nat"},"kind":"list"}},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"bytes"}},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"bool"}}}}}}}}},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"bytes"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/sequences/provenance.json b/tests/production-export/production-coverage/packages/rust-std/sequences/provenance.json index adff30c4f..f93d014a1 100644 --- a/tests/production-export/production-coverage/packages/rust-std/sequences/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-std/sequences/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"aa7298676d2c7b758270edff2ce45121c53239621d97fb162008201032ddfdeb","src/lib.rs":"8bd41d630b6aba27bb4e3ac28bf351ce079193639a4a6de2270bd0b3f63714f9"},"name":"sequences","profile":"rust-std","program":"c01fc096fdf4c89e91adb6928197ce32bcb7e42426af0487546f4edc98fd3702","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"aa7298676d2c7b758270edff2ce45121c53239621d97fb162008201032ddfdeb","src/lib.rs":"8bd41d630b6aba27bb4e3ac28bf351ce079193639a4a6de2270bd0b3f63714f9"},"name":"sequences","profile":"rust-std","program":"c01fc096fdf4c89e91adb6928197ce32bcb7e42426af0487546f4edc98fd3702","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/set_ops/package.json b/tests/production-export/production-coverage/packages/rust-std/set_ops/package.json index a8f0d0efc..596ad554c 100644 --- a/tests/production-export/production-coverage/packages/rust-std/set_ops/package.json +++ b/tests/production-export/production-coverage/packages/rust-std/set_ops/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":11,"name":"run","parameters":["own","own","own"]}],"name":"set_ops","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},{"kind":"build","operands":[{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},{"kind":"build","operands":[{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},{"kind":"build","operands":[{"function":4,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},{"kind":"build","operands":[{"function":6,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},{"kind":"build","operands":[{"function":8,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},{"kind":"var","name":0}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}}}}}}}},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":1,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":3},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":2,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":3,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":4,"kind":"call","operands":[{"function":5,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},{"kind":"var","name":3}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":5,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"var","name":2}]},"else_branch":{"function":6,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":2},{"function":6,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":7,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"var","name":2}]},"else_branch":{"kind":"build","operands":[{"kind":"var","name":2},{"function":8,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"kind":"cond","then_branch":{"function":8,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":9,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"function":10,"kind":"call","operands":[{"kind":"var","name":2}]}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}}}}}}}}}},"kind":"cond","then_branch":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":1}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}}}}}}}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":0,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":2}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}}}}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"option","value":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}}}}}}}}},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":11,"name":"run","parameters":["own","own","own"]}],"name":"set_ops","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},{"kind":"build","operands":[{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},{"kind":"build","operands":[{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},{"kind":"build","operands":[{"function":4,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},{"kind":"build","operands":[{"function":6,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},{"kind":"build","operands":[{"function":8,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},{"kind":"var","name":0}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}}}}}}}},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":1,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":3},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":2,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":3,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":4,"kind":"call","operands":[{"function":5,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},{"kind":"var","name":3}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":5,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"var","name":2}]},"else_branch":{"function":6,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":2},{"function":6,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":7,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"nat"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"condition":{"function":9,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"var","name":2}]},"else_branch":{"kind":"build","operands":[{"kind":"var","name":2},{"function":8,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"nat"},"kind":"list"}},"kind":"cond","then_branch":{"function":8,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"nat"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"nat"},"kind":"list"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":9,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"function":10,"kind":"call","operands":[{"kind":"var","name":2}]}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}}}}}}}}}},"kind":"cond","then_branch":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":1}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}}}}}}}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":0,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":2}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}}}}}}}}}}}},"parameters":[0,1,2],"result":{"kind":"option","value":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"bool"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"element":{"kind":"nat"},"kind":"list"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"nat"},"kind":"list"}}}}}}}}},"types":[{"element":{"kind":"nat"},"kind":"list"},{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/set_ops/provenance.json b/tests/production-export/production-coverage/packages/rust-std/set_ops/provenance.json index 8b273ee83..eceae4325 100644 --- a/tests/production-export/production-coverage/packages/rust-std/set_ops/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-std/set_ops/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":11,"name":"run"}],"files":{"Cargo.toml":"9cef623c27ac72b79e5d3195d80b594d76fe1a759d11955b293aa0332d7e27c9","src/lib.rs":"4ee0aced9c00e80999f82926c6c5479cb207c9f302457058066a7c59561f8be0"},"name":"set_ops","profile":"rust-std","program":"ff65cb9f421e37305a20ed392f155a0aabde61713d63520082effd9e2006231d","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":11,"name":"run"}],"files":{"Cargo.toml":"9cef623c27ac72b79e5d3195d80b594d76fe1a759d11955b293aa0332d7e27c9","src/lib.rs":"4ee0aced9c00e80999f82926c6c5479cb207c9f302457058066a7c59561f8be0"},"name":"set_ops","profile":"rust-std","program":"ff65cb9f421e37305a20ed392f155a0aabde61713d63520082effd9e2006231d","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/shapes/package.json b/tests/production-export/production-coverage/packages/rust-std/shapes/package.json index d3ac7bc7a..85dd9a88d 100644 --- a/tests/production-export/production-coverage/packages/rust-std/shapes/package.json +++ b/tests/production-export/production-coverage/packages/rust-std/shapes/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"shapes","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"nat"}],[{"kind":"nat"},{"kind":"nat"}],[]]}],"functions":[{"body":{"kind":"prim","operands":[{"function":1,"kind":"call","operands":[{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"shape":{"constructor":1,"kind":"adt"},"type":{"index":0,"kind":"adt"}}]},{"kind":"prim","operands":[{"function":1,"kind":"call","operands":[{"kind":"build","operands":[{"kind":"var","name":0}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}}]},{"function":1,"kind":"call","operands":[{"kind":"build","operands":[],"shape":{"constructor":2,"kind":"adt"},"type":{"index":0,"kind":"adt"}}]}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_add"}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[1],"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":1}],"operation":{"kind":"nat_mul"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_mul"}},"shape":{"constructor":0,"kind":"adt"}},{"binders":[2,3],"body":{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":3}],"operation":{"kind":"nat_mul"}},"shape":{"constructor":1,"kind":"adt"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"constructor":2,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"index":0,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"shapes","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"nat"}],[{"kind":"nat"},{"kind":"nat"}],[]]}],"functions":[{"body":{"kind":"prim","operands":[{"function":1,"kind":"call","operands":[{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"shape":{"constructor":1,"kind":"adt"},"type":{"index":0,"kind":"adt"}}]},{"kind":"prim","operands":[{"function":1,"kind":"call","operands":[{"kind":"build","operands":[{"kind":"var","name":0}],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}}]},{"function":1,"kind":"call","operands":[{"kind":"build","operands":[],"shape":{"constructor":2,"kind":"adt"},"type":{"index":0,"kind":"adt"}}]}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_add"}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[1],"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":1}],"operation":{"kind":"nat_mul"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_mul"}},"shape":{"constructor":0,"kind":"adt"}},{"binders":[2,3],"body":{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":3}],"operation":{"kind":"nat_mul"}},"shape":{"constructor":1,"kind":"adt"}},{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"constructor":2,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"index":0,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/shapes/provenance.json b/tests/production-export/production-coverage/packages/rust-std/shapes/provenance.json index fab0a55a0..cb6e1e348 100644 --- a/tests/production-export/production-coverage/packages/rust-std/shapes/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-std/shapes/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"9f2da6540473eb8c30328ec5522a3a0d931e34392c6720ac9842e96878fa8fd5","src/lib.rs":"b91119bec609c3dc5e31503329b9427d2589ee8baa289f5b2a14301fc2d685e5"},"name":"shapes","profile":"rust-std","program":"05293367c4a6e86e29d41974b883426e97957fbbc411382de01e1da3e41879c8","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"9f2da6540473eb8c30328ec5522a3a0d931e34392c6720ac9842e96878fa8fd5","src/lib.rs":"b91119bec609c3dc5e31503329b9427d2589ee8baa289f5b2a14301fc2d685e5"},"name":"shapes","profile":"rust-std","program":"05293367c4a6e86e29d41974b883426e97957fbbc411382de01e1da3e41879c8","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/string_graph/package.json b/tests/production-export/production-coverage/packages/rust-std/string_graph/package.json index afa973815..dd1c19c83 100644 --- a/tests/production-export/production-coverage/packages/rust-std/string_graph/package.json +++ b/tests/production-export/production-coverage/packages/rust-std/string_graph/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":15,"name":"run","parameters":["own"]}],"name":"string_graph","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},"parameters":[0],"result":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"string"},"right":{"element":{"kind":"string"},"kind":"list"}},"kind":"list"}]},{"body":{"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"string"},"kind":"list"}}]},"bound":{"function":6,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"string"},"kind":"list"}}]},"kind":"let","name":1,"type":{"element":{"kind":"string"},"kind":"list"}},"parameters":[0],"result":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"string"},"right":{"element":{"kind":"string"},"kind":"list"}},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"function":5,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"string"},"kind":"list"}}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[4,5],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}}},"shape":{"kind":"zero"}},{"binders":[6],"body":{"arms":[{"binders":[],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"function":5,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"string"},"kind":"list"}}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[7,8],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[9,10],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":6},{"function":12,"kind":"call","operands":[{"kind":"var","name":2},{"kind":"var","name":9}]},{"kind":"build","operands":[{"kind":"var","name":9},{"kind":"var","name":3}],"shape":{"kind":"cons"},"type":{"element":{"kind":"string"},"kind":"list"}}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2},{"kind":"var","name":2}]},"type":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}}},"parameters":[0,1,2,3],"result":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"string"},"right":{"element":{"kind":"string"},"kind":"list"}},"kind":"list"},{"kind":"nat"},{"element":{"kind":"string"},"kind":"list"},{"element":{"kind":"string"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"string"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"function":4,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":1}]},"else_branch":{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":4}]},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":3},{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":4}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"string"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"element":{"kind":"string"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"kind":"string"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"string"},"right":{"element":{"kind":"string"},"kind":"list"}},"kind":"list"},{"element":{"kind":"string"},"kind":"list"},{"element":{"kind":"string"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"function":11,"kind":"call","operands":[{"function":9,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3}]},{"kind":"var","name":1}]},"else_branch":{"function":4,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":4}]},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}},"parameters":[0,1,2],"result":{"kind":"bool"},"types":[{"element":{"kind":"pair","left":{"kind":"string"},"right":{"element":{"kind":"string"},"kind":"list"}},"kind":"list"},{"kind":"string"},{"element":{"kind":"string"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":5,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"var","name":1}],"shape":{"kind":"cons"},"type":{"element":{"kind":"string"},"kind":"list"}}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"string"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"string"},"kind":"list"},"types":[{"element":{"kind":"string"},"kind":"list"},{"element":{"kind":"string"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":6,"kind":"call","operands":[{"kind":"var","name":3},{"function":7,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":2}},{"function":8,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}]}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"string"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"string"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"string"},"right":{"element":{"kind":"string"},"kind":"list"}},"kind":"list"},{"element":{"kind":"string"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":7,"kind":"call","operands":[{"kind":"var","name":3},{"function":8,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"var","name":2}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"string"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"string"},"kind":"list"},"types":[{"element":{"kind":"string"},"kind":"list"},{"element":{"kind":"string"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"string"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"string"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"string"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":8,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"string"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"string"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"string"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"string"},"kind":"list"},"types":[{"element":{"kind":"string"},"kind":"list"},{"kind":"string"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"string"},"kind":"list"}},"shape":{"kind":"none"}},{"binders":[2],"body":{"kind":"var","name":2},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":10,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"element":{"kind":"string"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"string"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"string"},"right":{"element":{"kind":"string"},"kind":"list"}},"kind":"list"},{"kind":"string"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":2}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":10,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}}},"parameters":[0,1],"result":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"string"},"right":{"element":{"kind":"string"},"kind":"list"}},"kind":"list"},{"kind":"string"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":11,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"element":{"kind":"string"},"kind":"list"},{"kind":"string"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"string"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":3},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":12,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"string"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"string"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"string"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"string"},"kind":"list"},"types":[{"element":{"kind":"string"},"kind":"list"},{"kind":"string"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"condition":{"function":14,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":1}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":1}},{"kind":"first","value":{"kind":"var","name":3}}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"function":13,"kind":"call","operands":[{"kind":"var","name":2}]}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"element":{"kind":"pair","left":{"kind":"string"},"right":{"element":{"kind":"string"},"kind":"list"}},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"function":14,"kind":"call","operands":[{"kind":"var","name":2}]}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"element":{"kind":"string"},"kind":"list"}]},{"body":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":0,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}}}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}}},"types":[{"element":{"kind":"pair","left":{"kind":"string"},"right":{"element":{"kind":"string"},"kind":"list"}},"kind":"list"}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":15,"name":"run","parameters":["own"]}],"name":"string_graph","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},"parameters":[0],"result":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"string"},"right":{"element":{"kind":"string"},"kind":"list"}},"kind":"list"}]},{"body":{"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"string"},"kind":"list"}}]},"bound":{"function":6,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"string"},"kind":"list"}}]},"kind":"let","name":1,"type":{"element":{"kind":"string"},"kind":"list"}},"parameters":[0],"result":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"string"},"right":{"element":{"kind":"string"},"kind":"list"}},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"function":5,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"string"},"kind":"list"}}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[4,5],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}}},"shape":{"kind":"zero"}},{"binders":[6],"body":{"arms":[{"binders":[],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"function":5,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"string"},"kind":"list"}}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[7,8],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[9,10],"body":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":6},{"function":12,"kind":"call","operands":[{"kind":"var","name":2},{"kind":"var","name":9}]},{"kind":"build","operands":[{"kind":"var","name":9},{"kind":"var","name":3}],"shape":{"kind":"cons"},"type":{"element":{"kind":"string"},"kind":"list"}}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2},{"kind":"var","name":2}]},"type":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}}},"parameters":[0,1,2,3],"result":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"string"},"right":{"element":{"kind":"string"},"kind":"list"}},"kind":"list"},{"kind":"nat"},{"element":{"kind":"string"},"kind":"list"},{"element":{"kind":"string"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"string"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"function":4,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":1}]},"else_branch":{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":4}]},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":3},{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":4}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"string"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"element":{"kind":"string"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"kind":"string"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"string"},"right":{"element":{"kind":"string"},"kind":"list"}},"kind":"list"},{"element":{"kind":"string"},"kind":"list"},{"element":{"kind":"string"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"function":11,"kind":"call","operands":[{"function":9,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3}]},{"kind":"var","name":1}]},"else_branch":{"function":4,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":4}]},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}},"parameters":[0,1,2],"result":{"kind":"bool"},"types":[{"element":{"kind":"pair","left":{"kind":"string"},"right":{"element":{"kind":"string"},"kind":"list"}},"kind":"list"},{"kind":"string"},{"element":{"kind":"string"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":5,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"var","name":1}],"shape":{"kind":"cons"},"type":{"element":{"kind":"string"},"kind":"list"}}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"string"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"string"},"kind":"list"},"types":[{"element":{"kind":"string"},"kind":"list"},{"element":{"kind":"string"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":6,"kind":"call","operands":[{"kind":"var","name":3},{"function":7,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":2}},{"function":8,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}]}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"string"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"string"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"string"},"right":{"element":{"kind":"string"},"kind":"list"}},"kind":"list"},{"element":{"kind":"string"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"function":7,"kind":"call","operands":[{"kind":"var","name":3},{"function":8,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"var","name":2}]}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"string"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"string"},"kind":"list"},"types":[{"element":{"kind":"string"},"kind":"list"},{"element":{"kind":"string"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"string"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"string"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"string"},"kind":"list"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":8,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"string"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"string"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"string"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"string"},"kind":"list"},"types":[{"element":{"kind":"string"},"kind":"list"},{"kind":"string"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"string"},"kind":"list"}},"shape":{"kind":"none"}},{"binders":[2],"body":{"kind":"var","name":2},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"function":10,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"element":{"kind":"string"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"string"},"kind":"list"},"types":[{"element":{"kind":"pair","left":{"kind":"string"},"right":{"element":{"kind":"string"},"kind":"list"}},"kind":"list"},{"kind":"string"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"second","value":{"kind":"var","name":2}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":10,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"first","value":{"kind":"var","name":2}}],"operation":{"kind":"compare"}},"type":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}}},"parameters":[0,1],"result":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}},"types":[{"element":{"kind":"pair","left":{"kind":"string"},"right":{"element":{"kind":"string"},"kind":"list"}},"kind":"list"},{"kind":"string"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"function":11,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"element":{"kind":"string"},"kind":"list"},{"kind":"string"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"string"},"kind":"list"}},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"arms":[{"binders":[],"body":{"kind":"var","name":0},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"var","name":3},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"function":12,"kind":"call","operands":[{"kind":"var","name":3},{"kind":"var","name":1}]}],"shape":{"kind":"cons"},"type":{"element":{"kind":"string"},"kind":"list"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"compare"}},"type":{"element":{"kind":"string"},"kind":"list"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"element":{"kind":"string"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"string"},"kind":"list"},"types":[{"element":{"kind":"string"},"kind":"list"},{"kind":"string"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"condition":{"function":14,"kind":"call","operands":[{"kind":"second","value":{"kind":"var","name":1}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"first","value":{"kind":"var","name":1}},{"kind":"first","value":{"kind":"var","name":3}}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"function":13,"kind":"call","operands":[{"kind":"var","name":2}]}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"element":{"kind":"pair","left":{"kind":"string"},"right":{"element":{"kind":"string"},"kind":"list"}},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"condition":{"arms":[{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}},"shape":{"kind":"lt"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"eq"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"gt"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"operation":{"kind":"compare"}},"type":{"kind":"bool"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"function":14,"kind":"call","operands":[{"kind":"var","name":2}]}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"bool"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"bool"}},"parameters":[0],"result":{"kind":"bool"},"types":[{"element":{"kind":"string"},"kind":"list"}]},{"body":{"condition":{"function":13,"kind":"call","operands":[{"kind":"var","name":0}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"function":0,"kind":"call","operands":[{"kind":"var","name":0}]}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}}}}},"parameters":[0],"result":{"kind":"option","value":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}}},"types":[{"element":{"kind":"pair","left":{"kind":"string"},"right":{"element":{"kind":"string"},"kind":"list"}},"kind":"list"}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/string_graph/provenance.json b/tests/production-export/production-coverage/packages/rust-std/string_graph/provenance.json index 2ac6ee2ce..14c785f0b 100644 --- a/tests/production-export/production-coverage/packages/rust-std/string_graph/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-std/string_graph/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":15,"name":"run"}],"files":{"Cargo.toml":"8309d0c12333a77366606152fa5e7fe1e3557cbadf25b7bb1c65141f372c670f","src/lib.rs":"39b5a659c4e5b22ffb198a522eadd0c384d9c68b778d62c00d6acd3a406b10b2"},"name":"string_graph","profile":"rust-std","program":"bbf596ebb9eca8da32bc60cf81d5aed9f971a815f74ed865dc65f5b5acd7c475","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":15,"name":"run"}],"files":{"Cargo.toml":"8309d0c12333a77366606152fa5e7fe1e3557cbadf25b7bb1c65141f372c670f","src/lib.rs":"39b5a659c4e5b22ffb198a522eadd0c384d9c68b778d62c00d6acd3a406b10b2"},"name":"string_graph","profile":"rust-std","program":"bbf596ebb9eca8da32bc60cf81d5aed9f971a815f74ed865dc65f5b5acd7c475","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/syntax_total/package.json b/tests/production-export/production-coverage/packages/rust-std/syntax_total/package.json index 80e7635c5..c1c575ad1 100644 --- a/tests/production-export/production-coverage/packages/rust-std/syntax_total/package.json +++ b/tests/production-export/production-coverage/packages/rust-std/syntax_total/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"syntax_total","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"nat"}],[{"index":0,"kind":"adt"},{"index":0,"kind":"adt"}],[{"element":{"index":1,"kind":"adt"},"kind":"list"},{"index":0,"kind":"adt"}]]},{"constructors":[[{"kind":"string"},{"index":0,"kind":"adt"}],[{"index":1,"kind":"adt"},{"index":1,"kind":"adt"}]]}],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},"parameters":[0],"result":{"kind":"nat"},"types":[{"index":0,"kind":"adt"}]},{"body":{"arms":[{"binders":[1],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},"shape":{"constructor":0,"kind":"adt"}},{"binders":[2,3],"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":2}]},{"function":1,"kind":"call","operands":[{"kind":"var","name":3}]}],"operation":{"kind":"nat_add"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},"shape":{"constructor":1,"kind":"adt"}},{"binders":[4,5],"body":{"kind":"prim","operands":[{"function":2,"kind":"call","operands":[{"kind":"var","name":4}]},{"function":1,"kind":"call","operands":[{"kind":"var","name":5}]}],"operation":{"kind":"nat_add"}},"shape":{"constructor":2,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"index":0,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"kind":"prim","operands":[{"function":3,"kind":"call","operands":[{"kind":"var","name":1}]},{"function":2,"kind":"call","operands":[{"kind":"var","name":2}]}],"operation":{"kind":"nat_add"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"element":{"index":1,"kind":"adt"},"kind":"list"}]},{"body":{"arms":[{"binders":[1,2],"body":{"kind":"prim","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":2}]},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},"shape":{"constructor":0,"kind":"adt"}},{"binders":[3,4],"body":{"kind":"prim","operands":[{"function":3,"kind":"call","operands":[{"kind":"var","name":3}]},{"function":3,"kind":"call","operands":[{"kind":"var","name":4}]}],"operation":{"kind":"nat_add"}},"shape":{"constructor":1,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"index":1,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"syntax_total","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"nat"}],[{"index":0,"kind":"adt"},{"index":0,"kind":"adt"}],[{"element":{"index":1,"kind":"adt"},"kind":"list"},{"index":0,"kind":"adt"}]]},{"constructors":[[{"kind":"string"},{"index":0,"kind":"adt"}],[{"index":1,"kind":"adt"},{"index":1,"kind":"adt"}]]}],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},"parameters":[0],"result":{"kind":"nat"},"types":[{"index":0,"kind":"adt"}]},{"body":{"arms":[{"binders":[1],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}},"shape":{"constructor":0,"kind":"adt"}},{"binders":[2,3],"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":2}]},{"function":1,"kind":"call","operands":[{"kind":"var","name":3}]}],"operation":{"kind":"nat_add"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},"shape":{"constructor":1,"kind":"adt"}},{"binders":[4,5],"body":{"kind":"prim","operands":[{"function":2,"kind":"call","operands":[{"kind":"var","name":4}]},{"function":1,"kind":"call","operands":[{"kind":"var","name":5}]}],"operation":{"kind":"nat_add"}},"shape":{"constructor":2,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"index":0,"kind":"adt"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"kind":"prim","operands":[{"function":3,"kind":"call","operands":[{"kind":"var","name":1}]},{"function":2,"kind":"call","operands":[{"kind":"var","name":2}]}],"operation":{"kind":"nat_add"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"element":{"index":1,"kind":"adt"},"kind":"list"}]},{"body":{"arms":[{"binders":[1,2],"body":{"kind":"prim","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":2}]},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},"shape":{"constructor":0,"kind":"adt"}},{"binders":[3,4],"body":{"kind":"prim","operands":[{"function":3,"kind":"call","operands":[{"kind":"var","name":3}]},{"function":3,"kind":"call","operands":[{"kind":"var","name":4}]}],"operation":{"kind":"nat_add"}},"shape":{"constructor":1,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"index":1,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/syntax_total/provenance.json b/tests/production-export/production-coverage/packages/rust-std/syntax_total/provenance.json index 6dfad4be6..fbd84b4dd 100644 --- a/tests/production-export/production-coverage/packages/rust-std/syntax_total/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-std/syntax_total/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"3af3d260c8a7a536d3b4356bf86216ede694c8c1a9c668e89673e25e9e784112","src/lib.rs":"4eff2069f487785324288a06eac2ec67807eeef02564e7b6796656aa84f6f349"},"name":"syntax_total","profile":"rust-std","program":"0b283960a85e885aef98cffde5a37a5840fe6905cb960332eb57755a9f588e7b","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"3af3d260c8a7a536d3b4356bf86216ede694c8c1a9c668e89673e25e9e784112","src/lib.rs":"4eff2069f487785324288a06eac2ec67807eeef02564e7b6796656aa84f6f349"},"name":"syntax_total","profile":"rust-std","program":"0b283960a85e885aef98cffde5a37a5840fe6905cb960332eb57755a9f588e7b","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/text/package.json b/tests/production-export/production-coverage/packages/rust-std/text/package.json index 5dead56d4..2947161ec 100644 --- a/tests/production-export/production-coverage/packages/rust-std/text/package.json +++ b/tests/production-export/production-coverage/packages/rust-std/text/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"text","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":2}],"operation":{"kind":"utf8_decode"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"00ff","kind":"bytes"}}],"operation":{"kind":"compare_bytes"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"4"}}],"operation":{"kind":"split_exact"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"build","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"x\"y"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"string"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"string"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"string"},"kind":"list"}},{"kind":"var","name":1}],"operation":{"kind":"join"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"equal"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":2}],"operation":{"kind":"compare_bytes"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"","kind":"bytes"}},{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"01","kind":"bytes"}}],"operation":{"kind":"compare_bytes"}}],"operation":{"kind":"equal"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}},"right":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"ordering"},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}},"right":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"string"}},"right":{"kind":"pair","left":{"kind":"ordering"},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}},"right":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bytes"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"string"}},"right":{"kind":"pair","left":{"kind":"ordering"},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}},"right":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}}}}}}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"utf8_encode"}},"kind":"let","name":2,"type":{"kind":"bytes"}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"bytes"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"string"}},"right":{"kind":"pair","left":{"kind":"ordering"},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}},"right":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}}}}}},"types":[{"kind":"string"},{"kind":"string"}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"text","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":2}],"operation":{"kind":"utf8_decode"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"00ff","kind":"bytes"}}],"operation":{"kind":"compare_bytes"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"value","type":{"kind":"fixed","width":"u32"},"value":{"kind":"u32","value":"4"}}],"operation":{"kind":"split_exact"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"build","operands":[{"kind":"value","type":{"kind":"string"},"value":{"kind":"string","value":"x\"y"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"string"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"string"},"kind":"list"}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"string"},"kind":"list"}},{"kind":"var","name":1}],"operation":{"kind":"join"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"equal"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":2}],"operation":{"kind":"compare_bytes"}},{"kind":"prim","operands":[{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"","kind":"bytes"}},{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"01","kind":"bytes"}}],"operation":{"kind":"compare_bytes"}}],"operation":{"kind":"equal"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}},"right":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"ordering"},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}},"right":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"option","value":{"kind":"string"}},"right":{"kind":"pair","left":{"kind":"ordering"},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}},"right":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}}}}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"bytes"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"string"}},"right":{"kind":"pair","left":{"kind":"ordering"},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}},"right":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}}}}}}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"utf8_encode"}},"kind":"let","name":2,"type":{"kind":"bytes"}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"bytes"},"right":{"kind":"pair","left":{"kind":"option","value":{"kind":"string"}},"right":{"kind":"pair","left":{"kind":"ordering"},"right":{"kind":"pair","left":{"kind":"option","value":{"element":{"kind":"string"},"kind":"list"}},"right":{"kind":"pair","left":{"kind":"string"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}}}}}},"types":[{"kind":"string"},{"kind":"string"}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/text/provenance.json b/tests/production-export/production-coverage/packages/rust-std/text/provenance.json index 454da823b..33431e788 100644 --- a/tests/production-export/production-coverage/packages/rust-std/text/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-std/text/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"85db331d2126ced03d3a6263139dbbca63768a36da3535c353c177a56d64ee63","src/lib.rs":"b05d4565bd2dc0d31ae405d3fb2a6e9f04e34d04b88b72eb6ca8d0e55fca832b"},"name":"text","profile":"rust-std","program":"54080023d9f656975c8d23e285159c2f80184d9c38941ebdeb9b115207eaea0f","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"85db331d2126ced03d3a6263139dbbca63768a36da3535c353c177a56d64ee63","src/lib.rs":"b05d4565bd2dc0d31ae405d3fb2a6e9f04e34d04b88b72eb6ca8d0e55fca832b"},"name":"text","profile":"rust-std","program":"54080023d9f656975c8d23e285159c2f80184d9c38941ebdeb9b115207eaea0f","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/tree_total/package.json b/tests/production-export/production-coverage/packages/rust-std/tree_total/package.json index 5c55589ed..9bffa5d18 100644 --- a/tests/production-export/production-coverage/packages/rust-std/tree_total/package.json +++ b/tests/production-export/production-coverage/packages/rust-std/tree_total/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"tree_total","profile":"rust-std","program":{"adts":[{"constructors":[[],[{"index":0,"kind":"adt"},{"kind":"nat"},{"index":0,"kind":"adt"}]]}],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},{"kind":"var","name":0},{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"5"}},{"kind":"build","operands":[],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}}],"shape":{"constructor":1,"kind":"adt"},"type":{"index":0,"kind":"adt"}}],"shape":{"constructor":1,"kind":"adt"},"type":{"index":0,"kind":"adt"}}]},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"constructor":0,"kind":"adt"}},{"binders":[1,2,3],"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":1}]},{"kind":"var","name":2}],"operation":{"kind":"nat_add"}},{"function":1,"kind":"call","operands":[{"kind":"var","name":3}]}],"operation":{"kind":"nat_add"}},"shape":{"constructor":1,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"index":0,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"tree_total","profile":"rust-std","program":{"adts":[{"constructors":[[],[{"index":0,"kind":"adt"},{"kind":"nat"},{"index":0,"kind":"adt"}]]}],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},{"kind":"var","name":0},{"kind":"build","operands":[{"kind":"build","operands":[],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"5"}},{"kind":"build","operands":[],"shape":{"constructor":0,"kind":"adt"},"type":{"index":0,"kind":"adt"}}],"shape":{"constructor":1,"kind":"adt"},"type":{"index":0,"kind":"adt"}}],"shape":{"constructor":1,"kind":"adt"},"type":{"index":0,"kind":"adt"}}]},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"constructor":0,"kind":"adt"}},{"binders":[1,2,3],"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":1}]},{"kind":"var","name":2}],"operation":{"kind":"nat_add"}},{"function":1,"kind":"call","operands":[{"kind":"var","name":3}]}],"operation":{"kind":"nat_add"}},"shape":{"constructor":1,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"index":0,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/tree_total/provenance.json b/tests/production-export/production-coverage/packages/rust-std/tree_total/provenance.json index c5d674bc3..9f4e171a0 100644 --- a/tests/production-export/production-coverage/packages/rust-std/tree_total/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-std/tree_total/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"ae25e88a1e094fbdd0952114f0621e20767e9394b73815fcd4da238711b33c78","src/lib.rs":"58120ca1ac6217d63c5969d6f5314d526b4b340e11d5dc6886af1f2296b33375"},"name":"tree_total","profile":"rust-std","program":"43b6eedb7829b3598a29348c532e07d70295631eb2650df5de98d38c3daccb35","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"ae25e88a1e094fbdd0952114f0621e20767e9394b73815fcd4da238711b33c78","src/lib.rs":"58120ca1ac6217d63c5969d6f5314d526b4b340e11d5dc6886af1f2296b33375"},"name":"tree_total","profile":"rust-std","program":"43b6eedb7829b3598a29348c532e07d70295631eb2650df5de98d38c3daccb35","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/well_founded/package.json b/tests/production-export/production-coverage/packages/rust-std/well_founded/package.json index c7cf8893a..8c7872836 100644 --- a/tests/production-export/production-coverage/packages/rust-std/well_founded/package.json +++ b/tests/production-export/production-coverage/packages/rust-std/well_founded/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"well_founded","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}]},{"kind":"build","operands":[{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"var","name":1}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"function":1,"kind":"call","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_sub"}},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}]},"kind":"cond","then_branch":{"kind":"var","name":1}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"nat_lt"}},"else_branch":{"function":2,"kind":"call","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"nat_sub"}},{"kind":"var","name":1}]},"kind":"cond","then_branch":{"kind":"var","name":0}},"kind":"cond","then_branch":{"kind":"var","name":0}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"var","name":2},"kind":"cond","then_branch":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":1}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}},"else_branch":{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"var","name":2}]},"kind":"cond","then_branch":{"kind":"var","name":1}}},"parameters":[0,1,2],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"well_founded","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"build","operands":[{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}]},{"kind":"build","operands":[{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"var","name":1}]}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}}},"parameters":[0,1],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"nat"}}},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"function":1,"kind":"call","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_sub"}},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}]},"kind":"cond","then_branch":{"kind":"var","name":1}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}],"operation":{"kind":"nat_eq"}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"nat_lt"}},"else_branch":{"function":2,"kind":"call","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"nat_sub"}},{"kind":"var","name":1}]},"kind":"cond","then_branch":{"kind":"var","name":0}},"kind":"cond","then_branch":{"kind":"var","name":0}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"var","name":2},"kind":"cond","then_branch":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":1}],"operation":{"kind":"nat_add"}}],"operation":{"kind":"nat_le"}},"else_branch":{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"var","name":2}]},"kind":"cond","then_branch":{"kind":"var","name":1}}},"parameters":[0,1,2],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production-coverage/packages/rust-std/well_founded/provenance.json b/tests/production-export/production-coverage/packages/rust-std/well_founded/provenance.json index 990769276..7542ca768 100644 --- a/tests/production-export/production-coverage/packages/rust-std/well_founded/provenance.json +++ b/tests/production-export/production-coverage/packages/rust-std/well_founded/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"0c780ccff965ccc10faa78b2714b324aa2f72bb88aedc1f0632079faded0b0d8","src/lib.rs":"f7b88a805108f63fc65b351432801b4521e37655461926bc3f6b254896d38e62"},"name":"well_founded","profile":"rust-std","program":"a30548452b5811cfc83abdc547d7e93bbdfaf6ae193442225eed19b212b84e5d","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f3572b43e36d5c62b7601d32507ebc3a788577fc4d0c7169b88b91dd52b57ddd"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"0c780ccff965ccc10faa78b2714b324aa2f72bb88aedc1f0632079faded0b0d8","src/lib.rs":"f7b88a805108f63fc65b351432801b4521e37655461926bc3f6b254896d38e62"},"name":"well_founded","profile":"rust-std","program":"a30548452b5811cfc83abdc547d7e93bbdfaf6ae193442225eed19b212b84e5d","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["e05bf7cb47aac48ea11c4a7ac75c79629a9a4e141d82abe0f652f6e6717009ef"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production/packages/rust-core/checked_sum/package.json b/tests/production-export/production/packages/rust-core/checked_sum/package.json index d844fbb12..a7461cdcf 100644 --- a/tests/production-export/production/packages/rust-core/checked_sum/package.json +++ b/tests/production-export/production/packages/rust-core/checked_sum/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"checked_sum","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"types":[{"kind":"fixed","width":"u32"},{"kind":"fixed","width":"u32"}]}],"spec":"lexlean/target-program/1"},"sources":["ecf58505f4e2844618eff0bdc9a2ce9dcf5d0a65b1a68627116a7fd4d4a29a8b"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"checked_sum","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"types":[{"kind":"fixed","width":"u32"},{"kind":"fixed","width":"u32"}]}],"spec":"lexlean/target-program/1"},"sources":["f5a58e441acc8b93ded11826c51cc7c8399ec177e079787a9b6551789ce1cab8"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production/packages/rust-core/checked_sum/provenance.json b/tests/production-export/production/packages/rust-core/checked_sum/provenance.json index 101bd7918..ad015d152 100644 --- a/tests/production-export/production/packages/rust-core/checked_sum/provenance.json +++ b/tests/production-export/production/packages/rust-core/checked_sum/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"d2642abd4556782d8a017a0a6b2cfb4bdec3858040ce0f535f3a44d5dcf9de6a","src/lib.rs":"9b5570739b12d66a09de99dcdadc4cd439838b21c543e654417a6dba78f0aba6"},"name":"checked_sum","profile":"rust-core","program":"938b367cd5b23f8fb66adc8d4520333ff0e34954395668d2e3b072af86ad3216","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["ecf58505f4e2844618eff0bdc9a2ce9dcf5d0a65b1a68627116a7fd4d4a29a8b"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"d2642abd4556782d8a017a0a6b2cfb4bdec3858040ce0f535f3a44d5dcf9de6a","src/lib.rs":"9b5570739b12d66a09de99dcdadc4cd439838b21c543e654417a6dba78f0aba6"},"name":"checked_sum","profile":"rust-core","program":"938b367cd5b23f8fb66adc8d4520333ff0e34954395668d2e3b072af86ad3216","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["f5a58e441acc8b93ded11826c51cc7c8399ec177e079787a9b6551789ce1cab8"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production/packages/rust-core/halvings/package.json b/tests/production-export/production/packages/rust-core/halvings/package.json index 61eda1d7f..3dc9fe4d9 100644 --- a/tests/production-export/production/packages/rust-core/halvings/package.json +++ b/tests/production-export/production/packages/rust-core/halvings/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"halvings","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}]},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"function":1,"kind":"call","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_sub"}},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}]},"kind":"cond","then_branch":{"kind":"var","name":1}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["ecf58505f4e2844618eff0bdc9a2ce9dcf5d0a65b1a68627116a7fd4d4a29a8b"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"halvings","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}]},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"function":1,"kind":"call","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_sub"}},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}]},"kind":"cond","then_branch":{"kind":"var","name":1}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["f5a58e441acc8b93ded11826c51cc7c8399ec177e079787a9b6551789ce1cab8"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production/packages/rust-core/halvings/provenance.json b/tests/production-export/production/packages/rust-core/halvings/provenance.json index d602678a8..add071c31 100644 --- a/tests/production-export/production/packages/rust-core/halvings/provenance.json +++ b/tests/production-export/production/packages/rust-core/halvings/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"5ce9a4750afc2319c429f0c99580235916a3572af40fc079449063d4d7d64b9d","src/lib.rs":"db9a71f74e30ecb581b7ac2688e7277d0b6c2dc369925b1ccf67223b0967ccd6"},"name":"halvings","profile":"rust-core","program":"4e73456e09ab92d80df1297c17a2a129e17822ff1c88cc30ec946ac7b5d21df3","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["ecf58505f4e2844618eff0bdc9a2ce9dcf5d0a65b1a68627116a7fd4d4a29a8b"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"5ce9a4750afc2319c429f0c99580235916a3572af40fc079449063d4d7d64b9d","src/lib.rs":"db9a71f74e30ecb581b7ac2688e7277d0b6c2dc369925b1ccf67223b0967ccd6"},"name":"halvings","profile":"rust-core","program":"4e73456e09ab92d80df1297c17a2a129e17822ff1c88cc30ec946ac7b5d21df3","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["f5a58e441acc8b93ded11826c51cc7c8399ec177e079787a9b6551789ce1cab8"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production/packages/rust-core/quadruple/package.json b/tests/production-export/production/packages/rust-core/quadruple/package.json index 12b2a4547..6a704e02c 100644 --- a/tests/production-export/production/packages/rust-core/quadruple/package.json +++ b/tests/production-export/production/packages/rust-core/quadruple/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"quadruple","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"captures":[],"function":2,"kind":"closure"},{"kind":"var","name":0}]},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]},{"body":{"kind":"apply","operands":[{"kind":"apply","operands":[{"kind":"var","name":1}],"target":{"kind":"var","name":0}}],"target":{"kind":"var","name":0}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":0}],"operation":{"kind":"nat_add"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["ecf58505f4e2844618eff0bdc9a2ce9dcf5d0a65b1a68627116a7fd4d4a29a8b"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"quadruple","profile":"rust-core","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"captures":[],"function":2,"kind":"closure"},{"kind":"var","name":0}]},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]},{"body":{"kind":"apply","operands":[{"kind":"apply","operands":[{"kind":"var","name":1}],"target":{"kind":"var","name":0}}],"target":{"kind":"var","name":0}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":0}],"operation":{"kind":"nat_add"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["f5a58e441acc8b93ded11826c51cc7c8399ec177e079787a9b6551789ce1cab8"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production/packages/rust-core/quadruple/provenance.json b/tests/production-export/production/packages/rust-core/quadruple/provenance.json index 2044d836f..a165195cf 100644 --- a/tests/production-export/production/packages/rust-core/quadruple/provenance.json +++ b/tests/production-export/production/packages/rust-core/quadruple/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"ce430c8cfa11725511655d377de19ff244bde5bf904cda9aa11454e0d20da660","src/lib.rs":"efcdcd2e203664aa67d6f9b0a87984c6e9b12f248be84c1b7299e334561b261a"},"name":"quadruple","profile":"rust-core","program":"6853b4945864259f1da2a6fc5277607d3e4c3c725d8be3dfd7cd38000ab16928","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["ecf58505f4e2844618eff0bdc9a2ce9dcf5d0a65b1a68627116a7fd4d4a29a8b"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"ce430c8cfa11725511655d377de19ff244bde5bf904cda9aa11454e0d20da660","src/lib.rs":"efcdcd2e203664aa67d6f9b0a87984c6e9b12f248be84c1b7299e334561b261a"},"name":"quadruple","profile":"rust-core","program":"6853b4945864259f1da2a6fc5277607d3e4c3c725d8be3dfd7cd38000ab16928","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["f5a58e441acc8b93ded11826c51cc7c8399ec177e079787a9b6551789ce1cab8"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production/packages/rust-core/shape_area/package.json b/tests/production-export/production/packages/rust-core/shape_area/package.json index deab4d243..b99d5b850 100644 --- a/tests/production-export/production/packages/rust-core/shape_area/package.json +++ b/tests/production-export/production/packages/rust-core/shape_area/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"shape_area","profile":"rust-core","program":{"adts":[{"constructors":[[{"kind":"nat"}],[{"kind":"nat"},{"kind":"nat"}]]}],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"shape":{"constructor":1,"kind":"adt"},"type":{"index":0,"kind":"adt"}}]},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[1],"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":1}],"operation":{"kind":"nat_mul"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_mul"}},"shape":{"constructor":0,"kind":"adt"}},{"binders":[2,3],"body":{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":3}],"operation":{"kind":"nat_mul"}},"shape":{"constructor":1,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"index":0,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["ecf58505f4e2844618eff0bdc9a2ce9dcf5d0a65b1a68627116a7fd4d4a29a8b"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"shape_area","profile":"rust-core","program":{"adts":[{"constructors":[[{"kind":"nat"}],[{"kind":"nat"},{"kind":"nat"}]]}],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"shape":{"constructor":1,"kind":"adt"},"type":{"index":0,"kind":"adt"}}]},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[1],"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":1}],"operation":{"kind":"nat_mul"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_mul"}},"shape":{"constructor":0,"kind":"adt"}},{"binders":[2,3],"body":{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":3}],"operation":{"kind":"nat_mul"}},"shape":{"constructor":1,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"index":0,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["f5a58e441acc8b93ded11826c51cc7c8399ec177e079787a9b6551789ce1cab8"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production/packages/rust-core/shape_area/provenance.json b/tests/production-export/production/packages/rust-core/shape_area/provenance.json index b15ec18d4..17f411222 100644 --- a/tests/production-export/production/packages/rust-core/shape_area/provenance.json +++ b/tests/production-export/production/packages/rust-core/shape_area/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"683aa9bf20d061b2173baf56bc15458181e14c259970edff7f60eb310b93df8f","src/lib.rs":"d9fb377859859c89d489754c8138f5b238157b6f75bda86fdce267925e10732c"},"name":"shape_area","profile":"rust-core","program":"f21fc970908e57448e4db7c06bf2b57fee84f4b8734cbbf1ac327c6ee4ab6215","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["ecf58505f4e2844618eff0bdc9a2ce9dcf5d0a65b1a68627116a7fd4d4a29a8b"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"683aa9bf20d061b2173baf56bc15458181e14c259970edff7f60eb310b93df8f","src/lib.rs":"d9fb377859859c89d489754c8138f5b238157b6f75bda86fdce267925e10732c"},"name":"shape_area","profile":"rust-core","program":"f21fc970908e57448e4db7c06bf2b57fee84f4b8734cbbf1ac327c6ee4ab6215","runtime":"7f18f40838cbf5b74494efecbd3553c16cd6b0fb42445bdff4c8036b5f0e2a95","sources":["f5a58e441acc8b93ded11826c51cc7c8399ec177e079787a9b6551789ce1cab8"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production/packages/rust-std/checked_sum/package.json b/tests/production-export/production/packages/rust-std/checked_sum/package.json index cafd2e228..048902430 100644 --- a/tests/production-export/production/packages/rust-std/checked_sum/package.json +++ b/tests/production-export/production/packages/rust-std/checked_sum/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"checked_sum","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"types":[{"kind":"fixed","width":"u32"},{"kind":"fixed","width":"u32"}]}],"spec":"lexlean/target-program/1"},"sources":["ecf58505f4e2844618eff0bdc9a2ce9dcf5d0a65b1a68627116a7fd4d4a29a8b"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"checked_sum","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"checked_add"}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"fixed","width":"u32"}},"types":[{"kind":"fixed","width":"u32"},{"kind":"fixed","width":"u32"}]}],"spec":"lexlean/target-program/1"},"sources":["f5a58e441acc8b93ded11826c51cc7c8399ec177e079787a9b6551789ce1cab8"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production/packages/rust-std/checked_sum/provenance.json b/tests/production-export/production/packages/rust-std/checked_sum/provenance.json index 3ce88509a..1310f67be 100644 --- a/tests/production-export/production/packages/rust-std/checked_sum/provenance.json +++ b/tests/production-export/production/packages/rust-std/checked_sum/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"d2642abd4556782d8a017a0a6b2cfb4bdec3858040ce0f535f3a44d5dcf9de6a","src/lib.rs":"aaaaf1ccf07f5112e0f7a16fc65b21ab9c58c9341844fe6882f82a151037da53"},"name":"checked_sum","profile":"rust-std","program":"938b367cd5b23f8fb66adc8d4520333ff0e34954395668d2e3b072af86ad3216","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["ecf58505f4e2844618eff0bdc9a2ce9dcf5d0a65b1a68627116a7fd4d4a29a8b"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"d2642abd4556782d8a017a0a6b2cfb4bdec3858040ce0f535f3a44d5dcf9de6a","src/lib.rs":"aaaaf1ccf07f5112e0f7a16fc65b21ab9c58c9341844fe6882f82a151037da53"},"name":"checked_sum","profile":"rust-std","program":"938b367cd5b23f8fb66adc8d4520333ff0e34954395668d2e3b072af86ad3216","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f5a58e441acc8b93ded11826c51cc7c8399ec177e079787a9b6551789ce1cab8"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production/packages/rust-std/halvings/package.json b/tests/production-export/production/packages/rust-std/halvings/package.json index b03c1d683..04740c237 100644 --- a/tests/production-export/production/packages/rust-std/halvings/package.json +++ b/tests/production-export/production/packages/rust-std/halvings/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"halvings","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}]},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"function":1,"kind":"call","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_sub"}},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}]},"kind":"cond","then_branch":{"kind":"var","name":1}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["ecf58505f4e2844618eff0bdc9a2ce9dcf5d0a65b1a68627116a7fd4d4a29a8b"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"halvings","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}]},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_lt"}},"else_branch":{"function":1,"kind":"call","operands":[{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"2"}}],"operation":{"kind":"nat_sub"}},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}]},"kind":"cond","then_branch":{"kind":"var","name":1}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["f5a58e441acc8b93ded11826c51cc7c8399ec177e079787a9b6551789ce1cab8"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production/packages/rust-std/halvings/provenance.json b/tests/production-export/production/packages/rust-std/halvings/provenance.json index 8ca733a97..be630732b 100644 --- a/tests/production-export/production/packages/rust-std/halvings/provenance.json +++ b/tests/production-export/production/packages/rust-std/halvings/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"5ce9a4750afc2319c429f0c99580235916a3572af40fc079449063d4d7d64b9d","src/lib.rs":"653fb4583c2029804d083e8fb442ae21ed22c459d356a1161f3919d889d17c27"},"name":"halvings","profile":"rust-std","program":"4e73456e09ab92d80df1297c17a2a129e17822ff1c88cc30ec946ac7b5d21df3","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["ecf58505f4e2844618eff0bdc9a2ce9dcf5d0a65b1a68627116a7fd4d4a29a8b"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"5ce9a4750afc2319c429f0c99580235916a3572af40fc079449063d4d7d64b9d","src/lib.rs":"653fb4583c2029804d083e8fb442ae21ed22c459d356a1161f3919d889d17c27"},"name":"halvings","profile":"rust-std","program":"4e73456e09ab92d80df1297c17a2a129e17822ff1c88cc30ec946ac7b5d21df3","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f5a58e441acc8b93ded11826c51cc7c8399ec177e079787a9b6551789ce1cab8"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production/packages/rust-std/head_or/package.json b/tests/production-export/production/packages/rust-std/head_or/package.json index 399958d08..7631bc975 100644 --- a/tests/production-export/production/packages/rust-std/head_or/package.json +++ b/tests/production-export/production/packages/rust-std/head_or/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own"]}],"name":"head_or","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}]},"parameters":[0],"result":{"kind":"nat"},"types":[{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"kind":"var","name":2},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["ecf58505f4e2844618eff0bdc9a2ce9dcf5d0a65b1a68627116a7fd4d4a29a8b"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own"]}],"name":"head_or","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}]},"parameters":[0],"result":{"kind":"nat"},"types":[{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[2,3],"body":{"kind":"var","name":2},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"element":{"kind":"nat"},"kind":"list"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["f5a58e441acc8b93ded11826c51cc7c8399ec177e079787a9b6551789ce1cab8"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production/packages/rust-std/head_or/provenance.json b/tests/production-export/production/packages/rust-std/head_or/provenance.json index ce9e993ee..1021fd4dd 100644 --- a/tests/production-export/production/packages/rust-std/head_or/provenance.json +++ b/tests/production-export/production/packages/rust-std/head_or/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"f724063bb6df92304f518e824a184b89f9956e15421cffbd5d158d5d9f8092c4","src/lib.rs":"9eaf875ce4a10119c0e49f42e27fdc00b2a765df8dfaafca61f6ac06cc5f679f"},"name":"head_or","profile":"rust-std","program":"fd195b2e7a605141c794aa55f45159309d1e64be3c91ea5076f013e04dd08ec8","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["ecf58505f4e2844618eff0bdc9a2ce9dcf5d0a65b1a68627116a7fd4d4a29a8b"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"f724063bb6df92304f518e824a184b89f9956e15421cffbd5d158d5d9f8092c4","src/lib.rs":"9eaf875ce4a10119c0e49f42e27fdc00b2a765df8dfaafca61f6ac06cc5f679f"},"name":"head_or","profile":"rust-std","program":"fd195b2e7a605141c794aa55f45159309d1e64be3c91ea5076f013e04dd08ec8","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f5a58e441acc8b93ded11826c51cc7c8399ec177e079787a9b6551789ce1cab8"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production/packages/rust-std/quadruple/package.json b/tests/production-export/production/packages/rust-std/quadruple/package.json index e24c2bb95..e34d6da24 100644 --- a/tests/production-export/production/packages/rust-std/quadruple/package.json +++ b/tests/production-export/production/packages/rust-std/quadruple/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"quadruple","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"captures":[],"function":2,"kind":"closure"},{"kind":"var","name":0}]},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]},{"body":{"kind":"apply","operands":[{"kind":"apply","operands":[{"kind":"var","name":1}],"target":{"kind":"var","name":0}}],"target":{"kind":"var","name":0}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":0}],"operation":{"kind":"nat_add"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["ecf58505f4e2844618eff0bdc9a2ce9dcf5d0a65b1a68627116a7fd4d4a29a8b"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"quadruple","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"captures":[],"function":2,"kind":"closure"},{"kind":"var","name":0}]},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]},{"body":{"kind":"apply","operands":[{"kind":"apply","operands":[{"kind":"var","name":1}],"target":{"kind":"var","name":0}}],"target":{"kind":"var","name":0}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"nat"}},{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":0}],"operation":{"kind":"nat_add"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["f5a58e441acc8b93ded11826c51cc7c8399ec177e079787a9b6551789ce1cab8"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production/packages/rust-std/quadruple/provenance.json b/tests/production-export/production/packages/rust-std/quadruple/provenance.json index aa73e235f..b6dff1c69 100644 --- a/tests/production-export/production/packages/rust-std/quadruple/provenance.json +++ b/tests/production-export/production/packages/rust-std/quadruple/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"ce430c8cfa11725511655d377de19ff244bde5bf904cda9aa11454e0d20da660","src/lib.rs":"e651d8ffeb9f1ca328081a4bb63c81f67d0cab0869aeae101c9797ff0fead067"},"name":"quadruple","profile":"rust-std","program":"6853b4945864259f1da2a6fc5277607d3e4c3c725d8be3dfd7cd38000ab16928","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["ecf58505f4e2844618eff0bdc9a2ce9dcf5d0a65b1a68627116a7fd4d4a29a8b"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"ce430c8cfa11725511655d377de19ff244bde5bf904cda9aa11454e0d20da660","src/lib.rs":"e651d8ffeb9f1ca328081a4bb63c81f67d0cab0869aeae101c9797ff0fead067"},"name":"quadruple","profile":"rust-std","program":"6853b4945864259f1da2a6fc5277607d3e4c3c725d8be3dfd7cd38000ab16928","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f5a58e441acc8b93ded11826c51cc7c8399ec177e079787a9b6551789ce1cab8"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production/packages/rust-std/shape_area/package.json b/tests/production-export/production/packages/rust-std/shape_area/package.json index ebe6771a7..80b0f8ca8 100644 --- a/tests/production-export/production/packages/rust-std/shape_area/package.json +++ b/tests/production-export/production/packages/rust-std/shape_area/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"shape_area","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"nat"}],[{"kind":"nat"},{"kind":"nat"}]]}],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"shape":{"constructor":1,"kind":"adt"},"type":{"index":0,"kind":"adt"}}]},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[1],"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":1}],"operation":{"kind":"nat_mul"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_mul"}},"shape":{"constructor":0,"kind":"adt"}},{"binders":[2,3],"body":{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":3}],"operation":{"kind":"nat_mul"}},"shape":{"constructor":1,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"index":0,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["ecf58505f4e2844618eff0bdc9a2ce9dcf5d0a65b1a68627116a7fd4d4a29a8b"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"shape_area","profile":"rust-std","program":{"adts":[{"constructors":[[{"kind":"nat"}],[{"kind":"nat"},{"kind":"nat"}]]}],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"build","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"shape":{"constructor":1,"kind":"adt"},"type":{"index":0,"kind":"adt"}}]},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"nat"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[1],"body":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":1}],"operation":{"kind":"nat_mul"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"3"}}],"operation":{"kind":"nat_mul"}},"shape":{"constructor":0,"kind":"adt"}},{"binders":[2,3],"body":{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":3}],"operation":{"kind":"nat_mul"}},"shape":{"constructor":1,"kind":"adt"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"index":0,"kind":"adt"}]}],"spec":"lexlean/target-program/1"},"sources":["f5a58e441acc8b93ded11826c51cc7c8399ec177e079787a9b6551789ce1cab8"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production/packages/rust-std/shape_area/provenance.json b/tests/production-export/production/packages/rust-std/shape_area/provenance.json index 4acda100f..26693594a 100644 --- a/tests/production-export/production/packages/rust-std/shape_area/provenance.json +++ b/tests/production-export/production/packages/rust-std/shape_area/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"683aa9bf20d061b2173baf56bc15458181e14c259970edff7f60eb310b93df8f","src/lib.rs":"8cf6fe537cdc43e608ce442810740bf54926dc3eda403ba551e2d958285b5a4e"},"name":"shape_area","profile":"rust-std","program":"f21fc970908e57448e4db7c06bf2b57fee84f4b8734cbbf1ac327c6ee4ab6215","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["ecf58505f4e2844618eff0bdc9a2ce9dcf5d0a65b1a68627116a7fd4d4a29a8b"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"683aa9bf20d061b2173baf56bc15458181e14c259970edff7f60eb310b93df8f","src/lib.rs":"8cf6fe537cdc43e608ce442810740bf54926dc3eda403ba551e2d958285b5a4e"},"name":"shape_area","profile":"rust-std","program":"f21fc970908e57448e4db7c06bf2b57fee84f4b8734cbbf1ac327c6ee4ab6215","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f5a58e441acc8b93ded11826c51cc7c8399ec177e079787a9b6551789ce1cab8"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/production/packages/rust-std/sum_all/package.json b/tests/production-export/production/packages/rust-std/sum_all/package.json index 891eefbd1..e7baeb608 100644 --- a/tests/production-export/production/packages/rust-std/sum_all/package.json +++ b/tests/production-export/production/packages/rust-std/sum_all/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"sum_all","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},"parameters":[0],"result":{"kind":"nat"},"types":[{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"kind":"prim","operands":[{"kind":"var","name":1},{"function":1,"kind":"call","operands":[{"kind":"var","name":2}]}],"operation":{"kind":"nat_add"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"element":{"kind":"nat"},"kind":"list"}]}],"spec":"lexlean/target-program/1"},"sources":["ecf58505f4e2844618eff0bdc9a2ce9dcf5d0a65b1a68627116a7fd4d4a29a8b"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"sum_all","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},"parameters":[0],"result":{"kind":"nat"},"types":[{"element":{"kind":"nat"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},"shape":{"kind":"nil"}},{"binders":[1,2],"body":{"kind":"prim","operands":[{"kind":"var","name":1},{"function":1,"kind":"call","operands":[{"kind":"var","name":2}]}],"operation":{"kind":"nat_add"}},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":0},"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"nat"},"types":[{"element":{"kind":"nat"},"kind":"list"}]}],"spec":"lexlean/target-program/1"},"sources":["f5a58e441acc8b93ded11826c51cc7c8399ec177e079787a9b6551789ce1cab8"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/production/packages/rust-std/sum_all/provenance.json b/tests/production-export/production/packages/rust-std/sum_all/provenance.json index e9d7398b0..6060100eb 100644 --- a/tests/production-export/production/packages/rust-std/sum_all/provenance.json +++ b/tests/production-export/production/packages/rust-std/sum_all/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"b927ff521f32d7fb2292ab2d020df8a2e1acd30460ac58429f4292741a2f51d3","src/lib.rs":"d05d8af8bf9f349f05081d5a7563edaaf5617159fdf4e463335b2a82070222ef"},"name":"sum_all","profile":"rust-std","program":"8ff4684c89e1a22e97417561a676319cab5351c711d244d980c53acc6160e821","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["ecf58505f4e2844618eff0bdc9a2ce9dcf5d0a65b1a68627116a7fd4d4a29a8b"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"b927ff521f32d7fb2292ab2d020df8a2e1acd30460ac58429f4292741a2f51d3","src/lib.rs":"d05d8af8bf9f349f05081d5a7563edaaf5617159fdf4e463335b2a82070222ef"},"name":"sum_all","profile":"rust-std","program":"8ff4684c89e1a22e97417561a676319cab5351c711d244d980c53acc6160e821","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f5a58e441acc8b93ded11826c51cc7c8399ec177e079787a9b6551789ce1cab8"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/stdlib/packages/rust-std/ends_with/package.json b/tests/production-export/stdlib/packages/rust-std/ends_with/package.json index 361cf97b8..a647871da 100644 --- a/tests/production-export/stdlib/packages/rust-std/ends_with/package.json +++ b/tests/production-export/stdlib/packages/rust-std/ends_with/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"ends_with","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"body":{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"var","name":2}],"operation":{"kind":"nat_le"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"arms":[{"binders":[4],"body":{"kind":"prim","operands":[{"kind":"var","name":4},{"kind":"var","name":1}],"operation":{"kind":"equal"}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":3}],"operation":{"kind":"nat_sub"}},{"kind":"var","name":3}],"operation":{"kind":"slice"}},"type":{"kind":"bool"}}},"bound":{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}},"kind":"let","name":3,"type":{"kind":"nat"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},"kind":"let","name":2,"type":{"kind":"nat"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"kind":"bytes"},{"kind":"bytes"}]}],"spec":"lexlean/target-program/1"},"sources":["5bfc6ad2db2940a1b7735f1309be47dcc4b5143d58cd00cbd6745311cf1f27ee"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"ends_with","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"body":{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"var","name":2}],"operation":{"kind":"nat_le"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"arms":[{"binders":[4],"body":{"kind":"prim","operands":[{"kind":"var","name":4},{"kind":"var","name":1}],"operation":{"kind":"equal"}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":3}],"operation":{"kind":"nat_sub"}},{"kind":"var","name":3}],"operation":{"kind":"slice"}},"type":{"kind":"bool"}}},"bound":{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}},"kind":"let","name":3,"type":{"kind":"nat"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},"kind":"let","name":2,"type":{"kind":"nat"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"kind":"bytes"},{"kind":"bytes"}]}],"spec":"lexlean/target-program/1"},"sources":["f6fd2434413f885eb97b3577e92c070677f6cd19f86ace77b5a60247639270b1"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/stdlib/packages/rust-std/ends_with/provenance.json b/tests/production-export/stdlib/packages/rust-std/ends_with/provenance.json index 2e8abc451..4813a126e 100644 --- a/tests/production-export/stdlib/packages/rust-std/ends_with/provenance.json +++ b/tests/production-export/stdlib/packages/rust-std/ends_with/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"aca215ca66dbd07b695aea352c855408398f391b7feba3baad37388c4e77bb3c","src/lib.rs":"7b5c3234b40c3d7ed26a091c4bca20a8411137d22ba5dd61148ec9e7ae6e153c"},"name":"ends_with","profile":"rust-std","program":"2e8cee85b376065a6078160fa53fd52c7a2f6aa31eb349462fb499ef41683e7f","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["5bfc6ad2db2940a1b7735f1309be47dcc4b5143d58cd00cbd6745311cf1f27ee"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"aca215ca66dbd07b695aea352c855408398f391b7feba3baad37388c4e77bb3c","src/lib.rs":"7b5c3234b40c3d7ed26a091c4bca20a8411137d22ba5dd61148ec9e7ae6e153c"},"name":"ends_with","profile":"rust-std","program":"2e8cee85b376065a6078160fa53fd52c7a2f6aa31eb349462fb499ef41683e7f","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f6fd2434413f885eb97b3577e92c070677f6cd19f86ace77b5a60247639270b1"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/stdlib/packages/rust-std/find/package.json b/tests/production-export/stdlib/packages/rust-std/find/package.json index e6a6d4c95..0757efff1 100644 --- a/tests/production-export/stdlib/packages/rust-std/find/package.json +++ b/tests/production-export/stdlib/packages/rust-std/find/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"find","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"body":{"body":{"body":{"condition":{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":4}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":4}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"bound":{"kind":"first","value":{"function":1,"kind":"call","operands":[{"captures":[{"kind":"var","name":1},{"kind":"var","name":3},{"kind":"var","name":0},{"kind":"var","name":2}],"function":2,"kind":"closure"},{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}]}},"kind":"let","name":4,"type":{"kind":"nat"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}},"kind":"let","name":3,"type":{"kind":"nat"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},"kind":"let","name":2,"type":{"kind":"nat"}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"bytes"},{"kind":"bytes"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"option","value":{"kind":"nat"}}},{"kind":"nat"},{"kind":"nat"}]},{"body":{"condition":{"function":3,"kind":"call","operands":[{"kind":"var","name":2},{"kind":"var","name":0},{"kind":"var","name":4}]},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":4},{"kind":"var","name":1}],"operation":{"kind":"nat_add"}},{"kind":"var","name":3}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":4},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}}},"parameters":[0,1,2,3,4],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"bytes"},{"kind":"nat"},{"kind":"bytes"},{"kind":"nat"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[3],"body":{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"var","name":1}],"operation":{"kind":"equal"}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}}],"operation":{"kind":"slice"}},"type":{"kind":"bool"}},"parameters":[0,1,2],"result":{"kind":"bool"},"types":[{"kind":"bytes"},{"kind":"bytes"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["5bfc6ad2db2940a1b7735f1309be47dcc4b5143d58cd00cbd6745311cf1f27ee"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"find","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"body":{"body":{"body":{"condition":{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":4}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"var","name":4}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"bound":{"kind":"first","value":{"function":1,"kind":"call","operands":[{"captures":[{"kind":"var","name":1},{"kind":"var","name":3},{"kind":"var","name":0},{"kind":"var","name":2}],"function":2,"kind":"closure"},{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}]}},"kind":"let","name":4,"type":{"kind":"nat"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}},"kind":"let","name":3,"type":{"kind":"nat"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},"kind":"let","name":2,"type":{"kind":"nat"}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"bytes"},{"kind":"bytes"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"option","value":{"kind":"nat"}}},{"kind":"nat"},{"kind":"nat"}]},{"body":{"condition":{"function":3,"kind":"call","operands":[{"kind":"var","name":2},{"kind":"var","name":0},{"kind":"var","name":4}]},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":4},{"kind":"var","name":1}],"operation":{"kind":"nat_add"}},{"kind":"var","name":3}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":4},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}}},"parameters":[0,1,2,3,4],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"bytes"},{"kind":"nat"},{"kind":"bytes"},{"kind":"nat"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[3],"body":{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"var","name":1}],"operation":{"kind":"equal"}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":2},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}}],"operation":{"kind":"slice"}},"type":{"kind":"bool"}},"parameters":[0,1,2],"result":{"kind":"bool"},"types":[{"kind":"bytes"},{"kind":"bytes"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["f6fd2434413f885eb97b3577e92c070677f6cd19f86ace77b5a60247639270b1"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/stdlib/packages/rust-std/find/provenance.json b/tests/production-export/stdlib/packages/rust-std/find/provenance.json index 668236a7b..b79076298 100644 --- a/tests/production-export/stdlib/packages/rust-std/find/provenance.json +++ b/tests/production-export/stdlib/packages/rust-std/find/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"65b8766beaad3445a34057c23351f9454db56cef4c61b2bdb18735c4f186f1d4","src/lib.rs":"457794cebfb5131f4e57731a77bbff0259d7a15f1860c012d6898cd1c104d310"},"name":"find","profile":"rust-std","program":"2313c3ad3e05e24d6b6ceb3617928e0fcbc7caab758cb085cefc5ca51fb5e178","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["5bfc6ad2db2940a1b7735f1309be47dcc4b5143d58cd00cbd6745311cf1f27ee"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"65b8766beaad3445a34057c23351f9454db56cef4c61b2bdb18735c4f186f1d4","src/lib.rs":"457794cebfb5131f4e57731a77bbff0259d7a15f1860c012d6898cd1c104d310"},"name":"find","profile":"rust-std","program":"2313c3ad3e05e24d6b6ceb3617928e0fcbc7caab758cb085cefc5ca51fb5e178","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f6fd2434413f885eb97b3577e92c070677f6cd19f86ace77b5a60247639270b1"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/stdlib/packages/rust-std/join_with/package.json b/tests/production-export/stdlib/packages/rust-std/join_with/package.json index bb505c6e5..df4fd0b70 100644 --- a/tests/production-export/stdlib/packages/rust-std/join_with/package.json +++ b/tests/production-export/stdlib/packages/rust-std/join_with/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"join_with","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"arms":[{"binders":[2],"body":{"kind":"var","name":2},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"","kind":"bytes"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":1,"kind":"call","operands":[{"captures":[{"kind":"var","name":1}],"function":2,"kind":"closure"},{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"bytes"}}},{"kind":"var","name":0}]},"type":{"kind":"bytes"}},"parameters":[0,1],"result":{"kind":"bytes"},"types":[{"element":{"kind":"bytes"},"kind":"list"},{"kind":"bytes"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"option","value":{"kind":"bytes"}}},"parameters":[0,1,2],"result":{"kind":"option","value":{"kind":"bytes"}},"types":[{"kind":"fn","parameters":[{"kind":"option","value":{"kind":"bytes"}},{"kind":"bytes"}],"result":{"kind":"option","value":{"kind":"bytes"}}},{"kind":"option","value":{"kind":"bytes"}},{"element":{"kind":"bytes"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"bytes"}}},"shape":{"kind":"none"}},{"binders":[3],"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"var","name":0}],"operation":{"kind":"append"}},{"kind":"var","name":2}],"operation":{"kind":"append"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"bytes"}}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"kind":"bytes"}}},"parameters":[0,1,2],"result":{"kind":"option","value":{"kind":"bytes"}},"types":[{"kind":"bytes"},{"kind":"option","value":{"kind":"bytes"}},{"kind":"bytes"}]}],"spec":"lexlean/target-program/1"},"sources":["5bfc6ad2db2940a1b7735f1309be47dcc4b5143d58cd00cbd6745311cf1f27ee"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"join_with","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"arms":[{"binders":[2],"body":{"kind":"var","name":2},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"","kind":"bytes"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":1,"kind":"call","operands":[{"captures":[{"kind":"var","name":1}],"function":2,"kind":"closure"},{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"bytes"}}},{"kind":"var","name":0}]},"type":{"kind":"bytes"}},"parameters":[0,1],"result":{"kind":"bytes"},"types":[{"element":{"kind":"bytes"},"kind":"list"},{"kind":"bytes"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"kind":"option","value":{"kind":"bytes"}}},"parameters":[0,1,2],"result":{"kind":"option","value":{"kind":"bytes"}},"types":[{"kind":"fn","parameters":[{"kind":"option","value":{"kind":"bytes"}},{"kind":"bytes"}],"result":{"kind":"option","value":{"kind":"bytes"}}},{"kind":"option","value":{"kind":"bytes"}},{"element":{"kind":"bytes"},"kind":"list"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"bytes"}}},"shape":{"kind":"none"}},{"binders":[3],"body":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"var","name":0}],"operation":{"kind":"append"}},{"kind":"var","name":2}],"operation":{"kind":"append"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"bytes"}}},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"option","value":{"kind":"bytes"}}},"parameters":[0,1,2],"result":{"kind":"option","value":{"kind":"bytes"}},"types":[{"kind":"bytes"},{"kind":"option","value":{"kind":"bytes"}},{"kind":"bytes"}]}],"spec":"lexlean/target-program/1"},"sources":["f6fd2434413f885eb97b3577e92c070677f6cd19f86ace77b5a60247639270b1"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/stdlib/packages/rust-std/join_with/provenance.json b/tests/production-export/stdlib/packages/rust-std/join_with/provenance.json index 0a46809e7..7a03b5518 100644 --- a/tests/production-export/stdlib/packages/rust-std/join_with/provenance.json +++ b/tests/production-export/stdlib/packages/rust-std/join_with/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"5b8c1edac95e10481210f741989077b0b33bafb42f71c257d0baa28de2931790","src/lib.rs":"53ca1a20dd060557588c5f5676af74172b47b5f34873ee25bf20efbb5ca85d33"},"name":"join_with","profile":"rust-std","program":"96422dc4f1829feeb2a75f4c45d41bdd503b091eabab116da5cadc270be9752a","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["5bfc6ad2db2940a1b7735f1309be47dcc4b5143d58cd00cbd6745311cf1f27ee"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"5b8c1edac95e10481210f741989077b0b33bafb42f71c257d0baa28de2931790","src/lib.rs":"53ca1a20dd060557588c5f5676af74172b47b5f34873ee25bf20efbb5ca85d33"},"name":"join_with","profile":"rust-std","program":"96422dc4f1829feeb2a75f4c45d41bdd503b091eabab116da5cadc270be9752a","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f6fd2434413f885eb97b3577e92c070677f6cd19f86ace77b5a60247639270b1"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/stdlib/packages/rust-std/lines/package.json b/tests/production-export/stdlib/packages/rust-std/lines/package.json index 9e1b17f30..958278b32 100644 --- a/tests/production-export/stdlib/packages/rust-std/lines/package.json +++ b/tests/production-export/stdlib/packages/rust-std/lines/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"lines","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"body":{"body":{"body":{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"var","name":1}],"operation":{"kind":"nat_lt"}},"else_branch":{"function":3,"kind":"call","operands":[{"kind":"var","name":4}]},"kind":"cond","then_branch":{"function":3,"kind":"call","operands":[{"kind":"build","operands":[{"function":4,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"operation":{"kind":"nat_sub"}}]},{"kind":"var","name":4}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bytes"},"kind":"list"}}]}},"bound":{"kind":"second","value":{"kind":"second","value":{"kind":"var","name":2}}},"kind":"let","name":4,"type":{"element":{"kind":"bytes"},"kind":"list"}},"bound":{"kind":"first","value":{"kind":"second","value":{"kind":"var","name":2}}},"kind":"let","name":3,"type":{"kind":"nat"}},"bound":{"kind":"first","value":{"function":1,"kind":"call","operands":[{"captures":[{"kind":"var","name":0}],"function":2,"kind":"closure"},{"kind":"var","name":1},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"bytes"},"kind":"list"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}]}},"kind":"let","name":2,"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},"kind":"let","name":1,"type":{"kind":"nat"}},"parameters":[0],"result":{"element":{"kind":"bytes"},"kind":"list"},"types":[{"kind":"bytes"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}},{"kind":"nat"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}]},{"body":{"function":5,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"types":[{"kind":"bytes"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}]},{"body":{"function":6,"kind":"call","operands":[{"captures":[],"function":7,"kind":"closure"},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"bytes"},"kind":"list"}},{"kind":"var","name":0}]},"parameters":[0],"result":{"element":{"kind":"bytes"},"kind":"list"},"types":[{"element":{"kind":"bytes"},"kind":"list"}]},{"body":{"arms":[{"binders":[3],"body":{"kind":"var","name":3},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"","kind":"bytes"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"slice"}},"type":{"kind":"bytes"}},"parameters":[0,1,2],"result":{"kind":"bytes"},"types":[{"kind":"bytes"},{"kind":"nat"},{"kind":"nat"}]},{"body":{"body":{"body":{"body":{"arms":[{"binders":[5],"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":5},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"10"}}],"operation":{"kind":"equal"}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"build","operands":[{"kind":"var","name":3},{"kind":"var","name":4}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"build","operands":[{"function":9,"kind":"call","operands":[{"function":4,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":3}],"operation":{"kind":"nat_sub"}}]}]},{"kind":"var","name":4}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bytes"},"kind":"list"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":8,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}},"bound":{"kind":"second","value":{"kind":"second","value":{"kind":"var","name":1}}},"kind":"let","name":4,"type":{"element":{"kind":"bytes"},"kind":"list"}},"bound":{"kind":"first","value":{"kind":"second","value":{"kind":"var","name":1}}},"kind":"let","name":3,"type":{"kind":"nat"}},"bound":{"kind":"first","value":{"kind":"var","name":1}},"kind":"let","name":2,"type":{"kind":"nat"}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"types":[{"kind":"bytes"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":6,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"element":{"kind":"bytes"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"kind":"bytes"},"kind":"list"},"types":[{"kind":"fn","parameters":[{"element":{"kind":"bytes"},"kind":"list"},{"kind":"bytes"}],"result":{"element":{"kind":"bytes"},"kind":"list"}},{"element":{"kind":"bytes"},"kind":"list"},{"element":{"kind":"bytes"},"kind":"list"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bytes"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"bytes"},"kind":"list"},"types":[{"element":{"kind":"bytes"},"kind":"list"},{"kind":"bytes"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"index"}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"types":[{"kind":"bytes"},{"kind":"nat"}]},{"body":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"0d","kind":"bytes"}}]},"else_branch":{"kind":"var","name":0},"kind":"cond","then_branch":{"function":4,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_sub"}}]}},"parameters":[0],"result":{"kind":"bytes"},"types":[{"kind":"bytes"}]},{"body":{"body":{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"var","name":2}],"operation":{"kind":"nat_le"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"arms":[{"binders":[4],"body":{"kind":"prim","operands":[{"kind":"var","name":4},{"kind":"var","name":1}],"operation":{"kind":"equal"}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":3}],"operation":{"kind":"nat_sub"}},{"kind":"var","name":3}],"operation":{"kind":"slice"}},"type":{"kind":"bool"}}},"bound":{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}},"kind":"let","name":3,"type":{"kind":"nat"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},"kind":"let","name":2,"type":{"kind":"nat"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"kind":"bytes"},{"kind":"bytes"}]}],"spec":"lexlean/target-program/1"},"sources":["5bfc6ad2db2940a1b7735f1309be47dcc4b5143d58cd00cbd6745311cf1f27ee"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"lines","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"body":{"body":{"body":{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"var","name":1}],"operation":{"kind":"nat_lt"}},"else_branch":{"function":3,"kind":"call","operands":[{"kind":"var","name":4}]},"kind":"cond","then_branch":{"function":3,"kind":"call","operands":[{"kind":"build","operands":[{"function":4,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"operation":{"kind":"nat_sub"}}]},{"kind":"var","name":4}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bytes"},"kind":"list"}}]}},"bound":{"kind":"second","value":{"kind":"second","value":{"kind":"var","name":2}}},"kind":"let","name":4,"type":{"element":{"kind":"bytes"},"kind":"list"}},"bound":{"kind":"first","value":{"kind":"second","value":{"kind":"var","name":2}}},"kind":"let","name":3,"type":{"kind":"nat"}},"bound":{"kind":"first","value":{"function":1,"kind":"call","operands":[{"captures":[{"kind":"var","name":0}],"function":2,"kind":"closure"},{"kind":"var","name":1},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"bytes"},"kind":"list"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}]}},"kind":"let","name":2,"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},"kind":"let","name":1,"type":{"kind":"nat"}},"parameters":[0],"result":{"element":{"kind":"bytes"},"kind":"list"},"types":[{"kind":"bytes"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}},{"kind":"nat"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}]},{"body":{"function":5,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"types":[{"kind":"bytes"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}]},{"body":{"function":6,"kind":"call","operands":[{"captures":[],"function":7,"kind":"closure"},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"bytes"},"kind":"list"}},{"kind":"var","name":0}]},"parameters":[0],"result":{"element":{"kind":"bytes"},"kind":"list"},"types":[{"element":{"kind":"bytes"},"kind":"list"}]},{"body":{"arms":[{"binders":[3],"body":{"kind":"var","name":3},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"","kind":"bytes"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"slice"}},"type":{"kind":"bytes"}},"parameters":[0,1,2],"result":{"kind":"bytes"},"types":[{"kind":"bytes"},{"kind":"nat"},{"kind":"nat"}]},{"body":{"body":{"body":{"body":{"arms":[{"binders":[5],"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":5},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"10"}}],"operation":{"kind":"equal"}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"build","operands":[{"kind":"var","name":3},{"kind":"var","name":4}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"build","operands":[{"function":9,"kind":"call","operands":[{"function":4,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":3}],"operation":{"kind":"nat_sub"}}]}]},{"kind":"var","name":4}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bytes"},"kind":"list"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":8,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2}]},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}},"bound":{"kind":"second","value":{"kind":"second","value":{"kind":"var","name":1}}},"kind":"let","name":4,"type":{"element":{"kind":"bytes"},"kind":"list"}},"bound":{"kind":"first","value":{"kind":"second","value":{"kind":"var","name":1}}},"kind":"let","name":3,"type":{"kind":"nat"}},"bound":{"kind":"first","value":{"kind":"var","name":1}},"kind":"let","name":2,"type":{"kind":"nat"}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"types":[{"kind":"bytes"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":6,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"element":{"kind":"bytes"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"kind":"bytes"},"kind":"list"},"types":[{"kind":"fn","parameters":[{"element":{"kind":"bytes"},"kind":"list"},{"kind":"bytes"}],"result":{"element":{"kind":"bytes"},"kind":"list"}},{"element":{"kind":"bytes"},"kind":"list"},{"element":{"kind":"bytes"},"kind":"list"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bytes"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"bytes"},"kind":"list"},"types":[{"element":{"kind":"bytes"},"kind":"list"},{"kind":"bytes"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"index"}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"types":[{"kind":"bytes"},{"kind":"nat"}]},{"body":{"condition":{"function":10,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"0d","kind":"bytes"}}]},"else_branch":{"kind":"var","name":0},"kind":"cond","then_branch":{"function":4,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"prim","operands":[{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_sub"}}]}},"parameters":[0],"result":{"kind":"bytes"},"types":[{"kind":"bytes"}]},{"body":{"body":{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"var","name":2}],"operation":{"kind":"nat_le"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"kind":"cond","then_branch":{"arms":[{"binders":[4],"body":{"kind":"prim","operands":[{"kind":"var","name":4},{"kind":"var","name":1}],"operation":{"kind":"equal"}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":3}],"operation":{"kind":"nat_sub"}},{"kind":"var","name":3}],"operation":{"kind":"slice"}},"type":{"kind":"bool"}}},"bound":{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}},"kind":"let","name":3,"type":{"kind":"nat"}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},"kind":"let","name":2,"type":{"kind":"nat"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"kind":"bytes"},{"kind":"bytes"}]}],"spec":"lexlean/target-program/1"},"sources":["f6fd2434413f885eb97b3577e92c070677f6cd19f86ace77b5a60247639270b1"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/stdlib/packages/rust-std/lines/provenance.json b/tests/production-export/stdlib/packages/rust-std/lines/provenance.json index 97c32006a..3e029e55b 100644 --- a/tests/production-export/stdlib/packages/rust-std/lines/provenance.json +++ b/tests/production-export/stdlib/packages/rust-std/lines/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"8784e433d55c1014c3ef57c25eb97e52b822f442912c6afef13bec448b09bbc4","src/lib.rs":"3464baef6c8989e7f3ef0440082437927fdc5bf55b7b334222d8bacdceae80c5"},"name":"lines","profile":"rust-std","program":"841e8e419e8f4303b2680c83d2a7229758e0bfa0204159d69e4a9ed5e30fb1ea","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["5bfc6ad2db2940a1b7735f1309be47dcc4b5143d58cd00cbd6745311cf1f27ee"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"8784e433d55c1014c3ef57c25eb97e52b822f442912c6afef13bec448b09bbc4","src/lib.rs":"3464baef6c8989e7f3ef0440082437927fdc5bf55b7b334222d8bacdceae80c5"},"name":"lines","profile":"rust-std","program":"841e8e419e8f4303b2680c83d2a7229758e0bfa0204159d69e4a9ed5e30fb1ea","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f6fd2434413f885eb97b3577e92c070677f6cd19f86ace77b5a60247639270b1"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/stdlib/packages/rust-std/split_on/package.json b/tests/production-export/stdlib/packages/rust-std/split_on/package.json index b973dcf53..1ae63300e 100644 --- a/tests/production-export/stdlib/packages/rust-std/split_on/package.json +++ b/tests/production-export/stdlib/packages/rust-std/split_on/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"split_on","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"body":{"body":{"body":{"function":3,"kind":"call","operands":[{"kind":"build","operands":[{"function":4,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":4},{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":4}],"operation":{"kind":"nat_sub"}}]},{"kind":"second","value":{"kind":"second","value":{"kind":"var","name":3}}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bytes"},"kind":"list"}}]},"bound":{"kind":"first","value":{"kind":"second","value":{"kind":"var","name":3}}},"kind":"let","name":4,"type":{"kind":"nat"}},"bound":{"kind":"first","value":{"function":1,"kind":"call","operands":[{"captures":[{"kind":"var","name":1},{"kind":"var","name":0}],"function":2,"kind":"closure"},{"kind":"var","name":2},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"bytes"},"kind":"list"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}]}},"kind":"let","name":3,"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},"kind":"let","name":2,"type":{"kind":"nat"}},"parameters":[0,1],"result":{"element":{"kind":"bytes"},"kind":"list"},"types":[{"kind":"bytes"},{"kind":"fixed","width":"u8"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}},{"kind":"nat"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}]},{"body":{"function":5,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"var","name":0},{"kind":"var","name":2}]},"parameters":[0,1,2],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"types":[{"kind":"fixed","width":"u8"},{"kind":"bytes"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}]},{"body":{"function":6,"kind":"call","operands":[{"captures":[],"function":7,"kind":"closure"},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"bytes"},"kind":"list"}},{"kind":"var","name":0}]},"parameters":[0],"result":{"element":{"kind":"bytes"},"kind":"list"},"types":[{"element":{"kind":"bytes"},"kind":"list"}]},{"body":{"arms":[{"binders":[3],"body":{"kind":"var","name":3},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"","kind":"bytes"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"slice"}},"type":{"kind":"bytes"}},"parameters":[0,1,2],"result":{"kind":"bytes"},"types":[{"kind":"bytes"},{"kind":"nat"},{"kind":"nat"}]},{"body":{"body":{"body":{"body":{"arms":[{"binders":[6],"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":6},{"kind":"var","name":1}],"operation":{"kind":"equal"}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"build","operands":[{"kind":"var","name":4},{"kind":"var","name":5}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"build","operands":[{"function":4,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":4},{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"var","name":4}],"operation":{"kind":"nat_sub"}}]},{"kind":"var","name":5}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bytes"},"kind":"list"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":8,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3}]},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}},"bound":{"kind":"second","value":{"kind":"second","value":{"kind":"var","name":2}}},"kind":"let","name":5,"type":{"element":{"kind":"bytes"},"kind":"list"}},"bound":{"kind":"first","value":{"kind":"second","value":{"kind":"var","name":2}}},"kind":"let","name":4,"type":{"kind":"nat"}},"bound":{"kind":"first","value":{"kind":"var","name":2}},"kind":"let","name":3,"type":{"kind":"nat"}},"parameters":[0,1,2],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"types":[{"kind":"bytes"},{"kind":"fixed","width":"u8"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":6,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"element":{"kind":"bytes"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"kind":"bytes"},"kind":"list"},"types":[{"kind":"fn","parameters":[{"element":{"kind":"bytes"},"kind":"list"},{"kind":"bytes"}],"result":{"element":{"kind":"bytes"},"kind":"list"}},{"element":{"kind":"bytes"},"kind":"list"},{"element":{"kind":"bytes"},"kind":"list"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bytes"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"bytes"},"kind":"list"},"types":[{"element":{"kind":"bytes"},"kind":"list"},{"kind":"bytes"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"index"}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"types":[{"kind":"bytes"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["5bfc6ad2db2940a1b7735f1309be47dcc4b5143d58cd00cbd6745311cf1f27ee"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own","own"]}],"name":"split_on","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"body":{"body":{"body":{"function":3,"kind":"call","operands":[{"kind":"build","operands":[{"function":4,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":4},{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":4}],"operation":{"kind":"nat_sub"}}]},{"kind":"second","value":{"kind":"second","value":{"kind":"var","name":3}}}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bytes"},"kind":"list"}}]},"bound":{"kind":"first","value":{"kind":"second","value":{"kind":"var","name":3}}},"kind":"let","name":4,"type":{"kind":"nat"}},"bound":{"kind":"first","value":{"function":1,"kind":"call","operands":[{"captures":[{"kind":"var","name":1},{"kind":"var","name":0}],"function":2,"kind":"closure"},{"kind":"var","name":2},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"build","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"bytes"},"kind":"list"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}]}},"kind":"let","name":3,"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"bound":{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},"kind":"let","name":2,"type":{"kind":"nat"}},"parameters":[0,1],"result":{"element":{"kind":"bytes"},"kind":"list"},"types":[{"kind":"bytes"},{"kind":"fixed","width":"u8"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":1,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}},{"kind":"nat"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}]},{"body":{"function":5,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"var","name":0},{"kind":"var","name":2}]},"parameters":[0,1,2],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"types":[{"kind":"fixed","width":"u8"},{"kind":"bytes"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}]},{"body":{"function":6,"kind":"call","operands":[{"captures":[],"function":7,"kind":"closure"},{"kind":"build","operands":[],"shape":{"kind":"nil"},"type":{"element":{"kind":"bytes"},"kind":"list"}},{"kind":"var","name":0}]},"parameters":[0],"result":{"element":{"kind":"bytes"},"kind":"list"},"types":[{"element":{"kind":"bytes"},"kind":"list"}]},{"body":{"arms":[{"binders":[3],"body":{"kind":"var","name":3},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"","kind":"bytes"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"slice"}},"type":{"kind":"bytes"}},"parameters":[0,1,2],"result":{"kind":"bytes"},"types":[{"kind":"bytes"},{"kind":"nat"},{"kind":"nat"}]},{"body":{"body":{"body":{"body":{"arms":[{"binders":[6],"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":6},{"kind":"var","name":1}],"operation":{"kind":"equal"}},"else_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"build","operands":[{"kind":"var","name":4},{"kind":"var","name":5}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}},{"kind":"build","operands":[{"function":4,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":4},{"kind":"prim","operands":[{"kind":"var","name":3},{"kind":"var","name":4}],"operation":{"kind":"nat_sub"}}]},{"kind":"var","name":5}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bytes"},"kind":"list"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":8,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3}]},"type":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}}},"bound":{"kind":"second","value":{"kind":"second","value":{"kind":"var","name":2}}},"kind":"let","name":5,"type":{"element":{"kind":"bytes"},"kind":"list"}},"bound":{"kind":"first","value":{"kind":"second","value":{"kind":"var","name":2}}},"kind":"let","name":4,"type":{"kind":"nat"}},"bound":{"kind":"first","value":{"kind":"var","name":2}},"kind":"let","name":3,"type":{"kind":"nat"}},"parameters":[0,1,2],"result":{"kind":"option","value":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}},"types":[{"kind":"bytes"},{"kind":"fixed","width":"u8"},{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"pair","left":{"kind":"nat"},"right":{"element":{"kind":"bytes"},"kind":"list"}}}]},{"body":{"arms":[{"binders":[],"body":{"kind":"var","name":1},"shape":{"kind":"nil"}},{"binders":[3,4],"body":{"function":6,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"apply","operands":[{"kind":"var","name":1},{"kind":"var","name":3}],"target":{"kind":"var","name":0}},{"kind":"var","name":4}]},"shape":{"kind":"cons"}}],"kind":"match","scrutinee":{"kind":"var","name":2},"type":{"element":{"kind":"bytes"},"kind":"list"}},"parameters":[0,1,2],"result":{"element":{"kind":"bytes"},"kind":"list"},"types":[{"kind":"fn","parameters":[{"element":{"kind":"bytes"},"kind":"list"},{"kind":"bytes"}],"result":{"element":{"kind":"bytes"},"kind":"list"}},{"element":{"kind":"bytes"},"kind":"list"},{"element":{"kind":"bytes"},"kind":"list"}]},{"body":{"kind":"build","operands":[{"kind":"var","name":1},{"kind":"var","name":0}],"shape":{"kind":"cons"},"type":{"element":{"kind":"bytes"},"kind":"list"}},"parameters":[0,1],"result":{"element":{"kind":"bytes"},"kind":"list"},"types":[{"element":{"kind":"bytes"},"kind":"list"},{"kind":"bytes"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"index"}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"types":[{"kind":"bytes"},{"kind":"nat"}]}],"spec":"lexlean/target-program/1"},"sources":["f6fd2434413f885eb97b3577e92c070677f6cd19f86ace77b5a60247639270b1"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/stdlib/packages/rust-std/split_on/provenance.json b/tests/production-export/stdlib/packages/rust-std/split_on/provenance.json index 9ae8363de..9ca756b3f 100644 --- a/tests/production-export/stdlib/packages/rust-std/split_on/provenance.json +++ b/tests/production-export/stdlib/packages/rust-std/split_on/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"eec87b90321a716e390db4002e4dfdaa697e6daf4b86d7a2cd07c5f2ac707e2d","src/lib.rs":"d655f10225cbcf659140129f15911ebea1005006b91b542910504454c8155455"},"name":"split_on","profile":"rust-std","program":"338fb203721ebdf49131b19350509614a5e1e84758f7a82903c48bbc472d8dc3","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["5bfc6ad2db2940a1b7735f1309be47dcc4b5143d58cd00cbd6745311cf1f27ee"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"eec87b90321a716e390db4002e4dfdaa697e6daf4b86d7a2cd07c5f2ac707e2d","src/lib.rs":"d655f10225cbcf659140129f15911ebea1005006b91b542910504454c8155455"},"name":"split_on","profile":"rust-std","program":"338fb203721ebdf49131b19350509614a5e1e84758f7a82903c48bbc472d8dc3","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f6fd2434413f885eb97b3577e92c070677f6cd19f86ace77b5a60247639270b1"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/stdlib/packages/rust-std/starts_with/package.json b/tests/production-export/stdlib/packages/rust-std/starts_with/package.json index 485173f22..17d1192fc 100644 --- a/tests/production-export/stdlib/packages/rust-std/starts_with/package.json +++ b/tests/production-export/stdlib/packages/rust-std/starts_with/package.json @@ -1 +1 @@ -{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"starts_with","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"arms":[{"binders":[2],"body":{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":1}],"operation":{"kind":"equal"}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}}],"operation":{"kind":"slice"}},"type":{"kind":"bool"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"kind":"bytes"},{"kind":"bytes"}]}],"spec":"lexlean/target-program/1"},"sources":["5bfc6ad2db2940a1b7735f1309be47dcc4b5143d58cd00cbd6745311cf1f27ee"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"none","function":0,"name":"run","parameters":["own","own"]}],"name":"starts_with","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"arms":[{"binders":[2],"body":{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":1}],"operation":{"kind":"equal"}},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"prim","operands":[{"kind":"var","name":1}],"operation":{"kind":"length"}}],"operation":{"kind":"slice"}},"type":{"kind":"bool"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"kind":"bytes"},{"kind":"bytes"}]}],"spec":"lexlean/target-program/1"},"sources":["f6fd2434413f885eb97b3577e92c070677f6cd19f86ace77b5a60247639270b1"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/stdlib/packages/rust-std/starts_with/provenance.json b/tests/production-export/stdlib/packages/rust-std/starts_with/provenance.json index 882f5cd3f..135d3a5d2 100644 --- a/tests/production-export/stdlib/packages/rust-std/starts_with/provenance.json +++ b/tests/production-export/stdlib/packages/rust-std/starts_with/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"0560bbd795b0d18aa5e54a6e850d5ba891a72eed60586ffd18ba3818a9f06400","src/lib.rs":"e41016d01141f5539ac77f084f9fc0a489ee13b13edf01649d8a018bb2ed968f"},"name":"starts_with","profile":"rust-std","program":"1b124ea56028fd1442abdae2335001fd8074f4ded5f7e2fdfb72349b8cbee66f","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["5bfc6ad2db2940a1b7735f1309be47dcc4b5143d58cd00cbd6745311cf1f27ee"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"0560bbd795b0d18aa5e54a6e850d5ba891a72eed60586ffd18ba3818a9f06400","src/lib.rs":"e41016d01141f5539ac77f084f9fc0a489ee13b13edf01649d8a018bb2ed968f"},"name":"starts_with","profile":"rust-std","program":"1b124ea56028fd1442abdae2335001fd8074f4ded5f7e2fdfb72349b8cbee66f","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f6fd2434413f885eb97b3577e92c070677f6cd19f86ace77b5a60247639270b1"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/production-export/stdlib/packages/rust-std/trim/package.json b/tests/production-export/stdlib/packages/rust-std/trim/package.json index 2f5b8a297..2df6d55d4 100644 --- a/tests/production-export/stdlib/packages/rust-std/trim/package.json +++ b/tests/production-export/stdlib/packages/rust-std/trim/package.json @@ -1 +1 @@ -{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"trim","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"body":{"body":{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"nat_sub"}}]},"bound":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"kind":"let","name":2,"type":{"kind":"nat"}},"bound":{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},"kind":"let","name":1,"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"bytes"},"types":[{"kind":"bytes"}]},{"body":{"kind":"first","value":{"function":4,"kind":"call","operands":[{"captures":[{"kind":"var","name":0}],"function":5,"kind":"closure"},{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}}]}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"bytes"}]},{"body":{"kind":"first","value":{"function":4,"kind":"call","operands":[{"captures":[{"kind":"var","name":1},{"kind":"var","name":0}],"function":6,"kind":"closure"},{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}]}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"bytes"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[3],"body":{"kind":"var","name":3},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"","kind":"bytes"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"slice"}},"type":{"kind":"bytes"}},"parameters":[0,1,2],"result":{"kind":"bytes"},"types":[{"kind":"bytes"},{"kind":"nat"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":4,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"option","value":{"kind":"nat"}}},{"kind":"nat"},{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"var","name":1}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_sub"}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_sub"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"bytes"},{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":0}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"var","name":2}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}}},"parameters":[0,1,2],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"nat"},{"kind":"bytes"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[2],"body":{"function":9,"kind":"call","operands":[{"kind":"var","name":2}]},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":8,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"kind":"bool"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"kind":"bytes"},{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"index"}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"types":[{"kind":"bytes"},{"kind":"nat"}]},{"body":{"condition":{"condition":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"32"}}],"operation":{"kind":"equal"}},"else_branch":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"9"}}],"operation":{"kind":"equal"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"else_branch":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"10"}}],"operation":{"kind":"equal"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"12"}}],"operation":{"kind":"equal"}},"else_branch":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"13"}}],"operation":{"kind":"equal"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"fixed","width":"u8"}]}],"spec":"lexlean/target-program/1"},"sources":["5bfc6ad2db2940a1b7735f1309be47dcc4b5143d58cd00cbd6745311cf1f27ee"],"spec":"lexlean/rust-package/1","version":"1.0.0"} +{"exports":[{"errors":"overflow","function":0,"name":"run","parameters":["own"]}],"name":"trim","profile":"rust-std","program":{"adts":[],"functions":[{"body":{"body":{"body":{"function":3,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":2},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"nat_sub"}}]},"bound":{"function":2,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"kind":"let","name":2,"type":{"kind":"nat"}},"bound":{"function":1,"kind":"call","operands":[{"kind":"var","name":0}]},"kind":"let","name":1,"type":{"kind":"nat"}},"parameters":[0],"result":{"kind":"bytes"},"types":[{"kind":"bytes"}]},{"body":{"kind":"first","value":{"function":4,"kind":"call","operands":[{"captures":[{"kind":"var","name":0}],"function":5,"kind":"closure"},{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}},{"kind":"prim","operands":[{"kind":"var","name":0}],"operation":{"kind":"length"}}]}},"parameters":[0],"result":{"kind":"nat"},"types":[{"kind":"bytes"}]},{"body":{"kind":"first","value":{"function":4,"kind":"call","operands":[{"captures":[{"kind":"var","name":1},{"kind":"var","name":0}],"function":6,"kind":"closure"},{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}}]}},"parameters":[0,1],"result":{"kind":"nat"},"types":[{"kind":"bytes"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[3],"body":{"kind":"var","name":3},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"value","type":{"kind":"bytes"},"value":{"hex":"","kind":"bytes"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1},{"kind":"var","name":2}],"operation":{"kind":"slice"}},"type":{"kind":"bytes"}},"parameters":[0,1,2],"result":{"kind":"bytes"},"types":[{"kind":"bytes"},{"kind":"nat"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"zero"}},{"binders":[3],"body":{"arms":[{"binders":[],"body":{"kind":"build","operands":[{"kind":"var","name":2},{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}],"shape":{"kind":"pair"},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"none"}},{"binders":[4],"body":{"function":4,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":3},{"kind":"var","name":4}]},"shape":{"kind":"some"}}],"kind":"match","scrutinee":{"kind":"apply","operands":[{"kind":"var","name":2}],"target":{"kind":"var","name":0}},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"shape":{"kind":"succ"}}],"kind":"match","scrutinee":{"kind":"var","name":1},"type":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}}},"parameters":[0,1,2],"result":{"kind":"pair","left":{"kind":"nat"},"right":{"kind":"bool"}},"types":[{"kind":"fn","parameters":[{"kind":"nat"}],"result":{"kind":"option","value":{"kind":"nat"}}},{"kind":"nat"},{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"0"}},{"kind":"var","name":1}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_sub"}}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":1},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_sub"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"bytes"},{"kind":"nat"}]},{"body":{"condition":{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"var","name":0}],"operation":{"kind":"nat_lt"}},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"condition":{"function":7,"kind":"call","operands":[{"kind":"var","name":1},{"kind":"var","name":2}]},"else_branch":{"kind":"build","operands":[],"shape":{"kind":"none"},"type":{"kind":"option","value":{"kind":"nat"}}},"kind":"cond","then_branch":{"kind":"build","operands":[{"kind":"prim","operands":[{"kind":"var","name":2},{"kind":"value","type":{"kind":"nat"},"value":{"kind":"nat","value":"1"}}],"operation":{"kind":"nat_add"}}],"shape":{"kind":"some"},"type":{"kind":"option","value":{"kind":"nat"}}}}},"parameters":[0,1,2],"result":{"kind":"option","value":{"kind":"nat"}},"types":[{"kind":"nat"},{"kind":"bytes"},{"kind":"nat"}]},{"body":{"arms":[{"binders":[2],"body":{"function":9,"kind":"call","operands":[{"kind":"var","name":2}]},"shape":{"kind":"some"}},{"binders":[],"body":{"kind":"build","operands":[],"shape":{"kind":"false"},"type":{"kind":"bool"}},"shape":{"kind":"none"}}],"kind":"match","scrutinee":{"function":8,"kind":"call","operands":[{"kind":"var","name":0},{"kind":"var","name":1}]},"type":{"kind":"bool"}},"parameters":[0,1],"result":{"kind":"bool"},"types":[{"kind":"bytes"},{"kind":"nat"}]},{"body":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"var","name":1}],"operation":{"kind":"index"}},"parameters":[0,1],"result":{"kind":"option","value":{"kind":"fixed","width":"u8"}},"types":[{"kind":"bytes"},{"kind":"nat"}]},{"body":{"condition":{"condition":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"32"}}],"operation":{"kind":"equal"}},"else_branch":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"9"}}],"operation":{"kind":"equal"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"else_branch":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"10"}}],"operation":{"kind":"equal"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"else_branch":{"condition":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"12"}}],"operation":{"kind":"equal"}},"else_branch":{"kind":"prim","operands":[{"kind":"var","name":0},{"kind":"value","type":{"kind":"fixed","width":"u8"},"value":{"kind":"u8","value":"13"}}],"operation":{"kind":"equal"}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"kind":"cond","then_branch":{"kind":"build","operands":[],"shape":{"kind":"true"},"type":{"kind":"bool"}}},"parameters":[0],"result":{"kind":"bool"},"types":[{"kind":"fixed","width":"u8"}]}],"spec":"lexlean/target-program/1"},"sources":["f6fd2434413f885eb97b3577e92c070677f6cd19f86ace77b5a60247639270b1"],"spec":"lexlean/rust-package/1","version":"1.0.0"} diff --git a/tests/production-export/stdlib/packages/rust-std/trim/provenance.json b/tests/production-export/stdlib/packages/rust-std/trim/provenance.json index b1fe482e2..dbaa2d452 100644 --- a/tests/production-export/stdlib/packages/rust-std/trim/provenance.json +++ b/tests/production-export/stdlib/packages/rust-std/trim/provenance.json @@ -1 +1 @@ -{"compiler_semantics":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"177bb2192e3758151d1838757adc34d91380a78d0d3c0d315694c6fac2da6618","src/lib.rs":"f57aaf2f65cc974d6053dbf690da0824652e28ae5e6761eb9bb01cdfe9492067"},"name":"trim","profile":"rust-std","program":"9a47374cdeea9e3296ff6a7908b312ddf5a3243176f7652b57d8fbe92eac8455","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["5bfc6ad2db2940a1b7735f1309be47dcc4b5143d58cd00cbd6745311cf1f27ee"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} +{"compiler_semantics":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","exports":[{"function":0,"name":"run"}],"files":{"Cargo.toml":"177bb2192e3758151d1838757adc34d91380a78d0d3c0d315694c6fac2da6618","src/lib.rs":"f57aaf2f65cc974d6053dbf690da0824652e28ae5e6761eb9bb01cdfe9492067"},"name":"trim","profile":"rust-std","program":"9a47374cdeea9e3296ff6a7908b312ddf5a3243176f7652b57d8fbe92eac8455","runtime":"3041e90e504b052caf830dfc20f8743d30cdb7a0c8e5c460f8b50f314765ea9c","sources":["f6fd2434413f885eb97b3577e92c070677f6cd19f86ace77b5a60247639270b1"],"spec":"lexlean/rust-provenance/1","version":"1.0.0"} diff --git a/tests/tooling/commands/expected/build/manifest.json b/tests/tooling/commands/expected/build/manifest.json index f6beea887..2da12061b 100644 --- a/tests/tooling/commands/expected/build/manifest.json +++ b/tests/tooling/commands/expected/build/manifest.json @@ -1 +1 @@ -{"build_id":"31edfdcdb9d7a4a87ac788ac6a91bec895470172f7765de2e298d31ba49ea7e1","compiler":{"semantics_id":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","version":"0.3.0"},"inputs":[{"byte_length":2684,"kind":"lexicon","path":"embedded","sha256":"3bc0fb09d706ffa7d5a1363302ea87c049acc7c7dcafde63c62682620c11be9b"},{"byte_length":14885,"kind":"lexicon","path":"embedded","sha256":"e0db021e01b91d651c43921d66f6b0023c8efbf17cac2ec53192ce5305e4e1ac"},{"byte_length":36197,"kind":"lexicon","path":"embedded","sha256":"827317cae68c162f3a96c8a8de4e53ab348e7d3724fd2b834fa85ecde1a1b392"},{"byte_length":1597,"kind":"lock","path":"lexlean.lock","sha256":"c442ed0e043a175015e804b79e379c42714e7665a51d7ad36e25c1e0da9b4861"},{"byte_length":653,"kind":"project-config","path":"lexlean.toml","sha256":"000fa39a96ae620f80489fd4d7aa5bd620bf63e8d95e237b89a0b630f07007b0"},{"byte_length":19993,"kind":"source","path":"src/Main.lex.tex","sha256":"5800715dce08fdc9bb05acc4dcd61ae45a6f975b55dc9d6dfc877a8b4798da13"}],"language":"1.2","lean_toolchain":"leanprover/lean4:v4.32.1","modules":[{"lean_module":"ToolingCommands.Main","module":"Main","source_path":"src/Main.lex.tex"}],"outputs":[{"byte_length":12401,"kind":"coverage","path":"coverage/ToolingCommands/Main.coverage.json","sha256":"02e19aa1dc473e65f8a87c22e614231e3d257e408ca43199b4e8eb3bd08893b0"},{"byte_length":1420,"kind":"lean","path":"modules/ToolingCommands/Main.lean","sha256":"38396294e0a117e75ce20bc8b741600264401adb391acb47638f1ae75f30db94"},{"byte_length":10602,"kind":"lexicon-closure","path":"lexicons/Main.closure.json","sha256":"727110f90daff26a2e5eb8069fcefecd5790c1264f5d6d4b2ef57db1c2bfb867"},{"byte_length":8122,"kind":"map","path":"maps/ToolingCommands/Main.map.json","sha256":"69c703430bdca98342cc279011b35371a9b7493c0a68331500d6823c20e48a28"},{"byte_length":13591,"kind":"tex","path":"modules/ToolingCommands/Main.tex","sha256":"38c0c5a259c3d8e600dad43081abe7e842365fc5ca7a21bb88123b2e49434bb9"}],"project":"tooling-commands","selection":["Main"],"semantic_id":"e142ed0b77c34e3e61315ab8c4429e6fb022dca0684f34e611095679fb81a216","source_id":"ad47e4133072b0fd3a31e9848eeb1d8d5b35a9818ea798aabdf8a4e376aa99ba","spec":"lexlean/build-manifest/1"} +{"build_id":"3f627fb7508a78363d2fb35a66c9ee3b61e6de6fa6a4347951e5853aa39a310c","compiler":{"semantics_id":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","version":"0.3.0"},"inputs":[{"byte_length":2684,"kind":"lexicon","path":"embedded","sha256":"3bc0fb09d706ffa7d5a1363302ea87c049acc7c7dcafde63c62682620c11be9b"},{"byte_length":14885,"kind":"lexicon","path":"embedded","sha256":"e0db021e01b91d651c43921d66f6b0023c8efbf17cac2ec53192ce5305e4e1ac"},{"byte_length":36197,"kind":"lexicon","path":"embedded","sha256":"827317cae68c162f3a96c8a8de4e53ab348e7d3724fd2b834fa85ecde1a1b392"},{"byte_length":1597,"kind":"lock","path":"lexlean.lock","sha256":"d2dac4072fc8daf6e8803484e34984ef7fa49693cf0d2b8b31a57fcf8b5f0264"},{"byte_length":653,"kind":"project-config","path":"lexlean.toml","sha256":"000fa39a96ae620f80489fd4d7aa5bd620bf63e8d95e237b89a0b630f07007b0"},{"byte_length":19993,"kind":"source","path":"src/Main.lex.tex","sha256":"5800715dce08fdc9bb05acc4dcd61ae45a6f975b55dc9d6dfc877a8b4798da13"}],"language":"1.2","lean_toolchain":"leanprover/lean4:v4.32.1","modules":[{"lean_module":"ToolingCommands.Main","module":"Main","source_path":"src/Main.lex.tex"}],"outputs":[{"byte_length":12401,"kind":"coverage","path":"coverage/ToolingCommands/Main.coverage.json","sha256":"02e19aa1dc473e65f8a87c22e614231e3d257e408ca43199b4e8eb3bd08893b0"},{"byte_length":1420,"kind":"lean","path":"modules/ToolingCommands/Main.lean","sha256":"38396294e0a117e75ce20bc8b741600264401adb391acb47638f1ae75f30db94"},{"byte_length":10602,"kind":"lexicon-closure","path":"lexicons/Main.closure.json","sha256":"727110f90daff26a2e5eb8069fcefecd5790c1264f5d6d4b2ef57db1c2bfb867"},{"byte_length":8122,"kind":"map","path":"maps/ToolingCommands/Main.map.json","sha256":"c0ee1410db5ebd20d67ca5a4eed962ccff1794f37386e35595f8ef3f1241dee6"},{"byte_length":13591,"kind":"tex","path":"modules/ToolingCommands/Main.tex","sha256":"38c0c5a259c3d8e600dad43081abe7e842365fc5ca7a21bb88123b2e49434bb9"}],"project":"tooling-commands","selection":["Main"],"semantic_id":"eb9bbdf568bc93c4cc0a82086d442aa1240ceec70abc45ce0969b102b0b50b74","source_id":"ba4f8363dc2f80d3b045284ba43dcfb33b07fe825a04816d984cb539af4b472a","spec":"lexlean/build-manifest/1"} diff --git a/tests/tooling/commands/expected/build/maps/ToolingCommands/Main.map.json b/tests/tooling/commands/expected/build/maps/ToolingCommands/Main.map.json index 3df40b75f..0d3e6d4d8 100644 --- a/tests/tooling/commands/expected/build/maps/ToolingCommands/Main.map.json +++ b/tests/tooling/commands/expected/build/maps/ToolingCommands/Main.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/ToolingCommands/Main.lean"},{"id":1,"kind":"tex","path":"modules/ToolingCommands/Main.tex"}],"mappings":[{"artifact":0,"gen_end":114,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":19993,"src_start":0},{"artifact":0,"gen_end":518,"gen_start":114,"node":1,"role":"declaration","source":0,"src_end":16486,"src_start":14504},{"artifact":0,"gen_end":659,"gen_start":518,"node":2,"role":"declaration","source":0,"src_end":16653,"src_start":16492},{"artifact":0,"gen_end":1000,"gen_start":659,"node":3,"role":"declaration","source":0,"src_end":18095,"src_start":16659},{"artifact":0,"gen_end":1088,"gen_start":1000,"node":4,"role":"declaration","source":0,"src_end":18432,"src_start":18101},{"artifact":0,"gen_end":1190,"gen_start":1088,"node":5,"role":"declaration","source":0,"src_end":18907,"src_start":18438},{"artifact":0,"gen_end":1349,"gen_start":1190,"node":6,"role":"declaration","source":0,"src_end":19594,"src_start":18913},{"artifact":0,"gen_end":1400,"gen_start":1349,"node":7,"role":"declaration","source":0,"src_end":19884,"src_start":19600},{"artifact":0,"gen_end":1420,"gen_start":1400,"node":8,"role":"declaration","source":0,"src_end":19937,"src_start":19890},{"artifact":0,"gen_end":1420,"gen_start":1420,"node":0,"role":"declaration","source":0,"src_end":19993,"src_start":0},{"artifact":1,"gen_end":133,"gen_start":0,"node":9,"role":"declaration","source":0,"src_end":19993,"src_start":0},{"artifact":1,"gen_end":406,"gen_start":133,"node":10,"role":"declaration","source":0,"src_end":548,"src_start":269},{"artifact":1,"gen_end":661,"gen_start":406,"node":11,"role":"declaration","source":0,"src_end":805,"src_start":554},{"artifact":1,"gen_end":969,"gen_start":661,"node":12,"role":"declaration","source":0,"src_end":1090,"src_start":811},{"artifact":1,"gen_end":1299,"gen_start":969,"node":13,"role":"declaration","source":0,"src_end":1397,"src_start":1096},{"artifact":1,"gen_end":1547,"gen_start":1299,"node":14,"role":"declaration","source":0,"src_end":1647,"src_start":1403},{"artifact":1,"gen_end":1847,"gen_start":1547,"node":15,"role":"declaration","source":0,"src_end":1927,"src_start":1653},{"artifact":1,"gen_end":2147,"gen_start":1847,"node":16,"role":"declaration","source":0,"src_end":2207,"src_start":1933},{"artifact":1,"gen_end":2397,"gen_start":2147,"node":17,"role":"declaration","source":0,"src_end":2459,"src_start":2213},{"artifact":1,"gen_end":2808,"gen_start":2397,"node":18,"role":"declaration","source":0,"src_end":3343,"src_start":2465},{"artifact":1,"gen_end":3302,"gen_start":2808,"node":19,"role":"declaration","source":0,"src_end":4668,"src_start":3349},{"artifact":1,"gen_end":3573,"gen_start":3302,"node":20,"role":"declaration","source":0,"src_end":4916,"src_start":4674},{"artifact":1,"gen_end":4018,"gen_start":3573,"node":21,"role":"declaration","source":0,"src_end":5915,"src_start":4922},{"artifact":1,"gen_end":4418,"gen_start":4018,"node":22,"role":"declaration","source":0,"src_end":6521,"src_start":5921},{"artifact":1,"gen_end":4725,"gen_start":4418,"node":23,"role":"declaration","source":0,"src_end":6833,"src_start":6527},{"artifact":1,"gen_end":5050,"gen_start":4725,"node":24,"role":"declaration","source":0,"src_end":7215,"src_start":6839},{"artifact":1,"gen_end":5401,"gen_start":5050,"node":25,"role":"declaration","source":0,"src_end":7684,"src_start":7221},{"artifact":1,"gen_end":5867,"gen_start":5401,"node":26,"role":"declaration","source":0,"src_end":8512,"src_start":7690},{"artifact":1,"gen_end":6132,"gen_start":5867,"node":27,"role":"declaration","source":0,"src_end":8777,"src_start":8518},{"artifact":1,"gen_end":6445,"gen_start":6132,"node":28,"role":"declaration","source":0,"src_end":9070,"src_start":8783},{"artifact":1,"gen_end":6758,"gen_start":6445,"node":29,"role":"declaration","source":0,"src_end":9361,"src_start":9076},{"artifact":1,"gen_end":7011,"gen_start":6758,"node":30,"role":"declaration","source":0,"src_end":9616,"src_start":9367},{"artifact":1,"gen_end":7312,"gen_start":7011,"node":31,"role":"declaration","source":0,"src_end":9897,"src_start":9622},{"artifact":1,"gen_end":7559,"gen_start":7312,"node":32,"role":"declaration","source":0,"src_end":10146,"src_start":9903},{"artifact":1,"gen_end":7823,"gen_start":7559,"node":33,"role":"declaration","source":0,"src_end":10410,"src_start":10152},{"artifact":1,"gen_end":8136,"gen_start":7823,"node":34,"role":"declaration","source":0,"src_end":10698,"src_start":10416},{"artifact":1,"gen_end":8398,"gen_start":8136,"node":35,"role":"declaration","source":0,"src_end":10960,"src_start":10704},{"artifact":1,"gen_end":8717,"gen_start":8398,"node":36,"role":"declaration","source":0,"src_end":11452,"src_start":10966},{"artifact":1,"gen_end":11068,"gen_start":8717,"node":37,"role":"declaration","source":0,"src_end":14498,"src_start":11458},{"artifact":1,"gen_end":11666,"gen_start":11068,"node":38,"role":"declaration","source":0,"src_end":16486,"src_start":14504},{"artifact":1,"gen_end":11921,"gen_start":11666,"node":39,"role":"declaration","source":0,"src_end":16653,"src_start":16492},{"artifact":1,"gen_end":12443,"gen_start":11921,"node":40,"role":"declaration","source":0,"src_end":18095,"src_start":16659},{"artifact":1,"gen_end":12701,"gen_start":12443,"node":41,"role":"declaration","source":0,"src_end":18432,"src_start":18101},{"artifact":1,"gen_end":12966,"gen_start":12701,"node":42,"role":"declaration","source":0,"src_end":18907,"src_start":18438},{"artifact":1,"gen_end":13297,"gen_start":12966,"node":43,"role":"declaration","source":0,"src_end":19594,"src_start":18913},{"artifact":1,"gen_end":13458,"gen_start":13297,"node":44,"role":"declaration","source":0,"src_end":19884,"src_start":19600},{"artifact":1,"gen_end":13576,"gen_start":13458,"node":45,"role":"declaration","source":0,"src_end":19937,"src_start":19890},{"artifact":1,"gen_end":13591,"gen_start":13576,"node":9,"role":"declaration","source":0,"src_end":19993,"src_start":0}],"module":"Main","nodes":[{"id":0,"kind":"tooling-lean-module"},{"id":1,"kind":"tooling-declaration"},{"id":2,"kind":"tooling-declaration"},{"id":3,"kind":"tooling-declaration"},{"id":4,"kind":"tooling-declaration"},{"id":5,"kind":"tooling-declaration"},{"id":6,"kind":"tooling-declaration"},{"id":7,"kind":"tooling-declaration"},{"id":8,"kind":"tooling-declaration"},{"id":9,"kind":"tooling-latex-module"},{"id":10,"kind":"tooling-declaration"},{"id":11,"kind":"tooling-declaration"},{"id":12,"kind":"tooling-declaration"},{"id":13,"kind":"tooling-declaration"},{"id":14,"kind":"tooling-declaration"},{"id":15,"kind":"tooling-declaration"},{"id":16,"kind":"tooling-declaration"},{"id":17,"kind":"tooling-declaration"},{"id":18,"kind":"tooling-declaration"},{"id":19,"kind":"tooling-declaration"},{"id":20,"kind":"tooling-declaration"},{"id":21,"kind":"tooling-declaration"},{"id":22,"kind":"tooling-declaration"},{"id":23,"kind":"tooling-declaration"},{"id":24,"kind":"tooling-declaration"},{"id":25,"kind":"tooling-declaration"},{"id":26,"kind":"tooling-declaration"},{"id":27,"kind":"tooling-declaration"},{"id":28,"kind":"tooling-declaration"},{"id":29,"kind":"tooling-declaration"},{"id":30,"kind":"tooling-declaration"},{"id":31,"kind":"tooling-declaration"},{"id":32,"kind":"tooling-declaration"},{"id":33,"kind":"tooling-declaration"},{"id":34,"kind":"tooling-declaration"},{"id":35,"kind":"tooling-declaration"},{"id":36,"kind":"tooling-declaration"},{"id":37,"kind":"tooling-declaration"},{"id":38,"kind":"tooling-declaration"},{"id":39,"kind":"tooling-declaration"},{"id":40,"kind":"tooling-declaration"},{"id":41,"kind":"tooling-declaration"},{"id":42,"kind":"tooling-declaration"},{"id":43,"kind":"tooling-declaration"},{"id":44,"kind":"tooling-declaration"},{"id":45,"kind":"tooling-declaration"}],"semantic_id":"e142ed0b77c34e3e61315ab8c4429e6fb022dca0684f34e611095679fb81a216","source_id":"ad47e4133072b0fd3a31e9848eeb1d8d5b35a9818ea798aabdf8a4e376aa99ba","sources":[{"id":0,"kind":"file","path":"src/Main.lex.tex","sha256":"5800715dce08fdc9bb05acc4dcd61ae45a6f975b55dc9d6dfc877a8b4798da13"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/ToolingCommands/Main.lean"},{"id":1,"kind":"tex","path":"modules/ToolingCommands/Main.tex"}],"mappings":[{"artifact":0,"gen_end":114,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":19993,"src_start":0},{"artifact":0,"gen_end":518,"gen_start":114,"node":1,"role":"declaration","source":0,"src_end":16486,"src_start":14504},{"artifact":0,"gen_end":659,"gen_start":518,"node":2,"role":"declaration","source":0,"src_end":16653,"src_start":16492},{"artifact":0,"gen_end":1000,"gen_start":659,"node":3,"role":"declaration","source":0,"src_end":18095,"src_start":16659},{"artifact":0,"gen_end":1088,"gen_start":1000,"node":4,"role":"declaration","source":0,"src_end":18432,"src_start":18101},{"artifact":0,"gen_end":1190,"gen_start":1088,"node":5,"role":"declaration","source":0,"src_end":18907,"src_start":18438},{"artifact":0,"gen_end":1349,"gen_start":1190,"node":6,"role":"declaration","source":0,"src_end":19594,"src_start":18913},{"artifact":0,"gen_end":1400,"gen_start":1349,"node":7,"role":"declaration","source":0,"src_end":19884,"src_start":19600},{"artifact":0,"gen_end":1420,"gen_start":1400,"node":8,"role":"declaration","source":0,"src_end":19937,"src_start":19890},{"artifact":0,"gen_end":1420,"gen_start":1420,"node":0,"role":"declaration","source":0,"src_end":19993,"src_start":0},{"artifact":1,"gen_end":133,"gen_start":0,"node":9,"role":"declaration","source":0,"src_end":19993,"src_start":0},{"artifact":1,"gen_end":406,"gen_start":133,"node":10,"role":"declaration","source":0,"src_end":548,"src_start":269},{"artifact":1,"gen_end":661,"gen_start":406,"node":11,"role":"declaration","source":0,"src_end":805,"src_start":554},{"artifact":1,"gen_end":969,"gen_start":661,"node":12,"role":"declaration","source":0,"src_end":1090,"src_start":811},{"artifact":1,"gen_end":1299,"gen_start":969,"node":13,"role":"declaration","source":0,"src_end":1397,"src_start":1096},{"artifact":1,"gen_end":1547,"gen_start":1299,"node":14,"role":"declaration","source":0,"src_end":1647,"src_start":1403},{"artifact":1,"gen_end":1847,"gen_start":1547,"node":15,"role":"declaration","source":0,"src_end":1927,"src_start":1653},{"artifact":1,"gen_end":2147,"gen_start":1847,"node":16,"role":"declaration","source":0,"src_end":2207,"src_start":1933},{"artifact":1,"gen_end":2397,"gen_start":2147,"node":17,"role":"declaration","source":0,"src_end":2459,"src_start":2213},{"artifact":1,"gen_end":2808,"gen_start":2397,"node":18,"role":"declaration","source":0,"src_end":3343,"src_start":2465},{"artifact":1,"gen_end":3302,"gen_start":2808,"node":19,"role":"declaration","source":0,"src_end":4668,"src_start":3349},{"artifact":1,"gen_end":3573,"gen_start":3302,"node":20,"role":"declaration","source":0,"src_end":4916,"src_start":4674},{"artifact":1,"gen_end":4018,"gen_start":3573,"node":21,"role":"declaration","source":0,"src_end":5915,"src_start":4922},{"artifact":1,"gen_end":4418,"gen_start":4018,"node":22,"role":"declaration","source":0,"src_end":6521,"src_start":5921},{"artifact":1,"gen_end":4725,"gen_start":4418,"node":23,"role":"declaration","source":0,"src_end":6833,"src_start":6527},{"artifact":1,"gen_end":5050,"gen_start":4725,"node":24,"role":"declaration","source":0,"src_end":7215,"src_start":6839},{"artifact":1,"gen_end":5401,"gen_start":5050,"node":25,"role":"declaration","source":0,"src_end":7684,"src_start":7221},{"artifact":1,"gen_end":5867,"gen_start":5401,"node":26,"role":"declaration","source":0,"src_end":8512,"src_start":7690},{"artifact":1,"gen_end":6132,"gen_start":5867,"node":27,"role":"declaration","source":0,"src_end":8777,"src_start":8518},{"artifact":1,"gen_end":6445,"gen_start":6132,"node":28,"role":"declaration","source":0,"src_end":9070,"src_start":8783},{"artifact":1,"gen_end":6758,"gen_start":6445,"node":29,"role":"declaration","source":0,"src_end":9361,"src_start":9076},{"artifact":1,"gen_end":7011,"gen_start":6758,"node":30,"role":"declaration","source":0,"src_end":9616,"src_start":9367},{"artifact":1,"gen_end":7312,"gen_start":7011,"node":31,"role":"declaration","source":0,"src_end":9897,"src_start":9622},{"artifact":1,"gen_end":7559,"gen_start":7312,"node":32,"role":"declaration","source":0,"src_end":10146,"src_start":9903},{"artifact":1,"gen_end":7823,"gen_start":7559,"node":33,"role":"declaration","source":0,"src_end":10410,"src_start":10152},{"artifact":1,"gen_end":8136,"gen_start":7823,"node":34,"role":"declaration","source":0,"src_end":10698,"src_start":10416},{"artifact":1,"gen_end":8398,"gen_start":8136,"node":35,"role":"declaration","source":0,"src_end":10960,"src_start":10704},{"artifact":1,"gen_end":8717,"gen_start":8398,"node":36,"role":"declaration","source":0,"src_end":11452,"src_start":10966},{"artifact":1,"gen_end":11068,"gen_start":8717,"node":37,"role":"declaration","source":0,"src_end":14498,"src_start":11458},{"artifact":1,"gen_end":11666,"gen_start":11068,"node":38,"role":"declaration","source":0,"src_end":16486,"src_start":14504},{"artifact":1,"gen_end":11921,"gen_start":11666,"node":39,"role":"declaration","source":0,"src_end":16653,"src_start":16492},{"artifact":1,"gen_end":12443,"gen_start":11921,"node":40,"role":"declaration","source":0,"src_end":18095,"src_start":16659},{"artifact":1,"gen_end":12701,"gen_start":12443,"node":41,"role":"declaration","source":0,"src_end":18432,"src_start":18101},{"artifact":1,"gen_end":12966,"gen_start":12701,"node":42,"role":"declaration","source":0,"src_end":18907,"src_start":18438},{"artifact":1,"gen_end":13297,"gen_start":12966,"node":43,"role":"declaration","source":0,"src_end":19594,"src_start":18913},{"artifact":1,"gen_end":13458,"gen_start":13297,"node":44,"role":"declaration","source":0,"src_end":19884,"src_start":19600},{"artifact":1,"gen_end":13576,"gen_start":13458,"node":45,"role":"declaration","source":0,"src_end":19937,"src_start":19890},{"artifact":1,"gen_end":13591,"gen_start":13576,"node":9,"role":"declaration","source":0,"src_end":19993,"src_start":0}],"module":"Main","nodes":[{"id":0,"kind":"tooling-lean-module"},{"id":1,"kind":"tooling-declaration"},{"id":2,"kind":"tooling-declaration"},{"id":3,"kind":"tooling-declaration"},{"id":4,"kind":"tooling-declaration"},{"id":5,"kind":"tooling-declaration"},{"id":6,"kind":"tooling-declaration"},{"id":7,"kind":"tooling-declaration"},{"id":8,"kind":"tooling-declaration"},{"id":9,"kind":"tooling-latex-module"},{"id":10,"kind":"tooling-declaration"},{"id":11,"kind":"tooling-declaration"},{"id":12,"kind":"tooling-declaration"},{"id":13,"kind":"tooling-declaration"},{"id":14,"kind":"tooling-declaration"},{"id":15,"kind":"tooling-declaration"},{"id":16,"kind":"tooling-declaration"},{"id":17,"kind":"tooling-declaration"},{"id":18,"kind":"tooling-declaration"},{"id":19,"kind":"tooling-declaration"},{"id":20,"kind":"tooling-declaration"},{"id":21,"kind":"tooling-declaration"},{"id":22,"kind":"tooling-declaration"},{"id":23,"kind":"tooling-declaration"},{"id":24,"kind":"tooling-declaration"},{"id":25,"kind":"tooling-declaration"},{"id":26,"kind":"tooling-declaration"},{"id":27,"kind":"tooling-declaration"},{"id":28,"kind":"tooling-declaration"},{"id":29,"kind":"tooling-declaration"},{"id":30,"kind":"tooling-declaration"},{"id":31,"kind":"tooling-declaration"},{"id":32,"kind":"tooling-declaration"},{"id":33,"kind":"tooling-declaration"},{"id":34,"kind":"tooling-declaration"},{"id":35,"kind":"tooling-declaration"},{"id":36,"kind":"tooling-declaration"},{"id":37,"kind":"tooling-declaration"},{"id":38,"kind":"tooling-declaration"},{"id":39,"kind":"tooling-declaration"},{"id":40,"kind":"tooling-declaration"},{"id":41,"kind":"tooling-declaration"},{"id":42,"kind":"tooling-declaration"},{"id":43,"kind":"tooling-declaration"},{"id":44,"kind":"tooling-declaration"},{"id":45,"kind":"tooling-declaration"}],"semantic_id":"eb9bbdf568bc93c4cc0a82086d442aa1240ceec70abc45ce0969b102b0b50b74","source_id":"ba4f8363dc2f80d3b045284ba43dcfb33b07fe825a04816d984cb539af4b472a","sources":[{"id":0,"kind":"file","path":"src/Main.lex.tex","sha256":"5800715dce08fdc9bb05acc4dcd61ae45a6f975b55dc9d6dfc877a8b4798da13"}],"spec":"lexlean/source-map/1"} diff --git a/tests/tooling/core/expected/build/manifest.json b/tests/tooling/core/expected/build/manifest.json index 25d8e61d8..d7056851d 100644 --- a/tests/tooling/core/expected/build/manifest.json +++ b/tests/tooling/core/expected/build/manifest.json @@ -1 +1 @@ -{"build_id":"e177c0cb551bfd7bd6a79141079d6f7e5e9da5297d94c055ea89921a84b42336","compiler":{"semantics_id":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","version":"0.3.0"},"inputs":[{"byte_length":2684,"kind":"lexicon","path":"embedded","sha256":"3bc0fb09d706ffa7d5a1363302ea87c049acc7c7dcafde63c62682620c11be9b"},{"byte_length":14885,"kind":"lexicon","path":"embedded","sha256":"e0db021e01b91d651c43921d66f6b0023c8efbf17cac2ec53192ce5305e4e1ac"},{"byte_length":36197,"kind":"lexicon","path":"embedded","sha256":"827317cae68c162f3a96c8a8de4e53ab348e7d3724fd2b834fa85ecde1a1b392"},{"byte_length":1597,"kind":"lock","path":"lexlean.lock","sha256":"8226a018139a31e4891cd0429e5b6a748f0c11b572285d15976aa67f3ccbb226"},{"byte_length":645,"kind":"project-config","path":"lexlean.toml","sha256":"238e7aca6dbdb072aca261449c9bd60440763fbf9d421fdde4d29f286ff968b4"},{"byte_length":14154,"kind":"source","path":"src/Main.lex.tex","sha256":"d611da375d88aa3efe36b73131554920015825a0d05c0cdfc1b9e50d357e3a6e"}],"language":"1.2","lean_toolchain":"leanprover/lean4:v4.32.1","modules":[{"lean_module":"ToolingCore.Main","module":"Main","source_path":"src/Main.lex.tex"}],"outputs":[{"byte_length":12100,"kind":"coverage","path":"coverage/ToolingCore/Main.coverage.json","sha256":"fa68401f794e7224cf2e10d57e7cd0eb4bdc82dffa1ce179d0a0c48b2686204b"},{"byte_length":1612,"kind":"lean","path":"modules/ToolingCore/Main.lean","sha256":"3382b759545d15d0cb3ac2cb3ea08833f13656dd0540dcc962d8a2710a30f935"},{"byte_length":10602,"kind":"lexicon-closure","path":"lexicons/Main.closure.json","sha256":"727110f90daff26a2e5eb8069fcefecd5790c1264f5d6d4b2ef57db1c2bfb867"},{"byte_length":7755,"kind":"map","path":"maps/ToolingCore/Main.map.json","sha256":"fb5ce45c34ec1592e222361a6e6cf55bae76d8aa945987ec2a469148a1f820ed"},{"byte_length":8320,"kind":"tex","path":"modules/ToolingCore/Main.tex","sha256":"386777537e87ff79421132913e55382244ba72e469fa00db76765a830658d42f"}],"project":"tooling-core","selection":["Main"],"semantic_id":"83f4bed424bc1989b14ddf52d5a1167c1d2838d34fbabc0f3f41610723cec7ab","source_id":"081d5123ba5e046a560480082f56ce1859cfa626307eef53630b1f0f4c92142d","spec":"lexlean/build-manifest/1"} +{"build_id":"d02fde77b13dd736acb15297b269a2c47a841e0fe17f4cc68b9a28e542b23e37","compiler":{"semantics_id":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","version":"0.3.0"},"inputs":[{"byte_length":2684,"kind":"lexicon","path":"embedded","sha256":"3bc0fb09d706ffa7d5a1363302ea87c049acc7c7dcafde63c62682620c11be9b"},{"byte_length":14885,"kind":"lexicon","path":"embedded","sha256":"e0db021e01b91d651c43921d66f6b0023c8efbf17cac2ec53192ce5305e4e1ac"},{"byte_length":36197,"kind":"lexicon","path":"embedded","sha256":"827317cae68c162f3a96c8a8de4e53ab348e7d3724fd2b834fa85ecde1a1b392"},{"byte_length":1597,"kind":"lock","path":"lexlean.lock","sha256":"632720d3d94f8f4abcc671155f1f12d6937356d7f3db815e3ab7d8de4ce769f6"},{"byte_length":645,"kind":"project-config","path":"lexlean.toml","sha256":"238e7aca6dbdb072aca261449c9bd60440763fbf9d421fdde4d29f286ff968b4"},{"byte_length":14154,"kind":"source","path":"src/Main.lex.tex","sha256":"d611da375d88aa3efe36b73131554920015825a0d05c0cdfc1b9e50d357e3a6e"}],"language":"1.2","lean_toolchain":"leanprover/lean4:v4.32.1","modules":[{"lean_module":"ToolingCore.Main","module":"Main","source_path":"src/Main.lex.tex"}],"outputs":[{"byte_length":12100,"kind":"coverage","path":"coverage/ToolingCore/Main.coverage.json","sha256":"fa68401f794e7224cf2e10d57e7cd0eb4bdc82dffa1ce179d0a0c48b2686204b"},{"byte_length":1612,"kind":"lean","path":"modules/ToolingCore/Main.lean","sha256":"3382b759545d15d0cb3ac2cb3ea08833f13656dd0540dcc962d8a2710a30f935"},{"byte_length":10602,"kind":"lexicon-closure","path":"lexicons/Main.closure.json","sha256":"727110f90daff26a2e5eb8069fcefecd5790c1264f5d6d4b2ef57db1c2bfb867"},{"byte_length":7755,"kind":"map","path":"maps/ToolingCore/Main.map.json","sha256":"2a18114e44e174957e1ab069275b8f275f764dd95c6971b5cf5642e8c1564075"},{"byte_length":8320,"kind":"tex","path":"modules/ToolingCore/Main.tex","sha256":"386777537e87ff79421132913e55382244ba72e469fa00db76765a830658d42f"}],"project":"tooling-core","selection":["Main"],"semantic_id":"37c360ca687bfe26cef1f43d257482c96e322ebc80a66882992634a315cb3fb0","source_id":"b09e666b29108c192788640ce5868612d7fb07a5dabbdec58003a8aeb11261df","spec":"lexlean/build-manifest/1"} diff --git a/tests/tooling/core/expected/build/maps/ToolingCore/Main.map.json b/tests/tooling/core/expected/build/maps/ToolingCore/Main.map.json index 673a2d71f..81899aad4 100644 --- a/tests/tooling/core/expected/build/maps/ToolingCore/Main.map.json +++ b/tests/tooling/core/expected/build/maps/ToolingCore/Main.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/ToolingCore/Main.lean"},{"id":1,"kind":"tex","path":"modules/ToolingCore/Main.tex"}],"mappings":[{"artifact":0,"gen_end":118,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":14154,"src_start":0},{"artifact":0,"gen_end":249,"gen_start":118,"node":1,"role":"declaration","source":0,"src_end":6580,"src_start":5792},{"artifact":0,"gen_end":404,"gen_start":249,"node":2,"role":"declaration","source":0,"src_end":7496,"src_start":6586},{"artifact":0,"gen_end":548,"gen_start":404,"node":3,"role":"declaration","source":0,"src_end":8300,"src_start":7502},{"artifact":0,"gen_end":684,"gen_start":548,"node":4,"role":"declaration","source":0,"src_end":9080,"src_start":8306},{"artifact":0,"gen_end":755,"gen_start":684,"node":5,"role":"declaration","source":0,"src_end":9512,"src_start":9086},{"artifact":0,"gen_end":850,"gen_start":755,"node":6,"role":"declaration","source":0,"src_end":9997,"src_start":9518},{"artifact":0,"gen_end":924,"gen_start":850,"node":7,"role":"declaration","source":0,"src_end":10360,"src_start":10003},{"artifact":0,"gen_end":991,"gen_start":924,"node":8,"role":"declaration","source":0,"src_end":10703,"src_start":10366},{"artifact":0,"gen_end":1070,"gen_start":991,"node":9,"role":"declaration","source":0,"src_end":11276,"src_start":10709},{"artifact":0,"gen_end":1172,"gen_start":1070,"node":10,"role":"declaration","source":0,"src_end":11793,"src_start":11282},{"artifact":0,"gen_end":1282,"gen_start":1172,"node":11,"role":"declaration","source":0,"src_end":12390,"src_start":11799},{"artifact":0,"gen_end":1350,"gen_start":1282,"node":12,"role":"declaration","source":0,"src_end":12711,"src_start":12396},{"artifact":0,"gen_end":1482,"gen_start":1350,"node":13,"role":"declaration","source":0,"src_end":13404,"src_start":12717},{"artifact":0,"gen_end":1612,"gen_start":1482,"node":14,"role":"declaration","source":0,"src_end":14098,"src_start":13410},{"artifact":0,"gen_end":1612,"gen_start":1612,"node":0,"role":"declaration","source":0,"src_end":14154,"src_start":0},{"artifact":1,"gen_end":133,"gen_start":0,"node":15,"role":"declaration","source":0,"src_end":14154,"src_start":0},{"artifact":1,"gen_end":406,"gen_start":133,"node":16,"role":"declaration","source":0,"src_end":548,"src_start":269},{"artifact":1,"gen_end":686,"gen_start":406,"node":17,"role":"declaration","source":0,"src_end":899,"src_start":554},{"artifact":1,"gen_end":1050,"gen_start":686,"node":18,"role":"declaration","source":0,"src_end":1440,"src_start":905},{"artifact":1,"gen_end":1300,"gen_start":1050,"node":19,"role":"declaration","source":0,"src_end":1692,"src_start":1446},{"artifact":1,"gen_end":1548,"gen_start":1300,"node":20,"role":"declaration","source":0,"src_end":1942,"src_start":1698},{"artifact":1,"gen_end":1889,"gen_start":1548,"node":21,"role":"declaration","source":0,"src_end":2329,"src_start":1948},{"artifact":1,"gen_end":2218,"gen_start":1889,"node":22,"role":"declaration","source":0,"src_end":2829,"src_start":2335},{"artifact":1,"gen_end":2518,"gen_start":2218,"node":23,"role":"declaration","source":0,"src_end":3106,"src_start":2835},{"artifact":1,"gen_end":2816,"gen_start":2518,"node":24,"role":"declaration","source":0,"src_end":3461,"src_start":3112},{"artifact":1,"gen_end":3115,"gen_start":2816,"node":25,"role":"declaration","source":0,"src_end":3817,"src_start":3467},{"artifact":1,"gen_end":3399,"gen_start":3115,"node":26,"role":"declaration","source":0,"src_end":4106,"src_start":3823},{"artifact":1,"gen_end":3823,"gen_start":3399,"node":27,"role":"declaration","source":0,"src_end":4909,"src_start":4112},{"artifact":1,"gen_end":4145,"gen_start":3823,"node":28,"role":"declaration","source":0,"src_end":5288,"src_start":4915},{"artifact":1,"gen_end":4536,"gen_start":4145,"node":29,"role":"declaration","source":0,"src_end":5786,"src_start":5294},{"artifact":1,"gen_end":4822,"gen_start":4536,"node":30,"role":"declaration","source":0,"src_end":6580,"src_start":5792},{"artifact":1,"gen_end":5159,"gen_start":4822,"node":31,"role":"declaration","source":0,"src_end":7496,"src_start":6586},{"artifact":1,"gen_end":5461,"gen_start":5159,"node":32,"role":"declaration","source":0,"src_end":8300,"src_start":7502},{"artifact":1,"gen_end":5765,"gen_start":5461,"node":33,"role":"declaration","source":0,"src_end":9080,"src_start":8306},{"artifact":1,"gen_end":5991,"gen_start":5765,"node":34,"role":"declaration","source":0,"src_end":9512,"src_start":9086},{"artifact":1,"gen_end":6252,"gen_start":5991,"node":35,"role":"declaration","source":0,"src_end":9997,"src_start":9518},{"artifact":1,"gen_end":6482,"gen_start":6252,"node":36,"role":"declaration","source":0,"src_end":10360,"src_start":10003},{"artifact":1,"gen_end":6703,"gen_start":6482,"node":37,"role":"declaration","source":0,"src_end":10703,"src_start":10366},{"artifact":1,"gen_end":6942,"gen_start":6703,"node":38,"role":"declaration","source":0,"src_end":11276,"src_start":10709},{"artifact":1,"gen_end":7200,"gen_start":6942,"node":39,"role":"declaration","source":0,"src_end":11793,"src_start":11282},{"artifact":1,"gen_end":7468,"gen_start":7200,"node":40,"role":"declaration","source":0,"src_end":12390,"src_start":11799},{"artifact":1,"gen_end":7697,"gen_start":7468,"node":41,"role":"declaration","source":0,"src_end":12711,"src_start":12396},{"artifact":1,"gen_end":8001,"gen_start":7697,"node":42,"role":"declaration","source":0,"src_end":13404,"src_start":12717},{"artifact":1,"gen_end":8305,"gen_start":8001,"node":43,"role":"declaration","source":0,"src_end":14098,"src_start":13410},{"artifact":1,"gen_end":8320,"gen_start":8305,"node":15,"role":"declaration","source":0,"src_end":14154,"src_start":0}],"module":"Main","nodes":[{"id":0,"kind":"tooling-lean-module"},{"id":1,"kind":"tooling-declaration"},{"id":2,"kind":"tooling-declaration"},{"id":3,"kind":"tooling-declaration"},{"id":4,"kind":"tooling-declaration"},{"id":5,"kind":"tooling-declaration"},{"id":6,"kind":"tooling-declaration"},{"id":7,"kind":"tooling-declaration"},{"id":8,"kind":"tooling-declaration"},{"id":9,"kind":"tooling-declaration"},{"id":10,"kind":"tooling-declaration"},{"id":11,"kind":"tooling-declaration"},{"id":12,"kind":"tooling-declaration"},{"id":13,"kind":"tooling-declaration"},{"id":14,"kind":"tooling-declaration"},{"id":15,"kind":"tooling-latex-module"},{"id":16,"kind":"tooling-declaration"},{"id":17,"kind":"tooling-declaration"},{"id":18,"kind":"tooling-declaration"},{"id":19,"kind":"tooling-declaration"},{"id":20,"kind":"tooling-declaration"},{"id":21,"kind":"tooling-declaration"},{"id":22,"kind":"tooling-declaration"},{"id":23,"kind":"tooling-declaration"},{"id":24,"kind":"tooling-declaration"},{"id":25,"kind":"tooling-declaration"},{"id":26,"kind":"tooling-declaration"},{"id":27,"kind":"tooling-declaration"},{"id":28,"kind":"tooling-declaration"},{"id":29,"kind":"tooling-declaration"},{"id":30,"kind":"tooling-declaration"},{"id":31,"kind":"tooling-declaration"},{"id":32,"kind":"tooling-declaration"},{"id":33,"kind":"tooling-declaration"},{"id":34,"kind":"tooling-declaration"},{"id":35,"kind":"tooling-declaration"},{"id":36,"kind":"tooling-declaration"},{"id":37,"kind":"tooling-declaration"},{"id":38,"kind":"tooling-declaration"},{"id":39,"kind":"tooling-declaration"},{"id":40,"kind":"tooling-declaration"},{"id":41,"kind":"tooling-declaration"},{"id":42,"kind":"tooling-declaration"},{"id":43,"kind":"tooling-declaration"}],"semantic_id":"83f4bed424bc1989b14ddf52d5a1167c1d2838d34fbabc0f3f41610723cec7ab","source_id":"081d5123ba5e046a560480082f56ce1859cfa626307eef53630b1f0f4c92142d","sources":[{"id":0,"kind":"file","path":"src/Main.lex.tex","sha256":"d611da375d88aa3efe36b73131554920015825a0d05c0cdfc1b9e50d357e3a6e"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/ToolingCore/Main.lean"},{"id":1,"kind":"tex","path":"modules/ToolingCore/Main.tex"}],"mappings":[{"artifact":0,"gen_end":118,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":14154,"src_start":0},{"artifact":0,"gen_end":249,"gen_start":118,"node":1,"role":"declaration","source":0,"src_end":6580,"src_start":5792},{"artifact":0,"gen_end":404,"gen_start":249,"node":2,"role":"declaration","source":0,"src_end":7496,"src_start":6586},{"artifact":0,"gen_end":548,"gen_start":404,"node":3,"role":"declaration","source":0,"src_end":8300,"src_start":7502},{"artifact":0,"gen_end":684,"gen_start":548,"node":4,"role":"declaration","source":0,"src_end":9080,"src_start":8306},{"artifact":0,"gen_end":755,"gen_start":684,"node":5,"role":"declaration","source":0,"src_end":9512,"src_start":9086},{"artifact":0,"gen_end":850,"gen_start":755,"node":6,"role":"declaration","source":0,"src_end":9997,"src_start":9518},{"artifact":0,"gen_end":924,"gen_start":850,"node":7,"role":"declaration","source":0,"src_end":10360,"src_start":10003},{"artifact":0,"gen_end":991,"gen_start":924,"node":8,"role":"declaration","source":0,"src_end":10703,"src_start":10366},{"artifact":0,"gen_end":1070,"gen_start":991,"node":9,"role":"declaration","source":0,"src_end":11276,"src_start":10709},{"artifact":0,"gen_end":1172,"gen_start":1070,"node":10,"role":"declaration","source":0,"src_end":11793,"src_start":11282},{"artifact":0,"gen_end":1282,"gen_start":1172,"node":11,"role":"declaration","source":0,"src_end":12390,"src_start":11799},{"artifact":0,"gen_end":1350,"gen_start":1282,"node":12,"role":"declaration","source":0,"src_end":12711,"src_start":12396},{"artifact":0,"gen_end":1482,"gen_start":1350,"node":13,"role":"declaration","source":0,"src_end":13404,"src_start":12717},{"artifact":0,"gen_end":1612,"gen_start":1482,"node":14,"role":"declaration","source":0,"src_end":14098,"src_start":13410},{"artifact":0,"gen_end":1612,"gen_start":1612,"node":0,"role":"declaration","source":0,"src_end":14154,"src_start":0},{"artifact":1,"gen_end":133,"gen_start":0,"node":15,"role":"declaration","source":0,"src_end":14154,"src_start":0},{"artifact":1,"gen_end":406,"gen_start":133,"node":16,"role":"declaration","source":0,"src_end":548,"src_start":269},{"artifact":1,"gen_end":686,"gen_start":406,"node":17,"role":"declaration","source":0,"src_end":899,"src_start":554},{"artifact":1,"gen_end":1050,"gen_start":686,"node":18,"role":"declaration","source":0,"src_end":1440,"src_start":905},{"artifact":1,"gen_end":1300,"gen_start":1050,"node":19,"role":"declaration","source":0,"src_end":1692,"src_start":1446},{"artifact":1,"gen_end":1548,"gen_start":1300,"node":20,"role":"declaration","source":0,"src_end":1942,"src_start":1698},{"artifact":1,"gen_end":1889,"gen_start":1548,"node":21,"role":"declaration","source":0,"src_end":2329,"src_start":1948},{"artifact":1,"gen_end":2218,"gen_start":1889,"node":22,"role":"declaration","source":0,"src_end":2829,"src_start":2335},{"artifact":1,"gen_end":2518,"gen_start":2218,"node":23,"role":"declaration","source":0,"src_end":3106,"src_start":2835},{"artifact":1,"gen_end":2816,"gen_start":2518,"node":24,"role":"declaration","source":0,"src_end":3461,"src_start":3112},{"artifact":1,"gen_end":3115,"gen_start":2816,"node":25,"role":"declaration","source":0,"src_end":3817,"src_start":3467},{"artifact":1,"gen_end":3399,"gen_start":3115,"node":26,"role":"declaration","source":0,"src_end":4106,"src_start":3823},{"artifact":1,"gen_end":3823,"gen_start":3399,"node":27,"role":"declaration","source":0,"src_end":4909,"src_start":4112},{"artifact":1,"gen_end":4145,"gen_start":3823,"node":28,"role":"declaration","source":0,"src_end":5288,"src_start":4915},{"artifact":1,"gen_end":4536,"gen_start":4145,"node":29,"role":"declaration","source":0,"src_end":5786,"src_start":5294},{"artifact":1,"gen_end":4822,"gen_start":4536,"node":30,"role":"declaration","source":0,"src_end":6580,"src_start":5792},{"artifact":1,"gen_end":5159,"gen_start":4822,"node":31,"role":"declaration","source":0,"src_end":7496,"src_start":6586},{"artifact":1,"gen_end":5461,"gen_start":5159,"node":32,"role":"declaration","source":0,"src_end":8300,"src_start":7502},{"artifact":1,"gen_end":5765,"gen_start":5461,"node":33,"role":"declaration","source":0,"src_end":9080,"src_start":8306},{"artifact":1,"gen_end":5991,"gen_start":5765,"node":34,"role":"declaration","source":0,"src_end":9512,"src_start":9086},{"artifact":1,"gen_end":6252,"gen_start":5991,"node":35,"role":"declaration","source":0,"src_end":9997,"src_start":9518},{"artifact":1,"gen_end":6482,"gen_start":6252,"node":36,"role":"declaration","source":0,"src_end":10360,"src_start":10003},{"artifact":1,"gen_end":6703,"gen_start":6482,"node":37,"role":"declaration","source":0,"src_end":10703,"src_start":10366},{"artifact":1,"gen_end":6942,"gen_start":6703,"node":38,"role":"declaration","source":0,"src_end":11276,"src_start":10709},{"artifact":1,"gen_end":7200,"gen_start":6942,"node":39,"role":"declaration","source":0,"src_end":11793,"src_start":11282},{"artifact":1,"gen_end":7468,"gen_start":7200,"node":40,"role":"declaration","source":0,"src_end":12390,"src_start":11799},{"artifact":1,"gen_end":7697,"gen_start":7468,"node":41,"role":"declaration","source":0,"src_end":12711,"src_start":12396},{"artifact":1,"gen_end":8001,"gen_start":7697,"node":42,"role":"declaration","source":0,"src_end":13404,"src_start":12717},{"artifact":1,"gen_end":8305,"gen_start":8001,"node":43,"role":"declaration","source":0,"src_end":14098,"src_start":13410},{"artifact":1,"gen_end":8320,"gen_start":8305,"node":15,"role":"declaration","source":0,"src_end":14154,"src_start":0}],"module":"Main","nodes":[{"id":0,"kind":"tooling-lean-module"},{"id":1,"kind":"tooling-declaration"},{"id":2,"kind":"tooling-declaration"},{"id":3,"kind":"tooling-declaration"},{"id":4,"kind":"tooling-declaration"},{"id":5,"kind":"tooling-declaration"},{"id":6,"kind":"tooling-declaration"},{"id":7,"kind":"tooling-declaration"},{"id":8,"kind":"tooling-declaration"},{"id":9,"kind":"tooling-declaration"},{"id":10,"kind":"tooling-declaration"},{"id":11,"kind":"tooling-declaration"},{"id":12,"kind":"tooling-declaration"},{"id":13,"kind":"tooling-declaration"},{"id":14,"kind":"tooling-declaration"},{"id":15,"kind":"tooling-latex-module"},{"id":16,"kind":"tooling-declaration"},{"id":17,"kind":"tooling-declaration"},{"id":18,"kind":"tooling-declaration"},{"id":19,"kind":"tooling-declaration"},{"id":20,"kind":"tooling-declaration"},{"id":21,"kind":"tooling-declaration"},{"id":22,"kind":"tooling-declaration"},{"id":23,"kind":"tooling-declaration"},{"id":24,"kind":"tooling-declaration"},{"id":25,"kind":"tooling-declaration"},{"id":26,"kind":"tooling-declaration"},{"id":27,"kind":"tooling-declaration"},{"id":28,"kind":"tooling-declaration"},{"id":29,"kind":"tooling-declaration"},{"id":30,"kind":"tooling-declaration"},{"id":31,"kind":"tooling-declaration"},{"id":32,"kind":"tooling-declaration"},{"id":33,"kind":"tooling-declaration"},{"id":34,"kind":"tooling-declaration"},{"id":35,"kind":"tooling-declaration"},{"id":36,"kind":"tooling-declaration"},{"id":37,"kind":"tooling-declaration"},{"id":38,"kind":"tooling-declaration"},{"id":39,"kind":"tooling-declaration"},{"id":40,"kind":"tooling-declaration"},{"id":41,"kind":"tooling-declaration"},{"id":42,"kind":"tooling-declaration"},{"id":43,"kind":"tooling-declaration"}],"semantic_id":"37c360ca687bfe26cef1f43d257482c96e322ebc80a66882992634a315cb3fb0","source_id":"b09e666b29108c192788640ce5868612d7fb07a5dabbdec58003a8aeb11261df","sources":[{"id":0,"kind":"file","path":"src/Main.lex.tex","sha256":"d611da375d88aa3efe36b73131554920015825a0d05c0cdfc1b9e50d357e3a6e"}],"spec":"lexlean/source-map/1"} diff --git a/tests/tooling/traversal/expected/build/manifest.json b/tests/tooling/traversal/expected/build/manifest.json index 017f3790f..e8d09d737 100644 --- a/tests/tooling/traversal/expected/build/manifest.json +++ b/tests/tooling/traversal/expected/build/manifest.json @@ -1 +1 @@ -{"build_id":"75b958de8ef1cbd2900c3c7d0e1e3bb7636f3de61ed2844192812d18f962ead3","compiler":{"semantics_id":"7a7834c67571071b41d4390091dc975814669691047856199bec9267687cd9b0","version":"0.3.0"},"inputs":[{"byte_length":2684,"kind":"lexicon","path":"embedded","sha256":"3bc0fb09d706ffa7d5a1363302ea87c049acc7c7dcafde63c62682620c11be9b"},{"byte_length":14885,"kind":"lexicon","path":"embedded","sha256":"e0db021e01b91d651c43921d66f6b0023c8efbf17cac2ec53192ce5305e4e1ac"},{"byte_length":36197,"kind":"lexicon","path":"embedded","sha256":"827317cae68c162f3a96c8a8de4e53ab348e7d3724fd2b834fa85ecde1a1b392"},{"byte_length":1597,"kind":"lock","path":"lexlean.lock","sha256":"04b2a3f9ec2cef98878c609f52231bbea2687eb7009a6e496362ca1ebb3dd9cc"},{"byte_length":655,"kind":"project-config","path":"lexlean.toml","sha256":"6ca06ebfa2d29813b86b2c3f03d84db119724d4af5bc00d8fed779d27cbd6c21"},{"byte_length":24781,"kind":"source","path":"src/Main.lex.tex","sha256":"67110e50b1b9a593a0b92051a0922a3484384db0a1f6845f04b901adf80e81ac"}],"language":"1.2","lean_toolchain":"leanprover/lean4:v4.32.1","modules":[{"lean_module":"ToolingTraversal.Main","module":"Main","source_path":"src/Main.lex.tex"}],"outputs":[{"byte_length":10404,"kind":"coverage","path":"coverage/ToolingTraversal/Main.coverage.json","sha256":"2211e359fb6745e9b1470a433f2ded42619616d7f056fcd644bdd566b7cceb2a"},{"byte_length":1451,"kind":"lean","path":"modules/ToolingTraversal/Main.lean","sha256":"50e1bc0cc45ca86a532ac775ef794454cd74d7bc19b41e749d930c1b4749e657"},{"byte_length":10602,"kind":"lexicon-closure","path":"lexicons/Main.closure.json","sha256":"727110f90daff26a2e5eb8069fcefecd5790c1264f5d6d4b2ef57db1c2bfb867"},{"byte_length":5728,"kind":"map","path":"maps/ToolingTraversal/Main.map.json","sha256":"66e035a25e71f3421b84f6c8409a9abb7e3d298a871e36baeab9eb6099d28ce2"},{"byte_length":11798,"kind":"tex","path":"modules/ToolingTraversal/Main.tex","sha256":"e7cae90c6a1cd1d9fa94610f688a123728c3f12daaa7020f7dcf900bced7bc13"}],"project":"tooling-traversal","selection":["Main"],"semantic_id":"0c3eb2fb59a6c938b70620859d8e1d5e3e5850aa2d36d86d1549da6408659cb5","source_id":"0a02e2f8ca32d267f3aa7fe0716ccda40658086e99ed359bc8ccc994685a5959","spec":"lexlean/build-manifest/1"} +{"build_id":"b803ec6666f177f3cc5d21593f4bdfb6e19f5b99d80e9357d97d20341239f60f","compiler":{"semantics_id":"91b3cb51013515a91251eb57e00451e091cc1d5aec5336ad436a223fec0b8e2a","version":"0.3.0"},"inputs":[{"byte_length":2684,"kind":"lexicon","path":"embedded","sha256":"3bc0fb09d706ffa7d5a1363302ea87c049acc7c7dcafde63c62682620c11be9b"},{"byte_length":14885,"kind":"lexicon","path":"embedded","sha256":"e0db021e01b91d651c43921d66f6b0023c8efbf17cac2ec53192ce5305e4e1ac"},{"byte_length":36197,"kind":"lexicon","path":"embedded","sha256":"827317cae68c162f3a96c8a8de4e53ab348e7d3724fd2b834fa85ecde1a1b392"},{"byte_length":1597,"kind":"lock","path":"lexlean.lock","sha256":"7ff213824bf25ba1d596408b1f1a53c0f4445bbd3e570df6d3a8838c54006820"},{"byte_length":655,"kind":"project-config","path":"lexlean.toml","sha256":"6ca06ebfa2d29813b86b2c3f03d84db119724d4af5bc00d8fed779d27cbd6c21"},{"byte_length":24781,"kind":"source","path":"src/Main.lex.tex","sha256":"67110e50b1b9a593a0b92051a0922a3484384db0a1f6845f04b901adf80e81ac"}],"language":"1.2","lean_toolchain":"leanprover/lean4:v4.32.1","modules":[{"lean_module":"ToolingTraversal.Main","module":"Main","source_path":"src/Main.lex.tex"}],"outputs":[{"byte_length":10404,"kind":"coverage","path":"coverage/ToolingTraversal/Main.coverage.json","sha256":"2211e359fb6745e9b1470a433f2ded42619616d7f056fcd644bdd566b7cceb2a"},{"byte_length":1451,"kind":"lean","path":"modules/ToolingTraversal/Main.lean","sha256":"50e1bc0cc45ca86a532ac775ef794454cd74d7bc19b41e749d930c1b4749e657"},{"byte_length":10602,"kind":"lexicon-closure","path":"lexicons/Main.closure.json","sha256":"727110f90daff26a2e5eb8069fcefecd5790c1264f5d6d4b2ef57db1c2bfb867"},{"byte_length":5728,"kind":"map","path":"maps/ToolingTraversal/Main.map.json","sha256":"fc942564b1723c51b83079649ce1443b5121231392c347140e85f68c3c13e7bf"},{"byte_length":11798,"kind":"tex","path":"modules/ToolingTraversal/Main.tex","sha256":"e7cae90c6a1cd1d9fa94610f688a123728c3f12daaa7020f7dcf900bced7bc13"}],"project":"tooling-traversal","selection":["Main"],"semantic_id":"2c8e8ea9e16647930ec972518ea8b7ca746f951750606bd3eb6c379ecab249cd","source_id":"8245cb4ade3e3746c75f908b8508a34c02ae089662b089b97c444a8c7d62ee79","spec":"lexlean/build-manifest/1"} diff --git a/tests/tooling/traversal/expected/build/maps/ToolingTraversal/Main.map.json b/tests/tooling/traversal/expected/build/maps/ToolingTraversal/Main.map.json index 941e30d43..b5e8326b3 100644 --- a/tests/tooling/traversal/expected/build/maps/ToolingTraversal/Main.map.json +++ b/tests/tooling/traversal/expected/build/maps/ToolingTraversal/Main.map.json @@ -1 +1 @@ -{"artifacts":[{"id":0,"kind":"lean","path":"modules/ToolingTraversal/Main.lean"},{"id":1,"kind":"tex","path":"modules/ToolingTraversal/Main.tex"}],"mappings":[{"artifact":0,"gen_end":114,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":24781,"src_start":0},{"artifact":0,"gen_end":560,"gen_start":114,"node":1,"role":"declaration","source":0,"src_end":20790,"src_start":18370},{"artifact":0,"gen_end":763,"gen_start":560,"node":2,"role":"declaration","source":0,"src_end":21559,"src_start":20796},{"artifact":0,"gen_end":1226,"gen_start":763,"node":3,"role":"declaration","source":0,"src_end":23775,"src_start":21565},{"artifact":0,"gen_end":1451,"gen_start":1226,"node":4,"role":"declaration","source":0,"src_end":24725,"src_start":23781},{"artifact":0,"gen_end":1451,"gen_start":1451,"node":0,"role":"declaration","source":0,"src_end":24781,"src_start":0},{"artifact":1,"gen_end":133,"gen_start":0,"node":5,"role":"declaration","source":0,"src_end":24781,"src_start":0},{"artifact":1,"gen_end":440,"gen_start":133,"node":6,"role":"declaration","source":0,"src_end":578,"src_start":269},{"artifact":1,"gen_end":2723,"gen_start":440,"node":7,"role":"declaration","source":0,"src_end":7765,"src_start":584},{"artifact":1,"gen_end":3205,"gen_start":2723,"node":8,"role":"declaration","source":0,"src_end":8935,"src_start":7771},{"artifact":1,"gen_end":3934,"gen_start":3205,"node":9,"role":"declaration","source":0,"src_end":10780,"src_start":8941},{"artifact":1,"gen_end":4374,"gen_start":3934,"node":10,"role":"declaration","source":0,"src_end":11737,"src_start":10786},{"artifact":1,"gen_end":4680,"gen_start":4374,"node":11,"role":"declaration","source":0,"src_end":12218,"src_start":11743},{"artifact":1,"gen_end":4953,"gen_start":4680,"node":12,"role":"declaration","source":0,"src_end":12503,"src_start":12224},{"artifact":1,"gen_end":5297,"gen_start":4953,"node":13,"role":"declaration","source":0,"src_end":12837,"src_start":12509},{"artifact":1,"gen_end":5645,"gen_start":5297,"node":14,"role":"declaration","source":0,"src_end":13175,"src_start":12843},{"artifact":1,"gen_end":5895,"gen_start":5645,"node":15,"role":"declaration","source":0,"src_end":13427,"src_start":13181},{"artifact":1,"gen_end":6147,"gen_start":5895,"node":16,"role":"declaration","source":0,"src_end":13681,"src_start":13433},{"artifact":1,"gen_end":6427,"gen_start":6147,"node":17,"role":"declaration","source":0,"src_end":14032,"src_start":13687},{"artifact":1,"gen_end":6768,"gen_start":6427,"node":18,"role":"declaration","source":0,"src_end":14419,"src_start":14038},{"artifact":1,"gen_end":7114,"gen_start":6768,"node":19,"role":"declaration","source":0,"src_end":14755,"src_start":14425},{"artifact":1,"gen_end":7367,"gen_start":7114,"node":20,"role":"declaration","source":0,"src_end":15010,"src_start":14761},{"artifact":1,"gen_end":7650,"gen_start":7367,"node":21,"role":"declaration","source":0,"src_end":15295,"src_start":15016},{"artifact":1,"gen_end":8014,"gen_start":7650,"node":22,"role":"declaration","source":0,"src_end":15836,"src_start":15301},{"artifact":1,"gen_end":8312,"gen_start":8014,"node":23,"role":"declaration","source":0,"src_end":16191,"src_start":15842},{"artifact":1,"gen_end":8660,"gen_start":8312,"node":24,"role":"declaration","source":0,"src_end":16730,"src_start":16197},{"artifact":1,"gen_end":9113,"gen_start":8660,"node":25,"role":"declaration","source":0,"src_end":17658,"src_start":16736},{"artifact":1,"gen_end":9680,"gen_start":9113,"node":26,"role":"declaration","source":0,"src_end":18364,"src_start":17664},{"artifact":1,"gen_end":10335,"gen_start":9680,"node":27,"role":"declaration","source":0,"src_end":20790,"src_start":18370},{"artifact":1,"gen_end":10721,"gen_start":10335,"node":28,"role":"declaration","source":0,"src_end":21559,"src_start":20796},{"artifact":1,"gen_end":11383,"gen_start":10721,"node":29,"role":"declaration","source":0,"src_end":23775,"src_start":21565},{"artifact":1,"gen_end":11783,"gen_start":11383,"node":30,"role":"declaration","source":0,"src_end":24725,"src_start":23781},{"artifact":1,"gen_end":11798,"gen_start":11783,"node":5,"role":"declaration","source":0,"src_end":24781,"src_start":0}],"module":"Main","nodes":[{"id":0,"kind":"tooling-lean-module"},{"id":1,"kind":"tooling-declaration"},{"id":2,"kind":"tooling-declaration"},{"id":3,"kind":"tooling-declaration"},{"id":4,"kind":"tooling-declaration"},{"id":5,"kind":"tooling-latex-module"},{"id":6,"kind":"tooling-declaration"},{"id":7,"kind":"tooling-declaration"},{"id":8,"kind":"tooling-declaration"},{"id":9,"kind":"tooling-declaration"},{"id":10,"kind":"tooling-declaration"},{"id":11,"kind":"tooling-declaration"},{"id":12,"kind":"tooling-declaration"},{"id":13,"kind":"tooling-declaration"},{"id":14,"kind":"tooling-declaration"},{"id":15,"kind":"tooling-declaration"},{"id":16,"kind":"tooling-declaration"},{"id":17,"kind":"tooling-declaration"},{"id":18,"kind":"tooling-declaration"},{"id":19,"kind":"tooling-declaration"},{"id":20,"kind":"tooling-declaration"},{"id":21,"kind":"tooling-declaration"},{"id":22,"kind":"tooling-declaration"},{"id":23,"kind":"tooling-declaration"},{"id":24,"kind":"tooling-declaration"},{"id":25,"kind":"tooling-declaration"},{"id":26,"kind":"tooling-declaration"},{"id":27,"kind":"tooling-declaration"},{"id":28,"kind":"tooling-declaration"},{"id":29,"kind":"tooling-declaration"},{"id":30,"kind":"tooling-declaration"}],"semantic_id":"0c3eb2fb59a6c938b70620859d8e1d5e3e5850aa2d36d86d1549da6408659cb5","source_id":"0a02e2f8ca32d267f3aa7fe0716ccda40658086e99ed359bc8ccc994685a5959","sources":[{"id":0,"kind":"file","path":"src/Main.lex.tex","sha256":"67110e50b1b9a593a0b92051a0922a3484384db0a1f6845f04b901adf80e81ac"}],"spec":"lexlean/source-map/1"} +{"artifacts":[{"id":0,"kind":"lean","path":"modules/ToolingTraversal/Main.lean"},{"id":1,"kind":"tex","path":"modules/ToolingTraversal/Main.tex"}],"mappings":[{"artifact":0,"gen_end":114,"gen_start":0,"node":0,"role":"declaration","source":0,"src_end":24781,"src_start":0},{"artifact":0,"gen_end":560,"gen_start":114,"node":1,"role":"declaration","source":0,"src_end":20790,"src_start":18370},{"artifact":0,"gen_end":763,"gen_start":560,"node":2,"role":"declaration","source":0,"src_end":21559,"src_start":20796},{"artifact":0,"gen_end":1226,"gen_start":763,"node":3,"role":"declaration","source":0,"src_end":23775,"src_start":21565},{"artifact":0,"gen_end":1451,"gen_start":1226,"node":4,"role":"declaration","source":0,"src_end":24725,"src_start":23781},{"artifact":0,"gen_end":1451,"gen_start":1451,"node":0,"role":"declaration","source":0,"src_end":24781,"src_start":0},{"artifact":1,"gen_end":133,"gen_start":0,"node":5,"role":"declaration","source":0,"src_end":24781,"src_start":0},{"artifact":1,"gen_end":440,"gen_start":133,"node":6,"role":"declaration","source":0,"src_end":578,"src_start":269},{"artifact":1,"gen_end":2723,"gen_start":440,"node":7,"role":"declaration","source":0,"src_end":7765,"src_start":584},{"artifact":1,"gen_end":3205,"gen_start":2723,"node":8,"role":"declaration","source":0,"src_end":8935,"src_start":7771},{"artifact":1,"gen_end":3934,"gen_start":3205,"node":9,"role":"declaration","source":0,"src_end":10780,"src_start":8941},{"artifact":1,"gen_end":4374,"gen_start":3934,"node":10,"role":"declaration","source":0,"src_end":11737,"src_start":10786},{"artifact":1,"gen_end":4680,"gen_start":4374,"node":11,"role":"declaration","source":0,"src_end":12218,"src_start":11743},{"artifact":1,"gen_end":4953,"gen_start":4680,"node":12,"role":"declaration","source":0,"src_end":12503,"src_start":12224},{"artifact":1,"gen_end":5297,"gen_start":4953,"node":13,"role":"declaration","source":0,"src_end":12837,"src_start":12509},{"artifact":1,"gen_end":5645,"gen_start":5297,"node":14,"role":"declaration","source":0,"src_end":13175,"src_start":12843},{"artifact":1,"gen_end":5895,"gen_start":5645,"node":15,"role":"declaration","source":0,"src_end":13427,"src_start":13181},{"artifact":1,"gen_end":6147,"gen_start":5895,"node":16,"role":"declaration","source":0,"src_end":13681,"src_start":13433},{"artifact":1,"gen_end":6427,"gen_start":6147,"node":17,"role":"declaration","source":0,"src_end":14032,"src_start":13687},{"artifact":1,"gen_end":6768,"gen_start":6427,"node":18,"role":"declaration","source":0,"src_end":14419,"src_start":14038},{"artifact":1,"gen_end":7114,"gen_start":6768,"node":19,"role":"declaration","source":0,"src_end":14755,"src_start":14425},{"artifact":1,"gen_end":7367,"gen_start":7114,"node":20,"role":"declaration","source":0,"src_end":15010,"src_start":14761},{"artifact":1,"gen_end":7650,"gen_start":7367,"node":21,"role":"declaration","source":0,"src_end":15295,"src_start":15016},{"artifact":1,"gen_end":8014,"gen_start":7650,"node":22,"role":"declaration","source":0,"src_end":15836,"src_start":15301},{"artifact":1,"gen_end":8312,"gen_start":8014,"node":23,"role":"declaration","source":0,"src_end":16191,"src_start":15842},{"artifact":1,"gen_end":8660,"gen_start":8312,"node":24,"role":"declaration","source":0,"src_end":16730,"src_start":16197},{"artifact":1,"gen_end":9113,"gen_start":8660,"node":25,"role":"declaration","source":0,"src_end":17658,"src_start":16736},{"artifact":1,"gen_end":9680,"gen_start":9113,"node":26,"role":"declaration","source":0,"src_end":18364,"src_start":17664},{"artifact":1,"gen_end":10335,"gen_start":9680,"node":27,"role":"declaration","source":0,"src_end":20790,"src_start":18370},{"artifact":1,"gen_end":10721,"gen_start":10335,"node":28,"role":"declaration","source":0,"src_end":21559,"src_start":20796},{"artifact":1,"gen_end":11383,"gen_start":10721,"node":29,"role":"declaration","source":0,"src_end":23775,"src_start":21565},{"artifact":1,"gen_end":11783,"gen_start":11383,"node":30,"role":"declaration","source":0,"src_end":24725,"src_start":23781},{"artifact":1,"gen_end":11798,"gen_start":11783,"node":5,"role":"declaration","source":0,"src_end":24781,"src_start":0}],"module":"Main","nodes":[{"id":0,"kind":"tooling-lean-module"},{"id":1,"kind":"tooling-declaration"},{"id":2,"kind":"tooling-declaration"},{"id":3,"kind":"tooling-declaration"},{"id":4,"kind":"tooling-declaration"},{"id":5,"kind":"tooling-latex-module"},{"id":6,"kind":"tooling-declaration"},{"id":7,"kind":"tooling-declaration"},{"id":8,"kind":"tooling-declaration"},{"id":9,"kind":"tooling-declaration"},{"id":10,"kind":"tooling-declaration"},{"id":11,"kind":"tooling-declaration"},{"id":12,"kind":"tooling-declaration"},{"id":13,"kind":"tooling-declaration"},{"id":14,"kind":"tooling-declaration"},{"id":15,"kind":"tooling-declaration"},{"id":16,"kind":"tooling-declaration"},{"id":17,"kind":"tooling-declaration"},{"id":18,"kind":"tooling-declaration"},{"id":19,"kind":"tooling-declaration"},{"id":20,"kind":"tooling-declaration"},{"id":21,"kind":"tooling-declaration"},{"id":22,"kind":"tooling-declaration"},{"id":23,"kind":"tooling-declaration"},{"id":24,"kind":"tooling-declaration"},{"id":25,"kind":"tooling-declaration"},{"id":26,"kind":"tooling-declaration"},{"id":27,"kind":"tooling-declaration"},{"id":28,"kind":"tooling-declaration"},{"id":29,"kind":"tooling-declaration"},{"id":30,"kind":"tooling-declaration"}],"semantic_id":"2c8e8ea9e16647930ec972518ea8b7ca746f951750606bd3eb6c379ecab249cd","source_id":"8245cb4ade3e3746c75f908b8508a34c02ae089662b089b97c444a8c7d62ee79","sources":[{"id":0,"kind":"file","path":"src/Main.lex.tex","sha256":"67110e50b1b9a593a0b92051a0922a3484384db0a1f6845f04b901adf80e81ac"}],"spec":"lexlean/source-map/1"} diff --git a/xtask/src/spec_links.rs b/xtask/src/spec_links.rs index 35b4f0203..07fcc3dd1 100644 --- a/xtask/src/spec_links.rs +++ b/xtask/src/spec_links.rs @@ -61,8 +61,8 @@ fn parse_table(spec: &str) -> Result, Fail> { pub fn validate(root: &Path) -> Result<(), Fail> { let spec = std::fs::read_to_string(root.join("SPEC.md"))?; let rows = parse_table(&spec)?; - if rows.len() != 398 { - return Err(format!("RP-07: the §31 table has {} rows, not 398", rows.len()).into()); + if rows.len() != 402 { + return Err(format!("RP-07: the §31 table has {} rows, not 402", rows.len()).into()); } // The prose total under the table is part of the contract a reader // relies on; a row added without it would leave §31 contradicting itself.